diff --git a/.pnp.cjs b/.pnp.cjs index 56a4a81d..8570896b 100755 --- a/.pnp.cjs +++ b/.pnp.cjs @@ -14,6 +14,26 @@ const RAW_RUNTIME_STATE = "name": "services",\ "reference": "workspace:."\ },\ + {\ + "name": "@alts/auth-rpc",\ + "reference": "workspace:auth/rpc/auth"\ + },\ + {\ + "name": "@auth/application-module",\ + "reference": "workspace:auth/service/application-module"\ + },\ + {\ + "name": "@auth/domain-module",\ + "reference": "workspace:auth/service/domain-module"\ + },\ + {\ + "name": "@auth/infrastructure-module",\ + "reference": "workspace:auth/service/infrastructure-module"\ + },\ + {\ + "name": "@auth/service-entrypoint",\ + "reference": "workspace:auth/service/service-entrypoint"\ + },\ {\ "name": "@atls/files-rpc",\ "reference": "workspace:files/rpc/files-rpc"\ @@ -58,9 +78,14 @@ const RAW_RUNTIME_STATE = "enableTopLevelFallback": true,\ "ignorePatternData": "(^(?:\\\\.yarn\\\\/sdks(?:\\\\/(?!\\\\.{1,2}(?:\\\\/|$))(?:(?:(?!(?:^|\\\\/)\\\\.{1,2}(?:\\\\/|$)).)*?)|$))$)",\ "fallbackExclusionList": [\ + ["@alts/auth-rpc", ["virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#workspace:auth/rpc/auth", "workspace:auth/rpc/auth"]],\ ["@atls/files-rpc", ["virtual:dcad5415cbb2626d969f7991ee44a5a8463938f177ba023ae9ff4d86be05249e706bd90a09e5aa8bc0a52fc8a8314cd26a58f89d61edc5fcd4939c0069ae623a#workspace:files/rpc/files-rpc", "workspace:files/rpc/files-rpc"]],\ ["@atls/files-rpc-client", ["workspace:files/rpc/files-rpc-client"]],\ ["@atls/files-rpc-client-module", ["workspace:files/rpc/files-rpc-client-module"]],\ + ["@auth/application-module", ["virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#workspace:auth/service/application-module", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#workspace:auth/service/application-module", "workspace:auth/service/application-module"]],\ + ["@auth/domain-module", ["virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#workspace:auth/service/domain-module", "virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#workspace:auth/service/domain-module", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#workspace:auth/service/domain-module", "workspace:auth/service/domain-module"]],\ + ["@auth/infrastructure-module", ["virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#workspace:auth/service/infrastructure-module", "workspace:auth/service/infrastructure-module"]],\ + ["@auth/service-entrypoint", ["workspace:auth/service/service-entrypoint"]],\ ["@files-engine/application-module", ["virtual:6fa46be8be044f799e939d57236013f3e0001e785df531ce0d2e0456616c766de755c3020ebeeb580faa6acb735f630be9424463c14c45581273807571e49cb6#workspace:files/service/application-module", "virtual:a712d76c03dedd5fb4cad0b8dbebc7bc808245b17ef48e30c5219b3188964ad8606ec3296d56cd7812264aed0486ec151128b463d489dcdc3d42bcbaefb4877e#workspace:files/service/application-module", "workspace:files/service/application-module"]],\ ["@files-engine/domain-module", ["virtual:21c4488ed3c477de20d537f6e6b297665cc8d5d9e61766df2c8cb9f1cbd658e6099b636e8aaa87ca94fbcccaa1a779cc926c2abc7d1bf5280a4f92f359d92405#workspace:files/service/domain-module", "virtual:6fa46be8be044f799e939d57236013f3e0001e785df531ce0d2e0456616c766de755c3020ebeeb580faa6acb735f630be9424463c14c45581273807571e49cb6#workspace:files/service/domain-module", "virtual:a712d76c03dedd5fb4cad0b8dbebc7bc808245b17ef48e30c5219b3188964ad8606ec3296d56cd7812264aed0486ec151128b463d489dcdc3d42bcbaefb4877e#workspace:files/service/domain-module", "workspace:files/service/domain-module"]],\ ["@files-engine/gateway-module", ["virtual:85c5c4e95e23f2f3c5ea9d794f9606e7fcf829d1a23403c6b8c1915991c40099a9861ee3f3011c6a72a1310d4e08df10df95fa1943e3c0beee4aba9caff13c4b#workspace:files/service/gateway-module", "workspace:files/service/gateway-module"]],\ @@ -77,10 +102,10 @@ const RAW_RUNTIME_STATE = [null, {\ "packageLocation": "./",\ "packageDependencies": [\ - ["@atls/code-runtime", "npm:2.1.7"],\ + ["@atls/code-runtime", "npm:2.1.16"],\ ["@types/eslint", "npm:9.6.1"],\ ["@types/node", "npm:22.13.10"],\ - ["eslint", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:9.17.0"],\ + ["eslint", "virtual:1c19a7e3a2811aced06f080c99e5ea3818f86cf7ce96a27ec07d603da973e8893d8b73ec2bc94a9c112a3a5a373a93c210cd287d6320bed288e3c1d952025e27#npm:9.17.0"],\ ["typescript", "patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=379a07"]\ ],\ "linkType": "SOFT"\ @@ -98,6 +123,43 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["@alts/auth-rpc", [\ + ["virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#workspace:auth/rpc/auth", {\ + "packageLocation": "./.yarn/__virtual__/@alts-auth-rpc-virtual-577445531d/1/auth/rpc/auth/",\ + "packageDependencies": [\ + ["@alts/auth-rpc", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#workspace:auth/rpc/auth"],\ + ["@atls/protoc-gen-abstractions", "virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:0.0.3"],\ + ["@atls/protoc-gen-config", "virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:0.0.2"],\ + ["@atls/protoc-gen-interfaces", "virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:0.0.7"],\ + ["@bufbuild/buf", "npm:1.50.1"],\ + ["@bufbuild/protobuf", "npm:1.10.0"],\ + ["@bufbuild/protoc-gen-es", "virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:1.10.0"],\ + ["@connectrpc/protoc-gen-connect-es", "virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:1.6.1"],\ + ["@types/bufbuild__protobuf", null],\ + ["@types/node", "npm:22.10.2"]\ + ],\ + "packagePeers": [\ + "@bufbuild/protobuf",\ + "@types/bufbuild__protobuf"\ + ],\ + "linkType": "SOFT"\ + }],\ + ["workspace:auth/rpc/auth", {\ + "packageLocation": "./auth/rpc/auth/",\ + "packageDependencies": [\ + ["@alts/auth-rpc", "workspace:auth/rpc/auth"],\ + ["@atls/protoc-gen-abstractions", "virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:0.0.3"],\ + ["@atls/protoc-gen-config", "virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:0.0.2"],\ + ["@atls/protoc-gen-interfaces", "virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:0.0.7"],\ + ["@bufbuild/buf", "npm:1.50.1"],\ + ["@bufbuild/protobuf", "npm:1.10.0"],\ + ["@bufbuild/protoc-gen-es", "virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:1.10.0"],\ + ["@connectrpc/protoc-gen-connect-es", "virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:1.6.1"],\ + ["@types/node", "npm:22.10.2"]\ + ],\ + "linkType": "SOFT"\ + }]\ + ]],\ ["@ampproject/remapping", [\ ["npm:2.3.0", {\ "packageLocation": "../.yarn/berry/cache/@ampproject-remapping-npm-2.3.0-559c14eee4-10.zip/node_modules/@ampproject/remapping/",\ @@ -758,55 +820,56 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@atls/code-runtime", [\ - ["npm:2.1.7", {\ - "packageLocation": "../.yarn/berry/cache/@atls-code-runtime-npm-2.1.7-9705940a78-10.zip/node_modules/@atls/code-runtime/",\ + ["npm:2.1.16", {\ + "packageLocation": "../.yarn/berry/cache/@atls-code-runtime-npm-2.1.16-ce6d8ec82c-10.zip/node_modules/@atls/code-runtime/",\ "packageDependencies": [\ - ["@atls/code-runtime", "npm:2.1.7"],\ - ["@atls/config-eslint", "virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:2.0.7"],\ + ["@atls/code-runtime", "npm:2.1.16"],\ + ["@atls/config-eslint", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:2.0.10"],\ ["@atls/config-prettier", "npm:2.0.3"],\ - ["@atls/config-typescript", "npm:2.0.1"],\ - ["@atls/webpack-proto-imports-loader", "npm:1.0.1"],\ + ["@atls/config-typescript", "npm:2.0.3"],\ + ["@atls/webpack-proto-imports-loader", "npm:1.0.5"],\ ["@svgr/core", "npm:8.1.0"],\ - ["@svgr/plugin-jsx", "virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:8.1.0"],\ - ["eslint", "virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:9.22.0"],\ - ["node-loader", "virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:2.1.0"],\ - ["null-loader", "virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:4.0.1"],\ + ["@svgr/plugin-jsx", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:8.1.0"],\ + ["eslint", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:9.22.0"],\ + ["node-loader", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:2.1.0"],\ + ["null-loader", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:4.0.1"],\ ["strip-json-comments", "npm:3.1.1"],\ - ["ts-loader", "virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:9.5.2"],\ - ["ts-node", "virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:10.9.2"],\ + ["ts-loader", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:9.5.2"],\ + ["ts-node", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:10.9.2"],\ ["typescript", "patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=379a07"],\ - ["webpack", "virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:5.98.0"]\ + ["webpack", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:5.98.0"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@atls/config-eslint", [\ - ["npm:2.0.7", {\ - "packageLocation": "../.yarn/berry/cache/@atls-config-eslint-npm-2.0.7-9febaeee40-10.zip/node_modules/@atls/config-eslint/",\ + ["npm:2.0.10", {\ + "packageLocation": "../.yarn/berry/cache/@atls-config-eslint-npm-2.0.10-58daaf34d0-10.zip/node_modules/@atls/config-eslint/",\ "packageDependencies": [\ - ["@atls/config-eslint", "npm:2.0.7"]\ + ["@atls/config-eslint", "npm:2.0.10"]\ ],\ "linkType": "SOFT"\ }],\ - ["virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:2.0.7", {\ - "packageLocation": "./.yarn/__virtual__/@atls-config-eslint-virtual-208dfc1d93/2/.yarn/berry/cache/@atls-config-eslint-npm-2.0.7-9febaeee40-10.zip/node_modules/@atls/config-eslint/",\ + ["virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:2.0.10", {\ + "packageLocation": "./.yarn/__virtual__/@atls-config-eslint-virtual-9f566bfcb4/2/.yarn/berry/cache/@atls-config-eslint-npm-2.0.10-58daaf34d0-10.zip/node_modules/@atls/config-eslint/",\ "packageDependencies": [\ - ["@atls/config-eslint", "virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:2.0.7"],\ - ["@atls/config-prettier", "npm:2.0.2"],\ - ["@next/eslint-plugin-next", "npm:15.0.3"],\ + ["@atls/config-eslint", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:2.0.10"],\ + ["@atls/config-prettier", "npm:2.0.3"],\ + ["@next/eslint-plugin-next", "npm:16.0.7"],\ ["@types/typescript", null],\ - ["@typescript-eslint/eslint-plugin", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:8.18.1"],\ - ["@typescript-eslint/parser", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:8.18.1"],\ - ["eslint", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:9.17.0"],\ + ["@typescript-eslint/eslint-plugin", "virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:8.48.1"],\ + ["@typescript-eslint/parser", "virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:8.48.1"],\ + ["eslint", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:9.22.0"],\ ["eslint-import-resolver-node", "npm:0.3.9"],\ - ["eslint-plugin-import", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:2.31.0"],\ - ["eslint-plugin-jsx-a11y", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:6.10.2"],\ - ["eslint-plugin-n", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:17.15.0"],\ - ["eslint-plugin-prettier", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:5.2.1"],\ - ["eslint-plugin-react", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:7.37.2"],\ - ["eslint-plugin-react-hooks", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:5.1.0"],\ + ["eslint-plugin-import", "virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:2.31.0"],\ + ["eslint-plugin-jsx-a11y", "virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:6.10.2"],\ + ["eslint-plugin-n", "virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:17.23.1"],\ + ["eslint-plugin-prettier", "virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:5.5.4"],\ + ["eslint-plugin-react", "virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:7.37.5"],\ + ["eslint-plugin-react-compiler", "virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:19.1.0-rc.2"],\ + ["eslint-plugin-react-hooks", "virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:7.0.1"],\ ["eslint-plugin-security", "npm:3.0.1"],\ - ["prettier", "npm:3.4.2"],\ + ["prettier", "npm:3.5.3"],\ ["react", "npm:18.3.1"],\ ["typescript", "patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=379a07"]\ ],\ @@ -818,14 +881,6 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@atls/config-prettier", [\ - ["npm:2.0.2", {\ - "packageLocation": "../.yarn/berry/cache/@atls-config-prettier-npm-2.0.2-75fc1f704e-10.zip/node_modules/@atls/config-prettier/",\ - "packageDependencies": [\ - ["@atls/config-prettier", "npm:2.0.2"],\ - ["prettier", "npm:3.4.2"]\ - ],\ - "linkType": "HARD"\ - }],\ ["npm:2.0.3", {\ "packageLocation": "../.yarn/berry/cache/@atls-config-prettier-npm-2.0.3-2821d7b610-10.zip/node_modules/@atls/config-prettier/",\ "packageDependencies": [\ @@ -836,10 +891,10 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@atls/config-typescript", [\ - ["npm:2.0.1", {\ - "packageLocation": "../.yarn/berry/cache/@atls-config-typescript-npm-2.0.1-2d827e1217-10.zip/node_modules/@atls/config-typescript/",\ + ["npm:2.0.3", {\ + "packageLocation": "../.yarn/berry/cache/@atls-config-typescript-npm-2.0.3-12ec46cf72-10.zip/node_modules/@atls/config-typescript/",\ "packageDependencies": [\ - ["@atls/config-typescript", "npm:2.0.1"]\ + ["@atls/config-typescript", "npm:2.0.3"]\ ],\ "linkType": "HARD"\ }]\ @@ -858,12 +913,12 @@ const RAW_RUNTIME_STATE = "packageLocation": "./.yarn/__virtual__/@atls-files-rpc-virtual-e9f7b0fa3e/1/files/rpc/files-rpc/",\ "packageDependencies": [\ ["@atls/files-rpc", "virtual:dcad5415cbb2626d969f7991ee44a5a8463938f177ba023ae9ff4d86be05249e706bd90a09e5aa8bc0a52fc8a8314cd26a58f89d61edc5fcd4939c0069ae623a#workspace:files/rpc/files-rpc"],\ - ["@atls/protoc-gen-abstractions", "virtual:be21700ab3771a142a1db148d9e9c53b6ebca30fbafb171cd1acfcc39fa26d0f6cd37b6c281e2673f3fc49cf851c5c81b43ac09d5003e28d5d8a6ae394fd87cd#npm:0.0.3"],\ - ["@atls/protoc-gen-interfaces", "virtual:be21700ab3771a142a1db148d9e9c53b6ebca30fbafb171cd1acfcc39fa26d0f6cd37b6c281e2673f3fc49cf851c5c81b43ac09d5003e28d5d8a6ae394fd87cd#npm:0.0.7"],\ + ["@atls/protoc-gen-abstractions", "virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:0.0.3"],\ + ["@atls/protoc-gen-interfaces", "virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:0.0.7"],\ ["@bufbuild/buf", "npm:1.50.1"],\ ["@bufbuild/protobuf", "npm:1.10.0"],\ - ["@bufbuild/protoc-gen-es", "virtual:be21700ab3771a142a1db148d9e9c53b6ebca30fbafb171cd1acfcc39fa26d0f6cd37b6c281e2673f3fc49cf851c5c81b43ac09d5003e28d5d8a6ae394fd87cd#npm:1.10.0"],\ - ["@connectrpc/protoc-gen-connect-es", "virtual:be21700ab3771a142a1db148d9e9c53b6ebca30fbafb171cd1acfcc39fa26d0f6cd37b6c281e2673f3fc49cf851c5c81b43ac09d5003e28d5d8a6ae394fd87cd#npm:1.6.1"],\ + ["@bufbuild/protoc-gen-es", "virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:1.10.0"],\ + ["@connectrpc/protoc-gen-connect-es", "virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:1.6.1"],\ ["@types/bufbuild__protobuf", null],\ ["@types/node", "npm:22.13.10"]\ ],\ @@ -877,12 +932,12 @@ const RAW_RUNTIME_STATE = "packageLocation": "./files/rpc/files-rpc/",\ "packageDependencies": [\ ["@atls/files-rpc", "workspace:files/rpc/files-rpc"],\ - ["@atls/protoc-gen-abstractions", "virtual:be21700ab3771a142a1db148d9e9c53b6ebca30fbafb171cd1acfcc39fa26d0f6cd37b6c281e2673f3fc49cf851c5c81b43ac09d5003e28d5d8a6ae394fd87cd#npm:0.0.3"],\ - ["@atls/protoc-gen-interfaces", "virtual:be21700ab3771a142a1db148d9e9c53b6ebca30fbafb171cd1acfcc39fa26d0f6cd37b6c281e2673f3fc49cf851c5c81b43ac09d5003e28d5d8a6ae394fd87cd#npm:0.0.7"],\ + ["@atls/protoc-gen-abstractions", "virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:0.0.3"],\ + ["@atls/protoc-gen-interfaces", "virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:0.0.7"],\ ["@bufbuild/buf", "npm:1.50.1"],\ ["@bufbuild/protobuf", "npm:1.10.0"],\ - ["@bufbuild/protoc-gen-es", "virtual:be21700ab3771a142a1db148d9e9c53b6ebca30fbafb171cd1acfcc39fa26d0f6cd37b6c281e2673f3fc49cf851c5c81b43ac09d5003e28d5d8a6ae394fd87cd#npm:1.10.0"],\ - ["@connectrpc/protoc-gen-connect-es", "virtual:be21700ab3771a142a1db148d9e9c53b6ebca30fbafb171cd1acfcc39fa26d0f6cd37b6c281e2673f3fc49cf851c5c81b43ac09d5003e28d5d8a6ae394fd87cd#npm:1.6.1"],\ + ["@bufbuild/protoc-gen-es", "virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:1.10.0"],\ + ["@connectrpc/protoc-gen-connect-es", "virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:1.6.1"],\ ["@types/node", "npm:22.13.10"]\ ],\ "linkType": "SOFT"\ @@ -895,8 +950,8 @@ const RAW_RUNTIME_STATE = ["@atls/files-rpc-client", "workspace:files/rpc/files-rpc-client"],\ ["@atls/files-rpc", "virtual:dcad5415cbb2626d969f7991ee44a5a8463938f177ba023ae9ff4d86be05249e706bd90a09e5aa8bc0a52fc8a8314cd26a58f89d61edc5fcd4939c0069ae623a#workspace:files/rpc/files-rpc"],\ ["@bufbuild/protobuf", "npm:1.10.0"],\ - ["@connectrpc/connect", "virtual:dcad5415cbb2626d969f7991ee44a5a8463938f177ba023ae9ff4d86be05249e706bd90a09e5aa8bc0a52fc8a8314cd26a58f89d61edc5fcd4939c0069ae623a#npm:1.6.1"],\ - ["@connectrpc/connect-node", "virtual:dcad5415cbb2626d969f7991ee44a5a8463938f177ba023ae9ff4d86be05249e706bd90a09e5aa8bc0a52fc8a8314cd26a58f89d61edc5fcd4939c0069ae623a#npm:1.6.1"],\ + ["@connectrpc/connect", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ + ["@connectrpc/connect-node", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ ["@types/node", "npm:22.13.10"]\ ],\ "linkType": "SOFT"\ @@ -909,8 +964,8 @@ const RAW_RUNTIME_STATE = ["@atls/files-rpc-client-module", "workspace:files/rpc/files-rpc-client-module"],\ ["@atls/files-rpc", "virtual:dcad5415cbb2626d969f7991ee44a5a8463938f177ba023ae9ff4d86be05249e706bd90a09e5aa8bc0a52fc8a8314cd26a58f89d61edc5fcd4939c0069ae623a#workspace:files/rpc/files-rpc"],\ ["@bufbuild/protobuf", "npm:1.10.0"],\ - ["@connectrpc/connect", "virtual:dcad5415cbb2626d969f7991ee44a5a8463938f177ba023ae9ff4d86be05249e706bd90a09e5aa8bc0a52fc8a8314cd26a58f89d61edc5fcd4939c0069ae623a#npm:1.6.1"],\ - ["@connectrpc/connect-node", "virtual:dcad5415cbb2626d969f7991ee44a5a8463938f177ba023ae9ff4d86be05249e706bd90a09e5aa8bc0a52fc8a8314cd26a58f89d61edc5fcd4939c0069ae623a#npm:1.6.1"],\ + ["@connectrpc/connect", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ + ["@connectrpc/connect-node", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ ["@nestjs/common", "virtual:eb172786ac9a7ea7b4f5e5e184c606498a68d0f9162c5db3ef6fd4804af1528cc0a0a23f36db44aaeb09fc7558b0b016dc7dfc1bf3167287d244a40a377e4b21#npm:10.4.15"],\ ["@nestjs/core", "virtual:eb172786ac9a7ea7b4f5e5e184c606498a68d0f9162c5db3ef6fd4804af1528cc0a0a23f36db44aaeb09fc7558b0b016dc7dfc1bf3167287d244a40a377e4b21#npm:10.4.15"],\ ["@types/node", "npm:22.13.10"],\ @@ -1061,13 +1116,58 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ + ["virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:0.0.4", {\ + "packageLocation": "./.yarn/__virtual__/@atls-nestjs-connectrpc-virtual-d63c4429e0/2/.yarn/berry/cache/@atls-nestjs-connectrpc-npm-0.0.4-927f518942-10.zip/node_modules/@atls/nestjs-connectrpc/",\ + "packageDependencies": [\ + ["@atls/nestjs-connectrpc", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:0.0.4"],\ + ["@bufbuild/protobuf", "npm:1.10.0"],\ + ["@connectrpc/connect", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ + ["@connectrpc/connect-node", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/core", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@nestjs/microservices", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@nestjs/platform-express", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@types/bufbuild__protobuf", null],\ + ["@types/connectrpc__connect", null],\ + ["@types/connectrpc__connect-node", null],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["@types/nestjs__microservices", null],\ + ["@types/nestjs__platform-express", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"]\ + ],\ + "packagePeers": [\ + "@bufbuild/protobuf",\ + "@connectrpc/connect-node",\ + "@connectrpc/connect",\ + "@nestjs/common",\ + "@nestjs/core",\ + "@nestjs/microservices",\ + "@nestjs/platform-express",\ + "@types/bufbuild__protobuf",\ + "@types/connectrpc__connect-node",\ + "@types/connectrpc__connect",\ + "@types/nestjs__common",\ + "@types/nestjs__core",\ + "@types/nestjs__microservices",\ + "@types/nestjs__platform-express",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "HARD"\ + }],\ ["virtual:6fa46be8be044f799e939d57236013f3e0001e785df531ce0d2e0456616c766de755c3020ebeeb580faa6acb735f630be9424463c14c45581273807571e49cb6#npm:0.0.4", {\ "packageLocation": "./.yarn/__virtual__/@atls-nestjs-connectrpc-virtual-f9fabbb1f0/2/.yarn/berry/cache/@atls-nestjs-connectrpc-npm-0.0.4-927f518942-10.zip/node_modules/@atls/nestjs-connectrpc/",\ "packageDependencies": [\ ["@atls/nestjs-connectrpc", "virtual:6fa46be8be044f799e939d57236013f3e0001e785df531ce0d2e0456616c766de755c3020ebeeb580faa6acb735f630be9424463c14c45581273807571e49cb6#npm:0.0.4"],\ ["@bufbuild/protobuf", "npm:1.10.0"],\ - ["@connectrpc/connect", "virtual:dcad5415cbb2626d969f7991ee44a5a8463938f177ba023ae9ff4d86be05249e706bd90a09e5aa8bc0a52fc8a8314cd26a58f89d61edc5fcd4939c0069ae623a#npm:1.6.1"],\ - ["@connectrpc/connect-node", "virtual:dcad5415cbb2626d969f7991ee44a5a8463938f177ba023ae9ff4d86be05249e706bd90a09e5aa8bc0a52fc8a8314cd26a58f89d61edc5fcd4939c0069ae623a#npm:1.6.1"],\ + ["@connectrpc/connect", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ + ["@connectrpc/connect-node", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ ["@nestjs/common", "virtual:85c5c4e95e23f2f3c5ea9d794f9606e7fcf829d1a23403c6b8c1915991c40099a9861ee3f3011c6a72a1310d4e08df10df95fa1943e3c0beee4aba9caff13c4b#npm:10.4.15"],\ ["@nestjs/core", "virtual:6fa46be8be044f799e939d57236013f3e0001e785df531ce0d2e0456616c766de755c3020ebeeb580faa6acb735f630be9424463c14c45581273807571e49cb6#npm:10.4.15"],\ ["@nestjs/microservices", "virtual:6fa46be8be044f799e939d57236013f3e0001e785df531ce0d2e0456616c766de755c3020ebeeb580faa6acb735f630be9424463c14c45581273807571e49cb6#npm:10.4.15"],\ @@ -1111,8 +1211,8 @@ const RAW_RUNTIME_STATE = "packageDependencies": [\ ["@atls/nestjs-connectrpc", "virtual:a712d76c03dedd5fb4cad0b8dbebc7bc808245b17ef48e30c5219b3188964ad8606ec3296d56cd7812264aed0486ec151128b463d489dcdc3d42bcbaefb4877e#npm:0.0.4"],\ ["@bufbuild/protobuf", "npm:1.10.0"],\ - ["@connectrpc/connect", "virtual:dcad5415cbb2626d969f7991ee44a5a8463938f177ba023ae9ff4d86be05249e706bd90a09e5aa8bc0a52fc8a8314cd26a58f89d61edc5fcd4939c0069ae623a#npm:1.6.1"],\ - ["@connectrpc/connect-node", "virtual:dcad5415cbb2626d969f7991ee44a5a8463938f177ba023ae9ff4d86be05249e706bd90a09e5aa8bc0a52fc8a8314cd26a58f89d61edc5fcd4939c0069ae623a#npm:1.6.1"],\ + ["@connectrpc/connect", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ + ["@connectrpc/connect-node", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ ["@nestjs/common", "virtual:85c5c4e95e23f2f3c5ea9d794f9606e7fcf829d1a23403c6b8c1915991c40099a9861ee3f3011c6a72a1310d4e08df10df95fa1943e3c0beee4aba9caff13c4b#npm:10.4.15"],\ ["@nestjs/core", "virtual:a712d76c03dedd5fb4cad0b8dbebc7bc808245b17ef48e30c5219b3188964ad8606ec3296d56cd7812264aed0486ec151128b463d489dcdc3d42bcbaefb4877e#npm:10.4.15"],\ ["@nestjs/microservices", "virtual:a712d76c03dedd5fb4cad0b8dbebc7bc808245b17ef48e30c5219b3188964ad8606ec3296d56cd7812264aed0486ec151128b463d489dcdc3d42bcbaefb4877e#npm:10.4.15"],\ @@ -1150,6 +1250,51 @@ const RAW_RUNTIME_STATE = "rxjs"\ ],\ "linkType": "HARD"\ + }],\ + ["virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:0.0.4", {\ + "packageLocation": "./.yarn/__virtual__/@atls-nestjs-connectrpc-virtual-06a641ee5c/2/.yarn/berry/cache/@atls-nestjs-connectrpc-npm-0.0.4-927f518942-10.zip/node_modules/@atls/nestjs-connectrpc/",\ + "packageDependencies": [\ + ["@atls/nestjs-connectrpc", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:0.0.4"],\ + ["@bufbuild/protobuf", "npm:1.10.0"],\ + ["@connectrpc/connect", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ + ["@connectrpc/connect-node", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/core", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/microservices", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/platform-express", null],\ + ["@types/bufbuild__protobuf", null],\ + ["@types/connectrpc__connect", null],\ + ["@types/connectrpc__connect-node", null],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["@types/nestjs__microservices", null],\ + ["@types/nestjs__platform-express", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"]\ + ],\ + "packagePeers": [\ + "@bufbuild/protobuf",\ + "@connectrpc/connect-node",\ + "@connectrpc/connect",\ + "@nestjs/common",\ + "@nestjs/core",\ + "@nestjs/microservices",\ + "@nestjs/platform-express",\ + "@types/bufbuild__protobuf",\ + "@types/connectrpc__connect-node",\ + "@types/connectrpc__connect",\ + "@types/nestjs__common",\ + "@types/nestjs__core",\ + "@types/nestjs__microservices",\ + "@types/nestjs__platform-express",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@atls/nestjs-connectrpc-errors", [\ @@ -1167,9 +1312,9 @@ const RAW_RUNTIME_STATE = ["@atls/core-errors", "npm:0.0.4"],\ ["@atls/guard-clause", "npm:0.0.1"],\ ["@atls/nestjs-validation", "virtual:6fa46be8be044f799e939d57236013f3e0001e785df531ce0d2e0456616c766de755c3020ebeeb580faa6acb735f630be9424463c14c45581273807571e49cb6#npm:0.0.1"],\ - ["@atls/protobuf-rpc", "virtual:deb71586f4c2a06d5f6a9f4f47e489adcbd26a61c9cf2fa2516e5d54a52ec14c0e7ca253268e33c6e3a1e13ff5d68bacf9b4d958df0f0c320a57a7422ebbc233#npm:0.0.5"],\ + ["@atls/protobuf-rpc", "virtual:a87335dcd3ab65e3b707e4de945bf59b6d42483a056b262349e0b3e383d517e334efcd4fd7ef34514d428d5e701ffb6bb6941f2c1532ba8a674fe38b1acbf188#npm:0.0.5"],\ ["@bufbuild/protobuf", "npm:1.10.0"],\ - ["@connectrpc/connect", "virtual:dcad5415cbb2626d969f7991ee44a5a8463938f177ba023ae9ff4d86be05249e706bd90a09e5aa8bc0a52fc8a8314cd26a58f89d61edc5fcd4939c0069ae623a#npm:1.6.1"],\ + ["@connectrpc/connect", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ ["@nestjs/common", "virtual:85c5c4e95e23f2f3c5ea9d794f9606e7fcf829d1a23403c6b8c1915991c40099a9861ee3f3011c6a72a1310d4e08df10df95fa1943e3c0beee4aba9caff13c4b#npm:10.4.15"],\ ["@nestjs/core", "virtual:6fa46be8be044f799e939d57236013f3e0001e785df531ce0d2e0456616c766de755c3020ebeeb580faa6acb735f630be9424463c14c45581273807571e49cb6#npm:10.4.15"],\ ["@nestjs/microservices", "virtual:6fa46be8be044f799e939d57236013f3e0001e785df531ce0d2e0456616c766de755c3020ebeeb580faa6acb735f630be9424463c14c45581273807571e49cb6#npm:10.4.15"],\ @@ -1219,9 +1364,9 @@ const RAW_RUNTIME_STATE = ["@atls/core-errors", "npm:0.0.4"],\ ["@atls/guard-clause", "npm:0.0.1"],\ ["@atls/nestjs-validation", "virtual:93633bffa80d03a91d6c936f30d44ca8f97bc175a6ca57269833d5aa32511a5b0cb55900ece6504ea3137f7f14109bf6bab98c0fae7fa87cefcde0de02244488#npm:0.0.1"],\ - ["@atls/protobuf-rpc", "virtual:deb71586f4c2a06d5f6a9f4f47e489adcbd26a61c9cf2fa2516e5d54a52ec14c0e7ca253268e33c6e3a1e13ff5d68bacf9b4d958df0f0c320a57a7422ebbc233#npm:0.0.5"],\ + ["@atls/protobuf-rpc", "virtual:a87335dcd3ab65e3b707e4de945bf59b6d42483a056b262349e0b3e383d517e334efcd4fd7ef34514d428d5e701ffb6bb6941f2c1532ba8a674fe38b1acbf188#npm:0.0.5"],\ ["@bufbuild/protobuf", "npm:1.10.0"],\ - ["@connectrpc/connect", "virtual:dcad5415cbb2626d969f7991ee44a5a8463938f177ba023ae9ff4d86be05249e706bd90a09e5aa8bc0a52fc8a8314cd26a58f89d61edc5fcd4939c0069ae623a#npm:1.6.1"],\ + ["@connectrpc/connect", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ ["@nestjs/common", "virtual:85c5c4e95e23f2f3c5ea9d794f9606e7fcf829d1a23403c6b8c1915991c40099a9861ee3f3011c6a72a1310d4e08df10df95fa1943e3c0beee4aba9caff13c4b#npm:10.4.15"],\ ["@nestjs/core", "virtual:a712d76c03dedd5fb4cad0b8dbebc7bc808245b17ef48e30c5219b3188964ad8606ec3296d56cd7812264aed0486ec151128b463d489dcdc3d42bcbaefb4877e#npm:10.4.15"],\ ["@nestjs/microservices", "virtual:a712d76c03dedd5fb4cad0b8dbebc7bc808245b17ef48e30c5219b3188964ad8606ec3296d56cd7812264aed0486ec151128b463d489dcdc3d42bcbaefb4877e#npm:10.4.15"],\ @@ -1263,6 +1408,110 @@ const RAW_RUNTIME_STATE = "rxjs"\ ],\ "linkType": "HARD"\ + }],\ + ["virtual:b00c7713c7e5ef7524c56cd32e91790a276d2b1040866933cdcb899d6ebc8aeac3bb27d107cf22378c80d7caf3bebdac061f5aca8bd0c00bae1b5e8eee6c3ac5#npm:0.0.2", {\ + "packageLocation": "./.yarn/__virtual__/@atls-nestjs-connectrpc-errors-virtual-e0638eaffe/2/.yarn/berry/cache/@atls-nestjs-connectrpc-errors-npm-0.0.2-6ef482309f-10.zip/node_modules/@atls/nestjs-connectrpc-errors/",\ + "packageDependencies": [\ + ["@atls/nestjs-connectrpc-errors", "virtual:b00c7713c7e5ef7524c56cd32e91790a276d2b1040866933cdcb899d6ebc8aeac3bb27d107cf22378c80d7caf3bebdac061f5aca8bd0c00bae1b5e8eee6c3ac5#npm:0.0.2"],\ + ["@atls/core-errors", "npm:0.0.4"],\ + ["@atls/guard-clause", "npm:0.0.1"],\ + ["@atls/nestjs-validation", "virtual:b00c7713c7e5ef7524c56cd32e91790a276d2b1040866933cdcb899d6ebc8aeac3bb27d107cf22378c80d7caf3bebdac061f5aca8bd0c00bae1b5e8eee6c3ac5#npm:0.0.1"],\ + ["@atls/protobuf-rpc", "virtual:a87335dcd3ab65e3b707e4de945bf59b6d42483a056b262349e0b3e383d517e334efcd4fd7ef34514d428d5e701ffb6bb6941f2c1532ba8a674fe38b1acbf188#npm:0.0.5"],\ + ["@bufbuild/protobuf", "npm:1.10.0"],\ + ["@connectrpc/connect", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/core", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@nestjs/microservices", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@types/atls__nestjs-validation", null],\ + ["@types/bufbuild__protobuf", null],\ + ["@types/class-transformer", null],\ + ["@types/class-validator", null],\ + ["@types/connectrpc__connect", null],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["@types/nestjs__microservices", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["class-transformer", "npm:0.5.1"],\ + ["class-validator", "npm:0.14.1"],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"]\ + ],\ + "packagePeers": [\ + "@atls/nestjs-validation",\ + "@bufbuild/protobuf",\ + "@connectrpc/connect",\ + "@nestjs/common",\ + "@nestjs/core",\ + "@nestjs/microservices",\ + "@types/atls__nestjs-validation",\ + "@types/bufbuild__protobuf",\ + "@types/class-transformer",\ + "@types/class-validator",\ + "@types/connectrpc__connect",\ + "@types/nestjs__common",\ + "@types/nestjs__core",\ + "@types/nestjs__microservices",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "class-transformer",\ + "class-validator",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "HARD"\ + }],\ + ["virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:0.0.2", {\ + "packageLocation": "./.yarn/__virtual__/@atls-nestjs-connectrpc-errors-virtual-a87335dcd3/2/.yarn/berry/cache/@atls-nestjs-connectrpc-errors-npm-0.0.2-6ef482309f-10.zip/node_modules/@atls/nestjs-connectrpc-errors/",\ + "packageDependencies": [\ + ["@atls/nestjs-connectrpc-errors", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:0.0.2"],\ + ["@atls/core-errors", "npm:0.0.4"],\ + ["@atls/guard-clause", "npm:0.0.1"],\ + ["@atls/nestjs-validation", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:0.0.1"],\ + ["@atls/protobuf-rpc", "virtual:a87335dcd3ab65e3b707e4de945bf59b6d42483a056b262349e0b3e383d517e334efcd4fd7ef34514d428d5e701ffb6bb6941f2c1532ba8a674fe38b1acbf188#npm:0.0.5"],\ + ["@bufbuild/protobuf", "npm:1.10.0"],\ + ["@connectrpc/connect", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/core", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/microservices", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@types/atls__nestjs-validation", null],\ + ["@types/bufbuild__protobuf", null],\ + ["@types/class-transformer", null],\ + ["@types/class-validator", null],\ + ["@types/connectrpc__connect", null],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["@types/nestjs__microservices", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["class-transformer", "npm:0.5.1"],\ + ["class-validator", "npm:0.14.1"],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"]\ + ],\ + "packagePeers": [\ + "@atls/nestjs-validation",\ + "@bufbuild/protobuf",\ + "@connectrpc/connect",\ + "@nestjs/common",\ + "@nestjs/core",\ + "@nestjs/microservices",\ + "@types/atls__nestjs-validation",\ + "@types/bufbuild__protobuf",\ + "@types/class-transformer",\ + "@types/class-validator",\ + "@types/connectrpc__connect",\ + "@types/nestjs__common",\ + "@types/nestjs__core",\ + "@types/nestjs__microservices",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "class-transformer",\ + "class-validator",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@atls/nestjs-cqrs", [\ @@ -1655,6 +1904,32 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ + ["virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:0.2.41", {\ + "packageLocation": "./.yarn/__virtual__/@atls-nestjs-logger-virtual-06ee20059f/2/.yarn/berry/cache/@atls-nestjs-logger-npm-0.2.41-813c46049e-10.zip/node_modules/@atls/nestjs-logger/",\ + "packageDependencies": [\ + ["@atls/nestjs-logger", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:0.2.41"],\ + ["@atls/logger", "npm:0.0.2"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/core", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/core",\ + "@types/nestjs__common",\ + "@types/nestjs__core",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "HARD"\ + }],\ ["virtual:62f71d9b36373d8f4fff4b659e985beeb5a09d82f29e390428f8c72bedae91daededcc404f999056066d3a9905f1099ead5399f6379c7c0c5d7a0a62acce0b2d#npm:0.2.41", {\ "packageLocation": "./.yarn/__virtual__/@atls-nestjs-logger-virtual-5f61dd01b9/2/.yarn/berry/cache/@atls-nestjs-logger-npm-0.2.41-813c46049e-10.zip/node_modules/@atls/nestjs-logger/",\ "packageDependencies": [\ @@ -1742,6 +2017,32 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ + ["virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:0.0.1", {\ + "packageLocation": "./.yarn/__virtual__/@atls-nestjs-microservices-registry-virtual-a7190380ff/2/.yarn/berry/cache/@atls-nestjs-microservices-registry-npm-0.0.1-ce22046a49-10.zip/node_modules/@atls/nestjs-microservices-registry/",\ + "packageDependencies": [\ + ["@atls/nestjs-microservices-registry", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:0.0.1"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/core", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["fast-hash-code", "npm:2.1.0"],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/core",\ + "@types/nestjs__common",\ + "@types/nestjs__core",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "HARD"\ + }],\ ["virtual:6fa46be8be044f799e939d57236013f3e0001e785df531ce0d2e0456616c766de755c3020ebeeb580faa6acb735f630be9424463c14c45581273807571e49cb6#npm:0.0.1", {\ "packageLocation": "./.yarn/__virtual__/@atls-nestjs-microservices-registry-virtual-0b30692448/2/.yarn/berry/cache/@atls-nestjs-microservices-registry-npm-0.0.1-ce22046a49-10.zip/node_modules/@atls/nestjs-microservices-registry/",\ "packageDependencies": [\ @@ -1793,6 +2094,32 @@ const RAW_RUNTIME_STATE = "rxjs"\ ],\ "linkType": "HARD"\ + }],\ + ["virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:0.0.1", {\ + "packageLocation": "./.yarn/__virtual__/@atls-nestjs-microservices-registry-virtual-4a73bb0093/2/.yarn/berry/cache/@atls-nestjs-microservices-registry-npm-0.0.1-ce22046a49-10.zip/node_modules/@atls/nestjs-microservices-registry/",\ + "packageDependencies": [\ + ["@atls/nestjs-microservices-registry", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:0.0.1"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/core", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["fast-hash-code", "npm:2.1.0"],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/core",\ + "@types/nestjs__common",\ + "@types/nestjs__core",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@atls/nestjs-mikro-orm-config", [\ @@ -2090,10 +2417,76 @@ const RAW_RUNTIME_STATE = "rxjs"\ ],\ "linkType": "HARD"\ - }]\ - ]],\ - ["@atls/protobuf-rpc", [\ - ["npm:0.0.5", {\ + }],\ + ["virtual:b00c7713c7e5ef7524c56cd32e91790a276d2b1040866933cdcb899d6ebc8aeac3bb27d107cf22378c80d7caf3bebdac061f5aca8bd0c00bae1b5e8eee6c3ac5#npm:0.0.1", {\ + "packageLocation": "./.yarn/__virtual__/@atls-nestjs-validation-virtual-93562eb85f/2/.yarn/berry/cache/@atls-nestjs-validation-npm-0.0.1-04cffeb69b-10.zip/node_modules/@atls/nestjs-validation/",\ + "packageDependencies": [\ + ["@atls/nestjs-validation", "virtual:b00c7713c7e5ef7524c56cd32e91790a276d2b1040866933cdcb899d6ebc8aeac3bb27d107cf22378c80d7caf3bebdac061f5aca8bd0c00bae1b5e8eee6c3ac5#npm:0.0.1"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/core", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@types/class-transformer", null],\ + ["@types/class-validator", null],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["class-transformer", "npm:0.5.1"],\ + ["class-validator", "npm:0.14.1"],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/core",\ + "@types/class-transformer",\ + "@types/class-validator",\ + "@types/nestjs__common",\ + "@types/nestjs__core",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "class-transformer",\ + "class-validator",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "HARD"\ + }],\ + ["virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:0.0.1", {\ + "packageLocation": "./.yarn/__virtual__/@atls-nestjs-validation-virtual-e95aeb7e38/2/.yarn/berry/cache/@atls-nestjs-validation-npm-0.0.1-04cffeb69b-10.zip/node_modules/@atls/nestjs-validation/",\ + "packageDependencies": [\ + ["@atls/nestjs-validation", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:0.0.1"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/core", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@types/class-transformer", null],\ + ["@types/class-validator", null],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["class-transformer", "npm:0.5.1"],\ + ["class-validator", "npm:0.14.1"],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/core",\ + "@types/class-transformer",\ + "@types/class-validator",\ + "@types/nestjs__common",\ + "@types/nestjs__core",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "class-transformer",\ + "class-validator",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@atls/protobuf-rpc", [\ + ["npm:0.0.5", {\ "packageLocation": "../.yarn/berry/cache/@atls-protobuf-rpc-npm-0.0.5-4ba7e0bbf3-10.zip/node_modules/@atls/protobuf-rpc/",\ "packageDependencies": [\ ["@atls/protobuf-rpc", "npm:0.0.5"]\ @@ -2120,10 +2513,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:deb71586f4c2a06d5f6a9f4f47e489adcbd26a61c9cf2fa2516e5d54a52ec14c0e7ca253268e33c6e3a1e13ff5d68bacf9b4d958df0f0c320a57a7422ebbc233#npm:0.0.5", {\ - "packageLocation": "./.yarn/__virtual__/@atls-protobuf-rpc-virtual-1dbf621f00/2/.yarn/berry/cache/@atls-protobuf-rpc-npm-0.0.5-4ba7e0bbf3-10.zip/node_modules/@atls/protobuf-rpc/",\ + ["virtual:a87335dcd3ab65e3b707e4de945bf59b6d42483a056b262349e0b3e383d517e334efcd4fd7ef34514d428d5e701ffb6bb6941f2c1532ba8a674fe38b1acbf188#npm:0.0.5", {\ + "packageLocation": "./.yarn/__virtual__/@atls-protobuf-rpc-virtual-44eafcb776/2/.yarn/berry/cache/@atls-protobuf-rpc-npm-0.0.5-4ba7e0bbf3-10.zip/node_modules/@atls/protobuf-rpc/",\ "packageDependencies": [\ - ["@atls/protobuf-rpc", "virtual:deb71586f4c2a06d5f6a9f4f47e489adcbd26a61c9cf2fa2516e5d54a52ec14c0e7ca253268e33c6e3a1e13ff5d68bacf9b4d958df0f0c320a57a7422ebbc233#npm:0.0.5"],\ + ["@atls/protobuf-rpc", "virtual:a87335dcd3ab65e3b707e4de945bf59b6d42483a056b262349e0b3e383d517e334efcd4fd7ef34514d428d5e701ffb6bb6941f2c1532ba8a674fe38b1acbf188#npm:0.0.5"],\ ["@bufbuild/protobuf", "npm:1.10.0"],\ ["@types/bufbuild__protobuf", null]\ ],\ @@ -2142,10 +2535,33 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:be21700ab3771a142a1db148d9e9c53b6ebca30fbafb171cd1acfcc39fa26d0f6cd37b6c281e2673f3fc49cf851c5c81b43ac09d5003e28d5d8a6ae394fd87cd#npm:0.0.3", {\ - "packageLocation": "./.yarn/__virtual__/@atls-protoc-gen-abstractions-virtual-b6bd517c59/2/.yarn/berry/cache/@atls-protoc-gen-abstractions-npm-0.0.3-21258ac8c7-10.zip/node_modules/@atls/protoc-gen-abstractions/",\ + ["virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:0.0.3", {\ + "packageLocation": "./.yarn/__virtual__/@atls-protoc-gen-abstractions-virtual-a6ce93be13/2/.yarn/berry/cache/@atls-protoc-gen-abstractions-npm-0.0.3-21258ac8c7-10.zip/node_modules/@atls/protoc-gen-abstractions/",\ + "packageDependencies": [\ + ["@atls/protoc-gen-abstractions", "virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:0.0.3"],\ + ["@bufbuild/protobuf", "npm:1.10.0"],\ + ["@bufbuild/protoplugin", "npm:1.10.0"],\ + ["@types/bufbuild__protobuf", null]\ + ],\ + "packagePeers": [\ + "@bufbuild/protobuf",\ + "@types/bufbuild__protobuf"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@atls/protoc-gen-config", [\ + ["npm:0.0.2", {\ + "packageLocation": "../.yarn/berry/cache/@atls-protoc-gen-config-npm-0.0.2-e7457e0f36-10.zip/node_modules/@atls/protoc-gen-config/",\ + "packageDependencies": [\ + ["@atls/protoc-gen-config", "npm:0.0.2"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:0.0.2", {\ + "packageLocation": "./.yarn/__virtual__/@atls-protoc-gen-config-virtual-3b74688140/2/.yarn/berry/cache/@atls-protoc-gen-config-npm-0.0.2-e7457e0f36-10.zip/node_modules/@atls/protoc-gen-config/",\ "packageDependencies": [\ - ["@atls/protoc-gen-abstractions", "virtual:be21700ab3771a142a1db148d9e9c53b6ebca30fbafb171cd1acfcc39fa26d0f6cd37b6c281e2673f3fc49cf851c5c81b43ac09d5003e28d5d8a6ae394fd87cd#npm:0.0.3"],\ + ["@atls/protoc-gen-config", "virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:0.0.2"],\ ["@bufbuild/protobuf", "npm:1.10.0"],\ ["@bufbuild/protoplugin", "npm:1.10.0"],\ ["@types/bufbuild__protobuf", null]\ @@ -2165,10 +2581,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:be21700ab3771a142a1db148d9e9c53b6ebca30fbafb171cd1acfcc39fa26d0f6cd37b6c281e2673f3fc49cf851c5c81b43ac09d5003e28d5d8a6ae394fd87cd#npm:0.0.7", {\ - "packageLocation": "./.yarn/__virtual__/@atls-protoc-gen-interfaces-virtual-02d157bb14/2/.yarn/berry/cache/@atls-protoc-gen-interfaces-npm-0.0.7-483227ec19-10.zip/node_modules/@atls/protoc-gen-interfaces/",\ + ["virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:0.0.7", {\ + "packageLocation": "./.yarn/__virtual__/@atls-protoc-gen-interfaces-virtual-b9e0109584/2/.yarn/berry/cache/@atls-protoc-gen-interfaces-npm-0.0.7-483227ec19-10.zip/node_modules/@atls/protoc-gen-interfaces/",\ "packageDependencies": [\ - ["@atls/protoc-gen-interfaces", "virtual:be21700ab3771a142a1db148d9e9c53b6ebca30fbafb171cd1acfcc39fa26d0f6cd37b6c281e2673f3fc49cf851c5c81b43ac09d5003e28d5d8a6ae394fd87cd#npm:0.0.7"],\ + ["@atls/protoc-gen-interfaces", "virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:0.0.7"],\ ["@bufbuild/protobuf", "npm:1.10.0"],\ ["@bufbuild/protoplugin", "npm:1.10.0"],\ ["@types/bufbuild__protobuf", null]\ @@ -2224,17 +2640,354 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@atls/webpack-proto-imports-loader", [\ - ["npm:1.0.1", {\ - "packageLocation": "../.yarn/berry/cache/@atls-webpack-proto-imports-loader-npm-1.0.1-e2585c7171-10.zip/node_modules/@atls/webpack-proto-imports-loader/",\ + ["npm:1.0.5", {\ + "packageLocation": "../.yarn/berry/cache/@atls-webpack-proto-imports-loader-npm-1.0.5-5cfbb25cf8-10.zip/node_modules/@atls/webpack-proto-imports-loader/",\ "packageDependencies": [\ - ["@atls/webpack-proto-imports-loader", "npm:1.0.1"],\ - ["file-loader", "virtual:e2585c7171b12c5583c4eecb512d1a4e014083ea0966117c2a782f5e891f98c2fd419f9b5f70bee043816000ba9cc5c25620b7a185ade5f963329b6435a82eb4#npm:6.2.0"],\ + ["@atls/webpack-proto-imports-loader", "npm:1.0.5"],\ + ["file-loader", "virtual:5cfbb25cf845bfd9f59f849f3f0c942951069a339f5f579916159b49f325ee0bda72493e2f05c47b6d7155cf27d5c7644a3db999d5fc59fb4d6fe30c73857a57#npm:6.2.0"],\ ["protocol-buffers-schema", "npm:3.6.0"],\ ["tslib", "npm:2.8.1"]\ ],\ "linkType": "HARD"\ }]\ ]],\ + ["@auth/application-module", [\ + ["virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#workspace:auth/service/application-module", {\ + "packageLocation": "./.yarn/__virtual__/@auth-application-module-virtual-bd96729585/1/auth/service/application-module/",\ + "packageDependencies": [\ + ["@auth/application-module", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#workspace:auth/service/application-module"],\ + ["@auth/domain-module", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#workspace:auth/service/domain-module"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/core", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@nestjs/cqrs", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.0.3"],\ + ["@types/auth__domain-module", null],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["@types/nestjs__cqrs", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"]\ + ],\ + "packagePeers": [\ + "@auth/domain-module",\ + "@nestjs/common",\ + "@nestjs/core",\ + "@nestjs/cqrs",\ + "@types/auth__domain-module",\ + "@types/nestjs__common",\ + "@types/nestjs__core",\ + "@types/nestjs__cqrs",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#workspace:auth/service/application-module", {\ + "packageLocation": "./.yarn/__virtual__/@auth-application-module-virtual-51b22edf88/1/auth/service/application-module/",\ + "packageDependencies": [\ + ["@auth/application-module", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#workspace:auth/service/application-module"],\ + ["@auth/domain-module", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#workspace:auth/service/domain-module"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/core", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/cqrs", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.0.3"],\ + ["@types/auth__domain-module", null],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["@types/nestjs__cqrs", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"]\ + ],\ + "packagePeers": [\ + "@auth/domain-module",\ + "@nestjs/common",\ + "@nestjs/core",\ + "@nestjs/cqrs",\ + "@types/auth__domain-module",\ + "@types/nestjs__common",\ + "@types/nestjs__core",\ + "@types/nestjs__cqrs",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "SOFT"\ + }],\ + ["workspace:auth/service/application-module", {\ + "packageLocation": "./auth/service/application-module/",\ + "packageDependencies": [\ + ["@auth/application-module", "workspace:auth/service/application-module"],\ + ["@auth/domain-module", "virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#workspace:auth/service/domain-module"],\ + ["@nestjs/common", "virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#npm:11.1.5"],\ + ["@nestjs/core", "virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#npm:11.1.5"],\ + ["@nestjs/cqrs", "virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#npm:11.0.3"],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"]\ + ],\ + "linkType": "SOFT"\ + }]\ + ]],\ + ["@auth/domain-module", [\ + ["virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#workspace:auth/service/domain-module", {\ + "packageLocation": "./.yarn/__virtual__/@auth-domain-module-virtual-c379edb5e6/1/auth/service/domain-module/",\ + "packageDependencies": [\ + ["@auth/domain-module", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#workspace:auth/service/domain-module"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/core", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@nestjs/cqrs", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.0.3"],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["@types/nestjs__cqrs", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"],\ + ["zod", "npm:4.0.5"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/core",\ + "@nestjs/cqrs",\ + "@types/nestjs__common",\ + "@types/nestjs__core",\ + "@types/nestjs__cqrs",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#workspace:auth/service/domain-module", {\ + "packageLocation": "./.yarn/__virtual__/@auth-domain-module-virtual-1af15c4e7a/1/auth/service/domain-module/",\ + "packageDependencies": [\ + ["@auth/domain-module", "virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#workspace:auth/service/domain-module"],\ + ["@nestjs/common", "virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#npm:11.1.5"],\ + ["@nestjs/core", "virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#npm:11.1.5"],\ + ["@nestjs/cqrs", "virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#npm:11.0.3"],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["@types/nestjs__cqrs", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"],\ + ["zod", "npm:4.0.5"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/core",\ + "@nestjs/cqrs",\ + "@types/nestjs__common",\ + "@types/nestjs__core",\ + "@types/nestjs__cqrs",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#workspace:auth/service/domain-module", {\ + "packageLocation": "./.yarn/__virtual__/@auth-domain-module-virtual-0c3c119129/1/auth/service/domain-module/",\ + "packageDependencies": [\ + ["@auth/domain-module", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#workspace:auth/service/domain-module"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/core", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/cqrs", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.0.3"],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["@types/nestjs__cqrs", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"],\ + ["zod", "npm:4.0.5"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/core",\ + "@nestjs/cqrs",\ + "@types/nestjs__common",\ + "@types/nestjs__core",\ + "@types/nestjs__cqrs",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "SOFT"\ + }],\ + ["workspace:auth/service/domain-module", {\ + "packageLocation": "./auth/service/domain-module/",\ + "packageDependencies": [\ + ["@auth/domain-module", "workspace:auth/service/domain-module"],\ + ["@nestjs/common", "virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#npm:11.1.5"],\ + ["@nestjs/core", "virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#npm:11.1.5"],\ + ["@nestjs/cqrs", "virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#npm:11.0.3"],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"],\ + ["zod", "npm:4.0.5"]\ + ],\ + "linkType": "SOFT"\ + }]\ + ]],\ + ["@auth/infrastructure-module", [\ + ["virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#workspace:auth/service/infrastructure-module", {\ + "packageLocation": "./.yarn/__virtual__/@auth-infrastructure-module-virtual-b00c7713c7/1/auth/service/infrastructure-module/",\ + "packageDependencies": [\ + ["@auth/infrastructure-module", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#workspace:auth/service/infrastructure-module"],\ + ["@alts/auth-rpc", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#workspace:auth/rpc/auth"],\ + ["@atls/core-errors", "npm:0.0.4"],\ + ["@atls/nestjs-connectrpc", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:0.0.4"],\ + ["@atls/nestjs-connectrpc-errors", "virtual:b00c7713c7e5ef7524c56cd32e91790a276d2b1040866933cdcb899d6ebc8aeac3bb27d107cf22378c80d7caf3bebdac061f5aca8bd0c00bae1b5e8eee6c3ac5#npm:0.0.2"],\ + ["@atls/nestjs-microservices-registry", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:0.0.1"],\ + ["@atls/nestjs-validation", "virtual:b00c7713c7e5ef7524c56cd32e91790a276d2b1040866933cdcb899d6ebc8aeac3bb27d107cf22378c80d7caf3bebdac061f5aca8bd0c00bae1b5e8eee6c3ac5#npm:0.0.1"],\ + ["@auth/application-module", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#workspace:auth/service/application-module"],\ + ["@auth/domain-module", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#workspace:auth/service/domain-module"],\ + ["@bufbuild/protobuf", "npm:1.10.0"],\ + ["@connectrpc/connect", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ + ["@connectrpc/connect-node", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/config", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:4.0.2"],\ + ["@nestjs/core", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@nestjs/cqrs", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.0.3"],\ + ["@nestjs/microservices", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@ory/kratos-client", "npm:1.3.8"],\ + ["@types/alts__auth-rpc", null],\ + ["@types/atls__nestjs-connectrpc", null],\ + ["@types/atls__nestjs-microservices-registry", null],\ + ["@types/auth__application-module", null],\ + ["@types/auth__domain-module", null],\ + ["@types/class-transformer", null],\ + ["@types/class-validator", null],\ + ["@types/connectrpc__connect", null],\ + ["@types/connectrpc__connect-node", null],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__config", null],\ + ["@types/nestjs__core", null],\ + ["@types/nestjs__cqrs", null],\ + ["@types/nestjs__microservices", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["axios", "npm:1.8.4"],\ + ["class-transformer", "npm:0.5.1"],\ + ["class-validator", "npm:0.14.1"],\ + ["graphql", "npm:16.11.0"],\ + ["graphql-request", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:7.2.0"],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"]\ + ],\ + "packagePeers": [\ + "@alts/auth-rpc",\ + "@atls/nestjs-connectrpc",\ + "@atls/nestjs-microservices-registry",\ + "@auth/application-module",\ + "@auth/domain-module",\ + "@connectrpc/connect-node",\ + "@connectrpc/connect",\ + "@nestjs/common",\ + "@nestjs/config",\ + "@nestjs/core",\ + "@nestjs/cqrs",\ + "@nestjs/microservices",\ + "@types/alts__auth-rpc",\ + "@types/atls__nestjs-connectrpc",\ + "@types/atls__nestjs-microservices-registry",\ + "@types/auth__application-module",\ + "@types/auth__domain-module",\ + "@types/class-transformer",\ + "@types/class-validator",\ + "@types/connectrpc__connect-node",\ + "@types/connectrpc__connect",\ + "@types/nestjs__common",\ + "@types/nestjs__config",\ + "@types/nestjs__core",\ + "@types/nestjs__cqrs",\ + "@types/nestjs__microservices",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "class-transformer",\ + "class-validator",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "SOFT"\ + }],\ + ["workspace:auth/service/infrastructure-module", {\ + "packageLocation": "./auth/service/infrastructure-module/",\ + "packageDependencies": [\ + ["@auth/infrastructure-module", "workspace:auth/service/infrastructure-module"],\ + ["@alts/auth-rpc", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#workspace:auth/rpc/auth"],\ + ["@atls/core-errors", "npm:0.0.4"],\ + ["@atls/nestjs-connectrpc", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:0.0.4"],\ + ["@atls/nestjs-connectrpc-errors", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:0.0.2"],\ + ["@atls/nestjs-microservices-registry", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:0.0.1"],\ + ["@atls/nestjs-validation", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:0.0.1"],\ + ["@auth/application-module", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#workspace:auth/service/application-module"],\ + ["@auth/domain-module", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#workspace:auth/service/domain-module"],\ + ["@bufbuild/protobuf", "npm:1.10.0"],\ + ["@connectrpc/connect", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ + ["@connectrpc/connect-node", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/config", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:4.0.2"],\ + ["@nestjs/core", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/cqrs", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.0.3"],\ + ["@nestjs/microservices", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@ory/kratos-client", "npm:1.3.8"],\ + ["axios", "npm:1.8.4"],\ + ["class-transformer", "npm:0.5.1"],\ + ["class-validator", "npm:0.14.1"],\ + ["graphql", "npm:16.11.0"],\ + ["graphql-request", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:7.2.0"],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"]\ + ],\ + "linkType": "SOFT"\ + }]\ + ]],\ + ["@auth/service-entrypoint", [\ + ["workspace:auth/service/service-entrypoint", {\ + "packageLocation": "./auth/service/service-entrypoint/",\ + "packageDependencies": [\ + ["@auth/service-entrypoint", "workspace:auth/service/service-entrypoint"],\ + ["@alts/auth-rpc", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#workspace:auth/rpc/auth"],\ + ["@atls/nestjs-connectrpc", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:0.0.4"],\ + ["@atls/nestjs-logger", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:0.2.41"],\ + ["@atls/nestjs-microservices-registry", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:0.0.1"],\ + ["@auth/application-module", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#workspace:auth/service/application-module"],\ + ["@auth/domain-module", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#workspace:auth/service/domain-module"],\ + ["@auth/infrastructure-module", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#workspace:auth/service/infrastructure-module"],\ + ["@bufbuild/protobuf", "npm:1.10.0"],\ + ["@connectrpc/connect", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ + ["@connectrpc/connect-node", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/config", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:4.0.2"],\ + ["@nestjs/core", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@nestjs/cqrs", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.0.3"],\ + ["@nestjs/microservices", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@nestjs/platform-express", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@nestjs/platform-fastify", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@nestjs/testing", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@nestjs/websockets", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@types/amqplib", "npm:0.10.7"],\ + ["amqp-connection-manager", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:4.1.14"],\ + ["amqplib", "npm:0.10.8"],\ + ["class-transformer", "npm:0.5.1"],\ + ["class-validator", "npm:0.14.1"],\ + ["get-port", "npm:7.1.0"],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"],\ + ["testcontainers", "npm:11.3.1"]\ + ],\ + "linkType": "SOFT"\ + }]\ + ]],\ ["@aws-crypto/crc32", [\ ["npm:5.2.0", {\ "packageLocation": "../.yarn/berry/cache/@aws-crypto-crc32-npm-5.2.0-a834040f6d-10.zip/node_modules/@aws-crypto/crc32/",\ @@ -3055,6 +3808,16 @@ const RAW_RUNTIME_STATE = ["picocolors", "npm:1.1.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.29.0", {\ + "packageLocation": "../.yarn/berry/cache/@babel-code-frame-npm-7.29.0-6c4947d913-10.zip/node_modules/@babel/code-frame/",\ + "packageDependencies": [\ + ["@babel/code-frame", "npm:7.29.0"],\ + ["@babel/helper-validator-identifier", "npm:7.28.5"],\ + ["js-tokens", "npm:4.0.0"],\ + ["picocolors", "npm:1.1.1"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/compat-data", [\ @@ -3064,6 +3827,13 @@ const RAW_RUNTIME_STATE = ["@babel/compat-data", "npm:7.25.4"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.29.0", {\ + "packageLocation": "../.yarn/berry/cache/@babel-compat-data-npm-7.29.0-6b4382e79f-10.zip/node_modules/@babel/compat-data/",\ + "packageDependencies": [\ + ["@babel/compat-data", "npm:7.29.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/core", [\ @@ -3088,6 +3858,28 @@ const RAW_RUNTIME_STATE = ["semver", "npm:6.3.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.29.0", {\ + "packageLocation": "../.yarn/berry/cache/@babel-core-npm-7.29.0-a74bfc561b-10.zip/node_modules/@babel/core/",\ + "packageDependencies": [\ + ["@babel/core", "npm:7.29.0"],\ + ["@babel/code-frame", "npm:7.29.0"],\ + ["@babel/generator", "npm:7.29.0"],\ + ["@babel/helper-compilation-targets", "npm:7.28.6"],\ + ["@babel/helper-module-transforms", "virtual:a74bfc561b28f961f46b2ec8ae406d012b5fbed31a317cc6e0c8e0e4bc61a668944b271114f1150bc3cadae9a39987a6be16fb9362801892abacc23919c76dd7#npm:7.28.6"],\ + ["@babel/helpers", "npm:7.28.6"],\ + ["@babel/parser", "npm:7.29.0"],\ + ["@babel/template", "npm:7.28.6"],\ + ["@babel/traverse", "npm:7.29.0"],\ + ["@babel/types", "npm:7.29.0"],\ + ["@jridgewell/remapping", "npm:2.3.5"],\ + ["convert-source-map", "npm:2.0.0"],\ + ["debug", "virtual:1b9e2a314c35921e1b14ca2d2c7664f165a5c0f3f02ca1e30357c6546941724b55e5624ce0d5b4790874f2259ae08ae26d9f95d2cdbb84aae50aa451a2a572cd#npm:4.3.7"],\ + ["gensync", "npm:1.0.0-beta.2"],\ + ["json5", "npm:2.2.3"],\ + ["semver", "npm:6.3.1"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/generator", [\ @@ -3113,6 +3905,28 @@ const RAW_RUNTIME_STATE = ["jsesc", "npm:3.1.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.29.0", {\ + "packageLocation": "../.yarn/berry/cache/@babel-generator-npm-7.29.0-6438dcc50d-10.zip/node_modules/@babel/generator/",\ + "packageDependencies": [\ + ["@babel/generator", "npm:7.29.0"],\ + ["@babel/parser", "npm:7.29.0"],\ + ["@babel/types", "npm:7.29.0"],\ + ["@jridgewell/gen-mapping", "npm:0.3.13"],\ + ["@jridgewell/trace-mapping", "npm:0.3.31"],\ + ["jsesc", "npm:3.1.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@babel/helper-annotate-as-pure", [\ + ["npm:7.27.3", {\ + "packageLocation": "../.yarn/berry/cache/@babel-helper-annotate-as-pure-npm-7.27.3-d8daa5b949-10.zip/node_modules/@babel/helper-annotate-as-pure/",\ + "packageDependencies": [\ + ["@babel/helper-annotate-as-pure", "npm:7.27.3"],\ + ["@babel/types", "npm:7.29.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/helper-compilation-targets", [\ @@ -3127,6 +3941,67 @@ const RAW_RUNTIME_STATE = ["semver", "npm:6.3.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.28.6", {\ + "packageLocation": "../.yarn/berry/cache/@babel-helper-compilation-targets-npm-7.28.6-8880f389c9-10.zip/node_modules/@babel/helper-compilation-targets/",\ + "packageDependencies": [\ + ["@babel/helper-compilation-targets", "npm:7.28.6"],\ + ["@babel/compat-data", "npm:7.29.0"],\ + ["@babel/helper-validator-option", "npm:7.27.1"],\ + ["browserslist", "npm:4.24.4"],\ + ["lru-cache", "npm:5.1.1"],\ + ["semver", "npm:6.3.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@babel/helper-create-class-features-plugin", [\ + ["npm:7.28.6", {\ + "packageLocation": "../.yarn/berry/cache/@babel-helper-create-class-features-plugin-npm-7.28.6-6b870abc40-10.zip/node_modules/@babel/helper-create-class-features-plugin/",\ + "packageDependencies": [\ + ["@babel/helper-create-class-features-plugin", "npm:7.28.6"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:70f8e572d000f34ebb18ce7f11e07b14e8d8541975e669eedf34f205ecf21fd95f390df327cd6832557f67399886eb08fd23481526829d1daec9986f963fb2f3#npm:7.28.6", {\ + "packageLocation": "./.yarn/__virtual__/@babel-helper-create-class-features-plugin-virtual-98069cd992/2/.yarn/berry/cache/@babel-helper-create-class-features-plugin-npm-7.28.6-6b870abc40-10.zip/node_modules/@babel/helper-create-class-features-plugin/",\ + "packageDependencies": [\ + ["@babel/helper-create-class-features-plugin", "virtual:70f8e572d000f34ebb18ce7f11e07b14e8d8541975e669eedf34f205ecf21fd95f390df327cd6832557f67399886eb08fd23481526829d1daec9986f963fb2f3#npm:7.28.6"],\ + ["@babel/core", "npm:7.29.0"],\ + ["@babel/helper-annotate-as-pure", "npm:7.27.3"],\ + ["@babel/helper-member-expression-to-functions", "npm:7.28.5"],\ + ["@babel/helper-optimise-call-expression", "npm:7.27.1"],\ + ["@babel/helper-replace-supers", "virtual:98069cd9920e0704ec3d71903cc028e40678def6d2a1055a1ded6f3f719660b8c8cbe30c3803d20c67a59312996cb44b03e12fa3dac749ba45b0ddc9663ebea3#npm:7.28.6"],\ + ["@babel/helper-skip-transparent-expression-wrappers", "npm:7.27.1"],\ + ["@babel/traverse", "npm:7.29.0"],\ + ["@types/babel__core", null],\ + ["semver", "npm:6.3.1"]\ + ],\ + "packagePeers": [\ + "@babel/core",\ + "@types/babel__core"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@babel/helper-globals", [\ + ["npm:7.28.0", {\ + "packageLocation": "../.yarn/berry/cache/@babel-helper-globals-npm-7.28.0-8d79c12faf-10.zip/node_modules/@babel/helper-globals/",\ + "packageDependencies": [\ + ["@babel/helper-globals", "npm:7.28.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@babel/helper-member-expression-to-functions", [\ + ["npm:7.28.5", {\ + "packageLocation": "../.yarn/berry/cache/@babel-helper-member-expression-to-functions-npm-7.28.5-2fb0be8c55-10.zip/node_modules/@babel/helper-member-expression-to-functions/",\ + "packageDependencies": [\ + ["@babel/helper-member-expression-to-functions", "npm:7.28.5"],\ + ["@babel/traverse", "npm:7.29.0"],\ + ["@babel/types", "npm:7.29.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/helper-module-imports", [\ @@ -3138,6 +4013,15 @@ const RAW_RUNTIME_STATE = ["@babel/types", "npm:7.25.6"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.28.6", {\ + "packageLocation": "../.yarn/berry/cache/@babel-helper-module-imports-npm-7.28.6-5b95b9145c-10.zip/node_modules/@babel/helper-module-imports/",\ + "packageDependencies": [\ + ["@babel/helper-module-imports", "npm:7.28.6"],\ + ["@babel/traverse", "npm:7.29.0"],\ + ["@babel/types", "npm:7.29.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/helper-module-transforms", [\ @@ -3148,6 +4032,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ + ["npm:7.28.6", {\ + "packageLocation": "../.yarn/berry/cache/@babel-helper-module-transforms-npm-7.28.6-5923cf5a95-10.zip/node_modules/@babel/helper-module-transforms/",\ + "packageDependencies": [\ + ["@babel/helper-module-transforms", "npm:7.28.6"]\ + ],\ + "linkType": "SOFT"\ + }],\ ["virtual:341930f80996f4b1e479f0ee33257969b2165bf70992bcc76aa889af20d1c39a2bfc637461175a3ea65d6c75949d04c5fd87140f3b91c8912352de080c45e357#npm:7.25.2", {\ "packageLocation": "./.yarn/__virtual__/@babel-helper-module-transforms-virtual-b14538d1e7/2/.yarn/berry/cache/@babel-helper-module-transforms-npm-7.25.2-2c8d511580-10.zip/node_modules/@babel/helper-module-transforms/",\ "packageDependencies": [\ @@ -3164,6 +4055,32 @@ const RAW_RUNTIME_STATE = "@types/babel__core"\ ],\ "linkType": "HARD"\ + }],\ + ["virtual:a74bfc561b28f961f46b2ec8ae406d012b5fbed31a317cc6e0c8e0e4bc61a668944b271114f1150bc3cadae9a39987a6be16fb9362801892abacc23919c76dd7#npm:7.28.6", {\ + "packageLocation": "./.yarn/__virtual__/@babel-helper-module-transforms-virtual-3435e223f6/2/.yarn/berry/cache/@babel-helper-module-transforms-npm-7.28.6-5923cf5a95-10.zip/node_modules/@babel/helper-module-transforms/",\ + "packageDependencies": [\ + ["@babel/helper-module-transforms", "virtual:a74bfc561b28f961f46b2ec8ae406d012b5fbed31a317cc6e0c8e0e4bc61a668944b271114f1150bc3cadae9a39987a6be16fb9362801892abacc23919c76dd7#npm:7.28.6"],\ + ["@babel/core", "npm:7.29.0"],\ + ["@babel/helper-module-imports", "npm:7.28.6"],\ + ["@babel/helper-validator-identifier", "npm:7.28.5"],\ + ["@babel/traverse", "npm:7.29.0"],\ + ["@types/babel__core", null]\ + ],\ + "packagePeers": [\ + "@babel/core",\ + "@types/babel__core"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@babel/helper-optimise-call-expression", [\ + ["npm:7.27.1", {\ + "packageLocation": "../.yarn/berry/cache/@babel-helper-optimise-call-expression-npm-7.27.1-84d2c8f7d3-10.zip/node_modules/@babel/helper-optimise-call-expression/",\ + "packageDependencies": [\ + ["@babel/helper-optimise-call-expression", "npm:7.27.1"],\ + ["@babel/types", "npm:7.29.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/helper-plugin-utils", [\ @@ -3173,6 +4090,38 @@ const RAW_RUNTIME_STATE = ["@babel/helper-plugin-utils", "npm:7.26.5"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.28.6", {\ + "packageLocation": "../.yarn/berry/cache/@babel-helper-plugin-utils-npm-7.28.6-766c984cfe-10.zip/node_modules/@babel/helper-plugin-utils/",\ + "packageDependencies": [\ + ["@babel/helper-plugin-utils", "npm:7.28.6"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@babel/helper-replace-supers", [\ + ["npm:7.28.6", {\ + "packageLocation": "../.yarn/berry/cache/@babel-helper-replace-supers-npm-7.28.6-f11a32993b-10.zip/node_modules/@babel/helper-replace-supers/",\ + "packageDependencies": [\ + ["@babel/helper-replace-supers", "npm:7.28.6"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:98069cd9920e0704ec3d71903cc028e40678def6d2a1055a1ded6f3f719660b8c8cbe30c3803d20c67a59312996cb44b03e12fa3dac749ba45b0ddc9663ebea3#npm:7.28.6", {\ + "packageLocation": "./.yarn/__virtual__/@babel-helper-replace-supers-virtual-a3babc2b93/2/.yarn/berry/cache/@babel-helper-replace-supers-npm-7.28.6-f11a32993b-10.zip/node_modules/@babel/helper-replace-supers/",\ + "packageDependencies": [\ + ["@babel/helper-replace-supers", "virtual:98069cd9920e0704ec3d71903cc028e40678def6d2a1055a1ded6f3f719660b8c8cbe30c3803d20c67a59312996cb44b03e12fa3dac749ba45b0ddc9663ebea3#npm:7.28.6"],\ + ["@babel/core", "npm:7.29.0"],\ + ["@babel/helper-member-expression-to-functions", "npm:7.28.5"],\ + ["@babel/helper-optimise-call-expression", "npm:7.27.1"],\ + ["@babel/traverse", "npm:7.29.0"],\ + ["@types/babel__core", null]\ + ],\ + "packagePeers": [\ + "@babel/core",\ + "@types/babel__core"\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/helper-simple-access", [\ @@ -3186,6 +4135,17 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["@babel/helper-skip-transparent-expression-wrappers", [\ + ["npm:7.27.1", {\ + "packageLocation": "../.yarn/berry/cache/@babel-helper-skip-transparent-expression-wrappers-npm-7.27.1-c539e02d36-10.zip/node_modules/@babel/helper-skip-transparent-expression-wrappers/",\ + "packageDependencies": [\ + ["@babel/helper-skip-transparent-expression-wrappers", "npm:7.27.1"],\ + ["@babel/traverse", "npm:7.29.0"],\ + ["@babel/types", "npm:7.29.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["@babel/helper-string-parser", [\ ["npm:7.24.8", {\ "packageLocation": "../.yarn/berry/cache/@babel-helper-string-parser-npm-7.24.8-133b2e71e1-10.zip/node_modules/@babel/helper-string-parser/",\ @@ -3200,6 +4160,13 @@ const RAW_RUNTIME_STATE = ["@babel/helper-string-parser", "npm:7.25.9"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.27.1", {\ + "packageLocation": "../.yarn/berry/cache/@babel-helper-string-parser-npm-7.27.1-d1471e0598-10.zip/node_modules/@babel/helper-string-parser/",\ + "packageDependencies": [\ + ["@babel/helper-string-parser", "npm:7.27.1"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/helper-validator-identifier", [\ @@ -3216,6 +4183,13 @@ const RAW_RUNTIME_STATE = ["@babel/helper-validator-identifier", "npm:7.25.9"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.28.5", {\ + "packageLocation": "../.yarn/berry/cache/@babel-helper-validator-identifier-npm-7.28.5-1953d49d2b-10.zip/node_modules/@babel/helper-validator-identifier/",\ + "packageDependencies": [\ + ["@babel/helper-validator-identifier", "npm:7.28.5"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/helper-validator-option", [\ @@ -3225,6 +4199,13 @@ const RAW_RUNTIME_STATE = ["@babel/helper-validator-option", "npm:7.24.8"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.27.1", {\ + "packageLocation": "../.yarn/berry/cache/@babel-helper-validator-option-npm-7.27.1-7c563f0423-10.zip/node_modules/@babel/helper-validator-option/",\ + "packageDependencies": [\ + ["@babel/helper-validator-option", "npm:7.27.1"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/helpers", [\ @@ -3236,6 +4217,15 @@ const RAW_RUNTIME_STATE = ["@babel/types", "npm:7.25.6"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.28.6", {\ + "packageLocation": "../.yarn/berry/cache/@babel-helpers-npm-7.28.6-682df48628-10.zip/node_modules/@babel/helpers/",\ + "packageDependencies": [\ + ["@babel/helpers", "npm:7.28.6"],\ + ["@babel/template", "npm:7.28.6"],\ + ["@babel/types", "npm:7.29.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/highlight", [\ @@ -3267,6 +4257,38 @@ const RAW_RUNTIME_STATE = ["@babel/types", "npm:7.27.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.29.0", {\ + "packageLocation": "../.yarn/berry/cache/@babel-parser-npm-7.29.0-c605c63e8b-10.zip/node_modules/@babel/parser/",\ + "packageDependencies": [\ + ["@babel/parser", "npm:7.29.0"],\ + ["@babel/types", "npm:7.29.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@babel/plugin-proposal-private-methods", [\ + ["npm:7.18.6", {\ + "packageLocation": "../.yarn/berry/cache/@babel-plugin-proposal-private-methods-npm-7.18.6-55729207b7-10.zip/node_modules/@babel/plugin-proposal-private-methods/",\ + "packageDependencies": [\ + ["@babel/plugin-proposal-private-methods", "npm:7.18.6"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:f92407d75612b8966eb60fcfabd165b021daf4b552e5c170e145f30e99600b2bf297dcf406d1d7031de0e5ac5927743fc82a162569380344453bce0e9b56640b#npm:7.18.6", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-proposal-private-methods-virtual-70f8e572d0/2/.yarn/berry/cache/@babel-plugin-proposal-private-methods-npm-7.18.6-55729207b7-10.zip/node_modules/@babel/plugin-proposal-private-methods/",\ + "packageDependencies": [\ + ["@babel/plugin-proposal-private-methods", "virtual:f92407d75612b8966eb60fcfabd165b021daf4b552e5c170e145f30e99600b2bf297dcf406d1d7031de0e5ac5927743fc82a162569380344453bce0e9b56640b#npm:7.18.6"],\ + ["@babel/core", "npm:7.29.0"],\ + ["@babel/helper-create-class-features-plugin", "virtual:70f8e572d000f34ebb18ce7f11e07b14e8d8541975e669eedf34f205ecf21fd95f390df327cd6832557f67399886eb08fd23481526829d1daec9986f963fb2f3#npm:7.28.6"],\ + ["@babel/helper-plugin-utils", "npm:7.28.6"],\ + ["@types/babel__core", null]\ + ],\ + "packagePeers": [\ + "@babel/core",\ + "@types/babel__core"\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/plugin-syntax-import-assertions", [\ @@ -3312,6 +4334,16 @@ const RAW_RUNTIME_STATE = ["@babel/types", "npm:7.27.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.28.6", {\ + "packageLocation": "../.yarn/berry/cache/@babel-template-npm-7.28.6-bff3bc3923-10.zip/node_modules/@babel/template/",\ + "packageDependencies": [\ + ["@babel/template", "npm:7.28.6"],\ + ["@babel/code-frame", "npm:7.29.0"],\ + ["@babel/parser", "npm:7.29.0"],\ + ["@babel/types", "npm:7.29.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/traverse", [\ @@ -3342,6 +4374,20 @@ const RAW_RUNTIME_STATE = ["globals", "npm:11.12.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.29.0", {\ + "packageLocation": "../.yarn/berry/cache/@babel-traverse-npm-7.29.0-85d5d916b6-10.zip/node_modules/@babel/traverse/",\ + "packageDependencies": [\ + ["@babel/traverse", "npm:7.29.0"],\ + ["@babel/code-frame", "npm:7.29.0"],\ + ["@babel/generator", "npm:7.29.0"],\ + ["@babel/helper-globals", "npm:7.28.0"],\ + ["@babel/parser", "npm:7.29.0"],\ + ["@babel/template", "npm:7.28.6"],\ + ["@babel/types", "npm:7.29.0"],\ + ["debug", "virtual:1b9e2a314c35921e1b14ca2d2c7664f165a5c0f3f02ca1e30357c6546941724b55e5624ce0d5b4790874f2259ae08ae26d9f95d2cdbb84aae50aa451a2a572cd#npm:4.3.7"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/types", [\ @@ -3363,6 +4409,15 @@ const RAW_RUNTIME_STATE = ["@babel/helper-validator-identifier", "npm:7.25.9"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.29.0", {\ + "packageLocation": "../.yarn/berry/cache/@babel-types-npm-7.29.0-6c2fa77581-10.zip/node_modules/@babel/types/",\ + "packageDependencies": [\ + ["@babel/types", "npm:7.29.0"],\ + ["@babel/helper-string-parser", "npm:7.27.1"],\ + ["@babel/helper-validator-identifier", "npm:7.28.5"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@balena/dockerignore", [\ @@ -3374,6 +4429,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["@borewit/text-codec", [\ + ["npm:0.2.1", {\ + "packageLocation": "../.yarn/berry/cache/@borewit-text-codec-npm-0.2.1-d8c2610020-10.zip/node_modules/@borewit/text-codec/",\ + "packageDependencies": [\ + ["@borewit/text-codec", "npm:0.2.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["@bufbuild/buf", [\ ["npm:1.50.1", {\ "packageLocation": "./.yarn/unplugged/@bufbuild-buf-npm-1.50.1-80614084b3/node_modules/@bufbuild/buf/",\ @@ -3471,16 +4535,16 @@ const RAW_RUNTIME_STATE = ]],\ ["@bufbuild/protoc-gen-es", [\ ["npm:1.10.0", {\ - "packageLocation": "./.yarn/unplugged/@bufbuild-protoc-gen-es-virtual-8ee78d2b14/node_modules/@bufbuild/protoc-gen-es/",\ + "packageLocation": "./.yarn/unplugged/@bufbuild-protoc-gen-es-virtual-d026a2eb23/node_modules/@bufbuild/protoc-gen-es/",\ "packageDependencies": [\ ["@bufbuild/protoc-gen-es", "npm:1.10.0"]\ ],\ "linkType": "SOFT"\ }],\ - ["virtual:be21700ab3771a142a1db148d9e9c53b6ebca30fbafb171cd1acfcc39fa26d0f6cd37b6c281e2673f3fc49cf851c5c81b43ac09d5003e28d5d8a6ae394fd87cd#npm:1.10.0", {\ - "packageLocation": "./.yarn/unplugged/@bufbuild-protoc-gen-es-virtual-8ee78d2b14/node_modules/@bufbuild/protoc-gen-es/",\ + ["virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:1.10.0", {\ + "packageLocation": "./.yarn/unplugged/@bufbuild-protoc-gen-es-virtual-d026a2eb23/node_modules/@bufbuild/protoc-gen-es/",\ "packageDependencies": [\ - ["@bufbuild/protoc-gen-es", "virtual:be21700ab3771a142a1db148d9e9c53b6ebca30fbafb171cd1acfcc39fa26d0f6cd37b6c281e2673f3fc49cf851c5c81b43ac09d5003e28d5d8a6ae394fd87cd#npm:1.10.0"],\ + ["@bufbuild/protoc-gen-es", "virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:1.10.0"],\ ["@bufbuild/protobuf", "npm:1.10.0"],\ ["@bufbuild/protoplugin", "npm:1.10.0"],\ ["@types/bufbuild__protobuf", null]\ @@ -3512,10 +4576,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:dcad5415cbb2626d969f7991ee44a5a8463938f177ba023ae9ff4d86be05249e706bd90a09e5aa8bc0a52fc8a8314cd26a58f89d61edc5fcd4939c0069ae623a#npm:1.6.1", {\ - "packageLocation": "./.yarn/__virtual__/@connectrpc-connect-virtual-b6e7b1c285/2/.yarn/berry/cache/@connectrpc-connect-npm-1.6.1-d31c4e5a29-10.zip/node_modules/@connectrpc/connect/",\ + ["virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1", {\ + "packageLocation": "./.yarn/__virtual__/@connectrpc-connect-virtual-fbaf6f7f0e/2/.yarn/berry/cache/@connectrpc-connect-npm-1.6.1-d31c4e5a29-10.zip/node_modules/@connectrpc/connect/",\ "packageDependencies": [\ - ["@connectrpc/connect", "virtual:dcad5415cbb2626d969f7991ee44a5a8463938f177ba023ae9ff4d86be05249e706bd90a09e5aa8bc0a52fc8a8314cd26a58f89d61edc5fcd4939c0069ae623a#npm:1.6.1"],\ + ["@connectrpc/connect", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ ["@bufbuild/protobuf", "npm:1.10.0"],\ ["@types/bufbuild__protobuf", null]\ ],\ @@ -3534,12 +4598,12 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:dcad5415cbb2626d969f7991ee44a5a8463938f177ba023ae9ff4d86be05249e706bd90a09e5aa8bc0a52fc8a8314cd26a58f89d61edc5fcd4939c0069ae623a#npm:1.6.1", {\ - "packageLocation": "./.yarn/__virtual__/@connectrpc-connect-node-virtual-7692978f2b/2/.yarn/berry/cache/@connectrpc-connect-node-npm-1.6.1-c3083f9671-10.zip/node_modules/@connectrpc/connect-node/",\ + ["virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1", {\ + "packageLocation": "./.yarn/__virtual__/@connectrpc-connect-node-virtual-1978c8e30e/2/.yarn/berry/cache/@connectrpc-connect-node-npm-1.6.1-c3083f9671-10.zip/node_modules/@connectrpc/connect-node/",\ "packageDependencies": [\ - ["@connectrpc/connect-node", "virtual:dcad5415cbb2626d969f7991ee44a5a8463938f177ba023ae9ff4d86be05249e706bd90a09e5aa8bc0a52fc8a8314cd26a58f89d61edc5fcd4939c0069ae623a#npm:1.6.1"],\ + ["@connectrpc/connect-node", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ ["@bufbuild/protobuf", "npm:1.10.0"],\ - ["@connectrpc/connect", "virtual:dcad5415cbb2626d969f7991ee44a5a8463938f177ba023ae9ff4d86be05249e706bd90a09e5aa8bc0a52fc8a8314cd26a58f89d61edc5fcd4939c0069ae623a#npm:1.6.1"],\ + ["@connectrpc/connect", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ ["@types/bufbuild__protobuf", null],\ ["@types/connectrpc__connect", null],\ ["undici", "npm:5.28.5"]\ @@ -3555,18 +4619,18 @@ const RAW_RUNTIME_STATE = ]],\ ["@connectrpc/protoc-gen-connect-es", [\ ["npm:1.6.1", {\ - "packageLocation": "./.yarn/unplugged/@connectrpc-protoc-gen-connect-es-virtual-22c18db9cd/node_modules/@connectrpc/protoc-gen-connect-es/",\ + "packageLocation": "./.yarn/unplugged/@connectrpc-protoc-gen-connect-es-virtual-1c43238f58/node_modules/@connectrpc/protoc-gen-connect-es/",\ "packageDependencies": [\ ["@connectrpc/protoc-gen-connect-es", "npm:1.6.1"]\ ],\ "linkType": "SOFT"\ }],\ - ["virtual:be21700ab3771a142a1db148d9e9c53b6ebca30fbafb171cd1acfcc39fa26d0f6cd37b6c281e2673f3fc49cf851c5c81b43ac09d5003e28d5d8a6ae394fd87cd#npm:1.6.1", {\ - "packageLocation": "./.yarn/unplugged/@connectrpc-protoc-gen-connect-es-virtual-22c18db9cd/node_modules/@connectrpc/protoc-gen-connect-es/",\ + ["virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:1.6.1", {\ + "packageLocation": "./.yarn/unplugged/@connectrpc-protoc-gen-connect-es-virtual-1c43238f58/node_modules/@connectrpc/protoc-gen-connect-es/",\ "packageDependencies": [\ - ["@connectrpc/protoc-gen-connect-es", "virtual:be21700ab3771a142a1db148d9e9c53b6ebca30fbafb171cd1acfcc39fa26d0f6cd37b6c281e2673f3fc49cf851c5c81b43ac09d5003e28d5d8a6ae394fd87cd#npm:1.6.1"],\ + ["@connectrpc/protoc-gen-connect-es", "virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:1.6.1"],\ ["@bufbuild/protobuf", "npm:1.10.0"],\ - ["@bufbuild/protoc-gen-es", "virtual:be21700ab3771a142a1db148d9e9c53b6ebca30fbafb171cd1acfcc39fa26d0f6cd37b6c281e2673f3fc49cf851c5c81b43ac09d5003e28d5d8a6ae394fd87cd#npm:1.10.0"],\ + ["@bufbuild/protoc-gen-es", "virtual:3cdf0789ad9f2e55f96a6df90e85decb764d2864b742120f46a478a8a92579cf9763121ee1c445670b5645c5f10cfd9953ef4a6fc1e85812c3b3be102bdce9e8#npm:1.10.0"],\ ["@bufbuild/protoplugin", "npm:1.10.0"],\ ["@connectrpc/connect", null],\ ["@types/bufbuild__protoc-gen-es", null],\ @@ -3606,12 +4670,19 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:4f16fa84a28b152d58b6d9462c39d6dacc441e843c0cce6ea1bd4879b10c5270eac61c50d6e25a53c15318dea029c137c579fd6bb0fa4e8325947215699e9b31#npm:4.4.1", {\ - "packageLocation": "./.yarn/__virtual__/@eslint-community-eslint-utils-virtual-16e185c32c/2/.yarn/berry/cache/@eslint-community-eslint-utils-npm-4.4.1-c83a271e90-10.zip/node_modules/@eslint-community/eslint-utils/",\ + ["npm:4.9.1", {\ + "packageLocation": "../.yarn/berry/cache/@eslint-community-eslint-utils-npm-4.9.1-30ad3d49de-10.zip/node_modules/@eslint-community/eslint-utils/",\ + "packageDependencies": [\ + ["@eslint-community/eslint-utils", "npm:4.9.1"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:6cd15e0da0d83124c4ab99d5c2fd004c61d269a3cf92f8a621ded582e9a8bdfba3fa4e568184722e5889d69cf5a82489a7d591ebc4f1d8dff2335e49fe035cfd#npm:4.4.0", {\ + "packageLocation": "./.yarn/__virtual__/@eslint-community-eslint-utils-virtual-ae935f52f6/2/.yarn/berry/cache/@eslint-community-eslint-utils-npm-4.4.0-d1791bd5a3-10.zip/node_modules/@eslint-community/eslint-utils/",\ "packageDependencies": [\ - ["@eslint-community/eslint-utils", "virtual:4f16fa84a28b152d58b6d9462c39d6dacc441e843c0cce6ea1bd4879b10c5270eac61c50d6e25a53c15318dea029c137c579fd6bb0fa4e8325947215699e9b31#npm:4.4.1"],\ + ["@eslint-community/eslint-utils", "virtual:6cd15e0da0d83124c4ab99d5c2fd004c61d269a3cf92f8a621ded582e9a8bdfba3fa4e568184722e5889d69cf5a82489a7d591ebc4f1d8dff2335e49fe035cfd#npm:4.4.0"],\ ["@types/eslint", null],\ - ["eslint", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:9.17.0"],\ + ["eslint", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:9.22.0"],\ ["eslint-visitor-keys", "npm:3.4.3"]\ ],\ "packagePeers": [\ @@ -3620,12 +4691,12 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:9b35022e5955750007de6c79b9d3d32b8c43ff54b3634f45014e3d799848565ba98f7775ebc85a4d288a9c9169e235d7623f2552633b94a895acc94eb4f2781a#npm:4.4.0", {\ - "packageLocation": "./.yarn/__virtual__/@eslint-community-eslint-utils-virtual-58cc0a0131/2/.yarn/berry/cache/@eslint-community-eslint-utils-npm-4.4.0-d1791bd5a3-10.zip/node_modules/@eslint-community/eslint-utils/",\ + ["virtual:a3f9f1dbeaceb5bde9e03416cdce496264d7f95c3a8d87a8fb11b8aebd8243993d8c4e303068adabaff7fa7b9067b7bb65f22795909712212e0f4fdec2df31da#npm:4.4.0", {\ + "packageLocation": "./.yarn/__virtual__/@eslint-community-eslint-utils-virtual-7417d00584/2/.yarn/berry/cache/@eslint-community-eslint-utils-npm-4.4.0-d1791bd5a3-10.zip/node_modules/@eslint-community/eslint-utils/",\ "packageDependencies": [\ - ["@eslint-community/eslint-utils", "virtual:9b35022e5955750007de6c79b9d3d32b8c43ff54b3634f45014e3d799848565ba98f7775ebc85a4d288a9c9169e235d7623f2552633b94a895acc94eb4f2781a#npm:4.4.0"],\ + ["@eslint-community/eslint-utils", "virtual:a3f9f1dbeaceb5bde9e03416cdce496264d7f95c3a8d87a8fb11b8aebd8243993d8c4e303068adabaff7fa7b9067b7bb65f22795909712212e0f4fdec2df31da#npm:4.4.0"],\ ["@types/eslint", null],\ - ["eslint", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:9.17.0"],\ + ["eslint", "virtual:1c19a7e3a2811aced06f080c99e5ea3818f86cf7ce96a27ec07d603da973e8893d8b73ec2bc94a9c112a3a5a373a93c210cd287d6320bed288e3c1d952025e27#npm:9.17.0"],\ ["eslint-visitor-keys", "npm:3.4.3"]\ ],\ "packagePeers": [\ @@ -3634,12 +4705,26 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:a2f2f2e0d0ddb2150d3c3218f62b7a851fc7621b5b0c526550c3a2588284072e99762c7f8c8eab0ef534b4d83860bd3e68b355186dd785ec92acd11f24490308#npm:4.4.0", {\ - "packageLocation": "./.yarn/__virtual__/@eslint-community-eslint-utils-virtual-5153fc4776/2/.yarn/berry/cache/@eslint-community-eslint-utils-npm-4.4.0-d1791bd5a3-10.zip/node_modules/@eslint-community/eslint-utils/",\ + ["virtual:a5f4f6c17ff20a4ad973d63a15f09f1395a67972e95f8889bfc4d0596cf00c49f2f8fdb73099b1293fc366d89f5d354705040fc659e069bf733d05a57042aa4b#npm:4.9.1", {\ + "packageLocation": "./.yarn/__virtual__/@eslint-community-eslint-utils-virtual-bda208e2da/2/.yarn/berry/cache/@eslint-community-eslint-utils-npm-4.9.1-30ad3d49de-10.zip/node_modules/@eslint-community/eslint-utils/",\ "packageDependencies": [\ - ["@eslint-community/eslint-utils", "virtual:a2f2f2e0d0ddb2150d3c3218f62b7a851fc7621b5b0c526550c3a2588284072e99762c7f8c8eab0ef534b4d83860bd3e68b355186dd785ec92acd11f24490308#npm:4.4.0"],\ + ["@eslint-community/eslint-utils", "virtual:a5f4f6c17ff20a4ad973d63a15f09f1395a67972e95f8889bfc4d0596cf00c49f2f8fdb73099b1293fc366d89f5d354705040fc659e069bf733d05a57042aa4b#npm:4.9.1"],\ ["@types/eslint", null],\ - ["eslint", "virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:9.22.0"],\ + ["eslint", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:9.22.0"],\ + ["eslint-visitor-keys", "npm:3.4.3"]\ + ],\ + "packagePeers": [\ + "@types/eslint",\ + "eslint"\ + ],\ + "linkType": "HARD"\ + }],\ + ["virtual:f4adb7cd352fca4015bc8469173cfccd9320070638c819da41870c424f569fb1a257f59f73dc8ec964eabfd61b027cea036472b4956596489cf0a33728dd9490#npm:4.4.1", {\ + "packageLocation": "./.yarn/__virtual__/@eslint-community-eslint-utils-virtual-39d94f05f5/2/.yarn/berry/cache/@eslint-community-eslint-utils-npm-4.4.1-c83a271e90-10.zip/node_modules/@eslint-community/eslint-utils/",\ + "packageDependencies": [\ + ["@eslint-community/eslint-utils", "virtual:f4adb7cd352fca4015bc8469173cfccd9320070638c819da41870c424f569fb1a257f59f73dc8ec964eabfd61b027cea036472b4956596489cf0a33728dd9490#npm:4.4.1"],\ + ["@types/eslint", null],\ + ["eslint", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:9.22.0"],\ ["eslint-visitor-keys", "npm:3.4.3"]\ ],\ "packagePeers": [\ @@ -3813,10 +4898,20 @@ const RAW_RUNTIME_STATE = ["npm:3.6.0", {\ "packageLocation": "../.yarn/berry/cache/@fastify-ajv-compiler-npm-3.6.0-7829894d28-10.zip/node_modules/@fastify/ajv-compiler/",\ "packageDependencies": [\ - ["@fastify/ajv-compiler", "npm:3.6.0"],\ + ["@fastify/ajv-compiler", "npm:3.6.0"],\ + ["ajv", "npm:8.17.1"],\ + ["ajv-formats", "virtual:6f0a75e2e24507b64e23679df5b98c6b0a9e9a8621a95c9f8c1ae8bd406eb857104f4065344af3a2d6d0a9ff549b8adbd3d15f60ef166628999040bd862e7a27#npm:2.1.1"],\ + ["fast-uri", "npm:2.4.0"]\ + ],\ + "linkType": "HARD"\ + }],\ + ["npm:4.0.5", {\ + "packageLocation": "../.yarn/berry/cache/@fastify-ajv-compiler-npm-4.0.5-42f2ffad24-10.zip/node_modules/@fastify/ajv-compiler/",\ + "packageDependencies": [\ + ["@fastify/ajv-compiler", "npm:4.0.5"],\ ["ajv", "npm:8.17.1"],\ - ["ajv-formats", "virtual:6f0a75e2e24507b64e23679df5b98c6b0a9e9a8621a95c9f8c1ae8bd406eb857104f4065344af3a2d6d0a9ff549b8adbd3d15f60ef166628999040bd862e7a27#npm:2.1.1"],\ - ["fast-uri", "npm:2.4.0"]\ + ["ajv-formats", "virtual:42f2ffad249aa2355efc66861bbe173c02c83bb6ca1ed15de3d473bfddb2fb9d5da37115688b1cb010c633a945fbceedfea5b67e789b18c12fd1a0349e4ede12#npm:3.0.1"],\ + ["fast-uri", "npm:3.1.0"]\ ],\ "linkType": "HARD"\ }]\ @@ -3831,6 +4926,15 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@fastify/cors", [\ + ["npm:11.0.1", {\ + "packageLocation": "../.yarn/berry/cache/@fastify-cors-npm-11.0.1-7864c06ac2-10.zip/node_modules/@fastify/cors/",\ + "packageDependencies": [\ + ["@fastify/cors", "npm:11.0.1"],\ + ["fastify-plugin", "npm:5.0.1"],\ + ["toad-cache", "npm:3.7.0"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:9.0.1", {\ "packageLocation": "../.yarn/berry/cache/@fastify-cors-npm-9.0.1-738ce8930b-10.zip/node_modules/@fastify/cors/",\ "packageDependencies": [\ @@ -3848,6 +4952,13 @@ const RAW_RUNTIME_STATE = ["@fastify/error", "npm:3.4.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:4.2.0", {\ + "packageLocation": "../.yarn/berry/cache/@fastify-error-npm-4.2.0-19f121030d-10.zip/node_modules/@fastify/error/",\ + "packageDependencies": [\ + ["@fastify/error", "npm:4.2.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@fastify/fast-json-stringify-compiler", [\ @@ -3858,6 +4969,14 @@ const RAW_RUNTIME_STATE = ["fast-json-stringify", "npm:5.16.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:5.0.3", {\ + "packageLocation": "../.yarn/berry/cache/@fastify-fast-json-stringify-compiler-npm-5.0.3-d907498007-10.zip/node_modules/@fastify/fast-json-stringify-compiler/",\ + "packageDependencies": [\ + ["@fastify/fast-json-stringify-compiler", "npm:5.0.3"],\ + ["fast-json-stringify", "npm:6.2.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@fastify/formbody", [\ @@ -3869,6 +4988,24 @@ const RAW_RUNTIME_STATE = ["fastify-plugin", "npm:4.5.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:8.0.2", {\ + "packageLocation": "../.yarn/berry/cache/@fastify-formbody-npm-8.0.2-2563b488ef-10.zip/node_modules/@fastify/formbody/",\ + "packageDependencies": [\ + ["@fastify/formbody", "npm:8.0.2"],\ + ["fast-querystring", "npm:1.1.2"],\ + ["fastify-plugin", "npm:5.0.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@fastify/forwarded", [\ + ["npm:3.0.1", {\ + "packageLocation": "../.yarn/berry/cache/@fastify-forwarded-npm-3.0.1-03d48a4e5e-10.zip/node_modules/@fastify/forwarded/",\ + "packageDependencies": [\ + ["@fastify/forwarded", "npm:3.0.1"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@fastify/merge-json-schemas", [\ @@ -3879,6 +5016,14 @@ const RAW_RUNTIME_STATE = ["fast-deep-equal", "npm:3.1.3"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:0.2.1", {\ + "packageLocation": "../.yarn/berry/cache/@fastify-merge-json-schemas-npm-0.2.1-fcd73c7c26-10.zip/node_modules/@fastify/merge-json-schemas/",\ + "packageDependencies": [\ + ["@fastify/merge-json-schemas", "npm:0.2.1"],\ + ["dequal", "npm:2.0.3"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@fastify/middie", [\ @@ -3892,6 +5037,28 @@ const RAW_RUNTIME_STATE = ["reusify", "npm:1.0.4"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:9.0.3", {\ + "packageLocation": "../.yarn/berry/cache/@fastify-middie-npm-9.0.3-1591edb4c9-10.zip/node_modules/@fastify/middie/",\ + "packageDependencies": [\ + ["@fastify/middie", "npm:9.0.3"],\ + ["@fastify/error", "npm:4.2.0"],\ + ["fastify-plugin", "npm:5.0.1"],\ + ["path-to-regexp", "npm:8.3.0"],\ + ["reusify", "npm:1.0.4"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@fastify/proxy-addr", [\ + ["npm:5.1.0", {\ + "packageLocation": "../.yarn/berry/cache/@fastify-proxy-addr-npm-5.1.0-2a4ff88c94-10.zip/node_modules/@fastify/proxy-addr/",\ + "packageDependencies": [\ + ["@fastify/proxy-addr", "npm:5.1.0"],\ + ["@fastify/forwarded", "npm:3.0.1"],\ + ["ipaddr.js", "npm:2.3.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@fastify/send", [\ @@ -4248,8 +5415,8 @@ const RAW_RUNTIME_STATE = ["@atls/nestjs-validation", "virtual:93633bffa80d03a91d6c936f30d44ca8f97bc175a6ca57269833d5aa32511a5b0cb55900ece6504ea3137f7f14109bf6bab98c0fae7fa87cefcde0de02244488#npm:0.0.1"],\ ["@atls/rpc-query-payloads", "virtual:6fa46be8be044f799e939d57236013f3e0001e785df531ce0d2e0456616c766de755c3020ebeeb580faa6acb735f630be9424463c14c45581273807571e49cb6#npm:0.0.1"],\ ["@bufbuild/protobuf", "npm:1.10.0"],\ - ["@connectrpc/connect", "virtual:dcad5415cbb2626d969f7991ee44a5a8463938f177ba023ae9ff4d86be05249e706bd90a09e5aa8bc0a52fc8a8314cd26a58f89d61edc5fcd4939c0069ae623a#npm:1.6.1"],\ - ["@connectrpc/connect-node", "virtual:dcad5415cbb2626d969f7991ee44a5a8463938f177ba023ae9ff4d86be05249e706bd90a09e5aa8bc0a52fc8a8314cd26a58f89d61edc5fcd4939c0069ae623a#npm:1.6.1"],\ + ["@connectrpc/connect", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ + ["@connectrpc/connect-node", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ ["@faker-js/faker", "npm:9.6.0"],\ ["@files-engine/application-module", "virtual:a712d76c03dedd5fb4cad0b8dbebc7bc808245b17ef48e30c5219b3188964ad8606ec3296d56cd7812264aed0486ec151128b463d489dcdc3d42bcbaefb4877e#workspace:files/service/application-module"],\ ["@files-engine/domain-module", "virtual:a712d76c03dedd5fb4cad0b8dbebc7bc808245b17ef48e30c5219b3188964ad8606ec3296d56cd7812264aed0486ec151128b463d489dcdc3d42bcbaefb4877e#workspace:files/service/domain-module"],\ @@ -4348,8 +5515,8 @@ const RAW_RUNTIME_STATE = ["@atls/nestjs-validation", "virtual:6fa46be8be044f799e939d57236013f3e0001e785df531ce0d2e0456616c766de755c3020ebeeb580faa6acb735f630be9424463c14c45581273807571e49cb6#npm:0.0.1"],\ ["@atls/rpc-query-payloads", "virtual:6fa46be8be044f799e939d57236013f3e0001e785df531ce0d2e0456616c766de755c3020ebeeb580faa6acb735f630be9424463c14c45581273807571e49cb6#npm:0.0.1"],\ ["@bufbuild/protobuf", "npm:1.10.0"],\ - ["@connectrpc/connect", "virtual:dcad5415cbb2626d969f7991ee44a5a8463938f177ba023ae9ff4d86be05249e706bd90a09e5aa8bc0a52fc8a8314cd26a58f89d61edc5fcd4939c0069ae623a#npm:1.6.1"],\ - ["@connectrpc/connect-node", "virtual:dcad5415cbb2626d969f7991ee44a5a8463938f177ba023ae9ff4d86be05249e706bd90a09e5aa8bc0a52fc8a8314cd26a58f89d61edc5fcd4939c0069ae623a#npm:1.6.1"],\ + ["@connectrpc/connect", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ + ["@connectrpc/connect-node", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ ["@faker-js/faker", "npm:9.6.0"],\ ["@files-engine/application-module", "virtual:6fa46be8be044f799e939d57236013f3e0001e785df531ce0d2e0456616c766de755c3020ebeeb580faa6acb735f630be9424463c14c45581273807571e49cb6#workspace:files/service/application-module"],\ ["@files-engine/domain-module", "virtual:6fa46be8be044f799e939d57236013f3e0001e785df531ce0d2e0456616c766de755c3020ebeeb580faa6acb735f630be9424463c14c45581273807571e49cb6#workspace:files/service/domain-module"],\ @@ -4431,8 +5598,8 @@ const RAW_RUNTIME_STATE = ["@atls/nestjs-microservices-registry", "virtual:a712d76c03dedd5fb4cad0b8dbebc7bc808245b17ef48e30c5219b3188964ad8606ec3296d56cd7812264aed0486ec151128b463d489dcdc3d42bcbaefb4877e#npm:0.0.1"],\ ["@atls/protobuf-rpc", "virtual:85c5c4e95e23f2f3c5ea9d794f9606e7fcf829d1a23403c6b8c1915991c40099a9861ee3f3011c6a72a1310d4e08df10df95fa1943e3c0beee4aba9caff13c4b#npm:0.0.6"],\ ["@bufbuild/protobuf", "npm:1.10.0"],\ - ["@connectrpc/connect", "virtual:dcad5415cbb2626d969f7991ee44a5a8463938f177ba023ae9ff4d86be05249e706bd90a09e5aa8bc0a52fc8a8314cd26a58f89d61edc5fcd4939c0069ae623a#npm:1.6.1"],\ - ["@connectrpc/connect-node", "virtual:dcad5415cbb2626d969f7991ee44a5a8463938f177ba023ae9ff4d86be05249e706bd90a09e5aa8bc0a52fc8a8314cd26a58f89d61edc5fcd4939c0069ae623a#npm:1.6.1"],\ + ["@connectrpc/connect", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ + ["@connectrpc/connect-node", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:1.6.1"],\ ["@faker-js/faker", "npm:9.6.0"],\ ["@files-engine/application-module", "virtual:a712d76c03dedd5fb4cad0b8dbebc7bc808245b17ef48e30c5219b3188964ad8606ec3296d56cd7812264aed0486ec151128b463d489dcdc3d42bcbaefb4877e#workspace:files/service/application-module"],\ ["@files-engine/domain-module", "virtual:a712d76c03dedd5fb4cad0b8dbebc7bc808245b17ef48e30c5219b3188964ad8606ec3296d56cd7812264aed0486ec151128b463d489dcdc3d42bcbaefb4877e#workspace:files/service/domain-module"],\ @@ -6844,6 +8011,19 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ + ["virtual:0f9db7bd601586dad2ebd776ac078e3cc949b2aee23931e986b335f3cc06bcdda1c428fa3741976ce6eee03264a144989fea8aafd40d11e6f781c8e4ac5c05a0#npm:3.2.0", {\ + "packageLocation": "./.yarn/__virtual__/@graphql-typed-document-node-core-virtual-b49cf6b739/2/.yarn/berry/cache/@graphql-typed-document-node-core-npm-3.2.0-505adb1e90-10.zip/node_modules/@graphql-typed-document-node/core/",\ + "packageDependencies": [\ + ["@graphql-typed-document-node/core", "virtual:0f9db7bd601586dad2ebd776ac078e3cc949b2aee23931e986b335f3cc06bcdda1c428fa3741976ce6eee03264a144989fea8aafd40d11e6f781c8e4ac5c05a0#npm:3.2.0"],\ + ["@types/graphql", null],\ + ["graphql", "npm:16.11.0"]\ + ],\ + "packagePeers": [\ + "@types/graphql",\ + "graphql"\ + ],\ + "linkType": "HARD"\ + }],\ ["virtual:5be29a96370a17a62ff3b7d121c4e226667ea626e05054e129f0d4cd90f5bc4f9c470f389f59762095aca4c3cb0391e7f729ef97ad03f89a9db0e2bf68610891#npm:3.2.0", {\ "packageLocation": "./.yarn/__virtual__/@graphql-typed-document-node-core-virtual-b55c352ba5/2/.yarn/berry/cache/@graphql-typed-document-node-core-npm-3.2.0-505adb1e90-10.zip/node_modules/@graphql-typed-document-node/core/",\ "packageDependencies": [\ @@ -6924,6 +8104,15 @@ const RAW_RUNTIME_STATE = ["@js-sdsl/ordered-map", "npm:4.4.2"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:1.14.3", {\ + "packageLocation": "../.yarn/berry/cache/@grpc-grpc-js-npm-1.14.3-4316f67c48-10.zip/node_modules/@grpc/grpc-js/",\ + "packageDependencies": [\ + ["@grpc/grpc-js", "npm:1.14.3"],\ + ["@grpc/proto-loader", "npm:0.8.0"],\ + ["@js-sdsl/ordered-map", "npm:4.4.2"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@grpc/proto-loader", [\ @@ -6949,6 +8138,17 @@ const RAW_RUNTIME_STATE = ["yargs", "npm:17.7.2"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:0.8.0", {\ + "packageLocation": "../.yarn/berry/cache/@grpc-proto-loader-npm-0.8.0-b53ddeb647-10.zip/node_modules/@grpc/proto-loader/",\ + "packageDependencies": [\ + ["@grpc/proto-loader", "npm:0.8.0"],\ + ["lodash.camelcase", "npm:4.3.0"],\ + ["long", "npm:5.3.1"],\ + ["protobufjs", "npm:7.5.4"],\ + ["yargs", "npm:17.7.2"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@humanfs/core", [\ @@ -7078,6 +8278,15 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@jridgewell/gen-mapping", [\ + ["npm:0.3.13", {\ + "packageLocation": "../.yarn/berry/cache/@jridgewell-gen-mapping-npm-0.3.13-9bd96ac800-10.zip/node_modules/@jridgewell/gen-mapping/",\ + "packageDependencies": [\ + ["@jridgewell/gen-mapping", "npm:0.3.13"],\ + ["@jridgewell/sourcemap-codec", "npm:1.5.5"],\ + ["@jridgewell/trace-mapping", "npm:0.3.25"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:0.3.5", {\ "packageLocation": "../.yarn/berry/cache/@jridgewell-gen-mapping-npm-0.3.5-d8b85ebeaf-10.zip/node_modules/@jridgewell/gen-mapping/",\ "packageDependencies": [\ @@ -7089,6 +8298,17 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["@jridgewell/remapping", [\ + ["npm:2.3.5", {\ + "packageLocation": "../.yarn/berry/cache/@jridgewell-remapping-npm-2.3.5-df8dacc063-10.zip/node_modules/@jridgewell/remapping/",\ + "packageDependencies": [\ + ["@jridgewell/remapping", "npm:2.3.5"],\ + ["@jridgewell/gen-mapping", "npm:0.3.5"],\ + ["@jridgewell/trace-mapping", "npm:0.3.25"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["@jridgewell/resolve-uri", [\ ["npm:3.1.2", {\ "packageLocation": "../.yarn/berry/cache/@jridgewell-resolve-uri-npm-3.1.2-5bc4245992-10.zip/node_modules/@jridgewell/resolve-uri/",\ @@ -7125,6 +8345,13 @@ const RAW_RUNTIME_STATE = ["@jridgewell/sourcemap-codec", "npm:1.5.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:1.5.5", {\ + "packageLocation": "../.yarn/berry/cache/@jridgewell-sourcemap-codec-npm-1.5.5-5189d9fc79-10.zip/node_modules/@jridgewell/sourcemap-codec/",\ + "packageDependencies": [\ + ["@jridgewell/sourcemap-codec", "npm:1.5.5"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@jridgewell/trace-mapping", [\ @@ -7137,6 +8364,15 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ + ["npm:0.3.31", {\ + "packageLocation": "../.yarn/berry/cache/@jridgewell-trace-mapping-npm-0.3.31-1ae81d75ac-10.zip/node_modules/@jridgewell/trace-mapping/",\ + "packageDependencies": [\ + ["@jridgewell/trace-mapping", "npm:0.3.31"],\ + ["@jridgewell/resolve-uri", "npm:3.1.2"],\ + ["@jridgewell/sourcemap-codec", "npm:1.5.0"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:0.3.9", {\ "packageLocation": "../.yarn/berry/cache/@jridgewell-trace-mapping-npm-0.3.9-91625cd7fb-10.zip/node_modules/@jridgewell/trace-mapping/",\ "packageDependencies": [\ @@ -8608,6 +9844,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ + ["npm:11.1.5", {\ + "packageLocation": "../.yarn/berry/cache/@nestjs-common-npm-11.1.5-652841777f-10.zip/node_modules/@nestjs/common/",\ + "packageDependencies": [\ + ["@nestjs/common", "npm:11.1.5"]\ + ],\ + "linkType": "SOFT"\ + }],\ ["virtual:85c5c4e95e23f2f3c5ea9d794f9606e7fcf829d1a23403c6b8c1915991c40099a9861ee3f3011c6a72a1310d4e08df10df95fa1943e3c0beee4aba9caff13c4b#npm:10.4.15", {\ "packageLocation": "./.yarn/__virtual__/@nestjs-common-virtual-c980a58f96/2/.yarn/berry/cache/@nestjs-common-npm-10.4.15-6477955573-10.zip/node_modules/@nestjs/common/",\ "packageDependencies": [\ @@ -8636,6 +9879,66 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ + ["virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#npm:11.1.5", {\ + "packageLocation": "./.yarn/__virtual__/@nestjs-common-virtual-96b552fd26/2/.yarn/berry/cache/@nestjs-common-npm-11.1.5-652841777f-10.zip/node_modules/@nestjs/common/",\ + "packageDependencies": [\ + ["@nestjs/common", "virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#npm:11.1.5"],\ + ["@types/class-transformer", null],\ + ["@types/class-validator", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["class-transformer", null],\ + ["class-validator", null],\ + ["file-type", "npm:21.0.0"],\ + ["iterare", "npm:1.2.1"],\ + ["load-esm", "npm:1.0.2"],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"],\ + ["tslib", "npm:2.8.1"],\ + ["uid", "npm:2.0.2"]\ + ],\ + "packagePeers": [\ + "@types/class-transformer",\ + "@types/class-validator",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "class-transformer",\ + "class-validator",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "HARD"\ + }],\ + ["virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5", {\ + "packageLocation": "./.yarn/__virtual__/@nestjs-common-virtual-0ecaa92f34/2/.yarn/berry/cache/@nestjs-common-npm-11.1.5-652841777f-10.zip/node_modules/@nestjs/common/",\ + "packageDependencies": [\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@types/class-transformer", null],\ + ["@types/class-validator", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["class-transformer", "npm:0.5.1"],\ + ["class-validator", "npm:0.14.1"],\ + ["file-type", "npm:21.0.0"],\ + ["iterare", "npm:1.2.1"],\ + ["load-esm", "npm:1.0.2"],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"],\ + ["tslib", "npm:2.8.1"],\ + ["uid", "npm:2.0.2"]\ + ],\ + "packagePeers": [\ + "@types/class-transformer",\ + "@types/class-validator",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "class-transformer",\ + "class-validator",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "HARD"\ + }],\ ["virtual:eb172786ac9a7ea7b4f5e5e184c606498a68d0f9162c5db3ef6fd4804af1528cc0a0a23f36db44aaeb09fc7558b0b016dc7dfc1bf3167287d244a40a377e4b21#npm:10.4.15", {\ "packageLocation": "./.yarn/__virtual__/@nestjs-common-virtual-cea1c92b25/2/.yarn/berry/cache/@nestjs-common-npm-10.4.15-6477955573-10.zip/node_modules/@nestjs/common/",\ "packageDependencies": [\ @@ -8665,6 +9968,35 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["@nestjs/config", [\ + ["npm:4.0.2", {\ + "packageLocation": "../.yarn/berry/cache/@nestjs-config-npm-4.0.2-89b6fa8e1c-10.zip/node_modules/@nestjs/config/",\ + "packageDependencies": [\ + ["@nestjs/config", "npm:4.0.2"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:4.0.2", {\ + "packageLocation": "./.yarn/__virtual__/@nestjs-config-virtual-bbb4c8cd0e/2/.yarn/berry/cache/@nestjs-config-npm-4.0.2-89b6fa8e1c-10.zip/node_modules/@nestjs/config/",\ + "packageDependencies": [\ + ["@nestjs/config", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:4.0.2"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@types/nestjs__common", null],\ + ["@types/rxjs", null],\ + ["dotenv", "npm:16.4.7"],\ + ["dotenv-expand", "npm:12.0.1"],\ + ["lodash", "npm:4.17.21"],\ + ["rxjs", "npm:7.8.2"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@types/nestjs__common",\ + "@types/rxjs",\ + "rxjs"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["@nestjs/core", [\ ["npm:10.4.15", {\ "packageLocation": "./.yarn/unplugged/@nestjs-core-virtual-bdb3344792/node_modules/@nestjs/core/",\ @@ -8673,6 +10005,52 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ + ["npm:11.1.5", {\ + "packageLocation": "./.yarn/unplugged/@nestjs-core-virtual-24cce34e18/node_modules/@nestjs/core/",\ + "packageDependencies": [\ + ["@nestjs/core", "npm:11.1.5"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5", {\ + "packageLocation": "./.yarn/unplugged/@nestjs-core-virtual-24cce34e18/node_modules/@nestjs/core/",\ + "packageDependencies": [\ + ["@nestjs/core", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/microservices", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@nestjs/platform-express", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@nestjs/websockets", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@nuxt/opencollective", "npm:0.4.1"],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__microservices", null],\ + ["@types/nestjs__platform-express", null],\ + ["@types/nestjs__websockets", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["fast-safe-stringify", "npm:2.1.1"],\ + ["iterare", "npm:1.2.1"],\ + ["path-to-regexp", "npm:8.2.0"],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"],\ + ["tslib", "npm:2.8.1"],\ + ["uid", "npm:2.0.2"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/microservices",\ + "@nestjs/platform-express",\ + "@nestjs/websockets",\ + "@types/nestjs__common",\ + "@types/nestjs__microservices",\ + "@types/nestjs__platform-express",\ + "@types/nestjs__websockets",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "HARD"\ + }],\ ["virtual:62f71d9b36373d8f4fff4b659e985beeb5a09d82f29e390428f8c72bedae91daededcc404f999056066d3a9905f1099ead5399f6379c7c0c5d7a0a62acce0b2d#npm:10.4.15", {\ "packageLocation": "./.yarn/unplugged/@nestjs-core-virtual-bdb3344792/node_modules/@nestjs/core/",\ "packageDependencies": [\ @@ -8789,6 +10167,43 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ + ["virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#npm:11.1.5", {\ + "packageLocation": "./.yarn/unplugged/@nestjs-core-virtual-840d8e69b8/node_modules/@nestjs/core/",\ + "packageDependencies": [\ + ["@nestjs/core", "virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#npm:11.1.5"],\ + ["@nestjs/common", "virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#npm:11.1.5"],\ + ["@nestjs/microservices", null],\ + ["@nestjs/platform-express", "virtual:840d8e69b8855429643c13a076f51e3254208fda852431339e924128daaa61f10ca6e15fecf065c93c1dc5bc2bc27fcf6b242c6e28f6579ba982215fa31b48b3#npm:11.0.11"],\ + ["@nestjs/websockets", "virtual:840d8e69b8855429643c13a076f51e3254208fda852431339e924128daaa61f10ca6e15fecf065c93c1dc5bc2bc27fcf6b242c6e28f6579ba982215fa31b48b3#npm:11.0.11"],\ + ["@nuxt/opencollective", "npm:0.4.1"],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__microservices", null],\ + ["@types/nestjs__platform-express", null],\ + ["@types/nestjs__websockets", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["fast-safe-stringify", "npm:2.1.1"],\ + ["iterare", "npm:1.2.1"],\ + ["path-to-regexp", "npm:8.2.0"],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"],\ + ["tslib", "npm:2.8.1"],\ + ["uid", "npm:2.0.2"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/microservices",\ + "@types/nestjs__common",\ + "@types/nestjs__microservices",\ + "@types/nestjs__platform-express",\ + "@types/nestjs__websockets",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "HARD"\ + }],\ ["virtual:a712d76c03dedd5fb4cad0b8dbebc7bc808245b17ef48e30c5219b3188964ad8606ec3296d56cd7812264aed0486ec151128b463d489dcdc3d42bcbaefb4877e#npm:10.4.15", {\ "packageLocation": "./.yarn/unplugged/@nestjs-core-virtual-25fae02be2/node_modules/@nestjs/core/",\ "packageDependencies": [\ @@ -8806,17 +10221,54 @@ const RAW_RUNTIME_STATE = ["@types/rxjs", null],\ ["fast-safe-stringify", "npm:2.1.1"],\ ["iterare", "npm:1.2.1"],\ - ["path-to-regexp", "npm:3.3.0"],\ + ["path-to-regexp", "npm:3.3.0"],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.1"],\ + ["tslib", "npm:2.8.1"],\ + ["uid", "npm:2.0.2"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/microservices",\ + "@nestjs/platform-express",\ + "@nestjs/websockets",\ + "@types/nestjs__common",\ + "@types/nestjs__microservices",\ + "@types/nestjs__platform-express",\ + "@types/nestjs__websockets",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "HARD"\ + }],\ + ["virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5", {\ + "packageLocation": "./.yarn/unplugged/@nestjs-core-virtual-91d4f9b386/node_modules/@nestjs/core/",\ + "packageDependencies": [\ + ["@nestjs/core", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/microservices", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/platform-express", "virtual:91d4f9b386b8677502905650e87d24f7fb31f151aabd3b8b6aaf4710928bbc816b745f5d521aaeb34cae69ccf883200d30ed21bcfa1cf0120c869fd69a42742b#npm:11.0.11"],\ + ["@nestjs/websockets", "virtual:91d4f9b386b8677502905650e87d24f7fb31f151aabd3b8b6aaf4710928bbc816b745f5d521aaeb34cae69ccf883200d30ed21bcfa1cf0120c869fd69a42742b#npm:11.0.11"],\ + ["@nuxt/opencollective", "npm:0.4.1"],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__microservices", null],\ + ["@types/nestjs__platform-express", null],\ + ["@types/nestjs__websockets", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["fast-safe-stringify", "npm:2.1.1"],\ + ["iterare", "npm:1.2.1"],\ + ["path-to-regexp", "npm:8.2.0"],\ ["reflect-metadata", "npm:0.2.2"],\ - ["rxjs", "npm:7.8.1"],\ + ["rxjs", "npm:7.8.2"],\ ["tslib", "npm:2.8.1"],\ ["uid", "npm:2.0.2"]\ ],\ "packagePeers": [\ "@nestjs/common",\ "@nestjs/microservices",\ - "@nestjs/platform-express",\ - "@nestjs/websockets",\ "@types/nestjs__common",\ "@types/nestjs__microservices",\ "@types/nestjs__platform-express",\ @@ -8874,6 +10326,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ + ["npm:11.0.3", {\ + "packageLocation": "../.yarn/berry/cache/@nestjs-cqrs-npm-11.0.3-70cfead106-10.zip/node_modules/@nestjs/cqrs/",\ + "packageDependencies": [\ + ["@nestjs/cqrs", "npm:11.0.3"]\ + ],\ + "linkType": "SOFT"\ + }],\ ["virtual:21c4488ed3c477de20d537f6e6b297665cc8d5d9e61766df2c8cb9f1cbd658e6099b636e8aaa87ca94fbcccaa1a779cc926c2abc7d1bf5280a4f92f359d92405#npm:10.2.8", {\ "packageLocation": "./.yarn/__virtual__/@nestjs-cqrs-virtual-e3955a15e3/2/.yarn/berry/cache/@nestjs-cqrs-npm-10.2.8-38160fe930-10.zip/node_modules/@nestjs/cqrs/",\ "packageDependencies": [\ @@ -8900,6 +10359,31 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ + ["virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.0.3", {\ + "packageLocation": "./.yarn/__virtual__/@nestjs-cqrs-virtual-5cf3585559/2/.yarn/berry/cache/@nestjs-cqrs-npm-11.0.3-70cfead106-10.zip/node_modules/@nestjs/cqrs/",\ + "packageDependencies": [\ + ["@nestjs/cqrs", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.0.3"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/core", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/core",\ + "@types/nestjs__common",\ + "@types/nestjs__core",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "HARD"\ + }],\ ["virtual:6fa46be8be044f799e939d57236013f3e0001e785df531ce0d2e0456616c766de755c3020ebeeb580faa6acb735f630be9424463c14c45581273807571e49cb6#npm:10.2.8", {\ "packageLocation": "./.yarn/__virtual__/@nestjs-cqrs-virtual-e39a3b02a3/2/.yarn/berry/cache/@nestjs-cqrs-npm-10.2.8-38160fe930-10.zip/node_modules/@nestjs/cqrs/",\ "packageDependencies": [\ @@ -8952,6 +10436,31 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ + ["virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#npm:11.0.3", {\ + "packageLocation": "./.yarn/__virtual__/@nestjs-cqrs-virtual-46d82673f6/2/.yarn/berry/cache/@nestjs-cqrs-npm-11.0.3-70cfead106-10.zip/node_modules/@nestjs/cqrs/",\ + "packageDependencies": [\ + ["@nestjs/cqrs", "virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#npm:11.0.3"],\ + ["@nestjs/common", "virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#npm:11.1.5"],\ + ["@nestjs/core", "virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#npm:11.1.5"],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/core",\ + "@types/nestjs__common",\ + "@types/nestjs__core",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "HARD"\ + }],\ ["virtual:a712d76c03dedd5fb4cad0b8dbebc7bc808245b17ef48e30c5219b3188964ad8606ec3296d56cd7812264aed0486ec151128b463d489dcdc3d42bcbaefb4877e#npm:10.2.8", {\ "packageLocation": "./.yarn/__virtual__/@nestjs-cqrs-virtual-2bc97d5026/2/.yarn/berry/cache/@nestjs-cqrs-npm-10.2.8-38160fe930-10.zip/node_modules/@nestjs/cqrs/",\ "packageDependencies": [\ @@ -8977,6 +10486,31 @@ const RAW_RUNTIME_STATE = "rxjs"\ ],\ "linkType": "HARD"\ + }],\ + ["virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.0.3", {\ + "packageLocation": "./.yarn/__virtual__/@nestjs-cqrs-virtual-e112a26429/2/.yarn/berry/cache/@nestjs-cqrs-npm-11.0.3-70cfead106-10.zip/node_modules/@nestjs/cqrs/",\ + "packageDependencies": [\ + ["@nestjs/cqrs", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.0.3"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/core", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/core",\ + "@types/nestjs__common",\ + "@types/nestjs__core",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@nestjs/graphql", [\ @@ -9161,6 +10695,74 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ + ["npm:11.1.5", {\ + "packageLocation": "../.yarn/berry/cache/@nestjs-microservices-npm-11.1.5-59d0522754-10.zip/node_modules/@nestjs/microservices/",\ + "packageDependencies": [\ + ["@nestjs/microservices", "npm:11.1.5"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5", {\ + "packageLocation": "./.yarn/__virtual__/@nestjs-microservices-virtual-fdae4ef4e7/2/.yarn/berry/cache/@nestjs-microservices-npm-11.1.5-59d0522754-10.zip/node_modules/@nestjs/microservices/",\ + "packageDependencies": [\ + ["@nestjs/microservices", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@grpc/grpc-js", "npm:1.13.0"],\ + ["@grpc/proto-loader", "npm:0.7.13"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/core", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@nestjs/websockets", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@types/amqp-connection-manager", null],\ + ["@types/amqplib", "npm:0.10.7"],\ + ["@types/cache-manager", null],\ + ["@types/grpc__grpc-js", null],\ + ["@types/ioredis", null],\ + ["@types/kafkajs", null],\ + ["@types/mqtt", null],\ + ["@types/nats", null],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["@types/nestjs__websockets", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["amqp-connection-manager", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:4.1.14"],\ + ["amqplib", "npm:0.10.8"],\ + ["cache-manager", null],\ + ["ioredis", "npm:5.6.0"],\ + ["iterare", "npm:1.2.1"],\ + ["kafkajs", "npm:2.2.4"],\ + ["mqtt", null],\ + ["nats", null],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"],\ + ["tslib", "npm:2.8.1"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/core",\ + "@nestjs/websockets",\ + "@types/amqp-connection-manager",\ + "@types/amqplib",\ + "@types/cache-manager",\ + "@types/grpc__grpc-js",\ + "@types/ioredis",\ + "@types/kafkajs",\ + "@types/mqtt",\ + "@types/nats",\ + "@types/nestjs__common",\ + "@types/nestjs__core",\ + "@types/nestjs__websockets",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "amqp-connection-manager",\ + "amqplib",\ + "cache-manager",\ + "mqtt",\ + "nats",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "HARD"\ + }],\ ["virtual:62f71d9b36373d8f4fff4b659e985beeb5a09d82f29e390428f8c72bedae91daededcc404f999056066d3a9905f1099ead5399f6379c7c0c5d7a0a62acce0b2d#npm:10.4.15", {\ "packageLocation": "./.yarn/__virtual__/@nestjs-microservices-virtual-f2c5f97e4f/2/.yarn/berry/cache/@nestjs-microservices-npm-10.4.15-61ff583184-10.zip/node_modules/@nestjs/microservices/",\ "packageDependencies": [\ @@ -9183,7 +10785,7 @@ const RAW_RUNTIME_STATE = ["@types/nestjs__websockets", null],\ ["@types/reflect-metadata", null],\ ["@types/rxjs", null],\ - ["amqp-connection-manager", "virtual:b114b495358c4575317d9c8f61a493e9004e5365d54f4e57d0c9c2678dbc206afd041e778c9b630d6a011eeed11c3b7f619d979a9c6b5921ac799492fd59ab68#npm:4.1.14"],\ + ["amqp-connection-manager", "virtual:41e57a1684bfbfcc5cfacd83fe6113ecde2edac07997130832035d0c2d0ee785f3a4b2dad0734ce3b70c72f65d470bcf0a24da2aaf9fb2bc68bb41e38437fda7#npm:4.1.14"],\ ["amqplib", "npm:0.10.5"],\ ["cache-manager", null],\ ["ioredis", "npm:5.6.0"],\ @@ -9244,7 +10846,7 @@ const RAW_RUNTIME_STATE = ["@types/nestjs__websockets", null],\ ["@types/reflect-metadata", null],\ ["@types/rxjs", null],\ - ["amqp-connection-manager", "virtual:b114b495358c4575317d9c8f61a493e9004e5365d54f4e57d0c9c2678dbc206afd041e778c9b630d6a011eeed11c3b7f619d979a9c6b5921ac799492fd59ab68#npm:4.1.14"],\ + ["amqp-connection-manager", "virtual:41e57a1684bfbfcc5cfacd83fe6113ecde2edac07997130832035d0c2d0ee785f3a4b2dad0734ce3b70c72f65d470bcf0a24da2aaf9fb2bc68bb41e38437fda7#npm:4.1.14"],\ ["amqplib", "npm:0.10.5"],\ ["cache-manager", null],\ ["ioredis", "npm:5.6.0"],\ @@ -9401,6 +11003,64 @@ const RAW_RUNTIME_STATE = "rxjs"\ ],\ "linkType": "HARD"\ + }],\ + ["virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5", {\ + "packageLocation": "./.yarn/__virtual__/@nestjs-microservices-virtual-41e57a1684/2/.yarn/berry/cache/@nestjs-microservices-npm-11.1.5-59d0522754-10.zip/node_modules/@nestjs/microservices/",\ + "packageDependencies": [\ + ["@nestjs/microservices", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@grpc/grpc-js", "npm:1.13.0"],\ + ["@grpc/proto-loader", "npm:0.7.13"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/core", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/websockets", "virtual:91d4f9b386b8677502905650e87d24f7fb31f151aabd3b8b6aaf4710928bbc816b745f5d521aaeb34cae69ccf883200d30ed21bcfa1cf0120c869fd69a42742b#npm:11.0.11"],\ + ["@types/amqp-connection-manager", null],\ + ["@types/amqplib", null],\ + ["@types/cache-manager", null],\ + ["@types/grpc__grpc-js", null],\ + ["@types/ioredis", null],\ + ["@types/kafkajs", null],\ + ["@types/mqtt", null],\ + ["@types/nats", null],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["@types/nestjs__websockets", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["amqp-connection-manager", "virtual:41e57a1684bfbfcc5cfacd83fe6113ecde2edac07997130832035d0c2d0ee785f3a4b2dad0734ce3b70c72f65d470bcf0a24da2aaf9fb2bc68bb41e38437fda7#npm:4.1.14"],\ + ["amqplib", "npm:0.10.5"],\ + ["cache-manager", null],\ + ["ioredis", "npm:5.6.0"],\ + ["iterare", "npm:1.2.1"],\ + ["kafkajs", "npm:2.2.4"],\ + ["mqtt", null],\ + ["nats", null],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"],\ + ["tslib", "npm:2.8.1"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/core",\ + "@types/amqp-connection-manager",\ + "@types/amqplib",\ + "@types/cache-manager",\ + "@types/grpc__grpc-js",\ + "@types/ioredis",\ + "@types/kafkajs",\ + "@types/mqtt",\ + "@types/nats",\ + "@types/nestjs__common",\ + "@types/nestjs__core",\ + "@types/nestjs__websockets",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "cache-manager",\ + "mqtt",\ + "nats",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@nestjs/platform-express", [\ @@ -9418,6 +11078,35 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ + ["npm:11.1.5", {\ + "packageLocation": "../.yarn/berry/cache/@nestjs-platform-express-npm-11.1.5-0d5efd24e4-10.zip/node_modules/@nestjs/platform-express/",\ + "packageDependencies": [\ + ["@nestjs/platform-express", "npm:11.1.5"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5", {\ + "packageLocation": "./.yarn/__virtual__/@nestjs-platform-express-virtual-3e0cb97312/2/.yarn/berry/cache/@nestjs-platform-express-npm-11.1.5-0d5efd24e4-10.zip/node_modules/@nestjs/platform-express/",\ + "packageDependencies": [\ + ["@nestjs/platform-express", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/core", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["cors", "npm:2.8.5"],\ + ["express", "npm:5.1.0"],\ + ["multer", "npm:2.0.2"],\ + ["path-to-regexp", "npm:8.2.0"],\ + ["tslib", "npm:2.8.1"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/core",\ + "@types/nestjs__common",\ + "@types/nestjs__core"\ + ],\ + "linkType": "HARD"\ + }],\ ["virtual:6005114e1da9feae4c2d34d366730753ca59a58b0f66ad83aba166a760b256131b99cf825cbbbc369b2c16136b44176d0f6b2692dc196fdc07691c96eb206270#npm:11.0.11", {\ "packageLocation": "./.yarn/__virtual__/@nestjs-platform-express-virtual-0dc3a1f147/2/.yarn/berry/cache/@nestjs-platform-express-npm-11.0.11-4268f30c35-10.zip/node_modules/@nestjs/platform-express/",\ "packageDependencies": [\ @@ -9484,6 +11173,28 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ + ["virtual:840d8e69b8855429643c13a076f51e3254208fda852431339e924128daaa61f10ca6e15fecf065c93c1dc5bc2bc27fcf6b242c6e28f6579ba982215fa31b48b3#npm:11.0.11", {\ + "packageLocation": "./.yarn/__virtual__/@nestjs-platform-express-virtual-83d5d3b7b9/2/.yarn/berry/cache/@nestjs-platform-express-npm-11.0.11-4268f30c35-10.zip/node_modules/@nestjs/platform-express/",\ + "packageDependencies": [\ + ["@nestjs/platform-express", "virtual:840d8e69b8855429643c13a076f51e3254208fda852431339e924128daaa61f10ca6e15fecf065c93c1dc5bc2bc27fcf6b242c6e28f6579ba982215fa31b48b3#npm:11.0.11"],\ + ["@nestjs/common", "virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#npm:11.1.5"],\ + ["@nestjs/core", "virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#npm:11.1.5"],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["cors", "npm:2.8.5"],\ + ["express", "npm:5.0.1"],\ + ["multer", "npm:1.4.5-lts.1"],\ + ["path-to-regexp", "npm:8.2.0"],\ + ["tslib", "npm:2.8.1"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/core",\ + "@types/nestjs__common",\ + "@types/nestjs__core"\ + ],\ + "linkType": "HARD"\ + }],\ ["virtual:85c5c4e95e23f2f3c5ea9d794f9606e7fcf829d1a23403c6b8c1915991c40099a9861ee3f3011c6a72a1310d4e08df10df95fa1943e3c0beee4aba9caff13c4b#npm:10.4.15", {\ "packageLocation": "./.yarn/__virtual__/@nestjs-platform-express-virtual-681df683d0/2/.yarn/berry/cache/@nestjs-platform-express-npm-10.4.15-3f26c0c60c-10.zip/node_modules/@nestjs/platform-express/",\ "packageDependencies": [\ @@ -9506,6 +11217,28 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ + ["virtual:91d4f9b386b8677502905650e87d24f7fb31f151aabd3b8b6aaf4710928bbc816b745f5d521aaeb34cae69ccf883200d30ed21bcfa1cf0120c869fd69a42742b#npm:11.0.11", {\ + "packageLocation": "./.yarn/__virtual__/@nestjs-platform-express-virtual-5a959b64f7/2/.yarn/berry/cache/@nestjs-platform-express-npm-11.0.11-4268f30c35-10.zip/node_modules/@nestjs/platform-express/",\ + "packageDependencies": [\ + ["@nestjs/platform-express", "virtual:91d4f9b386b8677502905650e87d24f7fb31f151aabd3b8b6aaf4710928bbc816b745f5d521aaeb34cae69ccf883200d30ed21bcfa1cf0120c869fd69a42742b#npm:11.0.11"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/core", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["cors", "npm:2.8.5"],\ + ["express", "npm:5.0.1"],\ + ["multer", "npm:1.4.5-lts.1"],\ + ["path-to-regexp", "npm:8.2.0"],\ + ["tslib", "npm:2.8.1"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/core",\ + "@types/nestjs__common",\ + "@types/nestjs__core"\ + ],\ + "linkType": "HARD"\ + }],\ ["virtual:a712d76c03dedd5fb4cad0b8dbebc7bc808245b17ef48e30c5219b3188964ad8606ec3296d56cd7812264aed0486ec151128b463d489dcdc3d42bcbaefb4877e#npm:10.4.15", {\ "packageLocation": "./.yarn/__virtual__/@nestjs-platform-express-virtual-2e8403c3e8/2/.yarn/berry/cache/@nestjs-platform-express-npm-10.4.15-3f26c0c60c-10.zip/node_modules/@nestjs/platform-express/",\ "packageDependencies": [\ @@ -9514,28 +11247,66 @@ const RAW_RUNTIME_STATE = ["@nestjs/core", "virtual:a712d76c03dedd5fb4cad0b8dbebc7bc808245b17ef48e30c5219b3188964ad8606ec3296d56cd7812264aed0486ec151128b463d489dcdc3d42bcbaefb4877e#npm:10.4.15"],\ ["@types/nestjs__common", null],\ ["@types/nestjs__core", null],\ - ["body-parser", "npm:1.20.3"],\ - ["cors", "npm:2.8.5"],\ - ["express", "npm:4.21.2"],\ - ["multer", "npm:1.4.4-lts.1"],\ + ["body-parser", "npm:1.20.3"],\ + ["cors", "npm:2.8.5"],\ + ["express", "npm:4.21.2"],\ + ["multer", "npm:1.4.4-lts.1"],\ + ["tslib", "npm:2.8.1"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/core",\ + "@types/nestjs__common",\ + "@types/nestjs__core"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@nestjs/platform-fastify", [\ + ["npm:10.4.15", {\ + "packageLocation": "../.yarn/berry/cache/@nestjs-platform-fastify-npm-10.4.15-df732c5f7e-10.zip/node_modules/@nestjs/platform-fastify/",\ + "packageDependencies": [\ + ["@nestjs/platform-fastify", "npm:10.4.15"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["npm:11.1.5", {\ + "packageLocation": "../.yarn/berry/cache/@nestjs-platform-fastify-npm-11.1.5-1f2986140b-10.zip/node_modules/@nestjs/platform-fastify/",\ + "packageDependencies": [\ + ["@nestjs/platform-fastify", "npm:11.1.5"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5", {\ + "packageLocation": "./.yarn/__virtual__/@nestjs-platform-fastify-virtual-de39cad303/2/.yarn/berry/cache/@nestjs-platform-fastify-npm-11.1.5-1f2986140b-10.zip/node_modules/@nestjs/platform-fastify/",\ + "packageDependencies": [\ + ["@nestjs/platform-fastify", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@fastify/cors", "npm:11.0.1"],\ + ["@fastify/formbody", "npm:8.0.2"],\ + ["@fastify/middie", "npm:9.0.3"],\ + ["@fastify/static", "npm:8.1.1"],\ + ["@fastify/view", "npm:10.0.2"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/core", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@types/fastify__static", null],\ + ["@types/fastify__view", null],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["fast-querystring", "npm:1.1.2"],\ + ["fastify", "npm:5.4.0"],\ + ["light-my-request", "npm:6.6.0"],\ + ["path-to-regexp", "npm:8.2.0"],\ ["tslib", "npm:2.8.1"]\ ],\ "packagePeers": [\ "@nestjs/common",\ "@nestjs/core",\ + "@types/fastify__static",\ + "@types/fastify__view",\ "@types/nestjs__common",\ "@types/nestjs__core"\ ],\ "linkType": "HARD"\ - }]\ - ]],\ - ["@nestjs/platform-fastify", [\ - ["npm:10.4.15", {\ - "packageLocation": "../.yarn/berry/cache/@nestjs-platform-fastify-npm-10.4.15-df732c5f7e-10.zip/node_modules/@nestjs/platform-fastify/",\ - "packageDependencies": [\ - ["@nestjs/platform-fastify", "npm:10.4.15"]\ - ],\ - "linkType": "SOFT"\ }],\ ["virtual:85c5c4e95e23f2f3c5ea9d794f9606e7fcf829d1a23403c6b8c1915991c40099a9861ee3f3011c6a72a1310d4e08df10df95fa1943e3c0beee4aba9caff13c4b#npm:10.4.15", {\ "packageLocation": "./.yarn/__virtual__/@nestjs-platform-fastify-virtual-0111ad6190/2/.yarn/berry/cache/@nestjs-platform-fastify-npm-10.4.15-df732c5f7e-10.zip/node_modules/@nestjs/platform-fastify/",\ @@ -9659,6 +11430,29 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ + ["virtual:8109fda1c2e78058c8134a8e11761e1fc2f2c29736f733478d4807ecd16faaf460b9e1de22a4e52ea73478b796a883bc58f945e99186b01c72a62e7ce3ed59ec#npm:11.0.11", {\ + "packageLocation": "./.yarn/__virtual__/@nestjs-platform-socket.io-virtual-f49679aab4/2/.yarn/berry/cache/@nestjs-platform-socket.io-npm-11.0.11-226651f986-10.zip/node_modules/@nestjs/platform-socket.io/",\ + "packageDependencies": [\ + ["@nestjs/platform-socket.io", "virtual:8109fda1c2e78058c8134a8e11761e1fc2f2c29736f733478d4807ecd16faaf460b9e1de22a4e52ea73478b796a883bc58f945e99186b01c72a62e7ce3ed59ec#npm:11.0.11"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/websockets", "virtual:91d4f9b386b8677502905650e87d24f7fb31f151aabd3b8b6aaf4710928bbc816b745f5d521aaeb34cae69ccf883200d30ed21bcfa1cf0120c869fd69a42742b#npm:11.0.11"],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__websockets", null],\ + ["@types/rxjs", null],\ + ["rxjs", "npm:7.8.2"],\ + ["socket.io", "npm:4.8.1"],\ + ["tslib", "npm:2.8.1"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/websockets",\ + "@types/nestjs__common",\ + "@types/nestjs__websockets",\ + "@types/rxjs",\ + "rxjs"\ + ],\ + "linkType": "HARD"\ + }],\ ["virtual:882126ff41c69a5a05832e8a88cf471a310a20503a164a25b6a734c5b88592d28da5191cf10cb5d5a29d430f48c0d96793f7532c24f6e96a90db0e255a794016#npm:11.0.11", {\ "packageLocation": "./.yarn/__virtual__/@nestjs-platform-socket.io-virtual-f31783ce54/2/.yarn/berry/cache/@nestjs-platform-socket.io-npm-11.0.11-226651f986-10.zip/node_modules/@nestjs/platform-socket.io/",\ "packageDependencies": [\ @@ -9727,6 +11521,52 @@ const RAW_RUNTIME_STATE = "rxjs"\ ],\ "linkType": "HARD"\ + }],\ + ["virtual:caa0957eaa8ef3b1abcd6219c356cf373bdda7b75d9dd198513127bc7534d17cec15d40dcf658d0d04185a8ec0013aa39d45e6cc9d5f8587ca607390cc3e634f#npm:11.0.11", {\ + "packageLocation": "./.yarn/__virtual__/@nestjs-platform-socket.io-virtual-930bd026a5/2/.yarn/berry/cache/@nestjs-platform-socket.io-npm-11.0.11-226651f986-10.zip/node_modules/@nestjs/platform-socket.io/",\ + "packageDependencies": [\ + ["@nestjs/platform-socket.io", "virtual:caa0957eaa8ef3b1abcd6219c356cf373bdda7b75d9dd198513127bc7534d17cec15d40dcf658d0d04185a8ec0013aa39d45e6cc9d5f8587ca607390cc3e634f#npm:11.0.11"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/websockets", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__websockets", null],\ + ["@types/rxjs", null],\ + ["rxjs", "npm:7.8.2"],\ + ["socket.io", "npm:4.8.1"],\ + ["tslib", "npm:2.8.1"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/websockets",\ + "@types/nestjs__common",\ + "@types/nestjs__websockets",\ + "@types/rxjs",\ + "rxjs"\ + ],\ + "linkType": "HARD"\ + }],\ + ["virtual:f1cbae9f60d1d8340222b4d8f2ecba63ef7da077e599292022c08ac054436a92297592423ea9694624a0ac29b4a03880aa1f624d751e941559baf80430bc47dc#npm:11.0.11", {\ + "packageLocation": "./.yarn/__virtual__/@nestjs-platform-socket.io-virtual-ae5d9c0713/2/.yarn/berry/cache/@nestjs-platform-socket.io-npm-11.0.11-226651f986-10.zip/node_modules/@nestjs/platform-socket.io/",\ + "packageDependencies": [\ + ["@nestjs/platform-socket.io", "virtual:f1cbae9f60d1d8340222b4d8f2ecba63ef7da077e599292022c08ac054436a92297592423ea9694624a0ac29b4a03880aa1f624d751e941559baf80430bc47dc#npm:11.0.11"],\ + ["@nestjs/common", "virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#npm:11.1.5"],\ + ["@nestjs/websockets", "virtual:840d8e69b8855429643c13a076f51e3254208fda852431339e924128daaa61f10ca6e15fecf065c93c1dc5bc2bc27fcf6b242c6e28f6579ba982215fa31b48b3#npm:11.0.11"],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__websockets", null],\ + ["@types/rxjs", null],\ + ["rxjs", "npm:7.8.2"],\ + ["socket.io", "npm:4.8.1"],\ + ["tslib", "npm:2.8.1"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/websockets",\ + "@types/nestjs__common",\ + "@types/nestjs__websockets",\ + "@types/rxjs",\ + "rxjs"\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@nestjs/testing", [\ @@ -9737,6 +11577,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ + ["npm:11.1.5", {\ + "packageLocation": "../.yarn/berry/cache/@nestjs-testing-npm-11.1.5-51ed03ec8e-10.zip/node_modules/@nestjs/testing/",\ + "packageDependencies": [\ + ["@nestjs/testing", "npm:11.1.5"]\ + ],\ + "linkType": "SOFT"\ + }],\ ["virtual:21c4488ed3c477de20d537f6e6b297665cc8d5d9e61766df2c8cb9f1cbd658e6099b636e8aaa87ca94fbcccaa1a779cc926c2abc7d1bf5280a4f92f359d92405#npm:10.4.15", {\ "packageLocation": "./.yarn/__virtual__/@nestjs-testing-virtual-c845e9805f/2/.yarn/berry/cache/@nestjs-testing-npm-10.4.15-d591a1705a-10.zip/node_modules/@nestjs/testing/",\ "packageDependencies": [\ @@ -9763,6 +11610,32 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ + ["virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5", {\ + "packageLocation": "./.yarn/__virtual__/@nestjs-testing-virtual-d1bb26e843/2/.yarn/berry/cache/@nestjs-testing-npm-11.1.5-51ed03ec8e-10.zip/node_modules/@nestjs/testing/",\ + "packageDependencies": [\ + ["@nestjs/testing", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/core", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@nestjs/microservices", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@nestjs/platform-express", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["@types/nestjs__microservices", null],\ + ["@types/nestjs__platform-express", null],\ + ["tslib", "npm:2.8.1"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/core",\ + "@nestjs/microservices",\ + "@nestjs/platform-express",\ + "@types/nestjs__common",\ + "@types/nestjs__core",\ + "@types/nestjs__microservices",\ + "@types/nestjs__platform-express"\ + ],\ + "linkType": "HARD"\ + }],\ ["virtual:6fa46be8be044f799e939d57236013f3e0001e785df531ce0d2e0456616c766de755c3020ebeeb580faa6acb735f630be9424463c14c45581273807571e49cb6#npm:10.4.15", {\ "packageLocation": "./.yarn/__virtual__/@nestjs-testing-virtual-a998564609/2/.yarn/berry/cache/@nestjs-testing-npm-10.4.15-d591a1705a-10.zip/node_modules/@nestjs/testing/",\ "packageDependencies": [\ @@ -9909,6 +11782,44 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ + ["npm:11.1.5", {\ + "packageLocation": "../.yarn/berry/cache/@nestjs-websockets-npm-11.1.5-d0601de94d-10.zip/node_modules/@nestjs/websockets/",\ + "packageDependencies": [\ + ["@nestjs/websockets", "npm:11.1.5"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5", {\ + "packageLocation": "./.yarn/__virtual__/@nestjs-websockets-virtual-caa0957eaa/2/.yarn/berry/cache/@nestjs-websockets-npm-11.1.5-d0601de94d-10.zip/node_modules/@nestjs/websockets/",\ + "packageDependencies": [\ + ["@nestjs/websockets", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/core", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:11.1.5"],\ + ["@nestjs/platform-socket.io", "virtual:caa0957eaa8ef3b1abcd6219c356cf373bdda7b75d9dd198513127bc7534d17cec15d40dcf658d0d04185a8ec0013aa39d45e6cc9d5f8587ca607390cc3e634f#npm:11.0.11"],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["@types/nestjs__platform-socket.io", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["iterare", "npm:1.2.1"],\ + ["object-hash", "npm:3.0.0"],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"],\ + ["tslib", "npm:2.8.1"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/core",\ + "@types/nestjs__common",\ + "@types/nestjs__core",\ + "@types/nestjs__platform-socket.io",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "HARD"\ + }],\ ["virtual:6005114e1da9feae4c2d34d366730753ca59a58b0f66ad83aba166a760b256131b99cf825cbbbc369b2c16136b44176d0f6b2692dc196fdc07691c96eb206270#npm:11.0.11", {\ "packageLocation": "./.yarn/__virtual__/@nestjs-websockets-virtual-882126ff41/2/.yarn/berry/cache/@nestjs-websockets-npm-11.0.11-a7287b18a6-10.zip/node_modules/@nestjs/websockets/",\ "packageDependencies": [\ @@ -9972,6 +11883,37 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ + ["virtual:840d8e69b8855429643c13a076f51e3254208fda852431339e924128daaa61f10ca6e15fecf065c93c1dc5bc2bc27fcf6b242c6e28f6579ba982215fa31b48b3#npm:11.0.11", {\ + "packageLocation": "./.yarn/__virtual__/@nestjs-websockets-virtual-f1cbae9f60/2/.yarn/berry/cache/@nestjs-websockets-npm-11.0.11-a7287b18a6-10.zip/node_modules/@nestjs/websockets/",\ + "packageDependencies": [\ + ["@nestjs/websockets", "virtual:840d8e69b8855429643c13a076f51e3254208fda852431339e924128daaa61f10ca6e15fecf065c93c1dc5bc2bc27fcf6b242c6e28f6579ba982215fa31b48b3#npm:11.0.11"],\ + ["@nestjs/common", "virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#npm:11.1.5"],\ + ["@nestjs/core", "virtual:a30866d4cd2e755ecc6448522c8dc51bd8e49655613ea2069c8d93e131f3f90ec3e71f5d30b9017f1d263a439a86783a662d2b5d930d687f8bf13bb6f0aae76f#npm:11.1.5"],\ + ["@nestjs/platform-socket.io", "virtual:f1cbae9f60d1d8340222b4d8f2ecba63ef7da077e599292022c08ac054436a92297592423ea9694624a0ac29b4a03880aa1f624d751e941559baf80430bc47dc#npm:11.0.11"],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["@types/nestjs__platform-socket.io", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["iterare", "npm:1.2.1"],\ + ["object-hash", "npm:3.0.0"],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"],\ + ["tslib", "npm:2.8.1"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/core",\ + "@types/nestjs__common",\ + "@types/nestjs__core",\ + "@types/nestjs__platform-socket.io",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "HARD"\ + }],\ ["virtual:85c5c4e95e23f2f3c5ea9d794f9606e7fcf829d1a23403c6b8c1915991c40099a9861ee3f3011c6a72a1310d4e08df10df95fa1943e3c0beee4aba9caff13c4b#npm:10.4.15", {\ "packageLocation": "./.yarn/__virtual__/@nestjs-websockets-virtual-9649015daa/2/.yarn/berry/cache/@nestjs-websockets-npm-10.4.15-e139103b0d-10.zip/node_modules/@nestjs/websockets/",\ "packageDependencies": [\ @@ -10003,6 +11945,37 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ + ["virtual:91d4f9b386b8677502905650e87d24f7fb31f151aabd3b8b6aaf4710928bbc816b745f5d521aaeb34cae69ccf883200d30ed21bcfa1cf0120c869fd69a42742b#npm:11.0.11", {\ + "packageLocation": "./.yarn/__virtual__/@nestjs-websockets-virtual-8109fda1c2/2/.yarn/berry/cache/@nestjs-websockets-npm-11.0.11-a7287b18a6-10.zip/node_modules/@nestjs/websockets/",\ + "packageDependencies": [\ + ["@nestjs/websockets", "virtual:91d4f9b386b8677502905650e87d24f7fb31f151aabd3b8b6aaf4710928bbc816b745f5d521aaeb34cae69ccf883200d30ed21bcfa1cf0120c869fd69a42742b#npm:11.0.11"],\ + ["@nestjs/common", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/core", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:11.1.5"],\ + ["@nestjs/platform-socket.io", "virtual:8109fda1c2e78058c8134a8e11761e1fc2f2c29736f733478d4807ecd16faaf460b9e1de22a4e52ea73478b796a883bc58f945e99186b01c72a62e7ce3ed59ec#npm:11.0.11"],\ + ["@types/nestjs__common", null],\ + ["@types/nestjs__core", null],\ + ["@types/nestjs__platform-socket.io", null],\ + ["@types/reflect-metadata", null],\ + ["@types/rxjs", null],\ + ["iterare", "npm:1.2.1"],\ + ["object-hash", "npm:3.0.0"],\ + ["reflect-metadata", "npm:0.2.2"],\ + ["rxjs", "npm:7.8.2"],\ + ["tslib", "npm:2.8.1"]\ + ],\ + "packagePeers": [\ + "@nestjs/common",\ + "@nestjs/core",\ + "@types/nestjs__common",\ + "@types/nestjs__core",\ + "@types/nestjs__platform-socket.io",\ + "@types/reflect-metadata",\ + "@types/rxjs",\ + "reflect-metadata",\ + "rxjs"\ + ],\ + "linkType": "HARD"\ + }],\ ["virtual:94b83d95069c324c978c2648a33e8c7bda884f1e775fdd479590bbc7685727528010ad7b07b7c05388a21e6bfd01742ad108ec0ca8adab22242ed8718dfc181a#npm:11.0.11", {\ "packageLocation": "./.yarn/__virtual__/@nestjs-websockets-virtual-8fce8e92fa/2/.yarn/berry/cache/@nestjs-websockets-npm-11.0.11-a7287b18a6-10.zip/node_modules/@nestjs/websockets/",\ "packageDependencies": [\ @@ -10067,10 +12040,10 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@next/eslint-plugin-next", [\ - ["npm:15.0.3", {\ - "packageLocation": "../.yarn/berry/cache/@next-eslint-plugin-next-npm-15.0.3-c7563bf8c7-10.zip/node_modules/@next/eslint-plugin-next/",\ + ["npm:16.0.7", {\ + "packageLocation": "../.yarn/berry/cache/@next-eslint-plugin-next-npm-16.0.7-a94013f840-10.zip/node_modules/@next/eslint-plugin-next/",\ "packageDependencies": [\ - ["@next/eslint-plugin-next", "npm:15.0.3"],\ + ["@next/eslint-plugin-next", "npm:16.0.7"],\ ["fast-glob", "npm:3.3.1"]\ ],\ "linkType": "HARD"\ @@ -10139,6 +12112,16 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["@nuxt/opencollective", [\ + ["npm:0.4.1", {\ + "packageLocation": "../.yarn/berry/cache/@nuxt-opencollective-npm-0.4.1-5fe96b22f2-10.zip/node_modules/@nuxt/opencollective/",\ + "packageDependencies": [\ + ["@nuxt/opencollective", "npm:0.4.1"],\ + ["consola", "npm:3.4.2"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["@nuxtjs/opencollective", [\ ["npm:0.3.2", {\ "packageLocation": "../.yarn/berry/cache/@nuxtjs-opencollective-npm-0.3.2-72db6b3551-10.zip/node_modules/@nuxtjs/opencollective/",\ @@ -10160,6 +12143,16 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["@ory/kratos-client", [\ + ["npm:1.3.8", {\ + "packageLocation": "../.yarn/berry/cache/@ory-kratos-client-npm-1.3.8-ed2dc9b26e-10.zip/node_modules/@ory/kratos-client/",\ + "packageDependencies": [\ + ["@ory/kratos-client", "npm:1.3.8"],\ + ["axios", "npm:1.13.4"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["@pkgjs/parseargs", [\ ["npm:0.11.0", {\ "packageLocation": "../.yarn/berry/cache/@pkgjs-parseargs-npm-0.11.0-cd2a3fe948-10.zip/node_modules/@pkgjs/parseargs/",\ @@ -10170,10 +12163,10 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@pkgr/core", [\ - ["npm:0.1.1", {\ - "packageLocation": "../.yarn/berry/cache/@pkgr-core-npm-0.1.1-844d1f59d1-10.zip/node_modules/@pkgr/core/",\ + ["npm:0.2.9", {\ + "packageLocation": "../.yarn/berry/cache/@pkgr-core-npm-0.2.9-c65fc09be3-10.zip/node_modules/@pkgr/core/",\ "packageDependencies": [\ - ["@pkgr/core", "npm:0.1.1"]\ + ["@pkgr/core", "npm:0.2.9"]\ ],\ "linkType": "HARD"\ }]\ @@ -11242,10 +13235,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:8.1.0", {\ - "packageLocation": "./.yarn/__virtual__/@svgr-plugin-jsx-virtual-ed386cd82a/2/.yarn/berry/cache/@svgr-plugin-jsx-npm-8.1.0-e2710753df-10.zip/node_modules/@svgr/plugin-jsx/",\ + ["virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:8.1.0", {\ + "packageLocation": "./.yarn/__virtual__/@svgr-plugin-jsx-virtual-9077825f0b/2/.yarn/berry/cache/@svgr-plugin-jsx-npm-8.1.0-e2710753df-10.zip/node_modules/@svgr/plugin-jsx/",\ "packageDependencies": [\ - ["@svgr/plugin-jsx", "virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:8.1.0"],\ + ["@svgr/plugin-jsx", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:8.1.0"],\ ["@babel/core", "npm:7.25.2"],\ ["@svgr/babel-preset", "virtual:77cc138b8f03e76bc81b53d7c536b91810383e8b8e9f294aac9f969daaf6fd5a72e29c2099e3025b537aac701c45d44c7e6af1647a2799c9f61d4f4f9312b7a3#npm:8.1.0"],\ ["@svgr/core", "npm:8.1.0"],\ @@ -11270,6 +13263,27 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["@tokenizer/inflate", [\ + ["npm:0.2.7", {\ + "packageLocation": "../.yarn/berry/cache/@tokenizer-inflate-npm-0.2.7-1d126e1d4f-10.zip/node_modules/@tokenizer/inflate/",\ + "packageDependencies": [\ + ["@tokenizer/inflate", "npm:0.2.7"],\ + ["debug", "virtual:bcb4d53d88a27dcc946cb93931188757e76f00f8529d01632fd34afc5faa82464443e719ee0e473b65de2ae9b41365dd72260c3c5b40c65a42cbb35035eb02fd#npm:4.4.0"],\ + ["fflate", "npm:0.8.2"],\ + ["token-types", "npm:6.1.2"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@tokenizer/token", [\ + ["npm:0.3.0", {\ + "packageLocation": "../.yarn/berry/cache/@tokenizer-token-npm-0.3.0-4441352cc5-10.zip/node_modules/@tokenizer/token/",\ + "packageDependencies": [\ + ["@tokenizer/token", "npm:0.3.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["@tootallnate/once", [\ ["npm:2.0.0", {\ "packageLocation": "../.yarn/berry/cache/@tootallnate-once-npm-2.0.0-e36cf4f140-10.zip/node_modules/@tootallnate/once/",\ @@ -11345,6 +13359,14 @@ const RAW_RUNTIME_STATE = ["@types/node", "npm:22.13.4"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:0.10.7", {\ + "packageLocation": "../.yarn/berry/cache/@types-amqplib-npm-0.10.7-bb7ca609aa-10.zip/node_modules/@types/amqplib/",\ + "packageDependencies": [\ + ["@types/amqplib", "npm:0.10.7"],\ + ["@types/node", "npm:22.13.4"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@types/argparse", [\ @@ -11446,6 +13468,16 @@ const RAW_RUNTIME_STATE = ["@types/ssh2", "npm:1.15.4"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:3.3.47", {\ + "packageLocation": "../.yarn/berry/cache/@types-dockerode-npm-3.3.47-189d6ee908-10.zip/node_modules/@types/dockerode/",\ + "packageDependencies": [\ + ["@types/dockerode", "npm:3.3.47"],\ + ["@types/docker-modem", "npm:3.0.6"],\ + ["@types/node", "npm:22.13.4"],\ + ["@types/ssh2", "npm:1.15.4"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@types/eslint", [\ @@ -11687,6 +13719,14 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ + ["npm:22.10.2", {\ + "packageLocation": "../.yarn/berry/cache/@types-node-npm-22.10.2-572466b048-10.zip/node_modules/@types/node/",\ + "packageDependencies": [\ + ["@types/node", "npm:22.10.2"],\ + ["undici-types", "npm:6.20.0"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:22.13.10", {\ "packageLocation": "../.yarn/berry/cache/@types-node-npm-22.13.10-af5336e62b-10.zip/node_modules/@types/node/",\ "packageDependencies": [\ @@ -11831,105 +13871,173 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@typescript-eslint/eslint-plugin", [\ - ["npm:8.18.1", {\ - "packageLocation": "../.yarn/berry/cache/@typescript-eslint-eslint-plugin-npm-8.18.1-bb2da7e4da-10.zip/node_modules/@typescript-eslint/eslint-plugin/",\ + ["npm:8.48.1", {\ + "packageLocation": "../.yarn/berry/cache/@typescript-eslint-eslint-plugin-npm-8.48.1-a09326c531-10.zip/node_modules/@typescript-eslint/eslint-plugin/",\ "packageDependencies": [\ - ["@typescript-eslint/eslint-plugin", "npm:8.18.1"]\ + ["@typescript-eslint/eslint-plugin", "npm:8.48.1"]\ ],\ "linkType": "SOFT"\ }],\ - ["virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:8.18.1", {\ - "packageLocation": "./.yarn/__virtual__/@typescript-eslint-eslint-plugin-virtual-29d31a8b22/2/.yarn/berry/cache/@typescript-eslint-eslint-plugin-npm-8.18.1-bb2da7e4da-10.zip/node_modules/@typescript-eslint/eslint-plugin/",\ + ["virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:8.48.1", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-eslint-plugin-virtual-2a0b217f24/2/.yarn/berry/cache/@typescript-eslint-eslint-plugin-npm-8.48.1-a09326c531-10.zip/node_modules/@typescript-eslint/eslint-plugin/",\ "packageDependencies": [\ - ["@typescript-eslint/eslint-plugin", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:8.18.1"],\ + ["@typescript-eslint/eslint-plugin", "virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:8.48.1"],\ ["@eslint-community/regexpp", "npm:4.12.1"],\ ["@types/eslint", null],\ ["@types/typescript", null],\ ["@types/typescript-eslint__parser", null],\ - ["@typescript-eslint/parser", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:8.18.1"],\ - ["@typescript-eslint/scope-manager", "npm:8.18.1"],\ - ["@typescript-eslint/type-utils", "virtual:29d31a8b22256d11049029ee23285353bbaf5f5f5a32e1eda502ce88ecfd757091d9e120bbafc3d040e7a614f46211fd1f7b8ed44e4d5acdc2956d7ec411ed48#npm:8.18.1"],\ - ["@typescript-eslint/utils", "virtual:29d31a8b22256d11049029ee23285353bbaf5f5f5a32e1eda502ce88ecfd757091d9e120bbafc3d040e7a614f46211fd1f7b8ed44e4d5acdc2956d7ec411ed48#npm:8.18.1"],\ - ["@typescript-eslint/visitor-keys", "npm:8.18.1"],\ - ["eslint", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:9.17.0"],\ + ["@typescript-eslint/parser", "virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:8.48.1"],\ + ["@typescript-eslint/scope-manager", "npm:8.48.1"],\ + ["@typescript-eslint/type-utils", "virtual:2a0b217f24720360c13c353db39ea812a555d2d6576c071975cba6666cd17d4e0468776bfbc4e7cec0c58d3f912ef35d82c3173d24e4b54ad4ccbbee0f4d80e2#npm:8.48.1"],\ + ["@typescript-eslint/utils", "virtual:2a0b217f24720360c13c353db39ea812a555d2d6576c071975cba6666cd17d4e0468776bfbc4e7cec0c58d3f912ef35d82c3173d24e4b54ad4ccbbee0f4d80e2#npm:8.48.1"],\ + ["@typescript-eslint/visitor-keys", "npm:8.48.1"],\ + ["eslint", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:9.22.0"],\ ["graphemer", "npm:1.4.0"],\ - ["ignore", "npm:5.3.2"],\ + ["ignore", "npm:7.0.5"],\ ["natural-compare", "npm:1.4.0"],\ - ["ts-api-utils", "virtual:29d31a8b22256d11049029ee23285353bbaf5f5f5a32e1eda502ce88ecfd757091d9e120bbafc3d040e7a614f46211fd1f7b8ed44e4d5acdc2956d7ec411ed48#npm:1.4.3"],\ + ["ts-api-utils", "virtual:2a0b217f24720360c13c353db39ea812a555d2d6576c071975cba6666cd17d4e0468776bfbc4e7cec0c58d3f912ef35d82c3173d24e4b54ad4ccbbee0f4d80e2#npm:2.4.0"],\ + ["typescript", "patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=379a07"]\ + ],\ + "packagePeers": [\ + "@types/eslint",\ + "@types/typescript-eslint__parser",\ + "@types/typescript",\ + "@typescript-eslint/parser",\ + "eslint",\ + "typescript"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@typescript-eslint/parser", [\ + ["npm:8.48.1", {\ + "packageLocation": "../.yarn/berry/cache/@typescript-eslint-parser-npm-8.48.1-cf0a8b9c11-10.zip/node_modules/@typescript-eslint/parser/",\ + "packageDependencies": [\ + ["@typescript-eslint/parser", "npm:8.48.1"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:8.48.1", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-parser-virtual-3e37dd899b/2/.yarn/berry/cache/@typescript-eslint-parser-npm-8.48.1-cf0a8b9c11-10.zip/node_modules/@typescript-eslint/parser/",\ + "packageDependencies": [\ + ["@typescript-eslint/parser", "virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:8.48.1"],\ + ["@types/eslint", null],\ + ["@types/typescript", null],\ + ["@typescript-eslint/scope-manager", "npm:8.48.1"],\ + ["@typescript-eslint/types", "npm:8.48.1"],\ + ["@typescript-eslint/typescript-estree", "virtual:55720a5344d2e49ab0cae999d76b8055a9fbb8894ff2244a54890068df5403df11b25d40ba83194761c2898fd50340fddce1c57f1e67ee4243358cf436d2b82b#npm:8.48.1"],\ + ["@typescript-eslint/visitor-keys", "npm:8.48.1"],\ + ["debug", "virtual:1b9e2a314c35921e1b14ca2d2c7664f165a5c0f3f02ca1e30357c6546941724b55e5624ce0d5b4790874f2259ae08ae26d9f95d2cdbb84aae50aa451a2a572cd#npm:4.3.7"],\ + ["eslint", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:9.22.0"],\ + ["typescript", "patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=379a07"]\ + ],\ + "packagePeers": [\ + "@types/eslint",\ + "@types/typescript",\ + "eslint",\ + "typescript"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@typescript-eslint/project-service", [\ + ["npm:8.48.1", {\ + "packageLocation": "../.yarn/berry/cache/@typescript-eslint-project-service-npm-8.48.1-13c2e2d2dc-10.zip/node_modules/@typescript-eslint/project-service/",\ + "packageDependencies": [\ + ["@typescript-eslint/project-service", "npm:8.48.1"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:19c1452982da05c415423febba60e4ff143f09bff76cd00fd251be30b7020b98977d0b5a420a6eb939063ff4c4cc7267edc65b361da17b2d2fe265fd86712a7f#npm:8.48.1", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-project-service-virtual-58ecbc3093/2/.yarn/berry/cache/@typescript-eslint-project-service-npm-8.48.1-13c2e2d2dc-10.zip/node_modules/@typescript-eslint/project-service/",\ + "packageDependencies": [\ + ["@typescript-eslint/project-service", "virtual:19c1452982da05c415423febba60e4ff143f09bff76cd00fd251be30b7020b98977d0b5a420a6eb939063ff4c4cc7267edc65b361da17b2d2fe265fd86712a7f#npm:8.48.1"],\ + ["@types/typescript", null],\ + ["@typescript-eslint/tsconfig-utils", "virtual:58ecbc309374efca4c1403eefe3c127f730f33dd70562dae25752191c948af19488a75da4ef0a05e5ec0be6dfb6051c6535fe77ce40a4efb32d947215200b935#npm:8.54.0"],\ + ["@typescript-eslint/types", "npm:8.54.0"],\ + ["debug", "virtual:1b9e2a314c35921e1b14ca2d2c7664f165a5c0f3f02ca1e30357c6546941724b55e5624ce0d5b4790874f2259ae08ae26d9f95d2cdbb84aae50aa451a2a572cd#npm:4.3.7"],\ ["typescript", "patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=379a07"]\ ],\ "packagePeers": [\ - "@types/eslint",\ - "@types/typescript-eslint__parser",\ "@types/typescript",\ - "@typescript-eslint/parser",\ - "eslint",\ "typescript"\ ],\ "linkType": "HARD"\ }]\ ]],\ - ["@typescript-eslint/parser", [\ - ["npm:8.18.1", {\ - "packageLocation": "../.yarn/berry/cache/@typescript-eslint-parser-npm-8.18.1-45a2c3c6fb-10.zip/node_modules/@typescript-eslint/parser/",\ + ["@typescript-eslint/scope-manager", [\ + ["npm:8.48.1", {\ + "packageLocation": "../.yarn/berry/cache/@typescript-eslint-scope-manager-npm-8.48.1-7d633ba796-10.zip/node_modules/@typescript-eslint/scope-manager/",\ + "packageDependencies": [\ + ["@typescript-eslint/scope-manager", "npm:8.48.1"],\ + ["@typescript-eslint/types", "npm:8.48.1"],\ + ["@typescript-eslint/visitor-keys", "npm:8.48.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@typescript-eslint/tsconfig-utils", [\ + ["npm:8.48.1", {\ + "packageLocation": "../.yarn/berry/cache/@typescript-eslint-tsconfig-utils-npm-8.48.1-702d6abc7f-10.zip/node_modules/@typescript-eslint/tsconfig-utils/",\ "packageDependencies": [\ - ["@typescript-eslint/parser", "npm:8.18.1"]\ + ["@typescript-eslint/tsconfig-utils", "npm:8.48.1"]\ ],\ "linkType": "SOFT"\ }],\ - ["virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:8.18.1", {\ - "packageLocation": "./.yarn/__virtual__/@typescript-eslint-parser-virtual-fdefd37973/2/.yarn/berry/cache/@typescript-eslint-parser-npm-8.18.1-45a2c3c6fb-10.zip/node_modules/@typescript-eslint/parser/",\ + ["npm:8.54.0", {\ + "packageLocation": "../.yarn/berry/cache/@typescript-eslint-tsconfig-utils-npm-8.54.0-73efc09e2a-10.zip/node_modules/@typescript-eslint/tsconfig-utils/",\ "packageDependencies": [\ - ["@typescript-eslint/parser", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:8.18.1"],\ - ["@types/eslint", null],\ + ["@typescript-eslint/tsconfig-utils", "npm:8.54.0"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:19c1452982da05c415423febba60e4ff143f09bff76cd00fd251be30b7020b98977d0b5a420a6eb939063ff4c4cc7267edc65b361da17b2d2fe265fd86712a7f#npm:8.48.1", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-tsconfig-utils-virtual-3388e505dc/2/.yarn/berry/cache/@typescript-eslint-tsconfig-utils-npm-8.48.1-702d6abc7f-10.zip/node_modules/@typescript-eslint/tsconfig-utils/",\ + "packageDependencies": [\ + ["@typescript-eslint/tsconfig-utils", "virtual:19c1452982da05c415423febba60e4ff143f09bff76cd00fd251be30b7020b98977d0b5a420a6eb939063ff4c4cc7267edc65b361da17b2d2fe265fd86712a7f#npm:8.48.1"],\ ["@types/typescript", null],\ - ["@typescript-eslint/scope-manager", "npm:8.18.1"],\ - ["@typescript-eslint/types", "npm:8.18.1"],\ - ["@typescript-eslint/typescript-estree", "virtual:fad12b9f3aad4c74cf6a8d4797d58a7f2b1840db431a798783c18e2c6a75e6f9985618cd8b737a8320b23965ac4566a79350d85ad3a1c0f64b30bd235516db72#npm:8.18.1"],\ - ["@typescript-eslint/visitor-keys", "npm:8.18.1"],\ - ["debug", "virtual:1b9e2a314c35921e1b14ca2d2c7664f165a5c0f3f02ca1e30357c6546941724b55e5624ce0d5b4790874f2259ae08ae26d9f95d2cdbb84aae50aa451a2a572cd#npm:4.3.7"],\ - ["eslint", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:9.17.0"],\ ["typescript", "patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=379a07"]\ ],\ "packagePeers": [\ - "@types/eslint",\ "@types/typescript",\ - "eslint",\ "typescript"\ ],\ "linkType": "HARD"\ - }]\ - ]],\ - ["@typescript-eslint/scope-manager", [\ - ["npm:8.18.1", {\ - "packageLocation": "../.yarn/berry/cache/@typescript-eslint-scope-manager-npm-8.18.1-83da96a516-10.zip/node_modules/@typescript-eslint/scope-manager/",\ + }],\ + ["virtual:58ecbc309374efca4c1403eefe3c127f730f33dd70562dae25752191c948af19488a75da4ef0a05e5ec0be6dfb6051c6535fe77ce40a4efb32d947215200b935#npm:8.54.0", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-tsconfig-utils-virtual-49b2b8dc96/2/.yarn/berry/cache/@typescript-eslint-tsconfig-utils-npm-8.54.0-73efc09e2a-10.zip/node_modules/@typescript-eslint/tsconfig-utils/",\ "packageDependencies": [\ - ["@typescript-eslint/scope-manager", "npm:8.18.1"],\ - ["@typescript-eslint/types", "npm:8.18.1"],\ - ["@typescript-eslint/visitor-keys", "npm:8.18.1"]\ + ["@typescript-eslint/tsconfig-utils", "virtual:58ecbc309374efca4c1403eefe3c127f730f33dd70562dae25752191c948af19488a75da4ef0a05e5ec0be6dfb6051c6535fe77ce40a4efb32d947215200b935#npm:8.54.0"],\ + ["@types/typescript", null],\ + ["typescript", "patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=379a07"]\ + ],\ + "packagePeers": [\ + "@types/typescript",\ + "typescript"\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@typescript-eslint/type-utils", [\ - ["npm:8.18.1", {\ - "packageLocation": "../.yarn/berry/cache/@typescript-eslint-type-utils-npm-8.18.1-8af8e9642f-10.zip/node_modules/@typescript-eslint/type-utils/",\ + ["npm:8.48.1", {\ + "packageLocation": "../.yarn/berry/cache/@typescript-eslint-type-utils-npm-8.48.1-9718d9fe5e-10.zip/node_modules/@typescript-eslint/type-utils/",\ "packageDependencies": [\ - ["@typescript-eslint/type-utils", "npm:8.18.1"]\ + ["@typescript-eslint/type-utils", "npm:8.48.1"]\ ],\ "linkType": "SOFT"\ }],\ - ["virtual:29d31a8b22256d11049029ee23285353bbaf5f5f5a32e1eda502ce88ecfd757091d9e120bbafc3d040e7a614f46211fd1f7b8ed44e4d5acdc2956d7ec411ed48#npm:8.18.1", {\ - "packageLocation": "./.yarn/__virtual__/@typescript-eslint-type-utils-virtual-fad12b9f3a/2/.yarn/berry/cache/@typescript-eslint-type-utils-npm-8.18.1-8af8e9642f-10.zip/node_modules/@typescript-eslint/type-utils/",\ + ["virtual:2a0b217f24720360c13c353db39ea812a555d2d6576c071975cba6666cd17d4e0468776bfbc4e7cec0c58d3f912ef35d82c3173d24e4b54ad4ccbbee0f4d80e2#npm:8.48.1", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-type-utils-virtual-55720a5344/2/.yarn/berry/cache/@typescript-eslint-type-utils-npm-8.48.1-9718d9fe5e-10.zip/node_modules/@typescript-eslint/type-utils/",\ "packageDependencies": [\ - ["@typescript-eslint/type-utils", "virtual:29d31a8b22256d11049029ee23285353bbaf5f5f5a32e1eda502ce88ecfd757091d9e120bbafc3d040e7a614f46211fd1f7b8ed44e4d5acdc2956d7ec411ed48#npm:8.18.1"],\ + ["@typescript-eslint/type-utils", "virtual:2a0b217f24720360c13c353db39ea812a555d2d6576c071975cba6666cd17d4e0468776bfbc4e7cec0c58d3f912ef35d82c3173d24e4b54ad4ccbbee0f4d80e2#npm:8.48.1"],\ ["@types/eslint", null],\ ["@types/typescript", null],\ - ["@typescript-eslint/typescript-estree", "virtual:fad12b9f3aad4c74cf6a8d4797d58a7f2b1840db431a798783c18e2c6a75e6f9985618cd8b737a8320b23965ac4566a79350d85ad3a1c0f64b30bd235516db72#npm:8.18.1"],\ - ["@typescript-eslint/utils", "virtual:29d31a8b22256d11049029ee23285353bbaf5f5f5a32e1eda502ce88ecfd757091d9e120bbafc3d040e7a614f46211fd1f7b8ed44e4d5acdc2956d7ec411ed48#npm:8.18.1"],\ + ["@typescript-eslint/types", "npm:8.48.1"],\ + ["@typescript-eslint/typescript-estree", "virtual:55720a5344d2e49ab0cae999d76b8055a9fbb8894ff2244a54890068df5403df11b25d40ba83194761c2898fd50340fddce1c57f1e67ee4243358cf436d2b82b#npm:8.48.1"],\ + ["@typescript-eslint/utils", "virtual:2a0b217f24720360c13c353db39ea812a555d2d6576c071975cba6666cd17d4e0468776bfbc4e7cec0c58d3f912ef35d82c3173d24e4b54ad4ccbbee0f4d80e2#npm:8.48.1"],\ ["debug", "virtual:1b9e2a314c35921e1b14ca2d2c7664f165a5c0f3f02ca1e30357c6546941724b55e5624ce0d5b4790874f2259ae08ae26d9f95d2cdbb84aae50aa451a2a572cd#npm:4.3.7"],\ - ["eslint", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:9.17.0"],\ - ["ts-api-utils", "virtual:29d31a8b22256d11049029ee23285353bbaf5f5f5a32e1eda502ce88ecfd757091d9e120bbafc3d040e7a614f46211fd1f7b8ed44e4d5acdc2956d7ec411ed48#npm:1.4.3"],\ + ["eslint", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:9.22.0"],\ + ["ts-api-utils", "virtual:2a0b217f24720360c13c353db39ea812a555d2d6576c071975cba6666cd17d4e0468776bfbc4e7cec0c58d3f912ef35d82c3173d24e4b54ad4ccbbee0f4d80e2#npm:2.4.0"],\ ["typescript", "patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=379a07"]\ ],\ "packagePeers": [\ @@ -11942,35 +14050,43 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@typescript-eslint/types", [\ - ["npm:8.18.1", {\ - "packageLocation": "../.yarn/berry/cache/@typescript-eslint-types-npm-8.18.1-ebc7ee1839-10.zip/node_modules/@typescript-eslint/types/",\ + ["npm:8.48.1", {\ + "packageLocation": "../.yarn/berry/cache/@typescript-eslint-types-npm-8.48.1-5e1312d710-10.zip/node_modules/@typescript-eslint/types/",\ + "packageDependencies": [\ + ["@typescript-eslint/types", "npm:8.48.1"]\ + ],\ + "linkType": "HARD"\ + }],\ + ["npm:8.54.0", {\ + "packageLocation": "../.yarn/berry/cache/@typescript-eslint-types-npm-8.54.0-75d29a589d-10.zip/node_modules/@typescript-eslint/types/",\ "packageDependencies": [\ - ["@typescript-eslint/types", "npm:8.18.1"]\ + ["@typescript-eslint/types", "npm:8.54.0"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@typescript-eslint/typescript-estree", [\ - ["npm:8.18.1", {\ - "packageLocation": "../.yarn/berry/cache/@typescript-eslint-typescript-estree-npm-8.18.1-37ec5dc39d-10.zip/node_modules/@typescript-eslint/typescript-estree/",\ + ["npm:8.48.1", {\ + "packageLocation": "../.yarn/berry/cache/@typescript-eslint-typescript-estree-npm-8.48.1-751b2295c1-10.zip/node_modules/@typescript-eslint/typescript-estree/",\ "packageDependencies": [\ - ["@typescript-eslint/typescript-estree", "npm:8.18.1"]\ + ["@typescript-eslint/typescript-estree", "npm:8.48.1"]\ ],\ "linkType": "SOFT"\ }],\ - ["virtual:fad12b9f3aad4c74cf6a8d4797d58a7f2b1840db431a798783c18e2c6a75e6f9985618cd8b737a8320b23965ac4566a79350d85ad3a1c0f64b30bd235516db72#npm:8.18.1", {\ - "packageLocation": "./.yarn/__virtual__/@typescript-eslint-typescript-estree-virtual-b130bfeae4/2/.yarn/berry/cache/@typescript-eslint-typescript-estree-npm-8.18.1-37ec5dc39d-10.zip/node_modules/@typescript-eslint/typescript-estree/",\ + ["virtual:55720a5344d2e49ab0cae999d76b8055a9fbb8894ff2244a54890068df5403df11b25d40ba83194761c2898fd50340fddce1c57f1e67ee4243358cf436d2b82b#npm:8.48.1", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-typescript-estree-virtual-19c1452982/2/.yarn/berry/cache/@typescript-eslint-typescript-estree-npm-8.48.1-751b2295c1-10.zip/node_modules/@typescript-eslint/typescript-estree/",\ "packageDependencies": [\ - ["@typescript-eslint/typescript-estree", "virtual:fad12b9f3aad4c74cf6a8d4797d58a7f2b1840db431a798783c18e2c6a75e6f9985618cd8b737a8320b23965ac4566a79350d85ad3a1c0f64b30bd235516db72#npm:8.18.1"],\ + ["@typescript-eslint/typescript-estree", "virtual:55720a5344d2e49ab0cae999d76b8055a9fbb8894ff2244a54890068df5403df11b25d40ba83194761c2898fd50340fddce1c57f1e67ee4243358cf436d2b82b#npm:8.48.1"],\ ["@types/typescript", null],\ - ["@typescript-eslint/types", "npm:8.18.1"],\ - ["@typescript-eslint/visitor-keys", "npm:8.18.1"],\ + ["@typescript-eslint/project-service", "virtual:19c1452982da05c415423febba60e4ff143f09bff76cd00fd251be30b7020b98977d0b5a420a6eb939063ff4c4cc7267edc65b361da17b2d2fe265fd86712a7f#npm:8.48.1"],\ + ["@typescript-eslint/tsconfig-utils", "virtual:19c1452982da05c415423febba60e4ff143f09bff76cd00fd251be30b7020b98977d0b5a420a6eb939063ff4c4cc7267edc65b361da17b2d2fe265fd86712a7f#npm:8.48.1"],\ + ["@typescript-eslint/types", "npm:8.48.1"],\ + ["@typescript-eslint/visitor-keys", "npm:8.48.1"],\ ["debug", "virtual:1b9e2a314c35921e1b14ca2d2c7664f165a5c0f3f02ca1e30357c6546941724b55e5624ce0d5b4790874f2259ae08ae26d9f95d2cdbb84aae50aa451a2a572cd#npm:4.3.7"],\ - ["fast-glob", "npm:3.3.3"],\ - ["is-glob", "npm:4.0.3"],\ ["minimatch", "npm:9.0.5"],\ ["semver", "npm:7.7.1"],\ - ["ts-api-utils", "virtual:29d31a8b22256d11049029ee23285353bbaf5f5f5a32e1eda502ce88ecfd757091d9e120bbafc3d040e7a614f46211fd1f7b8ed44e4d5acdc2956d7ec411ed48#npm:1.4.3"],\ + ["tinyglobby", "npm:0.2.15"],\ + ["ts-api-utils", "virtual:2a0b217f24720360c13c353db39ea812a555d2d6576c071975cba6666cd17d4e0468776bfbc4e7cec0c58d3f912ef35d82c3173d24e4b54ad4ccbbee0f4d80e2#npm:2.4.0"],\ ["typescript", "patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=379a07"]\ ],\ "packagePeers": [\ @@ -11981,24 +14097,24 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@typescript-eslint/utils", [\ - ["npm:8.18.1", {\ - "packageLocation": "../.yarn/berry/cache/@typescript-eslint-utils-npm-8.18.1-35786709a5-10.zip/node_modules/@typescript-eslint/utils/",\ + ["npm:8.48.1", {\ + "packageLocation": "../.yarn/berry/cache/@typescript-eslint-utils-npm-8.48.1-aec1d5feca-10.zip/node_modules/@typescript-eslint/utils/",\ "packageDependencies": [\ - ["@typescript-eslint/utils", "npm:8.18.1"]\ + ["@typescript-eslint/utils", "npm:8.48.1"]\ ],\ "linkType": "SOFT"\ }],\ - ["virtual:29d31a8b22256d11049029ee23285353bbaf5f5f5a32e1eda502ce88ecfd757091d9e120bbafc3d040e7a614f46211fd1f7b8ed44e4d5acdc2956d7ec411ed48#npm:8.18.1", {\ - "packageLocation": "./.yarn/__virtual__/@typescript-eslint-utils-virtual-4f16fa84a2/2/.yarn/berry/cache/@typescript-eslint-utils-npm-8.18.1-35786709a5-10.zip/node_modules/@typescript-eslint/utils/",\ + ["virtual:2a0b217f24720360c13c353db39ea812a555d2d6576c071975cba6666cd17d4e0468776bfbc4e7cec0c58d3f912ef35d82c3173d24e4b54ad4ccbbee0f4d80e2#npm:8.48.1", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-utils-virtual-a5f4f6c17f/2/.yarn/berry/cache/@typescript-eslint-utils-npm-8.48.1-aec1d5feca-10.zip/node_modules/@typescript-eslint/utils/",\ "packageDependencies": [\ - ["@typescript-eslint/utils", "virtual:29d31a8b22256d11049029ee23285353bbaf5f5f5a32e1eda502ce88ecfd757091d9e120bbafc3d040e7a614f46211fd1f7b8ed44e4d5acdc2956d7ec411ed48#npm:8.18.1"],\ - ["@eslint-community/eslint-utils", "virtual:4f16fa84a28b152d58b6d9462c39d6dacc441e843c0cce6ea1bd4879b10c5270eac61c50d6e25a53c15318dea029c137c579fd6bb0fa4e8325947215699e9b31#npm:4.4.1"],\ + ["@typescript-eslint/utils", "virtual:2a0b217f24720360c13c353db39ea812a555d2d6576c071975cba6666cd17d4e0468776bfbc4e7cec0c58d3f912ef35d82c3173d24e4b54ad4ccbbee0f4d80e2#npm:8.48.1"],\ + ["@eslint-community/eslint-utils", "virtual:a5f4f6c17ff20a4ad973d63a15f09f1395a67972e95f8889bfc4d0596cf00c49f2f8fdb73099b1293fc366d89f5d354705040fc659e069bf733d05a57042aa4b#npm:4.9.1"],\ ["@types/eslint", null],\ ["@types/typescript", null],\ - ["@typescript-eslint/scope-manager", "npm:8.18.1"],\ - ["@typescript-eslint/types", "npm:8.18.1"],\ - ["@typescript-eslint/typescript-estree", "virtual:fad12b9f3aad4c74cf6a8d4797d58a7f2b1840db431a798783c18e2c6a75e6f9985618cd8b737a8320b23965ac4566a79350d85ad3a1c0f64b30bd235516db72#npm:8.18.1"],\ - ["eslint", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:9.17.0"],\ + ["@typescript-eslint/scope-manager", "npm:8.48.1"],\ + ["@typescript-eslint/types", "npm:8.48.1"],\ + ["@typescript-eslint/typescript-estree", "virtual:55720a5344d2e49ab0cae999d76b8055a9fbb8894ff2244a54890068df5403df11b25d40ba83194761c2898fd50340fddce1c57f1e67ee4243358cf436d2b82b#npm:8.48.1"],\ + ["eslint", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:9.22.0"],\ ["typescript", "patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=379a07"]\ ],\ "packagePeers": [\ @@ -12011,12 +14127,12 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@typescript-eslint/visitor-keys", [\ - ["npm:8.18.1", {\ - "packageLocation": "../.yarn/berry/cache/@typescript-eslint-visitor-keys-npm-8.18.1-1fac10e298-10.zip/node_modules/@typescript-eslint/visitor-keys/",\ + ["npm:8.48.1", {\ + "packageLocation": "../.yarn/berry/cache/@typescript-eslint-visitor-keys-npm-8.48.1-fb92338aa0-10.zip/node_modules/@typescript-eslint/visitor-keys/",\ "packageDependencies": [\ - ["@typescript-eslint/visitor-keys", "npm:8.18.1"],\ - ["@typescript-eslint/types", "npm:8.18.1"],\ - ["eslint-visitor-keys", "npm:4.2.0"]\ + ["@typescript-eslint/visitor-keys", "npm:8.48.1"],\ + ["@typescript-eslint/types", "npm:8.48.1"],\ + ["eslint-visitor-keys", "npm:4.2.1"]\ ],\ "linkType": "HARD"\ }]\ @@ -12494,12 +14610,12 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:6c1b03355311cc7c6a66ab72351c41f4194df913c120e46d05227f4cb80ea2184195be935f3fd0cb703cddd1711a7429b50fc4b87f1328a3654cb558c797688b#npm:3.0.1", {\ - "packageLocation": "./.yarn/__virtual__/ajv-formats-virtual-adaa11f8fb/2/.yarn/berry/cache/ajv-formats-npm-3.0.1-2662cf5b12-10.zip/node_modules/ajv-formats/",\ + ["virtual:42f2ffad249aa2355efc66861bbe173c02c83bb6ca1ed15de3d473bfddb2fb9d5da37115688b1cb010c633a945fbceedfea5b67e789b18c12fd1a0349e4ede12#npm:3.0.1", {\ + "packageLocation": "./.yarn/__virtual__/ajv-formats-virtual-7345bf8fe5/2/.yarn/berry/cache/ajv-formats-npm-3.0.1-2662cf5b12-10.zip/node_modules/ajv-formats/",\ "packageDependencies": [\ - ["ajv-formats", "virtual:6c1b03355311cc7c6a66ab72351c41f4194df913c120e46d05227f4cb80ea2184195be935f3fd0cb703cddd1711a7429b50fc4b87f1328a3654cb558c797688b#npm:3.0.1"],\ + ["ajv-formats", "virtual:42f2ffad249aa2355efc66861bbe173c02c83bb6ca1ed15de3d473bfddb2fb9d5da37115688b1cb010c633a945fbceedfea5b67e789b18c12fd1a0349e4ede12#npm:3.0.1"],\ ["@types/ajv", null],\ - ["ajv", "npm:8.13.0"]\ + ["ajv", "npm:8.17.1"]\ ],\ "packagePeers": [\ "@types/ajv",\ @@ -12507,12 +14623,12 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:6f0a75e2e24507b64e23679df5b98c6b0a9e9a8621a95c9f8c1ae8bd406eb857104f4065344af3a2d6d0a9ff549b8adbd3d15f60ef166628999040bd862e7a27#npm:2.1.1", {\ - "packageLocation": "./.yarn/__virtual__/ajv-formats-virtual-c2f25a3c34/2/.yarn/berry/cache/ajv-formats-npm-2.1.1-3cec02eae9-10.zip/node_modules/ajv-formats/",\ + ["virtual:6c1b03355311cc7c6a66ab72351c41f4194df913c120e46d05227f4cb80ea2184195be935f3fd0cb703cddd1711a7429b50fc4b87f1328a3654cb558c797688b#npm:3.0.1", {\ + "packageLocation": "./.yarn/__virtual__/ajv-formats-virtual-adaa11f8fb/2/.yarn/berry/cache/ajv-formats-npm-3.0.1-2662cf5b12-10.zip/node_modules/ajv-formats/",\ "packageDependencies": [\ - ["ajv-formats", "virtual:6f0a75e2e24507b64e23679df5b98c6b0a9e9a8621a95c9f8c1ae8bd406eb857104f4065344af3a2d6d0a9ff549b8adbd3d15f60ef166628999040bd862e7a27#npm:2.1.1"],\ + ["ajv-formats", "virtual:6c1b03355311cc7c6a66ab72351c41f4194df913c120e46d05227f4cb80ea2184195be935f3fd0cb703cddd1711a7429b50fc4b87f1328a3654cb558c797688b#npm:3.0.1"],\ ["@types/ajv", null],\ - ["ajv", "npm:8.17.1"]\ + ["ajv", "npm:8.13.0"]\ ],\ "packagePeers": [\ "@types/ajv",\ @@ -12520,10 +14636,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:b77a4b7f73d4c1c7fc5db0545a0d044d8a896eef45770425de4eca6250a6df8d78418f89ee9ccfeb122ae53a4313d2f557b436a2a9f9700b5990125d3fbb8fe8#npm:3.0.1", {\ - "packageLocation": "./.yarn/__virtual__/ajv-formats-virtual-18d9b2af6d/2/.yarn/berry/cache/ajv-formats-npm-3.0.1-2662cf5b12-10.zip/node_modules/ajv-formats/",\ + ["virtual:6f0a75e2e24507b64e23679df5b98c6b0a9e9a8621a95c9f8c1ae8bd406eb857104f4065344af3a2d6d0a9ff549b8adbd3d15f60ef166628999040bd862e7a27#npm:2.1.1", {\ + "packageLocation": "./.yarn/__virtual__/ajv-formats-virtual-c2f25a3c34/2/.yarn/berry/cache/ajv-formats-npm-2.1.1-3cec02eae9-10.zip/node_modules/ajv-formats/",\ "packageDependencies": [\ - ["ajv-formats", "virtual:b77a4b7f73d4c1c7fc5db0545a0d044d8a896eef45770425de4eca6250a6df8d78418f89ee9ccfeb122ae53a4313d2f557b436a2a9f9700b5990125d3fbb8fe8#npm:3.0.1"],\ + ["ajv-formats", "virtual:6f0a75e2e24507b64e23679df5b98c6b0a9e9a8621a95c9f8c1ae8bd406eb857104f4065344af3a2d6d0a9ff549b8adbd3d15f60ef166628999040bd862e7a27#npm:2.1.1"],\ ["@types/ajv", null],\ ["ajv", "npm:8.17.1"]\ ],\ @@ -12585,12 +14701,12 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:85c5c4e95e23f2f3c5ea9d794f9606e7fcf829d1a23403c6b8c1915991c40099a9861ee3f3011c6a72a1310d4e08df10df95fa1943e3c0beee4aba9caff13c4b#npm:4.1.14", {\ - "packageLocation": "./.yarn/__virtual__/amqp-connection-manager-virtual-5335c11df0/2/.yarn/berry/cache/amqp-connection-manager-npm-4.1.14-67f5084e9f-10.zip/node_modules/amqp-connection-manager/",\ + ["virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:4.1.14", {\ + "packageLocation": "./.yarn/__virtual__/amqp-connection-manager-virtual-e70311809d/2/.yarn/berry/cache/amqp-connection-manager-npm-4.1.14-67f5084e9f-10.zip/node_modules/amqp-connection-manager/",\ "packageDependencies": [\ - ["amqp-connection-manager", "virtual:85c5c4e95e23f2f3c5ea9d794f9606e7fcf829d1a23403c6b8c1915991c40099a9861ee3f3011c6a72a1310d4e08df10df95fa1943e3c0beee4aba9caff13c4b#npm:4.1.14"],\ - ["@types/amqplib", "npm:0.10.6"],\ - ["amqplib", "npm:0.10.5"],\ + ["amqp-connection-manager", "virtual:28522b933cb7bf26709051feaf82c0cad6d8435f3258538e6b9fdb25ba961a7c6a3011f1ca137bbebf75a7e6221f68a8b611168933f61a11e717de3f6dd753a2#npm:4.1.14"],\ + ["@types/amqplib", "npm:0.10.7"],\ + ["amqplib", "npm:0.10.8"],\ ["promise-breaker", "npm:6.0.0"]\ ],\ "packagePeers": [\ @@ -12599,10 +14715,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:b114b495358c4575317d9c8f61a493e9004e5365d54f4e57d0c9c2678dbc206afd041e778c9b630d6a011eeed11c3b7f619d979a9c6b5921ac799492fd59ab68#npm:4.1.14", {\ - "packageLocation": "./.yarn/__virtual__/amqp-connection-manager-virtual-fdfe4808c5/2/.yarn/berry/cache/amqp-connection-manager-npm-4.1.14-67f5084e9f-10.zip/node_modules/amqp-connection-manager/",\ + ["virtual:41e57a1684bfbfcc5cfacd83fe6113ecde2edac07997130832035d0c2d0ee785f3a4b2dad0734ce3b70c72f65d470bcf0a24da2aaf9fb2bc68bb41e38437fda7#npm:4.1.14", {\ + "packageLocation": "./.yarn/__virtual__/amqp-connection-manager-virtual-070a67ede9/2/.yarn/berry/cache/amqp-connection-manager-npm-4.1.14-67f5084e9f-10.zip/node_modules/amqp-connection-manager/",\ "packageDependencies": [\ - ["amqp-connection-manager", "virtual:b114b495358c4575317d9c8f61a493e9004e5365d54f4e57d0c9c2678dbc206afd041e778c9b630d6a011eeed11c3b7f619d979a9c6b5921ac799492fd59ab68#npm:4.1.14"],\ + ["amqp-connection-manager", "virtual:41e57a1684bfbfcc5cfacd83fe6113ecde2edac07997130832035d0c2d0ee785f3a4b2dad0734ce3b70c72f65d470bcf0a24da2aaf9fb2bc68bb41e38437fda7#npm:4.1.14"],\ ["@types/amqplib", null],\ ["amqplib", "npm:0.10.5"],\ ["promise-breaker", "npm:6.0.0"]\ @@ -12612,6 +14728,20 @@ const RAW_RUNTIME_STATE = "amqplib"\ ],\ "linkType": "HARD"\ + }],\ + ["virtual:85c5c4e95e23f2f3c5ea9d794f9606e7fcf829d1a23403c6b8c1915991c40099a9861ee3f3011c6a72a1310d4e08df10df95fa1943e3c0beee4aba9caff13c4b#npm:4.1.14", {\ + "packageLocation": "./.yarn/__virtual__/amqp-connection-manager-virtual-5335c11df0/2/.yarn/berry/cache/amqp-connection-manager-npm-4.1.14-67f5084e9f-10.zip/node_modules/amqp-connection-manager/",\ + "packageDependencies": [\ + ["amqp-connection-manager", "virtual:85c5c4e95e23f2f3c5ea9d794f9606e7fcf829d1a23403c6b8c1915991c40099a9861ee3f3011c6a72a1310d4e08df10df95fa1943e3c0beee4aba9caff13c4b#npm:4.1.14"],\ + ["@types/amqplib", "npm:0.10.6"],\ + ["amqplib", "npm:0.10.5"],\ + ["promise-breaker", "npm:6.0.0"]\ + ],\ + "packagePeers": [\ + "@types/amqplib",\ + "amqplib"\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["amqplib", [\ @@ -12624,6 +14754,15 @@ const RAW_RUNTIME_STATE = ["url-parse", "npm:1.5.10"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:0.10.8", {\ + "packageLocation": "../.yarn/berry/cache/amqplib-npm-0.10.8-559196954b-10.zip/node_modules/amqplib/",\ + "packageDependencies": [\ + ["amqplib", "npm:0.10.8"],\ + ["buffer-more-ints", "npm:1.0.0"],\ + ["url-parse", "npm:1.5.10"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["ansi-regex", [\ @@ -13180,6 +15319,17 @@ const RAW_RUNTIME_STATE = ["es-shim-unscopables", "npm:1.0.2"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:1.3.3", {\ + "packageLocation": "../.yarn/berry/cache/array.prototype.flatmap-npm-1.3.3-db3afdbfda-10.zip/node_modules/array.prototype.flatmap/",\ + "packageDependencies": [\ + ["array.prototype.flatmap", "npm:1.3.3"],\ + ["call-bind", "npm:1.0.8"],\ + ["define-properties", "npm:1.2.1"],\ + ["es-abstract", "npm:1.23.9"],\ + ["es-shim-unscopables", "npm:1.0.2"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["array.prototype.reduce", [\ @@ -13337,6 +15487,15 @@ const RAW_RUNTIME_STATE = ["fastq", "npm:1.19.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:9.1.0", {\ + "packageLocation": "../.yarn/berry/cache/avvio-npm-9.1.0-f785d465b7-10.zip/node_modules/avvio/",\ + "packageDependencies": [\ + ["avvio", "npm:9.1.0"],\ + ["@fastify/error", "npm:4.2.0"],\ + ["fastq", "npm:1.19.1"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["axe-core", [\ @@ -13348,6 +15507,28 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["axios", [\ + ["npm:1.13.4", {\ + "packageLocation": "../.yarn/berry/cache/axios-npm-1.13.4-7c78039beb-10.zip/node_modules/axios/",\ + "packageDependencies": [\ + ["axios", "npm:1.13.4"],\ + ["follow-redirects", "virtual:7c78039beb55b34dec6c4b8bde84cdf70316d264d3e514884cde502e208b9a452689b4cc9b6873aa4975d7479ba0bbd7492bda652ef862b26265d0b40b92c9f7#npm:1.15.11"],\ + ["form-data", "npm:4.0.5"],\ + ["proxy-from-env", "npm:1.1.0"]\ + ],\ + "linkType": "HARD"\ + }],\ + ["npm:1.8.4", {\ + "packageLocation": "../.yarn/berry/cache/axios-npm-1.8.4-8cf735eb2b-10.zip/node_modules/axios/",\ + "packageDependencies": [\ + ["axios", "npm:1.8.4"],\ + ["follow-redirects", "virtual:7c78039beb55b34dec6c4b8bde84cdf70316d264d3e514884cde502e208b9a452689b4cc9b6873aa4975d7479ba0bbd7492bda652ef862b26265d0b40b92c9f7#npm:1.15.11"],\ + ["form-data", "npm:4.0.2"],\ + ["proxy-from-env", "npm:1.1.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["axobject-query", [\ ["npm:4.1.0", {\ "packageLocation": "../.yarn/berry/cache/axobject-query-npm-4.1.0-9703554323-10.zip/node_modules/axobject-query/",\ @@ -13544,6 +15725,22 @@ const RAW_RUNTIME_STATE = ["type-is", "npm:2.0.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:2.2.2", {\ + "packageLocation": "../.yarn/berry/cache/body-parser-npm-2.2.2-2aa532c1f4-10.zip/node_modules/body-parser/",\ + "packageDependencies": [\ + ["body-parser", "npm:2.2.2"],\ + ["bytes", "npm:3.1.2"],\ + ["content-type", "npm:1.0.5"],\ + ["debug", "virtual:8f9f68e705e5e2387437494a09768e4d48907a5c6d9a7f936ad101e27ceba5fcd874869555821e64a53ddc41346e840cc97b20fc0035599aeacb184192018c40#npm:4.4.3"],\ + ["http-errors", "npm:2.0.0"],\ + ["iconv-lite", "npm:0.7.2"],\ + ["on-finished", "npm:2.4.1"],\ + ["qs", "npm:6.14.1"],\ + ["raw-body", "npm:3.0.2"],\ + ["type-is", "npm:2.0.1"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["bowser", [\ @@ -14154,6 +16351,17 @@ const RAW_RUNTIME_STATE = ["typedarray", "npm:0.0.6"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:2.0.0", {\ + "packageLocation": "../.yarn/berry/cache/concat-stream-npm-2.0.0-8bb2ad5aa0-10.zip/node_modules/concat-stream/",\ + "packageDependencies": [\ + ["concat-stream", "npm:2.0.0"],\ + ["buffer-from", "npm:1.1.2"],\ + ["inherits", "npm:2.0.4"],\ + ["readable-stream", "npm:3.6.2"],\ + ["typedarray", "npm:0.0.6"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["consola", [\ @@ -14163,6 +16371,13 @@ const RAW_RUNTIME_STATE = ["consola", "npm:2.15.3"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:3.4.2", {\ + "packageLocation": "../.yarn/berry/cache/consola-npm-3.4.2-133d72719e-10.zip/node_modules/consola/",\ + "packageDependencies": [\ + ["consola", "npm:3.4.2"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["constant-case", [\ @@ -14596,6 +16811,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ + ["npm:4.4.3", {\ + "packageLocation": "../.yarn/berry/cache/debug-npm-4.4.3-0105c6123a-10.zip/node_modules/debug/",\ + "packageDependencies": [\ + ["debug", "npm:4.4.3"]\ + ],\ + "linkType": "SOFT"\ + }],\ ["virtual:1b9e2a314c35921e1b14ca2d2c7664f165a5c0f3f02ca1e30357c6546941724b55e5624ce0d5b4790874f2259ae08ae26d9f95d2cdbb84aae50aa451a2a572cd#npm:4.3.7", {\ "packageLocation": "./.yarn/__virtual__/debug-virtual-0a02903db3/2/.yarn/berry/cache/debug-npm-4.3.7-385645adf9-10.zip/node_modules/debug/",\ "packageDependencies": [\ @@ -14624,6 +16846,20 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ + ["virtual:8f9f68e705e5e2387437494a09768e4d48907a5c6d9a7f936ad101e27ceba5fcd874869555821e64a53ddc41346e840cc97b20fc0035599aeacb184192018c40#npm:4.4.3", {\ + "packageLocation": "./.yarn/__virtual__/debug-virtual-1dd0279922/2/.yarn/berry/cache/debug-npm-4.4.3-0105c6123a-10.zip/node_modules/debug/",\ + "packageDependencies": [\ + ["debug", "virtual:8f9f68e705e5e2387437494a09768e4d48907a5c6d9a7f936ad101e27ceba5fcd874869555821e64a53ddc41346e840cc97b20fc0035599aeacb184192018c40#npm:4.4.3"],\ + ["@types/supports-color", null],\ + ["ms", "npm:2.1.3"],\ + ["supports-color", null]\ + ],\ + "packagePeers": [\ + "@types/supports-color",\ + "supports-color"\ + ],\ + "linkType": "HARD"\ + }],\ ["virtual:bcb4d53d88a27dcc946cb93931188757e76f00f8529d01632fd34afc5faa82464443e719ee0e473b65de2ae9b41365dd72260c3c5b40c65a42cbb35035eb02fd#npm:4.4.0", {\ "packageLocation": "./.yarn/__virtual__/debug-virtual-77d152fd5f/2/.yarn/berry/cache/debug-npm-4.4.0-f6efe76023-10.zip/node_modules/debug/",\ "packageDependencies": [\ @@ -14802,6 +17038,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["dequal", [\ + ["npm:2.0.3", {\ + "packageLocation": "../.yarn/berry/cache/dequal-npm-2.0.3-53a630c60e-10.zip/node_modules/dequal/",\ + "packageDependencies": [\ + ["dequal", "npm:2.0.3"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["destroy", [\ ["npm:1.2.0", {\ "packageLocation": "../.yarn/berry/cache/destroy-npm-1.2.0-6a511802e2-10.zip/node_modules/destroy/",\ @@ -14857,6 +17102,14 @@ const RAW_RUNTIME_STATE = ["yaml", "npm:2.7.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:1.3.1", {\ + "packageLocation": "../.yarn/berry/cache/docker-compose-npm-1.3.1-95c36e5cd0-10.zip/node_modules/docker-compose/",\ + "packageDependencies": [\ + ["docker-compose", "npm:1.3.1"],\ + ["yaml", "npm:2.7.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["docker-modem", [\ @@ -14870,6 +17123,17 @@ const RAW_RUNTIME_STATE = ["ssh2", "npm:1.16.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:5.0.6", {\ + "packageLocation": "../.yarn/berry/cache/docker-modem-npm-5.0.6-ba160bac18-10.zip/node_modules/docker-modem/",\ + "packageDependencies": [\ + ["docker-modem", "npm:5.0.6"],\ + ["debug", "virtual:bcb4d53d88a27dcc946cb93931188757e76f00f8529d01632fd34afc5faa82464443e719ee0e473b65de2ae9b41365dd72260c3c5b40c65a42cbb35035eb02fd#npm:4.4.0"],\ + ["readable-stream", "npm:3.6.2"],\ + ["split-ca", "npm:1.0.1"],\ + ["ssh2", "npm:1.17.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["dockerode", [\ @@ -14882,6 +17146,20 @@ const RAW_RUNTIME_STATE = ["tar-fs", "npm:2.0.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:4.0.9", {\ + "packageLocation": "../.yarn/berry/cache/dockerode-npm-4.0.9-89c765574b-10.zip/node_modules/dockerode/",\ + "packageDependencies": [\ + ["dockerode", "npm:4.0.9"],\ + ["@balena/dockerignore", "npm:1.0.2"],\ + ["@grpc/grpc-js", "npm:1.14.3"],\ + ["@grpc/proto-loader", "npm:0.7.13"],\ + ["docker-modem", "npm:5.0.6"],\ + ["protobufjs", "npm:7.5.4"],\ + ["tar-fs", "npm:2.1.4"],\ + ["uuid", "npm:10.0.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["doctrine", [\ @@ -14912,6 +17190,30 @@ const RAW_RUNTIME_STATE = ["dotenv", "npm:16.3.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:16.4.7", {\ + "packageLocation": "../.yarn/berry/cache/dotenv-npm-16.4.7-29680c94f8-10.zip/node_modules/dotenv/",\ + "packageDependencies": [\ + ["dotenv", "npm:16.4.7"]\ + ],\ + "linkType": "HARD"\ + }],\ + ["npm:16.6.1", {\ + "packageLocation": "../.yarn/berry/cache/dotenv-npm-16.6.1-01334288ea-10.zip/node_modules/dotenv/",\ + "packageDependencies": [\ + ["dotenv", "npm:16.6.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["dotenv-expand", [\ + ["npm:12.0.1", {\ + "packageLocation": "../.yarn/berry/cache/dotenv-expand-npm-12.0.1-48a9560774-10.zip/node_modules/dotenv-expand/",\ + "packageDependencies": [\ + ["dotenv-expand", "npm:12.0.1"],\ + ["dotenv", "npm:16.6.1"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["dset", [\ @@ -15270,6 +17572,67 @@ const RAW_RUNTIME_STATE = ["which-typed-array", "npm:1.1.18"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:1.24.1", {\ + "packageLocation": "../.yarn/berry/cache/es-abstract-npm-1.24.1-4503972a58-10.zip/node_modules/es-abstract/",\ + "packageDependencies": [\ + ["es-abstract", "npm:1.24.1"],\ + ["array-buffer-byte-length", "npm:1.0.2"],\ + ["arraybuffer.prototype.slice", "npm:1.0.4"],\ + ["available-typed-arrays", "npm:1.0.7"],\ + ["call-bind", "npm:1.0.8"],\ + ["call-bound", "npm:1.0.4"],\ + ["data-view-buffer", "npm:1.0.2"],\ + ["data-view-byte-length", "npm:1.0.2"],\ + ["data-view-byte-offset", "npm:1.0.1"],\ + ["es-define-property", "npm:1.0.1"],\ + ["es-errors", "npm:1.3.0"],\ + ["es-object-atoms", "npm:1.1.1"],\ + ["es-set-tostringtag", "npm:2.1.0"],\ + ["es-to-primitive", "npm:1.3.0"],\ + ["function.prototype.name", "npm:1.1.8"],\ + ["get-intrinsic", "npm:1.3.0"],\ + ["get-proto", "npm:1.0.1"],\ + ["get-symbol-description", "npm:1.1.0"],\ + ["globalthis", "npm:1.0.4"],\ + ["gopd", "npm:1.2.0"],\ + ["has-property-descriptors", "npm:1.0.2"],\ + ["has-proto", "npm:1.2.0"],\ + ["has-symbols", "npm:1.1.0"],\ + ["hasown", "npm:2.0.2"],\ + ["internal-slot", "npm:1.1.0"],\ + ["is-array-buffer", "npm:3.0.5"],\ + ["is-callable", "npm:1.2.7"],\ + ["is-data-view", "npm:1.0.2"],\ + ["is-negative-zero", "npm:2.0.3"],\ + ["is-regex", "npm:1.2.1"],\ + ["is-set", "npm:2.0.3"],\ + ["is-shared-array-buffer", "npm:1.0.4"],\ + ["is-string", "npm:1.1.1"],\ + ["is-typed-array", "npm:1.1.15"],\ + ["is-weakref", "npm:1.1.1"],\ + ["math-intrinsics", "npm:1.1.0"],\ + ["object-inspect", "npm:1.13.4"],\ + ["object-keys", "npm:1.1.1"],\ + ["object.assign", "npm:4.1.7"],\ + ["own-keys", "npm:1.0.1"],\ + ["regexp.prototype.flags", "npm:1.5.4"],\ + ["safe-array-concat", "npm:1.1.3"],\ + ["safe-push-apply", "npm:1.0.0"],\ + ["safe-regex-test", "npm:1.1.0"],\ + ["set-proto", "npm:1.0.0"],\ + ["stop-iteration-iterator", "npm:1.1.0"],\ + ["string.prototype.trim", "npm:1.2.10"],\ + ["string.prototype.trimend", "npm:1.0.9"],\ + ["string.prototype.trimstart", "npm:1.0.8"],\ + ["typed-array-buffer", "npm:1.0.3"],\ + ["typed-array-byte-length", "npm:1.0.3"],\ + ["typed-array-byte-offset", "npm:1.0.4"],\ + ["typed-array-length", "npm:1.0.7"],\ + ["unbox-primitive", "npm:1.1.0"],\ + ["which-typed-array", "npm:1.1.20"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["es-array-method-boxes-properly", [\ @@ -15326,18 +17689,18 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["es-iterator-helpers", [\ - ["npm:1.2.1", {\ - "packageLocation": "../.yarn/berry/cache/es-iterator-helpers-npm-1.2.1-d00703ecc3-10.zip/node_modules/es-iterator-helpers/",\ + ["npm:1.2.2", {\ + "packageLocation": "../.yarn/berry/cache/es-iterator-helpers-npm-1.2.2-470224dac7-10.zip/node_modules/es-iterator-helpers/",\ "packageDependencies": [\ - ["es-iterator-helpers", "npm:1.2.1"],\ + ["es-iterator-helpers", "npm:1.2.2"],\ ["call-bind", "npm:1.0.8"],\ - ["call-bound", "npm:1.0.3"],\ + ["call-bound", "npm:1.0.4"],\ ["define-properties", "npm:1.2.1"],\ - ["es-abstract", "npm:1.23.9"],\ + ["es-abstract", "npm:1.24.1"],\ ["es-errors", "npm:1.3.0"],\ - ["es-set-tostringtag", "npm:2.0.3"],\ + ["es-set-tostringtag", "npm:2.1.0"],\ ["function-bind", "npm:1.1.2"],\ - ["get-intrinsic", "npm:1.2.7"],\ + ["get-intrinsic", "npm:1.3.0"],\ ["globalthis", "npm:1.0.4"],\ ["gopd", "npm:1.2.0"],\ ["has-property-descriptors", "npm:1.0.2"],\ @@ -15481,11 +17844,11 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:9.17.0", {\ - "packageLocation": "./.yarn/__virtual__/eslint-virtual-9b35022e59/2/.yarn/berry/cache/eslint-npm-9.17.0-75805166d6-10.zip/node_modules/eslint/",\ + ["virtual:1c19a7e3a2811aced06f080c99e5ea3818f86cf7ce96a27ec07d603da973e8893d8b73ec2bc94a9c112a3a5a373a93c210cd287d6320bed288e3c1d952025e27#npm:9.17.0", {\ + "packageLocation": "./.yarn/__virtual__/eslint-virtual-a3f9f1dbea/2/.yarn/berry/cache/eslint-npm-9.17.0-75805166d6-10.zip/node_modules/eslint/",\ "packageDependencies": [\ - ["eslint", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:9.17.0"],\ - ["@eslint-community/eslint-utils", "virtual:9b35022e5955750007de6c79b9d3d32b8c43ff54b3634f45014e3d799848565ba98f7775ebc85a4d288a9c9169e235d7623f2552633b94a895acc94eb4f2781a#npm:4.4.0"],\ + ["eslint", "virtual:1c19a7e3a2811aced06f080c99e5ea3818f86cf7ce96a27ec07d603da973e8893d8b73ec2bc94a9c112a3a5a373a93c210cd287d6320bed288e3c1d952025e27#npm:9.17.0"],\ + ["@eslint-community/eslint-utils", "virtual:a3f9f1dbeaceb5bde9e03416cdce496264d7f95c3a8d87a8fb11b8aebd8243993d8c4e303068adabaff7fa7b9067b7bb65f22795909712212e0f4fdec2df31da#npm:4.4.0"],\ ["@eslint-community/regexpp", "npm:4.12.1"],\ ["@eslint/config-array", "npm:0.19.2"],\ ["@eslint/core", "npm:0.9.1"],\ @@ -15528,11 +17891,11 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:9.22.0", {\ - "packageLocation": "./.yarn/__virtual__/eslint-virtual-a2f2f2e0d0/2/.yarn/berry/cache/eslint-npm-9.22.0-dd7abea6c7-10.zip/node_modules/eslint/",\ + ["virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:9.22.0", {\ + "packageLocation": "./.yarn/__virtual__/eslint-virtual-6cd15e0da0/2/.yarn/berry/cache/eslint-npm-9.22.0-dd7abea6c7-10.zip/node_modules/eslint/",\ "packageDependencies": [\ - ["eslint", "virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:9.22.0"],\ - ["@eslint-community/eslint-utils", "virtual:a2f2f2e0d0ddb2150d3c3218f62b7a851fc7621b5b0c526550c3a2588284072e99762c7f8c8eab0ef534b4d83860bd3e68b355186dd785ec92acd11f24490308#npm:4.4.0"],\ + ["eslint", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:9.22.0"],\ + ["@eslint-community/eslint-utils", "virtual:6cd15e0da0d83124c4ab99d5c2fd004c61d269a3cf92f8a621ded582e9a8bdfba3fa4e568184722e5889d69cf5a82489a7d591ebc4f1d8dff2335e49fe035cfd#npm:4.4.0"],\ ["@eslint-community/regexpp", "npm:4.12.1"],\ ["@eslint/config-array", "npm:0.19.2"],\ ["@eslint/config-helpers", "npm:0.1.0"],\ @@ -15585,12 +17948,12 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:2e70bed2b07f6a10b25d96f96fd779655bd303673ad8b32a881da0f3688a49efb67ee92b45cf4de7e3ea9902299ce21d45c3838c69bf19e96c6cbc7853217bce#npm:0.5.1", {\ - "packageLocation": "./.yarn/__virtual__/eslint-compat-utils-virtual-1b97ca8fba/2/.yarn/berry/cache/eslint-compat-utils-npm-0.5.1-f1f8ade49a-10.zip/node_modules/eslint-compat-utils/",\ + ["virtual:f4adb7cd352fca4015bc8469173cfccd9320070638c819da41870c424f569fb1a257f59f73dc8ec964eabfd61b027cea036472b4956596489cf0a33728dd9490#npm:0.5.1", {\ + "packageLocation": "./.yarn/__virtual__/eslint-compat-utils-virtual-2d26a6f66b/2/.yarn/berry/cache/eslint-compat-utils-npm-0.5.1-f1f8ade49a-10.zip/node_modules/eslint-compat-utils/",\ "packageDependencies": [\ - ["eslint-compat-utils", "virtual:2e70bed2b07f6a10b25d96f96fd779655bd303673ad8b32a881da0f3688a49efb67ee92b45cf4de7e3ea9902299ce21d45c3838c69bf19e96c6cbc7853217bce#npm:0.5.1"],\ + ["eslint-compat-utils", "virtual:f4adb7cd352fca4015bc8469173cfccd9320070638c819da41870c424f569fb1a257f59f73dc8ec964eabfd61b027cea036472b4956596489cf0a33728dd9490#npm:0.5.1"],\ ["@types/eslint", null],\ - ["eslint", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:9.17.0"],\ + ["eslint", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:9.22.0"],\ ["semver", "npm:7.6.3"]\ ],\ "packagePeers": [\ @@ -15620,18 +17983,18 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:0c44be15405856a72961cedea90ad5033dc7ebac4e2c471480a422c5acc3f6457fe984b446b8e028559022e17cba4dd6799b5f80d24a2caf33c8c59bb0d54f3f#npm:2.12.0", {\ - "packageLocation": "./.yarn/__virtual__/eslint-module-utils-virtual-722c418d8a/2/.yarn/berry/cache/eslint-module-utils-npm-2.12.0-120238a0bc-10.zip/node_modules/eslint-module-utils/",\ + ["virtual:fc0e3b325d22d82cf507393e6147c957ba0beea0cdd942a08ba6f0234e9cdd7e0ec95079b30c15631295ea319e90b9ee6524de0eb1a0116f241f2b668b44fe30#npm:2.12.0", {\ + "packageLocation": "./.yarn/__virtual__/eslint-module-utils-virtual-3addef51b1/2/.yarn/berry/cache/eslint-module-utils-npm-2.12.0-120238a0bc-10.zip/node_modules/eslint-module-utils/",\ "packageDependencies": [\ - ["eslint-module-utils", "virtual:0c44be15405856a72961cedea90ad5033dc7ebac4e2c471480a422c5acc3f6457fe984b446b8e028559022e17cba4dd6799b5f80d24a2caf33c8c59bb0d54f3f#npm:2.12.0"],\ + ["eslint-module-utils", "virtual:fc0e3b325d22d82cf507393e6147c957ba0beea0cdd942a08ba6f0234e9cdd7e0ec95079b30c15631295ea319e90b9ee6524de0eb1a0116f241f2b668b44fe30#npm:2.12.0"],\ ["@types/eslint", null],\ ["@types/eslint-import-resolver-node", null],\ ["@types/eslint-import-resolver-typescript", null],\ ["@types/eslint-import-resolver-webpack", null],\ ["@types/typescript-eslint__parser", null],\ - ["@typescript-eslint/parser", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:8.18.1"],\ + ["@typescript-eslint/parser", "virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:8.48.1"],\ ["debug", "virtual:2a426afc4b2eef43db12a540d29c2b5476640459bfcd5c24f86bb401cf8cce97e63bd81794d206a5643057e7f662643afd5ce3dfc4d4bfd8e706006c6309c5fa#npm:3.2.7"],\ - ["eslint", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:9.17.0"],\ + ["eslint", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:9.22.0"],\ ["eslint-import-resolver-node", "npm:0.3.9"],\ ["eslint-import-resolver-typescript", null],\ ["eslint-import-resolver-webpack", null]\ @@ -15659,15 +18022,15 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:3845e10ebb63e28d377e52f0845ed6aabb3e7b7fcc6c98d7c889632acf8a2aa59a648331481a4e15fd8595f478388ca052078522aa5912cda0588b789b9b5792#npm:7.8.0", {\ - "packageLocation": "./.yarn/__virtual__/eslint-plugin-es-x-virtual-2e70bed2b0/2/.yarn/berry/cache/eslint-plugin-es-x-npm-7.8.0-8237bd972e-10.zip/node_modules/eslint-plugin-es-x/",\ + ["virtual:2b08acdba847b2e51f7d8e8d193e70a7e6d0a8cd76c48b6609dcd402bbbe047f9f50a4d6ca4cfad08983ffb71ccc246a8176db7f1f9ecdb3538fa24bc43f6a0e#npm:7.8.0", {\ + "packageLocation": "./.yarn/__virtual__/eslint-plugin-es-x-virtual-f4adb7cd35/2/.yarn/berry/cache/eslint-plugin-es-x-npm-7.8.0-8237bd972e-10.zip/node_modules/eslint-plugin-es-x/",\ "packageDependencies": [\ - ["eslint-plugin-es-x", "virtual:3845e10ebb63e28d377e52f0845ed6aabb3e7b7fcc6c98d7c889632acf8a2aa59a648331481a4e15fd8595f478388ca052078522aa5912cda0588b789b9b5792#npm:7.8.0"],\ - ["@eslint-community/eslint-utils", "virtual:4f16fa84a28b152d58b6d9462c39d6dacc441e843c0cce6ea1bd4879b10c5270eac61c50d6e25a53c15318dea029c137c579fd6bb0fa4e8325947215699e9b31#npm:4.4.1"],\ + ["eslint-plugin-es-x", "virtual:2b08acdba847b2e51f7d8e8d193e70a7e6d0a8cd76c48b6609dcd402bbbe047f9f50a4d6ca4cfad08983ffb71ccc246a8176db7f1f9ecdb3538fa24bc43f6a0e#npm:7.8.0"],\ + ["@eslint-community/eslint-utils", "virtual:f4adb7cd352fca4015bc8469173cfccd9320070638c819da41870c424f569fb1a257f59f73dc8ec964eabfd61b027cea036472b4956596489cf0a33728dd9490#npm:4.4.1"],\ ["@eslint-community/regexpp", "npm:4.12.1"],\ ["@types/eslint", null],\ - ["eslint", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:9.17.0"],\ - ["eslint-compat-utils", "virtual:2e70bed2b07f6a10b25d96f96fd779655bd303673ad8b32a881da0f3688a49efb67ee92b45cf4de7e3ea9902299ce21d45c3838c69bf19e96c6cbc7853217bce#npm:0.5.1"]\ + ["eslint", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:9.22.0"],\ + ["eslint-compat-utils", "virtual:f4adb7cd352fca4015bc8469173cfccd9320070638c819da41870c424f569fb1a257f59f73dc8ec964eabfd61b027cea036472b4956596489cf0a33728dd9490#npm:0.5.1"]\ ],\ "packagePeers": [\ "@types/eslint",\ @@ -15684,23 +18047,23 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:2.31.0", {\ - "packageLocation": "./.yarn/__virtual__/eslint-plugin-import-virtual-0c44be1540/2/.yarn/berry/cache/eslint-plugin-import-npm-2.31.0-3c7ca668cd-10.zip/node_modules/eslint-plugin-import/",\ + ["virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:2.31.0", {\ + "packageLocation": "./.yarn/__virtual__/eslint-plugin-import-virtual-fc0e3b325d/2/.yarn/berry/cache/eslint-plugin-import-npm-2.31.0-3c7ca668cd-10.zip/node_modules/eslint-plugin-import/",\ "packageDependencies": [\ - ["eslint-plugin-import", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:2.31.0"],\ + ["eslint-plugin-import", "virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:2.31.0"],\ ["@rtsao/scc", "npm:1.1.0"],\ ["@types/eslint", null],\ ["@types/typescript-eslint__parser", null],\ - ["@typescript-eslint/parser", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:8.18.1"],\ + ["@typescript-eslint/parser", "virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:8.48.1"],\ ["array-includes", "npm:3.1.8"],\ ["array.prototype.findlastindex", "npm:1.2.5"],\ ["array.prototype.flat", "npm:1.3.2"],\ ["array.prototype.flatmap", "npm:1.3.2"],\ ["debug", "virtual:2a426afc4b2eef43db12a540d29c2b5476640459bfcd5c24f86bb401cf8cce97e63bd81794d206a5643057e7f662643afd5ce3dfc4d4bfd8e706006c6309c5fa#npm:3.2.7"],\ ["doctrine", "npm:2.1.0"],\ - ["eslint", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:9.17.0"],\ + ["eslint", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:9.22.0"],\ ["eslint-import-resolver-node", "npm:0.3.9"],\ - ["eslint-module-utils", "virtual:0c44be15405856a72961cedea90ad5033dc7ebac4e2c471480a422c5acc3f6457fe984b446b8e028559022e17cba4dd6799b5f80d24a2caf33c8c59bb0d54f3f#npm:2.12.0"],\ + ["eslint-module-utils", "virtual:fc0e3b325d22d82cf507393e6147c957ba0beea0cdd942a08ba6f0234e9cdd7e0ec95079b30c15631295ea319e90b9ee6524de0eb1a0116f241f2b668b44fe30#npm:2.12.0"],\ ["hasown", "npm:2.0.2"],\ ["is-core-module", "npm:2.15.1"],\ ["is-glob", "npm:4.0.3"],\ @@ -15729,10 +18092,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:6.10.2", {\ - "packageLocation": "./.yarn/__virtual__/eslint-plugin-jsx-a11y-virtual-7fb38a257a/2/.yarn/berry/cache/eslint-plugin-jsx-a11y-npm-6.10.2-23afcd8d2e-10.zip/node_modules/eslint-plugin-jsx-a11y/",\ + ["virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:6.10.2", {\ + "packageLocation": "./.yarn/__virtual__/eslint-plugin-jsx-a11y-virtual-89c3cb27b5/2/.yarn/berry/cache/eslint-plugin-jsx-a11y-npm-6.10.2-23afcd8d2e-10.zip/node_modules/eslint-plugin-jsx-a11y/",\ "packageDependencies": [\ - ["eslint-plugin-jsx-a11y", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:6.10.2"],\ + ["eslint-plugin-jsx-a11y", "virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:6.10.2"],\ ["@types/eslint", null],\ ["aria-query", "npm:5.3.2"],\ ["array-includes", "npm:3.1.8"],\ @@ -15742,7 +18105,7 @@ const RAW_RUNTIME_STATE = ["axobject-query", "npm:4.1.0"],\ ["damerau-levenshtein", "npm:1.0.8"],\ ["emoji-regex", "npm:9.2.2"],\ - ["eslint", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:9.17.0"],\ + ["eslint", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:9.22.0"],\ ["hasown", "npm:2.0.2"],\ ["jsx-ast-utils", "npm:3.3.5"],\ ["language-tags", "npm:1.0.9"],\ @@ -15759,27 +18122,28 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["eslint-plugin-n", [\ - ["npm:17.15.0", {\ - "packageLocation": "../.yarn/berry/cache/eslint-plugin-n-npm-17.15.0-298020b0ed-10.zip/node_modules/eslint-plugin-n/",\ + ["npm:17.23.1", {\ + "packageLocation": "../.yarn/berry/cache/eslint-plugin-n-npm-17.23.1-0a973aa61c-10.zip/node_modules/eslint-plugin-n/",\ "packageDependencies": [\ - ["eslint-plugin-n", "npm:17.15.0"]\ + ["eslint-plugin-n", "npm:17.23.1"]\ ],\ "linkType": "SOFT"\ }],\ - ["virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:17.15.0", {\ - "packageLocation": "./.yarn/__virtual__/eslint-plugin-n-virtual-3845e10ebb/2/.yarn/berry/cache/eslint-plugin-n-npm-17.15.0-298020b0ed-10.zip/node_modules/eslint-plugin-n/",\ + ["virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:17.23.1", {\ + "packageLocation": "./.yarn/__virtual__/eslint-plugin-n-virtual-2b08acdba8/2/.yarn/berry/cache/eslint-plugin-n-npm-17.23.1-0a973aa61c-10.zip/node_modules/eslint-plugin-n/",\ "packageDependencies": [\ - ["eslint-plugin-n", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:17.15.0"],\ - ["@eslint-community/eslint-utils", "virtual:4f16fa84a28b152d58b6d9462c39d6dacc441e843c0cce6ea1bd4879b10c5270eac61c50d6e25a53c15318dea029c137c579fd6bb0fa4e8325947215699e9b31#npm:4.4.1"],\ + ["eslint-plugin-n", "virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:17.23.1"],\ + ["@eslint-community/eslint-utils", "virtual:a5f4f6c17ff20a4ad973d63a15f09f1395a67972e95f8889bfc4d0596cf00c49f2f8fdb73099b1293fc366d89f5d354705040fc659e069bf733d05a57042aa4b#npm:4.9.1"],\ ["@types/eslint", null],\ ["enhanced-resolve", "npm:5.18.1"],\ - ["eslint", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:9.17.0"],\ - ["eslint-plugin-es-x", "virtual:3845e10ebb63e28d377e52f0845ed6aabb3e7b7fcc6c98d7c889632acf8a2aa59a648331481a4e15fd8595f478388ca052078522aa5912cda0588b789b9b5792#npm:7.8.0"],\ + ["eslint", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:9.22.0"],\ + ["eslint-plugin-es-x", "virtual:2b08acdba847b2e51f7d8e8d193e70a7e6d0a8cd76c48b6609dcd402bbbe047f9f50a4d6ca4cfad08983ffb71ccc246a8176db7f1f9ecdb3538fa24bc43f6a0e#npm:7.8.0"],\ ["get-tsconfig", "npm:4.10.0"],\ ["globals", "npm:15.14.0"],\ + ["globrex", "npm:0.1.2"],\ ["ignore", "npm:5.3.2"],\ - ["minimatch", "npm:9.0.5"],\ - ["semver", "npm:7.7.1"]\ + ["semver", "npm:7.7.1"],\ + ["ts-declaration-location", "virtual:2b08acdba847b2e51f7d8e8d193e70a7e6d0a8cd76c48b6609dcd402bbbe047f9f50a4d6ca4cfad08983ffb71ccc246a8176db7f1f9ecdb3538fa24bc43f6a0e#npm:1.0.7"]\ ],\ "packagePeers": [\ "@types/eslint",\ @@ -15789,25 +18153,25 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["eslint-plugin-prettier", [\ - ["npm:5.2.1", {\ - "packageLocation": "../.yarn/berry/cache/eslint-plugin-prettier-npm-5.2.1-7057756a8d-10.zip/node_modules/eslint-plugin-prettier/",\ + ["npm:5.5.4", {\ + "packageLocation": "../.yarn/berry/cache/eslint-plugin-prettier-npm-5.5.4-401c52477f-10.zip/node_modules/eslint-plugin-prettier/",\ "packageDependencies": [\ - ["eslint-plugin-prettier", "npm:5.2.1"]\ + ["eslint-plugin-prettier", "npm:5.5.4"]\ ],\ "linkType": "SOFT"\ }],\ - ["virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:5.2.1", {\ - "packageLocation": "./.yarn/__virtual__/eslint-plugin-prettier-virtual-23a4eebb17/2/.yarn/berry/cache/eslint-plugin-prettier-npm-5.2.1-7057756a8d-10.zip/node_modules/eslint-plugin-prettier/",\ + ["virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:5.5.4", {\ + "packageLocation": "./.yarn/__virtual__/eslint-plugin-prettier-virtual-85288dbdb9/2/.yarn/berry/cache/eslint-plugin-prettier-npm-5.5.4-401c52477f-10.zip/node_modules/eslint-plugin-prettier/",\ "packageDependencies": [\ - ["eslint-plugin-prettier", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:5.2.1"],\ + ["eslint-plugin-prettier", "virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:5.5.4"],\ ["@types/eslint", null],\ ["@types/eslint-config-prettier", null],\ ["@types/prettier", null],\ - ["eslint", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:9.17.0"],\ + ["eslint", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:9.22.0"],\ ["eslint-config-prettier", null],\ - ["prettier", "npm:3.4.2"],\ + ["prettier", "npm:3.5.3"],\ ["prettier-linter-helpers", "npm:1.0.0"],\ - ["synckit", "npm:0.9.2"]\ + ["synckit", "npm:0.11.12"]\ ],\ "packagePeers": [\ "@types/eslint-config-prettier",\ @@ -15821,36 +18185,36 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["eslint-plugin-react", [\ - ["npm:7.37.2", {\ - "packageLocation": "../.yarn/berry/cache/eslint-plugin-react-npm-7.37.2-9fdf577e3b-10.zip/node_modules/eslint-plugin-react/",\ + ["npm:7.37.5", {\ + "packageLocation": "../.yarn/berry/cache/eslint-plugin-react-npm-7.37.5-d03f6b6543-10.zip/node_modules/eslint-plugin-react/",\ "packageDependencies": [\ - ["eslint-plugin-react", "npm:7.37.2"]\ + ["eslint-plugin-react", "npm:7.37.5"]\ ],\ "linkType": "SOFT"\ }],\ - ["virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:7.37.2", {\ - "packageLocation": "./.yarn/__virtual__/eslint-plugin-react-virtual-0f607daf27/2/.yarn/berry/cache/eslint-plugin-react-npm-7.37.2-9fdf577e3b-10.zip/node_modules/eslint-plugin-react/",\ + ["virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:7.37.5", {\ + "packageLocation": "./.yarn/__virtual__/eslint-plugin-react-virtual-e67bf3b5a4/2/.yarn/berry/cache/eslint-plugin-react-npm-7.37.5-d03f6b6543-10.zip/node_modules/eslint-plugin-react/",\ "packageDependencies": [\ - ["eslint-plugin-react", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:7.37.2"],\ + ["eslint-plugin-react", "virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:7.37.5"],\ ["@types/eslint", null],\ ["array-includes", "npm:3.1.8"],\ ["array.prototype.findlast", "npm:1.2.5"],\ - ["array.prototype.flatmap", "npm:1.3.2"],\ + ["array.prototype.flatmap", "npm:1.3.3"],\ ["array.prototype.tosorted", "npm:1.1.4"],\ ["doctrine", "npm:2.1.0"],\ - ["es-iterator-helpers", "npm:1.2.1"],\ - ["eslint", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:9.17.0"],\ + ["es-iterator-helpers", "npm:1.2.2"],\ + ["eslint", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:9.22.0"],\ ["estraverse", "npm:5.3.0"],\ ["hasown", "npm:2.0.2"],\ ["jsx-ast-utils", "npm:3.3.5"],\ ["minimatch", "npm:3.1.2"],\ - ["object.entries", "npm:1.1.8"],\ + ["object.entries", "npm:1.1.9"],\ ["object.fromentries", "npm:2.0.8"],\ - ["object.values", "npm:1.2.0"],\ + ["object.values", "npm:1.2.1"],\ ["prop-types", "npm:15.8.1"],\ ["resolve", "patch:resolve@npm%3A2.0.0-next.5#optional!builtin::version=2.0.0-next.5&hash=c3c19d"],\ ["semver", "npm:6.3.1"],\ - ["string.prototype.matchall", "npm:4.0.11"],\ + ["string.prototype.matchall", "npm:4.0.12"],\ ["string.prototype.repeat", "npm:1.0.0"]\ ],\ "packagePeers": [\ @@ -15860,20 +18224,53 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["eslint-plugin-react-compiler", [\ + ["npm:19.1.0-rc.2", {\ + "packageLocation": "../.yarn/berry/cache/eslint-plugin-react-compiler-npm-19.1.0-rc.2-2f779f2f58-10.zip/node_modules/eslint-plugin-react-compiler/",\ + "packageDependencies": [\ + ["eslint-plugin-react-compiler", "npm:19.1.0-rc.2"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:19.1.0-rc.2", {\ + "packageLocation": "./.yarn/__virtual__/eslint-plugin-react-compiler-virtual-f92407d756/2/.yarn/berry/cache/eslint-plugin-react-compiler-npm-19.1.0-rc.2-2f779f2f58-10.zip/node_modules/eslint-plugin-react-compiler/",\ + "packageDependencies": [\ + ["eslint-plugin-react-compiler", "virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:19.1.0-rc.2"],\ + ["@babel/core", "npm:7.29.0"],\ + ["@babel/parser", "npm:7.29.0"],\ + ["@babel/plugin-proposal-private-methods", "virtual:f92407d75612b8966eb60fcfabd165b021daf4b552e5c170e145f30e99600b2bf297dcf406d1d7031de0e5ac5927743fc82a162569380344453bce0e9b56640b#npm:7.18.6"],\ + ["@types/eslint", null],\ + ["eslint", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:9.22.0"],\ + ["hermes-parser", "npm:0.25.1"],\ + ["zod", "npm:3.25.76"],\ + ["zod-validation-error", "virtual:f92407d75612b8966eb60fcfabd165b021daf4b552e5c170e145f30e99600b2bf297dcf406d1d7031de0e5ac5927743fc82a162569380344453bce0e9b56640b#npm:3.5.4"]\ + ],\ + "packagePeers": [\ + "@types/eslint",\ + "eslint"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["eslint-plugin-react-hooks", [\ - ["npm:5.1.0", {\ - "packageLocation": "../.yarn/berry/cache/eslint-plugin-react-hooks-npm-5.1.0-cc261f8c02-10.zip/node_modules/eslint-plugin-react-hooks/",\ + ["npm:7.0.1", {\ + "packageLocation": "../.yarn/berry/cache/eslint-plugin-react-hooks-npm-7.0.1-218b8cae26-10.zip/node_modules/eslint-plugin-react-hooks/",\ "packageDependencies": [\ - ["eslint-plugin-react-hooks", "npm:5.1.0"]\ + ["eslint-plugin-react-hooks", "npm:7.0.1"]\ ],\ "linkType": "SOFT"\ }],\ - ["virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:5.1.0", {\ - "packageLocation": "./.yarn/__virtual__/eslint-plugin-react-hooks-virtual-c44c321f7c/2/.yarn/berry/cache/eslint-plugin-react-hooks-npm-5.1.0-cc261f8c02-10.zip/node_modules/eslint-plugin-react-hooks/",\ + ["virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:7.0.1", {\ + "packageLocation": "./.yarn/__virtual__/eslint-plugin-react-hooks-virtual-fd92e252f1/2/.yarn/berry/cache/eslint-plugin-react-hooks-npm-7.0.1-218b8cae26-10.zip/node_modules/eslint-plugin-react-hooks/",\ "packageDependencies": [\ - ["eslint-plugin-react-hooks", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:5.1.0"],\ + ["eslint-plugin-react-hooks", "virtual:9f566bfcb4b661667ddc597fd6771bc3b40b64cdb8f2103085b386e40dc6419bad77b7287a6267e48b1f55307c88429aa36da6e4d5df1d52f0c32d9f632f3c8f#npm:7.0.1"],\ + ["@babel/core", "npm:7.29.0"],\ + ["@babel/parser", "npm:7.29.0"],\ ["@types/eslint", null],\ - ["eslint", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:9.17.0"]\ + ["eslint", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:9.22.0"],\ + ["hermes-parser", "npm:0.25.1"],\ + ["zod", "npm:4.3.6"],\ + ["zod-validation-error", "virtual:fd92e252f103e302ff22da5bb9184306b83b28f14a42655b589131a17b0658affbda3caa0be45ffd868b75a84d83f829bafa9eefd0380e7c5eb953c1d330a757#npm:4.0.2"]\ ],\ "packagePeers": [\ "@types/eslint",\ @@ -15935,6 +18332,13 @@ const RAW_RUNTIME_STATE = ["eslint-visitor-keys", "npm:4.2.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:4.2.1", {\ + "packageLocation": "../.yarn/berry/cache/eslint-visitor-keys-npm-4.2.1-435d5be22a-10.zip/node_modules/eslint-visitor-keys/",\ + "packageDependencies": [\ + ["eslint-visitor-keys", "npm:4.2.1"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["esm", [\ @@ -16125,6 +18529,40 @@ const RAW_RUNTIME_STATE = ["vary", "npm:1.1.2"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:5.1.0", {\ + "packageLocation": "../.yarn/berry/cache/express-npm-5.1.0-e44442bf7d-10.zip/node_modules/express/",\ + "packageDependencies": [\ + ["express", "npm:5.1.0"],\ + ["accepts", "npm:2.0.0"],\ + ["body-parser", "npm:2.2.2"],\ + ["content-disposition", "npm:1.0.0"],\ + ["content-type", "npm:1.0.5"],\ + ["cookie", "npm:0.7.2"],\ + ["cookie-signature", "npm:1.2.2"],\ + ["debug", "virtual:bcb4d53d88a27dcc946cb93931188757e76f00f8529d01632fd34afc5faa82464443e719ee0e473b65de2ae9b41365dd72260c3c5b40c65a42cbb35035eb02fd#npm:4.4.0"],\ + ["encodeurl", "npm:2.0.0"],\ + ["escape-html", "npm:1.0.3"],\ + ["etag", "npm:1.8.1"],\ + ["finalhandler", "npm:2.1.1"],\ + ["fresh", "npm:2.0.0"],\ + ["http-errors", "npm:2.0.0"],\ + ["merge-descriptors", "npm:2.0.0"],\ + ["mime-types", "npm:3.0.0"],\ + ["on-finished", "npm:2.4.1"],\ + ["once", "npm:1.4.0"],\ + ["parseurl", "npm:1.3.3"],\ + ["proxy-addr", "npm:2.0.7"],\ + ["qs", "npm:6.14.0"],\ + ["range-parser", "npm:1.2.1"],\ + ["router", "npm:2.2.0"],\ + ["send", "npm:1.1.0"],\ + ["serve-static", "npm:2.2.1"],\ + ["statuses", "npm:2.0.1"],\ + ["type-is", "npm:2.0.1"],\ + ["vary", "npm:1.1.2"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["extend", [\ @@ -16263,13 +18701,26 @@ const RAW_RUNTIME_STATE = ["fast-json-stringify", "npm:5.16.1"],\ ["@fastify/merge-json-schemas", "npm:0.1.1"],\ ["ajv", "npm:8.17.1"],\ - ["ajv-formats", "virtual:b77a4b7f73d4c1c7fc5db0545a0d044d8a896eef45770425de4eca6250a6df8d78418f89ee9ccfeb122ae53a4313d2f557b436a2a9f9700b5990125d3fbb8fe8#npm:3.0.1"],\ + ["ajv-formats", "virtual:42f2ffad249aa2355efc66861bbe173c02c83bb6ca1ed15de3d473bfddb2fb9d5da37115688b1cb010c633a945fbceedfea5b67e789b18c12fd1a0349e4ede12#npm:3.0.1"],\ ["fast-deep-equal", "npm:3.1.3"],\ ["fast-uri", "npm:2.4.0"],\ ["json-schema-ref-resolver", "npm:1.0.1"],\ ["rfdc", "npm:1.4.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:6.2.0", {\ + "packageLocation": "../.yarn/berry/cache/fast-json-stringify-npm-6.2.0-2616acad75-10.zip/node_modules/fast-json-stringify/",\ + "packageDependencies": [\ + ["fast-json-stringify", "npm:6.2.0"],\ + ["@fastify/merge-json-schemas", "npm:0.2.1"],\ + ["ajv", "npm:8.17.1"],\ + ["ajv-formats", "virtual:42f2ffad249aa2355efc66861bbe173c02c83bb6ca1ed15de3d473bfddb2fb9d5da37115688b1cb010c633a945fbceedfea5b67e789b18c12fd1a0349e4ede12#npm:3.0.1"],\ + ["fast-uri", "npm:3.1.0"],\ + ["json-schema-ref-resolver", "npm:3.0.0"],\ + ["rfdc", "npm:1.4.1"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["fast-levenshtein", [\ @@ -16323,6 +18774,13 @@ const RAW_RUNTIME_STATE = ["fast-uri", "npm:3.0.6"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:3.1.0", {\ + "packageLocation": "../.yarn/berry/cache/fast-uri-npm-3.1.0-57fa0b3f3c-10.zip/node_modules/fast-uri/",\ + "packageDependencies": [\ + ["fast-uri", "npm:3.1.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["fast-xml-parser", [\ @@ -16366,6 +18824,28 @@ const RAW_RUNTIME_STATE = ["toad-cache", "npm:3.7.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:5.4.0", {\ + "packageLocation": "../.yarn/berry/cache/fastify-npm-5.4.0-2bcf8f1bd7-10.zip/node_modules/fastify/",\ + "packageDependencies": [\ + ["fastify", "npm:5.4.0"],\ + ["@fastify/ajv-compiler", "npm:4.0.5"],\ + ["@fastify/error", "npm:4.2.0"],\ + ["@fastify/fast-json-stringify-compiler", "npm:5.0.3"],\ + ["@fastify/proxy-addr", "npm:5.1.0"],\ + ["abstract-logging", "npm:2.0.1"],\ + ["avvio", "npm:9.1.0"],\ + ["fast-json-stringify", "npm:6.2.0"],\ + ["find-my-way", "npm:9.4.0"],\ + ["light-my-request", "npm:6.6.0"],\ + ["pino", "npm:9.6.0"],\ + ["process-warning", "npm:5.0.0"],\ + ["rfdc", "npm:1.4.1"],\ + ["secure-json-parse", "npm:4.1.0"],\ + ["semver", "npm:7.7.1"],\ + ["toad-cache", "npm:3.7.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["fastify-plugin", [\ @@ -16402,6 +18882,28 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["fdir", [\ + ["npm:6.5.0", {\ + "packageLocation": "../.yarn/berry/cache/fdir-npm-6.5.0-8814a0dec7-10.zip/node_modules/fdir/",\ + "packageDependencies": [\ + ["fdir", "npm:6.5.0"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:0e783aadbd2b4b8e6f6056033c0b290501892d23bc7c5dad5477e00e48ad8bd3e4434c3962a52dd75a58e06dbb7218094a494bac954ef2f7f6fdb65d9717e5f4#npm:6.5.0", {\ + "packageLocation": "./.yarn/__virtual__/fdir-virtual-abd4ab2082/2/.yarn/berry/cache/fdir-npm-6.5.0-8814a0dec7-10.zip/node_modules/fdir/",\ + "packageDependencies": [\ + ["fdir", "virtual:0e783aadbd2b4b8e6f6056033c0b290501892d23bc7c5dad5477e00e48ad8bd3e4434c3962a52dd75a58e06dbb7218094a494bac954ef2f7f6fdb65d9717e5f4#npm:6.5.0"],\ + ["@types/picomatch", null],\ + ["picomatch", "npm:4.0.3"]\ + ],\ + "packagePeers": [\ + "@types/picomatch",\ + "picomatch"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["fetch-blob", [\ ["npm:3.2.0", {\ "packageLocation": "../.yarn/berry/cache/fetch-blob-npm-3.2.0-28e01becfc-10.zip/node_modules/fetch-blob/",\ @@ -16424,6 +18926,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["fflate", [\ + ["npm:0.8.2", {\ + "packageLocation": "../.yarn/berry/cache/fflate-npm-0.8.2-5129f303f0-10.zip/node_modules/fflate/",\ + "packageDependencies": [\ + ["fflate", "npm:0.8.2"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["figlet", [\ ["npm:1.8.0", {\ "packageLocation": "../.yarn/berry/cache/figlet-npm-1.8.0-5320706e2a-10.zip/node_modules/figlet/",\ @@ -16451,10 +18962,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:e2585c7171b12c5583c4eecb512d1a4e014083ea0966117c2a782f5e891f98c2fd419f9b5f70bee043816000ba9cc5c25620b7a185ade5f963329b6435a82eb4#npm:6.2.0", {\ - "packageLocation": "./.yarn/__virtual__/file-loader-virtual-f99f81ae15/2/.yarn/berry/cache/file-loader-npm-6.2.0-4b02fd87d5-10.zip/node_modules/file-loader/",\ + ["virtual:5cfbb25cf845bfd9f59f849f3f0c942951069a339f5f579916159b49f325ee0bda72493e2f05c47b6d7155cf27d5c7644a3db999d5fc59fb4d6fe30c73857a57#npm:6.2.0", {\ + "packageLocation": "./.yarn/__virtual__/file-loader-virtual-9b4227f0ad/2/.yarn/berry/cache/file-loader-npm-6.2.0-4b02fd87d5-10.zip/node_modules/file-loader/",\ "packageDependencies": [\ - ["file-loader", "virtual:e2585c7171b12c5583c4eecb512d1a4e014083ea0966117c2a782f5e891f98c2fd419f9b5f70bee043816000ba9cc5c25620b7a185ade5f963329b6435a82eb4#npm:6.2.0"],\ + ["file-loader", "virtual:5cfbb25cf845bfd9f59f849f3f0c942951069a339f5f579916159b49f325ee0bda72493e2f05c47b6d7155cf27d5c7644a3db999d5fc59fb4d6fe30c73857a57#npm:6.2.0"],\ ["@types/webpack", null],\ ["loader-utils", "npm:2.0.4"],\ ["schema-utils", "npm:3.3.0"],\ @@ -16467,6 +18978,19 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["file-type", [\ + ["npm:21.0.0", {\ + "packageLocation": "../.yarn/berry/cache/file-type-npm-21.0.0-f7ab224097-10.zip/node_modules/file-type/",\ + "packageDependencies": [\ + ["file-type", "npm:21.0.0"],\ + ["@tokenizer/inflate", "npm:0.2.7"],\ + ["strtok3", "npm:10.3.4"],\ + ["token-types", "npm:6.1.2"],\ + ["uint8array-extras", "npm:1.5.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["file-uri-to-path", [\ ["npm:2.0.0", {\ "packageLocation": "../.yarn/berry/cache/file-uri-to-path-npm-2.0.0-667f38da3a-10.zip/node_modules/file-uri-to-path/",\ @@ -16513,6 +19037,19 @@ const RAW_RUNTIME_STATE = ["statuses", "npm:2.0.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:2.1.1", {\ + "packageLocation": "../.yarn/berry/cache/finalhandler-npm-2.1.1-aff8faac6c-10.zip/node_modules/finalhandler/",\ + "packageDependencies": [\ + ["finalhandler", "npm:2.1.1"],\ + ["debug", "virtual:bcb4d53d88a27dcc946cb93931188757e76f00f8529d01632fd34afc5faa82464443e719ee0e473b65de2ae9b41365dd72260c3c5b40c65a42cbb35035eb02fd#npm:4.4.0"],\ + ["encodeurl", "npm:2.0.0"],\ + ["escape-html", "npm:1.0.3"],\ + ["on-finished", "npm:2.4.1"],\ + ["parseurl", "npm:1.3.3"],\ + ["statuses", "npm:2.0.1"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["find-my-way", [\ @@ -16525,6 +19062,16 @@ const RAW_RUNTIME_STATE = ["safe-regex2", "npm:3.1.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:9.4.0", {\ + "packageLocation": "../.yarn/berry/cache/find-my-way-npm-9.4.0-0020d8a7be-10.zip/node_modules/find-my-way/",\ + "packageDependencies": [\ + ["find-my-way", "npm:9.4.0"],\ + ["fast-deep-equal", "npm:3.1.3"],\ + ["fast-querystring", "npm:1.1.2"],\ + ["safe-regex2", "npm:5.0.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["find-up", [\ @@ -16567,6 +19114,28 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["follow-redirects", [\ + ["npm:1.15.11", {\ + "packageLocation": "../.yarn/berry/cache/follow-redirects-npm-1.15.11-ae7b2db266-10.zip/node_modules/follow-redirects/",\ + "packageDependencies": [\ + ["follow-redirects", "npm:1.15.11"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:7c78039beb55b34dec6c4b8bde84cdf70316d264d3e514884cde502e208b9a452689b4cc9b6873aa4975d7479ba0bbd7492bda652ef862b26265d0b40b92c9f7#npm:1.15.11", {\ + "packageLocation": "./.yarn/__virtual__/follow-redirects-virtual-3d5eefa0a3/2/.yarn/berry/cache/follow-redirects-npm-1.15.11-ae7b2db266-10.zip/node_modules/follow-redirects/",\ + "packageDependencies": [\ + ["follow-redirects", "virtual:7c78039beb55b34dec6c4b8bde84cdf70316d264d3e514884cde502e208b9a452689b4cc9b6873aa4975d7479ba0bbd7492bda652ef862b26265d0b40b92c9f7#npm:1.15.11"],\ + ["@types/debug", null],\ + ["debug", null]\ + ],\ + "packagePeers": [\ + "@types/debug",\ + "debug"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["for-each", [\ ["npm:0.3.3", {\ "packageLocation": "../.yarn/berry/cache/for-each-npm-0.3.3-0010ca8cdd-10.zip/node_modules/for-each/",\ @@ -16607,6 +19176,18 @@ const RAW_RUNTIME_STATE = ["mime-types", "npm:2.1.35"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:4.0.5", {\ + "packageLocation": "../.yarn/berry/cache/form-data-npm-4.0.5-c35fce815a-10.zip/node_modules/form-data/",\ + "packageDependencies": [\ + ["form-data", "npm:4.0.5"],\ + ["asynckit", "npm:0.4.0"],\ + ["combined-stream", "npm:1.0.8"],\ + ["es-set-tostringtag", "npm:2.1.0"],\ + ["hasown", "npm:2.0.2"],\ + ["mime-types", "npm:2.1.35"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["form-data-encoder", [\ @@ -17083,6 +19664,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["globrex", [\ + ["npm:0.1.2", {\ + "packageLocation": "../.yarn/berry/cache/globrex-npm-0.1.2-ddda94f2d0-10.zip/node_modules/globrex/",\ + "packageDependencies": [\ + ["globrex", "npm:0.1.2"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["google-auth-library", [\ ["npm:9.15.1", {\ "packageLocation": "../.yarn/berry/cache/google-auth-library-npm-9.15.1-04a025e628-10.zip/node_modules/google-auth-library/",\ @@ -17165,6 +19755,13 @@ const RAW_RUNTIME_STATE = ["graphql", "npm:16.10.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:16.11.0", {\ + "packageLocation": "../.yarn/berry/cache/graphql-npm-16.11.0-836e6ade28-10.zip/node_modules/graphql/",\ + "packageDependencies": [\ + ["graphql", "npm:16.11.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["graphql-compose", [\ @@ -17318,6 +19915,29 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["graphql-request", [\ + ["npm:7.2.0", {\ + "packageLocation": "../.yarn/berry/cache/graphql-request-npm-7.2.0-505aff0a9d-10.zip/node_modules/graphql-request/",\ + "packageDependencies": [\ + ["graphql-request", "npm:7.2.0"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:7.2.0", {\ + "packageLocation": "./.yarn/__virtual__/graphql-request-virtual-0f9db7bd60/2/.yarn/berry/cache/graphql-request-npm-7.2.0-505aff0a9d-10.zip/node_modules/graphql-request/",\ + "packageDependencies": [\ + ["graphql-request", "virtual:bc7df49367cce80fcf18c02fb35c2701ec1e7918c0d64f6ef01ee0ca55c6fe737a9f71c038feeb83d773243b2a309f54f4fc5f3ea0c0069c5aa3014f6834908e#npm:7.2.0"],\ + ["@graphql-typed-document-node/core", "virtual:0f9db7bd601586dad2ebd776ac078e3cc949b2aee23931e986b335f3cc06bcdda1c428fa3741976ce6eee03264a144989fea8aafd40d11e6f781c8e4ac5c05a0#npm:3.2.0"],\ + ["@types/graphql", null],\ + ["graphql", "npm:16.11.0"]\ + ],\ + "packagePeers": [\ + "@types/graphql",\ + "graphql"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["graphql-scalars", [\ ["npm:1.12.0", {\ "packageLocation": "../.yarn/berry/cache/graphql-scalars-npm-1.12.0-9176983464-10.zip/node_modules/graphql-scalars/",\ @@ -17644,6 +20264,25 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["hermes-estree", [\ + ["npm:0.25.1", {\ + "packageLocation": "../.yarn/berry/cache/hermes-estree-npm-0.25.1-d7752f3952-10.zip/node_modules/hermes-estree/",\ + "packageDependencies": [\ + ["hermes-estree", "npm:0.25.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["hermes-parser", [\ + ["npm:0.25.1", {\ + "packageLocation": "../.yarn/berry/cache/hermes-parser-npm-0.25.1-832deac23b-10.zip/node_modules/hermes-parser/",\ + "packageDependencies": [\ + ["hermes-parser", "npm:0.25.1"],\ + ["hermes-estree", "npm:0.25.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["http-cache-semantics", [\ ["npm:4.1.0", {\ "packageLocation": "../.yarn/berry/cache/http-cache-semantics-npm-4.1.0-860520a31f-10.zip/node_modules/http-cache-semantics/",\ @@ -17684,6 +20323,18 @@ const RAW_RUNTIME_STATE = ["toidentifier", "npm:1.0.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:2.0.1", {\ + "packageLocation": "../.yarn/berry/cache/http-errors-npm-2.0.1-6d19ab492e-10.zip/node_modules/http-errors/",\ + "packageDependencies": [\ + ["http-errors", "npm:2.0.1"],\ + ["depd", "npm:2.0.0"],\ + ["inherits", "npm:2.0.4"],\ + ["setprototypeof", "npm:1.2.0"],\ + ["statuses", "npm:2.0.2"],\ + ["toidentifier", "npm:1.0.1"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["http-proxy-agent", [\ @@ -17761,6 +20412,14 @@ const RAW_RUNTIME_STATE = ["safer-buffer", "npm:2.1.2"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:0.7.2", {\ + "packageLocation": "../.yarn/berry/cache/iconv-lite-npm-0.7.2-716fc012a0-10.zip/node_modules/iconv-lite/",\ + "packageDependencies": [\ + ["iconv-lite", "npm:0.7.2"],\ + ["safer-buffer", "npm:2.1.2"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["ieee754", [\ @@ -17779,6 +20438,13 @@ const RAW_RUNTIME_STATE = ["ignore", "npm:5.3.2"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.0.5", {\ + "packageLocation": "../.yarn/berry/cache/ignore-npm-7.0.5-dea34ee430-10.zip/node_modules/ignore/",\ + "packageDependencies": [\ + ["ignore", "npm:7.0.5"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["import-fresh", [\ @@ -17906,6 +20572,13 @@ const RAW_RUNTIME_STATE = ["ipaddr.js", "npm:1.9.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:2.3.0", {\ + "packageLocation": "../.yarn/berry/cache/ipaddr.js-npm-2.3.0-a61e2ef2ff-10.zip/node_modules/ipaddr.js/",\ + "packageDependencies": [\ + ["ipaddr.js", "npm:2.3.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["is-arguments", [\ @@ -18556,6 +21229,14 @@ const RAW_RUNTIME_STATE = ["fast-deep-equal", "npm:3.1.3"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:3.0.0", {\ + "packageLocation": "../.yarn/berry/cache/json-schema-ref-resolver-npm-3.0.0-4a0f31fcf2-10.zip/node_modules/json-schema-ref-resolver/",\ + "packageDependencies": [\ + ["json-schema-ref-resolver", "npm:3.0.0"],\ + ["dequal", "npm:2.0.3"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["json-schema-traverse", [\ @@ -18948,7 +21629,7 @@ const RAW_RUNTIME_STATE = ["light-my-request", "npm:5.14.0"],\ ["cookie", "npm:0.7.2"],\ ["process-warning", "npm:3.0.0"],\ - ["set-cookie-parser", "npm:2.7.1"]\ + ["set-cookie-parser", "npm:2.7.2"]\ ],\ "linkType": "HARD"\ }],\ @@ -18961,6 +21642,16 @@ const RAW_RUNTIME_STATE = ["set-cookie-parser", "npm:2.7.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:6.6.0", {\ + "packageLocation": "../.yarn/berry/cache/light-my-request-npm-6.6.0-b09ef59077-10.zip/node_modules/light-my-request/",\ + "packageDependencies": [\ + ["light-my-request", "npm:6.6.0"],\ + ["cookie", "npm:1.0.2"],\ + ["process-warning", "npm:4.0.1"],\ + ["set-cookie-parser", "npm:2.7.1"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["lines-and-columns", [\ @@ -18972,6 +21663,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["load-esm", [\ + ["npm:1.0.2", {\ + "packageLocation": "../.yarn/berry/cache/load-esm-npm-1.0.2-9c23e2f1f4-10.zip/node_modules/load-esm/",\ + "packageDependencies": [\ + ["load-esm", "npm:1.0.2"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["loader-runner", [\ ["npm:4.3.0", {\ "packageLocation": "../.yarn/berry/cache/loader-runner-npm-4.3.0-9ca67df372-10.zip/node_modules/loader-runner/",\ @@ -19458,6 +22158,13 @@ const RAW_RUNTIME_STATE = ["mime-db", "npm:1.53.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:1.54.0", {\ + "packageLocation": "../.yarn/berry/cache/mime-db-npm-1.54.0-82cccb9d70-10.zip/node_modules/mime-db/",\ + "packageDependencies": [\ + ["mime-db", "npm:1.54.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["mime-match", [\ @@ -19486,6 +22193,14 @@ const RAW_RUNTIME_STATE = ["mime-db", "npm:1.53.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:3.0.2", {\ + "packageLocation": "../.yarn/berry/cache/mime-types-npm-3.0.2-d6d24e27e8-10.zip/node_modules/mime-types/",\ + "packageDependencies": [\ + ["mime-types", "npm:3.0.2"],\ + ["mime-db", "npm:1.54.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["minimatch", [\ @@ -19741,6 +22456,20 @@ const RAW_RUNTIME_STATE = ["xtend", "npm:4.0.2"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:2.0.2", {\ + "packageLocation": "../.yarn/berry/cache/multer-npm-2.0.2-8feabf7be2-10.zip/node_modules/multer/",\ + "packageDependencies": [\ + ["multer", "npm:2.0.2"],\ + ["append-field", "npm:1.0.0"],\ + ["busboy", "npm:1.6.0"],\ + ["concat-stream", "npm:2.0.0"],\ + ["mkdirp", "npm:0.5.6"],\ + ["object-assign", "npm:4.1.1"],\ + ["type-is", "npm:1.6.18"],\ + ["xtend", "npm:4.0.2"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["nan", [\ @@ -19751,6 +22480,14 @@ const RAW_RUNTIME_STATE = ["node-gyp", "npm:11.1.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:2.25.0", {\ + "packageLocation": "./.yarn/unplugged/nan-npm-2.25.0-50b99f9f10/node_modules/nan/",\ + "packageDependencies": [\ + ["nan", "npm:2.25.0"],\ + ["node-gyp", "npm:11.1.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["natural-compare", [\ @@ -19890,13 +22627,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:2.1.0", {\ - "packageLocation": "./.yarn/__virtual__/node-loader-virtual-efdf6fbcc8/2/.yarn/berry/cache/node-loader-npm-2.1.0-5af18c0afb-10.zip/node_modules/node-loader/",\ + ["virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:2.1.0", {\ + "packageLocation": "./.yarn/__virtual__/node-loader-virtual-568d1acd83/2/.yarn/berry/cache/node-loader-npm-2.1.0-5af18c0afb-10.zip/node_modules/node-loader/",\ "packageDependencies": [\ - ["node-loader", "virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:2.1.0"],\ + ["node-loader", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:2.1.0"],\ ["@types/webpack", null],\ ["loader-utils", "npm:2.0.4"],\ - ["webpack", "virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:5.98.0"]\ + ["webpack", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:5.98.0"]\ ],\ "packagePeers": [\ "@types/webpack",\ @@ -19956,14 +22693,14 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:4.0.1", {\ - "packageLocation": "./.yarn/__virtual__/null-loader-virtual-dc4ce085ba/2/.yarn/berry/cache/null-loader-npm-4.0.1-02276c1f77-10.zip/node_modules/null-loader/",\ + ["virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:4.0.1", {\ + "packageLocation": "./.yarn/__virtual__/null-loader-virtual-83f52474ed/2/.yarn/berry/cache/null-loader-npm-4.0.1-02276c1f77-10.zip/node_modules/null-loader/",\ "packageDependencies": [\ - ["null-loader", "virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:4.0.1"],\ + ["null-loader", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:4.0.1"],\ ["@types/webpack", null],\ ["loader-utils", "npm:2.0.4"],\ ["schema-utils", "npm:3.3.0"],\ - ["webpack", "virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:5.98.0"]\ + ["webpack", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:5.98.0"]\ ],\ "packagePeers": [\ "@types/webpack",\ @@ -20076,13 +22813,14 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["object.entries", [\ - ["npm:1.1.8", {\ - "packageLocation": "../.yarn/berry/cache/object.entries-npm-1.1.8-386f7451b8-10.zip/node_modules/object.entries/",\ + ["npm:1.1.9", {\ + "packageLocation": "../.yarn/berry/cache/object.entries-npm-1.1.9-32f1b371e0-10.zip/node_modules/object.entries/",\ "packageDependencies": [\ - ["object.entries", "npm:1.1.8"],\ - ["call-bind", "npm:1.0.7"],\ + ["object.entries", "npm:1.1.9"],\ + ["call-bind", "npm:1.0.8"],\ + ["call-bound", "npm:1.0.4"],\ ["define-properties", "npm:1.2.1"],\ - ["es-object-atoms", "npm:1.0.0"]\ + ["es-object-atoms", "npm:1.1.1"]\ ],\ "linkType": "HARD"\ }]\ @@ -20138,6 +22876,17 @@ const RAW_RUNTIME_STATE = ["es-object-atoms", "npm:1.0.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:1.2.1", {\ + "packageLocation": "../.yarn/berry/cache/object.values-npm-1.2.1-cd21c82f2d-10.zip/node_modules/object.values/",\ + "packageDependencies": [\ + ["object.values", "npm:1.2.1"],\ + ["call-bind", "npm:1.0.8"],\ + ["call-bound", "npm:1.0.3"],\ + ["define-properties", "npm:1.2.1"],\ + ["es-object-atoms", "npm:1.0.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["obliterator", [\ @@ -20418,6 +23167,13 @@ const RAW_RUNTIME_STATE = ["path-to-regexp", "npm:8.2.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:8.3.0", {\ + "packageLocation": "../.yarn/berry/cache/path-to-regexp-npm-8.3.0-ef82f1008e-10.zip/node_modules/path-to-regexp/",\ + "packageDependencies": [\ + ["path-to-regexp", "npm:8.3.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["path-type", [\ @@ -20613,6 +23369,13 @@ const RAW_RUNTIME_STATE = ["picomatch", "npm:2.3.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:4.0.3", {\ + "packageLocation": "../.yarn/berry/cache/picomatch-npm-4.0.3-0a647b87cc-10.zip/node_modules/picomatch/",\ + "packageDependencies": [\ + ["picomatch", "npm:4.0.3"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["pino", [\ @@ -20774,13 +23537,6 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["prettier", [\ - ["npm:3.4.2", {\ - "packageLocation": "./.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/",\ - "packageDependencies": [\ - ["prettier", "npm:3.4.2"]\ - ],\ - "linkType": "HARD"\ - }],\ ["npm:3.5.3", {\ "packageLocation": "./.yarn/unplugged/prettier-npm-3.5.3-787132ce04/node_modules/prettier/",\ "packageDependencies": [\ @@ -20866,6 +23622,13 @@ const RAW_RUNTIME_STATE = ["process-warning", "npm:4.0.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:5.0.0", {\ + "packageLocation": "../.yarn/berry/cache/process-warning-npm-5.0.0-7999058ecd-10.zip/node_modules/process-warning/",\ + "packageDependencies": [\ + ["process-warning", "npm:5.0.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["promise-breaker", [\ @@ -20961,6 +23724,25 @@ const RAW_RUNTIME_STATE = ["long", "npm:5.3.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.5.4", {\ + "packageLocation": "./.yarn/unplugged/protobufjs-npm-7.5.4-4d6f681551/node_modules/protobufjs/",\ + "packageDependencies": [\ + ["protobufjs", "npm:7.5.4"],\ + ["@protobufjs/aspromise", "npm:1.1.2"],\ + ["@protobufjs/base64", "npm:1.1.2"],\ + ["@protobufjs/codegen", "npm:2.0.4"],\ + ["@protobufjs/eventemitter", "npm:1.1.0"],\ + ["@protobufjs/fetch", "npm:1.1.0"],\ + ["@protobufjs/float", "npm:1.0.2"],\ + ["@protobufjs/inquire", "npm:1.1.0"],\ + ["@protobufjs/path", "npm:1.1.2"],\ + ["@protobufjs/pool", "npm:1.1.0"],\ + ["@protobufjs/utf8", "npm:1.1.0"],\ + ["@types/node", "npm:22.13.10"],\ + ["long", "npm:5.3.1"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["protocol-buffers-schema", [\ @@ -20983,6 +23765,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["proxy-from-env", [\ + ["npm:1.1.0", {\ + "packageLocation": "../.yarn/berry/cache/proxy-from-env-npm-1.1.0-c13d07f26b-10.zip/node_modules/proxy-from-env/",\ + "packageDependencies": [\ + ["proxy-from-env", "npm:1.1.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["pump", [\ ["npm:3.0.2", {\ "packageLocation": "../.yarn/berry/cache/pump-npm-3.0.2-a8afc6734f-10.zip/node_modules/pump/",\ @@ -21026,6 +23817,14 @@ const RAW_RUNTIME_STATE = ["side-channel", "npm:1.1.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:6.14.1", {\ + "packageLocation": "../.yarn/berry/cache/qs-npm-6.14.1-2af4c28250-10.zip/node_modules/qs/",\ + "packageDependencies": [\ + ["qs", "npm:6.14.1"],\ + ["side-channel", "npm:1.1.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["querystringify", [\ @@ -21096,6 +23895,17 @@ const RAW_RUNTIME_STATE = ["unpipe", "npm:1.0.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:3.0.2", {\ + "packageLocation": "../.yarn/berry/cache/raw-body-npm-3.0.2-77b7ebce9c-10.zip/node_modules/raw-body/",\ + "packageDependencies": [\ + ["raw-body", "npm:3.0.2"],\ + ["bytes", "npm:3.1.2"],\ + ["http-errors", "npm:2.0.1"],\ + ["iconv-lite", "npm:0.7.2"],\ + ["unpipe", "npm:1.0.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["react", [\ @@ -21387,6 +24197,13 @@ const RAW_RUNTIME_STATE = ["ret", "npm:0.4.3"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:0.5.0", {\ + "packageLocation": "../.yarn/berry/cache/ret-npm-0.5.0-80249185b8-10.zip/node_modules/ret/",\ + "packageDependencies": [\ + ["ret", "npm:0.5.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["retry", [\ @@ -21454,6 +24271,18 @@ const RAW_RUNTIME_STATE = ["path-to-regexp", "npm:8.2.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:2.2.0", {\ + "packageLocation": "../.yarn/berry/cache/router-npm-2.2.0-745100319e-10.zip/node_modules/router/",\ + "packageDependencies": [\ + ["router", "npm:2.2.0"],\ + ["debug", "virtual:bcb4d53d88a27dcc946cb93931188757e76f00f8529d01632fd34afc5faa82464443e719ee0e473b65de2ae9b41365dd72260c3c5b40c65a42cbb35035eb02fd#npm:4.4.0"],\ + ["depd", "npm:2.0.0"],\ + ["is-promise", "npm:4.0.0"],\ + ["parseurl", "npm:1.3.3"],\ + ["path-to-regexp", "npm:8.2.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["run-parallel", [\ @@ -21474,6 +24303,14 @@ const RAW_RUNTIME_STATE = ["tslib", "npm:2.8.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.8.2", {\ + "packageLocation": "../.yarn/berry/cache/rxjs-npm-7.8.2-80ecda9013-10.zip/node_modules/rxjs/",\ + "packageDependencies": [\ + ["rxjs", "npm:7.8.2"],\ + ["tslib", "npm:2.8.1"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["safe-array-concat", [\ @@ -21568,6 +24405,14 @@ const RAW_RUNTIME_STATE = ["ret", "npm:0.4.3"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:5.0.0", {\ + "packageLocation": "../.yarn/berry/cache/safe-regex2-npm-5.0.0-8bf76fb7d3-10.zip/node_modules/safe-regex2/",\ + "packageDependencies": [\ + ["safe-regex2", "npm:5.0.0"],\ + ["ret", "npm:0.5.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["safe-stable-stringify", [\ @@ -21618,6 +24463,13 @@ const RAW_RUNTIME_STATE = ["secure-json-parse", "npm:2.7.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:4.1.0", {\ + "packageLocation": "../.yarn/berry/cache/secure-json-parse-npm-4.1.0-f16ef4e170-10.zip/node_modules/secure-json-parse/",\ + "packageDependencies": [\ + ["secure-json-parse", "npm:4.1.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["semver", [\ @@ -21690,6 +24542,24 @@ const RAW_RUNTIME_STATE = ["statuses", "npm:2.0.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:1.2.1", {\ + "packageLocation": "../.yarn/berry/cache/send-npm-1.2.1-6d273646b4-10.zip/node_modules/send/",\ + "packageDependencies": [\ + ["send", "npm:1.2.1"],\ + ["debug", "virtual:8f9f68e705e5e2387437494a09768e4d48907a5c6d9a7f936ad101e27ceba5fcd874869555821e64a53ddc41346e840cc97b20fc0035599aeacb184192018c40#npm:4.4.3"],\ + ["encodeurl", "npm:2.0.0"],\ + ["escape-html", "npm:1.0.3"],\ + ["etag", "npm:1.8.1"],\ + ["fresh", "npm:2.0.0"],\ + ["http-errors", "npm:2.0.1"],\ + ["mime-types", "npm:3.0.2"],\ + ["ms", "npm:2.1.3"],\ + ["on-finished", "npm:2.4.1"],\ + ["range-parser", "npm:1.2.1"],\ + ["statuses", "npm:2.0.2"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["sentence-case", [\ @@ -21736,6 +24606,17 @@ const RAW_RUNTIME_STATE = ["send", "npm:1.1.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:2.2.1", {\ + "packageLocation": "../.yarn/berry/cache/serve-static-npm-2.2.1-14d79c9d45-10.zip/node_modules/serve-static/",\ + "packageDependencies": [\ + ["serve-static", "npm:2.2.1"],\ + ["encodeurl", "npm:2.0.0"],\ + ["escape-html", "npm:1.0.3"],\ + ["parseurl", "npm:1.3.3"],\ + ["send", "npm:1.2.1"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["services", [\ @@ -21743,10 +24624,10 @@ const RAW_RUNTIME_STATE = "packageLocation": "./",\ "packageDependencies": [\ ["services", "workspace:."],\ - ["@atls/code-runtime", "npm:2.1.7"],\ + ["@atls/code-runtime", "npm:2.1.16"],\ ["@types/eslint", "npm:9.6.1"],\ ["@types/node", "npm:22.13.10"],\ - ["eslint", "virtual:208dfc1d93e05ff9c00fb952ce691c41af20c59e3e7f579a5d21851d280c33f5ace44df8866f749410cb28841b63023611d6ed185af6fd090ecb1aad4d4d4429#npm:9.17.0"],\ + ["eslint", "virtual:1c19a7e3a2811aced06f080c99e5ea3818f86cf7ce96a27ec07d603da973e8893d8b73ec2bc94a9c112a3a5a373a93c210cd287d6320bed288e3c1d952025e27#npm:9.17.0"],\ ["typescript", "patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=379a07"]\ ],\ "linkType": "SOFT"\ @@ -21759,6 +24640,13 @@ const RAW_RUNTIME_STATE = ["set-cookie-parser", "npm:2.7.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:2.7.2", {\ + "packageLocation": "../.yarn/berry/cache/set-cookie-parser-npm-2.7.2-e1a4d1221b-10.zip/node_modules/set-cookie-parser/",\ + "packageDependencies": [\ + ["set-cookie-parser", "npm:2.7.2"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["set-function-length", [\ @@ -22138,6 +25026,17 @@ const RAW_RUNTIME_STATE = ["nan", "npm:2.22.2"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:1.17.0", {\ + "packageLocation": "./.yarn/unplugged/ssh2-npm-1.17.0-b973b284c6/node_modules/ssh2/",\ + "packageDependencies": [\ + ["ssh2", "npm:1.17.0"],\ + ["asn1", "npm:0.2.6"],\ + ["bcrypt-pbkdf", "npm:1.0.2"],\ + ["cpu-features", "npm:0.0.10"],\ + ["nan", "npm:2.25.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["ssri", [\ @@ -22181,6 +25080,13 @@ const RAW_RUNTIME_STATE = ["statuses", "npm:2.0.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:2.0.2", {\ + "packageLocation": "../.yarn/berry/cache/statuses-npm-2.0.2-2d84c63b8c-10.zip/node_modules/statuses/",\ + "packageDependencies": [\ + ["statuses", "npm:2.0.2"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["stop-iteration-iterator", [\ @@ -22294,22 +25200,23 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["string.prototype.matchall", [\ - ["npm:4.0.11", {\ - "packageLocation": "../.yarn/berry/cache/string.prototype.matchall-npm-4.0.11-a18d0665a1-10.zip/node_modules/string.prototype.matchall/",\ + ["npm:4.0.12", {\ + "packageLocation": "../.yarn/berry/cache/string.prototype.matchall-npm-4.0.12-0bc859367d-10.zip/node_modules/string.prototype.matchall/",\ "packageDependencies": [\ - ["string.prototype.matchall", "npm:4.0.11"],\ - ["call-bind", "npm:1.0.7"],\ + ["string.prototype.matchall", "npm:4.0.12"],\ + ["call-bind", "npm:1.0.8"],\ + ["call-bound", "npm:1.0.3"],\ ["define-properties", "npm:1.2.1"],\ - ["es-abstract", "npm:1.23.3"],\ + ["es-abstract", "npm:1.23.9"],\ ["es-errors", "npm:1.3.0"],\ ["es-object-atoms", "npm:1.0.0"],\ - ["get-intrinsic", "npm:1.2.4"],\ - ["gopd", "npm:1.0.1"],\ - ["has-symbols", "npm:1.0.3"],\ - ["internal-slot", "npm:1.0.7"],\ - ["regexp.prototype.flags", "npm:1.5.2"],\ + ["get-intrinsic", "npm:1.2.7"],\ + ["gopd", "npm:1.2.0"],\ + ["has-symbols", "npm:1.1.0"],\ + ["internal-slot", "npm:1.1.0"],\ + ["regexp.prototype.flags", "npm:1.5.4"],\ ["set-function-name", "npm:2.0.2"],\ - ["side-channel", "npm:1.0.6"]\ + ["side-channel", "npm:1.1.0"]\ ],\ "linkType": "HARD"\ }]\ @@ -22450,6 +25357,16 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["strtok3", [\ + ["npm:10.3.4", {\ + "packageLocation": "../.yarn/berry/cache/strtok3-npm-10.3.4-bd6e987a57-10.zip/node_modules/strtok3/",\ + "packageDependencies": [\ + ["strtok3", "npm:10.3.4"],\ + ["@tokenizer/token", "npm:0.3.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["stubs", [\ ["npm:3.0.0", {\ "packageLocation": "../.yarn/berry/cache/stubs-npm-3.0.0-22bb785265-10.zip/node_modules/stubs/",\ @@ -22565,12 +25482,11 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["synckit", [\ - ["npm:0.9.2", {\ - "packageLocation": "../.yarn/berry/cache/synckit-npm-0.9.2-515a819361-10.zip/node_modules/synckit/",\ + ["npm:0.11.12", {\ + "packageLocation": "../.yarn/berry/cache/synckit-npm-0.11.12-cdf9ac5b7c-10.zip/node_modules/synckit/",\ "packageDependencies": [\ - ["synckit", "npm:0.9.2"],\ - ["@pkgr/core", "npm:0.1.1"],\ - ["tslib", "npm:2.8.1"]\ + ["synckit", "npm:0.11.12"],\ + ["@pkgr/core", "npm:0.2.9"]\ ],\ "linkType": "HARD"\ }]\ @@ -22624,6 +25540,17 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ + ["npm:2.1.4", {\ + "packageLocation": "../.yarn/berry/cache/tar-fs-npm-2.1.4-90a454735f-10.zip/node_modules/tar-fs/",\ + "packageDependencies": [\ + ["tar-fs", "npm:2.1.4"],\ + ["chownr", "npm:1.1.4"],\ + ["mkdirp-classic", "npm:0.5.3"],\ + ["pump", "npm:3.0.2"],\ + ["tar-stream", "npm:2.2.0"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:3.0.8", {\ "packageLocation": "../.yarn/berry/cache/tar-fs-npm-3.0.8-76b28a2b9e-10.zip/node_modules/tar-fs/",\ "packageDependencies": [\ @@ -22634,6 +25561,17 @@ const RAW_RUNTIME_STATE = ["tar-stream", "npm:3.1.7"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:3.1.1", {\ + "packageLocation": "../.yarn/berry/cache/tar-fs-npm-3.1.1-2a32a81dd7-10.zip/node_modules/tar-fs/",\ + "packageDependencies": [\ + ["tar-fs", "npm:3.1.1"],\ + ["bare-fs", "npm:4.0.1"],\ + ["bare-path", "npm:3.0.0"],\ + ["pump", "npm:3.0.2"],\ + ["tar-stream", "npm:3.1.7"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["tar-stream", [\ @@ -22714,10 +25652,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:9253898571b791150b450897791efb4ee8d8d207dc0b6ea3e272c24a80380dccbcf9c5aeb9ac116b716134a11e736453d8d895b0ce8db53cd3ff026f88875a71#npm:5.3.14", {\ - "packageLocation": "./.yarn/__virtual__/terser-webpack-plugin-virtual-62c3507af3/2/.yarn/berry/cache/terser-webpack-plugin-npm-5.3.14-e4f2e3cd89-10.zip/node_modules/terser-webpack-plugin/",\ + ["virtual:380238e0e4d1c480696f27e25ed4f550eb50ecce57817a8df14cc00aca701b1256be951c0229622c2b5af48cef84f91f9658d36d14f63d351212c061629320dd#npm:5.3.14", {\ + "packageLocation": "./.yarn/__virtual__/terser-webpack-plugin-virtual-9819318937/2/.yarn/berry/cache/terser-webpack-plugin-npm-5.3.14-e4f2e3cd89-10.zip/node_modules/terser-webpack-plugin/",\ "packageDependencies": [\ - ["terser-webpack-plugin", "virtual:9253898571b791150b450897791efb4ee8d8d207dc0b6ea3e272c24a80380dccbcf9c5aeb9ac116b716134a11e736453d8d895b0ce8db53cd3ff026f88875a71#npm:5.3.14"],\ + ["terser-webpack-plugin", "virtual:380238e0e4d1c480696f27e25ed4f550eb50ecce57817a8df14cc00aca701b1256be951c0229622c2b5af48cef84f91f9658d36d14f63d351212c061629320dd#npm:5.3.14"],\ ["@jridgewell/trace-mapping", "npm:0.3.25"],\ ["@swc/core", null],\ ["@types/esbuild", null],\ @@ -22730,7 +25668,7 @@ const RAW_RUNTIME_STATE = ["serialize-javascript", "npm:6.0.2"],\ ["terser", "npm:5.39.0"],\ ["uglify-js", null],\ - ["webpack", "virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:5.98.0"]\ + ["webpack", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:5.98.0"]\ ],\ "packagePeers": [\ "@swc/core",\ @@ -22767,6 +25705,28 @@ const RAW_RUNTIME_STATE = ["undici", "npm:5.28.5"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:11.3.1", {\ + "packageLocation": "../.yarn/berry/cache/testcontainers-npm-11.3.1-8f9f68e705-10.zip/node_modules/testcontainers/",\ + "packageDependencies": [\ + ["testcontainers", "npm:11.3.1"],\ + ["@balena/dockerignore", "npm:1.0.2"],\ + ["@types/dockerode", "npm:3.3.47"],\ + ["archiver", "npm:7.0.1"],\ + ["async-lock", "npm:1.4.1"],\ + ["byline", "npm:5.0.0"],\ + ["debug", "virtual:8f9f68e705e5e2387437494a09768e4d48907a5c6d9a7f936ad101e27ceba5fcd874869555821e64a53ddc41346e840cc97b20fc0035599aeacb184192018c40#npm:4.4.3"],\ + ["docker-compose", "npm:1.3.1"],\ + ["dockerode", "npm:4.0.9"],\ + ["get-port", "npm:7.1.0"],\ + ["proper-lockfile", "npm:4.1.2"],\ + ["properties-reader", "npm:2.3.0"],\ + ["ssh-remote-port-forward", "npm:1.0.4"],\ + ["tar-fs", "npm:3.1.1"],\ + ["tmp", "npm:0.2.3"],\ + ["undici", "npm:7.20.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["text-decoder", [\ @@ -22822,6 +25782,17 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["tinyglobby", [\ + ["npm:0.2.15", {\ + "packageLocation": "../.yarn/berry/cache/tinyglobby-npm-0.2.15-0e783aadbd-10.zip/node_modules/tinyglobby/",\ + "packageDependencies": [\ + ["tinyglobby", "npm:0.2.15"],\ + ["fdir", "virtual:0e783aadbd2b4b8e6f6056033c0b290501892d23bc7c5dad5477e00e48ad8bd3e4434c3962a52dd75a58e06dbb7218094a494bac954ef2f7f6fdb65d9717e5f4#npm:6.5.0"],\ + ["picomatch", "npm:4.0.3"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["tmp", [\ ["npm:0.2.3", {\ "packageLocation": "../.yarn/berry/cache/tmp-npm-0.2.3-ac2a701365-10.zip/node_modules/tmp/",\ @@ -22868,6 +25839,18 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["token-types", [\ + ["npm:6.1.2", {\ + "packageLocation": "../.yarn/berry/cache/token-types-npm-6.1.2-1f6e70d865-10.zip/node_modules/token-types/",\ + "packageDependencies": [\ + ["token-types", "npm:6.1.2"],\ + ["@borewit/text-codec", "npm:0.2.1"],\ + ["@tokenizer/token", "npm:0.3.0"],\ + ["ieee754", "npm:1.2.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["tr46", [\ ["npm:0.0.3", {\ "packageLocation": "../.yarn/berry/cache/tr46-npm-0.0.3-de53018915-10.zip/node_modules/tr46/",\ @@ -22878,17 +25861,17 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["ts-api-utils", [\ - ["npm:1.4.3", {\ - "packageLocation": "../.yarn/berry/cache/ts-api-utils-npm-1.4.3-ee6b12ae73-10.zip/node_modules/ts-api-utils/",\ + ["npm:2.4.0", {\ + "packageLocation": "../.yarn/berry/cache/ts-api-utils-npm-2.4.0-1179124e9a-10.zip/node_modules/ts-api-utils/",\ "packageDependencies": [\ - ["ts-api-utils", "npm:1.4.3"]\ + ["ts-api-utils", "npm:2.4.0"]\ ],\ "linkType": "SOFT"\ }],\ - ["virtual:29d31a8b22256d11049029ee23285353bbaf5f5f5a32e1eda502ce88ecfd757091d9e120bbafc3d040e7a614f46211fd1f7b8ed44e4d5acdc2956d7ec411ed48#npm:1.4.3", {\ - "packageLocation": "./.yarn/__virtual__/ts-api-utils-virtual-d4a3014243/2/.yarn/berry/cache/ts-api-utils-npm-1.4.3-ee6b12ae73-10.zip/node_modules/ts-api-utils/",\ + ["virtual:2a0b217f24720360c13c353db39ea812a555d2d6576c071975cba6666cd17d4e0468776bfbc4e7cec0c58d3f912ef35d82c3173d24e4b54ad4ccbbee0f4d80e2#npm:2.4.0", {\ + "packageLocation": "./.yarn/__virtual__/ts-api-utils-virtual-e7af0bfcd2/2/.yarn/berry/cache/ts-api-utils-npm-2.4.0-1179124e9a-10.zip/node_modules/ts-api-utils/",\ "packageDependencies": [\ - ["ts-api-utils", "virtual:29d31a8b22256d11049029ee23285353bbaf5f5f5a32e1eda502ce88ecfd757091d9e120bbafc3d040e7a614f46211fd1f7b8ed44e4d5acdc2956d7ec411ed48#npm:1.4.3"],\ + ["ts-api-utils", "virtual:2a0b217f24720360c13c353db39ea812a555d2d6576c071975cba6666cd17d4e0468776bfbc4e7cec0c58d3f912ef35d82c3173d24e4b54ad4ccbbee0f4d80e2#npm:2.4.0"],\ ["@types/typescript", null],\ ["typescript", "patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=379a07"]\ ],\ @@ -22899,6 +25882,29 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["ts-declaration-location", [\ + ["npm:1.0.7", {\ + "packageLocation": "../.yarn/berry/cache/ts-declaration-location-npm-1.0.7-804f747b5c-10.zip/node_modules/ts-declaration-location/",\ + "packageDependencies": [\ + ["ts-declaration-location", "npm:1.0.7"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:2b08acdba847b2e51f7d8e8d193e70a7e6d0a8cd76c48b6609dcd402bbbe047f9f50a4d6ca4cfad08983ffb71ccc246a8176db7f1f9ecdb3538fa24bc43f6a0e#npm:1.0.7", {\ + "packageLocation": "./.yarn/__virtual__/ts-declaration-location-virtual-ca518b2a8d/2/.yarn/berry/cache/ts-declaration-location-npm-1.0.7-804f747b5c-10.zip/node_modules/ts-declaration-location/",\ + "packageDependencies": [\ + ["ts-declaration-location", "virtual:2b08acdba847b2e51f7d8e8d193e70a7e6d0a8cd76c48b6609dcd402bbbe047f9f50a4d6ca4cfad08983ffb71ccc246a8176db7f1f9ecdb3538fa24bc43f6a0e#npm:1.0.7"],\ + ["@types/typescript", null],\ + ["picomatch", "npm:4.0.3"],\ + ["typescript", null]\ + ],\ + "packagePeers": [\ + "@types/typescript",\ + "typescript"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["ts-graphviz", [\ ["npm:1.8.2", {\ "packageLocation": "../.yarn/berry/cache/ts-graphviz-npm-1.8.2-a598299970-10.zip/node_modules/ts-graphviz/",\ @@ -22926,10 +25932,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:9.5.2", {\ - "packageLocation": "./.yarn/__virtual__/ts-loader-virtual-6abac14859/2/.yarn/berry/cache/ts-loader-npm-9.5.2-15fe2fd8a6-10.zip/node_modules/ts-loader/",\ + ["virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:9.5.2", {\ + "packageLocation": "./.yarn/__virtual__/ts-loader-virtual-dfe40c03d8/2/.yarn/berry/cache/ts-loader-npm-9.5.2-15fe2fd8a6-10.zip/node_modules/ts-loader/",\ "packageDependencies": [\ - ["ts-loader", "virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:9.5.2"],\ + ["ts-loader", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:9.5.2"],\ ["@types/typescript", null],\ ["@types/webpack", null],\ ["chalk", "npm:4.1.2"],\ @@ -22938,7 +25944,7 @@ const RAW_RUNTIME_STATE = ["semver", "npm:7.6.3"],\ ["source-map", "npm:0.7.4"],\ ["typescript", "patch:typescript@npm%3A5.5.4#optional!builtin::version=5.5.4&hash=379a07"],\ - ["webpack", "virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:5.98.0"]\ + ["webpack", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:5.98.0"]\ ],\ "packagePeers": [\ "@types/typescript",\ @@ -23011,10 +26017,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:10.9.2", {\ - "packageLocation": "./.yarn/__virtual__/ts-node-virtual-f119a74ab9/2/.yarn/berry/cache/ts-node-npm-10.9.2-3f3890b9ac-10.zip/node_modules/ts-node/",\ + ["virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:10.9.2", {\ + "packageLocation": "./.yarn/__virtual__/ts-node-virtual-4a816735dc/2/.yarn/berry/cache/ts-node-npm-10.9.2-3f3890b9ac-10.zip/node_modules/ts-node/",\ "packageDependencies": [\ - ["ts-node", "virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:10.9.2"],\ + ["ts-node", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:10.9.2"],\ ["@cspotcode/source-map-support", "npm:0.8.1"],\ ["@swc/core", null],\ ["@swc/wasm", null],\ @@ -23162,6 +26168,16 @@ const RAW_RUNTIME_STATE = ["mime-types", "npm:3.0.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:2.0.1", {\ + "packageLocation": "../.yarn/berry/cache/type-is-npm-2.0.1-8ef194d26e-10.zip/node_modules/type-is/",\ + "packageDependencies": [\ + ["type-is", "npm:2.0.1"],\ + ["content-type", "npm:1.0.5"],\ + ["media-typer", "npm:1.1.0"],\ + ["mime-types", "npm:3.0.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["typed-array-buffer", [\ @@ -23304,6 +26320,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["uint8array-extras", [\ + ["npm:1.5.0", {\ + "packageLocation": "../.yarn/berry/cache/uint8array-extras-npm-1.5.0-30fc87691c-10.zip/node_modules/uint8array-extras/",\ + "packageDependencies": [\ + ["uint8array-extras", "npm:1.5.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["umzug", [\ ["npm:3.3.1", {\ "packageLocation": "../.yarn/berry/cache/umzug-npm-3.3.1-f3a8f45f14-10.zip/node_modules/umzug/",\ @@ -23369,6 +26394,13 @@ const RAW_RUNTIME_STATE = ["@fastify/busboy", "npm:2.1.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.20.0", {\ + "packageLocation": "../.yarn/berry/cache/undici-npm-7.20.0-605f0a5012-10.zip/node_modules/undici/",\ + "packageDependencies": [\ + ["undici", "npm:7.20.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["undici-types", [\ @@ -23578,6 +26610,13 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["uuid", [\ + ["npm:10.0.0", {\ + "packageLocation": "../.yarn/berry/cache/uuid-npm-10.0.0-4872b46ff8-10.zip/node_modules/uuid/",\ + "packageDependencies": [\ + ["uuid", "npm:10.0.0"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:11.0.2", {\ "packageLocation": "../.yarn/berry/cache/uuid-npm-11.0.2-13e156cc62-10.zip/node_modules/uuid/",\ "packageDependencies": [\ @@ -23722,10 +26761,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:5.98.0", {\ - "packageLocation": "./.yarn/__virtual__/webpack-virtual-9253898571/2/.yarn/berry/cache/webpack-npm-5.98.0-4e921faeb6-10.zip/node_modules/webpack/",\ + ["virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:5.98.0", {\ + "packageLocation": "./.yarn/__virtual__/webpack-virtual-380238e0e4/2/.yarn/berry/cache/webpack-npm-5.98.0-4e921faeb6-10.zip/node_modules/webpack/",\ "packageDependencies": [\ - ["webpack", "virtual:9705940a789b1daf714a5a6259a357cf1b66784e87ee7a96548fd14cc7e0e2a1f753763c3767d07b6b95bcbebad0a9bd43f59ab3062d90e6ae96b0026131ad82#npm:5.98.0"],\ + ["webpack", "virtual:ce6d8ec82c7a919ae8e793354252433a419d80458e7da4339367fc2ab7517de62cd1eacda493c8f296f4ccd8d845490a984325fd55fd8f7d0ee2d45c23013360#npm:5.98.0"],\ ["@types/eslint-scope", "npm:3.7.7"],\ ["@types/estree", "npm:1.0.6"],\ ["@types/webpack-cli", null],\ @@ -23747,7 +26786,7 @@ const RAW_RUNTIME_STATE = ["neo-async", "npm:2.6.2"],\ ["schema-utils", "npm:4.3.0"],\ ["tapable", "npm:2.2.1"],\ - ["terser-webpack-plugin", "virtual:9253898571b791150b450897791efb4ee8d8d207dc0b6ea3e272c24a80380dccbcf9c5aeb9ac116b716134a11e736453d8d895b0ce8db53cd3ff026f88875a71#npm:5.3.14"],\ + ["terser-webpack-plugin", "virtual:380238e0e4d1c480696f27e25ed4f550eb50ecce57817a8df14cc00aca701b1256be951c0229622c2b5af48cef84f91f9658d36d14f63d351212c061629320dd#npm:5.3.14"],\ ["watchpack", "npm:2.4.2"],\ ["webpack-cli", null],\ ["webpack-sources", "npm:3.2.3"]\ @@ -23906,6 +26945,20 @@ const RAW_RUNTIME_STATE = ["has-tostringtag", "npm:1.0.2"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:1.1.20", {\ + "packageLocation": "../.yarn/berry/cache/which-typed-array-npm-1.1.20-8cc727cdc7-10.zip/node_modules/which-typed-array/",\ + "packageDependencies": [\ + ["which-typed-array", "npm:1.1.20"],\ + ["available-typed-arrays", "npm:1.0.7"],\ + ["call-bind", "npm:1.0.8"],\ + ["call-bound", "npm:1.0.4"],\ + ["for-each", "npm:0.3.5"],\ + ["get-proto", "npm:1.0.1"],\ + ["gopd", "npm:1.2.0"],\ + ["has-tostringtag", "npm:1.0.2"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["wildcard", [\ @@ -24194,6 +27247,71 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }]\ + ]],\ + ["zod", [\ + ["npm:3.25.76", {\ + "packageLocation": "../.yarn/berry/cache/zod-npm-3.25.76-7de26333f8-10.zip/node_modules/zod/",\ + "packageDependencies": [\ + ["zod", "npm:3.25.76"]\ + ],\ + "linkType": "HARD"\ + }],\ + ["npm:4.0.5", {\ + "packageLocation": "../.yarn/berry/cache/zod-npm-4.0.5-e382141694-10.zip/node_modules/zod/",\ + "packageDependencies": [\ + ["zod", "npm:4.0.5"]\ + ],\ + "linkType": "HARD"\ + }],\ + ["npm:4.3.6", {\ + "packageLocation": "../.yarn/berry/cache/zod-npm-4.3.6-a096e305e6-10.zip/node_modules/zod/",\ + "packageDependencies": [\ + ["zod", "npm:4.3.6"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["zod-validation-error", [\ + ["npm:3.5.4", {\ + "packageLocation": "../.yarn/berry/cache/zod-validation-error-npm-3.5.4-d39f0404cd-10.zip/node_modules/zod-validation-error/",\ + "packageDependencies": [\ + ["zod-validation-error", "npm:3.5.4"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["npm:4.0.2", {\ + "packageLocation": "../.yarn/berry/cache/zod-validation-error-npm-4.0.2-1b963160c8-10.zip/node_modules/zod-validation-error/",\ + "packageDependencies": [\ + ["zod-validation-error", "npm:4.0.2"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:f92407d75612b8966eb60fcfabd165b021daf4b552e5c170e145f30e99600b2bf297dcf406d1d7031de0e5ac5927743fc82a162569380344453bce0e9b56640b#npm:3.5.4", {\ + "packageLocation": "./.yarn/__virtual__/zod-validation-error-virtual-7c18f0fa5f/2/.yarn/berry/cache/zod-validation-error-npm-3.5.4-d39f0404cd-10.zip/node_modules/zod-validation-error/",\ + "packageDependencies": [\ + ["zod-validation-error", "virtual:f92407d75612b8966eb60fcfabd165b021daf4b552e5c170e145f30e99600b2bf297dcf406d1d7031de0e5ac5927743fc82a162569380344453bce0e9b56640b#npm:3.5.4"],\ + ["@types/zod", null],\ + ["zod", "npm:3.25.76"]\ + ],\ + "packagePeers": [\ + "@types/zod",\ + "zod"\ + ],\ + "linkType": "HARD"\ + }],\ + ["virtual:fd92e252f103e302ff22da5bb9184306b83b28f14a42655b589131a17b0658affbda3caa0be45ffd868b75a84d83f829bafa9eefd0380e7c5eb953c1d330a757#npm:4.0.2", {\ + "packageLocation": "./.yarn/__virtual__/zod-validation-error-virtual-b61f77558b/2/.yarn/berry/cache/zod-validation-error-npm-4.0.2-1b963160c8-10.zip/node_modules/zod-validation-error/",\ + "packageDependencies": [\ + ["zod-validation-error", "virtual:fd92e252f103e302ff22da5bb9184306b83b28f14a42655b589131a17b0658affbda3caa0be45ffd868b75a84d83f829bafa9eefd0380e7c5eb953c1d330a757#npm:4.0.2"],\ + ["@types/zod", null],\ + ["zod", "npm:4.3.6"]\ + ],\ + "packagePeers": [\ + "@types/zod",\ + "zod"\ + ],\ + "linkType": "HARD"\ + }]\ ]]\ ]\ }'; diff --git a/.yarn/releases/yarn-remote.mjs b/.yarn/releases/yarn-remote.mjs index a838c887..4aedd8bb 100755 --- a/.yarn/releases/yarn-remote.mjs +++ b/.yarn/releases/yarn-remote.mjs @@ -24,152 +24,152 @@ } })(); -var nbs=Object.create;var gtt=Object.defineProperty;var ibs=Object.getOwnPropertyDescriptor;var sbs=Object.getOwnPropertyNames;var obs=Object.getPrototypeOf,abs=Object.prototype.hasOwnProperty;var Dt=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var cc=(e,t)=>()=>(e&&(t=e(e=0)),t);var z=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),jf=(e,t)=>{for(var r in t)gtt(e,r,{get:t[r],enumerable:!0})},S8r=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of sbs(t))!abs.call(e,a)&&a!==r&>t(e,a,{get:()=>t[a],enumerable:!(s=ibs(t,a))||s.enumerable});return e};var xt=(e,t,r)=>(r=e!=null?nbs(obs(e)):{},S8r(t||!e||!e.__esModule?gtt(r,"default",{value:e,enumerable:!0}):r,e)),Ai=e=>S8r(gtt({},"__esModule",{value:!0}),e);var Ty,eh,Tge,AMt,Att,w8r,dMt,pMt,dtt=cc(()=>{(function(e){e.StartOfInput="\0",e.EndOfInput="",e.EndOfPartialInput=""})(Ty||(Ty={}));(function(e){e[e.InitialNode=0]="InitialNode",e[e.SuccessNode=1]="SuccessNode",e[e.ErrorNode=2]="ErrorNode",e[e.CustomNode=3]="CustomNode"})(eh||(eh={}));Tge=-1,AMt=/^(-h|--help)(?:=([0-9]+))?$/,Att=/^(--[a-z]+(?:-[a-z]+)*|-[a-zA-Z]+)$/,w8r=/^-[a-zA-Z]{2,}$/,dMt=/^([^=]+)=([\s\S]*)$/,pMt=process.env.DEBUG_CLI==="1"});var Nge,Pye,ptt,fMt,ftt=cc(()=>{dtt();Nge=class extends Error{constructor(t){super(t),this.clipanion={type:"usage"},this.name="UsageError"}},Pye=class extends Error{constructor(t,r){if(super(),this.input=t,this.candidates=r,this.clipanion={type:"none"},this.name="UnknownSyntaxError",this.candidates.length===0)this.message="Command not found, but we're not sure what's the alternative.";else if(this.candidates.every(s=>s.reason!==null&&s.reason===r[0].reason)){let[{reason:s}]=this.candidates;this.message=`${s} +var ubs=Object.create;var dtt=Object.defineProperty;var gbs=Object.getOwnPropertyDescriptor;var Abs=Object.getOwnPropertyNames;var dbs=Object.getPrototypeOf,pbs=Object.prototype.hasOwnProperty;var xt=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var cc=(e,t)=>()=>(e&&(t=e(e=0)),t);var z=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),zf=(e,t)=>{for(var r in t)dtt(e,r,{get:t[r],enumerable:!0})},x8r=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of Abs(t))!pbs.call(e,a)&&a!==r&&dtt(e,a,{get:()=>t[a],enumerable:!(s=gbs(t,a))||s.enumerable});return e};var vt=(e,t,r)=>(r=e!=null?ubs(dbs(e)):{},x8r(t||!e||!e.__esModule?dtt(r,"default",{value:e,enumerable:!0}):r,e)),Ai=e=>x8r(dtt({},"__esModule",{value:!0}),e);var Ny,th,Lge,fQt,ptt,k8r,IQt,CQt,ftt=cc(()=>{(function(e){e.StartOfInput="\0",e.EndOfInput="",e.EndOfPartialInput=""})(Ny||(Ny={}));(function(e){e[e.InitialNode=0]="InitialNode",e[e.SuccessNode=1]="SuccessNode",e[e.ErrorNode=2]="ErrorNode",e[e.CustomNode=3]="CustomNode"})(th||(th={}));Lge=-1,fQt=/^(-h|--help)(?:=([0-9]+))?$/,ptt=/^(--[a-z]+(?:-[a-z]+)*|-[a-zA-Z]+)$/,k8r=/^-[a-zA-Z]{2,}$/,IQt=/^([^=]+)=([\s\S]*)$/,CQt=process.env.DEBUG_CLI==="1"});var Vge,Qye,Itt,mQt,Ctt=cc(()=>{ftt();Vge=class extends Error{constructor(t){super(t),this.clipanion={type:"usage"},this.name="UsageError"}},Qye=class extends Error{constructor(t,r){if(super(),this.input=t,this.candidates=r,this.clipanion={type:"none"},this.name="UnknownSyntaxError",this.candidates.length===0)this.message="Command not found, but we're not sure what's the alternative.";else if(this.candidates.every(s=>s.reason!==null&&s.reason===r[0].reason)){let[{reason:s}]=this.candidates;this.message=`${s} ${this.candidates.map(({usage:a})=>`$ ${a}`).join(` `)}`}else if(this.candidates.length===1){let[{usage:s}]=this.candidates;this.message=`Command not found; did you mean: $ ${s} -${fMt(t)}`}else this.message=`Command not found; did you mean one of: +${mQt(t)}`}else this.message=`Command not found; did you mean one of: ${this.candidates.map(({usage:s},a)=>`${`${a}.`.padStart(4)} ${s}`).join(` `)} -${fMt(t)}`}},ptt=class extends Error{constructor(t,r){super(),this.input=t,this.usages=r,this.clipanion={type:"none"},this.name="AmbiguousSyntaxError",this.message=`Cannot find which to pick amongst the following alternatives: +${mQt(t)}`}},Itt=class extends Error{constructor(t,r){super(),this.input=t,this.usages=r,this.clipanion={type:"none"},this.name="AmbiguousSyntaxError",this.message=`Cannot find which to pick amongst the following alternatives: ${this.usages.map((s,a)=>`${`${a}.`.padStart(4)} ${s}`).join(` `)} -${fMt(t)}`}},fMt=e=>`While running ${e.filter(t=>t!==Ty.EndOfInput&&t!==Ty.EndOfPartialInput).map(t=>{let r=JSON.stringify(t);return t.match(/\s/)||t.length===0||r!==`"${t}"`?r:t}).join(" ")}`});function cbs(e){let t=e.split(` +${mQt(t)}`}},mQt=e=>`While running ${e.filter(t=>t!==Ny.EndOfInput&&t!==Ny.EndOfPartialInput).map(t=>{let r=JSON.stringify(t);return t.match(/\s/)||t.length===0||r!==`"${t}"`?r:t}).join(" ")}`});function fbs(e){let t=e.split(` `),r=t.filter(a=>a.match(/\S/)),s=r.length>0?r.reduce((a,o)=>Math.min(a,o.length-o.trimStart().length),Number.MAX_VALUE):0;return t.map(a=>a.slice(s).trimRight()).join(` -`)}function mL(e,{format:t,paragraphs:r}){return e=e.replace(/\r\n?/g,` -`),e=cbs(e),e=e.replace(/^\n+|\n+$/g,""),e=e.replace(/^(\s*)-([^\n]*?)\n+/gm,`$1-$2 +`)}function hL(e,{format:t,paragraphs:r}){return e=e.replace(/\r\n?/g,` +`),e=fbs(e),e=e.replace(/^\n+|\n+$/g,""),e=e.replace(/^(\s*)-([^\n]*?)\n+/gm,`$1-$2 `),e=e.replace(/\n(\n)?\n*/g,(s,a)=>a||" "),r&&(e=e.split(/\n/).map(s=>{let a=s.match(/^\s*[*-][\t ]+(.*)/);if(!a)return s.match(/(.{1,80})(?: |$)/g).join(` `);let o=s.length-s.trimStart().length;return a[1].match(new RegExp(`(.{1,${78-o}})(?: |$)`,"g")).map((g,p)=>" ".repeat(o)+(p===0?"- ":" ")+g).join(` `)}).join(` `)),e=e.replace(/(`+)((?:.|[\n])*?)\1/g,(s,a,o)=>t.code(a+o+a)),e=e.replace(/(\*\*)((?:.|[\n])*?)\1/g,(s,a,o)=>t.bold(a+o+a)),e?`${e} -`:""}var IMt,T8r,N8r,CMt=cc(()=>{IMt=Array(80).fill("\u2501");for(let e=0;e<=24;++e)IMt[IMt.length-e]=`\x1B[38;5;${232+e}m\u2501`;T8r={header:e=>`\x1B[1m\u2501\u2501\u2501 ${e}${e.length<75?` ${IMt.slice(e.length+5).join("")}`:":"}\x1B[0m`,bold:e=>`\x1B[1m${e}\x1B[22m`,error:e=>`\x1B[31m\x1B[1m${e}\x1B[22m\x1B[39m`,code:e=>`\x1B[36m${e}\x1B[39m`},N8r={header:e=>e,bold:e=>e,error:e=>e,code:e=>e}});function dF(e){return{...e,[OLe]:!0}}function pJ(e,t){return typeof e>"u"?[e,t]:typeof e=="object"&&e!==null&&!Array.isArray(e)?[void 0,e]:[e,t]}function Itt(e,{mergeName:t=!1}={}){let r=e.match(/^([^:]+): (.*)$/m);if(!r)return"validation failed";let[,s,a]=r;return t&&(a=a[0].toLowerCase()+a.slice(1)),a=s!=="."||!t?`${s.replace(/^\.(\[|$)/,"$1")}: ${a}`:`: ${a}`,a}function MLe(e,t){return t.length===1?new Nge(`${e}${Itt(t[0],{mergeName:!0})}`):new Nge(`${e}: +`:""}var hQt,G8r,F8r,_Qt=cc(()=>{hQt=Array(80).fill("\u2501");for(let e=0;e<=24;++e)hQt[hQt.length-e]=`\x1B[38;5;${232+e}m\u2501`;G8r={header:e=>`\x1B[1m\u2501\u2501\u2501 ${e}${e.length<75?` ${hQt.slice(e.length+5).join("")}`:":"}\x1B[0m`,bold:e=>`\x1B[1m${e}\x1B[22m`,error:e=>`\x1B[31m\x1B[1m${e}\x1B[22m\x1B[39m`,code:e=>`\x1B[36m${e}\x1B[39m`},F8r={header:e=>e,bold:e=>e,error:e=>e,code:e=>e}});function mF(e){return{...e,[MLe]:!0}}function CJ(e,t){return typeof e>"u"?[e,t]:typeof e=="object"&&e!==null&&!Array.isArray(e)?[void 0,e]:[e,t]}function mtt(e,{mergeName:t=!1}={}){let r=e.match(/^([^:]+): (.*)$/m);if(!r)return"validation failed";let[,s,a]=r;return t&&(a=a[0].toLowerCase()+a.slice(1)),a=s!=="."||!t?`${s.replace(/^\.(\[|$)/,"$1")}: ${a}`:`: ${a}`,a}function HLe(e,t){return t.length===1?new Vge(`${e}${mtt(t[0],{mergeName:!0})}`):new Vge(`${e}: ${t.map(r=>` -- ${Itt(r)}`).join("")}`)}function Rge(e,t,r){if(typeof r>"u")return t;let s=[],a=[],o=p=>{let f=t;return t=p,o.bind(null,f)};if(!r(t,{errors:s,coercions:a,coercion:o}))throw MLe(`Invalid value for ${e}`,s);for(let[,p]of a)p();return t}var OLe,U7=cc(()=>{ftt();OLe=Symbol("clipanion/isOption")});var hL={};jf(hL,{KeyRelationship:()=>Oye,TypeAssertionError:()=>jre,applyCascade:()=>Kbs,as:()=>Nbs,assert:()=>Sbs,assertWithErrors:()=>wbs,cascade:()=>Z8r,fn:()=>Rbs,hasAtLeastOneKey:()=>$bs,hasExactLength:()=>F8r,hasForbiddenKeys:()=>eEs,hasKeyRelationship:()=>nEs,hasMaxLength:()=>xbs,hasMinLength:()=>Dbs,hasMutuallyExclusiveKeys:()=>tEs,hasRequiredKeys:()=>qbs,hasUniqueItems:()=>kbs,isArray:()=>Ctt,isAtLeast:()=>Zbs,isAtMost:()=>Lbs,isBase64:()=>Jbs,isBoolean:()=>Ibs,isDate:()=>hbs,isDict:()=>bbs,isEnum:()=>_Mt,isHexColor:()=>Xbs,isISO8601:()=>Hbs,isInExclusiveRange:()=>Wbs,isInInclusiveRange:()=>Vbs,isInstanceOf:()=>Bbs,isInteger:()=>Pbs,isJSON:()=>Ubs,isLiteral:()=>D8r,isLowerCase:()=>Mbs,isMap:()=>ybs,isNegative:()=>Gbs,isNullable:()=>zbs,isNumber:()=>Cbs,isObject:()=>k8r,isOneOf:()=>vbs,isOptional:()=>jbs,isPartial:()=>Ebs,isPayload:()=>mbs,isPositive:()=>Fbs,isRecord:()=>htt,isSet:()=>_bs,isString:()=>x8r,isTuple:()=>mtt,isUUID4:()=>Ybs,isUnknown:()=>hMt,isUpperCase:()=>Qbs,makeTrait:()=>G8r,makeValidator:()=>_I,matchesRegExp:()=>Obs,softAssert:()=>Tbs});function Ny(e){return e===null?"null":e===void 0?"undefined":e===""?"an empty string":typeof e=="symbol"?`<${e.toString()}>`:Array.isArray(e)?"an array":JSON.stringify(e)}function Mye(e,t){if(e.length===0)return"nothing";if(e.length===1)return Ny(e[0]);let r=e.slice(0,-1),s=e[e.length-1],a=e.length>2?`, ${t} `:` ${t} `;return`${r.map(o=>Ny(o)).join(", ")}${a}${Ny(s)}`}function Kre(e,t){var r,s,a;return typeof t=="number"?`${(r=e?.p)!==null&&r!==void 0?r:"."}[${t}]`:lbs.test(t)?`${(s=e?.p)!==null&&s!==void 0?s:""}.${t}`:`${(a=e?.p)!==null&&a!==void 0?a:"."}[${JSON.stringify(t)}]`}function mMt(e,t,r){return e===1?t:r}function ad({errors:e,p:t}={},r){return e?.push(`${t??"."}: ${r}`),!1}function pbs(e,t){return r=>{e[t]=r}}function fJ(e,t){return r=>{let s=e[t];return e[t]=r,fJ(e,t).bind(null,s)}}function QLe(e,t,r){let s=()=>(e(r()),a),a=()=>(e(t),s);return s}function hMt(){return _I({test:(e,t)=>!0})}function D8r(e){return _I({test:(t,r)=>t!==e?ad(r,`Expected ${Ny(e)} (got ${Ny(t)})`):!0})}function x8r(){return _I({test:(e,t)=>typeof e!="string"?ad(t,`Expected a string (got ${Ny(e)})`):!0})}function _Mt(e){let t=Array.isArray(e)?e:Object.values(e),r=t.every(a=>typeof a=="string"||typeof a=="number"),s=new Set(t);return s.size===1?D8r([...s][0]):_I({test:(a,o)=>s.has(a)?!0:r?ad(o,`Expected one of ${Mye(t,"or")} (got ${Ny(a)})`):ad(o,`Expected a valid enumeration value (got ${Ny(a)})`)})}function Ibs(){return _I({test:(e,t)=>{var r;if(typeof e!="boolean"){if(typeof t?.coercions<"u"){if(typeof t?.coercion>"u")return ad(t,"Unbound coercion result");let s=fbs.get(e);if(typeof s<"u")return t.coercions.push([(r=t.p)!==null&&r!==void 0?r:".",t.coercion.bind(null,s)]),!0}return ad(t,`Expected a boolean (got ${Ny(e)})`)}return!0}})}function Cbs(){return _I({test:(e,t)=>{var r;if(typeof e!="number"){if(typeof t?.coercions<"u"){if(typeof t?.coercion>"u")return ad(t,"Unbound coercion result");let s;if(typeof e=="string"){let a;try{a=JSON.parse(e)}catch{}if(typeof a=="number")if(JSON.stringify(a)===e)s=a;else return ad(t,`Received a number that can't be safely represented by the runtime (${e})`)}if(typeof s<"u")return t.coercions.push([(r=t.p)!==null&&r!==void 0?r:".",t.coercion.bind(null,s)]),!0}return ad(t,`Expected a number (got ${Ny(e)})`)}return!0}})}function mbs(e){return _I({test:(t,r)=>{var s;if(typeof r?.coercions>"u")return ad(r,"The isPayload predicate can only be used with coercion enabled");if(typeof r.coercion>"u")return ad(r,"Unbound coercion result");if(typeof t!="string")return ad(r,`Expected a string (got ${Ny(t)})`);let a;try{a=JSON.parse(t)}catch{return ad(r,`Expected a JSON string (got ${Ny(t)})`)}let o={value:a};return e(a,Object.assign(Object.assign({},r),{coercion:fJ(o,"value")}))?(r.coercions.push([(s=r.p)!==null&&s!==void 0?s:".",r.coercion.bind(null,o.value)]),!0):!1}})}function hbs(){return _I({test:(e,t)=>{var r;if(!(e instanceof Date)){if(typeof t?.coercions<"u"){if(typeof t?.coercion>"u")return ad(t,"Unbound coercion result");let s;if(typeof e=="string"&&R8r.test(e))s=new Date(e);else{let a;if(typeof e=="string"){let o;try{o=JSON.parse(e)}catch{}typeof o=="number"&&(a=o)}else typeof e=="number"&&(a=e);if(typeof a<"u")if(Number.isSafeInteger(a)||!Number.isSafeInteger(a*1e3))s=new Date(a*1e3);else return ad(t,`Received a timestamp that can't be safely represented by the runtime (${e})`)}if(typeof s<"u")return t.coercions.push([(r=t.p)!==null&&r!==void 0?r:".",t.coercion.bind(null,s)]),!0}return ad(t,`Expected a date (got ${Ny(e)})`)}return!0}})}function Ctt(e,{delimiter:t}={}){return _I({test:(r,s)=>{var a;let o=r;if(typeof r=="string"&&typeof t<"u"&&typeof s?.coercions<"u"){if(typeof s?.coercion>"u")return ad(s,"Unbound coercion result");r=r.split(t)}if(!Array.isArray(r))return ad(s,`Expected an array (got ${Ny(r)})`);let g=!0;for(let p=0,f=r.length;p{var o,g;if(Object.getPrototypeOf(s).toString()==="[object Set]")if(typeof a?.coercions<"u"){if(typeof a?.coercion>"u")return ad(a,"Unbound coercion result");let p=[...s],f=[...s];if(!r(f,Object.assign(Object.assign({},a),{coercion:void 0})))return!1;let m=()=>f.some((y,B)=>y!==p[B])?new Set(f):s;return a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",QLe(a.coercion,s,m)]),!0}else{let p=!0;for(let f of s)if(p=e(f,Object.assign({},a))&&p,!p&&a?.errors==null)break;return p}if(typeof a?.coercions<"u"){if(typeof a?.coercion>"u")return ad(a,"Unbound coercion result");let p={value:s};return r(s,Object.assign(Object.assign({},a),{coercion:fJ(p,"value")}))?(a.coercions.push([(g=a.p)!==null&&g!==void 0?g:".",QLe(a.coercion,s,()=>new Set(p.value))]),!0):!1}return ad(a,`Expected a set (got ${Ny(s)})`)}})}function ybs(e,t){let r=Ctt(mtt([e,t])),s=htt(t,{keys:e});return _I({test:(a,o)=>{var g,p,f;if(Object.getPrototypeOf(a).toString()==="[object Map]")if(typeof o?.coercions<"u"){if(typeof o?.coercion>"u")return ad(o,"Unbound coercion result");let m=[...a],y=[...a];if(!r(y,Object.assign(Object.assign({},o),{coercion:void 0})))return!1;let B=()=>y.some((v,G)=>v[0]!==m[G][0]||v[1]!==m[G][1])?new Map(y):a;return o.coercions.push([(g=o.p)!==null&&g!==void 0?g:".",QLe(o.coercion,a,B)]),!0}else{let m=!0;for(let[y,B]of a)if(m=e(y,Object.assign({},o))&&m,!m&&o?.errors==null||(m=t(B,Object.assign(Object.assign({},o),{p:Kre(o,y)}))&&m,!m&&o?.errors==null))break;return m}if(typeof o?.coercions<"u"){if(typeof o?.coercion>"u")return ad(o,"Unbound coercion result");let m={value:a};return Array.isArray(a)?r(a,Object.assign(Object.assign({},o),{coercion:void 0}))?(o.coercions.push([(p=o.p)!==null&&p!==void 0?p:".",QLe(o.coercion,a,()=>new Map(m.value))]),!0):!1:s(a,Object.assign(Object.assign({},o),{coercion:fJ(m,"value")}))?(o.coercions.push([(f=o.p)!==null&&f!==void 0?f:".",QLe(o.coercion,a,()=>new Map(Object.entries(m.value)))]),!0):!1}return ad(o,`Expected a map (got ${Ny(a)})`)}})}function mtt(e,{delimiter:t}={}){let r=F8r(e.length);return _I({test:(s,a)=>{var o;if(typeof s=="string"&&typeof t<"u"&&typeof a?.coercions<"u"){if(typeof a?.coercion>"u")return ad(a,"Unbound coercion result");s=s.split(t),a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",a.coercion.bind(null,s)])}if(!Array.isArray(s))return ad(a,`Expected a tuple (got ${Ny(s)})`);let g=r(s,Object.assign({},a));for(let p=0,f=s.length;p{var o;if(Array.isArray(s)&&typeof a?.coercions<"u")return typeof a?.coercion>"u"?ad(a,"Unbound coercion result"):r(s,Object.assign(Object.assign({},a),{coercion:void 0}))?(s=Object.fromEntries(s),a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",a.coercion.bind(null,s)]),!0):!1;if(typeof s!="object"||s===null)return ad(a,`Expected an object (got ${Ny(s)})`);let g=Object.keys(s),p=!0;for(let f=0,m=g.length;f{if(typeof a!="object"||a===null)return ad(o,`Expected an object (got ${Ny(a)})`);let g=new Set([...r,...Object.keys(a)]),p={},f=!0;for(let m of g){if(m==="constructor"||m==="__proto__")f=ad(Object.assign(Object.assign({},o),{p:Kre(o,m)}),"Unsafe property name");else{let y=Object.prototype.hasOwnProperty.call(e,m)?e[m]:void 0,B=Object.prototype.hasOwnProperty.call(a,m)?a[m]:void 0;typeof y<"u"?f=y(B,Object.assign(Object.assign({},o),{p:Kre(o,m),coercion:fJ(a,m)}))&&f:t===null?f=ad(Object.assign(Object.assign({},o),{p:Kre(o,m)}),`Extraneous property (got ${Ny(B)})`):Object.defineProperty(p,m,{enumerable:!0,get:()=>B,set:pbs(a,m)})}if(!f&&o?.errors==null)break}return t!==null&&(f||o?.errors!=null)&&(f=t(p,o)&&f),f}});return Object.assign(s,{properties:e})}function Ebs(e){return k8r(e,{extra:htt(hMt())})}function G8r(e){return()=>e}function _I({test:e}){return G8r(e)()}function Sbs(e,t){if(!t(e))throw new jre}function wbs(e,t){let r=[];if(!t(e,{errors:r}))throw new jre({errors:r})}function Tbs(e,t){}function Nbs(e,t,{coerce:r=!1,errors:s,throw:a}={}){let o=s?[]:void 0;if(!r){if(t(e,{errors:o}))return a?e:{value:e,errors:void 0};if(a)throw new jre({errors:o});return{value:void 0,errors:o??!0}}let g={value:e},p=fJ(g,"value"),f=[];if(!t(e,{errors:o,coercion:p,coercions:f})){if(a)throw new jre({errors:o});return{value:void 0,errors:o??!0}}for(let[,m]of f)m();return a?g.value:{value:g.value,errors:void 0}}function Rbs(e,t){let r=mtt(e);return(...s)=>{if(!r(s))throw new jre;return t(...s)}}function Dbs(e){return _I({test:(t,r)=>t.length>=e?!0:ad(r,`Expected to have a length of at least ${e} elements (got ${t.length})`)})}function xbs(e){return _I({test:(t,r)=>t.length<=e?!0:ad(r,`Expected to have a length of at most ${e} elements (got ${t.length})`)})}function F8r(e){return _I({test:(t,r)=>t.length!==e?ad(r,`Expected to have a length of exactly ${e} elements (got ${t.length})`):!0})}function kbs({map:e}={}){return _I({test:(t,r)=>{let s=new Set,a=new Set;for(let o=0,g=t.length;oe<=0?!0:ad(t,`Expected to be negative (got ${e})`)})}function Fbs(){return _I({test:(e,t)=>e>=0?!0:ad(t,`Expected to be positive (got ${e})`)})}function Zbs(e){return _I({test:(t,r)=>t>=e?!0:ad(r,`Expected to be at least ${e} (got ${t})`)})}function Lbs(e){return _I({test:(t,r)=>t<=e?!0:ad(r,`Expected to be at most ${e} (got ${t})`)})}function Vbs(e,t){return _I({test:(r,s)=>r>=e&&r<=t?!0:ad(s,`Expected to be in the [${e}; ${t}] range (got ${r})`)})}function Wbs(e,t){return _I({test:(r,s)=>r>=e&&rt!==Math.round(t)?ad(r,`Expected to be an integer (got ${t})`):!e&&!Number.isSafeInteger(t)?ad(r,`Expected to be a safe integer (got ${t})`):!0})}function Obs(e){return _I({test:(t,r)=>e.test(t)?!0:ad(r,`Expected to match the pattern ${e.toString()} (got ${Ny(t)})`)})}function Mbs(){return _I({test:(e,t)=>e!==e.toLowerCase()?ad(t,`Expected to be all-lowercase (got ${e})`):!0})}function Qbs(){return _I({test:(e,t)=>e!==e.toUpperCase()?ad(t,`Expected to be all-uppercase (got ${e})`):!0})}function Ybs(){return _I({test:(e,t)=>dbs.test(e)?!0:ad(t,`Expected to be a valid UUID v4 (got ${Ny(e)})`)})}function Hbs(){return _I({test:(e,t)=>R8r.test(e)?!0:ad(t,`Expected to be a valid ISO 8601 date string (got ${Ny(e)})`)})}function Xbs({alpha:e=!1}){return _I({test:(t,r)=>(e?ubs.test(t):gbs.test(t))?!0:ad(r,`Expected to be a valid hexadecimal color string (got ${Ny(t)})`)})}function Jbs(){return _I({test:(e,t)=>Abs.test(e)?!0:ad(t,`Expected to be a valid base 64 string (got ${Ny(e)})`)})}function Ubs(e=hMt()){return _I({test:(t,r)=>{let s;try{s=JSON.parse(t)}catch{return ad(r,`Expected to be a valid JSON string (got ${Ny(t)})`)}return e(s,r)}})}function Z8r(e,...t){let r=Array.isArray(t[0])?t[0]:t;return _I({test:(s,a)=>{var o,g;let p={value:s},f=typeof a?.coercions<"u"?fJ(p,"value"):void 0,m=typeof a?.coercions<"u"?[]:void 0;if(!e(s,Object.assign(Object.assign({},a),{coercion:f,coercions:m})))return!1;let y=[];if(typeof m<"u")for(let[,B]of m)y.push(B());try{if(typeof a?.coercions<"u"){if(p.value!==s){if(typeof a?.coercion>"u")return ad(a,"Unbound coercion result");a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",a.coercion.bind(null,p.value)])}(g=a?.coercions)===null||g===void 0||g.push(...m)}return r.every(B=>B(p.value,a))}finally{for(let B of y)B()}}})}function Kbs(e,...t){let r=Array.isArray(t[0])?t[0]:t;return Z8r(e,r)}function jbs(e){return _I({test:(t,r)=>typeof t>"u"?!0:e(t,r)})}function zbs(e){return _I({test:(t,r)=>t===null?!0:e(t,r)})}function qbs(e,t){var r;let s=new Set(e),a=YLe[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return _I({test:(o,g)=>{let p=new Set(Object.keys(o)),f=[];for(let m of s)a(p,m,o)||f.push(m);return f.length>0?ad(g,`Missing required ${mMt(f.length,"property","properties")} ${Mye(f,"and")}`):!0}})}function $bs(e,t){var r;let s=new Set(e),a=YLe[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return _I({test:(o,g)=>Object.keys(o).some(m=>a(s,m,o))?!0:ad(g,`Missing at least one property from ${Mye(Array.from(s),"or")}`)})}function eEs(e,t){var r;let s=new Set(e),a=YLe[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return _I({test:(o,g)=>{let p=new Set(Object.keys(o)),f=[];for(let m of s)a(p,m,o)&&f.push(m);return f.length>0?ad(g,`Forbidden ${mMt(f.length,"property","properties")} ${Mye(f,"and")}`):!0}})}function tEs(e,t){var r;let s=new Set(e),a=YLe[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return _I({test:(o,g)=>{let p=new Set(Object.keys(o)),f=[];for(let m of s)a(p,m,o)&&f.push(m);return f.length>1?ad(g,`Mutually exclusive properties ${Mye(f,"and")}`):!0}})}function nEs(e,t,r,s){var a,o;let g=new Set((a=s?.ignore)!==null&&a!==void 0?a:[]),p=YLe[(o=s?.missingIf)!==null&&o!==void 0?o:"missing"],f=new Set(r),m=rEs[t],y=t===Oye.Forbids?"or":"and";return _I({test:(B,v)=>{let G=new Set(Object.keys(B));if(!p(G,e,B)||g.has(B[e]))return!0;let T=[];for(let O of f)(p(G,O,B)&&!g.has(B[O]))!==m.expect&&T.push(O);return T.length>=1?ad(v,`Property "${e}" ${m.message} ${mMt(T.length,"property","properties")} ${Mye(T,y)}`):!0}})}var lbs,ubs,gbs,Abs,dbs,R8r,fbs,Bbs,vbs,jre,YLe,Oye,rEs,_L=cc(()=>{lbs=/^[a-zA-Z_][a-zA-Z0-9_]*$/;ubs=/^#[0-9a-f]{6}$/i,gbs=/^#[0-9a-f]{6}([0-9a-f]{2})?$/i,Abs=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,dbs=/^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89aAbB][a-f0-9]{3}-[a-f0-9]{12}$/i,R8r=/^(?:[1-9]\d{3}(-?)(?:(?:0[1-9]|1[0-2])\1(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])\1(?:29|30)|(?:0[13578]|1[02])(?:\1)31|00[1-9]|0[1-9]\d|[12]\d{2}|3(?:[0-5]\d|6[0-5]))|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)(?:(-?)02(?:\2)29|-?366))T(?:[01]\d|2[0-3])(:?)[0-5]\d(?:\3[0-5]\d)?(?:Z|[+-][01]\d(?:\3[0-5]\d)?)$/;fbs=new Map([["true",!0],["True",!0],["1",!0],[1,!0],["false",!1],["False",!1],["0",!1],[0,!1]]);Bbs=e=>_I({test:(t,r)=>t instanceof e?!0:ad(r,`Expected an instance of ${e.name} (got ${Ny(t)})`)}),vbs=(e,{exclusive:t=!1}={})=>_I({test:(r,s)=>{var a,o,g;let p=[],f=typeof s?.errors<"u"?[]:void 0;for(let m=0,y=e.length;m1?ad(s,`Expected to match exactly a single predicate (matched ${p.join(", ")})`):(g=s?.errors)===null||g===void 0||g.push(...f),!1}});jre=class extends Error{constructor({errors:t}={}){let r="Type mismatch";if(t&&t.length>0){r+=` +- ${mtt(r)}`).join("")}`)}function Wge(e,t,r){if(typeof r>"u")return t;let s=[],a=[],o=p=>{let f=t;return t=p,o.bind(null,f)};if(!r(t,{errors:s,coercions:a,coercion:o}))throw HLe(`Invalid value for ${e}`,s);for(let[,p]of a)p();return t}var MLe,ej=cc(()=>{Ctt();MLe=Symbol("clipanion/isOption")});var _L={};zf(_L,{KeyRelationship:()=>Mye,TypeAssertionError:()=>qre,applyCascade:()=>rEs,as:()=>Zbs,assert:()=>kbs,assertWithErrors:()=>Gbs,cascade:()=>Q8r,fn:()=>Lbs,hasAtLeastOneKey:()=>oEs,hasExactLength:()=>O8r,hasForbiddenKeys:()=>aEs,hasKeyRelationship:()=>uEs,hasMaxLength:()=>Wbs,hasMinLength:()=>Vbs,hasMutuallyExclusiveKeys:()=>cEs,hasRequiredKeys:()=>sEs,hasUniqueItems:()=>Pbs,isArray:()=>htt,isAtLeast:()=>Mbs,isAtMost:()=>Hbs,isBase64:()=>eEs,isBoolean:()=>Ebs,isDate:()=>Sbs,isDict:()=>Nbs,isEnum:()=>EQt,isHexColor:()=>$bs,isISO8601:()=>qbs,isInExclusiveRange:()=>Xbs,isInInclusiveRange:()=>Ybs,isInstanceOf:()=>Dbs,isInteger:()=>Jbs,isJSON:()=>tEs,isLiteral:()=>L8r,isLowerCase:()=>Kbs,isMap:()=>Tbs,isNegative:()=>Obs,isNullable:()=>iEs,isNumber:()=>Bbs,isObject:()=>W8r,isOneOf:()=>xbs,isOptional:()=>nEs,isPartial:()=>Rbs,isPayload:()=>vbs,isPositive:()=>Qbs,isRecord:()=>ytt,isSet:()=>wbs,isString:()=>V8r,isTuple:()=>_tt,isUUID4:()=>zbs,isUnknown:()=>bQt,isUpperCase:()=>jbs,makeTrait:()=>P8r,makeValidator:()=>yI,matchesRegExp:()=>Ubs,softAssert:()=>Fbs});function Ry(e){return e===null?"null":e===void 0?"undefined":e===""?"an empty string":typeof e=="symbol"?`<${e.toString()}>`:Array.isArray(e)?"an array":JSON.stringify(e)}function Hye(e,t){if(e.length===0)return"nothing";if(e.length===1)return Ry(e[0]);let r=e.slice(0,-1),s=e[e.length-1],a=e.length>2?`, ${t} `:` ${t} `;return`${r.map(o=>Ry(o)).join(", ")}${a}${Ry(s)}`}function zre(e,t){var r,s,a;return typeof t=="number"?`${(r=e?.p)!==null&&r!==void 0?r:"."}[${t}]`:Ibs.test(t)?`${(s=e?.p)!==null&&s!==void 0?s:""}.${t}`:`${(a=e?.p)!==null&&a!==void 0?a:"."}[${JSON.stringify(t)}]`}function yQt(e,t,r){return e===1?t:r}function cd({errors:e,p:t}={},r){return e?.push(`${t??"."}: ${r}`),!1}function ybs(e,t){return r=>{e[t]=r}}function mJ(e,t){return r=>{let s=e[t];return e[t]=r,mJ(e,t).bind(null,s)}}function YLe(e,t,r){let s=()=>(e(r()),a),a=()=>(e(t),s);return s}function bQt(){return yI({test:(e,t)=>!0})}function L8r(e){return yI({test:(t,r)=>t!==e?cd(r,`Expected ${Ry(e)} (got ${Ry(t)})`):!0})}function V8r(){return yI({test:(e,t)=>typeof e!="string"?cd(t,`Expected a string (got ${Ry(e)})`):!0})}function EQt(e){let t=Array.isArray(e)?e:Object.values(e),r=t.every(a=>typeof a=="string"||typeof a=="number"),s=new Set(t);return s.size===1?L8r([...s][0]):yI({test:(a,o)=>s.has(a)?!0:r?cd(o,`Expected one of ${Hye(t,"or")} (got ${Ry(a)})`):cd(o,`Expected a valid enumeration value (got ${Ry(a)})`)})}function Ebs(){return yI({test:(e,t)=>{var r;if(typeof e!="boolean"){if(typeof t?.coercions<"u"){if(typeof t?.coercion>"u")return cd(t,"Unbound coercion result");let s=bbs.get(e);if(typeof s<"u")return t.coercions.push([(r=t.p)!==null&&r!==void 0?r:".",t.coercion.bind(null,s)]),!0}return cd(t,`Expected a boolean (got ${Ry(e)})`)}return!0}})}function Bbs(){return yI({test:(e,t)=>{var r;if(typeof e!="number"){if(typeof t?.coercions<"u"){if(typeof t?.coercion>"u")return cd(t,"Unbound coercion result");let s;if(typeof e=="string"){let a;try{a=JSON.parse(e)}catch{}if(typeof a=="number")if(JSON.stringify(a)===e)s=a;else return cd(t,`Received a number that can't be safely represented by the runtime (${e})`)}if(typeof s<"u")return t.coercions.push([(r=t.p)!==null&&r!==void 0?r:".",t.coercion.bind(null,s)]),!0}return cd(t,`Expected a number (got ${Ry(e)})`)}return!0}})}function vbs(e){return yI({test:(t,r)=>{var s;if(typeof r?.coercions>"u")return cd(r,"The isPayload predicate can only be used with coercion enabled");if(typeof r.coercion>"u")return cd(r,"Unbound coercion result");if(typeof t!="string")return cd(r,`Expected a string (got ${Ry(t)})`);let a;try{a=JSON.parse(t)}catch{return cd(r,`Expected a JSON string (got ${Ry(t)})`)}let o={value:a};return e(a,Object.assign(Object.assign({},r),{coercion:mJ(o,"value")}))?(r.coercions.push([(s=r.p)!==null&&s!==void 0?s:".",r.coercion.bind(null,o.value)]),!0):!1}})}function Sbs(){return yI({test:(e,t)=>{var r;if(!(e instanceof Date)){if(typeof t?.coercions<"u"){if(typeof t?.coercion>"u")return cd(t,"Unbound coercion result");let s;if(typeof e=="string"&&Z8r.test(e))s=new Date(e);else{let a;if(typeof e=="string"){let o;try{o=JSON.parse(e)}catch{}typeof o=="number"&&(a=o)}else typeof e=="number"&&(a=e);if(typeof a<"u")if(Number.isSafeInteger(a)||!Number.isSafeInteger(a*1e3))s=new Date(a*1e3);else return cd(t,`Received a timestamp that can't be safely represented by the runtime (${e})`)}if(typeof s<"u")return t.coercions.push([(r=t.p)!==null&&r!==void 0?r:".",t.coercion.bind(null,s)]),!0}return cd(t,`Expected a date (got ${Ry(e)})`)}return!0}})}function htt(e,{delimiter:t}={}){return yI({test:(r,s)=>{var a;let o=r;if(typeof r=="string"&&typeof t<"u"&&typeof s?.coercions<"u"){if(typeof s?.coercion>"u")return cd(s,"Unbound coercion result");r=r.split(t)}if(!Array.isArray(r))return cd(s,`Expected an array (got ${Ry(r)})`);let g=!0;for(let p=0,f=r.length;p{var o,g;if(Object.getPrototypeOf(s).toString()==="[object Set]")if(typeof a?.coercions<"u"){if(typeof a?.coercion>"u")return cd(a,"Unbound coercion result");let p=[...s],f=[...s];if(!r(f,Object.assign(Object.assign({},a),{coercion:void 0})))return!1;let m=()=>f.some((y,B)=>y!==p[B])?new Set(f):s;return a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",YLe(a.coercion,s,m)]),!0}else{let p=!0;for(let f of s)if(p=e(f,Object.assign({},a))&&p,!p&&a?.errors==null)break;return p}if(typeof a?.coercions<"u"){if(typeof a?.coercion>"u")return cd(a,"Unbound coercion result");let p={value:s};return r(s,Object.assign(Object.assign({},a),{coercion:mJ(p,"value")}))?(a.coercions.push([(g=a.p)!==null&&g!==void 0?g:".",YLe(a.coercion,s,()=>new Set(p.value))]),!0):!1}return cd(a,`Expected a set (got ${Ry(s)})`)}})}function Tbs(e,t){let r=htt(_tt([e,t])),s=ytt(t,{keys:e});return yI({test:(a,o)=>{var g,p,f;if(Object.getPrototypeOf(a).toString()==="[object Map]")if(typeof o?.coercions<"u"){if(typeof o?.coercion>"u")return cd(o,"Unbound coercion result");let m=[...a],y=[...a];if(!r(y,Object.assign(Object.assign({},o),{coercion:void 0})))return!1;let B=()=>y.some((v,k)=>v[0]!==m[k][0]||v[1]!==m[k][1])?new Map(y):a;return o.coercions.push([(g=o.p)!==null&&g!==void 0?g:".",YLe(o.coercion,a,B)]),!0}else{let m=!0;for(let[y,B]of a)if(m=e(y,Object.assign({},o))&&m,!m&&o?.errors==null||(m=t(B,Object.assign(Object.assign({},o),{p:zre(o,y)}))&&m,!m&&o?.errors==null))break;return m}if(typeof o?.coercions<"u"){if(typeof o?.coercion>"u")return cd(o,"Unbound coercion result");let m={value:a};return Array.isArray(a)?r(a,Object.assign(Object.assign({},o),{coercion:void 0}))?(o.coercions.push([(p=o.p)!==null&&p!==void 0?p:".",YLe(o.coercion,a,()=>new Map(m.value))]),!0):!1:s(a,Object.assign(Object.assign({},o),{coercion:mJ(m,"value")}))?(o.coercions.push([(f=o.p)!==null&&f!==void 0?f:".",YLe(o.coercion,a,()=>new Map(Object.entries(m.value)))]),!0):!1}return cd(o,`Expected a map (got ${Ry(a)})`)}})}function _tt(e,{delimiter:t}={}){let r=O8r(e.length);return yI({test:(s,a)=>{var o;if(typeof s=="string"&&typeof t<"u"&&typeof a?.coercions<"u"){if(typeof a?.coercion>"u")return cd(a,"Unbound coercion result");s=s.split(t),a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",a.coercion.bind(null,s)])}if(!Array.isArray(s))return cd(a,`Expected a tuple (got ${Ry(s)})`);let g=r(s,Object.assign({},a));for(let p=0,f=s.length;p{var o;if(Array.isArray(s)&&typeof a?.coercions<"u")return typeof a?.coercion>"u"?cd(a,"Unbound coercion result"):r(s,Object.assign(Object.assign({},a),{coercion:void 0}))?(s=Object.fromEntries(s),a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",a.coercion.bind(null,s)]),!0):!1;if(typeof s!="object"||s===null)return cd(a,`Expected an object (got ${Ry(s)})`);let g=Object.keys(s),p=!0;for(let f=0,m=g.length;f{if(typeof a!="object"||a===null)return cd(o,`Expected an object (got ${Ry(a)})`);let g=new Set([...r,...Object.keys(a)]),p={},f=!0;for(let m of g){if(m==="constructor"||m==="__proto__")f=cd(Object.assign(Object.assign({},o),{p:zre(o,m)}),"Unsafe property name");else{let y=Object.prototype.hasOwnProperty.call(e,m)?e[m]:void 0,B=Object.prototype.hasOwnProperty.call(a,m)?a[m]:void 0;typeof y<"u"?f=y(B,Object.assign(Object.assign({},o),{p:zre(o,m),coercion:mJ(a,m)}))&&f:t===null?f=cd(Object.assign(Object.assign({},o),{p:zre(o,m)}),`Extraneous property (got ${Ry(B)})`):Object.defineProperty(p,m,{enumerable:!0,get:()=>B,set:ybs(a,m)})}if(!f&&o?.errors==null)break}return t!==null&&(f||o?.errors!=null)&&(f=t(p,o)&&f),f}});return Object.assign(s,{properties:e})}function Rbs(e){return W8r(e,{extra:ytt(bQt())})}function P8r(e){return()=>e}function yI({test:e}){return P8r(e)()}function kbs(e,t){if(!t(e))throw new qre}function Gbs(e,t){let r=[];if(!t(e,{errors:r}))throw new qre({errors:r})}function Fbs(e,t){}function Zbs(e,t,{coerce:r=!1,errors:s,throw:a}={}){let o=s?[]:void 0;if(!r){if(t(e,{errors:o}))return a?e:{value:e,errors:void 0};if(a)throw new qre({errors:o});return{value:void 0,errors:o??!0}}let g={value:e},p=mJ(g,"value"),f=[];if(!t(e,{errors:o,coercion:p,coercions:f})){if(a)throw new qre({errors:o});return{value:void 0,errors:o??!0}}for(let[,m]of f)m();return a?g.value:{value:g.value,errors:void 0}}function Lbs(e,t){let r=_tt(e);return(...s)=>{if(!r(s))throw new qre;return t(...s)}}function Vbs(e){return yI({test:(t,r)=>t.length>=e?!0:cd(r,`Expected to have a length of at least ${e} elements (got ${t.length})`)})}function Wbs(e){return yI({test:(t,r)=>t.length<=e?!0:cd(r,`Expected to have a length of at most ${e} elements (got ${t.length})`)})}function O8r(e){return yI({test:(t,r)=>t.length!==e?cd(r,`Expected to have a length of exactly ${e} elements (got ${t.length})`):!0})}function Pbs({map:e}={}){return yI({test:(t,r)=>{let s=new Set,a=new Set;for(let o=0,g=t.length;oe<=0?!0:cd(t,`Expected to be negative (got ${e})`)})}function Qbs(){return yI({test:(e,t)=>e>=0?!0:cd(t,`Expected to be positive (got ${e})`)})}function Mbs(e){return yI({test:(t,r)=>t>=e?!0:cd(r,`Expected to be at least ${e} (got ${t})`)})}function Hbs(e){return yI({test:(t,r)=>t<=e?!0:cd(r,`Expected to be at most ${e} (got ${t})`)})}function Ybs(e,t){return yI({test:(r,s)=>r>=e&&r<=t?!0:cd(s,`Expected to be in the [${e}; ${t}] range (got ${r})`)})}function Xbs(e,t){return yI({test:(r,s)=>r>=e&&rt!==Math.round(t)?cd(r,`Expected to be an integer (got ${t})`):!e&&!Number.isSafeInteger(t)?cd(r,`Expected to be a safe integer (got ${t})`):!0})}function Ubs(e){return yI({test:(t,r)=>e.test(t)?!0:cd(r,`Expected to match the pattern ${e.toString()} (got ${Ry(t)})`)})}function Kbs(){return yI({test:(e,t)=>e!==e.toLowerCase()?cd(t,`Expected to be all-lowercase (got ${e})`):!0})}function jbs(){return yI({test:(e,t)=>e!==e.toUpperCase()?cd(t,`Expected to be all-uppercase (got ${e})`):!0})}function zbs(){return yI({test:(e,t)=>_bs.test(e)?!0:cd(t,`Expected to be a valid UUID v4 (got ${Ry(e)})`)})}function qbs(){return yI({test:(e,t)=>Z8r.test(e)?!0:cd(t,`Expected to be a valid ISO 8601 date string (got ${Ry(e)})`)})}function $bs({alpha:e=!1}){return yI({test:(t,r)=>(e?Cbs.test(t):mbs.test(t))?!0:cd(r,`Expected to be a valid hexadecimal color string (got ${Ry(t)})`)})}function eEs(){return yI({test:(e,t)=>hbs.test(e)?!0:cd(t,`Expected to be a valid base 64 string (got ${Ry(e)})`)})}function tEs(e=bQt()){return yI({test:(t,r)=>{let s;try{s=JSON.parse(t)}catch{return cd(r,`Expected to be a valid JSON string (got ${Ry(t)})`)}return e(s,r)}})}function Q8r(e,...t){let r=Array.isArray(t[0])?t[0]:t;return yI({test:(s,a)=>{var o,g;let p={value:s},f=typeof a?.coercions<"u"?mJ(p,"value"):void 0,m=typeof a?.coercions<"u"?[]:void 0;if(!e(s,Object.assign(Object.assign({},a),{coercion:f,coercions:m})))return!1;let y=[];if(typeof m<"u")for(let[,B]of m)y.push(B());try{if(typeof a?.coercions<"u"){if(p.value!==s){if(typeof a?.coercion>"u")return cd(a,"Unbound coercion result");a.coercions.push([(o=a.p)!==null&&o!==void 0?o:".",a.coercion.bind(null,p.value)])}(g=a?.coercions)===null||g===void 0||g.push(...m)}return r.every(B=>B(p.value,a))}finally{for(let B of y)B()}}})}function rEs(e,...t){let r=Array.isArray(t[0])?t[0]:t;return Q8r(e,r)}function nEs(e){return yI({test:(t,r)=>typeof t>"u"?!0:e(t,r)})}function iEs(e){return yI({test:(t,r)=>t===null?!0:e(t,r)})}function sEs(e,t){var r;let s=new Set(e),a=XLe[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return yI({test:(o,g)=>{let p=new Set(Object.keys(o)),f=[];for(let m of s)a(p,m,o)||f.push(m);return f.length>0?cd(g,`Missing required ${yQt(f.length,"property","properties")} ${Hye(f,"and")}`):!0}})}function oEs(e,t){var r;let s=new Set(e),a=XLe[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return yI({test:(o,g)=>Object.keys(o).some(m=>a(s,m,o))?!0:cd(g,`Missing at least one property from ${Hye(Array.from(s),"or")}`)})}function aEs(e,t){var r;let s=new Set(e),a=XLe[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return yI({test:(o,g)=>{let p=new Set(Object.keys(o)),f=[];for(let m of s)a(p,m,o)&&f.push(m);return f.length>0?cd(g,`Forbidden ${yQt(f.length,"property","properties")} ${Hye(f,"and")}`):!0}})}function cEs(e,t){var r;let s=new Set(e),a=XLe[(r=t?.missingIf)!==null&&r!==void 0?r:"missing"];return yI({test:(o,g)=>{let p=new Set(Object.keys(o)),f=[];for(let m of s)a(p,m,o)&&f.push(m);return f.length>1?cd(g,`Mutually exclusive properties ${Hye(f,"and")}`):!0}})}function uEs(e,t,r,s){var a,o;let g=new Set((a=s?.ignore)!==null&&a!==void 0?a:[]),p=XLe[(o=s?.missingIf)!==null&&o!==void 0?o:"missing"],f=new Set(r),m=lEs[t],y=t===Mye.Forbids?"or":"and";return yI({test:(B,v)=>{let k=new Set(Object.keys(B));if(!p(k,e,B)||g.has(B[e]))return!0;let T=[];for(let O of f)(p(k,O,B)&&!g.has(B[O]))!==m.expect&&T.push(O);return T.length>=1?cd(v,`Property "${e}" ${m.message} ${yQt(T.length,"property","properties")} ${Hye(T,y)}`):!0}})}var Ibs,Cbs,mbs,hbs,_bs,Z8r,bbs,Dbs,xbs,qre,XLe,Mye,lEs,yL=cc(()=>{Ibs=/^[a-zA-Z_][a-zA-Z0-9_]*$/;Cbs=/^#[0-9a-f]{6}$/i,mbs=/^#[0-9a-f]{6}([0-9a-f]{2})?$/i,hbs=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,_bs=/^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89aAbB][a-f0-9]{3}-[a-f0-9]{12}$/i,Z8r=/^(?:[1-9]\d{3}(-?)(?:(?:0[1-9]|1[0-2])\1(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])\1(?:29|30)|(?:0[13578]|1[02])(?:\1)31|00[1-9]|0[1-9]\d|[12]\d{2}|3(?:[0-5]\d|6[0-5]))|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)(?:(-?)02(?:\2)29|-?366))T(?:[01]\d|2[0-3])(:?)[0-5]\d(?:\3[0-5]\d)?(?:Z|[+-][01]\d(?:\3[0-5]\d)?)$/;bbs=new Map([["true",!0],["True",!0],["1",!0],[1,!0],["false",!1],["False",!1],["0",!1],[0,!1]]);Dbs=e=>yI({test:(t,r)=>t instanceof e?!0:cd(r,`Expected an instance of ${e.name} (got ${Ry(t)})`)}),xbs=(e,{exclusive:t=!1}={})=>yI({test:(r,s)=>{var a,o,g;let p=[],f=typeof s?.errors<"u"?[]:void 0;for(let m=0,y=e.length;m1?cd(s,`Expected to match exactly a single predicate (matched ${p.join(", ")})`):(g=s?.errors)===null||g===void 0||g.push(...f),!1}});qre=class extends Error{constructor({errors:t}={}){let r="Type mismatch";if(t&&t.length>0){r+=` `;for(let s of t)r+=` -- ${s}`}super(r)}};YLe={missing:(e,t)=>e.has(t),undefined:(e,t,r)=>e.has(t)&&typeof r[t]<"u",nil:(e,t,r)=>e.has(t)&&r[t]!=null,falsy:(e,t,r)=>e.has(t)&&!!r[t]};(function(e){e.Forbids="Forbids",e.Requires="Requires"})(Oye||(Oye={}));rEs={[Oye.Forbids]:{expect:!1,message:"forbids using"},[Oye.Requires]:{expect:!0,message:"requires using"}}});var Cb,zre=cc(()=>{U7();Cb=class{constructor(){this.help=!1}static Usage(t){return t}async catch(t){throw t}async validateAndExecute(){let r=this.constructor.schema;if(Array.isArray(r)){let{isDict:a,isUnknown:o,applyCascade:g}=await Promise.resolve().then(()=>(_L(),hL)),p=g(a(o()),r),f=[],m=[];if(!p(this,{errors:f,coercions:m}))throw MLe("Invalid option schema",f);for(let[,B]of m)B()}else if(r!=null)throw new Error("Invalid command schema");let s=await this.execute();return typeof s<"u"?s:0}};Cb.isOption=OLe;Cb.Default=[]});function yL(e){pMt&&console.log(e)}function V8r(){let e={nodes:[]};for(let t=0;t{if(t.has(s))return;t.add(s);let a=e.nodes[s];for(let g of Object.values(a.statics))for(let{to:p}of g)r(p);for(let[,{to:g}]of a.dynamics)r(g);for(let{to:g}of a.shortcuts)r(g);let o=new Set(a.shortcuts.map(({to:g})=>g));for(;a.shortcuts.length>0;){let{to:g}=a.shortcuts.shift(),p=e.nodes[g];for(let[f,m]of Object.entries(p.statics)){let y=Object.prototype.hasOwnProperty.call(a.statics,f)?a.statics[f]:a.statics[f]=[];for(let B of m)y.some(({to:v})=>B.to===v)||y.push(B)}for(let[f,m]of p.dynamics)a.dynamics.some(([y,{to:B}])=>f===y&&m.to===B)||a.dynamics.push([f,m]);for(let f of p.shortcuts)o.has(f.to)||(a.shortcuts.push(f),o.add(f.to))}};r(eh.InitialNode)}function oEs(e,{prefix:t=""}={}){if(pMt){yL(`${t}Nodes are:`);for(let r=0;ry!==eh.ErrorNode).map(({state:y})=>({usage:y.candidateUsage,reason:null})));if(m.every(({node:y})=>y===eh.ErrorNode))throw new Pye(t,m.map(({state:y})=>({usage:y.candidateUsage,reason:y.errorMessage})));s=lEs(m)}if(s.length>0){yL(" Results:");for(let o of s)yL(` - ${o.node} -> ${JSON.stringify(o.state)}`)}else yL(" No results");return s}function cEs(e,t,{endToken:r=Ty.EndOfInput}={}){let s=aEs(e,[...t,r]);return uEs(t,s.map(({state:a})=>a))}function lEs(e){let t=0;for(let{state:r}of e)r.path.length>t&&(t=r.path.length);return e.filter(({state:r})=>r.path.length===t)}function uEs(e,t){let r=t.filter(v=>v.selectedIndex!==null),s=r.filter(v=>!v.partial);if(s.length>0&&(r=s),r.length===0)throw new Error;let a=r.filter(v=>v.selectedIndex===Tge||v.requiredOptions.every(G=>G.some(T=>v.options.find(O=>O.name===T))));if(a.length===0)throw new Pye(e,r.map(v=>({usage:v.candidateUsage,reason:null})));let o=0;for(let v of a)v.path.length>o&&(o=v.path.length);let g=a.filter(v=>v.path.length===o),p=v=>v.positionals.filter(({extra:G})=>!G).length+v.options.length,f=g.map(v=>({state:v,positionalCount:p(v)})),m=0;for(let{positionalCount:v}of f)v>m&&(m=v);let y=f.filter(({positionalCount:v})=>v===m).map(({state:v})=>v),B=gEs(y);if(B.length>1)throw new ptt(e,B.map(v=>v.candidateUsage));return B[0]}function gEs(e){let t=[],r=[];for(let s of e)s.selectedIndex===Tge?r.push(s):t.push(s);return r.length>0&&t.push({...L8r,path:W8r(...r.map(s=>s.path)),options:r.reduce((s,a)=>s.concat(a.options),[])}),t}function W8r(e,t,...r){return t===void 0?Array.from(e):W8r(e.filter((s,a)=>s===t[a]),...r)}function lW(){return{dynamics:[],shortcuts:[],statics:{}}}function P8r(e){return e===eh.SuccessNode||e===eh.ErrorNode}function yMt(e,t=0){return{to:P8r(e.to)?e.to:e.to>=eh.CustomNode?e.to+t-eh.CustomNode+1:e.to+t,reducer:e.reducer}}function AEs(e,t=0){let r=lW();for(let[s,a]of e.dynamics)r.dynamics.push([s,yMt(a,t)]);for(let s of e.shortcuts)r.shortcuts.push(yMt(s,t));for(let[s,a]of Object.entries(e.statics))r.statics[s]=a.map(o=>yMt(o,t));return r}function nR(e,t,r,s,a){e.nodes[t].dynamics.push([r,{to:s,reducer:a}])}function Qye(e,t,r,s){e.nodes[t].shortcuts.push({to:r,reducer:s})}function pF(e,t,r,s,a){(Object.prototype.hasOwnProperty.call(e.nodes[t].statics,r)?e.nodes[t].statics[r]:e.nodes[t].statics[r]=[]).push({to:s,reducer:a})}function _tt(e,t,r,s,a){if(Array.isArray(t)){let[o,...g]=t;return e[o](r,s,a,...g)}else return e[t](r,s,a)}var L8r,dEs,bMt,uW,EMt,ytt,btt=cc(()=>{dtt();ftt();L8r={candidateUsage:null,requiredOptions:[],errorMessage:null,ignoreOptions:!1,path:[],positionals:[],options:[],remainder:null,selectedIndex:Tge,partial:!1,tokens:[]};dEs={always:()=>!0,isOptionLike:(e,t)=>!e.ignoreOptions&&t!=="-"&&t.startsWith("-"),isNotOptionLike:(e,t)=>e.ignoreOptions||t==="-"||!t.startsWith("-"),isOption:(e,t,r,s)=>!e.ignoreOptions&&t===s,isBatchOption:(e,t,r,s)=>!e.ignoreOptions&&w8r.test(t)&&[...t.slice(1)].every(a=>s.has(`-${a}`)),isBoundOption:(e,t,r,s,a)=>{let o=t.match(dMt);return!e.ignoreOptions&&!!o&&Att.test(o[1])&&s.has(o[1])&&a.filter(g=>g.nameSet.includes(o[1])).every(g=>g.allowBinding)},isNegatedOption:(e,t,r,s)=>!e.ignoreOptions&&t===`--no-${s.slice(2)}`,isHelp:(e,t)=>!e.ignoreOptions&&AMt.test(t),isUnsupportedOption:(e,t,r,s)=>!e.ignoreOptions&&t.startsWith("-")&&Att.test(t)&&!s.has(t),isInvalidOption:(e,t)=>!e.ignoreOptions&&t.startsWith("-")&&!Att.test(t)},bMt={setCandidateState:(e,t,r,s)=>({...e,...s}),setSelectedIndex:(e,t,r,s)=>({...e,selectedIndex:s}),setPartialIndex:(e,t,r,s)=>({...e,selectedIndex:s,partial:!0}),pushBatch:(e,t,r,s)=>{let a=e.options.slice(),o=e.tokens.slice();for(let g=1;g{let[,s,a]=t.match(dMt),o=e.options.concat({name:s,value:a}),g=e.tokens.concat([{segmentIndex:r,type:"option",slice:[0,s.length],option:s},{segmentIndex:r,type:"assign",slice:[s.length,s.length+1]},{segmentIndex:r,type:"value",slice:[s.length+1,s.length+a.length+1]}]);return{...e,options:o,tokens:g}},pushPath:(e,t,r)=>{let s=e.path.concat(t),a=e.tokens.concat({segmentIndex:r,type:"path"});return{...e,path:s,tokens:a}},pushPositional:(e,t,r)=>{let s=e.positionals.concat({value:t,extra:!1}),a=e.tokens.concat({segmentIndex:r,type:"positional"});return{...e,positionals:s,tokens:a}},pushExtra:(e,t,r)=>{let s=e.positionals.concat({value:t,extra:!0}),a=e.tokens.concat({segmentIndex:r,type:"positional"});return{...e,positionals:s,tokens:a}},pushExtraNoLimits:(e,t,r)=>{let s=e.positionals.concat({value:t,extra:uW}),a=e.tokens.concat({segmentIndex:r,type:"positional"});return{...e,positionals:s,tokens:a}},pushTrue:(e,t,r,s)=>{let a=e.options.concat({name:s,value:!0}),o=e.tokens.concat({segmentIndex:r,type:"option",option:s});return{...e,options:a,tokens:o}},pushFalse:(e,t,r,s)=>{let a=e.options.concat({name:s,value:!1}),o=e.tokens.concat({segmentIndex:r,type:"option",option:s});return{...e,options:a,tokens:o}},pushUndefined:(e,t,r,s)=>{let a=e.options.concat({name:t,value:void 0}),o=e.tokens.concat({segmentIndex:r,type:"option",option:t});return{...e,options:a,tokens:o}},pushStringValue:(e,t,r)=>{var s;let a=e.options[e.options.length-1],o=e.options.slice(),g=e.tokens.concat({segmentIndex:r,type:"value"});return a.value=((s=a.value)!==null&&s!==void 0?s:[]).concat([t]),{...e,options:o,tokens:g}},setStringValue:(e,t,r)=>{let s=e.options[e.options.length-1],a=e.options.slice(),o=e.tokens.concat({segmentIndex:r,type:"value"});return s.value=t,{...e,options:a,tokens:o}},inhibateOptions:e=>({...e,ignoreOptions:!0}),useHelp:(e,t,r,s)=>{let[,,a]=t.match(AMt);return typeof a<"u"?{...e,options:[{name:"-c",value:String(s)},{name:"-i",value:a}]}:{...e,options:[{name:"-c",value:String(s)}]}},setError:(e,t,r,s)=>t===Ty.EndOfInput||t===Ty.EndOfPartialInput?{...e,errorMessage:`${s}.`}:{...e,errorMessage:`${s} ("${t}").`},setOptionArityError:(e,t)=>{let r=e.options[e.options.length-1];return{...e,errorMessage:`Not enough arguments to option ${r.name}.`}}},uW=Symbol(),EMt=class{constructor(t,r){this.allOptionNames=new Map,this.arity={leading:[],trailing:[],extra:[],proxy:!1},this.options=[],this.paths=[],this.cliIndex=t,this.cliOpts=r}addPath(t){this.paths.push(t)}setArity({leading:t=this.arity.leading,trailing:r=this.arity.trailing,extra:s=this.arity.extra,proxy:a=this.arity.proxy}){Object.assign(this.arity,{leading:t,trailing:r,extra:s,proxy:a})}addPositional({name:t="arg",required:r=!0}={}){if(!r&&this.arity.extra===uW)throw new Error("Optional parameters cannot be declared when using .rest() or .proxy()");if(!r&&this.arity.trailing.length>0)throw new Error("Optional parameters cannot be declared after the required trailing positional arguments");!r&&this.arity.extra!==uW?this.arity.extra.push(t):this.arity.extra!==uW&&this.arity.extra.length===0?this.arity.leading.push(t):this.arity.trailing.push(t)}addRest({name:t="arg",required:r=0}={}){if(this.arity.extra===uW)throw new Error("Infinite lists cannot be declared multiple times in the same command");if(this.arity.trailing.length>0)throw new Error("Infinite lists cannot be declared after the required trailing positional arguments");for(let s=0;s1)throw new Error("The arity cannot be higher than 1 when the option only supports the --arg=value syntax");if(!Number.isInteger(s))throw new Error(`The arity must be an integer, got ${s}`);if(s<0)throw new Error(`The arity must be positive, got ${s}`);let p=t.reduce((f,m)=>m.length>f.length?m:f,"");for(let f of t)this.allOptionNames.set(f,p);this.options.push({preferredName:p,nameSet:t,description:r,arity:s,hidden:a,required:o,allowBinding:g})}setContext(t){this.context=t}usage({detailed:t=!0,inlineOptions:r=!0}={}){let s=[this.cliOpts.binaryName],a=[];if(this.paths.length>0&&s.push(...this.paths[0]),t){for(let{preferredName:g,nameSet:p,arity:f,hidden:m,description:y,required:B}of this.options){if(m)continue;let v=[];for(let T=0;T`:`[${G}]`)}s.push(...this.arity.leading.map(g=>`<${g}>`)),this.arity.extra===uW?s.push("..."):s.push(...this.arity.extra.map(g=>`[${g}]`)),s.push(...this.arity.trailing.map(g=>`<${g}>`))}return{usage:s.join(" "),options:a}}compile(){if(typeof this.context>"u")throw new Error("Assertion failed: No context attached");let t=V8r(),r=eh.InitialNode,s=this.usage().usage,a=this.options.filter(p=>p.required).map(p=>p.nameSet);r=cH(t,lW()),pF(t,eh.InitialNode,Ty.StartOfInput,r,["setCandidateState",{candidateUsage:s,requiredOptions:a}]);let o=this.arity.proxy?"always":"isNotOptionLike",g=this.paths.length>0?this.paths:[[]];for(let p of g){let f=r;if(p.length>0){let v=cH(t,lW());Qye(t,f,v),this.registerOptions(t,v),f=v}for(let v=0;v0||!this.arity.proxy){let v=cH(t,lW());nR(t,f,"isHelp",v,["useHelp",this.cliIndex]),nR(t,v,"always",v,"pushExtra"),pF(t,v,Ty.EndOfInput,eh.SuccessNode,["setSelectedIndex",Tge]),this.registerOptions(t,f)}this.arity.leading.length>0&&(pF(t,f,Ty.EndOfInput,eh.ErrorNode,["setError","Not enough positional arguments"]),pF(t,f,Ty.EndOfPartialInput,eh.SuccessNode,["setPartialIndex",this.cliIndex]));let m=f;for(let v=0;v0||v+1!==this.arity.leading.length)&&(pF(t,G,Ty.EndOfInput,eh.ErrorNode,["setError","Not enough positional arguments"]),pF(t,G,Ty.EndOfPartialInput,eh.SuccessNode,["setPartialIndex",this.cliIndex])),nR(t,m,"isNotOptionLike",G,"pushPositional"),m=G}let y=m;if(this.arity.extra===uW||this.arity.extra.length>0){let v=cH(t,lW());if(Qye(t,m,v),this.arity.extra===uW){let G=cH(t,lW());this.arity.proxy||this.registerOptions(t,G),nR(t,m,o,G,"pushExtraNoLimits"),nR(t,G,o,G,"pushExtraNoLimits"),Qye(t,G,v)}else for(let G=0;G0)&&this.registerOptions(t,T),nR(t,y,o,T,"pushExtra"),Qye(t,T,v),y=T}y=v}this.arity.trailing.length>0&&(pF(t,y,Ty.EndOfInput,eh.ErrorNode,["setError","Not enough positional arguments"]),pF(t,y,Ty.EndOfPartialInput,eh.SuccessNode,["setPartialIndex",this.cliIndex]));let B=y;for(let v=0;v=0&&t{let g=o?Ty.EndOfPartialInput:Ty.EndOfInput;return cEs(s,a,{endToken:g})}}}}});import BMt from"tty";function M8r(){return BMt&&"getColorDepth"in BMt.WriteStream.prototype?BMt.WriteStream.prototype.getColorDepth():process.env.FORCE_COLOR==="0"?1:process.env.FORCE_COLOR==="1"||typeof process.stdout<"u"&&process.stdout.isTTY?8:1}function Q8r(e){let t=O8r;if(typeof t>"u"){if(e.stdout===process.stdout&&e.stderr===process.stderr)return null;let{AsyncLocalStorage:r}=Dt("async_hooks");t=O8r=new r;let s=process.stdout._write;process.stdout._write=function(o,g,p){let f=t.getStore();return typeof f>"u"?s.call(this,o,g,p):f.stdout.write(o,g,p)};let a=process.stderr._write;process.stderr._write=function(o,g,p){let f=t.getStore();return typeof f>"u"?a.call(this,o,g,p):f.stderr.write(o,g,p)}}return r=>t.run(e,r)}var O8r,Y8r=cc(()=>{});var Ett,H8r=cc(()=>{zre();Ett=class e extends Cb{constructor(t){super(),this.contexts=t,this.commands=[]}static from(t,r){let s=new e(r);s.path=t.path;for(let a of t.options)switch(a.name){case"-c":s.commands.push(Number(a.value));break;case"-i":s.index=Number(a.value);break}return s}async execute(){let t=this.commands;if(typeof this.index<"u"&&this.index>=0&&this.index1){this.context.stdout.write(`Multiple commands match your selection: +- ${s}`}super(r)}};XLe={missing:(e,t)=>e.has(t),undefined:(e,t,r)=>e.has(t)&&typeof r[t]<"u",nil:(e,t,r)=>e.has(t)&&r[t]!=null,falsy:(e,t,r)=>e.has(t)&&!!r[t]};(function(e){e.Forbids="Forbids",e.Requires="Requires"})(Mye||(Mye={}));lEs={[Mye.Forbids]:{expect:!1,message:"forbids using"},[Mye.Requires]:{expect:!0,message:"requires using"}}});var mb,$re=cc(()=>{ej();mb=class{constructor(){this.help=!1}static Usage(t){return t}async catch(t){throw t}async validateAndExecute(){let r=this.constructor.schema;if(Array.isArray(r)){let{isDict:a,isUnknown:o,applyCascade:g}=await Promise.resolve().then(()=>(yL(),_L)),p=g(a(o()),r),f=[],m=[];if(!p(this,{errors:f,coercions:m}))throw HLe("Invalid option schema",f);for(let[,B]of m)B()}else if(r!=null)throw new Error("Invalid command schema");let s=await this.execute();return typeof s<"u"?s:0}};mb.isOption=MLe;mb.Default=[]});function bL(e){CQt&&console.log(e)}function H8r(){let e={nodes:[]};for(let t=0;t{if(t.has(s))return;t.add(s);let a=e.nodes[s];for(let g of Object.values(a.statics))for(let{to:p}of g)r(p);for(let[,{to:g}]of a.dynamics)r(g);for(let{to:g}of a.shortcuts)r(g);let o=new Set(a.shortcuts.map(({to:g})=>g));for(;a.shortcuts.length>0;){let{to:g}=a.shortcuts.shift(),p=e.nodes[g];for(let[f,m]of Object.entries(p.statics)){let y=Object.prototype.hasOwnProperty.call(a.statics,f)?a.statics[f]:a.statics[f]=[];for(let B of m)y.some(({to:v})=>B.to===v)||y.push(B)}for(let[f,m]of p.dynamics)a.dynamics.some(([y,{to:B}])=>f===y&&m.to===B)||a.dynamics.push([f,m]);for(let f of p.shortcuts)o.has(f.to)||(a.shortcuts.push(f),o.add(f.to))}};r(th.InitialNode)}function dEs(e,{prefix:t=""}={}){if(CQt){bL(`${t}Nodes are:`);for(let r=0;ry!==th.ErrorNode).map(({state:y})=>({usage:y.candidateUsage,reason:null})));if(m.every(({node:y})=>y===th.ErrorNode))throw new Qye(t,m.map(({state:y})=>({usage:y.candidateUsage,reason:y.errorMessage})));s=IEs(m)}if(s.length>0){bL(" Results:");for(let o of s)bL(` - ${o.node} -> ${JSON.stringify(o.state)}`)}else bL(" No results");return s}function fEs(e,t,{endToken:r=Ny.EndOfInput}={}){let s=pEs(e,[...t,r]);return CEs(t,s.map(({state:a})=>a))}function IEs(e){let t=0;for(let{state:r}of e)r.path.length>t&&(t=r.path.length);return e.filter(({state:r})=>r.path.length===t)}function CEs(e,t){let r=t.filter(v=>v.selectedIndex!==null),s=r.filter(v=>!v.partial);if(s.length>0&&(r=s),r.length===0)throw new Error;let a=r.filter(v=>v.selectedIndex===Lge||v.requiredOptions.every(k=>k.some(T=>v.options.find(O=>O.name===T))));if(a.length===0)throw new Qye(e,r.map(v=>({usage:v.candidateUsage,reason:null})));let o=0;for(let v of a)v.path.length>o&&(o=v.path.length);let g=a.filter(v=>v.path.length===o),p=v=>v.positionals.filter(({extra:k})=>!k).length+v.options.length,f=g.map(v=>({state:v,positionalCount:p(v)})),m=0;for(let{positionalCount:v}of f)v>m&&(m=v);let y=f.filter(({positionalCount:v})=>v===m).map(({state:v})=>v),B=mEs(y);if(B.length>1)throw new Itt(e,B.map(v=>v.candidateUsage));return B[0]}function mEs(e){let t=[],r=[];for(let s of e)s.selectedIndex===Lge?r.push(s):t.push(s);return r.length>0&&t.push({...M8r,path:Y8r(...r.map(s=>s.path)),options:r.reduce((s,a)=>s.concat(a.options),[])}),t}function Y8r(e,t,...r){return t===void 0?Array.from(e):Y8r(e.filter((s,a)=>s===t[a]),...r)}function uW(){return{dynamics:[],shortcuts:[],statics:{}}}function X8r(e){return e===th.SuccessNode||e===th.ErrorNode}function BQt(e,t=0){return{to:X8r(e.to)?e.to:e.to>=th.CustomNode?e.to+t-th.CustomNode+1:e.to+t,reducer:e.reducer}}function hEs(e,t=0){let r=uW();for(let[s,a]of e.dynamics)r.dynamics.push([s,BQt(a,t)]);for(let s of e.shortcuts)r.shortcuts.push(BQt(s,t));for(let[s,a]of Object.entries(e.statics))r.statics[s]=a.map(o=>BQt(o,t));return r}function iR(e,t,r,s,a){e.nodes[t].dynamics.push([r,{to:s,reducer:a}])}function Yye(e,t,r,s){e.nodes[t].shortcuts.push({to:r,reducer:s})}function hF(e,t,r,s,a){(Object.prototype.hasOwnProperty.call(e.nodes[t].statics,r)?e.nodes[t].statics[r]:e.nodes[t].statics[r]=[]).push({to:s,reducer:a})}function btt(e,t,r,s,a){if(Array.isArray(t)){let[o,...g]=t;return e[o](r,s,a,...g)}else return e[t](r,s,a)}var M8r,_Es,vQt,gW,SQt,Ett,Btt=cc(()=>{ftt();Ctt();M8r={candidateUsage:null,requiredOptions:[],errorMessage:null,ignoreOptions:!1,path:[],positionals:[],options:[],remainder:null,selectedIndex:Lge,partial:!1,tokens:[]};_Es={always:()=>!0,isOptionLike:(e,t)=>!e.ignoreOptions&&t!=="-"&&t.startsWith("-"),isNotOptionLike:(e,t)=>e.ignoreOptions||t==="-"||!t.startsWith("-"),isOption:(e,t,r,s)=>!e.ignoreOptions&&t===s,isBatchOption:(e,t,r,s)=>!e.ignoreOptions&&k8r.test(t)&&[...t.slice(1)].every(a=>s.has(`-${a}`)),isBoundOption:(e,t,r,s,a)=>{let o=t.match(IQt);return!e.ignoreOptions&&!!o&&ptt.test(o[1])&&s.has(o[1])&&a.filter(g=>g.nameSet.includes(o[1])).every(g=>g.allowBinding)},isNegatedOption:(e,t,r,s)=>!e.ignoreOptions&&t===`--no-${s.slice(2)}`,isHelp:(e,t)=>!e.ignoreOptions&&fQt.test(t),isUnsupportedOption:(e,t,r,s)=>!e.ignoreOptions&&t.startsWith("-")&&ptt.test(t)&&!s.has(t),isInvalidOption:(e,t)=>!e.ignoreOptions&&t.startsWith("-")&&!ptt.test(t)},vQt={setCandidateState:(e,t,r,s)=>({...e,...s}),setSelectedIndex:(e,t,r,s)=>({...e,selectedIndex:s}),setPartialIndex:(e,t,r,s)=>({...e,selectedIndex:s,partial:!0}),pushBatch:(e,t,r,s)=>{let a=e.options.slice(),o=e.tokens.slice();for(let g=1;g{let[,s,a]=t.match(IQt),o=e.options.concat({name:s,value:a}),g=e.tokens.concat([{segmentIndex:r,type:"option",slice:[0,s.length],option:s},{segmentIndex:r,type:"assign",slice:[s.length,s.length+1]},{segmentIndex:r,type:"value",slice:[s.length+1,s.length+a.length+1]}]);return{...e,options:o,tokens:g}},pushPath:(e,t,r)=>{let s=e.path.concat(t),a=e.tokens.concat({segmentIndex:r,type:"path"});return{...e,path:s,tokens:a}},pushPositional:(e,t,r)=>{let s=e.positionals.concat({value:t,extra:!1}),a=e.tokens.concat({segmentIndex:r,type:"positional"});return{...e,positionals:s,tokens:a}},pushExtra:(e,t,r)=>{let s=e.positionals.concat({value:t,extra:!0}),a=e.tokens.concat({segmentIndex:r,type:"positional"});return{...e,positionals:s,tokens:a}},pushExtraNoLimits:(e,t,r)=>{let s=e.positionals.concat({value:t,extra:gW}),a=e.tokens.concat({segmentIndex:r,type:"positional"});return{...e,positionals:s,tokens:a}},pushTrue:(e,t,r,s)=>{let a=e.options.concat({name:s,value:!0}),o=e.tokens.concat({segmentIndex:r,type:"option",option:s});return{...e,options:a,tokens:o}},pushFalse:(e,t,r,s)=>{let a=e.options.concat({name:s,value:!1}),o=e.tokens.concat({segmentIndex:r,type:"option",option:s});return{...e,options:a,tokens:o}},pushUndefined:(e,t,r,s)=>{let a=e.options.concat({name:t,value:void 0}),o=e.tokens.concat({segmentIndex:r,type:"option",option:t});return{...e,options:a,tokens:o}},pushStringValue:(e,t,r)=>{var s;let a=e.options[e.options.length-1],o=e.options.slice(),g=e.tokens.concat({segmentIndex:r,type:"value"});return a.value=((s=a.value)!==null&&s!==void 0?s:[]).concat([t]),{...e,options:o,tokens:g}},setStringValue:(e,t,r)=>{let s=e.options[e.options.length-1],a=e.options.slice(),o=e.tokens.concat({segmentIndex:r,type:"value"});return s.value=t,{...e,options:a,tokens:o}},inhibateOptions:e=>({...e,ignoreOptions:!0}),useHelp:(e,t,r,s)=>{let[,,a]=t.match(fQt);return typeof a<"u"?{...e,options:[{name:"-c",value:String(s)},{name:"-i",value:a}]}:{...e,options:[{name:"-c",value:String(s)}]}},setError:(e,t,r,s)=>t===Ny.EndOfInput||t===Ny.EndOfPartialInput?{...e,errorMessage:`${s}.`}:{...e,errorMessage:`${s} ("${t}").`},setOptionArityError:(e,t)=>{let r=e.options[e.options.length-1];return{...e,errorMessage:`Not enough arguments to option ${r.name}.`}}},gW=Symbol(),SQt=class{constructor(t,r){this.allOptionNames=new Map,this.arity={leading:[],trailing:[],extra:[],proxy:!1},this.options=[],this.paths=[],this.cliIndex=t,this.cliOpts=r}addPath(t){this.paths.push(t)}setArity({leading:t=this.arity.leading,trailing:r=this.arity.trailing,extra:s=this.arity.extra,proxy:a=this.arity.proxy}){Object.assign(this.arity,{leading:t,trailing:r,extra:s,proxy:a})}addPositional({name:t="arg",required:r=!0}={}){if(!r&&this.arity.extra===gW)throw new Error("Optional parameters cannot be declared when using .rest() or .proxy()");if(!r&&this.arity.trailing.length>0)throw new Error("Optional parameters cannot be declared after the required trailing positional arguments");!r&&this.arity.extra!==gW?this.arity.extra.push(t):this.arity.extra!==gW&&this.arity.extra.length===0?this.arity.leading.push(t):this.arity.trailing.push(t)}addRest({name:t="arg",required:r=0}={}){if(this.arity.extra===gW)throw new Error("Infinite lists cannot be declared multiple times in the same command");if(this.arity.trailing.length>0)throw new Error("Infinite lists cannot be declared after the required trailing positional arguments");for(let s=0;s1)throw new Error("The arity cannot be higher than 1 when the option only supports the --arg=value syntax");if(!Number.isInteger(s))throw new Error(`The arity must be an integer, got ${s}`);if(s<0)throw new Error(`The arity must be positive, got ${s}`);let p=t.reduce((f,m)=>m.length>f.length?m:f,"");for(let f of t)this.allOptionNames.set(f,p);this.options.push({preferredName:p,nameSet:t,description:r,arity:s,hidden:a,required:o,allowBinding:g})}setContext(t){this.context=t}usage({detailed:t=!0,inlineOptions:r=!0}={}){let s=[this.cliOpts.binaryName],a=[];if(this.paths.length>0&&s.push(...this.paths[0]),t){for(let{preferredName:g,nameSet:p,arity:f,hidden:m,description:y,required:B}of this.options){if(m)continue;let v=[];for(let T=0;T`:`[${k}]`)}s.push(...this.arity.leading.map(g=>`<${g}>`)),this.arity.extra===gW?s.push("..."):s.push(...this.arity.extra.map(g=>`[${g}]`)),s.push(...this.arity.trailing.map(g=>`<${g}>`))}return{usage:s.join(" "),options:a}}compile(){if(typeof this.context>"u")throw new Error("Assertion failed: No context attached");let t=H8r(),r=th.InitialNode,s=this.usage().usage,a=this.options.filter(p=>p.required).map(p=>p.nameSet);r=uH(t,uW()),hF(t,th.InitialNode,Ny.StartOfInput,r,["setCandidateState",{candidateUsage:s,requiredOptions:a}]);let o=this.arity.proxy?"always":"isNotOptionLike",g=this.paths.length>0?this.paths:[[]];for(let p of g){let f=r;if(p.length>0){let v=uH(t,uW());Yye(t,f,v),this.registerOptions(t,v),f=v}for(let v=0;v0||!this.arity.proxy){let v=uH(t,uW());iR(t,f,"isHelp",v,["useHelp",this.cliIndex]),iR(t,v,"always",v,"pushExtra"),hF(t,v,Ny.EndOfInput,th.SuccessNode,["setSelectedIndex",Lge]),this.registerOptions(t,f)}this.arity.leading.length>0&&(hF(t,f,Ny.EndOfInput,th.ErrorNode,["setError","Not enough positional arguments"]),hF(t,f,Ny.EndOfPartialInput,th.SuccessNode,["setPartialIndex",this.cliIndex]));let m=f;for(let v=0;v0||v+1!==this.arity.leading.length)&&(hF(t,k,Ny.EndOfInput,th.ErrorNode,["setError","Not enough positional arguments"]),hF(t,k,Ny.EndOfPartialInput,th.SuccessNode,["setPartialIndex",this.cliIndex])),iR(t,m,"isNotOptionLike",k,"pushPositional"),m=k}let y=m;if(this.arity.extra===gW||this.arity.extra.length>0){let v=uH(t,uW());if(Yye(t,m,v),this.arity.extra===gW){let k=uH(t,uW());this.arity.proxy||this.registerOptions(t,k),iR(t,m,o,k,"pushExtraNoLimits"),iR(t,k,o,k,"pushExtraNoLimits"),Yye(t,k,v)}else for(let k=0;k0)&&this.registerOptions(t,T),iR(t,y,o,T,"pushExtra"),Yye(t,T,v),y=T}y=v}this.arity.trailing.length>0&&(hF(t,y,Ny.EndOfInput,th.ErrorNode,["setError","Not enough positional arguments"]),hF(t,y,Ny.EndOfPartialInput,th.SuccessNode,["setPartialIndex",this.cliIndex]));let B=y;for(let v=0;v=0&&t{let g=o?Ny.EndOfPartialInput:Ny.EndOfInput;return fEs(s,a,{endToken:g})}}}}});import wQt from"tty";function U8r(){return wQt&&"getColorDepth"in wQt.WriteStream.prototype?wQt.WriteStream.prototype.getColorDepth():process.env.FORCE_COLOR==="0"?1:process.env.FORCE_COLOR==="1"||typeof process.stdout<"u"&&process.stdout.isTTY?8:1}function K8r(e){let t=J8r;if(typeof t>"u"){if(e.stdout===process.stdout&&e.stderr===process.stderr)return null;let{AsyncLocalStorage:r}=xt("async_hooks");t=J8r=new r;let s=process.stdout._write;process.stdout._write=function(o,g,p){let f=t.getStore();return typeof f>"u"?s.call(this,o,g,p):f.stdout.write(o,g,p)};let a=process.stderr._write;process.stderr._write=function(o,g,p){let f=t.getStore();return typeof f>"u"?a.call(this,o,g,p):f.stderr.write(o,g,p)}}return r=>t.run(e,r)}var J8r,j8r=cc(()=>{});var vtt,z8r=cc(()=>{$re();vtt=class e extends mb{constructor(t){super(),this.contexts=t,this.commands=[]}static from(t,r){let s=new e(r);s.path=t.path;for(let a of t.options)switch(a.name){case"-c":s.commands.push(Number(a.value));break;case"-i":s.index=Number(a.value);break}return s}async execute(){let t=this.commands;if(typeof this.index<"u"&&this.index>=0&&this.index1){this.context.stdout.write(`Multiple commands match your selection: `),this.context.stdout.write(` `);let r=0;for(let s of this.commands)this.context.stdout.write(this.cli.usage(this.contexts[s].commandClass,{prefix:`${r++}. `.padStart(5)}));this.context.stdout.write(` `),this.context.stdout.write(`Run again with -h= to see the longer details of any of those commands. -`)}}}});async function U8r(...e){let{resolvedOptions:t,resolvedCommandClasses:r,resolvedArgv:s,resolvedContext:a}=j8r(e);return Dge.from(r,t).runExit(s,a)}async function K8r(...e){let{resolvedOptions:t,resolvedCommandClasses:r,resolvedArgv:s,resolvedContext:a}=j8r(e);return Dge.from(r,t).run(s,a)}function j8r(e){let t,r,s,a;switch(typeof process<"u"&&typeof process.argv<"u"&&(s=process.argv.slice(2)),e.length){case 1:r=e[0];break;case 2:e[0]&&e[0].prototype instanceof Cb||Array.isArray(e[0])?(r=e[0],Array.isArray(e[1])?s=e[1]:a=e[1]):(t=e[0],r=e[1]);break;case 3:Array.isArray(e[2])?(t=e[0],r=e[1],s=e[2]):e[0]&&e[0].prototype instanceof Cb||Array.isArray(e[0])?(r=e[0],s=e[1],a=e[2]):(t=e[0],r=e[1],a=e[2]);break;default:t=e[0],r=e[1],s=e[2],a=e[3];break}if(typeof s>"u")throw new Error("The argv parameter must be provided when running Clipanion outside of a Node context");return{resolvedOptions:t,resolvedCommandClasses:r,resolvedArgv:s,resolvedContext:a}}function J8r(e){return e()}var X8r,Dge,z8r=cc(()=>{dtt();btt();CMt();Y8r();zre();H8r();X8r=Symbol("clipanion/errorCommand");Dge=class e{constructor({binaryLabel:t,binaryName:r="...",binaryVersion:s,enableCapture:a=!1,enableColors:o}={}){this.registrations=new Map,this.builder=new ytt({binaryName:r}),this.binaryLabel=t,this.binaryName=r,this.binaryVersion=s,this.enableCapture=a,this.enableColors=o}static from(t,r={}){let s=new e(r),a=Array.isArray(t)?t:[t];for(let o of a)s.register(o);return s}register(t){var r;let s=new Map,a=new t;for(let f in a){let m=a[f];typeof m=="object"&&m!==null&&m[Cb.isOption]&&s.set(f,m)}let o=this.builder.command(),g=o.cliIndex,p=(r=t.paths)!==null&&r!==void 0?r:a.paths;if(typeof p<"u")for(let f of p)o.addPath(f);this.registrations.set(t,{specs:s,builder:o,index:g});for(let[f,{definition:m}]of s.entries())m(o,f);o.setContext({commandClass:t})}process(t,r){let{input:s,context:a,partial:o}=typeof t=="object"&&Array.isArray(t)?{input:t,context:r}:t,{contexts:g,process:p}=this.builder.compile(),f=p(s,{partial:o}),m={...e.defaultContext,...a};switch(f.selectedIndex){case Tge:{let y=Ett.from(f,g);return y.context=m,y.tokens=f.tokens,y}default:{let{commandClass:y}=g[f.selectedIndex],B=this.registrations.get(y);if(typeof B>"u")throw new Error("Assertion failed: Expected the command class to have been registered.");let v=new y;v.context=m,v.tokens=f.tokens,v.path=f.path;try{for(let[G,{transformer:T}]of B.specs.entries())v[G]=T(B.builder,G,f,m);return v}catch(G){throw G[X8r]=v,G}}break}}async run(t,r){var s,a;let o,g={...e.defaultContext,...r},p=(s=this.enableColors)!==null&&s!==void 0?s:g.colorDepth>1;if(!Array.isArray(t))o=t;else try{o=this.process(t,g)}catch(y){return g.stdout.write(this.error(y,{colored:p})),1}if(o.help)return g.stdout.write(this.usage(o,{colored:p,detailed:!0})),0;o.context=g,o.cli={binaryLabel:this.binaryLabel,binaryName:this.binaryName,binaryVersion:this.binaryVersion,enableCapture:this.enableCapture,enableColors:this.enableColors,definitions:()=>this.definitions(),definition:y=>this.definition(y),error:(y,B)=>this.error(y,B),format:y=>this.format(y),process:(y,B)=>this.process(y,{...g,...B}),run:(y,B)=>this.run(y,{...g,...B}),usage:(y,B)=>this.usage(y,B)};let f=this.enableCapture&&(a=Q8r(g))!==null&&a!==void 0?a:J8r,m;try{m=await f(()=>o.validateAndExecute().catch(y=>o.catch(y).then(()=>0)))}catch(y){return g.stdout.write(this.error(y,{colored:p,command:o})),1}return m}async runExit(t,r){process.exitCode=await this.run(t,r)}definition(t,{colored:r=!1}={}){if(!t.usage)return null;let{usage:s}=this.getUsageByRegistration(t,{detailed:!1}),{usage:a,options:o}=this.getUsageByRegistration(t,{detailed:!0,inlineOptions:!1}),g=typeof t.usage.category<"u"?mL(t.usage.category,{format:this.format(r),paragraphs:!1}):void 0,p=typeof t.usage.description<"u"?mL(t.usage.description,{format:this.format(r),paragraphs:!1}):void 0,f=typeof t.usage.details<"u"?mL(t.usage.details,{format:this.format(r),paragraphs:!0}):void 0,m=typeof t.usage.examples<"u"?t.usage.examples.map(([y,B])=>[mL(y,{format:this.format(r),paragraphs:!1}),B.replace(/\$0/g,this.binaryName)]):void 0;return{path:s,usage:a,category:g,description:p,details:f,examples:m,options:o}}definitions({colored:t=!1}={}){let r=[];for(let s of this.registrations.keys()){let a=this.definition(s,{colored:t});a&&r.push(a)}return r}usage(t=null,{colored:r,detailed:s=!1,prefix:a="$ "}={}){var o;if(t===null){for(let f of this.registrations.keys()){let m=f.paths,y=typeof f.usage<"u";if(!m||m.length===0||m.length===1&&m[0].length===0||((o=m?.some(G=>G.length===0))!==null&&o!==void 0?o:!1))if(t){t=null;break}else t=f;else if(y){t=null;continue}}t&&(s=!0)}let g=t!==null&&t instanceof Cb?t.constructor:t,p="";if(g)if(s){let{description:f="",details:m="",examples:y=[]}=g.usage||{};f!==""&&(p+=mL(f,{format:this.format(r),paragraphs:!1}).replace(/^./,G=>G.toUpperCase()),p+=` +`)}}}});async function e6r(...e){let{resolvedOptions:t,resolvedCommandClasses:r,resolvedArgv:s,resolvedContext:a}=r6r(e);return Pge.from(r,t).runExit(s,a)}async function t6r(...e){let{resolvedOptions:t,resolvedCommandClasses:r,resolvedArgv:s,resolvedContext:a}=r6r(e);return Pge.from(r,t).run(s,a)}function r6r(e){let t,r,s,a;switch(typeof process<"u"&&typeof process.argv<"u"&&(s=process.argv.slice(2)),e.length){case 1:r=e[0];break;case 2:e[0]&&e[0].prototype instanceof mb||Array.isArray(e[0])?(r=e[0],Array.isArray(e[1])?s=e[1]:a=e[1]):(t=e[0],r=e[1]);break;case 3:Array.isArray(e[2])?(t=e[0],r=e[1],s=e[2]):e[0]&&e[0].prototype instanceof mb||Array.isArray(e[0])?(r=e[0],s=e[1],a=e[2]):(t=e[0],r=e[1],a=e[2]);break;default:t=e[0],r=e[1],s=e[2],a=e[3];break}if(typeof s>"u")throw new Error("The argv parameter must be provided when running Clipanion outside of a Node context");return{resolvedOptions:t,resolvedCommandClasses:r,resolvedArgv:s,resolvedContext:a}}function $8r(e){return e()}var q8r,Pge,n6r=cc(()=>{ftt();Btt();_Qt();j8r();$re();z8r();q8r=Symbol("clipanion/errorCommand");Pge=class e{constructor({binaryLabel:t,binaryName:r="...",binaryVersion:s,enableCapture:a=!1,enableColors:o}={}){this.registrations=new Map,this.builder=new Ett({binaryName:r}),this.binaryLabel=t,this.binaryName=r,this.binaryVersion=s,this.enableCapture=a,this.enableColors=o}static from(t,r={}){let s=new e(r),a=Array.isArray(t)?t:[t];for(let o of a)s.register(o);return s}register(t){var r;let s=new Map,a=new t;for(let f in a){let m=a[f];typeof m=="object"&&m!==null&&m[mb.isOption]&&s.set(f,m)}let o=this.builder.command(),g=o.cliIndex,p=(r=t.paths)!==null&&r!==void 0?r:a.paths;if(typeof p<"u")for(let f of p)o.addPath(f);this.registrations.set(t,{specs:s,builder:o,index:g});for(let[f,{definition:m}]of s.entries())m(o,f);o.setContext({commandClass:t})}process(t,r){let{input:s,context:a,partial:o}=typeof t=="object"&&Array.isArray(t)?{input:t,context:r}:t,{contexts:g,process:p}=this.builder.compile(),f=p(s,{partial:o}),m={...e.defaultContext,...a};switch(f.selectedIndex){case Lge:{let y=vtt.from(f,g);return y.context=m,y.tokens=f.tokens,y}default:{let{commandClass:y}=g[f.selectedIndex],B=this.registrations.get(y);if(typeof B>"u")throw new Error("Assertion failed: Expected the command class to have been registered.");let v=new y;v.context=m,v.tokens=f.tokens,v.path=f.path;try{for(let[k,{transformer:T}]of B.specs.entries())v[k]=T(B.builder,k,f,m);return v}catch(k){throw k[q8r]=v,k}}break}}async run(t,r){var s,a;let o,g={...e.defaultContext,...r},p=(s=this.enableColors)!==null&&s!==void 0?s:g.colorDepth>1;if(!Array.isArray(t))o=t;else try{o=this.process(t,g)}catch(y){return g.stdout.write(this.error(y,{colored:p})),1}if(o.help)return g.stdout.write(this.usage(o,{colored:p,detailed:!0})),0;o.context=g,o.cli={binaryLabel:this.binaryLabel,binaryName:this.binaryName,binaryVersion:this.binaryVersion,enableCapture:this.enableCapture,enableColors:this.enableColors,definitions:()=>this.definitions(),definition:y=>this.definition(y),error:(y,B)=>this.error(y,B),format:y=>this.format(y),process:(y,B)=>this.process(y,{...g,...B}),run:(y,B)=>this.run(y,{...g,...B}),usage:(y,B)=>this.usage(y,B)};let f=this.enableCapture&&(a=K8r(g))!==null&&a!==void 0?a:$8r,m;try{m=await f(()=>o.validateAndExecute().catch(y=>o.catch(y).then(()=>0)))}catch(y){return g.stdout.write(this.error(y,{colored:p,command:o})),1}return m}async runExit(t,r){process.exitCode=await this.run(t,r)}definition(t,{colored:r=!1}={}){if(!t.usage)return null;let{usage:s}=this.getUsageByRegistration(t,{detailed:!1}),{usage:a,options:o}=this.getUsageByRegistration(t,{detailed:!0,inlineOptions:!1}),g=typeof t.usage.category<"u"?hL(t.usage.category,{format:this.format(r),paragraphs:!1}):void 0,p=typeof t.usage.description<"u"?hL(t.usage.description,{format:this.format(r),paragraphs:!1}):void 0,f=typeof t.usage.details<"u"?hL(t.usage.details,{format:this.format(r),paragraphs:!0}):void 0,m=typeof t.usage.examples<"u"?t.usage.examples.map(([y,B])=>[hL(y,{format:this.format(r),paragraphs:!1}),B.replace(/\$0/g,this.binaryName)]):void 0;return{path:s,usage:a,category:g,description:p,details:f,examples:m,options:o}}definitions({colored:t=!1}={}){let r=[];for(let s of this.registrations.keys()){let a=this.definition(s,{colored:t});a&&r.push(a)}return r}usage(t=null,{colored:r,detailed:s=!1,prefix:a="$ "}={}){var o;if(t===null){for(let f of this.registrations.keys()){let m=f.paths,y=typeof f.usage<"u";if(!m||m.length===0||m.length===1&&m[0].length===0||((o=m?.some(k=>k.length===0))!==null&&o!==void 0?o:!1))if(t){t=null;break}else t=f;else if(y){t=null;continue}}t&&(s=!0)}let g=t!==null&&t instanceof mb?t.constructor:t,p="";if(g)if(s){let{description:f="",details:m="",examples:y=[]}=g.usage||{};f!==""&&(p+=hL(f,{format:this.format(r),paragraphs:!1}).replace(/^./,k=>k.toUpperCase()),p+=` `),(m!==""||y.length>0)&&(p+=`${this.format(r).header("Usage")} `,p+=` `);let{usage:B,options:v}=this.getUsageByRegistration(g,{inlineOptions:!1});if(p+=`${this.format(r).bold(a)}${B} `,v.length>0){p+=` `,p+=`${this.format(r).header("Options")} -`;let G=v.reduce((T,O)=>Math.max(T,O.definition.length),0);p+=` -`;for(let{definition:T,description:O}of v)p+=` ${this.format(r).bold(T.padEnd(G))} ${mL(O,{format:this.format(r),paragraphs:!1})}`}if(m!==""&&(p+=` +`;let k=v.reduce((T,O)=>Math.max(T,O.definition.length),0);p+=` +`;for(let{definition:T,description:O}of v)p+=` ${this.format(r).bold(T.padEnd(k))} ${hL(O,{format:this.format(r),paragraphs:!1})}`}if(m!==""&&(p+=` `,p+=`${this.format(r).header("Details")} `,p+=` -`,p+=mL(m,{format:this.format(r),paragraphs:!0})),y.length>0){p+=` +`,p+=hL(m,{format:this.format(r),paragraphs:!0})),y.length>0){p+=` `,p+=`${this.format(r).header("Examples")} -`;for(let[G,T]of y)p+=` -`,p+=mL(G,{format:this.format(r),paragraphs:!1}),p+=`${T.replace(/^/m,` ${this.format(r).bold(a)}`).replace(/\$0/g,this.binaryName)} +`;for(let[k,T]of y)p+=` +`,p+=hL(k,{format:this.format(r),paragraphs:!1}),p+=`${T.replace(/^/m,` ${this.format(r).bold(a)}`).replace(/\$0/g,this.binaryName)} `}}else{let{usage:f}=this.getUsageByRegistration(g);p+=`${this.format(r).bold(a)}${f} -`}else{let f=new Map;for(let[v,{index:G}]of this.registrations.entries()){if(typeof v.usage>"u")continue;let T=typeof v.usage.category<"u"?mL(v.usage.category,{format:this.format(r),paragraphs:!1}):null,O=f.get(T);typeof O>"u"&&f.set(T,O=[]);let{usage:X}=this.getUsageByIndex(G);O.push({commandClass:v,usage:X})}let m=Array.from(f.keys()).sort((v,G)=>v===null?-1:G===null?1:v.localeCompare(G,"en",{usage:"sort",caseFirst:"upper"})),y=typeof this.binaryLabel<"u",B=typeof this.binaryVersion<"u";y||B?(y&&B?p+=`${this.format(r).header(`${this.binaryLabel} - ${this.binaryVersion}`)} +`}else{let f=new Map;for(let[v,{index:k}]of this.registrations.entries()){if(typeof v.usage>"u")continue;let T=typeof v.usage.category<"u"?hL(v.usage.category,{format:this.format(r),paragraphs:!1}):null,O=f.get(T);typeof O>"u"&&f.set(T,O=[]);let{usage:X}=this.getUsageByIndex(k);O.push({commandClass:v,usage:X})}let m=Array.from(f.keys()).sort((v,k)=>v===null?-1:k===null?1:v.localeCompare(k,"en",{usage:"sort",caseFirst:"upper"})),y=typeof this.binaryLabel<"u",B=typeof this.binaryVersion<"u";y||B?(y&&B?p+=`${this.format(r).header(`${this.binaryLabel} - ${this.binaryVersion}`)} `:y?p+=`${this.format(r).header(`${this.binaryLabel}`)} `:p+=`${this.format(r).header(`${this.binaryVersion}`)} `,p+=` ${this.format(r).bold(a)}${this.binaryName} `):p+=`${this.format(r).bold(a)}${this.binaryName} -`;for(let v of m){let G=f.get(v).slice().sort((O,X)=>O.usage.localeCompare(X.usage,"en",{usage:"sort",caseFirst:"upper"})),T=v!==null?v.trim():"General commands";p+=` +`;for(let v of m){let k=f.get(v).slice().sort((O,X)=>O.usage.localeCompare(X.usage,"en",{usage:"sort",caseFirst:"upper"})),T=v!==null?v.trim():"General commands";p+=` `,p+=`${this.format(r).header(`${T}`)} -`;for(let{commandClass:O,usage:X}of G){let U=O.usage.description||"undocumented";p+=` +`;for(let{commandClass:O,usage:X}of k){let U=O.usage.description||"undocumented";p+=` `,p+=` ${this.format(r).bold(X)} -`,p+=` ${mL(U,{format:this.format(r),paragraphs:!1})}`}}p+=` -`,p+=mL("You can also print more details about any of these commands by calling them with the `-h,--help` flag right after the command name.",{format:this.format(r),paragraphs:!0})}return p}error(t,r){var s,{colored:a,command:o=(s=t[X8r])!==null&&s!==void 0?s:null}=r===void 0?{}:r;(!t||typeof t!="object"||!("stack"in t))&&(t=new Error(`Execution failed with a non-error rejection (rejected value: ${JSON.stringify(t)})`));let g="",p=t.name.replace(/([a-z])([A-Z])/g,"$1 $2");p==="Error"&&(p="Internal Error"),g+=`${this.format(a).error(p)}: ${t.message} +`,p+=` ${hL(U,{format:this.format(r),paragraphs:!1})}`}}p+=` +`,p+=hL("You can also print more details about any of these commands by calling them with the `-h,--help` flag right after the command name.",{format:this.format(r),paragraphs:!0})}return p}error(t,r){var s,{colored:a,command:o=(s=t[q8r])!==null&&s!==void 0?s:null}=r===void 0?{}:r;(!t||typeof t!="object"||!("stack"in t))&&(t=new Error(`Execution failed with a non-error rejection (rejected value: ${JSON.stringify(t)})`));let g="",p=t.name.replace(/([a-z])([A-Z])/g,"$1 $2");p==="Error"&&(p="Internal Error"),g+=`${this.format(a).error(p)}: ${t.message} `;let f=t.clipanion;return typeof f<"u"?f.type==="usage"&&(g+=` `,g+=this.usage(o)):t.stack&&(g+=`${t.stack.replace(/^.*\n/,"")} -`),g}format(t){var r;return((r=t??this.enableColors)!==null&&r!==void 0?r:e.defaultContext.colorDepth>1)?T8r:N8r}getUsageByRegistration(t,r){let s=this.registrations.get(t);if(typeof s>"u")throw new Error("Assertion failed: Unregistered command");return this.getUsageByIndex(s.index,r)}getUsageByIndex(t,r){return this.builder.getBuilderByIndex(t).usage(r)}};Dge.defaultContext={env:process.env,stdin:process.stdin,stdout:process.stdout,stderr:process.stderr,colorDepth:M8r()}});var HLe,q8r=cc(()=>{zre();HLe=class extends Cb{async execute(){this.context.stdout.write(`${JSON.stringify(this.cli.definitions(),null,2)} -`)}};HLe.paths=[["--clipanion=definitions"]]});var XLe,$8r=cc(()=>{zre();XLe=class extends Cb{async execute(){this.context.stdout.write(this.cli.usage())}};XLe.paths=[["-h"],["--help"]]});function Btt(e={}){return dF({definition(t,r){var s;t.addProxy({name:(s=e.name)!==null&&s!==void 0?s:r,required:e.required})},transformer(t,r,s){return s.positionals.map(({value:a})=>a)}})}var vMt=cc(()=>{U7()});var JLe,e6r=cc(()=>{zre();vMt();JLe=class extends Cb{constructor(){super(...arguments),this.args=Btt()}async execute(){this.context.stdout.write(`${JSON.stringify(this.cli.process(this.args).tokens,null,2)} -`)}};JLe.paths=[["--clipanion=tokens"]]});var ULe,t6r=cc(()=>{zre();ULe=class extends Cb{async execute(){var t;this.context.stdout.write(`${(t=this.cli.binaryVersion)!==null&&t!==void 0?t:""} -`)}};ULe.paths=[["-v"],["--version"]]});var SMt={};jf(SMt,{DefinitionsCommand:()=>HLe,HelpCommand:()=>XLe,TokensCommand:()=>JLe,VersionCommand:()=>ULe});var r6r=cc(()=>{q8r();$8r();e6r();t6r()});function n6r(e,t,r){let[s,a]=pJ(t,r??{}),{arity:o=1}=a,g=e.split(","),p=new Set(g);return dF({definition(f){f.addOption({names:g,arity:o,hidden:a?.hidden,description:a?.description,required:a.required})},transformer(f,m,y){let B,v=typeof s<"u"?[...s]:void 0;for(let{name:G,value:T}of y.options)p.has(G)&&(B=G,v=v??[],v.push(T));return typeof v<"u"?Rge(B??m,v,a.validator):v}})}var i6r=cc(()=>{U7()});function s6r(e,t,r){let[s,a]=pJ(t,r??{}),o=e.split(","),g=new Set(o);return dF({definition(p){p.addOption({names:o,allowBinding:!1,arity:0,hidden:a.hidden,description:a.description,required:a.required})},transformer(p,f,m){let y=s;for(let{name:B,value:v}of m.options)g.has(B)&&(y=v);return y}})}var o6r=cc(()=>{U7()});function a6r(e,t,r){let[s,a]=pJ(t,r??{}),o=e.split(","),g=new Set(o);return dF({definition(p){p.addOption({names:o,allowBinding:!1,arity:0,hidden:a.hidden,description:a.description,required:a.required})},transformer(p,f,m){let y=s;for(let{name:B,value:v}of m.options)g.has(B)&&(y??(y=0),v?y+=1:y=0);return y}})}var c6r=cc(()=>{U7()});function l6r(e={}){return dF({definition(t,r){var s;t.addRest({name:(s=e.name)!==null&&s!==void 0?s:r,required:e.required})},transformer(t,r,s){let a=g=>{let p=s.positionals[g];return p.extra===uW||p.extra===!1&&gg)}})}var u6r=cc(()=>{btt();U7()});function pEs(e,t,r){let[s,a]=pJ(t,r??{}),{arity:o=1}=a,g=e.split(","),p=new Set(g);return dF({definition(f){f.addOption({names:g,arity:a.tolerateBoolean?0:o,hidden:a.hidden,description:a.description,required:a.required})},transformer(f,m,y,B){let v,G=s;typeof a.env<"u"&&B.env[a.env]&&(v=a.env,G=B.env[a.env]);for(let{name:T,value:O}of y.options)p.has(T)&&(v=T,G=O);return typeof G=="string"?Rge(v??m,G,a.validator):G}})}function fEs(e={}){let{required:t=!0}=e;return dF({definition(r,s){var a;r.addPositional({name:(a=e.name)!==null&&a!==void 0?a:s,required:e.required})},transformer(r,s,a){var o;for(let g=0;g{btt();U7()});var ed={};jf(ed,{Array:()=>n6r,Boolean:()=>s6r,Counter:()=>a6r,Proxy:()=>Btt,Rest:()=>l6r,String:()=>g6r,applyValidator:()=>Rge,cleanValidationError:()=>Itt,formatError:()=>MLe,isOptionSymbol:()=>OLe,makeCommandOption:()=>dF,rerouteArguments:()=>pJ});var d6r=cc(()=>{U7();vMt();i6r();o6r();c6r();u6r();A6r()});var dg={};jf(dg,{Builtins:()=>SMt,Cli:()=>Dge,Command:()=>Cb,Option:()=>ed,UsageError:()=>Nge,formatMarkdownish:()=>mL,run:()=>K8r,runExit:()=>U8r});var Fl=cc(()=>{ftt();CMt();zre();z8r();r6r();d6r()});var p6r=z(vtt=>{"use strict";Object.defineProperty(vtt,"__esModule",{value:!0});vtt.BaseCommand=void 0;var wMt=(Fl(),Ai(dg)),TMt=class extends wMt.Command{constructor(){super(...arguments),this.cwd=wMt.Option.String("--cwd",{hidden:!0})}validateAndExecute(){if(typeof this.cwd<"u")throw new wMt.UsageError("The --cwd option is ambiguous when used anywhere else than the very first parameter provided in the command line, before even the command path");return super.validateAndExecute()}};vtt.BaseCommand=TMt});var Oa={};jf(Oa,{__addDisposableResource:()=>W6r,__assign:()=>Stt,__asyncDelegator:()=>D6r,__asyncGenerator:()=>R6r,__asyncValues:()=>x6r,__await:()=>Yye,__awaiter:()=>B6r,__classPrivateFieldGet:()=>Z6r,__classPrivateFieldIn:()=>V6r,__classPrivateFieldSet:()=>L6r,__createBinding:()=>Ttt,__decorate:()=>C6r,__disposeResources:()=>P6r,__esDecorate:()=>h6r,__exportStar:()=>S6r,__extends:()=>f6r,__generator:()=>v6r,__importDefault:()=>F6r,__importStar:()=>G6r,__makeTemplateObject:()=>k6r,__metadata:()=>E6r,__param:()=>m6r,__propKey:()=>y6r,__read:()=>DMt,__rest:()=>I6r,__rewriteRelativeImportExtension:()=>O6r,__runInitializers:()=>_6r,__setFunctionName:()=>b6r,__spread:()=>w6r,__spreadArray:()=>N6r,__spreadArrays:()=>T6r,__values:()=>wtt,default:()=>mEs});function f6r(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");NMt(e,t);function r(){this.constructor=e}e.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}function I6r(e,t){var r={};for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&t.indexOf(s)<0&&(r[s]=e[s]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,s=Object.getOwnPropertySymbols(e);a=0;p--)(g=e[p])&&(o=(a<3?g(o):a>3?g(t,r,o):g(t,r))||o);return a>3&&o&&Object.defineProperty(t,r,o),o}function m6r(e,t){return function(r,s){t(r,s,e)}}function h6r(e,t,r,s,a,o){function g(U){if(U!==void 0&&typeof U!="function")throw new TypeError("Function expected");return U}for(var p=s.kind,f=p==="getter"?"get":p==="setter"?"set":"value",m=!t&&e?s.static?e:e.prototype:null,y=t||(m?Object.getOwnPropertyDescriptor(m,s.name):{}),B,v=!1,G=r.length-1;G>=0;G--){var T={};for(var O in s)T[O]=O==="access"?{}:s[O];for(var O in s.access)T.access[O]=s.access[O];T.addInitializer=function(U){if(v)throw new TypeError("Cannot add initializers after decoration has completed");o.push(g(U||null))};var X=(0,r[G])(p==="accessor"?{get:y.get,set:y.set}:y[f],T);if(p==="accessor"){if(X===void 0)continue;if(X===null||typeof X!="object")throw new TypeError("Object expected");(B=g(X.get))&&(y.get=B),(B=g(X.set))&&(y.set=B),(B=g(X.init))&&a.unshift(B)}else(B=g(X))&&(p==="field"?a.unshift(B):y[f]=B)}m&&Object.defineProperty(m,s.name,y),v=!0}function _6r(e,t,r){for(var s=arguments.length>2,a=0;a0&&o[o.length-1])&&(m[0]===6||m[0]===2)){r=0;continue}if(m[0]===3&&(!o||m[1]>o[0]&&m[1]=e.length&&(e=void 0),{value:e&&e[s++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function DMt(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o}function w6r(){for(var e=[],t=0;t1||f(G,O)})},T&&(a[G]=T(a[G])))}function f(G,T){try{m(s[G](T))}catch(O){v(o[0][3],O)}}function m(G){G.value instanceof Yye?Promise.resolve(G.value.v).then(y,B):v(o[0][2],G)}function y(G){f("next",G)}function B(G){f("throw",G)}function v(G,T){G(T),o.shift(),o.length&&f(o[0][0],o[0][1])}}function D6r(e){var t,r;return t={},s("next"),s("throw",function(a){throw a}),s("return"),t[Symbol.iterator]=function(){return this},t;function s(a,o){t[a]=e[a]?function(g){return(r=!r)?{value:Yye(e[a](g)),done:!1}:o?o(g):g}:o}}function x6r(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],r;return t?t.call(e):(e=typeof wtt=="function"?wtt(e):e[Symbol.iterator](),r={},s("next"),s("throw"),s("return"),r[Symbol.asyncIterator]=function(){return this},r);function s(o){r[o]=e[o]&&function(g){return new Promise(function(p,f){g=e[o](g),a(p,f,g.done,g.value)})}}function a(o,g,p,f){Promise.resolve(f).then(function(m){o({value:m,done:p})},g)}}function k6r(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}function G6r(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r=RMt(e),s=0;s{NMt=function(e,t){return NMt=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,s){r.__proto__=s}||function(r,s){for(var a in s)Object.prototype.hasOwnProperty.call(s,a)&&(r[a]=s[a])},NMt(e,t)};Stt=function(){return Stt=Object.assign||function(t){for(var r,s=1,a=arguments.length;s{"use strict";Object.defineProperty(sO,"__esModule",{value:!0});sO.SAFE_TIME=sO.S_IFLNK=sO.S_IFREG=sO.S_IFDIR=sO.S_IFMT=void 0;sO.S_IFMT=61440;sO.S_IFDIR=16384;sO.S_IFREG=32768;sO.S_IFLNK=40960;sO.SAFE_TIME=456789e3});var Rtt=z(bL=>{"use strict";Object.defineProperty(bL,"__esModule",{value:!0});bL.EBUSY=hEs;bL.ENOSYS=_Es;bL.EINVAL=yEs;bL.EBADF=bEs;bL.ENOENT=EEs;bL.ENOTDIR=BEs;bL.EISDIR=vEs;bL.EEXIST=SEs;bL.EROFS=wEs;bL.ENOTEMPTY=TEs;bL.EOPNOTSUPP=NEs;bL.ERR_DIR_CLOSED=REs;function oO(e,t){return Object.assign(new Error(`${e}: ${t}`),{code:e})}function hEs(e){return oO("EBUSY",e)}function _Es(e,t){return oO("ENOSYS",`${e}, ${t}`)}function yEs(e){return oO("EINVAL",`invalid argument, ${e}`)}function bEs(e){return oO("EBADF",`bad file descriptor, ${e}`)}function EEs(e){return oO("ENOENT",`no such file or directory, ${e}`)}function BEs(e){return oO("ENOTDIR",`not a directory, ${e}`)}function vEs(e){return oO("EISDIR",`illegal operation on a directory, ${e}`)}function SEs(e){return oO("EEXIST",`file already exists, ${e}`)}function wEs(e){return oO("EROFS",`read-only filesystem, ${e}`)}function TEs(e){return oO("ENOTEMPTY",`directory not empty, ${e}`)}function NEs(e){return oO("EOPNOTSUPP",`operation not supported, ${e}`)}function REs(){return oO("ERR_DIR_CLOSED","Directory handle was closed")}});var kMt=z(BD=>{"use strict";Object.defineProperty(BD,"__esModule",{value:!0});BD.BigIntStatsEntry=BD.StatEntry=BD.DirEntry=BD.DEFAULT_MODE=void 0;BD.makeDefaultStats=Q6r;BD.makeEmptyStats=xEs;BD.clearStats=Y6r;BD.convertToBigIntStats=kEs;BD.areStatsEqual=GEs;var DEs=(Ma(),Ai(Oa)),M6r=DEs.__importStar(Dt("util")),wT=Ntt();BD.DEFAULT_MODE=wT.S_IFREG|420;var xMt=class{constructor(){this.name="",this.path="",this.mode=0}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&wT.S_IFMT)===wT.S_IFDIR}isFIFO(){return!1}isFile(){return(this.mode&wT.S_IFMT)===wT.S_IFREG}isSocket(){return!1}isSymbolicLink(){return(this.mode&wT.S_IFMT)===wT.S_IFLNK}};BD.DirEntry=xMt;var Dtt=class{constructor(){this.uid=0,this.gid=0,this.size=0,this.blksize=0,this.atimeMs=0,this.mtimeMs=0,this.ctimeMs=0,this.birthtimeMs=0,this.atime=new Date(0),this.mtime=new Date(0),this.ctime=new Date(0),this.birthtime=new Date(0),this.dev=0,this.ino=0,this.mode=BD.DEFAULT_MODE,this.nlink=1,this.rdev=0,this.blocks=1}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&wT.S_IFMT)===wT.S_IFDIR}isFIFO(){return!1}isFile(){return(this.mode&wT.S_IFMT)===wT.S_IFREG}isSocket(){return!1}isSymbolicLink(){return(this.mode&wT.S_IFMT)===wT.S_IFLNK}};BD.StatEntry=Dtt;var xtt=class{constructor(){this.uid=BigInt(0),this.gid=BigInt(0),this.size=BigInt(0),this.blksize=BigInt(0),this.atimeMs=BigInt(0),this.mtimeMs=BigInt(0),this.ctimeMs=BigInt(0),this.birthtimeMs=BigInt(0),this.atimeNs=BigInt(0),this.mtimeNs=BigInt(0),this.ctimeNs=BigInt(0),this.birthtimeNs=BigInt(0),this.atime=new Date(0),this.mtime=new Date(0),this.ctime=new Date(0),this.birthtime=new Date(0),this.dev=BigInt(0),this.ino=BigInt(0),this.mode=BigInt(BD.DEFAULT_MODE),this.nlink=BigInt(1),this.rdev=BigInt(0),this.blocks=BigInt(1)}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&BigInt(wT.S_IFMT))===BigInt(wT.S_IFDIR)}isFIFO(){return!1}isFile(){return(this.mode&BigInt(wT.S_IFMT))===BigInt(wT.S_IFREG)}isSocket(){return!1}isSymbolicLink(){return(this.mode&BigInt(wT.S_IFMT))===BigInt(wT.S_IFLNK)}};BD.BigIntStatsEntry=xtt;function Q6r(){return new Dtt}function xEs(){return Y6r(Q6r())}function Y6r(e){for(let t in e)if(Object.hasOwn(e,t)){let r=e[t];typeof r=="number"?e[t]=0:typeof r=="bigint"?e[t]=BigInt(0):M6r.types.isDate(r)&&(e[t]=new Date(0))}return e}function kEs(e){let t=new xtt;for(let r in e)if(Object.hasOwn(e,r)){let s=e[r];typeof s=="number"?t[r]=BigInt(s):M6r.types.isDate(s)&&(t[r]=new Date(s))}return t.atimeNs=t.atimeMs*BigInt(1e6),t.mtimeNs=t.mtimeMs*BigInt(1e6),t.ctimeNs=t.ctimeMs*BigInt(1e6),t.birthtimeNs=t.birthtimeMs*BigInt(1e6),t}function GEs(e,t){if(e.atimeMs!==t.atimeMs||e.birthtimeMs!==t.birthtimeMs||e.blksize!==t.blksize||e.blocks!==t.blocks||e.ctimeMs!==t.ctimeMs||e.dev!==t.dev||e.gid!==t.gid||e.ino!==t.ino||e.isBlockDevice()!==t.isBlockDevice()||e.isCharacterDevice()!==t.isCharacterDevice()||e.isDirectory()!==t.isDirectory()||e.isFIFO()!==t.isFIFO()||e.isFile()!==t.isFile()||e.isSocket()!==t.isSocket()||e.isSymbolicLink()!==t.isSymbolicLink()||e.mode!==t.mode||e.mtimeMs!==t.mtimeMs||e.nlink!==t.nlink||e.rdev!==t.rdev||e.size!==t.size||e.uid!==t.uid)return!1;let r=e,s=t;return!(r.atimeNs!==s.atimeNs||r.mtimeNs!==s.mtimeNs||r.ctimeNs!==s.ctimeNs||r.birthtimeNs!==s.birthtimeNs)}});var EL=z(nB=>{"use strict";Object.defineProperty(nB,"__esModule",{value:!0});nB.ppath=nB.npath=nB.Filename=nB.PortablePath=void 0;nB.convertPath=MEs;var FEs=(Ma(),Ai(Oa)),ktt=FEs.__importDefault(Dt("path")),H6r;(function(e){e[e.File=0]="File",e[e.Portable=1]="Portable",e[e.Native=2]="Native"})(H6r||(H6r={}));nB.PortablePath={root:"/",dot:".",parent:".."};nB.Filename={home:"~",nodeModules:"node_modules",manifest:"package.json",lockfile:"yarn.lock",virtual:"__virtual__",pnpJs:".pnp.js",pnpCjs:".pnp.cjs",pnpData:".pnp.data.json",pnpEsmLoader:".pnp.loader.mjs",rc:".yarnrc.yml",env:".env"};nB.npath=Object.create(ktt.default);nB.ppath=Object.create(ktt.default.posix);nB.npath.cwd=()=>process.cwd();nB.ppath.cwd=process.platform==="win32"?()=>GMt(process.cwd()):process.cwd;process.platform==="win32"&&(nB.ppath.resolve=(...e)=>e.length>0&&nB.ppath.isAbsolute(e[0])?ktt.default.posix.resolve(...e):ktt.default.posix.resolve(nB.ppath.cwd(),...e));var X6r=function(e,t,r){return t=e.normalize(t),r=e.normalize(r),t===r?".":(t.endsWith(e.sep)||(t=t+e.sep),r.startsWith(t)?r.slice(t.length):null)};nB.npath.contains=(e,t)=>X6r(nB.npath,e,t);nB.ppath.contains=(e,t)=>X6r(nB.ppath,e,t);var ZEs=/^([a-zA-Z]:.*)$/,LEs=/^\/\/(\.\/)?(.*)$/,VEs=/^\/([a-zA-Z]:.*)$/,WEs=/^\/unc\/(\.dot\/)?(.*)$/;function PEs(e){let t,r;if(t=e.match(VEs))e=t[1];else if(r=e.match(WEs))e=`\\\\${r[1]?".\\":""}${r[2]}`;else return e;return e.replace(/\//g,"\\")}function OEs(e){e=e.replace(/\\/g,"/");let t,r;return(t=e.match(ZEs))?e=`/${t[1]}`:(r=e.match(LEs))&&(e=`/unc/${r[1]?".dot/":""}${r[2]}`),e}var GMt=process.platform==="win32"?OEs:e=>e,J6r=process.platform==="win32"?PEs:e=>e;nB.npath.fromPortablePath=J6r;nB.npath.toPortablePath=GMt;function MEs(e,t){return e===nB.npath?J6r(t):GMt(t)}});var ZMt=z(Gtt=>{"use strict";Object.defineProperty(Gtt,"__esModule",{value:!0});Gtt.setupCopyIndex=JEs;Gtt.copyPromise=UEs;var QEs=(Ma(),Ai(Oa)),YEs=QEs.__importStar(Ntt()),HEs=EL(),xge=new Date(YEs.SAFE_TIME*1e3),XEs=xge.getTime();async function JEs(e,t){let r="0123456789abcdef";await e.mkdirPromise(t.indexPath,{recursive:!0});let s=[];for(let a of r)for(let o of r)s.push(e.mkdirPromise(e.pathUtils.join(t.indexPath,`${a}${o}`),{recursive:!0}));return await Promise.all(s),t.indexPath}async function UEs(e,t,r,s,a){let o=e.pathUtils.normalize(t),g=r.pathUtils.normalize(s),p=[],f=[],{atime:m,mtime:y}=a.stableTime?{atime:xge,mtime:xge}:await r.lstatPromise(g);await e.mkdirpPromise(e.pathUtils.dirname(t),{utimes:[m,y]}),await FMt(p,f,e,o,r,g,{...a,didParentExist:!0});for(let B of p)await B();await Promise.all(f.map(B=>B()))}async function FMt(e,t,r,s,a,o,g){let p=g.didParentExist?await U6r(r,s):null,f=await a.lstatPromise(o),{atime:m,mtime:y}=g.stableTime?{atime:xge,mtime:xge}:f,B;switch(!0){case f.isDirectory():B=await KEs(e,t,r,s,p,a,o,f,g);break;case f.isFile():B=await qEs(e,t,r,s,p,a,o,f,g);break;case f.isSymbolicLink():B=await $Es(e,t,r,s,p,a,o,f,g);break;default:throw new Error(`Unsupported file type (${f.mode})`)}return(g.linkStrategy?.type!=="HardlinkFromIndex"||!f.isFile())&&((B||p?.mtime?.getTime()!==y.getTime()||p?.atime?.getTime()!==m.getTime())&&(t.push(()=>r.lutimesPromise(s,m,y)),B=!0),(p===null||(p.mode&511)!==(f.mode&511))&&(t.push(()=>r.chmodPromise(s,f.mode&511)),B=!0)),B}async function U6r(e,t){try{return await e.lstatPromise(t)}catch{return null}}async function KEs(e,t,r,s,a,o,g,p,f){if(a!==null&&!a.isDirectory())if(f.overwrite)e.push(async()=>r.removePromise(s)),a=null;else return!1;let m=!1;a===null&&(e.push(async()=>{try{await r.mkdirPromise(s,{mode:p.mode})}catch(v){if(v.code!=="EEXIST")throw v}}),m=!0);let y=await o.readdirPromise(g),B=f.didParentExist&&!a?{...f,didParentExist:!1}:f;if(f.stableSort)for(let v of y.sort())await FMt(e,t,r,r.pathUtils.join(s,v),o,o.pathUtils.join(g,v),B)&&(m=!0);else(await Promise.all(y.map(async G=>{await FMt(e,t,r,r.pathUtils.join(s,G),o,o.pathUtils.join(g,G),B)}))).some(G=>G)&&(m=!0);return m}async function jEs(e,t,r,s,a,o,g,p,f,m){let y=await o.checksumFilePromise(g,{algorithm:"sha1"}),B=420,v=p.mode&511,G=`${y}${v!==B?v.toString(8):""}`,T=r.pathUtils.join(m.indexPath,y.slice(0,2),`${G}.dat`),O;(function(ge){ge[ge.Lock=0]="Lock",ge[ge.Rename=1]="Rename"})(O||(O={}));let X=O.Rename,U=await U6r(r,T);if(a){let ge=U&&a.dev===U.dev&&a.ino===U.ino,fe=U?.mtimeMs!==XEs;if(ge&&fe&&m.autoRepair&&(X=O.Lock,U=null),!ge)if(f.overwrite)e.push(async()=>r.removePromise(s)),a=null;else return!1}let le=!U&&X===O.Rename?`${T}.${Math.floor(Math.random()*4294967296).toString(16).padStart(8,"0")}`:null,ae=!1;return e.push(async()=>{if(!U&&(X===O.Lock&&await r.lockPromise(T,async()=>{let ge=await o.readFilePromise(g);await r.writeFilePromise(T,ge)}),X===O.Rename&&le)){let ge=await o.readFilePromise(g);await r.writeFilePromise(le,ge);try{await r.linkPromise(le,T)}catch(fe){if(fe.code==="EEXIST")ae=!0,await r.unlinkPromise(le);else throw fe}}a||await r.linkPromise(T,s)}),t.push(async()=>{U||(await r.lutimesPromise(T,xge,xge),v!==B&&await r.chmodPromise(T,v)),le&&!ae&&await r.unlinkPromise(le)}),!1}async function zEs(e,t,r,s,a,o,g,p,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(s)),a=null;else return!1;return e.push(async()=>{let m=await o.readFilePromise(g);await r.writeFilePromise(s,m)}),!0}async function qEs(e,t,r,s,a,o,g,p,f){return f.linkStrategy?.type==="HardlinkFromIndex"?jEs(e,t,r,s,a,o,g,p,f,f.linkStrategy):zEs(e,t,r,s,a,o,g,p,f)}async function $Es(e,t,r,s,a,o,g,p,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(s)),a=null;else return!1;return e.push(async()=>{await r.symlinkPromise((0,HEs.convertPath)(r.pathUtils,await o.readlinkPromise(g)),s)}),!0}});var K6r=z(KLe=>{"use strict";Object.defineProperty(KLe,"__esModule",{value:!0});KLe.CustomDir=void 0;KLe.opendir=r1s;var e1s=(Ma(),Ai(Oa)),t1s=e1s.__importStar(Rtt()),Ftt=class{constructor(t,r,s={}){this.path=t,this.nextDirent=r,this.opts=s,this.closed=!1}throwIfClosed(){if(this.closed)throw t1s.ERR_DIR_CLOSED()}async*[Symbol.asyncIterator](){try{let t;for(;(t=await this.read())!==null;)yield t}finally{await this.close()}}read(t){let r=this.readSync();return typeof t<"u"?t(null,r):Promise.resolve(r)}readSync(){return this.throwIfClosed(),this.nextDirent()}close(t){return this.closeSync(),typeof t<"u"?t(null):Promise.resolve()}closeSync(){this.throwIfClosed(),this.opts.onClose?.(),this.closed=!0}};KLe.CustomDir=Ftt;function r1s(e,t,r,s){let a=()=>{let o=r.shift();if(typeof o>"u")return null;let g=e.pathUtils.join(t,o);return Object.assign(e.statSync(g),{name:o,path:void 0})};return new Ftt(t,a,s)}});var j6r=z(K7=>{"use strict";Object.defineProperty(K7,"__esModule",{value:!0});K7.CustomStatWatcher=K7.Status=K7.Event=void 0;K7.assertStatus=LMt;var n1s=(Ma(),Ai(Oa)),i1s=Dt("events"),Ztt=n1s.__importStar(kMt()),kge;(function(e){e.Change="change",e.Stop="stop"})(kge||(K7.Event=kge={}));var Gge;(function(e){e.Ready="ready",e.Running="running",e.Stopped="stopped"})(Gge||(K7.Status=Gge={}));function LMt(e,t){if(e!==t)throw new Error(`Invalid StatWatcher status: expected '${t}', got '${e}'`)}var VMt=class e extends i1s.EventEmitter{static create(t,r,s){let a=new e(t,r,s);return a.start(),a}constructor(t,r,{bigint:s=!1}={}){super(),this.status=Gge.Ready,this.changeListeners=new Map,this.startTimeout=null,this.fakeFs=t,this.path=r,this.bigint=s,this.lastStats=this.stat()}start(){LMt(this.status,Gge.Ready),this.status=Gge.Running,this.startTimeout=setTimeout(()=>{this.startTimeout=null,this.fakeFs.existsSync(this.path)||this.emit(kge.Change,this.lastStats,this.lastStats)},3)}stop(){LMt(this.status,Gge.Running),this.status=Gge.Stopped,this.startTimeout!==null&&(clearTimeout(this.startTimeout),this.startTimeout=null),this.emit(kge.Stop)}stat(){try{return this.fakeFs.statSync(this.path,{bigint:this.bigint})}catch{let r=this.bigint?new Ztt.BigIntStatsEntry:new Ztt.StatEntry;return Ztt.clearStats(r)}}makeInterval(t){let r=setInterval(()=>{let s=this.stat(),a=this.lastStats;Ztt.areStatsEqual(s,a)||(this.lastStats=s,this.emit(kge.Change,s,a))},t.interval);return t.persistent?r:r.unref()}registerChangeListener(t,r){this.addListener(kge.Change,t),this.changeListeners.set(t,this.makeInterval(r))}unregisterChangeListener(t){this.removeListener(kge.Change,t);let r=this.changeListeners.get(t);typeof r<"u"&&clearInterval(r),this.changeListeners.delete(t)}unregisterAllChangeListeners(){for(let t of this.changeListeners.keys())this.unregisterChangeListener(t)}hasChangeListeners(){return this.changeListeners.size>0}ref(){for(let t of this.changeListeners.values())t.ref();return this}unref(){for(let t of this.changeListeners.values())t.unref();return this}};K7.CustomStatWatcher=VMt});var WMt=z(jLe=>{"use strict";Object.defineProperty(jLe,"__esModule",{value:!0});jLe.watchFile=o1s;jLe.unwatchFile=z6r;jLe.unwatchAllFiles=a1s;var s1s=j6r(),Ltt=new WeakMap;function o1s(e,t,r,s){let a,o,g,p;switch(typeof r){case"function":a=!1,o=!0,g=5007,p=r;break;default:({bigint:a=!1,persistent:o=!0,interval:g=5007}=r),p=s;break}let f=Ltt.get(e);typeof f>"u"&&Ltt.set(e,f=new Map);let m=f.get(t);return typeof m>"u"&&(m=s1s.CustomStatWatcher.create(e,t,{bigint:a}),f.set(t,m)),m.registerChangeListener(p,{persistent:o,interval:g}),m}function z6r(e,t,r){let s=Ltt.get(e);if(typeof s>"u")return;let a=s.get(t);typeof a>"u"||(typeof r>"u"?a.unregisterAllChangeListeners():a.unregisterChangeListener(r),a.hasChangeListeners()||(a.stop(),s.delete(t)))}function a1s(e){let t=Ltt.get(e);if(!(typeof t>"u"))for(let r of t.keys())z6r(e,r)}});var Zge=z(Fge=>{"use strict";Object.defineProperty(Fge,"__esModule",{value:!0});Fge.BasePortableFakeFS=Fge.FakeFS=void 0;Fge.normalizeLineEndings=OMt;var c1s=Dt("crypto"),l1s=Dt("os"),u1s=ZMt(),q6r=EL(),Vtt=class{constructor(t){this.pathUtils=t}async*genTraversePromise(t,{stableSort:r=!1}={}){let s=[t];for(;s.length>0;){let a=s.shift();if((await this.lstatPromise(a)).isDirectory()){let g=await this.readdirPromise(a);if(r)for(let p of g.sort())s.push(this.pathUtils.join(a,p));else throw new Error("Not supported")}else yield a}}async checksumFilePromise(t,{algorithm:r="sha512"}={}){let s=await this.openPromise(t,"r");try{let o=Buffer.allocUnsafeSlow(65536),g=(0,c1s.createHash)(r),p=0;for(;(p=await this.readPromise(s,o,0,65536))!==0;)g.update(p===65536?o:o.slice(0,p));return g.digest("hex")}finally{await this.closePromise(s)}}async removePromise(t,{recursive:r=!0,maxRetries:s=5}={}){let a;try{a=await this.lstatPromise(t)}catch(o){if(o.code==="ENOENT")return;throw o}if(a.isDirectory()){if(r){let o=await this.readdirPromise(t);await Promise.all(o.map(g=>this.removePromise(this.pathUtils.resolve(t,g))))}for(let o=0;o<=s;o++)try{await this.rmdirPromise(t);break}catch(g){if(g.code!=="EBUSY"&&g.code!=="ENOTEMPTY")throw g;osetTimeout(p,o*100))}}else await this.unlinkPromise(t)}removeSync(t,{recursive:r=!0}={}){let s;try{s=this.lstatSync(t)}catch(a){if(a.code==="ENOENT")return;throw a}if(s.isDirectory()){if(r)for(let a of this.readdirSync(t))this.removeSync(this.pathUtils.resolve(t,a));this.rmdirSync(t)}else this.unlinkSync(t)}async mkdirpPromise(t,{chmod:r,utimes:s}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let g=2;g<=a.length;++g){let p=a.slice(0,g).join(this.pathUtils.sep);if(!this.existsSync(p)){try{await this.mkdirPromise(p)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=p,r!=null&&await this.chmodPromise(p,r),s!=null)await this.utimesPromise(p,s[0],s[1]);else{let f=await this.statPromise(this.pathUtils.dirname(p));await this.utimesPromise(p,f.atime,f.mtime)}}}return o}mkdirpSync(t,{chmod:r,utimes:s}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let g=2;g<=a.length;++g){let p=a.slice(0,g).join(this.pathUtils.sep);if(!this.existsSync(p)){try{this.mkdirSync(p)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=p,r!=null&&this.chmodSync(p,r),s!=null)this.utimesSync(p,s[0],s[1]);else{let f=this.statSync(this.pathUtils.dirname(p));this.utimesSync(p,f.atime,f.mtime)}}}return o}async copyPromise(t,r,{baseFs:s=this,overwrite:a=!0,stableSort:o=!1,stableTime:g=!1,linkStrategy:p=null}={}){return await(0,u1s.copyPromise)(this,t,s,r,{overwrite:a,stableSort:o,stableTime:g,linkStrategy:p})}copySync(t,r,{baseFs:s=this,overwrite:a=!0}={}){let o=s.lstatSync(r),g=this.existsSync(t);if(o.isDirectory()){this.mkdirpSync(t);let f=s.readdirSync(r);for(let m of f)this.copySync(this.pathUtils.join(t,m),s.pathUtils.join(r,m),{baseFs:s,overwrite:a})}else if(o.isFile()){if(!g||a){g&&this.removeSync(t);let f=s.readFileSync(r);this.writeFileSync(t,f)}}else if(o.isSymbolicLink()){if(!g||a){g&&this.removeSync(t);let f=s.readlinkSync(r);this.symlinkSync((0,q6r.convertPath)(this.pathUtils,f),t)}}else throw new Error(`Unsupported file type (file: ${r}, mode: 0o${o.mode.toString(8).padStart(6,"0")})`);let p=o.mode&511;this.chmodSync(t,p)}async changeFilePromise(t,r,s={}){return Buffer.isBuffer(r)?this.changeFileBufferPromise(t,r,s):this.changeFileTextPromise(t,r,s)}async changeFileBufferPromise(t,r,{mode:s}={}){let a=Buffer.alloc(0);try{a=await this.readFilePromise(t)}catch{}Buffer.compare(a,r)!==0&&await this.writeFilePromise(t,r,{mode:s})}async changeFileTextPromise(t,r,{automaticNewlines:s,mode:a}={}){let o="";try{o=await this.readFilePromise(t,"utf8")}catch{}let g=s?OMt(o,r):r;o!==g&&await this.writeFilePromise(t,g,{mode:a})}changeFileSync(t,r,s={}){return Buffer.isBuffer(r)?this.changeFileBufferSync(t,r,s):this.changeFileTextSync(t,r,s)}changeFileBufferSync(t,r,{mode:s}={}){let a=Buffer.alloc(0);try{a=this.readFileSync(t)}catch{}Buffer.compare(a,r)!==0&&this.writeFileSync(t,r,{mode:s})}changeFileTextSync(t,r,{automaticNewlines:s=!1,mode:a}={}){let o="";try{o=this.readFileSync(t,"utf8")}catch{}let g=s?OMt(o,r):r;o!==g&&this.writeFileSync(t,g,{mode:a})}async movePromise(t,r){try{await this.renamePromise(t,r)}catch(s){if(s.code==="EXDEV")await this.copyPromise(r,t),await this.removePromise(t);else throw s}}moveSync(t,r){try{this.renameSync(t,r)}catch(s){if(s.code==="EXDEV")this.copySync(r,t),this.removeSync(t);else throw s}}async lockPromise(t,r){let s=`${t}.flock`,a=1e3/60,o=Date.now(),g=null,p=async()=>{let f;try{[f]=await this.readJsonPromise(s)}catch{return Date.now()-o<500}try{return process.kill(f,0),!0}catch{return!1}};for(;g===null;)try{g=await this.openPromise(s,"wx")}catch(f){if(f.code==="EEXIST"){if(!await p())try{await this.unlinkPromise(s);continue}catch{}if(Date.now()-o<60*1e3)await new Promise(m=>setTimeout(m,a));else throw new Error(`Couldn't acquire a lock in a reasonable time (via ${s})`)}else throw f}await this.writePromise(g,JSON.stringify([process.pid]));try{return await r()}finally{try{await this.closePromise(g),await this.unlinkPromise(s)}catch{}}}async readJsonPromise(t){let r=await this.readFilePromise(t,"utf8");try{return JSON.parse(r)}catch(s){throw s.message+=` (in ${t})`,s}}readJsonSync(t){let r=this.readFileSync(t,"utf8");try{return JSON.parse(r)}catch(s){throw s.message+=` (in ${t})`,s}}async writeJsonPromise(t,r,{compact:s=!1}={}){let a=s?0:2;return await this.writeFilePromise(t,`${JSON.stringify(r,null,a)} +`),g}format(t){var r;return((r=t??this.enableColors)!==null&&r!==void 0?r:e.defaultContext.colorDepth>1)?G8r:F8r}getUsageByRegistration(t,r){let s=this.registrations.get(t);if(typeof s>"u")throw new Error("Assertion failed: Unregistered command");return this.getUsageByIndex(s.index,r)}getUsageByIndex(t,r){return this.builder.getBuilderByIndex(t).usage(r)}};Pge.defaultContext={env:process.env,stdin:process.stdin,stdout:process.stdout,stderr:process.stderr,colorDepth:U8r()}});var JLe,i6r=cc(()=>{$re();JLe=class extends mb{async execute(){this.context.stdout.write(`${JSON.stringify(this.cli.definitions(),null,2)} +`)}};JLe.paths=[["--clipanion=definitions"]]});var ULe,s6r=cc(()=>{$re();ULe=class extends mb{async execute(){this.context.stdout.write(this.cli.usage())}};ULe.paths=[["-h"],["--help"]]});function Stt(e={}){return mF({definition(t,r){var s;t.addProxy({name:(s=e.name)!==null&&s!==void 0?s:r,required:e.required})},transformer(t,r,s){return s.positionals.map(({value:a})=>a)}})}var TQt=cc(()=>{ej()});var KLe,o6r=cc(()=>{$re();TQt();KLe=class extends mb{constructor(){super(...arguments),this.args=Stt()}async execute(){this.context.stdout.write(`${JSON.stringify(this.cli.process(this.args).tokens,null,2)} +`)}};KLe.paths=[["--clipanion=tokens"]]});var jLe,a6r=cc(()=>{$re();jLe=class extends mb{async execute(){var t;this.context.stdout.write(`${(t=this.cli.binaryVersion)!==null&&t!==void 0?t:""} +`)}};jLe.paths=[["-v"],["--version"]]});var NQt={};zf(NQt,{DefinitionsCommand:()=>JLe,HelpCommand:()=>ULe,TokensCommand:()=>KLe,VersionCommand:()=>jLe});var c6r=cc(()=>{i6r();s6r();o6r();a6r()});function l6r(e,t,r){let[s,a]=CJ(t,r??{}),{arity:o=1}=a,g=e.split(","),p=new Set(g);return mF({definition(f){f.addOption({names:g,arity:o,hidden:a?.hidden,description:a?.description,required:a.required})},transformer(f,m,y){let B,v=typeof s<"u"?[...s]:void 0;for(let{name:k,value:T}of y.options)p.has(k)&&(B=k,v=v??[],v.push(T));return typeof v<"u"?Wge(B??m,v,a.validator):v}})}var u6r=cc(()=>{ej()});function g6r(e,t,r){let[s,a]=CJ(t,r??{}),o=e.split(","),g=new Set(o);return mF({definition(p){p.addOption({names:o,allowBinding:!1,arity:0,hidden:a.hidden,description:a.description,required:a.required})},transformer(p,f,m){let y=s;for(let{name:B,value:v}of m.options)g.has(B)&&(y=v);return y}})}var A6r=cc(()=>{ej()});function d6r(e,t,r){let[s,a]=CJ(t,r??{}),o=e.split(","),g=new Set(o);return mF({definition(p){p.addOption({names:o,allowBinding:!1,arity:0,hidden:a.hidden,description:a.description,required:a.required})},transformer(p,f,m){let y=s;for(let{name:B,value:v}of m.options)g.has(B)&&(y??(y=0),v?y+=1:y=0);return y}})}var p6r=cc(()=>{ej()});function f6r(e={}){return mF({definition(t,r){var s;t.addRest({name:(s=e.name)!==null&&s!==void 0?s:r,required:e.required})},transformer(t,r,s){let a=g=>{let p=s.positionals[g];return p.extra===gW||p.extra===!1&&gg)}})}var I6r=cc(()=>{Btt();ej()});function yEs(e,t,r){let[s,a]=CJ(t,r??{}),{arity:o=1}=a,g=e.split(","),p=new Set(g);return mF({definition(f){f.addOption({names:g,arity:a.tolerateBoolean?0:o,hidden:a.hidden,description:a.description,required:a.required})},transformer(f,m,y,B){let v,k=s;typeof a.env<"u"&&B.env[a.env]&&(v=a.env,k=B.env[a.env]);for(let{name:T,value:O}of y.options)p.has(T)&&(v=T,k=O);return typeof k=="string"?Wge(v??m,k,a.validator):k}})}function bEs(e={}){let{required:t=!0}=e;return mF({definition(r,s){var a;r.addPositional({name:(a=e.name)!==null&&a!==void 0?a:s,required:e.required})},transformer(r,s,a){var o;for(let g=0;g{Btt();ej()});var td={};zf(td,{Array:()=>l6r,Boolean:()=>g6r,Counter:()=>d6r,Proxy:()=>Stt,Rest:()=>f6r,String:()=>C6r,applyValidator:()=>Wge,cleanValidationError:()=>mtt,formatError:()=>HLe,isOptionSymbol:()=>MLe,makeCommandOption:()=>mF,rerouteArguments:()=>CJ});var h6r=cc(()=>{ej();TQt();u6r();A6r();p6r();I6r();m6r()});var pg={};zf(pg,{Builtins:()=>NQt,Cli:()=>Pge,Command:()=>mb,Option:()=>td,UsageError:()=>Vge,formatMarkdownish:()=>hL,run:()=>t6r,runExit:()=>e6r});var Zl=cc(()=>{Ctt();_Qt();$re();n6r();c6r();h6r()});var _6r=z(wtt=>{"use strict";Object.defineProperty(wtt,"__esModule",{value:!0});wtt.BaseCommand=void 0;var RQt=(Zl(),Ai(pg)),DQt=class extends RQt.Command{constructor(){super(...arguments),this.cwd=RQt.Option.String("--cwd",{hidden:!0})}validateAndExecute(){if(typeof this.cwd<"u")throw new RQt.UsageError("The --cwd option is ambiguous when used anywhere else than the very first parameter provided in the command line, before even the command path");return super.validateAndExecute()}};wtt.BaseCommand=DQt});var Pa={};zf(Pa,{__addDisposableResource:()=>Y6r,__assign:()=>Ttt,__asyncDelegator:()=>L6r,__asyncGenerator:()=>Z6r,__asyncValues:()=>V6r,__await:()=>Xye,__awaiter:()=>R6r,__classPrivateFieldGet:()=>Q6r,__classPrivateFieldIn:()=>H6r,__classPrivateFieldSet:()=>M6r,__createBinding:()=>Rtt,__decorate:()=>E6r,__disposeResources:()=>X6r,__esDecorate:()=>v6r,__exportStar:()=>x6r,__extends:()=>y6r,__generator:()=>D6r,__importDefault:()=>O6r,__importStar:()=>P6r,__makeTemplateObject:()=>W6r,__metadata:()=>N6r,__param:()=>B6r,__propKey:()=>w6r,__read:()=>GQt,__rest:()=>b6r,__rewriteRelativeImportExtension:()=>J6r,__runInitializers:()=>S6r,__setFunctionName:()=>T6r,__spread:()=>k6r,__spreadArray:()=>F6r,__spreadArrays:()=>G6r,__values:()=>Ntt,default:()=>vEs});function y6r(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");xQt(e,t);function r(){this.constructor=e}e.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}function b6r(e,t){var r={};for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&t.indexOf(s)<0&&(r[s]=e[s]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,s=Object.getOwnPropertySymbols(e);a=0;p--)(g=e[p])&&(o=(a<3?g(o):a>3?g(t,r,o):g(t,r))||o);return a>3&&o&&Object.defineProperty(t,r,o),o}function B6r(e,t){return function(r,s){t(r,s,e)}}function v6r(e,t,r,s,a,o){function g(U){if(U!==void 0&&typeof U!="function")throw new TypeError("Function expected");return U}for(var p=s.kind,f=p==="getter"?"get":p==="setter"?"set":"value",m=!t&&e?s.static?e:e.prototype:null,y=t||(m?Object.getOwnPropertyDescriptor(m,s.name):{}),B,v=!1,k=r.length-1;k>=0;k--){var T={};for(var O in s)T[O]=O==="access"?{}:s[O];for(var O in s.access)T.access[O]=s.access[O];T.addInitializer=function(U){if(v)throw new TypeError("Cannot add initializers after decoration has completed");o.push(g(U||null))};var X=(0,r[k])(p==="accessor"?{get:y.get,set:y.set}:y[f],T);if(p==="accessor"){if(X===void 0)continue;if(X===null||typeof X!="object")throw new TypeError("Object expected");(B=g(X.get))&&(y.get=B),(B=g(X.set))&&(y.set=B),(B=g(X.init))&&a.unshift(B)}else(B=g(X))&&(p==="field"?a.unshift(B):y[f]=B)}m&&Object.defineProperty(m,s.name,y),v=!0}function S6r(e,t,r){for(var s=arguments.length>2,a=0;a0&&o[o.length-1])&&(m[0]===6||m[0]===2)){r=0;continue}if(m[0]===3&&(!o||m[1]>o[0]&&m[1]=e.length&&(e=void 0),{value:e&&e[s++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function GQt(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o}function k6r(){for(var e=[],t=0;t1||f(k,O)})},T&&(a[k]=T(a[k])))}function f(k,T){try{m(s[k](T))}catch(O){v(o[0][3],O)}}function m(k){k.value instanceof Xye?Promise.resolve(k.value.v).then(y,B):v(o[0][2],k)}function y(k){f("next",k)}function B(k){f("throw",k)}function v(k,T){k(T),o.shift(),o.length&&f(o[0][0],o[0][1])}}function L6r(e){var t,r;return t={},s("next"),s("throw",function(a){throw a}),s("return"),t[Symbol.iterator]=function(){return this},t;function s(a,o){t[a]=e[a]?function(g){return(r=!r)?{value:Xye(e[a](g)),done:!1}:o?o(g):g}:o}}function V6r(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],r;return t?t.call(e):(e=typeof Ntt=="function"?Ntt(e):e[Symbol.iterator](),r={},s("next"),s("throw"),s("return"),r[Symbol.asyncIterator]=function(){return this},r);function s(o){r[o]=e[o]&&function(g){return new Promise(function(p,f){g=e[o](g),a(p,f,g.done,g.value)})}}function a(o,g,p,f){Promise.resolve(f).then(function(m){o({value:m,done:p})},g)}}function W6r(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}function P6r(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r=kQt(e),s=0;s{xQt=function(e,t){return xQt=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,s){r.__proto__=s}||function(r,s){for(var a in s)Object.prototype.hasOwnProperty.call(s,a)&&(r[a]=s[a])},xQt(e,t)};Ttt=function(){return Ttt=Object.assign||function(t){for(var r,s=1,a=arguments.length;s{"use strict";Object.defineProperty(cO,"__esModule",{value:!0});cO.SAFE_TIME=cO.S_IFLNK=cO.S_IFREG=cO.S_IFDIR=cO.S_IFMT=void 0;cO.S_IFMT=61440;cO.S_IFDIR=16384;cO.S_IFREG=32768;cO.S_IFLNK=40960;cO.SAFE_TIME=456789e3});var xtt=z(EL=>{"use strict";Object.defineProperty(EL,"__esModule",{value:!0});EL.EBUSY=SEs;EL.ENOSYS=wEs;EL.EINVAL=TEs;EL.EBADF=NEs;EL.ENOENT=REs;EL.ENOTDIR=DEs;EL.EISDIR=xEs;EL.EEXIST=kEs;EL.EROFS=GEs;EL.ENOTEMPTY=FEs;EL.EOPNOTSUPP=ZEs;EL.ERR_DIR_CLOSED=LEs;function lO(e,t){return Object.assign(new Error(`${e}: ${t}`),{code:e})}function SEs(e){return lO("EBUSY",e)}function wEs(e,t){return lO("ENOSYS",`${e}, ${t}`)}function TEs(e){return lO("EINVAL",`invalid argument, ${e}`)}function NEs(e){return lO("EBADF",`bad file descriptor, ${e}`)}function REs(e){return lO("ENOENT",`no such file or directory, ${e}`)}function DEs(e){return lO("ENOTDIR",`not a directory, ${e}`)}function xEs(e){return lO("EISDIR",`illegal operation on a directory, ${e}`)}function kEs(e){return lO("EEXIST",`file already exists, ${e}`)}function GEs(e){return lO("EROFS",`read-only filesystem, ${e}`)}function FEs(e){return lO("ENOTEMPTY",`directory not empty, ${e}`)}function ZEs(e){return lO("EOPNOTSUPP",`operation not supported, ${e}`)}function LEs(){return lO("ERR_DIR_CLOSED","Directory handle was closed")}});var ZQt=z(wD=>{"use strict";Object.defineProperty(wD,"__esModule",{value:!0});wD.BigIntStatsEntry=wD.StatEntry=wD.DirEntry=wD.DEFAULT_MODE=void 0;wD.makeDefaultStats=K6r;wD.makeEmptyStats=WEs;wD.clearStats=j6r;wD.convertToBigIntStats=PEs;wD.areStatsEqual=OEs;var VEs=(Oa(),Ai(Pa)),U6r=VEs.__importStar(xt("util")),TT=Dtt();wD.DEFAULT_MODE=TT.S_IFREG|420;var FQt=class{constructor(){this.name="",this.path="",this.mode=0}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&TT.S_IFMT)===TT.S_IFDIR}isFIFO(){return!1}isFile(){return(this.mode&TT.S_IFMT)===TT.S_IFREG}isSocket(){return!1}isSymbolicLink(){return(this.mode&TT.S_IFMT)===TT.S_IFLNK}};wD.DirEntry=FQt;var ktt=class{constructor(){this.uid=0,this.gid=0,this.size=0,this.blksize=0,this.atimeMs=0,this.mtimeMs=0,this.ctimeMs=0,this.birthtimeMs=0,this.atime=new Date(0),this.mtime=new Date(0),this.ctime=new Date(0),this.birthtime=new Date(0),this.dev=0,this.ino=0,this.mode=wD.DEFAULT_MODE,this.nlink=1,this.rdev=0,this.blocks=1}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&TT.S_IFMT)===TT.S_IFDIR}isFIFO(){return!1}isFile(){return(this.mode&TT.S_IFMT)===TT.S_IFREG}isSocket(){return!1}isSymbolicLink(){return(this.mode&TT.S_IFMT)===TT.S_IFLNK}};wD.StatEntry=ktt;var Gtt=class{constructor(){this.uid=BigInt(0),this.gid=BigInt(0),this.size=BigInt(0),this.blksize=BigInt(0),this.atimeMs=BigInt(0),this.mtimeMs=BigInt(0),this.ctimeMs=BigInt(0),this.birthtimeMs=BigInt(0),this.atimeNs=BigInt(0),this.mtimeNs=BigInt(0),this.ctimeNs=BigInt(0),this.birthtimeNs=BigInt(0),this.atime=new Date(0),this.mtime=new Date(0),this.ctime=new Date(0),this.birthtime=new Date(0),this.dev=BigInt(0),this.ino=BigInt(0),this.mode=BigInt(wD.DEFAULT_MODE),this.nlink=BigInt(1),this.rdev=BigInt(0),this.blocks=BigInt(1)}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&BigInt(TT.S_IFMT))===BigInt(TT.S_IFDIR)}isFIFO(){return!1}isFile(){return(this.mode&BigInt(TT.S_IFMT))===BigInt(TT.S_IFREG)}isSocket(){return!1}isSymbolicLink(){return(this.mode&BigInt(TT.S_IFMT))===BigInt(TT.S_IFLNK)}};wD.BigIntStatsEntry=Gtt;function K6r(){return new ktt}function WEs(){return j6r(K6r())}function j6r(e){for(let t in e)if(Object.hasOwn(e,t)){let r=e[t];typeof r=="number"?e[t]=0:typeof r=="bigint"?e[t]=BigInt(0):U6r.types.isDate(r)&&(e[t]=new Date(0))}return e}function PEs(e){let t=new Gtt;for(let r in e)if(Object.hasOwn(e,r)){let s=e[r];typeof s=="number"?t[r]=BigInt(s):U6r.types.isDate(s)&&(t[r]=new Date(s))}return t.atimeNs=t.atimeMs*BigInt(1e6),t.mtimeNs=t.mtimeMs*BigInt(1e6),t.ctimeNs=t.ctimeMs*BigInt(1e6),t.birthtimeNs=t.birthtimeMs*BigInt(1e6),t}function OEs(e,t){if(e.atimeMs!==t.atimeMs||e.birthtimeMs!==t.birthtimeMs||e.blksize!==t.blksize||e.blocks!==t.blocks||e.ctimeMs!==t.ctimeMs||e.dev!==t.dev||e.gid!==t.gid||e.ino!==t.ino||e.isBlockDevice()!==t.isBlockDevice()||e.isCharacterDevice()!==t.isCharacterDevice()||e.isDirectory()!==t.isDirectory()||e.isFIFO()!==t.isFIFO()||e.isFile()!==t.isFile()||e.isSocket()!==t.isSocket()||e.isSymbolicLink()!==t.isSymbolicLink()||e.mode!==t.mode||e.mtimeMs!==t.mtimeMs||e.nlink!==t.nlink||e.rdev!==t.rdev||e.size!==t.size||e.uid!==t.uid)return!1;let r=e,s=t;return!(r.atimeNs!==s.atimeNs||r.mtimeNs!==s.mtimeNs||r.ctimeNs!==s.ctimeNs||r.birthtimeNs!==s.birthtimeNs)}});var BL=z(iB=>{"use strict";Object.defineProperty(iB,"__esModule",{value:!0});iB.ppath=iB.npath=iB.Filename=iB.PortablePath=void 0;iB.convertPath=KEs;var QEs=(Oa(),Ai(Pa)),Ftt=QEs.__importDefault(xt("path")),z6r;(function(e){e[e.File=0]="File",e[e.Portable=1]="Portable",e[e.Native=2]="Native"})(z6r||(z6r={}));iB.PortablePath={root:"/",dot:".",parent:".."};iB.Filename={home:"~",nodeModules:"node_modules",manifest:"package.json",lockfile:"yarn.lock",virtual:"__virtual__",pnpJs:".pnp.js",pnpCjs:".pnp.cjs",pnpData:".pnp.data.json",pnpEsmLoader:".pnp.loader.mjs",rc:".yarnrc.yml",env:".env"};iB.npath=Object.create(Ftt.default);iB.ppath=Object.create(Ftt.default.posix);iB.npath.cwd=()=>process.cwd();iB.ppath.cwd=process.platform==="win32"?()=>LQt(process.cwd()):process.cwd;process.platform==="win32"&&(iB.ppath.resolve=(...e)=>e.length>0&&iB.ppath.isAbsolute(e[0])?Ftt.default.posix.resolve(...e):Ftt.default.posix.resolve(iB.ppath.cwd(),...e));var q6r=function(e,t,r){return t=e.normalize(t),r=e.normalize(r),t===r?".":(t.endsWith(e.sep)||(t=t+e.sep),r.startsWith(t)?r.slice(t.length):null)};iB.npath.contains=(e,t)=>q6r(iB.npath,e,t);iB.ppath.contains=(e,t)=>q6r(iB.ppath,e,t);var MEs=/^([a-zA-Z]:.*)$/,HEs=/^\/\/(\.\/)?(.*)$/,YEs=/^\/([a-zA-Z]:.*)$/,XEs=/^\/unc\/(\.dot\/)?(.*)$/;function JEs(e){let t,r;if(t=e.match(YEs))e=t[1];else if(r=e.match(XEs))e=`\\\\${r[1]?".\\":""}${r[2]}`;else return e;return e.replace(/\//g,"\\")}function UEs(e){e=e.replace(/\\/g,"/");let t,r;return(t=e.match(MEs))?e=`/${t[1]}`:(r=e.match(HEs))&&(e=`/unc/${r[1]?".dot/":""}${r[2]}`),e}var LQt=process.platform==="win32"?UEs:e=>e,$6r=process.platform==="win32"?JEs:e=>e;iB.npath.fromPortablePath=$6r;iB.npath.toPortablePath=LQt;function KEs(e,t){return e===iB.npath?$6r(t):LQt(t)}});var WQt=z(Ztt=>{"use strict";Object.defineProperty(Ztt,"__esModule",{value:!0});Ztt.setupCopyIndex=e1s;Ztt.copyPromise=t1s;var jEs=(Oa(),Ai(Pa)),zEs=jEs.__importStar(Dtt()),qEs=BL(),Oge=new Date(zEs.SAFE_TIME*1e3),$Es=Oge.getTime();async function e1s(e,t){let r="0123456789abcdef";await e.mkdirPromise(t.indexPath,{recursive:!0});let s=[];for(let a of r)for(let o of r)s.push(e.mkdirPromise(e.pathUtils.join(t.indexPath,`${a}${o}`),{recursive:!0}));return await Promise.all(s),t.indexPath}async function t1s(e,t,r,s,a){let o=e.pathUtils.normalize(t),g=r.pathUtils.normalize(s),p=[],f=[],{atime:m,mtime:y}=a.stableTime?{atime:Oge,mtime:Oge}:await r.lstatPromise(g);await e.mkdirpPromise(e.pathUtils.dirname(t),{utimes:[m,y]}),await VQt(p,f,e,o,r,g,{...a,didParentExist:!0});for(let B of p)await B();await Promise.all(f.map(B=>B()))}async function VQt(e,t,r,s,a,o,g){let p=g.didParentExist?await e7r(r,s):null,f=await a.lstatPromise(o),{atime:m,mtime:y}=g.stableTime?{atime:Oge,mtime:Oge}:f,B;switch(!0){case f.isDirectory():B=await r1s(e,t,r,s,p,a,o,f,g);break;case f.isFile():B=await s1s(e,t,r,s,p,a,o,f,g);break;case f.isSymbolicLink():B=await o1s(e,t,r,s,p,a,o,f,g);break;default:throw new Error(`Unsupported file type (${f.mode})`)}return(g.linkStrategy?.type!=="HardlinkFromIndex"||!f.isFile())&&((B||p?.mtime?.getTime()!==y.getTime()||p?.atime?.getTime()!==m.getTime())&&(t.push(()=>r.lutimesPromise(s,m,y)),B=!0),(p===null||(p.mode&511)!==(f.mode&511))&&(t.push(()=>r.chmodPromise(s,f.mode&511)),B=!0)),B}async function e7r(e,t){try{return await e.lstatPromise(t)}catch{return null}}async function r1s(e,t,r,s,a,o,g,p,f){if(a!==null&&!a.isDirectory())if(f.overwrite)e.push(async()=>r.removePromise(s)),a=null;else return!1;let m=!1;a===null&&(e.push(async()=>{try{await r.mkdirPromise(s,{mode:p.mode})}catch(v){if(v.code!=="EEXIST")throw v}}),m=!0);let y=await o.readdirPromise(g),B=f.didParentExist&&!a?{...f,didParentExist:!1}:f;if(f.stableSort)for(let v of y.sort())await VQt(e,t,r,r.pathUtils.join(s,v),o,o.pathUtils.join(g,v),B)&&(m=!0);else(await Promise.all(y.map(async k=>{await VQt(e,t,r,r.pathUtils.join(s,k),o,o.pathUtils.join(g,k),B)}))).some(k=>k)&&(m=!0);return m}async function n1s(e,t,r,s,a,o,g,p,f,m){let y=await o.checksumFilePromise(g,{algorithm:"sha1"}),B=420,v=p.mode&511,k=`${y}${v!==B?v.toString(8):""}`,T=r.pathUtils.join(m.indexPath,y.slice(0,2),`${k}.dat`),O;(function(ge){ge[ge.Lock=0]="Lock",ge[ge.Rename=1]="Rename"})(O||(O={}));let X=O.Rename,U=await e7r(r,T);if(a){let ge=U&&a.dev===U.dev&&a.ino===U.ino,fe=U?.mtimeMs!==$Es;if(ge&&fe&&m.autoRepair&&(X=O.Lock,U=null),!ge)if(f.overwrite)e.push(async()=>r.removePromise(s)),a=null;else return!1}let le=!U&&X===O.Rename?`${T}.${Math.floor(Math.random()*4294967296).toString(16).padStart(8,"0")}`:null,ae=!1;return e.push(async()=>{if(!U&&(X===O.Lock&&await r.lockPromise(T,async()=>{let ge=await o.readFilePromise(g);await r.writeFilePromise(T,ge)}),X===O.Rename&&le)){let ge=await o.readFilePromise(g);await r.writeFilePromise(le,ge);try{await r.linkPromise(le,T)}catch(fe){if(fe.code==="EEXIST")ae=!0,await r.unlinkPromise(le);else throw fe}}a||await r.linkPromise(T,s)}),t.push(async()=>{U||(await r.lutimesPromise(T,Oge,Oge),v!==B&&await r.chmodPromise(T,v)),le&&!ae&&await r.unlinkPromise(le)}),!1}async function i1s(e,t,r,s,a,o,g,p,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(s)),a=null;else return!1;return e.push(async()=>{let m=await o.readFilePromise(g);await r.writeFilePromise(s,m)}),!0}async function s1s(e,t,r,s,a,o,g,p,f){return f.linkStrategy?.type==="HardlinkFromIndex"?n1s(e,t,r,s,a,o,g,p,f,f.linkStrategy):i1s(e,t,r,s,a,o,g,p,f)}async function o1s(e,t,r,s,a,o,g,p,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(s)),a=null;else return!1;return e.push(async()=>{await r.symlinkPromise((0,qEs.convertPath)(r.pathUtils,await o.readlinkPromise(g)),s)}),!0}});var t7r=z(zLe=>{"use strict";Object.defineProperty(zLe,"__esModule",{value:!0});zLe.CustomDir=void 0;zLe.opendir=l1s;var a1s=(Oa(),Ai(Pa)),c1s=a1s.__importStar(xtt()),Ltt=class{constructor(t,r,s={}){this.path=t,this.nextDirent=r,this.opts=s,this.closed=!1}throwIfClosed(){if(this.closed)throw c1s.ERR_DIR_CLOSED()}async*[Symbol.asyncIterator](){try{let t;for(;(t=await this.read())!==null;)yield t}finally{await this.close()}}read(t){let r=this.readSync();return typeof t<"u"?t(null,r):Promise.resolve(r)}readSync(){return this.throwIfClosed(),this.nextDirent()}close(t){return this.closeSync(),typeof t<"u"?t(null):Promise.resolve()}closeSync(){this.throwIfClosed(),this.opts.onClose?.(),this.closed=!0}};zLe.CustomDir=Ltt;function l1s(e,t,r,s){let a=()=>{let o=r.shift();if(typeof o>"u")return null;let g=e.pathUtils.join(t,o);return Object.assign(e.statSync(g),{name:o,path:void 0})};return new Ltt(t,a,s)}});var r7r=z(tj=>{"use strict";Object.defineProperty(tj,"__esModule",{value:!0});tj.CustomStatWatcher=tj.Status=tj.Event=void 0;tj.assertStatus=PQt;var u1s=(Oa(),Ai(Pa)),g1s=xt("events"),Vtt=u1s.__importStar(ZQt()),Qge;(function(e){e.Change="change",e.Stop="stop"})(Qge||(tj.Event=Qge={}));var Mge;(function(e){e.Ready="ready",e.Running="running",e.Stopped="stopped"})(Mge||(tj.Status=Mge={}));function PQt(e,t){if(e!==t)throw new Error(`Invalid StatWatcher status: expected '${t}', got '${e}'`)}var OQt=class e extends g1s.EventEmitter{static create(t,r,s){let a=new e(t,r,s);return a.start(),a}constructor(t,r,{bigint:s=!1}={}){super(),this.status=Mge.Ready,this.changeListeners=new Map,this.startTimeout=null,this.fakeFs=t,this.path=r,this.bigint=s,this.lastStats=this.stat()}start(){PQt(this.status,Mge.Ready),this.status=Mge.Running,this.startTimeout=setTimeout(()=>{this.startTimeout=null,this.fakeFs.existsSync(this.path)||this.emit(Qge.Change,this.lastStats,this.lastStats)},3)}stop(){PQt(this.status,Mge.Running),this.status=Mge.Stopped,this.startTimeout!==null&&(clearTimeout(this.startTimeout),this.startTimeout=null),this.emit(Qge.Stop)}stat(){try{return this.fakeFs.statSync(this.path,{bigint:this.bigint})}catch{let r=this.bigint?new Vtt.BigIntStatsEntry:new Vtt.StatEntry;return Vtt.clearStats(r)}}makeInterval(t){let r=setInterval(()=>{let s=this.stat(),a=this.lastStats;Vtt.areStatsEqual(s,a)||(this.lastStats=s,this.emit(Qge.Change,s,a))},t.interval);return t.persistent?r:r.unref()}registerChangeListener(t,r){this.addListener(Qge.Change,t),this.changeListeners.set(t,this.makeInterval(r))}unregisterChangeListener(t){this.removeListener(Qge.Change,t);let r=this.changeListeners.get(t);typeof r<"u"&&clearInterval(r),this.changeListeners.delete(t)}unregisterAllChangeListeners(){for(let t of this.changeListeners.keys())this.unregisterChangeListener(t)}hasChangeListeners(){return this.changeListeners.size>0}ref(){for(let t of this.changeListeners.values())t.ref();return this}unref(){for(let t of this.changeListeners.values())t.unref();return this}};tj.CustomStatWatcher=OQt});var QQt=z(qLe=>{"use strict";Object.defineProperty(qLe,"__esModule",{value:!0});qLe.watchFile=d1s;qLe.unwatchFile=n7r;qLe.unwatchAllFiles=p1s;var A1s=r7r(),Wtt=new WeakMap;function d1s(e,t,r,s){let a,o,g,p;switch(typeof r){case"function":a=!1,o=!0,g=5007,p=r;break;default:({bigint:a=!1,persistent:o=!0,interval:g=5007}=r),p=s;break}let f=Wtt.get(e);typeof f>"u"&&Wtt.set(e,f=new Map);let m=f.get(t);return typeof m>"u"&&(m=A1s.CustomStatWatcher.create(e,t,{bigint:a}),f.set(t,m)),m.registerChangeListener(p,{persistent:o,interval:g}),m}function n7r(e,t,r){let s=Wtt.get(e);if(typeof s>"u")return;let a=s.get(t);typeof a>"u"||(typeof r>"u"?a.unregisterAllChangeListeners():a.unregisterChangeListener(r),a.hasChangeListeners()||(a.stop(),s.delete(t)))}function p1s(e){let t=Wtt.get(e);if(!(typeof t>"u"))for(let r of t.keys())n7r(e,r)}});var Yge=z(Hge=>{"use strict";Object.defineProperty(Hge,"__esModule",{value:!0});Hge.BasePortableFakeFS=Hge.FakeFS=void 0;Hge.normalizeLineEndings=HQt;var f1s=xt("crypto"),I1s=xt("os"),C1s=WQt(),i7r=BL(),Ptt=class{constructor(t){this.pathUtils=t}async*genTraversePromise(t,{stableSort:r=!1}={}){let s=[t];for(;s.length>0;){let a=s.shift();if((await this.lstatPromise(a)).isDirectory()){let g=await this.readdirPromise(a);if(r)for(let p of g.sort())s.push(this.pathUtils.join(a,p));else throw new Error("Not supported")}else yield a}}async checksumFilePromise(t,{algorithm:r="sha512"}={}){let s=await this.openPromise(t,"r");try{let o=Buffer.allocUnsafeSlow(65536),g=(0,f1s.createHash)(r),p=0;for(;(p=await this.readPromise(s,o,0,65536))!==0;)g.update(p===65536?o:o.slice(0,p));return g.digest("hex")}finally{await this.closePromise(s)}}async removePromise(t,{recursive:r=!0,maxRetries:s=5}={}){let a;try{a=await this.lstatPromise(t)}catch(o){if(o.code==="ENOENT")return;throw o}if(a.isDirectory()){if(r){let o=await this.readdirPromise(t);await Promise.all(o.map(g=>this.removePromise(this.pathUtils.resolve(t,g))))}for(let o=0;o<=s;o++)try{await this.rmdirPromise(t);break}catch(g){if(g.code!=="EBUSY"&&g.code!=="ENOTEMPTY")throw g;osetTimeout(p,o*100))}}else await this.unlinkPromise(t)}removeSync(t,{recursive:r=!0}={}){let s;try{s=this.lstatSync(t)}catch(a){if(a.code==="ENOENT")return;throw a}if(s.isDirectory()){if(r)for(let a of this.readdirSync(t))this.removeSync(this.pathUtils.resolve(t,a));this.rmdirSync(t)}else this.unlinkSync(t)}async mkdirpPromise(t,{chmod:r,utimes:s}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let g=2;g<=a.length;++g){let p=a.slice(0,g).join(this.pathUtils.sep);if(!this.existsSync(p)){try{await this.mkdirPromise(p)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=p,r!=null&&await this.chmodPromise(p,r),s!=null)await this.utimesPromise(p,s[0],s[1]);else{let f=await this.statPromise(this.pathUtils.dirname(p));await this.utimesPromise(p,f.atime,f.mtime)}}}return o}mkdirpSync(t,{chmod:r,utimes:s}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let g=2;g<=a.length;++g){let p=a.slice(0,g).join(this.pathUtils.sep);if(!this.existsSync(p)){try{this.mkdirSync(p)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=p,r!=null&&this.chmodSync(p,r),s!=null)this.utimesSync(p,s[0],s[1]);else{let f=this.statSync(this.pathUtils.dirname(p));this.utimesSync(p,f.atime,f.mtime)}}}return o}async copyPromise(t,r,{baseFs:s=this,overwrite:a=!0,stableSort:o=!1,stableTime:g=!1,linkStrategy:p=null}={}){return await(0,C1s.copyPromise)(this,t,s,r,{overwrite:a,stableSort:o,stableTime:g,linkStrategy:p})}copySync(t,r,{baseFs:s=this,overwrite:a=!0}={}){let o=s.lstatSync(r),g=this.existsSync(t);if(o.isDirectory()){this.mkdirpSync(t);let f=s.readdirSync(r);for(let m of f)this.copySync(this.pathUtils.join(t,m),s.pathUtils.join(r,m),{baseFs:s,overwrite:a})}else if(o.isFile()){if(!g||a){g&&this.removeSync(t);let f=s.readFileSync(r);this.writeFileSync(t,f)}}else if(o.isSymbolicLink()){if(!g||a){g&&this.removeSync(t);let f=s.readlinkSync(r);this.symlinkSync((0,i7r.convertPath)(this.pathUtils,f),t)}}else throw new Error(`Unsupported file type (file: ${r}, mode: 0o${o.mode.toString(8).padStart(6,"0")})`);let p=o.mode&511;this.chmodSync(t,p)}async changeFilePromise(t,r,s={}){return Buffer.isBuffer(r)?this.changeFileBufferPromise(t,r,s):this.changeFileTextPromise(t,r,s)}async changeFileBufferPromise(t,r,{mode:s}={}){let a=Buffer.alloc(0);try{a=await this.readFilePromise(t)}catch{}Buffer.compare(a,r)!==0&&await this.writeFilePromise(t,r,{mode:s})}async changeFileTextPromise(t,r,{automaticNewlines:s,mode:a}={}){let o="";try{o=await this.readFilePromise(t,"utf8")}catch{}let g=s?HQt(o,r):r;o!==g&&await this.writeFilePromise(t,g,{mode:a})}changeFileSync(t,r,s={}){return Buffer.isBuffer(r)?this.changeFileBufferSync(t,r,s):this.changeFileTextSync(t,r,s)}changeFileBufferSync(t,r,{mode:s}={}){let a=Buffer.alloc(0);try{a=this.readFileSync(t)}catch{}Buffer.compare(a,r)!==0&&this.writeFileSync(t,r,{mode:s})}changeFileTextSync(t,r,{automaticNewlines:s=!1,mode:a}={}){let o="";try{o=this.readFileSync(t,"utf8")}catch{}let g=s?HQt(o,r):r;o!==g&&this.writeFileSync(t,g,{mode:a})}async movePromise(t,r){try{await this.renamePromise(t,r)}catch(s){if(s.code==="EXDEV")await this.copyPromise(r,t),await this.removePromise(t);else throw s}}moveSync(t,r){try{this.renameSync(t,r)}catch(s){if(s.code==="EXDEV")this.copySync(r,t),this.removeSync(t);else throw s}}async lockPromise(t,r){let s=`${t}.flock`,a=1e3/60,o=Date.now(),g=null,p=async()=>{let f;try{[f]=await this.readJsonPromise(s)}catch{return Date.now()-o<500}try{return process.kill(f,0),!0}catch{return!1}};for(;g===null;)try{g=await this.openPromise(s,"wx")}catch(f){if(f.code==="EEXIST"){if(!await p())try{await this.unlinkPromise(s);continue}catch{}if(Date.now()-o<60*1e3)await new Promise(m=>setTimeout(m,a));else throw new Error(`Couldn't acquire a lock in a reasonable time (via ${s})`)}else throw f}await this.writePromise(g,JSON.stringify([process.pid]));try{return await r()}finally{try{await this.closePromise(g),await this.unlinkPromise(s)}catch{}}}async readJsonPromise(t){let r=await this.readFilePromise(t,"utf8");try{return JSON.parse(r)}catch(s){throw s.message+=` (in ${t})`,s}}readJsonSync(t){let r=this.readFileSync(t,"utf8");try{return JSON.parse(r)}catch(s){throw s.message+=` (in ${t})`,s}}async writeJsonPromise(t,r,{compact:s=!1}={}){let a=s?0:2;return await this.writeFilePromise(t,`${JSON.stringify(r,null,a)} `)}writeJsonSync(t,r,{compact:s=!1}={}){let a=s?0:2;return this.writeFileSync(t,`${JSON.stringify(r,null,a)} -`)}async preserveTimePromise(t,r){let s=await this.lstatPromise(t),a=await r();typeof a<"u"&&(t=a),await this.lutimesPromise(t,s.atime,s.mtime)}async preserveTimeSync(t,r){let s=this.lstatSync(t),a=r();typeof a<"u"&&(t=a),this.lutimesSync(t,s.atime,s.mtime)}};Fge.FakeFS=Vtt;var PMt=class extends Vtt{constructor(){super(q6r.ppath)}};Fge.BasePortableFakeFS=PMt;function g1s(e){let t=e.match(/\r?\n/g);if(t===null)return l1s.EOL;let r=t.filter(a=>a===`\r +`)}async preserveTimePromise(t,r){let s=await this.lstatPromise(t),a=await r();typeof a<"u"&&(t=a),await this.lutimesPromise(t,s.atime,s.mtime)}async preserveTimeSync(t,r){let s=this.lstatSync(t),a=r();typeof a<"u"&&(t=a),this.lutimesSync(t,s.atime,s.mtime)}};Hge.FakeFS=Ptt;var MQt=class extends Ptt{constructor(){super(i7r.ppath)}};Hge.BasePortableFakeFS=MQt;function m1s(e){let t=e.match(/\r?\n/g);if(t===null)return I1s.EOL;let r=t.filter(a=>a===`\r `).length,s=t.length-r;return r>s?`\r `:` -`}function OMt(e,t){return t.replace(/\r?\n/g,g1s(e))}});var j7=z(Wtt=>{"use strict";Object.defineProperty(Wtt,"__esModule",{value:!0});Wtt.ProxiedFS=void 0;var A1s=Zge(),MMt=class extends A1s.FakeFS{getExtractHint(t){return this.baseFs.getExtractHint(t)}resolve(t){return this.mapFromBase(this.baseFs.resolve(this.mapToBase(t)))}getRealPath(){return this.mapFromBase(this.baseFs.getRealPath())}async openPromise(t,r,s){return this.baseFs.openPromise(this.mapToBase(t),r,s)}openSync(t,r,s){return this.baseFs.openSync(this.mapToBase(t),r,s)}async opendirPromise(t,r){return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(t),r),{path:t})}opendirSync(t,r){return Object.assign(this.baseFs.opendirSync(this.mapToBase(t),r),{path:t})}async readPromise(t,r,s,a,o){return await this.baseFs.readPromise(t,r,s,a,o)}readSync(t,r,s,a,o){return this.baseFs.readSync(t,r,s,a,o)}async writePromise(t,r,s,a,o){return typeof r=="string"?await this.baseFs.writePromise(t,r,s):await this.baseFs.writePromise(t,r,s,a,o)}writeSync(t,r,s,a,o){return typeof r=="string"?this.baseFs.writeSync(t,r,s):this.baseFs.writeSync(t,r,s,a,o)}async closePromise(t){return this.baseFs.closePromise(t)}closeSync(t){this.baseFs.closeSync(t)}createReadStream(t,r){return this.baseFs.createReadStream(t!==null?this.mapToBase(t):t,r)}createWriteStream(t,r){return this.baseFs.createWriteStream(t!==null?this.mapToBase(t):t,r)}async realpathPromise(t){return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(t)))}realpathSync(t){return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(t)))}async existsPromise(t){return this.baseFs.existsPromise(this.mapToBase(t))}existsSync(t){return this.baseFs.existsSync(this.mapToBase(t))}accessSync(t,r){return this.baseFs.accessSync(this.mapToBase(t),r)}async accessPromise(t,r){return this.baseFs.accessPromise(this.mapToBase(t),r)}async statPromise(t,r){return this.baseFs.statPromise(this.mapToBase(t),r)}statSync(t,r){return this.baseFs.statSync(this.mapToBase(t),r)}async fstatPromise(t,r){return this.baseFs.fstatPromise(t,r)}fstatSync(t,r){return this.baseFs.fstatSync(t,r)}lstatPromise(t,r){return this.baseFs.lstatPromise(this.mapToBase(t),r)}lstatSync(t,r){return this.baseFs.lstatSync(this.mapToBase(t),r)}async fchmodPromise(t,r){return this.baseFs.fchmodPromise(t,r)}fchmodSync(t,r){return this.baseFs.fchmodSync(t,r)}async chmodPromise(t,r){return this.baseFs.chmodPromise(this.mapToBase(t),r)}chmodSync(t,r){return this.baseFs.chmodSync(this.mapToBase(t),r)}async fchownPromise(t,r,s){return this.baseFs.fchownPromise(t,r,s)}fchownSync(t,r,s){return this.baseFs.fchownSync(t,r,s)}async chownPromise(t,r,s){return this.baseFs.chownPromise(this.mapToBase(t),r,s)}chownSync(t,r,s){return this.baseFs.chownSync(this.mapToBase(t),r,s)}async renamePromise(t,r){return this.baseFs.renamePromise(this.mapToBase(t),this.mapToBase(r))}renameSync(t,r){return this.baseFs.renameSync(this.mapToBase(t),this.mapToBase(r))}async copyFilePromise(t,r,s=0){return this.baseFs.copyFilePromise(this.mapToBase(t),this.mapToBase(r),s)}copyFileSync(t,r,s=0){return this.baseFs.copyFileSync(this.mapToBase(t),this.mapToBase(r),s)}async appendFilePromise(t,r,s){return this.baseFs.appendFilePromise(this.fsMapToBase(t),r,s)}appendFileSync(t,r,s){return this.baseFs.appendFileSync(this.fsMapToBase(t),r,s)}async writeFilePromise(t,r,s){return this.baseFs.writeFilePromise(this.fsMapToBase(t),r,s)}writeFileSync(t,r,s){return this.baseFs.writeFileSync(this.fsMapToBase(t),r,s)}async unlinkPromise(t){return this.baseFs.unlinkPromise(this.mapToBase(t))}unlinkSync(t){return this.baseFs.unlinkSync(this.mapToBase(t))}async utimesPromise(t,r,s){return this.baseFs.utimesPromise(this.mapToBase(t),r,s)}utimesSync(t,r,s){return this.baseFs.utimesSync(this.mapToBase(t),r,s)}async lutimesPromise(t,r,s){return this.baseFs.lutimesPromise(this.mapToBase(t),r,s)}lutimesSync(t,r,s){return this.baseFs.lutimesSync(this.mapToBase(t),r,s)}async mkdirPromise(t,r){return this.baseFs.mkdirPromise(this.mapToBase(t),r)}mkdirSync(t,r){return this.baseFs.mkdirSync(this.mapToBase(t),r)}async rmdirPromise(t,r){return this.baseFs.rmdirPromise(this.mapToBase(t),r)}rmdirSync(t,r){return this.baseFs.rmdirSync(this.mapToBase(t),r)}async rmPromise(t,r){return this.baseFs.rmPromise(this.mapToBase(t),r)}rmSync(t,r){return this.baseFs.rmSync(this.mapToBase(t),r)}async linkPromise(t,r){return this.baseFs.linkPromise(this.mapToBase(t),this.mapToBase(r))}linkSync(t,r){return this.baseFs.linkSync(this.mapToBase(t),this.mapToBase(r))}async symlinkPromise(t,r,s){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkPromise(this.mapToBase(t),a,s);let o=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),g=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),o);return this.baseFs.symlinkPromise(g,a,s)}symlinkSync(t,r,s){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkSync(this.mapToBase(t),a,s);let o=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),g=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),o);return this.baseFs.symlinkSync(g,a,s)}async readFilePromise(t,r){return this.baseFs.readFilePromise(this.fsMapToBase(t),r)}readFileSync(t,r){return this.baseFs.readFileSync(this.fsMapToBase(t),r)}readdirPromise(t,r){return this.baseFs.readdirPromise(this.mapToBase(t),r)}readdirSync(t,r){return this.baseFs.readdirSync(this.mapToBase(t),r)}async readlinkPromise(t){return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(t)))}readlinkSync(t){return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(t)))}async truncatePromise(t,r){return this.baseFs.truncatePromise(this.mapToBase(t),r)}truncateSync(t,r){return this.baseFs.truncateSync(this.mapToBase(t),r)}async ftruncatePromise(t,r){return this.baseFs.ftruncatePromise(t,r)}ftruncateSync(t,r){return this.baseFs.ftruncateSync(t,r)}watch(t,r,s){return this.baseFs.watch(this.mapToBase(t),r,s)}watchFile(t,r,s){return this.baseFs.watchFile(this.mapToBase(t),r,s)}unwatchFile(t,r){return this.baseFs.unwatchFile(this.mapToBase(t),r)}fsMapToBase(t){return typeof t=="number"?t:this.mapToBase(t)}};Wtt.ProxiedFS=MMt});var $6r=z(Ptt=>{"use strict";Object.defineProperty(Ptt,"__esModule",{value:!0});Ptt.AliasFS=void 0;var d1s=j7(),QMt=class extends d1s.ProxiedFS{constructor(t,{baseFs:r,pathUtils:s}){super(s),this.target=t,this.baseFs=r}getRealPath(){return this.target}getBaseFs(){return this.baseFs}mapFromBase(t){return t}mapToBase(t){return t}};Ptt.AliasFS=QMt});var Lge=z(Ott=>{"use strict";Object.defineProperty(Ott,"__esModule",{value:!0});Ott.NodeFS=void 0;var p1s=(Ma(),Ai(Oa)),f1s=p1s.__importDefault(Dt("fs")),I1s=Zge(),uu=EL();function e7r(e){let t=e;return typeof e.path=="string"&&(t.path=uu.npath.toPortablePath(e.path)),t}var YMt=class extends I1s.BasePortableFakeFS{constructor(t=f1s.default){super(),this.realFs=t}getExtractHint(){return!1}getRealPath(){return uu.PortablePath.root}resolve(t){return uu.ppath.resolve(t)}async openPromise(t,r,s){return await new Promise((a,o)=>{this.realFs.open(uu.npath.fromPortablePath(t),r,s,this.makeCallback(a,o))})}openSync(t,r,s){return this.realFs.openSync(uu.npath.fromPortablePath(t),r,s)}async opendirPromise(t,r){return await new Promise((s,a)=>{typeof r<"u"?this.realFs.opendir(uu.npath.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.opendir(uu.npath.fromPortablePath(t),this.makeCallback(s,a))}).then(s=>{let a=s;return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a})}opendirSync(t,r){let a=typeof r<"u"?this.realFs.opendirSync(uu.npath.fromPortablePath(t),r):this.realFs.opendirSync(uu.npath.fromPortablePath(t));return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a}async readPromise(t,r,s=0,a=0,o=-1){return await new Promise((g,p)=>{this.realFs.read(t,r,s,a,o,(f,m)=>{f?p(f):g(m)})})}readSync(t,r,s,a,o){return this.realFs.readSync(t,r,s,a,o)}async writePromise(t,r,s,a,o){return await new Promise((g,p)=>typeof r=="string"?this.realFs.write(t,r,s,this.makeCallback(g,p)):this.realFs.write(t,r,s,a,o,this.makeCallback(g,p)))}writeSync(t,r,s,a,o){return typeof r=="string"?this.realFs.writeSync(t,r,s):this.realFs.writeSync(t,r,s,a,o)}async closePromise(t){await new Promise((r,s)=>{this.realFs.close(t,this.makeCallback(r,s))})}closeSync(t){this.realFs.closeSync(t)}createReadStream(t,r){let s=t!==null?uu.npath.fromPortablePath(t):t;return this.realFs.createReadStream(s,r)}createWriteStream(t,r){let s=t!==null?uu.npath.fromPortablePath(t):t;return this.realFs.createWriteStream(s,r)}async realpathPromise(t){return await new Promise((r,s)=>{this.realFs.realpath(uu.npath.fromPortablePath(t),{},this.makeCallback(r,s))}).then(r=>uu.npath.toPortablePath(r))}realpathSync(t){return uu.npath.toPortablePath(this.realFs.realpathSync(uu.npath.fromPortablePath(t),{}))}async existsPromise(t){return await new Promise(r=>{this.realFs.exists(uu.npath.fromPortablePath(t),r)})}accessSync(t,r){return this.realFs.accessSync(uu.npath.fromPortablePath(t),r)}async accessPromise(t,r){return await new Promise((s,a)=>{this.realFs.access(uu.npath.fromPortablePath(t),r,this.makeCallback(s,a))})}existsSync(t){return this.realFs.existsSync(uu.npath.fromPortablePath(t))}async statPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.stat(uu.npath.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.stat(uu.npath.fromPortablePath(t),this.makeCallback(s,a))})}statSync(t,r){return r?this.realFs.statSync(uu.npath.fromPortablePath(t),r):this.realFs.statSync(uu.npath.fromPortablePath(t))}async fstatPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.fstat(t,r,this.makeCallback(s,a)):this.realFs.fstat(t,this.makeCallback(s,a))})}fstatSync(t,r){return r?this.realFs.fstatSync(t,r):this.realFs.fstatSync(t)}async lstatPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.lstat(uu.npath.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.lstat(uu.npath.fromPortablePath(t),this.makeCallback(s,a))})}lstatSync(t,r){return r?this.realFs.lstatSync(uu.npath.fromPortablePath(t),r):this.realFs.lstatSync(uu.npath.fromPortablePath(t))}async fchmodPromise(t,r){return await new Promise((s,a)=>{this.realFs.fchmod(t,r,this.makeCallback(s,a))})}fchmodSync(t,r){return this.realFs.fchmodSync(t,r)}async chmodPromise(t,r){return await new Promise((s,a)=>{this.realFs.chmod(uu.npath.fromPortablePath(t),r,this.makeCallback(s,a))})}chmodSync(t,r){return this.realFs.chmodSync(uu.npath.fromPortablePath(t),r)}async fchownPromise(t,r,s){return await new Promise((a,o)=>{this.realFs.fchown(t,r,s,this.makeCallback(a,o))})}fchownSync(t,r,s){return this.realFs.fchownSync(t,r,s)}async chownPromise(t,r,s){return await new Promise((a,o)=>{this.realFs.chown(uu.npath.fromPortablePath(t),r,s,this.makeCallback(a,o))})}chownSync(t,r,s){return this.realFs.chownSync(uu.npath.fromPortablePath(t),r,s)}async renamePromise(t,r){return await new Promise((s,a)=>{this.realFs.rename(uu.npath.fromPortablePath(t),uu.npath.fromPortablePath(r),this.makeCallback(s,a))})}renameSync(t,r){return this.realFs.renameSync(uu.npath.fromPortablePath(t),uu.npath.fromPortablePath(r))}async copyFilePromise(t,r,s=0){return await new Promise((a,o)=>{this.realFs.copyFile(uu.npath.fromPortablePath(t),uu.npath.fromPortablePath(r),s,this.makeCallback(a,o))})}copyFileSync(t,r,s=0){return this.realFs.copyFileSync(uu.npath.fromPortablePath(t),uu.npath.fromPortablePath(r),s)}async appendFilePromise(t,r,s){return await new Promise((a,o)=>{let g=typeof t=="string"?uu.npath.fromPortablePath(t):t;s?this.realFs.appendFile(g,r,s,this.makeCallback(a,o)):this.realFs.appendFile(g,r,this.makeCallback(a,o))})}appendFileSync(t,r,s){let a=typeof t=="string"?uu.npath.fromPortablePath(t):t;s?this.realFs.appendFileSync(a,r,s):this.realFs.appendFileSync(a,r)}async writeFilePromise(t,r,s){return await new Promise((a,o)=>{let g=typeof t=="string"?uu.npath.fromPortablePath(t):t;s?this.realFs.writeFile(g,r,s,this.makeCallback(a,o)):this.realFs.writeFile(g,r,this.makeCallback(a,o))})}writeFileSync(t,r,s){let a=typeof t=="string"?uu.npath.fromPortablePath(t):t;s?this.realFs.writeFileSync(a,r,s):this.realFs.writeFileSync(a,r)}async unlinkPromise(t){return await new Promise((r,s)=>{this.realFs.unlink(uu.npath.fromPortablePath(t),this.makeCallback(r,s))})}unlinkSync(t){return this.realFs.unlinkSync(uu.npath.fromPortablePath(t))}async utimesPromise(t,r,s){return await new Promise((a,o)=>{this.realFs.utimes(uu.npath.fromPortablePath(t),r,s,this.makeCallback(a,o))})}utimesSync(t,r,s){this.realFs.utimesSync(uu.npath.fromPortablePath(t),r,s)}async lutimesPromise(t,r,s){return await new Promise((a,o)=>{this.realFs.lutimes(uu.npath.fromPortablePath(t),r,s,this.makeCallback(a,o))})}lutimesSync(t,r,s){this.realFs.lutimesSync(uu.npath.fromPortablePath(t),r,s)}async mkdirPromise(t,r){return await new Promise((s,a)=>{this.realFs.mkdir(uu.npath.fromPortablePath(t),r,this.makeCallback(s,a))})}mkdirSync(t,r){return this.realFs.mkdirSync(uu.npath.fromPortablePath(t),r)}async rmdirPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.rmdir(uu.npath.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.rmdir(uu.npath.fromPortablePath(t),this.makeCallback(s,a))})}rmdirSync(t,r){return this.realFs.rmdirSync(uu.npath.fromPortablePath(t),r)}async rmPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.rm(uu.npath.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.rm(uu.npath.fromPortablePath(t),this.makeCallback(s,a))})}rmSync(t,r){return this.realFs.rmSync(uu.npath.fromPortablePath(t),r)}async linkPromise(t,r){return await new Promise((s,a)=>{this.realFs.link(uu.npath.fromPortablePath(t),uu.npath.fromPortablePath(r),this.makeCallback(s,a))})}linkSync(t,r){return this.realFs.linkSync(uu.npath.fromPortablePath(t),uu.npath.fromPortablePath(r))}async symlinkPromise(t,r,s){return await new Promise((a,o)=>{this.realFs.symlink(uu.npath.fromPortablePath(t.replace(/\/+$/,"")),uu.npath.fromPortablePath(r),s,this.makeCallback(a,o))})}symlinkSync(t,r,s){return this.realFs.symlinkSync(uu.npath.fromPortablePath(t.replace(/\/+$/,"")),uu.npath.fromPortablePath(r),s)}async readFilePromise(t,r){return await new Promise((s,a)=>{let o=typeof t=="string"?uu.npath.fromPortablePath(t):t;this.realFs.readFile(o,r,this.makeCallback(s,a))})}readFileSync(t,r){let s=typeof t=="string"?uu.npath.fromPortablePath(t):t;return this.realFs.readFileSync(s,r)}async readdirPromise(t,r){return await new Promise((s,a)=>{r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdir(uu.npath.fromPortablePath(t),r,this.makeCallback(o=>s(o.map(e7r)),a)):this.realFs.readdir(uu.npath.fromPortablePath(t),r,this.makeCallback(o=>s(o.map(uu.npath.toPortablePath)),a)):this.realFs.readdir(uu.npath.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.readdir(uu.npath.fromPortablePath(t),this.makeCallback(s,a))})}readdirSync(t,r){return r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdirSync(uu.npath.fromPortablePath(t),r).map(e7r):this.realFs.readdirSync(uu.npath.fromPortablePath(t),r).map(uu.npath.toPortablePath):this.realFs.readdirSync(uu.npath.fromPortablePath(t),r):this.realFs.readdirSync(uu.npath.fromPortablePath(t))}async readlinkPromise(t){return await new Promise((r,s)=>{this.realFs.readlink(uu.npath.fromPortablePath(t),this.makeCallback(r,s))}).then(r=>uu.npath.toPortablePath(r))}readlinkSync(t){return uu.npath.toPortablePath(this.realFs.readlinkSync(uu.npath.fromPortablePath(t)))}async truncatePromise(t,r){return await new Promise((s,a)=>{this.realFs.truncate(uu.npath.fromPortablePath(t),r,this.makeCallback(s,a))})}truncateSync(t,r){return this.realFs.truncateSync(uu.npath.fromPortablePath(t),r)}async ftruncatePromise(t,r){return await new Promise((s,a)=>{this.realFs.ftruncate(t,r,this.makeCallback(s,a))})}ftruncateSync(t,r){return this.realFs.ftruncateSync(t,r)}watch(t,r,s){return this.realFs.watch(uu.npath.fromPortablePath(t),r,s)}watchFile(t,r,s){return this.realFs.watchFile(uu.npath.fromPortablePath(t),r,s)}unwatchFile(t,r){return this.realFs.unwatchFile(uu.npath.fromPortablePath(t),r)}makeCallback(t,r){return(s,a)=>{s?r(s):t(a)}}};Ott.NodeFS=YMt});var t7r=z(Mtt=>{"use strict";Object.defineProperty(Mtt,"__esModule",{value:!0});Mtt.CwdFS=void 0;var C1s=Lge(),m1s=j7(),HMt=EL(),XMt=class extends m1s.ProxiedFS{constructor(t,{baseFs:r=new C1s.NodeFS}={}){super(HMt.ppath),this.target=this.pathUtils.normalize(t),this.baseFs=r}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.target)}resolve(t){return this.pathUtils.isAbsolute(t)?HMt.ppath.normalize(t):this.baseFs.resolve(HMt.ppath.join(this.target,t))}mapFromBase(t){return t}mapToBase(t){return this.pathUtils.isAbsolute(t)?t:this.pathUtils.join(this.target,t)}};Mtt.CwdFS=XMt});var n7r=z(Ytt=>{"use strict";Object.defineProperty(Ytt,"__esModule",{value:!0});Ytt.JailFS=void 0;var h1s=Lge(),_1s=j7(),Qtt=EL(),r7r=Qtt.PortablePath.root,JMt=class extends _1s.ProxiedFS{constructor(t,{baseFs:r=new h1s.NodeFS}={}){super(Qtt.ppath),this.target=this.pathUtils.resolve(Qtt.PortablePath.root,t),this.baseFs=r}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.pathUtils.relative(Qtt.PortablePath.root,this.target))}getTarget(){return this.target}getBaseFs(){return this.baseFs}mapToBase(t){let r=this.pathUtils.normalize(t);if(this.pathUtils.isAbsolute(t))return this.pathUtils.resolve(this.target,this.pathUtils.relative(r7r,t));if(r.match(/^\.\.\/?/))throw new Error(`Resolving this path (${t}) would escape the jail`);return this.pathUtils.resolve(this.target,t)}mapFromBase(t){return this.pathUtils.resolve(r7r,this.pathUtils.relative(this.target,t))}};Ytt.JailFS=JMt});var i7r=z(Htt=>{"use strict";Object.defineProperty(Htt,"__esModule",{value:!0});Htt.LazyFS=void 0;var y1s=j7(),UMt=class extends y1s.ProxiedFS{constructor(t,r){super(r),this.instance=null,this.factory=t}get baseFs(){return this.instance||(this.instance=this.factory()),this.instance}set baseFs(t){this.instance=t}mapFromBase(t){return t}mapToBase(t){return t}};Htt.LazyFS=UMt});var s7r=z(Utt=>{"use strict";Object.defineProperty(Utt,"__esModule",{value:!0});Utt.MountFS=void 0;var b1s=(Ma(),Ai(Oa)),Hye=Dt("fs"),E1s=Zge(),B1s=Lge(),Xtt=WMt(),BL=b1s.__importStar(Rtt()),Jtt=EL(),vL=4278190080,KMt=class extends E1s.BasePortableFakeFS{constructor({baseFs:t=new B1s.NodeFS,filter:r=null,magicByte:s=42,maxOpenFiles:a=1/0,useCache:o=!0,maxAge:g=5e3,typeCheck:p=Hye.constants.S_IFREG,getMountPoint:f,factoryPromise:m,factorySync:y}){if(Math.floor(s)!==s||!(s>1&&s<=127))throw new Error("The magic byte must be set to a round value between 1 and 127 included");super(),this.fdMap=new Map,this.nextFd=3,this.isMount=new Set,this.notMount=new Set,this.realPaths=new Map,this.limitOpenFilesTimeout=null,this.baseFs=t,this.mountInstances=o?new Map:null,this.factoryPromise=m,this.factorySync=y,this.filter=r,this.getMountPoint=f,this.magic=s<<24,this.maxAge=g,this.maxOpenFiles=a,this.typeCheck=p}getExtractHint(t){return this.baseFs.getExtractHint(t)}getRealPath(){return this.baseFs.getRealPath()}saveAndClose(){if((0,Xtt.unwatchAllFiles)(this),this.mountInstances)for(let[t,{childFs:r}]of this.mountInstances.entries())r.saveAndClose?.(),this.mountInstances.delete(t)}discardAndClose(){if((0,Xtt.unwatchAllFiles)(this),this.mountInstances)for(let[t,{childFs:r}]of this.mountInstances.entries())r.discardAndClose?.(),this.mountInstances.delete(t)}resolve(t){return this.baseFs.resolve(t)}remapFd(t,r){let s=this.nextFd++|this.magic;return this.fdMap.set(s,[t,r]),s}async openPromise(t,r,s){return await this.makeCallPromise(t,async()=>await this.baseFs.openPromise(t,r,s),async(a,{subPath:o})=>this.remapFd(a,await a.openPromise(o,r,s)))}openSync(t,r,s){return this.makeCallSync(t,()=>this.baseFs.openSync(t,r,s),(a,{subPath:o})=>this.remapFd(a,a.openSync(o,r,s)))}async opendirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.opendirPromise(t,r),async(s,{subPath:a})=>await s.opendirPromise(a,r),{requireSubpath:!1})}opendirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.opendirSync(t,r),(s,{subPath:a})=>s.opendirSync(a,r),{requireSubpath:!1})}async readPromise(t,r,s,a,o){if((t&vL)!==this.magic)return await this.baseFs.readPromise(t,r,s,a,o);let g=this.fdMap.get(t);if(typeof g>"u")throw BL.EBADF("read");let[p,f]=g;return await p.readPromise(f,r,s,a,o)}readSync(t,r,s,a,o){if((t&vL)!==this.magic)return this.baseFs.readSync(t,r,s,a,o);let g=this.fdMap.get(t);if(typeof g>"u")throw BL.EBADF("readSync");let[p,f]=g;return p.readSync(f,r,s,a,o)}async writePromise(t,r,s,a,o){if((t&vL)!==this.magic)return typeof r=="string"?await this.baseFs.writePromise(t,r,s):await this.baseFs.writePromise(t,r,s,a,o);let g=this.fdMap.get(t);if(typeof g>"u")throw BL.EBADF("write");let[p,f]=g;return typeof r=="string"?await p.writePromise(f,r,s):await p.writePromise(f,r,s,a,o)}writeSync(t,r,s,a,o){if((t&vL)!==this.magic)return typeof r=="string"?this.baseFs.writeSync(t,r,s):this.baseFs.writeSync(t,r,s,a,o);let g=this.fdMap.get(t);if(typeof g>"u")throw BL.EBADF("writeSync");let[p,f]=g;return typeof r=="string"?p.writeSync(f,r,s):p.writeSync(f,r,s,a,o)}async closePromise(t){if((t&vL)!==this.magic)return await this.baseFs.closePromise(t);let r=this.fdMap.get(t);if(typeof r>"u")throw BL.EBADF("close");this.fdMap.delete(t);let[s,a]=r;return await s.closePromise(a)}closeSync(t){if((t&vL)!==this.magic)return this.baseFs.closeSync(t);let r=this.fdMap.get(t);if(typeof r>"u")throw BL.EBADF("closeSync");this.fdMap.delete(t);let[s,a]=r;return s.closeSync(a)}createReadStream(t,r){return t===null?this.baseFs.createReadStream(t,r):this.makeCallSync(t,()=>this.baseFs.createReadStream(t,r),(s,{archivePath:a,subPath:o})=>{let g=s.createReadStream(o,r);return g.path=Jtt.npath.fromPortablePath(this.pathUtils.join(a,o)),g})}createWriteStream(t,r){return t===null?this.baseFs.createWriteStream(t,r):this.makeCallSync(t,()=>this.baseFs.createWriteStream(t,r),(s,{subPath:a})=>s.createWriteStream(a,r))}async realpathPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.realpathPromise(t),async(r,{archivePath:s,subPath:a})=>{let o=this.realPaths.get(s);return typeof o>"u"&&(o=await this.baseFs.realpathPromise(s),this.realPaths.set(s,o)),this.pathUtils.join(o,this.pathUtils.relative(Jtt.PortablePath.root,await r.realpathPromise(a)))})}realpathSync(t){return this.makeCallSync(t,()=>this.baseFs.realpathSync(t),(r,{archivePath:s,subPath:a})=>{let o=this.realPaths.get(s);return typeof o>"u"&&(o=this.baseFs.realpathSync(s),this.realPaths.set(s,o)),this.pathUtils.join(o,this.pathUtils.relative(Jtt.PortablePath.root,r.realpathSync(a)))})}async existsPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.existsPromise(t),async(r,{subPath:s})=>await r.existsPromise(s))}existsSync(t){return this.makeCallSync(t,()=>this.baseFs.existsSync(t),(r,{subPath:s})=>r.existsSync(s))}async accessPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.accessPromise(t,r),async(s,{subPath:a})=>await s.accessPromise(a,r))}accessSync(t,r){return this.makeCallSync(t,()=>this.baseFs.accessSync(t,r),(s,{subPath:a})=>s.accessSync(a,r))}async statPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.statPromise(t,r),async(s,{subPath:a})=>await s.statPromise(a,r))}statSync(t,r){return this.makeCallSync(t,()=>this.baseFs.statSync(t,r),(s,{subPath:a})=>s.statSync(a,r))}async fstatPromise(t,r){if((t&vL)!==this.magic)return this.baseFs.fstatPromise(t,r);let s=this.fdMap.get(t);if(typeof s>"u")throw BL.EBADF("fstat");let[a,o]=s;return a.fstatPromise(o,r)}fstatSync(t,r){if((t&vL)!==this.magic)return this.baseFs.fstatSync(t,r);let s=this.fdMap.get(t);if(typeof s>"u")throw BL.EBADF("fstatSync");let[a,o]=s;return a.fstatSync(o,r)}async lstatPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.lstatPromise(t,r),async(s,{subPath:a})=>await s.lstatPromise(a,r))}lstatSync(t,r){return this.makeCallSync(t,()=>this.baseFs.lstatSync(t,r),(s,{subPath:a})=>s.lstatSync(a,r))}async fchmodPromise(t,r){if((t&vL)!==this.magic)return this.baseFs.fchmodPromise(t,r);let s=this.fdMap.get(t);if(typeof s>"u")throw BL.EBADF("fchmod");let[a,o]=s;return a.fchmodPromise(o,r)}fchmodSync(t,r){if((t&vL)!==this.magic)return this.baseFs.fchmodSync(t,r);let s=this.fdMap.get(t);if(typeof s>"u")throw BL.EBADF("fchmodSync");let[a,o]=s;return a.fchmodSync(o,r)}async chmodPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.chmodPromise(t,r),async(s,{subPath:a})=>await s.chmodPromise(a,r))}chmodSync(t,r){return this.makeCallSync(t,()=>this.baseFs.chmodSync(t,r),(s,{subPath:a})=>s.chmodSync(a,r))}async fchownPromise(t,r,s){if((t&vL)!==this.magic)return this.baseFs.fchownPromise(t,r,s);let a=this.fdMap.get(t);if(typeof a>"u")throw BL.EBADF("fchown");let[o,g]=a;return o.fchownPromise(g,r,s)}fchownSync(t,r,s){if((t&vL)!==this.magic)return this.baseFs.fchownSync(t,r,s);let a=this.fdMap.get(t);if(typeof a>"u")throw BL.EBADF("fchownSync");let[o,g]=a;return o.fchownSync(g,r,s)}async chownPromise(t,r,s){return await this.makeCallPromise(t,async()=>await this.baseFs.chownPromise(t,r,s),async(a,{subPath:o})=>await a.chownPromise(o,r,s))}chownSync(t,r,s){return this.makeCallSync(t,()=>this.baseFs.chownSync(t,r,s),(a,{subPath:o})=>a.chownSync(o,r,s))}async renamePromise(t,r){return await this.makeCallPromise(t,async()=>await this.makeCallPromise(r,async()=>await this.baseFs.renamePromise(t,r),async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),async(s,{subPath:a})=>await this.makeCallPromise(r,async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},async(o,{subPath:g})=>{if(s!==o)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return await s.renamePromise(a,g)}))}renameSync(t,r){return this.makeCallSync(t,()=>this.makeCallSync(r,()=>this.baseFs.renameSync(t,r),()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),(s,{subPath:a})=>this.makeCallSync(r,()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},(o,{subPath:g})=>{if(s!==o)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return s.renameSync(a,g)}))}async copyFilePromise(t,r,s=0){let a=async(o,g,p,f)=>{if(s&Hye.constants.COPYFILE_FICLONE_FORCE)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${g}' -> ${f}'`),{code:"EXDEV"});if(s&Hye.constants.COPYFILE_EXCL&&await this.existsPromise(g))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${g}' -> '${f}'`),{code:"EEXIST"});let m;try{m=await o.readFilePromise(g)}catch{throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${g}' -> '${f}'`),{code:"EINVAL"})}await p.writeFilePromise(f,m)};return await this.makeCallPromise(t,async()=>await this.makeCallPromise(r,async()=>await this.baseFs.copyFilePromise(t,r,s),async(o,{subPath:g})=>await a(this.baseFs,t,o,g)),async(o,{subPath:g})=>await this.makeCallPromise(r,async()=>await a(o,g,this.baseFs,r),async(p,{subPath:f})=>o!==p?await a(o,g,p,f):await o.copyFilePromise(g,f,s)))}copyFileSync(t,r,s=0){let a=(o,g,p,f)=>{if(s&Hye.constants.COPYFILE_FICLONE_FORCE)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${g}' -> ${f}'`),{code:"EXDEV"});if(s&Hye.constants.COPYFILE_EXCL&&this.existsSync(g))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${g}' -> '${f}'`),{code:"EEXIST"});let m;try{m=o.readFileSync(g)}catch{throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${g}' -> '${f}'`),{code:"EINVAL"})}p.writeFileSync(f,m)};return this.makeCallSync(t,()=>this.makeCallSync(r,()=>this.baseFs.copyFileSync(t,r,s),(o,{subPath:g})=>a(this.baseFs,t,o,g)),(o,{subPath:g})=>this.makeCallSync(r,()=>a(o,g,this.baseFs,r),(p,{subPath:f})=>o!==p?a(o,g,p,f):o.copyFileSync(g,f,s)))}async appendFilePromise(t,r,s){return await this.makeCallPromise(t,async()=>await this.baseFs.appendFilePromise(t,r,s),async(a,{subPath:o})=>await a.appendFilePromise(o,r,s))}appendFileSync(t,r,s){return this.makeCallSync(t,()=>this.baseFs.appendFileSync(t,r,s),(a,{subPath:o})=>a.appendFileSync(o,r,s))}async writeFilePromise(t,r,s){return await this.makeCallPromise(t,async()=>await this.baseFs.writeFilePromise(t,r,s),async(a,{subPath:o})=>await a.writeFilePromise(o,r,s))}writeFileSync(t,r,s){return this.makeCallSync(t,()=>this.baseFs.writeFileSync(t,r,s),(a,{subPath:o})=>a.writeFileSync(o,r,s))}async unlinkPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.unlinkPromise(t),async(r,{subPath:s})=>await r.unlinkPromise(s))}unlinkSync(t){return this.makeCallSync(t,()=>this.baseFs.unlinkSync(t),(r,{subPath:s})=>r.unlinkSync(s))}async utimesPromise(t,r,s){return await this.makeCallPromise(t,async()=>await this.baseFs.utimesPromise(t,r,s),async(a,{subPath:o})=>await a.utimesPromise(o,r,s))}utimesSync(t,r,s){return this.makeCallSync(t,()=>this.baseFs.utimesSync(t,r,s),(a,{subPath:o})=>a.utimesSync(o,r,s))}async lutimesPromise(t,r,s){return await this.makeCallPromise(t,async()=>await this.baseFs.lutimesPromise(t,r,s),async(a,{subPath:o})=>await a.lutimesPromise(o,r,s))}lutimesSync(t,r,s){return this.makeCallSync(t,()=>this.baseFs.lutimesSync(t,r,s),(a,{subPath:o})=>a.lutimesSync(o,r,s))}async mkdirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.mkdirPromise(t,r),async(s,{subPath:a})=>await s.mkdirPromise(a,r))}mkdirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.mkdirSync(t,r),(s,{subPath:a})=>s.mkdirSync(a,r))}async rmdirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.rmdirPromise(t,r),async(s,{subPath:a})=>await s.rmdirPromise(a,r))}rmdirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.rmdirSync(t,r),(s,{subPath:a})=>s.rmdirSync(a,r))}async rmPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.rmPromise(t,r),async(s,{subPath:a})=>await s.rmPromise(a,r))}rmSync(t,r){return this.makeCallSync(t,()=>this.baseFs.rmSync(t,r),(s,{subPath:a})=>s.rmSync(a,r))}async linkPromise(t,r){return await this.makeCallPromise(r,async()=>await this.baseFs.linkPromise(t,r),async(s,{subPath:a})=>await s.linkPromise(t,a))}linkSync(t,r){return this.makeCallSync(r,()=>this.baseFs.linkSync(t,r),(s,{subPath:a})=>s.linkSync(t,a))}async symlinkPromise(t,r,s){return await this.makeCallPromise(r,async()=>await this.baseFs.symlinkPromise(t,r,s),async(a,{subPath:o})=>await a.symlinkPromise(t,o))}symlinkSync(t,r,s){return this.makeCallSync(r,()=>this.baseFs.symlinkSync(t,r,s),(a,{subPath:o})=>a.symlinkSync(t,o))}async readFilePromise(t,r){return this.makeCallPromise(t,async()=>await this.baseFs.readFilePromise(t,r),async(s,{subPath:a})=>await s.readFilePromise(a,r))}readFileSync(t,r){return this.makeCallSync(t,()=>this.baseFs.readFileSync(t,r),(s,{subPath:a})=>s.readFileSync(a,r))}async readdirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.readdirPromise(t,r),async(s,{subPath:a})=>await s.readdirPromise(a,r),{requireSubpath:!1})}readdirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.readdirSync(t,r),(s,{subPath:a})=>s.readdirSync(a,r),{requireSubpath:!1})}async readlinkPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.readlinkPromise(t),async(r,{subPath:s})=>await r.readlinkPromise(s))}readlinkSync(t){return this.makeCallSync(t,()=>this.baseFs.readlinkSync(t),(r,{subPath:s})=>r.readlinkSync(s))}async truncatePromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.truncatePromise(t,r),async(s,{subPath:a})=>await s.truncatePromise(a,r))}truncateSync(t,r){return this.makeCallSync(t,()=>this.baseFs.truncateSync(t,r),(s,{subPath:a})=>s.truncateSync(a,r))}async ftruncatePromise(t,r){if((t&vL)!==this.magic)return this.baseFs.ftruncatePromise(t,r);let s=this.fdMap.get(t);if(typeof s>"u")throw BL.EBADF("ftruncate");let[a,o]=s;return a.ftruncatePromise(o,r)}ftruncateSync(t,r){if((t&vL)!==this.magic)return this.baseFs.ftruncateSync(t,r);let s=this.fdMap.get(t);if(typeof s>"u")throw BL.EBADF("ftruncateSync");let[a,o]=s;return a.ftruncateSync(o,r)}watch(t,r,s){return this.makeCallSync(t,()=>this.baseFs.watch(t,r,s),(a,{subPath:o})=>a.watch(o,r,s))}watchFile(t,r,s){return this.makeCallSync(t,()=>this.baseFs.watchFile(t,r,s),()=>(0,Xtt.watchFile)(this,t,r,s))}unwatchFile(t,r){return this.makeCallSync(t,()=>this.baseFs.unwatchFile(t,r),()=>(0,Xtt.unwatchFile)(this,t,r))}async makeCallPromise(t,r,s,{requireSubpath:a=!0}={}){if(typeof t!="string")return await r();let o=this.resolve(t),g=this.findMount(o);return g?a&&g.subPath==="/"?await r():await this.getMountPromise(g.archivePath,async p=>await s(p,g)):await r()}makeCallSync(t,r,s,{requireSubpath:a=!0}={}){if(typeof t!="string")return r();let o=this.resolve(t),g=this.findMount(o);return!g||a&&g.subPath==="/"?r():this.getMountSync(g.archivePath,p=>s(p,g))}findMount(t){if(this.filter&&!this.filter.test(t))return null;let r="";for(;;){let s=t.substring(r.length),a=this.getMountPoint(s,r);if(!a)return null;if(r=this.pathUtils.join(r,a),!this.isMount.has(r)){if(this.notMount.has(r))continue;try{if(this.typeCheck!==null&&(this.baseFs.lstatSync(r).mode&Hye.constants.S_IFMT)!==this.typeCheck){this.notMount.add(r);continue}}catch{return null}this.isMount.add(r)}return{archivePath:r,subPath:this.pathUtils.join(Jtt.PortablePath.root,t.substring(r.length))}}}limitOpenFiles(t){if(this.mountInstances===null)return;let r=Date.now(),s=r+this.maxAge,a=t===null?0:this.mountInstances.size-t;for(let[o,{childFs:g,expiresAt:p,refCount:f}]of this.mountInstances.entries())if(!(f!==0||g.hasOpenFileHandles?.())){if(r>=p){g.saveAndClose?.(),this.mountInstances.delete(o),a-=1;continue}else if(t===null||a<=0){s=p;break}g.saveAndClose?.(),this.mountInstances.delete(o),a-=1}this.limitOpenFilesTimeout===null&&(t===null&&this.mountInstances.size>0||t!==null)&&isFinite(s)&&(this.limitOpenFilesTimeout=setTimeout(()=>{this.limitOpenFilesTimeout=null,this.limitOpenFiles(null)},s-r).unref())}async getMountPromise(t,r){if(this.mountInstances){let s=this.mountInstances.get(t);if(!s){let a=await this.factoryPromise(this.baseFs,t);s=this.mountInstances.get(t),s||(s={childFs:a(),expiresAt:0,refCount:0})}this.mountInstances.delete(t),this.limitOpenFiles(this.maxOpenFiles-1),this.mountInstances.set(t,s),s.expiresAt=Date.now()+this.maxAge,s.refCount+=1;try{return await r(s.childFs)}finally{s.refCount-=1}}else{let s=(await this.factoryPromise(this.baseFs,t))();try{return await r(s)}finally{s.saveAndClose?.()}}}getMountSync(t,r){if(this.mountInstances){let s=this.mountInstances.get(t);return s||(s={childFs:this.factorySync(this.baseFs,t),expiresAt:0,refCount:0}),this.mountInstances.delete(t),this.limitOpenFiles(this.maxOpenFiles-1),this.mountInstances.set(t,s),s.expiresAt=Date.now()+this.maxAge,r(s.childFs)}else{let s=this.factorySync(this.baseFs,t);try{return r(s)}finally{s.saveAndClose?.()}}}};Utt.MountFS=KMt});var o7r=z(Ktt=>{"use strict";Object.defineProperty(Ktt,"__esModule",{value:!0});Ktt.NoFS=void 0;var v1s=Zge(),S1s=EL(),Ng=()=>Object.assign(new Error("ENOSYS: unsupported filesystem access"),{code:"ENOSYS"}),zLe=class extends v1s.FakeFS{constructor(){super(S1s.ppath)}getExtractHint(){throw Ng()}getRealPath(){throw Ng()}resolve(){throw Ng()}async openPromise(){throw Ng()}openSync(){throw Ng()}async opendirPromise(){throw Ng()}opendirSync(){throw Ng()}async readPromise(){throw Ng()}readSync(){throw Ng()}async writePromise(){throw Ng()}writeSync(){throw Ng()}async closePromise(){throw Ng()}closeSync(){throw Ng()}createWriteStream(){throw Ng()}createReadStream(){throw Ng()}async realpathPromise(){throw Ng()}realpathSync(){throw Ng()}async readdirPromise(){throw Ng()}readdirSync(){throw Ng()}async existsPromise(t){throw Ng()}existsSync(t){throw Ng()}async accessPromise(){throw Ng()}accessSync(){throw Ng()}async statPromise(){throw Ng()}statSync(){throw Ng()}async fstatPromise(t){throw Ng()}fstatSync(t){throw Ng()}async lstatPromise(t){throw Ng()}lstatSync(t){throw Ng()}async fchmodPromise(){throw Ng()}fchmodSync(){throw Ng()}async chmodPromise(){throw Ng()}chmodSync(){throw Ng()}async fchownPromise(){throw Ng()}fchownSync(){throw Ng()}async chownPromise(){throw Ng()}chownSync(){throw Ng()}async mkdirPromise(){throw Ng()}mkdirSync(){throw Ng()}async rmdirPromise(){throw Ng()}rmdirSync(){throw Ng()}async rmPromise(){throw Ng()}rmSync(){throw Ng()}async linkPromise(){throw Ng()}linkSync(){throw Ng()}async symlinkPromise(){throw Ng()}symlinkSync(){throw Ng()}async renamePromise(){throw Ng()}renameSync(){throw Ng()}async copyFilePromise(){throw Ng()}copyFileSync(){throw Ng()}async appendFilePromise(){throw Ng()}appendFileSync(){throw Ng()}async writeFilePromise(){throw Ng()}writeFileSync(){throw Ng()}async unlinkPromise(){throw Ng()}unlinkSync(){throw Ng()}async utimesPromise(){throw Ng()}utimesSync(){throw Ng()}async lutimesPromise(){throw Ng()}lutimesSync(){throw Ng()}async readFilePromise(){throw Ng()}readFileSync(){throw Ng()}async readlinkPromise(){throw Ng()}readlinkSync(){throw Ng()}async truncatePromise(){throw Ng()}truncateSync(){throw Ng()}async ftruncatePromise(t,r){throw Ng()}ftruncateSync(t,r){throw Ng()}watch(){throw Ng()}watchFile(){throw Ng()}unwatchFile(){throw Ng()}};Ktt.NoFS=zLe;zLe.instance=new zLe});var a7r=z(jtt=>{"use strict";Object.defineProperty(jtt,"__esModule",{value:!0});jtt.PosixFS=void 0;var w1s=j7(),jMt=EL(),zMt=class extends w1s.ProxiedFS{constructor(t){super(jMt.npath),this.baseFs=t}mapFromBase(t){return jMt.npath.fromPortablePath(t)}mapToBase(t){return jMt.npath.toPortablePath(t)}};jtt.PosixFS=zMt});var c7r=z(ztt=>{"use strict";Object.defineProperty(ztt,"__esModule",{value:!0});ztt.VirtualFS=void 0;var T1s=Lge(),N1s=j7(),lH=EL(),R1s=/^[0-9]+$/,qMt=/^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/,D1s=/^([^/]+-)?[a-f0-9]+$/,$Mt=class e extends N1s.ProxiedFS{static makeVirtualPath(t,r,s){if(lH.ppath.basename(t)!=="__virtual__")throw new Error('Assertion failed: Virtual folders must be named "__virtual__"');if(!lH.ppath.basename(r).match(D1s))throw new Error("Assertion failed: Virtual components must be ended by an hexadecimal hash");let o=lH.ppath.relative(lH.ppath.dirname(t),s).split("/"),g=0;for(;g{"use strict";Object.defineProperty(qtt,"__esModule",{value:!0});qtt.NodePathFS=void 0;var x1s=(Ma(),Ai(Oa)),l7r=x1s.__importDefault(Dt("buffer")),k1s=Dt("url"),G1s=Dt("util"),F1s=j7(),Z1s=EL(),eQt=class extends F1s.ProxiedFS{constructor(t){super(Z1s.npath),this.baseFs=t}mapFromBase(t){return t}mapToBase(t){if(typeof t=="string")return t;if(t instanceof URL)return(0,k1s.fileURLToPath)(t);if(Buffer.isBuffer(t)){let r=t.toString();if(!L1s(t,r))throw new Error("Non-utf8 buffers are not supported at the moment. Please upvote the following issue if you encounter this error: https://github.com/yarnpkg/berry/issues/4942");return r}throw new Error(`Unsupported path type: ${(0,G1s.inspect)(t)}`)}};qtt.NodePathFS=eQt;function L1s(e,t){return typeof l7r.default.isUtf8<"u"?l7r.default.isUtf8(e):Buffer.byteLength(t)===e.byteLength}});var f7r=z(trt=>{"use strict";var g7r,A7r,d7r,p7r;Object.defineProperty(trt,"__esModule",{value:!0});trt.FileHandle=void 0;var V1s=Dt("readline"),fF=Symbol("kBaseFs"),qre=Symbol("kFd"),$re=Symbol("kClosePromise"),$tt=Symbol("kCloseResolve"),ert=Symbol("kCloseReject"),Xye=Symbol("kRefs"),uH=Symbol("kRef"),gH=Symbol("kUnref"),tQt=class{constructor(t,r){this[g7r]=1,this[A7r]=void 0,this[d7r]=void 0,this[p7r]=void 0,this[fF]=r,this[qre]=t}get fd(){return this[qre]}async appendFile(t,r){try{this[uH](this.appendFile);let s=(typeof r=="string"?r:r?.encoding)??void 0;return await this[fF].appendFilePromise(this.fd,t,s?{encoding:s}:void 0)}finally{this[gH]()}}async chown(t,r){try{return this[uH](this.chown),await this[fF].fchownPromise(this.fd,t,r)}finally{this[gH]()}}async chmod(t){try{return this[uH](this.chmod),await this[fF].fchmodPromise(this.fd,t)}finally{this[gH]()}}createReadStream(t){return this[fF].createReadStream(null,{...t,fd:this.fd})}createWriteStream(t){return this[fF].createWriteStream(null,{...t,fd:this.fd})}datasync(){throw new Error("Method not implemented.")}sync(){throw new Error("Method not implemented.")}async read(t,r,s,a){try{this[uH](this.read);let o;return Buffer.isBuffer(t)?o=t:(t??={},o=t.buffer??Buffer.alloc(16384),r=t.offset||0,s=t.length??o.byteLength,a=t.position??null),r??=0,s??=0,s===0?{bytesRead:s,buffer:o}:{bytesRead:await this[fF].readPromise(this.fd,o,r,s,a),buffer:o}}finally{this[gH]()}}async readFile(t){try{this[uH](this.readFile);let r=(typeof t=="string"?t:t?.encoding)??void 0;return await this[fF].readFilePromise(this.fd,r)}finally{this[gH]()}}readLines(t){return(0,V1s.createInterface)({input:this.createReadStream(t),crlfDelay:1/0})}async stat(t){try{return this[uH](this.stat),await this[fF].fstatPromise(this.fd,t)}finally{this[gH]()}}async truncate(t){try{return this[uH](this.truncate),await this[fF].ftruncatePromise(this.fd,t)}finally{this[gH]()}}utimes(t,r){throw new Error("Method not implemented.")}async writeFile(t,r){try{this[uH](this.writeFile);let s=(typeof r=="string"?r:r?.encoding)??void 0;await this[fF].writeFilePromise(this.fd,t,s)}finally{this[gH]()}}async write(...t){try{if(this[uH](this.write),ArrayBuffer.isView(t[0])){let[r,s,a,o]=t;return{bytesWritten:await this[fF].writePromise(this.fd,r,s??void 0,a??void 0,o??void 0),buffer:r}}else{let[r,s,a]=t;return{bytesWritten:await this[fF].writePromise(this.fd,r,s,a),buffer:r}}}finally{this[gH]()}}async writev(t,r){try{this[uH](this.writev);let s=0;if(typeof r<"u")for(let a of t){let o=await this.write(a,void 0,void 0,r);s+=o.bytesWritten,r+=o.bytesWritten}else for(let a of t){let o=await this.write(a);s+=o.bytesWritten}return{buffers:t,bytesWritten:s}}finally{this[gH]()}}readv(t,r){throw new Error("Method not implemented.")}close(){if(this[qre]===-1)return Promise.resolve();if(this[$re])return this[$re];if(this[Xye]--,this[Xye]===0){let t=this[qre];this[qre]=-1,this[$re]=this[fF].closePromise(t).finally(()=>{this[$re]=void 0})}else this[$re]=new Promise((t,r)=>{this[$tt]=t,this[ert]=r}).finally(()=>{this[$re]=void 0,this[ert]=void 0,this[$tt]=void 0});return this[$re]}[(g7r=Xye,A7r=$re,d7r=$tt,p7r=ert,uH)](t){if(this[qre]===-1){let r=new Error("file closed");throw r.code="EBADF",r.syscall=t.name,r}this[Xye]++}[gH](){if(this[Xye]--,this[Xye]===0){let t=this[qre];this[qre]=-1,this[fF].closePromise(t).then(this[$tt],this[ert])}}};trt.FileHandle=tQt});var h7r=z(rrt=>{"use strict";Object.defineProperty(rrt,"__esModule",{value:!0});rrt.patchFs=m7r;rrt.extendFs=O1s;var qLe=Dt("util"),W1s=u7r(),I7r=f7r(),P1s=new Set(["accessSync","appendFileSync","createReadStream","createWriteStream","chmodSync","fchmodSync","chownSync","fchownSync","closeSync","copyFileSync","linkSync","lstatSync","fstatSync","lutimesSync","mkdirSync","openSync","opendirSync","readlinkSync","readFileSync","readdirSync","readlinkSync","realpathSync","renameSync","rmdirSync","rmSync","statSync","symlinkSync","truncateSync","ftruncateSync","unlinkSync","unwatchFile","utimesSync","watch","watchFile","writeFileSync","writeSync"]),C7r=new Set(["accessPromise","appendFilePromise","fchmodPromise","chmodPromise","fchownPromise","chownPromise","closePromise","copyFilePromise","linkPromise","fstatPromise","lstatPromise","lutimesPromise","mkdirPromise","openPromise","opendirPromise","readdirPromise","realpathPromise","readFilePromise","readdirPromise","readlinkPromise","renamePromise","rmdirPromise","rmPromise","statPromise","symlinkPromise","truncatePromise","ftruncatePromise","unlinkPromise","utimesPromise","writeFilePromise","writeSync"]);function m7r(e,t){t=new W1s.NodePathFS(t);let r=(s,a,o)=>{let g=s[a];s[a]=o,typeof g?.[qLe.promisify.custom]<"u"&&(o[qLe.promisify.custom]=g[qLe.promisify.custom])};{r(e,"exists",(s,...a)=>{let g=typeof a[a.length-1]=="function"?a.pop():()=>{};process.nextTick(()=>{t.existsPromise(s).then(p=>{g(p)},()=>{g(!1)})})}),r(e,"read",(...s)=>{let[a,o,g,p,f,m]=s;if(s.length<=3){let y={};s.length<3?m=s[1]:(y=s[1],m=s[2]),{buffer:o=Buffer.alloc(16384),offset:g=0,length:p=o.byteLength,position:f}=y}if(g==null&&(g=0),p|=0,p===0){process.nextTick(()=>{m(null,0,o)});return}f==null&&(f=-1),process.nextTick(()=>{t.readPromise(a,o,g,p,f).then(y=>{m(null,y,o)},y=>{m(y,0,o)})})});for(let s of C7r){let a=s.replace(/Promise$/,"");if(typeof e[a]>"u")continue;let o=t[s];if(typeof o>"u")continue;r(e,a,(...p)=>{let m=typeof p[p.length-1]=="function"?p.pop():()=>{};process.nextTick(()=>{o.apply(t,p).then(y=>{m(null,y)},y=>{m(y)})})})}e.realpath.native=e.realpath}{r(e,"existsSync",s=>{try{return t.existsSync(s)}catch{return!1}}),r(e,"readSync",(...s)=>{let[a,o,g,p,f]=s;return s.length<=3&&({offset:g=0,length:p=o.byteLength,position:f}=s[2]||{}),g==null&&(g=0),p|=0,p===0?0:(f==null&&(f=-1),t.readSync(a,o,g,p,f))});for(let s of P1s){let a=s;if(typeof e[a]>"u")continue;let o=t[s];typeof o>"u"||r(e,a,o.bind(t))}e.realpathSync.native=e.realpathSync}{let s=e.promises;for(let a of C7r){let o=a.replace(/Promise$/,"");if(typeof s[o]>"u")continue;let g=t[a];typeof g>"u"||a!=="open"&&r(s,o,(p,...f)=>p instanceof I7r.FileHandle?p[o].apply(p,f):g.call(t,p,...f))}r(s,"open",async(...a)=>{let o=await t.openPromise(...a);return new I7r.FileHandle(o,t)})}e.read[qLe.promisify.custom]=async(s,a,...o)=>({bytesRead:await t.readPromise(s,a,...o),buffer:a}),e.write[qLe.promisify.custom]=async(s,a,...o)=>({bytesWritten:await t.writePromise(s,a,...o),buffer:a})}function O1s(e,t){let r=Object.create(e);return m7r(r,t),r}});var b7r=z(ene=>{"use strict";Object.defineProperty(ene,"__esModule",{value:!0});ene.xfs=void 0;var M1s=(Ma(),Ai(Oa)),Q1s=M1s.__importDefault(Dt("os")),Y1s=Lge(),$Le=EL();function _7r(e){let t=Math.ceil(Math.random()*4294967296).toString(16).padStart(8,"0");return`${e}${t}`}var AH=new Set,rQt=null;function y7r(){if(rQt)return rQt;let e=$Le.npath.toPortablePath(Q1s.default.tmpdir()),t=ene.xfs.realpathSync(e);return process.once("exit",()=>{ene.xfs.rmtempSync()}),rQt={tmpdir:e,realTmpdir:t}}ene.xfs=Object.assign(new Y1s.NodeFS,{detachTemp(e){AH.delete(e)},mktempSync(e){let{tmpdir:t,realTmpdir:r}=y7r();for(;;){let s=_7r("xfs-");try{this.mkdirSync($Le.ppath.join(t,s))}catch(o){if(o.code==="EEXIST")continue;throw o}let a=$Le.ppath.join(r,s);if(AH.add(a),typeof e>"u")return a;try{return e(a)}finally{if(AH.has(a)){AH.delete(a);try{this.removeSync(a)}catch{}}}}},async mktempPromise(e){let{tmpdir:t,realTmpdir:r}=y7r();for(;;){let s=_7r("xfs-");try{await this.mkdirPromise($Le.ppath.join(t,s))}catch(o){if(o.code==="EEXIST")continue;throw o}let a=$Le.ppath.join(r,s);if(AH.add(a),typeof e>"u")return a;try{return await e(a)}finally{if(AH.has(a)){AH.delete(a);try{await this.removePromise(a)}catch{}}}}},async rmtempPromise(){await Promise.all(Array.from(AH.values()).map(async e=>{try{await ene.xfs.removePromise(e,{maxRetries:0}),AH.delete(e)}catch{}}))},rmtempSync(){for(let e of AH)try{ene.xfs.removeSync(e),AH.delete(e)}catch{}}})});var Ro=z(cd=>{"use strict";Object.defineProperty(cd,"__esModule",{value:!0});cd.xfs=cd.extendFs=cd.patchFs=cd.VirtualFS=cd.ProxiedFS=cd.PosixFS=cd.NodeFS=cd.NoFS=cd.MountFS=cd.LazyFS=cd.JailFS=cd.CwdFS=cd.BasePortableFakeFS=cd.FakeFS=cd.AliasFS=cd.ppath=cd.npath=cd.Filename=cd.PortablePath=cd.normalizeLineEndings=cd.unwatchAllFiles=cd.unwatchFile=cd.watchFile=cd.CustomDir=cd.opendir=cd.setupCopyIndex=cd.statUtils=cd.errors=cd.constants=void 0;var nQt=(Ma(),Ai(Oa)),H1s=nQt.__importStar(Ntt());cd.constants=H1s;var X1s=nQt.__importStar(Rtt());cd.errors=X1s;var J1s=nQt.__importStar(kMt());cd.statUtils=J1s;var U1s=ZMt();Object.defineProperty(cd,"setupCopyIndex",{enumerable:!0,get:function(){return U1s.setupCopyIndex}});var E7r=K6r();Object.defineProperty(cd,"opendir",{enumerable:!0,get:function(){return E7r.opendir}});Object.defineProperty(cd,"CustomDir",{enumerable:!0,get:function(){return E7r.CustomDir}});var iQt=WMt();Object.defineProperty(cd,"watchFile",{enumerable:!0,get:function(){return iQt.watchFile}});Object.defineProperty(cd,"unwatchFile",{enumerable:!0,get:function(){return iQt.unwatchFile}});Object.defineProperty(cd,"unwatchAllFiles",{enumerable:!0,get:function(){return iQt.unwatchAllFiles}});var K1s=Zge();Object.defineProperty(cd,"normalizeLineEndings",{enumerable:!0,get:function(){return K1s.normalizeLineEndings}});var B7r=EL();Object.defineProperty(cd,"PortablePath",{enumerable:!0,get:function(){return B7r.PortablePath}});Object.defineProperty(cd,"Filename",{enumerable:!0,get:function(){return B7r.Filename}});var v7r=EL();Object.defineProperty(cd,"npath",{enumerable:!0,get:function(){return v7r.npath}});Object.defineProperty(cd,"ppath",{enumerable:!0,get:function(){return v7r.ppath}});var j1s=$6r();Object.defineProperty(cd,"AliasFS",{enumerable:!0,get:function(){return j1s.AliasFS}});var S7r=Zge();Object.defineProperty(cd,"FakeFS",{enumerable:!0,get:function(){return S7r.FakeFS}});Object.defineProperty(cd,"BasePortableFakeFS",{enumerable:!0,get:function(){return S7r.BasePortableFakeFS}});var z1s=t7r();Object.defineProperty(cd,"CwdFS",{enumerable:!0,get:function(){return z1s.CwdFS}});var q1s=n7r();Object.defineProperty(cd,"JailFS",{enumerable:!0,get:function(){return q1s.JailFS}});var $1s=i7r();Object.defineProperty(cd,"LazyFS",{enumerable:!0,get:function(){return $1s.LazyFS}});var e2s=s7r();Object.defineProperty(cd,"MountFS",{enumerable:!0,get:function(){return e2s.MountFS}});var t2s=o7r();Object.defineProperty(cd,"NoFS",{enumerable:!0,get:function(){return t2s.NoFS}});var r2s=Lge();Object.defineProperty(cd,"NodeFS",{enumerable:!0,get:function(){return r2s.NodeFS}});var n2s=a7r();Object.defineProperty(cd,"PosixFS",{enumerable:!0,get:function(){return n2s.PosixFS}});var i2s=j7();Object.defineProperty(cd,"ProxiedFS",{enumerable:!0,get:function(){return i2s.ProxiedFS}});var s2s=c7r();Object.defineProperty(cd,"VirtualFS",{enumerable:!0,get:function(){return s2s.VirtualFS}});var w7r=h7r();Object.defineProperty(cd,"patchFs",{enumerable:!0,get:function(){return w7r.patchFs}});Object.defineProperty(cd,"extendFs",{enumerable:!0,get:function(){return w7r.extendFs}});var o2s=b7r();Object.defineProperty(cd,"xfs",{enumerable:!0,get:function(){return o2s.xfs}})});var x7r=z((kFc,D7r)=>{D7r.exports=R7r;R7r.sync=c2s;var T7r=Dt("fs");function a2s(e,t){var r=t.pathExt!==void 0?t.pathExt:process.env.PATHEXT;if(!r||(r=r.split(";"),r.indexOf("")!==-1))return!0;for(var s=0;s{Z7r.exports=G7r;G7r.sync=l2s;var k7r=Dt("fs");function G7r(e,t,r){k7r.stat(e,function(s,a){r(s,s?!1:F7r(a,t))})}function l2s(e,t){return F7r(k7r.statSync(e),t)}function F7r(e,t){return e.isFile()&&u2s(e,t)}function u2s(e,t){var r=e.mode,s=e.uid,a=e.gid,o=t.uid!==void 0?t.uid:process.getuid&&process.getuid(),g=t.gid!==void 0?t.gid:process.getgid&&process.getgid(),p=parseInt("100",8),f=parseInt("010",8),m=parseInt("001",8),y=p|f,B=r&m||r&f&&a===g||r&p&&s===o||r&y&&o===0;return B}});var W7r=z((ZFc,V7r)=>{var FFc=Dt("fs"),nrt;process.platform==="win32"||global.TESTING_WINDOWS?nrt=x7r():nrt=L7r();V7r.exports=sQt;sQt.sync=g2s;function sQt(e,t,r){if(typeof t=="function"&&(r=t,t={}),!r){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(s,a){sQt(e,t||{},function(o,g){o?a(o):s(g)})})}nrt(e,t||{},function(s,a){s&&(s.code==="EACCES"||t&&t.ignoreErrors)&&(s=null,a=!1),r(s,a)})}function g2s(e,t){try{return nrt.sync(e,t||{})}catch(r){if(t&&t.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var oQt=z((LFc,H7r)=>{var Jye=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",P7r=Dt("path"),A2s=Jye?";":":",O7r=W7r(),M7r=e=>Object.assign(new Error(`not found: ${e}`),{code:"ENOENT"}),Q7r=(e,t)=>{let r=t.colon||A2s,s=e.match(/\//)||Jye&&e.match(/\\/)?[""]:[...Jye?[process.cwd()]:[],...(t.path||process.env.PATH||"").split(r)],a=Jye?t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",o=Jye?a.split(r):[""];return Jye&&e.indexOf(".")!==-1&&o[0]!==""&&o.unshift(""),{pathEnv:s,pathExt:o,pathExtExe:a}},Y7r=(e,t,r)=>{typeof t=="function"&&(r=t,t={}),t||(t={});let{pathEnv:s,pathExt:a,pathExtExe:o}=Q7r(e,t),g=[],p=m=>new Promise((y,B)=>{if(m===s.length)return t.all&&g.length?y(g):B(M7r(e));let v=s[m],G=/^".*"$/.test(v)?v.slice(1,-1):v,T=P7r.join(G,e),O=!G&&/^\.[\\\/]/.test(e)?e.slice(0,2)+T:T;y(f(O,m,0))}),f=(m,y,B)=>new Promise((v,G)=>{if(B===a.length)return v(p(y+1));let T=a[B];O7r(m+T,{pathExt:o},(O,X)=>{if(!O&&X)if(t.all)g.push(m+T);else return v(m+T);return v(f(m,y,B+1))})});return r?p(0).then(m=>r(null,m),r):p(0)},d2s=(e,t)=>{t=t||{};let{pathEnv:r,pathExt:s,pathExtExe:a}=Q7r(e,t),o=[];for(let g=0;g{"use strict";var X7r=(e={})=>{let t=e.env||process.env;return(e.platform||process.platform)!=="win32"?"PATH":Object.keys(t).reverse().find(s=>s.toUpperCase()==="PATH")||"Path"};aQt.exports=X7r;aQt.exports.default=X7r});var j7r=z((WFc,K7r)=>{"use strict";var J7r=Dt("path"),p2s=oQt(),f2s=cQt();function U7r(e,t){let r=e.options.env||process.env,s=process.cwd(),a=e.options.cwd!=null,o=a&&process.chdir!==void 0&&!process.chdir.disabled;if(o)try{process.chdir(e.options.cwd)}catch{}let g;try{g=p2s.sync(e.command,{path:r[f2s({env:r})],pathExt:t?J7r.delimiter:void 0})}catch{}finally{o&&process.chdir(s)}return g&&(g=J7r.resolve(a?e.options.cwd:"",g)),g}function I2s(e){return U7r(e)||U7r(e,!0)}K7r.exports=I2s});var z7r=z((PFc,uQt)=>{"use strict";var lQt=/([()\][%!^"`<>&|;, *?])/g;function C2s(e){return e=e.replace(lQt,"^$1"),e}function m2s(e,t){return e=`${e}`,e=e.replace(/(\\*)"/g,'$1$1\\"'),e=e.replace(/(\\*)$/,"$1$1"),e=`"${e}"`,e=e.replace(lQt,"^$1"),t&&(e=e.replace(lQt,"^$1")),e}uQt.exports.command=C2s;uQt.exports.argument=m2s});var $7r=z((OFc,q7r)=>{"use strict";q7r.exports=/^#!(.*)/});var gQt=z((MFc,ejr)=>{"use strict";var h2s=$7r();ejr.exports=(e="")=>{let t=e.match(h2s);if(!t)return null;let[r,s]=t[0].replace(/#! ?/,"").split(" "),a=r.split("/").pop();return a==="env"?s:s?`${a} ${s}`:a}});var rjr=z((QFc,tjr)=>{"use strict";var AQt=Dt("fs"),_2s=gQt();function y2s(e){let r=Buffer.alloc(150),s;try{s=AQt.openSync(e,"r"),AQt.readSync(s,r,0,150,0),AQt.closeSync(s)}catch{}return _2s(r.toString())}tjr.exports=y2s});var ojr=z((YFc,sjr)=>{"use strict";var b2s=Dt("path"),njr=j7r(),ijr=z7r(),E2s=rjr(),B2s=process.platform==="win32",v2s=/\.(?:com|exe)$/i,S2s=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function w2s(e){e.file=njr(e);let t=e.file&&E2s(e.file);return t?(e.args.unshift(e.file),e.command=t,njr(e)):e.file}function T2s(e){if(!B2s)return e;let t=w2s(e),r=!v2s.test(t);if(e.options.forceShell||r){let s=S2s.test(t);e.command=b2s.normalize(e.command),e.command=ijr.command(e.command),e.args=e.args.map(o=>ijr.argument(o,s));let a=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${a}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e}function N2s(e,t,r){t&&!Array.isArray(t)&&(r=t,t=null),t=t?t.slice(0):[],r=Object.assign({},r);let s={command:e,args:t,options:r,file:void 0,original:{command:e,args:t}};return r.shell?s:T2s(s)}sjr.exports=N2s});var ljr=z((HFc,cjr)=>{"use strict";var dQt=process.platform==="win32";function pQt(e,t){return Object.assign(new Error(`${t} ${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function R2s(e,t){if(!dQt)return;let r=e.emit;e.emit=function(s,a){if(s==="exit"){let o=ajr(a,t,"spawn");if(o)return r.call(e,"error",o)}return r.apply(e,arguments)}}function ajr(e,t){return dQt&&e===1&&!t.file?pQt(t.original,"spawn"):null}function D2s(e,t){return dQt&&e===1&&!t.file?pQt(t.original,"spawnSync"):null}cjr.exports={hookChildProcess:R2s,verifyENOENT:ajr,verifyENOENTSync:D2s,notFoundError:pQt}});var irt=z((XFc,Uye)=>{"use strict";var ujr=Dt("child_process"),fQt=ojr(),IQt=ljr();function gjr(e,t,r){let s=fQt(e,t,r),a=ujr.spawn(s.command,s.args,s.options);return IQt.hookChildProcess(a,s),a}function x2s(e,t,r){let s=fQt(e,t,r),a=ujr.spawnSync(s.command,s.args,s.options);return a.error=a.error||IQt.verifyENOENTSync(a.status,s),a}Uye.exports=gjr;Uye.exports.spawn=gjr;Uye.exports.sync=x2s;Uye.exports._parse=fQt;Uye.exports._enoent=IQt});var djr=z((JFc,Ajr)=>{"use strict";function k2s(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function Vge(e,t,r,s){this.message=e,this.expected=t,this.found=r,this.location=s,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Vge)}k2s(Vge,Error);Vge.buildMessage=function(e,t){var r={literal:function(m){return'"'+a(m.text)+'"'},class:function(m){var y="",B;for(B=0;B0){for(B=1,v=1;B>",Gn=Yo(">>",!1),we=">&",Zi=Yo(">&",!1),Za=">",ka=Yo(">",!1),Qs="<<<",lr=Yo("<<<",!1),ga="<&",vi=Yo("<&",!1),Qu="<",Yu=Yo("<",!1),YA=function(at){return{type:"argument",segments:[].concat(...at)}},ud=function(at){return at},TA="$'",Ld=Yo("$'",!1),jr="'",Gr=Yo("'",!1),Ir=function(at){return[{type:"text",text:at}]},nn='""',Cn=Yo('""',!1),Vn=function(){return{type:"text",text:""}},Ji='"',Hr=Yo('"',!1),Ws=function(at){return at},Ko=function(at){return{type:"arithmetic",arithmetic:at,quoted:!0}},ai=function(at){return{type:"shell",shell:at,quoted:!0}},pa=function(at){return{type:"variable",...at,quoted:!0}},sg=function(at){return{type:"text",text:at}},Fu=function(at){return{type:"arithmetic",arithmetic:at,quoted:!1}},Cg=function(at){return{type:"shell",shell:at,quoted:!1}},Zu=function(at){return{type:"variable",...at,quoted:!1}},Cl=function(at){return{type:"glob",pattern:at}},wi=/^[^']/,ts=yu(["'"],!0,!1),$i=function(at){return at.join("")},Ga=/^[^$"]/,$s=yu(["$",'"'],!0,!1),xl=`\\ -`,qo=Yo(`\\ -`,!1),Na=function(){return""},wu="\\",Dg=Yo("\\",!1),hl=/^[\\$"`]/,au=yu(["\\","$",'"',"`"],!1,!1),Lg=function(at){return at},cf="\\a",Td=Yo("\\a",!1),ei=function(){return"a"},Qa="\\b",Rt=Yo("\\b",!1),kl=function(){return"\b"},Hu=/^[Ee]/,us=yu(["E","e"],!1,!1),og=function(){return"\x1B"},on="\\f",Bo=Yo("\\f",!1),$g=function(){return"\f"},cA="\\n",HA=Yo("\\n",!1),No=function(){return` -`},Hl="\\r",Ff=Yo("\\r",!1),Vd=function(){return"\r"},bA="\\t",Os=Yo("\\t",!1),Hi=function(){return" "},ec="\\v",ll=Yo("\\v",!1),Ts=function(){return"\v"},NA=/^[\\'"?]/,Ud=yu(["\\","'",'"',"?"],!1,!1),Ra=function(at){return String.fromCharCode(parseInt(at,16))},ys="\\x",Xa=Yo("\\x",!1),cm="\\u",eo=Yo("\\u",!1),ps="\\U",oc=Yo("\\U",!1),TC=function(at){return String.fromCodePoint(parseInt(at,16))},pI=/^[0-7]/,SI=yu([["0","7"]],!1,!1),Bl=/^[0-9a-fA-f]/,il=yu([["0","9"],["a","f"],["A","f"]],!1,!1),LA=op(),lf="{}",za=Yo("{}",!1),iu=function(){return"{}"},ii="-",NC=Yo("-",!1),Jh="+",Tm=Yo("+",!1),_l=".",Og=Yo(".",!1),sp=function(at,$t,Wr){return{type:"number",value:(at==="-"?-1:1)*parseFloat($t.join("")+"."+Wr.join(""))}},lm=function(at,$t){return{type:"number",value:(at==="-"?-1:1)*parseInt($t.join(""))}},ch=function(at){return{type:"variable",...at}},Xl=function(at){return{type:"variable",name:at}},Wp=function(at){return at},uC="*",fs=Yo("*",!1),Ao="/",Do=Yo("/",!1),zl=function(at,$t,Wr){return{type:$t==="*"?"multiplication":"division",right:Wr}},Nr=function(at,$t){return $t.reduce((Wr,vn)=>({left:Wr,...vn}),at)},Nn=function(at,$t,Wr){return{type:$t==="+"?"addition":"subtraction",right:Wr}},Di="$((",na=Yo("$((",!1),Ks="))",Li=Yo("))",!1),Zl=function(at){return at},RA="$(",Nd=Yo("$(",!1),WI=function(at){return at},pl="${",Qm=Yo("${",!1),f1=":-",fv=Yo(":-",!1),eA=function(at,$t){return{name:at,defaultValue:$t}},Nm=":-}",lh=Yo(":-}",!1),Oy=function(at){return{name:at,defaultValue:[]}},vp=":+",tA=Yo(":+",!1),R0=function(at,$t){return{name:at,alternativeValue:$t}},_h=":+}",ly=Yo(":+}",!1),uc=function(at){return{name:at,alternativeValue:[]}},b_=function(at){return{name:at}},Sb="$",um=Yo("$",!1),uh=function(at){return t.isGlobPattern(at)},pg=function(at){return at},gm=/^[a-zA-Z0-9_]/,wb=yu([["a","z"],["A","Z"],["0","9"],"_"],!1,!1),Rm=function(){return Dn()},PI=/^[$@*?#a-zA-Z0-9_\-]/,Ef=yu(["$","@","*","?","#",["a","z"],["A","Z"],["0","9"],"_","-"],!1,!1),eI=/^[()}<>$|&; \t"']/,Zf=yu(["(",")","}","<",">","$","|","&",";"," "," ",'"',"'"],!1,!1),hE=/^[<>&; \t"']/,uy=yu(["<",">","&",";"," "," ",'"',"'"],!1,!1),ie=/^[ \t]/,w=yu([" "," "],!1,!1),J=0,ye=0,ut=[{line:1,column:1}],zt=0,Zr=[],wr=0,Yn;if("startRule"in t){if(!(t.startRule in s))throw new Error(`Can't start parsing from rule "`+t.startRule+'".');a=s[t.startRule]}function Dn(){return e.substring(ye,J)}function Po(){return D0(ye,J)}function fc(at,$t){throw $t=$t!==void 0?$t:D0(ye,J),fI([tI(at)],e.substring(ye,J),$t)}function Xc(at,$t){throw $t=$t!==void 0?$t:D0(ye,J),md(at,$t)}function Yo(at,$t){return{type:"literal",text:at,ignoreCase:$t}}function yu(at,$t,Wr){return{type:"class",parts:at,inverted:$t,ignoreCase:Wr}}function op(){return{type:"any"}}function lA(){return{type:"end"}}function tI(at){return{type:"other",description:at}}function Kd(at){var $t=ut[at],Wr;if($t)return $t;for(Wr=at-1;!ut[Wr];)Wr--;for($t=ut[Wr],$t={line:$t.line,column:$t.column};Wrzt&&(zt=J,Zr=[]),Zr.push(at))}function md(at,$t){return new Vge(at,null,null,$t)}function fI(at,$t,Wr){return new Vge(Vge.buildMessage(at,$t),at,$t,Wr)}function Bf(){var at,$t,Wr;for(at=J,$t=[],Wr=dc();Wr!==r;)$t.push(Wr),Wr=dc();return $t!==r?(Wr=Uh(),Wr===r&&(Wr=null),Wr!==r?(ye=at,$t=o(Wr),at=$t):(J=at,at=r)):(J=at,at=r),at}function Uh(){var at,$t,Wr,vn,os;if(at=J,$t=CS(),$t!==r){for(Wr=[],vn=dc();vn!==r;)Wr.push(vn),vn=dc();Wr!==r?(vn=IS(),vn!==r?(os=Ym(),os===r&&(os=null),os!==r?(ye=at,$t=g($t,vn,os),at=$t):(J=at,at=r)):(J=at,at=r)):(J=at,at=r)}else J=at,at=r;if(at===r)if(at=J,$t=CS(),$t!==r){for(Wr=[],vn=dc();vn!==r;)Wr.push(vn),vn=dc();Wr!==r?(vn=IS(),vn===r&&(vn=null),vn!==r?(ye=at,$t=p($t,vn),at=$t):(J=at,at=r)):(J=at,at=r)}else J=at,at=r;return at}function Ym(){var at,$t,Wr,vn,os;for(at=J,$t=[],Wr=dc();Wr!==r;)$t.push(Wr),Wr=dc();if($t!==r)if(Wr=Uh(),Wr!==r){for(vn=[],os=dc();os!==r;)vn.push(os),os=dc();vn!==r?(ye=at,$t=f(Wr),at=$t):(J=at,at=r)}else J=at,at=r;else J=at,at=r;return at}function IS(){var at;return e.charCodeAt(J)===59?(at=m,J++):(at=r,wr===0&&ya(y)),at===r&&(e.charCodeAt(J)===38?(at=B,J++):(at=r,wr===0&&ya(v))),at}function CS(){var at,$t,Wr;return at=J,$t=yE(),$t!==r?(Wr=_E(),Wr===r&&(Wr=null),Wr!==r?(ye=at,$t=G($t,Wr),at=$t):(J=at,at=r)):(J=at,at=r),at}function _E(){var at,$t,Wr,vn,os,wo,fg;for(at=J,$t=[],Wr=dc();Wr!==r;)$t.push(Wr),Wr=dc();if($t!==r)if(Wr=x0(),Wr!==r){for(vn=[],os=dc();os!==r;)vn.push(os),os=dc();if(vn!==r)if(os=CS(),os!==r){for(wo=[],fg=dc();fg!==r;)wo.push(fg),fg=dc();wo!==r?(ye=at,$t=T(Wr,os),at=$t):(J=at,at=r)}else J=at,at=r;else J=at,at=r}else J=at,at=r;else J=at,at=r;return at}function x0(){var at;return e.substr(J,2)===O?(at=O,J+=2):(at=r,wr===0&&ya(X)),at===r&&(e.substr(J,2)===U?(at=U,J+=2):(at=r,wr===0&&ya(le))),at}function yE(){var at,$t,Wr;return at=J,$t=U_(),$t!==r?(Wr=CB(),Wr===r&&(Wr=null),Wr!==r?(ye=at,$t=ae($t,Wr),at=$t):(J=at,at=r)):(J=at,at=r),at}function CB(){var at,$t,Wr,vn,os,wo,fg;for(at=J,$t=[],Wr=dc();Wr!==r;)$t.push(Wr),Wr=dc();if($t!==r)if(Wr=J_(),Wr!==r){for(vn=[],os=dc();os!==r;)vn.push(os),os=dc();if(vn!==r)if(os=yE(),os!==r){for(wo=[],fg=dc();fg!==r;)wo.push(fg),fg=dc();wo!==r?(ye=at,$t=ge(Wr,os),at=$t):(J=at,at=r)}else J=at,at=r;else J=at,at=r}else J=at,at=r;else J=at,at=r;return at}function J_(){var at;return e.substr(J,2)===fe?(at=fe,J+=2):(at=r,wr===0&&ya(pe)),at===r&&(e.charCodeAt(J)===124?(at=he,J++):(at=r,wr===0&&ya(be))),at}function yh(){var at,$t,Wr,vn,os,wo;if(at=J,$t=EE(),$t!==r)if(e.charCodeAt(J)===61?(Wr=Te,J++):(Wr=r,wr===0&&ya(ke)),Wr!==r)if(vn=Hm(),vn!==r){for(os=[],wo=dc();wo!==r;)os.push(wo),wo=dc();os!==r?(ye=at,$t=x($t,vn),at=$t):(J=at,at=r)}else J=at,at=r;else J=at,at=r;else J=at,at=r;if(at===r)if(at=J,$t=EE(),$t!==r)if(e.charCodeAt(J)===61?(Wr=Te,J++):(Wr=r,wr===0&&ya(ke)),Wr!==r){for(vn=[],os=dc();os!==r;)vn.push(os),os=dc();vn!==r?(ye=at,$t=et($t),at=$t):(J=at,at=r)}else J=at,at=r;else J=at,at=r;return at}function U_(){var at,$t,Wr,vn,os,wo,fg,mg,gf,rI,gC;for(at=J,$t=[],Wr=dc();Wr!==r;)$t.push(Wr),Wr=dc();if($t!==r)if(e.charCodeAt(J)===40?(Wr=Ue,J++):(Wr=r,wr===0&&ya(Je)),Wr!==r){for(vn=[],os=dc();os!==r;)vn.push(os),os=dc();if(vn!==r)if(os=Uh(),os!==r){for(wo=[],fg=dc();fg!==r;)wo.push(fg),fg=dc();if(wo!==r)if(e.charCodeAt(J)===41?(fg=Xe,J++):(fg=r,wr===0&&ya(ft)),fg!==r){for(mg=[],gf=dc();gf!==r;)mg.push(gf),gf=dc();if(mg!==r){for(gf=[],rI=Kl();rI!==r;)gf.push(rI),rI=Kl();if(gf!==r){for(rI=[],gC=dc();gC!==r;)rI.push(gC),gC=dc();rI!==r?(ye=at,$t=Gt(os,gf),at=$t):(J=at,at=r)}else J=at,at=r}else J=at,at=r}else J=at,at=r;else J=at,at=r}else J=at,at=r;else J=at,at=r}else J=at,at=r;else J=at,at=r;if(at===r){for(at=J,$t=[],Wr=dc();Wr!==r;)$t.push(Wr),Wr=dc();if($t!==r)if(e.charCodeAt(J)===123?(Wr=er,J++):(Wr=r,wr===0&&ya(Ur)),Wr!==r){for(vn=[],os=dc();os!==r;)vn.push(os),os=dc();if(vn!==r)if(os=Uh(),os!==r){for(wo=[],fg=dc();fg!==r;)wo.push(fg),fg=dc();if(wo!==r)if(e.charCodeAt(J)===125?(fg=Ot,J++):(fg=r,wr===0&&ya(dr)),fg!==r){for(mg=[],gf=dc();gf!==r;)mg.push(gf),gf=dc();if(mg!==r){for(gf=[],rI=Kl();rI!==r;)gf.push(rI),rI=Kl();if(gf!==r){for(rI=[],gC=dc();gC!==r;)rI.push(gC),gC=dc();rI!==r?(ye=at,$t=Ar(os,gf),at=$t):(J=at,at=r)}else J=at,at=r}else J=at,at=r}else J=at,at=r;else J=at,at=r}else J=at,at=r;else J=at,at=r}else J=at,at=r;else J=at,at=r;if(at===r){for(at=J,$t=[],Wr=dc();Wr!==r;)$t.push(Wr),Wr=dc();if($t!==r){for(Wr=[],vn=yh();vn!==r;)Wr.push(vn),vn=yh();if(Wr!==r){for(vn=[],os=dc();os!==r;)vn.push(os),os=dc();if(vn!==r){if(os=[],wo=RC(),wo!==r)for(;wo!==r;)os.push(wo),wo=RC();else os=r;if(os!==r){for(wo=[],fg=dc();fg!==r;)wo.push(fg),fg=dc();wo!==r?(ye=at,$t=or(Wr,os),at=$t):(J=at,at=r)}else J=at,at=r}else J=at,at=r}else J=at,at=r}else J=at,at=r;if(at===r){for(at=J,$t=[],Wr=dc();Wr!==r;)$t.push(Wr),Wr=dc();if($t!==r){if(Wr=[],vn=yh(),vn!==r)for(;vn!==r;)Wr.push(vn),vn=yh();else Wr=r;if(Wr!==r){for(vn=[],os=dc();os!==r;)vn.push(os),os=dc();vn!==r?(ye=at,$t=Fr(Wr),at=$t):(J=at,at=r)}else J=at,at=r}else J=at,at=r}}}return at}function ql(){var at,$t,Wr,vn,os;for(at=J,$t=[],Wr=dc();Wr!==r;)$t.push(Wr),Wr=dc();if($t!==r){if(Wr=[],vn=ug(),vn!==r)for(;vn!==r;)Wr.push(vn),vn=ug();else Wr=r;if(Wr!==r){for(vn=[],os=dc();os!==r;)vn.push(os),os=dc();vn!==r?(ye=at,$t=$r(Wr),at=$t):(J=at,at=r)}else J=at,at=r}else J=at,at=r;return at}function RC(){var at,$t,Wr;for(at=J,$t=[],Wr=dc();Wr!==r;)$t.push(Wr),Wr=dc();if($t!==r?(Wr=Kl(),Wr!==r?(ye=at,$t=Or(Wr),at=$t):(J=at,at=r)):(J=at,at=r),at===r){for(at=J,$t=[],Wr=dc();Wr!==r;)$t.push(Wr),Wr=dc();$t!==r?(Wr=ug(),Wr!==r?(ye=at,$t=Or(Wr),at=$t):(J=at,at=r)):(J=at,at=r)}return at}function Kl(){var at,$t,Wr,vn,os;for(at=J,$t=[],Wr=dc();Wr!==r;)$t.push(Wr),Wr=dc();return $t!==r?(In.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ya(Br)),Wr===r&&(Wr=null),Wr!==r?(vn=ap(),vn!==r?(os=ug(),os!==r?(ye=at,$t=tr(Wr,vn,os),at=$t):(J=at,at=r)):(J=at,at=r)):(J=at,at=r)):(J=at,at=r),at}function ap(){var at;return e.substr(J,2)===gn?(at=gn,J+=2):(at=r,wr===0&&ya(Gn)),at===r&&(e.substr(J,2)===we?(at=we,J+=2):(at=r,wr===0&&ya(Zi)),at===r&&(e.charCodeAt(J)===62?(at=Za,J++):(at=r,wr===0&&ya(ka)),at===r&&(e.substr(J,3)===Qs?(at=Qs,J+=3):(at=r,wr===0&&ya(lr)),at===r&&(e.substr(J,2)===ga?(at=ga,J+=2):(at=r,wr===0&&ya(vi)),at===r&&(e.charCodeAt(J)===60?(at=Qu,J++):(at=r,wr===0&&ya(Yu))))))),at}function ug(){var at,$t,Wr;for(at=J,$t=[],Wr=dc();Wr!==r;)$t.push(Wr),Wr=dc();return $t!==r?(Wr=Hm(),Wr!==r?(ye=at,$t=Or(Wr),at=$t):(J=at,at=r)):(J=at,at=r),at}function Hm(){var at,$t,Wr;if(at=J,$t=[],Wr=Tb(),Wr!==r)for(;Wr!==r;)$t.push(Wr),Wr=Tb();else $t=r;return $t!==r&&(ye=at,$t=YA($t)),at=$t,at}function Tb(){var at,$t;return at=J,$t=rA(),$t!==r&&(ye=at,$t=ud($t)),at=$t,at===r&&(at=J,$t=Iv(),$t!==r&&(ye=at,$t=ud($t)),at=$t,at===r&&(at=J,$t=My(),$t!==r&&(ye=at,$t=ud($t)),at=$t,at===r&&(at=J,$t=QC(),$t!==r&&(ye=at,$t=ud($t)),at=$t))),at}function rA(){var at,$t,Wr,vn;return at=J,e.substr(J,2)===TA?($t=TA,J+=2):($t=r,wr===0&&ya(Ld)),$t!==r?(Wr=Ml(),Wr!==r?(e.charCodeAt(J)===39?(vn=jr,J++):(vn=r,wr===0&&ya(Gr)),vn!==r?(ye=at,$t=Ir(Wr),at=$t):(J=at,at=r)):(J=at,at=r)):(J=at,at=r),at}function Iv(){var at,$t,Wr,vn;return at=J,e.charCodeAt(J)===39?($t=jr,J++):($t=r,wr===0&&ya(Gr)),$t!==r?(Wr=Lo(),Wr!==r?(e.charCodeAt(J)===39?(vn=jr,J++):(vn=r,wr===0&&ya(Gr)),vn!==r?(ye=at,$t=Ir(Wr),at=$t):(J=at,at=r)):(J=at,at=r)):(J=at,at=r),at}function My(){var at,$t,Wr,vn;if(at=J,e.substr(J,2)===nn?($t=nn,J+=2):($t=r,wr===0&&ya(Cn)),$t!==r&&(ye=at,$t=Vn()),at=$t,at===r)if(at=J,e.charCodeAt(J)===34?($t=Ji,J++):($t=r,wr===0&&ya(Hr)),$t!==r){for(Wr=[],vn=wI();vn!==r;)Wr.push(vn),vn=wI();Wr!==r?(e.charCodeAt(J)===34?(vn=Ji,J++):(vn=r,wr===0&&ya(Hr)),vn!==r?(ye=at,$t=Ws(Wr),at=$t):(J=at,at=r)):(J=at,at=r)}else J=at,at=r;return at}function QC(){var at,$t,Wr;if(at=J,$t=[],Wr=Fi(),Wr!==r)for(;Wr!==r;)$t.push(Wr),Wr=Fi();else $t=r;return $t!==r&&(ye=at,$t=Ws($t)),at=$t,at}function wI(){var at,$t;return at=J,$t=Mi(),$t!==r&&(ye=at,$t=Ko($t)),at=$t,at===r&&(at=J,$t=Ay(),$t!==r&&(ye=at,$t=ai($t)),at=$t,at===r&&(at=J,$t=bE(),$t!==r&&(ye=at,$t=pa($t)),at=$t,at===r&&(at=J,$t=rs(),$t!==r&&(ye=at,$t=sg($t)),at=$t))),at}function Fi(){var at,$t;return at=J,$t=Mi(),$t!==r&&(ye=at,$t=Fu($t)),at=$t,at===r&&(at=J,$t=Ay(),$t!==r&&(ye=at,$t=Cg($t)),at=$t,at===r&&(at=J,$t=bE(),$t!==r&&(ye=at,$t=Zu($t)),at=$t,at===r&&(at=J,$t=uf(),$t!==r&&(ye=at,$t=Cl($t)),at=$t,at===r&&(at=J,$t=u2(),$t!==r&&(ye=at,$t=sg($t)),at=$t)))),at}function Lo(){var at,$t,Wr;for(at=J,$t=[],wi.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ya(ts));Wr!==r;)$t.push(Wr),wi.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ya(ts));return $t!==r&&(ye=at,$t=$i($t)),at=$t,at}function rs(){var at,$t,Wr;if(at=J,$t=[],Wr=vc(),Wr===r&&(Ga.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ya($s))),Wr!==r)for(;Wr!==r;)$t.push(Wr),Wr=vc(),Wr===r&&(Ga.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ya($s)));else $t=r;return $t!==r&&(ye=at,$t=$i($t)),at=$t,at}function vc(){var at,$t,Wr;return at=J,e.substr(J,2)===xl?($t=xl,J+=2):($t=r,wr===0&&ya(qo)),$t!==r&&(ye=at,$t=Na()),at=$t,at===r&&(at=J,e.charCodeAt(J)===92?($t=wu,J++):($t=r,wr===0&&ya(Dg)),$t!==r?(hl.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ya(au)),Wr!==r?(ye=at,$t=Lg(Wr),at=$t):(J=at,at=r)):(J=at,at=r)),at}function Ml(){var at,$t,Wr;for(at=J,$t=[],Wr=DA(),Wr===r&&(wi.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ya(ts)));Wr!==r;)$t.push(Wr),Wr=DA(),Wr===r&&(wi.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ya(ts)));return $t!==r&&(ye=at,$t=$i($t)),at=$t,at}function DA(){var at,$t,Wr;return at=J,e.substr(J,2)===cf?($t=cf,J+=2):($t=r,wr===0&&ya(Td)),$t!==r&&(ye=at,$t=ei()),at=$t,at===r&&(at=J,e.substr(J,2)===Qa?($t=Qa,J+=2):($t=r,wr===0&&ya(Rt)),$t!==r&&(ye=at,$t=kl()),at=$t,at===r&&(at=J,e.charCodeAt(J)===92?($t=wu,J++):($t=r,wr===0&&ya(Dg)),$t!==r?(Hu.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ya(us)),Wr!==r?(ye=at,$t=og(),at=$t):(J=at,at=r)):(J=at,at=r),at===r&&(at=J,e.substr(J,2)===on?($t=on,J+=2):($t=r,wr===0&&ya(Bo)),$t!==r&&(ye=at,$t=$g()),at=$t,at===r&&(at=J,e.substr(J,2)===cA?($t=cA,J+=2):($t=r,wr===0&&ya(HA)),$t!==r&&(ye=at,$t=No()),at=$t,at===r&&(at=J,e.substr(J,2)===Hl?($t=Hl,J+=2):($t=r,wr===0&&ya(Ff)),$t!==r&&(ye=at,$t=Vd()),at=$t,at===r&&(at=J,e.substr(J,2)===bA?($t=bA,J+=2):($t=r,wr===0&&ya(Os)),$t!==r&&(ye=at,$t=Hi()),at=$t,at===r&&(at=J,e.substr(J,2)===ec?($t=ec,J+=2):($t=r,wr===0&&ya(ll)),$t!==r&&(ye=at,$t=Ts()),at=$t,at===r&&(at=J,e.charCodeAt(J)===92?($t=wu,J++):($t=r,wr===0&&ya(Dg)),$t!==r?(NA.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ya(Ud)),Wr!==r?(ye=at,$t=Lg(Wr),at=$t):(J=at,at=r)):(J=at,at=r),at===r&&(at=Lf()))))))))),at}function Lf(){var at,$t,Wr,vn,os,wo,fg,mg,gf,rI,gC,Nb;return at=J,e.charCodeAt(J)===92?($t=wu,J++):($t=r,wr===0&&ya(Dg)),$t!==r?(Wr=jd(),Wr!==r?(ye=at,$t=Ra(Wr),at=$t):(J=at,at=r)):(J=at,at=r),at===r&&(at=J,e.substr(J,2)===ys?($t=ys,J+=2):($t=r,wr===0&&ya(Xa)),$t!==r?(Wr=J,vn=J,os=jd(),os!==r?(wo=bh(),wo!==r?(os=[os,wo],vn=os):(J=vn,vn=r)):(J=vn,vn=r),vn===r&&(vn=jd()),vn!==r?Wr=e.substring(Wr,J):Wr=vn,Wr!==r?(ye=at,$t=Ra(Wr),at=$t):(J=at,at=r)):(J=at,at=r),at===r&&(at=J,e.substr(J,2)===cm?($t=cm,J+=2):($t=r,wr===0&&ya(eo)),$t!==r?(Wr=J,vn=J,os=bh(),os!==r?(wo=bh(),wo!==r?(fg=bh(),fg!==r?(mg=bh(),mg!==r?(os=[os,wo,fg,mg],vn=os):(J=vn,vn=r)):(J=vn,vn=r)):(J=vn,vn=r)):(J=vn,vn=r),vn!==r?Wr=e.substring(Wr,J):Wr=vn,Wr!==r?(ye=at,$t=Ra(Wr),at=$t):(J=at,at=r)):(J=at,at=r),at===r&&(at=J,e.substr(J,2)===ps?($t=ps,J+=2):($t=r,wr===0&&ya(oc)),$t!==r?(Wr=J,vn=J,os=bh(),os!==r?(wo=bh(),wo!==r?(fg=bh(),fg!==r?(mg=bh(),mg!==r?(gf=bh(),gf!==r?(rI=bh(),rI!==r?(gC=bh(),gC!==r?(Nb=bh(),Nb!==r?(os=[os,wo,fg,mg,gf,rI,gC,Nb],vn=os):(J=vn,vn=r)):(J=vn,vn=r)):(J=vn,vn=r)):(J=vn,vn=r)):(J=vn,vn=r)):(J=vn,vn=r)):(J=vn,vn=r)):(J=vn,vn=r),vn!==r?Wr=e.substring(Wr,J):Wr=vn,Wr!==r?(ye=at,$t=TC(Wr),at=$t):(J=at,at=r)):(J=at,at=r)))),at}function jd(){var at;return pI.test(e.charAt(J))?(at=e.charAt(J),J++):(at=r,wr===0&&ya(SI)),at}function bh(){var at;return Bl.test(e.charAt(J))?(at=e.charAt(J),J++):(at=r,wr===0&&ya(il)),at}function u2(){var at,$t,Wr,vn,os;if(at=J,$t=[],Wr=J,e.charCodeAt(J)===92?(vn=wu,J++):(vn=r,wr===0&&ya(Dg)),vn!==r?(e.length>J?(os=e.charAt(J),J++):(os=r,wr===0&&ya(LA)),os!==r?(ye=Wr,vn=Lg(os),Wr=vn):(J=Wr,Wr=r)):(J=Wr,Wr=r),Wr===r&&(Wr=J,e.substr(J,2)===lf?(vn=lf,J+=2):(vn=r,wr===0&&ya(za)),vn!==r&&(ye=Wr,vn=iu()),Wr=vn,Wr===r&&(Wr=J,vn=J,wr++,os=mS(),wr--,os===r?vn=void 0:(J=vn,vn=r),vn!==r?(e.length>J?(os=e.charAt(J),J++):(os=r,wr===0&&ya(LA)),os!==r?(ye=Wr,vn=Lg(os),Wr=vn):(J=Wr,Wr=r)):(J=Wr,Wr=r))),Wr!==r)for(;Wr!==r;)$t.push(Wr),Wr=J,e.charCodeAt(J)===92?(vn=wu,J++):(vn=r,wr===0&&ya(Dg)),vn!==r?(e.length>J?(os=e.charAt(J),J++):(os=r,wr===0&&ya(LA)),os!==r?(ye=Wr,vn=Lg(os),Wr=vn):(J=Wr,Wr=r)):(J=Wr,Wr=r),Wr===r&&(Wr=J,e.substr(J,2)===lf?(vn=lf,J+=2):(vn=r,wr===0&&ya(za)),vn!==r&&(ye=Wr,vn=iu()),Wr=vn,Wr===r&&(Wr=J,vn=J,wr++,os=mS(),wr--,os===r?vn=void 0:(J=vn,vn=r),vn!==r?(e.length>J?(os=e.charAt(J),J++):(os=r,wr===0&&ya(LA)),os!==r?(ye=Wr,vn=Lg(os),Wr=vn):(J=Wr,Wr=r)):(J=Wr,Wr=r)));else $t=r;return $t!==r&&(ye=at,$t=$i($t)),at=$t,at}function Dm(){var at,$t,Wr,vn,os,wo;if(at=J,e.charCodeAt(J)===45?($t=ii,J++):($t=r,wr===0&&ya(NC)),$t===r&&(e.charCodeAt(J)===43?($t=Jh,J++):($t=r,wr===0&&ya(Tm))),$t===r&&($t=null),$t!==r){if(Wr=[],In.test(e.charAt(J))?(vn=e.charAt(J),J++):(vn=r,wr===0&&ya(Br)),vn!==r)for(;vn!==r;)Wr.push(vn),In.test(e.charAt(J))?(vn=e.charAt(J),J++):(vn=r,wr===0&&ya(Br));else Wr=r;if(Wr!==r)if(e.charCodeAt(J)===46?(vn=_l,J++):(vn=r,wr===0&&ya(Og)),vn!==r){if(os=[],In.test(e.charAt(J))?(wo=e.charAt(J),J++):(wo=r,wr===0&&ya(Br)),wo!==r)for(;wo!==r;)os.push(wo),In.test(e.charAt(J))?(wo=e.charAt(J),J++):(wo=r,wr===0&&ya(Br));else os=r;os!==r?(ye=at,$t=sp($t,Wr,os),at=$t):(J=at,at=r)}else J=at,at=r;else J=at,at=r}else J=at,at=r;if(at===r){if(at=J,e.charCodeAt(J)===45?($t=ii,J++):($t=r,wr===0&&ya(NC)),$t===r&&(e.charCodeAt(J)===43?($t=Jh,J++):($t=r,wr===0&&ya(Tm))),$t===r&&($t=null),$t!==r){if(Wr=[],In.test(e.charAt(J))?(vn=e.charAt(J),J++):(vn=r,wr===0&&ya(Br)),vn!==r)for(;vn!==r;)Wr.push(vn),In.test(e.charAt(J))?(vn=e.charAt(J),J++):(vn=r,wr===0&&ya(Br));else Wr=r;Wr!==r?(ye=at,$t=lm($t,Wr),at=$t):(J=at,at=r)}else J=at,at=r;if(at===r&&(at=J,$t=bE(),$t!==r&&(ye=at,$t=ch($t)),at=$t,at===r&&(at=J,$t=k0(),$t!==r&&(ye=at,$t=Xl($t)),at=$t,at===r)))if(at=J,e.charCodeAt(J)===40?($t=Ue,J++):($t=r,wr===0&&ya(Je)),$t!==r){for(Wr=[],vn=dc();vn!==r;)Wr.push(vn),vn=dc();if(Wr!==r)if(vn=E_(),vn!==r){for(os=[],wo=dc();wo!==r;)os.push(wo),wo=dc();os!==r?(e.charCodeAt(J)===41?(wo=Xe,J++):(wo=r,wr===0&&ya(ft)),wo!==r?(ye=at,$t=Wp(vn),at=$t):(J=at,at=r)):(J=at,at=r)}else J=at,at=r;else J=at,at=r}else J=at,at=r}return at}function gy(){var at,$t,Wr,vn,os,wo,fg,mg;if(at=J,$t=Dm(),$t!==r){for(Wr=[],vn=J,os=[],wo=dc();wo!==r;)os.push(wo),wo=dc();if(os!==r)if(e.charCodeAt(J)===42?(wo=uC,J++):(wo=r,wr===0&&ya(fs)),wo===r&&(e.charCodeAt(J)===47?(wo=Ao,J++):(wo=r,wr===0&&ya(Do))),wo!==r){for(fg=[],mg=dc();mg!==r;)fg.push(mg),mg=dc();fg!==r?(mg=Dm(),mg!==r?(ye=vn,os=zl($t,wo,mg),vn=os):(J=vn,vn=r)):(J=vn,vn=r)}else J=vn,vn=r;else J=vn,vn=r;for(;vn!==r;){for(Wr.push(vn),vn=J,os=[],wo=dc();wo!==r;)os.push(wo),wo=dc();if(os!==r)if(e.charCodeAt(J)===42?(wo=uC,J++):(wo=r,wr===0&&ya(fs)),wo===r&&(e.charCodeAt(J)===47?(wo=Ao,J++):(wo=r,wr===0&&ya(Do))),wo!==r){for(fg=[],mg=dc();mg!==r;)fg.push(mg),mg=dc();fg!==r?(mg=Dm(),mg!==r?(ye=vn,os=zl($t,wo,mg),vn=os):(J=vn,vn=r)):(J=vn,vn=r)}else J=vn,vn=r;else J=vn,vn=r}Wr!==r?(ye=at,$t=Nr($t,Wr),at=$t):(J=at,at=r)}else J=at,at=r;return at}function E_(){var at,$t,Wr,vn,os,wo,fg,mg;if(at=J,$t=gy(),$t!==r){for(Wr=[],vn=J,os=[],wo=dc();wo!==r;)os.push(wo),wo=dc();if(os!==r)if(e.charCodeAt(J)===43?(wo=Jh,J++):(wo=r,wr===0&&ya(Tm)),wo===r&&(e.charCodeAt(J)===45?(wo=ii,J++):(wo=r,wr===0&&ya(NC))),wo!==r){for(fg=[],mg=dc();mg!==r;)fg.push(mg),mg=dc();fg!==r?(mg=gy(),mg!==r?(ye=vn,os=Nn($t,wo,mg),vn=os):(J=vn,vn=r)):(J=vn,vn=r)}else J=vn,vn=r;else J=vn,vn=r;for(;vn!==r;){for(Wr.push(vn),vn=J,os=[],wo=dc();wo!==r;)os.push(wo),wo=dc();if(os!==r)if(e.charCodeAt(J)===43?(wo=Jh,J++):(wo=r,wr===0&&ya(Tm)),wo===r&&(e.charCodeAt(J)===45?(wo=ii,J++):(wo=r,wr===0&&ya(NC))),wo!==r){for(fg=[],mg=dc();mg!==r;)fg.push(mg),mg=dc();fg!==r?(mg=gy(),mg!==r?(ye=vn,os=Nn($t,wo,mg),vn=os):(J=vn,vn=r)):(J=vn,vn=r)}else J=vn,vn=r;else J=vn,vn=r}Wr!==r?(ye=at,$t=Nr($t,Wr),at=$t):(J=at,at=r)}else J=at,at=r;return at}function Mi(){var at,$t,Wr,vn,os,wo;if(at=J,e.substr(J,3)===Di?($t=Di,J+=3):($t=r,wr===0&&ya(na)),$t!==r){for(Wr=[],vn=dc();vn!==r;)Wr.push(vn),vn=dc();if(Wr!==r)if(vn=E_(),vn!==r){for(os=[],wo=dc();wo!==r;)os.push(wo),wo=dc();os!==r?(e.substr(J,2)===Ks?(wo=Ks,J+=2):(wo=r,wr===0&&ya(Li)),wo!==r?(ye=at,$t=Zl(vn),at=$t):(J=at,at=r)):(J=at,at=r)}else J=at,at=r;else J=at,at=r}else J=at,at=r;return at}function Ay(){var at,$t,Wr,vn;return at=J,e.substr(J,2)===RA?($t=RA,J+=2):($t=r,wr===0&&ya(Nd)),$t!==r?(Wr=Uh(),Wr!==r?(e.charCodeAt(J)===41?(vn=Xe,J++):(vn=r,wr===0&&ya(ft)),vn!==r?(ye=at,$t=WI(Wr),at=$t):(J=at,at=r)):(J=at,at=r)):(J=at,at=r),at}function bE(){var at,$t,Wr,vn,os,wo;return at=J,e.substr(J,2)===pl?($t=pl,J+=2):($t=r,wr===0&&ya(Qm)),$t!==r?(Wr=k0(),Wr!==r?(e.substr(J,2)===f1?(vn=f1,J+=2):(vn=r,wr===0&&ya(fv)),vn!==r?(os=ql(),os!==r?(e.charCodeAt(J)===125?(wo=Ot,J++):(wo=r,wr===0&&ya(dr)),wo!==r?(ye=at,$t=eA(Wr,os),at=$t):(J=at,at=r)):(J=at,at=r)):(J=at,at=r)):(J=at,at=r)):(J=at,at=r),at===r&&(at=J,e.substr(J,2)===pl?($t=pl,J+=2):($t=r,wr===0&&ya(Qm)),$t!==r?(Wr=k0(),Wr!==r?(e.substr(J,3)===Nm?(vn=Nm,J+=3):(vn=r,wr===0&&ya(lh)),vn!==r?(ye=at,$t=Oy(Wr),at=$t):(J=at,at=r)):(J=at,at=r)):(J=at,at=r),at===r&&(at=J,e.substr(J,2)===pl?($t=pl,J+=2):($t=r,wr===0&&ya(Qm)),$t!==r?(Wr=k0(),Wr!==r?(e.substr(J,2)===vp?(vn=vp,J+=2):(vn=r,wr===0&&ya(tA)),vn!==r?(os=ql(),os!==r?(e.charCodeAt(J)===125?(wo=Ot,J++):(wo=r,wr===0&&ya(dr)),wo!==r?(ye=at,$t=R0(Wr,os),at=$t):(J=at,at=r)):(J=at,at=r)):(J=at,at=r)):(J=at,at=r)):(J=at,at=r),at===r&&(at=J,e.substr(J,2)===pl?($t=pl,J+=2):($t=r,wr===0&&ya(Qm)),$t!==r?(Wr=k0(),Wr!==r?(e.substr(J,3)===_h?(vn=_h,J+=3):(vn=r,wr===0&&ya(ly)),vn!==r?(ye=at,$t=uc(Wr),at=$t):(J=at,at=r)):(J=at,at=r)):(J=at,at=r),at===r&&(at=J,e.substr(J,2)===pl?($t=pl,J+=2):($t=r,wr===0&&ya(Qm)),$t!==r?(Wr=k0(),Wr!==r?(e.charCodeAt(J)===125?(vn=Ot,J++):(vn=r,wr===0&&ya(dr)),vn!==r?(ye=at,$t=b_(Wr),at=$t):(J=at,at=r)):(J=at,at=r)):(J=at,at=r),at===r&&(at=J,e.charCodeAt(J)===36?($t=Sb,J++):($t=r,wr===0&&ya(um)),$t!==r?(Wr=k0(),Wr!==r?(ye=at,$t=b_(Wr),at=$t):(J=at,at=r)):(J=at,at=r)))))),at}function uf(){var at,$t,Wr;return at=J,$t=g2(),$t!==r?(ye=J,Wr=uh($t),Wr?Wr=void 0:Wr=r,Wr!==r?(ye=at,$t=pg($t),at=$t):(J=at,at=r)):(J=at,at=r),at}function g2(){var at,$t,Wr,vn,os;if(at=J,$t=[],Wr=J,vn=J,wr++,os=I1(),wr--,os===r?vn=void 0:(J=vn,vn=r),vn!==r?(e.length>J?(os=e.charAt(J),J++):(os=r,wr===0&&ya(LA)),os!==r?(ye=Wr,vn=Lg(os),Wr=vn):(J=Wr,Wr=r)):(J=Wr,Wr=r),Wr!==r)for(;Wr!==r;)$t.push(Wr),Wr=J,vn=J,wr++,os=I1(),wr--,os===r?vn=void 0:(J=vn,vn=r),vn!==r?(e.length>J?(os=e.charAt(J),J++):(os=r,wr===0&&ya(LA)),os!==r?(ye=Wr,vn=Lg(os),Wr=vn):(J=Wr,Wr=r)):(J=Wr,Wr=r);else $t=r;return $t!==r&&(ye=at,$t=$i($t)),at=$t,at}function EE(){var at,$t,Wr;if(at=J,$t=[],gm.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ya(wb)),Wr!==r)for(;Wr!==r;)$t.push(Wr),gm.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ya(wb));else $t=r;return $t!==r&&(ye=at,$t=Rm()),at=$t,at}function k0(){var at,$t,Wr;if(at=J,$t=[],PI.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ya(Ef)),Wr!==r)for(;Wr!==r;)$t.push(Wr),PI.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ya(Ef));else $t=r;return $t!==r&&(ye=at,$t=Rm()),at=$t,at}function mS(){var at;return eI.test(e.charAt(J))?(at=e.charAt(J),J++):(at=r,wr===0&&ya(Zf)),at}function I1(){var at;return hE.test(e.charAt(J))?(at=e.charAt(J),J++):(at=r,wr===0&&ya(uy)),at}function dc(){var at,$t;if(at=[],ie.test(e.charAt(J))?($t=e.charAt(J),J++):($t=r,wr===0&&ya(w)),$t!==r)for(;$t!==r;)at.push($t),ie.test(e.charAt(J))?($t=e.charAt(J),J++):($t=r,wr===0&&ya(w));else at=r;return at}if(Yn=a(),Yn!==r&&J===e.length)return Yn;throw Yn!==r&&J{"use strict";Object.defineProperty(vD,"__esModule",{value:!0});vD.stringifyShell=void 0;vD.parseShell=Z2s;vD.stringifyShellLine=e9e;vD.stringifyShell=e9e;vD.stringifyCommandLine=mQt;vD.stringifyCommandLineThen=pjr;vD.stringifyCommandChain=hQt;vD.stringifyCommandChainThen=fjr;vD.stringifyCommand=Ijr;vD.stringifyEnvSegment=CQt;vD.stringifyArgument=Cjr;vD.stringifyRedirectArgument=srt;vD.stringifyValueArgument=Kye;vD.stringifyArgumentSegment=_jr;vD.stringifyArithmeticExpression=_Qt;var F2s=djr();function Z2s(e,t={isGlobPattern:()=>!1}){try{return(0,F2s.parse)(e,t)}catch(r){throw r.location&&(r.message=r.message.replace(/(\.)?$/,` (line ${r.location.start.line}, column ${r.location.start.column})$1`)),r}}function e9e(e,{endSemicolon:t=!1}={}){return e.map(({command:r,type:s},a)=>`${mQt(r)}${s===";"?a!==e.length-1||t?";":"":" &"}`).join(" ")}function mQt(e){return`${hQt(e.chain)}${e.then?` ${pjr(e.then)}`:""}`}function pjr(e){return`${e.type} ${mQt(e.line)}`}function hQt(e){return`${Ijr(e)}${e.then?` ${fjr(e.then)}`:""}`}function fjr(e){return`${e.type} ${hQt(e.chain)}`}function Ijr(e){switch(e.type){case"command":return`${e.envs.length>0?`${e.envs.map(t=>CQt(t)).join(" ")} `:""}${e.args.map(t=>Cjr(t)).join(" ")}`;case"subshell":return`(${e9e(e.subshell)})${e.args.length>0?` ${e.args.map(t=>srt(t)).join(" ")}`:""}`;case"group":return`{ ${e9e(e.group,{endSemicolon:!0})} }${e.args.length>0?` ${e.args.map(t=>srt(t)).join(" ")}`:""}`;case"envs":return e.envs.map(t=>CQt(t)).join(" ");default:throw new Error(`Unsupported command type: "${e.type}"`)}}function CQt(e){return`${e.name}=${e.args[0]?Kye(e.args[0]):""}`}function Cjr(e){switch(e.type){case"redirection":return srt(e);case"argument":return Kye(e);default:throw new Error(`Unsupported argument type: "${e.type}"`)}}function srt(e){return`${e.subtype} ${e.args.map(t=>Kye(t)).join(" ")}`}function Kye(e){return e.segments.map(t=>_jr(t)).join("")}var mjr=new Map([["\f","\\f"],[` -`,"\\n"],["\r","\\r"],[" ","\\t"],["\v","\\v"],["\0","\\0"]]),L2s=new Map([["\\","\\\\"],["$","\\$"],['"','\\"'],...Array.from(mjr,([e,t])=>[e,`"$'${t}'"`])]),hjr=e=>mjr.get(e)??`\\x${e.charCodeAt(0).toString(16).padStart(2,"0")}`,V2s=e=>L2s.get(e)??`"$'${hjr(e)}'"`;function _jr(e){let t=(s,a)=>a?`"${s}"`:s,r=s=>s===""?"''":s.match(/[()}<>$|&;"'\n\t ]/)?s.match(/['\t\p{C}]/u)?s.match(/'/)?`"${s.replace(/["$\t\p{C}]/u,V2s)}"`:`$'${s.replace(/[\t\p{C}]/u,hjr)}'`:`'${s}'`:s;switch(e.type){case"text":return r(e.text);case"glob":return e.pattern;case"shell":return t(`$(${e9e(e.shell)})`,e.quoted);case"variable":return t(typeof e.defaultValue>"u"?typeof e.alternativeValue>"u"?`\${${e.name}}`:e.alternativeValue.length===0?`\${${e.name}:+}`:`\${${e.name}:+${e.alternativeValue.map(s=>Kye(s)).join(" ")}}`:e.defaultValue.length===0?`\${${e.name}:-}`:`\${${e.name}:-${e.defaultValue.map(s=>Kye(s)).join(" ")}}`,e.quoted);case"arithmetic":return`$(( ${_Qt(e.arithmetic)} ))`;default:throw new Error(`Unsupported argument segment type: "${e.type}"`)}}function _Qt(e){let t=a=>{switch(a){case"addition":return"+";case"subtraction":return"-";case"multiplication":return"*";case"division":return"/";default:throw new Error(`Can't extract operator from arithmetic expression of type "${a}"`)}},r=(a,o)=>o?`( ${a} )`:a,s=a=>r(_Qt(a),!["number","variable"].includes(a.type));switch(e.type){case"number":return String(e.value);case"variable":return e.name;default:return`${s(e.left)} ${t(e.type)} ${s(e.right)}`}}});var Ejr=z((KFc,bjr)=>{"use strict";function W2s(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function Wge(e,t,r,s){this.message=e,this.expected=t,this.found=r,this.location=s,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Wge)}W2s(Wge,Error);Wge.buildMessage=function(e,t){var r={literal:function(m){return'"'+a(m.text)+'"'},class:function(m){var y="",B;for(B=0;B0){for(B=1,v=1;Bfe&&(fe=le,pe=[]),pe.push(Br))}function dr(Br,tr){return new Wge(Br,null,null,tr)}function Ar(Br,tr,gn){return new Wge(Wge.buildMessage(Br,tr),Br,tr,gn)}function or(){var Br,tr,gn,Gn;return Br=le,tr=Fr(),tr!==r?(e.charCodeAt(le)===47?(gn=o,le++):(gn=r,he===0&&Ot(g)),gn!==r?(Gn=Fr(),Gn!==r?(ae=Br,tr=p(tr,Gn),Br=tr):(le=Br,Br=r)):(le=Br,Br=r)):(le=Br,Br=r),Br===r&&(Br=le,tr=Fr(),tr!==r&&(ae=Br,tr=f(tr)),Br=tr),Br}function Fr(){var Br,tr,gn,Gn;return Br=le,tr=$r(),tr!==r?(e.charCodeAt(le)===64?(gn=m,le++):(gn=r,he===0&&Ot(y)),gn!==r?(Gn=In(),Gn!==r?(ae=Br,tr=B(tr,Gn),Br=tr):(le=Br,Br=r)):(le=Br,Br=r)):(le=Br,Br=r),Br===r&&(Br=le,tr=$r(),tr!==r&&(ae=Br,tr=v(tr)),Br=tr),Br}function $r(){var Br,tr,gn,Gn,we;return Br=le,e.charCodeAt(le)===64?(tr=m,le++):(tr=r,he===0&&Ot(y)),tr!==r?(gn=Or(),gn!==r?(e.charCodeAt(le)===47?(Gn=o,le++):(Gn=r,he===0&&Ot(g)),Gn!==r?(we=Or(),we!==r?(ae=Br,tr=G(),Br=tr):(le=Br,Br=r)):(le=Br,Br=r)):(le=Br,Br=r)):(le=Br,Br=r),Br===r&&(Br=le,tr=Or(),tr!==r&&(ae=Br,tr=G()),Br=tr),Br}function Or(){var Br,tr,gn;if(Br=le,tr=[],T.test(e.charAt(le))?(gn=e.charAt(le),le++):(gn=r,he===0&&Ot(O)),gn!==r)for(;gn!==r;)tr.push(gn),T.test(e.charAt(le))?(gn=e.charAt(le),le++):(gn=r,he===0&&Ot(O));else tr=r;return tr!==r&&(ae=Br,tr=G()),Br=tr,Br}function In(){var Br,tr,gn;if(Br=le,tr=[],X.test(e.charAt(le))?(gn=e.charAt(le),le++):(gn=r,he===0&&Ot(U)),gn!==r)for(;gn!==r;)tr.push(gn),X.test(e.charAt(le))?(gn=e.charAt(le),le++):(gn=r,he===0&&Ot(U));else tr=r;return tr!==r&&(ae=Br,tr=G()),Br=tr,Br}if(be=a(),be!==r&&le===e.length)return be;throw be!==r&&le{"use strict";Object.defineProperty(ort,"__esModule",{value:!0});ort.parseResolution=M2s;ort.stringifyResolution=Q2s;var O2s=Ejr();function M2s(e){let t=e.match(/^\*{1,2}\/(.*)/);if(t)throw new Error(`The override for '${e}' includes a glob pattern. Glob patterns have been removed since their behaviours don't match what you'd expect. Set the override to '${t[1]}' instead.`);try{return(0,O2s.parse)(e)}catch(r){throw r.location&&(r.message=r.message.replace(/(\.)?$/,` (line ${r.location.start.line}, column ${r.location.start.column})$1`)),r}}function Q2s(e){let t="";return e.from&&(t+=e.from.fullName,e.from.description&&(t+=`@${e.from.description}`),t+="/"),t+=e.descriptor.fullName,e.descriptor.description&&(t+=`@${e.descriptor.description}`),t}});var Oge=z((zFc,Pge)=>{"use strict";function vjr(e){return typeof e>"u"||e===null}function Y2s(e){return typeof e=="object"&&e!==null}function H2s(e){return Array.isArray(e)?e:vjr(e)?[]:[e]}function X2s(e,t){var r,s,a,o;if(t)for(o=Object.keys(t),r=0,s=o.length;r{"use strict";function t9e(e,t){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=t,this.message=(this.reason||"(unknown reason)")+(this.mark?" "+this.mark.toString():""),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}t9e.prototype=Object.create(Error.prototype);t9e.prototype.constructor=t9e;t9e.prototype.toString=function(t){var r=this.name+": ";return r+=this.reason||"(unknown reason)",!t&&this.mark&&(r+=" "+this.mark.toString()),r};Sjr.exports=t9e});var Njr=z(($Fc,Tjr)=>{"use strict";var wjr=Oge();function yQt(e,t,r,s,a){this.name=e,this.buffer=t,this.position=r,this.line=s,this.column=a}yQt.prototype.getSnippet=function(t,r){var s,a,o,g,p;if(!this.buffer)return null;for(t=t||4,r=r||75,s="",a=this.position;a>0&&`\0\r +`}function HQt(e,t){return t.replace(/\r?\n/g,m1s(e))}});var rj=z(Ott=>{"use strict";Object.defineProperty(Ott,"__esModule",{value:!0});Ott.ProxiedFS=void 0;var h1s=Yge(),YQt=class extends h1s.FakeFS{getExtractHint(t){return this.baseFs.getExtractHint(t)}resolve(t){return this.mapFromBase(this.baseFs.resolve(this.mapToBase(t)))}getRealPath(){return this.mapFromBase(this.baseFs.getRealPath())}async openPromise(t,r,s){return this.baseFs.openPromise(this.mapToBase(t),r,s)}openSync(t,r,s){return this.baseFs.openSync(this.mapToBase(t),r,s)}async opendirPromise(t,r){return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(t),r),{path:t})}opendirSync(t,r){return Object.assign(this.baseFs.opendirSync(this.mapToBase(t),r),{path:t})}async readPromise(t,r,s,a,o){return await this.baseFs.readPromise(t,r,s,a,o)}readSync(t,r,s,a,o){return this.baseFs.readSync(t,r,s,a,o)}async writePromise(t,r,s,a,o){return typeof r=="string"?await this.baseFs.writePromise(t,r,s):await this.baseFs.writePromise(t,r,s,a,o)}writeSync(t,r,s,a,o){return typeof r=="string"?this.baseFs.writeSync(t,r,s):this.baseFs.writeSync(t,r,s,a,o)}async closePromise(t){return this.baseFs.closePromise(t)}closeSync(t){this.baseFs.closeSync(t)}createReadStream(t,r){return this.baseFs.createReadStream(t!==null?this.mapToBase(t):t,r)}createWriteStream(t,r){return this.baseFs.createWriteStream(t!==null?this.mapToBase(t):t,r)}async realpathPromise(t){return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(t)))}realpathSync(t){return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(t)))}async existsPromise(t){return this.baseFs.existsPromise(this.mapToBase(t))}existsSync(t){return this.baseFs.existsSync(this.mapToBase(t))}accessSync(t,r){return this.baseFs.accessSync(this.mapToBase(t),r)}async accessPromise(t,r){return this.baseFs.accessPromise(this.mapToBase(t),r)}async statPromise(t,r){return this.baseFs.statPromise(this.mapToBase(t),r)}statSync(t,r){return this.baseFs.statSync(this.mapToBase(t),r)}async fstatPromise(t,r){return this.baseFs.fstatPromise(t,r)}fstatSync(t,r){return this.baseFs.fstatSync(t,r)}lstatPromise(t,r){return this.baseFs.lstatPromise(this.mapToBase(t),r)}lstatSync(t,r){return this.baseFs.lstatSync(this.mapToBase(t),r)}async fchmodPromise(t,r){return this.baseFs.fchmodPromise(t,r)}fchmodSync(t,r){return this.baseFs.fchmodSync(t,r)}async chmodPromise(t,r){return this.baseFs.chmodPromise(this.mapToBase(t),r)}chmodSync(t,r){return this.baseFs.chmodSync(this.mapToBase(t),r)}async fchownPromise(t,r,s){return this.baseFs.fchownPromise(t,r,s)}fchownSync(t,r,s){return this.baseFs.fchownSync(t,r,s)}async chownPromise(t,r,s){return this.baseFs.chownPromise(this.mapToBase(t),r,s)}chownSync(t,r,s){return this.baseFs.chownSync(this.mapToBase(t),r,s)}async renamePromise(t,r){return this.baseFs.renamePromise(this.mapToBase(t),this.mapToBase(r))}renameSync(t,r){return this.baseFs.renameSync(this.mapToBase(t),this.mapToBase(r))}async copyFilePromise(t,r,s=0){return this.baseFs.copyFilePromise(this.mapToBase(t),this.mapToBase(r),s)}copyFileSync(t,r,s=0){return this.baseFs.copyFileSync(this.mapToBase(t),this.mapToBase(r),s)}async appendFilePromise(t,r,s){return this.baseFs.appendFilePromise(this.fsMapToBase(t),r,s)}appendFileSync(t,r,s){return this.baseFs.appendFileSync(this.fsMapToBase(t),r,s)}async writeFilePromise(t,r,s){return this.baseFs.writeFilePromise(this.fsMapToBase(t),r,s)}writeFileSync(t,r,s){return this.baseFs.writeFileSync(this.fsMapToBase(t),r,s)}async unlinkPromise(t){return this.baseFs.unlinkPromise(this.mapToBase(t))}unlinkSync(t){return this.baseFs.unlinkSync(this.mapToBase(t))}async utimesPromise(t,r,s){return this.baseFs.utimesPromise(this.mapToBase(t),r,s)}utimesSync(t,r,s){return this.baseFs.utimesSync(this.mapToBase(t),r,s)}async lutimesPromise(t,r,s){return this.baseFs.lutimesPromise(this.mapToBase(t),r,s)}lutimesSync(t,r,s){return this.baseFs.lutimesSync(this.mapToBase(t),r,s)}async mkdirPromise(t,r){return this.baseFs.mkdirPromise(this.mapToBase(t),r)}mkdirSync(t,r){return this.baseFs.mkdirSync(this.mapToBase(t),r)}async rmdirPromise(t,r){return this.baseFs.rmdirPromise(this.mapToBase(t),r)}rmdirSync(t,r){return this.baseFs.rmdirSync(this.mapToBase(t),r)}async rmPromise(t,r){return this.baseFs.rmPromise(this.mapToBase(t),r)}rmSync(t,r){return this.baseFs.rmSync(this.mapToBase(t),r)}async linkPromise(t,r){return this.baseFs.linkPromise(this.mapToBase(t),this.mapToBase(r))}linkSync(t,r){return this.baseFs.linkSync(this.mapToBase(t),this.mapToBase(r))}async symlinkPromise(t,r,s){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkPromise(this.mapToBase(t),a,s);let o=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),g=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),o);return this.baseFs.symlinkPromise(g,a,s)}symlinkSync(t,r,s){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkSync(this.mapToBase(t),a,s);let o=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),g=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),o);return this.baseFs.symlinkSync(g,a,s)}async readFilePromise(t,r){return this.baseFs.readFilePromise(this.fsMapToBase(t),r)}readFileSync(t,r){return this.baseFs.readFileSync(this.fsMapToBase(t),r)}readdirPromise(t,r){return this.baseFs.readdirPromise(this.mapToBase(t),r)}readdirSync(t,r){return this.baseFs.readdirSync(this.mapToBase(t),r)}async readlinkPromise(t){return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(t)))}readlinkSync(t){return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(t)))}async truncatePromise(t,r){return this.baseFs.truncatePromise(this.mapToBase(t),r)}truncateSync(t,r){return this.baseFs.truncateSync(this.mapToBase(t),r)}async ftruncatePromise(t,r){return this.baseFs.ftruncatePromise(t,r)}ftruncateSync(t,r){return this.baseFs.ftruncateSync(t,r)}watch(t,r,s){return this.baseFs.watch(this.mapToBase(t),r,s)}watchFile(t,r,s){return this.baseFs.watchFile(this.mapToBase(t),r,s)}unwatchFile(t,r){return this.baseFs.unwatchFile(this.mapToBase(t),r)}fsMapToBase(t){return typeof t=="number"?t:this.mapToBase(t)}};Ott.ProxiedFS=YQt});var s7r=z(Qtt=>{"use strict";Object.defineProperty(Qtt,"__esModule",{value:!0});Qtt.AliasFS=void 0;var _1s=rj(),XQt=class extends _1s.ProxiedFS{constructor(t,{baseFs:r,pathUtils:s}){super(s),this.target=t,this.baseFs=r}getRealPath(){return this.target}getBaseFs(){return this.baseFs}mapFromBase(t){return t}mapToBase(t){return t}};Qtt.AliasFS=XQt});var Xge=z(Mtt=>{"use strict";Object.defineProperty(Mtt,"__esModule",{value:!0});Mtt.NodeFS=void 0;var y1s=(Oa(),Ai(Pa)),b1s=y1s.__importDefault(xt("fs")),E1s=Yge(),gu=BL();function o7r(e){let t=e;return typeof e.path=="string"&&(t.path=gu.npath.toPortablePath(e.path)),t}var JQt=class extends E1s.BasePortableFakeFS{constructor(t=b1s.default){super(),this.realFs=t}getExtractHint(){return!1}getRealPath(){return gu.PortablePath.root}resolve(t){return gu.ppath.resolve(t)}async openPromise(t,r,s){return await new Promise((a,o)=>{this.realFs.open(gu.npath.fromPortablePath(t),r,s,this.makeCallback(a,o))})}openSync(t,r,s){return this.realFs.openSync(gu.npath.fromPortablePath(t),r,s)}async opendirPromise(t,r){return await new Promise((s,a)=>{typeof r<"u"?this.realFs.opendir(gu.npath.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.opendir(gu.npath.fromPortablePath(t),this.makeCallback(s,a))}).then(s=>{let a=s;return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a})}opendirSync(t,r){let a=typeof r<"u"?this.realFs.opendirSync(gu.npath.fromPortablePath(t),r):this.realFs.opendirSync(gu.npath.fromPortablePath(t));return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a}async readPromise(t,r,s=0,a=0,o=-1){return await new Promise((g,p)=>{this.realFs.read(t,r,s,a,o,(f,m)=>{f?p(f):g(m)})})}readSync(t,r,s,a,o){return this.realFs.readSync(t,r,s,a,o)}async writePromise(t,r,s,a,o){return await new Promise((g,p)=>typeof r=="string"?this.realFs.write(t,r,s,this.makeCallback(g,p)):this.realFs.write(t,r,s,a,o,this.makeCallback(g,p)))}writeSync(t,r,s,a,o){return typeof r=="string"?this.realFs.writeSync(t,r,s):this.realFs.writeSync(t,r,s,a,o)}async closePromise(t){await new Promise((r,s)=>{this.realFs.close(t,this.makeCallback(r,s))})}closeSync(t){this.realFs.closeSync(t)}createReadStream(t,r){let s=t!==null?gu.npath.fromPortablePath(t):t;return this.realFs.createReadStream(s,r)}createWriteStream(t,r){let s=t!==null?gu.npath.fromPortablePath(t):t;return this.realFs.createWriteStream(s,r)}async realpathPromise(t){return await new Promise((r,s)=>{this.realFs.realpath(gu.npath.fromPortablePath(t),{},this.makeCallback(r,s))}).then(r=>gu.npath.toPortablePath(r))}realpathSync(t){return gu.npath.toPortablePath(this.realFs.realpathSync(gu.npath.fromPortablePath(t),{}))}async existsPromise(t){return await new Promise(r=>{this.realFs.exists(gu.npath.fromPortablePath(t),r)})}accessSync(t,r){return this.realFs.accessSync(gu.npath.fromPortablePath(t),r)}async accessPromise(t,r){return await new Promise((s,a)=>{this.realFs.access(gu.npath.fromPortablePath(t),r,this.makeCallback(s,a))})}existsSync(t){return this.realFs.existsSync(gu.npath.fromPortablePath(t))}async statPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.stat(gu.npath.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.stat(gu.npath.fromPortablePath(t),this.makeCallback(s,a))})}statSync(t,r){return r?this.realFs.statSync(gu.npath.fromPortablePath(t),r):this.realFs.statSync(gu.npath.fromPortablePath(t))}async fstatPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.fstat(t,r,this.makeCallback(s,a)):this.realFs.fstat(t,this.makeCallback(s,a))})}fstatSync(t,r){return r?this.realFs.fstatSync(t,r):this.realFs.fstatSync(t)}async lstatPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.lstat(gu.npath.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.lstat(gu.npath.fromPortablePath(t),this.makeCallback(s,a))})}lstatSync(t,r){return r?this.realFs.lstatSync(gu.npath.fromPortablePath(t),r):this.realFs.lstatSync(gu.npath.fromPortablePath(t))}async fchmodPromise(t,r){return await new Promise((s,a)=>{this.realFs.fchmod(t,r,this.makeCallback(s,a))})}fchmodSync(t,r){return this.realFs.fchmodSync(t,r)}async chmodPromise(t,r){return await new Promise((s,a)=>{this.realFs.chmod(gu.npath.fromPortablePath(t),r,this.makeCallback(s,a))})}chmodSync(t,r){return this.realFs.chmodSync(gu.npath.fromPortablePath(t),r)}async fchownPromise(t,r,s){return await new Promise((a,o)=>{this.realFs.fchown(t,r,s,this.makeCallback(a,o))})}fchownSync(t,r,s){return this.realFs.fchownSync(t,r,s)}async chownPromise(t,r,s){return await new Promise((a,o)=>{this.realFs.chown(gu.npath.fromPortablePath(t),r,s,this.makeCallback(a,o))})}chownSync(t,r,s){return this.realFs.chownSync(gu.npath.fromPortablePath(t),r,s)}async renamePromise(t,r){return await new Promise((s,a)=>{this.realFs.rename(gu.npath.fromPortablePath(t),gu.npath.fromPortablePath(r),this.makeCallback(s,a))})}renameSync(t,r){return this.realFs.renameSync(gu.npath.fromPortablePath(t),gu.npath.fromPortablePath(r))}async copyFilePromise(t,r,s=0){return await new Promise((a,o)=>{this.realFs.copyFile(gu.npath.fromPortablePath(t),gu.npath.fromPortablePath(r),s,this.makeCallback(a,o))})}copyFileSync(t,r,s=0){return this.realFs.copyFileSync(gu.npath.fromPortablePath(t),gu.npath.fromPortablePath(r),s)}async appendFilePromise(t,r,s){return await new Promise((a,o)=>{let g=typeof t=="string"?gu.npath.fromPortablePath(t):t;s?this.realFs.appendFile(g,r,s,this.makeCallback(a,o)):this.realFs.appendFile(g,r,this.makeCallback(a,o))})}appendFileSync(t,r,s){let a=typeof t=="string"?gu.npath.fromPortablePath(t):t;s?this.realFs.appendFileSync(a,r,s):this.realFs.appendFileSync(a,r)}async writeFilePromise(t,r,s){return await new Promise((a,o)=>{let g=typeof t=="string"?gu.npath.fromPortablePath(t):t;s?this.realFs.writeFile(g,r,s,this.makeCallback(a,o)):this.realFs.writeFile(g,r,this.makeCallback(a,o))})}writeFileSync(t,r,s){let a=typeof t=="string"?gu.npath.fromPortablePath(t):t;s?this.realFs.writeFileSync(a,r,s):this.realFs.writeFileSync(a,r)}async unlinkPromise(t){return await new Promise((r,s)=>{this.realFs.unlink(gu.npath.fromPortablePath(t),this.makeCallback(r,s))})}unlinkSync(t){return this.realFs.unlinkSync(gu.npath.fromPortablePath(t))}async utimesPromise(t,r,s){return await new Promise((a,o)=>{this.realFs.utimes(gu.npath.fromPortablePath(t),r,s,this.makeCallback(a,o))})}utimesSync(t,r,s){this.realFs.utimesSync(gu.npath.fromPortablePath(t),r,s)}async lutimesPromise(t,r,s){return await new Promise((a,o)=>{this.realFs.lutimes(gu.npath.fromPortablePath(t),r,s,this.makeCallback(a,o))})}lutimesSync(t,r,s){this.realFs.lutimesSync(gu.npath.fromPortablePath(t),r,s)}async mkdirPromise(t,r){return await new Promise((s,a)=>{this.realFs.mkdir(gu.npath.fromPortablePath(t),r,this.makeCallback(s,a))})}mkdirSync(t,r){return this.realFs.mkdirSync(gu.npath.fromPortablePath(t),r)}async rmdirPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.rmdir(gu.npath.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.rmdir(gu.npath.fromPortablePath(t),this.makeCallback(s,a))})}rmdirSync(t,r){return this.realFs.rmdirSync(gu.npath.fromPortablePath(t),r)}async rmPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.rm(gu.npath.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.rm(gu.npath.fromPortablePath(t),this.makeCallback(s,a))})}rmSync(t,r){return this.realFs.rmSync(gu.npath.fromPortablePath(t),r)}async linkPromise(t,r){return await new Promise((s,a)=>{this.realFs.link(gu.npath.fromPortablePath(t),gu.npath.fromPortablePath(r),this.makeCallback(s,a))})}linkSync(t,r){return this.realFs.linkSync(gu.npath.fromPortablePath(t),gu.npath.fromPortablePath(r))}async symlinkPromise(t,r,s){return await new Promise((a,o)=>{this.realFs.symlink(gu.npath.fromPortablePath(t.replace(/\/+$/,"")),gu.npath.fromPortablePath(r),s,this.makeCallback(a,o))})}symlinkSync(t,r,s){return this.realFs.symlinkSync(gu.npath.fromPortablePath(t.replace(/\/+$/,"")),gu.npath.fromPortablePath(r),s)}async readFilePromise(t,r){return await new Promise((s,a)=>{let o=typeof t=="string"?gu.npath.fromPortablePath(t):t;this.realFs.readFile(o,r,this.makeCallback(s,a))})}readFileSync(t,r){let s=typeof t=="string"?gu.npath.fromPortablePath(t):t;return this.realFs.readFileSync(s,r)}async readdirPromise(t,r){return await new Promise((s,a)=>{r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdir(gu.npath.fromPortablePath(t),r,this.makeCallback(o=>s(o.map(o7r)),a)):this.realFs.readdir(gu.npath.fromPortablePath(t),r,this.makeCallback(o=>s(o.map(gu.npath.toPortablePath)),a)):this.realFs.readdir(gu.npath.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.readdir(gu.npath.fromPortablePath(t),this.makeCallback(s,a))})}readdirSync(t,r){return r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdirSync(gu.npath.fromPortablePath(t),r).map(o7r):this.realFs.readdirSync(gu.npath.fromPortablePath(t),r).map(gu.npath.toPortablePath):this.realFs.readdirSync(gu.npath.fromPortablePath(t),r):this.realFs.readdirSync(gu.npath.fromPortablePath(t))}async readlinkPromise(t){return await new Promise((r,s)=>{this.realFs.readlink(gu.npath.fromPortablePath(t),this.makeCallback(r,s))}).then(r=>gu.npath.toPortablePath(r))}readlinkSync(t){return gu.npath.toPortablePath(this.realFs.readlinkSync(gu.npath.fromPortablePath(t)))}async truncatePromise(t,r){return await new Promise((s,a)=>{this.realFs.truncate(gu.npath.fromPortablePath(t),r,this.makeCallback(s,a))})}truncateSync(t,r){return this.realFs.truncateSync(gu.npath.fromPortablePath(t),r)}async ftruncatePromise(t,r){return await new Promise((s,a)=>{this.realFs.ftruncate(t,r,this.makeCallback(s,a))})}ftruncateSync(t,r){return this.realFs.ftruncateSync(t,r)}watch(t,r,s){return this.realFs.watch(gu.npath.fromPortablePath(t),r,s)}watchFile(t,r,s){return this.realFs.watchFile(gu.npath.fromPortablePath(t),r,s)}unwatchFile(t,r){return this.realFs.unwatchFile(gu.npath.fromPortablePath(t),r)}makeCallback(t,r){return(s,a)=>{s?r(s):t(a)}}};Mtt.NodeFS=JQt});var a7r=z(Htt=>{"use strict";Object.defineProperty(Htt,"__esModule",{value:!0});Htt.CwdFS=void 0;var B1s=Xge(),v1s=rj(),UQt=BL(),KQt=class extends v1s.ProxiedFS{constructor(t,{baseFs:r=new B1s.NodeFS}={}){super(UQt.ppath),this.target=this.pathUtils.normalize(t),this.baseFs=r}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.target)}resolve(t){return this.pathUtils.isAbsolute(t)?UQt.ppath.normalize(t):this.baseFs.resolve(UQt.ppath.join(this.target,t))}mapFromBase(t){return t}mapToBase(t){return this.pathUtils.isAbsolute(t)?t:this.pathUtils.join(this.target,t)}};Htt.CwdFS=KQt});var l7r=z(Xtt=>{"use strict";Object.defineProperty(Xtt,"__esModule",{value:!0});Xtt.JailFS=void 0;var S1s=Xge(),w1s=rj(),Ytt=BL(),c7r=Ytt.PortablePath.root,jQt=class extends w1s.ProxiedFS{constructor(t,{baseFs:r=new S1s.NodeFS}={}){super(Ytt.ppath),this.target=this.pathUtils.resolve(Ytt.PortablePath.root,t),this.baseFs=r}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.pathUtils.relative(Ytt.PortablePath.root,this.target))}getTarget(){return this.target}getBaseFs(){return this.baseFs}mapToBase(t){let r=this.pathUtils.normalize(t);if(this.pathUtils.isAbsolute(t))return this.pathUtils.resolve(this.target,this.pathUtils.relative(c7r,t));if(r.match(/^\.\.\/?/))throw new Error(`Resolving this path (${t}) would escape the jail`);return this.pathUtils.resolve(this.target,t)}mapFromBase(t){return this.pathUtils.resolve(c7r,this.pathUtils.relative(this.target,t))}};Xtt.JailFS=jQt});var u7r=z(Jtt=>{"use strict";Object.defineProperty(Jtt,"__esModule",{value:!0});Jtt.LazyFS=void 0;var T1s=rj(),zQt=class extends T1s.ProxiedFS{constructor(t,r){super(r),this.instance=null,this.factory=t}get baseFs(){return this.instance||(this.instance=this.factory()),this.instance}set baseFs(t){this.instance=t}mapFromBase(t){return t}mapToBase(t){return t}};Jtt.LazyFS=zQt});var g7r=z(jtt=>{"use strict";Object.defineProperty(jtt,"__esModule",{value:!0});jtt.MountFS=void 0;var N1s=(Oa(),Ai(Pa)),Jye=xt("fs"),R1s=Yge(),D1s=Xge(),Utt=QQt(),vL=N1s.__importStar(xtt()),Ktt=BL(),SL=4278190080,qQt=class extends R1s.BasePortableFakeFS{constructor({baseFs:t=new D1s.NodeFS,filter:r=null,magicByte:s=42,maxOpenFiles:a=1/0,useCache:o=!0,maxAge:g=5e3,typeCheck:p=Jye.constants.S_IFREG,getMountPoint:f,factoryPromise:m,factorySync:y}){if(Math.floor(s)!==s||!(s>1&&s<=127))throw new Error("The magic byte must be set to a round value between 1 and 127 included");super(),this.fdMap=new Map,this.nextFd=3,this.isMount=new Set,this.notMount=new Set,this.realPaths=new Map,this.limitOpenFilesTimeout=null,this.baseFs=t,this.mountInstances=o?new Map:null,this.factoryPromise=m,this.factorySync=y,this.filter=r,this.getMountPoint=f,this.magic=s<<24,this.maxAge=g,this.maxOpenFiles=a,this.typeCheck=p}getExtractHint(t){return this.baseFs.getExtractHint(t)}getRealPath(){return this.baseFs.getRealPath()}saveAndClose(){if((0,Utt.unwatchAllFiles)(this),this.mountInstances)for(let[t,{childFs:r}]of this.mountInstances.entries())r.saveAndClose?.(),this.mountInstances.delete(t)}discardAndClose(){if((0,Utt.unwatchAllFiles)(this),this.mountInstances)for(let[t,{childFs:r}]of this.mountInstances.entries())r.discardAndClose?.(),this.mountInstances.delete(t)}resolve(t){return this.baseFs.resolve(t)}remapFd(t,r){let s=this.nextFd++|this.magic;return this.fdMap.set(s,[t,r]),s}async openPromise(t,r,s){return await this.makeCallPromise(t,async()=>await this.baseFs.openPromise(t,r,s),async(a,{subPath:o})=>this.remapFd(a,await a.openPromise(o,r,s)))}openSync(t,r,s){return this.makeCallSync(t,()=>this.baseFs.openSync(t,r,s),(a,{subPath:o})=>this.remapFd(a,a.openSync(o,r,s)))}async opendirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.opendirPromise(t,r),async(s,{subPath:a})=>await s.opendirPromise(a,r),{requireSubpath:!1})}opendirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.opendirSync(t,r),(s,{subPath:a})=>s.opendirSync(a,r),{requireSubpath:!1})}async readPromise(t,r,s,a,o){if((t&SL)!==this.magic)return await this.baseFs.readPromise(t,r,s,a,o);let g=this.fdMap.get(t);if(typeof g>"u")throw vL.EBADF("read");let[p,f]=g;return await p.readPromise(f,r,s,a,o)}readSync(t,r,s,a,o){if((t&SL)!==this.magic)return this.baseFs.readSync(t,r,s,a,o);let g=this.fdMap.get(t);if(typeof g>"u")throw vL.EBADF("readSync");let[p,f]=g;return p.readSync(f,r,s,a,o)}async writePromise(t,r,s,a,o){if((t&SL)!==this.magic)return typeof r=="string"?await this.baseFs.writePromise(t,r,s):await this.baseFs.writePromise(t,r,s,a,o);let g=this.fdMap.get(t);if(typeof g>"u")throw vL.EBADF("write");let[p,f]=g;return typeof r=="string"?await p.writePromise(f,r,s):await p.writePromise(f,r,s,a,o)}writeSync(t,r,s,a,o){if((t&SL)!==this.magic)return typeof r=="string"?this.baseFs.writeSync(t,r,s):this.baseFs.writeSync(t,r,s,a,o);let g=this.fdMap.get(t);if(typeof g>"u")throw vL.EBADF("writeSync");let[p,f]=g;return typeof r=="string"?p.writeSync(f,r,s):p.writeSync(f,r,s,a,o)}async closePromise(t){if((t&SL)!==this.magic)return await this.baseFs.closePromise(t);let r=this.fdMap.get(t);if(typeof r>"u")throw vL.EBADF("close");this.fdMap.delete(t);let[s,a]=r;return await s.closePromise(a)}closeSync(t){if((t&SL)!==this.magic)return this.baseFs.closeSync(t);let r=this.fdMap.get(t);if(typeof r>"u")throw vL.EBADF("closeSync");this.fdMap.delete(t);let[s,a]=r;return s.closeSync(a)}createReadStream(t,r){return t===null?this.baseFs.createReadStream(t,r):this.makeCallSync(t,()=>this.baseFs.createReadStream(t,r),(s,{archivePath:a,subPath:o})=>{let g=s.createReadStream(o,r);return g.path=Ktt.npath.fromPortablePath(this.pathUtils.join(a,o)),g})}createWriteStream(t,r){return t===null?this.baseFs.createWriteStream(t,r):this.makeCallSync(t,()=>this.baseFs.createWriteStream(t,r),(s,{subPath:a})=>s.createWriteStream(a,r))}async realpathPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.realpathPromise(t),async(r,{archivePath:s,subPath:a})=>{let o=this.realPaths.get(s);return typeof o>"u"&&(o=await this.baseFs.realpathPromise(s),this.realPaths.set(s,o)),this.pathUtils.join(o,this.pathUtils.relative(Ktt.PortablePath.root,await r.realpathPromise(a)))})}realpathSync(t){return this.makeCallSync(t,()=>this.baseFs.realpathSync(t),(r,{archivePath:s,subPath:a})=>{let o=this.realPaths.get(s);return typeof o>"u"&&(o=this.baseFs.realpathSync(s),this.realPaths.set(s,o)),this.pathUtils.join(o,this.pathUtils.relative(Ktt.PortablePath.root,r.realpathSync(a)))})}async existsPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.existsPromise(t),async(r,{subPath:s})=>await r.existsPromise(s))}existsSync(t){return this.makeCallSync(t,()=>this.baseFs.existsSync(t),(r,{subPath:s})=>r.existsSync(s))}async accessPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.accessPromise(t,r),async(s,{subPath:a})=>await s.accessPromise(a,r))}accessSync(t,r){return this.makeCallSync(t,()=>this.baseFs.accessSync(t,r),(s,{subPath:a})=>s.accessSync(a,r))}async statPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.statPromise(t,r),async(s,{subPath:a})=>await s.statPromise(a,r))}statSync(t,r){return this.makeCallSync(t,()=>this.baseFs.statSync(t,r),(s,{subPath:a})=>s.statSync(a,r))}async fstatPromise(t,r){if((t&SL)!==this.magic)return this.baseFs.fstatPromise(t,r);let s=this.fdMap.get(t);if(typeof s>"u")throw vL.EBADF("fstat");let[a,o]=s;return a.fstatPromise(o,r)}fstatSync(t,r){if((t&SL)!==this.magic)return this.baseFs.fstatSync(t,r);let s=this.fdMap.get(t);if(typeof s>"u")throw vL.EBADF("fstatSync");let[a,o]=s;return a.fstatSync(o,r)}async lstatPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.lstatPromise(t,r),async(s,{subPath:a})=>await s.lstatPromise(a,r))}lstatSync(t,r){return this.makeCallSync(t,()=>this.baseFs.lstatSync(t,r),(s,{subPath:a})=>s.lstatSync(a,r))}async fchmodPromise(t,r){if((t&SL)!==this.magic)return this.baseFs.fchmodPromise(t,r);let s=this.fdMap.get(t);if(typeof s>"u")throw vL.EBADF("fchmod");let[a,o]=s;return a.fchmodPromise(o,r)}fchmodSync(t,r){if((t&SL)!==this.magic)return this.baseFs.fchmodSync(t,r);let s=this.fdMap.get(t);if(typeof s>"u")throw vL.EBADF("fchmodSync");let[a,o]=s;return a.fchmodSync(o,r)}async chmodPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.chmodPromise(t,r),async(s,{subPath:a})=>await s.chmodPromise(a,r))}chmodSync(t,r){return this.makeCallSync(t,()=>this.baseFs.chmodSync(t,r),(s,{subPath:a})=>s.chmodSync(a,r))}async fchownPromise(t,r,s){if((t&SL)!==this.magic)return this.baseFs.fchownPromise(t,r,s);let a=this.fdMap.get(t);if(typeof a>"u")throw vL.EBADF("fchown");let[o,g]=a;return o.fchownPromise(g,r,s)}fchownSync(t,r,s){if((t&SL)!==this.magic)return this.baseFs.fchownSync(t,r,s);let a=this.fdMap.get(t);if(typeof a>"u")throw vL.EBADF("fchownSync");let[o,g]=a;return o.fchownSync(g,r,s)}async chownPromise(t,r,s){return await this.makeCallPromise(t,async()=>await this.baseFs.chownPromise(t,r,s),async(a,{subPath:o})=>await a.chownPromise(o,r,s))}chownSync(t,r,s){return this.makeCallSync(t,()=>this.baseFs.chownSync(t,r,s),(a,{subPath:o})=>a.chownSync(o,r,s))}async renamePromise(t,r){return await this.makeCallPromise(t,async()=>await this.makeCallPromise(r,async()=>await this.baseFs.renamePromise(t,r),async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),async(s,{subPath:a})=>await this.makeCallPromise(r,async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},async(o,{subPath:g})=>{if(s!==o)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return await s.renamePromise(a,g)}))}renameSync(t,r){return this.makeCallSync(t,()=>this.makeCallSync(r,()=>this.baseFs.renameSync(t,r),()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),(s,{subPath:a})=>this.makeCallSync(r,()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},(o,{subPath:g})=>{if(s!==o)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return s.renameSync(a,g)}))}async copyFilePromise(t,r,s=0){let a=async(o,g,p,f)=>{if(s&Jye.constants.COPYFILE_FICLONE_FORCE)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${g}' -> ${f}'`),{code:"EXDEV"});if(s&Jye.constants.COPYFILE_EXCL&&await this.existsPromise(g))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${g}' -> '${f}'`),{code:"EEXIST"});let m;try{m=await o.readFilePromise(g)}catch{throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${g}' -> '${f}'`),{code:"EINVAL"})}await p.writeFilePromise(f,m)};return await this.makeCallPromise(t,async()=>await this.makeCallPromise(r,async()=>await this.baseFs.copyFilePromise(t,r,s),async(o,{subPath:g})=>await a(this.baseFs,t,o,g)),async(o,{subPath:g})=>await this.makeCallPromise(r,async()=>await a(o,g,this.baseFs,r),async(p,{subPath:f})=>o!==p?await a(o,g,p,f):await o.copyFilePromise(g,f,s)))}copyFileSync(t,r,s=0){let a=(o,g,p,f)=>{if(s&Jye.constants.COPYFILE_FICLONE_FORCE)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${g}' -> ${f}'`),{code:"EXDEV"});if(s&Jye.constants.COPYFILE_EXCL&&this.existsSync(g))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${g}' -> '${f}'`),{code:"EEXIST"});let m;try{m=o.readFileSync(g)}catch{throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${g}' -> '${f}'`),{code:"EINVAL"})}p.writeFileSync(f,m)};return this.makeCallSync(t,()=>this.makeCallSync(r,()=>this.baseFs.copyFileSync(t,r,s),(o,{subPath:g})=>a(this.baseFs,t,o,g)),(o,{subPath:g})=>this.makeCallSync(r,()=>a(o,g,this.baseFs,r),(p,{subPath:f})=>o!==p?a(o,g,p,f):o.copyFileSync(g,f,s)))}async appendFilePromise(t,r,s){return await this.makeCallPromise(t,async()=>await this.baseFs.appendFilePromise(t,r,s),async(a,{subPath:o})=>await a.appendFilePromise(o,r,s))}appendFileSync(t,r,s){return this.makeCallSync(t,()=>this.baseFs.appendFileSync(t,r,s),(a,{subPath:o})=>a.appendFileSync(o,r,s))}async writeFilePromise(t,r,s){return await this.makeCallPromise(t,async()=>await this.baseFs.writeFilePromise(t,r,s),async(a,{subPath:o})=>await a.writeFilePromise(o,r,s))}writeFileSync(t,r,s){return this.makeCallSync(t,()=>this.baseFs.writeFileSync(t,r,s),(a,{subPath:o})=>a.writeFileSync(o,r,s))}async unlinkPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.unlinkPromise(t),async(r,{subPath:s})=>await r.unlinkPromise(s))}unlinkSync(t){return this.makeCallSync(t,()=>this.baseFs.unlinkSync(t),(r,{subPath:s})=>r.unlinkSync(s))}async utimesPromise(t,r,s){return await this.makeCallPromise(t,async()=>await this.baseFs.utimesPromise(t,r,s),async(a,{subPath:o})=>await a.utimesPromise(o,r,s))}utimesSync(t,r,s){return this.makeCallSync(t,()=>this.baseFs.utimesSync(t,r,s),(a,{subPath:o})=>a.utimesSync(o,r,s))}async lutimesPromise(t,r,s){return await this.makeCallPromise(t,async()=>await this.baseFs.lutimesPromise(t,r,s),async(a,{subPath:o})=>await a.lutimesPromise(o,r,s))}lutimesSync(t,r,s){return this.makeCallSync(t,()=>this.baseFs.lutimesSync(t,r,s),(a,{subPath:o})=>a.lutimesSync(o,r,s))}async mkdirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.mkdirPromise(t,r),async(s,{subPath:a})=>await s.mkdirPromise(a,r))}mkdirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.mkdirSync(t,r),(s,{subPath:a})=>s.mkdirSync(a,r))}async rmdirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.rmdirPromise(t,r),async(s,{subPath:a})=>await s.rmdirPromise(a,r))}rmdirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.rmdirSync(t,r),(s,{subPath:a})=>s.rmdirSync(a,r))}async rmPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.rmPromise(t,r),async(s,{subPath:a})=>await s.rmPromise(a,r))}rmSync(t,r){return this.makeCallSync(t,()=>this.baseFs.rmSync(t,r),(s,{subPath:a})=>s.rmSync(a,r))}async linkPromise(t,r){return await this.makeCallPromise(r,async()=>await this.baseFs.linkPromise(t,r),async(s,{subPath:a})=>await s.linkPromise(t,a))}linkSync(t,r){return this.makeCallSync(r,()=>this.baseFs.linkSync(t,r),(s,{subPath:a})=>s.linkSync(t,a))}async symlinkPromise(t,r,s){return await this.makeCallPromise(r,async()=>await this.baseFs.symlinkPromise(t,r,s),async(a,{subPath:o})=>await a.symlinkPromise(t,o))}symlinkSync(t,r,s){return this.makeCallSync(r,()=>this.baseFs.symlinkSync(t,r,s),(a,{subPath:o})=>a.symlinkSync(t,o))}async readFilePromise(t,r){return this.makeCallPromise(t,async()=>await this.baseFs.readFilePromise(t,r),async(s,{subPath:a})=>await s.readFilePromise(a,r))}readFileSync(t,r){return this.makeCallSync(t,()=>this.baseFs.readFileSync(t,r),(s,{subPath:a})=>s.readFileSync(a,r))}async readdirPromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.readdirPromise(t,r),async(s,{subPath:a})=>await s.readdirPromise(a,r),{requireSubpath:!1})}readdirSync(t,r){return this.makeCallSync(t,()=>this.baseFs.readdirSync(t,r),(s,{subPath:a})=>s.readdirSync(a,r),{requireSubpath:!1})}async readlinkPromise(t){return await this.makeCallPromise(t,async()=>await this.baseFs.readlinkPromise(t),async(r,{subPath:s})=>await r.readlinkPromise(s))}readlinkSync(t){return this.makeCallSync(t,()=>this.baseFs.readlinkSync(t),(r,{subPath:s})=>r.readlinkSync(s))}async truncatePromise(t,r){return await this.makeCallPromise(t,async()=>await this.baseFs.truncatePromise(t,r),async(s,{subPath:a})=>await s.truncatePromise(a,r))}truncateSync(t,r){return this.makeCallSync(t,()=>this.baseFs.truncateSync(t,r),(s,{subPath:a})=>s.truncateSync(a,r))}async ftruncatePromise(t,r){if((t&SL)!==this.magic)return this.baseFs.ftruncatePromise(t,r);let s=this.fdMap.get(t);if(typeof s>"u")throw vL.EBADF("ftruncate");let[a,o]=s;return a.ftruncatePromise(o,r)}ftruncateSync(t,r){if((t&SL)!==this.magic)return this.baseFs.ftruncateSync(t,r);let s=this.fdMap.get(t);if(typeof s>"u")throw vL.EBADF("ftruncateSync");let[a,o]=s;return a.ftruncateSync(o,r)}watch(t,r,s){return this.makeCallSync(t,()=>this.baseFs.watch(t,r,s),(a,{subPath:o})=>a.watch(o,r,s))}watchFile(t,r,s){return this.makeCallSync(t,()=>this.baseFs.watchFile(t,r,s),()=>(0,Utt.watchFile)(this,t,r,s))}unwatchFile(t,r){return this.makeCallSync(t,()=>this.baseFs.unwatchFile(t,r),()=>(0,Utt.unwatchFile)(this,t,r))}async makeCallPromise(t,r,s,{requireSubpath:a=!0}={}){if(typeof t!="string")return await r();let o=this.resolve(t),g=this.findMount(o);return g?a&&g.subPath==="/"?await r():await this.getMountPromise(g.archivePath,async p=>await s(p,g)):await r()}makeCallSync(t,r,s,{requireSubpath:a=!0}={}){if(typeof t!="string")return r();let o=this.resolve(t),g=this.findMount(o);return!g||a&&g.subPath==="/"?r():this.getMountSync(g.archivePath,p=>s(p,g))}findMount(t){if(this.filter&&!this.filter.test(t))return null;let r="";for(;;){let s=t.substring(r.length),a=this.getMountPoint(s,r);if(!a)return null;if(r=this.pathUtils.join(r,a),!this.isMount.has(r)){if(this.notMount.has(r))continue;try{if(this.typeCheck!==null&&(this.baseFs.lstatSync(r).mode&Jye.constants.S_IFMT)!==this.typeCheck){this.notMount.add(r);continue}}catch{return null}this.isMount.add(r)}return{archivePath:r,subPath:this.pathUtils.join(Ktt.PortablePath.root,t.substring(r.length))}}}limitOpenFiles(t){if(this.mountInstances===null)return;let r=Date.now(),s=r+this.maxAge,a=t===null?0:this.mountInstances.size-t;for(let[o,{childFs:g,expiresAt:p,refCount:f}]of this.mountInstances.entries())if(!(f!==0||g.hasOpenFileHandles?.())){if(r>=p){g.saveAndClose?.(),this.mountInstances.delete(o),a-=1;continue}else if(t===null||a<=0){s=p;break}g.saveAndClose?.(),this.mountInstances.delete(o),a-=1}this.limitOpenFilesTimeout===null&&(t===null&&this.mountInstances.size>0||t!==null)&&isFinite(s)&&(this.limitOpenFilesTimeout=setTimeout(()=>{this.limitOpenFilesTimeout=null,this.limitOpenFiles(null)},s-r).unref())}async getMountPromise(t,r){if(this.mountInstances){let s=this.mountInstances.get(t);if(!s){let a=await this.factoryPromise(this.baseFs,t);s=this.mountInstances.get(t),s||(s={childFs:a(),expiresAt:0,refCount:0})}this.mountInstances.delete(t),this.limitOpenFiles(this.maxOpenFiles-1),this.mountInstances.set(t,s),s.expiresAt=Date.now()+this.maxAge,s.refCount+=1;try{return await r(s.childFs)}finally{s.refCount-=1}}else{let s=(await this.factoryPromise(this.baseFs,t))();try{return await r(s)}finally{s.saveAndClose?.()}}}getMountSync(t,r){if(this.mountInstances){let s=this.mountInstances.get(t);return s||(s={childFs:this.factorySync(this.baseFs,t),expiresAt:0,refCount:0}),this.mountInstances.delete(t),this.limitOpenFiles(this.maxOpenFiles-1),this.mountInstances.set(t,s),s.expiresAt=Date.now()+this.maxAge,r(s.childFs)}else{let s=this.factorySync(this.baseFs,t);try{return r(s)}finally{s.saveAndClose?.()}}}};jtt.MountFS=qQt});var A7r=z(ztt=>{"use strict";Object.defineProperty(ztt,"__esModule",{value:!0});ztt.NoFS=void 0;var x1s=Yge(),k1s=BL(),Rg=()=>Object.assign(new Error("ENOSYS: unsupported filesystem access"),{code:"ENOSYS"}),$Le=class extends x1s.FakeFS{constructor(){super(k1s.ppath)}getExtractHint(){throw Rg()}getRealPath(){throw Rg()}resolve(){throw Rg()}async openPromise(){throw Rg()}openSync(){throw Rg()}async opendirPromise(){throw Rg()}opendirSync(){throw Rg()}async readPromise(){throw Rg()}readSync(){throw Rg()}async writePromise(){throw Rg()}writeSync(){throw Rg()}async closePromise(){throw Rg()}closeSync(){throw Rg()}createWriteStream(){throw Rg()}createReadStream(){throw Rg()}async realpathPromise(){throw Rg()}realpathSync(){throw Rg()}async readdirPromise(){throw Rg()}readdirSync(){throw Rg()}async existsPromise(t){throw Rg()}existsSync(t){throw Rg()}async accessPromise(){throw Rg()}accessSync(){throw Rg()}async statPromise(){throw Rg()}statSync(){throw Rg()}async fstatPromise(t){throw Rg()}fstatSync(t){throw Rg()}async lstatPromise(t){throw Rg()}lstatSync(t){throw Rg()}async fchmodPromise(){throw Rg()}fchmodSync(){throw Rg()}async chmodPromise(){throw Rg()}chmodSync(){throw Rg()}async fchownPromise(){throw Rg()}fchownSync(){throw Rg()}async chownPromise(){throw Rg()}chownSync(){throw Rg()}async mkdirPromise(){throw Rg()}mkdirSync(){throw Rg()}async rmdirPromise(){throw Rg()}rmdirSync(){throw Rg()}async rmPromise(){throw Rg()}rmSync(){throw Rg()}async linkPromise(){throw Rg()}linkSync(){throw Rg()}async symlinkPromise(){throw Rg()}symlinkSync(){throw Rg()}async renamePromise(){throw Rg()}renameSync(){throw Rg()}async copyFilePromise(){throw Rg()}copyFileSync(){throw Rg()}async appendFilePromise(){throw Rg()}appendFileSync(){throw Rg()}async writeFilePromise(){throw Rg()}writeFileSync(){throw Rg()}async unlinkPromise(){throw Rg()}unlinkSync(){throw Rg()}async utimesPromise(){throw Rg()}utimesSync(){throw Rg()}async lutimesPromise(){throw Rg()}lutimesSync(){throw Rg()}async readFilePromise(){throw Rg()}readFileSync(){throw Rg()}async readlinkPromise(){throw Rg()}readlinkSync(){throw Rg()}async truncatePromise(){throw Rg()}truncateSync(){throw Rg()}async ftruncatePromise(t,r){throw Rg()}ftruncateSync(t,r){throw Rg()}watch(){throw Rg()}watchFile(){throw Rg()}unwatchFile(){throw Rg()}};ztt.NoFS=$Le;$Le.instance=new $Le});var d7r=z(qtt=>{"use strict";Object.defineProperty(qtt,"__esModule",{value:!0});qtt.PosixFS=void 0;var G1s=rj(),$Qt=BL(),e5t=class extends G1s.ProxiedFS{constructor(t){super($Qt.npath),this.baseFs=t}mapFromBase(t){return $Qt.npath.fromPortablePath(t)}mapToBase(t){return $Qt.npath.toPortablePath(t)}};qtt.PosixFS=e5t});var p7r=z($tt=>{"use strict";Object.defineProperty($tt,"__esModule",{value:!0});$tt.VirtualFS=void 0;var F1s=Xge(),Z1s=rj(),gH=BL(),L1s=/^[0-9]+$/,t5t=/^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/,V1s=/^([^/]+-)?[a-f0-9]+$/,r5t=class e extends Z1s.ProxiedFS{static makeVirtualPath(t,r,s){if(gH.ppath.basename(t)!=="__virtual__")throw new Error('Assertion failed: Virtual folders must be named "__virtual__"');if(!gH.ppath.basename(r).match(V1s))throw new Error("Assertion failed: Virtual components must be ended by an hexadecimal hash");let o=gH.ppath.relative(gH.ppath.dirname(t),s).split("/"),g=0;for(;g{"use strict";Object.defineProperty(ert,"__esModule",{value:!0});ert.NodePathFS=void 0;var W1s=(Oa(),Ai(Pa)),f7r=W1s.__importDefault(xt("buffer")),P1s=xt("url"),O1s=xt("util"),Q1s=rj(),M1s=BL(),n5t=class extends Q1s.ProxiedFS{constructor(t){super(M1s.npath),this.baseFs=t}mapFromBase(t){return t}mapToBase(t){if(typeof t=="string")return t;if(t instanceof URL)return(0,P1s.fileURLToPath)(t);if(Buffer.isBuffer(t)){let r=t.toString();if(!H1s(t,r))throw new Error("Non-utf8 buffers are not supported at the moment. Please upvote the following issue if you encounter this error: https://github.com/yarnpkg/berry/issues/4942");return r}throw new Error(`Unsupported path type: ${(0,O1s.inspect)(t)}`)}};ert.NodePathFS=n5t;function H1s(e,t){return typeof f7r.default.isUtf8<"u"?f7r.default.isUtf8(e):Buffer.byteLength(t)===e.byteLength}});var y7r=z(nrt=>{"use strict";var C7r,m7r,h7r,_7r;Object.defineProperty(nrt,"__esModule",{value:!0});nrt.FileHandle=void 0;var Y1s=xt("readline"),_F=Symbol("kBaseFs"),ene=Symbol("kFd"),tne=Symbol("kClosePromise"),trt=Symbol("kCloseResolve"),rrt=Symbol("kCloseReject"),Uye=Symbol("kRefs"),AH=Symbol("kRef"),dH=Symbol("kUnref"),i5t=class{constructor(t,r){this[C7r]=1,this[m7r]=void 0,this[h7r]=void 0,this[_7r]=void 0,this[_F]=r,this[ene]=t}get fd(){return this[ene]}async appendFile(t,r){try{this[AH](this.appendFile);let s=(typeof r=="string"?r:r?.encoding)??void 0;return await this[_F].appendFilePromise(this.fd,t,s?{encoding:s}:void 0)}finally{this[dH]()}}async chown(t,r){try{return this[AH](this.chown),await this[_F].fchownPromise(this.fd,t,r)}finally{this[dH]()}}async chmod(t){try{return this[AH](this.chmod),await this[_F].fchmodPromise(this.fd,t)}finally{this[dH]()}}createReadStream(t){return this[_F].createReadStream(null,{...t,fd:this.fd})}createWriteStream(t){return this[_F].createWriteStream(null,{...t,fd:this.fd})}datasync(){throw new Error("Method not implemented.")}sync(){throw new Error("Method not implemented.")}async read(t,r,s,a){try{this[AH](this.read);let o;return Buffer.isBuffer(t)?o=t:(t??={},o=t.buffer??Buffer.alloc(16384),r=t.offset||0,s=t.length??o.byteLength,a=t.position??null),r??=0,s??=0,s===0?{bytesRead:s,buffer:o}:{bytesRead:await this[_F].readPromise(this.fd,o,r,s,a),buffer:o}}finally{this[dH]()}}async readFile(t){try{this[AH](this.readFile);let r=(typeof t=="string"?t:t?.encoding)??void 0;return await this[_F].readFilePromise(this.fd,r)}finally{this[dH]()}}readLines(t){return(0,Y1s.createInterface)({input:this.createReadStream(t),crlfDelay:1/0})}async stat(t){try{return this[AH](this.stat),await this[_F].fstatPromise(this.fd,t)}finally{this[dH]()}}async truncate(t){try{return this[AH](this.truncate),await this[_F].ftruncatePromise(this.fd,t)}finally{this[dH]()}}utimes(t,r){throw new Error("Method not implemented.")}async writeFile(t,r){try{this[AH](this.writeFile);let s=(typeof r=="string"?r:r?.encoding)??void 0;await this[_F].writeFilePromise(this.fd,t,s)}finally{this[dH]()}}async write(...t){try{if(this[AH](this.write),ArrayBuffer.isView(t[0])){let[r,s,a,o]=t;return{bytesWritten:await this[_F].writePromise(this.fd,r,s??void 0,a??void 0,o??void 0),buffer:r}}else{let[r,s,a]=t;return{bytesWritten:await this[_F].writePromise(this.fd,r,s,a),buffer:r}}}finally{this[dH]()}}async writev(t,r){try{this[AH](this.writev);let s=0;if(typeof r<"u")for(let a of t){let o=await this.write(a,void 0,void 0,r);s+=o.bytesWritten,r+=o.bytesWritten}else for(let a of t){let o=await this.write(a);s+=o.bytesWritten}return{buffers:t,bytesWritten:s}}finally{this[dH]()}}readv(t,r){throw new Error("Method not implemented.")}close(){if(this[ene]===-1)return Promise.resolve();if(this[tne])return this[tne];if(this[Uye]--,this[Uye]===0){let t=this[ene];this[ene]=-1,this[tne]=this[_F].closePromise(t).finally(()=>{this[tne]=void 0})}else this[tne]=new Promise((t,r)=>{this[trt]=t,this[rrt]=r}).finally(()=>{this[tne]=void 0,this[rrt]=void 0,this[trt]=void 0});return this[tne]}[(C7r=Uye,m7r=tne,h7r=trt,_7r=rrt,AH)](t){if(this[ene]===-1){let r=new Error("file closed");throw r.code="EBADF",r.syscall=t.name,r}this[Uye]++}[dH](){if(this[Uye]--,this[Uye]===0){let t=this[ene];this[ene]=-1,this[_F].closePromise(t).then(this[trt],this[rrt])}}};nrt.FileHandle=i5t});var v7r=z(irt=>{"use strict";Object.defineProperty(irt,"__esModule",{value:!0});irt.patchFs=B7r;irt.extendFs=U1s;var e9e=xt("util"),X1s=I7r(),b7r=y7r(),J1s=new Set(["accessSync","appendFileSync","createReadStream","createWriteStream","chmodSync","fchmodSync","chownSync","fchownSync","closeSync","copyFileSync","linkSync","lstatSync","fstatSync","lutimesSync","mkdirSync","openSync","opendirSync","readlinkSync","readFileSync","readdirSync","readlinkSync","realpathSync","renameSync","rmdirSync","rmSync","statSync","symlinkSync","truncateSync","ftruncateSync","unlinkSync","unwatchFile","utimesSync","watch","watchFile","writeFileSync","writeSync"]),E7r=new Set(["accessPromise","appendFilePromise","fchmodPromise","chmodPromise","fchownPromise","chownPromise","closePromise","copyFilePromise","linkPromise","fstatPromise","lstatPromise","lutimesPromise","mkdirPromise","openPromise","opendirPromise","readdirPromise","realpathPromise","readFilePromise","readdirPromise","readlinkPromise","renamePromise","rmdirPromise","rmPromise","statPromise","symlinkPromise","truncatePromise","ftruncatePromise","unlinkPromise","utimesPromise","writeFilePromise","writeSync"]);function B7r(e,t){t=new X1s.NodePathFS(t);let r=(s,a,o)=>{let g=s[a];s[a]=o,typeof g?.[e9e.promisify.custom]<"u"&&(o[e9e.promisify.custom]=g[e9e.promisify.custom])};{r(e,"exists",(s,...a)=>{let g=typeof a[a.length-1]=="function"?a.pop():()=>{};process.nextTick(()=>{t.existsPromise(s).then(p=>{g(p)},()=>{g(!1)})})}),r(e,"read",(...s)=>{let[a,o,g,p,f,m]=s;if(s.length<=3){let y={};s.length<3?m=s[1]:(y=s[1],m=s[2]),{buffer:o=Buffer.alloc(16384),offset:g=0,length:p=o.byteLength,position:f}=y}if(g==null&&(g=0),p|=0,p===0){process.nextTick(()=>{m(null,0,o)});return}f==null&&(f=-1),process.nextTick(()=>{t.readPromise(a,o,g,p,f).then(y=>{m(null,y,o)},y=>{m(y,0,o)})})});for(let s of E7r){let a=s.replace(/Promise$/,"");if(typeof e[a]>"u")continue;let o=t[s];if(typeof o>"u")continue;r(e,a,(...p)=>{let m=typeof p[p.length-1]=="function"?p.pop():()=>{};process.nextTick(()=>{o.apply(t,p).then(y=>{m(null,y)},y=>{m(y)})})})}e.realpath.native=e.realpath}{r(e,"existsSync",s=>{try{return t.existsSync(s)}catch{return!1}}),r(e,"readSync",(...s)=>{let[a,o,g,p,f]=s;return s.length<=3&&({offset:g=0,length:p=o.byteLength,position:f}=s[2]||{}),g==null&&(g=0),p|=0,p===0?0:(f==null&&(f=-1),t.readSync(a,o,g,p,f))});for(let s of J1s){let a=s;if(typeof e[a]>"u")continue;let o=t[s];typeof o>"u"||r(e,a,o.bind(t))}e.realpathSync.native=e.realpathSync}{let s=e.promises;for(let a of E7r){let o=a.replace(/Promise$/,"");if(typeof s[o]>"u")continue;let g=t[a];typeof g>"u"||a!=="open"&&r(s,o,(p,...f)=>p instanceof b7r.FileHandle?p[o].apply(p,f):g.call(t,p,...f))}r(s,"open",async(...a)=>{let o=await t.openPromise(...a);return new b7r.FileHandle(o,t)})}e.read[e9e.promisify.custom]=async(s,a,...o)=>({bytesRead:await t.readPromise(s,a,...o),buffer:a}),e.write[e9e.promisify.custom]=async(s,a,...o)=>({bytesWritten:await t.writePromise(s,a,...o),buffer:a})}function U1s(e,t){let r=Object.create(e);return B7r(r,t),r}});var T7r=z(rne=>{"use strict";Object.defineProperty(rne,"__esModule",{value:!0});rne.xfs=void 0;var K1s=(Oa(),Ai(Pa)),j1s=K1s.__importDefault(xt("os")),z1s=Xge(),t9e=BL();function S7r(e){let t=Math.ceil(Math.random()*4294967296).toString(16).padStart(8,"0");return`${e}${t}`}var pH=new Set,s5t=null;function w7r(){if(s5t)return s5t;let e=t9e.npath.toPortablePath(j1s.default.tmpdir()),t=rne.xfs.realpathSync(e);return process.once("exit",()=>{rne.xfs.rmtempSync()}),s5t={tmpdir:e,realTmpdir:t}}rne.xfs=Object.assign(new z1s.NodeFS,{detachTemp(e){pH.delete(e)},mktempSync(e){let{tmpdir:t,realTmpdir:r}=w7r();for(;;){let s=S7r("xfs-");try{this.mkdirSync(t9e.ppath.join(t,s))}catch(o){if(o.code==="EEXIST")continue;throw o}let a=t9e.ppath.join(r,s);if(pH.add(a),typeof e>"u")return a;try{return e(a)}finally{if(pH.has(a)){pH.delete(a);try{this.removeSync(a)}catch{}}}}},async mktempPromise(e){let{tmpdir:t,realTmpdir:r}=w7r();for(;;){let s=S7r("xfs-");try{await this.mkdirPromise(t9e.ppath.join(t,s))}catch(o){if(o.code==="EEXIST")continue;throw o}let a=t9e.ppath.join(r,s);if(pH.add(a),typeof e>"u")return a;try{return await e(a)}finally{if(pH.has(a)){pH.delete(a);try{await this.removePromise(a)}catch{}}}}},async rmtempPromise(){await Promise.all(Array.from(pH.values()).map(async e=>{try{await rne.xfs.removePromise(e,{maxRetries:0}),pH.delete(e)}catch{}}))},rmtempSync(){for(let e of pH)try{rne.xfs.removeSync(e),pH.delete(e)}catch{}}})});var No=z(ld=>{"use strict";Object.defineProperty(ld,"__esModule",{value:!0});ld.xfs=ld.extendFs=ld.patchFs=ld.VirtualFS=ld.ProxiedFS=ld.PosixFS=ld.NodeFS=ld.NoFS=ld.MountFS=ld.LazyFS=ld.JailFS=ld.CwdFS=ld.BasePortableFakeFS=ld.FakeFS=ld.AliasFS=ld.ppath=ld.npath=ld.Filename=ld.PortablePath=ld.normalizeLineEndings=ld.unwatchAllFiles=ld.unwatchFile=ld.watchFile=ld.CustomDir=ld.opendir=ld.setupCopyIndex=ld.statUtils=ld.errors=ld.constants=void 0;var o5t=(Oa(),Ai(Pa)),q1s=o5t.__importStar(Dtt());ld.constants=q1s;var $1s=o5t.__importStar(xtt());ld.errors=$1s;var e2s=o5t.__importStar(ZQt());ld.statUtils=e2s;var t2s=WQt();Object.defineProperty(ld,"setupCopyIndex",{enumerable:!0,get:function(){return t2s.setupCopyIndex}});var N7r=t7r();Object.defineProperty(ld,"opendir",{enumerable:!0,get:function(){return N7r.opendir}});Object.defineProperty(ld,"CustomDir",{enumerable:!0,get:function(){return N7r.CustomDir}});var a5t=QQt();Object.defineProperty(ld,"watchFile",{enumerable:!0,get:function(){return a5t.watchFile}});Object.defineProperty(ld,"unwatchFile",{enumerable:!0,get:function(){return a5t.unwatchFile}});Object.defineProperty(ld,"unwatchAllFiles",{enumerable:!0,get:function(){return a5t.unwatchAllFiles}});var r2s=Yge();Object.defineProperty(ld,"normalizeLineEndings",{enumerable:!0,get:function(){return r2s.normalizeLineEndings}});var R7r=BL();Object.defineProperty(ld,"PortablePath",{enumerable:!0,get:function(){return R7r.PortablePath}});Object.defineProperty(ld,"Filename",{enumerable:!0,get:function(){return R7r.Filename}});var D7r=BL();Object.defineProperty(ld,"npath",{enumerable:!0,get:function(){return D7r.npath}});Object.defineProperty(ld,"ppath",{enumerable:!0,get:function(){return D7r.ppath}});var n2s=s7r();Object.defineProperty(ld,"AliasFS",{enumerable:!0,get:function(){return n2s.AliasFS}});var x7r=Yge();Object.defineProperty(ld,"FakeFS",{enumerable:!0,get:function(){return x7r.FakeFS}});Object.defineProperty(ld,"BasePortableFakeFS",{enumerable:!0,get:function(){return x7r.BasePortableFakeFS}});var i2s=a7r();Object.defineProperty(ld,"CwdFS",{enumerable:!0,get:function(){return i2s.CwdFS}});var s2s=l7r();Object.defineProperty(ld,"JailFS",{enumerable:!0,get:function(){return s2s.JailFS}});var o2s=u7r();Object.defineProperty(ld,"LazyFS",{enumerable:!0,get:function(){return o2s.LazyFS}});var a2s=g7r();Object.defineProperty(ld,"MountFS",{enumerable:!0,get:function(){return a2s.MountFS}});var c2s=A7r();Object.defineProperty(ld,"NoFS",{enumerable:!0,get:function(){return c2s.NoFS}});var l2s=Xge();Object.defineProperty(ld,"NodeFS",{enumerable:!0,get:function(){return l2s.NodeFS}});var u2s=d7r();Object.defineProperty(ld,"PosixFS",{enumerable:!0,get:function(){return u2s.PosixFS}});var g2s=rj();Object.defineProperty(ld,"ProxiedFS",{enumerable:!0,get:function(){return g2s.ProxiedFS}});var A2s=p7r();Object.defineProperty(ld,"VirtualFS",{enumerable:!0,get:function(){return A2s.VirtualFS}});var k7r=v7r();Object.defineProperty(ld,"patchFs",{enumerable:!0,get:function(){return k7r.patchFs}});Object.defineProperty(ld,"extendFs",{enumerable:!0,get:function(){return k7r.extendFs}});var d2s=T7r();Object.defineProperty(ld,"xfs",{enumerable:!0,get:function(){return d2s.xfs}})});var V7r=z((KFc,L7r)=>{L7r.exports=Z7r;Z7r.sync=f2s;var G7r=xt("fs");function p2s(e,t){var r=t.pathExt!==void 0?t.pathExt:process.env.PATHEXT;if(!r||(r=r.split(";"),r.indexOf("")!==-1))return!0;for(var s=0;s{Q7r.exports=P7r;P7r.sync=I2s;var W7r=xt("fs");function P7r(e,t,r){W7r.stat(e,function(s,a){r(s,s?!1:O7r(a,t))})}function I2s(e,t){return O7r(W7r.statSync(e),t)}function O7r(e,t){return e.isFile()&&C2s(e,t)}function C2s(e,t){var r=e.mode,s=e.uid,a=e.gid,o=t.uid!==void 0?t.uid:process.getuid&&process.getuid(),g=t.gid!==void 0?t.gid:process.getgid&&process.getgid(),p=parseInt("100",8),f=parseInt("010",8),m=parseInt("001",8),y=p|f,B=r&m||r&f&&a===g||r&p&&s===o||r&y&&o===0;return B}});var Y7r=z((qFc,H7r)=>{var zFc=xt("fs"),srt;process.platform==="win32"||global.TESTING_WINDOWS?srt=V7r():srt=M7r();H7r.exports=c5t;c5t.sync=m2s;function c5t(e,t,r){if(typeof t=="function"&&(r=t,t={}),!r){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(s,a){c5t(e,t||{},function(o,g){o?a(o):s(g)})})}srt(e,t||{},function(s,a){s&&(s.code==="EACCES"||t&&t.ignoreErrors)&&(s=null,a=!1),r(s,a)})}function m2s(e,t){try{return srt.sync(e,t||{})}catch(r){if(t&&t.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var l5t=z(($Fc,z7r)=>{var Kye=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",X7r=xt("path"),h2s=Kye?";":":",J7r=Y7r(),U7r=e=>Object.assign(new Error(`not found: ${e}`),{code:"ENOENT"}),K7r=(e,t)=>{let r=t.colon||h2s,s=e.match(/\//)||Kye&&e.match(/\\/)?[""]:[...Kye?[process.cwd()]:[],...(t.path||process.env.PATH||"").split(r)],a=Kye?t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",o=Kye?a.split(r):[""];return Kye&&e.indexOf(".")!==-1&&o[0]!==""&&o.unshift(""),{pathEnv:s,pathExt:o,pathExtExe:a}},j7r=(e,t,r)=>{typeof t=="function"&&(r=t,t={}),t||(t={});let{pathEnv:s,pathExt:a,pathExtExe:o}=K7r(e,t),g=[],p=m=>new Promise((y,B)=>{if(m===s.length)return t.all&&g.length?y(g):B(U7r(e));let v=s[m],k=/^".*"$/.test(v)?v.slice(1,-1):v,T=X7r.join(k,e),O=!k&&/^\.[\\\/]/.test(e)?e.slice(0,2)+T:T;y(f(O,m,0))}),f=(m,y,B)=>new Promise((v,k)=>{if(B===a.length)return v(p(y+1));let T=a[B];J7r(m+T,{pathExt:o},(O,X)=>{if(!O&&X)if(t.all)g.push(m+T);else return v(m+T);return v(f(m,y,B+1))})});return r?p(0).then(m=>r(null,m),r):p(0)},_2s=(e,t)=>{t=t||{};let{pathEnv:r,pathExt:s,pathExtExe:a}=K7r(e,t),o=[];for(let g=0;g{"use strict";var q7r=(e={})=>{let t=e.env||process.env;return(e.platform||process.platform)!=="win32"?"PATH":Object.keys(t).reverse().find(s=>s.toUpperCase()==="PATH")||"Path"};u5t.exports=q7r;u5t.exports.default=q7r});var rjr=z((tZc,tjr)=>{"use strict";var $7r=xt("path"),y2s=l5t(),b2s=g5t();function ejr(e,t){let r=e.options.env||process.env,s=process.cwd(),a=e.options.cwd!=null,o=a&&process.chdir!==void 0&&!process.chdir.disabled;if(o)try{process.chdir(e.options.cwd)}catch{}let g;try{g=y2s.sync(e.command,{path:r[b2s({env:r})],pathExt:t?$7r.delimiter:void 0})}catch{}finally{o&&process.chdir(s)}return g&&(g=$7r.resolve(a?e.options.cwd:"",g)),g}function E2s(e){return ejr(e)||ejr(e,!0)}tjr.exports=E2s});var njr=z((rZc,d5t)=>{"use strict";var A5t=/([()\][%!^"`<>&|;, *?])/g;function B2s(e){return e=e.replace(A5t,"^$1"),e}function v2s(e,t){return e=`${e}`,e=e.replace(/(\\*)"/g,'$1$1\\"'),e=e.replace(/(\\*)$/,"$1$1"),e=`"${e}"`,e=e.replace(A5t,"^$1"),t&&(e=e.replace(A5t,"^$1")),e}d5t.exports.command=B2s;d5t.exports.argument=v2s});var sjr=z((nZc,ijr)=>{"use strict";ijr.exports=/^#!(.*)/});var p5t=z((iZc,ojr)=>{"use strict";var S2s=sjr();ojr.exports=(e="")=>{let t=e.match(S2s);if(!t)return null;let[r,s]=t[0].replace(/#! ?/,"").split(" "),a=r.split("/").pop();return a==="env"?s:s?`${a} ${s}`:a}});var cjr=z((sZc,ajr)=>{"use strict";var f5t=xt("fs"),w2s=p5t();function T2s(e){let r=Buffer.alloc(150),s;try{s=f5t.openSync(e,"r"),f5t.readSync(s,r,0,150,0),f5t.closeSync(s)}catch{}return w2s(r.toString())}ajr.exports=T2s});var Ajr=z((oZc,gjr)=>{"use strict";var N2s=xt("path"),ljr=rjr(),ujr=njr(),R2s=cjr(),D2s=process.platform==="win32",x2s=/\.(?:com|exe)$/i,k2s=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function G2s(e){e.file=ljr(e);let t=e.file&&R2s(e.file);return t?(e.args.unshift(e.file),e.command=t,ljr(e)):e.file}function F2s(e){if(!D2s)return e;let t=G2s(e),r=!x2s.test(t);if(e.options.forceShell||r){let s=k2s.test(t);e.command=N2s.normalize(e.command),e.command=ujr.command(e.command),e.args=e.args.map(o=>ujr.argument(o,s));let a=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${a}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e}function Z2s(e,t,r){t&&!Array.isArray(t)&&(r=t,t=null),t=t?t.slice(0):[],r=Object.assign({},r);let s={command:e,args:t,options:r,file:void 0,original:{command:e,args:t}};return r.shell?s:F2s(s)}gjr.exports=Z2s});var fjr=z((aZc,pjr)=>{"use strict";var I5t=process.platform==="win32";function C5t(e,t){return Object.assign(new Error(`${t} ${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function L2s(e,t){if(!I5t)return;let r=e.emit;e.emit=function(s,a){if(s==="exit"){let o=djr(a,t,"spawn");if(o)return r.call(e,"error",o)}return r.apply(e,arguments)}}function djr(e,t){return I5t&&e===1&&!t.file?C5t(t.original,"spawn"):null}function V2s(e,t){return I5t&&e===1&&!t.file?C5t(t.original,"spawnSync"):null}pjr.exports={hookChildProcess:L2s,verifyENOENT:djr,verifyENOENTSync:V2s,notFoundError:C5t}});var ort=z((cZc,jye)=>{"use strict";var Ijr=xt("child_process"),m5t=Ajr(),h5t=fjr();function Cjr(e,t,r){let s=m5t(e,t,r),a=Ijr.spawn(s.command,s.args,s.options);return h5t.hookChildProcess(a,s),a}function W2s(e,t,r){let s=m5t(e,t,r),a=Ijr.spawnSync(s.command,s.args,s.options);return a.error=a.error||h5t.verifyENOENTSync(a.status,s),a}jye.exports=Cjr;jye.exports.spawn=Cjr;jye.exports.sync=W2s;jye.exports._parse=m5t;jye.exports._enoent=h5t});var hjr=z((lZc,mjr)=>{"use strict";function P2s(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function Jge(e,t,r,s){this.message=e,this.expected=t,this.found=r,this.location=s,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Jge)}P2s(Jge,Error);Jge.buildMessage=function(e,t){var r={literal:function(m){return'"'+a(m.text)+'"'},class:function(m){var y="",B;for(B=0;B0){for(B=1,v=1;B>",Gn=Mo(">>",!1),we=">&",Zi=Mo(">&",!1),Fa=">",xa=Mo(">",!1),Qs="<<<",lr=Mo("<<<",!1),ua="<&",vi=Mo("<&",!1),Hu="<",Yu=Mo("<",!1),YA=function(at){return{type:"argument",segments:[].concat(...at)}},gd=function(at){return at},NA="$'",Vd=Mo("$'",!1),jr="'",Gr=Mo("'",!1),Ir=function(at){return[{type:"text",text:at}]},nn='""',Cn=Mo('""',!1),Vn=function(){return{type:"text",text:""}},Ji='"',Yr=Mo('"',!1),Vs=function(at){return at},Uo=function(at){return{type:"arithmetic",arithmetic:at,quoted:!0}},ai=function(at){return{type:"shell",shell:at,quoted:!0}},da=function(at){return{type:"variable",...at,quoted:!0}},og=function(at){return{type:"text",text:at}},Zu=function(at){return{type:"arithmetic",arithmetic:at,quoted:!1}},mg=function(at){return{type:"shell",shell:at,quoted:!1}},Lu=function(at){return{type:"variable",...at,quoted:!1}},ml=function(at){return{type:"glob",pattern:at}},wi=/^[^']/,ts=bu(["'"],!0,!1),$i=function(at){return at.join("")},ka=/^[^$"]/,qs=bu(["$",'"'],!0,!1),kl=`\\ +`,zo=Mo(`\\ +`,!1),Ta=function(){return""},Tu="\\",xg=Mo("\\",!1),_l=/^[\\$"`]/,cu=bu(["\\","$",'"',"`"],!1,!1),Vg=function(at){return at},lf="\\a",Nd=Mo("\\a",!1),ei=function(){return"a"},Qa="\\b",Dt=Mo("\\b",!1),Gl=function(){return"\b"},Xu=/^[Ee]/,us=bu(["E","e"],!1,!1),ag=function(){return"\x1B"},on="\\f",Eo=Mo("\\f",!1),eA=function(){return"\f"},lA="\\n",XA=Mo("\\n",!1),To=function(){return` +`},Xl="\\r",Zf=Mo("\\r",!1),Wd=function(){return"\r"},EA="\\t",Ps=Mo("\\t",!1),Yi=function(){return" "},ec="\\v",ul=Mo("\\v",!1),Ts=function(){return"\v"},RA=/^[\\'"?]/,Kd=bu(["\\","'",'"',"?"],!1,!1),Na=function(at){return String.fromCharCode(parseInt(at,16))},ys="\\x",Ya=Mo("\\x",!1),lm="\\u",$s=Mo("\\u",!1),ps="\\U",oc=Mo("\\U",!1),NC=function(at){return String.fromCodePoint(parseInt(at,16))},fI=/^[0-7]/,wI=bu([["0","7"]],!1,!1),vl=/^[0-9a-fA-f]/,sl=bu([["0","9"],["a","f"],["A","f"]],!1,!1),VA=ap(),uf="{}",ja=Mo("{}",!1),su=function(){return"{}"},ii="-",RC=Mo("-",!1),Uh="+",Nm=Mo("+",!1),yl=".",Qg=Mo(".",!1),op=function(at,$t,Wr){return{type:"number",value:(at==="-"?-1:1)*parseFloat($t.join("")+"."+Wr.join(""))}},um=function(at,$t){return{type:"number",value:(at==="-"?-1:1)*parseInt($t.join(""))}},lh=function(at){return{type:"variable",...at}},Jl=function(at){return{type:"variable",name:at}},Pp=function(at){return at},gC="*",fs=Mo("*",!1),go="/",Ro=Mo("/",!1),ql=function(at,$t,Wr){return{type:$t==="*"?"multiplication":"division",right:Wr}},Nr=function(at,$t){return $t.reduce((Wr,vn)=>({left:Wr,...vn}),at)},Nn=function(at,$t,Wr){return{type:$t==="+"?"addition":"subtraction",right:Wr}},Di="$((",ra=Mo("$((",!1),Us="))",Li=Mo("))",!1),Ll=function(at){return at},DA="$(",Rd=Mo("$(",!1),PI=function(at){return at},fl="${",Hm=Mo("${",!1),I1=":-",Iv=Mo(":-",!1),tA=function(at,$t){return{name:at,defaultValue:$t}},Rm=":-}",uh=Mo(":-}",!1),Qy=function(at){return{name:at,defaultValue:[]}},Sp=":+",rA=Mo(":+",!1),D0=function(at,$t){return{name:at,alternativeValue:$t}},yh=":+}",uy=Mo(":+}",!1),uc=function(at){return{name:at,alternativeValue:[]}},E_=function(at){return{name:at}},Tb="$",gm=Mo("$",!1),gh=function(at){return t.isGlobPattern(at)},fg=function(at){return at},Am=/^[a-zA-Z0-9_]/,Nb=bu([["a","z"],["A","Z"],["0","9"],"_"],!1,!1),Dm=function(){return Dn()},OI=/^[$@*?#a-zA-Z0-9_\-]/,Bf=bu(["$","@","*","?","#",["a","z"],["A","Z"],["0","9"],"_","-"],!1,!1),tI=/^[()}<>$|&; \t"']/,Lf=bu(["(",")","}","<",">","$","|","&",";"," "," ",'"',"'"],!1,!1),yE=/^[<>&; \t"']/,gy=bu(["<",">","&",";"," "," ",'"',"'"],!1,!1),ie=/^[ \t]/,w=bu([" "," "],!1,!1),J=0,ye=0,ut=[{line:1,column:1}],zt=0,Zr=[],wr=0,Hn;if("startRule"in t){if(!(t.startRule in s))throw new Error(`Can't start parsing from rule "`+t.startRule+'".');a=s[t.startRule]}function Dn(){return e.substring(ye,J)}function Wo(){return x0(ye,J)}function Ic(at,$t){throw $t=$t!==void 0?$t:x0(ye,J),II([rI(at)],e.substring(ye,J),$t)}function Jc(at,$t){throw $t=$t!==void 0?$t:x0(ye,J),hd(at,$t)}function Mo(at,$t){return{type:"literal",text:at,ignoreCase:$t}}function bu(at,$t,Wr){return{type:"class",parts:at,inverted:$t,ignoreCase:Wr}}function ap(){return{type:"any"}}function uA(){return{type:"end"}}function rI(at){return{type:"other",description:at}}function jd(at){var $t=ut[at],Wr;if($t)return $t;for(Wr=at-1;!ut[Wr];)Wr--;for($t=ut[Wr],$t={line:$t.line,column:$t.column};Wrzt&&(zt=J,Zr=[]),Zr.push(at))}function hd(at,$t){return new Jge(at,null,null,$t)}function II(at,$t,Wr){return new Jge(Jge.buildMessage(at,$t),at,$t,Wr)}function vf(){var at,$t,Wr;for(at=J,$t=[],Wr=pc();Wr!==r;)$t.push(Wr),Wr=pc();return $t!==r?(Wr=Kh(),Wr===r&&(Wr=null),Wr!==r?(ye=at,$t=o(Wr),at=$t):(J=at,at=r)):(J=at,at=r),at}function Kh(){var at,$t,Wr,vn,os;if(at=J,$t=mS(),$t!==r){for(Wr=[],vn=pc();vn!==r;)Wr.push(vn),vn=pc();Wr!==r?(vn=CS(),vn!==r?(os=Ym(),os===r&&(os=null),os!==r?(ye=at,$t=g($t,vn,os),at=$t):(J=at,at=r)):(J=at,at=r)):(J=at,at=r)}else J=at,at=r;if(at===r)if(at=J,$t=mS(),$t!==r){for(Wr=[],vn=pc();vn!==r;)Wr.push(vn),vn=pc();Wr!==r?(vn=CS(),vn===r&&(vn=null),vn!==r?(ye=at,$t=p($t,vn),at=$t):(J=at,at=r)):(J=at,at=r)}else J=at,at=r;return at}function Ym(){var at,$t,Wr,vn,os;for(at=J,$t=[],Wr=pc();Wr!==r;)$t.push(Wr),Wr=pc();if($t!==r)if(Wr=Kh(),Wr!==r){for(vn=[],os=pc();os!==r;)vn.push(os),os=pc();vn!==r?(ye=at,$t=f(Wr),at=$t):(J=at,at=r)}else J=at,at=r;else J=at,at=r;return at}function CS(){var at;return e.charCodeAt(J)===59?(at=m,J++):(at=r,wr===0&&ha(y)),at===r&&(e.charCodeAt(J)===38?(at=B,J++):(at=r,wr===0&&ha(v))),at}function mS(){var at,$t,Wr;return at=J,$t=EE(),$t!==r?(Wr=bE(),Wr===r&&(Wr=null),Wr!==r?(ye=at,$t=k($t,Wr),at=$t):(J=at,at=r)):(J=at,at=r),at}function bE(){var at,$t,Wr,vn,os,So,Ig;for(at=J,$t=[],Wr=pc();Wr!==r;)$t.push(Wr),Wr=pc();if($t!==r)if(Wr=k0(),Wr!==r){for(vn=[],os=pc();os!==r;)vn.push(os),os=pc();if(vn!==r)if(os=mS(),os!==r){for(So=[],Ig=pc();Ig!==r;)So.push(Ig),Ig=pc();So!==r?(ye=at,$t=T(Wr,os),at=$t):(J=at,at=r)}else J=at,at=r;else J=at,at=r}else J=at,at=r;else J=at,at=r;return at}function k0(){var at;return e.substr(J,2)===O?(at=O,J+=2):(at=r,wr===0&&ha(X)),at===r&&(e.substr(J,2)===U?(at=U,J+=2):(at=r,wr===0&&ha(le))),at}function EE(){var at,$t,Wr;return at=J,$t=K_(),$t!==r?(Wr=hB(),Wr===r&&(Wr=null),Wr!==r?(ye=at,$t=ae($t,Wr),at=$t):(J=at,at=r)):(J=at,at=r),at}function hB(){var at,$t,Wr,vn,os,So,Ig;for(at=J,$t=[],Wr=pc();Wr!==r;)$t.push(Wr),Wr=pc();if($t!==r)if(Wr=U_(),Wr!==r){for(vn=[],os=pc();os!==r;)vn.push(os),os=pc();if(vn!==r)if(os=EE(),os!==r){for(So=[],Ig=pc();Ig!==r;)So.push(Ig),Ig=pc();So!==r?(ye=at,$t=ge(Wr,os),at=$t):(J=at,at=r)}else J=at,at=r;else J=at,at=r}else J=at,at=r;else J=at,at=r;return at}function U_(){var at;return e.substr(J,2)===fe?(at=fe,J+=2):(at=r,wr===0&&ha(pe)),at===r&&(e.charCodeAt(J)===124?(at=he,J++):(at=r,wr===0&&ha(be))),at}function bh(){var at,$t,Wr,vn,os,So;if(at=J,$t=vE(),$t!==r)if(e.charCodeAt(J)===61?(Wr=Te,J++):(Wr=r,wr===0&&ha(ke)),Wr!==r)if(vn=Xm(),vn!==r){for(os=[],So=pc();So!==r;)os.push(So),So=pc();os!==r?(ye=at,$t=x($t,vn),at=$t):(J=at,at=r)}else J=at,at=r;else J=at,at=r;else J=at,at=r;if(at===r)if(at=J,$t=vE(),$t!==r)if(e.charCodeAt(J)===61?(Wr=Te,J++):(Wr=r,wr===0&&ha(ke)),Wr!==r){for(vn=[],os=pc();os!==r;)vn.push(os),os=pc();vn!==r?(ye=at,$t=et($t),at=$t):(J=at,at=r)}else J=at,at=r;else J=at,at=r;return at}function K_(){var at,$t,Wr,vn,os,So,Ig,hg,Af,nI,AC;for(at=J,$t=[],Wr=pc();Wr!==r;)$t.push(Wr),Wr=pc();if($t!==r)if(e.charCodeAt(J)===40?(Wr=Ue,J++):(Wr=r,wr===0&&ha(Je)),Wr!==r){for(vn=[],os=pc();os!==r;)vn.push(os),os=pc();if(vn!==r)if(os=Kh(),os!==r){for(So=[],Ig=pc();Ig!==r;)So.push(Ig),Ig=pc();if(So!==r)if(e.charCodeAt(J)===41?(Ig=Xe,J++):(Ig=r,wr===0&&ha(ft)),Ig!==r){for(hg=[],Af=pc();Af!==r;)hg.push(Af),Af=pc();if(hg!==r){for(Af=[],nI=jl();nI!==r;)Af.push(nI),nI=jl();if(Af!==r){for(nI=[],AC=pc();AC!==r;)nI.push(AC),AC=pc();nI!==r?(ye=at,$t=Gt(os,Af),at=$t):(J=at,at=r)}else J=at,at=r}else J=at,at=r}else J=at,at=r;else J=at,at=r}else J=at,at=r;else J=at,at=r}else J=at,at=r;else J=at,at=r;if(at===r){for(at=J,$t=[],Wr=pc();Wr!==r;)$t.push(Wr),Wr=pc();if($t!==r)if(e.charCodeAt(J)===123?(Wr=er,J++):(Wr=r,wr===0&&ha(Ur)),Wr!==r){for(vn=[],os=pc();os!==r;)vn.push(os),os=pc();if(vn!==r)if(os=Kh(),os!==r){for(So=[],Ig=pc();Ig!==r;)So.push(Ig),Ig=pc();if(So!==r)if(e.charCodeAt(J)===125?(Ig=Ot,J++):(Ig=r,wr===0&&ha(dr)),Ig!==r){for(hg=[],Af=pc();Af!==r;)hg.push(Af),Af=pc();if(hg!==r){for(Af=[],nI=jl();nI!==r;)Af.push(nI),nI=jl();if(Af!==r){for(nI=[],AC=pc();AC!==r;)nI.push(AC),AC=pc();nI!==r?(ye=at,$t=Ar(os,Af),at=$t):(J=at,at=r)}else J=at,at=r}else J=at,at=r}else J=at,at=r;else J=at,at=r}else J=at,at=r;else J=at,at=r}else J=at,at=r;else J=at,at=r;if(at===r){for(at=J,$t=[],Wr=pc();Wr!==r;)$t.push(Wr),Wr=pc();if($t!==r){for(Wr=[],vn=bh();vn!==r;)Wr.push(vn),vn=bh();if(Wr!==r){for(vn=[],os=pc();os!==r;)vn.push(os),os=pc();if(vn!==r){if(os=[],So=DC(),So!==r)for(;So!==r;)os.push(So),So=DC();else os=r;if(os!==r){for(So=[],Ig=pc();Ig!==r;)So.push(Ig),Ig=pc();So!==r?(ye=at,$t=or(Wr,os),at=$t):(J=at,at=r)}else J=at,at=r}else J=at,at=r}else J=at,at=r}else J=at,at=r;if(at===r){for(at=J,$t=[],Wr=pc();Wr!==r;)$t.push(Wr),Wr=pc();if($t!==r){if(Wr=[],vn=bh(),vn!==r)for(;vn!==r;)Wr.push(vn),vn=bh();else Wr=r;if(Wr!==r){for(vn=[],os=pc();os!==r;)vn.push(os),os=pc();vn!==r?(ye=at,$t=Fr(Wr),at=$t):(J=at,at=r)}else J=at,at=r}else J=at,at=r}}}return at}function $l(){var at,$t,Wr,vn,os;for(at=J,$t=[],Wr=pc();Wr!==r;)$t.push(Wr),Wr=pc();if($t!==r){if(Wr=[],vn=gg(),vn!==r)for(;vn!==r;)Wr.push(vn),vn=gg();else Wr=r;if(Wr!==r){for(vn=[],os=pc();os!==r;)vn.push(os),os=pc();vn!==r?(ye=at,$t=$r(Wr),at=$t):(J=at,at=r)}else J=at,at=r}else J=at,at=r;return at}function DC(){var at,$t,Wr;for(at=J,$t=[],Wr=pc();Wr!==r;)$t.push(Wr),Wr=pc();if($t!==r?(Wr=jl(),Wr!==r?(ye=at,$t=Or(Wr),at=$t):(J=at,at=r)):(J=at,at=r),at===r){for(at=J,$t=[],Wr=pc();Wr!==r;)$t.push(Wr),Wr=pc();$t!==r?(Wr=gg(),Wr!==r?(ye=at,$t=Or(Wr),at=$t):(J=at,at=r)):(J=at,at=r)}return at}function jl(){var at,$t,Wr,vn,os;for(at=J,$t=[],Wr=pc();Wr!==r;)$t.push(Wr),Wr=pc();return $t!==r?(In.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ha(Br)),Wr===r&&(Wr=null),Wr!==r?(vn=cp(),vn!==r?(os=gg(),os!==r?(ye=at,$t=tr(Wr,vn,os),at=$t):(J=at,at=r)):(J=at,at=r)):(J=at,at=r)):(J=at,at=r),at}function cp(){var at;return e.substr(J,2)===gn?(at=gn,J+=2):(at=r,wr===0&&ha(Gn)),at===r&&(e.substr(J,2)===we?(at=we,J+=2):(at=r,wr===0&&ha(Zi)),at===r&&(e.charCodeAt(J)===62?(at=Fa,J++):(at=r,wr===0&&ha(xa)),at===r&&(e.substr(J,3)===Qs?(at=Qs,J+=3):(at=r,wr===0&&ha(lr)),at===r&&(e.substr(J,2)===ua?(at=ua,J+=2):(at=r,wr===0&&ha(vi)),at===r&&(e.charCodeAt(J)===60?(at=Hu,J++):(at=r,wr===0&&ha(Yu))))))),at}function gg(){var at,$t,Wr;for(at=J,$t=[],Wr=pc();Wr!==r;)$t.push(Wr),Wr=pc();return $t!==r?(Wr=Xm(),Wr!==r?(ye=at,$t=Or(Wr),at=$t):(J=at,at=r)):(J=at,at=r),at}function Xm(){var at,$t,Wr;if(at=J,$t=[],Wr=Rb(),Wr!==r)for(;Wr!==r;)$t.push(Wr),Wr=Rb();else $t=r;return $t!==r&&(ye=at,$t=YA($t)),at=$t,at}function Rb(){var at,$t;return at=J,$t=nA(),$t!==r&&(ye=at,$t=gd($t)),at=$t,at===r&&(at=J,$t=Cv(),$t!==r&&(ye=at,$t=gd($t)),at=$t,at===r&&(at=J,$t=My(),$t!==r&&(ye=at,$t=gd($t)),at=$t,at===r&&(at=J,$t=HC(),$t!==r&&(ye=at,$t=gd($t)),at=$t))),at}function nA(){var at,$t,Wr,vn;return at=J,e.substr(J,2)===NA?($t=NA,J+=2):($t=r,wr===0&&ha(Vd)),$t!==r?(Wr=Ml(),Wr!==r?(e.charCodeAt(J)===39?(vn=jr,J++):(vn=r,wr===0&&ha(Gr)),vn!==r?(ye=at,$t=Ir(Wr),at=$t):(J=at,at=r)):(J=at,at=r)):(J=at,at=r),at}function Cv(){var at,$t,Wr,vn;return at=J,e.charCodeAt(J)===39?($t=jr,J++):($t=r,wr===0&&ha(Gr)),$t!==r?(Wr=Zo(),Wr!==r?(e.charCodeAt(J)===39?(vn=jr,J++):(vn=r,wr===0&&ha(Gr)),vn!==r?(ye=at,$t=Ir(Wr),at=$t):(J=at,at=r)):(J=at,at=r)):(J=at,at=r),at}function My(){var at,$t,Wr,vn;if(at=J,e.substr(J,2)===nn?($t=nn,J+=2):($t=r,wr===0&&ha(Cn)),$t!==r&&(ye=at,$t=Vn()),at=$t,at===r)if(at=J,e.charCodeAt(J)===34?($t=Ji,J++):($t=r,wr===0&&ha(Yr)),$t!==r){for(Wr=[],vn=TI();vn!==r;)Wr.push(vn),vn=TI();Wr!==r?(e.charCodeAt(J)===34?(vn=Ji,J++):(vn=r,wr===0&&ha(Yr)),vn!==r?(ye=at,$t=Vs(Wr),at=$t):(J=at,at=r)):(J=at,at=r)}else J=at,at=r;return at}function HC(){var at,$t,Wr;if(at=J,$t=[],Wr=Fi(),Wr!==r)for(;Wr!==r;)$t.push(Wr),Wr=Fi();else $t=r;return $t!==r&&(ye=at,$t=Vs($t)),at=$t,at}function TI(){var at,$t;return at=J,$t=Qi(),$t!==r&&(ye=at,$t=Uo($t)),at=$t,at===r&&(at=J,$t=dy(),$t!==r&&(ye=at,$t=ai($t)),at=$t,at===r&&(at=J,$t=BE(),$t!==r&&(ye=at,$t=da($t)),at=$t,at===r&&(at=J,$t=rs(),$t!==r&&(ye=at,$t=og($t)),at=$t))),at}function Fi(){var at,$t;return at=J,$t=Qi(),$t!==r&&(ye=at,$t=Zu($t)),at=$t,at===r&&(at=J,$t=dy(),$t!==r&&(ye=at,$t=mg($t)),at=$t,at===r&&(at=J,$t=BE(),$t!==r&&(ye=at,$t=Lu($t)),at=$t,at===r&&(at=J,$t=gf(),$t!==r&&(ye=at,$t=ml($t)),at=$t,at===r&&(at=J,$t=g2(),$t!==r&&(ye=at,$t=og($t)),at=$t)))),at}function Zo(){var at,$t,Wr;for(at=J,$t=[],wi.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ha(ts));Wr!==r;)$t.push(Wr),wi.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ha(ts));return $t!==r&&(ye=at,$t=$i($t)),at=$t,at}function rs(){var at,$t,Wr;if(at=J,$t=[],Wr=Sc(),Wr===r&&(ka.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ha(qs))),Wr!==r)for(;Wr!==r;)$t.push(Wr),Wr=Sc(),Wr===r&&(ka.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ha(qs)));else $t=r;return $t!==r&&(ye=at,$t=$i($t)),at=$t,at}function Sc(){var at,$t,Wr;return at=J,e.substr(J,2)===kl?($t=kl,J+=2):($t=r,wr===0&&ha(zo)),$t!==r&&(ye=at,$t=Ta()),at=$t,at===r&&(at=J,e.charCodeAt(J)===92?($t=Tu,J++):($t=r,wr===0&&ha(xg)),$t!==r?(_l.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ha(cu)),Wr!==r?(ye=at,$t=Vg(Wr),at=$t):(J=at,at=r)):(J=at,at=r)),at}function Ml(){var at,$t,Wr;for(at=J,$t=[],Wr=xA(),Wr===r&&(wi.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ha(ts)));Wr!==r;)$t.push(Wr),Wr=xA(),Wr===r&&(wi.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ha(ts)));return $t!==r&&(ye=at,$t=$i($t)),at=$t,at}function xA(){var at,$t,Wr;return at=J,e.substr(J,2)===lf?($t=lf,J+=2):($t=r,wr===0&&ha(Nd)),$t!==r&&(ye=at,$t=ei()),at=$t,at===r&&(at=J,e.substr(J,2)===Qa?($t=Qa,J+=2):($t=r,wr===0&&ha(Dt)),$t!==r&&(ye=at,$t=Gl()),at=$t,at===r&&(at=J,e.charCodeAt(J)===92?($t=Tu,J++):($t=r,wr===0&&ha(xg)),$t!==r?(Xu.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ha(us)),Wr!==r?(ye=at,$t=ag(),at=$t):(J=at,at=r)):(J=at,at=r),at===r&&(at=J,e.substr(J,2)===on?($t=on,J+=2):($t=r,wr===0&&ha(Eo)),$t!==r&&(ye=at,$t=eA()),at=$t,at===r&&(at=J,e.substr(J,2)===lA?($t=lA,J+=2):($t=r,wr===0&&ha(XA)),$t!==r&&(ye=at,$t=To()),at=$t,at===r&&(at=J,e.substr(J,2)===Xl?($t=Xl,J+=2):($t=r,wr===0&&ha(Zf)),$t!==r&&(ye=at,$t=Wd()),at=$t,at===r&&(at=J,e.substr(J,2)===EA?($t=EA,J+=2):($t=r,wr===0&&ha(Ps)),$t!==r&&(ye=at,$t=Yi()),at=$t,at===r&&(at=J,e.substr(J,2)===ec?($t=ec,J+=2):($t=r,wr===0&&ha(ul)),$t!==r&&(ye=at,$t=Ts()),at=$t,at===r&&(at=J,e.charCodeAt(J)===92?($t=Tu,J++):($t=r,wr===0&&ha(xg)),$t!==r?(RA.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ha(Kd)),Wr!==r?(ye=at,$t=Vg(Wr),at=$t):(J=at,at=r)):(J=at,at=r),at===r&&(at=Vf()))))))))),at}function Vf(){var at,$t,Wr,vn,os,So,Ig,hg,Af,nI,AC,Db;return at=J,e.charCodeAt(J)===92?($t=Tu,J++):($t=r,wr===0&&ha(xg)),$t!==r?(Wr=zd(),Wr!==r?(ye=at,$t=Na(Wr),at=$t):(J=at,at=r)):(J=at,at=r),at===r&&(at=J,e.substr(J,2)===ys?($t=ys,J+=2):($t=r,wr===0&&ha(Ya)),$t!==r?(Wr=J,vn=J,os=zd(),os!==r?(So=Eh(),So!==r?(os=[os,So],vn=os):(J=vn,vn=r)):(J=vn,vn=r),vn===r&&(vn=zd()),vn!==r?Wr=e.substring(Wr,J):Wr=vn,Wr!==r?(ye=at,$t=Na(Wr),at=$t):(J=at,at=r)):(J=at,at=r),at===r&&(at=J,e.substr(J,2)===lm?($t=lm,J+=2):($t=r,wr===0&&ha($s)),$t!==r?(Wr=J,vn=J,os=Eh(),os!==r?(So=Eh(),So!==r?(Ig=Eh(),Ig!==r?(hg=Eh(),hg!==r?(os=[os,So,Ig,hg],vn=os):(J=vn,vn=r)):(J=vn,vn=r)):(J=vn,vn=r)):(J=vn,vn=r),vn!==r?Wr=e.substring(Wr,J):Wr=vn,Wr!==r?(ye=at,$t=Na(Wr),at=$t):(J=at,at=r)):(J=at,at=r),at===r&&(at=J,e.substr(J,2)===ps?($t=ps,J+=2):($t=r,wr===0&&ha(oc)),$t!==r?(Wr=J,vn=J,os=Eh(),os!==r?(So=Eh(),So!==r?(Ig=Eh(),Ig!==r?(hg=Eh(),hg!==r?(Af=Eh(),Af!==r?(nI=Eh(),nI!==r?(AC=Eh(),AC!==r?(Db=Eh(),Db!==r?(os=[os,So,Ig,hg,Af,nI,AC,Db],vn=os):(J=vn,vn=r)):(J=vn,vn=r)):(J=vn,vn=r)):(J=vn,vn=r)):(J=vn,vn=r)):(J=vn,vn=r)):(J=vn,vn=r)):(J=vn,vn=r),vn!==r?Wr=e.substring(Wr,J):Wr=vn,Wr!==r?(ye=at,$t=NC(Wr),at=$t):(J=at,at=r)):(J=at,at=r)))),at}function zd(){var at;return fI.test(e.charAt(J))?(at=e.charAt(J),J++):(at=r,wr===0&&ha(wI)),at}function Eh(){var at;return vl.test(e.charAt(J))?(at=e.charAt(J),J++):(at=r,wr===0&&ha(sl)),at}function g2(){var at,$t,Wr,vn,os;if(at=J,$t=[],Wr=J,e.charCodeAt(J)===92?(vn=Tu,J++):(vn=r,wr===0&&ha(xg)),vn!==r?(e.length>J?(os=e.charAt(J),J++):(os=r,wr===0&&ha(VA)),os!==r?(ye=Wr,vn=Vg(os),Wr=vn):(J=Wr,Wr=r)):(J=Wr,Wr=r),Wr===r&&(Wr=J,e.substr(J,2)===uf?(vn=uf,J+=2):(vn=r,wr===0&&ha(ja)),vn!==r&&(ye=Wr,vn=su()),Wr=vn,Wr===r&&(Wr=J,vn=J,wr++,os=hS(),wr--,os===r?vn=void 0:(J=vn,vn=r),vn!==r?(e.length>J?(os=e.charAt(J),J++):(os=r,wr===0&&ha(VA)),os!==r?(ye=Wr,vn=Vg(os),Wr=vn):(J=Wr,Wr=r)):(J=Wr,Wr=r))),Wr!==r)for(;Wr!==r;)$t.push(Wr),Wr=J,e.charCodeAt(J)===92?(vn=Tu,J++):(vn=r,wr===0&&ha(xg)),vn!==r?(e.length>J?(os=e.charAt(J),J++):(os=r,wr===0&&ha(VA)),os!==r?(ye=Wr,vn=Vg(os),Wr=vn):(J=Wr,Wr=r)):(J=Wr,Wr=r),Wr===r&&(Wr=J,e.substr(J,2)===uf?(vn=uf,J+=2):(vn=r,wr===0&&ha(ja)),vn!==r&&(ye=Wr,vn=su()),Wr=vn,Wr===r&&(Wr=J,vn=J,wr++,os=hS(),wr--,os===r?vn=void 0:(J=vn,vn=r),vn!==r?(e.length>J?(os=e.charAt(J),J++):(os=r,wr===0&&ha(VA)),os!==r?(ye=Wr,vn=Vg(os),Wr=vn):(J=Wr,Wr=r)):(J=Wr,Wr=r)));else $t=r;return $t!==r&&(ye=at,$t=$i($t)),at=$t,at}function xm(){var at,$t,Wr,vn,os,So;if(at=J,e.charCodeAt(J)===45?($t=ii,J++):($t=r,wr===0&&ha(RC)),$t===r&&(e.charCodeAt(J)===43?($t=Uh,J++):($t=r,wr===0&&ha(Nm))),$t===r&&($t=null),$t!==r){if(Wr=[],In.test(e.charAt(J))?(vn=e.charAt(J),J++):(vn=r,wr===0&&ha(Br)),vn!==r)for(;vn!==r;)Wr.push(vn),In.test(e.charAt(J))?(vn=e.charAt(J),J++):(vn=r,wr===0&&ha(Br));else Wr=r;if(Wr!==r)if(e.charCodeAt(J)===46?(vn=yl,J++):(vn=r,wr===0&&ha(Qg)),vn!==r){if(os=[],In.test(e.charAt(J))?(So=e.charAt(J),J++):(So=r,wr===0&&ha(Br)),So!==r)for(;So!==r;)os.push(So),In.test(e.charAt(J))?(So=e.charAt(J),J++):(So=r,wr===0&&ha(Br));else os=r;os!==r?(ye=at,$t=op($t,Wr,os),at=$t):(J=at,at=r)}else J=at,at=r;else J=at,at=r}else J=at,at=r;if(at===r){if(at=J,e.charCodeAt(J)===45?($t=ii,J++):($t=r,wr===0&&ha(RC)),$t===r&&(e.charCodeAt(J)===43?($t=Uh,J++):($t=r,wr===0&&ha(Nm))),$t===r&&($t=null),$t!==r){if(Wr=[],In.test(e.charAt(J))?(vn=e.charAt(J),J++):(vn=r,wr===0&&ha(Br)),vn!==r)for(;vn!==r;)Wr.push(vn),In.test(e.charAt(J))?(vn=e.charAt(J),J++):(vn=r,wr===0&&ha(Br));else Wr=r;Wr!==r?(ye=at,$t=um($t,Wr),at=$t):(J=at,at=r)}else J=at,at=r;if(at===r&&(at=J,$t=BE(),$t!==r&&(ye=at,$t=lh($t)),at=$t,at===r&&(at=J,$t=G0(),$t!==r&&(ye=at,$t=Jl($t)),at=$t,at===r)))if(at=J,e.charCodeAt(J)===40?($t=Ue,J++):($t=r,wr===0&&ha(Je)),$t!==r){for(Wr=[],vn=pc();vn!==r;)Wr.push(vn),vn=pc();if(Wr!==r)if(vn=B_(),vn!==r){for(os=[],So=pc();So!==r;)os.push(So),So=pc();os!==r?(e.charCodeAt(J)===41?(So=Xe,J++):(So=r,wr===0&&ha(ft)),So!==r?(ye=at,$t=Pp(vn),at=$t):(J=at,at=r)):(J=at,at=r)}else J=at,at=r;else J=at,at=r}else J=at,at=r}return at}function Ay(){var at,$t,Wr,vn,os,So,Ig,hg;if(at=J,$t=xm(),$t!==r){for(Wr=[],vn=J,os=[],So=pc();So!==r;)os.push(So),So=pc();if(os!==r)if(e.charCodeAt(J)===42?(So=gC,J++):(So=r,wr===0&&ha(fs)),So===r&&(e.charCodeAt(J)===47?(So=go,J++):(So=r,wr===0&&ha(Ro))),So!==r){for(Ig=[],hg=pc();hg!==r;)Ig.push(hg),hg=pc();Ig!==r?(hg=xm(),hg!==r?(ye=vn,os=ql($t,So,hg),vn=os):(J=vn,vn=r)):(J=vn,vn=r)}else J=vn,vn=r;else J=vn,vn=r;for(;vn!==r;){for(Wr.push(vn),vn=J,os=[],So=pc();So!==r;)os.push(So),So=pc();if(os!==r)if(e.charCodeAt(J)===42?(So=gC,J++):(So=r,wr===0&&ha(fs)),So===r&&(e.charCodeAt(J)===47?(So=go,J++):(So=r,wr===0&&ha(Ro))),So!==r){for(Ig=[],hg=pc();hg!==r;)Ig.push(hg),hg=pc();Ig!==r?(hg=xm(),hg!==r?(ye=vn,os=ql($t,So,hg),vn=os):(J=vn,vn=r)):(J=vn,vn=r)}else J=vn,vn=r;else J=vn,vn=r}Wr!==r?(ye=at,$t=Nr($t,Wr),at=$t):(J=at,at=r)}else J=at,at=r;return at}function B_(){var at,$t,Wr,vn,os,So,Ig,hg;if(at=J,$t=Ay(),$t!==r){for(Wr=[],vn=J,os=[],So=pc();So!==r;)os.push(So),So=pc();if(os!==r)if(e.charCodeAt(J)===43?(So=Uh,J++):(So=r,wr===0&&ha(Nm)),So===r&&(e.charCodeAt(J)===45?(So=ii,J++):(So=r,wr===0&&ha(RC))),So!==r){for(Ig=[],hg=pc();hg!==r;)Ig.push(hg),hg=pc();Ig!==r?(hg=Ay(),hg!==r?(ye=vn,os=Nn($t,So,hg),vn=os):(J=vn,vn=r)):(J=vn,vn=r)}else J=vn,vn=r;else J=vn,vn=r;for(;vn!==r;){for(Wr.push(vn),vn=J,os=[],So=pc();So!==r;)os.push(So),So=pc();if(os!==r)if(e.charCodeAt(J)===43?(So=Uh,J++):(So=r,wr===0&&ha(Nm)),So===r&&(e.charCodeAt(J)===45?(So=ii,J++):(So=r,wr===0&&ha(RC))),So!==r){for(Ig=[],hg=pc();hg!==r;)Ig.push(hg),hg=pc();Ig!==r?(hg=Ay(),hg!==r?(ye=vn,os=Nn($t,So,hg),vn=os):(J=vn,vn=r)):(J=vn,vn=r)}else J=vn,vn=r;else J=vn,vn=r}Wr!==r?(ye=at,$t=Nr($t,Wr),at=$t):(J=at,at=r)}else J=at,at=r;return at}function Qi(){var at,$t,Wr,vn,os,So;if(at=J,e.substr(J,3)===Di?($t=Di,J+=3):($t=r,wr===0&&ha(ra)),$t!==r){for(Wr=[],vn=pc();vn!==r;)Wr.push(vn),vn=pc();if(Wr!==r)if(vn=B_(),vn!==r){for(os=[],So=pc();So!==r;)os.push(So),So=pc();os!==r?(e.substr(J,2)===Us?(So=Us,J+=2):(So=r,wr===0&&ha(Li)),So!==r?(ye=at,$t=Ll(vn),at=$t):(J=at,at=r)):(J=at,at=r)}else J=at,at=r;else J=at,at=r}else J=at,at=r;return at}function dy(){var at,$t,Wr,vn;return at=J,e.substr(J,2)===DA?($t=DA,J+=2):($t=r,wr===0&&ha(Rd)),$t!==r?(Wr=Kh(),Wr!==r?(e.charCodeAt(J)===41?(vn=Xe,J++):(vn=r,wr===0&&ha(ft)),vn!==r?(ye=at,$t=PI(Wr),at=$t):(J=at,at=r)):(J=at,at=r)):(J=at,at=r),at}function BE(){var at,$t,Wr,vn,os,So;return at=J,e.substr(J,2)===fl?($t=fl,J+=2):($t=r,wr===0&&ha(Hm)),$t!==r?(Wr=G0(),Wr!==r?(e.substr(J,2)===I1?(vn=I1,J+=2):(vn=r,wr===0&&ha(Iv)),vn!==r?(os=$l(),os!==r?(e.charCodeAt(J)===125?(So=Ot,J++):(So=r,wr===0&&ha(dr)),So!==r?(ye=at,$t=tA(Wr,os),at=$t):(J=at,at=r)):(J=at,at=r)):(J=at,at=r)):(J=at,at=r)):(J=at,at=r),at===r&&(at=J,e.substr(J,2)===fl?($t=fl,J+=2):($t=r,wr===0&&ha(Hm)),$t!==r?(Wr=G0(),Wr!==r?(e.substr(J,3)===Rm?(vn=Rm,J+=3):(vn=r,wr===0&&ha(uh)),vn!==r?(ye=at,$t=Qy(Wr),at=$t):(J=at,at=r)):(J=at,at=r)):(J=at,at=r),at===r&&(at=J,e.substr(J,2)===fl?($t=fl,J+=2):($t=r,wr===0&&ha(Hm)),$t!==r?(Wr=G0(),Wr!==r?(e.substr(J,2)===Sp?(vn=Sp,J+=2):(vn=r,wr===0&&ha(rA)),vn!==r?(os=$l(),os!==r?(e.charCodeAt(J)===125?(So=Ot,J++):(So=r,wr===0&&ha(dr)),So!==r?(ye=at,$t=D0(Wr,os),at=$t):(J=at,at=r)):(J=at,at=r)):(J=at,at=r)):(J=at,at=r)):(J=at,at=r),at===r&&(at=J,e.substr(J,2)===fl?($t=fl,J+=2):($t=r,wr===0&&ha(Hm)),$t!==r?(Wr=G0(),Wr!==r?(e.substr(J,3)===yh?(vn=yh,J+=3):(vn=r,wr===0&&ha(uy)),vn!==r?(ye=at,$t=uc(Wr),at=$t):(J=at,at=r)):(J=at,at=r)):(J=at,at=r),at===r&&(at=J,e.substr(J,2)===fl?($t=fl,J+=2):($t=r,wr===0&&ha(Hm)),$t!==r?(Wr=G0(),Wr!==r?(e.charCodeAt(J)===125?(vn=Ot,J++):(vn=r,wr===0&&ha(dr)),vn!==r?(ye=at,$t=E_(Wr),at=$t):(J=at,at=r)):(J=at,at=r)):(J=at,at=r),at===r&&(at=J,e.charCodeAt(J)===36?($t=Tb,J++):($t=r,wr===0&&ha(gm)),$t!==r?(Wr=G0(),Wr!==r?(ye=at,$t=E_(Wr),at=$t):(J=at,at=r)):(J=at,at=r)))))),at}function gf(){var at,$t,Wr;return at=J,$t=A2(),$t!==r?(ye=J,Wr=gh($t),Wr?Wr=void 0:Wr=r,Wr!==r?(ye=at,$t=fg($t),at=$t):(J=at,at=r)):(J=at,at=r),at}function A2(){var at,$t,Wr,vn,os;if(at=J,$t=[],Wr=J,vn=J,wr++,os=C1(),wr--,os===r?vn=void 0:(J=vn,vn=r),vn!==r?(e.length>J?(os=e.charAt(J),J++):(os=r,wr===0&&ha(VA)),os!==r?(ye=Wr,vn=Vg(os),Wr=vn):(J=Wr,Wr=r)):(J=Wr,Wr=r),Wr!==r)for(;Wr!==r;)$t.push(Wr),Wr=J,vn=J,wr++,os=C1(),wr--,os===r?vn=void 0:(J=vn,vn=r),vn!==r?(e.length>J?(os=e.charAt(J),J++):(os=r,wr===0&&ha(VA)),os!==r?(ye=Wr,vn=Vg(os),Wr=vn):(J=Wr,Wr=r)):(J=Wr,Wr=r);else $t=r;return $t!==r&&(ye=at,$t=$i($t)),at=$t,at}function vE(){var at,$t,Wr;if(at=J,$t=[],Am.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ha(Nb)),Wr!==r)for(;Wr!==r;)$t.push(Wr),Am.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ha(Nb));else $t=r;return $t!==r&&(ye=at,$t=Dm()),at=$t,at}function G0(){var at,$t,Wr;if(at=J,$t=[],OI.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ha(Bf)),Wr!==r)for(;Wr!==r;)$t.push(Wr),OI.test(e.charAt(J))?(Wr=e.charAt(J),J++):(Wr=r,wr===0&&ha(Bf));else $t=r;return $t!==r&&(ye=at,$t=Dm()),at=$t,at}function hS(){var at;return tI.test(e.charAt(J))?(at=e.charAt(J),J++):(at=r,wr===0&&ha(Lf)),at}function C1(){var at;return yE.test(e.charAt(J))?(at=e.charAt(J),J++):(at=r,wr===0&&ha(gy)),at}function pc(){var at,$t;if(at=[],ie.test(e.charAt(J))?($t=e.charAt(J),J++):($t=r,wr===0&&ha(w)),$t!==r)for(;$t!==r;)at.push($t),ie.test(e.charAt(J))?($t=e.charAt(J),J++):($t=r,wr===0&&ha(w));else at=r;return at}if(Hn=a(),Hn!==r&&J===e.length)return Hn;throw Hn!==r&&J{"use strict";Object.defineProperty(TD,"__esModule",{value:!0});TD.stringifyShell=void 0;TD.parseShell=M2s;TD.stringifyShellLine=r9e;TD.stringifyShell=r9e;TD.stringifyCommandLine=y5t;TD.stringifyCommandLineThen=_jr;TD.stringifyCommandChain=b5t;TD.stringifyCommandChainThen=yjr;TD.stringifyCommand=bjr;TD.stringifyEnvSegment=_5t;TD.stringifyArgument=Ejr;TD.stringifyRedirectArgument=art;TD.stringifyValueArgument=zye;TD.stringifyArgumentSegment=Sjr;TD.stringifyArithmeticExpression=E5t;var Q2s=hjr();function M2s(e,t={isGlobPattern:()=>!1}){try{return(0,Q2s.parse)(e,t)}catch(r){throw r.location&&(r.message=r.message.replace(/(\.)?$/,` (line ${r.location.start.line}, column ${r.location.start.column})$1`)),r}}function r9e(e,{endSemicolon:t=!1}={}){return e.map(({command:r,type:s},a)=>`${y5t(r)}${s===";"?a!==e.length-1||t?";":"":" &"}`).join(" ")}function y5t(e){return`${b5t(e.chain)}${e.then?` ${_jr(e.then)}`:""}`}function _jr(e){return`${e.type} ${y5t(e.line)}`}function b5t(e){return`${bjr(e)}${e.then?` ${yjr(e.then)}`:""}`}function yjr(e){return`${e.type} ${b5t(e.chain)}`}function bjr(e){switch(e.type){case"command":return`${e.envs.length>0?`${e.envs.map(t=>_5t(t)).join(" ")} `:""}${e.args.map(t=>Ejr(t)).join(" ")}`;case"subshell":return`(${r9e(e.subshell)})${e.args.length>0?` ${e.args.map(t=>art(t)).join(" ")}`:""}`;case"group":return`{ ${r9e(e.group,{endSemicolon:!0})} }${e.args.length>0?` ${e.args.map(t=>art(t)).join(" ")}`:""}`;case"envs":return e.envs.map(t=>_5t(t)).join(" ");default:throw new Error(`Unsupported command type: "${e.type}"`)}}function _5t(e){return`${e.name}=${e.args[0]?zye(e.args[0]):""}`}function Ejr(e){switch(e.type){case"redirection":return art(e);case"argument":return zye(e);default:throw new Error(`Unsupported argument type: "${e.type}"`)}}function art(e){return`${e.subtype} ${e.args.map(t=>zye(t)).join(" ")}`}function zye(e){return e.segments.map(t=>Sjr(t)).join("")}var Bjr=new Map([["\f","\\f"],[` +`,"\\n"],["\r","\\r"],[" ","\\t"],["\v","\\v"],["\0","\\0"]]),H2s=new Map([["\\","\\\\"],["$","\\$"],['"','\\"'],...Array.from(Bjr,([e,t])=>[e,`"$'${t}'"`])]),vjr=e=>Bjr.get(e)??`\\x${e.charCodeAt(0).toString(16).padStart(2,"0")}`,Y2s=e=>H2s.get(e)??`"$'${vjr(e)}'"`;function Sjr(e){let t=(s,a)=>a?`"${s}"`:s,r=s=>s===""?"''":s.match(/[()}<>$|&;"'\n\t ]/)?s.match(/['\t\p{C}]/u)?s.match(/'/)?`"${s.replace(/["$\t\p{C}]/u,Y2s)}"`:`$'${s.replace(/[\t\p{C}]/u,vjr)}'`:`'${s}'`:s;switch(e.type){case"text":return r(e.text);case"glob":return e.pattern;case"shell":return t(`$(${r9e(e.shell)})`,e.quoted);case"variable":return t(typeof e.defaultValue>"u"?typeof e.alternativeValue>"u"?`\${${e.name}}`:e.alternativeValue.length===0?`\${${e.name}:+}`:`\${${e.name}:+${e.alternativeValue.map(s=>zye(s)).join(" ")}}`:e.defaultValue.length===0?`\${${e.name}:-}`:`\${${e.name}:-${e.defaultValue.map(s=>zye(s)).join(" ")}}`,e.quoted);case"arithmetic":return`$(( ${E5t(e.arithmetic)} ))`;default:throw new Error(`Unsupported argument segment type: "${e.type}"`)}}function E5t(e){let t=a=>{switch(a){case"addition":return"+";case"subtraction":return"-";case"multiplication":return"*";case"division":return"/";default:throw new Error(`Can't extract operator from arithmetic expression of type "${a}"`)}},r=(a,o)=>o?`( ${a} )`:a,s=a=>r(E5t(a),!["number","variable"].includes(a.type));switch(e.type){case"number":return String(e.value);case"variable":return e.name;default:return`${s(e.left)} ${t(e.type)} ${s(e.right)}`}}});var Njr=z((gZc,Tjr)=>{"use strict";function X2s(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function Uge(e,t,r,s){this.message=e,this.expected=t,this.found=r,this.location=s,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Uge)}X2s(Uge,Error);Uge.buildMessage=function(e,t){var r={literal:function(m){return'"'+a(m.text)+'"'},class:function(m){var y="",B;for(B=0;B0){for(B=1,v=1;Bfe&&(fe=le,pe=[]),pe.push(Br))}function dr(Br,tr){return new Uge(Br,null,null,tr)}function Ar(Br,tr,gn){return new Uge(Uge.buildMessage(Br,tr),Br,tr,gn)}function or(){var Br,tr,gn,Gn;return Br=le,tr=Fr(),tr!==r?(e.charCodeAt(le)===47?(gn=o,le++):(gn=r,he===0&&Ot(g)),gn!==r?(Gn=Fr(),Gn!==r?(ae=Br,tr=p(tr,Gn),Br=tr):(le=Br,Br=r)):(le=Br,Br=r)):(le=Br,Br=r),Br===r&&(Br=le,tr=Fr(),tr!==r&&(ae=Br,tr=f(tr)),Br=tr),Br}function Fr(){var Br,tr,gn,Gn;return Br=le,tr=$r(),tr!==r?(e.charCodeAt(le)===64?(gn=m,le++):(gn=r,he===0&&Ot(y)),gn!==r?(Gn=In(),Gn!==r?(ae=Br,tr=B(tr,Gn),Br=tr):(le=Br,Br=r)):(le=Br,Br=r)):(le=Br,Br=r),Br===r&&(Br=le,tr=$r(),tr!==r&&(ae=Br,tr=v(tr)),Br=tr),Br}function $r(){var Br,tr,gn,Gn,we;return Br=le,e.charCodeAt(le)===64?(tr=m,le++):(tr=r,he===0&&Ot(y)),tr!==r?(gn=Or(),gn!==r?(e.charCodeAt(le)===47?(Gn=o,le++):(Gn=r,he===0&&Ot(g)),Gn!==r?(we=Or(),we!==r?(ae=Br,tr=k(),Br=tr):(le=Br,Br=r)):(le=Br,Br=r)):(le=Br,Br=r)):(le=Br,Br=r),Br===r&&(Br=le,tr=Or(),tr!==r&&(ae=Br,tr=k()),Br=tr),Br}function Or(){var Br,tr,gn;if(Br=le,tr=[],T.test(e.charAt(le))?(gn=e.charAt(le),le++):(gn=r,he===0&&Ot(O)),gn!==r)for(;gn!==r;)tr.push(gn),T.test(e.charAt(le))?(gn=e.charAt(le),le++):(gn=r,he===0&&Ot(O));else tr=r;return tr!==r&&(ae=Br,tr=k()),Br=tr,Br}function In(){var Br,tr,gn;if(Br=le,tr=[],X.test(e.charAt(le))?(gn=e.charAt(le),le++):(gn=r,he===0&&Ot(U)),gn!==r)for(;gn!==r;)tr.push(gn),X.test(e.charAt(le))?(gn=e.charAt(le),le++):(gn=r,he===0&&Ot(U));else tr=r;return tr!==r&&(ae=Br,tr=k()),Br=tr,Br}if(be=a(),be!==r&&le===e.length)return be;throw be!==r&&le{"use strict";Object.defineProperty(crt,"__esModule",{value:!0});crt.parseResolution=K2s;crt.stringifyResolution=j2s;var U2s=Njr();function K2s(e){let t=e.match(/^\*{1,2}\/(.*)/);if(t)throw new Error(`The override for '${e}' includes a glob pattern. Glob patterns have been removed since their behaviours don't match what you'd expect. Set the override to '${t[1]}' instead.`);try{return(0,U2s.parse)(e)}catch(r){throw r.location&&(r.message=r.message.replace(/(\.)?$/,` (line ${r.location.start.line}, column ${r.location.start.column})$1`)),r}}function j2s(e){let t="";return e.from&&(t+=e.from.fullName,e.from.description&&(t+=`@${e.from.description}`),t+="/"),t+=e.descriptor.fullName,e.descriptor.description&&(t+=`@${e.descriptor.description}`),t}});var jge=z((dZc,Kge)=>{"use strict";function Djr(e){return typeof e>"u"||e===null}function z2s(e){return typeof e=="object"&&e!==null}function q2s(e){return Array.isArray(e)?e:Djr(e)?[]:[e]}function $2s(e,t){var r,s,a,o;if(t)for(o=Object.keys(t),r=0,s=o.length;r{"use strict";function n9e(e,t){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=t,this.message=(this.reason||"(unknown reason)")+(this.mark?" "+this.mark.toString():""),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}n9e.prototype=Object.create(Error.prototype);n9e.prototype.constructor=n9e;n9e.prototype.toString=function(t){var r=this.name+": ";return r+=this.reason||"(unknown reason)",!t&&this.mark&&(r+=" "+this.mark.toString()),r};xjr.exports=n9e});var Fjr=z((fZc,Gjr)=>{"use strict";var kjr=jge();function B5t(e,t,r,s,a){this.name=e,this.buffer=t,this.position=r,this.line=s,this.column=a}B5t.prototype.getSnippet=function(t,r){var s,a,o,g,p;if(!this.buffer)return null;for(t=t||4,r=r||75,s="",a=this.position;a>0&&`\0\r \x85\u2028\u2029`.indexOf(this.buffer.charAt(a-1))===-1;)if(a-=1,this.position-a>r/2-1){s=" ... ",a+=5;break}for(o="",g=this.position;gr/2-1){o=" ... ",g-=5;break}return p=this.buffer.slice(a,g),wjr.repeat(" ",t)+s+p+o+` -`+wjr.repeat(" ",t+this.position-a+s.length)+"^"};yQt.prototype.toString=function(t){var r,s="";return this.name&&(s+='in "'+this.name+'" '),s+="at line "+(this.line+1)+", column "+(this.column+1),t||(r=this.getSnippet(),r&&(s+=`: -`+r)),s};Tjr.exports=yQt});var TT=z((eZc,Djr)=>{"use strict";var Rjr=jye(),K2s=["kind","resolve","construct","instanceOf","predicate","represent","defaultStyle","styleAliases"],j2s=["scalar","sequence","mapping"];function z2s(e){var t={};return e!==null&&Object.keys(e).forEach(function(r){e[r].forEach(function(s){t[String(s)]=r})}),t}function q2s(e,t){if(t=t||{},Object.keys(t).forEach(function(r){if(K2s.indexOf(r)===-1)throw new Rjr('Unknown option "'+r+'" is met in definition of "'+e+'" YAML type.')}),this.tag=e,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(r){return r},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.defaultStyle=t.defaultStyle||null,this.styleAliases=z2s(t.styleAliases||null),j2s.indexOf(this.kind)===-1)throw new Rjr('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}Djr.exports=q2s});var Mge=z((tZc,kjr)=>{"use strict";var xjr=Oge(),art=jye(),$2s=TT();function bQt(e,t,r){var s=[];return e.include.forEach(function(a){r=bQt(a,t,r)}),e[t].forEach(function(a){r.forEach(function(o,g){o.tag===a.tag&&o.kind===a.kind&&s.push(g)}),r.push(a)}),r.filter(function(a,o){return s.indexOf(o)===-1})}function eBs(){var e={scalar:{},sequence:{},mapping:{},fallback:{}},t,r;function s(a){e[a.kind][a.tag]=e.fallback[a.tag]=a}for(t=0,r=arguments.length;t{"use strict";var tBs=TT();Gjr.exports=new tBs("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}})});var Ljr=z((nZc,Zjr)=>{"use strict";var rBs=TT();Zjr.exports=new rBs("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}})});var Wjr=z((iZc,Vjr)=>{"use strict";var nBs=TT();Vjr.exports=new nBs("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}})});var crt=z((sZc,Pjr)=>{"use strict";var iBs=Mge();Pjr.exports=new iBs({explicit:[Fjr(),Ljr(),Wjr()]})});var Mjr=z((oZc,Ojr)=>{"use strict";var sBs=TT();function oBs(e){if(e===null)return!0;var t=e.length;return t===1&&e==="~"||t===4&&(e==="null"||e==="Null"||e==="NULL")}function aBs(){return null}function cBs(e){return e===null}Ojr.exports=new sBs("tag:yaml.org,2002:null",{kind:"scalar",resolve:oBs,construct:aBs,predicate:cBs,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"}},defaultStyle:"lowercase"})});var Yjr=z((aZc,Qjr)=>{"use strict";var lBs=TT();function uBs(e){if(e===null)return!1;var t=e.length;return t===4&&(e==="true"||e==="True"||e==="TRUE")||t===5&&(e==="false"||e==="False"||e==="FALSE")}function gBs(e){return e==="true"||e==="True"||e==="TRUE"}function ABs(e){return Object.prototype.toString.call(e)==="[object Boolean]"}Qjr.exports=new lBs("tag:yaml.org,2002:bool",{kind:"scalar",resolve:uBs,construct:gBs,predicate:ABs,represent:{lowercase:function(e){return e?"true":"false"},uppercase:function(e){return e?"TRUE":"FALSE"},camelcase:function(e){return e?"True":"False"}},defaultStyle:"lowercase"})});var Xjr=z((cZc,Hjr)=>{"use strict";var dBs=Oge(),pBs=TT();function fBs(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function IBs(e){return 48<=e&&e<=55}function CBs(e){return 48<=e&&e<=57}function mBs(e){if(e===null)return!1;var t=e.length,r=0,s=!1,a;if(!t)return!1;if(a=e[r],(a==="-"||a==="+")&&(a=e[++r]),a==="0"){if(r+1===t)return!0;if(a=e[++r],a==="b"){for(r++;r=0?"0b"+e.toString(2):"-0b"+e.toString(2).slice(1)},octal:function(e){return e>=0?"0"+e.toString(8):"-0"+e.toString(8).slice(1)},decimal:function(e){return e.toString(10)},hexadecimal:function(e){return e>=0?"0x"+e.toString(16).toUpperCase():"-0x"+e.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}})});var Kjr=z((lZc,Ujr)=>{"use strict";var Jjr=Oge(),yBs=TT(),bBs=new RegExp("^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function EBs(e){return!(e===null||!bBs.test(e)||e[e.length-1]==="_")}function BBs(e){var t,r,s,a;return t=e.replace(/_/g,"").toLowerCase(),r=t[0]==="-"?-1:1,a=[],"+-".indexOf(t[0])>=0&&(t=t.slice(1)),t===".inf"?r===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:t===".nan"?NaN:t.indexOf(":")>=0?(t.split(":").forEach(function(o){a.unshift(parseFloat(o,10))}),t=0,s=1,a.forEach(function(o){t+=o*s,s*=60}),r*t):r*parseFloat(t,10)}var vBs=/^[-+]?[0-9]+e/;function SBs(e,t){var r;if(isNaN(e))switch(t){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(t){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(t){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(Jjr.isNegativeZero(e))return"-0.0";return r=e.toString(10),vBs.test(r)?r.replace("e",".e"):r}function wBs(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||Jjr.isNegativeZero(e))}Ujr.exports=new yBs("tag:yaml.org,2002:float",{kind:"scalar",resolve:EBs,construct:BBs,predicate:wBs,represent:SBs,defaultStyle:"lowercase"})});var EQt=z((uZc,jjr)=>{"use strict";var TBs=Mge();jjr.exports=new TBs({include:[crt()],implicit:[Mjr(),Yjr(),Xjr(),Kjr()]})});var BQt=z((gZc,zjr)=>{"use strict";var NBs=Mge();zjr.exports=new NBs({include:[EQt()]})});var tzr=z((AZc,ezr)=>{"use strict";var RBs=TT(),qjr=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),$jr=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 DBs(e){return e===null?!1:qjr.exec(e)!==null||$jr.exec(e)!==null}function xBs(e){var t,r,s,a,o,g,p,f=0,m=null,y,B,v;if(t=qjr.exec(e),t===null&&(t=$jr.exec(e)),t===null)throw new Error("Date resolve error");if(r=+t[1],s=+t[2]-1,a=+t[3],!t[4])return new Date(Date.UTC(r,s,a));if(o=+t[4],g=+t[5],p=+t[6],t[7]){for(f=t[7].slice(0,3);f.length<3;)f+="0";f=+f}return t[9]&&(y=+t[10],B=+(t[11]||0),m=(y*60+B)*6e4,t[9]==="-"&&(m=-m)),v=new Date(Date.UTC(r,s,a,o,g,p,f)),m&&v.setTime(v.getTime()-m),v}function kBs(e){return e.toISOString()}ezr.exports=new RBs("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:DBs,construct:xBs,instanceOf:Date,represent:kBs})});var nzr=z((dZc,rzr)=>{"use strict";var GBs=TT();function FBs(e){return e==="<<"||e===null}rzr.exports=new GBs("tag:yaml.org,2002:merge",{kind:"scalar",resolve:FBs})});var ozr=z((pZc,szr)=>{"use strict";var Qge;try{izr=Dt,Qge=izr("buffer").Buffer}catch{}var izr,ZBs=TT(),vQt=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= -\r`;function LBs(e){if(e===null)return!1;var t,r,s=0,a=e.length,o=vQt;for(r=0;r64)){if(t<0)return!1;s+=6}return s%8===0}function VBs(e){var t,r,s=e.replace(/[\r\n=]/g,""),a=s.length,o=vQt,g=0,p=[];for(t=0;t>16&255),p.push(g>>8&255),p.push(g&255)),g=g<<6|o.indexOf(s.charAt(t));return r=a%4*6,r===0?(p.push(g>>16&255),p.push(g>>8&255),p.push(g&255)):r===18?(p.push(g>>10&255),p.push(g>>2&255)):r===12&&p.push(g>>4&255),Qge?Qge.from?Qge.from(p):new Qge(p):p}function WBs(e){var t="",r=0,s,a,o=e.length,g=vQt;for(s=0;s>18&63],t+=g[r>>12&63],t+=g[r>>6&63],t+=g[r&63]),r=(r<<8)+e[s];return a=o%3,a===0?(t+=g[r>>18&63],t+=g[r>>12&63],t+=g[r>>6&63],t+=g[r&63]):a===2?(t+=g[r>>10&63],t+=g[r>>4&63],t+=g[r<<2&63],t+=g[64]):a===1&&(t+=g[r>>2&63],t+=g[r<<4&63],t+=g[64],t+=g[64]),t}function PBs(e){return Qge&&Qge.isBuffer(e)}szr.exports=new ZBs("tag:yaml.org,2002:binary",{kind:"scalar",resolve:LBs,construct:VBs,predicate:PBs,represent:WBs})});var czr=z((IZc,azr)=>{"use strict";var OBs=TT(),MBs=Object.prototype.hasOwnProperty,QBs=Object.prototype.toString;function YBs(e){if(e===null)return!0;var t=[],r,s,a,o,g,p=e;for(r=0,s=p.length;r{"use strict";var XBs=TT(),JBs=Object.prototype.toString;function UBs(e){if(e===null)return!0;var t,r,s,a,o,g=e;for(o=new Array(g.length),t=0,r=g.length;t{"use strict";var jBs=TT(),zBs=Object.prototype.hasOwnProperty;function qBs(e){if(e===null)return!0;var t,r=e;for(t in r)if(zBs.call(r,t)&&r[t]!==null)return!1;return!0}function $Bs(e){return e!==null?e:{}}gzr.exports=new jBs("tag:yaml.org,2002:set",{kind:"mapping",resolve:qBs,construct:$Bs})});var qye=z((hZc,dzr)=>{"use strict";var evs=Mge();dzr.exports=new evs({include:[BQt()],implicit:[tzr(),nzr()],explicit:[ozr(),czr(),uzr(),Azr()]})});var fzr=z((_Zc,pzr)=>{"use strict";var tvs=TT();function rvs(){return!0}function nvs(){}function ivs(){return""}function svs(e){return typeof e>"u"}pzr.exports=new tvs("tag:yaml.org,2002:js/undefined",{kind:"scalar",resolve:rvs,construct:nvs,predicate:svs,represent:ivs})});var Czr=z((yZc,Izr)=>{"use strict";var ovs=TT();function avs(e){if(e===null||e.length===0)return!1;var t=e,r=/\/([gim]*)$/.exec(e),s="";return!(t[0]==="/"&&(r&&(s=r[1]),s.length>3||t[t.length-s.length-1]!=="/"))}function cvs(e){var t=e,r=/\/([gim]*)$/.exec(e),s="";return t[0]==="/"&&(r&&(s=r[1]),t=t.slice(1,t.length-s.length-1)),new RegExp(t,s)}function lvs(e){var t="/"+e.source+"/";return e.global&&(t+="g"),e.multiline&&(t+="m"),e.ignoreCase&&(t+="i"),t}function uvs(e){return Object.prototype.toString.call(e)==="[object RegExp]"}Izr.exports=new ovs("tag:yaml.org,2002:js/regexp",{kind:"scalar",resolve:avs,construct:cvs,predicate:uvs,represent:lvs})});var _zr=z((bZc,hzr)=>{"use strict";var lrt;try{mzr=Dt,lrt=mzr("esprima")}catch{typeof window<"u"&&(lrt=window.esprima)}var mzr,gvs=TT();function Avs(e){if(e===null)return!1;try{var t="("+e+")",r=lrt.parse(t,{range:!0});return!(r.type!=="Program"||r.body.length!==1||r.body[0].type!=="ExpressionStatement"||r.body[0].expression.type!=="ArrowFunctionExpression"&&r.body[0].expression.type!=="FunctionExpression")}catch{return!1}}function dvs(e){var t="("+e+")",r=lrt.parse(t,{range:!0}),s=[],a;if(r.type!=="Program"||r.body.length!==1||r.body[0].type!=="ExpressionStatement"||r.body[0].expression.type!=="ArrowFunctionExpression"&&r.body[0].expression.type!=="FunctionExpression")throw new Error("Failed to resolve function");return r.body[0].expression.params.forEach(function(o){s.push(o.name)}),a=r.body[0].expression.body.range,r.body[0].expression.body.type==="BlockStatement"?new Function(s,t.slice(a[0]+1,a[1]-1)):new Function(s,"return "+t.slice(a[0],a[1]))}function pvs(e){return e.toString()}function fvs(e){return Object.prototype.toString.call(e)==="[object Function]"}hzr.exports=new gvs("tag:yaml.org,2002:js/function",{kind:"scalar",resolve:Avs,construct:dvs,predicate:fvs,represent:pvs})});var r9e=z((BZc,bzr)=>{"use strict";var yzr=Mge();bzr.exports=yzr.DEFAULT=new yzr({include:[qye()],explicit:[fzr(),Czr(),_zr()]})});var Ozr=z((vZc,n9e)=>{"use strict";var z7=Oge(),Nzr=jye(),Ivs=Njr(),Rzr=qye(),Cvs=r9e(),rne=Object.prototype.hasOwnProperty,urt=1,Dzr=2,xzr=3,grt=4,SQt=1,mvs=2,Ezr=3,hvs=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,_vs=/[\x85\u2028\u2029]/,yvs=/[,\[\]\{\}]/,kzr=/^(?:!|!!|![a-z\-]+!)$/i,Gzr=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function Bzr(e){return Object.prototype.toString.call(e)}function IJ(e){return e===10||e===13}function Hge(e){return e===9||e===32}function SL(e){return e===9||e===32||e===10||e===13}function $ye(e){return e===44||e===91||e===93||e===123||e===125}function bvs(e){var t;return 48<=e&&e<=57?e-48:(t=e|32,97<=t&&t<=102?t-97+10:-1)}function Evs(e){return e===120?2:e===117?4:e===85?8:0}function Bvs(e){return 48<=e&&e<=57?e-48:-1}function vzr(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?` -`:e===118?"\v":e===102?"\f":e===114?"\r":e===101?"\x1B":e===32?" ":e===34?'"':e===47?"/":e===92?"\\":e===78?"\x85":e===95?"\xA0":e===76?"\u2028":e===80?"\u2029":""}function vvs(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}var Fzr=new Array(256),Zzr=new Array(256);for(Yge=0;Yge<256;Yge++)Fzr[Yge]=vzr(Yge)?1:0,Zzr[Yge]=vzr(Yge);var Yge;function Svs(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||Cvs,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.json=t.json||!1,this.listener=t.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.documents=[]}function Lzr(e,t){return new Nzr(t,new Ivs(e.filename,e.input,e.position,e.line,e.position-e.lineStart))}function Jp(e,t){throw Lzr(e,t)}function Art(e,t){e.onWarning&&e.onWarning.call(null,Lzr(e,t))}var Szr={YAML:function(t,r,s){var a,o,g;t.version!==null&&Jp(t,"duplication of %YAML directive"),s.length!==1&&Jp(t,"YAML directive accepts exactly one argument"),a=/^([0-9]+)\.([0-9]+)$/.exec(s[0]),a===null&&Jp(t,"ill-formed argument of the YAML directive"),o=parseInt(a[1],10),g=parseInt(a[2],10),o!==1&&Jp(t,"unacceptable YAML version of the document"),t.version=s[0],t.checkLineBreaks=g<2,g!==1&&g!==2&&Art(t,"unsupported YAML version of the document")},TAG:function(t,r,s){var a,o;s.length!==2&&Jp(t,"TAG directive accepts exactly two arguments"),a=s[0],o=s[1],kzr.test(a)||Jp(t,"ill-formed tag handle (first argument) of the TAG directive"),rne.call(t.tagMap,a)&&Jp(t,'there is a previously declared suffix for "'+a+'" tag handle'),Gzr.test(o)||Jp(t,"ill-formed tag prefix (second argument) of the TAG directive"),t.tagMap[a]=o}};function tne(e,t,r,s){var a,o,g,p;if(t1&&(e.result+=z7.repeat(` -`,t-1))}function wvs(e,t,r){var s,a,o,g,p,f,m,y,B=e.kind,v=e.result,G;if(G=e.input.charCodeAt(e.position),SL(G)||$ye(G)||G===35||G===38||G===42||G===33||G===124||G===62||G===39||G===34||G===37||G===64||G===96||(G===63||G===45)&&(a=e.input.charCodeAt(e.position+1),SL(a)||r&&$ye(a)))return!1;for(e.kind="scalar",e.result="",o=g=e.position,p=!1;G!==0;){if(G===58){if(a=e.input.charCodeAt(e.position+1),SL(a)||r&&$ye(a))break}else if(G===35){if(s=e.input.charCodeAt(e.position-1),SL(s))break}else{if(e.position===e.lineStart&&drt(e)||r&&$ye(G))break;if(IJ(G))if(f=e.line,m=e.lineStart,y=e.lineIndent,pw(e,!1,-1),e.lineIndent>=t){p=!0,G=e.input.charCodeAt(e.position);continue}else{e.position=g,e.line=f,e.lineStart=m,e.lineIndent=y;break}}p&&(tne(e,o,g,!1),TQt(e,e.line-f),o=g=e.position,p=!1),Hge(G)||(g=e.position+1),G=e.input.charCodeAt(++e.position)}return tne(e,o,g,!1),e.result?!0:(e.kind=B,e.result=v,!1)}function Tvs(e,t){var r,s,a;if(r=e.input.charCodeAt(e.position),r!==39)return!1;for(e.kind="scalar",e.result="",e.position++,s=a=e.position;(r=e.input.charCodeAt(e.position))!==0;)if(r===39)if(tne(e,s,e.position,!0),r=e.input.charCodeAt(++e.position),r===39)s=e.position,e.position++,a=e.position;else return!0;else IJ(r)?(tne(e,s,a,!0),TQt(e,pw(e,!1,t)),s=a=e.position):e.position===e.lineStart&&drt(e)?Jp(e,"unexpected end of the document within a single quoted scalar"):(e.position++,a=e.position);Jp(e,"unexpected end of the stream within a single quoted scalar")}function Nvs(e,t){var r,s,a,o,g,p;if(p=e.input.charCodeAt(e.position),p!==34)return!1;for(e.kind="scalar",e.result="",e.position++,r=s=e.position;(p=e.input.charCodeAt(e.position))!==0;){if(p===34)return tne(e,r,e.position,!0),e.position++,!0;if(p===92){if(tne(e,r,e.position,!0),p=e.input.charCodeAt(++e.position),IJ(p))pw(e,!1,t);else if(p<256&&Fzr[p])e.result+=Zzr[p],e.position++;else if((g=Evs(p))>0){for(a=g,o=0;a>0;a--)p=e.input.charCodeAt(++e.position),(g=bvs(p))>=0?o=(o<<4)+g:Jp(e,"expected hexadecimal character");e.result+=vvs(o),e.position++}else Jp(e,"unknown escape sequence");r=s=e.position}else IJ(p)?(tne(e,r,s,!0),TQt(e,pw(e,!1,t)),r=s=e.position):e.position===e.lineStart&&drt(e)?Jp(e,"unexpected end of the document within a double quoted scalar"):(e.position++,s=e.position)}Jp(e,"unexpected end of the stream within a double quoted scalar")}function Rvs(e,t){var r=!0,s,a=e.tag,o,g=e.anchor,p,f,m,y,B,v={},G,T,O,X;if(X=e.input.charCodeAt(e.position),X===91)f=93,B=!1,o=[];else if(X===123)f=125,B=!0,o={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=o),X=e.input.charCodeAt(++e.position);X!==0;){if(pw(e,!0,t),X=e.input.charCodeAt(e.position),X===f)return e.position++,e.tag=a,e.anchor=g,e.kind=B?"mapping":"sequence",e.result=o,!0;r||Jp(e,"missed comma between flow collection entries"),T=G=O=null,m=y=!1,X===63&&(p=e.input.charCodeAt(e.position+1),SL(p)&&(m=y=!0,e.position++,pw(e,!0,t))),s=e.line,tbe(e,t,urt,!1,!0),T=e.tag,G=e.result,pw(e,!0,t),X=e.input.charCodeAt(e.position),(y||e.line===s)&&X===58&&(m=!0,X=e.input.charCodeAt(++e.position),pw(e,!0,t),tbe(e,t,urt,!1,!0),O=e.result),B?ebe(e,o,v,T,G,O):m?o.push(ebe(e,null,v,T,G,O)):o.push(G),pw(e,!0,t),X=e.input.charCodeAt(e.position),X===44?(r=!0,X=e.input.charCodeAt(++e.position)):r=!1}Jp(e,"unexpected end of the stream within a flow collection")}function Dvs(e,t){var r,s,a=SQt,o=!1,g=!1,p=t,f=0,m=!1,y,B;if(B=e.input.charCodeAt(e.position),B===124)s=!1;else if(B===62)s=!0;else return!1;for(e.kind="scalar",e.result="";B!==0;)if(B=e.input.charCodeAt(++e.position),B===43||B===45)SQt===a?a=B===43?Ezr:mvs:Jp(e,"repeat of a chomping mode identifier");else if((y=Bvs(B))>=0)y===0?Jp(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):g?Jp(e,"repeat of an indentation width identifier"):(p=t+y-1,g=!0);else break;if(Hge(B)){do B=e.input.charCodeAt(++e.position);while(Hge(B));if(B===35)do B=e.input.charCodeAt(++e.position);while(!IJ(B)&&B!==0)}for(;B!==0;){for(wQt(e),e.lineIndent=0,B=e.input.charCodeAt(e.position);(!g||e.lineIndentp&&(p=e.lineIndent),IJ(B)){f++;continue}if(e.lineIndentt)&&f!==0)Jp(e,"bad indentation of a sequence entry");else if(e.lineIndentt)&&(tbe(e,t,grt,!0,a)&&(T?v=e.result:G=e.result),T||(ebe(e,m,y,B,v,G,o,g),B=v=G=null),pw(e,!0,-1),X=e.input.charCodeAt(e.position)),e.lineIndent>t&&X!==0)Jp(e,"bad indentation of a mapping entry");else if(e.lineIndentt?f=1:e.lineIndent===t?f=0:e.lineIndentt?f=1:e.lineIndent===t?f=0:e.lineIndent tag; it should be "scalar", not "'+e.kind+'"'),B=0,v=e.implicitTypes.length;B tag; it should be "'+G.kind+'", not "'+e.kind+'"'),G.resolve(e.result)?(e.result=G.construct(e.result),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):Jp(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")):Jp(e,"unknown tag !<"+e.tag+">");return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||y}function Zvs(e){var t=e.position,r,s,a,o=!1,g;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap={},e.anchorMap={};(g=e.input.charCodeAt(e.position))!==0&&(pw(e,!0,-1),g=e.input.charCodeAt(e.position),!(e.lineIndent>0||g!==37));){for(o=!0,g=e.input.charCodeAt(++e.position),r=e.position;g!==0&&!SL(g);)g=e.input.charCodeAt(++e.position);for(s=e.input.slice(r,e.position),a=[],s.length<1&&Jp(e,"directive name must not be less than one character in length");g!==0;){for(;Hge(g);)g=e.input.charCodeAt(++e.position);if(g===35){do g=e.input.charCodeAt(++e.position);while(g!==0&&!IJ(g));break}if(IJ(g))break;for(r=e.position;g!==0&&!SL(g);)g=e.input.charCodeAt(++e.position);a.push(e.input.slice(r,e.position))}g!==0&&wQt(e),rne.call(Szr,s)?Szr[s](e,s,a):Art(e,'unknown document directive "'+s+'"')}if(pw(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,pw(e,!0,-1)):o&&Jp(e,"directives end mark is expected"),tbe(e,e.lineIndent-1,grt,!1,!0),pw(e,!0,-1),e.checkLineBreaks&&_vs.test(e.input.slice(t,e.position))&&Art(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&drt(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,pw(e,!0,-1));return}if(e.position"u"&&(r=t,t=null);var s=Vzr(e,r);if(typeof t!="function")return s;for(var a=0,o=s.length;a"u"&&(r=t,t=null),Wzr(e,t,z7.extend({schema:Rzr},r))}function Vvs(e,t){return Pzr(e,z7.extend({schema:Rzr},t))}n9e.exports.loadAll=Wzr;n9e.exports.load=Pzr;n9e.exports.safeLoadAll=Lvs;n9e.exports.safeLoad=Vvs});var uqr=z((SZc,xQt)=>{"use strict";var s9e=Oge(),o9e=jye(),Wvs=r9e(),Pvs=qye(),Kzr=Object.prototype.toString,jzr=Object.prototype.hasOwnProperty,Ovs=9,i9e=10,Mvs=13,Qvs=32,Yvs=33,Hvs=34,zzr=35,Xvs=37,Jvs=38,Uvs=39,Kvs=42,qzr=44,jvs=45,$zr=58,zvs=61,qvs=62,$vs=63,eSs=64,eqr=91,tqr=93,tSs=96,rqr=123,rSs=124,nqr=125,nk={};nk[0]="\\0";nk[7]="\\a";nk[8]="\\b";nk[9]="\\t";nk[10]="\\n";nk[11]="\\v";nk[12]="\\f";nk[13]="\\r";nk[27]="\\e";nk[34]='\\"';nk[92]="\\\\";nk[133]="\\N";nk[160]="\\_";nk[8232]="\\L";nk[8233]="\\P";var nSs=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"];function iSs(e,t){var r,s,a,o,g,p,f;if(t===null)return{};for(r={},s=Object.keys(t),a=0,o=s.length;ar/2-1){o=" ... ",g-=5;break}return p=this.buffer.slice(a,g),kjr.repeat(" ",t)+s+p+o+` +`+kjr.repeat(" ",t+this.position-a+s.length)+"^"};B5t.prototype.toString=function(t){var r,s="";return this.name&&(s+='in "'+this.name+'" '),s+="at line "+(this.line+1)+", column "+(this.column+1),t||(r=this.getSnippet(),r&&(s+=`: +`+r)),s};Gjr.exports=B5t});var NT=z((IZc,Ljr)=>{"use strict";var Zjr=qye(),rBs=["kind","resolve","construct","instanceOf","predicate","represent","defaultStyle","styleAliases"],nBs=["scalar","sequence","mapping"];function iBs(e){var t={};return e!==null&&Object.keys(e).forEach(function(r){e[r].forEach(function(s){t[String(s)]=r})}),t}function sBs(e,t){if(t=t||{},Object.keys(t).forEach(function(r){if(rBs.indexOf(r)===-1)throw new Zjr('Unknown option "'+r+'" is met in definition of "'+e+'" YAML type.')}),this.tag=e,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(r){return r},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.defaultStyle=t.defaultStyle||null,this.styleAliases=iBs(t.styleAliases||null),nBs.indexOf(this.kind)===-1)throw new Zjr('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}Ljr.exports=sBs});var zge=z((CZc,Wjr)=>{"use strict";var Vjr=jge(),lrt=qye(),oBs=NT();function v5t(e,t,r){var s=[];return e.include.forEach(function(a){r=v5t(a,t,r)}),e[t].forEach(function(a){r.forEach(function(o,g){o.tag===a.tag&&o.kind===a.kind&&s.push(g)}),r.push(a)}),r.filter(function(a,o){return s.indexOf(o)===-1})}function aBs(){var e={scalar:{},sequence:{},mapping:{},fallback:{}},t,r;function s(a){e[a.kind][a.tag]=e.fallback[a.tag]=a}for(t=0,r=arguments.length;t{"use strict";var cBs=NT();Pjr.exports=new cBs("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}})});var Mjr=z((hZc,Qjr)=>{"use strict";var lBs=NT();Qjr.exports=new lBs("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}})});var Yjr=z((_Zc,Hjr)=>{"use strict";var uBs=NT();Hjr.exports=new uBs("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}})});var urt=z((yZc,Xjr)=>{"use strict";var gBs=zge();Xjr.exports=new gBs({explicit:[Ojr(),Mjr(),Yjr()]})});var Ujr=z((bZc,Jjr)=>{"use strict";var ABs=NT();function dBs(e){if(e===null)return!0;var t=e.length;return t===1&&e==="~"||t===4&&(e==="null"||e==="Null"||e==="NULL")}function pBs(){return null}function fBs(e){return e===null}Jjr.exports=new ABs("tag:yaml.org,2002:null",{kind:"scalar",resolve:dBs,construct:pBs,predicate:fBs,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"}},defaultStyle:"lowercase"})});var jjr=z((EZc,Kjr)=>{"use strict";var IBs=NT();function CBs(e){if(e===null)return!1;var t=e.length;return t===4&&(e==="true"||e==="True"||e==="TRUE")||t===5&&(e==="false"||e==="False"||e==="FALSE")}function mBs(e){return e==="true"||e==="True"||e==="TRUE"}function hBs(e){return Object.prototype.toString.call(e)==="[object Boolean]"}Kjr.exports=new IBs("tag:yaml.org,2002:bool",{kind:"scalar",resolve:CBs,construct:mBs,predicate:hBs,represent:{lowercase:function(e){return e?"true":"false"},uppercase:function(e){return e?"TRUE":"FALSE"},camelcase:function(e){return e?"True":"False"}},defaultStyle:"lowercase"})});var qjr=z((BZc,zjr)=>{"use strict";var _Bs=jge(),yBs=NT();function bBs(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function EBs(e){return 48<=e&&e<=55}function BBs(e){return 48<=e&&e<=57}function vBs(e){if(e===null)return!1;var t=e.length,r=0,s=!1,a;if(!t)return!1;if(a=e[r],(a==="-"||a==="+")&&(a=e[++r]),a==="0"){if(r+1===t)return!0;if(a=e[++r],a==="b"){for(r++;r=0?"0b"+e.toString(2):"-0b"+e.toString(2).slice(1)},octal:function(e){return e>=0?"0"+e.toString(8):"-0"+e.toString(8).slice(1)},decimal:function(e){return e.toString(10)},hexadecimal:function(e){return e>=0?"0x"+e.toString(16).toUpperCase():"-0x"+e.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}})});var tzr=z((vZc,ezr)=>{"use strict";var $jr=jge(),TBs=NT(),NBs=new RegExp("^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function RBs(e){return!(e===null||!NBs.test(e)||e[e.length-1]==="_")}function DBs(e){var t,r,s,a;return t=e.replace(/_/g,"").toLowerCase(),r=t[0]==="-"?-1:1,a=[],"+-".indexOf(t[0])>=0&&(t=t.slice(1)),t===".inf"?r===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:t===".nan"?NaN:t.indexOf(":")>=0?(t.split(":").forEach(function(o){a.unshift(parseFloat(o,10))}),t=0,s=1,a.forEach(function(o){t+=o*s,s*=60}),r*t):r*parseFloat(t,10)}var xBs=/^[-+]?[0-9]+e/;function kBs(e,t){var r;if(isNaN(e))switch(t){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(t){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(t){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if($jr.isNegativeZero(e))return"-0.0";return r=e.toString(10),xBs.test(r)?r.replace("e",".e"):r}function GBs(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||$jr.isNegativeZero(e))}ezr.exports=new TBs("tag:yaml.org,2002:float",{kind:"scalar",resolve:RBs,construct:DBs,predicate:GBs,represent:kBs,defaultStyle:"lowercase"})});var S5t=z((SZc,rzr)=>{"use strict";var FBs=zge();rzr.exports=new FBs({include:[urt()],implicit:[Ujr(),jjr(),qjr(),tzr()]})});var w5t=z((wZc,nzr)=>{"use strict";var ZBs=zge();nzr.exports=new ZBs({include:[S5t()]})});var azr=z((TZc,ozr)=>{"use strict";var LBs=NT(),izr=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),szr=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 VBs(e){return e===null?!1:izr.exec(e)!==null||szr.exec(e)!==null}function WBs(e){var t,r,s,a,o,g,p,f=0,m=null,y,B,v;if(t=izr.exec(e),t===null&&(t=szr.exec(e)),t===null)throw new Error("Date resolve error");if(r=+t[1],s=+t[2]-1,a=+t[3],!t[4])return new Date(Date.UTC(r,s,a));if(o=+t[4],g=+t[5],p=+t[6],t[7]){for(f=t[7].slice(0,3);f.length<3;)f+="0";f=+f}return t[9]&&(y=+t[10],B=+(t[11]||0),m=(y*60+B)*6e4,t[9]==="-"&&(m=-m)),v=new Date(Date.UTC(r,s,a,o,g,p,f)),m&&v.setTime(v.getTime()-m),v}function PBs(e){return e.toISOString()}ozr.exports=new LBs("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:VBs,construct:WBs,instanceOf:Date,represent:PBs})});var lzr=z((NZc,czr)=>{"use strict";var OBs=NT();function QBs(e){return e==="<<"||e===null}czr.exports=new OBs("tag:yaml.org,2002:merge",{kind:"scalar",resolve:QBs})});var Azr=z((RZc,gzr)=>{"use strict";var qge;try{uzr=xt,qge=uzr("buffer").Buffer}catch{}var uzr,MBs=NT(),T5t=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= +\r`;function HBs(e){if(e===null)return!1;var t,r,s=0,a=e.length,o=T5t;for(r=0;r64)){if(t<0)return!1;s+=6}return s%8===0}function YBs(e){var t,r,s=e.replace(/[\r\n=]/g,""),a=s.length,o=T5t,g=0,p=[];for(t=0;t>16&255),p.push(g>>8&255),p.push(g&255)),g=g<<6|o.indexOf(s.charAt(t));return r=a%4*6,r===0?(p.push(g>>16&255),p.push(g>>8&255),p.push(g&255)):r===18?(p.push(g>>10&255),p.push(g>>2&255)):r===12&&p.push(g>>4&255),qge?qge.from?qge.from(p):new qge(p):p}function XBs(e){var t="",r=0,s,a,o=e.length,g=T5t;for(s=0;s>18&63],t+=g[r>>12&63],t+=g[r>>6&63],t+=g[r&63]),r=(r<<8)+e[s];return a=o%3,a===0?(t+=g[r>>18&63],t+=g[r>>12&63],t+=g[r>>6&63],t+=g[r&63]):a===2?(t+=g[r>>10&63],t+=g[r>>4&63],t+=g[r<<2&63],t+=g[64]):a===1&&(t+=g[r>>2&63],t+=g[r<<4&63],t+=g[64],t+=g[64]),t}function JBs(e){return qge&&qge.isBuffer(e)}gzr.exports=new MBs("tag:yaml.org,2002:binary",{kind:"scalar",resolve:HBs,construct:YBs,predicate:JBs,represent:XBs})});var pzr=z((xZc,dzr)=>{"use strict";var UBs=NT(),KBs=Object.prototype.hasOwnProperty,jBs=Object.prototype.toString;function zBs(e){if(e===null)return!0;var t=[],r,s,a,o,g,p=e;for(r=0,s=p.length;r{"use strict";var $Bs=NT(),evs=Object.prototype.toString;function tvs(e){if(e===null)return!0;var t,r,s,a,o,g=e;for(o=new Array(g.length),t=0,r=g.length;t{"use strict";var nvs=NT(),ivs=Object.prototype.hasOwnProperty;function svs(e){if(e===null)return!0;var t,r=e;for(t in r)if(ivs.call(r,t)&&r[t]!==null)return!1;return!0}function ovs(e){return e!==null?e:{}}Czr.exports=new nvs("tag:yaml.org,2002:set",{kind:"mapping",resolve:svs,construct:ovs})});var ebe=z((FZc,hzr)=>{"use strict";var avs=zge();hzr.exports=new avs({include:[w5t()],implicit:[azr(),lzr()],explicit:[Azr(),pzr(),Izr(),mzr()]})});var yzr=z((ZZc,_zr)=>{"use strict";var cvs=NT();function lvs(){return!0}function uvs(){}function gvs(){return""}function Avs(e){return typeof e>"u"}_zr.exports=new cvs("tag:yaml.org,2002:js/undefined",{kind:"scalar",resolve:lvs,construct:uvs,predicate:Avs,represent:gvs})});var Ezr=z((LZc,bzr)=>{"use strict";var dvs=NT();function pvs(e){if(e===null||e.length===0)return!1;var t=e,r=/\/([gim]*)$/.exec(e),s="";return!(t[0]==="/"&&(r&&(s=r[1]),s.length>3||t[t.length-s.length-1]!=="/"))}function fvs(e){var t=e,r=/\/([gim]*)$/.exec(e),s="";return t[0]==="/"&&(r&&(s=r[1]),t=t.slice(1,t.length-s.length-1)),new RegExp(t,s)}function Ivs(e){var t="/"+e.source+"/";return e.global&&(t+="g"),e.multiline&&(t+="m"),e.ignoreCase&&(t+="i"),t}function Cvs(e){return Object.prototype.toString.call(e)==="[object RegExp]"}bzr.exports=new dvs("tag:yaml.org,2002:js/regexp",{kind:"scalar",resolve:pvs,construct:fvs,predicate:Cvs,represent:Ivs})});var Szr=z((VZc,vzr)=>{"use strict";var grt;try{Bzr=xt,grt=Bzr("esprima")}catch{typeof window<"u"&&(grt=window.esprima)}var Bzr,mvs=NT();function hvs(e){if(e===null)return!1;try{var t="("+e+")",r=grt.parse(t,{range:!0});return!(r.type!=="Program"||r.body.length!==1||r.body[0].type!=="ExpressionStatement"||r.body[0].expression.type!=="ArrowFunctionExpression"&&r.body[0].expression.type!=="FunctionExpression")}catch{return!1}}function _vs(e){var t="("+e+")",r=grt.parse(t,{range:!0}),s=[],a;if(r.type!=="Program"||r.body.length!==1||r.body[0].type!=="ExpressionStatement"||r.body[0].expression.type!=="ArrowFunctionExpression"&&r.body[0].expression.type!=="FunctionExpression")throw new Error("Failed to resolve function");return r.body[0].expression.params.forEach(function(o){s.push(o.name)}),a=r.body[0].expression.body.range,r.body[0].expression.body.type==="BlockStatement"?new Function(s,t.slice(a[0]+1,a[1]-1)):new Function(s,"return "+t.slice(a[0],a[1]))}function yvs(e){return e.toString()}function bvs(e){return Object.prototype.toString.call(e)==="[object Function]"}vzr.exports=new mvs("tag:yaml.org,2002:js/function",{kind:"scalar",resolve:hvs,construct:_vs,predicate:bvs,represent:yvs})});var i9e=z((PZc,Tzr)=>{"use strict";var wzr=zge();Tzr.exports=wzr.DEFAULT=new wzr({include:[ebe()],explicit:[yzr(),Ezr(),Szr()]})});var Jzr=z((OZc,s9e)=>{"use strict";var nj=jge(),Fzr=qye(),Evs=Fjr(),Zzr=ebe(),Bvs=i9e(),ine=Object.prototype.hasOwnProperty,Art=1,Lzr=2,Vzr=3,drt=4,N5t=1,vvs=2,Nzr=3,Svs=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,wvs=/[\x85\u2028\u2029]/,Tvs=/[,\[\]\{\}]/,Wzr=/^(?:!|!!|![a-z\-]+!)$/i,Pzr=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function Rzr(e){return Object.prototype.toString.call(e)}function hJ(e){return e===10||e===13}function eAe(e){return e===9||e===32}function wL(e){return e===9||e===32||e===10||e===13}function tbe(e){return e===44||e===91||e===93||e===123||e===125}function Nvs(e){var t;return 48<=e&&e<=57?e-48:(t=e|32,97<=t&&t<=102?t-97+10:-1)}function Rvs(e){return e===120?2:e===117?4:e===85?8:0}function Dvs(e){return 48<=e&&e<=57?e-48:-1}function Dzr(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?` +`:e===118?"\v":e===102?"\f":e===114?"\r":e===101?"\x1B":e===32?" ":e===34?'"':e===47?"/":e===92?"\\":e===78?"\x85":e===95?"\xA0":e===76?"\u2028":e===80?"\u2029":""}function xvs(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}var Ozr=new Array(256),Qzr=new Array(256);for($ge=0;$ge<256;$ge++)Ozr[$ge]=Dzr($ge)?1:0,Qzr[$ge]=Dzr($ge);var $ge;function kvs(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||Bvs,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.json=t.json||!1,this.listener=t.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.documents=[]}function Mzr(e,t){return new Fzr(t,new Evs(e.filename,e.input,e.position,e.line,e.position-e.lineStart))}function Up(e,t){throw Mzr(e,t)}function prt(e,t){e.onWarning&&e.onWarning.call(null,Mzr(e,t))}var xzr={YAML:function(t,r,s){var a,o,g;t.version!==null&&Up(t,"duplication of %YAML directive"),s.length!==1&&Up(t,"YAML directive accepts exactly one argument"),a=/^([0-9]+)\.([0-9]+)$/.exec(s[0]),a===null&&Up(t,"ill-formed argument of the YAML directive"),o=parseInt(a[1],10),g=parseInt(a[2],10),o!==1&&Up(t,"unacceptable YAML version of the document"),t.version=s[0],t.checkLineBreaks=g<2,g!==1&&g!==2&&prt(t,"unsupported YAML version of the document")},TAG:function(t,r,s){var a,o;s.length!==2&&Up(t,"TAG directive accepts exactly two arguments"),a=s[0],o=s[1],Wzr.test(a)||Up(t,"ill-formed tag handle (first argument) of the TAG directive"),ine.call(t.tagMap,a)&&Up(t,'there is a previously declared suffix for "'+a+'" tag handle'),Pzr.test(o)||Up(t,"ill-formed tag prefix (second argument) of the TAG directive"),t.tagMap[a]=o}};function nne(e,t,r,s){var a,o,g,p;if(t1&&(e.result+=nj.repeat(` +`,t-1))}function Gvs(e,t,r){var s,a,o,g,p,f,m,y,B=e.kind,v=e.result,k;if(k=e.input.charCodeAt(e.position),wL(k)||tbe(k)||k===35||k===38||k===42||k===33||k===124||k===62||k===39||k===34||k===37||k===64||k===96||(k===63||k===45)&&(a=e.input.charCodeAt(e.position+1),wL(a)||r&&tbe(a)))return!1;for(e.kind="scalar",e.result="",o=g=e.position,p=!1;k!==0;){if(k===58){if(a=e.input.charCodeAt(e.position+1),wL(a)||r&&tbe(a))break}else if(k===35){if(s=e.input.charCodeAt(e.position-1),wL(s))break}else{if(e.position===e.lineStart&&frt(e)||r&&tbe(k))break;if(hJ(k))if(f=e.line,m=e.lineStart,y=e.lineIndent,fw(e,!1,-1),e.lineIndent>=t){p=!0,k=e.input.charCodeAt(e.position);continue}else{e.position=g,e.line=f,e.lineStart=m,e.lineIndent=y;break}}p&&(nne(e,o,g,!1),D5t(e,e.line-f),o=g=e.position,p=!1),eAe(k)||(g=e.position+1),k=e.input.charCodeAt(++e.position)}return nne(e,o,g,!1),e.result?!0:(e.kind=B,e.result=v,!1)}function Fvs(e,t){var r,s,a;if(r=e.input.charCodeAt(e.position),r!==39)return!1;for(e.kind="scalar",e.result="",e.position++,s=a=e.position;(r=e.input.charCodeAt(e.position))!==0;)if(r===39)if(nne(e,s,e.position,!0),r=e.input.charCodeAt(++e.position),r===39)s=e.position,e.position++,a=e.position;else return!0;else hJ(r)?(nne(e,s,a,!0),D5t(e,fw(e,!1,t)),s=a=e.position):e.position===e.lineStart&&frt(e)?Up(e,"unexpected end of the document within a single quoted scalar"):(e.position++,a=e.position);Up(e,"unexpected end of the stream within a single quoted scalar")}function Zvs(e,t){var r,s,a,o,g,p;if(p=e.input.charCodeAt(e.position),p!==34)return!1;for(e.kind="scalar",e.result="",e.position++,r=s=e.position;(p=e.input.charCodeAt(e.position))!==0;){if(p===34)return nne(e,r,e.position,!0),e.position++,!0;if(p===92){if(nne(e,r,e.position,!0),p=e.input.charCodeAt(++e.position),hJ(p))fw(e,!1,t);else if(p<256&&Ozr[p])e.result+=Qzr[p],e.position++;else if((g=Rvs(p))>0){for(a=g,o=0;a>0;a--)p=e.input.charCodeAt(++e.position),(g=Nvs(p))>=0?o=(o<<4)+g:Up(e,"expected hexadecimal character");e.result+=xvs(o),e.position++}else Up(e,"unknown escape sequence");r=s=e.position}else hJ(p)?(nne(e,r,s,!0),D5t(e,fw(e,!1,t)),r=s=e.position):e.position===e.lineStart&&frt(e)?Up(e,"unexpected end of the document within a double quoted scalar"):(e.position++,s=e.position)}Up(e,"unexpected end of the stream within a double quoted scalar")}function Lvs(e,t){var r=!0,s,a=e.tag,o,g=e.anchor,p,f,m,y,B,v={},k,T,O,X;if(X=e.input.charCodeAt(e.position),X===91)f=93,B=!1,o=[];else if(X===123)f=125,B=!0,o={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=o),X=e.input.charCodeAt(++e.position);X!==0;){if(fw(e,!0,t),X=e.input.charCodeAt(e.position),X===f)return e.position++,e.tag=a,e.anchor=g,e.kind=B?"mapping":"sequence",e.result=o,!0;r||Up(e,"missed comma between flow collection entries"),T=k=O=null,m=y=!1,X===63&&(p=e.input.charCodeAt(e.position+1),wL(p)&&(m=y=!0,e.position++,fw(e,!0,t))),s=e.line,nbe(e,t,Art,!1,!0),T=e.tag,k=e.result,fw(e,!0,t),X=e.input.charCodeAt(e.position),(y||e.line===s)&&X===58&&(m=!0,X=e.input.charCodeAt(++e.position),fw(e,!0,t),nbe(e,t,Art,!1,!0),O=e.result),B?rbe(e,o,v,T,k,O):m?o.push(rbe(e,null,v,T,k,O)):o.push(k),fw(e,!0,t),X=e.input.charCodeAt(e.position),X===44?(r=!0,X=e.input.charCodeAt(++e.position)):r=!1}Up(e,"unexpected end of the stream within a flow collection")}function Vvs(e,t){var r,s,a=N5t,o=!1,g=!1,p=t,f=0,m=!1,y,B;if(B=e.input.charCodeAt(e.position),B===124)s=!1;else if(B===62)s=!0;else return!1;for(e.kind="scalar",e.result="";B!==0;)if(B=e.input.charCodeAt(++e.position),B===43||B===45)N5t===a?a=B===43?Nzr:vvs:Up(e,"repeat of a chomping mode identifier");else if((y=Dvs(B))>=0)y===0?Up(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):g?Up(e,"repeat of an indentation width identifier"):(p=t+y-1,g=!0);else break;if(eAe(B)){do B=e.input.charCodeAt(++e.position);while(eAe(B));if(B===35)do B=e.input.charCodeAt(++e.position);while(!hJ(B)&&B!==0)}for(;B!==0;){for(R5t(e),e.lineIndent=0,B=e.input.charCodeAt(e.position);(!g||e.lineIndentp&&(p=e.lineIndent),hJ(B)){f++;continue}if(e.lineIndentt)&&f!==0)Up(e,"bad indentation of a sequence entry");else if(e.lineIndentt)&&(nbe(e,t,drt,!0,a)&&(T?v=e.result:k=e.result),T||(rbe(e,m,y,B,v,k,o,g),B=v=k=null),fw(e,!0,-1),X=e.input.charCodeAt(e.position)),e.lineIndent>t&&X!==0)Up(e,"bad indentation of a mapping entry");else if(e.lineIndentt?f=1:e.lineIndent===t?f=0:e.lineIndentt?f=1:e.lineIndent===t?f=0:e.lineIndent tag; it should be "scalar", not "'+e.kind+'"'),B=0,v=e.implicitTypes.length;B tag; it should be "'+k.kind+'", not "'+e.kind+'"'),k.resolve(e.result)?(e.result=k.construct(e.result),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):Up(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")):Up(e,"unknown tag !<"+e.tag+">");return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||y}function Mvs(e){var t=e.position,r,s,a,o=!1,g;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap={},e.anchorMap={};(g=e.input.charCodeAt(e.position))!==0&&(fw(e,!0,-1),g=e.input.charCodeAt(e.position),!(e.lineIndent>0||g!==37));){for(o=!0,g=e.input.charCodeAt(++e.position),r=e.position;g!==0&&!wL(g);)g=e.input.charCodeAt(++e.position);for(s=e.input.slice(r,e.position),a=[],s.length<1&&Up(e,"directive name must not be less than one character in length");g!==0;){for(;eAe(g);)g=e.input.charCodeAt(++e.position);if(g===35){do g=e.input.charCodeAt(++e.position);while(g!==0&&!hJ(g));break}if(hJ(g))break;for(r=e.position;g!==0&&!wL(g);)g=e.input.charCodeAt(++e.position);a.push(e.input.slice(r,e.position))}g!==0&&R5t(e),ine.call(xzr,s)?xzr[s](e,s,a):prt(e,'unknown document directive "'+s+'"')}if(fw(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,fw(e,!0,-1)):o&&Up(e,"directives end mark is expected"),nbe(e,e.lineIndent-1,drt,!1,!0),fw(e,!0,-1),e.checkLineBreaks&&wvs.test(e.input.slice(t,e.position))&&prt(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&frt(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,fw(e,!0,-1));return}if(e.position"u"&&(r=t,t=null);var s=Hzr(e,r);if(typeof t!="function")return s;for(var a=0,o=s.length;a"u"&&(r=t,t=null),Yzr(e,t,nj.extend({schema:Zzr},r))}function Yvs(e,t){return Xzr(e,nj.extend({schema:Zzr},t))}s9e.exports.loadAll=Yzr;s9e.exports.load=Xzr;s9e.exports.safeLoadAll=Hvs;s9e.exports.safeLoad=Yvs});var Iqr=z((QZc,F5t)=>{"use strict";var a9e=jge(),c9e=qye(),Xvs=i9e(),Jvs=ebe(),tqr=Object.prototype.toString,rqr=Object.prototype.hasOwnProperty,Uvs=9,o9e=10,Kvs=13,jvs=32,zvs=33,qvs=34,nqr=35,$vs=37,eSs=38,tSs=39,rSs=42,iqr=44,nSs=45,sqr=58,iSs=61,sSs=62,oSs=63,aSs=64,oqr=91,aqr=93,cSs=96,cqr=123,lSs=124,lqr=125,lk={};lk[0]="\\0";lk[7]="\\a";lk[8]="\\b";lk[9]="\\t";lk[10]="\\n";lk[11]="\\v";lk[12]="\\f";lk[13]="\\r";lk[27]="\\e";lk[34]='\\"';lk[92]="\\\\";lk[133]="\\N";lk[160]="\\_";lk[8232]="\\L";lk[8233]="\\P";var uSs=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"];function gSs(e,t){var r,s,a,o,g,p,f;if(t===null)return{};for(r={},s=Object.keys(t),a=0,o=s.length;a0?e.charCodeAt(o-1):null,v=v&&Yzr(g,p)}else{for(o=0;os&&e[B+1]!==" ",B=o);else if(!rbe(g))return prt;p=o>0?e.charCodeAt(o-1):null,v=v&&Yzr(g,p)}m=m||y&&o-B-1>s&&e[B+1]!==" "}return!f&&!m?v&&!a(e)?sqr:oqr:r>9&&iqr(e)?prt:m?cqr:aqr}function uSs(e,t,r,s){e.dump=function(){if(t.length===0)return"''";if(!e.noCompatMode&&nSs.indexOf(t)!==-1)return"'"+t+"'";var a=e.indent*Math.max(1,r),o=e.lineWidth===-1?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-a),g=s||e.flowLevel>-1&&r>=e.flowLevel;function p(f){return oSs(e,f)}switch(lSs(t,g,e.indent,o,p)){case sqr:return t;case oqr:return"'"+t.replace(/'/g,"''")+"'";case aqr:return"|"+Hzr(t,e.indent)+Xzr(Qzr(t,a));case cqr:return">"+Hzr(t,e.indent)+Xzr(Qzr(gSs(t,o),a));case prt:return'"'+ASs(t,o)+'"';default:throw new o9e("impossible error: invalid scalar style")}}()}function Hzr(e,t){var r=iqr(e)?String(t):"",s=e[e.length-1]===` +`&&(o+=r),o+=g;return o}function x5t(e,t){return` +`+a9e.repeat(" ",e.indent*t)}function dSs(e,t){var r,s,a;for(r=0,s=e.implicitTypes.length;r0?e.charCodeAt(o-1):null,v=v&&jzr(g,p)}else{for(o=0;os&&e[B+1]!==" ",B=o);else if(!ibe(g))return Irt;p=o>0?e.charCodeAt(o-1):null,v=v&&jzr(g,p)}m=m||y&&o-B-1>s&&e[B+1]!==" "}return!f&&!m?v&&!a(e)?gqr:Aqr:r>9&&uqr(e)?Irt:m?pqr:dqr}function CSs(e,t,r,s){e.dump=function(){if(t.length===0)return"''";if(!e.noCompatMode&&uSs.indexOf(t)!==-1)return"'"+t+"'";var a=e.indent*Math.max(1,r),o=e.lineWidth===-1?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-a),g=s||e.flowLevel>-1&&r>=e.flowLevel;function p(f){return dSs(e,f)}switch(ISs(t,g,e.indent,o,p)){case gqr:return t;case Aqr:return"'"+t.replace(/'/g,"''")+"'";case dqr:return"|"+zzr(t,e.indent)+qzr(Kzr(t,a));case pqr:return">"+zzr(t,e.indent)+qzr(Kzr(mSs(t,o),a));case Irt:return'"'+hSs(t,o)+'"';default:throw new c9e("impossible error: invalid scalar style")}}()}function zzr(e,t){var r=uqr(e)?String(t):"",s=e[e.length-1]===` `,a=s&&(e[e.length-2]===` `||e===` `),o=a?"+":s?"":"-";return r+o+` -`}function Xzr(e){return e[e.length-1]===` -`?e.slice(0,-1):e}function gSs(e,t){for(var r=/(\n+)([^\n]*)/g,s=function(){var m=e.indexOf(` -`);return m=m!==-1?m:e.length,r.lastIndex=m,Jzr(e.slice(0,m),t)}(),a=e[0]===` +`}function qzr(e){return e[e.length-1]===` +`?e.slice(0,-1):e}function mSs(e,t){for(var r=/(\n+)([^\n]*)/g,s=function(){var m=e.indexOf(` +`);return m=m!==-1?m:e.length,r.lastIndex=m,$zr(e.slice(0,m),t)}(),a=e[0]===` `||e[0]===" ",o,g;g=r.exec(e);){var p=g[1],f=g[2];o=f[0]===" ",s+=p+(!a&&!o&&f!==""?` -`:"")+Jzr(f,t),a=o}return s}function Jzr(e,t){if(e===""||e[0]===" ")return e;for(var r=/ [^ ]/g,s,a=0,o,g=0,p=0,f="";s=r.exec(e);)p=s.index,p-a>t&&(o=g>a?g:p,f+=` +`:"")+$zr(f,t),a=o}return s}function $zr(e,t){if(e===""||e[0]===" ")return e;for(var r=/ [^ ]/g,s,a=0,o,g=0,p=0,f="";s=r.exec(e);)p=s.index,p-a>t&&(o=g>a?g:p,f+=` `+e.slice(a,o),a=o+1),g=p;return f+=` `,e.length-a>t&&g>a?f+=e.slice(a,g)+` -`+e.slice(g+1):f+=e.slice(a),f.slice(1)}function ASs(e){for(var t="",r,s,a,o=0;o=55296&&r<=56319&&(s=e.charCodeAt(o+1),s>=56320&&s<=57343)){t+=Mzr((r-55296)*1024+s-56320+65536),o++;continue}a=nk[r],t+=!a&&rbe(r)?e[o]:a||Mzr(r)}return t}function dSs(e,t,r){var s="",a=e.tag,o,g;for(o=0,g=r.length;o1024&&(y+="? "),y+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),Xge(e,t,m,!1,!1)&&(y+=e.dump,s+=y));e.tag=a,e.dump="{"+s+"}"}function ISs(e,t,r,s){var a="",o=e.tag,g=Object.keys(r),p,f,m,y,B,v;if(e.sortKeys===!0)g.sort();else if(typeof e.sortKeys=="function")g.sort(e.sortKeys);else if(e.sortKeys)throw new o9e("sortKeys must be a boolean or a function");for(p=0,f=g.length;p1024,B&&(e.dump&&i9e===e.dump.charCodeAt(0)?v+="?":v+="? "),v+=e.dump,B&&(v+=NQt(e,t)),Xge(e,t+1,y,!0,B)&&(e.dump&&i9e===e.dump.charCodeAt(0)?v+=":":v+=": ",v+=e.dump,a+=v));e.tag=o,e.dump=a||"{}"}function Uzr(e,t,r){var s,a,o,g,p,f;for(a=r?e.explicitTypes:e.implicitTypes,o=0,g=a.length;o tag resolver accepts not "'+f+'" style');e.dump=s}return!0}return!1}function Xge(e,t,r,s,a,o){e.tag=null,e.dump=r,Uzr(e,r,!1)||Uzr(e,r,!0);var g=Kzr.call(e.dump);s&&(s=e.flowLevel<0||e.flowLevel>t);var p=g==="[object Object]"||g==="[object Array]",f,m;if(p&&(f=e.duplicates.indexOf(r),m=f!==-1),(e.tag!==null&&e.tag!=="?"||m||e.indent!==2&&t>0)&&(a=!1),m&&e.usedDuplicates[f])e.dump="*ref_"+f;else{if(p&&m&&!e.usedDuplicates[f]&&(e.usedDuplicates[f]=!0),g==="[object Object]")s&&Object.keys(e.dump).length!==0?(ISs(e,t,e.dump,a),m&&(e.dump="&ref_"+f+e.dump)):(fSs(e,t,e.dump),m&&(e.dump="&ref_"+f+" "+e.dump));else if(g==="[object Array]"){var y=e.noArrayIndent&&t>0?t-1:t;s&&e.dump.length!==0?(pSs(e,y,e.dump,a),m&&(e.dump="&ref_"+f+e.dump)):(dSs(e,y,e.dump),m&&(e.dump="&ref_"+f+" "+e.dump))}else if(g==="[object String]")e.tag!=="?"&&uSs(e,e.dump,t,o);else{if(e.skipInvalid)return!1;throw new o9e("unacceptable kind of an object to dump "+g)}e.tag!==null&&e.tag!=="?"&&(e.dump="!<"+e.tag+"> "+e.dump)}return!0}function CSs(e,t){var r=[],s=[],a,o;for(RQt(e,r,s),a=0,o=s.length;a{"use strict";var frt=Ozr(),gqr=uqr();function Irt(e){return function(){throw new Error("Function "+e+" is deprecated and cannot be used.")}}KB.exports.Type=TT();KB.exports.Schema=Mge();KB.exports.FAILSAFE_SCHEMA=crt();KB.exports.JSON_SCHEMA=EQt();KB.exports.CORE_SCHEMA=BQt();KB.exports.DEFAULT_SAFE_SCHEMA=qye();KB.exports.DEFAULT_FULL_SCHEMA=r9e();KB.exports.load=frt.load;KB.exports.loadAll=frt.loadAll;KB.exports.safeLoad=frt.safeLoad;KB.exports.safeLoadAll=frt.safeLoadAll;KB.exports.dump=gqr.dump;KB.exports.safeDump=gqr.safeDump;KB.exports.YAMLException=jye();KB.exports.MINIMAL_SCHEMA=crt();KB.exports.SAFE_SCHEMA=qye();KB.exports.DEFAULT_SCHEMA=r9e();KB.exports.scan=Irt("scan");KB.exports.parse=Irt("parse");KB.exports.compose=Irt("compose");KB.exports.addConstructor=Irt("addConstructor")});var pqr=z((TZc,dqr)=>{"use strict";var hSs=Aqr();dqr.exports=hSs});var Iqr=z((NZc,fqr)=>{"use strict";function _Ss(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function Jge(e,t,r,s){this.message=e,this.expected=t,this.found=r,this.location=s,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Jge)}_Ss(Jge,Error);Jge.buildMessage=function(e,t){var r={literal:function(m){return'"'+a(m.text)+'"'},class:function(m){var y="",B;for(B=0;B0){for(B=1,v=1;B({[na]:Di})))},fe=function(Nr){return Nr},pe=function(Nr){return Nr},he=NA("correct indentation"),be=" ",Te=Hi(" ",!1),ke=function(Nr){return Nr.length===zl*Do},x=function(Nr){return Nr.length===(zl+1)*Do},et=function(){return zl++,!0},Ue=function(){return zl--,!0},Je=function(){return Ff()},Xe=NA("pseudostring"),ft=/^[^\r\n\t ?:,\][{}#&*!|>'"%@`\-]/,Gt=ec(["\r",` +`+e.slice(g+1):f+=e.slice(a),f.slice(1)}function hSs(e){for(var t="",r,s,a,o=0;o=55296&&r<=56319&&(s=e.charCodeAt(o+1),s>=56320&&s<=57343)){t+=Uzr((r-55296)*1024+s-56320+65536),o++;continue}a=lk[r],t+=!a&&ibe(r)?e[o]:a||Uzr(r)}return t}function _Ss(e,t,r){var s="",a=e.tag,o,g;for(o=0,g=r.length;o1024&&(y+="? "),y+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),tAe(e,t,m,!1,!1)&&(y+=e.dump,s+=y));e.tag=a,e.dump="{"+s+"}"}function ESs(e,t,r,s){var a="",o=e.tag,g=Object.keys(r),p,f,m,y,B,v;if(e.sortKeys===!0)g.sort();else if(typeof e.sortKeys=="function")g.sort(e.sortKeys);else if(e.sortKeys)throw new c9e("sortKeys must be a boolean or a function");for(p=0,f=g.length;p1024,B&&(e.dump&&o9e===e.dump.charCodeAt(0)?v+="?":v+="? "),v+=e.dump,B&&(v+=x5t(e,t)),tAe(e,t+1,y,!0,B)&&(e.dump&&o9e===e.dump.charCodeAt(0)?v+=":":v+=": ",v+=e.dump,a+=v));e.tag=o,e.dump=a||"{}"}function eqr(e,t,r){var s,a,o,g,p,f;for(a=r?e.explicitTypes:e.implicitTypes,o=0,g=a.length;o tag resolver accepts not "'+f+'" style');e.dump=s}return!0}return!1}function tAe(e,t,r,s,a,o){e.tag=null,e.dump=r,eqr(e,r,!1)||eqr(e,r,!0);var g=tqr.call(e.dump);s&&(s=e.flowLevel<0||e.flowLevel>t);var p=g==="[object Object]"||g==="[object Array]",f,m;if(p&&(f=e.duplicates.indexOf(r),m=f!==-1),(e.tag!==null&&e.tag!=="?"||m||e.indent!==2&&t>0)&&(a=!1),m&&e.usedDuplicates[f])e.dump="*ref_"+f;else{if(p&&m&&!e.usedDuplicates[f]&&(e.usedDuplicates[f]=!0),g==="[object Object]")s&&Object.keys(e.dump).length!==0?(ESs(e,t,e.dump,a),m&&(e.dump="&ref_"+f+e.dump)):(bSs(e,t,e.dump),m&&(e.dump="&ref_"+f+" "+e.dump));else if(g==="[object Array]"){var y=e.noArrayIndent&&t>0?t-1:t;s&&e.dump.length!==0?(ySs(e,y,e.dump,a),m&&(e.dump="&ref_"+f+e.dump)):(_Ss(e,y,e.dump),m&&(e.dump="&ref_"+f+" "+e.dump))}else if(g==="[object String]")e.tag!=="?"&&CSs(e,e.dump,t,o);else{if(e.skipInvalid)return!1;throw new c9e("unacceptable kind of an object to dump "+g)}e.tag!==null&&e.tag!=="?"&&(e.dump="!<"+e.tag+"> "+e.dump)}return!0}function BSs(e,t){var r=[],s=[],a,o;for(k5t(e,r,s),a=0,o=s.length;a{"use strict";var Crt=Jzr(),Cqr=Iqr();function mrt(e){return function(){throw new Error("Function "+e+" is deprecated and cannot be used.")}}zB.exports.Type=NT();zB.exports.Schema=zge();zB.exports.FAILSAFE_SCHEMA=urt();zB.exports.JSON_SCHEMA=S5t();zB.exports.CORE_SCHEMA=w5t();zB.exports.DEFAULT_SAFE_SCHEMA=ebe();zB.exports.DEFAULT_FULL_SCHEMA=i9e();zB.exports.load=Crt.load;zB.exports.loadAll=Crt.loadAll;zB.exports.safeLoad=Crt.safeLoad;zB.exports.safeLoadAll=Crt.safeLoadAll;zB.exports.dump=Cqr.dump;zB.exports.safeDump=Cqr.safeDump;zB.exports.YAMLException=qye();zB.exports.MINIMAL_SCHEMA=urt();zB.exports.SAFE_SCHEMA=ebe();zB.exports.DEFAULT_SCHEMA=i9e();zB.exports.scan=mrt("scan");zB.exports.parse=mrt("parse");zB.exports.compose=mrt("compose");zB.exports.addConstructor=mrt("addConstructor")});var _qr=z((HZc,hqr)=>{"use strict";var SSs=mqr();hqr.exports=SSs});var bqr=z((YZc,yqr)=>{"use strict";function wSs(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function rAe(e,t,r,s){this.message=e,this.expected=t,this.found=r,this.location=s,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,rAe)}wSs(rAe,Error);rAe.buildMessage=function(e,t){var r={literal:function(m){return'"'+a(m.text)+'"'},class:function(m){var y="",B;for(B=0;B0){for(B=1,v=1;B({[ra]:Di})))},fe=function(Nr){return Nr},pe=function(Nr){return Nr},he=RA("correct indentation"),be=" ",Te=Yi(" ",!1),ke=function(Nr){return Nr.length===ql*Ro},x=function(Nr){return Nr.length===(ql+1)*Ro},et=function(){return ql++,!0},Ue=function(){return ql--,!0},Je=function(){return Zf()},Xe=RA("pseudostring"),ft=/^[^\r\n\t ?:,\][{}#&*!|>'"%@`\-]/,Gt=ec(["\r",` `," "," ","?",":",",","]","[","{","}","#","&","*","!","|",">","'",'"',"%","@","`","-"],!0,!1),er=/^[^\r\n\t ,\][{}:#"']/,Ur=ec(["\r",` -`," "," ",",","]","[","{","}",":","#",'"',"'"],!0,!1),Ot=function(){return Ff().replace(/^ *| *$/g,"")},dr="--",Ar=Hi("--",!1),or=/^[a-zA-Z\/0-9]/,Fr=ec([["a","z"],["A","Z"],"/",["0","9"]],!1,!1),$r=/^[^\r\n\t :,]/,Or=ec(["\r",` -`," "," ",":",","],!0,!1),In="null",Br=Hi("null",!1),tr=function(){return null},gn="true",Gn=Hi("true",!1),we=function(){return!0},Zi="false",Za=Hi("false",!1),ka=function(){return!1},Qs=NA("string"),lr='"',ga=Hi('"',!1),vi=function(){return""},Qu=function(Nr){return Nr},Yu=function(Nr){return Nr.join("")},YA=/^[^"\\\0-\x1F\x7F]/,ud=ec(['"',"\\",["\0",""],"\x7F"],!0,!1),TA='\\"',Ld=Hi('\\"',!1),jr=function(){return'"'},Gr="\\\\",Ir=Hi("\\\\",!1),nn=function(){return"\\"},Cn="\\/",Vn=Hi("\\/",!1),Ji=function(){return"/"},Hr="\\b",Ws=Hi("\\b",!1),Ko=function(){return"\b"},ai="\\f",pa=Hi("\\f",!1),sg=function(){return"\f"},Fu="\\n",Cg=Hi("\\n",!1),Zu=function(){return` -`},Cl="\\r",wi=Hi("\\r",!1),ts=function(){return"\r"},$i="\\t",Ga=Hi("\\t",!1),$s=function(){return" "},xl="\\u",qo=Hi("\\u",!1),Na=function(Nr,Nn,Di,na){return String.fromCharCode(parseInt(`0x${Nr}${Nn}${Di}${na}`))},wu=/^[0-9a-fA-F]/,Dg=ec([["0","9"],["a","f"],["A","F"]],!1,!1),hl=NA("blank space"),au=/^[ \t]/,Lg=ec([" "," "],!1,!1),cf=NA("white space"),Td=/^[ \t\n\r]/,ei=ec([" "," ",` +`," "," ",",","]","[","{","}",":","#",'"',"'"],!0,!1),Ot=function(){return Zf().replace(/^ *| *$/g,"")},dr="--",Ar=Yi("--",!1),or=/^[a-zA-Z\/0-9]/,Fr=ec([["a","z"],["A","Z"],"/",["0","9"]],!1,!1),$r=/^[^\r\n\t :,]/,Or=ec(["\r",` +`," "," ",":",","],!0,!1),In="null",Br=Yi("null",!1),tr=function(){return null},gn="true",Gn=Yi("true",!1),we=function(){return!0},Zi="false",Fa=Yi("false",!1),xa=function(){return!1},Qs=RA("string"),lr='"',ua=Yi('"',!1),vi=function(){return""},Hu=function(Nr){return Nr},Yu=function(Nr){return Nr.join("")},YA=/^[^"\\\0-\x1F\x7F]/,gd=ec(['"',"\\",["\0",""],"\x7F"],!0,!1),NA='\\"',Vd=Yi('\\"',!1),jr=function(){return'"'},Gr="\\\\",Ir=Yi("\\\\",!1),nn=function(){return"\\"},Cn="\\/",Vn=Yi("\\/",!1),Ji=function(){return"/"},Yr="\\b",Vs=Yi("\\b",!1),Uo=function(){return"\b"},ai="\\f",da=Yi("\\f",!1),og=function(){return"\f"},Zu="\\n",mg=Yi("\\n",!1),Lu=function(){return` +`},ml="\\r",wi=Yi("\\r",!1),ts=function(){return"\r"},$i="\\t",ka=Yi("\\t",!1),qs=function(){return" "},kl="\\u",zo=Yi("\\u",!1),Ta=function(Nr,Nn,Di,ra){return String.fromCharCode(parseInt(`0x${Nr}${Nn}${Di}${ra}`))},Tu=/^[0-9a-fA-F]/,xg=ec([["0","9"],["a","f"],["A","F"]],!1,!1),_l=RA("blank space"),cu=/^[ \t]/,Vg=ec([" "," "],!1,!1),lf=RA("white space"),Nd=/^[ \t\n\r]/,ei=ec([" "," ",` `,"\r"],!1,!1),Qa=`\r -`,Rt=Hi(`\r -`,!1),kl=` -`,Hu=Hi(` -`,!1),us="\r",og=Hi("\r",!1),on=0,Bo=0,$g=[{line:1,column:1}],cA=0,HA=[],No=0,Hl;if("startRule"in t){if(!(t.startRule in s))throw new Error(`Can't start parsing from rule "`+t.startRule+'".');a=s[t.startRule]}function Ff(){return e.substring(Bo,on)}function Vd(){return Ra(Bo,on)}function bA(Nr,Nn){throw Nn=Nn!==void 0?Nn:Ra(Bo,on),cm([NA(Nr)],e.substring(Bo,on),Nn)}function Os(Nr,Nn){throw Nn=Nn!==void 0?Nn:Ra(Bo,on),Xa(Nr,Nn)}function Hi(Nr,Nn){return{type:"literal",text:Nr,ignoreCase:Nn}}function ec(Nr,Nn,Di){return{type:"class",parts:Nr,inverted:Nn,ignoreCase:Di}}function ll(){return{type:"any"}}function Ts(){return{type:"end"}}function NA(Nr){return{type:"other",description:Nr}}function Ud(Nr){var Nn=$g[Nr],Di;if(Nn)return Nn;for(Di=Nr-1;!$g[Di];)Di--;for(Nn=$g[Di],Nn={line:Nn.line,column:Nn.column};DicA&&(cA=on,HA=[]),HA.push(Nr))}function Xa(Nr,Nn){return new Jge(Nr,null,null,Nn)}function cm(Nr,Nn,Di){return new Jge(Jge.buildMessage(Nr,Nn),Nr,Nn,Di)}function eo(){var Nr;return Nr=TC(),Nr}function ps(){var Nr,Nn,Di;for(Nr=on,Nn=[],Di=oc();Di!==r;)Nn.push(Di),Di=oc();return Nn!==r&&(Bo=Nr,Nn=o(Nn)),Nr=Nn,Nr}function oc(){var Nr,Nn,Di,na,Ks;return Nr=on,Nn=Bl(),Nn!==r?(e.charCodeAt(on)===45?(Di=g,on++):(Di=r,No===0&&ys(p)),Di!==r?(na=Wp(),na!==r?(Ks=SI(),Ks!==r?(Bo=Nr,Nn=f(Ks),Nr=Nn):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r),Nr}function TC(){var Nr,Nn,Di;for(Nr=on,Nn=[],Di=pI();Di!==r;)Nn.push(Di),Di=pI();return Nn!==r&&(Bo=Nr,Nn=m(Nn)),Nr=Nn,Nr}function pI(){var Nr,Nn,Di,na,Ks,Li,Zl,RA,Nd;if(Nr=on,Nn=Wp(),Nn===r&&(Nn=null),Nn!==r){if(Di=on,e.charCodeAt(on)===35?(na=y,on++):(na=r,No===0&&ys(B)),na!==r){if(Ks=[],Li=on,Zl=on,No++,RA=Ao(),No--,RA===r?Zl=void 0:(on=Zl,Zl=r),Zl!==r?(e.length>on?(RA=e.charAt(on),on++):(RA=r,No===0&&ys(v)),RA!==r?(Zl=[Zl,RA],Li=Zl):(on=Li,Li=r)):(on=Li,Li=r),Li!==r)for(;Li!==r;)Ks.push(Li),Li=on,Zl=on,No++,RA=Ao(),No--,RA===r?Zl=void 0:(on=Zl,Zl=r),Zl!==r?(e.length>on?(RA=e.charAt(on),on++):(RA=r,No===0&&ys(v)),RA!==r?(Zl=[Zl,RA],Li=Zl):(on=Li,Li=r)):(on=Li,Li=r);else Ks=r;Ks!==r?(na=[na,Ks],Di=na):(on=Di,Di=r)}else on=Di,Di=r;if(Di===r&&(Di=null),Di!==r){if(na=[],Ks=fs(),Ks!==r)for(;Ks!==r;)na.push(Ks),Ks=fs();else na=r;na!==r?(Bo=Nr,Nn=G(),Nr=Nn):(on=Nr,Nr=r)}else on=Nr,Nr=r}else on=Nr,Nr=r;if(Nr===r&&(Nr=on,Nn=Bl(),Nn!==r?(Di=za(),Di!==r?(na=Wp(),na===r&&(na=null),na!==r?(e.charCodeAt(on)===58?(Ks=T,on++):(Ks=r,No===0&&ys(O)),Ks!==r?(Li=Wp(),Li===r&&(Li=null),Li!==r?(Zl=SI(),Zl!==r?(Bo=Nr,Nn=X(Di,Zl),Nr=Nn):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r),Nr===r&&(Nr=on,Nn=Bl(),Nn!==r?(Di=iu(),Di!==r?(na=Wp(),na===r&&(na=null),na!==r?(e.charCodeAt(on)===58?(Ks=T,on++):(Ks=r,No===0&&ys(O)),Ks!==r?(Li=Wp(),Li===r&&(Li=null),Li!==r?(Zl=SI(),Zl!==r?(Bo=Nr,Nn=X(Di,Zl),Nr=Nn):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r),Nr===r))){if(Nr=on,Nn=Bl(),Nn!==r)if(Di=iu(),Di!==r)if(na=Wp(),na!==r)if(Ks=NC(),Ks!==r){if(Li=[],Zl=fs(),Zl!==r)for(;Zl!==r;)Li.push(Zl),Zl=fs();else Li=r;Li!==r?(Bo=Nr,Nn=X(Di,Ks),Nr=Nn):(on=Nr,Nr=r)}else on=Nr,Nr=r;else on=Nr,Nr=r;else on=Nr,Nr=r;else on=Nr,Nr=r;if(Nr===r)if(Nr=on,Nn=Bl(),Nn!==r)if(Di=iu(),Di!==r){if(na=[],Ks=on,Li=Wp(),Li===r&&(Li=null),Li!==r?(e.charCodeAt(on)===44?(Zl=U,on++):(Zl=r,No===0&&ys(le)),Zl!==r?(RA=Wp(),RA===r&&(RA=null),RA!==r?(Nd=iu(),Nd!==r?(Bo=Ks,Li=ae(Di,Nd),Ks=Li):(on=Ks,Ks=r)):(on=Ks,Ks=r)):(on=Ks,Ks=r)):(on=Ks,Ks=r),Ks!==r)for(;Ks!==r;)na.push(Ks),Ks=on,Li=Wp(),Li===r&&(Li=null),Li!==r?(e.charCodeAt(on)===44?(Zl=U,on++):(Zl=r,No===0&&ys(le)),Zl!==r?(RA=Wp(),RA===r&&(RA=null),RA!==r?(Nd=iu(),Nd!==r?(Bo=Ks,Li=ae(Di,Nd),Ks=Li):(on=Ks,Ks=r)):(on=Ks,Ks=r)):(on=Ks,Ks=r)):(on=Ks,Ks=r);else na=r;na!==r?(Ks=Wp(),Ks===r&&(Ks=null),Ks!==r?(e.charCodeAt(on)===58?(Li=T,on++):(Li=r,No===0&&ys(O)),Li!==r?(Zl=Wp(),Zl===r&&(Zl=null),Zl!==r?(RA=SI(),RA!==r?(Bo=Nr,Nn=ge(Di,na,RA),Nr=Nn):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)}else on=Nr,Nr=r;else on=Nr,Nr=r}return Nr}function SI(){var Nr,Nn,Di,na,Ks,Li,Zl;if(Nr=on,Nn=on,No++,Di=on,na=Ao(),na!==r?(Ks=il(),Ks!==r?(e.charCodeAt(on)===45?(Li=g,on++):(Li=r,No===0&&ys(p)),Li!==r?(Zl=Wp(),Zl!==r?(na=[na,Ks,Li,Zl],Di=na):(on=Di,Di=r)):(on=Di,Di=r)):(on=Di,Di=r)):(on=Di,Di=r),No--,Di!==r?(on=Nn,Nn=void 0):Nn=r,Nn!==r?(Di=fs(),Di!==r?(na=LA(),na!==r?(Ks=ps(),Ks!==r?(Li=lf(),Li!==r?(Bo=Nr,Nn=fe(Ks),Nr=Nn):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r),Nr===r&&(Nr=on,Nn=Ao(),Nn!==r?(Di=LA(),Di!==r?(na=TC(),na!==r?(Ks=lf(),Ks!==r?(Bo=Nr,Nn=fe(na),Nr=Nn):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r),Nr===r))if(Nr=on,Nn=ii(),Nn!==r){if(Di=[],na=fs(),na!==r)for(;na!==r;)Di.push(na),na=fs();else Di=r;Di!==r?(Bo=Nr,Nn=pe(Nn),Nr=Nn):(on=Nr,Nr=r)}else on=Nr,Nr=r;return Nr}function Bl(){var Nr,Nn,Di;for(No++,Nr=on,Nn=[],e.charCodeAt(on)===32?(Di=be,on++):(Di=r,No===0&&ys(Te));Di!==r;)Nn.push(Di),e.charCodeAt(on)===32?(Di=be,on++):(Di=r,No===0&&ys(Te));return Nn!==r?(Bo=on,Di=ke(Nn),Di?Di=void 0:Di=r,Di!==r?(Nn=[Nn,Di],Nr=Nn):(on=Nr,Nr=r)):(on=Nr,Nr=r),No--,Nr===r&&(Nn=r,No===0&&ys(he)),Nr}function il(){var Nr,Nn,Di;for(Nr=on,Nn=[],e.charCodeAt(on)===32?(Di=be,on++):(Di=r,No===0&&ys(Te));Di!==r;)Nn.push(Di),e.charCodeAt(on)===32?(Di=be,on++):(Di=r,No===0&&ys(Te));return Nn!==r?(Bo=on,Di=x(Nn),Di?Di=void 0:Di=r,Di!==r?(Nn=[Nn,Di],Nr=Nn):(on=Nr,Nr=r)):(on=Nr,Nr=r),Nr}function LA(){var Nr;return Bo=on,Nr=et(),Nr?Nr=void 0:Nr=r,Nr}function lf(){var Nr;return Bo=on,Nr=Ue(),Nr?Nr=void 0:Nr=r,Nr}function za(){var Nr;return Nr=sp(),Nr===r&&(Nr=Jh()),Nr}function iu(){var Nr,Nn,Di;if(Nr=sp(),Nr===r){if(Nr=on,Nn=[],Di=Tm(),Di!==r)for(;Di!==r;)Nn.push(Di),Di=Tm();else Nn=r;Nn!==r&&(Bo=Nr,Nn=Je()),Nr=Nn}return Nr}function ii(){var Nr;return Nr=_l(),Nr===r&&(Nr=Og(),Nr===r&&(Nr=sp(),Nr===r&&(Nr=Jh()))),Nr}function NC(){var Nr;return Nr=_l(),Nr===r&&(Nr=sp(),Nr===r&&(Nr=Tm())),Nr}function Jh(){var Nr,Nn,Di,na,Ks,Li;if(No++,Nr=on,ft.test(e.charAt(on))?(Nn=e.charAt(on),on++):(Nn=r,No===0&&ys(Gt)),Nn!==r){for(Di=[],na=on,Ks=Wp(),Ks===r&&(Ks=null),Ks!==r?(er.test(e.charAt(on))?(Li=e.charAt(on),on++):(Li=r,No===0&&ys(Ur)),Li!==r?(Ks=[Ks,Li],na=Ks):(on=na,na=r)):(on=na,na=r);na!==r;)Di.push(na),na=on,Ks=Wp(),Ks===r&&(Ks=null),Ks!==r?(er.test(e.charAt(on))?(Li=e.charAt(on),on++):(Li=r,No===0&&ys(Ur)),Li!==r?(Ks=[Ks,Li],na=Ks):(on=na,na=r)):(on=na,na=r);Di!==r?(Bo=Nr,Nn=Ot(),Nr=Nn):(on=Nr,Nr=r)}else on=Nr,Nr=r;return No--,Nr===r&&(Nn=r,No===0&&ys(Xe)),Nr}function Tm(){var Nr,Nn,Di,na,Ks;if(Nr=on,e.substr(on,2)===dr?(Nn=dr,on+=2):(Nn=r,No===0&&ys(Ar)),Nn===r&&(Nn=null),Nn!==r)if(or.test(e.charAt(on))?(Di=e.charAt(on),on++):(Di=r,No===0&&ys(Fr)),Di!==r){for(na=[],$r.test(e.charAt(on))?(Ks=e.charAt(on),on++):(Ks=r,No===0&&ys(Or));Ks!==r;)na.push(Ks),$r.test(e.charAt(on))?(Ks=e.charAt(on),on++):(Ks=r,No===0&&ys(Or));na!==r?(Bo=Nr,Nn=Ot(),Nr=Nn):(on=Nr,Nr=r)}else on=Nr,Nr=r;else on=Nr,Nr=r;return Nr}function _l(){var Nr,Nn;return Nr=on,e.substr(on,4)===In?(Nn=In,on+=4):(Nn=r,No===0&&ys(Br)),Nn!==r&&(Bo=Nr,Nn=tr()),Nr=Nn,Nr}function Og(){var Nr,Nn;return Nr=on,e.substr(on,4)===gn?(Nn=gn,on+=4):(Nn=r,No===0&&ys(Gn)),Nn!==r&&(Bo=Nr,Nn=we()),Nr=Nn,Nr===r&&(Nr=on,e.substr(on,5)===Zi?(Nn=Zi,on+=5):(Nn=r,No===0&&ys(Za)),Nn!==r&&(Bo=Nr,Nn=ka()),Nr=Nn),Nr}function sp(){var Nr,Nn,Di,na;return No++,Nr=on,e.charCodeAt(on)===34?(Nn=lr,on++):(Nn=r,No===0&&ys(ga)),Nn!==r?(e.charCodeAt(on)===34?(Di=lr,on++):(Di=r,No===0&&ys(ga)),Di!==r?(Bo=Nr,Nn=vi(),Nr=Nn):(on=Nr,Nr=r)):(on=Nr,Nr=r),Nr===r&&(Nr=on,e.charCodeAt(on)===34?(Nn=lr,on++):(Nn=r,No===0&&ys(ga)),Nn!==r?(Di=lm(),Di!==r?(e.charCodeAt(on)===34?(na=lr,on++):(na=r,No===0&&ys(ga)),na!==r?(Bo=Nr,Nn=Qu(Di),Nr=Nn):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)),No--,Nr===r&&(Nn=r,No===0&&ys(Qs)),Nr}function lm(){var Nr,Nn,Di;if(Nr=on,Nn=[],Di=ch(),Di!==r)for(;Di!==r;)Nn.push(Di),Di=ch();else Nn=r;return Nn!==r&&(Bo=Nr,Nn=Yu(Nn)),Nr=Nn,Nr}function ch(){var Nr,Nn,Di,na,Ks,Li;return YA.test(e.charAt(on))?(Nr=e.charAt(on),on++):(Nr=r,No===0&&ys(ud)),Nr===r&&(Nr=on,e.substr(on,2)===TA?(Nn=TA,on+=2):(Nn=r,No===0&&ys(Ld)),Nn!==r&&(Bo=Nr,Nn=jr()),Nr=Nn,Nr===r&&(Nr=on,e.substr(on,2)===Gr?(Nn=Gr,on+=2):(Nn=r,No===0&&ys(Ir)),Nn!==r&&(Bo=Nr,Nn=nn()),Nr=Nn,Nr===r&&(Nr=on,e.substr(on,2)===Cn?(Nn=Cn,on+=2):(Nn=r,No===0&&ys(Vn)),Nn!==r&&(Bo=Nr,Nn=Ji()),Nr=Nn,Nr===r&&(Nr=on,e.substr(on,2)===Hr?(Nn=Hr,on+=2):(Nn=r,No===0&&ys(Ws)),Nn!==r&&(Bo=Nr,Nn=Ko()),Nr=Nn,Nr===r&&(Nr=on,e.substr(on,2)===ai?(Nn=ai,on+=2):(Nn=r,No===0&&ys(pa)),Nn!==r&&(Bo=Nr,Nn=sg()),Nr=Nn,Nr===r&&(Nr=on,e.substr(on,2)===Fu?(Nn=Fu,on+=2):(Nn=r,No===0&&ys(Cg)),Nn!==r&&(Bo=Nr,Nn=Zu()),Nr=Nn,Nr===r&&(Nr=on,e.substr(on,2)===Cl?(Nn=Cl,on+=2):(Nn=r,No===0&&ys(wi)),Nn!==r&&(Bo=Nr,Nn=ts()),Nr=Nn,Nr===r&&(Nr=on,e.substr(on,2)===$i?(Nn=$i,on+=2):(Nn=r,No===0&&ys(Ga)),Nn!==r&&(Bo=Nr,Nn=$s()),Nr=Nn,Nr===r&&(Nr=on,e.substr(on,2)===xl?(Nn=xl,on+=2):(Nn=r,No===0&&ys(qo)),Nn!==r?(Di=Xl(),Di!==r?(na=Xl(),na!==r?(Ks=Xl(),Ks!==r?(Li=Xl(),Li!==r?(Bo=Nr,Nn=Na(Di,na,Ks,Li),Nr=Nn):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)))))))))),Nr}function Xl(){var Nr;return wu.test(e.charAt(on))?(Nr=e.charAt(on),on++):(Nr=r,No===0&&ys(Dg)),Nr}function Wp(){var Nr,Nn;if(No++,Nr=[],au.test(e.charAt(on))?(Nn=e.charAt(on),on++):(Nn=r,No===0&&ys(Lg)),Nn!==r)for(;Nn!==r;)Nr.push(Nn),au.test(e.charAt(on))?(Nn=e.charAt(on),on++):(Nn=r,No===0&&ys(Lg));else Nr=r;return No--,Nr===r&&(Nn=r,No===0&&ys(hl)),Nr}function uC(){var Nr,Nn;if(No++,Nr=[],Td.test(e.charAt(on))?(Nn=e.charAt(on),on++):(Nn=r,No===0&&ys(ei)),Nn!==r)for(;Nn!==r;)Nr.push(Nn),Td.test(e.charAt(on))?(Nn=e.charAt(on),on++):(Nn=r,No===0&&ys(ei));else Nr=r;return No--,Nr===r&&(Nn=r,No===0&&ys(cf)),Nr}function fs(){var Nr,Nn,Di,na,Ks,Li;if(Nr=on,Nn=Ao(),Nn!==r){for(Di=[],na=on,Ks=Wp(),Ks===r&&(Ks=null),Ks!==r?(Li=Ao(),Li!==r?(Ks=[Ks,Li],na=Ks):(on=na,na=r)):(on=na,na=r);na!==r;)Di.push(na),na=on,Ks=Wp(),Ks===r&&(Ks=null),Ks!==r?(Li=Ao(),Li!==r?(Ks=[Ks,Li],na=Ks):(on=na,na=r)):(on=na,na=r);Di!==r?(Nn=[Nn,Di],Nr=Nn):(on=Nr,Nr=r)}else on=Nr,Nr=r;return Nr}function Ao(){var Nr;return e.substr(on,2)===Qa?(Nr=Qa,on+=2):(Nr=r,No===0&&ys(Rt)),Nr===r&&(e.charCodeAt(on)===10?(Nr=kl,on++):(Nr=r,No===0&&ys(Hu)),Nr===r&&(e.charCodeAt(on)===13?(Nr=us,on++):(Nr=r,No===0&&ys(og)))),Nr}let Do=2,zl=0;if(Hl=a(),Hl!==r&&on===e.length)return Hl;throw Hl!==r&&on{"use strict";Object.defineProperty(nbe,"__esModule",{value:!0});nbe.PreserveOrdering=void 0;nbe.stringifySyml=yqr;nbe.parseSyml=wSs;var Cqr=pqr(),bSs=Iqr(),ESs=/^(?![-?:,\][{}#&*!|>'"%@` \t\r\n]).([ \t]*(?![,\][{}:# \t\r\n]).)*$/,mqr=["__metadata","version","resolution","dependencies","peerDependencies","dependenciesMeta","peerDependenciesMeta","binaries"],a9e=class{constructor(t){this.data=t}};nbe.PreserveOrdering=a9e;function hqr(e){return e.match(ESs)?e:JSON.stringify(e)}function _qr(e){return typeof e>"u"?!0:typeof e=="object"&&e!==null&&!Array.isArray(e)?Object.keys(e).every(t=>_qr(e[t])):!1}function kQt(e,t,r){if(e===null)return`null +`,Dt=Yi(`\r +`,!1),Gl=` +`,Xu=Yi(` +`,!1),us="\r",ag=Yi("\r",!1),on=0,Eo=0,eA=[{line:1,column:1}],lA=0,XA=[],To=0,Xl;if("startRule"in t){if(!(t.startRule in s))throw new Error(`Can't start parsing from rule "`+t.startRule+'".');a=s[t.startRule]}function Zf(){return e.substring(Eo,on)}function Wd(){return Na(Eo,on)}function EA(Nr,Nn){throw Nn=Nn!==void 0?Nn:Na(Eo,on),lm([RA(Nr)],e.substring(Eo,on),Nn)}function Ps(Nr,Nn){throw Nn=Nn!==void 0?Nn:Na(Eo,on),Ya(Nr,Nn)}function Yi(Nr,Nn){return{type:"literal",text:Nr,ignoreCase:Nn}}function ec(Nr,Nn,Di){return{type:"class",parts:Nr,inverted:Nn,ignoreCase:Di}}function ul(){return{type:"any"}}function Ts(){return{type:"end"}}function RA(Nr){return{type:"other",description:Nr}}function Kd(Nr){var Nn=eA[Nr],Di;if(Nn)return Nn;for(Di=Nr-1;!eA[Di];)Di--;for(Nn=eA[Di],Nn={line:Nn.line,column:Nn.column};DilA&&(lA=on,XA=[]),XA.push(Nr))}function Ya(Nr,Nn){return new rAe(Nr,null,null,Nn)}function lm(Nr,Nn,Di){return new rAe(rAe.buildMessage(Nr,Nn),Nr,Nn,Di)}function $s(){var Nr;return Nr=NC(),Nr}function ps(){var Nr,Nn,Di;for(Nr=on,Nn=[],Di=oc();Di!==r;)Nn.push(Di),Di=oc();return Nn!==r&&(Eo=Nr,Nn=o(Nn)),Nr=Nn,Nr}function oc(){var Nr,Nn,Di,ra,Us;return Nr=on,Nn=vl(),Nn!==r?(e.charCodeAt(on)===45?(Di=g,on++):(Di=r,To===0&&ys(p)),Di!==r?(ra=Pp(),ra!==r?(Us=wI(),Us!==r?(Eo=Nr,Nn=f(Us),Nr=Nn):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r),Nr}function NC(){var Nr,Nn,Di;for(Nr=on,Nn=[],Di=fI();Di!==r;)Nn.push(Di),Di=fI();return Nn!==r&&(Eo=Nr,Nn=m(Nn)),Nr=Nn,Nr}function fI(){var Nr,Nn,Di,ra,Us,Li,Ll,DA,Rd;if(Nr=on,Nn=Pp(),Nn===r&&(Nn=null),Nn!==r){if(Di=on,e.charCodeAt(on)===35?(ra=y,on++):(ra=r,To===0&&ys(B)),ra!==r){if(Us=[],Li=on,Ll=on,To++,DA=go(),To--,DA===r?Ll=void 0:(on=Ll,Ll=r),Ll!==r?(e.length>on?(DA=e.charAt(on),on++):(DA=r,To===0&&ys(v)),DA!==r?(Ll=[Ll,DA],Li=Ll):(on=Li,Li=r)):(on=Li,Li=r),Li!==r)for(;Li!==r;)Us.push(Li),Li=on,Ll=on,To++,DA=go(),To--,DA===r?Ll=void 0:(on=Ll,Ll=r),Ll!==r?(e.length>on?(DA=e.charAt(on),on++):(DA=r,To===0&&ys(v)),DA!==r?(Ll=[Ll,DA],Li=Ll):(on=Li,Li=r)):(on=Li,Li=r);else Us=r;Us!==r?(ra=[ra,Us],Di=ra):(on=Di,Di=r)}else on=Di,Di=r;if(Di===r&&(Di=null),Di!==r){if(ra=[],Us=fs(),Us!==r)for(;Us!==r;)ra.push(Us),Us=fs();else ra=r;ra!==r?(Eo=Nr,Nn=k(),Nr=Nn):(on=Nr,Nr=r)}else on=Nr,Nr=r}else on=Nr,Nr=r;if(Nr===r&&(Nr=on,Nn=vl(),Nn!==r?(Di=ja(),Di!==r?(ra=Pp(),ra===r&&(ra=null),ra!==r?(e.charCodeAt(on)===58?(Us=T,on++):(Us=r,To===0&&ys(O)),Us!==r?(Li=Pp(),Li===r&&(Li=null),Li!==r?(Ll=wI(),Ll!==r?(Eo=Nr,Nn=X(Di,Ll),Nr=Nn):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r),Nr===r&&(Nr=on,Nn=vl(),Nn!==r?(Di=su(),Di!==r?(ra=Pp(),ra===r&&(ra=null),ra!==r?(e.charCodeAt(on)===58?(Us=T,on++):(Us=r,To===0&&ys(O)),Us!==r?(Li=Pp(),Li===r&&(Li=null),Li!==r?(Ll=wI(),Ll!==r?(Eo=Nr,Nn=X(Di,Ll),Nr=Nn):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r),Nr===r))){if(Nr=on,Nn=vl(),Nn!==r)if(Di=su(),Di!==r)if(ra=Pp(),ra!==r)if(Us=RC(),Us!==r){if(Li=[],Ll=fs(),Ll!==r)for(;Ll!==r;)Li.push(Ll),Ll=fs();else Li=r;Li!==r?(Eo=Nr,Nn=X(Di,Us),Nr=Nn):(on=Nr,Nr=r)}else on=Nr,Nr=r;else on=Nr,Nr=r;else on=Nr,Nr=r;else on=Nr,Nr=r;if(Nr===r)if(Nr=on,Nn=vl(),Nn!==r)if(Di=su(),Di!==r){if(ra=[],Us=on,Li=Pp(),Li===r&&(Li=null),Li!==r?(e.charCodeAt(on)===44?(Ll=U,on++):(Ll=r,To===0&&ys(le)),Ll!==r?(DA=Pp(),DA===r&&(DA=null),DA!==r?(Rd=su(),Rd!==r?(Eo=Us,Li=ae(Di,Rd),Us=Li):(on=Us,Us=r)):(on=Us,Us=r)):(on=Us,Us=r)):(on=Us,Us=r),Us!==r)for(;Us!==r;)ra.push(Us),Us=on,Li=Pp(),Li===r&&(Li=null),Li!==r?(e.charCodeAt(on)===44?(Ll=U,on++):(Ll=r,To===0&&ys(le)),Ll!==r?(DA=Pp(),DA===r&&(DA=null),DA!==r?(Rd=su(),Rd!==r?(Eo=Us,Li=ae(Di,Rd),Us=Li):(on=Us,Us=r)):(on=Us,Us=r)):(on=Us,Us=r)):(on=Us,Us=r);else ra=r;ra!==r?(Us=Pp(),Us===r&&(Us=null),Us!==r?(e.charCodeAt(on)===58?(Li=T,on++):(Li=r,To===0&&ys(O)),Li!==r?(Ll=Pp(),Ll===r&&(Ll=null),Ll!==r?(DA=wI(),DA!==r?(Eo=Nr,Nn=ge(Di,ra,DA),Nr=Nn):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)}else on=Nr,Nr=r;else on=Nr,Nr=r}return Nr}function wI(){var Nr,Nn,Di,ra,Us,Li,Ll;if(Nr=on,Nn=on,To++,Di=on,ra=go(),ra!==r?(Us=sl(),Us!==r?(e.charCodeAt(on)===45?(Li=g,on++):(Li=r,To===0&&ys(p)),Li!==r?(Ll=Pp(),Ll!==r?(ra=[ra,Us,Li,Ll],Di=ra):(on=Di,Di=r)):(on=Di,Di=r)):(on=Di,Di=r)):(on=Di,Di=r),To--,Di!==r?(on=Nn,Nn=void 0):Nn=r,Nn!==r?(Di=fs(),Di!==r?(ra=VA(),ra!==r?(Us=ps(),Us!==r?(Li=uf(),Li!==r?(Eo=Nr,Nn=fe(Us),Nr=Nn):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r),Nr===r&&(Nr=on,Nn=go(),Nn!==r?(Di=VA(),Di!==r?(ra=NC(),ra!==r?(Us=uf(),Us!==r?(Eo=Nr,Nn=fe(ra),Nr=Nn):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r),Nr===r))if(Nr=on,Nn=ii(),Nn!==r){if(Di=[],ra=fs(),ra!==r)for(;ra!==r;)Di.push(ra),ra=fs();else Di=r;Di!==r?(Eo=Nr,Nn=pe(Nn),Nr=Nn):(on=Nr,Nr=r)}else on=Nr,Nr=r;return Nr}function vl(){var Nr,Nn,Di;for(To++,Nr=on,Nn=[],e.charCodeAt(on)===32?(Di=be,on++):(Di=r,To===0&&ys(Te));Di!==r;)Nn.push(Di),e.charCodeAt(on)===32?(Di=be,on++):(Di=r,To===0&&ys(Te));return Nn!==r?(Eo=on,Di=ke(Nn),Di?Di=void 0:Di=r,Di!==r?(Nn=[Nn,Di],Nr=Nn):(on=Nr,Nr=r)):(on=Nr,Nr=r),To--,Nr===r&&(Nn=r,To===0&&ys(he)),Nr}function sl(){var Nr,Nn,Di;for(Nr=on,Nn=[],e.charCodeAt(on)===32?(Di=be,on++):(Di=r,To===0&&ys(Te));Di!==r;)Nn.push(Di),e.charCodeAt(on)===32?(Di=be,on++):(Di=r,To===0&&ys(Te));return Nn!==r?(Eo=on,Di=x(Nn),Di?Di=void 0:Di=r,Di!==r?(Nn=[Nn,Di],Nr=Nn):(on=Nr,Nr=r)):(on=Nr,Nr=r),Nr}function VA(){var Nr;return Eo=on,Nr=et(),Nr?Nr=void 0:Nr=r,Nr}function uf(){var Nr;return Eo=on,Nr=Ue(),Nr?Nr=void 0:Nr=r,Nr}function ja(){var Nr;return Nr=op(),Nr===r&&(Nr=Uh()),Nr}function su(){var Nr,Nn,Di;if(Nr=op(),Nr===r){if(Nr=on,Nn=[],Di=Nm(),Di!==r)for(;Di!==r;)Nn.push(Di),Di=Nm();else Nn=r;Nn!==r&&(Eo=Nr,Nn=Je()),Nr=Nn}return Nr}function ii(){var Nr;return Nr=yl(),Nr===r&&(Nr=Qg(),Nr===r&&(Nr=op(),Nr===r&&(Nr=Uh()))),Nr}function RC(){var Nr;return Nr=yl(),Nr===r&&(Nr=op(),Nr===r&&(Nr=Nm())),Nr}function Uh(){var Nr,Nn,Di,ra,Us,Li;if(To++,Nr=on,ft.test(e.charAt(on))?(Nn=e.charAt(on),on++):(Nn=r,To===0&&ys(Gt)),Nn!==r){for(Di=[],ra=on,Us=Pp(),Us===r&&(Us=null),Us!==r?(er.test(e.charAt(on))?(Li=e.charAt(on),on++):(Li=r,To===0&&ys(Ur)),Li!==r?(Us=[Us,Li],ra=Us):(on=ra,ra=r)):(on=ra,ra=r);ra!==r;)Di.push(ra),ra=on,Us=Pp(),Us===r&&(Us=null),Us!==r?(er.test(e.charAt(on))?(Li=e.charAt(on),on++):(Li=r,To===0&&ys(Ur)),Li!==r?(Us=[Us,Li],ra=Us):(on=ra,ra=r)):(on=ra,ra=r);Di!==r?(Eo=Nr,Nn=Ot(),Nr=Nn):(on=Nr,Nr=r)}else on=Nr,Nr=r;return To--,Nr===r&&(Nn=r,To===0&&ys(Xe)),Nr}function Nm(){var Nr,Nn,Di,ra,Us;if(Nr=on,e.substr(on,2)===dr?(Nn=dr,on+=2):(Nn=r,To===0&&ys(Ar)),Nn===r&&(Nn=null),Nn!==r)if(or.test(e.charAt(on))?(Di=e.charAt(on),on++):(Di=r,To===0&&ys(Fr)),Di!==r){for(ra=[],$r.test(e.charAt(on))?(Us=e.charAt(on),on++):(Us=r,To===0&&ys(Or));Us!==r;)ra.push(Us),$r.test(e.charAt(on))?(Us=e.charAt(on),on++):(Us=r,To===0&&ys(Or));ra!==r?(Eo=Nr,Nn=Ot(),Nr=Nn):(on=Nr,Nr=r)}else on=Nr,Nr=r;else on=Nr,Nr=r;return Nr}function yl(){var Nr,Nn;return Nr=on,e.substr(on,4)===In?(Nn=In,on+=4):(Nn=r,To===0&&ys(Br)),Nn!==r&&(Eo=Nr,Nn=tr()),Nr=Nn,Nr}function Qg(){var Nr,Nn;return Nr=on,e.substr(on,4)===gn?(Nn=gn,on+=4):(Nn=r,To===0&&ys(Gn)),Nn!==r&&(Eo=Nr,Nn=we()),Nr=Nn,Nr===r&&(Nr=on,e.substr(on,5)===Zi?(Nn=Zi,on+=5):(Nn=r,To===0&&ys(Fa)),Nn!==r&&(Eo=Nr,Nn=xa()),Nr=Nn),Nr}function op(){var Nr,Nn,Di,ra;return To++,Nr=on,e.charCodeAt(on)===34?(Nn=lr,on++):(Nn=r,To===0&&ys(ua)),Nn!==r?(e.charCodeAt(on)===34?(Di=lr,on++):(Di=r,To===0&&ys(ua)),Di!==r?(Eo=Nr,Nn=vi(),Nr=Nn):(on=Nr,Nr=r)):(on=Nr,Nr=r),Nr===r&&(Nr=on,e.charCodeAt(on)===34?(Nn=lr,on++):(Nn=r,To===0&&ys(ua)),Nn!==r?(Di=um(),Di!==r?(e.charCodeAt(on)===34?(ra=lr,on++):(ra=r,To===0&&ys(ua)),ra!==r?(Eo=Nr,Nn=Hu(Di),Nr=Nn):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)),To--,Nr===r&&(Nn=r,To===0&&ys(Qs)),Nr}function um(){var Nr,Nn,Di;if(Nr=on,Nn=[],Di=lh(),Di!==r)for(;Di!==r;)Nn.push(Di),Di=lh();else Nn=r;return Nn!==r&&(Eo=Nr,Nn=Yu(Nn)),Nr=Nn,Nr}function lh(){var Nr,Nn,Di,ra,Us,Li;return YA.test(e.charAt(on))?(Nr=e.charAt(on),on++):(Nr=r,To===0&&ys(gd)),Nr===r&&(Nr=on,e.substr(on,2)===NA?(Nn=NA,on+=2):(Nn=r,To===0&&ys(Vd)),Nn!==r&&(Eo=Nr,Nn=jr()),Nr=Nn,Nr===r&&(Nr=on,e.substr(on,2)===Gr?(Nn=Gr,on+=2):(Nn=r,To===0&&ys(Ir)),Nn!==r&&(Eo=Nr,Nn=nn()),Nr=Nn,Nr===r&&(Nr=on,e.substr(on,2)===Cn?(Nn=Cn,on+=2):(Nn=r,To===0&&ys(Vn)),Nn!==r&&(Eo=Nr,Nn=Ji()),Nr=Nn,Nr===r&&(Nr=on,e.substr(on,2)===Yr?(Nn=Yr,on+=2):(Nn=r,To===0&&ys(Vs)),Nn!==r&&(Eo=Nr,Nn=Uo()),Nr=Nn,Nr===r&&(Nr=on,e.substr(on,2)===ai?(Nn=ai,on+=2):(Nn=r,To===0&&ys(da)),Nn!==r&&(Eo=Nr,Nn=og()),Nr=Nn,Nr===r&&(Nr=on,e.substr(on,2)===Zu?(Nn=Zu,on+=2):(Nn=r,To===0&&ys(mg)),Nn!==r&&(Eo=Nr,Nn=Lu()),Nr=Nn,Nr===r&&(Nr=on,e.substr(on,2)===ml?(Nn=ml,on+=2):(Nn=r,To===0&&ys(wi)),Nn!==r&&(Eo=Nr,Nn=ts()),Nr=Nn,Nr===r&&(Nr=on,e.substr(on,2)===$i?(Nn=$i,on+=2):(Nn=r,To===0&&ys(ka)),Nn!==r&&(Eo=Nr,Nn=qs()),Nr=Nn,Nr===r&&(Nr=on,e.substr(on,2)===kl?(Nn=kl,on+=2):(Nn=r,To===0&&ys(zo)),Nn!==r?(Di=Jl(),Di!==r?(ra=Jl(),ra!==r?(Us=Jl(),Us!==r?(Li=Jl(),Li!==r?(Eo=Nr,Nn=Ta(Di,ra,Us,Li),Nr=Nn):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)):(on=Nr,Nr=r)))))))))),Nr}function Jl(){var Nr;return Tu.test(e.charAt(on))?(Nr=e.charAt(on),on++):(Nr=r,To===0&&ys(xg)),Nr}function Pp(){var Nr,Nn;if(To++,Nr=[],cu.test(e.charAt(on))?(Nn=e.charAt(on),on++):(Nn=r,To===0&&ys(Vg)),Nn!==r)for(;Nn!==r;)Nr.push(Nn),cu.test(e.charAt(on))?(Nn=e.charAt(on),on++):(Nn=r,To===0&&ys(Vg));else Nr=r;return To--,Nr===r&&(Nn=r,To===0&&ys(_l)),Nr}function gC(){var Nr,Nn;if(To++,Nr=[],Nd.test(e.charAt(on))?(Nn=e.charAt(on),on++):(Nn=r,To===0&&ys(ei)),Nn!==r)for(;Nn!==r;)Nr.push(Nn),Nd.test(e.charAt(on))?(Nn=e.charAt(on),on++):(Nn=r,To===0&&ys(ei));else Nr=r;return To--,Nr===r&&(Nn=r,To===0&&ys(lf)),Nr}function fs(){var Nr,Nn,Di,ra,Us,Li;if(Nr=on,Nn=go(),Nn!==r){for(Di=[],ra=on,Us=Pp(),Us===r&&(Us=null),Us!==r?(Li=go(),Li!==r?(Us=[Us,Li],ra=Us):(on=ra,ra=r)):(on=ra,ra=r);ra!==r;)Di.push(ra),ra=on,Us=Pp(),Us===r&&(Us=null),Us!==r?(Li=go(),Li!==r?(Us=[Us,Li],ra=Us):(on=ra,ra=r)):(on=ra,ra=r);Di!==r?(Nn=[Nn,Di],Nr=Nn):(on=Nr,Nr=r)}else on=Nr,Nr=r;return Nr}function go(){var Nr;return e.substr(on,2)===Qa?(Nr=Qa,on+=2):(Nr=r,To===0&&ys(Dt)),Nr===r&&(e.charCodeAt(on)===10?(Nr=Gl,on++):(Nr=r,To===0&&ys(Xu)),Nr===r&&(e.charCodeAt(on)===13?(Nr=us,on++):(Nr=r,To===0&&ys(ag)))),Nr}let Ro=2,ql=0;if(Xl=a(),Xl!==r&&on===e.length)return Xl;throw Xl!==r&&on{"use strict";Object.defineProperty(sbe,"__esModule",{value:!0});sbe.PreserveOrdering=void 0;sbe.stringifySyml=wqr;sbe.parseSyml=GSs;var Eqr=_qr(),NSs=bqr(),RSs=/^(?![-?:,\][{}#&*!|>'"%@` \t\r\n]).([ \t]*(?![,\][{}:# \t\r\n]).)*$/,Bqr=["__metadata","version","resolution","dependencies","peerDependencies","dependenciesMeta","peerDependenciesMeta","binaries"],l9e=class{constructor(t){this.data=t}};sbe.PreserveOrdering=l9e;function vqr(e){return e.match(RSs)?e:JSON.stringify(e)}function Sqr(e){return typeof e>"u"?!0:typeof e=="object"&&e!==null&&!Array.isArray(e)?Object.keys(e).every(t=>Sqr(e[t])):!1}function Z5t(e,t,r){if(e===null)return`null `;if(typeof e=="number"||typeof e=="boolean")return`${e.toString()} -`;if(typeof e=="string")return`${hqr(e)} +`;if(typeof e=="string")return`${vqr(e)} `;if(Array.isArray(e)){if(e.length===0)return`[] `;let s=" ".repeat(t);return` -${e.map(o=>`${s}- ${kQt(o,t+1,!1)}`).join("")}`}if(typeof e=="object"&&e){let[s,a]=e instanceof a9e?[e.data,!1]:[e,!0],o=" ".repeat(t),g=Object.keys(s);a&&g.sort((f,m)=>{let y=mqr.indexOf(f),B=mqr.indexOf(m);return y===-1&&B===-1?fm?1:0:y!==-1&&B===-1?-1:y===-1&&B!==-1?1:y-B});let p=g.filter(f=>!_qr(s[f])).map((f,m)=>{let y=s[f],B=hqr(f),v=kQt(y,t+1,!0),G=m>0||r?o:"",T=B.length>1024?`? ${B} -${G}:`:`${B}:`,O=v.startsWith(` -`)?v:` ${v}`;return`${G}${T}${O}`}).join(t===0?` +${e.map(o=>`${s}- ${Z5t(o,t+1,!1)}`).join("")}`}if(typeof e=="object"&&e){let[s,a]=e instanceof l9e?[e.data,!1]:[e,!0],o=" ".repeat(t),g=Object.keys(s);a&&g.sort((f,m)=>{let y=Bqr.indexOf(f),B=Bqr.indexOf(m);return y===-1&&B===-1?fm?1:0:y!==-1&&B===-1?-1:y===-1&&B!==-1?1:y-B});let p=g.filter(f=>!Sqr(s[f])).map((f,m)=>{let y=s[f],B=vqr(f),v=Z5t(y,t+1,!0),k=m>0||r?o:"",T=B.length>1024?`? ${B} +${k}:`:`${B}:`,O=v.startsWith(` +`)?v:` ${v}`;return`${k}${T}${O}`}).join(t===0?` `:"")||` `;return r?` -${p}`:`${p}`}throw new Error(`Unsupported value type (${e})`)}function yqr(e){try{let t=kQt(e,0,!1);return t!==` -`?t:""}catch(t){throw t.location&&(t.message=t.message.replace(/(\.)?$/,` (line ${t.location.start.line}, column ${t.location.start.column})$1`)),t}}yqr.PreserveOrdering=a9e;function BSs(e){return e.endsWith(` +${p}`:`${p}`}throw new Error(`Unsupported value type (${e})`)}function wqr(e){try{let t=Z5t(e,0,!1);return t!==` +`?t:""}catch(t){throw t.location&&(t.message=t.message.replace(/(\.)?$/,` (line ${t.location.start.line}, column ${t.location.start.column})$1`)),t}}wqr.PreserveOrdering=l9e;function DSs(e){return e.endsWith(` `)||(e+=` -`),(0,bSs.parse)(e)}var vSs=/^(#.*(\r?\n))*?#\s+yarn\s+lockfile\s+v1\r?\n/i;function SSs(e){if(vSs.test(e))return BSs(e);let t=(0,Cqr.safeLoad)(e,{schema:Cqr.FAILSAFE_SCHEMA,json:!0});if(t==null)return{};if(typeof t!="object")throw new Error(`Expected an indexed object, got a ${typeof t} instead. Does your file follow Yaml's rules?`);if(Array.isArray(t))throw new Error("Expected an indexed object, got an array instead. Does your file follow Yaml's rules?");return t}function wSs(e){return SSs(e)}});var aO=z(em=>{"use strict";Object.defineProperty(em,"__esModule",{value:!0});em.stringifySyml=em.parseSyml=em.stringifyResolution=em.parseResolution=em.stringifyValueArgument=em.stringifyShellLine=em.stringifyRedirectArgument=em.stringifyEnvSegment=em.stringifyCommandLineThen=em.stringifyCommandLine=em.stringifyCommandChainThen=em.stringifyCommandChain=em.stringifyCommand=em.stringifyArithmeticExpression=em.stringifyArgumentSegment=em.stringifyArgument=em.stringifyShell=em.parseShell=void 0;var wL=yjr();Object.defineProperty(em,"parseShell",{enumerable:!0,get:function(){return wL.parseShell}});Object.defineProperty(em,"stringifyShell",{enumerable:!0,get:function(){return wL.stringifyShell}});Object.defineProperty(em,"stringifyArgument",{enumerable:!0,get:function(){return wL.stringifyArgument}});Object.defineProperty(em,"stringifyArgumentSegment",{enumerable:!0,get:function(){return wL.stringifyArgumentSegment}});Object.defineProperty(em,"stringifyArithmeticExpression",{enumerable:!0,get:function(){return wL.stringifyArithmeticExpression}});Object.defineProperty(em,"stringifyCommand",{enumerable:!0,get:function(){return wL.stringifyCommand}});Object.defineProperty(em,"stringifyCommandChain",{enumerable:!0,get:function(){return wL.stringifyCommandChain}});Object.defineProperty(em,"stringifyCommandChainThen",{enumerable:!0,get:function(){return wL.stringifyCommandChainThen}});Object.defineProperty(em,"stringifyCommandLine",{enumerable:!0,get:function(){return wL.stringifyCommandLine}});Object.defineProperty(em,"stringifyCommandLineThen",{enumerable:!0,get:function(){return wL.stringifyCommandLineThen}});Object.defineProperty(em,"stringifyEnvSegment",{enumerable:!0,get:function(){return wL.stringifyEnvSegment}});Object.defineProperty(em,"stringifyRedirectArgument",{enumerable:!0,get:function(){return wL.stringifyRedirectArgument}});Object.defineProperty(em,"stringifyShellLine",{enumerable:!0,get:function(){return wL.stringifyShellLine}});Object.defineProperty(em,"stringifyValueArgument",{enumerable:!0,get:function(){return wL.stringifyValueArgument}});var Eqr=Bjr();Object.defineProperty(em,"parseResolution",{enumerable:!0,get:function(){return Eqr.parseResolution}});Object.defineProperty(em,"stringifyResolution",{enumerable:!0,get:function(){return Eqr.stringifyResolution}});var Bqr=bqr();Object.defineProperty(em,"parseSyml",{enumerable:!0,get:function(){return Bqr.parseSyml}});Object.defineProperty(em,"stringifySyml",{enumerable:!0,get:function(){return Bqr.stringifySyml}})});var Sqr=z((xZc,GQt)=>{"use strict";var TSs=e=>{let t=!1,r=!1,s=!1;for(let a=0;a{if(!(typeof e=="string"||Array.isArray(e)))throw new TypeError("Expected the input to be `string | string[]`");t=Object.assign({pascalCase:!1},t);let r=a=>t.pascalCase?a.charAt(0).toUpperCase()+a.slice(1):a;return Array.isArray(e)?e=e.map(a=>a.trim()).filter(a=>a.length).join("-"):e=e.trim(),e.length===0?"":e.length===1?t.pascalCase?e.toUpperCase():e.toLowerCase():(e!==e.toLowerCase()&&(e=TSs(e)),e=e.replace(/^[_.\- ]+/,"").toLowerCase().replace(/[_.\- ]+(\w|$)/g,(a,o)=>o.toUpperCase()).replace(/\d+(\w|$)/g,a=>a.toUpperCase()),r(e))};GQt.exports=vqr;GQt.exports.default=vqr});var wqr=z((kZc,NSs)=>{NSs.exports=[{name:"Agola CI",constant:"AGOLA",env:"AGOLA_GIT_REF",pr:"AGOLA_PULL_REQUEST_ID"},{name:"Appcircle",constant:"APPCIRCLE",env:"AC_APPCIRCLE"},{name:"AppVeyor",constant:"APPVEYOR",env:"APPVEYOR",pr:"APPVEYOR_PULL_REQUEST_NUMBER"},{name:"AWS CodeBuild",constant:"CODEBUILD",env:"CODEBUILD_BUILD_ARN"},{name:"Azure Pipelines",constant:"AZURE_PIPELINES",env:"TF_BUILD",pr:{BUILD_REASON:"PullRequest"}},{name:"Bamboo",constant:"BAMBOO",env:"bamboo_planKey"},{name:"Bitbucket Pipelines",constant:"BITBUCKET",env:"BITBUCKET_COMMIT",pr:"BITBUCKET_PR_ID"},{name:"Bitrise",constant:"BITRISE",env:"BITRISE_IO",pr:"BITRISE_PULL_REQUEST"},{name:"Buddy",constant:"BUDDY",env:"BUDDY_WORKSPACE_ID",pr:"BUDDY_EXECUTION_PULL_REQUEST_ID"},{name:"Buildkite",constant:"BUILDKITE",env:"BUILDKITE",pr:{env:"BUILDKITE_PULL_REQUEST",ne:"false"}},{name:"CircleCI",constant:"CIRCLE",env:"CIRCLECI",pr:"CIRCLE_PULL_REQUEST"},{name:"Cirrus CI",constant:"CIRRUS",env:"CIRRUS_CI",pr:"CIRRUS_PR"},{name:"Codefresh",constant:"CODEFRESH",env:"CF_BUILD_ID",pr:{any:["CF_PULL_REQUEST_NUMBER","CF_PULL_REQUEST_ID"]}},{name:"Codemagic",constant:"CODEMAGIC",env:"CM_BUILD_ID",pr:"CM_PULL_REQUEST"},{name:"Codeship",constant:"CODESHIP",env:{CI_NAME:"codeship"}},{name:"Drone",constant:"DRONE",env:"DRONE",pr:{DRONE_BUILD_EVENT:"pull_request"}},{name:"dsari",constant:"DSARI",env:"DSARI"},{name:"Earthly",constant:"EARTHLY",env:"EARTHLY_CI"},{name:"Expo Application Services",constant:"EAS",env:"EAS_BUILD"},{name:"Gerrit",constant:"GERRIT",env:"GERRIT_PROJECT"},{name:"Gitea Actions",constant:"GITEA_ACTIONS",env:"GITEA_ACTIONS"},{name:"GitHub Actions",constant:"GITHUB_ACTIONS",env:"GITHUB_ACTIONS",pr:{GITHUB_EVENT_NAME:"pull_request"}},{name:"GitLab CI",constant:"GITLAB",env:"GITLAB_CI",pr:"CI_MERGE_REQUEST_ID"},{name:"GoCD",constant:"GOCD",env:"GO_PIPELINE_LABEL"},{name:"Google Cloud Build",constant:"GOOGLE_CLOUD_BUILD",env:"BUILDER_OUTPUT"},{name:"Harness CI",constant:"HARNESS",env:"HARNESS_BUILD_ID"},{name:"Heroku",constant:"HEROKU",env:{env:"NODE",includes:"/app/.heroku/node/bin/node"}},{name:"Hudson",constant:"HUDSON",env:"HUDSON_URL"},{name:"Jenkins",constant:"JENKINS",env:["JENKINS_URL","BUILD_ID"],pr:{any:["ghprbPullId","CHANGE_ID"]}},{name:"LayerCI",constant:"LAYERCI",env:"LAYERCI",pr:"LAYERCI_PULL_REQUEST"},{name:"Magnum CI",constant:"MAGNUM",env:"MAGNUM"},{name:"Netlify CI",constant:"NETLIFY",env:"NETLIFY",pr:{env:"PULL_REQUEST",ne:"false"}},{name:"Nevercode",constant:"NEVERCODE",env:"NEVERCODE",pr:{env:"NEVERCODE_PULL_REQUEST",ne:"false"}},{name:"Prow",constant:"PROW",env:"PROW_JOB_ID"},{name:"ReleaseHub",constant:"RELEASEHUB",env:"RELEASE_BUILD_ID"},{name:"Render",constant:"RENDER",env:"RENDER",pr:{IS_PULL_REQUEST:"true"}},{name:"Sail CI",constant:"SAIL",env:"SAILCI",pr:"SAIL_PULL_REQUEST_NUMBER"},{name:"Screwdriver",constant:"SCREWDRIVER",env:"SCREWDRIVER",pr:{env:"SD_PULL_REQUEST",ne:"false"}},{name:"Semaphore",constant:"SEMAPHORE",env:"SEMAPHORE",pr:"PULL_REQUEST_NUMBER"},{name:"Sourcehut",constant:"SOURCEHUT",env:{CI_NAME:"sourcehut"}},{name:"Strider CD",constant:"STRIDER",env:"STRIDER"},{name:"TaskCluster",constant:"TASKCLUSTER",env:["TASK_ID","RUN_ID"]},{name:"TeamCity",constant:"TEAMCITY",env:"TEAMCITY_VERSION"},{name:"Travis CI",constant:"TRAVIS",env:"TRAVIS",pr:{env:"TRAVIS_PULL_REQUEST",ne:"false"}},{name:"Vela",constant:"VELA",env:"VELA",pr:{VELA_PULL_REQUEST:"1"}},{name:"Vercel",constant:"VERCEL",env:{any:["NOW_BUILDER","VERCEL"]},pr:"VERCEL_GIT_PULL_REQUEST_ID"},{name:"Visual Studio App Center",constant:"APPCENTER",env:"APPCENTER_BUILD_ID"},{name:"Woodpecker",constant:"WOODPECKER",env:{CI:"woodpecker"},pr:{CI_BUILD_EVENT:"pull_request"}},{name:"Xcode Cloud",constant:"XCODE_CLOUD",env:"CI_XCODE_PROJECT",pr:"CI_PULL_REQUEST_NUMBER"},{name:"Xcode Server",constant:"XCODE_SERVER",env:"XCS"}]});var Uge=z(gW=>{"use strict";var Nqr=wqr(),NT=process.env;Object.defineProperty(gW,"_vendors",{value:Nqr.map(function(e){return e.constant})});gW.name=null;gW.isPR=null;Nqr.forEach(function(e){let r=(Array.isArray(e.env)?e.env:[e.env]).every(function(s){return Tqr(s)});if(gW[e.constant]=r,!!r)switch(gW.name=e.name,typeof e.pr){case"string":gW.isPR=!!NT[e.pr];break;case"object":"env"in e.pr?gW.isPR=e.pr.env in NT&&NT[e.pr.env]!==e.pr.ne:"any"in e.pr?gW.isPR=e.pr.any.some(function(s){return!!NT[s]}):gW.isPR=Tqr(e.pr);break;default:gW.isPR=null}});gW.isCI=!!(NT.CI!=="false"&&(NT.BUILD_ID||NT.BUILD_NUMBER||NT.CI||NT.CI_APP_ID||NT.CI_BUILD_ID||NT.CI_BUILD_NUMBER||NT.CI_NAME||NT.CONTINUOUS_INTEGRATION||NT.RUN_ID||gW.name));function Tqr(e){return typeof e=="string"?!!NT[e]:"env"in e?NT[e.env]&&NT[e.env].includes(e.includes):"any"in e?e.any.some(function(t){return!!NT[t]}):Object.keys(e).every(function(t){return NT[t]===e[t]})}});var Rqr=z((FZc,RSs)=>{RSs.exports={name:"dotenv",version:"16.4.5",description:"Loads environment variables from .env file",main:"lib/main.js",types:"lib/main.d.ts",exports:{".":{types:"./lib/main.d.ts",require:"./lib/main.js",default:"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},scripts:{"dts-check":"tsc --project tests/types/tsconfig.json",lint:"standard","lint-readme":"standard-markdown",pretest:"npm run lint && npm run dts-check",test:"tap tests/*.js --100 -Rspec","test:coverage":"tap --coverage-report=lcov",prerelease:"npm test",release:"standard-version"},repository:{type:"git",url:"git://github.com/motdotla/dotenv.git"},funding:"https://dotenvx.com",keywords:["dotenv","env",".env","environment","variables","config","settings"],readmeFilename:"README.md",license:"BSD-2-Clause",devDependencies:{"@definitelytyped/dtslint":"^0.0.133","@types/node":"^18.11.3",decache:"^4.6.1",sinon:"^14.0.1",standard:"^17.0.0","standard-markdown":"^7.1.0","standard-version":"^9.5.0",tap:"^16.3.0",tar:"^6.1.11",typescript:"^4.8.4"},engines:{node:">=12"},browser:{fs:!1}}});var Gqr=z((ZZc,q7)=>{var FQt=Dt("fs"),ZQt=Dt("path"),DSs=Dt("os"),xSs=Dt("crypto"),kSs=Rqr(),LQt=kSs.version,GSs=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function FSs(e){let t={},r=e.toString();r=r.replace(/\r\n?/mg,` -`);let s;for(;(s=GSs.exec(r))!=null;){let a=s[1],o=s[2]||"";o=o.trim();let g=o[0];o=o.replace(/^(['"`])([\s\S]*)\1$/mg,"$2"),g==='"'&&(o=o.replace(/\\n/g,` -`),o=o.replace(/\\r/g,"\r")),t[a]=o}return t}function ZSs(e){let t=kqr(e),r=RT.configDotenv({path:t});if(!r.parsed){let g=new Error(`MISSING_DATA: Cannot parse ${t} for an unknown reason`);throw g.code="MISSING_DATA",g}let s=xqr(e).split(","),a=s.length,o;for(let g=0;g=a)throw p}return RT.parse(o)}function LSs(e){console.log(`[dotenv@${LQt}][INFO] ${e}`)}function VSs(e){console.log(`[dotenv@${LQt}][WARN] ${e}`)}function Crt(e){console.log(`[dotenv@${LQt}][DEBUG] ${e}`)}function xqr(e){return e&&e.DOTENV_KEY&&e.DOTENV_KEY.length>0?e.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function WSs(e,t){let r;try{r=new URL(t)}catch(p){if(p.code==="ERR_INVALID_URL"){let f=new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw f.code="INVALID_DOTENV_KEY",f}throw p}let s=r.password;if(!s){let p=new Error("INVALID_DOTENV_KEY: Missing key part");throw p.code="INVALID_DOTENV_KEY",p}let a=r.searchParams.get("environment");if(!a){let p=new Error("INVALID_DOTENV_KEY: Missing environment part");throw p.code="INVALID_DOTENV_KEY",p}let o=`DOTENV_VAULT_${a.toUpperCase()}`,g=e.parsed[o];if(!g){let p=new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${o} in your .env.vault file.`);throw p.code="NOT_FOUND_DOTENV_ENVIRONMENT",p}return{ciphertext:g,key:s}}function kqr(e){let t=null;if(e&&e.path&&e.path.length>0)if(Array.isArray(e.path))for(let r of e.path)FQt.existsSync(r)&&(t=r.endsWith(".vault")?r:`${r}.vault`);else t=e.path.endsWith(".vault")?e.path:`${e.path}.vault`;else t=ZQt.resolve(process.cwd(),".env.vault");return FQt.existsSync(t)?t:null}function Dqr(e){return e[0]==="~"?ZQt.join(DSs.homedir(),e.slice(1)):e}function PSs(e){LSs("Loading env from encrypted .env.vault");let t=RT._parseVault(e),r=process.env;return e&&e.processEnv!=null&&(r=e.processEnv),RT.populate(r,t,e),{parsed:t}}function OSs(e){let t=ZQt.resolve(process.cwd(),".env"),r="utf8",s=!!(e&&e.debug);e&&e.encoding?r=e.encoding:s&&Crt("No encoding is specified. UTF-8 is used by default");let a=[t];if(e&&e.path)if(!Array.isArray(e.path))a=[Dqr(e.path)];else{a=[];for(let f of e.path)a.push(Dqr(f))}let o,g={};for(let f of a)try{let m=RT.parse(FQt.readFileSync(f,{encoding:r}));RT.populate(g,m,e)}catch(m){s&&Crt(`Failed to load ${f} ${m.message}`),o=m}let p=process.env;return e&&e.processEnv!=null&&(p=e.processEnv),RT.populate(p,g,e),o?{parsed:g,error:o}:{parsed:g}}function MSs(e){if(xqr(e).length===0)return RT.configDotenv(e);let t=kqr(e);return t?RT._configVault(e):(VSs(`You set DOTENV_KEY but you are missing a .env.vault file at ${t}. Did you forget to build it?`),RT.configDotenv(e))}function QSs(e,t){let r=Buffer.from(t.slice(-64),"hex"),s=Buffer.from(e,"base64"),a=s.subarray(0,12),o=s.subarray(-16);s=s.subarray(12,-16);try{let g=xSs.createDecipheriv("aes-256-gcm",r,a);return g.setAuthTag(o),`${g.update(s)}${g.final()}`}catch(g){let p=g instanceof RangeError,f=g.message==="Invalid key length",m=g.message==="Unsupported state or unable to authenticate data";if(p||f){let y=new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw y.code="INVALID_DOTENV_KEY",y}else if(m){let y=new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw y.code="DECRYPTION_FAILED",y}else throw g}}function YSs(e,t,r={}){let s=!!(r&&r.debug),a=!!(r&&r.override);if(typeof t!="object"){let o=new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw o.code="OBJECT_REQUIRED",o}for(let o of Object.keys(t))Object.prototype.hasOwnProperty.call(e,o)?(a===!0&&(e[o]=t[o]),s&&Crt(a===!0?`"${o}" is already defined and WAS overwritten`:`"${o}" is already defined and was NOT overwritten`)):e[o]=t[o]}var RT={configDotenv:OSs,_configVault:PSs,_parseVault:ZSs,config:MSs,decrypt:QSs,parse:FSs,populate:YSs};q7.exports.configDotenv=RT.configDotenv;q7.exports._configVault=RT._configVault;q7.exports._parseVault=RT._parseVault;q7.exports.config=RT.config;q7.exports.decrypt=RT.decrypt;q7.exports.parse=RT.parse;q7.exports.populate=RT.populate;q7.exports=RT});var Zqr=z((LZc,VQt)=>{"use strict";var Fqr=(e,...t)=>new Promise(r=>{r(e(...t))});VQt.exports=Fqr;VQt.exports.default=Fqr});var Kge=z((VZc,WQt)=>{"use strict";var HSs=Zqr(),Lqr=e=>{if(!((Number.isInteger(e)||e===1/0)&&e>0))return Promise.reject(new TypeError("Expected `concurrency` to be a number from 1 and up"));let t=[],r=0,s=()=>{r--,t.length>0&&t.shift()()},a=(p,f,...m)=>{r++;let y=HSs(p,...m);f(y),y.then(s,s)},o=(p,f,...m)=>{rnew Promise(m=>o(p,m,...f));return Object.defineProperties(g,{activeCount:{get:()=>r},pendingCount:{get:()=>t.length},clearQueue:{value:()=>{t.length=0}}}),g};WQt.exports=Lqr;WQt.exports.default=Lqr});var TL=z(ibe=>{"use strict";Object.defineProperty(ibe,"__esModule",{value:!0});ibe.MessageName=void 0;ibe.stringifyMessageName=XSs;ibe.parseMessageName=JSs;var PQt;(function(e){e[e.UNNAMED=0]="UNNAMED",e[e.EXCEPTION=1]="EXCEPTION",e[e.MISSING_PEER_DEPENDENCY=2]="MISSING_PEER_DEPENDENCY",e[e.CYCLIC_DEPENDENCIES=3]="CYCLIC_DEPENDENCIES",e[e.DISABLED_BUILD_SCRIPTS=4]="DISABLED_BUILD_SCRIPTS",e[e.BUILD_DISABLED=5]="BUILD_DISABLED",e[e.SOFT_LINK_BUILD=6]="SOFT_LINK_BUILD",e[e.MUST_BUILD=7]="MUST_BUILD",e[e.MUST_REBUILD=8]="MUST_REBUILD",e[e.BUILD_FAILED=9]="BUILD_FAILED",e[e.RESOLVER_NOT_FOUND=10]="RESOLVER_NOT_FOUND",e[e.FETCHER_NOT_FOUND=11]="FETCHER_NOT_FOUND",e[e.LINKER_NOT_FOUND=12]="LINKER_NOT_FOUND",e[e.FETCH_NOT_CACHED=13]="FETCH_NOT_CACHED",e[e.YARN_IMPORT_FAILED=14]="YARN_IMPORT_FAILED",e[e.REMOTE_INVALID=15]="REMOTE_INVALID",e[e.REMOTE_NOT_FOUND=16]="REMOTE_NOT_FOUND",e[e.RESOLUTION_PACK=17]="RESOLUTION_PACK",e[e.CACHE_CHECKSUM_MISMATCH=18]="CACHE_CHECKSUM_MISMATCH",e[e.UNUSED_CACHE_ENTRY=19]="UNUSED_CACHE_ENTRY",e[e.MISSING_LOCKFILE_ENTRY=20]="MISSING_LOCKFILE_ENTRY",e[e.WORKSPACE_NOT_FOUND=21]="WORKSPACE_NOT_FOUND",e[e.TOO_MANY_MATCHING_WORKSPACES=22]="TOO_MANY_MATCHING_WORKSPACES",e[e.CONSTRAINTS_MISSING_DEPENDENCY=23]="CONSTRAINTS_MISSING_DEPENDENCY",e[e.CONSTRAINTS_INCOMPATIBLE_DEPENDENCY=24]="CONSTRAINTS_INCOMPATIBLE_DEPENDENCY",e[e.CONSTRAINTS_EXTRANEOUS_DEPENDENCY=25]="CONSTRAINTS_EXTRANEOUS_DEPENDENCY",e[e.CONSTRAINTS_INVALID_DEPENDENCY=26]="CONSTRAINTS_INVALID_DEPENDENCY",e[e.CANT_SUGGEST_RESOLUTIONS=27]="CANT_SUGGEST_RESOLUTIONS",e[e.FROZEN_LOCKFILE_EXCEPTION=28]="FROZEN_LOCKFILE_EXCEPTION",e[e.CROSS_DRIVE_VIRTUAL_LOCAL=29]="CROSS_DRIVE_VIRTUAL_LOCAL",e[e.FETCH_FAILED=30]="FETCH_FAILED",e[e.DANGEROUS_NODE_MODULES=31]="DANGEROUS_NODE_MODULES",e[e.NODE_GYP_INJECTED=32]="NODE_GYP_INJECTED",e[e.AUTHENTICATION_NOT_FOUND=33]="AUTHENTICATION_NOT_FOUND",e[e.INVALID_CONFIGURATION_KEY=34]="INVALID_CONFIGURATION_KEY",e[e.NETWORK_ERROR=35]="NETWORK_ERROR",e[e.LIFECYCLE_SCRIPT=36]="LIFECYCLE_SCRIPT",e[e.CONSTRAINTS_MISSING_FIELD=37]="CONSTRAINTS_MISSING_FIELD",e[e.CONSTRAINTS_INCOMPATIBLE_FIELD=38]="CONSTRAINTS_INCOMPATIBLE_FIELD",e[e.CONSTRAINTS_EXTRANEOUS_FIELD=39]="CONSTRAINTS_EXTRANEOUS_FIELD",e[e.CONSTRAINTS_INVALID_FIELD=40]="CONSTRAINTS_INVALID_FIELD",e[e.AUTHENTICATION_INVALID=41]="AUTHENTICATION_INVALID",e[e.PROLOG_UNKNOWN_ERROR=42]="PROLOG_UNKNOWN_ERROR",e[e.PROLOG_SYNTAX_ERROR=43]="PROLOG_SYNTAX_ERROR",e[e.PROLOG_EXISTENCE_ERROR=44]="PROLOG_EXISTENCE_ERROR",e[e.STACK_OVERFLOW_RESOLUTION=45]="STACK_OVERFLOW_RESOLUTION",e[e.AUTOMERGE_FAILED_TO_PARSE=46]="AUTOMERGE_FAILED_TO_PARSE",e[e.AUTOMERGE_IMMUTABLE=47]="AUTOMERGE_IMMUTABLE",e[e.AUTOMERGE_SUCCESS=48]="AUTOMERGE_SUCCESS",e[e.AUTOMERGE_REQUIRED=49]="AUTOMERGE_REQUIRED",e[e.DEPRECATED_CLI_SETTINGS=50]="DEPRECATED_CLI_SETTINGS",e[e.PLUGIN_NAME_NOT_FOUND=51]="PLUGIN_NAME_NOT_FOUND",e[e.INVALID_PLUGIN_REFERENCE=52]="INVALID_PLUGIN_REFERENCE",e[e.CONSTRAINTS_AMBIGUITY=53]="CONSTRAINTS_AMBIGUITY",e[e.CACHE_OUTSIDE_PROJECT=54]="CACHE_OUTSIDE_PROJECT",e[e.IMMUTABLE_INSTALL=55]="IMMUTABLE_INSTALL",e[e.IMMUTABLE_CACHE=56]="IMMUTABLE_CACHE",e[e.INVALID_MANIFEST=57]="INVALID_MANIFEST",e[e.PACKAGE_PREPARATION_FAILED=58]="PACKAGE_PREPARATION_FAILED",e[e.INVALID_RANGE_PEER_DEPENDENCY=59]="INVALID_RANGE_PEER_DEPENDENCY",e[e.INCOMPATIBLE_PEER_DEPENDENCY=60]="INCOMPATIBLE_PEER_DEPENDENCY",e[e.DEPRECATED_PACKAGE=61]="DEPRECATED_PACKAGE",e[e.INCOMPATIBLE_OS=62]="INCOMPATIBLE_OS",e[e.INCOMPATIBLE_CPU=63]="INCOMPATIBLE_CPU",e[e.FROZEN_ARTIFACT_EXCEPTION=64]="FROZEN_ARTIFACT_EXCEPTION",e[e.TELEMETRY_NOTICE=65]="TELEMETRY_NOTICE",e[e.PATCH_HUNK_FAILED=66]="PATCH_HUNK_FAILED",e[e.INVALID_CONFIGURATION_VALUE=67]="INVALID_CONFIGURATION_VALUE",e[e.UNUSED_PACKAGE_EXTENSION=68]="UNUSED_PACKAGE_EXTENSION",e[e.REDUNDANT_PACKAGE_EXTENSION=69]="REDUNDANT_PACKAGE_EXTENSION",e[e.AUTO_NM_SUCCESS=70]="AUTO_NM_SUCCESS",e[e.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK=71]="NM_CANT_INSTALL_EXTERNAL_SOFT_LINK",e[e.NM_PRESERVE_SYMLINKS_REQUIRED=72]="NM_PRESERVE_SYMLINKS_REQUIRED",e[e.UPDATE_LOCKFILE_ONLY_SKIP_LINK=73]="UPDATE_LOCKFILE_ONLY_SKIP_LINK",e[e.NM_HARDLINKS_MODE_DOWNGRADED=74]="NM_HARDLINKS_MODE_DOWNGRADED",e[e.PROLOG_INSTANTIATION_ERROR=75]="PROLOG_INSTANTIATION_ERROR",e[e.INCOMPATIBLE_ARCHITECTURE=76]="INCOMPATIBLE_ARCHITECTURE",e[e.GHOST_ARCHITECTURE=77]="GHOST_ARCHITECTURE",e[e.RESOLUTION_MISMATCH=78]="RESOLUTION_MISMATCH",e[e.PROLOG_LIMIT_EXCEEDED=79]="PROLOG_LIMIT_EXCEEDED",e[e.NETWORK_DISABLED=80]="NETWORK_DISABLED",e[e.NETWORK_UNSAFE_HTTP=81]="NETWORK_UNSAFE_HTTP",e[e.RESOLUTION_FAILED=82]="RESOLUTION_FAILED",e[e.AUTOMERGE_GIT_ERROR=83]="AUTOMERGE_GIT_ERROR",e[e.CONSTRAINTS_CHECK_FAILED=84]="CONSTRAINTS_CHECK_FAILED",e[e.UPDATED_RESOLUTION_RECORD=85]="UPDATED_RESOLUTION_RECORD",e[e.EXPLAIN_PEER_DEPENDENCIES_CTA=86]="EXPLAIN_PEER_DEPENDENCIES_CTA",e[e.MIGRATION_SUCCESS=87]="MIGRATION_SUCCESS",e[e.VERSION_NOTICE=88]="VERSION_NOTICE",e[e.TIPS_NOTICE=89]="TIPS_NOTICE",e[e.OFFLINE_MODE_ENABLED=90]="OFFLINE_MODE_ENABLED"})(PQt||(ibe.MessageName=PQt={}));function XSs(e){return`YN${e.toString(10).padStart(4,"0")}`}function JSs(e){let t=Number(e.slice(2));if(typeof PQt[t]>"u")throw new Error(`Unknown message name: "${e}"`);return t}});var c9e=z((PZc,Vqr)=>{var USs="2.0.0",KSs=Number.MAX_SAFE_INTEGER||9007199254740991,jSs=16,zSs=250,qSs=["major","premajor","minor","preminor","patch","prepatch","prerelease"];Vqr.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:jSs,MAX_SAFE_BUILD_LENGTH:zSs,MAX_SAFE_INTEGER:KSs,RELEASE_TYPES:qSs,SEMVER_SPEC_VERSION:USs,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var l9e=z((OZc,Wqr)=>{var $Ss=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...e)=>console.error("SEMVER",...e):()=>{};Wqr.exports=$Ss});var sbe=z(($7,Pqr)=>{var{MAX_SAFE_COMPONENT_LENGTH:OQt,MAX_SAFE_BUILD_LENGTH:ews,MAX_LENGTH:tws}=c9e(),rws=l9e();$7=Pqr.exports={};var nws=$7.re=[],iws=$7.safeRe=[],Kg=$7.src=[],jg=$7.t={},sws=0,MQt="[a-zA-Z0-9-]",ows=[["\\s",1],["\\d",tws],[MQt,ews]],aws=e=>{for(let[t,r]of ows)e=e.split(`${t}*`).join(`${t}{0,${r}}`).split(`${t}+`).join(`${t}{1,${r}}`);return e},VI=(e,t,r)=>{let s=aws(t),a=sws++;rws(e,a,t),jg[e]=a,Kg[a]=t,nws[a]=new RegExp(t,r?"g":void 0),iws[a]=new RegExp(s,r?"g":void 0)};VI("NUMERICIDENTIFIER","0|[1-9]\\d*");VI("NUMERICIDENTIFIERLOOSE","\\d+");VI("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${MQt}*`);VI("MAINVERSION",`(${Kg[jg.NUMERICIDENTIFIER]})\\.(${Kg[jg.NUMERICIDENTIFIER]})\\.(${Kg[jg.NUMERICIDENTIFIER]})`);VI("MAINVERSIONLOOSE",`(${Kg[jg.NUMERICIDENTIFIERLOOSE]})\\.(${Kg[jg.NUMERICIDENTIFIERLOOSE]})\\.(${Kg[jg.NUMERICIDENTIFIERLOOSE]})`);VI("PRERELEASEIDENTIFIER",`(?:${Kg[jg.NUMERICIDENTIFIER]}|${Kg[jg.NONNUMERICIDENTIFIER]})`);VI("PRERELEASEIDENTIFIERLOOSE",`(?:${Kg[jg.NUMERICIDENTIFIERLOOSE]}|${Kg[jg.NONNUMERICIDENTIFIER]})`);VI("PRERELEASE",`(?:-(${Kg[jg.PRERELEASEIDENTIFIER]}(?:\\.${Kg[jg.PRERELEASEIDENTIFIER]})*))`);VI("PRERELEASELOOSE",`(?:-?(${Kg[jg.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${Kg[jg.PRERELEASEIDENTIFIERLOOSE]})*))`);VI("BUILDIDENTIFIER",`${MQt}+`);VI("BUILD",`(?:\\+(${Kg[jg.BUILDIDENTIFIER]}(?:\\.${Kg[jg.BUILDIDENTIFIER]})*))`);VI("FULLPLAIN",`v?${Kg[jg.MAINVERSION]}${Kg[jg.PRERELEASE]}?${Kg[jg.BUILD]}?`);VI("FULL",`^${Kg[jg.FULLPLAIN]}$`);VI("LOOSEPLAIN",`[v=\\s]*${Kg[jg.MAINVERSIONLOOSE]}${Kg[jg.PRERELEASELOOSE]}?${Kg[jg.BUILD]}?`);VI("LOOSE",`^${Kg[jg.LOOSEPLAIN]}$`);VI("GTLT","((?:<|>)?=?)");VI("XRANGEIDENTIFIERLOOSE",`${Kg[jg.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);VI("XRANGEIDENTIFIER",`${Kg[jg.NUMERICIDENTIFIER]}|x|X|\\*`);VI("XRANGEPLAIN",`[v=\\s]*(${Kg[jg.XRANGEIDENTIFIER]})(?:\\.(${Kg[jg.XRANGEIDENTIFIER]})(?:\\.(${Kg[jg.XRANGEIDENTIFIER]})(?:${Kg[jg.PRERELEASE]})?${Kg[jg.BUILD]}?)?)?`);VI("XRANGEPLAINLOOSE",`[v=\\s]*(${Kg[jg.XRANGEIDENTIFIERLOOSE]})(?:\\.(${Kg[jg.XRANGEIDENTIFIERLOOSE]})(?:\\.(${Kg[jg.XRANGEIDENTIFIERLOOSE]})(?:${Kg[jg.PRERELEASELOOSE]})?${Kg[jg.BUILD]}?)?)?`);VI("XRANGE",`^${Kg[jg.GTLT]}\\s*${Kg[jg.XRANGEPLAIN]}$`);VI("XRANGELOOSE",`^${Kg[jg.GTLT]}\\s*${Kg[jg.XRANGEPLAINLOOSE]}$`);VI("COERCEPLAIN",`(^|[^\\d])(\\d{1,${OQt}})(?:\\.(\\d{1,${OQt}}))?(?:\\.(\\d{1,${OQt}}))?`);VI("COERCE",`${Kg[jg.COERCEPLAIN]}(?:$|[^\\d])`);VI("COERCEFULL",Kg[jg.COERCEPLAIN]+`(?:${Kg[jg.PRERELEASE]})?(?:${Kg[jg.BUILD]})?(?:$|[^\\d])`);VI("COERCERTL",Kg[jg.COERCE],!0);VI("COERCERTLFULL",Kg[jg.COERCEFULL],!0);VI("LONETILDE","(?:~>?)");VI("TILDETRIM",`(\\s*)${Kg[jg.LONETILDE]}\\s+`,!0);$7.tildeTrimReplace="$1~";VI("TILDE",`^${Kg[jg.LONETILDE]}${Kg[jg.XRANGEPLAIN]}$`);VI("TILDELOOSE",`^${Kg[jg.LONETILDE]}${Kg[jg.XRANGEPLAINLOOSE]}$`);VI("LONECARET","(?:\\^)");VI("CARETTRIM",`(\\s*)${Kg[jg.LONECARET]}\\s+`,!0);$7.caretTrimReplace="$1^";VI("CARET",`^${Kg[jg.LONECARET]}${Kg[jg.XRANGEPLAIN]}$`);VI("CARETLOOSE",`^${Kg[jg.LONECARET]}${Kg[jg.XRANGEPLAINLOOSE]}$`);VI("COMPARATORLOOSE",`^${Kg[jg.GTLT]}\\s*(${Kg[jg.LOOSEPLAIN]})$|^$`);VI("COMPARATOR",`^${Kg[jg.GTLT]}\\s*(${Kg[jg.FULLPLAIN]})$|^$`);VI("COMPARATORTRIM",`(\\s*)${Kg[jg.GTLT]}\\s*(${Kg[jg.LOOSEPLAIN]}|${Kg[jg.XRANGEPLAIN]})`,!0);$7.comparatorTrimReplace="$1$2$3";VI("HYPHENRANGE",`^\\s*(${Kg[jg.XRANGEPLAIN]})\\s+-\\s+(${Kg[jg.XRANGEPLAIN]})\\s*$`);VI("HYPHENRANGELOOSE",`^\\s*(${Kg[jg.XRANGEPLAINLOOSE]})\\s+-\\s+(${Kg[jg.XRANGEPLAINLOOSE]})\\s*$`);VI("STAR","(<|>)?=?\\s*\\*");VI("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");VI("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var mrt=z((MZc,Oqr)=>{var cws=Object.freeze({loose:!0}),lws=Object.freeze({}),uws=e=>e?typeof e!="object"?cws:e:lws;Oqr.exports=uws});var QQt=z((QZc,Yqr)=>{var Mqr=/^[0-9]+$/,Qqr=(e,t)=>{let r=Mqr.test(e),s=Mqr.test(t);return r&&s&&(e=+e,t=+t),e===t?0:r&&!s?-1:s&&!r?1:eQqr(t,e);Yqr.exports={compareIdentifiers:Qqr,rcompareIdentifiers:gws}});var ik=z((YZc,Uqr)=>{var hrt=l9e(),{MAX_LENGTH:Hqr,MAX_SAFE_INTEGER:_rt}=c9e(),{safeRe:Xqr,t:Jqr}=sbe(),Aws=mrt(),{compareIdentifiers:obe}=QQt(),YQt=class e{constructor(t,r){if(r=Aws(r),t instanceof e){if(t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease)return t;t=t.version}else if(typeof t!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof t}".`);if(t.length>Hqr)throw new TypeError(`version is longer than ${Hqr} characters`);hrt("SemVer",t,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let s=t.trim().match(r.loose?Xqr[Jqr.LOOSE]:Xqr[Jqr.FULL]);if(!s)throw new TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+s[1],this.minor=+s[2],this.patch=+s[3],this.major>_rt||this.major<0)throw new TypeError("Invalid major version");if(this.minor>_rt||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>_rt||this.patch<0)throw new TypeError("Invalid patch version");s[4]?this.prerelease=s[4].split(".").map(a=>{if(/^[0-9]+$/.test(a)){let o=+a;if(o>=0&&o<_rt)return o}return a}):this.prerelease=[],this.build=s[5]?s[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(t){if(hrt("SemVer.compare",this.version,this.options,t),!(t instanceof e)){if(typeof t=="string"&&t===this.version)return 0;t=new e(t,this.options)}return t.version===this.version?0:this.compareMain(t)||this.comparePre(t)}compareMain(t){return t instanceof e||(t=new e(t,this.options)),obe(this.major,t.major)||obe(this.minor,t.minor)||obe(this.patch,t.patch)}comparePre(t){if(t instanceof e||(t=new e(t,this.options)),this.prerelease.length&&!t.prerelease.length)return-1;if(!this.prerelease.length&&t.prerelease.length)return 1;if(!this.prerelease.length&&!t.prerelease.length)return 0;let r=0;do{let s=this.prerelease[r],a=t.prerelease[r];if(hrt("prerelease compare",r,s,a),s===void 0&&a===void 0)return 0;if(a===void 0)return 1;if(s===void 0)return-1;if(s===a)continue;return obe(s,a)}while(++r)}compareBuild(t){t instanceof e||(t=new e(t,this.options));let r=0;do{let s=this.build[r],a=t.build[r];if(hrt("build compare",r,s,a),s===void 0&&a===void 0)return 0;if(a===void 0)return 1;if(s===void 0)return-1;if(s===a)continue;return obe(s,a)}while(++r)}inc(t,r,s){switch(t){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",r,s);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",r,s);break;case"prepatch":this.prerelease.length=0,this.inc("patch",r,s),this.inc("pre",r,s);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",r,s),this.inc("pre",r,s);break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{let a=Number(s)?1:0;if(!r&&s===!1)throw new Error("invalid increment argument: identifier is empty");if(this.prerelease.length===0)this.prerelease=[a];else{let o=this.prerelease.length;for(;--o>=0;)typeof this.prerelease[o]=="number"&&(this.prerelease[o]++,o=-2);if(o===-1){if(r===this.prerelease.join(".")&&s===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(a)}}if(r){let o=[r,a];s===!1&&(o=[r]),obe(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=o):this.prerelease=o}break}default:throw new Error(`invalid increment argument: ${t}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};Uqr.exports=YQt});var jge=z((HZc,jqr)=>{var Kqr=ik(),dws=(e,t,r=!1)=>{if(e instanceof Kqr)return e;try{return new Kqr(e,t)}catch(s){if(!r)return null;throw s}};jqr.exports=dws});var HQt=z((XZc,zqr)=>{var pws=jge(),fws=(e,t)=>{let r=pws(e,t);return r?r.version:null};zqr.exports=fws});var XQt=z((JZc,qqr)=>{var Iws=jge(),Cws=(e,t)=>{let r=Iws(e.trim().replace(/^[=v]+/,""),t);return r?r.version:null};qqr.exports=Cws});var t$r=z((UZc,e$r)=>{var $qr=ik(),mws=(e,t,r,s,a)=>{typeof r=="string"&&(a=s,s=r,r=void 0);try{return new $qr(e instanceof $qr?e.version:e,r).inc(t,s,a).version}catch{return null}};e$r.exports=mws});var i$r=z((KZc,n$r)=>{var r$r=jge(),hws=(e,t)=>{let r=r$r(e,null,!0),s=r$r(t,null,!0),a=r.compare(s);if(a===0)return null;let o=a>0,g=o?r:s,p=o?s:r,f=!!g.prerelease.length;if(!!p.prerelease.length&&!f)return!p.patch&&!p.minor?"major":g.patch?"patch":g.minor?"minor":"major";let y=f?"pre":"";return r.major!==s.major?y+"major":r.minor!==s.minor?y+"minor":r.patch!==s.patch?y+"patch":"prerelease"};n$r.exports=hws});var o$r=z((jZc,s$r)=>{var _ws=ik(),yws=(e,t)=>new _ws(e,t).major;s$r.exports=yws});var c$r=z((zZc,a$r)=>{var bws=ik(),Ews=(e,t)=>new bws(e,t).minor;a$r.exports=Ews});var u$r=z((qZc,l$r)=>{var Bws=ik(),vws=(e,t)=>new Bws(e,t).patch;l$r.exports=vws});var A$r=z(($Zc,g$r)=>{var Sws=jge(),wws=(e,t)=>{let r=Sws(e,t);return r&&r.prerelease.length?r.prerelease:null};g$r.exports=wws});var cO=z((eLc,p$r)=>{var d$r=ik(),Tws=(e,t,r)=>new d$r(e,r).compare(new d$r(t,r));p$r.exports=Tws});var I$r=z((tLc,f$r)=>{var Nws=cO(),Rws=(e,t,r)=>Nws(t,e,r);f$r.exports=Rws});var m$r=z((rLc,C$r)=>{var Dws=cO(),xws=(e,t)=>Dws(e,t,!0);C$r.exports=xws});var yrt=z((nLc,_$r)=>{var h$r=ik(),kws=(e,t,r)=>{let s=new h$r(e,r),a=new h$r(t,r);return s.compare(a)||s.compareBuild(a)};_$r.exports=kws});var b$r=z((iLc,y$r)=>{var Gws=yrt(),Fws=(e,t)=>e.sort((r,s)=>Gws(r,s,t));y$r.exports=Fws});var B$r=z((sLc,E$r)=>{var Zws=yrt(),Lws=(e,t)=>e.sort((r,s)=>Zws(s,r,t));E$r.exports=Lws});var u9e=z((oLc,v$r)=>{var Vws=cO(),Wws=(e,t,r)=>Vws(e,t,r)>0;v$r.exports=Wws});var brt=z((aLc,S$r)=>{var Pws=cO(),Ows=(e,t,r)=>Pws(e,t,r)<0;S$r.exports=Ows});var JQt=z((cLc,w$r)=>{var Mws=cO(),Qws=(e,t,r)=>Mws(e,t,r)===0;w$r.exports=Qws});var UQt=z((lLc,T$r)=>{var Yws=cO(),Hws=(e,t,r)=>Yws(e,t,r)!==0;T$r.exports=Hws});var Ert=z((uLc,N$r)=>{var Xws=cO(),Jws=(e,t,r)=>Xws(e,t,r)>=0;N$r.exports=Jws});var Brt=z((gLc,R$r)=>{var Uws=cO(),Kws=(e,t,r)=>Uws(e,t,r)<=0;R$r.exports=Kws});var KQt=z((ALc,D$r)=>{var jws=JQt(),zws=UQt(),qws=u9e(),$ws=Ert(),eTs=brt(),tTs=Brt(),rTs=(e,t,r,s)=>{switch(t){case"===":return typeof e=="object"&&(e=e.version),typeof r=="object"&&(r=r.version),e===r;case"!==":return typeof e=="object"&&(e=e.version),typeof r=="object"&&(r=r.version),e!==r;case"":case"=":case"==":return jws(e,r,s);case"!=":return zws(e,r,s);case">":return qws(e,r,s);case">=":return $ws(e,r,s);case"<":return eTs(e,r,s);case"<=":return tTs(e,r,s);default:throw new TypeError(`Invalid operator: ${t}`)}};D$r.exports=rTs});var k$r=z((dLc,x$r)=>{var nTs=ik(),iTs=jge(),{safeRe:vrt,t:Srt}=sbe(),sTs=(e,t)=>{if(e instanceof nTs)return e;if(typeof e=="number"&&(e=String(e)),typeof e!="string")return null;t=t||{};let r=null;if(!t.rtl)r=e.match(t.includePrerelease?vrt[Srt.COERCEFULL]:vrt[Srt.COERCE]);else{let f=t.includePrerelease?vrt[Srt.COERCERTLFULL]:vrt[Srt.COERCERTL],m;for(;(m=f.exec(e))&&(!r||r.index+r[0].length!==e.length);)(!r||m.index+m[0].length!==r.index+r[0].length)&&(r=m),f.lastIndex=m.index+m[1].length+m[2].length;f.lastIndex=-1}if(r===null)return null;let s=r[2],a=r[3]||"0",o=r[4]||"0",g=t.includePrerelease&&r[5]?`-${r[5]}`:"",p=t.includePrerelease&&r[6]?`+${r[6]}`:"";return iTs(`${s}.${a}.${o}${g}${p}`,t)};x$r.exports=sTs});var F$r=z((pLc,G$r)=>{var jQt=class{constructor(){this.max=1e3,this.map=new Map}get(t){let r=this.map.get(t);if(r!==void 0)return this.map.delete(t),this.map.set(t,r),r}delete(t){return this.map.delete(t)}set(t,r){if(!this.delete(t)&&r!==void 0){if(this.map.size>=this.max){let a=this.map.keys().next().value;this.delete(a)}this.map.set(t,r)}return this}};G$r.exports=jQt});var lO=z((fLc,W$r)=>{var oTs=/\s+/g,zQt=class e{constructor(t,r){if(r=cTs(r),t instanceof e)return t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease?t:new e(t.raw,r);if(t instanceof qQt)return this.raw=t.value,this.set=[[t]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=t.trim().replace(oTs," "),this.set=this.raw.split("||").map(s=>this.parseRange(s.trim())).filter(s=>s.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let s=this.set[0];if(this.set=this.set.filter(a=>!L$r(a[0])),this.set.length===0)this.set=[s];else if(this.set.length>1){for(let a of this.set)if(a.length===1&&fTs(a[0])){this.set=[a];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let t=0;t0&&(this.formatted+="||");let r=this.set[t];for(let s=0;s0&&(this.formatted+=" "),this.formatted+=r[s].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(t){let s=((this.options.includePrerelease&&dTs)|(this.options.loose&&pTs))+":"+t,a=Z$r.get(s);if(a)return a;let o=this.options.loose,g=o?NL[IF.HYPHENRANGELOOSE]:NL[IF.HYPHENRANGE];t=t.replace(g,vTs(this.options.includePrerelease)),KE("hyphen replace",t),t=t.replace(NL[IF.COMPARATORTRIM],uTs),KE("comparator trim",t),t=t.replace(NL[IF.TILDETRIM],gTs),KE("tilde trim",t),t=t.replace(NL[IF.CARETTRIM],ATs),KE("caret trim",t);let p=t.split(" ").map(B=>ITs(B,this.options)).join(" ").split(/\s+/).map(B=>BTs(B,this.options));o&&(p=p.filter(B=>(KE("loose invalid filter",B,this.options),!!B.match(NL[IF.COMPARATORLOOSE])))),KE("range list",p);let f=new Map,m=p.map(B=>new qQt(B,this.options));for(let B of m){if(L$r(B))return[B];f.set(B.value,B)}f.size>1&&f.has("")&&f.delete("");let y=[...f.values()];return Z$r.set(s,y),y}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Range is required");return this.set.some(s=>V$r(s,r)&&t.set.some(a=>V$r(a,r)&&s.every(o=>a.every(g=>o.intersects(g,r)))))}test(t){if(!t)return!1;if(typeof t=="string")try{t=new lTs(t,this.options)}catch{return!1}for(let r=0;re.value==="<0.0.0-0",fTs=e=>e.value==="",V$r=(e,t)=>{let r=!0,s=e.slice(),a=s.pop();for(;r&&s.length;)r=s.every(o=>a.intersects(o,t)),a=s.pop();return r},ITs=(e,t)=>(KE("comp",e,t),e=hTs(e,t),KE("caret",e),e=CTs(e,t),KE("tildes",e),e=yTs(e,t),KE("xrange",e),e=ETs(e,t),KE("stars",e),e),CF=e=>!e||e.toLowerCase()==="x"||e==="*",CTs=(e,t)=>e.trim().split(/\s+/).map(r=>mTs(r,t)).join(" "),mTs=(e,t)=>{let r=t.loose?NL[IF.TILDELOOSE]:NL[IF.TILDE];return e.replace(r,(s,a,o,g,p)=>{KE("tilde",e,s,a,o,g,p);let f;return CF(a)?f="":CF(o)?f=`>=${a}.0.0 <${+a+1}.0.0-0`:CF(g)?f=`>=${a}.${o}.0 <${a}.${+o+1}.0-0`:p?(KE("replaceTilde pr",p),f=`>=${a}.${o}.${g}-${p} <${a}.${+o+1}.0-0`):f=`>=${a}.${o}.${g} <${a}.${+o+1}.0-0`,KE("tilde return",f),f})},hTs=(e,t)=>e.trim().split(/\s+/).map(r=>_Ts(r,t)).join(" "),_Ts=(e,t)=>{KE("caret",e,t);let r=t.loose?NL[IF.CARETLOOSE]:NL[IF.CARET],s=t.includePrerelease?"-0":"";return e.replace(r,(a,o,g,p,f)=>{KE("caret",e,a,o,g,p,f);let m;return CF(o)?m="":CF(g)?m=`>=${o}.0.0${s} <${+o+1}.0.0-0`:CF(p)?o==="0"?m=`>=${o}.${g}.0${s} <${o}.${+g+1}.0-0`:m=`>=${o}.${g}.0${s} <${+o+1}.0.0-0`:f?(KE("replaceCaret pr",f),o==="0"?g==="0"?m=`>=${o}.${g}.${p}-${f} <${o}.${g}.${+p+1}-0`:m=`>=${o}.${g}.${p}-${f} <${o}.${+g+1}.0-0`:m=`>=${o}.${g}.${p}-${f} <${+o+1}.0.0-0`):(KE("no pr"),o==="0"?g==="0"?m=`>=${o}.${g}.${p}${s} <${o}.${g}.${+p+1}-0`:m=`>=${o}.${g}.${p}${s} <${o}.${+g+1}.0-0`:m=`>=${o}.${g}.${p} <${+o+1}.0.0-0`),KE("caret return",m),m})},yTs=(e,t)=>(KE("replaceXRanges",e,t),e.split(/\s+/).map(r=>bTs(r,t)).join(" ")),bTs=(e,t)=>{e=e.trim();let r=t.loose?NL[IF.XRANGELOOSE]:NL[IF.XRANGE];return e.replace(r,(s,a,o,g,p,f)=>{KE("xRange",e,s,a,o,g,p,f);let m=CF(o),y=m||CF(g),B=y||CF(p),v=B;return a==="="&&v&&(a=""),f=t.includePrerelease?"-0":"",m?a===">"||a==="<"?s="<0.0.0-0":s="*":a&&v?(y&&(g=0),p=0,a===">"?(a=">=",y?(o=+o+1,g=0,p=0):(g=+g+1,p=0)):a==="<="&&(a="<",y?o=+o+1:g=+g+1),a==="<"&&(f="-0"),s=`${a+o}.${g}.${p}${f}`):y?s=`>=${o}.0.0${f} <${+o+1}.0.0-0`:B&&(s=`>=${o}.${g}.0${f} <${o}.${+g+1}.0-0`),KE("xRange return",s),s})},ETs=(e,t)=>(KE("replaceStars",e,t),e.trim().replace(NL[IF.STAR],"")),BTs=(e,t)=>(KE("replaceGTE0",e,t),e.trim().replace(NL[t.includePrerelease?IF.GTE0PRE:IF.GTE0],"")),vTs=e=>(t,r,s,a,o,g,p,f,m,y,B,v)=>(CF(s)?r="":CF(a)?r=`>=${s}.0.0${e?"-0":""}`:CF(o)?r=`>=${s}.${a}.0${e?"-0":""}`:g?r=`>=${r}`:r=`>=${r}${e?"-0":""}`,CF(m)?f="":CF(y)?f=`<${+m+1}.0.0-0`:CF(B)?f=`<${m}.${+y+1}.0-0`:v?f=`<=${m}.${y}.${B}-${v}`:e?f=`<${m}.${y}.${+B+1}-0`:f=`<=${f}`,`${r} ${f}`.trim()),STs=(e,t,r)=>{for(let s=0;s0){let a=e[s].semver;if(a.major===t.major&&a.minor===t.minor&&a.patch===t.patch)return!0}return!1}return!0}});var g9e=z((ILc,H$r)=>{var A9e=Symbol("SemVer ANY"),tYt=class e{static get ANY(){return A9e}constructor(t,r){if(r=P$r(r),t instanceof e){if(t.loose===!!r.loose)return t;t=t.value}t=t.trim().split(/\s+/).join(" "),eYt("comparator",t,r),this.options=r,this.loose=!!r.loose,this.parse(t),this.semver===A9e?this.value="":this.value=this.operator+this.semver.version,eYt("comp",this)}parse(t){let r=this.options.loose?O$r[M$r.COMPARATORLOOSE]:O$r[M$r.COMPARATOR],s=t.match(r);if(!s)throw new TypeError(`Invalid comparator: ${t}`);this.operator=s[1]!==void 0?s[1]:"",this.operator==="="&&(this.operator=""),s[2]?this.semver=new Q$r(s[2],this.options.loose):this.semver=A9e}toString(){return this.value}test(t){if(eYt("Comparator.test",t,this.options.loose),this.semver===A9e||t===A9e)return!0;if(typeof t=="string")try{t=new Q$r(t,this.options)}catch{return!1}return $Qt(t,this.operator,this.semver,this.options)}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new Y$r(t.value,r).test(this.value):t.operator===""?t.value===""?!0:new Y$r(this.value,r).test(t.semver):(r=P$r(r),r.includePrerelease&&(this.value==="<0.0.0-0"||t.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||t.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&t.operator.startsWith(">")||this.operator.startsWith("<")&&t.operator.startsWith("<")||this.semver.version===t.semver.version&&this.operator.includes("=")&&t.operator.includes("=")||$Qt(this.semver,"<",t.semver,r)&&this.operator.startsWith(">")&&t.operator.startsWith("<")||$Qt(this.semver,">",t.semver,r)&&this.operator.startsWith("<")&&t.operator.startsWith(">")))}};H$r.exports=tYt;var P$r=mrt(),{safeRe:O$r,t:M$r}=sbe(),$Qt=KQt(),eYt=l9e(),Q$r=ik(),Y$r=lO()});var d9e=z((CLc,X$r)=>{var wTs=lO(),TTs=(e,t,r)=>{try{t=new wTs(t,r)}catch{return!1}return t.test(e)};X$r.exports=TTs});var U$r=z((mLc,J$r)=>{var NTs=lO(),RTs=(e,t)=>new NTs(e,t).set.map(r=>r.map(s=>s.value).join(" ").trim().split(" "));J$r.exports=RTs});var j$r=z((hLc,K$r)=>{var DTs=ik(),xTs=lO(),kTs=(e,t,r)=>{let s=null,a=null,o=null;try{o=new xTs(t,r)}catch{return null}return e.forEach(g=>{o.test(g)&&(!s||a.compare(g)===-1)&&(s=g,a=new DTs(s,r))}),s};K$r.exports=kTs});var q$r=z((_Lc,z$r)=>{var GTs=ik(),FTs=lO(),ZTs=(e,t,r)=>{let s=null,a=null,o=null;try{o=new FTs(t,r)}catch{return null}return e.forEach(g=>{o.test(g)&&(!s||a.compare(g)===1)&&(s=g,a=new GTs(s,r))}),s};z$r.exports=ZTs});var ten=z((yLc,een)=>{var rYt=ik(),LTs=lO(),$$r=u9e(),VTs=(e,t)=>{e=new LTs(e,t);let r=new rYt("0.0.0");if(e.test(r)||(r=new rYt("0.0.0-0"),e.test(r)))return r;r=null;for(let s=0;s{let p=new rYt(g.semver.version);switch(g.operator){case">":p.prerelease.length===0?p.patch++:p.prerelease.push(0),p.raw=p.format();case"":case">=":(!o||$$r(p,o))&&(o=p);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${g.operator}`)}}),o&&(!r||$$r(r,o))&&(r=o)}return r&&e.test(r)?r:null};een.exports=VTs});var nen=z((bLc,ren)=>{var WTs=lO(),PTs=(e,t)=>{try{return new WTs(e,t).range||"*"}catch{return null}};ren.exports=PTs});var wrt=z((ELc,aen)=>{var OTs=ik(),oen=g9e(),{ANY:MTs}=oen,QTs=lO(),YTs=d9e(),ien=u9e(),sen=brt(),HTs=Brt(),XTs=Ert(),JTs=(e,t,r,s)=>{e=new OTs(e,s),t=new QTs(t,s);let a,o,g,p,f;switch(r){case">":a=ien,o=HTs,g=sen,p=">",f=">=";break;case"<":a=sen,o=XTs,g=ien,p="<",f="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(YTs(e,t,s))return!1;for(let m=0;m{G.semver===MTs&&(G=new oen(">=0.0.0")),B=B||G,v=v||G,a(G.semver,B.semver,s)?B=G:g(G.semver,v.semver,s)&&(v=G)}),B.operator===p||B.operator===f||(!v.operator||v.operator===p)&&o(e,v.semver))return!1;if(v.operator===f&&g(e,v.semver))return!1}return!0};aen.exports=JTs});var len=z((BLc,cen)=>{var UTs=wrt(),KTs=(e,t,r)=>UTs(e,t,">",r);cen.exports=KTs});var gen=z((vLc,uen)=>{var jTs=wrt(),zTs=(e,t,r)=>jTs(e,t,"<",r);uen.exports=zTs});var pen=z((SLc,den)=>{var Aen=lO(),qTs=(e,t,r)=>(e=new Aen(e,r),t=new Aen(t,r),e.intersects(t,r));den.exports=qTs});var Ien=z((wLc,fen)=>{var $Ts=d9e(),eNs=cO();fen.exports=(e,t,r)=>{let s=[],a=null,o=null,g=e.sort((y,B)=>eNs(y,B,r));for(let y of g)$Ts(y,t,r)?(o=y,a||(a=y)):(o&&s.push([a,o]),o=null,a=null);a&&s.push([a,null]);let p=[];for(let[y,B]of s)y===B?p.push(y):!B&&y===g[0]?p.push("*"):B?y===g[0]?p.push(`<=${B}`):p.push(`${y} - ${B}`):p.push(`>=${y}`);let f=p.join(" || "),m=typeof t.raw=="string"?t.raw:String(t);return f.length{var Cen=lO(),iYt=g9e(),{ANY:nYt}=iYt,p9e=d9e(),sYt=cO(),tNs=(e,t,r={})=>{if(e===t)return!0;e=new Cen(e,r),t=new Cen(t,r);let s=!1;e:for(let a of e.set){for(let o of t.set){let g=nNs(a,o,r);if(s=s||g!==null,g)continue e}if(s)return!1}return!0},rNs=[new iYt(">=0.0.0-0")],men=[new iYt(">=0.0.0")],nNs=(e,t,r)=>{if(e===t)return!0;if(e.length===1&&e[0].semver===nYt){if(t.length===1&&t[0].semver===nYt)return!0;r.includePrerelease?e=rNs:e=men}if(t.length===1&&t[0].semver===nYt){if(r.includePrerelease)return!0;t=men}let s=new Set,a,o;for(let G of e)G.operator===">"||G.operator===">="?a=hen(a,G,r):G.operator==="<"||G.operator==="<="?o=_en(o,G,r):s.add(G.semver);if(s.size>1)return null;let g;if(a&&o){if(g=sYt(a.semver,o.semver,r),g>0)return null;if(g===0&&(a.operator!==">="||o.operator!=="<="))return null}for(let G of s){if(a&&!p9e(G,String(a),r)||o&&!p9e(G,String(o),r))return null;for(let T of t)if(!p9e(G,String(T),r))return!1;return!0}let p,f,m,y,B=o&&!r.includePrerelease&&o.semver.prerelease.length?o.semver:!1,v=a&&!r.includePrerelease&&a.semver.prerelease.length?a.semver:!1;B&&B.prerelease.length===1&&o.operator==="<"&&B.prerelease[0]===0&&(B=!1);for(let G of t){if(y=y||G.operator===">"||G.operator===">=",m=m||G.operator==="<"||G.operator==="<=",a){if(v&&G.semver.prerelease&&G.semver.prerelease.length&&G.semver.major===v.major&&G.semver.minor===v.minor&&G.semver.patch===v.patch&&(v=!1),G.operator===">"||G.operator===">="){if(p=hen(a,G,r),p===G&&p!==a)return!1}else if(a.operator===">="&&!p9e(a.semver,String(G),r))return!1}if(o){if(B&&G.semver.prerelease&&G.semver.prerelease.length&&G.semver.major===B.major&&G.semver.minor===B.minor&&G.semver.patch===B.patch&&(B=!1),G.operator==="<"||G.operator==="<="){if(f=_en(o,G,r),f===G&&f!==o)return!1}else if(o.operator==="<="&&!p9e(o.semver,String(G),r))return!1}if(!G.operator&&(o||a)&&g!==0)return!1}return!(a&&m&&!o&&g!==0||o&&y&&!a&&g!==0||v||B)},hen=(e,t,r)=>{if(!e)return t;let s=sYt(e.semver,t.semver,r);return s>0?e:s<0||t.operator===">"&&e.operator===">="?t:e},_en=(e,t,r)=>{if(!e)return t;let s=sYt(e.semver,t.semver,r);return s<0?e:s>0||t.operator==="<"&&e.operator==="<="?t:e};yen.exports=tNs});var Lh=z((NLc,ven)=>{var oYt=sbe(),Een=c9e(),iNs=ik(),Ben=QQt(),sNs=jge(),oNs=HQt(),aNs=XQt(),cNs=t$r(),lNs=i$r(),uNs=o$r(),gNs=c$r(),ANs=u$r(),dNs=A$r(),pNs=cO(),fNs=I$r(),INs=m$r(),CNs=yrt(),mNs=b$r(),hNs=B$r(),_Ns=u9e(),yNs=brt(),bNs=JQt(),ENs=UQt(),BNs=Ert(),vNs=Brt(),SNs=KQt(),wNs=k$r(),TNs=g9e(),NNs=lO(),RNs=d9e(),DNs=U$r(),xNs=j$r(),kNs=q$r(),GNs=ten(),FNs=nen(),ZNs=wrt(),LNs=len(),VNs=gen(),WNs=pen(),PNs=Ien(),ONs=ben();ven.exports={parse:sNs,valid:oNs,clean:aNs,inc:cNs,diff:lNs,major:uNs,minor:gNs,patch:ANs,prerelease:dNs,compare:pNs,rcompare:fNs,compareLoose:INs,compareBuild:CNs,sort:mNs,rsort:hNs,gt:_Ns,lt:yNs,eq:bNs,neq:ENs,gte:BNs,lte:vNs,cmp:SNs,coerce:wNs,Comparator:TNs,Range:NNs,satisfies:RNs,toComparators:DNs,maxSatisfying:xNs,minSatisfying:kNs,minVersion:GNs,validRange:FNs,outside:ZNs,gtr:LNs,ltr:VNs,intersects:WNs,simplifyRange:PNs,subset:ONs,SemVer:iNs,re:oYt.re,src:oYt.src,tokens:oYt.t,SEMVER_SPEC_VERSION:Een.SEMVER_SPEC_VERSION,RELEASE_TYPES:Een.RELEASE_TYPES,compareIdentifiers:Ben.compareIdentifiers,rcompareIdentifiers:Ben.rcompareIdentifiers}});var wen=z((RLc,Sen)=>{"use strict";function MNs(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function zge(e,t,r,s){this.message=e,this.expected=t,this.found=r,this.location=s,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,zge)}MNs(zge,Error);zge.buildMessage=function(e,t){var r={literal:function(m){return'"'+a(m.text)+'"'},class:function(m){var y="",B;for(B=0;B0){for(B=1,v=1;B{switch(vi[1]){case"|":return ga|vi[3];case"&":return ga&vi[3];case"^":return ga^vi[3]}},Qs)},v="!",G=Ar("!",!1),T=function(Qs){return!Qs},O="(",X=Ar("(",!1),U=")",le=Ar(")",!1),ae=function(Qs){return Qs},ge=/^[^ \t\n\r()!|&\^]/,fe=or([" "," ",` +`),(0,NSs.parse)(e)}var xSs=/^(#.*(\r?\n))*?#\s+yarn\s+lockfile\s+v1\r?\n/i;function kSs(e){if(xSs.test(e))return DSs(e);let t=(0,Eqr.safeLoad)(e,{schema:Eqr.FAILSAFE_SCHEMA,json:!0});if(t==null)return{};if(typeof t!="object")throw new Error(`Expected an indexed object, got a ${typeof t} instead. Does your file follow Yaml's rules?`);if(Array.isArray(t))throw new Error("Expected an indexed object, got an array instead. Does your file follow Yaml's rules?");return t}function GSs(e){return kSs(e)}});var uO=z(tm=>{"use strict";Object.defineProperty(tm,"__esModule",{value:!0});tm.stringifySyml=tm.parseSyml=tm.stringifyResolution=tm.parseResolution=tm.stringifyValueArgument=tm.stringifyShellLine=tm.stringifyRedirectArgument=tm.stringifyEnvSegment=tm.stringifyCommandLineThen=tm.stringifyCommandLine=tm.stringifyCommandChainThen=tm.stringifyCommandChain=tm.stringifyCommand=tm.stringifyArithmeticExpression=tm.stringifyArgumentSegment=tm.stringifyArgument=tm.stringifyShell=tm.parseShell=void 0;var TL=wjr();Object.defineProperty(tm,"parseShell",{enumerable:!0,get:function(){return TL.parseShell}});Object.defineProperty(tm,"stringifyShell",{enumerable:!0,get:function(){return TL.stringifyShell}});Object.defineProperty(tm,"stringifyArgument",{enumerable:!0,get:function(){return TL.stringifyArgument}});Object.defineProperty(tm,"stringifyArgumentSegment",{enumerable:!0,get:function(){return TL.stringifyArgumentSegment}});Object.defineProperty(tm,"stringifyArithmeticExpression",{enumerable:!0,get:function(){return TL.stringifyArithmeticExpression}});Object.defineProperty(tm,"stringifyCommand",{enumerable:!0,get:function(){return TL.stringifyCommand}});Object.defineProperty(tm,"stringifyCommandChain",{enumerable:!0,get:function(){return TL.stringifyCommandChain}});Object.defineProperty(tm,"stringifyCommandChainThen",{enumerable:!0,get:function(){return TL.stringifyCommandChainThen}});Object.defineProperty(tm,"stringifyCommandLine",{enumerable:!0,get:function(){return TL.stringifyCommandLine}});Object.defineProperty(tm,"stringifyCommandLineThen",{enumerable:!0,get:function(){return TL.stringifyCommandLineThen}});Object.defineProperty(tm,"stringifyEnvSegment",{enumerable:!0,get:function(){return TL.stringifyEnvSegment}});Object.defineProperty(tm,"stringifyRedirectArgument",{enumerable:!0,get:function(){return TL.stringifyRedirectArgument}});Object.defineProperty(tm,"stringifyShellLine",{enumerable:!0,get:function(){return TL.stringifyShellLine}});Object.defineProperty(tm,"stringifyValueArgument",{enumerable:!0,get:function(){return TL.stringifyValueArgument}});var Nqr=Rjr();Object.defineProperty(tm,"parseResolution",{enumerable:!0,get:function(){return Nqr.parseResolution}});Object.defineProperty(tm,"stringifyResolution",{enumerable:!0,get:function(){return Nqr.stringifyResolution}});var Rqr=Tqr();Object.defineProperty(tm,"parseSyml",{enumerable:!0,get:function(){return Rqr.parseSyml}});Object.defineProperty(tm,"stringifySyml",{enumerable:!0,get:function(){return Rqr.stringifySyml}})});var xqr=z((UZc,L5t)=>{"use strict";var FSs=e=>{let t=!1,r=!1,s=!1;for(let a=0;a{if(!(typeof e=="string"||Array.isArray(e)))throw new TypeError("Expected the input to be `string | string[]`");t=Object.assign({pascalCase:!1},t);let r=a=>t.pascalCase?a.charAt(0).toUpperCase()+a.slice(1):a;return Array.isArray(e)?e=e.map(a=>a.trim()).filter(a=>a.length).join("-"):e=e.trim(),e.length===0?"":e.length===1?t.pascalCase?e.toUpperCase():e.toLowerCase():(e!==e.toLowerCase()&&(e=FSs(e)),e=e.replace(/^[_.\- ]+/,"").toLowerCase().replace(/[_.\- ]+(\w|$)/g,(a,o)=>o.toUpperCase()).replace(/\d+(\w|$)/g,a=>a.toUpperCase()),r(e))};L5t.exports=Dqr;L5t.exports.default=Dqr});var kqr=z((KZc,ZSs)=>{ZSs.exports=[{name:"Agola CI",constant:"AGOLA",env:"AGOLA_GIT_REF",pr:"AGOLA_PULL_REQUEST_ID"},{name:"Appcircle",constant:"APPCIRCLE",env:"AC_APPCIRCLE"},{name:"AppVeyor",constant:"APPVEYOR",env:"APPVEYOR",pr:"APPVEYOR_PULL_REQUEST_NUMBER"},{name:"AWS CodeBuild",constant:"CODEBUILD",env:"CODEBUILD_BUILD_ARN"},{name:"Azure Pipelines",constant:"AZURE_PIPELINES",env:"TF_BUILD",pr:{BUILD_REASON:"PullRequest"}},{name:"Bamboo",constant:"BAMBOO",env:"bamboo_planKey"},{name:"Bitbucket Pipelines",constant:"BITBUCKET",env:"BITBUCKET_COMMIT",pr:"BITBUCKET_PR_ID"},{name:"Bitrise",constant:"BITRISE",env:"BITRISE_IO",pr:"BITRISE_PULL_REQUEST"},{name:"Buddy",constant:"BUDDY",env:"BUDDY_WORKSPACE_ID",pr:"BUDDY_EXECUTION_PULL_REQUEST_ID"},{name:"Buildkite",constant:"BUILDKITE",env:"BUILDKITE",pr:{env:"BUILDKITE_PULL_REQUEST",ne:"false"}},{name:"CircleCI",constant:"CIRCLE",env:"CIRCLECI",pr:"CIRCLE_PULL_REQUEST"},{name:"Cirrus CI",constant:"CIRRUS",env:"CIRRUS_CI",pr:"CIRRUS_PR"},{name:"Codefresh",constant:"CODEFRESH",env:"CF_BUILD_ID",pr:{any:["CF_PULL_REQUEST_NUMBER","CF_PULL_REQUEST_ID"]}},{name:"Codemagic",constant:"CODEMAGIC",env:"CM_BUILD_ID",pr:"CM_PULL_REQUEST"},{name:"Codeship",constant:"CODESHIP",env:{CI_NAME:"codeship"}},{name:"Drone",constant:"DRONE",env:"DRONE",pr:{DRONE_BUILD_EVENT:"pull_request"}},{name:"dsari",constant:"DSARI",env:"DSARI"},{name:"Earthly",constant:"EARTHLY",env:"EARTHLY_CI"},{name:"Expo Application Services",constant:"EAS",env:"EAS_BUILD"},{name:"Gerrit",constant:"GERRIT",env:"GERRIT_PROJECT"},{name:"Gitea Actions",constant:"GITEA_ACTIONS",env:"GITEA_ACTIONS"},{name:"GitHub Actions",constant:"GITHUB_ACTIONS",env:"GITHUB_ACTIONS",pr:{GITHUB_EVENT_NAME:"pull_request"}},{name:"GitLab CI",constant:"GITLAB",env:"GITLAB_CI",pr:"CI_MERGE_REQUEST_ID"},{name:"GoCD",constant:"GOCD",env:"GO_PIPELINE_LABEL"},{name:"Google Cloud Build",constant:"GOOGLE_CLOUD_BUILD",env:"BUILDER_OUTPUT"},{name:"Harness CI",constant:"HARNESS",env:"HARNESS_BUILD_ID"},{name:"Heroku",constant:"HEROKU",env:{env:"NODE",includes:"/app/.heroku/node/bin/node"}},{name:"Hudson",constant:"HUDSON",env:"HUDSON_URL"},{name:"Jenkins",constant:"JENKINS",env:["JENKINS_URL","BUILD_ID"],pr:{any:["ghprbPullId","CHANGE_ID"]}},{name:"LayerCI",constant:"LAYERCI",env:"LAYERCI",pr:"LAYERCI_PULL_REQUEST"},{name:"Magnum CI",constant:"MAGNUM",env:"MAGNUM"},{name:"Netlify CI",constant:"NETLIFY",env:"NETLIFY",pr:{env:"PULL_REQUEST",ne:"false"}},{name:"Nevercode",constant:"NEVERCODE",env:"NEVERCODE",pr:{env:"NEVERCODE_PULL_REQUEST",ne:"false"}},{name:"Prow",constant:"PROW",env:"PROW_JOB_ID"},{name:"ReleaseHub",constant:"RELEASEHUB",env:"RELEASE_BUILD_ID"},{name:"Render",constant:"RENDER",env:"RENDER",pr:{IS_PULL_REQUEST:"true"}},{name:"Sail CI",constant:"SAIL",env:"SAILCI",pr:"SAIL_PULL_REQUEST_NUMBER"},{name:"Screwdriver",constant:"SCREWDRIVER",env:"SCREWDRIVER",pr:{env:"SD_PULL_REQUEST",ne:"false"}},{name:"Semaphore",constant:"SEMAPHORE",env:"SEMAPHORE",pr:"PULL_REQUEST_NUMBER"},{name:"Sourcehut",constant:"SOURCEHUT",env:{CI_NAME:"sourcehut"}},{name:"Strider CD",constant:"STRIDER",env:"STRIDER"},{name:"TaskCluster",constant:"TASKCLUSTER",env:["TASK_ID","RUN_ID"]},{name:"TeamCity",constant:"TEAMCITY",env:"TEAMCITY_VERSION"},{name:"Travis CI",constant:"TRAVIS",env:"TRAVIS",pr:{env:"TRAVIS_PULL_REQUEST",ne:"false"}},{name:"Vela",constant:"VELA",env:"VELA",pr:{VELA_PULL_REQUEST:"1"}},{name:"Vercel",constant:"VERCEL",env:{any:["NOW_BUILDER","VERCEL"]},pr:"VERCEL_GIT_PULL_REQUEST_ID"},{name:"Visual Studio App Center",constant:"APPCENTER",env:"APPCENTER_BUILD_ID"},{name:"Woodpecker",constant:"WOODPECKER",env:{CI:"woodpecker"},pr:{CI_BUILD_EVENT:"pull_request"}},{name:"Xcode Cloud",constant:"XCODE_CLOUD",env:"CI_XCODE_PROJECT",pr:"CI_PULL_REQUEST_NUMBER"},{name:"Xcode Server",constant:"XCODE_SERVER",env:"XCS"}]});var nAe=z(AW=>{"use strict";var Fqr=kqr(),RT=process.env;Object.defineProperty(AW,"_vendors",{value:Fqr.map(function(e){return e.constant})});AW.name=null;AW.isPR=null;Fqr.forEach(function(e){let r=(Array.isArray(e.env)?e.env:[e.env]).every(function(s){return Gqr(s)});if(AW[e.constant]=r,!!r)switch(AW.name=e.name,typeof e.pr){case"string":AW.isPR=!!RT[e.pr];break;case"object":"env"in e.pr?AW.isPR=e.pr.env in RT&&RT[e.pr.env]!==e.pr.ne:"any"in e.pr?AW.isPR=e.pr.any.some(function(s){return!!RT[s]}):AW.isPR=Gqr(e.pr);break;default:AW.isPR=null}});AW.isCI=!!(RT.CI!=="false"&&(RT.BUILD_ID||RT.BUILD_NUMBER||RT.CI||RT.CI_APP_ID||RT.CI_BUILD_ID||RT.CI_BUILD_NUMBER||RT.CI_NAME||RT.CONTINUOUS_INTEGRATION||RT.RUN_ID||AW.name));function Gqr(e){return typeof e=="string"?!!RT[e]:"env"in e?RT[e.env]&&RT[e.env].includes(e.includes):"any"in e?e.any.some(function(t){return!!RT[t]}):Object.keys(e).every(function(t){return RT[t]===e[t]})}});var Zqr=z((zZc,LSs)=>{LSs.exports={name:"dotenv",version:"16.4.5",description:"Loads environment variables from .env file",main:"lib/main.js",types:"lib/main.d.ts",exports:{".":{types:"./lib/main.d.ts",require:"./lib/main.js",default:"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},scripts:{"dts-check":"tsc --project tests/types/tsconfig.json",lint:"standard","lint-readme":"standard-markdown",pretest:"npm run lint && npm run dts-check",test:"tap tests/*.js --100 -Rspec","test:coverage":"tap --coverage-report=lcov",prerelease:"npm test",release:"standard-version"},repository:{type:"git",url:"git://github.com/motdotla/dotenv.git"},funding:"https://dotenvx.com",keywords:["dotenv","env",".env","environment","variables","config","settings"],readmeFilename:"README.md",license:"BSD-2-Clause",devDependencies:{"@definitelytyped/dtslint":"^0.0.133","@types/node":"^18.11.3",decache:"^4.6.1",sinon:"^14.0.1",standard:"^17.0.0","standard-markdown":"^7.1.0","standard-version":"^9.5.0",tap:"^16.3.0",tar:"^6.1.11",typescript:"^4.8.4"},engines:{node:">=12"},browser:{fs:!1}}});var Pqr=z((qZc,ij)=>{var V5t=xt("fs"),W5t=xt("path"),VSs=xt("os"),WSs=xt("crypto"),PSs=Zqr(),P5t=PSs.version,OSs=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function QSs(e){let t={},r=e.toString();r=r.replace(/\r\n?/mg,` +`);let s;for(;(s=OSs.exec(r))!=null;){let a=s[1],o=s[2]||"";o=o.trim();let g=o[0];o=o.replace(/^(['"`])([\s\S]*)\1$/mg,"$2"),g==='"'&&(o=o.replace(/\\n/g,` +`),o=o.replace(/\\r/g,"\r")),t[a]=o}return t}function MSs(e){let t=Wqr(e),r=DT.configDotenv({path:t});if(!r.parsed){let g=new Error(`MISSING_DATA: Cannot parse ${t} for an unknown reason`);throw g.code="MISSING_DATA",g}let s=Vqr(e).split(","),a=s.length,o;for(let g=0;g=a)throw p}return DT.parse(o)}function HSs(e){console.log(`[dotenv@${P5t}][INFO] ${e}`)}function YSs(e){console.log(`[dotenv@${P5t}][WARN] ${e}`)}function hrt(e){console.log(`[dotenv@${P5t}][DEBUG] ${e}`)}function Vqr(e){return e&&e.DOTENV_KEY&&e.DOTENV_KEY.length>0?e.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function XSs(e,t){let r;try{r=new URL(t)}catch(p){if(p.code==="ERR_INVALID_URL"){let f=new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw f.code="INVALID_DOTENV_KEY",f}throw p}let s=r.password;if(!s){let p=new Error("INVALID_DOTENV_KEY: Missing key part");throw p.code="INVALID_DOTENV_KEY",p}let a=r.searchParams.get("environment");if(!a){let p=new Error("INVALID_DOTENV_KEY: Missing environment part");throw p.code="INVALID_DOTENV_KEY",p}let o=`DOTENV_VAULT_${a.toUpperCase()}`,g=e.parsed[o];if(!g){let p=new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${o} in your .env.vault file.`);throw p.code="NOT_FOUND_DOTENV_ENVIRONMENT",p}return{ciphertext:g,key:s}}function Wqr(e){let t=null;if(e&&e.path&&e.path.length>0)if(Array.isArray(e.path))for(let r of e.path)V5t.existsSync(r)&&(t=r.endsWith(".vault")?r:`${r}.vault`);else t=e.path.endsWith(".vault")?e.path:`${e.path}.vault`;else t=W5t.resolve(process.cwd(),".env.vault");return V5t.existsSync(t)?t:null}function Lqr(e){return e[0]==="~"?W5t.join(VSs.homedir(),e.slice(1)):e}function JSs(e){HSs("Loading env from encrypted .env.vault");let t=DT._parseVault(e),r=process.env;return e&&e.processEnv!=null&&(r=e.processEnv),DT.populate(r,t,e),{parsed:t}}function USs(e){let t=W5t.resolve(process.cwd(),".env"),r="utf8",s=!!(e&&e.debug);e&&e.encoding?r=e.encoding:s&&hrt("No encoding is specified. UTF-8 is used by default");let a=[t];if(e&&e.path)if(!Array.isArray(e.path))a=[Lqr(e.path)];else{a=[];for(let f of e.path)a.push(Lqr(f))}let o,g={};for(let f of a)try{let m=DT.parse(V5t.readFileSync(f,{encoding:r}));DT.populate(g,m,e)}catch(m){s&&hrt(`Failed to load ${f} ${m.message}`),o=m}let p=process.env;return e&&e.processEnv!=null&&(p=e.processEnv),DT.populate(p,g,e),o?{parsed:g,error:o}:{parsed:g}}function KSs(e){if(Vqr(e).length===0)return DT.configDotenv(e);let t=Wqr(e);return t?DT._configVault(e):(YSs(`You set DOTENV_KEY but you are missing a .env.vault file at ${t}. Did you forget to build it?`),DT.configDotenv(e))}function jSs(e,t){let r=Buffer.from(t.slice(-64),"hex"),s=Buffer.from(e,"base64"),a=s.subarray(0,12),o=s.subarray(-16);s=s.subarray(12,-16);try{let g=WSs.createDecipheriv("aes-256-gcm",r,a);return g.setAuthTag(o),`${g.update(s)}${g.final()}`}catch(g){let p=g instanceof RangeError,f=g.message==="Invalid key length",m=g.message==="Unsupported state or unable to authenticate data";if(p||f){let y=new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw y.code="INVALID_DOTENV_KEY",y}else if(m){let y=new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw y.code="DECRYPTION_FAILED",y}else throw g}}function zSs(e,t,r={}){let s=!!(r&&r.debug),a=!!(r&&r.override);if(typeof t!="object"){let o=new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw o.code="OBJECT_REQUIRED",o}for(let o of Object.keys(t))Object.prototype.hasOwnProperty.call(e,o)?(a===!0&&(e[o]=t[o]),s&&hrt(a===!0?`"${o}" is already defined and WAS overwritten`:`"${o}" is already defined and was NOT overwritten`)):e[o]=t[o]}var DT={configDotenv:USs,_configVault:JSs,_parseVault:MSs,config:KSs,decrypt:jSs,parse:QSs,populate:zSs};ij.exports.configDotenv=DT.configDotenv;ij.exports._configVault=DT._configVault;ij.exports._parseVault=DT._parseVault;ij.exports.config=DT.config;ij.exports.decrypt=DT.decrypt;ij.exports.parse=DT.parse;ij.exports.populate=DT.populate;ij.exports=DT});var Qqr=z(($Zc,O5t)=>{"use strict";var Oqr=(e,...t)=>new Promise(r=>{r(e(...t))});O5t.exports=Oqr;O5t.exports.default=Oqr});var iAe=z((eLc,Q5t)=>{"use strict";var qSs=Qqr(),Mqr=e=>{if(!((Number.isInteger(e)||e===1/0)&&e>0))return Promise.reject(new TypeError("Expected `concurrency` to be a number from 1 and up"));let t=[],r=0,s=()=>{r--,t.length>0&&t.shift()()},a=(p,f,...m)=>{r++;let y=qSs(p,...m);f(y),y.then(s,s)},o=(p,f,...m)=>{rnew Promise(m=>o(p,m,...f));return Object.defineProperties(g,{activeCount:{get:()=>r},pendingCount:{get:()=>t.length},clearQueue:{value:()=>{t.length=0}}}),g};Q5t.exports=Mqr;Q5t.exports.default=Mqr});var NL=z(obe=>{"use strict";Object.defineProperty(obe,"__esModule",{value:!0});obe.MessageName=void 0;obe.stringifyMessageName=$Ss;obe.parseMessageName=ews;var M5t;(function(e){e[e.UNNAMED=0]="UNNAMED",e[e.EXCEPTION=1]="EXCEPTION",e[e.MISSING_PEER_DEPENDENCY=2]="MISSING_PEER_DEPENDENCY",e[e.CYCLIC_DEPENDENCIES=3]="CYCLIC_DEPENDENCIES",e[e.DISABLED_BUILD_SCRIPTS=4]="DISABLED_BUILD_SCRIPTS",e[e.BUILD_DISABLED=5]="BUILD_DISABLED",e[e.SOFT_LINK_BUILD=6]="SOFT_LINK_BUILD",e[e.MUST_BUILD=7]="MUST_BUILD",e[e.MUST_REBUILD=8]="MUST_REBUILD",e[e.BUILD_FAILED=9]="BUILD_FAILED",e[e.RESOLVER_NOT_FOUND=10]="RESOLVER_NOT_FOUND",e[e.FETCHER_NOT_FOUND=11]="FETCHER_NOT_FOUND",e[e.LINKER_NOT_FOUND=12]="LINKER_NOT_FOUND",e[e.FETCH_NOT_CACHED=13]="FETCH_NOT_CACHED",e[e.YARN_IMPORT_FAILED=14]="YARN_IMPORT_FAILED",e[e.REMOTE_INVALID=15]="REMOTE_INVALID",e[e.REMOTE_NOT_FOUND=16]="REMOTE_NOT_FOUND",e[e.RESOLUTION_PACK=17]="RESOLUTION_PACK",e[e.CACHE_CHECKSUM_MISMATCH=18]="CACHE_CHECKSUM_MISMATCH",e[e.UNUSED_CACHE_ENTRY=19]="UNUSED_CACHE_ENTRY",e[e.MISSING_LOCKFILE_ENTRY=20]="MISSING_LOCKFILE_ENTRY",e[e.WORKSPACE_NOT_FOUND=21]="WORKSPACE_NOT_FOUND",e[e.TOO_MANY_MATCHING_WORKSPACES=22]="TOO_MANY_MATCHING_WORKSPACES",e[e.CONSTRAINTS_MISSING_DEPENDENCY=23]="CONSTRAINTS_MISSING_DEPENDENCY",e[e.CONSTRAINTS_INCOMPATIBLE_DEPENDENCY=24]="CONSTRAINTS_INCOMPATIBLE_DEPENDENCY",e[e.CONSTRAINTS_EXTRANEOUS_DEPENDENCY=25]="CONSTRAINTS_EXTRANEOUS_DEPENDENCY",e[e.CONSTRAINTS_INVALID_DEPENDENCY=26]="CONSTRAINTS_INVALID_DEPENDENCY",e[e.CANT_SUGGEST_RESOLUTIONS=27]="CANT_SUGGEST_RESOLUTIONS",e[e.FROZEN_LOCKFILE_EXCEPTION=28]="FROZEN_LOCKFILE_EXCEPTION",e[e.CROSS_DRIVE_VIRTUAL_LOCAL=29]="CROSS_DRIVE_VIRTUAL_LOCAL",e[e.FETCH_FAILED=30]="FETCH_FAILED",e[e.DANGEROUS_NODE_MODULES=31]="DANGEROUS_NODE_MODULES",e[e.NODE_GYP_INJECTED=32]="NODE_GYP_INJECTED",e[e.AUTHENTICATION_NOT_FOUND=33]="AUTHENTICATION_NOT_FOUND",e[e.INVALID_CONFIGURATION_KEY=34]="INVALID_CONFIGURATION_KEY",e[e.NETWORK_ERROR=35]="NETWORK_ERROR",e[e.LIFECYCLE_SCRIPT=36]="LIFECYCLE_SCRIPT",e[e.CONSTRAINTS_MISSING_FIELD=37]="CONSTRAINTS_MISSING_FIELD",e[e.CONSTRAINTS_INCOMPATIBLE_FIELD=38]="CONSTRAINTS_INCOMPATIBLE_FIELD",e[e.CONSTRAINTS_EXTRANEOUS_FIELD=39]="CONSTRAINTS_EXTRANEOUS_FIELD",e[e.CONSTRAINTS_INVALID_FIELD=40]="CONSTRAINTS_INVALID_FIELD",e[e.AUTHENTICATION_INVALID=41]="AUTHENTICATION_INVALID",e[e.PROLOG_UNKNOWN_ERROR=42]="PROLOG_UNKNOWN_ERROR",e[e.PROLOG_SYNTAX_ERROR=43]="PROLOG_SYNTAX_ERROR",e[e.PROLOG_EXISTENCE_ERROR=44]="PROLOG_EXISTENCE_ERROR",e[e.STACK_OVERFLOW_RESOLUTION=45]="STACK_OVERFLOW_RESOLUTION",e[e.AUTOMERGE_FAILED_TO_PARSE=46]="AUTOMERGE_FAILED_TO_PARSE",e[e.AUTOMERGE_IMMUTABLE=47]="AUTOMERGE_IMMUTABLE",e[e.AUTOMERGE_SUCCESS=48]="AUTOMERGE_SUCCESS",e[e.AUTOMERGE_REQUIRED=49]="AUTOMERGE_REQUIRED",e[e.DEPRECATED_CLI_SETTINGS=50]="DEPRECATED_CLI_SETTINGS",e[e.PLUGIN_NAME_NOT_FOUND=51]="PLUGIN_NAME_NOT_FOUND",e[e.INVALID_PLUGIN_REFERENCE=52]="INVALID_PLUGIN_REFERENCE",e[e.CONSTRAINTS_AMBIGUITY=53]="CONSTRAINTS_AMBIGUITY",e[e.CACHE_OUTSIDE_PROJECT=54]="CACHE_OUTSIDE_PROJECT",e[e.IMMUTABLE_INSTALL=55]="IMMUTABLE_INSTALL",e[e.IMMUTABLE_CACHE=56]="IMMUTABLE_CACHE",e[e.INVALID_MANIFEST=57]="INVALID_MANIFEST",e[e.PACKAGE_PREPARATION_FAILED=58]="PACKAGE_PREPARATION_FAILED",e[e.INVALID_RANGE_PEER_DEPENDENCY=59]="INVALID_RANGE_PEER_DEPENDENCY",e[e.INCOMPATIBLE_PEER_DEPENDENCY=60]="INCOMPATIBLE_PEER_DEPENDENCY",e[e.DEPRECATED_PACKAGE=61]="DEPRECATED_PACKAGE",e[e.INCOMPATIBLE_OS=62]="INCOMPATIBLE_OS",e[e.INCOMPATIBLE_CPU=63]="INCOMPATIBLE_CPU",e[e.FROZEN_ARTIFACT_EXCEPTION=64]="FROZEN_ARTIFACT_EXCEPTION",e[e.TELEMETRY_NOTICE=65]="TELEMETRY_NOTICE",e[e.PATCH_HUNK_FAILED=66]="PATCH_HUNK_FAILED",e[e.INVALID_CONFIGURATION_VALUE=67]="INVALID_CONFIGURATION_VALUE",e[e.UNUSED_PACKAGE_EXTENSION=68]="UNUSED_PACKAGE_EXTENSION",e[e.REDUNDANT_PACKAGE_EXTENSION=69]="REDUNDANT_PACKAGE_EXTENSION",e[e.AUTO_NM_SUCCESS=70]="AUTO_NM_SUCCESS",e[e.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK=71]="NM_CANT_INSTALL_EXTERNAL_SOFT_LINK",e[e.NM_PRESERVE_SYMLINKS_REQUIRED=72]="NM_PRESERVE_SYMLINKS_REQUIRED",e[e.UPDATE_LOCKFILE_ONLY_SKIP_LINK=73]="UPDATE_LOCKFILE_ONLY_SKIP_LINK",e[e.NM_HARDLINKS_MODE_DOWNGRADED=74]="NM_HARDLINKS_MODE_DOWNGRADED",e[e.PROLOG_INSTANTIATION_ERROR=75]="PROLOG_INSTANTIATION_ERROR",e[e.INCOMPATIBLE_ARCHITECTURE=76]="INCOMPATIBLE_ARCHITECTURE",e[e.GHOST_ARCHITECTURE=77]="GHOST_ARCHITECTURE",e[e.RESOLUTION_MISMATCH=78]="RESOLUTION_MISMATCH",e[e.PROLOG_LIMIT_EXCEEDED=79]="PROLOG_LIMIT_EXCEEDED",e[e.NETWORK_DISABLED=80]="NETWORK_DISABLED",e[e.NETWORK_UNSAFE_HTTP=81]="NETWORK_UNSAFE_HTTP",e[e.RESOLUTION_FAILED=82]="RESOLUTION_FAILED",e[e.AUTOMERGE_GIT_ERROR=83]="AUTOMERGE_GIT_ERROR",e[e.CONSTRAINTS_CHECK_FAILED=84]="CONSTRAINTS_CHECK_FAILED",e[e.UPDATED_RESOLUTION_RECORD=85]="UPDATED_RESOLUTION_RECORD",e[e.EXPLAIN_PEER_DEPENDENCIES_CTA=86]="EXPLAIN_PEER_DEPENDENCIES_CTA",e[e.MIGRATION_SUCCESS=87]="MIGRATION_SUCCESS",e[e.VERSION_NOTICE=88]="VERSION_NOTICE",e[e.TIPS_NOTICE=89]="TIPS_NOTICE",e[e.OFFLINE_MODE_ENABLED=90]="OFFLINE_MODE_ENABLED"})(M5t||(obe.MessageName=M5t={}));function $Ss(e){return`YN${e.toString(10).padStart(4,"0")}`}function ews(e){let t=Number(e.slice(2));if(typeof M5t[t]>"u")throw new Error(`Unknown message name: "${e}"`);return t}});var u9e=z((rLc,Hqr)=>{var tws="2.0.0",rws=Number.MAX_SAFE_INTEGER||9007199254740991,nws=16,iws=250,sws=["major","premajor","minor","preminor","patch","prepatch","prerelease"];Hqr.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:nws,MAX_SAFE_BUILD_LENGTH:iws,MAX_SAFE_INTEGER:rws,RELEASE_TYPES:sws,SEMVER_SPEC_VERSION:tws,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var g9e=z((nLc,Yqr)=>{var ows=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...e)=>console.error("SEMVER",...e):()=>{};Yqr.exports=ows});var abe=z((sj,Xqr)=>{var{MAX_SAFE_COMPONENT_LENGTH:H5t,MAX_SAFE_BUILD_LENGTH:aws,MAX_LENGTH:cws}=u9e(),lws=g9e();sj=Xqr.exports={};var uws=sj.re=[],gws=sj.safeRe=[],jg=sj.src=[],zg=sj.t={},Aws=0,Y5t="[a-zA-Z0-9-]",dws=[["\\s",1],["\\d",cws],[Y5t,aws]],pws=e=>{for(let[t,r]of dws)e=e.split(`${t}*`).join(`${t}{0,${r}}`).split(`${t}+`).join(`${t}{1,${r}}`);return e},WI=(e,t,r)=>{let s=pws(t),a=Aws++;lws(e,a,t),zg[e]=a,jg[a]=t,uws[a]=new RegExp(t,r?"g":void 0),gws[a]=new RegExp(s,r?"g":void 0)};WI("NUMERICIDENTIFIER","0|[1-9]\\d*");WI("NUMERICIDENTIFIERLOOSE","\\d+");WI("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${Y5t}*`);WI("MAINVERSION",`(${jg[zg.NUMERICIDENTIFIER]})\\.(${jg[zg.NUMERICIDENTIFIER]})\\.(${jg[zg.NUMERICIDENTIFIER]})`);WI("MAINVERSIONLOOSE",`(${jg[zg.NUMERICIDENTIFIERLOOSE]})\\.(${jg[zg.NUMERICIDENTIFIERLOOSE]})\\.(${jg[zg.NUMERICIDENTIFIERLOOSE]})`);WI("PRERELEASEIDENTIFIER",`(?:${jg[zg.NUMERICIDENTIFIER]}|${jg[zg.NONNUMERICIDENTIFIER]})`);WI("PRERELEASEIDENTIFIERLOOSE",`(?:${jg[zg.NUMERICIDENTIFIERLOOSE]}|${jg[zg.NONNUMERICIDENTIFIER]})`);WI("PRERELEASE",`(?:-(${jg[zg.PRERELEASEIDENTIFIER]}(?:\\.${jg[zg.PRERELEASEIDENTIFIER]})*))`);WI("PRERELEASELOOSE",`(?:-?(${jg[zg.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${jg[zg.PRERELEASEIDENTIFIERLOOSE]})*))`);WI("BUILDIDENTIFIER",`${Y5t}+`);WI("BUILD",`(?:\\+(${jg[zg.BUILDIDENTIFIER]}(?:\\.${jg[zg.BUILDIDENTIFIER]})*))`);WI("FULLPLAIN",`v?${jg[zg.MAINVERSION]}${jg[zg.PRERELEASE]}?${jg[zg.BUILD]}?`);WI("FULL",`^${jg[zg.FULLPLAIN]}$`);WI("LOOSEPLAIN",`[v=\\s]*${jg[zg.MAINVERSIONLOOSE]}${jg[zg.PRERELEASELOOSE]}?${jg[zg.BUILD]}?`);WI("LOOSE",`^${jg[zg.LOOSEPLAIN]}$`);WI("GTLT","((?:<|>)?=?)");WI("XRANGEIDENTIFIERLOOSE",`${jg[zg.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);WI("XRANGEIDENTIFIER",`${jg[zg.NUMERICIDENTIFIER]}|x|X|\\*`);WI("XRANGEPLAIN",`[v=\\s]*(${jg[zg.XRANGEIDENTIFIER]})(?:\\.(${jg[zg.XRANGEIDENTIFIER]})(?:\\.(${jg[zg.XRANGEIDENTIFIER]})(?:${jg[zg.PRERELEASE]})?${jg[zg.BUILD]}?)?)?`);WI("XRANGEPLAINLOOSE",`[v=\\s]*(${jg[zg.XRANGEIDENTIFIERLOOSE]})(?:\\.(${jg[zg.XRANGEIDENTIFIERLOOSE]})(?:\\.(${jg[zg.XRANGEIDENTIFIERLOOSE]})(?:${jg[zg.PRERELEASELOOSE]})?${jg[zg.BUILD]}?)?)?`);WI("XRANGE",`^${jg[zg.GTLT]}\\s*${jg[zg.XRANGEPLAIN]}$`);WI("XRANGELOOSE",`^${jg[zg.GTLT]}\\s*${jg[zg.XRANGEPLAINLOOSE]}$`);WI("COERCEPLAIN",`(^|[^\\d])(\\d{1,${H5t}})(?:\\.(\\d{1,${H5t}}))?(?:\\.(\\d{1,${H5t}}))?`);WI("COERCE",`${jg[zg.COERCEPLAIN]}(?:$|[^\\d])`);WI("COERCEFULL",jg[zg.COERCEPLAIN]+`(?:${jg[zg.PRERELEASE]})?(?:${jg[zg.BUILD]})?(?:$|[^\\d])`);WI("COERCERTL",jg[zg.COERCE],!0);WI("COERCERTLFULL",jg[zg.COERCEFULL],!0);WI("LONETILDE","(?:~>?)");WI("TILDETRIM",`(\\s*)${jg[zg.LONETILDE]}\\s+`,!0);sj.tildeTrimReplace="$1~";WI("TILDE",`^${jg[zg.LONETILDE]}${jg[zg.XRANGEPLAIN]}$`);WI("TILDELOOSE",`^${jg[zg.LONETILDE]}${jg[zg.XRANGEPLAINLOOSE]}$`);WI("LONECARET","(?:\\^)");WI("CARETTRIM",`(\\s*)${jg[zg.LONECARET]}\\s+`,!0);sj.caretTrimReplace="$1^";WI("CARET",`^${jg[zg.LONECARET]}${jg[zg.XRANGEPLAIN]}$`);WI("CARETLOOSE",`^${jg[zg.LONECARET]}${jg[zg.XRANGEPLAINLOOSE]}$`);WI("COMPARATORLOOSE",`^${jg[zg.GTLT]}\\s*(${jg[zg.LOOSEPLAIN]})$|^$`);WI("COMPARATOR",`^${jg[zg.GTLT]}\\s*(${jg[zg.FULLPLAIN]})$|^$`);WI("COMPARATORTRIM",`(\\s*)${jg[zg.GTLT]}\\s*(${jg[zg.LOOSEPLAIN]}|${jg[zg.XRANGEPLAIN]})`,!0);sj.comparatorTrimReplace="$1$2$3";WI("HYPHENRANGE",`^\\s*(${jg[zg.XRANGEPLAIN]})\\s+-\\s+(${jg[zg.XRANGEPLAIN]})\\s*$`);WI("HYPHENRANGELOOSE",`^\\s*(${jg[zg.XRANGEPLAINLOOSE]})\\s+-\\s+(${jg[zg.XRANGEPLAINLOOSE]})\\s*$`);WI("STAR","(<|>)?=?\\s*\\*");WI("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");WI("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var _rt=z((iLc,Jqr)=>{var fws=Object.freeze({loose:!0}),Iws=Object.freeze({}),Cws=e=>e?typeof e!="object"?fws:e:Iws;Jqr.exports=Cws});var X5t=z((sLc,jqr)=>{var Uqr=/^[0-9]+$/,Kqr=(e,t)=>{let r=Uqr.test(e),s=Uqr.test(t);return r&&s&&(e=+e,t=+t),e===t?0:r&&!s?-1:s&&!r?1:eKqr(t,e);jqr.exports={compareIdentifiers:Kqr,rcompareIdentifiers:mws}});var uk=z((oLc,e$r)=>{var yrt=g9e(),{MAX_LENGTH:zqr,MAX_SAFE_INTEGER:brt}=u9e(),{safeRe:qqr,t:$qr}=abe(),hws=_rt(),{compareIdentifiers:cbe}=X5t(),J5t=class e{constructor(t,r){if(r=hws(r),t instanceof e){if(t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease)return t;t=t.version}else if(typeof t!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof t}".`);if(t.length>zqr)throw new TypeError(`version is longer than ${zqr} characters`);yrt("SemVer",t,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let s=t.trim().match(r.loose?qqr[$qr.LOOSE]:qqr[$qr.FULL]);if(!s)throw new TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+s[1],this.minor=+s[2],this.patch=+s[3],this.major>brt||this.major<0)throw new TypeError("Invalid major version");if(this.minor>brt||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>brt||this.patch<0)throw new TypeError("Invalid patch version");s[4]?this.prerelease=s[4].split(".").map(a=>{if(/^[0-9]+$/.test(a)){let o=+a;if(o>=0&&o=0;)typeof this.prerelease[o]=="number"&&(this.prerelease[o]++,o=-2);if(o===-1){if(r===this.prerelease.join(".")&&s===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(a)}}if(r){let o=[r,a];s===!1&&(o=[r]),cbe(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=o):this.prerelease=o}break}default:throw new Error(`invalid increment argument: ${t}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};e$r.exports=J5t});var sAe=z((aLc,r$r)=>{var t$r=uk(),_ws=(e,t,r=!1)=>{if(e instanceof t$r)return e;try{return new t$r(e,t)}catch(s){if(!r)return null;throw s}};r$r.exports=_ws});var U5t=z((cLc,n$r)=>{var yws=sAe(),bws=(e,t)=>{let r=yws(e,t);return r?r.version:null};n$r.exports=bws});var K5t=z((lLc,i$r)=>{var Ews=sAe(),Bws=(e,t)=>{let r=Ews(e.trim().replace(/^[=v]+/,""),t);return r?r.version:null};i$r.exports=Bws});var a$r=z((uLc,o$r)=>{var s$r=uk(),vws=(e,t,r,s,a)=>{typeof r=="string"&&(a=s,s=r,r=void 0);try{return new s$r(e instanceof s$r?e.version:e,r).inc(t,s,a).version}catch{return null}};o$r.exports=vws});var u$r=z((gLc,l$r)=>{var c$r=sAe(),Sws=(e,t)=>{let r=c$r(e,null,!0),s=c$r(t,null,!0),a=r.compare(s);if(a===0)return null;let o=a>0,g=o?r:s,p=o?s:r,f=!!g.prerelease.length;if(!!p.prerelease.length&&!f)return!p.patch&&!p.minor?"major":g.patch?"patch":g.minor?"minor":"major";let y=f?"pre":"";return r.major!==s.major?y+"major":r.minor!==s.minor?y+"minor":r.patch!==s.patch?y+"patch":"prerelease"};l$r.exports=Sws});var A$r=z((ALc,g$r)=>{var wws=uk(),Tws=(e,t)=>new wws(e,t).major;g$r.exports=Tws});var p$r=z((dLc,d$r)=>{var Nws=uk(),Rws=(e,t)=>new Nws(e,t).minor;d$r.exports=Rws});var I$r=z((pLc,f$r)=>{var Dws=uk(),xws=(e,t)=>new Dws(e,t).patch;f$r.exports=xws});var m$r=z((fLc,C$r)=>{var kws=sAe(),Gws=(e,t)=>{let r=kws(e,t);return r&&r.prerelease.length?r.prerelease:null};C$r.exports=Gws});var gO=z((ILc,_$r)=>{var h$r=uk(),Fws=(e,t,r)=>new h$r(e,r).compare(new h$r(t,r));_$r.exports=Fws});var b$r=z((CLc,y$r)=>{var Zws=gO(),Lws=(e,t,r)=>Zws(t,e,r);y$r.exports=Lws});var B$r=z((mLc,E$r)=>{var Vws=gO(),Wws=(e,t)=>Vws(e,t,!0);E$r.exports=Wws});var Ert=z((hLc,S$r)=>{var v$r=uk(),Pws=(e,t,r)=>{let s=new v$r(e,r),a=new v$r(t,r);return s.compare(a)||s.compareBuild(a)};S$r.exports=Pws});var T$r=z((_Lc,w$r)=>{var Ows=Ert(),Qws=(e,t)=>e.sort((r,s)=>Ows(r,s,t));w$r.exports=Qws});var R$r=z((yLc,N$r)=>{var Mws=Ert(),Hws=(e,t)=>e.sort((r,s)=>Mws(s,r,t));N$r.exports=Hws});var A9e=z((bLc,D$r)=>{var Yws=gO(),Xws=(e,t,r)=>Yws(e,t,r)>0;D$r.exports=Xws});var Brt=z((ELc,x$r)=>{var Jws=gO(),Uws=(e,t,r)=>Jws(e,t,r)<0;x$r.exports=Uws});var j5t=z((BLc,k$r)=>{var Kws=gO(),jws=(e,t,r)=>Kws(e,t,r)===0;k$r.exports=jws});var z5t=z((vLc,G$r)=>{var zws=gO(),qws=(e,t,r)=>zws(e,t,r)!==0;G$r.exports=qws});var vrt=z((SLc,F$r)=>{var $ws=gO(),eTs=(e,t,r)=>$ws(e,t,r)>=0;F$r.exports=eTs});var Srt=z((wLc,Z$r)=>{var tTs=gO(),rTs=(e,t,r)=>tTs(e,t,r)<=0;Z$r.exports=rTs});var q5t=z((TLc,L$r)=>{var nTs=j5t(),iTs=z5t(),sTs=A9e(),oTs=vrt(),aTs=Brt(),cTs=Srt(),lTs=(e,t,r,s)=>{switch(t){case"===":return typeof e=="object"&&(e=e.version),typeof r=="object"&&(r=r.version),e===r;case"!==":return typeof e=="object"&&(e=e.version),typeof r=="object"&&(r=r.version),e!==r;case"":case"=":case"==":return nTs(e,r,s);case"!=":return iTs(e,r,s);case">":return sTs(e,r,s);case">=":return oTs(e,r,s);case"<":return aTs(e,r,s);case"<=":return cTs(e,r,s);default:throw new TypeError(`Invalid operator: ${t}`)}};L$r.exports=lTs});var W$r=z((NLc,V$r)=>{var uTs=uk(),gTs=sAe(),{safeRe:wrt,t:Trt}=abe(),ATs=(e,t)=>{if(e instanceof uTs)return e;if(typeof e=="number"&&(e=String(e)),typeof e!="string")return null;t=t||{};let r=null;if(!t.rtl)r=e.match(t.includePrerelease?wrt[Trt.COERCEFULL]:wrt[Trt.COERCE]);else{let f=t.includePrerelease?wrt[Trt.COERCERTLFULL]:wrt[Trt.COERCERTL],m;for(;(m=f.exec(e))&&(!r||r.index+r[0].length!==e.length);)(!r||m.index+m[0].length!==r.index+r[0].length)&&(r=m),f.lastIndex=m.index+m[1].length+m[2].length;f.lastIndex=-1}if(r===null)return null;let s=r[2],a=r[3]||"0",o=r[4]||"0",g=t.includePrerelease&&r[5]?`-${r[5]}`:"",p=t.includePrerelease&&r[6]?`+${r[6]}`:"";return gTs(`${s}.${a}.${o}${g}${p}`,t)};V$r.exports=ATs});var O$r=z((RLc,P$r)=>{var $5t=class{constructor(){this.max=1e3,this.map=new Map}get(t){let r=this.map.get(t);if(r!==void 0)return this.map.delete(t),this.map.set(t,r),r}delete(t){return this.map.delete(t)}set(t,r){if(!this.delete(t)&&r!==void 0){if(this.map.size>=this.max){let a=this.map.keys().next().value;this.delete(a)}this.map.set(t,r)}return this}};P$r.exports=$5t});var AO=z((DLc,Y$r)=>{var dTs=/\s+/g,eMt=class e{constructor(t,r){if(r=fTs(r),t instanceof e)return t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease?t:new e(t.raw,r);if(t instanceof tMt)return this.raw=t.value,this.set=[[t]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=t.trim().replace(dTs," "),this.set=this.raw.split("||").map(s=>this.parseRange(s.trim())).filter(s=>s.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let s=this.set[0];if(this.set=this.set.filter(a=>!M$r(a[0])),this.set.length===0)this.set=[s];else if(this.set.length>1){for(let a of this.set)if(a.length===1&&bTs(a[0])){this.set=[a];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let t=0;t0&&(this.formatted+="||");let r=this.set[t];for(let s=0;s0&&(this.formatted+=" "),this.formatted+=r[s].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(t){let s=((this.options.includePrerelease&&_Ts)|(this.options.loose&&yTs))+":"+t,a=Q$r.get(s);if(a)return a;let o=this.options.loose,g=o?RL[yF.HYPHENRANGELOOSE]:RL[yF.HYPHENRANGE];t=t.replace(g,xTs(this.options.includePrerelease)),zE("hyphen replace",t),t=t.replace(RL[yF.COMPARATORTRIM],CTs),zE("comparator trim",t),t=t.replace(RL[yF.TILDETRIM],mTs),zE("tilde trim",t),t=t.replace(RL[yF.CARETTRIM],hTs),zE("caret trim",t);let p=t.split(" ").map(B=>ETs(B,this.options)).join(" ").split(/\s+/).map(B=>DTs(B,this.options));o&&(p=p.filter(B=>(zE("loose invalid filter",B,this.options),!!B.match(RL[yF.COMPARATORLOOSE])))),zE("range list",p);let f=new Map,m=p.map(B=>new tMt(B,this.options));for(let B of m){if(M$r(B))return[B];f.set(B.value,B)}f.size>1&&f.has("")&&f.delete("");let y=[...f.values()];return Q$r.set(s,y),y}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Range is required");return this.set.some(s=>H$r(s,r)&&t.set.some(a=>H$r(a,r)&&s.every(o=>a.every(g=>o.intersects(g,r)))))}test(t){if(!t)return!1;if(typeof t=="string")try{t=new ITs(t,this.options)}catch{return!1}for(let r=0;re.value==="<0.0.0-0",bTs=e=>e.value==="",H$r=(e,t)=>{let r=!0,s=e.slice(),a=s.pop();for(;r&&s.length;)r=s.every(o=>a.intersects(o,t)),a=s.pop();return r},ETs=(e,t)=>(zE("comp",e,t),e=STs(e,t),zE("caret",e),e=BTs(e,t),zE("tildes",e),e=TTs(e,t),zE("xrange",e),e=RTs(e,t),zE("stars",e),e),bF=e=>!e||e.toLowerCase()==="x"||e==="*",BTs=(e,t)=>e.trim().split(/\s+/).map(r=>vTs(r,t)).join(" "),vTs=(e,t)=>{let r=t.loose?RL[yF.TILDELOOSE]:RL[yF.TILDE];return e.replace(r,(s,a,o,g,p)=>{zE("tilde",e,s,a,o,g,p);let f;return bF(a)?f="":bF(o)?f=`>=${a}.0.0 <${+a+1}.0.0-0`:bF(g)?f=`>=${a}.${o}.0 <${a}.${+o+1}.0-0`:p?(zE("replaceTilde pr",p),f=`>=${a}.${o}.${g}-${p} <${a}.${+o+1}.0-0`):f=`>=${a}.${o}.${g} <${a}.${+o+1}.0-0`,zE("tilde return",f),f})},STs=(e,t)=>e.trim().split(/\s+/).map(r=>wTs(r,t)).join(" "),wTs=(e,t)=>{zE("caret",e,t);let r=t.loose?RL[yF.CARETLOOSE]:RL[yF.CARET],s=t.includePrerelease?"-0":"";return e.replace(r,(a,o,g,p,f)=>{zE("caret",e,a,o,g,p,f);let m;return bF(o)?m="":bF(g)?m=`>=${o}.0.0${s} <${+o+1}.0.0-0`:bF(p)?o==="0"?m=`>=${o}.${g}.0${s} <${o}.${+g+1}.0-0`:m=`>=${o}.${g}.0${s} <${+o+1}.0.0-0`:f?(zE("replaceCaret pr",f),o==="0"?g==="0"?m=`>=${o}.${g}.${p}-${f} <${o}.${g}.${+p+1}-0`:m=`>=${o}.${g}.${p}-${f} <${o}.${+g+1}.0-0`:m=`>=${o}.${g}.${p}-${f} <${+o+1}.0.0-0`):(zE("no pr"),o==="0"?g==="0"?m=`>=${o}.${g}.${p}${s} <${o}.${g}.${+p+1}-0`:m=`>=${o}.${g}.${p}${s} <${o}.${+g+1}.0-0`:m=`>=${o}.${g}.${p} <${+o+1}.0.0-0`),zE("caret return",m),m})},TTs=(e,t)=>(zE("replaceXRanges",e,t),e.split(/\s+/).map(r=>NTs(r,t)).join(" ")),NTs=(e,t)=>{e=e.trim();let r=t.loose?RL[yF.XRANGELOOSE]:RL[yF.XRANGE];return e.replace(r,(s,a,o,g,p,f)=>{zE("xRange",e,s,a,o,g,p,f);let m=bF(o),y=m||bF(g),B=y||bF(p),v=B;return a==="="&&v&&(a=""),f=t.includePrerelease?"-0":"",m?a===">"||a==="<"?s="<0.0.0-0":s="*":a&&v?(y&&(g=0),p=0,a===">"?(a=">=",y?(o=+o+1,g=0,p=0):(g=+g+1,p=0)):a==="<="&&(a="<",y?o=+o+1:g=+g+1),a==="<"&&(f="-0"),s=`${a+o}.${g}.${p}${f}`):y?s=`>=${o}.0.0${f} <${+o+1}.0.0-0`:B&&(s=`>=${o}.${g}.0${f} <${o}.${+g+1}.0-0`),zE("xRange return",s),s})},RTs=(e,t)=>(zE("replaceStars",e,t),e.trim().replace(RL[yF.STAR],"")),DTs=(e,t)=>(zE("replaceGTE0",e,t),e.trim().replace(RL[t.includePrerelease?yF.GTE0PRE:yF.GTE0],"")),xTs=e=>(t,r,s,a,o,g,p,f,m,y,B,v)=>(bF(s)?r="":bF(a)?r=`>=${s}.0.0${e?"-0":""}`:bF(o)?r=`>=${s}.${a}.0${e?"-0":""}`:g?r=`>=${r}`:r=`>=${r}${e?"-0":""}`,bF(m)?f="":bF(y)?f=`<${+m+1}.0.0-0`:bF(B)?f=`<${m}.${+y+1}.0-0`:v?f=`<=${m}.${y}.${B}-${v}`:e?f=`<${m}.${y}.${+B+1}-0`:f=`<=${f}`,`${r} ${f}`.trim()),kTs=(e,t,r)=>{for(let s=0;s0){let a=e[s].semver;if(a.major===t.major&&a.minor===t.minor&&a.patch===t.patch)return!0}return!1}return!0}});var d9e=z((xLc,z$r)=>{var p9e=Symbol("SemVer ANY"),iMt=class e{static get ANY(){return p9e}constructor(t,r){if(r=X$r(r),t instanceof e){if(t.loose===!!r.loose)return t;t=t.value}t=t.trim().split(/\s+/).join(" "),nMt("comparator",t,r),this.options=r,this.loose=!!r.loose,this.parse(t),this.semver===p9e?this.value="":this.value=this.operator+this.semver.version,nMt("comp",this)}parse(t){let r=this.options.loose?J$r[U$r.COMPARATORLOOSE]:J$r[U$r.COMPARATOR],s=t.match(r);if(!s)throw new TypeError(`Invalid comparator: ${t}`);this.operator=s[1]!==void 0?s[1]:"",this.operator==="="&&(this.operator=""),s[2]?this.semver=new K$r(s[2],this.options.loose):this.semver=p9e}toString(){return this.value}test(t){if(nMt("Comparator.test",t,this.options.loose),this.semver===p9e||t===p9e)return!0;if(typeof t=="string")try{t=new K$r(t,this.options)}catch{return!1}return rMt(t,this.operator,this.semver,this.options)}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new j$r(t.value,r).test(this.value):t.operator===""?t.value===""?!0:new j$r(this.value,r).test(t.semver):(r=X$r(r),r.includePrerelease&&(this.value==="<0.0.0-0"||t.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||t.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&t.operator.startsWith(">")||this.operator.startsWith("<")&&t.operator.startsWith("<")||this.semver.version===t.semver.version&&this.operator.includes("=")&&t.operator.includes("=")||rMt(this.semver,"<",t.semver,r)&&this.operator.startsWith(">")&&t.operator.startsWith("<")||rMt(this.semver,">",t.semver,r)&&this.operator.startsWith("<")&&t.operator.startsWith(">")))}};z$r.exports=iMt;var X$r=_rt(),{safeRe:J$r,t:U$r}=abe(),rMt=q5t(),nMt=g9e(),K$r=uk(),j$r=AO()});var f9e=z((kLc,q$r)=>{var GTs=AO(),FTs=(e,t,r)=>{try{t=new GTs(t,r)}catch{return!1}return t.test(e)};q$r.exports=FTs});var een=z((GLc,$$r)=>{var ZTs=AO(),LTs=(e,t)=>new ZTs(e,t).set.map(r=>r.map(s=>s.value).join(" ").trim().split(" "));$$r.exports=LTs});var ren=z((FLc,ten)=>{var VTs=uk(),WTs=AO(),PTs=(e,t,r)=>{let s=null,a=null,o=null;try{o=new WTs(t,r)}catch{return null}return e.forEach(g=>{o.test(g)&&(!s||a.compare(g)===-1)&&(s=g,a=new VTs(s,r))}),s};ten.exports=PTs});var ien=z((ZLc,nen)=>{var OTs=uk(),QTs=AO(),MTs=(e,t,r)=>{let s=null,a=null,o=null;try{o=new QTs(t,r)}catch{return null}return e.forEach(g=>{o.test(g)&&(!s||a.compare(g)===1)&&(s=g,a=new OTs(s,r))}),s};nen.exports=MTs});var aen=z((LLc,oen)=>{var sMt=uk(),HTs=AO(),sen=A9e(),YTs=(e,t)=>{e=new HTs(e,t);let r=new sMt("0.0.0");if(e.test(r)||(r=new sMt("0.0.0-0"),e.test(r)))return r;r=null;for(let s=0;s{let p=new sMt(g.semver.version);switch(g.operator){case">":p.prerelease.length===0?p.patch++:p.prerelease.push(0),p.raw=p.format();case"":case">=":(!o||sen(p,o))&&(o=p);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${g.operator}`)}}),o&&(!r||sen(r,o))&&(r=o)}return r&&e.test(r)?r:null};oen.exports=YTs});var len=z((VLc,cen)=>{var XTs=AO(),JTs=(e,t)=>{try{return new XTs(e,t).range||"*"}catch{return null}};cen.exports=JTs});var Nrt=z((WLc,den)=>{var UTs=uk(),Aen=d9e(),{ANY:KTs}=Aen,jTs=AO(),zTs=f9e(),uen=A9e(),gen=Brt(),qTs=Srt(),$Ts=vrt(),eNs=(e,t,r,s)=>{e=new UTs(e,s),t=new jTs(t,s);let a,o,g,p,f;switch(r){case">":a=uen,o=qTs,g=gen,p=">",f=">=";break;case"<":a=gen,o=$Ts,g=uen,p="<",f="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(zTs(e,t,s))return!1;for(let m=0;m{k.semver===KTs&&(k=new Aen(">=0.0.0")),B=B||k,v=v||k,a(k.semver,B.semver,s)?B=k:g(k.semver,v.semver,s)&&(v=k)}),B.operator===p||B.operator===f||(!v.operator||v.operator===p)&&o(e,v.semver))return!1;if(v.operator===f&&g(e,v.semver))return!1}return!0};den.exports=eNs});var fen=z((PLc,pen)=>{var tNs=Nrt(),rNs=(e,t,r)=>tNs(e,t,">",r);pen.exports=rNs});var Cen=z((OLc,Ien)=>{var nNs=Nrt(),iNs=(e,t,r)=>nNs(e,t,"<",r);Ien.exports=iNs});var _en=z((QLc,hen)=>{var men=AO(),sNs=(e,t,r)=>(e=new men(e,r),t=new men(t,r),e.intersects(t,r));hen.exports=sNs});var ben=z((MLc,yen)=>{var oNs=f9e(),aNs=gO();yen.exports=(e,t,r)=>{let s=[],a=null,o=null,g=e.sort((y,B)=>aNs(y,B,r));for(let y of g)oNs(y,t,r)?(o=y,a||(a=y)):(o&&s.push([a,o]),o=null,a=null);a&&s.push([a,null]);let p=[];for(let[y,B]of s)y===B?p.push(y):!B&&y===g[0]?p.push("*"):B?y===g[0]?p.push(`<=${B}`):p.push(`${y} - ${B}`):p.push(`>=${y}`);let f=p.join(" || "),m=typeof t.raw=="string"?t.raw:String(t);return f.length{var Een=AO(),aMt=d9e(),{ANY:oMt}=aMt,I9e=f9e(),cMt=gO(),cNs=(e,t,r={})=>{if(e===t)return!0;e=new Een(e,r),t=new Een(t,r);let s=!1;e:for(let a of e.set){for(let o of t.set){let g=uNs(a,o,r);if(s=s||g!==null,g)continue e}if(s)return!1}return!0},lNs=[new aMt(">=0.0.0-0")],Ben=[new aMt(">=0.0.0")],uNs=(e,t,r)=>{if(e===t)return!0;if(e.length===1&&e[0].semver===oMt){if(t.length===1&&t[0].semver===oMt)return!0;r.includePrerelease?e=lNs:e=Ben}if(t.length===1&&t[0].semver===oMt){if(r.includePrerelease)return!0;t=Ben}let s=new Set,a,o;for(let k of e)k.operator===">"||k.operator===">="?a=ven(a,k,r):k.operator==="<"||k.operator==="<="?o=Sen(o,k,r):s.add(k.semver);if(s.size>1)return null;let g;if(a&&o){if(g=cMt(a.semver,o.semver,r),g>0)return null;if(g===0&&(a.operator!==">="||o.operator!=="<="))return null}for(let k of s){if(a&&!I9e(k,String(a),r)||o&&!I9e(k,String(o),r))return null;for(let T of t)if(!I9e(k,String(T),r))return!1;return!0}let p,f,m,y,B=o&&!r.includePrerelease&&o.semver.prerelease.length?o.semver:!1,v=a&&!r.includePrerelease&&a.semver.prerelease.length?a.semver:!1;B&&B.prerelease.length===1&&o.operator==="<"&&B.prerelease[0]===0&&(B=!1);for(let k of t){if(y=y||k.operator===">"||k.operator===">=",m=m||k.operator==="<"||k.operator==="<=",a){if(v&&k.semver.prerelease&&k.semver.prerelease.length&&k.semver.major===v.major&&k.semver.minor===v.minor&&k.semver.patch===v.patch&&(v=!1),k.operator===">"||k.operator===">="){if(p=ven(a,k,r),p===k&&p!==a)return!1}else if(a.operator===">="&&!I9e(a.semver,String(k),r))return!1}if(o){if(B&&k.semver.prerelease&&k.semver.prerelease.length&&k.semver.major===B.major&&k.semver.minor===B.minor&&k.semver.patch===B.patch&&(B=!1),k.operator==="<"||k.operator==="<="){if(f=Sen(o,k,r),f===k&&f!==o)return!1}else if(o.operator==="<="&&!I9e(o.semver,String(k),r))return!1}if(!k.operator&&(o||a)&&g!==0)return!1}return!(a&&m&&!o&&g!==0||o&&y&&!a&&g!==0||v||B)},ven=(e,t,r)=>{if(!e)return t;let s=cMt(e.semver,t.semver,r);return s>0?e:s<0||t.operator===">"&&e.operator===">="?t:e},Sen=(e,t,r)=>{if(!e)return t;let s=cMt(e.semver,t.semver,r);return s<0?e:s>0||t.operator==="<"&&e.operator==="<="?t:e};wen.exports=cNs});var Vh=z((YLc,Den)=>{var lMt=abe(),Nen=u9e(),gNs=uk(),Ren=X5t(),ANs=sAe(),dNs=U5t(),pNs=K5t(),fNs=a$r(),INs=u$r(),CNs=A$r(),mNs=p$r(),hNs=I$r(),_Ns=m$r(),yNs=gO(),bNs=b$r(),ENs=B$r(),BNs=Ert(),vNs=T$r(),SNs=R$r(),wNs=A9e(),TNs=Brt(),NNs=j5t(),RNs=z5t(),DNs=vrt(),xNs=Srt(),kNs=q5t(),GNs=W$r(),FNs=d9e(),ZNs=AO(),LNs=f9e(),VNs=een(),WNs=ren(),PNs=ien(),ONs=aen(),QNs=len(),MNs=Nrt(),HNs=fen(),YNs=Cen(),XNs=_en(),JNs=ben(),UNs=Ten();Den.exports={parse:ANs,valid:dNs,clean:pNs,inc:fNs,diff:INs,major:CNs,minor:mNs,patch:hNs,prerelease:_Ns,compare:yNs,rcompare:bNs,compareLoose:ENs,compareBuild:BNs,sort:vNs,rsort:SNs,gt:wNs,lt:TNs,eq:NNs,neq:RNs,gte:DNs,lte:xNs,cmp:kNs,coerce:GNs,Comparator:FNs,Range:ZNs,satisfies:LNs,toComparators:VNs,maxSatisfying:WNs,minSatisfying:PNs,minVersion:ONs,validRange:QNs,outside:MNs,gtr:HNs,ltr:YNs,intersects:XNs,simplifyRange:JNs,subset:UNs,SemVer:gNs,re:lMt.re,src:lMt.src,tokens:lMt.t,SEMVER_SPEC_VERSION:Nen.SEMVER_SPEC_VERSION,RELEASE_TYPES:Nen.RELEASE_TYPES,compareIdentifiers:Ren.compareIdentifiers,rcompareIdentifiers:Ren.rcompareIdentifiers}});var ken=z((XLc,xen)=>{"use strict";function KNs(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function oAe(e,t,r,s){this.message=e,this.expected=t,this.found=r,this.location=s,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,oAe)}KNs(oAe,Error);oAe.buildMessage=function(e,t){var r={literal:function(m){return'"'+a(m.text)+'"'},class:function(m){var y="",B;for(B=0;B0){for(B=1,v=1;B{switch(vi[1]){case"|":return ua|vi[3];case"&":return ua&vi[3];case"^":return ua^vi[3]}},Qs)},v="!",k=Ar("!",!1),T=function(Qs){return!Qs},O="(",X=Ar("(",!1),U=")",le=Ar(")",!1),ae=function(Qs){return Qs},ge=/^[^ \t\n\r()!|&\^]/,fe=or([" "," ",` `,"\r","(",")","!","|","&","^"],!0,!1),pe=function(Qs){return t.queryPattern.test(Qs)},he=function(Qs){return t.checkFn(Qs)},be=Or("whitespace"),Te=/^[ \t\n\r]/,ke=or([" "," ",` -`,"\r"],!1,!1),x=0,et=0,Ue=[{line:1,column:1}],Je=0,Xe=[],ft=0,Gt;if("startRule"in t){if(!(t.startRule in s))throw new Error(`Can't start parsing from rule "`+t.startRule+'".');a=s[t.startRule]}function er(){return e.substring(et,x)}function Ur(){return Br(et,x)}function Ot(Qs,lr){throw lr=lr!==void 0?lr:Br(et,x),Gn([Or(Qs)],e.substring(et,x),lr)}function dr(Qs,lr){throw lr=lr!==void 0?lr:Br(et,x),gn(Qs,lr)}function Ar(Qs,lr){return{type:"literal",text:Qs,ignoreCase:lr}}function or(Qs,lr,ga){return{type:"class",parts:Qs,inverted:lr,ignoreCase:ga}}function Fr(){return{type:"any"}}function $r(){return{type:"end"}}function Or(Qs){return{type:"other",description:Qs}}function In(Qs){var lr=Ue[Qs],ga;if(lr)return lr;for(ga=Qs-1;!Ue[ga];)ga--;for(lr=Ue[ga],lr={line:lr.line,column:lr.column};gaJe&&(Je=x,Xe=[]),Xe.push(Qs))}function gn(Qs,lr){return new zge(Qs,null,null,lr)}function Gn(Qs,lr,ga){return new zge(zge.buildMessage(Qs,lr),Qs,lr,ga)}function we(){var Qs,lr,ga,vi,Qu,Yu,YA,ud;if(Qs=x,lr=Zi(),lr!==r){for(ga=[],vi=x,Qu=ka(),Qu!==r?(e.charCodeAt(x)===124?(Yu=o,x++):(Yu=r,ft===0&&tr(g)),Yu===r&&(e.charCodeAt(x)===38?(Yu=p,x++):(Yu=r,ft===0&&tr(f)),Yu===r&&(e.charCodeAt(x)===94?(Yu=m,x++):(Yu=r,ft===0&&tr(y)))),Yu!==r?(YA=ka(),YA!==r?(ud=Zi(),ud!==r?(Qu=[Qu,Yu,YA,ud],vi=Qu):(x=vi,vi=r)):(x=vi,vi=r)):(x=vi,vi=r)):(x=vi,vi=r);vi!==r;)ga.push(vi),vi=x,Qu=ka(),Qu!==r?(e.charCodeAt(x)===124?(Yu=o,x++):(Yu=r,ft===0&&tr(g)),Yu===r&&(e.charCodeAt(x)===38?(Yu=p,x++):(Yu=r,ft===0&&tr(f)),Yu===r&&(e.charCodeAt(x)===94?(Yu=m,x++):(Yu=r,ft===0&&tr(y)))),Yu!==r?(YA=ka(),YA!==r?(ud=Zi(),ud!==r?(Qu=[Qu,Yu,YA,ud],vi=Qu):(x=vi,vi=r)):(x=vi,vi=r)):(x=vi,vi=r)):(x=vi,vi=r);ga!==r?(et=Qs,lr=B(lr,ga),Qs=lr):(x=Qs,Qs=r)}else x=Qs,Qs=r;return Qs}function Zi(){var Qs,lr,ga,vi,Qu,Yu;return Qs=x,e.charCodeAt(x)===33?(lr=v,x++):(lr=r,ft===0&&tr(G)),lr!==r?(ga=Zi(),ga!==r?(et=Qs,lr=T(ga),Qs=lr):(x=Qs,Qs=r)):(x=Qs,Qs=r),Qs===r&&(Qs=x,e.charCodeAt(x)===40?(lr=O,x++):(lr=r,ft===0&&tr(X)),lr!==r?(ga=ka(),ga!==r?(vi=we(),vi!==r?(Qu=ka(),Qu!==r?(e.charCodeAt(x)===41?(Yu=U,x++):(Yu=r,ft===0&&tr(le)),Yu!==r?(et=Qs,lr=ae(vi),Qs=lr):(x=Qs,Qs=r)):(x=Qs,Qs=r)):(x=Qs,Qs=r)):(x=Qs,Qs=r)):(x=Qs,Qs=r),Qs===r&&(Qs=Za())),Qs}function Za(){var Qs,lr,ga,vi,Qu;if(Qs=x,lr=ka(),lr!==r){if(ga=x,vi=[],ge.test(e.charAt(x))?(Qu=e.charAt(x),x++):(Qu=r,ft===0&&tr(fe)),Qu!==r)for(;Qu!==r;)vi.push(Qu),ge.test(e.charAt(x))?(Qu=e.charAt(x),x++):(Qu=r,ft===0&&tr(fe));else vi=r;vi!==r?ga=e.substring(ga,x):ga=vi,ga!==r?(et=x,vi=pe(ga),vi?vi=void 0:vi=r,vi!==r?(et=Qs,lr=he(ga),Qs=lr):(x=Qs,Qs=r)):(x=Qs,Qs=r)}else x=Qs,Qs=r;return Qs}function ka(){var Qs,lr;for(ft++,Qs=[],Te.test(e.charAt(x))?(lr=e.charAt(x),x++):(lr=r,ft===0&&tr(ke));lr!==r;)Qs.push(lr),Te.test(e.charAt(x))?(lr=e.charAt(x),x++):(lr=r,ft===0&&tr(ke));return ft--,Qs===r&&(lr=r,ft===0&&tr(be)),Qs}if(Gt=a(),Gt!==r&&x===e.length)return Gt;throw Gt!==r&&x{var{parse:YNs}=wen();Trt.makeParser=(e=/[a-z]+/)=>(t,r)=>YNs(t,{queryPattern:e,checkFn:r});Trt.parse=Trt.makeParser()});var Ren=z((xLc,Nen)=>{"use strict";Nen.exports={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],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],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],rebeccapurple:[102,51,153],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]}});var aYt=z((kLc,xen)=>{var f9e=Ren(),Den={};for(let e of Object.keys(f9e))Den[f9e[e]]=e;var td={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};xen.exports=td;for(let e of Object.keys(td)){if(!("channels"in td[e]))throw new Error("missing channels property: "+e);if(!("labels"in td[e]))throw new Error("missing channel labels property: "+e);if(td[e].labels.length!==td[e].channels)throw new Error("channel and label counts mismatch: "+e);let{channels:t,labels:r}=td[e];delete td[e].channels,delete td[e].labels,Object.defineProperty(td[e],"channels",{value:t}),Object.defineProperty(td[e],"labels",{value:r})}td.rgb.hsl=function(e){let t=e[0]/255,r=e[1]/255,s=e[2]/255,a=Math.min(t,r,s),o=Math.max(t,r,s),g=o-a,p,f;o===a?p=0:t===o?p=(r-s)/g:r===o?p=2+(s-t)/g:s===o&&(p=4+(t-r)/g),p=Math.min(p*60,360),p<0&&(p+=360);let m=(a+o)/2;return o===a?f=0:m<=.5?f=g/(o+a):f=g/(2-o-a),[p,f*100,m*100]};td.rgb.hsv=function(e){let t,r,s,a,o,g=e[0]/255,p=e[1]/255,f=e[2]/255,m=Math.max(g,p,f),y=m-Math.min(g,p,f),B=function(v){return(m-v)/6/y+1/2};return y===0?(a=0,o=0):(o=y/m,t=B(g),r=B(p),s=B(f),g===m?a=s-r:p===m?a=1/3+t-s:f===m&&(a=2/3+r-t),a<0?a+=1:a>1&&(a-=1)),[a*360,o*100,m*100]};td.rgb.hwb=function(e){let t=e[0],r=e[1],s=e[2],a=td.rgb.hsl(e)[0],o=1/255*Math.min(t,Math.min(r,s));return s=1-1/255*Math.max(t,Math.max(r,s)),[a,o*100,s*100]};td.rgb.cmyk=function(e){let t=e[0]/255,r=e[1]/255,s=e[2]/255,a=Math.min(1-t,1-r,1-s),o=(1-t-a)/(1-a)||0,g=(1-r-a)/(1-a)||0,p=(1-s-a)/(1-a)||0;return[o*100,g*100,p*100,a*100]};function HNs(e,t){return(e[0]-t[0])**2+(e[1]-t[1])**2+(e[2]-t[2])**2}td.rgb.keyword=function(e){let t=Den[e];if(t)return t;let r=1/0,s;for(let a of Object.keys(f9e)){let o=f9e[a],g=HNs(e,o);g.04045?((t+.055)/1.055)**2.4:t/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92,s=s>.04045?((s+.055)/1.055)**2.4:s/12.92;let a=t*.4124+r*.3576+s*.1805,o=t*.2126+r*.7152+s*.0722,g=t*.0193+r*.1192+s*.9505;return[a*100,o*100,g*100]};td.rgb.lab=function(e){let t=td.rgb.xyz(e),r=t[0],s=t[1],a=t[2];r/=95.047,s/=100,a/=108.883,r=r>.008856?r**(1/3):7.787*r+16/116,s=s>.008856?s**(1/3):7.787*s+16/116,a=a>.008856?a**(1/3):7.787*a+16/116;let o=116*s-16,g=500*(r-s),p=200*(s-a);return[o,g,p]};td.hsl.rgb=function(e){let t=e[0]/360,r=e[1]/100,s=e[2]/100,a,o,g;if(r===0)return g=s*255,[g,g,g];s<.5?a=s*(1+r):a=s+r-s*r;let p=2*s-a,f=[0,0,0];for(let m=0;m<3;m++)o=t+1/3*-(m-1),o<0&&o++,o>1&&o--,6*o<1?g=p+(a-p)*6*o:2*o<1?g=a:3*o<2?g=p+(a-p)*(2/3-o)*6:g=p,f[m]=g*255;return f};td.hsl.hsv=function(e){let t=e[0],r=e[1]/100,s=e[2]/100,a=r,o=Math.max(s,.01);s*=2,r*=s<=1?s:2-s,a*=o<=1?o:2-o;let g=(s+r)/2,p=s===0?2*a/(o+a):2*r/(s+r);return[t,p*100,g*100]};td.hsv.rgb=function(e){let t=e[0]/60,r=e[1]/100,s=e[2]/100,a=Math.floor(t)%6,o=t-Math.floor(t),g=255*s*(1-r),p=255*s*(1-r*o),f=255*s*(1-r*(1-o));switch(s*=255,a){case 0:return[s,f,g];case 1:return[p,s,g];case 2:return[g,s,f];case 3:return[g,p,s];case 4:return[f,g,s];case 5:return[s,g,p]}};td.hsv.hsl=function(e){let t=e[0],r=e[1]/100,s=e[2]/100,a=Math.max(s,.01),o,g;g=(2-r)*s;let p=(2-r)*a;return o=r*a,o/=p<=1?p:2-p,o=o||0,g/=2,[t,o*100,g*100]};td.hwb.rgb=function(e){let t=e[0]/360,r=e[1]/100,s=e[2]/100,a=r+s,o;a>1&&(r/=a,s/=a);let g=Math.floor(6*t),p=1-s;o=6*t-g,g&1&&(o=1-o);let f=r+o*(p-r),m,y,B;switch(g){default:case 6:case 0:m=p,y=f,B=r;break;case 1:m=f,y=p,B=r;break;case 2:m=r,y=p,B=f;break;case 3:m=r,y=f,B=p;break;case 4:m=f,y=r,B=p;break;case 5:m=p,y=r,B=f;break}return[m*255,y*255,B*255]};td.cmyk.rgb=function(e){let t=e[0]/100,r=e[1]/100,s=e[2]/100,a=e[3]/100,o=1-Math.min(1,t*(1-a)+a),g=1-Math.min(1,r*(1-a)+a),p=1-Math.min(1,s*(1-a)+a);return[o*255,g*255,p*255]};td.xyz.rgb=function(e){let t=e[0]/100,r=e[1]/100,s=e[2]/100,a,o,g;return a=t*3.2406+r*-1.5372+s*-.4986,o=t*-.9689+r*1.8758+s*.0415,g=t*.0557+r*-.204+s*1.057,a=a>.0031308?1.055*a**(1/2.4)-.055:a*12.92,o=o>.0031308?1.055*o**(1/2.4)-.055:o*12.92,g=g>.0031308?1.055*g**(1/2.4)-.055:g*12.92,a=Math.min(Math.max(0,a),1),o=Math.min(Math.max(0,o),1),g=Math.min(Math.max(0,g),1),[a*255,o*255,g*255]};td.xyz.lab=function(e){let t=e[0],r=e[1],s=e[2];t/=95.047,r/=100,s/=108.883,t=t>.008856?t**(1/3):7.787*t+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,s=s>.008856?s**(1/3):7.787*s+16/116;let a=116*r-16,o=500*(t-r),g=200*(r-s);return[a,o,g]};td.lab.xyz=function(e){let t=e[0],r=e[1],s=e[2],a,o,g;o=(t+16)/116,a=r/500+o,g=o-s/200;let p=o**3,f=a**3,m=g**3;return o=p>.008856?p:(o-16/116)/7.787,a=f>.008856?f:(a-16/116)/7.787,g=m>.008856?m:(g-16/116)/7.787,a*=95.047,o*=100,g*=108.883,[a,o,g]};td.lab.lch=function(e){let t=e[0],r=e[1],s=e[2],a;a=Math.atan2(s,r)*360/2/Math.PI,a<0&&(a+=360);let g=Math.sqrt(r*r+s*s);return[t,g,a]};td.lch.lab=function(e){let t=e[0],r=e[1],a=e[2]/360*2*Math.PI,o=r*Math.cos(a),g=r*Math.sin(a);return[t,o,g]};td.rgb.ansi16=function(e,t=null){let[r,s,a]=e,o=t===null?td.rgb.hsv(e)[2]:t;if(o=Math.round(o/50),o===0)return 30;let g=30+(Math.round(a/255)<<2|Math.round(s/255)<<1|Math.round(r/255));return o===2&&(g+=60),g};td.hsv.ansi16=function(e){return td.rgb.ansi16(td.hsv.rgb(e),e[2])};td.rgb.ansi256=function(e){let t=e[0],r=e[1],s=e[2];return t===r&&r===s?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(s/255*5)};td.ansi16.rgb=function(e){let t=e%10;if(t===0||t===7)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];let r=(~~(e>50)+1)*.5,s=(t&1)*r*255,a=(t>>1&1)*r*255,o=(t>>2&1)*r*255;return[s,a,o]};td.ansi256.rgb=function(e){if(e>=232){let o=(e-232)*10+8;return[o,o,o]}e-=16;let t,r=Math.floor(e/36)/5*255,s=Math.floor((t=e%36)/6)/5*255,a=t%6/5*255;return[r,s,a]};td.rgb.hex=function(e){let r=(((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255)).toString(16).toUpperCase();return"000000".substring(r.length)+r};td.hex.rgb=function(e){let t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];let r=t[0];t[0].length===3&&(r=r.split("").map(p=>p+p).join(""));let s=parseInt(r,16),a=s>>16&255,o=s>>8&255,g=s&255;return[a,o,g]};td.rgb.hcg=function(e){let t=e[0]/255,r=e[1]/255,s=e[2]/255,a=Math.max(Math.max(t,r),s),o=Math.min(Math.min(t,r),s),g=a-o,p,f;return g<1?p=o/(1-g):p=0,g<=0?f=0:a===t?f=(r-s)/g%6:a===r?f=2+(s-t)/g:f=4+(t-r)/g,f/=6,f%=1,[f*360,g*100,p*100]};td.hsl.hcg=function(e){let t=e[1]/100,r=e[2]/100,s=r<.5?2*t*r:2*t*(1-r),a=0;return s<1&&(a=(r-.5*s)/(1-s)),[e[0],s*100,a*100]};td.hsv.hcg=function(e){let t=e[1]/100,r=e[2]/100,s=t*r,a=0;return s<1&&(a=(r-s)/(1-s)),[e[0],s*100,a*100]};td.hcg.rgb=function(e){let t=e[0]/360,r=e[1]/100,s=e[2]/100;if(r===0)return[s*255,s*255,s*255];let a=[0,0,0],o=t%1*6,g=o%1,p=1-g,f=0;switch(Math.floor(o)){case 0:a[0]=1,a[1]=g,a[2]=0;break;case 1:a[0]=p,a[1]=1,a[2]=0;break;case 2:a[0]=0,a[1]=1,a[2]=g;break;case 3:a[0]=0,a[1]=p,a[2]=1;break;case 4:a[0]=g,a[1]=0,a[2]=1;break;default:a[0]=1,a[1]=0,a[2]=p}return f=(1-r)*s,[(r*a[0]+f)*255,(r*a[1]+f)*255,(r*a[2]+f)*255]};td.hcg.hsv=function(e){let t=e[1]/100,r=e[2]/100,s=t+r*(1-t),a=0;return s>0&&(a=t/s),[e[0],a*100,s*100]};td.hcg.hsl=function(e){let t=e[1]/100,s=e[2]/100*(1-t)+.5*t,a=0;return s>0&&s<.5?a=t/(2*s):s>=.5&&s<1&&(a=t/(2*(1-s))),[e[0],a*100,s*100]};td.hcg.hwb=function(e){let t=e[1]/100,r=e[2]/100,s=t+r*(1-t);return[e[0],(s-t)*100,(1-s)*100]};td.hwb.hcg=function(e){let t=e[1]/100,s=1-e[2]/100,a=s-t,o=0;return a<1&&(o=(s-a)/(1-a)),[e[0],a*100,o*100]};td.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]};td.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]};td.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]};td.gray.hsl=function(e){return[0,0,e[0]]};td.gray.hsv=td.gray.hsl;td.gray.hwb=function(e){return[0,100,e[0]]};td.gray.cmyk=function(e){return[0,0,0,e[0]]};td.gray.lab=function(e){return[e[0],0,0]};td.gray.hex=function(e){let t=Math.round(e[0]/100*255)&255,s=((t<<16)+(t<<8)+t).toString(16).toUpperCase();return"000000".substring(s.length)+s};td.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]}});var Gen=z((GLc,ken)=>{var Nrt=aYt();function XNs(){let e={},t=Object.keys(Nrt);for(let r=t.length,s=0;s{var cYt=aYt(),jNs=Gen(),abe={},zNs=Object.keys(cYt);function qNs(e){let t=function(...r){let s=r[0];return s==null?s:(s.length>1&&(r=s),e(r))};return"conversion"in e&&(t.conversion=e.conversion),t}function $Ns(e){let t=function(...r){let s=r[0];if(s==null)return s;s.length>1&&(r=s);let a=e(r);if(typeof a=="object")for(let o=a.length,g=0;g{abe[e]={},Object.defineProperty(abe[e],"channels",{value:cYt[e].channels}),Object.defineProperty(abe[e],"labels",{value:cYt[e].labels});let t=jNs(e);Object.keys(t).forEach(s=>{let a=t[s];abe[e][s]=$Ns(a),abe[e][s].raw=qNs(a)})});Fen.exports=abe});var I9e=z((ZLc,Oen)=>{"use strict";var Len=(e,t)=>(...r)=>`\x1B[${e(...r)+t}m`,Ven=(e,t)=>(...r)=>{let s=e(...r);return`\x1B[${38+t};5;${s}m`},Wen=(e,t)=>(...r)=>{let s=e(...r);return`\x1B[${38+t};2;${s[0]};${s[1]};${s[2]}m`},Rrt=e=>e,Pen=(e,t,r)=>[e,t,r],cbe=(e,t,r)=>{Object.defineProperty(e,t,{get:()=>{let s=r();return Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0}),s},enumerable:!0,configurable:!0})},lYt,lbe=(e,t,r,s)=>{lYt===void 0&&(lYt=Zen());let a=s?10:0,o={};for(let[g,p]of Object.entries(lYt)){let f=g==="ansi16"?"ansi":g;g===t?o[f]=e(r,a):typeof p=="object"&&(o[f]=e(p[t],a))}return o};function eRs(){let e=new Map,t={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};t.color.gray=t.color.blackBright,t.bgColor.bgGray=t.bgColor.bgBlackBright,t.color.grey=t.color.blackBright,t.bgColor.bgGrey=t.bgColor.bgBlackBright;for(let[r,s]of Object.entries(t)){for(let[a,o]of Object.entries(s))t[a]={open:`\x1B[${o[0]}m`,close:`\x1B[${o[1]}m`},s[a]=t[a],e.set(o[0],o[1]);Object.defineProperty(t,r,{value:s,enumerable:!1})}return Object.defineProperty(t,"codes",{value:e,enumerable:!1}),t.color.close="\x1B[39m",t.bgColor.close="\x1B[49m",cbe(t.color,"ansi",()=>lbe(Len,"ansi16",Rrt,!1)),cbe(t.color,"ansi256",()=>lbe(Ven,"ansi256",Rrt,!1)),cbe(t.color,"ansi16m",()=>lbe(Wen,"rgb",Pen,!1)),cbe(t.bgColor,"ansi",()=>lbe(Len,"ansi16",Rrt,!0)),cbe(t.bgColor,"ansi256",()=>lbe(Ven,"ansi256",Rrt,!0)),cbe(t.bgColor,"ansi16m",()=>lbe(Wen,"rgb",Pen,!0)),t}Object.defineProperty(Oen,"exports",{enumerable:!0,get:eRs})});var uYt=z((LLc,Men)=>{"use strict";Men.exports=(e,t=process.argv)=>{let r=e.startsWith("-")?"":e.length===1?"-":"--",s=t.indexOf(r+e),a=t.indexOf("--");return s!==-1&&(a===-1||s{"use strict";var tRs=Dt("os"),Qen=Dt("tty"),uO=uYt(),{env:iR}=process,nne;uO("no-color")||uO("no-colors")||uO("color=false")||uO("color=never")?nne=0:(uO("color")||uO("colors")||uO("color=true")||uO("color=always"))&&(nne=1);"FORCE_COLOR"in iR&&(iR.FORCE_COLOR==="true"?nne=1:iR.FORCE_COLOR==="false"?nne=0:nne=iR.FORCE_COLOR.length===0?1:Math.min(parseInt(iR.FORCE_COLOR,10),3));function gYt(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function AYt(e,t){if(nne===0)return 0;if(uO("color=16m")||uO("color=full")||uO("color=truecolor"))return 3;if(uO("color=256"))return 2;if(e&&!t&&nne===void 0)return 0;let r=nne||0;if(iR.TERM==="dumb")return r;if(process.platform==="win32"){let s=tRs.release().split(".");return Number(s[0])>=10&&Number(s[2])>=10586?Number(s[2])>=14931?3:2:1}if("CI"in iR)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(s=>s in iR)||iR.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in iR)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(iR.TEAMCITY_VERSION)?1:0;if(iR.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in iR){let s=parseInt((iR.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(iR.TERM_PROGRAM){case"iTerm.app":return s>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(iR.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(iR.TERM)||"COLORTERM"in iR?1:r}function rRs(e){let t=AYt(e,e&&e.isTTY);return gYt(t)}Yen.exports={supportsColor:rRs,stdout:gYt(AYt(!0,Qen.isatty(1))),stderr:gYt(AYt(!0,Qen.isatty(2)))}});var Xen=z((WLc,Hen)=>{"use strict";var nRs=(e,t,r)=>{let s=e.indexOf(t);if(s===-1)return e;let a=t.length,o=0,g="";do g+=e.substr(o,s-o)+t+r,o=s+a,s=e.indexOf(t,o);while(s!==-1);return g+=e.substr(o),g},iRs=(e,t,r,s)=>{let a=0,o="";do{let g=e[s-1]==="\r";o+=e.substr(a,(g?s-1:s)-a)+t+(g?`\r +`,"\r"],!1,!1),x=0,et=0,Ue=[{line:1,column:1}],Je=0,Xe=[],ft=0,Gt;if("startRule"in t){if(!(t.startRule in s))throw new Error(`Can't start parsing from rule "`+t.startRule+'".');a=s[t.startRule]}function er(){return e.substring(et,x)}function Ur(){return Br(et,x)}function Ot(Qs,lr){throw lr=lr!==void 0?lr:Br(et,x),Gn([Or(Qs)],e.substring(et,x),lr)}function dr(Qs,lr){throw lr=lr!==void 0?lr:Br(et,x),gn(Qs,lr)}function Ar(Qs,lr){return{type:"literal",text:Qs,ignoreCase:lr}}function or(Qs,lr,ua){return{type:"class",parts:Qs,inverted:lr,ignoreCase:ua}}function Fr(){return{type:"any"}}function $r(){return{type:"end"}}function Or(Qs){return{type:"other",description:Qs}}function In(Qs){var lr=Ue[Qs],ua;if(lr)return lr;for(ua=Qs-1;!Ue[ua];)ua--;for(lr=Ue[ua],lr={line:lr.line,column:lr.column};uaJe&&(Je=x,Xe=[]),Xe.push(Qs))}function gn(Qs,lr){return new oAe(Qs,null,null,lr)}function Gn(Qs,lr,ua){return new oAe(oAe.buildMessage(Qs,lr),Qs,lr,ua)}function we(){var Qs,lr,ua,vi,Hu,Yu,YA,gd;if(Qs=x,lr=Zi(),lr!==r){for(ua=[],vi=x,Hu=xa(),Hu!==r?(e.charCodeAt(x)===124?(Yu=o,x++):(Yu=r,ft===0&&tr(g)),Yu===r&&(e.charCodeAt(x)===38?(Yu=p,x++):(Yu=r,ft===0&&tr(f)),Yu===r&&(e.charCodeAt(x)===94?(Yu=m,x++):(Yu=r,ft===0&&tr(y)))),Yu!==r?(YA=xa(),YA!==r?(gd=Zi(),gd!==r?(Hu=[Hu,Yu,YA,gd],vi=Hu):(x=vi,vi=r)):(x=vi,vi=r)):(x=vi,vi=r)):(x=vi,vi=r);vi!==r;)ua.push(vi),vi=x,Hu=xa(),Hu!==r?(e.charCodeAt(x)===124?(Yu=o,x++):(Yu=r,ft===0&&tr(g)),Yu===r&&(e.charCodeAt(x)===38?(Yu=p,x++):(Yu=r,ft===0&&tr(f)),Yu===r&&(e.charCodeAt(x)===94?(Yu=m,x++):(Yu=r,ft===0&&tr(y)))),Yu!==r?(YA=xa(),YA!==r?(gd=Zi(),gd!==r?(Hu=[Hu,Yu,YA,gd],vi=Hu):(x=vi,vi=r)):(x=vi,vi=r)):(x=vi,vi=r)):(x=vi,vi=r);ua!==r?(et=Qs,lr=B(lr,ua),Qs=lr):(x=Qs,Qs=r)}else x=Qs,Qs=r;return Qs}function Zi(){var Qs,lr,ua,vi,Hu,Yu;return Qs=x,e.charCodeAt(x)===33?(lr=v,x++):(lr=r,ft===0&&tr(k)),lr!==r?(ua=Zi(),ua!==r?(et=Qs,lr=T(ua),Qs=lr):(x=Qs,Qs=r)):(x=Qs,Qs=r),Qs===r&&(Qs=x,e.charCodeAt(x)===40?(lr=O,x++):(lr=r,ft===0&&tr(X)),lr!==r?(ua=xa(),ua!==r?(vi=we(),vi!==r?(Hu=xa(),Hu!==r?(e.charCodeAt(x)===41?(Yu=U,x++):(Yu=r,ft===0&&tr(le)),Yu!==r?(et=Qs,lr=ae(vi),Qs=lr):(x=Qs,Qs=r)):(x=Qs,Qs=r)):(x=Qs,Qs=r)):(x=Qs,Qs=r)):(x=Qs,Qs=r),Qs===r&&(Qs=Fa())),Qs}function Fa(){var Qs,lr,ua,vi,Hu;if(Qs=x,lr=xa(),lr!==r){if(ua=x,vi=[],ge.test(e.charAt(x))?(Hu=e.charAt(x),x++):(Hu=r,ft===0&&tr(fe)),Hu!==r)for(;Hu!==r;)vi.push(Hu),ge.test(e.charAt(x))?(Hu=e.charAt(x),x++):(Hu=r,ft===0&&tr(fe));else vi=r;vi!==r?ua=e.substring(ua,x):ua=vi,ua!==r?(et=x,vi=pe(ua),vi?vi=void 0:vi=r,vi!==r?(et=Qs,lr=he(ua),Qs=lr):(x=Qs,Qs=r)):(x=Qs,Qs=r)}else x=Qs,Qs=r;return Qs}function xa(){var Qs,lr;for(ft++,Qs=[],Te.test(e.charAt(x))?(lr=e.charAt(x),x++):(lr=r,ft===0&&tr(ke));lr!==r;)Qs.push(lr),Te.test(e.charAt(x))?(lr=e.charAt(x),x++):(lr=r,ft===0&&tr(ke));return ft--,Qs===r&&(lr=r,ft===0&&tr(be)),Qs}if(Gt=a(),Gt!==r&&x===e.length)return Gt;throw Gt!==r&&x{var{parse:zNs}=ken();Rrt.makeParser=(e=/[a-z]+/)=>(t,r)=>zNs(t,{queryPattern:e,checkFn:r});Rrt.parse=Rrt.makeParser()});var Zen=z((ULc,Fen)=>{"use strict";Fen.exports={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],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],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],rebeccapurple:[102,51,153],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]}});var uMt=z((KLc,Ven)=>{var C9e=Zen(),Len={};for(let e of Object.keys(C9e))Len[C9e[e]]=e;var rd={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};Ven.exports=rd;for(let e of Object.keys(rd)){if(!("channels"in rd[e]))throw new Error("missing channels property: "+e);if(!("labels"in rd[e]))throw new Error("missing channel labels property: "+e);if(rd[e].labels.length!==rd[e].channels)throw new Error("channel and label counts mismatch: "+e);let{channels:t,labels:r}=rd[e];delete rd[e].channels,delete rd[e].labels,Object.defineProperty(rd[e],"channels",{value:t}),Object.defineProperty(rd[e],"labels",{value:r})}rd.rgb.hsl=function(e){let t=e[0]/255,r=e[1]/255,s=e[2]/255,a=Math.min(t,r,s),o=Math.max(t,r,s),g=o-a,p,f;o===a?p=0:t===o?p=(r-s)/g:r===o?p=2+(s-t)/g:s===o&&(p=4+(t-r)/g),p=Math.min(p*60,360),p<0&&(p+=360);let m=(a+o)/2;return o===a?f=0:m<=.5?f=g/(o+a):f=g/(2-o-a),[p,f*100,m*100]};rd.rgb.hsv=function(e){let t,r,s,a,o,g=e[0]/255,p=e[1]/255,f=e[2]/255,m=Math.max(g,p,f),y=m-Math.min(g,p,f),B=function(v){return(m-v)/6/y+1/2};return y===0?(a=0,o=0):(o=y/m,t=B(g),r=B(p),s=B(f),g===m?a=s-r:p===m?a=1/3+t-s:f===m&&(a=2/3+r-t),a<0?a+=1:a>1&&(a-=1)),[a*360,o*100,m*100]};rd.rgb.hwb=function(e){let t=e[0],r=e[1],s=e[2],a=rd.rgb.hsl(e)[0],o=1/255*Math.min(t,Math.min(r,s));return s=1-1/255*Math.max(t,Math.max(r,s)),[a,o*100,s*100]};rd.rgb.cmyk=function(e){let t=e[0]/255,r=e[1]/255,s=e[2]/255,a=Math.min(1-t,1-r,1-s),o=(1-t-a)/(1-a)||0,g=(1-r-a)/(1-a)||0,p=(1-s-a)/(1-a)||0;return[o*100,g*100,p*100,a*100]};function qNs(e,t){return(e[0]-t[0])**2+(e[1]-t[1])**2+(e[2]-t[2])**2}rd.rgb.keyword=function(e){let t=Len[e];if(t)return t;let r=1/0,s;for(let a of Object.keys(C9e)){let o=C9e[a],g=qNs(e,o);g.04045?((t+.055)/1.055)**2.4:t/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92,s=s>.04045?((s+.055)/1.055)**2.4:s/12.92;let a=t*.4124+r*.3576+s*.1805,o=t*.2126+r*.7152+s*.0722,g=t*.0193+r*.1192+s*.9505;return[a*100,o*100,g*100]};rd.rgb.lab=function(e){let t=rd.rgb.xyz(e),r=t[0],s=t[1],a=t[2];r/=95.047,s/=100,a/=108.883,r=r>.008856?r**(1/3):7.787*r+16/116,s=s>.008856?s**(1/3):7.787*s+16/116,a=a>.008856?a**(1/3):7.787*a+16/116;let o=116*s-16,g=500*(r-s),p=200*(s-a);return[o,g,p]};rd.hsl.rgb=function(e){let t=e[0]/360,r=e[1]/100,s=e[2]/100,a,o,g;if(r===0)return g=s*255,[g,g,g];s<.5?a=s*(1+r):a=s+r-s*r;let p=2*s-a,f=[0,0,0];for(let m=0;m<3;m++)o=t+1/3*-(m-1),o<0&&o++,o>1&&o--,6*o<1?g=p+(a-p)*6*o:2*o<1?g=a:3*o<2?g=p+(a-p)*(2/3-o)*6:g=p,f[m]=g*255;return f};rd.hsl.hsv=function(e){let t=e[0],r=e[1]/100,s=e[2]/100,a=r,o=Math.max(s,.01);s*=2,r*=s<=1?s:2-s,a*=o<=1?o:2-o;let g=(s+r)/2,p=s===0?2*a/(o+a):2*r/(s+r);return[t,p*100,g*100]};rd.hsv.rgb=function(e){let t=e[0]/60,r=e[1]/100,s=e[2]/100,a=Math.floor(t)%6,o=t-Math.floor(t),g=255*s*(1-r),p=255*s*(1-r*o),f=255*s*(1-r*(1-o));switch(s*=255,a){case 0:return[s,f,g];case 1:return[p,s,g];case 2:return[g,s,f];case 3:return[g,p,s];case 4:return[f,g,s];case 5:return[s,g,p]}};rd.hsv.hsl=function(e){let t=e[0],r=e[1]/100,s=e[2]/100,a=Math.max(s,.01),o,g;g=(2-r)*s;let p=(2-r)*a;return o=r*a,o/=p<=1?p:2-p,o=o||0,g/=2,[t,o*100,g*100]};rd.hwb.rgb=function(e){let t=e[0]/360,r=e[1]/100,s=e[2]/100,a=r+s,o;a>1&&(r/=a,s/=a);let g=Math.floor(6*t),p=1-s;o=6*t-g,g&1&&(o=1-o);let f=r+o*(p-r),m,y,B;switch(g){default:case 6:case 0:m=p,y=f,B=r;break;case 1:m=f,y=p,B=r;break;case 2:m=r,y=p,B=f;break;case 3:m=r,y=f,B=p;break;case 4:m=f,y=r,B=p;break;case 5:m=p,y=r,B=f;break}return[m*255,y*255,B*255]};rd.cmyk.rgb=function(e){let t=e[0]/100,r=e[1]/100,s=e[2]/100,a=e[3]/100,o=1-Math.min(1,t*(1-a)+a),g=1-Math.min(1,r*(1-a)+a),p=1-Math.min(1,s*(1-a)+a);return[o*255,g*255,p*255]};rd.xyz.rgb=function(e){let t=e[0]/100,r=e[1]/100,s=e[2]/100,a,o,g;return a=t*3.2406+r*-1.5372+s*-.4986,o=t*-.9689+r*1.8758+s*.0415,g=t*.0557+r*-.204+s*1.057,a=a>.0031308?1.055*a**(1/2.4)-.055:a*12.92,o=o>.0031308?1.055*o**(1/2.4)-.055:o*12.92,g=g>.0031308?1.055*g**(1/2.4)-.055:g*12.92,a=Math.min(Math.max(0,a),1),o=Math.min(Math.max(0,o),1),g=Math.min(Math.max(0,g),1),[a*255,o*255,g*255]};rd.xyz.lab=function(e){let t=e[0],r=e[1],s=e[2];t/=95.047,r/=100,s/=108.883,t=t>.008856?t**(1/3):7.787*t+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,s=s>.008856?s**(1/3):7.787*s+16/116;let a=116*r-16,o=500*(t-r),g=200*(r-s);return[a,o,g]};rd.lab.xyz=function(e){let t=e[0],r=e[1],s=e[2],a,o,g;o=(t+16)/116,a=r/500+o,g=o-s/200;let p=o**3,f=a**3,m=g**3;return o=p>.008856?p:(o-16/116)/7.787,a=f>.008856?f:(a-16/116)/7.787,g=m>.008856?m:(g-16/116)/7.787,a*=95.047,o*=100,g*=108.883,[a,o,g]};rd.lab.lch=function(e){let t=e[0],r=e[1],s=e[2],a;a=Math.atan2(s,r)*360/2/Math.PI,a<0&&(a+=360);let g=Math.sqrt(r*r+s*s);return[t,g,a]};rd.lch.lab=function(e){let t=e[0],r=e[1],a=e[2]/360*2*Math.PI,o=r*Math.cos(a),g=r*Math.sin(a);return[t,o,g]};rd.rgb.ansi16=function(e,t=null){let[r,s,a]=e,o=t===null?rd.rgb.hsv(e)[2]:t;if(o=Math.round(o/50),o===0)return 30;let g=30+(Math.round(a/255)<<2|Math.round(s/255)<<1|Math.round(r/255));return o===2&&(g+=60),g};rd.hsv.ansi16=function(e){return rd.rgb.ansi16(rd.hsv.rgb(e),e[2])};rd.rgb.ansi256=function(e){let t=e[0],r=e[1],s=e[2];return t===r&&r===s?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(s/255*5)};rd.ansi16.rgb=function(e){let t=e%10;if(t===0||t===7)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];let r=(~~(e>50)+1)*.5,s=(t&1)*r*255,a=(t>>1&1)*r*255,o=(t>>2&1)*r*255;return[s,a,o]};rd.ansi256.rgb=function(e){if(e>=232){let o=(e-232)*10+8;return[o,o,o]}e-=16;let t,r=Math.floor(e/36)/5*255,s=Math.floor((t=e%36)/6)/5*255,a=t%6/5*255;return[r,s,a]};rd.rgb.hex=function(e){let r=(((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255)).toString(16).toUpperCase();return"000000".substring(r.length)+r};rd.hex.rgb=function(e){let t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];let r=t[0];t[0].length===3&&(r=r.split("").map(p=>p+p).join(""));let s=parseInt(r,16),a=s>>16&255,o=s>>8&255,g=s&255;return[a,o,g]};rd.rgb.hcg=function(e){let t=e[0]/255,r=e[1]/255,s=e[2]/255,a=Math.max(Math.max(t,r),s),o=Math.min(Math.min(t,r),s),g=a-o,p,f;return g<1?p=o/(1-g):p=0,g<=0?f=0:a===t?f=(r-s)/g%6:a===r?f=2+(s-t)/g:f=4+(t-r)/g,f/=6,f%=1,[f*360,g*100,p*100]};rd.hsl.hcg=function(e){let t=e[1]/100,r=e[2]/100,s=r<.5?2*t*r:2*t*(1-r),a=0;return s<1&&(a=(r-.5*s)/(1-s)),[e[0],s*100,a*100]};rd.hsv.hcg=function(e){let t=e[1]/100,r=e[2]/100,s=t*r,a=0;return s<1&&(a=(r-s)/(1-s)),[e[0],s*100,a*100]};rd.hcg.rgb=function(e){let t=e[0]/360,r=e[1]/100,s=e[2]/100;if(r===0)return[s*255,s*255,s*255];let a=[0,0,0],o=t%1*6,g=o%1,p=1-g,f=0;switch(Math.floor(o)){case 0:a[0]=1,a[1]=g,a[2]=0;break;case 1:a[0]=p,a[1]=1,a[2]=0;break;case 2:a[0]=0,a[1]=1,a[2]=g;break;case 3:a[0]=0,a[1]=p,a[2]=1;break;case 4:a[0]=g,a[1]=0,a[2]=1;break;default:a[0]=1,a[1]=0,a[2]=p}return f=(1-r)*s,[(r*a[0]+f)*255,(r*a[1]+f)*255,(r*a[2]+f)*255]};rd.hcg.hsv=function(e){let t=e[1]/100,r=e[2]/100,s=t+r*(1-t),a=0;return s>0&&(a=t/s),[e[0],a*100,s*100]};rd.hcg.hsl=function(e){let t=e[1]/100,s=e[2]/100*(1-t)+.5*t,a=0;return s>0&&s<.5?a=t/(2*s):s>=.5&&s<1&&(a=t/(2*(1-s))),[e[0],a*100,s*100]};rd.hcg.hwb=function(e){let t=e[1]/100,r=e[2]/100,s=t+r*(1-t);return[e[0],(s-t)*100,(1-s)*100]};rd.hwb.hcg=function(e){let t=e[1]/100,s=1-e[2]/100,a=s-t,o=0;return a<1&&(o=(s-a)/(1-a)),[e[0],a*100,o*100]};rd.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]};rd.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]};rd.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]};rd.gray.hsl=function(e){return[0,0,e[0]]};rd.gray.hsv=rd.gray.hsl;rd.gray.hwb=function(e){return[0,100,e[0]]};rd.gray.cmyk=function(e){return[0,0,0,e[0]]};rd.gray.lab=function(e){return[e[0],0,0]};rd.gray.hex=function(e){let t=Math.round(e[0]/100*255)&255,s=((t<<16)+(t<<8)+t).toString(16).toUpperCase();return"000000".substring(s.length)+s};rd.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]}});var Pen=z((jLc,Wen)=>{var Drt=uMt();function $Ns(){let e={},t=Object.keys(Drt);for(let r=t.length,s=0;s{var gMt=uMt(),nRs=Pen(),lbe={},iRs=Object.keys(gMt);function sRs(e){let t=function(...r){let s=r[0];return s==null?s:(s.length>1&&(r=s),e(r))};return"conversion"in e&&(t.conversion=e.conversion),t}function oRs(e){let t=function(...r){let s=r[0];if(s==null)return s;s.length>1&&(r=s);let a=e(r);if(typeof a=="object")for(let o=a.length,g=0;g{lbe[e]={},Object.defineProperty(lbe[e],"channels",{value:gMt[e].channels}),Object.defineProperty(lbe[e],"labels",{value:gMt[e].labels});let t=nRs(e);Object.keys(t).forEach(s=>{let a=t[s];lbe[e][s]=oRs(a),lbe[e][s].raw=sRs(a)})});Oen.exports=lbe});var m9e=z((qLc,Jen)=>{"use strict";var Men=(e,t)=>(...r)=>`\x1B[${e(...r)+t}m`,Hen=(e,t)=>(...r)=>{let s=e(...r);return`\x1B[${38+t};5;${s}m`},Yen=(e,t)=>(...r)=>{let s=e(...r);return`\x1B[${38+t};2;${s[0]};${s[1]};${s[2]}m`},xrt=e=>e,Xen=(e,t,r)=>[e,t,r],ube=(e,t,r)=>{Object.defineProperty(e,t,{get:()=>{let s=r();return Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0}),s},enumerable:!0,configurable:!0})},AMt,gbe=(e,t,r,s)=>{AMt===void 0&&(AMt=Qen());let a=s?10:0,o={};for(let[g,p]of Object.entries(AMt)){let f=g==="ansi16"?"ansi":g;g===t?o[f]=e(r,a):typeof p=="object"&&(o[f]=e(p[t],a))}return o};function aRs(){let e=new Map,t={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};t.color.gray=t.color.blackBright,t.bgColor.bgGray=t.bgColor.bgBlackBright,t.color.grey=t.color.blackBright,t.bgColor.bgGrey=t.bgColor.bgBlackBright;for(let[r,s]of Object.entries(t)){for(let[a,o]of Object.entries(s))t[a]={open:`\x1B[${o[0]}m`,close:`\x1B[${o[1]}m`},s[a]=t[a],e.set(o[0],o[1]);Object.defineProperty(t,r,{value:s,enumerable:!1})}return Object.defineProperty(t,"codes",{value:e,enumerable:!1}),t.color.close="\x1B[39m",t.bgColor.close="\x1B[49m",ube(t.color,"ansi",()=>gbe(Men,"ansi16",xrt,!1)),ube(t.color,"ansi256",()=>gbe(Hen,"ansi256",xrt,!1)),ube(t.color,"ansi16m",()=>gbe(Yen,"rgb",Xen,!1)),ube(t.bgColor,"ansi",()=>gbe(Men,"ansi16",xrt,!0)),ube(t.bgColor,"ansi256",()=>gbe(Hen,"ansi256",xrt,!0)),ube(t.bgColor,"ansi16m",()=>gbe(Yen,"rgb",Xen,!0)),t}Object.defineProperty(Jen,"exports",{enumerable:!0,get:aRs})});var dMt=z(($Lc,Uen)=>{"use strict";Uen.exports=(e,t=process.argv)=>{let r=e.startsWith("-")?"":e.length===1?"-":"--",s=t.indexOf(r+e),a=t.indexOf("--");return s!==-1&&(a===-1||s{"use strict";var cRs=xt("os"),Ken=xt("tty"),dO=dMt(),{env:sR}=process,sne;dO("no-color")||dO("no-colors")||dO("color=false")||dO("color=never")?sne=0:(dO("color")||dO("colors")||dO("color=true")||dO("color=always"))&&(sne=1);"FORCE_COLOR"in sR&&(sR.FORCE_COLOR==="true"?sne=1:sR.FORCE_COLOR==="false"?sne=0:sne=sR.FORCE_COLOR.length===0?1:Math.min(parseInt(sR.FORCE_COLOR,10),3));function pMt(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function fMt(e,t){if(sne===0)return 0;if(dO("color=16m")||dO("color=full")||dO("color=truecolor"))return 3;if(dO("color=256"))return 2;if(e&&!t&&sne===void 0)return 0;let r=sne||0;if(sR.TERM==="dumb")return r;if(process.platform==="win32"){let s=cRs.release().split(".");return Number(s[0])>=10&&Number(s[2])>=10586?Number(s[2])>=14931?3:2:1}if("CI"in sR)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(s=>s in sR)||sR.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in sR)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(sR.TEAMCITY_VERSION)?1:0;if(sR.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in sR){let s=parseInt((sR.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(sR.TERM_PROGRAM){case"iTerm.app":return s>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(sR.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(sR.TERM)||"COLORTERM"in sR?1:r}function lRs(e){let t=fMt(e,e&&e.isTTY);return pMt(t)}jen.exports={supportsColor:lRs,stdout:pMt(fMt(!0,Ken.isatty(1))),stderr:pMt(fMt(!0,Ken.isatty(2)))}});var qen=z((t9c,zen)=>{"use strict";var uRs=(e,t,r)=>{let s=e.indexOf(t);if(s===-1)return e;let a=t.length,o=0,g="";do g+=e.substr(o,s-o)+t+r,o=s+a,s=e.indexOf(t,o);while(s!==-1);return g+=e.substr(o),g},gRs=(e,t,r,s)=>{let a=0,o="";do{let g=e[s-1]==="\r";o+=e.substr(a,(g?s-1:s)-a)+t+(g?`\r `:` `)+r,a=s+1,s=e.indexOf(` -`,a)}while(s!==-1);return o+=e.substr(a),o};Hen.exports={stringReplaceAll:nRs,stringEncaseCRLFWithFirstIndex:iRs}});var zen=z((PLc,jen)=>{"use strict";var sRs=/(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,Jen=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,oRs=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,aRs=/\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.)|([^\\])/gi,cRs=new Map([["n",` -`],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e","\x1B"],["a","\x07"]]);function Ken(e){let t=e[0]==="u",r=e[1]==="{";return t&&!r&&e.length===5||e[0]==="x"&&e.length===3?String.fromCharCode(parseInt(e.slice(1),16)):t&&r?String.fromCodePoint(parseInt(e.slice(2,-1),16)):cRs.get(e)||e}function lRs(e,t){let r=[],s=t.trim().split(/\s*,\s*/g),a;for(let o of s){let g=Number(o);if(!Number.isNaN(g))r.push(g);else if(a=o.match(oRs))r.push(a[2].replace(aRs,(p,f,m)=>f?Ken(f):m));else throw new Error(`Invalid Chalk template style argument: ${o} (in style '${e}')`)}return r}function uRs(e){Jen.lastIndex=0;let t=[],r;for(;(r=Jen.exec(e))!==null;){let s=r[1];if(r[2]){let a=lRs(s,r[2]);t.push([s].concat(a))}else t.push([s])}return t}function Uen(e,t){let r={};for(let a of t)for(let o of a.styles)r[o[0]]=a.inverse?null:o.slice(1);let s=e;for(let[a,o]of Object.entries(r))if(Array.isArray(o)){if(!(a in s))throw new Error(`Unknown Chalk style: ${a}`);s=o.length>0?s[a](...o):s[a]}return s}jen.exports=(e,t)=>{let r=[],s=[],a=[];if(t.replace(sRs,(o,g,p,f,m,y)=>{if(g)a.push(Ken(g));else if(f){let B=a.join("");a=[],s.push(r.length===0?B:Uen(e,r)(B)),r.push({inverse:p,styles:uRs(f)})}else if(m){if(r.length===0)throw new Error("Found extraneous } in Chalk template literal");s.push(Uen(e,r)(a.join(""))),a=[],r.pop()}else a.push(y)}),s.push(a.join("")),r.length>0){let o=`Chalk template literal is missing ${r.length} closing bracket${r.length===1?"":"s"} (\`}\`)`;throw new Error(o)}return s.join("")}});var mYt=z((OLc,ttn)=>{"use strict";var C9e=I9e(),{stdout:pYt,stderr:fYt}=Drt(),{stringReplaceAll:gRs,stringEncaseCRLFWithFirstIndex:ARs}=Xen(),qen=["ansi","ansi","ansi256","ansi16m"],ube=Object.create(null),dRs=(e,t={})=>{if(t.level>3||t.level<0)throw new Error("The `level` option should be an integer from 0 to 3");let r=pYt?pYt.level:0;e.level=t.level===void 0?r:t.level},IYt=class{constructor(t){return $en(t)}},$en=e=>{let t={};return dRs(t,e),t.template=(...r)=>IRs(t.template,...r),Object.setPrototypeOf(t,xrt.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=()=>{throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.")},t.template.Instance=IYt,t.template};function xrt(e){return $en(e)}for(let[e,t]of Object.entries(C9e))ube[e]={get(){let r=krt(this,CYt(t.open,t.close,this._styler),this._isEmpty);return Object.defineProperty(this,e,{value:r}),r}};ube.visible={get(){let e=krt(this,this._styler,!0);return Object.defineProperty(this,"visible",{value:e}),e}};var etn=["rgb","hex","keyword","hsl","hsv","hwb","ansi","ansi256"];for(let e of etn)ube[e]={get(){let{level:t}=this;return function(...r){let s=CYt(C9e.color[qen[t]][e](...r),C9e.color.close,this._styler);return krt(this,s,this._isEmpty)}}};for(let e of etn){let t="bg"+e[0].toUpperCase()+e.slice(1);ube[t]={get(){let{level:r}=this;return function(...s){let a=CYt(C9e.bgColor[qen[r]][e](...s),C9e.bgColor.close,this._styler);return krt(this,a,this._isEmpty)}}}}var pRs=Object.defineProperties(()=>{},{...ube,level:{enumerable:!0,get(){return this._generator.level},set(e){this._generator.level=e}}}),CYt=(e,t,r)=>{let s,a;return r===void 0?(s=e,a=t):(s=r.openAll+e,a=t+r.closeAll),{open:e,close:t,openAll:s,closeAll:a,parent:r}},krt=(e,t,r)=>{let s=(...a)=>fRs(s,a.length===1?""+a[0]:a.join(" "));return s.__proto__=pRs,s._generator=e,s._styler=t,s._isEmpty=r,s},fRs=(e,t)=>{if(e.level<=0||!t)return e._isEmpty?"":t;let r=e._styler;if(r===void 0)return t;let{openAll:s,closeAll:a}=r;if(t.indexOf("\x1B")!==-1)for(;r!==void 0;)t=gRs(t,r.close,r.open),r=r.parent;let o=t.indexOf(` -`);return o!==-1&&(t=ARs(t,a,s,o)),s+t+a},dYt,IRs=(e,...t)=>{let[r]=t;if(!Array.isArray(r))return t.join(" ");let s=t.slice(1),a=[r.raw[0]];for(let o=1;o{"use strict";gO.isInteger=e=>typeof e=="number"?Number.isInteger(e):typeof e=="string"&&e.trim()!==""?Number.isInteger(Number(e)):!1;gO.find=(e,t)=>e.nodes.find(r=>r.type===t);gO.exceedsLimit=(e,t,r=1,s)=>s===!1||!gO.isInteger(e)||!gO.isInteger(t)?!1:(Number(t)-Number(e))/Number(r)>=s;gO.escapeNode=(e,t=0,r)=>{let s=e.nodes[t];s&&(r&&s.type===r||s.type==="open"||s.type==="close")&&s.escaped!==!0&&(s.value="\\"+s.value,s.escaped=!0)};gO.encloseBrace=e=>e.type!=="brace"||e.commas>>0+e.ranges>>0?!1:(e.invalid=!0,!0);gO.isInvalidBrace=e=>e.type!=="brace"?!1:e.invalid===!0||e.dollar?!0:!(e.commas>>0+e.ranges>>0)||e.open!==!0||e.close!==!0?(e.invalid=!0,!0):!1;gO.isOpenOrClose=e=>e.type==="open"||e.type==="close"?!0:e.open===!0||e.close===!0;gO.reduce=e=>e.reduce((t,r)=>(r.type==="text"&&t.push(r.value),r.type==="range"&&(r.type="text"),t),[]);gO.flatten=(...e)=>{let t=[],r=s=>{for(let a=0;a{"use strict";var rtn=Grt();ntn.exports=(e,t={})=>{let r=(s,a={})=>{let o=t.escapeInvalid&&rtn.isInvalidBrace(a),g=s.invalid===!0&&t.escapeInvalid===!0,p="";if(s.value)return(o||g)&&rtn.isOpenOrClose(s)?"\\"+s.value:s.value;if(s.value)return s.value;if(s.nodes)for(let f of s.nodes)p+=r(f);return p};return r(e)}});var stn=z((YLc,itn)=>{"use strict";itn.exports=function(e){return typeof e=="number"?e-e===0:typeof e=="string"&&e.trim()!==""?Number.isFinite?Number.isFinite(+e):isFinite(+e):!1}});var ptn=z((HLc,dtn)=>{"use strict";var otn=stn(),qge=(e,t,r)=>{if(otn(e)===!1)throw new TypeError("toRegexRange: expected the first argument to be a number");if(t===void 0||e===t)return String(e);if(otn(t)===!1)throw new TypeError("toRegexRange: expected the second argument to be a number.");let s={relaxZeros:!0,...r};typeof s.strictZeros=="boolean"&&(s.relaxZeros=s.strictZeros===!1);let a=String(s.relaxZeros),o=String(s.shorthand),g=String(s.capture),p=String(s.wrap),f=e+":"+t+"="+a+o+g+p;if(qge.cache.hasOwnProperty(f))return qge.cache[f].result;let m=Math.min(e,t),y=Math.max(e,t);if(Math.abs(m-y)===1){let O=e+"|"+t;return s.capture?`(${O})`:s.wrap===!1?O:`(?:${O})`}let B=Atn(e)||Atn(t),v={min:e,max:t,a:m,b:y},G=[],T=[];if(B&&(v.isPadded=B,v.maxLen=String(v.max).length),m<0){let O=y<0?Math.abs(y):1;T=atn(O,Math.abs(m),v,s),m=v.a=0}return y>=0&&(G=atn(m,y,v,s)),v.negatives=T,v.positives=G,v.result=CRs(T,G,s),s.capture===!0?v.result=`(${v.result})`:s.wrap!==!1&&G.length+T.length>1&&(v.result=`(?:${v.result})`),qge.cache[f]=v,v.result};function CRs(e,t,r){let s=hYt(e,t,"-",!1,r)||[],a=hYt(t,e,"",!1,r)||[],o=hYt(e,t,"-?",!0,r)||[];return s.concat(o).concat(a).join("|")}function mRs(e,t){let r=1,s=1,a=ltn(e,r),o=new Set([t]);for(;e<=a&&a<=t;)o.add(a),r+=1,a=ltn(e,r);for(a=utn(t+1,s)-1;e1&&p.count.pop(),p.count.push(y.count[0]),p.string=p.pattern+gtn(p.count),g=m+1;continue}r.isPadded&&(B=ERs(m,r,s)),y.string=B+y.pattern+gtn(y.count),o.push(y),g=m+1,p=y}return o}function hYt(e,t,r,s,a){let o=[];for(let g of e){let{string:p}=g;!s&&!ctn(t,"string",p)&&o.push(r+p),s&&ctn(t,"string",p)&&o.push(r+p)}return o}function _Rs(e,t){let r=[];for(let s=0;st?1:t>e?-1:0}function ctn(e,t,r){return e.some(s=>s[t]===r)}function ltn(e,t){return Number(String(e).slice(0,-t)+"9".repeat(t))}function utn(e,t){return e-e%Math.pow(10,t)}function gtn(e){let[t=0,r=""]=e;return r||t>1?`{${t+(r?","+r:"")}}`:""}function bRs(e,t,r){return`[${e}${t-e===1?"":"-"}${t}]`}function Atn(e){return/^-?(0+)\d/.test(e)}function ERs(e,t,r){if(!t.isPadded)return e;let s=Math.abs(t.maxLen-String(e).length),a=r.relaxZeros!==!1;switch(s){case 0:return"";case 1:return a?"0?":"0";case 2:return a?"0{0,2}":"00";default:return a?`0{0,${s}}`:`0{${s}}`}}qge.cache={};qge.clearCache=()=>qge.cache={};dtn.exports=qge});var bYt=z((XLc,ytn)=>{"use strict";var BRs=Dt("util"),Itn=ptn(),ftn=e=>e!==null&&typeof e=="object"&&!Array.isArray(e),vRs=e=>t=>e===!0?Number(t):String(t),_Yt=e=>typeof e=="number"||typeof e=="string"&&e!=="",h9e=e=>Number.isInteger(+e),yYt=e=>{let t=`${e}`,r=-1;if(t[0]==="-"&&(t=t.slice(1)),t==="0")return!1;for(;t[++r]==="0";);return r>0},SRs=(e,t,r)=>typeof e=="string"||typeof t=="string"?!0:r.stringify===!0,wRs=(e,t,r)=>{if(t>0){let s=e[0]==="-"?"-":"";s&&(e=e.slice(1)),e=s+e.padStart(s?t-1:t,"0")}return r===!1?String(e):e},Lrt=(e,t)=>{let r=e[0]==="-"?"-":"";for(r&&(e=e.slice(1),t--);e.length{e.negatives.sort((p,f)=>pf?1:0),e.positives.sort((p,f)=>pf?1:0);let s=t.capture?"":"?:",a="",o="",g;return e.positives.length&&(a=e.positives.map(p=>Lrt(String(p),r)).join("|")),e.negatives.length&&(o=`-(${s}${e.negatives.map(p=>Lrt(String(p),r)).join("|")})`),a&&o?g=`${a}|${o}`:g=a||o,t.wrap?`(${s}${g})`:g},Ctn=(e,t,r,s)=>{if(r)return Itn(e,t,{wrap:!1,...s});let a=String.fromCharCode(e);if(e===t)return a;let o=String.fromCharCode(t);return`[${a}-${o}]`},mtn=(e,t,r)=>{if(Array.isArray(e)){let s=r.wrap===!0,a=r.capture?"":"?:";return s?`(${a}${e.join("|")})`:e.join("|")}return Itn(e,t,r)},htn=(...e)=>new RangeError("Invalid range arguments: "+BRs.inspect(...e)),_tn=(e,t,r)=>{if(r.strictRanges===!0)throw htn([e,t]);return[]},NRs=(e,t)=>{if(t.strictRanges===!0)throw new TypeError(`Expected step "${e}" to be a number`);return[]},RRs=(e,t,r=1,s={})=>{let a=Number(e),o=Number(t);if(!Number.isInteger(a)||!Number.isInteger(o)){if(s.strictRanges===!0)throw htn([e,t]);return[]}a===0&&(a=0),o===0&&(o=0);let g=a>o,p=String(e),f=String(t),m=String(r);r=Math.max(Math.abs(r),1);let y=yYt(p)||yYt(f)||yYt(m),B=y?Math.max(p.length,f.length,m.length):0,v=y===!1&&SRs(e,t,s)===!1,G=s.transform||vRs(v);if(s.toRegex&&r===1)return Ctn(Lrt(e,B),Lrt(t,B),!0,s);let T={negatives:[],positives:[]},O=le=>T[le<0?"negatives":"positives"].push(Math.abs(le)),X=[],U=0;for(;g?a>=o:a<=o;)s.toRegex===!0&&r>1?O(a):X.push(wRs(G(a,U),B,v)),a=g?a-r:a+r,U++;return s.toRegex===!0?r>1?TRs(T,s,B):mtn(X,null,{wrap:!1,...s}):X},DRs=(e,t,r=1,s={})=>{if(!h9e(e)&&e.length>1||!h9e(t)&&t.length>1)return _tn(e,t,s);let a=s.transform||(v=>String.fromCharCode(v)),o=`${e}`.charCodeAt(0),g=`${t}`.charCodeAt(0),p=o>g,f=Math.min(o,g),m=Math.max(o,g);if(s.toRegex&&r===1)return Ctn(f,m,!1,s);let y=[],B=0;for(;p?o>=g:o<=g;)y.push(a(o,B)),o=p?o-r:o+r,B++;return s.toRegex===!0?mtn(y,null,{wrap:!1,options:s}):y},Zrt=(e,t,r,s={})=>{if(t==null&&_Yt(e))return[e];if(!_Yt(e)||!_Yt(t))return _tn(e,t,s);if(typeof r=="function")return Zrt(e,t,1,{transform:r});if(ftn(r))return Zrt(e,t,0,r);let a={...s};return a.capture===!0&&(a.wrap=!0),r=r||a.step||1,h9e(r)?h9e(e)&&h9e(t)?RRs(e,t,r,a):DRs(e,t,Math.max(Math.abs(r),1),a):r!=null&&!ftn(r)?NRs(r,a):Zrt(e,t,1,r)};ytn.exports=Zrt});var Btn=z((JLc,Etn)=>{"use strict";var xRs=bYt(),btn=Grt(),kRs=(e,t={})=>{let r=(s,a={})=>{let o=btn.isInvalidBrace(a),g=s.invalid===!0&&t.escapeInvalid===!0,p=o===!0||g===!0,f=t.escapeInvalid===!0?"\\":"",m="";if(s.isOpen===!0)return f+s.value;if(s.isClose===!0)return console.log("node.isClose",f,s.value),f+s.value;if(s.type==="open")return p?f+s.value:"(";if(s.type==="close")return p?f+s.value:")";if(s.type==="comma")return s.prev.type==="comma"?"":p?s.value:"|";if(s.value)return s.value;if(s.nodes&&s.ranges>0){let y=btn.reduce(s.nodes),B=xRs(...y,{...t,wrap:!1,toRegex:!0,strictZeros:!0});if(B.length!==0)return y.length>1&&B.length>1?`(${B})`:B}if(s.nodes)for(let y of s.nodes)m+=r(y,s);return m};return r(e)};Etn.exports=kRs});var wtn=z((ULc,Stn)=>{"use strict";var GRs=bYt(),vtn=Frt(),gbe=Grt(),$ge=(e="",t="",r=!1)=>{let s=[];if(e=[].concat(e),t=[].concat(t),!t.length)return e;if(!e.length)return r?gbe.flatten(t).map(a=>`{${a}}`):t;for(let a of e)if(Array.isArray(a))for(let o of a)s.push($ge(o,t,r));else for(let o of t)r===!0&&typeof o=="string"&&(o=`{${o}}`),s.push(Array.isArray(o)?$ge(a,o,r):a+o);return gbe.flatten(s)},FRs=(e,t={})=>{let r=t.rangeLimit===void 0?1e3:t.rangeLimit,s=(a,o={})=>{a.queue=[];let g=o,p=o.queue;for(;g.type!=="brace"&&g.type!=="root"&&g.parent;)g=g.parent,p=g.queue;if(a.invalid||a.dollar){p.push($ge(p.pop(),vtn(a,t)));return}if(a.type==="brace"&&a.invalid!==!0&&a.nodes.length===2){p.push($ge(p.pop(),["{}"]));return}if(a.nodes&&a.ranges>0){let B=gbe.reduce(a.nodes);if(gbe.exceedsLimit(...B,t.step,r))throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.");let v=GRs(...B,t);v.length===0&&(v=vtn(a,t)),p.push($ge(p.pop(),v)),a.nodes=[];return}let f=gbe.encloseBrace(a),m=a.queue,y=a;for(;y.type!=="brace"&&y.type!=="root"&&y.parent;)y=y.parent,m=y.queue;for(let B=0;B{"use strict";Ttn.exports={MAX_LENGTH:1e4,CHAR_0:"0",CHAR_9:"9",CHAR_UPPERCASE_A:"A",CHAR_LOWERCASE_A:"a",CHAR_UPPERCASE_Z:"Z",CHAR_LOWERCASE_Z:"z",CHAR_LEFT_PARENTHESES:"(",CHAR_RIGHT_PARENTHESES:")",CHAR_ASTERISK:"*",CHAR_AMPERSAND:"&",CHAR_AT:"@",CHAR_BACKSLASH:"\\",CHAR_BACKTICK:"`",CHAR_CARRIAGE_RETURN:"\r",CHAR_CIRCUMFLEX_ACCENT:"^",CHAR_COLON:":",CHAR_COMMA:",",CHAR_DOLLAR:"$",CHAR_DOT:".",CHAR_DOUBLE_QUOTE:'"',CHAR_EQUAL:"=",CHAR_EXCLAMATION_MARK:"!",CHAR_FORM_FEED:"\f",CHAR_FORWARD_SLASH:"/",CHAR_HASH:"#",CHAR_HYPHEN_MINUS:"-",CHAR_LEFT_ANGLE_BRACKET:"<",CHAR_LEFT_CURLY_BRACE:"{",CHAR_LEFT_SQUARE_BRACKET:"[",CHAR_LINE_FEED:` -`,CHAR_NO_BREAK_SPACE:"\xA0",CHAR_PERCENT:"%",CHAR_PLUS:"+",CHAR_QUESTION_MARK:"?",CHAR_RIGHT_ANGLE_BRACKET:">",CHAR_RIGHT_CURLY_BRACE:"}",CHAR_RIGHT_SQUARE_BRACKET:"]",CHAR_SEMICOLON:";",CHAR_SINGLE_QUOTE:"'",CHAR_SPACE:" ",CHAR_TAB:" ",CHAR_UNDERSCORE:"_",CHAR_VERTICAL_LINE:"|",CHAR_ZERO_WIDTH_NOBREAK_SPACE:"\uFEFF"}});var Gtn=z((jLc,ktn)=>{"use strict";var ZRs=Frt(),{MAX_LENGTH:Rtn,CHAR_BACKSLASH:EYt,CHAR_BACKTICK:LRs,CHAR_COMMA:VRs,CHAR_DOT:WRs,CHAR_LEFT_PARENTHESES:PRs,CHAR_RIGHT_PARENTHESES:ORs,CHAR_LEFT_CURLY_BRACE:MRs,CHAR_RIGHT_CURLY_BRACE:QRs,CHAR_LEFT_SQUARE_BRACKET:Dtn,CHAR_RIGHT_SQUARE_BRACKET:xtn,CHAR_DOUBLE_QUOTE:YRs,CHAR_SINGLE_QUOTE:HRs,CHAR_NO_BREAK_SPACE:XRs,CHAR_ZERO_WIDTH_NOBREAK_SPACE:JRs}=Ntn(),URs=(e,t={})=>{if(typeof e!="string")throw new TypeError("Expected a string");let r=t||{},s=typeof r.maxLength=="number"?Math.min(Rtn,r.maxLength):Rtn;if(e.length>s)throw new SyntaxError(`Input length (${e.length}), exceeds max characters (${s})`);let a={type:"root",input:e,nodes:[]},o=[a],g=a,p=a,f=0,m=e.length,y=0,B=0,v,G=()=>e[y++],T=O=>{if(O.type==="text"&&p.type==="dot"&&(p.type="text"),p&&p.type==="text"&&O.type==="text"){p.value+=O.value;return}return g.nodes.push(O),O.parent=g,O.prev=p,p=O,O};for(T({type:"bos"});y0){if(g.ranges>0){g.ranges=0;let O=g.nodes.shift();g.nodes=[O,{type:"text",value:ZRs(g)}]}T({type:"comma",value:v}),g.commas++;continue}if(v===WRs&&B>0&&g.commas===0){let O=g.nodes;if(B===0||O.length===0){T({type:"text",value:v});continue}if(p.type==="dot"){if(g.range=[],p.value+=v,p.type="range",g.nodes.length!==3&&g.nodes.length!==5){g.invalid=!0,g.ranges=0,p.type="text";continue}g.ranges++,g.args=[];continue}if(p.type==="range"){O.pop();let X=O[O.length-1];X.value+=p.value+v,p=X,g.ranges--;continue}T({type:"dot",value:v});continue}T({type:"text",value:v})}do if(g=o.pop(),g.type!=="root"){g.nodes.forEach(U=>{U.nodes||(U.type==="open"&&(U.isOpen=!0),U.type==="close"&&(U.isClose=!0),U.nodes||(U.type="text"),U.invalid=!0)});let O=o[o.length-1],X=O.nodes.indexOf(g);O.nodes.splice(X,1,...g.nodes)}while(o.length>0);return T({type:"eos"}),a};ktn.exports=URs});var Ltn=z((zLc,Ztn)=>{"use strict";var Ftn=Frt(),KRs=Btn(),jRs=wtn(),zRs=Gtn(),AW=(e,t={})=>{let r=[];if(Array.isArray(e))for(let s of e){let a=AW.create(s,t);Array.isArray(a)?r.push(...a):r.push(a)}else r=[].concat(AW.create(e,t));return t&&t.expand===!0&&t.nodupes===!0&&(r=[...new Set(r)]),r};AW.parse=(e,t={})=>zRs(e,t);AW.stringify=(e,t={})=>Ftn(typeof e=="string"?AW.parse(e,t):e,t);AW.compile=(e,t={})=>(typeof e=="string"&&(e=AW.parse(e,t)),KRs(e,t));AW.expand=(e,t={})=>{typeof e=="string"&&(e=AW.parse(e,t));let r=jRs(e,t);return t.noempty===!0&&(r=r.filter(Boolean)),t.nodupes===!0&&(r=[...new Set(r)]),r};AW.create=(e,t={})=>e===""||e.length<3?[e]:t.expand!==!0?AW.compile(e,t):AW.expand(e,t);Ztn.exports=AW});var _9e=z((qLc,Mtn)=>{"use strict";var qRs=Dt("path"),CJ="\\\\/",Vtn=`[^${CJ}]`,ej="\\.",$Rs="\\+",eDs="\\?",Vrt="\\/",tDs="(?=.)",Wtn="[^/]",BYt=`(?:${Vrt}|$)`,Ptn=`(?:^|${Vrt})`,vYt=`${ej}{1,2}${BYt}`,rDs=`(?!${ej})`,nDs=`(?!${Ptn}${vYt})`,iDs=`(?!${ej}{0,1}${BYt})`,sDs=`(?!${vYt})`,oDs=`[^.${Vrt}]`,aDs=`${Wtn}*?`,Otn={DOT_LITERAL:ej,PLUS_LITERAL:$Rs,QMARK_LITERAL:eDs,SLASH_LITERAL:Vrt,ONE_CHAR:tDs,QMARK:Wtn,END_ANCHOR:BYt,DOTS_SLASH:vYt,NO_DOT:rDs,NO_DOTS:nDs,NO_DOT_SLASH:iDs,NO_DOTS_SLASH:sDs,QMARK_NO_DOT:oDs,STAR:aDs,START_ANCHOR:Ptn},cDs={...Otn,SLASH_LITERAL:`[${CJ}]`,QMARK:Vtn,STAR:`${Vtn}*?`,DOTS_SLASH:`${ej}{1,2}(?:[${CJ}]|$)`,NO_DOT:`(?!${ej})`,NO_DOTS:`(?!(?:^|[${CJ}])${ej}{1,2}(?:[${CJ}]|$))`,NO_DOT_SLASH:`(?!${ej}{0,1}(?:[${CJ}]|$))`,NO_DOTS_SLASH:`(?!${ej}{1,2}(?:[${CJ}]|$))`,QMARK_NO_DOT:`[^.${CJ}]`,START_ANCHOR:`(?:^|[${CJ}])`,END_ANCHOR:`(?:[${CJ}]|$)`},lDs={alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};Mtn.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:lDs,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,SEP:qRs.sep,extglobChars(e){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${e.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(e){return e===!0?cDs:Otn}}});var y9e=z(RL=>{"use strict";var uDs=Dt("path"),gDs=process.platform==="win32",{REGEX_BACKSLASH:ADs,REGEX_REMOVE_BACKSLASH:dDs,REGEX_SPECIAL_CHARS:pDs,REGEX_SPECIAL_CHARS_GLOBAL:fDs}=_9e();RL.isObject=e=>e!==null&&typeof e=="object"&&!Array.isArray(e);RL.hasRegexChars=e=>pDs.test(e);RL.isRegexChar=e=>e.length===1&&RL.hasRegexChars(e);RL.escapeRegex=e=>e.replace(fDs,"\\$1");RL.toPosixSlashes=e=>e.replace(ADs,"/");RL.removeBackslashes=e=>e.replace(dDs,t=>t==="\\"?"":t);RL.supportsLookbehinds=()=>{let e=process.version.slice(1).split(".").map(Number);return e.length===3&&e[0]>=9||e[0]===8&&e[1]>=10};RL.isWindows=e=>e&&typeof e.windows=="boolean"?e.windows:gDs===!0||uDs.sep==="\\";RL.escapeLast=(e,t,r)=>{let s=e.lastIndexOf(t,r);return s===-1?e:e[s-1]==="\\"?RL.escapeLast(e,t,s-1):`${e.slice(0,s)}\\${e.slice(s)}`};RL.removePrefix=(e,t={})=>{let r=e;return r.startsWith("./")&&(r=r.slice(2),t.prefix="./"),r};RL.wrapOutput=(e,t={},r={})=>{let s=r.contains?"":"^",a=r.contains?"":"$",o=`${s}(?:${e})${a}`;return t.negated===!0&&(o=`(?:^(?!${o}).*$)`),o}});var jtn=z((e9c,Ktn)=>{"use strict";var Qtn=y9e(),{CHAR_ASTERISK:SYt,CHAR_AT:IDs,CHAR_BACKWARD_SLASH:b9e,CHAR_COMMA:CDs,CHAR_DOT:wYt,CHAR_EXCLAMATION_MARK:TYt,CHAR_FORWARD_SLASH:Utn,CHAR_LEFT_CURLY_BRACE:NYt,CHAR_LEFT_PARENTHESES:RYt,CHAR_LEFT_SQUARE_BRACKET:mDs,CHAR_PLUS:hDs,CHAR_QUESTION_MARK:Ytn,CHAR_RIGHT_CURLY_BRACE:_Ds,CHAR_RIGHT_PARENTHESES:Htn,CHAR_RIGHT_SQUARE_BRACKET:yDs}=_9e(),Xtn=e=>e===Utn||e===b9e,Jtn=e=>{e.isPrefix!==!0&&(e.depth=e.isGlobstar?1/0:1)},bDs=(e,t)=>{let r=t||{},s=e.length-1,a=r.parts===!0||r.scanToEnd===!0,o=[],g=[],p=[],f=e,m=-1,y=0,B=0,v=!1,G=!1,T=!1,O=!1,X=!1,U=!1,le=!1,ae=!1,ge=!1,fe=!1,pe=0,he,be,Te={value:"",depth:0,isGlob:!1},ke=()=>m>=s,x=()=>f.charCodeAt(m+1),et=()=>(he=be,f.charCodeAt(++m));for(;m0&&(Je=f.slice(0,y),f=f.slice(y),B-=y),Ue&&T===!0&&B>0?(Ue=f.slice(0,B),Xe=f.slice(B)):T===!0?(Ue="",Xe=f):Ue=f,Ue&&Ue!==""&&Ue!=="/"&&Ue!==f&&Xtn(Ue.charCodeAt(Ue.length-1))&&(Ue=Ue.slice(0,-1)),r.unescape===!0&&(Xe&&(Xe=Qtn.removeBackslashes(Xe)),Ue&&le===!0&&(Ue=Qtn.removeBackslashes(Ue)));let ft={prefix:Je,input:e,start:y,base:Ue,glob:Xe,isBrace:v,isBracket:G,isGlob:T,isExtglob:O,isGlobstar:X,negated:ae,negatedExtglob:ge};if(r.tokens===!0&&(ft.maxDepth=0,Xtn(be)||g.push(Te),ft.tokens=g),r.parts===!0||r.tokens===!0){let Gt;for(let er=0;er{"use strict";var Wrt=_9e(),dW=y9e(),{MAX_LENGTH:Prt,POSIX_REGEX_SOURCE:EDs,REGEX_NON_SPECIAL_CHARS:BDs,REGEX_SPECIAL_CHARS_BACKREF:vDs,REPLACEMENTS:ztn}=Wrt,SDs=(e,t)=>{if(typeof t.expandRange=="function")return t.expandRange(...e,t);e.sort();let r=`[${e.join("-")}]`;try{new RegExp(r)}catch{return e.map(a=>dW.escapeRegex(a)).join("..")}return r},Abe=(e,t)=>`Missing ${e}: "${t}" - use "\\\\${t}" to match literal characters`,DYt=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");e=ztn[e]||e;let r={...t},s=typeof r.maxLength=="number"?Math.min(Prt,r.maxLength):Prt,a=e.length;if(a>s)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${s}`);let o={type:"bos",value:"",output:r.prepend||""},g=[o],p=r.capture?"":"?:",f=dW.isWindows(t),m=Wrt.globChars(f),y=Wrt.extglobChars(m),{DOT_LITERAL:B,PLUS_LITERAL:v,SLASH_LITERAL:G,ONE_CHAR:T,DOTS_SLASH:O,NO_DOT:X,NO_DOT_SLASH:U,NO_DOTS_SLASH:le,QMARK:ae,QMARK_NO_DOT:ge,STAR:fe,START_ANCHOR:pe}=m,he=tr=>`(${p}(?:(?!${pe}${tr.dot?O:B}).)*?)`,be=r.dot?"":X,Te=r.dot?ae:ge,ke=r.bash===!0?he(r):fe;r.capture&&(ke=`(${ke})`),typeof r.noext=="boolean"&&(r.noextglob=r.noext);let x={input:e,index:-1,start:0,dot:r.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:g};e=dW.removePrefix(e,x),a=e.length;let et=[],Ue=[],Je=[],Xe=o,ft,Gt=()=>x.index===a-1,er=x.peek=(tr=1)=>e[x.index+tr],Ur=x.advance=()=>e[++x.index]||"",Ot=()=>e.slice(x.index+1),dr=(tr="",gn=0)=>{x.consumed+=tr,x.index+=gn},Ar=tr=>{x.output+=tr.output!=null?tr.output:tr.value,dr(tr.value)},or=()=>{let tr=1;for(;er()==="!"&&(er(2)!=="("||er(3)==="?");)Ur(),x.start++,tr++;return tr%2===0?!1:(x.negated=!0,x.start++,!0)},Fr=tr=>{x[tr]++,Je.push(tr)},$r=tr=>{x[tr]--,Je.pop()},Or=tr=>{if(Xe.type==="globstar"){let gn=x.braces>0&&(tr.type==="comma"||tr.type==="brace"),Gn=tr.extglob===!0||et.length&&(tr.type==="pipe"||tr.type==="paren");tr.type!=="slash"&&tr.type!=="paren"&&!gn&&!Gn&&(x.output=x.output.slice(0,-Xe.output.length),Xe.type="star",Xe.value="*",Xe.output=ke,x.output+=Xe.output)}if(et.length&&tr.type!=="paren"&&(et[et.length-1].inner+=tr.value),(tr.value||tr.output)&&Ar(tr),Xe&&Xe.type==="text"&&tr.type==="text"){Xe.value+=tr.value,Xe.output=(Xe.output||"")+tr.value;return}tr.prev=Xe,g.push(tr),Xe=tr},In=(tr,gn)=>{let Gn={...y[gn],conditions:1,inner:""};Gn.prev=Xe,Gn.parens=x.parens,Gn.output=x.output;let we=(r.capture?"(":"")+Gn.open;Fr("parens"),Or({type:tr,value:gn,output:x.output?"":T}),Or({type:"paren",extglob:!0,value:Ur(),output:we}),et.push(Gn)},Br=tr=>{let gn=tr.close+(r.capture?")":""),Gn;if(tr.type==="negate"){let we=ke;if(tr.inner&&tr.inner.length>1&&tr.inner.includes("/")&&(we=he(r)),(we!==ke||Gt()||/^\)+$/.test(Ot()))&&(gn=tr.close=`)$))${we}`),tr.inner.includes("*")&&(Gn=Ot())&&/^\.[^\\/.]+$/.test(Gn)){let Zi=DYt(Gn,{...t,fastpaths:!1}).output;gn=tr.close=`)${Zi})${we})`}tr.prev.type==="bos"&&(x.negatedExtglob=!0)}Or({type:"paren",extglob:!0,value:ft,output:gn}),$r("parens")};if(r.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(e)){let tr=!1,gn=e.replace(vDs,(Gn,we,Zi,Za,ka,Qs)=>Za==="\\"?(tr=!0,Gn):Za==="?"?we?we+Za+(ka?ae.repeat(ka.length):""):Qs===0?Te+(ka?ae.repeat(ka.length):""):ae.repeat(Zi.length):Za==="."?B.repeat(Zi.length):Za==="*"?we?we+Za+(ka?ke:""):ke:we?Gn:`\\${Gn}`);return tr===!0&&(r.unescape===!0?gn=gn.replace(/\\/g,""):gn=gn.replace(/\\+/g,Gn=>Gn.length%2===0?"\\\\":Gn?"\\":"")),gn===e&&r.contains===!0?(x.output=e,x):(x.output=dW.wrapOutput(gn,x,t),x)}for(;!Gt();){if(ft=Ur(),ft==="\0")continue;if(ft==="\\"){let Gn=er();if(Gn==="/"&&r.bash!==!0||Gn==="."||Gn===";")continue;if(!Gn){ft+="\\",Or({type:"text",value:ft});continue}let we=/^\\+/.exec(Ot()),Zi=0;if(we&&we[0].length>2&&(Zi=we[0].length,x.index+=Zi,Zi%2!==0&&(ft+="\\")),r.unescape===!0?ft=Ur():ft+=Ur(),x.brackets===0){Or({type:"text",value:ft});continue}}if(x.brackets>0&&(ft!=="]"||Xe.value==="["||Xe.value==="[^")){if(r.posix!==!1&&ft===":"){let Gn=Xe.value.slice(1);if(Gn.includes("[")&&(Xe.posix=!0,Gn.includes(":"))){let we=Xe.value.lastIndexOf("["),Zi=Xe.value.slice(0,we),Za=Xe.value.slice(we+2),ka=EDs[Za];if(ka){Xe.value=Zi+ka,x.backtrack=!0,Ur(),!o.output&&g.indexOf(Xe)===1&&(o.output=T);continue}}}(ft==="["&&er()!==":"||ft==="-"&&er()==="]")&&(ft=`\\${ft}`),ft==="]"&&(Xe.value==="["||Xe.value==="[^")&&(ft=`\\${ft}`),r.posix===!0&&ft==="!"&&Xe.value==="["&&(ft="^"),Xe.value+=ft,Ar({value:ft});continue}if(x.quotes===1&&ft!=='"'){ft=dW.escapeRegex(ft),Xe.value+=ft,Ar({value:ft});continue}if(ft==='"'){x.quotes=x.quotes===1?0:1,r.keepQuotes===!0&&Or({type:"text",value:ft});continue}if(ft==="("){Fr("parens"),Or({type:"paren",value:ft});continue}if(ft===")"){if(x.parens===0&&r.strictBrackets===!0)throw new SyntaxError(Abe("opening","("));let Gn=et[et.length-1];if(Gn&&x.parens===Gn.parens+1){Br(et.pop());continue}Or({type:"paren",value:ft,output:x.parens?")":"\\)"}),$r("parens");continue}if(ft==="["){if(r.nobracket===!0||!Ot().includes("]")){if(r.nobracket!==!0&&r.strictBrackets===!0)throw new SyntaxError(Abe("closing","]"));ft=`\\${ft}`}else Fr("brackets");Or({type:"bracket",value:ft});continue}if(ft==="]"){if(r.nobracket===!0||Xe&&Xe.type==="bracket"&&Xe.value.length===1){Or({type:"text",value:ft,output:`\\${ft}`});continue}if(x.brackets===0){if(r.strictBrackets===!0)throw new SyntaxError(Abe("opening","["));Or({type:"text",value:ft,output:`\\${ft}`});continue}$r("brackets");let Gn=Xe.value.slice(1);if(Xe.posix!==!0&&Gn[0]==="^"&&!Gn.includes("/")&&(ft=`/${ft}`),Xe.value+=ft,Ar({value:ft}),r.literalBrackets===!1||dW.hasRegexChars(Gn))continue;let we=dW.escapeRegex(Xe.value);if(x.output=x.output.slice(0,-Xe.value.length),r.literalBrackets===!0){x.output+=we,Xe.value=we;continue}Xe.value=`(${p}${we}|${Xe.value})`,x.output+=Xe.value;continue}if(ft==="{"&&r.nobrace!==!0){Fr("braces");let Gn={type:"brace",value:ft,output:"(",outputIndex:x.output.length,tokensIndex:x.tokens.length};Ue.push(Gn),Or(Gn);continue}if(ft==="}"){let Gn=Ue[Ue.length-1];if(r.nobrace===!0||!Gn){Or({type:"text",value:ft,output:ft});continue}let we=")";if(Gn.dots===!0){let Zi=g.slice(),Za=[];for(let ka=Zi.length-1;ka>=0&&(g.pop(),Zi[ka].type!=="brace");ka--)Zi[ka].type!=="dots"&&Za.unshift(Zi[ka].value);we=SDs(Za,r),x.backtrack=!0}if(Gn.comma!==!0&&Gn.dots!==!0){let Zi=x.output.slice(0,Gn.outputIndex),Za=x.tokens.slice(Gn.tokensIndex);Gn.value=Gn.output="\\{",ft=we="\\}",x.output=Zi;for(let ka of Za)x.output+=ka.output||ka.value}Or({type:"brace",value:ft,output:we}),$r("braces"),Ue.pop();continue}if(ft==="|"){et.length>0&&et[et.length-1].conditions++,Or({type:"text",value:ft});continue}if(ft===","){let Gn=ft,we=Ue[Ue.length-1];we&&Je[Je.length-1]==="braces"&&(we.comma=!0,Gn="|"),Or({type:"comma",value:ft,output:Gn});continue}if(ft==="/"){if(Xe.type==="dot"&&x.index===x.start+1){x.start=x.index+1,x.consumed="",x.output="",g.pop(),Xe=o;continue}Or({type:"slash",value:ft,output:G});continue}if(ft==="."){if(x.braces>0&&Xe.type==="dot"){Xe.value==="."&&(Xe.output=B);let Gn=Ue[Ue.length-1];Xe.type="dots",Xe.output+=ft,Xe.value+=ft,Gn.dots=!0;continue}if(x.braces+x.parens===0&&Xe.type!=="bos"&&Xe.type!=="slash"){Or({type:"text",value:ft,output:B});continue}Or({type:"dot",value:ft,output:B});continue}if(ft==="?"){if(!(Xe&&Xe.value==="(")&&r.noextglob!==!0&&er()==="("&&er(2)!=="?"){In("qmark",ft);continue}if(Xe&&Xe.type==="paren"){let we=er(),Zi=ft;if(we==="<"&&!dW.supportsLookbehinds())throw new Error("Node.js v10 or higher is required for regex lookbehinds");(Xe.value==="("&&!/[!=<:]/.test(we)||we==="<"&&!/<([!=]|\w+>)/.test(Ot()))&&(Zi=`\\${ft}`),Or({type:"text",value:ft,output:Zi});continue}if(r.dot!==!0&&(Xe.type==="slash"||Xe.type==="bos")){Or({type:"qmark",value:ft,output:ge});continue}Or({type:"qmark",value:ft,output:ae});continue}if(ft==="!"){if(r.noextglob!==!0&&er()==="("&&(er(2)!=="?"||!/[!=<:]/.test(er(3)))){In("negate",ft);continue}if(r.nonegate!==!0&&x.index===0){or();continue}}if(ft==="+"){if(r.noextglob!==!0&&er()==="("&&er(2)!=="?"){In("plus",ft);continue}if(Xe&&Xe.value==="("||r.regex===!1){Or({type:"plus",value:ft,output:v});continue}if(Xe&&(Xe.type==="bracket"||Xe.type==="paren"||Xe.type==="brace")||x.parens>0){Or({type:"plus",value:ft});continue}Or({type:"plus",value:v});continue}if(ft==="@"){if(r.noextglob!==!0&&er()==="("&&er(2)!=="?"){Or({type:"at",extglob:!0,value:ft,output:""});continue}Or({type:"text",value:ft});continue}if(ft!=="*"){(ft==="$"||ft==="^")&&(ft=`\\${ft}`);let Gn=BDs.exec(Ot());Gn&&(ft+=Gn[0],x.index+=Gn[0].length),Or({type:"text",value:ft});continue}if(Xe&&(Xe.type==="globstar"||Xe.star===!0)){Xe.type="star",Xe.star=!0,Xe.value+=ft,Xe.output=ke,x.backtrack=!0,x.globstar=!0,dr(ft);continue}let tr=Ot();if(r.noextglob!==!0&&/^\([^?]/.test(tr)){In("star",ft);continue}if(Xe.type==="star"){if(r.noglobstar===!0){dr(ft);continue}let Gn=Xe.prev,we=Gn.prev,Zi=Gn.type==="slash"||Gn.type==="bos",Za=we&&(we.type==="star"||we.type==="globstar");if(r.bash===!0&&(!Zi||tr[0]&&tr[0]!=="/")){Or({type:"star",value:ft,output:""});continue}let ka=x.braces>0&&(Gn.type==="comma"||Gn.type==="brace"),Qs=et.length&&(Gn.type==="pipe"||Gn.type==="paren");if(!Zi&&Gn.type!=="paren"&&!ka&&!Qs){Or({type:"star",value:ft,output:""});continue}for(;tr.slice(0,3)==="/**";){let lr=e[x.index+4];if(lr&&lr!=="/")break;tr=tr.slice(3),dr("/**",3)}if(Gn.type==="bos"&&Gt()){Xe.type="globstar",Xe.value+=ft,Xe.output=he(r),x.output=Xe.output,x.globstar=!0,dr(ft);continue}if(Gn.type==="slash"&&Gn.prev.type!=="bos"&&!Za&&Gt()){x.output=x.output.slice(0,-(Gn.output+Xe.output).length),Gn.output=`(?:${Gn.output}`,Xe.type="globstar",Xe.output=he(r)+(r.strictSlashes?")":"|$)"),Xe.value+=ft,x.globstar=!0,x.output+=Gn.output+Xe.output,dr(ft);continue}if(Gn.type==="slash"&&Gn.prev.type!=="bos"&&tr[0]==="/"){let lr=tr[1]!==void 0?"|$":"";x.output=x.output.slice(0,-(Gn.output+Xe.output).length),Gn.output=`(?:${Gn.output}`,Xe.type="globstar",Xe.output=`${he(r)}${G}|${G}${lr})`,Xe.value+=ft,x.output+=Gn.output+Xe.output,x.globstar=!0,dr(ft+Ur()),Or({type:"slash",value:"/",output:""});continue}if(Gn.type==="bos"&&tr[0]==="/"){Xe.type="globstar",Xe.value+=ft,Xe.output=`(?:^|${G}|${he(r)}${G})`,x.output=Xe.output,x.globstar=!0,dr(ft+Ur()),Or({type:"slash",value:"/",output:""});continue}x.output=x.output.slice(0,-Xe.output.length),Xe.type="globstar",Xe.output=he(r),Xe.value+=ft,x.output+=Xe.output,x.globstar=!0,dr(ft);continue}let gn={type:"star",value:ft,output:ke};if(r.bash===!0){gn.output=".*?",(Xe.type==="bos"||Xe.type==="slash")&&(gn.output=be+gn.output),Or(gn);continue}if(Xe&&(Xe.type==="bracket"||Xe.type==="paren")&&r.regex===!0){gn.output=ft,Or(gn);continue}(x.index===x.start||Xe.type==="slash"||Xe.type==="dot")&&(Xe.type==="dot"?(x.output+=U,Xe.output+=U):r.dot===!0?(x.output+=le,Xe.output+=le):(x.output+=be,Xe.output+=be),er()!=="*"&&(x.output+=T,Xe.output+=T)),Or(gn)}for(;x.brackets>0;){if(r.strictBrackets===!0)throw new SyntaxError(Abe("closing","]"));x.output=dW.escapeLast(x.output,"["),$r("brackets")}for(;x.parens>0;){if(r.strictBrackets===!0)throw new SyntaxError(Abe("closing",")"));x.output=dW.escapeLast(x.output,"("),$r("parens")}for(;x.braces>0;){if(r.strictBrackets===!0)throw new SyntaxError(Abe("closing","}"));x.output=dW.escapeLast(x.output,"{"),$r("braces")}if(r.strictSlashes!==!0&&(Xe.type==="star"||Xe.type==="bracket")&&Or({type:"maybe_slash",value:"",output:`${G}?`}),x.backtrack===!0){x.output="";for(let tr of x.tokens)x.output+=tr.output!=null?tr.output:tr.value,tr.suffix&&(x.output+=tr.suffix)}return x};DYt.fastpaths=(e,t)=>{let r={...t},s=typeof r.maxLength=="number"?Math.min(Prt,r.maxLength):Prt,a=e.length;if(a>s)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${s}`);e=ztn[e]||e;let o=dW.isWindows(t),{DOT_LITERAL:g,SLASH_LITERAL:p,ONE_CHAR:f,DOTS_SLASH:m,NO_DOT:y,NO_DOTS:B,NO_DOTS_SLASH:v,STAR:G,START_ANCHOR:T}=Wrt.globChars(o),O=r.dot?B:y,X=r.dot?v:y,U=r.capture?"":"?:",le={negated:!1,prefix:""},ae=r.bash===!0?".*?":G;r.capture&&(ae=`(${ae})`);let ge=be=>be.noglobstar===!0?ae:`(${U}(?:(?!${T}${be.dot?m:g}).)*?)`,fe=be=>{switch(be){case"*":return`${O}${f}${ae}`;case".*":return`${g}${f}${ae}`;case"*.*":return`${O}${ae}${g}${f}${ae}`;case"*/*":return`${O}${ae}${p}${f}${X}${ae}`;case"**":return O+ge(r);case"**/*":return`(?:${O}${ge(r)}${p})?${X}${f}${ae}`;case"**/*.*":return`(?:${O}${ge(r)}${p})?${X}${ae}${g}${f}${ae}`;case"**/.*":return`(?:${O}${ge(r)}${p})?${g}${f}${ae}`;default:{let Te=/^(.*?)\.(\w+)$/.exec(be);if(!Te)return;let ke=fe(Te[1]);return ke?ke+g+Te[2]:void 0}}},pe=dW.removePrefix(e,le),he=fe(pe);return he&&r.strictSlashes!==!0&&(he+=`${p}?`),he};qtn.exports=DYt});var trn=z((r9c,ern)=>{"use strict";var wDs=Dt("path"),TDs=jtn(),xYt=$tn(),kYt=y9e(),NDs=_9e(),RDs=e=>e&&typeof e=="object"&&!Array.isArray(e),zv=(e,t,r=!1)=>{if(Array.isArray(e)){let y=e.map(v=>zv(v,t,r));return v=>{for(let G of y){let T=G(v);if(T)return T}return!1}}let s=RDs(e)&&e.tokens&&e.input;if(e===""||typeof e!="string"&&!s)throw new TypeError("Expected pattern to be a non-empty string");let a=t||{},o=kYt.isWindows(t),g=s?zv.compileRe(e,t):zv.makeRe(e,t,!1,!0),p=g.state;delete g.state;let f=()=>!1;if(a.ignore){let y={...t,ignore:null,onMatch:null,onResult:null};f=zv(a.ignore,y,r)}let m=(y,B=!1)=>{let{isMatch:v,match:G,output:T}=zv.test(y,g,t,{glob:e,posix:o}),O={glob:e,state:p,regex:g,posix:o,input:y,output:T,match:G,isMatch:v};return typeof a.onResult=="function"&&a.onResult(O),v===!1?(O.isMatch=!1,B?O:!1):f(y)?(typeof a.onIgnore=="function"&&a.onIgnore(O),O.isMatch=!1,B?O:!1):(typeof a.onMatch=="function"&&a.onMatch(O),B?O:!0)};return r&&(m.state=p),m};zv.test=(e,t,r,{glob:s,posix:a}={})=>{if(typeof e!="string")throw new TypeError("Expected input to be a string");if(e==="")return{isMatch:!1,output:""};let o=r||{},g=o.format||(a?kYt.toPosixSlashes:null),p=e===s,f=p&&g?g(e):e;return p===!1&&(f=g?g(e):e,p=f===s),(p===!1||o.capture===!0)&&(o.matchBase===!0||o.basename===!0?p=zv.matchBase(e,t,r,a):p=t.exec(f)),{isMatch:!!p,match:p,output:f}};zv.matchBase=(e,t,r,s=kYt.isWindows(r))=>(t instanceof RegExp?t:zv.makeRe(t,r)).test(wDs.basename(e));zv.isMatch=(e,t,r)=>zv(t,r)(e);zv.parse=(e,t)=>Array.isArray(e)?e.map(r=>zv.parse(r,t)):xYt(e,{...t,fastpaths:!1});zv.scan=(e,t)=>TDs(e,t);zv.compileRe=(e,t,r=!1,s=!1)=>{if(r===!0)return e.output;let a=t||{},o=a.contains?"":"^",g=a.contains?"":"$",p=`${o}(?:${e.output})${g}`;e&&e.negated===!0&&(p=`^(?!${p}).*$`);let f=zv.toRegex(p,t);return s===!0&&(f.state=e),f};zv.makeRe=(e,t={},r=!1,s=!1)=>{if(!e||typeof e!="string")throw new TypeError("Expected a non-empty string");let a={negated:!1,fastpaths:!0};return t.fastpaths!==!1&&(e[0]==="."||e[0]==="*")&&(a.output=xYt.fastpaths(e,t)),a.output||(a=xYt(e,t)),zv.compileRe(a,t,r,s)};zv.toRegex=(e,t)=>{try{let r=t||{};return new RegExp(e,r.flags||(r.nocase?"i":""))}catch(r){if(t&&t.debug===!0)throw r;return/$^/}};zv.constants=NDs;ern.exports=zv});var nrn=z((n9c,rrn)=>{"use strict";rrn.exports=trn()});var sk=z((i9c,crn)=>{"use strict";var srn=Dt("util"),orn=Ltn(),mJ=nrn(),GYt=y9e(),irn=e=>e===""||e==="./",arn=e=>{let t=e.indexOf("{");return t>-1&&e.indexOf("}",t)>-1},jE=(e,t,r)=>{t=[].concat(t),e=[].concat(e);let s=new Set,a=new Set,o=new Set,g=0,p=y=>{o.add(y.output),r&&r.onResult&&r.onResult(y)};for(let y=0;y!s.has(y));if(r&&m.length===0){if(r.failglob===!0)throw new Error(`No matches found for "${t.join(", ")}"`);if(r.nonull===!0||r.nullglob===!0)return r.unescape?t.map(y=>y.replace(/\\/g,"")):t}return m};jE.match=jE;jE.matcher=(e,t)=>mJ(e,t);jE.isMatch=(e,t,r)=>mJ(t,r)(e);jE.any=jE.isMatch;jE.not=(e,t,r={})=>{t=[].concat(t).map(String);let s=new Set,a=[],o=p=>{r.onResult&&r.onResult(p),a.push(p.output)},g=new Set(jE(e,t,{...r,onResult:o}));for(let p of a)g.has(p)||s.add(p);return[...s]};jE.contains=(e,t,r)=>{if(typeof e!="string")throw new TypeError(`Expected a string: "${srn.inspect(e)}"`);if(Array.isArray(t))return t.some(s=>jE.contains(e,s,r));if(typeof t=="string"){if(irn(e)||irn(t))return!1;if(e.includes(t)||e.startsWith("./")&&e.slice(2).includes(t))return!0}return jE.isMatch(e,t,{...r,contains:!0})};jE.matchKeys=(e,t,r)=>{if(!GYt.isObject(e))throw new TypeError("Expected the first argument to be an object");let s=jE(Object.keys(e),t,r),a={};for(let o of s)a[o]=e[o];return a};jE.some=(e,t,r)=>{let s=[].concat(e);for(let a of[].concat(t)){let o=mJ(String(a),r);if(s.some(g=>o(g)))return!0}return!1};jE.every=(e,t,r)=>{let s=[].concat(e);for(let a of[].concat(t)){let o=mJ(String(a),r);if(!s.every(g=>o(g)))return!1}return!0};jE.all=(e,t,r)=>{if(typeof e!="string")throw new TypeError(`Expected a string: "${srn.inspect(e)}"`);return[].concat(t).every(s=>mJ(s,r)(e))};jE.capture=(e,t,r)=>{let s=GYt.isWindows(r),o=mJ.makeRe(String(e),{...r,capture:!0}).exec(s?GYt.toPosixSlashes(t):t);if(o)return o.slice(1).map(g=>g===void 0?"":g)};jE.makeRe=(...e)=>mJ.makeRe(...e);jE.scan=(...e)=>mJ.scan(...e);jE.parse=(e,t)=>{let r=[];for(let s of[].concat(e||[]))for(let a of orn(String(s),t))r.push(mJ.parse(a,t));return r};jE.braces=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");return t&&t.nobrace===!0||!arn(e)?[e]:orn(e,t)};jE.braceExpand=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");return jE.braces(e,{...t,expand:!0})};jE.hasBraces=arn;crn.exports=jE});var urn=z((s9c,lrn)=>{"use strict";lrn.exports=({onlyFirst:e=!1}={})=>{let t=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"].join("|");return new RegExp(t,e?void 0:"g")}});var AO=z((o9c,grn)=>{"use strict";var DDs=urn();grn.exports=e=>typeof e=="string"?e.replace(DDs(),""):e});var drn=z((a9c,Arn)=>{function xDs(){this.__data__=[],this.size=0}Arn.exports=xDs});var dbe=z((c9c,prn)=>{function kDs(e,t){return e===t||e!==e&&t!==t}prn.exports=kDs});var E9e=z((l9c,frn)=>{var GDs=dbe();function FDs(e,t){for(var r=e.length;r--;)if(GDs(e[r][0],t))return r;return-1}frn.exports=FDs});var Crn=z((u9c,Irn)=>{var ZDs=E9e(),LDs=Array.prototype,VDs=LDs.splice;function WDs(e){var t=this.__data__,r=ZDs(t,e);if(r<0)return!1;var s=t.length-1;return r==s?t.pop():VDs.call(t,r,1),--this.size,!0}Irn.exports=WDs});var hrn=z((g9c,mrn)=>{var PDs=E9e();function ODs(e){var t=this.__data__,r=PDs(t,e);return r<0?void 0:t[r][1]}mrn.exports=ODs});var yrn=z((A9c,_rn)=>{var MDs=E9e();function QDs(e){return MDs(this.__data__,e)>-1}_rn.exports=QDs});var Ern=z((d9c,brn)=>{var YDs=E9e();function HDs(e,t){var r=this.__data__,s=YDs(r,e);return s<0?(++this.size,r.push([e,t])):r[s][1]=t,this}brn.exports=HDs});var B9e=z((p9c,Brn)=>{var XDs=drn(),JDs=Crn(),UDs=hrn(),KDs=yrn(),jDs=Ern();function pbe(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t{var zDs=B9e();function qDs(){this.__data__=new zDs,this.size=0}vrn.exports=qDs});var Trn=z((I9c,wrn)=>{function $Ds(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r}wrn.exports=$Ds});var Rrn=z((C9c,Nrn)=>{function exs(e){return this.__data__.get(e)}Nrn.exports=exs});var xrn=z((m9c,Drn)=>{function txs(e){return this.__data__.has(e)}Drn.exports=txs});var FYt=z((h9c,krn)=>{var rxs=typeof global=="object"&&global&&global.Object===Object&&global;krn.exports=rxs});var dO=z((_9c,Grn)=>{var nxs=FYt(),ixs=typeof self=="object"&&self&&self.Object===Object&&self,sxs=nxs||ixs||Function("return this")();Grn.exports=sxs});var eAe=z((y9c,Frn)=>{var oxs=dO(),axs=oxs.Symbol;Frn.exports=axs});var Wrn=z((b9c,Vrn)=>{var Zrn=eAe(),Lrn=Object.prototype,cxs=Lrn.hasOwnProperty,lxs=Lrn.toString,v9e=Zrn?Zrn.toStringTag:void 0;function uxs(e){var t=cxs.call(e,v9e),r=e[v9e];try{e[v9e]=void 0;var s=!0}catch{}var a=lxs.call(e);return s&&(t?e[v9e]=r:delete e[v9e]),a}Vrn.exports=uxs});var Orn=z((E9c,Prn)=>{var gxs=Object.prototype,Axs=gxs.toString;function dxs(e){return Axs.call(e)}Prn.exports=dxs});var tAe=z((B9c,Yrn)=>{var Mrn=eAe(),pxs=Wrn(),fxs=Orn(),Ixs="[object Null]",Cxs="[object Undefined]",Qrn=Mrn?Mrn.toStringTag:void 0;function mxs(e){return e==null?e===void 0?Cxs:Ixs:Qrn&&Qrn in Object(e)?pxs(e):fxs(e)}Yrn.exports=mxs});var pW=z((v9c,Hrn)=>{function hxs(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}Hrn.exports=hxs});var Ort=z((S9c,Xrn)=>{var _xs=tAe(),yxs=pW(),bxs="[object AsyncFunction]",Exs="[object Function]",Bxs="[object GeneratorFunction]",vxs="[object Proxy]";function Sxs(e){if(!yxs(e))return!1;var t=_xs(e);return t==Exs||t==Bxs||t==bxs||t==vxs}Xrn.exports=Sxs});var Urn=z((w9c,Jrn)=>{var wxs=dO(),Txs=wxs["__core-js_shared__"];Jrn.exports=Txs});var zrn=z((T9c,jrn)=>{var ZYt=Urn(),Krn=function(){var e=/[^.]+$/.exec(ZYt&&ZYt.keys&&ZYt.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function Nxs(e){return!!Krn&&Krn in e}jrn.exports=Nxs});var LYt=z((N9c,qrn)=>{var Rxs=Function.prototype,Dxs=Rxs.toString;function xxs(e){if(e!=null){try{return Dxs.call(e)}catch{}try{return e+""}catch{}}return""}qrn.exports=xxs});var enn=z((R9c,$rn)=>{var kxs=Ort(),Gxs=zrn(),Fxs=pW(),Zxs=LYt(),Lxs=/[\\^$.*+?()[\]{}|]/g,Vxs=/^\[object .+?Constructor\]$/,Wxs=Function.prototype,Pxs=Object.prototype,Oxs=Wxs.toString,Mxs=Pxs.hasOwnProperty,Qxs=RegExp("^"+Oxs.call(Mxs).replace(Lxs,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Yxs(e){if(!Fxs(e)||Gxs(e))return!1;var t=kxs(e)?Qxs:Vxs;return t.test(Zxs(e))}$rn.exports=Yxs});var rnn=z((D9c,tnn)=>{function Hxs(e,t){return e?.[t]}tnn.exports=Hxs});var ine=z((x9c,nnn)=>{var Xxs=enn(),Jxs=rnn();function Uxs(e,t){var r=Jxs(e,t);return Xxs(r)?r:void 0}nnn.exports=Uxs});var Mrt=z((k9c,inn)=>{var Kxs=ine(),jxs=dO(),zxs=Kxs(jxs,"Map");inn.exports=zxs});var S9e=z((G9c,snn)=>{var qxs=ine(),$xs=qxs(Object,"create");snn.exports=$xs});var cnn=z((F9c,ann)=>{var onn=S9e();function eks(){this.__data__=onn?onn(null):{},this.size=0}ann.exports=eks});var unn=z((Z9c,lnn)=>{function tks(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}lnn.exports=tks});var Ann=z((L9c,gnn)=>{var rks=S9e(),nks="__lodash_hash_undefined__",iks=Object.prototype,sks=iks.hasOwnProperty;function oks(e){var t=this.__data__;if(rks){var r=t[e];return r===nks?void 0:r}return sks.call(t,e)?t[e]:void 0}gnn.exports=oks});var pnn=z((V9c,dnn)=>{var aks=S9e(),cks=Object.prototype,lks=cks.hasOwnProperty;function uks(e){var t=this.__data__;return aks?t[e]!==void 0:lks.call(t,e)}dnn.exports=uks});var Inn=z((W9c,fnn)=>{var gks=S9e(),Aks="__lodash_hash_undefined__";function dks(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=gks&&t===void 0?Aks:t,this}fnn.exports=dks});var mnn=z((P9c,Cnn)=>{var pks=cnn(),fks=unn(),Iks=Ann(),Cks=pnn(),mks=Inn();function fbe(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t{var hnn=mnn(),hks=B9e(),_ks=Mrt();function yks(){this.size=0,this.__data__={hash:new hnn,map:new(_ks||hks),string:new hnn}}_nn.exports=yks});var Enn=z((M9c,bnn)=>{function bks(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}bnn.exports=bks});var w9e=z((Q9c,Bnn)=>{var Eks=Enn();function Bks(e,t){var r=e.__data__;return Eks(t)?r[typeof t=="string"?"string":"hash"]:r.map}Bnn.exports=Bks});var Snn=z((Y9c,vnn)=>{var vks=w9e();function Sks(e){var t=vks(this,e).delete(e);return this.size-=t?1:0,t}vnn.exports=Sks});var Tnn=z((H9c,wnn)=>{var wks=w9e();function Tks(e){return wks(this,e).get(e)}wnn.exports=Tks});var Rnn=z((X9c,Nnn)=>{var Nks=w9e();function Rks(e){return Nks(this,e).has(e)}Nnn.exports=Rks});var xnn=z((J9c,Dnn)=>{var Dks=w9e();function xks(e,t){var r=Dks(this,e),s=r.size;return r.set(e,t),this.size+=r.size==s?0:1,this}Dnn.exports=xks});var Qrt=z((U9c,knn)=>{var kks=ynn(),Gks=Snn(),Fks=Tnn(),Zks=Rnn(),Lks=xnn();function Ibe(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t{var Vks=B9e(),Wks=Mrt(),Pks=Qrt(),Oks=200;function Mks(e,t){var r=this.__data__;if(r instanceof Vks){var s=r.__data__;if(!Wks||s.length{var Qks=B9e(),Yks=Srn(),Hks=Trn(),Xks=Rrn(),Jks=xrn(),Uks=Fnn();function Cbe(e){var t=this.__data__=new Qks(e);this.size=t.size}Cbe.prototype.clear=Yks;Cbe.prototype.delete=Hks;Cbe.prototype.get=Xks;Cbe.prototype.has=Jks;Cbe.prototype.set=Uks;Znn.exports=Cbe});var Vnn=z((z9c,Lnn)=>{var Kks="__lodash_hash_undefined__";function jks(e){return this.__data__.set(e,Kks),this}Lnn.exports=jks});var Pnn=z((q9c,Wnn)=>{function zks(e){return this.__data__.has(e)}Wnn.exports=zks});var Mnn=z(($9c,Onn)=>{var qks=Qrt(),$ks=Vnn(),eGs=Pnn();function Hrt(e){var t=-1,r=e==null?0:e.length;for(this.__data__=new qks;++t{function tGs(e,t){for(var r=-1,s=e==null?0:e.length;++r{function rGs(e,t){return e.has(t)}Hnn.exports=rGs});var VYt=z((rVc,Jnn)=>{var nGs=Mnn(),iGs=Ynn(),sGs=Xnn(),oGs=1,aGs=2;function cGs(e,t,r,s,a,o){var g=r&oGs,p=e.length,f=t.length;if(p!=f&&!(g&&f>p))return!1;var m=o.get(e),y=o.get(t);if(m&&y)return m==t&&y==e;var B=-1,v=!0,G=r&aGs?new nGs:void 0;for(o.set(e,t),o.set(t,e);++B{var lGs=dO(),uGs=lGs.Uint8Array;Unn.exports=uGs});var jnn=z((iVc,Knn)=>{function gGs(e){var t=-1,r=Array(e.size);return e.forEach(function(s,a){r[++t]=[a,s]}),r}Knn.exports=gGs});var qnn=z((sVc,znn)=>{function AGs(e){var t=-1,r=Array(e.size);return e.forEach(function(s){r[++t]=s}),r}znn.exports=AGs});var nin=z((oVc,rin)=>{var $nn=eAe(),ein=WYt(),dGs=dbe(),pGs=VYt(),fGs=jnn(),IGs=qnn(),CGs=1,mGs=2,hGs="[object Boolean]",_Gs="[object Date]",yGs="[object Error]",bGs="[object Map]",EGs="[object Number]",BGs="[object RegExp]",vGs="[object Set]",SGs="[object String]",wGs="[object Symbol]",TGs="[object ArrayBuffer]",NGs="[object DataView]",tin=$nn?$nn.prototype:void 0,PYt=tin?tin.valueOf:void 0;function RGs(e,t,r,s,a,o,g){switch(r){case NGs:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case TGs:return!(e.byteLength!=t.byteLength||!o(new ein(e),new ein(t)));case hGs:case _Gs:case EGs:return dGs(+e,+t);case yGs:return e.name==t.name&&e.message==t.message;case BGs:case SGs:return e==t+"";case bGs:var p=fGs;case vGs:var f=s&CGs;if(p||(p=IGs),e.size!=t.size&&!f)return!1;var m=g.get(e);if(m)return m==t;s|=mGs,g.set(e,t);var y=pGs(p(e),p(t),s,a,o,g);return g.delete(e),y;case wGs:if(PYt)return PYt.call(e)==PYt.call(t)}return!1}rin.exports=RGs});var Xrt=z((aVc,iin)=>{function DGs(e,t){for(var r=-1,s=t.length,a=e.length;++r{var xGs=Array.isArray;sin.exports=xGs});var OYt=z((lVc,oin)=>{var kGs=Xrt(),GGs=dH();function FGs(e,t,r){var s=t(e);return GGs(e)?s:kGs(s,r(e))}oin.exports=FGs});var cin=z((uVc,ain)=>{function ZGs(e,t){for(var r=-1,s=e==null?0:e.length,a=0,o=[];++r{function LGs(){return[]}lin.exports=LGs});var Jrt=z((AVc,gin)=>{var VGs=cin(),WGs=MYt(),PGs=Object.prototype,OGs=PGs.propertyIsEnumerable,uin=Object.getOwnPropertySymbols,MGs=uin?function(e){return e==null?[]:(e=Object(e),VGs(uin(e),function(t){return OGs.call(e,t)}))}:WGs;gin.exports=MGs});var din=z((dVc,Ain)=>{function QGs(e,t){for(var r=-1,s=Array(e);++r{function YGs(e){return e!=null&&typeof e=="object"}pin.exports=YGs});var Iin=z((fVc,fin)=>{var HGs=tAe(),XGs=hJ(),JGs="[object Arguments]";function UGs(e){return XGs(e)&&HGs(e)==JGs}fin.exports=UGs});var T9e=z((IVc,hin)=>{var Cin=Iin(),KGs=hJ(),min=Object.prototype,jGs=min.hasOwnProperty,zGs=min.propertyIsEnumerable,qGs=Cin(function(){return arguments}())?Cin:function(e){return KGs(e)&&jGs.call(e,"callee")&&!zGs.call(e,"callee")};hin.exports=qGs});var yin=z((CVc,_in)=>{function $Gs(){return!1}_in.exports=$Gs});var R9e=z((N9e,mbe)=>{var eFs=dO(),tFs=yin(),Bin=typeof N9e=="object"&&N9e&&!N9e.nodeType&&N9e,bin=Bin&&typeof mbe=="object"&&mbe&&!mbe.nodeType&&mbe,rFs=bin&&bin.exports===Bin,Ein=rFs?eFs.Buffer:void 0,nFs=Ein?Ein.isBuffer:void 0,iFs=nFs||tFs;mbe.exports=iFs});var D9e=z((mVc,vin)=>{var sFs=9007199254740991,oFs=/^(?:0|[1-9]\d*)$/;function aFs(e,t){var r=typeof e;return t=t??sFs,!!t&&(r=="number"||r!="symbol"&&oFs.test(e))&&e>-1&&e%1==0&&e{var cFs=9007199254740991;function lFs(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=cFs}Sin.exports=lFs});var Tin=z((_Vc,win)=>{var uFs=tAe(),gFs=Urt(),AFs=hJ(),dFs="[object Arguments]",pFs="[object Array]",fFs="[object Boolean]",IFs="[object Date]",CFs="[object Error]",mFs="[object Function]",hFs="[object Map]",_Fs="[object Number]",yFs="[object Object]",bFs="[object RegExp]",EFs="[object Set]",BFs="[object String]",vFs="[object WeakMap]",SFs="[object ArrayBuffer]",wFs="[object DataView]",TFs="[object Float32Array]",NFs="[object Float64Array]",RFs="[object Int8Array]",DFs="[object Int16Array]",xFs="[object Int32Array]",kFs="[object Uint8Array]",GFs="[object Uint8ClampedArray]",FFs="[object Uint16Array]",ZFs="[object Uint32Array]",zE={};zE[TFs]=zE[NFs]=zE[RFs]=zE[DFs]=zE[xFs]=zE[kFs]=zE[GFs]=zE[FFs]=zE[ZFs]=!0;zE[dFs]=zE[pFs]=zE[SFs]=zE[fFs]=zE[wFs]=zE[IFs]=zE[CFs]=zE[mFs]=zE[hFs]=zE[_Fs]=zE[yFs]=zE[bFs]=zE[EFs]=zE[BFs]=zE[vFs]=!1;function LFs(e){return AFs(e)&&gFs(e.length)&&!!zE[uFs(e)]}win.exports=LFs});var Krt=z((yVc,Nin)=>{function VFs(e){return function(t){return e(t)}}Nin.exports=VFs});var jrt=z((x9e,hbe)=>{var WFs=FYt(),Rin=typeof x9e=="object"&&x9e&&!x9e.nodeType&&x9e,k9e=Rin&&typeof hbe=="object"&&hbe&&!hbe.nodeType&&hbe,PFs=k9e&&k9e.exports===Rin,QYt=PFs&&WFs.process,OFs=function(){try{var e=k9e&&k9e.require&&k9e.require("util").types;return e||QYt&&QYt.binding&&QYt.binding("util")}catch{}}();hbe.exports=OFs});var zrt=z((bVc,kin)=>{var MFs=Tin(),QFs=Krt(),Din=jrt(),xin=Din&&Din.isTypedArray,YFs=xin?QFs(xin):MFs;kin.exports=YFs});var YYt=z((EVc,Gin)=>{var HFs=din(),XFs=T9e(),JFs=dH(),UFs=R9e(),KFs=D9e(),jFs=zrt(),zFs=Object.prototype,qFs=zFs.hasOwnProperty;function $Fs(e,t){var r=JFs(e),s=!r&&XFs(e),a=!r&&!s&&UFs(e),o=!r&&!s&&!a&&jFs(e),g=r||s||a||o,p=g?HFs(e.length,String):[],f=p.length;for(var m in e)(t||qFs.call(e,m))&&!(g&&(m=="length"||a&&(m=="offset"||m=="parent")||o&&(m=="buffer"||m=="byteLength"||m=="byteOffset")||KFs(m,f)))&&p.push(m);return p}Gin.exports=$Fs});var qrt=z((BVc,Fin)=>{var eZs=Object.prototype;function tZs(e){var t=e&&e.constructor,r=typeof t=="function"&&t.prototype||eZs;return e===r}Fin.exports=tZs});var HYt=z((vVc,Zin)=>{function rZs(e,t){return function(r){return e(t(r))}}Zin.exports=rZs});var Vin=z((SVc,Lin)=>{var nZs=HYt(),iZs=nZs(Object.keys,Object);Lin.exports=iZs});var Pin=z((wVc,Win)=>{var sZs=qrt(),oZs=Vin(),aZs=Object.prototype,cZs=aZs.hasOwnProperty;function lZs(e){if(!sZs(e))return oZs(e);var t=[];for(var r in Object(e))cZs.call(e,r)&&r!="constructor"&&t.push(r);return t}Win.exports=lZs});var G9e=z((TVc,Oin)=>{var uZs=Ort(),gZs=Urt();function AZs(e){return e!=null&&gZs(e.length)&&!uZs(e)}Oin.exports=AZs});var $rt=z((NVc,Min)=>{var dZs=YYt(),pZs=Pin(),fZs=G9e();function IZs(e){return fZs(e)?dZs(e):pZs(e)}Min.exports=IZs});var XYt=z((RVc,Qin)=>{var CZs=OYt(),mZs=Jrt(),hZs=$rt();function _Zs(e){return CZs(e,hZs,mZs)}Qin.exports=_Zs});var Xin=z((DVc,Hin)=>{var Yin=XYt(),yZs=1,bZs=Object.prototype,EZs=bZs.hasOwnProperty;function BZs(e,t,r,s,a,o){var g=r&yZs,p=Yin(e),f=p.length,m=Yin(t),y=m.length;if(f!=y&&!g)return!1;for(var B=f;B--;){var v=p[B];if(!(g?v in t:EZs.call(t,v)))return!1}var G=o.get(e),T=o.get(t);if(G&&T)return G==t&&T==e;var O=!0;o.set(e,t),o.set(t,e);for(var X=g;++B{var vZs=ine(),SZs=dO(),wZs=vZs(SZs,"DataView");Jin.exports=wZs});var jin=z((kVc,Kin)=>{var TZs=ine(),NZs=dO(),RZs=TZs(NZs,"Promise");Kin.exports=RZs});var qin=z((GVc,zin)=>{var DZs=ine(),xZs=dO(),kZs=DZs(xZs,"Set");zin.exports=kZs});var esn=z((FVc,$in)=>{var GZs=ine(),FZs=dO(),ZZs=GZs(FZs,"WeakMap");$in.exports=ZZs});var F9e=z((ZVc,asn)=>{var JYt=Uin(),UYt=Mrt(),KYt=jin(),jYt=qin(),zYt=esn(),osn=tAe(),_be=LYt(),tsn="[object Map]",LZs="[object Object]",rsn="[object Promise]",nsn="[object Set]",isn="[object WeakMap]",ssn="[object DataView]",VZs=_be(JYt),WZs=_be(UYt),PZs=_be(KYt),OZs=_be(jYt),MZs=_be(zYt),rAe=osn;(JYt&&rAe(new JYt(new ArrayBuffer(1)))!=ssn||UYt&&rAe(new UYt)!=tsn||KYt&&rAe(KYt.resolve())!=rsn||jYt&&rAe(new jYt)!=nsn||zYt&&rAe(new zYt)!=isn)&&(rAe=function(e){var t=osn(e),r=t==LZs?e.constructor:void 0,s=r?_be(r):"";if(s)switch(s){case VZs:return ssn;case WZs:return tsn;case PZs:return rsn;case OZs:return nsn;case MZs:return isn}return t});asn.exports=rAe});var fsn=z((LVc,psn)=>{var qYt=Yrt(),QZs=VYt(),YZs=nin(),HZs=Xin(),csn=F9e(),lsn=dH(),usn=R9e(),XZs=zrt(),JZs=1,gsn="[object Arguments]",Asn="[object Array]",ent="[object Object]",UZs=Object.prototype,dsn=UZs.hasOwnProperty;function KZs(e,t,r,s,a,o){var g=lsn(e),p=lsn(t),f=g?Asn:csn(e),m=p?Asn:csn(t);f=f==gsn?ent:f,m=m==gsn?ent:m;var y=f==ent,B=m==ent,v=f==m;if(v&&usn(e)){if(!usn(t))return!1;g=!0,y=!1}if(v&&!y)return o||(o=new qYt),g||XZs(e)?QZs(e,t,r,s,a,o):YZs(e,t,f,r,s,a,o);if(!(r&JZs)){var G=y&&dsn.call(e,"__wrapped__"),T=B&&dsn.call(t,"__wrapped__");if(G||T){var O=G?e.value():e,X=T?t.value():t;return o||(o=new qYt),a(O,X,r,s,o)}}return v?(o||(o=new qYt),HZs(e,t,r,s,a,o)):!1}psn.exports=KZs});var hsn=z((VVc,msn)=>{var jZs=fsn(),Isn=hJ();function Csn(e,t,r,s,a){return e===t?!0:e==null||t==null||!Isn(e)&&!Isn(t)?e!==e&&t!==t:jZs(e,t,r,s,Csn,a)}msn.exports=Csn});var ysn=z((WVc,_sn)=>{var zZs=hsn();function qZs(e,t){return zZs(e,t)}_sn.exports=qZs});var $Yt=z((PVc,bsn)=>{var $Zs=ine(),eLs=function(){try{var e=$Zs(Object,"defineProperty");return e({},"",{}),e}catch{}}();bsn.exports=eLs});var tnt=z((OVc,Bsn)=>{var Esn=$Yt();function tLs(e,t,r){t=="__proto__"&&Esn?Esn(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r}Bsn.exports=tLs});var eHt=z((MVc,vsn)=>{var rLs=tnt(),nLs=dbe();function iLs(e,t,r){(r!==void 0&&!nLs(e[t],r)||r===void 0&&!(t in e))&&rLs(e,t,r)}vsn.exports=iLs});var wsn=z((QVc,Ssn)=>{function sLs(e){return function(t,r,s){for(var a=-1,o=Object(t),g=s(t),p=g.length;p--;){var f=g[e?p:++a];if(r(o[f],f,o)===!1)break}return t}}Ssn.exports=sLs});var Nsn=z((YVc,Tsn)=>{var oLs=wsn(),aLs=oLs();Tsn.exports=aLs});var tHt=z((Z9e,ybe)=>{var cLs=dO(),ksn=typeof Z9e=="object"&&Z9e&&!Z9e.nodeType&&Z9e,Rsn=ksn&&typeof ybe=="object"&&ybe&&!ybe.nodeType&&ybe,lLs=Rsn&&Rsn.exports===ksn,Dsn=lLs?cLs.Buffer:void 0,xsn=Dsn?Dsn.allocUnsafe:void 0;function uLs(e,t){if(t)return e.slice();var r=e.length,s=xsn?xsn(r):new e.constructor(r);return e.copy(s),s}ybe.exports=uLs});var rnt=z((HVc,Fsn)=>{var Gsn=WYt();function gLs(e){var t=new e.constructor(e.byteLength);return new Gsn(t).set(new Gsn(e)),t}Fsn.exports=gLs});var rHt=z((XVc,Zsn)=>{var ALs=rnt();function dLs(e,t){var r=t?ALs(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.length)}Zsn.exports=dLs});var nHt=z((JVc,Lsn)=>{function pLs(e,t){var r=-1,s=e.length;for(t||(t=Array(s));++r{var fLs=pW(),Vsn=Object.create,ILs=function(){function e(){}return function(t){if(!fLs(t))return{};if(Vsn)return Vsn(t);e.prototype=t;var r=new e;return e.prototype=void 0,r}}();Wsn.exports=ILs});var nnt=z((KVc,Osn)=>{var CLs=HYt(),mLs=CLs(Object.getPrototypeOf,Object);Osn.exports=mLs});var iHt=z((jVc,Msn)=>{var hLs=Psn(),_Ls=nnt(),yLs=qrt();function bLs(e){return typeof e.constructor=="function"&&!yLs(e)?hLs(_Ls(e)):{}}Msn.exports=bLs});var Ysn=z((zVc,Qsn)=>{var ELs=G9e(),BLs=hJ();function vLs(e){return BLs(e)&&ELs(e)}Qsn.exports=vLs});var sHt=z((qVc,Xsn)=>{var SLs=tAe(),wLs=nnt(),TLs=hJ(),NLs="[object Object]",RLs=Function.prototype,DLs=Object.prototype,Hsn=RLs.toString,xLs=DLs.hasOwnProperty,kLs=Hsn.call(Object);function GLs(e){if(!TLs(e)||SLs(e)!=NLs)return!1;var t=wLs(e);if(t===null)return!0;var r=xLs.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Hsn.call(r)==kLs}Xsn.exports=GLs});var oHt=z(($Vc,Jsn)=>{function FLs(e,t){if(!(t==="constructor"&&typeof e[t]=="function")&&t!="__proto__")return e[t]}Jsn.exports=FLs});var int=z((eWc,Usn)=>{var ZLs=tnt(),LLs=dbe(),VLs=Object.prototype,WLs=VLs.hasOwnProperty;function PLs(e,t,r){var s=e[t];(!(WLs.call(e,t)&&LLs(s,r))||r===void 0&&!(t in e))&&ZLs(e,t,r)}Usn.exports=PLs});var nAe=z((tWc,Ksn)=>{var OLs=int(),MLs=tnt();function QLs(e,t,r,s){var a=!r;r||(r={});for(var o=-1,g=t.length;++o{function YLs(e){var t=[];if(e!=null)for(var r in Object(e))t.push(r);return t}jsn.exports=YLs});var $sn=z((nWc,qsn)=>{var HLs=pW(),XLs=qrt(),JLs=zsn(),ULs=Object.prototype,KLs=ULs.hasOwnProperty;function jLs(e){if(!HLs(e))return JLs(e);var t=XLs(e),r=[];for(var s in e)s=="constructor"&&(t||!KLs.call(e,s))||r.push(s);return r}qsn.exports=jLs});var bbe=z((iWc,eon)=>{var zLs=YYt(),qLs=$sn(),$Ls=G9e();function e9s(e){return $Ls(e)?zLs(e,!0):qLs(e)}eon.exports=e9s});var ron=z((sWc,ton)=>{var t9s=nAe(),r9s=bbe();function n9s(e){return t9s(e,r9s(e))}ton.exports=n9s});var con=z((oWc,aon)=>{var non=eHt(),i9s=tHt(),s9s=rHt(),o9s=nHt(),a9s=iHt(),ion=T9e(),son=dH(),c9s=Ysn(),l9s=R9e(),u9s=Ort(),g9s=pW(),A9s=sHt(),d9s=zrt(),oon=oHt(),p9s=ron();function f9s(e,t,r,s,a,o,g){var p=oon(e,r),f=oon(t,r),m=g.get(f);if(m){non(e,r,m);return}var y=o?o(p,f,r+"",e,t,g):void 0,B=y===void 0;if(B){var v=son(f),G=!v&&l9s(f),T=!v&&!G&&d9s(f);y=f,v||G||T?son(p)?y=p:c9s(p)?y=o9s(p):G?(B=!1,y=i9s(f,!0)):T?(B=!1,y=s9s(f,!0)):y=[]:A9s(f)||ion(f)?(y=p,ion(p)?y=p9s(p):(!g9s(p)||u9s(p))&&(y=a9s(f))):B=!1}B&&(g.set(f,y),a(y,f,s,o,g),g.delete(f)),non(e,r,y)}aon.exports=f9s});var gon=z((aWc,uon)=>{var I9s=Yrt(),C9s=eHt(),m9s=Nsn(),h9s=con(),_9s=pW(),y9s=bbe(),b9s=oHt();function lon(e,t,r,s,a){e!==t&&m9s(t,function(o,g){if(a||(a=new I9s),_9s(o))h9s(e,t,g,r,lon,s,a);else{var p=s?s(b9s(e,g),o,g+"",e,t,a):void 0;p===void 0&&(p=o),C9s(e,g,p)}},y9s)}uon.exports=lon});var aHt=z((cWc,Aon)=>{function E9s(e){return e}Aon.exports=E9s});var pon=z((lWc,don)=>{function B9s(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}don.exports=B9s});var cHt=z((uWc,Ion)=>{var v9s=pon(),fon=Math.max;function S9s(e,t,r){return t=fon(t===void 0?e.length-1:t,0),function(){for(var s=arguments,a=-1,o=fon(s.length-t,0),g=Array(o);++a{function w9s(e){return function(){return e}}Con.exports=w9s});var yon=z((AWc,_on)=>{var T9s=mon(),hon=$Yt(),N9s=aHt(),R9s=hon?function(e,t){return hon(e,"toString",{configurable:!0,enumerable:!1,value:T9s(t),writable:!0})}:N9s;_on.exports=R9s});var Eon=z((dWc,bon)=>{var D9s=800,x9s=16,k9s=Date.now;function G9s(e){var t=0,r=0;return function(){var s=k9s(),a=x9s-(s-r);if(r=s,a>0){if(++t>=D9s)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}bon.exports=G9s});var lHt=z((pWc,Bon)=>{var F9s=yon(),Z9s=Eon(),L9s=Z9s(F9s);Bon.exports=L9s});var Son=z((fWc,von)=>{var V9s=aHt(),W9s=cHt(),P9s=lHt();function O9s(e,t){return P9s(W9s(e,t,V9s),e+"")}von.exports=O9s});var Ton=z((IWc,won)=>{var M9s=dbe(),Q9s=G9e(),Y9s=D9e(),H9s=pW();function X9s(e,t,r){if(!H9s(r))return!1;var s=typeof t;return(s=="number"?Q9s(r)&&Y9s(t,r.length):s=="string"&&t in r)?M9s(r[t],e):!1}won.exports=X9s});var Ron=z((CWc,Non)=>{var J9s=Son(),U9s=Ton();function K9s(e){return J9s(function(t,r){var s=-1,a=r.length,o=a>1?r[a-1]:void 0,g=a>2?r[2]:void 0;for(o=e.length>3&&typeof o=="function"?(a--,o):void 0,g&&U9s(r[0],r[1],g)&&(o=a<3?void 0:o,a=1),t=Object(t);++s{var j9s=gon(),z9s=Ron(),q9s=z9s(function(e,t,r,s){j9s(e,t,r,s)});Don.exports=q9s});var fW=z((exports,module)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.CachingStrategy=exports.DefaultStream=exports.AsyncActions=exports.BufferStream=void 0;exports.isTaggedYarnVersion=isTaggedYarnVersion;exports.plural=plural;exports.escapeRegExp=escapeRegExp;exports.overrideType=overrideType;exports.assertNever=assertNever;exports.validateEnum=validateEnum;exports.mapAndFilter=mapAndFilter;exports.mapAndFind=mapAndFind;exports.isIndexableObject=isIndexableObject;exports.allSettledSafe=allSettledSafe;exports.convertMapsToIndexableObjects=convertMapsToIndexableObjects;exports.getFactoryWithDefault=getFactoryWithDefault;exports.getArrayWithDefault=getArrayWithDefault;exports.getSetWithDefault=getSetWithDefault;exports.getMapWithDefault=getMapWithDefault;exports.releaseAfterUseAsync=releaseAfterUseAsync;exports.prettifyAsyncErrors=prettifyAsyncErrors;exports.prettifySyncErrors=prettifySyncErrors;exports.bufferStream=bufferStream;exports.makeDeferred=makeDeferred;exports.dynamicRequire=dynamicRequire;exports.sortMap=sortMap;exports.buildIgnorePattern=buildIgnorePattern;exports.replaceEnvVariables=replaceEnvVariables;exports.parseBoolean=parseBoolean;exports.parseOptionalBoolean=parseOptionalBoolean;exports.tryParseOptionalBoolean=tryParseOptionalBoolean;exports.isPathLike=isPathLike;exports.mergeIntoTarget=mergeIntoTarget;exports.toMerged=toMerged;exports.groupBy=groupBy;exports.parseInt=parseInt;var tslib_1=(Ma(),Ai(Oa)),fslib_1=Ro(),clipanion_1=(Fl(),Ai(dg)),isEqual_1=tslib_1.__importDefault(ysn()),mergeWith_1=tslib_1.__importDefault(xon()),micromatch_1=tslib_1.__importDefault(sk()),p_limit_1=tslib_1.__importDefault(Kge()),semver_1=tslib_1.__importDefault(Lh()),stream_1=Dt("stream");function isTaggedYarnVersion(e){return!!(semver_1.default.valid(e)&&e.match(/^[^-]+(-rc\.[0-9]+)?$/))}function plural(e,{one:t,more:r,zero:s=r}){return e===0?s:e===1?t:r}function escapeRegExp(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function overrideType(e){}function assertNever(e){throw new Error(`Assertion failed: Unexpected object '${e}'`)}function validateEnum(e,t){let r=Object.values(e);if(!r.includes(t))throw new clipanion_1.UsageError(`Invalid value for enumeration: ${JSON.stringify(t)} (expected one of ${r.map(s=>JSON.stringify(s)).join(", ")})`);return t}function mapAndFilter(e,t){let r=[];for(let s of e){let a=t(s);a!==mapAndFilterSkip&&r.push(a)}return r}var mapAndFilterSkip=Symbol();mapAndFilter.skip=mapAndFilterSkip;function mapAndFind(e,t){for(let r of e){let s=t(r);if(s!==mapAndFindSkip)return s}}var mapAndFindSkip=Symbol();mapAndFind.skip=mapAndFindSkip;function isIndexableObject(e){return typeof e=="object"&&e!==null}async function allSettledSafe(e){let t=await Promise.allSettled(e),r=[];for(let s of t){if(s.status==="rejected")throw s.reason;r.push(s.value)}return r}function convertMapsToIndexableObjects(e){if(e instanceof Map&&(e=Object.fromEntries(e)),isIndexableObject(e))for(let t of Object.keys(e)){let r=e[t];isIndexableObject(r)&&(e[t]=convertMapsToIndexableObjects(r))}return e}function getFactoryWithDefault(e,t,r){let s=e.get(t);return typeof s>"u"&&e.set(t,s=r()),s}function getArrayWithDefault(e,t){let r=e.get(t);return typeof r>"u"&&e.set(t,r=[]),r}function getSetWithDefault(e,t){let r=e.get(t);return typeof r>"u"&&e.set(t,r=new Set),r}function getMapWithDefault(e,t){let r=e.get(t);return typeof r>"u"&&e.set(t,r=new Map),r}async function releaseAfterUseAsync(e,t){if(t==null)return await e();try{return await e()}finally{await t()}}async function prettifyAsyncErrors(e,t){try{return await e()}catch(r){throw r.message=t(r.message),r}}function prettifySyncErrors(e,t){try{return e()}catch(r){throw r.message=t(r.message),r}}async function bufferStream(e){return await new Promise((t,r)=>{let s=[];e.on("error",a=>{r(a)}),e.on("data",a=>{s.push(a)}),e.on("end",()=>{t(Buffer.concat(s))})})}var BufferStream=class extends stream_1.Transform{constructor(){super(...arguments),this.chunks=[]}_transform(t,r,s){if(r!=="buffer"||!Buffer.isBuffer(t))throw new Error("Assertion failed: BufferStream only accept buffers");this.chunks.push(t),s(null,null)}_flush(t){t(null,Buffer.concat(this.chunks))}};exports.BufferStream=BufferStream;function makeDeferred(){let e,t;return{promise:new Promise((s,a)=>{e=s,t=a}),resolve:e,reject:t}}var AsyncActions=class{constructor(t){this.deferred=new Map,this.promises=new Map,this.limit=(0,p_limit_1.default)(t)}set(t,r){let s=this.deferred.get(t);typeof s>"u"&&this.deferred.set(t,s=makeDeferred());let a=this.limit(()=>r());return this.promises.set(t,a),a.then(()=>{this.promises.get(t)===a&&s.resolve()},o=>{this.promises.get(t)===a&&s.reject(o)}),s.promise}reduce(t,r){let s=this.promises.get(t)??Promise.resolve();this.set(t,()=>r(s))}async wait(){await Promise.all(this.promises.values())}};exports.AsyncActions=AsyncActions;var DefaultStream=class extends stream_1.Transform{constructor(t=Buffer.alloc(0)){super(),this.active=!0,this.ifEmpty=t}_transform(t,r,s){if(r!=="buffer"||!Buffer.isBuffer(t))throw new Error("Assertion failed: DefaultStream only accept buffers");this.active=!1,s(null,t)}_flush(t){this.active&&this.ifEmpty.length>0?t(null,this.ifEmpty):t(null)}};exports.DefaultStream=DefaultStream;var realRequire=eval("require");function dynamicRequireNode(e){return realRequire(fslib_1.npath.fromPortablePath(e))}function dynamicRequireNoCache(path){let physicalPath=fslib_1.npath.fromPortablePath(path),currentCacheEntry=realRequire.cache[physicalPath];delete realRequire.cache[physicalPath];let result;try{result=dynamicRequireNode(physicalPath);let freshCacheEntry=realRequire.cache[physicalPath],dynamicModule=eval("module"),freshCacheIndex=dynamicModule.children?dynamicModule.children.indexOf(freshCacheEntry):-1;freshCacheIndex!==-1&&dynamicModule.children.splice(freshCacheIndex,1)}finally{realRequire.cache[physicalPath]=currentCacheEntry}return result}var dynamicRequireFsTimeCache=new Map;function dynamicRequireFsTime(e){let t=dynamicRequireFsTimeCache.get(e),r=fslib_1.xfs.statSync(e);if(t?.mtime===r.mtimeMs)return t.instance;let s=dynamicRequireNoCache(e);return dynamicRequireFsTimeCache.set(e,{mtime:r.mtimeMs,instance:s}),s}var CachingStrategy;(function(e){e[e.NoCache=0]="NoCache",e[e.FsTime=1]="FsTime",e[e.Node=2]="Node"})(CachingStrategy||(exports.CachingStrategy=CachingStrategy={}));function dynamicRequire(e,{cachingStrategy:t=CachingStrategy.Node}={}){switch(t){case CachingStrategy.NoCache:return dynamicRequireNoCache(e);case CachingStrategy.FsTime:return dynamicRequireFsTime(e);case CachingStrategy.Node:return dynamicRequireNode(e);default:throw new Error("Unsupported caching strategy")}}function sortMap(e,t){let r=Array.from(e);Array.isArray(t)||(t=[t]);let s=[];for(let o of t)s.push(r.map(g=>o(g)));let a=r.map((o,g)=>g);return a.sort((o,g)=>{for(let p of s){let f=p[o]p[g]?1:0;if(f!==0)return f}return 0}),a.map(o=>r[o])}function buildIgnorePattern(e){return e.length===0?null:e.map(t=>`(${micromatch_1.default.makeRe(t,{windows:!1,dot:!0}).source})`).join("|")}function replaceEnvVariables(e,{env:t}){let r=/\${(?[\d\w_]+)(?:)?(?:-(?[^}]*))?}/g;return e.replace(r,(...s)=>{let{variableName:a,colon:o,fallback:g}=s[s.length-1],p=Object.hasOwn(t,a),f=t[a];if(f||p&&!o)return f;if(g!=null)return g;throw new clipanion_1.UsageError(`Environment variable not found (${a})`)})}function parseBoolean(e){switch(e){case"true":case"1":case 1:case!0:return!0;case"false":case"0":case 0:case!1:return!1;default:throw new Error(`Couldn't parse "${e}" as a boolean`)}}function parseOptionalBoolean(e){return typeof e>"u"?e:parseBoolean(e)}function tryParseOptionalBoolean(e){try{return parseOptionalBoolean(e)}catch{return null}}function isPathLike(e){return!!(fslib_1.npath.isAbsolute(e)||e.match(/^(\.{1,2}|~)\//))}function mergeIntoTarget(e,...t){let r=g=>({value:g}),s=r(e),a=t.map(g=>r(g)),{value:o}=(0,mergeWith_1.default)(s,...a,(g,p)=>{if(Array.isArray(g)&&Array.isArray(p)){for(let f of p)g.find(m=>(0,isEqual_1.default)(m,f))||g.push(f);return g}});return o}function toMerged(...e){return mergeIntoTarget({},...e)}function groupBy(e,t){let r=Object.create(null);for(let s of e){let a=s[t];r[a]??=[],r[a].push(s)}return r}function parseInt(e){return typeof e=="string"?Number.parseInt(e,10):e}});var iAe=z(sne=>{"use strict";Object.defineProperty(sne,"__esModule",{value:!0});sne.PackageExtensionStatus=sne.PackageExtensionType=sne.LinkType=void 0;var kon;(function(e){e.HARD="HARD",e.SOFT="SOFT"})(kon||(sne.LinkType=kon={}));var Gon;(function(e){e.Dependency="Dependency",e.PeerDependency="PeerDependency",e.PeerDependencyMeta="PeerDependencyMeta"})(Gon||(sne.PackageExtensionType=Gon={}));var Fon;(function(e){e.Inactive="inactive",e.Redundant="redundant",e.Active="active"})(Fon||(sne.PackageExtensionStatus=Fon={}))});var pO=z(Rg=>{"use strict";Object.defineProperty(Rg,"__esModule",{value:!0});Rg.LogLevel=Rg.supportsHyperlinks=Rg.supportsColor=Rg.Style=Rg.Type=Rg.stripAnsi=void 0;Rg.tuple=iVs;Rg.applyStyle=Won;Rg.applyColor=SD;Rg.applyHyperlink=Pon;Rg.pretty=sAe;Rg.prettyList=oVs;Rg.json=Oon;Rg.jsonOrPretty=aVs;Rg.mark=cVs;Rg.prettyField=lVs;Rg.prettyTruncatedLocatorList=uVs;Rg.addLogFilterSupport=gVs;var Bbe=(Ma(),Ai(Oa)),Zon=Ro(),ant=Bbe.__importDefault(mYt()),ont=Bbe.__importDefault(Uge()),$9s=(Fl(),Ai(dg)),eVs=Bbe.__importDefault(sk()),Von=Bbe.__importDefault(AO());Rg.stripAnsi=Von.default;var tVs=Dt("util"),snt=TL(),rVs=Bbe.__importStar(fW()),nE=Bbe.__importStar(ak()),Ebe=iAe();Rg.Type={NO_HINT:"NO_HINT",ID:"ID",NULL:"NULL",SCOPE:"SCOPE",NAME:"NAME",RANGE:"RANGE",REFERENCE:"REFERENCE",NUMBER:"NUMBER",PATH:"PATH",URL:"URL",ADDED:"ADDED",REMOVED:"REMOVED",CODE:"CODE",INSPECT:"INSPECT",DURATION:"DURATION",SIZE:"SIZE",SIZE_DIFF:"SIZE_DIFF",IDENT:"IDENT",DESCRIPTOR:"DESCRIPTOR",LOCATOR:"LOCATOR",RESOLUTION:"RESOLUTION",DEPENDENT:"DEPENDENT",PACKAGE_EXTENSION:"PACKAGE_EXTENSION",SETTING:"SETTING",MARKDOWN:"MARKDOWN",MARKDOWN_INLINE:"MARKDOWN_INLINE"};var cnt;(function(e){e[e.BOLD=2]="BOLD"})(cnt||(Rg.Style=cnt={}));var gHt=ont.default.GITHUB_ACTIONS?{level:2}:ant.default.supportsColor?{level:ant.default.supportsColor.level}:{level:0};Rg.supportsColor=gHt.level!==0;Rg.supportsHyperlinks=Rg.supportsColor&&!ont.default.GITHUB_ACTIONS&&!ont.default.CIRCLE&&!ont.default.GITLAB;var uHt=new ant.default.Instance(gHt),nVs=new Map([[Rg.Type.NO_HINT,null],[Rg.Type.NULL,["#a853b5",129]],[Rg.Type.SCOPE,["#d75f00",166]],[Rg.Type.NAME,["#d7875f",173]],[Rg.Type.RANGE,["#00afaf",37]],[Rg.Type.REFERENCE,["#87afff",111]],[Rg.Type.NUMBER,["#ffd700",220]],[Rg.Type.PATH,["#d75fd7",170]],[Rg.Type.URL,["#d75fd7",170]],[Rg.Type.ADDED,["#5faf00",70]],[Rg.Type.REMOVED,["#ff3131",160]],[Rg.Type.CODE,["#87afff",111]],[Rg.Type.SIZE,["#ffd700",220]]]),ok=e=>e;function Lon(e){let t=["KiB","MiB","GiB","TiB"],r=t.length;for(;r>1&&e<1024**r;)r-=1;let s=1024**r;return`${Math.floor(e*100/s)/100} ${t[r-1]}`}var lnt={[Rg.Type.ID]:ok({pretty:(e,t)=>typeof t=="number"?SD(e,`${t}`,Rg.Type.NUMBER):SD(e,t,Rg.Type.CODE),json:e=>e}),[Rg.Type.INSPECT]:ok({pretty:(e,t)=>(0,tVs.inspect)(t,{depth:1/0,colors:e.get("enableColors"),compact:!0,breakLength:1/0}),json:e=>e}),[Rg.Type.NUMBER]:ok({pretty:(e,t)=>SD(e,`${t}`,Rg.Type.NUMBER),json:e=>e}),[Rg.Type.IDENT]:ok({pretty:(e,t)=>nE.prettyIdent(e,t),json:e=>nE.stringifyIdent(e)}),[Rg.Type.LOCATOR]:ok({pretty:(e,t)=>nE.prettyLocator(e,t),json:e=>nE.stringifyLocator(e)}),[Rg.Type.DESCRIPTOR]:ok({pretty:(e,t)=>nE.prettyDescriptor(e,t),json:e=>nE.stringifyDescriptor(e)}),[Rg.Type.RESOLUTION]:ok({pretty:(e,{descriptor:t,locator:r})=>nE.prettyResolution(e,t,r),json:({descriptor:e,locator:t})=>({descriptor:nE.stringifyDescriptor(e),locator:t!==null?nE.stringifyLocator(t):null})}),[Rg.Type.DEPENDENT]:ok({pretty:(e,{locator:t,descriptor:r})=>nE.prettyDependent(e,t,r),json:({locator:e,descriptor:t})=>({locator:nE.stringifyLocator(e),descriptor:nE.stringifyDescriptor(t)})}),[Rg.Type.PACKAGE_EXTENSION]:ok({pretty:(e,t)=>{switch(t.type){case Ebe.PackageExtensionType.Dependency:return`${nE.prettyIdent(e,t.parentDescriptor)} \u27A4 ${SD(e,"dependencies",Rg.Type.CODE)} \u27A4 ${nE.prettyIdent(e,t.descriptor)}`;case Ebe.PackageExtensionType.PeerDependency:return`${nE.prettyIdent(e,t.parentDescriptor)} \u27A4 ${SD(e,"peerDependencies",Rg.Type.CODE)} \u27A4 ${nE.prettyIdent(e,t.descriptor)}`;case Ebe.PackageExtensionType.PeerDependencyMeta:return`${nE.prettyIdent(e,t.parentDescriptor)} \u27A4 ${SD(e,"peerDependenciesMeta",Rg.Type.CODE)} \u27A4 ${nE.prettyIdent(e,nE.parseIdent(t.selector))} \u27A4 ${SD(e,t.key,Rg.Type.CODE)}`;default:throw new Error(`Assertion failed: Unsupported package extension type: ${t.type}`)}},json:e=>{switch(e.type){case Ebe.PackageExtensionType.Dependency:return`${nE.stringifyIdent(e.parentDescriptor)} > ${nE.stringifyIdent(e.descriptor)}`;case Ebe.PackageExtensionType.PeerDependency:return`${nE.stringifyIdent(e.parentDescriptor)} >> ${nE.stringifyIdent(e.descriptor)}`;case Ebe.PackageExtensionType.PeerDependencyMeta:return`${nE.stringifyIdent(e.parentDescriptor)} >> ${e.selector} / ${e.key}`;default:throw new Error(`Assertion failed: Unsupported package extension type: ${e.type}`)}}}),[Rg.Type.SETTING]:ok({pretty:(e,t)=>(e.get(t),Pon(e,SD(e,t,Rg.Type.CODE),`https://yarnpkg.com/configuration/yarnrc#${t}`)),json:e=>e}),[Rg.Type.DURATION]:ok({pretty:(e,t)=>{if(t>1e3*60){let r=Math.floor(t/1e3/60),s=Math.ceil((t-r*60*1e3)/1e3);return s===0?`${r}m`:`${r}m ${s}s`}else{let r=Math.floor(t/1e3),s=t-r*1e3;return s===0?`${r}s`:`${r}s ${s}ms`}},json:e=>e}),[Rg.Type.SIZE]:ok({pretty:(e,t)=>SD(e,Lon(t),Rg.Type.NUMBER),json:e=>e}),[Rg.Type.SIZE_DIFF]:ok({pretty:(e,t)=>{let r=t>=0?"+":"-",s=r==="+"?Rg.Type.REMOVED:Rg.Type.ADDED;return SD(e,`${r} ${Lon(Math.max(Math.abs(t),1))}`,s)},json:e=>e}),[Rg.Type.PATH]:ok({pretty:(e,t)=>SD(e,Zon.npath.fromPortablePath(t),Rg.Type.PATH),json:e=>Zon.npath.fromPortablePath(e)}),[Rg.Type.MARKDOWN]:ok({pretty:(e,{text:t,format:r,paragraphs:s})=>(0,$9s.formatMarkdownish)(t,{format:r,paragraphs:s}),json:({text:e})=>e}),[Rg.Type.MARKDOWN_INLINE]:ok({pretty:(e,t)=>(t=t.replace(/(`+)((?:.|[\n])*?)\1/g,(r,s,a)=>sAe(e,s+a+s,Rg.Type.CODE)),t=t.replace(/(\*\*)((?:.|[\n])*?)\1/g,(r,s,a)=>Won(e,a,cnt.BOLD)),t),json:e=>e})};function iVs(e,t){return[t,e]}function Won(e,t,r){return e.get("enableColors")&&r&cnt.BOLD&&(t=ant.default.bold(t)),t}function SD(e,t,r){if(!e.get("enableColors"))return t;let s=nVs.get(r);if(s===null)return t;let a=typeof s>"u"?r:gHt.level>=3?s[0]:s[1],o=typeof a=="number"?uHt.ansi256(a):a.startsWith("#")?uHt.hex(a):uHt[a];if(typeof o!="function")throw new Error(`Invalid format type ${a}`);return o(t)}var sVs=!!process.env.KONSOLE_VERSION;function Pon(e,t,r){return e.get("enableHyperlinks")?sVs?`\x1B]8;;${r}\x1B\\${t}\x1B]8;;\x1B\\`:`\x1B]8;;${r}\x07${t}\x1B]8;;\x07`:t}function sAe(e,t,r){if(t===null)return SD(e,"null",Rg.Type.NULL);if(Object.hasOwn(lnt,r))return lnt[r].pretty(e,t);if(typeof t!="string")throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof t}`);return SD(e,t,r)}function oVs(e,t,r,{separator:s=", "}={}){return[...t].map(a=>sAe(e,a,r)).join(s)}function Oon(e,t){if(e===null)return null;if(Object.hasOwn(lnt,t))return rVs.overrideType(t),lnt[t].json(e);if(typeof e!="string")throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof e}`);return e}function aVs(e,t,[r,s]){return e?Oon(r,s):sAe(t,r,s)}function cVs(e){return{Check:SD(e,"\u2713","green"),Cross:SD(e,"\u2718","red"),Question:SD(e,"?","cyan")}}function lVs(e,{label:t,value:[r,s]}){return`${sAe(e,t,Rg.Type.CODE)}: ${sAe(e,r,s)}`}function uVs(e,t,r){let s=[],a=[...t],o=r;for(;a.length>0;){let m=a[0],y=`${nE.prettyLocator(e,m)}, `,B=nE.prettyLocatorNoColors(m).length+2;if(s.length>0&&om).join("").slice(0,-2);let g="X".repeat(a.length.toString().length),p=`and ${g} more.`,f=a.length;for(;s.length>1&&om).join(""),p.replace(g,sAe(e,f,Rg.Type.NUMBER))].join("")}var one;(function(e){e.Error="error",e.Warning="warning",e.Info="info",e.Discard="discard"})(one||(Rg.LogLevel=one={}));function gVs(e,{configuration:t}){let r=t.get("logFilters"),s=new Map,a=new Map,o=[];for(let B of r){let v=B.get("level");if(typeof v>"u")continue;let G=B.get("code");typeof G<"u"&&s.set(G,v);let T=B.get("text");typeof T<"u"&&a.set(T,v);let O=B.get("pattern");typeof O<"u"&&o.push([eVs.default.matcher(O,{contains:!0}),v])}o.reverse();let g=(B,v,G)=>{if(B===null||B===snt.MessageName.UNNAMED)return G;let T=a.size>0||o.length>0?(0,Von.default)(v):v;if(a.size>0){let O=a.get(T);if(typeof O<"u")return O??G}if(o.length>0){for(let[O,X]of o)if(O(T))return X??G}if(s.size>0){let O=s.get((0,snt.stringifyMessageName)(B));if(typeof O<"u")return O??G}return G},p=e.reportInfo,f=e.reportWarning,m=e.reportError,y=function(B,v,G,T){switch(g(v,G,T)){case one.Info:p.call(B,v,G);break;case one.Warning:f.call(B,v??snt.MessageName.UNNAMED,G);break;case one.Error:m.call(B,v??snt.MessageName.UNNAMED,G);break}};e.reportInfo=function(...B){return y(this,...B,one.Info)},e.reportWarning=function(...B){return y(this,...B,one.Warning)},e.reportError=function(...B){return y(this,...B,one.Error)}}});var Mon=z(vbe=>{"use strict";Object.defineProperty(vbe,"__esModule",{value:!0});vbe.splitWhen=vbe.flatten=void 0;function AVs(e){return e.reduce((t,r)=>[].concat(t,r),[])}vbe.flatten=AVs;function dVs(e,t){let r=[[]],s=0;for(let a of e)t(a)?(s++,r[s]=[]):r[s].push(a);return r}vbe.splitWhen=dVs});var Qon=z(unt=>{"use strict";Object.defineProperty(unt,"__esModule",{value:!0});unt.isEnoentCodeError=void 0;function pVs(e){return e.code==="ENOENT"}unt.isEnoentCodeError=pVs});var Yon=z(gnt=>{"use strict";Object.defineProperty(gnt,"__esModule",{value:!0});gnt.createDirentFromStats=void 0;var AHt=class{constructor(t,r){this.name=t,this.isBlockDevice=r.isBlockDevice.bind(r),this.isCharacterDevice=r.isCharacterDevice.bind(r),this.isDirectory=r.isDirectory.bind(r),this.isFIFO=r.isFIFO.bind(r),this.isFile=r.isFile.bind(r),this.isSocket=r.isSocket.bind(r),this.isSymbolicLink=r.isSymbolicLink.bind(r)}};function fVs(e,t){return new AHt(e,t)}gnt.createDirentFromStats=fVs});var Uon=z(fw=>{"use strict";Object.defineProperty(fw,"__esModule",{value:!0});fw.convertPosixPathToPattern=fw.convertWindowsPathToPattern=fw.convertPathToPattern=fw.escapePosixPath=fw.escapeWindowsPath=fw.escape=fw.removeLeadingDotSegment=fw.makeAbsolute=fw.unixify=void 0;var IVs=Dt("os"),CVs=Dt("path"),Hon=IVs.platform()==="win32",mVs=2,hVs=/(\\?)([()*?[\]{|}]|^!|[!+@](?=\()|\\(?![!()*+?@[\]{|}]))/g,_Vs=/(\\?)([()[\]{}]|^!|[!+@](?=\())/g,yVs=/^\\\\([.?])/,bVs=/\\(?![!()+@[\]{}])/g;function EVs(e){return e.replace(/\\/g,"/")}fw.unixify=EVs;function BVs(e,t){return CVs.resolve(e,t)}fw.makeAbsolute=BVs;function vVs(e){if(e.charAt(0)==="."){let t=e.charAt(1);if(t==="/"||t==="\\")return e.slice(mVs)}return e}fw.removeLeadingDotSegment=vVs;fw.escape=Hon?dHt:pHt;function dHt(e){return e.replace(_Vs,"\\$2")}fw.escapeWindowsPath=dHt;function pHt(e){return e.replace(hVs,"\\$2")}fw.escapePosixPath=pHt;fw.convertPathToPattern=Hon?Xon:Jon;function Xon(e){return dHt(e).replace(yVs,"//$1").replace(bVs,"/")}fw.convertWindowsPathToPattern=Xon;function Jon(e){return pHt(e)}fw.convertPosixPathToPattern=Jon});var jon=z((vWc,Kon)=>{Kon.exports=function(t){if(typeof t!="string"||t==="")return!1;for(var r;r=/(\\).|([@?!+*]\(.*\))/g.exec(t);){if(r[2])return!0;t=t.slice(r.index+r[0].length)}return!1}});var $on=z((SWc,qon)=>{var SVs=jon(),zon={"{":"}","(":")","[":"]"},wVs=function(e){if(e[0]==="!")return!0;for(var t=0,r=-2,s=-2,a=-2,o=-2,g=-2;tt&&(g===-1||g>s||(g=e.indexOf("\\",t),g===-1||g>s)))||a!==-1&&e[t]==="{"&&e[t+1]!=="}"&&(a=e.indexOf("}",t),a>t&&(g=e.indexOf("\\",t),g===-1||g>a))||o!==-1&&e[t]==="("&&e[t+1]==="?"&&/[:!=]/.test(e[t+2])&&e[t+3]!==")"&&(o=e.indexOf(")",t),o>t&&(g=e.indexOf("\\",t),g===-1||g>o))||r!==-1&&e[t]==="("&&e[t+1]!=="|"&&(rr&&(g=e.indexOf("\\",r),g===-1||g>o))))return!0;if(e[t]==="\\"){var p=e[t+1];t+=2;var f=zon[p];if(f){var m=e.indexOf(f,t);m!==-1&&(t=m+1)}if(e[t]==="!")return!0}else t++}return!1},TVs=function(e){if(e[0]==="!")return!0;for(var t=0;t{"use strict";var NVs=$on(),RVs=Dt("path").posix.dirname,DVs=Dt("os").platform()==="win32",fHt="/",xVs=/\\/g,kVs=/[\{\[].*[\}\]]$/,GVs=/(^|[^\\])([\{\[]|\([^\)]+$)/,FVs=/\\([\!\*\?\|\[\]\(\)\{\}])/g;ean.exports=function(t,r){var s=Object.assign({flipBackslashes:!0},r);s.flipBackslashes&&DVs&&t.indexOf(fHt)<0&&(t=t.replace(xVs,fHt)),kVs.test(t)&&(t+=fHt),t+="a";do t=RVs(t);while(NVs(t)||GVs.test(t));return t.replace(FVs,"$1")}});var lan=z(zf=>{"use strict";Object.defineProperty(zf,"__esModule",{value:!0});zf.removeDuplicateSlashes=zf.matchAny=zf.convertPatternsToRe=zf.makeRe=zf.getPatternParts=zf.expandBraceExpansion=zf.expandPatternsWithBraceExpansion=zf.isAffectDepthOfReadingPattern=zf.endsWithSlashGlobStar=zf.hasGlobStar=zf.getBaseDirectory=zf.isPatternRelatedToParentDirectory=zf.getPatternsOutsideCurrentDirectory=zf.getPatternsInsideCurrentDirectory=zf.getPositivePatterns=zf.getNegativePatterns=zf.isPositivePattern=zf.isNegativePattern=zf.convertToNegativePattern=zf.convertToPositivePattern=zf.isDynamicPattern=zf.isStaticPattern=void 0;var ZVs=Dt("path"),LVs=tan(),IHt=sk(),ran="**",VVs="\\",WVs=/[*?]|^!/,PVs=/\[[^[]*]/,OVs=/(?:^|[^!*+?@])\([^(]*\|[^|]*\)/,MVs=/[!*+?@]\([^(]*\)/,QVs=/,|\.\./,YVs=/(?!^)\/{2,}/g;function nan(e,t={}){return!ian(e,t)}zf.isStaticPattern=nan;function ian(e,t={}){return e===""?!1:!!(t.caseSensitiveMatch===!1||e.includes(VVs)||WVs.test(e)||PVs.test(e)||OVs.test(e)||t.extglob!==!1&&MVs.test(e)||t.braceExpansion!==!1&&HVs(e))}zf.isDynamicPattern=ian;function HVs(e){let t=e.indexOf("{");if(t===-1)return!1;let r=e.indexOf("}",t+1);if(r===-1)return!1;let s=e.slice(t,r);return QVs.test(s)}function XVs(e){return Ant(e)?e.slice(1):e}zf.convertToPositivePattern=XVs;function JVs(e){return"!"+e}zf.convertToNegativePattern=JVs;function Ant(e){return e.startsWith("!")&&e[1]!=="("}zf.isNegativePattern=Ant;function san(e){return!Ant(e)}zf.isPositivePattern=san;function UVs(e){return e.filter(Ant)}zf.getNegativePatterns=UVs;function KVs(e){return e.filter(san)}zf.getPositivePatterns=KVs;function jVs(e){return e.filter(t=>!CHt(t))}zf.getPatternsInsideCurrentDirectory=jVs;function zVs(e){return e.filter(CHt)}zf.getPatternsOutsideCurrentDirectory=zVs;function CHt(e){return e.startsWith("..")||e.startsWith("./..")}zf.isPatternRelatedToParentDirectory=CHt;function qVs(e){return LVs(e,{flipBackslashes:!1})}zf.getBaseDirectory=qVs;function $Vs(e){return e.includes(ran)}zf.hasGlobStar=$Vs;function oan(e){return e.endsWith("/"+ran)}zf.endsWithSlashGlobStar=oan;function eWs(e){let t=ZVs.basename(e);return oan(e)||nan(t)}zf.isAffectDepthOfReadingPattern=eWs;function tWs(e){return e.reduce((t,r)=>t.concat(aan(r)),[])}zf.expandPatternsWithBraceExpansion=tWs;function aan(e){let t=IHt.braces(e,{expand:!0,nodupes:!0,keepEscaping:!0});return t.sort((r,s)=>r.length-s.length),t.filter(r=>r!=="")}zf.expandBraceExpansion=aan;function rWs(e,t){let{parts:r}=IHt.scan(e,Object.assign(Object.assign({},t),{parts:!0}));return r.length===0&&(r=[e]),r[0].startsWith("/")&&(r[0]=r[0].slice(1),r.unshift("")),r}zf.getPatternParts=rWs;function can(e,t){return IHt.makeRe(e,t)}zf.makeRe=can;function nWs(e,t){return e.map(r=>can(r,t))}zf.convertPatternsToRe=nWs;function iWs(e,t){return t.some(r=>r.test(e))}zf.matchAny=iWs;function sWs(e){return e.replace(YVs,"/")}zf.removeDuplicateSlashes=sWs});var mHt=z((NWc,Aan)=>{"use strict";var oWs=Dt("stream"),uan=oWs.PassThrough,aWs=Array.prototype.slice;Aan.exports=cWs;function cWs(){let e=[],t=aWs.call(arguments),r=!1,s=t[t.length-1];s&&!Array.isArray(s)&&s.pipe==null?t.pop():s={};let a=s.end!==!1,o=s.pipeError===!0;s.objectMode==null&&(s.objectMode=!0),s.highWaterMark==null&&(s.highWaterMark=64*1024);let g=uan(s);function p(){for(let y=0,B=arguments.length;y0||(r=!1,f())}function G(T){function O(){T.removeListener("merge2UnpipeEnd",O),T.removeListener("end",O),o&&T.removeListener("error",X),v()}function X(U){g.emit("error",U)}if(T._readableState.endEmitted)return v();T.on("merge2UnpipeEnd",O),T.on("end",O),o&&T.on("error",X),T.pipe(g,{end:!1}),T.resume()}for(let T=0;T{"use strict";Object.defineProperty(dnt,"__esModule",{value:!0});dnt.merge=void 0;var lWs=mHt();function uWs(e){let t=lWs(e);return e.forEach(r=>{r.once("error",s=>t.emit("error",s))}),t.once("close",()=>dan(e)),t.once("end",()=>dan(e)),t}dnt.merge=uWs;function dan(e){e.forEach(t=>t.emit("close"))}});var fan=z(Sbe=>{"use strict";Object.defineProperty(Sbe,"__esModule",{value:!0});Sbe.isEmpty=Sbe.isString=void 0;function gWs(e){return typeof e=="string"}Sbe.isString=gWs;function AWs(e){return e===""}Sbe.isEmpty=AWs});var tj=z(ck=>{"use strict";Object.defineProperty(ck,"__esModule",{value:!0});ck.string=ck.stream=ck.pattern=ck.path=ck.fs=ck.errno=ck.array=void 0;var dWs=Mon();ck.array=dWs;var pWs=Qon();ck.errno=pWs;var fWs=Yon();ck.fs=fWs;var IWs=Uon();ck.path=IWs;var CWs=lan();ck.pattern=CWs;var mWs=pan();ck.stream=mWs;var hWs=fan();ck.string=hWs});var han=z(lk=>{"use strict";Object.defineProperty(lk,"__esModule",{value:!0});lk.convertPatternGroupToTask=lk.convertPatternGroupsToTasks=lk.groupPatternsByBaseDirectory=lk.getNegativePatternsAsPositive=lk.getPositivePatterns=lk.convertPatternsToTasks=lk.generate=void 0;var pH=tj();function _Ws(e,t){let r=Ian(e,t),s=Ian(t.ignore,t),a=Can(r),o=man(r,s),g=a.filter(y=>pH.pattern.isStaticPattern(y,t)),p=a.filter(y=>pH.pattern.isDynamicPattern(y,t)),f=hHt(g,o,!1),m=hHt(p,o,!0);return f.concat(m)}lk.generate=_Ws;function Ian(e,t){let r=e;return t.braceExpansion&&(r=pH.pattern.expandPatternsWithBraceExpansion(r)),t.baseNameMatch&&(r=r.map(s=>s.includes("/")?s:`**/${s}`)),r.map(s=>pH.pattern.removeDuplicateSlashes(s))}function hHt(e,t,r){let s=[],a=pH.pattern.getPatternsOutsideCurrentDirectory(e),o=pH.pattern.getPatternsInsideCurrentDirectory(e),g=_Ht(a),p=_Ht(o);return s.push(...yHt(g,t,r)),"."in p?s.push(bHt(".",o,t,r)):s.push(...yHt(p,t,r)),s}lk.convertPatternsToTasks=hHt;function Can(e){return pH.pattern.getPositivePatterns(e)}lk.getPositivePatterns=Can;function man(e,t){return pH.pattern.getNegativePatterns(e).concat(t).map(pH.pattern.convertToPositivePattern)}lk.getNegativePatternsAsPositive=man;function _Ht(e){let t={};return e.reduce((r,s)=>{let a=pH.pattern.getBaseDirectory(s);return a in r?r[a].push(s):r[a]=[s],r},t)}lk.groupPatternsByBaseDirectory=_Ht;function yHt(e,t,r){return Object.keys(e).map(s=>bHt(s,e[s],t,r))}lk.convertPatternGroupsToTasks=yHt;function bHt(e,t,r,s){return{dynamic:s,positive:t,negative:r,base:e,patterns:[].concat(t,r.map(pH.pattern.convertToNegativePattern))}}lk.convertPatternGroupToTask=bHt});var yan=z(pnt=>{"use strict";Object.defineProperty(pnt,"__esModule",{value:!0});pnt.read=void 0;function yWs(e,t,r){t.fs.lstat(e,(s,a)=>{if(s!==null){_an(r,s);return}if(!a.isSymbolicLink()||!t.followSymbolicLink){EHt(r,a);return}t.fs.stat(e,(o,g)=>{if(o!==null){if(t.throwErrorOnBrokenSymbolicLink){_an(r,o);return}EHt(r,a);return}t.markSymbolicLink&&(g.isSymbolicLink=()=>!0),EHt(r,g)})})}pnt.read=yWs;function _an(e,t){e(t)}function EHt(e,t){e(null,t)}});var ban=z(fnt=>{"use strict";Object.defineProperty(fnt,"__esModule",{value:!0});fnt.read=void 0;function bWs(e,t){let r=t.fs.lstatSync(e);if(!r.isSymbolicLink()||!t.followSymbolicLink)return r;try{let s=t.fs.statSync(e);return t.markSymbolicLink&&(s.isSymbolicLink=()=>!0),s}catch(s){if(!t.throwErrorOnBrokenSymbolicLink)return r;throw s}}fnt.read=bWs});var Ean=z(ane=>{"use strict";Object.defineProperty(ane,"__esModule",{value:!0});ane.createFileSystemAdapter=ane.FILE_SYSTEM_ADAPTER=void 0;var Int=Dt("fs");ane.FILE_SYSTEM_ADAPTER={lstat:Int.lstat,stat:Int.stat,lstatSync:Int.lstatSync,statSync:Int.statSync};function EWs(e){return e===void 0?ane.FILE_SYSTEM_ADAPTER:Object.assign(Object.assign({},ane.FILE_SYSTEM_ADAPTER),e)}ane.createFileSystemAdapter=EWs});var Ban=z(vHt=>{"use strict";Object.defineProperty(vHt,"__esModule",{value:!0});var BWs=Ean(),BHt=class{constructor(t={}){this._options=t,this.followSymbolicLink=this._getValue(this._options.followSymbolicLink,!0),this.fs=BWs.createFileSystemAdapter(this._options.fs),this.markSymbolicLink=this._getValue(this._options.markSymbolicLink,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!0)}_getValue(t,r){return t??r}};vHt.default=BHt});var oAe=z(cne=>{"use strict";Object.defineProperty(cne,"__esModule",{value:!0});cne.statSync=cne.stat=cne.Settings=void 0;var van=yan(),vWs=ban(),SHt=Ban();cne.Settings=SHt.default;function SWs(e,t,r){if(typeof t=="function"){van.read(e,wHt(),t);return}van.read(e,wHt(t),r)}cne.stat=SWs;function wWs(e,t){let r=wHt(t);return vWs.read(e,r)}cne.statSync=wWs;function wHt(e={}){return e instanceof SHt.default?e:new SHt.default(e)}});var Tan=z((WWc,wan)=>{var San;wan.exports=typeof queueMicrotask=="function"?queueMicrotask.bind(typeof window<"u"?window:global):e=>(San||(San=Promise.resolve())).then(e).catch(t=>setTimeout(()=>{throw t},0))});var Ran=z((PWc,Nan)=>{Nan.exports=NWs;var TWs=Tan();function NWs(e,t){let r,s,a,o=!0;Array.isArray(e)?(r=[],s=e.length):(a=Object.keys(e),r={},s=a.length);function g(f){function m(){t&&t(f,r),t=null}o?TWs(m):m()}function p(f,m,y){r[f]=y,(--s===0||m)&&g(m)}s?a?a.forEach(function(f){e[f](function(m,y){p(f,m,y)})}):e.forEach(function(f,m){f(function(y,B){p(m,y,B)})}):g(null),o=!1}});var THt=z(mnt=>{"use strict";Object.defineProperty(mnt,"__esModule",{value:!0});mnt.IS_SUPPORT_READDIR_WITH_FILE_TYPES=void 0;var Cnt=process.versions.node.split(".");if(Cnt[0]===void 0||Cnt[1]===void 0)throw new Error(`Unexpected behavior. The 'process.versions.node' variable has invalid value: ${process.versions.node}`);var Dan=Number.parseInt(Cnt[0],10),RWs=Number.parseInt(Cnt[1],10),xan=10,DWs=10,xWs=Dan>xan,kWs=Dan===xan&&RWs>=DWs;mnt.IS_SUPPORT_READDIR_WITH_FILE_TYPES=xWs||kWs});var kan=z(hnt=>{"use strict";Object.defineProperty(hnt,"__esModule",{value:!0});hnt.createDirentFromStats=void 0;var NHt=class{constructor(t,r){this.name=t,this.isBlockDevice=r.isBlockDevice.bind(r),this.isCharacterDevice=r.isCharacterDevice.bind(r),this.isDirectory=r.isDirectory.bind(r),this.isFIFO=r.isFIFO.bind(r),this.isFile=r.isFile.bind(r),this.isSocket=r.isSocket.bind(r),this.isSymbolicLink=r.isSymbolicLink.bind(r)}};function GWs(e,t){return new NHt(e,t)}hnt.createDirentFromStats=GWs});var RHt=z(_nt=>{"use strict";Object.defineProperty(_nt,"__esModule",{value:!0});_nt.fs=void 0;var FWs=kan();_nt.fs=FWs});var DHt=z(ynt=>{"use strict";Object.defineProperty(ynt,"__esModule",{value:!0});ynt.joinPathSegments=void 0;function ZWs(e,t,r){return e.endsWith(r)?e+t:e+r+t}ynt.joinPathSegments=ZWs});var Wan=z(lne=>{"use strict";Object.defineProperty(lne,"__esModule",{value:!0});lne.readdir=lne.readdirWithFileTypes=lne.read=void 0;var LWs=oAe(),Gan=Ran(),VWs=THt(),Fan=RHt(),Zan=DHt();function WWs(e,t,r){if(!t.stats&&VWs.IS_SUPPORT_READDIR_WITH_FILE_TYPES){Lan(e,t,r);return}Van(e,t,r)}lne.read=WWs;function Lan(e,t,r){t.fs.readdir(e,{withFileTypes:!0},(s,a)=>{if(s!==null){bnt(r,s);return}let o=a.map(p=>({dirent:p,name:p.name,path:Zan.joinPathSegments(e,p.name,t.pathSegmentSeparator)}));if(!t.followSymbolicLinks){xHt(r,o);return}let g=o.map(p=>PWs(p,t));Gan(g,(p,f)=>{if(p!==null){bnt(r,p);return}xHt(r,f)})})}lne.readdirWithFileTypes=Lan;function PWs(e,t){return r=>{if(!e.dirent.isSymbolicLink()){r(null,e);return}t.fs.stat(e.path,(s,a)=>{if(s!==null){if(t.throwErrorOnBrokenSymbolicLink){r(s);return}r(null,e);return}e.dirent=Fan.fs.createDirentFromStats(e.name,a),r(null,e)})}}function Van(e,t,r){t.fs.readdir(e,(s,a)=>{if(s!==null){bnt(r,s);return}let o=a.map(g=>{let p=Zan.joinPathSegments(e,g,t.pathSegmentSeparator);return f=>{LWs.stat(p,t.fsStatSettings,(m,y)=>{if(m!==null){f(m);return}let B={name:g,path:p,dirent:Fan.fs.createDirentFromStats(g,y)};t.stats&&(B.stats=y),f(null,B)})}});Gan(o,(g,p)=>{if(g!==null){bnt(r,g);return}xHt(r,p)})})}lne.readdir=Van;function bnt(e,t){e(t)}function xHt(e,t){e(null,t)}});var Yan=z(une=>{"use strict";Object.defineProperty(une,"__esModule",{value:!0});une.readdir=une.readdirWithFileTypes=une.read=void 0;var OWs=oAe(),MWs=THt(),Pan=RHt(),Oan=DHt();function QWs(e,t){return!t.stats&&MWs.IS_SUPPORT_READDIR_WITH_FILE_TYPES?Man(e,t):Qan(e,t)}une.read=QWs;function Man(e,t){return t.fs.readdirSync(e,{withFileTypes:!0}).map(s=>{let a={dirent:s,name:s.name,path:Oan.joinPathSegments(e,s.name,t.pathSegmentSeparator)};if(a.dirent.isSymbolicLink()&&t.followSymbolicLinks)try{let o=t.fs.statSync(a.path);a.dirent=Pan.fs.createDirentFromStats(a.name,o)}catch(o){if(t.throwErrorOnBrokenSymbolicLink)throw o}return a})}une.readdirWithFileTypes=Man;function Qan(e,t){return t.fs.readdirSync(e).map(s=>{let a=Oan.joinPathSegments(e,s,t.pathSegmentSeparator),o=OWs.statSync(a,t.fsStatSettings),g={name:s,path:a,dirent:Pan.fs.createDirentFromStats(s,o)};return t.stats&&(g.stats=o),g})}une.readdir=Qan});var Han=z(gne=>{"use strict";Object.defineProperty(gne,"__esModule",{value:!0});gne.createFileSystemAdapter=gne.FILE_SYSTEM_ADAPTER=void 0;var wbe=Dt("fs");gne.FILE_SYSTEM_ADAPTER={lstat:wbe.lstat,stat:wbe.stat,lstatSync:wbe.lstatSync,statSync:wbe.statSync,readdir:wbe.readdir,readdirSync:wbe.readdirSync};function YWs(e){return e===void 0?gne.FILE_SYSTEM_ADAPTER:Object.assign(Object.assign({},gne.FILE_SYSTEM_ADAPTER),e)}gne.createFileSystemAdapter=YWs});var Xan=z(GHt=>{"use strict";Object.defineProperty(GHt,"__esModule",{value:!0});var HWs=Dt("path"),XWs=oAe(),JWs=Han(),kHt=class{constructor(t={}){this._options=t,this.followSymbolicLinks=this._getValue(this._options.followSymbolicLinks,!1),this.fs=JWs.createFileSystemAdapter(this._options.fs),this.pathSegmentSeparator=this._getValue(this._options.pathSegmentSeparator,HWs.sep),this.stats=this._getValue(this._options.stats,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!0),this.fsStatSettings=new XWs.Settings({followSymbolicLink:this.followSymbolicLinks,fs:this.fs,throwErrorOnBrokenSymbolicLink:this.throwErrorOnBrokenSymbolicLink})}_getValue(t,r){return t??r}};GHt.default=kHt});var Ent=z(Ane=>{"use strict";Object.defineProperty(Ane,"__esModule",{value:!0});Ane.Settings=Ane.scandirSync=Ane.scandir=void 0;var Jan=Wan(),UWs=Yan(),FHt=Xan();Ane.Settings=FHt.default;function KWs(e,t,r){if(typeof t=="function"){Jan.read(e,ZHt(),t);return}Jan.read(e,ZHt(t),r)}Ane.scandir=KWs;function jWs(e,t){let r=ZHt(t);return UWs.read(e,r)}Ane.scandirSync=jWs;function ZHt(e={}){return e instanceof FHt.default?e:new FHt.default(e)}});var Kan=z((jWc,Uan)=>{"use strict";function zWs(e){var t=new e,r=t;function s(){var o=t;return o.next?t=o.next:(t=new e,r=t),o.next=null,o}function a(o){r.next=o,r=o}return{get:s,release:a}}Uan.exports=zWs});var zan=z((zWc,LHt)=>{"use strict";var qWs=Kan();function jan(e,t,r){if(typeof e=="function"&&(r=t,t=e,e=null),!(r>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");var s=qWs($Ws),a=null,o=null,g=0,p=null,f={push:O,drain:fO,saturated:fO,pause:y,paused:!1,get concurrency(){return r},set concurrency(fe){if(!(fe>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");if(r=fe,!f.paused)for(;a&&g=r||f.paused?o?(o.next=he,o=he):(a=he,o=he,f.saturated()):(g++,t.call(e,he.value,he.worked))}function X(fe,pe){var he=s.get();he.context=e,he.release=U,he.value=fe,he.callback=pe||fO,he.errorHandler=p,g>=r||f.paused?a?(he.next=a,a=he):(a=he,o=he,f.saturated()):(g++,t.call(e,he.value,he.worked))}function U(fe){fe&&s.release(fe);var pe=a;pe&&g<=r?f.paused?g--:(o===a&&(o=null),a=pe.next,pe.next=null,t.call(e,pe.value,pe.worked),o===null&&f.empty()):--g===0&&f.drain()}function le(){a=null,o=null,f.drain=fO}function ae(){a=null,o=null,f.drain(),f.drain=fO}function ge(fe){p=fe}}function fO(){}function $Ws(){this.value=null,this.callback=fO,this.next=null,this.release=fO,this.context=null,this.errorHandler=null;var e=this;this.worked=function(r,s){var a=e.callback,o=e.errorHandler,g=e.value;e.value=null,e.callback=fO,e.errorHandler&&o(r,g),a.call(e.context,r,s),e.release(e)}}function e3s(e,t,r){typeof e=="function"&&(r=t,t=e,e=null);function s(y,B){t.call(this,y).then(function(v){B(null,v)},B)}var a=jan(e,s,r),o=a.push,g=a.unshift;return a.push=p,a.unshift=f,a.drained=m,a;function p(y){var B=new Promise(function(v,G){o(y,function(T,O){if(T){G(T);return}v(O)})});return B.catch(fO),B}function f(y){var B=new Promise(function(v,G){g(y,function(T,O){if(T){G(T);return}v(O)})});return B.catch(fO),B}function m(){if(a.idle())return new Promise(function(v){v()});var y=a.drain,B=new Promise(function(v){a.drain=function(){y(),v()}});return B}}LHt.exports=jan;LHt.exports.promise=e3s});var Bnt=z(_J=>{"use strict";Object.defineProperty(_J,"__esModule",{value:!0});_J.joinPathSegments=_J.replacePathSegmentSeparator=_J.isAppliedFilter=_J.isFatalError=void 0;function t3s(e,t){return e.errorFilter===null?!0:!e.errorFilter(t)}_J.isFatalError=t3s;function r3s(e,t){return e===null||e(t)}_J.isAppliedFilter=r3s;function n3s(e,t){return e.split(/[/\\]/).join(t)}_J.replacePathSegmentSeparator=n3s;function i3s(e,t,r){return e===""?t:e.endsWith(r)?e+t:e+r+t}_J.joinPathSegments=i3s});var PHt=z(WHt=>{"use strict";Object.defineProperty(WHt,"__esModule",{value:!0});var s3s=Bnt(),VHt=class{constructor(t,r){this._root=t,this._settings=r,this._root=s3s.replacePathSegmentSeparator(t,r.pathSegmentSeparator)}};WHt.default=VHt});var QHt=z(MHt=>{"use strict";Object.defineProperty(MHt,"__esModule",{value:!0});var o3s=Dt("events"),a3s=Ent(),c3s=zan(),vnt=Bnt(),l3s=PHt(),OHt=class extends l3s.default{constructor(t,r){super(t,r),this._settings=r,this._scandir=a3s.scandir,this._emitter=new o3s.EventEmitter,this._queue=c3s(this._worker.bind(this),this._settings.concurrency),this._isFatalError=!1,this._isDestroyed=!1,this._queue.drain=()=>{this._isFatalError||this._emitter.emit("end")}}read(){return this._isFatalError=!1,this._isDestroyed=!1,setImmediate(()=>{this._pushToQueue(this._root,this._settings.basePath)}),this._emitter}get isDestroyed(){return this._isDestroyed}destroy(){if(this._isDestroyed)throw new Error("The reader is already destroyed");this._isDestroyed=!0,this._queue.killAndDrain()}onEntry(t){this._emitter.on("entry",t)}onError(t){this._emitter.once("error",t)}onEnd(t){this._emitter.once("end",t)}_pushToQueue(t,r){let s={directory:t,base:r};this._queue.push(s,a=>{a!==null&&this._handleError(a)})}_worker(t,r){this._scandir(t.directory,this._settings.fsScandirSettings,(s,a)=>{if(s!==null){r(s,void 0);return}for(let o of a)this._handleEntry(o,t.base);r(null,void 0)})}_handleError(t){this._isDestroyed||!vnt.isFatalError(this._settings,t)||(this._isFatalError=!0,this._isDestroyed=!0,this._emitter.emit("error",t))}_handleEntry(t,r){if(this._isDestroyed||this._isFatalError)return;let s=t.path;r!==void 0&&(t.path=vnt.joinPathSegments(r,t.name,this._settings.pathSegmentSeparator)),vnt.isAppliedFilter(this._settings.entryFilter,t)&&this._emitEntry(t),t.dirent.isDirectory()&&vnt.isAppliedFilter(this._settings.deepFilter,t)&&this._pushToQueue(s,r===void 0?void 0:t.path)}_emitEntry(t){this._emitter.emit("entry",t)}};MHt.default=OHt});var qan=z(HHt=>{"use strict";Object.defineProperty(HHt,"__esModule",{value:!0});var u3s=QHt(),YHt=class{constructor(t,r){this._root=t,this._settings=r,this._reader=new u3s.default(this._root,this._settings),this._storage=[]}read(t){this._reader.onError(r=>{g3s(t,r)}),this._reader.onEntry(r=>{this._storage.push(r)}),this._reader.onEnd(()=>{A3s(t,this._storage)}),this._reader.read()}};HHt.default=YHt;function g3s(e,t){e(t)}function A3s(e,t){e(null,t)}});var $an=z(JHt=>{"use strict";Object.defineProperty(JHt,"__esModule",{value:!0});var d3s=Dt("stream"),p3s=QHt(),XHt=class{constructor(t,r){this._root=t,this._settings=r,this._reader=new p3s.default(this._root,this._settings),this._stream=new d3s.Readable({objectMode:!0,read:()=>{},destroy:()=>{this._reader.isDestroyed||this._reader.destroy()}})}read(){return this._reader.onError(t=>{this._stream.emit("error",t)}),this._reader.onEntry(t=>{this._stream.push(t)}),this._reader.onEnd(()=>{this._stream.push(null)}),this._reader.read(),this._stream}};JHt.default=XHt});var ecn=z(KHt=>{"use strict";Object.defineProperty(KHt,"__esModule",{value:!0});var f3s=Ent(),Snt=Bnt(),I3s=PHt(),UHt=class extends I3s.default{constructor(){super(...arguments),this._scandir=f3s.scandirSync,this._storage=[],this._queue=new Set}read(){return this._pushToQueue(this._root,this._settings.basePath),this._handleQueue(),this._storage}_pushToQueue(t,r){this._queue.add({directory:t,base:r})}_handleQueue(){for(let t of this._queue.values())this._handleDirectory(t.directory,t.base)}_handleDirectory(t,r){try{let s=this._scandir(t,this._settings.fsScandirSettings);for(let a of s)this._handleEntry(a,r)}catch(s){this._handleError(s)}}_handleError(t){if(Snt.isFatalError(this._settings,t))throw t}_handleEntry(t,r){let s=t.path;r!==void 0&&(t.path=Snt.joinPathSegments(r,t.name,this._settings.pathSegmentSeparator)),Snt.isAppliedFilter(this._settings.entryFilter,t)&&this._pushToStorage(t),t.dirent.isDirectory()&&Snt.isAppliedFilter(this._settings.deepFilter,t)&&this._pushToQueue(s,r===void 0?void 0:t.path)}_pushToStorage(t){this._storage.push(t)}};KHt.default=UHt});var tcn=z(zHt=>{"use strict";Object.defineProperty(zHt,"__esModule",{value:!0});var C3s=ecn(),jHt=class{constructor(t,r){this._root=t,this._settings=r,this._reader=new C3s.default(this._root,this._settings)}read(){return this._reader.read()}};zHt.default=jHt});var rcn=z($Ht=>{"use strict";Object.defineProperty($Ht,"__esModule",{value:!0});var m3s=Dt("path"),h3s=Ent(),qHt=class{constructor(t={}){this._options=t,this.basePath=this._getValue(this._options.basePath,void 0),this.concurrency=this._getValue(this._options.concurrency,Number.POSITIVE_INFINITY),this.deepFilter=this._getValue(this._options.deepFilter,null),this.entryFilter=this._getValue(this._options.entryFilter,null),this.errorFilter=this._getValue(this._options.errorFilter,null),this.pathSegmentSeparator=this._getValue(this._options.pathSegmentSeparator,m3s.sep),this.fsScandirSettings=new h3s.Settings({followSymbolicLinks:this._options.followSymbolicLinks,fs:this._options.fs,pathSegmentSeparator:this._options.pathSegmentSeparator,stats:this._options.stats,throwErrorOnBrokenSymbolicLink:this._options.throwErrorOnBrokenSymbolicLink})}_getValue(t,r){return t??r}};$Ht.default=qHt});var Tnt=z(yJ=>{"use strict";Object.defineProperty(yJ,"__esModule",{value:!0});yJ.Settings=yJ.walkStream=yJ.walkSync=yJ.walk=void 0;var ncn=qan(),_3s=$an(),y3s=tcn(),e5t=rcn();yJ.Settings=e5t.default;function b3s(e,t,r){if(typeof t=="function"){new ncn.default(e,wnt()).read(t);return}new ncn.default(e,wnt(t)).read(r)}yJ.walk=b3s;function E3s(e,t){let r=wnt(t);return new y3s.default(e,r).read()}yJ.walkSync=E3s;function B3s(e,t){let r=wnt(t);return new _3s.default(e,r).read()}yJ.walkStream=B3s;function wnt(e={}){return e instanceof e5t.default?e:new e5t.default(e)}});var Nnt=z(r5t=>{"use strict";Object.defineProperty(r5t,"__esModule",{value:!0});var v3s=Dt("path"),S3s=oAe(),icn=tj(),t5t=class{constructor(t){this._settings=t,this._fsStatSettings=new S3s.Settings({followSymbolicLink:this._settings.followSymbolicLinks,fs:this._settings.fs,throwErrorOnBrokenSymbolicLink:this._settings.followSymbolicLinks})}_getFullEntryPath(t){return v3s.resolve(this._settings.cwd,t)}_makeEntry(t,r){let s={name:r,path:r,dirent:icn.fs.createDirentFromStats(r,t)};return this._settings.stats&&(s.stats=t),s}_isFatalError(t){return!icn.errno.isEnoentCodeError(t)&&!this._settings.suppressErrors}};r5t.default=t5t});var s5t=z(i5t=>{"use strict";Object.defineProperty(i5t,"__esModule",{value:!0});var w3s=Dt("stream"),T3s=oAe(),N3s=Tnt(),R3s=Nnt(),n5t=class extends R3s.default{constructor(){super(...arguments),this._walkStream=N3s.walkStream,this._stat=T3s.stat}dynamic(t,r){return this._walkStream(t,r)}static(t,r){let s=t.map(this._getFullEntryPath,this),a=new w3s.PassThrough({objectMode:!0});a._write=(o,g,p)=>this._getEntry(s[o],t[o],r).then(f=>{f!==null&&r.entryFilter(f)&&a.push(f),o===s.length-1&&a.end(),p()}).catch(p);for(let o=0;othis._makeEntry(a,r)).catch(a=>{if(s.errorFilter(a))return null;throw a})}_getStat(t){return new Promise((r,s)=>{this._stat(t,this._fsStatSettings,(a,o)=>a===null?r(o):s(a))})}};i5t.default=n5t});var scn=z(a5t=>{"use strict";Object.defineProperty(a5t,"__esModule",{value:!0});var D3s=Tnt(),x3s=Nnt(),k3s=s5t(),o5t=class extends x3s.default{constructor(){super(...arguments),this._walkAsync=D3s.walk,this._readerStream=new k3s.default(this._settings)}dynamic(t,r){return new Promise((s,a)=>{this._walkAsync(t,r,(o,g)=>{o===null?s(g):a(o)})})}async static(t,r){let s=[],a=this._readerStream.static(t,r);return new Promise((o,g)=>{a.once("error",g),a.on("data",p=>s.push(p)),a.once("end",()=>o(s))})}};a5t.default=o5t});var ocn=z(l5t=>{"use strict";Object.defineProperty(l5t,"__esModule",{value:!0});var L9e=tj(),c5t=class{constructor(t,r,s){this._patterns=t,this._settings=r,this._micromatchOptions=s,this._storage=[],this._fillStorage()}_fillStorage(){for(let t of this._patterns){let r=this._getPatternSegments(t),s=this._splitSegmentsIntoSections(r);this._storage.push({complete:s.length<=1,pattern:t,segments:r,sections:s})}}_getPatternSegments(t){return L9e.pattern.getPatternParts(t,this._micromatchOptions).map(s=>L9e.pattern.isDynamicPattern(s,this._settings)?{dynamic:!0,pattern:s,patternRe:L9e.pattern.makeRe(s,this._micromatchOptions)}:{dynamic:!1,pattern:s})}_splitSegmentsIntoSections(t){return L9e.array.splitWhen(t,r=>r.dynamic&&L9e.pattern.hasGlobStar(r.pattern))}};l5t.default=c5t});var acn=z(g5t=>{"use strict";Object.defineProperty(g5t,"__esModule",{value:!0});var G3s=ocn(),u5t=class extends G3s.default{match(t){let r=t.split("/"),s=r.length,a=this._storage.filter(o=>!o.complete||o.segments.length>s);for(let o of a){let g=o.sections[0];if(!o.complete&&s>g.length||r.every((f,m)=>{let y=o.segments[m];return!!(y.dynamic&&y.patternRe.test(f)||!y.dynamic&&y.pattern===f)}))return!0}return!1}};g5t.default=u5t});var ccn=z(d5t=>{"use strict";Object.defineProperty(d5t,"__esModule",{value:!0});var Rnt=tj(),F3s=acn(),A5t=class{constructor(t,r){this._settings=t,this._micromatchOptions=r}getFilter(t,r,s){let a=this._getMatcher(r),o=this._getNegativePatternsRe(s);return g=>this._filter(t,g,a,o)}_getMatcher(t){return new F3s.default(t,this._settings,this._micromatchOptions)}_getNegativePatternsRe(t){let r=t.filter(Rnt.pattern.isAffectDepthOfReadingPattern);return Rnt.pattern.convertPatternsToRe(r,this._micromatchOptions)}_filter(t,r,s,a){if(this._isSkippedByDeep(t,r.path)||this._isSkippedSymbolicLink(r))return!1;let o=Rnt.path.removeLeadingDotSegment(r.path);return this._isSkippedByPositivePatterns(o,s)?!1:this._isSkippedByNegativePatterns(o,a)}_isSkippedByDeep(t,r){return this._settings.deep===1/0?!1:this._getEntryLevel(t,r)>=this._settings.deep}_getEntryLevel(t,r){let s=r.split("/").length;if(t==="")return s;let a=t.split("/").length;return s-a}_isSkippedSymbolicLink(t){return!this._settings.followSymbolicLinks&&t.dirent.isSymbolicLink()}_isSkippedByPositivePatterns(t,r){return!this._settings.baseNameMatch&&!r.match(t)}_isSkippedByNegativePatterns(t,r){return!Rnt.pattern.matchAny(t,r)}};d5t.default=A5t});var lcn=z(f5t=>{"use strict";Object.defineProperty(f5t,"__esModule",{value:!0});var aAe=tj(),p5t=class{constructor(t,r){this._settings=t,this._micromatchOptions=r,this.index=new Map}getFilter(t,r){let s=aAe.pattern.convertPatternsToRe(t,this._micromatchOptions),a=aAe.pattern.convertPatternsToRe(r,Object.assign(Object.assign({},this._micromatchOptions),{dot:!0}));return o=>this._filter(o,s,a)}_filter(t,r,s){let a=aAe.path.removeLeadingDotSegment(t.path);if(this._settings.unique&&this._isDuplicateEntry(a)||this._onlyFileFilter(t)||this._onlyDirectoryFilter(t)||this._isSkippedByAbsoluteNegativePatterns(a,s))return!1;let o=t.dirent.isDirectory(),g=this._isMatchToPatterns(a,r,o)&&!this._isMatchToPatterns(a,s,o);return this._settings.unique&&g&&this._createIndexRecord(a),g}_isDuplicateEntry(t){return this.index.has(t)}_createIndexRecord(t){this.index.set(t,void 0)}_onlyFileFilter(t){return this._settings.onlyFiles&&!t.dirent.isFile()}_onlyDirectoryFilter(t){return this._settings.onlyDirectories&&!t.dirent.isDirectory()}_isSkippedByAbsoluteNegativePatterns(t,r){if(!this._settings.absolute)return!1;let s=aAe.path.makeAbsolute(this._settings.cwd,t);return aAe.pattern.matchAny(s,r)}_isMatchToPatterns(t,r,s){let a=aAe.pattern.matchAny(t,r);return!a&&s?aAe.pattern.matchAny(t+"/",r):a}};f5t.default=p5t});var ucn=z(C5t=>{"use strict";Object.defineProperty(C5t,"__esModule",{value:!0});var Z3s=tj(),I5t=class{constructor(t){this._settings=t}getFilter(){return t=>this._isNonFatalError(t)}_isNonFatalError(t){return Z3s.errno.isEnoentCodeError(t)||this._settings.suppressErrors}};C5t.default=I5t});var Acn=z(h5t=>{"use strict";Object.defineProperty(h5t,"__esModule",{value:!0});var gcn=tj(),m5t=class{constructor(t){this._settings=t}getTransformer(){return t=>this._transform(t)}_transform(t){let r=t.path;return this._settings.absolute&&(r=gcn.path.makeAbsolute(this._settings.cwd,r),r=gcn.path.unixify(r)),this._settings.markDirectories&&t.dirent.isDirectory()&&(r+="/"),this._settings.objectMode?Object.assign(Object.assign({},t),{path:r}):r}};h5t.default=m5t});var Dnt=z(y5t=>{"use strict";Object.defineProperty(y5t,"__esModule",{value:!0});var L3s=Dt("path"),V3s=ccn(),W3s=lcn(),P3s=ucn(),O3s=Acn(),_5t=class{constructor(t){this._settings=t,this.errorFilter=new P3s.default(this._settings),this.entryFilter=new W3s.default(this._settings,this._getMicromatchOptions()),this.deepFilter=new V3s.default(this._settings,this._getMicromatchOptions()),this.entryTransformer=new O3s.default(this._settings)}_getRootDirectory(t){return L3s.resolve(this._settings.cwd,t.base)}_getReaderOptions(t){let r=t.base==="."?"":t.base;return{basePath:r,pathSegmentSeparator:"/",concurrency:this._settings.concurrency,deepFilter:this.deepFilter.getFilter(r,t.positive,t.negative),entryFilter:this.entryFilter.getFilter(t.positive,t.negative),errorFilter:this.errorFilter.getFilter(),followSymbolicLinks:this._settings.followSymbolicLinks,fs:this._settings.fs,stats:this._settings.stats,throwErrorOnBrokenSymbolicLink:this._settings.throwErrorOnBrokenSymbolicLink,transform:this.entryTransformer.getTransformer()}}_getMicromatchOptions(){return{dot:this._settings.dot,matchBase:this._settings.baseNameMatch,nobrace:!this._settings.braceExpansion,nocase:!this._settings.caseSensitiveMatch,noext:!this._settings.extglob,noglobstar:!this._settings.globstar,posix:!0,strictSlashes:!1}}};y5t.default=_5t});var dcn=z(E5t=>{"use strict";Object.defineProperty(E5t,"__esModule",{value:!0});var M3s=scn(),Q3s=Dnt(),b5t=class extends Q3s.default{constructor(){super(...arguments),this._reader=new M3s.default(this._settings)}async read(t){let r=this._getRootDirectory(t),s=this._getReaderOptions(t);return(await this.api(r,t,s)).map(o=>s.transform(o))}api(t,r,s){return r.dynamic?this._reader.dynamic(t,s):this._reader.static(r.patterns,s)}};E5t.default=b5t});var pcn=z(v5t=>{"use strict";Object.defineProperty(v5t,"__esModule",{value:!0});var Y3s=Dt("stream"),H3s=s5t(),X3s=Dnt(),B5t=class extends X3s.default{constructor(){super(...arguments),this._reader=new H3s.default(this._settings)}read(t){let r=this._getRootDirectory(t),s=this._getReaderOptions(t),a=this.api(r,t,s),o=new Y3s.Readable({objectMode:!0,read:()=>{}});return a.once("error",g=>o.emit("error",g)).on("data",g=>o.emit("data",s.transform(g))).once("end",()=>o.emit("end")),o.once("close",()=>a.destroy()),o}api(t,r,s){return r.dynamic?this._reader.dynamic(t,s):this._reader.static(r.patterns,s)}};v5t.default=B5t});var fcn=z(w5t=>{"use strict";Object.defineProperty(w5t,"__esModule",{value:!0});var J3s=oAe(),U3s=Tnt(),K3s=Nnt(),S5t=class extends K3s.default{constructor(){super(...arguments),this._walkSync=U3s.walkSync,this._statSync=J3s.statSync}dynamic(t,r){return this._walkSync(t,r)}static(t,r){let s=[];for(let a of t){let o=this._getFullEntryPath(a),g=this._getEntry(o,a,r);g===null||!r.entryFilter(g)||s.push(g)}return s}_getEntry(t,r,s){try{let a=this._getStat(t);return this._makeEntry(a,r)}catch(a){if(s.errorFilter(a))return null;throw a}}_getStat(t){return this._statSync(t,this._fsStatSettings)}};w5t.default=S5t});var Icn=z(N5t=>{"use strict";Object.defineProperty(N5t,"__esModule",{value:!0});var j3s=fcn(),z3s=Dnt(),T5t=class extends z3s.default{constructor(){super(...arguments),this._reader=new j3s.default(this._settings)}read(t){let r=this._getRootDirectory(t),s=this._getReaderOptions(t);return this.api(r,t,s).map(s.transform)}api(t,r,s){return r.dynamic?this._reader.dynamic(t,s):this._reader.static(r.patterns,s)}};N5t.default=T5t});var Ccn=z(Nbe=>{"use strict";Object.defineProperty(Nbe,"__esModule",{value:!0});Nbe.DEFAULT_FILE_SYSTEM_ADAPTER=void 0;var Tbe=Dt("fs"),q3s=Dt("os"),$3s=Math.max(q3s.cpus().length,1);Nbe.DEFAULT_FILE_SYSTEM_ADAPTER={lstat:Tbe.lstat,lstatSync:Tbe.lstatSync,stat:Tbe.stat,statSync:Tbe.statSync,readdir:Tbe.readdir,readdirSync:Tbe.readdirSync};var R5t=class{constructor(t={}){this._options=t,this.absolute=this._getValue(this._options.absolute,!1),this.baseNameMatch=this._getValue(this._options.baseNameMatch,!1),this.braceExpansion=this._getValue(this._options.braceExpansion,!0),this.caseSensitiveMatch=this._getValue(this._options.caseSensitiveMatch,!0),this.concurrency=this._getValue(this._options.concurrency,$3s),this.cwd=this._getValue(this._options.cwd,process.cwd()),this.deep=this._getValue(this._options.deep,1/0),this.dot=this._getValue(this._options.dot,!1),this.extglob=this._getValue(this._options.extglob,!0),this.followSymbolicLinks=this._getValue(this._options.followSymbolicLinks,!0),this.fs=this._getFileSystemMethods(this._options.fs),this.globstar=this._getValue(this._options.globstar,!0),this.ignore=this._getValue(this._options.ignore,[]),this.markDirectories=this._getValue(this._options.markDirectories,!1),this.objectMode=this._getValue(this._options.objectMode,!1),this.onlyDirectories=this._getValue(this._options.onlyDirectories,!1),this.onlyFiles=this._getValue(this._options.onlyFiles,!0),this.stats=this._getValue(this._options.stats,!1),this.suppressErrors=this._getValue(this._options.suppressErrors,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!1),this.unique=this._getValue(this._options.unique,!0),this.onlyDirectories&&(this.onlyFiles=!1),this.stats&&(this.objectMode=!0),this.ignore=[].concat(this.ignore)}_getValue(t,r){return t===void 0?r:t}_getFileSystemMethods(t={}){return Object.assign(Object.assign({},Nbe.DEFAULT_FILE_SYSTEM_ADAPTER),t)}};Nbe.default=R5t});var Rbe=z((b3c,hcn)=>{"use strict";var mcn=han(),ePs=dcn(),tPs=pcn(),rPs=Icn(),D5t=Ccn(),IO=tj();async function x5t(e,t){fH(e);let r=k5t(e,ePs.default,t),s=await Promise.all(r);return IO.array.flatten(s)}(function(e){e.glob=e,e.globSync=t,e.globStream=r,e.async=e;function t(m,y){fH(m);let B=k5t(m,rPs.default,y);return IO.array.flatten(B)}e.sync=t;function r(m,y){fH(m);let B=k5t(m,tPs.default,y);return IO.stream.merge(B)}e.stream=r;function s(m,y){fH(m);let B=[].concat(m),v=new D5t.default(y);return mcn.generate(B,v)}e.generateTasks=s;function a(m,y){fH(m);let B=new D5t.default(y);return IO.pattern.isDynamicPattern(m,B)}e.isDynamicPattern=a;function o(m){return fH(m),IO.path.escape(m)}e.escapePath=o;function g(m){return fH(m),IO.path.convertPathToPattern(m)}e.convertPathToPattern=g;let p;(function(m){function y(v){return fH(v),IO.path.escapePosixPath(v)}m.escapePath=y;function B(v){return fH(v),IO.path.convertPosixPathToPattern(v)}m.convertPathToPattern=B})(p=e.posix||(e.posix={}));let f;(function(m){function y(v){return fH(v),IO.path.escapeWindowsPath(v)}m.escapePath=y;function B(v){return fH(v),IO.path.convertWindowsPathToPattern(v)}m.convertPathToPattern=B})(f=e.win32||(e.win32={}))})(x5t||(x5t={}));function k5t(e,t,r){let s=[].concat(e),a=new D5t.default(r),o=mcn.generate(s,a),g=new t(a);return o.map(g.read,g)}function fH(e){if(![].concat(e).every(s=>IO.string.isString(s)&&!IO.string.isEmpty(s)))throw new TypeError("Patterns must be a string (non empty) or an array of strings")}hcn.exports=x5t});var pne=z(V9e=>{"use strict";Object.defineProperty(V9e,"__esModule",{value:!0});V9e.makeHash=iPs;V9e.checksumFile=sPs;V9e.checksumPattern=oPs;var nPs=(Ma(),Ai(Oa)),dne=Ro(),G5t=Dt("crypto"),_cn=nPs.__importDefault(Rbe());function iPs(...e){let t=(0,G5t.createHash)("sha512"),r="";for(let s of e)typeof s=="string"?r+=s:s&&(r&&(t.update(r),r=""),t.update(s));return r&&t.update(r),t.digest("hex")}async function sPs(e,{baseFs:t,algorithm:r}={baseFs:dne.xfs,algorithm:"sha512"}){let s=await t.openPromise(e,"r");try{let o=Buffer.allocUnsafeSlow(65536),g=(0,G5t.createHash)(r),p=0;for(;(p=await t.readPromise(s,o,0,65536))!==0;)g.update(p===65536?o:o.slice(0,p));return g.digest("hex")}finally{await t.closePromise(s)}}async function oPs(e,{cwd:t}){let s=(await(0,_cn.default)(e,{cwd:dne.npath.fromPortablePath(t),onlyDirectories:!0})).map(p=>`${p}/**/*`),a=await(0,_cn.default)([e,...s],{cwd:dne.npath.fromPortablePath(t),onlyFiles:!1});a.sort();let o=await Promise.all(a.map(async p=>{let f=[Buffer.from(p)],m=dne.ppath.join(t,dne.npath.toPortablePath(p)),y=await dne.xfs.lstatPromise(m);return y.isSymbolicLink()?f.push(Buffer.from(await dne.xfs.readlinkPromise(m))):y.isFile()&&f.push(await dne.xfs.readFilePromise(m)),f.join("\0")})),g=(0,G5t.createHash)("sha512");for(let p of o)g.update(p);return g.digest("hex")}});var ak=z(gp=>{"use strict";Object.defineProperty(gp,"__esModule",{value:!0});gp.makeIdent=Gnt;gp.makeDescriptor=xbe;gp.makeLocator=kbe;gp.convertToIdent=APs;gp.convertDescriptorToLocator=dPs;gp.convertLocatorToDescriptor=pPs;gp.convertPackageToLocator=fPs;gp.renamePackage=L5t;gp.copyPackage=IPs;gp.virtualizeDescriptor=CPs;gp.virtualizePackage=mPs;gp.isVirtualDescriptor=Fnt;gp.isVirtualLocator=O9e;gp.devirtualizeDescriptor=Ecn;gp.devirtualizeLocator=hPs;gp.ensureDevirtualizedDescriptor=_Ps;gp.ensureDevirtualizedLocator=yPs;gp.bindDescriptor=bPs;gp.bindLocator=EPs;gp.areIdentsEqual=Bcn;gp.areDescriptorsEqual=vcn;gp.areLocatorsEqual=BPs;gp.areVirtualPackagesEquivalent=vPs;gp.parseIdent=SPs;gp.tryParseIdent=Scn;gp.parseDescriptor=TPs;gp.tryParseDescriptor=wcn;gp.parseLocator=Tcn;gp.tryParseLocator=Ncn;gp.parseRange=M9e;gp.tryParseRange=GPs;gp.parseFileStyleRange=FPs;gp.makeRange=Rcn;gp.convertToManifestRange=LPs;gp.stringifyIdent=Lnt;gp.stringifyDescriptor=VPs;gp.stringifyLocator=WPs;gp.slugifyIdent=F5t;gp.slugifyLocator=OPs;gp.prettyIdent=Vnt;gp.prettyRange=Dcn;gp.prettyDescriptor=QPs;gp.prettyReference=V5t;gp.prettyLocator=knt;gp.prettyLocatorNoColors=YPs;gp.sortDescriptors=HPs;gp.prettyWorkspace=XPs;gp.prettyResolution=JPs;gp.prettyDependent=UPs;gp.getIdentVendorPath=KPs;gp.isPackageCompatible=jPs;gp.allPeerRequests=zPs;var Dbe=(Ma(),Ai(Oa)),P9e=Dbe.__importDefault(Dt("querystring")),aPs=Dbe.__importDefault(Lh()),cPs=Ten(),mF=Dbe.__importStar(pO()),Z5t=Dbe.__importStar(pne()),lPs=Dbe.__importStar(fW()),xnt=Dbe.__importStar(ak()),W9e="virtual:",uPs=5,bcn=/(os|cpu|libc)=([a-z0-9_-]+)/,gPs=(0,cPs.makeParser)(bcn);function Gnt(e,t){if(e?.startsWith("@"))throw new Error("Invalid scope: don't prefix it with '@'");return{identHash:Z5t.makeHash(e,t),scope:e,name:t}}function xbe(e,t){return{identHash:e.identHash,scope:e.scope,name:e.name,descriptorHash:Z5t.makeHash(e.identHash,t),range:t}}function kbe(e,t){return{identHash:e.identHash,scope:e.scope,name:e.name,locatorHash:Z5t.makeHash(e.identHash,t),reference:t}}function APs(e){return{identHash:e.identHash,scope:e.scope,name:e.name}}function dPs(e){return{identHash:e.identHash,scope:e.scope,name:e.name,locatorHash:e.descriptorHash,reference:e.range}}function pPs(e){return{identHash:e.identHash,scope:e.scope,name:e.name,descriptorHash:e.locatorHash,range:e.reference}}function fPs(e){return{identHash:e.identHash,scope:e.scope,name:e.name,locatorHash:e.locatorHash,reference:e.reference}}function L5t(e,t){return{identHash:t.identHash,scope:t.scope,name:t.name,locatorHash:t.locatorHash,reference:t.reference,version:e.version,languageName:e.languageName,linkType:e.linkType,conditions:e.conditions,dependencies:new Map(e.dependencies),peerDependencies:new Map(e.peerDependencies),dependenciesMeta:new Map(e.dependenciesMeta),peerDependenciesMeta:new Map(e.peerDependenciesMeta),bin:new Map(e.bin)}}function IPs(e){return L5t(e,e)}function CPs(e,t){if(t.includes("#"))throw new Error("Invalid entropy");return xbe(e,`virtual:${t}#${e.range}`)}function mPs(e,t){if(t.includes("#"))throw new Error("Invalid entropy");return L5t(e,kbe(e,`virtual:${t}#${e.reference}`))}function Fnt(e){return e.range.startsWith(W9e)}function O9e(e){return e.reference.startsWith(W9e)}var Znt=/^[^#]*#/;function Ecn(e){if(!Fnt(e))throw new Error("Not a virtual descriptor");return xbe(e,e.range.replace(Znt,""))}function hPs(e){if(!O9e(e))throw new Error("Not a virtual descriptor");return kbe(e,e.reference.replace(Znt,""))}function _Ps(e){return Fnt(e)?xbe(e,e.range.replace(Znt,"")):e}function yPs(e){return O9e(e)?kbe(e,e.reference.replace(Znt,"")):e}function bPs(e,t){return e.range.includes("::")?e:xbe(e,`${e.range}::${P9e.default.stringify(t)}`)}function EPs(e,t){return e.reference.includes("::")?e:kbe(e,`${e.reference}::${P9e.default.stringify(t)}`)}function Bcn(e,t){return e.identHash===t.identHash}function vcn(e,t){return e.descriptorHash===t.descriptorHash}function BPs(e,t){return e.locatorHash===t.locatorHash}function vPs(e,t){if(!O9e(e))throw new Error("Invalid package type");if(!O9e(t))throw new Error("Invalid package type");if(!Bcn(e,t)||e.dependencies.size!==t.dependencies.size)return!1;for(let r of e.dependencies.values()){let s=t.dependencies.get(r.identHash);if(!s||!vcn(r,s))return!1}return!0}function SPs(e){let t=Scn(e);if(!t)throw new Error(`Invalid ident (${e})`);return t}var wPs=/^(?:@([^/]+?)\/)?([^@/]+)$/;function Scn(e){let t=e.match(wPs);if(!t)return null;let[,r,s]=t;return Gnt(typeof r<"u"?r:null,s)}function TPs(e,t=!1){let r=wcn(e,t);if(!r)throw new Error(`Invalid descriptor (${e})`);return r}var NPs=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))$/,RPs=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))?$/;function wcn(e,t=!1){let r=t?e.match(NPs):e.match(RPs);if(!r)return null;let[,s,a,o]=r;if(o==="unknown")throw new Error(`Invalid range (${e})`);let g=typeof s<"u"?s:null,p=typeof o<"u"?o:"unknown";return xbe(Gnt(g,a),p)}function Tcn(e,t=!1){let r=Ncn(e,t);if(!r)throw new Error(`Invalid locator (${e})`);return r}var DPs=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))$/,xPs=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))?$/;function Ncn(e,t=!1){let r=t?e.match(DPs):e.match(xPs);if(!r)return null;let[,s,a,o]=r;if(o==="unknown")throw new Error(`Invalid reference (${e})`);let g=typeof s<"u"?s:null,p=typeof o<"u"?o:"unknown";return kbe(Gnt(g,a),p)}var kPs=/^([^#:]*:)?((?:(?!::)[^#])*)(?:#((?:(?!::).)*))?(?:::(.*))?$/;function M9e(e,t){let r=e.match(kPs);if(r===null)throw new Error(`Invalid range (${e})`);let s=typeof r[1]<"u"?r[1]:null;if(typeof t?.requireProtocol=="string"&&s!==t.requireProtocol)throw new Error(`Invalid protocol (${s})`);if(t?.requireProtocol&&s===null)throw new Error(`Missing protocol (${s})`);let a=typeof r[3]<"u"?decodeURIComponent(r[2]):null;if(t?.requireSource&&a===null)throw new Error(`Missing source (${e})`);let o=typeof r[3]<"u"?decodeURIComponent(r[3]):decodeURIComponent(r[2]),g=t?.parseSelector?P9e.default.parse(o):o,p=typeof r[4]<"u"?P9e.default.parse(r[4]):null;return{protocol:s,source:a,selector:g,params:p}}function GPs(e,t){try{return M9e(e,t)}catch{return null}}function FPs(e,{protocol:t}){let{selector:r,params:s}=M9e(e,{requireProtocol:t,requireBindings:!0});if(typeof s.locator!="string")throw new Error(`Assertion failed: Invalid bindings for ${e}`);return{parentLocator:Tcn(s.locator,!0),path:r}}function ycn(e){return e=e.replaceAll("%","%25"),e=e.replaceAll(":","%3A"),e=e.replaceAll("#","%23"),e}function ZPs(e){return e===null?!1:Object.entries(e).length>0}function Rcn({protocol:e,source:t,selector:r,params:s}){let a="";return e!==null&&(a+=`${e}`),t!==null&&(a+=`${ycn(t)}#`),a+=ycn(r),ZPs(s)&&(a+=`::${P9e.default.stringify(s)}`),a}function LPs(e){let{params:t,protocol:r,source:s,selector:a}=M9e(e);for(let o in t)o.startsWith("__")&&delete t[o];return Rcn({protocol:r,source:s,params:t,selector:a})}function Lnt(e){return e.scope?`@${e.scope}/${e.name}`:`${e.name}`}function VPs(e){return e.scope?`@${e.scope}/${e.name}@${e.range}`:`${e.name}@${e.range}`}function WPs(e){return e.scope?`@${e.scope}/${e.name}@${e.reference}`:`${e.name}@${e.reference}`}function F5t(e){return e.scope!==null?`@${e.scope}-${e.name}`:e.name}var PPs=/:$/;function OPs(e){let{protocol:t,selector:r}=M9e(e.reference),s=t!==null?t.replace(PPs,""):"exotic",a=aPs.default.valid(r),o=a!==null?`${s}-${a}`:`${s}`,g=10;return e.scope?`${F5t(e)}-${o}-${e.locatorHash.slice(0,g)}`:`${F5t(e)}-${o}-${e.locatorHash.slice(0,g)}`}function Vnt(e,t){return t.scope?`${mF.pretty(e,`@${t.scope}/`,mF.Type.SCOPE)}${mF.pretty(e,t.name,mF.Type.NAME)}`:`${mF.pretty(e,t.name,mF.Type.NAME)}`}var MPs=/\?.*/;function Wnt(e){if(e.startsWith(W9e)){let t=Wnt(e.substring(e.indexOf("#")+1)),r=e.substring(W9e.length,W9e.length+uPs);return`${t} [${r}]`}else return e.replace(MPs,"?[...]")}function Dcn(e,t){return`${mF.pretty(e,Wnt(t),mF.Type.RANGE)}`}function QPs(e,t){return`${Vnt(e,t)}${mF.pretty(e,"@",mF.Type.RANGE)}${Dcn(e,t.range)}`}function V5t(e,t){return`${mF.pretty(e,Wnt(t),mF.Type.REFERENCE)}`}function knt(e,t){return`${Vnt(e,t)}${mF.pretty(e,"@",mF.Type.REFERENCE)}${V5t(e,t.reference)}`}function YPs(e){return`${Lnt(e)}@${Wnt(e.reference)}`}function HPs(e){return lPs.sortMap(e,[t=>Lnt(t),t=>t.range])}function XPs(e,t){return Vnt(e,t.anchoredLocator)}function JPs(e,t,r){let s=Fnt(t)?Ecn(t):t;return r===null?`${xnt.prettyDescriptor(e,s)} \u2192 ${mF.mark(e).Cross}`:s.identHash===r.identHash?`${xnt.prettyDescriptor(e,s)} \u2192 ${V5t(e,r.reference)}`:`${xnt.prettyDescriptor(e,s)} \u2192 ${knt(e,r)}`}function UPs(e,t,r){return r===null?`${knt(e,t)}`:`${knt(e,t)} (via ${xnt.prettyRange(e,r.range)})`}function KPs(e){return`node_modules/${Lnt(e)}`}function jPs(e,t){return e.conditions?gPs(e.conditions,r=>{let[,s,a]=r.match(bcn),o=t[s];return o?o.includes(a):!0}):!0}function zPs(e){let t=new Set;if("children"in e)t.add(e);else for(let r of e.requests.values())t.add(r);for(let r of t)for(let s of r.children.values())t.add(s);return t}});var xcn=z(Pnt=>{"use strict";Object.defineProperty(Pnt,"__esModule",{value:!0});Pnt.CorePlugin=void 0;var qPs=(Ma(),Ai(Oa)),$Ps=TL(),fne=qPs.__importStar(ak());Pnt.CorePlugin={hooks:{reduceDependency:(e,t,r,s,{resolver:a,resolveOptions:o})=>{for(let{pattern:g,reference:p}of t.topLevelWorkspace.manifest.resolutions){if(g.from&&(g.from.fullName!==fne.stringifyIdent(r)||t.configuration.normalizeLocator(fne.makeLocator(fne.parseIdent(g.from.fullName),g.from.description??r.reference)).locatorHash!==r.locatorHash)||g.descriptor.fullName!==fne.stringifyIdent(e)||t.configuration.normalizeDependency(fne.makeDescriptor(fne.parseLocator(g.descriptor.fullName),g.descriptor.description??e.range)).descriptorHash!==e.descriptorHash)continue;return a.bindDescriptor(t.configuration.normalizeDependency(fne.makeDescriptor(e,p)),t.topLevelWorkspace.anchoredLocator,o)}return e},validateProject:async(e,t)=>{for(let r of e.workspaces){let s=fne.prettyWorkspace(e.configuration,r);await e.configuration.triggerHook(a=>a.validateWorkspace,r,{reportWarning:(a,o)=>t.reportWarning(a,`${s}: ${o}`),reportError:(a,o)=>t.reportError(a,`${s}: ${o}`)})}},validateWorkspace:async(e,t)=>{let{manifest:r}=e;r.resolutions.length&&e.cwd!==e.project.cwd&&r.errors.push(new Error("Resolutions field will be ignored"));for(let s of r.errors)t.reportWarning($Ps.MessageName.INVALID_MANIFEST,s.message)}}}});var cAe=z(Mnt=>{"use strict";Object.defineProperty(Mnt,"__esModule",{value:!0});Mnt.WorkspaceResolver=void 0;var eOs=iAe(),Ont=class e{supportsDescriptor(t,r){return!!(t.range.startsWith(e.protocol)||r.project.tryWorkspaceByDescriptor(t)!==null)}supportsLocator(t,r){return!!t.reference.startsWith(e.protocol)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,s){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,s){return[s.project.getWorkspaceByDescriptor(t).anchoredLocator]}async getSatisfying(t,r,s,a){let[o]=await this.getCandidates(t,r,a);return{locators:s.filter(g=>g.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){let s=r.project.getWorkspaceByCwd(t.reference.slice(e.protocol.length));return{...t,version:s.manifest.version||"0.0.0",languageName:"unknown",linkType:eOs.LinkType.SOFT,conditions:null,dependencies:r.project.configuration.normalizeDependencyMap(new Map([...s.manifest.dependencies,...s.manifest.devDependencies])),peerDependencies:new Map([...s.manifest.peerDependencies]),dependenciesMeta:s.manifest.dependenciesMeta,peerDependenciesMeta:s.manifest.peerDependenciesMeta,bin:s.manifest.bin}}};Mnt.WorkspaceResolver=Ont;Ont.protocol="workspace:"});var rj=z(IH=>{"use strict";Object.defineProperty(IH,"__esModule",{value:!0});IH.SemVer=void 0;IH.satisfiesWithPrereleases=nOs;IH.validRange=Fcn;IH.clean=sOs;IH.getComparator=Zcn;IH.mergeComparators=W5t;IH.stringifyComparator=Lcn;IH.simplifyRanges=oOs;var tOs=(Ma(),Ai(Oa)),Ine=tOs.__importDefault(Lh()),rOs=Lh();Object.defineProperty(IH,"SemVer",{enumerable:!0,get:function(){return rOs.SemVer}});var kcn=new Map;function nOs(e,t,r=!1){if(!e)return!1;let s=`${t}${r}`,a=kcn.get(s);if(typeof a>"u")try{a=new Ine.default.Range(t,{includePrerelease:!0,loose:r})}catch{return!1}finally{kcn.set(s,a||null)}else if(a===null)return!1;let o;try{o=new Ine.default.SemVer(e,a)}catch{return!1}return a.test(o)?!0:(o.prerelease&&(o.prerelease=[]),a.set.some(g=>{for(let p of g)p.semver.prerelease&&(p.semver.prerelease=[]);return g.every(p=>p.test(o))}))}var Gcn=new Map;function Fcn(e){if(e.indexOf(":")!==-1)return null;let t=Gcn.get(e);if(typeof t<"u")return t;try{t=new Ine.default.Range(e)}catch{t=null}return Gcn.set(e,t),t}var iOs=/^(?:[\sv=]*?)((0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?)(?:\s*)$/;function sOs(e){let t=iOs.exec(e);return t?t[1]:null}function Zcn(e){if(e.semver===Ine.default.Comparator.ANY)return{gt:null,lt:null};switch(e.operator){case"":return{gt:[">=",e.semver],lt:["<=",e.semver]};case">":case">=":return{gt:[e.operator,e.semver],lt:null};case"<":case"<=":return{gt:null,lt:[e.operator,e.semver]};default:throw new Error(`Assertion failed: Unexpected comparator operator (${e.operator})`)}}function W5t(e){if(e.length===0)return null;let t=null,r=null;for(let s of e){if(s.gt){let a=t!==null?Ine.default.compare(s.gt[1],t[1]):null;(a===null||a>0||a===0&&s.gt[0]===">")&&(t=s.gt)}if(s.lt){let a=r!==null?Ine.default.compare(s.lt[1],r[1]):null;(a===null||a<0||a===0&&s.lt[0]==="<")&&(r=s.lt)}}if(t&&r){let s=Ine.default.compare(t[1],r[1]);if(s===0&&(t[0]===">"||r[0]==="<")||s>0)return null}return{gt:t,lt:r}}function Lcn(e){if(e.gt&&e.lt){if(e.gt[0]===">="&&e.lt[0]==="<="&&e.gt[1].version===e.lt[1].version)return e.gt[1].version;if(e.gt[0]===">="&&e.lt[0]==="<"){if(e.lt[1].version===`${e.gt[1].major+1}.0.0-0`)return`^${e.gt[1].version}`;if(e.lt[1].version===`${e.gt[1].major}.${e.gt[1].minor+1}.0-0`)return`~${e.gt[1].version}`}}let t=[];return e.gt&&t.push(e.gt[0]+e.gt[1].version),e.lt&&t.push(e.lt[0]+e.lt[1].version),t.length?t.join(" "):"*"}function oOs(e){let t=e.map(aOs).map(s=>Fcn(s).set.map(a=>a.map(o=>Zcn(o)))),r=t.shift().map(s=>W5t(s)).filter(s=>s!==null);for(let s of t){let a=[];for(let o of r)for(let g of s){let p=W5t([o,...g]);p!==null&&a.push(p)}r=a}return r.length===0?null:r.map(s=>Lcn(s)).join(" || ")}function aOs(e){let t=e.split("||");if(t.length>1){let r=new Set;for(let s of t)t.some(a=>a!==s&&Ine.default.subset(s,a))||r.add(s);if(r.size{"use strict";Object.defineProperty(Jnt,"__esModule",{value:!0});Jnt.Manifest=void 0;var Xnt=(Ma(),Ai(Oa)),Qnt=Ro(),Vcn=aO(),cOs=Xnt.__importDefault(Lh()),lOs=cAe(),Hnt=Xnt.__importStar(fW()),uOs=Xnt.__importStar(rj()),y0=Xnt.__importStar(ak()),Gbe=class e{constructor(){this.indent=" ",this.name=null,this.version=null,this.os=null,this.cpu=null,this.libc=null,this.type=null,this.packageManager=null,this.private=!1,this.license=null,this.main=null,this.module=null,this.browser=null,this.languageName=null,this.bin=new Map,this.scripts=new Map,this.dependencies=new Map,this.devDependencies=new Map,this.peerDependencies=new Map,this.workspaceDefinitions=[],this.dependenciesMeta=new Map,this.peerDependenciesMeta=new Map,this.resolutions=[],this.files=null,this.publishConfig=null,this.installConfig=null,this.preferUnplugged=null,this.raw={},this.errors=[]}static async tryFind(t,{baseFs:r=new Qnt.NodeFS}={}){let s=Qnt.ppath.join(t,"package.json");try{return await e.fromFile(s,{baseFs:r})}catch(a){if(a.code==="ENOENT")return null;throw a}}static async find(t,{baseFs:r}={}){let s=await e.tryFind(t,{baseFs:r});if(s===null)throw new Error("Manifest not found");return s}static async fromFile(t,{baseFs:r=new Qnt.NodeFS}={}){let s=new e;return await s.loadFile(t,{baseFs:r}),s}static fromText(t){let r=new e;return r.loadFromText(t),r}loadFromText(t){let r;try{r=JSON.parse(Pcn(t)||"{}")}catch(s){throw s.message+=` (when parsing ${t})`,s}this.load(r),this.indent=Wcn(t)}async loadFile(t,{baseFs:r=new Qnt.NodeFS}){let s=await r.readFilePromise(t,"utf8"),a;try{a=JSON.parse(Pcn(s)||"{}")}catch(o){throw o.message+=` (when parsing ${t})`,o}this.load(a),this.indent=Wcn(s)}load(t,{yamlCompatibilityMode:r=!1}={}){if(typeof t!="object"||t===null)throw new Error(`Utterly invalid manifest data (${t})`);this.raw=t;let s=[];if(this.name=null,typeof t.name=="string")try{this.name=y0.parseIdent(t.name)}catch{s.push(new Error("Parsing failed for the 'name' field"))}if(typeof t.version=="string"?this.version=t.version:this.version=null,Array.isArray(t.os)){let o=[];this.os=o;for(let g of t.os)typeof g!="string"?s.push(new Error("Parsing failed for the 'os' field")):o.push(g)}else this.os=null;if(Array.isArray(t.cpu)){let o=[];this.cpu=o;for(let g of t.cpu)typeof g!="string"?s.push(new Error("Parsing failed for the 'cpu' field")):o.push(g)}else this.cpu=null;if(Array.isArray(t.libc)){let o=[];this.libc=o;for(let g of t.libc)typeof g!="string"?s.push(new Error("Parsing failed for the 'libc' field")):o.push(g)}else this.libc=null;if(typeof t.type=="string"?this.type=t.type:this.type=null,typeof t.packageManager=="string"?this.packageManager=t.packageManager:this.packageManager=null,typeof t.private=="boolean"?this.private=t.private:this.private=!1,typeof t.license=="string"?this.license=t.license:this.license=null,typeof t.languageName=="string"?this.languageName=t.languageName:this.languageName=null,typeof t.main=="string"?this.main=hF(t.main):this.main=null,typeof t.module=="string"?this.module=hF(t.module):this.module=null,t.browser!=null)if(typeof t.browser=="string")this.browser=hF(t.browser);else{this.browser=new Map;for(let[o,g]of Object.entries(t.browser))this.browser.set(hF(o),typeof g=="string"?hF(g):g)}else this.browser=null;if(this.bin=new Map,typeof t.bin=="string")t.bin.trim()===""?s.push(new Error("Invalid bin field")):this.name!==null?this.bin.set(this.name.name,hF(t.bin)):s.push(new Error("String bin field, but no attached package name"));else if(typeof t.bin=="object"&&t.bin!==null)for(let[o,g]of Object.entries(t.bin)){if(typeof g!="string"||g.trim()===""){s.push(new Error(`Invalid bin definition for '${o}'`));continue}let p=y0.parseIdent(o);this.bin.set(p.name,hF(g))}if(this.scripts=new Map,typeof t.scripts=="object"&&t.scripts!==null)for(let[o,g]of Object.entries(t.scripts)){if(typeof g!="string"){s.push(new Error(`Invalid script definition for '${o}'`));continue}this.scripts.set(o,g)}if(this.dependencies=new Map,typeof t.dependencies=="object"&&t.dependencies!==null)for(let[o,g]of Object.entries(t.dependencies)){if(typeof g!="string"){s.push(new Error(`Invalid dependency range for '${o}'`));continue}let p;try{p=y0.parseIdent(o)}catch{s.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}let f=y0.makeDescriptor(p,g);this.dependencies.set(f.identHash,f)}if(this.devDependencies=new Map,typeof t.devDependencies=="object"&&t.devDependencies!==null)for(let[o,g]of Object.entries(t.devDependencies)){if(typeof g!="string"){s.push(new Error(`Invalid dependency range for '${o}'`));continue}let p;try{p=y0.parseIdent(o)}catch{s.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}let f=y0.makeDescriptor(p,g);this.devDependencies.set(f.identHash,f)}if(this.peerDependencies=new Map,typeof t.peerDependencies=="object"&&t.peerDependencies!==null)for(let[o,g]of Object.entries(t.peerDependencies)){let p;try{p=y0.parseIdent(o)}catch{s.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}(typeof g!="string"||!g.startsWith(lOs.WorkspaceResolver.protocol)&&!uOs.validRange(g))&&(s.push(new Error(`Invalid dependency range for '${o}'`)),g="*");let f=y0.makeDescriptor(p,g);this.peerDependencies.set(f.identHash,f)}typeof t.workspaces=="object"&&t.workspaces!==null&&t.workspaces.nohoist&&s.push(new Error("'nohoist' is deprecated, please use 'installConfig.hoistingLimits' instead"));let a=Array.isArray(t.workspaces)?t.workspaces:typeof t.workspaces=="object"&&t.workspaces!==null&&Array.isArray(t.workspaces.packages)?t.workspaces.packages:[];this.workspaceDefinitions=[];for(let o of a){if(typeof o!="string"){s.push(new Error(`Invalid workspace definition for '${o}'`));continue}this.workspaceDefinitions.push({pattern:o})}if(this.dependenciesMeta=new Map,typeof t.dependenciesMeta=="object"&&t.dependenciesMeta!==null)for(let[o,g]of Object.entries(t.dependenciesMeta)){if(typeof g!="object"||g===null){s.push(new Error(`Invalid meta field for '${o}`));continue}let p=y0.parseDescriptor(o),f=this.ensureDependencyMeta(p),m=Ynt(g.built,{yamlCompatibilityMode:r});if(m===null){s.push(new Error(`Invalid built meta field for '${o}'`));continue}let y=Ynt(g.optional,{yamlCompatibilityMode:r});if(y===null){s.push(new Error(`Invalid optional meta field for '${o}'`));continue}let B=Ynt(g.unplugged,{yamlCompatibilityMode:r});if(B===null){s.push(new Error(`Invalid unplugged meta field for '${o}'`));continue}Object.assign(f,{built:m,optional:y,unplugged:B})}if(this.peerDependenciesMeta=new Map,typeof t.peerDependenciesMeta=="object"&&t.peerDependenciesMeta!==null)for(let[o,g]of Object.entries(t.peerDependenciesMeta)){if(typeof g!="object"||g===null){s.push(new Error(`Invalid meta field for '${o}'`));continue}let p=y0.parseDescriptor(o),f=this.ensurePeerDependencyMeta(p),m=Ynt(g.optional,{yamlCompatibilityMode:r});if(m===null){s.push(new Error(`Invalid optional meta field for '${o}'`));continue}Object.assign(f,{optional:m})}if(this.resolutions=[],typeof t.resolutions=="object"&&t.resolutions!==null)for(let[o,g]of Object.entries(t.resolutions)){if(typeof g!="string"){s.push(new Error(`Invalid resolution entry for '${o}'`));continue}try{this.resolutions.push({pattern:(0,Vcn.parseResolution)(o),reference:g})}catch(p){s.push(p);continue}}if(Array.isArray(t.files)){this.files=new Set;for(let o of t.files){if(typeof o!="string"){s.push(new Error(`Invalid files entry for '${o}'`));continue}this.files.add(o)}}else this.files=null;if(typeof t.publishConfig=="object"&&t.publishConfig!==null){if(this.publishConfig={},typeof t.publishConfig.access=="string"&&(this.publishConfig.access=t.publishConfig.access),typeof t.publishConfig.main=="string"&&(this.publishConfig.main=hF(t.publishConfig.main)),typeof t.publishConfig.module=="string"&&(this.publishConfig.module=hF(t.publishConfig.module)),t.publishConfig.browser!=null)if(typeof t.publishConfig.browser=="string")this.publishConfig.browser=hF(t.publishConfig.browser);else{this.publishConfig.browser=new Map;for(let[o,g]of Object.entries(t.publishConfig.browser))this.publishConfig.browser.set(hF(o),typeof g=="string"?hF(g):g)}if(typeof t.publishConfig.registry=="string"&&(this.publishConfig.registry=t.publishConfig.registry),typeof t.publishConfig.bin=="string")this.name!==null?this.publishConfig.bin=new Map([[this.name.name,hF(t.publishConfig.bin)]]):s.push(new Error("String bin field, but no attached package name"));else if(typeof t.publishConfig.bin=="object"&&t.publishConfig.bin!==null){this.publishConfig.bin=new Map;for(let[o,g]of Object.entries(t.publishConfig.bin)){if(typeof g!="string"){s.push(new Error(`Invalid bin definition for '${o}'`));continue}this.publishConfig.bin.set(o,hF(g))}}if(Array.isArray(t.publishConfig.executableFiles)){this.publishConfig.executableFiles=new Set;for(let o of t.publishConfig.executableFiles){if(typeof o!="string"){s.push(new Error("Invalid executable file definition"));continue}this.publishConfig.executableFiles.add(hF(o))}}}else this.publishConfig=null;if(typeof t.installConfig=="object"&&t.installConfig!==null){this.installConfig={};for(let o of Object.keys(t.installConfig))o==="hoistingLimits"?typeof t.installConfig.hoistingLimits=="string"?this.installConfig.hoistingLimits=t.installConfig.hoistingLimits:s.push(new Error("Invalid hoisting limits definition")):o=="selfReferences"?typeof t.installConfig.selfReferences=="boolean"?this.installConfig.selfReferences=t.installConfig.selfReferences:s.push(new Error("Invalid selfReferences definition, must be a boolean value")):s.push(new Error(`Unrecognized installConfig key: ${o}`))}else this.installConfig=null;if(typeof t.optionalDependencies=="object"&&t.optionalDependencies!==null)for(let[o,g]of Object.entries(t.optionalDependencies)){if(typeof g!="string"){s.push(new Error(`Invalid dependency range for '${o}'`));continue}let p;try{p=y0.parseIdent(o)}catch{s.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}let f=y0.makeDescriptor(p,g);this.dependencies.set(f.identHash,f);let m=y0.makeDescriptor(p,"unknown"),y=this.ensureDependencyMeta(m);Object.assign(y,{optional:!0})}typeof t.preferUnplugged=="boolean"?this.preferUnplugged=t.preferUnplugged:this.preferUnplugged=null,this.errors=s}getForScope(t){switch(t){case"dependencies":return this.dependencies;case"devDependencies":return this.devDependencies;case"peerDependencies":return this.peerDependencies;default:throw new Error(`Unsupported value ("${t}")`)}}hasConsumerDependency(t){return!!(this.dependencies.has(t.identHash)||this.peerDependencies.has(t.identHash))}hasHardDependency(t){return!!(this.dependencies.has(t.identHash)||this.devDependencies.has(t.identHash))}hasSoftDependency(t){return!!this.peerDependencies.has(t.identHash)}hasDependency(t){return!!(this.hasHardDependency(t)||this.hasSoftDependency(t))}getConditions(){let t=[];return this.os&&this.os.length>0&&t.push(P5t("os",this.os)),this.cpu&&this.cpu.length>0&&t.push(P5t("cpu",this.cpu)),this.libc&&this.libc.length>0&&t.push(P5t("libc",this.libc)),t.length>0?t.join(" & "):null}ensureDependencyMeta(t){if(t.range!=="unknown"&&!cOs.default.valid(t.range))throw new Error(`Invalid meta field range for '${y0.stringifyDescriptor(t)}'`);let r=y0.stringifyIdent(t),s=t.range!=="unknown"?t.range:null,a=this.dependenciesMeta.get(r);a||this.dependenciesMeta.set(r,a=new Map);let o=a.get(s);return o||a.set(s,o={}),o}ensurePeerDependencyMeta(t){if(t.range!=="unknown")throw new Error(`Invalid meta field range for '${y0.stringifyDescriptor(t)}'`);let r=y0.stringifyIdent(t),s=this.peerDependenciesMeta.get(r);return s||this.peerDependenciesMeta.set(r,s={}),s}setRawField(t,r,{after:s=[]}={}){let a=new Set(s.filter(o=>Object.hasOwn(this.raw,o)));if(a.size===0||Object.hasOwn(this.raw,t))this.raw[t]=r;else{let o=this.raw,g=this.raw={},p=!1;for(let f of Object.keys(o))g[f]=o[f],p||(a.delete(f),a.size===0&&(g[t]=r,p=!0))}}exportTo(t,{compatibilityMode:r=!0}={}){if(Object.assign(t,this.raw),this.name!==null?t.name=y0.stringifyIdent(this.name):delete t.name,this.version!==null?t.version=this.version:delete t.version,this.os!==null?t.os=this.os:delete t.os,this.cpu!==null?t.cpu=this.cpu:delete t.cpu,this.type!==null?t.type=this.type:delete t.type,this.packageManager!==null?t.packageManager=this.packageManager:delete t.packageManager,this.private?t.private=!0:delete t.private,this.license!==null?t.license=this.license:delete t.license,this.languageName!==null?t.languageName=this.languageName:delete t.languageName,this.main!==null?t.main=this.main:delete t.main,this.module!==null?t.module=this.module:delete t.module,this.browser!==null){let o=this.browser;typeof o=="string"?t.browser=o:o instanceof Map&&(t.browser=Object.assign({},...Array.from(o.keys()).sort().map(g=>({[g]:o.get(g)}))))}else delete t.browser;this.bin.size===1&&this.name!==null&&this.bin.has(this.name.name)?t.bin=this.bin.get(this.name.name):this.bin.size>0?t.bin=Object.assign({},...Array.from(this.bin.keys()).sort().map(o=>({[o]:this.bin.get(o)}))):delete t.bin,this.workspaceDefinitions.length>0?this.raw.workspaces&&!Array.isArray(this.raw.workspaces)?t.workspaces={...this.raw.workspaces,packages:this.workspaceDefinitions.map(({pattern:o})=>o)}:t.workspaces=this.workspaceDefinitions.map(({pattern:o})=>o):this.raw.workspaces&&!Array.isArray(this.raw.workspaces)&&Object.keys(this.raw.workspaces).length>0?t.workspaces=this.raw.workspaces:delete t.workspaces;let s=[],a=[];for(let o of this.dependencies.values()){let g=this.dependenciesMeta.get(y0.stringifyIdent(o)),p=!1;if(r&&g){let f=g.get(null);f&&f.optional&&(p=!0)}p?a.push(o):s.push(o)}s.length>0?t.dependencies=Object.assign({},...y0.sortDescriptors(s).map(o=>({[y0.stringifyIdent(o)]:o.range}))):delete t.dependencies,a.length>0?t.optionalDependencies=Object.assign({},...y0.sortDescriptors(a).map(o=>({[y0.stringifyIdent(o)]:o.range}))):delete t.optionalDependencies,this.devDependencies.size>0?t.devDependencies=Object.assign({},...y0.sortDescriptors(this.devDependencies.values()).map(o=>({[y0.stringifyIdent(o)]:o.range}))):delete t.devDependencies,this.peerDependencies.size>0?t.peerDependencies=Object.assign({},...y0.sortDescriptors(this.peerDependencies.values()).map(o=>({[y0.stringifyIdent(o)]:o.range}))):delete t.peerDependencies,t.dependenciesMeta={};for(let[o,g]of Hnt.sortMap(this.dependenciesMeta.entries(),([p,f])=>p))for(let[p,f]of Hnt.sortMap(g.entries(),([m,y])=>m!==null?`0${m}`:"1")){let m=p!==null?y0.stringifyDescriptor(y0.makeDescriptor(y0.parseIdent(o),p)):o,y={...f};r&&p===null&&delete y.optional,Object.keys(y).length!==0&&(t.dependenciesMeta[m]=y)}if(Object.keys(t.dependenciesMeta).length===0&&delete t.dependenciesMeta,this.peerDependenciesMeta.size>0?t.peerDependenciesMeta=Object.assign({},...Hnt.sortMap(this.peerDependenciesMeta.entries(),([o,g])=>o).map(([o,g])=>({[o]:g}))):delete t.peerDependenciesMeta,this.resolutions.length>0?t.resolutions=Object.assign({},...this.resolutions.map(({pattern:o,reference:g})=>({[(0,Vcn.stringifyResolution)(o)]:g}))):delete t.resolutions,this.files!==null?t.files=Array.from(this.files):delete t.files,this.preferUnplugged!==null?t.preferUnplugged=this.preferUnplugged:delete t.preferUnplugged,this.scripts!==null&&this.scripts.size>0){t.scripts??={};for(let o of Object.keys(t.scripts))this.scripts.has(o)||delete t.scripts[o];for(let[o,g]of this.scripts.entries())t.scripts[o]=g}else delete t.scripts;return t}};Jnt.Manifest=Gbe;Gbe.fileName="package.json";Gbe.allDependencies=["dependencies","devDependencies","peerDependencies"];Gbe.hardDependencies=["dependencies","devDependencies"];function Wcn(e){let t=e.match(/^[ \t]+/m);return t?t[0]:" "}function Pcn(e){return e.charCodeAt(0)===65279?e.slice(1):e}function hF(e){return e.replace(/\\/g,"/")}function Ynt(e,{yamlCompatibilityMode:t}){return t?Hnt.tryParseOptionalBoolean(e):typeof e>"u"||typeof e=="boolean"?e:null}function Ocn(e,t){let r=t.search(/[^!]/);if(r===-1)return"invalid";let s=r%2===0?"":"!",a=t.slice(r);return`${s}${e}=${a}`}function P5t(e,t){return t.length===1?Ocn(e,t[0]):`(${t.map(r=>Ocn(e,r)).join(" | ")})`}});var Qcn=z((N3c,Mcn)=>{var gOs=dO(),AOs=function(){return gOs.Date.now()};Mcn.exports=AOs});var Hcn=z((R3c,Ycn)=>{var dOs=/\s/;function pOs(e){for(var t=e.length;t--&&dOs.test(e.charAt(t)););return t}Ycn.exports=pOs});var Jcn=z((D3c,Xcn)=>{var fOs=Hcn(),IOs=/^\s+/;function COs(e){return e&&e.slice(0,fOs(e)+1).replace(IOs,"")}Xcn.exports=COs});var Q9e=z((x3c,Ucn)=>{var mOs=tAe(),hOs=hJ(),_Os="[object Symbol]";function yOs(e){return typeof e=="symbol"||hOs(e)&&mOs(e)==_Os}Ucn.exports=yOs});var qcn=z((k3c,zcn)=>{var bOs=Jcn(),Kcn=pW(),EOs=Q9e(),jcn=NaN,BOs=/^[-+]0x[0-9a-f]+$/i,vOs=/^0b[01]+$/i,SOs=/^0o[0-7]+$/i,wOs=parseInt;function TOs(e){if(typeof e=="number")return e;if(EOs(e))return jcn;if(Kcn(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=Kcn(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=bOs(e);var r=vOs.test(e);return r||SOs.test(e)?wOs(e.slice(2),r?2:8):BOs.test(e)?jcn:+e}zcn.exports=TOs});var tln=z((G3c,eln)=>{var NOs=pW(),O5t=Qcn(),$cn=qcn(),ROs="Expected a function",DOs=Math.max,xOs=Math.min;function kOs(e,t,r){var s,a,o,g,p,f,m=0,y=!1,B=!1,v=!0;if(typeof e!="function")throw new TypeError(ROs);t=$cn(t)||0,NOs(r)&&(y=!!r.leading,B="maxWait"in r,o=B?DOs($cn(r.maxWait)||0,t):o,v="trailing"in r?!!r.trailing:v);function G(pe){var he=s,be=a;return s=a=void 0,m=pe,g=e.apply(be,he),g}function T(pe){return m=pe,p=setTimeout(U,t),y?G(pe):g}function O(pe){var he=pe-f,be=pe-m,Te=t-he;return B?xOs(Te,o-be):Te}function X(pe){var he=pe-f,be=pe-m;return f===void 0||he>=t||he<0||B&&be>=o}function U(){var pe=O5t();if(X(pe))return le(pe);p=setTimeout(U,O(pe))}function le(pe){return p=void 0,v&&s?G(pe):(s=a=void 0,g)}function ae(){p!==void 0&&clearTimeout(p),m=0,s=f=a=p=void 0}function ge(){return p===void 0?g:le(O5t())}function fe(){var pe=O5t(),he=X(pe);if(s=arguments,a=this,f=pe,he){if(p===void 0)return T(f);if(B)return clearTimeout(p),p=setTimeout(U,t),G(f)}return p===void 0&&(p=setTimeout(U,t)),g}return fe.cancel=ae,fe.flush=ge,fe}eln.exports=kOs});var nln=z((F3c,rln)=>{var GOs=tln(),FOs=pW(),ZOs="Expected a function";function LOs(e,t,r){var s=!0,a=!0;if(typeof e!="function")throw new TypeError(ZOs);return FOs(r)&&(s="leading"in r?!!r.leading:s,a="trailing"in r?!!r.trailing:a),GOs(e,t,{leading:s,maxWait:t,trailing:a})}rln.exports=LOs});var CO=z(lAe=>{"use strict";Object.defineProperty(lAe,"__esModule",{value:!0});lAe.Report=lAe.ReportError=void 0;lAe.isReportError=iln;var VOs=(Ma(),Ai(Oa)),WOs=VOs.__importDefault(nln()),POs=Dt("stream"),OOs=Dt("string_decoder"),MOs=TL(),QOs=15,M5t=class extends Error{constructor(t,r,s){super(r),this.reportExtra=s,this.reportCode=t}};lAe.ReportError=M5t;function iln(e){return typeof e.reportCode<"u"}var Q5t=class{constructor(){this.cacheHits=new Set,this.cacheMisses=new Set,this.reportedInfos=new Set,this.reportedWarnings=new Set,this.reportedErrors=new Set}getRecommendedLength(){return 180}reportCacheHit(t){this.cacheHits.add(t.locatorHash)}reportCacheMiss(t,r){this.cacheMisses.add(t.locatorHash)}static progressViaCounter(t){let r=0,s,a=new Promise(f=>{s=f}),o=f=>{let m=s;a=new Promise(y=>{s=y}),r=f,m()},g=(f=0)=>{o(r+1)},p=async function*(){for(;r{r=g}),a=(0,WOs.default)(g=>{let p=r;s=new Promise(f=>{r=f}),t=g,p()},1e3/QOs),o=async function*(){for(;;)await s,yield{title:t}}();return{[Symbol.asyncIterator](){return o},hasProgress:!1,hasTitle:!0,setTitle:a}}async startProgressPromise(t,r){let s=this.reportProgress(t);try{return await r(t)}finally{s.stop()}}startProgressSync(t,r){let s=this.reportProgress(t);try{return r(t)}finally{s.stop()}}reportInfoOnce(t,r,s){let a=s&&s.key?s.key:r;this.reportedInfos.has(a)||(this.reportedInfos.add(a),this.reportInfo(t,r),s?.reportExtra?.(this))}reportWarningOnce(t,r,s){let a=s&&s.key?s.key:r;this.reportedWarnings.has(a)||(this.reportedWarnings.add(a),this.reportWarning(t,r),s?.reportExtra?.(this))}reportErrorOnce(t,r,s){let a=s&&s.key?s.key:r;this.reportedErrors.has(a)||(this.reportedErrors.add(a),this.reportError(t,r),s?.reportExtra?.(this))}reportExceptionOnce(t){iln(t)?this.reportErrorOnce(t.reportCode,t.message,{key:t,reportExtra:t.reportExtra}):this.reportErrorOnce(MOs.MessageName.EXCEPTION,t.stack||t.message,{key:t})}createStreamReporter(t=null){let r=new POs.PassThrough,s=new OOs.StringDecoder,a="";return r.on("data",o=>{let g=s.write(o),p;do if(p=g.indexOf(` -`),p!==-1){let f=a+g.substring(0,p);g=g.substring(p+1),a="",t!==null?this.reportInfo(null,`${t} ${f}`):this.reportInfo(null,f)}while(p!==-1);a+=g}),r.on("end",()=>{let o=s.end();o!==""&&(t!==null?this.reportInfo(null,`${t} ${o}`):this.reportInfo(null,o))}),r}};lAe.Report=Q5t});var H5t=z(Unt=>{"use strict";Object.defineProperty(Unt,"__esModule",{value:!0});Unt.MultiFetcher=void 0;var YOs=(Ma(),Ai(Oa)),HOs=TL(),XOs=CO(),JOs=YOs.__importStar(ak()),Y5t=class{constructor(t){this.fetchers=t}supports(t,r){return!!this.tryFetcher(t,r)}getLocalPath(t,r){return this.getFetcher(t,r).getLocalPath(t,r)}async fetch(t,r){return await this.getFetcher(t,r).fetch(t,r)}tryFetcher(t,r){let s=this.fetchers.find(a=>a.supports(t,r));return s||null}getFetcher(t,r){let s=this.fetchers.find(a=>a.supports(t,r));if(!s)throw new XOs.ReportError(HOs.MessageName.FETCHER_NOT_FOUND,`${JOs.prettyLocator(r.project.configuration,t)} isn't supported by any available fetcher`);return s}};Unt.MultiFetcher=Y5t});var J5t=z(Knt=>{"use strict";Object.defineProperty(Knt,"__esModule",{value:!0});Knt.MultiResolver=void 0;var UOs=(Ma(),Ai(Oa)),sln=UOs.__importStar(ak()),X5t=class{constructor(t){this.resolvers=t.filter(r=>r)}supportsDescriptor(t,r){return!!this.tryResolverByDescriptor(t,r)}supportsLocator(t,r){return!!this.tryResolverByLocator(t,r)}shouldPersistResolution(t,r){return this.getResolverByLocator(t,r).shouldPersistResolution(t,r)}bindDescriptor(t,r,s){return this.getResolverByDescriptor(t,s).bindDescriptor(t,r,s)}getResolutionDependencies(t,r){return this.getResolverByDescriptor(t,r).getResolutionDependencies(t,r)}async getCandidates(t,r,s){return await this.getResolverByDescriptor(t,s).getCandidates(t,r,s)}async getSatisfying(t,r,s,a){return this.getResolverByDescriptor(t,a).getSatisfying(t,r,s,a)}async resolve(t,r){return await this.getResolverByLocator(t,r).resolve(t,r)}tryResolverByDescriptor(t,r){let s=this.resolvers.find(a=>a.supportsDescriptor(t,r));return s||null}getResolverByDescriptor(t,r){let s=this.resolvers.find(a=>a.supportsDescriptor(t,r));if(!s)throw new Error(`${sln.prettyDescriptor(r.project.configuration,t)} isn't supported by any available resolver`);return s}tryResolverByLocator(t,r){let s=this.resolvers.find(a=>a.supportsLocator(t,r));return s||null}getResolverByLocator(t,r){let s=this.resolvers.find(a=>a.supportsLocator(t,r));if(!s)throw new Error(`${sln.prettyLocator(r.project.configuration,t)} isn't supported by any available resolver`);return s}};Knt.MultiResolver=X5t});var z5t=z(jnt=>{"use strict";Object.defineProperty(jnt,"__esModule",{value:!0});jnt.VirtualFetcher=void 0;var KOs=(Ma(),Ai(Oa)),U5t=Ro(),K5t=KOs.__importStar(ak()),j5t=class{supports(t){return!!t.reference.startsWith("virtual:")}getLocalPath(t,r){let s=t.reference.indexOf("#");if(s===-1)throw new Error("Invalid virtual package reference");let a=t.reference.slice(s+1),o=K5t.makeLocator(t,a);return r.fetcher.getLocalPath(o,r)}async fetch(t,r){let s=t.reference.indexOf("#");if(s===-1)throw new Error("Invalid virtual package reference");let a=t.reference.slice(s+1),o=K5t.makeLocator(t,a),g=await r.fetcher.fetch(o,r);return await this.ensureVirtualLink(t,g,r)}getLocatorFilename(t){return K5t.slugifyLocator(t)}async ensureVirtualLink(t,r,s){let a=r.packageFs.getRealPath(),o=s.project.configuration.get("virtualFolder"),g=this.getLocatorFilename(t),p=U5t.VirtualFS.makeVirtualPath(o,g,a),f=new U5t.AliasFS(p,{baseFs:r.packageFs,pathUtils:U5t.ppath});return{...r,packageFs:f}}};jnt.VirtualFetcher=j5t});var oln=z(qnt=>{"use strict";Object.defineProperty(qnt,"__esModule",{value:!0});qnt.VirtualResolver=void 0;var znt=class e{static isVirtualDescriptor(t){return!!t.range.startsWith(e.protocol)}static isVirtualLocator(t){return!!t.reference.startsWith(e.protocol)}supportsDescriptor(t,r){return e.isVirtualDescriptor(t)}supportsLocator(t,r){return e.isVirtualLocator(t)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,s){throw new Error('Assertion failed: calling "bindDescriptor" on a virtual descriptor is unsupported')}getResolutionDependencies(t,r){throw new Error('Assertion failed: calling "getResolutionDependencies" on a virtual descriptor is unsupported')}async getCandidates(t,r,s){throw new Error('Assertion failed: calling "getCandidates" on a virtual descriptor is unsupported')}async getSatisfying(t,r,s,a){throw new Error('Assertion failed: calling "getSatisfying" on a virtual descriptor is unsupported')}async resolve(t,r){throw new Error('Assertion failed: calling "resolve" on a virtual locator is unsupported')}};qnt.VirtualResolver=znt;znt.protocol="virtual:"});var $5t=z($nt=>{"use strict";Object.defineProperty($nt,"__esModule",{value:!0});$nt.WorkspaceFetcher=void 0;var aln=Ro(),cln=cAe(),q5t=class{supports(t){return!!t.reference.startsWith(cln.WorkspaceResolver.protocol)}getLocalPath(t,r){return this.getWorkspace(t,r).cwd}async fetch(t,r){let s=this.getWorkspace(t,r).cwd;return{packageFs:new aln.CwdFS(s),prefixPath:aln.PortablePath.dot,localPath:s}}getWorkspace(t,r){return r.project.getWorkspaceByCwd(t.reference.slice(cln.WorkspaceResolver.protocol.length))}};$nt.WorkspaceFetcher=q5t});var gln=z(bJ=>{"use strict";Object.defineProperty(bJ,"__esModule",{value:!0});bJ.RESOLVED_RC_FILE=void 0;bJ.resolveRcFiles=$Os;bJ.getValue=eMs;bJ.getValueByTree=rXt;bJ.getSource=tMs;var jOs=(e,t,r)=>{let s=[...e];return s.reverse(),s.findIndex(t,r)};function Y9e(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var mO;(function(e){e[e.Object=0]="Object",e[e.Array=1]="Array",e[e.Literal=2]="Literal",e[e.Undefined=3]="Undefined"})(mO||(mO={}));function lln(e){return typeof e>"u"?mO.Undefined:Y9e(e)?mO.Object:Array.isArray(e)?mO.Array:mO.Literal}function nXt(e,t){return Object.hasOwn(e,t)}function zOs(e){return Y9e(e)&&nXt(e,"onConflict")&&typeof e.onConflict=="string"}function qOs(e){if(typeof e>"u")return{onConflict:"default",value:e};if(!zOs(e))return{onConflict:"default",value:e};if(nXt(e,"value"))return e;let{onConflict:t,...r}=e;return{onConflict:t,value:r}}function uln(e,t){let r=Y9e(e)&&nXt(e,t)?e[t]:void 0;return qOs(r)}bJ.RESOLVED_RC_FILE=Symbol();function Zbe(e,t){return[e,t,bJ.RESOLVED_RC_FILE]}function iXt(e){return Array.isArray(e)?e[2]===bJ.RESOLVED_RC_FILE:!1}function eXt(e,t){if(Y9e(e)){let r={};for(let s of Object.keys(e))r[s]=eXt(e[s],t);return Zbe(t,r)}return Array.isArray(e)?Zbe(t,e.map(r=>eXt(r,t))):Zbe(t,e)}function tXt(e,t,r,s,a){let o,g=[],p=a,f=0;for(let y=a-1;y>=s;--y){let[B,v]=e[y],{onConflict:G,value:T}=uln(v,r),O=lln(T);if(O!==mO.Undefined){if(o??=O,O!==o||G==="hardReset"){f=p;break}if(O===mO.Literal)return Zbe(B,T);if(g.unshift([B,T]),G==="reset"){f=y;break}G==="extend"&&y===s&&(s=0),p=y}}if(typeof o>"u")return null;let m=g.map(([y])=>y).join(", ");switch(o){case mO.Array:return Zbe(m,new Array().concat(...g.map(([y,B])=>B.map(v=>eXt(v,y)))));case mO.Object:{let y=Object.assign({},...g.map(([,O])=>O)),B=Object.keys(y),v={},G=e.map(([O,X])=>[O,uln(X,r).value]),T=jOs(G,([O,X])=>{let U=lln(X);return U!==mO.Object&&U!==mO.Undefined});if(T!==-1){let O=G.slice(T+1);for(let X of B)v[X]=tXt(O,t,X,0,O.length)}else for(let O of B)v[O]=tXt(G,t,O,f,G.length);return Zbe(m,v)}default:throw new Error("Assertion failed: Non-extendable value type")}}function $Os(e){return tXt(e.map(([t,r])=>[t,{".":r}]),[],".",0,e.length)}function eMs(e){return iXt(e)?e[1]:e}function rXt(e){let t=iXt(e)?e[1]:e;if(Array.isArray(t))return t.map(r=>rXt(r));if(Y9e(t)){let r={};for(let[s,a]of Object.entries(t))r[s]=rXt(a);return r}return t}function tMs(e){return iXt(e)?e[0]:null}});var eit=z(H9e=>{"use strict";Object.defineProperty(H9e,"__esModule",{value:!0});H9e.getDefaultGlobalFolder=rMs;H9e.getHomeFolder=dln;H9e.isFolderInside=nMs;var nj=Ro(),Aln=Dt("os");function rMs(){if(process.platform==="win32"){let e=nj.npath.toPortablePath(process.env.LOCALAPPDATA||nj.npath.join((0,Aln.homedir)(),"AppData","Local"));return nj.ppath.resolve(e,"Yarn/Berry")}if(process.env.XDG_DATA_HOME){let e=nj.npath.toPortablePath(process.env.XDG_DATA_HOME);return nj.ppath.resolve(e,"yarn/berry")}return nj.ppath.resolve(dln(),".yarn/berry")}function dln(){return nj.npath.toPortablePath((0,Aln.homedir)()||"/usr/local/share")}function nMs(e,t){let r=nj.ppath.relative(t,e);return r&&!r.startsWith("..")&&!nj.ppath.isAbsolute(r)}});var Cln=z(Lbe=>{"use strict";var Y3c=Dt("net"),iMs=Dt("tls"),sXt=Dt("http"),pln=Dt("https"),sMs=Dt("events"),H3c=Dt("assert"),oMs=Dt("util");Lbe.httpOverHttp=aMs;Lbe.httpsOverHttp=cMs;Lbe.httpOverHttps=lMs;Lbe.httpsOverHttps=uMs;function aMs(e){var t=new ij(e);return t.request=sXt.request,t}function cMs(e){var t=new ij(e);return t.request=sXt.request,t.createSocket=fln,t.defaultPort=443,t}function lMs(e){var t=new ij(e);return t.request=pln.request,t}function uMs(e){var t=new ij(e);return t.request=pln.request,t.createSocket=fln,t.defaultPort=443,t}function ij(e){var t=this;t.options=e||{},t.proxyOptions=t.options.proxy||{},t.maxSockets=t.options.maxSockets||sXt.Agent.defaultMaxSockets,t.requests=[],t.sockets=[],t.on("free",function(s,a,o,g){for(var p=Iln(a,o,g),f=0,m=t.requests.length;f=this.maxSockets){o.requests.push(g);return}o.createSocket(g,function(p){p.on("free",f),p.on("close",m),p.on("agentRemove",m),t.onSocket(p);function f(){o.emit("free",p,g)}function m(y){o.removeSocket(p),p.removeListener("free",f),p.removeListener("close",m),p.removeListener("agentRemove",m)}})};ij.prototype.createSocket=function(t,r){var s=this,a={};s.sockets.push(a);var o=oXt({},s.proxyOptions,{method:"CONNECT",path:t.host+":"+t.port,agent:!1,headers:{host:t.host+":"+t.port}});t.localAddress&&(o.localAddress=t.localAddress),o.proxyAuth&&(o.headers=o.headers||{},o.headers["Proxy-Authorization"]="Basic "+new Buffer(o.proxyAuth).toString("base64")),Cne("making CONNECT request");var g=s.request(o);g.useChunkedEncodingByDefault=!1,g.once("response",p),g.once("upgrade",f),g.once("connect",m),g.once("error",y),g.end();function p(B){B.upgrade=!0}function f(B,v,G){process.nextTick(function(){m(B,v,G)})}function m(B,v,G){if(g.removeAllListeners(),v.removeAllListeners(),B.statusCode!==200){Cne("tunneling socket could not be established, statusCode=%d",B.statusCode),v.destroy();var T=new Error("tunneling socket could not be established, statusCode="+B.statusCode);T.code="ECONNRESET",t.request.emit("error",T),s.removeSocket(a);return}if(G.length>0){Cne("got illegal response body from proxy"),v.destroy();var T=new Error("got illegal response body from proxy");T.code="ECONNRESET",t.request.emit("error",T),s.removeSocket(a);return}return Cne("tunneling connection has established"),s.sockets[s.sockets.indexOf(a)]=v,r(v)}function y(B){g.removeAllListeners(),Cne(`tunneling socket could not be established, cause=%s -`,B.message,B.stack);var v=new Error("tunneling socket could not be established, cause="+B.message);v.code="ECONNRESET",t.request.emit("error",v),s.removeSocket(a)}};ij.prototype.removeSocket=function(t){var r=this.sockets.indexOf(t);if(r!==-1){this.sockets.splice(r,1);var s=this.requests.shift();s&&this.createSocket(s,function(a){s.request.onSocket(a)})}};function fln(e,t){var r=this;ij.prototype.createSocket.call(r,e,function(s){var a=e.request.getHeader("host"),o=oXt({},r.options,{socket:s,servername:a?a.replace(/:.*$/,""):e.host}),g=iMs.connect(0,o);r.sockets[r.sockets.indexOf(s)]=g,t(g)})}function Iln(e,t,r){return typeof e=="string"?{host:e,port:t,localAddress:r}:e}function oXt(e){for(var t=1,r=arguments.length;t{mln.exports=Cln()});var oj=z((sj,tit)=>{"use strict";Object.defineProperty(sj,"__esModule",{value:!0});var hln=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"];function gMs(e){return hln.includes(e)}var AMs=["Function","Generator","AsyncGenerator","GeneratorFunction","AsyncGeneratorFunction","AsyncFunction","Observable","Array","Buffer","Blob","Object","RegExp","Date","Error","Map","Set","WeakMap","WeakSet","ArrayBuffer","SharedArrayBuffer","DataView","Promise","URL","FormData","URLSearchParams","HTMLElement",...hln];function dMs(e){return AMs.includes(e)}var pMs=["null","undefined","string","number","bigint","boolean","symbol"];function fMs(e){return pMs.includes(e)}function Vbe(e){return t=>typeof t===e}var{toString:_ln}=Object.prototype,X9e=e=>{let t=_ln.call(e).slice(8,-1);if(/HTML\w+Element/.test(t)&&yi.domElement(e))return"HTMLElement";if(dMs(t))return t},mb=e=>t=>X9e(t)===e;function yi(e){if(e===null)return"null";switch(typeof e){case"undefined":return"undefined";case"string":return"string";case"number":return"number";case"boolean":return"boolean";case"function":return"Function";case"bigint":return"bigint";case"symbol":return"symbol";default:}if(yi.observable(e))return"Observable";if(yi.array(e))return"Array";if(yi.buffer(e))return"Buffer";let t=X9e(e);if(t)return t;if(e instanceof String||e instanceof Boolean||e instanceof Number)throw new TypeError("Please don't use object wrappers for primitive types");return"Object"}yi.undefined=Vbe("undefined");yi.string=Vbe("string");var IMs=Vbe("number");yi.number=e=>IMs(e)&&!yi.nan(e);yi.bigint=Vbe("bigint");yi.function_=Vbe("function");yi.null_=e=>e===null;yi.class_=e=>yi.function_(e)&&e.toString().startsWith("class ");yi.boolean=e=>e===!0||e===!1;yi.symbol=Vbe("symbol");yi.numericString=e=>yi.string(e)&&!yi.emptyStringOrWhitespace(e)&&!Number.isNaN(Number(e));yi.array=(e,t)=>Array.isArray(e)?yi.function_(t)?e.every(t):!0:!1;yi.buffer=e=>{var t,r,s,a;return(a=(s=(r=(t=e)===null||t===void 0?void 0:t.constructor)===null||r===void 0?void 0:r.isBuffer)===null||s===void 0?void 0:s.call(r,e))!==null&&a!==void 0?a:!1};yi.blob=e=>mb("Blob")(e);yi.nullOrUndefined=e=>yi.null_(e)||yi.undefined(e);yi.object=e=>!yi.null_(e)&&(typeof e=="object"||yi.function_(e));yi.iterable=e=>{var t;return yi.function_((t=e)===null||t===void 0?void 0:t[Symbol.iterator])};yi.asyncIterable=e=>{var t;return yi.function_((t=e)===null||t===void 0?void 0:t[Symbol.asyncIterator])};yi.generator=e=>{var t,r;return yi.iterable(e)&&yi.function_((t=e)===null||t===void 0?void 0:t.next)&&yi.function_((r=e)===null||r===void 0?void 0:r.throw)};yi.asyncGenerator=e=>yi.asyncIterable(e)&&yi.function_(e.next)&&yi.function_(e.throw);yi.nativePromise=e=>mb("Promise")(e);var CMs=e=>{var t,r;return yi.function_((t=e)===null||t===void 0?void 0:t.then)&&yi.function_((r=e)===null||r===void 0?void 0:r.catch)};yi.promise=e=>yi.nativePromise(e)||CMs(e);yi.generatorFunction=mb("GeneratorFunction");yi.asyncGeneratorFunction=e=>X9e(e)==="AsyncGeneratorFunction";yi.asyncFunction=e=>X9e(e)==="AsyncFunction";yi.boundFunction=e=>yi.function_(e)&&!e.hasOwnProperty("prototype");yi.regExp=mb("RegExp");yi.date=mb("Date");yi.error=mb("Error");yi.map=e=>mb("Map")(e);yi.set=e=>mb("Set")(e);yi.weakMap=e=>mb("WeakMap")(e);yi.weakSet=e=>mb("WeakSet")(e);yi.int8Array=mb("Int8Array");yi.uint8Array=mb("Uint8Array");yi.uint8ClampedArray=mb("Uint8ClampedArray");yi.int16Array=mb("Int16Array");yi.uint16Array=mb("Uint16Array");yi.int32Array=mb("Int32Array");yi.uint32Array=mb("Uint32Array");yi.float32Array=mb("Float32Array");yi.float64Array=mb("Float64Array");yi.bigInt64Array=mb("BigInt64Array");yi.bigUint64Array=mb("BigUint64Array");yi.arrayBuffer=mb("ArrayBuffer");yi.sharedArrayBuffer=mb("SharedArrayBuffer");yi.dataView=mb("DataView");yi.enumCase=(e,t)=>Object.values(t).includes(e);yi.directInstanceOf=(e,t)=>Object.getPrototypeOf(e)===t.prototype;yi.urlInstance=e=>mb("URL")(e);yi.urlString=e=>{if(!yi.string(e))return!1;try{return new URL(e),!0}catch{return!1}};yi.truthy=e=>!!e;yi.falsy=e=>!e;yi.nan=e=>Number.isNaN(e);yi.primitive=e=>yi.null_(e)||fMs(typeof e);yi.integer=e=>Number.isInteger(e);yi.safeInteger=e=>Number.isSafeInteger(e);yi.plainObject=e=>{if(_ln.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.getPrototypeOf({})};yi.typedArray=e=>gMs(X9e(e));var mMs=e=>yi.safeInteger(e)&&e>=0;yi.arrayLike=e=>!yi.nullOrUndefined(e)&&!yi.function_(e)&&mMs(e.length);yi.inRange=(e,t)=>{if(yi.number(t))return e>=Math.min(0,t)&&e<=Math.max(t,0);if(yi.array(t)&&t.length===2)return e>=Math.min(...t)&&e<=Math.max(...t);throw new TypeError(`Invalid range: ${JSON.stringify(t)}`)};var hMs=1,_Ms=["innerHTML","ownerDocument","style","attributes","nodeValue"];yi.domElement=e=>yi.object(e)&&e.nodeType===hMs&&yi.string(e.nodeName)&&!yi.plainObject(e)&&_Ms.every(t=>t in e);yi.observable=e=>{var t,r,s,a;return e?e===((r=(t=e)[Symbol.observable])===null||r===void 0?void 0:r.call(t))||e===((a=(s=e)["@@observable"])===null||a===void 0?void 0:a.call(s)):!1};yi.nodeStream=e=>yi.object(e)&&yi.function_(e.pipe)&&!yi.observable(e);yi.infinite=e=>e===1/0||e===-1/0;var yln=e=>t=>yi.integer(t)&&Math.abs(t%2)===e;yi.evenInteger=yln(0);yi.oddInteger=yln(1);yi.emptyArray=e=>yi.array(e)&&e.length===0;yi.nonEmptyArray=e=>yi.array(e)&&e.length>0;yi.emptyString=e=>yi.string(e)&&e.length===0;var yMs=e=>yi.string(e)&&!/\S/.test(e);yi.emptyStringOrWhitespace=e=>yi.emptyString(e)||yMs(e);yi.nonEmptyString=e=>yi.string(e)&&e.length>0;yi.nonEmptyStringAndNotWhitespace=e=>yi.string(e)&&!yi.emptyStringOrWhitespace(e);yi.emptyObject=e=>yi.object(e)&&!yi.map(e)&&!yi.set(e)&&Object.keys(e).length===0;yi.nonEmptyObject=e=>yi.object(e)&&!yi.map(e)&&!yi.set(e)&&Object.keys(e).length>0;yi.emptySet=e=>yi.set(e)&&e.size===0;yi.nonEmptySet=e=>yi.set(e)&&e.size>0;yi.emptyMap=e=>yi.map(e)&&e.size===0;yi.nonEmptyMap=e=>yi.map(e)&&e.size>0;yi.propertyKey=e=>yi.any([yi.string,yi.number,yi.symbol],e);yi.formData=e=>mb("FormData")(e);yi.urlSearchParams=e=>mb("URLSearchParams")(e);var bln=(e,t,r)=>{if(!yi.function_(t))throw new TypeError(`Invalid predicate: ${JSON.stringify(t)}`);if(r.length===0)throw new TypeError("Invalid number of values");return e.call(r,t)};yi.any=(e,...t)=>(yi.array(e)?e:[e]).some(s=>bln(Array.prototype.some,s,t));yi.all=(e,...t)=>bln(Array.prototype.every,e,t);var _u=(e,t,r,s={})=>{if(!e){let{multipleValues:a}=s,o=a?`received values of types ${[...new Set(r.map(g=>`\`${yi(g)}\``))].join(", ")}`:`received value of type \`${yi(r)}\``;throw new TypeError(`Expected value which is \`${t}\`, ${o}.`)}};sj.assert={undefined:e=>_u(yi.undefined(e),"undefined",e),string:e=>_u(yi.string(e),"string",e),number:e=>_u(yi.number(e),"number",e),bigint:e=>_u(yi.bigint(e),"bigint",e),function_:e=>_u(yi.function_(e),"Function",e),null_:e=>_u(yi.null_(e),"null",e),class_:e=>_u(yi.class_(e),"Class",e),boolean:e=>_u(yi.boolean(e),"boolean",e),symbol:e=>_u(yi.symbol(e),"symbol",e),numericString:e=>_u(yi.numericString(e),"string with a number",e),array:(e,t)=>{_u(yi.array(e),"Array",e),t&&e.forEach(t)},buffer:e=>_u(yi.buffer(e),"Buffer",e),blob:e=>_u(yi.blob(e),"Blob",e),nullOrUndefined:e=>_u(yi.nullOrUndefined(e),"null or undefined",e),object:e=>_u(yi.object(e),"Object",e),iterable:e=>_u(yi.iterable(e),"Iterable",e),asyncIterable:e=>_u(yi.asyncIterable(e),"AsyncIterable",e),generator:e=>_u(yi.generator(e),"Generator",e),asyncGenerator:e=>_u(yi.asyncGenerator(e),"AsyncGenerator",e),nativePromise:e=>_u(yi.nativePromise(e),"native Promise",e),promise:e=>_u(yi.promise(e),"Promise",e),generatorFunction:e=>_u(yi.generatorFunction(e),"GeneratorFunction",e),asyncGeneratorFunction:e=>_u(yi.asyncGeneratorFunction(e),"AsyncGeneratorFunction",e),asyncFunction:e=>_u(yi.asyncFunction(e),"AsyncFunction",e),boundFunction:e=>_u(yi.boundFunction(e),"Function",e),regExp:e=>_u(yi.regExp(e),"RegExp",e),date:e=>_u(yi.date(e),"Date",e),error:e=>_u(yi.error(e),"Error",e),map:e=>_u(yi.map(e),"Map",e),set:e=>_u(yi.set(e),"Set",e),weakMap:e=>_u(yi.weakMap(e),"WeakMap",e),weakSet:e=>_u(yi.weakSet(e),"WeakSet",e),int8Array:e=>_u(yi.int8Array(e),"Int8Array",e),uint8Array:e=>_u(yi.uint8Array(e),"Uint8Array",e),uint8ClampedArray:e=>_u(yi.uint8ClampedArray(e),"Uint8ClampedArray",e),int16Array:e=>_u(yi.int16Array(e),"Int16Array",e),uint16Array:e=>_u(yi.uint16Array(e),"Uint16Array",e),int32Array:e=>_u(yi.int32Array(e),"Int32Array",e),uint32Array:e=>_u(yi.uint32Array(e),"Uint32Array",e),float32Array:e=>_u(yi.float32Array(e),"Float32Array",e),float64Array:e=>_u(yi.float64Array(e),"Float64Array",e),bigInt64Array:e=>_u(yi.bigInt64Array(e),"BigInt64Array",e),bigUint64Array:e=>_u(yi.bigUint64Array(e),"BigUint64Array",e),arrayBuffer:e=>_u(yi.arrayBuffer(e),"ArrayBuffer",e),sharedArrayBuffer:e=>_u(yi.sharedArrayBuffer(e),"SharedArrayBuffer",e),dataView:e=>_u(yi.dataView(e),"DataView",e),enumCase:(e,t)=>_u(yi.enumCase(e,t),"EnumCase",e),urlInstance:e=>_u(yi.urlInstance(e),"URL",e),urlString:e=>_u(yi.urlString(e),"string with a URL",e),truthy:e=>_u(yi.truthy(e),"truthy",e),falsy:e=>_u(yi.falsy(e),"falsy",e),nan:e=>_u(yi.nan(e),"NaN",e),primitive:e=>_u(yi.primitive(e),"primitive",e),integer:e=>_u(yi.integer(e),"integer",e),safeInteger:e=>_u(yi.safeInteger(e),"integer",e),plainObject:e=>_u(yi.plainObject(e),"plain object",e),typedArray:e=>_u(yi.typedArray(e),"TypedArray",e),arrayLike:e=>_u(yi.arrayLike(e),"array-like",e),domElement:e=>_u(yi.domElement(e),"HTMLElement",e),observable:e=>_u(yi.observable(e),"Observable",e),nodeStream:e=>_u(yi.nodeStream(e),"Node.js Stream",e),infinite:e=>_u(yi.infinite(e),"infinite number",e),emptyArray:e=>_u(yi.emptyArray(e),"empty array",e),nonEmptyArray:e=>_u(yi.nonEmptyArray(e),"non-empty array",e),emptyString:e=>_u(yi.emptyString(e),"empty string",e),emptyStringOrWhitespace:e=>_u(yi.emptyStringOrWhitespace(e),"empty string or whitespace",e),nonEmptyString:e=>_u(yi.nonEmptyString(e),"non-empty string",e),nonEmptyStringAndNotWhitespace:e=>_u(yi.nonEmptyStringAndNotWhitespace(e),"non-empty string and not whitespace",e),emptyObject:e=>_u(yi.emptyObject(e),"empty object",e),nonEmptyObject:e=>_u(yi.nonEmptyObject(e),"non-empty object",e),emptySet:e=>_u(yi.emptySet(e),"empty set",e),nonEmptySet:e=>_u(yi.nonEmptySet(e),"non-empty set",e),emptyMap:e=>_u(yi.emptyMap(e),"empty map",e),nonEmptyMap:e=>_u(yi.nonEmptyMap(e),"non-empty map",e),propertyKey:e=>_u(yi.propertyKey(e),"PropertyKey",e),formData:e=>_u(yi.formData(e),"FormData",e),urlSearchParams:e=>_u(yi.urlSearchParams(e),"URLSearchParams",e),evenInteger:e=>_u(yi.evenInteger(e),"even integer",e),oddInteger:e=>_u(yi.oddInteger(e),"odd integer",e),directInstanceOf:(e,t)=>_u(yi.directInstanceOf(e,t),"T",e),inRange:(e,t)=>_u(yi.inRange(e,t),"in range",e),any:(e,...t)=>_u(yi.any(e,...t),"predicate returns truthy for any value",t,{multipleValues:!0}),all:(e,...t)=>_u(yi.all(e,...t),"predicate returns truthy for all values",t,{multipleValues:!0})};Object.defineProperties(yi,{class:{value:yi.class_},function:{value:yi.function_},null:{value:yi.null_}});Object.defineProperties(sj.assert,{class:{value:sj.assert.class_},function:{value:sj.assert.function_},null:{value:sj.assert.null_}});sj.default=yi;tit.exports=yi;tit.exports.default=yi;tit.exports.assert=sj.assert});var Eln=z((U3c,cXt)=>{"use strict";var rit=class extends Error{constructor(t){super(t||"Promise was canceled"),this.name="CancelError"}get isCanceled(){return!0}},nit=class e{static fn(t){return(...r)=>new e((s,a,o)=>{r.push(o),t(...r).then(s,a)})}constructor(t){this._cancelHandlers=[],this._isPending=!0,this._isCanceled=!1,this._rejectOnCancel=!0,this._promise=new Promise((r,s)=>{this._reject=s;let a=p=>{(!this._isCanceled||!g.shouldReject)&&(this._isPending=!1,r(p))},o=p=>{this._isPending=!1,s(p)},g=p=>{if(!this._isPending)throw new Error("The `onCancel` handler was attached after the promise settled.");this._cancelHandlers.push(p)};return Object.defineProperties(g,{shouldReject:{get:()=>this._rejectOnCancel,set:p=>{this._rejectOnCancel=p}}}),t(a,o,g)})}then(t,r){return this._promise.then(t,r)}catch(t){return this._promise.catch(t)}finally(t){return this._promise.finally(t)}cancel(t){if(!(!this._isPending||this._isCanceled)){if(this._isCanceled=!0,this._cancelHandlers.length>0)try{for(let r of this._cancelHandlers)r()}catch(r){this._reject(r);return}this._rejectOnCancel&&this._reject(new rit(t))}}get isCanceled(){return this._isCanceled}};Object.setPrototypeOf(nit.prototype,Promise.prototype);cXt.exports=nit;cXt.exports.CancelError=rit});var Bln=z((uXt,gXt)=>{"use strict";Object.defineProperty(uXt,"__esModule",{value:!0});function bMs(e){return e.encrypted}var lXt=(e,t)=>{let r;typeof t=="function"?r={connect:t}:r=t;let s=typeof r.connect=="function",a=typeof r.secureConnect=="function",o=typeof r.close=="function",g=()=>{s&&r.connect(),bMs(e)&&a&&(e.authorized?r.secureConnect():e.authorizationError||e.once("secureConnect",r.secureConnect)),o&&e.once("close",r.close)};e.writable&&!e.connecting?g():e.connecting?e.once("connect",g):e.destroyed&&o&&r.close(e._hadError)};uXt.default=lXt;gXt.exports=lXt;gXt.exports.default=lXt});var vln=z((dXt,pXt)=>{"use strict";Object.defineProperty(dXt,"__esModule",{value:!0});var EMs=Bln(),BMs=Dt("util"),vMs=Number(process.versions.node.split(".")[0]),AXt=e=>{if(e.timings)return e.timings;let t={start:Date.now(),socket:void 0,lookup:void 0,connect:void 0,secureConnect:void 0,upload:void 0,response:void 0,end:void 0,error:void 0,abort:void 0,phases:{wait:void 0,dns:void 0,tcp:void 0,tls:void 0,request:void 0,firstByte:void 0,download:void 0,total:void 0}};e.timings=t;let r=p=>{let f=p.emit.bind(p);p.emit=(m,...y)=>(m==="error"&&(t.error=Date.now(),t.phases.total=t.error-t.start,p.emit=f),f(m,...y))};r(e);let s=()=>{t.abort=Date.now(),(!t.response||vMs>=13)&&(t.phases.total=Date.now()-t.start)};e.prependOnceListener("abort",s);let a=p=>{if(t.socket=Date.now(),t.phases.wait=t.socket-t.start,BMs.types.isProxy(p))return;let f=()=>{t.lookup=Date.now(),t.phases.dns=t.lookup-t.socket};p.prependOnceListener("lookup",f),EMs.default(p,{connect:()=>{t.connect=Date.now(),t.lookup===void 0&&(p.removeListener("lookup",f),t.lookup=t.connect,t.phases.dns=t.lookup-t.socket),t.phases.tcp=t.connect-t.lookup},secureConnect:()=>{t.secureConnect=Date.now(),t.phases.tls=t.secureConnect-t.connect}})};e.socket?a(e.socket):e.prependOnceListener("socket",a);let o=()=>{var p;t.upload=Date.now(),t.phases.request=t.upload-((p=t.secureConnect)!==null&&p!==void 0?p:t.connect)};return(typeof e.writableFinished=="boolean"?e.writableFinished:e.finished&&e.outputSize===0&&(!e.socket||e.socket.writableLength===0))?o():e.prependOnceListener("finish",o),e.prependOnceListener("response",p=>{t.response=Date.now(),t.phases.firstByte=t.response-t.upload,p.timings=t,r(p),p.prependOnceListener("end",()=>{t.end=Date.now(),t.phases.download=t.end-t.response,t.phases.total=t.end-t.start}),p.prependOnceListener("aborted",s)}),t};dXt.default=AXt;pXt.exports=AXt;pXt.exports.default=AXt});var xln=z((K3c,CXt)=>{"use strict";var{V4MAPPED:SMs,ADDRCONFIG:wMs,ALL:Dln,promises:{Resolver:Sln},lookup:TMs}=Dt("dns"),{promisify:fXt}=Dt("util"),NMs=Dt("os"),Wbe=Symbol("cacheableLookupCreateConnection"),IXt=Symbol("cacheableLookupInstance"),wln=Symbol("expires"),RMs=typeof Dln=="number",Tln=e=>{if(!(e&&typeof e.createConnection=="function"))throw new Error("Expected an Agent instance as the first argument")},DMs=e=>{for(let t of e)t.family!==6&&(t.address=`::ffff:${t.address}`,t.family=6)},Nln=()=>{let e=!1,t=!1;for(let r of Object.values(NMs.networkInterfaces()))for(let s of r)if(!s.internal&&(s.family==="IPv6"?t=!0:e=!0,e&&t))return{has4:e,has6:t};return{has4:e,has6:t}},xMs=e=>Symbol.iterator in e,Rln={ttl:!0},kMs={all:!0},iit=class{constructor({cache:t=new Map,maxTtl:r=1/0,fallbackDuration:s=3600,errorTtl:a=.15,resolver:o=new Sln,lookup:g=TMs}={}){if(this.maxTtl=r,this.errorTtl=a,this._cache=t,this._resolver=o,this._dnsLookup=fXt(g),this._resolver instanceof Sln?(this._resolve4=this._resolver.resolve4.bind(this._resolver),this._resolve6=this._resolver.resolve6.bind(this._resolver)):(this._resolve4=fXt(this._resolver.resolve4.bind(this._resolver)),this._resolve6=fXt(this._resolver.resolve6.bind(this._resolver))),this._iface=Nln(),this._pending={},this._nextRemovalTime=!1,this._hostnamesToFallback=new Set,s<1)this._fallback=!1;else{this._fallback=!0;let p=setInterval(()=>{this._hostnamesToFallback.clear()},s*1e3);p.unref&&p.unref()}this.lookup=this.lookup.bind(this),this.lookupAsync=this.lookupAsync.bind(this)}set servers(t){this.clear(),this._resolver.setServers(t)}get servers(){return this._resolver.getServers()}lookup(t,r,s){if(typeof r=="function"?(s=r,r={}):typeof r=="number"&&(r={family:r}),!s)throw new Error("Callback must be a function.");this.lookupAsync(t,r).then(a=>{r.all?s(null,a):s(null,a.address,a.family,a.expires,a.ttl)},s)}async lookupAsync(t,r={}){typeof r=="number"&&(r={family:r});let s=await this.query(t);if(r.family===6){let a=s.filter(o=>o.family===6);r.hints&SMs&&(RMs&&r.hints&Dln||a.length===0)?DMs(s):s=a}else r.family===4&&(s=s.filter(a=>a.family===4));if(r.hints&wMs){let{_iface:a}=this;s=s.filter(o=>o.family===6?a.has6:a.has4)}if(s.length===0){let a=new Error(`cacheableLookup ENOTFOUND ${t}`);throw a.code="ENOTFOUND",a.hostname=t,a}return r.all?s:s[0]}async query(t){let r=await this._cache.get(t);if(!r){let s=this._pending[t];if(s)r=await s;else{let a=this.queryAndCache(t);this._pending[t]=a;try{r=await a}finally{delete this._pending[t]}}}return r=r.map(s=>({...s})),r}async _resolve(t){let r=async m=>{try{return await m}catch(y){if(y.code==="ENODATA"||y.code==="ENOTFOUND")return[];throw y}},[s,a]=await Promise.all([this._resolve4(t,Rln),this._resolve6(t,Rln)].map(m=>r(m))),o=0,g=0,p=0,f=Date.now();for(let m of s)m.family=4,m.expires=f+m.ttl*1e3,o=Math.max(o,m.ttl);for(let m of a)m.family=6,m.expires=f+m.ttl*1e3,g=Math.max(g,m.ttl);return s.length>0?a.length>0?p=Math.min(o,g):p=o:p=g,{entries:[...s,...a],cacheTtl:p}}async _lookup(t){try{return{entries:await this._dnsLookup(t,{all:!0}),cacheTtl:0}}catch{return{entries:[],cacheTtl:0}}}async _set(t,r,s){if(this.maxTtl>0&&s>0){s=Math.min(s,this.maxTtl)*1e3,r[wln]=Date.now()+s;try{await this._cache.set(t,r,s)}catch(a){this.lookupAsync=async()=>{let o=new Error("Cache Error. Please recreate the CacheableLookup instance.");throw o.cause=a,o}}xMs(this._cache)&&this._tick(s)}}async queryAndCache(t){if(this._hostnamesToFallback.has(t))return this._dnsLookup(t,kMs);let r=await this._resolve(t);r.entries.length===0&&this._fallback&&(r=await this._lookup(t),r.entries.length!==0&&this._hostnamesToFallback.add(t));let s=r.entries.length===0?this.errorTtl:r.cacheTtl;return await this._set(t,r.entries,s),r.entries}_tick(t){let r=this._nextRemovalTime;(!r||t{this._nextRemovalTime=!1;let s=1/0,a=Date.now();for(let[o,g]of this._cache){let p=g[wln];a>=p?this._cache.delete(o):p("lookup"in r||(r.lookup=this.lookup),t[Wbe](r,s))}uninstall(t){if(Tln(t),t[Wbe]){if(t[IXt]!==this)throw new Error("The agent is not owned by this CacheableLookup instance");t.createConnection=t[Wbe],delete t[Wbe],delete t[IXt]}}updateInterfaceInfo(){let{_iface:t}=this;this._iface=Nln(),(t.has4&&!this._iface.has4||t.has6&&!this._iface.has6)&&this._cache.clear()}clear(t){if(t){this._cache.delete(t);return}this._cache.clear()}};CXt.exports=iit;CXt.exports.default=iit});var Fln=z((j3c,Gln)=>{"use strict";var GMs="text/plain",FMs="us-ascii",kln=(e,t)=>t.some(r=>r instanceof RegExp?r.test(e):r===e),ZMs=(e,{stripHash:t})=>{let r=/^data:(?[^,]*?),(?[^#]*?)(?:#(?.*))?$/.exec(e);if(!r)throw new Error(`Invalid URL: ${e}`);let{type:s,data:a,hash:o}=r.groups,g=s.split(";");o=t?"":o;let p=!1;g[g.length-1]==="base64"&&(g.pop(),p=!0);let f=(g.shift()||"").toLowerCase(),y=[...g.map(B=>{let[v,G=""]=B.split("=").map(T=>T.trim());return v==="charset"&&(G=G.toLowerCase(),G===FMs)?"":`${v}${G?`=${G}`:""}`}).filter(Boolean)];return p&&y.push("base64"),(y.length!==0||f&&f!==GMs)&&y.unshift(f),`data:${y.join(";")},${p?a.trim():a}${o?`#${o}`:""}`},LMs=(e,t)=>{if(t={defaultProtocol:"http:",normalizeProtocol:!0,forceHttp:!1,forceHttps:!1,stripAuthentication:!0,stripHash:!1,stripTextFragment:!0,stripWWW:!0,removeQueryParameters:[/^utm_\w+/i],removeTrailingSlash:!0,removeSingleSlash:!0,removeDirectoryIndex:!1,sortQueryParameters:!0,...t},e=e.trim(),/^data:/i.test(e))return ZMs(e,t);if(/^view-source:/i.test(e))throw new Error("`view-source:` is not supported as it is a non-standard protocol");let r=e.startsWith("//");!r&&/^\.*\//.test(e)||(e=e.replace(/^(?!(?:\w+:)?\/\/)|^\/\//,t.defaultProtocol));let a=new URL(e);if(t.forceHttp&&t.forceHttps)throw new Error("The `forceHttp` and `forceHttps` options cannot be used together");if(t.forceHttp&&a.protocol==="https:"&&(a.protocol="http:"),t.forceHttps&&a.protocol==="http:"&&(a.protocol="https:"),t.stripAuthentication&&(a.username="",a.password=""),t.stripHash?a.hash="":t.stripTextFragment&&(a.hash=a.hash.replace(/#?:~:text.*?$/i,"")),a.pathname&&(a.pathname=a.pathname.replace(/(?0){let g=a.pathname.split("/"),p=g[g.length-1];kln(p,t.removeDirectoryIndex)&&(g=g.slice(0,g.length-1),a.pathname=g.slice(1).join("/")+"/")}if(a.hostname&&(a.hostname=a.hostname.replace(/\.$/,""),t.stripWWW&&/^www\.(?!www\.)(?:[a-z\-\d]{1,63})\.(?:[a-z.\-\d]{2,63})$/.test(a.hostname)&&(a.hostname=a.hostname.replace(/^www\./,""))),Array.isArray(t.removeQueryParameters))for(let g of[...a.searchParams.keys()])kln(g,t.removeQueryParameters)&&a.searchParams.delete(g);t.removeQueryParameters===!0&&(a.search=""),t.sortQueryParameters&&a.searchParams.sort(),t.removeTrailingSlash&&(a.pathname=a.pathname.replace(/\/$/,""));let o=e;return e=a.toString(),!t.removeSingleSlash&&a.pathname==="/"&&!o.endsWith("/")&&a.hash===""&&(e=e.replace(/\/$/,"")),(t.removeTrailingSlash||a.pathname==="/")&&a.hash===""&&t.removeSingleSlash&&(e=e.replace(/\/$/,"")),r&&!t.normalizeProtocol&&(e=e.replace(/^http:\/\//,"//")),t.stripProtocol&&(e=e.replace(/^(?:https?:)?\/\//,"")),e};Gln.exports=LMs});var Vln=z((z3c,Lln)=>{Lln.exports=Zln;function Zln(e,t){if(e&&t)return Zln(e)(t);if(typeof e!="function")throw new TypeError("need wrapper function");return Object.keys(e).forEach(function(s){r[s]=e[s]}),r;function r(){for(var s=new Array(arguments.length),a=0;a{var Wln=Vln();mXt.exports=Wln(sit);mXt.exports.strict=Wln(Pln);sit.proto=sit(function(){Object.defineProperty(Function.prototype,"once",{value:function(){return sit(this)},configurable:!0}),Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return Pln(this)},configurable:!0})});function sit(e){var t=function(){return t.called?t.value:(t.called=!0,t.value=e.apply(this,arguments))};return t.called=!1,t}function Pln(e){var t=function(){if(t.called)throw new Error(t.onceError);return t.called=!0,t.value=e.apply(this,arguments)},r=e.name||"Function wrapped with `once`";return t.onceError=r+" shouldn't be called more than once",t.called=!1,t}});var hXt=z(($3c,Mln)=>{var VMs=oit(),WMs=function(){},PMs=function(e){return e.setHeader&&typeof e.abort=="function"},OMs=function(e){return e.stdio&&Array.isArray(e.stdio)&&e.stdio.length===3},Oln=function(e,t,r){if(typeof t=="function")return Oln(e,null,t);t||(t={}),r=VMs(r||WMs);var s=e._writableState,a=e._readableState,o=t.readable||t.readable!==!1&&e.readable,g=t.writable||t.writable!==!1&&e.writable,p=!1,f=function(){e.writable||m()},m=function(){g=!1,o||r.call(e)},y=function(){o=!1,g||r.call(e)},B=function(X){r.call(e,X?new Error("exited with error code: "+X):null)},v=function(X){r.call(e,X)},G=function(){process.nextTick(T)},T=function(){if(!p){if(o&&!(a&&a.ended&&!a.destroyed))return r.call(e,new Error("premature close"));if(g&&!(s&&s.ended&&!s.destroyed))return r.call(e,new Error("premature close"))}},O=function(){e.req.on("finish",m)};return PMs(e)?(e.on("complete",m),e.on("abort",G),e.req?O():e.on("request",O)):g&&!s&&(e.on("end",f),e.on("close",f)),OMs(e)&&e.on("exit",B),e.on("end",y),e.on("finish",m),t.error!==!1&&e.on("error",v),e.on("close",G),function(){p=!0,e.removeListener("complete",m),e.removeListener("abort",G),e.removeListener("request",O),e.req&&e.req.removeListener("finish",m),e.removeListener("end",f),e.removeListener("close",f),e.removeListener("finish",m),e.removeListener("exit",B),e.removeListener("end",y),e.removeListener("error",v),e.removeListener("close",G)}};Mln.exports=Oln});var Hln=z((ePc,Yln)=>{var MMs=oit(),QMs=hXt(),ait;try{ait=Dt("fs")}catch{}var J9e=function(){},YMs=/^v?\.0/.test(process.version),cit=function(e){return typeof e=="function"},HMs=function(e){return!YMs||!ait?!1:(e instanceof(ait.ReadStream||J9e)||e instanceof(ait.WriteStream||J9e))&&cit(e.close)},XMs=function(e){return e.setHeader&&cit(e.abort)},JMs=function(e,t,r,s){s=MMs(s);var a=!1;e.on("close",function(){a=!0}),QMs(e,{readable:t,writable:r},function(g){if(g)return s(g);a=!0,s()});var o=!1;return function(g){if(!a&&!o){if(o=!0,HMs(e))return e.close(J9e);if(XMs(e))return e.abort();if(cit(e.destroy))return e.destroy();s(g||new Error("stream was destroyed"))}}},Qln=function(e){e()},UMs=function(e,t){return e.pipe(t)},KMs=function(){var e=Array.prototype.slice.call(arguments),t=cit(e[e.length-1]||J9e)&&e.pop()||J9e;if(Array.isArray(e[0])&&(e=e[0]),e.length<2)throw new Error("pump requires two streams per minimum");var r,s=e.map(function(a,o){var g=o0;return JMs(a,g,p,function(f){r||(r=f),f&&s.forEach(Qln),!g&&(s.forEach(Qln),t(r))})});return e.reduce(UMs)};Yln.exports=KMs});var Jln=z((tPc,Xln)=>{"use strict";var{PassThrough:jMs}=Dt("stream");Xln.exports=e=>{e={...e};let{array:t}=e,{encoding:r}=e,s=r==="buffer",a=!1;t?a=!(r||s):r=r||"utf8",s&&(r=null);let o=new jMs({objectMode:a});r&&o.setEncoding(r);let g=0,p=[];return o.on("data",f=>{p.push(f),a?g=p.length:g+=f.length}),o.getBufferedValue=()=>t?p:s?Buffer.concat(p,g):p.join(""),o.getBufferedLength=()=>g,o}});var Uln=z((rPc,Pbe)=>{"use strict";var{constants:zMs}=Dt("buffer"),qMs=Hln(),$Ms=Jln(),lit=class extends Error{constructor(){super("maxBuffer exceeded"),this.name="MaxBufferError"}};async function uit(e,t){if(!e)return Promise.reject(new Error("Expected a stream"));t={maxBuffer:1/0,...t};let{maxBuffer:r}=t,s;return await new Promise((a,o)=>{let g=p=>{p&&s.getBufferedLength()<=zMs.MAX_LENGTH&&(p.bufferedData=s.getBufferedValue()),o(p)};s=qMs(e,$Ms(t),p=>{if(p){g(p);return}a()}),s.on("data",()=>{s.getBufferedLength()>r&&g(new lit)})}),s.getBufferedValue()}Pbe.exports=uit;Pbe.exports.default=uit;Pbe.exports.buffer=(e,t)=>uit(e,{...t,encoding:"buffer"});Pbe.exports.array=(e,t)=>uit(e,{...t,array:!0});Pbe.exports.MaxBufferError=lit});var jln=z((iPc,Kln)=>{"use strict";var eQs=new Set([200,203,204,206,300,301,308,404,405,410,414,501]),tQs=new Set([200,203,204,300,301,302,303,307,308,404,405,410,414,501]),rQs=new Set([500,502,503,504]),nQs={date:!0,connection:!0,"keep-alive":!0,"proxy-authenticate":!0,"proxy-authorization":!0,te:!0,trailer:!0,"transfer-encoding":!0,upgrade:!0},iQs={"content-length":!0,"content-encoding":!0,"transfer-encoding":!0,"content-range":!0};function uAe(e){let t=parseInt(e,10);return isFinite(t)?t:0}function sQs(e){return e?rQs.has(e.status):!0}function _Xt(e){let t={};if(!e)return t;let r=e.trim().split(/,/);for(let s of r){let[a,o]=s.split(/=/,2);t[a.trim()]=o===void 0?!0:o.trim().replace(/^"|"$/g,"")}return t}function oQs(e){let t=[];for(let r in e){let s=e[r];t.push(s===!0?r:r+"="+s)}if(t.length)return t.join(", ")}Kln.exports=class{constructor(t,r,{shared:s,cacheHeuristic:a,immutableMinTimeToLive:o,ignoreCargoCult:g,_fromObject:p}={}){if(p){this._fromObject(p);return}if(!r||!r.headers)throw Error("Response headers missing");this._assertRequestHasHeaders(t),this._responseTime=this.now(),this._isShared=s!==!1,this._cacheHeuristic=a!==void 0?a:.1,this._immutableMinTtl=o!==void 0?o:24*3600*1e3,this._status="status"in r?r.status:200,this._resHeaders=r.headers,this._rescc=_Xt(r.headers["cache-control"]),this._method="method"in t?t.method:"GET",this._url=t.url,this._host=t.headers.host,this._noAuthorization=!t.headers.authorization,this._reqHeaders=r.headers.vary?t.headers:null,this._reqcc=_Xt(t.headers["cache-control"]),g&&"pre-check"in this._rescc&&"post-check"in this._rescc&&(delete this._rescc["pre-check"],delete this._rescc["post-check"],delete this._rescc["no-cache"],delete this._rescc["no-store"],delete this._rescc["must-revalidate"],this._resHeaders=Object.assign({},this._resHeaders,{"cache-control":oQs(this._rescc)}),delete this._resHeaders.expires,delete this._resHeaders.pragma),r.headers["cache-control"]==null&&/no-cache/.test(r.headers.pragma)&&(this._rescc["no-cache"]=!0)}now(){return Date.now()}storable(){return!!(!this._reqcc["no-store"]&&(this._method==="GET"||this._method==="HEAD"||this._method==="POST"&&this._hasExplicitExpiration())&&tQs.has(this._status)&&!this._rescc["no-store"]&&(!this._isShared||!this._rescc.private)&&(!this._isShared||this._noAuthorization||this._allowsStoringAuthenticated())&&(this._resHeaders.expires||this._rescc["max-age"]||this._isShared&&this._rescc["s-maxage"]||this._rescc.public||eQs.has(this._status)))}_hasExplicitExpiration(){return this._isShared&&this._rescc["s-maxage"]||this._rescc["max-age"]||this._resHeaders.expires}_assertRequestHasHeaders(t){if(!t||!t.headers)throw Error("Request headers missing")}satisfiesWithoutRevalidation(t){this._assertRequestHasHeaders(t);let r=_Xt(t.headers["cache-control"]);return r["no-cache"]||/no-cache/.test(t.headers.pragma)||r["max-age"]&&this.age()>r["max-age"]||r["min-fresh"]&&this.timeToLive()<1e3*r["min-fresh"]||this.stale()&&!(r["max-stale"]&&!this._rescc["must-revalidate"]&&(r["max-stale"]===!0||r["max-stale"]>this.age()-this.maxAge()))?!1:this._requestMatches(t,!1)}_requestMatches(t,r){return(!this._url||this._url===t.url)&&this._host===t.headers.host&&(!t.method||this._method===t.method||r&&t.method==="HEAD")&&this._varyMatches(t)}_allowsStoringAuthenticated(){return this._rescc["must-revalidate"]||this._rescc.public||this._rescc["s-maxage"]}_varyMatches(t){if(!this._resHeaders.vary)return!0;if(this._resHeaders.vary==="*")return!1;let r=this._resHeaders.vary.trim().toLowerCase().split(/\s*,\s*/);for(let s of r)if(t.headers[s]!==this._reqHeaders[s])return!1;return!0}_copyWithoutHopByHopHeaders(t){let r={};for(let s in t)nQs[s]||(r[s]=t[s]);if(t.connection){let s=t.connection.trim().split(/\s*,\s*/);for(let a of s)delete r[a]}if(r.warning){let s=r.warning.split(/,/).filter(a=>!/^\s*1[0-9][0-9]/.test(a));s.length?r.warning=s.join(",").trim():delete r.warning}return r}responseHeaders(){let t=this._copyWithoutHopByHopHeaders(this._resHeaders),r=this.age();return r>3600*24&&!this._hasExplicitExpiration()&&this.maxAge()>3600*24&&(t.warning=(t.warning?`${t.warning}, `:"")+'113 - "rfc7234 5.5.4"'),t.age=`${Math.round(r)}`,t.date=new Date(this.now()).toUTCString(),t}date(){let t=Date.parse(this._resHeaders.date);return isFinite(t)?t:this._responseTime}age(){let t=this._ageValue(),r=(this.now()-this._responseTime)/1e3;return t+r}_ageValue(){return uAe(this._resHeaders.age)}maxAge(){if(!this.storable()||this._rescc["no-cache"]||this._isShared&&this._resHeaders["set-cookie"]&&!this._rescc.public&&!this._rescc.immutable||this._resHeaders.vary==="*")return 0;if(this._isShared){if(this._rescc["proxy-revalidate"])return 0;if(this._rescc["s-maxage"])return uAe(this._rescc["s-maxage"])}if(this._rescc["max-age"])return uAe(this._rescc["max-age"]);let t=this._rescc.immutable?this._immutableMinTtl:0,r=this.date();if(this._resHeaders.expires){let s=Date.parse(this._resHeaders.expires);return Number.isNaN(s)||ss)return Math.max(t,(r-s)/1e3*this._cacheHeuristic)}return t}timeToLive(){let t=this.maxAge()-this.age(),r=t+uAe(this._rescc["stale-if-error"]),s=t+uAe(this._rescc["stale-while-revalidate"]);return Math.max(0,t,r,s)*1e3}stale(){return this.maxAge()<=this.age()}_useStaleIfError(){return this.maxAge()+uAe(this._rescc["stale-if-error"])>this.age()}useStaleWhileRevalidate(){return this.maxAge()+uAe(this._rescc["stale-while-revalidate"])>this.age()}static fromObject(t){return new this(void 0,void 0,{_fromObject:t})}_fromObject(t){if(this._responseTime)throw Error("Reinitialized");if(!t||t.v!==1)throw Error("Invalid serialization");this._responseTime=t.t,this._isShared=t.sh,this._cacheHeuristic=t.ch,this._immutableMinTtl=t.imm!==void 0?t.imm:24*3600*1e3,this._status=t.st,this._resHeaders=t.resh,this._rescc=t.rescc,this._method=t.m,this._url=t.u,this._host=t.h,this._noAuthorization=t.a,this._reqHeaders=t.reqh,this._reqcc=t.reqcc}toObject(){return{v:1,t:this._responseTime,sh:this._isShared,ch:this._cacheHeuristic,imm:this._immutableMinTtl,st:this._status,resh:this._resHeaders,rescc:this._rescc,m:this._method,u:this._url,h:this._host,a:this._noAuthorization,reqh:this._reqHeaders,reqcc:this._reqcc}}revalidationHeaders(t){this._assertRequestHasHeaders(t);let r=this._copyWithoutHopByHopHeaders(t.headers);if(delete r["if-range"],!this._requestMatches(t,!0)||!this.storable())return delete r["if-none-match"],delete r["if-modified-since"],r;if(this._resHeaders.etag&&(r["if-none-match"]=r["if-none-match"]?`${r["if-none-match"]}, ${this._resHeaders.etag}`:this._resHeaders.etag),r["accept-ranges"]||r["if-match"]||r["if-unmodified-since"]||this._method&&this._method!="GET"){if(delete r["if-modified-since"],r["if-none-match"]){let a=r["if-none-match"].split(/,/).filter(o=>!/^\s*W\//.test(o));a.length?r["if-none-match"]=a.join(",").trim():delete r["if-none-match"]}}else this._resHeaders["last-modified"]&&!r["if-modified-since"]&&(r["if-modified-since"]=this._resHeaders["last-modified"]);return r}revalidatedPolicy(t,r){if(this._assertRequestHasHeaders(t),this._useStaleIfError()&&sQs(r))return{modified:!1,matches:!1,policy:this};if(!r||!r.headers)throw Error("Response headers missing");let s=!1;if(r.status!==void 0&&r.status!=304?s=!1:r.headers.etag&&!/^\s*W\//.test(r.headers.etag)?s=this._resHeaders.etag&&this._resHeaders.etag.replace(/^\s*W\//,"")===r.headers.etag:this._resHeaders.etag&&r.headers.etag?s=this._resHeaders.etag.replace(/^\s*W\//,"")===r.headers.etag.replace(/^\s*W\//,""):this._resHeaders["last-modified"]?s=this._resHeaders["last-modified"]===r.headers["last-modified"]:!this._resHeaders.etag&&!this._resHeaders["last-modified"]&&!r.headers.etag&&!r.headers["last-modified"]&&(s=!0),!s)return{policy:new this.constructor(t,r),modified:r.status!=304,matches:!1};let a={};for(let g in this._resHeaders)a[g]=g in r.headers&&!iQs[g]?r.headers[g]:this._resHeaders[g];let o=Object.assign({},r,{status:this._status,method:this._method,headers:a});return{policy:new this.constructor(t,o,{shared:this._isShared,cacheHeuristic:this._cacheHeuristic,immutableMinTimeToLive:this._immutableMinTtl}),modified:!1,matches:!0}}}});var git=z((sPc,zln)=>{"use strict";zln.exports=e=>{let t={};for(let[r,s]of Object.entries(e))t[r.toLowerCase()]=s;return t}});var $ln=z((oPc,qln)=>{"use strict";var aQs=Dt("stream").Readable,cQs=git(),yXt=class extends aQs{constructor(t,r,s,a){if(typeof t!="number")throw new TypeError("Argument `statusCode` should be a number");if(typeof r!="object")throw new TypeError("Argument `headers` should be an object");if(!(s instanceof Buffer))throw new TypeError("Argument `body` should be a buffer");if(typeof a!="string")throw new TypeError("Argument `url` should be a string");super(),this.statusCode=t,this.headers=cQs(r),this.body=s,this.url=a}_read(){this.push(this.body),this.push(null)}};qln.exports=yXt});var tun=z((aPc,eun)=>{"use strict";var lQs=["destroy","setTimeout","socket","headers","trailers","rawHeaders","statusCode","httpVersion","httpVersionMinor","httpVersionMajor","rawTrailers","statusMessage"];eun.exports=(e,t)=>{let r=new Set(Object.keys(e).concat(lQs));for(let s of r)s in t||(t[s]=typeof e[s]=="function"?e[s].bind(e):e[s])}});var iun=z((cPc,nun)=>{"use strict";var uQs=Dt("stream").PassThrough,gQs=tun(),AQs=e=>{if(!(e&&e.pipe))throw new TypeError("Parameter `response` must be a response stream.");let t=new uQs;return gQs(e,t),e.pipe(t)};nun.exports=AQs});var sun=z(bXt=>{bXt.stringify=function e(t){if(typeof t>"u")return t;if(t&&Buffer.isBuffer(t))return JSON.stringify(":base64:"+t.toString("base64"));if(t&&t.toJSON&&(t=t.toJSON()),t&&typeof t=="object"){var r="",s=Array.isArray(t);r=s?"[":"{";var a=!0;for(var o in t){var g=typeof t[o]=="function"||!s&&typeof t[o]>"u";Object.hasOwnProperty.call(t,o)&&!g&&(a||(r+=","),a=!1,s?t[o]==null?r+="null":r+=e(t[o]):t[o]!==void 0&&(r+=e(o)+":"+e(t[o])))}return r+=s?"]":"}",r}else return typeof t=="string"?JSON.stringify(/^:/.test(t)?":"+t:t):typeof t>"u"?"null":JSON.stringify(t)};bXt.parse=function(e){return JSON.parse(e,function(t,r){return typeof r=="string"?/^:base64:/.test(r)?Buffer.from(r.substring(8),"base64"):/^:/.test(r)?r.substring(1):r:r})}});var lun=z((uPc,cun)=>{"use strict";var dQs=Dt("events"),oun=sun(),pQs=e=>{let t={redis:"@keyv/redis",rediss:"@keyv/redis",mongodb:"@keyv/mongo",mongo:"@keyv/mongo",sqlite:"@keyv/sqlite",postgresql:"@keyv/postgres",postgres:"@keyv/postgres",mysql:"@keyv/mysql",etcd:"@keyv/etcd",offline:"@keyv/offline",tiered:"@keyv/tiered"};if(e.adapter||e.uri){let r=e.adapter||/^[^:+]*/.exec(e.uri)[0];return new(Dt(t[r]))(e)}return new Map},aun=["sqlite","postgres","mysql","mongo","redis","tiered"],EXt=class extends dQs{constructor(t,{emitErrors:r=!0,...s}={}){if(super(),this.opts={namespace:"keyv",serialize:oun.stringify,deserialize:oun.parse,...typeof t=="string"?{uri:t}:t,...s},!this.opts.store){let o={...this.opts};this.opts.store=pQs(o)}if(this.opts.compression){let o=this.opts.compression;this.opts.serialize=o.serialize.bind(o),this.opts.deserialize=o.deserialize.bind(o)}typeof this.opts.store.on=="function"&&r&&this.opts.store.on("error",o=>this.emit("error",o)),this.opts.store.namespace=this.opts.namespace;let a=o=>async function*(){for await(let[g,p]of typeof o=="function"?o(this.opts.store.namespace):o){let f=await this.opts.deserialize(p);if(!(this.opts.store.namespace&&!g.includes(this.opts.store.namespace))){if(typeof f.expires=="number"&&Date.now()>f.expires){this.delete(g);continue}yield[this._getKeyUnprefix(g),f.value]}}};typeof this.opts.store[Symbol.iterator]=="function"&&this.opts.store instanceof Map?this.iterator=a(this.opts.store):typeof this.opts.store.iterator=="function"&&this.opts.store.opts&&this._checkIterableAdaptar()&&(this.iterator=a(this.opts.store.iterator.bind(this.opts.store)))}_checkIterableAdaptar(){return aun.includes(this.opts.store.opts.dialect)||aun.findIndex(t=>this.opts.store.opts.url.includes(t))>=0}_getKeyPrefix(t){return`${this.opts.namespace}:${t}`}_getKeyPrefixArray(t){return t.map(r=>`${this.opts.namespace}:${r}`)}_getKeyUnprefix(t){return t.split(":").splice(1).join(":")}get(t,r){let{store:s}=this.opts,a=Array.isArray(t),o=a?this._getKeyPrefixArray(t):this._getKeyPrefix(t);if(a&&s.getMany===void 0){let g=[];for(let p of o)g.push(Promise.resolve().then(()=>s.get(p)).then(f=>typeof f=="string"?this.opts.deserialize(f):this.opts.compression?this.opts.deserialize(f):f).then(f=>{if(f!=null)return typeof f.expires=="number"&&Date.now()>f.expires?this.delete(p).then(()=>{}):r&&r.raw?f:f.value}));return Promise.allSettled(g).then(p=>{let f=[];for(let m of p)f.push(m.value);return f})}return Promise.resolve().then(()=>a?s.getMany(o):s.get(o)).then(g=>typeof g=="string"?this.opts.deserialize(g):this.opts.compression?this.opts.deserialize(g):g).then(g=>{if(g!=null)return a?g.map((p,f)=>{if(typeof p=="string"&&(p=this.opts.deserialize(p)),p!=null){if(typeof p.expires=="number"&&Date.now()>p.expires){this.delete(t[f]).then(()=>{});return}return r&&r.raw?p:p.value}}):typeof g.expires=="number"&&Date.now()>g.expires?this.delete(t).then(()=>{}):r&&r.raw?g:g.value})}set(t,r,s){let a=this._getKeyPrefix(t);typeof s>"u"&&(s=this.opts.ttl),s===0&&(s=void 0);let{store:o}=this.opts;return Promise.resolve().then(()=>{let g=typeof s=="number"?Date.now()+s:null;return typeof r=="symbol"&&this.emit("error","symbol cannot be serialized"),r={value:r,expires:g},this.opts.serialize(r)}).then(g=>o.set(a,g,s)).then(()=>!0)}delete(t){let{store:r}=this.opts;if(Array.isArray(t)){let a=this._getKeyPrefixArray(t);if(r.deleteMany===void 0){let o=[];for(let g of a)o.push(r.delete(g));return Promise.allSettled(o).then(g=>g.every(p=>p.value===!0))}return Promise.resolve().then(()=>r.deleteMany(a))}let s=this._getKeyPrefix(t);return Promise.resolve().then(()=>r.delete(s))}clear(){let{store:t}=this.opts;return Promise.resolve().then(()=>t.clear())}has(t){let r=this._getKeyPrefix(t),{store:s}=this.opts;return Promise.resolve().then(async()=>typeof s.has=="function"?s.has(r):await s.get(r)!==void 0)}disconnect(){let{store:t}=this.opts;if(typeof t.disconnect=="function")return t.disconnect()}};cun.exports=EXt});var Aun=z((APc,gun)=>{"use strict";var fQs=Dt("events"),Ait=Dt("url"),IQs=Fln(),CQs=Uln(),BXt=jln(),uun=$ln(),mQs=git(),hQs=iun(),_Qs=lun(),U9e=class e{constructor(t,r){if(typeof t!="function")throw new TypeError("Parameter `request` must be a function");return this.cache=new _Qs({uri:typeof r=="string"&&r,store:typeof r!="string"&&r,namespace:"cacheable-request"}),this.createCacheableRequest(t)}createCacheableRequest(t){return(r,s)=>{let a;if(typeof r=="string")a=vXt(Ait.parse(r)),r={};else if(r instanceof Ait.URL)a=vXt(Ait.parse(r.toString())),r={};else{let[B,...v]=(r.path||"").split("?"),G=v.length>0?`?${v.join("?")}`:"";a=vXt({...r,pathname:B,search:G})}r={headers:{},method:"GET",cache:!0,strictTtl:!1,automaticFailover:!1,...r,...yQs(a)},r.headers=mQs(r.headers);let o=new fQs,g=IQs(Ait.format(a),{stripWWW:!1,removeTrailingSlash:!1,stripAuthentication:!1}),p=`${r.method}:${g}`,f=!1,m=!1,y=B=>{m=!0;let v=!1,G,T=new Promise(X=>{G=()=>{v||(v=!0,X())}}),O=X=>{if(f&&!B.forceRefresh){X.status=X.statusCode;let le=BXt.fromObject(f.cachePolicy).revalidatedPolicy(B,X);if(!le.modified){let ae=le.policy.responseHeaders();X=new uun(f.statusCode,ae,f.body,f.url),X.cachePolicy=le.policy,X.fromCache=!0}}X.fromCache||(X.cachePolicy=new BXt(B,X,B),X.fromCache=!1);let U;B.cache&&X.cachePolicy.storable()?(U=hQs(X),(async()=>{try{let le=CQs.buffer(X);if(await Promise.race([T,new Promise(pe=>X.once("end",pe))]),v)return;let ae=await le,ge={cachePolicy:X.cachePolicy.toObject(),url:X.url,statusCode:X.fromCache?f.statusCode:X.statusCode,body:ae},fe=B.strictTtl?X.cachePolicy.timeToLive():void 0;B.maxTtl&&(fe=fe?Math.min(fe,B.maxTtl):B.maxTtl),await this.cache.set(p,ge,fe)}catch(le){o.emit("error",new e.CacheError(le))}})()):B.cache&&f&&(async()=>{try{await this.cache.delete(p)}catch(le){o.emit("error",new e.CacheError(le))}})(),o.emit("response",U||X),typeof s=="function"&&s(U||X)};try{let X=t(B,O);X.once("error",G),X.once("abort",G),o.emit("request",X)}catch(X){o.emit("error",new e.RequestError(X))}};return(async()=>{let B=async G=>{await Promise.resolve();let T=G.cache?await this.cache.get(p):void 0;if(typeof T>"u")return y(G);let O=BXt.fromObject(T.cachePolicy);if(O.satisfiesWithoutRevalidation(G)&&!G.forceRefresh){let X=O.responseHeaders(),U=new uun(T.statusCode,X,T.body,T.url);U.cachePolicy=O,U.fromCache=!0,o.emit("response",U),typeof s=="function"&&s(U)}else f=T,G.headers=O.revalidationHeaders(G),y(G)},v=G=>o.emit("error",new e.CacheError(G));this.cache.once("error",v),o.on("response",()=>this.cache.removeListener("error",v));try{await B(r)}catch(G){r.automaticFailover&&!m&&y(r),o.emit("error",new e.CacheError(G))}})(),o}}};function yQs(e){let t={...e};return t.path=`${e.pathname||"/"}${e.search||""}`,delete t.pathname,delete t.search,t}function vXt(e){return{protocol:e.protocol,auth:e.auth,hostname:e.hostname||e.host||"localhost",port:e.port,pathname:e.pathname,search:e.search}}U9e.RequestError=class extends Error{constructor(e){super(e.message),this.name="RequestError",Object.assign(this,e)}};U9e.CacheError=class extends Error{constructor(e){super(e.message),this.name="CacheError",Object.assign(this,e)}};gun.exports=U9e});var pun=z((fPc,dun)=>{"use strict";var bQs=["aborted","complete","headers","httpVersion","httpVersionMinor","httpVersionMajor","method","rawHeaders","rawTrailers","setTimeout","socket","statusCode","statusMessage","trailers","url"];dun.exports=(e,t)=>{if(t._readableState.autoDestroy)throw new Error("The second stream must have the `autoDestroy` option set to `false`");let r=new Set(Object.keys(e).concat(bQs)),s={};for(let a of r)a in t||(s[a]={get(){let o=e[a];return typeof o=="function"?o.bind(e):o},set(o){e[a]=o},enumerable:!0,configurable:!1});return Object.defineProperties(t,s),e.once("aborted",()=>{t.destroy(),t.emit("aborted")}),e.once("close",()=>{e.complete&&t.readable?t.once("end",()=>{t.emit("close")}):t.emit("close")}),t}});var Iun=z((IPc,fun)=>{"use strict";var{Transform:EQs,PassThrough:BQs}=Dt("stream"),SXt=Dt("zlib"),vQs=pun();fun.exports=e=>{let t=(e.headers["content-encoding"]||"").toLowerCase();if(!["gzip","deflate","br"].includes(t))return e;let r=t==="br";if(r&&typeof SXt.createBrotliDecompress!="function")return e.destroy(new Error("Brotli is not supported on Node.js < 12")),e;let s=!0,a=new EQs({transform(p,f,m){s=!1,m(null,p)},flush(p){p()}}),o=new BQs({autoDestroy:!1,destroy(p,f){e.destroy(),f(p)}}),g=r?SXt.createBrotliDecompress():SXt.createUnzip();return g.once("error",p=>{if(s&&!e.readable){o.end();return}o.destroy(p)}),vQs(e,o),e.pipe(a).pipe(g).pipe(o),o}});var TXt=z((CPc,Cun)=>{"use strict";var wXt=class{constructor(t={}){if(!(t.maxSize&&t.maxSize>0))throw new TypeError("`maxSize` must be a number greater than 0");this.maxSize=t.maxSize,this.onEviction=t.onEviction,this.cache=new Map,this.oldCache=new Map,this._size=0}_set(t,r){if(this.cache.set(t,r),this._size++,this._size>=this.maxSize){if(this._size=0,typeof this.onEviction=="function")for(let[s,a]of this.oldCache.entries())this.onEviction(s,a);this.oldCache=this.cache,this.cache=new Map}}get(t){if(this.cache.has(t))return this.cache.get(t);if(this.oldCache.has(t)){let r=this.oldCache.get(t);return this.oldCache.delete(t),this._set(t,r),r}}set(t,r){return this.cache.has(t)?this.cache.set(t,r):this._set(t,r),this}has(t){return this.cache.has(t)||this.oldCache.has(t)}peek(t){if(this.cache.has(t))return this.cache.get(t);if(this.oldCache.has(t))return this.oldCache.get(t)}delete(t){let r=this.cache.delete(t);return r&&this._size--,this.oldCache.delete(t)||r}clear(){this.cache.clear(),this.oldCache.clear(),this._size=0}*keys(){for(let[t]of this)yield t}*values(){for(let[,t]of this)yield t}*[Symbol.iterator](){for(let t of this.cache)yield t;for(let t of this.oldCache){let[r]=t;this.cache.has(r)||(yield t)}}get size(){let t=0;for(let r of this.oldCache.keys())this.cache.has(r)||t++;return Math.min(this._size+t,this.maxSize)}};Cun.exports=wXt});var RXt=z((mPc,yun)=>{"use strict";var SQs=Dt("events"),wQs=Dt("tls"),TQs=Dt("http2"),NQs=TXt(),_F=Symbol("currentStreamsCount"),mun=Symbol("request"),hO=Symbol("cachedOriginSet"),Obe=Symbol("gracefullyClosing"),RQs=["maxDeflateDynamicTableSize","maxSessionMemory","maxHeaderListPairs","maxOutstandingPings","maxReservedRemoteStreams","maxSendHeaderBlockLength","paddingStrategy","localAddress","path","rejectUnauthorized","minDHSize","ca","cert","clientCertEngine","ciphers","key","pfx","servername","minVersion","maxVersion","secureProtocol","crl","honorCipherOrder","ecdhCurve","dhparam","secureOptions","sessionIdContext"],DQs=(e,t,r)=>{let s=0,a=e.length;for(;s>>1;r(e[o],t)?s=o+1:a=o}return s},xQs=(e,t)=>e.remoteSettings.maxConcurrentStreams>t.remoteSettings.maxConcurrentStreams,NXt=(e,t)=>{for(let r of e)r[hO].lengtht[hO].includes(s))&&r[_F]+t[_F]<=t.remoteSettings.maxConcurrentStreams&&_un(r)},kQs=(e,t)=>{for(let r of e)t[hO].lengthr[hO].includes(s))&&t[_F]+r[_F]<=r.remoteSettings.maxConcurrentStreams&&_un(t)},hun=({agent:e,isFree:t})=>{let r={};for(let s in e.sessions){let o=e.sessions[s].filter(g=>{let p=g[gAe.kCurrentStreamsCount]{e[Obe]=!0,e[_F]===0&&e.close()},gAe=class e extends SQs{constructor({timeout:t=6e4,maxSessions:r=1/0,maxFreeSessions:s=10,maxCachedTlsSessions:a=100}={}){super(),this.sessions={},this.queue={},this.timeout=t,this.maxSessions=r,this.maxFreeSessions=s,this._freeSessionsCount=0,this._sessionsCount=0,this.settings={enablePush:!1},this.tlsSessionCache=new NQs({maxSize:a})}static normalizeOrigin(t,r){return typeof t=="string"&&(t=new URL(t)),r&&t.hostname!==r&&(t.hostname=r),t.origin}normalizeOptions(t){let r="";if(t)for(let s of RQs)t[s]&&(r+=`:${t[s]}`);return r}_tryToCreateNewSession(t,r){if(!(t in this.queue)||!(r in this.queue[t]))return;let s=this.queue[t][r];this._sessionsCount{Array.isArray(s)?(s=[...s],a()):s=[{resolve:a,reject:o}];let g=this.normalizeOptions(r),p=e.normalizeOrigin(t,r&&r.servername);if(p===void 0){for(let{reject:y}of s)y(new TypeError("The `origin` argument needs to be a string or an URL object"));return}if(g in this.sessions){let y=this.sessions[g],B=-1,v=-1,G;for(let T of y){let O=T.remoteSettings.maxConcurrentStreams;if(O=O||T[Obe]||T.destroyed)continue;G||(B=O),X>v&&(G=T,v=X)}}if(G){if(s.length!==1){for(let{reject:T}of s){let O=new Error(`Expected the length of listeners to be 1, got ${s.length}. -Please report this to https://github.com/szmarczak/http2-wrapper/`);T(O)}return}s[0].resolve(G);return}}if(g in this.queue){if(p in this.queue[g]){this.queue[g][p].listeners.push(...s),this._tryToCreateNewSession(g,p);return}}else this.queue[g]={};let f=()=>{g in this.queue&&this.queue[g][p]===m&&(delete this.queue[g][p],Object.keys(this.queue[g]).length===0&&delete this.queue[g])},m=()=>{let y=`${p}:${g}`,B=!1;try{let v=TQs.connect(t,{createConnection:this.createConnection,settings:this.settings,session:this.tlsSessionCache.get(y),...r});v[_F]=0,v[Obe]=!1;let G=()=>v[_F]{this.tlsSessionCache.set(y,X)}),v.once("error",X=>{for(let{reject:U}of s)U(X);this.tlsSessionCache.delete(y)}),v.setTimeout(this.timeout,()=>{v.destroy()}),v.once("close",()=>{if(B){T&&this._freeSessionsCount--,this._sessionsCount--;let X=this.sessions[g];X.splice(X.indexOf(v),1),X.length===0&&delete this.sessions[g]}else{let X=new Error("Session closed without receiving a SETTINGS frame");X.code="HTTP2WRAPPER_NOSETTINGS";for(let{reject:U}of s)U(X);f()}this._tryToCreateNewSession(g,p)});let O=()=>{if(!(!(g in this.queue)||!G())){for(let X of v[hO])if(X in this.queue[g]){let{listeners:U}=this.queue[g][X];for(;U.length!==0&&G();)U.shift().resolve(v);let le=this.queue[g];if(le[X].listeners.length===0&&(delete le[X],Object.keys(le).length===0)){delete this.queue[g];break}if(!G())break}}};v.on("origin",()=>{v[hO]=v.originSet,G()&&(O(),NXt(this.sessions[g],v))}),v.once("remoteSettings",()=>{if(v.ref(),v.unref(),this._sessionsCount++,m.destroyed){let X=new Error("Agent has been destroyed");for(let U of s)U.reject(X);v.destroy();return}v[hO]=v.originSet;{let X=this.sessions;if(g in X){let U=X[g];U.splice(DQs(U,v,xQs),0,v)}else X[g]=[v]}this._freeSessionsCount+=1,B=!0,this.emit("session",v),O(),f(),v[_F]===0&&this._freeSessionsCount>this.maxFreeSessions&&v.close(),s.length!==0&&(this.getSession(p,r,s),s.length=0),v.on("remoteSettings",()=>{O(),NXt(this.sessions[g],v)})}),v[mun]=v.request,v.request=(X,U)=>{if(v[Obe])throw new Error("The session is gracefully closing. No new streams are allowed.");let le=v[mun](X,U);return v.ref(),++v[_F],v[_F]===v.remoteSettings.maxConcurrentStreams&&this._freeSessionsCount--,le.once("close",()=>{if(T=G(),--v[_F],!v.destroyed&&!v.closed&&(kQs(this.sessions[g],v),G()&&!v.closed)){T||(this._freeSessionsCount++,T=!0);let ae=v[_F]===0;ae&&v.unref(),ae&&(this._freeSessionsCount>this.maxFreeSessions||v[Obe])?v.close():(NXt(this.sessions[g],v),O())}}),le}}catch(v){for(let G of s)G.reject(v);f()}};m.listeners=s,m.completed=!1,m.destroyed=!1,this.queue[g][p]=m,this._tryToCreateNewSession(g,p)})}request(t,r,s,a){return new Promise((o,g)=>{this.getSession(t,r,[{reject:g,resolve:p=>{try{o(p.request(s,a))}catch(f){g(f)}}}])})}createConnection(t,r){return e.connect(t,r)}static connect(t,r){r.ALPNProtocols=["h2"];let s=t.port||443,a=t.hostname||t.host;return typeof r.servername>"u"&&(r.servername=a),wQs.connect(s,a,r)}closeFreeSessions(){for(let t of Object.values(this.sessions))for(let r of t)r[_F]===0&&r.close()}destroy(t){for(let r of Object.values(this.sessions))for(let s of r)s.destroy(t);for(let r of Object.values(this.queue))for(let s of Object.values(r))s.destroyed=!0;this.queue={}}get freeSessions(){return hun({agent:this,isFree:!0})}get busySessions(){return hun({agent:this,isFree:!1})}};gAe.kCurrentStreamsCount=_F;gAe.kGracefullyClosing=Obe;yun.exports={Agent:gAe,globalAgent:new gAe}});var xXt=z((hPc,bun)=>{"use strict";var{Readable:GQs}=Dt("stream"),DXt=class extends GQs{constructor(t,r){super({highWaterMark:r,autoDestroy:!1}),this.statusCode=null,this.statusMessage="",this.httpVersion="2.0",this.httpVersionMajor=2,this.httpVersionMinor=0,this.headers={},this.trailers={},this.req=null,this.aborted=!1,this.complete=!1,this.upgrade=null,this.rawHeaders=[],this.rawTrailers=[],this.socket=t,this.connection=t,this._dumped=!1}_destroy(t){this.req._request.destroy(t)}setTimeout(t,r){return this.req.setTimeout(t,r),this}_dump(){this._dumped||(this._dumped=!0,this.removeAllListeners("data"),this.resume())}_read(){this.req&&this.req._request.resume()}};bun.exports=DXt});var kXt=z((_Pc,Eun)=>{"use strict";Eun.exports=e=>{let t={protocol:e.protocol,hostname:typeof e.hostname=="string"&&e.hostname.startsWith("[")?e.hostname.slice(1,-1):e.hostname,host:e.host,hash:e.hash,search:e.search,pathname:e.pathname,href:e.href,path:`${e.pathname||""}${e.search||""}`};return typeof e.port=="string"&&e.port.length!==0&&(t.port=Number(e.port)),(e.username||e.password)&&(t.auth=`${e.username||""}:${e.password||""}`),t}});var vun=z((yPc,Bun)=>{"use strict";Bun.exports=(e,t,r)=>{for(let s of r)e.on(s,(...a)=>t.emit(s,...a))}});var wun=z((bPc,Sun)=>{"use strict";Sun.exports=e=>{switch(e){case":method":case":scheme":case":authority":case":path":return!0;default:return!1}}});var Nun=z((BPc,Tun)=>{"use strict";var Mbe=(e,t,r)=>{Tun.exports[t]=class extends e{constructor(...a){super(typeof r=="string"?r:r(a)),this.name=`${super.name} [${t}]`,this.code=t}}};Mbe(TypeError,"ERR_INVALID_ARG_TYPE",e=>{let t=e[0].includes(".")?"property":"argument",r=e[1],s=Array.isArray(r);return s&&(r=`${r.slice(0,-1).join(", ")} or ${r.slice(-1)}`),`The "${e[0]}" ${t} must be ${s?"one of":"of"} type ${r}. Received ${typeof e[2]}`});Mbe(TypeError,"ERR_INVALID_PROTOCOL",e=>`Protocol "${e[0]}" not supported. Expected "${e[1]}"`);Mbe(Error,"ERR_HTTP_HEADERS_SENT",e=>`Cannot ${e[0]} headers after they are sent to the client`);Mbe(TypeError,"ERR_INVALID_HTTP_TOKEN",e=>`${e[0]} must be a valid HTTP token [${e[1]}]`);Mbe(TypeError,"ERR_HTTP_INVALID_HEADER_VALUE",e=>`Invalid value "${e[0]} for header "${e[1]}"`);Mbe(TypeError,"ERR_INVALID_CHAR",e=>`Invalid character in ${e[0]} [${e[1]}]`)});var VXt=z((vPc,Zun)=>{"use strict";var FQs=Dt("http2"),{Writable:ZQs}=Dt("stream"),{Agent:Run,globalAgent:LQs}=RXt(),VQs=xXt(),WQs=kXt(),PQs=vun(),OQs=wun(),{ERR_INVALID_ARG_TYPE:GXt,ERR_INVALID_PROTOCOL:MQs,ERR_HTTP_HEADERS_SENT:Dun,ERR_INVALID_HTTP_TOKEN:QQs,ERR_HTTP_INVALID_HEADER_VALUE:YQs,ERR_INVALID_CHAR:HQs}=Nun(),{HTTP2_HEADER_STATUS:xun,HTTP2_HEADER_METHOD:kun,HTTP2_HEADER_PATH:Gun,HTTP2_METHOD_CONNECT:XQs}=FQs.constants,uk=Symbol("headers"),FXt=Symbol("origin"),ZXt=Symbol("session"),Fun=Symbol("options"),dit=Symbol("flushedHeaders"),K9e=Symbol("jobs"),JQs=/^[\^`\-\w!#$%&*+.|~]+$/,UQs=/[^\t\u0020-\u007E\u0080-\u00FF]/,LXt=class extends ZQs{constructor(t,r,s){super({autoDestroy:!1});let a=typeof t=="string"||t instanceof URL;if(a&&(t=WQs(t instanceof URL?t:new URL(t))),typeof r=="function"||r===void 0?(s=r,r=a?t:{...t}):r={...t,...r},r.h2session)this[ZXt]=r.h2session;else if(r.agent===!1)this.agent=new Run({maxFreeSessions:0});else if(typeof r.agent>"u"||r.agent===null)typeof r.createConnection=="function"?(this.agent=new Run({maxFreeSessions:0}),this.agent.createConnection=r.createConnection):this.agent=LQs;else if(typeof r.agent.request=="function")this.agent=r.agent;else throw new GXt("options.agent",["Agent-like Object","undefined","false"],r.agent);if(r.protocol&&r.protocol!=="https:")throw new MQs(r.protocol,"https:");let o=r.port||r.defaultPort||this.agent&&this.agent.defaultPort||443,g=r.hostname||r.host||"localhost";delete r.hostname,delete r.host,delete r.port;let{timeout:p}=r;if(r.timeout=void 0,this[uk]=Object.create(null),this[K9e]=[],this.socket=null,this.connection=null,this.method=r.method||"GET",this.path=r.path,this.res=null,this.aborted=!1,this.reusedSocket=!1,r.headers)for(let[f,m]of Object.entries(r.headers))this.setHeader(f,m);r.auth&&!("authorization"in this[uk])&&(this[uk].authorization="Basic "+Buffer.from(r.auth).toString("base64")),r.session=r.tlsSession,r.path=r.socketPath,this[Fun]=r,o===443?(this[FXt]=`https://${g}`,":authority"in this[uk]||(this[uk][":authority"]=g)):(this[FXt]=`https://${g}:${o}`,":authority"in this[uk]||(this[uk][":authority"]=`${g}:${o}`)),p&&this.setTimeout(p),s&&this.once("response",s),this[dit]=!1}get method(){return this[uk][kun]}set method(t){t&&(this[uk][kun]=t.toUpperCase())}get path(){return this[uk][Gun]}set path(t){t&&(this[uk][Gun]=t)}get _mustNotHaveABody(){return this.method==="GET"||this.method==="HEAD"||this.method==="DELETE"}_write(t,r,s){if(this._mustNotHaveABody){s(new Error("The GET, HEAD and DELETE methods must NOT have a body"));return}this.flushHeaders();let a=()=>this._request.write(t,r,s);this._request?a():this[K9e].push(a)}_final(t){if(this.destroyed)return;this.flushHeaders();let r=()=>{if(this._mustNotHaveABody){t();return}this._request.end(t)};this._request?r():this[K9e].push(r)}abort(){this.res&&this.res.complete||(this.aborted||process.nextTick(()=>this.emit("abort")),this.aborted=!0,this.destroy())}_destroy(t,r){this.res&&this.res._dump(),this._request&&this._request.destroy(),r(t)}async flushHeaders(){if(this[dit]||this.destroyed)return;this[dit]=!0;let t=this.method===XQs,r=s=>{if(this._request=s,this.destroyed){s.destroy();return}t||PQs(s,this,["timeout","continue","close","error"]);let a=g=>(...p)=>{!this.writable&&!this.destroyed?g(...p):this.once("finish",()=>{g(...p)})};s.once("response",a((g,p,f)=>{let m=new VQs(this.socket,s.readableHighWaterMark);this.res=m,m.req=this,m.statusCode=g[xun],m.headers=g,m.rawHeaders=f,m.once("end",()=>{this.aborted?(m.aborted=!0,m.emit("aborted")):(m.complete=!0,m.socket=null,m.connection=null)}),t?(m.upgrade=!0,this.emit("connect",m,s,Buffer.alloc(0))?this.emit("close"):s.destroy()):(s.on("data",y=>{!m._dumped&&!m.push(y)&&s.pause()}),s.once("end",()=>{m.push(null)}),this.emit("response",m)||m._dump())})),s.once("headers",a(g=>this.emit("information",{statusCode:g[xun]}))),s.once("trailers",a((g,p,f)=>{let{res:m}=this;m.trailers=g,m.rawTrailers=f}));let{socket:o}=s.session;this.socket=o,this.connection=o;for(let g of this[K9e])g();this.emit("socket",this.socket)};if(this[ZXt])try{r(this[ZXt].request(this[uk]))}catch(s){this.emit("error",s)}else{this.reusedSocket=!0;try{r(await this.agent.request(this[FXt],this[Fun],this[uk]))}catch(s){this.emit("error",s)}}}getHeader(t){if(typeof t!="string")throw new GXt("name","string",t);return this[uk][t.toLowerCase()]}get headersSent(){return this[dit]}removeHeader(t){if(typeof t!="string")throw new GXt("name","string",t);if(this.headersSent)throw new Dun("remove");delete this[uk][t.toLowerCase()]}setHeader(t,r){if(this.headersSent)throw new Dun("set");if(typeof t!="string"||!JQs.test(t)&&!OQs(t))throw new QQs("Header name",t);if(typeof r>"u")throw new YQs(r,t);if(UQs.test(r))throw new HQs("header content",t);this[uk][t.toLowerCase()]=r}setNoDelay(){}setSocketKeepAlive(){}setTimeout(t,r){let s=()=>this._request.setTimeout(t,r);return this._request?s():this[K9e].push(s),this}get maxHeadersCount(){if(!this.destroyed&&this._request)return this._request.session.localSettings.maxHeaderListSize}set maxHeadersCount(t){}};Zun.exports=LXt});var Vun=z((SPc,Lun)=>{"use strict";var KQs=Dt("tls");Lun.exports=(e={},t=KQs.connect)=>new Promise((r,s)=>{let a=!1,o,g=async()=>{await f,o.off("timeout",p),o.off("error",s),e.resolveSocket?(r({alpnProtocol:o.alpnProtocol,socket:o,timeout:a}),a&&(await Promise.resolve(),o.emit("timeout"))):(o.destroy(),r({alpnProtocol:o.alpnProtocol,timeout:a}))},p=async()=>{a=!0,g()},f=(async()=>{try{o=await t(e,g),o.on("error",s),o.once("timeout",p)}catch(m){s(m)}})()})});var Pun=z((wPc,Wun)=>{"use strict";var jQs=Dt("net");Wun.exports=e=>{let t=e.host,r=e.headers&&e.headers.host;return r&&(r.startsWith("[")?r.indexOf("]")===-1?t=r:t=r.slice(1,-1):t=r.split(":",1)[0]),jQs.isIP(t)?"":t}});var Qun=z((TPc,PXt)=>{"use strict";var Oun=Dt("http"),WXt=Dt("https"),zQs=Vun(),qQs=TXt(),$Qs=VXt(),eYs=Pun(),tYs=kXt(),pit=new qQs({maxSize:100}),j9e=new Map,Mun=(e,t,r)=>{t._httpMessage={shouldKeepAlive:!0};let s=()=>{e.emit("free",t,r)};t.on("free",s);let a=()=>{e.removeSocket(t,r)};t.on("close",a);let o=()=>{e.removeSocket(t,r),t.off("close",a),t.off("free",s),t.off("agentRemove",o)};t.on("agentRemove",o),e.emit("free",t,r)},rYs=async e=>{let t=`${e.host}:${e.port}:${e.ALPNProtocols.sort()}`;if(!pit.has(t)){if(j9e.has(t))return(await j9e.get(t)).alpnProtocol;let{path:r,agent:s}=e;e.path=e.socketPath;let a=zQs(e);j9e.set(t,a);try{let{socket:o,alpnProtocol:g}=await a;if(pit.set(t,g),e.path=r,g==="h2")o.destroy();else{let{globalAgent:p}=WXt,f=WXt.Agent.prototype.createConnection;s?s.createConnection===f?Mun(s,o,e):o.destroy():p.createConnection===f?Mun(p,o,e):o.destroy()}return j9e.delete(t),g}catch(o){throw j9e.delete(t),o}}return pit.get(t)};PXt.exports=async(e,t,r)=>{if((typeof e=="string"||e instanceof URL)&&(e=tYs(new URL(e))),typeof t=="function"&&(r=t,t=void 0),t={ALPNProtocols:["h2","http/1.1"],...e,...t,resolveSocket:!0},!Array.isArray(t.ALPNProtocols)||t.ALPNProtocols.length===0)throw new Error("The `ALPNProtocols` option must be an Array with at least one entry");t.protocol=t.protocol||"https:";let s=t.protocol==="https:";t.host=t.hostname||t.host||"localhost",t.session=t.tlsSession,t.servername=t.servername||eYs(t),t.port=t.port||(s?443:80),t._defaultAgent=s?WXt.globalAgent:Oun.globalAgent;let a=t.agent;if(a){if(a.addRequest)throw new Error("The `options.agent` object can contain only `http`, `https` or `http2` properties");t.agent=a[s?"https":"http"]}return s&&await rYs(t)==="h2"?(a&&(t.agent=a.http2),new $Qs(t,r)):Oun.request(t,r)};PXt.exports.protocolCache=pit});var Hun=z((NPc,Yun)=>{"use strict";var nYs=Dt("http2"),iYs=RXt(),OXt=VXt(),sYs=xXt(),oYs=Qun(),aYs=(e,t,r)=>new OXt(e,t,r),cYs=(e,t,r)=>{let s=new OXt(e,t,r);return s.end(),s};Yun.exports={...nYs,ClientRequest:OXt,IncomingMessage:sYs,...iYs,request:aYs,get:cYs,auto:oYs}});var QXt=z(MXt=>{"use strict";Object.defineProperty(MXt,"__esModule",{value:!0});var Xun=oj();MXt.default=e=>Xun.default.nodeStream(e)&&Xun.default.function_(e.getBoundary)});var jun=z(YXt=>{"use strict";Object.defineProperty(YXt,"__esModule",{value:!0});var Uun=Dt("fs"),Kun=Dt("util"),Jun=oj(),lYs=QXt(),uYs=Kun.promisify(Uun.stat);YXt.default=async(e,t)=>{if(t&&"content-length"in t)return Number(t["content-length"]);if(!e)return 0;if(Jun.default.string(e))return Buffer.byteLength(e);if(Jun.default.buffer(e))return e.length;if(lYs.default(e))return Kun.promisify(e.getLength.bind(e))();if(e instanceof Uun.ReadStream){let{size:r}=await uYs(e.path);return r===0?void 0:r}}});var XXt=z(HXt=>{"use strict";Object.defineProperty(HXt,"__esModule",{value:!0});function gYs(e,t,r){let s={};for(let a of r)s[a]=(...o)=>{t.emit(a,...o)},e.on(a,s[a]);return()=>{for(let a of r)e.off(a,s[a])}}HXt.default=gYs});var zun=z(JXt=>{"use strict";Object.defineProperty(JXt,"__esModule",{value:!0});JXt.default=()=>{let e=[];return{once(t,r,s){t.once(r,s),e.push({origin:t,event:r,fn:s})},unhandleAll(){for(let t of e){let{origin:r,event:s,fn:a}=t;r.removeListener(s,a)}e.length=0}}}});var $un=z(z9e=>{"use strict";Object.defineProperty(z9e,"__esModule",{value:!0});z9e.TimeoutError=void 0;var AYs=Dt("net"),dYs=zun(),qun=Symbol("reentry"),pYs=()=>{},fit=class extends Error{constructor(t,r){super(`Timeout awaiting '${r}' for ${t}ms`),this.event=r,this.name="TimeoutError",this.code="ETIMEDOUT"}};z9e.TimeoutError=fit;z9e.default=(e,t,r)=>{if(qun in e)return pYs;e[qun]=!0;let s=[],{once:a,unhandleAll:o}=dYs.default(),g=(B,v,G)=>{var T;let O=setTimeout(v,B,B,G);(T=O.unref)===null||T===void 0||T.call(O);let X=()=>{clearTimeout(O)};return s.push(X),X},{host:p,hostname:f}=r,m=(B,v)=>{e.destroy(new fit(B,v))},y=()=>{for(let B of s)B();o()};if(e.once("error",B=>{if(y(),e.listenerCount("error")===0)throw B}),e.once("close",y),a(e,"response",B=>{a(B,"end",y)}),typeof t.request<"u"&&g(t.request,m,"request"),typeof t.socket<"u"){let B=()=>{m(t.socket,"socket")};e.setTimeout(t.socket,B),s.push(()=>{e.removeListener("timeout",B)})}return a(e,"socket",B=>{var v;let{socketPath:G}=e;if(B.connecting){let T=!!(G??AYs.isIP((v=f??p)!==null&&v!==void 0?v:"")!==0);if(typeof t.lookup<"u"&&!T&&typeof B.address().address>"u"){let O=g(t.lookup,m,"lookup");a(B,"lookup",O)}if(typeof t.connect<"u"){let O=()=>g(t.connect,m,"connect");T?a(B,"connect",O()):a(B,"lookup",X=>{X===null&&a(B,"connect",O())})}typeof t.secureConnect<"u"&&r.protocol==="https:"&&a(B,"connect",()=>{let O=g(t.secureConnect,m,"secureConnect");a(B,"secureConnect",O)})}if(typeof t.send<"u"){let T=()=>g(t.send,m,"send");B.connecting?a(B,"connect",()=>{a(e,"upload-complete",T())}):a(e,"upload-complete",T())}}),typeof t.response<"u"&&a(e,"upload-complete",()=>{let B=g(t.response,m,"response");a(e,"response",B)}),y}});var tgn=z(UXt=>{"use strict";Object.defineProperty(UXt,"__esModule",{value:!0});var egn=oj();UXt.default=e=>{e=e;let t={protocol:e.protocol,hostname:egn.default.string(e.hostname)&&e.hostname.startsWith("[")?e.hostname.slice(1,-1):e.hostname,host:e.host,hash:e.hash,search:e.search,pathname:e.pathname,href:e.href,path:`${e.pathname||""}${e.search||""}`};return egn.default.string(e.port)&&e.port.length>0&&(t.port=Number(e.port)),(e.username||e.password)&&(t.auth=`${e.username||""}:${e.password||""}`),t}});var rgn=z(KXt=>{"use strict";Object.defineProperty(KXt,"__esModule",{value:!0});var fYs=Dt("url"),IYs=["protocol","host","hostname","port","pathname","search"];KXt.default=(e,t)=>{var r,s;if(t.path){if(t.pathname)throw new TypeError("Parameters `path` and `pathname` are mutually exclusive.");if(t.search)throw new TypeError("Parameters `path` and `search` are mutually exclusive.");if(t.searchParams)throw new TypeError("Parameters `path` and `searchParams` are mutually exclusive.")}if(t.search&&t.searchParams)throw new TypeError("Parameters `search` and `searchParams` are mutually exclusive.");if(!e){if(!t.protocol)throw new TypeError("No URL protocol specified");e=`${t.protocol}//${(s=(r=t.hostname)!==null&&r!==void 0?r:t.host)!==null&&s!==void 0?s:""}`}let a=new fYs.URL(e);if(t.path){let o=t.path.indexOf("?");o===-1?t.pathname=t.path:(t.pathname=t.path.slice(0,o),t.search=t.path.slice(o+1)),delete t.path}for(let o of IYs)t[o]&&(a[o]=t[o].toString());return a}});var ngn=z(zXt=>{"use strict";Object.defineProperty(zXt,"__esModule",{value:!0});var jXt=class{constructor(){this.weakMap=new WeakMap,this.map=new Map}set(t,r){typeof t=="object"?this.weakMap.set(t,r):this.map.set(t,r)}get(t){return typeof t=="object"?this.weakMap.get(t):this.map.get(t)}has(t){return typeof t=="object"?this.weakMap.has(t):this.map.has(t)}};zXt.default=jXt});var $Xt=z(qXt=>{"use strict";Object.defineProperty(qXt,"__esModule",{value:!0});var CYs=async e=>{let t=[],r=0;for await(let s of e)t.push(s),r+=Buffer.byteLength(s);return Buffer.isBuffer(t[0])?Buffer.concat(t,r):Buffer.from(t.join(""))};qXt.default=CYs});var sgn=z(AAe=>{"use strict";Object.defineProperty(AAe,"__esModule",{value:!0});AAe.dnsLookupIpVersionToFamily=AAe.isDnsLookupIpVersion=void 0;var ign={auto:0,ipv4:4,ipv6:6};AAe.isDnsLookupIpVersion=e=>e in ign;AAe.dnsLookupIpVersionToFamily=e=>{if(AAe.isDnsLookupIpVersion(e))return ign[e];throw new Error("Invalid DNS lookup IP version")}});var e4t=z(Iit=>{"use strict";Object.defineProperty(Iit,"__esModule",{value:!0});Iit.isResponseOk=void 0;Iit.isResponseOk=e=>{let{statusCode:t}=e,r=e.request.options.followRedirect?299:399;return t>=200&&t<=r||t===304}});var agn=z(t4t=>{"use strict";Object.defineProperty(t4t,"__esModule",{value:!0});var ogn=new Set;t4t.default=e=>{ogn.has(e)||(ogn.add(e),process.emitWarning(`Got: ${e}`,{type:"DeprecationWarning"}))}});var cgn=z(r4t=>{"use strict";Object.defineProperty(r4t,"__esModule",{value:!0});var qE=oj(),mYs=(e,t)=>{if(qE.default.null_(e.encoding))throw new TypeError("To get a Buffer, set `options.responseType` to `buffer` instead");qE.assert.any([qE.default.string,qE.default.undefined],e.encoding),qE.assert.any([qE.default.boolean,qE.default.undefined],e.resolveBodyOnly),qE.assert.any([qE.default.boolean,qE.default.undefined],e.methodRewriting),qE.assert.any([qE.default.boolean,qE.default.undefined],e.isStream),qE.assert.any([qE.default.string,qE.default.undefined],e.responseType),e.responseType===void 0&&(e.responseType="text");let{retry:r}=e;if(t?e.retry={...t.retry}:e.retry={calculateDelay:s=>s.computedValue,limit:0,methods:[],statusCodes:[],errorCodes:[],maxRetryAfter:void 0},qE.default.object(r)?(e.retry={...e.retry,...r},e.retry.methods=[...new Set(e.retry.methods.map(s=>s.toUpperCase()))],e.retry.statusCodes=[...new Set(e.retry.statusCodes)],e.retry.errorCodes=[...new Set(e.retry.errorCodes)]):qE.default.number(r)&&(e.retry.limit=r),qE.default.undefined(e.retry.maxRetryAfter)&&(e.retry.maxRetryAfter=Math.min(...[e.timeout.request,e.timeout.connect].filter(qE.default.number))),qE.default.object(e.pagination)){t&&(e.pagination={...t.pagination,...e.pagination});let{pagination:s}=e;if(!qE.default.function_(s.transform))throw new Error("`options.pagination.transform` must be implemented");if(!qE.default.function_(s.shouldContinue))throw new Error("`options.pagination.shouldContinue` must be implemented");if(!qE.default.function_(s.filter))throw new TypeError("`options.pagination.filter` must be implemented");if(!qE.default.function_(s.paginate))throw new Error("`options.pagination.paginate` must be implemented")}return e.responseType==="json"&&e.headers.accept===void 0&&(e.headers.accept="application/json"),e};r4t.default=mYs});var lgn=z(q9e=>{"use strict";Object.defineProperty(q9e,"__esModule",{value:!0});q9e.retryAfterStatusCodes=void 0;q9e.retryAfterStatusCodes=new Set([413,429,503]);var hYs=({attemptCount:e,retryOptions:t,error:r,retryAfter:s})=>{if(e>t.limit)return 0;let a=t.methods.includes(r.options.method),o=t.errorCodes.includes(r.code),g=r.response&&t.statusCodes.includes(r.response.statusCode);if(!a||!o&&!g)return 0;if(r.response){if(s)return t.maxRetryAfter===void 0||s>t.maxRetryAfter?0:s;if(r.response.statusCode===413)return 0}let p=Math.random()*100;return 2**(e-1)*1e3+p};q9e.default=hYs});var tVe=z(p_=>{"use strict";Object.defineProperty(p_,"__esModule",{value:!0});p_.UnsupportedProtocolError=p_.ReadError=p_.TimeoutError=p_.UploadError=p_.CacheError=p_.HTTPError=p_.MaxRedirectsError=p_.RequestError=p_.setNonEnumerableProperties=p_.knownHookEvents=p_.withoutBody=p_.kIsNormalizedAlready=void 0;var ugn=Dt("util"),ggn=Dt("stream"),_Ys=Dt("fs"),mne=Dt("url"),Agn=Dt("http"),n4t=Dt("http"),yYs=Dt("https"),bYs=vln(),EYs=xln(),dgn=Aun(),BYs=Iun(),vYs=Hun(),SYs=git(),Aa=oj(),wYs=jun(),pgn=QXt(),TYs=XXt(),fgn=$un(),NYs=tgn(),Ign=rgn(),RYs=ngn(),DYs=$Xt(),Cgn=sgn(),xYs=e4t(),hne=agn(),kYs=cgn(),GYs=lgn(),i4t,wD=Symbol("request"),hit=Symbol("response"),Qbe=Symbol("responseSize"),Ybe=Symbol("downloadedSize"),Hbe=Symbol("bodySize"),Xbe=Symbol("uploadedSize"),Cit=Symbol("serverResponsesPiped"),mgn=Symbol("unproxyEvents"),hgn=Symbol("isFromCache"),s4t=Symbol("cancelTimeouts"),_gn=Symbol("startedReading"),Jbe=Symbol("stopReading"),mit=Symbol("triggerRead"),_ne=Symbol("body"),$9e=Symbol("jobs"),ygn=Symbol("originalResponse"),bgn=Symbol("retryTimeout");p_.kIsNormalizedAlready=Symbol("isNormalizedAlready");var FYs=Aa.default.string(process.versions.brotli);p_.withoutBody=new Set(["GET","HEAD"]);p_.knownHookEvents=["init","beforeRequest","beforeRedirect","beforeError","beforeRetry","afterResponse"];function ZYs(e){for(let t in e){let r=e[t];if(!Aa.default.string(r)&&!Aa.default.number(r)&&!Aa.default.boolean(r)&&!Aa.default.null_(r)&&!Aa.default.undefined(r))throw new TypeError(`The \`searchParams\` value '${String(r)}' must be a string, number, boolean or null`)}}function LYs(e){return Aa.default.object(e)&&!("statusCode"in e)}var o4t=new RYs.default,VYs=async e=>new Promise((t,r)=>{let s=a=>{r(a)};e.pending||t(),e.once("error",s),e.once("ready",()=>{e.off("error",s),t()})}),WYs=new Set([300,301,302,303,304,307,308]),PYs=["context","body","json","form"];p_.setNonEnumerableProperties=(e,t)=>{let r={};for(let s of e)if(s)for(let a of PYs)a in s&&(r[a]={writable:!0,configurable:!0,enumerable:!1,value:s[a]});Object.defineProperties(t,r)};var qv=class extends Error{constructor(t,r,s){var a,o;if(super(t),Error.captureStackTrace(this,this.constructor),this.name="RequestError",this.code=(a=r.code)!==null&&a!==void 0?a:"ERR_GOT_REQUEST_ERROR",s instanceof Sit?(Object.defineProperty(this,"request",{enumerable:!1,value:s}),Object.defineProperty(this,"response",{enumerable:!1,value:s[hit]}),Object.defineProperty(this,"options",{enumerable:!1,value:s.options})):Object.defineProperty(this,"options",{enumerable:!1,value:s}),this.timings=(o=this.request)===null||o===void 0?void 0:o.timings,Aa.default.string(r.stack)&&Aa.default.string(this.stack)){let g=this.stack.indexOf(this.message)+this.message.length,p=this.stack.slice(g).split(` +`,a)}while(s!==-1);return o+=e.substr(a),o};zen.exports={stringReplaceAll:uRs,stringEncaseCRLFWithFirstIndex:gRs}});var ntn=z((r9c,rtn)=>{"use strict";var ARs=/(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,$en=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,dRs=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,pRs=/\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.)|([^\\])/gi,fRs=new Map([["n",` +`],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e","\x1B"],["a","\x07"]]);function ttn(e){let t=e[0]==="u",r=e[1]==="{";return t&&!r&&e.length===5||e[0]==="x"&&e.length===3?String.fromCharCode(parseInt(e.slice(1),16)):t&&r?String.fromCodePoint(parseInt(e.slice(2,-1),16)):fRs.get(e)||e}function IRs(e,t){let r=[],s=t.trim().split(/\s*,\s*/g),a;for(let o of s){let g=Number(o);if(!Number.isNaN(g))r.push(g);else if(a=o.match(dRs))r.push(a[2].replace(pRs,(p,f,m)=>f?ttn(f):m));else throw new Error(`Invalid Chalk template style argument: ${o} (in style '${e}')`)}return r}function CRs(e){$en.lastIndex=0;let t=[],r;for(;(r=$en.exec(e))!==null;){let s=r[1];if(r[2]){let a=IRs(s,r[2]);t.push([s].concat(a))}else t.push([s])}return t}function etn(e,t){let r={};for(let a of t)for(let o of a.styles)r[o[0]]=a.inverse?null:o.slice(1);let s=e;for(let[a,o]of Object.entries(r))if(Array.isArray(o)){if(!(a in s))throw new Error(`Unknown Chalk style: ${a}`);s=o.length>0?s[a](...o):s[a]}return s}rtn.exports=(e,t)=>{let r=[],s=[],a=[];if(t.replace(ARs,(o,g,p,f,m,y)=>{if(g)a.push(ttn(g));else if(f){let B=a.join("");a=[],s.push(r.length===0?B:etn(e,r)(B)),r.push({inverse:p,styles:CRs(f)})}else if(m){if(r.length===0)throw new Error("Found extraneous } in Chalk template literal");s.push(etn(e,r)(a.join(""))),a=[],r.pop()}else a.push(y)}),s.push(a.join("")),r.length>0){let o=`Chalk template literal is missing ${r.length} closing bracket${r.length===1?"":"s"} (\`}\`)`;throw new Error(o)}return s.join("")}});var yMt=z((n9c,atn)=>{"use strict";var h9e=m9e(),{stdout:CMt,stderr:mMt}=krt(),{stringReplaceAll:mRs,stringEncaseCRLFWithFirstIndex:hRs}=qen(),itn=["ansi","ansi","ansi256","ansi16m"],Abe=Object.create(null),_Rs=(e,t={})=>{if(t.level>3||t.level<0)throw new Error("The `level` option should be an integer from 0 to 3");let r=CMt?CMt.level:0;e.level=t.level===void 0?r:t.level},hMt=class{constructor(t){return stn(t)}},stn=e=>{let t={};return _Rs(t,e),t.template=(...r)=>ERs(t.template,...r),Object.setPrototypeOf(t,Grt.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=()=>{throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.")},t.template.Instance=hMt,t.template};function Grt(e){return stn(e)}for(let[e,t]of Object.entries(h9e))Abe[e]={get(){let r=Frt(this,_Mt(t.open,t.close,this._styler),this._isEmpty);return Object.defineProperty(this,e,{value:r}),r}};Abe.visible={get(){let e=Frt(this,this._styler,!0);return Object.defineProperty(this,"visible",{value:e}),e}};var otn=["rgb","hex","keyword","hsl","hsv","hwb","ansi","ansi256"];for(let e of otn)Abe[e]={get(){let{level:t}=this;return function(...r){let s=_Mt(h9e.color[itn[t]][e](...r),h9e.color.close,this._styler);return Frt(this,s,this._isEmpty)}}};for(let e of otn){let t="bg"+e[0].toUpperCase()+e.slice(1);Abe[t]={get(){let{level:r}=this;return function(...s){let a=_Mt(h9e.bgColor[itn[r]][e](...s),h9e.bgColor.close,this._styler);return Frt(this,a,this._isEmpty)}}}}var yRs=Object.defineProperties(()=>{},{...Abe,level:{enumerable:!0,get(){return this._generator.level},set(e){this._generator.level=e}}}),_Mt=(e,t,r)=>{let s,a;return r===void 0?(s=e,a=t):(s=r.openAll+e,a=t+r.closeAll),{open:e,close:t,openAll:s,closeAll:a,parent:r}},Frt=(e,t,r)=>{let s=(...a)=>bRs(s,a.length===1?""+a[0]:a.join(" "));return s.__proto__=yRs,s._generator=e,s._styler=t,s._isEmpty=r,s},bRs=(e,t)=>{if(e.level<=0||!t)return e._isEmpty?"":t;let r=e._styler;if(r===void 0)return t;let{openAll:s,closeAll:a}=r;if(t.indexOf("\x1B")!==-1)for(;r!==void 0;)t=mRs(t,r.close,r.open),r=r.parent;let o=t.indexOf(` +`);return o!==-1&&(t=hRs(t,a,s,o)),s+t+a},IMt,ERs=(e,...t)=>{let[r]=t;if(!Array.isArray(r))return t.join(" ");let s=t.slice(1),a=[r.raw[0]];for(let o=1;o{"use strict";pO.isInteger=e=>typeof e=="number"?Number.isInteger(e):typeof e=="string"&&e.trim()!==""?Number.isInteger(Number(e)):!1;pO.find=(e,t)=>e.nodes.find(r=>r.type===t);pO.exceedsLimit=(e,t,r=1,s)=>s===!1||!pO.isInteger(e)||!pO.isInteger(t)?!1:(Number(t)-Number(e))/Number(r)>=s;pO.escapeNode=(e,t=0,r)=>{let s=e.nodes[t];s&&(r&&s.type===r||s.type==="open"||s.type==="close")&&s.escaped!==!0&&(s.value="\\"+s.value,s.escaped=!0)};pO.encloseBrace=e=>e.type!=="brace"||e.commas>>0+e.ranges>>0?!1:(e.invalid=!0,!0);pO.isInvalidBrace=e=>e.type!=="brace"?!1:e.invalid===!0||e.dollar?!0:!(e.commas>>0+e.ranges>>0)||e.open!==!0||e.close!==!0?(e.invalid=!0,!0):!1;pO.isOpenOrClose=e=>e.type==="open"||e.type==="close"?!0:e.open===!0||e.close===!0;pO.reduce=e=>e.reduce((t,r)=>(r.type==="text"&&t.push(r.value),r.type==="range"&&(r.type="text"),t),[]);pO.flatten=(...e)=>{let t=[],r=s=>{for(let a=0;a{"use strict";var ctn=Zrt();ltn.exports=(e,t={})=>{let r=(s,a={})=>{let o=t.escapeInvalid&&ctn.isInvalidBrace(a),g=s.invalid===!0&&t.escapeInvalid===!0,p="";if(s.value)return(o||g)&&ctn.isOpenOrClose(s)?"\\"+s.value:s.value;if(s.value)return s.value;if(s.nodes)for(let f of s.nodes)p+=r(f);return p};return r(e)}});var gtn=z((o9c,utn)=>{"use strict";utn.exports=function(e){return typeof e=="number"?e-e===0:typeof e=="string"&&e.trim()!==""?Number.isFinite?Number.isFinite(+e):isFinite(+e):!1}});var _tn=z((a9c,htn)=>{"use strict";var Atn=gtn(),aAe=(e,t,r)=>{if(Atn(e)===!1)throw new TypeError("toRegexRange: expected the first argument to be a number");if(t===void 0||e===t)return String(e);if(Atn(t)===!1)throw new TypeError("toRegexRange: expected the second argument to be a number.");let s={relaxZeros:!0,...r};typeof s.strictZeros=="boolean"&&(s.relaxZeros=s.strictZeros===!1);let a=String(s.relaxZeros),o=String(s.shorthand),g=String(s.capture),p=String(s.wrap),f=e+":"+t+"="+a+o+g+p;if(aAe.cache.hasOwnProperty(f))return aAe.cache[f].result;let m=Math.min(e,t),y=Math.max(e,t);if(Math.abs(m-y)===1){let O=e+"|"+t;return s.capture?`(${O})`:s.wrap===!1?O:`(?:${O})`}let B=mtn(e)||mtn(t),v={min:e,max:t,a:m,b:y},k=[],T=[];if(B&&(v.isPadded=B,v.maxLen=String(v.max).length),m<0){let O=y<0?Math.abs(y):1;T=dtn(O,Math.abs(m),v,s),m=v.a=0}return y>=0&&(k=dtn(m,y,v,s)),v.negatives=T,v.positives=k,v.result=BRs(T,k,s),s.capture===!0?v.result=`(${v.result})`:s.wrap!==!1&&k.length+T.length>1&&(v.result=`(?:${v.result})`),aAe.cache[f]=v,v.result};function BRs(e,t,r){let s=bMt(e,t,"-",!1,r)||[],a=bMt(t,e,"",!1,r)||[],o=bMt(e,t,"-?",!0,r)||[];return s.concat(o).concat(a).join("|")}function vRs(e,t){let r=1,s=1,a=ftn(e,r),o=new Set([t]);for(;e<=a&&a<=t;)o.add(a),r+=1,a=ftn(e,r);for(a=Itn(t+1,s)-1;e1&&p.count.pop(),p.count.push(y.count[0]),p.string=p.pattern+Ctn(p.count),g=m+1;continue}r.isPadded&&(B=RRs(m,r,s)),y.string=B+y.pattern+Ctn(y.count),o.push(y),g=m+1,p=y}return o}function bMt(e,t,r,s,a){let o=[];for(let g of e){let{string:p}=g;!s&&!ptn(t,"string",p)&&o.push(r+p),s&&ptn(t,"string",p)&&o.push(r+p)}return o}function wRs(e,t){let r=[];for(let s=0;st?1:t>e?-1:0}function ptn(e,t,r){return e.some(s=>s[t]===r)}function ftn(e,t){return Number(String(e).slice(0,-t)+"9".repeat(t))}function Itn(e,t){return e-e%Math.pow(10,t)}function Ctn(e){let[t=0,r=""]=e;return r||t>1?`{${t+(r?","+r:"")}}`:""}function NRs(e,t,r){return`[${e}${t-e===1?"":"-"}${t}]`}function mtn(e){return/^-?(0+)\d/.test(e)}function RRs(e,t,r){if(!t.isPadded)return e;let s=Math.abs(t.maxLen-String(e).length),a=r.relaxZeros!==!1;switch(s){case 0:return"";case 1:return a?"0?":"0";case 2:return a?"0{0,2}":"00";default:return a?`0{0,${s}}`:`0{${s}}`}}aAe.cache={};aAe.clearCache=()=>aAe.cache={};htn.exports=aAe});var vMt=z((c9c,wtn)=>{"use strict";var DRs=xt("util"),btn=_tn(),ytn=e=>e!==null&&typeof e=="object"&&!Array.isArray(e),xRs=e=>t=>e===!0?Number(t):String(t),EMt=e=>typeof e=="number"||typeof e=="string"&&e!=="",y9e=e=>Number.isInteger(+e),BMt=e=>{let t=`${e}`,r=-1;if(t[0]==="-"&&(t=t.slice(1)),t==="0")return!1;for(;t[++r]==="0";);return r>0},kRs=(e,t,r)=>typeof e=="string"||typeof t=="string"?!0:r.stringify===!0,GRs=(e,t,r)=>{if(t>0){let s=e[0]==="-"?"-":"";s&&(e=e.slice(1)),e=s+e.padStart(s?t-1:t,"0")}return r===!1?String(e):e},Wrt=(e,t)=>{let r=e[0]==="-"?"-":"";for(r&&(e=e.slice(1),t--);e.length{e.negatives.sort((p,f)=>pf?1:0),e.positives.sort((p,f)=>pf?1:0);let s=t.capture?"":"?:",a="",o="",g;return e.positives.length&&(a=e.positives.map(p=>Wrt(String(p),r)).join("|")),e.negatives.length&&(o=`-(${s}${e.negatives.map(p=>Wrt(String(p),r)).join("|")})`),a&&o?g=`${a}|${o}`:g=a||o,t.wrap?`(${s}${g})`:g},Etn=(e,t,r,s)=>{if(r)return btn(e,t,{wrap:!1,...s});let a=String.fromCharCode(e);if(e===t)return a;let o=String.fromCharCode(t);return`[${a}-${o}]`},Btn=(e,t,r)=>{if(Array.isArray(e)){let s=r.wrap===!0,a=r.capture?"":"?:";return s?`(${a}${e.join("|")})`:e.join("|")}return btn(e,t,r)},vtn=(...e)=>new RangeError("Invalid range arguments: "+DRs.inspect(...e)),Stn=(e,t,r)=>{if(r.strictRanges===!0)throw vtn([e,t]);return[]},ZRs=(e,t)=>{if(t.strictRanges===!0)throw new TypeError(`Expected step "${e}" to be a number`);return[]},LRs=(e,t,r=1,s={})=>{let a=Number(e),o=Number(t);if(!Number.isInteger(a)||!Number.isInteger(o)){if(s.strictRanges===!0)throw vtn([e,t]);return[]}a===0&&(a=0),o===0&&(o=0);let g=a>o,p=String(e),f=String(t),m=String(r);r=Math.max(Math.abs(r),1);let y=BMt(p)||BMt(f)||BMt(m),B=y?Math.max(p.length,f.length,m.length):0,v=y===!1&&kRs(e,t,s)===!1,k=s.transform||xRs(v);if(s.toRegex&&r===1)return Etn(Wrt(e,B),Wrt(t,B),!0,s);let T={negatives:[],positives:[]},O=le=>T[le<0?"negatives":"positives"].push(Math.abs(le)),X=[],U=0;for(;g?a>=o:a<=o;)s.toRegex===!0&&r>1?O(a):X.push(GRs(k(a,U),B,v)),a=g?a-r:a+r,U++;return s.toRegex===!0?r>1?FRs(T,s,B):Btn(X,null,{wrap:!1,...s}):X},VRs=(e,t,r=1,s={})=>{if(!y9e(e)&&e.length>1||!y9e(t)&&t.length>1)return Stn(e,t,s);let a=s.transform||(v=>String.fromCharCode(v)),o=`${e}`.charCodeAt(0),g=`${t}`.charCodeAt(0),p=o>g,f=Math.min(o,g),m=Math.max(o,g);if(s.toRegex&&r===1)return Etn(f,m,!1,s);let y=[],B=0;for(;p?o>=g:o<=g;)y.push(a(o,B)),o=p?o-r:o+r,B++;return s.toRegex===!0?Btn(y,null,{wrap:!1,options:s}):y},Vrt=(e,t,r,s={})=>{if(t==null&&EMt(e))return[e];if(!EMt(e)||!EMt(t))return Stn(e,t,s);if(typeof r=="function")return Vrt(e,t,1,{transform:r});if(ytn(r))return Vrt(e,t,0,r);let a={...s};return a.capture===!0&&(a.wrap=!0),r=r||a.step||1,y9e(r)?y9e(e)&&y9e(t)?LRs(e,t,r,a):VRs(e,t,Math.max(Math.abs(r),1),a):r!=null&&!ytn(r)?ZRs(r,a):Vrt(e,t,1,r)};wtn.exports=Vrt});var Rtn=z((l9c,Ntn)=>{"use strict";var WRs=vMt(),Ttn=Zrt(),PRs=(e,t={})=>{let r=(s,a={})=>{let o=Ttn.isInvalidBrace(a),g=s.invalid===!0&&t.escapeInvalid===!0,p=o===!0||g===!0,f=t.escapeInvalid===!0?"\\":"",m="";if(s.isOpen===!0)return f+s.value;if(s.isClose===!0)return console.log("node.isClose",f,s.value),f+s.value;if(s.type==="open")return p?f+s.value:"(";if(s.type==="close")return p?f+s.value:")";if(s.type==="comma")return s.prev.type==="comma"?"":p?s.value:"|";if(s.value)return s.value;if(s.nodes&&s.ranges>0){let y=Ttn.reduce(s.nodes),B=WRs(...y,{...t,wrap:!1,toRegex:!0,strictZeros:!0});if(B.length!==0)return y.length>1&&B.length>1?`(${B})`:B}if(s.nodes)for(let y of s.nodes)m+=r(y,s);return m};return r(e)};Ntn.exports=PRs});var ktn=z((u9c,xtn)=>{"use strict";var ORs=vMt(),Dtn=Lrt(),dbe=Zrt(),cAe=(e="",t="",r=!1)=>{let s=[];if(e=[].concat(e),t=[].concat(t),!t.length)return e;if(!e.length)return r?dbe.flatten(t).map(a=>`{${a}}`):t;for(let a of e)if(Array.isArray(a))for(let o of a)s.push(cAe(o,t,r));else for(let o of t)r===!0&&typeof o=="string"&&(o=`{${o}}`),s.push(Array.isArray(o)?cAe(a,o,r):a+o);return dbe.flatten(s)},QRs=(e,t={})=>{let r=t.rangeLimit===void 0?1e3:t.rangeLimit,s=(a,o={})=>{a.queue=[];let g=o,p=o.queue;for(;g.type!=="brace"&&g.type!=="root"&&g.parent;)g=g.parent,p=g.queue;if(a.invalid||a.dollar){p.push(cAe(p.pop(),Dtn(a,t)));return}if(a.type==="brace"&&a.invalid!==!0&&a.nodes.length===2){p.push(cAe(p.pop(),["{}"]));return}if(a.nodes&&a.ranges>0){let B=dbe.reduce(a.nodes);if(dbe.exceedsLimit(...B,t.step,r))throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.");let v=ORs(...B,t);v.length===0&&(v=Dtn(a,t)),p.push(cAe(p.pop(),v)),a.nodes=[];return}let f=dbe.encloseBrace(a),m=a.queue,y=a;for(;y.type!=="brace"&&y.type!=="root"&&y.parent;)y=y.parent,m=y.queue;for(let B=0;B{"use strict";Gtn.exports={MAX_LENGTH:1e4,CHAR_0:"0",CHAR_9:"9",CHAR_UPPERCASE_A:"A",CHAR_LOWERCASE_A:"a",CHAR_UPPERCASE_Z:"Z",CHAR_LOWERCASE_Z:"z",CHAR_LEFT_PARENTHESES:"(",CHAR_RIGHT_PARENTHESES:")",CHAR_ASTERISK:"*",CHAR_AMPERSAND:"&",CHAR_AT:"@",CHAR_BACKSLASH:"\\",CHAR_BACKTICK:"`",CHAR_CARRIAGE_RETURN:"\r",CHAR_CIRCUMFLEX_ACCENT:"^",CHAR_COLON:":",CHAR_COMMA:",",CHAR_DOLLAR:"$",CHAR_DOT:".",CHAR_DOUBLE_QUOTE:'"',CHAR_EQUAL:"=",CHAR_EXCLAMATION_MARK:"!",CHAR_FORM_FEED:"\f",CHAR_FORWARD_SLASH:"/",CHAR_HASH:"#",CHAR_HYPHEN_MINUS:"-",CHAR_LEFT_ANGLE_BRACKET:"<",CHAR_LEFT_CURLY_BRACE:"{",CHAR_LEFT_SQUARE_BRACKET:"[",CHAR_LINE_FEED:` +`,CHAR_NO_BREAK_SPACE:"\xA0",CHAR_PERCENT:"%",CHAR_PLUS:"+",CHAR_QUESTION_MARK:"?",CHAR_RIGHT_ANGLE_BRACKET:">",CHAR_RIGHT_CURLY_BRACE:"}",CHAR_RIGHT_SQUARE_BRACKET:"]",CHAR_SEMICOLON:";",CHAR_SINGLE_QUOTE:"'",CHAR_SPACE:" ",CHAR_TAB:" ",CHAR_UNDERSCORE:"_",CHAR_VERTICAL_LINE:"|",CHAR_ZERO_WIDTH_NOBREAK_SPACE:"\uFEFF"}});var Ptn=z((A9c,Wtn)=>{"use strict";var MRs=Lrt(),{MAX_LENGTH:Ztn,CHAR_BACKSLASH:SMt,CHAR_BACKTICK:HRs,CHAR_COMMA:YRs,CHAR_DOT:XRs,CHAR_LEFT_PARENTHESES:JRs,CHAR_RIGHT_PARENTHESES:URs,CHAR_LEFT_CURLY_BRACE:KRs,CHAR_RIGHT_CURLY_BRACE:jRs,CHAR_LEFT_SQUARE_BRACKET:Ltn,CHAR_RIGHT_SQUARE_BRACKET:Vtn,CHAR_DOUBLE_QUOTE:zRs,CHAR_SINGLE_QUOTE:qRs,CHAR_NO_BREAK_SPACE:$Rs,CHAR_ZERO_WIDTH_NOBREAK_SPACE:eDs}=Ftn(),tDs=(e,t={})=>{if(typeof e!="string")throw new TypeError("Expected a string");let r=t||{},s=typeof r.maxLength=="number"?Math.min(Ztn,r.maxLength):Ztn;if(e.length>s)throw new SyntaxError(`Input length (${e.length}), exceeds max characters (${s})`);let a={type:"root",input:e,nodes:[]},o=[a],g=a,p=a,f=0,m=e.length,y=0,B=0,v,k=()=>e[y++],T=O=>{if(O.type==="text"&&p.type==="dot"&&(p.type="text"),p&&p.type==="text"&&O.type==="text"){p.value+=O.value;return}return g.nodes.push(O),O.parent=g,O.prev=p,p=O,O};for(T({type:"bos"});y0){if(g.ranges>0){g.ranges=0;let O=g.nodes.shift();g.nodes=[O,{type:"text",value:MRs(g)}]}T({type:"comma",value:v}),g.commas++;continue}if(v===XRs&&B>0&&g.commas===0){let O=g.nodes;if(B===0||O.length===0){T({type:"text",value:v});continue}if(p.type==="dot"){if(g.range=[],p.value+=v,p.type="range",g.nodes.length!==3&&g.nodes.length!==5){g.invalid=!0,g.ranges=0,p.type="text";continue}g.ranges++,g.args=[];continue}if(p.type==="range"){O.pop();let X=O[O.length-1];X.value+=p.value+v,p=X,g.ranges--;continue}T({type:"dot",value:v});continue}T({type:"text",value:v})}do if(g=o.pop(),g.type!=="root"){g.nodes.forEach(U=>{U.nodes||(U.type==="open"&&(U.isOpen=!0),U.type==="close"&&(U.isClose=!0),U.nodes||(U.type="text"),U.invalid=!0)});let O=o[o.length-1],X=O.nodes.indexOf(g);O.nodes.splice(X,1,...g.nodes)}while(o.length>0);return T({type:"eos"}),a};Wtn.exports=tDs});var Mtn=z((d9c,Qtn)=>{"use strict";var Otn=Lrt(),rDs=Rtn(),nDs=ktn(),iDs=Ptn(),dW=(e,t={})=>{let r=[];if(Array.isArray(e))for(let s of e){let a=dW.create(s,t);Array.isArray(a)?r.push(...a):r.push(a)}else r=[].concat(dW.create(e,t));return t&&t.expand===!0&&t.nodupes===!0&&(r=[...new Set(r)]),r};dW.parse=(e,t={})=>iDs(e,t);dW.stringify=(e,t={})=>Otn(typeof e=="string"?dW.parse(e,t):e,t);dW.compile=(e,t={})=>(typeof e=="string"&&(e=dW.parse(e,t)),rDs(e,t));dW.expand=(e,t={})=>{typeof e=="string"&&(e=dW.parse(e,t));let r=nDs(e,t);return t.noempty===!0&&(r=r.filter(Boolean)),t.nodupes===!0&&(r=[...new Set(r)]),r};dW.create=(e,t={})=>e===""||e.length<3?[e]:t.expand!==!0?dW.compile(e,t):dW.expand(e,t);Qtn.exports=dW});var b9e=z((p9c,Utn)=>{"use strict";var sDs=xt("path"),_J="\\\\/",Htn=`[^${_J}]`,oj="\\.",oDs="\\+",aDs="\\?",Prt="\\/",cDs="(?=.)",Ytn="[^/]",wMt=`(?:${Prt}|$)`,Xtn=`(?:^|${Prt})`,TMt=`${oj}{1,2}${wMt}`,lDs=`(?!${oj})`,uDs=`(?!${Xtn}${TMt})`,gDs=`(?!${oj}{0,1}${wMt})`,ADs=`(?!${TMt})`,dDs=`[^.${Prt}]`,pDs=`${Ytn}*?`,Jtn={DOT_LITERAL:oj,PLUS_LITERAL:oDs,QMARK_LITERAL:aDs,SLASH_LITERAL:Prt,ONE_CHAR:cDs,QMARK:Ytn,END_ANCHOR:wMt,DOTS_SLASH:TMt,NO_DOT:lDs,NO_DOTS:uDs,NO_DOT_SLASH:gDs,NO_DOTS_SLASH:ADs,QMARK_NO_DOT:dDs,STAR:pDs,START_ANCHOR:Xtn},fDs={...Jtn,SLASH_LITERAL:`[${_J}]`,QMARK:Htn,STAR:`${Htn}*?`,DOTS_SLASH:`${oj}{1,2}(?:[${_J}]|$)`,NO_DOT:`(?!${oj})`,NO_DOTS:`(?!(?:^|[${_J}])${oj}{1,2}(?:[${_J}]|$))`,NO_DOT_SLASH:`(?!${oj}{0,1}(?:[${_J}]|$))`,NO_DOTS_SLASH:`(?!${oj}{1,2}(?:[${_J}]|$))`,QMARK_NO_DOT:`[^.${_J}]`,START_ANCHOR:`(?:^|[${_J}])`,END_ANCHOR:`(?:[${_J}]|$)`},IDs={alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};Utn.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:IDs,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,SEP:sDs.sep,extglobChars(e){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${e.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(e){return e===!0?fDs:Jtn}}});var E9e=z(DL=>{"use strict";var CDs=xt("path"),mDs=process.platform==="win32",{REGEX_BACKSLASH:hDs,REGEX_REMOVE_BACKSLASH:_Ds,REGEX_SPECIAL_CHARS:yDs,REGEX_SPECIAL_CHARS_GLOBAL:bDs}=b9e();DL.isObject=e=>e!==null&&typeof e=="object"&&!Array.isArray(e);DL.hasRegexChars=e=>yDs.test(e);DL.isRegexChar=e=>e.length===1&&DL.hasRegexChars(e);DL.escapeRegex=e=>e.replace(bDs,"\\$1");DL.toPosixSlashes=e=>e.replace(hDs,"/");DL.removeBackslashes=e=>e.replace(_Ds,t=>t==="\\"?"":t);DL.supportsLookbehinds=()=>{let e=process.version.slice(1).split(".").map(Number);return e.length===3&&e[0]>=9||e[0]===8&&e[1]>=10};DL.isWindows=e=>e&&typeof e.windows=="boolean"?e.windows:mDs===!0||CDs.sep==="\\";DL.escapeLast=(e,t,r)=>{let s=e.lastIndexOf(t,r);return s===-1?e:e[s-1]==="\\"?DL.escapeLast(e,t,s-1):`${e.slice(0,s)}\\${e.slice(s)}`};DL.removePrefix=(e,t={})=>{let r=e;return r.startsWith("./")&&(r=r.slice(2),t.prefix="./"),r};DL.wrapOutput=(e,t={},r={})=>{let s=r.contains?"":"^",a=r.contains?"":"$",o=`${s}(?:${e})${a}`;return t.negated===!0&&(o=`(?:^(?!${o}).*$)`),o}});var rrn=z((I9c,trn)=>{"use strict";var Ktn=E9e(),{CHAR_ASTERISK:NMt,CHAR_AT:EDs,CHAR_BACKWARD_SLASH:B9e,CHAR_COMMA:BDs,CHAR_DOT:RMt,CHAR_EXCLAMATION_MARK:DMt,CHAR_FORWARD_SLASH:ern,CHAR_LEFT_CURLY_BRACE:xMt,CHAR_LEFT_PARENTHESES:kMt,CHAR_LEFT_SQUARE_BRACKET:vDs,CHAR_PLUS:SDs,CHAR_QUESTION_MARK:jtn,CHAR_RIGHT_CURLY_BRACE:wDs,CHAR_RIGHT_PARENTHESES:ztn,CHAR_RIGHT_SQUARE_BRACKET:TDs}=b9e(),qtn=e=>e===ern||e===B9e,$tn=e=>{e.isPrefix!==!0&&(e.depth=e.isGlobstar?1/0:1)},NDs=(e,t)=>{let r=t||{},s=e.length-1,a=r.parts===!0||r.scanToEnd===!0,o=[],g=[],p=[],f=e,m=-1,y=0,B=0,v=!1,k=!1,T=!1,O=!1,X=!1,U=!1,le=!1,ae=!1,ge=!1,fe=!1,pe=0,he,be,Te={value:"",depth:0,isGlob:!1},ke=()=>m>=s,x=()=>f.charCodeAt(m+1),et=()=>(he=be,f.charCodeAt(++m));for(;m0&&(Je=f.slice(0,y),f=f.slice(y),B-=y),Ue&&T===!0&&B>0?(Ue=f.slice(0,B),Xe=f.slice(B)):T===!0?(Ue="",Xe=f):Ue=f,Ue&&Ue!==""&&Ue!=="/"&&Ue!==f&&qtn(Ue.charCodeAt(Ue.length-1))&&(Ue=Ue.slice(0,-1)),r.unescape===!0&&(Xe&&(Xe=Ktn.removeBackslashes(Xe)),Ue&&le===!0&&(Ue=Ktn.removeBackslashes(Ue)));let ft={prefix:Je,input:e,start:y,base:Ue,glob:Xe,isBrace:v,isBracket:k,isGlob:T,isExtglob:O,isGlobstar:X,negated:ae,negatedExtglob:ge};if(r.tokens===!0&&(ft.maxDepth=0,qtn(be)||g.push(Te),ft.tokens=g),r.parts===!0||r.tokens===!0){let Gt;for(let er=0;er{"use strict";var Ort=b9e(),pW=E9e(),{MAX_LENGTH:Qrt,POSIX_REGEX_SOURCE:RDs,REGEX_NON_SPECIAL_CHARS:DDs,REGEX_SPECIAL_CHARS_BACKREF:xDs,REPLACEMENTS:nrn}=Ort,kDs=(e,t)=>{if(typeof t.expandRange=="function")return t.expandRange(...e,t);e.sort();let r=`[${e.join("-")}]`;try{new RegExp(r)}catch{return e.map(a=>pW.escapeRegex(a)).join("..")}return r},pbe=(e,t)=>`Missing ${e}: "${t}" - use "\\\\${t}" to match literal characters`,GMt=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");e=nrn[e]||e;let r={...t},s=typeof r.maxLength=="number"?Math.min(Qrt,r.maxLength):Qrt,a=e.length;if(a>s)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${s}`);let o={type:"bos",value:"",output:r.prepend||""},g=[o],p=r.capture?"":"?:",f=pW.isWindows(t),m=Ort.globChars(f),y=Ort.extglobChars(m),{DOT_LITERAL:B,PLUS_LITERAL:v,SLASH_LITERAL:k,ONE_CHAR:T,DOTS_SLASH:O,NO_DOT:X,NO_DOT_SLASH:U,NO_DOTS_SLASH:le,QMARK:ae,QMARK_NO_DOT:ge,STAR:fe,START_ANCHOR:pe}=m,he=tr=>`(${p}(?:(?!${pe}${tr.dot?O:B}).)*?)`,be=r.dot?"":X,Te=r.dot?ae:ge,ke=r.bash===!0?he(r):fe;r.capture&&(ke=`(${ke})`),typeof r.noext=="boolean"&&(r.noextglob=r.noext);let x={input:e,index:-1,start:0,dot:r.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:g};e=pW.removePrefix(e,x),a=e.length;let et=[],Ue=[],Je=[],Xe=o,ft,Gt=()=>x.index===a-1,er=x.peek=(tr=1)=>e[x.index+tr],Ur=x.advance=()=>e[++x.index]||"",Ot=()=>e.slice(x.index+1),dr=(tr="",gn=0)=>{x.consumed+=tr,x.index+=gn},Ar=tr=>{x.output+=tr.output!=null?tr.output:tr.value,dr(tr.value)},or=()=>{let tr=1;for(;er()==="!"&&(er(2)!=="("||er(3)==="?");)Ur(),x.start++,tr++;return tr%2===0?!1:(x.negated=!0,x.start++,!0)},Fr=tr=>{x[tr]++,Je.push(tr)},$r=tr=>{x[tr]--,Je.pop()},Or=tr=>{if(Xe.type==="globstar"){let gn=x.braces>0&&(tr.type==="comma"||tr.type==="brace"),Gn=tr.extglob===!0||et.length&&(tr.type==="pipe"||tr.type==="paren");tr.type!=="slash"&&tr.type!=="paren"&&!gn&&!Gn&&(x.output=x.output.slice(0,-Xe.output.length),Xe.type="star",Xe.value="*",Xe.output=ke,x.output+=Xe.output)}if(et.length&&tr.type!=="paren"&&(et[et.length-1].inner+=tr.value),(tr.value||tr.output)&&Ar(tr),Xe&&Xe.type==="text"&&tr.type==="text"){Xe.value+=tr.value,Xe.output=(Xe.output||"")+tr.value;return}tr.prev=Xe,g.push(tr),Xe=tr},In=(tr,gn)=>{let Gn={...y[gn],conditions:1,inner:""};Gn.prev=Xe,Gn.parens=x.parens,Gn.output=x.output;let we=(r.capture?"(":"")+Gn.open;Fr("parens"),Or({type:tr,value:gn,output:x.output?"":T}),Or({type:"paren",extglob:!0,value:Ur(),output:we}),et.push(Gn)},Br=tr=>{let gn=tr.close+(r.capture?")":""),Gn;if(tr.type==="negate"){let we=ke;if(tr.inner&&tr.inner.length>1&&tr.inner.includes("/")&&(we=he(r)),(we!==ke||Gt()||/^\)+$/.test(Ot()))&&(gn=tr.close=`)$))${we}`),tr.inner.includes("*")&&(Gn=Ot())&&/^\.[^\\/.]+$/.test(Gn)){let Zi=GMt(Gn,{...t,fastpaths:!1}).output;gn=tr.close=`)${Zi})${we})`}tr.prev.type==="bos"&&(x.negatedExtglob=!0)}Or({type:"paren",extglob:!0,value:ft,output:gn}),$r("parens")};if(r.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(e)){let tr=!1,gn=e.replace(xDs,(Gn,we,Zi,Fa,xa,Qs)=>Fa==="\\"?(tr=!0,Gn):Fa==="?"?we?we+Fa+(xa?ae.repeat(xa.length):""):Qs===0?Te+(xa?ae.repeat(xa.length):""):ae.repeat(Zi.length):Fa==="."?B.repeat(Zi.length):Fa==="*"?we?we+Fa+(xa?ke:""):ke:we?Gn:`\\${Gn}`);return tr===!0&&(r.unescape===!0?gn=gn.replace(/\\/g,""):gn=gn.replace(/\\+/g,Gn=>Gn.length%2===0?"\\\\":Gn?"\\":"")),gn===e&&r.contains===!0?(x.output=e,x):(x.output=pW.wrapOutput(gn,x,t),x)}for(;!Gt();){if(ft=Ur(),ft==="\0")continue;if(ft==="\\"){let Gn=er();if(Gn==="/"&&r.bash!==!0||Gn==="."||Gn===";")continue;if(!Gn){ft+="\\",Or({type:"text",value:ft});continue}let we=/^\\+/.exec(Ot()),Zi=0;if(we&&we[0].length>2&&(Zi=we[0].length,x.index+=Zi,Zi%2!==0&&(ft+="\\")),r.unescape===!0?ft=Ur():ft+=Ur(),x.brackets===0){Or({type:"text",value:ft});continue}}if(x.brackets>0&&(ft!=="]"||Xe.value==="["||Xe.value==="[^")){if(r.posix!==!1&&ft===":"){let Gn=Xe.value.slice(1);if(Gn.includes("[")&&(Xe.posix=!0,Gn.includes(":"))){let we=Xe.value.lastIndexOf("["),Zi=Xe.value.slice(0,we),Fa=Xe.value.slice(we+2),xa=RDs[Fa];if(xa){Xe.value=Zi+xa,x.backtrack=!0,Ur(),!o.output&&g.indexOf(Xe)===1&&(o.output=T);continue}}}(ft==="["&&er()!==":"||ft==="-"&&er()==="]")&&(ft=`\\${ft}`),ft==="]"&&(Xe.value==="["||Xe.value==="[^")&&(ft=`\\${ft}`),r.posix===!0&&ft==="!"&&Xe.value==="["&&(ft="^"),Xe.value+=ft,Ar({value:ft});continue}if(x.quotes===1&&ft!=='"'){ft=pW.escapeRegex(ft),Xe.value+=ft,Ar({value:ft});continue}if(ft==='"'){x.quotes=x.quotes===1?0:1,r.keepQuotes===!0&&Or({type:"text",value:ft});continue}if(ft==="("){Fr("parens"),Or({type:"paren",value:ft});continue}if(ft===")"){if(x.parens===0&&r.strictBrackets===!0)throw new SyntaxError(pbe("opening","("));let Gn=et[et.length-1];if(Gn&&x.parens===Gn.parens+1){Br(et.pop());continue}Or({type:"paren",value:ft,output:x.parens?")":"\\)"}),$r("parens");continue}if(ft==="["){if(r.nobracket===!0||!Ot().includes("]")){if(r.nobracket!==!0&&r.strictBrackets===!0)throw new SyntaxError(pbe("closing","]"));ft=`\\${ft}`}else Fr("brackets");Or({type:"bracket",value:ft});continue}if(ft==="]"){if(r.nobracket===!0||Xe&&Xe.type==="bracket"&&Xe.value.length===1){Or({type:"text",value:ft,output:`\\${ft}`});continue}if(x.brackets===0){if(r.strictBrackets===!0)throw new SyntaxError(pbe("opening","["));Or({type:"text",value:ft,output:`\\${ft}`});continue}$r("brackets");let Gn=Xe.value.slice(1);if(Xe.posix!==!0&&Gn[0]==="^"&&!Gn.includes("/")&&(ft=`/${ft}`),Xe.value+=ft,Ar({value:ft}),r.literalBrackets===!1||pW.hasRegexChars(Gn))continue;let we=pW.escapeRegex(Xe.value);if(x.output=x.output.slice(0,-Xe.value.length),r.literalBrackets===!0){x.output+=we,Xe.value=we;continue}Xe.value=`(${p}${we}|${Xe.value})`,x.output+=Xe.value;continue}if(ft==="{"&&r.nobrace!==!0){Fr("braces");let Gn={type:"brace",value:ft,output:"(",outputIndex:x.output.length,tokensIndex:x.tokens.length};Ue.push(Gn),Or(Gn);continue}if(ft==="}"){let Gn=Ue[Ue.length-1];if(r.nobrace===!0||!Gn){Or({type:"text",value:ft,output:ft});continue}let we=")";if(Gn.dots===!0){let Zi=g.slice(),Fa=[];for(let xa=Zi.length-1;xa>=0&&(g.pop(),Zi[xa].type!=="brace");xa--)Zi[xa].type!=="dots"&&Fa.unshift(Zi[xa].value);we=kDs(Fa,r),x.backtrack=!0}if(Gn.comma!==!0&&Gn.dots!==!0){let Zi=x.output.slice(0,Gn.outputIndex),Fa=x.tokens.slice(Gn.tokensIndex);Gn.value=Gn.output="\\{",ft=we="\\}",x.output=Zi;for(let xa of Fa)x.output+=xa.output||xa.value}Or({type:"brace",value:ft,output:we}),$r("braces"),Ue.pop();continue}if(ft==="|"){et.length>0&&et[et.length-1].conditions++,Or({type:"text",value:ft});continue}if(ft===","){let Gn=ft,we=Ue[Ue.length-1];we&&Je[Je.length-1]==="braces"&&(we.comma=!0,Gn="|"),Or({type:"comma",value:ft,output:Gn});continue}if(ft==="/"){if(Xe.type==="dot"&&x.index===x.start+1){x.start=x.index+1,x.consumed="",x.output="",g.pop(),Xe=o;continue}Or({type:"slash",value:ft,output:k});continue}if(ft==="."){if(x.braces>0&&Xe.type==="dot"){Xe.value==="."&&(Xe.output=B);let Gn=Ue[Ue.length-1];Xe.type="dots",Xe.output+=ft,Xe.value+=ft,Gn.dots=!0;continue}if(x.braces+x.parens===0&&Xe.type!=="bos"&&Xe.type!=="slash"){Or({type:"text",value:ft,output:B});continue}Or({type:"dot",value:ft,output:B});continue}if(ft==="?"){if(!(Xe&&Xe.value==="(")&&r.noextglob!==!0&&er()==="("&&er(2)!=="?"){In("qmark",ft);continue}if(Xe&&Xe.type==="paren"){let we=er(),Zi=ft;if(we==="<"&&!pW.supportsLookbehinds())throw new Error("Node.js v10 or higher is required for regex lookbehinds");(Xe.value==="("&&!/[!=<:]/.test(we)||we==="<"&&!/<([!=]|\w+>)/.test(Ot()))&&(Zi=`\\${ft}`),Or({type:"text",value:ft,output:Zi});continue}if(r.dot!==!0&&(Xe.type==="slash"||Xe.type==="bos")){Or({type:"qmark",value:ft,output:ge});continue}Or({type:"qmark",value:ft,output:ae});continue}if(ft==="!"){if(r.noextglob!==!0&&er()==="("&&(er(2)!=="?"||!/[!=<:]/.test(er(3)))){In("negate",ft);continue}if(r.nonegate!==!0&&x.index===0){or();continue}}if(ft==="+"){if(r.noextglob!==!0&&er()==="("&&er(2)!=="?"){In("plus",ft);continue}if(Xe&&Xe.value==="("||r.regex===!1){Or({type:"plus",value:ft,output:v});continue}if(Xe&&(Xe.type==="bracket"||Xe.type==="paren"||Xe.type==="brace")||x.parens>0){Or({type:"plus",value:ft});continue}Or({type:"plus",value:v});continue}if(ft==="@"){if(r.noextglob!==!0&&er()==="("&&er(2)!=="?"){Or({type:"at",extglob:!0,value:ft,output:""});continue}Or({type:"text",value:ft});continue}if(ft!=="*"){(ft==="$"||ft==="^")&&(ft=`\\${ft}`);let Gn=DDs.exec(Ot());Gn&&(ft+=Gn[0],x.index+=Gn[0].length),Or({type:"text",value:ft});continue}if(Xe&&(Xe.type==="globstar"||Xe.star===!0)){Xe.type="star",Xe.star=!0,Xe.value+=ft,Xe.output=ke,x.backtrack=!0,x.globstar=!0,dr(ft);continue}let tr=Ot();if(r.noextglob!==!0&&/^\([^?]/.test(tr)){In("star",ft);continue}if(Xe.type==="star"){if(r.noglobstar===!0){dr(ft);continue}let Gn=Xe.prev,we=Gn.prev,Zi=Gn.type==="slash"||Gn.type==="bos",Fa=we&&(we.type==="star"||we.type==="globstar");if(r.bash===!0&&(!Zi||tr[0]&&tr[0]!=="/")){Or({type:"star",value:ft,output:""});continue}let xa=x.braces>0&&(Gn.type==="comma"||Gn.type==="brace"),Qs=et.length&&(Gn.type==="pipe"||Gn.type==="paren");if(!Zi&&Gn.type!=="paren"&&!xa&&!Qs){Or({type:"star",value:ft,output:""});continue}for(;tr.slice(0,3)==="/**";){let lr=e[x.index+4];if(lr&&lr!=="/")break;tr=tr.slice(3),dr("/**",3)}if(Gn.type==="bos"&&Gt()){Xe.type="globstar",Xe.value+=ft,Xe.output=he(r),x.output=Xe.output,x.globstar=!0,dr(ft);continue}if(Gn.type==="slash"&&Gn.prev.type!=="bos"&&!Fa&&Gt()){x.output=x.output.slice(0,-(Gn.output+Xe.output).length),Gn.output=`(?:${Gn.output}`,Xe.type="globstar",Xe.output=he(r)+(r.strictSlashes?")":"|$)"),Xe.value+=ft,x.globstar=!0,x.output+=Gn.output+Xe.output,dr(ft);continue}if(Gn.type==="slash"&&Gn.prev.type!=="bos"&&tr[0]==="/"){let lr=tr[1]!==void 0?"|$":"";x.output=x.output.slice(0,-(Gn.output+Xe.output).length),Gn.output=`(?:${Gn.output}`,Xe.type="globstar",Xe.output=`${he(r)}${k}|${k}${lr})`,Xe.value+=ft,x.output+=Gn.output+Xe.output,x.globstar=!0,dr(ft+Ur()),Or({type:"slash",value:"/",output:""});continue}if(Gn.type==="bos"&&tr[0]==="/"){Xe.type="globstar",Xe.value+=ft,Xe.output=`(?:^|${k}|${he(r)}${k})`,x.output=Xe.output,x.globstar=!0,dr(ft+Ur()),Or({type:"slash",value:"/",output:""});continue}x.output=x.output.slice(0,-Xe.output.length),Xe.type="globstar",Xe.output=he(r),Xe.value+=ft,x.output+=Xe.output,x.globstar=!0,dr(ft);continue}let gn={type:"star",value:ft,output:ke};if(r.bash===!0){gn.output=".*?",(Xe.type==="bos"||Xe.type==="slash")&&(gn.output=be+gn.output),Or(gn);continue}if(Xe&&(Xe.type==="bracket"||Xe.type==="paren")&&r.regex===!0){gn.output=ft,Or(gn);continue}(x.index===x.start||Xe.type==="slash"||Xe.type==="dot")&&(Xe.type==="dot"?(x.output+=U,Xe.output+=U):r.dot===!0?(x.output+=le,Xe.output+=le):(x.output+=be,Xe.output+=be),er()!=="*"&&(x.output+=T,Xe.output+=T)),Or(gn)}for(;x.brackets>0;){if(r.strictBrackets===!0)throw new SyntaxError(pbe("closing","]"));x.output=pW.escapeLast(x.output,"["),$r("brackets")}for(;x.parens>0;){if(r.strictBrackets===!0)throw new SyntaxError(pbe("closing",")"));x.output=pW.escapeLast(x.output,"("),$r("parens")}for(;x.braces>0;){if(r.strictBrackets===!0)throw new SyntaxError(pbe("closing","}"));x.output=pW.escapeLast(x.output,"{"),$r("braces")}if(r.strictSlashes!==!0&&(Xe.type==="star"||Xe.type==="bracket")&&Or({type:"maybe_slash",value:"",output:`${k}?`}),x.backtrack===!0){x.output="";for(let tr of x.tokens)x.output+=tr.output!=null?tr.output:tr.value,tr.suffix&&(x.output+=tr.suffix)}return x};GMt.fastpaths=(e,t)=>{let r={...t},s=typeof r.maxLength=="number"?Math.min(Qrt,r.maxLength):Qrt,a=e.length;if(a>s)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${s}`);e=nrn[e]||e;let o=pW.isWindows(t),{DOT_LITERAL:g,SLASH_LITERAL:p,ONE_CHAR:f,DOTS_SLASH:m,NO_DOT:y,NO_DOTS:B,NO_DOTS_SLASH:v,STAR:k,START_ANCHOR:T}=Ort.globChars(o),O=r.dot?B:y,X=r.dot?v:y,U=r.capture?"":"?:",le={negated:!1,prefix:""},ae=r.bash===!0?".*?":k;r.capture&&(ae=`(${ae})`);let ge=be=>be.noglobstar===!0?ae:`(${U}(?:(?!${T}${be.dot?m:g}).)*?)`,fe=be=>{switch(be){case"*":return`${O}${f}${ae}`;case".*":return`${g}${f}${ae}`;case"*.*":return`${O}${ae}${g}${f}${ae}`;case"*/*":return`${O}${ae}${p}${f}${X}${ae}`;case"**":return O+ge(r);case"**/*":return`(?:${O}${ge(r)}${p})?${X}${f}${ae}`;case"**/*.*":return`(?:${O}${ge(r)}${p})?${X}${ae}${g}${f}${ae}`;case"**/.*":return`(?:${O}${ge(r)}${p})?${g}${f}${ae}`;default:{let Te=/^(.*?)\.(\w+)$/.exec(be);if(!Te)return;let ke=fe(Te[1]);return ke?ke+g+Te[2]:void 0}}},pe=pW.removePrefix(e,le),he=fe(pe);return he&&r.strictSlashes!==!0&&(he+=`${p}?`),he};irn.exports=GMt});var arn=z((m9c,orn)=>{"use strict";var GDs=xt("path"),FDs=rrn(),FMt=srn(),ZMt=E9e(),ZDs=b9e(),LDs=e=>e&&typeof e=="object"&&!Array.isArray(e),qv=(e,t,r=!1)=>{if(Array.isArray(e)){let y=e.map(v=>qv(v,t,r));return v=>{for(let k of y){let T=k(v);if(T)return T}return!1}}let s=LDs(e)&&e.tokens&&e.input;if(e===""||typeof e!="string"&&!s)throw new TypeError("Expected pattern to be a non-empty string");let a=t||{},o=ZMt.isWindows(t),g=s?qv.compileRe(e,t):qv.makeRe(e,t,!1,!0),p=g.state;delete g.state;let f=()=>!1;if(a.ignore){let y={...t,ignore:null,onMatch:null,onResult:null};f=qv(a.ignore,y,r)}let m=(y,B=!1)=>{let{isMatch:v,match:k,output:T}=qv.test(y,g,t,{glob:e,posix:o}),O={glob:e,state:p,regex:g,posix:o,input:y,output:T,match:k,isMatch:v};return typeof a.onResult=="function"&&a.onResult(O),v===!1?(O.isMatch=!1,B?O:!1):f(y)?(typeof a.onIgnore=="function"&&a.onIgnore(O),O.isMatch=!1,B?O:!1):(typeof a.onMatch=="function"&&a.onMatch(O),B?O:!0)};return r&&(m.state=p),m};qv.test=(e,t,r,{glob:s,posix:a}={})=>{if(typeof e!="string")throw new TypeError("Expected input to be a string");if(e==="")return{isMatch:!1,output:""};let o=r||{},g=o.format||(a?ZMt.toPosixSlashes:null),p=e===s,f=p&&g?g(e):e;return p===!1&&(f=g?g(e):e,p=f===s),(p===!1||o.capture===!0)&&(o.matchBase===!0||o.basename===!0?p=qv.matchBase(e,t,r,a):p=t.exec(f)),{isMatch:!!p,match:p,output:f}};qv.matchBase=(e,t,r,s=ZMt.isWindows(r))=>(t instanceof RegExp?t:qv.makeRe(t,r)).test(GDs.basename(e));qv.isMatch=(e,t,r)=>qv(t,r)(e);qv.parse=(e,t)=>Array.isArray(e)?e.map(r=>qv.parse(r,t)):FMt(e,{...t,fastpaths:!1});qv.scan=(e,t)=>FDs(e,t);qv.compileRe=(e,t,r=!1,s=!1)=>{if(r===!0)return e.output;let a=t||{},o=a.contains?"":"^",g=a.contains?"":"$",p=`${o}(?:${e.output})${g}`;e&&e.negated===!0&&(p=`^(?!${p}).*$`);let f=qv.toRegex(p,t);return s===!0&&(f.state=e),f};qv.makeRe=(e,t={},r=!1,s=!1)=>{if(!e||typeof e!="string")throw new TypeError("Expected a non-empty string");let a={negated:!1,fastpaths:!0};return t.fastpaths!==!1&&(e[0]==="."||e[0]==="*")&&(a.output=FMt.fastpaths(e,t)),a.output||(a=FMt(e,t)),qv.compileRe(a,t,r,s)};qv.toRegex=(e,t)=>{try{let r=t||{};return new RegExp(e,r.flags||(r.nocase?"i":""))}catch(r){if(t&&t.debug===!0)throw r;return/$^/}};qv.constants=ZDs;orn.exports=qv});var lrn=z((h9c,crn)=>{"use strict";crn.exports=arn()});var gk=z((_9c,prn)=>{"use strict";var grn=xt("util"),Arn=Mtn(),yJ=lrn(),LMt=E9e(),urn=e=>e===""||e==="./",drn=e=>{let t=e.indexOf("{");return t>-1&&e.indexOf("}",t)>-1},qE=(e,t,r)=>{t=[].concat(t),e=[].concat(e);let s=new Set,a=new Set,o=new Set,g=0,p=y=>{o.add(y.output),r&&r.onResult&&r.onResult(y)};for(let y=0;y!s.has(y));if(r&&m.length===0){if(r.failglob===!0)throw new Error(`No matches found for "${t.join(", ")}"`);if(r.nonull===!0||r.nullglob===!0)return r.unescape?t.map(y=>y.replace(/\\/g,"")):t}return m};qE.match=qE;qE.matcher=(e,t)=>yJ(e,t);qE.isMatch=(e,t,r)=>yJ(t,r)(e);qE.any=qE.isMatch;qE.not=(e,t,r={})=>{t=[].concat(t).map(String);let s=new Set,a=[],o=p=>{r.onResult&&r.onResult(p),a.push(p.output)},g=new Set(qE(e,t,{...r,onResult:o}));for(let p of a)g.has(p)||s.add(p);return[...s]};qE.contains=(e,t,r)=>{if(typeof e!="string")throw new TypeError(`Expected a string: "${grn.inspect(e)}"`);if(Array.isArray(t))return t.some(s=>qE.contains(e,s,r));if(typeof t=="string"){if(urn(e)||urn(t))return!1;if(e.includes(t)||e.startsWith("./")&&e.slice(2).includes(t))return!0}return qE.isMatch(e,t,{...r,contains:!0})};qE.matchKeys=(e,t,r)=>{if(!LMt.isObject(e))throw new TypeError("Expected the first argument to be an object");let s=qE(Object.keys(e),t,r),a={};for(let o of s)a[o]=e[o];return a};qE.some=(e,t,r)=>{let s=[].concat(e);for(let a of[].concat(t)){let o=yJ(String(a),r);if(s.some(g=>o(g)))return!0}return!1};qE.every=(e,t,r)=>{let s=[].concat(e);for(let a of[].concat(t)){let o=yJ(String(a),r);if(!s.every(g=>o(g)))return!1}return!0};qE.all=(e,t,r)=>{if(typeof e!="string")throw new TypeError(`Expected a string: "${grn.inspect(e)}"`);return[].concat(t).every(s=>yJ(s,r)(e))};qE.capture=(e,t,r)=>{let s=LMt.isWindows(r),o=yJ.makeRe(String(e),{...r,capture:!0}).exec(s?LMt.toPosixSlashes(t):t);if(o)return o.slice(1).map(g=>g===void 0?"":g)};qE.makeRe=(...e)=>yJ.makeRe(...e);qE.scan=(...e)=>yJ.scan(...e);qE.parse=(e,t)=>{let r=[];for(let s of[].concat(e||[]))for(let a of Arn(String(s),t))r.push(yJ.parse(a,t));return r};qE.braces=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");return t&&t.nobrace===!0||!drn(e)?[e]:Arn(e,t)};qE.braceExpand=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");return qE.braces(e,{...t,expand:!0})};qE.hasBraces=drn;prn.exports=qE});var Irn=z((y9c,frn)=>{"use strict";frn.exports=({onlyFirst:e=!1}={})=>{let t=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"].join("|");return new RegExp(t,e?void 0:"g")}});var fO=z((b9c,Crn)=>{"use strict";var VDs=Irn();Crn.exports=e=>typeof e=="string"?e.replace(VDs(),""):e});var hrn=z((E9c,mrn)=>{function WDs(){this.__data__=[],this.size=0}mrn.exports=WDs});var fbe=z((B9c,_rn)=>{function PDs(e,t){return e===t||e!==e&&t!==t}_rn.exports=PDs});var v9e=z((v9c,yrn)=>{var ODs=fbe();function QDs(e,t){for(var r=e.length;r--;)if(ODs(e[r][0],t))return r;return-1}yrn.exports=QDs});var Ern=z((S9c,brn)=>{var MDs=v9e(),HDs=Array.prototype,YDs=HDs.splice;function XDs(e){var t=this.__data__,r=MDs(t,e);if(r<0)return!1;var s=t.length-1;return r==s?t.pop():YDs.call(t,r,1),--this.size,!0}brn.exports=XDs});var vrn=z((w9c,Brn)=>{var JDs=v9e();function UDs(e){var t=this.__data__,r=JDs(t,e);return r<0?void 0:t[r][1]}Brn.exports=UDs});var wrn=z((T9c,Srn)=>{var KDs=v9e();function jDs(e){return KDs(this.__data__,e)>-1}Srn.exports=jDs});var Nrn=z((N9c,Trn)=>{var zDs=v9e();function qDs(e,t){var r=this.__data__,s=zDs(r,e);return s<0?(++this.size,r.push([e,t])):r[s][1]=t,this}Trn.exports=qDs});var S9e=z((R9c,Rrn)=>{var $Ds=hrn(),exs=Ern(),txs=vrn(),rxs=wrn(),nxs=Nrn();function Ibe(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t{var ixs=S9e();function sxs(){this.__data__=new ixs,this.size=0}Drn.exports=sxs});var Grn=z((x9c,krn)=>{function oxs(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r}krn.exports=oxs});var Zrn=z((k9c,Frn)=>{function axs(e){return this.__data__.get(e)}Frn.exports=axs});var Vrn=z((G9c,Lrn)=>{function cxs(e){return this.__data__.has(e)}Lrn.exports=cxs});var VMt=z((F9c,Wrn)=>{var lxs=typeof global=="object"&&global&&global.Object===Object&&global;Wrn.exports=lxs});var IO=z((Z9c,Prn)=>{var uxs=VMt(),gxs=typeof self=="object"&&self&&self.Object===Object&&self,Axs=uxs||gxs||Function("return this")();Prn.exports=Axs});var lAe=z((L9c,Orn)=>{var dxs=IO(),pxs=dxs.Symbol;Orn.exports=pxs});var Yrn=z((V9c,Hrn)=>{var Qrn=lAe(),Mrn=Object.prototype,fxs=Mrn.hasOwnProperty,Ixs=Mrn.toString,w9e=Qrn?Qrn.toStringTag:void 0;function Cxs(e){var t=fxs.call(e,w9e),r=e[w9e];try{e[w9e]=void 0;var s=!0}catch{}var a=Ixs.call(e);return s&&(t?e[w9e]=r:delete e[w9e]),a}Hrn.exports=Cxs});var Jrn=z((W9c,Xrn)=>{var mxs=Object.prototype,hxs=mxs.toString;function _xs(e){return hxs.call(e)}Xrn.exports=_xs});var uAe=z((P9c,jrn)=>{var Urn=lAe(),yxs=Yrn(),bxs=Jrn(),Exs="[object Null]",Bxs="[object Undefined]",Krn=Urn?Urn.toStringTag:void 0;function vxs(e){return e==null?e===void 0?Bxs:Exs:Krn&&Krn in Object(e)?yxs(e):bxs(e)}jrn.exports=vxs});var fW=z((O9c,zrn)=>{function Sxs(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}zrn.exports=Sxs});var Mrt=z((Q9c,qrn)=>{var wxs=uAe(),Txs=fW(),Nxs="[object AsyncFunction]",Rxs="[object Function]",Dxs="[object GeneratorFunction]",xxs="[object Proxy]";function kxs(e){if(!Txs(e))return!1;var t=wxs(e);return t==Rxs||t==Dxs||t==Nxs||t==xxs}qrn.exports=kxs});var enn=z((M9c,$rn)=>{var Gxs=IO(),Fxs=Gxs["__core-js_shared__"];$rn.exports=Fxs});var nnn=z((H9c,rnn)=>{var WMt=enn(),tnn=function(){var e=/[^.]+$/.exec(WMt&&WMt.keys&&WMt.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function Zxs(e){return!!tnn&&tnn in e}rnn.exports=Zxs});var PMt=z((Y9c,inn)=>{var Lxs=Function.prototype,Vxs=Lxs.toString;function Wxs(e){if(e!=null){try{return Vxs.call(e)}catch{}try{return e+""}catch{}}return""}inn.exports=Wxs});var onn=z((X9c,snn)=>{var Pxs=Mrt(),Oxs=nnn(),Qxs=fW(),Mxs=PMt(),Hxs=/[\\^$.*+?()[\]{}|]/g,Yxs=/^\[object .+?Constructor\]$/,Xxs=Function.prototype,Jxs=Object.prototype,Uxs=Xxs.toString,Kxs=Jxs.hasOwnProperty,jxs=RegExp("^"+Uxs.call(Kxs).replace(Hxs,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function zxs(e){if(!Qxs(e)||Oxs(e))return!1;var t=Pxs(e)?jxs:Yxs;return t.test(Mxs(e))}snn.exports=zxs});var cnn=z((J9c,ann)=>{function qxs(e,t){return e?.[t]}ann.exports=qxs});var one=z((U9c,lnn)=>{var $xs=onn(),eks=cnn();function tks(e,t){var r=eks(e,t);return $xs(r)?r:void 0}lnn.exports=tks});var Hrt=z((K9c,unn)=>{var rks=one(),nks=IO(),iks=rks(nks,"Map");unn.exports=iks});var T9e=z((j9c,gnn)=>{var sks=one(),oks=sks(Object,"create");gnn.exports=oks});var pnn=z((z9c,dnn)=>{var Ann=T9e();function aks(){this.__data__=Ann?Ann(null):{},this.size=0}dnn.exports=aks});var Inn=z((q9c,fnn)=>{function cks(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}fnn.exports=cks});var mnn=z(($9c,Cnn)=>{var lks=T9e(),uks="__lodash_hash_undefined__",gks=Object.prototype,Aks=gks.hasOwnProperty;function dks(e){var t=this.__data__;if(lks){var r=t[e];return r===uks?void 0:r}return Aks.call(t,e)?t[e]:void 0}Cnn.exports=dks});var _nn=z((eVc,hnn)=>{var pks=T9e(),fks=Object.prototype,Iks=fks.hasOwnProperty;function Cks(e){var t=this.__data__;return pks?t[e]!==void 0:Iks.call(t,e)}hnn.exports=Cks});var bnn=z((tVc,ynn)=>{var mks=T9e(),hks="__lodash_hash_undefined__";function _ks(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=mks&&t===void 0?hks:t,this}ynn.exports=_ks});var Bnn=z((rVc,Enn)=>{var yks=pnn(),bks=Inn(),Eks=mnn(),Bks=_nn(),vks=bnn();function Cbe(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t{var vnn=Bnn(),Sks=S9e(),wks=Hrt();function Tks(){this.size=0,this.__data__={hash:new vnn,map:new(wks||Sks),string:new vnn}}Snn.exports=Tks});var Nnn=z((iVc,Tnn)=>{function Nks(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}Tnn.exports=Nks});var N9e=z((sVc,Rnn)=>{var Rks=Nnn();function Dks(e,t){var r=e.__data__;return Rks(t)?r[typeof t=="string"?"string":"hash"]:r.map}Rnn.exports=Dks});var xnn=z((oVc,Dnn)=>{var xks=N9e();function kks(e){var t=xks(this,e).delete(e);return this.size-=t?1:0,t}Dnn.exports=kks});var Gnn=z((aVc,knn)=>{var Gks=N9e();function Fks(e){return Gks(this,e).get(e)}knn.exports=Fks});var Znn=z((cVc,Fnn)=>{var Zks=N9e();function Lks(e){return Zks(this,e).has(e)}Fnn.exports=Lks});var Vnn=z((lVc,Lnn)=>{var Vks=N9e();function Wks(e,t){var r=Vks(this,e),s=r.size;return r.set(e,t),this.size+=r.size==s?0:1,this}Lnn.exports=Wks});var Yrt=z((uVc,Wnn)=>{var Pks=wnn(),Oks=xnn(),Qks=Gnn(),Mks=Znn(),Hks=Vnn();function mbe(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t{var Yks=S9e(),Xks=Hrt(),Jks=Yrt(),Uks=200;function Kks(e,t){var r=this.__data__;if(r instanceof Yks){var s=r.__data__;if(!Xks||s.length{var jks=S9e(),zks=xrn(),qks=Grn(),$ks=Zrn(),eGs=Vrn(),tGs=Onn();function hbe(e){var t=this.__data__=new jks(e);this.size=t.size}hbe.prototype.clear=zks;hbe.prototype.delete=qks;hbe.prototype.get=$ks;hbe.prototype.has=eGs;hbe.prototype.set=tGs;Qnn.exports=hbe});var Hnn=z((dVc,Mnn)=>{var rGs="__lodash_hash_undefined__";function nGs(e){return this.__data__.set(e,rGs),this}Mnn.exports=nGs});var Xnn=z((pVc,Ynn)=>{function iGs(e){return this.__data__.has(e)}Ynn.exports=iGs});var Unn=z((fVc,Jnn)=>{var sGs=Yrt(),oGs=Hnn(),aGs=Xnn();function Jrt(e){var t=-1,r=e==null?0:e.length;for(this.__data__=new sGs;++t{function cGs(e,t){for(var r=-1,s=e==null?0:e.length;++r{function lGs(e,t){return e.has(t)}znn.exports=lGs});var OMt=z((mVc,$nn)=>{var uGs=Unn(),gGs=jnn(),AGs=qnn(),dGs=1,pGs=2;function fGs(e,t,r,s,a,o){var g=r&dGs,p=e.length,f=t.length;if(p!=f&&!(g&&f>p))return!1;var m=o.get(e),y=o.get(t);if(m&&y)return m==t&&y==e;var B=-1,v=!0,k=r&pGs?new uGs:void 0;for(o.set(e,t),o.set(t,e);++B{var IGs=IO(),CGs=IGs.Uint8Array;ein.exports=CGs});var rin=z((_Vc,tin)=>{function mGs(e){var t=-1,r=Array(e.size);return e.forEach(function(s,a){r[++t]=[a,s]}),r}tin.exports=mGs});var iin=z((yVc,nin)=>{function hGs(e){var t=-1,r=Array(e.size);return e.forEach(function(s){r[++t]=s}),r}nin.exports=hGs});var lin=z((bVc,cin)=>{var sin=lAe(),oin=QMt(),_Gs=fbe(),yGs=OMt(),bGs=rin(),EGs=iin(),BGs=1,vGs=2,SGs="[object Boolean]",wGs="[object Date]",TGs="[object Error]",NGs="[object Map]",RGs="[object Number]",DGs="[object RegExp]",xGs="[object Set]",kGs="[object String]",GGs="[object Symbol]",FGs="[object ArrayBuffer]",ZGs="[object DataView]",ain=sin?sin.prototype:void 0,MMt=ain?ain.valueOf:void 0;function LGs(e,t,r,s,a,o,g){switch(r){case ZGs:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case FGs:return!(e.byteLength!=t.byteLength||!o(new oin(e),new oin(t)));case SGs:case wGs:case RGs:return _Gs(+e,+t);case TGs:return e.name==t.name&&e.message==t.message;case DGs:case kGs:return e==t+"";case NGs:var p=bGs;case xGs:var f=s&BGs;if(p||(p=EGs),e.size!=t.size&&!f)return!1;var m=g.get(e);if(m)return m==t;s|=vGs,g.set(e,t);var y=yGs(p(e),p(t),s,a,o,g);return g.delete(e),y;case GGs:if(MMt)return MMt.call(e)==MMt.call(t)}return!1}cin.exports=LGs});var Urt=z((EVc,uin)=>{function VGs(e,t){for(var r=-1,s=t.length,a=e.length;++r{var WGs=Array.isArray;gin.exports=WGs});var HMt=z((vVc,Ain)=>{var PGs=Urt(),OGs=fH();function QGs(e,t,r){var s=t(e);return OGs(e)?s:PGs(s,r(e))}Ain.exports=QGs});var pin=z((SVc,din)=>{function MGs(e,t){for(var r=-1,s=e==null?0:e.length,a=0,o=[];++r{function HGs(){return[]}fin.exports=HGs});var Krt=z((TVc,Cin)=>{var YGs=pin(),XGs=YMt(),JGs=Object.prototype,UGs=JGs.propertyIsEnumerable,Iin=Object.getOwnPropertySymbols,KGs=Iin?function(e){return e==null?[]:(e=Object(e),YGs(Iin(e),function(t){return UGs.call(e,t)}))}:XGs;Cin.exports=KGs});var hin=z((NVc,min)=>{function jGs(e,t){for(var r=-1,s=Array(e);++r{function zGs(e){return e!=null&&typeof e=="object"}_in.exports=zGs});var bin=z((DVc,yin)=>{var qGs=uAe(),$Gs=bJ(),eFs="[object Arguments]";function tFs(e){return $Gs(e)&&qGs(e)==eFs}yin.exports=tFs});var R9e=z((xVc,vin)=>{var Ein=bin(),rFs=bJ(),Bin=Object.prototype,nFs=Bin.hasOwnProperty,iFs=Bin.propertyIsEnumerable,sFs=Ein(function(){return arguments}())?Ein:function(e){return rFs(e)&&nFs.call(e,"callee")&&!iFs.call(e,"callee")};vin.exports=sFs});var win=z((kVc,Sin)=>{function oFs(){return!1}Sin.exports=oFs});var x9e=z((D9e,_be)=>{var aFs=IO(),cFs=win(),Rin=typeof D9e=="object"&&D9e&&!D9e.nodeType&&D9e,Tin=Rin&&typeof _be=="object"&&_be&&!_be.nodeType&&_be,lFs=Tin&&Tin.exports===Rin,Nin=lFs?aFs.Buffer:void 0,uFs=Nin?Nin.isBuffer:void 0,gFs=uFs||cFs;_be.exports=gFs});var k9e=z((GVc,Din)=>{var AFs=9007199254740991,dFs=/^(?:0|[1-9]\d*)$/;function pFs(e,t){var r=typeof e;return t=t??AFs,!!t&&(r=="number"||r!="symbol"&&dFs.test(e))&&e>-1&&e%1==0&&e{var fFs=9007199254740991;function IFs(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=fFs}xin.exports=IFs});var Gin=z((ZVc,kin)=>{var CFs=uAe(),mFs=jrt(),hFs=bJ(),_Fs="[object Arguments]",yFs="[object Array]",bFs="[object Boolean]",EFs="[object Date]",BFs="[object Error]",vFs="[object Function]",SFs="[object Map]",wFs="[object Number]",TFs="[object Object]",NFs="[object RegExp]",RFs="[object Set]",DFs="[object String]",xFs="[object WeakMap]",kFs="[object ArrayBuffer]",GFs="[object DataView]",FFs="[object Float32Array]",ZFs="[object Float64Array]",LFs="[object Int8Array]",VFs="[object Int16Array]",WFs="[object Int32Array]",PFs="[object Uint8Array]",OFs="[object Uint8ClampedArray]",QFs="[object Uint16Array]",MFs="[object Uint32Array]",$E={};$E[FFs]=$E[ZFs]=$E[LFs]=$E[VFs]=$E[WFs]=$E[PFs]=$E[OFs]=$E[QFs]=$E[MFs]=!0;$E[_Fs]=$E[yFs]=$E[kFs]=$E[bFs]=$E[GFs]=$E[EFs]=$E[BFs]=$E[vFs]=$E[SFs]=$E[wFs]=$E[TFs]=$E[NFs]=$E[RFs]=$E[DFs]=$E[xFs]=!1;function HFs(e){return hFs(e)&&mFs(e.length)&&!!$E[CFs(e)]}kin.exports=HFs});var zrt=z((LVc,Fin)=>{function YFs(e){return function(t){return e(t)}}Fin.exports=YFs});var qrt=z((G9e,ybe)=>{var XFs=VMt(),Zin=typeof G9e=="object"&&G9e&&!G9e.nodeType&&G9e,F9e=Zin&&typeof ybe=="object"&&ybe&&!ybe.nodeType&&ybe,JFs=F9e&&F9e.exports===Zin,XMt=JFs&&XFs.process,UFs=function(){try{var e=F9e&&F9e.require&&F9e.require("util").types;return e||XMt&&XMt.binding&&XMt.binding("util")}catch{}}();ybe.exports=UFs});var $rt=z((VVc,Win)=>{var KFs=Gin(),jFs=zrt(),Lin=qrt(),Vin=Lin&&Lin.isTypedArray,zFs=Vin?jFs(Vin):KFs;Win.exports=zFs});var JMt=z((WVc,Pin)=>{var qFs=hin(),$Fs=R9e(),eZs=fH(),tZs=x9e(),rZs=k9e(),nZs=$rt(),iZs=Object.prototype,sZs=iZs.hasOwnProperty;function oZs(e,t){var r=eZs(e),s=!r&&$Fs(e),a=!r&&!s&&tZs(e),o=!r&&!s&&!a&&nZs(e),g=r||s||a||o,p=g?qFs(e.length,String):[],f=p.length;for(var m in e)(t||sZs.call(e,m))&&!(g&&(m=="length"||a&&(m=="offset"||m=="parent")||o&&(m=="buffer"||m=="byteLength"||m=="byteOffset")||rZs(m,f)))&&p.push(m);return p}Pin.exports=oZs});var ent=z((PVc,Oin)=>{var aZs=Object.prototype;function cZs(e){var t=e&&e.constructor,r=typeof t=="function"&&t.prototype||aZs;return e===r}Oin.exports=cZs});var UMt=z((OVc,Qin)=>{function lZs(e,t){return function(r){return e(t(r))}}Qin.exports=lZs});var Hin=z((QVc,Min)=>{var uZs=UMt(),gZs=uZs(Object.keys,Object);Min.exports=gZs});var Xin=z((MVc,Yin)=>{var AZs=ent(),dZs=Hin(),pZs=Object.prototype,fZs=pZs.hasOwnProperty;function IZs(e){if(!AZs(e))return dZs(e);var t=[];for(var r in Object(e))fZs.call(e,r)&&r!="constructor"&&t.push(r);return t}Yin.exports=IZs});var Z9e=z((HVc,Jin)=>{var CZs=Mrt(),mZs=jrt();function hZs(e){return e!=null&&mZs(e.length)&&!CZs(e)}Jin.exports=hZs});var tnt=z((YVc,Uin)=>{var _Zs=JMt(),yZs=Xin(),bZs=Z9e();function EZs(e){return bZs(e)?_Zs(e):yZs(e)}Uin.exports=EZs});var KMt=z((XVc,Kin)=>{var BZs=HMt(),vZs=Krt(),SZs=tnt();function wZs(e){return BZs(e,SZs,vZs)}Kin.exports=wZs});var qin=z((JVc,zin)=>{var jin=KMt(),TZs=1,NZs=Object.prototype,RZs=NZs.hasOwnProperty;function DZs(e,t,r,s,a,o){var g=r&TZs,p=jin(e),f=p.length,m=jin(t),y=m.length;if(f!=y&&!g)return!1;for(var B=f;B--;){var v=p[B];if(!(g?v in t:RZs.call(t,v)))return!1}var k=o.get(e),T=o.get(t);if(k&&T)return k==t&&T==e;var O=!0;o.set(e,t),o.set(t,e);for(var X=g;++B{var xZs=one(),kZs=IO(),GZs=xZs(kZs,"DataView");$in.exports=GZs});var rsn=z((KVc,tsn)=>{var FZs=one(),ZZs=IO(),LZs=FZs(ZZs,"Promise");tsn.exports=LZs});var isn=z((jVc,nsn)=>{var VZs=one(),WZs=IO(),PZs=VZs(WZs,"Set");nsn.exports=PZs});var osn=z((zVc,ssn)=>{var OZs=one(),QZs=IO(),MZs=OZs(QZs,"WeakMap");ssn.exports=MZs});var L9e=z((qVc,dsn)=>{var jMt=esn(),zMt=Hrt(),qMt=rsn(),$Mt=isn(),eHt=osn(),Asn=uAe(),bbe=PMt(),asn="[object Map]",HZs="[object Object]",csn="[object Promise]",lsn="[object Set]",usn="[object WeakMap]",gsn="[object DataView]",YZs=bbe(jMt),XZs=bbe(zMt),JZs=bbe(qMt),UZs=bbe($Mt),KZs=bbe(eHt),gAe=Asn;(jMt&&gAe(new jMt(new ArrayBuffer(1)))!=gsn||zMt&&gAe(new zMt)!=asn||qMt&&gAe(qMt.resolve())!=csn||$Mt&&gAe(new $Mt)!=lsn||eHt&&gAe(new eHt)!=usn)&&(gAe=function(e){var t=Asn(e),r=t==HZs?e.constructor:void 0,s=r?bbe(r):"";if(s)switch(s){case YZs:return gsn;case XZs:return asn;case JZs:return csn;case UZs:return lsn;case KZs:return usn}return t});dsn.exports=gAe});var ysn=z(($Vc,_sn)=>{var tHt=Xrt(),jZs=OMt(),zZs=lin(),qZs=qin(),psn=L9e(),fsn=fH(),Isn=x9e(),$Zs=$rt(),eLs=1,Csn="[object Arguments]",msn="[object Array]",rnt="[object Object]",tLs=Object.prototype,hsn=tLs.hasOwnProperty;function rLs(e,t,r,s,a,o){var g=fsn(e),p=fsn(t),f=g?msn:psn(e),m=p?msn:psn(t);f=f==Csn?rnt:f,m=m==Csn?rnt:m;var y=f==rnt,B=m==rnt,v=f==m;if(v&&Isn(e)){if(!Isn(t))return!1;g=!0,y=!1}if(v&&!y)return o||(o=new tHt),g||$Zs(e)?jZs(e,t,r,s,a,o):zZs(e,t,f,r,s,a,o);if(!(r&eLs)){var k=y&&hsn.call(e,"__wrapped__"),T=B&&hsn.call(t,"__wrapped__");if(k||T){var O=k?e.value():e,X=T?t.value():t;return o||(o=new tHt),a(O,X,r,s,o)}}return v?(o||(o=new tHt),qZs(e,t,r,s,a,o)):!1}_sn.exports=rLs});var vsn=z((eWc,Bsn)=>{var nLs=ysn(),bsn=bJ();function Esn(e,t,r,s,a){return e===t?!0:e==null||t==null||!bsn(e)&&!bsn(t)?e!==e&&t!==t:nLs(e,t,r,s,Esn,a)}Bsn.exports=Esn});var wsn=z((tWc,Ssn)=>{var iLs=vsn();function sLs(e,t){return iLs(e,t)}Ssn.exports=sLs});var rHt=z((rWc,Tsn)=>{var oLs=one(),aLs=function(){try{var e=oLs(Object,"defineProperty");return e({},"",{}),e}catch{}}();Tsn.exports=aLs});var nnt=z((nWc,Rsn)=>{var Nsn=rHt();function cLs(e,t,r){t=="__proto__"&&Nsn?Nsn(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r}Rsn.exports=cLs});var nHt=z((iWc,Dsn)=>{var lLs=nnt(),uLs=fbe();function gLs(e,t,r){(r!==void 0&&!uLs(e[t],r)||r===void 0&&!(t in e))&&lLs(e,t,r)}Dsn.exports=gLs});var ksn=z((sWc,xsn)=>{function ALs(e){return function(t,r,s){for(var a=-1,o=Object(t),g=s(t),p=g.length;p--;){var f=g[e?p:++a];if(r(o[f],f,o)===!1)break}return t}}xsn.exports=ALs});var Fsn=z((oWc,Gsn)=>{var dLs=ksn(),pLs=dLs();Gsn.exports=pLs});var iHt=z((V9e,Ebe)=>{var fLs=IO(),Wsn=typeof V9e=="object"&&V9e&&!V9e.nodeType&&V9e,Zsn=Wsn&&typeof Ebe=="object"&&Ebe&&!Ebe.nodeType&&Ebe,ILs=Zsn&&Zsn.exports===Wsn,Lsn=ILs?fLs.Buffer:void 0,Vsn=Lsn?Lsn.allocUnsafe:void 0;function CLs(e,t){if(t)return e.slice();var r=e.length,s=Vsn?Vsn(r):new e.constructor(r);return e.copy(s),s}Ebe.exports=CLs});var int=z((aWc,Osn)=>{var Psn=QMt();function mLs(e){var t=new e.constructor(e.byteLength);return new Psn(t).set(new Psn(e)),t}Osn.exports=mLs});var sHt=z((cWc,Qsn)=>{var hLs=int();function _Ls(e,t){var r=t?hLs(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.length)}Qsn.exports=_Ls});var oHt=z((lWc,Msn)=>{function yLs(e,t){var r=-1,s=e.length;for(t||(t=Array(s));++r{var bLs=fW(),Hsn=Object.create,ELs=function(){function e(){}return function(t){if(!bLs(t))return{};if(Hsn)return Hsn(t);e.prototype=t;var r=new e;return e.prototype=void 0,r}}();Ysn.exports=ELs});var snt=z((gWc,Jsn)=>{var BLs=UMt(),vLs=BLs(Object.getPrototypeOf,Object);Jsn.exports=vLs});var aHt=z((AWc,Usn)=>{var SLs=Xsn(),wLs=snt(),TLs=ent();function NLs(e){return typeof e.constructor=="function"&&!TLs(e)?SLs(wLs(e)):{}}Usn.exports=NLs});var jsn=z((dWc,Ksn)=>{var RLs=Z9e(),DLs=bJ();function xLs(e){return DLs(e)&&RLs(e)}Ksn.exports=xLs});var cHt=z((pWc,qsn)=>{var kLs=uAe(),GLs=snt(),FLs=bJ(),ZLs="[object Object]",LLs=Function.prototype,VLs=Object.prototype,zsn=LLs.toString,WLs=VLs.hasOwnProperty,PLs=zsn.call(Object);function OLs(e){if(!FLs(e)||kLs(e)!=ZLs)return!1;var t=GLs(e);if(t===null)return!0;var r=WLs.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&zsn.call(r)==PLs}qsn.exports=OLs});var lHt=z((fWc,$sn)=>{function QLs(e,t){if(!(t==="constructor"&&typeof e[t]=="function")&&t!="__proto__")return e[t]}$sn.exports=QLs});var ont=z((IWc,eon)=>{var MLs=nnt(),HLs=fbe(),YLs=Object.prototype,XLs=YLs.hasOwnProperty;function JLs(e,t,r){var s=e[t];(!(XLs.call(e,t)&&HLs(s,r))||r===void 0&&!(t in e))&&MLs(e,t,r)}eon.exports=JLs});var AAe=z((CWc,ton)=>{var ULs=ont(),KLs=nnt();function jLs(e,t,r,s){var a=!r;r||(r={});for(var o=-1,g=t.length;++o{function zLs(e){var t=[];if(e!=null)for(var r in Object(e))t.push(r);return t}ron.exports=zLs});var son=z((hWc,ion)=>{var qLs=fW(),$Ls=ent(),e9s=non(),t9s=Object.prototype,r9s=t9s.hasOwnProperty;function n9s(e){if(!qLs(e))return e9s(e);var t=$Ls(e),r=[];for(var s in e)s=="constructor"&&(t||!r9s.call(e,s))||r.push(s);return r}ion.exports=n9s});var Bbe=z((_Wc,oon)=>{var i9s=JMt(),s9s=son(),o9s=Z9e();function a9s(e){return o9s(e)?i9s(e,!0):s9s(e)}oon.exports=a9s});var con=z((yWc,aon)=>{var c9s=AAe(),l9s=Bbe();function u9s(e){return c9s(e,l9s(e))}aon.exports=u9s});var pon=z((bWc,don)=>{var lon=nHt(),g9s=iHt(),A9s=sHt(),d9s=oHt(),p9s=aHt(),uon=R9e(),gon=fH(),f9s=jsn(),I9s=x9e(),C9s=Mrt(),m9s=fW(),h9s=cHt(),_9s=$rt(),Aon=lHt(),y9s=con();function b9s(e,t,r,s,a,o,g){var p=Aon(e,r),f=Aon(t,r),m=g.get(f);if(m){lon(e,r,m);return}var y=o?o(p,f,r+"",e,t,g):void 0,B=y===void 0;if(B){var v=gon(f),k=!v&&I9s(f),T=!v&&!k&&_9s(f);y=f,v||k||T?gon(p)?y=p:f9s(p)?y=d9s(p):k?(B=!1,y=g9s(f,!0)):T?(B=!1,y=A9s(f,!0)):y=[]:h9s(f)||uon(f)?(y=p,uon(p)?y=y9s(p):(!m9s(p)||C9s(p))&&(y=p9s(f))):B=!1}B&&(g.set(f,y),a(y,f,s,o,g),g.delete(f)),lon(e,r,y)}don.exports=b9s});var Con=z((EWc,Ion)=>{var E9s=Xrt(),B9s=nHt(),v9s=Fsn(),S9s=pon(),w9s=fW(),T9s=Bbe(),N9s=lHt();function fon(e,t,r,s,a){e!==t&&v9s(t,function(o,g){if(a||(a=new E9s),w9s(o))S9s(e,t,g,r,fon,s,a);else{var p=s?s(N9s(e,g),o,g+"",e,t,a):void 0;p===void 0&&(p=o),B9s(e,g,p)}},T9s)}Ion.exports=fon});var uHt=z((BWc,mon)=>{function R9s(e){return e}mon.exports=R9s});var _on=z((vWc,hon)=>{function D9s(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}hon.exports=D9s});var gHt=z((SWc,bon)=>{var x9s=_on(),yon=Math.max;function k9s(e,t,r){return t=yon(t===void 0?e.length-1:t,0),function(){for(var s=arguments,a=-1,o=yon(s.length-t,0),g=Array(o);++a{function G9s(e){return function(){return e}}Eon.exports=G9s});var won=z((TWc,Son)=>{var F9s=Bon(),von=rHt(),Z9s=uHt(),L9s=von?function(e,t){return von(e,"toString",{configurable:!0,enumerable:!1,value:F9s(t),writable:!0})}:Z9s;Son.exports=L9s});var Non=z((NWc,Ton)=>{var V9s=800,W9s=16,P9s=Date.now;function O9s(e){var t=0,r=0;return function(){var s=P9s(),a=W9s-(s-r);if(r=s,a>0){if(++t>=V9s)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}Ton.exports=O9s});var AHt=z((RWc,Ron)=>{var Q9s=won(),M9s=Non(),H9s=M9s(Q9s);Ron.exports=H9s});var xon=z((DWc,Don)=>{var Y9s=uHt(),X9s=gHt(),J9s=AHt();function U9s(e,t){return J9s(X9s(e,t,Y9s),e+"")}Don.exports=U9s});var Gon=z((xWc,kon)=>{var K9s=fbe(),j9s=Z9e(),z9s=k9e(),q9s=fW();function $9s(e,t,r){if(!q9s(r))return!1;var s=typeof t;return(s=="number"?j9s(r)&&z9s(t,r.length):s=="string"&&t in r)?K9s(r[t],e):!1}kon.exports=$9s});var Zon=z((kWc,Fon)=>{var eVs=xon(),tVs=Gon();function rVs(e){return eVs(function(t,r){var s=-1,a=r.length,o=a>1?r[a-1]:void 0,g=a>2?r[2]:void 0;for(o=e.length>3&&typeof o=="function"?(a--,o):void 0,g&&tVs(r[0],r[1],g)&&(o=a<3?void 0:o,a=1),t=Object(t);++s{var nVs=Con(),iVs=Zon(),sVs=iVs(function(e,t,r,s){nVs(e,t,r,s)});Lon.exports=sVs});var IW=z((exports,module)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.CachingStrategy=exports.DefaultStream=exports.AsyncActions=exports.BufferStream=void 0;exports.isTaggedYarnVersion=isTaggedYarnVersion;exports.plural=plural;exports.escapeRegExp=escapeRegExp;exports.overrideType=overrideType;exports.assertNever=assertNever;exports.validateEnum=validateEnum;exports.mapAndFilter=mapAndFilter;exports.mapAndFind=mapAndFind;exports.isIndexableObject=isIndexableObject;exports.allSettledSafe=allSettledSafe;exports.convertMapsToIndexableObjects=convertMapsToIndexableObjects;exports.getFactoryWithDefault=getFactoryWithDefault;exports.getArrayWithDefault=getArrayWithDefault;exports.getSetWithDefault=getSetWithDefault;exports.getMapWithDefault=getMapWithDefault;exports.releaseAfterUseAsync=releaseAfterUseAsync;exports.prettifyAsyncErrors=prettifyAsyncErrors;exports.prettifySyncErrors=prettifySyncErrors;exports.bufferStream=bufferStream;exports.makeDeferred=makeDeferred;exports.dynamicRequire=dynamicRequire;exports.sortMap=sortMap;exports.buildIgnorePattern=buildIgnorePattern;exports.replaceEnvVariables=replaceEnvVariables;exports.parseBoolean=parseBoolean;exports.parseOptionalBoolean=parseOptionalBoolean;exports.tryParseOptionalBoolean=tryParseOptionalBoolean;exports.isPathLike=isPathLike;exports.mergeIntoTarget=mergeIntoTarget;exports.toMerged=toMerged;exports.groupBy=groupBy;exports.parseInt=parseInt;var tslib_1=(Oa(),Ai(Pa)),fslib_1=No(),clipanion_1=(Zl(),Ai(pg)),isEqual_1=tslib_1.__importDefault(wsn()),mergeWith_1=tslib_1.__importDefault(Von()),micromatch_1=tslib_1.__importDefault(gk()),p_limit_1=tslib_1.__importDefault(iAe()),semver_1=tslib_1.__importDefault(Vh()),stream_1=xt("stream");function isTaggedYarnVersion(e){return!!(semver_1.default.valid(e)&&e.match(/^[^-]+(-rc\.[0-9]+)?$/))}function plural(e,{one:t,more:r,zero:s=r}){return e===0?s:e===1?t:r}function escapeRegExp(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function overrideType(e){}function assertNever(e){throw new Error(`Assertion failed: Unexpected object '${e}'`)}function validateEnum(e,t){let r=Object.values(e);if(!r.includes(t))throw new clipanion_1.UsageError(`Invalid value for enumeration: ${JSON.stringify(t)} (expected one of ${r.map(s=>JSON.stringify(s)).join(", ")})`);return t}function mapAndFilter(e,t){let r=[];for(let s of e){let a=t(s);a!==mapAndFilterSkip&&r.push(a)}return r}var mapAndFilterSkip=Symbol();mapAndFilter.skip=mapAndFilterSkip;function mapAndFind(e,t){for(let r of e){let s=t(r);if(s!==mapAndFindSkip)return s}}var mapAndFindSkip=Symbol();mapAndFind.skip=mapAndFindSkip;function isIndexableObject(e){return typeof e=="object"&&e!==null}async function allSettledSafe(e){let t=await Promise.allSettled(e),r=[];for(let s of t){if(s.status==="rejected")throw s.reason;r.push(s.value)}return r}function convertMapsToIndexableObjects(e){if(e instanceof Map&&(e=Object.fromEntries(e)),isIndexableObject(e))for(let t of Object.keys(e)){let r=e[t];isIndexableObject(r)&&(e[t]=convertMapsToIndexableObjects(r))}return e}function getFactoryWithDefault(e,t,r){let s=e.get(t);return typeof s>"u"&&e.set(t,s=r()),s}function getArrayWithDefault(e,t){let r=e.get(t);return typeof r>"u"&&e.set(t,r=[]),r}function getSetWithDefault(e,t){let r=e.get(t);return typeof r>"u"&&e.set(t,r=new Set),r}function getMapWithDefault(e,t){let r=e.get(t);return typeof r>"u"&&e.set(t,r=new Map),r}async function releaseAfterUseAsync(e,t){if(t==null)return await e();try{return await e()}finally{await t()}}async function prettifyAsyncErrors(e,t){try{return await e()}catch(r){throw r.message=t(r.message),r}}function prettifySyncErrors(e,t){try{return e()}catch(r){throw r.message=t(r.message),r}}async function bufferStream(e){return await new Promise((t,r)=>{let s=[];e.on("error",a=>{r(a)}),e.on("data",a=>{s.push(a)}),e.on("end",()=>{t(Buffer.concat(s))})})}var BufferStream=class extends stream_1.Transform{constructor(){super(...arguments),this.chunks=[]}_transform(t,r,s){if(r!=="buffer"||!Buffer.isBuffer(t))throw new Error("Assertion failed: BufferStream only accept buffers");this.chunks.push(t),s(null,null)}_flush(t){t(null,Buffer.concat(this.chunks))}};exports.BufferStream=BufferStream;function makeDeferred(){let e,t;return{promise:new Promise((s,a)=>{e=s,t=a}),resolve:e,reject:t}}var AsyncActions=class{constructor(t){this.deferred=new Map,this.promises=new Map,this.limit=(0,p_limit_1.default)(t)}set(t,r){let s=this.deferred.get(t);typeof s>"u"&&this.deferred.set(t,s=makeDeferred());let a=this.limit(()=>r());return this.promises.set(t,a),a.then(()=>{this.promises.get(t)===a&&s.resolve()},o=>{this.promises.get(t)===a&&s.reject(o)}),s.promise}reduce(t,r){let s=this.promises.get(t)??Promise.resolve();this.set(t,()=>r(s))}async wait(){await Promise.all(this.promises.values())}};exports.AsyncActions=AsyncActions;var DefaultStream=class extends stream_1.Transform{constructor(t=Buffer.alloc(0)){super(),this.active=!0,this.ifEmpty=t}_transform(t,r,s){if(r!=="buffer"||!Buffer.isBuffer(t))throw new Error("Assertion failed: DefaultStream only accept buffers");this.active=!1,s(null,t)}_flush(t){this.active&&this.ifEmpty.length>0?t(null,this.ifEmpty):t(null)}};exports.DefaultStream=DefaultStream;var realRequire=eval("require");function dynamicRequireNode(e){return realRequire(fslib_1.npath.fromPortablePath(e))}function dynamicRequireNoCache(path){let physicalPath=fslib_1.npath.fromPortablePath(path),currentCacheEntry=realRequire.cache[physicalPath];delete realRequire.cache[physicalPath];let result;try{result=dynamicRequireNode(physicalPath);let freshCacheEntry=realRequire.cache[physicalPath],dynamicModule=eval("module"),freshCacheIndex=dynamicModule.children?dynamicModule.children.indexOf(freshCacheEntry):-1;freshCacheIndex!==-1&&dynamicModule.children.splice(freshCacheIndex,1)}finally{realRequire.cache[physicalPath]=currentCacheEntry}return result}var dynamicRequireFsTimeCache=new Map;function dynamicRequireFsTime(e){let t=dynamicRequireFsTimeCache.get(e),r=fslib_1.xfs.statSync(e);if(t?.mtime===r.mtimeMs)return t.instance;let s=dynamicRequireNoCache(e);return dynamicRequireFsTimeCache.set(e,{mtime:r.mtimeMs,instance:s}),s}var CachingStrategy;(function(e){e[e.NoCache=0]="NoCache",e[e.FsTime=1]="FsTime",e[e.Node=2]="Node"})(CachingStrategy||(exports.CachingStrategy=CachingStrategy={}));function dynamicRequire(e,{cachingStrategy:t=CachingStrategy.Node}={}){switch(t){case CachingStrategy.NoCache:return dynamicRequireNoCache(e);case CachingStrategy.FsTime:return dynamicRequireFsTime(e);case CachingStrategy.Node:return dynamicRequireNode(e);default:throw new Error("Unsupported caching strategy")}}function sortMap(e,t){let r=Array.from(e);Array.isArray(t)||(t=[t]);let s=[];for(let o of t)s.push(r.map(g=>o(g)));let a=r.map((o,g)=>g);return a.sort((o,g)=>{for(let p of s){let f=p[o]p[g]?1:0;if(f!==0)return f}return 0}),a.map(o=>r[o])}function buildIgnorePattern(e){return e.length===0?null:e.map(t=>`(${micromatch_1.default.makeRe(t,{windows:!1,dot:!0}).source})`).join("|")}function replaceEnvVariables(e,{env:t}){let r=/\${(?[\d\w_]+)(?:)?(?:-(?[^}]*))?}/g;return e.replace(r,(...s)=>{let{variableName:a,colon:o,fallback:g}=s[s.length-1],p=Object.hasOwn(t,a),f=t[a];if(f||p&&!o)return f;if(g!=null)return g;throw new clipanion_1.UsageError(`Environment variable not found (${a})`)})}function parseBoolean(e){switch(e){case"true":case"1":case 1:case!0:return!0;case"false":case"0":case 0:case!1:return!1;default:throw new Error(`Couldn't parse "${e}" as a boolean`)}}function parseOptionalBoolean(e){return typeof e>"u"?e:parseBoolean(e)}function tryParseOptionalBoolean(e){try{return parseOptionalBoolean(e)}catch{return null}}function isPathLike(e){return!!(fslib_1.npath.isAbsolute(e)||e.match(/^(\.{1,2}|~)\//))}function mergeIntoTarget(e,...t){let r=g=>({value:g}),s=r(e),a=t.map(g=>r(g)),{value:o}=(0,mergeWith_1.default)(s,...a,(g,p)=>{if(Array.isArray(g)&&Array.isArray(p)){for(let f of p)g.find(m=>(0,isEqual_1.default)(m,f))||g.push(f);return g}});return o}function toMerged(...e){return mergeIntoTarget({},...e)}function groupBy(e,t){let r=Object.create(null);for(let s of e){let a=s[t];r[a]??=[],r[a].push(s)}return r}function parseInt(e){return typeof e=="string"?Number.parseInt(e,10):e}});var dAe=z(ane=>{"use strict";Object.defineProperty(ane,"__esModule",{value:!0});ane.PackageExtensionStatus=ane.PackageExtensionType=ane.LinkType=void 0;var Won;(function(e){e.HARD="HARD",e.SOFT="SOFT"})(Won||(ane.LinkType=Won={}));var Pon;(function(e){e.Dependency="Dependency",e.PeerDependency="PeerDependency",e.PeerDependencyMeta="PeerDependencyMeta"})(Pon||(ane.PackageExtensionType=Pon={}));var Oon;(function(e){e.Inactive="inactive",e.Redundant="redundant",e.Active="active"})(Oon||(ane.PackageExtensionStatus=Oon={}))});var CO=z(Dg=>{"use strict";Object.defineProperty(Dg,"__esModule",{value:!0});Dg.LogLevel=Dg.supportsHyperlinks=Dg.supportsColor=Dg.Style=Dg.Type=Dg.stripAnsi=void 0;Dg.tuple=gVs;Dg.applyStyle=Yon;Dg.applyColor=ND;Dg.applyHyperlink=Xon;Dg.pretty=pAe;Dg.prettyList=dVs;Dg.json=Jon;Dg.jsonOrPretty=pVs;Dg.mark=fVs;Dg.prettyField=IVs;Dg.prettyTruncatedLocatorList=CVs;Dg.addLogFilterSupport=mVs;var Sbe=(Oa(),Ai(Pa)),Qon=No(),lnt=Sbe.__importDefault(yMt()),cnt=Sbe.__importDefault(nAe()),oVs=(Zl(),Ai(pg)),aVs=Sbe.__importDefault(gk()),Hon=Sbe.__importDefault(fO());Dg.stripAnsi=Hon.default;var cVs=xt("util"),ant=NL(),lVs=Sbe.__importStar(IW()),sE=Sbe.__importStar(dk()),vbe=dAe();Dg.Type={NO_HINT:"NO_HINT",ID:"ID",NULL:"NULL",SCOPE:"SCOPE",NAME:"NAME",RANGE:"RANGE",REFERENCE:"REFERENCE",NUMBER:"NUMBER",PATH:"PATH",URL:"URL",ADDED:"ADDED",REMOVED:"REMOVED",CODE:"CODE",INSPECT:"INSPECT",DURATION:"DURATION",SIZE:"SIZE",SIZE_DIFF:"SIZE_DIFF",IDENT:"IDENT",DESCRIPTOR:"DESCRIPTOR",LOCATOR:"LOCATOR",RESOLUTION:"RESOLUTION",DEPENDENT:"DEPENDENT",PACKAGE_EXTENSION:"PACKAGE_EXTENSION",SETTING:"SETTING",MARKDOWN:"MARKDOWN",MARKDOWN_INLINE:"MARKDOWN_INLINE"};var unt;(function(e){e[e.BOLD=2]="BOLD"})(unt||(Dg.Style=unt={}));var pHt=cnt.default.GITHUB_ACTIONS?{level:2}:lnt.default.supportsColor?{level:lnt.default.supportsColor.level}:{level:0};Dg.supportsColor=pHt.level!==0;Dg.supportsHyperlinks=Dg.supportsColor&&!cnt.default.GITHUB_ACTIONS&&!cnt.default.CIRCLE&&!cnt.default.GITLAB;var dHt=new lnt.default.Instance(pHt),uVs=new Map([[Dg.Type.NO_HINT,null],[Dg.Type.NULL,["#a853b5",129]],[Dg.Type.SCOPE,["#d75f00",166]],[Dg.Type.NAME,["#d7875f",173]],[Dg.Type.RANGE,["#00afaf",37]],[Dg.Type.REFERENCE,["#87afff",111]],[Dg.Type.NUMBER,["#ffd700",220]],[Dg.Type.PATH,["#d75fd7",170]],[Dg.Type.URL,["#d75fd7",170]],[Dg.Type.ADDED,["#5faf00",70]],[Dg.Type.REMOVED,["#ff3131",160]],[Dg.Type.CODE,["#87afff",111]],[Dg.Type.SIZE,["#ffd700",220]]]),Ak=e=>e;function Mon(e){let t=["KiB","MiB","GiB","TiB"],r=t.length;for(;r>1&&e<1024**r;)r-=1;let s=1024**r;return`${Math.floor(e*100/s)/100} ${t[r-1]}`}var gnt={[Dg.Type.ID]:Ak({pretty:(e,t)=>typeof t=="number"?ND(e,`${t}`,Dg.Type.NUMBER):ND(e,t,Dg.Type.CODE),json:e=>e}),[Dg.Type.INSPECT]:Ak({pretty:(e,t)=>(0,cVs.inspect)(t,{depth:1/0,colors:e.get("enableColors"),compact:!0,breakLength:1/0}),json:e=>e}),[Dg.Type.NUMBER]:Ak({pretty:(e,t)=>ND(e,`${t}`,Dg.Type.NUMBER),json:e=>e}),[Dg.Type.IDENT]:Ak({pretty:(e,t)=>sE.prettyIdent(e,t),json:e=>sE.stringifyIdent(e)}),[Dg.Type.LOCATOR]:Ak({pretty:(e,t)=>sE.prettyLocator(e,t),json:e=>sE.stringifyLocator(e)}),[Dg.Type.DESCRIPTOR]:Ak({pretty:(e,t)=>sE.prettyDescriptor(e,t),json:e=>sE.stringifyDescriptor(e)}),[Dg.Type.RESOLUTION]:Ak({pretty:(e,{descriptor:t,locator:r})=>sE.prettyResolution(e,t,r),json:({descriptor:e,locator:t})=>({descriptor:sE.stringifyDescriptor(e),locator:t!==null?sE.stringifyLocator(t):null})}),[Dg.Type.DEPENDENT]:Ak({pretty:(e,{locator:t,descriptor:r})=>sE.prettyDependent(e,t,r),json:({locator:e,descriptor:t})=>({locator:sE.stringifyLocator(e),descriptor:sE.stringifyDescriptor(t)})}),[Dg.Type.PACKAGE_EXTENSION]:Ak({pretty:(e,t)=>{switch(t.type){case vbe.PackageExtensionType.Dependency:return`${sE.prettyIdent(e,t.parentDescriptor)} \u27A4 ${ND(e,"dependencies",Dg.Type.CODE)} \u27A4 ${sE.prettyIdent(e,t.descriptor)}`;case vbe.PackageExtensionType.PeerDependency:return`${sE.prettyIdent(e,t.parentDescriptor)} \u27A4 ${ND(e,"peerDependencies",Dg.Type.CODE)} \u27A4 ${sE.prettyIdent(e,t.descriptor)}`;case vbe.PackageExtensionType.PeerDependencyMeta:return`${sE.prettyIdent(e,t.parentDescriptor)} \u27A4 ${ND(e,"peerDependenciesMeta",Dg.Type.CODE)} \u27A4 ${sE.prettyIdent(e,sE.parseIdent(t.selector))} \u27A4 ${ND(e,t.key,Dg.Type.CODE)}`;default:throw new Error(`Assertion failed: Unsupported package extension type: ${t.type}`)}},json:e=>{switch(e.type){case vbe.PackageExtensionType.Dependency:return`${sE.stringifyIdent(e.parentDescriptor)} > ${sE.stringifyIdent(e.descriptor)}`;case vbe.PackageExtensionType.PeerDependency:return`${sE.stringifyIdent(e.parentDescriptor)} >> ${sE.stringifyIdent(e.descriptor)}`;case vbe.PackageExtensionType.PeerDependencyMeta:return`${sE.stringifyIdent(e.parentDescriptor)} >> ${e.selector} / ${e.key}`;default:throw new Error(`Assertion failed: Unsupported package extension type: ${e.type}`)}}}),[Dg.Type.SETTING]:Ak({pretty:(e,t)=>(e.get(t),Xon(e,ND(e,t,Dg.Type.CODE),`https://yarnpkg.com/configuration/yarnrc#${t}`)),json:e=>e}),[Dg.Type.DURATION]:Ak({pretty:(e,t)=>{if(t>1e3*60){let r=Math.floor(t/1e3/60),s=Math.ceil((t-r*60*1e3)/1e3);return s===0?`${r}m`:`${r}m ${s}s`}else{let r=Math.floor(t/1e3),s=t-r*1e3;return s===0?`${r}s`:`${r}s ${s}ms`}},json:e=>e}),[Dg.Type.SIZE]:Ak({pretty:(e,t)=>ND(e,Mon(t),Dg.Type.NUMBER),json:e=>e}),[Dg.Type.SIZE_DIFF]:Ak({pretty:(e,t)=>{let r=t>=0?"+":"-",s=r==="+"?Dg.Type.REMOVED:Dg.Type.ADDED;return ND(e,`${r} ${Mon(Math.max(Math.abs(t),1))}`,s)},json:e=>e}),[Dg.Type.PATH]:Ak({pretty:(e,t)=>ND(e,Qon.npath.fromPortablePath(t),Dg.Type.PATH),json:e=>Qon.npath.fromPortablePath(e)}),[Dg.Type.MARKDOWN]:Ak({pretty:(e,{text:t,format:r,paragraphs:s})=>(0,oVs.formatMarkdownish)(t,{format:r,paragraphs:s}),json:({text:e})=>e}),[Dg.Type.MARKDOWN_INLINE]:Ak({pretty:(e,t)=>(t=t.replace(/(`+)((?:.|[\n])*?)\1/g,(r,s,a)=>pAe(e,s+a+s,Dg.Type.CODE)),t=t.replace(/(\*\*)((?:.|[\n])*?)\1/g,(r,s,a)=>Yon(e,a,unt.BOLD)),t),json:e=>e})};function gVs(e,t){return[t,e]}function Yon(e,t,r){return e.get("enableColors")&&r&unt.BOLD&&(t=lnt.default.bold(t)),t}function ND(e,t,r){if(!e.get("enableColors"))return t;let s=uVs.get(r);if(s===null)return t;let a=typeof s>"u"?r:pHt.level>=3?s[0]:s[1],o=typeof a=="number"?dHt.ansi256(a):a.startsWith("#")?dHt.hex(a):dHt[a];if(typeof o!="function")throw new Error(`Invalid format type ${a}`);return o(t)}var AVs=!!process.env.KONSOLE_VERSION;function Xon(e,t,r){return e.get("enableHyperlinks")?AVs?`\x1B]8;;${r}\x1B\\${t}\x1B]8;;\x1B\\`:`\x1B]8;;${r}\x07${t}\x1B]8;;\x07`:t}function pAe(e,t,r){if(t===null)return ND(e,"null",Dg.Type.NULL);if(Object.hasOwn(gnt,r))return gnt[r].pretty(e,t);if(typeof t!="string")throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof t}`);return ND(e,t,r)}function dVs(e,t,r,{separator:s=", "}={}){return[...t].map(a=>pAe(e,a,r)).join(s)}function Jon(e,t){if(e===null)return null;if(Object.hasOwn(gnt,t))return lVs.overrideType(t),gnt[t].json(e);if(typeof e!="string")throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof e}`);return e}function pVs(e,t,[r,s]){return e?Jon(r,s):pAe(t,r,s)}function fVs(e){return{Check:ND(e,"\u2713","green"),Cross:ND(e,"\u2718","red"),Question:ND(e,"?","cyan")}}function IVs(e,{label:t,value:[r,s]}){return`${pAe(e,t,Dg.Type.CODE)}: ${pAe(e,r,s)}`}function CVs(e,t,r){let s=[],a=[...t],o=r;for(;a.length>0;){let m=a[0],y=`${sE.prettyLocator(e,m)}, `,B=sE.prettyLocatorNoColors(m).length+2;if(s.length>0&&om).join("").slice(0,-2);let g="X".repeat(a.length.toString().length),p=`and ${g} more.`,f=a.length;for(;s.length>1&&om).join(""),p.replace(g,pAe(e,f,Dg.Type.NUMBER))].join("")}var cne;(function(e){e.Error="error",e.Warning="warning",e.Info="info",e.Discard="discard"})(cne||(Dg.LogLevel=cne={}));function mVs(e,{configuration:t}){let r=t.get("logFilters"),s=new Map,a=new Map,o=[];for(let B of r){let v=B.get("level");if(typeof v>"u")continue;let k=B.get("code");typeof k<"u"&&s.set(k,v);let T=B.get("text");typeof T<"u"&&a.set(T,v);let O=B.get("pattern");typeof O<"u"&&o.push([aVs.default.matcher(O,{contains:!0}),v])}o.reverse();let g=(B,v,k)=>{if(B===null||B===ant.MessageName.UNNAMED)return k;let T=a.size>0||o.length>0?(0,Hon.default)(v):v;if(a.size>0){let O=a.get(T);if(typeof O<"u")return O??k}if(o.length>0){for(let[O,X]of o)if(O(T))return X??k}if(s.size>0){let O=s.get((0,ant.stringifyMessageName)(B));if(typeof O<"u")return O??k}return k},p=e.reportInfo,f=e.reportWarning,m=e.reportError,y=function(B,v,k,T){switch(g(v,k,T)){case cne.Info:p.call(B,v,k);break;case cne.Warning:f.call(B,v??ant.MessageName.UNNAMED,k);break;case cne.Error:m.call(B,v??ant.MessageName.UNNAMED,k);break}};e.reportInfo=function(...B){return y(this,...B,cne.Info)},e.reportWarning=function(...B){return y(this,...B,cne.Warning)},e.reportError=function(...B){return y(this,...B,cne.Error)}}});var Uon=z(wbe=>{"use strict";Object.defineProperty(wbe,"__esModule",{value:!0});wbe.splitWhen=wbe.flatten=void 0;function hVs(e){return e.reduce((t,r)=>[].concat(t,r),[])}wbe.flatten=hVs;function _Vs(e,t){let r=[[]],s=0;for(let a of e)t(a)?(s++,r[s]=[]):r[s].push(a);return r}wbe.splitWhen=_Vs});var Kon=z(Ant=>{"use strict";Object.defineProperty(Ant,"__esModule",{value:!0});Ant.isEnoentCodeError=void 0;function yVs(e){return e.code==="ENOENT"}Ant.isEnoentCodeError=yVs});var jon=z(dnt=>{"use strict";Object.defineProperty(dnt,"__esModule",{value:!0});dnt.createDirentFromStats=void 0;var fHt=class{constructor(t,r){this.name=t,this.isBlockDevice=r.isBlockDevice.bind(r),this.isCharacterDevice=r.isCharacterDevice.bind(r),this.isDirectory=r.isDirectory.bind(r),this.isFIFO=r.isFIFO.bind(r),this.isFile=r.isFile.bind(r),this.isSocket=r.isSocket.bind(r),this.isSymbolicLink=r.isSymbolicLink.bind(r)}};function bVs(e,t){return new fHt(e,t)}dnt.createDirentFromStats=bVs});var ean=z(Iw=>{"use strict";Object.defineProperty(Iw,"__esModule",{value:!0});Iw.convertPosixPathToPattern=Iw.convertWindowsPathToPattern=Iw.convertPathToPattern=Iw.escapePosixPath=Iw.escapeWindowsPath=Iw.escape=Iw.removeLeadingDotSegment=Iw.makeAbsolute=Iw.unixify=void 0;var EVs=xt("os"),BVs=xt("path"),zon=EVs.platform()==="win32",vVs=2,SVs=/(\\?)([()*?[\]{|}]|^!|[!+@](?=\()|\\(?![!()*+?@[\]{|}]))/g,wVs=/(\\?)([()[\]{}]|^!|[!+@](?=\())/g,TVs=/^\\\\([.?])/,NVs=/\\(?![!()+@[\]{}])/g;function RVs(e){return e.replace(/\\/g,"/")}Iw.unixify=RVs;function DVs(e,t){return BVs.resolve(e,t)}Iw.makeAbsolute=DVs;function xVs(e){if(e.charAt(0)==="."){let t=e.charAt(1);if(t==="/"||t==="\\")return e.slice(vVs)}return e}Iw.removeLeadingDotSegment=xVs;Iw.escape=zon?IHt:CHt;function IHt(e){return e.replace(wVs,"\\$2")}Iw.escapeWindowsPath=IHt;function CHt(e){return e.replace(SVs,"\\$2")}Iw.escapePosixPath=CHt;Iw.convertPathToPattern=zon?qon:$on;function qon(e){return IHt(e).replace(TVs,"//$1").replace(NVs,"/")}Iw.convertWindowsPathToPattern=qon;function $on(e){return CHt(e)}Iw.convertPosixPathToPattern=$on});var ran=z((OWc,tan)=>{tan.exports=function(t){if(typeof t!="string"||t==="")return!1;for(var r;r=/(\\).|([@?!+*]\(.*\))/g.exec(t);){if(r[2])return!0;t=t.slice(r.index+r[0].length)}return!1}});var san=z((QWc,ian)=>{var kVs=ran(),nan={"{":"}","(":")","[":"]"},GVs=function(e){if(e[0]==="!")return!0;for(var t=0,r=-2,s=-2,a=-2,o=-2,g=-2;tt&&(g===-1||g>s||(g=e.indexOf("\\",t),g===-1||g>s)))||a!==-1&&e[t]==="{"&&e[t+1]!=="}"&&(a=e.indexOf("}",t),a>t&&(g=e.indexOf("\\",t),g===-1||g>a))||o!==-1&&e[t]==="("&&e[t+1]==="?"&&/[:!=]/.test(e[t+2])&&e[t+3]!==")"&&(o=e.indexOf(")",t),o>t&&(g=e.indexOf("\\",t),g===-1||g>o))||r!==-1&&e[t]==="("&&e[t+1]!=="|"&&(rr&&(g=e.indexOf("\\",r),g===-1||g>o))))return!0;if(e[t]==="\\"){var p=e[t+1];t+=2;var f=nan[p];if(f){var m=e.indexOf(f,t);m!==-1&&(t=m+1)}if(e[t]==="!")return!0}else t++}return!1},FVs=function(e){if(e[0]==="!")return!0;for(var t=0;t{"use strict";var ZVs=san(),LVs=xt("path").posix.dirname,VVs=xt("os").platform()==="win32",mHt="/",WVs=/\\/g,PVs=/[\{\[].*[\}\]]$/,OVs=/(^|[^\\])([\{\[]|\([^\)]+$)/,QVs=/\\([\!\*\?\|\[\]\(\)\{\}])/g;oan.exports=function(t,r){var s=Object.assign({flipBackslashes:!0},r);s.flipBackslashes&&VVs&&t.indexOf(mHt)<0&&(t=t.replace(WVs,mHt)),PVs.test(t)&&(t+=mHt),t+="a";do t=LVs(t);while(ZVs(t)||OVs.test(t));return t.replace(QVs,"$1")}});var fan=z(qf=>{"use strict";Object.defineProperty(qf,"__esModule",{value:!0});qf.removeDuplicateSlashes=qf.matchAny=qf.convertPatternsToRe=qf.makeRe=qf.getPatternParts=qf.expandBraceExpansion=qf.expandPatternsWithBraceExpansion=qf.isAffectDepthOfReadingPattern=qf.endsWithSlashGlobStar=qf.hasGlobStar=qf.getBaseDirectory=qf.isPatternRelatedToParentDirectory=qf.getPatternsOutsideCurrentDirectory=qf.getPatternsInsideCurrentDirectory=qf.getPositivePatterns=qf.getNegativePatterns=qf.isPositivePattern=qf.isNegativePattern=qf.convertToNegativePattern=qf.convertToPositivePattern=qf.isDynamicPattern=qf.isStaticPattern=void 0;var MVs=xt("path"),HVs=aan(),hHt=gk(),can="**",YVs="\\",XVs=/[*?]|^!/,JVs=/\[[^[]*]/,UVs=/(?:^|[^!*+?@])\([^(]*\|[^|]*\)/,KVs=/[!*+?@]\([^(]*\)/,jVs=/,|\.\./,zVs=/(?!^)\/{2,}/g;function lan(e,t={}){return!uan(e,t)}qf.isStaticPattern=lan;function uan(e,t={}){return e===""?!1:!!(t.caseSensitiveMatch===!1||e.includes(YVs)||XVs.test(e)||JVs.test(e)||UVs.test(e)||t.extglob!==!1&&KVs.test(e)||t.braceExpansion!==!1&&qVs(e))}qf.isDynamicPattern=uan;function qVs(e){let t=e.indexOf("{");if(t===-1)return!1;let r=e.indexOf("}",t+1);if(r===-1)return!1;let s=e.slice(t,r);return jVs.test(s)}function $Vs(e){return pnt(e)?e.slice(1):e}qf.convertToPositivePattern=$Vs;function eWs(e){return"!"+e}qf.convertToNegativePattern=eWs;function pnt(e){return e.startsWith("!")&&e[1]!=="("}qf.isNegativePattern=pnt;function gan(e){return!pnt(e)}qf.isPositivePattern=gan;function tWs(e){return e.filter(pnt)}qf.getNegativePatterns=tWs;function rWs(e){return e.filter(gan)}qf.getPositivePatterns=rWs;function nWs(e){return e.filter(t=>!_Ht(t))}qf.getPatternsInsideCurrentDirectory=nWs;function iWs(e){return e.filter(_Ht)}qf.getPatternsOutsideCurrentDirectory=iWs;function _Ht(e){return e.startsWith("..")||e.startsWith("./..")}qf.isPatternRelatedToParentDirectory=_Ht;function sWs(e){return HVs(e,{flipBackslashes:!1})}qf.getBaseDirectory=sWs;function oWs(e){return e.includes(can)}qf.hasGlobStar=oWs;function Aan(e){return e.endsWith("/"+can)}qf.endsWithSlashGlobStar=Aan;function aWs(e){let t=MVs.basename(e);return Aan(e)||lan(t)}qf.isAffectDepthOfReadingPattern=aWs;function cWs(e){return e.reduce((t,r)=>t.concat(dan(r)),[])}qf.expandPatternsWithBraceExpansion=cWs;function dan(e){let t=hHt.braces(e,{expand:!0,nodupes:!0,keepEscaping:!0});return t.sort((r,s)=>r.length-s.length),t.filter(r=>r!=="")}qf.expandBraceExpansion=dan;function lWs(e,t){let{parts:r}=hHt.scan(e,Object.assign(Object.assign({},t),{parts:!0}));return r.length===0&&(r=[e]),r[0].startsWith("/")&&(r[0]=r[0].slice(1),r.unshift("")),r}qf.getPatternParts=lWs;function pan(e,t){return hHt.makeRe(e,t)}qf.makeRe=pan;function uWs(e,t){return e.map(r=>pan(r,t))}qf.convertPatternsToRe=uWs;function gWs(e,t){return t.some(r=>r.test(e))}qf.matchAny=gWs;function AWs(e){return e.replace(zVs,"/")}qf.removeDuplicateSlashes=AWs});var yHt=z((YWc,man)=>{"use strict";var dWs=xt("stream"),Ian=dWs.PassThrough,pWs=Array.prototype.slice;man.exports=fWs;function fWs(){let e=[],t=pWs.call(arguments),r=!1,s=t[t.length-1];s&&!Array.isArray(s)&&s.pipe==null?t.pop():s={};let a=s.end!==!1,o=s.pipeError===!0;s.objectMode==null&&(s.objectMode=!0),s.highWaterMark==null&&(s.highWaterMark=64*1024);let g=Ian(s);function p(){for(let y=0,B=arguments.length;y0||(r=!1,f())}function k(T){function O(){T.removeListener("merge2UnpipeEnd",O),T.removeListener("end",O),o&&T.removeListener("error",X),v()}function X(U){g.emit("error",U)}if(T._readableState.endEmitted)return v();T.on("merge2UnpipeEnd",O),T.on("end",O),o&&T.on("error",X),T.pipe(g,{end:!1}),T.resume()}for(let T=0;T{"use strict";Object.defineProperty(fnt,"__esModule",{value:!0});fnt.merge=void 0;var IWs=yHt();function CWs(e){let t=IWs(e);return e.forEach(r=>{r.once("error",s=>t.emit("error",s))}),t.once("close",()=>han(e)),t.once("end",()=>han(e)),t}fnt.merge=CWs;function han(e){e.forEach(t=>t.emit("close"))}});var yan=z(Tbe=>{"use strict";Object.defineProperty(Tbe,"__esModule",{value:!0});Tbe.isEmpty=Tbe.isString=void 0;function mWs(e){return typeof e=="string"}Tbe.isString=mWs;function hWs(e){return e===""}Tbe.isEmpty=hWs});var aj=z(pk=>{"use strict";Object.defineProperty(pk,"__esModule",{value:!0});pk.string=pk.stream=pk.pattern=pk.path=pk.fs=pk.errno=pk.array=void 0;var _Ws=Uon();pk.array=_Ws;var yWs=Kon();pk.errno=yWs;var bWs=jon();pk.fs=bWs;var EWs=ean();pk.path=EWs;var BWs=fan();pk.pattern=BWs;var vWs=_an();pk.stream=vWs;var SWs=yan();pk.string=SWs});var van=z(fk=>{"use strict";Object.defineProperty(fk,"__esModule",{value:!0});fk.convertPatternGroupToTask=fk.convertPatternGroupsToTasks=fk.groupPatternsByBaseDirectory=fk.getNegativePatternsAsPositive=fk.getPositivePatterns=fk.convertPatternsToTasks=fk.generate=void 0;var IH=aj();function wWs(e,t){let r=ban(e,t),s=ban(t.ignore,t),a=Ean(r),o=Ban(r,s),g=a.filter(y=>IH.pattern.isStaticPattern(y,t)),p=a.filter(y=>IH.pattern.isDynamicPattern(y,t)),f=bHt(g,o,!1),m=bHt(p,o,!0);return f.concat(m)}fk.generate=wWs;function ban(e,t){let r=e;return t.braceExpansion&&(r=IH.pattern.expandPatternsWithBraceExpansion(r)),t.baseNameMatch&&(r=r.map(s=>s.includes("/")?s:`**/${s}`)),r.map(s=>IH.pattern.removeDuplicateSlashes(s))}function bHt(e,t,r){let s=[],a=IH.pattern.getPatternsOutsideCurrentDirectory(e),o=IH.pattern.getPatternsInsideCurrentDirectory(e),g=EHt(a),p=EHt(o);return s.push(...BHt(g,t,r)),"."in p?s.push(vHt(".",o,t,r)):s.push(...BHt(p,t,r)),s}fk.convertPatternsToTasks=bHt;function Ean(e){return IH.pattern.getPositivePatterns(e)}fk.getPositivePatterns=Ean;function Ban(e,t){return IH.pattern.getNegativePatterns(e).concat(t).map(IH.pattern.convertToPositivePattern)}fk.getNegativePatternsAsPositive=Ban;function EHt(e){let t={};return e.reduce((r,s)=>{let a=IH.pattern.getBaseDirectory(s);return a in r?r[a].push(s):r[a]=[s],r},t)}fk.groupPatternsByBaseDirectory=EHt;function BHt(e,t,r){return Object.keys(e).map(s=>vHt(s,e[s],t,r))}fk.convertPatternGroupsToTasks=BHt;function vHt(e,t,r,s){return{dynamic:s,positive:t,negative:r,base:e,patterns:[].concat(t,r.map(IH.pattern.convertToNegativePattern))}}fk.convertPatternGroupToTask=vHt});var wan=z(Int=>{"use strict";Object.defineProperty(Int,"__esModule",{value:!0});Int.read=void 0;function TWs(e,t,r){t.fs.lstat(e,(s,a)=>{if(s!==null){San(r,s);return}if(!a.isSymbolicLink()||!t.followSymbolicLink){SHt(r,a);return}t.fs.stat(e,(o,g)=>{if(o!==null){if(t.throwErrorOnBrokenSymbolicLink){San(r,o);return}SHt(r,a);return}t.markSymbolicLink&&(g.isSymbolicLink=()=>!0),SHt(r,g)})})}Int.read=TWs;function San(e,t){e(t)}function SHt(e,t){e(null,t)}});var Tan=z(Cnt=>{"use strict";Object.defineProperty(Cnt,"__esModule",{value:!0});Cnt.read=void 0;function NWs(e,t){let r=t.fs.lstatSync(e);if(!r.isSymbolicLink()||!t.followSymbolicLink)return r;try{let s=t.fs.statSync(e);return t.markSymbolicLink&&(s.isSymbolicLink=()=>!0),s}catch(s){if(!t.throwErrorOnBrokenSymbolicLink)return r;throw s}}Cnt.read=NWs});var Nan=z(lne=>{"use strict";Object.defineProperty(lne,"__esModule",{value:!0});lne.createFileSystemAdapter=lne.FILE_SYSTEM_ADAPTER=void 0;var mnt=xt("fs");lne.FILE_SYSTEM_ADAPTER={lstat:mnt.lstat,stat:mnt.stat,lstatSync:mnt.lstatSync,statSync:mnt.statSync};function RWs(e){return e===void 0?lne.FILE_SYSTEM_ADAPTER:Object.assign(Object.assign({},lne.FILE_SYSTEM_ADAPTER),e)}lne.createFileSystemAdapter=RWs});var Ran=z(THt=>{"use strict";Object.defineProperty(THt,"__esModule",{value:!0});var DWs=Nan(),wHt=class{constructor(t={}){this._options=t,this.followSymbolicLink=this._getValue(this._options.followSymbolicLink,!0),this.fs=DWs.createFileSystemAdapter(this._options.fs),this.markSymbolicLink=this._getValue(this._options.markSymbolicLink,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!0)}_getValue(t,r){return t??r}};THt.default=wHt});var fAe=z(une=>{"use strict";Object.defineProperty(une,"__esModule",{value:!0});une.statSync=une.stat=une.Settings=void 0;var Dan=wan(),xWs=Tan(),NHt=Ran();une.Settings=NHt.default;function kWs(e,t,r){if(typeof t=="function"){Dan.read(e,RHt(),t);return}Dan.read(e,RHt(t),r)}une.stat=kWs;function GWs(e,t){let r=RHt(t);return xWs.read(e,r)}une.statSync=GWs;function RHt(e={}){return e instanceof NHt.default?e:new NHt.default(e)}});var Gan=z((t3c,kan)=>{var xan;kan.exports=typeof queueMicrotask=="function"?queueMicrotask.bind(typeof window<"u"?window:global):e=>(xan||(xan=Promise.resolve())).then(e).catch(t=>setTimeout(()=>{throw t},0))});var Zan=z((r3c,Fan)=>{Fan.exports=ZWs;var FWs=Gan();function ZWs(e,t){let r,s,a,o=!0;Array.isArray(e)?(r=[],s=e.length):(a=Object.keys(e),r={},s=a.length);function g(f){function m(){t&&t(f,r),t=null}o?FWs(m):m()}function p(f,m,y){r[f]=y,(--s===0||m)&&g(m)}s?a?a.forEach(function(f){e[f](function(m,y){p(f,m,y)})}):e.forEach(function(f,m){f(function(y,B){p(m,y,B)})}):g(null),o=!1}});var DHt=z(_nt=>{"use strict";Object.defineProperty(_nt,"__esModule",{value:!0});_nt.IS_SUPPORT_READDIR_WITH_FILE_TYPES=void 0;var hnt=process.versions.node.split(".");if(hnt[0]===void 0||hnt[1]===void 0)throw new Error(`Unexpected behavior. The 'process.versions.node' variable has invalid value: ${process.versions.node}`);var Lan=Number.parseInt(hnt[0],10),LWs=Number.parseInt(hnt[1],10),Van=10,VWs=10,WWs=Lan>Van,PWs=Lan===Van&&LWs>=VWs;_nt.IS_SUPPORT_READDIR_WITH_FILE_TYPES=WWs||PWs});var Wan=z(ynt=>{"use strict";Object.defineProperty(ynt,"__esModule",{value:!0});ynt.createDirentFromStats=void 0;var xHt=class{constructor(t,r){this.name=t,this.isBlockDevice=r.isBlockDevice.bind(r),this.isCharacterDevice=r.isCharacterDevice.bind(r),this.isDirectory=r.isDirectory.bind(r),this.isFIFO=r.isFIFO.bind(r),this.isFile=r.isFile.bind(r),this.isSocket=r.isSocket.bind(r),this.isSymbolicLink=r.isSymbolicLink.bind(r)}};function OWs(e,t){return new xHt(e,t)}ynt.createDirentFromStats=OWs});var kHt=z(bnt=>{"use strict";Object.defineProperty(bnt,"__esModule",{value:!0});bnt.fs=void 0;var QWs=Wan();bnt.fs=QWs});var GHt=z(Ent=>{"use strict";Object.defineProperty(Ent,"__esModule",{value:!0});Ent.joinPathSegments=void 0;function MWs(e,t,r){return e.endsWith(r)?e+t:e+r+t}Ent.joinPathSegments=MWs});var Yan=z(gne=>{"use strict";Object.defineProperty(gne,"__esModule",{value:!0});gne.readdir=gne.readdirWithFileTypes=gne.read=void 0;var HWs=fAe(),Pan=Zan(),YWs=DHt(),Oan=kHt(),Qan=GHt();function XWs(e,t,r){if(!t.stats&&YWs.IS_SUPPORT_READDIR_WITH_FILE_TYPES){Man(e,t,r);return}Han(e,t,r)}gne.read=XWs;function Man(e,t,r){t.fs.readdir(e,{withFileTypes:!0},(s,a)=>{if(s!==null){Bnt(r,s);return}let o=a.map(p=>({dirent:p,name:p.name,path:Qan.joinPathSegments(e,p.name,t.pathSegmentSeparator)}));if(!t.followSymbolicLinks){FHt(r,o);return}let g=o.map(p=>JWs(p,t));Pan(g,(p,f)=>{if(p!==null){Bnt(r,p);return}FHt(r,f)})})}gne.readdirWithFileTypes=Man;function JWs(e,t){return r=>{if(!e.dirent.isSymbolicLink()){r(null,e);return}t.fs.stat(e.path,(s,a)=>{if(s!==null){if(t.throwErrorOnBrokenSymbolicLink){r(s);return}r(null,e);return}e.dirent=Oan.fs.createDirentFromStats(e.name,a),r(null,e)})}}function Han(e,t,r){t.fs.readdir(e,(s,a)=>{if(s!==null){Bnt(r,s);return}let o=a.map(g=>{let p=Qan.joinPathSegments(e,g,t.pathSegmentSeparator);return f=>{HWs.stat(p,t.fsStatSettings,(m,y)=>{if(m!==null){f(m);return}let B={name:g,path:p,dirent:Oan.fs.createDirentFromStats(g,y)};t.stats&&(B.stats=y),f(null,B)})}});Pan(o,(g,p)=>{if(g!==null){Bnt(r,g);return}FHt(r,p)})})}gne.readdir=Han;function Bnt(e,t){e(t)}function FHt(e,t){e(null,t)}});var jan=z(Ane=>{"use strict";Object.defineProperty(Ane,"__esModule",{value:!0});Ane.readdir=Ane.readdirWithFileTypes=Ane.read=void 0;var UWs=fAe(),KWs=DHt(),Xan=kHt(),Jan=GHt();function jWs(e,t){return!t.stats&&KWs.IS_SUPPORT_READDIR_WITH_FILE_TYPES?Uan(e,t):Kan(e,t)}Ane.read=jWs;function Uan(e,t){return t.fs.readdirSync(e,{withFileTypes:!0}).map(s=>{let a={dirent:s,name:s.name,path:Jan.joinPathSegments(e,s.name,t.pathSegmentSeparator)};if(a.dirent.isSymbolicLink()&&t.followSymbolicLinks)try{let o=t.fs.statSync(a.path);a.dirent=Xan.fs.createDirentFromStats(a.name,o)}catch(o){if(t.throwErrorOnBrokenSymbolicLink)throw o}return a})}Ane.readdirWithFileTypes=Uan;function Kan(e,t){return t.fs.readdirSync(e).map(s=>{let a=Jan.joinPathSegments(e,s,t.pathSegmentSeparator),o=UWs.statSync(a,t.fsStatSettings),g={name:s,path:a,dirent:Xan.fs.createDirentFromStats(s,o)};return t.stats&&(g.stats=o),g})}Ane.readdir=Kan});var zan=z(dne=>{"use strict";Object.defineProperty(dne,"__esModule",{value:!0});dne.createFileSystemAdapter=dne.FILE_SYSTEM_ADAPTER=void 0;var Nbe=xt("fs");dne.FILE_SYSTEM_ADAPTER={lstat:Nbe.lstat,stat:Nbe.stat,lstatSync:Nbe.lstatSync,statSync:Nbe.statSync,readdir:Nbe.readdir,readdirSync:Nbe.readdirSync};function zWs(e){return e===void 0?dne.FILE_SYSTEM_ADAPTER:Object.assign(Object.assign({},dne.FILE_SYSTEM_ADAPTER),e)}dne.createFileSystemAdapter=zWs});var qan=z(LHt=>{"use strict";Object.defineProperty(LHt,"__esModule",{value:!0});var qWs=xt("path"),$Ws=fAe(),e3s=zan(),ZHt=class{constructor(t={}){this._options=t,this.followSymbolicLinks=this._getValue(this._options.followSymbolicLinks,!1),this.fs=e3s.createFileSystemAdapter(this._options.fs),this.pathSegmentSeparator=this._getValue(this._options.pathSegmentSeparator,qWs.sep),this.stats=this._getValue(this._options.stats,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!0),this.fsStatSettings=new $Ws.Settings({followSymbolicLink:this.followSymbolicLinks,fs:this.fs,throwErrorOnBrokenSymbolicLink:this.throwErrorOnBrokenSymbolicLink})}_getValue(t,r){return t??r}};LHt.default=ZHt});var vnt=z(pne=>{"use strict";Object.defineProperty(pne,"__esModule",{value:!0});pne.Settings=pne.scandirSync=pne.scandir=void 0;var $an=Yan(),t3s=jan(),VHt=qan();pne.Settings=VHt.default;function r3s(e,t,r){if(typeof t=="function"){$an.read(e,WHt(),t);return}$an.read(e,WHt(t),r)}pne.scandir=r3s;function n3s(e,t){let r=WHt(t);return t3s.read(e,r)}pne.scandirSync=n3s;function WHt(e={}){return e instanceof VHt.default?e:new VHt.default(e)}});var tcn=z((A3c,ecn)=>{"use strict";function i3s(e){var t=new e,r=t;function s(){var o=t;return o.next?t=o.next:(t=new e,r=t),o.next=null,o}function a(o){r.next=o,r=o}return{get:s,release:a}}ecn.exports=i3s});var ncn=z((d3c,PHt)=>{"use strict";var s3s=tcn();function rcn(e,t,r){if(typeof e=="function"&&(r=t,t=e,e=null),!(r>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");var s=s3s(o3s),a=null,o=null,g=0,p=null,f={push:O,drain:mO,saturated:mO,pause:y,paused:!1,get concurrency(){return r},set concurrency(fe){if(!(fe>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");if(r=fe,!f.paused)for(;a&&g=r||f.paused?o?(o.next=he,o=he):(a=he,o=he,f.saturated()):(g++,t.call(e,he.value,he.worked))}function X(fe,pe){var he=s.get();he.context=e,he.release=U,he.value=fe,he.callback=pe||mO,he.errorHandler=p,g>=r||f.paused?a?(he.next=a,a=he):(a=he,o=he,f.saturated()):(g++,t.call(e,he.value,he.worked))}function U(fe){fe&&s.release(fe);var pe=a;pe&&g<=r?f.paused?g--:(o===a&&(o=null),a=pe.next,pe.next=null,t.call(e,pe.value,pe.worked),o===null&&f.empty()):--g===0&&f.drain()}function le(){a=null,o=null,f.drain=mO}function ae(){a=null,o=null,f.drain(),f.drain=mO}function ge(fe){p=fe}}function mO(){}function o3s(){this.value=null,this.callback=mO,this.next=null,this.release=mO,this.context=null,this.errorHandler=null;var e=this;this.worked=function(r,s){var a=e.callback,o=e.errorHandler,g=e.value;e.value=null,e.callback=mO,e.errorHandler&&o(r,g),a.call(e.context,r,s),e.release(e)}}function a3s(e,t,r){typeof e=="function"&&(r=t,t=e,e=null);function s(y,B){t.call(this,y).then(function(v){B(null,v)},B)}var a=rcn(e,s,r),o=a.push,g=a.unshift;return a.push=p,a.unshift=f,a.drained=m,a;function p(y){var B=new Promise(function(v,k){o(y,function(T,O){if(T){k(T);return}v(O)})});return B.catch(mO),B}function f(y){var B=new Promise(function(v,k){g(y,function(T,O){if(T){k(T);return}v(O)})});return B.catch(mO),B}function m(){if(a.idle())return new Promise(function(v){v()});var y=a.drain,B=new Promise(function(v){a.drain=function(){y(),v()}});return B}}PHt.exports=rcn;PHt.exports.promise=a3s});var Snt=z(EJ=>{"use strict";Object.defineProperty(EJ,"__esModule",{value:!0});EJ.joinPathSegments=EJ.replacePathSegmentSeparator=EJ.isAppliedFilter=EJ.isFatalError=void 0;function c3s(e,t){return e.errorFilter===null?!0:!e.errorFilter(t)}EJ.isFatalError=c3s;function l3s(e,t){return e===null||e(t)}EJ.isAppliedFilter=l3s;function u3s(e,t){return e.split(/[/\\]/).join(t)}EJ.replacePathSegmentSeparator=u3s;function g3s(e,t,r){return e===""?t:e.endsWith(r)?e+t:e+r+t}EJ.joinPathSegments=g3s});var MHt=z(QHt=>{"use strict";Object.defineProperty(QHt,"__esModule",{value:!0});var A3s=Snt(),OHt=class{constructor(t,r){this._root=t,this._settings=r,this._root=A3s.replacePathSegmentSeparator(t,r.pathSegmentSeparator)}};QHt.default=OHt});var XHt=z(YHt=>{"use strict";Object.defineProperty(YHt,"__esModule",{value:!0});var d3s=xt("events"),p3s=vnt(),f3s=ncn(),wnt=Snt(),I3s=MHt(),HHt=class extends I3s.default{constructor(t,r){super(t,r),this._settings=r,this._scandir=p3s.scandir,this._emitter=new d3s.EventEmitter,this._queue=f3s(this._worker.bind(this),this._settings.concurrency),this._isFatalError=!1,this._isDestroyed=!1,this._queue.drain=()=>{this._isFatalError||this._emitter.emit("end")}}read(){return this._isFatalError=!1,this._isDestroyed=!1,setImmediate(()=>{this._pushToQueue(this._root,this._settings.basePath)}),this._emitter}get isDestroyed(){return this._isDestroyed}destroy(){if(this._isDestroyed)throw new Error("The reader is already destroyed");this._isDestroyed=!0,this._queue.killAndDrain()}onEntry(t){this._emitter.on("entry",t)}onError(t){this._emitter.once("error",t)}onEnd(t){this._emitter.once("end",t)}_pushToQueue(t,r){let s={directory:t,base:r};this._queue.push(s,a=>{a!==null&&this._handleError(a)})}_worker(t,r){this._scandir(t.directory,this._settings.fsScandirSettings,(s,a)=>{if(s!==null){r(s,void 0);return}for(let o of a)this._handleEntry(o,t.base);r(null,void 0)})}_handleError(t){this._isDestroyed||!wnt.isFatalError(this._settings,t)||(this._isFatalError=!0,this._isDestroyed=!0,this._emitter.emit("error",t))}_handleEntry(t,r){if(this._isDestroyed||this._isFatalError)return;let s=t.path;r!==void 0&&(t.path=wnt.joinPathSegments(r,t.name,this._settings.pathSegmentSeparator)),wnt.isAppliedFilter(this._settings.entryFilter,t)&&this._emitEntry(t),t.dirent.isDirectory()&&wnt.isAppliedFilter(this._settings.deepFilter,t)&&this._pushToQueue(s,r===void 0?void 0:t.path)}_emitEntry(t){this._emitter.emit("entry",t)}};YHt.default=HHt});var icn=z(UHt=>{"use strict";Object.defineProperty(UHt,"__esModule",{value:!0});var C3s=XHt(),JHt=class{constructor(t,r){this._root=t,this._settings=r,this._reader=new C3s.default(this._root,this._settings),this._storage=[]}read(t){this._reader.onError(r=>{m3s(t,r)}),this._reader.onEntry(r=>{this._storage.push(r)}),this._reader.onEnd(()=>{h3s(t,this._storage)}),this._reader.read()}};UHt.default=JHt;function m3s(e,t){e(t)}function h3s(e,t){e(null,t)}});var scn=z(jHt=>{"use strict";Object.defineProperty(jHt,"__esModule",{value:!0});var _3s=xt("stream"),y3s=XHt(),KHt=class{constructor(t,r){this._root=t,this._settings=r,this._reader=new y3s.default(this._root,this._settings),this._stream=new _3s.Readable({objectMode:!0,read:()=>{},destroy:()=>{this._reader.isDestroyed||this._reader.destroy()}})}read(){return this._reader.onError(t=>{this._stream.emit("error",t)}),this._reader.onEntry(t=>{this._stream.push(t)}),this._reader.onEnd(()=>{this._stream.push(null)}),this._reader.read(),this._stream}};jHt.default=KHt});var ocn=z(qHt=>{"use strict";Object.defineProperty(qHt,"__esModule",{value:!0});var b3s=vnt(),Tnt=Snt(),E3s=MHt(),zHt=class extends E3s.default{constructor(){super(...arguments),this._scandir=b3s.scandirSync,this._storage=[],this._queue=new Set}read(){return this._pushToQueue(this._root,this._settings.basePath),this._handleQueue(),this._storage}_pushToQueue(t,r){this._queue.add({directory:t,base:r})}_handleQueue(){for(let t of this._queue.values())this._handleDirectory(t.directory,t.base)}_handleDirectory(t,r){try{let s=this._scandir(t,this._settings.fsScandirSettings);for(let a of s)this._handleEntry(a,r)}catch(s){this._handleError(s)}}_handleError(t){if(Tnt.isFatalError(this._settings,t))throw t}_handleEntry(t,r){let s=t.path;r!==void 0&&(t.path=Tnt.joinPathSegments(r,t.name,this._settings.pathSegmentSeparator)),Tnt.isAppliedFilter(this._settings.entryFilter,t)&&this._pushToStorage(t),t.dirent.isDirectory()&&Tnt.isAppliedFilter(this._settings.deepFilter,t)&&this._pushToQueue(s,r===void 0?void 0:t.path)}_pushToStorage(t){this._storage.push(t)}};qHt.default=zHt});var acn=z(eYt=>{"use strict";Object.defineProperty(eYt,"__esModule",{value:!0});var B3s=ocn(),$Ht=class{constructor(t,r){this._root=t,this._settings=r,this._reader=new B3s.default(this._root,this._settings)}read(){return this._reader.read()}};eYt.default=$Ht});var ccn=z(rYt=>{"use strict";Object.defineProperty(rYt,"__esModule",{value:!0});var v3s=xt("path"),S3s=vnt(),tYt=class{constructor(t={}){this._options=t,this.basePath=this._getValue(this._options.basePath,void 0),this.concurrency=this._getValue(this._options.concurrency,Number.POSITIVE_INFINITY),this.deepFilter=this._getValue(this._options.deepFilter,null),this.entryFilter=this._getValue(this._options.entryFilter,null),this.errorFilter=this._getValue(this._options.errorFilter,null),this.pathSegmentSeparator=this._getValue(this._options.pathSegmentSeparator,v3s.sep),this.fsScandirSettings=new S3s.Settings({followSymbolicLinks:this._options.followSymbolicLinks,fs:this._options.fs,pathSegmentSeparator:this._options.pathSegmentSeparator,stats:this._options.stats,throwErrorOnBrokenSymbolicLink:this._options.throwErrorOnBrokenSymbolicLink})}_getValue(t,r){return t??r}};rYt.default=tYt});var Rnt=z(BJ=>{"use strict";Object.defineProperty(BJ,"__esModule",{value:!0});BJ.Settings=BJ.walkStream=BJ.walkSync=BJ.walk=void 0;var lcn=icn(),w3s=scn(),T3s=acn(),nYt=ccn();BJ.Settings=nYt.default;function N3s(e,t,r){if(typeof t=="function"){new lcn.default(e,Nnt()).read(t);return}new lcn.default(e,Nnt(t)).read(r)}BJ.walk=N3s;function R3s(e,t){let r=Nnt(t);return new T3s.default(e,r).read()}BJ.walkSync=R3s;function D3s(e,t){let r=Nnt(t);return new w3s.default(e,r).read()}BJ.walkStream=D3s;function Nnt(e={}){return e instanceof nYt.default?e:new nYt.default(e)}});var Dnt=z(sYt=>{"use strict";Object.defineProperty(sYt,"__esModule",{value:!0});var x3s=xt("path"),k3s=fAe(),ucn=aj(),iYt=class{constructor(t){this._settings=t,this._fsStatSettings=new k3s.Settings({followSymbolicLink:this._settings.followSymbolicLinks,fs:this._settings.fs,throwErrorOnBrokenSymbolicLink:this._settings.followSymbolicLinks})}_getFullEntryPath(t){return x3s.resolve(this._settings.cwd,t)}_makeEntry(t,r){let s={name:r,path:r,dirent:ucn.fs.createDirentFromStats(r,t)};return this._settings.stats&&(s.stats=t),s}_isFatalError(t){return!ucn.errno.isEnoentCodeError(t)&&!this._settings.suppressErrors}};sYt.default=iYt});var cYt=z(aYt=>{"use strict";Object.defineProperty(aYt,"__esModule",{value:!0});var G3s=xt("stream"),F3s=fAe(),Z3s=Rnt(),L3s=Dnt(),oYt=class extends L3s.default{constructor(){super(...arguments),this._walkStream=Z3s.walkStream,this._stat=F3s.stat}dynamic(t,r){return this._walkStream(t,r)}static(t,r){let s=t.map(this._getFullEntryPath,this),a=new G3s.PassThrough({objectMode:!0});a._write=(o,g,p)=>this._getEntry(s[o],t[o],r).then(f=>{f!==null&&r.entryFilter(f)&&a.push(f),o===s.length-1&&a.end(),p()}).catch(p);for(let o=0;othis._makeEntry(a,r)).catch(a=>{if(s.errorFilter(a))return null;throw a})}_getStat(t){return new Promise((r,s)=>{this._stat(t,this._fsStatSettings,(a,o)=>a===null?r(o):s(a))})}};aYt.default=oYt});var gcn=z(uYt=>{"use strict";Object.defineProperty(uYt,"__esModule",{value:!0});var V3s=Rnt(),W3s=Dnt(),P3s=cYt(),lYt=class extends W3s.default{constructor(){super(...arguments),this._walkAsync=V3s.walk,this._readerStream=new P3s.default(this._settings)}dynamic(t,r){return new Promise((s,a)=>{this._walkAsync(t,r,(o,g)=>{o===null?s(g):a(o)})})}async static(t,r){let s=[],a=this._readerStream.static(t,r);return new Promise((o,g)=>{a.once("error",g),a.on("data",p=>s.push(p)),a.once("end",()=>o(s))})}};uYt.default=lYt});var Acn=z(AYt=>{"use strict";Object.defineProperty(AYt,"__esModule",{value:!0});var W9e=aj(),gYt=class{constructor(t,r,s){this._patterns=t,this._settings=r,this._micromatchOptions=s,this._storage=[],this._fillStorage()}_fillStorage(){for(let t of this._patterns){let r=this._getPatternSegments(t),s=this._splitSegmentsIntoSections(r);this._storage.push({complete:s.length<=1,pattern:t,segments:r,sections:s})}}_getPatternSegments(t){return W9e.pattern.getPatternParts(t,this._micromatchOptions).map(s=>W9e.pattern.isDynamicPattern(s,this._settings)?{dynamic:!0,pattern:s,patternRe:W9e.pattern.makeRe(s,this._micromatchOptions)}:{dynamic:!1,pattern:s})}_splitSegmentsIntoSections(t){return W9e.array.splitWhen(t,r=>r.dynamic&&W9e.pattern.hasGlobStar(r.pattern))}};AYt.default=gYt});var dcn=z(pYt=>{"use strict";Object.defineProperty(pYt,"__esModule",{value:!0});var O3s=Acn(),dYt=class extends O3s.default{match(t){let r=t.split("/"),s=r.length,a=this._storage.filter(o=>!o.complete||o.segments.length>s);for(let o of a){let g=o.sections[0];if(!o.complete&&s>g.length||r.every((f,m)=>{let y=o.segments[m];return!!(y.dynamic&&y.patternRe.test(f)||!y.dynamic&&y.pattern===f)}))return!0}return!1}};pYt.default=dYt});var pcn=z(IYt=>{"use strict";Object.defineProperty(IYt,"__esModule",{value:!0});var xnt=aj(),Q3s=dcn(),fYt=class{constructor(t,r){this._settings=t,this._micromatchOptions=r}getFilter(t,r,s){let a=this._getMatcher(r),o=this._getNegativePatternsRe(s);return g=>this._filter(t,g,a,o)}_getMatcher(t){return new Q3s.default(t,this._settings,this._micromatchOptions)}_getNegativePatternsRe(t){let r=t.filter(xnt.pattern.isAffectDepthOfReadingPattern);return xnt.pattern.convertPatternsToRe(r,this._micromatchOptions)}_filter(t,r,s,a){if(this._isSkippedByDeep(t,r.path)||this._isSkippedSymbolicLink(r))return!1;let o=xnt.path.removeLeadingDotSegment(r.path);return this._isSkippedByPositivePatterns(o,s)?!1:this._isSkippedByNegativePatterns(o,a)}_isSkippedByDeep(t,r){return this._settings.deep===1/0?!1:this._getEntryLevel(t,r)>=this._settings.deep}_getEntryLevel(t,r){let s=r.split("/").length;if(t==="")return s;let a=t.split("/").length;return s-a}_isSkippedSymbolicLink(t){return!this._settings.followSymbolicLinks&&t.dirent.isSymbolicLink()}_isSkippedByPositivePatterns(t,r){return!this._settings.baseNameMatch&&!r.match(t)}_isSkippedByNegativePatterns(t,r){return!xnt.pattern.matchAny(t,r)}};IYt.default=fYt});var fcn=z(mYt=>{"use strict";Object.defineProperty(mYt,"__esModule",{value:!0});var IAe=aj(),CYt=class{constructor(t,r){this._settings=t,this._micromatchOptions=r,this.index=new Map}getFilter(t,r){let s=IAe.pattern.convertPatternsToRe(t,this._micromatchOptions),a=IAe.pattern.convertPatternsToRe(r,Object.assign(Object.assign({},this._micromatchOptions),{dot:!0}));return o=>this._filter(o,s,a)}_filter(t,r,s){let a=IAe.path.removeLeadingDotSegment(t.path);if(this._settings.unique&&this._isDuplicateEntry(a)||this._onlyFileFilter(t)||this._onlyDirectoryFilter(t)||this._isSkippedByAbsoluteNegativePatterns(a,s))return!1;let o=t.dirent.isDirectory(),g=this._isMatchToPatterns(a,r,o)&&!this._isMatchToPatterns(a,s,o);return this._settings.unique&&g&&this._createIndexRecord(a),g}_isDuplicateEntry(t){return this.index.has(t)}_createIndexRecord(t){this.index.set(t,void 0)}_onlyFileFilter(t){return this._settings.onlyFiles&&!t.dirent.isFile()}_onlyDirectoryFilter(t){return this._settings.onlyDirectories&&!t.dirent.isDirectory()}_isSkippedByAbsoluteNegativePatterns(t,r){if(!this._settings.absolute)return!1;let s=IAe.path.makeAbsolute(this._settings.cwd,t);return IAe.pattern.matchAny(s,r)}_isMatchToPatterns(t,r,s){let a=IAe.pattern.matchAny(t,r);return!a&&s?IAe.pattern.matchAny(t+"/",r):a}};mYt.default=CYt});var Icn=z(_Yt=>{"use strict";Object.defineProperty(_Yt,"__esModule",{value:!0});var M3s=aj(),hYt=class{constructor(t){this._settings=t}getFilter(){return t=>this._isNonFatalError(t)}_isNonFatalError(t){return M3s.errno.isEnoentCodeError(t)||this._settings.suppressErrors}};_Yt.default=hYt});var mcn=z(bYt=>{"use strict";Object.defineProperty(bYt,"__esModule",{value:!0});var Ccn=aj(),yYt=class{constructor(t){this._settings=t}getTransformer(){return t=>this._transform(t)}_transform(t){let r=t.path;return this._settings.absolute&&(r=Ccn.path.makeAbsolute(this._settings.cwd,r),r=Ccn.path.unixify(r)),this._settings.markDirectories&&t.dirent.isDirectory()&&(r+="/"),this._settings.objectMode?Object.assign(Object.assign({},t),{path:r}):r}};bYt.default=yYt});var knt=z(BYt=>{"use strict";Object.defineProperty(BYt,"__esModule",{value:!0});var H3s=xt("path"),Y3s=pcn(),X3s=fcn(),J3s=Icn(),U3s=mcn(),EYt=class{constructor(t){this._settings=t,this.errorFilter=new J3s.default(this._settings),this.entryFilter=new X3s.default(this._settings,this._getMicromatchOptions()),this.deepFilter=new Y3s.default(this._settings,this._getMicromatchOptions()),this.entryTransformer=new U3s.default(this._settings)}_getRootDirectory(t){return H3s.resolve(this._settings.cwd,t.base)}_getReaderOptions(t){let r=t.base==="."?"":t.base;return{basePath:r,pathSegmentSeparator:"/",concurrency:this._settings.concurrency,deepFilter:this.deepFilter.getFilter(r,t.positive,t.negative),entryFilter:this.entryFilter.getFilter(t.positive,t.negative),errorFilter:this.errorFilter.getFilter(),followSymbolicLinks:this._settings.followSymbolicLinks,fs:this._settings.fs,stats:this._settings.stats,throwErrorOnBrokenSymbolicLink:this._settings.throwErrorOnBrokenSymbolicLink,transform:this.entryTransformer.getTransformer()}}_getMicromatchOptions(){return{dot:this._settings.dot,matchBase:this._settings.baseNameMatch,nobrace:!this._settings.braceExpansion,nocase:!this._settings.caseSensitiveMatch,noext:!this._settings.extglob,noglobstar:!this._settings.globstar,posix:!0,strictSlashes:!1}}};BYt.default=EYt});var hcn=z(SYt=>{"use strict";Object.defineProperty(SYt,"__esModule",{value:!0});var K3s=gcn(),j3s=knt(),vYt=class extends j3s.default{constructor(){super(...arguments),this._reader=new K3s.default(this._settings)}async read(t){let r=this._getRootDirectory(t),s=this._getReaderOptions(t);return(await this.api(r,t,s)).map(o=>s.transform(o))}api(t,r,s){return r.dynamic?this._reader.dynamic(t,s):this._reader.static(r.patterns,s)}};SYt.default=vYt});var _cn=z(TYt=>{"use strict";Object.defineProperty(TYt,"__esModule",{value:!0});var z3s=xt("stream"),q3s=cYt(),$3s=knt(),wYt=class extends $3s.default{constructor(){super(...arguments),this._reader=new q3s.default(this._settings)}read(t){let r=this._getRootDirectory(t),s=this._getReaderOptions(t),a=this.api(r,t,s),o=new z3s.Readable({objectMode:!0,read:()=>{}});return a.once("error",g=>o.emit("error",g)).on("data",g=>o.emit("data",s.transform(g))).once("end",()=>o.emit("end")),o.once("close",()=>a.destroy()),o}api(t,r,s){return r.dynamic?this._reader.dynamic(t,s):this._reader.static(r.patterns,s)}};TYt.default=wYt});var ycn=z(RYt=>{"use strict";Object.defineProperty(RYt,"__esModule",{value:!0});var ePs=fAe(),tPs=Rnt(),rPs=Dnt(),NYt=class extends rPs.default{constructor(){super(...arguments),this._walkSync=tPs.walkSync,this._statSync=ePs.statSync}dynamic(t,r){return this._walkSync(t,r)}static(t,r){let s=[];for(let a of t){let o=this._getFullEntryPath(a),g=this._getEntry(o,a,r);g===null||!r.entryFilter(g)||s.push(g)}return s}_getEntry(t,r,s){try{let a=this._getStat(t);return this._makeEntry(a,r)}catch(a){if(s.errorFilter(a))return null;throw a}}_getStat(t){return this._statSync(t,this._fsStatSettings)}};RYt.default=NYt});var bcn=z(xYt=>{"use strict";Object.defineProperty(xYt,"__esModule",{value:!0});var nPs=ycn(),iPs=knt(),DYt=class extends iPs.default{constructor(){super(...arguments),this._reader=new nPs.default(this._settings)}read(t){let r=this._getRootDirectory(t),s=this._getReaderOptions(t);return this.api(r,t,s).map(s.transform)}api(t,r,s){return r.dynamic?this._reader.dynamic(t,s):this._reader.static(r.patterns,s)}};xYt.default=DYt});var Ecn=z(Dbe=>{"use strict";Object.defineProperty(Dbe,"__esModule",{value:!0});Dbe.DEFAULT_FILE_SYSTEM_ADAPTER=void 0;var Rbe=xt("fs"),sPs=xt("os"),oPs=Math.max(sPs.cpus().length,1);Dbe.DEFAULT_FILE_SYSTEM_ADAPTER={lstat:Rbe.lstat,lstatSync:Rbe.lstatSync,stat:Rbe.stat,statSync:Rbe.statSync,readdir:Rbe.readdir,readdirSync:Rbe.readdirSync};var kYt=class{constructor(t={}){this._options=t,this.absolute=this._getValue(this._options.absolute,!1),this.baseNameMatch=this._getValue(this._options.baseNameMatch,!1),this.braceExpansion=this._getValue(this._options.braceExpansion,!0),this.caseSensitiveMatch=this._getValue(this._options.caseSensitiveMatch,!0),this.concurrency=this._getValue(this._options.concurrency,oPs),this.cwd=this._getValue(this._options.cwd,process.cwd()),this.deep=this._getValue(this._options.deep,1/0),this.dot=this._getValue(this._options.dot,!1),this.extglob=this._getValue(this._options.extglob,!0),this.followSymbolicLinks=this._getValue(this._options.followSymbolicLinks,!0),this.fs=this._getFileSystemMethods(this._options.fs),this.globstar=this._getValue(this._options.globstar,!0),this.ignore=this._getValue(this._options.ignore,[]),this.markDirectories=this._getValue(this._options.markDirectories,!1),this.objectMode=this._getValue(this._options.objectMode,!1),this.onlyDirectories=this._getValue(this._options.onlyDirectories,!1),this.onlyFiles=this._getValue(this._options.onlyFiles,!0),this.stats=this._getValue(this._options.stats,!1),this.suppressErrors=this._getValue(this._options.suppressErrors,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!1),this.unique=this._getValue(this._options.unique,!0),this.onlyDirectories&&(this.onlyFiles=!1),this.stats&&(this.objectMode=!0),this.ignore=[].concat(this.ignore)}_getValue(t,r){return t===void 0?r:t}_getFileSystemMethods(t={}){return Object.assign(Object.assign({},Dbe.DEFAULT_FILE_SYSTEM_ADAPTER),t)}};Dbe.default=kYt});var xbe=z((V3c,vcn)=>{"use strict";var Bcn=van(),aPs=hcn(),cPs=_cn(),lPs=bcn(),GYt=Ecn(),hO=aj();async function FYt(e,t){CH(e);let r=ZYt(e,aPs.default,t),s=await Promise.all(r);return hO.array.flatten(s)}(function(e){e.glob=e,e.globSync=t,e.globStream=r,e.async=e;function t(m,y){CH(m);let B=ZYt(m,lPs.default,y);return hO.array.flatten(B)}e.sync=t;function r(m,y){CH(m);let B=ZYt(m,cPs.default,y);return hO.stream.merge(B)}e.stream=r;function s(m,y){CH(m);let B=[].concat(m),v=new GYt.default(y);return Bcn.generate(B,v)}e.generateTasks=s;function a(m,y){CH(m);let B=new GYt.default(y);return hO.pattern.isDynamicPattern(m,B)}e.isDynamicPattern=a;function o(m){return CH(m),hO.path.escape(m)}e.escapePath=o;function g(m){return CH(m),hO.path.convertPathToPattern(m)}e.convertPathToPattern=g;let p;(function(m){function y(v){return CH(v),hO.path.escapePosixPath(v)}m.escapePath=y;function B(v){return CH(v),hO.path.convertPosixPathToPattern(v)}m.convertPathToPattern=B})(p=e.posix||(e.posix={}));let f;(function(m){function y(v){return CH(v),hO.path.escapeWindowsPath(v)}m.escapePath=y;function B(v){return CH(v),hO.path.convertWindowsPathToPattern(v)}m.convertPathToPattern=B})(f=e.win32||(e.win32={}))})(FYt||(FYt={}));function ZYt(e,t,r){let s=[].concat(e),a=new GYt.default(r),o=Bcn.generate(s,a),g=new t(a);return o.map(g.read,g)}function CH(e){if(![].concat(e).every(s=>hO.string.isString(s)&&!hO.string.isEmpty(s)))throw new TypeError("Patterns must be a string (non empty) or an array of strings")}vcn.exports=FYt});var Ine=z(P9e=>{"use strict";Object.defineProperty(P9e,"__esModule",{value:!0});P9e.makeHash=gPs;P9e.checksumFile=APs;P9e.checksumPattern=dPs;var uPs=(Oa(),Ai(Pa)),fne=No(),LYt=xt("crypto"),Scn=uPs.__importDefault(xbe());function gPs(...e){let t=(0,LYt.createHash)("sha512"),r="";for(let s of e)typeof s=="string"?r+=s:s&&(r&&(t.update(r),r=""),t.update(s));return r&&t.update(r),t.digest("hex")}async function APs(e,{baseFs:t,algorithm:r}={baseFs:fne.xfs,algorithm:"sha512"}){let s=await t.openPromise(e,"r");try{let o=Buffer.allocUnsafeSlow(65536),g=(0,LYt.createHash)(r),p=0;for(;(p=await t.readPromise(s,o,0,65536))!==0;)g.update(p===65536?o:o.slice(0,p));return g.digest("hex")}finally{await t.closePromise(s)}}async function dPs(e,{cwd:t}){let s=(await(0,Scn.default)(e,{cwd:fne.npath.fromPortablePath(t),onlyDirectories:!0})).map(p=>`${p}/**/*`),a=await(0,Scn.default)([e,...s],{cwd:fne.npath.fromPortablePath(t),onlyFiles:!1});a.sort();let o=await Promise.all(a.map(async p=>{let f=[Buffer.from(p)],m=fne.ppath.join(t,fne.npath.toPortablePath(p)),y=await fne.xfs.lstatPromise(m);return y.isSymbolicLink()?f.push(Buffer.from(await fne.xfs.readlinkPromise(m))):y.isFile()&&f.push(await fne.xfs.readFilePromise(m)),f.join("\0")})),g=(0,LYt.createHash)("sha512");for(let p of o)g.update(p);return g.digest("hex")}});var dk=z(Ap=>{"use strict";Object.defineProperty(Ap,"__esModule",{value:!0});Ap.makeIdent=Znt;Ap.makeDescriptor=Gbe;Ap.makeLocator=Fbe;Ap.convertToIdent=hPs;Ap.convertDescriptorToLocator=_Ps;Ap.convertLocatorToDescriptor=yPs;Ap.convertPackageToLocator=bPs;Ap.renamePackage=PYt;Ap.copyPackage=EPs;Ap.virtualizeDescriptor=BPs;Ap.virtualizePackage=vPs;Ap.isVirtualDescriptor=Lnt;Ap.isVirtualLocator=M9e;Ap.devirtualizeDescriptor=Ncn;Ap.devirtualizeLocator=SPs;Ap.ensureDevirtualizedDescriptor=wPs;Ap.ensureDevirtualizedLocator=TPs;Ap.bindDescriptor=NPs;Ap.bindLocator=RPs;Ap.areIdentsEqual=Rcn;Ap.areDescriptorsEqual=Dcn;Ap.areLocatorsEqual=DPs;Ap.areVirtualPackagesEquivalent=xPs;Ap.parseIdent=kPs;Ap.tryParseIdent=xcn;Ap.parseDescriptor=FPs;Ap.tryParseDescriptor=kcn;Ap.parseLocator=Gcn;Ap.tryParseLocator=Fcn;Ap.parseRange=H9e;Ap.tryParseRange=OPs;Ap.parseFileStyleRange=QPs;Ap.makeRange=Zcn;Ap.convertToManifestRange=HPs;Ap.stringifyIdent=Wnt;Ap.stringifyDescriptor=YPs;Ap.stringifyLocator=XPs;Ap.slugifyIdent=VYt;Ap.slugifyLocator=UPs;Ap.prettyIdent=Pnt;Ap.prettyRange=Lcn;Ap.prettyDescriptor=jPs;Ap.prettyReference=OYt;Ap.prettyLocator=Fnt;Ap.prettyLocatorNoColors=zPs;Ap.sortDescriptors=qPs;Ap.prettyWorkspace=$Ps;Ap.prettyResolution=eOs;Ap.prettyDependent=tOs;Ap.getIdentVendorPath=rOs;Ap.isPackageCompatible=nOs;Ap.allPeerRequests=iOs;var kbe=(Oa(),Ai(Pa)),Q9e=kbe.__importDefault(xt("querystring")),pPs=kbe.__importDefault(Vh()),fPs=Gen(),EF=kbe.__importStar(CO()),WYt=kbe.__importStar(Ine()),IPs=kbe.__importStar(IW()),Gnt=kbe.__importStar(dk()),O9e="virtual:",CPs=5,Tcn=/(os|cpu|libc)=([a-z0-9_-]+)/,mPs=(0,fPs.makeParser)(Tcn);function Znt(e,t){if(e?.startsWith("@"))throw new Error("Invalid scope: don't prefix it with '@'");return{identHash:WYt.makeHash(e,t),scope:e,name:t}}function Gbe(e,t){return{identHash:e.identHash,scope:e.scope,name:e.name,descriptorHash:WYt.makeHash(e.identHash,t),range:t}}function Fbe(e,t){return{identHash:e.identHash,scope:e.scope,name:e.name,locatorHash:WYt.makeHash(e.identHash,t),reference:t}}function hPs(e){return{identHash:e.identHash,scope:e.scope,name:e.name}}function _Ps(e){return{identHash:e.identHash,scope:e.scope,name:e.name,locatorHash:e.descriptorHash,reference:e.range}}function yPs(e){return{identHash:e.identHash,scope:e.scope,name:e.name,descriptorHash:e.locatorHash,range:e.reference}}function bPs(e){return{identHash:e.identHash,scope:e.scope,name:e.name,locatorHash:e.locatorHash,reference:e.reference}}function PYt(e,t){return{identHash:t.identHash,scope:t.scope,name:t.name,locatorHash:t.locatorHash,reference:t.reference,version:e.version,languageName:e.languageName,linkType:e.linkType,conditions:e.conditions,dependencies:new Map(e.dependencies),peerDependencies:new Map(e.peerDependencies),dependenciesMeta:new Map(e.dependenciesMeta),peerDependenciesMeta:new Map(e.peerDependenciesMeta),bin:new Map(e.bin)}}function EPs(e){return PYt(e,e)}function BPs(e,t){if(t.includes("#"))throw new Error("Invalid entropy");return Gbe(e,`virtual:${t}#${e.range}`)}function vPs(e,t){if(t.includes("#"))throw new Error("Invalid entropy");return PYt(e,Fbe(e,`virtual:${t}#${e.reference}`))}function Lnt(e){return e.range.startsWith(O9e)}function M9e(e){return e.reference.startsWith(O9e)}var Vnt=/^[^#]*#/;function Ncn(e){if(!Lnt(e))throw new Error("Not a virtual descriptor");return Gbe(e,e.range.replace(Vnt,""))}function SPs(e){if(!M9e(e))throw new Error("Not a virtual descriptor");return Fbe(e,e.reference.replace(Vnt,""))}function wPs(e){return Lnt(e)?Gbe(e,e.range.replace(Vnt,"")):e}function TPs(e){return M9e(e)?Fbe(e,e.reference.replace(Vnt,"")):e}function NPs(e,t){return e.range.includes("::")?e:Gbe(e,`${e.range}::${Q9e.default.stringify(t)}`)}function RPs(e,t){return e.reference.includes("::")?e:Fbe(e,`${e.reference}::${Q9e.default.stringify(t)}`)}function Rcn(e,t){return e.identHash===t.identHash}function Dcn(e,t){return e.descriptorHash===t.descriptorHash}function DPs(e,t){return e.locatorHash===t.locatorHash}function xPs(e,t){if(!M9e(e))throw new Error("Invalid package type");if(!M9e(t))throw new Error("Invalid package type");if(!Rcn(e,t)||e.dependencies.size!==t.dependencies.size)return!1;for(let r of e.dependencies.values()){let s=t.dependencies.get(r.identHash);if(!s||!Dcn(r,s))return!1}return!0}function kPs(e){let t=xcn(e);if(!t)throw new Error(`Invalid ident (${e})`);return t}var GPs=/^(?:@([^/]+?)\/)?([^@/]+)$/;function xcn(e){let t=e.match(GPs);if(!t)return null;let[,r,s]=t;return Znt(typeof r<"u"?r:null,s)}function FPs(e,t=!1){let r=kcn(e,t);if(!r)throw new Error(`Invalid descriptor (${e})`);return r}var ZPs=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))$/,LPs=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))?$/;function kcn(e,t=!1){let r=t?e.match(ZPs):e.match(LPs);if(!r)return null;let[,s,a,o]=r;if(o==="unknown")throw new Error(`Invalid range (${e})`);let g=typeof s<"u"?s:null,p=typeof o<"u"?o:"unknown";return Gbe(Znt(g,a),p)}function Gcn(e,t=!1){let r=Fcn(e,t);if(!r)throw new Error(`Invalid locator (${e})`);return r}var VPs=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))$/,WPs=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))?$/;function Fcn(e,t=!1){let r=t?e.match(VPs):e.match(WPs);if(!r)return null;let[,s,a,o]=r;if(o==="unknown")throw new Error(`Invalid reference (${e})`);let g=typeof s<"u"?s:null,p=typeof o<"u"?o:"unknown";return Fbe(Znt(g,a),p)}var PPs=/^([^#:]*:)?((?:(?!::)[^#])*)(?:#((?:(?!::).)*))?(?:::(.*))?$/;function H9e(e,t){let r=e.match(PPs);if(r===null)throw new Error(`Invalid range (${e})`);let s=typeof r[1]<"u"?r[1]:null;if(typeof t?.requireProtocol=="string"&&s!==t.requireProtocol)throw new Error(`Invalid protocol (${s})`);if(t?.requireProtocol&&s===null)throw new Error(`Missing protocol (${s})`);let a=typeof r[3]<"u"?decodeURIComponent(r[2]):null;if(t?.requireSource&&a===null)throw new Error(`Missing source (${e})`);let o=typeof r[3]<"u"?decodeURIComponent(r[3]):decodeURIComponent(r[2]),g=t?.parseSelector?Q9e.default.parse(o):o,p=typeof r[4]<"u"?Q9e.default.parse(r[4]):null;return{protocol:s,source:a,selector:g,params:p}}function OPs(e,t){try{return H9e(e,t)}catch{return null}}function QPs(e,{protocol:t}){let{selector:r,params:s}=H9e(e,{requireProtocol:t,requireBindings:!0});if(typeof s.locator!="string")throw new Error(`Assertion failed: Invalid bindings for ${e}`);return{parentLocator:Gcn(s.locator,!0),path:r}}function wcn(e){return e=e.replaceAll("%","%25"),e=e.replaceAll(":","%3A"),e=e.replaceAll("#","%23"),e}function MPs(e){return e===null?!1:Object.entries(e).length>0}function Zcn({protocol:e,source:t,selector:r,params:s}){let a="";return e!==null&&(a+=`${e}`),t!==null&&(a+=`${wcn(t)}#`),a+=wcn(r),MPs(s)&&(a+=`::${Q9e.default.stringify(s)}`),a}function HPs(e){let{params:t,protocol:r,source:s,selector:a}=H9e(e);for(let o in t)o.startsWith("__")&&delete t[o];return Zcn({protocol:r,source:s,params:t,selector:a})}function Wnt(e){return e.scope?`@${e.scope}/${e.name}`:`${e.name}`}function YPs(e){return e.scope?`@${e.scope}/${e.name}@${e.range}`:`${e.name}@${e.range}`}function XPs(e){return e.scope?`@${e.scope}/${e.name}@${e.reference}`:`${e.name}@${e.reference}`}function VYt(e){return e.scope!==null?`@${e.scope}-${e.name}`:e.name}var JPs=/:$/;function UPs(e){let{protocol:t,selector:r}=H9e(e.reference),s=t!==null?t.replace(JPs,""):"exotic",a=pPs.default.valid(r),o=a!==null?`${s}-${a}`:`${s}`,g=10;return e.scope?`${VYt(e)}-${o}-${e.locatorHash.slice(0,g)}`:`${VYt(e)}-${o}-${e.locatorHash.slice(0,g)}`}function Pnt(e,t){return t.scope?`${EF.pretty(e,`@${t.scope}/`,EF.Type.SCOPE)}${EF.pretty(e,t.name,EF.Type.NAME)}`:`${EF.pretty(e,t.name,EF.Type.NAME)}`}var KPs=/\?.*/;function Ont(e){if(e.startsWith(O9e)){let t=Ont(e.substring(e.indexOf("#")+1)),r=e.substring(O9e.length,O9e.length+CPs);return`${t} [${r}]`}else return e.replace(KPs,"?[...]")}function Lcn(e,t){return`${EF.pretty(e,Ont(t),EF.Type.RANGE)}`}function jPs(e,t){return`${Pnt(e,t)}${EF.pretty(e,"@",EF.Type.RANGE)}${Lcn(e,t.range)}`}function OYt(e,t){return`${EF.pretty(e,Ont(t),EF.Type.REFERENCE)}`}function Fnt(e,t){return`${Pnt(e,t)}${EF.pretty(e,"@",EF.Type.REFERENCE)}${OYt(e,t.reference)}`}function zPs(e){return`${Wnt(e)}@${Ont(e.reference)}`}function qPs(e){return IPs.sortMap(e,[t=>Wnt(t),t=>t.range])}function $Ps(e,t){return Pnt(e,t.anchoredLocator)}function eOs(e,t,r){let s=Lnt(t)?Ncn(t):t;return r===null?`${Gnt.prettyDescriptor(e,s)} \u2192 ${EF.mark(e).Cross}`:s.identHash===r.identHash?`${Gnt.prettyDescriptor(e,s)} \u2192 ${OYt(e,r.reference)}`:`${Gnt.prettyDescriptor(e,s)} \u2192 ${Fnt(e,r)}`}function tOs(e,t,r){return r===null?`${Fnt(e,t)}`:`${Fnt(e,t)} (via ${Gnt.prettyRange(e,r.range)})`}function rOs(e){return`node_modules/${Wnt(e)}`}function nOs(e,t){return e.conditions?mPs(e.conditions,r=>{let[,s,a]=r.match(Tcn),o=t[s];return o?o.includes(a):!0}):!0}function iOs(e){let t=new Set;if("children"in e)t.add(e);else for(let r of e.requests.values())t.add(r);for(let r of t)for(let s of r.children.values())t.add(s);return t}});var Vcn=z(Qnt=>{"use strict";Object.defineProperty(Qnt,"__esModule",{value:!0});Qnt.CorePlugin=void 0;var sOs=(Oa(),Ai(Pa)),oOs=NL(),Cne=sOs.__importStar(dk());Qnt.CorePlugin={hooks:{reduceDependency:(e,t,r,s,{resolver:a,resolveOptions:o})=>{for(let{pattern:g,reference:p}of t.topLevelWorkspace.manifest.resolutions){if(g.from&&(g.from.fullName!==Cne.stringifyIdent(r)||t.configuration.normalizeLocator(Cne.makeLocator(Cne.parseIdent(g.from.fullName),g.from.description??r.reference)).locatorHash!==r.locatorHash)||g.descriptor.fullName!==Cne.stringifyIdent(e)||t.configuration.normalizeDependency(Cne.makeDescriptor(Cne.parseLocator(g.descriptor.fullName),g.descriptor.description??e.range)).descriptorHash!==e.descriptorHash)continue;return a.bindDescriptor(t.configuration.normalizeDependency(Cne.makeDescriptor(e,p)),t.topLevelWorkspace.anchoredLocator,o)}return e},validateProject:async(e,t)=>{for(let r of e.workspaces){let s=Cne.prettyWorkspace(e.configuration,r);await e.configuration.triggerHook(a=>a.validateWorkspace,r,{reportWarning:(a,o)=>t.reportWarning(a,`${s}: ${o}`),reportError:(a,o)=>t.reportError(a,`${s}: ${o}`)})}},validateWorkspace:async(e,t)=>{let{manifest:r}=e;r.resolutions.length&&e.cwd!==e.project.cwd&&r.errors.push(new Error("Resolutions field will be ignored"));for(let s of r.errors)t.reportWarning(oOs.MessageName.INVALID_MANIFEST,s.message)}}}});var CAe=z(Hnt=>{"use strict";Object.defineProperty(Hnt,"__esModule",{value:!0});Hnt.WorkspaceResolver=void 0;var aOs=dAe(),Mnt=class e{supportsDescriptor(t,r){return!!(t.range.startsWith(e.protocol)||r.project.tryWorkspaceByDescriptor(t)!==null)}supportsLocator(t,r){return!!t.reference.startsWith(e.protocol)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,s){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,s){return[s.project.getWorkspaceByDescriptor(t).anchoredLocator]}async getSatisfying(t,r,s,a){let[o]=await this.getCandidates(t,r,a);return{locators:s.filter(g=>g.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){let s=r.project.getWorkspaceByCwd(t.reference.slice(e.protocol.length));return{...t,version:s.manifest.version||"0.0.0",languageName:"unknown",linkType:aOs.LinkType.SOFT,conditions:null,dependencies:r.project.configuration.normalizeDependencyMap(new Map([...s.manifest.dependencies,...s.manifest.devDependencies])),peerDependencies:new Map([...s.manifest.peerDependencies]),dependenciesMeta:s.manifest.dependenciesMeta,peerDependenciesMeta:s.manifest.peerDependenciesMeta,bin:s.manifest.bin}}};Hnt.WorkspaceResolver=Mnt;Mnt.protocol="workspace:"});var cj=z(mH=>{"use strict";Object.defineProperty(mH,"__esModule",{value:!0});mH.SemVer=void 0;mH.satisfiesWithPrereleases=uOs;mH.validRange=Ocn;mH.clean=AOs;mH.getComparator=Qcn;mH.mergeComparators=QYt;mH.stringifyComparator=Mcn;mH.simplifyRanges=dOs;var cOs=(Oa(),Ai(Pa)),mne=cOs.__importDefault(Vh()),lOs=Vh();Object.defineProperty(mH,"SemVer",{enumerable:!0,get:function(){return lOs.SemVer}});var Wcn=new Map;function uOs(e,t,r=!1){if(!e)return!1;let s=`${t}${r}`,a=Wcn.get(s);if(typeof a>"u")try{a=new mne.default.Range(t,{includePrerelease:!0,loose:r})}catch{return!1}finally{Wcn.set(s,a||null)}else if(a===null)return!1;let o;try{o=new mne.default.SemVer(e,a)}catch{return!1}return a.test(o)?!0:(o.prerelease&&(o.prerelease=[]),a.set.some(g=>{for(let p of g)p.semver.prerelease&&(p.semver.prerelease=[]);return g.every(p=>p.test(o))}))}var Pcn=new Map;function Ocn(e){if(e.indexOf(":")!==-1)return null;let t=Pcn.get(e);if(typeof t<"u")return t;try{t=new mne.default.Range(e)}catch{t=null}return Pcn.set(e,t),t}var gOs=/^(?:[\sv=]*?)((0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?)(?:\s*)$/;function AOs(e){let t=gOs.exec(e);return t?t[1]:null}function Qcn(e){if(e.semver===mne.default.Comparator.ANY)return{gt:null,lt:null};switch(e.operator){case"":return{gt:[">=",e.semver],lt:["<=",e.semver]};case">":case">=":return{gt:[e.operator,e.semver],lt:null};case"<":case"<=":return{gt:null,lt:[e.operator,e.semver]};default:throw new Error(`Assertion failed: Unexpected comparator operator (${e.operator})`)}}function QYt(e){if(e.length===0)return null;let t=null,r=null;for(let s of e){if(s.gt){let a=t!==null?mne.default.compare(s.gt[1],t[1]):null;(a===null||a>0||a===0&&s.gt[0]===">")&&(t=s.gt)}if(s.lt){let a=r!==null?mne.default.compare(s.lt[1],r[1]):null;(a===null||a<0||a===0&&s.lt[0]==="<")&&(r=s.lt)}}if(t&&r){let s=mne.default.compare(t[1],r[1]);if(s===0&&(t[0]===">"||r[0]==="<")||s>0)return null}return{gt:t,lt:r}}function Mcn(e){if(e.gt&&e.lt){if(e.gt[0]===">="&&e.lt[0]==="<="&&e.gt[1].version===e.lt[1].version)return e.gt[1].version;if(e.gt[0]===">="&&e.lt[0]==="<"){if(e.lt[1].version===`${e.gt[1].major+1}.0.0-0`)return`^${e.gt[1].version}`;if(e.lt[1].version===`${e.gt[1].major}.${e.gt[1].minor+1}.0-0`)return`~${e.gt[1].version}`}}let t=[];return e.gt&&t.push(e.gt[0]+e.gt[1].version),e.lt&&t.push(e.lt[0]+e.lt[1].version),t.length?t.join(" "):"*"}function dOs(e){let t=e.map(pOs).map(s=>Ocn(s).set.map(a=>a.map(o=>Qcn(o)))),r=t.shift().map(s=>QYt(s)).filter(s=>s!==null);for(let s of t){let a=[];for(let o of r)for(let g of s){let p=QYt([o,...g]);p!==null&&a.push(p)}r=a}return r.length===0?null:r.map(s=>Mcn(s)).join(" || ")}function pOs(e){let t=e.split("||");if(t.length>1){let r=new Set;for(let s of t)t.some(a=>a!==s&&mne.default.subset(s,a))||r.add(s);if(r.size{"use strict";Object.defineProperty(Knt,"__esModule",{value:!0});Knt.Manifest=void 0;var Unt=(Oa(),Ai(Pa)),Ynt=No(),Hcn=uO(),fOs=Unt.__importDefault(Vh()),IOs=CAe(),Jnt=Unt.__importStar(IW()),COs=Unt.__importStar(cj()),b0=Unt.__importStar(dk()),Zbe=class e{constructor(){this.indent=" ",this.name=null,this.version=null,this.os=null,this.cpu=null,this.libc=null,this.type=null,this.packageManager=null,this.private=!1,this.license=null,this.main=null,this.module=null,this.browser=null,this.languageName=null,this.bin=new Map,this.scripts=new Map,this.dependencies=new Map,this.devDependencies=new Map,this.peerDependencies=new Map,this.workspaceDefinitions=[],this.dependenciesMeta=new Map,this.peerDependenciesMeta=new Map,this.resolutions=[],this.files=null,this.publishConfig=null,this.installConfig=null,this.preferUnplugged=null,this.raw={},this.errors=[]}static async tryFind(t,{baseFs:r=new Ynt.NodeFS}={}){let s=Ynt.ppath.join(t,"package.json");try{return await e.fromFile(s,{baseFs:r})}catch(a){if(a.code==="ENOENT")return null;throw a}}static async find(t,{baseFs:r}={}){let s=await e.tryFind(t,{baseFs:r});if(s===null)throw new Error("Manifest not found");return s}static async fromFile(t,{baseFs:r=new Ynt.NodeFS}={}){let s=new e;return await s.loadFile(t,{baseFs:r}),s}static fromText(t){let r=new e;return r.loadFromText(t),r}loadFromText(t){let r;try{r=JSON.parse(Xcn(t)||"{}")}catch(s){throw s.message+=` (when parsing ${t})`,s}this.load(r),this.indent=Ycn(t)}async loadFile(t,{baseFs:r=new Ynt.NodeFS}){let s=await r.readFilePromise(t,"utf8"),a;try{a=JSON.parse(Xcn(s)||"{}")}catch(o){throw o.message+=` (when parsing ${t})`,o}this.load(a),this.indent=Ycn(s)}load(t,{yamlCompatibilityMode:r=!1}={}){if(typeof t!="object"||t===null)throw new Error(`Utterly invalid manifest data (${t})`);this.raw=t;let s=[];if(this.name=null,typeof t.name=="string")try{this.name=b0.parseIdent(t.name)}catch{s.push(new Error("Parsing failed for the 'name' field"))}if(typeof t.version=="string"?this.version=t.version:this.version=null,Array.isArray(t.os)){let o=[];this.os=o;for(let g of t.os)typeof g!="string"?s.push(new Error("Parsing failed for the 'os' field")):o.push(g)}else this.os=null;if(Array.isArray(t.cpu)){let o=[];this.cpu=o;for(let g of t.cpu)typeof g!="string"?s.push(new Error("Parsing failed for the 'cpu' field")):o.push(g)}else this.cpu=null;if(Array.isArray(t.libc)){let o=[];this.libc=o;for(let g of t.libc)typeof g!="string"?s.push(new Error("Parsing failed for the 'libc' field")):o.push(g)}else this.libc=null;if(typeof t.type=="string"?this.type=t.type:this.type=null,typeof t.packageManager=="string"?this.packageManager=t.packageManager:this.packageManager=null,typeof t.private=="boolean"?this.private=t.private:this.private=!1,typeof t.license=="string"?this.license=t.license:this.license=null,typeof t.languageName=="string"?this.languageName=t.languageName:this.languageName=null,typeof t.main=="string"?this.main=BF(t.main):this.main=null,typeof t.module=="string"?this.module=BF(t.module):this.module=null,t.browser!=null)if(typeof t.browser=="string")this.browser=BF(t.browser);else{this.browser=new Map;for(let[o,g]of Object.entries(t.browser))this.browser.set(BF(o),typeof g=="string"?BF(g):g)}else this.browser=null;if(this.bin=new Map,typeof t.bin=="string")t.bin.trim()===""?s.push(new Error("Invalid bin field")):this.name!==null?this.bin.set(this.name.name,BF(t.bin)):s.push(new Error("String bin field, but no attached package name"));else if(typeof t.bin=="object"&&t.bin!==null)for(let[o,g]of Object.entries(t.bin)){if(typeof g!="string"||g.trim()===""){s.push(new Error(`Invalid bin definition for '${o}'`));continue}let p=b0.parseIdent(o);this.bin.set(p.name,BF(g))}if(this.scripts=new Map,typeof t.scripts=="object"&&t.scripts!==null)for(let[o,g]of Object.entries(t.scripts)){if(typeof g!="string"){s.push(new Error(`Invalid script definition for '${o}'`));continue}this.scripts.set(o,g)}if(this.dependencies=new Map,typeof t.dependencies=="object"&&t.dependencies!==null)for(let[o,g]of Object.entries(t.dependencies)){if(typeof g!="string"){s.push(new Error(`Invalid dependency range for '${o}'`));continue}let p;try{p=b0.parseIdent(o)}catch{s.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}let f=b0.makeDescriptor(p,g);this.dependencies.set(f.identHash,f)}if(this.devDependencies=new Map,typeof t.devDependencies=="object"&&t.devDependencies!==null)for(let[o,g]of Object.entries(t.devDependencies)){if(typeof g!="string"){s.push(new Error(`Invalid dependency range for '${o}'`));continue}let p;try{p=b0.parseIdent(o)}catch{s.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}let f=b0.makeDescriptor(p,g);this.devDependencies.set(f.identHash,f)}if(this.peerDependencies=new Map,typeof t.peerDependencies=="object"&&t.peerDependencies!==null)for(let[o,g]of Object.entries(t.peerDependencies)){let p;try{p=b0.parseIdent(o)}catch{s.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}(typeof g!="string"||!g.startsWith(IOs.WorkspaceResolver.protocol)&&!COs.validRange(g))&&(s.push(new Error(`Invalid dependency range for '${o}'`)),g="*");let f=b0.makeDescriptor(p,g);this.peerDependencies.set(f.identHash,f)}typeof t.workspaces=="object"&&t.workspaces!==null&&t.workspaces.nohoist&&s.push(new Error("'nohoist' is deprecated, please use 'installConfig.hoistingLimits' instead"));let a=Array.isArray(t.workspaces)?t.workspaces:typeof t.workspaces=="object"&&t.workspaces!==null&&Array.isArray(t.workspaces.packages)?t.workspaces.packages:[];this.workspaceDefinitions=[];for(let o of a){if(typeof o!="string"){s.push(new Error(`Invalid workspace definition for '${o}'`));continue}this.workspaceDefinitions.push({pattern:o})}if(this.dependenciesMeta=new Map,typeof t.dependenciesMeta=="object"&&t.dependenciesMeta!==null)for(let[o,g]of Object.entries(t.dependenciesMeta)){if(typeof g!="object"||g===null){s.push(new Error(`Invalid meta field for '${o}`));continue}let p=b0.parseDescriptor(o),f=this.ensureDependencyMeta(p),m=Xnt(g.built,{yamlCompatibilityMode:r});if(m===null){s.push(new Error(`Invalid built meta field for '${o}'`));continue}let y=Xnt(g.optional,{yamlCompatibilityMode:r});if(y===null){s.push(new Error(`Invalid optional meta field for '${o}'`));continue}let B=Xnt(g.unplugged,{yamlCompatibilityMode:r});if(B===null){s.push(new Error(`Invalid unplugged meta field for '${o}'`));continue}Object.assign(f,{built:m,optional:y,unplugged:B})}if(this.peerDependenciesMeta=new Map,typeof t.peerDependenciesMeta=="object"&&t.peerDependenciesMeta!==null)for(let[o,g]of Object.entries(t.peerDependenciesMeta)){if(typeof g!="object"||g===null){s.push(new Error(`Invalid meta field for '${o}'`));continue}let p=b0.parseDescriptor(o),f=this.ensurePeerDependencyMeta(p),m=Xnt(g.optional,{yamlCompatibilityMode:r});if(m===null){s.push(new Error(`Invalid optional meta field for '${o}'`));continue}Object.assign(f,{optional:m})}if(this.resolutions=[],typeof t.resolutions=="object"&&t.resolutions!==null)for(let[o,g]of Object.entries(t.resolutions)){if(typeof g!="string"){s.push(new Error(`Invalid resolution entry for '${o}'`));continue}try{this.resolutions.push({pattern:(0,Hcn.parseResolution)(o),reference:g})}catch(p){s.push(p);continue}}if(Array.isArray(t.files)){this.files=new Set;for(let o of t.files){if(typeof o!="string"){s.push(new Error(`Invalid files entry for '${o}'`));continue}this.files.add(o)}}else this.files=null;if(typeof t.publishConfig=="object"&&t.publishConfig!==null){if(this.publishConfig={},typeof t.publishConfig.access=="string"&&(this.publishConfig.access=t.publishConfig.access),typeof t.publishConfig.main=="string"&&(this.publishConfig.main=BF(t.publishConfig.main)),typeof t.publishConfig.module=="string"&&(this.publishConfig.module=BF(t.publishConfig.module)),t.publishConfig.browser!=null)if(typeof t.publishConfig.browser=="string")this.publishConfig.browser=BF(t.publishConfig.browser);else{this.publishConfig.browser=new Map;for(let[o,g]of Object.entries(t.publishConfig.browser))this.publishConfig.browser.set(BF(o),typeof g=="string"?BF(g):g)}if(typeof t.publishConfig.registry=="string"&&(this.publishConfig.registry=t.publishConfig.registry),typeof t.publishConfig.bin=="string")this.name!==null?this.publishConfig.bin=new Map([[this.name.name,BF(t.publishConfig.bin)]]):s.push(new Error("String bin field, but no attached package name"));else if(typeof t.publishConfig.bin=="object"&&t.publishConfig.bin!==null){this.publishConfig.bin=new Map;for(let[o,g]of Object.entries(t.publishConfig.bin)){if(typeof g!="string"){s.push(new Error(`Invalid bin definition for '${o}'`));continue}this.publishConfig.bin.set(o,BF(g))}}if(Array.isArray(t.publishConfig.executableFiles)){this.publishConfig.executableFiles=new Set;for(let o of t.publishConfig.executableFiles){if(typeof o!="string"){s.push(new Error("Invalid executable file definition"));continue}this.publishConfig.executableFiles.add(BF(o))}}}else this.publishConfig=null;if(typeof t.installConfig=="object"&&t.installConfig!==null){this.installConfig={};for(let o of Object.keys(t.installConfig))o==="hoistingLimits"?typeof t.installConfig.hoistingLimits=="string"?this.installConfig.hoistingLimits=t.installConfig.hoistingLimits:s.push(new Error("Invalid hoisting limits definition")):o=="selfReferences"?typeof t.installConfig.selfReferences=="boolean"?this.installConfig.selfReferences=t.installConfig.selfReferences:s.push(new Error("Invalid selfReferences definition, must be a boolean value")):s.push(new Error(`Unrecognized installConfig key: ${o}`))}else this.installConfig=null;if(typeof t.optionalDependencies=="object"&&t.optionalDependencies!==null)for(let[o,g]of Object.entries(t.optionalDependencies)){if(typeof g!="string"){s.push(new Error(`Invalid dependency range for '${o}'`));continue}let p;try{p=b0.parseIdent(o)}catch{s.push(new Error(`Parsing failed for the dependency name '${o}'`));continue}let f=b0.makeDescriptor(p,g);this.dependencies.set(f.identHash,f);let m=b0.makeDescriptor(p,"unknown"),y=this.ensureDependencyMeta(m);Object.assign(y,{optional:!0})}typeof t.preferUnplugged=="boolean"?this.preferUnplugged=t.preferUnplugged:this.preferUnplugged=null,this.errors=s}getForScope(t){switch(t){case"dependencies":return this.dependencies;case"devDependencies":return this.devDependencies;case"peerDependencies":return this.peerDependencies;default:throw new Error(`Unsupported value ("${t}")`)}}hasConsumerDependency(t){return!!(this.dependencies.has(t.identHash)||this.peerDependencies.has(t.identHash))}hasHardDependency(t){return!!(this.dependencies.has(t.identHash)||this.devDependencies.has(t.identHash))}hasSoftDependency(t){return!!this.peerDependencies.has(t.identHash)}hasDependency(t){return!!(this.hasHardDependency(t)||this.hasSoftDependency(t))}getConditions(){let t=[];return this.os&&this.os.length>0&&t.push(MYt("os",this.os)),this.cpu&&this.cpu.length>0&&t.push(MYt("cpu",this.cpu)),this.libc&&this.libc.length>0&&t.push(MYt("libc",this.libc)),t.length>0?t.join(" & "):null}ensureDependencyMeta(t){if(t.range!=="unknown"&&!fOs.default.valid(t.range))throw new Error(`Invalid meta field range for '${b0.stringifyDescriptor(t)}'`);let r=b0.stringifyIdent(t),s=t.range!=="unknown"?t.range:null,a=this.dependenciesMeta.get(r);a||this.dependenciesMeta.set(r,a=new Map);let o=a.get(s);return o||a.set(s,o={}),o}ensurePeerDependencyMeta(t){if(t.range!=="unknown")throw new Error(`Invalid meta field range for '${b0.stringifyDescriptor(t)}'`);let r=b0.stringifyIdent(t),s=this.peerDependenciesMeta.get(r);return s||this.peerDependenciesMeta.set(r,s={}),s}setRawField(t,r,{after:s=[]}={}){let a=new Set(s.filter(o=>Object.hasOwn(this.raw,o)));if(a.size===0||Object.hasOwn(this.raw,t))this.raw[t]=r;else{let o=this.raw,g=this.raw={},p=!1;for(let f of Object.keys(o))g[f]=o[f],p||(a.delete(f),a.size===0&&(g[t]=r,p=!0))}}exportTo(t,{compatibilityMode:r=!0}={}){if(Object.assign(t,this.raw),this.name!==null?t.name=b0.stringifyIdent(this.name):delete t.name,this.version!==null?t.version=this.version:delete t.version,this.os!==null?t.os=this.os:delete t.os,this.cpu!==null?t.cpu=this.cpu:delete t.cpu,this.type!==null?t.type=this.type:delete t.type,this.packageManager!==null?t.packageManager=this.packageManager:delete t.packageManager,this.private?t.private=!0:delete t.private,this.license!==null?t.license=this.license:delete t.license,this.languageName!==null?t.languageName=this.languageName:delete t.languageName,this.main!==null?t.main=this.main:delete t.main,this.module!==null?t.module=this.module:delete t.module,this.browser!==null){let o=this.browser;typeof o=="string"?t.browser=o:o instanceof Map&&(t.browser=Object.assign({},...Array.from(o.keys()).sort().map(g=>({[g]:o.get(g)}))))}else delete t.browser;this.bin.size===1&&this.name!==null&&this.bin.has(this.name.name)?t.bin=this.bin.get(this.name.name):this.bin.size>0?t.bin=Object.assign({},...Array.from(this.bin.keys()).sort().map(o=>({[o]:this.bin.get(o)}))):delete t.bin,this.workspaceDefinitions.length>0?this.raw.workspaces&&!Array.isArray(this.raw.workspaces)?t.workspaces={...this.raw.workspaces,packages:this.workspaceDefinitions.map(({pattern:o})=>o)}:t.workspaces=this.workspaceDefinitions.map(({pattern:o})=>o):this.raw.workspaces&&!Array.isArray(this.raw.workspaces)&&Object.keys(this.raw.workspaces).length>0?t.workspaces=this.raw.workspaces:delete t.workspaces;let s=[],a=[];for(let o of this.dependencies.values()){let g=this.dependenciesMeta.get(b0.stringifyIdent(o)),p=!1;if(r&&g){let f=g.get(null);f&&f.optional&&(p=!0)}p?a.push(o):s.push(o)}s.length>0?t.dependencies=Object.assign({},...b0.sortDescriptors(s).map(o=>({[b0.stringifyIdent(o)]:o.range}))):delete t.dependencies,a.length>0?t.optionalDependencies=Object.assign({},...b0.sortDescriptors(a).map(o=>({[b0.stringifyIdent(o)]:o.range}))):delete t.optionalDependencies,this.devDependencies.size>0?t.devDependencies=Object.assign({},...b0.sortDescriptors(this.devDependencies.values()).map(o=>({[b0.stringifyIdent(o)]:o.range}))):delete t.devDependencies,this.peerDependencies.size>0?t.peerDependencies=Object.assign({},...b0.sortDescriptors(this.peerDependencies.values()).map(o=>({[b0.stringifyIdent(o)]:o.range}))):delete t.peerDependencies,t.dependenciesMeta={};for(let[o,g]of Jnt.sortMap(this.dependenciesMeta.entries(),([p,f])=>p))for(let[p,f]of Jnt.sortMap(g.entries(),([m,y])=>m!==null?`0${m}`:"1")){let m=p!==null?b0.stringifyDescriptor(b0.makeDescriptor(b0.parseIdent(o),p)):o,y={...f};r&&p===null&&delete y.optional,Object.keys(y).length!==0&&(t.dependenciesMeta[m]=y)}if(Object.keys(t.dependenciesMeta).length===0&&delete t.dependenciesMeta,this.peerDependenciesMeta.size>0?t.peerDependenciesMeta=Object.assign({},...Jnt.sortMap(this.peerDependenciesMeta.entries(),([o,g])=>o).map(([o,g])=>({[o]:g}))):delete t.peerDependenciesMeta,this.resolutions.length>0?t.resolutions=Object.assign({},...this.resolutions.map(({pattern:o,reference:g})=>({[(0,Hcn.stringifyResolution)(o)]:g}))):delete t.resolutions,this.files!==null?t.files=Array.from(this.files):delete t.files,this.preferUnplugged!==null?t.preferUnplugged=this.preferUnplugged:delete t.preferUnplugged,this.scripts!==null&&this.scripts.size>0){t.scripts??={};for(let o of Object.keys(t.scripts))this.scripts.has(o)||delete t.scripts[o];for(let[o,g]of this.scripts.entries())t.scripts[o]=g}else delete t.scripts;return t}};Knt.Manifest=Zbe;Zbe.fileName="package.json";Zbe.allDependencies=["dependencies","devDependencies","peerDependencies"];Zbe.hardDependencies=["dependencies","devDependencies"];function Ycn(e){let t=e.match(/^[ \t]+/m);return t?t[0]:" "}function Xcn(e){return e.charCodeAt(0)===65279?e.slice(1):e}function BF(e){return e.replace(/\\/g,"/")}function Xnt(e,{yamlCompatibilityMode:t}){return t?Jnt.tryParseOptionalBoolean(e):typeof e>"u"||typeof e=="boolean"?e:null}function Jcn(e,t){let r=t.search(/[^!]/);if(r===-1)return"invalid";let s=r%2===0?"":"!",a=t.slice(r);return`${s}${e}=${a}`}function MYt(e,t){return t.length===1?Jcn(e,t[0]):`(${t.map(r=>Jcn(e,r)).join(" | ")})`}});var Kcn=z((Y3c,Ucn)=>{var mOs=IO(),hOs=function(){return mOs.Date.now()};Ucn.exports=hOs});var zcn=z((X3c,jcn)=>{var _Os=/\s/;function yOs(e){for(var t=e.length;t--&&_Os.test(e.charAt(t)););return t}jcn.exports=yOs});var $cn=z((J3c,qcn)=>{var bOs=zcn(),EOs=/^\s+/;function BOs(e){return e&&e.slice(0,bOs(e)+1).replace(EOs,"")}qcn.exports=BOs});var Y9e=z((U3c,eln)=>{var vOs=uAe(),SOs=bJ(),wOs="[object Symbol]";function TOs(e){return typeof e=="symbol"||SOs(e)&&vOs(e)==wOs}eln.exports=TOs});var iln=z((K3c,nln)=>{var NOs=$cn(),tln=fW(),ROs=Y9e(),rln=NaN,DOs=/^[-+]0x[0-9a-f]+$/i,xOs=/^0b[01]+$/i,kOs=/^0o[0-7]+$/i,GOs=parseInt;function FOs(e){if(typeof e=="number")return e;if(ROs(e))return rln;if(tln(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=tln(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=NOs(e);var r=xOs.test(e);return r||kOs.test(e)?GOs(e.slice(2),r?2:8):DOs.test(e)?rln:+e}nln.exports=FOs});var aln=z((j3c,oln)=>{var ZOs=fW(),HYt=Kcn(),sln=iln(),LOs="Expected a function",VOs=Math.max,WOs=Math.min;function POs(e,t,r){var s,a,o,g,p,f,m=0,y=!1,B=!1,v=!0;if(typeof e!="function")throw new TypeError(LOs);t=sln(t)||0,ZOs(r)&&(y=!!r.leading,B="maxWait"in r,o=B?VOs(sln(r.maxWait)||0,t):o,v="trailing"in r?!!r.trailing:v);function k(pe){var he=s,be=a;return s=a=void 0,m=pe,g=e.apply(be,he),g}function T(pe){return m=pe,p=setTimeout(U,t),y?k(pe):g}function O(pe){var he=pe-f,be=pe-m,Te=t-he;return B?WOs(Te,o-be):Te}function X(pe){var he=pe-f,be=pe-m;return f===void 0||he>=t||he<0||B&&be>=o}function U(){var pe=HYt();if(X(pe))return le(pe);p=setTimeout(U,O(pe))}function le(pe){return p=void 0,v&&s?k(pe):(s=a=void 0,g)}function ae(){p!==void 0&&clearTimeout(p),m=0,s=f=a=p=void 0}function ge(){return p===void 0?g:le(HYt())}function fe(){var pe=HYt(),he=X(pe);if(s=arguments,a=this,f=pe,he){if(p===void 0)return T(f);if(B)return clearTimeout(p),p=setTimeout(U,t),k(f)}return p===void 0&&(p=setTimeout(U,t)),g}return fe.cancel=ae,fe.flush=ge,fe}oln.exports=POs});var lln=z((z3c,cln)=>{var OOs=aln(),QOs=fW(),MOs="Expected a function";function HOs(e,t,r){var s=!0,a=!0;if(typeof e!="function")throw new TypeError(MOs);return QOs(r)&&(s="leading"in r?!!r.leading:s,a="trailing"in r?!!r.trailing:a),OOs(e,t,{leading:s,maxWait:t,trailing:a})}cln.exports=HOs});var _O=z(mAe=>{"use strict";Object.defineProperty(mAe,"__esModule",{value:!0});mAe.Report=mAe.ReportError=void 0;mAe.isReportError=uln;var YOs=(Oa(),Ai(Pa)),XOs=YOs.__importDefault(lln()),JOs=xt("stream"),UOs=xt("string_decoder"),KOs=NL(),jOs=15,YYt=class extends Error{constructor(t,r,s){super(r),this.reportExtra=s,this.reportCode=t}};mAe.ReportError=YYt;function uln(e){return typeof e.reportCode<"u"}var XYt=class{constructor(){this.cacheHits=new Set,this.cacheMisses=new Set,this.reportedInfos=new Set,this.reportedWarnings=new Set,this.reportedErrors=new Set}getRecommendedLength(){return 180}reportCacheHit(t){this.cacheHits.add(t.locatorHash)}reportCacheMiss(t,r){this.cacheMisses.add(t.locatorHash)}static progressViaCounter(t){let r=0,s,a=new Promise(f=>{s=f}),o=f=>{let m=s;a=new Promise(y=>{s=y}),r=f,m()},g=(f=0)=>{o(r+1)},p=async function*(){for(;r{r=g}),a=(0,XOs.default)(g=>{let p=r;s=new Promise(f=>{r=f}),t=g,p()},1e3/jOs),o=async function*(){for(;;)await s,yield{title:t}}();return{[Symbol.asyncIterator](){return o},hasProgress:!1,hasTitle:!0,setTitle:a}}async startProgressPromise(t,r){let s=this.reportProgress(t);try{return await r(t)}finally{s.stop()}}startProgressSync(t,r){let s=this.reportProgress(t);try{return r(t)}finally{s.stop()}}reportInfoOnce(t,r,s){let a=s&&s.key?s.key:r;this.reportedInfos.has(a)||(this.reportedInfos.add(a),this.reportInfo(t,r),s?.reportExtra?.(this))}reportWarningOnce(t,r,s){let a=s&&s.key?s.key:r;this.reportedWarnings.has(a)||(this.reportedWarnings.add(a),this.reportWarning(t,r),s?.reportExtra?.(this))}reportErrorOnce(t,r,s){let a=s&&s.key?s.key:r;this.reportedErrors.has(a)||(this.reportedErrors.add(a),this.reportError(t,r),s?.reportExtra?.(this))}reportExceptionOnce(t){uln(t)?this.reportErrorOnce(t.reportCode,t.message,{key:t,reportExtra:t.reportExtra}):this.reportErrorOnce(KOs.MessageName.EXCEPTION,t.stack||t.message,{key:t})}createStreamReporter(t=null){let r=new JOs.PassThrough,s=new UOs.StringDecoder,a="";return r.on("data",o=>{let g=s.write(o),p;do if(p=g.indexOf(` +`),p!==-1){let f=a+g.substring(0,p);g=g.substring(p+1),a="",t!==null?this.reportInfo(null,`${t} ${f}`):this.reportInfo(null,f)}while(p!==-1);a+=g}),r.on("end",()=>{let o=s.end();o!==""&&(t!==null?this.reportInfo(null,`${t} ${o}`):this.reportInfo(null,o))}),r}};mAe.Report=XYt});var UYt=z(jnt=>{"use strict";Object.defineProperty(jnt,"__esModule",{value:!0});jnt.MultiFetcher=void 0;var zOs=(Oa(),Ai(Pa)),qOs=NL(),$Os=_O(),eQs=zOs.__importStar(dk()),JYt=class{constructor(t){this.fetchers=t}supports(t,r){return!!this.tryFetcher(t,r)}getLocalPath(t,r){return this.getFetcher(t,r).getLocalPath(t,r)}async fetch(t,r){return await this.getFetcher(t,r).fetch(t,r)}tryFetcher(t,r){let s=this.fetchers.find(a=>a.supports(t,r));return s||null}getFetcher(t,r){let s=this.fetchers.find(a=>a.supports(t,r));if(!s)throw new $Os.ReportError(qOs.MessageName.FETCHER_NOT_FOUND,`${eQs.prettyLocator(r.project.configuration,t)} isn't supported by any available fetcher`);return s}};jnt.MultiFetcher=JYt});var jYt=z(znt=>{"use strict";Object.defineProperty(znt,"__esModule",{value:!0});znt.MultiResolver=void 0;var tQs=(Oa(),Ai(Pa)),gln=tQs.__importStar(dk()),KYt=class{constructor(t){this.resolvers=t.filter(r=>r)}supportsDescriptor(t,r){return!!this.tryResolverByDescriptor(t,r)}supportsLocator(t,r){return!!this.tryResolverByLocator(t,r)}shouldPersistResolution(t,r){return this.getResolverByLocator(t,r).shouldPersistResolution(t,r)}bindDescriptor(t,r,s){return this.getResolverByDescriptor(t,s).bindDescriptor(t,r,s)}getResolutionDependencies(t,r){return this.getResolverByDescriptor(t,r).getResolutionDependencies(t,r)}async getCandidates(t,r,s){return await this.getResolverByDescriptor(t,s).getCandidates(t,r,s)}async getSatisfying(t,r,s,a){return this.getResolverByDescriptor(t,a).getSatisfying(t,r,s,a)}async resolve(t,r){return await this.getResolverByLocator(t,r).resolve(t,r)}tryResolverByDescriptor(t,r){let s=this.resolvers.find(a=>a.supportsDescriptor(t,r));return s||null}getResolverByDescriptor(t,r){let s=this.resolvers.find(a=>a.supportsDescriptor(t,r));if(!s)throw new Error(`${gln.prettyDescriptor(r.project.configuration,t)} isn't supported by any available resolver`);return s}tryResolverByLocator(t,r){let s=this.resolvers.find(a=>a.supportsLocator(t,r));return s||null}getResolverByLocator(t,r){let s=this.resolvers.find(a=>a.supportsLocator(t,r));if(!s)throw new Error(`${gln.prettyLocator(r.project.configuration,t)} isn't supported by any available resolver`);return s}};znt.MultiResolver=KYt});var eXt=z(qnt=>{"use strict";Object.defineProperty(qnt,"__esModule",{value:!0});qnt.VirtualFetcher=void 0;var rQs=(Oa(),Ai(Pa)),zYt=No(),qYt=rQs.__importStar(dk()),$Yt=class{supports(t){return!!t.reference.startsWith("virtual:")}getLocalPath(t,r){let s=t.reference.indexOf("#");if(s===-1)throw new Error("Invalid virtual package reference");let a=t.reference.slice(s+1),o=qYt.makeLocator(t,a);return r.fetcher.getLocalPath(o,r)}async fetch(t,r){let s=t.reference.indexOf("#");if(s===-1)throw new Error("Invalid virtual package reference");let a=t.reference.slice(s+1),o=qYt.makeLocator(t,a),g=await r.fetcher.fetch(o,r);return await this.ensureVirtualLink(t,g,r)}getLocatorFilename(t){return qYt.slugifyLocator(t)}async ensureVirtualLink(t,r,s){let a=r.packageFs.getRealPath(),o=s.project.configuration.get("virtualFolder"),g=this.getLocatorFilename(t),p=zYt.VirtualFS.makeVirtualPath(o,g,a),f=new zYt.AliasFS(p,{baseFs:r.packageFs,pathUtils:zYt.ppath});return{...r,packageFs:f}}};qnt.VirtualFetcher=$Yt});var Aln=z(eit=>{"use strict";Object.defineProperty(eit,"__esModule",{value:!0});eit.VirtualResolver=void 0;var $nt=class e{static isVirtualDescriptor(t){return!!t.range.startsWith(e.protocol)}static isVirtualLocator(t){return!!t.reference.startsWith(e.protocol)}supportsDescriptor(t,r){return e.isVirtualDescriptor(t)}supportsLocator(t,r){return e.isVirtualLocator(t)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,s){throw new Error('Assertion failed: calling "bindDescriptor" on a virtual descriptor is unsupported')}getResolutionDependencies(t,r){throw new Error('Assertion failed: calling "getResolutionDependencies" on a virtual descriptor is unsupported')}async getCandidates(t,r,s){throw new Error('Assertion failed: calling "getCandidates" on a virtual descriptor is unsupported')}async getSatisfying(t,r,s,a){throw new Error('Assertion failed: calling "getSatisfying" on a virtual descriptor is unsupported')}async resolve(t,r){throw new Error('Assertion failed: calling "resolve" on a virtual locator is unsupported')}};eit.VirtualResolver=$nt;$nt.protocol="virtual:"});var rXt=z(tit=>{"use strict";Object.defineProperty(tit,"__esModule",{value:!0});tit.WorkspaceFetcher=void 0;var dln=No(),pln=CAe(),tXt=class{supports(t){return!!t.reference.startsWith(pln.WorkspaceResolver.protocol)}getLocalPath(t,r){return this.getWorkspace(t,r).cwd}async fetch(t,r){let s=this.getWorkspace(t,r).cwd;return{packageFs:new dln.CwdFS(s),prefixPath:dln.PortablePath.dot,localPath:s}}getWorkspace(t,r){return r.project.getWorkspaceByCwd(t.reference.slice(pln.WorkspaceResolver.protocol.length))}};tit.WorkspaceFetcher=tXt});var Cln=z(vJ=>{"use strict";Object.defineProperty(vJ,"__esModule",{value:!0});vJ.RESOLVED_RC_FILE=void 0;vJ.resolveRcFiles=oQs;vJ.getValue=aQs;vJ.getValueByTree=sXt;vJ.getSource=cQs;var nQs=(e,t,r)=>{let s=[...e];return s.reverse(),s.findIndex(t,r)};function X9e(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var yO;(function(e){e[e.Object=0]="Object",e[e.Array=1]="Array",e[e.Literal=2]="Literal",e[e.Undefined=3]="Undefined"})(yO||(yO={}));function fln(e){return typeof e>"u"?yO.Undefined:X9e(e)?yO.Object:Array.isArray(e)?yO.Array:yO.Literal}function oXt(e,t){return Object.hasOwn(e,t)}function iQs(e){return X9e(e)&&oXt(e,"onConflict")&&typeof e.onConflict=="string"}function sQs(e){if(typeof e>"u")return{onConflict:"default",value:e};if(!iQs(e))return{onConflict:"default",value:e};if(oXt(e,"value"))return e;let{onConflict:t,...r}=e;return{onConflict:t,value:r}}function Iln(e,t){let r=X9e(e)&&oXt(e,t)?e[t]:void 0;return sQs(r)}vJ.RESOLVED_RC_FILE=Symbol();function Vbe(e,t){return[e,t,vJ.RESOLVED_RC_FILE]}function aXt(e){return Array.isArray(e)?e[2]===vJ.RESOLVED_RC_FILE:!1}function nXt(e,t){if(X9e(e)){let r={};for(let s of Object.keys(e))r[s]=nXt(e[s],t);return Vbe(t,r)}return Array.isArray(e)?Vbe(t,e.map(r=>nXt(r,t))):Vbe(t,e)}function iXt(e,t,r,s,a){let o,g=[],p=a,f=0;for(let y=a-1;y>=s;--y){let[B,v]=e[y],{onConflict:k,value:T}=Iln(v,r),O=fln(T);if(O!==yO.Undefined){if(o??=O,O!==o||k==="hardReset"){f=p;break}if(O===yO.Literal)return Vbe(B,T);if(g.unshift([B,T]),k==="reset"){f=y;break}k==="extend"&&y===s&&(s=0),p=y}}if(typeof o>"u")return null;let m=g.map(([y])=>y).join(", ");switch(o){case yO.Array:return Vbe(m,new Array().concat(...g.map(([y,B])=>B.map(v=>nXt(v,y)))));case yO.Object:{let y=Object.assign({},...g.map(([,O])=>O)),B=Object.keys(y),v={},k=e.map(([O,X])=>[O,Iln(X,r).value]),T=nQs(k,([O,X])=>{let U=fln(X);return U!==yO.Object&&U!==yO.Undefined});if(T!==-1){let O=k.slice(T+1);for(let X of B)v[X]=iXt(O,t,X,0,O.length)}else for(let O of B)v[O]=iXt(k,t,O,f,k.length);return Vbe(m,v)}default:throw new Error("Assertion failed: Non-extendable value type")}}function oQs(e){return iXt(e.map(([t,r])=>[t,{".":r}]),[],".",0,e.length)}function aQs(e){return aXt(e)?e[1]:e}function sXt(e){let t=aXt(e)?e[1]:e;if(Array.isArray(t))return t.map(r=>sXt(r));if(X9e(t)){let r={};for(let[s,a]of Object.entries(t))r[s]=sXt(a);return r}return t}function cQs(e){return aXt(e)?e[0]:null}});var rit=z(J9e=>{"use strict";Object.defineProperty(J9e,"__esModule",{value:!0});J9e.getDefaultGlobalFolder=lQs;J9e.getHomeFolder=hln;J9e.isFolderInside=uQs;var lj=No(),mln=xt("os");function lQs(){if(process.platform==="win32"){let e=lj.npath.toPortablePath(process.env.LOCALAPPDATA||lj.npath.join((0,mln.homedir)(),"AppData","Local"));return lj.ppath.resolve(e,"Yarn/Berry")}if(process.env.XDG_DATA_HOME){let e=lj.npath.toPortablePath(process.env.XDG_DATA_HOME);return lj.ppath.resolve(e,"yarn/berry")}return lj.ppath.resolve(hln(),".yarn/berry")}function hln(){return lj.npath.toPortablePath((0,mln.homedir)()||"/usr/local/share")}function uQs(e,t){let r=lj.ppath.relative(t,e);return r&&!r.startsWith("..")&&!lj.ppath.isAbsolute(r)}});var Eln=z(Wbe=>{"use strict";var oPc=xt("net"),gQs=xt("tls"),cXt=xt("http"),_ln=xt("https"),AQs=xt("events"),aPc=xt("assert"),dQs=xt("util");Wbe.httpOverHttp=pQs;Wbe.httpsOverHttp=fQs;Wbe.httpOverHttps=IQs;Wbe.httpsOverHttps=CQs;function pQs(e){var t=new uj(e);return t.request=cXt.request,t}function fQs(e){var t=new uj(e);return t.request=cXt.request,t.createSocket=yln,t.defaultPort=443,t}function IQs(e){var t=new uj(e);return t.request=_ln.request,t}function CQs(e){var t=new uj(e);return t.request=_ln.request,t.createSocket=yln,t.defaultPort=443,t}function uj(e){var t=this;t.options=e||{},t.proxyOptions=t.options.proxy||{},t.maxSockets=t.options.maxSockets||cXt.Agent.defaultMaxSockets,t.requests=[],t.sockets=[],t.on("free",function(s,a,o,g){for(var p=bln(a,o,g),f=0,m=t.requests.length;f=this.maxSockets){o.requests.push(g);return}o.createSocket(g,function(p){p.on("free",f),p.on("close",m),p.on("agentRemove",m),t.onSocket(p);function f(){o.emit("free",p,g)}function m(y){o.removeSocket(p),p.removeListener("free",f),p.removeListener("close",m),p.removeListener("agentRemove",m)}})};uj.prototype.createSocket=function(t,r){var s=this,a={};s.sockets.push(a);var o=lXt({},s.proxyOptions,{method:"CONNECT",path:t.host+":"+t.port,agent:!1,headers:{host:t.host+":"+t.port}});t.localAddress&&(o.localAddress=t.localAddress),o.proxyAuth&&(o.headers=o.headers||{},o.headers["Proxy-Authorization"]="Basic "+new Buffer(o.proxyAuth).toString("base64")),hne("making CONNECT request");var g=s.request(o);g.useChunkedEncodingByDefault=!1,g.once("response",p),g.once("upgrade",f),g.once("connect",m),g.once("error",y),g.end();function p(B){B.upgrade=!0}function f(B,v,k){process.nextTick(function(){m(B,v,k)})}function m(B,v,k){if(g.removeAllListeners(),v.removeAllListeners(),B.statusCode!==200){hne("tunneling socket could not be established, statusCode=%d",B.statusCode),v.destroy();var T=new Error("tunneling socket could not be established, statusCode="+B.statusCode);T.code="ECONNRESET",t.request.emit("error",T),s.removeSocket(a);return}if(k.length>0){hne("got illegal response body from proxy"),v.destroy();var T=new Error("got illegal response body from proxy");T.code="ECONNRESET",t.request.emit("error",T),s.removeSocket(a);return}return hne("tunneling connection has established"),s.sockets[s.sockets.indexOf(a)]=v,r(v)}function y(B){g.removeAllListeners(),hne(`tunneling socket could not be established, cause=%s +`,B.message,B.stack);var v=new Error("tunneling socket could not be established, cause="+B.message);v.code="ECONNRESET",t.request.emit("error",v),s.removeSocket(a)}};uj.prototype.removeSocket=function(t){var r=this.sockets.indexOf(t);if(r!==-1){this.sockets.splice(r,1);var s=this.requests.shift();s&&this.createSocket(s,function(a){s.request.onSocket(a)})}};function yln(e,t){var r=this;uj.prototype.createSocket.call(r,e,function(s){var a=e.request.getHeader("host"),o=lXt({},r.options,{socket:s,servername:a?a.replace(/:.*$/,""):e.host}),g=gQs.connect(0,o);r.sockets[r.sockets.indexOf(s)]=g,t(g)})}function bln(e,t,r){return typeof e=="string"?{host:e,port:t,localAddress:r}:e}function lXt(e){for(var t=1,r=arguments.length;t{Bln.exports=Eln()});var Aj=z((gj,nit)=>{"use strict";Object.defineProperty(gj,"__esModule",{value:!0});var vln=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"];function mQs(e){return vln.includes(e)}var hQs=["Function","Generator","AsyncGenerator","GeneratorFunction","AsyncGeneratorFunction","AsyncFunction","Observable","Array","Buffer","Blob","Object","RegExp","Date","Error","Map","Set","WeakMap","WeakSet","ArrayBuffer","SharedArrayBuffer","DataView","Promise","URL","FormData","URLSearchParams","HTMLElement",...vln];function _Qs(e){return hQs.includes(e)}var yQs=["null","undefined","string","number","bigint","boolean","symbol"];function bQs(e){return yQs.includes(e)}function Pbe(e){return t=>typeof t===e}var{toString:Sln}=Object.prototype,U9e=e=>{let t=Sln.call(e).slice(8,-1);if(/HTML\w+Element/.test(t)&&yi.domElement(e))return"HTMLElement";if(_Qs(t))return t},hb=e=>t=>U9e(t)===e;function yi(e){if(e===null)return"null";switch(typeof e){case"undefined":return"undefined";case"string":return"string";case"number":return"number";case"boolean":return"boolean";case"function":return"Function";case"bigint":return"bigint";case"symbol":return"symbol";default:}if(yi.observable(e))return"Observable";if(yi.array(e))return"Array";if(yi.buffer(e))return"Buffer";let t=U9e(e);if(t)return t;if(e instanceof String||e instanceof Boolean||e instanceof Number)throw new TypeError("Please don't use object wrappers for primitive types");return"Object"}yi.undefined=Pbe("undefined");yi.string=Pbe("string");var EQs=Pbe("number");yi.number=e=>EQs(e)&&!yi.nan(e);yi.bigint=Pbe("bigint");yi.function_=Pbe("function");yi.null_=e=>e===null;yi.class_=e=>yi.function_(e)&&e.toString().startsWith("class ");yi.boolean=e=>e===!0||e===!1;yi.symbol=Pbe("symbol");yi.numericString=e=>yi.string(e)&&!yi.emptyStringOrWhitespace(e)&&!Number.isNaN(Number(e));yi.array=(e,t)=>Array.isArray(e)?yi.function_(t)?e.every(t):!0:!1;yi.buffer=e=>{var t,r,s,a;return(a=(s=(r=(t=e)===null||t===void 0?void 0:t.constructor)===null||r===void 0?void 0:r.isBuffer)===null||s===void 0?void 0:s.call(r,e))!==null&&a!==void 0?a:!1};yi.blob=e=>hb("Blob")(e);yi.nullOrUndefined=e=>yi.null_(e)||yi.undefined(e);yi.object=e=>!yi.null_(e)&&(typeof e=="object"||yi.function_(e));yi.iterable=e=>{var t;return yi.function_((t=e)===null||t===void 0?void 0:t[Symbol.iterator])};yi.asyncIterable=e=>{var t;return yi.function_((t=e)===null||t===void 0?void 0:t[Symbol.asyncIterator])};yi.generator=e=>{var t,r;return yi.iterable(e)&&yi.function_((t=e)===null||t===void 0?void 0:t.next)&&yi.function_((r=e)===null||r===void 0?void 0:r.throw)};yi.asyncGenerator=e=>yi.asyncIterable(e)&&yi.function_(e.next)&&yi.function_(e.throw);yi.nativePromise=e=>hb("Promise")(e);var BQs=e=>{var t,r;return yi.function_((t=e)===null||t===void 0?void 0:t.then)&&yi.function_((r=e)===null||r===void 0?void 0:r.catch)};yi.promise=e=>yi.nativePromise(e)||BQs(e);yi.generatorFunction=hb("GeneratorFunction");yi.asyncGeneratorFunction=e=>U9e(e)==="AsyncGeneratorFunction";yi.asyncFunction=e=>U9e(e)==="AsyncFunction";yi.boundFunction=e=>yi.function_(e)&&!e.hasOwnProperty("prototype");yi.regExp=hb("RegExp");yi.date=hb("Date");yi.error=hb("Error");yi.map=e=>hb("Map")(e);yi.set=e=>hb("Set")(e);yi.weakMap=e=>hb("WeakMap")(e);yi.weakSet=e=>hb("WeakSet")(e);yi.int8Array=hb("Int8Array");yi.uint8Array=hb("Uint8Array");yi.uint8ClampedArray=hb("Uint8ClampedArray");yi.int16Array=hb("Int16Array");yi.uint16Array=hb("Uint16Array");yi.int32Array=hb("Int32Array");yi.uint32Array=hb("Uint32Array");yi.float32Array=hb("Float32Array");yi.float64Array=hb("Float64Array");yi.bigInt64Array=hb("BigInt64Array");yi.bigUint64Array=hb("BigUint64Array");yi.arrayBuffer=hb("ArrayBuffer");yi.sharedArrayBuffer=hb("SharedArrayBuffer");yi.dataView=hb("DataView");yi.enumCase=(e,t)=>Object.values(t).includes(e);yi.directInstanceOf=(e,t)=>Object.getPrototypeOf(e)===t.prototype;yi.urlInstance=e=>hb("URL")(e);yi.urlString=e=>{if(!yi.string(e))return!1;try{return new URL(e),!0}catch{return!1}};yi.truthy=e=>!!e;yi.falsy=e=>!e;yi.nan=e=>Number.isNaN(e);yi.primitive=e=>yi.null_(e)||bQs(typeof e);yi.integer=e=>Number.isInteger(e);yi.safeInteger=e=>Number.isSafeInteger(e);yi.plainObject=e=>{if(Sln.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.getPrototypeOf({})};yi.typedArray=e=>mQs(U9e(e));var vQs=e=>yi.safeInteger(e)&&e>=0;yi.arrayLike=e=>!yi.nullOrUndefined(e)&&!yi.function_(e)&&vQs(e.length);yi.inRange=(e,t)=>{if(yi.number(t))return e>=Math.min(0,t)&&e<=Math.max(t,0);if(yi.array(t)&&t.length===2)return e>=Math.min(...t)&&e<=Math.max(...t);throw new TypeError(`Invalid range: ${JSON.stringify(t)}`)};var SQs=1,wQs=["innerHTML","ownerDocument","style","attributes","nodeValue"];yi.domElement=e=>yi.object(e)&&e.nodeType===SQs&&yi.string(e.nodeName)&&!yi.plainObject(e)&&wQs.every(t=>t in e);yi.observable=e=>{var t,r,s,a;return e?e===((r=(t=e)[Symbol.observable])===null||r===void 0?void 0:r.call(t))||e===((a=(s=e)["@@observable"])===null||a===void 0?void 0:a.call(s)):!1};yi.nodeStream=e=>yi.object(e)&&yi.function_(e.pipe)&&!yi.observable(e);yi.infinite=e=>e===1/0||e===-1/0;var wln=e=>t=>yi.integer(t)&&Math.abs(t%2)===e;yi.evenInteger=wln(0);yi.oddInteger=wln(1);yi.emptyArray=e=>yi.array(e)&&e.length===0;yi.nonEmptyArray=e=>yi.array(e)&&e.length>0;yi.emptyString=e=>yi.string(e)&&e.length===0;var TQs=e=>yi.string(e)&&!/\S/.test(e);yi.emptyStringOrWhitespace=e=>yi.emptyString(e)||TQs(e);yi.nonEmptyString=e=>yi.string(e)&&e.length>0;yi.nonEmptyStringAndNotWhitespace=e=>yi.string(e)&&!yi.emptyStringOrWhitespace(e);yi.emptyObject=e=>yi.object(e)&&!yi.map(e)&&!yi.set(e)&&Object.keys(e).length===0;yi.nonEmptyObject=e=>yi.object(e)&&!yi.map(e)&&!yi.set(e)&&Object.keys(e).length>0;yi.emptySet=e=>yi.set(e)&&e.size===0;yi.nonEmptySet=e=>yi.set(e)&&e.size>0;yi.emptyMap=e=>yi.map(e)&&e.size===0;yi.nonEmptyMap=e=>yi.map(e)&&e.size>0;yi.propertyKey=e=>yi.any([yi.string,yi.number,yi.symbol],e);yi.formData=e=>hb("FormData")(e);yi.urlSearchParams=e=>hb("URLSearchParams")(e);var Tln=(e,t,r)=>{if(!yi.function_(t))throw new TypeError(`Invalid predicate: ${JSON.stringify(t)}`);if(r.length===0)throw new TypeError("Invalid number of values");return e.call(r,t)};yi.any=(e,...t)=>(yi.array(e)?e:[e]).some(s=>Tln(Array.prototype.some,s,t));yi.all=(e,...t)=>Tln(Array.prototype.every,e,t);var yu=(e,t,r,s={})=>{if(!e){let{multipleValues:a}=s,o=a?`received values of types ${[...new Set(r.map(g=>`\`${yi(g)}\``))].join(", ")}`:`received value of type \`${yi(r)}\``;throw new TypeError(`Expected value which is \`${t}\`, ${o}.`)}};gj.assert={undefined:e=>yu(yi.undefined(e),"undefined",e),string:e=>yu(yi.string(e),"string",e),number:e=>yu(yi.number(e),"number",e),bigint:e=>yu(yi.bigint(e),"bigint",e),function_:e=>yu(yi.function_(e),"Function",e),null_:e=>yu(yi.null_(e),"null",e),class_:e=>yu(yi.class_(e),"Class",e),boolean:e=>yu(yi.boolean(e),"boolean",e),symbol:e=>yu(yi.symbol(e),"symbol",e),numericString:e=>yu(yi.numericString(e),"string with a number",e),array:(e,t)=>{yu(yi.array(e),"Array",e),t&&e.forEach(t)},buffer:e=>yu(yi.buffer(e),"Buffer",e),blob:e=>yu(yi.blob(e),"Blob",e),nullOrUndefined:e=>yu(yi.nullOrUndefined(e),"null or undefined",e),object:e=>yu(yi.object(e),"Object",e),iterable:e=>yu(yi.iterable(e),"Iterable",e),asyncIterable:e=>yu(yi.asyncIterable(e),"AsyncIterable",e),generator:e=>yu(yi.generator(e),"Generator",e),asyncGenerator:e=>yu(yi.asyncGenerator(e),"AsyncGenerator",e),nativePromise:e=>yu(yi.nativePromise(e),"native Promise",e),promise:e=>yu(yi.promise(e),"Promise",e),generatorFunction:e=>yu(yi.generatorFunction(e),"GeneratorFunction",e),asyncGeneratorFunction:e=>yu(yi.asyncGeneratorFunction(e),"AsyncGeneratorFunction",e),asyncFunction:e=>yu(yi.asyncFunction(e),"AsyncFunction",e),boundFunction:e=>yu(yi.boundFunction(e),"Function",e),regExp:e=>yu(yi.regExp(e),"RegExp",e),date:e=>yu(yi.date(e),"Date",e),error:e=>yu(yi.error(e),"Error",e),map:e=>yu(yi.map(e),"Map",e),set:e=>yu(yi.set(e),"Set",e),weakMap:e=>yu(yi.weakMap(e),"WeakMap",e),weakSet:e=>yu(yi.weakSet(e),"WeakSet",e),int8Array:e=>yu(yi.int8Array(e),"Int8Array",e),uint8Array:e=>yu(yi.uint8Array(e),"Uint8Array",e),uint8ClampedArray:e=>yu(yi.uint8ClampedArray(e),"Uint8ClampedArray",e),int16Array:e=>yu(yi.int16Array(e),"Int16Array",e),uint16Array:e=>yu(yi.uint16Array(e),"Uint16Array",e),int32Array:e=>yu(yi.int32Array(e),"Int32Array",e),uint32Array:e=>yu(yi.uint32Array(e),"Uint32Array",e),float32Array:e=>yu(yi.float32Array(e),"Float32Array",e),float64Array:e=>yu(yi.float64Array(e),"Float64Array",e),bigInt64Array:e=>yu(yi.bigInt64Array(e),"BigInt64Array",e),bigUint64Array:e=>yu(yi.bigUint64Array(e),"BigUint64Array",e),arrayBuffer:e=>yu(yi.arrayBuffer(e),"ArrayBuffer",e),sharedArrayBuffer:e=>yu(yi.sharedArrayBuffer(e),"SharedArrayBuffer",e),dataView:e=>yu(yi.dataView(e),"DataView",e),enumCase:(e,t)=>yu(yi.enumCase(e,t),"EnumCase",e),urlInstance:e=>yu(yi.urlInstance(e),"URL",e),urlString:e=>yu(yi.urlString(e),"string with a URL",e),truthy:e=>yu(yi.truthy(e),"truthy",e),falsy:e=>yu(yi.falsy(e),"falsy",e),nan:e=>yu(yi.nan(e),"NaN",e),primitive:e=>yu(yi.primitive(e),"primitive",e),integer:e=>yu(yi.integer(e),"integer",e),safeInteger:e=>yu(yi.safeInteger(e),"integer",e),plainObject:e=>yu(yi.plainObject(e),"plain object",e),typedArray:e=>yu(yi.typedArray(e),"TypedArray",e),arrayLike:e=>yu(yi.arrayLike(e),"array-like",e),domElement:e=>yu(yi.domElement(e),"HTMLElement",e),observable:e=>yu(yi.observable(e),"Observable",e),nodeStream:e=>yu(yi.nodeStream(e),"Node.js Stream",e),infinite:e=>yu(yi.infinite(e),"infinite number",e),emptyArray:e=>yu(yi.emptyArray(e),"empty array",e),nonEmptyArray:e=>yu(yi.nonEmptyArray(e),"non-empty array",e),emptyString:e=>yu(yi.emptyString(e),"empty string",e),emptyStringOrWhitespace:e=>yu(yi.emptyStringOrWhitespace(e),"empty string or whitespace",e),nonEmptyString:e=>yu(yi.nonEmptyString(e),"non-empty string",e),nonEmptyStringAndNotWhitespace:e=>yu(yi.nonEmptyStringAndNotWhitespace(e),"non-empty string and not whitespace",e),emptyObject:e=>yu(yi.emptyObject(e),"empty object",e),nonEmptyObject:e=>yu(yi.nonEmptyObject(e),"non-empty object",e),emptySet:e=>yu(yi.emptySet(e),"empty set",e),nonEmptySet:e=>yu(yi.nonEmptySet(e),"non-empty set",e),emptyMap:e=>yu(yi.emptyMap(e),"empty map",e),nonEmptyMap:e=>yu(yi.nonEmptyMap(e),"non-empty map",e),propertyKey:e=>yu(yi.propertyKey(e),"PropertyKey",e),formData:e=>yu(yi.formData(e),"FormData",e),urlSearchParams:e=>yu(yi.urlSearchParams(e),"URLSearchParams",e),evenInteger:e=>yu(yi.evenInteger(e),"even integer",e),oddInteger:e=>yu(yi.oddInteger(e),"odd integer",e),directInstanceOf:(e,t)=>yu(yi.directInstanceOf(e,t),"T",e),inRange:(e,t)=>yu(yi.inRange(e,t),"in range",e),any:(e,...t)=>yu(yi.any(e,...t),"predicate returns truthy for any value",t,{multipleValues:!0}),all:(e,...t)=>yu(yi.all(e,...t),"predicate returns truthy for all values",t,{multipleValues:!0})};Object.defineProperties(yi,{class:{value:yi.class_},function:{value:yi.function_},null:{value:yi.null_}});Object.defineProperties(gj.assert,{class:{value:gj.assert.class_},function:{value:gj.assert.function_},null:{value:gj.assert.null_}});gj.default=yi;nit.exports=yi;nit.exports.default=yi;nit.exports.assert=gj.assert});var Nln=z((uPc,gXt)=>{"use strict";var iit=class extends Error{constructor(t){super(t||"Promise was canceled"),this.name="CancelError"}get isCanceled(){return!0}},sit=class e{static fn(t){return(...r)=>new e((s,a,o)=>{r.push(o),t(...r).then(s,a)})}constructor(t){this._cancelHandlers=[],this._isPending=!0,this._isCanceled=!1,this._rejectOnCancel=!0,this._promise=new Promise((r,s)=>{this._reject=s;let a=p=>{(!this._isCanceled||!g.shouldReject)&&(this._isPending=!1,r(p))},o=p=>{this._isPending=!1,s(p)},g=p=>{if(!this._isPending)throw new Error("The `onCancel` handler was attached after the promise settled.");this._cancelHandlers.push(p)};return Object.defineProperties(g,{shouldReject:{get:()=>this._rejectOnCancel,set:p=>{this._rejectOnCancel=p}}}),t(a,o,g)})}then(t,r){return this._promise.then(t,r)}catch(t){return this._promise.catch(t)}finally(t){return this._promise.finally(t)}cancel(t){if(!(!this._isPending||this._isCanceled)){if(this._isCanceled=!0,this._cancelHandlers.length>0)try{for(let r of this._cancelHandlers)r()}catch(r){this._reject(r);return}this._rejectOnCancel&&this._reject(new iit(t))}}get isCanceled(){return this._isCanceled}};Object.setPrototypeOf(sit.prototype,Promise.prototype);gXt.exports=sit;gXt.exports.CancelError=iit});var Rln=z((dXt,pXt)=>{"use strict";Object.defineProperty(dXt,"__esModule",{value:!0});function NQs(e){return e.encrypted}var AXt=(e,t)=>{let r;typeof t=="function"?r={connect:t}:r=t;let s=typeof r.connect=="function",a=typeof r.secureConnect=="function",o=typeof r.close=="function",g=()=>{s&&r.connect(),NQs(e)&&a&&(e.authorized?r.secureConnect():e.authorizationError||e.once("secureConnect",r.secureConnect)),o&&e.once("close",r.close)};e.writable&&!e.connecting?g():e.connecting?e.once("connect",g):e.destroyed&&o&&r.close(e._hadError)};dXt.default=AXt;pXt.exports=AXt;pXt.exports.default=AXt});var Dln=z((IXt,CXt)=>{"use strict";Object.defineProperty(IXt,"__esModule",{value:!0});var RQs=Rln(),DQs=xt("util"),xQs=Number(process.versions.node.split(".")[0]),fXt=e=>{if(e.timings)return e.timings;let t={start:Date.now(),socket:void 0,lookup:void 0,connect:void 0,secureConnect:void 0,upload:void 0,response:void 0,end:void 0,error:void 0,abort:void 0,phases:{wait:void 0,dns:void 0,tcp:void 0,tls:void 0,request:void 0,firstByte:void 0,download:void 0,total:void 0}};e.timings=t;let r=p=>{let f=p.emit.bind(p);p.emit=(m,...y)=>(m==="error"&&(t.error=Date.now(),t.phases.total=t.error-t.start,p.emit=f),f(m,...y))};r(e);let s=()=>{t.abort=Date.now(),(!t.response||xQs>=13)&&(t.phases.total=Date.now()-t.start)};e.prependOnceListener("abort",s);let a=p=>{if(t.socket=Date.now(),t.phases.wait=t.socket-t.start,DQs.types.isProxy(p))return;let f=()=>{t.lookup=Date.now(),t.phases.dns=t.lookup-t.socket};p.prependOnceListener("lookup",f),RQs.default(p,{connect:()=>{t.connect=Date.now(),t.lookup===void 0&&(p.removeListener("lookup",f),t.lookup=t.connect,t.phases.dns=t.lookup-t.socket),t.phases.tcp=t.connect-t.lookup},secureConnect:()=>{t.secureConnect=Date.now(),t.phases.tls=t.secureConnect-t.connect}})};e.socket?a(e.socket):e.prependOnceListener("socket",a);let o=()=>{var p;t.upload=Date.now(),t.phases.request=t.upload-((p=t.secureConnect)!==null&&p!==void 0?p:t.connect)};return(typeof e.writableFinished=="boolean"?e.writableFinished:e.finished&&e.outputSize===0&&(!e.socket||e.socket.writableLength===0))?o():e.prependOnceListener("finish",o),e.prependOnceListener("response",p=>{t.response=Date.now(),t.phases.firstByte=t.response-t.upload,p.timings=t,r(p),p.prependOnceListener("end",()=>{t.end=Date.now(),t.phases.download=t.end-t.response,t.phases.total=t.end-t.start}),p.prependOnceListener("aborted",s)}),t};IXt.default=fXt;CXt.exports=fXt;CXt.exports.default=fXt});var Vln=z((gPc,_Xt)=>{"use strict";var{V4MAPPED:kQs,ADDRCONFIG:GQs,ALL:Lln,promises:{Resolver:xln},lookup:FQs}=xt("dns"),{promisify:mXt}=xt("util"),ZQs=xt("os"),Obe=Symbol("cacheableLookupCreateConnection"),hXt=Symbol("cacheableLookupInstance"),kln=Symbol("expires"),LQs=typeof Lln=="number",Gln=e=>{if(!(e&&typeof e.createConnection=="function"))throw new Error("Expected an Agent instance as the first argument")},VQs=e=>{for(let t of e)t.family!==6&&(t.address=`::ffff:${t.address}`,t.family=6)},Fln=()=>{let e=!1,t=!1;for(let r of Object.values(ZQs.networkInterfaces()))for(let s of r)if(!s.internal&&(s.family==="IPv6"?t=!0:e=!0,e&&t))return{has4:e,has6:t};return{has4:e,has6:t}},WQs=e=>Symbol.iterator in e,Zln={ttl:!0},PQs={all:!0},oit=class{constructor({cache:t=new Map,maxTtl:r=1/0,fallbackDuration:s=3600,errorTtl:a=.15,resolver:o=new xln,lookup:g=FQs}={}){if(this.maxTtl=r,this.errorTtl=a,this._cache=t,this._resolver=o,this._dnsLookup=mXt(g),this._resolver instanceof xln?(this._resolve4=this._resolver.resolve4.bind(this._resolver),this._resolve6=this._resolver.resolve6.bind(this._resolver)):(this._resolve4=mXt(this._resolver.resolve4.bind(this._resolver)),this._resolve6=mXt(this._resolver.resolve6.bind(this._resolver))),this._iface=Fln(),this._pending={},this._nextRemovalTime=!1,this._hostnamesToFallback=new Set,s<1)this._fallback=!1;else{this._fallback=!0;let p=setInterval(()=>{this._hostnamesToFallback.clear()},s*1e3);p.unref&&p.unref()}this.lookup=this.lookup.bind(this),this.lookupAsync=this.lookupAsync.bind(this)}set servers(t){this.clear(),this._resolver.setServers(t)}get servers(){return this._resolver.getServers()}lookup(t,r,s){if(typeof r=="function"?(s=r,r={}):typeof r=="number"&&(r={family:r}),!s)throw new Error("Callback must be a function.");this.lookupAsync(t,r).then(a=>{r.all?s(null,a):s(null,a.address,a.family,a.expires,a.ttl)},s)}async lookupAsync(t,r={}){typeof r=="number"&&(r={family:r});let s=await this.query(t);if(r.family===6){let a=s.filter(o=>o.family===6);r.hints&kQs&&(LQs&&r.hints&Lln||a.length===0)?VQs(s):s=a}else r.family===4&&(s=s.filter(a=>a.family===4));if(r.hints&GQs){let{_iface:a}=this;s=s.filter(o=>o.family===6?a.has6:a.has4)}if(s.length===0){let a=new Error(`cacheableLookup ENOTFOUND ${t}`);throw a.code="ENOTFOUND",a.hostname=t,a}return r.all?s:s[0]}async query(t){let r=await this._cache.get(t);if(!r){let s=this._pending[t];if(s)r=await s;else{let a=this.queryAndCache(t);this._pending[t]=a;try{r=await a}finally{delete this._pending[t]}}}return r=r.map(s=>({...s})),r}async _resolve(t){let r=async m=>{try{return await m}catch(y){if(y.code==="ENODATA"||y.code==="ENOTFOUND")return[];throw y}},[s,a]=await Promise.all([this._resolve4(t,Zln),this._resolve6(t,Zln)].map(m=>r(m))),o=0,g=0,p=0,f=Date.now();for(let m of s)m.family=4,m.expires=f+m.ttl*1e3,o=Math.max(o,m.ttl);for(let m of a)m.family=6,m.expires=f+m.ttl*1e3,g=Math.max(g,m.ttl);return s.length>0?a.length>0?p=Math.min(o,g):p=o:p=g,{entries:[...s,...a],cacheTtl:p}}async _lookup(t){try{return{entries:await this._dnsLookup(t,{all:!0}),cacheTtl:0}}catch{return{entries:[],cacheTtl:0}}}async _set(t,r,s){if(this.maxTtl>0&&s>0){s=Math.min(s,this.maxTtl)*1e3,r[kln]=Date.now()+s;try{await this._cache.set(t,r,s)}catch(a){this.lookupAsync=async()=>{let o=new Error("Cache Error. Please recreate the CacheableLookup instance.");throw o.cause=a,o}}WQs(this._cache)&&this._tick(s)}}async queryAndCache(t){if(this._hostnamesToFallback.has(t))return this._dnsLookup(t,PQs);let r=await this._resolve(t);r.entries.length===0&&this._fallback&&(r=await this._lookup(t),r.entries.length!==0&&this._hostnamesToFallback.add(t));let s=r.entries.length===0?this.errorTtl:r.cacheTtl;return await this._set(t,r.entries,s),r.entries}_tick(t){let r=this._nextRemovalTime;(!r||t{this._nextRemovalTime=!1;let s=1/0,a=Date.now();for(let[o,g]of this._cache){let p=g[kln];a>=p?this._cache.delete(o):p("lookup"in r||(r.lookup=this.lookup),t[Obe](r,s))}uninstall(t){if(Gln(t),t[Obe]){if(t[hXt]!==this)throw new Error("The agent is not owned by this CacheableLookup instance");t.createConnection=t[Obe],delete t[Obe],delete t[hXt]}}updateInterfaceInfo(){let{_iface:t}=this;this._iface=Fln(),(t.has4&&!this._iface.has4||t.has6&&!this._iface.has6)&&this._cache.clear()}clear(t){if(t){this._cache.delete(t);return}this._cache.clear()}};_Xt.exports=oit;_Xt.exports.default=oit});var Oln=z((APc,Pln)=>{"use strict";var OQs="text/plain",QQs="us-ascii",Wln=(e,t)=>t.some(r=>r instanceof RegExp?r.test(e):r===e),MQs=(e,{stripHash:t})=>{let r=/^data:(?[^,]*?),(?[^#]*?)(?:#(?.*))?$/.exec(e);if(!r)throw new Error(`Invalid URL: ${e}`);let{type:s,data:a,hash:o}=r.groups,g=s.split(";");o=t?"":o;let p=!1;g[g.length-1]==="base64"&&(g.pop(),p=!0);let f=(g.shift()||"").toLowerCase(),y=[...g.map(B=>{let[v,k=""]=B.split("=").map(T=>T.trim());return v==="charset"&&(k=k.toLowerCase(),k===QQs)?"":`${v}${k?`=${k}`:""}`}).filter(Boolean)];return p&&y.push("base64"),(y.length!==0||f&&f!==OQs)&&y.unshift(f),`data:${y.join(";")},${p?a.trim():a}${o?`#${o}`:""}`},HQs=(e,t)=>{if(t={defaultProtocol:"http:",normalizeProtocol:!0,forceHttp:!1,forceHttps:!1,stripAuthentication:!0,stripHash:!1,stripTextFragment:!0,stripWWW:!0,removeQueryParameters:[/^utm_\w+/i],removeTrailingSlash:!0,removeSingleSlash:!0,removeDirectoryIndex:!1,sortQueryParameters:!0,...t},e=e.trim(),/^data:/i.test(e))return MQs(e,t);if(/^view-source:/i.test(e))throw new Error("`view-source:` is not supported as it is a non-standard protocol");let r=e.startsWith("//");!r&&/^\.*\//.test(e)||(e=e.replace(/^(?!(?:\w+:)?\/\/)|^\/\//,t.defaultProtocol));let a=new URL(e);if(t.forceHttp&&t.forceHttps)throw new Error("The `forceHttp` and `forceHttps` options cannot be used together");if(t.forceHttp&&a.protocol==="https:"&&(a.protocol="http:"),t.forceHttps&&a.protocol==="http:"&&(a.protocol="https:"),t.stripAuthentication&&(a.username="",a.password=""),t.stripHash?a.hash="":t.stripTextFragment&&(a.hash=a.hash.replace(/#?:~:text.*?$/i,"")),a.pathname&&(a.pathname=a.pathname.replace(/(?0){let g=a.pathname.split("/"),p=g[g.length-1];Wln(p,t.removeDirectoryIndex)&&(g=g.slice(0,g.length-1),a.pathname=g.slice(1).join("/")+"/")}if(a.hostname&&(a.hostname=a.hostname.replace(/\.$/,""),t.stripWWW&&/^www\.(?!www\.)(?:[a-z\-\d]{1,63})\.(?:[a-z.\-\d]{2,63})$/.test(a.hostname)&&(a.hostname=a.hostname.replace(/^www\./,""))),Array.isArray(t.removeQueryParameters))for(let g of[...a.searchParams.keys()])Wln(g,t.removeQueryParameters)&&a.searchParams.delete(g);t.removeQueryParameters===!0&&(a.search=""),t.sortQueryParameters&&a.searchParams.sort(),t.removeTrailingSlash&&(a.pathname=a.pathname.replace(/\/$/,""));let o=e;return e=a.toString(),!t.removeSingleSlash&&a.pathname==="/"&&!o.endsWith("/")&&a.hash===""&&(e=e.replace(/\/$/,"")),(t.removeTrailingSlash||a.pathname==="/")&&a.hash===""&&t.removeSingleSlash&&(e=e.replace(/\/$/,"")),r&&!t.normalizeProtocol&&(e=e.replace(/^http:\/\//,"//")),t.stripProtocol&&(e=e.replace(/^(?:https?:)?\/\//,"")),e};Pln.exports=HQs});var Hln=z((dPc,Mln)=>{Mln.exports=Qln;function Qln(e,t){if(e&&t)return Qln(e)(t);if(typeof e!="function")throw new TypeError("need wrapper function");return Object.keys(e).forEach(function(s){r[s]=e[s]}),r;function r(){for(var s=new Array(arguments.length),a=0;a{var Yln=Hln();yXt.exports=Yln(ait);yXt.exports.strict=Yln(Xln);ait.proto=ait(function(){Object.defineProperty(Function.prototype,"once",{value:function(){return ait(this)},configurable:!0}),Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return Xln(this)},configurable:!0})});function ait(e){var t=function(){return t.called?t.value:(t.called=!0,t.value=e.apply(this,arguments))};return t.called=!1,t}function Xln(e){var t=function(){if(t.called)throw new Error(t.onceError);return t.called=!0,t.value=e.apply(this,arguments)},r=e.name||"Function wrapped with `once`";return t.onceError=r+" shouldn't be called more than once",t.called=!1,t}});var bXt=z((fPc,Uln)=>{var YQs=cit(),XQs=function(){},JQs=function(e){return e.setHeader&&typeof e.abort=="function"},UQs=function(e){return e.stdio&&Array.isArray(e.stdio)&&e.stdio.length===3},Jln=function(e,t,r){if(typeof t=="function")return Jln(e,null,t);t||(t={}),r=YQs(r||XQs);var s=e._writableState,a=e._readableState,o=t.readable||t.readable!==!1&&e.readable,g=t.writable||t.writable!==!1&&e.writable,p=!1,f=function(){e.writable||m()},m=function(){g=!1,o||r.call(e)},y=function(){o=!1,g||r.call(e)},B=function(X){r.call(e,X?new Error("exited with error code: "+X):null)},v=function(X){r.call(e,X)},k=function(){process.nextTick(T)},T=function(){if(!p){if(o&&!(a&&a.ended&&!a.destroyed))return r.call(e,new Error("premature close"));if(g&&!(s&&s.ended&&!s.destroyed))return r.call(e,new Error("premature close"))}},O=function(){e.req.on("finish",m)};return JQs(e)?(e.on("complete",m),e.on("abort",k),e.req?O():e.on("request",O)):g&&!s&&(e.on("end",f),e.on("close",f)),UQs(e)&&e.on("exit",B),e.on("end",y),e.on("finish",m),t.error!==!1&&e.on("error",v),e.on("close",k),function(){p=!0,e.removeListener("complete",m),e.removeListener("abort",k),e.removeListener("request",O),e.req&&e.req.removeListener("finish",m),e.removeListener("end",f),e.removeListener("close",f),e.removeListener("finish",m),e.removeListener("exit",B),e.removeListener("end",y),e.removeListener("error",v),e.removeListener("close",k)}};Uln.exports=Jln});var zln=z((IPc,jln)=>{var KQs=cit(),jQs=bXt(),lit;try{lit=xt("fs")}catch{}var K9e=function(){},zQs=/^v?\.0/.test(process.version),uit=function(e){return typeof e=="function"},qQs=function(e){return!zQs||!lit?!1:(e instanceof(lit.ReadStream||K9e)||e instanceof(lit.WriteStream||K9e))&&uit(e.close)},$Qs=function(e){return e.setHeader&&uit(e.abort)},e5s=function(e,t,r,s){s=KQs(s);var a=!1;e.on("close",function(){a=!0}),jQs(e,{readable:t,writable:r},function(g){if(g)return s(g);a=!0,s()});var o=!1;return function(g){if(!a&&!o){if(o=!0,qQs(e))return e.close(K9e);if($Qs(e))return e.abort();if(uit(e.destroy))return e.destroy();s(g||new Error("stream was destroyed"))}}},Kln=function(e){e()},t5s=function(e,t){return e.pipe(t)},r5s=function(){var e=Array.prototype.slice.call(arguments),t=uit(e[e.length-1]||K9e)&&e.pop()||K9e;if(Array.isArray(e[0])&&(e=e[0]),e.length<2)throw new Error("pump requires two streams per minimum");var r,s=e.map(function(a,o){var g=o0;return e5s(a,g,p,function(f){r||(r=f),f&&s.forEach(Kln),!g&&(s.forEach(Kln),t(r))})});return e.reduce(t5s)};jln.exports=r5s});var $ln=z((CPc,qln)=>{"use strict";var{PassThrough:n5s}=xt("stream");qln.exports=e=>{e={...e};let{array:t}=e,{encoding:r}=e,s=r==="buffer",a=!1;t?a=!(r||s):r=r||"utf8",s&&(r=null);let o=new n5s({objectMode:a});r&&o.setEncoding(r);let g=0,p=[];return o.on("data",f=>{p.push(f),a?g=p.length:g+=f.length}),o.getBufferedValue=()=>t?p:s?Buffer.concat(p,g):p.join(""),o.getBufferedLength=()=>g,o}});var eun=z((mPc,Qbe)=>{"use strict";var{constants:i5s}=xt("buffer"),s5s=zln(),o5s=$ln(),git=class extends Error{constructor(){super("maxBuffer exceeded"),this.name="MaxBufferError"}};async function Ait(e,t){if(!e)return Promise.reject(new Error("Expected a stream"));t={maxBuffer:1/0,...t};let{maxBuffer:r}=t,s;return await new Promise((a,o)=>{let g=p=>{p&&s.getBufferedLength()<=i5s.MAX_LENGTH&&(p.bufferedData=s.getBufferedValue()),o(p)};s=s5s(e,o5s(t),p=>{if(p){g(p);return}a()}),s.on("data",()=>{s.getBufferedLength()>r&&g(new git)})}),s.getBufferedValue()}Qbe.exports=Ait;Qbe.exports.default=Ait;Qbe.exports.buffer=(e,t)=>Ait(e,{...t,encoding:"buffer"});Qbe.exports.array=(e,t)=>Ait(e,{...t,array:!0});Qbe.exports.MaxBufferError=git});var nun=z((_Pc,tun)=>{"use strict";var a5s=new Set([200,203,204,206,300,301,308,404,405,410,414,501]),c5s=new Set([200,203,204,300,301,302,303,307,308,404,405,410,414,501]),l5s=new Set([500,502,503,504]),u5s={date:!0,connection:!0,"keep-alive":!0,"proxy-authenticate":!0,"proxy-authorization":!0,te:!0,trailer:!0,"transfer-encoding":!0,upgrade:!0},g5s={"content-length":!0,"content-encoding":!0,"transfer-encoding":!0,"content-range":!0};function hAe(e){let t=parseInt(e,10);return isFinite(t)?t:0}function A5s(e){return e?l5s.has(e.status):!0}function EXt(e){let t={};if(!e)return t;let r=e.trim().split(/,/);for(let s of r){let[a,o]=s.split(/=/,2);t[a.trim()]=o===void 0?!0:o.trim().replace(/^"|"$/g,"")}return t}function d5s(e){let t=[];for(let r in e){let s=e[r];t.push(s===!0?r:r+"="+s)}if(t.length)return t.join(", ")}tun.exports=class{constructor(t,r,{shared:s,cacheHeuristic:a,immutableMinTimeToLive:o,ignoreCargoCult:g,_fromObject:p}={}){if(p){this._fromObject(p);return}if(!r||!r.headers)throw Error("Response headers missing");this._assertRequestHasHeaders(t),this._responseTime=this.now(),this._isShared=s!==!1,this._cacheHeuristic=a!==void 0?a:.1,this._immutableMinTtl=o!==void 0?o:24*3600*1e3,this._status="status"in r?r.status:200,this._resHeaders=r.headers,this._rescc=EXt(r.headers["cache-control"]),this._method="method"in t?t.method:"GET",this._url=t.url,this._host=t.headers.host,this._noAuthorization=!t.headers.authorization,this._reqHeaders=r.headers.vary?t.headers:null,this._reqcc=EXt(t.headers["cache-control"]),g&&"pre-check"in this._rescc&&"post-check"in this._rescc&&(delete this._rescc["pre-check"],delete this._rescc["post-check"],delete this._rescc["no-cache"],delete this._rescc["no-store"],delete this._rescc["must-revalidate"],this._resHeaders=Object.assign({},this._resHeaders,{"cache-control":d5s(this._rescc)}),delete this._resHeaders.expires,delete this._resHeaders.pragma),r.headers["cache-control"]==null&&/no-cache/.test(r.headers.pragma)&&(this._rescc["no-cache"]=!0)}now(){return Date.now()}storable(){return!!(!this._reqcc["no-store"]&&(this._method==="GET"||this._method==="HEAD"||this._method==="POST"&&this._hasExplicitExpiration())&&c5s.has(this._status)&&!this._rescc["no-store"]&&(!this._isShared||!this._rescc.private)&&(!this._isShared||this._noAuthorization||this._allowsStoringAuthenticated())&&(this._resHeaders.expires||this._rescc["max-age"]||this._isShared&&this._rescc["s-maxage"]||this._rescc.public||a5s.has(this._status)))}_hasExplicitExpiration(){return this._isShared&&this._rescc["s-maxage"]||this._rescc["max-age"]||this._resHeaders.expires}_assertRequestHasHeaders(t){if(!t||!t.headers)throw Error("Request headers missing")}satisfiesWithoutRevalidation(t){this._assertRequestHasHeaders(t);let r=EXt(t.headers["cache-control"]);return r["no-cache"]||/no-cache/.test(t.headers.pragma)||r["max-age"]&&this.age()>r["max-age"]||r["min-fresh"]&&this.timeToLive()<1e3*r["min-fresh"]||this.stale()&&!(r["max-stale"]&&!this._rescc["must-revalidate"]&&(r["max-stale"]===!0||r["max-stale"]>this.age()-this.maxAge()))?!1:this._requestMatches(t,!1)}_requestMatches(t,r){return(!this._url||this._url===t.url)&&this._host===t.headers.host&&(!t.method||this._method===t.method||r&&t.method==="HEAD")&&this._varyMatches(t)}_allowsStoringAuthenticated(){return this._rescc["must-revalidate"]||this._rescc.public||this._rescc["s-maxage"]}_varyMatches(t){if(!this._resHeaders.vary)return!0;if(this._resHeaders.vary==="*")return!1;let r=this._resHeaders.vary.trim().toLowerCase().split(/\s*,\s*/);for(let s of r)if(t.headers[s]!==this._reqHeaders[s])return!1;return!0}_copyWithoutHopByHopHeaders(t){let r={};for(let s in t)u5s[s]||(r[s]=t[s]);if(t.connection){let s=t.connection.trim().split(/\s*,\s*/);for(let a of s)delete r[a]}if(r.warning){let s=r.warning.split(/,/).filter(a=>!/^\s*1[0-9][0-9]/.test(a));s.length?r.warning=s.join(",").trim():delete r.warning}return r}responseHeaders(){let t=this._copyWithoutHopByHopHeaders(this._resHeaders),r=this.age();return r>3600*24&&!this._hasExplicitExpiration()&&this.maxAge()>3600*24&&(t.warning=(t.warning?`${t.warning}, `:"")+'113 - "rfc7234 5.5.4"'),t.age=`${Math.round(r)}`,t.date=new Date(this.now()).toUTCString(),t}date(){let t=Date.parse(this._resHeaders.date);return isFinite(t)?t:this._responseTime}age(){let t=this._ageValue(),r=(this.now()-this._responseTime)/1e3;return t+r}_ageValue(){return hAe(this._resHeaders.age)}maxAge(){if(!this.storable()||this._rescc["no-cache"]||this._isShared&&this._resHeaders["set-cookie"]&&!this._rescc.public&&!this._rescc.immutable||this._resHeaders.vary==="*")return 0;if(this._isShared){if(this._rescc["proxy-revalidate"])return 0;if(this._rescc["s-maxage"])return hAe(this._rescc["s-maxage"])}if(this._rescc["max-age"])return hAe(this._rescc["max-age"]);let t=this._rescc.immutable?this._immutableMinTtl:0,r=this.date();if(this._resHeaders.expires){let s=Date.parse(this._resHeaders.expires);return Number.isNaN(s)||ss)return Math.max(t,(r-s)/1e3*this._cacheHeuristic)}return t}timeToLive(){let t=this.maxAge()-this.age(),r=t+hAe(this._rescc["stale-if-error"]),s=t+hAe(this._rescc["stale-while-revalidate"]);return Math.max(0,t,r,s)*1e3}stale(){return this.maxAge()<=this.age()}_useStaleIfError(){return this.maxAge()+hAe(this._rescc["stale-if-error"])>this.age()}useStaleWhileRevalidate(){return this.maxAge()+hAe(this._rescc["stale-while-revalidate"])>this.age()}static fromObject(t){return new this(void 0,void 0,{_fromObject:t})}_fromObject(t){if(this._responseTime)throw Error("Reinitialized");if(!t||t.v!==1)throw Error("Invalid serialization");this._responseTime=t.t,this._isShared=t.sh,this._cacheHeuristic=t.ch,this._immutableMinTtl=t.imm!==void 0?t.imm:24*3600*1e3,this._status=t.st,this._resHeaders=t.resh,this._rescc=t.rescc,this._method=t.m,this._url=t.u,this._host=t.h,this._noAuthorization=t.a,this._reqHeaders=t.reqh,this._reqcc=t.reqcc}toObject(){return{v:1,t:this._responseTime,sh:this._isShared,ch:this._cacheHeuristic,imm:this._immutableMinTtl,st:this._status,resh:this._resHeaders,rescc:this._rescc,m:this._method,u:this._url,h:this._host,a:this._noAuthorization,reqh:this._reqHeaders,reqcc:this._reqcc}}revalidationHeaders(t){this._assertRequestHasHeaders(t);let r=this._copyWithoutHopByHopHeaders(t.headers);if(delete r["if-range"],!this._requestMatches(t,!0)||!this.storable())return delete r["if-none-match"],delete r["if-modified-since"],r;if(this._resHeaders.etag&&(r["if-none-match"]=r["if-none-match"]?`${r["if-none-match"]}, ${this._resHeaders.etag}`:this._resHeaders.etag),r["accept-ranges"]||r["if-match"]||r["if-unmodified-since"]||this._method&&this._method!="GET"){if(delete r["if-modified-since"],r["if-none-match"]){let a=r["if-none-match"].split(/,/).filter(o=>!/^\s*W\//.test(o));a.length?r["if-none-match"]=a.join(",").trim():delete r["if-none-match"]}}else this._resHeaders["last-modified"]&&!r["if-modified-since"]&&(r["if-modified-since"]=this._resHeaders["last-modified"]);return r}revalidatedPolicy(t,r){if(this._assertRequestHasHeaders(t),this._useStaleIfError()&&A5s(r))return{modified:!1,matches:!1,policy:this};if(!r||!r.headers)throw Error("Response headers missing");let s=!1;if(r.status!==void 0&&r.status!=304?s=!1:r.headers.etag&&!/^\s*W\//.test(r.headers.etag)?s=this._resHeaders.etag&&this._resHeaders.etag.replace(/^\s*W\//,"")===r.headers.etag:this._resHeaders.etag&&r.headers.etag?s=this._resHeaders.etag.replace(/^\s*W\//,"")===r.headers.etag.replace(/^\s*W\//,""):this._resHeaders["last-modified"]?s=this._resHeaders["last-modified"]===r.headers["last-modified"]:!this._resHeaders.etag&&!this._resHeaders["last-modified"]&&!r.headers.etag&&!r.headers["last-modified"]&&(s=!0),!s)return{policy:new this.constructor(t,r),modified:r.status!=304,matches:!1};let a={};for(let g in this._resHeaders)a[g]=g in r.headers&&!g5s[g]?r.headers[g]:this._resHeaders[g];let o=Object.assign({},r,{status:this._status,method:this._method,headers:a});return{policy:new this.constructor(t,o,{shared:this._isShared,cacheHeuristic:this._cacheHeuristic,immutableMinTimeToLive:this._immutableMinTtl}),modified:!1,matches:!0}}}});var dit=z((yPc,iun)=>{"use strict";iun.exports=e=>{let t={};for(let[r,s]of Object.entries(e))t[r.toLowerCase()]=s;return t}});var oun=z((bPc,sun)=>{"use strict";var p5s=xt("stream").Readable,f5s=dit(),BXt=class extends p5s{constructor(t,r,s,a){if(typeof t!="number")throw new TypeError("Argument `statusCode` should be a number");if(typeof r!="object")throw new TypeError("Argument `headers` should be an object");if(!(s instanceof Buffer))throw new TypeError("Argument `body` should be a buffer");if(typeof a!="string")throw new TypeError("Argument `url` should be a string");super(),this.statusCode=t,this.headers=f5s(r),this.body=s,this.url=a}_read(){this.push(this.body),this.push(null)}};sun.exports=BXt});var cun=z((EPc,aun)=>{"use strict";var I5s=["destroy","setTimeout","socket","headers","trailers","rawHeaders","statusCode","httpVersion","httpVersionMinor","httpVersionMajor","rawTrailers","statusMessage"];aun.exports=(e,t)=>{let r=new Set(Object.keys(e).concat(I5s));for(let s of r)s in t||(t[s]=typeof e[s]=="function"?e[s].bind(e):e[s])}});var uun=z((BPc,lun)=>{"use strict";var C5s=xt("stream").PassThrough,m5s=cun(),h5s=e=>{if(!(e&&e.pipe))throw new TypeError("Parameter `response` must be a response stream.");let t=new C5s;return m5s(e,t),e.pipe(t)};lun.exports=h5s});var gun=z(vXt=>{vXt.stringify=function e(t){if(typeof t>"u")return t;if(t&&Buffer.isBuffer(t))return JSON.stringify(":base64:"+t.toString("base64"));if(t&&t.toJSON&&(t=t.toJSON()),t&&typeof t=="object"){var r="",s=Array.isArray(t);r=s?"[":"{";var a=!0;for(var o in t){var g=typeof t[o]=="function"||!s&&typeof t[o]>"u";Object.hasOwnProperty.call(t,o)&&!g&&(a||(r+=","),a=!1,s?t[o]==null?r+="null":r+=e(t[o]):t[o]!==void 0&&(r+=e(o)+":"+e(t[o])))}return r+=s?"]":"}",r}else return typeof t=="string"?JSON.stringify(/^:/.test(t)?":"+t:t):typeof t>"u"?"null":JSON.stringify(t)};vXt.parse=function(e){return JSON.parse(e,function(t,r){return typeof r=="string"?/^:base64:/.test(r)?Buffer.from(r.substring(8),"base64"):/^:/.test(r)?r.substring(1):r:r})}});var fun=z((SPc,pun)=>{"use strict";var _5s=xt("events"),Aun=gun(),y5s=e=>{let t={redis:"@keyv/redis",rediss:"@keyv/redis",mongodb:"@keyv/mongo",mongo:"@keyv/mongo",sqlite:"@keyv/sqlite",postgresql:"@keyv/postgres",postgres:"@keyv/postgres",mysql:"@keyv/mysql",etcd:"@keyv/etcd",offline:"@keyv/offline",tiered:"@keyv/tiered"};if(e.adapter||e.uri){let r=e.adapter||/^[^:+]*/.exec(e.uri)[0];return new(xt(t[r]))(e)}return new Map},dun=["sqlite","postgres","mysql","mongo","redis","tiered"],SXt=class extends _5s{constructor(t,{emitErrors:r=!0,...s}={}){if(super(),this.opts={namespace:"keyv",serialize:Aun.stringify,deserialize:Aun.parse,...typeof t=="string"?{uri:t}:t,...s},!this.opts.store){let o={...this.opts};this.opts.store=y5s(o)}if(this.opts.compression){let o=this.opts.compression;this.opts.serialize=o.serialize.bind(o),this.opts.deserialize=o.deserialize.bind(o)}typeof this.opts.store.on=="function"&&r&&this.opts.store.on("error",o=>this.emit("error",o)),this.opts.store.namespace=this.opts.namespace;let a=o=>async function*(){for await(let[g,p]of typeof o=="function"?o(this.opts.store.namespace):o){let f=await this.opts.deserialize(p);if(!(this.opts.store.namespace&&!g.includes(this.opts.store.namespace))){if(typeof f.expires=="number"&&Date.now()>f.expires){this.delete(g);continue}yield[this._getKeyUnprefix(g),f.value]}}};typeof this.opts.store[Symbol.iterator]=="function"&&this.opts.store instanceof Map?this.iterator=a(this.opts.store):typeof this.opts.store.iterator=="function"&&this.opts.store.opts&&this._checkIterableAdaptar()&&(this.iterator=a(this.opts.store.iterator.bind(this.opts.store)))}_checkIterableAdaptar(){return dun.includes(this.opts.store.opts.dialect)||dun.findIndex(t=>this.opts.store.opts.url.includes(t))>=0}_getKeyPrefix(t){return`${this.opts.namespace}:${t}`}_getKeyPrefixArray(t){return t.map(r=>`${this.opts.namespace}:${r}`)}_getKeyUnprefix(t){return t.split(":").splice(1).join(":")}get(t,r){let{store:s}=this.opts,a=Array.isArray(t),o=a?this._getKeyPrefixArray(t):this._getKeyPrefix(t);if(a&&s.getMany===void 0){let g=[];for(let p of o)g.push(Promise.resolve().then(()=>s.get(p)).then(f=>typeof f=="string"?this.opts.deserialize(f):this.opts.compression?this.opts.deserialize(f):f).then(f=>{if(f!=null)return typeof f.expires=="number"&&Date.now()>f.expires?this.delete(p).then(()=>{}):r&&r.raw?f:f.value}));return Promise.allSettled(g).then(p=>{let f=[];for(let m of p)f.push(m.value);return f})}return Promise.resolve().then(()=>a?s.getMany(o):s.get(o)).then(g=>typeof g=="string"?this.opts.deserialize(g):this.opts.compression?this.opts.deserialize(g):g).then(g=>{if(g!=null)return a?g.map((p,f)=>{if(typeof p=="string"&&(p=this.opts.deserialize(p)),p!=null){if(typeof p.expires=="number"&&Date.now()>p.expires){this.delete(t[f]).then(()=>{});return}return r&&r.raw?p:p.value}}):typeof g.expires=="number"&&Date.now()>g.expires?this.delete(t).then(()=>{}):r&&r.raw?g:g.value})}set(t,r,s){let a=this._getKeyPrefix(t);typeof s>"u"&&(s=this.opts.ttl),s===0&&(s=void 0);let{store:o}=this.opts;return Promise.resolve().then(()=>{let g=typeof s=="number"?Date.now()+s:null;return typeof r=="symbol"&&this.emit("error","symbol cannot be serialized"),r={value:r,expires:g},this.opts.serialize(r)}).then(g=>o.set(a,g,s)).then(()=>!0)}delete(t){let{store:r}=this.opts;if(Array.isArray(t)){let a=this._getKeyPrefixArray(t);if(r.deleteMany===void 0){let o=[];for(let g of a)o.push(r.delete(g));return Promise.allSettled(o).then(g=>g.every(p=>p.value===!0))}return Promise.resolve().then(()=>r.deleteMany(a))}let s=this._getKeyPrefix(t);return Promise.resolve().then(()=>r.delete(s))}clear(){let{store:t}=this.opts;return Promise.resolve().then(()=>t.clear())}has(t){let r=this._getKeyPrefix(t),{store:s}=this.opts;return Promise.resolve().then(async()=>typeof s.has=="function"?s.has(r):await s.get(r)!==void 0)}disconnect(){let{store:t}=this.opts;if(typeof t.disconnect=="function")return t.disconnect()}};pun.exports=SXt});var mun=z((TPc,Cun)=>{"use strict";var b5s=xt("events"),pit=xt("url"),E5s=Oln(),B5s=eun(),wXt=nun(),Iun=oun(),v5s=dit(),S5s=uun(),w5s=fun(),j9e=class e{constructor(t,r){if(typeof t!="function")throw new TypeError("Parameter `request` must be a function");return this.cache=new w5s({uri:typeof r=="string"&&r,store:typeof r!="string"&&r,namespace:"cacheable-request"}),this.createCacheableRequest(t)}createCacheableRequest(t){return(r,s)=>{let a;if(typeof r=="string")a=TXt(pit.parse(r)),r={};else if(r instanceof pit.URL)a=TXt(pit.parse(r.toString())),r={};else{let[B,...v]=(r.path||"").split("?"),k=v.length>0?`?${v.join("?")}`:"";a=TXt({...r,pathname:B,search:k})}r={headers:{},method:"GET",cache:!0,strictTtl:!1,automaticFailover:!1,...r,...T5s(a)},r.headers=v5s(r.headers);let o=new b5s,g=E5s(pit.format(a),{stripWWW:!1,removeTrailingSlash:!1,stripAuthentication:!1}),p=`${r.method}:${g}`,f=!1,m=!1,y=B=>{m=!0;let v=!1,k,T=new Promise(X=>{k=()=>{v||(v=!0,X())}}),O=X=>{if(f&&!B.forceRefresh){X.status=X.statusCode;let le=wXt.fromObject(f.cachePolicy).revalidatedPolicy(B,X);if(!le.modified){let ae=le.policy.responseHeaders();X=new Iun(f.statusCode,ae,f.body,f.url),X.cachePolicy=le.policy,X.fromCache=!0}}X.fromCache||(X.cachePolicy=new wXt(B,X,B),X.fromCache=!1);let U;B.cache&&X.cachePolicy.storable()?(U=S5s(X),(async()=>{try{let le=B5s.buffer(X);if(await Promise.race([T,new Promise(pe=>X.once("end",pe))]),v)return;let ae=await le,ge={cachePolicy:X.cachePolicy.toObject(),url:X.url,statusCode:X.fromCache?f.statusCode:X.statusCode,body:ae},fe=B.strictTtl?X.cachePolicy.timeToLive():void 0;B.maxTtl&&(fe=fe?Math.min(fe,B.maxTtl):B.maxTtl),await this.cache.set(p,ge,fe)}catch(le){o.emit("error",new e.CacheError(le))}})()):B.cache&&f&&(async()=>{try{await this.cache.delete(p)}catch(le){o.emit("error",new e.CacheError(le))}})(),o.emit("response",U||X),typeof s=="function"&&s(U||X)};try{let X=t(B,O);X.once("error",k),X.once("abort",k),o.emit("request",X)}catch(X){o.emit("error",new e.RequestError(X))}};return(async()=>{let B=async k=>{await Promise.resolve();let T=k.cache?await this.cache.get(p):void 0;if(typeof T>"u")return y(k);let O=wXt.fromObject(T.cachePolicy);if(O.satisfiesWithoutRevalidation(k)&&!k.forceRefresh){let X=O.responseHeaders(),U=new Iun(T.statusCode,X,T.body,T.url);U.cachePolicy=O,U.fromCache=!0,o.emit("response",U),typeof s=="function"&&s(U)}else f=T,k.headers=O.revalidationHeaders(k),y(k)},v=k=>o.emit("error",new e.CacheError(k));this.cache.once("error",v),o.on("response",()=>this.cache.removeListener("error",v));try{await B(r)}catch(k){r.automaticFailover&&!m&&y(r),o.emit("error",new e.CacheError(k))}})(),o}}};function T5s(e){let t={...e};return t.path=`${e.pathname||"/"}${e.search||""}`,delete t.pathname,delete t.search,t}function TXt(e){return{protocol:e.protocol,auth:e.auth,hostname:e.hostname||e.host||"localhost",port:e.port,pathname:e.pathname,search:e.search}}j9e.RequestError=class extends Error{constructor(e){super(e.message),this.name="RequestError",Object.assign(this,e)}};j9e.CacheError=class extends Error{constructor(e){super(e.message),this.name="CacheError",Object.assign(this,e)}};Cun.exports=j9e});var _un=z((DPc,hun)=>{"use strict";var N5s=["aborted","complete","headers","httpVersion","httpVersionMinor","httpVersionMajor","method","rawHeaders","rawTrailers","setTimeout","socket","statusCode","statusMessage","trailers","url"];hun.exports=(e,t)=>{if(t._readableState.autoDestroy)throw new Error("The second stream must have the `autoDestroy` option set to `false`");let r=new Set(Object.keys(e).concat(N5s)),s={};for(let a of r)a in t||(s[a]={get(){let o=e[a];return typeof o=="function"?o.bind(e):o},set(o){e[a]=o},enumerable:!0,configurable:!1});return Object.defineProperties(t,s),e.once("aborted",()=>{t.destroy(),t.emit("aborted")}),e.once("close",()=>{e.complete&&t.readable?t.once("end",()=>{t.emit("close")}):t.emit("close")}),t}});var bun=z((xPc,yun)=>{"use strict";var{Transform:R5s,PassThrough:D5s}=xt("stream"),NXt=xt("zlib"),x5s=_un();yun.exports=e=>{let t=(e.headers["content-encoding"]||"").toLowerCase();if(!["gzip","deflate","br"].includes(t))return e;let r=t==="br";if(r&&typeof NXt.createBrotliDecompress!="function")return e.destroy(new Error("Brotli is not supported on Node.js < 12")),e;let s=!0,a=new R5s({transform(p,f,m){s=!1,m(null,p)},flush(p){p()}}),o=new D5s({autoDestroy:!1,destroy(p,f){e.destroy(),f(p)}}),g=r?NXt.createBrotliDecompress():NXt.createUnzip();return g.once("error",p=>{if(s&&!e.readable){o.end();return}o.destroy(p)}),x5s(e,o),e.pipe(a).pipe(g).pipe(o),o}});var DXt=z((kPc,Eun)=>{"use strict";var RXt=class{constructor(t={}){if(!(t.maxSize&&t.maxSize>0))throw new TypeError("`maxSize` must be a number greater than 0");this.maxSize=t.maxSize,this.onEviction=t.onEviction,this.cache=new Map,this.oldCache=new Map,this._size=0}_set(t,r){if(this.cache.set(t,r),this._size++,this._size>=this.maxSize){if(this._size=0,typeof this.onEviction=="function")for(let[s,a]of this.oldCache.entries())this.onEviction(s,a);this.oldCache=this.cache,this.cache=new Map}}get(t){if(this.cache.has(t))return this.cache.get(t);if(this.oldCache.has(t)){let r=this.oldCache.get(t);return this.oldCache.delete(t),this._set(t,r),r}}set(t,r){return this.cache.has(t)?this.cache.set(t,r):this._set(t,r),this}has(t){return this.cache.has(t)||this.oldCache.has(t)}peek(t){if(this.cache.has(t))return this.cache.get(t);if(this.oldCache.has(t))return this.oldCache.get(t)}delete(t){let r=this.cache.delete(t);return r&&this._size--,this.oldCache.delete(t)||r}clear(){this.cache.clear(),this.oldCache.clear(),this._size=0}*keys(){for(let[t]of this)yield t}*values(){for(let[,t]of this)yield t}*[Symbol.iterator](){for(let t of this.cache)yield t;for(let t of this.oldCache){let[r]=t;this.cache.has(r)||(yield t)}}get size(){let t=0;for(let r of this.oldCache.keys())this.cache.has(r)||t++;return Math.min(this._size+t,this.maxSize)}};Eun.exports=RXt});var kXt=z((GPc,wun)=>{"use strict";var k5s=xt("events"),G5s=xt("tls"),F5s=xt("http2"),Z5s=DXt(),vF=Symbol("currentStreamsCount"),Bun=Symbol("request"),bO=Symbol("cachedOriginSet"),Mbe=Symbol("gracefullyClosing"),L5s=["maxDeflateDynamicTableSize","maxSessionMemory","maxHeaderListPairs","maxOutstandingPings","maxReservedRemoteStreams","maxSendHeaderBlockLength","paddingStrategy","localAddress","path","rejectUnauthorized","minDHSize","ca","cert","clientCertEngine","ciphers","key","pfx","servername","minVersion","maxVersion","secureProtocol","crl","honorCipherOrder","ecdhCurve","dhparam","secureOptions","sessionIdContext"],V5s=(e,t,r)=>{let s=0,a=e.length;for(;s>>1;r(e[o],t)?s=o+1:a=o}return s},W5s=(e,t)=>e.remoteSettings.maxConcurrentStreams>t.remoteSettings.maxConcurrentStreams,xXt=(e,t)=>{for(let r of e)r[bO].lengtht[bO].includes(s))&&r[vF]+t[vF]<=t.remoteSettings.maxConcurrentStreams&&Sun(r)},P5s=(e,t)=>{for(let r of e)t[bO].lengthr[bO].includes(s))&&t[vF]+r[vF]<=r.remoteSettings.maxConcurrentStreams&&Sun(t)},vun=({agent:e,isFree:t})=>{let r={};for(let s in e.sessions){let o=e.sessions[s].filter(g=>{let p=g[_Ae.kCurrentStreamsCount]{e[Mbe]=!0,e[vF]===0&&e.close()},_Ae=class e extends k5s{constructor({timeout:t=6e4,maxSessions:r=1/0,maxFreeSessions:s=10,maxCachedTlsSessions:a=100}={}){super(),this.sessions={},this.queue={},this.timeout=t,this.maxSessions=r,this.maxFreeSessions=s,this._freeSessionsCount=0,this._sessionsCount=0,this.settings={enablePush:!1},this.tlsSessionCache=new Z5s({maxSize:a})}static normalizeOrigin(t,r){return typeof t=="string"&&(t=new URL(t)),r&&t.hostname!==r&&(t.hostname=r),t.origin}normalizeOptions(t){let r="";if(t)for(let s of L5s)t[s]&&(r+=`:${t[s]}`);return r}_tryToCreateNewSession(t,r){if(!(t in this.queue)||!(r in this.queue[t]))return;let s=this.queue[t][r];this._sessionsCount{Array.isArray(s)?(s=[...s],a()):s=[{resolve:a,reject:o}];let g=this.normalizeOptions(r),p=e.normalizeOrigin(t,r&&r.servername);if(p===void 0){for(let{reject:y}of s)y(new TypeError("The `origin` argument needs to be a string or an URL object"));return}if(g in this.sessions){let y=this.sessions[g],B=-1,v=-1,k;for(let T of y){let O=T.remoteSettings.maxConcurrentStreams;if(O=O||T[Mbe]||T.destroyed)continue;k||(B=O),X>v&&(k=T,v=X)}}if(k){if(s.length!==1){for(let{reject:T}of s){let O=new Error(`Expected the length of listeners to be 1, got ${s.length}. +Please report this to https://github.com/szmarczak/http2-wrapper/`);T(O)}return}s[0].resolve(k);return}}if(g in this.queue){if(p in this.queue[g]){this.queue[g][p].listeners.push(...s),this._tryToCreateNewSession(g,p);return}}else this.queue[g]={};let f=()=>{g in this.queue&&this.queue[g][p]===m&&(delete this.queue[g][p],Object.keys(this.queue[g]).length===0&&delete this.queue[g])},m=()=>{let y=`${p}:${g}`,B=!1;try{let v=F5s.connect(t,{createConnection:this.createConnection,settings:this.settings,session:this.tlsSessionCache.get(y),...r});v[vF]=0,v[Mbe]=!1;let k=()=>v[vF]{this.tlsSessionCache.set(y,X)}),v.once("error",X=>{for(let{reject:U}of s)U(X);this.tlsSessionCache.delete(y)}),v.setTimeout(this.timeout,()=>{v.destroy()}),v.once("close",()=>{if(B){T&&this._freeSessionsCount--,this._sessionsCount--;let X=this.sessions[g];X.splice(X.indexOf(v),1),X.length===0&&delete this.sessions[g]}else{let X=new Error("Session closed without receiving a SETTINGS frame");X.code="HTTP2WRAPPER_NOSETTINGS";for(let{reject:U}of s)U(X);f()}this._tryToCreateNewSession(g,p)});let O=()=>{if(!(!(g in this.queue)||!k())){for(let X of v[bO])if(X in this.queue[g]){let{listeners:U}=this.queue[g][X];for(;U.length!==0&&k();)U.shift().resolve(v);let le=this.queue[g];if(le[X].listeners.length===0&&(delete le[X],Object.keys(le).length===0)){delete this.queue[g];break}if(!k())break}}};v.on("origin",()=>{v[bO]=v.originSet,k()&&(O(),xXt(this.sessions[g],v))}),v.once("remoteSettings",()=>{if(v.ref(),v.unref(),this._sessionsCount++,m.destroyed){let X=new Error("Agent has been destroyed");for(let U of s)U.reject(X);v.destroy();return}v[bO]=v.originSet;{let X=this.sessions;if(g in X){let U=X[g];U.splice(V5s(U,v,W5s),0,v)}else X[g]=[v]}this._freeSessionsCount+=1,B=!0,this.emit("session",v),O(),f(),v[vF]===0&&this._freeSessionsCount>this.maxFreeSessions&&v.close(),s.length!==0&&(this.getSession(p,r,s),s.length=0),v.on("remoteSettings",()=>{O(),xXt(this.sessions[g],v)})}),v[Bun]=v.request,v.request=(X,U)=>{if(v[Mbe])throw new Error("The session is gracefully closing. No new streams are allowed.");let le=v[Bun](X,U);return v.ref(),++v[vF],v[vF]===v.remoteSettings.maxConcurrentStreams&&this._freeSessionsCount--,le.once("close",()=>{if(T=k(),--v[vF],!v.destroyed&&!v.closed&&(P5s(this.sessions[g],v),k()&&!v.closed)){T||(this._freeSessionsCount++,T=!0);let ae=v[vF]===0;ae&&v.unref(),ae&&(this._freeSessionsCount>this.maxFreeSessions||v[Mbe])?v.close():(xXt(this.sessions[g],v),O())}}),le}}catch(v){for(let k of s)k.reject(v);f()}};m.listeners=s,m.completed=!1,m.destroyed=!1,this.queue[g][p]=m,this._tryToCreateNewSession(g,p)})}request(t,r,s,a){return new Promise((o,g)=>{this.getSession(t,r,[{reject:g,resolve:p=>{try{o(p.request(s,a))}catch(f){g(f)}}}])})}createConnection(t,r){return e.connect(t,r)}static connect(t,r){r.ALPNProtocols=["h2"];let s=t.port||443,a=t.hostname||t.host;return typeof r.servername>"u"&&(r.servername=a),G5s.connect(s,a,r)}closeFreeSessions(){for(let t of Object.values(this.sessions))for(let r of t)r[vF]===0&&r.close()}destroy(t){for(let r of Object.values(this.sessions))for(let s of r)s.destroy(t);for(let r of Object.values(this.queue))for(let s of Object.values(r))s.destroyed=!0;this.queue={}}get freeSessions(){return vun({agent:this,isFree:!0})}get busySessions(){return vun({agent:this,isFree:!1})}};_Ae.kCurrentStreamsCount=vF;_Ae.kGracefullyClosing=Mbe;wun.exports={Agent:_Ae,globalAgent:new _Ae}});var FXt=z((FPc,Tun)=>{"use strict";var{Readable:O5s}=xt("stream"),GXt=class extends O5s{constructor(t,r){super({highWaterMark:r,autoDestroy:!1}),this.statusCode=null,this.statusMessage="",this.httpVersion="2.0",this.httpVersionMajor=2,this.httpVersionMinor=0,this.headers={},this.trailers={},this.req=null,this.aborted=!1,this.complete=!1,this.upgrade=null,this.rawHeaders=[],this.rawTrailers=[],this.socket=t,this.connection=t,this._dumped=!1}_destroy(t){this.req._request.destroy(t)}setTimeout(t,r){return this.req.setTimeout(t,r),this}_dump(){this._dumped||(this._dumped=!0,this.removeAllListeners("data"),this.resume())}_read(){this.req&&this.req._request.resume()}};Tun.exports=GXt});var ZXt=z((ZPc,Nun)=>{"use strict";Nun.exports=e=>{let t={protocol:e.protocol,hostname:typeof e.hostname=="string"&&e.hostname.startsWith("[")?e.hostname.slice(1,-1):e.hostname,host:e.host,hash:e.hash,search:e.search,pathname:e.pathname,href:e.href,path:`${e.pathname||""}${e.search||""}`};return typeof e.port=="string"&&e.port.length!==0&&(t.port=Number(e.port)),(e.username||e.password)&&(t.auth=`${e.username||""}:${e.password||""}`),t}});var Dun=z((LPc,Run)=>{"use strict";Run.exports=(e,t,r)=>{for(let s of r)e.on(s,(...a)=>t.emit(s,...a))}});var kun=z((VPc,xun)=>{"use strict";xun.exports=e=>{switch(e){case":method":case":scheme":case":authority":case":path":return!0;default:return!1}}});var Fun=z((PPc,Gun)=>{"use strict";var Hbe=(e,t,r)=>{Gun.exports[t]=class extends e{constructor(...a){super(typeof r=="string"?r:r(a)),this.name=`${super.name} [${t}]`,this.code=t}}};Hbe(TypeError,"ERR_INVALID_ARG_TYPE",e=>{let t=e[0].includes(".")?"property":"argument",r=e[1],s=Array.isArray(r);return s&&(r=`${r.slice(0,-1).join(", ")} or ${r.slice(-1)}`),`The "${e[0]}" ${t} must be ${s?"one of":"of"} type ${r}. Received ${typeof e[2]}`});Hbe(TypeError,"ERR_INVALID_PROTOCOL",e=>`Protocol "${e[0]}" not supported. Expected "${e[1]}"`);Hbe(Error,"ERR_HTTP_HEADERS_SENT",e=>`Cannot ${e[0]} headers after they are sent to the client`);Hbe(TypeError,"ERR_INVALID_HTTP_TOKEN",e=>`${e[0]} must be a valid HTTP token [${e[1]}]`);Hbe(TypeError,"ERR_HTTP_INVALID_HEADER_VALUE",e=>`Invalid value "${e[0]} for header "${e[1]}"`);Hbe(TypeError,"ERR_INVALID_CHAR",e=>`Invalid character in ${e[0]} [${e[1]}]`)});var OXt=z((OPc,Qun)=>{"use strict";var Q5s=xt("http2"),{Writable:M5s}=xt("stream"),{Agent:Zun,globalAgent:H5s}=kXt(),Y5s=FXt(),X5s=ZXt(),J5s=Dun(),U5s=kun(),{ERR_INVALID_ARG_TYPE:LXt,ERR_INVALID_PROTOCOL:K5s,ERR_HTTP_HEADERS_SENT:Lun,ERR_INVALID_HTTP_TOKEN:j5s,ERR_HTTP_INVALID_HEADER_VALUE:z5s,ERR_INVALID_CHAR:q5s}=Fun(),{HTTP2_HEADER_STATUS:Vun,HTTP2_HEADER_METHOD:Wun,HTTP2_HEADER_PATH:Pun,HTTP2_METHOD_CONNECT:$5s}=Q5s.constants,Ik=Symbol("headers"),VXt=Symbol("origin"),WXt=Symbol("session"),Oun=Symbol("options"),fit=Symbol("flushedHeaders"),z9e=Symbol("jobs"),eMs=/^[\^`\-\w!#$%&*+.|~]+$/,tMs=/[^\t\u0020-\u007E\u0080-\u00FF]/,PXt=class extends M5s{constructor(t,r,s){super({autoDestroy:!1});let a=typeof t=="string"||t instanceof URL;if(a&&(t=X5s(t instanceof URL?t:new URL(t))),typeof r=="function"||r===void 0?(s=r,r=a?t:{...t}):r={...t,...r},r.h2session)this[WXt]=r.h2session;else if(r.agent===!1)this.agent=new Zun({maxFreeSessions:0});else if(typeof r.agent>"u"||r.agent===null)typeof r.createConnection=="function"?(this.agent=new Zun({maxFreeSessions:0}),this.agent.createConnection=r.createConnection):this.agent=H5s;else if(typeof r.agent.request=="function")this.agent=r.agent;else throw new LXt("options.agent",["Agent-like Object","undefined","false"],r.agent);if(r.protocol&&r.protocol!=="https:")throw new K5s(r.protocol,"https:");let o=r.port||r.defaultPort||this.agent&&this.agent.defaultPort||443,g=r.hostname||r.host||"localhost";delete r.hostname,delete r.host,delete r.port;let{timeout:p}=r;if(r.timeout=void 0,this[Ik]=Object.create(null),this[z9e]=[],this.socket=null,this.connection=null,this.method=r.method||"GET",this.path=r.path,this.res=null,this.aborted=!1,this.reusedSocket=!1,r.headers)for(let[f,m]of Object.entries(r.headers))this.setHeader(f,m);r.auth&&!("authorization"in this[Ik])&&(this[Ik].authorization="Basic "+Buffer.from(r.auth).toString("base64")),r.session=r.tlsSession,r.path=r.socketPath,this[Oun]=r,o===443?(this[VXt]=`https://${g}`,":authority"in this[Ik]||(this[Ik][":authority"]=g)):(this[VXt]=`https://${g}:${o}`,":authority"in this[Ik]||(this[Ik][":authority"]=`${g}:${o}`)),p&&this.setTimeout(p),s&&this.once("response",s),this[fit]=!1}get method(){return this[Ik][Wun]}set method(t){t&&(this[Ik][Wun]=t.toUpperCase())}get path(){return this[Ik][Pun]}set path(t){t&&(this[Ik][Pun]=t)}get _mustNotHaveABody(){return this.method==="GET"||this.method==="HEAD"||this.method==="DELETE"}_write(t,r,s){if(this._mustNotHaveABody){s(new Error("The GET, HEAD and DELETE methods must NOT have a body"));return}this.flushHeaders();let a=()=>this._request.write(t,r,s);this._request?a():this[z9e].push(a)}_final(t){if(this.destroyed)return;this.flushHeaders();let r=()=>{if(this._mustNotHaveABody){t();return}this._request.end(t)};this._request?r():this[z9e].push(r)}abort(){this.res&&this.res.complete||(this.aborted||process.nextTick(()=>this.emit("abort")),this.aborted=!0,this.destroy())}_destroy(t,r){this.res&&this.res._dump(),this._request&&this._request.destroy(),r(t)}async flushHeaders(){if(this[fit]||this.destroyed)return;this[fit]=!0;let t=this.method===$5s,r=s=>{if(this._request=s,this.destroyed){s.destroy();return}t||J5s(s,this,["timeout","continue","close","error"]);let a=g=>(...p)=>{!this.writable&&!this.destroyed?g(...p):this.once("finish",()=>{g(...p)})};s.once("response",a((g,p,f)=>{let m=new Y5s(this.socket,s.readableHighWaterMark);this.res=m,m.req=this,m.statusCode=g[Vun],m.headers=g,m.rawHeaders=f,m.once("end",()=>{this.aborted?(m.aborted=!0,m.emit("aborted")):(m.complete=!0,m.socket=null,m.connection=null)}),t?(m.upgrade=!0,this.emit("connect",m,s,Buffer.alloc(0))?this.emit("close"):s.destroy()):(s.on("data",y=>{!m._dumped&&!m.push(y)&&s.pause()}),s.once("end",()=>{m.push(null)}),this.emit("response",m)||m._dump())})),s.once("headers",a(g=>this.emit("information",{statusCode:g[Vun]}))),s.once("trailers",a((g,p,f)=>{let{res:m}=this;m.trailers=g,m.rawTrailers=f}));let{socket:o}=s.session;this.socket=o,this.connection=o;for(let g of this[z9e])g();this.emit("socket",this.socket)};if(this[WXt])try{r(this[WXt].request(this[Ik]))}catch(s){this.emit("error",s)}else{this.reusedSocket=!0;try{r(await this.agent.request(this[VXt],this[Oun],this[Ik]))}catch(s){this.emit("error",s)}}}getHeader(t){if(typeof t!="string")throw new LXt("name","string",t);return this[Ik][t.toLowerCase()]}get headersSent(){return this[fit]}removeHeader(t){if(typeof t!="string")throw new LXt("name","string",t);if(this.headersSent)throw new Lun("remove");delete this[Ik][t.toLowerCase()]}setHeader(t,r){if(this.headersSent)throw new Lun("set");if(typeof t!="string"||!eMs.test(t)&&!U5s(t))throw new j5s("Header name",t);if(typeof r>"u")throw new z5s(r,t);if(tMs.test(r))throw new q5s("header content",t);this[Ik][t.toLowerCase()]=r}setNoDelay(){}setSocketKeepAlive(){}setTimeout(t,r){let s=()=>this._request.setTimeout(t,r);return this._request?s():this[z9e].push(s),this}get maxHeadersCount(){if(!this.destroyed&&this._request)return this._request.session.localSettings.maxHeaderListSize}set maxHeadersCount(t){}};Qun.exports=PXt});var Hun=z((QPc,Mun)=>{"use strict";var rMs=xt("tls");Mun.exports=(e={},t=rMs.connect)=>new Promise((r,s)=>{let a=!1,o,g=async()=>{await f,o.off("timeout",p),o.off("error",s),e.resolveSocket?(r({alpnProtocol:o.alpnProtocol,socket:o,timeout:a}),a&&(await Promise.resolve(),o.emit("timeout"))):(o.destroy(),r({alpnProtocol:o.alpnProtocol,timeout:a}))},p=async()=>{a=!0,g()},f=(async()=>{try{o=await t(e,g),o.on("error",s),o.once("timeout",p)}catch(m){s(m)}})()})});var Xun=z((MPc,Yun)=>{"use strict";var nMs=xt("net");Yun.exports=e=>{let t=e.host,r=e.headers&&e.headers.host;return r&&(r.startsWith("[")?r.indexOf("]")===-1?t=r:t=r.slice(1,-1):t=r.split(":",1)[0]),nMs.isIP(t)?"":t}});var Kun=z((HPc,MXt)=>{"use strict";var Jun=xt("http"),QXt=xt("https"),iMs=Hun(),sMs=DXt(),oMs=OXt(),aMs=Xun(),cMs=ZXt(),Iit=new sMs({maxSize:100}),q9e=new Map,Uun=(e,t,r)=>{t._httpMessage={shouldKeepAlive:!0};let s=()=>{e.emit("free",t,r)};t.on("free",s);let a=()=>{e.removeSocket(t,r)};t.on("close",a);let o=()=>{e.removeSocket(t,r),t.off("close",a),t.off("free",s),t.off("agentRemove",o)};t.on("agentRemove",o),e.emit("free",t,r)},lMs=async e=>{let t=`${e.host}:${e.port}:${e.ALPNProtocols.sort()}`;if(!Iit.has(t)){if(q9e.has(t))return(await q9e.get(t)).alpnProtocol;let{path:r,agent:s}=e;e.path=e.socketPath;let a=iMs(e);q9e.set(t,a);try{let{socket:o,alpnProtocol:g}=await a;if(Iit.set(t,g),e.path=r,g==="h2")o.destroy();else{let{globalAgent:p}=QXt,f=QXt.Agent.prototype.createConnection;s?s.createConnection===f?Uun(s,o,e):o.destroy():p.createConnection===f?Uun(p,o,e):o.destroy()}return q9e.delete(t),g}catch(o){throw q9e.delete(t),o}}return Iit.get(t)};MXt.exports=async(e,t,r)=>{if((typeof e=="string"||e instanceof URL)&&(e=cMs(new URL(e))),typeof t=="function"&&(r=t,t=void 0),t={ALPNProtocols:["h2","http/1.1"],...e,...t,resolveSocket:!0},!Array.isArray(t.ALPNProtocols)||t.ALPNProtocols.length===0)throw new Error("The `ALPNProtocols` option must be an Array with at least one entry");t.protocol=t.protocol||"https:";let s=t.protocol==="https:";t.host=t.hostname||t.host||"localhost",t.session=t.tlsSession,t.servername=t.servername||aMs(t),t.port=t.port||(s?443:80),t._defaultAgent=s?QXt.globalAgent:Jun.globalAgent;let a=t.agent;if(a){if(a.addRequest)throw new Error("The `options.agent` object can contain only `http`, `https` or `http2` properties");t.agent=a[s?"https":"http"]}return s&&await lMs(t)==="h2"?(a&&(t.agent=a.http2),new oMs(t,r)):Jun.request(t,r)};MXt.exports.protocolCache=Iit});var zun=z((YPc,jun)=>{"use strict";var uMs=xt("http2"),gMs=kXt(),HXt=OXt(),AMs=FXt(),dMs=Kun(),pMs=(e,t,r)=>new HXt(e,t,r),fMs=(e,t,r)=>{let s=new HXt(e,t,r);return s.end(),s};jun.exports={...uMs,ClientRequest:HXt,IncomingMessage:AMs,...gMs,request:pMs,get:fMs,auto:dMs}});var XXt=z(YXt=>{"use strict";Object.defineProperty(YXt,"__esModule",{value:!0});var qun=Aj();YXt.default=e=>qun.default.nodeStream(e)&&qun.default.function_(e.getBoundary)});var rgn=z(JXt=>{"use strict";Object.defineProperty(JXt,"__esModule",{value:!0});var egn=xt("fs"),tgn=xt("util"),$un=Aj(),IMs=XXt(),CMs=tgn.promisify(egn.stat);JXt.default=async(e,t)=>{if(t&&"content-length"in t)return Number(t["content-length"]);if(!e)return 0;if($un.default.string(e))return Buffer.byteLength(e);if($un.default.buffer(e))return e.length;if(IMs.default(e))return tgn.promisify(e.getLength.bind(e))();if(e instanceof egn.ReadStream){let{size:r}=await CMs(e.path);return r===0?void 0:r}}});var KXt=z(UXt=>{"use strict";Object.defineProperty(UXt,"__esModule",{value:!0});function mMs(e,t,r){let s={};for(let a of r)s[a]=(...o)=>{t.emit(a,...o)},e.on(a,s[a]);return()=>{for(let a of r)e.off(a,s[a])}}UXt.default=mMs});var ngn=z(jXt=>{"use strict";Object.defineProperty(jXt,"__esModule",{value:!0});jXt.default=()=>{let e=[];return{once(t,r,s){t.once(r,s),e.push({origin:t,event:r,fn:s})},unhandleAll(){for(let t of e){let{origin:r,event:s,fn:a}=t;r.removeListener(s,a)}e.length=0}}}});var sgn=z($9e=>{"use strict";Object.defineProperty($9e,"__esModule",{value:!0});$9e.TimeoutError=void 0;var hMs=xt("net"),_Ms=ngn(),ign=Symbol("reentry"),yMs=()=>{},Cit=class extends Error{constructor(t,r){super(`Timeout awaiting '${r}' for ${t}ms`),this.event=r,this.name="TimeoutError",this.code="ETIMEDOUT"}};$9e.TimeoutError=Cit;$9e.default=(e,t,r)=>{if(ign in e)return yMs;e[ign]=!0;let s=[],{once:a,unhandleAll:o}=_Ms.default(),g=(B,v,k)=>{var T;let O=setTimeout(v,B,B,k);(T=O.unref)===null||T===void 0||T.call(O);let X=()=>{clearTimeout(O)};return s.push(X),X},{host:p,hostname:f}=r,m=(B,v)=>{e.destroy(new Cit(B,v))},y=()=>{for(let B of s)B();o()};if(e.once("error",B=>{if(y(),e.listenerCount("error")===0)throw B}),e.once("close",y),a(e,"response",B=>{a(B,"end",y)}),typeof t.request<"u"&&g(t.request,m,"request"),typeof t.socket<"u"){let B=()=>{m(t.socket,"socket")};e.setTimeout(t.socket,B),s.push(()=>{e.removeListener("timeout",B)})}return a(e,"socket",B=>{var v;let{socketPath:k}=e;if(B.connecting){let T=!!(k??hMs.isIP((v=f??p)!==null&&v!==void 0?v:"")!==0);if(typeof t.lookup<"u"&&!T&&typeof B.address().address>"u"){let O=g(t.lookup,m,"lookup");a(B,"lookup",O)}if(typeof t.connect<"u"){let O=()=>g(t.connect,m,"connect");T?a(B,"connect",O()):a(B,"lookup",X=>{X===null&&a(B,"connect",O())})}typeof t.secureConnect<"u"&&r.protocol==="https:"&&a(B,"connect",()=>{let O=g(t.secureConnect,m,"secureConnect");a(B,"secureConnect",O)})}if(typeof t.send<"u"){let T=()=>g(t.send,m,"send");B.connecting?a(B,"connect",()=>{a(e,"upload-complete",T())}):a(e,"upload-complete",T())}}),typeof t.response<"u"&&a(e,"upload-complete",()=>{let B=g(t.response,m,"response");a(e,"response",B)}),y}});var agn=z(zXt=>{"use strict";Object.defineProperty(zXt,"__esModule",{value:!0});var ogn=Aj();zXt.default=e=>{e=e;let t={protocol:e.protocol,hostname:ogn.default.string(e.hostname)&&e.hostname.startsWith("[")?e.hostname.slice(1,-1):e.hostname,host:e.host,hash:e.hash,search:e.search,pathname:e.pathname,href:e.href,path:`${e.pathname||""}${e.search||""}`};return ogn.default.string(e.port)&&e.port.length>0&&(t.port=Number(e.port)),(e.username||e.password)&&(t.auth=`${e.username||""}:${e.password||""}`),t}});var cgn=z(qXt=>{"use strict";Object.defineProperty(qXt,"__esModule",{value:!0});var bMs=xt("url"),EMs=["protocol","host","hostname","port","pathname","search"];qXt.default=(e,t)=>{var r,s;if(t.path){if(t.pathname)throw new TypeError("Parameters `path` and `pathname` are mutually exclusive.");if(t.search)throw new TypeError("Parameters `path` and `search` are mutually exclusive.");if(t.searchParams)throw new TypeError("Parameters `path` and `searchParams` are mutually exclusive.")}if(t.search&&t.searchParams)throw new TypeError("Parameters `search` and `searchParams` are mutually exclusive.");if(!e){if(!t.protocol)throw new TypeError("No URL protocol specified");e=`${t.protocol}//${(s=(r=t.hostname)!==null&&r!==void 0?r:t.host)!==null&&s!==void 0?s:""}`}let a=new bMs.URL(e);if(t.path){let o=t.path.indexOf("?");o===-1?t.pathname=t.path:(t.pathname=t.path.slice(0,o),t.search=t.path.slice(o+1)),delete t.path}for(let o of EMs)t[o]&&(a[o]=t[o].toString());return a}});var lgn=z(e4t=>{"use strict";Object.defineProperty(e4t,"__esModule",{value:!0});var $Xt=class{constructor(){this.weakMap=new WeakMap,this.map=new Map}set(t,r){typeof t=="object"?this.weakMap.set(t,r):this.map.set(t,r)}get(t){return typeof t=="object"?this.weakMap.get(t):this.map.get(t)}has(t){return typeof t=="object"?this.weakMap.has(t):this.map.has(t)}};e4t.default=$Xt});var r4t=z(t4t=>{"use strict";Object.defineProperty(t4t,"__esModule",{value:!0});var BMs=async e=>{let t=[],r=0;for await(let s of e)t.push(s),r+=Buffer.byteLength(s);return Buffer.isBuffer(t[0])?Buffer.concat(t,r):Buffer.from(t.join(""))};t4t.default=BMs});var ggn=z(yAe=>{"use strict";Object.defineProperty(yAe,"__esModule",{value:!0});yAe.dnsLookupIpVersionToFamily=yAe.isDnsLookupIpVersion=void 0;var ugn={auto:0,ipv4:4,ipv6:6};yAe.isDnsLookupIpVersion=e=>e in ugn;yAe.dnsLookupIpVersionToFamily=e=>{if(yAe.isDnsLookupIpVersion(e))return ugn[e];throw new Error("Invalid DNS lookup IP version")}});var n4t=z(mit=>{"use strict";Object.defineProperty(mit,"__esModule",{value:!0});mit.isResponseOk=void 0;mit.isResponseOk=e=>{let{statusCode:t}=e,r=e.request.options.followRedirect?299:399;return t>=200&&t<=r||t===304}});var dgn=z(i4t=>{"use strict";Object.defineProperty(i4t,"__esModule",{value:!0});var Agn=new Set;i4t.default=e=>{Agn.has(e)||(Agn.add(e),process.emitWarning(`Got: ${e}`,{type:"DeprecationWarning"}))}});var pgn=z(s4t=>{"use strict";Object.defineProperty(s4t,"__esModule",{value:!0});var e1=Aj(),vMs=(e,t)=>{if(e1.default.null_(e.encoding))throw new TypeError("To get a Buffer, set `options.responseType` to `buffer` instead");e1.assert.any([e1.default.string,e1.default.undefined],e.encoding),e1.assert.any([e1.default.boolean,e1.default.undefined],e.resolveBodyOnly),e1.assert.any([e1.default.boolean,e1.default.undefined],e.methodRewriting),e1.assert.any([e1.default.boolean,e1.default.undefined],e.isStream),e1.assert.any([e1.default.string,e1.default.undefined],e.responseType),e.responseType===void 0&&(e.responseType="text");let{retry:r}=e;if(t?e.retry={...t.retry}:e.retry={calculateDelay:s=>s.computedValue,limit:0,methods:[],statusCodes:[],errorCodes:[],maxRetryAfter:void 0},e1.default.object(r)?(e.retry={...e.retry,...r},e.retry.methods=[...new Set(e.retry.methods.map(s=>s.toUpperCase()))],e.retry.statusCodes=[...new Set(e.retry.statusCodes)],e.retry.errorCodes=[...new Set(e.retry.errorCodes)]):e1.default.number(r)&&(e.retry.limit=r),e1.default.undefined(e.retry.maxRetryAfter)&&(e.retry.maxRetryAfter=Math.min(...[e.timeout.request,e.timeout.connect].filter(e1.default.number))),e1.default.object(e.pagination)){t&&(e.pagination={...t.pagination,...e.pagination});let{pagination:s}=e;if(!e1.default.function_(s.transform))throw new Error("`options.pagination.transform` must be implemented");if(!e1.default.function_(s.shouldContinue))throw new Error("`options.pagination.shouldContinue` must be implemented");if(!e1.default.function_(s.filter))throw new TypeError("`options.pagination.filter` must be implemented");if(!e1.default.function_(s.paginate))throw new Error("`options.pagination.paginate` must be implemented")}return e.responseType==="json"&&e.headers.accept===void 0&&(e.headers.accept="application/json"),e};s4t.default=vMs});var fgn=z(eVe=>{"use strict";Object.defineProperty(eVe,"__esModule",{value:!0});eVe.retryAfterStatusCodes=void 0;eVe.retryAfterStatusCodes=new Set([413,429,503]);var SMs=({attemptCount:e,retryOptions:t,error:r,retryAfter:s})=>{if(e>t.limit)return 0;let a=t.methods.includes(r.options.method),o=t.errorCodes.includes(r.code),g=r.response&&t.statusCodes.includes(r.response.statusCode);if(!a||!o&&!g)return 0;if(r.response){if(s)return t.maxRetryAfter===void 0||s>t.maxRetryAfter?0:s;if(r.response.statusCode===413)return 0}let p=Math.random()*100;return 2**(e-1)*1e3+p};eVe.default=SMs});var nVe=z(f_=>{"use strict";Object.defineProperty(f_,"__esModule",{value:!0});f_.UnsupportedProtocolError=f_.ReadError=f_.TimeoutError=f_.UploadError=f_.CacheError=f_.HTTPError=f_.MaxRedirectsError=f_.RequestError=f_.setNonEnumerableProperties=f_.knownHookEvents=f_.withoutBody=f_.kIsNormalizedAlready=void 0;var Ign=xt("util"),Cgn=xt("stream"),wMs=xt("fs"),_ne=xt("url"),mgn=xt("http"),o4t=xt("http"),TMs=xt("https"),NMs=Dln(),RMs=Vln(),hgn=mun(),DMs=bun(),xMs=zun(),kMs=dit(),ga=Aj(),GMs=rgn(),_gn=XXt(),FMs=KXt(),ygn=sgn(),ZMs=agn(),bgn=cgn(),LMs=lgn(),VMs=r4t(),Egn=ggn(),WMs=n4t(),yne=dgn(),PMs=pgn(),OMs=fgn(),a4t,RD=Symbol("request"),yit=Symbol("response"),Ybe=Symbol("responseSize"),Xbe=Symbol("downloadedSize"),Jbe=Symbol("bodySize"),Ube=Symbol("uploadedSize"),hit=Symbol("serverResponsesPiped"),Bgn=Symbol("unproxyEvents"),vgn=Symbol("isFromCache"),c4t=Symbol("cancelTimeouts"),Sgn=Symbol("startedReading"),Kbe=Symbol("stopReading"),_it=Symbol("triggerRead"),bne=Symbol("body"),tVe=Symbol("jobs"),wgn=Symbol("originalResponse"),Tgn=Symbol("retryTimeout");f_.kIsNormalizedAlready=Symbol("isNormalizedAlready");var QMs=ga.default.string(process.versions.brotli);f_.withoutBody=new Set(["GET","HEAD"]);f_.knownHookEvents=["init","beforeRequest","beforeRedirect","beforeError","beforeRetry","afterResponse"];function MMs(e){for(let t in e){let r=e[t];if(!ga.default.string(r)&&!ga.default.number(r)&&!ga.default.boolean(r)&&!ga.default.null_(r)&&!ga.default.undefined(r))throw new TypeError(`The \`searchParams\` value '${String(r)}' must be a string, number, boolean or null`)}}function HMs(e){return ga.default.object(e)&&!("statusCode"in e)}var l4t=new LMs.default,YMs=async e=>new Promise((t,r)=>{let s=a=>{r(a)};e.pending||t(),e.once("error",s),e.once("ready",()=>{e.off("error",s),t()})}),XMs=new Set([300,301,302,303,304,307,308]),JMs=["context","body","json","form"];f_.setNonEnumerableProperties=(e,t)=>{let r={};for(let s of e)if(s)for(let a of JMs)a in s&&(r[a]={writable:!0,configurable:!0,enumerable:!1,value:s[a]});Object.defineProperties(t,r)};var $v=class extends Error{constructor(t,r,s){var a,o;if(super(t),Error.captureStackTrace(this,this.constructor),this.name="RequestError",this.code=(a=r.code)!==null&&a!==void 0?a:"ERR_GOT_REQUEST_ERROR",s instanceof Tit?(Object.defineProperty(this,"request",{enumerable:!1,value:s}),Object.defineProperty(this,"response",{enumerable:!1,value:s[yit]}),Object.defineProperty(this,"options",{enumerable:!1,value:s.options})):Object.defineProperty(this,"options",{enumerable:!1,value:s}),this.timings=(o=this.request)===null||o===void 0?void 0:o.timings,ga.default.string(r.stack)&&ga.default.string(this.stack)){let g=this.stack.indexOf(this.message)+this.message.length,p=this.stack.slice(g).split(` `).reverse(),f=r.stack.slice(r.stack.indexOf(r.message)+r.message.length).split(` `).reverse();for(;f.length!==0&&f[0]===p[0];)p.shift();this.stack=`${this.stack.slice(0,g)}${p.reverse().join(` `)}${f.reverse().join(` -`)}`}}};p_.RequestError=qv;var _it=class extends qv{constructor(t){super(`Redirected ${t.options.maxRedirects} times. Aborting.`,{},t),this.name="MaxRedirectsError",this.code="ERR_TOO_MANY_REDIRECTS"}};p_.MaxRedirectsError=_it;var yit=class extends qv{constructor(t){super(`Response code ${t.statusCode} (${t.statusMessage})`,{},t.request),this.name="HTTPError",this.code="ERR_NON_2XX_3XX_RESPONSE"}};p_.HTTPError=yit;var bit=class extends qv{constructor(t,r){super(t.message,t,r),this.name="CacheError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_CACHE_ACCESS":this.code}};p_.CacheError=bit;var Eit=class extends qv{constructor(t,r){super(t.message,t,r),this.name="UploadError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_UPLOAD":this.code}};p_.UploadError=Eit;var Bit=class extends qv{constructor(t,r,s){super(t.message,t,s),this.name="TimeoutError",this.event=t.event,this.timings=r}};p_.TimeoutError=Bit;var eVe=class extends qv{constructor(t,r){super(t.message,t,r),this.name="ReadError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_READING_RESPONSE_STREAM":this.code}};p_.ReadError=eVe;var vit=class extends qv{constructor(t){super(`Unsupported protocol "${t.url.protocol}"`,{},t),this.name="UnsupportedProtocolError",this.code="ERR_UNSUPPORTED_PROTOCOL"}};p_.UnsupportedProtocolError=vit;var OYs=["socket","connect","continue","information","upgrade","timeout"],Sit=class extends ggn.Duplex{constructor(t,r={},s){super({autoDestroy:!1,highWaterMark:0}),this[Ybe]=0,this[Xbe]=0,this.requestInitialized=!1,this[Cit]=new Set,this.redirects=[],this[Jbe]=!1,this[mit]=!1,this[$9e]=[],this.retryCount=0,this._progressCallbacks=[];let a=()=>this._unlockWrite(),o=()=>this._lockWrite();this.on("pipe",m=>{m.prependListener("data",a),m.on("data",o),m.prependListener("end",a),m.on("end",o)}),this.on("unpipe",m=>{m.off("data",a),m.off("data",o),m.off("end",a),m.off("end",o)}),this.on("pipe",m=>{m instanceof n4t.IncomingMessage&&(this.options.headers={...m.headers,...this.options.headers})});let{json:g,body:p,form:f}=r;if((g||p||f)&&this._lockWrite(),p_.kIsNormalizedAlready in r)this.options=r;else try{this.options=this.constructor.normalizeArguments(t,r,s)}catch(m){Aa.default.nodeStream(r.body)&&r.body.destroy(),this.destroy(m);return}(async()=>{var m;try{this.options.body instanceof _Ys.ReadStream&&await VYs(this.options.body);let{url:y}=this.options;if(!y)throw new TypeError("Missing `url` property");if(this.requestUrl=y.toString(),decodeURI(this.requestUrl),await this._finalizeBody(),await this._makeRequest(),this.destroyed){(m=this[wD])===null||m===void 0||m.destroy();return}for(let B of this[$9e])B();this[$9e].length=0,this.requestInitialized=!0}catch(y){if(y instanceof qv){this._beforeError(y);return}this.destroyed||this.destroy(y)}})()}static normalizeArguments(t,r,s){var a,o,g,p,f;let m=r;if(Aa.default.object(t)&&!Aa.default.urlInstance(t))r={...s,...t,...r};else{if(t&&r&&r.url!==void 0)throw new TypeError("The `url` option is mutually exclusive with the `input` argument");r={...s,...r},t!==void 0&&(r.url=t),Aa.default.urlInstance(r.url)&&(r.url=new mne.URL(r.url.toString()))}if(r.cache===!1&&(r.cache=void 0),r.dnsCache===!1&&(r.dnsCache=void 0),Aa.assert.any([Aa.default.string,Aa.default.undefined],r.method),Aa.assert.any([Aa.default.object,Aa.default.undefined],r.headers),Aa.assert.any([Aa.default.string,Aa.default.urlInstance,Aa.default.undefined],r.prefixUrl),Aa.assert.any([Aa.default.object,Aa.default.undefined],r.cookieJar),Aa.assert.any([Aa.default.object,Aa.default.string,Aa.default.undefined],r.searchParams),Aa.assert.any([Aa.default.object,Aa.default.string,Aa.default.undefined],r.cache),Aa.assert.any([Aa.default.object,Aa.default.number,Aa.default.undefined],r.timeout),Aa.assert.any([Aa.default.object,Aa.default.undefined],r.context),Aa.assert.any([Aa.default.object,Aa.default.undefined],r.hooks),Aa.assert.any([Aa.default.boolean,Aa.default.undefined],r.decompress),Aa.assert.any([Aa.default.boolean,Aa.default.undefined],r.ignoreInvalidCookies),Aa.assert.any([Aa.default.boolean,Aa.default.undefined],r.followRedirect),Aa.assert.any([Aa.default.number,Aa.default.undefined],r.maxRedirects),Aa.assert.any([Aa.default.boolean,Aa.default.undefined],r.throwHttpErrors),Aa.assert.any([Aa.default.boolean,Aa.default.undefined],r.http2),Aa.assert.any([Aa.default.boolean,Aa.default.undefined],r.allowGetBody),Aa.assert.any([Aa.default.string,Aa.default.undefined],r.localAddress),Aa.assert.any([Cgn.isDnsLookupIpVersion,Aa.default.undefined],r.dnsLookupIpVersion),Aa.assert.any([Aa.default.object,Aa.default.undefined],r.https),Aa.assert.any([Aa.default.boolean,Aa.default.undefined],r.rejectUnauthorized),r.https&&(Aa.assert.any([Aa.default.boolean,Aa.default.undefined],r.https.rejectUnauthorized),Aa.assert.any([Aa.default.function_,Aa.default.undefined],r.https.checkServerIdentity),Aa.assert.any([Aa.default.string,Aa.default.object,Aa.default.array,Aa.default.undefined],r.https.certificateAuthority),Aa.assert.any([Aa.default.string,Aa.default.object,Aa.default.array,Aa.default.undefined],r.https.key),Aa.assert.any([Aa.default.string,Aa.default.object,Aa.default.array,Aa.default.undefined],r.https.certificate),Aa.assert.any([Aa.default.string,Aa.default.undefined],r.https.passphrase),Aa.assert.any([Aa.default.string,Aa.default.buffer,Aa.default.array,Aa.default.undefined],r.https.pfx)),Aa.assert.any([Aa.default.object,Aa.default.undefined],r.cacheOptions),Aa.default.string(r.method)?r.method=r.method.toUpperCase():r.method="GET",r.headers===s?.headers?r.headers={...r.headers}:r.headers=SYs({...s?.headers,...r.headers}),"slashes"in r)throw new TypeError("The legacy `url.Url` has been deprecated. Use `URL` instead.");if("auth"in r)throw new TypeError("Parameter `auth` is deprecated. Use `username` / `password` instead.");if("searchParams"in r&&r.searchParams&&r.searchParams!==s?.searchParams){let G;if(Aa.default.string(r.searchParams)||r.searchParams instanceof mne.URLSearchParams)G=new mne.URLSearchParams(r.searchParams);else{ZYs(r.searchParams),G=new mne.URLSearchParams;for(let T in r.searchParams){let O=r.searchParams[T];O===null?G.append(T,""):O!==void 0&&G.append(T,O)}}(a=s?.searchParams)===null||a===void 0||a.forEach((T,O)=>{G.has(O)||G.append(O,T)}),r.searchParams=G}if(r.username=(o=r.username)!==null&&o!==void 0?o:"",r.password=(g=r.password)!==null&&g!==void 0?g:"",Aa.default.undefined(r.prefixUrl)?r.prefixUrl=(p=s?.prefixUrl)!==null&&p!==void 0?p:"":(r.prefixUrl=r.prefixUrl.toString(),r.prefixUrl!==""&&!r.prefixUrl.endsWith("/")&&(r.prefixUrl+="/")),Aa.default.string(r.url)){if(r.url.startsWith("/"))throw new Error("`input` must not start with a slash when using `prefixUrl`");r.url=Ign.default(r.prefixUrl+r.url,r)}else(Aa.default.undefined(r.url)&&r.prefixUrl!==""||r.protocol)&&(r.url=Ign.default(r.prefixUrl,r));if(r.url){"port"in r&&delete r.port;let{prefixUrl:G}=r;Object.defineProperty(r,"prefixUrl",{set:O=>{let X=r.url;if(!X.href.startsWith(O))throw new Error(`Cannot change \`prefixUrl\` from ${G} to ${O}: ${X.href}`);r.url=new mne.URL(O+X.href.slice(G.length)),G=O},get:()=>G});let{protocol:T}=r.url;if(T==="unix:"&&(T="http:",r.url=new mne.URL(`http://unix${r.url.pathname}${r.url.search}`)),r.searchParams&&(r.url.search=r.searchParams.toString()),T!=="http:"&&T!=="https:")throw new vit(r);r.username===""?r.username=r.url.username:r.url.username=r.username,r.password===""?r.password=r.url.password:r.url.password=r.password}let{cookieJar:y}=r;if(y){let{setCookie:G,getCookieString:T}=y;Aa.assert.function_(G),Aa.assert.function_(T),G.length===4&&T.length===0&&(G=ugn.promisify(G.bind(r.cookieJar)),T=ugn.promisify(T.bind(r.cookieJar)),r.cookieJar={setCookie:G,getCookieString:T})}let{cache:B}=r;if(B&&(o4t.has(B)||o4t.set(B,new dgn((G,T)=>{let O=G[wD](G,T);return Aa.default.promise(O)&&(O.once=(X,U)=>{if(X==="error")O.catch(U);else if(X==="abort")(async()=>{try{(await O).once("abort",U)}catch{}})();else throw new Error(`Unknown HTTP2 promise event: ${X}`);return O}),O},B))),r.cacheOptions={...r.cacheOptions},r.dnsCache===!0)i4t||(i4t=new EYs.default),r.dnsCache=i4t;else if(!Aa.default.undefined(r.dnsCache)&&!r.dnsCache.lookup)throw new TypeError(`Parameter \`dnsCache\` must be a CacheableLookup instance or a boolean, got ${Aa.default(r.dnsCache)}`);Aa.default.number(r.timeout)?r.timeout={request:r.timeout}:s&&r.timeout!==s.timeout?r.timeout={...s.timeout,...r.timeout}:r.timeout={...r.timeout},r.context||(r.context={});let v=r.hooks===s?.hooks;r.hooks={...r.hooks};for(let G of p_.knownHookEvents)if(G in r.hooks)if(Aa.default.array(r.hooks[G]))r.hooks[G]=[...r.hooks[G]];else throw new TypeError(`Parameter \`${G}\` must be an Array, got ${Aa.default(r.hooks[G])}`);else r.hooks[G]=[];if(s&&!v)for(let G of p_.knownHookEvents)s.hooks[G].length>0&&(r.hooks[G]=[...s.hooks[G],...r.hooks[G]]);if("family"in r&&hne.default('"options.family" was never documented, please use "options.dnsLookupIpVersion"'),s?.https&&(r.https={...s.https,...r.https}),"rejectUnauthorized"in r&&hne.default('"options.rejectUnauthorized" is now deprecated, please use "options.https.rejectUnauthorized"'),"checkServerIdentity"in r&&hne.default('"options.checkServerIdentity" was never documented, please use "options.https.checkServerIdentity"'),"ca"in r&&hne.default('"options.ca" was never documented, please use "options.https.certificateAuthority"'),"key"in r&&hne.default('"options.key" was never documented, please use "options.https.key"'),"cert"in r&&hne.default('"options.cert" was never documented, please use "options.https.certificate"'),"passphrase"in r&&hne.default('"options.passphrase" was never documented, please use "options.https.passphrase"'),"pfx"in r&&hne.default('"options.pfx" was never documented, please use "options.https.pfx"'),"followRedirects"in r)throw new TypeError("The `followRedirects` option does not exist. Use `followRedirect` instead.");if(r.agent){for(let G in r.agent)if(G!=="http"&&G!=="https"&&G!=="http2")throw new TypeError(`Expected the \`options.agent\` properties to be \`http\`, \`https\` or \`http2\`, got \`${G}\``)}return r.maxRedirects=(f=r.maxRedirects)!==null&&f!==void 0?f:0,p_.setNonEnumerableProperties([s,m],r),kYs.default(r,s)}_lockWrite(){let t=()=>{throw new TypeError("The payload has been already provided")};this.write=t,this.end=t}_unlockWrite(){this.write=super.write,this.end=super.end}async _finalizeBody(){let{options:t}=this,{headers:r}=t,s=!Aa.default.undefined(t.form),a=!Aa.default.undefined(t.json),o=!Aa.default.undefined(t.body),g=s||a||o,p=p_.withoutBody.has(t.method)&&!(t.method==="GET"&&t.allowGetBody);if(this._cannotHaveBody=p,g){if(p)throw new TypeError(`The \`${t.method}\` method cannot be used with a body`);if([o,s,a].filter(f=>f).length>1)throw new TypeError("The `body`, `json` and `form` options are mutually exclusive");if(o&&!(t.body instanceof ggn.Readable)&&!Aa.default.string(t.body)&&!Aa.default.buffer(t.body)&&!pgn.default(t.body))throw new TypeError("The `body` option must be a stream.Readable, string or Buffer");if(s&&!Aa.default.object(t.form))throw new TypeError("The `form` option must be an Object");{let f=!Aa.default.string(r["content-type"]);o?(pgn.default(t.body)&&f&&(r["content-type"]=`multipart/form-data; boundary=${t.body.getBoundary()}`),this[_ne]=t.body):s?(f&&(r["content-type"]="application/x-www-form-urlencoded"),this[_ne]=new mne.URLSearchParams(t.form).toString()):(f&&(r["content-type"]="application/json"),this[_ne]=t.stringifyJson(t.json));let m=await wYs.default(this[_ne],t.headers);Aa.default.undefined(r["content-length"])&&Aa.default.undefined(r["transfer-encoding"])&&!p&&!Aa.default.undefined(m)&&(r["content-length"]=String(m))}}else p?this._lockWrite():this._unlockWrite();this[Hbe]=Number(r["content-length"])||void 0}async _onResponseBase(t){let{options:r}=this,{url:s}=r;this[ygn]=t,r.decompress&&(t=BYs(t));let a=t.statusCode,o=t;o.statusMessage=o.statusMessage?o.statusMessage:Agn.STATUS_CODES[a],o.url=r.url.toString(),o.requestUrl=this.requestUrl,o.redirectUrls=this.redirects,o.request=this,o.isFromCache=t.fromCache||!1,o.ip=this.ip,o.retryCount=this.retryCount,this[hgn]=o.isFromCache,this[Qbe]=Number(t.headers["content-length"])||void 0,this[hit]=t,t.once("end",()=>{this[Qbe]=this[Ybe],this.emit("downloadProgress",this.downloadProgress)}),t.once("error",p=>{t.destroy(),this._beforeError(new eVe(p,this))}),t.once("aborted",()=>{this._beforeError(new eVe({name:"Error",message:"The server aborted pending request",code:"ECONNRESET"},this))}),this.emit("downloadProgress",this.downloadProgress);let g=t.headers["set-cookie"];if(Aa.default.object(r.cookieJar)&&g){let p=g.map(async f=>r.cookieJar.setCookie(f,s.toString()));r.ignoreInvalidCookies&&(p=p.map(async f=>f.catch(()=>{})));try{await Promise.all(p)}catch(f){this._beforeError(f);return}}if(r.followRedirect&&t.headers.location&&WYs.has(a)){if(t.resume(),this[wD]&&(this[s4t](),delete this[wD],this[mgn]()),(a===303&&r.method!=="GET"&&r.method!=="HEAD"||!r.methodRewriting)&&(r.method="GET","body"in r&&delete r.body,"json"in r&&delete r.json,"form"in r&&delete r.form,this[_ne]=void 0,delete r.headers["content-length"]),this.redirects.length>=r.maxRedirects){this._beforeError(new _it(this));return}try{let B=function(v){return v.protocol==="unix:"||v.hostname==="unix"},f=Buffer.from(t.headers.location,"binary").toString(),m=new mne.URL(f,s),y=m.toString();if(decodeURI(y),!B(s)&&B(m)){this._beforeError(new qv("Cannot redirect to UNIX socket",{},this));return}m.hostname!==s.hostname||m.port!==s.port?("host"in r.headers&&delete r.headers.host,"cookie"in r.headers&&delete r.headers.cookie,"authorization"in r.headers&&delete r.headers.authorization,(r.username||r.password)&&(r.username="",r.password="")):(m.username=r.username,m.password=r.password),this.redirects.push(y),r.url=m;for(let v of r.hooks.beforeRedirect)await v(r,o);this.emit("redirect",o,r),await this._makeRequest()}catch(f){this._beforeError(f);return}return}if(r.isStream&&r.throwHttpErrors&&!xYs.isResponseOk(o)){this._beforeError(new yit(o));return}t.on("readable",()=>{this[mit]&&this._read()}),this.on("resume",()=>{t.resume()}),this.on("pause",()=>{t.pause()}),t.once("end",()=>{this.push(null)}),this.emit("response",t);for(let p of this[Cit])if(!p.headersSent){for(let f in t.headers){let m=r.decompress?f!=="content-encoding":!0,y=t.headers[f];m&&p.setHeader(f,y)}p.statusCode=a}}async _onResponse(t){try{await this._onResponseBase(t)}catch(r){this._beforeError(r)}}_onRequest(t){let{options:r}=this,{timeout:s,url:a}=r;bYs.default(t),this[s4t]=fgn.default(t,s,a);let o=r.cache?"cacheableResponse":"response";t.once(o,f=>{this._onResponse(f)}),t.once("error",f=>{var m;t.destroy(),(m=t.res)===null||m===void 0||m.removeAllListeners("end"),f=f instanceof fgn.TimeoutError?new Bit(f,this.timings,this):new qv(f.message,f,this),this._beforeError(f)}),this[mgn]=TYs.default(t,this,OYs),this[wD]=t,this.emit("uploadProgress",this.uploadProgress);let g=this[_ne],p=this.redirects.length===0?this:t;Aa.default.nodeStream(g)?(g.pipe(p),g.once("error",f=>{this._beforeError(new Eit(f,this))})):(this._unlockWrite(),Aa.default.undefined(g)?(this._cannotHaveBody||this._noPipe)&&(p.end(),this._lockWrite()):(this._writeRequest(g,void 0,()=>{}),p.end(),this._lockWrite())),this.emit("request",t)}async _createCacheableRequest(t,r){return new Promise((s,a)=>{Object.assign(r,NYs.default(t)),delete r.url;let o,g=o4t.get(r.cache)(r,async p=>{p._readableState.autoDestroy=!1,o&&(await o).emit("cacheableResponse",p),s(p)});r.url=t,g.once("error",a),g.once("request",async p=>{o=p,s(o)})})}async _makeRequest(){var t,r,s,a,o;let{options:g}=this,{headers:p}=g;for(let U in p)if(Aa.default.undefined(p[U]))delete p[U];else if(Aa.default.null_(p[U]))throw new TypeError(`Use \`undefined\` instead of \`null\` to delete the \`${U}\` header`);if(g.decompress&&Aa.default.undefined(p["accept-encoding"])&&(p["accept-encoding"]=FYs?"gzip, deflate, br":"gzip, deflate"),g.cookieJar){let U=await g.cookieJar.getCookieString(g.url.toString());Aa.default.nonEmptyString(U)&&(g.headers.cookie=U)}for(let U of g.hooks.beforeRequest){let le=await U(g);if(!Aa.default.undefined(le)){g.request=()=>le;break}}g.body&&this[_ne]!==g.body&&(this[_ne]=g.body);let{agent:f,request:m,timeout:y,url:B}=g;if(g.dnsCache&&!("lookup"in g)&&(g.lookup=g.dnsCache.lookup),B.hostname==="unix"){let U=/(?.+?):(?.+)/.exec(`${B.pathname}${B.search}`);if(U?.groups){let{socketPath:le,path:ae}=U.groups;Object.assign(g,{socketPath:le,path:ae,host:""})}}let v=B.protocol==="https:",G;g.http2?G=vYs.auto:G=v?yYs.request:Agn.request;let T=(t=g.request)!==null&&t!==void 0?t:G,O=g.cache?this._createCacheableRequest:T;f&&!g.http2&&(g.agent=f[v?"https":"http"]),g[wD]=T,delete g.request,delete g.timeout;let X=g;if(X.shared=(r=g.cacheOptions)===null||r===void 0?void 0:r.shared,X.cacheHeuristic=(s=g.cacheOptions)===null||s===void 0?void 0:s.cacheHeuristic,X.immutableMinTimeToLive=(a=g.cacheOptions)===null||a===void 0?void 0:a.immutableMinTimeToLive,X.ignoreCargoCult=(o=g.cacheOptions)===null||o===void 0?void 0:o.ignoreCargoCult,g.dnsLookupIpVersion!==void 0)try{X.family=Cgn.dnsLookupIpVersionToFamily(g.dnsLookupIpVersion)}catch{throw new Error("Invalid `dnsLookupIpVersion` option value")}g.https&&("rejectUnauthorized"in g.https&&(X.rejectUnauthorized=g.https.rejectUnauthorized),g.https.checkServerIdentity&&(X.checkServerIdentity=g.https.checkServerIdentity),g.https.certificateAuthority&&(X.ca=g.https.certificateAuthority),g.https.certificate&&(X.cert=g.https.certificate),g.https.key&&(X.key=g.https.key),g.https.passphrase&&(X.passphrase=g.https.passphrase),g.https.pfx&&(X.pfx=g.https.pfx));try{let U=await O(B,X);Aa.default.undefined(U)&&(U=G(B,X)),g.request=m,g.timeout=y,g.agent=f,g.https&&("rejectUnauthorized"in g.https&&delete X.rejectUnauthorized,g.https.checkServerIdentity&&delete X.checkServerIdentity,g.https.certificateAuthority&&delete X.ca,g.https.certificate&&delete X.cert,g.https.key&&delete X.key,g.https.passphrase&&delete X.passphrase,g.https.pfx&&delete X.pfx),LYs(U)?this._onRequest(U):this.writable?(this.once("finish",()=>{this._onResponse(U)}),this._unlockWrite(),this.end(),this._lockWrite()):this._onResponse(U)}catch(U){throw U instanceof dgn.CacheError?new bit(U,this):new qv(U.message,U,this)}}async _error(t){try{for(let r of this.options.hooks.beforeError)t=await r(t)}catch(r){t=new qv(r.message,r,this)}this.destroy(t)}_beforeError(t){if(this[Jbe])return;let{options:r}=this,s=this.retryCount+1;this[Jbe]=!0,t instanceof qv||(t=new qv(t.message,t,this));let a=t,{response:o}=a;(async()=>{if(o&&!o.body){o.setEncoding(this._readableState.encoding);try{o.rawBody=await DYs.default(o),o.body=o.rawBody.toString()}catch{}}if(this.listenerCount("retry")!==0){let g;try{let p;o&&"retry-after"in o.headers&&(p=Number(o.headers["retry-after"]),Number.isNaN(p)?(p=Date.parse(o.headers["retry-after"])-Date.now(),p<=0&&(p=1)):p*=1e3),g=await r.retry.calculateDelay({attemptCount:s,retryOptions:r.retry,error:a,retryAfter:p,computedValue:GYs.default({attemptCount:s,retryOptions:r.retry,error:a,retryAfter:p,computedValue:0})})}catch(p){this._error(new qv(p.message,p,this));return}if(g){let p=async()=>{try{for(let f of this.options.hooks.beforeRetry)await f(this.options,a,s)}catch(f){this._error(new qv(f.message,t,this));return}this.destroyed||(this.destroy(),this.emit("retry",s,t))};this[bgn]=setTimeout(p,g);return}}this._error(a)})()}_read(){this[mit]=!0;let t=this[hit];if(t&&!this[Jbe]){t.readableLength&&(this[mit]=!1);let r;for(;(r=t.read())!==null;){this[Ybe]+=r.length,this[_gn]=!0;let s=this.downloadProgress;s.percent<1&&this.emit("downloadProgress",s),this.push(r)}}}_write(t,r,s){let a=()=>{this._writeRequest(t,r,s)};this.requestInitialized?a():this[$9e].push(a)}_writeRequest(t,r,s){this[wD].destroyed||(this._progressCallbacks.push(()=>{this[Xbe]+=Buffer.byteLength(t,r);let a=this.uploadProgress;a.percent<1&&this.emit("uploadProgress",a)}),this[wD].write(t,r,a=>{!a&&this._progressCallbacks.length>0&&this._progressCallbacks.shift()(),s(a)}))}_final(t){let r=()=>{for(;this._progressCallbacks.length!==0;)this._progressCallbacks.shift()();if(!(wD in this)){t();return}if(this[wD].destroyed){t();return}this[wD].end(s=>{s||(this[Hbe]=this[Xbe],this.emit("uploadProgress",this.uploadProgress),this[wD].emit("upload-complete")),t(s)})};this.requestInitialized?r():this[$9e].push(r)}_destroy(t,r){var s;this[Jbe]=!0,clearTimeout(this[bgn]),wD in this&&(this[s4t](),!((s=this[hit])===null||s===void 0)&&s.complete||this[wD].destroy()),t!==null&&!Aa.default.undefined(t)&&!(t instanceof qv)&&(t=new qv(t.message,t,this)),r(t)}get _isAboutToError(){return this[Jbe]}get ip(){var t;return(t=this.socket)===null||t===void 0?void 0:t.remoteAddress}get aborted(){var t,r,s;return((r=(t=this[wD])===null||t===void 0?void 0:t.destroyed)!==null&&r!==void 0?r:this.destroyed)&&!(!((s=this[ygn])===null||s===void 0)&&s.complete)}get socket(){var t,r;return(r=(t=this[wD])===null||t===void 0?void 0:t.socket)!==null&&r!==void 0?r:void 0}get downloadProgress(){let t;return this[Qbe]?t=this[Ybe]/this[Qbe]:this[Qbe]===this[Ybe]?t=1:t=0,{percent:t,transferred:this[Ybe],total:this[Qbe]}}get uploadProgress(){let t;return this[Hbe]?t=this[Xbe]/this[Hbe]:this[Hbe]===this[Xbe]?t=1:t=0,{percent:t,transferred:this[Xbe],total:this[Hbe]}}get timings(){var t;return(t=this[wD])===null||t===void 0?void 0:t.timings}get isFromCache(){return this[hgn]}pipe(t,r){if(this[_gn])throw new Error("Failed to pipe. The response has been emitted already.");return t instanceof n4t.ServerResponse&&this[Cit].add(t),super.pipe(t,r)}unpipe(t){return t instanceof n4t.ServerResponse&&this[Cit].delete(t),super.unpipe(t),this}};p_.default=Sit});var rVe=z(CH=>{"use strict";var MYs=CH&&CH.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),QYs=CH&&CH.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&MYs(t,e,r)};Object.defineProperty(CH,"__esModule",{value:!0});CH.CancelError=CH.ParseError=void 0;var Egn=tVe(),a4t=class extends Egn.RequestError{constructor(t,r){let{options:s}=r.request;super(`${t.message} in "${s.url.toString()}"`,t,r.request),this.name="ParseError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_BODY_PARSE_FAILURE":this.code}};CH.ParseError=a4t;var c4t=class extends Egn.RequestError{constructor(t){super("Promise was canceled",{},t),this.name="CancelError",this.code="ERR_CANCELED"}get isCanceled(){return!0}};CH.CancelError=c4t;QYs(tVe(),CH)});var vgn=z(l4t=>{"use strict";Object.defineProperty(l4t,"__esModule",{value:!0});var Bgn=rVe(),YYs=(e,t,r,s)=>{let{rawBody:a}=e;try{if(t==="text")return a.toString(s);if(t==="json")return a.length===0?"":r(a.toString());if(t==="buffer")return a;throw new Bgn.ParseError({message:`Unknown body type '${t}'`,name:"Error"},e)}catch(o){throw new Bgn.ParseError(o,e)}};l4t.default=YYs});var u4t=z(yne=>{"use strict";var HYs=yne&&yne.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),XYs=yne&&yne.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&HYs(t,e,r)};Object.defineProperty(yne,"__esModule",{value:!0});var JYs=Dt("events"),UYs=oj(),KYs=Eln(),wit=rVe(),Sgn=vgn(),wgn=tVe(),jYs=XXt(),zYs=$Xt(),Tgn=e4t(),qYs=["request","response","redirect","uploadProgress","downloadProgress"];function Ngn(e){let t,r,s=new JYs.EventEmitter,a=new KYs((g,p,f)=>{let m=y=>{let B=new wgn.default(void 0,e);B.retryCount=y,B._noPipe=!0,f(()=>B.destroy()),f.shouldReject=!1,f(()=>p(new wit.CancelError(B))),t=B,B.once("response",async T=>{var O;if(T.retryCount=y,T.request.aborted)return;let X;try{X=await zYs.default(B),T.rawBody=X}catch{return}if(B._isAboutToError)return;let U=((O=T.headers["content-encoding"])!==null&&O!==void 0?O:"").toLowerCase(),le=["gzip","deflate","br"].includes(U),{options:ae}=B;if(le&&!ae.decompress)T.body=X;else try{T.body=Sgn.default(T,ae.responseType,ae.parseJson,ae.encoding)}catch(ge){if(T.body=X.toString(),Tgn.isResponseOk(T)){B._beforeError(ge);return}}try{for(let[ge,fe]of ae.hooks.afterResponse.entries())T=await fe(T,async pe=>{let he=wgn.default.normalizeArguments(void 0,{...pe,retry:{calculateDelay:()=>0},throwHttpErrors:!1,resolveBodyOnly:!1},ae);he.hooks.afterResponse=he.hooks.afterResponse.slice(0,ge);for(let Te of he.hooks.beforeRetry)await Te(he);let be=Ngn(he);return f(()=>{be.catch(()=>{}),be.cancel()}),be})}catch(ge){B._beforeError(new wit.RequestError(ge.message,ge,B));return}if(r=T,!Tgn.isResponseOk(T)){B._beforeError(new wit.HTTPError(T));return}B.destroy(),g(B.options.resolveBodyOnly?T.body:T)});let v=T=>{if(a.isCanceled)return;let{options:O}=B;if(T instanceof wit.HTTPError&&!O.throwHttpErrors){let{response:X}=T;g(B.options.resolveBodyOnly?X.body:X);return}p(T)};B.once("error",v);let G=B.options.body;B.once("retry",(T,O)=>{var X,U;if(G===((X=O.request)===null||X===void 0?void 0:X.options.body)&&UYs.default.nodeStream((U=O.request)===null||U===void 0?void 0:U.options.body)){v(O);return}m(T)}),jYs.default(B,s,qYs)};m(0)});a.on=(g,p)=>(s.on(g,p),a);let o=g=>{let p=(async()=>{await a;let{options:f}=r.request;return Sgn.default(r,g,f.parseJson,f.encoding)})();return Object.defineProperties(p,Object.getOwnPropertyDescriptors(a)),p};return a.json=()=>{let{headers:g}=t.options;return!t.writableFinished&&g.accept===void 0&&(g.accept="application/json"),o("json")},a.buffer=()=>o("buffer"),a.text=()=>o("text"),a}yne.default=Ngn;XYs(rVe(),yne)});var Rgn=z(g4t=>{"use strict";Object.defineProperty(g4t,"__esModule",{value:!0});var $Ys=rVe();function eHs(e,...t){let r=(async()=>{if(e instanceof $Ys.RequestError)try{for(let a of t)if(a)for(let o of a)e=await o(e)}catch(a){e=a}throw e})(),s=()=>r;return r.json=s,r.text=s,r.buffer=s,r.on=s,r}g4t.default=eHs});var kgn=z(A4t=>{"use strict";Object.defineProperty(A4t,"__esModule",{value:!0});var Dgn=oj();function xgn(e){for(let t of Object.values(e))(Dgn.default.plainObject(t)||Dgn.default.array(t))&&xgn(t);return Object.freeze(e)}A4t.default=xgn});var Fgn=z(Ggn=>{"use strict";Object.defineProperty(Ggn,"__esModule",{value:!0})});var d4t=z(yO=>{"use strict";var tHs=yO&&yO.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),rHs=yO&&yO.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&tHs(t,e,r)};Object.defineProperty(yO,"__esModule",{value:!0});yO.defaultHandler=void 0;var Zgn=oj(),_O=u4t(),nHs=Rgn(),Nit=tVe(),iHs=kgn(),sHs={RequestError:_O.RequestError,CacheError:_O.CacheError,ReadError:_O.ReadError,HTTPError:_O.HTTPError,MaxRedirectsError:_O.MaxRedirectsError,TimeoutError:_O.TimeoutError,ParseError:_O.ParseError,CancelError:_O.CancelError,UnsupportedProtocolError:_O.UnsupportedProtocolError,UploadError:_O.UploadError},oHs=async e=>new Promise(t=>{setTimeout(t,e)}),{normalizeArguments:Tit}=Nit.default,Lgn=(...e)=>{let t;for(let r of e)t=Tit(void 0,r,t);return t},aHs=e=>e.isStream?new Nit.default(void 0,e):_O.default(e),cHs=e=>"defaults"in e&&"options"in e.defaults,lHs=["get","post","put","patch","head","delete"];yO.defaultHandler=(e,t)=>t(e);var Vgn=(e,t)=>{if(e)for(let r of e)r(t)},Wgn=e=>{e._rawHandlers=e.handlers,e.handlers=e.handlers.map(s=>(a,o)=>{let g,p=s(a,f=>(g=o(f),g));if(p!==g&&!a.isStream&&g){let f=p,{then:m,catch:y,finally:B}=f;Object.setPrototypeOf(f,Object.getPrototypeOf(g)),Object.defineProperties(f,Object.getOwnPropertyDescriptors(g)),f.then=m,f.catch=y,f.finally=B}return p});let t=(s,a={},o)=>{var g,p;let f=0,m=y=>e.handlers[f++](y,f===e.handlers.length?aHs:m);if(Zgn.default.plainObject(s)){let y={...s,...a};Nit.setNonEnumerableProperties([s,a],y),a=y,s=void 0}try{let y;try{Vgn(e.options.hooks.init,a),Vgn((g=a.hooks)===null||g===void 0?void 0:g.init,a)}catch(v){y=v}let B=Tit(s,a,o??e.options);if(B[Nit.kIsNormalizedAlready]=!0,y)throw new _O.RequestError(y.message,y,B);return m(B)}catch(y){if(a.isStream)throw y;return nHs.default(y,e.options.hooks.beforeError,(p=a.hooks)===null||p===void 0?void 0:p.beforeError)}};t.extend=(...s)=>{let a=[e.options],o=[...e._rawHandlers],g;for(let p of s)cHs(p)?(a.push(p.defaults.options),o.push(...p.defaults._rawHandlers),g=p.defaults.mutableDefaults):(a.push(p),"handlers"in p&&o.push(...p.handlers),g=p.mutableDefaults);return o=o.filter(p=>p!==yO.defaultHandler),o.length===0&&o.push(yO.defaultHandler),Wgn({options:Lgn(...a),handlers:o,mutableDefaults:!!g})};let r=async function*(s,a){let o=Tit(s,a,e.options);o.resolveBodyOnly=!1;let g=o.pagination;if(!Zgn.default.object(g))throw new TypeError("`options.pagination` must be implemented");let p=[],{countLimit:f}=g,m=0;for(;m{let o=[];for await(let g of r(s,a))o.push(g);return o},t.paginate.each=r,t.stream=(s,a)=>t(s,{...a,isStream:!0});for(let s of lHs)t[s]=(a,o)=>t(a,{...o,method:s}),t.stream[s]=(a,o)=>t(a,{...o,method:s,isStream:!0});return Object.assign(t,sHs),Object.defineProperty(t,"defaults",{value:e.mutableDefaults?e:iHs.default(e),writable:e.mutableDefaults,configurable:e.mutableDefaults,enumerable:!0}),t.mergeOptions=Lgn,t};yO.default=Wgn;rHs(Fgn(),yO)});var Mgn=z((aj,Rit)=>{"use strict";var uHs=aj&&aj.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Pgn=aj&&aj.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&uHs(t,e,r)};Object.defineProperty(aj,"__esModule",{value:!0});var gHs=Dt("url"),Ogn=d4t(),AHs={options:{method:"GET",retry:{limit:2,methods:["GET","PUT","HEAD","DELETE","OPTIONS","TRACE"],statusCodes:[408,413,429,500,502,503,504,521,522,524],errorCodes:["ETIMEDOUT","ECONNRESET","EADDRINUSE","ECONNREFUSED","EPIPE","ENOTFOUND","ENETUNREACH","EAI_AGAIN"],maxRetryAfter:void 0,calculateDelay:({computedValue:e})=>e},timeout:{},headers:{"user-agent":"got (https://github.com/sindresorhus/got)"},hooks:{init:[],beforeRequest:[],beforeRedirect:[],beforeRetry:[],beforeError:[],afterResponse:[]},cache:void 0,dnsCache:void 0,decompress:!0,throwHttpErrors:!0,followRedirect:!0,isStream:!1,responseType:"text",resolveBodyOnly:!1,maxRedirects:10,prefixUrl:"",methodRewriting:!0,ignoreInvalidCookies:!1,context:{},http2:!1,allowGetBody:!1,https:void 0,pagination:{transform:e=>e.request.options.responseType==="json"?e.body:JSON.parse(e.body),paginate:e=>{if(!Reflect.has(e.headers,"link"))return!1;let t=e.headers.link.split(","),r;for(let s of t){let a=s.split(";");if(a[1].includes("next")){r=a[0].trimStart().trim(),r=r.slice(1,-1);break}}return r?{url:new gHs.URL(r)}:!1},filter:()=>!0,shouldContinue:()=>!0,countLimit:1/0,backoff:0,requestLimit:1e4,stackAllItems:!0},parseJson:e=>JSON.parse(e),stringifyJson:e=>JSON.stringify(e),cacheOptions:{}},handlers:[Ogn.defaultHandler],mutableDefaults:!1},p4t=Ogn.default(AHs);aj.default=p4t;Rit.exports=p4t;Rit.exports.default=p4t;Rit.exports.__esModule=!0;Pgn(d4t(),aj);Pgn(u4t(),aj)});var xit=z(EJ=>{"use strict";Object.defineProperty(EJ,"__esModule",{value:!0});EJ.Method=void 0;EJ.getNetworkSettings=Kgn;EJ.request=iVe;EJ.get=hHs;EJ.put=_Hs;EJ.post=yHs;EJ.del=bHs;var nVe=(Ma(),Ai(Oa)),dHs=Ro(),pHs=Dt("https"),fHs=Dt("http"),Jgn=nVe.__importDefault(sk()),Qgn=nVe.__importDefault(aXt()),bne=TL(),I4t=CO(),iE=nVe.__importStar(pO()),Ugn=nVe.__importStar(fW()),Ygn=new Map,Hgn=new Map,IHs=new fHs.Agent({keepAlive:!0}),CHs=new pHs.Agent({keepAlive:!0});function Xgn(e){let t=new URL(e),r={host:t.hostname,headers:{}};return t.port&&(r.port=Number(t.port)),t.username&&t.password&&(r.proxyAuth=`${t.username}:${t.password}`),{proxy:r}}async function f4t(e){return Ugn.getFactoryWithDefault(Hgn,e,()=>dHs.xfs.readFilePromise(e).then(t=>(Hgn.set(e,t),t)))}function mHs({statusCode:e,statusMessage:t},r){let s=iE.pretty(r,e,iE.Type.NUMBER),a=`https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/${e}`;return iE.applyHyperlink(r,`${s}${t?` (${t})`:""}`,a)}async function Dit(e,{configuration:t,customErrorMessage:r}){try{return await e}catch(s){if(s.name!=="HTTPError")throw s;let a=r?.(s,t)??s.response.body?.error;a==null&&(s.message.startsWith("Response code")?a="The remote server failed to provide the requested resource":a=s.message),s.code==="ETIMEDOUT"&&s.event==="socket"&&(a+=`(can be increased via ${iE.pretty(t,"httpTimeout",iE.Type.SETTING)})`);let o=new I4t.ReportError(bne.MessageName.NETWORK_ERROR,a,g=>{s.response&&g.reportError(bne.MessageName.NETWORK_ERROR,` ${iE.prettyField(t,{label:"Response Code",value:iE.tuple(iE.Type.NO_HINT,mHs(s.response,t))})}`),s.request&&(g.reportError(bne.MessageName.NETWORK_ERROR,` ${iE.prettyField(t,{label:"Request Method",value:iE.tuple(iE.Type.NO_HINT,s.request.options.method)})}`),g.reportError(bne.MessageName.NETWORK_ERROR,` ${iE.prettyField(t,{label:"Request URL",value:iE.tuple(iE.Type.URL,s.request.requestUrl)})}`)),s.request.redirects.length>0&&g.reportError(bne.MessageName.NETWORK_ERROR,` ${iE.prettyField(t,{label:"Request Redirects",value:iE.tuple(iE.Type.NO_HINT,iE.prettyList(t,s.request.redirects,iE.Type.URL))})}`),s.request.retryCount===s.request.options.retry.limit&&g.reportError(bne.MessageName.NETWORK_ERROR,` ${iE.prettyField(t,{label:"Request Retry Count",value:iE.tuple(iE.Type.NO_HINT,`${iE.pretty(t,s.request.retryCount,iE.Type.NUMBER)} (can be increased via ${iE.pretty(t,"httpRetry",iE.Type.SETTING)})`)})}`)});throw o.originalError=s,o}}function Kgn(e,t){let r=[...t.configuration.get("networkSettings")].sort(([g],[p])=>p.length-g.length),s={enableNetwork:void 0,httpsCaFilePath:void 0,httpProxy:void 0,httpsProxy:void 0,httpsKeyFilePath:void 0,httpsCertFilePath:void 0},a=Object.keys(s),o=typeof e=="string"?new URL(e):e;for(let[g,p]of r)if(Jgn.default.isMatch(o.hostname,g))for(let f of a){let m=p.get(f);m!==null&&typeof s[f]>"u"&&(s[f]=m)}for(let g of a)typeof s[g]>"u"&&(s[g]=t.configuration.get(g));return s}var dAe;(function(e){e.GET="GET",e.PUT="PUT",e.POST="POST",e.DELETE="DELETE"})(dAe||(EJ.Method=dAe={}));async function iVe(e,t,{configuration:r,headers:s,jsonRequest:a,jsonResponse:o,method:g=dAe.GET,wrapNetworkRequest:p}){let f={target:e,body:t,configuration:r,headers:s,jsonRequest:a,jsonResponse:o,method:g},m=async()=>await EHs(e,t,f),y=typeof p<"u"?await p(m,f):m;return await(await r.reduceHook(v=>v.wrapNetworkRequest,y,f))()}async function hHs(e,{configuration:t,jsonResponse:r,customErrorMessage:s,wrapNetworkRequest:a,...o}){let g=()=>Dit(iVe(e,null,{configuration:t,wrapNetworkRequest:a,...o}),{configuration:t,customErrorMessage:s}).then(f=>f.body),p=await(typeof a<"u"?g():Ugn.getFactoryWithDefault(Ygn,e,()=>g().then(f=>(Ygn.set(e,f),f))));return r?JSON.parse(p.toString()):p}async function _Hs(e,t,{customErrorMessage:r,...s}){return(await Dit(iVe(e,t,{...s,method:dAe.PUT}),{customErrorMessage:r,configuration:s.configuration})).body}async function yHs(e,t,{customErrorMessage:r,...s}){return(await Dit(iVe(e,t,{...s,method:dAe.POST}),{customErrorMessage:r,configuration:s.configuration})).body}async function bHs(e,{customErrorMessage:t,...r}){return(await Dit(iVe(e,null,{...r,method:dAe.DELETE}),{customErrorMessage:t,configuration:r.configuration})).body}async function EHs(e,t,{configuration:r,headers:s,jsonRequest:a,jsonResponse:o,method:g=dAe.GET}){let p=typeof e=="string"?new URL(e):e,f=Kgn(p,{configuration:r});if(f.enableNetwork===!1)throw new I4t.ReportError(bne.MessageName.NETWORK_DISABLED,`Request to '${p.href}' has been blocked because of your configuration settings`);if(p.protocol==="http:"&&!Jgn.default.isMatch(p.hostname,r.get("unsafeHttpWhitelist")))throw new I4t.ReportError(bne.MessageName.NETWORK_UNSAFE_HTTP,`Unsafe http requests must be explicitly whitelisted in your configuration (${p.hostname})`);let y={agent:{http:f.httpProxy?Qgn.default.httpOverHttp(Xgn(f.httpProxy)):IHs,https:f.httpsProxy?Qgn.default.httpsOverHttp(Xgn(f.httpsProxy)):CHs},headers:s,method:g};y.responseType=o?"json":"buffer",t!==null&&(Buffer.isBuffer(t)||!a&&typeof t=="string"?y.body=t:y.json=t);let B=r.get("httpTimeout"),v=r.get("httpRetry"),G=r.get("enableStrictSsl"),T=f.httpsCaFilePath,O=f.httpsCertFilePath,X=f.httpsKeyFilePath,{default:U}=await Promise.resolve().then(()=>nVe.__importStar(Mgn())),le=T?await f4t(T):void 0,ae=O?await f4t(O):void 0,ge=X?await f4t(X):void 0,fe=U.extend({timeout:{socket:B},retry:v,https:{rejectUnauthorized:G,certificateAuthority:le,certificate:ae,key:ge},...y});return r.getLimit("networkConcurrency")(()=>fe(p))}});var kit=z(mH=>{"use strict";Object.defineProperty(mH,"__esModule",{value:!0});mH.openUrl=mH.major=void 0;mH.getArchitecture=h4t;mH.getArchitectureName=wHs;mH.getArchitectureSet=THs;mH.getCaller=xHs;mH.availableParallelism=kHs;var m4t=(Ma(),Ai(Oa)),eAn=Ro(),C4t=m4t.__importDefault(Dt("os")),BHs=m4t.__importStar(Git()),jgn=m4t.__importStar(fW());mH.major=Number(process.versions.node.split(".")[0]);var zgn=new Map([["darwin","open"],["linux","xdg-open"],["win32","explorer.exe"]]).get(process.platform);mH.openUrl=typeof zgn<"u"?async e=>{try{return await BHs.execvp(zgn,[e],{cwd:eAn.ppath.cwd()}),!0}catch{return!1}}:void 0;var vHs="/usr/bin/ldd";function SHs(){if(process.platform==="darwin"||process.platform==="win32")return null;let e;try{e=eAn.xfs.readFileSync(vHs)}catch{}if(typeof e<"u"){if(e&&(e.includes("GLIBC")||e.includes("libc")))return"glibc";if(e&&e.includes("musl"))return"musl"}let r=(process.report?.getReport()??{}).sharedObjects??[],s=/\/(?:(ld-linux-|[^/]+-linux-gnu\/)|(libc.musl-|ld-musl-))/;return jgn.mapAndFind(r,a=>{let o=a.match(s);if(!o)return jgn.mapAndFind.skip;if(o[1])return"glibc";if(o[2])return"musl";throw new Error("Assertion failed: Expected the libc variant to have been detected")})??null}var qgn,$gn;function h4t(){return qgn=qgn??{os:process.platform,cpu:process.arch,libc:SHs()}}function wHs(e=h4t()){return e.libc?`${e.os}-${e.cpu}-${e.libc}`:`${e.os}-${e.cpu}`}function THs(){let e=h4t();return $gn=$gn??{os:[e.os],cpu:[e.cpu],libc:e.libc?[e.libc]:[]}}var NHs=/^\s*at (.*?) ?\(((?:file|https?|blob|chrome-extension|native|eval|webpack||\/|[a-z]:\\|\\\\).*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,RHs=/\((\S*)(?::(\d+))(?::(\d+))\)/;function DHs(e){let t=NHs.exec(e);if(!t)return null;let r=t[2]&&t[2].indexOf("native")===0,s=t[2]&&t[2].indexOf("eval")===0,a=RHs.exec(t[2]);return s&&a!=null&&(t[2]=a[1],t[3]=a[2],t[4]=a[3]),{file:r?null:t[2],methodName:t[1]||"",arguments:r?[t[2]]:[],line:t[3]?+t[3]:null,column:t[4]?+t[4]:null}}function xHs(){let t=new Error().stack.split(` -`)[3];return DHs(t)}function kHs(){return typeof C4t.default.availableParallelism<"u"?C4t.default.availableParallelism():Math.max(1,C4t.default.cpus().length)}});var oVe=z(th=>{"use strict";Object.defineProperty(th,"__esModule",{value:!0});th.Configuration=th.coreDefinitions=th.WindowsLinkType=th.FormatType=th.SettingsType=th.SECRET=th.DEFAULT_RC_FILENAME=th.ENVIRONMENT_PREFIX=th.TAG_REGEXP=th.LEGACY_PLUGINS=void 0;var _H=(Ma(),Ai(Oa)),xf=Ro(),Fit=aO(),GHs=_H.__importDefault(Sqr()),Ube=Uge(),hH=(Fl(),Ai(dg)),FHs=Gqr(),ZHs=Dt("module"),LHs=_H.__importDefault(Kge()),tAn=Dt("stream"),VHs=xcn(),WHs=Fbe(),PHs=H5t(),OHs=J5t(),MHs=z5t(),QHs=oln(),YHs=$5t(),HHs=cAe(),Ene=_H.__importStar(gln()),Lit=_H.__importStar(eit()),Ry=_H.__importStar(pO()),XHs=_H.__importStar(pne()),JHs=_H.__importStar(xit()),gk=_H.__importStar(fW()),iAn=_H.__importStar(kit()),Zit=_H.__importStar(rj()),yF=_H.__importStar(ak()),bO=iAe(),UHs=function(){if(!Ube.GITHUB_ACTIONS||!process.env.GITHUB_EVENT_PATH)return!1;let e=xf.npath.toPortablePath(process.env.GITHUB_EVENT_PATH),t;try{t=xf.xfs.readJsonSync(e)}catch{return!1}return!(!("repository"in t)||!t.repository||(t.repository.private??!0))}();th.LEGACY_PLUGINS=new Set(["@yarnpkg/plugin-constraints","@yarnpkg/plugin-exec","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-stage","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-workspace-tools"]);var KHs=new Set(["isTestEnv","injectNpmUser","injectNpmPassword","injectNpm2FaToken","zipDataEpilogue","cacheCheckpointOverride","cacheVersionOverride","lockfileVersionOverride","binFolder","version","flags","profile","gpg","ignoreNode","wrapOutput","home","confDir","registry","ignoreCwd"]);th.TAG_REGEXP=/^(?!v)[a-z0-9._-]+$/i;th.ENVIRONMENT_PREFIX="yarn_";th.DEFAULT_RC_FILENAME=".yarnrc.yml";th.SECRET="********";var El;(function(e){e.ANY="ANY",e.BOOLEAN="BOOLEAN",e.ABSOLUTE_PATH="ABSOLUTE_PATH",e.LOCATOR="LOCATOR",e.LOCATOR_LOOSE="LOCATOR_LOOSE",e.NUMBER="NUMBER",e.STRING="STRING",e.SECRET="SECRET",e.SHAPE="SHAPE",e.MAP="MAP"})(El||(th.SettingsType=El={}));th.FormatType=Ry.Type;var rAn;(function(e){e.JUNCTIONS="junctions",e.SYMLINKS="symlinks"})(rAn||(th.WindowsLinkType=rAn={}));th.coreDefinitions={lastUpdateCheck:{description:"Last timestamp we checked whether new Yarn versions were available",type:El.STRING,default:null},yarnPath:{description:"Path to the local executable that must be used over the global one",type:El.ABSOLUTE_PATH,default:null},ignorePath:{description:"If true, the local executable will be ignored when using the global one",type:El.BOOLEAN,default:!1},globalFolder:{description:"Folder where all system-global files are stored",type:El.ABSOLUTE_PATH,default:Lit.getDefaultGlobalFolder()},cacheFolder:{description:"Folder where the cache files must be written",type:El.ABSOLUTE_PATH,default:"./.yarn/cache"},compressionLevel:{description:"Zip files compression level, from 0 to 9 or mixed (a variant of 9, which stores some files uncompressed, when compression doesn't yield good results)",type:El.NUMBER,values:["mixed",0,1,2,3,4,5,6,7,8,9],default:0},virtualFolder:{description:"Folder where the virtual packages (cf doc) will be mapped on the disk (must be named __virtual__)",type:El.ABSOLUTE_PATH,default:"./.yarn/__virtual__"},installStatePath:{description:"Path of the file where the install state will be persisted",type:El.ABSOLUTE_PATH,default:"./.yarn/install-state.gz"},immutablePatterns:{description:"Array of glob patterns; files matching them won't be allowed to change during immutable installs",type:El.STRING,default:[],isArray:!0},rcFilename:{description:"Name of the files where the configuration can be found",type:El.STRING,default:y4t()},enableGlobalCache:{description:"If true, the system-wide cache folder will be used regardless of `cache-folder`",type:El.BOOLEAN,default:!0},cacheMigrationMode:{description:"Defines the conditions under which Yarn upgrades should cause the cache archives to be regenerated.",type:El.STRING,values:["always","match-spec","required-only"],default:"always"},enableColors:{description:"If true, the CLI is allowed to use colors in its output",type:El.BOOLEAN,default:Ry.supportsColor,defaultText:""},enableHyperlinks:{description:"If true, the CLI is allowed to use hyperlinks in its output",type:El.BOOLEAN,default:Ry.supportsHyperlinks,defaultText:""},enableInlineBuilds:{description:"If true, the CLI will print the build output on the command line",type:El.BOOLEAN,default:Ube.isCI,defaultText:""},enableMessageNames:{description:"If true, the CLI will prefix most messages with codes suitable for search engines",type:El.BOOLEAN,default:!0},enableProgressBars:{description:"If true, the CLI is allowed to show a progress bar for long-running events",type:El.BOOLEAN,default:!Ube.isCI,defaultText:""},enableTimers:{description:"If true, the CLI is allowed to print the time spent executing commands",type:El.BOOLEAN,default:!0},enableTips:{description:"If true, installs will print a helpful message every day of the week",type:El.BOOLEAN,default:!Ube.isCI,defaultText:""},preferInteractive:{description:"If true, the CLI will automatically use the interactive mode when called from a TTY",type:El.BOOLEAN,default:!1},preferTruncatedLines:{description:"If true, the CLI will truncate lines that would go beyond the size of the terminal",type:El.BOOLEAN,default:!1},progressBarStyle:{description:"Which style of progress bar should be used (only when progress bars are enabled)",type:El.STRING,default:void 0,defaultText:""},defaultLanguageName:{description:"Default language mode that should be used when a package doesn't offer any insight",type:El.STRING,default:"node"},defaultProtocol:{description:"Default resolution protocol used when resolving pure semver and tag ranges",type:El.STRING,default:"npm:"},enableTransparentWorkspaces:{description:"If false, Yarn won't automatically resolve workspace dependencies unless they use the `workspace:` protocol",type:El.BOOLEAN,default:!0},supportedArchitectures:{description:"Architectures that Yarn will fetch and inject into the resolver",type:El.SHAPE,properties:{os:{description:"Array of supported process.platform strings, or null to target them all",type:El.STRING,isArray:!0,isNullable:!0,default:["current"]},cpu:{description:"Array of supported process.arch strings, or null to target them all",type:El.STRING,isArray:!0,isNullable:!0,default:["current"]},libc:{description:"Array of supported libc libraries, or null to target them all",type:El.STRING,isArray:!0,isNullable:!0,default:["current"]}}},enableMirror:{description:"If true, the downloaded packages will be retrieved and stored in both the local and global folders",type:El.BOOLEAN,default:!0},enableNetwork:{description:"If false, Yarn will refuse to use the network if required to",type:El.BOOLEAN,default:!0},enableOfflineMode:{description:"If true, Yarn will attempt to retrieve files and metadata from the global cache rather than the network",type:El.BOOLEAN,default:!1},httpProxy:{description:"URL of the http proxy that must be used for outgoing http requests",type:El.STRING,default:null},httpsProxy:{description:"URL of the http proxy that must be used for outgoing https requests",type:El.STRING,default:null},unsafeHttpWhitelist:{description:"List of the hostnames for which http queries are allowed (glob patterns are supported)",type:El.STRING,default:[],isArray:!0},httpTimeout:{description:"Timeout of each http request in milliseconds",type:El.NUMBER,default:6e4},httpRetry:{description:"Retry times on http failure",type:El.NUMBER,default:3},networkConcurrency:{description:"Maximal number of concurrent requests",type:El.NUMBER,default:50},taskPoolConcurrency:{description:"Maximal amount of concurrent heavy task processing",type:El.NUMBER,default:iAn.availableParallelism()},taskPoolMode:{description:"Execution strategy for heavy tasks",type:El.STRING,values:["async","workers"],default:"workers"},networkSettings:{description:"Network settings per hostname (glob patterns are supported)",type:El.MAP,valueDefinition:{description:"",type:El.SHAPE,properties:{httpsCaFilePath:{description:"Path to file containing one or multiple Certificate Authority signing certificates",type:El.ABSOLUTE_PATH,default:null},enableNetwork:{description:"If false, the package manager will refuse to use the network if required to",type:El.BOOLEAN,default:null},httpProxy:{description:"URL of the http proxy that must be used for outgoing http requests",type:El.STRING,default:null},httpsProxy:{description:"URL of the http proxy that must be used for outgoing https requests",type:El.STRING,default:null},httpsKeyFilePath:{description:"Path to file containing private key in PEM format",type:El.ABSOLUTE_PATH,default:null},httpsCertFilePath:{description:"Path to file containing certificate chain in PEM format",type:El.ABSOLUTE_PATH,default:null}}}},httpsCaFilePath:{description:"A path to a file containing one or multiple Certificate Authority signing certificates",type:El.ABSOLUTE_PATH,default:null},httpsKeyFilePath:{description:"Path to file containing private key in PEM format",type:El.ABSOLUTE_PATH,default:null},httpsCertFilePath:{description:"Path to file containing certificate chain in PEM format",type:El.ABSOLUTE_PATH,default:null},enableStrictSsl:{description:"If false, SSL certificate errors will be ignored",type:El.BOOLEAN,default:!0},logFilters:{description:"Overrides for log levels",type:El.SHAPE,isArray:!0,concatenateValues:!0,properties:{code:{description:"Code of the messages covered by this override",type:El.STRING,default:void 0},text:{description:"Code of the texts covered by this override",type:El.STRING,default:void 0},pattern:{description:"Code of the patterns covered by this override",type:El.STRING,default:void 0},level:{description:"Log level override, set to null to remove override",type:El.STRING,values:Object.values(Ry.LogLevel),isNullable:!0,default:void 0}}},enableTelemetry:{description:"If true, telemetry will be periodically sent, following the rules in https://yarnpkg.com/advanced/telemetry",type:El.BOOLEAN,default:!0},telemetryInterval:{description:"Minimal amount of time between two telemetry uploads, in days",type:El.NUMBER,default:7},telemetryUserId:{description:"If you desire to tell us which project you are, you can set this field. Completely optional and opt-in.",type:El.STRING,default:null},enableHardenedMode:{description:"If true, automatically enable --check-resolutions --refresh-lockfile on installs",type:El.BOOLEAN,default:Ube.isPR&&UHs,defaultText:""},enableScripts:{description:"If true, packages are allowed to have install scripts by default",type:El.BOOLEAN,default:!0},enableStrictSettings:{description:"If true, unknown settings will cause Yarn to abort",type:El.BOOLEAN,default:!0},enableImmutableCache:{description:"If true, the cache is reputed immutable and actions that would modify it will throw",type:El.BOOLEAN,default:!1},checksumBehavior:{description:"Enumeration defining what to do when a checksum doesn't match expectations",type:El.STRING,default:"throw"},injectEnvironmentFiles:{description:"List of all the environment files that Yarn should inject inside the process when it starts",type:El.ABSOLUTE_PATH,default:[".env.yarn?"],isArray:!0},packageExtensions:{description:"Map of package corrections to apply on the dependency tree",type:El.MAP,valueDefinition:{description:"The extension that will be applied to any package whose version matches the specified range",type:El.SHAPE,properties:{dependencies:{description:"The set of dependencies that must be made available to the current package in order for it to work properly",type:El.MAP,valueDefinition:{description:"A range",type:El.STRING}},peerDependencies:{description:"Inherited dependencies - the consumer of the package will be tasked to provide them",type:El.MAP,valueDefinition:{description:"A semver range",type:El.STRING}},peerDependenciesMeta:{description:"Extra information related to the dependencies listed in the peerDependencies field",type:El.MAP,valueDefinition:{description:"The peerDependency meta",type:El.SHAPE,properties:{optional:{description:"If true, the selected peer dependency will be marked as optional by the package manager and the consumer omitting it won't be reported as an error",type:El.BOOLEAN,default:!1}}}}}}}};function b4t(e,t,r,s,a){let o=Ene.getValue(r);if(s.isArray||s.type===El.ANY&&Array.isArray(o))return Array.isArray(o)?o.map((g,p)=>_4t(e,`${t}[${p}]`,g,s,a)):String(o).split(/,/).map(g=>_4t(e,t,g,s,a));if(Array.isArray(o))throw new Error(`Non-array configuration settings "${t}" cannot be an array`);return _4t(e,t,r,s,a)}function _4t(e,t,r,s,a){let o=Ene.getValue(r);switch(s.type){case El.ANY:return Ene.getValueByTree(o);case El.SHAPE:return jHs(e,t,r,s,a);case El.MAP:return zHs(e,t,r,s,a)}if(o===null&&!s.isNullable&&s.default!==null)throw new Error(`Non-nullable configuration settings "${t}" cannot be set to null`);if(s.values?.includes(o))return o;let p=(()=>{if(s.type===El.BOOLEAN&&typeof o!="string")return gk.parseBoolean(o);if(typeof o!="string")throw new Error(`Expected configuration setting "${t}" to be a string, got ${typeof o}`);let f=gk.replaceEnvVariables(o,{env:e.env});switch(s.type){case El.ABSOLUTE_PATH:{let m=a,y=Ene.getSource(r);return y&&y[0]!=="<"&&(m=xf.ppath.dirname(y)),xf.ppath.resolve(m,xf.npath.toPortablePath(f))}case El.LOCATOR_LOOSE:return yF.parseLocator(f,!1);case El.NUMBER:return parseInt(f);case El.LOCATOR:return yF.parseLocator(f);case El.BOOLEAN:return gk.parseBoolean(f);default:return f}})();if(s.values&&!s.values.includes(p))throw new Error(`Invalid value, expected one of ${s.values.join(", ")}`);return p}function jHs(e,t,r,s,a){let o=Ene.getValue(r);if(typeof o!="object"||Array.isArray(o))throw new hH.UsageError(`Object configuration settings "${t}" must be an object`);let g=E4t(e,s,{ignoreArrays:!0});if(o===null)return g;for(let[p,f]of Object.entries(o)){let m=`${t}.${p}`;if(!s.properties[p])throw new hH.UsageError(`Unrecognized configuration settings found: ${t}.${p} - run "yarn config -v" to see the list of settings supported in Yarn`);g.set(p,b4t(e,m,f,s.properties[p],a))}return g}function zHs(e,t,r,s,a){let o=Ene.getValue(r),g=new Map;if(typeof o!="object"||Array.isArray(o))throw new hH.UsageError(`Map configuration settings "${t}" must be an object`);if(o===null)return g;for(let[p,f]of Object.entries(o)){let m=s.normalizeKeys?s.normalizeKeys(p):p,y=`${t}['${m}']`,B=s.valueDefinition;g.set(m,b4t(e,y,f,B,a))}return g}function E4t(e,t,{ignoreArrays:r=!1}={}){switch(t.type){case El.SHAPE:{if(t.isArray&&!r)return[];let s=new Map;for(let[a,o]of Object.entries(t.properties))s.set(a,E4t(e,o));return s}case El.MAP:return t.isArray&&!r?[]:new Map;case El.ABSOLUTE_PATH:return t.default===null?null:e.projectCwd===null?Array.isArray(t.default)?t.default.map(s=>xf.ppath.normalize(s)):xf.ppath.isAbsolute(t.default)?xf.ppath.normalize(t.default):t.isNullable?null:void 0:Array.isArray(t.default)?t.default.map(s=>xf.ppath.resolve(e.projectCwd,s)):xf.ppath.resolve(e.projectCwd,t.default);default:return t.default}}function Vit(e,t,r){if(t.type===El.SECRET&&typeof e=="string"&&r.hideSecrets)return th.SECRET;if(t.type===El.ABSOLUTE_PATH&&typeof e=="string"&&r.getNativePaths)return xf.npath.fromPortablePath(e);if(t.isArray&&Array.isArray(e)){let s=[];for(let a of e)s.push(Vit(a,t,r));return s}if(t.type===El.MAP&&e instanceof Map){if(e.size===0)return;let s=new Map;for(let[a,o]of e.entries()){let g=Vit(o,t.valueDefinition,r);typeof g<"u"&&s.set(a,g)}return s}if(t.type===El.SHAPE&&e instanceof Map){if(e.size===0)return;let s=new Map;for(let[a,o]of e.entries()){let g=t.properties[a],p=Vit(o,g,r);typeof p<"u"&&s.set(a,p)}return s}return e}function qHs(){let e={};for(let[t,r]of Object.entries(process.env))t=t.toLowerCase(),t.startsWith(th.ENVIRONMENT_PREFIX)&&(t=(0,GHs.default)(t.slice(th.ENVIRONMENT_PREFIX.length)),e[t]=r);return e}function y4t(){let e=`${th.ENVIRONMENT_PREFIX}rc_filename`;for(let[t,r]of Object.entries(process.env))if(t.toLowerCase()===e&&typeof r=="string")return r;return th.DEFAULT_RC_FILENAME}async function nAn(e){try{return await xf.xfs.readFilePromise(e)}catch{return Buffer.of()}}async function $Hs(e,t){return Buffer.compare(...await Promise.all([nAn(e),nAn(t)]))===0}async function e5s(e,t){let[r,s]=await Promise.all([xf.xfs.statPromise(e),xf.xfs.statPromise(t)]);return r.dev===s.dev&&r.ino===s.ino}var t5s=process.platform==="win32"?$Hs:e5s;async function r5s({configuration:e,selfPath:t}){let r=e.get("yarnPath");return e.get("ignorePath")||r===null||r===t||await t5s(r,t)?null:r}var sVe=class e{static create(t,r,s){let a=new e(t);typeof r<"u"&&!(r instanceof Map)&&(a.projectCwd=r),a.importSettings(th.coreDefinitions);let o=typeof s<"u"?s:r instanceof Map?r:new Map;for(let[g,p]of o)a.activatePlugin(g,p);return a}static async find(t,r,{strict:s=!0,usePathCheck:a=null,useRc:o=!0}={}){let g=qHs();delete g.rcFilename;let p=new e(t),f=await e.findRcFiles(t),m=await e.findFolderRcFile(Lit.getHomeFolder());m&&(f.find(he=>he.path===m.path)||f.unshift(m));let y=Ene.resolveRcFiles(f.map(pe=>[pe.path,pe.data])),B=xf.PortablePath.dot,v=new Set(Object.keys(th.coreDefinitions)),G=({yarnPath:pe,ignorePath:he,injectEnvironmentFiles:be})=>({yarnPath:pe,ignorePath:he,injectEnvironmentFiles:be}),T=({yarnPath:pe,ignorePath:he,injectEnvironmentFiles:be,...Te})=>{let ke={};for(let[x,et]of Object.entries(Te))v.has(x)&&(ke[x]=et);return ke},O=({yarnPath:pe,ignorePath:he,...be})=>{let Te={};for(let[ke,x]of Object.entries(be))v.has(ke)||(Te[ke]=x);return Te};if(p.importSettings(G(th.coreDefinitions)),p.useWithSource("",G(g),t,{strict:!1}),y){let[pe,he]=y;p.useWithSource(pe,G(he),B,{strict:!1})}if(a){if(await r5s({configuration:p,selfPath:a})!==null)return p;p.useWithSource("",{ignorePath:!0},t,{strict:!1,overwrite:!0})}let X=await e.findProjectCwd(t);p.startingCwd=t,p.projectCwd=X;let U=Object.assign(Object.create(null),process.env);p.env=U;let le=await Promise.all(p.get("injectEnvironmentFiles").map(async pe=>{let he=pe.endsWith("?")?await xf.xfs.readFilePromise(pe.slice(0,-1),"utf8").catch(()=>""):await xf.xfs.readFilePromise(pe,"utf8");return(0,FHs.parse)(he)}));for(let pe of le)for(let[he,be]of Object.entries(pe))p.env[he]=gk.replaceEnvVariables(be,{env:U});if(p.importSettings(T(th.coreDefinitions)),p.useWithSource("",T(g),t,{strict:s}),y){let[pe,he]=y;p.useWithSource(pe,T(he),B,{strict:s})}let ae=pe=>"default"in pe?pe.default:pe,ge=new Map([["@@core",VHs.CorePlugin]]);if(r!==null)for(let pe of r.plugins.keys())ge.set(pe,ae(r.modules.get(pe)));for(let[pe,he]of ge)p.activatePlugin(pe,he);let fe=new Map([]);if(r!==null){let pe=new Map;for(let[Te,ke]of r.modules)pe.set(Te,()=>ke);let he=new Set,be=async(Te,ke)=>{let{factory:x,name:et}=gk.dynamicRequire(Te);if(!x||he.has(et))return;let Ue=new Map(pe),Je=ft=>{if((0,ZHs.isBuiltin)(ft))return gk.dynamicRequire(ft);if(Ue.has(ft))return Ue.get(ft)();throw new hH.UsageError(`This plugin cannot access the package referenced via ${ft} which is neither a builtin, nor an exposed entry`)},Xe=await gk.prettifyAsyncErrors(async()=>ae(await x(Je)),ft=>`${ft} (when initializing ${et}, defined in ${ke})`);pe.set(et,()=>Xe),he.add(et),fe.set(et,Xe)};if(g.plugins)for(let Te of g.plugins.split(";")){let ke=xf.ppath.resolve(t,xf.npath.toPortablePath(Te));await be(ke,"")}for(let{path:Te,cwd:ke,data:x}of f)if(o&&Array.isArray(x.plugins))for(let et of x.plugins){let Ue=typeof et!="string"?et.path:et,Je=et?.spec??"",Xe=et?.checksum??"";if(th.LEGACY_PLUGINS.has(Je))continue;let ft=xf.ppath.resolve(ke,xf.npath.toPortablePath(Ue));if(!await xf.xfs.existsPromise(ft)){if(!Je){let Ur=Ry.pretty(p,xf.ppath.basename(ft,".cjs"),Ry.Type.NAME),Ot=Ry.pretty(p,".gitignore",Ry.Type.NAME),dr=Ry.pretty(p,p.values.get("rcFilename"),Ry.Type.NAME),Ar=Ry.pretty(p,"https://yarnpkg.com/getting-started/qa#which-files-should-be-gitignored",Ry.Type.URL);throw new hH.UsageError(`Missing source for the ${Ur} plugin - please try to remove the plugin from ${dr} then reinstall it manually. This error usually occurs because ${Ot} is incorrect, check ${Ar} to make sure your plugin folder isn't gitignored.`)}if(!Je.match(/^https?:/)){let Ur=Ry.pretty(p,xf.ppath.basename(ft,".cjs"),Ry.Type.NAME),Ot=Ry.pretty(p,p.values.get("rcFilename"),Ry.Type.NAME);throw new hH.UsageError(`Failed to recognize the source for the ${Ur} plugin - please try to delete the plugin from ${Ot} then reinstall it manually.`)}let Gt=await JHs.get(Je,{configuration:p}),er=XHs.makeHash(Gt);if(Xe&&Xe!==er){let Ur=Ry.pretty(p,xf.ppath.basename(ft,".cjs"),Ry.Type.NAME),Ot=Ry.pretty(p,p.values.get("rcFilename"),Ry.Type.NAME),dr=Ry.pretty(p,`yarn plugin import ${Je}`,Ry.Type.CODE);throw new hH.UsageError(`Failed to fetch the ${Ur} plugin from its remote location: its checksum seems to have changed. If this is expected, please remove the plugin from ${Ot} then run ${dr} to reimport it.`)}await xf.xfs.mkdirPromise(xf.ppath.dirname(ft),{recursive:!0}),await xf.xfs.writeFilePromise(ft,Gt)}await be(ft,Te)}}for(let[pe,he]of fe)p.activatePlugin(pe,he);if(p.useWithSource("",O(g),t,{strict:s}),y){let[pe,he]=y;p.useWithSource(pe,O(he),B,{strict:s})}return p.get("enableGlobalCache")&&(p.values.set("cacheFolder",`${p.get("globalFolder")}/cache`),p.sources.set("cacheFolder","")),p}static async findRcFiles(t){let r=y4t(),s=[],a=t,o=null;for(;a!==o;){o=a;let g=xf.ppath.join(o,r);if(xf.xfs.existsSync(g)){let p=await xf.xfs.readFilePromise(g,"utf8"),f;try{f=(0,Fit.parseSyml)(p)}catch{let y="";throw p.match(/^\s+(?!-)[^:]+\s+\S+/m)&&(y=" (in particular, make sure you list the colons after each key name)"),new hH.UsageError(`Parse error when loading ${g}; please check it's proper Yaml${y}`)}s.unshift({path:g,cwd:o,data:f})}a=xf.ppath.dirname(o)}return s}static async findFolderRcFile(t){let r=xf.ppath.join(t,xf.Filename.rc),s;try{s=await xf.xfs.readFilePromise(r,"utf8")}catch(o){if(o.code==="ENOENT")return null;throw o}let a=(0,Fit.parseSyml)(s);return{path:r,cwd:t,data:a}}static async findProjectCwd(t){let r=null,s=t,a=null;for(;s!==a;){if(a=s,xf.xfs.existsSync(xf.ppath.join(a,xf.Filename.lockfile)))return a;xf.xfs.existsSync(xf.ppath.join(a,xf.Filename.manifest))&&(r=a),s=xf.ppath.dirname(a)}return r}static async updateConfiguration(t,r,s={}){let a=y4t(),o=xf.ppath.join(t,a),g=xf.xfs.existsSync(o)?(0,Fit.parseSyml)(await xf.xfs.readFilePromise(o,"utf8")):{},p=!1,f;if(typeof r=="function"){try{f=r(g)}catch{f=r({})}if(f===g)return!1}else{f=g;for(let m of Object.keys(r)){let y=g[m],B=r[m],v;if(typeof B=="function")try{v=B(y)}catch{v=B(void 0)}else v=B;y!==v&&(v===e.deleteProperty?delete f[m]:f[m]=v,p=!0)}if(!p)return!1}return await xf.xfs.changeFilePromise(o,(0,Fit.stringifySyml)(f),{automaticNewlines:!0}),!0}static async addPlugin(t,r){r.length!==0&&await e.updateConfiguration(t,s=>{let a=s.plugins??[];if(a.length===0)return{...s,plugins:r};let o=[],g=[...r];for(let p of a){let f=typeof p!="string"?p.path:p,m=g.find(y=>y.path===f);m?(o.push(m),g=g.filter(y=>y!==m)):o.push(p)}return o.push(...g),{...s,plugins:o}})}static async updateHomeConfiguration(t){let r=Lit.getHomeFolder();return await e.updateConfiguration(r,t)}constructor(t){this.isCI=Ube.isCI,this.projectCwd=null,this.plugins=new Map,this.settings=new Map,this.values=new Map,this.sources=new Map,this.invalid=new Map,this.env={},this.limits=new Map,this.packageExtensions=null,this.startingCwd=t}activatePlugin(t,r){this.plugins.set(t,r),typeof r.configuration<"u"&&this.importSettings(r.configuration)}importSettings(t){for(let[r,s]of Object.entries(t))if(s!=null){if(this.settings.has(r))throw new Error(`Cannot redefine settings "${r}"`);this.settings.set(r,s),this.values.set(r,E4t(this,s))}}useWithSource(t,r,s,a){try{this.use(t,r,s,a)}catch(o){throw o.message+=` (in ${Ry.pretty(this,t,Ry.Type.PATH)})`,o}}use(t,r,s,{strict:a=!0,overwrite:o=!1}={}){a=a&&this.get("enableStrictSettings");for(let g of["enableStrictSettings",...Object.keys(r)]){let p=r[g],f=Ene.getSource(p);if(f&&(t=f),typeof p>"u"||g==="plugins"||t===""&&KHs.has(g))continue;if(g==="rcFilename")throw new hH.UsageError(`The rcFilename settings can only be set via ${`${th.ENVIRONMENT_PREFIX}RC_FILENAME`.toUpperCase()}, not via a rc file`);let m=this.settings.get(g);if(!m){let B=Lit.getHomeFolder(),v=t[0]!=="<"?xf.ppath.dirname(t):null;if(a&&!(v!==null?B===v:!1))throw new hH.UsageError(`Unrecognized or legacy configuration settings found: ${g} - run "yarn config -v" to see the list of settings supported in Yarn`);this.invalid.set(g,t);continue}if(this.sources.has(g)&&!(o||m.type===El.MAP||m.isArray&&m.concatenateValues))continue;let y;try{y=b4t(this,g,p,m,s)}catch(B){throw B.message+=` in ${Ry.pretty(this,t,Ry.Type.PATH)}`,B}if(g==="enableStrictSettings"&&t!==""){a=y;continue}if(m.type===El.MAP){let B=this.values.get(g);this.values.set(g,new Map(o?[...B,...y]:[...y,...B])),this.sources.set(g,`${this.sources.get(g)}, ${t}`)}else if(m.isArray&&m.concatenateValues){let B=this.values.get(g);this.values.set(g,o?[...B,...y]:[...y,...B]),this.sources.set(g,`${this.sources.get(g)}, ${t}`)}else this.values.set(g,y),this.sources.set(g,t)}}get(t){if(!this.values.has(t))throw new Error(`Invalid configuration key "${t}"`);return this.values.get(t)}getSpecial(t,{hideSecrets:r=!1,getNativePaths:s=!1}){let a=this.get(t),o=this.settings.get(t);if(typeof o>"u")throw new hH.UsageError(`Couldn't find a configuration settings named "${t}"`);return Vit(a,o,{hideSecrets:r,getNativePaths:s})}getSubprocessStreams(t,{header:r,prefix:s,report:a}){let o,g,p=xf.xfs.createWriteStream(t);if(this.get("enableInlineBuilds")){let f=a.createStreamReporter(`${s} ${Ry.pretty(this,"STDOUT","green")}`),m=a.createStreamReporter(`${s} ${Ry.pretty(this,"STDERR","red")}`);o=new tAn.PassThrough,o.pipe(f),o.pipe(p),g=new tAn.PassThrough,g.pipe(m),g.pipe(p)}else o=p,g=p,typeof r<"u"&&o.write(`${r} -`);return{stdout:o,stderr:g}}makeResolver(){let t=[];for(let r of this.plugins.values())for(let s of r.resolvers||[])t.push(new s);return new OHs.MultiResolver([new QHs.VirtualResolver,new HHs.WorkspaceResolver,...t])}makeFetcher(){let t=[];for(let r of this.plugins.values())for(let s of r.fetchers||[])t.push(new s);return new PHs.MultiFetcher([new MHs.VirtualFetcher,new YHs.WorkspaceFetcher,...t])}getLinkers(){let t=[];for(let r of this.plugins.values())for(let s of r.linkers||[])t.push(new s);return t}getSupportedArchitectures(){let t=iAn.getArchitecture(),r=this.get("supportedArchitectures"),s=r.get("os");s!==null&&(s=s.map(g=>g==="current"?t.os:g));let a=r.get("cpu");a!==null&&(a=a.map(g=>g==="current"?t.cpu:g));let o=r.get("libc");return o!==null&&(o=gk.mapAndFilter(o,g=>g==="current"?t.libc??gk.mapAndFilter.skip:g)),{os:s,cpu:a,libc:o}}isInteractive({interactive:t,stdout:r}){return r.isTTY?t??this.get("preferInteractive"):!1}async getPackageExtensions(){if(this.packageExtensions!==null)return this.packageExtensions;this.packageExtensions=new Map;let t=this.packageExtensions,r=(s,a,{userProvided:o=!1}={})=>{if(!Zit.validRange(s.range))throw new Error("Only semver ranges are allowed as keys for the packageExtensions setting");let g=new WHs.Manifest;g.load(a,{yamlCompatibilityMode:!0});let p=gk.getArrayWithDefault(t,s.identHash),f=[];p.push([s.range,f]);let m={status:bO.PackageExtensionStatus.Inactive,userProvided:o,parentDescriptor:s};for(let y of g.dependencies.values())f.push({...m,type:bO.PackageExtensionType.Dependency,descriptor:y});for(let y of g.peerDependencies.values())f.push({...m,type:bO.PackageExtensionType.PeerDependency,descriptor:y});for(let[y,B]of g.peerDependenciesMeta)for(let[v,G]of Object.entries(B))f.push({...m,type:bO.PackageExtensionType.PeerDependencyMeta,selector:y,key:v,value:G})};await this.triggerHook(s=>s.registerPackageExtensions,this,r);for(let[s,a]of this.get("packageExtensions"))r(yF.parseDescriptor(s,!0),gk.convertMapsToIndexableObjects(a),{userProvided:!0});return t}normalizeLocator(t){return Zit.validRange(t.reference)?yF.makeLocator(t,`${this.get("defaultProtocol")}${t.reference}`):th.TAG_REGEXP.test(t.reference)?yF.makeLocator(t,`${this.get("defaultProtocol")}${t.reference}`):t}normalizeDependency(t){return Zit.validRange(t.range)?yF.makeDescriptor(t,`${this.get("defaultProtocol")}${t.range}`):th.TAG_REGEXP.test(t.range)?yF.makeDescriptor(t,`${this.get("defaultProtocol")}${t.range}`):t}normalizeDependencyMap(t){return new Map([...t].map(([r,s])=>[r,this.normalizeDependency(s)]))}normalizePackage(t,{packageExtensions:r}){let s=yF.copyPackage(t),a=r.get(t.identHash);if(typeof a<"u"){let g=t.version;if(g!==null){for(let[p,f]of a)if(Zit.satisfiesWithPrereleases(g,p))for(let m of f)switch(m.status===bO.PackageExtensionStatus.Inactive&&(m.status=bO.PackageExtensionStatus.Redundant),m.type){case bO.PackageExtensionType.Dependency:typeof s.dependencies.get(m.descriptor.identHash)>"u"&&(m.status=bO.PackageExtensionStatus.Active,s.dependencies.set(m.descriptor.identHash,this.normalizeDependency(m.descriptor)));break;case bO.PackageExtensionType.PeerDependency:typeof s.peerDependencies.get(m.descriptor.identHash)>"u"&&(m.status=bO.PackageExtensionStatus.Active,s.peerDependencies.set(m.descriptor.identHash,m.descriptor));break;case bO.PackageExtensionType.PeerDependencyMeta:{let y=s.peerDependenciesMeta.get(m.selector);(typeof y>"u"||!Object.hasOwn(y,m.key)||y[m.key]!==m.value)&&(m.status=bO.PackageExtensionStatus.Active,gk.getFactoryWithDefault(s.peerDependenciesMeta,m.selector,()=>({}))[m.key]=m.value)}break;default:gk.assertNever(m)}}}let o=g=>g.scope?`${g.scope}__${g.name}`:`${g.name}`;for(let g of s.peerDependenciesMeta.keys()){let p=yF.parseIdent(g);s.peerDependencies.has(p.identHash)||s.peerDependencies.set(p.identHash,yF.makeDescriptor(p,"*"))}for(let g of s.peerDependencies.values()){if(g.scope==="types")continue;let p=o(g),f=yF.makeIdent("types",p),m=yF.stringifyIdent(f);s.peerDependencies.has(f.identHash)||s.peerDependenciesMeta.has(m)||(s.peerDependencies.set(f.identHash,yF.makeDescriptor(f,"*")),s.peerDependenciesMeta.set(m,{optional:!0}))}return s.dependencies=new Map(gk.sortMap(s.dependencies,([,g])=>yF.stringifyDescriptor(g))),s.peerDependencies=new Map(gk.sortMap(s.peerDependencies,([,g])=>yF.stringifyDescriptor(g))),s}getLimit(t){return gk.getFactoryWithDefault(this.limits,t,()=>(0,LHs.default)(this.get(t)))}async triggerHook(t,...r){for(let s of this.plugins.values()){let a=s.hooks;if(!a)continue;let o=t(a);o&&await o(...r)}}async triggerMultipleHooks(t,r){for(let s of r)await this.triggerHook(t,...s)}async reduceHook(t,r,...s){let a=r;for(let o of this.plugins.values()){let g=o.hooks;if(!g)continue;let p=t(g);p&&(a=await p(a,...s))}return a}async firstHook(t,...r){for(let s of this.plugins.values()){let a=s.hooks;if(!a)continue;let o=t(a);if(!o)continue;let g=await o(...r);if(typeof g<"u")return g}return null}};th.Configuration=sVe;sVe.deleteProperty=Symbol();sVe.telemetry=null});var Git=z(BJ=>{"use strict";Object.defineProperty(BJ,"__esModule",{value:!0});BJ.ExecError=BJ.PipeError=BJ.EndStrategy=void 0;BJ.pipevp=n5s;BJ.execvp=i5s;var sAn=(Ma(),Ai(Oa)),Wit=Ro(),oAn=sAn.__importDefault(irt()),aAn=oVe(),Pit=TL(),cAn=CO(),EO=sAn.__importStar(pO()),IAe;(function(e){e[e.Never=0]="Never",e[e.ErrorCode=1]="ErrorCode",e[e.Always=2]="Always"})(IAe||(BJ.EndStrategy=IAe={}));var aVe=class extends cAn.ReportError{constructor({fileName:t,code:r,signal:s}){let a=aAn.Configuration.create(Wit.ppath.cwd()),o=EO.pretty(a,t,EO.Type.PATH);super(Pit.MessageName.EXCEPTION,`Child ${o} reported an error`,g=>{o5s(r,s,{configuration:a,report:g})}),this.code=S4t(r,s)}};BJ.PipeError=aVe;var Oit=class extends aVe{constructor({fileName:t,code:r,signal:s,stdout:a,stderr:o}){super({fileName:t,code:r,signal:s}),this.stdout=a,this.stderr=o}};BJ.ExecError=Oit;function pAe(e){return e!==null&&typeof e.fd=="number"}var fAe=new Set;function B4t(){}function v4t(){for(let e of fAe)e.kill()}async function n5s(e,t,{cwd:r,env:s=process.env,strict:a=!1,stdin:o=null,stdout:g,stderr:p,end:f=IAe.Always}){let m=["pipe","pipe","pipe"];o===null?m[0]="ignore":pAe(o)&&(m[0]=o),pAe(g)&&(m[1]=g),pAe(p)&&(m[2]=p);let y=(0,oAn.default)(e,t,{cwd:Wit.npath.fromPortablePath(r),env:{...s,PWD:Wit.npath.fromPortablePath(r)},stdio:m});fAe.add(y),fAe.size===1&&(process.on("SIGINT",B4t),process.on("SIGTERM",v4t)),!pAe(o)&&o!==null&&o.pipe(y.stdin),pAe(g)||y.stdout.pipe(g,{end:!1}),pAe(p)||y.stderr.pipe(p,{end:!1});let B=()=>{for(let v of new Set([g,p]))pAe(v)||v.end()};return new Promise((v,G)=>{y.on("error",T=>{fAe.delete(y),fAe.size===0&&(process.off("SIGINT",B4t),process.off("SIGTERM",v4t)),(f===IAe.Always||f===IAe.ErrorCode)&&B(),G(T)}),y.on("close",(T,O)=>{fAe.delete(y),fAe.size===0&&(process.off("SIGINT",B4t),process.off("SIGTERM",v4t)),(f===IAe.Always||f===IAe.ErrorCode&&T!==0)&&B(),T===0||!a?v({code:S4t(T,O)}):G(new aVe({fileName:e,code:T,signal:O}))})})}async function i5s(e,t,{cwd:r,env:s=process.env,encoding:a="utf8",strict:o=!1}){let g=["ignore","pipe","pipe"],p=[],f=[],m=Wit.npath.fromPortablePath(r);typeof s.PWD<"u"&&(s={...s,PWD:m});let y=(0,oAn.default)(e,t,{cwd:m,env:s,stdio:g});return y.stdout.on("data",B=>{p.push(B)}),y.stderr.on("data",B=>{f.push(B)}),await new Promise((B,v)=>{y.on("error",G=>{let T=aAn.Configuration.create(r),O=EO.pretty(T,e,EO.Type.PATH);v(new cAn.ReportError(Pit.MessageName.EXCEPTION,`Process ${O} failed to spawn`,X=>{X.reportError(Pit.MessageName.EXCEPTION,` ${EO.prettyField(T,{label:"Thrown Error",value:EO.tuple(EO.Type.NO_HINT,G.message)})}`)}))}),y.on("close",(G,T)=>{let O=a==="buffer"?Buffer.concat(p):Buffer.concat(p).toString(a),X=a==="buffer"?Buffer.concat(f):Buffer.concat(f).toString(a);G===0||!o?B({code:S4t(G,T),stdout:O,stderr:X}):v(new Oit({fileName:e,code:G,signal:T,stdout:O,stderr:X}))})})}var s5s=new Map([["SIGINT",2],["SIGQUIT",3],["SIGKILL",9],["SIGTERM",15]]);function S4t(e,t){let r=s5s.get(t);return typeof r<"u"?128+r:e??1}function o5s(e,t,{configuration:r,report:s}){s.reportError(Pit.MessageName.EXCEPTION,` ${EO.prettyField(r,e!==null?{label:"Exit Code",value:EO.tuple(EO.Type.NUMBER,e)}:{label:"Exit Signal",value:EO.tuple(EO.Type.CODE,t)})}`)}});var w4t=z(vJ=>{"use strict";Object.defineProperty(vJ,"__esModule",{value:!0});vJ.cachedInstance=void 0;vJ.setFactory=a5s;vJ.getInstance=c5s;vJ.tryInstance=l5s;var lAn=()=>{throw new Error("Assertion failed: No libzip instance is available, and no factory was configured")};function a5s(e){lAn=e}function c5s(){return typeof vJ.cachedInstance>"u"&&(vJ.cachedInstance=lAn()),vJ.cachedInstance}function l5s(){return vJ.cachedInstance}});var uAn=z((Mit,N4t)=>{var u5s=Object.assign({},Dt("fs")),T4t=function(){var e=typeof document<"u"&&document.currentScript?document.currentScript.src:void 0;return typeof __filename<"u"&&(e=e||__filename),function(t){t=t||{};var r=typeof t<"u"?t:{},s,a;r.ready=new Promise(function(fs,Ao){s=fs,a=Ao});var o={},g;for(g in r)r.hasOwnProperty(g)&&(o[g]=r[g]);var p=[],f="./this.program",m=function(fs,Ao){throw Ao},y=!1,B=!0,v="";function G(fs){return r.locateFile?r.locateFile(fs,v):v+fs}var T,O,X,U;B&&(y?v=Dt("path").dirname(v)+"/":v=__dirname+"/",T=function(Ao,Do){var zl=cf(Ao);return zl?Do?zl:zl.toString():(X||(X=u5s),U||(U=Dt("path")),Ao=U.normalize(Ao),X.readFileSync(Ao,Do?null:"utf8"))},O=function(Ao){var Do=T(Ao,!0);return Do.buffer||(Do=new Uint8Array(Do)),et(Do.buffer),Do},process.argv.length>1&&(f=process.argv[1].replace(/\\/g,"/")),p=process.argv.slice(2),m=function(fs){process.exit(fs)},r.inspect=function(){return"[Emscripten Module object]"});var le=r.print||console.log.bind(console),ae=r.printErr||console.warn.bind(console);for(g in o)o.hasOwnProperty(g)&&(r[g]=o[g]);o=null,r.arguments&&(p=r.arguments),r.thisProgram&&(f=r.thisProgram),r.quit&&(m=r.quit);var ge=0,fe=function(fs){ge=fs},pe;r.wasmBinary&&(pe=r.wasmBinary);var he=r.noExitRuntime||!0;typeof WebAssembly!="object"&&Ji("no native wasm support detected");function be(fs,Ao,Do){switch(Ao=Ao||"i8",Ao.charAt(Ao.length-1)==="*"&&(Ao="i32"),Ao){case"i1":return $r[fs>>0];case"i8":return $r[fs>>0];case"i16":return Zu((fs>>1)*2);case"i32":return Cl((fs>>2)*4);case"i64":return Cl((fs>>2)*4);case"float":return Fu((fs>>2)*4);case"double":return Cg((fs>>3)*8);default:Ji("invalid type for getValue: "+Ao)}return null}var Te,ke=!1,x;function et(fs,Ao){fs||Ji("Assertion failed: "+Ao)}function Ue(fs){var Ao=r["_"+fs];return et(Ao,"Cannot call unknown function "+fs+", make sure it is exported"),Ao}function Je(fs,Ao,Do,zl,Nr){var Nn={string:function(WI){var pl=0;if(WI!=null&&WI!==0){var Qm=(WI.length<<2)+1;pl=Xl(Qm),Ur(WI,pl,Qm)}return pl},array:function(WI){var pl=Xl(WI.length);return Ar(WI,pl),pl}};function Di(WI){return Ao==="string"?Gt(WI):Ao==="boolean"?!!WI:WI}var na=Ue(fs),Ks=[],Li=0;if(zl)for(var Zl=0;Zl=Do)&&Or[zl];)++zl;return ft.decode(Or.subarray(fs,zl))}function er(fs,Ao,Do,zl){if(!(zl>0))return 0;for(var Nr=Do,Nn=Do+zl-1,Di=0;Di=55296&&na<=57343){var Ks=fs.charCodeAt(++Di);na=65536+((na&1023)<<10)|Ks&1023}if(na<=127){if(Do>=Nn)break;Ao[Do++]=na}else if(na<=2047){if(Do+1>=Nn)break;Ao[Do++]=192|na>>6,Ao[Do++]=128|na&63}else if(na<=65535){if(Do+2>=Nn)break;Ao[Do++]=224|na>>12,Ao[Do++]=128|na>>6&63,Ao[Do++]=128|na&63}else{if(Do+3>=Nn)break;Ao[Do++]=240|na>>18,Ao[Do++]=128|na>>12&63,Ao[Do++]=128|na>>6&63,Ao[Do++]=128|na&63}}return Ao[Do]=0,Do-Nr}function Ur(fs,Ao,Do){return er(fs,Or,Ao,Do)}function Ot(fs){for(var Ao=0,Do=0;Do=55296&&zl<=57343&&(zl=65536+((zl&1023)<<10)|fs.charCodeAt(++Do)&1023),zl<=127?++Ao:zl<=2047?Ao+=2:zl<=65535?Ao+=3:Ao+=4}return Ao}function dr(fs){var Ao=Ot(fs)+1,Do=Ud(Ao);return Do&&er(fs,$r,Do,Ao),Do}function Ar(fs,Ao){$r.set(fs,Ao)}function or(fs,Ao){return fs%Ao>0&&(fs+=Ao-fs%Ao),fs}var Fr,$r,Or,In,Br,tr,gn,Gn,we,Zi;function Za(fs){Fr=fs,r.HEAP_DATA_VIEW=Zi=new DataView(fs),r.HEAP8=$r=new Int8Array(fs),r.HEAP16=In=new Int16Array(fs),r.HEAP32=tr=new Int32Array(fs),r.HEAPU8=Or=new Uint8Array(fs),r.HEAPU16=Br=new Uint16Array(fs),r.HEAPU32=gn=new Uint32Array(fs),r.HEAPF32=Gn=new Float32Array(fs),r.HEAPF64=we=new Float64Array(fs)}var ka=r.INITIAL_MEMORY||16777216,Qs,lr=[],ga=[],vi=[],Qu=!1;function Yu(){if(r.preRun)for(typeof r.preRun=="function"&&(r.preRun=[r.preRun]);r.preRun.length;)TA(r.preRun.shift());ts(lr)}function YA(){Qu=!0,ts(ga)}function ud(){if(r.postRun)for(typeof r.postRun=="function"&&(r.postRun=[r.postRun]);r.postRun.length;)jr(r.postRun.shift());ts(vi)}function TA(fs){lr.unshift(fs)}function Ld(fs){ga.unshift(fs)}function jr(fs){vi.unshift(fs)}var Gr=0,Ir=null,nn=null;function Cn(fs){Gr++,r.monitorRunDependencies&&r.monitorRunDependencies(Gr)}function Vn(fs){if(Gr--,r.monitorRunDependencies&&r.monitorRunDependencies(Gr),Gr==0&&(Ir!==null&&(clearInterval(Ir),Ir=null),nn)){var Ao=nn;nn=null,Ao()}}r.preloadedImages={},r.preloadedAudios={};function Ji(fs){r.onAbort&&r.onAbort(fs),fs+="",ae(fs),ke=!0,x=1,fs="abort("+fs+"). Build with -s ASSERTIONS=1 for more info.";var Ao=new WebAssembly.RuntimeError(fs);throw a(Ao),Ao}var Hr="data:application/octet-stream;base64,";function Ws(fs){return fs.startsWith(Hr)}var Ko="data:application/octet-stream;base64,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QCAAKAJIIgEgASADaiADEAcaAkAgAyAAKAJsIgFNBEAgACABIANrNgJsDAELIABCADcCbAsgACAAKAJoIANrIgE2AmggACAAKAJYIANrNgJYIAEgACgChC5JBEAgACABNgKELgsgAEH8gAEoAgARAwAgAiADaiECCwJAIAAoAgAiASgCBCIERQ0AIAAoAjwhBSAAIAIgBCACIARJGyICBH8gACgCSCAAKAJoaiAFaiEFIAEgBCACazYCBAJAAkACQAJAIAEoAhwiBCgCFEEBaw4CAQACCyAEQaABaiAFIAEoAgAgAkHcgAEoAgARCAAMAgsgASABKAIwIAUgASgCACACQcSAASgCABEEADYCMAwBCyAFIAEoAgAgAhAHGgsgASABKAIAIAJqNgIAIAEgASgCCCACajYCCCAAKAI8BSAFCyACaiICNgI8AkAgACgChC4iASACakEDSQ0AIAAoAmggAWshAQJAIAAoAnRBgQhPBEAgACAAIAAoAkggAWoiAi0AACACLQABIAAoAnwRAAA2AlQMAQsgAUUNACAAIAFBAWsgACgChAERAgAaCyAAKAKELiAAKAI8IgJBAUZrIgRFDQAgACABIAQgACgCgAERBQAgACAAKAKELiAEazYChC4gACgCPCECCyACQYUCSw0AIAAoAgAoAgRFDQAgACgCMCEBDAELCwJAIAAoAkQiAiAAKAJAIgNNDQAgAAJ/IAAoAjwgACgCaGoiASADSwRAIAAoAkggAWpBACACIAFrIgNBggIgA0GCAkkbIgMQGSABIANqDAELIAFBggJqIgEgA00NASAAKAJIIANqQQAgAiADayICIAEgA2siAyACIANJGyIDEBkgACgCQCADags2AkALC50CAQF/AkAgAAJ/IAAoAqAuIgFBwABGBEAgACgCBCAAKAIQaiAAKQOYLjcAACAAQgA3A5guIAAgACgCEEEIajYCEEEADAELIAFBIE4EQCAAKAIEIAAoAhBqIAApA5guPgAAIAAgAEGcLmo1AgA3A5guIAAgACgCEEEEajYCECAAIAAoAqAuQSBrIgE2AqAuCyABQRBOBEAgACgCBCAAKAIQaiAAKQOYLj0AACAAIAAoAhBBAmo2AhAgACAAKQOYLkIQiDcDmC4gACAAKAKgLkEQayIBNgKgLgsgAUEISA0BIAAgACgCECIBQQFqNgIQ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KAJUIgEEfyABQQAgARAiEBkgACgCVAVBAAsQBiAAQQA2AlQLC9wMAgl/AX4jAEFAaiIGJAACQAJAAkACQAJAIAEoAjBBABAjIgVBAkZBACABKAI4QQAQIyIEQQFGGw0AIAVBAUZBACAEQQJGGw0AIAVBAkciAw0BIARBAkcNAQsgASABLwEMQYAQcjsBDEEAIQMMAQsgASABLwEMQf/vA3E7AQxBACEFIANFBEBB9eABIAEoAjAgAEEIahBpIgVFDQILIAJBgAJxBEAgBSEDDAELIARBAkcEQCAFIQMMAQtB9cYBIAEoAjggAEEIahBpIgNFBEAgBRAcDAILIAMgBTYCAAsgASABLwEMQf7/A3EgAS8BUiIFQQBHcjsBDAJAAkACQAJAAn8CQAJAIAEpAyhC/v///w9WDQAgASkDIEL+////D1YNACACQYAEcUUNASABKQNIQv////8PVA0BCyAFQYECa0H//wNxQQNJIQdBAQwBCyAFQYECa0H//wNxIQQgAkGACnFBgApHDQEgBEEDSSEHQQALIQkgBkIcEBciBEUEQCAAQQhqIgAEQCAAQQA2AgQgAEEONgIACyADEBwMBQsgAkGACHEhBQJAAkAgAkGAAnEEQAJAIAUNACABKQMgQv////8PVg0AIAEpAyhCgICAgBBUDQMLIAQgASkDKBAYIAEpAyAhDAwBCwJAAkACQCAFDQAgASkDIEL/////D1YNACABKQMoIgxC/////w9WDQEgASkDSEKAgICAEFQNBAsgASkDKCIMQv////8PVA0BCyAEIAwQGAsgASkDICIMQv////8PWgRAIAQgDBAYCyABKQNIIgxC/////w9UDQELIAQgDBAYCyAELQAARQRAIABBCGoiAARAIABBADYCBCAAQRQ2AgALIAQQCCADEBwMBQtBASEKQQEgBC0AAAR+IAQpAxAFQgALp0H//wNxIAYQRyEFIAQQCCAFIAM2AgAgBw0BDAILIAMhBSAEQQJLDQELIAZCBxAXIgRFBEAgAEEIaiIABEAgAEEANgIEIABBDjYCAAsgBRAcDAMLIARBAhANIARBhxJBAhAsIAQgAS0AUhBwIAQgAS8BEBANIAQtAABFBEAgAEEIaiIABEAgAEEANgIEIABBFDYCAAsgBBAIDAILQYGyAkEHIAYQRyEDIAQQCCADIAU2AgBBASEL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NgIEIABB7A42AhggGiEdDAMLIARB/wFxIgJBwABxRQRAIAggDSADLwECQQJ0aiAdp0F/IAJ0QX9zcUECdGoiAy0AASICayEIIB0gAq2IIR0gAy0AACIERQ0HDAELCyAEQSBxBEAgB0G//gA2AgQgASECDAgLIAdB0f4ANgIEIABB0A42AhggASECDAcLIB1BfyAGdEF/c62DIBt8IhunIQUgCCAEQQ9xIgNrIQggGiAErUIPg4ghHSABIBdrIgYgAjMBAiAaQX8gA3RBf3Otg3ynIgRPDQIgBCAGayIGIBlNDQEgBygCjEdFDQEgB0HR/gA2AgQgAEG5DDYCGAsgASECIAshBQwFCwJAIA5FBEAgDCARIAZraiEDDAELIAYgDk0EQCAMIA4gBmtqIQMMAQsgDCARIAYgDmsiBmtqIQMgBSAGTQ0AIAUgBmshBQJAAkAgASADTSABIA8gAWusIhogBq0iGyAaIBtUGyIapyIGaiICIANLcQ0AIAMgBmogAUsgASADT3ENACABIAMgBhAHGiACIQEMAQsgASADIAMgAWsiASABQR91IgFqIAFzIgIQByACaiEBIBogAq0iHn0iHFANACACIANqIQIDQAJAIBwgHiAcIB5UGyIbQiBUBEAgGyEaDAELIBsiGkIgfSIgQgWIQgF8QgODIh9QRQRAA0AgASACKQAANwAAIAEgAikAGDcAGCABIAIpABA3ABAgASACKQAINwAIIBpCIH0hGiACQSBqIQIgAUEgaiEBIB9CAX0iH0IAUg0ACwsgIELgAFQNAANAIAEgAikAADcAACABIAIpABg3ABggASACKQAQNwAQIAEgAikACDcACCABIAIpADg3ADggASACKQAwNwAwIAEgAikAKDcAKCABIAIpACA3ACAgASACKQBYNwBYIAEgAikAUDcAUCABIAIpAEg3AEggASACKQBANwBAIAEgAikAYDcAYCABIAIpAGg3AGggASACKQBwNwBwIAEgAikAeDcAeCACQYABaiECIAFBgAFqIQEgGkKAAX0iGkIfVg0ACwsgGkIQWgRAIAEgAikAADcAACABIAIpAAg3AAggGkIQfSEaIAJBEGohAiABQRBqIQELIBpCCFoEQCABIAIpAAA3AAAgGkIIfSEaIAJBCGohAiABQQhqIQELIBpCBFoEQCABIAIoAAA2AAAgGkIEfSEaIAJBBGohAiABQQRqIQELIBpCAloEQCABIAIvAAA7AAAgGkICfSEaIAJBAmohAiABQQJqIQELIBwgG30hHCAaUEUEQCABIAItAAA6AAAgAkEBaiECIAFBAWohAQsgHEIAUg0ACwsgDiEGIAwhAwsgBSAGSwRAAkACQCABIANNIAEgDyABa6wiGiAGrSIbIBogG1QbIhqnIglqIgIgA0txDQAgAyAJaiABSyABIANPcQ0AIAEgAyAJEAcaDAELIAEgAyADIAFrIgEgAUEfdSIBaiABcyIBEAcgAWohAiAaIAGtIh59IhxQDQAgASADaiEBA0ACQCAcIB4gHCAeVBsiG0IgVARAIBshGgwBCyAbIhpCIH0iIEIFiEIBfEIDgyIfUEUEQANAIAIgASkAADcAACACIAEpABg3ABggAiABKQAQNwAQIAIgASkACDcACCAaQiB9IRogAUEgaiEBIAJBIGohAiAfQgF9Ih9CAFINAAsLICBC4ABUDQADQCACIAEpAAA3AAAgAiABKQAYNwAYIAIgASkAEDcAECACIAEpAAg3AAggAiABKQA4NwA4IAIgASkAMDcAMCACIAEpACg3ACggAiABKQAgNwAgIAIgASkAWDcAWCACIAEpAFA3AFAgAiABKQBINwBIIAIgASkAQDcAQCACIAEpAGA3AGAgAiABKQBoNwBoIAIgASkAcDcAcCACIAEpAHg3AHggAUGAAWohASACQYABaiECIBpCgAF9IhpCH1YNAAsLIBpCEFoEQCACIAEpAAA3AAAgAiABKQAINwAIIBpCEH0hGiACQRBqIQIgAUEQaiEBCyAaQghaBEAgAiABKQAANwAAIBpCCH0hGiACQQhqIQIgAUEIaiEBCyAaQgRaBEAgAiABKAAANgAAIBpCBH0hGiACQQRqIQIgAUEEaiEBCyAaQgJaBEAgAiABLwAAOwAAIBpCAn0hGiACQQJqIQIgAUECaiEBCyAcIBt9IRwgGlBFBEAgAiABLQAAOgAAIAJBAWohAiABQQFqIQELIBxCAFINAAsLIAUgBmshAUEAIARrIQUCQCAEQQdLBEAgBCEDDAELIAEgBE0EQCAEIQMMAQsgAiAEayEFA0ACQCACIAUpAAA3AAAgBEEBdCEDIAEgBGshASACIARqIQIgBEEDSw0AIAMhBCABIANLDQELC0EAIANrIQULIAIgBWohBAJAIAUgDyACa6wiGiABrSIbIBogG1QbIhqnIgFIIAVBf0pxDQAgBUEBSCABIARqIAJLcQ0AIAIgBCABEAcgAWohAgwDCyACIAQgAyADQR91IgFqIAFzIgEQByABaiECIBogAa0iHn0iHFANAiABIARqIQEDQAJAIBwgHiAcIB5UGyIbQiBUBEAgGyEaDAELIBsiGkIgfSIgQgWIQgF8QgODIh9QRQRAA0AgAiABKQAANwAAIAIgASkAGDcAGCACIAEpABA3ABAgAiABKQAINwAIIBpCIH0hGiABQSBqIQEgAkEgaiECIB9CAX0iH0IAUg0ACwsgIELgAFQNAANAIAIgASkAADcAACACIAEpABg3ABggAiABKQAQNwAQIAIgASkACDcACCACIAEpADg3ADggAiABKQAwNwAwIAIgASkAKDcAKCACIAEpACA3ACAgAiABKQBYNwBYIAIgASkAUDcAUCACIAEpAEg3AEggAiABKQBANwBAIAIgASkAYDcAYCACIAEpAGg3AGggAiABKQBwNwBwIAIgASkAeDcAeCABQYABaiEBIAJBgAFqIQIgGkKAAX0iGkIfVg0ACwsgGkIQWgRAIAIgASkAADcAACACIAEpAAg3AAggGkIQfSEaIAJBEGohAiABQRBqIQELIBpCCFoEQCACIAEpAAA3AAAgGkIIfSEaIAJBCGohAiABQQhqIQELIBpCBFoEQCACIAEoAAA2AAAgGkIEfSEaIAJBBGohAiABQQRqIQELIBpCAloEQCACIAEvAAA7AAAgGkICfSEaIAJBAmohAiABQQJqIQELIBwgG30hHCAaUEUEQCACIAEtAAA6AAAgAkEBaiECIAFBAWohAQsgHFBFDQALDAILAkAgASADTSABIA8gAWusIhogBa0iGyAaIBtUGyIapyIEaiICIANLcQ0AIAMgBGogAUsgASADT3ENACABIAMgBBAHGgwCCyABIAMgAyABayIBIAFBH3UiAWogAXMiARAHIAFqIQIgGiABrSIefSIcUA0BIAEgA2ohAQNAAkAgHCAeIBwgHlQbIhtCIFQEQCAbIRoMAQsgGyIaQiB9IiBCBYhCAXxCA4MiH1BFBEADQCACIAEpAAA3AAAgAiABKQAYNwAYIAIgASkAEDcAECACIAEpAAg3AAggGkIgfSEaIAFBIGohASACQSBqIQIgH0IBfSIfQgBSDQALCyAgQuAAVA0AA0AgAiABKQAANwAAIAIgASkAGDcAGCACIAEpABA3ABAgAiABKQAINwAIIAIgASkAODcAOCACIAEpADA3ADAgAiABKQAoNwAoIAIgASkAIDcAICACIAEpAFg3AFggAiABKQBQNwBQIAIgASkASDcASCACIAEpAEA3AEAgAiABKQBgNwBgIAIgASkAaDcAaCACIAEpAHA3AHAgAiABKQB4NwB4IAFBgAFqIQEgAkGAAWohAiAaQoABfSIaQh9WDQALCyAaQhBaBEAgAiABKQAANwAAIAIgASkACDcACCAaQhB9IRogAkEQaiECIAFBEGohAQsgGkIIWgRAIAIgASkAADcAACAaQgh9IRogAkEIaiECIAFBCGohAQsgGkIEWgRAIAIgASgAADYAACAaQgR9IRogAkEEaiECIAFBBGohAQsgGkICWgRAIAIgAS8AADsAACAaQgJ9IRogAkECaiECIAFBAmohAQsgHCAbfSEcIBpQRQRAIAIgAS0AADoAACACQQFqIQIgAUEBaiEBCyAcUEUNAAsMAQsCQAJAIBYEQAJAIAQgBUkEQCAHKAKYRyAESw0BCyABIARrIQMCQEEAIARrIgVBf0ogDyABa6wiGiAbIBogG1QbIhqnIgIgBUpxDQAgBUEBSCACIANqIAFLcQ0AIAEgAyACEAcgAmohAgwFCyABIAMgBCAEQR91IgFqIAFzIgEQByABaiECIBogAa0iHn0iHFANBCABIANqIQEDQAJAIBwgHiAcIB5UGyIbQiBUBEAgGyEaDAELIBsiGkIgfSIgQgWIQgF8QgODIh9QRQRAA0AgAiABKQAANwAAIAIgASkAGDcAGCACIAEpABA3ABAgAiABKQAINwAIIBpCIH0hGiABQSBqIQEgAkEgaiECIB9CAX0iH0IAUg0ACwsgIELgAFQNAANAIAIgASkAADcAACACIAEpABg3ABggAiABKQAQNwAQIAIgASkACDcACCACIAEpADg3ADggAiABKQAwNwAwIAIgASkAKDcAKCACIAEpACA3ACAgAiABKQBYNwBYIAIgASkAUDcAUCACIAEpAEg3AEggAiABKQBANwBAIAIgASkAYDcAYCACIAEpAGg3AGggAiABKQBwNwBwIAIgASkAeDcAeCABQYABaiEBIAJBgAFqIQIgGkKAAX0iGkIfVg0ACwsgGkIQWgRAIAIgASkAADcAACACIAEpAAg3AAggGkIQfSEaIAJBEGohAiABQRBqIQELIBpCCFoEQCACIAEpAAA3AAAgGkIIfSEaIAJBCGohAiABQQhqIQELIBpCBFoEQCACIAEoAAA2AAAgGkIEfSEaIAJBBGohAiABQQRqIQELIBpCAloEQCACIAEvAAA7AAAgGkICfSEaIAJBAmohAiABQQJqIQELIBwgG30hHCAaUEUEQCACIAEtAAA6AAAgAkEBaiECIAFBAWohAQsgHFBFDQALDAQLIBAgAWsiCUEBaiIGIAUgBSAGSxshAyABIARrIQIgAUEHcUUNAiADRQ0CIAEgAi0AADoAACACQQFqIQIgAUEBaiIGQQdxQQAgA0EBayIFGw0BIAYhASAFIQMgCSEGDAILAkAgBCAFSQRAIAcoAphHIARLDQELIAEgASAEayIGKQAANwAAIAEgBUEBa0EHcUEBaiIDaiECIAUgA2siBEUNAyADIAZqIQEDQCACIAEpAAA3AAAgAUEIaiEBIAJBCGohAiAEQQhrIgQNAAsMAwsgASAEIAUQPyECDAILIAEgAi0AADoAASAJQQFrIQYgA0ECayEFIAJBAWohAgJAIAFBAmoiCkEHcUUNACAFRQ0AIAEgAi0AADoAAiAJQQJrIQYgA0EDayEFIAJBAWohAgJAIAFBA2oiCkEHcUUNACAFRQ0AIAEgAi0AADoAAyAJQQNrIQYgA0EEayEFIAJBAWohAgJAIAFBBGoiCkEHcUUNACAFRQ0AIAEgAi0AADoABCAJQQRrIQYgA0EFayEFIAJBAWohAgJAIAFBBWoiCkEHcUUNACAFRQ0AIAEgAi0AADoABSAJQQVrIQYgA0EGayEFIAJBAWohAgJAIAFBBmoiCkEHcUUNACAFRQ0AIAEgAi0AADoABiAJQQZrIQYgA0EHayEFIAJBAWohAgJAIAFBB2oiCkEHcUUNACAFRQ0AIAEgAi0AADoAByAJQQdrIQYgA0EIayEDIAFBCGohASACQQFqIQIMBgsgCiEBIAUhAwwFCyAKIQEgBSEDDAQLIAohASAFIQMMAwsgCiEBIAUhAwwCCyAKIQEgBSEDDAELIAohASAFIQMLAkACQCAGQRdNBEAgA0UNASADQQFrIQUgA0EHcSIEBEADQCABIAItAAA6AAAgA0EBayEDIAFBAWohASACQQFqIQIgBEEBayIEDQALCyAFQQdJDQEDQCABIAItAAA6AAAgASACLQABOgABIAEgAi0AAjoAAiABIAItAAM6AAMgASACLQAEOgAEIAEgAi0ABToABSABIAItAAY6AAYgASACLQAHOgAHIAFBCGohASACQQhqIQIgA0EIayIDDQALDAELIAMNAQsgASECDAELIAEgBCADED8hAgsgCyEFDAELIAEgAy0AAjoAACABQQFqIQILIAUgFE8NACACIBNJDQELCyAAIAI2AgwgACAFIAhBA3ZrIgE2AgAgACATIAJrQYMCajYCECAAIBQgAWtBDmo2AgQgByAIQQdxIgA2AogBIAcgHUJ/IACthkJ/hYM+AoQBC+cFAQR/IAMgAiACIANLGyEEIAAgAWshAgJAIABBB3FFDQAgBEUNACAAIAItAAA6AAAgA0EBayEGIAJBAWohAiAAQQFqIgdBB3FBACAEQQFrIgUbRQRAIAchACAFIQQgBiEDDAELIAAgAi0AADoAASADQQJrIQYgBEECayEFIAJBAWohAgJAIABBAmoiB0EHcUUNACAFRQ0AIAAgAi0AADoAAiADQQNrIQYgBEEDayEFIAJBAWohAgJAIABBA2oiB0EHcUUNACAFRQ0AIAAgAi0AADoAAyADQQRrIQYgBEEEayEFIAJBAWohAgJAIABBBGoiB0EHcUUNACAFRQ0AIAAgAi0AADoABCADQQVrIQYgBEEFayEFIAJBAWohAgJAIABBBWoiB0EHcUUNACAFRQ0AIAAgAi0AADoABSADQQZrIQYgBEEGayEFIAJBAWohAgJAIABBBmoiB0EHcUUNACAFRQ0AIAAgAi0AADoABiADQQdrIQYgBEEHayEFIAJBAWohAgJAIABBB2oiB0EHcUUNACAFRQ0AIAAgAi0AADoAByADQQhrIQMgBEEIayEEIABBCGohACACQQFqIQIMBgsgByEAIAUhBCAGIQMMBQsgByEAIAUhBCAGIQMMBAsgByEAIAUhBCAGIQMMAwsgByEAIAUhBCAGIQMMAgsgByEAIAUhBCAGIQMMAQsgByEAIAUhBCAGIQMLAkAgA0EXTQRAIARFDQEgBEEBayEBIARBB3EiAwRAA0AgACACLQAAOgAAIARBAWshBCAAQQFqIQAgAkEBaiECIANBAWsi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CyAAIAMtAAAEfiADKQMQBUIAC6dB//8DcSADKAIEEEcLIQUgAxAICyAEQRBqJAAgBQvgAQICfwF+QTAQCSICRQRAIAEEQCABQQA2AgQgAUEONgIAC0EADwsgAkIANwMIIAJBADYCACACQgA3AxAgAkIANwMYIAJCADcDICACQgA3ACUgAFAEQCACDwsCQCAAQv////8AVg0AIACnQQR0EAkiA0UNACACIAM2AgBBACEBQgEhBANAIAMgAUEEdGoiAUIANwIAIAFCADcABSAAIARSBEAgBKchASAEQgF8IQQMAQsLIAIgADcDCCACIAA3AxAgAg8LIAEEQCABQQA2AgQgAUEONgIAC0EAEBAgAhAGQQAL7gECA38BfiMAQRBrIgQkAAJAIARBDGpCBBAXIgNFBEBBfyECDAELAkAgAQRAIAJBgAZxIQUDQAJAIAUgASgCBHFFDQACQCADKQMIQgBUBEAgA0EAOgAADAELIANCADcDECADQQE6AAALIAMgAS8BCBANIAMgAS8BChANIAMtAABFBEAgAEEIaiIABEAgAEEANgIEIABBFDYCAAtBfyECDAQLQX8hAiAAIARBDGpCBBAbQQBIDQMgATMBCiIGUA0AIAAgASgCDCAGEBtBAEgNAwsgASgCACIBDQALC0EAIQILIAMQCAsgBEEQaiQAIAILPAEBfyAABEAgAUGABnEhAQNAIAEgACgCBHEEQCACIAAvAQpqQQRqIQILIAAoAgAiAA0ACwsgAkH//wNxC5wBAQN/IABFBEBBAA8LIAAhAwNAAn8CQAJAIAAvAQgiAUH04AFNBEAgAUEBRg0BIAFB9cYBRg0BDAILIAFBgbICRg0AIAFB9eABRw0BCyAAKAIAIQEgAEEANgIAIAAoAgwQBiAAEAYgASADIAAgA0YbIQMCQCACRQRAQQAhAgwBCyACIAE2AgALIAEMAQsgACICKAIACyIADQALIAMLsgQCBX8BfgJAAkACQCAAIAGtEBciAQRAIAEtAAANAUEAIQAMAgsgBARAIARBADYCBCAEQQ42AgALQQAPC0EAIQADQCABLQAABH4gASkDCCABKQMQfQVCAAtCBFQNASABEAwhByABIAEQDCIGrRATIghFBEBBACECIAQEQCAEQQA2AgQgBEEVNgIACyABEAggAEUNAwNAIAAoAgAhASAAKAIMEAYg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DCAAQRg2AggLDAMLIAAgBiAFLwFqQQAgBCABEQYAIQEgBhALIAFFDQILAkAgDUUEQCABIQMMAQsgACABIAUvAWgQgQEhAyABEAsgA0UNAQsCQCAJRSAMckUEQCADIQEMAQsgACADQQEQgAEhASADEAsgAUUNAQsgASEDDAELQQAhAwsgBUHwAGokACADC4UBAQF/IAFFBEAgAEEIaiIABEAgAEEANgIEIABBEjYCAAtBAA8LQTgQCSIDRQRAIABBCGoiAARAIABBADYCBCAAQQ42AgALQQAPCyADQQA2AhAgA0IANwIIIANCADcDKCADQQA2AgQgAyACNgIAIANCADcDGCADQQA2AjAgACABQTsgAxBCCw8AIAAgASACQQBBABCCAQusAgECfyABRQRAIABBCGoiAARAIABBADYCBCAAQRI2AgALQQAPCwJAIAJBfUsNACACQf//A3FBCEYNACAAQQhqIgAEQCAAQQA2AgQgAEEQNgIAC0EADwsCQEGwwAAQCSIFBEAgBUEANgIIIAVCADcCACAFQYiBAUGogQEgAxs2AqhAIAUgAjYCFCAFIAM6ABAgBUEAOgAPIAVBADsBDCAFIAMgAkF9SyIGcToADiAFQQggAiAGG0H//wNxIAQgBUGIgQFBqIEBIAMbKAIAEQAAIgI2AqxAIAINASAFEDEgBRAGCyAAQQhqIgAEQCAAQQA2AgQgAEEONgIAC0EADwsgACABQTogBRBCIgAEfyAABSAFKAKsQCAFKAKoQCgCBBEDACAFEDEgBRAGQQALC6ABAQF/IAIgACgCBCIDIAIgA0kbIgIEQCAAIAMgAms2AgQCQAJAAkACQCAAKAIcIgMoAhRBAWsOAgEAAgsgA0GgAWogASAAKAIAIAJB3IABKAIAEQgADAILIAAgACgCMCABIAAoAgAgAkHEgAEoAgARBAA2AjAMAQsgASAAKAIAIAIQBxoLIAAgACgCACACajYCACAAIAAoAgggAmo2AggLC7cCAQR/QX4hAgJAIABFDQAgACgCIEUNACAAKAIkIgRFDQAgACgCHCIBRQ0AIAEoAgAgAEcNAAJAAkAgASgCICIDQTlrDjkBAgICAgICAgICAgIBAgICAQICAgICAgICAgICAgICAgICAQICAgICAgICAgICAQICAgICAgICAgEACyADQZoFRg0AIANBKkcN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DCABajYCDCAGIAYoAgggAWo2AgggBSAFKAIUIAFqNgIUIAUgBSgCECABazYCECAGIAYoAhAgAWsiATYCECABDQAgBiAGKAIENgIIC0EAIQRBACEJIAMoAhBFDQAMCgsgAygCHCgCJCEGIAMgAygCGCIBQQFqNgIYIAEgBmotAAAhASADIARBAWo2AhAgAygCBCAEaiABOgAAIAEEQCADKAIQIQQMAQsLIAMoAhwoAixFDQAgAygCECIGIAlNDQAgBQJ/IAUoAjAhBEEAIAMoAgQgCWoiAUUNABogBCABIAYgCWtB1IABKAIAEQAACzYCMAsgA0HnADYCIAsCQCADKAIcKAIsBEAgAygCDCADKAIQIgFBAmpJBH8gBRAKIAMoAhANAkEABSABCyADKAIEaiAFKAIwOwAAIAMgAygCEEECajYCECADQaABakHkgAEoAgARAQAaCyADQfEANgIgIAUQCiADKAIQRQ0BDAcLDAYLIAUoAgQNAQsgAygCPA0AIApFDQEgAygCIEGaBUYNAQsCfyADKAKIASIBRQRAIAMgChCFAQwBCwJAAkACQCADKAKMAUECaw4CAAECCwJ/AkADQAJAAkAgAygCPA0AIAMQLyADKAI8DQAgCg0BQQAMBAsgAygCSCADKAJoai0AACEEIAMgAygC8C0iAUEBajYC8C0gASADKALsLWpBADoAACADIAMoAvAtIgFBAWo2AvAtIAEgAygC7C1qQQA6AAAgAyADKALwLSIBQQFqNgLwLSABIAMoAuwtaiAEOgAAIAMgBEECdGoiASABLwHkAUEBajsB5AEgAyADKAI8QQFrNgI8IAMgAygCaEEBaiIBNgJoIAMoAvAtIAMoAvQtRw0BQQAhBCADIAMoAlgiBkEATgR/IAMoAkggBmoFQQALIAEgBmtBABAPIAMgAygCaDYCWCADKAIAEAogAygCACgCEA0BDAILCyADQQA2AoQuIApBBEYEQCADIAMoAlgiAUEATgR/IAMoAkggAWoFQQALIAMoAmggAWtBARAPIAMgAygCaDYCWCADKAIAEApBA0ECIAMoAgAoAhAbDAILIAMoAvAtBEBBACEEIAMgAygCWCIBQQBOBH8gAygCSCABagVBAAsgAygCaCABa0EAEA8gAyADKAJoNgJYIAMoAgAQCiADKAIAKAIQRQ0BC0EBIQQLIAQL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bGl0ZXJhbC9sZW5ndGhzIHNldABpbnZhbGlkIGNvZGUgbGVuZ3RocyBzZXQAdW5rbm93biBoZWFkZXIgZmxhZ3Mgc2V0AGludmFsaWQgZGlzdGFuY2VzIHNldABpbnZhbGlkIGJpdCBsZW5ndGggcmVwZWF0AEZpbGUgYWxyZWFkeSBleGlzdHMAdG9vIG1hbnkgbGVuZ3RoIG9yIGRpc3RhbmNlIHN5bWJvbHMAaW52YWxpZCBzdG9yZWQgYmxvY2sgbGVuZ3RocwAlcyVzJXMAYnVmZmVyIGVycm9yAE5vIGVycm9yAHN0cmVhbSBlcnJvcgBUZWxsIGVycm9yAEludGVybmFsIGVycm9yAFNlZWsgZXJyb3IAV3JpdGUgZXJyb3IAZmlsZSBlcnJvcgBSZWFkIGVycm9yAFpsaWIgZXJyb3IAZGF0YSBlcnJvcgBDUkMgZXJyb3IAaW5jb21wYXRpYmxlIHZlcnNpb24AaW52YWxpZCBjb2RlIC0tIG1pc3NpbmcgZW5kLW9mLWJsb2NrAGluY29ycmVjdCBoZWFkZXIgY2hlY2sAaW5jb3JyZWN0IGxlbmd0aCBjaGVjawBpbmNvcnJlY3QgZGF0YSBjaGVjawBpbnZhbGlkIGRpc3RhbmNlIHRvbyBmYXIgYmFjawBoZWFkZXIgY3JjIG1pc21hdGNoADEuMi4xMy56bGliLW5nAGludmFsaWQgd2luZG93IHNpemUAUmVhZC1vbmx5IGFyY2hpdmUATm90IGEgemlwIGFyY2hpdmUAUmVzb3VyY2Ugc3RpbGwgaW4gdXNlAE1hbGxvYyBmYWlsdXJlAGludmFsaWQgYmxvY2sgdHlwZQBGYWlsdXJlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZmlsZQBDYW4ndCBvcGVuIGZpbGUATm8gc3VjaCBmaWxlAFByZW1hdHVyZSBlbmQgb2YgZmlsZQBDYW4ndCByZW1vdmUgZmlsZQBpbnZhbGlkIGxpdGVyYWwvbGVuZ3RoIGNvZGUAaW52YWxpZCBkaXN0YW5jZSBjb2RlAHVua25vd24gY29tcHJlc3Npb24gbWV0aG9kAHN0cmVhbSBlbmQAQ29tcHJlc3NlZCBkYXRhIGludmFsaWQATXVsdGktZGlzayB6aXAgYXJjaGl2ZXMgbm90IHN1cHBvcnRl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UgAIANIACAAyAAgAsgAIAHIACADyAAgACgAIAIoACABKAAgAygAIACoACACqAAgAagAIAOoACAAaAAgAmgAIAFoACADaAAgAOgAIALoACAB6AAgA+gAIAAYACACGAAgARgAIAMYACAAmAAgApgAIAGYACADmAAgAFgAIAJYACABWAAgA1gAIADYACAC2AAgAdgAIAPYACAAOAAgAjgAIAE4ACADOAAgALgAIAK4ACABuAAgA7gAIAB4ACACeAAgAXgAIAN4ACAA+AAgAvgAIAH4ACAD+AAgAAQAIAIEACABBAAgAwQAIACEACAChAAgAYQAIAOEACAARAAgAkQAIAFEACADRAAgAMQAIALEACABxAAgA8QAIAAkACACJAAgASQAIAMkACAApAAgAqQAIAGkACADpAAgAGQAIAJkACABZAAgA2QAIADkACAC5AAgAeQAIAPkACAAFAAgAhQAIAEUACADFAAgAJQAIAKUACABlAAgA5QAIABUACACVAAgAVQAIANUACAA1AAgAtQAIAHUACAD1AAgADQAIAI0ACABNAAgAzQAIAC0ACACtAAgAbQAIAO0ACAAdAAgAnQAIAF0ACADdAAgAPQAIAL0ACAB9AAgA/QAIABMACQATAQkAkwAJAJMBCQBTAAkAUwEJANMACQDTAQkAMwAJADMBCQCzAAkAswEJAHMACQBzAQkA8wAJAPMBCQALAAkACwEJAIsACQCLAQkASwAJAEsBCQDLAAkAywEJACsACQArAQkAqwAJAKsBCQBrAAkAawEJAOsACQDrAQkAGwAJABsBCQCbAAkAmwEJAFsACQBbAQkA2wAJANsBCQA7AAkAOwEJALsACQC7AQkAewAJAHsBCQD7AAkA+wEJAAcACQAHAQkAhwAJAIcBCQBHAAkARwEJAMcACQDHAQkAJwAJACcBCQCnAAkApwEJAGcACQBnAQkA5wAJAOcBCQAXAAkAFwEJAJcACQCXAQkAVwAJAFcBCQDXAAkA1wEJADcACQA3AQkAtwAJALcBCQB3AAkAdwEJAPcACQD3AQkADwAJAA8BCQCPAAkAjwEJAE8ACQBPAQkAzwAJAM8BCQAvAAkALwEJAK8ACQCvAQkAbwAJAG8BCQDvAAkA7wEJAB8ACQAfAQkAnwAJAJ8BCQBfAAkAXwEJAN8ACQDfAQkAPwAJAD8BCQC/AAkA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SXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AQcCAAQuFARMAAAAUAAAAFQAAABYAAAAXAAAAGAAAABkAAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACIAAAAjAAAAgERQADEAAAAyAAAAMwAAADQAAAA1AAAANgAAADcAAAA4AAAAOQAAADIAAAAzAAAANAAAADUAAAA2AAAANwAAADgAQfSCAQsCXEQAQbCDAQsQ/////////////////////w==";Ws(Ko)||(Ko=G(Ko));function ai(fs){try{if(fs==Ko&&pe)return new Uint8Array(pe);var Ao=cf(fs);if(Ao)return Ao;if(O)return O(fs);throw"sync fetching of the wasm failed: you can preload it to Module['wasmBinary'] manually, or emcc.py will do that for you when generating HTML (but not JS)"}catch(Do){Ji(Do)}}function pa(fs,Ao){var Do,zl,Nr;try{Nr=ai(fs),zl=new WebAssembly.Module(Nr),Do=new WebAssembly.Instance(zl,Ao)}catch(Di){var Nn=Di.toString();throw ae("failed to compile wasm module: "+Nn),(Nn.includes("imported Memory")||Nn.includes("memory import"))&&ae("Memory size incompatibility issues may be due to changing INITIAL_MEMORY at runtime to something too large. Use ALLOW_MEMORY_GROWTH to allow any size memory (and also make sure not to set INITIAL_MEMORY at runtime to something smaller than it was at compile time)."),Di}return[Do,zl]}function sg(){var fs={a:Td};function Ao(Nr,Nn){var Di=Nr.exports;r.asm=Di,Te=r.asm.g,Za(Te.buffer),Qs=r.asm.W,Ld(r.asm.h),Vn("wasm-instantiate")}if(Cn("wasm-instantiate"),r.instantiateWasm)try{var Do=r.instantiateWasm(fs,Ao);return Do}catch(Nr){return ae("Module.instantiateWasm callback failed with error: "+Nr),!1}var zl=pa(Ko,fs);return Ao(zl[0]),r.asm}function Fu(fs){return Zi.getFloat32(fs,!0)}function Cg(fs){return Zi.getFloat64(fs,!0)}function Zu(fs){return Zi.getInt16(fs,!0)}function Cl(fs){return Zi.getInt32(fs,!0)}function wi(fs,Ao){Zi.setInt32(fs,Ao,!0)}function ts(fs){for(;fs.length>0;){var Ao=fs.shift();if(typeof Ao=="function"){Ao(r);continue}var Do=Ao.func;typeof Do=="number"?Ao.arg===void 0?Qs.get(Do)():Qs.get(Do)(Ao.arg):Do(Ao.arg===void 0?null:Ao.arg)}}function $i(fs,Ao){var Do=new Date(Cl((fs>>2)*4)*1e3);wi((Ao>>2)*4,Do.getUTCSeconds()),wi((Ao+4>>2)*4,Do.getUTCMinutes()),wi((Ao+8>>2)*4,Do.getUTCHours()),wi((Ao+12>>2)*4,Do.getUTCDate()),wi((Ao+16>>2)*4,Do.getUTCMonth()),wi((Ao+20>>2)*4,Do.getUTCFullYear()-1900),wi((Ao+24>>2)*4,Do.getUTCDay()),wi((Ao+36>>2)*4,0),wi((Ao+32>>2)*4,0);var zl=Date.UTC(Do.getUTCFullYear(),0,1,0,0,0,0),Nr=(Do.getTime()-zl)/(1e3*60*60*24)|0;return wi((Ao+28>>2)*4,Nr),$i.GMTString||($i.GMTString=dr("GMT")),wi((Ao+40>>2)*4,$i.GMTString),Ao}function Ga(fs,Ao){return $i(fs,Ao)}function $s(fs,Ao,Do){Or.copyWithin(fs,Ao,Ao+Do)}function xl(fs){try{return Te.grow(fs-Fr.byteLength+65535>>>16),Za(Te.buffer),1}catch{}}function qo(fs){var Ao=Or.length;fs=fs>>>0;var Do=2147483648;if(fs>Do)return!1;for(var zl=1;zl<=4;zl*=2){var Nr=Ao*(1+.2/zl);Nr=Math.min(Nr,fs+100663296);var Nn=Math.min(Do,or(Math.max(fs,Nr),65536)),Di=xl(Nn);if(Di)return!0}return!1}function Na(fs){fe(fs)}function wu(fs){var Ao=Date.now()/1e3|0;return fs&&wi((fs>>2)*4,Ao),Ao}function Dg(){if(Dg.called)return;Dg.called=!0;var fs=new Date().getFullYear(),Ao=new Date(fs,0,1),Do=new Date(fs,6,1),zl=Ao.getTimezoneOffset(),Nr=Do.getTimezoneOffset(),Nn=Math.max(zl,Nr);wi((sp()>>2)*4,Nn*60),wi((Og()>>2)*4,+(zl!=Nr));function Di(RA){var Nd=RA.toTimeString().match(/\(([A-Za-z ]+)\)$/);return Nd?Nd[1]:"GMT"}var na=Di(Ao),Ks=Di(Do),Li=dr(na),Zl=dr(Ks);Nr>2)*4,Li),wi((_l()+4>>2)*4,Zl)):(wi((_l()>>2)*4,Zl),wi((_l()+4>>2)*4,Li))}function hl(fs){Dg();var Ao=Date.UTC(Cl((fs+20>>2)*4)+1900,Cl((fs+16>>2)*4),Cl((fs+12>>2)*4),Cl((fs+8>>2)*4),Cl((fs+4>>2)*4),Cl((fs>>2)*4),0),Do=new Date(Ao);wi((fs+24>>2)*4,Do.getUTCDay());var zl=Date.UTC(Do.getUTCFullYear(),0,1,0,0,0,0),Nr=(Do.getTime()-zl)/(1e3*60*60*24)|0;return wi((fs+28>>2)*4,Nr),Do.getTime()/1e3|0}var au=typeof atob=="function"?atob:function(fs){var Ao="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",Do="",zl,Nr,Nn,Di,na,Ks,Li,Zl=0;fs=fs.replace(/[^A-Za-z0-9\+\/\=]/g,"");do Di=Ao.indexOf(fs.charAt(Zl++)),na=Ao.indexOf(fs.charAt(Zl++)),Ks=Ao.indexOf(fs.charAt(Zl++)),Li=Ao.indexOf(fs.charAt(Zl++)),zl=Di<<2|na>>4,Nr=(na&15)<<4|Ks>>2,Nn=(Ks&3)<<6|Li,Do=Do+String.fromCharCode(zl),Ks!==64&&(Do=Do+String.fromCharCode(Nr)),Li!==64&&(Do=Do+String.fromCharCode(Nn));while(Zl0||(Yu(),Gr>0))return;function Ao(){Wp||(Wp=!0,r.calledRun=!0,!ke&&(YA(),s(r),r.onRuntimeInitialized&&r.onRuntimeInitialized(),ud()))}r.setStatus?(r.setStatus("Running..."),setTimeout(function(){setTimeout(function(){r.setStatus("")},1),Ao()},1)):Ao()}if(r.run=uC,r.preInit)for(typeof r.preInit=="function"&&(r.preInit=[r.preInit]);r.preInit.length>0;)r.preInit.pop()();return uC(),t}}();typeof Mit=="object"&&typeof N4t=="object"?N4t.exports=T4t:typeof define=="function"&&define.amd?define([],function(){return T4t}):typeof Mit=="object"&&(Mit.createModule=T4t)});var gAn=z(Kbe=>{"use strict";Object.defineProperty(Kbe,"__esModule",{value:!0});Kbe.makeInterface=Kbe.Errors=void 0;var cj=["number","number"],R4t;(function(e){e[e.ZIP_ER_OK=0]="ZIP_ER_OK",e[e.ZIP_ER_MULTIDISK=1]="ZIP_ER_MULTIDISK",e[e.ZIP_ER_RENAME=2]="ZIP_ER_RENAME",e[e.ZIP_ER_CLOSE=3]="ZIP_ER_CLOSE",e[e.ZIP_ER_SEEK=4]="ZIP_ER_SEEK",e[e.ZIP_ER_READ=5]="ZIP_ER_READ",e[e.ZIP_ER_WRITE=6]="ZIP_ER_WRITE",e[e.ZIP_ER_CRC=7]="ZIP_ER_CRC",e[e.ZIP_ER_ZIPCLOSED=8]="ZIP_ER_ZIPCLOSED",e[e.ZIP_ER_NOENT=9]="ZIP_ER_NOENT",e[e.ZIP_ER_EXISTS=10]="ZIP_ER_EXISTS",e[e.ZIP_ER_OPEN=11]="ZIP_ER_OPEN",e[e.ZIP_ER_TMPOPEN=12]="ZIP_ER_TMPOPEN",e[e.ZIP_ER_ZLIB=13]="ZIP_ER_ZLIB",e[e.ZIP_ER_MEMORY=14]="ZIP_ER_MEMORY",e[e.ZIP_ER_CHANGED=15]="ZIP_ER_CHANGED",e[e.ZIP_ER_COMPNOTSUPP=16]="ZIP_ER_COMPNOTSUPP",e[e.ZIP_ER_EOF=17]="ZIP_ER_EOF",e[e.ZIP_ER_INVAL=18]="ZIP_ER_INVAL",e[e.ZIP_ER_NOZIP=19]="ZIP_ER_NOZIP",e[e.ZIP_ER_INTERNAL=20]="ZIP_ER_INTERNAL",e[e.ZIP_ER_INCONS=21]="ZIP_ER_INCONS",e[e.ZIP_ER_REMOVE=22]="ZIP_ER_REMOVE",e[e.ZIP_ER_DELETED=23]="ZIP_ER_DELETED",e[e.ZIP_ER_ENCRNOTSUPP=24]="ZIP_ER_ENCRNOTSUPP",e[e.ZIP_ER_RDONLY=25]="ZIP_ER_RDONLY",e[e.ZIP_ER_NOPASSWD=26]="ZIP_ER_NOPASSWD",e[e.ZIP_ER_WRONGPASSWD=27]="ZIP_ER_WRONGPASSWD",e[e.ZIP_ER_OPNOTSUPP=28]="ZIP_ER_OPNOTSUPP",e[e.ZIP_ER_INUSE=29]="ZIP_ER_INUSE",e[e.ZIP_ER_TELL=30]="ZIP_ER_TELL",e[e.ZIP_ER_COMPRESSED_DATA=31]="ZIP_ER_COMPRESSED_DATA"})(R4t||(Kbe.Errors=R4t={}));var g5s=e=>({get HEAPU8(){return e.HEAPU8},errors:R4t,SEEK_SET:0,SEEK_CUR:1,SEEK_END:2,ZIP_CHECKCONS:4,ZIP_EXCL:2,ZIP_RDONLY:16,ZIP_FL_OVERWRITE:8192,ZIP_FL_COMPRESSED:4,ZIP_OPSYS_DOS:0,ZIP_OPSYS_AMIGA:1,ZIP_OPSYS_OPENVMS:2,ZIP_OPSYS_UNIX:3,ZIP_OPSYS_VM_CMS:4,ZIP_OPSYS_ATARI_ST:5,ZIP_OPSYS_OS_2:6,ZIP_OPSYS_MACINTOSH:7,ZIP_OPSYS_Z_SYSTEM:8,ZIP_OPSYS_CPM:9,ZIP_OPSYS_WINDOWS_NTFS:10,ZIP_OPSYS_MVS:11,ZIP_OPSYS_VSE:12,ZIP_OPSYS_ACORN_RISC:13,ZIP_OPSYS_VFAT:14,ZIP_OPSYS_ALTERNATE_MVS:15,ZIP_OPSYS_BEOS:16,ZIP_OPSYS_TANDEM:17,ZIP_OPSYS_OS_400:18,ZIP_OPSYS_OS_X:19,ZIP_CM_DEFAULT:-1,ZIP_CM_STORE:0,ZIP_CM_DEFLATE:8,uint08S:e._malloc(1),uint32S:e._malloc(4),malloc:e._malloc,free:e._free,getValue:e.getValue,openFromSource:e.cwrap("zip_open_from_source","number",["number","number","number"]),close:e.cwrap("zip_close","number",["number"]),discard:e.cwrap("zip_discard",null,["number"]),getError:e.cwrap("zip_get_error","number",["number"]),getName:e.cwrap("zip_get_name","string",["number","number","number"]),getNumEntries:e.cwrap("zip_get_num_entries","number",["number","number"]),delete:e.cwrap("zip_delete","number",["number","number"]),statIndex:e.cwrap("zip_stat_index","number",["number",...cj,"number","number"]),fopenIndex:e.cwrap("zip_fopen_index","number",["number",...cj,"number"]),fread:e.cwrap("zip_fread","number",["number","number","number","number"]),fclose:e.cwrap("zip_fclose","number",["number"]),dir:{add:e.cwrap("zip_dir_add","number",["number","string"])},file:{add:e.cwrap("zip_file_add","number",["number","string","number","number"]),getError:e.cwrap("zip_file_get_error","number",["number"]),getExternalAttributes:e.cwrap("zip_file_get_external_attributes","number",["number",...cj,"number","number","number"]),setExternalAttributes:e.cwrap("zip_file_set_external_attributes","number",["number",...cj,"number","number","number"]),setMtime:e.cwrap("zip_file_set_mtime","number",["number",...cj,"number","number"]),setCompression:e.cwrap("zip_set_file_compression","number",["number",...cj,"number","number"])},ext:{countSymlinks:e.cwrap("zip_ext_count_symlinks","number",["number"])},error:{initWithCode:e.cwrap("zip_error_init_with_code",null,["number","number"]),strerror:e.cwrap("zip_error_strerror","string",["number"])},name:{locate:e.cwrap("zip_name_locate","number",["number","string","number"])},source:{fromUnattachedBuffer:e.cwrap("zip_source_buffer_create","number",["number",...cj,"number","number"]),fromBuffer:e.cwrap("zip_source_buffer","number",["number","number",...cj,"number"]),free:e.cwrap("zip_source_free",null,["number"]),keep:e.cwrap("zip_source_keep",null,["number"]),open:e.cwrap("zip_source_open","number",["number"]),close:e.cwrap("zip_source_close","number",["number"]),seek:e.cwrap("zip_source_seek","number",["number",...cj,"number"]),tell:e.cwrap("zip_source_tell","number",["number"]),read:e.cwrap("zip_source_read","number",["number","number","number"]),error:e.cwrap("zip_source_error","number",["number"])},struct:{statS:e.cwrap("zipstruct_statS","number",[]),statSize:e.cwrap("zipstruct_stat_size","number",["number"]),statCompSize:e.cwrap("zipstruct_stat_comp_size","number",["number"]),statCompMethod:e.cwrap("zipstruct_stat_comp_method","number",["number"]),statMtime:e.cwrap("zipstruct_stat_mtime","number",["number"]),statCrc:e.cwrap("zipstruct_stat_crc","number",["number"]),errorS:e.cwrap("zipstruct_errorS","number",[]),errorCodeZip:e.cwrap("zipstruct_error_code_zip","number",["number"])}});Kbe.makeInterface=g5s});var dAn=z(cVe=>{"use strict";Object.defineProperty(cVe,"__esModule",{value:!0});cVe.ZipOpenFS=void 0;cVe.getArchivePart=x4t;var A5s=Ro(),D4t=Ro(),AAn=SJ();function x4t(e,t){let r=e.indexOf(t);if(r<=0)return null;let s=r;for(;r>=0&&(s=r+t.length,e[s]!==D4t.ppath.sep);){if(e[r-1]===D4t.ppath.sep)return null;r=e.indexOf(t,s)}return e.length>s&&e[s]!==D4t.ppath.sep?null:e.slice(0,s)}var k4t=class e extends A5s.MountFS{static async openPromise(t,r){let s=new e(r);try{return await t(s)}finally{s.saveAndClose()}}constructor(t={}){let r=t.fileExtensions,s=t.readOnlyArchives,a=typeof r>"u"?p=>x4t(p,".zip"):p=>{for(let f of r){let m=x4t(p,f);if(m)return m}return null},o=(p,f)=>new AAn.ZipFS(f,{baseFs:p,readOnly:s,stats:p.statSync(f)}),g=async(p,f)=>{let m={baseFs:p,readOnly:s,stats:await p.statPromise(f)};return()=>new AAn.ZipFS(f,m)};super({...t,factorySync:o,factoryPromise:g,getMountPoint:a})}};cVe.ZipOpenFS=k4t});var Z4t=z(wJ=>{"use strict";Object.defineProperty(wJ,"__esModule",{value:!0});wJ.ZipFS=wJ.LibzipError=wJ.DEFAULT_COMPRESSION_LEVEL=void 0;wJ.makeEmptyArchive=Qit;var d5s=(Ma(),Ai(Oa)),p5s=Ro(),f5s=Ro(),I5s=Ro(),G4t=Ro(),zg=Ro(),EC=Ro(),DL=Dt("fs"),pAn=Dt("stream"),C5s=Dt("util"),fAn=d5s.__importDefault(Dt("zlib")),m5s=w4t();wJ.DEFAULT_COMPRESSION_LEVEL="mixed";function h5s(e){if(typeof e=="string"&&String(+e)===e)return+e;if(typeof e=="number"&&Number.isFinite(e))return e<0?Date.now()/1e3:e;if(C5s.types.isDate(e))return e.getTime()/1e3;throw new Error("Invalid time")}function Qit(){return Buffer.from([80,75,5,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0])}var Yit=class extends Error{constructor(t,r){super(t),this.name="Libzip Error",this.code=r}};wJ.LibzipError=Yit;var F4t=class extends p5s.BasePortableFakeFS{constructor(t,r={}){super(),this.listings=new Map,this.entries=new Map,this.fileSources=new Map,this.fds=new Map,this.nextFd=0,this.ready=!1,this.readOnly=!1;let s=r;if(this.level=typeof s.level<"u"?s.level:wJ.DEFAULT_COMPRESSION_LEVEL,t??=Qit(),typeof t=="string"){let{baseFs:g=new f5s.NodeFS}=s;this.baseFs=g,this.path=t}else this.path=null,this.baseFs=null;if(r.stats)this.stats=r.stats;else if(typeof t=="string")try{this.stats=this.baseFs.statSync(t)}catch(g){if(g.code==="ENOENT"&&s.create)this.stats=zg.statUtils.makeDefaultStats();else throw g}else this.stats=zg.statUtils.makeDefaultStats();this.libzip=(0,m5s.getInstance)();let a=this.libzip.malloc(4);try{let g=0;r.readOnly&&(g|=this.libzip.ZIP_RDONLY,this.readOnly=!0),typeof t=="string"&&(t=s.create?Qit():this.baseFs.readFileSync(t));let p=this.allocateUnattachedSource(t);try{this.zip=this.libzip.openFromSource(p,g,a),this.lzSource=p}catch(f){throw this.libzip.source.free(p),f}if(this.zip===0){let f=this.libzip.struct.errorS();throw this.libzip.error.initWithCode(f,this.libzip.getValue(a,"i32")),this.makeLibzipError(f)}}finally{this.libzip.free(a)}this.listings.set(EC.PortablePath.root,new Set);let o=this.libzip.getNumEntries(this.zip,0);for(let g=0;gt)throw new Error("Overread");let a=Buffer.from(this.libzip.HEAPU8.subarray(r,r+t));return process.env.YARN_IS_TEST_ENV&&process.env.YARN_ZIP_DATA_EPILOGUE&&(a=Buffer.concat([a,Buffer.from(process.env.YARN_ZIP_DATA_EPILOGUE)])),a}finally{this.libzip.free(r)}}finally{this.libzip.source.close(this.lzSource),this.libzip.source.free(this.lzSource),this.ready=!1}}discardAndClose(){this.prepareClose(),this.libzip.discard(this.zip),this.ready=!1}saveAndClose(){if(!this.path||!this.baseFs)throw new Error("ZipFS cannot be saved and must be discarded when loaded from a buffer");if(this.readOnly){this.discardAndClose();return}let t=this.baseFs.existsSync(this.path)||this.stats.mode===zg.statUtils.DEFAULT_MODE?void 0:this.stats.mode;this.baseFs.writeFileSync(this.path,this.getBufferAndClose(),{mode:t}),this.ready=!1}resolve(t){return EC.ppath.resolve(EC.PortablePath.root,t)}async openPromise(t,r,s){return this.openSync(t,r,s)}openSync(t,r,s){let a=this.nextFd++;return this.fds.set(a,{cursor:0,p:t}),a}hasOpenFileHandles(){return!!this.fds.size}async opendirPromise(t,r){return this.opendirSync(t,r)}opendirSync(t,r={}){let s=this.resolveFilename(`opendir '${t}'`,t);if(!this.entries.has(s)&&!this.listings.has(s))throw zg.errors.ENOENT(`opendir '${t}'`);let a=this.listings.get(s);if(!a)throw zg.errors.ENOTDIR(`opendir '${t}'`);let o=[...a],g=this.openSync(s,"r"),p=()=>{this.closeSync(g)};return(0,I5s.opendir)(this,s,o,{onClose:p})}async readPromise(t,r,s,a,o){return this.readSync(t,r,s,a,o)}readSync(t,r,s=0,a=r.byteLength,o=-1){let g=this.fds.get(t);if(typeof g>"u")throw zg.errors.EBADF("read");let p=o===-1||o===null?g.cursor:o,f=this.readFileSync(g.p);f.copy(r,s,p,p+a);let m=Math.max(0,Math.min(f.length-p,a));return(o===-1||o===null)&&(g.cursor+=m),m}async writePromise(t,r,s,a,o){return typeof r=="string"?this.writeSync(t,r,o):this.writeSync(t,r,s,a,o)}writeSync(t,r,s,a,o){throw typeof this.fds.get(t)>"u"?zg.errors.EBADF("read"):new Error("Unimplemented")}async closePromise(t){return this.closeSync(t)}closeSync(t){if(typeof this.fds.get(t)>"u")throw zg.errors.EBADF("read");this.fds.delete(t)}createReadStream(t,{encoding:r}={}){if(t===null)throw new Error("Unimplemented");let s=this.openSync(t,"r"),a=Object.assign(new pAn.PassThrough({emitClose:!0,autoDestroy:!0,destroy:(g,p)=>{clearImmediate(o),this.closeSync(s),p(g)}}),{close(){a.destroy()},bytesRead:0,path:t,pending:!1}),o=setImmediate(async()=>{try{let g=await this.readFilePromise(t,r);a.bytesRead=g.length,a.end(g)}catch(g){a.destroy(g)}});return a}createWriteStream(t,{encoding:r}={}){if(this.readOnly)throw zg.errors.EROFS(`open '${t}'`);if(t===null)throw new Error("Unimplemented");let s=[],a=this.openSync(t,"w"),o=Object.assign(new pAn.PassThrough({autoDestroy:!0,emitClose:!0,destroy:(g,p)=>{try{g?p(g):(this.writeFileSync(t,Buffer.concat(s),r),p(null))}catch(f){p(f)}finally{this.closeSync(a)}}}),{close(){o.destroy()},bytesWritten:0,path:t,pending:!1});return o.on("data",g=>{let p=Buffer.from(g);o.bytesWritten+=p.length,s.push(p)}),o}async realpathPromise(t){return this.realpathSync(t)}realpathSync(t){let r=this.resolveFilename(`lstat '${t}'`,t);if(!this.entries.has(r)&&!this.listings.has(r))throw zg.errors.ENOENT(`lstat '${t}'`);return r}async existsPromise(t){return this.existsSync(t)}existsSync(t){if(!this.ready)throw zg.errors.EBUSY(`archive closed, existsSync '${t}'`);if(this.symlinkCount===0){let s=EC.ppath.resolve(EC.PortablePath.root,t);return this.entries.has(s)||this.listings.has(s)}let r;try{r=this.resolveFilename(`stat '${t}'`,t,void 0,!1)}catch{return!1}return r===void 0?!1:this.entries.has(r)||this.listings.has(r)}async accessPromise(t,r){return this.accessSync(t,r)}accessSync(t,r=DL.constants.F_OK){let s=this.resolveFilename(`access '${t}'`,t);if(!this.entries.has(s)&&!this.listings.has(s))throw zg.errors.ENOENT(`access '${t}'`);if(this.readOnly&&r&DL.constants.W_OK)throw zg.errors.EROFS(`access '${t}'`)}async statPromise(t,r={bigint:!1}){return r.bigint?this.statSync(t,{bigint:!0}):this.statSync(t)}statSync(t,r={bigint:!1,throwIfNoEntry:!0}){let s=this.resolveFilename(`stat '${t}'`,t,void 0,r.throwIfNoEntry);if(s!==void 0){if(!this.entries.has(s)&&!this.listings.has(s)){if(r.throwIfNoEntry===!1)return;throw zg.errors.ENOENT(`stat '${t}'`)}if(t[t.length-1]==="/"&&!this.listings.has(s))throw zg.errors.ENOTDIR(`stat '${t}'`);return this.statImpl(`stat '${t}'`,s,r)}}async fstatPromise(t,r){return this.fstatSync(t,r)}fstatSync(t,r){let s=this.fds.get(t);if(typeof s>"u")throw zg.errors.EBADF("fstatSync");let{p:a}=s,o=this.resolveFilename(`stat '${a}'`,a);if(!this.entries.has(o)&&!this.listings.has(o))throw zg.errors.ENOENT(`stat '${a}'`);if(a[a.length-1]==="/"&&!this.listings.has(o))throw zg.errors.ENOTDIR(`stat '${a}'`);return this.statImpl(`fstat '${a}'`,o,r)}async lstatPromise(t,r={bigint:!1}){return r.bigint?this.lstatSync(t,{bigint:!0}):this.lstatSync(t)}lstatSync(t,r={bigint:!1,throwIfNoEntry:!0}){let s=this.resolveFilename(`lstat '${t}'`,t,!1,r.throwIfNoEntry);if(s!==void 0){if(!this.entries.has(s)&&!this.listings.has(s)){if(r.throwIfNoEntry===!1)return;throw zg.errors.ENOENT(`lstat '${t}'`)}if(t[t.length-1]==="/"&&!this.listings.has(s))throw zg.errors.ENOTDIR(`lstat '${t}'`);return this.statImpl(`lstat '${t}'`,s,r)}}statImpl(t,r,s={}){let a=this.entries.get(r);if(typeof a<"u"){let o=this.libzip.struct.statS();if(this.libzip.statIndex(this.zip,a,0,0,o)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));let p=this.stats.uid,f=this.stats.gid,m=this.libzip.struct.statSize(o)>>>0,y=512,B=Math.ceil(m/y),v=(this.libzip.struct.statMtime(o)>>>0)*1e3,G=v,T=v,O=v,X=new Date(G),U=new Date(T),le=new Date(O),ae=new Date(v),ge=this.listings.has(r)?DL.constants.S_IFDIR:this.isSymbolicLink(a)?DL.constants.S_IFLNK:DL.constants.S_IFREG,fe=ge===DL.constants.S_IFDIR?493:420,pe=ge|this.getUnixMode(a,fe)&511,he=this.libzip.struct.statCrc(o),be=Object.assign(new zg.statUtils.StatEntry,{uid:p,gid:f,size:m,blksize:y,blocks:B,atime:X,birthtime:U,ctime:le,mtime:ae,atimeMs:G,birthtimeMs:T,ctimeMs:O,mtimeMs:v,mode:pe,crc:he});return s.bigint===!0?zg.statUtils.convertToBigIntStats(be):be}if(this.listings.has(r)){let o=this.stats.uid,g=this.stats.gid,p=0,f=512,m=0,y=this.stats.mtimeMs,B=this.stats.mtimeMs,v=this.stats.mtimeMs,G=this.stats.mtimeMs,T=new Date(y),O=new Date(B),X=new Date(v),U=new Date(G),le=DL.constants.S_IFDIR|493,ge=Object.assign(new zg.statUtils.StatEntry,{uid:o,gid:g,size:p,blksize:f,blocks:m,atime:T,birthtime:O,ctime:X,mtime:U,atimeMs:y,birthtimeMs:B,ctimeMs:v,mtimeMs:G,mode:le,crc:0});return s.bigint===!0?zg.statUtils.convertToBigIntStats(ge):ge}throw new Error("Unreachable")}getUnixMode(t,r){if(this.libzip.file.getExternalAttributes(this.zip,t,0,0,this.libzip.uint08S,this.libzip.uint32S)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return this.libzip.getValue(this.libzip.uint08S,"i8")>>>0!==this.libzip.ZIP_OPSYS_UNIX?r:this.libzip.getValue(this.libzip.uint32S,"i32")>>>16}registerListing(t){let r=this.listings.get(t);if(r)return r;this.registerListing(EC.ppath.dirname(t)).add(EC.ppath.basename(t));let a=new Set;return this.listings.set(t,a),a}registerEntry(t,r){this.registerListing(EC.ppath.dirname(t)).add(EC.ppath.basename(t)),this.entries.set(t,r)}unregisterListing(t){this.listings.delete(t),this.listings.get(EC.ppath.dirname(t))?.delete(EC.ppath.basename(t))}unregisterEntry(t){this.unregisterListing(t);let r=this.entries.get(t);this.entries.delete(t),!(typeof r>"u")&&(this.fileSources.delete(r),this.isSymbolicLink(r)&&this.symlinkCount--)}deleteEntry(t,r){if(this.unregisterEntry(t),this.libzip.delete(this.zip,r)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}resolveFilename(t,r,s=!0,a=!0){if(!this.ready)throw zg.errors.EBUSY(`archive closed, ${t}`);let o=EC.ppath.resolve(EC.PortablePath.root,r);if(o==="/")return EC.PortablePath.root;let g=this.entries.get(o);if(s&&g!==void 0)if(this.symlinkCount!==0&&this.isSymbolicLink(g)){let p=this.getFileSource(g).toString();return this.resolveFilename(t,EC.ppath.resolve(EC.ppath.dirname(o),p),!0,a)}else return o;for(;;){let p=this.resolveFilename(t,EC.ppath.dirname(o),!0,a);if(p===void 0)return p;let f=this.listings.has(p),m=this.entries.has(p);if(!f&&!m){if(a===!1)return;throw zg.errors.ENOENT(t)}if(!f)throw zg.errors.ENOTDIR(t);if(o=EC.ppath.resolve(p,EC.ppath.basename(o)),!s||this.symlinkCount===0)break;let y=this.libzip.name.locate(this.zip,o.slice(1),0);if(y===-1)break;if(this.isSymbolicLink(y)){let B=this.getFileSource(y).toString();o=EC.ppath.resolve(EC.ppath.dirname(o),B)}else break}return o}allocateBuffer(t){Buffer.isBuffer(t)||(t=Buffer.from(t));let r=this.libzip.malloc(t.byteLength);if(!r)throw new Error("Couldn't allocate enough memory");return new Uint8Array(this.libzip.HEAPU8.buffer,r,t.byteLength).set(t),{buffer:r,byteLength:t.byteLength}}allocateUnattachedSource(t){let r=this.libzip.struct.errorS(),{buffer:s,byteLength:a}=this.allocateBuffer(t),o=this.libzip.source.fromUnattachedBuffer(s,a,0,1,r);if(o===0)throw this.libzip.free(r),this.makeLibzipError(r);return o}allocateSource(t){let{buffer:r,byteLength:s}=this.allocateBuffer(t),a=this.libzip.source.fromBuffer(this.zip,r,s,0,1);if(a===0)throw this.libzip.free(r),this.makeLibzipError(this.libzip.getError(this.zip));return a}setFileSource(t,r){let s=Buffer.isBuffer(r)?r:Buffer.from(r),a=EC.ppath.relative(EC.PortablePath.root,t),o=this.allocateSource(r);try{let g=this.libzip.file.add(this.zip,a,o,this.libzip.ZIP_FL_OVERWRITE);if(g===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));if(this.level!=="mixed"){let p=this.level===0?this.libzip.ZIP_CM_STORE:this.libzip.ZIP_CM_DEFLATE;if(this.libzip.file.setCompression(this.zip,g,0,p,this.level)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}return this.fileSources.set(g,s),g}catch(g){throw this.libzip.source.free(o),g}}isSymbolicLink(t){if(this.symlinkCount===0)return!1;if(this.libzip.file.getExternalAttributes(this.zip,t,0,0,this.libzip.uint08S,this.libzip.uint32S)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return this.libzip.getValue(this.libzip.uint08S,"i8")>>>0!==this.libzip.ZIP_OPSYS_UNIX?!1:(this.libzip.getValue(this.libzip.uint32S,"i32")>>>16&DL.constants.S_IFMT)===DL.constants.S_IFLNK}getFileSource(t,r={asyncDecompress:!1}){let s=this.fileSources.get(t);if(typeof s<"u")return s;let a=this.libzip.struct.statS();if(this.libzip.statIndex(this.zip,t,0,0,a)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));let g=this.libzip.struct.statCompSize(a),p=this.libzip.struct.statCompMethod(a),f=this.libzip.malloc(g);try{let m=this.libzip.fopenIndex(this.zip,t,0,this.libzip.ZIP_FL_COMPRESSED);if(m===0)throw this.makeLibzipError(this.libzip.getError(this.zip));try{let y=this.libzip.fread(m,f,g,0);if(y===-1)throw this.makeLibzipError(this.libzip.file.getError(m));if(yg)throw new Error("Overread");let B=this.libzip.HEAPU8.subarray(f,f+g),v=Buffer.from(B);if(p===0)return this.fileSources.set(t,v),v;if(r.asyncDecompress)return new Promise((G,T)=>{fAn.default.inflateRaw(v,(O,X)=>{O?T(O):(this.fileSources.set(t,X),G(X))})});{let G=fAn.default.inflateRawSync(v);return this.fileSources.set(t,G),G}}finally{this.libzip.fclose(m)}}finally{this.libzip.free(f)}}async fchmodPromise(t,r){return this.chmodPromise(this.fdToPath(t,"fchmod"),r)}fchmodSync(t,r){return this.chmodSync(this.fdToPath(t,"fchmodSync"),r)}async chmodPromise(t,r){return this.chmodSync(t,r)}chmodSync(t,r){if(this.readOnly)throw zg.errors.EROFS(`chmod '${t}'`);r&=493;let s=this.resolveFilename(`chmod '${t}'`,t,!1),a=this.entries.get(s);if(typeof a>"u")throw new Error(`Assertion failed: The entry should have been registered (${s})`);let g=this.getUnixMode(a,DL.constants.S_IFREG|0)&-512|r;if(this.libzip.file.setExternalAttributes(this.zip,a,0,0,this.libzip.ZIP_OPSYS_UNIX,g<<16)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}async fchownPromise(t,r,s){return this.chownPromise(this.fdToPath(t,"fchown"),r,s)}fchownSync(t,r,s){return this.chownSync(this.fdToPath(t,"fchownSync"),r,s)}async chownPromise(t,r,s){return this.chownSync(t,r,s)}chownSync(t,r,s){throw new Error("Unimplemented")}async renamePromise(t,r){return this.renameSync(t,r)}renameSync(t,r){throw new Error("Unimplemented")}async copyFilePromise(t,r,s){let{indexSource:a,indexDest:o,resolvedDestP:g}=this.prepareCopyFile(t,r,s),p=await this.getFileSource(a,{asyncDecompress:!0}),f=this.setFileSource(g,p);f!==o&&this.registerEntry(g,f)}copyFileSync(t,r,s=0){let{indexSource:a,indexDest:o,resolvedDestP:g}=this.prepareCopyFile(t,r,s),p=this.getFileSource(a),f=this.setFileSource(g,p);f!==o&&this.registerEntry(g,f)}prepareCopyFile(t,r,s=0){if(this.readOnly)throw zg.errors.EROFS(`copyfile '${t} -> '${r}'`);if(s&DL.constants.COPYFILE_FICLONE_FORCE)throw zg.errors.ENOSYS("unsupported clone operation",`copyfile '${t}' -> ${r}'`);let a=this.resolveFilename(`copyfile '${t} -> ${r}'`,t),o=this.entries.get(a);if(typeof o>"u")throw zg.errors.EINVAL(`copyfile '${t}' -> '${r}'`);let g=this.resolveFilename(`copyfile '${t}' -> ${r}'`,r),p=this.entries.get(g);if(s&(DL.constants.COPYFILE_EXCL|DL.constants.COPYFILE_FICLONE_FORCE)&&typeof p<"u")throw zg.errors.EEXIST(`copyfile '${t}' -> '${r}'`);return{indexSource:o,resolvedDestP:g,indexDest:p}}async appendFilePromise(t,r,s){if(this.readOnly)throw zg.errors.EROFS(`open '${t}'`);return typeof s>"u"?s={flag:"a"}:typeof s=="string"?s={flag:"a",encoding:s}:typeof s.flag>"u"&&(s={flag:"a",...s}),this.writeFilePromise(t,r,s)}appendFileSync(t,r,s={}){if(this.readOnly)throw zg.errors.EROFS(`open '${t}'`);return typeof s>"u"?s={flag:"a"}:typeof s=="string"?s={flag:"a",encoding:s}:typeof s.flag>"u"&&(s={flag:"a",...s}),this.writeFileSync(t,r,s)}fdToPath(t,r){let s=this.fds.get(t)?.p;if(typeof s>"u")throw zg.errors.EBADF(r);return s}async writeFilePromise(t,r,s){let{encoding:a,mode:o,index:g,resolvedP:p}=this.prepareWriteFile(t,s);g!==void 0&&typeof s=="object"&&s.flag&&s.flag.includes("a")&&(r=Buffer.concat([await this.getFileSource(g,{asyncDecompress:!0}),Buffer.from(r)])),a!==null&&(r=r.toString(a));let f=this.setFileSource(p,r);f!==g&&this.registerEntry(p,f),o!==null&&await this.chmodPromise(p,o)}writeFileSync(t,r,s){let{encoding:a,mode:o,index:g,resolvedP:p}=this.prepareWriteFile(t,s);g!==void 0&&typeof s=="object"&&s.flag&&s.flag.includes("a")&&(r=Buffer.concat([this.getFileSource(g),Buffer.from(r)])),a!==null&&(r=r.toString(a));let f=this.setFileSource(p,r);f!==g&&this.registerEntry(p,f),o!==null&&this.chmodSync(p,o)}prepareWriteFile(t,r){if(typeof t=="number"&&(t=this.fdToPath(t,"read")),this.readOnly)throw zg.errors.EROFS(`open '${t}'`);let s=this.resolveFilename(`open '${t}'`,t);if(this.listings.has(s))throw zg.errors.EISDIR(`open '${t}'`);let a=null,o=null;typeof r=="string"?a=r:typeof r=="object"&&({encoding:a=null,mode:o=null}=r);let g=this.entries.get(s);return{encoding:a,mode:o,resolvedP:s,index:g}}async unlinkPromise(t){return this.unlinkSync(t)}unlinkSync(t){if(this.readOnly)throw zg.errors.EROFS(`unlink '${t}'`);let r=this.resolveFilename(`unlink '${t}'`,t);if(this.listings.has(r))throw zg.errors.EISDIR(`unlink '${t}'`);let s=this.entries.get(r);if(typeof s>"u")throw zg.errors.EINVAL(`unlink '${t}'`);this.deleteEntry(r,s)}async utimesPromise(t,r,s){return this.utimesSync(t,r,s)}utimesSync(t,r,s){if(this.readOnly)throw zg.errors.EROFS(`utimes '${t}'`);let a=this.resolveFilename(`utimes '${t}'`,t);this.utimesImpl(a,s)}async lutimesPromise(t,r,s){return this.lutimesSync(t,r,s)}lutimesSync(t,r,s){if(this.readOnly)throw zg.errors.EROFS(`lutimes '${t}'`);let a=this.resolveFilename(`utimes '${t}'`,t,!1);this.utimesImpl(a,s)}utimesImpl(t,r){this.listings.has(t)&&(this.entries.has(t)||this.hydrateDirectory(t));let s=this.entries.get(t);if(s===void 0)throw new Error("Unreachable");if(this.libzip.file.setMtime(this.zip,s,0,h5s(r),0)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}async mkdirPromise(t,r){return this.mkdirSync(t,r)}mkdirSync(t,{mode:r=493,recursive:s=!1}={}){if(s)return this.mkdirpSync(t,{chmod:r});if(this.readOnly)throw zg.errors.EROFS(`mkdir '${t}'`);let a=this.resolveFilename(`mkdir '${t}'`,t);if(this.entries.has(a)||this.listings.has(a))throw zg.errors.EEXIST(`mkdir '${t}'`);this.hydrateDirectory(a),this.chmodSync(a,r)}async rmdirPromise(t,r){return this.rmdirSync(t,r)}rmdirSync(t,{recursive:r=!1}={}){if(this.readOnly)throw zg.errors.EROFS(`rmdir '${t}'`);if(r){this.removeSync(t);return}let s=this.resolveFilename(`rmdir '${t}'`,t),a=this.listings.get(s);if(!a)throw zg.errors.ENOTDIR(`rmdir '${t}'`);if(a.size>0)throw zg.errors.ENOTEMPTY(`rmdir '${t}'`);let o=this.entries.get(s);if(typeof o>"u")throw zg.errors.EINVAL(`rmdir '${t}'`);this.deleteEntry(t,o)}async rmPromise(t,r){return this.rmSync(t,r)}rmSync(t,{recursive:r=!1}={}){if(this.readOnly)throw zg.errors.EROFS(`rm '${t}'`);if(r){this.removeSync(t);return}let s=this.resolveFilename(`rm '${t}'`,t),a=this.listings.get(s);if(!a)throw zg.errors.ENOTDIR(`rm '${t}'`);if(a.size>0)throw zg.errors.ENOTEMPTY(`rm '${t}'`);let o=this.entries.get(s);if(typeof o>"u")throw zg.errors.EINVAL(`rm '${t}'`);this.deleteEntry(t,o)}hydrateDirectory(t){let r=this.libzip.dir.add(this.zip,EC.ppath.relative(EC.PortablePath.root,t));if(r===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return this.registerListing(t),this.registerEntry(t,r),r}async linkPromise(t,r){return this.linkSync(t,r)}linkSync(t,r){throw zg.errors.EOPNOTSUPP(`link '${t}' -> '${r}'`)}async symlinkPromise(t,r){return this.symlinkSync(t,r)}symlinkSync(t,r){if(this.readOnly)throw zg.errors.EROFS(`symlink '${t}' -> '${r}'`);let s=this.resolveFilename(`symlink '${t}' -> '${r}'`,r);if(this.listings.has(s))throw zg.errors.EISDIR(`symlink '${t}' -> '${r}'`);if(this.entries.has(s))throw zg.errors.EEXIST(`symlink '${t}' -> '${r}'`);let a=this.setFileSource(s,t);if(this.registerEntry(s,a),this.libzip.file.setExternalAttributes(this.zip,a,0,0,this.libzip.ZIP_OPSYS_UNIX,(DL.constants.S_IFLNK|511)<<16)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));this.symlinkCount+=1}async readFilePromise(t,r){typeof r=="object"&&(r=r?r.encoding:void 0);let s=await this.readFileBuffer(t,{asyncDecompress:!0});return r?s.toString(r):s}readFileSync(t,r){typeof r=="object"&&(r=r?r.encoding:void 0);let s=this.readFileBuffer(t);return r?s.toString(r):s}readFileBuffer(t,r={asyncDecompress:!1}){typeof t=="number"&&(t=this.fdToPath(t,"read"));let s=this.resolveFilename(`open '${t}'`,t);if(!this.entries.has(s)&&!this.listings.has(s))throw zg.errors.ENOENT(`open '${t}'`);if(t[t.length-1]==="/"&&!this.listings.has(s))throw zg.errors.ENOTDIR(`open '${t}'`);if(this.listings.has(s))throw zg.errors.EISDIR("read");let a=this.entries.get(s);if(a===void 0)throw new Error("Unreachable");return this.getFileSource(a,r)}async readdirPromise(t,r){return this.readdirSync(t,r)}readdirSync(t,r){let s=this.resolveFilename(`scandir '${t}'`,t);if(!this.entries.has(s)&&!this.listings.has(s))throw zg.errors.ENOENT(`scandir '${t}'`);let a=this.listings.get(s);if(!a)throw zg.errors.ENOTDIR(`scandir '${t}'`);if(r?.recursive)if(r?.withFileTypes){let o=Array.from(a,g=>Object.assign(this.statImpl("lstat",EC.ppath.join(t,g)),{name:g,path:EC.PortablePath.dot}));for(let g of o){if(!g.isDirectory())continue;let p=EC.ppath.join(g.path,g.name),f=this.listings.get(EC.ppath.join(s,p));for(let m of f)o.push(Object.assign(this.statImpl("lstat",EC.ppath.join(t,p,m)),{name:m,path:p}))}return o}else{let o=[...a];for(let g of o){let p=this.listings.get(EC.ppath.join(s,g));if(!(typeof p>"u"))for(let f of p)o.push(EC.ppath.join(g,f))}return o}else return r?.withFileTypes?Array.from(a,o=>Object.assign(this.statImpl("lstat",EC.ppath.join(t,o)),{name:o,path:void 0})):[...a]}async readlinkPromise(t){let r=this.prepareReadlink(t);return(await this.getFileSource(r,{asyncDecompress:!0})).toString()}readlinkSync(t){let r=this.prepareReadlink(t);return this.getFileSource(r).toString()}prepareReadlink(t){let r=this.resolveFilename(`readlink '${t}'`,t,!1);if(!this.entries.has(r)&&!this.listings.has(r))throw zg.errors.ENOENT(`readlink '${t}'`);if(t[t.length-1]==="/"&&!this.listings.has(r))throw zg.errors.ENOTDIR(`open '${t}'`);if(this.listings.has(r))throw zg.errors.EINVAL(`readlink '${t}'`);let s=this.entries.get(r);if(s===void 0)throw new Error("Unreachable");if(!this.isSymbolicLink(s))throw zg.errors.EINVAL(`readlink '${t}'`);return s}async truncatePromise(t,r=0){let s=this.resolveFilename(`open '${t}'`,t),a=this.entries.get(s);if(typeof a>"u")throw zg.errors.EINVAL(`open '${t}'`);let o=await this.getFileSource(a,{asyncDecompress:!0}),g=Buffer.alloc(r,0);return o.copy(g),await this.writeFilePromise(t,g)}truncateSync(t,r=0){let s=this.resolveFilename(`open '${t}'`,t),a=this.entries.get(s);if(typeof a>"u")throw zg.errors.EINVAL(`open '${t}'`);let o=this.getFileSource(a),g=Buffer.alloc(r,0);return o.copy(g),this.writeFileSync(t,g)}async ftruncatePromise(t,r){return this.truncatePromise(this.fdToPath(t,"ftruncate"),r)}ftruncateSync(t,r){return this.truncateSync(this.fdToPath(t,"ftruncateSync"),r)}watch(t,r,s){let a;switch(typeof r){case"function":case"string":case"undefined":a=!0;break;default:({persistent:a=!0}=r);break}if(!a)return{on:()=>{},close:()=>{}};let o=setInterval(()=>{},24*60*60*1e3);return{on:()=>{},close:()=>{clearInterval(o)}}}watchFile(t,r,s){let a=EC.ppath.resolve(EC.PortablePath.root,t);return(0,G4t.watchFile)(this,a,r,s)}unwatchFile(t,r){let s=EC.ppath.resolve(EC.PortablePath.root,t);return(0,G4t.unwatchFile)(this,s,r)}};wJ.ZipFS=F4t});var IAn=z(L4t=>{"use strict";Object.defineProperty(L4t,"__esModule",{value:!0});L4t.mountMemoryDrive=E5s;var _5s=(Ma(),Ai(Oa)),Hit=Ro(),y5s=_5s.__importDefault(Dt("fs")),b5s=Z4t();function E5s(e,t,r=Buffer.alloc(0),s){let a=new b5s.ZipFS(r),o=B=>B===t||B.startsWith(`${t}/`)?B.slice(0,t.length):null,g=async(B,v)=>()=>a,p=(B,v)=>a,f={...e},m=new Hit.NodeFS(f),y=new Hit.MountFS({baseFs:m,getMountPoint:o,factoryPromise:g,factorySync:p,magicByte:21,maxAge:1/0,typeCheck:s?.typeCheck});return(0,Hit.patchFs)(y5s.default,new Hit.PosixFS(y)),a}});var mAn=z(jbe=>{"use strict";Object.defineProperty(jbe,"__esModule",{value:!0});jbe.mountMemoryDrive=void 0;var CAn=(Ma(),Ai(Oa));CAn.__exportStar(dAn(),jbe);CAn.__exportStar(Z4t(),jbe);var B5s=IAn();Object.defineProperty(jbe,"mountMemoryDrive",{enumerable:!0,get:function(){return B5s.mountMemoryDrive}})});var SJ=z(lVe=>{"use strict";Object.defineProperty(lVe,"__esModule",{value:!0});lVe.getLibzipSync=w5s;lVe.getLibzipPromise=T5s;var hAn=(Ma(),Ai(Oa)),V4t=w4t(),v5s=hAn.__importDefault(uAn()),S5s=gAn();hAn.__exportStar(mAn(),lVe);(0,V4t.setFactory)(()=>{let e=(0,v5s.default)();return(0,S5s.makeInterface)(e)});function w5s(){return(0,V4t.getInstance)()}async function T5s(){return(0,V4t.getInstance)()}});var _An=z(W4t=>{"use strict";Object.defineProperty(W4t,"__esModule",{value:!0});var N5s=Ro(),Xit=(Fl(),Ai(dg)),R5s=uVe(),Jit=class extends Xit.Command{constructor(){super(...arguments),this.cwd=Xit.Option.String("--cwd",process.cwd(),{description:"The directory to run the command in"}),this.commandName=Xit.Option.String(),this.args=Xit.Option.Proxy()}async execute(){let t=this.args.length>0?`${this.commandName} ${this.args.join(" ")}`:this.commandName;return await(0,R5s.execute)(t,[],{cwd:N5s.npath.toPortablePath(this.cwd),stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})}};Jit.usage={description:"run a command using yarn's portable shell",details:` +`)}`}}};f_.RequestError=$v;var bit=class extends $v{constructor(t){super(`Redirected ${t.options.maxRedirects} times. Aborting.`,{},t),this.name="MaxRedirectsError",this.code="ERR_TOO_MANY_REDIRECTS"}};f_.MaxRedirectsError=bit;var Eit=class extends $v{constructor(t){super(`Response code ${t.statusCode} (${t.statusMessage})`,{},t.request),this.name="HTTPError",this.code="ERR_NON_2XX_3XX_RESPONSE"}};f_.HTTPError=Eit;var Bit=class extends $v{constructor(t,r){super(t.message,t,r),this.name="CacheError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_CACHE_ACCESS":this.code}};f_.CacheError=Bit;var vit=class extends $v{constructor(t,r){super(t.message,t,r),this.name="UploadError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_UPLOAD":this.code}};f_.UploadError=vit;var Sit=class extends $v{constructor(t,r,s){super(t.message,t,s),this.name="TimeoutError",this.event=t.event,this.timings=r}};f_.TimeoutError=Sit;var rVe=class extends $v{constructor(t,r){super(t.message,t,r),this.name="ReadError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_READING_RESPONSE_STREAM":this.code}};f_.ReadError=rVe;var wit=class extends $v{constructor(t){super(`Unsupported protocol "${t.url.protocol}"`,{},t),this.name="UnsupportedProtocolError",this.code="ERR_UNSUPPORTED_PROTOCOL"}};f_.UnsupportedProtocolError=wit;var UMs=["socket","connect","continue","information","upgrade","timeout"],Tit=class extends Cgn.Duplex{constructor(t,r={},s){super({autoDestroy:!1,highWaterMark:0}),this[Xbe]=0,this[Ube]=0,this.requestInitialized=!1,this[hit]=new Set,this.redirects=[],this[Kbe]=!1,this[_it]=!1,this[tVe]=[],this.retryCount=0,this._progressCallbacks=[];let a=()=>this._unlockWrite(),o=()=>this._lockWrite();this.on("pipe",m=>{m.prependListener("data",a),m.on("data",o),m.prependListener("end",a),m.on("end",o)}),this.on("unpipe",m=>{m.off("data",a),m.off("data",o),m.off("end",a),m.off("end",o)}),this.on("pipe",m=>{m instanceof o4t.IncomingMessage&&(this.options.headers={...m.headers,...this.options.headers})});let{json:g,body:p,form:f}=r;if((g||p||f)&&this._lockWrite(),f_.kIsNormalizedAlready in r)this.options=r;else try{this.options=this.constructor.normalizeArguments(t,r,s)}catch(m){ga.default.nodeStream(r.body)&&r.body.destroy(),this.destroy(m);return}(async()=>{var m;try{this.options.body instanceof wMs.ReadStream&&await YMs(this.options.body);let{url:y}=this.options;if(!y)throw new TypeError("Missing `url` property");if(this.requestUrl=y.toString(),decodeURI(this.requestUrl),await this._finalizeBody(),await this._makeRequest(),this.destroyed){(m=this[RD])===null||m===void 0||m.destroy();return}for(let B of this[tVe])B();this[tVe].length=0,this.requestInitialized=!0}catch(y){if(y instanceof $v){this._beforeError(y);return}this.destroyed||this.destroy(y)}})()}static normalizeArguments(t,r,s){var a,o,g,p,f;let m=r;if(ga.default.object(t)&&!ga.default.urlInstance(t))r={...s,...t,...r};else{if(t&&r&&r.url!==void 0)throw new TypeError("The `url` option is mutually exclusive with the `input` argument");r={...s,...r},t!==void 0&&(r.url=t),ga.default.urlInstance(r.url)&&(r.url=new _ne.URL(r.url.toString()))}if(r.cache===!1&&(r.cache=void 0),r.dnsCache===!1&&(r.dnsCache=void 0),ga.assert.any([ga.default.string,ga.default.undefined],r.method),ga.assert.any([ga.default.object,ga.default.undefined],r.headers),ga.assert.any([ga.default.string,ga.default.urlInstance,ga.default.undefined],r.prefixUrl),ga.assert.any([ga.default.object,ga.default.undefined],r.cookieJar),ga.assert.any([ga.default.object,ga.default.string,ga.default.undefined],r.searchParams),ga.assert.any([ga.default.object,ga.default.string,ga.default.undefined],r.cache),ga.assert.any([ga.default.object,ga.default.number,ga.default.undefined],r.timeout),ga.assert.any([ga.default.object,ga.default.undefined],r.context),ga.assert.any([ga.default.object,ga.default.undefined],r.hooks),ga.assert.any([ga.default.boolean,ga.default.undefined],r.decompress),ga.assert.any([ga.default.boolean,ga.default.undefined],r.ignoreInvalidCookies),ga.assert.any([ga.default.boolean,ga.default.undefined],r.followRedirect),ga.assert.any([ga.default.number,ga.default.undefined],r.maxRedirects),ga.assert.any([ga.default.boolean,ga.default.undefined],r.throwHttpErrors),ga.assert.any([ga.default.boolean,ga.default.undefined],r.http2),ga.assert.any([ga.default.boolean,ga.default.undefined],r.allowGetBody),ga.assert.any([ga.default.string,ga.default.undefined],r.localAddress),ga.assert.any([Egn.isDnsLookupIpVersion,ga.default.undefined],r.dnsLookupIpVersion),ga.assert.any([ga.default.object,ga.default.undefined],r.https),ga.assert.any([ga.default.boolean,ga.default.undefined],r.rejectUnauthorized),r.https&&(ga.assert.any([ga.default.boolean,ga.default.undefined],r.https.rejectUnauthorized),ga.assert.any([ga.default.function_,ga.default.undefined],r.https.checkServerIdentity),ga.assert.any([ga.default.string,ga.default.object,ga.default.array,ga.default.undefined],r.https.certificateAuthority),ga.assert.any([ga.default.string,ga.default.object,ga.default.array,ga.default.undefined],r.https.key),ga.assert.any([ga.default.string,ga.default.object,ga.default.array,ga.default.undefined],r.https.certificate),ga.assert.any([ga.default.string,ga.default.undefined],r.https.passphrase),ga.assert.any([ga.default.string,ga.default.buffer,ga.default.array,ga.default.undefined],r.https.pfx)),ga.assert.any([ga.default.object,ga.default.undefined],r.cacheOptions),ga.default.string(r.method)?r.method=r.method.toUpperCase():r.method="GET",r.headers===s?.headers?r.headers={...r.headers}:r.headers=kMs({...s?.headers,...r.headers}),"slashes"in r)throw new TypeError("The legacy `url.Url` has been deprecated. Use `URL` instead.");if("auth"in r)throw new TypeError("Parameter `auth` is deprecated. Use `username` / `password` instead.");if("searchParams"in r&&r.searchParams&&r.searchParams!==s?.searchParams){let k;if(ga.default.string(r.searchParams)||r.searchParams instanceof _ne.URLSearchParams)k=new _ne.URLSearchParams(r.searchParams);else{MMs(r.searchParams),k=new _ne.URLSearchParams;for(let T in r.searchParams){let O=r.searchParams[T];O===null?k.append(T,""):O!==void 0&&k.append(T,O)}}(a=s?.searchParams)===null||a===void 0||a.forEach((T,O)=>{k.has(O)||k.append(O,T)}),r.searchParams=k}if(r.username=(o=r.username)!==null&&o!==void 0?o:"",r.password=(g=r.password)!==null&&g!==void 0?g:"",ga.default.undefined(r.prefixUrl)?r.prefixUrl=(p=s?.prefixUrl)!==null&&p!==void 0?p:"":(r.prefixUrl=r.prefixUrl.toString(),r.prefixUrl!==""&&!r.prefixUrl.endsWith("/")&&(r.prefixUrl+="/")),ga.default.string(r.url)){if(r.url.startsWith("/"))throw new Error("`input` must not start with a slash when using `prefixUrl`");r.url=bgn.default(r.prefixUrl+r.url,r)}else(ga.default.undefined(r.url)&&r.prefixUrl!==""||r.protocol)&&(r.url=bgn.default(r.prefixUrl,r));if(r.url){"port"in r&&delete r.port;let{prefixUrl:k}=r;Object.defineProperty(r,"prefixUrl",{set:O=>{let X=r.url;if(!X.href.startsWith(O))throw new Error(`Cannot change \`prefixUrl\` from ${k} to ${O}: ${X.href}`);r.url=new _ne.URL(O+X.href.slice(k.length)),k=O},get:()=>k});let{protocol:T}=r.url;if(T==="unix:"&&(T="http:",r.url=new _ne.URL(`http://unix${r.url.pathname}${r.url.search}`)),r.searchParams&&(r.url.search=r.searchParams.toString()),T!=="http:"&&T!=="https:")throw new wit(r);r.username===""?r.username=r.url.username:r.url.username=r.username,r.password===""?r.password=r.url.password:r.url.password=r.password}let{cookieJar:y}=r;if(y){let{setCookie:k,getCookieString:T}=y;ga.assert.function_(k),ga.assert.function_(T),k.length===4&&T.length===0&&(k=Ign.promisify(k.bind(r.cookieJar)),T=Ign.promisify(T.bind(r.cookieJar)),r.cookieJar={setCookie:k,getCookieString:T})}let{cache:B}=r;if(B&&(l4t.has(B)||l4t.set(B,new hgn((k,T)=>{let O=k[RD](k,T);return ga.default.promise(O)&&(O.once=(X,U)=>{if(X==="error")O.catch(U);else if(X==="abort")(async()=>{try{(await O).once("abort",U)}catch{}})();else throw new Error(`Unknown HTTP2 promise event: ${X}`);return O}),O},B))),r.cacheOptions={...r.cacheOptions},r.dnsCache===!0)a4t||(a4t=new RMs.default),r.dnsCache=a4t;else if(!ga.default.undefined(r.dnsCache)&&!r.dnsCache.lookup)throw new TypeError(`Parameter \`dnsCache\` must be a CacheableLookup instance or a boolean, got ${ga.default(r.dnsCache)}`);ga.default.number(r.timeout)?r.timeout={request:r.timeout}:s&&r.timeout!==s.timeout?r.timeout={...s.timeout,...r.timeout}:r.timeout={...r.timeout},r.context||(r.context={});let v=r.hooks===s?.hooks;r.hooks={...r.hooks};for(let k of f_.knownHookEvents)if(k in r.hooks)if(ga.default.array(r.hooks[k]))r.hooks[k]=[...r.hooks[k]];else throw new TypeError(`Parameter \`${k}\` must be an Array, got ${ga.default(r.hooks[k])}`);else r.hooks[k]=[];if(s&&!v)for(let k of f_.knownHookEvents)s.hooks[k].length>0&&(r.hooks[k]=[...s.hooks[k],...r.hooks[k]]);if("family"in r&&yne.default('"options.family" was never documented, please use "options.dnsLookupIpVersion"'),s?.https&&(r.https={...s.https,...r.https}),"rejectUnauthorized"in r&&yne.default('"options.rejectUnauthorized" is now deprecated, please use "options.https.rejectUnauthorized"'),"checkServerIdentity"in r&&yne.default('"options.checkServerIdentity" was never documented, please use "options.https.checkServerIdentity"'),"ca"in r&&yne.default('"options.ca" was never documented, please use "options.https.certificateAuthority"'),"key"in r&&yne.default('"options.key" was never documented, please use "options.https.key"'),"cert"in r&&yne.default('"options.cert" was never documented, please use "options.https.certificate"'),"passphrase"in r&&yne.default('"options.passphrase" was never documented, please use "options.https.passphrase"'),"pfx"in r&&yne.default('"options.pfx" was never documented, please use "options.https.pfx"'),"followRedirects"in r)throw new TypeError("The `followRedirects` option does not exist. Use `followRedirect` instead.");if(r.agent){for(let k in r.agent)if(k!=="http"&&k!=="https"&&k!=="http2")throw new TypeError(`Expected the \`options.agent\` properties to be \`http\`, \`https\` or \`http2\`, got \`${k}\``)}return r.maxRedirects=(f=r.maxRedirects)!==null&&f!==void 0?f:0,f_.setNonEnumerableProperties([s,m],r),PMs.default(r,s)}_lockWrite(){let t=()=>{throw new TypeError("The payload has been already provided")};this.write=t,this.end=t}_unlockWrite(){this.write=super.write,this.end=super.end}async _finalizeBody(){let{options:t}=this,{headers:r}=t,s=!ga.default.undefined(t.form),a=!ga.default.undefined(t.json),o=!ga.default.undefined(t.body),g=s||a||o,p=f_.withoutBody.has(t.method)&&!(t.method==="GET"&&t.allowGetBody);if(this._cannotHaveBody=p,g){if(p)throw new TypeError(`The \`${t.method}\` method cannot be used with a body`);if([o,s,a].filter(f=>f).length>1)throw new TypeError("The `body`, `json` and `form` options are mutually exclusive");if(o&&!(t.body instanceof Cgn.Readable)&&!ga.default.string(t.body)&&!ga.default.buffer(t.body)&&!_gn.default(t.body))throw new TypeError("The `body` option must be a stream.Readable, string or Buffer");if(s&&!ga.default.object(t.form))throw new TypeError("The `form` option must be an Object");{let f=!ga.default.string(r["content-type"]);o?(_gn.default(t.body)&&f&&(r["content-type"]=`multipart/form-data; boundary=${t.body.getBoundary()}`),this[bne]=t.body):s?(f&&(r["content-type"]="application/x-www-form-urlencoded"),this[bne]=new _ne.URLSearchParams(t.form).toString()):(f&&(r["content-type"]="application/json"),this[bne]=t.stringifyJson(t.json));let m=await GMs.default(this[bne],t.headers);ga.default.undefined(r["content-length"])&&ga.default.undefined(r["transfer-encoding"])&&!p&&!ga.default.undefined(m)&&(r["content-length"]=String(m))}}else p?this._lockWrite():this._unlockWrite();this[Jbe]=Number(r["content-length"])||void 0}async _onResponseBase(t){let{options:r}=this,{url:s}=r;this[wgn]=t,r.decompress&&(t=DMs(t));let a=t.statusCode,o=t;o.statusMessage=o.statusMessage?o.statusMessage:mgn.STATUS_CODES[a],o.url=r.url.toString(),o.requestUrl=this.requestUrl,o.redirectUrls=this.redirects,o.request=this,o.isFromCache=t.fromCache||!1,o.ip=this.ip,o.retryCount=this.retryCount,this[vgn]=o.isFromCache,this[Ybe]=Number(t.headers["content-length"])||void 0,this[yit]=t,t.once("end",()=>{this[Ybe]=this[Xbe],this.emit("downloadProgress",this.downloadProgress)}),t.once("error",p=>{t.destroy(),this._beforeError(new rVe(p,this))}),t.once("aborted",()=>{this._beforeError(new rVe({name:"Error",message:"The server aborted pending request",code:"ECONNRESET"},this))}),this.emit("downloadProgress",this.downloadProgress);let g=t.headers["set-cookie"];if(ga.default.object(r.cookieJar)&&g){let p=g.map(async f=>r.cookieJar.setCookie(f,s.toString()));r.ignoreInvalidCookies&&(p=p.map(async f=>f.catch(()=>{})));try{await Promise.all(p)}catch(f){this._beforeError(f);return}}if(r.followRedirect&&t.headers.location&&XMs.has(a)){if(t.resume(),this[RD]&&(this[c4t](),delete this[RD],this[Bgn]()),(a===303&&r.method!=="GET"&&r.method!=="HEAD"||!r.methodRewriting)&&(r.method="GET","body"in r&&delete r.body,"json"in r&&delete r.json,"form"in r&&delete r.form,this[bne]=void 0,delete r.headers["content-length"]),this.redirects.length>=r.maxRedirects){this._beforeError(new bit(this));return}try{let B=function(v){return v.protocol==="unix:"||v.hostname==="unix"},f=Buffer.from(t.headers.location,"binary").toString(),m=new _ne.URL(f,s),y=m.toString();if(decodeURI(y),!B(s)&&B(m)){this._beforeError(new $v("Cannot redirect to UNIX socket",{},this));return}m.hostname!==s.hostname||m.port!==s.port?("host"in r.headers&&delete r.headers.host,"cookie"in r.headers&&delete r.headers.cookie,"authorization"in r.headers&&delete r.headers.authorization,(r.username||r.password)&&(r.username="",r.password="")):(m.username=r.username,m.password=r.password),this.redirects.push(y),r.url=m;for(let v of r.hooks.beforeRedirect)await v(r,o);this.emit("redirect",o,r),await this._makeRequest()}catch(f){this._beforeError(f);return}return}if(r.isStream&&r.throwHttpErrors&&!WMs.isResponseOk(o)){this._beforeError(new Eit(o));return}t.on("readable",()=>{this[_it]&&this._read()}),this.on("resume",()=>{t.resume()}),this.on("pause",()=>{t.pause()}),t.once("end",()=>{this.push(null)}),this.emit("response",t);for(let p of this[hit])if(!p.headersSent){for(let f in t.headers){let m=r.decompress?f!=="content-encoding":!0,y=t.headers[f];m&&p.setHeader(f,y)}p.statusCode=a}}async _onResponse(t){try{await this._onResponseBase(t)}catch(r){this._beforeError(r)}}_onRequest(t){let{options:r}=this,{timeout:s,url:a}=r;NMs.default(t),this[c4t]=ygn.default(t,s,a);let o=r.cache?"cacheableResponse":"response";t.once(o,f=>{this._onResponse(f)}),t.once("error",f=>{var m;t.destroy(),(m=t.res)===null||m===void 0||m.removeAllListeners("end"),f=f instanceof ygn.TimeoutError?new Sit(f,this.timings,this):new $v(f.message,f,this),this._beforeError(f)}),this[Bgn]=FMs.default(t,this,UMs),this[RD]=t,this.emit("uploadProgress",this.uploadProgress);let g=this[bne],p=this.redirects.length===0?this:t;ga.default.nodeStream(g)?(g.pipe(p),g.once("error",f=>{this._beforeError(new vit(f,this))})):(this._unlockWrite(),ga.default.undefined(g)?(this._cannotHaveBody||this._noPipe)&&(p.end(),this._lockWrite()):(this._writeRequest(g,void 0,()=>{}),p.end(),this._lockWrite())),this.emit("request",t)}async _createCacheableRequest(t,r){return new Promise((s,a)=>{Object.assign(r,ZMs.default(t)),delete r.url;let o,g=l4t.get(r.cache)(r,async p=>{p._readableState.autoDestroy=!1,o&&(await o).emit("cacheableResponse",p),s(p)});r.url=t,g.once("error",a),g.once("request",async p=>{o=p,s(o)})})}async _makeRequest(){var t,r,s,a,o;let{options:g}=this,{headers:p}=g;for(let U in p)if(ga.default.undefined(p[U]))delete p[U];else if(ga.default.null_(p[U]))throw new TypeError(`Use \`undefined\` instead of \`null\` to delete the \`${U}\` header`);if(g.decompress&&ga.default.undefined(p["accept-encoding"])&&(p["accept-encoding"]=QMs?"gzip, deflate, br":"gzip, deflate"),g.cookieJar){let U=await g.cookieJar.getCookieString(g.url.toString());ga.default.nonEmptyString(U)&&(g.headers.cookie=U)}for(let U of g.hooks.beforeRequest){let le=await U(g);if(!ga.default.undefined(le)){g.request=()=>le;break}}g.body&&this[bne]!==g.body&&(this[bne]=g.body);let{agent:f,request:m,timeout:y,url:B}=g;if(g.dnsCache&&!("lookup"in g)&&(g.lookup=g.dnsCache.lookup),B.hostname==="unix"){let U=/(?.+?):(?.+)/.exec(`${B.pathname}${B.search}`);if(U?.groups){let{socketPath:le,path:ae}=U.groups;Object.assign(g,{socketPath:le,path:ae,host:""})}}let v=B.protocol==="https:",k;g.http2?k=xMs.auto:k=v?TMs.request:mgn.request;let T=(t=g.request)!==null&&t!==void 0?t:k,O=g.cache?this._createCacheableRequest:T;f&&!g.http2&&(g.agent=f[v?"https":"http"]),g[RD]=T,delete g.request,delete g.timeout;let X=g;if(X.shared=(r=g.cacheOptions)===null||r===void 0?void 0:r.shared,X.cacheHeuristic=(s=g.cacheOptions)===null||s===void 0?void 0:s.cacheHeuristic,X.immutableMinTimeToLive=(a=g.cacheOptions)===null||a===void 0?void 0:a.immutableMinTimeToLive,X.ignoreCargoCult=(o=g.cacheOptions)===null||o===void 0?void 0:o.ignoreCargoCult,g.dnsLookupIpVersion!==void 0)try{X.family=Egn.dnsLookupIpVersionToFamily(g.dnsLookupIpVersion)}catch{throw new Error("Invalid `dnsLookupIpVersion` option value")}g.https&&("rejectUnauthorized"in g.https&&(X.rejectUnauthorized=g.https.rejectUnauthorized),g.https.checkServerIdentity&&(X.checkServerIdentity=g.https.checkServerIdentity),g.https.certificateAuthority&&(X.ca=g.https.certificateAuthority),g.https.certificate&&(X.cert=g.https.certificate),g.https.key&&(X.key=g.https.key),g.https.passphrase&&(X.passphrase=g.https.passphrase),g.https.pfx&&(X.pfx=g.https.pfx));try{let U=await O(B,X);ga.default.undefined(U)&&(U=k(B,X)),g.request=m,g.timeout=y,g.agent=f,g.https&&("rejectUnauthorized"in g.https&&delete X.rejectUnauthorized,g.https.checkServerIdentity&&delete X.checkServerIdentity,g.https.certificateAuthority&&delete X.ca,g.https.certificate&&delete X.cert,g.https.key&&delete X.key,g.https.passphrase&&delete X.passphrase,g.https.pfx&&delete X.pfx),HMs(U)?this._onRequest(U):this.writable?(this.once("finish",()=>{this._onResponse(U)}),this._unlockWrite(),this.end(),this._lockWrite()):this._onResponse(U)}catch(U){throw U instanceof hgn.CacheError?new Bit(U,this):new $v(U.message,U,this)}}async _error(t){try{for(let r of this.options.hooks.beforeError)t=await r(t)}catch(r){t=new $v(r.message,r,this)}this.destroy(t)}_beforeError(t){if(this[Kbe])return;let{options:r}=this,s=this.retryCount+1;this[Kbe]=!0,t instanceof $v||(t=new $v(t.message,t,this));let a=t,{response:o}=a;(async()=>{if(o&&!o.body){o.setEncoding(this._readableState.encoding);try{o.rawBody=await VMs.default(o),o.body=o.rawBody.toString()}catch{}}if(this.listenerCount("retry")!==0){let g;try{let p;o&&"retry-after"in o.headers&&(p=Number(o.headers["retry-after"]),Number.isNaN(p)?(p=Date.parse(o.headers["retry-after"])-Date.now(),p<=0&&(p=1)):p*=1e3),g=await r.retry.calculateDelay({attemptCount:s,retryOptions:r.retry,error:a,retryAfter:p,computedValue:OMs.default({attemptCount:s,retryOptions:r.retry,error:a,retryAfter:p,computedValue:0})})}catch(p){this._error(new $v(p.message,p,this));return}if(g){let p=async()=>{try{for(let f of this.options.hooks.beforeRetry)await f(this.options,a,s)}catch(f){this._error(new $v(f.message,t,this));return}this.destroyed||(this.destroy(),this.emit("retry",s,t))};this[Tgn]=setTimeout(p,g);return}}this._error(a)})()}_read(){this[_it]=!0;let t=this[yit];if(t&&!this[Kbe]){t.readableLength&&(this[_it]=!1);let r;for(;(r=t.read())!==null;){this[Xbe]+=r.length,this[Sgn]=!0;let s=this.downloadProgress;s.percent<1&&this.emit("downloadProgress",s),this.push(r)}}}_write(t,r,s){let a=()=>{this._writeRequest(t,r,s)};this.requestInitialized?a():this[tVe].push(a)}_writeRequest(t,r,s){this[RD].destroyed||(this._progressCallbacks.push(()=>{this[Ube]+=Buffer.byteLength(t,r);let a=this.uploadProgress;a.percent<1&&this.emit("uploadProgress",a)}),this[RD].write(t,r,a=>{!a&&this._progressCallbacks.length>0&&this._progressCallbacks.shift()(),s(a)}))}_final(t){let r=()=>{for(;this._progressCallbacks.length!==0;)this._progressCallbacks.shift()();if(!(RD in this)){t();return}if(this[RD].destroyed){t();return}this[RD].end(s=>{s||(this[Jbe]=this[Ube],this.emit("uploadProgress",this.uploadProgress),this[RD].emit("upload-complete")),t(s)})};this.requestInitialized?r():this[tVe].push(r)}_destroy(t,r){var s;this[Kbe]=!0,clearTimeout(this[Tgn]),RD in this&&(this[c4t](),!((s=this[yit])===null||s===void 0)&&s.complete||this[RD].destroy()),t!==null&&!ga.default.undefined(t)&&!(t instanceof $v)&&(t=new $v(t.message,t,this)),r(t)}get _isAboutToError(){return this[Kbe]}get ip(){var t;return(t=this.socket)===null||t===void 0?void 0:t.remoteAddress}get aborted(){var t,r,s;return((r=(t=this[RD])===null||t===void 0?void 0:t.destroyed)!==null&&r!==void 0?r:this.destroyed)&&!(!((s=this[wgn])===null||s===void 0)&&s.complete)}get socket(){var t,r;return(r=(t=this[RD])===null||t===void 0?void 0:t.socket)!==null&&r!==void 0?r:void 0}get downloadProgress(){let t;return this[Ybe]?t=this[Xbe]/this[Ybe]:this[Ybe]===this[Xbe]?t=1:t=0,{percent:t,transferred:this[Xbe],total:this[Ybe]}}get uploadProgress(){let t;return this[Jbe]?t=this[Ube]/this[Jbe]:this[Jbe]===this[Ube]?t=1:t=0,{percent:t,transferred:this[Ube],total:this[Jbe]}}get timings(){var t;return(t=this[RD])===null||t===void 0?void 0:t.timings}get isFromCache(){return this[vgn]}pipe(t,r){if(this[Sgn])throw new Error("Failed to pipe. The response has been emitted already.");return t instanceof o4t.ServerResponse&&this[hit].add(t),super.pipe(t,r)}unpipe(t){return t instanceof o4t.ServerResponse&&this[hit].delete(t),super.unpipe(t),this}};f_.default=Tit});var iVe=z(hH=>{"use strict";var KMs=hH&&hH.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),jMs=hH&&hH.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&KMs(t,e,r)};Object.defineProperty(hH,"__esModule",{value:!0});hH.CancelError=hH.ParseError=void 0;var Ngn=nVe(),u4t=class extends Ngn.RequestError{constructor(t,r){let{options:s}=r.request;super(`${t.message} in "${s.url.toString()}"`,t,r.request),this.name="ParseError",this.code=this.code==="ERR_GOT_REQUEST_ERROR"?"ERR_BODY_PARSE_FAILURE":this.code}};hH.ParseError=u4t;var g4t=class extends Ngn.RequestError{constructor(t){super("Promise was canceled",{},t),this.name="CancelError",this.code="ERR_CANCELED"}get isCanceled(){return!0}};hH.CancelError=g4t;jMs(nVe(),hH)});var Dgn=z(A4t=>{"use strict";Object.defineProperty(A4t,"__esModule",{value:!0});var Rgn=iVe(),zMs=(e,t,r,s)=>{let{rawBody:a}=e;try{if(t==="text")return a.toString(s);if(t==="json")return a.length===0?"":r(a.toString());if(t==="buffer")return a;throw new Rgn.ParseError({message:`Unknown body type '${t}'`,name:"Error"},e)}catch(o){throw new Rgn.ParseError(o,e)}};A4t.default=zMs});var d4t=z(Ene=>{"use strict";var qMs=Ene&&Ene.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),$Ms=Ene&&Ene.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&qMs(t,e,r)};Object.defineProperty(Ene,"__esModule",{value:!0});var eHs=xt("events"),tHs=Aj(),rHs=Nln(),Nit=iVe(),xgn=Dgn(),kgn=nVe(),nHs=KXt(),iHs=r4t(),Ggn=n4t(),sHs=["request","response","redirect","uploadProgress","downloadProgress"];function Fgn(e){let t,r,s=new eHs.EventEmitter,a=new rHs((g,p,f)=>{let m=y=>{let B=new kgn.default(void 0,e);B.retryCount=y,B._noPipe=!0,f(()=>B.destroy()),f.shouldReject=!1,f(()=>p(new Nit.CancelError(B))),t=B,B.once("response",async T=>{var O;if(T.retryCount=y,T.request.aborted)return;let X;try{X=await iHs.default(B),T.rawBody=X}catch{return}if(B._isAboutToError)return;let U=((O=T.headers["content-encoding"])!==null&&O!==void 0?O:"").toLowerCase(),le=["gzip","deflate","br"].includes(U),{options:ae}=B;if(le&&!ae.decompress)T.body=X;else try{T.body=xgn.default(T,ae.responseType,ae.parseJson,ae.encoding)}catch(ge){if(T.body=X.toString(),Ggn.isResponseOk(T)){B._beforeError(ge);return}}try{for(let[ge,fe]of ae.hooks.afterResponse.entries())T=await fe(T,async pe=>{let he=kgn.default.normalizeArguments(void 0,{...pe,retry:{calculateDelay:()=>0},throwHttpErrors:!1,resolveBodyOnly:!1},ae);he.hooks.afterResponse=he.hooks.afterResponse.slice(0,ge);for(let Te of he.hooks.beforeRetry)await Te(he);let be=Fgn(he);return f(()=>{be.catch(()=>{}),be.cancel()}),be})}catch(ge){B._beforeError(new Nit.RequestError(ge.message,ge,B));return}if(r=T,!Ggn.isResponseOk(T)){B._beforeError(new Nit.HTTPError(T));return}B.destroy(),g(B.options.resolveBodyOnly?T.body:T)});let v=T=>{if(a.isCanceled)return;let{options:O}=B;if(T instanceof Nit.HTTPError&&!O.throwHttpErrors){let{response:X}=T;g(B.options.resolveBodyOnly?X.body:X);return}p(T)};B.once("error",v);let k=B.options.body;B.once("retry",(T,O)=>{var X,U;if(k===((X=O.request)===null||X===void 0?void 0:X.options.body)&&tHs.default.nodeStream((U=O.request)===null||U===void 0?void 0:U.options.body)){v(O);return}m(T)}),nHs.default(B,s,sHs)};m(0)});a.on=(g,p)=>(s.on(g,p),a);let o=g=>{let p=(async()=>{await a;let{options:f}=r.request;return xgn.default(r,g,f.parseJson,f.encoding)})();return Object.defineProperties(p,Object.getOwnPropertyDescriptors(a)),p};return a.json=()=>{let{headers:g}=t.options;return!t.writableFinished&&g.accept===void 0&&(g.accept="application/json"),o("json")},a.buffer=()=>o("buffer"),a.text=()=>o("text"),a}Ene.default=Fgn;$Ms(iVe(),Ene)});var Zgn=z(p4t=>{"use strict";Object.defineProperty(p4t,"__esModule",{value:!0});var oHs=iVe();function aHs(e,...t){let r=(async()=>{if(e instanceof oHs.RequestError)try{for(let a of t)if(a)for(let o of a)e=await o(e)}catch(a){e=a}throw e})(),s=()=>r;return r.json=s,r.text=s,r.buffer=s,r.on=s,r}p4t.default=aHs});var Wgn=z(f4t=>{"use strict";Object.defineProperty(f4t,"__esModule",{value:!0});var Lgn=Aj();function Vgn(e){for(let t of Object.values(e))(Lgn.default.plainObject(t)||Lgn.default.array(t))&&Vgn(t);return Object.freeze(e)}f4t.default=Vgn});var Ogn=z(Pgn=>{"use strict";Object.defineProperty(Pgn,"__esModule",{value:!0})});var I4t=z(BO=>{"use strict";var cHs=BO&&BO.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),lHs=BO&&BO.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&cHs(t,e,r)};Object.defineProperty(BO,"__esModule",{value:!0});BO.defaultHandler=void 0;var Qgn=Aj(),EO=d4t(),uHs=Zgn(),Dit=nVe(),gHs=Wgn(),AHs={RequestError:EO.RequestError,CacheError:EO.CacheError,ReadError:EO.ReadError,HTTPError:EO.HTTPError,MaxRedirectsError:EO.MaxRedirectsError,TimeoutError:EO.TimeoutError,ParseError:EO.ParseError,CancelError:EO.CancelError,UnsupportedProtocolError:EO.UnsupportedProtocolError,UploadError:EO.UploadError},dHs=async e=>new Promise(t=>{setTimeout(t,e)}),{normalizeArguments:Rit}=Dit.default,Mgn=(...e)=>{let t;for(let r of e)t=Rit(void 0,r,t);return t},pHs=e=>e.isStream?new Dit.default(void 0,e):EO.default(e),fHs=e=>"defaults"in e&&"options"in e.defaults,IHs=["get","post","put","patch","head","delete"];BO.defaultHandler=(e,t)=>t(e);var Hgn=(e,t)=>{if(e)for(let r of e)r(t)},Ygn=e=>{e._rawHandlers=e.handlers,e.handlers=e.handlers.map(s=>(a,o)=>{let g,p=s(a,f=>(g=o(f),g));if(p!==g&&!a.isStream&&g){let f=p,{then:m,catch:y,finally:B}=f;Object.setPrototypeOf(f,Object.getPrototypeOf(g)),Object.defineProperties(f,Object.getOwnPropertyDescriptors(g)),f.then=m,f.catch=y,f.finally=B}return p});let t=(s,a={},o)=>{var g,p;let f=0,m=y=>e.handlers[f++](y,f===e.handlers.length?pHs:m);if(Qgn.default.plainObject(s)){let y={...s,...a};Dit.setNonEnumerableProperties([s,a],y),a=y,s=void 0}try{let y;try{Hgn(e.options.hooks.init,a),Hgn((g=a.hooks)===null||g===void 0?void 0:g.init,a)}catch(v){y=v}let B=Rit(s,a,o??e.options);if(B[Dit.kIsNormalizedAlready]=!0,y)throw new EO.RequestError(y.message,y,B);return m(B)}catch(y){if(a.isStream)throw y;return uHs.default(y,e.options.hooks.beforeError,(p=a.hooks)===null||p===void 0?void 0:p.beforeError)}};t.extend=(...s)=>{let a=[e.options],o=[...e._rawHandlers],g;for(let p of s)fHs(p)?(a.push(p.defaults.options),o.push(...p.defaults._rawHandlers),g=p.defaults.mutableDefaults):(a.push(p),"handlers"in p&&o.push(...p.handlers),g=p.mutableDefaults);return o=o.filter(p=>p!==BO.defaultHandler),o.length===0&&o.push(BO.defaultHandler),Ygn({options:Mgn(...a),handlers:o,mutableDefaults:!!g})};let r=async function*(s,a){let o=Rit(s,a,e.options);o.resolveBodyOnly=!1;let g=o.pagination;if(!Qgn.default.object(g))throw new TypeError("`options.pagination` must be implemented");let p=[],{countLimit:f}=g,m=0;for(;m{let o=[];for await(let g of r(s,a))o.push(g);return o},t.paginate.each=r,t.stream=(s,a)=>t(s,{...a,isStream:!0});for(let s of IHs)t[s]=(a,o)=>t(a,{...o,method:s}),t.stream[s]=(a,o)=>t(a,{...o,method:s,isStream:!0});return Object.assign(t,AHs),Object.defineProperty(t,"defaults",{value:e.mutableDefaults?e:gHs.default(e),writable:e.mutableDefaults,configurable:e.mutableDefaults,enumerable:!0}),t.mergeOptions=Mgn,t};BO.default=Ygn;lHs(Ogn(),BO)});var Ugn=z((dj,xit)=>{"use strict";var CHs=dj&&dj.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Xgn=dj&&dj.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&CHs(t,e,r)};Object.defineProperty(dj,"__esModule",{value:!0});var mHs=xt("url"),Jgn=I4t(),hHs={options:{method:"GET",retry:{limit:2,methods:["GET","PUT","HEAD","DELETE","OPTIONS","TRACE"],statusCodes:[408,413,429,500,502,503,504,521,522,524],errorCodes:["ETIMEDOUT","ECONNRESET","EADDRINUSE","ECONNREFUSED","EPIPE","ENOTFOUND","ENETUNREACH","EAI_AGAIN"],maxRetryAfter:void 0,calculateDelay:({computedValue:e})=>e},timeout:{},headers:{"user-agent":"got (https://github.com/sindresorhus/got)"},hooks:{init:[],beforeRequest:[],beforeRedirect:[],beforeRetry:[],beforeError:[],afterResponse:[]},cache:void 0,dnsCache:void 0,decompress:!0,throwHttpErrors:!0,followRedirect:!0,isStream:!1,responseType:"text",resolveBodyOnly:!1,maxRedirects:10,prefixUrl:"",methodRewriting:!0,ignoreInvalidCookies:!1,context:{},http2:!1,allowGetBody:!1,https:void 0,pagination:{transform:e=>e.request.options.responseType==="json"?e.body:JSON.parse(e.body),paginate:e=>{if(!Reflect.has(e.headers,"link"))return!1;let t=e.headers.link.split(","),r;for(let s of t){let a=s.split(";");if(a[1].includes("next")){r=a[0].trimStart().trim(),r=r.slice(1,-1);break}}return r?{url:new mHs.URL(r)}:!1},filter:()=>!0,shouldContinue:()=>!0,countLimit:1/0,backoff:0,requestLimit:1e4,stackAllItems:!0},parseJson:e=>JSON.parse(e),stringifyJson:e=>JSON.stringify(e),cacheOptions:{}},handlers:[Jgn.defaultHandler],mutableDefaults:!1},C4t=Jgn.default(hHs);dj.default=C4t;xit.exports=C4t;xit.exports.default=C4t;xit.exports.__esModule=!0;Xgn(I4t(),dj);Xgn(d4t(),dj)});var Git=z(SJ=>{"use strict";Object.defineProperty(SJ,"__esModule",{value:!0});SJ.Method=void 0;SJ.getNetworkSettings=tAn;SJ.request=oVe;SJ.get=SHs;SJ.put=wHs;SJ.post=THs;SJ.del=NHs;var sVe=(Oa(),Ai(Pa)),_Hs=No(),yHs=xt("https"),bHs=xt("http"),$gn=sVe.__importDefault(gk()),Kgn=sVe.__importDefault(uXt()),Bne=NL(),h4t=_O(),oE=sVe.__importStar(CO()),eAn=sVe.__importStar(IW()),jgn=new Map,zgn=new Map,EHs=new bHs.Agent({keepAlive:!0}),BHs=new yHs.Agent({keepAlive:!0});function qgn(e){let t=new URL(e),r={host:t.hostname,headers:{}};return t.port&&(r.port=Number(t.port)),t.username&&t.password&&(r.proxyAuth=`${t.username}:${t.password}`),{proxy:r}}async function m4t(e){return eAn.getFactoryWithDefault(zgn,e,()=>_Hs.xfs.readFilePromise(e).then(t=>(zgn.set(e,t),t)))}function vHs({statusCode:e,statusMessage:t},r){let s=oE.pretty(r,e,oE.Type.NUMBER),a=`https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/${e}`;return oE.applyHyperlink(r,`${s}${t?` (${t})`:""}`,a)}async function kit(e,{configuration:t,customErrorMessage:r}){try{return await e}catch(s){if(s.name!=="HTTPError")throw s;let a=r?.(s,t)??s.response.body?.error;a==null&&(s.message.startsWith("Response code")?a="The remote server failed to provide the requested resource":a=s.message),s.code==="ETIMEDOUT"&&s.event==="socket"&&(a+=`(can be increased via ${oE.pretty(t,"httpTimeout",oE.Type.SETTING)})`);let o=new h4t.ReportError(Bne.MessageName.NETWORK_ERROR,a,g=>{s.response&&g.reportError(Bne.MessageName.NETWORK_ERROR,` ${oE.prettyField(t,{label:"Response Code",value:oE.tuple(oE.Type.NO_HINT,vHs(s.response,t))})}`),s.request&&(g.reportError(Bne.MessageName.NETWORK_ERROR,` ${oE.prettyField(t,{label:"Request Method",value:oE.tuple(oE.Type.NO_HINT,s.request.options.method)})}`),g.reportError(Bne.MessageName.NETWORK_ERROR,` ${oE.prettyField(t,{label:"Request URL",value:oE.tuple(oE.Type.URL,s.request.requestUrl)})}`)),s.request.redirects.length>0&&g.reportError(Bne.MessageName.NETWORK_ERROR,` ${oE.prettyField(t,{label:"Request Redirects",value:oE.tuple(oE.Type.NO_HINT,oE.prettyList(t,s.request.redirects,oE.Type.URL))})}`),s.request.retryCount===s.request.options.retry.limit&&g.reportError(Bne.MessageName.NETWORK_ERROR,` ${oE.prettyField(t,{label:"Request Retry Count",value:oE.tuple(oE.Type.NO_HINT,`${oE.pretty(t,s.request.retryCount,oE.Type.NUMBER)} (can be increased via ${oE.pretty(t,"httpRetry",oE.Type.SETTING)})`)})}`)});throw o.originalError=s,o}}function tAn(e,t){let r=[...t.configuration.get("networkSettings")].sort(([g],[p])=>p.length-g.length),s={enableNetwork:void 0,httpsCaFilePath:void 0,httpProxy:void 0,httpsProxy:void 0,httpsKeyFilePath:void 0,httpsCertFilePath:void 0},a=Object.keys(s),o=typeof e=="string"?new URL(e):e;for(let[g,p]of r)if($gn.default.isMatch(o.hostname,g))for(let f of a){let m=p.get(f);m!==null&&typeof s[f]>"u"&&(s[f]=m)}for(let g of a)typeof s[g]>"u"&&(s[g]=t.configuration.get(g));return s}var bAe;(function(e){e.GET="GET",e.PUT="PUT",e.POST="POST",e.DELETE="DELETE"})(bAe||(SJ.Method=bAe={}));async function oVe(e,t,{configuration:r,headers:s,jsonRequest:a,jsonResponse:o,method:g=bAe.GET,wrapNetworkRequest:p}){let f={target:e,body:t,configuration:r,headers:s,jsonRequest:a,jsonResponse:o,method:g},m=async()=>await RHs(e,t,f),y=typeof p<"u"?await p(m,f):m;return await(await r.reduceHook(v=>v.wrapNetworkRequest,y,f))()}async function SHs(e,{configuration:t,jsonResponse:r,customErrorMessage:s,wrapNetworkRequest:a,...o}){let g=()=>kit(oVe(e,null,{configuration:t,wrapNetworkRequest:a,...o}),{configuration:t,customErrorMessage:s}).then(f=>f.body),p=await(typeof a<"u"?g():eAn.getFactoryWithDefault(jgn,e,()=>g().then(f=>(jgn.set(e,f),f))));return r?JSON.parse(p.toString()):p}async function wHs(e,t,{customErrorMessage:r,...s}){return(await kit(oVe(e,t,{...s,method:bAe.PUT}),{customErrorMessage:r,configuration:s.configuration})).body}async function THs(e,t,{customErrorMessage:r,...s}){return(await kit(oVe(e,t,{...s,method:bAe.POST}),{customErrorMessage:r,configuration:s.configuration})).body}async function NHs(e,{customErrorMessage:t,...r}){return(await kit(oVe(e,null,{...r,method:bAe.DELETE}),{customErrorMessage:t,configuration:r.configuration})).body}async function RHs(e,t,{configuration:r,headers:s,jsonRequest:a,jsonResponse:o,method:g=bAe.GET}){let p=typeof e=="string"?new URL(e):e,f=tAn(p,{configuration:r});if(f.enableNetwork===!1)throw new h4t.ReportError(Bne.MessageName.NETWORK_DISABLED,`Request to '${p.href}' has been blocked because of your configuration settings`);if(p.protocol==="http:"&&!$gn.default.isMatch(p.hostname,r.get("unsafeHttpWhitelist")))throw new h4t.ReportError(Bne.MessageName.NETWORK_UNSAFE_HTTP,`Unsafe http requests must be explicitly whitelisted in your configuration (${p.hostname})`);let y={agent:{http:f.httpProxy?Kgn.default.httpOverHttp(qgn(f.httpProxy)):EHs,https:f.httpsProxy?Kgn.default.httpsOverHttp(qgn(f.httpsProxy)):BHs},headers:s,method:g};y.responseType=o?"json":"buffer",t!==null&&(Buffer.isBuffer(t)||!a&&typeof t=="string"?y.body=t:y.json=t);let B=r.get("httpTimeout"),v=r.get("httpRetry"),k=r.get("enableStrictSsl"),T=f.httpsCaFilePath,O=f.httpsCertFilePath,X=f.httpsKeyFilePath,{default:U}=await Promise.resolve().then(()=>sVe.__importStar(Ugn())),le=T?await m4t(T):void 0,ae=O?await m4t(O):void 0,ge=X?await m4t(X):void 0,fe=U.extend({timeout:{socket:B},retry:v,https:{rejectUnauthorized:k,certificateAuthority:le,certificate:ae,key:ge},...y});return r.getLimit("networkConcurrency")(()=>fe(p))}});var Fit=z(_H=>{"use strict";Object.defineProperty(_H,"__esModule",{value:!0});_H.openUrl=_H.major=void 0;_H.getArchitecture=b4t;_H.getArchitectureName=GHs;_H.getArchitectureSet=FHs;_H.getCaller=WHs;_H.availableParallelism=PHs;var y4t=(Oa(),Ai(Pa)),oAn=No(),_4t=y4t.__importDefault(xt("os")),DHs=y4t.__importStar(Zit()),rAn=y4t.__importStar(IW());_H.major=Number(process.versions.node.split(".")[0]);var nAn=new Map([["darwin","open"],["linux","xdg-open"],["win32","explorer.exe"]]).get(process.platform);_H.openUrl=typeof nAn<"u"?async e=>{try{return await DHs.execvp(nAn,[e],{cwd:oAn.ppath.cwd()}),!0}catch{return!1}}:void 0;var xHs="/usr/bin/ldd";function kHs(){if(process.platform==="darwin"||process.platform==="win32")return null;let e;try{e=oAn.xfs.readFileSync(xHs)}catch{}if(typeof e<"u"){if(e&&(e.includes("GLIBC")||e.includes("libc")))return"glibc";if(e&&e.includes("musl"))return"musl"}let r=(process.report?.getReport()??{}).sharedObjects??[],s=/\/(?:(ld-linux-|[^/]+-linux-gnu\/)|(libc.musl-|ld-musl-))/;return rAn.mapAndFind(r,a=>{let o=a.match(s);if(!o)return rAn.mapAndFind.skip;if(o[1])return"glibc";if(o[2])return"musl";throw new Error("Assertion failed: Expected the libc variant to have been detected")})??null}var iAn,sAn;function b4t(){return iAn=iAn??{os:process.platform,cpu:process.arch,libc:kHs()}}function GHs(e=b4t()){return e.libc?`${e.os}-${e.cpu}-${e.libc}`:`${e.os}-${e.cpu}`}function FHs(){let e=b4t();return sAn=sAn??{os:[e.os],cpu:[e.cpu],libc:e.libc?[e.libc]:[]}}var ZHs=/^\s*at (.*?) ?\(((?:file|https?|blob|chrome-extension|native|eval|webpack||\/|[a-z]:\\|\\\\).*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,LHs=/\((\S*)(?::(\d+))(?::(\d+))\)/;function VHs(e){let t=ZHs.exec(e);if(!t)return null;let r=t[2]&&t[2].indexOf("native")===0,s=t[2]&&t[2].indexOf("eval")===0,a=LHs.exec(t[2]);return s&&a!=null&&(t[2]=a[1],t[3]=a[2],t[4]=a[3]),{file:r?null:t[2],methodName:t[1]||"",arguments:r?[t[2]]:[],line:t[3]?+t[3]:null,column:t[4]?+t[4]:null}}function WHs(){let t=new Error().stack.split(` +`)[3];return VHs(t)}function PHs(){return typeof _4t.default.availableParallelism<"u"?_4t.default.availableParallelism():Math.max(1,_4t.default.cpus().length)}});var cVe=z(rh=>{"use strict";Object.defineProperty(rh,"__esModule",{value:!0});rh.Configuration=rh.coreDefinitions=rh.WindowsLinkType=rh.FormatType=rh.SettingsType=rh.SECRET=rh.DEFAULT_RC_FILENAME=rh.ENVIRONMENT_PREFIX=rh.TAG_REGEXP=rh.LEGACY_PLUGINS=void 0;var bH=(Oa(),Ai(Pa)),kf=No(),Lit=uO(),OHs=bH.__importDefault(xqr()),jbe=nAe(),yH=(Zl(),Ai(pg)),QHs=Pqr(),MHs=xt("module"),HHs=bH.__importDefault(iAe()),aAn=xt("stream"),YHs=Vcn(),XHs=Lbe(),JHs=UYt(),UHs=jYt(),KHs=eXt(),jHs=Aln(),zHs=rXt(),qHs=CAe(),vne=bH.__importStar(Cln()),Wit=bH.__importStar(rit()),Dy=bH.__importStar(CO()),$Hs=bH.__importStar(Ine()),eYs=bH.__importStar(Git()),Ck=bH.__importStar(IW()),uAn=bH.__importStar(Fit()),Vit=bH.__importStar(cj()),SF=bH.__importStar(dk()),vO=dAe(),tYs=function(){if(!jbe.GITHUB_ACTIONS||!process.env.GITHUB_EVENT_PATH)return!1;let e=kf.npath.toPortablePath(process.env.GITHUB_EVENT_PATH),t;try{t=kf.xfs.readJsonSync(e)}catch{return!1}return!(!("repository"in t)||!t.repository||(t.repository.private??!0))}();rh.LEGACY_PLUGINS=new Set(["@yarnpkg/plugin-constraints","@yarnpkg/plugin-exec","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-stage","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-workspace-tools"]);var rYs=new Set(["isTestEnv","injectNpmUser","injectNpmPassword","injectNpm2FaToken","zipDataEpilogue","cacheCheckpointOverride","cacheVersionOverride","lockfileVersionOverride","binFolder","version","flags","profile","gpg","ignoreNode","wrapOutput","home","confDir","registry","ignoreCwd"]);rh.TAG_REGEXP=/^(?!v)[a-z0-9._-]+$/i;rh.ENVIRONMENT_PREFIX="yarn_";rh.DEFAULT_RC_FILENAME=".yarnrc.yml";rh.SECRET="********";var Bl;(function(e){e.ANY="ANY",e.BOOLEAN="BOOLEAN",e.ABSOLUTE_PATH="ABSOLUTE_PATH",e.LOCATOR="LOCATOR",e.LOCATOR_LOOSE="LOCATOR_LOOSE",e.NUMBER="NUMBER",e.STRING="STRING",e.SECRET="SECRET",e.SHAPE="SHAPE",e.MAP="MAP"})(Bl||(rh.SettingsType=Bl={}));rh.FormatType=Dy.Type;var cAn;(function(e){e.JUNCTIONS="junctions",e.SYMLINKS="symlinks"})(cAn||(rh.WindowsLinkType=cAn={}));rh.coreDefinitions={lastUpdateCheck:{description:"Last timestamp we checked whether new Yarn versions were available",type:Bl.STRING,default:null},yarnPath:{description:"Path to the local executable that must be used over the global one",type:Bl.ABSOLUTE_PATH,default:null},ignorePath:{description:"If true, the local executable will be ignored when using the global one",type:Bl.BOOLEAN,default:!1},globalFolder:{description:"Folder where all system-global files are stored",type:Bl.ABSOLUTE_PATH,default:Wit.getDefaultGlobalFolder()},cacheFolder:{description:"Folder where the cache files must be written",type:Bl.ABSOLUTE_PATH,default:"./.yarn/cache"},compressionLevel:{description:"Zip files compression level, from 0 to 9 or mixed (a variant of 9, which stores some files uncompressed, when compression doesn't yield good results)",type:Bl.NUMBER,values:["mixed",0,1,2,3,4,5,6,7,8,9],default:0},virtualFolder:{description:"Folder where the virtual packages (cf doc) will be mapped on the disk (must be named __virtual__)",type:Bl.ABSOLUTE_PATH,default:"./.yarn/__virtual__"},installStatePath:{description:"Path of the file where the install state will be persisted",type:Bl.ABSOLUTE_PATH,default:"./.yarn/install-state.gz"},immutablePatterns:{description:"Array of glob patterns; files matching them won't be allowed to change during immutable installs",type:Bl.STRING,default:[],isArray:!0},rcFilename:{description:"Name of the files where the configuration can be found",type:Bl.STRING,default:B4t()},enableGlobalCache:{description:"If true, the system-wide cache folder will be used regardless of `cache-folder`",type:Bl.BOOLEAN,default:!0},cacheMigrationMode:{description:"Defines the conditions under which Yarn upgrades should cause the cache archives to be regenerated.",type:Bl.STRING,values:["always","match-spec","required-only"],default:"always"},enableColors:{description:"If true, the CLI is allowed to use colors in its output",type:Bl.BOOLEAN,default:Dy.supportsColor,defaultText:""},enableHyperlinks:{description:"If true, the CLI is allowed to use hyperlinks in its output",type:Bl.BOOLEAN,default:Dy.supportsHyperlinks,defaultText:""},enableInlineBuilds:{description:"If true, the CLI will print the build output on the command line",type:Bl.BOOLEAN,default:jbe.isCI,defaultText:""},enableMessageNames:{description:"If true, the CLI will prefix most messages with codes suitable for search engines",type:Bl.BOOLEAN,default:!0},enableProgressBars:{description:"If true, the CLI is allowed to show a progress bar for long-running events",type:Bl.BOOLEAN,default:!jbe.isCI,defaultText:""},enableTimers:{description:"If true, the CLI is allowed to print the time spent executing commands",type:Bl.BOOLEAN,default:!0},enableTips:{description:"If true, installs will print a helpful message every day of the week",type:Bl.BOOLEAN,default:!jbe.isCI,defaultText:""},preferInteractive:{description:"If true, the CLI will automatically use the interactive mode when called from a TTY",type:Bl.BOOLEAN,default:!1},preferTruncatedLines:{description:"If true, the CLI will truncate lines that would go beyond the size of the terminal",type:Bl.BOOLEAN,default:!1},progressBarStyle:{description:"Which style of progress bar should be used (only when progress bars are enabled)",type:Bl.STRING,default:void 0,defaultText:""},defaultLanguageName:{description:"Default language mode that should be used when a package doesn't offer any insight",type:Bl.STRING,default:"node"},defaultProtocol:{description:"Default resolution protocol used when resolving pure semver and tag ranges",type:Bl.STRING,default:"npm:"},enableTransparentWorkspaces:{description:"If false, Yarn won't automatically resolve workspace dependencies unless they use the `workspace:` protocol",type:Bl.BOOLEAN,default:!0},supportedArchitectures:{description:"Architectures that Yarn will fetch and inject into the resolver",type:Bl.SHAPE,properties:{os:{description:"Array of supported process.platform strings, or null to target them all",type:Bl.STRING,isArray:!0,isNullable:!0,default:["current"]},cpu:{description:"Array of supported process.arch strings, or null to target them all",type:Bl.STRING,isArray:!0,isNullable:!0,default:["current"]},libc:{description:"Array of supported libc libraries, or null to target them all",type:Bl.STRING,isArray:!0,isNullable:!0,default:["current"]}}},enableMirror:{description:"If true, the downloaded packages will be retrieved and stored in both the local and global folders",type:Bl.BOOLEAN,default:!0},enableNetwork:{description:"If false, Yarn will refuse to use the network if required to",type:Bl.BOOLEAN,default:!0},enableOfflineMode:{description:"If true, Yarn will attempt to retrieve files and metadata from the global cache rather than the network",type:Bl.BOOLEAN,default:!1},httpProxy:{description:"URL of the http proxy that must be used for outgoing http requests",type:Bl.STRING,default:null},httpsProxy:{description:"URL of the http proxy that must be used for outgoing https requests",type:Bl.STRING,default:null},unsafeHttpWhitelist:{description:"List of the hostnames for which http queries are allowed (glob patterns are supported)",type:Bl.STRING,default:[],isArray:!0},httpTimeout:{description:"Timeout of each http request in milliseconds",type:Bl.NUMBER,default:6e4},httpRetry:{description:"Retry times on http failure",type:Bl.NUMBER,default:3},networkConcurrency:{description:"Maximal number of concurrent requests",type:Bl.NUMBER,default:50},taskPoolConcurrency:{description:"Maximal amount of concurrent heavy task processing",type:Bl.NUMBER,default:uAn.availableParallelism()},taskPoolMode:{description:"Execution strategy for heavy tasks",type:Bl.STRING,values:["async","workers"],default:"workers"},networkSettings:{description:"Network settings per hostname (glob patterns are supported)",type:Bl.MAP,valueDefinition:{description:"",type:Bl.SHAPE,properties:{httpsCaFilePath:{description:"Path to file containing one or multiple Certificate Authority signing certificates",type:Bl.ABSOLUTE_PATH,default:null},enableNetwork:{description:"If false, the package manager will refuse to use the network if required to",type:Bl.BOOLEAN,default:null},httpProxy:{description:"URL of the http proxy that must be used for outgoing http requests",type:Bl.STRING,default:null},httpsProxy:{description:"URL of the http proxy that must be used for outgoing https requests",type:Bl.STRING,default:null},httpsKeyFilePath:{description:"Path to file containing private key in PEM format",type:Bl.ABSOLUTE_PATH,default:null},httpsCertFilePath:{description:"Path to file containing certificate chain in PEM format",type:Bl.ABSOLUTE_PATH,default:null}}}},httpsCaFilePath:{description:"A path to a file containing one or multiple Certificate Authority signing certificates",type:Bl.ABSOLUTE_PATH,default:null},httpsKeyFilePath:{description:"Path to file containing private key in PEM format",type:Bl.ABSOLUTE_PATH,default:null},httpsCertFilePath:{description:"Path to file containing certificate chain in PEM format",type:Bl.ABSOLUTE_PATH,default:null},enableStrictSsl:{description:"If false, SSL certificate errors will be ignored",type:Bl.BOOLEAN,default:!0},logFilters:{description:"Overrides for log levels",type:Bl.SHAPE,isArray:!0,concatenateValues:!0,properties:{code:{description:"Code of the messages covered by this override",type:Bl.STRING,default:void 0},text:{description:"Code of the texts covered by this override",type:Bl.STRING,default:void 0},pattern:{description:"Code of the patterns covered by this override",type:Bl.STRING,default:void 0},level:{description:"Log level override, set to null to remove override",type:Bl.STRING,values:Object.values(Dy.LogLevel),isNullable:!0,default:void 0}}},enableTelemetry:{description:"If true, telemetry will be periodically sent, following the rules in https://yarnpkg.com/advanced/telemetry",type:Bl.BOOLEAN,default:!0},telemetryInterval:{description:"Minimal amount of time between two telemetry uploads, in days",type:Bl.NUMBER,default:7},telemetryUserId:{description:"If you desire to tell us which project you are, you can set this field. Completely optional and opt-in.",type:Bl.STRING,default:null},enableHardenedMode:{description:"If true, automatically enable --check-resolutions --refresh-lockfile on installs",type:Bl.BOOLEAN,default:jbe.isPR&&tYs,defaultText:""},enableScripts:{description:"If true, packages are allowed to have install scripts by default",type:Bl.BOOLEAN,default:!0},enableStrictSettings:{description:"If true, unknown settings will cause Yarn to abort",type:Bl.BOOLEAN,default:!0},enableImmutableCache:{description:"If true, the cache is reputed immutable and actions that would modify it will throw",type:Bl.BOOLEAN,default:!1},checksumBehavior:{description:"Enumeration defining what to do when a checksum doesn't match expectations",type:Bl.STRING,default:"throw"},injectEnvironmentFiles:{description:"List of all the environment files that Yarn should inject inside the process when it starts",type:Bl.ABSOLUTE_PATH,default:[".env.yarn?"],isArray:!0},packageExtensions:{description:"Map of package corrections to apply on the dependency tree",type:Bl.MAP,valueDefinition:{description:"The extension that will be applied to any package whose version matches the specified range",type:Bl.SHAPE,properties:{dependencies:{description:"The set of dependencies that must be made available to the current package in order for it to work properly",type:Bl.MAP,valueDefinition:{description:"A range",type:Bl.STRING}},peerDependencies:{description:"Inherited dependencies - the consumer of the package will be tasked to provide them",type:Bl.MAP,valueDefinition:{description:"A semver range",type:Bl.STRING}},peerDependenciesMeta:{description:"Extra information related to the dependencies listed in the peerDependencies field",type:Bl.MAP,valueDefinition:{description:"The peerDependency meta",type:Bl.SHAPE,properties:{optional:{description:"If true, the selected peer dependency will be marked as optional by the package manager and the consumer omitting it won't be reported as an error",type:Bl.BOOLEAN,default:!1}}}}}}}};function v4t(e,t,r,s,a){let o=vne.getValue(r);if(s.isArray||s.type===Bl.ANY&&Array.isArray(o))return Array.isArray(o)?o.map((g,p)=>E4t(e,`${t}[${p}]`,g,s,a)):String(o).split(/,/).map(g=>E4t(e,t,g,s,a));if(Array.isArray(o))throw new Error(`Non-array configuration settings "${t}" cannot be an array`);return E4t(e,t,r,s,a)}function E4t(e,t,r,s,a){let o=vne.getValue(r);switch(s.type){case Bl.ANY:return vne.getValueByTree(o);case Bl.SHAPE:return nYs(e,t,r,s,a);case Bl.MAP:return iYs(e,t,r,s,a)}if(o===null&&!s.isNullable&&s.default!==null)throw new Error(`Non-nullable configuration settings "${t}" cannot be set to null`);if(s.values?.includes(o))return o;let p=(()=>{if(s.type===Bl.BOOLEAN&&typeof o!="string")return Ck.parseBoolean(o);if(typeof o!="string")throw new Error(`Expected configuration setting "${t}" to be a string, got ${typeof o}`);let f=Ck.replaceEnvVariables(o,{env:e.env});switch(s.type){case Bl.ABSOLUTE_PATH:{let m=a,y=vne.getSource(r);return y&&y[0]!=="<"&&(m=kf.ppath.dirname(y)),kf.ppath.resolve(m,kf.npath.toPortablePath(f))}case Bl.LOCATOR_LOOSE:return SF.parseLocator(f,!1);case Bl.NUMBER:return parseInt(f);case Bl.LOCATOR:return SF.parseLocator(f);case Bl.BOOLEAN:return Ck.parseBoolean(f);default:return f}})();if(s.values&&!s.values.includes(p))throw new Error(`Invalid value, expected one of ${s.values.join(", ")}`);return p}function nYs(e,t,r,s,a){let o=vne.getValue(r);if(typeof o!="object"||Array.isArray(o))throw new yH.UsageError(`Object configuration settings "${t}" must be an object`);let g=S4t(e,s,{ignoreArrays:!0});if(o===null)return g;for(let[p,f]of Object.entries(o)){let m=`${t}.${p}`;if(!s.properties[p])throw new yH.UsageError(`Unrecognized configuration settings found: ${t}.${p} - run "yarn config -v" to see the list of settings supported in Yarn`);g.set(p,v4t(e,m,f,s.properties[p],a))}return g}function iYs(e,t,r,s,a){let o=vne.getValue(r),g=new Map;if(typeof o!="object"||Array.isArray(o))throw new yH.UsageError(`Map configuration settings "${t}" must be an object`);if(o===null)return g;for(let[p,f]of Object.entries(o)){let m=s.normalizeKeys?s.normalizeKeys(p):p,y=`${t}['${m}']`,B=s.valueDefinition;g.set(m,v4t(e,y,f,B,a))}return g}function S4t(e,t,{ignoreArrays:r=!1}={}){switch(t.type){case Bl.SHAPE:{if(t.isArray&&!r)return[];let s=new Map;for(let[a,o]of Object.entries(t.properties))s.set(a,S4t(e,o));return s}case Bl.MAP:return t.isArray&&!r?[]:new Map;case Bl.ABSOLUTE_PATH:return t.default===null?null:e.projectCwd===null?Array.isArray(t.default)?t.default.map(s=>kf.ppath.normalize(s)):kf.ppath.isAbsolute(t.default)?kf.ppath.normalize(t.default):t.isNullable?null:void 0:Array.isArray(t.default)?t.default.map(s=>kf.ppath.resolve(e.projectCwd,s)):kf.ppath.resolve(e.projectCwd,t.default);default:return t.default}}function Pit(e,t,r){if(t.type===Bl.SECRET&&typeof e=="string"&&r.hideSecrets)return rh.SECRET;if(t.type===Bl.ABSOLUTE_PATH&&typeof e=="string"&&r.getNativePaths)return kf.npath.fromPortablePath(e);if(t.isArray&&Array.isArray(e)){let s=[];for(let a of e)s.push(Pit(a,t,r));return s}if(t.type===Bl.MAP&&e instanceof Map){if(e.size===0)return;let s=new Map;for(let[a,o]of e.entries()){let g=Pit(o,t.valueDefinition,r);typeof g<"u"&&s.set(a,g)}return s}if(t.type===Bl.SHAPE&&e instanceof Map){if(e.size===0)return;let s=new Map;for(let[a,o]of e.entries()){let g=t.properties[a],p=Pit(o,g,r);typeof p<"u"&&s.set(a,p)}return s}return e}function sYs(){let e={};for(let[t,r]of Object.entries(process.env))t=t.toLowerCase(),t.startsWith(rh.ENVIRONMENT_PREFIX)&&(t=(0,OHs.default)(t.slice(rh.ENVIRONMENT_PREFIX.length)),e[t]=r);return e}function B4t(){let e=`${rh.ENVIRONMENT_PREFIX}rc_filename`;for(let[t,r]of Object.entries(process.env))if(t.toLowerCase()===e&&typeof r=="string")return r;return rh.DEFAULT_RC_FILENAME}async function lAn(e){try{return await kf.xfs.readFilePromise(e)}catch{return Buffer.of()}}async function oYs(e,t){return Buffer.compare(...await Promise.all([lAn(e),lAn(t)]))===0}async function aYs(e,t){let[r,s]=await Promise.all([kf.xfs.statPromise(e),kf.xfs.statPromise(t)]);return r.dev===s.dev&&r.ino===s.ino}var cYs=process.platform==="win32"?oYs:aYs;async function lYs({configuration:e,selfPath:t}){let r=e.get("yarnPath");return e.get("ignorePath")||r===null||r===t||await cYs(r,t)?null:r}var aVe=class e{static create(t,r,s){let a=new e(t);typeof r<"u"&&!(r instanceof Map)&&(a.projectCwd=r),a.importSettings(rh.coreDefinitions);let o=typeof s<"u"?s:r instanceof Map?r:new Map;for(let[g,p]of o)a.activatePlugin(g,p);return a}static async find(t,r,{strict:s=!0,usePathCheck:a=null,useRc:o=!0}={}){let g=sYs();delete g.rcFilename;let p=new e(t),f=await e.findRcFiles(t),m=await e.findFolderRcFile(Wit.getHomeFolder());m&&(f.find(he=>he.path===m.path)||f.unshift(m));let y=vne.resolveRcFiles(f.map(pe=>[pe.path,pe.data])),B=kf.PortablePath.dot,v=new Set(Object.keys(rh.coreDefinitions)),k=({yarnPath:pe,ignorePath:he,injectEnvironmentFiles:be})=>({yarnPath:pe,ignorePath:he,injectEnvironmentFiles:be}),T=({yarnPath:pe,ignorePath:he,injectEnvironmentFiles:be,...Te})=>{let ke={};for(let[x,et]of Object.entries(Te))v.has(x)&&(ke[x]=et);return ke},O=({yarnPath:pe,ignorePath:he,...be})=>{let Te={};for(let[ke,x]of Object.entries(be))v.has(ke)||(Te[ke]=x);return Te};if(p.importSettings(k(rh.coreDefinitions)),p.useWithSource("",k(g),t,{strict:!1}),y){let[pe,he]=y;p.useWithSource(pe,k(he),B,{strict:!1})}if(a){if(await lYs({configuration:p,selfPath:a})!==null)return p;p.useWithSource("",{ignorePath:!0},t,{strict:!1,overwrite:!0})}let X=await e.findProjectCwd(t);p.startingCwd=t,p.projectCwd=X;let U=Object.assign(Object.create(null),process.env);p.env=U;let le=await Promise.all(p.get("injectEnvironmentFiles").map(async pe=>{let he=pe.endsWith("?")?await kf.xfs.readFilePromise(pe.slice(0,-1),"utf8").catch(()=>""):await kf.xfs.readFilePromise(pe,"utf8");return(0,QHs.parse)(he)}));for(let pe of le)for(let[he,be]of Object.entries(pe))p.env[he]=Ck.replaceEnvVariables(be,{env:U});if(p.importSettings(T(rh.coreDefinitions)),p.useWithSource("",T(g),t,{strict:s}),y){let[pe,he]=y;p.useWithSource(pe,T(he),B,{strict:s})}let ae=pe=>"default"in pe?pe.default:pe,ge=new Map([["@@core",YHs.CorePlugin]]);if(r!==null)for(let pe of r.plugins.keys())ge.set(pe,ae(r.modules.get(pe)));for(let[pe,he]of ge)p.activatePlugin(pe,he);let fe=new Map([]);if(r!==null){let pe=new Map;for(let[Te,ke]of r.modules)pe.set(Te,()=>ke);let he=new Set,be=async(Te,ke)=>{let{factory:x,name:et}=Ck.dynamicRequire(Te);if(!x||he.has(et))return;let Ue=new Map(pe),Je=ft=>{if((0,MHs.isBuiltin)(ft))return Ck.dynamicRequire(ft);if(Ue.has(ft))return Ue.get(ft)();throw new yH.UsageError(`This plugin cannot access the package referenced via ${ft} which is neither a builtin, nor an exposed entry`)},Xe=await Ck.prettifyAsyncErrors(async()=>ae(await x(Je)),ft=>`${ft} (when initializing ${et}, defined in ${ke})`);pe.set(et,()=>Xe),he.add(et),fe.set(et,Xe)};if(g.plugins)for(let Te of g.plugins.split(";")){let ke=kf.ppath.resolve(t,kf.npath.toPortablePath(Te));await be(ke,"")}for(let{path:Te,cwd:ke,data:x}of f)if(o&&Array.isArray(x.plugins))for(let et of x.plugins){let Ue=typeof et!="string"?et.path:et,Je=et?.spec??"",Xe=et?.checksum??"";if(rh.LEGACY_PLUGINS.has(Je))continue;let ft=kf.ppath.resolve(ke,kf.npath.toPortablePath(Ue));if(!await kf.xfs.existsPromise(ft)){if(!Je){let Ur=Dy.pretty(p,kf.ppath.basename(ft,".cjs"),Dy.Type.NAME),Ot=Dy.pretty(p,".gitignore",Dy.Type.NAME),dr=Dy.pretty(p,p.values.get("rcFilename"),Dy.Type.NAME),Ar=Dy.pretty(p,"https://yarnpkg.com/getting-started/qa#which-files-should-be-gitignored",Dy.Type.URL);throw new yH.UsageError(`Missing source for the ${Ur} plugin - please try to remove the plugin from ${dr} then reinstall it manually. This error usually occurs because ${Ot} is incorrect, check ${Ar} to make sure your plugin folder isn't gitignored.`)}if(!Je.match(/^https?:/)){let Ur=Dy.pretty(p,kf.ppath.basename(ft,".cjs"),Dy.Type.NAME),Ot=Dy.pretty(p,p.values.get("rcFilename"),Dy.Type.NAME);throw new yH.UsageError(`Failed to recognize the source for the ${Ur} plugin - please try to delete the plugin from ${Ot} then reinstall it manually.`)}let Gt=await eYs.get(Je,{configuration:p}),er=$Hs.makeHash(Gt);if(Xe&&Xe!==er){let Ur=Dy.pretty(p,kf.ppath.basename(ft,".cjs"),Dy.Type.NAME),Ot=Dy.pretty(p,p.values.get("rcFilename"),Dy.Type.NAME),dr=Dy.pretty(p,`yarn plugin import ${Je}`,Dy.Type.CODE);throw new yH.UsageError(`Failed to fetch the ${Ur} plugin from its remote location: its checksum seems to have changed. If this is expected, please remove the plugin from ${Ot} then run ${dr} to reimport it.`)}await kf.xfs.mkdirPromise(kf.ppath.dirname(ft),{recursive:!0}),await kf.xfs.writeFilePromise(ft,Gt)}await be(ft,Te)}}for(let[pe,he]of fe)p.activatePlugin(pe,he);if(p.useWithSource("",O(g),t,{strict:s}),y){let[pe,he]=y;p.useWithSource(pe,O(he),B,{strict:s})}return p.get("enableGlobalCache")&&(p.values.set("cacheFolder",`${p.get("globalFolder")}/cache`),p.sources.set("cacheFolder","")),p}static async findRcFiles(t){let r=B4t(),s=[],a=t,o=null;for(;a!==o;){o=a;let g=kf.ppath.join(o,r);if(kf.xfs.existsSync(g)){let p=await kf.xfs.readFilePromise(g,"utf8"),f;try{f=(0,Lit.parseSyml)(p)}catch{let y="";throw p.match(/^\s+(?!-)[^:]+\s+\S+/m)&&(y=" (in particular, make sure you list the colons after each key name)"),new yH.UsageError(`Parse error when loading ${g}; please check it's proper Yaml${y}`)}s.unshift({path:g,cwd:o,data:f})}a=kf.ppath.dirname(o)}return s}static async findFolderRcFile(t){let r=kf.ppath.join(t,kf.Filename.rc),s;try{s=await kf.xfs.readFilePromise(r,"utf8")}catch(o){if(o.code==="ENOENT")return null;throw o}let a=(0,Lit.parseSyml)(s);return{path:r,cwd:t,data:a}}static async findProjectCwd(t){let r=null,s=t,a=null;for(;s!==a;){if(a=s,kf.xfs.existsSync(kf.ppath.join(a,kf.Filename.lockfile)))return a;kf.xfs.existsSync(kf.ppath.join(a,kf.Filename.manifest))&&(r=a),s=kf.ppath.dirname(a)}return r}static async updateConfiguration(t,r,s={}){let a=B4t(),o=kf.ppath.join(t,a),g=kf.xfs.existsSync(o)?(0,Lit.parseSyml)(await kf.xfs.readFilePromise(o,"utf8")):{},p=!1,f;if(typeof r=="function"){try{f=r(g)}catch{f=r({})}if(f===g)return!1}else{f=g;for(let m of Object.keys(r)){let y=g[m],B=r[m],v;if(typeof B=="function")try{v=B(y)}catch{v=B(void 0)}else v=B;y!==v&&(v===e.deleteProperty?delete f[m]:f[m]=v,p=!0)}if(!p)return!1}return await kf.xfs.changeFilePromise(o,(0,Lit.stringifySyml)(f),{automaticNewlines:!0}),!0}static async addPlugin(t,r){r.length!==0&&await e.updateConfiguration(t,s=>{let a=s.plugins??[];if(a.length===0)return{...s,plugins:r};let o=[],g=[...r];for(let p of a){let f=typeof p!="string"?p.path:p,m=g.find(y=>y.path===f);m?(o.push(m),g=g.filter(y=>y!==m)):o.push(p)}return o.push(...g),{...s,plugins:o}})}static async updateHomeConfiguration(t){let r=Wit.getHomeFolder();return await e.updateConfiguration(r,t)}constructor(t){this.isCI=jbe.isCI,this.projectCwd=null,this.plugins=new Map,this.settings=new Map,this.values=new Map,this.sources=new Map,this.invalid=new Map,this.env={},this.limits=new Map,this.packageExtensions=null,this.startingCwd=t}activatePlugin(t,r){this.plugins.set(t,r),typeof r.configuration<"u"&&this.importSettings(r.configuration)}importSettings(t){for(let[r,s]of Object.entries(t))if(s!=null){if(this.settings.has(r))throw new Error(`Cannot redefine settings "${r}"`);this.settings.set(r,s),this.values.set(r,S4t(this,s))}}useWithSource(t,r,s,a){try{this.use(t,r,s,a)}catch(o){throw o.message+=` (in ${Dy.pretty(this,t,Dy.Type.PATH)})`,o}}use(t,r,s,{strict:a=!0,overwrite:o=!1}={}){a=a&&this.get("enableStrictSettings");for(let g of["enableStrictSettings",...Object.keys(r)]){let p=r[g],f=vne.getSource(p);if(f&&(t=f),typeof p>"u"||g==="plugins"||t===""&&rYs.has(g))continue;if(g==="rcFilename")throw new yH.UsageError(`The rcFilename settings can only be set via ${`${rh.ENVIRONMENT_PREFIX}RC_FILENAME`.toUpperCase()}, not via a rc file`);let m=this.settings.get(g);if(!m){let B=Wit.getHomeFolder(),v=t[0]!=="<"?kf.ppath.dirname(t):null;if(a&&!(v!==null?B===v:!1))throw new yH.UsageError(`Unrecognized or legacy configuration settings found: ${g} - run "yarn config -v" to see the list of settings supported in Yarn`);this.invalid.set(g,t);continue}if(this.sources.has(g)&&!(o||m.type===Bl.MAP||m.isArray&&m.concatenateValues))continue;let y;try{y=v4t(this,g,p,m,s)}catch(B){throw B.message+=` in ${Dy.pretty(this,t,Dy.Type.PATH)}`,B}if(g==="enableStrictSettings"&&t!==""){a=y;continue}if(m.type===Bl.MAP){let B=this.values.get(g);this.values.set(g,new Map(o?[...B,...y]:[...y,...B])),this.sources.set(g,`${this.sources.get(g)}, ${t}`)}else if(m.isArray&&m.concatenateValues){let B=this.values.get(g);this.values.set(g,o?[...B,...y]:[...y,...B]),this.sources.set(g,`${this.sources.get(g)}, ${t}`)}else this.values.set(g,y),this.sources.set(g,t)}}get(t){if(!this.values.has(t))throw new Error(`Invalid configuration key "${t}"`);return this.values.get(t)}getSpecial(t,{hideSecrets:r=!1,getNativePaths:s=!1}){let a=this.get(t),o=this.settings.get(t);if(typeof o>"u")throw new yH.UsageError(`Couldn't find a configuration settings named "${t}"`);return Pit(a,o,{hideSecrets:r,getNativePaths:s})}getSubprocessStreams(t,{header:r,prefix:s,report:a}){let o,g,p=kf.xfs.createWriteStream(t);if(this.get("enableInlineBuilds")){let f=a.createStreamReporter(`${s} ${Dy.pretty(this,"STDOUT","green")}`),m=a.createStreamReporter(`${s} ${Dy.pretty(this,"STDERR","red")}`);o=new aAn.PassThrough,o.pipe(f),o.pipe(p),g=new aAn.PassThrough,g.pipe(m),g.pipe(p)}else o=p,g=p,typeof r<"u"&&o.write(`${r} +`);return{stdout:o,stderr:g}}makeResolver(){let t=[];for(let r of this.plugins.values())for(let s of r.resolvers||[])t.push(new s);return new UHs.MultiResolver([new jHs.VirtualResolver,new qHs.WorkspaceResolver,...t])}makeFetcher(){let t=[];for(let r of this.plugins.values())for(let s of r.fetchers||[])t.push(new s);return new JHs.MultiFetcher([new KHs.VirtualFetcher,new zHs.WorkspaceFetcher,...t])}getLinkers(){let t=[];for(let r of this.plugins.values())for(let s of r.linkers||[])t.push(new s);return t}getSupportedArchitectures(){let t=uAn.getArchitecture(),r=this.get("supportedArchitectures"),s=r.get("os");s!==null&&(s=s.map(g=>g==="current"?t.os:g));let a=r.get("cpu");a!==null&&(a=a.map(g=>g==="current"?t.cpu:g));let o=r.get("libc");return o!==null&&(o=Ck.mapAndFilter(o,g=>g==="current"?t.libc??Ck.mapAndFilter.skip:g)),{os:s,cpu:a,libc:o}}isInteractive({interactive:t,stdout:r}){return r.isTTY?t??this.get("preferInteractive"):!1}async getPackageExtensions(){if(this.packageExtensions!==null)return this.packageExtensions;this.packageExtensions=new Map;let t=this.packageExtensions,r=(s,a,{userProvided:o=!1}={})=>{if(!Vit.validRange(s.range))throw new Error("Only semver ranges are allowed as keys for the packageExtensions setting");let g=new XHs.Manifest;g.load(a,{yamlCompatibilityMode:!0});let p=Ck.getArrayWithDefault(t,s.identHash),f=[];p.push([s.range,f]);let m={status:vO.PackageExtensionStatus.Inactive,userProvided:o,parentDescriptor:s};for(let y of g.dependencies.values())f.push({...m,type:vO.PackageExtensionType.Dependency,descriptor:y});for(let y of g.peerDependencies.values())f.push({...m,type:vO.PackageExtensionType.PeerDependency,descriptor:y});for(let[y,B]of g.peerDependenciesMeta)for(let[v,k]of Object.entries(B))f.push({...m,type:vO.PackageExtensionType.PeerDependencyMeta,selector:y,key:v,value:k})};await this.triggerHook(s=>s.registerPackageExtensions,this,r);for(let[s,a]of this.get("packageExtensions"))r(SF.parseDescriptor(s,!0),Ck.convertMapsToIndexableObjects(a),{userProvided:!0});return t}normalizeLocator(t){return Vit.validRange(t.reference)?SF.makeLocator(t,`${this.get("defaultProtocol")}${t.reference}`):rh.TAG_REGEXP.test(t.reference)?SF.makeLocator(t,`${this.get("defaultProtocol")}${t.reference}`):t}normalizeDependency(t){return Vit.validRange(t.range)?SF.makeDescriptor(t,`${this.get("defaultProtocol")}${t.range}`):rh.TAG_REGEXP.test(t.range)?SF.makeDescriptor(t,`${this.get("defaultProtocol")}${t.range}`):t}normalizeDependencyMap(t){return new Map([...t].map(([r,s])=>[r,this.normalizeDependency(s)]))}normalizePackage(t,{packageExtensions:r}){let s=SF.copyPackage(t),a=r.get(t.identHash);if(typeof a<"u"){let g=t.version;if(g!==null){for(let[p,f]of a)if(Vit.satisfiesWithPrereleases(g,p))for(let m of f)switch(m.status===vO.PackageExtensionStatus.Inactive&&(m.status=vO.PackageExtensionStatus.Redundant),m.type){case vO.PackageExtensionType.Dependency:typeof s.dependencies.get(m.descriptor.identHash)>"u"&&(m.status=vO.PackageExtensionStatus.Active,s.dependencies.set(m.descriptor.identHash,this.normalizeDependency(m.descriptor)));break;case vO.PackageExtensionType.PeerDependency:typeof s.peerDependencies.get(m.descriptor.identHash)>"u"&&(m.status=vO.PackageExtensionStatus.Active,s.peerDependencies.set(m.descriptor.identHash,m.descriptor));break;case vO.PackageExtensionType.PeerDependencyMeta:{let y=s.peerDependenciesMeta.get(m.selector);(typeof y>"u"||!Object.hasOwn(y,m.key)||y[m.key]!==m.value)&&(m.status=vO.PackageExtensionStatus.Active,Ck.getFactoryWithDefault(s.peerDependenciesMeta,m.selector,()=>({}))[m.key]=m.value)}break;default:Ck.assertNever(m)}}}let o=g=>g.scope?`${g.scope}__${g.name}`:`${g.name}`;for(let g of s.peerDependenciesMeta.keys()){let p=SF.parseIdent(g);s.peerDependencies.has(p.identHash)||s.peerDependencies.set(p.identHash,SF.makeDescriptor(p,"*"))}for(let g of s.peerDependencies.values()){if(g.scope==="types")continue;let p=o(g),f=SF.makeIdent("types",p),m=SF.stringifyIdent(f);s.peerDependencies.has(f.identHash)||s.peerDependenciesMeta.has(m)||(s.peerDependencies.set(f.identHash,SF.makeDescriptor(f,"*")),s.peerDependenciesMeta.set(m,{optional:!0}))}return s.dependencies=new Map(Ck.sortMap(s.dependencies,([,g])=>SF.stringifyDescriptor(g))),s.peerDependencies=new Map(Ck.sortMap(s.peerDependencies,([,g])=>SF.stringifyDescriptor(g))),s}getLimit(t){return Ck.getFactoryWithDefault(this.limits,t,()=>(0,HHs.default)(this.get(t)))}async triggerHook(t,...r){for(let s of this.plugins.values()){let a=s.hooks;if(!a)continue;let o=t(a);o&&await o(...r)}}async triggerMultipleHooks(t,r){for(let s of r)await this.triggerHook(t,...s)}async reduceHook(t,r,...s){let a=r;for(let o of this.plugins.values()){let g=o.hooks;if(!g)continue;let p=t(g);p&&(a=await p(a,...s))}return a}async firstHook(t,...r){for(let s of this.plugins.values()){let a=s.hooks;if(!a)continue;let o=t(a);if(!o)continue;let g=await o(...r);if(typeof g<"u")return g}return null}};rh.Configuration=aVe;aVe.deleteProperty=Symbol();aVe.telemetry=null});var Zit=z(wJ=>{"use strict";Object.defineProperty(wJ,"__esModule",{value:!0});wJ.ExecError=wJ.PipeError=wJ.EndStrategy=void 0;wJ.pipevp=uYs;wJ.execvp=gYs;var gAn=(Oa(),Ai(Pa)),Oit=No(),AAn=gAn.__importDefault(ort()),dAn=cVe(),Qit=NL(),pAn=_O(),SO=gAn.__importStar(CO()),vAe;(function(e){e[e.Never=0]="Never",e[e.ErrorCode=1]="ErrorCode",e[e.Always=2]="Always"})(vAe||(wJ.EndStrategy=vAe={}));var lVe=class extends pAn.ReportError{constructor({fileName:t,code:r,signal:s}){let a=dAn.Configuration.create(Oit.ppath.cwd()),o=SO.pretty(a,t,SO.Type.PATH);super(Qit.MessageName.EXCEPTION,`Child ${o} reported an error`,g=>{dYs(r,s,{configuration:a,report:g})}),this.code=N4t(r,s)}};wJ.PipeError=lVe;var Mit=class extends lVe{constructor({fileName:t,code:r,signal:s,stdout:a,stderr:o}){super({fileName:t,code:r,signal:s}),this.stdout=a,this.stderr=o}};wJ.ExecError=Mit;function EAe(e){return e!==null&&typeof e.fd=="number"}var BAe=new Set;function w4t(){}function T4t(){for(let e of BAe)e.kill()}async function uYs(e,t,{cwd:r,env:s=process.env,strict:a=!1,stdin:o=null,stdout:g,stderr:p,end:f=vAe.Always}){let m=["pipe","pipe","pipe"];o===null?m[0]="ignore":EAe(o)&&(m[0]=o),EAe(g)&&(m[1]=g),EAe(p)&&(m[2]=p);let y=(0,AAn.default)(e,t,{cwd:Oit.npath.fromPortablePath(r),env:{...s,PWD:Oit.npath.fromPortablePath(r)},stdio:m});BAe.add(y),BAe.size===1&&(process.on("SIGINT",w4t),process.on("SIGTERM",T4t)),!EAe(o)&&o!==null&&o.pipe(y.stdin),EAe(g)||y.stdout.pipe(g,{end:!1}),EAe(p)||y.stderr.pipe(p,{end:!1});let B=()=>{for(let v of new Set([g,p]))EAe(v)||v.end()};return new Promise((v,k)=>{y.on("error",T=>{BAe.delete(y),BAe.size===0&&(process.off("SIGINT",w4t),process.off("SIGTERM",T4t)),(f===vAe.Always||f===vAe.ErrorCode)&&B(),k(T)}),y.on("close",(T,O)=>{BAe.delete(y),BAe.size===0&&(process.off("SIGINT",w4t),process.off("SIGTERM",T4t)),(f===vAe.Always||f===vAe.ErrorCode&&T!==0)&&B(),T===0||!a?v({code:N4t(T,O)}):k(new lVe({fileName:e,code:T,signal:O}))})})}async function gYs(e,t,{cwd:r,env:s=process.env,encoding:a="utf8",strict:o=!1}){let g=["ignore","pipe","pipe"],p=[],f=[],m=Oit.npath.fromPortablePath(r);typeof s.PWD<"u"&&(s={...s,PWD:m});let y=(0,AAn.default)(e,t,{cwd:m,env:s,stdio:g});return y.stdout.on("data",B=>{p.push(B)}),y.stderr.on("data",B=>{f.push(B)}),await new Promise((B,v)=>{y.on("error",k=>{let T=dAn.Configuration.create(r),O=SO.pretty(T,e,SO.Type.PATH);v(new pAn.ReportError(Qit.MessageName.EXCEPTION,`Process ${O} failed to spawn`,X=>{X.reportError(Qit.MessageName.EXCEPTION,` ${SO.prettyField(T,{label:"Thrown Error",value:SO.tuple(SO.Type.NO_HINT,k.message)})}`)}))}),y.on("close",(k,T)=>{let O=a==="buffer"?Buffer.concat(p):Buffer.concat(p).toString(a),X=a==="buffer"?Buffer.concat(f):Buffer.concat(f).toString(a);k===0||!o?B({code:N4t(k,T),stdout:O,stderr:X}):v(new Mit({fileName:e,code:k,signal:T,stdout:O,stderr:X}))})})}var AYs=new Map([["SIGINT",2],["SIGQUIT",3],["SIGKILL",9],["SIGTERM",15]]);function N4t(e,t){let r=AYs.get(t);return typeof r<"u"?128+r:e??1}function dYs(e,t,{configuration:r,report:s}){s.reportError(Qit.MessageName.EXCEPTION,` ${SO.prettyField(r,e!==null?{label:"Exit Code",value:SO.tuple(SO.Type.NUMBER,e)}:{label:"Exit Signal",value:SO.tuple(SO.Type.CODE,t)})}`)}});var R4t=z(TJ=>{"use strict";Object.defineProperty(TJ,"__esModule",{value:!0});TJ.cachedInstance=void 0;TJ.setFactory=pYs;TJ.getInstance=fYs;TJ.tryInstance=IYs;var fAn=()=>{throw new Error("Assertion failed: No libzip instance is available, and no factory was configured")};function pYs(e){fAn=e}function fYs(){return typeof TJ.cachedInstance>"u"&&(TJ.cachedInstance=fAn()),TJ.cachedInstance}function IYs(){return TJ.cachedInstance}});var IAn=z((Hit,x4t)=>{var CYs=Object.assign({},xt("fs")),D4t=function(){var e=typeof document<"u"&&document.currentScript?document.currentScript.src:void 0;return typeof __filename<"u"&&(e=e||__filename),function(t){t=t||{};var r=typeof t<"u"?t:{},s,a;r.ready=new Promise(function(fs,go){s=fs,a=go});var o={},g;for(g in r)r.hasOwnProperty(g)&&(o[g]=r[g]);var p=[],f="./this.program",m=function(fs,go){throw go},y=!1,B=!0,v="";function k(fs){return r.locateFile?r.locateFile(fs,v):v+fs}var T,O,X,U;B&&(y?v=xt("path").dirname(v)+"/":v=__dirname+"/",T=function(go,Ro){var ql=lf(go);return ql?Ro?ql:ql.toString():(X||(X=CYs),U||(U=xt("path")),go=U.normalize(go),X.readFileSync(go,Ro?null:"utf8"))},O=function(go){var Ro=T(go,!0);return Ro.buffer||(Ro=new Uint8Array(Ro)),et(Ro.buffer),Ro},process.argv.length>1&&(f=process.argv[1].replace(/\\/g,"/")),p=process.argv.slice(2),m=function(fs){process.exit(fs)},r.inspect=function(){return"[Emscripten Module object]"});var le=r.print||console.log.bind(console),ae=r.printErr||console.warn.bind(console);for(g in o)o.hasOwnProperty(g)&&(r[g]=o[g]);o=null,r.arguments&&(p=r.arguments),r.thisProgram&&(f=r.thisProgram),r.quit&&(m=r.quit);var ge=0,fe=function(fs){ge=fs},pe;r.wasmBinary&&(pe=r.wasmBinary);var he=r.noExitRuntime||!0;typeof WebAssembly!="object"&&Ji("no native wasm support detected");function be(fs,go,Ro){switch(go=go||"i8",go.charAt(go.length-1)==="*"&&(go="i32"),go){case"i1":return $r[fs>>0];case"i8":return $r[fs>>0];case"i16":return Lu((fs>>1)*2);case"i32":return ml((fs>>2)*4);case"i64":return ml((fs>>2)*4);case"float":return Zu((fs>>2)*4);case"double":return mg((fs>>3)*8);default:Ji("invalid type for getValue: "+go)}return null}var Te,ke=!1,x;function et(fs,go){fs||Ji("Assertion failed: "+go)}function Ue(fs){var go=r["_"+fs];return et(go,"Cannot call unknown function "+fs+", make sure it is exported"),go}function Je(fs,go,Ro,ql,Nr){var Nn={string:function(PI){var fl=0;if(PI!=null&&PI!==0){var Hm=(PI.length<<2)+1;fl=Jl(Hm),Ur(PI,fl,Hm)}return fl},array:function(PI){var fl=Jl(PI.length);return Ar(PI,fl),fl}};function Di(PI){return go==="string"?Gt(PI):go==="boolean"?!!PI:PI}var ra=Ue(fs),Us=[],Li=0;if(ql)for(var Ll=0;Ll=Ro)&&Or[ql];)++ql;return ft.decode(Or.subarray(fs,ql))}function er(fs,go,Ro,ql){if(!(ql>0))return 0;for(var Nr=Ro,Nn=Ro+ql-1,Di=0;Di=55296&&ra<=57343){var Us=fs.charCodeAt(++Di);ra=65536+((ra&1023)<<10)|Us&1023}if(ra<=127){if(Ro>=Nn)break;go[Ro++]=ra}else if(ra<=2047){if(Ro+1>=Nn)break;go[Ro++]=192|ra>>6,go[Ro++]=128|ra&63}else if(ra<=65535){if(Ro+2>=Nn)break;go[Ro++]=224|ra>>12,go[Ro++]=128|ra>>6&63,go[Ro++]=128|ra&63}else{if(Ro+3>=Nn)break;go[Ro++]=240|ra>>18,go[Ro++]=128|ra>>12&63,go[Ro++]=128|ra>>6&63,go[Ro++]=128|ra&63}}return go[Ro]=0,Ro-Nr}function Ur(fs,go,Ro){return er(fs,Or,go,Ro)}function Ot(fs){for(var go=0,Ro=0;Ro=55296&&ql<=57343&&(ql=65536+((ql&1023)<<10)|fs.charCodeAt(++Ro)&1023),ql<=127?++go:ql<=2047?go+=2:ql<=65535?go+=3:go+=4}return go}function dr(fs){var go=Ot(fs)+1,Ro=Kd(go);return Ro&&er(fs,$r,Ro,go),Ro}function Ar(fs,go){$r.set(fs,go)}function or(fs,go){return fs%go>0&&(fs+=go-fs%go),fs}var Fr,$r,Or,In,Br,tr,gn,Gn,we,Zi;function Fa(fs){Fr=fs,r.HEAP_DATA_VIEW=Zi=new DataView(fs),r.HEAP8=$r=new Int8Array(fs),r.HEAP16=In=new Int16Array(fs),r.HEAP32=tr=new Int32Array(fs),r.HEAPU8=Or=new Uint8Array(fs),r.HEAPU16=Br=new Uint16Array(fs),r.HEAPU32=gn=new Uint32Array(fs),r.HEAPF32=Gn=new Float32Array(fs),r.HEAPF64=we=new Float64Array(fs)}var xa=r.INITIAL_MEMORY||16777216,Qs,lr=[],ua=[],vi=[],Hu=!1;function Yu(){if(r.preRun)for(typeof r.preRun=="function"&&(r.preRun=[r.preRun]);r.preRun.length;)NA(r.preRun.shift());ts(lr)}function YA(){Hu=!0,ts(ua)}function gd(){if(r.postRun)for(typeof r.postRun=="function"&&(r.postRun=[r.postRun]);r.postRun.length;)jr(r.postRun.shift());ts(vi)}function NA(fs){lr.unshift(fs)}function Vd(fs){ua.unshift(fs)}function jr(fs){vi.unshift(fs)}var Gr=0,Ir=null,nn=null;function Cn(fs){Gr++,r.monitorRunDependencies&&r.monitorRunDependencies(Gr)}function Vn(fs){if(Gr--,r.monitorRunDependencies&&r.monitorRunDependencies(Gr),Gr==0&&(Ir!==null&&(clearInterval(Ir),Ir=null),nn)){var go=nn;nn=null,go()}}r.preloadedImages={},r.preloadedAudios={};function Ji(fs){r.onAbort&&r.onAbort(fs),fs+="",ae(fs),ke=!0,x=1,fs="abort("+fs+"). Build with -s ASSERTIONS=1 for more info.";var go=new WebAssembly.RuntimeError(fs);throw a(go),go}var Yr="data:application/octet-stream;base64,";function Vs(fs){return fs.startsWith(Yr)}var Uo="data:application/octet-stream;base64,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QCAAKAJIIgEgASADaiADEAcaAkAgAyAAKAJsIgFNBEAgACABIANrNgJsDAELIABCADcCbAsgACAAKAJoIANrIgE2AmggACAAKAJYIANrNgJYIAEgACgChC5JBEAgACABNgKELgsgAEH8gAEoAgARAwAgAiADaiECCwJAIAAoAgAiASgCBCIERQ0AIAAoAjwhBSAAIAIgBCACIARJGyICBH8gACgCSCAAKAJoaiAFaiEFIAEgBCACazYCBAJAAkACQAJAIAEoAhwiBCgCFEEBaw4CAQACCyAEQaABaiAFIAEoAgAgAkHcgAEoAgARCAAMAgsgASABKAIwIAUgASgCACACQcSAASgCABEEADYCMAwBCyAFIAEoAgAgAhAHGgsgASABKAIAIAJqNgIAIAEgASgCCCACajYCCCAAKAI8BSAFCyACaiICNgI8AkAgACgChC4iASACakEDSQ0AIAAoAmggAWshAQJAIAAoAnRBgQhPBEAgACAAIAAoAkggAWoiAi0AACACLQABIAAoAnwRAAA2AlQMAQsgAUUNACAAIAFBAWsgACgChAERAgAaCyAAKAKELiAAKAI8IgJBAUZrIgRFDQAgACABIAQgACgCgAERBQAgACAAKAKELiAEazYChC4gACgCPCECCyACQYUCSw0AIAAoAgAoAgRFDQAgACgCMCEBDAELCwJAIAAoAkQiAiAAKAJAIgNNDQAgAAJ/IAAoAjwgACgCaGoiASADSwRAIAAoAkggAWpBACACIAFrIgNBggIgA0GCAkkbIgMQGSABIANqDAELIAFBggJqIgEgA00NASAAKAJIIANqQQAgAiADayICIAEgA2siAyACIANJGyIDEBkgACgCQCADags2AkALC50CAQF/AkAgAAJ/IAAoAqAuIgFBwABGBEAgACgCBCAAKAIQaiAAKQOYLjcAACAAQgA3A5guIAAgACgCEEEIajYCEEEADAELIAFBIE4EQCAAKAIEIAAoAhBqIAApA5guPgAAIAAgAEGcLmo1AgA3A5guIAAgACgCEEEEajYCECAAIAAoAqAuQSBrIgE2AqAuCyABQRBOBEAgACgCBCAAKAIQaiAAKQOYLj0AACAAIAAoAhBBAmo2AhAgACAAKQOYLkIQiDcDmC4gACAAKAKgLkEQayIBNgKgLgsgAUEISA0BIAAgACgCECIBQQFqNgIQ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KAJUIgEEfyABQQAgARAiEBkgACgCVAVBAAsQBiAAQQA2AlQLC9wMAgl/AX4jAEFAaiIGJAACQAJAAkACQAJAIAEoAjBBABAjIgVBAkZBACABKAI4QQAQIyIEQQFGGw0AIAVBAUZBACAEQQJGGw0AIAVBAkciAw0BIARBAkcNAQsgASABLwEMQYAQcjsBDEEAIQMMAQsgASABLwEMQf/vA3E7AQxBACEFIANFBEBB9eABIAEoAjAgAEEIahBpIgVFDQILIAJBgAJxBEAgBSEDDAELIARBAkcEQCAFIQMMAQtB9cYBIAEoAjggAEEIahBpIgNFBEAgBRAcDAILIAMgBTYCAAsgASABLwEMQf7/A3EgAS8BUiIFQQBHcjsBDAJAAkACQAJAAn8CQAJAIAEpAyhC/v///w9WDQAgASkDIEL+////D1YNACACQYAEcUUNASABKQNIQv////8PVA0BCyAFQYECa0H//wNxQQNJIQdBAQwBCyAFQYECa0H//wNxIQQgAkGACnFBgApHDQEgBEEDSSEHQQALIQkgBkIcEBciBEUEQCAAQQhqIgAEQCAAQQA2AgQgAEEONgIACyADEBwMBQsgAkGACHEhBQJAAkAgAkGAAnEEQAJAIAUNACABKQMgQv////8PVg0AIAEpAyhCgICAgBBUDQMLIAQgASkDKBAYIAEpAyAhDAwBCwJAAkACQCAFDQAgASkDIEL/////D1YNACABKQMoIgxC/////w9WDQEgASkDSEKAgICAEFQNBAsgASkDKCIMQv////8PVA0BCyAEIAwQGAsgASkDICIMQv////8PWgRAIAQgDBAYCyABKQNIIgxC/////w9UDQELIAQgDBAYCyAELQAARQRAIABBCGoiAARAIABBADYCBCAAQRQ2AgALIAQQCCADEBwMBQtBASEKQQEgBC0AAAR+IAQpAxAFQgALp0H//wNxIAYQRyEFIAQQCCAFIAM2AgAgBw0BDAILIAMhBSAEQQJLDQELIAZCBxAXIgRFBEAgAEEIaiIABEAgAEEANgIEIABBDjYCAAsgBRAcDAMLIARBAhANIARBhxJBAhAsIAQgAS0AUhBwIAQgAS8BEBANIAQtAABFBEAgAEEIaiIABEAgAEEANgIEIABBFDYCAAsgBBAIDAILQYGyAkEHIAYQRyEDIAQQCCADIAU2AgBBASEL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NgIEIABB7A42AhggGiEdDAMLIARB/wFxIgJBwABxRQRAIAggDSADLwECQQJ0aiAdp0F/IAJ0QX9zcUECdGoiAy0AASICayEIIB0gAq2IIR0gAy0AACIERQ0HDAELCyAEQSBxBEAgB0G//gA2AgQgASECDAgLIAdB0f4ANgIEIABB0A42AhggASECDAcLIB1BfyAGdEF/c62DIBt8IhunIQUgCCAEQQ9xIgNrIQggGiAErUIPg4ghHSABIBdrIgYgAjMBAiAaQX8gA3RBf3Otg3ynIgRPDQIgBCAGayIGIBlNDQEgBygCjEdFDQEgB0HR/gA2AgQgAEG5DDYCGAsgASECIAshBQwFCwJAIA5FBEAgDCARIAZraiEDDAELIAYgDk0EQCAMIA4gBmtqIQMMAQsgDCARIAYgDmsiBmtqIQMgBSAGTQ0AIAUgBmshBQJAAkAgASADTSABIA8gAWusIhogBq0iGyAaIBtUGyIapyIGaiICIANLcQ0AIAMgBmogAUsgASADT3ENACABIAMgBhAHGiACIQEMAQsgASADIAMgAWsiASABQR91IgFqIAFzIgIQByACaiEBIBogAq0iHn0iHFANACACIANqIQIDQAJAIBwgHiAcIB5UGyIbQiBUBEAgGyEaDAELIBsiGkIgfSIgQgWIQgF8QgODIh9QRQRAA0AgASACKQAANwAAIAEgAikAGDcAGCABIAIpABA3ABAgASACKQAINwAIIBpCIH0hGiACQSBqIQIgAUEgaiEBIB9CAX0iH0IAUg0ACwsgIELgAFQNAANAIAEgAikAADcAACABIAIpABg3ABggASACKQAQNwAQIAEgAikACDcACCABIAIpADg3ADggASACKQAwNwAwIAEgAikAKDcAKCABIAIpACA3ACAgASACKQBYNwBYIAEgAikAUDcAUCABIAIpAEg3AEggASACKQBANwBAIAEgAikAYDcAYCABIAIpAGg3AGggASACKQBwNwBwIAEgAikAeDcAeCACQYABaiECIAFBgAFqIQEgGkKAAX0iGkIfVg0ACwsgGkIQWgRAIAEgAikAADcAACABIAIpAAg3AAggGkIQfSEaIAJBEGohAiABQRBqIQELIBpCCFoEQCABIAIpAAA3AAAgGkIIfSEaIAJBCGohAiABQQhqIQELIBpCBFoEQCABIAIoAAA2AAAgGkIEfSEaIAJBBGohAiABQQRqIQELIBpCAloEQCABIAIvAAA7AAAgGkICfSEaIAJBAmohAiABQQJqIQELIBwgG30hHCAaUEUEQCABIAItAAA6AAAgAkEBaiECIAFBAWohAQsgHEIAUg0ACwsgDiEGIAwhAwsgBSAGSwRAAkACQCABIANNIAEgDyABa6wiGiAGrSIbIBogG1QbIhqnIglqIgIgA0txDQAgAyAJaiABSyABIANPcQ0AIAEgAyAJEAcaDAELIAEgAyADIAFrIgEgAUEfdSIBaiABcyIBEAcgAWohAiAaIAGtIh59IhxQDQAgASADaiEBA0ACQCAcIB4gHCAeVBsiG0IgVARAIBshGgwBCyAbIhpCIH0iIEIFiEIBfEIDgyIfUEUEQANAIAIgASkAADcAACACIAEpABg3ABggAiABKQAQNwAQIAIgASkACDcACCAaQiB9IRogAUEgaiEBIAJBIGohAiAfQgF9Ih9CAFINAAsLICBC4ABUDQADQCACIAEpAAA3AAAgAiABKQAYNwAYIAIgASkAEDcAECACIAEpAAg3AAggAiABKQA4NwA4IAIgASkAMDcAMCACIAEpACg3ACggAiABKQAgNwAgIAIgASkAWDcAWCACIAEpAFA3AFAgAiABKQBINwBIIAIgASkAQDcAQCACIAEpAGA3AGAgAiABKQBoNwBoIAIgASkAcDcAcCACIAEpAHg3AHggAUGAAWohASACQYABaiECIBpCgAF9IhpCH1YNAAsLIBpCEFoEQCACIAEpAAA3AAAgAiABKQAINwAIIBpCEH0hGiACQRBqIQIgAUEQaiEBCyAaQghaBEAgAiABKQAANwAAIBpCCH0hGiACQQhqIQIgAUEIaiEBCyAaQgRaBEAgAiABKAAANgAAIBpCBH0hGiACQQRqIQIgAUEEaiEBCyAaQgJaBEAgAiABLwAAOwAAIBpCAn0hGiACQQJqIQIgAUECaiEBCyAcIBt9IRwgGlBFBEAgAiABLQAAOgAAIAJBAWohAiABQQFqIQELIBxCAFINAAsLIAUgBmshAUEAIARrIQUCQCAEQQdLBEAgBCEDDAELIAEgBE0EQCAEIQMMAQsgAiAEayEFA0ACQCACIAUpAAA3AAAgBEEBdCEDIAEgBGshASACIARqIQIgBEEDSw0AIAMhBCABIANLDQELC0EAIANrIQULIAIgBWohBAJAIAUgDyACa6wiGiABrSIbIBogG1QbIhqnIgFIIAVBf0pxDQAgBUEBSCABIARqIAJLcQ0AIAIgBCABEAcgAWohAgwDCyACIAQgAyADQR91IgFqIAFzIgEQByABaiECIBogAa0iHn0iHFANAiABIARqIQEDQAJAIBwgHiAcIB5UGyIbQiBUBEAgGyEaDAELIBsiGkIgfSIgQgWIQgF8QgODIh9QRQRAA0AgAiABKQAANwAAIAIgASkAGDcAGCACIAEpABA3ABAgAiABKQAINwAIIBpCIH0hGiABQSBqIQEgAkEgaiECIB9CAX0iH0IAUg0ACwsgIELgAFQNAANAIAIgASkAADcAACACIAEpABg3ABggAiABKQAQNwAQIAIgASkACDcACCACIAEpADg3ADggAiABKQAwNwAwIAIgASkAKDcAKCACIAEpACA3ACAgAiABKQBYNwBYIAIgASkAUDcAUCACIAEpAEg3AEggAiABKQBANwBAIAIgASkAYDcAYCACIAEpAGg3AGggAiABKQBwNwBwIAIgASkAeDcAeCABQYABaiEBIAJBgAFqIQIgGkKAAX0iGkIfVg0ACwsgGkIQWgRAIAIgASkAADcAACACIAEpAAg3AAggGkIQfSEaIAJBEGohAiABQRBqIQELIBpCCFoEQCACIAEpAAA3AAAgGkIIfSEaIAJBCGohAiABQQhqIQELIBpCBFoEQCACIAEoAAA2AAAgGkIEfSEaIAJBBGohAiABQQRqIQELIBpCAloEQCACIAEvAAA7AAAgGkICfSEaIAJBAmohAiABQQJqIQELIBwgG30hHCAaUEUEQCACIAEtAAA6AAAgAkEBaiECIAFBAWohAQsgHFBFDQALDAILAkAgASADTSABIA8gAWusIhogBa0iGyAaIBtUGyIapyIEaiICIANLcQ0AIAMgBGogAUsgASADT3ENACABIAMgBBAHGgwCCyABIAMgAyABayIBIAFBH3UiAWogAXMiARAHIAFqIQIgGiABrSIefSIcUA0BIAEgA2ohAQNAAkAgHCAeIBwgHlQbIhtCIFQEQCAbIRoMAQsgGyIaQiB9IiBCBYhCAXxCA4MiH1BFBEADQCACIAEpAAA3AAAgAiABKQAYNwAYIAIgASkAEDcAECACIAEpAAg3AAggGkIgfSEaIAFBIGohASACQSBqIQIgH0IBfSIfQgBSDQALCyAgQuAAVA0AA0AgAiABKQAANwAAIAIgASkAGDcAGCACIAEpABA3ABAgAiABKQAINwAIIAIgASkAODcAOCACIAEpADA3ADAgAiABKQAoNwAoIAIgASkAIDcAICACIAEpAFg3AFggAiABKQBQNwBQIAIgASkASDcASCACIAEpAEA3AEAgAiABKQBgNwBgIAIgASkAaDcAaCACIAEpAHA3AHAgAiABKQB4NwB4IAFBgAFqIQEgAkGAAWohAiAaQoABfSIaQh9WDQALCyAaQhBaBEAgAiABKQAANwAAIAIgASkACDcACCAaQhB9IRogAkEQaiECIAFBEGohAQsgGkIIWgRAIAIgASkAADcAACAaQgh9IRogAkEIaiECIAFBCGohAQsgGkIEWgRAIAIgASgAADYAACAaQgR9IRogAkEEaiECIAFBBGohAQsgGkICWgRAIAIgAS8AADsAACAaQgJ9IRogAkECaiECIAFBAmohAQsgHCAbfSEcIBpQRQRAIAIgAS0AADoAACACQQFqIQIgAUEBaiEBCyAcUEUNAAsMAQsCQAJAIBYEQAJAIAQgBUkEQCAHKAKYRyAESw0BCyABIARrIQMCQEEAIARrIgVBf0ogDyABa6wiGiAbIBogG1QbIhqnIgIgBUpxDQAgBUEBSCACIANqIAFLcQ0AIAEgAyACEAcgAmohAgwFCyABIAMgBCAEQR91IgFqIAFzIgEQByABaiECIBogAa0iHn0iHFANBCABIANqIQEDQAJAIBwgHiAcIB5UGyIbQiBUBEAgGyEaDAELIBsiGkIgfSIgQgWIQgF8QgODIh9QRQRAA0AgAiABKQAANwAAIAIgASkAGDcAGCACIAEpABA3ABAgAiABKQAINwAIIBpCIH0hGiABQSBqIQEgAkEgaiECIB9CAX0iH0IAUg0ACwsgIELgAFQNAANAIAIgASkAADcAACACIAEpABg3ABggAiABKQAQNwAQIAIgASkACDcACCACIAEpADg3ADggAiABKQAwNwAwIAIgASkAKDcAKCACIAEpACA3ACAgAiABKQBYNwBYIAIgASkAUDcAUCACIAEpAEg3AEggAiABKQBANwBAIAIgASkAYDcAYCACIAEpAGg3AGggAiABKQBwNwBwIAIgASkAeDcAeCABQYABaiEBIAJBgAFqIQIgGkKAAX0iGkIfVg0ACwsgGkIQWgRAIAIgASkAADcAACACIAEpAAg3AAggGkIQfSEaIAJBEGohAiABQRBqIQELIBpCCFoEQCACIAEpAAA3AAAgGkIIfSEaIAJBCGohAiABQQhqIQELIBpCBFoEQCACIAEoAAA2AAAgGkIEfSEaIAJBBGohAiABQQRqIQELIBpCAloEQCACIAEvAAA7AAAgGkICfSEaIAJBAmohAiABQQJqIQELIBwgG30hHCAaUEUEQCACIAEtAAA6AAAgAkEBaiECIAFBAWohAQsgHFBFDQALDAQLIBAgAWsiCUEBaiIGIAUgBSAGSxshAyABIARrIQIgAUEHcUUNAiADRQ0CIAEgAi0AADoAACACQQFqIQIgAUEBaiIGQQdxQQAgA0EBayIFGw0BIAYhASAFIQMgCSEGDAILAkAgBCAFSQRAIAcoAphHIARLDQELIAEgASAEayIGKQAANwAAIAEgBUEBa0EHcUEBaiIDaiECIAUgA2siBEUNAyADIAZqIQEDQCACIAEpAAA3AAAgAUEIaiEBIAJBCGohAiAEQQhrIgQNAAsMAwsgASAEIAUQPyECDAILIAEgAi0AADoAASAJQQFrIQYgA0ECayEFIAJBAWohAgJAIAFBAmoiCkEHcUUNACAFRQ0AIAEgAi0AADoAAiAJQQJrIQYgA0EDayEFIAJBAWohAgJAIAFBA2oiCkEHcUUNACAFRQ0AIAEgAi0AADoAAyAJQQNrIQYgA0EEayEFIAJBAWohAgJAIAFBBGoiCkEHcUUNACAFRQ0AIAEgAi0AADoABCAJQQRrIQYgA0EFayEFIAJBAWohAgJAIAFBBWoiCkEHcUUNACAFRQ0AIAEgAi0AADoABSAJQQVrIQYgA0EGayEFIAJBAWohAgJAIAFBBmoiCkEHcUUNACAFRQ0AIAEgAi0AADoABiAJQQZrIQYgA0EHayEFIAJBAWohAgJAIAFBB2oiCkEHcUUNACAFRQ0AIAEgAi0AADoAByAJQQdrIQYgA0EIayEDIAFBCGohASACQQFqIQIMBgsgCiEBIAUhAwwFCyAKIQEgBSEDDAQLIAohASAFIQMMAwsgCiEBIAUhAwwCCyAKIQEgBSEDDAELIAohASAFIQMLAkACQCAGQRdNBEAgA0UNASADQQFrIQUgA0EHcSIEBEADQCABIAItAAA6AAAgA0EBayEDIAFBAWohASACQQFqIQIgBEEBayIEDQALCyAFQQdJDQEDQCABIAItAAA6AAAgASACLQABOgABIAEgAi0AAjoAAiABIAItAAM6AAMgASACLQAEOgAEIAEgAi0ABToABSABIAItAAY6AAYgASACLQAHOgAHIAFBCGohASACQQhqIQIgA0EIayIDDQALDAELIAMNAQsgASECDAELIAEgBCADED8hAgsgCyEFDAELIAEgAy0AAjoAACABQQFqIQILIAUgFE8NACACIBNJDQELCyAAIAI2AgwgACAFIAhBA3ZrIgE2AgAgACATIAJrQYMCajYCECAAIBQgAWtBDmo2AgQgByAIQQdxIgA2AogBIAcgHUJ/IACthkJ/hYM+AoQBC+cFAQR/IAMgAiACIANLGyEEIAAgAWshAgJAIABBB3FFDQAgBEUNACAAIAItAAA6AAAgA0EBayEGIAJBAWohAiAAQQFqIgdBB3FBACAEQQFrIgUbRQRAIAchACAFIQQgBiEDDAELIAAgAi0AADoAASADQQJrIQYgBEECayEFIAJBAWohAgJAIABBAmoiB0EHcUUNACAFRQ0AIAAgAi0AADoAAiADQQNrIQYgBEEDayEFIAJBAWohAgJAIABBA2oiB0EHcUUNACAFRQ0AIAAgAi0AADoAAyADQQRrIQYgBEEEayEFIAJBAWohAgJAIABBBGoiB0EHcUUNACAFRQ0AIAAgAi0AADoABCADQQVrIQYgBEEFayEFIAJBAWohAgJAIABBBWoiB0EHcUUNACAFRQ0AIAAgAi0AADoABSADQQZrIQYgBEEGayEFIAJBAWohAgJAIABBBmoiB0EHcUUNACAFRQ0AIAAgAi0AADoABiADQQdrIQYgBEEHayEFIAJBAWohAgJAIABBB2oiB0EHcUUNACAFRQ0AIAAgAi0AADoAByADQQhrIQMgBEEIayEEIABBCGohACACQQFqIQIMBgsgByEAIAUhBCAGIQMMBQsgByEAIAUhBCAGIQMMBAsgByEAIAUhBCAGIQMMAwsgByEAIAUhBCAGIQMMAgsgByEAIAUhBCAGIQMMAQsgByEAIAUhBCAGIQMLAkAgA0EXTQRAIARFDQEgBEEBayEBIARBB3EiAwRAA0AgACACLQAAOgAAIARBAWshBCAAQQFqIQAgAkEBaiECIANBAWsiAw0ACwsgAUEHSQ0BA0AgACACLQAAOgAAIAAgAi0AAToAASAAIAItAAI6AAIgACACLQADOgADIAAgAi0ABDoABCAAIAItAAU6AAUgACACLQAGOgAGIAAgAi0ABzoAByAAQQhqIQAgAkEIaiECIARBCGsiBA0ACwwBCyAERQ0AIAAgASAEED8hAAsgAAvyCAEXfyAAKAJoIgwgACgCMEGGAmsiBWtBACAFIAxJGyENIAAoAnQhAiAAKAKQASEPIAAoAkgiDiAMaiIJIAAoAnAiBUECIAUbIgVBAWsiBmoiAy0AASESIAMtAAAhEyAGIA5qIQZBAyEDIAAoApQBIRYgACgCPCEUIAAoAkwhECAAKAI4IRECQAJ/IAVBA0kEQCANIQggDgwBCyAAIABBACAJLQABIAAoAnwRAAAgCS0AAiAAKAJ8EQAAIQoDQCAAIAogAyAJai0AACAAKAJ8EQAAIQogACgCUCAKQQF0ai8BACIIIAEgCCABQf//A3FJIggbIQEgA0ECayAHIAgbIQcgA0EBaiIDIAVNDQALIAFB//8DcSAHIA1qIghB//8DcU0NASAGIAdB//8DcSIDayEGIA4gA2sLIQMCQAJAIAwgAUH//wNxTQ0AIAIgAkECdiAFIA9JGyEKIA1B//8DcSEVIAlBAmohDyAJQQRrIRcDQAJAAkAgBiABQf//A3EiC2otAAAgE0cNACAGIAtBAWoiAWotAAAgEkcNACADIAtqIgItAAAgCS0AAEcNACABIANqLQAAIAktAAFGDQELIApBAWsiCkUNAiAQIAsgEXFBAXRqLwEAIgEgCEH//wNxSw0BDAILIAJBAmohAUEAIQQgDyECAkADQCACLQAAIAEtAABHDQEgAi0AASABLQABRwRAIARBAXIhBAwCCyACLQACIAEtAAJHBEAgBEECciEEDAILIAItAAMgAS0AA0cEQCAEQQNyIQQMAgsgAi0ABCABLQAERwRAIARBBHIhBAwCCyACLQAFIAEtAAVHBEAgBEEFciEEDAILIAItAAYgAS0ABkcEQCAEQQZyIQQMAgsgAi0AByABLQAHRwRAIARBB3IhBAwCCyABQQhqIQEgAkEIaiECIARB+AFJIRggBEEIaiEEIBgNAAtBgAIhBAsCQAJAIAUgBEECaiICSQRAIAAgCyAHQf//A3FrIgY2AmwgAiAUSwRAIBQPCyACIBZPBEAgAg8LIAkgBEEBaiIFaiIBLQABIRIgAS0AACETAkAgAkEESQ0AIAIgBmogDE8NACAGQf//A3EhCCAEQQFrIQtBACEDQQAhBwNAIBAgAyAIaiARcUEBdGovAQAiASAGQf//A3FJBEAgAyAVaiABTw0IIAMhByABIQYLIANBAWoiAyALTQ0ACyAAIAAgAEEAIAIgF2oiAS0AACAAKAJ8EQAAIAEtAAEgACgCfBEAACABLQACIAAoAnwRAAAhASAAKAJQIAFBAXRqLwEAIgEgBkH//wNxTwRAIAdB//8DcSEDIAYhAQwDCyAEQQJrIgdB//8DcSIDIBVqIAFPDQYMAgsgAyAFaiEGIAIhBQsgCkEBayIKRQ0DIBAgCyARcUEBdGovAQAiASAIQf//A3FNDQMMAQsgByANaiEIIA4gA2siAyAFaiEGIAIhBQsgDCABQf//A3FLDQALCyAFDwsgAiEFCyAFIAAoAjwiACAAIAVLGwuGBQETfyAAKAJ0IgMgA0ECdiAAKAJwIgNBAiADGyIDIAAoApABSRshByAAKAJoIgogACgCMEGGAmsiBWtB//8DcUEAIAUgCkkbIQwgACgCSCIIIApqIgkgA0EBayICaiIFLQABIQ0gBS0AACEOIAlBAmohBSACIAhqIQsgACgClAEhEiAAKAI8IQ8gACgCTCEQIAAoAjghESAAKAKIAUEFSCETA0ACQCAKIAFB//8DcU0NAANAAkACQCALIAFB//8DcSIGai0AACAORw0AIAsgBkEBaiIBai0AACANRw0AIAYgCGoiAi0AACAJLQAARw0AIAEgCGotAAAgCS0AAUYNAQsgB0EBayIHRQ0CIAwgECAGIBFxQQF0ai8BACIBSQ0BDAILCyACQQJqIQRBACECIAUhAQJAA0AgAS0AACAELQAARw0BIAEtAAEgBC0AAUcEQCACQQFyIQIMAgsgAS0AAiAELQACRwRAIAJBAnIhAgwCCyABLQADIAQtAANHBEAgAkEDciECDAILIAEtAAQgBC0ABEcEQCACQQRyIQIMAgsgAS0ABSAELQAFRwRAIAJBBXIhAgwCCyABLQAGIAQtAAZHBEAgAkEGciECDAILIAEtAAcgBC0AB0cEQCACQQdyIQIMAgsgBEEIaiEEIAFBCGohASACQfgBSSEUIAJBCGohAiAUDQALQYACIQILAkAgAyACQQJqIgFJBEAgACAGNgJsIAEgD0sEQCAPDwsgASASTwRAIAEPCyAIIAJBAWoiA2ohCyADIAlqIgMtAAEhDSADLQAAIQ4gASEDDAELIBMNAQsgB0EBayIHRQ0AIAwgECAGIBFxQQF0ai8BACIBSQ0BCwsgAwvLAQECfwJAA0AgAC0AACABLQAARw0BIAAtAAEgAS0AAUcEQCACQQFyDwsgAC0AAiABLQACRwRAIAJBAnIPCyAALQADIAEtAANHBEAgAkEDcg8LIAAtAAQgAS0ABEcEQCACQQRyDwsgAC0ABSABLQAFRwRAIAJBBXIPCyAALQAGIAEtAAZHBEAgAkEGcg8LIAAtAAcgAS0AB0cEQCACQQdyDwsgAUEIaiEBIABBCGohACACQfgBSSEDIAJBCGohAiADDQALQYACIQILIAIL5wwBB38gAEF/cyEAIAJBF08EQAJAIAFBA3FFDQAgAS0AACAAQf8BcXNBAnRB0BhqKAIAIABBCHZzIQAgAkEBayIEQQAgAUEBaiIDQQNxG0UEQCAEIQIgAyEBDAELIAEtAAEgAEH/AXFzQQJ0QdAYaigCACAAQQh2cyEAIAFBAmohAwJAIAJBAmsiBEUNACADQQNxRQ0AIAEtAAIgAEH/AXFzQQJ0QdAYaigCACAAQQh2cyEAIAFBA2ohAwJAIAJBA2siBEUNACADQQNxRQ0AIAEtAAMgAEH/AXFzQQJ0QdAYaigCACAAQQh2cyEAIAFBBGohASACQQRrIQIMAgsgBCECIAMhAQwBCyAEIQIgAyEBCyACQRRuIgNBbGwhCQJAIANBAWsiCEUEQEEAIQQMAQsgA0EUbCABakEUayEDQQAhBANAIAEoAhAgB3MiB0EWdkH8B3FB0DhqKAIAIAdBDnZB/AdxQdAwaigCACAHQQZ2QfwHcUHQKGooAgAgB0H/AXFBAnRB0CBqKAIAc3NzIQcgASgCDCAGcyIGQRZ2QfwHcUHQOGooAgAgBkEOdkH8B3FB0DBqKAIAIAZBBnZB/AdxQdAoaigCACAGQf8BcUECdEHQIGooAgBzc3MhBiABKAIIIAVzIgVBFnZB/AdxQdA4aigCACAFQQ52QfwHcUHQMGooAgAgBUEGdkH8B3FB0ChqKAIAIAVB/wFxQQJ0QdAgaigCAHNzcyEFIAEoAgQgBHMiBEEWdkH8B3FB0DhqKAIAIARBDnZB/AdxQdAwaigCACAEQQZ2QfwHcUHQKGooAgAgBEH/AXFBAnRB0CBqKAIAc3NzIQQgASgCACAAcyIAQRZ2QfwHcUHQOGooAgAgAEEOdkH8B3FB0DBqKAIAIABBBnZB/AdxQdAoaigCACAAQf8BcUECdEHQIGooAgBzc3MhACABQRRqIQEgCEEBayIIDQALIAMhAQsgAiAJaiECIAEoAhAgASgCDCABKAIIIAEoAgQgASgCACAAcyIAQQh2IABB/wFxQQJ0QdAYaigCAHMiAEEIdiAAQf8BcUECdEHQGGooAgBzIgBBCHYgAEH/AXFBAnRB0BhqKAIAcyIAQf8BcUECdEHQGGooAgAgBHNzIABBCHZzIgBBCHYgAEH/AXFBAnRB0BhqKAIAcyIAQQh2IABB/wFxQQJ0QdAYaigCAHMiAEEIdiAAQf8BcUECdEHQGGooAgBzIgBB/wFxQQJ0QdAYaigCACAFc3MgAEEIdnMiAEEIdiAAQf8BcUECdEHQGGooAgBzIgBBCHYgAEH/AXFBAnRB0BhqKAIAcyIAQQh2IABB/wFxQQJ0QdAYaigCAHMiAEH/AXFBAnRB0BhqKAIAIAZzcyAAQQh2cyIAQQh2IABB/wFxQQJ0QdAYaigCAHMiAEEIdiAAQf8BcUECdEHQGGooAgBzIgBBCHYgAEH/AXFBAnRB0BhqKAIAcyIAQf8BcUECdEHQGGooAgAgB3NzIABBCHZzIgBBCHYgAEH/AXFBAnRB0BhqKAIAcyIAQQh2IABB/wFxQQJ0QdAYaigCAHMiAEEIdiAAQf8BcUECdEHQGGooAgBzIgBBCHYgAEH/AXFBAnRB0BhqKAIAcyEAIAFBFGohAQsgAkEHSwRAA0AgAS0AByABLQAGIAEtAAUgAS0ABCABLQADIAEtAAIgAS0AASABLQAAIABB/wFxc0ECdEHQGGooAgAgAEEIdnMiAEH/AXFzQQJ0QdAYaigCACAAQQh2cyIAQf8BcXNBAnRB0BhqKAIAIABBCHZzIgBB/wFxc0ECdEHQGGooAgAgAEEIdnMiAEH/AXFzQQJ0QdAYaigCACAAQQh2cyIAQf8BcXNBAnRB0BhqKAIAIABBCHZzIgBB/wFxc0ECdEHQGGooAgAgAEEIdnMiAEH/AXFzQQJ0QdAYaigCACAAQQh2cyEAIAFBCGohASACQQhrIgJBB0sNAAsLAkAgAkUNACACQQFxBH8gAS0AACAAQf8BcXNBAnRB0BhqKAIAIABBCHZzIQAgAUEBaiEBIAJBAWsFIAILIQMgAkEBRg0AA0AgAS0AASABLQAAIABB/wFxc0ECdEHQGGooAgAgAEEIdnMiAEH/AXFzQQJ0QdAYaigCACAAQQh2cyEAIAFBAmohASADQQJrIgMNAAsLIABBf3MLwgIBA38jAEEQayIIJAACfwJAIAAEQCAEDQEgBVANAQsgBgRAIAZBADYCBCAGQRI2AgALQQAMAQtBgAEQCSIHRQRAIAYEQCAGQQA2AgQgBkEONgIAC0EADAELIAcgATcDCCAHQgA3AwAgB0EoaiIJECogByAFNwMYIAcgBDYCECAHIAM6AGAgB0EANgJsIAdCADcCZCAAKQMYIQEgCEF/NgIIIAhCjoCAgPAANwMAIAdBECAIECQgAUL/gQGDhCIBNwNwIAcgAadBBnZBAXE6AHgCQCACRQ0AIAkgAhBgQX9KDQAgBxAGQQAMAQsgBhBfIgIEQCAAIAAoAjBBAWo2AjAgAiAHNgIIIAJBATYCBCACIAA2AgAgAkI/IAAgB0EAQgBBDkEBEQoAIgEgAUIAUxs3AxgLIAILIQAgCEEQaiQAIAALYgEBf0E4EAkiAUUEQCAABEAgAEEANgIEIABBDjYCAAtBAA8LIAFBADYCCCABQgA3AwAgAUIANwMgIAFCgICAgBA3AiwgAUEAOgAoIAFBADYCFCABQgA3AgwgAUEAOwE0IAELuwEBAX4gASkDACICQgKDUEUEQCAAIAEpAxA3AxALIAJCBINQRQRAIAAgASkDGDcDGAsgAkIIg1BFBEAgACABKQMgNwMgCyACQhCDUEUEQCAAIAEoAig2AigLIAJCIINQRQRAIAAgASgCLDYCLAsgAkLAAINQRQRAIAAgAS8BMDsBMAsgAkKAAYNQRQRAIAAgAS8BMjsBMgsgAkKAAoNQRQRAIAAgASgCNDYCNAsgACAAKQMAIAKENwMAQQALGQAgAUUEQEEADwsgACABKAIAIAEzAQQQGws3AQJ/IABBACABG0UEQCAAIAFGDwsgAC8BBCIDIAEvAQRGBH8gACgCACABKAIAIAMQPQVBAQtFCyIBAX8gAUUEQEEADwsgARAJIgJFBEBBAA8LIAIgACABEAcLKQAgACABIAIgAyAEEEUiAEUEQEEADwsgACACQQAgBBA1IQEgABAGIAELcQEBfgJ/AkAgAkJ/VwRAIAMEQCADQQA2AgQgA0EUNgIACwwBCyAAIAEgAhARIgRCf1cEQCADBEAgAyAAKAIMNgIAIAMgACgCEDYCBAsMAQtBACACIARXDQEaIAMEQCADQQA2AgQgA0ERNgIACwtBfwsLNQAgACABIAJBABAmIgBFBEBBfw8LIAMEQCADIAAtAAk6AAALIAQEQCAEIAAoAkQ2AgALQQAL/AECAn8BfiMAQRBrIgMkAAJAIAAgA0EOaiABQYAGQQAQRiIARQRAIAIhAAwBCyADLwEOIgFBBUkEQCACIQAMAQsgAC0AAEEBRwRAIAIhAAwBCyAAIAGtQv//A4MQFyIBRQRAIAIhAAwBCyABEH0aAkAgARAVIAIEfwJ/IAIvAQQhAEEAIAIoAgAiBEUNABpBACAEIABB1IABKAIAEQAACwVBAAtHBEAgAiEADAELIAEgAS0AAAR+IAEpAwggASkDEH0FQgALIgVC//8DgxATIAWnQf//A3FBgBBBABA1IgBFBEAgAiEADAELIAIQEAsgARAICyADQRBqJAAgAAvmDwIIfwJ+IwBB4ABrIgckAEEeQS4gAxshCwJAAkAgAgRAIAIiBSIGLQAABH4gBikDCCAGKQMQfQVCAAsgC61aDQEgBARAIARBADYCBCAEQRM2AgALQn8hDQwCCyABIAutIAcgBBAtIgUNAEJ/IQ0MAQsgBUIEEBMoAABBoxJBqBIgAxsoAABHBEAgBARAIARBADYCBCAEQRM2AgALQn8hDSACDQEgBRAIDAELIABCADcDICAAQQA2AhggAEL/////DzcDECAAQQA7AQwgAEG/hig2AgggAEEBOgAGIABBADsBBCAAQQA2AgAgAEIANwNIIABBgIDYjXg2AkQgAEIANwMoIABCADcDMCAAQgA3AzggAEFAa0EAOwEAIABCADcDUCAAIAMEf0EABSAFEAwLOwEIIAAgBRAMOwEKIAAgBRAMOwEMIAAgBRAMNgIQIAUQDCEGIAUQDCEJIAdBADYCWCAHQgA3A1AgB0IANwNIIAcgCUEfcTYCPCAHIAZBC3Y2AjggByAGQQV2QT9xNgI0IAcgBkEBdEE+cTYCMCAHIAlBCXZB0ABqNgJEIAcgCUEFdkEPcUEBazYCQCAAIAdBMGoQBTYCFCAAIAUQFTYCGCAAIAUQFa03AyAgACAFEBWtNwMoIAUQDCEIIAUQDCEGIAACfiADBEBBACEJIABBADYCRCAAQQA7AUAgAEEANgI8QgAMAQsgBRAMIQkgACAFEAw2AjwgACAFEAw7AUAgACAFEBU2AkQgBRAVrQs3A0ggBS0AAEUEQCAEBEAgBEEANgIEIARBFDYCAAtCfyENIAINASAFEAgMAQsCQCAALwEMIgpBAXEEQCAKQcAAcQRAIABB//8DOwFSDAILIABBATsBUgwBCyAAQQA7AVILIABBADYCOCAAQgA3AzAgBiAIaiAJaiEKAkAgAgRAIAUtAAAEfiAFKQMIIAUpAxB9BUIACyAKrVoNASAEBEAgBEEANgIEIARBFTYCAAtCfyENDAILIAUQCCABIAqtQQAgBBAtIgUNAEJ/IQ0MAQsCQCAIRQ0AIAAgBSABIAhBASAEEGQiCDYCMCAIRQRAIAQoAgBBEUYEQCAEBEAgBEEANgIEIARBFTYCAAsLQn8hDSACDQIgBRAIDAILIAAtAA1BCHFFDQAgCEECECNBBUcNACAEBEAgBEEANgIEIARBFTYCAAtCfyENIAINASAFEAgMAQsgAEE0aiEIAkAgBkUNACAFIAEgBkEAIAQQRSIMRQRAQn8hDSACDQIgBRAIDAILIAwgBkGAAkGABCADGyAIIAQQbiEGIAwQBiAGRQRAQn8hDSACDQIgBRAIDAILIANFDQAgAEEBOgAECwJAIAlFDQAgACAFIAEgCUEAIAQQZCIBNgI4IAFFBEBCfyENIAINAiAFEAgMAgsgAC0ADUEIcUUNACABQQIQI0EFRw0AIAQEQCAEQQA2AgQgBEEVNgIAC0J/IQ0gAg0BIAUQCAwBCyAAIAAoAjRB9eABIAAoAjAQZzYCMCAAIAAoAjRB9cYBIAAoAjgQZzYCOAJAAkAgACkDKEL/////D1ENACAAKQMgQv////8PUQ0AIAApA0hC/////w9SDQELAkACQAJAIAgoAgAgB0EwakEBQYACQYAEIAMbIAQQRiIBRQRAIAJFDQEMAgsgASAHMwEwEBciAUUEQCAEBEAgBEEANgIEIARBDjYCAAsgAkUNAQwCCwJAIAApAyhC/////w9RBEAgACABEB03AygMAQsgA0UNAEEAIQYCQCABKQMQIg5CCHwiDSAOVA0AIAEpAwggDVQNACABIA03AxBBASEGCyABIAY6AAALIAApAyBC/////w9RBEAgACABEB03AyALAkAgAw0AIAApA0hC/////w9RBEAgACABEB03A0gLIAAoAjxB//8DRw0AIAAgARAVNgI8CyABLQAABH8gASkDECABKQMIUQVBAAsNAiAEBEAgBEEANgIEIARBFTYCAAsgARAIIAINAQsgBRAIC0J/IQ0MAgsgARAICyAFLQAARQRAIAQEQCAEQQA2AgQgBEEUNgIAC0J/IQ0gAg0BIAUQCAwBCyACRQRAIAUQCAtCfyENIAApA0hCf1cEQCAEBEAgBEEWNgIEIARBBDYCAAsMAQsjAEEQayIDJABBASEBAkAgACgCEEHjAEcNAEEAIQECQCAAKAI0IANBDmpBgbICQYAGQQAQRiICBEAgAy8BDiIFQQZLDQELIAQEQCAEQQA2AgQgBEEVNgIACwwBCyACIAWtQv//A4MQFyICRQRAIAQEQCAEQQA2AgQgBEEUNgIACwwBC0EBIQECQAJAAkAgAhAMQQFrDgICAQALQQAhASAEBEAgBEEANgIEIARBGDYCAAsgAhAIDAILIAApAyhCE1YhAQsgAkICEBMvAABBwYoBRwRAQQAhASAEBEAgBEEANgIEIARBGDYCAAsgAhAIDAELIAIQfUEBayIFQf8BcUEDTwRAQQAhASAEBEAgBEEANgIEIARBGDYCAAsgAhAIDAELIAMvAQ5BB0cEQEEAIQEgBARAIARBADYCBCAEQRU2AgALIAIQCAwBCyAAIAE6AAYgACAFQf8BcUGBAmo7AVIgACACEAw2AhAgAhAIQQEhAQsgA0EQaiQAIAFFDQAgCCAIKAIAEG02AgAgCiALaq0hDQsgB0HgAGokACANC4ECAQR/IwBBEGsiBCQAAkAgASAEQQxqQcAAQQAQJSIGRQ0AIAQoAgxBBWoiA0GAgARPBEAgAgRAIAJBADYCBCACQRI2AgALDAELQQAgA60QFyIDRQRAIAIEQCACQQA2AgQgAkEONgIACwwBCyADQQEQcCADIAEEfwJ/IAEvAQQhBUEAIAEoAgAiAUUNABpBACABIAVB1IABKAIAEQAACwVBAAsQEiADIAYgBCgCDBAsAn8gAy0AAEUEQCACBEAgAkEANgIEIAJBFDYCAAtBAAwBCyAAIAMtAAAEfiADKQMQBUIAC6dB//8DcSADKAIEEEcLIQUgAxAICyAEQRBqJAAgBQvgAQICfwF+QTAQCSICRQRAIAEEQCABQQA2AgQgAUEONgIAC0EADwsgAkIANwMIIAJBADYCACACQgA3AxAgAkIANwMYIAJCADcDICACQgA3ACUgAFAEQCACDwsCQCAAQv////8AVg0AIACnQQR0EAkiA0UNACACIAM2AgBBACEBQgEhBANAIAMgAUEEdGoiAUIANwIAIAFCADcABSAAIARSBEAgBKchASAEQgF8IQQMAQsLIAIgADcDCCACIAA3AxAgAg8LIAEEQCABQQA2AgQgAUEONgIAC0EAEBAgAhAGQQAL7gECA38BfiMAQRBrIgQkAAJAIARBDGpCBBAXIgNFBEBBfyECDAELAkAgAQRAIAJBgAZxIQUDQAJAIAUgASgCBHFFDQACQCADKQMIQgBUBEAgA0EAOgAADAELIANCADcDECADQQE6AAALIAMgAS8BCBANIAMgAS8BChANIAMtAABFBEAgAEEIaiIABEAgAEEANgIEIABBFDYCAAtBfyECDAQLQX8hAiAAIARBDGpCBBAbQQBIDQMgATMBCiIGUA0AIAAgASgCDCAGEBtBAEgNAwsgASgCACIBDQALC0EAIQILIAMQCAsgBEEQaiQAIAILPAEBfyAABEAgAUGABnEhAQNAIAEgACgCBHEEQCACIAAvAQpqQQRqIQILIAAoAgAiAA0ACwsgAkH//wNxC5wBAQN/IABFBEBBAA8LIAAhAwNAAn8CQAJAIAAvAQgiAUH04AFNBEAgAUEBRg0BIAFB9cYBRg0BDAILIAFBgbICRg0AIAFB9eABRw0BCyAAKAIAIQEgAEEANgIAIAAoAgwQBiAAEAYgASADIAAgA0YbIQMCQCACRQRAQQAhAgwBCyACIAE2AgALIAEMAQsgACICKAIACyIADQALIAMLsgQCBX8BfgJAAkACQCAAIAGtEBciAQRAIAEtAAANAUEAIQAMAgsgBARAIARBADYCBCAEQQ42AgALQQAPC0EAIQADQCABLQAABH4gASkDCCABKQMQfQVCAAtCBFQNASABEAwhByABIAEQDCIGrRATIghFBEBBACECIAQEQCAEQQA2AgQgBEEVNgIACyABEAggAEUNAwNAIAAoAgAhASAAKAIMEAYg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DCAAQRg2AggLDAMLIAAgBiAFLwFqQQAgBCABEQYAIQEgBhALIAFFDQILAkAgDUUEQCABIQMMAQsgACABIAUvAWgQgQEhAyABEAsgA0UNAQsCQCAJRSAMckUEQCADIQEMAQsgACADQQEQgAEhASADEAsgAUUNAQsgASEDDAELQQAhAwsgBUHwAGokACADC4UBAQF/IAFFBEAgAEEIaiIABEAgAEEANgIEIABBEjYCAAtBAA8LQTgQCSIDRQRAIABBCGoiAARAIABBADYCBCAAQQ42AgALQQAPCyADQQA2AhAgA0IANwIIIANCADcDKCADQQA2AgQgAyACNgIAIANCADcDGCADQQA2AjAgACABQTsgAxBCCw8AIAAgASACQQBBABCCAQusAgECfyABRQRAIABBCGoiAARAIABBADYCBCAAQRI2AgALQQAPCwJAIAJBfUsNACACQf//A3FBCEYNACAAQQhqIgAEQCAAQQA2AgQgAEEQNgIAC0EADwsCQEGwwAAQCSIFBEAgBUEANgIIIAVCADcCACAFQYiBAUGogQEgAxs2AqhAIAUgAjYCFCAFIAM6ABAgBUEAOgAPIAVBADsBDCAFIAMgAkF9SyIGcToADiAFQQggAiAGG0H//wNxIAQgBUGIgQFBqIEBIAMbKAIAEQAAIgI2AqxAIAINASAFEDEgBRAGCyAAQQhqIgAEQCAAQQA2AgQgAEEONgIAC0EADwsgACABQTogBRBCIgAEfyAABSAFKAKsQCAFKAKoQCgCBBEDACAFEDEgBRAGQQALC6ABAQF/IAIgACgCBCIDIAIgA0kbIgIEQCAAIAMgAms2AgQCQAJAAkACQCAAKAIcIgMoAhRBAWsOAgEAAgsgA0GgAWogASAAKAIAIAJB3IABKAIAEQgADAILIAAgACgCMCABIAAoAgAgAkHEgAEoAgARBAA2AjAMAQsgASAAKAIAIAIQBxoLIAAgACgCACACajYCACAAIAAoAgggAmo2AggLC7cCAQR/QX4hAgJAIABFDQAgACgCIEUNACAAKAIkIgRFDQAgACgCHCIBRQ0AIAEoAgAgAEcNAAJAAkAgASgCICIDQTlrDjkBAgICAgICAgICAgIBAgICAQICAgICAgICAgICAgICAgICAQICAgICAgICAgICAQICAgICAgICAgEACyADQZoFRg0AIANBKkcNAQsCfwJ/An8gASgCBCICBEAgBCAAKAIoIAIQHiAAKAIcIQELIAEoAlAiAgsEQCAAKAIkIAAoAiggAhAeIAAoAhwhAQsgASgCTCICCwRAIAAoAiQgACgCKCACEB4gACgCHCEBCyABKAJIIgILBEAgACgCJCAAKAIoIAIQHiAAKAIcIQELIAAoAiQgACgCKCABEB4gAEEANgIcQX1BACADQfEARhshAgsgAgvrCQEIfyAAKAIwIgMgACgCDEEFayICIAIgA0sbIQggACgCACIEKAIEIQkgAUEERiEHAkADQCAEKAIQIgMgACgCoC5BKmpBA3UiAkkEQEEBIQYMAgsgCCADIAJrIgMgACgCaCAAKAJYayICIAQoAgRqIgVB//8DIAVB//8DSRsiBiADIAZJGyIDSwRAQQEhBiADQQBHIAdyRQ0CIAFFDQIgAyAFRw0CCyAAQQBBACAHIAMgBUZxIgUQOSAAIAAoAhBBBGsiBDYCECAAKAIEIARqIAM7AAAgACAAKAIQQQJqIgQ2AhAgACgCBCAEaiADQX9zOwAAIAAgACgCEEECajYCECAAKAIAEAoCfyACBEAgACgCACgCDCAAKAJIIAAoAlhqIAMgAiACIANLGyICEAcaIAAoAgAiBCAEKAIMIAJqNgIMIAQgBCgCECACazYCECAEIAQoAhQgAmo2AhQgACAAKAJYIAJqNgJYIAMgAmshAwsgAwsEQCAAKAIAIgIgAigCDCADEIMBIAAoAgAiAiACKAIMIANqNgIMIAIgAigCECADazYCECACIAIoAhQgA2o2AhQLIAAoAgAhBCAFRQ0AC0EAIQYLAkAgCSAEKAIEayICRQRAIAAoAmghAwwBCwJAIAAoAjAiAyACTQRAIABBAjYCgC4gACgCSCAEKAIAIANrIAMQBxogACAAKAIwIgM2AoQuIAAgAzYCaAwBCyACIAAoAkQgACgCaCIFa08EQCAAIAUgA2siBDYCaCAAKAJIIgUgAyAFaiAEEAcaIAAoAoAuIgNBAU0EQCAAIANBAWo2AoAuCyAAIAAoAmgiBSAAKAKELiIDIAMgBUsbNgKELiAAKAIAIQQLIAAoAkggBWogBCgCACACayACEAcaIAAgACgCaCACaiIDNgJoIAAgACgCMCAAKAKELiIEayIFIAIgAiAFSxsgBGo2AoQuCyAAIAM2AlgLIAAgAyAAKAJAIgIgAiADSRs2AkBBAyECAkAgBkUNACAAKAIAIgUoAgQhAgJAAkAgAUF7cUUNACACDQBBASECIAMgACgCWEYNAiAAKAJEIANrIQRBACECDAELIAIgACgCRCADayIETQ0AIAAoAlgiByAAKAIwIgZIDQAgACADIAZrIgM2AmggACAHIAZrNgJYIAAoAkgiAiACIAZqIAMQBxogACgCgC4iA0EBTQRAIAAgA0EBajYCgC4LIAAgACgCaCIDIAAoAoQuIgIgAiADSxs2AoQuIAAoAjAgBGohBCAAKAIAIgUoAgQhAgsCQCACIAQgAiAESRsiAkUEQCAAKAIwIQUMAQsgBSAAKAJIIANqIAIQgwEgACAAKAJoIAJqIgM2AmggACAAKAIwIgUgACgChC4iBGsiBiACIAIgBksbIARqNgKELgsgACADIAAoAkAiAiACIANJGzYCQCADIAAoAlgiBmsiAyAFIAAoAgwgACgCoC5BKmpBA3VrIgJB//8DIAJB//8DSRsiBCAEIAVLG0kEQEEAIQIgAUEERiADQQBHckUNASABRQ0BIAAoAgAoAgQNASADIARLDQELQQAhAiABQQRGBEAgACgCACgCBEUgAyAETXEhAgsgACAAKAJIIAZqIAQgAyADIARLGyIBIAIQOSAAIAAoAlggAWo2AlggACgCABAKQQJBACACGw8LIAIL/woCCn8DfiAAKQOYLiENIAAoAqAuIQQgAkEATgRAQQRBAyABLwECIggbIQlBB0GKASAIGyEFQX8hCgNAIAghByABIAsiDEEBaiILQQJ0ai8BAiEIAkACQCAGQQFqIgMgBU4NACAHIAhHDQAgAyEGDAELAkAgAyAJSARAIAAgB0ECdGoiBkHOFWohCSAGQcwVaiEKA0AgCjMBACEPAn8gBCAJLwEAIgZqIgVBP00EQCAPIASthiANhCENIAUMAQsgBEHAAEYEQCAAKAIEIAAoAhBqIA03AAAgACAAKAIQQQhqNgIQIA8hDSAGDAELIAAoAgQgACgCEGogDyAErYYgDYQ3AAAgACAAKAIQQQhqNgIQIA9BwAAgBGutiCENIAVBQGoLIQQgA0EBayIDDQALDAELIAcEQAJAIAcgCkYEQCANIQ8gBCEFIAMhBgwBCyAAIAdBAnRqIgNBzBVqMwEAIQ8gBCADQc4Vai8BACIDaiIFQT9NBEAgDyAErYYgDYQhDwwBCyAEQcAARgRAIAAoAgQgACgCEGogDTcAACAAIAAoAhBBCGo2AhAgAyEFDAELIAAoAgQgACgCEGogDyAErYYgDYQ3AAAgACAAKAIQQQhqNgIQIAVBQGohBSAPQcAAIARrrYghDwsgADMBjBYhDgJAIAUgAC8BjhYiBGoiA0E/TQRAIA4gBa2GIA+EIQ4MAQsgBUHAAEYEQCAAKAIEIAAoAhBqIA83AAAgACAAKAIQQQhqNgIQIAQhAwwBCyAAKAIEIAAoAhBqIA4gBa2GIA+ENwAAIAAgACgCEEEIajYCECADQUBqIQMgDkHAACAFa62IIQ4LIAasQgN9IQ0gA0E9TQRAIANBAmohBCANIAOthiAOhCENDAILIANBwABGBEAgACgCBCAAKAIQaiAONwAAIAAgACgCEEEIajYCEEECIQQMAgsgACgCBCAAKAIQaiANIAOthiAOhDcAACAAIAAoAhBBCGo2AhAgA0E+ayEEIA1BwAAgA2utiCENDAELIAZBCUwEQCAAMwGQFiEOAkAgBCAALwGSFiIFaiIDQT9NBEAgDiAErYYgDYQhDgwBCyAEQcAARgRAIAAoAgQgACgCEGogDTcAACAAIAAoAhBBCGo2AhAgBSEDDAELIAAoAgQgACgCEGogDiAErYYgDYQ3AAAgACAAKAIQQQhqNgIQIANBQGohAyAOQcAAIARrrYghDgsgBqxCAn0hDSADQTxNBEAgA0EDaiEEIA0gA62GIA6EIQ0MAgsgA0HAAEYEQCAAKAIEIAAoAhBqIA43AAAgACAAKAIQQQhqNgIQQQMhBAwCCyAAKAIEIAAoAhBqIA0gA62GIA6ENwAAIAAgACgCEEEIajYCECADQT1rIQQgDUHAACADa62IIQ0MAQsgADMBlBYhDgJAIAQgAC8BlhYiBWoiA0E/TQRAIA4gBK2GIA2EIQ4MAQsgBEHAAEYEQCAAKAIEIAAoAhBqIA03AAAgACAAKAIQQQhqNgIQIAUhAwwBCyAAKAIEIAAoAhBqIA4gBK2GIA2ENwAAIAAgACgCEEEIajYCECADQUBqIQMgDkHAACAEa62IIQ4LIAatQgp9IQ0gA0E4TQRAIANBB2ohBCANIAOthiAOhCENDAELIANBwABGBEAgACgCBCAAKAIQaiAONwAAIAAgACgCEEEIajYCEEEHIQQMAQsgACgCBCAAKAIQaiANIAOthiAOhDcAACAAIAAoAhBBCGo2AhAgA0E5ayEEIA1BwAAgA2utiCENC0EAIQYCfyAIRQRAQYoBIQVBAwwBC0EGQQcgByAIRiIDGyEFQQNBBCADGwshCSAHIQoLIAIgDEcNAAsLIAAgBDYCoC4gACANNwOYLgv5BQIIfwJ+AkAgACgC8C1FBEAgACkDmC4hCyAAKAKgLiEDDAELA0AgCSIDQQNqIQkgAyAAKALsLWoiAy0AAiEFIAApA5guIQwgACgCoC4hBAJAIAMvAAAiB0UEQCABIAVBAnRqIgMzAQAhCyAEIAMvAQIiBWoiA0E/TQRAIAsgBK2GIAyEIQsMAgsgBEHAAEYEQCAAKAIEIAAoAhBqIAw3AAAgACAAKAIQQQhqNgIQIAUhAwwCCyAAKAIEIAAoAhBqIAsgBK2GIAyENwAAIAAgACgCEEEIajYCECADQUBqIQMgC0HAACAEa62IIQsMAQsgBUGAzwBqLQAAIghBAnQiBiABaiIDQYQIajMBACELIANBhghqLwEAIQMgCEEIa0ETTQRAIAUgBkGA0QBqKAIAa60gA62GIAuEIQsgBkHA0wBqKAIAIANqIQMLIAMgAiAHQQFrIgcgB0EHdkGAAmogB0GAAkkbQYDLAGotAAAiBUECdCIIaiIKLwECaiEGIAozAQAgA62GIAuEIQsgBCAFQQRJBH8gBgUgByAIQYDSAGooAgBrrSAGrYYgC4QhCyAIQcDUAGooAgAgBmoLIgVqIgNBP00EQCALIASthiAMhCELDAELIARBwABGBEAgACgCBCAAKAIQaiAMNwAAIAAgACgCEEEIajYCECAFIQMMAQsgACgCBCAAKAIQaiALIASthiAMhDcAACAAIAAoAhBBCGo2AhAgA0FAaiEDIAtBwAAgBGutiCELCyAAIAs3A5guIAAgAzYCoC4gCSAAKALwLUkNAAsLIAFBgAhqMwEAIQwCQCADIAFBgghqLwEAIgJqIgFBP00EQCAMIAOthiALhCEMDAELIANBwABGBEAgACgCBCAAKAIQaiALNwAAIAAgACgCEEEIajYCECACIQEMAQsgACgCBCAAKAIQaiAMIAOthiALhDcAACAAIAAoAhBBCGo2AhAgAUFAaiEBIAxBwAAgA2utiCEMCyAAIAw3A5guIAAgATYCoC4L8AQBA38gAEHkAWohAgNAIAIgAUECdCIDakEAOwEAIAIgA0EEcmpBADsBACABQQJqIgFBngJHDQALIABBADsBzBUgAEEAOwHYEyAAQZQWakEAOwEAIABBkBZqQQA7AQAgAEGMFmpBADsBACAAQYgWakEAOwEAIABBhBZqQQA7AQAgAEGAFmpBADsBACAAQfwVakEAOwEAIABB+BVqQQA7AQAgAEH0FWpBADsBACAAQfAVakEAOwEAIABB7BVqQQA7AQAgAEHoFWpBADsBACAAQeQVakEAOwEAIABB4BVqQQA7AQAgAEHcFWpBADsBACAAQdgVakEAOwEAIABB1BVqQQA7AQAgAEHQFWpBADsBACAAQcwUakEAOwEAIABByBRqQQA7AQAgAEHEFGpBADsBACAAQcAUakEAOwEAIABBvBRqQQA7AQAgAEG4FGpBADsBACAAQbQUakEAOwEAIABBsBRqQQA7AQAgAEGsFGpBADsBACAAQagUakEAOwEAIABBpBRqQQA7AQAgAEGgFGpBADsBACAAQZwUakEAOwEAIABBmBRqQQA7AQAgAEGUFGpBADsBACAAQZAUakEAOwEAIABBjBRqQQA7AQAgAEGIFGpBADsBACAAQYQUakEAOwEAIABBgBRqQQA7AQAgAEH8E2pBADsBACAAQfgTakEAOwEAIABB9BNqQQA7AQAgAEHwE2pBADsBACAAQewTakEAOwEAIABB6BNqQQA7AQAgAEHkE2pBADsBACAAQeATakEAOwEAIABB3BNqQQA7AQAgAEIANwL8LSAAQeQJakEBOwEAIABBADYC+C0gAEEANgLwLQuKAwIGfwR+QcgAEAkiBEUEQEEADwsgBEIANwMAIARCADcDMCAEQQA2AiggBEIANwMgIARCADcDGCAEQgA3AxAgBEIANwMIIARCADcDOCABUARAIARBCBAJIgA2AgQgAEUEQCAEEAYgAwRAIANBADYCBCADQQ42AgALQQAPCyAAQgA3AwAgBA8LAkAgAaciBUEEdBAJIgZFDQAgBCAGNgIAIAVBA3RBCGoQCSIFRQ0AIAQgATcDECAEIAU2AgQDQCAAIAynIghBBHRqIgcpAwgiDVBFBEAgBygCACIHRQRAIAMEQCADQQA2AgQgA0ESNgIACyAGEAYgBRAGIAQQBkEADwsgBiAKp0EEdGoiCSANNwMIIAkgBzYCACAFIAhBA3RqIAs3AwAgCyANfCELIApCAXwhCgsgDEIBfCIMIAFSDQALIAQgCjcDCCAEQgAgCiACGzcDGCAFIAqnQQN0aiALNwMAIAQgCzcDMCAEDwsgAwRAIANBADYCBCADQQ42AgALIAYQBiAEEAZBAAvlAQIDfwF+QX8hBQJAIAAgASACQQAQJiIERQ0AIAAgASACEIsBIgZFDQACfgJAIAJBCHENACAAKAJAIAGnQQR0aigCCCICRQ0AIAIgAxAhQQBOBEAgAykDAAwCCyAAQQhqIgAEQCAAQQA2AgQgAEEPNgIAC0F/DwsgAxAqIAMgBCgCGDYCLCADIAQpAyg3AxggAyAEKAIUNgIoIAMgBCkDIDcDICADIAQoAhA7ATAgAyAELwFSOwEyQvwBQtwBIAQtAAYbCyEHIAMgBjYCCCADIAE3AxAgAyAHQgOENwMAQQAhBQsgBQspAQF/IAAgASACIABBCGoiABAmIgNFBEBBAA8LIAMoAjBBACACIAAQJQuAAwEGfwJ/An9BMCABQYB/Sw0BGgJ/IAFBgH9PBEBBhIQBQTA2AgBBAAwBC0EAQRAgAUELakF4cSABQQtJGyIFQcwAahAJIgFFDQAaIAFBCGshAgJAIAFBP3FFBEAgAiEBDAELIAFBBGsiBigCACIHQXhxIAFBP2pBQHFBCGsiASABQUBrIAEgAmtBD0sbIgEgAmsiA2shBCAHQQNxRQRAIAIoAgAhAiABIAQ2AgQgASACIANqNgIADAELIAEgBCABKAIEQQFxckECcjYCBCABIARqIgQgBCgCBEEBcjYCBCAGIAMgBigCAEEBcXJBAnI2AgAgAiADaiIEIAQoAgRBAXI2AgQgAiADEDsLAkAgASgCBCICQQNxRQ0AIAJBeHEiAyAFQRBqTQ0AIAEgBSACQQFxckECcjYCBCABIAVqIgIgAyAFayIFQQNyNgIEIAEgA2oiAyADKAIEQQFyNgIEIAIgBRA7CyABQQhqCyIBRQsEQEEwDwsgACABNgIAQQALCwoAIABBiIQBEAQL6AIBBX8gACgCUCEBIAAvATAhBEEEIQUDQCABQQAgAS8BACICIARrIgMgAiADSRs7AQAgAUEAIAEvAQIiAiAEayIDIAIgA0kbOwECIAFBACABLwEEIgIgBGsiAyACIANJGzsBBCABQQAgAS8BBiICIARrIgMgAiADSRs7AQYgBUGAgARGRQRAIAFBCGohASAFQQRqIQUMAQsLAkAgBEUNACAEQQNxIQUgACgCTCEBIARBAWtBA08EQCAEIAVrIQADQCABQQAgAS8BACICIARrIgMgAiADSRs7AQAgAUEAIAEvAQIiAiAEayIDIAIgA0kbOwECIAFBACABLwEEIgIgBGsiAyACIANJGzsBBCABQQAgAS8BBiICIARrIgMgAiADSRs7AQYgAUEIaiEBIABBBGsiAA0ACwsgBUUNAANAIAFBACABLwEAIgAgBGsiAiAAIAJJGzsBACABQQJqIQEgBUEBayIFDQALCwuDAQEEfyACQQFOBEAgAiAAKAJIIAFqIgJqIQMgACgCUCEEA0AgBCACKAAAQbHz3fF5bEEPdkH+/wdxaiIFLwEAIgYgAUH//wNxRwRAIAAoAkwgASAAKAI4cUH//wNxQQF0aiAGOwEAIAUgATsBAAsgAUEBaiEBIAJBAWoiAiADSQ0ACwsLUAECfyABIAAoAlAgACgCSCABaigAAEGx893xeWxBD3ZB/v8HcWoiAy8BACICRwRAIAAoAkwgACgCOCABcUEBdGogAjsBACADIAE7AQALIAILugEBAX8jAEEQayICJAAgAkEAOgAIQYCBAUECNgIAQfyAAUEDNgIAQfiAAUEENgIAQfSAAUEFNgIAQfCAAUEGNgIAQeyAAUEHNgIAQeiAAUEINgIAQeSAAUEJNgIAQeCAAUEKNgIAQdyAAUELNgIAQdiAAUEMNgIAQdSAAUENNgIAQdCAAUEONgIAQcyAAUEPNgIAQciAAUEQNgIAQcSAAUERNgIAQcCAAUESNgIAIAAgARBYIAJBEGokAAu9AQEBfyMAQRBrIgEkACABQQA6AAhBgIEBQQI2AgBB/IABQQM2AgBB+IABQQQ2AgBB9IABQQU2AgBB8IABQQY2AgBB7IABQQc2AgBB6IABQQg2AgBB5IABQQk2AgBB4IABQQo2AgBB3IABQQs2AgBB2IABQQw2AgBB1IABQQ02AgBB0IABQQ42AgBBzIABQQ82AgBByIABQRA2AgBBxIABQRE2AgBBwIABQRI2AgAgAEEANgJAIAFBEGokAEEAC70BAQF/IwBBEGsiASQAIAFBADoACEGAgQFBAjYCAEH8gAFBAzYCAEH4gAFBBDYCAEH0gAFBBTYCAEHwgAFBBjYCAEHsgAFBBzYCAEHogAFBCDYCAEHkgAFBCTYCAEHggAFBCjYCAEHcgAFBCzYCAEHYgAFBDDYCAEHUgAFBDTYCAEHQgAFBDjYCAEHMgAFBDzYCAEHIgAFBEDYCAEHEgAFBETYCAEHAgAFBEjYCACAAKAJAIQAgAUEQaiQAIAALvgEBAX8jAEEQayIEJAAgBEEAOgAIQYCBAUECNgIAQfyAAUEDNgIAQfiAAUEENgIAQfSAAUEFNgIAQfCAAUEGNgIAQeyAAUEHNgIAQeiAAUEINgIAQeSAAUEJNgIAQeCAAUEKNgIAQdyAAUELNgIAQdiAAUEMNgIAQdSAAUENNgIAQdCAAUEONgIAQcyAAUEPNgIAQciAAUEQNgIAQcSAAUERNgIAQcCAAUESNgIAIAAgASACIAMQVyAEQRBqJAALygEAIwBBEGsiAyQAIANBADoACEGAgQFBAjYCAEH8gAFBAzYCAEH4gAFBBDYCAEH0gAFBBTYCAEHwgAFBBjYCAEHsgAFBBzYCAEHogAFBCDYCAEHkgAFBCTYCAEHggAFBCjYCAEHcgAFBCzYCAEHYgAFBDDYCAEHUgAFBDTYCAEHQgAFBDjYCAEHMgAFBDzYCAEHIgAFBEDYCAEHEgAFBETYCAEHAgAFBEjYCACAAIAAoAkAgASACQdSAASgCABEAADYCQCADQRBqJAALwAEBAX8jAEEQayIDJAAgA0EAOgAIQYCBAUECNgIAQfyAAUEDNgIAQfiAAUEENgIAQfSAAUEFNgIAQfCAAUEGNgIAQeyAAUEHNgIAQeiAAUEINgIAQeSAAUEJNgIAQeCAAUEKNgIAQdyAAUELNgIAQdiAAUEMNgIAQdSAAUENNgIAQdCAAUEONgIAQcyAAUEPNgIAQciAAUEQNgIAQcSAAUERNgIAQcCAAUESNgIAIAAgASACEF0hACADQRBqJAAgAAu+AQEBfyMAQRBrIgIkACACQQA6AAhBgIEBQQI2AgBB/IABQQM2AgBB+IABQQQ2AgBB9IABQQU2AgBB8IABQQY2AgBB7IABQQc2AgBB6IABQQg2AgBB5IABQQk2AgBB4IABQQo2AgBB3IABQQs2AgBB2IABQQw2AgBB1IABQQ02AgBB0IABQQ42AgBBzIABQQ82AgBByIABQRA2AgBBxIABQRE2AgBBwIABQRI2AgAgACABEFwhACACQRBqJAAgAAu2AQEBfyMAQRBrIgAkACAAQQA6AAhBgIEBQQI2AgBB/IABQQM2AgBB+IABQQQ2AgBB9IABQQU2AgBB8IABQQY2AgBB7IABQQc2AgBB6IABQQg2AgBB5IABQQk2AgBB4IABQQo2AgBB3IABQQs2AgBB2IABQQw2AgBB1IABQQ02AgBB0IABQQ42AgBBzIABQQ82AgBByIABQRA2AgBBxIABQRE2AgBBwIABQRI2AgAgAEEQaiQAQQgLwgEBAX8jAEEQayIEJAAgBEEAOgAIQYCBAUECNgIAQfyAAUEDNgIAQfiAAUEENgIAQfSAAUEFNgIAQfCAAUEGNgIAQeyAAUEHNgIAQeiAAUEINgIAQeSAAUEJNgIAQeCAAUEKNgIAQdyAAUELNgIAQdiAAUEMNgIAQdSAAUENNgIAQdCAAUEONgIAQcyAAUEPNgIAQciAAUEQNgIAQcSAAUERNgIAQcCAAUESNgIAIAAgASACIAMQWSEAIARBEGokACAAC8IBAQF/IwBBEGsiBCQAIARBADoACEGAgQFBAjYCAEH8gAFBAzYCAEH4gAFBBDYCAEH0gAFBBTYCAEHwgAFBBjYCAEHsgAFBBzYCAEHogAFBCDYCAEHkgAFBCTYCAEHggAFBCjYCAEHcgAFBCzYCAEHYgAFBDDYCAEHUgAFBDTYCAEHQgAFBDjYCAEHMgAFBDzYCAEHIgAFBEDYCAEHEgAFBETYCAEHAgAFBEjYCACAAIAEgAiADEFYhACAEQRBqJAAgAAsHACAALwEwC8ABAQF/IwBBEGsiAyQAIANBADoACEGAgQFBAjYCAEH8gAFBAzYCAEH4gAFBBDYCAEH0gAFBBTYCAEHwgAFBBjYCAEHsgAFBBzYCAEHogAFBCDYCAEHkgAFBCTYCAEHggAFBCjYCAEHcgAFBCzYCAEHYgAFBDDYCAEHUgAFBDTYCAEHQgAFBDjYCAEHMgAFBDzYCAEHIgAFBEDYCAEHEgAFBETYCAEHAgAFBEjYCACAAIAEgAhBVIQAgA0EQaiQAIAALBwAgACgCQAsaACAAIAAoAkAgASACQdSAASgCABEAADYCQAsLACAAQQA2AkBBAAsHACAAKAIgCwQAQQgLzgUCA34BfyMAQYBAaiIIJAACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAEDhECAwwFAAEECAkJCQkJCQcJBgkLIANCCFoEfiACIAEoAmQ2AgAgAiABKAJoNgIEQggFQn8LIQYMCwsgARAGDAoLIAEoAhAiAgRAIAIgASkDGCABQeQAaiICEEEiA1ANCCABKQMIIgVCf4UgA1QEQCACBEAgAkEANgIEIAJBFTYCAAsMCQsgAUEANgIQIAEgAyAFfDcDCCABIAEpAwAgA3w3AwALIAEtAHgEQCABKQMAIQUMCQtCACEDIAEpAwAiBVAEQCABQgA3AyAMCgsDQCAAIAggBSADfSIFQoDAACAFQoDAAFQbEBEiB0J/VwRAIAFB5ABqIgEEQCABIAAoAgw2AgAgASAAKAIQNgIECwwJCyAHUEUEQCABKQMAIgUgAyAHfCIDWA0KDAELCyABQeQAagRAIAFBADYCaCABQRE2AmQLDAcLIAEpAwggASkDICIFfSIHIAMgAyAHVhsiA1ANCAJAIAEtAHhFDQAgACAFQQAQFEF/Sg0AIAFB5ABqIgEEQCABIAAoAgw2AgAgASAAKAIQNgIECwwHCyAAIAIgAxARIgZCf1cEQCABQeQAagRAIAFBADYCaCABQRE2AmQLDAcLIAEgASkDICAGfCIDNwMgIAZCAFINCEIAIQYgAyABKQMIWg0IIAFB5ABqBEAgAUEANgJoIAFBETYCZAsMBgsgASkDICABKQMAIgV9IAEpAwggBX0gAiADIAFB5ABqEEQiA0IAUw0FIAEgASkDACADfDcDIAwHCyACIAFBKGoQYEEfdawhBgwGCyABMABgIQYMBQsgASkDcCEGDAQLIAEpAyAgASkDAH0hBgwDCyABQeQAagRAIAFBADYCaCABQRw2AmQLC0J/IQYMAQsgASAFNwMgCyAIQYBAayQAIAYLBwAgACgCAAsPACAAIAAoAjBBAWo2AjALGABB+IMBQgA3AgBBgIQBQQA2AgBB+IMBCwcAIABBDGoLBwAgACgCLAsHACAAKAIoCwcAIAAoAhgLFQAgACABrSACrUIghoQgAyAEEIoBCxMBAX4gABAzIgFCIIinEAAgAacLbwEBfiABrSACrUIghoQhBSMAQRBrIgEkAAJ/IABFBEAgBVBFBEAgBARAIARBADYCBCAEQRI2AgALQQAMAgtBAEIAIAMgBBA6DAELIAEgBTcDCCABIAA2AgAgAUIBIAMgBBA6CyEAIAFBEGokACAACxQAIAAgASACrSADrUIghoQgBBBSC9oCAgJ/AX4CfyABrSACrUIghoQiByAAKQMwVEEAIARBCkkbRQRAIABBCGoEQCAAQQA2AgwgAEESNgIIC0F/DAELIAAtABhBAnEEQCAAQQhqBEAgAEEANgIMIABBGTYCCAtBfwwBCyADBH8gA0H//wNxQQhGIANBfUtyBUEBC0UEQCAAQQhqBEAgAEEANgIMIABBEDYCCAtBfwwBCyAAKAJAIgEgB6ciBUEEdGooAgAiAgR/IAIoAhAgA0YFIANBf0YLIQYgASAFQQR0aiIBIQUgASgCBCEBAkAgBgRAIAFFDQEgAUEAOwFQIAEgASgCAEF+cSIANgIAIAANASABECAgBUEANgIEQQAMAgsCQCABDQAgBSACECsiATYCBCABDQAgAEEIagRAIABBADYCDCAAQQ42AggLQX8MAgsgASAEOwFQIAEgAzYCECABIAEoAgBBAXI2AgALQQALCxwBAX4gACABIAIgAEEIahBMIgNCIIinEAAgA6cLHwEBfiAAIAEgAq0gA61CIIaEEBEiBEIgiKcQACAEpwteAQF+An5CfyAARQ0AGiAAKQMwIgIgAUEIcUUNABpCACACUA0AGiAAKAJAIQADQCACIAKnQQR0IABqQRBrKAIADQEaIAJCAX0iAkIAUg0AC0IACyICQiCIpxAAIAKnCxMAIAAgAa0gAq1CIIaEIAMQiwELnwEBAn4CfiACrSADrUIghoQhBUJ/IQQCQCAARQ0AIAAoAgQNACAAQQRqIQIgBUJ/VwRAIAIEQCACQQA2AgQgAkESNgIAC0J/DAILQgAhBCAALQAQDQAgBVANACAAKAIUIAEgBRARIgRCf1UNACAAKAIUIQAgAgRAIAIgACgCDDYCACACIAAoAhA2AgQLQn8hBAsgBAsiBEIgiKcQACAEpwueAQEBfwJ/IAAgACABrSACrUIghoQgAyAAKAIcEH8iAQRAIAEQMkF/TARAIABBCGoEQCAAIAEoAgw2AgggACABKAIQNgIMCyABEAtBAAwCC0EYEAkiBEUEQCAAQQhqBEAgAEEANgIMIABBDjYCCAsgARALQQAMAgsgBCAANgIAIARBADYCDCAEQgA3AgQgBCABNgIUIARBADoAEAsgBAsLsQICAX8BfgJ/QX8hBAJAIAAgAa0gAq1CIIaEIgZBAEEAECZFDQAgAC0AGEECcQRAIABBCGoEQCAAQQA2AgwgAEEZNgIIC0F/DAILIAAoAkAiASAGpyICQQR0aiIEKAIIIgUEQEEAIQQgBSADEHFBf0oNASAAQQhqBEAgAEEANgIMIABBDzYCCAtBfwwCCwJAIAQoAgAiBQRAIAUoAhQgA0YNAQsCQCABIAJBBHRqIgEoAgQiBA0AIAEgBRArIgQ2AgQgBA0AIABBCGoEQCAAQQA2AgwgAEEONgIIC0F/DAMLIAQgAzYCFCAEIAQoAgBBIHI2AgBBAAwCC0EAIQQgASACQQR0aiIBKAIEIgBFDQAgACAAKAIAQV9xIgI2AgAgAg0AIAAQICABQQA2AgQLIAQLCxQAIAAgAa0gAq1CIIaEIAQgBRBzCxIAIAAgAa0gAq1CIIaEIAMQFAtBAQF+An4gAUEAIAIbRQRAIABBCGoEQCAAQQA2AgwgAEESNgIIC0J/DAELIAAgASACIAMQdAsiBEIgiKcQACAEpwvGAwIFfwF+An4CQAJAIAAiBC0AGEECcQRAIARBCGoEQCAEQQA2AgwgBEEZNgIICwwBCyABRQRAIARBCGoEQCAEQQA2AgwgBEESNgIICwwBCyABECIiByABakEBay0AAEEvRwRAIAdBAmoQCSIARQRAIARBCGoEQCAEQQA2AgwgBEEONgIICwwCCwJAAkAgACIGIAEiBXNBA3ENACAFQQNxBEADQCAGIAUtAAAiAzoAACADRQ0DIAZBAWohBiAFQQFqIgVBA3ENAAsLIAUoAgAiA0F/cyADQYGChAhrcUGAgYKEeHENAANAIAYgAzYCACAFKAIEIQMgBkEEaiEGIAVBBGohBSADQYGChAhrIANBf3NxQYCBgoR4cUUNAAsLIAYgBS0AACIDOgAAIANFDQADQCAGIAUtAAEiAzoAASAGQQFqIQYgBUEBaiEFIAMNAAsLIAcgACIDakEvOwAACyAEQQBCAEEAEFIiAEUEQCADEAYMAQsgBCADIAEgAxsgACACEHQhCCADEAYgCEJ/VwRAIAAQCyAIDAMLIAQgCEEDQYCA/I8EEHNBf0oNASAEIAgQchoLQn8hCAsgCAsiCEIgiKcQACAIpwsQACAAIAGtIAKtQiCGhBByCxYAIAAgAa0gAq1CIIaEIAMgBCAFEGYL3iMDD38IfgF8IwBB8ABrIgkkAAJAIAFBAE5BACAAG0UEQCACBEAgAkEANgIEIAJBEjYCAAsMAQsgACkDGCISAn5BsIMBKQMAIhNCf1EEQCAJQoOAgIBwNwMwIAlChoCAgPAANwMoIAlCgYCAgCA3AyBBsIMBQQAgCUEgahAkNwMAIAlCj4CAgHA3AxAgCUKJgICAoAE3AwAgCUKMgICA0AE3AwhBuIMBQQggCRAkNwMAQbCDASkDACETCyATC4MgE1IEQCACBEAgAkEANgIEIAJBHDYCAAsMAQsgASABQRByQbiDASkDACITIBKDIBNRGyIKQRhxQRhGBEAgAgRAIAJBADYCBCACQRk2AgALDAELIAlBOGoQKgJAIAAgCUE4ahAhBEACQCAAKAIMQQVGBEAgACgCEEEsRg0BCyACBEAgAiAAKAIMNgIAIAIgACgCEDYCBAsMAgsgCkEBcUUEQCACBEAgAkEANgIEIAJBCTYCAAsMAwsgAhBJIgVFDQEgBSAKNgIEIAUgADYCACAKQRBxRQ0CIAUgBSgCFEECcjYCFCAFIAUoAhhBAnI2AhgMAgsgCkECcQRAIAIEQCACQQA2AgQgAkEKNgIACwwCCyAAEDJBf0wEQCACBEAgAiAAKAIMNgIAIAIgACgCEDYCBAsMAQsCfyAKQQhxBEACQCACEEkiAUUNACABIAo2AgQgASAANgIAIApBEHFFDQAgASABKAIUQQJyNgIUIAEgASgCGEECcjYCGAsgAQwBCyMAQUBqIg4kACAOQQhqECoCQCAAIA5BCGoQIUF/TARAIAIEQCACIAAoAgw2AgAgAiAAKAIQNgIECwwBCyAOLQAIQQRxRQRAIAIEQCACQYoBNgIEIAJBBDYCAAsMAQsgDikDICETIAIQSSIFRQRAQQAhBQwBCyAFIAo2AgQgBSAANgIAIApBEHEEQCAFIAUoAhRBAnI2AhQgBSAFKAIYQQJyNgIYCwJAAkACQCATUARAAn8gACEBAkADQCABKQMYQoCAEINCAFINASABKAIAIgENAAtBAQwBCyABQQBCAEESEA6nCw0EIAVBCGoEQCAFQQA2AgwgBUETNgIICwwBCyMAQdAAayIBJAACQCATQhVYBEAgBUEIagRAIAVBADYCDCAFQRM2AggLDAELAkACQCAFKAIAQgAgE0KqgAQgE0KqgARUGyISfUECEBRBf0oNACAFKAIAIgMoAgxBBEYEQCADKAIQQRZGDQELIAVBCGoEQCAFIAMoAgw2AgggBSADKAIQNgIMCwwBCyAFKAIAEDMiE0J/VwRAIAUoAgAhAyAFQQhqIggEQCAIIAMoAgw2AgAgCCADKAIQNgIECwwBCyAFKAIAIBJBACAFQQhqIg8QLSIERQ0BIBJCqoAEWgRAAkAgBCkDCEIUVARAIARBADoAAAwBCyAEQhQ3AxAgBEEBOgAACwsgAQRAIAFBADYCBCABQRM2AgALIARCABATIQwCQCAELQAABH4gBCkDCCAEKQMQfQVCAAunIgdBEmtBA0sEQEJ/IRcDQCAMQQFrIQMgByAMakEVayEGAkADQCADQQFqIgNB0AAgBiADaxB6IgNFDQEgA0EBaiIMQZ8SQQMQPQ0ACwJAIAMgBCgCBGusIhIgBCkDCFYEQCAEQQA6AAAMAQsgBCASNwMQIARBAToAAAsgBC0AAAR+IAQpAxAFQgALIRICQCAELQAABH4gBCkDCCAEKQMQfQVCAAtCFVgEQCABBEAgAUEANgIEIAFBEzYCAAsMAQsgBEIEEBMoAABB0JaVMEcEQCABBEAgAUEANgIEIAFBEzYCAAsMAQsCQAJAAkAgEkIUVA0AIAQoAgQgEqdqQRRrKAAAQdCWmThHDQACQCASQhR9IhQgBCIDKQMIVgRAIANBADoAAAwBCyADIBQ3AxAgA0EBOgAACyAFKAIUIRAgBSgCACEGIAMtAAAEfiAEKQMQBUIACyEWIARCBBATGiAEEAwhCyAEEAwhDSAEEB0iFEJ/VwRAIAEEQCABQRY2AgQgAUEENgIACwwECyAUQjh8IhUgEyAWfCIWVgRAIAEEQCABQQA2AgQgAUEVNgIACwwECwJAAkAgEyAUVg0AIBUgEyAEKQMIfFYNAAJAIBQgE30iFSAEKQMIVgRAIANBADoAAAwBCyADIBU3AxAgA0EBOgAAC0EAIQcMAQsgBiAUQQAQFEF/TARAIAEEQCABIAYoAgw2AgAgASAGKAIQNgIECwwFC0EBIQcgBkI4IAFBEGogARAtIgNFDQQLIANCBBATKAAAQdCWmTBHBEAgAQRAIAFBADYCBCABQRU2AgALIAdFDQQgAxAIDAQLIAMQHSEVAkAgEEEEcSIGRQ0AIBQgFXxCDHwgFlENACABBEAgAUEANgIEIAFBFTYCAAsgB0UNBCADEAgMBAsgA0IEEBMaIAMQFSIQIAsgC0H//wNGGyELIAMQFSIRIA0gDUH//wNGGyENAkAgBkUNACANIBFGQQAgCyAQRhsNACABBEAgAUEANgIEIAFBFTYCAAsgB0UNBCADEAgMBAsgCyANcgRAIAEEQCABQQA2AgQgAUEBNgIACyAHRQ0EIAMQCAwECyADEB0iGCADEB1SBEAgAQRAIAFBADYCBCABQQE2AgALIAdFDQQgAxAIDAQLIAMQHSEVIAMQHSEWIAMtAABFBEAgAQRAIAFBADYCBCABQRQ2AgALIAdFDQQgAxAIDAQLIAcEQCADEAgLAkAgFkIAWQRAIBUgFnwiGSAWWg0BCyABBEAgAUEWNgIEIAFBBDYCAAsMBAsgEyAUfCIUIBlUBEAgAQRAIAFBADYCBCABQRU2AgALDAQLAkAgBkUNACAUIBlRDQAgAQRAIAFBADYCBCABQRU2AgALDAQLIBggFUIugFgNASABBEAgAUEANgIEIAFBFTYCAAsMAwsCQCASIAQpAwhWBEAgBEEAOgAADAELIAQgEjcDECAEQQE6AAALIAUoAhQhAyAELQAABH4gBCkDCCAEKQMQfQVCAAtCFVgEQCABBEAgAUEANgIEIAFBFTYCAAsMAwsgBC0AAAR+IAQpAxAFQgALIRQgBEIEEBMaIAQQFQRAIAEEQCABQQA2AgQgAUEBNgIACwwDCyAEEAwgBBAMIgZHBEAgAQRAIAFBADYCBCABQRM2AgALDAMLIAQQFSEHIAQQFa0iFiAHrSIVfCIYIBMgFHwiFFYEQCABBEAgAUEANgIEIAFBFTYCAAsMAwsCQCADQQRxRQ0AIBQgGFENACABBEAgAUEANgIEIAFBFTYCAAsMAwsgBq0gARBqIgNFDQIgAyAWNwMgIAMgFTcDGCADQQA6ACwMAQsgGCABEGoiA0UNASADIBY3AyAgAyAVNwMYIANBAToALAsCQCASQhR8IhQgBCkDCFYEQCAEQQA6AAAMAQsgBCAUNwMQIARBAToAAAsgBBAMIQYCQCADKQMYIAMpAyB8IBIgE3xWDQACQCAGRQRAIAUtAARBBHFFDQELAkAgEkIWfCISIAQpAwhWBEAgBEEAOgAADAELIAQgEjcDECAEQQE6AAALIAQtAAAEfiAEKQMIIAQpAxB9BUIACyIUIAatIhJUDQEgBS0ABEEEcUEAIBIgFFIbDQEgBkUNACADIAQgEhATIAZBACABEDUiBjYCKCAGDQAgAxAWDAILAkAgEyADKQMgIhJYBEACQCASIBN9IhIgBCkDCFYEQCAEQQA6AAAMAQsgBCASNwMQIARBAToAAAsgBCADKQMYEBMiBkUNAiAGIAMpAxgQFyIHDQEgAQRAIAFBADYCBCABQQ42AgALIAMQFgwDCyAFKAIAIBJBABAUIQcgBSgCACEGIAdBf0wEQCABBEAgASAGKAIMNgIAIAEgBigCEDYCBAsgAxAWDAMLQQAhByAGEDMgAykDIFENACABBEAgAUEANgIEIAFBEzYCAAsgAxAWDAILQgAhFAJAAkAgAykDGCIWUEUEQANAIBQgAykDCFIiC0UEQCADLQAsDQMgFkIuVA0DAn8CQCADKQMQIhVCgIAEfCISIBVaQQAgEkKAgICAAVQbRQ0AIAMoAgAgEqdBBHQQNCIGRQ0AIAMgBjYCAAJAIAMpAwgiFSASWg0AIAYgFadBBHRqIgZCADcCACAGQgA3AAUgFUIBfCIVIBJRDQADQCADKAIAIBWnQQR0aiIGQgA3AgAgBkIANwAFIBVCAXwiFSASUg0ACwsgAyASNwMIIAMgEjcDEEEBDAELIAEEQCABQQA2AgQgAUEONgIAC0EAC0UNBAtB2AAQCSIGBH8gBkIANwMgIAZBADYCGCAGQv////8PNwMQIAZBADsBDCAGQb+GKDYCCCAGQQE6AAYgBkEAOwEEIAZBADYCACAGQgA3A0ggBkGAgNiNeDYCRCAGQgA3AyggBkIANwMwIAZCADcDOCAGQUBrQQA7AQAgBkIANwNQIAYFQQALIQYgAygCACAUp0EEdGogBjYCAAJAIAYEQCAGIAUoAgAgB0EAIAEQaCISQn9VDQELIAsNBCABKAIAQRNHDQQgAQRAIAFBADYCBCABQRU2AgALDAQLIBRCAXwhFCAWIBJ9IhZCAFINAAsLIBQgAykDCFINAAJAIAUtAARBBHFFDQAgBwRAIActAAAEfyAHKQMQIAcpAwhRBUEAC0UNAgwBCyAFKAIAEDMiEkJ/VwRAIAUoAgAhBiABBEAgASAGKAIMNgIAIAEgBigCEDYCBAsgAxAWDAULIBIgAykDGCADKQMgfFINAQsgBxAIAn4gCARAAn8gF0IAVwRAIAUgCCABEEghFwsgBSADIAEQSCISIBdVCwRAIAgQFiASDAILIAMQFgwFC0IAIAUtAARBBHFFDQAaIAUgAyABEEgLIRcgAyEIDAMLIAEEQCABQQA2AgQgAUEVNgIACyAHEAggAxAWDAILIAMQFiAHEAgMAQsgAQRAIAFBADYCBCABQRU2AgALIAMQFgsCQCAMIAQoAgRrrCISIAQpAwhWBEAgBEEAOgAADAELIAQgEjcDECAEQQE6AAALIAQtAAAEfiAEKQMIIAQpAxB9BUIAC6ciB0ESa0EDSw0BCwsgBBAIIBdCf1UNAwwBCyAEEAgLIA8iAwRAIAMgASgCADYCACADIAEoAgQ2AgQLIAgQFgtBACEICyABQdAAaiQAIAgNAQsgAgRAIAIgBSgCCDYCACACIAUoAgw2AgQLDAELIAUgCCgCADYCQCAFIAgpAwg3AzAgBSAIKQMQNwM4IAUgCCgCKDYCICAIEAYgBSgCUCEIIAVBCGoiBCEBQQAhBwJAIAUpAzAiE1ANAEGAgICAeCEGAn8gE7pEAAAAAAAA6D+jRAAA4P///+9BpCIaRAAAAAAAAPBBYyAaRAAAAAAAAAAAZnEEQCAaqwwBC0EACyIDQYCAgIB4TQRAIANBAWsiA0EBdiADciIDQQJ2IANyIgNBBHYgA3IiA0EIdiADciIDQRB2IANyQQFqIQYLIAYgCCgCACIMTQ0AIAYQPCILRQRAIAEEQCABQQA2AgQgAUEONgIACwwBCwJAIAgpAwhCACAMG1AEQCAIKAIQIQ8MAQsgCCgCECEPA0AgDyAHQQJ0aigCACIBBEADQCABKAIYIQMgASALIAEoAhwgBnBBAnRqIg0oAgA2AhggDSABNgIAIAMiAQ0ACwsgB0EBaiIHIAxHDQALCyAPEAYgCCAGNgIAIAggCzYCEAsCQCAFKQMwUA0AQgAhEwJAIApBBHFFBEADQCAFKAJAIBOnQQR0aigCACgCMEEAQQAgAhAlIgFFDQQgBSgCUCABIBNBCCAEEE1FBEAgBCgCAEEKRw0DCyATQgF8IhMgBSkDMFQNAAwDCwALA0AgBSgCQCATp0EEdGooAgAoAjBBAEEAIAIQJSIBRQ0DIAUoAlAgASATQQggBBBNRQ0BIBNCAXwiEyAFKQMwVA0ACwwBCyACBEAgAiAEKAIANgIAIAIgBCgCBDYCBAsMAQsgBSAFKAIUNgIYDAELIAAgACgCMEEBajYCMCAFEEtBACEFCyAOQUBrJAAgBQsiBQ0BIAAQGhoLQQAhBQsgCUHwAGokACAFCxAAIwAgAGtBcHEiACQAIAALBgAgACQACwQAIwAL4CoDEX8IfgN8IwBBwMAAayIHJABBfyECAkAgAEUNAAJ/IAAtAChFBEBBACAAKAIYIAAoAhRGDQEaC0EBCyEBAkACQCAAKQMwIhRQRQRAIAAoAkAhCgNAIAogEqdBBHRqIgMtAAwhCwJAAkAgAygCCA0AIAsNACADKAIEIgNFDQEgAygCAEUNAQtBASEBCyAXIAtBAXOtQv8Bg3whFyASQgF8IhIgFFINAAsgF0IAUg0BCyAAKAIEQQhxIAFyRQ0BAn8gACgCACIDKAIkIgFBA0cEQCADKAIgBH9BfyADEBpBAEgNAhogAygCJAUgAQsEQCADEEMLQX8gA0EAQgBBDxAOQgBTDQEaIANBAzYCJAtBAAtBf0oNASAAKAIAKAIMQRZGBEAgACgCACgCEEEsRg0CCyAAKAIAIQEgAEEIagRAIAAgASgCDDYCCCAAIAEoAhA2AgwLDAILIAFFDQAgFCAXVARAIABBCGoEQCAAQQA2AgwgAEEUNgIICwwCCyAXp0EDdBAJIgtFDQFCfyEWQgAhEgNAAkAgCiASp0EEdGoiBigCACIDRQ0AAkAgBigCCA0AIAYtAAwNACAGKAIEIgFFDQEgASgCAEUNAQsgFiADKQNIIhMgEyAWVhshFgsgBi0ADEUEQCAXIBlYBEAgCxAGIABBCGoEQCAAQQA2AgwgAEEUNgIICwwECyALIBmnQQN0aiASNwMAIBlCAXwhGQsgEkIBfCISIBRSDQALIBcgGVYEQCALEAYgAEEIagRAIABBADYCDCAAQRQ2AggLDAILAkACQCAAKAIAKQMYQoCACINQDQACQAJAIBZCf1INACAAKQMwIhNQDQIgE0IBgyEVIAAoAkAhAwJAIBNCAVEEQEJ/IRRCACESQgAhFgwBCyATQn6DIRlCfyEUQgAhEkIAIRYDQCADIBKnQQR0aigCACIBBEAgFiABKQNIIhMgEyAWVCIBGyEWIBQgEiABGyEUCyADIBJCAYQiGKdBBHRqKAIAIgEEQCAWIAEpA0giEyATIBZUIgEbIRYgFCAYIAEbIRQLIBJCAnwhEiAZQgJ9IhlQRQ0ACwsCQCAVUA0AIAMgEqdBBHRqKAIAIgFFDQAgFiABKQNIIhMgEyAWVCIBGyEWIBQgEiABGyEUCyAUQn9RDQBCACETIwBBEGsiBiQAAkAgACAUIABBCGoiCBBBIhVQDQAgFSAAKAJAIBSnQQR0aigCACIKKQMgIhh8IhQgGFpBACAUQn9VG0UEQCAIBEAgCEEWNgIEIAhBBDYCAAsMAQsgCi0ADEEIcUUEQCAUIRMMAQsgACgCACAUQQAQFCEBIAAoAgAhAyABQX9MBEAgCARAIAggAygCDDYCACAIIAMoAhA2AgQLDAELIAMgBkEMakIEEBFCBFIEQCAAKAIAIQEgCARAIAggASgCDDYCACAIIAEoAhA2AgQLDAELIBRCBHwgFCAGKAAMQdCWncAARhtCFEIMAn9BASEBAkAgCikDKEL+////D1YNACAKKQMgQv7///8PVg0AQQAhAQsgAQsbfCIUQn9XBEAgCARAIAhBFjYCBCAIQQQ2AgALDAELIBQhEwsgBkEQaiQAIBMiFkIAUg0BIAsQBgwFCyAWUA0BCwJ/IAAoAgAiASgCJEEBRgRAIAFBDGoEQCABQQA2AhAgAUESNgIMC0F/DAELQX8gAUEAIBZBERAOQgBTDQAaIAFBATYCJEEAC0F/Sg0BC0IAIRYCfyAAKAIAIgEoAiRBAUYEQCABQQxqBEAgAUEANgIQIAFBEjYCDAtBfwwBC0F/IAFBAEIAQQgQDkIAUw0AGiABQQE2AiRBAAtBf0oNACAAKAIAIQEgAEEIagRAIAAgASgCDDYCCCAAIAEoAhA2AgwLIAsQBgwCCyAAKAJUIgIEQCACQgA3AxggAigCAEQAAAAAAAAAACACKAIMIAIoAgQRDgALIABBCGohBCAXuiEcQgAhFAJAAkACQANAIBcgFCITUgRAIBO6IByjIRsgE0IBfCIUuiAcoyEaAkAgACgCVCICRQ0AIAIgGjkDKCACIBs5AyAgAisDECAaIBuhRAAAAAAAAAAAoiAboCIaIAIrAxihY0UNACACKAIAIBogAigCDCACKAIEEQ4AIAIgGjkDGAsCfwJAIAAoAkAgCyATp0EDdGopAwAiE6dBBHRqIg0oAgAiAQRAIAEpA0ggFlQNAQsgDSgCBCEFAkACfwJAIA0oAggiAkUEQCAFRQ0BQQEgBSgCACICQQFxDQIaIAJBwABxQQZ2DAILQQEgBQ0BGgsgDSABECsiBTYCBCAFRQ0BIAJBAEcLIQZBACEJIwBBEGsiDCQAAkAgEyAAKQMwWgRAIABBCGoEQCAAQQA2AgwgAEESNgIIC0F/IQkMAQsgACgCQCIKIBOnIgNBBHRqIg8oAgAiAkUNACACLQAEDQACQCACKQNIQhp8IhhCf1cEQCAAQQhqBEAgAEEWNgIMIABBBDYCCAsMAQtBfyEJIAAoAgAgGEEAEBRBf0wEQCAAKAIAIQIgAEEIagRAIAAgAigCDDYCCCAAIAIoAhA2AgwLDAILIAAoAgBCBCAMQQxqIABBCGoiDhAtIhBFDQEgEBAMIQEgEBAMIQggEC0AAAR/IBApAxAgECkDCFEFQQALIQIgEBAIIAJFBEAgDgRAIA5BADYCBCAOQRQ2AgALDAILAkAgCEUNACAAKAIAIAGtQQEQFEF/TARAQYSEASgCACECIA4EQCAOIAI2AgQgDkEENgIACwwDC0EAIAAoAgAgCEEAIA4QRSIBRQ0BIAEgCEGAAiAMQQhqIA4QbiECIAEQBiACRQ0BIAwoAggiAkUNACAMIAIQbSICNgIIIA8oAgAoAjQgAhBvIQIgDygCACACNgI0CyAPKAIAIgJBAToABEEAIQkgCiADQQR0aigCBCIBRQ0BIAEtAAQNASACKAI0IQIgAUEBOgAEIAEgAjYCNAwBC0F/IQkLIAxBEGokACAJQQBIDQUgACgCABAfIhhCAFMNBSAFIBg3A0ggBgRAQQAhDCANKAIIIg0hASANRQRAIAAgACATQQhBABB/IgwhASAMRQ0HCwJAAkAgASAHQQhqECFBf0wEQCAEBEAgBCABKAIMNgIAIAQgASgCEDYCBAsMAQsgBykDCCISQsAAg1AEQCAHQQA7ATggByASQsAAhCISNwMICwJAAkAgBSgCECICQX5PBEAgBy8BOCIDRQ0BIAUgAzYCECADIQIMAgsgAg0AIBJCBINQDQAgByAHKQMgNwMoIAcgEkIIhCISNwMIQQAhAgwBCyAHIBJC9////w+DIhI3AwgLIBJCgAGDUARAIAdBADsBOiAHIBJCgAGEIhI3AwgLAn8gEkIEg1AEQEJ/IRVBgAoMAQsgBSAHKQMgIhU3AyggEkIIg1AEQAJAAkACQAJAQQggAiACQX1LG0H//wNxDg0CAwMDAwMDAwEDAwMAAwtBgApBgAIgFUKUwuTzD1YbDAQLQYAKQYACIBVCg4Ow/w9WGwwDC0GACkGAAiAVQv////8PVhsMAgtBgApBgAIgFUIAUhsMAQsgBSAHKQMoNwMgQYACCyEPIAAoAgAQHyITQn9XBEAgACgCACECIAQEQCAEIAIoAgw2AgAgBCACKAIQNgIECwwBCyAFIAUvAQxB9/8DcTsBDCAAIAUgDxA3IgpBAEgNACAHLwE4IghBCCAFKAIQIgMgA0F9SxtB//8DcSICRyEGAkACQAJAAkACQAJAAkAgAiAIRwRAIANBAEchAwwBC0EAIQMgBS0AAEGAAXFFDQELIAUvAVIhCSAHLwE6IQIMAQsgBS8BUiIJIAcvAToiAkYNAQsgASABKAIwQQFqNgIwIAJB//8DcQ0BIAEhAgwCCyABIAEoAjBBAWo2AjBBACEJDAILQSZBACAHLwE6QQFGGyICRQRAIAQEQCAEQQA2AgQgBEEYNgIACyABEAsMAwsgACABIAcvATpBACAAKAIcIAIRBgAhAiABEAsgAkUNAgsgCUEARyEJIAhBAEcgBnFFBEAgAiEBDAELIAAgAiAHLwE4EIEBIQEgAhALIAFFDQELAkAgCEUgBnJFBEAgASECDAELIAAgAUEAEIABIQIgARALIAJFDQELAkAgA0UEQCACIQMMAQsgACACIAUoAhBBASAFLwFQEIIBIQMgAhALIANFDQELAkAgCUUEQCADIQEMAQsgBSgCVCIBRQRAIAAoAhwhAQsCfyAFLwFSGkEBCwRAIAQEQCAEQQA2AgQgBEEYNgIACyADEAsMAgsgACADIAUvAVJBASABQQARBgAhASADEAsgAUUNAQsgACgCABAfIhhCf1cEQCAAKAIAIQIgBARAIAQgAigCDDYCACAEIAIoAhA2AgQLDAELAkAgARAyQQBOBEACfwJAAkAgASAHQUBrQoDAABARIhJCAVMNAEIAIRkgFUIAVQRAIBW5IRoDQCAAIAdBQGsgEhAbQQBIDQMCQCASQoDAAFINACAAKAJUIgJFDQAgAiAZQoBAfSIZuSAaoxB7CyABIAdBQGtCgMAAEBEiEkIAVQ0ACwwBCwNAIAAgB0FAayASEBtBAEgNAiABIAdBQGtCgMAAEBEiEkIAVQ0ACwtBACASQn9VDQEaIAQEQCAEIAEoAgw2AgAgBCABKAIQNgIECwtBfwshAiABEBoaDAELIAQEQCAEIAEoAgw2AgAgBCABKAIQNgIEC0F/IQILIAEgB0EIahAhQX9MBEAgBARAIAQgASgCDDYCACAEIAEoAhA2AgQLQX8hAgsCf0EAIQkCQCABIgNFDQADQCADLQAaQQFxBEBB/wEhCSADQQBCAEEQEA4iFUIAUw0CIBVCBFkEQCADQQxqBEAgA0EANgIQIANBFDYCDAsMAwsgFachCQwCCyADKAIAIgMNAAsLIAlBGHRBGHUiA0F/TAsEQCAEBEAgBCABKAIMNgIAIAQgASgCEDYCBAsgARALDAELIAEQCyACQQBIDQAgACgCABAfIRUgACgCACECIBVCf1cEQCAEBEAgBCACKAIMNgIAIAQgAigCEDYCBAsMAQsgAiATEHVBf0wEQCAAKAIAIQIgBARAIAQgAigCDDYCACAEIAIoAhA2AgQLDAELIAcpAwgiE0LkAINC5ABSBEAgBARAIARBADYCBCAEQRQ2AgALDAELAkAgBS0AAEEgcQ0AIBNCEINQRQRAIAUgBygCMDYCFAwBCyAFQRRqEAEaCyAFIAcvATg2AhAgBSAHKAI0NgIYIAcpAyAhEyAFIBUgGH03AyAgBSATNwMoIAUgBS8BDEH5/wNxIANB/wFxQQF0cjsBDCAPQQp2IQNBPyEBAkACQAJAAkAgBSgCECICQQxrDgMAAQIBCyAFQS47AQoMAgtBLSEBIAMNACAFKQMoQv7///8PVg0AIAUpAyBC/v///w9WDQBBFCEBIAJBCEYNACAFLwFSQQFGDQAgBSgCMCICBH8gAi8BBAVBAAtB//8DcSICBEAgAiAFKAIwKAIAakEBay0AAEEvRg0BC0EKIQELIAUgATsBCgsgACAFIA8QNyICQQBIDQAgAiAKRwRAIAQEQCAEQQA2AgQgBEEUNgIACwwBCyAAKAIAIBUQdUF/Sg0BIAAoAgAhAiAEBEAgBCACKAIMNgIAIAQgAigCEDYCBAsLIA0NByAMEAsMBwsgDQ0CIAwQCwwCCyAFIAUvAQxB9/8DcTsBDCAAIAVBgAIQN0EASA0FIAAgEyAEEEEiE1ANBSAAKAIAIBNBABAUQX9MBEAgACgCACECIAQEQCAEIAIoAgw2AgAgBCACKAIQNgIECwwGCyAFKQMgIRIjAEGAQGoiAyQAAkAgElBFBEAgAEEIaiECIBK6IRoDQEF/IQEgACgCACADIBJCgMAAIBJCgMAAVBsiEyACEGVBAEgNAiAAIAMgExAbQQBIDQIgACgCVCAaIBIgE30iErqhIBqjEHsgEkIAUg0ACwtBACEBCyADQYBAayQAIAFBf0oNAUEBIREgAUEcdkEIcUEIRgwCCyAEBEAgBEEANgIEIARBDjYCAAsMBAtBAAtFDQELCyARDQBBfyECAkAgACgCABAfQgBTDQAgFyEUQQAhCkIAIRcjAEHwAGsiESQAAkAgACgCABAfIhVCAFkEQCAUUEUEQANAIAAgACgCQCALIBenQQN0aigCAEEEdGoiAygCBCIBBH8gAQUgAygCAAtBgAQQNyIBQQBIBEBCfyEXDAQLIAFBAEcgCnIhCiAXQgF8IhcgFFINAAsLQn8hFyAAKAIAEB8iGEJ/VwRAIAAoAgAhASAAQQhqBEAgACABKAIMNgIIIAAgASgCEDYCDAsMAgsgEULiABAXIgZFBEAgAEEIagRAIABBADYCDCAAQQ42AggLDAILIBggFX0hEyAVQv////8PViAUQv//A1ZyIApyQQFxBEAgBkGZEkEEECwgBkIsEBggBkEtEA0gBkEtEA0gBkEAEBIgBkEAEBIgBiAUEBggBiAUEBggBiATEBggBiAVEBggBkGUEkEEECwgBkEAEBIgBiAYEBggBkEBEBILIAZBnhJBBBAsIAZBABASIAYgFEL//wMgFEL//wNUG6dB//8DcSIBEA0gBiABEA0gBkF/IBOnIBNC/v///w9WGxASIAZBfyAVpyAVQv7///8PVhsQEiAGIABBJEEgIAAtACgbaigCACIDBH8gAy8BBAVBAAtB//8DcRANIAYtAABFBEAgAEEIagRAIABBADYCDCAAQRQ2AggLIAYQCAwCCyAAIAYoAgQgBi0AAAR+IAYpAxAFQgALEBshASAGEAggAUEASA0BIAMEQCAAIAMoAgAgAzMBBBAbQQBIDQILIBMhFwwBCyAAKAIAIQEgAEEIagRAIAAgASgCDDYCCCAAIAEoAhA2AgwLQn8hFwsgEUHwAGokACAXQgBTDQAgACgCABAfQj+HpyECCyALEAYgAkEASA0BAn8gACgCACIBKAIkQQFHBEAgAUEMagRAIAFBADYCECABQRI2AgwLQX8MAQsgASgCICICQQJPBEAgAUEMagRAIAFBADYCECABQR02AgwLQX8MAQsCQCACQQFHDQAgARAaQQBODQBBfwwBCyABQQBCAEEJEA5Cf1cEQCABQQI2AiRBfwwBCyABQQA2AiRBAAtFDQIgACgCACECIAQEQCAEIAIoAgw2AgAgBCACKAIQNgIECwwBCyALEAYLIAAoAlQQfCAAKAIAEENBfyECDAILIAAoAlQQfAsgABBLQQAhAgsgB0HAwABqJAAgAgtFAEHwgwFCADcDAEHogwFCADcDAEHggwFCADcDAEHYgwFCADcDAEHQgwFCADcDAEHIgwFCADcDAEHAgwFCADcDAEHAgwELoQMBCH8jAEGgAWsiAiQAIAAQMQJAAn8CQCAAKAIAIgFBAE4EQCABQbATKAIASA0BCyACIAE2AhAgAkEgakH2ESACQRBqEHZBASEGIAJBIGohBCACQSBqECIhA0EADAELIAFBAnQiAUGwEmooAgAhBQJ/AkACQCABQcATaigCAEEBaw4CAAEECyAAKAIEIQNB9IIBKAIAIQdBACEBAkACQANAIAMgAUHQ8QBqLQAARwRAQdcAIQQgAUEBaiIBQdcARw0BDAILCyABIgQNAEGw8gAhAwwBC0Gw8gAhAQNAIAEtAAAhCCABQQFqIgMhASAIDQAgAyEBIARBAWsiBA0ACwsgBygCFBogAwwBC0EAIAAoAgRrQQJ0QdjAAGooAgALIgRFDQEgBBAiIQMgBUUEQEEAIQVBASEGQQAMAQsgBRAiQQJqCyEBIAEgA2pBAWoQCSIBRQRAQegSKAIAIQUMAQsgAiAENgIIIAJBrBJBkRIgBhs2AgQgAkGsEiAFIAYbNgIAIAFBqwogAhB2IAAgATYCCCABIQULIAJBoAFqJAAgBQszAQF/IAAoAhQiAyABIAIgACgCECADayIBIAEgAksbIgEQBxogACAAKAIUIAFqNgIUIAILBgBBsIgBCwYAQayIAQsGAEGkiAELBwAgAEEEagsHACAAQQhqCyYBAX8gACgCFCIBBEAgARALCyAAKAIEIQEgAEEEahAxIAAQBiABC6kBAQN/AkAgAC0AACICRQ0AA0AgAS0AACIERQRAIAIhAwwCCwJAIAIgBEYNACACQSByIAIgAkHBAGtBGkkbIAEtAAAiAkEgciACIAJBwQBrQRpJG0YNACAALQAAIQMMAgsgAUEBaiEBIAAtAAEhAiAAQQFqIQAgAg0ACwsgA0H/AXEiAEEgciAAIABBwQBrQRpJGyABLQAAIgBBIHIgACAAQcEAa0EaSRtrC8sGAgJ+An8jAEHgAGsiByQAAkACQAJAAkACQAJAAkACQAJAAkACQCAEDg8AAQoCAwQGBwgICAgICAUICyABQgA3AyAMCQsgACACIAMQESIFQn9XBEAgAUEIaiIBBEAgASAAKAIMNgIAIAEgACgCEDYCBAsMCAsCQCAFUARAIAEpAygiAyABKQMgUg0BIAEgAzcDGCABQQE2AgQgASgCAEUNASAAIAdBKGoQIUF/TARAIAFBCGoiAQRAIAEgACgCDDYCACABIAAoAhA2AgQLDAoLAkAgBykDKCIDQiCDUA0AIAcoAlQgASgCMEYNACABQQhqBEAgAUEANgIMIAFBBzYCCAsMCgsgA0IEg1ANASAHKQNAIAEpAxhRDQEgAUEIagRAIAFBADYCDCABQRU2AggLDAkLIAEoAgQNACABKQMoIgMgASkDICIGVA0AIAUgAyAGfSIDWA0AIAEoAjAhBANAIAECfyAFIAN9IgZC/////w8gBkL/////D1QbIganIQBBACACIAOnaiIIRQ0AGiAEIAggAEHUgAEoAgARAAALIgQ2AjAgASABKQMoIAZ8NwMoIAUgAyAGfCIDVg0ACwsgASABKQMgIAV8NwMgDAgLIAEoAgRFDQcgAiABKQMYIgM3AxggASgCMCEAIAJBADYCMCACIAM3AyAgAiAANgIsIAIgAikDAELsAYQ3AwAMBwsgA0IIWgR+IAIgASgCCDYCACACIAEoAgw2AgRCCAVCfwshBQwGCyABEAYMBQtCfyEFIAApAxgiA0J/VwRAIAFBCGoiAQRAIAEgACgCDDYCACABIAAoAhA2AgQLDAULIAdBfzYCGCAHQo+AgICAAjcDECAHQoyAgIDQATcDCCAHQomAgICgATcDACADQQggBxAkQn+FgyEFDAQLIANCD1gEQCABQQhqBEAgAUEANgIMIAFBEjYCCAsMAwsgAkUNAgJAIAAgAikDACACKAIIEBRBAE4EQCAAEDMiA0J/VQ0BCyABQQhqIgEEQCABIAAoAgw2AgAgASAAKAIQNgIECwwDCyABIAM3AyAMAwsgASkDICEFDAILIAFBCGoEQCABQQA2AgwgAUEcNgIICwtCfyEFCyAHQeAAaiQAIAULjAcCAn4CfyMAQRBrIgckAAJAAkACQAJAAkACQAJAAkACQAJAIAQOEQABAgMFBggICAgICAgIBwgECAsgAUJ/NwMgIAFBADoADyABQQA7AQwgAUIANwMYIAEoAqxAIAEoAqhAKAIMEQEArUIBfSEFDAgLQn8hBSABKAIADQdCACEFIANQDQcgAS0ADQ0HIAFBKGohBAJAA0ACQCAHIAMgBX03AwggASgCrEAgAiAFp2ogB0EIaiABKAKoQCgCHBEAACEIQgAgBykDCCAIQQJGGyAFfCEFAkACQAJAIAhBAWsOAwADAQILIAFBAToADSABKQMgIgNCf1cEQCABBEAgAUEANgIEIAFBFDYCAAsMBQsgAS0ADkUNBCADIAVWDQQgASADNwMYIAFBAToADyACIAQgA6cQBxogASkDGCEFDAwLIAEtAAwNAyAAIARCgMAAEBEiBkJ/VwRAIAEEQCABIAAoAgw2AgAgASAAKAIQNgIECwwECyAGUARAIAFBAToADCABKAKsQCABKAKoQCgCGBEDACABKQMgQn9VDQEgAUIANwMgDAELAkAgASkDIEIAWQRAIAFBADoADgwBCyABIAY3AyALIAEoAqxAIAQgBiABKAKoQCgCFBEPABoLIAMgBVYNAQwCCwsgASgCAA0AIAEEQCABQQA2AgQgAUEUNgIACwsgBVBFBEAgAUEAOgAOIAEgASkDGCAFfDcDGAwIC0J/QgAgASgCABshBQwHCyABKAKsQCABKAKoQCgCEBEBAK1CAX0hBQwGCyABLQAQBEAgAS0ADQRAIAIgAS0ADwR/QQAFQQggASgCFCIAIABBfUsbCzsBMCACIAEpAxg3AyAgAiACKQMAQsgAhDcDAAwHCyACIAIpAwBCt////w+DNwMADAYLIAJBADsBMCACKQMAIQMgAS0ADQRAIAEpAxghBSACIANCxACENwMAIAIgBTcDGEIAIQUMBgsgAiADQrv///8Pg0LAAIQ3AwAMBQsgAS0ADw0EIAEoAqxAIAEoAqhAKAIIEQEArCEFDAQLIANCCFoEfiACIAEoAgA2AgAgAiABKAIENgIEQggFQn8LIQUMAwsgAUUNAiABKAKsQCABKAKoQCgCBBEDACABEDEgARAGDAILIAdBfzYCAEEQIAcQJEI/hCEFDAELIAEEQCABQQA2AgQgAUEUNgIAC0J/IQULIAdBEGokACAFC2MAQcgAEAkiAEUEQEGEhAEoAgAhASACBEAgAiABNgIEIAJBATYCAAsgAA8LIABBADoADCAAQQA6AAQgACACNgIAIABBADYCOCAAQgA3AzAgACABQQkgAUEBa0EJSRs2AgggAAu3fAIefwZ+IAIpAwAhIiAAIAE2AhwgACAiQv////8PICJC/////w9UGz4CICAAQRBqIQECfyAALQAEBEACfyAALQAMQQJ0IQpBfiEEAkACQAJAIAEiBUUNACAFKAIgRQ0AIAUoAiRFDQAgBSgCHCIDRQ0AIAMoAgAgBUcNAAJAAkAgAygCICIGQTlrDjkBAgICAgICAgICAgIBAgICAQICAgICAgICAgICAgICAgICAQICAgICAgICAgICAQICAgICAgICAgEACyAGQZoFRg0AIAZBKkcNAQsgCkEFSw0AAkACQCAFKAIMRQ0AIAUoAgQiAQRAIAUoAgBFDQELIAZBmgVHDQEgCkEERg0BCyAFQeDAACgCADYCGEF+DAQLIAUoAhBFDQEgAygCJCEEIAMgCjYCJAJAIAMoAhAEQCADEDACQCAFKAIQIgYgAygCECIIIAYgCEkbIgFFDQAgBSgCDCADKAIIIAEQBxogBSAFKAIMIAFqNgIMIAMgAygCCCABajYCCCAFIAUoAhQgAWo2AhQgBSAFKAIQIAFrIgY2AhAgAyADKAIQIAFrIgg2AhAgCA0AIAMgAygCBDYCCEEAIQgLIAYEQCADKAIgIQYMAgsMBAsgAQ0AIApBAXRBd0EAIApBBEsbaiAEQQF0QXdBACAEQQRKG2pKDQAgCkEERg0ADAILAkACQAJAAkACQCAGQSpHBEAgBkGaBUcNASAFKAIERQ0DDAcLIAMoAhRFBEAgA0HxADYCIAwCCyADKAI0QQx0QYDwAWshBAJAIAMoAowBQQJODQAgAygCiAEiAUEBTA0AIAFBBUwEQCAEQcAAciEEDAELQYABQcABIAFBBkYbIARyIQQLIAMoAgQgCGogBEEgciAEIAMoAmgbIgFBH3AgAXJBH3NBCHQgAUGA/gNxQQh2cjsAACADIAMoAhBBAmoiATYCECADKAJoBEAgAygCBCABaiAFKAIwIgFBGHQgAUEIdEGAgPwHcXIgAUEIdkGA/gNxIAFBGHZycjYAACADIAMoAhBBBGo2AhALIAVBATYCMCADQfEANgIgIAUQCiADKAIQDQcgAygCICEGCwJAAkACQAJAIAZBOUYEfyADQaABakHkgAEoAgARAQAaIAMgAygCECIBQQFqNgIQIAEgAygCBGpBHzoAACADIAMoAhAiAUEBajYCECABIAMoAgRqQYsBOgAAIAMgAygCECIBQQFqNgIQIAEgAygCBGpBCDoAAAJAIAMoAhwiAUUEQCADKAIEIAMoAhBqQQA2AAAgAyADKAIQIgFBBWo2AhAgASADKAIEakEAOgAEQQIhBCADKAKIASIBQQlHBEBBBCABQQJIQQJ0IAMoAowBQQFKGyEECyADIAMoAhAiAUEBajYCECABIAMoAgRqIAQ6AAAgAyADKAIQIgFBAWo2AhAgASADKAIEakEDOgAAIANB8QA2AiAgBRAKIAMoAhBFDQEMDQsgASgCJCELIAEoAhwhCSABKAIQIQggASgCLCENIAEoAgAhBiADIAMoAhAiAUEBajYCEEECIQQgASADKAIEaiANQQBHQQF0IAZBAEdyIAhBAEdBAnRyIAlBAEdBA3RyIAtBAEdBBHRyOgAAIAMoAgQgAygCEGogAygCHCgCBDYAACADIAMoAhAiDUEEaiIGNgIQIAMoAogBIgFBCUcEQEEEIAFBAkhBAnQgAygCjAFBAUobIQQLIAMgDUEFajYCECADKAIEIAZqIAQ6AAAgAygCHCgCDCEEIAMgAygCECIBQQFqNgIQIAEgAygCBGogBDoAACADKAIcIgEoAhAEfyADKAIEIAMoAhBqIAEoAhQ7AAAgAyADKAIQQQJqNgIQIAMoAhwFIAELKAIsBEAgBQJ/IAUoAjAhBiADKAIQIQRBACADKAIEIgFFDQAaIAYgASAEQdSAASgCABEAAAs2AjALIANBxQA2AiAgA0EANgIYDAILIAMoAiAFIAYLQcUAaw4jAAQEBAEEBAQEBAQEBAQEBAQEBAQEBAIEBAQEBAQEBAQEBAMECyADKAIcIgEoAhAiBgRAIAMoAgwiCCADKAIQIgQgAS8BFCADKAIYIg1rIglqSQRAA0AgAygCBCAEaiAGIA1qIAggBGsiCBAHGiADIAMoAgwiDTYCEAJAIAMoAhwoAixFDQAgBCANTw0AIAUCfyAFKAIwIQZBACADKAIEIARqIgFFDQAaIAYgASANIARrQdSAASgCABEAAAs2AjALIAMgAygCGCAIajYCGCAFKAIcIgYQMAJAIAUoAhAiBCAGKAIQIgEgASAESxsiAUUNACAFKAIMIAYoAgggARAHGiAFIAUoAgwgAWo2AgwgBiAGKAIIIAFqNgIIIAUgBSgCFCABajYCFCAFIAUoAhAgAWs2AhAgBiAGKAIQIAFrIgE2AhAgAQ0AIAYgBigCBDYCCAsgAygCEA0MIAMoAhghDSADKAIcKAIQIQZBACEEIAkgCGsiCSADKAIMIghLDQALCyADKAIEIARqIAYgDWogCRAHGiADIAMoAhAgCWoiDTYCEAJAIAMoAhwoAixFDQAgBCANTw0AIAUCfyAFKAIwIQZBACADKAIEIARqIgFFDQAaIAYgASANIARrQdSAASgCABEAAAs2AjALIANBADYCGAsgA0HJADYCIAsgAygCHCgCHARAIAMoAhAiBCEJA0ACQCAEIAMoAgxHDQACQCADKAIcKAIsRQ0AIAQgCU0NACAFAn8gBSgCMCEGQQAgAygCBCAJaiIBRQ0AGiAGIAEgBCAJa0HUgAEoAgARAAALNgIwCyAFKAIcIgYQMAJAIAUoAhAiBCAGKAIQIgEgASAESxsiAUUNACAFKAIMIAYoAgggARAHGiAFIAUoAgwgAWo2AgwgBiAGKAIIIAFqNgIIIAUgBSgCFCABajYCFCAFIAUoAhAgAWs2AhAgBiAGKAIQIAFrIgE2AhAgAQ0AIAYgBigCBDYCCAtBACEEQQAhCSADKAIQRQ0ADAsLIAMoAhwoAhwhBiADIAMoAhgiAUEBajYCGCABIAZqLQAAIQEgAyAEQQFqNgIQIAMoAgQgBGogAToAACABBEAgAygCECEEDAELCwJAIAMoAhwoAixFDQAgAygCECIGIAlNDQAgBQJ/IAUoAjAhBEEAIAMoAgQgCWoiAUUNABogBCABIAYgCWtB1IABKAIAEQAACzYCMAsgA0EANgIYCyADQdsANgIgCwJAIAMoAhwoAiRFDQAgAygCECIEIQkDQAJAIAQgAygCDEcNAAJAIAMoAhwoAixFDQAgBCAJTQ0AIAUCfyAFKAIwIQZBACADKAIEIAlqIgFFDQAaIAYgASAEIAlrQdSAASgCABEAAAs2AjALIAUoAhwiBhAwAkAgBSgCECIEIAYoAhAiASABIARLGyIBRQ0AIAUoAgwgBigCCCABEAcaIAUgBSgCDCABajYCDCAGIAYoAgggAWo2AgggBSAFKAIUIAFqNgIUIAUgBSgCECABazYCECAGIAYoAhAgAWsiATYCECABDQAgBiAGKAIENgIIC0EAIQRBACEJIAMoAhBFDQAMCgsgAygCHCgCJCEGIAMgAygCGCIBQQFqNgIYIAEgBmotAAAhASADIARBAWo2AhAgAygCBCAEaiABOgAAIAEEQCADKAIQIQQMAQsLIAMoAhwoAixFDQAgAygCECIGIAlNDQAgBQJ/IAUoAjAhBEEAIAMoAgQgCWoiAUUNABogBCABIAYgCWtB1IABKAIAEQAACzYCMAsgA0HnADYCIAsCQCADKAIcKAIsBEAgAygCDCADKAIQIgFBAmpJBH8gBRAKIAMoAhANAkEABSABCyADKAIEaiAFKAIwOwAAIAMgAygCEEECajYCECADQaABakHkgAEoAgARAQAaCyADQfEANgIgIAUQCiADKAIQRQ0BDAcLDAYLIAUoAgQNAQsgAygCPA0AIApFDQEgAygCIEGaBUYNAQsCfyADKAKIASIBRQRAIAMgChCFAQwBCwJAAkACQCADKAKMAUECaw4CAAECCwJ/AkADQAJAAkAgAygCPA0AIAMQLyADKAI8DQAgCg0BQQAMBAsgAygCSCADKAJoai0AACEEIAMgAygC8C0iAUEBajYC8C0gASADKALsLWpBADoAACADIAMoAvAtIgFBAWo2AvAtIAEgAygC7C1qQQA6AAAgAyADKALwLSIBQQFqNgLwLSABIAMoAuwtaiAEOgAAIAMgBEECdGoiASABLwHkAUEBajsB5AEgAyADKAI8QQFrNgI8IAMgAygCaEEBaiIBNgJoIAMoAvAtIAMoAvQtRw0BQQAhBCADIAMoAlgiBkEATgR/IAMoAkggBmoFQQALIAEgBmtBABAPIAMgAygCaDYCWCADKAIAEAogAygCACgCEA0BDAILCyADQQA2AoQuIApBBEYEQCADIAMoAlgiAUEATgR/IAMoAkggAWoFQQALIAMoAmggAWtBARAPIAMgAygCaDYCWCADKAIAEApBA0ECIAMoAgAoAhAbDAILIAMoAvAtBEBBACEEIAMgAygCWCIBQQBOBH8gAygCSCABagVBAAsgAygCaCABa0EAEA8gAyADKAJoNgJYIAMoAgAQCiADKAIAKAIQRQ0BC0EBIQQLIAQL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bGl0ZXJhbC9sZW5ndGhzIHNldABpbnZhbGlkIGNvZGUgbGVuZ3RocyBzZXQAdW5rbm93biBoZWFkZXIgZmxhZ3Mgc2V0AGludmFsaWQgZGlzdGFuY2VzIHNldABpbnZhbGlkIGJpdCBsZW5ndGggcmVwZWF0AEZpbGUgYWxyZWFkeSBleGlzdHMAdG9vIG1hbnkgbGVuZ3RoIG9yIGRpc3RhbmNlIHN5bWJvbHMAaW52YWxpZCBzdG9yZWQgYmxvY2sgbGVuZ3RocwAlcyVzJXMAYnVmZmVyIGVycm9yAE5vIGVycm9yAHN0cmVhbSBlcnJvcgBUZWxsIGVycm9yAEludGVybmFsIGVycm9yAFNlZWsgZXJyb3IAV3JpdGUgZXJyb3IAZmlsZSBlcnJvcgBSZWFkIGVycm9yAFpsaWIgZXJyb3IAZGF0YSBlcnJvcgBDUkMgZXJyb3IAaW5jb21wYXRpYmxlIHZlcnNpb24AaW52YWxpZCBjb2RlIC0tIG1pc3NpbmcgZW5kLW9mLWJsb2NrAGluY29ycmVjdCBoZWFkZXIgY2hlY2sAaW5jb3JyZWN0IGxlbmd0aCBjaGVjawBpbmNvcnJlY3QgZGF0YSBjaGVjawBpbnZhbGlkIGRpc3RhbmNlIHRvbyBmYXIgYmFjawBoZWFkZXIgY3JjIG1pc21hdGNoADEuMi4xMy56bGliLW5nAGludmFsaWQgd2luZG93IHNpemUAUmVhZC1vbmx5IGFyY2hpdmUATm90IGEgemlwIGFyY2hpdmUAUmVzb3VyY2Ugc3RpbGwgaW4gdXNlAE1hbGxvYyBmYWlsdXJlAGludmFsaWQgYmxvY2sgdHlwZQBGYWlsdXJlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZmlsZQBDYW4ndCBvcGVuIGZpbGUATm8gc3VjaCBmaWxlAFByZW1hdHVyZSBlbmQgb2YgZmlsZQBDYW4ndCByZW1vdmUgZmlsZQBpbnZhbGlkIGxpdGVyYWwvbGVuZ3RoIGNvZGUAaW52YWxpZCBkaXN0YW5jZSBjb2RlAHVua25vd24gY29tcHJlc3Npb24gbWV0aG9kAHN0cmVhbSBlbmQAQ29tcHJlc3NlZCBkYXRhIGludmFsaWQATXVsdGktZGlzayB6aXAgYXJjaGl2ZXMgbm90IHN1cHBvcnRlZABPcGVyYXRpb24gbm90IHN1cHBvcnRlZABFbmNyeXB0aW9uIG1ldGhvZCBub3Qgc3VwcG9ydGVkAENvbXByZXNzaW9uIG1ldGhvZCBub3Qgc3VwcG9ydGVkAEVudHJ5IGhhcyBiZWVuIGRlbGV0ZWQAQ29udGFpbmluZyB6aXAgYXJjaGl2ZSB3YXMgY2xvc2VkAENsb3NpbmcgemlwIGFyY2hpdmUgZmFpbGVkAFJlbmFtaW5nIHRlbXBvcmFyeSBmaWxlIGZhaWxlZABFbnRyeSBoYXMgYmVlbiBjaGFuZ2VkAE5vIHBhc3N3b3JkIHByb3ZpZGVkAFdyb25nIHBhc3N3b3JkIHByb3ZpZGVkAFVua25vd24gZXJyb3IgJWQAQUUAKG51bGwpADogAFBLBgcAUEsGBgBQSwUGAFBLAwQAUEsBAgAAAAA/BQAAwAcAAJMIAAB4CAAAbwUAAJEFAAB6BQAAsgUAAFYIAAAbBwAA1gQAAAsHAADqBgAAnAUAAMgGAACyCAAAHggAACgHAABHBAAAoAYAAGAFAAAuBAAAPgcAAD8IAAD+BwAAjgYAAMkIAADeCAAA5gcAALIGAABVBQAAqAcAACAAQcgTCxEBAAAAAQAAAAEAAAABAAAAAQBB7BMLCQEAAAABAAAAAgBBmBQLAQEAQbgUCwEBAEHSFAukLDomOyZlJmYmYyZgJiIg2CXLJdklQiZAJmomayY8JrolxCWVITwgtgCnAKwlqCGRIZMhkiGQIR8ilCGyJbwlIAAhACIAIwAkACUAJgAnACgAKQAqACsALAAtAC4ALwAwADEAMgAzADQANQA2ADcAOAA5ADoAOwA8AD0APgA/AEAAQQBCAEMARABFAEYARwBIAEkASgBLAEwATQBOAE8AUABRAFIAUwBUAFUAVgBXAFgAWQBaAFsAXABdAF4AXwBgAGEAYgBjAGQAZQBmAGcAaABpAGoAawBsAG0AbgBvAHAAcQByAHMAdAB1AHYAdwB4AHkAegB7AHwAfQB+AAIjxwD8AOkA4gDkAOAA5QDnAOoA6wDoAO8A7gDsAMQAxQDJAOYAxgD0APYA8gD7APkA/wDWANwAogCjAKUApyCSAeEA7QDzAPoA8QDRAKoAugC/ABAjrAC9ALwAoQCrALsAkSWSJZMlAiUkJWElYiVWJVUlYyVRJVclXSVcJVslECUUJTQlLCUcJQAlPCVeJV8lWiVUJWklZiVgJVAlbCVnJWglZCVlJVklWCVSJVMlayVqJRglDCWIJYQljCWQJYAlsQPfAJMDwAOjA8MDtQDEA6YDmAOpA7QDHiLGA7UDKSJhIrEAZSJkIiAjISP3AEgisAAZIrcAGiJ/ILIAoCWgAAAAAACWMAd3LGEO7rpRCZkZxG0Hj/RqcDWlY+mjlWSeMojbDqS43Hke6dXgiNnSlytMtgm9fLF+By2455Edv5BkELcd8iCwakhxufPeQb6EfdTaGuvk3W1RtdT0x4XTg1aYbBPAqGtkevli/ezJZYpPXAEU2WwGY2M9D/r1DQiNyCBuO14QaUzkQWDVcnFnotHkAzxH1ARL/YUN0mu1CqX6qLU1bJiyQtbJu9tA+bys42zYMnVc30XPDdbcWT3Rq6ww2SY6AN5RgFHXyBZh0L+19LQhI8SzVpmVus8Ppb24nrgCKAiIBV+y2QzGJOkLsYd8by8RTGhYqx1hwT0tZraQQdx2BnHbAbwg0pgqENXviYWxcR+1tgal5L+fM9S46KLJB3g0+QAPjqgJlhiYDuG7DWp/LT1tCJdsZJEBXGPm9FFra2JhbBzYMGWFTgBi8u2VBmx7pQEbwfQIglfED/XG2bBlUOm3Euq4vot8iLn83x3dYkkt2hXzfNOMZUzU+1hhsk3OUbU6dAC8o+Iwu9RBpd9K15XYPW3E0aT79NbTaulpQ/zZbjRGiGet0Lhg2nMtBETlHQMzX0wKqsl8Dd08cQVQqkECJxAQC76GIAzJJbVoV7OFbyAJ1Ga5n+Rhzg753l6YydkpIpjQsLSo18cXPbNZgQ20LjtcvbetbLrAIIO47bazv5oM4rYDmtKxdDlH1eqvd9KdFSbbBIMW3HMSC2PjhDtklD5qbQ2oWmp6C88O5J3/CZMnrgAKsZ4HfUSTD/DSowiHaPIBHv7CBmldV2L3y2dlgHE2bBnnBmtudhvU/uAr04laetoQzErdZ2/fufn5776OQ763F9WOsGDoo9bWfpPRocTC2DhS8t9P8We70WdXvKbdBrU/SzaySNorDdhMGwqv9koDNmB6BEHD72DfVd9nqO+ObjF5vmlGjLNhyxqDZryg0m8lNuJoUpV3DMwDRwu7uRYCIi8mBVW+O7rFKAu9spJatCsEarNcp//XwjHP0LWLntksHa7eW7DCZJsm8mPsnKNqdQqTbQKpBgmcPzYO64VnB3ITVwAFgkq/lRR6uOKuK7F7OBu2DJuO0pINvtXlt+/cfCHf2wvU0tOGQuLU8fiz3Whug9ofzRa+gVsmufbhd7Bvd0e3GOZaCIhwag//yjsGZlwLARH/nmWPaa5i+NP/a2FFz2wWeOIKoO7SDddUgwROwrMDOWEmZ6f3FmDQTUdpSdt3bj5KatGu3FrW2WYL30DwO9g3U668qcWeu95/z7JH6f+1MBzyvb2KwrrKMJOzU6ajtCQFNtC6kwbXzSlX3lS/Z9kjLnpms7hKYcQCG2hdlCtvKje+C7ShjgzDG98FWo3vAi0AAAAARjtnZYx2zsrKTamvWevtTh/QiivVnSOEk6ZE4bLW25307bz4PqAVV3ibcjLrPTbTrQZRtmdL+BkhcJ98JavG4GOQoYWp3Qgq7+ZvT3xAK646e0zL8DblZLYNggGXfR190UZ6GBsL07ddMLTSzpbwM4itl1ZC4D75BNtZnAtQ/BpNa5t/hyYy0MEdVbVSuxFUFIB2Md7N356Y9rj7uYYnh/+9QOI18OlNc8uOKOBtysmmVq2sbBsEAyogY2Yu+zr6aMBdn6KN9DDktpNVdxDXtDErsNH7Zhl+vV1+G5wt4WfaFoYCEFsvrVZgSMjFxgwpg/1rTEmwwuMPi6WGFqD4NVCbn1Ca1jb/3O1Rmk9LFXsJcHIewz3bsYUGvNSkdiOo4k1EzSgA7WJuO4oH/Z3O5rumqYNx6wAsN9BnSTMLPtV1MFmwv33wH/lGl3pq4NObLNu0/uaWHVGgrXo0gd3lSMfmgi0NqyuCS5BM59g2CAaeDW9jVEDGzBJ7oakd8AQvW8tjSpGGyuXXva2ARBvpYQIgjgTIbSerjlZAzq8m37LpHbjXI1AReGVrdh32zTL8sPZVmXq7/DY8gJtTOFvCz35gpaq0LQwF8hZrYGGwL4Eni0jk7cbhS6v9hi6KjRlSzLZ+Nwb715hAwLD902b0HJVdk3lfEDrWGStdsyxA8Wtqe5YOoDY/oeYNWMR1qxwlM5B7QPnd0u+/5rWKnpYq9titTZMS4OQ8VNuDWcd9x7iBRqDdSwsJcg0wbhcJ6zeLT9BQ7oWd+UHDpp4kUADaxRY7vaDcdhQPmk1zars97Bb9BotzN0si3HFwRbni1gFYpO1mPW6gz5Iom6j3JxANcWErahSrZsO77V2k3n774D84wIda8o0u9bS2SZCVxtbs0/2xiRmwGCZfi39DzC07oooWXMdAW/VoBmCSDQK7y5FEgKz0js0FW8j2Yj5bUCbfHWtButcm6BWRHY9wsG0QDPZWd2k8G97GeiC5o+mG/UKvvZonZfAziCPLVO064AlefNtuO7aWx5TwraDxYwvkECUwg3XvfSraqUZNv4g20sPODbWmBEAcCUJ7e2zR3T+Nl+ZY6F2r8UcbkJYiH0vPvllwqNuTPQF01QZmEUagIvAAm0WVytbsOozti1+tnRQj66ZzRiHr2uln0L2M9Hb5bbJNngh4ADenPjtQwjGw9UR3i5IhvcY7jvv9XOtoWxgKLmB/b+Qt1sCiFrGlg2Yu2cVdSbwPEOATSSuHdtqNw5ectqTyVvsNXRDAajgUGzOkUiBUwZht/W7eVpoLTfDe6gvLuY/BhhAgh713RabN6Dng9o9cKrsm82yAQZb/JgV3uR1iEnNQy701a6zYAAAAAFiA4tfxBrR0qYZWo+INaOm6jYo+EwvcnUuLPkqFHaEJ3Z1D3nQbFX0sm/eqZxDJ4D+QKzeWFn2UzpafQwo7QhNSu6DE+z32Z6O9FLDoNir6sLbILRkwno5BsHxZjybjGtemAc1+IFduJqC1uW0ri/M1q2kknC0/h8St3VAUdoQmTPZm8eVwMFK98NKF9nvsz677DhgHfVi7X/26bJFrJS/J68f4YG2RWzjtc4xzZk3GK+avEYJg+bLa4BtlHk3GNUbNJOLvS3JBt8uQlvxArtykwEwLDUYaqFXG+H+bUGc8w9CF62pW00gy1jGfeV0P1SHd7QKIW7uh0NtZdijsCE1wbOqa2eq8OYFqXu7K4WCkkmGCczvn1NBjZzYHrfGpRPVxS5Nc9x0wBHf/50/8wa0XfCN6vvp12eZ6lw4i10peeleoidPR/iqLURz9wNoit5hawGAx3JbDaVx0FKfK61f/SgmAVsxfIw5MvfRFx4O+HUdhabTBN8rsQdUdPJqMa2QabrzNnDgflRzayN6X5IKGFwZVL5FQ9ncRsiG5hy1i4QfPtUiBmRYQAXvBW4pFiwMKp1yqjPH/8gwTKDahznhuISyvx6d6DJ8nmNvUrKaRjCxERiWqEuV9KvAys7xvces8jaZCutsFGjo50lGxB5gJMeVPoLez7Pg3UTtQ2BGaCFjzTaHepe75Xkc5stV5c+pVm6RD080HG1Mv0NXFsJONRVJEJMME53xD5jA3yNh6b0g6rcbObA6eTo7ZWuNTiQJjsV6r5ef982UFKrjuO2Dgbtm3SeiPFBFobcPf/vKAh34QVy74RvR2eKQjPfOaaWVzeL7M9S4dlHXMykSulbwcLndrtaghyO0owx+mo/1V/iMfglelSSEPJav2wbM0tZkz1mIwtYDBaDViFiO+XFx7Pr6L0rjoKIo4Cv9OldevFhU1eL+TY9vnE4EMrJi/RvQYXZFdngsyBR7p5cuIdqaTCJRxOo7C0mIOIAUphR5PcQX8mNiDqjuAA0jseDQZ1yC0+wCJMq2j0bJPdJo5cT7CuZPpaz/FSjO/J539KbjepalaCQwvDKpUr+59HyTQN0ekMuDuImRDtqKGlHIPW8Qqj7kTgwnvsNuJDWeQAjMtyILR+mEEh1k5hGWO9xL6za+SGBoGFE65XpSsbhUfkiRNn3Dz5BkmULyZxIdsQp3xNMJ/Jp1EKYXFxMtSjk/1GNbPF89/SUFsJ8mju+lfPPix394vGFmIjEDZalsLUlQRU9K2xvpU4GWi1AKyZnnf4j75PTWXf2uWz/+JQYR0twvc9FXcdXIDfy3y4ajjZH7ru+ScPBJiyp9K4ihIAWkWAlnp9NXwb6J2qO9AoQAAAADhtlLvg2vUBWLdhuoG16gL52H65IW8fA5kCi7hDK5RF+0YA/iPxYUSbnPX/Qp5+Rzrz6vziRItGWikf/YYXKMu+erxwZs3dyt6gSXEHosLJf89Wcqd4N8gfFaNzxTy8jn1RKDWl5kmPHYvdNMSJVoy85MI3ZFOjjdw+NzYMLhGXdEOFLKz05JYUmXAtzZv7lbX2by5tQQ6U1SyaLw8FhdK3aBFpb99w09ey5GgOsG/Qdt37a65qmtEWBw5qyjk5XPJUrecq48xdko5Y5kuM014z4Ufl61YmX1M7suSJEq0ZMX85ounIWBhRpcyjiKdHG/DK06AofbIakBAmoVgcI26gcbfVeMbWb8CrQtQZqclsYcRd17lzPG0BHqjW2ze3K2NaI5C77UIqA4DWkdqCXSmi78mSelioKMI1PJMeCwulJmafHv7R/qRGvGofn77hp+fTdRw/ZBSmhwmAHV0gn+DlTQtbPfpq4YWX/lpclXXiJPjhWfxPgONEIhRYlDIy+exfpkI06Mf4jIVTQ1WH2Pst6kxA9V0t+k0wuUGXGaa8L3QyB/fDU71PrscGlqxMvu7B2AU2drm/jhstBFIlGjJqSI6Jsv/vMwqSe4jTkPAwq/1ki3NKBTHLJ5GKEQ6Od6ljGsxx1Ht2ybnvzRC7ZHVo1vDOsGGRdAgMBc/geZrrmBQOUECjb+r4zvtRIcxw6Vmh5FKBFoXoOXsRU+NSDq5bP5oVg4j7rzvlbxTi5+SsmopwF0I9Ea36UIUWJm6yIB4DJpvGtEchftnTmqfbWCLftsyZBwGtI79sOZhlRSZl3Siy3gWf02S98kffZPDMZxydWNzEKjlmfEet3axXi3zUOh/HDI1+fbTg6sZt4mF+FY/1xc04lH91VQDEr3wfORcRi4LPpuo4d8t+g67J9TvWpGGADhMAOrZ+lIFqQKO3Ui03DIqaVrYy98IN6/VJtZOY3Q5LL7y080IoDylrN/KRBqNJSbHC8/HcVkgo3t3wULNJS4gEKPEwabxK+GW5hQAILT7Yv0yEYNLYP7nQU4fBvcc8GQqmhqFnMj17Ti3AwyO5exuU2MGj+Ux6evvHwgKWU3naITLDYkymeL5ykU6GHwX1XqhkT+bF8PQ/x3tMR6rv958djk0ncBr2/VkFC0U0kbCdg/AKJe5ksfzs7wmEgXuyXDYaCORbjrM0S6gSTCY8qZSRXRMs/Mmo9f5CEI2T1qtVJLcR7UkjqjdgPFePDajsV7rJVu/XXe021dZVTrhC7pYPI1QuYrfv8lyA2coxFGIShnXYquvhY3PpatsLhP5g0zOf2mteC2GxdxScCRqAJ9Gt4Z1pwHUmsML+nsivaiUQGAufqHWfJEAAAAAQ8umh8eQPNSEW5pTzycIc4zsrvQItzSnS3ySIJ5PEObdhLZhWd8sMhoUirVRaBiVEqO+Epb4JEHVM4LGfZlRFz5S95C6CW3D+cLLRLK+WWTxdf/jdS5lsDblwzfj1kHxoB3ndiRGfSVnjduiLPFJgm867wXrYXVWqKrT0foyoy65+QWpPaKf+n5pOX01Fatddt4N2vKFl4mxTjEOZH2zyCe2FU+j7Y8c4CYpm6tau7vokR08bMqHby8BIeiHq/I5xGBUvkA7zu0D8GhqSIz6SgtHXM2PHMaezNdgGRnk4t9aL0RY3nTeC52/eIzWw+qslQhMKxFT1nhSmHD/9GVGXbeu4Noz9XqJcD7cDjtCTi54ieip/NJy+r8Z1H1qKla7KeHwPK26am/ucczopQ1eyObG+E9inWIcIVbEm4n8F0rKN7HNTmwrng2njRlG2x85BRC5voFLI+3CgIVqF7MHrFR4oSvQIzt4k+id/9iUD9+bX6lYHwQzC1zPlYwOV+VzTZxD9MnH2aeKDH8gwXDtAIK7S4cG4NHURSt3U5AY9ZXT01MSV4jJQRRDb8ZfP/3mHPRbYZivwTLbZGe1c860ZDAFEuO0Xoiw95UuN7zpvBf/IhqQe3mAwziyJkTtgaSCrkoCBSoRmFZp2j7RIqas8WFtCnblNpAlpv02oujLjLqrACo9L1uwbmyQFukn7ITJZCciTuB8uB2jtx6adoScXDVPOtuxFKCI8t8GD7mjlC/6aDKofjOo+z34DnyVUt2t1pl7KlLC4XkRCUf+WnXV3hm+c1md5ekK3i5PjQsdzUtI1mvMzI3xn49GVxjEOsU4h/FjvwOq+exAYV9rEvkvlFEyiRPVaRNAlqK1x93eJ+eeFYFgGk4bM1mFvbSMtj9yz32Z9UsmA6YI7aUhQ5E3AQBakYaEAQvVx8qtUm9gfoMsq9gEqPBCV+s75NCgR3bw44zQd2fXSiQkHOyj8S9uZbLkyOI2v1KxdXT0Nj4IZhZ9w8CR+ZhawrpT/EUcrsrnX2VsYNs+9jOY9VC004nClJBCZBMUGf5AV9JYx4Lh2gHBKnyGRXHm1Qa6QFJNxtJyDg109YpW7qbJnUghYTeb8CL8PXemp6ck5WwBo64Qk4Pt2zUEaYCvVypLCdD/eIsWvLMtkTjot8J7IxFFMF+DZXOUJeL3z7+xtAQZNuacacmlV89OIQxVHWLH85opu2G6anDHPe4rXW6t4PvpeNN5LzsY36i/Q0X7/IjjfLf0cVz0P9fbcGRNiDOv6w+bBTje2M6eWVyVBAofXqKNVCIwrRfpliqTsgx50Hmq/gVKKDhGgY6/wtoU7IERsmvKbSBLiaaGzA39HJ9ONroYFAQAAJ0HAAAsCQAAhgUAAEgFAACnBQAAAAQAADIFAAC8BQAALAkAQYDBAAv3CQwACACMAAgATAAIAMwACAAsAAgArAAIAGwACADsAAgAHAAIAJwACABcAAgA3AAIADwACAC8AAgAfAAIAPwACAACAAgAggAIAEIACADCAAgAIgAIAKIACABiAAgA4gAIABIACACSAAgAUgAIANIACAAyAAgAsgAIAHIACADyAAgACgAIAIoACABKAAgAygAIACoACACqAAgAagAIAOoACAAaAAgAmgAIAFoACADaAAgAOgAIALoACAB6AAgA+gAIAAYACACGAAgARgAIAMYACAAmAAgApgAIAGYACADmAAgAFgAIAJYACABWAAgA1gAIADYACAC2AAgAdgAIAPYACAAOAAgAjgAIAE4ACADOAAgALgAIAK4ACABuAAgA7gAIAB4ACACeAAgAXgAIAN4ACAA+AAgAvgAIAH4ACAD+AAgAAQAIAIEACABBAAgAwQAIACEACAChAAgAYQAIAOEACAARAAgAkQAIAFEACADRAAgAMQAIALEACABxAAgA8QAIAAkACACJAAgASQAIAMkACAApAAgAqQAIAGkACADpAAgAGQAIAJkACABZAAgA2QAIADkACAC5AAgAeQAIAPkACAAFAAgAhQAIAEUACADFAAgAJQAIAKUACABlAAgA5QAIABUACACVAAgAVQAIANUACAA1AAgAtQAIAHUACAD1AAgADQAIAI0ACABNAAgAzQAIAC0ACACtAAgAbQAIAO0ACAAdAAgAnQAIAF0ACADdAAgAPQAIAL0ACAB9AAgA/QAIABMACQATAQkAkwAJAJMBCQBTAAkAUwEJANMACQDTAQkAMwAJADMBCQCzAAkAswEJAHMACQBzAQkA8wAJAPMBCQALAAkACwEJAIsACQCLAQkASwAJAEsBCQDLAAkAywEJACsACQArAQkAqwAJAKsBCQBrAAkAawEJAOsACQDrAQkAGwAJABsBCQCbAAkAmwEJAFsACQBbAQkA2wAJANsBCQA7AAkAOwEJALsACQC7AQkAewAJAHsBCQD7AAkA+wEJAAcACQAHAQkAhwAJAIcBCQBHAAkARwEJAMcACQDHAQkAJwAJACcBCQCnAAkApwEJAGcACQBnAQkA5wAJAOcBCQAXAAkAFwEJAJcACQCXAQkAVwAJAFcBCQDXAAkA1wEJADcACQA3AQkAtwAJALcBCQB3AAkAdwEJAPcACQD3AQkADwAJAA8BCQCPAAkAjwEJAE8ACQBPAQkAzwAJAM8BCQAvAAkALwEJAK8ACQCvAQkAbwAJAG8BCQDvAAkA7wEJAB8ACQAfAQkAnwAJAJ8BCQBfAAkAXwEJAN8ACQDfAQkAPwAJAD8BCQC/AAkA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SXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AQcCAAQuFARMAAAAUAAAAFQAAABYAAAAXAAAAGAAAABkAAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACIAAAAjAAAAgERQADEAAAAyAAAAMwAAADQAAAA1AAAANgAAADcAAAA4AAAAOQAAADIAAAAzAAAANAAAADUAAAA2AAAANwAAADgAQfSCAQsCXEQAQbCDAQsQ/////////////////////w==";Vs(Uo)||(Uo=k(Uo));function ai(fs){try{if(fs==Uo&&pe)return new Uint8Array(pe);var go=lf(fs);if(go)return go;if(O)return O(fs);throw"sync fetching of the wasm failed: you can preload it to Module['wasmBinary'] manually, or emcc.py will do that for you when generating HTML (but not JS)"}catch(Ro){Ji(Ro)}}function da(fs,go){var Ro,ql,Nr;try{Nr=ai(fs),ql=new WebAssembly.Module(Nr),Ro=new WebAssembly.Instance(ql,go)}catch(Di){var Nn=Di.toString();throw ae("failed to compile wasm module: "+Nn),(Nn.includes("imported Memory")||Nn.includes("memory import"))&&ae("Memory size incompatibility issues may be due to changing INITIAL_MEMORY at runtime to something too large. Use ALLOW_MEMORY_GROWTH to allow any size memory (and also make sure not to set INITIAL_MEMORY at runtime to something smaller than it was at compile time)."),Di}return[Ro,ql]}function og(){var fs={a:Nd};function go(Nr,Nn){var Di=Nr.exports;r.asm=Di,Te=r.asm.g,Fa(Te.buffer),Qs=r.asm.W,Vd(r.asm.h),Vn("wasm-instantiate")}if(Cn("wasm-instantiate"),r.instantiateWasm)try{var Ro=r.instantiateWasm(fs,go);return Ro}catch(Nr){return ae("Module.instantiateWasm callback failed with error: "+Nr),!1}var ql=da(Uo,fs);return go(ql[0]),r.asm}function Zu(fs){return Zi.getFloat32(fs,!0)}function mg(fs){return Zi.getFloat64(fs,!0)}function Lu(fs){return Zi.getInt16(fs,!0)}function ml(fs){return Zi.getInt32(fs,!0)}function wi(fs,go){Zi.setInt32(fs,go,!0)}function ts(fs){for(;fs.length>0;){var go=fs.shift();if(typeof go=="function"){go(r);continue}var Ro=go.func;typeof Ro=="number"?go.arg===void 0?Qs.get(Ro)():Qs.get(Ro)(go.arg):Ro(go.arg===void 0?null:go.arg)}}function $i(fs,go){var Ro=new Date(ml((fs>>2)*4)*1e3);wi((go>>2)*4,Ro.getUTCSeconds()),wi((go+4>>2)*4,Ro.getUTCMinutes()),wi((go+8>>2)*4,Ro.getUTCHours()),wi((go+12>>2)*4,Ro.getUTCDate()),wi((go+16>>2)*4,Ro.getUTCMonth()),wi((go+20>>2)*4,Ro.getUTCFullYear()-1900),wi((go+24>>2)*4,Ro.getUTCDay()),wi((go+36>>2)*4,0),wi((go+32>>2)*4,0);var ql=Date.UTC(Ro.getUTCFullYear(),0,1,0,0,0,0),Nr=(Ro.getTime()-ql)/(1e3*60*60*24)|0;return wi((go+28>>2)*4,Nr),$i.GMTString||($i.GMTString=dr("GMT")),wi((go+40>>2)*4,$i.GMTString),go}function ka(fs,go){return $i(fs,go)}function qs(fs,go,Ro){Or.copyWithin(fs,go,go+Ro)}function kl(fs){try{return Te.grow(fs-Fr.byteLength+65535>>>16),Fa(Te.buffer),1}catch{}}function zo(fs){var go=Or.length;fs=fs>>>0;var Ro=2147483648;if(fs>Ro)return!1;for(var ql=1;ql<=4;ql*=2){var Nr=go*(1+.2/ql);Nr=Math.min(Nr,fs+100663296);var Nn=Math.min(Ro,or(Math.max(fs,Nr),65536)),Di=kl(Nn);if(Di)return!0}return!1}function Ta(fs){fe(fs)}function Tu(fs){var go=Date.now()/1e3|0;return fs&&wi((fs>>2)*4,go),go}function xg(){if(xg.called)return;xg.called=!0;var fs=new Date().getFullYear(),go=new Date(fs,0,1),Ro=new Date(fs,6,1),ql=go.getTimezoneOffset(),Nr=Ro.getTimezoneOffset(),Nn=Math.max(ql,Nr);wi((op()>>2)*4,Nn*60),wi((Qg()>>2)*4,+(ql!=Nr));function Di(DA){var Rd=DA.toTimeString().match(/\(([A-Za-z ]+)\)$/);return Rd?Rd[1]:"GMT"}var ra=Di(go),Us=Di(Ro),Li=dr(ra),Ll=dr(Us);Nr>2)*4,Li),wi((yl()+4>>2)*4,Ll)):(wi((yl()>>2)*4,Ll),wi((yl()+4>>2)*4,Li))}function _l(fs){xg();var go=Date.UTC(ml((fs+20>>2)*4)+1900,ml((fs+16>>2)*4),ml((fs+12>>2)*4),ml((fs+8>>2)*4),ml((fs+4>>2)*4),ml((fs>>2)*4),0),Ro=new Date(go);wi((fs+24>>2)*4,Ro.getUTCDay());var ql=Date.UTC(Ro.getUTCFullYear(),0,1,0,0,0,0),Nr=(Ro.getTime()-ql)/(1e3*60*60*24)|0;return wi((fs+28>>2)*4,Nr),Ro.getTime()/1e3|0}var cu=typeof atob=="function"?atob:function(fs){var go="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",Ro="",ql,Nr,Nn,Di,ra,Us,Li,Ll=0;fs=fs.replace(/[^A-Za-z0-9\+\/\=]/g,"");do Di=go.indexOf(fs.charAt(Ll++)),ra=go.indexOf(fs.charAt(Ll++)),Us=go.indexOf(fs.charAt(Ll++)),Li=go.indexOf(fs.charAt(Ll++)),ql=Di<<2|ra>>4,Nr=(ra&15)<<4|Us>>2,Nn=(Us&3)<<6|Li,Ro=Ro+String.fromCharCode(ql),Us!==64&&(Ro=Ro+String.fromCharCode(Nr)),Li!==64&&(Ro=Ro+String.fromCharCode(Nn));while(Ll0||(Yu(),Gr>0))return;function go(){Pp||(Pp=!0,r.calledRun=!0,!ke&&(YA(),s(r),r.onRuntimeInitialized&&r.onRuntimeInitialized(),gd()))}r.setStatus?(r.setStatus("Running..."),setTimeout(function(){setTimeout(function(){r.setStatus("")},1),go()},1)):go()}if(r.run=gC,r.preInit)for(typeof r.preInit=="function"&&(r.preInit=[r.preInit]);r.preInit.length>0;)r.preInit.pop()();return gC(),t}}();typeof Hit=="object"&&typeof x4t=="object"?x4t.exports=D4t:typeof define=="function"&&define.amd?define([],function(){return D4t}):typeof Hit=="object"&&(Hit.createModule=D4t)});var CAn=z(zbe=>{"use strict";Object.defineProperty(zbe,"__esModule",{value:!0});zbe.makeInterface=zbe.Errors=void 0;var pj=["number","number"],k4t;(function(e){e[e.ZIP_ER_OK=0]="ZIP_ER_OK",e[e.ZIP_ER_MULTIDISK=1]="ZIP_ER_MULTIDISK",e[e.ZIP_ER_RENAME=2]="ZIP_ER_RENAME",e[e.ZIP_ER_CLOSE=3]="ZIP_ER_CLOSE",e[e.ZIP_ER_SEEK=4]="ZIP_ER_SEEK",e[e.ZIP_ER_READ=5]="ZIP_ER_READ",e[e.ZIP_ER_WRITE=6]="ZIP_ER_WRITE",e[e.ZIP_ER_CRC=7]="ZIP_ER_CRC",e[e.ZIP_ER_ZIPCLOSED=8]="ZIP_ER_ZIPCLOSED",e[e.ZIP_ER_NOENT=9]="ZIP_ER_NOENT",e[e.ZIP_ER_EXISTS=10]="ZIP_ER_EXISTS",e[e.ZIP_ER_OPEN=11]="ZIP_ER_OPEN",e[e.ZIP_ER_TMPOPEN=12]="ZIP_ER_TMPOPEN",e[e.ZIP_ER_ZLIB=13]="ZIP_ER_ZLIB",e[e.ZIP_ER_MEMORY=14]="ZIP_ER_MEMORY",e[e.ZIP_ER_CHANGED=15]="ZIP_ER_CHANGED",e[e.ZIP_ER_COMPNOTSUPP=16]="ZIP_ER_COMPNOTSUPP",e[e.ZIP_ER_EOF=17]="ZIP_ER_EOF",e[e.ZIP_ER_INVAL=18]="ZIP_ER_INVAL",e[e.ZIP_ER_NOZIP=19]="ZIP_ER_NOZIP",e[e.ZIP_ER_INTERNAL=20]="ZIP_ER_INTERNAL",e[e.ZIP_ER_INCONS=21]="ZIP_ER_INCONS",e[e.ZIP_ER_REMOVE=22]="ZIP_ER_REMOVE",e[e.ZIP_ER_DELETED=23]="ZIP_ER_DELETED",e[e.ZIP_ER_ENCRNOTSUPP=24]="ZIP_ER_ENCRNOTSUPP",e[e.ZIP_ER_RDONLY=25]="ZIP_ER_RDONLY",e[e.ZIP_ER_NOPASSWD=26]="ZIP_ER_NOPASSWD",e[e.ZIP_ER_WRONGPASSWD=27]="ZIP_ER_WRONGPASSWD",e[e.ZIP_ER_OPNOTSUPP=28]="ZIP_ER_OPNOTSUPP",e[e.ZIP_ER_INUSE=29]="ZIP_ER_INUSE",e[e.ZIP_ER_TELL=30]="ZIP_ER_TELL",e[e.ZIP_ER_COMPRESSED_DATA=31]="ZIP_ER_COMPRESSED_DATA"})(k4t||(zbe.Errors=k4t={}));var mYs=e=>({get HEAPU8(){return e.HEAPU8},errors:k4t,SEEK_SET:0,SEEK_CUR:1,SEEK_END:2,ZIP_CHECKCONS:4,ZIP_EXCL:2,ZIP_RDONLY:16,ZIP_FL_OVERWRITE:8192,ZIP_FL_COMPRESSED:4,ZIP_OPSYS_DOS:0,ZIP_OPSYS_AMIGA:1,ZIP_OPSYS_OPENVMS:2,ZIP_OPSYS_UNIX:3,ZIP_OPSYS_VM_CMS:4,ZIP_OPSYS_ATARI_ST:5,ZIP_OPSYS_OS_2:6,ZIP_OPSYS_MACINTOSH:7,ZIP_OPSYS_Z_SYSTEM:8,ZIP_OPSYS_CPM:9,ZIP_OPSYS_WINDOWS_NTFS:10,ZIP_OPSYS_MVS:11,ZIP_OPSYS_VSE:12,ZIP_OPSYS_ACORN_RISC:13,ZIP_OPSYS_VFAT:14,ZIP_OPSYS_ALTERNATE_MVS:15,ZIP_OPSYS_BEOS:16,ZIP_OPSYS_TANDEM:17,ZIP_OPSYS_OS_400:18,ZIP_OPSYS_OS_X:19,ZIP_CM_DEFAULT:-1,ZIP_CM_STORE:0,ZIP_CM_DEFLATE:8,uint08S:e._malloc(1),uint32S:e._malloc(4),malloc:e._malloc,free:e._free,getValue:e.getValue,openFromSource:e.cwrap("zip_open_from_source","number",["number","number","number"]),close:e.cwrap("zip_close","number",["number"]),discard:e.cwrap("zip_discard",null,["number"]),getError:e.cwrap("zip_get_error","number",["number"]),getName:e.cwrap("zip_get_name","string",["number","number","number"]),getNumEntries:e.cwrap("zip_get_num_entries","number",["number","number"]),delete:e.cwrap("zip_delete","number",["number","number"]),statIndex:e.cwrap("zip_stat_index","number",["number",...pj,"number","number"]),fopenIndex:e.cwrap("zip_fopen_index","number",["number",...pj,"number"]),fread:e.cwrap("zip_fread","number",["number","number","number","number"]),fclose:e.cwrap("zip_fclose","number",["number"]),dir:{add:e.cwrap("zip_dir_add","number",["number","string"])},file:{add:e.cwrap("zip_file_add","number",["number","string","number","number"]),getError:e.cwrap("zip_file_get_error","number",["number"]),getExternalAttributes:e.cwrap("zip_file_get_external_attributes","number",["number",...pj,"number","number","number"]),setExternalAttributes:e.cwrap("zip_file_set_external_attributes","number",["number",...pj,"number","number","number"]),setMtime:e.cwrap("zip_file_set_mtime","number",["number",...pj,"number","number"]),setCompression:e.cwrap("zip_set_file_compression","number",["number",...pj,"number","number"])},ext:{countSymlinks:e.cwrap("zip_ext_count_symlinks","number",["number"])},error:{initWithCode:e.cwrap("zip_error_init_with_code",null,["number","number"]),strerror:e.cwrap("zip_error_strerror","string",["number"])},name:{locate:e.cwrap("zip_name_locate","number",["number","string","number"])},source:{fromUnattachedBuffer:e.cwrap("zip_source_buffer_create","number",["number",...pj,"number","number"]),fromBuffer:e.cwrap("zip_source_buffer","number",["number","number",...pj,"number"]),free:e.cwrap("zip_source_free",null,["number"]),keep:e.cwrap("zip_source_keep",null,["number"]),open:e.cwrap("zip_source_open","number",["number"]),close:e.cwrap("zip_source_close","number",["number"]),seek:e.cwrap("zip_source_seek","number",["number",...pj,"number"]),tell:e.cwrap("zip_source_tell","number",["number"]),read:e.cwrap("zip_source_read","number",["number","number","number"]),error:e.cwrap("zip_source_error","number",["number"])},struct:{statS:e.cwrap("zipstruct_statS","number",[]),statSize:e.cwrap("zipstruct_stat_size","number",["number"]),statCompSize:e.cwrap("zipstruct_stat_comp_size","number",["number"]),statCompMethod:e.cwrap("zipstruct_stat_comp_method","number",["number"]),statMtime:e.cwrap("zipstruct_stat_mtime","number",["number"]),statCrc:e.cwrap("zipstruct_stat_crc","number",["number"]),errorS:e.cwrap("zipstruct_errorS","number",[]),errorCodeZip:e.cwrap("zipstruct_error_code_zip","number",["number"])}});zbe.makeInterface=mYs});var hAn=z(uVe=>{"use strict";Object.defineProperty(uVe,"__esModule",{value:!0});uVe.ZipOpenFS=void 0;uVe.getArchivePart=F4t;var hYs=No(),G4t=No(),mAn=NJ();function F4t(e,t){let r=e.indexOf(t);if(r<=0)return null;let s=r;for(;r>=0&&(s=r+t.length,e[s]!==G4t.ppath.sep);){if(e[r-1]===G4t.ppath.sep)return null;r=e.indexOf(t,s)}return e.length>s&&e[s]!==G4t.ppath.sep?null:e.slice(0,s)}var Z4t=class e extends hYs.MountFS{static async openPromise(t,r){let s=new e(r);try{return await t(s)}finally{s.saveAndClose()}}constructor(t={}){let r=t.fileExtensions,s=t.readOnlyArchives,a=typeof r>"u"?p=>F4t(p,".zip"):p=>{for(let f of r){let m=F4t(p,f);if(m)return m}return null},o=(p,f)=>new mAn.ZipFS(f,{baseFs:p,readOnly:s,stats:p.statSync(f)}),g=async(p,f)=>{let m={baseFs:p,readOnly:s,stats:await p.statPromise(f)};return()=>new mAn.ZipFS(f,m)};super({...t,factorySync:o,factoryPromise:g,getMountPoint:a})}};uVe.ZipOpenFS=Z4t});var W4t=z(RJ=>{"use strict";Object.defineProperty(RJ,"__esModule",{value:!0});RJ.ZipFS=RJ.LibzipError=RJ.DEFAULT_COMPRESSION_LEVEL=void 0;RJ.makeEmptyArchive=Yit;var _Ys=(Oa(),Ai(Pa)),yYs=No(),bYs=No(),EYs=No(),L4t=No(),qg=No(),BC=No(),xL=xt("fs"),_An=xt("stream"),BYs=xt("util"),yAn=_Ys.__importDefault(xt("zlib")),vYs=R4t();RJ.DEFAULT_COMPRESSION_LEVEL="mixed";function SYs(e){if(typeof e=="string"&&String(+e)===e)return+e;if(typeof e=="number"&&Number.isFinite(e))return e<0?Date.now()/1e3:e;if(BYs.types.isDate(e))return e.getTime()/1e3;throw new Error("Invalid time")}function Yit(){return Buffer.from([80,75,5,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0])}var Xit=class extends Error{constructor(t,r){super(t),this.name="Libzip Error",this.code=r}};RJ.LibzipError=Xit;var V4t=class extends yYs.BasePortableFakeFS{constructor(t,r={}){super(),this.listings=new Map,this.entries=new Map,this.fileSources=new Map,this.fds=new Map,this.nextFd=0,this.ready=!1,this.readOnly=!1;let s=r;if(this.level=typeof s.level<"u"?s.level:RJ.DEFAULT_COMPRESSION_LEVEL,t??=Yit(),typeof t=="string"){let{baseFs:g=new bYs.NodeFS}=s;this.baseFs=g,this.path=t}else this.path=null,this.baseFs=null;if(r.stats)this.stats=r.stats;else if(typeof t=="string")try{this.stats=this.baseFs.statSync(t)}catch(g){if(g.code==="ENOENT"&&s.create)this.stats=qg.statUtils.makeDefaultStats();else throw g}else this.stats=qg.statUtils.makeDefaultStats();this.libzip=(0,vYs.getInstance)();let a=this.libzip.malloc(4);try{let g=0;r.readOnly&&(g|=this.libzip.ZIP_RDONLY,this.readOnly=!0),typeof t=="string"&&(t=s.create?Yit():this.baseFs.readFileSync(t));let p=this.allocateUnattachedSource(t);try{this.zip=this.libzip.openFromSource(p,g,a),this.lzSource=p}catch(f){throw this.libzip.source.free(p),f}if(this.zip===0){let f=this.libzip.struct.errorS();throw this.libzip.error.initWithCode(f,this.libzip.getValue(a,"i32")),this.makeLibzipError(f)}}finally{this.libzip.free(a)}this.listings.set(BC.PortablePath.root,new Set);let o=this.libzip.getNumEntries(this.zip,0);for(let g=0;gt)throw new Error("Overread");let a=Buffer.from(this.libzip.HEAPU8.subarray(r,r+t));return process.env.YARN_IS_TEST_ENV&&process.env.YARN_ZIP_DATA_EPILOGUE&&(a=Buffer.concat([a,Buffer.from(process.env.YARN_ZIP_DATA_EPILOGUE)])),a}finally{this.libzip.free(r)}}finally{this.libzip.source.close(this.lzSource),this.libzip.source.free(this.lzSource),this.ready=!1}}discardAndClose(){this.prepareClose(),this.libzip.discard(this.zip),this.ready=!1}saveAndClose(){if(!this.path||!this.baseFs)throw new Error("ZipFS cannot be saved and must be discarded when loaded from a buffer");if(this.readOnly){this.discardAndClose();return}let t=this.baseFs.existsSync(this.path)||this.stats.mode===qg.statUtils.DEFAULT_MODE?void 0:this.stats.mode;this.baseFs.writeFileSync(this.path,this.getBufferAndClose(),{mode:t}),this.ready=!1}resolve(t){return BC.ppath.resolve(BC.PortablePath.root,t)}async openPromise(t,r,s){return this.openSync(t,r,s)}openSync(t,r,s){let a=this.nextFd++;return this.fds.set(a,{cursor:0,p:t}),a}hasOpenFileHandles(){return!!this.fds.size}async opendirPromise(t,r){return this.opendirSync(t,r)}opendirSync(t,r={}){let s=this.resolveFilename(`opendir '${t}'`,t);if(!this.entries.has(s)&&!this.listings.has(s))throw qg.errors.ENOENT(`opendir '${t}'`);let a=this.listings.get(s);if(!a)throw qg.errors.ENOTDIR(`opendir '${t}'`);let o=[...a],g=this.openSync(s,"r"),p=()=>{this.closeSync(g)};return(0,EYs.opendir)(this,s,o,{onClose:p})}async readPromise(t,r,s,a,o){return this.readSync(t,r,s,a,o)}readSync(t,r,s=0,a=r.byteLength,o=-1){let g=this.fds.get(t);if(typeof g>"u")throw qg.errors.EBADF("read");let p=o===-1||o===null?g.cursor:o,f=this.readFileSync(g.p);f.copy(r,s,p,p+a);let m=Math.max(0,Math.min(f.length-p,a));return(o===-1||o===null)&&(g.cursor+=m),m}async writePromise(t,r,s,a,o){return typeof r=="string"?this.writeSync(t,r,o):this.writeSync(t,r,s,a,o)}writeSync(t,r,s,a,o){throw typeof this.fds.get(t)>"u"?qg.errors.EBADF("read"):new Error("Unimplemented")}async closePromise(t){return this.closeSync(t)}closeSync(t){if(typeof this.fds.get(t)>"u")throw qg.errors.EBADF("read");this.fds.delete(t)}createReadStream(t,{encoding:r}={}){if(t===null)throw new Error("Unimplemented");let s=this.openSync(t,"r"),a=Object.assign(new _An.PassThrough({emitClose:!0,autoDestroy:!0,destroy:(g,p)=>{clearImmediate(o),this.closeSync(s),p(g)}}),{close(){a.destroy()},bytesRead:0,path:t,pending:!1}),o=setImmediate(async()=>{try{let g=await this.readFilePromise(t,r);a.bytesRead=g.length,a.end(g)}catch(g){a.destroy(g)}});return a}createWriteStream(t,{encoding:r}={}){if(this.readOnly)throw qg.errors.EROFS(`open '${t}'`);if(t===null)throw new Error("Unimplemented");let s=[],a=this.openSync(t,"w"),o=Object.assign(new _An.PassThrough({autoDestroy:!0,emitClose:!0,destroy:(g,p)=>{try{g?p(g):(this.writeFileSync(t,Buffer.concat(s),r),p(null))}catch(f){p(f)}finally{this.closeSync(a)}}}),{close(){o.destroy()},bytesWritten:0,path:t,pending:!1});return o.on("data",g=>{let p=Buffer.from(g);o.bytesWritten+=p.length,s.push(p)}),o}async realpathPromise(t){return this.realpathSync(t)}realpathSync(t){let r=this.resolveFilename(`lstat '${t}'`,t);if(!this.entries.has(r)&&!this.listings.has(r))throw qg.errors.ENOENT(`lstat '${t}'`);return r}async existsPromise(t){return this.existsSync(t)}existsSync(t){if(!this.ready)throw qg.errors.EBUSY(`archive closed, existsSync '${t}'`);if(this.symlinkCount===0){let s=BC.ppath.resolve(BC.PortablePath.root,t);return this.entries.has(s)||this.listings.has(s)}let r;try{r=this.resolveFilename(`stat '${t}'`,t,void 0,!1)}catch{return!1}return r===void 0?!1:this.entries.has(r)||this.listings.has(r)}async accessPromise(t,r){return this.accessSync(t,r)}accessSync(t,r=xL.constants.F_OK){let s=this.resolveFilename(`access '${t}'`,t);if(!this.entries.has(s)&&!this.listings.has(s))throw qg.errors.ENOENT(`access '${t}'`);if(this.readOnly&&r&xL.constants.W_OK)throw qg.errors.EROFS(`access '${t}'`)}async statPromise(t,r={bigint:!1}){return r.bigint?this.statSync(t,{bigint:!0}):this.statSync(t)}statSync(t,r={bigint:!1,throwIfNoEntry:!0}){let s=this.resolveFilename(`stat '${t}'`,t,void 0,r.throwIfNoEntry);if(s!==void 0){if(!this.entries.has(s)&&!this.listings.has(s)){if(r.throwIfNoEntry===!1)return;throw qg.errors.ENOENT(`stat '${t}'`)}if(t[t.length-1]==="/"&&!this.listings.has(s))throw qg.errors.ENOTDIR(`stat '${t}'`);return this.statImpl(`stat '${t}'`,s,r)}}async fstatPromise(t,r){return this.fstatSync(t,r)}fstatSync(t,r){let s=this.fds.get(t);if(typeof s>"u")throw qg.errors.EBADF("fstatSync");let{p:a}=s,o=this.resolveFilename(`stat '${a}'`,a);if(!this.entries.has(o)&&!this.listings.has(o))throw qg.errors.ENOENT(`stat '${a}'`);if(a[a.length-1]==="/"&&!this.listings.has(o))throw qg.errors.ENOTDIR(`stat '${a}'`);return this.statImpl(`fstat '${a}'`,o,r)}async lstatPromise(t,r={bigint:!1}){return r.bigint?this.lstatSync(t,{bigint:!0}):this.lstatSync(t)}lstatSync(t,r={bigint:!1,throwIfNoEntry:!0}){let s=this.resolveFilename(`lstat '${t}'`,t,!1,r.throwIfNoEntry);if(s!==void 0){if(!this.entries.has(s)&&!this.listings.has(s)){if(r.throwIfNoEntry===!1)return;throw qg.errors.ENOENT(`lstat '${t}'`)}if(t[t.length-1]==="/"&&!this.listings.has(s))throw qg.errors.ENOTDIR(`lstat '${t}'`);return this.statImpl(`lstat '${t}'`,s,r)}}statImpl(t,r,s={}){let a=this.entries.get(r);if(typeof a<"u"){let o=this.libzip.struct.statS();if(this.libzip.statIndex(this.zip,a,0,0,o)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));let p=this.stats.uid,f=this.stats.gid,m=this.libzip.struct.statSize(o)>>>0,y=512,B=Math.ceil(m/y),v=(this.libzip.struct.statMtime(o)>>>0)*1e3,k=v,T=v,O=v,X=new Date(k),U=new Date(T),le=new Date(O),ae=new Date(v),ge=this.listings.has(r)?xL.constants.S_IFDIR:this.isSymbolicLink(a)?xL.constants.S_IFLNK:xL.constants.S_IFREG,fe=ge===xL.constants.S_IFDIR?493:420,pe=ge|this.getUnixMode(a,fe)&511,he=this.libzip.struct.statCrc(o),be=Object.assign(new qg.statUtils.StatEntry,{uid:p,gid:f,size:m,blksize:y,blocks:B,atime:X,birthtime:U,ctime:le,mtime:ae,atimeMs:k,birthtimeMs:T,ctimeMs:O,mtimeMs:v,mode:pe,crc:he});return s.bigint===!0?qg.statUtils.convertToBigIntStats(be):be}if(this.listings.has(r)){let o=this.stats.uid,g=this.stats.gid,p=0,f=512,m=0,y=this.stats.mtimeMs,B=this.stats.mtimeMs,v=this.stats.mtimeMs,k=this.stats.mtimeMs,T=new Date(y),O=new Date(B),X=new Date(v),U=new Date(k),le=xL.constants.S_IFDIR|493,ge=Object.assign(new qg.statUtils.StatEntry,{uid:o,gid:g,size:p,blksize:f,blocks:m,atime:T,birthtime:O,ctime:X,mtime:U,atimeMs:y,birthtimeMs:B,ctimeMs:v,mtimeMs:k,mode:le,crc:0});return s.bigint===!0?qg.statUtils.convertToBigIntStats(ge):ge}throw new Error("Unreachable")}getUnixMode(t,r){if(this.libzip.file.getExternalAttributes(this.zip,t,0,0,this.libzip.uint08S,this.libzip.uint32S)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return this.libzip.getValue(this.libzip.uint08S,"i8")>>>0!==this.libzip.ZIP_OPSYS_UNIX?r:this.libzip.getValue(this.libzip.uint32S,"i32")>>>16}registerListing(t){let r=this.listings.get(t);if(r)return r;this.registerListing(BC.ppath.dirname(t)).add(BC.ppath.basename(t));let a=new Set;return this.listings.set(t,a),a}registerEntry(t,r){this.registerListing(BC.ppath.dirname(t)).add(BC.ppath.basename(t)),this.entries.set(t,r)}unregisterListing(t){this.listings.delete(t),this.listings.get(BC.ppath.dirname(t))?.delete(BC.ppath.basename(t))}unregisterEntry(t){this.unregisterListing(t);let r=this.entries.get(t);this.entries.delete(t),!(typeof r>"u")&&(this.fileSources.delete(r),this.isSymbolicLink(r)&&this.symlinkCount--)}deleteEntry(t,r){if(this.unregisterEntry(t),this.libzip.delete(this.zip,r)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}resolveFilename(t,r,s=!0,a=!0){if(!this.ready)throw qg.errors.EBUSY(`archive closed, ${t}`);let o=BC.ppath.resolve(BC.PortablePath.root,r);if(o==="/")return BC.PortablePath.root;let g=this.entries.get(o);if(s&&g!==void 0)if(this.symlinkCount!==0&&this.isSymbolicLink(g)){let p=this.getFileSource(g).toString();return this.resolveFilename(t,BC.ppath.resolve(BC.ppath.dirname(o),p),!0,a)}else return o;for(;;){let p=this.resolveFilename(t,BC.ppath.dirname(o),!0,a);if(p===void 0)return p;let f=this.listings.has(p),m=this.entries.has(p);if(!f&&!m){if(a===!1)return;throw qg.errors.ENOENT(t)}if(!f)throw qg.errors.ENOTDIR(t);if(o=BC.ppath.resolve(p,BC.ppath.basename(o)),!s||this.symlinkCount===0)break;let y=this.libzip.name.locate(this.zip,o.slice(1),0);if(y===-1)break;if(this.isSymbolicLink(y)){let B=this.getFileSource(y).toString();o=BC.ppath.resolve(BC.ppath.dirname(o),B)}else break}return o}allocateBuffer(t){Buffer.isBuffer(t)||(t=Buffer.from(t));let r=this.libzip.malloc(t.byteLength);if(!r)throw new Error("Couldn't allocate enough memory");return new Uint8Array(this.libzip.HEAPU8.buffer,r,t.byteLength).set(t),{buffer:r,byteLength:t.byteLength}}allocateUnattachedSource(t){let r=this.libzip.struct.errorS(),{buffer:s,byteLength:a}=this.allocateBuffer(t),o=this.libzip.source.fromUnattachedBuffer(s,a,0,1,r);if(o===0)throw this.libzip.free(r),this.makeLibzipError(r);return o}allocateSource(t){let{buffer:r,byteLength:s}=this.allocateBuffer(t),a=this.libzip.source.fromBuffer(this.zip,r,s,0,1);if(a===0)throw this.libzip.free(r),this.makeLibzipError(this.libzip.getError(this.zip));return a}setFileSource(t,r){let s=Buffer.isBuffer(r)?r:Buffer.from(r),a=BC.ppath.relative(BC.PortablePath.root,t),o=this.allocateSource(r);try{let g=this.libzip.file.add(this.zip,a,o,this.libzip.ZIP_FL_OVERWRITE);if(g===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));if(this.level!=="mixed"){let p=this.level===0?this.libzip.ZIP_CM_STORE:this.libzip.ZIP_CM_DEFLATE;if(this.libzip.file.setCompression(this.zip,g,0,p,this.level)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}return this.fileSources.set(g,s),g}catch(g){throw this.libzip.source.free(o),g}}isSymbolicLink(t){if(this.symlinkCount===0)return!1;if(this.libzip.file.getExternalAttributes(this.zip,t,0,0,this.libzip.uint08S,this.libzip.uint32S)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return this.libzip.getValue(this.libzip.uint08S,"i8")>>>0!==this.libzip.ZIP_OPSYS_UNIX?!1:(this.libzip.getValue(this.libzip.uint32S,"i32")>>>16&xL.constants.S_IFMT)===xL.constants.S_IFLNK}getFileSource(t,r={asyncDecompress:!1}){let s=this.fileSources.get(t);if(typeof s<"u")return s;let a=this.libzip.struct.statS();if(this.libzip.statIndex(this.zip,t,0,0,a)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));let g=this.libzip.struct.statCompSize(a),p=this.libzip.struct.statCompMethod(a),f=this.libzip.malloc(g);try{let m=this.libzip.fopenIndex(this.zip,t,0,this.libzip.ZIP_FL_COMPRESSED);if(m===0)throw this.makeLibzipError(this.libzip.getError(this.zip));try{let y=this.libzip.fread(m,f,g,0);if(y===-1)throw this.makeLibzipError(this.libzip.file.getError(m));if(yg)throw new Error("Overread");let B=this.libzip.HEAPU8.subarray(f,f+g),v=Buffer.from(B);if(p===0)return this.fileSources.set(t,v),v;if(r.asyncDecompress)return new Promise((k,T)=>{yAn.default.inflateRaw(v,(O,X)=>{O?T(O):(this.fileSources.set(t,X),k(X))})});{let k=yAn.default.inflateRawSync(v);return this.fileSources.set(t,k),k}}finally{this.libzip.fclose(m)}}finally{this.libzip.free(f)}}async fchmodPromise(t,r){return this.chmodPromise(this.fdToPath(t,"fchmod"),r)}fchmodSync(t,r){return this.chmodSync(this.fdToPath(t,"fchmodSync"),r)}async chmodPromise(t,r){return this.chmodSync(t,r)}chmodSync(t,r){if(this.readOnly)throw qg.errors.EROFS(`chmod '${t}'`);r&=493;let s=this.resolveFilename(`chmod '${t}'`,t,!1),a=this.entries.get(s);if(typeof a>"u")throw new Error(`Assertion failed: The entry should have been registered (${s})`);let g=this.getUnixMode(a,xL.constants.S_IFREG|0)&-512|r;if(this.libzip.file.setExternalAttributes(this.zip,a,0,0,this.libzip.ZIP_OPSYS_UNIX,g<<16)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}async fchownPromise(t,r,s){return this.chownPromise(this.fdToPath(t,"fchown"),r,s)}fchownSync(t,r,s){return this.chownSync(this.fdToPath(t,"fchownSync"),r,s)}async chownPromise(t,r,s){return this.chownSync(t,r,s)}chownSync(t,r,s){throw new Error("Unimplemented")}async renamePromise(t,r){return this.renameSync(t,r)}renameSync(t,r){throw new Error("Unimplemented")}async copyFilePromise(t,r,s){let{indexSource:a,indexDest:o,resolvedDestP:g}=this.prepareCopyFile(t,r,s),p=await this.getFileSource(a,{asyncDecompress:!0}),f=this.setFileSource(g,p);f!==o&&this.registerEntry(g,f)}copyFileSync(t,r,s=0){let{indexSource:a,indexDest:o,resolvedDestP:g}=this.prepareCopyFile(t,r,s),p=this.getFileSource(a),f=this.setFileSource(g,p);f!==o&&this.registerEntry(g,f)}prepareCopyFile(t,r,s=0){if(this.readOnly)throw qg.errors.EROFS(`copyfile '${t} -> '${r}'`);if(s&xL.constants.COPYFILE_FICLONE_FORCE)throw qg.errors.ENOSYS("unsupported clone operation",`copyfile '${t}' -> ${r}'`);let a=this.resolveFilename(`copyfile '${t} -> ${r}'`,t),o=this.entries.get(a);if(typeof o>"u")throw qg.errors.EINVAL(`copyfile '${t}' -> '${r}'`);let g=this.resolveFilename(`copyfile '${t}' -> ${r}'`,r),p=this.entries.get(g);if(s&(xL.constants.COPYFILE_EXCL|xL.constants.COPYFILE_FICLONE_FORCE)&&typeof p<"u")throw qg.errors.EEXIST(`copyfile '${t}' -> '${r}'`);return{indexSource:o,resolvedDestP:g,indexDest:p}}async appendFilePromise(t,r,s){if(this.readOnly)throw qg.errors.EROFS(`open '${t}'`);return typeof s>"u"?s={flag:"a"}:typeof s=="string"?s={flag:"a",encoding:s}:typeof s.flag>"u"&&(s={flag:"a",...s}),this.writeFilePromise(t,r,s)}appendFileSync(t,r,s={}){if(this.readOnly)throw qg.errors.EROFS(`open '${t}'`);return typeof s>"u"?s={flag:"a"}:typeof s=="string"?s={flag:"a",encoding:s}:typeof s.flag>"u"&&(s={flag:"a",...s}),this.writeFileSync(t,r,s)}fdToPath(t,r){let s=this.fds.get(t)?.p;if(typeof s>"u")throw qg.errors.EBADF(r);return s}async writeFilePromise(t,r,s){let{encoding:a,mode:o,index:g,resolvedP:p}=this.prepareWriteFile(t,s);g!==void 0&&typeof s=="object"&&s.flag&&s.flag.includes("a")&&(r=Buffer.concat([await this.getFileSource(g,{asyncDecompress:!0}),Buffer.from(r)])),a!==null&&(r=r.toString(a));let f=this.setFileSource(p,r);f!==g&&this.registerEntry(p,f),o!==null&&await this.chmodPromise(p,o)}writeFileSync(t,r,s){let{encoding:a,mode:o,index:g,resolvedP:p}=this.prepareWriteFile(t,s);g!==void 0&&typeof s=="object"&&s.flag&&s.flag.includes("a")&&(r=Buffer.concat([this.getFileSource(g),Buffer.from(r)])),a!==null&&(r=r.toString(a));let f=this.setFileSource(p,r);f!==g&&this.registerEntry(p,f),o!==null&&this.chmodSync(p,o)}prepareWriteFile(t,r){if(typeof t=="number"&&(t=this.fdToPath(t,"read")),this.readOnly)throw qg.errors.EROFS(`open '${t}'`);let s=this.resolveFilename(`open '${t}'`,t);if(this.listings.has(s))throw qg.errors.EISDIR(`open '${t}'`);let a=null,o=null;typeof r=="string"?a=r:typeof r=="object"&&({encoding:a=null,mode:o=null}=r);let g=this.entries.get(s);return{encoding:a,mode:o,resolvedP:s,index:g}}async unlinkPromise(t){return this.unlinkSync(t)}unlinkSync(t){if(this.readOnly)throw qg.errors.EROFS(`unlink '${t}'`);let r=this.resolveFilename(`unlink '${t}'`,t);if(this.listings.has(r))throw qg.errors.EISDIR(`unlink '${t}'`);let s=this.entries.get(r);if(typeof s>"u")throw qg.errors.EINVAL(`unlink '${t}'`);this.deleteEntry(r,s)}async utimesPromise(t,r,s){return this.utimesSync(t,r,s)}utimesSync(t,r,s){if(this.readOnly)throw qg.errors.EROFS(`utimes '${t}'`);let a=this.resolveFilename(`utimes '${t}'`,t);this.utimesImpl(a,s)}async lutimesPromise(t,r,s){return this.lutimesSync(t,r,s)}lutimesSync(t,r,s){if(this.readOnly)throw qg.errors.EROFS(`lutimes '${t}'`);let a=this.resolveFilename(`utimes '${t}'`,t,!1);this.utimesImpl(a,s)}utimesImpl(t,r){this.listings.has(t)&&(this.entries.has(t)||this.hydrateDirectory(t));let s=this.entries.get(t);if(s===void 0)throw new Error("Unreachable");if(this.libzip.file.setMtime(this.zip,s,0,SYs(r),0)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}async mkdirPromise(t,r){return this.mkdirSync(t,r)}mkdirSync(t,{mode:r=493,recursive:s=!1}={}){if(s)return this.mkdirpSync(t,{chmod:r});if(this.readOnly)throw qg.errors.EROFS(`mkdir '${t}'`);let a=this.resolveFilename(`mkdir '${t}'`,t);if(this.entries.has(a)||this.listings.has(a))throw qg.errors.EEXIST(`mkdir '${t}'`);this.hydrateDirectory(a),this.chmodSync(a,r)}async rmdirPromise(t,r){return this.rmdirSync(t,r)}rmdirSync(t,{recursive:r=!1}={}){if(this.readOnly)throw qg.errors.EROFS(`rmdir '${t}'`);if(r){this.removeSync(t);return}let s=this.resolveFilename(`rmdir '${t}'`,t),a=this.listings.get(s);if(!a)throw qg.errors.ENOTDIR(`rmdir '${t}'`);if(a.size>0)throw qg.errors.ENOTEMPTY(`rmdir '${t}'`);let o=this.entries.get(s);if(typeof o>"u")throw qg.errors.EINVAL(`rmdir '${t}'`);this.deleteEntry(t,o)}async rmPromise(t,r){return this.rmSync(t,r)}rmSync(t,{recursive:r=!1}={}){if(this.readOnly)throw qg.errors.EROFS(`rm '${t}'`);if(r){this.removeSync(t);return}let s=this.resolveFilename(`rm '${t}'`,t),a=this.listings.get(s);if(!a)throw qg.errors.ENOTDIR(`rm '${t}'`);if(a.size>0)throw qg.errors.ENOTEMPTY(`rm '${t}'`);let o=this.entries.get(s);if(typeof o>"u")throw qg.errors.EINVAL(`rm '${t}'`);this.deleteEntry(t,o)}hydrateDirectory(t){let r=this.libzip.dir.add(this.zip,BC.ppath.relative(BC.PortablePath.root,t));if(r===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return this.registerListing(t),this.registerEntry(t,r),r}async linkPromise(t,r){return this.linkSync(t,r)}linkSync(t,r){throw qg.errors.EOPNOTSUPP(`link '${t}' -> '${r}'`)}async symlinkPromise(t,r){return this.symlinkSync(t,r)}symlinkSync(t,r){if(this.readOnly)throw qg.errors.EROFS(`symlink '${t}' -> '${r}'`);let s=this.resolveFilename(`symlink '${t}' -> '${r}'`,r);if(this.listings.has(s))throw qg.errors.EISDIR(`symlink '${t}' -> '${r}'`);if(this.entries.has(s))throw qg.errors.EEXIST(`symlink '${t}' -> '${r}'`);let a=this.setFileSource(s,t);if(this.registerEntry(s,a),this.libzip.file.setExternalAttributes(this.zip,a,0,0,this.libzip.ZIP_OPSYS_UNIX,(xL.constants.S_IFLNK|511)<<16)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));this.symlinkCount+=1}async readFilePromise(t,r){typeof r=="object"&&(r=r?r.encoding:void 0);let s=await this.readFileBuffer(t,{asyncDecompress:!0});return r?s.toString(r):s}readFileSync(t,r){typeof r=="object"&&(r=r?r.encoding:void 0);let s=this.readFileBuffer(t);return r?s.toString(r):s}readFileBuffer(t,r={asyncDecompress:!1}){typeof t=="number"&&(t=this.fdToPath(t,"read"));let s=this.resolveFilename(`open '${t}'`,t);if(!this.entries.has(s)&&!this.listings.has(s))throw qg.errors.ENOENT(`open '${t}'`);if(t[t.length-1]==="/"&&!this.listings.has(s))throw qg.errors.ENOTDIR(`open '${t}'`);if(this.listings.has(s))throw qg.errors.EISDIR("read");let a=this.entries.get(s);if(a===void 0)throw new Error("Unreachable");return this.getFileSource(a,r)}async readdirPromise(t,r){return this.readdirSync(t,r)}readdirSync(t,r){let s=this.resolveFilename(`scandir '${t}'`,t);if(!this.entries.has(s)&&!this.listings.has(s))throw qg.errors.ENOENT(`scandir '${t}'`);let a=this.listings.get(s);if(!a)throw qg.errors.ENOTDIR(`scandir '${t}'`);if(r?.recursive)if(r?.withFileTypes){let o=Array.from(a,g=>Object.assign(this.statImpl("lstat",BC.ppath.join(t,g)),{name:g,path:BC.PortablePath.dot}));for(let g of o){if(!g.isDirectory())continue;let p=BC.ppath.join(g.path,g.name),f=this.listings.get(BC.ppath.join(s,p));for(let m of f)o.push(Object.assign(this.statImpl("lstat",BC.ppath.join(t,p,m)),{name:m,path:p}))}return o}else{let o=[...a];for(let g of o){let p=this.listings.get(BC.ppath.join(s,g));if(!(typeof p>"u"))for(let f of p)o.push(BC.ppath.join(g,f))}return o}else return r?.withFileTypes?Array.from(a,o=>Object.assign(this.statImpl("lstat",BC.ppath.join(t,o)),{name:o,path:void 0})):[...a]}async readlinkPromise(t){let r=this.prepareReadlink(t);return(await this.getFileSource(r,{asyncDecompress:!0})).toString()}readlinkSync(t){let r=this.prepareReadlink(t);return this.getFileSource(r).toString()}prepareReadlink(t){let r=this.resolveFilename(`readlink '${t}'`,t,!1);if(!this.entries.has(r)&&!this.listings.has(r))throw qg.errors.ENOENT(`readlink '${t}'`);if(t[t.length-1]==="/"&&!this.listings.has(r))throw qg.errors.ENOTDIR(`open '${t}'`);if(this.listings.has(r))throw qg.errors.EINVAL(`readlink '${t}'`);let s=this.entries.get(r);if(s===void 0)throw new Error("Unreachable");if(!this.isSymbolicLink(s))throw qg.errors.EINVAL(`readlink '${t}'`);return s}async truncatePromise(t,r=0){let s=this.resolveFilename(`open '${t}'`,t),a=this.entries.get(s);if(typeof a>"u")throw qg.errors.EINVAL(`open '${t}'`);let o=await this.getFileSource(a,{asyncDecompress:!0}),g=Buffer.alloc(r,0);return o.copy(g),await this.writeFilePromise(t,g)}truncateSync(t,r=0){let s=this.resolveFilename(`open '${t}'`,t),a=this.entries.get(s);if(typeof a>"u")throw qg.errors.EINVAL(`open '${t}'`);let o=this.getFileSource(a),g=Buffer.alloc(r,0);return o.copy(g),this.writeFileSync(t,g)}async ftruncatePromise(t,r){return this.truncatePromise(this.fdToPath(t,"ftruncate"),r)}ftruncateSync(t,r){return this.truncateSync(this.fdToPath(t,"ftruncateSync"),r)}watch(t,r,s){let a;switch(typeof r){case"function":case"string":case"undefined":a=!0;break;default:({persistent:a=!0}=r);break}if(!a)return{on:()=>{},close:()=>{}};let o=setInterval(()=>{},24*60*60*1e3);return{on:()=>{},close:()=>{clearInterval(o)}}}watchFile(t,r,s){let a=BC.ppath.resolve(BC.PortablePath.root,t);return(0,L4t.watchFile)(this,a,r,s)}unwatchFile(t,r){let s=BC.ppath.resolve(BC.PortablePath.root,t);return(0,L4t.unwatchFile)(this,s,r)}};RJ.ZipFS=V4t});var bAn=z(P4t=>{"use strict";Object.defineProperty(P4t,"__esModule",{value:!0});P4t.mountMemoryDrive=RYs;var wYs=(Oa(),Ai(Pa)),Jit=No(),TYs=wYs.__importDefault(xt("fs")),NYs=W4t();function RYs(e,t,r=Buffer.alloc(0),s){let a=new NYs.ZipFS(r),o=B=>B===t||B.startsWith(`${t}/`)?B.slice(0,t.length):null,g=async(B,v)=>()=>a,p=(B,v)=>a,f={...e},m=new Jit.NodeFS(f),y=new Jit.MountFS({baseFs:m,getMountPoint:o,factoryPromise:g,factorySync:p,magicByte:21,maxAge:1/0,typeCheck:s?.typeCheck});return(0,Jit.patchFs)(TYs.default,new Jit.PosixFS(y)),a}});var BAn=z(qbe=>{"use strict";Object.defineProperty(qbe,"__esModule",{value:!0});qbe.mountMemoryDrive=void 0;var EAn=(Oa(),Ai(Pa));EAn.__exportStar(hAn(),qbe);EAn.__exportStar(W4t(),qbe);var DYs=bAn();Object.defineProperty(qbe,"mountMemoryDrive",{enumerable:!0,get:function(){return DYs.mountMemoryDrive}})});var NJ=z(gVe=>{"use strict";Object.defineProperty(gVe,"__esModule",{value:!0});gVe.getLibzipSync=GYs;gVe.getLibzipPromise=FYs;var vAn=(Oa(),Ai(Pa)),O4t=R4t(),xYs=vAn.__importDefault(IAn()),kYs=CAn();vAn.__exportStar(BAn(),gVe);(0,O4t.setFactory)(()=>{let e=(0,xYs.default)();return(0,kYs.makeInterface)(e)});function GYs(){return(0,O4t.getInstance)()}async function FYs(){return(0,O4t.getInstance)()}});var SAn=z(Q4t=>{"use strict";Object.defineProperty(Q4t,"__esModule",{value:!0});var ZYs=No(),Uit=(Zl(),Ai(pg)),LYs=AVe(),Kit=class extends Uit.Command{constructor(){super(...arguments),this.cwd=Uit.Option.String("--cwd",process.cwd(),{description:"The directory to run the command in"}),this.commandName=Uit.Option.String(),this.args=Uit.Option.Proxy()}async execute(){let t=this.args.length>0?`${this.commandName} ${this.args.join(" ")}`:this.commandName;return await(0,LYs.execute)(t,[],{cwd:ZYs.npath.toPortablePath(this.cwd),stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})}};Kit.usage={description:"run a command using yarn's portable shell",details:` This command will run a command using Yarn's portable shell. Make sure to escape glob patterns, redirections, and other features that might be expanded by your own shell. @@ -179,87 +179,87 @@ Please report this to https://github.com/szmarczak/http2-wrapper/`);T(O)}return} Note: Don't use this command in Yarn scripts, as Yarn's shell is automatically used. For a list of features, visit: https://github.com/yarnpkg/berry/blob/master/packages/yarnpkg-shell/README.md. - `,examples:[["Run a simple command","$0 echo Hello"],["Run a command with a glob pattern","$0 echo '*.js'"],["Run a command with a redirection","$0 echo Hello World '>' hello.txt"],["Run a command with an escaped glob pattern (The double escape is needed in Unix shells)",`$0 echo '"*.js"'`],["Run a command with a variable (Double quotes are needed in Unix shells, to prevent them from expanding the variable)",'$0 "GREETING=Hello echo $GREETING World"']]};W4t.default=Jit});var yAn=z(Uit=>{"use strict";Object.defineProperty(Uit,"__esModule",{value:!0});Uit.ShellError=void 0;var P4t=class extends Error{constructor(t){super(t),this.name="ShellError"}};Uit.ShellError=P4t});var bAn=z(IW=>{"use strict";Object.defineProperty(IW,"__esModule",{value:!0});IW.fastGlobOptions=IW.micromatchOptions=void 0;IW.isGlobPattern=k5s;IW.match=G5s;IW.isBraceExpansion=F5s;var Q4t=(Ma(),Ai(Oa)),O4t=Ro(),D5s=Q4t.__importDefault(Rbe()),x5s=Q4t.__importDefault(Dt("fs")),M4t=Q4t.__importDefault(sk());IW.micromatchOptions={strictBrackets:!0};IW.fastGlobOptions={onlyDirectories:!1,onlyFiles:!1};function k5s(e){if(!M4t.default.scan(e,IW.micromatchOptions).isGlob)return!1;try{M4t.default.parse(e,IW.micromatchOptions)}catch{return!1}return!0}function G5s(e,{cwd:t,baseFs:r}){return(0,D5s.default)(e,{...IW.fastGlobOptions,cwd:O4t.npath.fromPortablePath(t),fs:(0,O4t.extendFs)(x5s.default,new O4t.PosixFS(r))})}function F5s(e){return M4t.default.scan(e,IW.micromatchOptions).isBrace}});var U4t=z(BO=>{"use strict";Object.defineProperty(BO,"__esModule",{value:!0});BO.Handle=BO.ProtectedStream=BO.Pipe=void 0;BO.makeProcess=W5s;BO.makeBuiltin=P5s;BO.start=O5s;BO.createOutputStreamsWithPrefix=M5s;var Z5s=(Ma(),Ai(Oa)),L5s=Z5s.__importDefault(irt()),Bne=Dt("stream"),V5s=Dt("string_decoder"),mAe;(function(e){e[e.STDIN=0]="STDIN",e[e.STDOUT=1]="STDOUT",e[e.STDERR=2]="STDERR"})(mAe||(BO.Pipe=mAe={}));var CAe=new Set;function Y4t(){}function H4t(){for(let e of CAe)e.kill()}function W5s(e,t,r,s){return a=>{let o=a[0]instanceof Bne.Transform?"pipe":a[0],g=a[1]instanceof Bne.Transform?"pipe":a[1],p=a[2]instanceof Bne.Transform?"pipe":a[2],f=(0,L5s.default)(e,t,{...s,stdio:[o,g,p]});return CAe.add(f),CAe.size===1&&(process.on("SIGINT",Y4t),process.on("SIGTERM",H4t)),a[0]instanceof Bne.Transform&&a[0].pipe(f.stdin),a[1]instanceof Bne.Transform&&f.stdout.pipe(a[1],{end:!1}),a[2]instanceof Bne.Transform&&f.stderr.pipe(a[2],{end:!1}),{stdin:f.stdin,promise:new Promise(m=>{f.on("error",y=>{switch(CAe.delete(f),CAe.size===0&&(process.off("SIGINT",Y4t),process.off("SIGTERM",H4t)),y.code){case"ENOENT":a[2].write(`command not found: ${e} + `,examples:[["Run a simple command","$0 echo Hello"],["Run a command with a glob pattern","$0 echo '*.js'"],["Run a command with a redirection","$0 echo Hello World '>' hello.txt"],["Run a command with an escaped glob pattern (The double escape is needed in Unix shells)",`$0 echo '"*.js"'`],["Run a command with a variable (Double quotes are needed in Unix shells, to prevent them from expanding the variable)",'$0 "GREETING=Hello echo $GREETING World"']]};Q4t.default=Kit});var wAn=z(jit=>{"use strict";Object.defineProperty(jit,"__esModule",{value:!0});jit.ShellError=void 0;var M4t=class extends Error{constructor(t){super(t),this.name="ShellError"}};jit.ShellError=M4t});var TAn=z(CW=>{"use strict";Object.defineProperty(CW,"__esModule",{value:!0});CW.fastGlobOptions=CW.micromatchOptions=void 0;CW.isGlobPattern=PYs;CW.match=OYs;CW.isBraceExpansion=QYs;var X4t=(Oa(),Ai(Pa)),H4t=No(),VYs=X4t.__importDefault(xbe()),WYs=X4t.__importDefault(xt("fs")),Y4t=X4t.__importDefault(gk());CW.micromatchOptions={strictBrackets:!0};CW.fastGlobOptions={onlyDirectories:!1,onlyFiles:!1};function PYs(e){if(!Y4t.default.scan(e,CW.micromatchOptions).isGlob)return!1;try{Y4t.default.parse(e,CW.micromatchOptions)}catch{return!1}return!0}function OYs(e,{cwd:t,baseFs:r}){return(0,VYs.default)(e,{...CW.fastGlobOptions,cwd:H4t.npath.fromPortablePath(t),fs:(0,H4t.extendFs)(WYs.default,new H4t.PosixFS(r))})}function QYs(e){return Y4t.default.scan(e,CW.micromatchOptions).isBrace}});var z4t=z(wO=>{"use strict";Object.defineProperty(wO,"__esModule",{value:!0});wO.Handle=wO.ProtectedStream=wO.Pipe=void 0;wO.makeProcess=XYs;wO.makeBuiltin=JYs;wO.start=UYs;wO.createOutputStreamsWithPrefix=KYs;var MYs=(Oa(),Ai(Pa)),HYs=MYs.__importDefault(ort()),Sne=xt("stream"),YYs=xt("string_decoder"),wAe;(function(e){e[e.STDIN=0]="STDIN",e[e.STDOUT=1]="STDOUT",e[e.STDERR=2]="STDERR"})(wAe||(wO.Pipe=wAe={}));var SAe=new Set;function J4t(){}function U4t(){for(let e of SAe)e.kill()}function XYs(e,t,r,s){return a=>{let o=a[0]instanceof Sne.Transform?"pipe":a[0],g=a[1]instanceof Sne.Transform?"pipe":a[1],p=a[2]instanceof Sne.Transform?"pipe":a[2],f=(0,HYs.default)(e,t,{...s,stdio:[o,g,p]});return SAe.add(f),SAe.size===1&&(process.on("SIGINT",J4t),process.on("SIGTERM",U4t)),a[0]instanceof Sne.Transform&&a[0].pipe(f.stdin),a[1]instanceof Sne.Transform&&f.stdout.pipe(a[1],{end:!1}),a[2]instanceof Sne.Transform&&f.stderr.pipe(a[2],{end:!1}),{stdin:f.stdin,promise:new Promise(m=>{f.on("error",y=>{switch(SAe.delete(f),SAe.size===0&&(process.off("SIGINT",J4t),process.off("SIGTERM",U4t)),y.code){case"ENOENT":a[2].write(`command not found: ${e} `),m(127);break;case"EACCES":a[2].write(`permission denied: ${e} `),m(128);break;default:a[2].write(`uncaught error: ${y.message} -`),m(1);break}}),f.on("close",y=>{CAe.delete(f),CAe.size===0&&(process.off("SIGINT",Y4t),process.off("SIGTERM",H4t)),m(y!==null?y:129)})})}}}function P5s(e){return t=>{let r=t[0]==="pipe"?new Bne.PassThrough:t[0];return{stdin:r,promise:Promise.resolve().then(()=>e({stdin:r,stdout:t[1],stderr:t[2]}))}}}var X4t=class{constructor(t){this.stream=t}close(){}get(){return this.stream}};BO.ProtectedStream=X4t;var J4t=class{constructor(){this.stream=null}close(){if(this.stream===null)throw new Error("Assertion failed: No stream attached");this.stream.end()}attach(t){this.stream=t}get(){if(this.stream===null)throw new Error("Assertion failed: No stream attached");return this.stream}},Kit=class e{static start(t,{stdin:r,stdout:s,stderr:a}){let o=new e(null,t);return o.stdin=r,o.stdout=s,o.stderr=a,o}constructor(t,r){this.stdin=null,this.stdout=null,this.stderr=null,this.pipe=null,this.ancestor=t,this.implementation=r}pipeTo(t,r=mAe.STDOUT){let s=new e(this,t),a=new J4t;return s.pipe=a,s.stdout=this.stdout,s.stderr=this.stderr,(r&mAe.STDOUT)===mAe.STDOUT?this.stdout=a:this.ancestor!==null&&(this.stderr=this.ancestor.stdout),(r&mAe.STDERR)===mAe.STDERR?this.stderr=a:this.ancestor!==null&&(this.stderr=this.ancestor.stderr),s}async exec(){let t=["ignore","ignore","ignore"];if(this.pipe)t[0]="pipe";else{if(this.stdin===null)throw new Error("Assertion failed: No input stream registered");t[0]=this.stdin.get()}let r;if(this.stdout===null)throw new Error("Assertion failed: No output stream registered");r=this.stdout,t[1]=r.get();let s;if(this.stderr===null)throw new Error("Assertion failed: No error stream registered");s=this.stderr,t[2]=s.get();let a=this.implementation(t);return this.pipe&&this.pipe.attach(a.stdin),await a.promise.then(o=>(r.close(),s.close(),o))}async run(){let t=[];for(let s=this;s;s=s.ancestor)t.push(s.exec());return(await Promise.all(t))[0]}};BO.Handle=Kit;function O5s(e,t){return Kit.start(e,t)}function EAn(e,t=null){let r=new Bne.PassThrough,s=new V5s.StringDecoder,a="";return r.on("data",o=>{let g=s.write(o),p;do if(p=g.indexOf(` -`),p!==-1){let f=a+g.substring(0,p);g=g.substring(p+1),a="",e(t!==null?`${t} ${f}`:f)}while(p!==-1);a+=g}),r.on("end",()=>{let o=s.end();o!==""&&e(t!==null?`${t} ${o}`:o)}),r}function M5s(e,{prefix:t}){return{stdout:EAn(r=>e.stdout.write(`${r} -`),e.stdout.isTTY?t:null),stderr:EAn(r=>e.stderr.write(`${r} -`),e.stderr.isTTY?t:null)}}});var uVe=z(lj=>{"use strict";Object.defineProperty(lj,"__esModule",{value:!0});lj.globUtils=lj.ShellError=lj.EntryCommand=void 0;lj.execute=eXs;var z4t=(Ma(),Ai(Oa)),TJ=Ro(),TAn=aO(),Q5s=z4t.__importDefault(mYt()),Y5s=Dt("os"),yH=Dt("stream"),H5s=Dt("timers/promises"),X5s=z4t.__importDefault(_An());lj.EntryCommand=X5s.default;var NJ=yAn();Object.defineProperty(lj,"ShellError",{enumerable:!0,get:function(){return NJ.ShellError}});var q4t=z4t.__importStar(bAn());lj.globUtils=q4t;var K4t=U4t(),sR=U4t(),Ak;(function(e){e[e.Readable=1]="Readable",e[e.Writable=2]="Writable"})(Ak||(Ak={}));function BAn(e,t,r){let s=new yH.PassThrough({autoDestroy:!0});switch(e){case sR.Pipe.STDIN:(t&Ak.Readable)===Ak.Readable&&r.stdin.pipe(s,{end:!1}),(t&Ak.Writable)===Ak.Writable&&r.stdin instanceof yH.Writable&&s.pipe(r.stdin,{end:!1});break;case sR.Pipe.STDOUT:(t&Ak.Readable)===Ak.Readable&&r.stdout.pipe(s,{end:!1}),(t&Ak.Writable)===Ak.Writable&&s.pipe(r.stdout,{end:!1});break;case sR.Pipe.STDERR:(t&Ak.Readable)===Ak.Readable&&r.stderr.pipe(s,{end:!1}),(t&Ak.Writable)===Ak.Writable&&s.pipe(r.stderr,{end:!1});break;default:throw new NJ.ShellError(`Bad file descriptor: "${e}"`)}return s}function zit(e,t={}){let r={...e,...t};return r.environment={...e.environment,...t.environment},r.variables={...e.variables,...t.variables},r}var J5s=new Map([["cd",async([e=(0,Y5s.homedir)(),...t],r,s)=>{let a=TJ.ppath.resolve(s.cwd,TJ.npath.toPortablePath(e));if(!(await r.baseFs.statPromise(a).catch(g=>{throw g.code==="ENOENT"?new NJ.ShellError(`cd: no such file or directory: ${e}`):g})).isDirectory())throw new NJ.ShellError(`cd: not a directory: ${e}`);return s.cwd=a,0}],["pwd",async(e,t,r)=>(r.stdout.write(`${TJ.npath.fromPortablePath(r.cwd)} +`),m(1);break}}),f.on("close",y=>{SAe.delete(f),SAe.size===0&&(process.off("SIGINT",J4t),process.off("SIGTERM",U4t)),m(y!==null?y:129)})})}}}function JYs(e){return t=>{let r=t[0]==="pipe"?new Sne.PassThrough:t[0];return{stdin:r,promise:Promise.resolve().then(()=>e({stdin:r,stdout:t[1],stderr:t[2]}))}}}var K4t=class{constructor(t){this.stream=t}close(){}get(){return this.stream}};wO.ProtectedStream=K4t;var j4t=class{constructor(){this.stream=null}close(){if(this.stream===null)throw new Error("Assertion failed: No stream attached");this.stream.end()}attach(t){this.stream=t}get(){if(this.stream===null)throw new Error("Assertion failed: No stream attached");return this.stream}},zit=class e{static start(t,{stdin:r,stdout:s,stderr:a}){let o=new e(null,t);return o.stdin=r,o.stdout=s,o.stderr=a,o}constructor(t,r){this.stdin=null,this.stdout=null,this.stderr=null,this.pipe=null,this.ancestor=t,this.implementation=r}pipeTo(t,r=wAe.STDOUT){let s=new e(this,t),a=new j4t;return s.pipe=a,s.stdout=this.stdout,s.stderr=this.stderr,(r&wAe.STDOUT)===wAe.STDOUT?this.stdout=a:this.ancestor!==null&&(this.stderr=this.ancestor.stdout),(r&wAe.STDERR)===wAe.STDERR?this.stderr=a:this.ancestor!==null&&(this.stderr=this.ancestor.stderr),s}async exec(){let t=["ignore","ignore","ignore"];if(this.pipe)t[0]="pipe";else{if(this.stdin===null)throw new Error("Assertion failed: No input stream registered");t[0]=this.stdin.get()}let r;if(this.stdout===null)throw new Error("Assertion failed: No output stream registered");r=this.stdout,t[1]=r.get();let s;if(this.stderr===null)throw new Error("Assertion failed: No error stream registered");s=this.stderr,t[2]=s.get();let a=this.implementation(t);return this.pipe&&this.pipe.attach(a.stdin),await a.promise.then(o=>(r.close(),s.close(),o))}async run(){let t=[];for(let s=this;s;s=s.ancestor)t.push(s.exec());return(await Promise.all(t))[0]}};wO.Handle=zit;function UYs(e,t){return zit.start(e,t)}function NAn(e,t=null){let r=new Sne.PassThrough,s=new YYs.StringDecoder,a="";return r.on("data",o=>{let g=s.write(o),p;do if(p=g.indexOf(` +`),p!==-1){let f=a+g.substring(0,p);g=g.substring(p+1),a="",e(t!==null?`${t} ${f}`:f)}while(p!==-1);a+=g}),r.on("end",()=>{let o=s.end();o!==""&&e(t!==null?`${t} ${o}`:o)}),r}function KYs(e,{prefix:t}){return{stdout:NAn(r=>e.stdout.write(`${r} +`),e.stdout.isTTY?t:null),stderr:NAn(r=>e.stderr.write(`${r} +`),e.stderr.isTTY?t:null)}}});var AVe=z(fj=>{"use strict";Object.defineProperty(fj,"__esModule",{value:!0});fj.globUtils=fj.ShellError=fj.EntryCommand=void 0;fj.execute=aXs;var eJt=(Oa(),Ai(Pa)),DJ=No(),GAn=uO(),jYs=eJt.__importDefault(yMt()),zYs=xt("os"),EH=xt("stream"),qYs=xt("timers/promises"),$Ys=eJt.__importDefault(SAn());fj.EntryCommand=$Ys.default;var xJ=wAn();Object.defineProperty(fj,"ShellError",{enumerable:!0,get:function(){return xJ.ShellError}});var tJt=eJt.__importStar(TAn());fj.globUtils=tJt;var q4t=z4t(),oR=z4t(),mk;(function(e){e[e.Readable=1]="Readable",e[e.Writable=2]="Writable"})(mk||(mk={}));function RAn(e,t,r){let s=new EH.PassThrough({autoDestroy:!0});switch(e){case oR.Pipe.STDIN:(t&mk.Readable)===mk.Readable&&r.stdin.pipe(s,{end:!1}),(t&mk.Writable)===mk.Writable&&r.stdin instanceof EH.Writable&&s.pipe(r.stdin,{end:!1});break;case oR.Pipe.STDOUT:(t&mk.Readable)===mk.Readable&&r.stdout.pipe(s,{end:!1}),(t&mk.Writable)===mk.Writable&&s.pipe(r.stdout,{end:!1});break;case oR.Pipe.STDERR:(t&mk.Readable)===mk.Readable&&r.stderr.pipe(s,{end:!1}),(t&mk.Writable)===mk.Writable&&s.pipe(r.stderr,{end:!1});break;default:throw new xJ.ShellError(`Bad file descriptor: "${e}"`)}return s}function $it(e,t={}){let r={...e,...t};return r.environment={...e.environment,...t.environment},r.variables={...e.variables,...t.variables},r}var eXs=new Map([["cd",async([e=(0,zYs.homedir)(),...t],r,s)=>{let a=DJ.ppath.resolve(s.cwd,DJ.npath.toPortablePath(e));if(!(await r.baseFs.statPromise(a).catch(g=>{throw g.code==="ENOENT"?new xJ.ShellError(`cd: no such file or directory: ${e}`):g})).isDirectory())throw new xJ.ShellError(`cd: not a directory: ${e}`);return s.cwd=a,0}],["pwd",async(e,t,r)=>(r.stdout.write(`${DJ.npath.fromPortablePath(r.cwd)} `),0)],[":",async(e,t,r)=>0],["true",async(e,t,r)=>0],["false",async(e,t,r)=>1],["exit",async([e,...t],r,s)=>s.exitCode=parseInt(e??s.variables["?"],10)],["echo",async(e,t,r)=>(r.stdout.write(`${e.join(" ")} -`),0)],["sleep",async([e],t,r)=>{if(typeof e>"u")throw new NJ.ShellError("sleep: missing operand");let s=Number(e);if(Number.isNaN(s))throw new NJ.ShellError(`sleep: invalid time interval '${e}'`);return await(0,H5s.setTimeout)(1e3*s,0)}],["unset",async(e,t,r)=>{for(let s of e)delete r.environment[s],delete r.variables[s];return 0}],["__ysh_run_procedure",async(e,t,r)=>{let s=r.procedures[e[0]];return await(0,sR.start)(s,{stdin:new sR.ProtectedStream(r.stdin),stdout:new sR.ProtectedStream(r.stdout),stderr:new sR.ProtectedStream(r.stderr)}).run()}],["__ysh_set_redirects",async(e,t,r)=>{let s=r.stdin,a=r.stdout,o=r.stderr,g=[],p=[],f=[],m=0;for(;e[m]!=="--";){let B=e[m++],{type:v,fd:G}=JSON.parse(B),T=le=>{switch(G){case null:case 0:g.push(le);break;default:throw new Error(`Unsupported file descriptor: "${G}"`)}},O=le=>{switch(G){case null:case 1:p.push(le);break;case 2:f.push(le);break;default:throw new Error(`Unsupported file descriptor: "${G}"`)}},X=Number(e[m++]),U=m+X;for(let le=m;let.baseFs.createReadStream(TJ.ppath.resolve(r.cwd,TJ.npath.toPortablePath(e[le]))));break;case"<<<":T(()=>{let ae=new yH.PassThrough;return process.nextTick(()=>{ae.write(`${e[le]} -`),ae.end()}),ae});break;case"<&":T(()=>BAn(Number(e[le]),Ak.Readable,r));break;case">":case">>":{let ae=TJ.ppath.resolve(r.cwd,TJ.npath.toPortablePath(e[le]));O(ae==="/dev/null"?new yH.Writable({autoDestroy:!0,emitClose:!0,write(ge,fe,pe){setImmediate(pe)}}):t.baseFs.createWriteStream(ae,v===">>"?{flags:"a"}:void 0))}break;case">&":O(BAn(Number(e[le]),Ak.Writable,r));break;default:throw new Error(`Assertion failed: Unsupported redirection type: "${v}"`)}}if(g.length>0){let B=new yH.PassThrough;s=B;let v=G=>{if(G===g.length)B.end();else{let T=g[G]();T.pipe(B,{end:!1}),T.on("end",()=>{v(G+1)})}};v(0)}if(p.length>0){let B=new yH.PassThrough;a=B;for(let v of p)B.pipe(v)}if(f.length>0){let B=new yH.PassThrough;o=B;for(let v of f)B.pipe(v)}let y=await(0,sR.start)(AVe(e.slice(m+1),t,r),{stdin:new sR.ProtectedStream(s),stdout:new sR.ProtectedStream(a),stderr:new sR.ProtectedStream(o)}).run();return await Promise.all(p.map(B=>new Promise((v,G)=>{B.on("error",T=>{G(T)}),B.on("close",()=>{v()}),B.end()}))),await Promise.all(f.map(B=>new Promise((v,G)=>{B.on("error",T=>{G(T)}),B.on("close",()=>{v()}),B.end()}))),y}]]);async function U5s(e,t,r){let s=[],a=new yH.PassThrough;return a.on("data",o=>s.push(o)),await qit(e,t,zit(r,{stdout:a})),Buffer.concat(s).toString().replace(/[\r\n]+$/,"")}async function vAn(e,t,r){let s=e.map(async o=>{let g=await hAe(o.args,t,r);return{name:o.name,value:g.join(" ")}});return(await Promise.all(s)).reduce((o,g)=>(o[g.name]=g.value,o),{})}function jit(e){return e.match(/[^ \r\n\t]+/g)||[]}async function NAn(e,t,r,s,a=s){switch(e.name){case"$":s(String(process.pid));break;case"#":s(String(t.args.length));break;case"@":if(e.quoted)for(let o of t.args)a(o);else for(let o of t.args){let g=jit(o);for(let p=0;p=0&&o"u"&&(e.defaultValue?g=(await hAe(e.defaultValue,t,r)).join(" "):e.alternativeValue&&(g="")),typeof g>"u")throw p?new NJ.ShellError(`Unbound argument #${o}`):new NJ.ShellError(`Unbound variable "${e.name}"`);if(e.quoted)s(g);else{let f=jit(g);for(let y=0;ye+t,subtraction:(e,t)=>e-t,multiplication:(e,t)=>e*t,division:(e,t)=>Math.trunc(e/t)};async function gVe(e,t,r){if(e.type==="number"){if(Number.isInteger(e.value))return e.value;throw new Error(`Invalid number: "${e.value}", only integers are allowed`)}else if(e.type==="variable"){let s=[];await NAn({...e,quoted:!0},t,r,o=>s.push(o));let a=Number(s.join(" "));return Number.isNaN(a)?gVe({type:"variable",name:s.join(" ")},t,r):gVe({type:"number",value:a},t,r)}else return K5s[e.type](await gVe(e.left,t,r),await gVe(e.right,t,r))}async function hAe(e,t,r){let s=new Map,a=[],o=[],g=y=>{o.push(y)},p=()=>{o.length>0&&a.push(o.join("")),o=[]},f=y=>{g(y),p()},m=(y,B,v)=>{let G=JSON.stringify({type:y,fd:B}),T=s.get(G);typeof T>"u"&&s.set(G,T=[]),T.push(v)};for(let y of e){let B=!1;switch(y.type){case"redirection":{let v=await hAe(y.args,t,r);for(let G of v)m(y.subtype,y.fd,G)}break;case"argument":for(let v of y.segments)switch(v.type){case"text":g(v.text);break;case"glob":g(v.pattern),B=!0;break;case"shell":{let G=await U5s(v.shell,t,r);if(v.quoted)g(G);else{let T=jit(G);for(let O=0;O"u")throw new Error("Assertion failed: Expected a glob pattern to have been set");let G=await t.glob.match(v,{cwd:r.cwd,baseFs:t.baseFs});if(G.length===0){let T=q4t.isBraceExpansion(v)?". Note: Brace expansion of arbitrary strings isn't currently supported. For more details, please read this issue: https://github.com/yarnpkg/berry/issues/22":"";throw new NJ.ShellError(`No matches found: "${v}"${T}`)}for(let T of G.sort())f(T)}}if(s.size>0){let y=[];for(let[B,v]of s.entries())y.splice(y.length,0,B,String(v.length),...v);a.splice(0,0,"__ysh_set_redirects",...y,"--")}return a}function AVe(e,t,r){t.builtins.has(e[0])||(e=["command",...e]);let s=TJ.npath.fromPortablePath(r.cwd),a=r.environment;typeof a.PWD<"u"&&(a={...a,PWD:s});let[o,...g]=e;if(o==="command")return(0,K4t.makeProcess)(g[0],g.slice(1),t,{cwd:s,env:a});let p=t.builtins.get(o);if(typeof p>"u")throw new Error(`Assertion failed: A builtin should exist for "${o}"`);return(0,K4t.makeBuiltin)(async({stdin:f,stdout:m,stderr:y})=>{let{stdin:B,stdout:v,stderr:G}=r;r.stdin=f,r.stdout=m,r.stderr=y;try{return await p(g,t,r)}finally{r.stdin=B,r.stdout=v,r.stderr=G}})}function j5s(e,t,r){return s=>{let a=new yH.PassThrough,o=qit(e,t,zit(r,{stdin:a}));return{stdin:a,promise:o}}}function z5s(e,t,r){return s=>{let a=new yH.PassThrough,o=qit(e,t,r);return{stdin:a,promise:o}}}function SAn(e,t,r,s){if(t.length===0)return e;{let a;do a=String(Math.random());while(Object.hasOwn(s.procedures,a));return s.procedures={...s.procedures},s.procedures[a]=e,AVe([...t,"__ysh_run_procedure",a],r,s)}}async function wAn(e,t,r){let s=e,a=null,o=null;for(;s;){let g=s.then?{...r}:r,p;switch(s.type){case"command":{let f=await hAe(s.args,t,r),m=await vAn(s.envs,t,r);p=s.envs.length?AVe(f,t,zit(g,{environment:m})):AVe(f,t,g)}break;case"subshell":{let f=await hAe(s.args,t,r),m=j5s(s.subshell,t,g);p=SAn(m,f,t,g)}break;case"group":{let f=await hAe(s.args,t,r),m=z5s(s.group,t,g);p=SAn(m,f,t,g)}break;case"envs":{let f=await vAn(s.envs,t,r);g.environment={...g.environment,...f},p=AVe(["true"],t,g)}break}if(typeof p>"u")throw new Error("Assertion failed: An action should have been generated");if(a===null)o=(0,sR.start)(p,{stdin:new sR.ProtectedStream(g.stdin),stdout:new sR.ProtectedStream(g.stdout),stderr:new sR.ProtectedStream(g.stderr)});else{if(o===null)throw new Error("Assertion failed: The execution pipeline should have been setup");switch(a){case"|":o=o.pipeTo(p,sR.Pipe.STDOUT);break;case"|&":o=o.pipeTo(p,sR.Pipe.STDOUT|sR.Pipe.STDERR);break}}s.then?(a=s.then.type,s=s.then.chain):s=null}if(o===null)throw new Error("Assertion failed: The execution pipeline should have been setup");return await o.run()}async function q5s(e,t,r,{background:s=!1}={}){function a(o){let g=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],p=g[o%g.length];return Q5s.default.hex(p)}if(s){let o=r.nextBackgroundJobIndex++,g=a(o),p=`[${o}]`,f=g(p),{stdout:m,stderr:y}=(0,K4t.createOutputStreamsWithPrefix)(r,{prefix:f});return r.backgroundJobs.push(wAn(e,t,zit(r,{stdout:m,stderr:y})).catch(B=>y.write(`${B.message} -`)).finally(()=>{r.stdout.isTTY&&r.stdout.write(`Job ${f}, '${g((0,TAn.stringifyCommandChain)(e))}' has ended -`)})),0}return await wAn(e,t,r)}async function $5s(e,t,r,{background:s=!1}={}){let a,o=p=>{a=p,r.variables["?"]=String(p)},g=async p=>{try{return await q5s(p.chain,t,r,{background:s&&typeof p.then>"u"})}catch(f){if(!(f instanceof NJ.ShellError))throw f;return r.stderr.write(`${f.message} -`),1}};for(o(await g(e));e.then;){if(r.exitCode!==null)return r.exitCode;switch(e.then.type){case"&&":a===0&&o(await g(e.then.line));break;case"||":a!==0&&o(await g(e.then.line));break;default:throw new Error(`Assertion failed: Unsupported command type: "${e.then.type}"`)}e=e.then.line}return a}async function qit(e,t,r){let s=r.backgroundJobs;r.backgroundJobs=[];let a=0;for(let{command:o,type:g}of e){if(a=await $5s(o,t,r,{background:g==="&"}),r.exitCode!==null)return r.exitCode;r.variables["?"]=String(a)}return await Promise.all(r.backgroundJobs),r.backgroundJobs=s,a}function RAn(e){switch(e.type){case"variable":return e.name==="@"||e.name==="#"||e.name==="*"||Number.isFinite(parseInt(e.name,10))||"defaultValue"in e&&!!e.defaultValue&&e.defaultValue.some(t=>dVe(t))||"alternativeValue"in e&&!!e.alternativeValue&&e.alternativeValue.some(t=>dVe(t));case"arithmetic":return j4t(e.arithmetic);case"shell":return $4t(e.shell);default:return!1}}function dVe(e){switch(e.type){case"redirection":return e.args.some(t=>dVe(t));case"argument":return e.segments.some(t=>RAn(t));default:throw new Error(`Assertion failed: Unsupported argument type: "${e.type}"`)}}function j4t(e){switch(e.type){case"variable":return RAn(e);case"number":return!1;default:return j4t(e.left)||j4t(e.right)}}function $4t(e){return e.some(({command:t})=>{for(;t;){let r=t.chain;for(;r;){let s;switch(r.type){case"subshell":s=$4t(r.subshell);break;case"command":s=r.envs.some(a=>a.args.some(o=>dVe(o)))||r.args.some(a=>dVe(a));break}if(s)return!0;if(!r.then)break;r=r.then.chain}if(!t.then)break;t=t.then.line}return!1})}async function eXs(e,t=[],{baseFs:r=new TJ.NodeFS,builtins:s={},cwd:a=TJ.npath.toPortablePath(process.cwd()),env:o=process.env,stdin:g=process.stdin,stdout:p=process.stdout,stderr:f=process.stderr,variables:m={},glob:y=q4t}={}){let B={};for(let[T,O]of Object.entries(o))typeof O<"u"&&(B[T]=O);let v=new Map(J5s);for(let[T,O]of Object.entries(s))v.set(T,O);g===null&&(g=new yH.PassThrough,g.end());let G=(0,TAn.parseShell)(e,y);if(!$4t(G)&&G.length>0&&t.length>0){let{command:T}=G[G.length-1];for(;T.then;)T=T.then.line;let O=T.chain;for(;O.then;)O=O.then.chain;O.type==="command"&&(O.args=O.args.concat(t.map(X=>({type:"argument",segments:[{type:"text",text:X}]}))))}return await qit(G,{args:t,baseFs:r,builtins:v,initialStdin:g,initialStdout:p,initialStderr:f,glob:y},{cwd:a,environment:B,exitCode:null,procedures:{},stdin:g,stdout:p,stderr:f,variables:Object.assign({},m,{"?":0}),nextBackgroundJobIndex:1,backgroundJobs:[]})}});var eJt=z((pOc,DAn)=>{function tXs(e,t){for(var r=-1,s=e==null?0:e.length,a=Array(s);++r{var xAn=eAe(),rXs=eJt(),nXs=dH(),iXs=Q9e(),sXs=1/0,kAn=xAn?xAn.prototype:void 0,GAn=kAn?kAn.toString:void 0;function FAn(e){if(typeof e=="string")return e;if(nXs(e))return rXs(e,FAn)+"";if(iXs(e))return GAn?GAn.call(e):"";var t=e+"";return t=="0"&&1/e==-sXs?"-0":t}ZAn.exports=FAn});var $it=z((IOc,VAn)=>{var oXs=LAn();function aXs(e){return e==null?"":oXs(e)}VAn.exports=aXs});var tJt=z((COc,WAn)=>{function cXs(e,t,r){var s=-1,a=e.length;t<0&&(t=-t>a?0:a+t),r=r>a?a:r,r<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=Array(a);++s{var lXs=tJt();function uXs(e,t,r){var s=e.length;return r=r===void 0?s:r,!t&&r>=s?e:lXs(e,t,r)}PAn.exports=uXs});var rJt=z((hOc,MAn)=>{var gXs="\\ud800-\\udfff",AXs="\\u0300-\\u036f",dXs="\\ufe20-\\ufe2f",pXs="\\u20d0-\\u20ff",fXs=AXs+dXs+pXs,IXs="\\ufe0e\\ufe0f",CXs="\\u200d",mXs=RegExp("["+CXs+gXs+fXs+IXs+"]");function hXs(e){return mXs.test(e)}MAn.exports=hXs});var YAn=z((_Oc,QAn)=>{function _Xs(e){return e.split("")}QAn.exports=_Xs});var qAn=z((yOc,zAn)=>{var HAn="\\ud800-\\udfff",yXs="\\u0300-\\u036f",bXs="\\ufe20-\\ufe2f",EXs="\\u20d0-\\u20ff",BXs=yXs+bXs+EXs,vXs="\\ufe0e\\ufe0f",SXs="["+HAn+"]",nJt="["+BXs+"]",iJt="\\ud83c[\\udffb-\\udfff]",wXs="(?:"+nJt+"|"+iJt+")",XAn="[^"+HAn+"]",JAn="(?:\\ud83c[\\udde6-\\uddff]){2}",UAn="[\\ud800-\\udbff][\\udc00-\\udfff]",TXs="\\u200d",KAn=wXs+"?",jAn="["+vXs+"]?",NXs="(?:"+TXs+"(?:"+[XAn,JAn,UAn].join("|")+")"+jAn+KAn+")*",RXs=jAn+KAn+NXs,DXs="(?:"+[XAn+nJt+"?",nJt,JAn,UAn,SXs].join("|")+")",xXs=RegExp(iJt+"(?="+iJt+")|"+DXs+RXs,"g");function kXs(e){return e.match(xXs)||[]}zAn.exports=kXs});var edn=z((bOc,$An)=>{var GXs=YAn(),FXs=rJt(),ZXs=qAn();function LXs(e){return FXs(e)?ZXs(e):GXs(e)}$An.exports=LXs});var rdn=z((EOc,tdn)=>{var VXs=OAn(),WXs=rJt(),PXs=edn(),OXs=$it();function MXs(e){return function(t){t=OXs(t);var r=WXs(t)?PXs(t):void 0,s=r?r[0]:t.charAt(0),a=r?VXs(r,1).join(""):t.slice(1);return s[e]()+a}}tdn.exports=MXs});var idn=z((BOc,ndn)=>{var QXs=rdn(),YXs=QXs("toUpperCase");ndn.exports=YXs});var sJt=z((vOc,sdn)=>{var HXs=$it(),XXs=idn();function JXs(e){return XXs(HXs(e).toLowerCase())}sdn.exports=JXs});var odn=z((SOc,est)=>{function UXs(){var e=0,t=1,r=2,s=3,a=4,o=5,g=6,p=7,f=8,m=9,y=10,B=11,v=12,G=13,T=14,O=15,X=16,U=17,le=0,ae=1,ge=2,fe=3,pe=4;function he(x,et){return 55296<=x.charCodeAt(et)&&x.charCodeAt(et)<=56319&&56320<=x.charCodeAt(et+1)&&x.charCodeAt(et+1)<=57343}function be(x,et){et===void 0&&(et=0);var Ue=x.charCodeAt(et);if(55296<=Ue&&Ue<=56319&&et=1){var Je=x.charCodeAt(et-1),Xe=Ue;return 55296<=Je&&Je<=56319?(Je-55296)*1024+(Xe-56320)+65536:Xe}return Ue}function Te(x,et,Ue){var Je=[x].concat(et).concat([Ue]),Xe=Je[Je.length-2],ft=Ue,Gt=Je.lastIndexOf(T);if(Gt>1&&Je.slice(1,Gt).every(function(Ot){return Ot==s})&&[s,G,U].indexOf(x)==-1)return ge;var er=Je.lastIndexOf(a);if(er>0&&Je.slice(1,er).every(function(Ot){return Ot==a})&&[v,a].indexOf(Xe)==-1)return Je.filter(function(Ot){return Ot==a}).length%2==1?fe:pe;if(Xe==e&&ft==t)return le;if(Xe==r||Xe==e||Xe==t)return ft==T&&et.every(function(Ot){return Ot==s})?ge:ae;if(ft==r||ft==e||ft==t)return ae;if(Xe==g&&(ft==g||ft==p||ft==m||ft==y))return le;if((Xe==m||Xe==p)&&(ft==p||ft==f))return le;if((Xe==y||Xe==f)&&ft==f)return le;if(ft==s||ft==O)return le;if(ft==o)return le;if(Xe==v)return le;var Ur=Je.indexOf(s)!=-1?Je.lastIndexOf(s)-1:Je.length-2;return[G,U].indexOf(Je[Ur])!=-1&&Je.slice(Ur+1,-1).every(function(Ot){return Ot==s})&&ft==T||Xe==O&&[X,U].indexOf(ft)!=-1?le:et.indexOf(a)!=-1?ge:Xe==a&&ft==a?le:ae}this.nextBreak=function(x,et){if(et===void 0&&(et=0),et<0)return 0;if(et>=x.length-1)return x.length;for(var Ue=ke(be(x,et)),Je=[],Xe=et+1;Xe{var KXs=/^(.*?)(\x1b\[[^m]+m|\x1b\]8;;.*?(\x1b\\|\u0007))/,tst;function jXs(){if(tst)return tst;if(typeof Intl.Segmenter<"u"){let e=new Intl.Segmenter("en",{granularity:"grapheme"});return tst=t=>Array.from(e.segment(t),({segment:r})=>r)}else{let e=odn(),t=new e;return tst=r=>t.splitGraphemes(r)}}adn.exports=(e,t=0,r=e.length)=>{if(t<0||r<0)throw new RangeError("Negative indices aren't supported by this implementation");let s=r-t,a="",o=0,g=0;for(;e.length>0;){let p=e.match(KXs)||[e,e,void 0],f=jXs()(p[1]),m=Math.min(t-o,f.length);f=f.slice(m);let y=Math.min(s-g,f.length);a+=f.slice(0,y).join(""),o+=m,g+=y,typeof p[2]<"u"&&(a+=p[2]),e=e.slice(p[0].length)}return a}});var pVe=z(rst=>{"use strict";Object.defineProperty(rst,"__esModule",{value:!0});rst.YarnVersion=void 0;rst.YarnVersion=process.env.YARN_IS_TEST_ENV?"0.0.0":"1.1.11-atls"});var fVe=z(vO=>{"use strict";Object.defineProperty(vO,"__esModule",{value:!0});vO.StreamReport=vO.SUPPORTS_GROUPS=vO.SINGLE_LINE_CHAR=void 0;vO.formatName=cJt;vO.formatNameWithHyperlink=Adn;vO.reportOptionDeprecations=n4s;var aJt=(Ma(),Ai(Oa)),zXs=aJt.__importDefault(cdn()),oJt=aJt.__importDefault(Uge()),RJ=TL(),qXs=CO(),$Xs=pVe(),bH=aJt.__importStar(pO());vO.SINGLE_LINE_CHAR="\xB7";var ldn=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"],udn=80,vne=oJt.default.GITHUB_ACTIONS?{start:e=>`::group::${e} +`),0)],["sleep",async([e],t,r)=>{if(typeof e>"u")throw new xJ.ShellError("sleep: missing operand");let s=Number(e);if(Number.isNaN(s))throw new xJ.ShellError(`sleep: invalid time interval '${e}'`);return await(0,qYs.setTimeout)(1e3*s,0)}],["unset",async(e,t,r)=>{for(let s of e)delete r.environment[s],delete r.variables[s];return 0}],["__ysh_run_procedure",async(e,t,r)=>{let s=r.procedures[e[0]];return await(0,oR.start)(s,{stdin:new oR.ProtectedStream(r.stdin),stdout:new oR.ProtectedStream(r.stdout),stderr:new oR.ProtectedStream(r.stderr)}).run()}],["__ysh_set_redirects",async(e,t,r)=>{let s=r.stdin,a=r.stdout,o=r.stderr,g=[],p=[],f=[],m=0;for(;e[m]!=="--";){let B=e[m++],{type:v,fd:k}=JSON.parse(B),T=le=>{switch(k){case null:case 0:g.push(le);break;default:throw new Error(`Unsupported file descriptor: "${k}"`)}},O=le=>{switch(k){case null:case 1:p.push(le);break;case 2:f.push(le);break;default:throw new Error(`Unsupported file descriptor: "${k}"`)}},X=Number(e[m++]),U=m+X;for(let le=m;let.baseFs.createReadStream(DJ.ppath.resolve(r.cwd,DJ.npath.toPortablePath(e[le]))));break;case"<<<":T(()=>{let ae=new EH.PassThrough;return process.nextTick(()=>{ae.write(`${e[le]} +`),ae.end()}),ae});break;case"<&":T(()=>RAn(Number(e[le]),mk.Readable,r));break;case">":case">>":{let ae=DJ.ppath.resolve(r.cwd,DJ.npath.toPortablePath(e[le]));O(ae==="/dev/null"?new EH.Writable({autoDestroy:!0,emitClose:!0,write(ge,fe,pe){setImmediate(pe)}}):t.baseFs.createWriteStream(ae,v===">>"?{flags:"a"}:void 0))}break;case">&":O(RAn(Number(e[le]),mk.Writable,r));break;default:throw new Error(`Assertion failed: Unsupported redirection type: "${v}"`)}}if(g.length>0){let B=new EH.PassThrough;s=B;let v=k=>{if(k===g.length)B.end();else{let T=g[k]();T.pipe(B,{end:!1}),T.on("end",()=>{v(k+1)})}};v(0)}if(p.length>0){let B=new EH.PassThrough;a=B;for(let v of p)B.pipe(v)}if(f.length>0){let B=new EH.PassThrough;o=B;for(let v of f)B.pipe(v)}let y=await(0,oR.start)(pVe(e.slice(m+1),t,r),{stdin:new oR.ProtectedStream(s),stdout:new oR.ProtectedStream(a),stderr:new oR.ProtectedStream(o)}).run();return await Promise.all(p.map(B=>new Promise((v,k)=>{B.on("error",T=>{k(T)}),B.on("close",()=>{v()}),B.end()}))),await Promise.all(f.map(B=>new Promise((v,k)=>{B.on("error",T=>{k(T)}),B.on("close",()=>{v()}),B.end()}))),y}]]);async function tXs(e,t,r){let s=[],a=new EH.PassThrough;return a.on("data",o=>s.push(o)),await est(e,t,$it(r,{stdout:a})),Buffer.concat(s).toString().replace(/[\r\n]+$/,"")}async function DAn(e,t,r){let s=e.map(async o=>{let g=await TAe(o.args,t,r);return{name:o.name,value:g.join(" ")}});return(await Promise.all(s)).reduce((o,g)=>(o[g.name]=g.value,o),{})}function qit(e){return e.match(/[^ \r\n\t]+/g)||[]}async function FAn(e,t,r,s,a=s){switch(e.name){case"$":s(String(process.pid));break;case"#":s(String(t.args.length));break;case"@":if(e.quoted)for(let o of t.args)a(o);else for(let o of t.args){let g=qit(o);for(let p=0;p=0&&o"u"&&(e.defaultValue?g=(await TAe(e.defaultValue,t,r)).join(" "):e.alternativeValue&&(g="")),typeof g>"u")throw p?new xJ.ShellError(`Unbound argument #${o}`):new xJ.ShellError(`Unbound variable "${e.name}"`);if(e.quoted)s(g);else{let f=qit(g);for(let y=0;ye+t,subtraction:(e,t)=>e-t,multiplication:(e,t)=>e*t,division:(e,t)=>Math.trunc(e/t)};async function dVe(e,t,r){if(e.type==="number"){if(Number.isInteger(e.value))return e.value;throw new Error(`Invalid number: "${e.value}", only integers are allowed`)}else if(e.type==="variable"){let s=[];await FAn({...e,quoted:!0},t,r,o=>s.push(o));let a=Number(s.join(" "));return Number.isNaN(a)?dVe({type:"variable",name:s.join(" ")},t,r):dVe({type:"number",value:a},t,r)}else return rXs[e.type](await dVe(e.left,t,r),await dVe(e.right,t,r))}async function TAe(e,t,r){let s=new Map,a=[],o=[],g=y=>{o.push(y)},p=()=>{o.length>0&&a.push(o.join("")),o=[]},f=y=>{g(y),p()},m=(y,B,v)=>{let k=JSON.stringify({type:y,fd:B}),T=s.get(k);typeof T>"u"&&s.set(k,T=[]),T.push(v)};for(let y of e){let B=!1;switch(y.type){case"redirection":{let v=await TAe(y.args,t,r);for(let k of v)m(y.subtype,y.fd,k)}break;case"argument":for(let v of y.segments)switch(v.type){case"text":g(v.text);break;case"glob":g(v.pattern),B=!0;break;case"shell":{let k=await tXs(v.shell,t,r);if(v.quoted)g(k);else{let T=qit(k);for(let O=0;O"u")throw new Error("Assertion failed: Expected a glob pattern to have been set");let k=await t.glob.match(v,{cwd:r.cwd,baseFs:t.baseFs});if(k.length===0){let T=tJt.isBraceExpansion(v)?". Note: Brace expansion of arbitrary strings isn't currently supported. For more details, please read this issue: https://github.com/yarnpkg/berry/issues/22":"";throw new xJ.ShellError(`No matches found: "${v}"${T}`)}for(let T of k.sort())f(T)}}if(s.size>0){let y=[];for(let[B,v]of s.entries())y.splice(y.length,0,B,String(v.length),...v);a.splice(0,0,"__ysh_set_redirects",...y,"--")}return a}function pVe(e,t,r){t.builtins.has(e[0])||(e=["command",...e]);let s=DJ.npath.fromPortablePath(r.cwd),a=r.environment;typeof a.PWD<"u"&&(a={...a,PWD:s});let[o,...g]=e;if(o==="command")return(0,q4t.makeProcess)(g[0],g.slice(1),t,{cwd:s,env:a});let p=t.builtins.get(o);if(typeof p>"u")throw new Error(`Assertion failed: A builtin should exist for "${o}"`);return(0,q4t.makeBuiltin)(async({stdin:f,stdout:m,stderr:y})=>{let{stdin:B,stdout:v,stderr:k}=r;r.stdin=f,r.stdout=m,r.stderr=y;try{return await p(g,t,r)}finally{r.stdin=B,r.stdout=v,r.stderr=k}})}function nXs(e,t,r){return s=>{let a=new EH.PassThrough,o=est(e,t,$it(r,{stdin:a}));return{stdin:a,promise:o}}}function iXs(e,t,r){return s=>{let a=new EH.PassThrough,o=est(e,t,r);return{stdin:a,promise:o}}}function xAn(e,t,r,s){if(t.length===0)return e;{let a;do a=String(Math.random());while(Object.hasOwn(s.procedures,a));return s.procedures={...s.procedures},s.procedures[a]=e,pVe([...t,"__ysh_run_procedure",a],r,s)}}async function kAn(e,t,r){let s=e,a=null,o=null;for(;s;){let g=s.then?{...r}:r,p;switch(s.type){case"command":{let f=await TAe(s.args,t,r),m=await DAn(s.envs,t,r);p=s.envs.length?pVe(f,t,$it(g,{environment:m})):pVe(f,t,g)}break;case"subshell":{let f=await TAe(s.args,t,r),m=nXs(s.subshell,t,g);p=xAn(m,f,t,g)}break;case"group":{let f=await TAe(s.args,t,r),m=iXs(s.group,t,g);p=xAn(m,f,t,g)}break;case"envs":{let f=await DAn(s.envs,t,r);g.environment={...g.environment,...f},p=pVe(["true"],t,g)}break}if(typeof p>"u")throw new Error("Assertion failed: An action should have been generated");if(a===null)o=(0,oR.start)(p,{stdin:new oR.ProtectedStream(g.stdin),stdout:new oR.ProtectedStream(g.stdout),stderr:new oR.ProtectedStream(g.stderr)});else{if(o===null)throw new Error("Assertion failed: The execution pipeline should have been setup");switch(a){case"|":o=o.pipeTo(p,oR.Pipe.STDOUT);break;case"|&":o=o.pipeTo(p,oR.Pipe.STDOUT|oR.Pipe.STDERR);break}}s.then?(a=s.then.type,s=s.then.chain):s=null}if(o===null)throw new Error("Assertion failed: The execution pipeline should have been setup");return await o.run()}async function sXs(e,t,r,{background:s=!1}={}){function a(o){let g=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],p=g[o%g.length];return jYs.default.hex(p)}if(s){let o=r.nextBackgroundJobIndex++,g=a(o),p=`[${o}]`,f=g(p),{stdout:m,stderr:y}=(0,q4t.createOutputStreamsWithPrefix)(r,{prefix:f});return r.backgroundJobs.push(kAn(e,t,$it(r,{stdout:m,stderr:y})).catch(B=>y.write(`${B.message} +`)).finally(()=>{r.stdout.isTTY&&r.stdout.write(`Job ${f}, '${g((0,GAn.stringifyCommandChain)(e))}' has ended +`)})),0}return await kAn(e,t,r)}async function oXs(e,t,r,{background:s=!1}={}){let a,o=p=>{a=p,r.variables["?"]=String(p)},g=async p=>{try{return await sXs(p.chain,t,r,{background:s&&typeof p.then>"u"})}catch(f){if(!(f instanceof xJ.ShellError))throw f;return r.stderr.write(`${f.message} +`),1}};for(o(await g(e));e.then;){if(r.exitCode!==null)return r.exitCode;switch(e.then.type){case"&&":a===0&&o(await g(e.then.line));break;case"||":a!==0&&o(await g(e.then.line));break;default:throw new Error(`Assertion failed: Unsupported command type: "${e.then.type}"`)}e=e.then.line}return a}async function est(e,t,r){let s=r.backgroundJobs;r.backgroundJobs=[];let a=0;for(let{command:o,type:g}of e){if(a=await oXs(o,t,r,{background:g==="&"}),r.exitCode!==null)return r.exitCode;r.variables["?"]=String(a)}return await Promise.all(r.backgroundJobs),r.backgroundJobs=s,a}function ZAn(e){switch(e.type){case"variable":return e.name==="@"||e.name==="#"||e.name==="*"||Number.isFinite(parseInt(e.name,10))||"defaultValue"in e&&!!e.defaultValue&&e.defaultValue.some(t=>fVe(t))||"alternativeValue"in e&&!!e.alternativeValue&&e.alternativeValue.some(t=>fVe(t));case"arithmetic":return $4t(e.arithmetic);case"shell":return rJt(e.shell);default:return!1}}function fVe(e){switch(e.type){case"redirection":return e.args.some(t=>fVe(t));case"argument":return e.segments.some(t=>ZAn(t));default:throw new Error(`Assertion failed: Unsupported argument type: "${e.type}"`)}}function $4t(e){switch(e.type){case"variable":return ZAn(e);case"number":return!1;default:return $4t(e.left)||$4t(e.right)}}function rJt(e){return e.some(({command:t})=>{for(;t;){let r=t.chain;for(;r;){let s;switch(r.type){case"subshell":s=rJt(r.subshell);break;case"command":s=r.envs.some(a=>a.args.some(o=>fVe(o)))||r.args.some(a=>fVe(a));break}if(s)return!0;if(!r.then)break;r=r.then.chain}if(!t.then)break;t=t.then.line}return!1})}async function aXs(e,t=[],{baseFs:r=new DJ.NodeFS,builtins:s={},cwd:a=DJ.npath.toPortablePath(process.cwd()),env:o=process.env,stdin:g=process.stdin,stdout:p=process.stdout,stderr:f=process.stderr,variables:m={},glob:y=tJt}={}){let B={};for(let[T,O]of Object.entries(o))typeof O<"u"&&(B[T]=O);let v=new Map(eXs);for(let[T,O]of Object.entries(s))v.set(T,O);g===null&&(g=new EH.PassThrough,g.end());let k=(0,GAn.parseShell)(e,y);if(!rJt(k)&&k.length>0&&t.length>0){let{command:T}=k[k.length-1];for(;T.then;)T=T.then.line;let O=T.chain;for(;O.then;)O=O.then.chain;O.type==="command"&&(O.args=O.args.concat(t.map(X=>({type:"argument",segments:[{type:"text",text:X}]}))))}return await est(k,{args:t,baseFs:r,builtins:v,initialStdin:g,initialStdout:p,initialStderr:f,glob:y},{cwd:a,environment:B,exitCode:null,procedures:{},stdin:g,stdout:p,stderr:f,variables:Object.assign({},m,{"?":0}),nextBackgroundJobIndex:1,backgroundJobs:[]})}});var nJt=z((ROc,LAn)=>{function cXs(e,t){for(var r=-1,s=e==null?0:e.length,a=Array(s);++r{var VAn=lAe(),lXs=nJt(),uXs=fH(),gXs=Y9e(),AXs=1/0,WAn=VAn?VAn.prototype:void 0,PAn=WAn?WAn.toString:void 0;function OAn(e){if(typeof e=="string")return e;if(uXs(e))return lXs(e,OAn)+"";if(gXs(e))return PAn?PAn.call(e):"";var t=e+"";return t=="0"&&1/e==-AXs?"-0":t}QAn.exports=OAn});var tst=z((xOc,HAn)=>{var dXs=MAn();function pXs(e){return e==null?"":dXs(e)}HAn.exports=pXs});var iJt=z((kOc,YAn)=>{function fXs(e,t,r){var s=-1,a=e.length;t<0&&(t=-t>a?0:a+t),r=r>a?a:r,r<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=Array(a);++s{var IXs=iJt();function CXs(e,t,r){var s=e.length;return r=r===void 0?s:r,!t&&r>=s?e:IXs(e,t,r)}XAn.exports=CXs});var sJt=z((FOc,UAn)=>{var mXs="\\ud800-\\udfff",hXs="\\u0300-\\u036f",_Xs="\\ufe20-\\ufe2f",yXs="\\u20d0-\\u20ff",bXs=hXs+_Xs+yXs,EXs="\\ufe0e\\ufe0f",BXs="\\u200d",vXs=RegExp("["+BXs+mXs+bXs+EXs+"]");function SXs(e){return vXs.test(e)}UAn.exports=SXs});var jAn=z((ZOc,KAn)=>{function wXs(e){return e.split("")}KAn.exports=wXs});var idn=z((LOc,ndn)=>{var zAn="\\ud800-\\udfff",TXs="\\u0300-\\u036f",NXs="\\ufe20-\\ufe2f",RXs="\\u20d0-\\u20ff",DXs=TXs+NXs+RXs,xXs="\\ufe0e\\ufe0f",kXs="["+zAn+"]",oJt="["+DXs+"]",aJt="\\ud83c[\\udffb-\\udfff]",GXs="(?:"+oJt+"|"+aJt+")",qAn="[^"+zAn+"]",$An="(?:\\ud83c[\\udde6-\\uddff]){2}",edn="[\\ud800-\\udbff][\\udc00-\\udfff]",FXs="\\u200d",tdn=GXs+"?",rdn="["+xXs+"]?",ZXs="(?:"+FXs+"(?:"+[qAn,$An,edn].join("|")+")"+rdn+tdn+")*",LXs=rdn+tdn+ZXs,VXs="(?:"+[qAn+oJt+"?",oJt,$An,edn,kXs].join("|")+")",WXs=RegExp(aJt+"(?="+aJt+")|"+VXs+LXs,"g");function PXs(e){return e.match(WXs)||[]}ndn.exports=PXs});var odn=z((VOc,sdn)=>{var OXs=jAn(),QXs=sJt(),MXs=idn();function HXs(e){return QXs(e)?MXs(e):OXs(e)}sdn.exports=HXs});var cdn=z((WOc,adn)=>{var YXs=JAn(),XXs=sJt(),JXs=odn(),UXs=tst();function KXs(e){return function(t){t=UXs(t);var r=XXs(t)?JXs(t):void 0,s=r?r[0]:t.charAt(0),a=r?YXs(r,1).join(""):t.slice(1);return s[e]()+a}}adn.exports=KXs});var udn=z((POc,ldn)=>{var jXs=cdn(),zXs=jXs("toUpperCase");ldn.exports=zXs});var cJt=z((OOc,gdn)=>{var qXs=tst(),$Xs=udn();function e4s(e){return $Xs(qXs(e).toLowerCase())}gdn.exports=e4s});var Adn=z((QOc,rst)=>{function t4s(){var e=0,t=1,r=2,s=3,a=4,o=5,g=6,p=7,f=8,m=9,y=10,B=11,v=12,k=13,T=14,O=15,X=16,U=17,le=0,ae=1,ge=2,fe=3,pe=4;function he(x,et){return 55296<=x.charCodeAt(et)&&x.charCodeAt(et)<=56319&&56320<=x.charCodeAt(et+1)&&x.charCodeAt(et+1)<=57343}function be(x,et){et===void 0&&(et=0);var Ue=x.charCodeAt(et);if(55296<=Ue&&Ue<=56319&&et=1){var Je=x.charCodeAt(et-1),Xe=Ue;return 55296<=Je&&Je<=56319?(Je-55296)*1024+(Xe-56320)+65536:Xe}return Ue}function Te(x,et,Ue){var Je=[x].concat(et).concat([Ue]),Xe=Je[Je.length-2],ft=Ue,Gt=Je.lastIndexOf(T);if(Gt>1&&Je.slice(1,Gt).every(function(Ot){return Ot==s})&&[s,k,U].indexOf(x)==-1)return ge;var er=Je.lastIndexOf(a);if(er>0&&Je.slice(1,er).every(function(Ot){return Ot==a})&&[v,a].indexOf(Xe)==-1)return Je.filter(function(Ot){return Ot==a}).length%2==1?fe:pe;if(Xe==e&&ft==t)return le;if(Xe==r||Xe==e||Xe==t)return ft==T&&et.every(function(Ot){return Ot==s})?ge:ae;if(ft==r||ft==e||ft==t)return ae;if(Xe==g&&(ft==g||ft==p||ft==m||ft==y))return le;if((Xe==m||Xe==p)&&(ft==p||ft==f))return le;if((Xe==y||Xe==f)&&ft==f)return le;if(ft==s||ft==O)return le;if(ft==o)return le;if(Xe==v)return le;var Ur=Je.indexOf(s)!=-1?Je.lastIndexOf(s)-1:Je.length-2;return[k,U].indexOf(Je[Ur])!=-1&&Je.slice(Ur+1,-1).every(function(Ot){return Ot==s})&&ft==T||Xe==O&&[X,U].indexOf(ft)!=-1?le:et.indexOf(a)!=-1?ge:Xe==a&&ft==a?le:ae}this.nextBreak=function(x,et){if(et===void 0&&(et=0),et<0)return 0;if(et>=x.length-1)return x.length;for(var Ue=ke(be(x,et)),Je=[],Xe=et+1;Xe{var r4s=/^(.*?)(\x1b\[[^m]+m|\x1b\]8;;.*?(\x1b\\|\u0007))/,nst;function n4s(){if(nst)return nst;if(typeof Intl.Segmenter<"u"){let e=new Intl.Segmenter("en",{granularity:"grapheme"});return nst=t=>Array.from(e.segment(t),({segment:r})=>r)}else{let e=Adn(),t=new e;return nst=r=>t.splitGraphemes(r)}}ddn.exports=(e,t=0,r=e.length)=>{if(t<0||r<0)throw new RangeError("Negative indices aren't supported by this implementation");let s=r-t,a="",o=0,g=0;for(;e.length>0;){let p=e.match(r4s)||[e,e,void 0],f=n4s()(p[1]),m=Math.min(t-o,f.length);f=f.slice(m);let y=Math.min(s-g,f.length);a+=f.slice(0,y).join(""),o+=m,g+=y,typeof p[2]<"u"&&(a+=p[2]),e=e.slice(p[0].length)}return a}});var IVe=z(ist=>{"use strict";Object.defineProperty(ist,"__esModule",{value:!0});ist.YarnVersion=void 0;ist.YarnVersion=process.env.YARN_IS_TEST_ENV?"0.0.0":"1.1.39-atls"});var CVe=z(TO=>{"use strict";Object.defineProperty(TO,"__esModule",{value:!0});TO.StreamReport=TO.SUPPORTS_GROUPS=TO.SINGLE_LINE_CHAR=void 0;TO.formatName=gJt;TO.formatNameWithHyperlink=mdn;TO.reportOptionDeprecations=u4s;var uJt=(Oa(),Ai(Pa)),i4s=uJt.__importDefault(pdn()),lJt=uJt.__importDefault(nAe()),kJ=NL(),s4s=_O(),o4s=IVe(),BH=uJt.__importStar(CO());TO.SINGLE_LINE_CHAR="\xB7";var fdn=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"],Idn=80,wne=lJt.default.GITHUB_ACTIONS?{start:e=>`::group::${e} `,end:e=>`::endgroup:: -`}:oJt.default.TRAVIS?{start:e=>`travis_fold:start:${e} +`}:lJt.default.TRAVIS?{start:e=>`travis_fold:start:${e} `,end:e=>`travis_fold:end:${e} -`}:oJt.default.GITLAB?{start:e=>`section_start:${Math.floor(Date.now()/1e3)}:${e.toLowerCase().replace(/\W+/g,"_")}[collapsed=true]\r\x1B[0K${e} -`,end:e=>`section_end:${Math.floor(Date.now()/1e3)}:${e.toLowerCase().replace(/\W+/g,"_")}\r\x1B[0K`}:null;vO.SUPPORTS_GROUPS=vne!==null;var gdn=new Date,e4s=["iTerm.app","Apple_Terminal","WarpTerminal","vscode"].includes(process.env.TERM_PROGRAM)||!!process.env.WT_SESSION,t4s=e=>e,nst=t4s({patrick:{date:[17,3],chars:["\u{1F340}","\u{1F331}"],size:40},simba:{date:[19,7],chars:["\u{1F981}","\u{1F334}"],size:40},jack:{date:[31,10],chars:["\u{1F383}","\u{1F987}"],size:40},hogsfather:{date:[31,12],chars:["\u{1F389}","\u{1F384}"],size:40},default:{chars:["=","-"],size:80}}),r4s=e4s&&Object.keys(nst).find(e=>{let t=nst[e];return!(t.date&&(t.date[0]!==gdn.getDate()||t.date[1]!==gdn.getMonth()+1))})||"default";function cJt(e,{configuration:t,json:r}){if(!t.get("enableMessageNames"))return"";let s=e===null?0:e,a=(0,RJ.stringifyMessageName)(s);return!r&&e===null?bH.pretty(t,a,"grey"):a}function Adn(e,{configuration:t,json:r}){let s=cJt(e,{configuration:t,json:r});if(!s||e===null||e===RJ.MessageName.UNNAMED)return s;let a=RJ.MessageName[e],o=`https://yarnpkg.com/advanced/error-codes#${s}---${a}`.toLowerCase();return bH.applyHyperlink(t,s,o)}async function n4s({configuration:e,stdout:t,forceError:r},s){let a=await ist.start({configuration:e,stdout:t,includeFooter:!1},async o=>{let g=!1,p=!1;for(let f of s)typeof f.option<"u"&&(f.error||r?(p=!0,o.reportError(RJ.MessageName.DEPRECATED_CLI_SETTINGS,f.message)):(g=!0,o.reportWarning(RJ.MessageName.DEPRECATED_CLI_SETTINGS,f.message)),f.callback?.());g&&!p&&o.reportSeparator()});return a.hasErrors()?a.exitCode():null}var ist=class extends qXs.Report{static async start(t,r){let s=new this(t),a=process.emitWarning;process.emitWarning=(o,g)=>{if(typeof o!="string"){let f=o;o=f.message,g=g??f.name}let p=typeof g<"u"?`${g}: ${o}`:o;s.reportWarning(RJ.MessageName.UNNAMED,p)},t.includeVersion&&s.reportInfo(RJ.MessageName.UNNAMED,bH.applyStyle(t.configuration,`Yarn ${$Xs.YarnVersion}`,bH.Style.BOLD));try{await r(s)}catch(o){s.reportExceptionOnce(o)}finally{await s.finalize(),process.emitWarning=a}return s}constructor({configuration:t,stdout:r,json:s=!1,forceSectionAlignment:a=!1,includeNames:o=!0,includePrefix:g=!0,includeFooter:p=!0,includeLogs:f=!s,includeInfos:m=f,includeWarnings:y=f}){if(super(),this.uncommitted=new Set,this.warningCount=0,this.errorCount=0,this.timerFooter=[],this.startTime=Date.now(),this.indent=0,this.level=0,this.progress=new Map,this.progressTime=0,this.progressFrame=0,this.progressTimeout=null,this.progressStyle=null,this.progressMaxScaledSize=null,bH.addLogFilterSupport(this,{configuration:t}),this.configuration=t,this.forceSectionAlignment=a,this.includeNames=o,this.includePrefix=g,this.includeFooter=p,this.includeInfos=m,this.includeWarnings=y,this.json=s,this.stdout=r,t.get("enableProgressBars")&&!s&&r.isTTY&&r.columns>22){let B=t.get("progressBarStyle")||r4s;if(!Object.hasOwn(nst,B))throw new Error("Assertion failed: Invalid progress bar style");this.progressStyle=nst[B];let v=Math.min(this.getRecommendedLength(),80);this.progressMaxScaledSize=Math.floor(this.progressStyle.size*v/80)}}hasErrors(){return this.errorCount>0}exitCode(){return this.hasErrors()?1:0}getRecommendedLength(){let r=this.progressStyle!==null?this.stdout.columns-1:super.getRecommendedLength();return Math.max(40,r-12-this.indent*2)}startSectionSync({reportHeader:t,reportFooter:r,skipIfEmpty:s},a){let o={committed:!1,action:()=>{t?.()}};s?this.uncommitted.add(o):(o.action(),o.committed=!0);let g=Date.now();try{return a()}catch(p){throw this.reportExceptionOnce(p),p}finally{let p=Date.now();this.uncommitted.delete(o),o.committed&&r?.(p-g)}}async startSectionPromise({reportHeader:t,reportFooter:r,skipIfEmpty:s},a){let o={committed:!1,action:()=>{t?.()}};s?this.uncommitted.add(o):(o.action(),o.committed=!0);let g=Date.now();try{return await a()}catch(p){throw this.reportExceptionOnce(p),p}finally{let p=Date.now();this.uncommitted.delete(o),o.committed&&r?.(p-g)}}startTimerImpl(t,r,s){return{cb:typeof r=="function"?r:s,reportHeader:()=>{this.level+=1,this.reportInfo(null,`\u250C ${t}`),this.indent+=1,vne!==null&&!this.json&&this.includeInfos&&this.stdout.write(vne.start(t))},reportFooter:g=>{if(this.indent-=1,vne!==null&&!this.json&&this.includeInfos){this.stdout.write(vne.end(t));for(let p of this.timerFooter)p()}this.configuration.get("enableTimers")&&g>200?this.reportInfo(null,`\u2514 Completed in ${bH.pretty(this.configuration,g,bH.Type.DURATION)}`):this.reportInfo(null,"\u2514 Completed"),this.level-=1},skipIfEmpty:(typeof r=="function"?{}:r).skipIfEmpty}}startTimerSync(t,r,s){let{cb:a,...o}=this.startTimerImpl(t,r,s);return this.startSectionSync(o,a)}async startTimerPromise(t,r,s){let{cb:a,...o}=this.startTimerImpl(t,r,s);return this.startSectionPromise(o,a)}reportSeparator(){this.indent===0?this.writeLine(""):this.reportInfo(null,"")}reportInfo(t,r){if(!this.includeInfos)return;this.commit();let s=this.formatNameWithHyperlink(t),a=s?`${s}: `:"",o=`${this.formatPrefix(a,"blueBright")}${r}`;this.json?this.reportJson({type:"info",name:t,displayName:this.formatName(t),indent:this.formatIndent(),data:r}):this.writeLine(o)}reportWarning(t,r){if(this.warningCount+=1,!this.includeWarnings)return;this.commit();let s=this.formatNameWithHyperlink(t),a=s?`${s}: `:"";this.json?this.reportJson({type:"warning",name:t,displayName:this.formatName(t),indent:this.formatIndent(),data:r}):this.writeLine(`${this.formatPrefix(a,"yellowBright")}${r}`)}reportError(t,r){this.errorCount+=1,this.timerFooter.push(()=>this.reportErrorImpl(t,r)),this.reportErrorImpl(t,r)}reportErrorImpl(t,r){this.commit();let s=this.formatNameWithHyperlink(t),a=s?`${s}: `:"";this.json?this.reportJson({type:"error",name:t,displayName:this.formatName(t),indent:this.formatIndent(),data:r}):this.writeLine(`${this.formatPrefix(a,"redBright")}${r}`,{truncate:!1})}reportFold(t,r){if(!vne)return;let s=`${vne.start(t)}${r}${vne.end(t)}`;this.timerFooter.push(()=>this.stdout.write(s))}reportProgress(t){if(this.progressStyle===null)return{...Promise.resolve(),stop:()=>{}};if(t.hasProgress&&t.hasTitle)throw new Error("Unimplemented: Progress bars can't have both progress and titles.");let r=!1,s=Promise.resolve().then(async()=>{let o={progress:t.hasProgress?0:void 0,title:t.hasTitle?"":void 0};this.progress.set(t,{definition:o,lastScaledSize:t.hasProgress?-1:void 0,lastTitle:void 0}),this.refreshProgress({delta:-1});for await(let{progress:g,title:p}of t)r||o.progress===g&&o.title===p||(o.progress=g,o.title=p,this.refreshProgress());a()}),a=()=>{r||(r=!0,this.progress.delete(t),this.refreshProgress({delta:1}))};return{...s,stop:a}}reportJson(t){this.json&&this.writeLine(`${JSON.stringify(t)}`)}async finalize(){if(!this.includeFooter)return;let t="";this.errorCount>0?t="Failed with errors":this.warningCount>0?t="Done with warnings":t="Done";let r=bH.pretty(this.configuration,Date.now()-this.startTime,bH.Type.DURATION),s=this.configuration.get("enableTimers")?`${t} in ${r}`:t;this.errorCount>0?this.reportError(RJ.MessageName.UNNAMED,s):this.warningCount>0?this.reportWarning(RJ.MessageName.UNNAMED,s):this.reportInfo(RJ.MessageName.UNNAMED,s)}writeLine(t,{truncate:r}={}){this.clearProgress({clear:!0}),this.stdout.write(`${this.truncate(t,{truncate:r})} +`}:lJt.default.GITLAB?{start:e=>`section_start:${Math.floor(Date.now()/1e3)}:${e.toLowerCase().replace(/\W+/g,"_")}[collapsed=true]\r\x1B[0K${e} +`,end:e=>`section_end:${Math.floor(Date.now()/1e3)}:${e.toLowerCase().replace(/\W+/g,"_")}\r\x1B[0K`}:null;TO.SUPPORTS_GROUPS=wne!==null;var Cdn=new Date,a4s=["iTerm.app","Apple_Terminal","WarpTerminal","vscode"].includes(process.env.TERM_PROGRAM)||!!process.env.WT_SESSION,c4s=e=>e,sst=c4s({patrick:{date:[17,3],chars:["\u{1F340}","\u{1F331}"],size:40},simba:{date:[19,7],chars:["\u{1F981}","\u{1F334}"],size:40},jack:{date:[31,10],chars:["\u{1F383}","\u{1F987}"],size:40},hogsfather:{date:[31,12],chars:["\u{1F389}","\u{1F384}"],size:40},default:{chars:["=","-"],size:80}}),l4s=a4s&&Object.keys(sst).find(e=>{let t=sst[e];return!(t.date&&(t.date[0]!==Cdn.getDate()||t.date[1]!==Cdn.getMonth()+1))})||"default";function gJt(e,{configuration:t,json:r}){if(!t.get("enableMessageNames"))return"";let s=e===null?0:e,a=(0,kJ.stringifyMessageName)(s);return!r&&e===null?BH.pretty(t,a,"grey"):a}function mdn(e,{configuration:t,json:r}){let s=gJt(e,{configuration:t,json:r});if(!s||e===null||e===kJ.MessageName.UNNAMED)return s;let a=kJ.MessageName[e],o=`https://yarnpkg.com/advanced/error-codes#${s}---${a}`.toLowerCase();return BH.applyHyperlink(t,s,o)}async function u4s({configuration:e,stdout:t,forceError:r},s){let a=await ost.start({configuration:e,stdout:t,includeFooter:!1},async o=>{let g=!1,p=!1;for(let f of s)typeof f.option<"u"&&(f.error||r?(p=!0,o.reportError(kJ.MessageName.DEPRECATED_CLI_SETTINGS,f.message)):(g=!0,o.reportWarning(kJ.MessageName.DEPRECATED_CLI_SETTINGS,f.message)),f.callback?.());g&&!p&&o.reportSeparator()});return a.hasErrors()?a.exitCode():null}var ost=class extends s4s.Report{static async start(t,r){let s=new this(t),a=process.emitWarning;process.emitWarning=(o,g)=>{if(typeof o!="string"){let f=o;o=f.message,g=g??f.name}let p=typeof g<"u"?`${g}: ${o}`:o;s.reportWarning(kJ.MessageName.UNNAMED,p)},t.includeVersion&&s.reportInfo(kJ.MessageName.UNNAMED,BH.applyStyle(t.configuration,`Yarn ${o4s.YarnVersion}`,BH.Style.BOLD));try{await r(s)}catch(o){s.reportExceptionOnce(o)}finally{await s.finalize(),process.emitWarning=a}return s}constructor({configuration:t,stdout:r,json:s=!1,forceSectionAlignment:a=!1,includeNames:o=!0,includePrefix:g=!0,includeFooter:p=!0,includeLogs:f=!s,includeInfos:m=f,includeWarnings:y=f}){if(super(),this.uncommitted=new Set,this.warningCount=0,this.errorCount=0,this.timerFooter=[],this.startTime=Date.now(),this.indent=0,this.level=0,this.progress=new Map,this.progressTime=0,this.progressFrame=0,this.progressTimeout=null,this.progressStyle=null,this.progressMaxScaledSize=null,BH.addLogFilterSupport(this,{configuration:t}),this.configuration=t,this.forceSectionAlignment=a,this.includeNames=o,this.includePrefix=g,this.includeFooter=p,this.includeInfos=m,this.includeWarnings=y,this.json=s,this.stdout=r,t.get("enableProgressBars")&&!s&&r.isTTY&&r.columns>22){let B=t.get("progressBarStyle")||l4s;if(!Object.hasOwn(sst,B))throw new Error("Assertion failed: Invalid progress bar style");this.progressStyle=sst[B];let v=Math.min(this.getRecommendedLength(),80);this.progressMaxScaledSize=Math.floor(this.progressStyle.size*v/80)}}hasErrors(){return this.errorCount>0}exitCode(){return this.hasErrors()?1:0}getRecommendedLength(){let r=this.progressStyle!==null?this.stdout.columns-1:super.getRecommendedLength();return Math.max(40,r-12-this.indent*2)}startSectionSync({reportHeader:t,reportFooter:r,skipIfEmpty:s},a){let o={committed:!1,action:()=>{t?.()}};s?this.uncommitted.add(o):(o.action(),o.committed=!0);let g=Date.now();try{return a()}catch(p){throw this.reportExceptionOnce(p),p}finally{let p=Date.now();this.uncommitted.delete(o),o.committed&&r?.(p-g)}}async startSectionPromise({reportHeader:t,reportFooter:r,skipIfEmpty:s},a){let o={committed:!1,action:()=>{t?.()}};s?this.uncommitted.add(o):(o.action(),o.committed=!0);let g=Date.now();try{return await a()}catch(p){throw this.reportExceptionOnce(p),p}finally{let p=Date.now();this.uncommitted.delete(o),o.committed&&r?.(p-g)}}startTimerImpl(t,r,s){return{cb:typeof r=="function"?r:s,reportHeader:()=>{this.level+=1,this.reportInfo(null,`\u250C ${t}`),this.indent+=1,wne!==null&&!this.json&&this.includeInfos&&this.stdout.write(wne.start(t))},reportFooter:g=>{if(this.indent-=1,wne!==null&&!this.json&&this.includeInfos){this.stdout.write(wne.end(t));for(let p of this.timerFooter)p()}this.configuration.get("enableTimers")&&g>200?this.reportInfo(null,`\u2514 Completed in ${BH.pretty(this.configuration,g,BH.Type.DURATION)}`):this.reportInfo(null,"\u2514 Completed"),this.level-=1},skipIfEmpty:(typeof r=="function"?{}:r).skipIfEmpty}}startTimerSync(t,r,s){let{cb:a,...o}=this.startTimerImpl(t,r,s);return this.startSectionSync(o,a)}async startTimerPromise(t,r,s){let{cb:a,...o}=this.startTimerImpl(t,r,s);return this.startSectionPromise(o,a)}reportSeparator(){this.indent===0?this.writeLine(""):this.reportInfo(null,"")}reportInfo(t,r){if(!this.includeInfos)return;this.commit();let s=this.formatNameWithHyperlink(t),a=s?`${s}: `:"",o=`${this.formatPrefix(a,"blueBright")}${r}`;this.json?this.reportJson({type:"info",name:t,displayName:this.formatName(t),indent:this.formatIndent(),data:r}):this.writeLine(o)}reportWarning(t,r){if(this.warningCount+=1,!this.includeWarnings)return;this.commit();let s=this.formatNameWithHyperlink(t),a=s?`${s}: `:"";this.json?this.reportJson({type:"warning",name:t,displayName:this.formatName(t),indent:this.formatIndent(),data:r}):this.writeLine(`${this.formatPrefix(a,"yellowBright")}${r}`)}reportError(t,r){this.errorCount+=1,this.timerFooter.push(()=>this.reportErrorImpl(t,r)),this.reportErrorImpl(t,r)}reportErrorImpl(t,r){this.commit();let s=this.formatNameWithHyperlink(t),a=s?`${s}: `:"";this.json?this.reportJson({type:"error",name:t,displayName:this.formatName(t),indent:this.formatIndent(),data:r}):this.writeLine(`${this.formatPrefix(a,"redBright")}${r}`,{truncate:!1})}reportFold(t,r){if(!wne)return;let s=`${wne.start(t)}${r}${wne.end(t)}`;this.timerFooter.push(()=>this.stdout.write(s))}reportProgress(t){if(this.progressStyle===null)return{...Promise.resolve(),stop:()=>{}};if(t.hasProgress&&t.hasTitle)throw new Error("Unimplemented: Progress bars can't have both progress and titles.");let r=!1,s=Promise.resolve().then(async()=>{let o={progress:t.hasProgress?0:void 0,title:t.hasTitle?"":void 0};this.progress.set(t,{definition:o,lastScaledSize:t.hasProgress?-1:void 0,lastTitle:void 0}),this.refreshProgress({delta:-1});for await(let{progress:g,title:p}of t)r||o.progress===g&&o.title===p||(o.progress=g,o.title=p,this.refreshProgress());a()}),a=()=>{r||(r=!0,this.progress.delete(t),this.refreshProgress({delta:1}))};return{...s,stop:a}}reportJson(t){this.json&&this.writeLine(`${JSON.stringify(t)}`)}async finalize(){if(!this.includeFooter)return;let t="";this.errorCount>0?t="Failed with errors":this.warningCount>0?t="Done with warnings":t="Done";let r=BH.pretty(this.configuration,Date.now()-this.startTime,BH.Type.DURATION),s=this.configuration.get("enableTimers")?`${t} in ${r}`:t;this.errorCount>0?this.reportError(kJ.MessageName.UNNAMED,s):this.warningCount>0?this.reportWarning(kJ.MessageName.UNNAMED,s):this.reportInfo(kJ.MessageName.UNNAMED,s)}writeLine(t,{truncate:r}={}){this.clearProgress({clear:!0}),this.stdout.write(`${this.truncate(t,{truncate:r})} `),this.writeProgress()}writeLines(t,{truncate:r}={}){this.clearProgress({delta:t.length});for(let s of t)this.stdout.write(`${this.truncate(s,{truncate:r})} -`);this.writeProgress()}commit(){let t=this.uncommitted;this.uncommitted=new Set;for(let r of t)r.committed=!0,r.action()}clearProgress({delta:t=0,clear:r=!1}){this.progressStyle!==null&&this.progress.size+t>0&&(this.stdout.write(`\x1B[${this.progress.size+t}A`),(t>0||r)&&this.stdout.write("\x1B[0J"))}writeProgress(){if(this.progressStyle===null||(this.progressTimeout!==null&&clearTimeout(this.progressTimeout),this.progressTimeout=null,this.progress.size===0))return;let t=Date.now();t-this.progressTime>udn&&(this.progressFrame=(this.progressFrame+1)%ldn.length,this.progressTime=t);let r=ldn[this.progressFrame];for(let s of this.progress.values()){let a="";if(typeof s.lastScaledSize<"u"){let f=this.progressStyle.chars[0].repeat(s.lastScaledSize),m=this.progressStyle.chars[1].repeat(this.progressMaxScaledSize-s.lastScaledSize);a=` ${f}${m}`}let o=this.formatName(null),g=o?`${o}: `:"",p=s.definition.title?` ${s.definition.title}`:"";this.stdout.write(`${bH.pretty(this.configuration,"\u27A4","blueBright")} ${g}${r}${a}${p} -`)}this.progressTimeout=setTimeout(()=>{this.refreshProgress({force:!0})},udn)}refreshProgress({delta:t=0,force:r=!1}={}){let s=!1,a=!1;if(r||this.progress.size===0)s=!0;else for(let o of this.progress.values()){let g=typeof o.definition.progress<"u"?Math.trunc(this.progressMaxScaledSize*o.definition.progress):void 0,p=o.lastScaledSize;o.lastScaledSize=g;let f=o.lastTitle;if(o.lastTitle=o.definition.title,g!==p||(a=f!==o.definition.title)){s=!0;break}}s&&(this.clearProgress({delta:t,clear:a}),this.writeProgress())}truncate(t,{truncate:r}={}){return this.progressStyle===null&&(r=!1),typeof r>"u"&&(r=this.configuration.get("preferTruncatedLines")),r&&(t=(0,zXs.default)(t,0,this.stdout.columns-1)),t}formatName(t){return this.includeNames?cJt(t,{configuration:this.configuration,json:this.json}):""}formatPrefix(t,r){return this.includePrefix?`${bH.pretty(this.configuration,"\u27A4",r)} ${t}${this.formatIndent()}`:""}formatNameWithHyperlink(t){return this.includeNames?Adn(t,{configuration:this.configuration,json:this.json}):""}formatIndent(){return this.level>0||!this.forceSectionAlignment?"\u2502 ".repeat(this.indent):`${vO.SINGLE_LINE_CHAR} `}};vO.StreamReport=ist});var fJt=z(DT=>{"use strict";Object.defineProperty(DT,"__esModule",{value:!0});DT.PackageManager=void 0;DT.detectPackageManager=Idn;DT.makeScriptEnv=IVe;DT.prepareExternalProject=l4s;DT.hasPackageScript=u4s;DT.executePackageScript=Cdn;DT.executePackageShellcode=g4s;DT.executeWorkspaceScript=hdn;DT.hasWorkspaceScript=AJt;DT.executeWorkspaceLifecycleScript=_dn;DT.maybeExecuteWorkspaceLifecycleScript=d4s;DT.isNodeScript=dJt;DT.getPackageAccessibleBinaries=ost;DT.getWorkspaceAccessibleBinaries=ydn;DT.executePackageAccessibleBinary=bdn;DT.executeWorkspaceAccessibleBinary=p4s;var yAe=(Ma(),Ai(Oa)),wne=Ro(),Xd=Ro(),ddn=SJ(),pdn=uVe(),i4s=yAe.__importDefault(sJt()),s4s=yAe.__importDefault(Kge()),zbe=Dt("stream"),gJt=Fbe(),uJt=TL(),fdn=CO(),sst=fVe(),lJt=pVe(),CW=yAe.__importStar(Git()),DJ=yAe.__importStar(pO()),_Ae=yAe.__importStar(fW()),o4s=yAe.__importStar(rj()),Iw=yAe.__importStar(ak()),bF;(function(e){e.Yarn1="Yarn Classic",e.Yarn2="Yarn",e.Npm="npm",e.Pnpm="pnpm"})(bF||(DT.PackageManager=bF={}));async function Sne(e,t,r,s=[]){if(process.platform==="win32"){let a=`@goto #_undefined_# 2>NUL || @title %COMSPEC% & @setlocal & @"${r}" ${s.map(o=>`"${o.replace('"','""')}"`).join(" ")} %*`;await Xd.xfs.writeFilePromise(Xd.ppath.format({dir:e,name:t,ext:".cmd"}),a)}await Xd.xfs.writeFilePromise(Xd.ppath.join(e,t),`#!/bin/sh +`);this.writeProgress()}commit(){let t=this.uncommitted;this.uncommitted=new Set;for(let r of t)r.committed=!0,r.action()}clearProgress({delta:t=0,clear:r=!1}){this.progressStyle!==null&&this.progress.size+t>0&&(this.stdout.write(`\x1B[${this.progress.size+t}A`),(t>0||r)&&this.stdout.write("\x1B[0J"))}writeProgress(){if(this.progressStyle===null||(this.progressTimeout!==null&&clearTimeout(this.progressTimeout),this.progressTimeout=null,this.progress.size===0))return;let t=Date.now();t-this.progressTime>Idn&&(this.progressFrame=(this.progressFrame+1)%fdn.length,this.progressTime=t);let r=fdn[this.progressFrame];for(let s of this.progress.values()){let a="";if(typeof s.lastScaledSize<"u"){let f=this.progressStyle.chars[0].repeat(s.lastScaledSize),m=this.progressStyle.chars[1].repeat(this.progressMaxScaledSize-s.lastScaledSize);a=` ${f}${m}`}let o=this.formatName(null),g=o?`${o}: `:"",p=s.definition.title?` ${s.definition.title}`:"";this.stdout.write(`${BH.pretty(this.configuration,"\u27A4","blueBright")} ${g}${r}${a}${p} +`)}this.progressTimeout=setTimeout(()=>{this.refreshProgress({force:!0})},Idn)}refreshProgress({delta:t=0,force:r=!1}={}){let s=!1,a=!1;if(r||this.progress.size===0)s=!0;else for(let o of this.progress.values()){let g=typeof o.definition.progress<"u"?Math.trunc(this.progressMaxScaledSize*o.definition.progress):void 0,p=o.lastScaledSize;o.lastScaledSize=g;let f=o.lastTitle;if(o.lastTitle=o.definition.title,g!==p||(a=f!==o.definition.title)){s=!0;break}}s&&(this.clearProgress({delta:t,clear:a}),this.writeProgress())}truncate(t,{truncate:r}={}){return this.progressStyle===null&&(r=!1),typeof r>"u"&&(r=this.configuration.get("preferTruncatedLines")),r&&(t=(0,i4s.default)(t,0,this.stdout.columns-1)),t}formatName(t){return this.includeNames?gJt(t,{configuration:this.configuration,json:this.json}):""}formatPrefix(t,r){return this.includePrefix?`${BH.pretty(this.configuration,"\u27A4",r)} ${t}${this.formatIndent()}`:""}formatNameWithHyperlink(t){return this.includeNames?mdn(t,{configuration:this.configuration,json:this.json}):""}formatIndent(){return this.level>0||!this.forceSectionAlignment?"\u2502 ".repeat(this.indent):`${TO.SINGLE_LINE_CHAR} `}};TO.StreamReport=ost});var mJt=z(xT=>{"use strict";Object.defineProperty(xT,"__esModule",{value:!0});xT.PackageManager=void 0;xT.detectPackageManager=bdn;xT.makeScriptEnv=mVe;xT.prepareExternalProject=I4s;xT.hasPackageScript=C4s;xT.executePackageScript=Edn;xT.executePackageShellcode=m4s;xT.executeWorkspaceScript=vdn;xT.hasWorkspaceScript=fJt;xT.executeWorkspaceLifecycleScript=Sdn;xT.maybeExecuteWorkspaceLifecycleScript=_4s;xT.isNodeScript=IJt;xT.getPackageAccessibleBinaries=cst;xT.getWorkspaceAccessibleBinaries=wdn;xT.executePackageAccessibleBinary=Tdn;xT.executeWorkspaceAccessibleBinary=y4s;var RAe=(Oa(),Ai(Pa)),Nne=No(),Jd=No(),hdn=NJ(),_dn=AVe(),g4s=RAe.__importDefault(cJt()),A4s=RAe.__importDefault(iAe()),$be=xt("stream"),pJt=Lbe(),dJt=NL(),ydn=_O(),ast=CVe(),AJt=IVe(),mW=RAe.__importStar(Zit()),GJ=RAe.__importStar(CO()),NAe=RAe.__importStar(IW()),d4s=RAe.__importStar(cj()),Cw=RAe.__importStar(dk()),wF;(function(e){e.Yarn1="Yarn Classic",e.Yarn2="Yarn",e.Npm="npm",e.Pnpm="pnpm"})(wF||(xT.PackageManager=wF={}));async function Tne(e,t,r,s=[]){if(process.platform==="win32"){let a=`@goto #_undefined_# 2>NUL || @title %COMSPEC% & @setlocal & @"${r}" ${s.map(o=>`"${o.replace('"','""')}"`).join(" ")} %*`;await Jd.xfs.writeFilePromise(Jd.ppath.format({dir:e,name:t,ext:".cmd"}),a)}await Jd.xfs.writeFilePromise(Jd.ppath.join(e,t),`#!/bin/sh exec "${r}" ${s.map(a=>`'${a.replace(/'/g,`'"'"'`)}'`).join(" ")} "$@" -`,{mode:493})}async function Idn(e){let t=await gJt.Manifest.tryFind(e);if(t?.packageManager){let s=Iw.tryParseLocator(t.packageManager);if(s?.name){let a=`found ${JSON.stringify({packageManager:t.packageManager})} in manifest`,[o]=s.reference.split(".");switch(s.name){case"yarn":return{packageManagerField:!0,packageManager:Number(o)===1?bF.Yarn1:bF.Yarn2,reason:a};case"npm":return{packageManagerField:!0,packageManager:bF.Npm,reason:a};case"pnpm":return{packageManagerField:!0,packageManager:bF.Pnpm,reason:a}}}}let r;try{r=await Xd.xfs.readFilePromise(Xd.ppath.join(e,wne.Filename.lockfile),"utf8")}catch{}return r!==void 0?r.match(/^__metadata:$/m)?{packageManager:bF.Yarn2,reason:'"__metadata" key found in yarn.lock'}:{packageManager:bF.Yarn1,reason:'"__metadata" key not found in yarn.lock, must be a Yarn classic lockfile'}:Xd.xfs.existsSync(Xd.ppath.join(e,"package-lock.json"))?{packageManager:bF.Npm,reason:`found npm's "package-lock.json" lockfile`}:Xd.xfs.existsSync(Xd.ppath.join(e,"pnpm-lock.yaml"))?{packageManager:bF.Pnpm,reason:`found pnpm's "pnpm-lock.yaml" lockfile`}:null}async function IVe({project:e,locator:t,binFolder:r,ignoreCorepack:s,lifecycleScript:a,baseEnv:o=e?.configuration.env??process.env}){let g={};for(let[y,B]of Object.entries(o))typeof B<"u"&&(g[y.toLowerCase()!=="path"?y:"PATH"]=B);let p=Xd.npath.fromPortablePath(r);g.BERRY_BIN_FOLDER=Xd.npath.fromPortablePath(p);let f=process.env.COREPACK_ROOT&&!s?Xd.npath.join(process.env.COREPACK_ROOT,"dist/yarn.js"):process.argv[1];if(await Promise.all([Sne(r,"node",process.execPath),...lJt.YarnVersion!==null?[Sne(r,"run",process.execPath,[f,"run"]),Sne(r,"yarn",process.execPath,[f]),Sne(r,"yarnpkg",process.execPath,[f]),Sne(r,"node-gyp",process.execPath,[f,"run","--top-level","node-gyp"])]:[]]),e&&(g.INIT_CWD=Xd.npath.fromPortablePath(e.configuration.startingCwd),g.PROJECT_CWD=Xd.npath.fromPortablePath(e.cwd)),g.PATH=g.PATH?`${p}${Xd.npath.delimiter}${g.PATH}`:`${p}`,g.npm_execpath=`${p}${Xd.npath.sep}yarn`,g.npm_node_execpath=`${p}${Xd.npath.sep}node`,t){if(!e)throw new Error("Assertion failed: Missing project");let y=e.tryWorkspaceByLocator(t),B=y?y.manifest.version??"":e.storedPackages.get(t.locatorHash).version??"";g.npm_package_name=Iw.stringifyIdent(t),g.npm_package_version=B;let v;if(y)v=y.cwd;else{let G=e.storedPackages.get(t.locatorHash);if(!G)throw new Error(`Package for ${Iw.prettyLocator(e.configuration,t)} not found in the project`);let T=e.configuration.getLinkers(),O={project:e,report:new sst.StreamReport({stdout:new zbe.PassThrough,configuration:e.configuration})},X=T.find(U=>U.supportsPackage(G,O));if(!X)throw new Error(`The package ${Iw.prettyLocator(e.configuration,G)} isn't supported by any of the available linkers`);v=await X.findPackageLocation(G,O)}g.npm_package_json=Xd.npath.fromPortablePath(Xd.ppath.join(v,wne.Filename.manifest))}let m=lJt.YarnVersion!==null?`yarn/${lJt.YarnVersion}`:`yarn/${_Ae.dynamicRequire("@yarnpkg/core").version}-core`;return g.npm_config_user_agent=`${m} npm/? node/${process.version} ${process.platform} ${process.arch}`,a&&(g.npm_lifecycle_event=a),e&&await e.configuration.triggerHook(y=>y.setupScriptEnvironment,e,g,async(y,B,v)=>await Sne(r,y,B,v)),g}var a4s=2,c4s=(0,s4s.default)(a4s);async function l4s(e,t,{configuration:r,report:s,workspace:a=null,locator:o=null}){await c4s(async()=>{await Xd.xfs.mktempPromise(async g=>{let p=Xd.ppath.join(g,"pack.log"),f=null,{stdout:m,stderr:y}=r.getSubprocessStreams(p,{prefix:Xd.npath.fromPortablePath(e),report:s}),B=o&&Iw.isVirtualLocator(o)?Iw.devirtualizeLocator(o):o,v=B?Iw.stringifyLocator(B):"an external project";m.write(`Packing ${v} from sources -`);let G=await Idn(e),T;G!==null?(m.write(`Using ${G.packageManager} for bootstrap. Reason: ${G.reason} +`,{mode:493})}async function bdn(e){let t=await pJt.Manifest.tryFind(e);if(t?.packageManager){let s=Cw.tryParseLocator(t.packageManager);if(s?.name){let a=`found ${JSON.stringify({packageManager:t.packageManager})} in manifest`,[o]=s.reference.split(".");switch(s.name){case"yarn":return{packageManagerField:!0,packageManager:Number(o)===1?wF.Yarn1:wF.Yarn2,reason:a};case"npm":return{packageManagerField:!0,packageManager:wF.Npm,reason:a};case"pnpm":return{packageManagerField:!0,packageManager:wF.Pnpm,reason:a}}}}let r;try{r=await Jd.xfs.readFilePromise(Jd.ppath.join(e,Nne.Filename.lockfile),"utf8")}catch{}return r!==void 0?r.match(/^__metadata:$/m)?{packageManager:wF.Yarn2,reason:'"__metadata" key found in yarn.lock'}:{packageManager:wF.Yarn1,reason:'"__metadata" key not found in yarn.lock, must be a Yarn classic lockfile'}:Jd.xfs.existsSync(Jd.ppath.join(e,"package-lock.json"))?{packageManager:wF.Npm,reason:`found npm's "package-lock.json" lockfile`}:Jd.xfs.existsSync(Jd.ppath.join(e,"pnpm-lock.yaml"))?{packageManager:wF.Pnpm,reason:`found pnpm's "pnpm-lock.yaml" lockfile`}:null}async function mVe({project:e,locator:t,binFolder:r,ignoreCorepack:s,lifecycleScript:a,baseEnv:o=e?.configuration.env??process.env}){let g={};for(let[y,B]of Object.entries(o))typeof B<"u"&&(g[y.toLowerCase()!=="path"?y:"PATH"]=B);let p=Jd.npath.fromPortablePath(r);g.BERRY_BIN_FOLDER=Jd.npath.fromPortablePath(p);let f=process.env.COREPACK_ROOT&&!s?Jd.npath.join(process.env.COREPACK_ROOT,"dist/yarn.js"):process.argv[1];if(await Promise.all([Tne(r,"node",process.execPath),...AJt.YarnVersion!==null?[Tne(r,"run",process.execPath,[f,"run"]),Tne(r,"yarn",process.execPath,[f]),Tne(r,"yarnpkg",process.execPath,[f]),Tne(r,"node-gyp",process.execPath,[f,"run","--top-level","node-gyp"])]:[]]),e&&(g.INIT_CWD=Jd.npath.fromPortablePath(e.configuration.startingCwd),g.PROJECT_CWD=Jd.npath.fromPortablePath(e.cwd)),g.PATH=g.PATH?`${p}${Jd.npath.delimiter}${g.PATH}`:`${p}`,g.npm_execpath=`${p}${Jd.npath.sep}yarn`,g.npm_node_execpath=`${p}${Jd.npath.sep}node`,t){if(!e)throw new Error("Assertion failed: Missing project");let y=e.tryWorkspaceByLocator(t),B=y?y.manifest.version??"":e.storedPackages.get(t.locatorHash).version??"";g.npm_package_name=Cw.stringifyIdent(t),g.npm_package_version=B;let v;if(y)v=y.cwd;else{let k=e.storedPackages.get(t.locatorHash);if(!k)throw new Error(`Package for ${Cw.prettyLocator(e.configuration,t)} not found in the project`);let T=e.configuration.getLinkers(),O={project:e,report:new ast.StreamReport({stdout:new $be.PassThrough,configuration:e.configuration})},X=T.find(U=>U.supportsPackage(k,O));if(!X)throw new Error(`The package ${Cw.prettyLocator(e.configuration,k)} isn't supported by any of the available linkers`);v=await X.findPackageLocation(k,O)}g.npm_package_json=Jd.npath.fromPortablePath(Jd.ppath.join(v,Nne.Filename.manifest))}let m=AJt.YarnVersion!==null?`yarn/${AJt.YarnVersion}`:`yarn/${NAe.dynamicRequire("@yarnpkg/core").version}-core`;return g.npm_config_user_agent=`${m} npm/? node/${process.version} ${process.platform} ${process.arch}`,a&&(g.npm_lifecycle_event=a),e&&await e.configuration.triggerHook(y=>y.setupScriptEnvironment,e,g,async(y,B,v)=>await Tne(r,y,B,v)),g}var p4s=2,f4s=(0,A4s.default)(p4s);async function I4s(e,t,{configuration:r,report:s,workspace:a=null,locator:o=null}){await f4s(async()=>{await Jd.xfs.mktempPromise(async g=>{let p=Jd.ppath.join(g,"pack.log"),f=null,{stdout:m,stderr:y}=r.getSubprocessStreams(p,{prefix:Jd.npath.fromPortablePath(e),report:s}),B=o&&Cw.isVirtualLocator(o)?Cw.devirtualizeLocator(o):o,v=B?Cw.stringifyLocator(B):"an external project";m.write(`Packing ${v} from sources +`);let k=await bdn(e),T;k!==null?(m.write(`Using ${k.packageManager} for bootstrap. Reason: ${k.reason} -`),T=G.packageManager):(m.write(`No package manager configuration detected; defaulting to Yarn +`),T=k.packageManager):(m.write(`No package manager configuration detected; defaulting to Yarn -`),T=bF.Yarn2);let O=T===bF.Yarn2&&!G?.packageManagerField;await Xd.xfs.mktempPromise(async X=>{let U=await IVe({binFolder:X,ignoreCorepack:O,baseEnv:{...process.env,COREPACK_ENABLE_AUTO_PIN:"0"}}),ae=new Map([[bF.Yarn1,async()=>{let fe=a!==null?["workspace",a]:[],pe=Xd.ppath.join(e,wne.Filename.manifest),he=await Xd.xfs.readFilePromise(pe),be=await CW.pipevp(process.execPath,[process.argv[1],"set","version","classic","--only-if-needed","--yarn-path"],{cwd:e,env:U,stdin:f,stdout:m,stderr:y,end:CW.EndStrategy.ErrorCode});if(be.code!==0)return be.code;await Xd.xfs.writeFilePromise(pe,he),await Xd.xfs.appendFilePromise(Xd.ppath.join(e,".npmignore"),`/.yarn +`),T=wF.Yarn2);let O=T===wF.Yarn2&&!k?.packageManagerField;await Jd.xfs.mktempPromise(async X=>{let U=await mVe({binFolder:X,ignoreCorepack:O,baseEnv:{...process.env,COREPACK_ENABLE_AUTO_PIN:"0"}}),ae=new Map([[wF.Yarn1,async()=>{let fe=a!==null?["workspace",a]:[],pe=Jd.ppath.join(e,Nne.Filename.manifest),he=await Jd.xfs.readFilePromise(pe),be=await mW.pipevp(process.execPath,[process.argv[1],"set","version","classic","--only-if-needed","--yarn-path"],{cwd:e,env:U,stdin:f,stdout:m,stderr:y,end:mW.EndStrategy.ErrorCode});if(be.code!==0)return be.code;await Jd.xfs.writeFilePromise(pe,he),await Jd.xfs.appendFilePromise(Jd.ppath.join(e,".npmignore"),`/.yarn `),m.write(` -`),delete U.NODE_ENV;let Te=await CW.pipevp("yarn",["install"],{cwd:e,env:U,stdin:f,stdout:m,stderr:y,end:CW.EndStrategy.ErrorCode});if(Te.code!==0)return Te.code;m.write(` -`);let ke=await CW.pipevp("yarn",[...fe,"pack","--filename",Xd.npath.fromPortablePath(t)],{cwd:e,env:U,stdin:f,stdout:m,stderr:y});return ke.code!==0?ke.code:0}],[bF.Yarn2,async()=>{let fe=a!==null?["workspace",a]:[];U.YARN_ENABLE_INLINE_BUILDS="1";let pe=Xd.ppath.join(e,wne.Filename.lockfile);await Xd.xfs.existsPromise(pe)||await Xd.xfs.writeFilePromise(pe,"");let he=await CW.pipevp("yarn",[...fe,"pack","--install-if-needed","--filename",Xd.npath.fromPortablePath(t)],{cwd:e,env:U,stdin:f,stdout:m,stderr:y});return he.code!==0?he.code:0}],[bF.Npm,async()=>{if(a!==null){let et=new zbe.PassThrough,Ue=_Ae.bufferStream(et);et.pipe(m,{end:!1});let Je=await CW.pipevp("npm",["--version"],{cwd:e,env:U,stdin:f,stdout:et,stderr:y,end:CW.EndStrategy.Never});if(et.end(),Je.code!==0)return m.end(),y.end(),Je.code;let Xe=(await Ue).toString().trim();if(!o4s.satisfiesWithPrereleases(Xe,">=7.x")){let ft=Iw.makeIdent(null,"npm"),Gt=Iw.makeDescriptor(ft,Xe),er=Iw.makeDescriptor(ft,">=7.x");throw new Error(`Workspaces aren't supported by ${Iw.prettyDescriptor(r,Gt)}; please upgrade to ${Iw.prettyDescriptor(r,er)} (npm has been detected as the primary package manager for ${DJ.pretty(r,e,DJ.Type.PATH)})`)}}let fe=a!==null?["--workspace",a]:[];delete U.npm_config_user_agent,delete U.npm_config_production,delete U.NPM_CONFIG_PRODUCTION,delete U.NODE_ENV;let pe=await CW.pipevp("npm",["install","--legacy-peer-deps"],{cwd:e,env:U,stdin:f,stdout:m,stderr:y,end:CW.EndStrategy.ErrorCode});if(pe.code!==0)return pe.code;let he=new zbe.PassThrough,be=_Ae.bufferStream(he);he.pipe(m);let Te=await CW.pipevp("npm",["pack","--silent",...fe],{cwd:e,env:U,stdin:f,stdout:he,stderr:y});if(Te.code!==0)return Te.code;let ke=(await be).toString().trim().replace(/^.*\n/s,""),x=Xd.ppath.resolve(e,Xd.npath.toPortablePath(ke));return await Xd.xfs.renamePromise(x,t),0}]]).get(T);if(typeof ae>"u")throw new Error("Assertion failed: Unsupported workflow");let ge=await ae();if(!(ge===0||typeof ge>"u"))throw Xd.xfs.detachTemp(g),new fdn.ReportError(uJt.MessageName.PACKAGE_PREPARATION_FAILED,`Packing the package failed (exit code ${ge}, logs can be found here: ${DJ.pretty(r,p,DJ.Type.PATH)})`)})})})}async function u4s(e,t,{project:r}){let s=r.tryWorkspaceByLocator(e);if(s!==null)return AJt(s,t);let a=r.storedPackages.get(e.locatorHash);if(!a)throw new Error(`Package for ${Iw.prettyLocator(r.configuration,e)} not found in the project`);return await ddn.ZipOpenFS.openPromise(async o=>{let g=r.configuration,p=r.configuration.getLinkers(),f={project:r,report:new sst.StreamReport({stdout:new zbe.PassThrough,configuration:g})},m=p.find(G=>G.supportsPackage(a,f));if(!m)throw new Error(`The package ${Iw.prettyLocator(r.configuration,a)} isn't supported by any of the available linkers`);let y=await m.findPackageLocation(a,f),B=new wne.CwdFS(y,{baseFs:o});return(await gJt.Manifest.find(wne.PortablePath.dot,{baseFs:B})).scripts.has(t)})}async function Cdn(e,t,r,{cwd:s,project:a,stdin:o,stdout:g,stderr:p}){return await Xd.xfs.mktempPromise(async f=>{let{manifest:m,env:y,cwd:B}=await mdn(e,{project:a,binFolder:f,cwd:s,lifecycleScript:t}),v=m.scripts.get(t);if(typeof v>"u")return 1;let G=async()=>await(0,pdn.execute)(v,r,{cwd:B,env:y,stdin:o,stdout:g,stderr:p});return await(await a.configuration.reduceHook(O=>O.wrapScriptExecution,G,a,e,t,{script:v,args:r,cwd:B,env:y,stdin:o,stdout:g,stderr:p}))()})}async function g4s(e,t,r,{cwd:s,project:a,stdin:o,stdout:g,stderr:p}){return await Xd.xfs.mktempPromise(async f=>{let{env:m,cwd:y}=await mdn(e,{project:a,binFolder:f,cwd:s});return await(0,pdn.execute)(t,r,{cwd:y,env:m,stdin:o,stdout:g,stderr:p})})}async function A4s(e,{binFolder:t,cwd:r,lifecycleScript:s}){let a=await IVe({project:e.project,locator:e.anchoredLocator,binFolder:t,lifecycleScript:s});return await pJt(t,await ydn(e)),typeof r>"u"&&(r=Xd.ppath.dirname(await Xd.xfs.realpathPromise(Xd.ppath.join(e.cwd,"package.json")))),{manifest:e.manifest,binFolder:t,env:a,cwd:r}}async function mdn(e,{project:t,binFolder:r,cwd:s,lifecycleScript:a}){let o=t.tryWorkspaceByLocator(e);if(o!==null)return A4s(o,{binFolder:r,cwd:s,lifecycleScript:a});let g=t.storedPackages.get(e.locatorHash);if(!g)throw new Error(`Package for ${Iw.prettyLocator(t.configuration,e)} not found in the project`);return await ddn.ZipOpenFS.openPromise(async p=>{let f=t.configuration,m=t.configuration.getLinkers(),y={project:t,report:new sst.StreamReport({stdout:new zbe.PassThrough,configuration:f})},B=m.find(X=>X.supportsPackage(g,y));if(!B)throw new Error(`The package ${Iw.prettyLocator(t.configuration,g)} isn't supported by any of the available linkers`);let v=await IVe({project:t,locator:e,binFolder:r,lifecycleScript:a});await pJt(r,await ost(e,{project:t}));let G=await B.findPackageLocation(g,y),T=new wne.CwdFS(G,{baseFs:p}),O=await gJt.Manifest.find(wne.PortablePath.dot,{baseFs:T});return typeof s>"u"&&(s=G),{manifest:O,binFolder:r,env:v,cwd:s}})}async function hdn(e,t,r,{cwd:s,stdin:a,stdout:o,stderr:g}){return await Cdn(e.anchoredLocator,t,r,{cwd:s,project:e.project,stdin:a,stdout:o,stderr:g})}function AJt(e,t){return e.manifest.scripts.has(t)}async function _dn(e,t,{cwd:r,report:s}){let{configuration:a}=e.project,o=null;await Xd.xfs.mktempPromise(async g=>{let p=Xd.ppath.join(g,`${t}.log`),f=`# This file contains the result of Yarn calling the "${t}" lifecycle script inside a workspace ("${Xd.npath.fromPortablePath(e.cwd)}") -`,{stdout:m,stderr:y}=a.getSubprocessStreams(p,{report:s,prefix:Iw.prettyLocator(a,e.anchoredLocator),header:f});s.reportInfo(uJt.MessageName.LIFECYCLE_SCRIPT,`Calling the "${t}" lifecycle script`);let B=await hdn(e,t,[],{cwd:r,stdin:o,stdout:m,stderr:y});if(m.end(),y.end(),B!==0)throw Xd.xfs.detachTemp(g),new fdn.ReportError(uJt.MessageName.LIFECYCLE_SCRIPT,`${(0,i4s.default)(t)} script failed (exit code ${DJ.pretty(a,B,DJ.Type.NUMBER)}, logs can be found here: ${DJ.pretty(a,p,DJ.Type.PATH)}); run ${DJ.pretty(a,`yarn ${t}`,DJ.Type.CODE)} to investigate`)})}async function d4s(e,t,r){AJt(e,t)&&await _dn(e,t,r)}function dJt(e){let t=Xd.ppath.extname(e);if(t.match(/\.[cm]?[jt]sx?$/))return!0;if(t===".exe"||t===".bin")return!1;let r=Buffer.alloc(4),s;try{s=Xd.xfs.openSync(e,"r")}catch{return!0}try{Xd.xfs.readSync(s,r,0,r.length,0)}finally{Xd.xfs.closeSync(s)}let a=r.readUint32BE();return!(a===3405691582||a===3489328638||a===2135247942||(a&4294901760)===1297743872)}async function ost(e,{project:t}){let r=t.configuration,s=new Map,a=t.storedPackages.get(e.locatorHash);if(!a)throw new Error(`Package for ${Iw.prettyLocator(r,e)} not found in the project`);let o=new zbe.Writable,g=r.getLinkers(),p={project:t,report:new sst.StreamReport({configuration:r,stdout:o})},f=new Set([e.locatorHash]);for(let y of a.dependencies.values()){let B=t.storedResolutions.get(y.descriptorHash);if(!B)throw new Error(`Assertion failed: The resolution (${Iw.prettyDescriptor(r,y)}) should have been registered`);f.add(B)}let m=await Promise.all(Array.from(f,async y=>{let B=t.storedPackages.get(y);if(!B)throw new Error(`Assertion failed: The package (${y}) should have been registered`);if(B.bin.size===0)return _Ae.mapAndFilter.skip;let v=g.find(T=>T.supportsPackage(B,p));if(!v)return _Ae.mapAndFilter.skip;let G=null;try{G=await v.findPackageLocation(B,p)}catch(T){if(T.code==="LOCATOR_NOT_INSTALLED")return _Ae.mapAndFilter.skip;throw T}return{dependency:B,packageLocation:G}}));for(let y of m){if(y===_Ae.mapAndFilter.skip)continue;let{dependency:B,packageLocation:v}=y;for(let[G,T]of B.bin){let O=Xd.ppath.resolve(v,T);s.set(G,[B,Xd.npath.fromPortablePath(O),dJt(O)])}}return s}async function ydn(e){return await ost(e.anchoredLocator,{project:e.project})}async function pJt(e,t){await Promise.all(Array.from(t,([r,[,s,a]])=>a?Sne(e,r,process.execPath,[s]):Sne(e,r,s,[])))}async function bdn(e,t,r,{cwd:s,project:a,stdin:o,stdout:g,stderr:p,nodeArgs:f=[],packageAccessibleBinaries:m}){m??=await ost(e,{project:a});let y=m.get(t);if(!y)throw new Error(`Binary not found (${t}) for ${Iw.prettyLocator(a.configuration,e)}`);return await Xd.xfs.mktempPromise(async B=>{let[,v]=y,G=await IVe({project:a,locator:e,binFolder:B});await pJt(G.BERRY_BIN_FOLDER,m);let T=dJt(Xd.npath.toPortablePath(v))?CW.pipevp(process.execPath,[...f,v,...r],{cwd:s,env:G,stdin:o,stdout:g,stderr:p}):CW.pipevp(v,r,{cwd:s,env:G,stdin:o,stdout:g,stderr:p}),O;try{O=await T}finally{await Xd.xfs.removePromise(G.BERRY_BIN_FOLDER)}return O.code})}async function p4s(e,t,r,{cwd:s,stdin:a,stdout:o,stderr:g,packageAccessibleBinaries:p}){return await bdn(e.anchoredLocator,t,r,{project:e.project,cwd:s,stdin:a,stdout:o,stderr:g,packageAccessibleBinaries:p})}});var qbe=z((DOc,Bdn)=>{"use strict";var Edn=new Map([["C","cwd"],["f","file"],["z","gzip"],["P","preservePaths"],["U","unlink"],["strip-components","strip"],["stripComponents","strip"],["keep-newer","newer"],["keepNewer","newer"],["keep-newer-files","newer"],["keepNewerFiles","newer"],["k","keep"],["keep-existing","keep"],["keepExisting","keep"],["m","noMtime"],["no-mtime","noMtime"],["p","preserveOwner"],["L","follow"],["h","follow"]]);Bdn.exports=e=>e?Object.keys(e).map(t=>[Edn.has(t)?Edn.get(t):t,e[t]]).reduce((t,r)=>(t[r[0]]=r[1],t),Object.create(null)):{}});var dst=z(Gdn=>{"use strict";var vdn=typeof process=="object"&&process?process:{stdout:null,stderr:null},f4s=Dt("events"),Sdn=Dt("stream"),I4s=Dt("string_decoder"),wdn=I4s.StringDecoder,uj=Symbol("EOF"),gj=Symbol("maybeEmitEnd"),Tne=Symbol("emittedEnd"),ast=Symbol("emittingEnd"),CVe=Symbol("emittedError"),cst=Symbol("closed"),Tdn=Symbol("read"),lst=Symbol("flush"),Ndn=Symbol("flushChunk"),xL=Symbol("encoding"),Aj=Symbol("decoder"),ust=Symbol("flowing"),mVe=Symbol("paused"),$be=Symbol("resume"),$v=Symbol("buffer"),xJ=Symbol("pipes"),oR=Symbol("bufferLength"),IJt=Symbol("bufferPush"),CJt=Symbol("bufferShift"),TD=Symbol("objectMode"),eS=Symbol("destroyed"),mJt=Symbol("error"),hJt=Symbol("emitData"),Rdn=Symbol("emitEnd"),_Jt=Symbol("emitEnd2"),dj=Symbol("async"),yJt=Symbol("abort"),gst=Symbol("aborted"),bAe=Symbol("signal"),hVe=e=>Promise.resolve().then(e),kdn=global._MP_NO_ITERATOR_SYMBOLS_!=="1",Ddn=kdn&&Symbol.asyncIterator||Symbol("asyncIterator not implemented"),xdn=kdn&&Symbol.iterator||Symbol("iterator not implemented"),C4s=e=>e==="end"||e==="finish"||e==="prefinish",m4s=e=>e instanceof ArrayBuffer||typeof e=="object"&&e.constructor&&e.constructor.name==="ArrayBuffer"&&e.byteLength>=0,h4s=e=>!Buffer.isBuffer(e)&&ArrayBuffer.isView(e),Ast=class{constructor(t,r,s){this.src=t,this.dest=r,this.opts=s,this.ondrain=()=>t[$be](),r.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},bJt=class extends Ast{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(t,r,s){super(t,r,s),this.proxyErrors=a=>r.emit("error",a),t.on("error",this.proxyErrors)}},EJt=class e extends Sdn{constructor(t){super(),this[ust]=!1,this[mVe]=!1,this[xJ]=[],this[$v]=[],this[TD]=t&&t.objectMode||!1,this[TD]?this[xL]=null:this[xL]=t&&t.encoding||null,this[xL]==="buffer"&&(this[xL]=null),this[dj]=t&&!!t.async||!1,this[Aj]=this[xL]?new wdn(this[xL]):null,this[uj]=!1,this[Tne]=!1,this[ast]=!1,this[cst]=!1,this[CVe]=null,this.writable=!0,this.readable=!0,this[oR]=0,this[eS]=!1,t&&t.debugExposeBuffer===!0&&Object.defineProperty(this,"buffer",{get:()=>this[$v]}),t&&t.debugExposePipes===!0&&Object.defineProperty(this,"pipes",{get:()=>this[xJ]}),this[bAe]=t&&t.signal,this[gst]=!1,this[bAe]&&(this[bAe].addEventListener("abort",()=>this[yJt]()),this[bAe].aborted&&this[yJt]())}get bufferLength(){return this[oR]}get encoding(){return this[xL]}set encoding(t){if(this[TD])throw new Error("cannot set encoding in objectMode");if(this[xL]&&t!==this[xL]&&(this[Aj]&&this[Aj].lastNeed||this[oR]))throw new Error("cannot change encoding");this[xL]!==t&&(this[Aj]=t?new wdn(t):null,this[$v].length&&(this[$v]=this[$v].map(r=>this[Aj].write(r)))),this[xL]=t}setEncoding(t){this.encoding=t}get objectMode(){return this[TD]}set objectMode(t){this[TD]=this[TD]||!!t}get async(){return this[dj]}set async(t){this[dj]=this[dj]||!!t}[yJt](){this[gst]=!0,this.emit("abort",this[bAe].reason),this.destroy(this[bAe].reason)}get aborted(){return this[gst]}set aborted(t){}write(t,r,s){if(this[gst])return!1;if(this[uj])throw new Error("write after end");if(this[eS])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof r=="function"&&(s=r,r="utf8"),r||(r="utf8");let a=this[dj]?hVe:o=>o();return!this[TD]&&!Buffer.isBuffer(t)&&(h4s(t)?t=Buffer.from(t.buffer,t.byteOffset,t.byteLength):m4s(t)?t=Buffer.from(t):typeof t!="string"&&(this.objectMode=!0)),this[TD]?(this.flowing&&this[oR]!==0&&this[lst](!0),this.flowing?this.emit("data",t):this[IJt](t),this[oR]!==0&&this.emit("readable"),s&&a(s),this.flowing):t.length?(typeof t=="string"&&!(r===this[xL]&&!this[Aj].lastNeed)&&(t=Buffer.from(t,r)),Buffer.isBuffer(t)&&this[xL]&&(t=this[Aj].write(t)),this.flowing&&this[oR]!==0&&this[lst](!0),this.flowing?this.emit("data",t):this[IJt](t),this[oR]!==0&&this.emit("readable"),s&&a(s),this.flowing):(this[oR]!==0&&this.emit("readable"),s&&a(s),this.flowing)}read(t){if(this[eS])return null;if(this[oR]===0||t===0||t>this[oR])return this[gj](),null;this[TD]&&(t=null),this[$v].length>1&&!this[TD]&&(this.encoding?this[$v]=[this[$v].join("")]:this[$v]=[Buffer.concat(this[$v],this[oR])]);let r=this[Tdn](t||null,this[$v][0]);return this[gj](),r}[Tdn](t,r){return t===r.length||t===null?this[CJt]():(this[$v][0]=r.slice(t),r=r.slice(0,t),this[oR]-=t),this.emit("data",r),!this[$v].length&&!this[uj]&&this.emit("drain"),r}end(t,r,s){return typeof t=="function"&&(s=t,t=null),typeof r=="function"&&(s=r,r="utf8"),t&&this.write(t,r),s&&this.once("end",s),this[uj]=!0,this.writable=!1,(this.flowing||!this[mVe])&&this[gj](),this}[$be](){this[eS]||(this[mVe]=!1,this[ust]=!0,this.emit("resume"),this[$v].length?this[lst]():this[uj]?this[gj]():this.emit("drain"))}resume(){return this[$be]()}pause(){this[ust]=!1,this[mVe]=!0}get destroyed(){return this[eS]}get flowing(){return this[ust]}get paused(){return this[mVe]}[IJt](t){this[TD]?this[oR]+=1:this[oR]+=t.length,this[$v].push(t)}[CJt](){return this[TD]?this[oR]-=1:this[oR]-=this[$v][0].length,this[$v].shift()}[lst](t){do;while(this[Ndn](this[CJt]())&&this[$v].length);!t&&!this[$v].length&&!this[uj]&&this.emit("drain")}[Ndn](t){return this.emit("data",t),this.flowing}pipe(t,r){if(this[eS])return;let s=this[Tne];return r=r||{},t===vdn.stdout||t===vdn.stderr?r.end=!1:r.end=r.end!==!1,r.proxyErrors=!!r.proxyErrors,s?r.end&&t.end():(this[xJ].push(r.proxyErrors?new bJt(this,t,r):new Ast(this,t,r)),this[dj]?hVe(()=>this[$be]()):this[$be]()),t}unpipe(t){let r=this[xJ].find(s=>s.dest===t);r&&(this[xJ].splice(this[xJ].indexOf(r),1),r.unpipe())}addListener(t,r){return this.on(t,r)}on(t,r){let s=super.on(t,r);return t==="data"&&!this[xJ].length&&!this.flowing?this[$be]():t==="readable"&&this[oR]!==0?super.emit("readable"):C4s(t)&&this[Tne]?(super.emit(t),this.removeAllListeners(t)):t==="error"&&this[CVe]&&(this[dj]?hVe(()=>r.call(this,this[CVe])):r.call(this,this[CVe])),s}get emittedEnd(){return this[Tne]}[gj](){!this[ast]&&!this[Tne]&&!this[eS]&&this[$v].length===0&&this[uj]&&(this[ast]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[cst]&&this.emit("close"),this[ast]=!1)}emit(t,r,...s){if(t!=="error"&&t!=="close"&&t!==eS&&this[eS])return;if(t==="data")return!this[TD]&&!r?!1:this[dj]?hVe(()=>this[hJt](r)):this[hJt](r);if(t==="end")return this[Rdn]();if(t==="close"){if(this[cst]=!0,!this[Tne]&&!this[eS])return;let o=super.emit("close");return this.removeAllListeners("close"),o}else if(t==="error"){this[CVe]=r,super.emit(mJt,r);let o=!this[bAe]||this.listeners("error").length?super.emit("error",r):!1;return this[gj](),o}else if(t==="resume"){let o=super.emit("resume");return this[gj](),o}else if(t==="finish"||t==="prefinish"){let o=super.emit(t);return this.removeAllListeners(t),o}let a=super.emit(t,r,...s);return this[gj](),a}[hJt](t){for(let s of this[xJ])s.dest.write(t)===!1&&this.pause();let r=super.emit("data",t);return this[gj](),r}[Rdn](){this[Tne]||(this[Tne]=!0,this.readable=!1,this[dj]?hVe(()=>this[_Jt]()):this[_Jt]())}[_Jt](){if(this[Aj]){let r=this[Aj].end();if(r){for(let s of this[xJ])s.dest.write(r);super.emit("data",r)}}for(let r of this[xJ])r.end();let t=super.emit("end");return this.removeAllListeners("end"),t}collect(){let t=[];this[TD]||(t.dataLength=0);let r=this.promise();return this.on("data",s=>{t.push(s),this[TD]||(t.dataLength+=s.length)}),r.then(()=>t)}concat(){return this[TD]?Promise.reject(new Error("cannot concat in objectMode")):this.collect().then(t=>this[TD]?Promise.reject(new Error("cannot concat in objectMode")):this[xL]?t.join(""):Buffer.concat(t,t.dataLength))}promise(){return new Promise((t,r)=>{this.on(eS,()=>r(new Error("stream destroyed"))),this.on("error",s=>r(s)),this.on("end",()=>t())})}[Ddn](){let t=!1,r=()=>(this.pause(),t=!0,Promise.resolve({done:!0}));return{next:()=>{if(t)return r();let a=this.read();if(a!==null)return Promise.resolve({done:!1,value:a});if(this[uj])return r();let o=null,g=null,p=B=>{this.removeListener("data",f),this.removeListener("end",m),this.removeListener(eS,y),r(),g(B)},f=B=>{this.removeListener("error",p),this.removeListener("end",m),this.removeListener(eS,y),this.pause(),o({value:B,done:!!this[uj]})},m=()=>{this.removeListener("error",p),this.removeListener("data",f),this.removeListener(eS,y),r(),o({done:!0})},y=()=>p(new Error("stream destroyed"));return new Promise((B,v)=>{g=v,o=B,this.once(eS,y),this.once("error",p),this.once("end",m),this.once("data",f)})},throw:r,return:r,[Ddn](){return this}}}[xdn](){let t=!1,r=()=>(this.pause(),this.removeListener(mJt,r),this.removeListener(eS,r),this.removeListener("end",r),t=!0,{done:!0}),s=()=>{if(t)return r();let a=this.read();return a===null?r():{value:a}};return this.once("end",r),this.once(mJt,r),this.once(eS,r),{next:s,throw:r,return:r,[xdn](){return this}}}destroy(t){return this[eS]?(t?this.emit("error",t):this.emit(eS),this):(this[eS]=!0,this[$v].length=0,this[oR]=0,typeof this.close=="function"&&!this[cst]&&this.close(),t?this.emit("error",t):this.emit(eS),this)}static isStream(t){return!!t&&(t instanceof e||t instanceof Sdn||t instanceof f4s&&(typeof t.pipe=="function"||typeof t.write=="function"&&typeof t.end=="function"))}};Gdn.Minipass=EJt});var Zdn=z((kOc,Fdn)=>{var _4s=Dt("zlib").constants||{ZLIB_VERNUM:4736};Fdn.exports=Object.freeze(Object.assign(Object.create(null),{Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_VERSION_ERROR:-6,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,DEFLATE:1,INFLATE:2,GZIP:3,GUNZIP:4,DEFLATERAW:5,INFLATERAW:6,UNZIP:7,BROTLI_DECODE:8,BROTLI_ENCODE:9,Z_MIN_WINDOWBITS:8,Z_MAX_WINDOWBITS:15,Z_DEFAULT_WINDOWBITS:15,Z_MIN_CHUNK:64,Z_MAX_CHUNK:1/0,Z_DEFAULT_CHUNK:16384,Z_MIN_MEMLEVEL:1,Z_MAX_MEMLEVEL:9,Z_DEFAULT_MEMLEVEL:8,Z_MIN_LEVEL:-1,Z_MAX_LEVEL:9,Z_DEFAULT_LEVEL:-1,BROTLI_OPERATION_PROCESS:0,BROTLI_OPERATION_FLUSH:1,BROTLI_OPERATION_FINISH:2,BROTLI_OPERATION_EMIT_METADATA:3,BROTLI_MODE_GENERIC:0,BROTLI_MODE_TEXT:1,BROTLI_MODE_FONT:2,BROTLI_DEFAULT_MODE:0,BROTLI_MIN_QUALITY:0,BROTLI_MAX_QUALITY:11,BROTLI_DEFAULT_QUALITY:11,BROTLI_MIN_WINDOW_BITS:10,BROTLI_MAX_WINDOW_BITS:24,BROTLI_LARGE_MAX_WINDOW_BITS:30,BROTLI_DEFAULT_WINDOW:22,BROTLI_MIN_INPUT_BLOCK_BITS:16,BROTLI_MAX_INPUT_BLOCK_BITS:24,BROTLI_PARAM_MODE:0,BROTLI_PARAM_QUALITY:1,BROTLI_PARAM_LGWIN:2,BROTLI_PARAM_LGBLOCK:3,BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING:4,BROTLI_PARAM_SIZE_HINT:5,BROTLI_PARAM_LARGE_WINDOW:6,BROTLI_PARAM_NPOSTFIX:7,BROTLI_PARAM_NDIRECT:8,BROTLI_DECODER_RESULT_ERROR:0,BROTLI_DECODER_RESULT_SUCCESS:1,BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT:2,BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION:0,BROTLI_DECODER_PARAM_LARGE_WINDOW:1,BROTLI_DECODER_NO_ERROR:0,BROTLI_DECODER_SUCCESS:1,BROTLI_DECODER_NEEDS_MORE_INPUT:2,BROTLI_DECODER_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE:-1,BROTLI_DECODER_ERROR_FORMAT_RESERVED:-2,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE:-3,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET:-4,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME:-5,BROTLI_DECODER_ERROR_FORMAT_CL_SPACE:-6,BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE:-7,BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT:-8,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1:-9,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2:-10,BROTLI_DECODER_ERROR_FORMAT_TRANSFORM:-11,BROTLI_DECODER_ERROR_FORMAT_DICTIONARY:-12,BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS:-13,BROTLI_DECODER_ERROR_FORMAT_PADDING_1:-14,BROTLI_DECODER_ERROR_FORMAT_PADDING_2:-15,BROTLI_DECODER_ERROR_FORMAT_DISTANCE:-16,BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET:-19,BROTLI_DECODER_ERROR_INVALID_ARGUMENTS:-20,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES:-21,BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS:-22,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP:-25,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1:-26,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2:-27,BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES:-30,BROTLI_DECODER_ERROR_UNREACHABLE:-31},_4s))});var NJt=z((GOc,Hdn)=>{"use strict";var Ldn=typeof process=="object"&&process?process:{stdout:null,stderr:null},y4s=Dt("events"),Vdn=Dt("stream"),Wdn=Dt("string_decoder").StringDecoder,pj=Symbol("EOF"),fj=Symbol("maybeEmitEnd"),Nne=Symbol("emittedEnd"),pst=Symbol("emittingEnd"),_Ve=Symbol("emittedError"),fst=Symbol("closed"),Pdn=Symbol("read"),Ist=Symbol("flush"),Odn=Symbol("flushChunk"),kL=Symbol("encoding"),Ij=Symbol("decoder"),Cst=Symbol("flowing"),yVe=Symbol("paused"),eEe=Symbol("resume"),aR=Symbol("bufferLength"),BJt=Symbol("bufferPush"),vJt=Symbol("bufferShift"),dk=Symbol("objectMode"),pk=Symbol("destroyed"),SJt=Symbol("emitData"),Mdn=Symbol("emitEnd"),wJt=Symbol("emitEnd2"),Cj=Symbol("async"),bVe=e=>Promise.resolve().then(e),Qdn=global._MP_NO_ITERATOR_SYMBOLS_!=="1",b4s=Qdn&&Symbol.asyncIterator||Symbol("asyncIterator not implemented"),E4s=Qdn&&Symbol.iterator||Symbol("iterator not implemented"),B4s=e=>e==="end"||e==="finish"||e==="prefinish",v4s=e=>e instanceof ArrayBuffer||typeof e=="object"&&e.constructor&&e.constructor.name==="ArrayBuffer"&&e.byteLength>=0,S4s=e=>!Buffer.isBuffer(e)&&ArrayBuffer.isView(e),mst=class{constructor(t,r,s){this.src=t,this.dest=r,this.opts=s,this.ondrain=()=>t[eEe](),r.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},TJt=class extends mst{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(t,r,s){super(t,r,s),this.proxyErrors=a=>r.emit("error",a),t.on("error",this.proxyErrors)}};Hdn.exports=class Ydn extends Vdn{constructor(t){super(),this[Cst]=!1,this[yVe]=!1,this.pipes=[],this.buffer=[],this[dk]=t&&t.objectMode||!1,this[dk]?this[kL]=null:this[kL]=t&&t.encoding||null,this[kL]==="buffer"&&(this[kL]=null),this[Cj]=t&&!!t.async||!1,this[Ij]=this[kL]?new Wdn(this[kL]):null,this[pj]=!1,this[Nne]=!1,this[pst]=!1,this[fst]=!1,this[_Ve]=null,this.writable=!0,this.readable=!0,this[aR]=0,this[pk]=!1}get bufferLength(){return this[aR]}get encoding(){return this[kL]}set encoding(t){if(this[dk])throw new Error("cannot set encoding in objectMode");if(this[kL]&&t!==this[kL]&&(this[Ij]&&this[Ij].lastNeed||this[aR]))throw new Error("cannot change encoding");this[kL]!==t&&(this[Ij]=t?new Wdn(t):null,this.buffer.length&&(this.buffer=this.buffer.map(r=>this[Ij].write(r)))),this[kL]=t}setEncoding(t){this.encoding=t}get objectMode(){return this[dk]}set objectMode(t){this[dk]=this[dk]||!!t}get async(){return this[Cj]}set async(t){this[Cj]=this[Cj]||!!t}write(t,r,s){if(this[pj])throw new Error("write after end");if(this[pk])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof r=="function"&&(s=r,r="utf8"),r||(r="utf8");let a=this[Cj]?bVe:o=>o();return!this[dk]&&!Buffer.isBuffer(t)&&(S4s(t)?t=Buffer.from(t.buffer,t.byteOffset,t.byteLength):v4s(t)?t=Buffer.from(t):typeof t!="string"&&(this.objectMode=!0)),this[dk]?(this.flowing&&this[aR]!==0&&this[Ist](!0),this.flowing?this.emit("data",t):this[BJt](t),this[aR]!==0&&this.emit("readable"),s&&a(s),this.flowing):t.length?(typeof t=="string"&&!(r===this[kL]&&!this[Ij].lastNeed)&&(t=Buffer.from(t,r)),Buffer.isBuffer(t)&&this[kL]&&(t=this[Ij].write(t)),this.flowing&&this[aR]!==0&&this[Ist](!0),this.flowing?this.emit("data",t):this[BJt](t),this[aR]!==0&&this.emit("readable"),s&&a(s),this.flowing):(this[aR]!==0&&this.emit("readable"),s&&a(s),this.flowing)}read(t){if(this[pk])return null;if(this[aR]===0||t===0||t>this[aR])return this[fj](),null;this[dk]&&(t=null),this.buffer.length>1&&!this[dk]&&(this.encoding?this.buffer=[this.buffer.join("")]:this.buffer=[Buffer.concat(this.buffer,this[aR])]);let r=this[Pdn](t||null,this.buffer[0]);return this[fj](),r}[Pdn](t,r){return t===r.length||t===null?this[vJt]():(this.buffer[0]=r.slice(t),r=r.slice(0,t),this[aR]-=t),this.emit("data",r),!this.buffer.length&&!this[pj]&&this.emit("drain"),r}end(t,r,s){return typeof t=="function"&&(s=t,t=null),typeof r=="function"&&(s=r,r="utf8"),t&&this.write(t,r),s&&this.once("end",s),this[pj]=!0,this.writable=!1,(this.flowing||!this[yVe])&&this[fj](),this}[eEe](){this[pk]||(this[yVe]=!1,this[Cst]=!0,this.emit("resume"),this.buffer.length?this[Ist]():this[pj]?this[fj]():this.emit("drain"))}resume(){return this[eEe]()}pause(){this[Cst]=!1,this[yVe]=!0}get destroyed(){return this[pk]}get flowing(){return this[Cst]}get paused(){return this[yVe]}[BJt](t){this[dk]?this[aR]+=1:this[aR]+=t.length,this.buffer.push(t)}[vJt](){return this.buffer.length&&(this[dk]?this[aR]-=1:this[aR]-=this.buffer[0].length),this.buffer.shift()}[Ist](t){do;while(this[Odn](this[vJt]()));!t&&!this.buffer.length&&!this[pj]&&this.emit("drain")}[Odn](t){return t?(this.emit("data",t),this.flowing):!1}pipe(t,r){if(this[pk])return;let s=this[Nne];return r=r||{},t===Ldn.stdout||t===Ldn.stderr?r.end=!1:r.end=r.end!==!1,r.proxyErrors=!!r.proxyErrors,s?r.end&&t.end():(this.pipes.push(r.proxyErrors?new TJt(this,t,r):new mst(this,t,r)),this[Cj]?bVe(()=>this[eEe]()):this[eEe]()),t}unpipe(t){let r=this.pipes.find(s=>s.dest===t);r&&(this.pipes.splice(this.pipes.indexOf(r),1),r.unpipe())}addListener(t,r){return this.on(t,r)}on(t,r){let s=super.on(t,r);return t==="data"&&!this.pipes.length&&!this.flowing?this[eEe]():t==="readable"&&this[aR]!==0?super.emit("readable"):B4s(t)&&this[Nne]?(super.emit(t),this.removeAllListeners(t)):t==="error"&&this[_Ve]&&(this[Cj]?bVe(()=>r.call(this,this[_Ve])):r.call(this,this[_Ve])),s}get emittedEnd(){return this[Nne]}[fj](){!this[pst]&&!this[Nne]&&!this[pk]&&this.buffer.length===0&&this[pj]&&(this[pst]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[fst]&&this.emit("close"),this[pst]=!1)}emit(t,r,...s){if(t!=="error"&&t!=="close"&&t!==pk&&this[pk])return;if(t==="data")return r?this[Cj]?bVe(()=>this[SJt](r)):this[SJt](r):!1;if(t==="end")return this[Mdn]();if(t==="close"){if(this[fst]=!0,!this[Nne]&&!this[pk])return;let o=super.emit("close");return this.removeAllListeners("close"),o}else if(t==="error"){this[_Ve]=r;let o=super.emit("error",r);return this[fj](),o}else if(t==="resume"){let o=super.emit("resume");return this[fj](),o}else if(t==="finish"||t==="prefinish"){let o=super.emit(t);return this.removeAllListeners(t),o}let a=super.emit(t,r,...s);return this[fj](),a}[SJt](t){for(let s of this.pipes)s.dest.write(t)===!1&&this.pause();let r=super.emit("data",t);return this[fj](),r}[Mdn](){this[Nne]||(this[Nne]=!0,this.readable=!1,this[Cj]?bVe(()=>this[wJt]()):this[wJt]())}[wJt](){if(this[Ij]){let r=this[Ij].end();if(r){for(let s of this.pipes)s.dest.write(r);super.emit("data",r)}}for(let r of this.pipes)r.end();let t=super.emit("end");return this.removeAllListeners("end"),t}collect(){let t=[];this[dk]||(t.dataLength=0);let r=this.promise();return this.on("data",s=>{t.push(s),this[dk]||(t.dataLength+=s.length)}),r.then(()=>t)}concat(){return this[dk]?Promise.reject(new Error("cannot concat in objectMode")):this.collect().then(t=>this[dk]?Promise.reject(new Error("cannot concat in objectMode")):this[kL]?t.join(""):Buffer.concat(t,t.dataLength))}promise(){return new Promise((t,r)=>{this.on(pk,()=>r(new Error("stream destroyed"))),this.on("error",s=>r(s)),this.on("end",()=>t())})}[b4s](){return{next:()=>{let r=this.read();if(r!==null)return Promise.resolve({done:!1,value:r});if(this[pj])return Promise.resolve({done:!0});let s=null,a=null,o=m=>{this.removeListener("data",g),this.removeListener("end",p),a(m)},g=m=>{this.removeListener("error",o),this.removeListener("end",p),this.pause(),s({value:m,done:!!this[pj]})},p=()=>{this.removeListener("error",o),this.removeListener("data",g),s({done:!0})},f=()=>o(new Error("stream destroyed"));return new Promise((m,y)=>{a=y,s=m,this.once(pk,f),this.once("error",o),this.once("end",p),this.once("data",g)})}}}[E4s](){return{next:()=>{let r=this.read();return{value:r,done:r===null}}}}destroy(t){return this[pk]?(t?this.emit("error",t):this.emit(pk),this):(this[pk]=!0,this.buffer.length=0,this[aR]=0,typeof this.close=="function"&&!this[fst]&&this.close(),t?this.emit("error",t):this.emit(pk),this)}static isStream(t){return!!t&&(t instanceof Ydn||t instanceof Vdn||t instanceof y4s&&(typeof t.pipe=="function"||typeof t.write=="function"&&typeof t.end=="function"))}}});var HJt=z(mW=>{"use strict";var GJt=Dt("assert"),Rne=Dt("buffer").Buffer,Udn=Dt("zlib"),EAe=mW.constants=Zdn(),w4s=NJt(),Xdn=Rne.concat,BAe=Symbol("_superWrite"),rEe=class extends Error{constructor(t){super("zlib: "+t.message),this.code=t.code,this.errno=t.errno,this.code||(this.code="ZLIB_ERROR"),this.message="zlib: "+t.message,Error.captureStackTrace(this,this.constructor)}get name(){return"ZlibError"}},T4s=Symbol("opts"),EVe=Symbol("flushFlag"),Jdn=Symbol("finishFlushFlag"),YJt=Symbol("fullFlushFlag"),sE=Symbol("handle"),hst=Symbol("onError"),tEe=Symbol("sawError"),RJt=Symbol("level"),DJt=Symbol("strategy"),xJt=Symbol("ended"),FOc=Symbol("_defaultFullFlush"),_st=class extends w4s{constructor(t,r){if(!t||typeof t!="object")throw new TypeError("invalid options for ZlibBase constructor");super(t),this[tEe]=!1,this[xJt]=!1,this[T4s]=t,this[EVe]=t.flush,this[Jdn]=t.finishFlush;try{this[sE]=new Udn[r](t)}catch(s){throw new rEe(s)}this[hst]=s=>{this[tEe]||(this[tEe]=!0,this.close(),this.emit("error",s))},this[sE].on("error",s=>this[hst](new rEe(s))),this.once("end",()=>this.close)}close(){this[sE]&&(this[sE].close(),this[sE]=null,this.emit("close"))}reset(){if(!this[tEe])return GJt(this[sE],"zlib binding closed"),this[sE].reset()}flush(t){this.ended||(typeof t!="number"&&(t=this[YJt]),this.write(Object.assign(Rne.alloc(0),{[EVe]:t})))}end(t,r,s){return t&&this.write(t,r),this.flush(this[Jdn]),this[xJt]=!0,super.end(null,null,s)}get ended(){return this[xJt]}write(t,r,s){if(typeof r=="function"&&(s=r,r="utf8"),typeof t=="string"&&(t=Rne.from(t,r)),this[tEe])return;GJt(this[sE],"zlib binding closed");let a=this[sE]._handle,o=a.close;a.close=()=>{};let g=this[sE].close;this[sE].close=()=>{},Rne.concat=m=>m;let p;try{let m=typeof t[EVe]=="number"?t[EVe]:this[EVe];p=this[sE]._processChunk(t,m),Rne.concat=Xdn}catch(m){Rne.concat=Xdn,this[hst](new rEe(m))}finally{this[sE]&&(this[sE]._handle=a,a.close=o,this[sE].close=g,this[sE].removeAllListeners("error"))}this[sE]&&this[sE].on("error",m=>this[hst](new rEe(m)));let f;if(p)if(Array.isArray(p)&&p.length>0){f=this[BAe](Rne.from(p[0]));for(let m=1;m{this.flush(a),o()};try{this[sE].params(t,r)}finally{this[sE].flush=s}this[sE]&&(this[RJt]=t,this[DJt]=r)}}}},FJt=class extends mj{constructor(t){super(t,"Deflate")}},ZJt=class extends mj{constructor(t){super(t,"Inflate")}},kJt=Symbol("_portable"),LJt=class extends mj{constructor(t){super(t,"Gzip"),this[kJt]=t&&!!t.portable}[BAe](t){return this[kJt]?(this[kJt]=!1,t[9]=255,super[BAe](t)):super[BAe](t)}},VJt=class extends mj{constructor(t){super(t,"Gunzip")}},WJt=class extends mj{constructor(t){super(t,"DeflateRaw")}},PJt=class extends mj{constructor(t){super(t,"InflateRaw")}},OJt=class extends mj{constructor(t){super(t,"Unzip")}},yst=class extends _st{constructor(t,r){t=t||{},t.flush=t.flush||EAe.BROTLI_OPERATION_PROCESS,t.finishFlush=t.finishFlush||EAe.BROTLI_OPERATION_FINISH,super(t,r),this[YJt]=EAe.BROTLI_OPERATION_FLUSH}},MJt=class extends yst{constructor(t){super(t,"BrotliCompress")}},QJt=class extends yst{constructor(t){super(t,"BrotliDecompress")}};mW.Deflate=FJt;mW.Inflate=ZJt;mW.Gzip=LJt;mW.Gunzip=VJt;mW.DeflateRaw=WJt;mW.InflateRaw=PJt;mW.Unzip=OJt;typeof Udn.BrotliCompress=="function"?(mW.BrotliCompress=MJt,mW.BrotliDecompress=QJt):mW.BrotliCompress=mW.BrotliDecompress=class{constructor(){throw new Error("Brotli is not supported in this version of Node.js")}}});var nEe=z((VOc,Kdn)=>{var N4s=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform;Kdn.exports=N4s!=="win32"?e=>e:e=>e&&e.replace(/\\/g,"/")});var bst=z((POc,jdn)=>{"use strict";var{Minipass:R4s}=dst(),XJt=nEe(),JJt=Symbol("slurp");jdn.exports=class extends R4s{constructor(t,r,s){switch(super(),this.pause(),this.extended=r,this.globalExtended=s,this.header=t,this.startBlockSize=512*Math.ceil(t.size/512),this.blockRemain=this.startBlockSize,this.remain=t.size,this.type=t.type,this.meta=!1,this.ignore=!1,this.type){case"File":case"OldFile":case"Link":case"SymbolicLink":case"CharacterDevice":case"BlockDevice":case"Directory":case"FIFO":case"ContiguousFile":case"GNUDumpDir":break;case"NextFileHasLongLinkpath":case"NextFileHasLongPath":case"OldGnuLongPath":case"GlobalExtendedHeader":case"ExtendedHeader":case"OldExtendedHeader":this.meta=!0;break;default:this.ignore=!0}this.path=XJt(t.path),this.mode=t.mode,this.mode&&(this.mode=this.mode&4095),this.uid=t.uid,this.gid=t.gid,this.uname=t.uname,this.gname=t.gname,this.size=t.size,this.mtime=t.mtime,this.atime=t.atime,this.ctime=t.ctime,this.linkpath=XJt(t.linkpath),this.uname=t.uname,this.gname=t.gname,r&&this[JJt](r),s&&this[JJt](s,!0)}write(t){let r=t.length;if(r>this.blockRemain)throw new Error("writing more to entry than is appropriate");let s=this.remain,a=this.blockRemain;return this.remain=Math.max(0,s-r),this.blockRemain=Math.max(0,a-r),this.ignore?!0:s>=r?super.write(t):super.write(t.slice(0,s))}[JJt](t,r){for(let s in t)t[s]!==null&&t[s]!==void 0&&!(r&&s==="path")&&(this[s]=s==="path"||s==="linkpath"?XJt(t[s]):t[s])}}});var UJt=z(Est=>{"use strict";Est.name=new Map([["0","File"],["","OldFile"],["1","Link"],["2","SymbolicLink"],["3","CharacterDevice"],["4","BlockDevice"],["5","Directory"],["6","FIFO"],["7","ContiguousFile"],["g","GlobalExtendedHeader"],["x","ExtendedHeader"],["A","SolarisACL"],["D","GNUDumpDir"],["I","Inode"],["K","NextFileHasLongLinkpath"],["L","NextFileHasLongPath"],["M","ContinuationFile"],["N","OldGnuLongPath"],["S","SparseFile"],["V","TapeVolumeHeader"],["X","OldExtendedHeader"]]);Est.code=new Map(Array.from(Est.name).map(e=>[e[1],e[0]]))});var epn=z((MOc,$dn)=>{"use strict";var D4s=(e,t)=>{if(Number.isSafeInteger(e))e<0?k4s(e,t):x4s(e,t);else throw Error("cannot encode number outside of javascript safe integer range");return t},x4s=(e,t)=>{t[0]=128;for(var r=t.length;r>1;r--)t[r-1]=e&255,e=Math.floor(e/256)},k4s=(e,t)=>{t[0]=255;var r=!1;e=e*-1;for(var s=t.length;s>1;s--){var a=e&255;e=Math.floor(e/256),r?t[s-1]=zdn(a):a===0?t[s-1]=0:(r=!0,t[s-1]=qdn(a))}},G4s=e=>{let t=e[0],r=t===128?Z4s(e.slice(1,e.length)):t===255?F4s(e):null;if(r===null)throw Error("invalid base256 encoding");if(!Number.isSafeInteger(r))throw Error("parsed number outside of javascript safe integer range");return r},F4s=e=>{for(var t=e.length,r=0,s=!1,a=t-1;a>-1;a--){var o=e[a],g;s?g=zdn(o):o===0?g=o:(s=!0,g=qdn(o)),g!==0&&(r-=g*Math.pow(256,t-a-1))}return r},Z4s=e=>{for(var t=e.length,r=0,s=t-1;s>-1;s--){var a=e[s];a!==0&&(r+=a*Math.pow(256,t-s-1))}return r},zdn=e=>(255^e)&255,qdn=e=>(255^e)+1&255;$dn.exports={encode:D4s,parse:G4s}});var sEe=z((QOc,rpn)=>{"use strict";var KJt=UJt(),iEe=Dt("path").posix,tpn=epn(),jJt=Symbol("slurp"),hW=Symbol("type"),$Jt=class{constructor(t,r,s,a){this.cksumValid=!1,this.needPax=!1,this.nullBlock=!1,this.block=null,this.path=null,this.mode=null,this.uid=null,this.gid=null,this.size=null,this.mtime=null,this.cksum=null,this[hW]="0",this.linkpath=null,this.uname=null,this.gname=null,this.devmaj=0,this.devmin=0,this.atime=null,this.ctime=null,Buffer.isBuffer(t)?this.decode(t,r||0,s,a):t&&this.set(t)}decode(t,r,s,a){if(r||(r=0),!t||!(t.length>=r+512))throw new Error("need 512 bytes for header");if(this.path=vAe(t,r,100),this.mode=Dne(t,r+100,8),this.uid=Dne(t,r+108,8),this.gid=Dne(t,r+116,8),this.size=Dne(t,r+124,12),this.mtime=zJt(t,r+136,12),this.cksum=Dne(t,r+148,12),this[jJt](s),this[jJt](a,!0),this[hW]=vAe(t,r+156,1),this[hW]===""&&(this[hW]="0"),this[hW]==="0"&&this.path.slice(-1)==="/"&&(this[hW]="5"),this[hW]==="5"&&(this.size=0),this.linkpath=vAe(t,r+157,100),t.slice(r+257,r+265).toString()==="ustar\x0000")if(this.uname=vAe(t,r+265,32),this.gname=vAe(t,r+297,32),this.devmaj=Dne(t,r+329,8),this.devmin=Dne(t,r+337,8),t[r+475]!==0){let g=vAe(t,r+345,155);this.path=g+"/"+this.path}else{let g=vAe(t,r+345,130);g&&(this.path=g+"/"+this.path),this.atime=zJt(t,r+476,12),this.ctime=zJt(t,r+488,12)}let o=8*32;for(let g=r;g=r+512))throw new Error("need 512 bytes for header");let s=this.ctime||this.atime?130:155,a=L4s(this.path||"",s),o=a[0],g=a[1];this.needPax=a[2],this.needPax=SAe(t,r,100,o)||this.needPax,this.needPax=xne(t,r+100,8,this.mode)||this.needPax,this.needPax=xne(t,r+108,8,this.uid)||this.needPax,this.needPax=xne(t,r+116,8,this.gid)||this.needPax,this.needPax=xne(t,r+124,12,this.size)||this.needPax,this.needPax=qJt(t,r+136,12,this.mtime)||this.needPax,t[r+156]=this[hW].charCodeAt(0),this.needPax=SAe(t,r+157,100,this.linkpath)||this.needPax,t.write("ustar\x0000",r+257,8),this.needPax=SAe(t,r+265,32,this.uname)||this.needPax,this.needPax=SAe(t,r+297,32,this.gname)||this.needPax,this.needPax=xne(t,r+329,8,this.devmaj)||this.needPax,this.needPax=xne(t,r+337,8,this.devmin)||this.needPax,this.needPax=SAe(t,r+345,s,g)||this.needPax,t[r+475]!==0?this.needPax=SAe(t,r+345,155,g)||this.needPax:(this.needPax=SAe(t,r+345,130,g)||this.needPax,this.needPax=qJt(t,r+476,12,this.atime)||this.needPax,this.needPax=qJt(t,r+488,12,this.ctime)||this.needPax);let p=8*32;for(let f=r;f{let s=e,a="",o,g=iEe.parse(e).root||".";if(Buffer.byteLength(s)<100)o=[s,a,!1];else{a=iEe.dirname(s),s=iEe.basename(s);do Buffer.byteLength(s)<=100&&Buffer.byteLength(a)<=t?o=[s,a,!1]:Buffer.byteLength(s)>100&&Buffer.byteLength(a)<=t?o=[s.slice(0,99),a,!0]:(s=iEe.join(iEe.basename(a),s),a=iEe.dirname(a));while(a!==g&&!o);o||(o=[e.slice(0,99),"",!0])}return o},vAe=(e,t,r)=>e.slice(t,t+r).toString("utf8").replace(/\0.*/,""),zJt=(e,t,r)=>V4s(Dne(e,t,r)),V4s=e=>e===null?null:new Date(e*1e3),Dne=(e,t,r)=>e[t]&128?tpn.parse(e.slice(t,t+r)):P4s(e,t,r),W4s=e=>isNaN(e)?null:e,P4s=(e,t,r)=>W4s(parseInt(e.slice(t,t+r).toString("utf8").replace(/\0.*$/,"").trim(),8)),O4s={12:8589934591,8:2097151},xne=(e,t,r,s)=>s===null?!1:s>O4s[r]||s<0?(tpn.encode(s,e.slice(t,t+r)),!0):(M4s(e,t,r,s),!1),M4s=(e,t,r,s)=>e.write(Q4s(s,r),t,r,"ascii"),Q4s=(e,t)=>Y4s(Math.floor(e).toString(8),t),Y4s=(e,t)=>(e.length===t-1?e:new Array(t-e.length-1).join("0")+e+" ")+"\0",qJt=(e,t,r,s)=>s===null?!1:xne(e,t,r,s.getTime()/1e3),H4s=new Array(156).join("\0"),SAe=(e,t,r,s)=>s===null?!1:(e.write(s+H4s,t,r,"utf8"),s.length!==Buffer.byteLength(s)||s.length>r);rpn.exports=$Jt});var Bst=z((YOc,npn)=>{"use strict";var X4s=sEe(),J4s=Dt("path"),BVe=class{constructor(t,r){this.atime=t.atime||null,this.charset=t.charset||null,this.comment=t.comment||null,this.ctime=t.ctime||null,this.gid=t.gid||null,this.gname=t.gname||null,this.linkpath=t.linkpath||null,this.mtime=t.mtime||null,this.path=t.path||null,this.size=t.size||null,this.uid=t.uid||null,this.uname=t.uname||null,this.dev=t.dev||null,this.ino=t.ino||null,this.nlink=t.nlink||null,this.global=r||!1}encode(){let t=this.encodeBody();if(t==="")return null;let r=Buffer.byteLength(t),s=512*Math.ceil(1+r/512),a=Buffer.allocUnsafe(s);for(let o=0;o<512;o++)a[o]=0;new X4s({path:("PaxHeader/"+J4s.basename(this.path)).slice(0,99),mode:this.mode||420,uid:this.uid||null,gid:this.gid||null,size:r,mtime:this.mtime||null,type:this.global?"GlobalExtendedHeader":"ExtendedHeader",linkpath:"",uname:this.uname||"",gname:this.gname||"",devmaj:0,devmin:0,atime:this.atime||null,ctime:this.ctime||null}).encode(a),a.write(t,512,r,"utf8");for(let o=r+512;o=Math.pow(10,o)&&(o+=1),o+a+s}};BVe.parse=(e,t,r)=>new BVe(U4s(K4s(e),t),r);var U4s=(e,t)=>t?Object.keys(e).reduce((r,s)=>(r[s]=e[s],r),t):e,K4s=e=>e.replace(/\n$/,"").split(` -`).reduce(j4s,Object.create(null)),j4s=(e,t)=>{let r=parseInt(t,10);if(r!==Buffer.byteLength(t)+1)return e;t=t.slice((r+" ").length);let s=t.split("="),a=s.shift().replace(/^SCHILY\.(dev|ino|nlink)/,"$1");if(!a)return e;let o=s.join("=");return e[a]=/^([A-Z]+\.)?([mac]|birth|creation)time$/.test(a)?new Date(o*1e3):/^[0-9]+$/.test(o)?+o:o,e};npn.exports=BVe});var oEe=z((HOc,ipn)=>{ipn.exports=e=>{let t=e.length-1,r=-1;for(;t>-1&&e.charAt(t)==="/";)r=t,t--;return r===-1?e:e.slice(0,r)}});var vst=z((XOc,spn)=>{"use strict";spn.exports=e=>class extends e{warn(t,r,s={}){this.file&&(s.file=this.file),this.cwd&&(s.cwd=this.cwd),s.code=r instanceof Error&&r.code||t,s.tarCode=t,!this.strict&&s.recoverable!==!1?(r instanceof Error&&(s=Object.assign(r,s),r=r.message),this.emit("warn",s.tarCode,r,s)):r instanceof Error?this.emit("error",Object.assign(r,s)):this.emit("error",Object.assign(new Error(`${t}: ${r}`),s))}}});var tUt=z((UOc,opn)=>{"use strict";var Sst=["|","<",">","?",":"],eUt=Sst.map(e=>String.fromCharCode(61440+e.charCodeAt(0))),z4s=new Map(Sst.map((e,t)=>[e,eUt[t]])),q4s=new Map(eUt.map((e,t)=>[e,Sst[t]]));opn.exports={encode:e=>Sst.reduce((t,r)=>t.split(r).join(z4s.get(r)),e),decode:e=>eUt.reduce((t,r)=>t.split(r).join(q4s.get(r)),e)}});var rUt=z((KOc,cpn)=>{var{isAbsolute:$4s,parse:apn}=Dt("path").win32;cpn.exports=e=>{let t="",r=apn(e);for(;$4s(e)||r.root;){let s=e.charAt(0)==="/"&&e.slice(0,4)!=="//?/"?"/":r.root;e=e.slice(s.length),t+=s,r=apn(e)}return[t,e]}});var upn=z((jOc,lpn)=>{"use strict";lpn.exports=(e,t,r)=>(e&=4095,r&&(e=(e|384)&-19),t&&(e&256&&(e|=64),e&32&&(e|=8),e&4&&(e|=1)),e)});var AUt=z(($Oc,Bpn)=>{"use strict";var{Minipass:Cpn}=dst(),mpn=Bst(),hpn=sEe(),GJ=Dt("fs"),gpn=Dt("path"),kJ=nEe(),eJs=oEe(),_pn=(e,t)=>t?(e=kJ(e).replace(/^\.(\/|$)/,""),eJs(t)+"/"+e):kJ(e),tJs=16*1024*1024,Apn=Symbol("process"),dpn=Symbol("file"),ppn=Symbol("directory"),iUt=Symbol("symlink"),fpn=Symbol("hardlink"),vVe=Symbol("header"),wst=Symbol("read"),sUt=Symbol("lstat"),Tst=Symbol("onlstat"),oUt=Symbol("onread"),aUt=Symbol("onreadlink"),cUt=Symbol("openfile"),lUt=Symbol("onopenfile"),kne=Symbol("close"),Nst=Symbol("mode"),uUt=Symbol("awaitDrain"),nUt=Symbol("ondrain"),FJ=Symbol("prefix"),Ipn=Symbol("hadError"),ypn=vst(),rJs=tUt(),bpn=rUt(),Epn=upn(),Rst=ypn(class extends Cpn{constructor(t,r){if(r=r||{},super(r),typeof t!="string")throw new TypeError("path is required");this.path=kJ(t),this.portable=!!r.portable,this.myuid=process.getuid&&process.getuid()||0,this.myuser=process.env.USER||"",this.maxReadSize=r.maxReadSize||tJs,this.linkCache=r.linkCache||new Map,this.statCache=r.statCache||new Map,this.preservePaths=!!r.preservePaths,this.cwd=kJ(r.cwd||process.cwd()),this.strict=!!r.strict,this.noPax=!!r.noPax,this.noMtime=!!r.noMtime,this.mtime=r.mtime||null,this.prefix=r.prefix?kJ(r.prefix):null,this.fd=null,this.blockLen=null,this.blockRemain=null,this.buf=null,this.offset=null,this.length=null,this.pos=null,this.remain=null,typeof r.onwarn=="function"&&this.on("warn",r.onwarn);let s=!1;if(!this.preservePaths){let[a,o]=bpn(this.path);a&&(this.path=o,s=a)}this.win32=!!r.win32||process.platform==="win32",this.win32&&(this.path=rJs.decode(this.path.replace(/\\/g,"/")),t=t.replace(/\\/g,"/")),this.absolute=kJ(r.absolute||gpn.resolve(this.cwd,t)),this.path===""&&(this.path="./"),s&&this.warn("TAR_ENTRY_INFO",`stripping ${s} from absolute path`,{entry:this,path:s+this.path}),this.statCache.has(this.absolute)?this[Tst](this.statCache.get(this.absolute)):this[sUt]()}emit(t,...r){return t==="error"&&(this[Ipn]=!0),super.emit(t,...r)}[sUt](){GJ.lstat(this.absolute,(t,r)=>{if(t)return this.emit("error",t);this[Tst](r)})}[Tst](t){this.statCache.set(this.absolute,t),this.stat=t,t.isFile()||(t.size=0),this.type=iJs(t),this.emit("stat",t),this[Apn]()}[Apn](){switch(this.type){case"File":return this[dpn]();case"Directory":return this[ppn]();case"SymbolicLink":return this[iUt]();default:return this.end()}}[Nst](t){return Epn(t,this.type==="Directory",this.portable)}[FJ](t){return _pn(t,this.prefix)}[vVe](){this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.header=new hpn({path:this[FJ](this.path),linkpath:this.type==="Link"?this[FJ](this.linkpath):this.linkpath,mode:this[Nst](this.stat.mode),uid:this.portable?null:this.stat.uid,gid:this.portable?null:this.stat.gid,size:this.stat.size,mtime:this.noMtime?null:this.mtime||this.stat.mtime,type:this.type,uname:this.portable?null:this.stat.uid===this.myuid?this.myuser:"",atime:this.portable?null:this.stat.atime,ctime:this.portable?null:this.stat.ctime}),this.header.encode()&&!this.noPax&&super.write(new mpn({atime:this.portable?null:this.header.atime,ctime:this.portable?null:this.header.ctime,gid:this.portable?null:this.header.gid,mtime:this.noMtime?null:this.mtime||this.header.mtime,path:this[FJ](this.path),linkpath:this.type==="Link"?this[FJ](this.linkpath):this.linkpath,size:this.header.size,uid:this.portable?null:this.header.uid,uname:this.portable?null:this.header.uname,dev:this.portable?null:this.stat.dev,ino:this.portable?null:this.stat.ino,nlink:this.portable?null:this.stat.nlink}).encode()),super.write(this.header.block)}[ppn](){this.path.slice(-1)!=="/"&&(this.path+="/"),this.stat.size=0,this[vVe](),this.end()}[iUt](){GJ.readlink(this.absolute,(t,r)=>{if(t)return this.emit("error",t);this[aUt](r)})}[aUt](t){this.linkpath=kJ(t),this[vVe](),this.end()}[fpn](t){this.type="Link",this.linkpath=kJ(gpn.relative(this.cwd,t)),this.stat.size=0,this[vVe](),this.end()}[dpn](){if(this.stat.nlink>1){let t=this.stat.dev+":"+this.stat.ino;if(this.linkCache.has(t)){let r=this.linkCache.get(t);if(r.indexOf(this.cwd)===0)return this[fpn](r)}this.linkCache.set(t,this.absolute)}if(this[vVe](),this.stat.size===0)return this.end();this[cUt]()}[cUt](){GJ.open(this.absolute,"r",(t,r)=>{if(t)return this.emit("error",t);this[lUt](r)})}[lUt](t){if(this.fd=t,this[Ipn])return this[kne]();this.blockLen=512*Math.ceil(this.stat.size/512),this.blockRemain=this.blockLen;let r=Math.min(this.blockLen,this.maxReadSize);this.buf=Buffer.allocUnsafe(r),this.offset=0,this.pos=0,this.remain=this.stat.size,this.length=this.buf.length,this[wst]()}[wst](){let{fd:t,buf:r,offset:s,length:a,pos:o}=this;GJ.read(t,r,s,a,o,(g,p)=>{if(g)return this[kne](()=>this.emit("error",g));this[oUt](p)})}[kne](t){GJ.close(this.fd,t)}[oUt](t){if(t<=0&&this.remain>0){let a=new Error("encountered unexpected EOF");return a.path=this.absolute,a.syscall="read",a.code="EOF",this[kne](()=>this.emit("error",a))}if(t>this.remain){let a=new Error("did not encounter expected EOF");return a.path=this.absolute,a.syscall="read",a.code="EOF",this[kne](()=>this.emit("error",a))}if(t===this.remain)for(let a=t;athis[nUt]())}[uUt](t){this.once("drain",t)}write(t){if(this.blockRemaint?this.emit("error",t):this.end());this.offset>=this.length&&(this.buf=Buffer.allocUnsafe(Math.min(this.blockRemain,this.buf.length)),this.offset=0),this.length=this.buf.length-this.offset,this[wst]()}}),gUt=class extends Rst{[sUt](){this[Tst](GJ.lstatSync(this.absolute))}[iUt](){this[aUt](GJ.readlinkSync(this.absolute))}[cUt](){this[lUt](GJ.openSync(this.absolute,"r"))}[wst](){let t=!0;try{let{fd:r,buf:s,offset:a,length:o,pos:g}=this,p=GJ.readSync(r,s,a,o,g);this[oUt](p),t=!1}finally{if(t)try{this[kne](()=>{})}catch{}}}[uUt](t){t()}[kne](t){GJ.closeSync(this.fd),t()}},nJs=ypn(class extends Cpn{constructor(t,r){r=r||{},super(r),this.preservePaths=!!r.preservePaths,this.portable=!!r.portable,this.strict=!!r.strict,this.noPax=!!r.noPax,this.noMtime=!!r.noMtime,this.readEntry=t,this.type=t.type,this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.prefix=r.prefix||null,this.path=kJ(t.path),this.mode=this[Nst](t.mode),this.uid=this.portable?null:t.uid,this.gid=this.portable?null:t.gid,this.uname=this.portable?null:t.uname,this.gname=this.portable?null:t.gname,this.size=t.size,this.mtime=this.noMtime?null:r.mtime||t.mtime,this.atime=this.portable?null:t.atime,this.ctime=this.portable?null:t.ctime,this.linkpath=kJ(t.linkpath),typeof r.onwarn=="function"&&this.on("warn",r.onwarn);let s=!1;if(!this.preservePaths){let[a,o]=bpn(this.path);a&&(this.path=o,s=a)}this.remain=t.size,this.blockRemain=t.startBlockSize,this.header=new hpn({path:this[FJ](this.path),linkpath:this.type==="Link"?this[FJ](this.linkpath):this.linkpath,mode:this.mode,uid:this.portable?null:this.uid,gid:this.portable?null:this.gid,size:this.size,mtime:this.noMtime?null:this.mtime,type:this.type,uname:this.portable?null:this.uname,atime:this.portable?null:this.atime,ctime:this.portable?null:this.ctime}),s&&this.warn("TAR_ENTRY_INFO",`stripping ${s} from absolute path`,{entry:this,path:s+this.path}),this.header.encode()&&!this.noPax&&super.write(new mpn({atime:this.portable?null:this.atime,ctime:this.portable?null:this.ctime,gid:this.portable?null:this.gid,mtime:this.noMtime?null:this.mtime,path:this[FJ](this.path),linkpath:this.type==="Link"?this[FJ](this.linkpath):this.linkpath,size:this.size,uid:this.portable?null:this.uid,uname:this.portable?null:this.uname,dev:this.portable?null:this.readEntry.dev,ino:this.portable?null:this.readEntry.ino,nlink:this.portable?null:this.readEntry.nlink}).encode()),super.write(this.header.block),t.pipe(this)}[FJ](t){return _pn(t,this.prefix)}[Nst](t){return Epn(t,this.type==="Directory",this.portable)}write(t){let r=t.length;if(r>this.blockRemain)throw new Error("writing more to entry than is appropriate");return this.blockRemain-=r,super.write(t)}end(){return this.blockRemain&&super.write(Buffer.alloc(this.blockRemain)),super.end()}});Rst.Sync=gUt;Rst.Tar=nJs;var iJs=e=>e.isFile()?"File":e.isDirectory()?"Directory":e.isSymbolicLink()?"SymbolicLink":"Unsupported";Bpn.exports=Rst});var Spn=z((eMc,vpn)=>{"use strict";vpn.exports=function(e){e.prototype[Symbol.iterator]=function*(){for(let t=this.head;t;t=t.next)yield t.value}}});var dUt=z((tMc,wpn)=>{"use strict";wpn.exports=f_;f_.Node=wAe;f_.create=f_;function f_(e){var t=this;if(t instanceof f_||(t=new f_),t.tail=null,t.head=null,t.length=0,e&&typeof e.forEach=="function")e.forEach(function(a){t.push(a)});else if(arguments.length>0)for(var r=0,s=arguments.length;r1)r=t;else if(this.head)s=this.head.next,r=this.head.value;else throw new TypeError("Reduce of empty list with no initial value");for(var a=0;s!==null;a++)r=e(r,s.value,a),s=s.next;return r};f_.prototype.reduceReverse=function(e,t){var r,s=this.tail;if(arguments.length>1)r=t;else if(this.tail)s=this.tail.prev,r=this.tail.value;else throw new TypeError("Reduce of empty list with no initial value");for(var a=this.length-1;s!==null;a--)r=e(r,s.value,a),s=s.prev;return r};f_.prototype.toArray=function(){for(var e=new Array(this.length),t=0,r=this.head;r!==null;t++)e[t]=r.value,r=r.next;return e};f_.prototype.toArrayReverse=function(){for(var e=new Array(this.length),t=0,r=this.tail;r!==null;t++)e[t]=r.value,r=r.prev;return e};f_.prototype.slice=function(e,t){t=t||this.length,t<0&&(t+=this.length),e=e||0,e<0&&(e+=this.length);var r=new f_;if(tthis.length&&(t=this.length);for(var s=0,a=this.head;a!==null&&sthis.length&&(t=this.length);for(var s=this.length,a=this.tail;a!==null&&s>t;s--)a=a.prev;for(;a!==null&&s>e;s--,a=a.prev)r.push(a.value);return r};f_.prototype.splice=function(e,t,...r){e>this.length&&(e=this.length-1),e<0&&(e=this.length+e);for(var s=0,a=this.head;a!==null&&s{"use strict";var Lst=class{constructor(t,r){this.path=t||"./",this.absolute=r,this.entry=null,this.stat=null,this.readdir=null,this.pending=!1,this.ignore=!1,this.piped=!1}},{Minipass:cJs}=dst(),Tpn=HJt(),lJs=bst(),bUt=AUt(),uJs=bUt.Sync,gJs=bUt.Tar,AJs=dUt(),Npn=Buffer.alloc(1024),kst=Symbol("onStat"),Dst=Symbol("ended"),ZJ=Symbol("queue"),aEe=Symbol("current"),TAe=Symbol("process"),xst=Symbol("processing"),Rpn=Symbol("processJob"),LJ=Symbol("jobs"),pUt=Symbol("jobDone"),Gst=Symbol("addFSEntry"),Dpn=Symbol("addTarEntry"),mUt=Symbol("stat"),hUt=Symbol("readdir"),Fst=Symbol("onreaddir"),Zst=Symbol("pipe"),xpn=Symbol("entry"),fUt=Symbol("entryOpt"),_Ut=Symbol("writeEntryClass"),Gpn=Symbol("write"),IUt=Symbol("ondrain"),Vst=Dt("fs"),kpn=Dt("path"),dJs=vst(),CUt=nEe(),EUt=dJs(class extends cJs{constructor(t){if(super(t),t=t||Object.create(null),this.opt=t,this.file=t.file||"",this.cwd=t.cwd||process.cwd(),this.maxReadSize=t.maxReadSize,this.preservePaths=!!t.preservePaths,this.strict=!!t.strict,this.noPax=!!t.noPax,this.prefix=CUt(t.prefix||""),this.linkCache=t.linkCache||new Map,this.statCache=t.statCache||new Map,this.readdirCache=t.readdirCache||new Map,this[_Ut]=bUt,typeof t.onwarn=="function"&&this.on("warn",t.onwarn),this.portable=!!t.portable,this.zip=null,t.gzip||t.brotli){if(t.gzip&&t.brotli)throw new TypeError("gzip and brotli are mutually exclusive");t.gzip&&(typeof t.gzip!="object"&&(t.gzip={}),this.portable&&(t.gzip.portable=!0),this.zip=new Tpn.Gzip(t.gzip)),t.brotli&&(typeof t.brotli!="object"&&(t.brotli={}),this.zip=new Tpn.BrotliCompress(t.brotli)),this.zip.on("data",r=>super.write(r)),this.zip.on("end",r=>super.end()),this.zip.on("drain",r=>this[IUt]()),this.on("resume",r=>this.zip.resume())}else this.on("drain",this[IUt]);this.noDirRecurse=!!t.noDirRecurse,this.follow=!!t.follow,this.noMtime=!!t.noMtime,this.mtime=t.mtime||null,this.filter=typeof t.filter=="function"?t.filter:r=>!0,this[ZJ]=new AJs,this[LJ]=0,this.jobs=+t.jobs||4,this[xst]=!1,this[Dst]=!1}[Gpn](t){return super.write(t)}add(t){return this.write(t),this}end(t){return t&&this.write(t),this[Dst]=!0,this[TAe](),this}write(t){if(this[Dst])throw new Error("write after end");return t instanceof lJs?this[Dpn](t):this[Gst](t),this.flowing}[Dpn](t){let r=CUt(kpn.resolve(this.cwd,t.path));if(!this.filter(t.path,t))t.resume();else{let s=new Lst(t.path,r,!1);s.entry=new gJs(t,this[fUt](s)),s.entry.on("end",a=>this[pUt](s)),this[LJ]+=1,this[ZJ].push(s)}this[TAe]()}[Gst](t){let r=CUt(kpn.resolve(this.cwd,t));this[ZJ].push(new Lst(t,r)),this[TAe]()}[mUt](t){t.pending=!0,this[LJ]+=1;let r=this.follow?"stat":"lstat";Vst[r](t.absolute,(s,a)=>{t.pending=!1,this[LJ]-=1,s?this.emit("error",s):this[kst](t,a)})}[kst](t,r){this.statCache.set(t.absolute,r),t.stat=r,this.filter(t.path,r)||(t.ignore=!0),this[TAe]()}[hUt](t){t.pending=!0,this[LJ]+=1,Vst.readdir(t.absolute,(r,s)=>{if(t.pending=!1,this[LJ]-=1,r)return this.emit("error",r);this[Fst](t,s)})}[Fst](t,r){this.readdirCache.set(t.absolute,r),t.readdir=r,this[TAe]()}[TAe](){if(!this[xst]){this[xst]=!0;for(let t=this[ZJ].head;t!==null&&this[LJ]this.warn(r,s,a),noPax:this.noPax,cwd:this.cwd,absolute:t.absolute,preservePaths:this.preservePaths,maxReadSize:this.maxReadSize,strict:this.strict,portable:this.portable,linkCache:this.linkCache,statCache:this.statCache,noMtime:this.noMtime,mtime:this.mtime,prefix:this.prefix}}[xpn](t){this[LJ]+=1;try{return new this[_Ut](t.path,this[fUt](t)).on("end",()=>this[pUt](t)).on("error",r=>this.emit("error",r))}catch(r){this.emit("error",r)}}[IUt](){this[aEe]&&this[aEe].entry&&this[aEe].entry.resume()}[Zst](t){t.piped=!0,t.readdir&&t.readdir.forEach(a=>{let o=t.path,g=o==="./"?"":o.replace(/\/*$/,"/");this[Gst](g+a)});let r=t.entry,s=this.zip;s?r.on("data",a=>{s.write(a)||r.pause()}):r.on("data",a=>{super.write(a)||r.pause()})}pause(){return this.zip&&this.zip.pause(),super.pause()}}),yUt=class extends EUt{constructor(t){super(t),this[_Ut]=uJs}pause(){}resume(){}[mUt](t){let r=this.follow?"statSync":"lstatSync";this[kst](t,Vst[r](t.absolute))}[hUt](t,r){this[Fst](t,Vst.readdirSync(t.absolute))}[Zst](t){let r=t.entry,s=this.zip;t.readdir&&t.readdir.forEach(a=>{let o=t.path,g=o==="./"?"":o.replace(/\/*$/,"/");this[Gst](g+a)}),s?r.on("data",a=>{s.write(a)}):r.on("data",a=>{super[Gpn](a)})}};EUt.Sync=yUt;Fpn.exports=EUt});var fEe=z(wVe=>{"use strict";var pJs=NJt(),fJs=Dt("events").EventEmitter,FL=Dt("fs"),SUt=FL.writev;if(!SUt){let e=process.binding("fs"),t=e.FSReqWrap||e.FSReqCallback;SUt=(r,s,a,o)=>{let g=(f,m)=>o(f,m,s),p=new t;p.oncomplete=g,e.writeBuffers(r,s,a,p)}}var dEe=Symbol("_autoClose"),EH=Symbol("_close"),SVe=Symbol("_ended"),Dy=Symbol("_fd"),Zpn=Symbol("_finished"),Fne=Symbol("_flags"),BUt=Symbol("_flush"),wUt=Symbol("_handleChunk"),TUt=Symbol("_makeBuf"),Yst=Symbol("_mode"),Pst=Symbol("_needDrain"),gEe=Symbol("_onerror"),pEe=Symbol("_onopen"),vUt=Symbol("_onread"),lEe=Symbol("_onwrite"),Zne=Symbol("_open"),hj=Symbol("_path"),NAe=Symbol("_pos"),VJ=Symbol("_queue"),uEe=Symbol("_read"),Lpn=Symbol("_readSize"),Gne=Symbol("_reading"),Ost=Symbol("_remain"),Vpn=Symbol("_size"),Mst=Symbol("_write"),cEe=Symbol("_writing"),Qst=Symbol("_defaultFlag"),AEe=Symbol("_errored"),Hst=class extends pJs{constructor(t,r){if(r=r||{},super(r),this.readable=!0,this.writable=!1,typeof t!="string")throw new TypeError("path must be a string");this[AEe]=!1,this[Dy]=typeof r.fd=="number"?r.fd:null,this[hj]=t,this[Lpn]=r.readSize||16*1024*1024,this[Gne]=!1,this[Vpn]=typeof r.size=="number"?r.size:1/0,this[Ost]=this[Vpn],this[dEe]=typeof r.autoClose=="boolean"?r.autoClose:!0,typeof this[Dy]=="number"?this[uEe]():this[Zne]()}get fd(){return this[Dy]}get path(){return this[hj]}write(){throw new TypeError("this is a readable stream")}end(){throw new TypeError("this is a readable stream")}[Zne](){FL.open(this[hj],"r",(t,r)=>this[pEe](t,r))}[pEe](t,r){t?this[gEe](t):(this[Dy]=r,this.emit("open",r),this[uEe]())}[TUt](){return Buffer.allocUnsafe(Math.min(this[Lpn],this[Ost]))}[uEe](){if(!this[Gne]){this[Gne]=!0;let t=this[TUt]();if(t.length===0)return process.nextTick(()=>this[vUt](null,0,t));FL.read(this[Dy],t,0,t.length,null,(r,s,a)=>this[vUt](r,s,a))}}[vUt](t,r,s){this[Gne]=!1,t?this[gEe](t):this[wUt](r,s)&&this[uEe]()}[EH](){if(this[dEe]&&typeof this[Dy]=="number"){let t=this[Dy];this[Dy]=null,FL.close(t,r=>r?this.emit("error",r):this.emit("close"))}}[gEe](t){this[Gne]=!0,this[EH](),this.emit("error",t)}[wUt](t,r){let s=!1;return this[Ost]-=t,t>0&&(s=super.write(tthis[pEe](t,r))}[pEe](t,r){this[Qst]&&this[Fne]==="r+"&&t&&t.code==="ENOENT"?(this[Fne]="w",this[Zne]()):t?this[gEe](t):(this[Dy]=r,this.emit("open",r),this[BUt]())}end(t,r){return t&&this.write(t,r),this[SVe]=!0,!this[cEe]&&!this[VJ].length&&typeof this[Dy]=="number"&&this[lEe](null,0),this}write(t,r){return typeof t=="string"&&(t=Buffer.from(t,r)),this[SVe]?(this.emit("error",new Error("write() after end()")),!1):this[Dy]===null||this[cEe]||this[VJ].length?(this[VJ].push(t),this[Pst]=!0,!1):(this[cEe]=!0,this[Mst](t),!0)}[Mst](t){FL.write(this[Dy],t,0,t.length,this[NAe],(r,s)=>this[lEe](r,s))}[lEe](t,r){t?this[gEe](t):(this[NAe]!==null&&(this[NAe]+=r),this[VJ].length?this[BUt]():(this[cEe]=!1,this[SVe]&&!this[Zpn]?(this[Zpn]=!0,this[EH](),this.emit("finish")):this[Pst]&&(this[Pst]=!1,this.emit("drain"))))}[BUt](){if(this[VJ].length===0)this[SVe]&&this[lEe](null,0);else if(this[VJ].length===1)this[Mst](this[VJ].pop());else{let t=this[VJ];this[VJ]=[],SUt(this[Dy],t,this[NAe],(r,s)=>this[lEe](r,s))}}[EH](){if(this[dEe]&&typeof this[Dy]=="number"){let t=this[Dy];this[Dy]=null,FL.close(t,r=>r?this.emit("error",r):this.emit("close"))}}},RUt=class extends Xst{[Zne](){let t;if(this[Qst]&&this[Fne]==="r+")try{t=FL.openSync(this[hj],this[Fne],this[Yst])}catch(r){if(r.code==="ENOENT")return this[Fne]="w",this[Zne]();throw r}else t=FL.openSync(this[hj],this[Fne],this[Yst]);this[pEe](null,t)}[EH](){if(this[dEe]&&typeof this[Dy]=="number"){let t=this[Dy];this[Dy]=null,FL.closeSync(t),this.emit("close")}}[Mst](t){let r=!0;try{this[lEe](null,FL.writeSync(this[Dy],t,0,t.length,this[NAe])),r=!1}finally{if(r)try{this[EH]()}catch{}}}};wVe.ReadStream=Hst;wVe.ReadStreamSync=NUt;wVe.WriteStream=Xst;wVe.WriteStreamSync=RUt});var $st=z((oMc,Upn)=>{"use strict";var IJs=vst(),Wpn=sEe(),CJs=Dt("events"),mJs=dUt(),hJs=1024*1024,_Js=bst(),Ppn=Bst(),Opn=HJt(),{nextTick:yJs}=Dt("process"),DUt=Buffer.from([31,139]),SO=Symbol("state"),RAe=Symbol("writeEntry"),_j=Symbol("readEntry"),xUt=Symbol("nextEntry"),Mpn=Symbol("processEntry"),wO=Symbol("extendedHeader"),TVe=Symbol("globalExtendedHeader"),Lne=Symbol("meta"),Qpn=Symbol("emitMeta"),oE=Symbol("buffer"),yj=Symbol("queue"),Vne=Symbol("ended"),Ypn=Symbol("emittedEnd"),DAe=Symbol("emit"),cR=Symbol("unzip"),Jst=Symbol("consumeChunk"),Ust=Symbol("consumeChunkSub"),kUt=Symbol("consumeBody"),Hpn=Symbol("consumeMeta"),Xpn=Symbol("consumeHeader"),Kst=Symbol("consuming"),GUt=Symbol("bufferConcat"),FUt=Symbol("maybeEnd"),NVe=Symbol("writing"),Wne=Symbol("aborted"),jst=Symbol("onDone"),xAe=Symbol("sawValidEntry"),zst=Symbol("sawNullBlock"),qst=Symbol("sawEOF"),Jpn=Symbol("closeStream"),bJs=e=>!0;Upn.exports=IJs(class extends CJs{constructor(t){t=t||{},super(t),this.file=t.file||"",this[xAe]=null,this.on(jst,s=>{(this[SO]==="begin"||this[xAe]===!1)&&this.warn("TAR_BAD_ARCHIVE","Unrecognized archive format")}),t.ondone?this.on(jst,t.ondone):this.on(jst,s=>{this.emit("prefinish"),this.emit("finish"),this.emit("end")}),this.strict=!!t.strict,this.maxMetaEntrySize=t.maxMetaEntrySize||hJs,this.filter=typeof t.filter=="function"?t.filter:bJs;let r=t.file&&(t.file.endsWith(".tar.br")||t.file.endsWith(".tbr"));this.brotli=!t.gzip&&t.brotli!==void 0?t.brotli:r?void 0:!1,this.writable=!0,this.readable=!1,this[yj]=new mJs,this[oE]=null,this[_j]=null,this[RAe]=null,this[SO]="begin",this[Lne]="",this[wO]=null,this[TVe]=null,this[Vne]=!1,this[cR]=null,this[Wne]=!1,this[zst]=!1,this[qst]=!1,this.on("end",()=>this[Jpn]()),typeof t.onwarn=="function"&&this.on("warn",t.onwarn),typeof t.onentry=="function"&&this.on("entry",t.onentry)}[Xpn](t,r){this[xAe]===null&&(this[xAe]=!1);let s;try{s=new Wpn(t,r,this[wO],this[TVe])}catch(a){return this.warn("TAR_ENTRY_INVALID",a)}if(s.nullBlock)this[zst]?(this[qst]=!0,this[SO]==="begin"&&(this[SO]="header"),this[DAe]("eof")):(this[zst]=!0,this[DAe]("nullBlock"));else if(this[zst]=!1,!s.cksumValid)this.warn("TAR_ENTRY_INVALID","checksum failure",{header:s});else if(!s.path)this.warn("TAR_ENTRY_INVALID","path is required",{header:s});else{let a=s.type;if(/^(Symbolic)?Link$/.test(a)&&!s.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath required",{header:s});else if(!/^(Symbolic)?Link$/.test(a)&&s.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath forbidden",{header:s});else{let o=this[RAe]=new _Js(s,this[wO],this[TVe]);if(!this[xAe])if(o.remain){let g=()=>{o.invalid||(this[xAe]=!0)};o.on("end",g)}else this[xAe]=!0;o.meta?o.size>this.maxMetaEntrySize?(o.ignore=!0,this[DAe]("ignoredEntry",o),this[SO]="ignore",o.resume()):o.size>0&&(this[Lne]="",o.on("data",g=>this[Lne]+=g),this[SO]="meta"):(this[wO]=null,o.ignore=o.ignore||!this.filter(o.path,o),o.ignore?(this[DAe]("ignoredEntry",o),this[SO]=o.remain?"ignore":"header",o.resume()):(o.remain?this[SO]="body":(this[SO]="header",o.end()),this[_j]?this[yj].push(o):(this[yj].push(o),this[xUt]())))}}}[Jpn](){yJs(()=>this.emit("close"))}[Mpn](t){let r=!0;return t?Array.isArray(t)?this.emit.apply(this,t):(this[_j]=t,this.emit("entry",t),t.emittedEnd||(t.on("end",s=>this[xUt]()),r=!1)):(this[_j]=null,r=!1),r}[xUt](){do;while(this[Mpn](this[yj].shift()));if(!this[yj].length){let t=this[_j];!t||t.flowing||t.size===t.remain?this[NVe]||this.emit("drain"):t.once("drain",s=>this.emit("drain"))}}[kUt](t,r){let s=this[RAe],a=s.blockRemain,o=a>=t.length&&r===0?t:t.slice(r,r+a);return s.write(o),s.blockRemain||(this[SO]="header",this[RAe]=null,s.end()),o.length}[Hpn](t,r){let s=this[RAe],a=this[kUt](t,r);return this[RAe]||this[Qpn](s),a}[DAe](t,r,s){!this[yj].length&&!this[_j]?this.emit(t,r,s):this[yj].push([t,r,s])}[Qpn](t){switch(this[DAe]("meta",this[Lne]),t.type){case"ExtendedHeader":case"OldExtendedHeader":this[wO]=Ppn.parse(this[Lne],this[wO],!1);break;case"GlobalExtendedHeader":this[TVe]=Ppn.parse(this[Lne],this[TVe],!0);break;case"NextFileHasLongPath":case"OldGnuLongPath":this[wO]=this[wO]||Object.create(null),this[wO].path=this[Lne].replace(/\0.*/,"");break;case"NextFileHasLongLinkpath":this[wO]=this[wO]||Object.create(null),this[wO].linkpath=this[Lne].replace(/\0.*/,"");break;default:throw new Error("unknown meta: "+t.type)}}abort(t){this[Wne]=!0,this.emit("abort",t),this.warn("TAR_ABORT",t,{recoverable:!1})}write(t){if(this[Wne])return;if((this[cR]===null||this.brotli===void 0&&this[cR]===!1)&&t){if(this[oE]&&(t=Buffer.concat([this[oE],t]),this[oE]=null),t.lengththis[Jst](p)),this[cR].on("error",p=>this.abort(p)),this[cR].on("end",p=>{this[Vne]=!0,this[Jst]()}),this[NVe]=!0;let g=this[cR][o?"end":"write"](t);return this[NVe]=!1,g}}this[NVe]=!0,this[cR]?this[cR].write(t):this[Jst](t),this[NVe]=!1;let s=this[yj].length?!1:this[_j]?this[_j].flowing:!0;return!s&&!this[yj].length&&this[_j].once("drain",a=>this.emit("drain")),s}[GUt](t){t&&!this[Wne]&&(this[oE]=this[oE]?Buffer.concat([this[oE],t]):t)}[FUt](){if(this[Vne]&&!this[Ypn]&&!this[Wne]&&!this[Kst]){this[Ypn]=!0;let t=this[RAe];if(t&&t.blockRemain){let r=this[oE]?this[oE].length:0;this.warn("TAR_BAD_ARCHIVE",`Truncated input (needed ${t.blockRemain} more bytes, only ${r} available)`,{entry:t}),this[oE]&&t.write(this[oE]),t.end()}this[DAe](jst)}}[Jst](t){if(this[Kst])this[GUt](t);else if(!t&&!this[oE])this[FUt]();else{if(this[Kst]=!0,this[oE]){this[GUt](t);let r=this[oE];this[oE]=null,this[Ust](r)}else this[Ust](t);for(;this[oE]&&this[oE].length>=512&&!this[Wne]&&!this[qst];){let r=this[oE];this[oE]=null,this[Ust](r)}this[Kst]=!1}(!this[oE]||this[Vne])&&this[FUt]()}[Ust](t){let r=0,s=t.length;for(;r+512<=s&&!this[Wne]&&!this[qst];)switch(this[SO]){case"begin":case"header":this[Xpn](t,r),r+=512;break;case"ignore":case"body":r+=this[kUt](t,r);break;case"meta":r+=this[Hpn](t,r);break;default:throw new Error("invalid state: "+this[SO])}r{"use strict";var EJs=qbe(),jpn=$st(),IEe=Dt("fs"),BJs=fEe(),Kpn=Dt("path"),ZUt=oEe();qpn.exports=(e,t,r)=>{typeof e=="function"?(r=e,t=null,e={}):Array.isArray(e)&&(t=e,e={}),typeof t=="function"&&(r=t,t=null),t?t=Array.from(t):t=[];let s=EJs(e);if(s.sync&&typeof r=="function")throw new TypeError("callback not supported for sync tar functions");if(!s.file&&typeof r=="function")throw new TypeError("callback only supported with file option");return t.length&&SJs(s,t),s.noResume||vJs(s),s.file&&s.sync?wJs(s):s.file?TJs(s,r):zpn(s)};var vJs=e=>{let t=e.onentry;e.onentry=t?r=>{t(r),r.resume()}:r=>r.resume()},SJs=(e,t)=>{let r=new Map(t.map(o=>[ZUt(o),!0])),s=e.filter,a=(o,g)=>{let p=g||Kpn.parse(o).root||".",f=o===p?!1:r.has(o)?r.get(o):a(Kpn.dirname(o),p);return r.set(o,f),f};e.filter=s?(o,g)=>s(o,g)&&a(ZUt(o)):o=>a(ZUt(o))},wJs=e=>{let t=zpn(e),r=e.file,s=!0,a;try{let o=IEe.statSync(r),g=e.maxReadSize||16*1024*1024;if(o.size{let r=new jpn(e),s=e.maxReadSize||16*1024*1024,a=e.file,o=new Promise((g,p)=>{r.on("error",p),r.on("end",g),IEe.stat(a,(f,m)=>{if(f)p(f);else{let y=new BJs.ReadStream(a,{readSize:s,size:m.size});y.on("error",p),y.pipe(r)}})});return t?o.then(t,t):o},zpn=e=>new jpn(e)});var ifn=z((cMc,nfn)=>{"use strict";var NJs=qbe(),tot=Wst(),$pn=fEe(),efn=eot(),tfn=Dt("path");nfn.exports=(e,t,r)=>{if(typeof t=="function"&&(r=t),Array.isArray(e)&&(t=e,e={}),!t||!Array.isArray(t)||!t.length)throw new TypeError("no files or directories specified");t=Array.from(t);let s=NJs(e);if(s.sync&&typeof r=="function")throw new TypeError("callback not supported for sync tar functions");if(!s.file&&typeof r=="function")throw new TypeError("callback only supported with file option");return s.file&&s.sync?RJs(s,t):s.file?DJs(s,t,r):s.sync?xJs(s,t):kJs(s,t)};var RJs=(e,t)=>{let r=new tot.Sync(e),s=new $pn.WriteStreamSync(e.file,{mode:e.mode||438});r.pipe(s),rfn(r,t)},DJs=(e,t,r)=>{let s=new tot(e),a=new $pn.WriteStream(e.file,{mode:e.mode||438});s.pipe(a);let o=new Promise((g,p)=>{a.on("error",p),a.on("close",g),s.on("error",p)});return LUt(s,t),r?o.then(r,r):o},rfn=(e,t)=>{t.forEach(r=>{r.charAt(0)==="@"?efn({file:tfn.resolve(e.cwd,r.slice(1)),sync:!0,noResume:!0,onentry:s=>e.add(s)}):e.add(r)}),e.end()},LUt=(e,t)=>{for(;t.length;){let r=t.shift();if(r.charAt(0)==="@")return efn({file:tfn.resolve(e.cwd,r.slice(1)),noResume:!0,onentry:s=>e.add(s)}).then(s=>LUt(e,t));e.add(r)}e.end()},xJs=(e,t)=>{let r=new tot.Sync(e);return rfn(r,t),r},kJs=(e,t)=>{let r=new tot(e);return LUt(r,t),r}});var VUt=z((lMc,gfn)=>{"use strict";var GJs=qbe(),sfn=Wst(),_W=Dt("fs"),ofn=fEe(),afn=eot(),cfn=Dt("path"),lfn=sEe();gfn.exports=(e,t,r)=>{let s=GJs(e);if(!s.file)throw new TypeError("file is required");if(s.gzip||s.brotli||s.file.endsWith(".br")||s.file.endsWith(".tbr"))throw new TypeError("cannot append to compressed archives");if(!t||!Array.isArray(t)||!t.length)throw new TypeError("no files or directories specified");return t=Array.from(t),s.sync?FJs(s,t):LJs(s,t,r)};var FJs=(e,t)=>{let r=new sfn.Sync(e),s=!0,a,o;try{try{a=_W.openSync(e.file,"r+")}catch(f){if(f.code==="ENOENT")a=_W.openSync(e.file,"w+");else throw f}let g=_W.fstatSync(a),p=Buffer.alloc(512);e:for(o=0;og.size)break;o+=m,e.mtimeCache&&e.mtimeCache.set(f.path,f.mtime)}s=!1,ZJs(e,r,o,a,t)}finally{if(s)try{_W.closeSync(a)}catch{}}},ZJs=(e,t,r,s,a)=>{let o=new ofn.WriteStreamSync(e.file,{fd:s,start:r});t.pipe(o),VJs(t,a)},LJs=(e,t,r)=>{t=Array.from(t);let s=new sfn(e),a=(g,p,f)=>{let m=(T,O)=>{T?_W.close(g,X=>f(T)):f(null,O)},y=0;if(p===0)return m(null,0);let B=0,v=Buffer.alloc(512),G=(T,O)=>{if(T)return m(T);if(B+=O,B<512&&O)return _W.read(g,v,B,v.length-B,y+B,G);if(y===0&&v[0]===31&&v[1]===139)return m(new Error("cannot append to compressed archives"));if(B<512)return m(null,y);let X=new lfn(v);if(!X.cksumValid)return m(null,y);let U=512*Math.ceil(X.size/512);if(y+U+512>p||(y+=U+512,y>=p))return m(null,y);e.mtimeCache&&e.mtimeCache.set(X.path,X.mtime),B=0,_W.read(g,v,0,512,y,G)};_W.read(g,v,0,512,y,G)},o=new Promise((g,p)=>{s.on("error",p);let f="r+",m=(y,B)=>{if(y&&y.code==="ENOENT"&&f==="r+")return f="w+",_W.open(e.file,f,m);if(y)return p(y);_W.fstat(B,(v,G)=>{if(v)return _W.close(B,()=>p(v));a(B,G.size,(T,O)=>{if(T)return p(T);let X=new ofn.WriteStream(e.file,{fd:B,start:O});s.pipe(X),X.on("error",p),X.on("close",g),ufn(s,t)})})};_W.open(e.file,f,m)});return r?o.then(r,r):o},VJs=(e,t)=>{t.forEach(r=>{r.charAt(0)==="@"?afn({file:cfn.resolve(e.cwd,r.slice(1)),sync:!0,noResume:!0,onentry:s=>e.add(s)}):e.add(r)}),e.end()},ufn=(e,t)=>{for(;t.length;){let r=t.shift();if(r.charAt(0)==="@")return afn({file:cfn.resolve(e.cwd,r.slice(1)),noResume:!0,onentry:s=>e.add(s)}).then(s=>ufn(e,t));e.add(r)}e.end()}});var dfn=z((uMc,Afn)=>{"use strict";var WJs=qbe(),PJs=VUt();Afn.exports=(e,t,r)=>{let s=WJs(e);if(!s.file)throw new TypeError("file is required");if(s.gzip||s.brotli||s.file.endsWith(".br")||s.file.endsWith(".tbr"))throw new TypeError("cannot append to compressed archives");if(!t||!Array.isArray(t)||!t.length)throw new TypeError("no files or directories specified");return t=Array.from(t),OJs(s),PJs(s,t,r)};var OJs=e=>{let t=e.filter;e.mtimeCache||(e.mtimeCache=new Map),e.filter=t?(r,s)=>t(r,s)&&!(e.mtimeCache.get(r)>s.mtime):(r,s)=>!(e.mtimeCache.get(r)>s.mtime)}});var Ifn=z((gMc,ffn)=>{var{promisify:pfn}=Dt("util"),Pne=Dt("fs"),MJs=e=>{if(!e)e={mode:511,fs:Pne};else if(typeof e=="object")e={mode:511,fs:Pne,...e};else if(typeof e=="number")e={mode:e,fs:Pne};else if(typeof e=="string")e={mode:parseInt(e,8),fs:Pne};else throw new TypeError("invalid options argument");return e.mkdir=e.mkdir||e.fs.mkdir||Pne.mkdir,e.mkdirAsync=pfn(e.mkdir),e.stat=e.stat||e.fs.stat||Pne.stat,e.statAsync=pfn(e.stat),e.statSync=e.statSync||e.fs.statSync||Pne.statSync,e.mkdirSync=e.mkdirSync||e.fs.mkdirSync||Pne.mkdirSync,e};ffn.exports=MJs});var mfn=z((AMc,Cfn)=>{var QJs=process.platform,{resolve:YJs,parse:HJs}=Dt("path"),XJs=e=>{if(/\0/.test(e))throw Object.assign(new TypeError("path must be a string without null bytes"),{path:e,code:"ERR_INVALID_ARG_VALUE"});if(e=YJs(e),QJs==="win32"){let t=/[*|"<>?:]/,{root:r}=HJs(e);if(t.test(e.substr(r.length)))throw Object.assign(new Error("Illegal characters in path."),{path:e,code:"EINVAL"})}return e};Cfn.exports=XJs});var Efn=z((dMc,bfn)=>{var{dirname:hfn}=Dt("path"),_fn=(e,t,r=void 0)=>r===t?Promise.resolve():e.statAsync(t).then(s=>s.isDirectory()?r:void 0,s=>s.code==="ENOENT"?_fn(e,hfn(t),t):void 0),yfn=(e,t,r=void 0)=>{if(r!==t)try{return e.statSync(t).isDirectory()?r:void 0}catch(s){return s.code==="ENOENT"?yfn(e,hfn(t),t):void 0}};bfn.exports={findMade:_fn,findMadeSync:yfn}});var OUt=z((pMc,vfn)=>{var{dirname:Bfn}=Dt("path"),WUt=(e,t,r)=>{t.recursive=!1;let s=Bfn(e);return s===e?t.mkdirAsync(e,t).catch(a=>{if(a.code!=="EISDIR")throw a}):t.mkdirAsync(e,t).then(()=>r||e,a=>{if(a.code==="ENOENT")return WUt(s,t).then(o=>WUt(e,t,o));if(a.code!=="EEXIST"&&a.code!=="EROFS")throw a;return t.statAsync(e).then(o=>{if(o.isDirectory())return r;throw a},()=>{throw a})})},PUt=(e,t,r)=>{let s=Bfn(e);if(t.recursive=!1,s===e)try{return t.mkdirSync(e,t)}catch(a){if(a.code!=="EISDIR")throw a;return}try{return t.mkdirSync(e,t),r||e}catch(a){if(a.code==="ENOENT")return PUt(e,t,PUt(s,t,r));if(a.code!=="EEXIST"&&a.code!=="EROFS")throw a;try{if(!t.statSync(e).isDirectory())throw a}catch{throw a}}};vfn.exports={mkdirpManual:WUt,mkdirpManualSync:PUt}});var Tfn=z((fMc,wfn)=>{var{dirname:Sfn}=Dt("path"),{findMade:JJs,findMadeSync:UJs}=Efn(),{mkdirpManual:KJs,mkdirpManualSync:jJs}=OUt(),zJs=(e,t)=>(t.recursive=!0,Sfn(e)===e?t.mkdirAsync(e,t):JJs(t,e).then(s=>t.mkdirAsync(e,t).then(()=>s).catch(a=>{if(a.code==="ENOENT")return KJs(e,t);throw a}))),qJs=(e,t)=>{if(t.recursive=!0,Sfn(e)===e)return t.mkdirSync(e,t);let s=UJs(t,e);try{return t.mkdirSync(e,t),s}catch(a){if(a.code==="ENOENT")return jJs(e,t);throw a}};wfn.exports={mkdirpNative:zJs,mkdirpNativeSync:qJs}});var xfn=z((IMc,Dfn)=>{var Nfn=Dt("fs"),$Js=process.version,MUt=$Js.replace(/^v/,"").split("."),Rfn=+MUt[0]>10||+MUt[0]==10&&+MUt[1]>=12,eUs=Rfn?e=>e.mkdir===Nfn.mkdir:()=>!1,tUs=Rfn?e=>e.mkdirSync===Nfn.mkdirSync:()=>!1;Dfn.exports={useNative:eUs,useNativeSync:tUs}});var Vfn=z((CMc,Lfn)=>{var CEe=Ifn(),mEe=mfn(),{mkdirpNative:kfn,mkdirpNativeSync:Gfn}=Tfn(),{mkdirpManual:Ffn,mkdirpManualSync:Zfn}=OUt(),{useNative:rUs,useNativeSync:nUs}=xfn(),hEe=(e,t)=>(e=mEe(e),t=CEe(t),rUs(t)?kfn(e,t):Ffn(e,t)),iUs=(e,t)=>(e=mEe(e),t=CEe(t),nUs(t)?Gfn(e,t):Zfn(e,t));hEe.sync=iUs;hEe.native=(e,t)=>kfn(mEe(e),CEe(t));hEe.manual=(e,t)=>Ffn(mEe(e),CEe(t));hEe.nativeSync=(e,t)=>Gfn(mEe(e),CEe(t));hEe.manualSync=(e,t)=>Zfn(mEe(e),CEe(t));Lfn.exports=hEe});var Hfn=z((mMc,Yfn)=>{"use strict";var TO=Dt("fs"),kAe=Dt("path"),sUs=TO.lchown?"lchown":"chown",oUs=TO.lchownSync?"lchownSync":"chownSync",Pfn=TO.lchown&&!process.version.match(/v1[1-9]+\./)&&!process.version.match(/v10\.[6-9]/),Wfn=(e,t,r)=>{try{return TO[oUs](e,t,r)}catch(s){if(s.code!=="ENOENT")throw s}},aUs=(e,t,r)=>{try{return TO.chownSync(e,t,r)}catch(s){if(s.code!=="ENOENT")throw s}},cUs=Pfn?(e,t,r,s)=>a=>{!a||a.code!=="EISDIR"?s(a):TO.chown(e,t,r,s)}:(e,t,r,s)=>s,QUt=Pfn?(e,t,r)=>{try{return Wfn(e,t,r)}catch(s){if(s.code!=="EISDIR")throw s;aUs(e,t,r)}}:(e,t,r)=>Wfn(e,t,r),lUs=process.version,Ofn=(e,t,r)=>TO.readdir(e,t,r),uUs=(e,t)=>TO.readdirSync(e,t);/^v4\./.test(lUs)&&(Ofn=(e,t,r)=>TO.readdir(e,r));var rot=(e,t,r,s)=>{TO[sUs](e,t,r,cUs(e,t,r,a=>{s(a&&a.code!=="ENOENT"?a:null)}))},Mfn=(e,t,r,s,a)=>{if(typeof t=="string")return TO.lstat(kAe.resolve(e,t),(o,g)=>{if(o)return a(o.code!=="ENOENT"?o:null);g.name=t,Mfn(e,g,r,s,a)});if(t.isDirectory())YUt(kAe.resolve(e,t.name),r,s,o=>{if(o)return a(o);let g=kAe.resolve(e,t.name);rot(g,r,s,a)});else{let o=kAe.resolve(e,t.name);rot(o,r,s,a)}},YUt=(e,t,r,s)=>{Ofn(e,{withFileTypes:!0},(a,o)=>{if(a){if(a.code==="ENOENT")return s();if(a.code!=="ENOTDIR"&&a.code!=="ENOTSUP")return s(a)}if(a||!o.length)return rot(e,t,r,s);let g=o.length,p=null,f=m=>{if(!p){if(m)return s(p=m);if(--g===0)return rot(e,t,r,s)}};o.forEach(m=>Mfn(e,m,t,r,f))})},gUs=(e,t,r,s)=>{if(typeof t=="string")try{let a=TO.lstatSync(kAe.resolve(e,t));a.name=t,t=a}catch(a){if(a.code==="ENOENT")return;throw a}t.isDirectory()&&Qfn(kAe.resolve(e,t.name),r,s),QUt(kAe.resolve(e,t.name),r,s)},Qfn=(e,t,r)=>{let s;try{s=uUs(e,{withFileTypes:!0})}catch(a){if(a.code==="ENOENT")return;if(a.code==="ENOTDIR"||a.code==="ENOTSUP")return QUt(e,t,r);throw a}return s&&s.length&&s.forEach(a=>gUs(e,a,t,r)),QUt(e,t,r)};Yfn.exports=YUt;YUt.sync=Qfn});var Kfn=z((hMc,HUt)=>{"use strict";var Xfn=Vfn(),NO=Dt("fs"),not=Dt("path"),Jfn=Hfn(),BH=nEe(),iot=class extends Error{constructor(t,r){super("Cannot extract through symbolic link"),this.path=r,this.symlink=t}get name(){return"SylinkError"}},sot=class extends Error{constructor(t,r){super(r+": Cannot cd into '"+t+"'"),this.path=t,this.code=r}get name(){return"CwdError"}},oot=(e,t)=>e.get(BH(t)),RVe=(e,t,r)=>e.set(BH(t),r),AUs=(e,t)=>{NO.stat(e,(r,s)=>{(r||!s.isDirectory())&&(r=new sot(e,r&&r.code||"ENOTDIR")),t(r)})};HUt.exports=(e,t,r)=>{e=BH(e);let s=t.umask,a=t.mode|448,o=(a&s)!==0,g=t.uid,p=t.gid,f=typeof g=="number"&&typeof p=="number"&&(g!==t.processUid||p!==t.processGid),m=t.preserve,y=t.unlink,B=t.cache,v=BH(t.cwd),G=(X,U)=>{X?r(X):(RVe(B,e,!0),U&&f?Jfn(U,g,p,le=>G(le)):o?NO.chmod(e,a,r):r())};if(B&&oot(B,e)===!0)return G();if(e===v)return AUs(e,G);if(m)return Xfn(e,{mode:a}).then(X=>G(null,X),G);let O=BH(not.relative(v,e)).split("/");aot(v,O,a,B,y,v,null,G)};var aot=(e,t,r,s,a,o,g,p)=>{if(!t.length)return p(null,g);let f=t.shift(),m=BH(not.resolve(e+"/"+f));if(oot(s,m))return aot(m,t,r,s,a,o,g,p);NO.mkdir(m,r,Ufn(m,t,r,s,a,o,g,p))},Ufn=(e,t,r,s,a,o,g,p)=>f=>{f?NO.lstat(e,(m,y)=>{if(m)m.path=m.path&&BH(m.path),p(m);else if(y.isDirectory())aot(e,t,r,s,a,o,g,p);else if(a)NO.unlink(e,B=>{if(B)return p(B);NO.mkdir(e,r,Ufn(e,t,r,s,a,o,g,p))});else{if(y.isSymbolicLink())return p(new iot(e,e+"/"+t.join("/")));p(f)}}):(g=g||e,aot(e,t,r,s,a,o,g,p))},dUs=e=>{let t=!1,r="ENOTDIR";try{t=NO.statSync(e).isDirectory()}catch(s){r=s.code}finally{if(!t)throw new sot(e,r)}};HUt.exports.sync=(e,t)=>{e=BH(e);let r=t.umask,s=t.mode|448,a=(s&r)!==0,o=t.uid,g=t.gid,p=typeof o=="number"&&typeof g=="number"&&(o!==t.processUid||g!==t.processGid),f=t.preserve,m=t.unlink,y=t.cache,B=BH(t.cwd),v=X=>{RVe(y,e,!0),X&&p&&Jfn.sync(X,o,g),a&&NO.chmodSync(e,s)};if(y&&oot(y,e)===!0)return v();if(e===B)return dUs(B),v();if(f)return v(Xfn.sync(e,s));let T=BH(not.relative(B,e)).split("/"),O=null;for(let X=T.shift(),U=B;X&&(U+="/"+X);X=T.shift())if(U=BH(not.resolve(U)),!oot(y,U))try{NO.mkdirSync(U,s),O=O||U,RVe(y,U,!0)}catch{let ae=NO.lstatSync(U);if(ae.isDirectory()){RVe(y,U,!0);continue}else if(m){NO.unlinkSync(U),NO.mkdirSync(U,s),O=O||U,RVe(y,U,!0);continue}else if(ae.isSymbolicLink())return new iot(U,U+"/"+T.join("/"))}return v(O)}});var JUt=z((_Mc,jfn)=>{var XUt=Object.create(null),{hasOwnProperty:pUs}=Object.prototype;jfn.exports=e=>(pUs.call(XUt,e)||(XUt[e]=e.normalize("NFD")),XUt[e])});var eIn=z((yMc,$fn)=>{var zfn=Dt("assert"),fUs=JUt(),IUs=oEe(),{join:qfn}=Dt("path"),CUs=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform,mUs=CUs==="win32";$fn.exports=()=>{let e=new Map,t=new Map,r=m=>m.split("/").slice(0,-1).reduce((B,v)=>(B.length&&(v=qfn(B[B.length-1],v)),B.push(v||"/"),B),[]),s=new Set,a=m=>{let y=t.get(m);if(!y)throw new Error("function does not have any path reservations");return{paths:y.paths.map(B=>e.get(B)),dirs:[...y.dirs].map(B=>e.get(B))}},o=m=>{let{paths:y,dirs:B}=a(m);return y.every(v=>v[0]===m)&&B.every(v=>v[0]instanceof Set&&v[0].has(m))},g=m=>s.has(m)||!o(m)?!1:(s.add(m),m(()=>p(m)),!0),p=m=>{if(!s.has(m))return!1;let{paths:y,dirs:B}=t.get(m),v=new Set;return y.forEach(G=>{let T=e.get(G);zfn.equal(T[0],m),T.length===1?e.delete(G):(T.shift(),typeof T[0]=="function"?v.add(T[0]):T[0].forEach(O=>v.add(O)))}),B.forEach(G=>{let T=e.get(G);zfn(T[0]instanceof Set),T[0].size===1&&T.length===1?e.delete(G):T[0].size===1?(T.shift(),v.add(T[0])):T[0].delete(m)}),s.delete(m),v.forEach(G=>g(G)),!0};return{check:o,reserve:(m,y)=>{m=mUs?["win32 parallelization disabled"]:m.map(v=>IUs(qfn(fUs(v))).toLowerCase());let B=new Set(m.map(v=>r(v)).reduce((v,G)=>v.concat(G)));return t.set(y,{dirs:B,paths:m}),m.forEach(v=>{let G=e.get(v);G?G.push(y):e.set(v,[y])}),B.forEach(v=>{let G=e.get(v);G?G[G.length-1]instanceof Set?G[G.length-1].add(y):G.push(new Set([y])):e.set(v,[new Set([y])])}),g(y)}}}});var nIn=z((bMc,rIn)=>{var hUs=process.platform,_Us=hUs==="win32",yUs=global.__FAKE_TESTING_FS__||Dt("fs"),{O_CREAT:bUs,O_TRUNC:EUs,O_WRONLY:BUs,UV_FS_O_FILEMAP:tIn=0}=yUs.constants,vUs=_Us&&!!tIn,SUs=512*1024,wUs=tIn|EUs|bUs|BUs;rIn.exports=vUs?e=>e"w"});var rKt=z((EMc,CIn)=>{"use strict";var TUs=Dt("assert"),NUs=$st(),I_=Dt("fs"),RUs=fEe(),bj=Dt("path"),pIn=Kfn(),iIn=tUt(),DUs=eIn(),xUs=rUt(),RO=nEe(),kUs=oEe(),GUs=JUt(),sIn=Symbol("onEntry"),jUt=Symbol("checkFs"),oIn=Symbol("checkFs2"),uot=Symbol("pruneCache"),zUt=Symbol("isReusable"),DO=Symbol("makeFs"),qUt=Symbol("file"),$Ut=Symbol("directory"),got=Symbol("link"),aIn=Symbol("symlink"),cIn=Symbol("hardlink"),lIn=Symbol("unsupported"),uIn=Symbol("checkPath"),One=Symbol("mkdir"),fk=Symbol("onError"),cot=Symbol("pending"),gIn=Symbol("pend"),_Ee=Symbol("unpend"),UUt=Symbol("ended"),KUt=Symbol("maybeClose"),eKt=Symbol("skip"),DVe=Symbol("doChown"),xVe=Symbol("uid"),kVe=Symbol("gid"),GVe=Symbol("checkedCwd"),fIn=Dt("crypto"),IIn=nIn(),FUs=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform,FVe=FUs==="win32",ZUs=1024,LUs=(e,t)=>{if(!FVe)return I_.unlink(e,t);let r=e+".DELETE."+fIn.randomBytes(16).toString("hex");I_.rename(e,r,s=>{if(s)return t(s);I_.unlink(r,t)})},VUs=e=>{if(!FVe)return I_.unlinkSync(e);let t=e+".DELETE."+fIn.randomBytes(16).toString("hex");I_.renameSync(e,t),I_.unlinkSync(t)},AIn=(e,t,r)=>e===e>>>0?e:t===t>>>0?t:r,dIn=e=>kUs(RO(GUs(e))).toLowerCase(),WUs=(e,t)=>{t=dIn(t);for(let r of e.keys()){let s=dIn(r);(s===t||s.indexOf(t+"/")===0)&&e.delete(r)}},PUs=e=>{for(let t of e.keys())e.delete(t)},ZVe=class extends NUs{constructor(t){if(t||(t={}),t.ondone=r=>{this[UUt]=!0,this[KUt]()},super(t),this[GVe]=!1,this.reservations=DUs(),this.transform=typeof t.transform=="function"?t.transform:null,this.writable=!0,this.readable=!1,this[cot]=0,this[UUt]=!1,this.dirCache=t.dirCache||new Map,typeof t.uid=="number"||typeof t.gid=="number"){if(typeof t.uid!="number"||typeof t.gid!="number")throw new TypeError("cannot set owner without number uid and gid");if(t.preserveOwner)throw new TypeError("cannot preserve owner in archive and also set owner explicitly");this.uid=t.uid,this.gid=t.gid,this.setOwner=!0}else this.uid=null,this.gid=null,this.setOwner=!1;t.preserveOwner===void 0&&typeof t.uid!="number"?this.preserveOwner=process.getuid&&process.getuid()===0:this.preserveOwner=!!t.preserveOwner,this.processUid=(this.preserveOwner||this.setOwner)&&process.getuid?process.getuid():null,this.processGid=(this.preserveOwner||this.setOwner)&&process.getgid?process.getgid():null,this.maxDepth=typeof t.maxDepth=="number"?t.maxDepth:ZUs,this.forceChown=t.forceChown===!0,this.win32=!!t.win32||FVe,this.newer=!!t.newer,this.keep=!!t.keep,this.noMtime=!!t.noMtime,this.preservePaths=!!t.preservePaths,this.unlink=!!t.unlink,this.cwd=RO(bj.resolve(t.cwd||process.cwd())),this.strip=+t.strip||0,this.processUmask=t.noChmod?0:process.umask(),this.umask=typeof t.umask=="number"?t.umask:this.processUmask,this.dmode=t.dmode||511&~this.umask,this.fmode=t.fmode||438&~this.umask,this.on("entry",r=>this[sIn](r))}warn(t,r,s={}){return(t==="TAR_BAD_ARCHIVE"||t==="TAR_ABORT")&&(s.recoverable=!1),super.warn(t,r,s)}[KUt](){this[UUt]&&this[cot]===0&&(this.emit("prefinish"),this.emit("finish"),this.emit("end"))}[uIn](t){let r=RO(t.path),s=r.split("/");if(this.strip){if(s.length=this.strip)t.linkpath=a.slice(this.strip).join("/");else return!1}s.splice(0,this.strip),t.path=s.join("/")}if(isFinite(this.maxDepth)&&s.length>this.maxDepth)return this.warn("TAR_ENTRY_ERROR","path excessively deep",{entry:t,path:r,depth:s.length,maxDepth:this.maxDepth}),!1;if(!this.preservePaths){if(s.includes("..")||FVe&&/^[a-z]:\.\.$/i.test(s[0]))return this.warn("TAR_ENTRY_ERROR","path contains '..'",{entry:t,path:r}),!1;let[a,o]=xUs(r);a&&(t.path=o,this.warn("TAR_ENTRY_INFO",`stripping ${a} from absolute path`,{entry:t,path:r}))}if(bj.isAbsolute(t.path)?t.absolute=RO(bj.resolve(t.path)):t.absolute=RO(bj.resolve(this.cwd,t.path)),!this.preservePaths&&t.absolute.indexOf(this.cwd+"/")!==0&&t.absolute!==this.cwd)return this.warn("TAR_ENTRY_ERROR","path escaped extraction target",{entry:t,path:RO(t.path),resolvedPath:t.absolute,cwd:this.cwd}),!1;if(t.absolute===this.cwd&&t.type!=="Directory"&&t.type!=="GNUDumpDir")return!1;if(this.win32){let{root:a}=bj.win32.parse(t.absolute);t.absolute=a+iIn.encode(t.absolute.slice(a.length));let{root:o}=bj.win32.parse(t.path);t.path=o+iIn.encode(t.path.slice(o.length))}return!0}[sIn](t){if(!this[uIn](t))return t.resume();switch(TUs.equal(typeof t.absolute,"string"),t.type){case"Directory":case"GNUDumpDir":t.mode&&(t.mode=t.mode|448);case"File":case"OldFile":case"ContiguousFile":case"Link":case"SymbolicLink":return this[jUt](t);case"CharacterDevice":case"BlockDevice":case"FIFO":default:return this[lIn](t)}}[fk](t,r){t.name==="CwdError"?this.emit("error",t):(this.warn("TAR_ENTRY_ERROR",t,{entry:r}),this[_Ee](),r.resume())}[One](t,r,s){pIn(RO(t),{uid:this.uid,gid:this.gid,processUid:this.processUid,processGid:this.processGid,umask:this.processUmask,preserve:this.preservePaths,unlink:this.unlink,cache:this.dirCache,cwd:this.cwd,mode:r,noChmod:this.noChmod},s)}[DVe](t){return this.forceChown||this.preserveOwner&&(typeof t.uid=="number"&&t.uid!==this.processUid||typeof t.gid=="number"&&t.gid!==this.processGid)||typeof this.uid=="number"&&this.uid!==this.processUid||typeof this.gid=="number"&&this.gid!==this.processGid}[xVe](t){return AIn(this.uid,t.uid,this.processUid)}[kVe](t){return AIn(this.gid,t.gid,this.processGid)}[qUt](t,r){let s=t.mode&4095||this.fmode,a=new RUs.WriteStream(t.absolute,{flags:IIn(t.size),mode:s,autoClose:!1});a.on("error",f=>{a.fd&&I_.close(a.fd,()=>{}),a.write=()=>!0,this[fk](f,t),r()});let o=1,g=f=>{if(f){a.fd&&I_.close(a.fd,()=>{}),this[fk](f,t),r();return}--o===0&&I_.close(a.fd,m=>{m?this[fk](m,t):this[_Ee](),r()})};a.on("finish",f=>{let m=t.absolute,y=a.fd;if(t.mtime&&!this.noMtime){o++;let B=t.atime||new Date,v=t.mtime;I_.futimes(y,B,v,G=>G?I_.utimes(m,B,v,T=>g(T&&G)):g())}if(this[DVe](t)){o++;let B=this[xVe](t),v=this[kVe](t);I_.fchown(y,B,v,G=>G?I_.chown(m,B,v,T=>g(T&&G)):g())}g()});let p=this.transform&&this.transform(t)||t;p!==t&&(p.on("error",f=>{this[fk](f,t),r()}),t.pipe(p)),p.pipe(a)}[$Ut](t,r){let s=t.mode&4095||this.dmode;this[One](t.absolute,s,a=>{if(a){this[fk](a,t),r();return}let o=1,g=p=>{--o===0&&(r(),this[_Ee](),t.resume())};t.mtime&&!this.noMtime&&(o++,I_.utimes(t.absolute,t.atime||new Date,t.mtime,g)),this[DVe](t)&&(o++,I_.chown(t.absolute,this[xVe](t),this[kVe](t),g)),g()})}[lIn](t){t.unsupported=!0,this.warn("TAR_ENTRY_UNSUPPORTED",`unsupported entry type: ${t.type}`,{entry:t}),t.resume()}[aIn](t,r){this[got](t,t.linkpath,"symlink",r)}[cIn](t,r){let s=RO(bj.resolve(this.cwd,t.linkpath));this[got](t,s,"link",r)}[gIn](){this[cot]++}[_Ee](){this[cot]--,this[KUt]()}[eKt](t){this[_Ee](),t.resume()}[zUt](t,r){return t.type==="File"&&!this.unlink&&r.isFile()&&r.nlink<=1&&!FVe}[jUt](t){this[gIn]();let r=[t.path];t.linkpath&&r.push(t.linkpath),this.reservations.reserve(r,s=>this[oIn](t,s))}[uot](t){t.type==="SymbolicLink"?PUs(this.dirCache):t.type!=="Directory"&&WUs(this.dirCache,t.absolute)}[oIn](t,r){this[uot](t);let s=p=>{this[uot](t),r(p)},a=()=>{this[One](this.cwd,this.dmode,p=>{if(p){this[fk](p,t),s();return}this[GVe]=!0,o()})},o=()=>{if(t.absolute!==this.cwd){let p=RO(bj.dirname(t.absolute));if(p!==this.cwd)return this[One](p,this.dmode,f=>{if(f){this[fk](f,t),s();return}g()})}g()},g=()=>{I_.lstat(t.absolute,(p,f)=>{if(f&&(this.keep||this.newer&&f.mtime>t.mtime)){this[eKt](t),s();return}if(p||this[zUt](t,f))return this[DO](null,t,s);if(f.isDirectory()){if(t.type==="Directory"){let m=!this.noChmod&&t.mode&&(f.mode&4095)!==t.mode,y=B=>this[DO](B,t,s);return m?I_.chmod(t.absolute,t.mode,y):y()}if(t.absolute!==this.cwd)return I_.rmdir(t.absolute,m=>this[DO](m,t,s))}if(t.absolute===this.cwd)return this[DO](null,t,s);LUs(t.absolute,m=>this[DO](m,t,s))})};this[GVe]?o():a()}[DO](t,r,s){if(t){this[fk](t,r),s();return}switch(r.type){case"File":case"OldFile":case"ContiguousFile":return this[qUt](r,s);case"Link":return this[cIn](r,s);case"SymbolicLink":return this[aIn](r,s);case"Directory":case"GNUDumpDir":return this[$Ut](r,s)}}[got](t,r,s,a){I_[s](r,t.absolute,o=>{o?this[fk](o,t):(this[_Ee](),t.resume()),a()})}},lot=e=>{try{return[null,e()]}catch(t){return[t,null]}},tKt=class extends ZVe{[DO](t,r){return super[DO](t,r,()=>{})}[jUt](t){if(this[uot](t),!this[GVe]){let o=this[One](this.cwd,this.dmode);if(o)return this[fk](o,t);this[GVe]=!0}if(t.absolute!==this.cwd){let o=RO(bj.dirname(t.absolute));if(o!==this.cwd){let g=this[One](o,this.dmode);if(g)return this[fk](g,t)}}let[r,s]=lot(()=>I_.lstatSync(t.absolute));if(s&&(this.keep||this.newer&&s.mtime>t.mtime))return this[eKt](t);if(r||this[zUt](t,s))return this[DO](null,t);if(s.isDirectory()){if(t.type==="Directory"){let g=!this.noChmod&&t.mode&&(s.mode&4095)!==t.mode,[p]=g?lot(()=>{I_.chmodSync(t.absolute,t.mode)}):[];return this[DO](p,t)}let[o]=lot(()=>I_.rmdirSync(t.absolute));this[DO](o,t)}let[a]=t.absolute===this.cwd?[]:lot(()=>VUs(t.absolute));this[DO](a,t)}[qUt](t,r){let s=t.mode&4095||this.fmode,a=p=>{let f;try{I_.closeSync(o)}catch(m){f=m}(p||f)&&this[fk](p||f,t),r()},o;try{o=I_.openSync(t.absolute,IIn(t.size),s)}catch(p){return a(p)}let g=this.transform&&this.transform(t)||t;g!==t&&(g.on("error",p=>this[fk](p,t)),t.pipe(g)),g.on("data",p=>{try{I_.writeSync(o,p,0,p.length)}catch(f){a(f)}}),g.on("end",p=>{let f=null;if(t.mtime&&!this.noMtime){let m=t.atime||new Date,y=t.mtime;try{I_.futimesSync(o,m,y)}catch(B){try{I_.utimesSync(t.absolute,m,y)}catch{f=B}}}if(this[DVe](t)){let m=this[xVe](t),y=this[kVe](t);try{I_.fchownSync(o,m,y)}catch(B){try{I_.chownSync(t.absolute,m,y)}catch{f=f||B}}}a(f)})}[$Ut](t,r){let s=t.mode&4095||this.dmode,a=this[One](t.absolute,s);if(a){this[fk](a,t),r();return}if(t.mtime&&!this.noMtime)try{I_.utimesSync(t.absolute,t.atime||new Date,t.mtime)}catch{}if(this[DVe](t))try{I_.chownSync(t.absolute,this[xVe](t),this[kVe](t))}catch{}r(),t.resume()}[One](t,r){try{return pIn.sync(RO(t),{uid:this.uid,gid:this.gid,processUid:this.processUid,processGid:this.processGid,umask:this.processUmask,preserve:this.preservePaths,unlink:this.unlink,cache:this.dirCache,cwd:this.cwd,mode:r})}catch(s){return s}}[got](t,r,s,a){try{I_[s+"Sync"](r,t.absolute),a(),t.resume()}catch(o){return this[fk](o,t)}}};ZVe.Sync=tKt;CIn.exports=ZVe});var bIn=z((BMc,yIn)=>{"use strict";var OUs=qbe(),Aot=rKt(),hIn=Dt("fs"),_In=fEe(),mIn=Dt("path"),nKt=oEe();yIn.exports=(e,t,r)=>{typeof e=="function"?(r=e,t=null,e={}):Array.isArray(e)&&(t=e,e={}),typeof t=="function"&&(r=t,t=null),t?t=Array.from(t):t=[];let s=OUs(e);if(s.sync&&typeof r=="function")throw new TypeError("callback not supported for sync tar functions");if(!s.file&&typeof r=="function")throw new TypeError("callback only supported with file option");return t.length&&MUs(s,t),s.file&&s.sync?QUs(s):s.file?YUs(s,r):s.sync?HUs(s):XUs(s)};var MUs=(e,t)=>{let r=new Map(t.map(o=>[nKt(o),!0])),s=e.filter,a=(o,g)=>{let p=g||mIn.parse(o).root||".",f=o===p?!1:r.has(o)?r.get(o):a(mIn.dirname(o),p);return r.set(o,f),f};e.filter=s?(o,g)=>s(o,g)&&a(nKt(o)):o=>a(nKt(o))},QUs=e=>{let t=new Aot.Sync(e),r=e.file,s=hIn.statSync(r),a=e.maxReadSize||16*1024*1024;new _In.ReadStreamSync(r,{readSize:a,size:s.size}).pipe(t)},YUs=(e,t)=>{let r=new Aot(e),s=e.maxReadSize||16*1024*1024,a=e.file,o=new Promise((g,p)=>{r.on("error",p),r.on("close",g),hIn.stat(a,(f,m)=>{if(f)p(f);else{let y=new _In.ReadStream(a,{readSize:s,size:m.size});y.on("error",p),y.pipe(r)}})});return t?o.then(t,t):o},HUs=e=>new Aot.Sync(e),XUs=e=>new Aot(e)});var EIn=z(xT=>{"use strict";xT.c=xT.create=ifn();xT.r=xT.replace=VUt();xT.t=xT.list=eot();xT.u=xT.update=dfn();xT.x=xT.extract=bIn();xT.Pack=Wst();xT.Unpack=rKt();xT.Parse=$st();xT.ReadEntry=bst();xT.WriteEntry=AUt();xT.Header=sEe();xT.Pax=Bst();xT.types=UJt()});var vIn=z(yEe=>{"use strict";Object.defineProperty(yEe,"__esModule",{value:!0});yEe.WorkerPool=yEe.AsyncPool=void 0;var JUs=(Ma(),Ai(Oa)),BIn=JUs.__importDefault(Kge()),UUs=Dt("worker_threads"),Mne=Symbol("kTaskInfo"),iKt=class{constructor(t,r){this.fn=t,this.limit=(0,BIn.default)(r.poolSize)}run(t){return this.limit(()=>this.fn(t))}};yEe.AsyncPool=iKt;var sKt=class{constructor(t,r){this.source=t,this.workers=[],this.limit=(0,BIn.default)(r.poolSize),this.cleanupInterval=setInterval(()=>{if(this.limit.pendingCount===0&&this.limit.activeCount===0){let s=this.workers.pop();s?s.terminate():clearInterval(this.cleanupInterval)}},5e3).unref()}createWorker(){this.cleanupInterval.refresh();let t=new UUs.Worker(this.source,{eval:!0,execArgv:[...process.execArgv,"--unhandled-rejections=strict"]});return t.on("message",r=>{if(!t[Mne])throw new Error("Assertion failed: Worker sent a result without having a task assigned");t[Mne].resolve(r),t[Mne]=null,t.unref(),this.workers.push(t)}),t.on("error",r=>{t[Mne]?.reject(r),t[Mne]=null}),t.on("exit",r=>{r!==0&&t[Mne]?.reject(new Error(`Worker exited with code ${r}`)),t[Mne]=null}),t}run(t){return this.limit(()=>{let r=this.workers.pop()??this.createWorker();return r.ref(),new Promise((s,a)=>{r[Mne]={resolve:s,reject:a},r.postMessage(t)})})}};yEe.WorkerPool=sKt});var wIn=z((wMc,SIn)=>{var oKt;SIn.exports.getContent=()=>(typeof oKt>"u"&&(oKt=Dt("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),oKt)});var GIn=z(Qne=>{"use strict";Object.defineProperty(Qne,"__esModule",{value:!0});Qne.getDefaultTaskPool=DIn;Qne.getTaskPoolForConfiguration=xIn;Qne.convertToZipWorker=cKt;Qne.makeArchiveFromDirectory=eKs;Qne.convertToZip=tKs;Qne.extractArchiveTo=kIn;var TIn=(Ma(),Ai(Oa)),KUs=Bn(),xy=Ro(),dot=SJ(),jUs=Dt("stream"),zUs=TIn.__importDefault(EIn()),pot=vIn(),NIn=TIn.__importStar(fW()),RIn=wIn();function qUs(e,t){switch(e){case"async":return new pot.AsyncPool(cKt,{poolSize:t});case"workers":return new pot.WorkerPool((0,RIn.getContent)(),{poolSize:t});default:throw new Error(`Assertion failed: Unknown value ${e} for taskPoolMode`)}}var aKt;function DIn(){return typeof aKt>"u"&&(aKt=qUs("workers",KUs.nodeUtils.availableParallelism())),aKt}var $Us=new WeakMap;function xIn(e){return typeof e>"u"?DIn():NIn.getFactoryWithDefault($Us,e,()=>{let t=e.get("taskPoolMode"),r=e.get("taskPoolConcurrency");switch(t){case"async":return new pot.AsyncPool(cKt,{poolSize:r});case"workers":return new pot.WorkerPool((0,RIn.getContent)(),{poolSize:r});default:throw new Error(`Assertion failed: Unknown value ${t} for taskPoolMode`)}})}async function cKt(e){let{tmpFile:t,tgz:r,compressionLevel:s,extractBufferOpts:a}=e,o=new dot.ZipFS(t,{create:!0,level:s,stats:xy.statUtils.makeDefaultStats()}),g=Buffer.from(r.buffer,r.byteOffset,r.byteLength);return await kIn(g,o,a),o.saveAndClose(),t}async function eKs(e,{baseFs:t=new xy.NodeFS,prefixPath:r=xy.PortablePath.root,compressionLevel:s,inMemory:a=!1}={}){let o;if(a)o=new dot.ZipFS(null,{level:s});else{let p=await xy.xfs.mktempPromise(),f=xy.ppath.join(p,"archive.zip");o=new dot.ZipFS(f,{create:!0,level:s})}let g=xy.ppath.resolve(xy.PortablePath.root,r);return await o.copyPromise(g,e,{baseFs:t,stableTime:!0,stableSort:!0}),o}async function tKs(e,t={}){let r=await xy.xfs.mktempPromise(),s=xy.ppath.join(r,"archive.zip"),a=t.compressionLevel??t.configuration?.get("compressionLevel")??"mixed",o={prefixPath:t.prefixPath,stripComponents:t.stripComponents};return await(t.taskPool??xIn(t.configuration)).run({tmpFile:s,tgz:e,compressionLevel:a,extractBufferOpts:o}),new dot.ZipFS(s,{level:t.compressionLevel})}async function*rKs(e){let t=new zUs.default.Parse,r=new jUs.PassThrough({objectMode:!0,autoDestroy:!0,emitClose:!0});t.on("entry",s=>{r.write(s)}),t.on("error",s=>{r.destroy(s)}),t.on("close",()=>{r.destroyed||r.end()}),t.end(e);for await(let s of r){let a=s;yield a,a.resume()}}async function kIn(e,t,{stripComponents:r=0,prefixPath:s=xy.PortablePath.dot}={}){function a(o){if(o.path[0]==="/")return!0;let g=o.path.split(/\//g);return!!(g.some(p=>p==="..")||g.length<=r)}for await(let o of rKs(e)){if(a(o))continue;let g=xy.ppath.normalize(xy.npath.toPortablePath(o.path)).replace(/\/$/,"").split(/\//g);if(g.length<=r)continue;let p=g.slice(r).join("/"),f=xy.ppath.join(s,p),m=420;switch((o.type==="Directory"||(o.mode??0)&73)&&(m|=73),o.type){case"Directory":t.mkdirpSync(xy.ppath.dirname(f),{chmod:493,utimes:[xy.constants.SAFE_TIME,xy.constants.SAFE_TIME]}),t.mkdirSync(f,{mode:m}),t.utimesSync(f,xy.constants.SAFE_TIME,xy.constants.SAFE_TIME);break;case"OldFile":case"File":t.mkdirpSync(xy.ppath.dirname(f),{chmod:493,utimes:[xy.constants.SAFE_TIME,xy.constants.SAFE_TIME]}),t.writeFileSync(f,await NIn.bufferStream(o),{mode:m}),t.utimesSync(f,xy.constants.SAFE_TIME,xy.constants.SAFE_TIME);break;case"SymbolicLink":t.mkdirpSync(xy.ppath.dirname(f),{chmod:493,utimes:[xy.constants.SAFE_TIME,xy.constants.SAFE_TIME]}),t.symlinkSync(o.linkpath,f),t.lutimesSync(f,xy.constants.SAFE_TIME,xy.constants.SAFE_TIME);break}}return t}});var ZIn=z((lKt,FIn)=>{(function(e,t){typeof lKt=="object"?FIn.exports=t():typeof define=="function"&&define.amd?define(t):e.treeify=t()})(lKt,function(){function e(a,o){var g=o?"\u2514":"\u251C";return a?g+="\u2500 ":g+="\u2500\u2500\u2510",g}function t(a,o){var g=[];for(var p in a)a.hasOwnProperty(p)&&(o&&typeof a[p]=="function"||g.push(p));return g}function r(a,o,g,p,f,m,y){var B="",v=0,G,T,O=p.slice(0);if(O.push([o,g])&&p.length>0&&(p.forEach(function(U,le){le>0&&(B+=(U[1]?" ":"\u2502")+" "),!T&&U[0]===o&&(T=!0)}),B+=e(a,g)+a,f&&(typeof o!="object"||o instanceof Date)&&(B+=": "+o),T&&(B+=" (circular ref.)"),y(B)),!T&&typeof o=="object"){var X=t(o,m);X.forEach(function(U){G=++v===X.length,r(U,o[U],G,O,f,m,y)})}}var s={};return s.asLines=function(a,o,g,p){var f=typeof g!="function"?g:!1;r(".",a,!1,[],o,f,p||g)},s.asTree=function(a,o,g){var p="";return r(".",a,!1,[],o,g,function(f){p+=f+` -`}),p},s})});var PIn=z(bEe=>{"use strict";Object.defineProperty(bEe,"__esModule",{value:!0});bEe.treeNodeToTreeify=LIn;bEe.treeNodeToJson=VIn;bEe.emitList=sKs;bEe.emitTree=WIn;var nKs=(Ma(),Ai(Oa)),iKs=ZIn(),GAe=nKs.__importStar(pO());function LIn(e,{configuration:t}){let r={},s=0,a=(o,g)=>{let p=Array.isArray(o)?o.entries():Object.entries(o);for(let[f,m]of p){if(!m)continue;let{label:y,value:B,children:v}=m,G=[];typeof y<"u"&&G.push(GAe.applyStyle(t,y,GAe.Style.BOLD)),typeof B<"u"&&G.push(GAe.pretty(t,B[0],B[1])),G.length===0&&G.push(GAe.applyStyle(t,`${f}`,GAe.Style.BOLD));let T=G.join(": ").trim(),O=`\0${s++}\0`,X=g[`${O}${T}`]={};typeof v<"u"&&a(v,X)}};if(typeof e.children>"u")throw new Error("The root node must only contain children");return a(e.children,r),r}function VIn(e){let t=r=>{if(typeof r.children>"u"){if(typeof r.value>"u")throw new Error("Assertion failed: Expected a value to be set if the children are missing");return GAe.json(r.value[0],r.value[1])}let s=Array.isArray(r.children)?r.children.entries():Object.entries(r.children??{}),a=Array.isArray(r.children)?[]:{};for(let[o,g]of s)g&&(a[oKs(o)]=t(g));return typeof r.value>"u"?a:{value:GAe.json(r.value[0],r.value[1]),children:a}};return t(e)}function sKs(e,{configuration:t,stdout:r,json:s}){let a=e.map(o=>({value:o}));WIn({children:a},{configuration:t,stdout:r,json:s})}function WIn(e,{configuration:t,stdout:r,json:s,separators:a=0}){if(s){let g=Array.isArray(e.children)?e.children.values():Object.values(e.children??{});for(let p of g)p&&r.write(`${JSON.stringify(VIn(p))} -`);return}let o=(0,iKs.asTree)(LIn(e,{configuration:t}),!1,!1);if(o=o.replace(/\0[0-9]+\0/g,""),a>=1&&(o=o.replace(/^([├└]─)/gm,`\u2502 +`),delete U.NODE_ENV;let Te=await mW.pipevp("yarn",["install"],{cwd:e,env:U,stdin:f,stdout:m,stderr:y,end:mW.EndStrategy.ErrorCode});if(Te.code!==0)return Te.code;m.write(` +`);let ke=await mW.pipevp("yarn",[...fe,"pack","--filename",Jd.npath.fromPortablePath(t)],{cwd:e,env:U,stdin:f,stdout:m,stderr:y});return ke.code!==0?ke.code:0}],[wF.Yarn2,async()=>{let fe=a!==null?["workspace",a]:[];U.YARN_ENABLE_INLINE_BUILDS="1";let pe=Jd.ppath.join(e,Nne.Filename.lockfile);await Jd.xfs.existsPromise(pe)||await Jd.xfs.writeFilePromise(pe,"");let he=await mW.pipevp("yarn",[...fe,"pack","--install-if-needed","--filename",Jd.npath.fromPortablePath(t)],{cwd:e,env:U,stdin:f,stdout:m,stderr:y});return he.code!==0?he.code:0}],[wF.Npm,async()=>{if(a!==null){let et=new $be.PassThrough,Ue=NAe.bufferStream(et);et.pipe(m,{end:!1});let Je=await mW.pipevp("npm",["--version"],{cwd:e,env:U,stdin:f,stdout:et,stderr:y,end:mW.EndStrategy.Never});if(et.end(),Je.code!==0)return m.end(),y.end(),Je.code;let Xe=(await Ue).toString().trim();if(!d4s.satisfiesWithPrereleases(Xe,">=7.x")){let ft=Cw.makeIdent(null,"npm"),Gt=Cw.makeDescriptor(ft,Xe),er=Cw.makeDescriptor(ft,">=7.x");throw new Error(`Workspaces aren't supported by ${Cw.prettyDescriptor(r,Gt)}; please upgrade to ${Cw.prettyDescriptor(r,er)} (npm has been detected as the primary package manager for ${GJ.pretty(r,e,GJ.Type.PATH)})`)}}let fe=a!==null?["--workspace",a]:[];delete U.npm_config_user_agent,delete U.npm_config_production,delete U.NPM_CONFIG_PRODUCTION,delete U.NODE_ENV;let pe=await mW.pipevp("npm",["install","--legacy-peer-deps"],{cwd:e,env:U,stdin:f,stdout:m,stderr:y,end:mW.EndStrategy.ErrorCode});if(pe.code!==0)return pe.code;let he=new $be.PassThrough,be=NAe.bufferStream(he);he.pipe(m);let Te=await mW.pipevp("npm",["pack","--silent",...fe],{cwd:e,env:U,stdin:f,stdout:he,stderr:y});if(Te.code!==0)return Te.code;let ke=(await be).toString().trim().replace(/^.*\n/s,""),x=Jd.ppath.resolve(e,Jd.npath.toPortablePath(ke));return await Jd.xfs.renamePromise(x,t),0}]]).get(T);if(typeof ae>"u")throw new Error("Assertion failed: Unsupported workflow");let ge=await ae();if(!(ge===0||typeof ge>"u"))throw Jd.xfs.detachTemp(g),new ydn.ReportError(dJt.MessageName.PACKAGE_PREPARATION_FAILED,`Packing the package failed (exit code ${ge}, logs can be found here: ${GJ.pretty(r,p,GJ.Type.PATH)})`)})})})}async function C4s(e,t,{project:r}){let s=r.tryWorkspaceByLocator(e);if(s!==null)return fJt(s,t);let a=r.storedPackages.get(e.locatorHash);if(!a)throw new Error(`Package for ${Cw.prettyLocator(r.configuration,e)} not found in the project`);return await hdn.ZipOpenFS.openPromise(async o=>{let g=r.configuration,p=r.configuration.getLinkers(),f={project:r,report:new ast.StreamReport({stdout:new $be.PassThrough,configuration:g})},m=p.find(k=>k.supportsPackage(a,f));if(!m)throw new Error(`The package ${Cw.prettyLocator(r.configuration,a)} isn't supported by any of the available linkers`);let y=await m.findPackageLocation(a,f),B=new Nne.CwdFS(y,{baseFs:o});return(await pJt.Manifest.find(Nne.PortablePath.dot,{baseFs:B})).scripts.has(t)})}async function Edn(e,t,r,{cwd:s,project:a,stdin:o,stdout:g,stderr:p}){return await Jd.xfs.mktempPromise(async f=>{let{manifest:m,env:y,cwd:B}=await Bdn(e,{project:a,binFolder:f,cwd:s,lifecycleScript:t}),v=m.scripts.get(t);if(typeof v>"u")return 1;let k=async()=>await(0,_dn.execute)(v,r,{cwd:B,env:y,stdin:o,stdout:g,stderr:p});return await(await a.configuration.reduceHook(O=>O.wrapScriptExecution,k,a,e,t,{script:v,args:r,cwd:B,env:y,stdin:o,stdout:g,stderr:p}))()})}async function m4s(e,t,r,{cwd:s,project:a,stdin:o,stdout:g,stderr:p}){return await Jd.xfs.mktempPromise(async f=>{let{env:m,cwd:y}=await Bdn(e,{project:a,binFolder:f,cwd:s});return await(0,_dn.execute)(t,r,{cwd:y,env:m,stdin:o,stdout:g,stderr:p})})}async function h4s(e,{binFolder:t,cwd:r,lifecycleScript:s}){let a=await mVe({project:e.project,locator:e.anchoredLocator,binFolder:t,lifecycleScript:s});return await CJt(t,await wdn(e)),typeof r>"u"&&(r=Jd.ppath.dirname(await Jd.xfs.realpathPromise(Jd.ppath.join(e.cwd,"package.json")))),{manifest:e.manifest,binFolder:t,env:a,cwd:r}}async function Bdn(e,{project:t,binFolder:r,cwd:s,lifecycleScript:a}){let o=t.tryWorkspaceByLocator(e);if(o!==null)return h4s(o,{binFolder:r,cwd:s,lifecycleScript:a});let g=t.storedPackages.get(e.locatorHash);if(!g)throw new Error(`Package for ${Cw.prettyLocator(t.configuration,e)} not found in the project`);return await hdn.ZipOpenFS.openPromise(async p=>{let f=t.configuration,m=t.configuration.getLinkers(),y={project:t,report:new ast.StreamReport({stdout:new $be.PassThrough,configuration:f})},B=m.find(X=>X.supportsPackage(g,y));if(!B)throw new Error(`The package ${Cw.prettyLocator(t.configuration,g)} isn't supported by any of the available linkers`);let v=await mVe({project:t,locator:e,binFolder:r,lifecycleScript:a});await CJt(r,await cst(e,{project:t}));let k=await B.findPackageLocation(g,y),T=new Nne.CwdFS(k,{baseFs:p}),O=await pJt.Manifest.find(Nne.PortablePath.dot,{baseFs:T});return typeof s>"u"&&(s=k),{manifest:O,binFolder:r,env:v,cwd:s}})}async function vdn(e,t,r,{cwd:s,stdin:a,stdout:o,stderr:g}){return await Edn(e.anchoredLocator,t,r,{cwd:s,project:e.project,stdin:a,stdout:o,stderr:g})}function fJt(e,t){return e.manifest.scripts.has(t)}async function Sdn(e,t,{cwd:r,report:s}){let{configuration:a}=e.project,o=null;await Jd.xfs.mktempPromise(async g=>{let p=Jd.ppath.join(g,`${t}.log`),f=`# This file contains the result of Yarn calling the "${t}" lifecycle script inside a workspace ("${Jd.npath.fromPortablePath(e.cwd)}") +`,{stdout:m,stderr:y}=a.getSubprocessStreams(p,{report:s,prefix:Cw.prettyLocator(a,e.anchoredLocator),header:f});s.reportInfo(dJt.MessageName.LIFECYCLE_SCRIPT,`Calling the "${t}" lifecycle script`);let B=await vdn(e,t,[],{cwd:r,stdin:o,stdout:m,stderr:y});if(m.end(),y.end(),B!==0)throw Jd.xfs.detachTemp(g),new ydn.ReportError(dJt.MessageName.LIFECYCLE_SCRIPT,`${(0,g4s.default)(t)} script failed (exit code ${GJ.pretty(a,B,GJ.Type.NUMBER)}, logs can be found here: ${GJ.pretty(a,p,GJ.Type.PATH)}); run ${GJ.pretty(a,`yarn ${t}`,GJ.Type.CODE)} to investigate`)})}async function _4s(e,t,r){fJt(e,t)&&await Sdn(e,t,r)}function IJt(e){let t=Jd.ppath.extname(e);if(t.match(/\.[cm]?[jt]sx?$/))return!0;if(t===".exe"||t===".bin")return!1;let r=Buffer.alloc(4),s;try{s=Jd.xfs.openSync(e,"r")}catch{return!0}try{Jd.xfs.readSync(s,r,0,r.length,0)}finally{Jd.xfs.closeSync(s)}let a=r.readUint32BE();return!(a===3405691582||a===3489328638||a===2135247942||(a&4294901760)===1297743872)}async function cst(e,{project:t}){let r=t.configuration,s=new Map,a=t.storedPackages.get(e.locatorHash);if(!a)throw new Error(`Package for ${Cw.prettyLocator(r,e)} not found in the project`);let o=new $be.Writable,g=r.getLinkers(),p={project:t,report:new ast.StreamReport({configuration:r,stdout:o})},f=new Set([e.locatorHash]);for(let y of a.dependencies.values()){let B=t.storedResolutions.get(y.descriptorHash);if(!B)throw new Error(`Assertion failed: The resolution (${Cw.prettyDescriptor(r,y)}) should have been registered`);f.add(B)}let m=await Promise.all(Array.from(f,async y=>{let B=t.storedPackages.get(y);if(!B)throw new Error(`Assertion failed: The package (${y}) should have been registered`);if(B.bin.size===0)return NAe.mapAndFilter.skip;let v=g.find(T=>T.supportsPackage(B,p));if(!v)return NAe.mapAndFilter.skip;let k=null;try{k=await v.findPackageLocation(B,p)}catch(T){if(T.code==="LOCATOR_NOT_INSTALLED")return NAe.mapAndFilter.skip;throw T}return{dependency:B,packageLocation:k}}));for(let y of m){if(y===NAe.mapAndFilter.skip)continue;let{dependency:B,packageLocation:v}=y;for(let[k,T]of B.bin){let O=Jd.ppath.resolve(v,T);s.set(k,[B,Jd.npath.fromPortablePath(O),IJt(O)])}}return s}async function wdn(e){return await cst(e.anchoredLocator,{project:e.project})}async function CJt(e,t){await Promise.all(Array.from(t,([r,[,s,a]])=>a?Tne(e,r,process.execPath,[s]):Tne(e,r,s,[])))}async function Tdn(e,t,r,{cwd:s,project:a,stdin:o,stdout:g,stderr:p,nodeArgs:f=[],packageAccessibleBinaries:m}){m??=await cst(e,{project:a});let y=m.get(t);if(!y)throw new Error(`Binary not found (${t}) for ${Cw.prettyLocator(a.configuration,e)}`);return await Jd.xfs.mktempPromise(async B=>{let[,v]=y,k=await mVe({project:a,locator:e,binFolder:B});await CJt(k.BERRY_BIN_FOLDER,m);let T=IJt(Jd.npath.toPortablePath(v))?mW.pipevp(process.execPath,[...f,v,...r],{cwd:s,env:k,stdin:o,stdout:g,stderr:p}):mW.pipevp(v,r,{cwd:s,env:k,stdin:o,stdout:g,stderr:p}),O;try{O=await T}finally{await Jd.xfs.removePromise(k.BERRY_BIN_FOLDER)}return O.code})}async function y4s(e,t,r,{cwd:s,stdin:a,stdout:o,stderr:g,packageAccessibleBinaries:p}){return await Tdn(e.anchoredLocator,t,r,{project:e.project,cwd:s,stdin:a,stdout:o,stderr:g,packageAccessibleBinaries:p})}});var eEe=z((JOc,Rdn)=>{"use strict";var Ndn=new Map([["C","cwd"],["f","file"],["z","gzip"],["P","preservePaths"],["U","unlink"],["strip-components","strip"],["stripComponents","strip"],["keep-newer","newer"],["keepNewer","newer"],["keep-newer-files","newer"],["keepNewerFiles","newer"],["k","keep"],["keep-existing","keep"],["keepExisting","keep"],["m","noMtime"],["no-mtime","noMtime"],["p","preserveOwner"],["L","follow"],["h","follow"]]);Rdn.exports=e=>e?Object.keys(e).map(t=>[Ndn.has(t)?Ndn.get(t):t,e[t]]).reduce((t,r)=>(t[r[0]]=r[1],t),Object.create(null)):{}});var fst=z(Pdn=>{"use strict";var Ddn=typeof process=="object"&&process?process:{stdout:null,stderr:null},b4s=xt("events"),xdn=xt("stream"),E4s=xt("string_decoder"),kdn=E4s.StringDecoder,Ij=Symbol("EOF"),Cj=Symbol("maybeEmitEnd"),Rne=Symbol("emittedEnd"),lst=Symbol("emittingEnd"),hVe=Symbol("emittedError"),ust=Symbol("closed"),Gdn=Symbol("read"),gst=Symbol("flush"),Fdn=Symbol("flushChunk"),kL=Symbol("encoding"),mj=Symbol("decoder"),Ast=Symbol("flowing"),_Ve=Symbol("paused"),tEe=Symbol("resume"),eS=Symbol("buffer"),FJ=Symbol("pipes"),aR=Symbol("bufferLength"),hJt=Symbol("bufferPush"),_Jt=Symbol("bufferShift"),DD=Symbol("objectMode"),tS=Symbol("destroyed"),yJt=Symbol("error"),bJt=Symbol("emitData"),Zdn=Symbol("emitEnd"),EJt=Symbol("emitEnd2"),hj=Symbol("async"),BJt=Symbol("abort"),dst=Symbol("aborted"),DAe=Symbol("signal"),yVe=e=>Promise.resolve().then(e),Wdn=global._MP_NO_ITERATOR_SYMBOLS_!=="1",Ldn=Wdn&&Symbol.asyncIterator||Symbol("asyncIterator not implemented"),Vdn=Wdn&&Symbol.iterator||Symbol("iterator not implemented"),B4s=e=>e==="end"||e==="finish"||e==="prefinish",v4s=e=>e instanceof ArrayBuffer||typeof e=="object"&&e.constructor&&e.constructor.name==="ArrayBuffer"&&e.byteLength>=0,S4s=e=>!Buffer.isBuffer(e)&&ArrayBuffer.isView(e),pst=class{constructor(t,r,s){this.src=t,this.dest=r,this.opts=s,this.ondrain=()=>t[tEe](),r.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},vJt=class extends pst{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(t,r,s){super(t,r,s),this.proxyErrors=a=>r.emit("error",a),t.on("error",this.proxyErrors)}},SJt=class e extends xdn{constructor(t){super(),this[Ast]=!1,this[_Ve]=!1,this[FJ]=[],this[eS]=[],this[DD]=t&&t.objectMode||!1,this[DD]?this[kL]=null:this[kL]=t&&t.encoding||null,this[kL]==="buffer"&&(this[kL]=null),this[hj]=t&&!!t.async||!1,this[mj]=this[kL]?new kdn(this[kL]):null,this[Ij]=!1,this[Rne]=!1,this[lst]=!1,this[ust]=!1,this[hVe]=null,this.writable=!0,this.readable=!0,this[aR]=0,this[tS]=!1,t&&t.debugExposeBuffer===!0&&Object.defineProperty(this,"buffer",{get:()=>this[eS]}),t&&t.debugExposePipes===!0&&Object.defineProperty(this,"pipes",{get:()=>this[FJ]}),this[DAe]=t&&t.signal,this[dst]=!1,this[DAe]&&(this[DAe].addEventListener("abort",()=>this[BJt]()),this[DAe].aborted&&this[BJt]())}get bufferLength(){return this[aR]}get encoding(){return this[kL]}set encoding(t){if(this[DD])throw new Error("cannot set encoding in objectMode");if(this[kL]&&t!==this[kL]&&(this[mj]&&this[mj].lastNeed||this[aR]))throw new Error("cannot change encoding");this[kL]!==t&&(this[mj]=t?new kdn(t):null,this[eS].length&&(this[eS]=this[eS].map(r=>this[mj].write(r)))),this[kL]=t}setEncoding(t){this.encoding=t}get objectMode(){return this[DD]}set objectMode(t){this[DD]=this[DD]||!!t}get async(){return this[hj]}set async(t){this[hj]=this[hj]||!!t}[BJt](){this[dst]=!0,this.emit("abort",this[DAe].reason),this.destroy(this[DAe].reason)}get aborted(){return this[dst]}set aborted(t){}write(t,r,s){if(this[dst])return!1;if(this[Ij])throw new Error("write after end");if(this[tS])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof r=="function"&&(s=r,r="utf8"),r||(r="utf8");let a=this[hj]?yVe:o=>o();return!this[DD]&&!Buffer.isBuffer(t)&&(S4s(t)?t=Buffer.from(t.buffer,t.byteOffset,t.byteLength):v4s(t)?t=Buffer.from(t):typeof t!="string"&&(this.objectMode=!0)),this[DD]?(this.flowing&&this[aR]!==0&&this[gst](!0),this.flowing?this.emit("data",t):this[hJt](t),this[aR]!==0&&this.emit("readable"),s&&a(s),this.flowing):t.length?(typeof t=="string"&&!(r===this[kL]&&!this[mj].lastNeed)&&(t=Buffer.from(t,r)),Buffer.isBuffer(t)&&this[kL]&&(t=this[mj].write(t)),this.flowing&&this[aR]!==0&&this[gst](!0),this.flowing?this.emit("data",t):this[hJt](t),this[aR]!==0&&this.emit("readable"),s&&a(s),this.flowing):(this[aR]!==0&&this.emit("readable"),s&&a(s),this.flowing)}read(t){if(this[tS])return null;if(this[aR]===0||t===0||t>this[aR])return this[Cj](),null;this[DD]&&(t=null),this[eS].length>1&&!this[DD]&&(this.encoding?this[eS]=[this[eS].join("")]:this[eS]=[Buffer.concat(this[eS],this[aR])]);let r=this[Gdn](t||null,this[eS][0]);return this[Cj](),r}[Gdn](t,r){return t===r.length||t===null?this[_Jt]():(this[eS][0]=r.slice(t),r=r.slice(0,t),this[aR]-=t),this.emit("data",r),!this[eS].length&&!this[Ij]&&this.emit("drain"),r}end(t,r,s){return typeof t=="function"&&(s=t,t=null),typeof r=="function"&&(s=r,r="utf8"),t&&this.write(t,r),s&&this.once("end",s),this[Ij]=!0,this.writable=!1,(this.flowing||!this[_Ve])&&this[Cj](),this}[tEe](){this[tS]||(this[_Ve]=!1,this[Ast]=!0,this.emit("resume"),this[eS].length?this[gst]():this[Ij]?this[Cj]():this.emit("drain"))}resume(){return this[tEe]()}pause(){this[Ast]=!1,this[_Ve]=!0}get destroyed(){return this[tS]}get flowing(){return this[Ast]}get paused(){return this[_Ve]}[hJt](t){this[DD]?this[aR]+=1:this[aR]+=t.length,this[eS].push(t)}[_Jt](){return this[DD]?this[aR]-=1:this[aR]-=this[eS][0].length,this[eS].shift()}[gst](t){do;while(this[Fdn](this[_Jt]())&&this[eS].length);!t&&!this[eS].length&&!this[Ij]&&this.emit("drain")}[Fdn](t){return this.emit("data",t),this.flowing}pipe(t,r){if(this[tS])return;let s=this[Rne];return r=r||{},t===Ddn.stdout||t===Ddn.stderr?r.end=!1:r.end=r.end!==!1,r.proxyErrors=!!r.proxyErrors,s?r.end&&t.end():(this[FJ].push(r.proxyErrors?new vJt(this,t,r):new pst(this,t,r)),this[hj]?yVe(()=>this[tEe]()):this[tEe]()),t}unpipe(t){let r=this[FJ].find(s=>s.dest===t);r&&(this[FJ].splice(this[FJ].indexOf(r),1),r.unpipe())}addListener(t,r){return this.on(t,r)}on(t,r){let s=super.on(t,r);return t==="data"&&!this[FJ].length&&!this.flowing?this[tEe]():t==="readable"&&this[aR]!==0?super.emit("readable"):B4s(t)&&this[Rne]?(super.emit(t),this.removeAllListeners(t)):t==="error"&&this[hVe]&&(this[hj]?yVe(()=>r.call(this,this[hVe])):r.call(this,this[hVe])),s}get emittedEnd(){return this[Rne]}[Cj](){!this[lst]&&!this[Rne]&&!this[tS]&&this[eS].length===0&&this[Ij]&&(this[lst]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[ust]&&this.emit("close"),this[lst]=!1)}emit(t,r,...s){if(t!=="error"&&t!=="close"&&t!==tS&&this[tS])return;if(t==="data")return!this[DD]&&!r?!1:this[hj]?yVe(()=>this[bJt](r)):this[bJt](r);if(t==="end")return this[Zdn]();if(t==="close"){if(this[ust]=!0,!this[Rne]&&!this[tS])return;let o=super.emit("close");return this.removeAllListeners("close"),o}else if(t==="error"){this[hVe]=r,super.emit(yJt,r);let o=!this[DAe]||this.listeners("error").length?super.emit("error",r):!1;return this[Cj](),o}else if(t==="resume"){let o=super.emit("resume");return this[Cj](),o}else if(t==="finish"||t==="prefinish"){let o=super.emit(t);return this.removeAllListeners(t),o}let a=super.emit(t,r,...s);return this[Cj](),a}[bJt](t){for(let s of this[FJ])s.dest.write(t)===!1&&this.pause();let r=super.emit("data",t);return this[Cj](),r}[Zdn](){this[Rne]||(this[Rne]=!0,this.readable=!1,this[hj]?yVe(()=>this[EJt]()):this[EJt]())}[EJt](){if(this[mj]){let r=this[mj].end();if(r){for(let s of this[FJ])s.dest.write(r);super.emit("data",r)}}for(let r of this[FJ])r.end();let t=super.emit("end");return this.removeAllListeners("end"),t}collect(){let t=[];this[DD]||(t.dataLength=0);let r=this.promise();return this.on("data",s=>{t.push(s),this[DD]||(t.dataLength+=s.length)}),r.then(()=>t)}concat(){return this[DD]?Promise.reject(new Error("cannot concat in objectMode")):this.collect().then(t=>this[DD]?Promise.reject(new Error("cannot concat in objectMode")):this[kL]?t.join(""):Buffer.concat(t,t.dataLength))}promise(){return new Promise((t,r)=>{this.on(tS,()=>r(new Error("stream destroyed"))),this.on("error",s=>r(s)),this.on("end",()=>t())})}[Ldn](){let t=!1,r=()=>(this.pause(),t=!0,Promise.resolve({done:!0}));return{next:()=>{if(t)return r();let a=this.read();if(a!==null)return Promise.resolve({done:!1,value:a});if(this[Ij])return r();let o=null,g=null,p=B=>{this.removeListener("data",f),this.removeListener("end",m),this.removeListener(tS,y),r(),g(B)},f=B=>{this.removeListener("error",p),this.removeListener("end",m),this.removeListener(tS,y),this.pause(),o({value:B,done:!!this[Ij]})},m=()=>{this.removeListener("error",p),this.removeListener("data",f),this.removeListener(tS,y),r(),o({done:!0})},y=()=>p(new Error("stream destroyed"));return new Promise((B,v)=>{g=v,o=B,this.once(tS,y),this.once("error",p),this.once("end",m),this.once("data",f)})},throw:r,return:r,[Ldn](){return this}}}[Vdn](){let t=!1,r=()=>(this.pause(),this.removeListener(yJt,r),this.removeListener(tS,r),this.removeListener("end",r),t=!0,{done:!0}),s=()=>{if(t)return r();let a=this.read();return a===null?r():{value:a}};return this.once("end",r),this.once(yJt,r),this.once(tS,r),{next:s,throw:r,return:r,[Vdn](){return this}}}destroy(t){return this[tS]?(t?this.emit("error",t):this.emit(tS),this):(this[tS]=!0,this[eS].length=0,this[aR]=0,typeof this.close=="function"&&!this[ust]&&this.close(),t?this.emit("error",t):this.emit(tS),this)}static isStream(t){return!!t&&(t instanceof e||t instanceof xdn||t instanceof b4s&&(typeof t.pipe=="function"||typeof t.write=="function"&&typeof t.end=="function"))}};Pdn.Minipass=SJt});var Qdn=z((KOc,Odn)=>{var w4s=xt("zlib").constants||{ZLIB_VERNUM:4736};Odn.exports=Object.freeze(Object.assign(Object.create(null),{Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_VERSION_ERROR:-6,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,DEFLATE:1,INFLATE:2,GZIP:3,GUNZIP:4,DEFLATERAW:5,INFLATERAW:6,UNZIP:7,BROTLI_DECODE:8,BROTLI_ENCODE:9,Z_MIN_WINDOWBITS:8,Z_MAX_WINDOWBITS:15,Z_DEFAULT_WINDOWBITS:15,Z_MIN_CHUNK:64,Z_MAX_CHUNK:1/0,Z_DEFAULT_CHUNK:16384,Z_MIN_MEMLEVEL:1,Z_MAX_MEMLEVEL:9,Z_DEFAULT_MEMLEVEL:8,Z_MIN_LEVEL:-1,Z_MAX_LEVEL:9,Z_DEFAULT_LEVEL:-1,BROTLI_OPERATION_PROCESS:0,BROTLI_OPERATION_FLUSH:1,BROTLI_OPERATION_FINISH:2,BROTLI_OPERATION_EMIT_METADATA:3,BROTLI_MODE_GENERIC:0,BROTLI_MODE_TEXT:1,BROTLI_MODE_FONT:2,BROTLI_DEFAULT_MODE:0,BROTLI_MIN_QUALITY:0,BROTLI_MAX_QUALITY:11,BROTLI_DEFAULT_QUALITY:11,BROTLI_MIN_WINDOW_BITS:10,BROTLI_MAX_WINDOW_BITS:24,BROTLI_LARGE_MAX_WINDOW_BITS:30,BROTLI_DEFAULT_WINDOW:22,BROTLI_MIN_INPUT_BLOCK_BITS:16,BROTLI_MAX_INPUT_BLOCK_BITS:24,BROTLI_PARAM_MODE:0,BROTLI_PARAM_QUALITY:1,BROTLI_PARAM_LGWIN:2,BROTLI_PARAM_LGBLOCK:3,BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING:4,BROTLI_PARAM_SIZE_HINT:5,BROTLI_PARAM_LARGE_WINDOW:6,BROTLI_PARAM_NPOSTFIX:7,BROTLI_PARAM_NDIRECT:8,BROTLI_DECODER_RESULT_ERROR:0,BROTLI_DECODER_RESULT_SUCCESS:1,BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT:2,BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION:0,BROTLI_DECODER_PARAM_LARGE_WINDOW:1,BROTLI_DECODER_NO_ERROR:0,BROTLI_DECODER_SUCCESS:1,BROTLI_DECODER_NEEDS_MORE_INPUT:2,BROTLI_DECODER_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE:-1,BROTLI_DECODER_ERROR_FORMAT_RESERVED:-2,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE:-3,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET:-4,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME:-5,BROTLI_DECODER_ERROR_FORMAT_CL_SPACE:-6,BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE:-7,BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT:-8,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1:-9,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2:-10,BROTLI_DECODER_ERROR_FORMAT_TRANSFORM:-11,BROTLI_DECODER_ERROR_FORMAT_DICTIONARY:-12,BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS:-13,BROTLI_DECODER_ERROR_FORMAT_PADDING_1:-14,BROTLI_DECODER_ERROR_FORMAT_PADDING_2:-15,BROTLI_DECODER_ERROR_FORMAT_DISTANCE:-16,BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET:-19,BROTLI_DECODER_ERROR_INVALID_ARGUMENTS:-20,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES:-21,BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS:-22,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP:-25,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1:-26,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2:-27,BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES:-30,BROTLI_DECODER_ERROR_UNREACHABLE:-31},w4s))});var xJt=z((jOc,zdn)=>{"use strict";var Mdn=typeof process=="object"&&process?process:{stdout:null,stderr:null},T4s=xt("events"),Hdn=xt("stream"),Ydn=xt("string_decoder").StringDecoder,_j=Symbol("EOF"),yj=Symbol("maybeEmitEnd"),Dne=Symbol("emittedEnd"),Ist=Symbol("emittingEnd"),bVe=Symbol("emittedError"),Cst=Symbol("closed"),Xdn=Symbol("read"),mst=Symbol("flush"),Jdn=Symbol("flushChunk"),FL=Symbol("encoding"),bj=Symbol("decoder"),hst=Symbol("flowing"),EVe=Symbol("paused"),rEe=Symbol("resume"),cR=Symbol("bufferLength"),wJt=Symbol("bufferPush"),TJt=Symbol("bufferShift"),hk=Symbol("objectMode"),_k=Symbol("destroyed"),NJt=Symbol("emitData"),Udn=Symbol("emitEnd"),RJt=Symbol("emitEnd2"),Ej=Symbol("async"),BVe=e=>Promise.resolve().then(e),Kdn=global._MP_NO_ITERATOR_SYMBOLS_!=="1",N4s=Kdn&&Symbol.asyncIterator||Symbol("asyncIterator not implemented"),R4s=Kdn&&Symbol.iterator||Symbol("iterator not implemented"),D4s=e=>e==="end"||e==="finish"||e==="prefinish",x4s=e=>e instanceof ArrayBuffer||typeof e=="object"&&e.constructor&&e.constructor.name==="ArrayBuffer"&&e.byteLength>=0,k4s=e=>!Buffer.isBuffer(e)&&ArrayBuffer.isView(e),_st=class{constructor(t,r,s){this.src=t,this.dest=r,this.opts=s,this.ondrain=()=>t[rEe](),r.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},DJt=class extends _st{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(t,r,s){super(t,r,s),this.proxyErrors=a=>r.emit("error",a),t.on("error",this.proxyErrors)}};zdn.exports=class jdn extends Hdn{constructor(t){super(),this[hst]=!1,this[EVe]=!1,this.pipes=[],this.buffer=[],this[hk]=t&&t.objectMode||!1,this[hk]?this[FL]=null:this[FL]=t&&t.encoding||null,this[FL]==="buffer"&&(this[FL]=null),this[Ej]=t&&!!t.async||!1,this[bj]=this[FL]?new Ydn(this[FL]):null,this[_j]=!1,this[Dne]=!1,this[Ist]=!1,this[Cst]=!1,this[bVe]=null,this.writable=!0,this.readable=!0,this[cR]=0,this[_k]=!1}get bufferLength(){return this[cR]}get encoding(){return this[FL]}set encoding(t){if(this[hk])throw new Error("cannot set encoding in objectMode");if(this[FL]&&t!==this[FL]&&(this[bj]&&this[bj].lastNeed||this[cR]))throw new Error("cannot change encoding");this[FL]!==t&&(this[bj]=t?new Ydn(t):null,this.buffer.length&&(this.buffer=this.buffer.map(r=>this[bj].write(r)))),this[FL]=t}setEncoding(t){this.encoding=t}get objectMode(){return this[hk]}set objectMode(t){this[hk]=this[hk]||!!t}get async(){return this[Ej]}set async(t){this[Ej]=this[Ej]||!!t}write(t,r,s){if(this[_j])throw new Error("write after end");if(this[_k])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof r=="function"&&(s=r,r="utf8"),r||(r="utf8");let a=this[Ej]?BVe:o=>o();return!this[hk]&&!Buffer.isBuffer(t)&&(k4s(t)?t=Buffer.from(t.buffer,t.byteOffset,t.byteLength):x4s(t)?t=Buffer.from(t):typeof t!="string"&&(this.objectMode=!0)),this[hk]?(this.flowing&&this[cR]!==0&&this[mst](!0),this.flowing?this.emit("data",t):this[wJt](t),this[cR]!==0&&this.emit("readable"),s&&a(s),this.flowing):t.length?(typeof t=="string"&&!(r===this[FL]&&!this[bj].lastNeed)&&(t=Buffer.from(t,r)),Buffer.isBuffer(t)&&this[FL]&&(t=this[bj].write(t)),this.flowing&&this[cR]!==0&&this[mst](!0),this.flowing?this.emit("data",t):this[wJt](t),this[cR]!==0&&this.emit("readable"),s&&a(s),this.flowing):(this[cR]!==0&&this.emit("readable"),s&&a(s),this.flowing)}read(t){if(this[_k])return null;if(this[cR]===0||t===0||t>this[cR])return this[yj](),null;this[hk]&&(t=null),this.buffer.length>1&&!this[hk]&&(this.encoding?this.buffer=[this.buffer.join("")]:this.buffer=[Buffer.concat(this.buffer,this[cR])]);let r=this[Xdn](t||null,this.buffer[0]);return this[yj](),r}[Xdn](t,r){return t===r.length||t===null?this[TJt]():(this.buffer[0]=r.slice(t),r=r.slice(0,t),this[cR]-=t),this.emit("data",r),!this.buffer.length&&!this[_j]&&this.emit("drain"),r}end(t,r,s){return typeof t=="function"&&(s=t,t=null),typeof r=="function"&&(s=r,r="utf8"),t&&this.write(t,r),s&&this.once("end",s),this[_j]=!0,this.writable=!1,(this.flowing||!this[EVe])&&this[yj](),this}[rEe](){this[_k]||(this[EVe]=!1,this[hst]=!0,this.emit("resume"),this.buffer.length?this[mst]():this[_j]?this[yj]():this.emit("drain"))}resume(){return this[rEe]()}pause(){this[hst]=!1,this[EVe]=!0}get destroyed(){return this[_k]}get flowing(){return this[hst]}get paused(){return this[EVe]}[wJt](t){this[hk]?this[cR]+=1:this[cR]+=t.length,this.buffer.push(t)}[TJt](){return this.buffer.length&&(this[hk]?this[cR]-=1:this[cR]-=this.buffer[0].length),this.buffer.shift()}[mst](t){do;while(this[Jdn](this[TJt]()));!t&&!this.buffer.length&&!this[_j]&&this.emit("drain")}[Jdn](t){return t?(this.emit("data",t),this.flowing):!1}pipe(t,r){if(this[_k])return;let s=this[Dne];return r=r||{},t===Mdn.stdout||t===Mdn.stderr?r.end=!1:r.end=r.end!==!1,r.proxyErrors=!!r.proxyErrors,s?r.end&&t.end():(this.pipes.push(r.proxyErrors?new DJt(this,t,r):new _st(this,t,r)),this[Ej]?BVe(()=>this[rEe]()):this[rEe]()),t}unpipe(t){let r=this.pipes.find(s=>s.dest===t);r&&(this.pipes.splice(this.pipes.indexOf(r),1),r.unpipe())}addListener(t,r){return this.on(t,r)}on(t,r){let s=super.on(t,r);return t==="data"&&!this.pipes.length&&!this.flowing?this[rEe]():t==="readable"&&this[cR]!==0?super.emit("readable"):D4s(t)&&this[Dne]?(super.emit(t),this.removeAllListeners(t)):t==="error"&&this[bVe]&&(this[Ej]?BVe(()=>r.call(this,this[bVe])):r.call(this,this[bVe])),s}get emittedEnd(){return this[Dne]}[yj](){!this[Ist]&&!this[Dne]&&!this[_k]&&this.buffer.length===0&&this[_j]&&(this[Ist]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[Cst]&&this.emit("close"),this[Ist]=!1)}emit(t,r,...s){if(t!=="error"&&t!=="close"&&t!==_k&&this[_k])return;if(t==="data")return r?this[Ej]?BVe(()=>this[NJt](r)):this[NJt](r):!1;if(t==="end")return this[Udn]();if(t==="close"){if(this[Cst]=!0,!this[Dne]&&!this[_k])return;let o=super.emit("close");return this.removeAllListeners("close"),o}else if(t==="error"){this[bVe]=r;let o=super.emit("error",r);return this[yj](),o}else if(t==="resume"){let o=super.emit("resume");return this[yj](),o}else if(t==="finish"||t==="prefinish"){let o=super.emit(t);return this.removeAllListeners(t),o}let a=super.emit(t,r,...s);return this[yj](),a}[NJt](t){for(let s of this.pipes)s.dest.write(t)===!1&&this.pause();let r=super.emit("data",t);return this[yj](),r}[Udn](){this[Dne]||(this[Dne]=!0,this.readable=!1,this[Ej]?BVe(()=>this[RJt]()):this[RJt]())}[RJt](){if(this[bj]){let r=this[bj].end();if(r){for(let s of this.pipes)s.dest.write(r);super.emit("data",r)}}for(let r of this.pipes)r.end();let t=super.emit("end");return this.removeAllListeners("end"),t}collect(){let t=[];this[hk]||(t.dataLength=0);let r=this.promise();return this.on("data",s=>{t.push(s),this[hk]||(t.dataLength+=s.length)}),r.then(()=>t)}concat(){return this[hk]?Promise.reject(new Error("cannot concat in objectMode")):this.collect().then(t=>this[hk]?Promise.reject(new Error("cannot concat in objectMode")):this[FL]?t.join(""):Buffer.concat(t,t.dataLength))}promise(){return new Promise((t,r)=>{this.on(_k,()=>r(new Error("stream destroyed"))),this.on("error",s=>r(s)),this.on("end",()=>t())})}[N4s](){return{next:()=>{let r=this.read();if(r!==null)return Promise.resolve({done:!1,value:r});if(this[_j])return Promise.resolve({done:!0});let s=null,a=null,o=m=>{this.removeListener("data",g),this.removeListener("end",p),a(m)},g=m=>{this.removeListener("error",o),this.removeListener("end",p),this.pause(),s({value:m,done:!!this[_j]})},p=()=>{this.removeListener("error",o),this.removeListener("data",g),s({done:!0})},f=()=>o(new Error("stream destroyed"));return new Promise((m,y)=>{a=y,s=m,this.once(_k,f),this.once("error",o),this.once("end",p),this.once("data",g)})}}}[R4s](){return{next:()=>{let r=this.read();return{value:r,done:r===null}}}}destroy(t){return this[_k]?(t?this.emit("error",t):this.emit(_k),this):(this[_k]=!0,this.buffer.length=0,this[cR]=0,typeof this.close=="function"&&!this[Cst]&&this.close(),t?this.emit("error",t):this.emit(_k),this)}static isStream(t){return!!t&&(t instanceof jdn||t instanceof Hdn||t instanceof T4s&&(typeof t.pipe=="function"||typeof t.write=="function"&&typeof t.end=="function"))}}});var UJt=z(hW=>{"use strict";var LJt=xt("assert"),xne=xt("buffer").Buffer,epn=xt("zlib"),xAe=hW.constants=Qdn(),G4s=xJt(),qdn=xne.concat,kAe=Symbol("_superWrite"),iEe=class extends Error{constructor(t){super("zlib: "+t.message),this.code=t.code,this.errno=t.errno,this.code||(this.code="ZLIB_ERROR"),this.message="zlib: "+t.message,Error.captureStackTrace(this,this.constructor)}get name(){return"ZlibError"}},F4s=Symbol("opts"),vVe=Symbol("flushFlag"),$dn=Symbol("finishFlushFlag"),JJt=Symbol("fullFlushFlag"),aE=Symbol("handle"),yst=Symbol("onError"),nEe=Symbol("sawError"),kJt=Symbol("level"),GJt=Symbol("strategy"),FJt=Symbol("ended"),zOc=Symbol("_defaultFullFlush"),bst=class extends G4s{constructor(t,r){if(!t||typeof t!="object")throw new TypeError("invalid options for ZlibBase constructor");super(t),this[nEe]=!1,this[FJt]=!1,this[F4s]=t,this[vVe]=t.flush,this[$dn]=t.finishFlush;try{this[aE]=new epn[r](t)}catch(s){throw new iEe(s)}this[yst]=s=>{this[nEe]||(this[nEe]=!0,this.close(),this.emit("error",s))},this[aE].on("error",s=>this[yst](new iEe(s))),this.once("end",()=>this.close)}close(){this[aE]&&(this[aE].close(),this[aE]=null,this.emit("close"))}reset(){if(!this[nEe])return LJt(this[aE],"zlib binding closed"),this[aE].reset()}flush(t){this.ended||(typeof t!="number"&&(t=this[JJt]),this.write(Object.assign(xne.alloc(0),{[vVe]:t})))}end(t,r,s){return t&&this.write(t,r),this.flush(this[$dn]),this[FJt]=!0,super.end(null,null,s)}get ended(){return this[FJt]}write(t,r,s){if(typeof r=="function"&&(s=r,r="utf8"),typeof t=="string"&&(t=xne.from(t,r)),this[nEe])return;LJt(this[aE],"zlib binding closed");let a=this[aE]._handle,o=a.close;a.close=()=>{};let g=this[aE].close;this[aE].close=()=>{},xne.concat=m=>m;let p;try{let m=typeof t[vVe]=="number"?t[vVe]:this[vVe];p=this[aE]._processChunk(t,m),xne.concat=qdn}catch(m){xne.concat=qdn,this[yst](new iEe(m))}finally{this[aE]&&(this[aE]._handle=a,a.close=o,this[aE].close=g,this[aE].removeAllListeners("error"))}this[aE]&&this[aE].on("error",m=>this[yst](new iEe(m)));let f;if(p)if(Array.isArray(p)&&p.length>0){f=this[kAe](xne.from(p[0]));for(let m=1;m{this.flush(a),o()};try{this[aE].params(t,r)}finally{this[aE].flush=s}this[aE]&&(this[kJt]=t,this[GJt]=r)}}}},VJt=class extends Bj{constructor(t){super(t,"Deflate")}},WJt=class extends Bj{constructor(t){super(t,"Inflate")}},ZJt=Symbol("_portable"),PJt=class extends Bj{constructor(t){super(t,"Gzip"),this[ZJt]=t&&!!t.portable}[kAe](t){return this[ZJt]?(this[ZJt]=!1,t[9]=255,super[kAe](t)):super[kAe](t)}},OJt=class extends Bj{constructor(t){super(t,"Gunzip")}},QJt=class extends Bj{constructor(t){super(t,"DeflateRaw")}},MJt=class extends Bj{constructor(t){super(t,"InflateRaw")}},HJt=class extends Bj{constructor(t){super(t,"Unzip")}},Est=class extends bst{constructor(t,r){t=t||{},t.flush=t.flush||xAe.BROTLI_OPERATION_PROCESS,t.finishFlush=t.finishFlush||xAe.BROTLI_OPERATION_FINISH,super(t,r),this[JJt]=xAe.BROTLI_OPERATION_FLUSH}},YJt=class extends Est{constructor(t){super(t,"BrotliCompress")}},XJt=class extends Est{constructor(t){super(t,"BrotliDecompress")}};hW.Deflate=VJt;hW.Inflate=WJt;hW.Gzip=PJt;hW.Gunzip=OJt;hW.DeflateRaw=QJt;hW.InflateRaw=MJt;hW.Unzip=HJt;typeof epn.BrotliCompress=="function"?(hW.BrotliCompress=YJt,hW.BrotliDecompress=XJt):hW.BrotliCompress=hW.BrotliDecompress=class{constructor(){throw new Error("Brotli is not supported in this version of Node.js")}}});var sEe=z((eQc,tpn)=>{var Z4s=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform;tpn.exports=Z4s!=="win32"?e=>e:e=>e&&e.replace(/\\/g,"/")});var Bst=z((rQc,rpn)=>{"use strict";var{Minipass:L4s}=fst(),KJt=sEe(),jJt=Symbol("slurp");rpn.exports=class extends L4s{constructor(t,r,s){switch(super(),this.pause(),this.extended=r,this.globalExtended=s,this.header=t,this.startBlockSize=512*Math.ceil(t.size/512),this.blockRemain=this.startBlockSize,this.remain=t.size,this.type=t.type,this.meta=!1,this.ignore=!1,this.type){case"File":case"OldFile":case"Link":case"SymbolicLink":case"CharacterDevice":case"BlockDevice":case"Directory":case"FIFO":case"ContiguousFile":case"GNUDumpDir":break;case"NextFileHasLongLinkpath":case"NextFileHasLongPath":case"OldGnuLongPath":case"GlobalExtendedHeader":case"ExtendedHeader":case"OldExtendedHeader":this.meta=!0;break;default:this.ignore=!0}this.path=KJt(t.path),this.mode=t.mode,this.mode&&(this.mode=this.mode&4095),this.uid=t.uid,this.gid=t.gid,this.uname=t.uname,this.gname=t.gname,this.size=t.size,this.mtime=t.mtime,this.atime=t.atime,this.ctime=t.ctime,this.linkpath=KJt(t.linkpath),this.uname=t.uname,this.gname=t.gname,r&&this[jJt](r),s&&this[jJt](s,!0)}write(t){let r=t.length;if(r>this.blockRemain)throw new Error("writing more to entry than is appropriate");let s=this.remain,a=this.blockRemain;return this.remain=Math.max(0,s-r),this.blockRemain=Math.max(0,a-r),this.ignore?!0:s>=r?super.write(t):super.write(t.slice(0,s))}[jJt](t,r){for(let s in t)t[s]!==null&&t[s]!==void 0&&!(r&&s==="path")&&(this[s]=s==="path"||s==="linkpath"?KJt(t[s]):t[s])}}});var zJt=z(vst=>{"use strict";vst.name=new Map([["0","File"],["","OldFile"],["1","Link"],["2","SymbolicLink"],["3","CharacterDevice"],["4","BlockDevice"],["5","Directory"],["6","FIFO"],["7","ContiguousFile"],["g","GlobalExtendedHeader"],["x","ExtendedHeader"],["A","SolarisACL"],["D","GNUDumpDir"],["I","Inode"],["K","NextFileHasLongLinkpath"],["L","NextFileHasLongPath"],["M","ContinuationFile"],["N","OldGnuLongPath"],["S","SparseFile"],["V","TapeVolumeHeader"],["X","OldExtendedHeader"]]);vst.code=new Map(Array.from(vst.name).map(e=>[e[1],e[0]]))});var opn=z((iQc,spn)=>{"use strict";var V4s=(e,t)=>{if(Number.isSafeInteger(e))e<0?P4s(e,t):W4s(e,t);else throw Error("cannot encode number outside of javascript safe integer range");return t},W4s=(e,t)=>{t[0]=128;for(var r=t.length;r>1;r--)t[r-1]=e&255,e=Math.floor(e/256)},P4s=(e,t)=>{t[0]=255;var r=!1;e=e*-1;for(var s=t.length;s>1;s--){var a=e&255;e=Math.floor(e/256),r?t[s-1]=npn(a):a===0?t[s-1]=0:(r=!0,t[s-1]=ipn(a))}},O4s=e=>{let t=e[0],r=t===128?M4s(e.slice(1,e.length)):t===255?Q4s(e):null;if(r===null)throw Error("invalid base256 encoding");if(!Number.isSafeInteger(r))throw Error("parsed number outside of javascript safe integer range");return r},Q4s=e=>{for(var t=e.length,r=0,s=!1,a=t-1;a>-1;a--){var o=e[a],g;s?g=npn(o):o===0?g=o:(s=!0,g=ipn(o)),g!==0&&(r-=g*Math.pow(256,t-a-1))}return r},M4s=e=>{for(var t=e.length,r=0,s=t-1;s>-1;s--){var a=e[s];a!==0&&(r+=a*Math.pow(256,t-s-1))}return r},npn=e=>(255^e)&255,ipn=e=>(255^e)+1&255;spn.exports={encode:V4s,parse:O4s}});var aEe=z((sQc,cpn)=>{"use strict";var qJt=zJt(),oEe=xt("path").posix,apn=opn(),$Jt=Symbol("slurp"),_W=Symbol("type"),rUt=class{constructor(t,r,s,a){this.cksumValid=!1,this.needPax=!1,this.nullBlock=!1,this.block=null,this.path=null,this.mode=null,this.uid=null,this.gid=null,this.size=null,this.mtime=null,this.cksum=null,this[_W]="0",this.linkpath=null,this.uname=null,this.gname=null,this.devmaj=0,this.devmin=0,this.atime=null,this.ctime=null,Buffer.isBuffer(t)?this.decode(t,r||0,s,a):t&&this.set(t)}decode(t,r,s,a){if(r||(r=0),!t||!(t.length>=r+512))throw new Error("need 512 bytes for header");if(this.path=GAe(t,r,100),this.mode=kne(t,r+100,8),this.uid=kne(t,r+108,8),this.gid=kne(t,r+116,8),this.size=kne(t,r+124,12),this.mtime=eUt(t,r+136,12),this.cksum=kne(t,r+148,12),this[$Jt](s),this[$Jt](a,!0),this[_W]=GAe(t,r+156,1),this[_W]===""&&(this[_W]="0"),this[_W]==="0"&&this.path.slice(-1)==="/"&&(this[_W]="5"),this[_W]==="5"&&(this.size=0),this.linkpath=GAe(t,r+157,100),t.slice(r+257,r+265).toString()==="ustar\x0000")if(this.uname=GAe(t,r+265,32),this.gname=GAe(t,r+297,32),this.devmaj=kne(t,r+329,8),this.devmin=kne(t,r+337,8),t[r+475]!==0){let g=GAe(t,r+345,155);this.path=g+"/"+this.path}else{let g=GAe(t,r+345,130);g&&(this.path=g+"/"+this.path),this.atime=eUt(t,r+476,12),this.ctime=eUt(t,r+488,12)}let o=8*32;for(let g=r;g=r+512))throw new Error("need 512 bytes for header");let s=this.ctime||this.atime?130:155,a=H4s(this.path||"",s),o=a[0],g=a[1];this.needPax=a[2],this.needPax=FAe(t,r,100,o)||this.needPax,this.needPax=Gne(t,r+100,8,this.mode)||this.needPax,this.needPax=Gne(t,r+108,8,this.uid)||this.needPax,this.needPax=Gne(t,r+116,8,this.gid)||this.needPax,this.needPax=Gne(t,r+124,12,this.size)||this.needPax,this.needPax=tUt(t,r+136,12,this.mtime)||this.needPax,t[r+156]=this[_W].charCodeAt(0),this.needPax=FAe(t,r+157,100,this.linkpath)||this.needPax,t.write("ustar\x0000",r+257,8),this.needPax=FAe(t,r+265,32,this.uname)||this.needPax,this.needPax=FAe(t,r+297,32,this.gname)||this.needPax,this.needPax=Gne(t,r+329,8,this.devmaj)||this.needPax,this.needPax=Gne(t,r+337,8,this.devmin)||this.needPax,this.needPax=FAe(t,r+345,s,g)||this.needPax,t[r+475]!==0?this.needPax=FAe(t,r+345,155,g)||this.needPax:(this.needPax=FAe(t,r+345,130,g)||this.needPax,this.needPax=tUt(t,r+476,12,this.atime)||this.needPax,this.needPax=tUt(t,r+488,12,this.ctime)||this.needPax);let p=8*32;for(let f=r;f{let s=e,a="",o,g=oEe.parse(e).root||".";if(Buffer.byteLength(s)<100)o=[s,a,!1];else{a=oEe.dirname(s),s=oEe.basename(s);do Buffer.byteLength(s)<=100&&Buffer.byteLength(a)<=t?o=[s,a,!1]:Buffer.byteLength(s)>100&&Buffer.byteLength(a)<=t?o=[s.slice(0,99),a,!0]:(s=oEe.join(oEe.basename(a),s),a=oEe.dirname(a));while(a!==g&&!o);o||(o=[e.slice(0,99),"",!0])}return o},GAe=(e,t,r)=>e.slice(t,t+r).toString("utf8").replace(/\0.*/,""),eUt=(e,t,r)=>Y4s(kne(e,t,r)),Y4s=e=>e===null?null:new Date(e*1e3),kne=(e,t,r)=>e[t]&128?apn.parse(e.slice(t,t+r)):J4s(e,t,r),X4s=e=>isNaN(e)?null:e,J4s=(e,t,r)=>X4s(parseInt(e.slice(t,t+r).toString("utf8").replace(/\0.*$/,"").trim(),8)),U4s={12:8589934591,8:2097151},Gne=(e,t,r,s)=>s===null?!1:s>U4s[r]||s<0?(apn.encode(s,e.slice(t,t+r)),!0):(K4s(e,t,r,s),!1),K4s=(e,t,r,s)=>e.write(j4s(s,r),t,r,"ascii"),j4s=(e,t)=>z4s(Math.floor(e).toString(8),t),z4s=(e,t)=>(e.length===t-1?e:new Array(t-e.length-1).join("0")+e+" ")+"\0",tUt=(e,t,r,s)=>s===null?!1:Gne(e,t,r,s.getTime()/1e3),q4s=new Array(156).join("\0"),FAe=(e,t,r,s)=>s===null?!1:(e.write(s+q4s,t,r,"utf8"),s.length!==Buffer.byteLength(s)||s.length>r);cpn.exports=rUt});var Sst=z((oQc,lpn)=>{"use strict";var $4s=aEe(),eJs=xt("path"),SVe=class{constructor(t,r){this.atime=t.atime||null,this.charset=t.charset||null,this.comment=t.comment||null,this.ctime=t.ctime||null,this.gid=t.gid||null,this.gname=t.gname||null,this.linkpath=t.linkpath||null,this.mtime=t.mtime||null,this.path=t.path||null,this.size=t.size||null,this.uid=t.uid||null,this.uname=t.uname||null,this.dev=t.dev||null,this.ino=t.ino||null,this.nlink=t.nlink||null,this.global=r||!1}encode(){let t=this.encodeBody();if(t==="")return null;let r=Buffer.byteLength(t),s=512*Math.ceil(1+r/512),a=Buffer.allocUnsafe(s);for(let o=0;o<512;o++)a[o]=0;new $4s({path:("PaxHeader/"+eJs.basename(this.path)).slice(0,99),mode:this.mode||420,uid:this.uid||null,gid:this.gid||null,size:r,mtime:this.mtime||null,type:this.global?"GlobalExtendedHeader":"ExtendedHeader",linkpath:"",uname:this.uname||"",gname:this.gname||"",devmaj:0,devmin:0,atime:this.atime||null,ctime:this.ctime||null}).encode(a),a.write(t,512,r,"utf8");for(let o=r+512;o=Math.pow(10,o)&&(o+=1),o+a+s}};SVe.parse=(e,t,r)=>new SVe(tJs(rJs(e),t),r);var tJs=(e,t)=>t?Object.keys(e).reduce((r,s)=>(r[s]=e[s],r),t):e,rJs=e=>e.replace(/\n$/,"").split(` +`).reduce(nJs,Object.create(null)),nJs=(e,t)=>{let r=parseInt(t,10);if(r!==Buffer.byteLength(t)+1)return e;t=t.slice((r+" ").length);let s=t.split("="),a=s.shift().replace(/^SCHILY\.(dev|ino|nlink)/,"$1");if(!a)return e;let o=s.join("=");return e[a]=/^([A-Z]+\.)?([mac]|birth|creation)time$/.test(a)?new Date(o*1e3):/^[0-9]+$/.test(o)?+o:o,e};lpn.exports=SVe});var cEe=z((aQc,upn)=>{upn.exports=e=>{let t=e.length-1,r=-1;for(;t>-1&&e.charAt(t)==="/";)r=t,t--;return r===-1?e:e.slice(0,r)}});var wst=z((cQc,gpn)=>{"use strict";gpn.exports=e=>class extends e{warn(t,r,s={}){this.file&&(s.file=this.file),this.cwd&&(s.cwd=this.cwd),s.code=r instanceof Error&&r.code||t,s.tarCode=t,!this.strict&&s.recoverable!==!1?(r instanceof Error&&(s=Object.assign(r,s),r=r.message),this.emit("warn",s.tarCode,r,s)):r instanceof Error?this.emit("error",Object.assign(r,s)):this.emit("error",Object.assign(new Error(`${t}: ${r}`),s))}}});var iUt=z((uQc,Apn)=>{"use strict";var Tst=["|","<",">","?",":"],nUt=Tst.map(e=>String.fromCharCode(61440+e.charCodeAt(0))),iJs=new Map(Tst.map((e,t)=>[e,nUt[t]])),sJs=new Map(nUt.map((e,t)=>[e,Tst[t]]));Apn.exports={encode:e=>Tst.reduce((t,r)=>t.split(r).join(iJs.get(r)),e),decode:e=>nUt.reduce((t,r)=>t.split(r).join(sJs.get(r)),e)}});var sUt=z((gQc,ppn)=>{var{isAbsolute:oJs,parse:dpn}=xt("path").win32;ppn.exports=e=>{let t="",r=dpn(e);for(;oJs(e)||r.root;){let s=e.charAt(0)==="/"&&e.slice(0,4)!=="//?/"?"/":r.root;e=e.slice(s.length),t+=s,r=dpn(e)}return[t,e]}});var Ipn=z((AQc,fpn)=>{"use strict";fpn.exports=(e,t,r)=>(e&=4095,r&&(e=(e|384)&-19),t&&(e&256&&(e|=64),e&32&&(e|=8),e&4&&(e|=1)),e)});var fUt=z((fQc,Rpn)=>{"use strict";var{Minipass:Epn}=fst(),Bpn=Sst(),vpn=aEe(),LJ=xt("fs"),Cpn=xt("path"),ZJ=sEe(),aJs=cEe(),Spn=(e,t)=>t?(e=ZJ(e).replace(/^\.(\/|$)/,""),aJs(t)+"/"+e):ZJ(e),cJs=16*1024*1024,mpn=Symbol("process"),hpn=Symbol("file"),_pn=Symbol("directory"),aUt=Symbol("symlink"),ypn=Symbol("hardlink"),wVe=Symbol("header"),Nst=Symbol("read"),cUt=Symbol("lstat"),Rst=Symbol("onlstat"),lUt=Symbol("onread"),uUt=Symbol("onreadlink"),gUt=Symbol("openfile"),AUt=Symbol("onopenfile"),Fne=Symbol("close"),Dst=Symbol("mode"),dUt=Symbol("awaitDrain"),oUt=Symbol("ondrain"),VJ=Symbol("prefix"),bpn=Symbol("hadError"),wpn=wst(),lJs=iUt(),Tpn=sUt(),Npn=Ipn(),xst=wpn(class extends Epn{constructor(t,r){if(r=r||{},super(r),typeof t!="string")throw new TypeError("path is required");this.path=ZJ(t),this.portable=!!r.portable,this.myuid=process.getuid&&process.getuid()||0,this.myuser=process.env.USER||"",this.maxReadSize=r.maxReadSize||cJs,this.linkCache=r.linkCache||new Map,this.statCache=r.statCache||new Map,this.preservePaths=!!r.preservePaths,this.cwd=ZJ(r.cwd||process.cwd()),this.strict=!!r.strict,this.noPax=!!r.noPax,this.noMtime=!!r.noMtime,this.mtime=r.mtime||null,this.prefix=r.prefix?ZJ(r.prefix):null,this.fd=null,this.blockLen=null,this.blockRemain=null,this.buf=null,this.offset=null,this.length=null,this.pos=null,this.remain=null,typeof r.onwarn=="function"&&this.on("warn",r.onwarn);let s=!1;if(!this.preservePaths){let[a,o]=Tpn(this.path);a&&(this.path=o,s=a)}this.win32=!!r.win32||process.platform==="win32",this.win32&&(this.path=lJs.decode(this.path.replace(/\\/g,"/")),t=t.replace(/\\/g,"/")),this.absolute=ZJ(r.absolute||Cpn.resolve(this.cwd,t)),this.path===""&&(this.path="./"),s&&this.warn("TAR_ENTRY_INFO",`stripping ${s} from absolute path`,{entry:this,path:s+this.path}),this.statCache.has(this.absolute)?this[Rst](this.statCache.get(this.absolute)):this[cUt]()}emit(t,...r){return t==="error"&&(this[bpn]=!0),super.emit(t,...r)}[cUt](){LJ.lstat(this.absolute,(t,r)=>{if(t)return this.emit("error",t);this[Rst](r)})}[Rst](t){this.statCache.set(this.absolute,t),this.stat=t,t.isFile()||(t.size=0),this.type=gJs(t),this.emit("stat",t),this[mpn]()}[mpn](){switch(this.type){case"File":return this[hpn]();case"Directory":return this[_pn]();case"SymbolicLink":return this[aUt]();default:return this.end()}}[Dst](t){return Npn(t,this.type==="Directory",this.portable)}[VJ](t){return Spn(t,this.prefix)}[wVe](){this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.header=new vpn({path:this[VJ](this.path),linkpath:this.type==="Link"?this[VJ](this.linkpath):this.linkpath,mode:this[Dst](this.stat.mode),uid:this.portable?null:this.stat.uid,gid:this.portable?null:this.stat.gid,size:this.stat.size,mtime:this.noMtime?null:this.mtime||this.stat.mtime,type:this.type,uname:this.portable?null:this.stat.uid===this.myuid?this.myuser:"",atime:this.portable?null:this.stat.atime,ctime:this.portable?null:this.stat.ctime}),this.header.encode()&&!this.noPax&&super.write(new Bpn({atime:this.portable?null:this.header.atime,ctime:this.portable?null:this.header.ctime,gid:this.portable?null:this.header.gid,mtime:this.noMtime?null:this.mtime||this.header.mtime,path:this[VJ](this.path),linkpath:this.type==="Link"?this[VJ](this.linkpath):this.linkpath,size:this.header.size,uid:this.portable?null:this.header.uid,uname:this.portable?null:this.header.uname,dev:this.portable?null:this.stat.dev,ino:this.portable?null:this.stat.ino,nlink:this.portable?null:this.stat.nlink}).encode()),super.write(this.header.block)}[_pn](){this.path.slice(-1)!=="/"&&(this.path+="/"),this.stat.size=0,this[wVe](),this.end()}[aUt](){LJ.readlink(this.absolute,(t,r)=>{if(t)return this.emit("error",t);this[uUt](r)})}[uUt](t){this.linkpath=ZJ(t),this[wVe](),this.end()}[ypn](t){this.type="Link",this.linkpath=ZJ(Cpn.relative(this.cwd,t)),this.stat.size=0,this[wVe](),this.end()}[hpn](){if(this.stat.nlink>1){let t=this.stat.dev+":"+this.stat.ino;if(this.linkCache.has(t)){let r=this.linkCache.get(t);if(r.indexOf(this.cwd)===0)return this[ypn](r)}this.linkCache.set(t,this.absolute)}if(this[wVe](),this.stat.size===0)return this.end();this[gUt]()}[gUt](){LJ.open(this.absolute,"r",(t,r)=>{if(t)return this.emit("error",t);this[AUt](r)})}[AUt](t){if(this.fd=t,this[bpn])return this[Fne]();this.blockLen=512*Math.ceil(this.stat.size/512),this.blockRemain=this.blockLen;let r=Math.min(this.blockLen,this.maxReadSize);this.buf=Buffer.allocUnsafe(r),this.offset=0,this.pos=0,this.remain=this.stat.size,this.length=this.buf.length,this[Nst]()}[Nst](){let{fd:t,buf:r,offset:s,length:a,pos:o}=this;LJ.read(t,r,s,a,o,(g,p)=>{if(g)return this[Fne](()=>this.emit("error",g));this[lUt](p)})}[Fne](t){LJ.close(this.fd,t)}[lUt](t){if(t<=0&&this.remain>0){let a=new Error("encountered unexpected EOF");return a.path=this.absolute,a.syscall="read",a.code="EOF",this[Fne](()=>this.emit("error",a))}if(t>this.remain){let a=new Error("did not encounter expected EOF");return a.path=this.absolute,a.syscall="read",a.code="EOF",this[Fne](()=>this.emit("error",a))}if(t===this.remain)for(let a=t;athis[oUt]())}[dUt](t){this.once("drain",t)}write(t){if(this.blockRemaint?this.emit("error",t):this.end());this.offset>=this.length&&(this.buf=Buffer.allocUnsafe(Math.min(this.blockRemain,this.buf.length)),this.offset=0),this.length=this.buf.length-this.offset,this[Nst]()}}),pUt=class extends xst{[cUt](){this[Rst](LJ.lstatSync(this.absolute))}[aUt](){this[uUt](LJ.readlinkSync(this.absolute))}[gUt](){this[AUt](LJ.openSync(this.absolute,"r"))}[Nst](){let t=!0;try{let{fd:r,buf:s,offset:a,length:o,pos:g}=this,p=LJ.readSync(r,s,a,o,g);this[lUt](p),t=!1}finally{if(t)try{this[Fne](()=>{})}catch{}}}[dUt](t){t()}[Fne](t){LJ.closeSync(this.fd),t()}},uJs=wpn(class extends Epn{constructor(t,r){r=r||{},super(r),this.preservePaths=!!r.preservePaths,this.portable=!!r.portable,this.strict=!!r.strict,this.noPax=!!r.noPax,this.noMtime=!!r.noMtime,this.readEntry=t,this.type=t.type,this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.prefix=r.prefix||null,this.path=ZJ(t.path),this.mode=this[Dst](t.mode),this.uid=this.portable?null:t.uid,this.gid=this.portable?null:t.gid,this.uname=this.portable?null:t.uname,this.gname=this.portable?null:t.gname,this.size=t.size,this.mtime=this.noMtime?null:r.mtime||t.mtime,this.atime=this.portable?null:t.atime,this.ctime=this.portable?null:t.ctime,this.linkpath=ZJ(t.linkpath),typeof r.onwarn=="function"&&this.on("warn",r.onwarn);let s=!1;if(!this.preservePaths){let[a,o]=Tpn(this.path);a&&(this.path=o,s=a)}this.remain=t.size,this.blockRemain=t.startBlockSize,this.header=new vpn({path:this[VJ](this.path),linkpath:this.type==="Link"?this[VJ](this.linkpath):this.linkpath,mode:this.mode,uid:this.portable?null:this.uid,gid:this.portable?null:this.gid,size:this.size,mtime:this.noMtime?null:this.mtime,type:this.type,uname:this.portable?null:this.uname,atime:this.portable?null:this.atime,ctime:this.portable?null:this.ctime}),s&&this.warn("TAR_ENTRY_INFO",`stripping ${s} from absolute path`,{entry:this,path:s+this.path}),this.header.encode()&&!this.noPax&&super.write(new Bpn({atime:this.portable?null:this.atime,ctime:this.portable?null:this.ctime,gid:this.portable?null:this.gid,mtime:this.noMtime?null:this.mtime,path:this[VJ](this.path),linkpath:this.type==="Link"?this[VJ](this.linkpath):this.linkpath,size:this.size,uid:this.portable?null:this.uid,uname:this.portable?null:this.uname,dev:this.portable?null:this.readEntry.dev,ino:this.portable?null:this.readEntry.ino,nlink:this.portable?null:this.readEntry.nlink}).encode()),super.write(this.header.block),t.pipe(this)}[VJ](t){return Spn(t,this.prefix)}[Dst](t){return Npn(t,this.type==="Directory",this.portable)}write(t){let r=t.length;if(r>this.blockRemain)throw new Error("writing more to entry than is appropriate");return this.blockRemain-=r,super.write(t)}end(){return this.blockRemain&&super.write(Buffer.alloc(this.blockRemain)),super.end()}});xst.Sync=pUt;xst.Tar=uJs;var gJs=e=>e.isFile()?"File":e.isDirectory()?"Directory":e.isSymbolicLink()?"SymbolicLink":"Unsupported";Rpn.exports=xst});var xpn=z((IQc,Dpn)=>{"use strict";Dpn.exports=function(e){e.prototype[Symbol.iterator]=function*(){for(let t=this.head;t;t=t.next)yield t.value}}});var IUt=z((CQc,kpn)=>{"use strict";kpn.exports=I_;I_.Node=ZAe;I_.create=I_;function I_(e){var t=this;if(t instanceof I_||(t=new I_),t.tail=null,t.head=null,t.length=0,e&&typeof e.forEach=="function")e.forEach(function(a){t.push(a)});else if(arguments.length>0)for(var r=0,s=arguments.length;r1)r=t;else if(this.head)s=this.head.next,r=this.head.value;else throw new TypeError("Reduce of empty list with no initial value");for(var a=0;s!==null;a++)r=e(r,s.value,a),s=s.next;return r};I_.prototype.reduceReverse=function(e,t){var r,s=this.tail;if(arguments.length>1)r=t;else if(this.tail)s=this.tail.prev,r=this.tail.value;else throw new TypeError("Reduce of empty list with no initial value");for(var a=this.length-1;s!==null;a--)r=e(r,s.value,a),s=s.prev;return r};I_.prototype.toArray=function(){for(var e=new Array(this.length),t=0,r=this.head;r!==null;t++)e[t]=r.value,r=r.next;return e};I_.prototype.toArrayReverse=function(){for(var e=new Array(this.length),t=0,r=this.tail;r!==null;t++)e[t]=r.value,r=r.prev;return e};I_.prototype.slice=function(e,t){t=t||this.length,t<0&&(t+=this.length),e=e||0,e<0&&(e+=this.length);var r=new I_;if(tthis.length&&(t=this.length);for(var s=0,a=this.head;a!==null&&sthis.length&&(t=this.length);for(var s=this.length,a=this.tail;a!==null&&s>t;s--)a=a.prev;for(;a!==null&&s>e;s--,a=a.prev)r.push(a.value);return r};I_.prototype.splice=function(e,t,...r){e>this.length&&(e=this.length-1),e<0&&(e=this.length+e);for(var s=0,a=this.head;a!==null&&s{"use strict";var Wst=class{constructor(t,r){this.path=t||"./",this.absolute=r,this.entry=null,this.stat=null,this.readdir=null,this.pending=!1,this.ignore=!1,this.piped=!1}},{Minipass:fJs}=fst(),Gpn=UJt(),IJs=Bst(),vUt=fUt(),CJs=vUt.Sync,mJs=vUt.Tar,hJs=IUt(),Fpn=Buffer.alloc(1024),Fst=Symbol("onStat"),kst=Symbol("ended"),WJ=Symbol("queue"),lEe=Symbol("current"),LAe=Symbol("process"),Gst=Symbol("processing"),Zpn=Symbol("processJob"),PJ=Symbol("jobs"),CUt=Symbol("jobDone"),Zst=Symbol("addFSEntry"),Lpn=Symbol("addTarEntry"),yUt=Symbol("stat"),bUt=Symbol("readdir"),Lst=Symbol("onreaddir"),Vst=Symbol("pipe"),Vpn=Symbol("entry"),mUt=Symbol("entryOpt"),EUt=Symbol("writeEntryClass"),Ppn=Symbol("write"),hUt=Symbol("ondrain"),Pst=xt("fs"),Wpn=xt("path"),_Js=wst(),_Ut=sEe(),SUt=_Js(class extends fJs{constructor(t){if(super(t),t=t||Object.create(null),this.opt=t,this.file=t.file||"",this.cwd=t.cwd||process.cwd(),this.maxReadSize=t.maxReadSize,this.preservePaths=!!t.preservePaths,this.strict=!!t.strict,this.noPax=!!t.noPax,this.prefix=_Ut(t.prefix||""),this.linkCache=t.linkCache||new Map,this.statCache=t.statCache||new Map,this.readdirCache=t.readdirCache||new Map,this[EUt]=vUt,typeof t.onwarn=="function"&&this.on("warn",t.onwarn),this.portable=!!t.portable,this.zip=null,t.gzip||t.brotli){if(t.gzip&&t.brotli)throw new TypeError("gzip and brotli are mutually exclusive");t.gzip&&(typeof t.gzip!="object"&&(t.gzip={}),this.portable&&(t.gzip.portable=!0),this.zip=new Gpn.Gzip(t.gzip)),t.brotli&&(typeof t.brotli!="object"&&(t.brotli={}),this.zip=new Gpn.BrotliCompress(t.brotli)),this.zip.on("data",r=>super.write(r)),this.zip.on("end",r=>super.end()),this.zip.on("drain",r=>this[hUt]()),this.on("resume",r=>this.zip.resume())}else this.on("drain",this[hUt]);this.noDirRecurse=!!t.noDirRecurse,this.follow=!!t.follow,this.noMtime=!!t.noMtime,this.mtime=t.mtime||null,this.filter=typeof t.filter=="function"?t.filter:r=>!0,this[WJ]=new hJs,this[PJ]=0,this.jobs=+t.jobs||4,this[Gst]=!1,this[kst]=!1}[Ppn](t){return super.write(t)}add(t){return this.write(t),this}end(t){return t&&this.write(t),this[kst]=!0,this[LAe](),this}write(t){if(this[kst])throw new Error("write after end");return t instanceof IJs?this[Lpn](t):this[Zst](t),this.flowing}[Lpn](t){let r=_Ut(Wpn.resolve(this.cwd,t.path));if(!this.filter(t.path,t))t.resume();else{let s=new Wst(t.path,r,!1);s.entry=new mJs(t,this[mUt](s)),s.entry.on("end",a=>this[CUt](s)),this[PJ]+=1,this[WJ].push(s)}this[LAe]()}[Zst](t){let r=_Ut(Wpn.resolve(this.cwd,t));this[WJ].push(new Wst(t,r)),this[LAe]()}[yUt](t){t.pending=!0,this[PJ]+=1;let r=this.follow?"stat":"lstat";Pst[r](t.absolute,(s,a)=>{t.pending=!1,this[PJ]-=1,s?this.emit("error",s):this[Fst](t,a)})}[Fst](t,r){this.statCache.set(t.absolute,r),t.stat=r,this.filter(t.path,r)||(t.ignore=!0),this[LAe]()}[bUt](t){t.pending=!0,this[PJ]+=1,Pst.readdir(t.absolute,(r,s)=>{if(t.pending=!1,this[PJ]-=1,r)return this.emit("error",r);this[Lst](t,s)})}[Lst](t,r){this.readdirCache.set(t.absolute,r),t.readdir=r,this[LAe]()}[LAe](){if(!this[Gst]){this[Gst]=!0;for(let t=this[WJ].head;t!==null&&this[PJ]this.warn(r,s,a),noPax:this.noPax,cwd:this.cwd,absolute:t.absolute,preservePaths:this.preservePaths,maxReadSize:this.maxReadSize,strict:this.strict,portable:this.portable,linkCache:this.linkCache,statCache:this.statCache,noMtime:this.noMtime,mtime:this.mtime,prefix:this.prefix}}[Vpn](t){this[PJ]+=1;try{return new this[EUt](t.path,this[mUt](t)).on("end",()=>this[CUt](t)).on("error",r=>this.emit("error",r))}catch(r){this.emit("error",r)}}[hUt](){this[lEe]&&this[lEe].entry&&this[lEe].entry.resume()}[Vst](t){t.piped=!0,t.readdir&&t.readdir.forEach(a=>{let o=t.path,g=o==="./"?"":o.replace(/\/*$/,"/");this[Zst](g+a)});let r=t.entry,s=this.zip;s?r.on("data",a=>{s.write(a)||r.pause()}):r.on("data",a=>{super.write(a)||r.pause()})}pause(){return this.zip&&this.zip.pause(),super.pause()}}),BUt=class extends SUt{constructor(t){super(t),this[EUt]=CJs}pause(){}resume(){}[yUt](t){let r=this.follow?"statSync":"lstatSync";this[Fst](t,Pst[r](t.absolute))}[bUt](t,r){this[Lst](t,Pst.readdirSync(t.absolute))}[Vst](t){let r=t.entry,s=this.zip;t.readdir&&t.readdir.forEach(a=>{let o=t.path,g=o==="./"?"":o.replace(/\/*$/,"/");this[Zst](g+a)}),s?r.on("data",a=>{s.write(a)}):r.on("data",a=>{super[Ppn](a)})}};SUt.Sync=BUt;Opn.exports=SUt});var CEe=z(NVe=>{"use strict";var yJs=xJt(),bJs=xt("events").EventEmitter,ZL=xt("fs"),NUt=ZL.writev;if(!NUt){let e=process.binding("fs"),t=e.FSReqWrap||e.FSReqCallback;NUt=(r,s,a,o)=>{let g=(f,m)=>o(f,m,s),p=new t;p.oncomplete=g,e.writeBuffers(r,s,a,p)}}var fEe=Symbol("_autoClose"),vH=Symbol("_close"),TVe=Symbol("_ended"),xy=Symbol("_fd"),Qpn=Symbol("_finished"),Lne=Symbol("_flags"),wUt=Symbol("_flush"),RUt=Symbol("_handleChunk"),DUt=Symbol("_makeBuf"),Xst=Symbol("_mode"),Qst=Symbol("_needDrain"),dEe=Symbol("_onerror"),IEe=Symbol("_onopen"),TUt=Symbol("_onread"),gEe=Symbol("_onwrite"),Vne=Symbol("_open"),vj=Symbol("_path"),VAe=Symbol("_pos"),OJ=Symbol("_queue"),AEe=Symbol("_read"),Mpn=Symbol("_readSize"),Zne=Symbol("_reading"),Mst=Symbol("_remain"),Hpn=Symbol("_size"),Hst=Symbol("_write"),uEe=Symbol("_writing"),Yst=Symbol("_defaultFlag"),pEe=Symbol("_errored"),Jst=class extends yJs{constructor(t,r){if(r=r||{},super(r),this.readable=!0,this.writable=!1,typeof t!="string")throw new TypeError("path must be a string");this[pEe]=!1,this[xy]=typeof r.fd=="number"?r.fd:null,this[vj]=t,this[Mpn]=r.readSize||16*1024*1024,this[Zne]=!1,this[Hpn]=typeof r.size=="number"?r.size:1/0,this[Mst]=this[Hpn],this[fEe]=typeof r.autoClose=="boolean"?r.autoClose:!0,typeof this[xy]=="number"?this[AEe]():this[Vne]()}get fd(){return this[xy]}get path(){return this[vj]}write(){throw new TypeError("this is a readable stream")}end(){throw new TypeError("this is a readable stream")}[Vne](){ZL.open(this[vj],"r",(t,r)=>this[IEe](t,r))}[IEe](t,r){t?this[dEe](t):(this[xy]=r,this.emit("open",r),this[AEe]())}[DUt](){return Buffer.allocUnsafe(Math.min(this[Mpn],this[Mst]))}[AEe](){if(!this[Zne]){this[Zne]=!0;let t=this[DUt]();if(t.length===0)return process.nextTick(()=>this[TUt](null,0,t));ZL.read(this[xy],t,0,t.length,null,(r,s,a)=>this[TUt](r,s,a))}}[TUt](t,r,s){this[Zne]=!1,t?this[dEe](t):this[RUt](r,s)&&this[AEe]()}[vH](){if(this[fEe]&&typeof this[xy]=="number"){let t=this[xy];this[xy]=null,ZL.close(t,r=>r?this.emit("error",r):this.emit("close"))}}[dEe](t){this[Zne]=!0,this[vH](),this.emit("error",t)}[RUt](t,r){let s=!1;return this[Mst]-=t,t>0&&(s=super.write(tthis[IEe](t,r))}[IEe](t,r){this[Yst]&&this[Lne]==="r+"&&t&&t.code==="ENOENT"?(this[Lne]="w",this[Vne]()):t?this[dEe](t):(this[xy]=r,this.emit("open",r),this[wUt]())}end(t,r){return t&&this.write(t,r),this[TVe]=!0,!this[uEe]&&!this[OJ].length&&typeof this[xy]=="number"&&this[gEe](null,0),this}write(t,r){return typeof t=="string"&&(t=Buffer.from(t,r)),this[TVe]?(this.emit("error",new Error("write() after end()")),!1):this[xy]===null||this[uEe]||this[OJ].length?(this[OJ].push(t),this[Qst]=!0,!1):(this[uEe]=!0,this[Hst](t),!0)}[Hst](t){ZL.write(this[xy],t,0,t.length,this[VAe],(r,s)=>this[gEe](r,s))}[gEe](t,r){t?this[dEe](t):(this[VAe]!==null&&(this[VAe]+=r),this[OJ].length?this[wUt]():(this[uEe]=!1,this[TVe]&&!this[Qpn]?(this[Qpn]=!0,this[vH](),this.emit("finish")):this[Qst]&&(this[Qst]=!1,this.emit("drain"))))}[wUt](){if(this[OJ].length===0)this[TVe]&&this[gEe](null,0);else if(this[OJ].length===1)this[Hst](this[OJ].pop());else{let t=this[OJ];this[OJ]=[],NUt(this[xy],t,this[VAe],(r,s)=>this[gEe](r,s))}}[vH](){if(this[fEe]&&typeof this[xy]=="number"){let t=this[xy];this[xy]=null,ZL.close(t,r=>r?this.emit("error",r):this.emit("close"))}}},kUt=class extends Ust{[Vne](){let t;if(this[Yst]&&this[Lne]==="r+")try{t=ZL.openSync(this[vj],this[Lne],this[Xst])}catch(r){if(r.code==="ENOENT")return this[Lne]="w",this[Vne]();throw r}else t=ZL.openSync(this[vj],this[Lne],this[Xst]);this[IEe](null,t)}[vH](){if(this[fEe]&&typeof this[xy]=="number"){let t=this[xy];this[xy]=null,ZL.closeSync(t),this.emit("close")}}[Hst](t){let r=!0;try{this[gEe](null,ZL.writeSync(this[xy],t,0,t.length,this[VAe])),r=!1}finally{if(r)try{this[vH]()}catch{}}}};NVe.ReadStream=Jst;NVe.ReadStreamSync=xUt;NVe.WriteStream=Ust;NVe.WriteStreamSync=kUt});var tot=z((bQc,efn)=>{"use strict";var EJs=wst(),Ypn=aEe(),BJs=xt("events"),vJs=IUt(),SJs=1024*1024,wJs=Bst(),Xpn=Sst(),Jpn=UJt(),{nextTick:TJs}=xt("process"),GUt=Buffer.from([31,139]),NO=Symbol("state"),WAe=Symbol("writeEntry"),Sj=Symbol("readEntry"),FUt=Symbol("nextEntry"),Upn=Symbol("processEntry"),RO=Symbol("extendedHeader"),RVe=Symbol("globalExtendedHeader"),Wne=Symbol("meta"),Kpn=Symbol("emitMeta"),cE=Symbol("buffer"),wj=Symbol("queue"),Pne=Symbol("ended"),jpn=Symbol("emittedEnd"),PAe=Symbol("emit"),lR=Symbol("unzip"),Kst=Symbol("consumeChunk"),jst=Symbol("consumeChunkSub"),ZUt=Symbol("consumeBody"),zpn=Symbol("consumeMeta"),qpn=Symbol("consumeHeader"),zst=Symbol("consuming"),LUt=Symbol("bufferConcat"),VUt=Symbol("maybeEnd"),DVe=Symbol("writing"),One=Symbol("aborted"),qst=Symbol("onDone"),OAe=Symbol("sawValidEntry"),$st=Symbol("sawNullBlock"),eot=Symbol("sawEOF"),$pn=Symbol("closeStream"),NJs=e=>!0;efn.exports=EJs(class extends BJs{constructor(t){t=t||{},super(t),this.file=t.file||"",this[OAe]=null,this.on(qst,s=>{(this[NO]==="begin"||this[OAe]===!1)&&this.warn("TAR_BAD_ARCHIVE","Unrecognized archive format")}),t.ondone?this.on(qst,t.ondone):this.on(qst,s=>{this.emit("prefinish"),this.emit("finish"),this.emit("end")}),this.strict=!!t.strict,this.maxMetaEntrySize=t.maxMetaEntrySize||SJs,this.filter=typeof t.filter=="function"?t.filter:NJs;let r=t.file&&(t.file.endsWith(".tar.br")||t.file.endsWith(".tbr"));this.brotli=!t.gzip&&t.brotli!==void 0?t.brotli:r?void 0:!1,this.writable=!0,this.readable=!1,this[wj]=new vJs,this[cE]=null,this[Sj]=null,this[WAe]=null,this[NO]="begin",this[Wne]="",this[RO]=null,this[RVe]=null,this[Pne]=!1,this[lR]=null,this[One]=!1,this[$st]=!1,this[eot]=!1,this.on("end",()=>this[$pn]()),typeof t.onwarn=="function"&&this.on("warn",t.onwarn),typeof t.onentry=="function"&&this.on("entry",t.onentry)}[qpn](t,r){this[OAe]===null&&(this[OAe]=!1);let s;try{s=new Ypn(t,r,this[RO],this[RVe])}catch(a){return this.warn("TAR_ENTRY_INVALID",a)}if(s.nullBlock)this[$st]?(this[eot]=!0,this[NO]==="begin"&&(this[NO]="header"),this[PAe]("eof")):(this[$st]=!0,this[PAe]("nullBlock"));else if(this[$st]=!1,!s.cksumValid)this.warn("TAR_ENTRY_INVALID","checksum failure",{header:s});else if(!s.path)this.warn("TAR_ENTRY_INVALID","path is required",{header:s});else{let a=s.type;if(/^(Symbolic)?Link$/.test(a)&&!s.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath required",{header:s});else if(!/^(Symbolic)?Link$/.test(a)&&s.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath forbidden",{header:s});else{let o=this[WAe]=new wJs(s,this[RO],this[RVe]);if(!this[OAe])if(o.remain){let g=()=>{o.invalid||(this[OAe]=!0)};o.on("end",g)}else this[OAe]=!0;o.meta?o.size>this.maxMetaEntrySize?(o.ignore=!0,this[PAe]("ignoredEntry",o),this[NO]="ignore",o.resume()):o.size>0&&(this[Wne]="",o.on("data",g=>this[Wne]+=g),this[NO]="meta"):(this[RO]=null,o.ignore=o.ignore||!this.filter(o.path,o),o.ignore?(this[PAe]("ignoredEntry",o),this[NO]=o.remain?"ignore":"header",o.resume()):(o.remain?this[NO]="body":(this[NO]="header",o.end()),this[Sj]?this[wj].push(o):(this[wj].push(o),this[FUt]())))}}}[$pn](){TJs(()=>this.emit("close"))}[Upn](t){let r=!0;return t?Array.isArray(t)?this.emit.apply(this,t):(this[Sj]=t,this.emit("entry",t),t.emittedEnd||(t.on("end",s=>this[FUt]()),r=!1)):(this[Sj]=null,r=!1),r}[FUt](){do;while(this[Upn](this[wj].shift()));if(!this[wj].length){let t=this[Sj];!t||t.flowing||t.size===t.remain?this[DVe]||this.emit("drain"):t.once("drain",s=>this.emit("drain"))}}[ZUt](t,r){let s=this[WAe],a=s.blockRemain,o=a>=t.length&&r===0?t:t.slice(r,r+a);return s.write(o),s.blockRemain||(this[NO]="header",this[WAe]=null,s.end()),o.length}[zpn](t,r){let s=this[WAe],a=this[ZUt](t,r);return this[WAe]||this[Kpn](s),a}[PAe](t,r,s){!this[wj].length&&!this[Sj]?this.emit(t,r,s):this[wj].push([t,r,s])}[Kpn](t){switch(this[PAe]("meta",this[Wne]),t.type){case"ExtendedHeader":case"OldExtendedHeader":this[RO]=Xpn.parse(this[Wne],this[RO],!1);break;case"GlobalExtendedHeader":this[RVe]=Xpn.parse(this[Wne],this[RVe],!0);break;case"NextFileHasLongPath":case"OldGnuLongPath":this[RO]=this[RO]||Object.create(null),this[RO].path=this[Wne].replace(/\0.*/,"");break;case"NextFileHasLongLinkpath":this[RO]=this[RO]||Object.create(null),this[RO].linkpath=this[Wne].replace(/\0.*/,"");break;default:throw new Error("unknown meta: "+t.type)}}abort(t){this[One]=!0,this.emit("abort",t),this.warn("TAR_ABORT",t,{recoverable:!1})}write(t){if(this[One])return;if((this[lR]===null||this.brotli===void 0&&this[lR]===!1)&&t){if(this[cE]&&(t=Buffer.concat([this[cE],t]),this[cE]=null),t.lengththis[Kst](p)),this[lR].on("error",p=>this.abort(p)),this[lR].on("end",p=>{this[Pne]=!0,this[Kst]()}),this[DVe]=!0;let g=this[lR][o?"end":"write"](t);return this[DVe]=!1,g}}this[DVe]=!0,this[lR]?this[lR].write(t):this[Kst](t),this[DVe]=!1;let s=this[wj].length?!1:this[Sj]?this[Sj].flowing:!0;return!s&&!this[wj].length&&this[Sj].once("drain",a=>this.emit("drain")),s}[LUt](t){t&&!this[One]&&(this[cE]=this[cE]?Buffer.concat([this[cE],t]):t)}[VUt](){if(this[Pne]&&!this[jpn]&&!this[One]&&!this[zst]){this[jpn]=!0;let t=this[WAe];if(t&&t.blockRemain){let r=this[cE]?this[cE].length:0;this.warn("TAR_BAD_ARCHIVE",`Truncated input (needed ${t.blockRemain} more bytes, only ${r} available)`,{entry:t}),this[cE]&&t.write(this[cE]),t.end()}this[PAe](qst)}}[Kst](t){if(this[zst])this[LUt](t);else if(!t&&!this[cE])this[VUt]();else{if(this[zst]=!0,this[cE]){this[LUt](t);let r=this[cE];this[cE]=null,this[jst](r)}else this[jst](t);for(;this[cE]&&this[cE].length>=512&&!this[One]&&!this[eot];){let r=this[cE];this[cE]=null,this[jst](r)}this[zst]=!1}(!this[cE]||this[Pne])&&this[VUt]()}[jst](t){let r=0,s=t.length;for(;r+512<=s&&!this[One]&&!this[eot];)switch(this[NO]){case"begin":case"header":this[qpn](t,r),r+=512;break;case"ignore":case"body":r+=this[ZUt](t,r);break;case"meta":r+=this[zpn](t,r);break;default:throw new Error("invalid state: "+this[NO])}r{"use strict";var RJs=eEe(),rfn=tot(),mEe=xt("fs"),DJs=CEe(),tfn=xt("path"),WUt=cEe();ifn.exports=(e,t,r)=>{typeof e=="function"?(r=e,t=null,e={}):Array.isArray(e)&&(t=e,e={}),typeof t=="function"&&(r=t,t=null),t?t=Array.from(t):t=[];let s=RJs(e);if(s.sync&&typeof r=="function")throw new TypeError("callback not supported for sync tar functions");if(!s.file&&typeof r=="function")throw new TypeError("callback only supported with file option");return t.length&&kJs(s,t),s.noResume||xJs(s),s.file&&s.sync?GJs(s):s.file?FJs(s,r):nfn(s)};var xJs=e=>{let t=e.onentry;e.onentry=t?r=>{t(r),r.resume()}:r=>r.resume()},kJs=(e,t)=>{let r=new Map(t.map(o=>[WUt(o),!0])),s=e.filter,a=(o,g)=>{let p=g||tfn.parse(o).root||".",f=o===p?!1:r.has(o)?r.get(o):a(tfn.dirname(o),p);return r.set(o,f),f};e.filter=s?(o,g)=>s(o,g)&&a(WUt(o)):o=>a(WUt(o))},GJs=e=>{let t=nfn(e),r=e.file,s=!0,a;try{let o=mEe.statSync(r),g=e.maxReadSize||16*1024*1024;if(o.size{let r=new rfn(e),s=e.maxReadSize||16*1024*1024,a=e.file,o=new Promise((g,p)=>{r.on("error",p),r.on("end",g),mEe.stat(a,(f,m)=>{if(f)p(f);else{let y=new DJs.ReadStream(a,{readSize:s,size:m.size});y.on("error",p),y.pipe(r)}})});return t?o.then(t,t):o},nfn=e=>new rfn(e)});var ufn=z((BQc,lfn)=>{"use strict";var ZJs=eEe(),not=Ost(),sfn=CEe(),ofn=rot(),afn=xt("path");lfn.exports=(e,t,r)=>{if(typeof t=="function"&&(r=t),Array.isArray(e)&&(t=e,e={}),!t||!Array.isArray(t)||!t.length)throw new TypeError("no files or directories specified");t=Array.from(t);let s=ZJs(e);if(s.sync&&typeof r=="function")throw new TypeError("callback not supported for sync tar functions");if(!s.file&&typeof r=="function")throw new TypeError("callback only supported with file option");return s.file&&s.sync?LJs(s,t):s.file?VJs(s,t,r):s.sync?WJs(s,t):PJs(s,t)};var LJs=(e,t)=>{let r=new not.Sync(e),s=new sfn.WriteStreamSync(e.file,{mode:e.mode||438});r.pipe(s),cfn(r,t)},VJs=(e,t,r)=>{let s=new not(e),a=new sfn.WriteStream(e.file,{mode:e.mode||438});s.pipe(a);let o=new Promise((g,p)=>{a.on("error",p),a.on("close",g),s.on("error",p)});return PUt(s,t),r?o.then(r,r):o},cfn=(e,t)=>{t.forEach(r=>{r.charAt(0)==="@"?ofn({file:afn.resolve(e.cwd,r.slice(1)),sync:!0,noResume:!0,onentry:s=>e.add(s)}):e.add(r)}),e.end()},PUt=(e,t)=>{for(;t.length;){let r=t.shift();if(r.charAt(0)==="@")return ofn({file:afn.resolve(e.cwd,r.slice(1)),noResume:!0,onentry:s=>e.add(s)}).then(s=>PUt(e,t));e.add(r)}e.end()},WJs=(e,t)=>{let r=new not.Sync(e);return cfn(r,t),r},PJs=(e,t)=>{let r=new not(e);return PUt(r,t),r}});var OUt=z((vQc,Cfn)=>{"use strict";var OJs=eEe(),gfn=Ost(),yW=xt("fs"),Afn=CEe(),dfn=rot(),pfn=xt("path"),ffn=aEe();Cfn.exports=(e,t,r)=>{let s=OJs(e);if(!s.file)throw new TypeError("file is required");if(s.gzip||s.brotli||s.file.endsWith(".br")||s.file.endsWith(".tbr"))throw new TypeError("cannot append to compressed archives");if(!t||!Array.isArray(t)||!t.length)throw new TypeError("no files or directories specified");return t=Array.from(t),s.sync?QJs(s,t):HJs(s,t,r)};var QJs=(e,t)=>{let r=new gfn.Sync(e),s=!0,a,o;try{try{a=yW.openSync(e.file,"r+")}catch(f){if(f.code==="ENOENT")a=yW.openSync(e.file,"w+");else throw f}let g=yW.fstatSync(a),p=Buffer.alloc(512);e:for(o=0;og.size)break;o+=m,e.mtimeCache&&e.mtimeCache.set(f.path,f.mtime)}s=!1,MJs(e,r,o,a,t)}finally{if(s)try{yW.closeSync(a)}catch{}}},MJs=(e,t,r,s,a)=>{let o=new Afn.WriteStreamSync(e.file,{fd:s,start:r});t.pipe(o),YJs(t,a)},HJs=(e,t,r)=>{t=Array.from(t);let s=new gfn(e),a=(g,p,f)=>{let m=(T,O)=>{T?yW.close(g,X=>f(T)):f(null,O)},y=0;if(p===0)return m(null,0);let B=0,v=Buffer.alloc(512),k=(T,O)=>{if(T)return m(T);if(B+=O,B<512&&O)return yW.read(g,v,B,v.length-B,y+B,k);if(y===0&&v[0]===31&&v[1]===139)return m(new Error("cannot append to compressed archives"));if(B<512)return m(null,y);let X=new ffn(v);if(!X.cksumValid)return m(null,y);let U=512*Math.ceil(X.size/512);if(y+U+512>p||(y+=U+512,y>=p))return m(null,y);e.mtimeCache&&e.mtimeCache.set(X.path,X.mtime),B=0,yW.read(g,v,0,512,y,k)};yW.read(g,v,0,512,y,k)},o=new Promise((g,p)=>{s.on("error",p);let f="r+",m=(y,B)=>{if(y&&y.code==="ENOENT"&&f==="r+")return f="w+",yW.open(e.file,f,m);if(y)return p(y);yW.fstat(B,(v,k)=>{if(v)return yW.close(B,()=>p(v));a(B,k.size,(T,O)=>{if(T)return p(T);let X=new Afn.WriteStream(e.file,{fd:B,start:O});s.pipe(X),X.on("error",p),X.on("close",g),Ifn(s,t)})})};yW.open(e.file,f,m)});return r?o.then(r,r):o},YJs=(e,t)=>{t.forEach(r=>{r.charAt(0)==="@"?dfn({file:pfn.resolve(e.cwd,r.slice(1)),sync:!0,noResume:!0,onentry:s=>e.add(s)}):e.add(r)}),e.end()},Ifn=(e,t)=>{for(;t.length;){let r=t.shift();if(r.charAt(0)==="@")return dfn({file:pfn.resolve(e.cwd,r.slice(1)),noResume:!0,onentry:s=>e.add(s)}).then(s=>Ifn(e,t));e.add(r)}e.end()}});var hfn=z((SQc,mfn)=>{"use strict";var XJs=eEe(),JJs=OUt();mfn.exports=(e,t,r)=>{let s=XJs(e);if(!s.file)throw new TypeError("file is required");if(s.gzip||s.brotli||s.file.endsWith(".br")||s.file.endsWith(".tbr"))throw new TypeError("cannot append to compressed archives");if(!t||!Array.isArray(t)||!t.length)throw new TypeError("no files or directories specified");return t=Array.from(t),UJs(s),JJs(s,t,r)};var UJs=e=>{let t=e.filter;e.mtimeCache||(e.mtimeCache=new Map),e.filter=t?(r,s)=>t(r,s)&&!(e.mtimeCache.get(r)>s.mtime):(r,s)=>!(e.mtimeCache.get(r)>s.mtime)}});var bfn=z((wQc,yfn)=>{var{promisify:_fn}=xt("util"),Qne=xt("fs"),KJs=e=>{if(!e)e={mode:511,fs:Qne};else if(typeof e=="object")e={mode:511,fs:Qne,...e};else if(typeof e=="number")e={mode:e,fs:Qne};else if(typeof e=="string")e={mode:parseInt(e,8),fs:Qne};else throw new TypeError("invalid options argument");return e.mkdir=e.mkdir||e.fs.mkdir||Qne.mkdir,e.mkdirAsync=_fn(e.mkdir),e.stat=e.stat||e.fs.stat||Qne.stat,e.statAsync=_fn(e.stat),e.statSync=e.statSync||e.fs.statSync||Qne.statSync,e.mkdirSync=e.mkdirSync||e.fs.mkdirSync||Qne.mkdirSync,e};yfn.exports=KJs});var Bfn=z((TQc,Efn)=>{var jJs=process.platform,{resolve:zJs,parse:qJs}=xt("path"),$Js=e=>{if(/\0/.test(e))throw Object.assign(new TypeError("path must be a string without null bytes"),{path:e,code:"ERR_INVALID_ARG_VALUE"});if(e=zJs(e),jJs==="win32"){let t=/[*|"<>?:]/,{root:r}=qJs(e);if(t.test(e.substr(r.length)))throw Object.assign(new Error("Illegal characters in path."),{path:e,code:"EINVAL"})}return e};Efn.exports=$Js});var Nfn=z((NQc,Tfn)=>{var{dirname:vfn}=xt("path"),Sfn=(e,t,r=void 0)=>r===t?Promise.resolve():e.statAsync(t).then(s=>s.isDirectory()?r:void 0,s=>s.code==="ENOENT"?Sfn(e,vfn(t),t):void 0),wfn=(e,t,r=void 0)=>{if(r!==t)try{return e.statSync(t).isDirectory()?r:void 0}catch(s){return s.code==="ENOENT"?wfn(e,vfn(t),t):void 0}};Tfn.exports={findMade:Sfn,findMadeSync:wfn}});var HUt=z((RQc,Dfn)=>{var{dirname:Rfn}=xt("path"),QUt=(e,t,r)=>{t.recursive=!1;let s=Rfn(e);return s===e?t.mkdirAsync(e,t).catch(a=>{if(a.code!=="EISDIR")throw a}):t.mkdirAsync(e,t).then(()=>r||e,a=>{if(a.code==="ENOENT")return QUt(s,t).then(o=>QUt(e,t,o));if(a.code!=="EEXIST"&&a.code!=="EROFS")throw a;return t.statAsync(e).then(o=>{if(o.isDirectory())return r;throw a},()=>{throw a})})},MUt=(e,t,r)=>{let s=Rfn(e);if(t.recursive=!1,s===e)try{return t.mkdirSync(e,t)}catch(a){if(a.code!=="EISDIR")throw a;return}try{return t.mkdirSync(e,t),r||e}catch(a){if(a.code==="ENOENT")return MUt(e,t,MUt(s,t,r));if(a.code!=="EEXIST"&&a.code!=="EROFS")throw a;try{if(!t.statSync(e).isDirectory())throw a}catch{throw a}}};Dfn.exports={mkdirpManual:QUt,mkdirpManualSync:MUt}});var Gfn=z((DQc,kfn)=>{var{dirname:xfn}=xt("path"),{findMade:eUs,findMadeSync:tUs}=Nfn(),{mkdirpManual:rUs,mkdirpManualSync:nUs}=HUt(),iUs=(e,t)=>(t.recursive=!0,xfn(e)===e?t.mkdirAsync(e,t):eUs(t,e).then(s=>t.mkdirAsync(e,t).then(()=>s).catch(a=>{if(a.code==="ENOENT")return rUs(e,t);throw a}))),sUs=(e,t)=>{if(t.recursive=!0,xfn(e)===e)return t.mkdirSync(e,t);let s=tUs(t,e);try{return t.mkdirSync(e,t),s}catch(a){if(a.code==="ENOENT")return nUs(e,t);throw a}};kfn.exports={mkdirpNative:iUs,mkdirpNativeSync:sUs}});var Vfn=z((xQc,Lfn)=>{var Ffn=xt("fs"),oUs=process.version,YUt=oUs.replace(/^v/,"").split("."),Zfn=+YUt[0]>10||+YUt[0]==10&&+YUt[1]>=12,aUs=Zfn?e=>e.mkdir===Ffn.mkdir:()=>!1,cUs=Zfn?e=>e.mkdirSync===Ffn.mkdirSync:()=>!1;Lfn.exports={useNative:aUs,useNativeSync:cUs}});var Hfn=z((kQc,Mfn)=>{var hEe=bfn(),_Ee=Bfn(),{mkdirpNative:Wfn,mkdirpNativeSync:Pfn}=Gfn(),{mkdirpManual:Ofn,mkdirpManualSync:Qfn}=HUt(),{useNative:lUs,useNativeSync:uUs}=Vfn(),yEe=(e,t)=>(e=_Ee(e),t=hEe(t),lUs(t)?Wfn(e,t):Ofn(e,t)),gUs=(e,t)=>(e=_Ee(e),t=hEe(t),uUs(t)?Pfn(e,t):Qfn(e,t));yEe.sync=gUs;yEe.native=(e,t)=>Wfn(_Ee(e),hEe(t));yEe.manual=(e,t)=>Ofn(_Ee(e),hEe(t));yEe.nativeSync=(e,t)=>Pfn(_Ee(e),hEe(t));yEe.manualSync=(e,t)=>Qfn(_Ee(e),hEe(t));Mfn.exports=yEe});var zfn=z((GQc,jfn)=>{"use strict";var DO=xt("fs"),QAe=xt("path"),AUs=DO.lchown?"lchown":"chown",dUs=DO.lchownSync?"lchownSync":"chownSync",Xfn=DO.lchown&&!process.version.match(/v1[1-9]+\./)&&!process.version.match(/v10\.[6-9]/),Yfn=(e,t,r)=>{try{return DO[dUs](e,t,r)}catch(s){if(s.code!=="ENOENT")throw s}},pUs=(e,t,r)=>{try{return DO.chownSync(e,t,r)}catch(s){if(s.code!=="ENOENT")throw s}},fUs=Xfn?(e,t,r,s)=>a=>{!a||a.code!=="EISDIR"?s(a):DO.chown(e,t,r,s)}:(e,t,r,s)=>s,XUt=Xfn?(e,t,r)=>{try{return Yfn(e,t,r)}catch(s){if(s.code!=="EISDIR")throw s;pUs(e,t,r)}}:(e,t,r)=>Yfn(e,t,r),IUs=process.version,Jfn=(e,t,r)=>DO.readdir(e,t,r),CUs=(e,t)=>DO.readdirSync(e,t);/^v4\./.test(IUs)&&(Jfn=(e,t,r)=>DO.readdir(e,r));var iot=(e,t,r,s)=>{DO[AUs](e,t,r,fUs(e,t,r,a=>{s(a&&a.code!=="ENOENT"?a:null)}))},Ufn=(e,t,r,s,a)=>{if(typeof t=="string")return DO.lstat(QAe.resolve(e,t),(o,g)=>{if(o)return a(o.code!=="ENOENT"?o:null);g.name=t,Ufn(e,g,r,s,a)});if(t.isDirectory())JUt(QAe.resolve(e,t.name),r,s,o=>{if(o)return a(o);let g=QAe.resolve(e,t.name);iot(g,r,s,a)});else{let o=QAe.resolve(e,t.name);iot(o,r,s,a)}},JUt=(e,t,r,s)=>{Jfn(e,{withFileTypes:!0},(a,o)=>{if(a){if(a.code==="ENOENT")return s();if(a.code!=="ENOTDIR"&&a.code!=="ENOTSUP")return s(a)}if(a||!o.length)return iot(e,t,r,s);let g=o.length,p=null,f=m=>{if(!p){if(m)return s(p=m);if(--g===0)return iot(e,t,r,s)}};o.forEach(m=>Ufn(e,m,t,r,f))})},mUs=(e,t,r,s)=>{if(typeof t=="string")try{let a=DO.lstatSync(QAe.resolve(e,t));a.name=t,t=a}catch(a){if(a.code==="ENOENT")return;throw a}t.isDirectory()&&Kfn(QAe.resolve(e,t.name),r,s),XUt(QAe.resolve(e,t.name),r,s)},Kfn=(e,t,r)=>{let s;try{s=CUs(e,{withFileTypes:!0})}catch(a){if(a.code==="ENOENT")return;if(a.code==="ENOTDIR"||a.code==="ENOTSUP")return XUt(e,t,r);throw a}return s&&s.length&&s.forEach(a=>mUs(e,a,t,r)),XUt(e,t,r)};jfn.exports=JUt;JUt.sync=Kfn});var tIn=z((FQc,UUt)=>{"use strict";var qfn=Hfn(),xO=xt("fs"),sot=xt("path"),$fn=zfn(),SH=sEe(),oot=class extends Error{constructor(t,r){super("Cannot extract through symbolic link"),this.path=r,this.symlink=t}get name(){return"SylinkError"}},aot=class extends Error{constructor(t,r){super(r+": Cannot cd into '"+t+"'"),this.path=t,this.code=r}get name(){return"CwdError"}},cot=(e,t)=>e.get(SH(t)),xVe=(e,t,r)=>e.set(SH(t),r),hUs=(e,t)=>{xO.stat(e,(r,s)=>{(r||!s.isDirectory())&&(r=new aot(e,r&&r.code||"ENOTDIR")),t(r)})};UUt.exports=(e,t,r)=>{e=SH(e);let s=t.umask,a=t.mode|448,o=(a&s)!==0,g=t.uid,p=t.gid,f=typeof g=="number"&&typeof p=="number"&&(g!==t.processUid||p!==t.processGid),m=t.preserve,y=t.unlink,B=t.cache,v=SH(t.cwd),k=(X,U)=>{X?r(X):(xVe(B,e,!0),U&&f?$fn(U,g,p,le=>k(le)):o?xO.chmod(e,a,r):r())};if(B&&cot(B,e)===!0)return k();if(e===v)return hUs(e,k);if(m)return qfn(e,{mode:a}).then(X=>k(null,X),k);let O=SH(sot.relative(v,e)).split("/");lot(v,O,a,B,y,v,null,k)};var lot=(e,t,r,s,a,o,g,p)=>{if(!t.length)return p(null,g);let f=t.shift(),m=SH(sot.resolve(e+"/"+f));if(cot(s,m))return lot(m,t,r,s,a,o,g,p);xO.mkdir(m,r,eIn(m,t,r,s,a,o,g,p))},eIn=(e,t,r,s,a,o,g,p)=>f=>{f?xO.lstat(e,(m,y)=>{if(m)m.path=m.path&&SH(m.path),p(m);else if(y.isDirectory())lot(e,t,r,s,a,o,g,p);else if(a)xO.unlink(e,B=>{if(B)return p(B);xO.mkdir(e,r,eIn(e,t,r,s,a,o,g,p))});else{if(y.isSymbolicLink())return p(new oot(e,e+"/"+t.join("/")));p(f)}}):(g=g||e,lot(e,t,r,s,a,o,g,p))},_Us=e=>{let t=!1,r="ENOTDIR";try{t=xO.statSync(e).isDirectory()}catch(s){r=s.code}finally{if(!t)throw new aot(e,r)}};UUt.exports.sync=(e,t)=>{e=SH(e);let r=t.umask,s=t.mode|448,a=(s&r)!==0,o=t.uid,g=t.gid,p=typeof o=="number"&&typeof g=="number"&&(o!==t.processUid||g!==t.processGid),f=t.preserve,m=t.unlink,y=t.cache,B=SH(t.cwd),v=X=>{xVe(y,e,!0),X&&p&&$fn.sync(X,o,g),a&&xO.chmodSync(e,s)};if(y&&cot(y,e)===!0)return v();if(e===B)return _Us(B),v();if(f)return v(qfn.sync(e,s));let T=SH(sot.relative(B,e)).split("/"),O=null;for(let X=T.shift(),U=B;X&&(U+="/"+X);X=T.shift())if(U=SH(sot.resolve(U)),!cot(y,U))try{xO.mkdirSync(U,s),O=O||U,xVe(y,U,!0)}catch{let ae=xO.lstatSync(U);if(ae.isDirectory()){xVe(y,U,!0);continue}else if(m){xO.unlinkSync(U),xO.mkdirSync(U,s),O=O||U,xVe(y,U,!0);continue}else if(ae.isSymbolicLink())return new oot(U,U+"/"+T.join("/"))}return v(O)}});var jUt=z((ZQc,rIn)=>{var KUt=Object.create(null),{hasOwnProperty:yUs}=Object.prototype;rIn.exports=e=>(yUs.call(KUt,e)||(KUt[e]=e.normalize("NFD")),KUt[e])});var oIn=z((LQc,sIn)=>{var nIn=xt("assert"),bUs=jUt(),EUs=cEe(),{join:iIn}=xt("path"),BUs=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform,vUs=BUs==="win32";sIn.exports=()=>{let e=new Map,t=new Map,r=m=>m.split("/").slice(0,-1).reduce((B,v)=>(B.length&&(v=iIn(B[B.length-1],v)),B.push(v||"/"),B),[]),s=new Set,a=m=>{let y=t.get(m);if(!y)throw new Error("function does not have any path reservations");return{paths:y.paths.map(B=>e.get(B)),dirs:[...y.dirs].map(B=>e.get(B))}},o=m=>{let{paths:y,dirs:B}=a(m);return y.every(v=>v[0]===m)&&B.every(v=>v[0]instanceof Set&&v[0].has(m))},g=m=>s.has(m)||!o(m)?!1:(s.add(m),m(()=>p(m)),!0),p=m=>{if(!s.has(m))return!1;let{paths:y,dirs:B}=t.get(m),v=new Set;return y.forEach(k=>{let T=e.get(k);nIn.equal(T[0],m),T.length===1?e.delete(k):(T.shift(),typeof T[0]=="function"?v.add(T[0]):T[0].forEach(O=>v.add(O)))}),B.forEach(k=>{let T=e.get(k);nIn(T[0]instanceof Set),T[0].size===1&&T.length===1?e.delete(k):T[0].size===1?(T.shift(),v.add(T[0])):T[0].delete(m)}),s.delete(m),v.forEach(k=>g(k)),!0};return{check:o,reserve:(m,y)=>{m=vUs?["win32 parallelization disabled"]:m.map(v=>EUs(iIn(bUs(v))).toLowerCase());let B=new Set(m.map(v=>r(v)).reduce((v,k)=>v.concat(k)));return t.set(y,{dirs:B,paths:m}),m.forEach(v=>{let k=e.get(v);k?k.push(y):e.set(v,[y])}),B.forEach(v=>{let k=e.get(v);k?k[k.length-1]instanceof Set?k[k.length-1].add(y):k.push(new Set([y])):e.set(v,[new Set([y])])}),g(y)}}}});var lIn=z((VQc,cIn)=>{var SUs=process.platform,wUs=SUs==="win32",TUs=global.__FAKE_TESTING_FS__||xt("fs"),{O_CREAT:NUs,O_TRUNC:RUs,O_WRONLY:DUs,UV_FS_O_FILEMAP:aIn=0}=TUs.constants,xUs=wUs&&!!aIn,kUs=512*1024,GUs=aIn|RUs|NUs|DUs;cIn.exports=xUs?e=>e"w"});var sKt=z((WQc,EIn)=>{"use strict";var FUs=xt("assert"),ZUs=tot(),C_=xt("fs"),LUs=CEe(),Tj=xt("path"),_In=tIn(),uIn=iUt(),VUs=oIn(),WUs=sUt(),kO=sEe(),PUs=cEe(),OUs=jUt(),gIn=Symbol("onEntry"),$Ut=Symbol("checkFs"),AIn=Symbol("checkFs2"),Aot=Symbol("pruneCache"),eKt=Symbol("isReusable"),GO=Symbol("makeFs"),tKt=Symbol("file"),rKt=Symbol("directory"),dot=Symbol("link"),dIn=Symbol("symlink"),pIn=Symbol("hardlink"),fIn=Symbol("unsupported"),IIn=Symbol("checkPath"),Mne=Symbol("mkdir"),yk=Symbol("onError"),uot=Symbol("pending"),CIn=Symbol("pend"),bEe=Symbol("unpend"),zUt=Symbol("ended"),qUt=Symbol("maybeClose"),nKt=Symbol("skip"),kVe=Symbol("doChown"),GVe=Symbol("uid"),FVe=Symbol("gid"),ZVe=Symbol("checkedCwd"),yIn=xt("crypto"),bIn=lIn(),QUs=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform,LVe=QUs==="win32",MUs=1024,HUs=(e,t)=>{if(!LVe)return C_.unlink(e,t);let r=e+".DELETE."+yIn.randomBytes(16).toString("hex");C_.rename(e,r,s=>{if(s)return t(s);C_.unlink(r,t)})},YUs=e=>{if(!LVe)return C_.unlinkSync(e);let t=e+".DELETE."+yIn.randomBytes(16).toString("hex");C_.renameSync(e,t),C_.unlinkSync(t)},mIn=(e,t,r)=>e===e>>>0?e:t===t>>>0?t:r,hIn=e=>PUs(kO(OUs(e))).toLowerCase(),XUs=(e,t)=>{t=hIn(t);for(let r of e.keys()){let s=hIn(r);(s===t||s.indexOf(t+"/")===0)&&e.delete(r)}},JUs=e=>{for(let t of e.keys())e.delete(t)},VVe=class extends ZUs{constructor(t){if(t||(t={}),t.ondone=r=>{this[zUt]=!0,this[qUt]()},super(t),this[ZVe]=!1,this.reservations=VUs(),this.transform=typeof t.transform=="function"?t.transform:null,this.writable=!0,this.readable=!1,this[uot]=0,this[zUt]=!1,this.dirCache=t.dirCache||new Map,typeof t.uid=="number"||typeof t.gid=="number"){if(typeof t.uid!="number"||typeof t.gid!="number")throw new TypeError("cannot set owner without number uid and gid");if(t.preserveOwner)throw new TypeError("cannot preserve owner in archive and also set owner explicitly");this.uid=t.uid,this.gid=t.gid,this.setOwner=!0}else this.uid=null,this.gid=null,this.setOwner=!1;t.preserveOwner===void 0&&typeof t.uid!="number"?this.preserveOwner=process.getuid&&process.getuid()===0:this.preserveOwner=!!t.preserveOwner,this.processUid=(this.preserveOwner||this.setOwner)&&process.getuid?process.getuid():null,this.processGid=(this.preserveOwner||this.setOwner)&&process.getgid?process.getgid():null,this.maxDepth=typeof t.maxDepth=="number"?t.maxDepth:MUs,this.forceChown=t.forceChown===!0,this.win32=!!t.win32||LVe,this.newer=!!t.newer,this.keep=!!t.keep,this.noMtime=!!t.noMtime,this.preservePaths=!!t.preservePaths,this.unlink=!!t.unlink,this.cwd=kO(Tj.resolve(t.cwd||process.cwd())),this.strip=+t.strip||0,this.processUmask=t.noChmod?0:process.umask(),this.umask=typeof t.umask=="number"?t.umask:this.processUmask,this.dmode=t.dmode||511&~this.umask,this.fmode=t.fmode||438&~this.umask,this.on("entry",r=>this[gIn](r))}warn(t,r,s={}){return(t==="TAR_BAD_ARCHIVE"||t==="TAR_ABORT")&&(s.recoverable=!1),super.warn(t,r,s)}[qUt](){this[zUt]&&this[uot]===0&&(this.emit("prefinish"),this.emit("finish"),this.emit("end"))}[IIn](t){let r=kO(t.path),s=r.split("/");if(this.strip){if(s.length=this.strip)t.linkpath=a.slice(this.strip).join("/");else return!1}s.splice(0,this.strip),t.path=s.join("/")}if(isFinite(this.maxDepth)&&s.length>this.maxDepth)return this.warn("TAR_ENTRY_ERROR","path excessively deep",{entry:t,path:r,depth:s.length,maxDepth:this.maxDepth}),!1;if(!this.preservePaths){if(s.includes("..")||LVe&&/^[a-z]:\.\.$/i.test(s[0]))return this.warn("TAR_ENTRY_ERROR","path contains '..'",{entry:t,path:r}),!1;let[a,o]=WUs(r);a&&(t.path=o,this.warn("TAR_ENTRY_INFO",`stripping ${a} from absolute path`,{entry:t,path:r}))}if(Tj.isAbsolute(t.path)?t.absolute=kO(Tj.resolve(t.path)):t.absolute=kO(Tj.resolve(this.cwd,t.path)),!this.preservePaths&&t.absolute.indexOf(this.cwd+"/")!==0&&t.absolute!==this.cwd)return this.warn("TAR_ENTRY_ERROR","path escaped extraction target",{entry:t,path:kO(t.path),resolvedPath:t.absolute,cwd:this.cwd}),!1;if(t.absolute===this.cwd&&t.type!=="Directory"&&t.type!=="GNUDumpDir")return!1;if(this.win32){let{root:a}=Tj.win32.parse(t.absolute);t.absolute=a+uIn.encode(t.absolute.slice(a.length));let{root:o}=Tj.win32.parse(t.path);t.path=o+uIn.encode(t.path.slice(o.length))}return!0}[gIn](t){if(!this[IIn](t))return t.resume();switch(FUs.equal(typeof t.absolute,"string"),t.type){case"Directory":case"GNUDumpDir":t.mode&&(t.mode=t.mode|448);case"File":case"OldFile":case"ContiguousFile":case"Link":case"SymbolicLink":return this[$Ut](t);case"CharacterDevice":case"BlockDevice":case"FIFO":default:return this[fIn](t)}}[yk](t,r){t.name==="CwdError"?this.emit("error",t):(this.warn("TAR_ENTRY_ERROR",t,{entry:r}),this[bEe](),r.resume())}[Mne](t,r,s){_In(kO(t),{uid:this.uid,gid:this.gid,processUid:this.processUid,processGid:this.processGid,umask:this.processUmask,preserve:this.preservePaths,unlink:this.unlink,cache:this.dirCache,cwd:this.cwd,mode:r,noChmod:this.noChmod},s)}[kVe](t){return this.forceChown||this.preserveOwner&&(typeof t.uid=="number"&&t.uid!==this.processUid||typeof t.gid=="number"&&t.gid!==this.processGid)||typeof this.uid=="number"&&this.uid!==this.processUid||typeof this.gid=="number"&&this.gid!==this.processGid}[GVe](t){return mIn(this.uid,t.uid,this.processUid)}[FVe](t){return mIn(this.gid,t.gid,this.processGid)}[tKt](t,r){let s=t.mode&4095||this.fmode,a=new LUs.WriteStream(t.absolute,{flags:bIn(t.size),mode:s,autoClose:!1});a.on("error",f=>{a.fd&&C_.close(a.fd,()=>{}),a.write=()=>!0,this[yk](f,t),r()});let o=1,g=f=>{if(f){a.fd&&C_.close(a.fd,()=>{}),this[yk](f,t),r();return}--o===0&&C_.close(a.fd,m=>{m?this[yk](m,t):this[bEe](),r()})};a.on("finish",f=>{let m=t.absolute,y=a.fd;if(t.mtime&&!this.noMtime){o++;let B=t.atime||new Date,v=t.mtime;C_.futimes(y,B,v,k=>k?C_.utimes(m,B,v,T=>g(T&&k)):g())}if(this[kVe](t)){o++;let B=this[GVe](t),v=this[FVe](t);C_.fchown(y,B,v,k=>k?C_.chown(m,B,v,T=>g(T&&k)):g())}g()});let p=this.transform&&this.transform(t)||t;p!==t&&(p.on("error",f=>{this[yk](f,t),r()}),t.pipe(p)),p.pipe(a)}[rKt](t,r){let s=t.mode&4095||this.dmode;this[Mne](t.absolute,s,a=>{if(a){this[yk](a,t),r();return}let o=1,g=p=>{--o===0&&(r(),this[bEe](),t.resume())};t.mtime&&!this.noMtime&&(o++,C_.utimes(t.absolute,t.atime||new Date,t.mtime,g)),this[kVe](t)&&(o++,C_.chown(t.absolute,this[GVe](t),this[FVe](t),g)),g()})}[fIn](t){t.unsupported=!0,this.warn("TAR_ENTRY_UNSUPPORTED",`unsupported entry type: ${t.type}`,{entry:t}),t.resume()}[dIn](t,r){this[dot](t,t.linkpath,"symlink",r)}[pIn](t,r){let s=kO(Tj.resolve(this.cwd,t.linkpath));this[dot](t,s,"link",r)}[CIn](){this[uot]++}[bEe](){this[uot]--,this[qUt]()}[nKt](t){this[bEe](),t.resume()}[eKt](t,r){return t.type==="File"&&!this.unlink&&r.isFile()&&r.nlink<=1&&!LVe}[$Ut](t){this[CIn]();let r=[t.path];t.linkpath&&r.push(t.linkpath),this.reservations.reserve(r,s=>this[AIn](t,s))}[Aot](t){t.type==="SymbolicLink"?JUs(this.dirCache):t.type!=="Directory"&&XUs(this.dirCache,t.absolute)}[AIn](t,r){this[Aot](t);let s=p=>{this[Aot](t),r(p)},a=()=>{this[Mne](this.cwd,this.dmode,p=>{if(p){this[yk](p,t),s();return}this[ZVe]=!0,o()})},o=()=>{if(t.absolute!==this.cwd){let p=kO(Tj.dirname(t.absolute));if(p!==this.cwd)return this[Mne](p,this.dmode,f=>{if(f){this[yk](f,t),s();return}g()})}g()},g=()=>{C_.lstat(t.absolute,(p,f)=>{if(f&&(this.keep||this.newer&&f.mtime>t.mtime)){this[nKt](t),s();return}if(p||this[eKt](t,f))return this[GO](null,t,s);if(f.isDirectory()){if(t.type==="Directory"){let m=!this.noChmod&&t.mode&&(f.mode&4095)!==t.mode,y=B=>this[GO](B,t,s);return m?C_.chmod(t.absolute,t.mode,y):y()}if(t.absolute!==this.cwd)return C_.rmdir(t.absolute,m=>this[GO](m,t,s))}if(t.absolute===this.cwd)return this[GO](null,t,s);HUs(t.absolute,m=>this[GO](m,t,s))})};this[ZVe]?o():a()}[GO](t,r,s){if(t){this[yk](t,r),s();return}switch(r.type){case"File":case"OldFile":case"ContiguousFile":return this[tKt](r,s);case"Link":return this[pIn](r,s);case"SymbolicLink":return this[dIn](r,s);case"Directory":case"GNUDumpDir":return this[rKt](r,s)}}[dot](t,r,s,a){C_[s](r,t.absolute,o=>{o?this[yk](o,t):(this[bEe](),t.resume()),a()})}},got=e=>{try{return[null,e()]}catch(t){return[t,null]}},iKt=class extends VVe{[GO](t,r){return super[GO](t,r,()=>{})}[$Ut](t){if(this[Aot](t),!this[ZVe]){let o=this[Mne](this.cwd,this.dmode);if(o)return this[yk](o,t);this[ZVe]=!0}if(t.absolute!==this.cwd){let o=kO(Tj.dirname(t.absolute));if(o!==this.cwd){let g=this[Mne](o,this.dmode);if(g)return this[yk](g,t)}}let[r,s]=got(()=>C_.lstatSync(t.absolute));if(s&&(this.keep||this.newer&&s.mtime>t.mtime))return this[nKt](t);if(r||this[eKt](t,s))return this[GO](null,t);if(s.isDirectory()){if(t.type==="Directory"){let g=!this.noChmod&&t.mode&&(s.mode&4095)!==t.mode,[p]=g?got(()=>{C_.chmodSync(t.absolute,t.mode)}):[];return this[GO](p,t)}let[o]=got(()=>C_.rmdirSync(t.absolute));this[GO](o,t)}let[a]=t.absolute===this.cwd?[]:got(()=>YUs(t.absolute));this[GO](a,t)}[tKt](t,r){let s=t.mode&4095||this.fmode,a=p=>{let f;try{C_.closeSync(o)}catch(m){f=m}(p||f)&&this[yk](p||f,t),r()},o;try{o=C_.openSync(t.absolute,bIn(t.size),s)}catch(p){return a(p)}let g=this.transform&&this.transform(t)||t;g!==t&&(g.on("error",p=>this[yk](p,t)),t.pipe(g)),g.on("data",p=>{try{C_.writeSync(o,p,0,p.length)}catch(f){a(f)}}),g.on("end",p=>{let f=null;if(t.mtime&&!this.noMtime){let m=t.atime||new Date,y=t.mtime;try{C_.futimesSync(o,m,y)}catch(B){try{C_.utimesSync(t.absolute,m,y)}catch{f=B}}}if(this[kVe](t)){let m=this[GVe](t),y=this[FVe](t);try{C_.fchownSync(o,m,y)}catch(B){try{C_.chownSync(t.absolute,m,y)}catch{f=f||B}}}a(f)})}[rKt](t,r){let s=t.mode&4095||this.dmode,a=this[Mne](t.absolute,s);if(a){this[yk](a,t),r();return}if(t.mtime&&!this.noMtime)try{C_.utimesSync(t.absolute,t.atime||new Date,t.mtime)}catch{}if(this[kVe](t))try{C_.chownSync(t.absolute,this[GVe](t),this[FVe](t))}catch{}r(),t.resume()}[Mne](t,r){try{return _In.sync(kO(t),{uid:this.uid,gid:this.gid,processUid:this.processUid,processGid:this.processGid,umask:this.processUmask,preserve:this.preservePaths,unlink:this.unlink,cache:this.dirCache,cwd:this.cwd,mode:r})}catch(s){return s}}[dot](t,r,s,a){try{C_[s+"Sync"](r,t.absolute),a(),t.resume()}catch(o){return this[yk](o,t)}}};VVe.Sync=iKt;EIn.exports=VVe});var TIn=z((PQc,wIn)=>{"use strict";var UUs=eEe(),pot=sKt(),vIn=xt("fs"),SIn=CEe(),BIn=xt("path"),oKt=cEe();wIn.exports=(e,t,r)=>{typeof e=="function"?(r=e,t=null,e={}):Array.isArray(e)&&(t=e,e={}),typeof t=="function"&&(r=t,t=null),t?t=Array.from(t):t=[];let s=UUs(e);if(s.sync&&typeof r=="function")throw new TypeError("callback not supported for sync tar functions");if(!s.file&&typeof r=="function")throw new TypeError("callback only supported with file option");return t.length&&KUs(s,t),s.file&&s.sync?jUs(s):s.file?zUs(s,r):s.sync?qUs(s):$Us(s)};var KUs=(e,t)=>{let r=new Map(t.map(o=>[oKt(o),!0])),s=e.filter,a=(o,g)=>{let p=g||BIn.parse(o).root||".",f=o===p?!1:r.has(o)?r.get(o):a(BIn.dirname(o),p);return r.set(o,f),f};e.filter=s?(o,g)=>s(o,g)&&a(oKt(o)):o=>a(oKt(o))},jUs=e=>{let t=new pot.Sync(e),r=e.file,s=vIn.statSync(r),a=e.maxReadSize||16*1024*1024;new SIn.ReadStreamSync(r,{readSize:a,size:s.size}).pipe(t)},zUs=(e,t)=>{let r=new pot(e),s=e.maxReadSize||16*1024*1024,a=e.file,o=new Promise((g,p)=>{r.on("error",p),r.on("close",g),vIn.stat(a,(f,m)=>{if(f)p(f);else{let y=new SIn.ReadStream(a,{readSize:s,size:m.size});y.on("error",p),y.pipe(r)}})});return t?o.then(t,t):o},qUs=e=>new pot.Sync(e),$Us=e=>new pot(e)});var NIn=z(kT=>{"use strict";kT.c=kT.create=ufn();kT.r=kT.replace=OUt();kT.t=kT.list=rot();kT.u=kT.update=hfn();kT.x=kT.extract=TIn();kT.Pack=Ost();kT.Unpack=sKt();kT.Parse=tot();kT.ReadEntry=Bst();kT.WriteEntry=fUt();kT.Header=aEe();kT.Pax=Sst();kT.types=zJt()});var DIn=z(EEe=>{"use strict";Object.defineProperty(EEe,"__esModule",{value:!0});EEe.WorkerPool=EEe.AsyncPool=void 0;var eKs=(Oa(),Ai(Pa)),RIn=eKs.__importDefault(iAe()),tKs=xt("worker_threads"),Hne=Symbol("kTaskInfo"),aKt=class{constructor(t,r){this.fn=t,this.limit=(0,RIn.default)(r.poolSize)}run(t){return this.limit(()=>this.fn(t))}};EEe.AsyncPool=aKt;var cKt=class{constructor(t,r){this.source=t,this.workers=[],this.limit=(0,RIn.default)(r.poolSize),this.cleanupInterval=setInterval(()=>{if(this.limit.pendingCount===0&&this.limit.activeCount===0){let s=this.workers.pop();s?s.terminate():clearInterval(this.cleanupInterval)}},5e3).unref()}createWorker(){this.cleanupInterval.refresh();let t=new tKs.Worker(this.source,{eval:!0,execArgv:[...process.execArgv,"--unhandled-rejections=strict"]});return t.on("message",r=>{if(!t[Hne])throw new Error("Assertion failed: Worker sent a result without having a task assigned");t[Hne].resolve(r),t[Hne]=null,t.unref(),this.workers.push(t)}),t.on("error",r=>{t[Hne]?.reject(r),t[Hne]=null}),t.on("exit",r=>{r!==0&&t[Hne]?.reject(new Error(`Worker exited with code ${r}`)),t[Hne]=null}),t}run(t){return this.limit(()=>{let r=this.workers.pop()??this.createWorker();return r.ref(),new Promise((s,a)=>{r[Hne]={resolve:s,reject:a},r.postMessage(t)})})}};EEe.WorkerPool=cKt});var kIn=z((MQc,xIn)=>{var lKt;xIn.exports.getContent=()=>(typeof lKt>"u"&&(lKt=xt("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),lKt)});var PIn=z(Yne=>{"use strict";Object.defineProperty(Yne,"__esModule",{value:!0});Yne.getDefaultTaskPool=LIn;Yne.getTaskPoolForConfiguration=VIn;Yne.convertToZipWorker=gKt;Yne.makeArchiveFromDirectory=aKs;Yne.convertToZip=cKs;Yne.extractArchiveTo=WIn;var GIn=(Oa(),Ai(Pa)),rKs=Bn(),ky=No(),fot=NJ(),nKs=xt("stream"),iKs=GIn.__importDefault(NIn()),Iot=DIn(),FIn=GIn.__importStar(IW()),ZIn=kIn();function sKs(e,t){switch(e){case"async":return new Iot.AsyncPool(gKt,{poolSize:t});case"workers":return new Iot.WorkerPool((0,ZIn.getContent)(),{poolSize:t});default:throw new Error(`Assertion failed: Unknown value ${e} for taskPoolMode`)}}var uKt;function LIn(){return typeof uKt>"u"&&(uKt=sKs("workers",rKs.nodeUtils.availableParallelism())),uKt}var oKs=new WeakMap;function VIn(e){return typeof e>"u"?LIn():FIn.getFactoryWithDefault(oKs,e,()=>{let t=e.get("taskPoolMode"),r=e.get("taskPoolConcurrency");switch(t){case"async":return new Iot.AsyncPool(gKt,{poolSize:r});case"workers":return new Iot.WorkerPool((0,ZIn.getContent)(),{poolSize:r});default:throw new Error(`Assertion failed: Unknown value ${t} for taskPoolMode`)}})}async function gKt(e){let{tmpFile:t,tgz:r,compressionLevel:s,extractBufferOpts:a}=e,o=new fot.ZipFS(t,{create:!0,level:s,stats:ky.statUtils.makeDefaultStats()}),g=Buffer.from(r.buffer,r.byteOffset,r.byteLength);return await WIn(g,o,a),o.saveAndClose(),t}async function aKs(e,{baseFs:t=new ky.NodeFS,prefixPath:r=ky.PortablePath.root,compressionLevel:s,inMemory:a=!1}={}){let o;if(a)o=new fot.ZipFS(null,{level:s});else{let p=await ky.xfs.mktempPromise(),f=ky.ppath.join(p,"archive.zip");o=new fot.ZipFS(f,{create:!0,level:s})}let g=ky.ppath.resolve(ky.PortablePath.root,r);return await o.copyPromise(g,e,{baseFs:t,stableTime:!0,stableSort:!0}),o}async function cKs(e,t={}){let r=await ky.xfs.mktempPromise(),s=ky.ppath.join(r,"archive.zip"),a=t.compressionLevel??t.configuration?.get("compressionLevel")??"mixed",o={prefixPath:t.prefixPath,stripComponents:t.stripComponents};return await(t.taskPool??VIn(t.configuration)).run({tmpFile:s,tgz:e,compressionLevel:a,extractBufferOpts:o}),new fot.ZipFS(s,{level:t.compressionLevel})}async function*lKs(e){let t=new iKs.default.Parse,r=new nKs.PassThrough({objectMode:!0,autoDestroy:!0,emitClose:!0});t.on("entry",s=>{r.write(s)}),t.on("error",s=>{r.destroy(s)}),t.on("close",()=>{r.destroyed||r.end()}),t.end(e);for await(let s of r){let a=s;yield a,a.resume()}}async function WIn(e,t,{stripComponents:r=0,prefixPath:s=ky.PortablePath.dot}={}){function a(o){if(o.path[0]==="/")return!0;let g=o.path.split(/\//g);return!!(g.some(p=>p==="..")||g.length<=r)}for await(let o of lKs(e)){if(a(o))continue;let g=ky.ppath.normalize(ky.npath.toPortablePath(o.path)).replace(/\/$/,"").split(/\//g);if(g.length<=r)continue;let p=g.slice(r).join("/"),f=ky.ppath.join(s,p),m=420;switch((o.type==="Directory"||(o.mode??0)&73)&&(m|=73),o.type){case"Directory":t.mkdirpSync(ky.ppath.dirname(f),{chmod:493,utimes:[ky.constants.SAFE_TIME,ky.constants.SAFE_TIME]}),t.mkdirSync(f,{mode:m}),t.utimesSync(f,ky.constants.SAFE_TIME,ky.constants.SAFE_TIME);break;case"OldFile":case"File":t.mkdirpSync(ky.ppath.dirname(f),{chmod:493,utimes:[ky.constants.SAFE_TIME,ky.constants.SAFE_TIME]}),t.writeFileSync(f,await FIn.bufferStream(o),{mode:m}),t.utimesSync(f,ky.constants.SAFE_TIME,ky.constants.SAFE_TIME);break;case"SymbolicLink":t.mkdirpSync(ky.ppath.dirname(f),{chmod:493,utimes:[ky.constants.SAFE_TIME,ky.constants.SAFE_TIME]}),t.symlinkSync(o.linkpath,f),t.lutimesSync(f,ky.constants.SAFE_TIME,ky.constants.SAFE_TIME);break}}return t}});var QIn=z((AKt,OIn)=>{(function(e,t){typeof AKt=="object"?OIn.exports=t():typeof define=="function"&&define.amd?define(t):e.treeify=t()})(AKt,function(){function e(a,o){var g=o?"\u2514":"\u251C";return a?g+="\u2500 ":g+="\u2500\u2500\u2510",g}function t(a,o){var g=[];for(var p in a)a.hasOwnProperty(p)&&(o&&typeof a[p]=="function"||g.push(p));return g}function r(a,o,g,p,f,m,y){var B="",v=0,k,T,O=p.slice(0);if(O.push([o,g])&&p.length>0&&(p.forEach(function(U,le){le>0&&(B+=(U[1]?" ":"\u2502")+" "),!T&&U[0]===o&&(T=!0)}),B+=e(a,g)+a,f&&(typeof o!="object"||o instanceof Date)&&(B+=": "+o),T&&(B+=" (circular ref.)"),y(B)),!T&&typeof o=="object"){var X=t(o,m);X.forEach(function(U){k=++v===X.length,r(U,o[U],k,O,f,m,y)})}}var s={};return s.asLines=function(a,o,g,p){var f=typeof g!="function"?g:!1;r(".",a,!1,[],o,f,p||g)},s.asTree=function(a,o,g){var p="";return r(".",a,!1,[],o,g,function(f){p+=f+` +`}),p},s})});var XIn=z(BEe=>{"use strict";Object.defineProperty(BEe,"__esModule",{value:!0});BEe.treeNodeToTreeify=MIn;BEe.treeNodeToJson=HIn;BEe.emitList=AKs;BEe.emitTree=YIn;var uKs=(Oa(),Ai(Pa)),gKs=QIn(),MAe=uKs.__importStar(CO());function MIn(e,{configuration:t}){let r={},s=0,a=(o,g)=>{let p=Array.isArray(o)?o.entries():Object.entries(o);for(let[f,m]of p){if(!m)continue;let{label:y,value:B,children:v}=m,k=[];typeof y<"u"&&k.push(MAe.applyStyle(t,y,MAe.Style.BOLD)),typeof B<"u"&&k.push(MAe.pretty(t,B[0],B[1])),k.length===0&&k.push(MAe.applyStyle(t,`${f}`,MAe.Style.BOLD));let T=k.join(": ").trim(),O=`\0${s++}\0`,X=g[`${O}${T}`]={};typeof v<"u"&&a(v,X)}};if(typeof e.children>"u")throw new Error("The root node must only contain children");return a(e.children,r),r}function HIn(e){let t=r=>{if(typeof r.children>"u"){if(typeof r.value>"u")throw new Error("Assertion failed: Expected a value to be set if the children are missing");return MAe.json(r.value[0],r.value[1])}let s=Array.isArray(r.children)?r.children.entries():Object.entries(r.children??{}),a=Array.isArray(r.children)?[]:{};for(let[o,g]of s)g&&(a[dKs(o)]=t(g));return typeof r.value>"u"?a:{value:MAe.json(r.value[0],r.value[1]),children:a}};return t(e)}function AKs(e,{configuration:t,stdout:r,json:s}){let a=e.map(o=>({value:o}));YIn({children:a},{configuration:t,stdout:r,json:s})}function YIn(e,{configuration:t,stdout:r,json:s,separators:a=0}){if(s){let g=Array.isArray(e.children)?e.children.values():Object.values(e.children??{});for(let p of g)p&&r.write(`${JSON.stringify(HIn(p))} +`);return}let o=(0,gKs.asTree)(MIn(e,{configuration:t}),!1,!1);if(o=o.replace(/\0[0-9]+\0/g,""),a>=1&&(o=o.replace(/^([├└]─)/gm,`\u2502 $1`).replace(/^│\n/,"")),a>=2)for(let g=0;g<2;++g)o=o.replace(/^([│ ].{2}[├│ ].{2}[^\n]+\n)(([│ ]).{2}[├└].{2}[^\n]*\n[│ ].{2}[│ ].{2}[├└]─)/gm,`$1$3 \u2502 -$2`).replace(/^│\n/,"");if(a>=3)throw new Error("Only the first two levels are accepted by treeUtils.emitTree");r.write(o)}function oKs(e){return typeof e=="string"?e.replace(/^\0[0-9]+\0/,""):e}});var AKt=z(vH=>{"use strict";Object.defineProperty(vH,"__esModule",{value:!0});vH.Cache=vH.CACHE_VERSION=vH.CACHE_CHECKPOINT=void 0;var fot=(Ma(),Ai(Oa)),OIn=Bn(),LVe=Ro(),tS=Ro(),MIn=SJ(),aKs=Dt("crypto"),QIn=fot.__importDefault(Dt("fs")),VVe=TL(),WVe=CO(),YIn=fot.__importStar(pne()),gKt=fot.__importStar(fW()),Ej=fot.__importStar(ak());vH.CACHE_CHECKPOINT=gKt.parseInt(process.env.YARN_CACHE_CHECKPOINT_OVERRIDE??process.env.YARN_CACHE_VERSION_OVERRIDE??9);vH.CACHE_VERSION=gKt.parseInt(process.env.YARN_CACHE_VERSION_OVERRIDE??10);var uKt=class e{static async find(t,{immutable:r,check:s}={}){let a=new e(t.get("cacheFolder"),{configuration:t,immutable:r,check:s});return await a.setup(),a}static getCacheKey(t){let r=t.get("compressionLevel"),s=r!=="mixed"?`c${r}`:"";return{cacheKey:[vH.CACHE_VERSION,s].join(""),cacheSpec:s}}constructor(t,{configuration:r,immutable:s=r.get("enableImmutableCache"),check:a=!1}){this.markedFiles=new Set,this.mutexes=new Map,this.cacheId=`-${(0,aKs.randomBytes)(8).toString("hex")}.tmp`,this.configuration=r,this.cwd=t,this.immutable=s,this.check=a;let{cacheSpec:o,cacheKey:g}=e.getCacheKey(r);this.cacheSpec=o,this.cacheKey=g}get mirrorCwd(){if(!this.configuration.get("enableMirror"))return null;let t=`${this.configuration.get("globalFolder")}/cache`;return t!==this.cwd?t:null}getVersionFilename(t){return`${Ej.slugifyLocator(t)}-${this.cacheKey}.zip`}getChecksumFilename(t,r){let a=PVe(r).hash.slice(0,10);return`${Ej.slugifyLocator(t)}-${a}.zip`}isChecksumCompatible(t){if(t===null)return!1;let{cacheVersion:r,cacheSpec:s}=PVe(t);if(r===null||r=3)throw new Error("Only the first two levels are accepted by treeUtils.emitTree");r.write(o)}function dKs(e){return typeof e=="string"?e.replace(/^\0[0-9]+\0/,""):e}});var fKt=z(wH=>{"use strict";Object.defineProperty(wH,"__esModule",{value:!0});wH.Cache=wH.CACHE_VERSION=wH.CACHE_CHECKPOINT=void 0;var Cot=(Oa(),Ai(Pa)),JIn=Bn(),WVe=No(),rS=No(),UIn=NJ(),pKs=xt("crypto"),KIn=Cot.__importDefault(xt("fs")),PVe=NL(),OVe=_O(),jIn=Cot.__importStar(Ine()),pKt=Cot.__importStar(IW()),Nj=Cot.__importStar(dk());wH.CACHE_CHECKPOINT=pKt.parseInt(process.env.YARN_CACHE_CHECKPOINT_OVERRIDE??process.env.YARN_CACHE_VERSION_OVERRIDE??9);wH.CACHE_VERSION=pKt.parseInt(process.env.YARN_CACHE_VERSION_OVERRIDE??10);var dKt=class e{static async find(t,{immutable:r,check:s}={}){let a=new e(t.get("cacheFolder"),{configuration:t,immutable:r,check:s});return await a.setup(),a}static getCacheKey(t){let r=t.get("compressionLevel"),s=r!=="mixed"?`c${r}`:"";return{cacheKey:[wH.CACHE_VERSION,s].join(""),cacheSpec:s}}constructor(t,{configuration:r,immutable:s=r.get("enableImmutableCache"),check:a=!1}){this.markedFiles=new Set,this.mutexes=new Map,this.cacheId=`-${(0,pKs.randomBytes)(8).toString("hex")}.tmp`,this.configuration=r,this.cwd=t,this.immutable=s,this.check=a;let{cacheSpec:o,cacheKey:g}=e.getCacheKey(r);this.cacheSpec=o,this.cacheKey=g}get mirrorCwd(){if(!this.configuration.get("enableMirror"))return null;let t=`${this.configuration.get("globalFolder")}/cache`;return t!==this.cwd?t:null}getVersionFilename(t){return`${Nj.slugifyLocator(t)}-${this.cacheKey}.zip`}getChecksumFilename(t,r){let a=QVe(r).hash.slice(0,10);return`${Nj.slugifyLocator(t)}-${a}.zip`}isChecksumCompatible(t){if(t===null)return!1;let{cacheVersion:r,cacheSpec:s}=QVe(t);if(r===null||r{let be=new MIn.ZipFS,Te=tS.ppath.join(LVe.PortablePath.root,Ej.getIdentVendorPath(t));return be.mkdirSync(Te,{recursive:!0}),be.writeJsonSync(tS.ppath.join(Te,LVe.Filename.manifest),{name:Ej.stringifyIdent(t),mocked:!0}),be},y=async(be,{isColdHit:Te,controlPath:ke=null})=>{if(ke===null&&g.unstablePackages?.has(t.locatorHash))return{isValid:!0,hash:null};let x=r&&!Te?PVe(r).cacheKey:this.cacheKey,et=!g.skipIntegrityCheck||!r?`${x}/${await YIn.checksumFile(be)}`:r;if(ke!==null){let Je=!g.skipIntegrityCheck||!r?`${this.cacheKey}/${await YIn.checksumFile(ke)}`:r;if(et!==Je)throw new WVe.ReportError(VVe.MessageName.CACHE_CHECKSUM_MISMATCH,"The remote archive doesn't match the local checksum - has the local cache been corrupted?")}let Ue=null;switch(r!==null&&et!==r&&(this.check?Ue="throw":PVe(r).cacheKey!==PVe(et).cacheKey?Ue="update":Ue=this.configuration.get("checksumBehavior")),Ue){case null:case"update":return{isValid:!0,hash:et};case"ignore":return{isValid:!0,hash:r};case"reset":return{isValid:!1,hash:r};default:case"throw":throw new WVe.ReportError(VVe.MessageName.CACHE_CHECKSUM_MISMATCH,"The remote archive doesn't match the expected checksum")}},B=async be=>{if(!o)throw new Error(`Cache check required but no loader configured for ${Ej.prettyLocator(this.configuration,t)}`);let Te=await o(),ke=Te.getRealPath();Te.saveAndClose(),await tS.xfs.chmodPromise(ke,420);let x=await y(be,{controlPath:ke,isColdHit:!1});if(!x.isValid)throw new Error("Assertion failed: Expected a valid checksum");return x.hash},v=async()=>{if(p===null||!await tS.xfs.existsPromise(p)){let be=await o(),Te=be.getRealPath();return be.saveAndClose(),{source:"loader",path:Te}}return{source:"mirror",path:p}},G=async()=>{if(!o)throw new Error(`Cache entry required but missing for ${Ej.prettyLocator(this.configuration,t)}`);if(this.immutable)throw new WVe.ReportError(VVe.MessageName.IMMUTABLE_CACHE,`Cache entry required but missing for ${Ej.prettyLocator(this.configuration,t)}`);let{path:be,source:Te}=await v(),{hash:ke}=await y(be,{isColdHit:!0}),x=this.getLocatorPath(t,ke),et=[];Te!=="mirror"&&p!==null&&et.push(async()=>{let Je=`${p}${this.cacheId}`;await tS.xfs.copyFilePromise(be,Je,QIn.default.constants.COPYFILE_FICLONE),await tS.xfs.chmodPromise(Je,420),await tS.xfs.renamePromise(Je,p)}),(!g.mirrorWriteOnly||p===null)&&et.push(async()=>{let Je=`${x}${this.cacheId}`;await tS.xfs.copyFilePromise(be,Je,QIn.default.constants.COPYFILE_FICLONE),await tS.xfs.chmodPromise(Je,420),await tS.xfs.renamePromise(Je,x)});let Ue=g.mirrorWriteOnly?p??x:x;return await Promise.all(et.map(Je=>Je())),[!1,Ue,ke]},T=async()=>{let Te=(async()=>{let ke=g.unstablePackages?.has(t.locatorHash),x=ke||!r||this.isChecksumCompatible(r)?this.getLocatorPath(t,r):null,et=x!==null?this.markedFiles.has(x)||await f.existsPromise(x):!1,Ue=!!g.mockedPackages?.has(t.locatorHash)&&(!this.check||!et),Je=Ue||et,Xe=Je?s:a;if(Xe&&Xe(),Je){let ft=null,Gt=x;if(!Ue)if(this.check)ft=await B(Gt);else{let er=await y(Gt,{isColdHit:!1});if(er.isValid)ft=er.hash;else return G()}return[Ue,Gt,ft]}else{if(this.immutable&&ke)throw new WVe.ReportError(VVe.MessageName.IMMUTABLE_CACHE,`Cache entry required but missing for ${Ej.prettyLocator(this.configuration,t)}; consider defining ${OIn.formatUtils.pretty(this.configuration,"supportedArchitectures",OIn.formatUtils.Type.CODE)} to cache packages for multiple systems`);return G()}})();this.mutexes.set(t.locatorHash,Te);try{return await Te}finally{this.mutexes.delete(t.locatorHash)}};for(let be;be=this.mutexes.get(t.locatorHash);)await be;let[O,X,U]=await T();O||this.markedFiles.add(X);let le,ae=O?()=>m():()=>new MIn.ZipFS(X,{baseFs:f,readOnly:!0}),ge=new LVe.LazyFS(()=>gKt.prettifySyncErrors(()=>le=ae(),be=>`Failed to open the cache entry for ${Ej.prettyLocator(this.configuration,t)}: ${be}`),tS.ppath),fe=new LVe.AliasFS(X,{baseFs:ge,pathUtils:tS.ppath}),pe=()=>{le?.discardAndClose()},he=g.unstablePackages?.has(t.locatorHash)?null:U;return[fe,pe,he]}};vH.Cache=uKt;var cKs=/^(?:(?(?[0-9]+)(?.*))\/)?(?.*)$/;function PVe(e){let t=e.match(cKs);if(!t?.groups)throw new Error("Assertion failed: Expected the checksum to match the requested pattern");let r=t.groups.cacheVersion?parseInt(t.groups.cacheVersion):null;return{cacheKey:t.groups.cacheKey??null,cacheVersion:r,cacheSpec:t.groups.cacheSpec??null,hash:t.groups.hash}}});var dKt=z(Iot=>{"use strict";Object.defineProperty(Iot,"__esModule",{value:!0});Iot.BuildDirectiveType=void 0;var HIn;(function(e){e[e.SCRIPT=0]="SCRIPT",e[e.SHELLCODE=1]="SHELLCODE"})(HIn||(Iot.BuildDirectiveType=HIn={}))});var fKt=z(FAe=>{"use strict";Object.defineProperty(FAe,"__esModule",{value:!0});FAe.LegacyMigrationResolver=FAe.IMPORTED_PATTERNS=void 0;var JIn=(Ma(),Ai(Oa)),Cot=Ro(),lKs=aO(),XIn=TL(),uKs=JIn.__importStar(rj()),Yne=JIn.__importStar(ak());FAe.IMPORTED_PATTERNS=[[/^(git(?:\+(?:https|ssh))?:\/\/.*(?:\.git)?)#(.*)$/,(e,t,r,s)=>`${r}#commit=${s}`],[/^https:\/\/((?:[^/]+?)@)?codeload\.github\.com\/([^/]+\/[^/]+)\/tar\.gz\/([0-9a-f]+)$/,(e,t,r="",s,a)=>`https://${r}github.com/${s}.git#commit=${a}`],[/^https:\/\/((?:[^/]+?)@)?github\.com\/([^/]+\/[^/]+?)(?:\.git)?#([0-9a-f]+)$/,(e,t,r="",s,a)=>`https://${r}github.com/${s}.git#commit=${a}`],[/^https?:\/\/[^/]+\/(?:[^/]+\/)*(?:@.+(?:\/|(?:%2f)))?([^/]+)\/(?:-|download)\/\1-[^/]+\.tgz(?:#|$)/,e=>`npm:${e}`],[/^https:\/\/npm\.pkg\.github\.com\/download\/(?:@[^/]+)\/(?:[^/]+)\/(?:[^/]+)\/(?:[0-9a-f]+)(?:#|$)/,e=>`npm:${e}`],[/^https:\/\/npm\.fontawesome\.com\/(?:@[^/]+)\/([^/]+)\/-\/([^/]+)\/\1-\2.tgz(?:#|$)/,e=>`npm:${e}`],[/^https?:\/\/[^/]+\/.*\/(@[^/]+)\/([^/]+)\/-\/\1\/\2-(?:[.\d\w-]+)\.tgz(?:#|$)/,(e,t)=>Yne.makeRange({protocol:"npm:",source:null,selector:e,params:{__archiveUrl:t}})],[/^[^/]+\.tgz#[0-9a-f]+$/,e=>`npm:${e}`]];var pKt=class{constructor(t){this.resolver=t,this.resolutions=null}async setup(t,{report:r}){let s=Cot.ppath.join(t.cwd,Cot.Filename.lockfile);if(!Cot.xfs.existsSync(s))return;let a=await Cot.xfs.readFilePromise(s,"utf8"),o=(0,lKs.parseSyml)(a);if(Object.hasOwn(o,"__metadata"))return;let g=this.resolutions=new Map;for(let p of Object.keys(o)){let f=Yne.tryParseDescriptor(p);if(!f){r.reportWarning(XIn.MessageName.YARN_IMPORT_FAILED,`Failed to parse the string "${p}" into a proper descriptor`);continue}let m=uKs.validRange(f.range)?Yne.makeDescriptor(f,`npm:${f.range}`):f,{version:y,resolved:B}=o[p];if(!B)continue;let v;for(let[T,O]of FAe.IMPORTED_PATTERNS){let X=B.match(T);if(X){v=O(y,...X);break}}if(!v){r.reportWarning(XIn.MessageName.YARN_IMPORT_FAILED,`${Yne.prettyDescriptor(t.configuration,m)}: Only some patterns can be imported from legacy lockfiles (not "${B}")`);continue}let G=m;try{let T=Yne.parseRange(m.range),O=Yne.tryParseDescriptor(T.selector,!0);O&&(G=O)}catch{}g.set(m.descriptorHash,Yne.makeLocator(G,v))}}supportsDescriptor(t,r){return this.resolutions?this.resolutions.has(t.descriptorHash):!1}supportsLocator(t,r){return!1}shouldPersistResolution(t,r){throw new Error("Assertion failed: This resolver doesn't support resolving locators to packages")}bindDescriptor(t,r,s){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,s){if(!this.resolutions)throw new Error("Assertion failed: The resolution store should have been setup");let a=this.resolutions.get(t.descriptorHash);if(!a)throw new Error("Assertion failed: The resolution should have been registered");let o=Yne.convertLocatorToDescriptor(a),g=s.project.configuration.normalizeDependency(o);return await this.resolver.getCandidates(g,r,s)}async getSatisfying(t,r,s,a){let[o]=await this.getCandidates(t,r,a);return{locators:s.filter(g=>g.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){throw new Error("Assertion failed: This resolver doesn't support resolving locators to packages")}};FAe.LegacyMigrationResolver=pKt});var UIn=z(hot=>{"use strict";Object.defineProperty(hot,"__esModule",{value:!0});hot.LightReport=void 0;var gKs=(Ma(),Ai(Oa)),AKs=CO(),dKs=fVe(),mot=gKs.__importStar(pO()),IKt=class extends AKs.Report{static async start(t,r){let s=new this(t);try{await r(s)}catch(a){s.reportExceptionOnce(a)}finally{await s.finalize()}return s}constructor({configuration:t,stdout:r,suggestInstall:s=!0}){super(),this.errorCount=0,mot.addLogFilterSupport(this,{configuration:t}),this.configuration=t,this.stdout=r,this.suggestInstall=s}hasErrors(){return this.errorCount>0}exitCode(){return this.hasErrors()?1:0}reportCacheHit(t){}reportCacheMiss(t){}startSectionSync(t,r){return r()}async startSectionPromise(t,r){return await r()}startTimerSync(t,r,s){return(typeof r=="function"?r:s)()}async startTimerPromise(t,r,s){return await(typeof r=="function"?r:s)()}reportSeparator(){}reportInfo(t,r){}reportWarning(t,r){}reportError(t,r){this.errorCount+=1,this.stdout.write(`${mot.pretty(this.configuration,"\u27A4","redBright")} ${this.formatNameWithHyperlink(t)}: ${r} +`)}(this.mirrorCwd||!this.immutable)&&await rS.xfs.mkdirPromise(this.mirrorCwd||this.cwd,{recursive:!0})}async fetchPackageFromCache(t,r,{onHit:s,onMiss:a,loader:o,...g}){let p=this.getLocatorMirrorPath(t),f=new WVe.NodeFS,m=()=>{let be=new UIn.ZipFS,Te=rS.ppath.join(WVe.PortablePath.root,Nj.getIdentVendorPath(t));return be.mkdirSync(Te,{recursive:!0}),be.writeJsonSync(rS.ppath.join(Te,WVe.Filename.manifest),{name:Nj.stringifyIdent(t),mocked:!0}),be},y=async(be,{isColdHit:Te,controlPath:ke=null})=>{if(ke===null&&g.unstablePackages?.has(t.locatorHash))return{isValid:!0,hash:null};let x=r&&!Te?QVe(r).cacheKey:this.cacheKey,et=!g.skipIntegrityCheck||!r?`${x}/${await jIn.checksumFile(be)}`:r;if(ke!==null){let Je=!g.skipIntegrityCheck||!r?`${this.cacheKey}/${await jIn.checksumFile(ke)}`:r;if(et!==Je)throw new OVe.ReportError(PVe.MessageName.CACHE_CHECKSUM_MISMATCH,"The remote archive doesn't match the local checksum - has the local cache been corrupted?")}let Ue=null;switch(r!==null&&et!==r&&(this.check?Ue="throw":QVe(r).cacheKey!==QVe(et).cacheKey?Ue="update":Ue=this.configuration.get("checksumBehavior")),Ue){case null:case"update":return{isValid:!0,hash:et};case"ignore":return{isValid:!0,hash:r};case"reset":return{isValid:!1,hash:r};default:case"throw":throw new OVe.ReportError(PVe.MessageName.CACHE_CHECKSUM_MISMATCH,"The remote archive doesn't match the expected checksum")}},B=async be=>{if(!o)throw new Error(`Cache check required but no loader configured for ${Nj.prettyLocator(this.configuration,t)}`);let Te=await o(),ke=Te.getRealPath();Te.saveAndClose(),await rS.xfs.chmodPromise(ke,420);let x=await y(be,{controlPath:ke,isColdHit:!1});if(!x.isValid)throw new Error("Assertion failed: Expected a valid checksum");return x.hash},v=async()=>{if(p===null||!await rS.xfs.existsPromise(p)){let be=await o(),Te=be.getRealPath();return be.saveAndClose(),{source:"loader",path:Te}}return{source:"mirror",path:p}},k=async()=>{if(!o)throw new Error(`Cache entry required but missing for ${Nj.prettyLocator(this.configuration,t)}`);if(this.immutable)throw new OVe.ReportError(PVe.MessageName.IMMUTABLE_CACHE,`Cache entry required but missing for ${Nj.prettyLocator(this.configuration,t)}`);let{path:be,source:Te}=await v(),{hash:ke}=await y(be,{isColdHit:!0}),x=this.getLocatorPath(t,ke),et=[];Te!=="mirror"&&p!==null&&et.push(async()=>{let Je=`${p}${this.cacheId}`;await rS.xfs.copyFilePromise(be,Je,KIn.default.constants.COPYFILE_FICLONE),await rS.xfs.chmodPromise(Je,420),await rS.xfs.renamePromise(Je,p)}),(!g.mirrorWriteOnly||p===null)&&et.push(async()=>{let Je=`${x}${this.cacheId}`;await rS.xfs.copyFilePromise(be,Je,KIn.default.constants.COPYFILE_FICLONE),await rS.xfs.chmodPromise(Je,420),await rS.xfs.renamePromise(Je,x)});let Ue=g.mirrorWriteOnly?p??x:x;return await Promise.all(et.map(Je=>Je())),[!1,Ue,ke]},T=async()=>{let Te=(async()=>{let ke=g.unstablePackages?.has(t.locatorHash),x=ke||!r||this.isChecksumCompatible(r)?this.getLocatorPath(t,r):null,et=x!==null?this.markedFiles.has(x)||await f.existsPromise(x):!1,Ue=!!g.mockedPackages?.has(t.locatorHash)&&(!this.check||!et),Je=Ue||et,Xe=Je?s:a;if(Xe&&Xe(),Je){let ft=null,Gt=x;if(!Ue)if(this.check)ft=await B(Gt);else{let er=await y(Gt,{isColdHit:!1});if(er.isValid)ft=er.hash;else return k()}return[Ue,Gt,ft]}else{if(this.immutable&&ke)throw new OVe.ReportError(PVe.MessageName.IMMUTABLE_CACHE,`Cache entry required but missing for ${Nj.prettyLocator(this.configuration,t)}; consider defining ${JIn.formatUtils.pretty(this.configuration,"supportedArchitectures",JIn.formatUtils.Type.CODE)} to cache packages for multiple systems`);return k()}})();this.mutexes.set(t.locatorHash,Te);try{return await Te}finally{this.mutexes.delete(t.locatorHash)}};for(let be;be=this.mutexes.get(t.locatorHash);)await be;let[O,X,U]=await T();O||this.markedFiles.add(X);let le,ae=O?()=>m():()=>new UIn.ZipFS(X,{baseFs:f,readOnly:!0}),ge=new WVe.LazyFS(()=>pKt.prettifySyncErrors(()=>le=ae(),be=>`Failed to open the cache entry for ${Nj.prettyLocator(this.configuration,t)}: ${be}`),rS.ppath),fe=new WVe.AliasFS(X,{baseFs:ge,pathUtils:rS.ppath}),pe=()=>{le?.discardAndClose()},he=g.unstablePackages?.has(t.locatorHash)?null:U;return[fe,pe,he]}};wH.Cache=dKt;var fKs=/^(?:(?(?[0-9]+)(?.*))\/)?(?.*)$/;function QVe(e){let t=e.match(fKs);if(!t?.groups)throw new Error("Assertion failed: Expected the checksum to match the requested pattern");let r=t.groups.cacheVersion?parseInt(t.groups.cacheVersion):null;return{cacheKey:t.groups.cacheKey??null,cacheVersion:r,cacheSpec:t.groups.cacheSpec??null,hash:t.groups.hash}}});var IKt=z(mot=>{"use strict";Object.defineProperty(mot,"__esModule",{value:!0});mot.BuildDirectiveType=void 0;var zIn;(function(e){e[e.SCRIPT=0]="SCRIPT",e[e.SHELLCODE=1]="SHELLCODE"})(zIn||(mot.BuildDirectiveType=zIn={}))});var mKt=z(HAe=>{"use strict";Object.defineProperty(HAe,"__esModule",{value:!0});HAe.LegacyMigrationResolver=HAe.IMPORTED_PATTERNS=void 0;var $In=(Oa(),Ai(Pa)),hot=No(),IKs=uO(),qIn=NL(),CKs=$In.__importStar(cj()),Xne=$In.__importStar(dk());HAe.IMPORTED_PATTERNS=[[/^(git(?:\+(?:https|ssh))?:\/\/.*(?:\.git)?)#(.*)$/,(e,t,r,s)=>`${r}#commit=${s}`],[/^https:\/\/((?:[^/]+?)@)?codeload\.github\.com\/([^/]+\/[^/]+)\/tar\.gz\/([0-9a-f]+)$/,(e,t,r="",s,a)=>`https://${r}github.com/${s}.git#commit=${a}`],[/^https:\/\/((?:[^/]+?)@)?github\.com\/([^/]+\/[^/]+?)(?:\.git)?#([0-9a-f]+)$/,(e,t,r="",s,a)=>`https://${r}github.com/${s}.git#commit=${a}`],[/^https?:\/\/[^/]+\/(?:[^/]+\/)*(?:@.+(?:\/|(?:%2f)))?([^/]+)\/(?:-|download)\/\1-[^/]+\.tgz(?:#|$)/,e=>`npm:${e}`],[/^https:\/\/npm\.pkg\.github\.com\/download\/(?:@[^/]+)\/(?:[^/]+)\/(?:[^/]+)\/(?:[0-9a-f]+)(?:#|$)/,e=>`npm:${e}`],[/^https:\/\/npm\.fontawesome\.com\/(?:@[^/]+)\/([^/]+)\/-\/([^/]+)\/\1-\2.tgz(?:#|$)/,e=>`npm:${e}`],[/^https?:\/\/[^/]+\/.*\/(@[^/]+)\/([^/]+)\/-\/\1\/\2-(?:[.\d\w-]+)\.tgz(?:#|$)/,(e,t)=>Xne.makeRange({protocol:"npm:",source:null,selector:e,params:{__archiveUrl:t}})],[/^[^/]+\.tgz#[0-9a-f]+$/,e=>`npm:${e}`]];var CKt=class{constructor(t){this.resolver=t,this.resolutions=null}async setup(t,{report:r}){let s=hot.ppath.join(t.cwd,hot.Filename.lockfile);if(!hot.xfs.existsSync(s))return;let a=await hot.xfs.readFilePromise(s,"utf8"),o=(0,IKs.parseSyml)(a);if(Object.hasOwn(o,"__metadata"))return;let g=this.resolutions=new Map;for(let p of Object.keys(o)){let f=Xne.tryParseDescriptor(p);if(!f){r.reportWarning(qIn.MessageName.YARN_IMPORT_FAILED,`Failed to parse the string "${p}" into a proper descriptor`);continue}let m=CKs.validRange(f.range)?Xne.makeDescriptor(f,`npm:${f.range}`):f,{version:y,resolved:B}=o[p];if(!B)continue;let v;for(let[T,O]of HAe.IMPORTED_PATTERNS){let X=B.match(T);if(X){v=O(y,...X);break}}if(!v){r.reportWarning(qIn.MessageName.YARN_IMPORT_FAILED,`${Xne.prettyDescriptor(t.configuration,m)}: Only some patterns can be imported from legacy lockfiles (not "${B}")`);continue}let k=m;try{let T=Xne.parseRange(m.range),O=Xne.tryParseDescriptor(T.selector,!0);O&&(k=O)}catch{}g.set(m.descriptorHash,Xne.makeLocator(k,v))}}supportsDescriptor(t,r){return this.resolutions?this.resolutions.has(t.descriptorHash):!1}supportsLocator(t,r){return!1}shouldPersistResolution(t,r){throw new Error("Assertion failed: This resolver doesn't support resolving locators to packages")}bindDescriptor(t,r,s){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,s){if(!this.resolutions)throw new Error("Assertion failed: The resolution store should have been setup");let a=this.resolutions.get(t.descriptorHash);if(!a)throw new Error("Assertion failed: The resolution should have been registered");let o=Xne.convertLocatorToDescriptor(a),g=s.project.configuration.normalizeDependency(o);return await this.resolver.getCandidates(g,r,s)}async getSatisfying(t,r,s,a){let[o]=await this.getCandidates(t,r,a);return{locators:s.filter(g=>g.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){throw new Error("Assertion failed: This resolver doesn't support resolving locators to packages")}};HAe.LegacyMigrationResolver=CKt});var eCn=z(yot=>{"use strict";Object.defineProperty(yot,"__esModule",{value:!0});yot.LightReport=void 0;var mKs=(Oa(),Ai(Pa)),hKs=_O(),_Ks=CVe(),_ot=mKs.__importStar(CO()),hKt=class extends hKs.Report{static async start(t,r){let s=new this(t);try{await r(s)}catch(a){s.reportExceptionOnce(a)}finally{await s.finalize()}return s}constructor({configuration:t,stdout:r,suggestInstall:s=!0}){super(),this.errorCount=0,_ot.addLogFilterSupport(this,{configuration:t}),this.configuration=t,this.stdout=r,this.suggestInstall=s}hasErrors(){return this.errorCount>0}exitCode(){return this.hasErrors()?1:0}reportCacheHit(t){}reportCacheMiss(t){}startSectionSync(t,r){return r()}async startSectionPromise(t,r){return await r()}startTimerSync(t,r,s){return(typeof r=="function"?r:s)()}async startTimerPromise(t,r,s){return await(typeof r=="function"?r:s)()}reportSeparator(){}reportInfo(t,r){}reportWarning(t,r){}reportError(t,r){this.errorCount+=1,this.stdout.write(`${_ot.pretty(this.configuration,"\u27A4","redBright")} ${this.formatNameWithHyperlink(t)}: ${r} `)}reportProgress(t){return{...Promise.resolve().then(async()=>{for await(let{}of t);}),stop:()=>{}}}reportJson(t){}reportFold(t,r){}async finalize(){this.errorCount>0&&(this.stdout.write(` -`),this.stdout.write(`${mot.pretty(this.configuration,"\u27A4","redBright")} Errors happened when preparing the environment required to run this command. -`),this.suggestInstall&&this.stdout.write(`${mot.pretty(this.configuration,"\u27A4","redBright")} This might be caused by packages being missing from the lockfile, in which case running "yarn install" might help. -`))}formatNameWithHyperlink(t){return(0,dKs.formatNameWithHyperlink)(t,{configuration:this.configuration,json:!1})}};hot.LightReport=IKt});var mKt=z(_ot=>{"use strict";Object.defineProperty(_ot,"__esModule",{value:!0});_ot.LockfileResolver=void 0;var pKs=(Ma(),Ai(Oa)),KIn=pKs.__importStar(ak()),CKt=class{constructor(t){this.resolver=t}supportsDescriptor(t,r){return!!(r.project.storedResolutions.get(t.descriptorHash)||r.project.originalPackages.has(KIn.convertDescriptorToLocator(t).locatorHash))}supportsLocator(t,r){return!!(r.project.originalPackages.has(t.locatorHash)&&!r.project.lockfileNeedsRefresh)}shouldPersistResolution(t,r){throw new Error("The shouldPersistResolution method shouldn't be called on the lockfile resolver, which would always answer yes")}bindDescriptor(t,r,s){return t}getResolutionDependencies(t,r){return this.resolver.getResolutionDependencies(t,r)}async getCandidates(t,r,s){let a=s.project.storedResolutions.get(t.descriptorHash);if(a){let g=s.project.originalPackages.get(a);if(g)return[g]}let o=s.project.originalPackages.get(KIn.convertDescriptorToLocator(t).locatorHash);if(o)return[o];throw new Error("Resolution expected from the lockfile data")}async getSatisfying(t,r,s,a){let[o]=await this.getCandidates(t,r,a);return{locators:s.filter(g=>g.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){let s=r.project.originalPackages.get(t.locatorHash);if(!s)throw new Error("The lockfile resolver isn't meant to resolve packages - they should already have been stored into a cache");return s}};_ot.LockfileResolver=CKt});var Bj=z(hKt=>{"use strict";Object.defineProperty(hKt,"__esModule",{value:!0});hKt.default=jIn;function jIn(){}jIn.prototype={diff:function(t,r){var s,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=a.callback;typeof a=="function"&&(o=a,a={}),this.options=a;var g=this;function p(ge){return o?(setTimeout(function(){o(void 0,ge)},0),!0):ge}t=this.castInput(t),r=this.castInput(r),t=this.removeEmpty(this.tokenize(t)),r=this.removeEmpty(this.tokenize(r));var f=r.length,m=t.length,y=1,B=f+m;a.maxEditLength&&(B=Math.min(B,a.maxEditLength));var v=(s=a.timeout)!==null&&s!==void 0?s:1/0,G=Date.now()+v,T=[{oldPos:-1,lastComponent:void 0}],O=this.extractCommon(T[0],r,t,0);if(T[0].oldPos+1>=m&&O+1>=f)return p([{value:this.join(r),count:r.length}]);var X=-1/0,U=1/0;function le(){for(var ge=Math.max(X,-y);ge<=Math.min(U,y);ge+=2){var fe=void 0,pe=T[ge-1],he=T[ge+1];pe&&(T[ge-1]=void 0);var be=!1;if(he){var Te=he.oldPos-ge;be=he&&0<=Te&&Te=m&&O+1>=f)return p(fKs(g,fe.lastComponent,r,t,g.useLongestToken));T[ge]=fe,fe.oldPos+1>=m&&(U=Math.min(U,ge-1)),O+1>=f&&(X=Math.max(X,ge+1))}y++}if(o)(function ge(){setTimeout(function(){if(y>B||Date.now()>G)return o();le()||ge()},0)})();else for(;y<=B&&Date.now()<=G;){var ae=le();if(ae)return ae}},addToPath:function(t,r,s,a){var o=t.lastComponent;return o&&o.added===r&&o.removed===s?{oldPos:t.oldPos+a,lastComponent:{count:o.count+1,added:r,removed:s,previousComponent:o.previousComponent}}:{oldPos:t.oldPos+a,lastComponent:{count:1,added:r,removed:s,previousComponent:o}}},extractCommon:function(t,r,s,a){for(var o=r.length,g=s.length,p=t.oldPos,f=p-a,m=0;f+1O.length?U:O}),B.value=e.join(v)}else B.value=e.join(r.slice(m,m+B.count));m+=B.count,B.added||(y+=B.count)}}var T=o[f-1];return f>1&&typeof T.value=="string"&&(T.added||T.removed)&&e.equals("",T.value)&&(o[f-2].value+=T.value,o.pop()),o}});var qIn=z(OVe=>{"use strict";Object.defineProperty(OVe,"__esModule",{value:!0});OVe.diffChars=mKs;OVe.characterDiff=void 0;var IKs=CKs(Bj());function CKs(e){return e&&e.__esModule?e:{default:e}}var zIn=new IKs.default;OVe.characterDiff=zIn;function mKs(e,t,r){return zIn.diff(e,t,r)}});var yKt=z(_Kt=>{"use strict";Object.defineProperty(_Kt,"__esModule",{value:!0});_Kt.generateOptions=hKs;function hKs(e,t){if(typeof e=="function")t.callback=e;else if(e)for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);return t}});var tCn=z(EEe=>{"use strict";Object.defineProperty(EEe,"__esModule",{value:!0});EEe.diffWords=EKs;EEe.diffWordsWithSpace=BKs;EEe.wordDiff=void 0;var _Ks=bKs(Bj()),yKs=yKt();function bKs(e){return e&&e.__esModule?e:{default:e}}var $In=/^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/,eCn=/\S/,MVe=new _Ks.default;EEe.wordDiff=MVe;MVe.equals=function(e,t){return this.options.ignoreCase&&(e=e.toLowerCase(),t=t.toLowerCase()),e===t||this.options.ignoreWhitespace&&!eCn.test(e)&&!eCn.test(t)};MVe.tokenize=function(e){for(var t=e.split(/([^\S\r\n]+|[()[\]{}'"\r\n]|\b)/),r=0;r{"use strict";Object.defineProperty(BEe,"__esModule",{value:!0});BEe.diffLines=TKs;BEe.diffTrimmedLines=NKs;BEe.lineDiff=void 0;var vKs=wKs(Bj()),SKs=yKt();function wKs(e){return e&&e.__esModule?e:{default:e}}var yot=new vKs.default;BEe.lineDiff=yot;yot.tokenize=function(e){this.options.stripTrailingCr&&(e=e.replace(/\r\n/g,` -`));var t=[],r=e.split(/(\n|\r\n)/);r[r.length-1]||r.pop();for(var s=0;s{"use strict";Object.defineProperty(QVe,"__esModule",{value:!0});QVe.diffSentences=xKs;QVe.sentenceDiff=void 0;var RKs=DKs(Bj());function DKs(e){return e&&e.__esModule?e:{default:e}}var bKt=new RKs.default;QVe.sentenceDiff=bKt;bKt.tokenize=function(e){return e.split(/(\S.+?[.!?])(?=\s+|$)/)};function xKs(e,t,r){return bKt.diff(e,t,r)}});var nCn=z(YVe=>{"use strict";Object.defineProperty(YVe,"__esModule",{value:!0});YVe.diffCss=FKs;YVe.cssDiff=void 0;var kKs=GKs(Bj());function GKs(e){return e&&e.__esModule?e:{default:e}}var EKt=new kKs.default;YVe.cssDiff=EKt;EKt.tokenize=function(e){return e.split(/([{}:;,]|\s+)/)};function FKs(e,t,r){return EKt.diff(e,t,r)}});var sCn=z(vEe=>{"use strict";Object.defineProperty(vEe,"__esModule",{value:!0});vEe.diffJson=WKs;vEe.canonicalize=Bot;vEe.jsonDiff=void 0;var iCn=LKs(Bj()),ZKs=bot();function LKs(e){return e&&e.__esModule?e:{default:e}}function Eot(e){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Eot=function(r){return typeof r}:Eot=function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},Eot(e)}var VKs=Object.prototype.toString,ZAe=new iCn.default;vEe.jsonDiff=ZAe;ZAe.useLongestToken=!0;ZAe.tokenize=ZKs.lineDiff.tokenize;ZAe.castInput=function(e){var t=this.options,r=t.undefinedReplacement,s=t.stringifyReplacer,a=s===void 0?function(o,g){return typeof g>"u"?r:g}:s;return typeof e=="string"?e:JSON.stringify(Bot(e,null,null,a),a," ")};ZAe.equals=function(e,t){return iCn.default.prototype.equals.call(ZAe,e.replace(/,([\r\n])/g,"$1"),t.replace(/,([\r\n])/g,"$1"))};function WKs(e,t,r){return ZAe.diff(e,t,r)}function Bot(e,t,r,s,a){t=t||[],r=r||[],s&&(e=s(a,e));var o;for(o=0;o{"use strict";Object.defineProperty(XVe,"__esModule",{value:!0});XVe.diffArrays=MKs;XVe.arrayDiff=void 0;var PKs=OKs(Bj());function OKs(e){return e&&e.__esModule?e:{default:e}}var HVe=new PKs.default;XVe.arrayDiff=HVe;HVe.tokenize=function(e){return e.slice()};HVe.join=HVe.removeEmpty=function(e){return e};function MKs(e,t,r){return HVe.diff(e,t,r)}});var vot=z(BKt=>{"use strict";Object.defineProperty(BKt,"__esModule",{value:!0});BKt.parsePatch=QKs;function QKs(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=e.split(/\r\n|[\n\v\f\r\x85]/),s=e.match(/\r\n|[\n\v\f\r\x85]/g)||[],a=[],o=0;function g(){var m={};for(a.push(m);o"u"?1:+B[2],newStart:+B[3],newLines:typeof B[4]>"u"?1:+B[4],lines:[],linedelimiters:[]};v.oldLines===0&&(v.oldStart+=1),v.newLines===0&&(v.newStart+=1);for(var G=0,T=0;o{"use strict";Object.defineProperty(vKt,"__esModule",{value:!0});vKt.default=YKs;function YKs(e,t,r){var s=!0,a=!1,o=!1,g=1;return function p(){if(s&&!o){if(a?g++:s=!1,e+g<=r)return g;o=!0}if(!a)return o||(s=!0),t<=e-g?-g++:(a=!0,p())}}});var uCn=z(Sot=>{"use strict";Object.defineProperty(Sot,"__esModule",{value:!0});Sot.applyPatch=lCn;Sot.applyPatches=JKs;var cCn=vot(),HKs=XKs(aCn());function XKs(e){return e&&e.__esModule?e:{default:e}}function lCn(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(typeof t=="string"&&(t=(0,cCn.parsePatch)(t)),Array.isArray(t)){if(t.length>1)throw new Error("applyPatch only works with a single input.");t=t[0]}var s=e.split(/\r\n|[\n\v\f\r\x85]/),a=e.match(/\r\n|[\n\v\f\r\x85]/g)||[],o=t.hunks,g=r.compareLine||function(Xe,ft,Gt,er){return ft===er},p=0,f=r.fuzzFactor||0,m=0,y=0,B,v;function G(Xe,ft){for(var Gt=0;Gt0?er[0]:" ",Ot=er.length>0?er.substr(1):er;if(Ur===" "||Ur==="-"){if(!g(ft+1,s[ft],Ur,Ot)&&(p++,p>f))return!1;ft++}}return!0}for(var T=0;T0?Te[0]:" ",x=Te.length>0?Te.substr(1):Te,et=pe.linedelimiters&&pe.linedelimiters[be]||` +`),this.stdout.write(`${_ot.pretty(this.configuration,"\u27A4","redBright")} Errors happened when preparing the environment required to run this command. +`),this.suggestInstall&&this.stdout.write(`${_ot.pretty(this.configuration,"\u27A4","redBright")} This might be caused by packages being missing from the lockfile, in which case running "yarn install" might help. +`))}formatNameWithHyperlink(t){return(0,_Ks.formatNameWithHyperlink)(t,{configuration:this.configuration,json:!1})}};yot.LightReport=hKt});var yKt=z(bot=>{"use strict";Object.defineProperty(bot,"__esModule",{value:!0});bot.LockfileResolver=void 0;var yKs=(Oa(),Ai(Pa)),tCn=yKs.__importStar(dk()),_Kt=class{constructor(t){this.resolver=t}supportsDescriptor(t,r){return!!(r.project.storedResolutions.get(t.descriptorHash)||r.project.originalPackages.has(tCn.convertDescriptorToLocator(t).locatorHash))}supportsLocator(t,r){return!!(r.project.originalPackages.has(t.locatorHash)&&!r.project.lockfileNeedsRefresh)}shouldPersistResolution(t,r){throw new Error("The shouldPersistResolution method shouldn't be called on the lockfile resolver, which would always answer yes")}bindDescriptor(t,r,s){return t}getResolutionDependencies(t,r){return this.resolver.getResolutionDependencies(t,r)}async getCandidates(t,r,s){let a=s.project.storedResolutions.get(t.descriptorHash);if(a){let g=s.project.originalPackages.get(a);if(g)return[g]}let o=s.project.originalPackages.get(tCn.convertDescriptorToLocator(t).locatorHash);if(o)return[o];throw new Error("Resolution expected from the lockfile data")}async getSatisfying(t,r,s,a){let[o]=await this.getCandidates(t,r,a);return{locators:s.filter(g=>g.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){let s=r.project.originalPackages.get(t.locatorHash);if(!s)throw new Error("The lockfile resolver isn't meant to resolve packages - they should already have been stored into a cache");return s}};bot.LockfileResolver=_Kt});var Rj=z(bKt=>{"use strict";Object.defineProperty(bKt,"__esModule",{value:!0});bKt.default=rCn;function rCn(){}rCn.prototype={diff:function(t,r){var s,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=a.callback;typeof a=="function"&&(o=a,a={}),this.options=a;var g=this;function p(ge){return o?(setTimeout(function(){o(void 0,ge)},0),!0):ge}t=this.castInput(t),r=this.castInput(r),t=this.removeEmpty(this.tokenize(t)),r=this.removeEmpty(this.tokenize(r));var f=r.length,m=t.length,y=1,B=f+m;a.maxEditLength&&(B=Math.min(B,a.maxEditLength));var v=(s=a.timeout)!==null&&s!==void 0?s:1/0,k=Date.now()+v,T=[{oldPos:-1,lastComponent:void 0}],O=this.extractCommon(T[0],r,t,0);if(T[0].oldPos+1>=m&&O+1>=f)return p([{value:this.join(r),count:r.length}]);var X=-1/0,U=1/0;function le(){for(var ge=Math.max(X,-y);ge<=Math.min(U,y);ge+=2){var fe=void 0,pe=T[ge-1],he=T[ge+1];pe&&(T[ge-1]=void 0);var be=!1;if(he){var Te=he.oldPos-ge;be=he&&0<=Te&&Te=m&&O+1>=f)return p(bKs(g,fe.lastComponent,r,t,g.useLongestToken));T[ge]=fe,fe.oldPos+1>=m&&(U=Math.min(U,ge-1)),O+1>=f&&(X=Math.max(X,ge+1))}y++}if(o)(function ge(){setTimeout(function(){if(y>B||Date.now()>k)return o();le()||ge()},0)})();else for(;y<=B&&Date.now()<=k;){var ae=le();if(ae)return ae}},addToPath:function(t,r,s,a){var o=t.lastComponent;return o&&o.added===r&&o.removed===s?{oldPos:t.oldPos+a,lastComponent:{count:o.count+1,added:r,removed:s,previousComponent:o.previousComponent}}:{oldPos:t.oldPos+a,lastComponent:{count:1,added:r,removed:s,previousComponent:o}}},extractCommon:function(t,r,s,a){for(var o=r.length,g=s.length,p=t.oldPos,f=p-a,m=0;f+1O.length?U:O}),B.value=e.join(v)}else B.value=e.join(r.slice(m,m+B.count));m+=B.count,B.added||(y+=B.count)}}var T=o[f-1];return f>1&&typeof T.value=="string"&&(T.added||T.removed)&&e.equals("",T.value)&&(o[f-2].value+=T.value,o.pop()),o}});var iCn=z(MVe=>{"use strict";Object.defineProperty(MVe,"__esModule",{value:!0});MVe.diffChars=vKs;MVe.characterDiff=void 0;var EKs=BKs(Rj());function BKs(e){return e&&e.__esModule?e:{default:e}}var nCn=new EKs.default;MVe.characterDiff=nCn;function vKs(e,t,r){return nCn.diff(e,t,r)}});var BKt=z(EKt=>{"use strict";Object.defineProperty(EKt,"__esModule",{value:!0});EKt.generateOptions=SKs;function SKs(e,t){if(typeof e=="function")t.callback=e;else if(e)for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);return t}});var aCn=z(vEe=>{"use strict";Object.defineProperty(vEe,"__esModule",{value:!0});vEe.diffWords=RKs;vEe.diffWordsWithSpace=DKs;vEe.wordDiff=void 0;var wKs=NKs(Rj()),TKs=BKt();function NKs(e){return e&&e.__esModule?e:{default:e}}var sCn=/^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/,oCn=/\S/,HVe=new wKs.default;vEe.wordDiff=HVe;HVe.equals=function(e,t){return this.options.ignoreCase&&(e=e.toLowerCase(),t=t.toLowerCase()),e===t||this.options.ignoreWhitespace&&!oCn.test(e)&&!oCn.test(t)};HVe.tokenize=function(e){for(var t=e.split(/([^\S\r\n]+|[()[\]{}'"\r\n]|\b)/),r=0;r{"use strict";Object.defineProperty(SEe,"__esModule",{value:!0});SEe.diffLines=FKs;SEe.diffTrimmedLines=ZKs;SEe.lineDiff=void 0;var xKs=GKs(Rj()),kKs=BKt();function GKs(e){return e&&e.__esModule?e:{default:e}}var Eot=new xKs.default;SEe.lineDiff=Eot;Eot.tokenize=function(e){this.options.stripTrailingCr&&(e=e.replace(/\r\n/g,` +`));var t=[],r=e.split(/(\n|\r\n)/);r[r.length-1]||r.pop();for(var s=0;s{"use strict";Object.defineProperty(YVe,"__esModule",{value:!0});YVe.diffSentences=WKs;YVe.sentenceDiff=void 0;var LKs=VKs(Rj());function VKs(e){return e&&e.__esModule?e:{default:e}}var vKt=new LKs.default;YVe.sentenceDiff=vKt;vKt.tokenize=function(e){return e.split(/(\S.+?[.!?])(?=\s+|$)/)};function WKs(e,t,r){return vKt.diff(e,t,r)}});var lCn=z(XVe=>{"use strict";Object.defineProperty(XVe,"__esModule",{value:!0});XVe.diffCss=QKs;XVe.cssDiff=void 0;var PKs=OKs(Rj());function OKs(e){return e&&e.__esModule?e:{default:e}}var SKt=new PKs.default;XVe.cssDiff=SKt;SKt.tokenize=function(e){return e.split(/([{}:;,]|\s+)/)};function QKs(e,t,r){return SKt.diff(e,t,r)}});var gCn=z(wEe=>{"use strict";Object.defineProperty(wEe,"__esModule",{value:!0});wEe.diffJson=XKs;wEe.canonicalize=Sot;wEe.jsonDiff=void 0;var uCn=HKs(Rj()),MKs=Bot();function HKs(e){return e&&e.__esModule?e:{default:e}}function vot(e){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?vot=function(r){return typeof r}:vot=function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},vot(e)}var YKs=Object.prototype.toString,YAe=new uCn.default;wEe.jsonDiff=YAe;YAe.useLongestToken=!0;YAe.tokenize=MKs.lineDiff.tokenize;YAe.castInput=function(e){var t=this.options,r=t.undefinedReplacement,s=t.stringifyReplacer,a=s===void 0?function(o,g){return typeof g>"u"?r:g}:s;return typeof e=="string"?e:JSON.stringify(Sot(e,null,null,a),a," ")};YAe.equals=function(e,t){return uCn.default.prototype.equals.call(YAe,e.replace(/,([\r\n])/g,"$1"),t.replace(/,([\r\n])/g,"$1"))};function XKs(e,t,r){return YAe.diff(e,t,r)}function Sot(e,t,r,s,a){t=t||[],r=r||[],s&&(e=s(a,e));var o;for(o=0;o{"use strict";Object.defineProperty(UVe,"__esModule",{value:!0});UVe.diffArrays=KKs;UVe.arrayDiff=void 0;var JKs=UKs(Rj());function UKs(e){return e&&e.__esModule?e:{default:e}}var JVe=new JKs.default;UVe.arrayDiff=JVe;JVe.tokenize=function(e){return e.slice()};JVe.join=JVe.removeEmpty=function(e){return e};function KKs(e,t,r){return JVe.diff(e,t,r)}});var wot=z(wKt=>{"use strict";Object.defineProperty(wKt,"__esModule",{value:!0});wKt.parsePatch=jKs;function jKs(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=e.split(/\r\n|[\n\v\f\r\x85]/),s=e.match(/\r\n|[\n\v\f\r\x85]/g)||[],a=[],o=0;function g(){var m={};for(a.push(m);o"u"?1:+B[2],newStart:+B[3],newLines:typeof B[4]>"u"?1:+B[4],lines:[],linedelimiters:[]};v.oldLines===0&&(v.oldStart+=1),v.newLines===0&&(v.newStart+=1);for(var k=0,T=0;o{"use strict";Object.defineProperty(TKt,"__esModule",{value:!0});TKt.default=zKs;function zKs(e,t,r){var s=!0,a=!1,o=!1,g=1;return function p(){if(s&&!o){if(a?g++:s=!1,e+g<=r)return g;o=!0}if(!a)return o||(s=!0),t<=e-g?-g++:(a=!0,p())}}});var ICn=z(Tot=>{"use strict";Object.defineProperty(Tot,"__esModule",{value:!0});Tot.applyPatch=fCn;Tot.applyPatches=e8s;var pCn=wot(),qKs=$Ks(dCn());function $Ks(e){return e&&e.__esModule?e:{default:e}}function fCn(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(typeof t=="string"&&(t=(0,pCn.parsePatch)(t)),Array.isArray(t)){if(t.length>1)throw new Error("applyPatch only works with a single input.");t=t[0]}var s=e.split(/\r\n|[\n\v\f\r\x85]/),a=e.match(/\r\n|[\n\v\f\r\x85]/g)||[],o=t.hunks,g=r.compareLine||function(Xe,ft,Gt,er){return ft===er},p=0,f=r.fuzzFactor||0,m=0,y=0,B,v;function k(Xe,ft){for(var Gt=0;Gt0?er[0]:" ",Ot=er.length>0?er.substr(1):er;if(Ur===" "||Ur==="-"){if(!g(ft+1,s[ft],Ur,Ot)&&(p++,p>f))return!1;ft++}}return!0}for(var T=0;T0?Te[0]:" ",x=Te.length>0?Te.substr(1):Te,et=pe.linedelimiters&&pe.linedelimiters[be]||` `;if(ke===" ")he++;else if(ke==="-")s.splice(he,1),a.splice(he,1);else if(ke==="+")s.splice(he,0,x),a.splice(he,0,et),he++;else if(ke==="\\"){var Ue=pe.lines[be-1]?pe.lines[be-1][0]:null;Ue==="+"?B=!0:Ue==="-"&&(v=!0)}}}if(B)for(;!s[s.length-1];)s.pop(),a.pop();else v&&(s.push(""),a.push(` -`));for(var Je=0;Je{"use strict";Object.defineProperty(SEe,"__esModule",{value:!0});SEe.structuredPatch=gCn;SEe.formatPatch=TKt;SEe.createTwoFilesPatch=ACn;SEe.createPatch=$Ks;var UKs=bot();function SKt(e){return qKs(e)||zKs(e)||jKs(e)||KKs()}function KKs(){throw new TypeError(`Invalid attempt to spread non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function jKs(e,t){if(e){if(typeof e=="string")return wKt(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return wKt(e,t)}}function zKs(e){if(typeof Symbol<"u"&&Symbol.iterator in Object(e))return Array.from(e)}function qKs(e){if(Array.isArray(e))return wKt(e)}function wKt(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,s=new Array(t);r"u"&&(g.context=4);var p=(0,UKs.diffLines)(r,s,g);if(!p)return;p.push({value:"",lines:[]});function f(U){return U.map(function(le){return" "+le})}for(var m=[],y=0,B=0,v=[],G=1,T=1,O=function(le){var ae=p[le],ge=ae.lines||ae.value.replace(/\n$/,"").split(` -`);if(ae.lines=ge,ae.added||ae.removed){var fe;if(!y){var pe=p[le-1];y=G,B=T,pe&&(v=g.context>0?f(pe.lines.slice(-g.context)):[],y-=v.length,B-=v.length)}(fe=v).push.apply(fe,SKt(ge.map(function(Je){return(ae.added?"+":"-")+Je}))),ae.added?T+=ge.length:G+=ge.length}else{if(y)if(ge.length<=g.context*2&&le=p.length-2&&ge.length<=g.context){var x=/\n$/.test(r),et=/\n$/.test(s),Ue=ge.length==0&&v.length>ke.oldLines;!x&&Ue&&r.length>0&&v.splice(ke.oldLines,0,"\\ No newline at end of file"),(!x&&!Ue||!et)&&v.push("\\ No newline at end of file")}m.push(ke),y=0,B=0,v=[]}G+=ge.length,T+=ge.length}},X=0;X{"use strict";Object.defineProperty(TEe,"__esModule",{value:!0});TEe.structuredPatch=CCn;TEe.formatPatch=DKt;TEe.createTwoFilesPatch=mCn;TEe.createPatch=o8s;var t8s=Bot();function NKt(e){return s8s(e)||i8s(e)||n8s(e)||r8s()}function r8s(){throw new TypeError(`Invalid attempt to spread non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function n8s(e,t){if(e){if(typeof e=="string")return RKt(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return RKt(e,t)}}function i8s(e){if(typeof Symbol<"u"&&Symbol.iterator in Object(e))return Array.from(e)}function s8s(e){if(Array.isArray(e))return RKt(e)}function RKt(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,s=new Array(t);r"u"&&(g.context=4);var p=(0,t8s.diffLines)(r,s,g);if(!p)return;p.push({value:"",lines:[]});function f(U){return U.map(function(le){return" "+le})}for(var m=[],y=0,B=0,v=[],k=1,T=1,O=function(le){var ae=p[le],ge=ae.lines||ae.value.replace(/\n$/,"").split(` +`);if(ae.lines=ge,ae.added||ae.removed){var fe;if(!y){var pe=p[le-1];y=k,B=T,pe&&(v=g.context>0?f(pe.lines.slice(-g.context)):[],y-=v.length,B-=v.length)}(fe=v).push.apply(fe,NKt(ge.map(function(Je){return(ae.added?"+":"-")+Je}))),ae.added?T+=ge.length:k+=ge.length}else{if(y)if(ge.length<=g.context*2&&le=p.length-2&&ge.length<=g.context){var x=/\n$/.test(r),et=/\n$/.test(s),Ue=ge.length==0&&v.length>ke.oldLines;!x&&Ue&&r.length>0&&v.splice(ke.oldLines,0,"\\ No newline at end of file"),(!x&&!Ue||!et)&&v.push("\\ No newline at end of file")}m.push(ke),y=0,B=0,v=[]}k+=ge.length,T+=ge.length}},X=0;X"u"?"":" "+e.oldHeader)),t.push("+++ "+e.newFileName+(typeof e.newHeader>"u"?"":" "+e.newHeader));for(var r=0;r{"use strict";Object.defineProperty(wot,"__esModule",{value:!0});wot.arrayEqual=e8s;wot.arrayStartsWith=dCn;function e8s(e,t){return e.length!==t.length?!1:dCn(e,t)}function dCn(e,t){if(t.length>e.length)return!1;for(var r=0;r{"use strict";Object.defineProperty(Not,"__esModule",{value:!0});Not.calcLineCount=BCn;Not.merge=a8s;var t8s=NKt(),r8s=vot(),RKt=pCn();function wEe(e){return o8s(e)||s8s(e)||i8s(e)||n8s()}function n8s(){throw new TypeError(`Invalid attempt to spread non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function i8s(e,t){if(e){if(typeof e=="string")return DKt(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return DKt(e,t)}}function s8s(e){if(typeof Symbol<"u"&&Symbol.iterator in Object(e))return Array.from(e)}function o8s(e){if(Array.isArray(e))return DKt(e)}function DKt(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,s=new Array(t);r{"use strict";Object.defineProperty(GKt,"__esModule",{value:!0});GKt.reversePatch=TCn;function SCn(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);t&&(s=s.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,s)}return r}function wCn(e){for(var t=1;t{"use strict";Object.defineProperty(FKt,"__esModule",{value:!0});FKt.convertChangesToDMP=A8s;function A8s(e){for(var t=[],r,s,a=0;a{"use strict";Object.defineProperty(ZKt,"__esModule",{value:!0});ZKt.convertChangesToXML=d8s;function d8s(e){for(var t=[],r=0;r"):s.removed&&t.push(""),t.push(p8s(s.value)),s.added?t.push(""):s.removed&&t.push("")}return t.join("")}function p8s(e){var t=e;return t=t.replace(/&/g,"&"),t=t.replace(//g,">"),t=t.replace(/"/g,"""),t}});var LKt=z(J1=>{"use strict";Object.defineProperty(J1,"__esModule",{value:!0});Object.defineProperty(J1,"Diff",{enumerable:!0,get:function(){return f8s.default}});Object.defineProperty(J1,"diffChars",{enumerable:!0,get:function(){return I8s.diffChars}});Object.defineProperty(J1,"diffWords",{enumerable:!0,get:function(){return xCn.diffWords}});Object.defineProperty(J1,"diffWordsWithSpace",{enumerable:!0,get:function(){return xCn.diffWordsWithSpace}});Object.defineProperty(J1,"diffLines",{enumerable:!0,get:function(){return kCn.diffLines}});Object.defineProperty(J1,"diffTrimmedLines",{enumerable:!0,get:function(){return kCn.diffTrimmedLines}});Object.defineProperty(J1,"diffSentences",{enumerable:!0,get:function(){return C8s.diffSentences}});Object.defineProperty(J1,"diffCss",{enumerable:!0,get:function(){return m8s.diffCss}});Object.defineProperty(J1,"diffJson",{enumerable:!0,get:function(){return GCn.diffJson}});Object.defineProperty(J1,"canonicalize",{enumerable:!0,get:function(){return GCn.canonicalize}});Object.defineProperty(J1,"diffArrays",{enumerable:!0,get:function(){return h8s.diffArrays}});Object.defineProperty(J1,"applyPatch",{enumerable:!0,get:function(){return FCn.applyPatch}});Object.defineProperty(J1,"applyPatches",{enumerable:!0,get:function(){return FCn.applyPatches}});Object.defineProperty(J1,"parsePatch",{enumerable:!0,get:function(){return _8s.parsePatch}});Object.defineProperty(J1,"merge",{enumerable:!0,get:function(){return y8s.merge}});Object.defineProperty(J1,"reversePatch",{enumerable:!0,get:function(){return b8s.reversePatch}});Object.defineProperty(J1,"structuredPatch",{enumerable:!0,get:function(){return Rot.structuredPatch}});Object.defineProperty(J1,"createTwoFilesPatch",{enumerable:!0,get:function(){return Rot.createTwoFilesPatch}});Object.defineProperty(J1,"createPatch",{enumerable:!0,get:function(){return Rot.createPatch}});Object.defineProperty(J1,"formatPatch",{enumerable:!0,get:function(){return Rot.formatPatch}});Object.defineProperty(J1,"convertChangesToDMP",{enumerable:!0,get:function(){return E8s.convertChangesToDMP}});Object.defineProperty(J1,"convertChangesToXML",{enumerable:!0,get:function(){return B8s.convertChangesToXML}});var f8s=v8s(Bj()),I8s=qIn(),xCn=tCn(),kCn=bot(),C8s=rCn(),m8s=nCn(),GCn=sCn(),h8s=oCn(),FCn=uCn(),_8s=vot(),y8s=vCn(),b8s=NCn(),Rot=NKt(),E8s=RCn(),B8s=DCn();function v8s(e){return e&&e.__esModule?e:{default:e}}});var LCn=z((eQc,ZCn)=>{var S8s=dH(),w8s=Q9e(),T8s=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,N8s=/^\w*$/;function R8s(e,t){if(S8s(e))return!1;var r=typeof e;return r=="number"||r=="symbol"||r=="boolean"||e==null||w8s(e)?!0:N8s.test(e)||!T8s.test(e)||t!=null&&e in Object(t)}ZCn.exports=R8s});var PCn=z((tQc,WCn)=>{var VCn=Qrt(),D8s="Expected a function";function VKt(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(D8s);var r=function(){var s=arguments,a=t?t.apply(this,s):s[0],o=r.cache;if(o.has(a))return o.get(a);var g=e.apply(this,s);return r.cache=o.set(a,g)||o,g};return r.cache=new(VKt.Cache||VCn),r}VKt.Cache=VCn;WCn.exports=VKt});var MCn=z((rQc,OCn)=>{var x8s=PCn(),k8s=500;function G8s(e){var t=x8s(e,function(s){return r.size===k8s&&r.clear(),s}),r=t.cache;return t}OCn.exports=G8s});var YCn=z((nQc,QCn)=>{var F8s=MCn(),Z8s=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,L8s=/\\(\\)?/g,V8s=F8s(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(Z8s,function(r,s,a,o){t.push(a?o.replace(L8s,"$1"):s||r)}),t});QCn.exports=V8s});var VAe=z((iQc,HCn)=>{var W8s=dH(),P8s=LCn(),O8s=YCn(),M8s=$it();function Q8s(e,t){return W8s(e)?e:P8s(e,t)?[e]:O8s(M8s(e))}HCn.exports=Q8s});var JVe=z((sQc,XCn)=>{var Y8s=Q9e(),H8s=1/0;function X8s(e){if(typeof e=="string"||Y8s(e))return e;var t=e+"";return t=="0"&&1/e==-H8s?"-0":t}XCn.exports=X8s});var Dot=z((oQc,JCn)=>{var J8s=VAe(),U8s=JVe();function K8s(e,t){t=J8s(t,e);for(var r=0,s=t.length;e!=null&&r{var j8s=int(),z8s=VAe(),q8s=D9e(),UCn=pW(),$8s=JVe();function e6s(e,t,r,s){if(!UCn(e))return e;t=z8s(t,e);for(var a=-1,o=t.length,g=o-1,p=e;p!=null&&++a{var t6s=Dot(),r6s=WKt(),n6s=VAe();function i6s(e,t,r){for(var s=-1,a=t.length,o={};++s{function s6s(e,t){return e!=null&&t in Object(e)}qCn.exports=s6s});var PKt=z((uQc,emn)=>{var o6s=VAe(),a6s=T9e(),c6s=dH(),l6s=D9e(),u6s=Urt(),g6s=JVe();function A6s(e,t,r){t=o6s(t,e);for(var s=-1,a=t.length,o=!1;++s{var d6s=$Cn(),p6s=PKt();function f6s(e,t){return e!=null&&p6s(e,t,d6s)}tmn.exports=f6s});var imn=z((AQc,nmn)=>{var I6s=zCn(),C6s=rmn();function m6s(e,t){return I6s(e,t,function(r,s){return C6s(e,s)})}nmn.exports=m6s});var cmn=z((dQc,amn)=>{var smn=eAe(),h6s=T9e(),_6s=dH(),omn=smn?smn.isConcatSpreadable:void 0;function y6s(e){return _6s(e)||h6s(e)||!!(omn&&e&&e[omn])}amn.exports=y6s});var gmn=z((pQc,umn)=>{var b6s=Xrt(),E6s=cmn();function lmn(e,t,r,s,a){var o=-1,g=e.length;for(r||(r=E6s),a||(a=[]);++o0&&r(p)?t>1?lmn(p,t-1,r,s,a):b6s(a,p):s||(a[a.length]=p)}return a}umn.exports=lmn});var dmn=z((fQc,Amn)=>{var B6s=gmn();function v6s(e){var t=e==null?0:e.length;return t?B6s(e,1):[]}Amn.exports=v6s});var OKt=z((IQc,pmn)=>{var S6s=dmn(),w6s=cHt(),T6s=lHt();function N6s(e){return T6s(w6s(e,void 0,S6s),e+"")}pmn.exports=N6s});var MKt=z((CQc,fmn)=>{var R6s=imn(),D6s=OKt(),x6s=D6s(function(e,t){return e==null?{}:R6s(e,t)});fmn.exports=x6s});var Imn=z(xot=>{"use strict";Object.defineProperty(xot,"__esModule",{value:!0});xot.RunInstallPleaseResolver=void 0;var QKt=TL(),YKt=CO(),HKt=class{constructor(t){this.resolver=t}supportsDescriptor(t,r){return this.resolver.supportsDescriptor(t,r)}supportsLocator(t,r){return this.resolver.supportsLocator(t,r)}shouldPersistResolution(t,r){return this.resolver.shouldPersistResolution(t,r)}bindDescriptor(t,r,s){return this.resolver.bindDescriptor(t,r,s)}getResolutionDependencies(t,r){return this.resolver.getResolutionDependencies(t,r)}async getCandidates(t,r,s){throw new YKt.ReportError(QKt.MessageName.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}async getSatisfying(t,r,s,a){throw new YKt.ReportError(QKt.MessageName.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}async resolve(t,r){throw new YKt.ReportError(QKt.MessageName.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}};xot.RunInstallPleaseResolver=HKt});var JKt=z(kot=>{"use strict";Object.defineProperty(kot,"__esModule",{value:!0});kot.ThrowReport=void 0;var k6s=CO(),XKt=class extends k6s.Report{reportCacheHit(t){}reportCacheMiss(t){}startSectionSync(t,r){return r()}async startSectionPromise(t,r){return await r()}startTimerSync(t,r,s){return(typeof r=="function"?r:s)()}async startTimerPromise(t,r,s){return await(typeof r=="function"?r:s)()}reportSeparator(){}reportInfo(t,r){}reportWarning(t,r){}reportError(t,r){}reportProgress(t){return{...Promise.resolve().then(async()=>{for await(let{}of t);}),stop:()=>{}}}reportJson(t){}reportFold(t,r){}async finalize(){}};kot.ThrowReport=XKt});var KKt=z(Got=>{"use strict";Object.defineProperty(Got,"__esModule",{value:!0});Got.Workspace=void 0;var zVe=(Ma(),Ai(Oa)),yW=Ro(),G6s=zVe.__importDefault(Rbe()),UVe=Fbe(),KVe=cAe(),Cmn=zVe.__importStar(pO()),F6s=zVe.__importStar(pne()),Z6s=zVe.__importStar(rj()),jVe=zVe.__importStar(ak()),UKt=class{constructor(t,{project:r}){this.workspacesCwds=new Set,this.project=r,this.cwd=t}async setup(){this.manifest=await UVe.Manifest.tryFind(this.cwd)??new UVe.Manifest,this.relativeCwd=yW.ppath.relative(this.project.cwd,this.cwd)||yW.PortablePath.dot;let t=this.manifest.name?this.manifest.name:jVe.makeIdent(null,`${this.computeCandidateName()}-${F6s.makeHash(this.relativeCwd).substring(0,6)}`);this.anchoredDescriptor=jVe.makeDescriptor(t,`${KVe.WorkspaceResolver.protocol}${this.relativeCwd}`),this.anchoredLocator=jVe.makeLocator(t,`${KVe.WorkspaceResolver.protocol}${this.relativeCwd}`);let r=this.manifest.workspaceDefinitions.map(({pattern:a})=>a);if(r.length===0)return;let s=await(0,G6s.default)(r,{cwd:yW.npath.fromPortablePath(this.cwd),onlyDirectories:!0,ignore:["**/node_modules","**/.git","**/.yarn"]});s.sort(),await s.reduce(async(a,o)=>{let g=yW.ppath.resolve(this.cwd,yW.npath.toPortablePath(o)),p=await yW.xfs.existsPromise(yW.ppath.join(g,"package.json"));await a,p&&this.workspacesCwds.add(g)},Promise.resolve())}get anchoredPackage(){let t=this.project.storedPackages.get(this.anchoredLocator.locatorHash);if(!t)throw new Error(`Assertion failed: Expected workspace ${jVe.prettyWorkspace(this.project.configuration,this)} (${Cmn.pretty(this.project.configuration,yW.ppath.join(this.cwd,yW.Filename.manifest),Cmn.Type.PATH)}) to have been resolved. Run "yarn install" to update the lockfile`);return t}accepts(t){let r=t.indexOf(":"),s=r!==-1?t.slice(0,r+1):null,a=r!==-1?t.slice(r+1):t;if(s===KVe.WorkspaceResolver.protocol&&yW.ppath.normalize(a)===this.relativeCwd||s===KVe.WorkspaceResolver.protocol&&(a==="*"||a==="^"||a==="~"))return!0;let o=Z6s.validRange(a);return o?s===KVe.WorkspaceResolver.protocol?o.test(this.manifest.version??"0.0.0"):this.project.configuration.get("enableTransparentWorkspaces")&&this.manifest.version!==null?o.test(this.manifest.version):!1:!1}computeCandidateName(){return this.cwd===this.project.cwd?"root-workspace":`${yW.ppath.basename(this.cwd)}`||"unnamed-workspace"}getRecursiveWorkspaceDependencies({dependencies:t=UVe.Manifest.hardDependencies}={}){let r=new Set,s=a=>{for(let o of t)for(let g of a.manifest[o].values()){let p=this.project.tryWorkspaceByDescriptor(g);p===null||r.has(p)||(r.add(p),s(p))}};return s(this),r}getRecursiveWorkspaceDependents({dependencies:t=UVe.Manifest.hardDependencies}={}){let r=new Set,s=a=>{for(let o of this.project.workspaces)t.some(p=>[...o.manifest[p].values()].some(f=>{let m=this.project.tryWorkspaceByDescriptor(f);return m!==null&&jVe.areLocatorsEqual(m.anchoredLocator,a.anchoredLocator)}))&&!r.has(o)&&(r.add(o),s(o))};return s(this),r}getRecursiveWorkspaceChildren(){let t=new Set([this]);for(let r of t)for(let s of r.workspacesCwds){let a=this.project.workspacesByCwd.get(s);a&&t.add(a)}return t.delete(this),Array.from(t)}async persistManifest(){let t={};this.manifest.exportTo(t);let r=yW.ppath.join(this.cwd,UVe.Manifest.fileName),s=`${JSON.stringify(t,null,this.manifest.indent)} -`;await yW.xfs.changeFilePromise(r,s,{automaticNewlines:!0}),this.manifest.raw=t}};Got.Workspace=UKt});var Rmn=z(xO=>{"use strict";Object.defineProperty(xO,"__esModule",{value:!0});xO.Project=xO.PeerWarningType=xO.InstallMode=xO.LOCKFILE_VERSION=void 0;var kO=(Ma(),Ai(Oa)),Zot=Ro(),Mf=Ro(),mmn=aO(),hmn=(Fl(),Ai(dg)),jKt=Dt("crypto"),L6s=LKt(),zKt=kO.__importDefault(MKt()),qKt=kO.__importDefault(Kge()),V6s=kO.__importDefault(Lh()),Tmn=Dt("util"),_mn=kO.__importDefault(Dt("v8")),Nmn=kO.__importDefault(Dt("zlib")),W6s=AKt(),qVe=oVe(),$Ve=dKt(),P6s=fKt(),O6s=mKt(),ymn=Fbe(),hb=TL(),bmn=J5t(),Hne=CO(),M6s=Imn(),Emn=fVe(),Bmn=JKt(),Lot=cAe(),Q6s=KKt(),Y6s=eit(),Up=kO.__importStar(pO()),WJ=kO.__importStar(pne()),P_=kO.__importStar(fW()),H6s=kO.__importStar(kit()),vmn=kO.__importStar(fJt()),Vot=kO.__importStar(rj()),Mu=kO.__importStar(ak()),X6s=iAe(),Fot=iAe();xO.LOCKFILE_VERSION=P_.parseInt(process.env.YARN_LOCKFILE_VERSION_OVERRIDE??8);var J6s=3,U6s=/ *, */g,Smn=/\/$/,K6s=32,j6s=(0,Tmn.promisify)(Nmn.default.gzip),z6s=(0,Tmn.promisify)(Nmn.default.gunzip),TEe;(function(e){e.UpdateLockfile="update-lockfile",e.SkipBuild="skip-build"})(TEe||(xO.InstallMode=TEe={}));var $Kt={restoreLinkersCustomData:["linkersCustomData"],restoreResolutions:["accessibleLocators","conditionalLocators","disabledLocators","optionalBuilds","storedDescriptors","storedResolutions","storedPackages","lockFileChecksum"],restoreBuildState:["skippedBuilds","storedBuildState"]},PJ;(function(e){e[e.NotProvided=0]="NotProvided",e[e.NotCompatible=1]="NotCompatible",e[e.NodeNotProvided=2]="NodeNotProvided",e[e.NodeNotCompatible=3]="NodeNotCompatible"})(PJ||(xO.PeerWarningType=PJ={}));var wmn=e=>WJ.makeHash(`${J6s}`,e),e8t=class e{static async find(t,r){if(!t.projectCwd)throw new hmn.UsageError(`No project found in ${r}`);let s=t.projectCwd,a=r,o=null;for(;o!==t.projectCwd;){if(o=a,Mf.xfs.existsSync(Mf.ppath.join(o,Mf.Filename.manifest))){s=o;break}a=Mf.ppath.dirname(o)}let g=new e(t.projectCwd,{configuration:t});qVe.Configuration.telemetry?.reportProject(g.cwd),await g.setupResolutions(),await g.setupWorkspaces(),qVe.Configuration.telemetry?.reportWorkspaceCount(g.workspaces.length),qVe.Configuration.telemetry?.reportDependencyCount(g.workspaces.reduce((T,O)=>T+O.manifest.dependencies.size+O.manifest.devDependencies.size,0));let p=g.tryWorkspaceByCwd(s);if(p)return{project:g,workspace:p,locator:p.anchoredLocator};let f=await g.findLocatorForLocation(`${s}/`,{strict:!0});if(f)return{project:g,locator:f,workspace:null};let m=Up.pretty(t,g.cwd,Up.Type.PATH),y=Up.pretty(t,Mf.ppath.relative(g.cwd,s),Up.Type.PATH),B=`- If ${m} isn't intended to be a project, remove any yarn.lock and/or package.json file there.`,v=`- If ${m} is intended to be a project, it might be that you forgot to list ${y} in its workspace configuration.`,G=`- Finally, if ${m} is fine and you intend ${y} to be treated as a completely separate project (not even a workspace), create an empty yarn.lock file in it.`;throw new hmn.UsageError(`The nearest package directory (${Up.pretty(t,s,Up.Type.PATH)}) doesn't seem to be part of the project declared in ${Up.pretty(t,g.cwd,Up.Type.PATH)}. - -${[B,v,G].join(` -`)}`)}constructor(t,{configuration:r}){this.resolutionAliases=new Map,this.workspaces=[],this.workspacesByCwd=new Map,this.workspacesByIdent=new Map,this.storedResolutions=new Map,this.storedDescriptors=new Map,this.storedPackages=new Map,this.storedChecksums=new Map,this.storedBuildState=new Map,this.accessibleLocators=new Set,this.conditionalLocators=new Set,this.disabledLocators=new Set,this.originalPackages=new Map,this.optionalBuilds=new Set,this.skippedBuilds=new Set,this.lockfileLastVersion=null,this.lockfileNeedsRefresh=!1,this.peerRequirements=new Map,this.peerWarnings=[],this.peerRequirementNodes=new Map,this.linkersCustomData=new Map,this.lockFileChecksum=null,this.installStateChecksum=null,this.configuration=r,this.cwd=t}async setupResolutions(){this.storedResolutions=new Map,this.storedDescriptors=new Map,this.storedPackages=new Map,this.lockFileChecksum=null;let t=Mf.ppath.join(this.cwd,Mf.Filename.lockfile),r=this.configuration.get("defaultLanguageName");if(Mf.xfs.existsSync(t)){let s=await Mf.xfs.readFilePromise(t,"utf8");this.lockFileChecksum=wmn(s);let a=(0,mmn.parseSyml)(s);if(a.__metadata){let o=a.__metadata.version,g=a.__metadata.cacheKey;this.lockfileLastVersion=o,this.lockfileNeedsRefresh=o"u")throw new Error(`Assertion failed: Expected the lockfile entry to have a resolution field (${p})`);let m=Mu.parseLocator(f.resolution,!0),y=new ymn.Manifest;y.load(f,{yamlCompatibilityMode:!0});let B=y.version,v=y.languageName||r,G=f.linkType.toUpperCase(),T=f.conditions??null,O=y.dependencies,X=y.peerDependencies,U=y.dependenciesMeta,le=y.peerDependenciesMeta,ae=y.bin;if(f.checksum!=null){let fe=typeof g<"u"&&!f.checksum.includes("/")?`${g}/${f.checksum}`:f.checksum;this.storedChecksums.set(m.locatorHash,fe)}let ge={...m,version:B,languageName:v,linkType:G,conditions:T,dependencies:O,peerDependencies:X,dependenciesMeta:U,peerDependenciesMeta:le,bin:ae};this.originalPackages.set(ge.locatorHash,ge);for(let fe of p.split(U6s)){let pe=Mu.parseDescriptor(fe);o<=6&&(pe=this.configuration.normalizeDependency(pe),pe=Mu.makeDescriptor(pe,pe.range.replace(/^patch:[^@]+@(?!npm(:|%3A))/,"$1npm%3A"))),this.storedDescriptors.set(pe.descriptorHash,pe),this.storedResolutions.set(pe.descriptorHash,m.locatorHash)}}}else s.includes("yarn lockfile v1")&&(this.lockfileLastVersion=-1)}}async setupWorkspaces(){this.workspaces=[],this.workspacesByCwd=new Map,this.workspacesByIdent=new Map;let t=new Set,r=(0,qKt.default)(4),s=async(a,o)=>{if(t.has(o))return a;t.add(o);let g=new Q6s.Workspace(o,{project:this});await r(()=>g.setup());let p=a.then(()=>{this.addWorkspace(g)});return Array.from(g.workspacesCwds).reduce(s,p)};await s(Promise.resolve(),this.cwd)}addWorkspace(t){let r=this.workspacesByIdent.get(t.anchoredLocator.identHash);if(typeof r<"u")throw new Error(`Duplicate workspace name ${Mu.prettyIdent(this.configuration,t.anchoredLocator)}: ${Zot.npath.fromPortablePath(t.cwd)} conflicts with ${Zot.npath.fromPortablePath(r.cwd)}`);this.workspaces.push(t),this.workspacesByCwd.set(t.cwd,t),this.workspacesByIdent.set(t.anchoredLocator.identHash,t)}get topLevelWorkspace(){return this.getWorkspaceByCwd(this.cwd)}tryWorkspaceByCwd(t){Mf.ppath.isAbsolute(t)||(t=Mf.ppath.resolve(this.cwd,t)),t=Mf.ppath.normalize(t).replace(/\/+$/,"");let r=this.workspacesByCwd.get(t);return r||null}getWorkspaceByCwd(t){let r=this.tryWorkspaceByCwd(t);if(!r)throw new Error(`Workspace not found (${t})`);return r}tryWorkspaceByFilePath(t){let r=null;for(let s of this.workspaces)Mf.ppath.relative(s.cwd,t).startsWith("../")||r&&r.cwd.length>=s.cwd.length||(r=s);return r||null}getWorkspaceByFilePath(t){let r=this.tryWorkspaceByFilePath(t);if(!r)throw new Error(`Workspace not found (${t})`);return r}tryWorkspaceByIdent(t){let r=this.workspacesByIdent.get(t.identHash);return typeof r>"u"?null:r}getWorkspaceByIdent(t){let r=this.tryWorkspaceByIdent(t);if(!r)throw new Error(`Workspace not found (${Mu.prettyIdent(this.configuration,t)})`);return r}tryWorkspaceByDescriptor(t){if(t.range.startsWith(Lot.WorkspaceResolver.protocol)){let s=t.range.slice(Lot.WorkspaceResolver.protocol.length);if(s!=="^"&&s!=="~"&&s!=="*"&&!Vot.validRange(s))return this.tryWorkspaceByCwd(s)}let r=this.tryWorkspaceByIdent(t);return r===null||(Mu.isVirtualDescriptor(t)&&(t=Mu.devirtualizeDescriptor(t)),!r.accepts(t.range))?null:r}getWorkspaceByDescriptor(t){let r=this.tryWorkspaceByDescriptor(t);if(r===null)throw new Error(`Workspace not found (${Mu.prettyDescriptor(this.configuration,t)})`);return r}tryWorkspaceByLocator(t){let r=this.tryWorkspaceByIdent(t);return r===null||(Mu.isVirtualLocator(t)&&(t=Mu.devirtualizeLocator(t)),r.anchoredLocator.locatorHash!==t.locatorHash)?null:r}getWorkspaceByLocator(t){let r=this.tryWorkspaceByLocator(t);if(!r)throw new Error(`Workspace not found (${Mu.prettyLocator(this.configuration,t)})`);return r}deleteDescriptor(t){this.storedResolutions.delete(t),this.storedDescriptors.delete(t)}deleteLocator(t){this.originalPackages.delete(t),this.storedPackages.delete(t),this.accessibleLocators.delete(t)}forgetResolution(t){if("descriptorHash"in t){let r=this.storedResolutions.get(t.descriptorHash);this.deleteDescriptor(t.descriptorHash);let s=new Set(this.storedResolutions.values());typeof r<"u"&&!s.has(r)&&this.deleteLocator(r)}if("locatorHash"in t){this.deleteLocator(t.locatorHash);for(let[r,s]of this.storedResolutions)s===t.locatorHash&&this.deleteDescriptor(r)}}forgetTransientResolutions(){let t=this.configuration.makeResolver(),r=new Map;for(let[s,a]of this.storedResolutions.entries()){let o=r.get(a);o||r.set(a,o=new Set),o.add(s)}for(let s of this.originalPackages.values()){let a;try{a=t.shouldPersistResolution(s,{project:this,resolver:t})}catch{a=!1}if(!a){this.deleteLocator(s.locatorHash);let o=r.get(s.locatorHash);if(o){r.delete(s.locatorHash);for(let g of o)this.deleteDescriptor(g)}}}}forgetVirtualResolutions(){for(let t of this.storedPackages.values())for(let[r,s]of t.dependencies)Mu.isVirtualDescriptor(s)&&t.dependencies.set(r,Mu.devirtualizeDescriptor(s))}getDependencyMeta(t,r){let s={},o=this.topLevelWorkspace.manifest.dependenciesMeta.get(Mu.stringifyIdent(t));if(!o)return s;let g=o.get(null);if(g&&Object.assign(s,g),r===null||!V6s.default.valid(r))return s;for(let[p,f]of o)p!==null&&p===r&&Object.assign(s,f);return s}async findLocatorForLocation(t,{strict:r=!1}={}){let s=new Bmn.ThrowReport,a=this.configuration.getLinkers(),o={project:this,report:s};for(let g of a){let p=await g.findPackageLocator(t,o);if(p){if(r&&(await g.findPackageLocation(p,o)).replace(Smn,"")!==t.replace(Smn,""))continue;return p}}return null}async loadUserConfig(){let t=Mf.ppath.join(this.cwd,".pnp.cjs");await Mf.xfs.existsPromise(t)&&P_.dynamicRequire(t).setup();let r=Mf.ppath.join(this.cwd,"yarn.config.cjs");return await Mf.xfs.existsPromise(r)?P_.dynamicRequire(r):null}async preparePackage(t,{resolver:r,resolveOptions:s}){let a=await this.configuration.getPackageExtensions(),o=this.configuration.normalizePackage(t,{packageExtensions:a});for(let[g,p]of o.dependencies){let f=await this.configuration.reduceHook(y=>y.reduceDependency,p,this,o,p,{resolver:r,resolveOptions:s});if(!Mu.areIdentsEqual(p,f))throw new Error("Assertion failed: The descriptor ident cannot be changed through aliases");let m=r.bindDescriptor(f,o,s);o.dependencies.set(g,m)}return o}async resolveEverything(t){if(!this.workspacesByCwd||!this.workspacesByIdent)throw new Error("Workspaces must have been setup before calling this function");this.forgetVirtualResolutions();let r=new Map(this.originalPackages),s=[];t.lockfileOnly||this.forgetTransientResolutions();let a=t.resolver||this.configuration.makeResolver(),o=new P6s.LegacyMigrationResolver(a);await o.setup(this,{report:t.report});let g=t.lockfileOnly?[new M6s.RunInstallPleaseResolver(a)]:[o,a],p=new bmn.MultiResolver([new O6s.LockfileResolver(a),...g]),f=new bmn.MultiResolver([...g]),m=this.configuration.makeFetcher(),y=t.lockfileOnly?{project:this,report:t.report,resolver:p}:{project:this,report:t.report,resolver:p,fetchOptions:{project:this,cache:t.cache,checksums:this.storedChecksums,report:t.report,fetcher:m,cacheOptions:{mirrorWriteOnly:!0}}},B=new Map,v=new Map,G=new Map,T=new Map,O=new Map,X=new Map,U=this.topLevelWorkspace.anchoredLocator,le=new Set,ae=[],ge=H6s.getArchitectureSet(),fe=this.configuration.getSupportedArchitectures();await t.report.startProgressPromise(Hne.Report.progressViaTitle(),async Xe=>{let ft=async dr=>{let Ar=await P_.prettifyAsyncErrors(async()=>await p.resolve(dr,y),Or=>`${Mu.prettyLocator(this.configuration,dr)}: ${Or}`);if(!Mu.areLocatorsEqual(dr,Ar))throw new Error(`Assertion failed: The locator cannot be changed by the resolver (went from ${Mu.prettyLocator(this.configuration,dr)} to ${Mu.prettyLocator(this.configuration,Ar)})`);T.set(Ar.locatorHash,Ar),!r.delete(Ar.locatorHash)&&!this.tryWorkspaceByLocator(Ar)&&s.push(Ar);let Fr=await this.preparePackage(Ar,{resolver:p,resolveOptions:y}),$r=P_.allSettledSafe([...Fr.dependencies.values()].map(Or=>Ot(Or)));return ae.push($r),$r.catch(()=>{}),v.set(Fr.locatorHash,Fr),Fr},Gt=async dr=>{let Ar=O.get(dr.locatorHash);if(typeof Ar<"u")return Ar;let or=Promise.resolve().then(()=>ft(dr));return O.set(dr.locatorHash,or),or},er=async(dr,Ar)=>{let or=await Ot(Ar);return B.set(dr.descriptorHash,dr),G.set(dr.descriptorHash,or.locatorHash),or},Ur=async dr=>{Xe.setTitle(Mu.prettyDescriptor(this.configuration,dr));let Ar=this.resolutionAliases.get(dr.descriptorHash);if(typeof Ar<"u")return er(dr,this.storedDescriptors.get(Ar));let or=p.getResolutionDependencies(dr,y),Fr=Object.fromEntries(await P_.allSettledSafe(Object.entries(or).map(async([In,Br])=>{let tr=p.bindDescriptor(Br,U,y),gn=await Ot(tr);return le.add(gn.locatorHash),[In,gn]}))),Or=(await P_.prettifyAsyncErrors(async()=>await p.getCandidates(dr,Fr,y),In=>`${Mu.prettyDescriptor(this.configuration,dr)}: ${In}`))[0];if(typeof Or>"u")throw new Hne.ReportError(hb.MessageName.RESOLUTION_FAILED,`${Mu.prettyDescriptor(this.configuration,dr)}: No candidates found`);if(t.checkResolutions){let{locators:In}=await f.getSatisfying(dr,Fr,[Or],{...y,resolver:f});if(!In.find(Br=>Br.locatorHash===Or.locatorHash))throw new Hne.ReportError(hb.MessageName.RESOLUTION_MISMATCH,`Invalid resolution ${Mu.prettyResolution(this.configuration,dr,Or)}`)}return B.set(dr.descriptorHash,dr),G.set(dr.descriptorHash,Or.locatorHash),Gt(Or)},Ot=dr=>{let Ar=X.get(dr.descriptorHash);if(typeof Ar<"u")return Ar;B.set(dr.descriptorHash,dr);let or=Promise.resolve().then(()=>Ur(dr));return X.set(dr.descriptorHash,or),or};for(let dr of this.workspaces){let Ar=dr.anchoredDescriptor;ae.push(Ot(Ar))}for(;ae.length>0;){let dr=[...ae];ae.length=0,await P_.allSettledSafe(dr)}});let pe=P_.mapAndFilter(r.values(),Xe=>this.tryWorkspaceByLocator(Xe)?P_.mapAndFilter.skip:Xe);if(s.length>0||pe.length>0){let Xe=new Set(this.workspaces.flatMap(dr=>{let Ar=v.get(dr.anchoredLocator.locatorHash);if(!Ar)throw new Error("Assertion failed: The workspace should have been resolved");return Array.from(Ar.dependencies.values(),or=>{let Fr=G.get(or.descriptorHash);if(!Fr)throw new Error("Assertion failed: The resolution should have been registered");return Fr})})),ft=dr=>Xe.has(dr.locatorHash)?"0":"1",Gt=dr=>Mu.stringifyLocator(dr),er=P_.sortMap(s,[ft,Gt]),Ur=P_.sortMap(pe,[ft,Gt]),Ot=t.report.getRecommendedLength();er.length>0&&t.report.reportInfo(hb.MessageName.UPDATED_RESOLUTION_RECORD,`${Up.pretty(this.configuration,"+",Up.Type.ADDED)} ${Up.prettyTruncatedLocatorList(this.configuration,er,Ot)}`),Ur.length>0&&t.report.reportInfo(hb.MessageName.UPDATED_RESOLUTION_RECORD,`${Up.pretty(this.configuration,"-",Up.Type.REMOVED)} ${Up.prettyTruncatedLocatorList(this.configuration,Ur,Ot)}`)}let he=new Set(this.resolutionAliases.values()),be=new Set(v.keys()),Te=new Set,ke=new Map,x=[],et=new Map;q6s({project:this,accessibleLocators:Te,volatileDescriptors:he,optionalBuilds:be,peerRequirements:ke,peerWarnings:x,peerRequirementNodes:et,allDescriptors:B,allResolutions:G,allPackages:v});for(let Xe of le)be.delete(Xe);for(let Xe of he)B.delete(Xe),G.delete(Xe);let Ue=new Set,Je=new Set;for(let Xe of v.values())Xe.conditions!=null&&be.has(Xe.locatorHash)&&(Mu.isPackageCompatible(Xe,fe)||(Mu.isPackageCompatible(Xe,ge)&&t.report.reportWarningOnce(hb.MessageName.GHOST_ARCHITECTURE,`${Mu.prettyLocator(this.configuration,Xe)}: Your current architecture (${process.platform}-${process.arch}) is supported by this package, but is missing from the ${Up.pretty(this.configuration,"supportedArchitectures",Up.Type.SETTING)} setting`),Je.add(Xe.locatorHash)),Ue.add(Xe.locatorHash));this.storedResolutions=G,this.storedDescriptors=B,this.storedPackages=v,this.accessibleLocators=Te,this.conditionalLocators=Ue,this.disabledLocators=Je,this.originalPackages=T,this.optionalBuilds=be,this.peerRequirements=ke,this.peerWarnings=x,this.peerRequirementNodes=et}async fetchEverything({cache:t,report:r,fetcher:s,mode:a,persistProject:o=!0}){let g={mockedPackages:this.disabledLocators,unstablePackages:this.conditionalLocators},p=s||this.configuration.makeFetcher(),f={checksums:this.storedChecksums,project:this,cache:t,fetcher:p,report:r,cacheOptions:g},m=Array.from(new Set(P_.sortMap(this.storedResolutions.values(),[T=>{let O=this.storedPackages.get(T);if(!O)throw new Error("Assertion failed: The locator should have been registered");return Mu.stringifyLocator(O)}])));a===TEe.UpdateLockfile&&(m=m.filter(T=>!this.storedChecksums.has(T)));let y=!1,B=Hne.Report.progressViaCounter(m.length);await r.reportProgress(B);let v=(0,qKt.default)(K6s);if(await P_.allSettledSafe(m.map(T=>v(async()=>{let O=this.storedPackages.get(T);if(!O)throw new Error("Assertion failed: The locator should have been registered");if(Mu.isVirtualLocator(O))return;let X;try{X=await p.fetch(O,f)}catch(U){U.message=`${Mu.prettyLocator(this.configuration,O)}: ${U.message}`,r.reportExceptionOnce(U),y=U;return}X.checksum!=null?this.storedChecksums.set(O.locatorHash,X.checksum):this.storedChecksums.delete(O.locatorHash),X.releaseFs&&X.releaseFs()}).finally(()=>{B.tick()}))),y)throw y;let G=o&&a!==TEe.UpdateLockfile?await this.cacheCleanup({cache:t,report:r}):null;if(r.cacheMisses.size>0||G){let O=(await Promise.all([...r.cacheMisses].map(async pe=>{let he=this.storedPackages.get(pe),be=this.storedChecksums.get(pe)??null,Te=t.getLocatorPath(he,be);return(await Mf.xfs.statPromise(Te)).size}))).reduce((pe,he)=>pe+he,0)-(G?.size??0),X=r.cacheMisses.size,U=G?.count??0,le=`${P_.plural(X,{zero:"No new packages",one:"A package was",more:`${Up.pretty(this.configuration,X,Up.Type.NUMBER)} packages were`})} added to the project`,ae=`${P_.plural(U,{zero:"none were",one:"one was",more:`${Up.pretty(this.configuration,U,Up.Type.NUMBER)} were`})} removed`,ge=O!==0?` (${Up.pretty(this.configuration,O,Up.Type.SIZE_DIFF)})`:"",fe=U>0?X>0?`${le}, and ${ae}${ge}.`:`${le}, but ${ae}${ge}.`:`${le}${ge}.`;r.reportInfo(hb.MessageName.FETCH_NOT_CACHED,fe)}}async linkEverything({cache:t,report:r,fetcher:s,mode:a}){let o={mockedPackages:this.disabledLocators,unstablePackages:this.conditionalLocators,skipIntegrityCheck:!0},g=s||this.configuration.makeFetcher(),p={checksums:this.storedChecksums,project:this,cache:t,fetcher:g,report:r,cacheOptions:o},f=this.configuration.getLinkers(),m={project:this,report:r},y=new Map(f.map(Ue=>{let Je=Ue.makeInstaller(m),Xe=Ue.getCustomDataKey(),ft=this.linkersCustomData.get(Xe);return typeof ft<"u"&&Je.attachCustomData(ft),[Ue,Je]})),B=new Map,v=new Map,G=new Map,T=new Map(await P_.allSettledSafe([...this.accessibleLocators].map(async Ue=>{let Je=this.storedPackages.get(Ue);if(!Je)throw new Error("Assertion failed: The locator should have been registered");return[Ue,await g.fetch(Je,p)]}))),O=[],X=new Set,U=[];for(let Ue of this.accessibleLocators){let Je=this.storedPackages.get(Ue);if(typeof Je>"u")throw new Error("Assertion failed: The locator should have been registered");let Xe=T.get(Je.locatorHash);if(typeof Xe>"u")throw new Error("Assertion failed: The fetch result should have been registered");let ft=[],Gt=Ur=>{ft.push(Ur)},er=this.tryWorkspaceByLocator(Je);if(er!==null){let Ur=[],{scripts:Ot}=er.manifest;for(let Ar of["preinstall","install","postinstall"])Ot.has(Ar)&&Ur.push({type:$Ve.BuildDirectiveType.SCRIPT,script:Ar});try{for(let[Ar,or]of y)if(Ar.supportsPackage(Je,m)&&(await or.installPackage(Je,Xe,{holdFetchResult:Gt})).buildRequest!==null)throw new Error("Assertion failed: Linkers can't return build directives for workspaces; this responsibility befalls to the Yarn core")}finally{ft.length===0?Xe.releaseFs?.():O.push(P_.allSettledSafe(ft).catch(()=>{}).then(()=>{Xe.releaseFs?.()}))}let dr=Mf.ppath.join(Xe.packageFs.getRealPath(),Xe.prefixPath);v.set(Je.locatorHash,dr),!Mu.isVirtualLocator(Je)&&Ur.length>0&&G.set(Je.locatorHash,{buildDirectives:Ur,buildLocations:[dr]})}else{let Ur=f.find(Ar=>Ar.supportsPackage(Je,m));if(!Ur)throw new Hne.ReportError(hb.MessageName.LINKER_NOT_FOUND,`${Mu.prettyLocator(this.configuration,Je)} isn't supported by any available linker`);let Ot=y.get(Ur);if(!Ot)throw new Error("Assertion failed: The installer should have been registered");let dr;try{dr=await Ot.installPackage(Je,Xe,{holdFetchResult:Gt})}finally{ft.length===0?Xe.releaseFs?.():O.push(P_.allSettledSafe(ft).then(()=>{}).then(()=>{Xe.releaseFs?.()}))}B.set(Je.locatorHash,Ur),v.set(Je.locatorHash,dr.packageLocation),dr.buildRequest&&dr.packageLocation&&(dr.buildRequest.skipped?(X.add(Je.locatorHash),this.skippedBuilds.has(Je.locatorHash)||U.push([Je,dr.buildRequest.explain])):G.set(Je.locatorHash,{buildDirectives:dr.buildRequest.directives,buildLocations:[dr.packageLocation]}))}}let le=new Map;for(let Ue of this.accessibleLocators){let Je=this.storedPackages.get(Ue);if(!Je)throw new Error("Assertion failed: The locator should have been registered");let Xe=this.tryWorkspaceByLocator(Je)!==null,ft=async(Gt,er)=>{let Ur=v.get(Je.locatorHash);if(typeof Ur>"u")throw new Error(`Assertion failed: The package (${Mu.prettyLocator(this.configuration,Je)}) should have been registered`);let Ot=[];for(let dr of Je.dependencies.values()){let Ar=this.storedResolutions.get(dr.descriptorHash);if(typeof Ar>"u")throw new Error(`Assertion failed: The resolution (${Mu.prettyDescriptor(this.configuration,dr)}, from ${Mu.prettyLocator(this.configuration,Je)})should have been registered`);let or=this.storedPackages.get(Ar);if(typeof or>"u")throw new Error(`Assertion failed: The package (${Ar}, resolved from ${Mu.prettyDescriptor(this.configuration,dr)}) should have been registered`);let Fr=this.tryWorkspaceByLocator(or)===null?B.get(Ar):null;if(typeof Fr>"u")throw new Error(`Assertion failed: The package (${Ar}, resolved from ${Mu.prettyDescriptor(this.configuration,dr)}) should have been registered`);Fr===Gt||Fr===null?v.get(or.locatorHash)!==null&&Ot.push([dr,or]):!Xe&&Ur!==null&&P_.getArrayWithDefault(le,Ar).push(Ur)}Ur!==null&&await er.attachInternalDependencies(Je,Ot)};if(Xe)for(let[Gt,er]of y)Gt.supportsPackage(Je,m)&&await ft(Gt,er);else{let Gt=B.get(Je.locatorHash);if(!Gt)throw new Error("Assertion failed: The linker should have been found");let er=y.get(Gt);if(!er)throw new Error("Assertion failed: The installer should have been registered");await ft(Gt,er)}}for(let[Ue,Je]of le){let Xe=this.storedPackages.get(Ue);if(!Xe)throw new Error("Assertion failed: The package should have been registered");let ft=B.get(Xe.locatorHash);if(!ft)throw new Error("Assertion failed: The linker should have been found");let Gt=y.get(ft);if(!Gt)throw new Error("Assertion failed: The installer should have been registered");await Gt.attachExternalDependents(Xe,Je)}let ae=new Map;for(let[Ue,Je]of y){let Xe=await Je.finalizeInstall();for(let ft of Xe?.records??[])ft.buildRequest.skipped?(X.add(ft.locator.locatorHash),this.skippedBuilds.has(ft.locator.locatorHash)||U.push([ft.locator,ft.buildRequest.explain])):G.set(ft.locator.locatorHash,{buildDirectives:ft.buildRequest.directives,buildLocations:ft.buildLocations});typeof Xe?.customData<"u"&&ae.set(Ue.getCustomDataKey(),Xe.customData)}if(this.linkersCustomData=ae,await P_.allSettledSafe(O),a===TEe.SkipBuild)return;for(let[,Ue]of P_.sortMap(U,([Je])=>Mu.stringifyLocator(Je)))Ue(r);let ge=new Set(G.keys()),fe=(0,jKt.createHash)("sha512");fe.update(process.versions.node),await this.configuration.triggerHook(Ue=>Ue.globalHashGeneration,this,Ue=>{fe.update("\0"),fe.update(Ue)});let pe=fe.digest("hex"),he=new Map,be=Ue=>{let Je=he.get(Ue.locatorHash);if(typeof Je<"u")return Je;let Xe=this.storedPackages.get(Ue.locatorHash);if(typeof Xe>"u")throw new Error("Assertion failed: The package should have been registered");let ft=(0,jKt.createHash)("sha512");ft.update(Ue.locatorHash),he.set(Ue.locatorHash,"");for(let Gt of Xe.dependencies.values()){let er=this.storedResolutions.get(Gt.descriptorHash);if(typeof er>"u")throw new Error(`Assertion failed: The resolution (${Mu.prettyDescriptor(this.configuration,Gt)}) should have been registered`);let Ur=this.storedPackages.get(er);if(typeof Ur>"u")throw new Error("Assertion failed: The package should have been registered");ft.update(be(Ur))}return Je=ft.digest("hex"),he.set(Ue.locatorHash,Je),Je},Te=(Ue,Je)=>{let Xe=(0,jKt.createHash)("sha512");Xe.update(pe),Xe.update(be(Ue));for(let ft of Je)Xe.update(ft);return Xe.digest("hex")},ke=new Map,x=!1,et=Ue=>{let Je=new Set([Ue.locatorHash]);for(let Xe of Je){let ft=this.storedPackages.get(Xe);if(!ft)throw new Error("Assertion failed: The package should have been registered");for(let Gt of ft.dependencies.values()){let er=this.storedResolutions.get(Gt.descriptorHash);if(!er)throw new Error(`Assertion failed: The resolution (${Mu.prettyDescriptor(this.configuration,Gt)}) should have been registered`);if(er!==Ue.locatorHash&&ge.has(er))return!1;let Ur=this.storedPackages.get(er);if(!Ur)throw new Error("Assertion failed: The package should have been registered");let Ot=this.tryWorkspaceByLocator(Ur);if(Ot){if(Ot.anchoredLocator.locatorHash!==Ue.locatorHash&&ge.has(Ot.anchoredLocator.locatorHash))return!1;Je.add(Ot.anchoredLocator.locatorHash)}Je.add(er)}}return!0};for(;ge.size>0;){let Ue=ge.size,Je=[];for(let Xe of ge){let ft=this.storedPackages.get(Xe);if(!ft)throw new Error("Assertion failed: The package should have been registered");if(!et(ft))continue;let Gt=G.get(ft.locatorHash);if(!Gt)throw new Error("Assertion failed: The build directive should have been registered");let er=Te(ft,Gt.buildLocations);if(this.storedBuildState.get(ft.locatorHash)===er){ke.set(ft.locatorHash,er),ge.delete(Xe);continue}x||(await this.persistInstallStateFile(),x=!0),this.storedBuildState.has(ft.locatorHash)?r.reportInfo(hb.MessageName.MUST_REBUILD,`${Mu.prettyLocator(this.configuration,ft)} must be rebuilt because its dependency tree changed`):r.reportInfo(hb.MessageName.MUST_BUILD,`${Mu.prettyLocator(this.configuration,ft)} must be built because it never has been before or the last one failed`);let Ur=Gt.buildLocations.map(async Ot=>{if(!Mf.ppath.isAbsolute(Ot))throw new Error(`Assertion failed: Expected the build location to be absolute (not ${Ot})`);for(let dr of Gt.buildDirectives){let Ar=`# This file contains the result of Yarn building a package (${Mu.stringifyLocator(ft)}) -`;switch(dr.type){case $Ve.BuildDirectiveType.SCRIPT:Ar+=`# Script name: ${dr.script} -`;break;case $Ve.BuildDirectiveType.SHELLCODE:Ar+=`# Script code: ${dr.script} -`;break}let or=null;if(!await Mf.xfs.mktempPromise(async $r=>{let Or=Mf.ppath.join($r,"build.log"),{stdout:In,stderr:Br}=this.configuration.getSubprocessStreams(Or,{header:Ar,prefix:Mu.prettyLocator(this.configuration,ft),report:r}),tr;try{switch(dr.type){case $Ve.BuildDirectiveType.SCRIPT:tr=await vmn.executePackageScript(ft,dr.script,[],{cwd:Ot,project:this,stdin:or,stdout:In,stderr:Br});break;case $Ve.BuildDirectiveType.SHELLCODE:tr=await vmn.executePackageShellcode(ft,dr.script,[],{cwd:Ot,project:this,stdin:or,stdout:In,stderr:Br});break}}catch(we){Br.write(we.stack),tr=1}if(In.end(),Br.end(),tr===0)return!0;Mf.xfs.detachTemp($r);let gn=`${Mu.prettyLocator(this.configuration,ft)} couldn't be built successfully (exit code ${Up.pretty(this.configuration,tr,Up.Type.NUMBER)}, logs can be found here: ${Up.pretty(this.configuration,Or,Up.Type.PATH)})`,Gn=this.optionalBuilds.has(ft.locatorHash);return Gn?r.reportInfo(hb.MessageName.BUILD_FAILED,gn):r.reportError(hb.MessageName.BUILD_FAILED,gn),Emn.SUPPORTS_GROUPS&&r.reportFold(Zot.npath.fromPortablePath(Or),Mf.xfs.readFileSync(Or,"utf8")),Gn}))return!1}return!0});Je.push(...Ur,Promise.allSettled(Ur).then(Ot=>{ge.delete(Xe),Ot.every(dr=>dr.status==="fulfilled"&&dr.value===!0)&&ke.set(ft.locatorHash,er)}))}if(await P_.allSettledSafe(Je),Ue===ge.size){let Xe=Array.from(ge).map(ft=>{let Gt=this.storedPackages.get(ft);if(!Gt)throw new Error("Assertion failed: The package should have been registered");return Mu.prettyLocator(this.configuration,Gt)}).join(", ");r.reportError(hb.MessageName.CYCLIC_DEPENDENCIES,`Some packages have circular dependencies that make their build order unsatisfiable - as a result they won't be built (affected packages are: ${Xe})`);break}}this.storedBuildState=ke,this.skippedBuilds=X}async installWithNewReport(t,r){return(await Emn.StreamReport.start({configuration:this.configuration,json:t.json,stdout:t.stdout,forceSectionAlignment:!0,includeLogs:!t.json&&!t.quiet,includeVersion:!0},async a=>{await this.install({...r,report:a})})).exitCode()}async install(t){let r=this.configuration.get("nodeLinker");qVe.Configuration.telemetry?.reportInstall(r);let s=!1;if(await t.report.startTimerPromise("Project validation",{skipIfEmpty:!0},async()=>{this.configuration.get("enableOfflineMode")&&t.report.reportWarning(hb.MessageName.OFFLINE_MODE_ENABLED,"Offline work is enabled; Yarn won't fetch packages from the remote registry if it can avoid it"),await this.configuration.triggerHook(y=>y.validateProject,this,{reportWarning:(y,B)=>{t.report.reportWarning(y,B)},reportError:(y,B)=>{t.report.reportError(y,B),s=!0}})}),s)return;let a=await this.configuration.getPackageExtensions();for(let y of a.values())for(let[,B]of y)for(let v of B)v.status=Fot.PackageExtensionStatus.Inactive;let o=Mf.ppath.join(this.cwd,Mf.Filename.lockfile),g=null;if(t.immutable)try{g=await Mf.xfs.readFilePromise(o,"utf8")}catch(y){throw y.code==="ENOENT"?new Hne.ReportError(hb.MessageName.FROZEN_LOCKFILE_EXCEPTION,"The lockfile would have been created by this install, which is explicitly forbidden."):y}await t.report.startTimerPromise("Resolution step",async()=>{await this.resolveEverything(t)}),await t.report.startTimerPromise("Post-resolution validation",{skipIfEmpty:!0},async()=>{e7s(this,t.report);for(let[,y]of a)for(let[,B]of y)for(let v of B)if(v.userProvided){let G=Up.pretty(this.configuration,v,Up.Type.PACKAGE_EXTENSION);switch(v.status){case Fot.PackageExtensionStatus.Inactive:t.report.reportWarning(hb.MessageName.UNUSED_PACKAGE_EXTENSION,`${G}: No matching package in the dependency tree; you may not need this rule anymore.`);break;case Fot.PackageExtensionStatus.Redundant:t.report.reportWarning(hb.MessageName.REDUNDANT_PACKAGE_EXTENSION,`${G}: This rule seems redundant when applied on the original package; the extension may have been applied upstream.`);break}}if(g!==null){let y=(0,Mf.normalizeLineEndings)(g,this.generateLockfile());if(y!==g){let B=(0,L6s.structuredPatch)(o,o,g,y,void 0,void 0,{maxEditLength:100});if(B){t.report.reportSeparator();for(let v of B.hunks){t.report.reportInfo(null,`@@ -${v.oldStart},${v.oldLines} +${v.newStart},${v.newLines} @@`);for(let G of v.lines)G.startsWith("+")?t.report.reportError(hb.MessageName.FROZEN_LOCKFILE_EXCEPTION,Up.pretty(this.configuration,G,Up.Type.ADDED)):G.startsWith("-")?t.report.reportError(hb.MessageName.FROZEN_LOCKFILE_EXCEPTION,Up.pretty(this.configuration,G,Up.Type.REMOVED)):t.report.reportInfo(null,Up.pretty(this.configuration,G,"grey"))}t.report.reportSeparator()}throw new Hne.ReportError(hb.MessageName.FROZEN_LOCKFILE_EXCEPTION,"The lockfile would have been modified by this install, which is explicitly forbidden.")}}});for(let y of a.values())for(let[,B]of y)for(let v of B)v.userProvided&&v.status===Fot.PackageExtensionStatus.Active&&qVe.Configuration.telemetry?.reportPackageExtension(Up.json(v,Up.Type.PACKAGE_EXTENSION));await t.report.startTimerPromise("Fetch step",async()=>{await this.fetchEverything(t)});let p=t.immutable?[...new Set(this.configuration.get("immutablePatterns"))].sort():[],f=await Promise.all(p.map(async y=>WJ.checksumPattern(y,{cwd:this.cwd})));(typeof t.persistProject>"u"||t.persistProject)&&await this.persist(),await t.report.startTimerPromise("Link step",async()=>{if(t.mode===TEe.UpdateLockfile){t.report.reportWarning(hb.MessageName.UPDATE_LOCKFILE_ONLY_SKIP_LINK,`Skipped due to ${Up.pretty(this.configuration,"mode=update-lockfile",Up.Type.CODE)}`);return}await this.linkEverything(t);let y=await Promise.all(p.map(async B=>WJ.checksumPattern(B,{cwd:this.cwd})));for(let B=0;B{await this.configuration.triggerHook(y=>y.validateProjectAfterInstall,this,{reportWarning:(y,B)=>{t.report.reportWarning(y,B)},reportError:(y,B)=>{t.report.reportError(y,B),m=!0}})}),!m&&await this.configuration.triggerHook(y=>y.afterAllInstalled,this,t)}generateLockfile(){let t=new Map;for(let[o,g]of this.storedResolutions.entries()){let p=t.get(g);p||t.set(g,p=new Set),p.add(o)}let r={},{cacheKey:s}=W6s.Cache.getCacheKey(this.configuration);r.__metadata={version:xO.LOCKFILE_VERSION,cacheKey:s};for(let[o,g]of t.entries()){let p=this.originalPackages.get(o);if(!p)continue;let f=[];for(let B of g){let v=this.storedDescriptors.get(B);if(!v)throw new Error("Assertion failed: The descriptor should have been registered");f.push(v)}let m=f.map(B=>Mu.stringifyDescriptor(B)).sort().join(", "),y=new ymn.Manifest;y.version=p.linkType===X6s.LinkType.HARD?p.version:"0.0.0-use.local",y.languageName=p.languageName,y.dependencies=new Map(p.dependencies),y.peerDependencies=new Map(p.peerDependencies),y.dependenciesMeta=new Map(p.dependenciesMeta),y.peerDependenciesMeta=new Map(p.peerDependenciesMeta),y.bin=new Map(p.bin),r[m]={...y.exportTo({},{compatibilityMode:!1}),linkType:p.linkType.toLowerCase(),resolution:Mu.stringifyLocator(p),checksum:this.storedChecksums.get(p.locatorHash),conditions:p.conditions||void 0}}return`${[`# This file is generated by running "yarn install" inside your project. +`}function mCn(e,t,r,s,a,o,g){return DKt(CCn(e,t,r,s,a,o,g))}function o8s(e,t,r,s,a,o){return mCn(e,e,t,r,s,a,o)}});var _Cn=z(Not=>{"use strict";Object.defineProperty(Not,"__esModule",{value:!0});Not.arrayEqual=a8s;Not.arrayStartsWith=hCn;function a8s(e,t){return e.length!==t.length?!1:hCn(e,t)}function hCn(e,t){if(t.length>e.length)return!1;for(var r=0;r{"use strict";Object.defineProperty(Dot,"__esModule",{value:!0});Dot.calcLineCount=RCn;Dot.merge=p8s;var c8s=xKt(),l8s=wot(),kKt=_Cn();function NEe(e){return d8s(e)||A8s(e)||g8s(e)||u8s()}function u8s(){throw new TypeError(`Invalid attempt to spread non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function g8s(e,t){if(e){if(typeof e=="string")return GKt(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return GKt(e,t)}}function A8s(e){if(typeof Symbol<"u"&&Symbol.iterator in Object(e))return Array.from(e)}function d8s(e){if(Array.isArray(e))return GKt(e)}function GKt(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,s=new Array(t);r{"use strict";Object.defineProperty(LKt,"__esModule",{value:!0});LKt.reversePatch=GCn;function xCn(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);t&&(s=s.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,s)}return r}function kCn(e){for(var t=1;t{"use strict";Object.defineProperty(VKt,"__esModule",{value:!0});VKt.convertChangesToDMP=h8s;function h8s(e){for(var t=[],r,s,a=0;a{"use strict";Object.defineProperty(WKt,"__esModule",{value:!0});WKt.convertChangesToXML=_8s;function _8s(e){for(var t=[],r=0;r"):s.removed&&t.push(""),t.push(y8s(s.value)),s.added?t.push(""):s.removed&&t.push("")}return t.join("")}function y8s(e){var t=e;return t=t.replace(/&/g,"&"),t=t.replace(//g,">"),t=t.replace(/"/g,"""),t}});var PKt=z(U1=>{"use strict";Object.defineProperty(U1,"__esModule",{value:!0});Object.defineProperty(U1,"Diff",{enumerable:!0,get:function(){return b8s.default}});Object.defineProperty(U1,"diffChars",{enumerable:!0,get:function(){return E8s.diffChars}});Object.defineProperty(U1,"diffWords",{enumerable:!0,get:function(){return VCn.diffWords}});Object.defineProperty(U1,"diffWordsWithSpace",{enumerable:!0,get:function(){return VCn.diffWordsWithSpace}});Object.defineProperty(U1,"diffLines",{enumerable:!0,get:function(){return WCn.diffLines}});Object.defineProperty(U1,"diffTrimmedLines",{enumerable:!0,get:function(){return WCn.diffTrimmedLines}});Object.defineProperty(U1,"diffSentences",{enumerable:!0,get:function(){return B8s.diffSentences}});Object.defineProperty(U1,"diffCss",{enumerable:!0,get:function(){return v8s.diffCss}});Object.defineProperty(U1,"diffJson",{enumerable:!0,get:function(){return PCn.diffJson}});Object.defineProperty(U1,"canonicalize",{enumerable:!0,get:function(){return PCn.canonicalize}});Object.defineProperty(U1,"diffArrays",{enumerable:!0,get:function(){return S8s.diffArrays}});Object.defineProperty(U1,"applyPatch",{enumerable:!0,get:function(){return OCn.applyPatch}});Object.defineProperty(U1,"applyPatches",{enumerable:!0,get:function(){return OCn.applyPatches}});Object.defineProperty(U1,"parsePatch",{enumerable:!0,get:function(){return w8s.parsePatch}});Object.defineProperty(U1,"merge",{enumerable:!0,get:function(){return T8s.merge}});Object.defineProperty(U1,"reversePatch",{enumerable:!0,get:function(){return N8s.reversePatch}});Object.defineProperty(U1,"structuredPatch",{enumerable:!0,get:function(){return xot.structuredPatch}});Object.defineProperty(U1,"createTwoFilesPatch",{enumerable:!0,get:function(){return xot.createTwoFilesPatch}});Object.defineProperty(U1,"createPatch",{enumerable:!0,get:function(){return xot.createPatch}});Object.defineProperty(U1,"formatPatch",{enumerable:!0,get:function(){return xot.formatPatch}});Object.defineProperty(U1,"convertChangesToDMP",{enumerable:!0,get:function(){return R8s.convertChangesToDMP}});Object.defineProperty(U1,"convertChangesToXML",{enumerable:!0,get:function(){return D8s.convertChangesToXML}});var b8s=x8s(Rj()),E8s=iCn(),VCn=aCn(),WCn=Bot(),B8s=cCn(),v8s=lCn(),PCn=gCn(),S8s=ACn(),OCn=ICn(),w8s=wot(),T8s=DCn(),N8s=FCn(),xot=xKt(),R8s=ZCn(),D8s=LCn();function x8s(e){return e&&e.__esModule?e:{default:e}}});var MCn=z((I5c,QCn)=>{var k8s=fH(),G8s=Y9e(),F8s=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Z8s=/^\w*$/;function L8s(e,t){if(k8s(e))return!1;var r=typeof e;return r=="number"||r=="symbol"||r=="boolean"||e==null||G8s(e)?!0:Z8s.test(e)||!F8s.test(e)||t!=null&&e in Object(t)}QCn.exports=L8s});var XCn=z((C5c,YCn)=>{var HCn=Yrt(),V8s="Expected a function";function OKt(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(V8s);var r=function(){var s=arguments,a=t?t.apply(this,s):s[0],o=r.cache;if(o.has(a))return o.get(a);var g=e.apply(this,s);return r.cache=o.set(a,g)||o,g};return r.cache=new(OKt.Cache||HCn),r}OKt.Cache=HCn;YCn.exports=OKt});var UCn=z((m5c,JCn)=>{var W8s=XCn(),P8s=500;function O8s(e){var t=W8s(e,function(s){return r.size===P8s&&r.clear(),s}),r=t.cache;return t}JCn.exports=O8s});var jCn=z((h5c,KCn)=>{var Q8s=UCn(),M8s=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,H8s=/\\(\\)?/g,Y8s=Q8s(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(M8s,function(r,s,a,o){t.push(a?o.replace(H8s,"$1"):s||r)}),t});KCn.exports=Y8s});var JAe=z((_5c,zCn)=>{var X8s=fH(),J8s=MCn(),U8s=jCn(),K8s=tst();function j8s(e,t){return X8s(e)?e:J8s(e,t)?[e]:U8s(K8s(e))}zCn.exports=j8s});var KVe=z((y5c,qCn)=>{var z8s=Y9e(),q8s=1/0;function $8s(e){if(typeof e=="string"||z8s(e))return e;var t=e+"";return t=="0"&&1/e==-q8s?"-0":t}qCn.exports=$8s});var kot=z((b5c,$Cn)=>{var e6s=JAe(),t6s=KVe();function r6s(e,t){t=e6s(t,e);for(var r=0,s=t.length;e!=null&&r{var n6s=ont(),i6s=JAe(),s6s=k9e(),emn=fW(),o6s=KVe();function a6s(e,t,r,s){if(!emn(e))return e;t=i6s(t,e);for(var a=-1,o=t.length,g=o-1,p=e;p!=null&&++a{var c6s=kot(),l6s=QKt(),u6s=JAe();function g6s(e,t,r){for(var s=-1,a=t.length,o={};++s{function A6s(e,t){return e!=null&&t in Object(e)}imn.exports=A6s});var MKt=z((S5c,omn)=>{var d6s=JAe(),p6s=R9e(),f6s=fH(),I6s=k9e(),C6s=jrt(),m6s=KVe();function h6s(e,t,r){t=d6s(t,e);for(var s=-1,a=t.length,o=!1;++s{var _6s=smn(),y6s=MKt();function b6s(e,t){return e!=null&&y6s(e,t,_6s)}amn.exports=b6s});var umn=z((T5c,lmn)=>{var E6s=nmn(),B6s=cmn();function v6s(e,t){return E6s(e,t,function(r,s){return B6s(e,s)})}lmn.exports=v6s});var pmn=z((N5c,dmn)=>{var gmn=lAe(),S6s=R9e(),w6s=fH(),Amn=gmn?gmn.isConcatSpreadable:void 0;function T6s(e){return w6s(e)||S6s(e)||!!(Amn&&e&&e[Amn])}dmn.exports=T6s});var Cmn=z((R5c,Imn)=>{var N6s=Urt(),R6s=pmn();function fmn(e,t,r,s,a){var o=-1,g=e.length;for(r||(r=R6s),a||(a=[]);++o0&&r(p)?t>1?fmn(p,t-1,r,s,a):N6s(a,p):s||(a[a.length]=p)}return a}Imn.exports=fmn});var hmn=z((D5c,mmn)=>{var D6s=Cmn();function x6s(e){var t=e==null?0:e.length;return t?D6s(e,1):[]}mmn.exports=x6s});var HKt=z((x5c,_mn)=>{var k6s=hmn(),G6s=gHt(),F6s=AHt();function Z6s(e){return F6s(G6s(e,void 0,k6s),e+"")}_mn.exports=Z6s});var YKt=z((k5c,ymn)=>{var L6s=umn(),V6s=HKt(),W6s=V6s(function(e,t){return e==null?{}:L6s(e,t)});ymn.exports=W6s});var bmn=z(Got=>{"use strict";Object.defineProperty(Got,"__esModule",{value:!0});Got.RunInstallPleaseResolver=void 0;var XKt=NL(),JKt=_O(),UKt=class{constructor(t){this.resolver=t}supportsDescriptor(t,r){return this.resolver.supportsDescriptor(t,r)}supportsLocator(t,r){return this.resolver.supportsLocator(t,r)}shouldPersistResolution(t,r){return this.resolver.shouldPersistResolution(t,r)}bindDescriptor(t,r,s){return this.resolver.bindDescriptor(t,r,s)}getResolutionDependencies(t,r){return this.resolver.getResolutionDependencies(t,r)}async getCandidates(t,r,s){throw new JKt.ReportError(XKt.MessageName.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}async getSatisfying(t,r,s,a){throw new JKt.ReportError(XKt.MessageName.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}async resolve(t,r){throw new JKt.ReportError(XKt.MessageName.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}};Got.RunInstallPleaseResolver=UKt});var jKt=z(Fot=>{"use strict";Object.defineProperty(Fot,"__esModule",{value:!0});Fot.ThrowReport=void 0;var P6s=_O(),KKt=class extends P6s.Report{reportCacheHit(t){}reportCacheMiss(t){}startSectionSync(t,r){return r()}async startSectionPromise(t,r){return await r()}startTimerSync(t,r,s){return(typeof r=="function"?r:s)()}async startTimerPromise(t,r,s){return await(typeof r=="function"?r:s)()}reportSeparator(){}reportInfo(t,r){}reportWarning(t,r){}reportError(t,r){}reportProgress(t){return{...Promise.resolve().then(async()=>{for await(let{}of t);}),stop:()=>{}}}reportJson(t){}reportFold(t,r){}async finalize(){}};Fot.ThrowReport=KKt});var qKt=z(Zot=>{"use strict";Object.defineProperty(Zot,"__esModule",{value:!0});Zot.Workspace=void 0;var $Ve=(Oa(),Ai(Pa)),bW=No(),O6s=$Ve.__importDefault(xbe()),jVe=Lbe(),zVe=CAe(),Emn=$Ve.__importStar(CO()),Q6s=$Ve.__importStar(Ine()),M6s=$Ve.__importStar(cj()),qVe=$Ve.__importStar(dk()),zKt=class{constructor(t,{project:r}){this.workspacesCwds=new Set,this.project=r,this.cwd=t}async setup(){this.manifest=await jVe.Manifest.tryFind(this.cwd)??new jVe.Manifest,this.relativeCwd=bW.ppath.relative(this.project.cwd,this.cwd)||bW.PortablePath.dot;let t=this.manifest.name?this.manifest.name:qVe.makeIdent(null,`${this.computeCandidateName()}-${Q6s.makeHash(this.relativeCwd).substring(0,6)}`);this.anchoredDescriptor=qVe.makeDescriptor(t,`${zVe.WorkspaceResolver.protocol}${this.relativeCwd}`),this.anchoredLocator=qVe.makeLocator(t,`${zVe.WorkspaceResolver.protocol}${this.relativeCwd}`);let r=this.manifest.workspaceDefinitions.map(({pattern:a})=>a);if(r.length===0)return;let s=await(0,O6s.default)(r,{cwd:bW.npath.fromPortablePath(this.cwd),onlyDirectories:!0,ignore:["**/node_modules","**/.git","**/.yarn"]});s.sort(),await s.reduce(async(a,o)=>{let g=bW.ppath.resolve(this.cwd,bW.npath.toPortablePath(o)),p=await bW.xfs.existsPromise(bW.ppath.join(g,"package.json"));await a,p&&this.workspacesCwds.add(g)},Promise.resolve())}get anchoredPackage(){let t=this.project.storedPackages.get(this.anchoredLocator.locatorHash);if(!t)throw new Error(`Assertion failed: Expected workspace ${qVe.prettyWorkspace(this.project.configuration,this)} (${Emn.pretty(this.project.configuration,bW.ppath.join(this.cwd,bW.Filename.manifest),Emn.Type.PATH)}) to have been resolved. Run "yarn install" to update the lockfile`);return t}accepts(t){let r=t.indexOf(":"),s=r!==-1?t.slice(0,r+1):null,a=r!==-1?t.slice(r+1):t;if(s===zVe.WorkspaceResolver.protocol&&bW.ppath.normalize(a)===this.relativeCwd||s===zVe.WorkspaceResolver.protocol&&(a==="*"||a==="^"||a==="~"))return!0;let o=M6s.validRange(a);return o?s===zVe.WorkspaceResolver.protocol?o.test(this.manifest.version??"0.0.0"):this.project.configuration.get("enableTransparentWorkspaces")&&this.manifest.version!==null?o.test(this.manifest.version):!1:!1}computeCandidateName(){return this.cwd===this.project.cwd?"root-workspace":`${bW.ppath.basename(this.cwd)}`||"unnamed-workspace"}getRecursiveWorkspaceDependencies({dependencies:t=jVe.Manifest.hardDependencies}={}){let r=new Set,s=a=>{for(let o of t)for(let g of a.manifest[o].values()){let p=this.project.tryWorkspaceByDescriptor(g);p===null||r.has(p)||(r.add(p),s(p))}};return s(this),r}getRecursiveWorkspaceDependents({dependencies:t=jVe.Manifest.hardDependencies}={}){let r=new Set,s=a=>{for(let o of this.project.workspaces)t.some(p=>[...o.manifest[p].values()].some(f=>{let m=this.project.tryWorkspaceByDescriptor(f);return m!==null&&qVe.areLocatorsEqual(m.anchoredLocator,a.anchoredLocator)}))&&!r.has(o)&&(r.add(o),s(o))};return s(this),r}getRecursiveWorkspaceChildren(){let t=new Set([this]);for(let r of t)for(let s of r.workspacesCwds){let a=this.project.workspacesByCwd.get(s);a&&t.add(a)}return t.delete(this),Array.from(t)}async persistManifest(){let t={};this.manifest.exportTo(t);let r=bW.ppath.join(this.cwd,jVe.Manifest.fileName),s=`${JSON.stringify(t,null,this.manifest.indent)} +`;await bW.xfs.changeFilePromise(r,s,{automaticNewlines:!0}),this.manifest.raw=t}};Zot.Workspace=zKt});var Zmn=z(FO=>{"use strict";Object.defineProperty(FO,"__esModule",{value:!0});FO.Project=FO.PeerWarningType=FO.InstallMode=FO.LOCKFILE_VERSION=void 0;var ZO=(Oa(),Ai(Pa)),Vot=No(),Mf=No(),Bmn=uO(),vmn=(Zl(),Ai(pg)),$Kt=xt("crypto"),H6s=PKt(),e8t=ZO.__importDefault(YKt()),t8t=ZO.__importDefault(iAe()),Y6s=ZO.__importDefault(Vh()),Gmn=xt("util"),Smn=ZO.__importDefault(xt("v8")),Fmn=ZO.__importDefault(xt("zlib")),X6s=fKt(),eWe=cVe(),tWe=IKt(),J6s=mKt(),U6s=yKt(),wmn=Lbe(),_b=NL(),Tmn=jYt(),Jne=_O(),K6s=bmn(),Nmn=CVe(),Rmn=jKt(),Wot=CAe(),j6s=qKt(),z6s=rit(),Kp=ZO.__importStar(CO()),QJ=ZO.__importStar(Ine()),O_=ZO.__importStar(IW()),q6s=ZO.__importStar(Fit()),Dmn=ZO.__importStar(mJt()),Pot=ZO.__importStar(cj()),Mu=ZO.__importStar(dk()),$6s=dAe(),Lot=dAe();FO.LOCKFILE_VERSION=O_.parseInt(process.env.YARN_LOCKFILE_VERSION_OVERRIDE??8);var e7s=3,t7s=/ *, */g,xmn=/\/$/,r7s=32,n7s=(0,Gmn.promisify)(Fmn.default.gzip),i7s=(0,Gmn.promisify)(Fmn.default.gunzip),REe;(function(e){e.UpdateLockfile="update-lockfile",e.SkipBuild="skip-build"})(REe||(FO.InstallMode=REe={}));var r8t={restoreLinkersCustomData:["linkersCustomData"],restoreResolutions:["accessibleLocators","conditionalLocators","disabledLocators","optionalBuilds","storedDescriptors","storedResolutions","storedPackages","lockFileChecksum"],restoreBuildState:["skippedBuilds","storedBuildState"]},MJ;(function(e){e[e.NotProvided=0]="NotProvided",e[e.NotCompatible=1]="NotCompatible",e[e.NodeNotProvided=2]="NodeNotProvided",e[e.NodeNotCompatible=3]="NodeNotCompatible"})(MJ||(FO.PeerWarningType=MJ={}));var kmn=e=>QJ.makeHash(`${e7s}`,e),n8t=class e{static async find(t,r){if(!t.projectCwd)throw new vmn.UsageError(`No project found in ${r}`);let s=t.projectCwd,a=r,o=null;for(;o!==t.projectCwd;){if(o=a,Mf.xfs.existsSync(Mf.ppath.join(o,Mf.Filename.manifest))){s=o;break}a=Mf.ppath.dirname(o)}let g=new e(t.projectCwd,{configuration:t});eWe.Configuration.telemetry?.reportProject(g.cwd),await g.setupResolutions(),await g.setupWorkspaces(),eWe.Configuration.telemetry?.reportWorkspaceCount(g.workspaces.length),eWe.Configuration.telemetry?.reportDependencyCount(g.workspaces.reduce((T,O)=>T+O.manifest.dependencies.size+O.manifest.devDependencies.size,0));let p=g.tryWorkspaceByCwd(s);if(p)return{project:g,workspace:p,locator:p.anchoredLocator};let f=await g.findLocatorForLocation(`${s}/`,{strict:!0});if(f)return{project:g,locator:f,workspace:null};let m=Kp.pretty(t,g.cwd,Kp.Type.PATH),y=Kp.pretty(t,Mf.ppath.relative(g.cwd,s),Kp.Type.PATH),B=`- If ${m} isn't intended to be a project, remove any yarn.lock and/or package.json file there.`,v=`- If ${m} is intended to be a project, it might be that you forgot to list ${y} in its workspace configuration.`,k=`- Finally, if ${m} is fine and you intend ${y} to be treated as a completely separate project (not even a workspace), create an empty yarn.lock file in it.`;throw new vmn.UsageError(`The nearest package directory (${Kp.pretty(t,s,Kp.Type.PATH)}) doesn't seem to be part of the project declared in ${Kp.pretty(t,g.cwd,Kp.Type.PATH)}. + +${[B,v,k].join(` +`)}`)}constructor(t,{configuration:r}){this.resolutionAliases=new Map,this.workspaces=[],this.workspacesByCwd=new Map,this.workspacesByIdent=new Map,this.storedResolutions=new Map,this.storedDescriptors=new Map,this.storedPackages=new Map,this.storedChecksums=new Map,this.storedBuildState=new Map,this.accessibleLocators=new Set,this.conditionalLocators=new Set,this.disabledLocators=new Set,this.originalPackages=new Map,this.optionalBuilds=new Set,this.skippedBuilds=new Set,this.lockfileLastVersion=null,this.lockfileNeedsRefresh=!1,this.peerRequirements=new Map,this.peerWarnings=[],this.peerRequirementNodes=new Map,this.linkersCustomData=new Map,this.lockFileChecksum=null,this.installStateChecksum=null,this.configuration=r,this.cwd=t}async setupResolutions(){this.storedResolutions=new Map,this.storedDescriptors=new Map,this.storedPackages=new Map,this.lockFileChecksum=null;let t=Mf.ppath.join(this.cwd,Mf.Filename.lockfile),r=this.configuration.get("defaultLanguageName");if(Mf.xfs.existsSync(t)){let s=await Mf.xfs.readFilePromise(t,"utf8");this.lockFileChecksum=kmn(s);let a=(0,Bmn.parseSyml)(s);if(a.__metadata){let o=a.__metadata.version,g=a.__metadata.cacheKey;this.lockfileLastVersion=o,this.lockfileNeedsRefresh=o"u")throw new Error(`Assertion failed: Expected the lockfile entry to have a resolution field (${p})`);let m=Mu.parseLocator(f.resolution,!0),y=new wmn.Manifest;y.load(f,{yamlCompatibilityMode:!0});let B=y.version,v=y.languageName||r,k=f.linkType.toUpperCase(),T=f.conditions??null,O=y.dependencies,X=y.peerDependencies,U=y.dependenciesMeta,le=y.peerDependenciesMeta,ae=y.bin;if(f.checksum!=null){let fe=typeof g<"u"&&!f.checksum.includes("/")?`${g}/${f.checksum}`:f.checksum;this.storedChecksums.set(m.locatorHash,fe)}let ge={...m,version:B,languageName:v,linkType:k,conditions:T,dependencies:O,peerDependencies:X,dependenciesMeta:U,peerDependenciesMeta:le,bin:ae};this.originalPackages.set(ge.locatorHash,ge);for(let fe of p.split(t7s)){let pe=Mu.parseDescriptor(fe);o<=6&&(pe=this.configuration.normalizeDependency(pe),pe=Mu.makeDescriptor(pe,pe.range.replace(/^patch:[^@]+@(?!npm(:|%3A))/,"$1npm%3A"))),this.storedDescriptors.set(pe.descriptorHash,pe),this.storedResolutions.set(pe.descriptorHash,m.locatorHash)}}}else s.includes("yarn lockfile v1")&&(this.lockfileLastVersion=-1)}}async setupWorkspaces(){this.workspaces=[],this.workspacesByCwd=new Map,this.workspacesByIdent=new Map;let t=new Set,r=(0,t8t.default)(4),s=async(a,o)=>{if(t.has(o))return a;t.add(o);let g=new j6s.Workspace(o,{project:this});await r(()=>g.setup());let p=a.then(()=>{this.addWorkspace(g)});return Array.from(g.workspacesCwds).reduce(s,p)};await s(Promise.resolve(),this.cwd)}addWorkspace(t){let r=this.workspacesByIdent.get(t.anchoredLocator.identHash);if(typeof r<"u")throw new Error(`Duplicate workspace name ${Mu.prettyIdent(this.configuration,t.anchoredLocator)}: ${Vot.npath.fromPortablePath(t.cwd)} conflicts with ${Vot.npath.fromPortablePath(r.cwd)}`);this.workspaces.push(t),this.workspacesByCwd.set(t.cwd,t),this.workspacesByIdent.set(t.anchoredLocator.identHash,t)}get topLevelWorkspace(){return this.getWorkspaceByCwd(this.cwd)}tryWorkspaceByCwd(t){Mf.ppath.isAbsolute(t)||(t=Mf.ppath.resolve(this.cwd,t)),t=Mf.ppath.normalize(t).replace(/\/+$/,"");let r=this.workspacesByCwd.get(t);return r||null}getWorkspaceByCwd(t){let r=this.tryWorkspaceByCwd(t);if(!r)throw new Error(`Workspace not found (${t})`);return r}tryWorkspaceByFilePath(t){let r=null;for(let s of this.workspaces)Mf.ppath.relative(s.cwd,t).startsWith("../")||r&&r.cwd.length>=s.cwd.length||(r=s);return r||null}getWorkspaceByFilePath(t){let r=this.tryWorkspaceByFilePath(t);if(!r)throw new Error(`Workspace not found (${t})`);return r}tryWorkspaceByIdent(t){let r=this.workspacesByIdent.get(t.identHash);return typeof r>"u"?null:r}getWorkspaceByIdent(t){let r=this.tryWorkspaceByIdent(t);if(!r)throw new Error(`Workspace not found (${Mu.prettyIdent(this.configuration,t)})`);return r}tryWorkspaceByDescriptor(t){if(t.range.startsWith(Wot.WorkspaceResolver.protocol)){let s=t.range.slice(Wot.WorkspaceResolver.protocol.length);if(s!=="^"&&s!=="~"&&s!=="*"&&!Pot.validRange(s))return this.tryWorkspaceByCwd(s)}let r=this.tryWorkspaceByIdent(t);return r===null||(Mu.isVirtualDescriptor(t)&&(t=Mu.devirtualizeDescriptor(t)),!r.accepts(t.range))?null:r}getWorkspaceByDescriptor(t){let r=this.tryWorkspaceByDescriptor(t);if(r===null)throw new Error(`Workspace not found (${Mu.prettyDescriptor(this.configuration,t)})`);return r}tryWorkspaceByLocator(t){let r=this.tryWorkspaceByIdent(t);return r===null||(Mu.isVirtualLocator(t)&&(t=Mu.devirtualizeLocator(t)),r.anchoredLocator.locatorHash!==t.locatorHash)?null:r}getWorkspaceByLocator(t){let r=this.tryWorkspaceByLocator(t);if(!r)throw new Error(`Workspace not found (${Mu.prettyLocator(this.configuration,t)})`);return r}deleteDescriptor(t){this.storedResolutions.delete(t),this.storedDescriptors.delete(t)}deleteLocator(t){this.originalPackages.delete(t),this.storedPackages.delete(t),this.accessibleLocators.delete(t)}forgetResolution(t){if("descriptorHash"in t){let r=this.storedResolutions.get(t.descriptorHash);this.deleteDescriptor(t.descriptorHash);let s=new Set(this.storedResolutions.values());typeof r<"u"&&!s.has(r)&&this.deleteLocator(r)}if("locatorHash"in t){this.deleteLocator(t.locatorHash);for(let[r,s]of this.storedResolutions)s===t.locatorHash&&this.deleteDescriptor(r)}}forgetTransientResolutions(){let t=this.configuration.makeResolver(),r=new Map;for(let[s,a]of this.storedResolutions.entries()){let o=r.get(a);o||r.set(a,o=new Set),o.add(s)}for(let s of this.originalPackages.values()){let a;try{a=t.shouldPersistResolution(s,{project:this,resolver:t})}catch{a=!1}if(!a){this.deleteLocator(s.locatorHash);let o=r.get(s.locatorHash);if(o){r.delete(s.locatorHash);for(let g of o)this.deleteDescriptor(g)}}}}forgetVirtualResolutions(){for(let t of this.storedPackages.values())for(let[r,s]of t.dependencies)Mu.isVirtualDescriptor(s)&&t.dependencies.set(r,Mu.devirtualizeDescriptor(s))}getDependencyMeta(t,r){let s={},o=this.topLevelWorkspace.manifest.dependenciesMeta.get(Mu.stringifyIdent(t));if(!o)return s;let g=o.get(null);if(g&&Object.assign(s,g),r===null||!Y6s.default.valid(r))return s;for(let[p,f]of o)p!==null&&p===r&&Object.assign(s,f);return s}async findLocatorForLocation(t,{strict:r=!1}={}){let s=new Rmn.ThrowReport,a=this.configuration.getLinkers(),o={project:this,report:s};for(let g of a){let p=await g.findPackageLocator(t,o);if(p){if(r&&(await g.findPackageLocation(p,o)).replace(xmn,"")!==t.replace(xmn,""))continue;return p}}return null}async loadUserConfig(){let t=Mf.ppath.join(this.cwd,".pnp.cjs");await Mf.xfs.existsPromise(t)&&O_.dynamicRequire(t).setup();let r=Mf.ppath.join(this.cwd,"yarn.config.cjs");return await Mf.xfs.existsPromise(r)?O_.dynamicRequire(r):null}async preparePackage(t,{resolver:r,resolveOptions:s}){let a=await this.configuration.getPackageExtensions(),o=this.configuration.normalizePackage(t,{packageExtensions:a});for(let[g,p]of o.dependencies){let f=await this.configuration.reduceHook(y=>y.reduceDependency,p,this,o,p,{resolver:r,resolveOptions:s});if(!Mu.areIdentsEqual(p,f))throw new Error("Assertion failed: The descriptor ident cannot be changed through aliases");let m=r.bindDescriptor(f,o,s);o.dependencies.set(g,m)}return o}async resolveEverything(t){if(!this.workspacesByCwd||!this.workspacesByIdent)throw new Error("Workspaces must have been setup before calling this function");this.forgetVirtualResolutions();let r=new Map(this.originalPackages),s=[];t.lockfileOnly||this.forgetTransientResolutions();let a=t.resolver||this.configuration.makeResolver(),o=new J6s.LegacyMigrationResolver(a);await o.setup(this,{report:t.report});let g=t.lockfileOnly?[new K6s.RunInstallPleaseResolver(a)]:[o,a],p=new Tmn.MultiResolver([new U6s.LockfileResolver(a),...g]),f=new Tmn.MultiResolver([...g]),m=this.configuration.makeFetcher(),y=t.lockfileOnly?{project:this,report:t.report,resolver:p}:{project:this,report:t.report,resolver:p,fetchOptions:{project:this,cache:t.cache,checksums:this.storedChecksums,report:t.report,fetcher:m,cacheOptions:{mirrorWriteOnly:!0}}},B=new Map,v=new Map,k=new Map,T=new Map,O=new Map,X=new Map,U=this.topLevelWorkspace.anchoredLocator,le=new Set,ae=[],ge=q6s.getArchitectureSet(),fe=this.configuration.getSupportedArchitectures();await t.report.startProgressPromise(Jne.Report.progressViaTitle(),async Xe=>{let ft=async dr=>{let Ar=await O_.prettifyAsyncErrors(async()=>await p.resolve(dr,y),Or=>`${Mu.prettyLocator(this.configuration,dr)}: ${Or}`);if(!Mu.areLocatorsEqual(dr,Ar))throw new Error(`Assertion failed: The locator cannot be changed by the resolver (went from ${Mu.prettyLocator(this.configuration,dr)} to ${Mu.prettyLocator(this.configuration,Ar)})`);T.set(Ar.locatorHash,Ar),!r.delete(Ar.locatorHash)&&!this.tryWorkspaceByLocator(Ar)&&s.push(Ar);let Fr=await this.preparePackage(Ar,{resolver:p,resolveOptions:y}),$r=O_.allSettledSafe([...Fr.dependencies.values()].map(Or=>Ot(Or)));return ae.push($r),$r.catch(()=>{}),v.set(Fr.locatorHash,Fr),Fr},Gt=async dr=>{let Ar=O.get(dr.locatorHash);if(typeof Ar<"u")return Ar;let or=Promise.resolve().then(()=>ft(dr));return O.set(dr.locatorHash,or),or},er=async(dr,Ar)=>{let or=await Ot(Ar);return B.set(dr.descriptorHash,dr),k.set(dr.descriptorHash,or.locatorHash),or},Ur=async dr=>{Xe.setTitle(Mu.prettyDescriptor(this.configuration,dr));let Ar=this.resolutionAliases.get(dr.descriptorHash);if(typeof Ar<"u")return er(dr,this.storedDescriptors.get(Ar));let or=p.getResolutionDependencies(dr,y),Fr=Object.fromEntries(await O_.allSettledSafe(Object.entries(or).map(async([In,Br])=>{let tr=p.bindDescriptor(Br,U,y),gn=await Ot(tr);return le.add(gn.locatorHash),[In,gn]}))),Or=(await O_.prettifyAsyncErrors(async()=>await p.getCandidates(dr,Fr,y),In=>`${Mu.prettyDescriptor(this.configuration,dr)}: ${In}`))[0];if(typeof Or>"u")throw new Jne.ReportError(_b.MessageName.RESOLUTION_FAILED,`${Mu.prettyDescriptor(this.configuration,dr)}: No candidates found`);if(t.checkResolutions){let{locators:In}=await f.getSatisfying(dr,Fr,[Or],{...y,resolver:f});if(!In.find(Br=>Br.locatorHash===Or.locatorHash))throw new Jne.ReportError(_b.MessageName.RESOLUTION_MISMATCH,`Invalid resolution ${Mu.prettyResolution(this.configuration,dr,Or)}`)}return B.set(dr.descriptorHash,dr),k.set(dr.descriptorHash,Or.locatorHash),Gt(Or)},Ot=dr=>{let Ar=X.get(dr.descriptorHash);if(typeof Ar<"u")return Ar;B.set(dr.descriptorHash,dr);let or=Promise.resolve().then(()=>Ur(dr));return X.set(dr.descriptorHash,or),or};for(let dr of this.workspaces){let Ar=dr.anchoredDescriptor;ae.push(Ot(Ar))}for(;ae.length>0;){let dr=[...ae];ae.length=0,await O_.allSettledSafe(dr)}});let pe=O_.mapAndFilter(r.values(),Xe=>this.tryWorkspaceByLocator(Xe)?O_.mapAndFilter.skip:Xe);if(s.length>0||pe.length>0){let Xe=new Set(this.workspaces.flatMap(dr=>{let Ar=v.get(dr.anchoredLocator.locatorHash);if(!Ar)throw new Error("Assertion failed: The workspace should have been resolved");return Array.from(Ar.dependencies.values(),or=>{let Fr=k.get(or.descriptorHash);if(!Fr)throw new Error("Assertion failed: The resolution should have been registered");return Fr})})),ft=dr=>Xe.has(dr.locatorHash)?"0":"1",Gt=dr=>Mu.stringifyLocator(dr),er=O_.sortMap(s,[ft,Gt]),Ur=O_.sortMap(pe,[ft,Gt]),Ot=t.report.getRecommendedLength();er.length>0&&t.report.reportInfo(_b.MessageName.UPDATED_RESOLUTION_RECORD,`${Kp.pretty(this.configuration,"+",Kp.Type.ADDED)} ${Kp.prettyTruncatedLocatorList(this.configuration,er,Ot)}`),Ur.length>0&&t.report.reportInfo(_b.MessageName.UPDATED_RESOLUTION_RECORD,`${Kp.pretty(this.configuration,"-",Kp.Type.REMOVED)} ${Kp.prettyTruncatedLocatorList(this.configuration,Ur,Ot)}`)}let he=new Set(this.resolutionAliases.values()),be=new Set(v.keys()),Te=new Set,ke=new Map,x=[],et=new Map;s7s({project:this,accessibleLocators:Te,volatileDescriptors:he,optionalBuilds:be,peerRequirements:ke,peerWarnings:x,peerRequirementNodes:et,allDescriptors:B,allResolutions:k,allPackages:v});for(let Xe of le)be.delete(Xe);for(let Xe of he)B.delete(Xe),k.delete(Xe);let Ue=new Set,Je=new Set;for(let Xe of v.values())Xe.conditions!=null&&be.has(Xe.locatorHash)&&(Mu.isPackageCompatible(Xe,fe)||(Mu.isPackageCompatible(Xe,ge)&&t.report.reportWarningOnce(_b.MessageName.GHOST_ARCHITECTURE,`${Mu.prettyLocator(this.configuration,Xe)}: Your current architecture (${process.platform}-${process.arch}) is supported by this package, but is missing from the ${Kp.pretty(this.configuration,"supportedArchitectures",Kp.Type.SETTING)} setting`),Je.add(Xe.locatorHash)),Ue.add(Xe.locatorHash));this.storedResolutions=k,this.storedDescriptors=B,this.storedPackages=v,this.accessibleLocators=Te,this.conditionalLocators=Ue,this.disabledLocators=Je,this.originalPackages=T,this.optionalBuilds=be,this.peerRequirements=ke,this.peerWarnings=x,this.peerRequirementNodes=et}async fetchEverything({cache:t,report:r,fetcher:s,mode:a,persistProject:o=!0}){let g={mockedPackages:this.disabledLocators,unstablePackages:this.conditionalLocators},p=s||this.configuration.makeFetcher(),f={checksums:this.storedChecksums,project:this,cache:t,fetcher:p,report:r,cacheOptions:g},m=Array.from(new Set(O_.sortMap(this.storedResolutions.values(),[T=>{let O=this.storedPackages.get(T);if(!O)throw new Error("Assertion failed: The locator should have been registered");return Mu.stringifyLocator(O)}])));a===REe.UpdateLockfile&&(m=m.filter(T=>!this.storedChecksums.has(T)));let y=!1,B=Jne.Report.progressViaCounter(m.length);await r.reportProgress(B);let v=(0,t8t.default)(r7s);if(await O_.allSettledSafe(m.map(T=>v(async()=>{let O=this.storedPackages.get(T);if(!O)throw new Error("Assertion failed: The locator should have been registered");if(Mu.isVirtualLocator(O))return;let X;try{X=await p.fetch(O,f)}catch(U){U.message=`${Mu.prettyLocator(this.configuration,O)}: ${U.message}`,r.reportExceptionOnce(U),y=U;return}X.checksum!=null?this.storedChecksums.set(O.locatorHash,X.checksum):this.storedChecksums.delete(O.locatorHash),X.releaseFs&&X.releaseFs()}).finally(()=>{B.tick()}))),y)throw y;let k=o&&a!==REe.UpdateLockfile?await this.cacheCleanup({cache:t,report:r}):null;if(r.cacheMisses.size>0||k){let O=(await Promise.all([...r.cacheMisses].map(async pe=>{let he=this.storedPackages.get(pe),be=this.storedChecksums.get(pe)??null,Te=t.getLocatorPath(he,be);return(await Mf.xfs.statPromise(Te)).size}))).reduce((pe,he)=>pe+he,0)-(k?.size??0),X=r.cacheMisses.size,U=k?.count??0,le=`${O_.plural(X,{zero:"No new packages",one:"A package was",more:`${Kp.pretty(this.configuration,X,Kp.Type.NUMBER)} packages were`})} added to the project`,ae=`${O_.plural(U,{zero:"none were",one:"one was",more:`${Kp.pretty(this.configuration,U,Kp.Type.NUMBER)} were`})} removed`,ge=O!==0?` (${Kp.pretty(this.configuration,O,Kp.Type.SIZE_DIFF)})`:"",fe=U>0?X>0?`${le}, and ${ae}${ge}.`:`${le}, but ${ae}${ge}.`:`${le}${ge}.`;r.reportInfo(_b.MessageName.FETCH_NOT_CACHED,fe)}}async linkEverything({cache:t,report:r,fetcher:s,mode:a}){let o={mockedPackages:this.disabledLocators,unstablePackages:this.conditionalLocators,skipIntegrityCheck:!0},g=s||this.configuration.makeFetcher(),p={checksums:this.storedChecksums,project:this,cache:t,fetcher:g,report:r,cacheOptions:o},f=this.configuration.getLinkers(),m={project:this,report:r},y=new Map(f.map(Ue=>{let Je=Ue.makeInstaller(m),Xe=Ue.getCustomDataKey(),ft=this.linkersCustomData.get(Xe);return typeof ft<"u"&&Je.attachCustomData(ft),[Ue,Je]})),B=new Map,v=new Map,k=new Map,T=new Map(await O_.allSettledSafe([...this.accessibleLocators].map(async Ue=>{let Je=this.storedPackages.get(Ue);if(!Je)throw new Error("Assertion failed: The locator should have been registered");return[Ue,await g.fetch(Je,p)]}))),O=[],X=new Set,U=[];for(let Ue of this.accessibleLocators){let Je=this.storedPackages.get(Ue);if(typeof Je>"u")throw new Error("Assertion failed: The locator should have been registered");let Xe=T.get(Je.locatorHash);if(typeof Xe>"u")throw new Error("Assertion failed: The fetch result should have been registered");let ft=[],Gt=Ur=>{ft.push(Ur)},er=this.tryWorkspaceByLocator(Je);if(er!==null){let Ur=[],{scripts:Ot}=er.manifest;for(let Ar of["preinstall","install","postinstall"])Ot.has(Ar)&&Ur.push({type:tWe.BuildDirectiveType.SCRIPT,script:Ar});try{for(let[Ar,or]of y)if(Ar.supportsPackage(Je,m)&&(await or.installPackage(Je,Xe,{holdFetchResult:Gt})).buildRequest!==null)throw new Error("Assertion failed: Linkers can't return build directives for workspaces; this responsibility befalls to the Yarn core")}finally{ft.length===0?Xe.releaseFs?.():O.push(O_.allSettledSafe(ft).catch(()=>{}).then(()=>{Xe.releaseFs?.()}))}let dr=Mf.ppath.join(Xe.packageFs.getRealPath(),Xe.prefixPath);v.set(Je.locatorHash,dr),!Mu.isVirtualLocator(Je)&&Ur.length>0&&k.set(Je.locatorHash,{buildDirectives:Ur,buildLocations:[dr]})}else{let Ur=f.find(Ar=>Ar.supportsPackage(Je,m));if(!Ur)throw new Jne.ReportError(_b.MessageName.LINKER_NOT_FOUND,`${Mu.prettyLocator(this.configuration,Je)} isn't supported by any available linker`);let Ot=y.get(Ur);if(!Ot)throw new Error("Assertion failed: The installer should have been registered");let dr;try{dr=await Ot.installPackage(Je,Xe,{holdFetchResult:Gt})}finally{ft.length===0?Xe.releaseFs?.():O.push(O_.allSettledSafe(ft).then(()=>{}).then(()=>{Xe.releaseFs?.()}))}B.set(Je.locatorHash,Ur),v.set(Je.locatorHash,dr.packageLocation),dr.buildRequest&&dr.packageLocation&&(dr.buildRequest.skipped?(X.add(Je.locatorHash),this.skippedBuilds.has(Je.locatorHash)||U.push([Je,dr.buildRequest.explain])):k.set(Je.locatorHash,{buildDirectives:dr.buildRequest.directives,buildLocations:[dr.packageLocation]}))}}let le=new Map;for(let Ue of this.accessibleLocators){let Je=this.storedPackages.get(Ue);if(!Je)throw new Error("Assertion failed: The locator should have been registered");let Xe=this.tryWorkspaceByLocator(Je)!==null,ft=async(Gt,er)=>{let Ur=v.get(Je.locatorHash);if(typeof Ur>"u")throw new Error(`Assertion failed: The package (${Mu.prettyLocator(this.configuration,Je)}) should have been registered`);let Ot=[];for(let dr of Je.dependencies.values()){let Ar=this.storedResolutions.get(dr.descriptorHash);if(typeof Ar>"u")throw new Error(`Assertion failed: The resolution (${Mu.prettyDescriptor(this.configuration,dr)}, from ${Mu.prettyLocator(this.configuration,Je)})should have been registered`);let or=this.storedPackages.get(Ar);if(typeof or>"u")throw new Error(`Assertion failed: The package (${Ar}, resolved from ${Mu.prettyDescriptor(this.configuration,dr)}) should have been registered`);let Fr=this.tryWorkspaceByLocator(or)===null?B.get(Ar):null;if(typeof Fr>"u")throw new Error(`Assertion failed: The package (${Ar}, resolved from ${Mu.prettyDescriptor(this.configuration,dr)}) should have been registered`);Fr===Gt||Fr===null?v.get(or.locatorHash)!==null&&Ot.push([dr,or]):!Xe&&Ur!==null&&O_.getArrayWithDefault(le,Ar).push(Ur)}Ur!==null&&await er.attachInternalDependencies(Je,Ot)};if(Xe)for(let[Gt,er]of y)Gt.supportsPackage(Je,m)&&await ft(Gt,er);else{let Gt=B.get(Je.locatorHash);if(!Gt)throw new Error("Assertion failed: The linker should have been found");let er=y.get(Gt);if(!er)throw new Error("Assertion failed: The installer should have been registered");await ft(Gt,er)}}for(let[Ue,Je]of le){let Xe=this.storedPackages.get(Ue);if(!Xe)throw new Error("Assertion failed: The package should have been registered");let ft=B.get(Xe.locatorHash);if(!ft)throw new Error("Assertion failed: The linker should have been found");let Gt=y.get(ft);if(!Gt)throw new Error("Assertion failed: The installer should have been registered");await Gt.attachExternalDependents(Xe,Je)}let ae=new Map;for(let[Ue,Je]of y){let Xe=await Je.finalizeInstall();for(let ft of Xe?.records??[])ft.buildRequest.skipped?(X.add(ft.locator.locatorHash),this.skippedBuilds.has(ft.locator.locatorHash)||U.push([ft.locator,ft.buildRequest.explain])):k.set(ft.locator.locatorHash,{buildDirectives:ft.buildRequest.directives,buildLocations:ft.buildLocations});typeof Xe?.customData<"u"&&ae.set(Ue.getCustomDataKey(),Xe.customData)}if(this.linkersCustomData=ae,await O_.allSettledSafe(O),a===REe.SkipBuild)return;for(let[,Ue]of O_.sortMap(U,([Je])=>Mu.stringifyLocator(Je)))Ue(r);let ge=new Set(k.keys()),fe=(0,$Kt.createHash)("sha512");fe.update(process.versions.node),await this.configuration.triggerHook(Ue=>Ue.globalHashGeneration,this,Ue=>{fe.update("\0"),fe.update(Ue)});let pe=fe.digest("hex"),he=new Map,be=Ue=>{let Je=he.get(Ue.locatorHash);if(typeof Je<"u")return Je;let Xe=this.storedPackages.get(Ue.locatorHash);if(typeof Xe>"u")throw new Error("Assertion failed: The package should have been registered");let ft=(0,$Kt.createHash)("sha512");ft.update(Ue.locatorHash),he.set(Ue.locatorHash,"");for(let Gt of Xe.dependencies.values()){let er=this.storedResolutions.get(Gt.descriptorHash);if(typeof er>"u")throw new Error(`Assertion failed: The resolution (${Mu.prettyDescriptor(this.configuration,Gt)}) should have been registered`);let Ur=this.storedPackages.get(er);if(typeof Ur>"u")throw new Error("Assertion failed: The package should have been registered");ft.update(be(Ur))}return Je=ft.digest("hex"),he.set(Ue.locatorHash,Je),Je},Te=(Ue,Je)=>{let Xe=(0,$Kt.createHash)("sha512");Xe.update(pe),Xe.update(be(Ue));for(let ft of Je)Xe.update(ft);return Xe.digest("hex")},ke=new Map,x=!1,et=Ue=>{let Je=new Set([Ue.locatorHash]);for(let Xe of Je){let ft=this.storedPackages.get(Xe);if(!ft)throw new Error("Assertion failed: The package should have been registered");for(let Gt of ft.dependencies.values()){let er=this.storedResolutions.get(Gt.descriptorHash);if(!er)throw new Error(`Assertion failed: The resolution (${Mu.prettyDescriptor(this.configuration,Gt)}) should have been registered`);if(er!==Ue.locatorHash&&ge.has(er))return!1;let Ur=this.storedPackages.get(er);if(!Ur)throw new Error("Assertion failed: The package should have been registered");let Ot=this.tryWorkspaceByLocator(Ur);if(Ot){if(Ot.anchoredLocator.locatorHash!==Ue.locatorHash&&ge.has(Ot.anchoredLocator.locatorHash))return!1;Je.add(Ot.anchoredLocator.locatorHash)}Je.add(er)}}return!0};for(;ge.size>0;){let Ue=ge.size,Je=[];for(let Xe of ge){let ft=this.storedPackages.get(Xe);if(!ft)throw new Error("Assertion failed: The package should have been registered");if(!et(ft))continue;let Gt=k.get(ft.locatorHash);if(!Gt)throw new Error("Assertion failed: The build directive should have been registered");let er=Te(ft,Gt.buildLocations);if(this.storedBuildState.get(ft.locatorHash)===er){ke.set(ft.locatorHash,er),ge.delete(Xe);continue}x||(await this.persistInstallStateFile(),x=!0),this.storedBuildState.has(ft.locatorHash)?r.reportInfo(_b.MessageName.MUST_REBUILD,`${Mu.prettyLocator(this.configuration,ft)} must be rebuilt because its dependency tree changed`):r.reportInfo(_b.MessageName.MUST_BUILD,`${Mu.prettyLocator(this.configuration,ft)} must be built because it never has been before or the last one failed`);let Ur=Gt.buildLocations.map(async Ot=>{if(!Mf.ppath.isAbsolute(Ot))throw new Error(`Assertion failed: Expected the build location to be absolute (not ${Ot})`);for(let dr of Gt.buildDirectives){let Ar=`# This file contains the result of Yarn building a package (${Mu.stringifyLocator(ft)}) +`;switch(dr.type){case tWe.BuildDirectiveType.SCRIPT:Ar+=`# Script name: ${dr.script} +`;break;case tWe.BuildDirectiveType.SHELLCODE:Ar+=`# Script code: ${dr.script} +`;break}let or=null;if(!await Mf.xfs.mktempPromise(async $r=>{let Or=Mf.ppath.join($r,"build.log"),{stdout:In,stderr:Br}=this.configuration.getSubprocessStreams(Or,{header:Ar,prefix:Mu.prettyLocator(this.configuration,ft),report:r}),tr;try{switch(dr.type){case tWe.BuildDirectiveType.SCRIPT:tr=await Dmn.executePackageScript(ft,dr.script,[],{cwd:Ot,project:this,stdin:or,stdout:In,stderr:Br});break;case tWe.BuildDirectiveType.SHELLCODE:tr=await Dmn.executePackageShellcode(ft,dr.script,[],{cwd:Ot,project:this,stdin:or,stdout:In,stderr:Br});break}}catch(we){Br.write(we.stack),tr=1}if(In.end(),Br.end(),tr===0)return!0;Mf.xfs.detachTemp($r);let gn=`${Mu.prettyLocator(this.configuration,ft)} couldn't be built successfully (exit code ${Kp.pretty(this.configuration,tr,Kp.Type.NUMBER)}, logs can be found here: ${Kp.pretty(this.configuration,Or,Kp.Type.PATH)})`,Gn=this.optionalBuilds.has(ft.locatorHash);return Gn?r.reportInfo(_b.MessageName.BUILD_FAILED,gn):r.reportError(_b.MessageName.BUILD_FAILED,gn),Nmn.SUPPORTS_GROUPS&&r.reportFold(Vot.npath.fromPortablePath(Or),Mf.xfs.readFileSync(Or,"utf8")),Gn}))return!1}return!0});Je.push(...Ur,Promise.allSettled(Ur).then(Ot=>{ge.delete(Xe),Ot.every(dr=>dr.status==="fulfilled"&&dr.value===!0)&&ke.set(ft.locatorHash,er)}))}if(await O_.allSettledSafe(Je),Ue===ge.size){let Xe=Array.from(ge).map(ft=>{let Gt=this.storedPackages.get(ft);if(!Gt)throw new Error("Assertion failed: The package should have been registered");return Mu.prettyLocator(this.configuration,Gt)}).join(", ");r.reportError(_b.MessageName.CYCLIC_DEPENDENCIES,`Some packages have circular dependencies that make their build order unsatisfiable - as a result they won't be built (affected packages are: ${Xe})`);break}}this.storedBuildState=ke,this.skippedBuilds=X}async installWithNewReport(t,r){return(await Nmn.StreamReport.start({configuration:this.configuration,json:t.json,stdout:t.stdout,forceSectionAlignment:!0,includeLogs:!t.json&&!t.quiet,includeVersion:!0},async a=>{await this.install({...r,report:a})})).exitCode()}async install(t){let r=this.configuration.get("nodeLinker");eWe.Configuration.telemetry?.reportInstall(r);let s=!1;if(await t.report.startTimerPromise("Project validation",{skipIfEmpty:!0},async()=>{this.configuration.get("enableOfflineMode")&&t.report.reportWarning(_b.MessageName.OFFLINE_MODE_ENABLED,"Offline work is enabled; Yarn won't fetch packages from the remote registry if it can avoid it"),await this.configuration.triggerHook(y=>y.validateProject,this,{reportWarning:(y,B)=>{t.report.reportWarning(y,B)},reportError:(y,B)=>{t.report.reportError(y,B),s=!0}})}),s)return;let a=await this.configuration.getPackageExtensions();for(let y of a.values())for(let[,B]of y)for(let v of B)v.status=Lot.PackageExtensionStatus.Inactive;let o=Mf.ppath.join(this.cwd,Mf.Filename.lockfile),g=null;if(t.immutable)try{g=await Mf.xfs.readFilePromise(o,"utf8")}catch(y){throw y.code==="ENOENT"?new Jne.ReportError(_b.MessageName.FROZEN_LOCKFILE_EXCEPTION,"The lockfile would have been created by this install, which is explicitly forbidden."):y}await t.report.startTimerPromise("Resolution step",async()=>{await this.resolveEverything(t)}),await t.report.startTimerPromise("Post-resolution validation",{skipIfEmpty:!0},async()=>{a7s(this,t.report);for(let[,y]of a)for(let[,B]of y)for(let v of B)if(v.userProvided){let k=Kp.pretty(this.configuration,v,Kp.Type.PACKAGE_EXTENSION);switch(v.status){case Lot.PackageExtensionStatus.Inactive:t.report.reportWarning(_b.MessageName.UNUSED_PACKAGE_EXTENSION,`${k}: No matching package in the dependency tree; you may not need this rule anymore.`);break;case Lot.PackageExtensionStatus.Redundant:t.report.reportWarning(_b.MessageName.REDUNDANT_PACKAGE_EXTENSION,`${k}: This rule seems redundant when applied on the original package; the extension may have been applied upstream.`);break}}if(g!==null){let y=(0,Mf.normalizeLineEndings)(g,this.generateLockfile());if(y!==g){let B=(0,H6s.structuredPatch)(o,o,g,y,void 0,void 0,{maxEditLength:100});if(B){t.report.reportSeparator();for(let v of B.hunks){t.report.reportInfo(null,`@@ -${v.oldStart},${v.oldLines} +${v.newStart},${v.newLines} @@`);for(let k of v.lines)k.startsWith("+")?t.report.reportError(_b.MessageName.FROZEN_LOCKFILE_EXCEPTION,Kp.pretty(this.configuration,k,Kp.Type.ADDED)):k.startsWith("-")?t.report.reportError(_b.MessageName.FROZEN_LOCKFILE_EXCEPTION,Kp.pretty(this.configuration,k,Kp.Type.REMOVED)):t.report.reportInfo(null,Kp.pretty(this.configuration,k,"grey"))}t.report.reportSeparator()}throw new Jne.ReportError(_b.MessageName.FROZEN_LOCKFILE_EXCEPTION,"The lockfile would have been modified by this install, which is explicitly forbidden.")}}});for(let y of a.values())for(let[,B]of y)for(let v of B)v.userProvided&&v.status===Lot.PackageExtensionStatus.Active&&eWe.Configuration.telemetry?.reportPackageExtension(Kp.json(v,Kp.Type.PACKAGE_EXTENSION));await t.report.startTimerPromise("Fetch step",async()=>{await this.fetchEverything(t)});let p=t.immutable?[...new Set(this.configuration.get("immutablePatterns"))].sort():[],f=await Promise.all(p.map(async y=>QJ.checksumPattern(y,{cwd:this.cwd})));(typeof t.persistProject>"u"||t.persistProject)&&await this.persist(),await t.report.startTimerPromise("Link step",async()=>{if(t.mode===REe.UpdateLockfile){t.report.reportWarning(_b.MessageName.UPDATE_LOCKFILE_ONLY_SKIP_LINK,`Skipped due to ${Kp.pretty(this.configuration,"mode=update-lockfile",Kp.Type.CODE)}`);return}await this.linkEverything(t);let y=await Promise.all(p.map(async B=>QJ.checksumPattern(B,{cwd:this.cwd})));for(let B=0;B{await this.configuration.triggerHook(y=>y.validateProjectAfterInstall,this,{reportWarning:(y,B)=>{t.report.reportWarning(y,B)},reportError:(y,B)=>{t.report.reportError(y,B),m=!0}})}),!m&&await this.configuration.triggerHook(y=>y.afterAllInstalled,this,t)}generateLockfile(){let t=new Map;for(let[o,g]of this.storedResolutions.entries()){let p=t.get(g);p||t.set(g,p=new Set),p.add(o)}let r={},{cacheKey:s}=X6s.Cache.getCacheKey(this.configuration);r.__metadata={version:FO.LOCKFILE_VERSION,cacheKey:s};for(let[o,g]of t.entries()){let p=this.originalPackages.get(o);if(!p)continue;let f=[];for(let B of g){let v=this.storedDescriptors.get(B);if(!v)throw new Error("Assertion failed: The descriptor should have been registered");f.push(v)}let m=f.map(B=>Mu.stringifyDescriptor(B)).sort().join(", "),y=new wmn.Manifest;y.version=p.linkType===$6s.LinkType.HARD?p.version:"0.0.0-use.local",y.languageName=p.languageName,y.dependencies=new Map(p.dependencies),y.peerDependencies=new Map(p.peerDependencies),y.dependenciesMeta=new Map(p.dependenciesMeta),y.peerDependenciesMeta=new Map(p.peerDependenciesMeta),y.bin=new Map(p.bin),r[m]={...y.exportTo({},{compatibilityMode:!1}),linkType:p.linkType.toLowerCase(),resolution:Mu.stringifyLocator(p),checksum:this.storedChecksums.get(p.locatorHash),conditions:p.conditions||void 0}}return`${[`# This file is generated by running "yarn install" inside your project. `,`# Manual changes might be lost - proceed with caution! `].join("")} -`+(0,mmn.stringifySyml)(r)}async persistLockfile(){let t=Mf.ppath.join(this.cwd,Mf.Filename.lockfile),r="";try{r=await Mf.xfs.readFilePromise(t,"utf8")}catch{}let s=this.generateLockfile(),a=(0,Mf.normalizeLineEndings)(r,s);a!==r&&(await Mf.xfs.writeFilePromise(t,a),this.lockFileChecksum=wmn(a),this.lockfileNeedsRefresh=!1)}async persistInstallStateFile(){let t=[];for(let g of Object.values($Kt))t.push(...g);let r=(0,zKt.default)(this,t),s=_mn.default.serialize(r),a=WJ.makeHash(s);if(this.installStateChecksum===a)return;let o=this.configuration.get("installStatePath");await Mf.xfs.mkdirPromise(Mf.ppath.dirname(o),{recursive:!0}),await Mf.xfs.writeFilePromise(o,await j6s(s)),this.installStateChecksum=a}async restoreInstallState({restoreLinkersCustomData:t=!0,restoreResolutions:r=!0,restoreBuildState:s=!0}={}){let a=this.configuration.get("installStatePath"),o;try{let g=await z6s(await Mf.xfs.readFilePromise(a));o=_mn.default.deserialize(g),this.installStateChecksum=WJ.makeHash(g)}catch{r&&await this.applyLightResolution();return}t&&typeof o.linkersCustomData<"u"&&(this.linkersCustomData=o.linkersCustomData),s&&Object.assign(this,(0,zKt.default)(o,$Kt.restoreBuildState)),r&&(o.lockFileChecksum===this.lockFileChecksum?Object.assign(this,(0,zKt.default)(o,$Kt.restoreResolutions)):await this.applyLightResolution())}async applyLightResolution(){await this.resolveEverything({lockfileOnly:!0,report:new Bmn.ThrowReport}),await this.persistInstallStateFile()}async persist(){let t=(0,qKt.default)(4);await Promise.all([this.persistLockfile(),...this.workspaces.map(r=>t(()=>r.persistManifest()))])}async cacheCleanup({cache:t,report:r}){if(this.configuration.get("enableGlobalCache"))return null;let s=new Set([".gitignore"]);if(!(0,Y6s.isFolderInside)(t.cwd,this.cwd)||!await Mf.xfs.existsPromise(t.cwd))return null;let a=[];for(let g of await Mf.xfs.readdirPromise(t.cwd)){if(s.has(g))continue;let p=Mf.ppath.resolve(t.cwd,g);t.markedFiles.has(p)||(t.immutable?r.reportError(hb.MessageName.IMMUTABLE_CACHE,`${Up.pretty(this.configuration,Mf.ppath.basename(p),"magenta")} appears to be unused and would be marked for deletion, but the cache is immutable`):a.push(Mf.xfs.lstatPromise(p).then(async f=>(await Mf.xfs.removePromise(p),f.size))))}if(a.length===0)return null;let o=await Promise.all(a);return{count:a.length,size:o.reduce((g,p)=>g+p,0)}}};xO.Project=e8t;function q6s({project:e,allDescriptors:t,allResolutions:r,allPackages:s,accessibleLocators:a=new Set,optionalBuilds:o=new Set,peerRequirements:g=new Map,peerWarnings:p=[],peerRequirementNodes:f=new Map,volatileDescriptors:m=new Set}){let y=new Map,B=[],v=new Map,G=new Map,T=new Map,O=new Map,X=new Map(e.workspaces.map(fe=>{let pe=fe.anchoredLocator.locatorHash,he=s.get(pe);if(typeof he>"u")throw new Error("Assertion failed: The workspace should have an associated package");return[pe,Mu.copyPackage(he)]})),U=()=>{let fe=Mf.xfs.mktempSync(),pe=Mf.ppath.join(fe,"stacktrace.log"),he=String(B.length+1).length,be=B.map((Te,ke)=>`${`${ke+1}.`.padStart(he," ")} ${Mu.stringifyLocator(Te)} -`).join("");throw Mf.xfs.writeFileSync(pe,be),Mf.xfs.detachTemp(fe),new Hne.ReportError(hb.MessageName.STACK_OVERFLOW_RESOLUTION,`Encountered a stack overflow when resolving peer dependencies; cf ${Zot.npath.fromPortablePath(pe)}`)},le=fe=>{let pe=r.get(fe.descriptorHash);if(typeof pe>"u")throw new Error("Assertion failed: The resolution should have been registered");let he=s.get(pe);if(!he)throw new Error("Assertion failed: The package could not be found");return he},ae=(fe,pe,he,{top:be,optional:Te})=>{B.length>1e3&&U(),B.push(pe);let ke=ge(fe,pe,he,{top:be,optional:Te});return B.pop(),ke},ge=(fe,pe,he,{top:be,optional:Te})=>{if(Te||o.delete(pe.locatorHash),a.has(pe.locatorHash))return;a.add(pe.locatorHash);let ke=s.get(pe.locatorHash);if(!ke)throw new Error(`Assertion failed: The package (${Mu.prettyLocator(e.configuration,pe)}) should have been registered`);let x=[],et=new Map,Ue=[],Je=[],Xe=[],ft=[];for(let er of Array.from(ke.dependencies.values())){if(ke.peerDependencies.has(er.identHash)&&ke.locatorHash!==be)continue;if(Mu.isVirtualDescriptor(er))throw new Error("Assertion failed: Virtual packages shouldn't be encountered when virtualizing a branch");m.delete(er.descriptorHash);let Ur=Te;if(!Ur){let Or=ke.dependenciesMeta.get(Mu.stringifyIdent(er));if(typeof Or<"u"){let In=Or.get(null);typeof In<"u"&&In.optional&&(Ur=!0)}}let Ot=r.get(er.descriptorHash);if(!Ot)throw new Error(`Assertion failed: The resolution (${Mu.prettyDescriptor(e.configuration,er)}) should have been registered`);let dr=X.get(Ot)||s.get(Ot);if(!dr)throw new Error(`Assertion failed: The package (${Ot}, resolved from ${Mu.prettyDescriptor(e.configuration,er)}) should have been registered`);if(dr.peerDependencies.size===0){ae(er,dr,new Map,{top:be,optional:Ur});continue}let Ar,or,Fr=new Set,$r=new Map;Ue.push(()=>{Ar=Mu.virtualizeDescriptor(er,pe.locatorHash),or=Mu.virtualizePackage(dr,pe.locatorHash),ke.dependencies.delete(er.identHash),ke.dependencies.set(Ar.identHash,Ar),r.set(Ar.descriptorHash,or.locatorHash),t.set(Ar.descriptorHash,Ar),s.set(or.locatorHash,or),x.push([dr,Ar,or])}),Je.push(()=>{O.set(or.locatorHash,$r);for(let Or of or.peerDependencies.values()){let Br=P_.getFactoryWithDefault(et,Or.identHash,()=>{let tr=he.get(Or.identHash)??null,gn=ke.dependencies.get(Or.identHash);return!gn&&Mu.areIdentsEqual(pe,Or)&&(fe.identHash===pe.identHash?gn=fe:(gn=Mu.makeDescriptor(pe,fe.range),t.set(gn.descriptorHash,gn),r.set(gn.descriptorHash,pe.locatorHash),m.delete(gn.descriptorHash),tr=null)),gn||(gn=Mu.makeDescriptor(Or,"missing:")),{subject:pe,ident:Or,provided:gn,root:!tr,requests:new Map,hash:`p${WJ.makeHash(pe.locatorHash,Or.identHash).slice(0,5)}`}}).provided;if(Br.range==="missing:"&&or.dependencies.has(Or.identHash)){or.peerDependencies.delete(Or.identHash);continue}$r.set(Or.identHash,{requester:or,descriptor:Or,meta:or.peerDependenciesMeta.get(Mu.stringifyIdent(Or)),children:new Map}),or.dependencies.set(Or.identHash,Br),Mu.isVirtualDescriptor(Br)&&P_.getSetWithDefault(T,Br.descriptorHash).add(or.locatorHash),v.set(Br.identHash,Br),Br.range==="missing:"&&Fr.add(Br.identHash)}or.dependencies=new Map(P_.sortMap(or.dependencies,([Or,In])=>Mu.stringifyIdent(In)))}),Xe.push(()=>{if(!s.has(or.locatorHash))return;let Or=y.get(dr.locatorHash);typeof Or=="number"&&Or>=2&&U();let In=y.get(dr.locatorHash),Br=typeof In<"u"?In+1:1;y.set(dr.locatorHash,Br),ae(Ar,or,$r,{top:be,optional:Ur}),y.set(dr.locatorHash,Br-1)}),ft.push(()=>{let Or=ke.dependencies.get(er.identHash);if(typeof Or>"u")throw new Error("Assertion failed: Expected the peer dependency to have been turned into a dependency");let In=r.get(Or.descriptorHash);if(typeof In>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");let Br=O.get(In);if(typeof Br>"u")throw new Error("Assertion failed: Expected the peer requests to be registered");for(let tr of et.values()){let gn=Br.get(tr.ident.identHash);gn&&(tr.requests.set(Or.descriptorHash,gn),f.set(tr.hash,tr),tr.root||he.get(tr.ident.identHash)?.children.set(Or.descriptorHash,gn))}if(s.has(or.locatorHash))for(let tr of Fr)or.dependencies.delete(tr)})}for(let er of[...Ue,...Je])er();let Gt;do{Gt=!0;for(let[er,Ur,Ot]of x){let dr=P_.getMapWithDefault(G,er.locatorHash),Ar=WJ.makeHash(...[...Ot.dependencies.values()].map(Or=>{let In=Or.range!=="missing:"?r.get(Or.descriptorHash):"missing:";if(typeof In>"u")throw new Error(`Assertion failed: Expected the resolution for ${Mu.prettyDescriptor(e.configuration,Or)} to have been registered`);return In===be?`${In} (top)`:In}),Ur.identHash),or=dr.get(Ar);if(typeof or>"u"){dr.set(Ar,Ur);continue}if(or===Ur)continue;s.delete(Ot.locatorHash),t.delete(Ur.descriptorHash),r.delete(Ur.descriptorHash),a.delete(Ot.locatorHash);let Fr=T.get(Ur.descriptorHash)||[],$r=[ke.locatorHash,...Fr];T.delete(Ur.descriptorHash);for(let Or of $r){let In=s.get(Or);typeof In>"u"||(In.dependencies.get(Ur.identHash).descriptorHash!==or.descriptorHash&&(Gt=!1),In.dependencies.set(Ur.identHash,or))}for(let Or of et.values())Or.provided.descriptorHash===Ur.descriptorHash&&(Or.provided=or)}}while(!Gt);for(let er of[...Xe,...ft])er()};for(let fe of e.workspaces){let pe=fe.anchoredLocator;m.delete(fe.anchoredDescriptor.descriptorHash),ae(fe.anchoredDescriptor,pe,new Map,{top:pe.locatorHash,optional:!1})}for(let fe of f.values()){if(!fe.root)continue;let pe=s.get(fe.subject.locatorHash);if(typeof pe>"u")continue;for(let be of fe.requests.values()){let Te=`p${WJ.makeHash(fe.subject.locatorHash,Mu.stringifyIdent(fe.ident),be.requester.locatorHash).slice(0,5)}`;g.set(Te,{subject:fe.subject.locatorHash,requested:fe.ident,rootRequester:be.requester.locatorHash,allRequesters:Array.from(Mu.allPeerRequests(be),ke=>ke.requester.locatorHash)})}let he=[...Mu.allPeerRequests(fe)];if(fe.provided.range!=="missing:"){let be=le(fe.provided),Te=be.version??"0.0.0",ke=et=>{if(et.startsWith(Lot.WorkspaceResolver.protocol)){if(!e.tryWorkspaceByLocator(be))return null;et=et.slice(Lot.WorkspaceResolver.protocol.length),(et==="^"||et==="~")&&(et="*")}return et},x=!0;for(let et of he){let Ue=ke(et.descriptor.range);if(Ue===null){x=!1;continue}if(!Vot.satisfiesWithPrereleases(Te,Ue)){x=!1;let Je=`p${WJ.makeHash(fe.subject.locatorHash,Mu.stringifyIdent(fe.ident),et.requester.locatorHash).slice(0,5)}`;p.push({type:PJ.NotCompatible,subject:pe,requested:fe.ident,requester:et.requester,version:Te,hash:Je,requirementCount:he.length})}}if(!x){let et=he.map(Ue=>ke(Ue.descriptor.range));p.push({type:PJ.NodeNotCompatible,node:fe,range:et.includes(null)?null:Vot.simplifyRanges(et),hash:fe.hash})}}else{let be=!0;for(let Te of he)if(!Te.meta?.optional){be=!1;let ke=`p${WJ.makeHash(fe.subject.locatorHash,Mu.stringifyIdent(fe.ident),Te.requester.locatorHash).slice(0,5)}`;p.push({type:PJ.NotProvided,subject:pe,requested:fe.ident,requester:Te.requester,hash:ke})}be||p.push({type:PJ.NodeNotProvided,node:fe,hash:fe.hash})}}}function*$6s(e){let t=new Map;if("children"in e)t.set(e,e);else for(let r of e.requests.values())t.set(r,r);for(let[r,s]of t){yield{request:r,root:s};for(let a of r.children.values())t.has(a)||t.set(a,s)}}function e7s(e,t){let r=[],s=[],a=!1;for(let o of e.peerWarnings)if(!(o.type===PJ.NotCompatible||o.type===PJ.NotProvided)){if(!e.tryWorkspaceByLocator(o.node.subject)){a=!0;continue}if(o.type===PJ.NodeNotCompatible){let g=e.storedResolutions.get(o.node.provided.descriptorHash);if(typeof g>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");let p=e.storedPackages.get(g);if(typeof p>"u")throw new Error("Assertion failed: Expected the package to be registered");let f=P_.mapAndFind($6s(o.node),({request:B,root:v})=>Vot.satisfiesWithPrereleases(p.version??"0.0.0",B.descriptor.range)?P_.mapAndFind.skip:B===v?Mu.prettyIdent(e.configuration,B.requester):`${Mu.prettyIdent(e.configuration,B.requester)} (via ${Mu.prettyIdent(e.configuration,v.requester)})`),m=[...Mu.allPeerRequests(o.node)].length>1?"and other dependencies request":"requests",y=o.range?Mu.prettyRange(e.configuration,o.range):Up.pretty(e.configuration,"but they have non-overlapping ranges!","redBright");r.push(`${Mu.prettyIdent(e.configuration,o.node.ident)} is listed by your project with version ${Mu.prettyReference(e.configuration,p.version??"0.0.0")} (${Up.pretty(e.configuration,o.hash,Up.Type.CODE)}), which doesn't satisfy what ${f} ${m} (${y}).`)}if(o.type===PJ.NodeNotProvided){let g=o.node.requests.size>1?" and other dependencies":"";s.push(`${Mu.prettyLocator(e.configuration,o.node.subject)} doesn't provide ${Mu.prettyIdent(e.configuration,o.node.ident)} (${Up.pretty(e.configuration,o.hash,Up.Type.CODE)}), requested by ${Mu.prettyIdent(e.configuration,o.node.requests.values().next().value.requester)}${g}.`)}}t.startSectionSync({reportFooter:()=>{t.reportWarning(hb.MessageName.EXPLAIN_PEER_DEPENDENCIES_CTA,`Some peer dependencies are incorrectly met by your project; run ${Up.pretty(e.configuration,"yarn explain peer-requirements ",Up.Type.CODE)} for details, where ${Up.pretty(e.configuration,"",Up.Type.CODE)} is the six-letter p-prefixed code.`)},skipIfEmpty:!0},()=>{for(let o of P_.sortMap(r,g=>Up.stripAnsi(g)))t.reportWarning(hb.MessageName.INCOMPATIBLE_PEER_DEPENDENCY,o);for(let o of P_.sortMap(s,g=>Up.stripAnsi(g)))t.reportWarning(hb.MessageName.MISSING_PEER_DEPENDENCY,o)}),a&&t.reportWarning(hb.MessageName.EXPLAIN_PEER_DEPENDENCIES_CTA,`Some peer dependencies are incorrectly met by dependencies; run ${Up.pretty(e.configuration,"yarn explain peer-requirements",Up.Type.CODE)} for details.`)}});var kmn=z(WAe=>{"use strict";Object.defineProperty(WAe,"__esModule",{value:!0});WAe.TelemetryManager=WAe.MetricName=void 0;WAe.derive=xmn;var Pot=(Ma(),Ai(Oa)),OJ=Ro(),Dmn=pVe(),t7s=Pot.__importStar(pne()),r7s=Pot.__importStar(xit()),Wot=Pot.__importStar(fW()),n7s=Pot.__importStar(rj()),MJ;(function(e){e.VERSION="version",e.COMMAND_NAME="commandName",e.PLUGIN_NAME="pluginName",e.INSTALL_COUNT="installCount",e.PROJECT_COUNT="projectCount",e.WORKSPACE_COUNT="workspaceCount",e.DEPENDENCY_COUNT="dependencyCount",e.EXTENSION="packageExtension"})(MJ||(WAe.MetricName=MJ={}));function xmn(e){let s=Math.floor(e.timeNow/864e5),a=e.updateInterval*864e5,o=e.state.lastUpdate??e.timeNow+a+Math.floor(a*e.randomInitialInterval),g=o+a,p=e.state.lastTips??s*864e5,f=p+864e5+8*36e5-e.timeZone,m=g<=e.timeNow,y=f<=e.timeNow,B=null;return(m||y||!e.state.lastUpdate||!e.state.lastTips)&&(B={},B.lastUpdate=m?e.timeNow:o,B.lastTips=p,B.blocks=m?{}:e.state.blocks,B.displayedTips=e.state.displayedTips),{nextState:B,triggerUpdate:m,triggerTips:y,nextTips:y?s*864e5:p}}var t8t=class{constructor(t,r){this.values=new Map,this.hits=new Map,this.enumerators=new Map,this.nextTips=0,this.displayedTips=[],this.shouldCommitTips=!1,this.configuration=t;let s=this.getRegistryPath();this.isNew=!OJ.xfs.existsSync(s),this.shouldShowTips=!1,this.sendReport(r),this.startBuffer()}commitTips(){this.shouldShowTips&&(this.shouldCommitTips=!0)}selectTip(t){let r=new Set(this.displayedTips),s=p=>p&&Dmn.YarnVersion?n7s.satisfiesWithPrereleases(Dmn.YarnVersion,p):!1,a=t.map((p,f)=>f).filter(p=>t[p]&&s(t[p]?.selector));if(a.length===0)return null;let o=a.filter(p=>!r.has(p));if(o.length===0){let p=Math.floor(a.length*.2);this.displayedTips=p>0?this.displayedTips.slice(-p):[],o=a.filter(f=>!r.has(f))}let g=o[Math.floor(Math.random()*o.length)];return this.displayedTips.push(g),this.commitTips(),t[g]}reportVersion(t){this.reportValue(MJ.VERSION,t.replace(/-git\..*/,"-git"))}reportCommandName(t){this.reportValue(MJ.COMMAND_NAME,t||"")}reportPluginName(t){this.reportValue(MJ.PLUGIN_NAME,t)}reportProject(t){this.reportEnumerator(MJ.PROJECT_COUNT,t)}reportInstall(t){this.reportHit(MJ.INSTALL_COUNT,t)}reportPackageExtension(t){this.reportValue(MJ.EXTENSION,t)}reportWorkspaceCount(t){this.reportValue(MJ.WORKSPACE_COUNT,String(t))}reportDependencyCount(t){this.reportValue(MJ.DEPENDENCY_COUNT,String(t))}reportValue(t,r){Wot.getSetWithDefault(this.values,t).add(r)}reportEnumerator(t,r){Wot.getSetWithDefault(this.enumerators,t).add(t7s.makeHash(r))}reportHit(t,r="*"){let s=Wot.getMapWithDefault(this.hits,t),a=Wot.getFactoryWithDefault(s,r,()=>0);s.set(r,a+1)}getRegistryPath(){let t=this.configuration.get("globalFolder");return OJ.ppath.join(t,"telemetry.json")}sendReport(t){let r=this.getRegistryPath(),s;try{s=OJ.xfs.readJsonSync(r)}catch{s={}}let{nextState:a,triggerUpdate:o,triggerTips:g,nextTips:p}=xmn({state:s,timeNow:Date.now(),timeZone:new Date().getTimezoneOffset()*60*1e3,randomInitialInterval:Math.random(),updateInterval:this.configuration.get("telemetryInterval")});if(this.nextTips=p,this.displayedTips=s.displayedTips??[],a!==null)try{OJ.xfs.mkdirSync(OJ.ppath.dirname(r),{recursive:!0}),OJ.xfs.writeJsonSync(r,a)}catch{return!1}if(g&&this.configuration.get("enableTips")&&(this.shouldShowTips=!0),o){let f=s.blocks??{};if(Object.keys(f).length===0){let m=`https://browser-http-intake.logs.datadoghq.eu/v1/input/${t}?ddsource=yarn`,y=B=>r7s.post(m,B,{configuration:this.configuration}).catch(()=>{});for(let[B,v]of Object.entries(s.blocks??{})){if(Object.keys(v).length===0)continue;let G=v;G.userId=B,G.reportType="primary";for(let X of Object.keys(G.enumerators??{}))G.enumerators[X]=G.enumerators[X].length;y(G);let T=new Map,O=20;for(let[X,U]of Object.entries(G.values))U.length>0&&T.set(X,U.slice(0,O));for(;T.size>0;){let X={};X.userId=B,X.reportType="secondary",X.metrics={};for(let[U,le]of T)X.metrics[U]=le.shift(),le.length===0&&T.delete(U);y(X)}}}}return!0}applyChanges(){let t=this.getRegistryPath(),r;try{r=OJ.xfs.readJsonSync(t)}catch{r={}}let s=this.configuration.get("telemetryUserId")??"*",a=r.blocks=r.blocks??{},o=a[s]=a[s]??{};for(let g of this.hits.keys()){let p=o.hits=o.hits??{},f=p[g]=p[g]??{};for(let[m,y]of this.hits.get(g))f[m]=(f[m]??0)+y}for(let g of["values","enumerators"])for(let p of this[g].keys()){let f=o[g]=o[g]??{};f[p]=[...new Set([...f[p]??[],...this[g].get(p)??[]])]}this.shouldCommitTips&&(r.lastTips=this.nextTips,r.displayedTips=this.displayedTips),OJ.xfs.mkdirSync(OJ.ppath.dirname(t),{recursive:!0}),OJ.xfs.writeJsonSync(t,r)}startBuffer(){process.on("exit",()=>{try{this.applyChanges()}catch{}})}};WAe.TelemetryManager=t8t});var Bn=z(cl=>{"use strict";Object.defineProperty(cl,"__esModule",{value:!0});cl.treeUtils=cl.tgzUtils=cl.structUtils=cl.semverUtils=cl.scriptUtils=cl.nodeUtils=cl.miscUtils=cl.formatUtils=cl.folderUtils=cl.execUtils=cl.httpUtils=cl.hashUtils=cl.PackageExtensionStatus=cl.PackageExtensionType=cl.LinkType=cl.YarnVersion=cl.Workspace=cl.WorkspaceResolver=cl.WorkspaceFetcher=cl.VirtualFetcher=cl.ThrowReport=cl.TelemetryManager=cl.reportOptionDeprecations=cl.StreamReport=cl.Report=cl.ReportError=cl.InstallMode=cl.Project=cl.PeerWarningType=cl.LOCKFILE_VERSION=cl.MultiFetcher=cl.stringifyMessageName=cl.parseMessageName=cl.MessageName=cl.Manifest=cl.LockfileResolver=cl.LightReport=cl.LegacyMigrationResolver=cl.BuildDirectiveType=cl.WindowsLinkType=cl.SettingsType=cl.FormatType=cl.Configuration=cl.TAG_REGEXP=cl.LEGACY_PLUGINS=cl.DEFAULT_RC_FILENAME=cl.Cache=cl.CACHE_CHECKPOINT=cl.CACHE_VERSION=void 0;var GO=(Ma(),Ai(Oa)),i7s=GO.__importStar(Git());cl.execUtils=i7s;var s7s=GO.__importStar(eit());cl.folderUtils=s7s;var o7s=GO.__importStar(pO());cl.formatUtils=o7s;var a7s=GO.__importStar(pne());cl.hashUtils=a7s;var c7s=GO.__importStar(xit());cl.httpUtils=c7s;var l7s=GO.__importStar(fW());cl.miscUtils=l7s;var u7s=GO.__importStar(kit());cl.nodeUtils=u7s;var g7s=GO.__importStar(fJt());cl.scriptUtils=g7s;var A7s=GO.__importStar(rj());cl.semverUtils=A7s;var d7s=GO.__importStar(ak());cl.structUtils=d7s;var p7s=GO.__importStar(GIn());cl.tgzUtils=p7s;var f7s=GO.__importStar(PIn());cl.treeUtils=f7s;var r8t=AKt();Object.defineProperty(cl,"CACHE_VERSION",{enumerable:!0,get:function(){return r8t.CACHE_VERSION}});Object.defineProperty(cl,"CACHE_CHECKPOINT",{enumerable:!0,get:function(){return r8t.CACHE_CHECKPOINT}});Object.defineProperty(cl,"Cache",{enumerable:!0,get:function(){return r8t.Cache}});var n8t=oVe();Object.defineProperty(cl,"DEFAULT_RC_FILENAME",{enumerable:!0,get:function(){return n8t.DEFAULT_RC_FILENAME}});Object.defineProperty(cl,"LEGACY_PLUGINS",{enumerable:!0,get:function(){return n8t.LEGACY_PLUGINS}});Object.defineProperty(cl,"TAG_REGEXP",{enumerable:!0,get:function(){return n8t.TAG_REGEXP}});var Oot=oVe();Object.defineProperty(cl,"Configuration",{enumerable:!0,get:function(){return Oot.Configuration}});Object.defineProperty(cl,"FormatType",{enumerable:!0,get:function(){return Oot.FormatType}});Object.defineProperty(cl,"SettingsType",{enumerable:!0,get:function(){return Oot.SettingsType}});Object.defineProperty(cl,"WindowsLinkType",{enumerable:!0,get:function(){return Oot.WindowsLinkType}});var I7s=dKt();Object.defineProperty(cl,"BuildDirectiveType",{enumerable:!0,get:function(){return I7s.BuildDirectiveType}});var C7s=fKt();Object.defineProperty(cl,"LegacyMigrationResolver",{enumerable:!0,get:function(){return C7s.LegacyMigrationResolver}});var m7s=UIn();Object.defineProperty(cl,"LightReport",{enumerable:!0,get:function(){return m7s.LightReport}});var h7s=mKt();Object.defineProperty(cl,"LockfileResolver",{enumerable:!0,get:function(){return h7s.LockfileResolver}});var _7s=Fbe();Object.defineProperty(cl,"Manifest",{enumerable:!0,get:function(){return _7s.Manifest}});var i8t=TL();Object.defineProperty(cl,"MessageName",{enumerable:!0,get:function(){return i8t.MessageName}});Object.defineProperty(cl,"parseMessageName",{enumerable:!0,get:function(){return i8t.parseMessageName}});Object.defineProperty(cl,"stringifyMessageName",{enumerable:!0,get:function(){return i8t.stringifyMessageName}});var y7s=H5t();Object.defineProperty(cl,"MultiFetcher",{enumerable:!0,get:function(){return y7s.MultiFetcher}});var Mot=Rmn();Object.defineProperty(cl,"LOCKFILE_VERSION",{enumerable:!0,get:function(){return Mot.LOCKFILE_VERSION}});Object.defineProperty(cl,"PeerWarningType",{enumerable:!0,get:function(){return Mot.PeerWarningType}});Object.defineProperty(cl,"Project",{enumerable:!0,get:function(){return Mot.Project}});Object.defineProperty(cl,"InstallMode",{enumerable:!0,get:function(){return Mot.InstallMode}});var Gmn=CO();Object.defineProperty(cl,"ReportError",{enumerable:!0,get:function(){return Gmn.ReportError}});Object.defineProperty(cl,"Report",{enumerable:!0,get:function(){return Gmn.Report}});var Fmn=fVe();Object.defineProperty(cl,"StreamReport",{enumerable:!0,get:function(){return Fmn.StreamReport}});Object.defineProperty(cl,"reportOptionDeprecations",{enumerable:!0,get:function(){return Fmn.reportOptionDeprecations}});var b7s=kmn();Object.defineProperty(cl,"TelemetryManager",{enumerable:!0,get:function(){return b7s.TelemetryManager}});var E7s=JKt();Object.defineProperty(cl,"ThrowReport",{enumerable:!0,get:function(){return E7s.ThrowReport}});var B7s=z5t();Object.defineProperty(cl,"VirtualFetcher",{enumerable:!0,get:function(){return B7s.VirtualFetcher}});var v7s=$5t();Object.defineProperty(cl,"WorkspaceFetcher",{enumerable:!0,get:function(){return v7s.WorkspaceFetcher}});var S7s=cAe();Object.defineProperty(cl,"WorkspaceResolver",{enumerable:!0,get:function(){return S7s.WorkspaceResolver}});var w7s=KKt();Object.defineProperty(cl,"Workspace",{enumerable:!0,get:function(){return w7s.Workspace}});var T7s=pVe();Object.defineProperty(cl,"YarnVersion",{enumerable:!0,get:function(){return T7s.YarnVersion}});var s8t=iAe();Object.defineProperty(cl,"LinkType",{enumerable:!0,get:function(){return s8t.LinkType}});Object.defineProperty(cl,"PackageExtensionType",{enumerable:!0,get:function(){return s8t.PackageExtensionType}});Object.defineProperty(cl,"PackageExtensionStatus",{enumerable:!0,get:function(){return s8t.PackageExtensionStatus}})});var a8t=z(Qot=>{"use strict";Object.defineProperty(Qot,"__esModule",{value:!0});Qot.WorkspaceRequiredError=void 0;var N7s=Bn(),Zmn=Ro(),R7s=(Fl(),Ai(dg)),o8t=class extends R7s.UsageError{constructor(t,r){let s=Zmn.ppath.relative(t,r),a=Zmn.ppath.join(t,N7s.Manifest.fileName);super(`This command can only be run from within a workspace of your project (${s} isn't a workspace of ${a}).`)}};Qot.WorkspaceRequiredError=o8t});var c8t=z(Yot=>{"use strict";Object.defineProperty(Yot,"__esModule",{value:!0});Yot.getDynamicLibs=void 0;var vj=(Ma(),Ai(Oa)),D7s=vj.__importStar(nl()),x7s=vj.__importStar(Bn()),k7s=vj.__importStar(Ro()),G7s=vj.__importStar(SJ()),F7s=vj.__importStar(aO()),Z7s=vj.__importStar(uVe()),L7s=vj.__importStar((Fl(),Ai(dg))),V7s=vj.__importStar(Lh()),W7s=vj.__importStar((_L(),Ai(hL))),P7s=()=>new Map([["@yarnpkg/cli",D7s],["@yarnpkg/core",x7s],["@yarnpkg/fslib",k7s],["@yarnpkg/libzip",G7s],["@yarnpkg/parsers",F7s],["@yarnpkg/shell",Z7s],["clipanion",L7s],["semver",V7s],["typanion",W7s]]);Yot.getDynamicLibs=P7s});var l8t=z((SQc,O7s)=>{O7s.exports={name:"@yarnpkg/cli",version:"4.5.1",license:"BSD-2-Clause",main:"./lib/index.js",exports:{".":"./lib/index.js","./package.json":"./package.json"},dependencies:{"@yarnpkg/core":"^4.1.4","@yarnpkg/fslib":"^3.1.0","@yarnpkg/libzip":"^3.1.0","@yarnpkg/parsers":"^3.0.2","@yarnpkg/plugin-compat":"^4.0.9","@yarnpkg/plugin-constraints":"^4.0.2","@yarnpkg/plugin-dlx":"^4.0.0","@yarnpkg/plugin-essentials":"^4.2.2","@yarnpkg/plugin-exec":"^3.0.0","@yarnpkg/plugin-file":"^3.0.0","@yarnpkg/plugin-git":"^3.1.0","@yarnpkg/plugin-github":"^3.0.0","@yarnpkg/plugin-http":"^3.0.1","@yarnpkg/plugin-init":"^4.0.1","@yarnpkg/plugin-interactive-tools":"^4.0.1","@yarnpkg/plugin-link":"^3.0.0","@yarnpkg/plugin-nm":"^4.0.5","@yarnpkg/plugin-npm":"^3.0.1","@yarnpkg/plugin-npm-cli":"^4.0.4","@yarnpkg/plugin-pack":"^4.0.0","@yarnpkg/plugin-patch":"^4.0.1","@yarnpkg/plugin-pnp":"^4.0.5","@yarnpkg/plugin-pnpm":"^2.0.0","@yarnpkg/plugin-stage":"^4.0.0","@yarnpkg/plugin-typescript":"^4.1.1","@yarnpkg/plugin-version":"^4.0.4","@yarnpkg/plugin-workspace-tools":"^4.1.0","@yarnpkg/shell":"^4.1.0","ci-info":"^4.0.0",clipanion:"^4.0.0-rc.2",semver:"^7.1.2",tslib:"^2.4.0",typanion:"^3.14.0"},devDependencies:{"@types/semver":"^7.1.0","@yarnpkg/builder":"^4.2.0","@yarnpkg/monorepo":"^0.0.0","@yarnpkg/pnpify":"^4.1.3"},peerDependencies:{"@yarnpkg/core":"^4.1.4"},scripts:{postpack:"rm -rf lib",prepack:'run build:compile "$(pwd)"',"build:cli+hook":"run build:pnp:hook && builder build bundle","build:cli":"builder build bundle","run:cli":"builder run","update-local":"run build:cli --no-git-hash && rsync -a --delete bundles/ bin/"},publishConfig:{main:"./lib/index.js",bin:null,exports:{".":"./lib/index.js","./package.json":"./package.json"}},files:["/lib/**/*","!/lib/pluginConfiguration.*","!/lib/cli.*"],"@yarnpkg/builder":{bundles:{standard:["@yarnpkg/plugin-essentials","@yarnpkg/plugin-compat","@yarnpkg/plugin-constraints","@yarnpkg/plugin-dlx","@yarnpkg/plugin-exec","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-link","@yarnpkg/plugin-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm","@yarnpkg/plugin-stage","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-workspace-tools"]}},repository:{type:"git",url:"ssh://git@github.com/yarnpkg/berry.git",directory:"packages/yarnpkg-cli"},engines:{node:">=18.12.0"}}});var g8t=z(u8t=>{"use strict";Object.defineProperty(u8t,"__esModule",{value:!0});u8t.getPluginConfiguration=H7s;var M7s=(Ma(),Ai(Oa)),Q7s=M7s.__importDefault(l8t()),Y7s=c8t();function H7s(){let e=new Set;for(let r of Q7s.default["@yarnpkg/builder"].bundles.standard)e.add(r);let t=(0,Y7s.getDynamicLibs)();for(let r of e)t.set(r,Dt(r).default);return{plugins:e,modules:t}}});var Lmn=z(A8t=>{"use strict";Object.defineProperty(A8t,"__esModule",{value:!0});A8t.openWorkspace=U7s;var X7s=Bn(),J7s=a8t();async function U7s(e,t){let{project:r,workspace:s}=await X7s.Project.find(e,t);if(!s)throw new J7s.WorkspaceRequiredError(r.cwd,t);return s}});var d8t=z(Hot=>{"use strict";Object.defineProperty(Hot,"__esModule",{value:!0});Hot.pluginCommands=void 0;Hot.pluginCommands=new Map([])});var Omn=z(Xot=>{"use strict";Object.defineProperty(Xot,"__esModule",{value:!0});Xot.getCli=ijs;Xot.runExit=sjs;var Sj=Bn(),SH=Ro(),K7s=Dt("child_process"),j7s=Uge(),NEe=(Fl(),Ai(dg)),z7s=d8t(),q7s=g8t();function Vmn({cwd:e,pluginConfiguration:t}){let r=new NEe.Cli({binaryLabel:"Yarn Package Manager",binaryName:"yarn",binaryVersion:Sj.YarnVersion??""});return Object.assign(r,{defaultContext:{...NEe.Cli.defaultContext,cwd:e,plugins:t,quiet:!1,stdin:process.stdin,stdout:process.stdout,stderr:process.stderr}})}function $7s(e){if(Sj.miscUtils.parseOptionalBoolean(process.env.YARN_IGNORE_NODE))return!0;let r=process.versions.node,s=">=18.12.0";if(Sj.semverUtils.satisfiesWithPrereleases(r,s))return!0;let a=new NEe.UsageError(`This tool requires a Node version compatible with ${s} (got ${r}). Upgrade Node, or set \`YARN_IGNORE_NODE=1\` in your environment.`);return NEe.Cli.defaultContext.stdout.write(e.error(a)),!1}async function Wmn({selfPath:e,pluginConfiguration:t}){return await Sj.Configuration.find(SH.npath.toPortablePath(process.cwd()),t,{strict:!1,usePathCheck:e})}function ejs(e,t,{yarnPath:r}){if(!SH.xfs.existsSync(r))return e.error(new Error(`The "yarn-path" option has been set, but the specified location doesn't exist (${r}).`)),1;process.on("SIGINT",()=>{});let s={stdio:"inherit",env:{...process.env,YARN_IGNORE_PATH:"1"}};try{(0,K7s.execFileSync)(process.execPath,[SH.npath.fromPortablePath(r),...t],s)}catch(a){return a.status??1}return 0}function tjs(e,t){let r=null,s=t;return t.length>=2&&t[0]==="--cwd"?(r=SH.npath.toPortablePath(t[1]),s=t.slice(2)):t.length>=1&&t[0].startsWith("--cwd=")?(r=SH.npath.toPortablePath(t[0].slice(6)),s=t.slice(1)):t[0]==="add"&&t[t.length-2]==="--cwd"&&(r=SH.npath.toPortablePath(t[t.length-1]),s=t.slice(0,t.length-2)),e.defaultContext.cwd=r!==null?SH.ppath.resolve(r):SH.ppath.cwd(),s}function rjs(e,{configuration:t}){if(!t.get("enableTelemetry")||j7s.isCI||!process.stdout.isTTY)return;Sj.Configuration.telemetry=new Sj.TelemetryManager(t,"puba9cdc10ec5790a2cf4969dd413a47270");let s=/^@yarnpkg\/plugin-(.*)$/;for(let a of t.plugins.keys())z7s.pluginCommands.has(a.match(s)?.[1]??"")&&Sj.Configuration.telemetry?.reportPluginName(a);e.binaryVersion&&Sj.Configuration.telemetry.reportVersion(e.binaryVersion)}function Pmn(e,{configuration:t}){for(let r of t.plugins.values())for(let s of r.commands||[])e.register(s)}async function njs(e,t,{selfPath:r,pluginConfiguration:s}){if(!$7s(e))return 1;let a=await Wmn({selfPath:r,pluginConfiguration:s}),o=a.get("yarnPath"),g=a.get("ignorePath");if(o&&!g)return ejs(e,t,{yarnPath:o});delete process.env.YARN_IGNORE_PATH;let p=tjs(e,t);rjs(e,{configuration:a}),Pmn(e,{configuration:a});let f=e.process(p,e.defaultContext);return f.help||Sj.Configuration.telemetry?.reportCommandName(f.path.join(" ")),await e.run(f,e.defaultContext)}async function ijs({cwd:e=SH.ppath.cwd(),pluginConfiguration:t=(0,q7s.getPluginConfiguration)()}={}){let r=Vmn({cwd:e,pluginConfiguration:t}),s=await Wmn({pluginConfiguration:t,selfPath:null});return Pmn(r,{configuration:s}),r}async function sjs(e,{cwd:t=SH.ppath.cwd(),selfPath:r,pluginConfiguration:s}){let a=Vmn({cwd:t,pluginConfiguration:s});function o(){NEe.Cli.defaultContext.stdout.write(`ERROR: Yarn is terminating due to an unexpected empty event loop. -Please report this issue at https://github.com/yarnpkg/berry/issues.`)}process.once("beforeExit",o);try{process.exitCode=42,process.exitCode=await njs(a,e,{selfPath:r,pluginConfiguration:s})}catch(g){NEe.Cli.defaultContext.stdout.write(a.error(g)),process.exitCode=1}finally{process.off("beforeExit",o),await SH.xfs.rmtempPromise()}}});var nl=z(lR=>{"use strict";Object.defineProperty(lR,"__esModule",{value:!0});lR.pluginCommands=lR.runExit=lR.getCli=lR.openWorkspace=lR.getPluginConfiguration=lR.getDynamicLibs=lR.WorkspaceRequiredError=lR.BaseCommand=void 0;var ojs=p6r();Object.defineProperty(lR,"BaseCommand",{enumerable:!0,get:function(){return ojs.BaseCommand}});var ajs=a8t();Object.defineProperty(lR,"WorkspaceRequiredError",{enumerable:!0,get:function(){return ajs.WorkspaceRequiredError}});var cjs=c8t();Object.defineProperty(lR,"getDynamicLibs",{enumerable:!0,get:function(){return cjs.getDynamicLibs}});var ljs=g8t();Object.defineProperty(lR,"getPluginConfiguration",{enumerable:!0,get:function(){return ljs.getPluginConfiguration}});var ujs=Lmn();Object.defineProperty(lR,"openWorkspace",{enumerable:!0,get:function(){return ujs.openWorkspace}});var Mmn=Omn();Object.defineProperty(lR,"getCli",{enumerable:!0,get:function(){return Mmn.getCli}});Object.defineProperty(lR,"runExit",{enumerable:!0,get:function(){return Mmn.runExit}});var gjs=d8t();Object.defineProperty(lR,"pluginCommands",{enumerable:!0,get:function(){return gjs.pluginCommands}})});var nhn=z((eYc,rhn)=>{"use strict";var $mn=Dt("stream").PassThrough,ehn=Dt("stream").Writable,thn=Dt("util");thn.inherits(m8t,$mn);thn.inherits(h8t,ehn);function m8t(e,t){$mn.call(this,t),this.factory=e,this.opts=t}m8t.prototype._flush=function(e){var t=this.factory();t.pipe(new h8t(this,this.opts)).on("finish",e),t.resume()};function h8t(e,t){ehn.call(this,t),this.target=e}h8t.prototype._write=function(e,t,r){this.target.push(e),r()};function C8t(e,t){t=t||{};var r;return typeof e=="function"?r=e:(e.pause(),r=function(){return e}),new m8t(r,t)}C8t.obj=function(e,t){return t=t||{},t.objectMode=!0,C8t(e,t)};rhn.exports=C8t});var ohn=cc(()=>{});function y8t(e,t){return e.map(r=>r.trim()).filter(Boolean).join(t)}function mjs(e,t){if(!e)return ahn;let r=y8t(e,"|");return t?t(r):new RegExp(`^[\\s|*]*(${r})[:\\s]+(.*)`,"i")}function hjs(e,t){if(!e)return ahn;let r=t?"g":"gi";return new RegExp(`(?:.*?)??\\s*([\\w-\\.\\/]*?)??(${y8t(e,"|")})([\\w-]*\\d+)`,r)}function _js(e){if(!e)return/()(.+)/gi;let t=y8t(e,"|");return new RegExp(`(${t})(?:\\s+(.*?))(?=(?:${t})|$)`,"gi")}function chn(e={}){let t=mjs(e.noteKeywords,e.notesPattern),r=hjs(e.issuePrefixes,e.issuePrefixesCaseSensitive),s=_js(e.referenceActions);return{notes:t,referenceParts:r,references:s,mentions:/@([\w-]+)/g}}var ahn,lhn=cc(()=>{ahn=/(?!.*)/});function nWe(e){let t=e.match(/[^\r\n]/);if(typeof t?.index!="number")return"";let r=t.index,s=e.length-1;for(;e[s]==="\r"||e[s]===` -`;)s--;return e.substring(r,s+1)}function OAe(e,t){return e?`${e} -${t||""}`:t||""}function uhn(e){return e?t=>!t.startsWith(e):()=>!0}function ghn(e){let t=e.indexOf(yjs);return t===-1?e:e.slice(0,t)}function Ahn(e){return!e.match(/^\s*gpg:/)}var yjs,dhn=cc(()=>{yjs="# ------------------------ >8 ------------------------"});var phn,fhn=cc(()=>{phn={noteKeywords:["BREAKING CHANGE","BREAKING-CHANGE"],issuePrefixes:["#"],referenceActions:["close","closes","closed","fix","fixes","fixed","resolve","resolves","resolved"],headerPattern:/^(\w*)(?:\(([\w$.\-*/ ]*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],revertPattern:/^Revert\s"([\s\S]*)"\s*This reverts commit (\w*)\./,revertCorrespondence:["header","hash"],fieldPattern:/^-(.*?)-$/}});function b8t(e={}){return{merge:null,revert:null,header:null,body:null,footer:null,notes:[],mentions:[],references:[],...e}}var iWe,E8t=cc(()=>{lhn();dhn();fhn();iWe=class{options;regexes;lines=[];lineIndex=0;commit=b8t();constructor(t={}){this.options={...phn,...t},this.regexes=chn(this.options)}currentLine(){return this.lines[this.lineIndex]}nextLine(){return this.lines[this.lineIndex++]}isLineAvailable(){return this.lineIndex{t[g]=o[p+1]||null}),!0):!1}parseHeader(t){t&&this.skipEmptyLines();let{commit:r,options:s}=this,a=s.headerCorrespondence||[],o=this.nextLine(),g=null;o&&(s.breakingHeaderPattern&&(g=o.match(s.breakingHeaderPattern)),!g&&s.headerPattern&&(g=o.match(s.headerPattern))),o&&(r.header=o),g&&a.forEach((p,f)=>{r[p]=g[f+1]||null})}parseMeta(){let{options:t,commit:r}=this;if(!t.fieldPattern||!this.isLineAvailable())return!1;let s,a=null,o=!1;for(;this.isLineAvailable();){if(s=this.currentLine().match(t.fieldPattern),s){a=s[1]||null,this.nextLine();continue}if(a)o=!0,r[a]=OAe(r[a],this.currentLine()),this.nextLine();else break}return o}parseNotes(){let{regexes:t,commit:r}=this;if(!this.isLineAvailable())return!1;let s=this.currentLine().match(t.notes),a=[];if(s){let o={title:s[1],text:s[2]};for(r.notes.push(o),r.footer=OAe(r.footer,this.currentLine()),this.nextLine();this.isLineAvailable();){if(this.parseMeta()||this.parseNotes())return!0;if(a=this.parseReferences(this.currentLine()),a.length?r.references.push(...a):o.text=OAe(o.text,this.currentLine()),r.footer=OAe(r.footer,this.currentLine()),this.nextLine(),a.length)break}return!0}return!1}parseBodyAndFooter(t){let{commit:r}=this;if(!this.isLineAvailable())return t;let s=this.parseReferences(this.currentLine()),a=!s.length&&t;return a?r.body=OAe(r.body,this.currentLine()):(r.references.push(...s),r.footer=OAe(r.footer,this.currentLine())),this.nextLine(),a}parseBreakingHeader(){let{commit:t,options:r}=this;if(!r.breakingHeaderPattern||t.notes.length||!t.header)return;let s=t.header.match(r.breakingHeaderPattern);s&&t.notes.push({title:"BREAKING CHANGE",text:s[3]})}parseMentions(t){let{commit:r,regexes:s}=this,a;for(;a=s.mentions.exec(t),!!a;)r.mentions.push(a[1])}parseRevert(t){let{commit:r,options:s}=this,a=s.revertCorrespondence||[],o=s.revertPattern?t.match(s.revertPattern):null;o&&(r.revert=a.reduce((g,p,f)=>(g[p]=o[f+1]||null,g),{}))}cleanupCommit(){let{commit:t}=this;t.body&&(t.body=nWe(t.body)),t.footer&&(t.footer=nWe(t.footer)),t.notes.forEach(r=>{r.text=nWe(r.text)})}parse(t){if(!t.trim())throw new TypeError("Expected a raw commit");let r=uhn(this.options.commentChar),s=nWe(t).split(/\r?\n/),a=ghn(s).filter(f=>r(f)&&Ahn(f)),o=b8t();this.lines=a,this.lineIndex=0,this.commit=o;let g=this.parseMerge();this.parseHeader(g),o.header&&(o.references=this.parseReferences(o.header));let p=!0;for(;this.isLineAvailable();)this.parseMeta(),this.parseNotes()&&(p=!1),this.parseBodyAndFooter(p)||(p=!1);return this.parseBreakingHeader(),this.parseMentions(t),this.parseRevert(t),this.cleanupCommit(),o}}});import{Transform as bjs}from"stream";function Ihn(e={}){let t=e.warn,r=t===!0?s=>{throw s}:t?s=>t(s.toString()):()=>{};return async function*(a){let o=new iWe(e),g;for await(g of a)try{yield o.parse(g.toString())}catch(p){r(p)}}}function B8t(e={}){return bjs.from(Ihn(e))}var Chn=cc(()=>{E8t()});var mhn={};jf(mhn,{CommitParser:()=>iWe,createCommitObject:()=>b8t,parseCommits:()=>Ihn,parseCommitsStream:()=>B8t});var v8t=cc(()=>{ohn();E8t();Chn()});function Ejs(e,t){let r,s;for(let a in t)if(r=e[a],s=t[a],typeof r=="string"&&(r=r.trim()),typeof s=="string"&&(s=s.trim()),r!==s)return!1;return!0}function hhn(e,t){if(!t.size)return null;let r=e.raw||e;for(let s of t)if(s.revert&&Ejs(r,s.revert))return s;return null}var _hn=cc(()=>{});var DEe,S8t=cc(()=>{_hn();DEe=class{hold=new Set;holdRevertsCount=0;*process(t){let{hold:r}=this,s=hhn(t,r);if(s){r.delete(s),this.holdRevertsCount--;return}if(t.revert){r.add(t),this.holdRevertsCount++;return}this.holdRevertsCount>0?r.add(t):(r.size&&(yield*r,r.clear()),yield t)}*flush(){let{hold:t}=this;t.size&&(yield*t,t.clear())}}});import{Transform as Bjs}from"stream";async function*yhn(e){let t=new DEe;for await(let r of e)yield*t.process(r);yield*t.flush()}function*w8t(e){let t=new DEe;for(let r of e)yield*t.process(r);yield*t.flush()}function vjs(){return Bjs.from(yhn)}var bhn=cc(()=>{S8t()});var Ehn={};jf(Ehn,{RevertedCommitsFilter:()=>DEe,filterRevertedCommits:()=>yhn,filterRevertedCommitsStream:()=>vjs,filterRevertedCommitsSync:()=>w8t});var T8t=cc(()=>{S8t();bhn()});var EF=z(bW=>{"use strict";bW.__esModule=!0;bW.extend=Dhn;bW.indexOf=Fjs;bW.escapeExpression=Zjs;bW.isEmpty=Ljs;bW.createFrame=Vjs;bW.blockParams=Wjs;bW.appendContextPath=Pjs;var Djs={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"="},xjs=/[&<>"'`=]/g,kjs=/[&<>"'`=]/;function Gjs(e){return Djs[e]}function Dhn(e){for(var t=1;t{"use strict";qot.__esModule=!0;var x8t=["description","fileName","lineNumber","endLineNumber","message","name","number","stack"];function k8t(e,t){var r=t&&t.loc,s=void 0,a=void 0,o=void 0,g=void 0;r&&(s=r.start.line,a=r.end.line,o=r.start.column,g=r.end.column,e+=" - "+s+":"+o);for(var p=Error.prototype.constructor.call(this,e),f=0;f{"use strict";$ot.__esModule=!0;var G8t=EF();$ot.default=function(e){e.registerHelper("blockHelperMissing",function(t,r){var s=r.inverse,a=r.fn;if(t===!0)return a(this);if(t===!1||t==null)return s(this);if(G8t.isArray(t))return t.length>0?(r.ids&&(r.ids=[r.name]),e.helpers.each(t,r)):s(this);if(r.data&&r.ids){var o=G8t.createFrame(r.data);o.contextPath=G8t.appendContextPath(r.data.contextPath,r.name),r={data:o}}return a(t,r)})};Ghn.exports=$ot.default});var Lhn=z((eat,Zhn)=>{"use strict";eat.__esModule=!0;function Ojs(e){return e&&e.__esModule?e:{default:e}}var aWe=EF(),Mjs=FO(),Qjs=Ojs(Mjs);eat.default=function(e){e.registerHelper("each",function(t,r){if(!r)throw new Qjs.default("Must pass iterator to #each");var s=r.fn,a=r.inverse,o=0,g="",p=void 0,f=void 0;r.data&&r.ids&&(f=aWe.appendContextPath(r.data.contextPath,r.ids[0])+"."),aWe.isFunction(t)&&(t=t.call(this)),r.data&&(p=aWe.createFrame(r.data));function m(T,O,X){p&&(p.key=T,p.index=O,p.first=O===0,p.last=!!X,f&&(p.contextPath=f+T)),g=g+s(t[T],{data:p,blockParams:aWe.blockParams([t[T],T],[f+T,null])})}if(t&&typeof t=="object")if(aWe.isArray(t))for(var y=t.length;o{"use strict";tat.__esModule=!0;function Yjs(e){return e&&e.__esModule?e:{default:e}}var Hjs=FO(),Xjs=Yjs(Hjs);tat.default=function(e){e.registerHelper("helperMissing",function(){if(arguments.length!==1)throw new Xjs.default('Missing helper: "'+arguments[arguments.length-1].name+'"')})};Vhn.exports=tat.default});var Qhn=z((rat,Mhn)=>{"use strict";rat.__esModule=!0;function Jjs(e){return e&&e.__esModule?e:{default:e}}var Phn=EF(),Ujs=FO(),Ohn=Jjs(Ujs);rat.default=function(e){e.registerHelper("if",function(t,r){if(arguments.length!=2)throw new Ohn.default("#if requires exactly one argument");return Phn.isFunction(t)&&(t=t.call(this)),!r.hash.includeZero&&!t||Phn.isEmpty(t)?r.inverse(this):r.fn(this)}),e.registerHelper("unless",function(t,r){if(arguments.length!=2)throw new Ohn.default("#unless requires exactly one argument");return e.helpers.if.call(this,t,{fn:r.inverse,inverse:r.fn,hash:r.hash})})};Mhn.exports=rat.default});var Hhn=z((nat,Yhn)=>{"use strict";nat.__esModule=!0;nat.default=function(e){e.registerHelper("log",function(){for(var t=[void 0],r=arguments[arguments.length-1],s=0;s{"use strict";iat.__esModule=!0;iat.default=function(e){e.registerHelper("lookup",function(t,r,s){return t&&s.lookupProperty(t,r)})};Xhn.exports=iat.default});var Khn=z((sat,Uhn)=>{"use strict";sat.__esModule=!0;function Kjs(e){return e&&e.__esModule?e:{default:e}}var cWe=EF(),jjs=FO(),zjs=Kjs(jjs);sat.default=function(e){e.registerHelper("with",function(t,r){if(arguments.length!=2)throw new zjs.default("#with requires exactly one argument");cWe.isFunction(t)&&(t=t.call(this));var s=r.fn;if(cWe.isEmpty(t))return r.inverse(this);var a=r.data;return r.data&&r.ids&&(a=cWe.createFrame(r.data),a.contextPath=cWe.appendContextPath(r.data.contextPath,r.ids[0])),s(t,{data:a,blockParams:cWe.blockParams([t],[a&&a.contextPath])})})};Uhn.exports=sat.default});var F8t=z(oat=>{"use strict";oat.__esModule=!0;oat.registerDefaultHelpers=Azs;oat.moveHelperToHooks=dzs;function MAe(e){return e&&e.__esModule?e:{default:e}}var qjs=Fhn(),$js=MAe(qjs),ezs=Lhn(),tzs=MAe(ezs),rzs=Whn(),nzs=MAe(rzs),izs=Qhn(),szs=MAe(izs),ozs=Hhn(),azs=MAe(ozs),czs=Jhn(),lzs=MAe(czs),uzs=Khn(),gzs=MAe(uzs);function Azs(e){$js.default(e),tzs.default(e),nzs.default(e),szs.default(e),azs.default(e),lzs.default(e),gzs.default(e)}function dzs(e,t,r){e.helpers[t]&&(e.hooks[t]=e.helpers[t],r||delete e.helpers[t])}});var zhn=z((aat,jhn)=>{"use strict";aat.__esModule=!0;var pzs=EF();aat.default=function(e){e.registerDecorator("inline",function(t,r,s,a){var o=t;return r.partials||(r.partials={},o=function(g,p){var f=s.partials;s.partials=pzs.extend({},f,r.partials);var m=t(g,p);return s.partials=f,m}),r.partials[a.args[0]]=a.fn,o})};jhn.exports=aat.default});var qhn=z(Z8t=>{"use strict";Z8t.__esModule=!0;Z8t.registerDefaultDecorators=mzs;function fzs(e){return e&&e.__esModule?e:{default:e}}var Izs=zhn(),Czs=fzs(Izs);function mzs(e){Czs.default(e)}});var L8t=z((cat,$hn)=>{"use strict";cat.__esModule=!0;var hzs=EF(),xEe={methodMap:["debug","info","warn","error"],level:"info",lookupLevel:function(t){if(typeof t=="string"){var r=hzs.indexOf(xEe.methodMap,t.toLowerCase());r>=0?t=r:t=parseInt(t,10)}return t},log:function(t){if(t=xEe.lookupLevel(t),typeof console<"u"&&xEe.lookupLevel(xEe.level)<=t){var r=xEe.methodMap[t];console[r]||(r="log");for(var s=arguments.length,a=Array(s>1?s-1:0),o=1;o{"use strict";V8t.__esModule=!0;V8t.createNewLookupObject=yzs;var _zs=EF();function yzs(){for(var e=arguments.length,t=Array(e),r=0;r{"use strict";lWe.__esModule=!0;lWe.createProtoAccessControl=vzs;lWe.resultIsAllowed=Szs;lWe.resetLoggedProperties=Tzs;function bzs(e){return e&&e.__esModule?e:{default:e}}var t_n=e_n(),Ezs=L8t(),Bzs=bzs(Ezs),lat=Object.create(null);function vzs(e){var t=Object.create(null);t.constructor=!1,t.__defineGetter__=!1,t.__defineSetter__=!1,t.__lookupGetter__=!1;var r=Object.create(null);return r.__proto__=!1,{properties:{whitelist:t_n.createNewLookupObject(r,e.allowedProtoProperties),defaultValue:e.allowProtoPropertiesByDefault},methods:{whitelist:t_n.createNewLookupObject(t,e.allowedProtoMethods),defaultValue:e.allowProtoMethodsByDefault}}}function Szs(e,t,r){return r_n(typeof e=="function"?t.methods:t.properties,r)}function r_n(e,t){return e.whitelist[t]!==void 0?e.whitelist[t]===!0:e.defaultValue!==void 0?e.defaultValue:(wzs(t),!1)}function wzs(e){lat[e]!==!0&&(lat[e]=!0,Bzs.default.log("error",'Handlebars: Access has been denied to resolve the property "'+e+`" because it is not an "own property" of its parent. +`+(0,Bmn.stringifySyml)(r)}async persistLockfile(){let t=Mf.ppath.join(this.cwd,Mf.Filename.lockfile),r="";try{r=await Mf.xfs.readFilePromise(t,"utf8")}catch{}let s=this.generateLockfile(),a=(0,Mf.normalizeLineEndings)(r,s);a!==r&&(await Mf.xfs.writeFilePromise(t,a),this.lockFileChecksum=kmn(a),this.lockfileNeedsRefresh=!1)}async persistInstallStateFile(){let t=[];for(let g of Object.values(r8t))t.push(...g);let r=(0,e8t.default)(this,t),s=Smn.default.serialize(r),a=QJ.makeHash(s);if(this.installStateChecksum===a)return;let o=this.configuration.get("installStatePath");await Mf.xfs.mkdirPromise(Mf.ppath.dirname(o),{recursive:!0}),await Mf.xfs.writeFilePromise(o,await n7s(s)),this.installStateChecksum=a}async restoreInstallState({restoreLinkersCustomData:t=!0,restoreResolutions:r=!0,restoreBuildState:s=!0}={}){let a=this.configuration.get("installStatePath"),o;try{let g=await i7s(await Mf.xfs.readFilePromise(a));o=Smn.default.deserialize(g),this.installStateChecksum=QJ.makeHash(g)}catch{r&&await this.applyLightResolution();return}t&&typeof o.linkersCustomData<"u"&&(this.linkersCustomData=o.linkersCustomData),s&&Object.assign(this,(0,e8t.default)(o,r8t.restoreBuildState)),r&&(o.lockFileChecksum===this.lockFileChecksum?Object.assign(this,(0,e8t.default)(o,r8t.restoreResolutions)):await this.applyLightResolution())}async applyLightResolution(){await this.resolveEverything({lockfileOnly:!0,report:new Rmn.ThrowReport}),await this.persistInstallStateFile()}async persist(){let t=(0,t8t.default)(4);await Promise.all([this.persistLockfile(),...this.workspaces.map(r=>t(()=>r.persistManifest()))])}async cacheCleanup({cache:t,report:r}){if(this.configuration.get("enableGlobalCache"))return null;let s=new Set([".gitignore"]);if(!(0,z6s.isFolderInside)(t.cwd,this.cwd)||!await Mf.xfs.existsPromise(t.cwd))return null;let a=[];for(let g of await Mf.xfs.readdirPromise(t.cwd)){if(s.has(g))continue;let p=Mf.ppath.resolve(t.cwd,g);t.markedFiles.has(p)||(t.immutable?r.reportError(_b.MessageName.IMMUTABLE_CACHE,`${Kp.pretty(this.configuration,Mf.ppath.basename(p),"magenta")} appears to be unused and would be marked for deletion, but the cache is immutable`):a.push(Mf.xfs.lstatPromise(p).then(async f=>(await Mf.xfs.removePromise(p),f.size))))}if(a.length===0)return null;let o=await Promise.all(a);return{count:a.length,size:o.reduce((g,p)=>g+p,0)}}};FO.Project=n8t;function s7s({project:e,allDescriptors:t,allResolutions:r,allPackages:s,accessibleLocators:a=new Set,optionalBuilds:o=new Set,peerRequirements:g=new Map,peerWarnings:p=[],peerRequirementNodes:f=new Map,volatileDescriptors:m=new Set}){let y=new Map,B=[],v=new Map,k=new Map,T=new Map,O=new Map,X=new Map(e.workspaces.map(fe=>{let pe=fe.anchoredLocator.locatorHash,he=s.get(pe);if(typeof he>"u")throw new Error("Assertion failed: The workspace should have an associated package");return[pe,Mu.copyPackage(he)]})),U=()=>{let fe=Mf.xfs.mktempSync(),pe=Mf.ppath.join(fe,"stacktrace.log"),he=String(B.length+1).length,be=B.map((Te,ke)=>`${`${ke+1}.`.padStart(he," ")} ${Mu.stringifyLocator(Te)} +`).join("");throw Mf.xfs.writeFileSync(pe,be),Mf.xfs.detachTemp(fe),new Jne.ReportError(_b.MessageName.STACK_OVERFLOW_RESOLUTION,`Encountered a stack overflow when resolving peer dependencies; cf ${Vot.npath.fromPortablePath(pe)}`)},le=fe=>{let pe=r.get(fe.descriptorHash);if(typeof pe>"u")throw new Error("Assertion failed: The resolution should have been registered");let he=s.get(pe);if(!he)throw new Error("Assertion failed: The package could not be found");return he},ae=(fe,pe,he,{top:be,optional:Te})=>{B.length>1e3&&U(),B.push(pe);let ke=ge(fe,pe,he,{top:be,optional:Te});return B.pop(),ke},ge=(fe,pe,he,{top:be,optional:Te})=>{if(Te||o.delete(pe.locatorHash),a.has(pe.locatorHash))return;a.add(pe.locatorHash);let ke=s.get(pe.locatorHash);if(!ke)throw new Error(`Assertion failed: The package (${Mu.prettyLocator(e.configuration,pe)}) should have been registered`);let x=[],et=new Map,Ue=[],Je=[],Xe=[],ft=[];for(let er of Array.from(ke.dependencies.values())){if(ke.peerDependencies.has(er.identHash)&&ke.locatorHash!==be)continue;if(Mu.isVirtualDescriptor(er))throw new Error("Assertion failed: Virtual packages shouldn't be encountered when virtualizing a branch");m.delete(er.descriptorHash);let Ur=Te;if(!Ur){let Or=ke.dependenciesMeta.get(Mu.stringifyIdent(er));if(typeof Or<"u"){let In=Or.get(null);typeof In<"u"&&In.optional&&(Ur=!0)}}let Ot=r.get(er.descriptorHash);if(!Ot)throw new Error(`Assertion failed: The resolution (${Mu.prettyDescriptor(e.configuration,er)}) should have been registered`);let dr=X.get(Ot)||s.get(Ot);if(!dr)throw new Error(`Assertion failed: The package (${Ot}, resolved from ${Mu.prettyDescriptor(e.configuration,er)}) should have been registered`);if(dr.peerDependencies.size===0){ae(er,dr,new Map,{top:be,optional:Ur});continue}let Ar,or,Fr=new Set,$r=new Map;Ue.push(()=>{Ar=Mu.virtualizeDescriptor(er,pe.locatorHash),or=Mu.virtualizePackage(dr,pe.locatorHash),ke.dependencies.delete(er.identHash),ke.dependencies.set(Ar.identHash,Ar),r.set(Ar.descriptorHash,or.locatorHash),t.set(Ar.descriptorHash,Ar),s.set(or.locatorHash,or),x.push([dr,Ar,or])}),Je.push(()=>{O.set(or.locatorHash,$r);for(let Or of or.peerDependencies.values()){let Br=O_.getFactoryWithDefault(et,Or.identHash,()=>{let tr=he.get(Or.identHash)??null,gn=ke.dependencies.get(Or.identHash);return!gn&&Mu.areIdentsEqual(pe,Or)&&(fe.identHash===pe.identHash?gn=fe:(gn=Mu.makeDescriptor(pe,fe.range),t.set(gn.descriptorHash,gn),r.set(gn.descriptorHash,pe.locatorHash),m.delete(gn.descriptorHash),tr=null)),gn||(gn=Mu.makeDescriptor(Or,"missing:")),{subject:pe,ident:Or,provided:gn,root:!tr,requests:new Map,hash:`p${QJ.makeHash(pe.locatorHash,Or.identHash).slice(0,5)}`}}).provided;if(Br.range==="missing:"&&or.dependencies.has(Or.identHash)){or.peerDependencies.delete(Or.identHash);continue}$r.set(Or.identHash,{requester:or,descriptor:Or,meta:or.peerDependenciesMeta.get(Mu.stringifyIdent(Or)),children:new Map}),or.dependencies.set(Or.identHash,Br),Mu.isVirtualDescriptor(Br)&&O_.getSetWithDefault(T,Br.descriptorHash).add(or.locatorHash),v.set(Br.identHash,Br),Br.range==="missing:"&&Fr.add(Br.identHash)}or.dependencies=new Map(O_.sortMap(or.dependencies,([Or,In])=>Mu.stringifyIdent(In)))}),Xe.push(()=>{if(!s.has(or.locatorHash))return;let Or=y.get(dr.locatorHash);typeof Or=="number"&&Or>=2&&U();let In=y.get(dr.locatorHash),Br=typeof In<"u"?In+1:1;y.set(dr.locatorHash,Br),ae(Ar,or,$r,{top:be,optional:Ur}),y.set(dr.locatorHash,Br-1)}),ft.push(()=>{let Or=ke.dependencies.get(er.identHash);if(typeof Or>"u")throw new Error("Assertion failed: Expected the peer dependency to have been turned into a dependency");let In=r.get(Or.descriptorHash);if(typeof In>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");let Br=O.get(In);if(typeof Br>"u")throw new Error("Assertion failed: Expected the peer requests to be registered");for(let tr of et.values()){let gn=Br.get(tr.ident.identHash);gn&&(tr.requests.set(Or.descriptorHash,gn),f.set(tr.hash,tr),tr.root||he.get(tr.ident.identHash)?.children.set(Or.descriptorHash,gn))}if(s.has(or.locatorHash))for(let tr of Fr)or.dependencies.delete(tr)})}for(let er of[...Ue,...Je])er();let Gt;do{Gt=!0;for(let[er,Ur,Ot]of x){let dr=O_.getMapWithDefault(k,er.locatorHash),Ar=QJ.makeHash(...[...Ot.dependencies.values()].map(Or=>{let In=Or.range!=="missing:"?r.get(Or.descriptorHash):"missing:";if(typeof In>"u")throw new Error(`Assertion failed: Expected the resolution for ${Mu.prettyDescriptor(e.configuration,Or)} to have been registered`);return In===be?`${In} (top)`:In}),Ur.identHash),or=dr.get(Ar);if(typeof or>"u"){dr.set(Ar,Ur);continue}if(or===Ur)continue;s.delete(Ot.locatorHash),t.delete(Ur.descriptorHash),r.delete(Ur.descriptorHash),a.delete(Ot.locatorHash);let Fr=T.get(Ur.descriptorHash)||[],$r=[ke.locatorHash,...Fr];T.delete(Ur.descriptorHash);for(let Or of $r){let In=s.get(Or);typeof In>"u"||(In.dependencies.get(Ur.identHash).descriptorHash!==or.descriptorHash&&(Gt=!1),In.dependencies.set(Ur.identHash,or))}for(let Or of et.values())Or.provided.descriptorHash===Ur.descriptorHash&&(Or.provided=or)}}while(!Gt);for(let er of[...Xe,...ft])er()};for(let fe of e.workspaces){let pe=fe.anchoredLocator;m.delete(fe.anchoredDescriptor.descriptorHash),ae(fe.anchoredDescriptor,pe,new Map,{top:pe.locatorHash,optional:!1})}for(let fe of f.values()){if(!fe.root)continue;let pe=s.get(fe.subject.locatorHash);if(typeof pe>"u")continue;for(let be of fe.requests.values()){let Te=`p${QJ.makeHash(fe.subject.locatorHash,Mu.stringifyIdent(fe.ident),be.requester.locatorHash).slice(0,5)}`;g.set(Te,{subject:fe.subject.locatorHash,requested:fe.ident,rootRequester:be.requester.locatorHash,allRequesters:Array.from(Mu.allPeerRequests(be),ke=>ke.requester.locatorHash)})}let he=[...Mu.allPeerRequests(fe)];if(fe.provided.range!=="missing:"){let be=le(fe.provided),Te=be.version??"0.0.0",ke=et=>{if(et.startsWith(Wot.WorkspaceResolver.protocol)){if(!e.tryWorkspaceByLocator(be))return null;et=et.slice(Wot.WorkspaceResolver.protocol.length),(et==="^"||et==="~")&&(et="*")}return et},x=!0;for(let et of he){let Ue=ke(et.descriptor.range);if(Ue===null){x=!1;continue}if(!Pot.satisfiesWithPrereleases(Te,Ue)){x=!1;let Je=`p${QJ.makeHash(fe.subject.locatorHash,Mu.stringifyIdent(fe.ident),et.requester.locatorHash).slice(0,5)}`;p.push({type:MJ.NotCompatible,subject:pe,requested:fe.ident,requester:et.requester,version:Te,hash:Je,requirementCount:he.length})}}if(!x){let et=he.map(Ue=>ke(Ue.descriptor.range));p.push({type:MJ.NodeNotCompatible,node:fe,range:et.includes(null)?null:Pot.simplifyRanges(et),hash:fe.hash})}}else{let be=!0;for(let Te of he)if(!Te.meta?.optional){be=!1;let ke=`p${QJ.makeHash(fe.subject.locatorHash,Mu.stringifyIdent(fe.ident),Te.requester.locatorHash).slice(0,5)}`;p.push({type:MJ.NotProvided,subject:pe,requested:fe.ident,requester:Te.requester,hash:ke})}be||p.push({type:MJ.NodeNotProvided,node:fe,hash:fe.hash})}}}function*o7s(e){let t=new Map;if("children"in e)t.set(e,e);else for(let r of e.requests.values())t.set(r,r);for(let[r,s]of t){yield{request:r,root:s};for(let a of r.children.values())t.has(a)||t.set(a,s)}}function a7s(e,t){let r=[],s=[],a=!1;for(let o of e.peerWarnings)if(!(o.type===MJ.NotCompatible||o.type===MJ.NotProvided)){if(!e.tryWorkspaceByLocator(o.node.subject)){a=!0;continue}if(o.type===MJ.NodeNotCompatible){let g=e.storedResolutions.get(o.node.provided.descriptorHash);if(typeof g>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");let p=e.storedPackages.get(g);if(typeof p>"u")throw new Error("Assertion failed: Expected the package to be registered");let f=O_.mapAndFind(o7s(o.node),({request:B,root:v})=>Pot.satisfiesWithPrereleases(p.version??"0.0.0",B.descriptor.range)?O_.mapAndFind.skip:B===v?Mu.prettyIdent(e.configuration,B.requester):`${Mu.prettyIdent(e.configuration,B.requester)} (via ${Mu.prettyIdent(e.configuration,v.requester)})`),m=[...Mu.allPeerRequests(o.node)].length>1?"and other dependencies request":"requests",y=o.range?Mu.prettyRange(e.configuration,o.range):Kp.pretty(e.configuration,"but they have non-overlapping ranges!","redBright");r.push(`${Mu.prettyIdent(e.configuration,o.node.ident)} is listed by your project with version ${Mu.prettyReference(e.configuration,p.version??"0.0.0")} (${Kp.pretty(e.configuration,o.hash,Kp.Type.CODE)}), which doesn't satisfy what ${f} ${m} (${y}).`)}if(o.type===MJ.NodeNotProvided){let g=o.node.requests.size>1?" and other dependencies":"";s.push(`${Mu.prettyLocator(e.configuration,o.node.subject)} doesn't provide ${Mu.prettyIdent(e.configuration,o.node.ident)} (${Kp.pretty(e.configuration,o.hash,Kp.Type.CODE)}), requested by ${Mu.prettyIdent(e.configuration,o.node.requests.values().next().value.requester)}${g}.`)}}t.startSectionSync({reportFooter:()=>{t.reportWarning(_b.MessageName.EXPLAIN_PEER_DEPENDENCIES_CTA,`Some peer dependencies are incorrectly met by your project; run ${Kp.pretty(e.configuration,"yarn explain peer-requirements ",Kp.Type.CODE)} for details, where ${Kp.pretty(e.configuration,"",Kp.Type.CODE)} is the six-letter p-prefixed code.`)},skipIfEmpty:!0},()=>{for(let o of O_.sortMap(r,g=>Kp.stripAnsi(g)))t.reportWarning(_b.MessageName.INCOMPATIBLE_PEER_DEPENDENCY,o);for(let o of O_.sortMap(s,g=>Kp.stripAnsi(g)))t.reportWarning(_b.MessageName.MISSING_PEER_DEPENDENCY,o)}),a&&t.reportWarning(_b.MessageName.EXPLAIN_PEER_DEPENDENCIES_CTA,`Some peer dependencies are incorrectly met by dependencies; run ${Kp.pretty(e.configuration,"yarn explain peer-requirements",Kp.Type.CODE)} for details.`)}});var Wmn=z(UAe=>{"use strict";Object.defineProperty(UAe,"__esModule",{value:!0});UAe.TelemetryManager=UAe.MetricName=void 0;UAe.derive=Vmn;var Qot=(Oa(),Ai(Pa)),HJ=No(),Lmn=IVe(),c7s=Qot.__importStar(Ine()),l7s=Qot.__importStar(Git()),Oot=Qot.__importStar(IW()),u7s=Qot.__importStar(cj()),YJ;(function(e){e.VERSION="version",e.COMMAND_NAME="commandName",e.PLUGIN_NAME="pluginName",e.INSTALL_COUNT="installCount",e.PROJECT_COUNT="projectCount",e.WORKSPACE_COUNT="workspaceCount",e.DEPENDENCY_COUNT="dependencyCount",e.EXTENSION="packageExtension"})(YJ||(UAe.MetricName=YJ={}));function Vmn(e){let s=Math.floor(e.timeNow/864e5),a=e.updateInterval*864e5,o=e.state.lastUpdate??e.timeNow+a+Math.floor(a*e.randomInitialInterval),g=o+a,p=e.state.lastTips??s*864e5,f=p+864e5+8*36e5-e.timeZone,m=g<=e.timeNow,y=f<=e.timeNow,B=null;return(m||y||!e.state.lastUpdate||!e.state.lastTips)&&(B={},B.lastUpdate=m?e.timeNow:o,B.lastTips=p,B.blocks=m?{}:e.state.blocks,B.displayedTips=e.state.displayedTips),{nextState:B,triggerUpdate:m,triggerTips:y,nextTips:y?s*864e5:p}}var i8t=class{constructor(t,r){this.values=new Map,this.hits=new Map,this.enumerators=new Map,this.nextTips=0,this.displayedTips=[],this.shouldCommitTips=!1,this.configuration=t;let s=this.getRegistryPath();this.isNew=!HJ.xfs.existsSync(s),this.shouldShowTips=!1,this.sendReport(r),this.startBuffer()}commitTips(){this.shouldShowTips&&(this.shouldCommitTips=!0)}selectTip(t){let r=new Set(this.displayedTips),s=p=>p&&Lmn.YarnVersion?u7s.satisfiesWithPrereleases(Lmn.YarnVersion,p):!1,a=t.map((p,f)=>f).filter(p=>t[p]&&s(t[p]?.selector));if(a.length===0)return null;let o=a.filter(p=>!r.has(p));if(o.length===0){let p=Math.floor(a.length*.2);this.displayedTips=p>0?this.displayedTips.slice(-p):[],o=a.filter(f=>!r.has(f))}let g=o[Math.floor(Math.random()*o.length)];return this.displayedTips.push(g),this.commitTips(),t[g]}reportVersion(t){this.reportValue(YJ.VERSION,t.replace(/-git\..*/,"-git"))}reportCommandName(t){this.reportValue(YJ.COMMAND_NAME,t||"")}reportPluginName(t){this.reportValue(YJ.PLUGIN_NAME,t)}reportProject(t){this.reportEnumerator(YJ.PROJECT_COUNT,t)}reportInstall(t){this.reportHit(YJ.INSTALL_COUNT,t)}reportPackageExtension(t){this.reportValue(YJ.EXTENSION,t)}reportWorkspaceCount(t){this.reportValue(YJ.WORKSPACE_COUNT,String(t))}reportDependencyCount(t){this.reportValue(YJ.DEPENDENCY_COUNT,String(t))}reportValue(t,r){Oot.getSetWithDefault(this.values,t).add(r)}reportEnumerator(t,r){Oot.getSetWithDefault(this.enumerators,t).add(c7s.makeHash(r))}reportHit(t,r="*"){let s=Oot.getMapWithDefault(this.hits,t),a=Oot.getFactoryWithDefault(s,r,()=>0);s.set(r,a+1)}getRegistryPath(){let t=this.configuration.get("globalFolder");return HJ.ppath.join(t,"telemetry.json")}sendReport(t){let r=this.getRegistryPath(),s;try{s=HJ.xfs.readJsonSync(r)}catch{s={}}let{nextState:a,triggerUpdate:o,triggerTips:g,nextTips:p}=Vmn({state:s,timeNow:Date.now(),timeZone:new Date().getTimezoneOffset()*60*1e3,randomInitialInterval:Math.random(),updateInterval:this.configuration.get("telemetryInterval")});if(this.nextTips=p,this.displayedTips=s.displayedTips??[],a!==null)try{HJ.xfs.mkdirSync(HJ.ppath.dirname(r),{recursive:!0}),HJ.xfs.writeJsonSync(r,a)}catch{return!1}if(g&&this.configuration.get("enableTips")&&(this.shouldShowTips=!0),o){let f=s.blocks??{};if(Object.keys(f).length===0){let m=`https://browser-http-intake.logs.datadoghq.eu/v1/input/${t}?ddsource=yarn`,y=B=>l7s.post(m,B,{configuration:this.configuration}).catch(()=>{});for(let[B,v]of Object.entries(s.blocks??{})){if(Object.keys(v).length===0)continue;let k=v;k.userId=B,k.reportType="primary";for(let X of Object.keys(k.enumerators??{}))k.enumerators[X]=k.enumerators[X].length;y(k);let T=new Map,O=20;for(let[X,U]of Object.entries(k.values))U.length>0&&T.set(X,U.slice(0,O));for(;T.size>0;){let X={};X.userId=B,X.reportType="secondary",X.metrics={};for(let[U,le]of T)X.metrics[U]=le.shift(),le.length===0&&T.delete(U);y(X)}}}}return!0}applyChanges(){let t=this.getRegistryPath(),r;try{r=HJ.xfs.readJsonSync(t)}catch{r={}}let s=this.configuration.get("telemetryUserId")??"*",a=r.blocks=r.blocks??{},o=a[s]=a[s]??{};for(let g of this.hits.keys()){let p=o.hits=o.hits??{},f=p[g]=p[g]??{};for(let[m,y]of this.hits.get(g))f[m]=(f[m]??0)+y}for(let g of["values","enumerators"])for(let p of this[g].keys()){let f=o[g]=o[g]??{};f[p]=[...new Set([...f[p]??[],...this[g].get(p)??[]])]}this.shouldCommitTips&&(r.lastTips=this.nextTips,r.displayedTips=this.displayedTips),HJ.xfs.mkdirSync(HJ.ppath.dirname(t),{recursive:!0}),HJ.xfs.writeJsonSync(t,r)}startBuffer(){process.on("exit",()=>{try{this.applyChanges()}catch{}})}};UAe.TelemetryManager=i8t});var Bn=z(ll=>{"use strict";Object.defineProperty(ll,"__esModule",{value:!0});ll.treeUtils=ll.tgzUtils=ll.structUtils=ll.semverUtils=ll.scriptUtils=ll.nodeUtils=ll.miscUtils=ll.formatUtils=ll.folderUtils=ll.execUtils=ll.httpUtils=ll.hashUtils=ll.PackageExtensionStatus=ll.PackageExtensionType=ll.LinkType=ll.YarnVersion=ll.Workspace=ll.WorkspaceResolver=ll.WorkspaceFetcher=ll.VirtualFetcher=ll.ThrowReport=ll.TelemetryManager=ll.reportOptionDeprecations=ll.StreamReport=ll.Report=ll.ReportError=ll.InstallMode=ll.Project=ll.PeerWarningType=ll.LOCKFILE_VERSION=ll.MultiFetcher=ll.stringifyMessageName=ll.parseMessageName=ll.MessageName=ll.Manifest=ll.LockfileResolver=ll.LightReport=ll.LegacyMigrationResolver=ll.BuildDirectiveType=ll.WindowsLinkType=ll.SettingsType=ll.FormatType=ll.Configuration=ll.TAG_REGEXP=ll.LEGACY_PLUGINS=ll.DEFAULT_RC_FILENAME=ll.Cache=ll.CACHE_CHECKPOINT=ll.CACHE_VERSION=void 0;var LO=(Oa(),Ai(Pa)),g7s=LO.__importStar(Zit());ll.execUtils=g7s;var A7s=LO.__importStar(rit());ll.folderUtils=A7s;var d7s=LO.__importStar(CO());ll.formatUtils=d7s;var p7s=LO.__importStar(Ine());ll.hashUtils=p7s;var f7s=LO.__importStar(Git());ll.httpUtils=f7s;var I7s=LO.__importStar(IW());ll.miscUtils=I7s;var C7s=LO.__importStar(Fit());ll.nodeUtils=C7s;var m7s=LO.__importStar(mJt());ll.scriptUtils=m7s;var h7s=LO.__importStar(cj());ll.semverUtils=h7s;var _7s=LO.__importStar(dk());ll.structUtils=_7s;var y7s=LO.__importStar(PIn());ll.tgzUtils=y7s;var b7s=LO.__importStar(XIn());ll.treeUtils=b7s;var s8t=fKt();Object.defineProperty(ll,"CACHE_VERSION",{enumerable:!0,get:function(){return s8t.CACHE_VERSION}});Object.defineProperty(ll,"CACHE_CHECKPOINT",{enumerable:!0,get:function(){return s8t.CACHE_CHECKPOINT}});Object.defineProperty(ll,"Cache",{enumerable:!0,get:function(){return s8t.Cache}});var o8t=cVe();Object.defineProperty(ll,"DEFAULT_RC_FILENAME",{enumerable:!0,get:function(){return o8t.DEFAULT_RC_FILENAME}});Object.defineProperty(ll,"LEGACY_PLUGINS",{enumerable:!0,get:function(){return o8t.LEGACY_PLUGINS}});Object.defineProperty(ll,"TAG_REGEXP",{enumerable:!0,get:function(){return o8t.TAG_REGEXP}});var Mot=cVe();Object.defineProperty(ll,"Configuration",{enumerable:!0,get:function(){return Mot.Configuration}});Object.defineProperty(ll,"FormatType",{enumerable:!0,get:function(){return Mot.FormatType}});Object.defineProperty(ll,"SettingsType",{enumerable:!0,get:function(){return Mot.SettingsType}});Object.defineProperty(ll,"WindowsLinkType",{enumerable:!0,get:function(){return Mot.WindowsLinkType}});var E7s=IKt();Object.defineProperty(ll,"BuildDirectiveType",{enumerable:!0,get:function(){return E7s.BuildDirectiveType}});var B7s=mKt();Object.defineProperty(ll,"LegacyMigrationResolver",{enumerable:!0,get:function(){return B7s.LegacyMigrationResolver}});var v7s=eCn();Object.defineProperty(ll,"LightReport",{enumerable:!0,get:function(){return v7s.LightReport}});var S7s=yKt();Object.defineProperty(ll,"LockfileResolver",{enumerable:!0,get:function(){return S7s.LockfileResolver}});var w7s=Lbe();Object.defineProperty(ll,"Manifest",{enumerable:!0,get:function(){return w7s.Manifest}});var a8t=NL();Object.defineProperty(ll,"MessageName",{enumerable:!0,get:function(){return a8t.MessageName}});Object.defineProperty(ll,"parseMessageName",{enumerable:!0,get:function(){return a8t.parseMessageName}});Object.defineProperty(ll,"stringifyMessageName",{enumerable:!0,get:function(){return a8t.stringifyMessageName}});var T7s=UYt();Object.defineProperty(ll,"MultiFetcher",{enumerable:!0,get:function(){return T7s.MultiFetcher}});var Hot=Zmn();Object.defineProperty(ll,"LOCKFILE_VERSION",{enumerable:!0,get:function(){return Hot.LOCKFILE_VERSION}});Object.defineProperty(ll,"PeerWarningType",{enumerable:!0,get:function(){return Hot.PeerWarningType}});Object.defineProperty(ll,"Project",{enumerable:!0,get:function(){return Hot.Project}});Object.defineProperty(ll,"InstallMode",{enumerable:!0,get:function(){return Hot.InstallMode}});var Pmn=_O();Object.defineProperty(ll,"ReportError",{enumerable:!0,get:function(){return Pmn.ReportError}});Object.defineProperty(ll,"Report",{enumerable:!0,get:function(){return Pmn.Report}});var Omn=CVe();Object.defineProperty(ll,"StreamReport",{enumerable:!0,get:function(){return Omn.StreamReport}});Object.defineProperty(ll,"reportOptionDeprecations",{enumerable:!0,get:function(){return Omn.reportOptionDeprecations}});var N7s=Wmn();Object.defineProperty(ll,"TelemetryManager",{enumerable:!0,get:function(){return N7s.TelemetryManager}});var R7s=jKt();Object.defineProperty(ll,"ThrowReport",{enumerable:!0,get:function(){return R7s.ThrowReport}});var D7s=eXt();Object.defineProperty(ll,"VirtualFetcher",{enumerable:!0,get:function(){return D7s.VirtualFetcher}});var x7s=rXt();Object.defineProperty(ll,"WorkspaceFetcher",{enumerable:!0,get:function(){return x7s.WorkspaceFetcher}});var k7s=CAe();Object.defineProperty(ll,"WorkspaceResolver",{enumerable:!0,get:function(){return k7s.WorkspaceResolver}});var G7s=qKt();Object.defineProperty(ll,"Workspace",{enumerable:!0,get:function(){return G7s.Workspace}});var F7s=IVe();Object.defineProperty(ll,"YarnVersion",{enumerable:!0,get:function(){return F7s.YarnVersion}});var c8t=dAe();Object.defineProperty(ll,"LinkType",{enumerable:!0,get:function(){return c8t.LinkType}});Object.defineProperty(ll,"PackageExtensionType",{enumerable:!0,get:function(){return c8t.PackageExtensionType}});Object.defineProperty(ll,"PackageExtensionStatus",{enumerable:!0,get:function(){return c8t.PackageExtensionStatus}})});var u8t=z(Yot=>{"use strict";Object.defineProperty(Yot,"__esModule",{value:!0});Yot.WorkspaceRequiredError=void 0;var Z7s=Bn(),Qmn=No(),L7s=(Zl(),Ai(pg)),l8t=class extends L7s.UsageError{constructor(t,r){let s=Qmn.ppath.relative(t,r),a=Qmn.ppath.join(t,Z7s.Manifest.fileName);super(`This command can only be run from within a workspace of your project (${s} isn't a workspace of ${a}).`)}};Yot.WorkspaceRequiredError=l8t});var g8t=z(Xot=>{"use strict";Object.defineProperty(Xot,"__esModule",{value:!0});Xot.getDynamicLibs=void 0;var Dj=(Oa(),Ai(Pa)),V7s=Dj.__importStar(il()),W7s=Dj.__importStar(Bn()),P7s=Dj.__importStar(No()),O7s=Dj.__importStar(NJ()),Q7s=Dj.__importStar(uO()),M7s=Dj.__importStar(AVe()),H7s=Dj.__importStar((Zl(),Ai(pg))),Y7s=Dj.__importStar(Vh()),X7s=Dj.__importStar((yL(),Ai(_L))),J7s=()=>new Map([["@yarnpkg/cli",V7s],["@yarnpkg/core",W7s],["@yarnpkg/fslib",P7s],["@yarnpkg/libzip",O7s],["@yarnpkg/parsers",Q7s],["@yarnpkg/shell",M7s],["clipanion",H7s],["semver",Y7s],["typanion",X7s]]);Xot.getDynamicLibs=J7s});var A8t=z((Q5c,U7s)=>{U7s.exports={name:"@yarnpkg/cli",version:"4.5.1",license:"BSD-2-Clause",main:"./lib/index.js",exports:{".":"./lib/index.js","./package.json":"./package.json"},dependencies:{"@yarnpkg/core":"^4.1.4","@yarnpkg/fslib":"^3.1.0","@yarnpkg/libzip":"^3.1.0","@yarnpkg/parsers":"^3.0.2","@yarnpkg/plugin-compat":"^4.0.9","@yarnpkg/plugin-constraints":"^4.0.2","@yarnpkg/plugin-dlx":"^4.0.0","@yarnpkg/plugin-essentials":"^4.2.2","@yarnpkg/plugin-exec":"^3.0.0","@yarnpkg/plugin-file":"^3.0.0","@yarnpkg/plugin-git":"^3.1.0","@yarnpkg/plugin-github":"^3.0.0","@yarnpkg/plugin-http":"^3.0.1","@yarnpkg/plugin-init":"^4.0.1","@yarnpkg/plugin-interactive-tools":"^4.0.1","@yarnpkg/plugin-link":"^3.0.0","@yarnpkg/plugin-nm":"^4.0.5","@yarnpkg/plugin-npm":"^3.0.1","@yarnpkg/plugin-npm-cli":"^4.0.4","@yarnpkg/plugin-pack":"^4.0.0","@yarnpkg/plugin-patch":"^4.0.1","@yarnpkg/plugin-pnp":"^4.0.5","@yarnpkg/plugin-pnpm":"^2.0.0","@yarnpkg/plugin-stage":"^4.0.0","@yarnpkg/plugin-typescript":"^4.1.1","@yarnpkg/plugin-version":"^4.0.4","@yarnpkg/plugin-workspace-tools":"^4.1.0","@yarnpkg/shell":"^4.1.0","ci-info":"^4.0.0",clipanion:"^4.0.0-rc.2",semver:"^7.1.2",tslib:"^2.4.0",typanion:"^3.14.0"},devDependencies:{"@types/semver":"^7.1.0","@yarnpkg/builder":"^4.2.0","@yarnpkg/monorepo":"^0.0.0","@yarnpkg/pnpify":"^4.1.3"},peerDependencies:{"@yarnpkg/core":"^4.1.4"},scripts:{postpack:"rm -rf lib",prepack:'run build:compile "$(pwd)"',"build:cli+hook":"run build:pnp:hook && builder build bundle","build:cli":"builder build bundle","run:cli":"builder run","update-local":"run build:cli --no-git-hash && rsync -a --delete bundles/ bin/"},publishConfig:{main:"./lib/index.js",bin:null,exports:{".":"./lib/index.js","./package.json":"./package.json"}},files:["/lib/**/*","!/lib/pluginConfiguration.*","!/lib/cli.*"],"@yarnpkg/builder":{bundles:{standard:["@yarnpkg/plugin-essentials","@yarnpkg/plugin-compat","@yarnpkg/plugin-constraints","@yarnpkg/plugin-dlx","@yarnpkg/plugin-exec","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-link","@yarnpkg/plugin-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm","@yarnpkg/plugin-stage","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-workspace-tools"]}},repository:{type:"git",url:"ssh://git@github.com/yarnpkg/berry.git",directory:"packages/yarnpkg-cli"},engines:{node:">=18.12.0"}}});var p8t=z(d8t=>{"use strict";Object.defineProperty(d8t,"__esModule",{value:!0});d8t.getPluginConfiguration=q7s;var K7s=(Oa(),Ai(Pa)),j7s=K7s.__importDefault(A8t()),z7s=g8t();function q7s(){let e=new Set;for(let r of j7s.default["@yarnpkg/builder"].bundles.standard)e.add(r);let t=(0,z7s.getDynamicLibs)();for(let r of e)t.set(r,xt(r).default);return{plugins:e,modules:t}}});var Mmn=z(f8t=>{"use strict";Object.defineProperty(f8t,"__esModule",{value:!0});f8t.openWorkspace=tjs;var $7s=Bn(),ejs=u8t();async function tjs(e,t){let{project:r,workspace:s}=await $7s.Project.find(e,t);if(!s)throw new ejs.WorkspaceRequiredError(r.cwd,t);return s}});var I8t=z(Jot=>{"use strict";Object.defineProperty(Jot,"__esModule",{value:!0});Jot.pluginCommands=void 0;Jot.pluginCommands=new Map([])});var Jmn=z(Uot=>{"use strict";Object.defineProperty(Uot,"__esModule",{value:!0});Uot.getCli=gjs;Uot.runExit=Ajs;var xj=Bn(),TH=No(),rjs=xt("child_process"),njs=nAe(),DEe=(Zl(),Ai(pg)),ijs=I8t(),sjs=p8t();function Hmn({cwd:e,pluginConfiguration:t}){let r=new DEe.Cli({binaryLabel:"Yarn Package Manager",binaryName:"yarn",binaryVersion:xj.YarnVersion??""});return Object.assign(r,{defaultContext:{...DEe.Cli.defaultContext,cwd:e,plugins:t,quiet:!1,stdin:process.stdin,stdout:process.stdout,stderr:process.stderr}})}function ojs(e){if(xj.miscUtils.parseOptionalBoolean(process.env.YARN_IGNORE_NODE))return!0;let r=process.versions.node,s=">=18.12.0";if(xj.semverUtils.satisfiesWithPrereleases(r,s))return!0;let a=new DEe.UsageError(`This tool requires a Node version compatible with ${s} (got ${r}). Upgrade Node, or set \`YARN_IGNORE_NODE=1\` in your environment.`);return DEe.Cli.defaultContext.stdout.write(e.error(a)),!1}async function Ymn({selfPath:e,pluginConfiguration:t}){return await xj.Configuration.find(TH.npath.toPortablePath(process.cwd()),t,{strict:!1,usePathCheck:e})}function ajs(e,t,{yarnPath:r}){if(!TH.xfs.existsSync(r))return e.error(new Error(`The "yarn-path" option has been set, but the specified location doesn't exist (${r}).`)),1;process.on("SIGINT",()=>{});let s={stdio:"inherit",env:{...process.env,YARN_IGNORE_PATH:"1"}};try{(0,rjs.execFileSync)(process.execPath,[TH.npath.fromPortablePath(r),...t],s)}catch(a){return a.status??1}return 0}function cjs(e,t){let r=null,s=t;return t.length>=2&&t[0]==="--cwd"?(r=TH.npath.toPortablePath(t[1]),s=t.slice(2)):t.length>=1&&t[0].startsWith("--cwd=")?(r=TH.npath.toPortablePath(t[0].slice(6)),s=t.slice(1)):t[0]==="add"&&t[t.length-2]==="--cwd"&&(r=TH.npath.toPortablePath(t[t.length-1]),s=t.slice(0,t.length-2)),e.defaultContext.cwd=r!==null?TH.ppath.resolve(r):TH.ppath.cwd(),s}function ljs(e,{configuration:t}){if(!t.get("enableTelemetry")||njs.isCI||!process.stdout.isTTY)return;xj.Configuration.telemetry=new xj.TelemetryManager(t,"puba9cdc10ec5790a2cf4969dd413a47270");let s=/^@yarnpkg\/plugin-(.*)$/;for(let a of t.plugins.keys())ijs.pluginCommands.has(a.match(s)?.[1]??"")&&xj.Configuration.telemetry?.reportPluginName(a);e.binaryVersion&&xj.Configuration.telemetry.reportVersion(e.binaryVersion)}function Xmn(e,{configuration:t}){for(let r of t.plugins.values())for(let s of r.commands||[])e.register(s)}async function ujs(e,t,{selfPath:r,pluginConfiguration:s}){if(!ojs(e))return 1;let a=await Ymn({selfPath:r,pluginConfiguration:s}),o=a.get("yarnPath"),g=a.get("ignorePath");if(o&&!g)return ajs(e,t,{yarnPath:o});delete process.env.YARN_IGNORE_PATH;let p=cjs(e,t);ljs(e,{configuration:a}),Xmn(e,{configuration:a});let f=e.process(p,e.defaultContext);return f.help||xj.Configuration.telemetry?.reportCommandName(f.path.join(" ")),await e.run(f,e.defaultContext)}async function gjs({cwd:e=TH.ppath.cwd(),pluginConfiguration:t=(0,sjs.getPluginConfiguration)()}={}){let r=Hmn({cwd:e,pluginConfiguration:t}),s=await Ymn({pluginConfiguration:t,selfPath:null});return Xmn(r,{configuration:s}),r}async function Ajs(e,{cwd:t=TH.ppath.cwd(),selfPath:r,pluginConfiguration:s}){let a=Hmn({cwd:t,pluginConfiguration:s});function o(){DEe.Cli.defaultContext.stdout.write(`ERROR: Yarn is terminating due to an unexpected empty event loop. +Please report this issue at https://github.com/yarnpkg/berry/issues.`)}process.once("beforeExit",o);try{process.exitCode=42,process.exitCode=await ujs(a,e,{selfPath:r,pluginConfiguration:s})}catch(g){DEe.Cli.defaultContext.stdout.write(a.error(g)),process.exitCode=1}finally{process.off("beforeExit",o),await TH.xfs.rmtempPromise()}}});var il=z(uR=>{"use strict";Object.defineProperty(uR,"__esModule",{value:!0});uR.pluginCommands=uR.runExit=uR.getCli=uR.openWorkspace=uR.getPluginConfiguration=uR.getDynamicLibs=uR.WorkspaceRequiredError=uR.BaseCommand=void 0;var djs=_6r();Object.defineProperty(uR,"BaseCommand",{enumerable:!0,get:function(){return djs.BaseCommand}});var pjs=u8t();Object.defineProperty(uR,"WorkspaceRequiredError",{enumerable:!0,get:function(){return pjs.WorkspaceRequiredError}});var fjs=g8t();Object.defineProperty(uR,"getDynamicLibs",{enumerable:!0,get:function(){return fjs.getDynamicLibs}});var Ijs=p8t();Object.defineProperty(uR,"getPluginConfiguration",{enumerable:!0,get:function(){return Ijs.getPluginConfiguration}});var Cjs=Mmn();Object.defineProperty(uR,"openWorkspace",{enumerable:!0,get:function(){return Cjs.openWorkspace}});var Umn=Jmn();Object.defineProperty(uR,"getCli",{enumerable:!0,get:function(){return Umn.getCli}});Object.defineProperty(uR,"runExit",{enumerable:!0,get:function(){return Umn.runExit}});var mjs=I8t();Object.defineProperty(uR,"pluginCommands",{enumerable:!0,get:function(){return mjs.pluginCommands}})});var lhn=z((IMc,chn)=>{"use strict";var shn=xt("stream").PassThrough,ohn=xt("stream").Writable,ahn=xt("util");ahn.inherits(y8t,shn);ahn.inherits(b8t,ohn);function y8t(e,t){shn.call(this,t),this.factory=e,this.opts=t}y8t.prototype._flush=function(e){var t=this.factory();t.pipe(new b8t(this,this.opts)).on("finish",e),t.resume()};function b8t(e,t){ohn.call(this,t),this.target=e}b8t.prototype._write=function(e,t,r){this.target.push(e),r()};function _8t(e,t){t=t||{};var r;return typeof e=="function"?r=e:(e.pause(),r=function(){return e}),new y8t(r,t)}_8t.obj=function(e,t){return t=t||{},t.objectMode=!0,_8t(e,t)};chn.exports=_8t});var Ahn=cc(()=>{});function B8t(e,t){return e.map(r=>r.trim()).filter(Boolean).join(t)}function vjs(e,t){if(!e)return dhn;let r=B8t(e,"|");return t?t(r):new RegExp(`^[\\s|*]*(${r})[:\\s]+(.*)`,"i")}function Sjs(e,t){if(!e)return dhn;let r=t?"g":"gi";return new RegExp(`(?:.*?)??\\s*([\\w-\\.\\/]*?)??(${B8t(e,"|")})([\\w-]*\\d+)`,r)}function wjs(e){if(!e)return/()(.+)/gi;let t=B8t(e,"|");return new RegExp(`(${t})(?:\\s+(.*?))(?=(?:${t})|$)`,"gi")}function phn(e={}){let t=vjs(e.noteKeywords,e.notesPattern),r=Sjs(e.issuePrefixes,e.issuePrefixesCaseSensitive),s=wjs(e.referenceActions);return{notes:t,referenceParts:r,references:s,mentions:/@([\w-]+)/g}}var dhn,fhn=cc(()=>{dhn=/(?!.*)/});function sWe(e){let t=e.match(/[^\r\n]/);if(typeof t?.index!="number")return"";let r=t.index,s=e.length-1;for(;e[s]==="\r"||e[s]===` +`;)s--;return e.substring(r,s+1)}function jAe(e,t){return e?`${e} +${t||""}`:t||""}function Ihn(e){return e?t=>!t.startsWith(e):()=>!0}function Chn(e){let t=e.indexOf(Tjs);return t===-1?e:e.slice(0,t)}function mhn(e){return!e.match(/^\s*gpg:/)}var Tjs,hhn=cc(()=>{Tjs="# ------------------------ >8 ------------------------"});var _hn,yhn=cc(()=>{_hn={noteKeywords:["BREAKING CHANGE","BREAKING-CHANGE"],issuePrefixes:["#"],referenceActions:["close","closes","closed","fix","fixes","fixed","resolve","resolves","resolved"],headerPattern:/^(\w*)(?:\(([\w$.\-*/ ]*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],revertPattern:/^Revert\s"([\s\S]*)"\s*This reverts commit (\w*)\./,revertCorrespondence:["header","hash"],fieldPattern:/^-(.*?)-$/}});function v8t(e={}){return{merge:null,revert:null,header:null,body:null,footer:null,notes:[],mentions:[],references:[],...e}}var oWe,S8t=cc(()=>{fhn();hhn();yhn();oWe=class{options;regexes;lines=[];lineIndex=0;commit=v8t();constructor(t={}){this.options={..._hn,...t},this.regexes=phn(this.options)}currentLine(){return this.lines[this.lineIndex]}nextLine(){return this.lines[this.lineIndex++]}isLineAvailable(){return this.lineIndex{t[g]=o[p+1]||null}),!0):!1}parseHeader(t){t&&this.skipEmptyLines();let{commit:r,options:s}=this,a=s.headerCorrespondence||[],o=this.nextLine(),g=null;o&&(s.breakingHeaderPattern&&(g=o.match(s.breakingHeaderPattern)),!g&&s.headerPattern&&(g=o.match(s.headerPattern))),o&&(r.header=o),g&&a.forEach((p,f)=>{r[p]=g[f+1]||null})}parseMeta(){let{options:t,commit:r}=this;if(!t.fieldPattern||!this.isLineAvailable())return!1;let s,a=null,o=!1;for(;this.isLineAvailable();){if(s=this.currentLine().match(t.fieldPattern),s){a=s[1]||null,this.nextLine();continue}if(a)o=!0,r[a]=jAe(r[a],this.currentLine()),this.nextLine();else break}return o}parseNotes(){let{regexes:t,commit:r}=this;if(!this.isLineAvailable())return!1;let s=this.currentLine().match(t.notes),a=[];if(s){let o={title:s[1],text:s[2]};for(r.notes.push(o),r.footer=jAe(r.footer,this.currentLine()),this.nextLine();this.isLineAvailable();){if(this.parseMeta()||this.parseNotes())return!0;if(a=this.parseReferences(this.currentLine()),a.length?r.references.push(...a):o.text=jAe(o.text,this.currentLine()),r.footer=jAe(r.footer,this.currentLine()),this.nextLine(),a.length)break}return!0}return!1}parseBodyAndFooter(t){let{commit:r}=this;if(!this.isLineAvailable())return t;let s=this.parseReferences(this.currentLine()),a=!s.length&&t;return a?r.body=jAe(r.body,this.currentLine()):(r.references.push(...s),r.footer=jAe(r.footer,this.currentLine())),this.nextLine(),a}parseBreakingHeader(){let{commit:t,options:r}=this;if(!r.breakingHeaderPattern||t.notes.length||!t.header)return;let s=t.header.match(r.breakingHeaderPattern);s&&t.notes.push({title:"BREAKING CHANGE",text:s[3]})}parseMentions(t){let{commit:r,regexes:s}=this,a;for(;a=s.mentions.exec(t),!!a;)r.mentions.push(a[1])}parseRevert(t){let{commit:r,options:s}=this,a=s.revertCorrespondence||[],o=s.revertPattern?t.match(s.revertPattern):null;o&&(r.revert=a.reduce((g,p,f)=>(g[p]=o[f+1]||null,g),{}))}cleanupCommit(){let{commit:t}=this;t.body&&(t.body=sWe(t.body)),t.footer&&(t.footer=sWe(t.footer)),t.notes.forEach(r=>{r.text=sWe(r.text)})}parse(t){if(!t.trim())throw new TypeError("Expected a raw commit");let r=Ihn(this.options.commentChar),s=sWe(t).split(/\r?\n/),a=Chn(s).filter(f=>r(f)&&mhn(f)),o=v8t();this.lines=a,this.lineIndex=0,this.commit=o;let g=this.parseMerge();this.parseHeader(g),o.header&&(o.references=this.parseReferences(o.header));let p=!0;for(;this.isLineAvailable();)this.parseMeta(),this.parseNotes()&&(p=!1),this.parseBodyAndFooter(p)||(p=!1);return this.parseBreakingHeader(),this.parseMentions(t),this.parseRevert(t),this.cleanupCommit(),o}}});import{Transform as Njs}from"stream";function bhn(e={}){let t=e.warn,r=t===!0?s=>{throw s}:t?s=>t(s.toString()):()=>{};return async function*(a){let o=new oWe(e),g;for await(g of a)try{yield o.parse(g.toString())}catch(p){r(p)}}}function w8t(e={}){return Njs.from(bhn(e))}var Ehn=cc(()=>{S8t()});var Bhn={};zf(Bhn,{CommitParser:()=>oWe,createCommitObject:()=>v8t,parseCommits:()=>bhn,parseCommitsStream:()=>w8t});var T8t=cc(()=>{Ahn();S8t();Ehn()});function Rjs(e,t){let r,s;for(let a in t)if(r=e[a],s=t[a],typeof r=="string"&&(r=r.trim()),typeof s=="string"&&(s=s.trim()),r!==s)return!1;return!0}function vhn(e,t){if(!t.size)return null;let r=e.raw||e;for(let s of t)if(s.revert&&Rjs(r,s.revert))return s;return null}var Shn=cc(()=>{});var kEe,N8t=cc(()=>{Shn();kEe=class{hold=new Set;holdRevertsCount=0;*process(t){let{hold:r}=this,s=vhn(t,r);if(s){r.delete(s),this.holdRevertsCount--;return}if(t.revert){r.add(t),this.holdRevertsCount++;return}this.holdRevertsCount>0?r.add(t):(r.size&&(yield*r,r.clear()),yield t)}*flush(){let{hold:t}=this;t.size&&(yield*t,t.clear())}}});import{Transform as Djs}from"stream";async function*whn(e){let t=new kEe;for await(let r of e)yield*t.process(r);yield*t.flush()}function*R8t(e){let t=new kEe;for(let r of e)yield*t.process(r);yield*t.flush()}function xjs(){return Djs.from(whn)}var Thn=cc(()=>{N8t()});var Nhn={};zf(Nhn,{RevertedCommitsFilter:()=>kEe,filterRevertedCommits:()=>whn,filterRevertedCommitsStream:()=>xjs,filterRevertedCommitsSync:()=>R8t});var D8t=cc(()=>{N8t();Thn()});var TF=z(EW=>{"use strict";EW.__esModule=!0;EW.extend=Lhn;EW.indexOf=Qjs;EW.escapeExpression=Mjs;EW.isEmpty=Hjs;EW.createFrame=Yjs;EW.blockParams=Xjs;EW.appendContextPath=Jjs;var Vjs={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"="},Wjs=/[&<>"'`=]/g,Pjs=/[&<>"'`=]/;function Ojs(e){return Vjs[e]}function Lhn(e){for(var t=1;t{"use strict";eat.__esModule=!0;var F8t=["description","fileName","lineNumber","endLineNumber","message","name","number","stack"];function Z8t(e,t){var r=t&&t.loc,s=void 0,a=void 0,o=void 0,g=void 0;r&&(s=r.start.line,a=r.end.line,o=r.start.column,g=r.end.column,e+=" - "+s+":"+o);for(var p=Error.prototype.constructor.call(this,e),f=0;f{"use strict";tat.__esModule=!0;var L8t=TF();tat.default=function(e){e.registerHelper("blockHelperMissing",function(t,r){var s=r.inverse,a=r.fn;if(t===!0)return a(this);if(t===!1||t==null)return s(this);if(L8t.isArray(t))return t.length>0?(r.ids&&(r.ids=[r.name]),e.helpers.each(t,r)):s(this);if(r.data&&r.ids){var o=L8t.createFrame(r.data);o.contextPath=L8t.appendContextPath(r.data.contextPath,r.name),r={data:o}}return a(t,r)})};Phn.exports=tat.default});var Mhn=z((rat,Qhn)=>{"use strict";rat.__esModule=!0;function Ujs(e){return e&&e.__esModule?e:{default:e}}var lWe=TF(),Kjs=VO(),jjs=Ujs(Kjs);rat.default=function(e){e.registerHelper("each",function(t,r){if(!r)throw new jjs.default("Must pass iterator to #each");var s=r.fn,a=r.inverse,o=0,g="",p=void 0,f=void 0;r.data&&r.ids&&(f=lWe.appendContextPath(r.data.contextPath,r.ids[0])+"."),lWe.isFunction(t)&&(t=t.call(this)),r.data&&(p=lWe.createFrame(r.data));function m(T,O,X){p&&(p.key=T,p.index=O,p.first=O===0,p.last=!!X,f&&(p.contextPath=f+T)),g=g+s(t[T],{data:p,blockParams:lWe.blockParams([t[T],T],[f+T,null])})}if(t&&typeof t=="object")if(lWe.isArray(t))for(var y=t.length;o{"use strict";nat.__esModule=!0;function zjs(e){return e&&e.__esModule?e:{default:e}}var qjs=VO(),$js=zjs(qjs);nat.default=function(e){e.registerHelper("helperMissing",function(){if(arguments.length!==1)throw new $js.default('Missing helper: "'+arguments[arguments.length-1].name+'"')})};Hhn.exports=nat.default});var Khn=z((iat,Uhn)=>{"use strict";iat.__esModule=!0;function ezs(e){return e&&e.__esModule?e:{default:e}}var Xhn=TF(),tzs=VO(),Jhn=ezs(tzs);iat.default=function(e){e.registerHelper("if",function(t,r){if(arguments.length!=2)throw new Jhn.default("#if requires exactly one argument");return Xhn.isFunction(t)&&(t=t.call(this)),!r.hash.includeZero&&!t||Xhn.isEmpty(t)?r.inverse(this):r.fn(this)}),e.registerHelper("unless",function(t,r){if(arguments.length!=2)throw new Jhn.default("#unless requires exactly one argument");return e.helpers.if.call(this,t,{fn:r.inverse,inverse:r.fn,hash:r.hash})})};Uhn.exports=iat.default});var zhn=z((sat,jhn)=>{"use strict";sat.__esModule=!0;sat.default=function(e){e.registerHelper("log",function(){for(var t=[void 0],r=arguments[arguments.length-1],s=0;s{"use strict";oat.__esModule=!0;oat.default=function(e){e.registerHelper("lookup",function(t,r,s){return t&&s.lookupProperty(t,r)})};qhn.exports=oat.default});var t_n=z((aat,e_n)=>{"use strict";aat.__esModule=!0;function rzs(e){return e&&e.__esModule?e:{default:e}}var uWe=TF(),nzs=VO(),izs=rzs(nzs);aat.default=function(e){e.registerHelper("with",function(t,r){if(arguments.length!=2)throw new izs.default("#with requires exactly one argument");uWe.isFunction(t)&&(t=t.call(this));var s=r.fn;if(uWe.isEmpty(t))return r.inverse(this);var a=r.data;return r.data&&r.ids&&(a=uWe.createFrame(r.data),a.contextPath=uWe.appendContextPath(r.data.contextPath,r.ids[0])),s(t,{data:a,blockParams:uWe.blockParams([t],[a&&a.contextPath])})})};e_n.exports=aat.default});var V8t=z(cat=>{"use strict";cat.__esModule=!0;cat.registerDefaultHelpers=hzs;cat.moveHelperToHooks=_zs;function zAe(e){return e&&e.__esModule?e:{default:e}}var szs=Ohn(),ozs=zAe(szs),azs=Mhn(),czs=zAe(azs),lzs=Yhn(),uzs=zAe(lzs),gzs=Khn(),Azs=zAe(gzs),dzs=zhn(),pzs=zAe(dzs),fzs=$hn(),Izs=zAe(fzs),Czs=t_n(),mzs=zAe(Czs);function hzs(e){ozs.default(e),czs.default(e),uzs.default(e),Azs.default(e),pzs.default(e),Izs.default(e),mzs.default(e)}function _zs(e,t,r){e.helpers[t]&&(e.hooks[t]=e.helpers[t],r||delete e.helpers[t])}});var n_n=z((lat,r_n)=>{"use strict";lat.__esModule=!0;var yzs=TF();lat.default=function(e){e.registerDecorator("inline",function(t,r,s,a){var o=t;return r.partials||(r.partials={},o=function(g,p){var f=s.partials;s.partials=yzs.extend({},f,r.partials);var m=t(g,p);return s.partials=f,m}),r.partials[a.args[0]]=a.fn,o})};r_n.exports=lat.default});var i_n=z(W8t=>{"use strict";W8t.__esModule=!0;W8t.registerDefaultDecorators=vzs;function bzs(e){return e&&e.__esModule?e:{default:e}}var Ezs=n_n(),Bzs=bzs(Ezs);function vzs(e){Bzs.default(e)}});var P8t=z((uat,s_n)=>{"use strict";uat.__esModule=!0;var Szs=TF(),GEe={methodMap:["debug","info","warn","error"],level:"info",lookupLevel:function(t){if(typeof t=="string"){var r=Szs.indexOf(GEe.methodMap,t.toLowerCase());r>=0?t=r:t=parseInt(t,10)}return t},log:function(t){if(t=GEe.lookupLevel(t),typeof console<"u"&&GEe.lookupLevel(GEe.level)<=t){var r=GEe.methodMap[t];console[r]||(r="log");for(var s=arguments.length,a=Array(s>1?s-1:0),o=1;o{"use strict";O8t.__esModule=!0;O8t.createNewLookupObject=Tzs;var wzs=TF();function Tzs(){for(var e=arguments.length,t=Array(e),r=0;r{"use strict";gWe.__esModule=!0;gWe.createProtoAccessControl=xzs;gWe.resultIsAllowed=kzs;gWe.resetLoggedProperties=Fzs;function Nzs(e){return e&&e.__esModule?e:{default:e}}var a_n=o_n(),Rzs=P8t(),Dzs=Nzs(Rzs),gat=Object.create(null);function xzs(e){var t=Object.create(null);t.constructor=!1,t.__defineGetter__=!1,t.__defineSetter__=!1,t.__lookupGetter__=!1;var r=Object.create(null);return r.__proto__=!1,{properties:{whitelist:a_n.createNewLookupObject(r,e.allowedProtoProperties),defaultValue:e.allowProtoPropertiesByDefault},methods:{whitelist:a_n.createNewLookupObject(t,e.allowedProtoMethods),defaultValue:e.allowProtoMethodsByDefault}}}function kzs(e,t,r){return c_n(typeof e=="function"?t.methods:t.properties,r)}function c_n(e,t){return e.whitelist[t]!==void 0?e.whitelist[t]===!0:e.defaultValue!==void 0?e.defaultValue:(Gzs(t),!1)}function Gzs(e){gat[e]!==!0&&(gat[e]=!0,Dzs.default.log("error",'Handlebars: Access has been denied to resolve the property "'+e+`" because it is not an "own property" of its parent. You can add a runtime option to disable the check or this warning: -See https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details`))}function Tzs(){Object.keys(lat).forEach(function(e){delete lat[e]})}});var gat=z(QJ=>{"use strict";QJ.__esModule=!0;QJ.HandlebarsEnvironment=M8t;function n_n(e){return e&&e.__esModule?e:{default:e}}var QAe=EF(),Nzs=FO(),P8t=n_n(Nzs),Rzs=F8t(),Dzs=qhn(),xzs=L8t(),uat=n_n(xzs),kzs=W8t(),Gzs="4.7.8";QJ.VERSION=Gzs;var Fzs=8;QJ.COMPILER_REVISION=Fzs;var Zzs=7;QJ.LAST_COMPATIBLE_COMPILER_REVISION=Zzs;var Lzs={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:"== 1.x.x",5:"== 2.0.0-alpha.x",6:">= 2.0.0-beta.1",7:">= 4.0.0 <4.3.0",8:">= 4.3.0"};QJ.REVISION_CHANGES=Lzs;var O8t="[object Object]";function M8t(e,t,r){this.helpers=e||{},this.partials=t||{},this.decorators=r||{},Rzs.registerDefaultHelpers(this),Dzs.registerDefaultDecorators(this)}M8t.prototype={constructor:M8t,logger:uat.default,log:uat.default.log,registerHelper:function(t,r){if(QAe.toString.call(t)===O8t){if(r)throw new P8t.default("Arg not supported with multiple helpers");QAe.extend(this.helpers,t)}else this.helpers[t]=r},unregisterHelper:function(t){delete this.helpers[t]},registerPartial:function(t,r){if(QAe.toString.call(t)===O8t)QAe.extend(this.partials,t);else{if(typeof r>"u")throw new P8t.default('Attempting to register a partial called "'+t+'" as undefined');this.partials[t]=r}},unregisterPartial:function(t){delete this.partials[t]},registerDecorator:function(t,r){if(QAe.toString.call(t)===O8t){if(r)throw new P8t.default("Arg not supported with multiple decorators");QAe.extend(this.decorators,t)}else this.decorators[t]=r},unregisterDecorator:function(t){delete this.decorators[t]},resetLoggedPropertyAccesses:function(){kzs.resetLoggedProperties()}};var Vzs=uat.default.log;QJ.log=Vzs;QJ.createFrame=QAe.createFrame;QJ.logger=uat.default});var s_n=z((Aat,i_n)=>{"use strict";Aat.__esModule=!0;function Q8t(e){this.string=e}Q8t.prototype.toString=Q8t.prototype.toHTML=function(){return""+this.string};Aat.default=Q8t;i_n.exports=Aat.default});var o_n=z(Y8t=>{"use strict";Y8t.__esModule=!0;Y8t.wrapHelper=Wzs;function Wzs(e,t){if(typeof e!="function")return e;var r=function(){var a=arguments[arguments.length-1];return arguments[arguments.length-1]=t(a),e.apply(this,arguments)};return r}});var g_n=z(Xne=>{"use strict";Xne.__esModule=!0;Xne.checkRevision=Hzs;Xne.template=Xzs;Xne.wrapProgram=dat;Xne.resolvePartial=Jzs;Xne.invokePartial=Uzs;Xne.noop=l_n;function Pzs(e){return e&&e.__esModule?e:{default:e}}function Ozs(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}var Mzs=EF(),wj=Ozs(Mzs),Qzs=FO(),Tj=Pzs(Qzs),Nj=gat(),a_n=F8t(),Yzs=o_n(),c_n=W8t();function Hzs(e){var t=e&&e[0]||1,r=Nj.COMPILER_REVISION;if(!(t>=Nj.LAST_COMPATIBLE_COMPILER_REVISION&&t<=Nj.COMPILER_REVISION))if(t{"use strict";pat.__esModule=!0;pat.default=function(e){(function(){typeof globalThis!="object"&&(Object.prototype.__defineGetter__("__magic__",function(){return this}),__magic__.globalThis=__magic__,delete Object.prototype.__magic__)})();var t=globalThis.Handlebars;e.noConflict=function(){return globalThis.Handlebars===e&&(globalThis.Handlebars=t),e}};A_n.exports=pat.default});var C_n=z((fat,I_n)=>{"use strict";fat.__esModule=!0;function J8t(e){return e&&e.__esModule?e:{default:e}}function U8t(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}var qzs=gat(),d_n=U8t(qzs),$zs=s_n(),eqs=J8t($zs),tqs=FO(),rqs=J8t(tqs),nqs=EF(),X8t=U8t(nqs),iqs=g_n(),p_n=U8t(iqs),sqs=H8t(),oqs=J8t(sqs);function f_n(){var e=new d_n.HandlebarsEnvironment;return X8t.extend(e,d_n),e.SafeString=eqs.default,e.Exception=rqs.default,e.Utils=X8t,e.escapeExpression=X8t.escapeExpression,e.VM=p_n,e.template=function(t){return p_n.template(t,e)},e}var uWe=f_n();uWe.create=f_n;oqs.default(uWe);uWe.default=uWe;fat.default=uWe;I_n.exports=fat.default});var K8t=z((Iat,h_n)=>{"use strict";Iat.__esModule=!0;var m_n={helpers:{helperExpression:function(t){return t.type==="SubExpression"||(t.type==="MustacheStatement"||t.type==="BlockStatement")&&!!(t.params&&t.params.length||t.hash)},scopedId:function(t){return/^\.|this\b/.test(t.original)},simpleId:function(t){return t.parts.length===1&&!m_n.helpers.scopedId(t)&&!t.depth}}};Iat.default=m_n;h_n.exports=Iat.default});var y_n=z((Cat,__n)=>{"use strict";Cat.__esModule=!0;var aqs=function(){var e={trace:function(){},yy:{},symbols_:{error:2,root:3,program:4,EOF:5,program_repetition0:6,statement:7,mustache:8,block:9,rawBlock:10,partial:11,partialBlock:12,content:13,COMMENT:14,CONTENT:15,openRawBlock:16,rawBlock_repetition0:17,END_RAW_BLOCK:18,OPEN_RAW_BLOCK:19,helperName:20,openRawBlock_repetition0:21,openRawBlock_option0:22,CLOSE_RAW_BLOCK:23,openBlock:24,block_option0:25,closeBlock:26,openInverse:27,block_option1:28,OPEN_BLOCK:29,openBlock_repetition0:30,openBlock_option0:31,openBlock_option1:32,CLOSE:33,OPEN_INVERSE:34,openInverse_repetition0:35,openInverse_option0:36,openInverse_option1:37,openInverseChain:38,OPEN_INVERSE_CHAIN:39,openInverseChain_repetition0:40,openInverseChain_option0:41,openInverseChain_option1:42,inverseAndProgram:43,INVERSE:44,inverseChain:45,inverseChain_option0:46,OPEN_ENDBLOCK:47,OPEN:48,mustache_repetition0:49,mustache_option0:50,OPEN_UNESCAPED:51,mustache_repetition1:52,mustache_option1:53,CLOSE_UNESCAPED:54,OPEN_PARTIAL:55,partialName:56,partial_repetition0:57,partial_option0:58,openPartialBlock:59,OPEN_PARTIAL_BLOCK:60,openPartialBlock_repetition0:61,openPartialBlock_option0:62,param:63,sexpr:64,OPEN_SEXPR:65,sexpr_repetition0:66,sexpr_option0:67,CLOSE_SEXPR:68,hash:69,hash_repetition_plus0:70,hashSegment:71,ID:72,EQUALS:73,blockParams:74,OPEN_BLOCK_PARAMS:75,blockParams_repetition_plus0:76,CLOSE_BLOCK_PARAMS:77,path:78,dataName:79,STRING:80,NUMBER:81,BOOLEAN:82,UNDEFINED:83,NULL:84,DATA:85,pathSegments:86,SEP:87,$accept:0,$end:1},terminals_:{2:"error",5:"EOF",14:"COMMENT",15:"CONTENT",18:"END_RAW_BLOCK",19:"OPEN_RAW_BLOCK",23:"CLOSE_RAW_BLOCK",29:"OPEN_BLOCK",33:"CLOSE",34:"OPEN_INVERSE",39:"OPEN_INVERSE_CHAIN",44:"INVERSE",47:"OPEN_ENDBLOCK",48:"OPEN",51:"OPEN_UNESCAPED",54:"CLOSE_UNESCAPED",55:"OPEN_PARTIAL",60:"OPEN_PARTIAL_BLOCK",65:"OPEN_SEXPR",68:"CLOSE_SEXPR",72:"ID",73:"EQUALS",75:"OPEN_BLOCK_PARAMS",77:"CLOSE_BLOCK_PARAMS",80:"STRING",81:"NUMBER",82:"BOOLEAN",83:"UNDEFINED",84:"NULL",85:"DATA",87:"SEP"},productions_:[0,[3,2],[4,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[13,1],[10,3],[16,5],[9,4],[9,4],[24,6],[27,6],[38,6],[43,2],[45,3],[45,1],[26,3],[8,5],[8,5],[11,5],[12,3],[59,5],[63,1],[63,1],[64,5],[69,1],[71,3],[74,3],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[56,1],[56,1],[79,2],[78,1],[86,3],[86,1],[6,0],[6,2],[17,0],[17,2],[21,0],[21,2],[22,0],[22,1],[25,0],[25,1],[28,0],[28,1],[30,0],[30,2],[31,0],[31,1],[32,0],[32,1],[35,0],[35,2],[36,0],[36,1],[37,0],[37,1],[40,0],[40,2],[41,0],[41,1],[42,0],[42,1],[46,0],[46,1],[49,0],[49,2],[50,0],[50,1],[52,0],[52,2],[53,0],[53,1],[57,0],[57,2],[58,0],[58,1],[61,0],[61,2],[62,0],[62,1],[66,0],[66,2],[67,0],[67,1],[70,1],[70,2],[76,1],[76,2]],performAction:function(a,o,g,p,f,m,y){var B=m.length-1;switch(f){case 1:return m[B-1];case 2:this.$=p.prepareProgram(m[B]);break;case 3:this.$=m[B];break;case 4:this.$=m[B];break;case 5:this.$=m[B];break;case 6:this.$=m[B];break;case 7:this.$=m[B];break;case 8:this.$=m[B];break;case 9:this.$={type:"CommentStatement",value:p.stripComment(m[B]),strip:p.stripFlags(m[B],m[B]),loc:p.locInfo(this._$)};break;case 10:this.$={type:"ContentStatement",original:m[B],value:m[B],loc:p.locInfo(this._$)};break;case 11:this.$=p.prepareRawBlock(m[B-2],m[B-1],m[B],this._$);break;case 12:this.$={path:m[B-3],params:m[B-2],hash:m[B-1]};break;case 13:this.$=p.prepareBlock(m[B-3],m[B-2],m[B-1],m[B],!1,this._$);break;case 14:this.$=p.prepareBlock(m[B-3],m[B-2],m[B-1],m[B],!0,this._$);break;case 15:this.$={open:m[B-5],path:m[B-4],params:m[B-3],hash:m[B-2],blockParams:m[B-1],strip:p.stripFlags(m[B-5],m[B])};break;case 16:this.$={path:m[B-4],params:m[B-3],hash:m[B-2],blockParams:m[B-1],strip:p.stripFlags(m[B-5],m[B])};break;case 17:this.$={path:m[B-4],params:m[B-3],hash:m[B-2],blockParams:m[B-1],strip:p.stripFlags(m[B-5],m[B])};break;case 18:this.$={strip:p.stripFlags(m[B-1],m[B-1]),program:m[B]};break;case 19:var v=p.prepareBlock(m[B-2],m[B-1],m[B],m[B],!1,this._$),G=p.prepareProgram([v],m[B-1].loc);G.chained=!0,this.$={strip:m[B-2].strip,program:G,chain:!0};break;case 20:this.$=m[B];break;case 21:this.$={path:m[B-1],strip:p.stripFlags(m[B-2],m[B])};break;case 22:this.$=p.prepareMustache(m[B-3],m[B-2],m[B-1],m[B-4],p.stripFlags(m[B-4],m[B]),this._$);break;case 23:this.$=p.prepareMustache(m[B-3],m[B-2],m[B-1],m[B-4],p.stripFlags(m[B-4],m[B]),this._$);break;case 24:this.$={type:"PartialStatement",name:m[B-3],params:m[B-2],hash:m[B-1],indent:"",strip:p.stripFlags(m[B-4],m[B]),loc:p.locInfo(this._$)};break;case 25:this.$=p.preparePartialBlock(m[B-2],m[B-1],m[B],this._$);break;case 26:this.$={path:m[B-3],params:m[B-2],hash:m[B-1],strip:p.stripFlags(m[B-4],m[B])};break;case 27:this.$=m[B];break;case 28:this.$=m[B];break;case 29:this.$={type:"SubExpression",path:m[B-3],params:m[B-2],hash:m[B-1],loc:p.locInfo(this._$)};break;case 30:this.$={type:"Hash",pairs:m[B],loc:p.locInfo(this._$)};break;case 31:this.$={type:"HashPair",key:p.id(m[B-2]),value:m[B],loc:p.locInfo(this._$)};break;case 32:this.$=p.id(m[B-1]);break;case 33:this.$=m[B];break;case 34:this.$=m[B];break;case 35:this.$={type:"StringLiteral",value:m[B],original:m[B],loc:p.locInfo(this._$)};break;case 36:this.$={type:"NumberLiteral",value:Number(m[B]),original:Number(m[B]),loc:p.locInfo(this._$)};break;case 37:this.$={type:"BooleanLiteral",value:m[B]==="true",original:m[B]==="true",loc:p.locInfo(this._$)};break;case 38:this.$={type:"UndefinedLiteral",original:void 0,value:void 0,loc:p.locInfo(this._$)};break;case 39:this.$={type:"NullLiteral",original:null,value:null,loc:p.locInfo(this._$)};break;case 40:this.$=m[B];break;case 41:this.$=m[B];break;case 42:this.$=p.preparePath(!0,m[B],this._$);break;case 43:this.$=p.preparePath(!1,m[B],this._$);break;case 44:m[B-2].push({part:p.id(m[B]),original:m[B],separator:m[B-1]}),this.$=m[B-2];break;case 45:this.$=[{part:p.id(m[B]),original:m[B]}];break;case 46:this.$=[];break;case 47:m[B-1].push(m[B]);break;case 48:this.$=[];break;case 49:m[B-1].push(m[B]);break;case 50:this.$=[];break;case 51:m[B-1].push(m[B]);break;case 58:this.$=[];break;case 59:m[B-1].push(m[B]);break;case 64:this.$=[];break;case 65:m[B-1].push(m[B]);break;case 70:this.$=[];break;case 71:m[B-1].push(m[B]);break;case 78:this.$=[];break;case 79:m[B-1].push(m[B]);break;case 82:this.$=[];break;case 83:m[B-1].push(m[B]);break;case 86:this.$=[];break;case 87:m[B-1].push(m[B]);break;case 90:this.$=[];break;case 91:m[B-1].push(m[B]);break;case 94:this.$=[];break;case 95:m[B-1].push(m[B]);break;case 98:this.$=[m[B]];break;case 99:m[B-1].push(m[B]);break;case 100:this.$=[m[B]];break;case 101:m[B-1].push(m[B]);break}},table:[{3:1,4:2,5:[2,46],6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{1:[3]},{5:[1,4]},{5:[2,2],7:5,8:6,9:7,10:8,11:9,12:10,13:11,14:[1,12],15:[1,20],16:17,19:[1,23],24:15,27:16,29:[1,21],34:[1,22],39:[2,2],44:[2,2],47:[2,2],48:[1,13],51:[1,14],55:[1,18],59:19,60:[1,24]},{1:[2,1]},{5:[2,47],14:[2,47],15:[2,47],19:[2,47],29:[2,47],34:[2,47],39:[2,47],44:[2,47],47:[2,47],48:[2,47],51:[2,47],55:[2,47],60:[2,47]},{5:[2,3],14:[2,3],15:[2,3],19:[2,3],29:[2,3],34:[2,3],39:[2,3],44:[2,3],47:[2,3],48:[2,3],51:[2,3],55:[2,3],60:[2,3]},{5:[2,4],14:[2,4],15:[2,4],19:[2,4],29:[2,4],34:[2,4],39:[2,4],44:[2,4],47:[2,4],48:[2,4],51:[2,4],55:[2,4],60:[2,4]},{5:[2,5],14:[2,5],15:[2,5],19:[2,5],29:[2,5],34:[2,5],39:[2,5],44:[2,5],47:[2,5],48:[2,5],51:[2,5],55:[2,5],60:[2,5]},{5:[2,6],14:[2,6],15:[2,6],19:[2,6],29:[2,6],34:[2,6],39:[2,6],44:[2,6],47:[2,6],48:[2,6],51:[2,6],55:[2,6],60:[2,6]},{5:[2,7],14:[2,7],15:[2,7],19:[2,7],29:[2,7],34:[2,7],39:[2,7],44:[2,7],47:[2,7],48:[2,7],51:[2,7],55:[2,7],60:[2,7]},{5:[2,8],14:[2,8],15:[2,8],19:[2,8],29:[2,8],34:[2,8],39:[2,8],44:[2,8],47:[2,8],48:[2,8],51:[2,8],55:[2,8],60:[2,8]},{5:[2,9],14:[2,9],15:[2,9],19:[2,9],29:[2,9],34:[2,9],39:[2,9],44:[2,9],47:[2,9],48:[2,9],51:[2,9],55:[2,9],60:[2,9]},{20:25,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:36,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:37,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{4:38,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{15:[2,48],17:39,18:[2,48]},{20:41,56:40,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:44,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{5:[2,10],14:[2,10],15:[2,10],18:[2,10],19:[2,10],29:[2,10],34:[2,10],39:[2,10],44:[2,10],47:[2,10],48:[2,10],51:[2,10],55:[2,10],60:[2,10]},{20:45,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:46,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:47,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:41,56:48,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[2,78],49:49,65:[2,78],72:[2,78],80:[2,78],81:[2,78],82:[2,78],83:[2,78],84:[2,78],85:[2,78]},{23:[2,33],33:[2,33],54:[2,33],65:[2,33],68:[2,33],72:[2,33],75:[2,33],80:[2,33],81:[2,33],82:[2,33],83:[2,33],84:[2,33],85:[2,33]},{23:[2,34],33:[2,34],54:[2,34],65:[2,34],68:[2,34],72:[2,34],75:[2,34],80:[2,34],81:[2,34],82:[2,34],83:[2,34],84:[2,34],85:[2,34]},{23:[2,35],33:[2,35],54:[2,35],65:[2,35],68:[2,35],72:[2,35],75:[2,35],80:[2,35],81:[2,35],82:[2,35],83:[2,35],84:[2,35],85:[2,35]},{23:[2,36],33:[2,36],54:[2,36],65:[2,36],68:[2,36],72:[2,36],75:[2,36],80:[2,36],81:[2,36],82:[2,36],83:[2,36],84:[2,36],85:[2,36]},{23:[2,37],33:[2,37],54:[2,37],65:[2,37],68:[2,37],72:[2,37],75:[2,37],80:[2,37],81:[2,37],82:[2,37],83:[2,37],84:[2,37],85:[2,37]},{23:[2,38],33:[2,38],54:[2,38],65:[2,38],68:[2,38],72:[2,38],75:[2,38],80:[2,38],81:[2,38],82:[2,38],83:[2,38],84:[2,38],85:[2,38]},{23:[2,39],33:[2,39],54:[2,39],65:[2,39],68:[2,39],72:[2,39],75:[2,39],80:[2,39],81:[2,39],82:[2,39],83:[2,39],84:[2,39],85:[2,39]},{23:[2,43],33:[2,43],54:[2,43],65:[2,43],68:[2,43],72:[2,43],75:[2,43],80:[2,43],81:[2,43],82:[2,43],83:[2,43],84:[2,43],85:[2,43],87:[1,50]},{72:[1,35],86:51},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{52:52,54:[2,82],65:[2,82],72:[2,82],80:[2,82],81:[2,82],82:[2,82],83:[2,82],84:[2,82],85:[2,82]},{25:53,38:55,39:[1,57],43:56,44:[1,58],45:54,47:[2,54]},{28:59,43:60,44:[1,58],47:[2,56]},{13:62,15:[1,20],18:[1,61]},{33:[2,86],57:63,65:[2,86],72:[2,86],80:[2,86],81:[2,86],82:[2,86],83:[2,86],84:[2,86],85:[2,86]},{33:[2,40],65:[2,40],72:[2,40],80:[2,40],81:[2,40],82:[2,40],83:[2,40],84:[2,40],85:[2,40]},{33:[2,41],65:[2,41],72:[2,41],80:[2,41],81:[2,41],82:[2,41],83:[2,41],84:[2,41],85:[2,41]},{20:64,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:65,47:[1,66]},{30:67,33:[2,58],65:[2,58],72:[2,58],75:[2,58],80:[2,58],81:[2,58],82:[2,58],83:[2,58],84:[2,58],85:[2,58]},{33:[2,64],35:68,65:[2,64],72:[2,64],75:[2,64],80:[2,64],81:[2,64],82:[2,64],83:[2,64],84:[2,64],85:[2,64]},{21:69,23:[2,50],65:[2,50],72:[2,50],80:[2,50],81:[2,50],82:[2,50],83:[2,50],84:[2,50],85:[2,50]},{33:[2,90],61:70,65:[2,90],72:[2,90],80:[2,90],81:[2,90],82:[2,90],83:[2,90],84:[2,90],85:[2,90]},{20:74,33:[2,80],50:71,63:72,64:75,65:[1,43],69:73,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{72:[1,79]},{23:[2,42],33:[2,42],54:[2,42],65:[2,42],68:[2,42],72:[2,42],75:[2,42],80:[2,42],81:[2,42],82:[2,42],83:[2,42],84:[2,42],85:[2,42],87:[1,50]},{20:74,53:80,54:[2,84],63:81,64:75,65:[1,43],69:82,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:83,47:[1,66]},{47:[2,55]},{4:84,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{47:[2,20]},{20:85,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:86,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{26:87,47:[1,66]},{47:[2,57]},{5:[2,11],14:[2,11],15:[2,11],19:[2,11],29:[2,11],34:[2,11],39:[2,11],44:[2,11],47:[2,11],48:[2,11],51:[2,11],55:[2,11],60:[2,11]},{15:[2,49],18:[2,49]},{20:74,33:[2,88],58:88,63:89,64:75,65:[1,43],69:90,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{65:[2,94],66:91,68:[2,94],72:[2,94],80:[2,94],81:[2,94],82:[2,94],83:[2,94],84:[2,94],85:[2,94]},{5:[2,25],14:[2,25],15:[2,25],19:[2,25],29:[2,25],34:[2,25],39:[2,25],44:[2,25],47:[2,25],48:[2,25],51:[2,25],55:[2,25],60:[2,25]},{20:92,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,31:93,33:[2,60],63:94,64:75,65:[1,43],69:95,70:76,71:77,72:[1,78],75:[2,60],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,66],36:96,63:97,64:75,65:[1,43],69:98,70:76,71:77,72:[1,78],75:[2,66],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,22:99,23:[2,52],63:100,64:75,65:[1,43],69:101,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,92],62:102,63:103,64:75,65:[1,43],69:104,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,105]},{33:[2,79],65:[2,79],72:[2,79],80:[2,79],81:[2,79],82:[2,79],83:[2,79],84:[2,79],85:[2,79]},{33:[2,81]},{23:[2,27],33:[2,27],54:[2,27],65:[2,27],68:[2,27],72:[2,27],75:[2,27],80:[2,27],81:[2,27],82:[2,27],83:[2,27],84:[2,27],85:[2,27]},{23:[2,28],33:[2,28],54:[2,28],65:[2,28],68:[2,28],72:[2,28],75:[2,28],80:[2,28],81:[2,28],82:[2,28],83:[2,28],84:[2,28],85:[2,28]},{23:[2,30],33:[2,30],54:[2,30],68:[2,30],71:106,72:[1,107],75:[2,30]},{23:[2,98],33:[2,98],54:[2,98],68:[2,98],72:[2,98],75:[2,98]},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],73:[1,108],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{23:[2,44],33:[2,44],54:[2,44],65:[2,44],68:[2,44],72:[2,44],75:[2,44],80:[2,44],81:[2,44],82:[2,44],83:[2,44],84:[2,44],85:[2,44],87:[2,44]},{54:[1,109]},{54:[2,83],65:[2,83],72:[2,83],80:[2,83],81:[2,83],82:[2,83],83:[2,83],84:[2,83],85:[2,83]},{54:[2,85]},{5:[2,13],14:[2,13],15:[2,13],19:[2,13],29:[2,13],34:[2,13],39:[2,13],44:[2,13],47:[2,13],48:[2,13],51:[2,13],55:[2,13],60:[2,13]},{38:55,39:[1,57],43:56,44:[1,58],45:111,46:110,47:[2,76]},{33:[2,70],40:112,65:[2,70],72:[2,70],75:[2,70],80:[2,70],81:[2,70],82:[2,70],83:[2,70],84:[2,70],85:[2,70]},{47:[2,18]},{5:[2,14],14:[2,14],15:[2,14],19:[2,14],29:[2,14],34:[2,14],39:[2,14],44:[2,14],47:[2,14],48:[2,14],51:[2,14],55:[2,14],60:[2,14]},{33:[1,113]},{33:[2,87],65:[2,87],72:[2,87],80:[2,87],81:[2,87],82:[2,87],83:[2,87],84:[2,87],85:[2,87]},{33:[2,89]},{20:74,63:115,64:75,65:[1,43],67:114,68:[2,96],69:116,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,117]},{32:118,33:[2,62],74:119,75:[1,120]},{33:[2,59],65:[2,59],72:[2,59],75:[2,59],80:[2,59],81:[2,59],82:[2,59],83:[2,59],84:[2,59],85:[2,59]},{33:[2,61],75:[2,61]},{33:[2,68],37:121,74:122,75:[1,120]},{33:[2,65],65:[2,65],72:[2,65],75:[2,65],80:[2,65],81:[2,65],82:[2,65],83:[2,65],84:[2,65],85:[2,65]},{33:[2,67],75:[2,67]},{23:[1,123]},{23:[2,51],65:[2,51],72:[2,51],80:[2,51],81:[2,51],82:[2,51],83:[2,51],84:[2,51],85:[2,51]},{23:[2,53]},{33:[1,124]},{33:[2,91],65:[2,91],72:[2,91],80:[2,91],81:[2,91],82:[2,91],83:[2,91],84:[2,91],85:[2,91]},{33:[2,93]},{5:[2,22],14:[2,22],15:[2,22],19:[2,22],29:[2,22],34:[2,22],39:[2,22],44:[2,22],47:[2,22],48:[2,22],51:[2,22],55:[2,22],60:[2,22]},{23:[2,99],33:[2,99],54:[2,99],68:[2,99],72:[2,99],75:[2,99]},{73:[1,108]},{20:74,63:125,64:75,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,23],14:[2,23],15:[2,23],19:[2,23],29:[2,23],34:[2,23],39:[2,23],44:[2,23],47:[2,23],48:[2,23],51:[2,23],55:[2,23],60:[2,23]},{47:[2,19]},{47:[2,77]},{20:74,33:[2,72],41:126,63:127,64:75,65:[1,43],69:128,70:76,71:77,72:[1,78],75:[2,72],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,24],14:[2,24],15:[2,24],19:[2,24],29:[2,24],34:[2,24],39:[2,24],44:[2,24],47:[2,24],48:[2,24],51:[2,24],55:[2,24],60:[2,24]},{68:[1,129]},{65:[2,95],68:[2,95],72:[2,95],80:[2,95],81:[2,95],82:[2,95],83:[2,95],84:[2,95],85:[2,95]},{68:[2,97]},{5:[2,21],14:[2,21],15:[2,21],19:[2,21],29:[2,21],34:[2,21],39:[2,21],44:[2,21],47:[2,21],48:[2,21],51:[2,21],55:[2,21],60:[2,21]},{33:[1,130]},{33:[2,63]},{72:[1,132],76:131},{33:[1,133]},{33:[2,69]},{15:[2,12],18:[2,12]},{14:[2,26],15:[2,26],19:[2,26],29:[2,26],34:[2,26],47:[2,26],48:[2,26],51:[2,26],55:[2,26],60:[2,26]},{23:[2,31],33:[2,31],54:[2,31],68:[2,31],72:[2,31],75:[2,31]},{33:[2,74],42:134,74:135,75:[1,120]},{33:[2,71],65:[2,71],72:[2,71],75:[2,71],80:[2,71],81:[2,71],82:[2,71],83:[2,71],84:[2,71],85:[2,71]},{33:[2,73],75:[2,73]},{23:[2,29],33:[2,29],54:[2,29],65:[2,29],68:[2,29],72:[2,29],75:[2,29],80:[2,29],81:[2,29],82:[2,29],83:[2,29],84:[2,29],85:[2,29]},{14:[2,15],15:[2,15],19:[2,15],29:[2,15],34:[2,15],39:[2,15],44:[2,15],47:[2,15],48:[2,15],51:[2,15],55:[2,15],60:[2,15]},{72:[1,137],77:[1,136]},{72:[2,100],77:[2,100]},{14:[2,16],15:[2,16],19:[2,16],29:[2,16],34:[2,16],44:[2,16],47:[2,16],48:[2,16],51:[2,16],55:[2,16],60:[2,16]},{33:[1,138]},{33:[2,75]},{33:[2,32]},{72:[2,101],77:[2,101]},{14:[2,17],15:[2,17],19:[2,17],29:[2,17],34:[2,17],39:[2,17],44:[2,17],47:[2,17],48:[2,17],51:[2,17],55:[2,17],60:[2,17]}],defaultActions:{4:[2,1],54:[2,55],56:[2,20],60:[2,57],73:[2,81],82:[2,85],86:[2,18],90:[2,89],101:[2,53],104:[2,93],110:[2,19],111:[2,77],116:[2,97],119:[2,63],122:[2,69],135:[2,75],136:[2,32]},parseError:function(a,o){throw new Error(a)},parse:function(a){var o=this,g=[0],p=[null],f=[],m=this.table,y="",B=0,v=0,G=0,T=2,O=1;this.lexer.setInput(a),this.lexer.yy=this.yy,this.yy.lexer=this.lexer,this.yy.parser=this,typeof this.lexer.yylloc>"u"&&(this.lexer.yylloc={});var X=this.lexer.yylloc;f.push(X);var U=this.lexer.options&&this.lexer.options.ranges;typeof this.yy.parseError=="function"&&(this.parseError=this.yy.parseError);function le(ft){g.length=g.length-2*ft,p.length=p.length-ft,f.length=f.length-ft}function ae(){var ft;return ft=o.lexer.lex()||1,typeof ft!="number"&&(ft=o.symbols_[ft]||ft),ft}for(var ge,fe,pe,he,be,Te,ke={},x,et,Ue,Je;;){if(pe=g[g.length-1],this.defaultActions[pe]?he=this.defaultActions[pe]:((ge===null||typeof ge>"u")&&(ge=ae()),he=m[pe]&&m[pe][ge]),typeof he>"u"||!he.length||!he[0]){var Xe="";if(!G){Je=[];for(x in m[pe])this.terminals_[x]&&x>2&&Je.push("'"+this.terminals_[x]+"'");this.lexer.showPosition?Xe="Parse error on line "+(B+1)+`: +See https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details`))}function Fzs(){Object.keys(gat).forEach(function(e){delete gat[e]})}});var dat=z(XJ=>{"use strict";XJ.__esModule=!0;XJ.HandlebarsEnvironment=Y8t;function l_n(e){return e&&e.__esModule?e:{default:e}}var qAe=TF(),Zzs=VO(),M8t=l_n(Zzs),Lzs=V8t(),Vzs=i_n(),Wzs=P8t(),Aat=l_n(Wzs),Pzs=Q8t(),Ozs="4.7.8";XJ.VERSION=Ozs;var Qzs=8;XJ.COMPILER_REVISION=Qzs;var Mzs=7;XJ.LAST_COMPATIBLE_COMPILER_REVISION=Mzs;var Hzs={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:"== 1.x.x",5:"== 2.0.0-alpha.x",6:">= 2.0.0-beta.1",7:">= 4.0.0 <4.3.0",8:">= 4.3.0"};XJ.REVISION_CHANGES=Hzs;var H8t="[object Object]";function Y8t(e,t,r){this.helpers=e||{},this.partials=t||{},this.decorators=r||{},Lzs.registerDefaultHelpers(this),Vzs.registerDefaultDecorators(this)}Y8t.prototype={constructor:Y8t,logger:Aat.default,log:Aat.default.log,registerHelper:function(t,r){if(qAe.toString.call(t)===H8t){if(r)throw new M8t.default("Arg not supported with multiple helpers");qAe.extend(this.helpers,t)}else this.helpers[t]=r},unregisterHelper:function(t){delete this.helpers[t]},registerPartial:function(t,r){if(qAe.toString.call(t)===H8t)qAe.extend(this.partials,t);else{if(typeof r>"u")throw new M8t.default('Attempting to register a partial called "'+t+'" as undefined');this.partials[t]=r}},unregisterPartial:function(t){delete this.partials[t]},registerDecorator:function(t,r){if(qAe.toString.call(t)===H8t){if(r)throw new M8t.default("Arg not supported with multiple decorators");qAe.extend(this.decorators,t)}else this.decorators[t]=r},unregisterDecorator:function(t){delete this.decorators[t]},resetLoggedPropertyAccesses:function(){Pzs.resetLoggedProperties()}};var Yzs=Aat.default.log;XJ.log=Yzs;XJ.createFrame=qAe.createFrame;XJ.logger=Aat.default});var g_n=z((pat,u_n)=>{"use strict";pat.__esModule=!0;function X8t(e){this.string=e}X8t.prototype.toString=X8t.prototype.toHTML=function(){return""+this.string};pat.default=X8t;u_n.exports=pat.default});var A_n=z(J8t=>{"use strict";J8t.__esModule=!0;J8t.wrapHelper=Xzs;function Xzs(e,t){if(typeof e!="function")return e;var r=function(){var a=arguments[arguments.length-1];return arguments[arguments.length-1]=t(a),e.apply(this,arguments)};return r}});var C_n=z(Une=>{"use strict";Une.__esModule=!0;Une.checkRevision=qzs;Une.template=$zs;Une.wrapProgram=fat;Une.resolvePartial=eqs;Une.invokePartial=tqs;Une.noop=f_n;function Jzs(e){return e&&e.__esModule?e:{default:e}}function Uzs(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}var Kzs=TF(),kj=Uzs(Kzs),jzs=VO(),Gj=Jzs(jzs),Fj=dat(),d_n=V8t(),zzs=A_n(),p_n=Q8t();function qzs(e){var t=e&&e[0]||1,r=Fj.COMPILER_REVISION;if(!(t>=Fj.LAST_COMPATIBLE_COMPILER_REVISION&&t<=Fj.COMPILER_REVISION))if(t{"use strict";Iat.__esModule=!0;Iat.default=function(e){(function(){typeof globalThis!="object"&&(Object.prototype.__defineGetter__("__magic__",function(){return this}),__magic__.globalThis=__magic__,delete Object.prototype.__magic__)})();var t=globalThis.Handlebars;e.noConflict=function(){return globalThis.Handlebars===e&&(globalThis.Handlebars=t),e}};m_n.exports=Iat.default});var E_n=z((Cat,b_n)=>{"use strict";Cat.__esModule=!0;function j8t(e){return e&&e.__esModule?e:{default:e}}function z8t(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}var sqs=dat(),h_n=z8t(sqs),oqs=g_n(),aqs=j8t(oqs),cqs=VO(),lqs=j8t(cqs),uqs=TF(),K8t=z8t(uqs),gqs=C_n(),__n=z8t(gqs),Aqs=U8t(),dqs=j8t(Aqs);function y_n(){var e=new h_n.HandlebarsEnvironment;return K8t.extend(e,h_n),e.SafeString=aqs.default,e.Exception=lqs.default,e.Utils=K8t,e.escapeExpression=K8t.escapeExpression,e.VM=__n,e.template=function(t){return __n.template(t,e)},e}var AWe=y_n();AWe.create=y_n;dqs.default(AWe);AWe.default=AWe;Cat.default=AWe;b_n.exports=Cat.default});var q8t=z((mat,v_n)=>{"use strict";mat.__esModule=!0;var B_n={helpers:{helperExpression:function(t){return t.type==="SubExpression"||(t.type==="MustacheStatement"||t.type==="BlockStatement")&&!!(t.params&&t.params.length||t.hash)},scopedId:function(t){return/^\.|this\b/.test(t.original)},simpleId:function(t){return t.parts.length===1&&!B_n.helpers.scopedId(t)&&!t.depth}}};mat.default=B_n;v_n.exports=mat.default});var w_n=z((hat,S_n)=>{"use strict";hat.__esModule=!0;var pqs=function(){var e={trace:function(){},yy:{},symbols_:{error:2,root:3,program:4,EOF:5,program_repetition0:6,statement:7,mustache:8,block:9,rawBlock:10,partial:11,partialBlock:12,content:13,COMMENT:14,CONTENT:15,openRawBlock:16,rawBlock_repetition0:17,END_RAW_BLOCK:18,OPEN_RAW_BLOCK:19,helperName:20,openRawBlock_repetition0:21,openRawBlock_option0:22,CLOSE_RAW_BLOCK:23,openBlock:24,block_option0:25,closeBlock:26,openInverse:27,block_option1:28,OPEN_BLOCK:29,openBlock_repetition0:30,openBlock_option0:31,openBlock_option1:32,CLOSE:33,OPEN_INVERSE:34,openInverse_repetition0:35,openInverse_option0:36,openInverse_option1:37,openInverseChain:38,OPEN_INVERSE_CHAIN:39,openInverseChain_repetition0:40,openInverseChain_option0:41,openInverseChain_option1:42,inverseAndProgram:43,INVERSE:44,inverseChain:45,inverseChain_option0:46,OPEN_ENDBLOCK:47,OPEN:48,mustache_repetition0:49,mustache_option0:50,OPEN_UNESCAPED:51,mustache_repetition1:52,mustache_option1:53,CLOSE_UNESCAPED:54,OPEN_PARTIAL:55,partialName:56,partial_repetition0:57,partial_option0:58,openPartialBlock:59,OPEN_PARTIAL_BLOCK:60,openPartialBlock_repetition0:61,openPartialBlock_option0:62,param:63,sexpr:64,OPEN_SEXPR:65,sexpr_repetition0:66,sexpr_option0:67,CLOSE_SEXPR:68,hash:69,hash_repetition_plus0:70,hashSegment:71,ID:72,EQUALS:73,blockParams:74,OPEN_BLOCK_PARAMS:75,blockParams_repetition_plus0:76,CLOSE_BLOCK_PARAMS:77,path:78,dataName:79,STRING:80,NUMBER:81,BOOLEAN:82,UNDEFINED:83,NULL:84,DATA:85,pathSegments:86,SEP:87,$accept:0,$end:1},terminals_:{2:"error",5:"EOF",14:"COMMENT",15:"CONTENT",18:"END_RAW_BLOCK",19:"OPEN_RAW_BLOCK",23:"CLOSE_RAW_BLOCK",29:"OPEN_BLOCK",33:"CLOSE",34:"OPEN_INVERSE",39:"OPEN_INVERSE_CHAIN",44:"INVERSE",47:"OPEN_ENDBLOCK",48:"OPEN",51:"OPEN_UNESCAPED",54:"CLOSE_UNESCAPED",55:"OPEN_PARTIAL",60:"OPEN_PARTIAL_BLOCK",65:"OPEN_SEXPR",68:"CLOSE_SEXPR",72:"ID",73:"EQUALS",75:"OPEN_BLOCK_PARAMS",77:"CLOSE_BLOCK_PARAMS",80:"STRING",81:"NUMBER",82:"BOOLEAN",83:"UNDEFINED",84:"NULL",85:"DATA",87:"SEP"},productions_:[0,[3,2],[4,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[13,1],[10,3],[16,5],[9,4],[9,4],[24,6],[27,6],[38,6],[43,2],[45,3],[45,1],[26,3],[8,5],[8,5],[11,5],[12,3],[59,5],[63,1],[63,1],[64,5],[69,1],[71,3],[74,3],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[56,1],[56,1],[79,2],[78,1],[86,3],[86,1],[6,0],[6,2],[17,0],[17,2],[21,0],[21,2],[22,0],[22,1],[25,0],[25,1],[28,0],[28,1],[30,0],[30,2],[31,0],[31,1],[32,0],[32,1],[35,0],[35,2],[36,0],[36,1],[37,0],[37,1],[40,0],[40,2],[41,0],[41,1],[42,0],[42,1],[46,0],[46,1],[49,0],[49,2],[50,0],[50,1],[52,0],[52,2],[53,0],[53,1],[57,0],[57,2],[58,0],[58,1],[61,0],[61,2],[62,0],[62,1],[66,0],[66,2],[67,0],[67,1],[70,1],[70,2],[76,1],[76,2]],performAction:function(a,o,g,p,f,m,y){var B=m.length-1;switch(f){case 1:return m[B-1];case 2:this.$=p.prepareProgram(m[B]);break;case 3:this.$=m[B];break;case 4:this.$=m[B];break;case 5:this.$=m[B];break;case 6:this.$=m[B];break;case 7:this.$=m[B];break;case 8:this.$=m[B];break;case 9:this.$={type:"CommentStatement",value:p.stripComment(m[B]),strip:p.stripFlags(m[B],m[B]),loc:p.locInfo(this._$)};break;case 10:this.$={type:"ContentStatement",original:m[B],value:m[B],loc:p.locInfo(this._$)};break;case 11:this.$=p.prepareRawBlock(m[B-2],m[B-1],m[B],this._$);break;case 12:this.$={path:m[B-3],params:m[B-2],hash:m[B-1]};break;case 13:this.$=p.prepareBlock(m[B-3],m[B-2],m[B-1],m[B],!1,this._$);break;case 14:this.$=p.prepareBlock(m[B-3],m[B-2],m[B-1],m[B],!0,this._$);break;case 15:this.$={open:m[B-5],path:m[B-4],params:m[B-3],hash:m[B-2],blockParams:m[B-1],strip:p.stripFlags(m[B-5],m[B])};break;case 16:this.$={path:m[B-4],params:m[B-3],hash:m[B-2],blockParams:m[B-1],strip:p.stripFlags(m[B-5],m[B])};break;case 17:this.$={path:m[B-4],params:m[B-3],hash:m[B-2],blockParams:m[B-1],strip:p.stripFlags(m[B-5],m[B])};break;case 18:this.$={strip:p.stripFlags(m[B-1],m[B-1]),program:m[B]};break;case 19:var v=p.prepareBlock(m[B-2],m[B-1],m[B],m[B],!1,this._$),k=p.prepareProgram([v],m[B-1].loc);k.chained=!0,this.$={strip:m[B-2].strip,program:k,chain:!0};break;case 20:this.$=m[B];break;case 21:this.$={path:m[B-1],strip:p.stripFlags(m[B-2],m[B])};break;case 22:this.$=p.prepareMustache(m[B-3],m[B-2],m[B-1],m[B-4],p.stripFlags(m[B-4],m[B]),this._$);break;case 23:this.$=p.prepareMustache(m[B-3],m[B-2],m[B-1],m[B-4],p.stripFlags(m[B-4],m[B]),this._$);break;case 24:this.$={type:"PartialStatement",name:m[B-3],params:m[B-2],hash:m[B-1],indent:"",strip:p.stripFlags(m[B-4],m[B]),loc:p.locInfo(this._$)};break;case 25:this.$=p.preparePartialBlock(m[B-2],m[B-1],m[B],this._$);break;case 26:this.$={path:m[B-3],params:m[B-2],hash:m[B-1],strip:p.stripFlags(m[B-4],m[B])};break;case 27:this.$=m[B];break;case 28:this.$=m[B];break;case 29:this.$={type:"SubExpression",path:m[B-3],params:m[B-2],hash:m[B-1],loc:p.locInfo(this._$)};break;case 30:this.$={type:"Hash",pairs:m[B],loc:p.locInfo(this._$)};break;case 31:this.$={type:"HashPair",key:p.id(m[B-2]),value:m[B],loc:p.locInfo(this._$)};break;case 32:this.$=p.id(m[B-1]);break;case 33:this.$=m[B];break;case 34:this.$=m[B];break;case 35:this.$={type:"StringLiteral",value:m[B],original:m[B],loc:p.locInfo(this._$)};break;case 36:this.$={type:"NumberLiteral",value:Number(m[B]),original:Number(m[B]),loc:p.locInfo(this._$)};break;case 37:this.$={type:"BooleanLiteral",value:m[B]==="true",original:m[B]==="true",loc:p.locInfo(this._$)};break;case 38:this.$={type:"UndefinedLiteral",original:void 0,value:void 0,loc:p.locInfo(this._$)};break;case 39:this.$={type:"NullLiteral",original:null,value:null,loc:p.locInfo(this._$)};break;case 40:this.$=m[B];break;case 41:this.$=m[B];break;case 42:this.$=p.preparePath(!0,m[B],this._$);break;case 43:this.$=p.preparePath(!1,m[B],this._$);break;case 44:m[B-2].push({part:p.id(m[B]),original:m[B],separator:m[B-1]}),this.$=m[B-2];break;case 45:this.$=[{part:p.id(m[B]),original:m[B]}];break;case 46:this.$=[];break;case 47:m[B-1].push(m[B]);break;case 48:this.$=[];break;case 49:m[B-1].push(m[B]);break;case 50:this.$=[];break;case 51:m[B-1].push(m[B]);break;case 58:this.$=[];break;case 59:m[B-1].push(m[B]);break;case 64:this.$=[];break;case 65:m[B-1].push(m[B]);break;case 70:this.$=[];break;case 71:m[B-1].push(m[B]);break;case 78:this.$=[];break;case 79:m[B-1].push(m[B]);break;case 82:this.$=[];break;case 83:m[B-1].push(m[B]);break;case 86:this.$=[];break;case 87:m[B-1].push(m[B]);break;case 90:this.$=[];break;case 91:m[B-1].push(m[B]);break;case 94:this.$=[];break;case 95:m[B-1].push(m[B]);break;case 98:this.$=[m[B]];break;case 99:m[B-1].push(m[B]);break;case 100:this.$=[m[B]];break;case 101:m[B-1].push(m[B]);break}},table:[{3:1,4:2,5:[2,46],6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{1:[3]},{5:[1,4]},{5:[2,2],7:5,8:6,9:7,10:8,11:9,12:10,13:11,14:[1,12],15:[1,20],16:17,19:[1,23],24:15,27:16,29:[1,21],34:[1,22],39:[2,2],44:[2,2],47:[2,2],48:[1,13],51:[1,14],55:[1,18],59:19,60:[1,24]},{1:[2,1]},{5:[2,47],14:[2,47],15:[2,47],19:[2,47],29:[2,47],34:[2,47],39:[2,47],44:[2,47],47:[2,47],48:[2,47],51:[2,47],55:[2,47],60:[2,47]},{5:[2,3],14:[2,3],15:[2,3],19:[2,3],29:[2,3],34:[2,3],39:[2,3],44:[2,3],47:[2,3],48:[2,3],51:[2,3],55:[2,3],60:[2,3]},{5:[2,4],14:[2,4],15:[2,4],19:[2,4],29:[2,4],34:[2,4],39:[2,4],44:[2,4],47:[2,4],48:[2,4],51:[2,4],55:[2,4],60:[2,4]},{5:[2,5],14:[2,5],15:[2,5],19:[2,5],29:[2,5],34:[2,5],39:[2,5],44:[2,5],47:[2,5],48:[2,5],51:[2,5],55:[2,5],60:[2,5]},{5:[2,6],14:[2,6],15:[2,6],19:[2,6],29:[2,6],34:[2,6],39:[2,6],44:[2,6],47:[2,6],48:[2,6],51:[2,6],55:[2,6],60:[2,6]},{5:[2,7],14:[2,7],15:[2,7],19:[2,7],29:[2,7],34:[2,7],39:[2,7],44:[2,7],47:[2,7],48:[2,7],51:[2,7],55:[2,7],60:[2,7]},{5:[2,8],14:[2,8],15:[2,8],19:[2,8],29:[2,8],34:[2,8],39:[2,8],44:[2,8],47:[2,8],48:[2,8],51:[2,8],55:[2,8],60:[2,8]},{5:[2,9],14:[2,9],15:[2,9],19:[2,9],29:[2,9],34:[2,9],39:[2,9],44:[2,9],47:[2,9],48:[2,9],51:[2,9],55:[2,9],60:[2,9]},{20:25,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:36,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:37,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{4:38,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{15:[2,48],17:39,18:[2,48]},{20:41,56:40,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:44,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{5:[2,10],14:[2,10],15:[2,10],18:[2,10],19:[2,10],29:[2,10],34:[2,10],39:[2,10],44:[2,10],47:[2,10],48:[2,10],51:[2,10],55:[2,10],60:[2,10]},{20:45,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:46,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:47,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:41,56:48,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[2,78],49:49,65:[2,78],72:[2,78],80:[2,78],81:[2,78],82:[2,78],83:[2,78],84:[2,78],85:[2,78]},{23:[2,33],33:[2,33],54:[2,33],65:[2,33],68:[2,33],72:[2,33],75:[2,33],80:[2,33],81:[2,33],82:[2,33],83:[2,33],84:[2,33],85:[2,33]},{23:[2,34],33:[2,34],54:[2,34],65:[2,34],68:[2,34],72:[2,34],75:[2,34],80:[2,34],81:[2,34],82:[2,34],83:[2,34],84:[2,34],85:[2,34]},{23:[2,35],33:[2,35],54:[2,35],65:[2,35],68:[2,35],72:[2,35],75:[2,35],80:[2,35],81:[2,35],82:[2,35],83:[2,35],84:[2,35],85:[2,35]},{23:[2,36],33:[2,36],54:[2,36],65:[2,36],68:[2,36],72:[2,36],75:[2,36],80:[2,36],81:[2,36],82:[2,36],83:[2,36],84:[2,36],85:[2,36]},{23:[2,37],33:[2,37],54:[2,37],65:[2,37],68:[2,37],72:[2,37],75:[2,37],80:[2,37],81:[2,37],82:[2,37],83:[2,37],84:[2,37],85:[2,37]},{23:[2,38],33:[2,38],54:[2,38],65:[2,38],68:[2,38],72:[2,38],75:[2,38],80:[2,38],81:[2,38],82:[2,38],83:[2,38],84:[2,38],85:[2,38]},{23:[2,39],33:[2,39],54:[2,39],65:[2,39],68:[2,39],72:[2,39],75:[2,39],80:[2,39],81:[2,39],82:[2,39],83:[2,39],84:[2,39],85:[2,39]},{23:[2,43],33:[2,43],54:[2,43],65:[2,43],68:[2,43],72:[2,43],75:[2,43],80:[2,43],81:[2,43],82:[2,43],83:[2,43],84:[2,43],85:[2,43],87:[1,50]},{72:[1,35],86:51},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{52:52,54:[2,82],65:[2,82],72:[2,82],80:[2,82],81:[2,82],82:[2,82],83:[2,82],84:[2,82],85:[2,82]},{25:53,38:55,39:[1,57],43:56,44:[1,58],45:54,47:[2,54]},{28:59,43:60,44:[1,58],47:[2,56]},{13:62,15:[1,20],18:[1,61]},{33:[2,86],57:63,65:[2,86],72:[2,86],80:[2,86],81:[2,86],82:[2,86],83:[2,86],84:[2,86],85:[2,86]},{33:[2,40],65:[2,40],72:[2,40],80:[2,40],81:[2,40],82:[2,40],83:[2,40],84:[2,40],85:[2,40]},{33:[2,41],65:[2,41],72:[2,41],80:[2,41],81:[2,41],82:[2,41],83:[2,41],84:[2,41],85:[2,41]},{20:64,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:65,47:[1,66]},{30:67,33:[2,58],65:[2,58],72:[2,58],75:[2,58],80:[2,58],81:[2,58],82:[2,58],83:[2,58],84:[2,58],85:[2,58]},{33:[2,64],35:68,65:[2,64],72:[2,64],75:[2,64],80:[2,64],81:[2,64],82:[2,64],83:[2,64],84:[2,64],85:[2,64]},{21:69,23:[2,50],65:[2,50],72:[2,50],80:[2,50],81:[2,50],82:[2,50],83:[2,50],84:[2,50],85:[2,50]},{33:[2,90],61:70,65:[2,90],72:[2,90],80:[2,90],81:[2,90],82:[2,90],83:[2,90],84:[2,90],85:[2,90]},{20:74,33:[2,80],50:71,63:72,64:75,65:[1,43],69:73,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{72:[1,79]},{23:[2,42],33:[2,42],54:[2,42],65:[2,42],68:[2,42],72:[2,42],75:[2,42],80:[2,42],81:[2,42],82:[2,42],83:[2,42],84:[2,42],85:[2,42],87:[1,50]},{20:74,53:80,54:[2,84],63:81,64:75,65:[1,43],69:82,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:83,47:[1,66]},{47:[2,55]},{4:84,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{47:[2,20]},{20:85,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:86,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{26:87,47:[1,66]},{47:[2,57]},{5:[2,11],14:[2,11],15:[2,11],19:[2,11],29:[2,11],34:[2,11],39:[2,11],44:[2,11],47:[2,11],48:[2,11],51:[2,11],55:[2,11],60:[2,11]},{15:[2,49],18:[2,49]},{20:74,33:[2,88],58:88,63:89,64:75,65:[1,43],69:90,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{65:[2,94],66:91,68:[2,94],72:[2,94],80:[2,94],81:[2,94],82:[2,94],83:[2,94],84:[2,94],85:[2,94]},{5:[2,25],14:[2,25],15:[2,25],19:[2,25],29:[2,25],34:[2,25],39:[2,25],44:[2,25],47:[2,25],48:[2,25],51:[2,25],55:[2,25],60:[2,25]},{20:92,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,31:93,33:[2,60],63:94,64:75,65:[1,43],69:95,70:76,71:77,72:[1,78],75:[2,60],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,66],36:96,63:97,64:75,65:[1,43],69:98,70:76,71:77,72:[1,78],75:[2,66],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,22:99,23:[2,52],63:100,64:75,65:[1,43],69:101,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,92],62:102,63:103,64:75,65:[1,43],69:104,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,105]},{33:[2,79],65:[2,79],72:[2,79],80:[2,79],81:[2,79],82:[2,79],83:[2,79],84:[2,79],85:[2,79]},{33:[2,81]},{23:[2,27],33:[2,27],54:[2,27],65:[2,27],68:[2,27],72:[2,27],75:[2,27],80:[2,27],81:[2,27],82:[2,27],83:[2,27],84:[2,27],85:[2,27]},{23:[2,28],33:[2,28],54:[2,28],65:[2,28],68:[2,28],72:[2,28],75:[2,28],80:[2,28],81:[2,28],82:[2,28],83:[2,28],84:[2,28],85:[2,28]},{23:[2,30],33:[2,30],54:[2,30],68:[2,30],71:106,72:[1,107],75:[2,30]},{23:[2,98],33:[2,98],54:[2,98],68:[2,98],72:[2,98],75:[2,98]},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],73:[1,108],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{23:[2,44],33:[2,44],54:[2,44],65:[2,44],68:[2,44],72:[2,44],75:[2,44],80:[2,44],81:[2,44],82:[2,44],83:[2,44],84:[2,44],85:[2,44],87:[2,44]},{54:[1,109]},{54:[2,83],65:[2,83],72:[2,83],80:[2,83],81:[2,83],82:[2,83],83:[2,83],84:[2,83],85:[2,83]},{54:[2,85]},{5:[2,13],14:[2,13],15:[2,13],19:[2,13],29:[2,13],34:[2,13],39:[2,13],44:[2,13],47:[2,13],48:[2,13],51:[2,13],55:[2,13],60:[2,13]},{38:55,39:[1,57],43:56,44:[1,58],45:111,46:110,47:[2,76]},{33:[2,70],40:112,65:[2,70],72:[2,70],75:[2,70],80:[2,70],81:[2,70],82:[2,70],83:[2,70],84:[2,70],85:[2,70]},{47:[2,18]},{5:[2,14],14:[2,14],15:[2,14],19:[2,14],29:[2,14],34:[2,14],39:[2,14],44:[2,14],47:[2,14],48:[2,14],51:[2,14],55:[2,14],60:[2,14]},{33:[1,113]},{33:[2,87],65:[2,87],72:[2,87],80:[2,87],81:[2,87],82:[2,87],83:[2,87],84:[2,87],85:[2,87]},{33:[2,89]},{20:74,63:115,64:75,65:[1,43],67:114,68:[2,96],69:116,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,117]},{32:118,33:[2,62],74:119,75:[1,120]},{33:[2,59],65:[2,59],72:[2,59],75:[2,59],80:[2,59],81:[2,59],82:[2,59],83:[2,59],84:[2,59],85:[2,59]},{33:[2,61],75:[2,61]},{33:[2,68],37:121,74:122,75:[1,120]},{33:[2,65],65:[2,65],72:[2,65],75:[2,65],80:[2,65],81:[2,65],82:[2,65],83:[2,65],84:[2,65],85:[2,65]},{33:[2,67],75:[2,67]},{23:[1,123]},{23:[2,51],65:[2,51],72:[2,51],80:[2,51],81:[2,51],82:[2,51],83:[2,51],84:[2,51],85:[2,51]},{23:[2,53]},{33:[1,124]},{33:[2,91],65:[2,91],72:[2,91],80:[2,91],81:[2,91],82:[2,91],83:[2,91],84:[2,91],85:[2,91]},{33:[2,93]},{5:[2,22],14:[2,22],15:[2,22],19:[2,22],29:[2,22],34:[2,22],39:[2,22],44:[2,22],47:[2,22],48:[2,22],51:[2,22],55:[2,22],60:[2,22]},{23:[2,99],33:[2,99],54:[2,99],68:[2,99],72:[2,99],75:[2,99]},{73:[1,108]},{20:74,63:125,64:75,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,23],14:[2,23],15:[2,23],19:[2,23],29:[2,23],34:[2,23],39:[2,23],44:[2,23],47:[2,23],48:[2,23],51:[2,23],55:[2,23],60:[2,23]},{47:[2,19]},{47:[2,77]},{20:74,33:[2,72],41:126,63:127,64:75,65:[1,43],69:128,70:76,71:77,72:[1,78],75:[2,72],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,24],14:[2,24],15:[2,24],19:[2,24],29:[2,24],34:[2,24],39:[2,24],44:[2,24],47:[2,24],48:[2,24],51:[2,24],55:[2,24],60:[2,24]},{68:[1,129]},{65:[2,95],68:[2,95],72:[2,95],80:[2,95],81:[2,95],82:[2,95],83:[2,95],84:[2,95],85:[2,95]},{68:[2,97]},{5:[2,21],14:[2,21],15:[2,21],19:[2,21],29:[2,21],34:[2,21],39:[2,21],44:[2,21],47:[2,21],48:[2,21],51:[2,21],55:[2,21],60:[2,21]},{33:[1,130]},{33:[2,63]},{72:[1,132],76:131},{33:[1,133]},{33:[2,69]},{15:[2,12],18:[2,12]},{14:[2,26],15:[2,26],19:[2,26],29:[2,26],34:[2,26],47:[2,26],48:[2,26],51:[2,26],55:[2,26],60:[2,26]},{23:[2,31],33:[2,31],54:[2,31],68:[2,31],72:[2,31],75:[2,31]},{33:[2,74],42:134,74:135,75:[1,120]},{33:[2,71],65:[2,71],72:[2,71],75:[2,71],80:[2,71],81:[2,71],82:[2,71],83:[2,71],84:[2,71],85:[2,71]},{33:[2,73],75:[2,73]},{23:[2,29],33:[2,29],54:[2,29],65:[2,29],68:[2,29],72:[2,29],75:[2,29],80:[2,29],81:[2,29],82:[2,29],83:[2,29],84:[2,29],85:[2,29]},{14:[2,15],15:[2,15],19:[2,15],29:[2,15],34:[2,15],39:[2,15],44:[2,15],47:[2,15],48:[2,15],51:[2,15],55:[2,15],60:[2,15]},{72:[1,137],77:[1,136]},{72:[2,100],77:[2,100]},{14:[2,16],15:[2,16],19:[2,16],29:[2,16],34:[2,16],44:[2,16],47:[2,16],48:[2,16],51:[2,16],55:[2,16],60:[2,16]},{33:[1,138]},{33:[2,75]},{33:[2,32]},{72:[2,101],77:[2,101]},{14:[2,17],15:[2,17],19:[2,17],29:[2,17],34:[2,17],39:[2,17],44:[2,17],47:[2,17],48:[2,17],51:[2,17],55:[2,17],60:[2,17]}],defaultActions:{4:[2,1],54:[2,55],56:[2,20],60:[2,57],73:[2,81],82:[2,85],86:[2,18],90:[2,89],101:[2,53],104:[2,93],110:[2,19],111:[2,77],116:[2,97],119:[2,63],122:[2,69],135:[2,75],136:[2,32]},parseError:function(a,o){throw new Error(a)},parse:function(a){var o=this,g=[0],p=[null],f=[],m=this.table,y="",B=0,v=0,k=0,T=2,O=1;this.lexer.setInput(a),this.lexer.yy=this.yy,this.yy.lexer=this.lexer,this.yy.parser=this,typeof this.lexer.yylloc>"u"&&(this.lexer.yylloc={});var X=this.lexer.yylloc;f.push(X);var U=this.lexer.options&&this.lexer.options.ranges;typeof this.yy.parseError=="function"&&(this.parseError=this.yy.parseError);function le(ft){g.length=g.length-2*ft,p.length=p.length-ft,f.length=f.length-ft}function ae(){var ft;return ft=o.lexer.lex()||1,typeof ft!="number"&&(ft=o.symbols_[ft]||ft),ft}for(var ge,fe,pe,he,be,Te,ke={},x,et,Ue,Je;;){if(pe=g[g.length-1],this.defaultActions[pe]?he=this.defaultActions[pe]:((ge===null||typeof ge>"u")&&(ge=ae()),he=m[pe]&&m[pe][ge]),typeof he>"u"||!he.length||!he[0]){var Xe="";if(!k){Je=[];for(x in m[pe])this.terminals_[x]&&x>2&&Je.push("'"+this.terminals_[x]+"'");this.lexer.showPosition?Xe="Parse error on line "+(B+1)+`: `+this.lexer.showPosition()+` -Expecting `+Je.join(", ")+", got '"+(this.terminals_[ge]||ge)+"'":Xe="Parse error on line "+(B+1)+": Unexpected "+(ge==1?"end of input":"'"+(this.terminals_[ge]||ge)+"'"),this.parseError(Xe,{text:this.lexer.match,token:this.terminals_[ge]||ge,line:this.lexer.yylineno,loc:X,expected:Je})}}if(he[0]instanceof Array&&he.length>1)throw new Error("Parse Error: multiple actions possible at state: "+pe+", token: "+ge);switch(he[0]){case 1:g.push(ge),p.push(this.lexer.yytext),f.push(this.lexer.yylloc),g.push(he[1]),ge=null,fe?(ge=fe,fe=null):(v=this.lexer.yyleng,y=this.lexer.yytext,B=this.lexer.yylineno,X=this.lexer.yylloc,G>0&&G--);break;case 2:if(et=this.productions_[he[1]][1],ke.$=p[p.length-et],ke._$={first_line:f[f.length-(et||1)].first_line,last_line:f[f.length-1].last_line,first_column:f[f.length-(et||1)].first_column,last_column:f[f.length-1].last_column},U&&(ke._$.range=[f[f.length-(et||1)].range[0],f[f.length-1].range[1]]),Te=this.performAction.call(ke,y,v,B,this.yy,he[1],p,f),typeof Te<"u")return Te;et&&(g=g.slice(0,-1*et*2),p=p.slice(0,-1*et),f=f.slice(0,-1*et)),g.push(this.productions_[he[1]][0]),p.push(ke.$),f.push(ke._$),Ue=m[g[g.length-2]][g[g.length-1]],g.push(Ue);break;case 3:return!0}}return!0}},t=function(){var s={EOF:1,parseError:function(o,g){if(this.yy.parser)this.yy.parser.parseError(o,g);else throw new Error(o)},setInput:function(o){return this._input=o,this._more=this._less=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},input:function(){var o=this._input[0];this.yytext+=o,this.yyleng++,this.offset++,this.match+=o,this.matched+=o;var g=o.match(/(?:\r\n?|\n).*/g);return g?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),o},unput:function(o){var g=o.length,p=o.split(/(?:\r\n?|\n)/g);this._input=o+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-g-1),this.offset-=g;var f=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),p.length-1&&(this.yylineno-=p.length-1);var m=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:p?(p.length===f.length?this.yylloc.first_column:0)+f[f.length-p.length].length-p[0].length:this.yylloc.first_column-g},this.options.ranges&&(this.yylloc.range=[m[0],m[0]+this.yyleng-g]),this},more:function(){return this._more=!0,this},less:function(o){this.unput(this.match.slice(o))},pastInput:function(){var o=this.matched.substr(0,this.matched.length-this.match.length);return(o.length>20?"...":"")+o.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var o=this.match;return o.length<20&&(o+=this._input.substr(0,20-o.length)),(o.substr(0,20)+(o.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var o=this.pastInput(),g=new Array(o.length+1).join("-");return o+this.upcomingInput()+` +Expecting `+Je.join(", ")+", got '"+(this.terminals_[ge]||ge)+"'":Xe="Parse error on line "+(B+1)+": Unexpected "+(ge==1?"end of input":"'"+(this.terminals_[ge]||ge)+"'"),this.parseError(Xe,{text:this.lexer.match,token:this.terminals_[ge]||ge,line:this.lexer.yylineno,loc:X,expected:Je})}}if(he[0]instanceof Array&&he.length>1)throw new Error("Parse Error: multiple actions possible at state: "+pe+", token: "+ge);switch(he[0]){case 1:g.push(ge),p.push(this.lexer.yytext),f.push(this.lexer.yylloc),g.push(he[1]),ge=null,fe?(ge=fe,fe=null):(v=this.lexer.yyleng,y=this.lexer.yytext,B=this.lexer.yylineno,X=this.lexer.yylloc,k>0&&k--);break;case 2:if(et=this.productions_[he[1]][1],ke.$=p[p.length-et],ke._$={first_line:f[f.length-(et||1)].first_line,last_line:f[f.length-1].last_line,first_column:f[f.length-(et||1)].first_column,last_column:f[f.length-1].last_column},U&&(ke._$.range=[f[f.length-(et||1)].range[0],f[f.length-1].range[1]]),Te=this.performAction.call(ke,y,v,B,this.yy,he[1],p,f),typeof Te<"u")return Te;et&&(g=g.slice(0,-1*et*2),p=p.slice(0,-1*et),f=f.slice(0,-1*et)),g.push(this.productions_[he[1]][0]),p.push(ke.$),f.push(ke._$),Ue=m[g[g.length-2]][g[g.length-1]],g.push(Ue);break;case 3:return!0}}return!0}},t=function(){var s={EOF:1,parseError:function(o,g){if(this.yy.parser)this.yy.parser.parseError(o,g);else throw new Error(o)},setInput:function(o){return this._input=o,this._more=this._less=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},input:function(){var o=this._input[0];this.yytext+=o,this.yyleng++,this.offset++,this.match+=o,this.matched+=o;var g=o.match(/(?:\r\n?|\n).*/g);return g?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),o},unput:function(o){var g=o.length,p=o.split(/(?:\r\n?|\n)/g);this._input=o+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-g-1),this.offset-=g;var f=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),p.length-1&&(this.yylineno-=p.length-1);var m=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:p?(p.length===f.length?this.yylloc.first_column:0)+f[f.length-p.length].length-p[0].length:this.yylloc.first_column-g},this.options.ranges&&(this.yylloc.range=[m[0],m[0]+this.yyleng-g]),this},more:function(){return this._more=!0,this},less:function(o){this.unput(this.match.slice(o))},pastInput:function(){var o=this.matched.substr(0,this.matched.length-this.match.length);return(o.length>20?"...":"")+o.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var o=this.match;return o.length<20&&(o+=this._input.substr(0,20-o.length)),(o.substr(0,20)+(o.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var o=this.pastInput(),g=new Array(o.length+1).join("-");return o+this.upcomingInput()+` `+g+"^"},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var o,g,p,f,m,y;this._more||(this.yytext="",this.match="");for(var B=this._currentRules(),v=0;vg[0].length)&&(g=p,f=v,!this.options.flex)));v++);return g?(y=g[0].match(/(?:\r\n?|\n).*/g),y&&(this.yylineno+=y.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:y?y[y.length-1].length-y[y.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+g[0].length},this.yytext+=g[0],this.match+=g[0],this.matches=g,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._input=this._input.slice(g[0].length),this.matched+=g[0],o=this.performAction.call(this,this.yy,this,B[f],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),o||void 0):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var o=this.next();return typeof o<"u"?o:this.lex()},begin:function(o){this.conditionStack.push(o)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(o){this.begin(o)}};return s.options={},s.performAction=function(o,g,p,f){function m(B,v){return g.yytext=g.yytext.substring(B,g.yyleng-v+B)}var y=f;switch(p){case 0:if(g.yytext.slice(-2)==="\\\\"?(m(0,1),this.begin("mu")):g.yytext.slice(-1)==="\\"?(m(0,1),this.begin("emu")):this.begin("mu"),g.yytext)return 15;break;case 1:return 15;case 2:return this.popState(),15;break;case 3:return this.begin("raw"),15;break;case 4:return this.popState(),this.conditionStack[this.conditionStack.length-1]==="raw"?15:(m(5,9),"END_RAW_BLOCK");case 5:return 15;case 6:return this.popState(),14;break;case 7:return 65;case 8:return 68;case 9:return 19;case 10:return this.popState(),this.begin("raw"),23;break;case 11:return 55;case 12:return 60;case 13:return 29;case 14:return 47;case 15:return this.popState(),44;break;case 16:return this.popState(),44;break;case 17:return 34;case 18:return 39;case 19:return 51;case 20:return 48;case 21:this.unput(g.yytext),this.popState(),this.begin("com");break;case 22:return this.popState(),14;break;case 23:return 48;case 24:return 73;case 25:return 72;case 26:return 72;case 27:return 87;case 28:break;case 29:return this.popState(),54;break;case 30:return this.popState(),33;break;case 31:return g.yytext=m(1,2).replace(/\\"/g,'"'),80;break;case 32:return g.yytext=m(1,2).replace(/\\'/g,"'"),80;break;case 33:return 85;case 34:return 82;case 35:return 82;case 36:return 83;case 37:return 84;case 38:return 81;case 39:return 75;case 40:return 77;case 41:return 72;case 42:return g.yytext=g.yytext.replace(/\\([\\\]])/g,"$1"),72;break;case 43:return"INVALID";case 44:return 5}},s.rules=[/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|\\\{\{|\\\\\{\{|$)))/,/^(?:\{\{\{\{(?=[^/]))/,/^(?:\{\{\{\{\/[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.])\}\}\}\})/,/^(?:[^\x00]+?(?=(\{\{\{\{)))/,/^(?:[\s\S]*?--(~)?\}\})/,/^(?:\()/,/^(?:\))/,/^(?:\{\{\{\{)/,/^(?:\}\}\}\})/,/^(?:\{\{(~)?>)/,/^(?:\{\{(~)?#>)/,/^(?:\{\{(~)?#\*?)/,/^(?:\{\{(~)?\/)/,/^(?:\{\{(~)?\^\s*(~)?\}\})/,/^(?:\{\{(~)?\s*else\s*(~)?\}\})/,/^(?:\{\{(~)?\^)/,/^(?:\{\{(~)?\s*else\b)/,/^(?:\{\{(~)?\{)/,/^(?:\{\{(~)?&)/,/^(?:\{\{(~)?!--)/,/^(?:\{\{(~)?![\s\S]*?\}\})/,/^(?:\{\{(~)?\*?)/,/^(?:=)/,/^(?:\.\.)/,/^(?:\.(?=([=~}\s\/.)|])))/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}(~)?\}\})/,/^(?:(~)?\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=([~}\s)])))/,/^(?:false(?=([~}\s)])))/,/^(?:undefined(?=([~}\s)])))/,/^(?:null(?=([~}\s)])))/,/^(?:-?[0-9]+(?:\.[0-9]+)?(?=([~}\s)])))/,/^(?:as\s+\|)/,/^(?:\|)/,/^(?:([^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=([=~}\s\/.)|]))))/,/^(?:\[(\\\]|[^\]])*\])/,/^(?:.)/,/^(?:$)/],s.conditions={mu:{rules:[7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44],inclusive:!1},emu:{rules:[2],inclusive:!1},com:{rules:[6],inclusive:!1},raw:{rules:[3,4,5],inclusive:!1},INITIAL:{rules:[0,1,44],inclusive:!0}},s}();e.lexer=t;function r(){this.yy={}}return r.prototype=e,e.Parser=r,new r}();Cat.default=aqs;__n.exports=Cat.default});var yat=z((_at,B_n)=>{"use strict";_at.__esModule=!0;function cqs(e){return e&&e.__esModule?e:{default:e}}var lqs=FO(),j8t=cqs(lqs);function mat(){this.parents=[]}mat.prototype={constructor:mat,mutating:!1,acceptKey:function(t,r){var s=this.accept(t[r]);if(this.mutating){if(s&&!mat.prototype[s.type])throw new j8t.default('Unexpected node type "'+s.type+'" found when accepting '+r+" on "+t.type);t[r]=s}},acceptRequired:function(t,r){if(this.acceptKey(t,r),!t[r])throw new j8t.default(t.type+" requires "+r)},acceptArray:function(t){for(var r=0,s=t.length;r{"use strict";bat.__esModule=!0;function uqs(e){return e&&e.__esModule?e:{default:e}}var gqs=yat(),Aqs=uqs(gqs);function YJ(){var e=arguments.length<=0||arguments[0]===void 0?{}:arguments[0];this.options=e}YJ.prototype=new Aqs.default;YJ.prototype.Program=function(e){var t=!this.options.ignoreStandalone,r=!this.isRootSeen;this.isRootSeen=!0;for(var s=e.body,a=0,o=s.length;a{"use strict";ZO.__esModule=!0;ZO.SourceLocation=fqs;ZO.id=Iqs;ZO.stripFlags=Cqs;ZO.stripComment=mqs;ZO.preparePath=hqs;ZO.prepareMustache=_qs;ZO.prepareRawBlock=yqs;ZO.prepareBlock=bqs;ZO.prepareProgram=Eqs;ZO.preparePartialBlock=Bqs;function dqs(e){return e&&e.__esModule?e:{default:e}}var pqs=FO(),$8t=dqs(pqs);function e6t(e,t){if(t=t.path?t.path.original:t,e.path.original!==t){var r={loc:e.path.loc};throw new $8t.default(e.path.original+" doesn't match "+t,r)}}function fqs(e,t){this.source=e,this.start={line:t.first_line,column:t.first_column},this.end={line:t.last_line,column:t.last_column}}function Iqs(e){return/^\[.*\]$/.test(e)?e.substring(1,e.length-1):e}function Cqs(e,t){return{open:e.charAt(2)==="~",close:t.charAt(t.length-3)==="~"}}function mqs(e){return e.replace(/^\{\{~?!-?-?/,"").replace(/-?-?~?\}\}$/,"")}function hqs(e,t,r){r=this.locInfo(r);for(var s=e?"@":"",a=[],o=0,g=0,p=t.length;g0)throw new $8t.default("Invalid path: "+s,{loc:r});f===".."&&o++}else a.push(f)}return{type:"PathExpression",data:e,depth:o,parts:a,original:s,loc:r}}function _qs(e,t,r,s,a,o){var g=s.charAt(3)||s.charAt(2),p=g!=="{"&&g!=="&",f=/\*/.test(s);return{type:f?"Decorator":"MustacheStatement",path:e,params:t,hash:r,escaped:p,strip:a,loc:this.locInfo(o)}}function yqs(e,t,r,s){e6t(e,r),s=this.locInfo(s);var a={type:"Program",body:t,strip:{},loc:s};return{type:"BlockStatement",path:e.path,params:e.params,hash:e.hash,program:a,openStrip:{},inverseStrip:{},closeStrip:{},loc:s}}function bqs(e,t,r,s,a,o){s&&s.path&&e6t(e,s);var g=/\*/.test(e.open);t.blockParams=e.blockParams;var p=void 0,f=void 0;if(r){if(g)throw new $8t.default("Unexpected inverse block on decorator",r);r.chain&&(r.program.body[0].closeStrip=s.strip),f=r.strip,p=r.program}return a&&(a=p,p=t,t=a),{type:g?"DecoratorBlock":"BlockStatement",path:e.path,params:e.params,hash:e.hash,program:t,inverse:p,openStrip:e.strip,inverseStrip:f,closeStrip:s&&s.strip,loc:this.locInfo(o)}}function Eqs(e,t){if(!t&&e.length){var r=e[0].loc,s=e[e.length-1].loc;r&&s&&(t={source:r.source,start:{line:r.start.line,column:r.start.column},end:{line:s.end.line,column:s.end.column}})}return{type:"Program",body:e,strip:{},loc:t}}function Bqs(e,t,r,s){return e6t(e,r),{type:"PartialBlockStatement",name:e.path,params:e.params,hash:e.hash,program:t,openStrip:e.strip,closeStrip:r&&r.strip,loc:this.locInfo(s)}}});var R_n=z(gWe=>{"use strict";gWe.__esModule=!0;gWe.parseWithoutProcessing=N_n;gWe.parse=xqs;function vqs(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}function T_n(e){return e&&e.__esModule?e:{default:e}}var Sqs=y_n(),t6t=T_n(Sqs),wqs=S_n(),Tqs=T_n(wqs),Nqs=w_n(),Rqs=vqs(Nqs),Dqs=EF();gWe.parser=t6t.default;var Eat={};Dqs.extend(Eat,Rqs);function N_n(e,t){if(e.type==="Program")return e;t6t.default.yy=Eat,Eat.locInfo=function(s){return new Eat.SourceLocation(t&&t.srcName,s)};var r=t6t.default.parse(e);return r}function xqs(e,t){var r=N_n(e,t),s=new Tqs.default(t);return s.accept(r)}});var G_n=z(fWe=>{"use strict";fWe.__esModule=!0;fWe.Compiler=r6t;fWe.precompile=Zqs;fWe.compile=Lqs;function x_n(e){return e&&e.__esModule?e:{default:e}}var kqs=FO(),dWe=x_n(kqs),pWe=EF(),Gqs=K8t(),AWe=x_n(Gqs),Fqs=[].slice;function r6t(){}r6t.prototype={compiler:r6t,equals:function(t){var r=this.opcodes.length;if(t.opcodes.length!==r)return!1;for(var s=0;s1)throw new dWe.default("Unsupported number of partial arguments: "+s.length,t);s.length||(this.options.explicitPartialContext?this.opcode("pushLiteral","undefined"):s.push({type:"PathExpression",parts:[],depth:0}));var a=t.name.original,o=t.name.type==="SubExpression";o&&this.accept(t.name),this.setupFullMustacheParams(t,r,void 0,!0);var g=t.indent||"";this.options.preventIndent&&g&&(this.opcode("appendContent",g),g=""),this.opcode("invokePartial",o,a,g),this.opcode("append")},PartialBlockStatement:function(t){this.PartialStatement(t)},MustacheStatement:function(t){this.SubExpression(t),t.escaped&&!this.options.noEscape?this.opcode("appendEscaped"):this.opcode("append")},Decorator:function(t){this.DecoratorBlock(t)},ContentStatement:function(t){t.value&&this.opcode("appendContent",t.value)},CommentStatement:function(){},SubExpression:function(t){D_n(t);var r=this.classifySexpr(t);r==="simple"?this.simpleSexpr(t):r==="helper"?this.helperSexpr(t):this.ambiguousSexpr(t)},ambiguousSexpr:function(t,r,s){var a=t.path,o=a.parts[0],g=r!=null||s!=null;this.opcode("getContext",a.depth),this.opcode("pushProgram",r),this.opcode("pushProgram",s),a.strict=!0,this.accept(a),this.opcode("invokeAmbiguous",o,g)},simpleSexpr:function(t){var r=t.path;r.strict=!0,this.accept(r),this.opcode("resolvePossibleLambda")},helperSexpr:function(t,r,s){var a=this.setupFullMustacheParams(t,r,s),o=t.path,g=o.parts[0];if(this.options.knownHelpers[g])this.opcode("invokeKnownHelper",a.length,g);else{if(this.options.knownHelpersOnly)throw new dWe.default("You specified knownHelpersOnly, but used the unknown helper "+g,t);o.strict=!0,o.falsy=!0,this.accept(o),this.opcode("invokeHelper",a.length,o.original,AWe.default.helpers.simpleId(o))}},PathExpression:function(t){this.addDepth(t.depth),this.opcode("getContext",t.depth);var r=t.parts[0],s=AWe.default.helpers.scopedId(t),a=!t.depth&&!s&&this.blockParamIndex(r);a?this.opcode("lookupBlockParam",a,t.parts):r?t.data?(this.options.data=!0,this.opcode("lookupData",t.depth,t.parts,t.strict)):this.opcode("lookupOnContext",t.parts,t.falsy,t.strict,s):this.opcode("pushContext")},StringLiteral:function(t){this.opcode("pushString",t.value)},NumberLiteral:function(t){this.opcode("pushLiteral",t.value)},BooleanLiteral:function(t){this.opcode("pushLiteral",t.value)},UndefinedLiteral:function(){this.opcode("pushLiteral","undefined")},NullLiteral:function(){this.opcode("pushLiteral","null")},Hash:function(t){var r=t.pairs,s=0,a=r.length;for(this.opcode("pushHash");s=0)return[r,o]}}};function Zqs(e,t,r){if(e==null||typeof e!="string"&&e.type!=="Program")throw new dWe.default("You must pass a string or Handlebars AST to Handlebars.precompile. You passed "+e);t=t||{},"data"in t||(t.data=!0),t.compat&&(t.useDepths=!0);var s=r.parse(e,t),a=new r.Compiler().compile(s,t);return new r.JavaScriptCompiler().compile(a,t)}function Lqs(e,t,r){if(t===void 0&&(t={}),e==null||typeof e!="string"&&e.type!=="Program")throw new dWe.default("You must pass a string or Handlebars AST to Handlebars.compile. You passed "+e);t=pWe.extend({},t),"data"in t||(t.data=!0),t.compat&&(t.useDepths=!0);var s=void 0;function a(){var g=r.parse(e,t),p=new r.Compiler().compile(g,t),f=new r.JavaScriptCompiler().compile(p,t,void 0,!0);return r.template(f)}function o(g,p){return s||(s=a()),s.call(this,g,p)}return o._setup=function(g){return s||(s=a()),s._setup(g)},o._child=function(g,p,f,m){return s||(s=a()),s._child(g,p,f,m)},o}function k_n(e,t){if(e===t)return!0;if(pWe.isArray(e)&&pWe.isArray(t)&&e.length===t.length){for(var r=0;r{var F_n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");n6t.encode=function(e){if(0<=e&&e{var L_n=Z_n(),i6t=5,V_n=1<>1;return t?-r:r}s6t.encode=function(t){var r="",s,a=Vqs(t);do s=a&W_n,a>>>=i6t,a>0&&(s|=P_n),r+=L_n.encode(s);while(a>0);return r};s6t.decode=function(t,r,s){var a=t.length,o=0,g=0,p,f;do{if(r>=a)throw new Error("Expected more digits in base 64 VLQ value.");if(f=L_n.decode(t.charCodeAt(r++)),f===-1)throw new Error("Invalid base64 digit: "+t.charAt(r-1));p=!!(f&P_n),f&=W_n,o=o+(f<{function Pqs(e,t,r){if(t in e)return e[t];if(arguments.length===3)return r;throw new Error('"'+t+'" is a required argument.')}Ik.getArg=Pqs;var O_n=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,Oqs=/^data:.+\,.+$/;function IWe(e){var t=e.match(O_n);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}Ik.urlParse=IWe;function kEe(e){var t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}Ik.urlGenerate=kEe;function a6t(e){var t=e,r=IWe(e);if(r){if(!r.path)return e;t=r.path}for(var s=Ik.isAbsolute(t),a=t.split(/\/+/),o,g=0,p=a.length-1;p>=0;p--)o=a[p],o==="."?a.splice(p,1):o===".."?g++:g>0&&(o===""?(a.splice(p+1,g),g=0):(a.splice(p,2),g--));return t=a.join("/"),t===""&&(t=s?"/":"."),r?(r.path=t,kEe(r)):t}Ik.normalize=a6t;function M_n(e,t){e===""&&(e="."),t===""&&(t=".");var r=IWe(t),s=IWe(e);if(s&&(e=s.path||"/"),r&&!r.scheme)return s&&(r.scheme=s.scheme),kEe(r);if(r||t.match(Oqs))return t;if(s&&!s.host&&!s.path)return s.host=t,kEe(s);var a=t.charAt(0)==="/"?t:a6t(e.replace(/\/+$/,"")+"/"+t);return s?(s.path=a,kEe(s)):a}Ik.join=M_n;Ik.isAbsolute=function(e){return e.charAt(0)==="/"||O_n.test(e)};function Mqs(e,t){e===""&&(e="."),e=e.replace(/\/$/,"");for(var r=0;t.indexOf(e+"/")!==0;){var s=e.lastIndexOf("/");if(s<0||(e=e.slice(0,s),e.match(/^([^\/]+:\/)?\/*$/)))return t;++r}return Array(r+1).join("../")+t.substr(e.length+1)}Ik.relative=Mqs;var Q_n=function(){var e=Object.create(null);return!("__proto__"in e)}();function Y_n(e){return e}function Qqs(e){return H_n(e)?"$"+e:e}Ik.toSetString=Q_n?Y_n:Qqs;function Yqs(e){return H_n(e)?e.slice(1):e}Ik.fromSetString=Q_n?Y_n:Yqs;function H_n(e){if(!e)return!1;var t=e.length;if(t<9||e.charCodeAt(t-1)!==95||e.charCodeAt(t-2)!==95||e.charCodeAt(t-3)!==111||e.charCodeAt(t-4)!==116||e.charCodeAt(t-5)!==111||e.charCodeAt(t-6)!==114||e.charCodeAt(t-7)!==112||e.charCodeAt(t-8)!==95||e.charCodeAt(t-9)!==95)return!1;for(var r=t-10;r>=0;r--)if(e.charCodeAt(r)!==36)return!1;return!0}function Hqs(e,t,r){var s=GEe(e.source,t.source);return s!==0||(s=e.originalLine-t.originalLine,s!==0)||(s=e.originalColumn-t.originalColumn,s!==0||r)||(s=e.generatedColumn-t.generatedColumn,s!==0)||(s=e.generatedLine-t.generatedLine,s!==0)?s:GEe(e.name,t.name)}Ik.compareByOriginalPositions=Hqs;function Xqs(e,t,r){var s=e.generatedLine-t.generatedLine;return s!==0||(s=e.generatedColumn-t.generatedColumn,s!==0||r)||(s=GEe(e.source,t.source),s!==0)||(s=e.originalLine-t.originalLine,s!==0)||(s=e.originalColumn-t.originalColumn,s!==0)?s:GEe(e.name,t.name)}Ik.compareByGeneratedPositionsDeflated=Xqs;function GEe(e,t){return e===t?0:e===null?1:t===null?-1:e>t?1:-1}function Jqs(e,t){var r=e.generatedLine-t.generatedLine;return r!==0||(r=e.generatedColumn-t.generatedColumn,r!==0)||(r=GEe(e.source,t.source),r!==0)||(r=e.originalLine-t.originalLine,r!==0)||(r=e.originalColumn-t.originalColumn,r!==0)?r:GEe(e.name,t.name)}Ik.compareByGeneratedPositionsInflated=Jqs;function Uqs(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))}Ik.parseSourceMapInput=Uqs;function Kqs(e,t,r){if(t=t||"",e&&(e[e.length-1]!=="/"&&t[0]!=="/"&&(e+="/"),t=e+t),r){var s=IWe(r);if(!s)throw new Error("sourceMapURL could not be parsed");if(s.path){var a=s.path.lastIndexOf("/");a>=0&&(s.path=s.path.substring(0,a+1))}t=M_n(kEe(s),t)}return a6t(t)}Ik.computeSourceURL=Kqs});var u6t=z(X_n=>{var c6t=FEe(),l6t=Object.prototype.hasOwnProperty,HAe=typeof Map<"u";function Rj(){this._array=[],this._set=HAe?new Map:Object.create(null)}Rj.fromArray=function(t,r){for(var s=new Rj,a=0,o=t.length;a=0)return r}else{var s=c6t.toSetString(t);if(l6t.call(this._set,s))return this._set[s]}throw new Error('"'+t+'" is not in the set.')};Rj.prototype.at=function(t){if(t>=0&&t{var J_n=FEe();function jqs(e,t){var r=e.generatedLine,s=t.generatedLine,a=e.generatedColumn,o=t.generatedColumn;return s>r||s==r&&o>=a||J_n.compareByGeneratedPositionsInflated(e,t)<=0}function Bat(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}Bat.prototype.unsortedForEach=function(t,r){this._array.forEach(t,r)};Bat.prototype.add=function(t){jqs(this._last,t)?(this._last=t,this._array.push(t)):(this._sorted=!1,this._array.push(t))};Bat.prototype.toArray=function(){return this._sorted||(this._array.sort(J_n.compareByGeneratedPositionsInflated),this._sorted=!0),this._array};U_n.MappingList=Bat});var g6t=z(j_n=>{var CWe=o6t(),Cw=FEe(),vat=u6t().ArraySet,zqs=K_n().MappingList;function LO(e){e||(e={}),this._file=Cw.getArg(e,"file",null),this._sourceRoot=Cw.getArg(e,"sourceRoot",null),this._skipValidation=Cw.getArg(e,"skipValidation",!1),this._sources=new vat,this._names=new vat,this._mappings=new zqs,this._sourcesContents=null}LO.prototype._version=3;LO.fromSourceMap=function(t){var r=t.sourceRoot,s=new LO({file:t.file,sourceRoot:r});return t.eachMapping(function(a){var o={generated:{line:a.generatedLine,column:a.generatedColumn}};a.source!=null&&(o.source=a.source,r!=null&&(o.source=Cw.relative(r,o.source)),o.original={line:a.originalLine,column:a.originalColumn},a.name!=null&&(o.name=a.name)),s.addMapping(o)}),t.sources.forEach(function(a){var o=a;r!==null&&(o=Cw.relative(r,a)),s._sources.has(o)||s._sources.add(o);var g=t.sourceContentFor(a);g!=null&&s.setSourceContent(a,g)}),s};LO.prototype.addMapping=function(t){var r=Cw.getArg(t,"generated"),s=Cw.getArg(t,"original",null),a=Cw.getArg(t,"source",null),o=Cw.getArg(t,"name",null);this._skipValidation||this._validateMapping(r,s,a,o),a!=null&&(a=String(a),this._sources.has(a)||this._sources.add(a)),o!=null&&(o=String(o),this._names.has(o)||this._names.add(o)),this._mappings.add({generatedLine:r.line,generatedColumn:r.column,originalLine:s!=null&&s.line,originalColumn:s!=null&&s.column,source:a,name:o})};LO.prototype.setSourceContent=function(t,r){var s=t;this._sourceRoot!=null&&(s=Cw.relative(this._sourceRoot,s)),r!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[Cw.toSetString(s)]=r):this._sourcesContents&&(delete this._sourcesContents[Cw.toSetString(s)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))};LO.prototype.applySourceMap=function(t,r,s){var a=r;if(r==null){if(t.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);a=t.file}var o=this._sourceRoot;o!=null&&(a=Cw.relative(o,a));var g=new vat,p=new vat;this._mappings.unsortedForEach(function(f){if(f.source===a&&f.originalLine!=null){var m=t.originalPositionFor({line:f.originalLine,column:f.originalColumn});m.source!=null&&(f.source=m.source,s!=null&&(f.source=Cw.join(s,f.source)),o!=null&&(f.source=Cw.relative(o,f.source)),f.originalLine=m.line,f.originalColumn=m.column,m.name!=null&&(f.name=m.name))}var y=f.source;y!=null&&!g.has(y)&&g.add(y);var B=f.name;B!=null&&!p.has(B)&&p.add(B)},this),this._sources=g,this._names=p,t.sources.forEach(function(f){var m=t.sourceContentFor(f);m!=null&&(s!=null&&(f=Cw.join(s,f)),o!=null&&(f=Cw.relative(o,f)),this.setSourceContent(f,m))},this)};LO.prototype._validateMapping=function(t,r,s,a){if(r&&typeof r.line!="number"&&typeof r.column!="number")throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(!(t&&"line"in t&&"column"in t&&t.line>0&&t.column>=0&&!r&&!s&&!a)){if(t&&"line"in t&&"column"in t&&r&&"line"in r&&"column"in r&&t.line>0&&t.column>=0&&r.line>0&&r.column>=0&&s)return;throw new Error("Invalid mapping: "+JSON.stringify({generated:t,source:s,original:r,name:a}))}};LO.prototype._serializeMappings=function(){for(var t=0,r=1,s=0,a=0,o=0,g=0,p="",f,m,y,B,v=this._mappings.toArray(),G=0,T=v.length;G0){if(!Cw.compareByGeneratedPositionsInflated(m,v[G-1]))continue;f+=","}f+=CWe.encode(m.generatedColumn-t),t=m.generatedColumn,m.source!=null&&(B=this._sources.indexOf(m.source),f+=CWe.encode(B-g),g=B,f+=CWe.encode(m.originalLine-1-a),a=m.originalLine-1,f+=CWe.encode(m.originalColumn-s),s=m.originalColumn,m.name!=null&&(y=this._names.indexOf(m.name),f+=CWe.encode(y-o),o=y)),p+=f}return p};LO.prototype._generateSourcesContent=function(t,r){return t.map(function(s){if(!this._sourcesContents)return null;r!=null&&(s=Cw.relative(r,s));var a=Cw.toSetString(s);return Object.prototype.hasOwnProperty.call(this._sourcesContents,a)?this._sourcesContents[a]:null},this)};LO.prototype.toJSON=function(){var t={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(t.file=this._file),this._sourceRoot!=null&&(t.sourceRoot=this._sourceRoot),this._sourcesContents&&(t.sourcesContent=this._generateSourcesContent(t.sources,t.sourceRoot)),t};LO.prototype.toString=function(){return JSON.stringify(this.toJSON())};j_n.SourceMapGenerator=LO});var z_n=z(XAe=>{XAe.GREATEST_LOWER_BOUND=1;XAe.LEAST_UPPER_BOUND=2;function A6t(e,t,r,s,a,o){var g=Math.floor((t-e)/2)+e,p=a(r,s[g],!0);return p===0?g:p>0?t-g>1?A6t(g,t,r,s,a,o):o==XAe.LEAST_UPPER_BOUND?t1?A6t(e,g,r,s,a,o):o==XAe.LEAST_UPPER_BOUND?g:e<0?-1:e}XAe.search=function(t,r,s,a){if(r.length===0)return-1;var o=A6t(-1,r.length,t,r,s,a||XAe.GREATEST_LOWER_BOUND);if(o<0)return-1;for(;o-1>=0&&s(r[o],r[o-1],!0)===0;)--o;return o}});var $_n=z(q_n=>{function d6t(e,t,r){var s=e[t];e[t]=e[r],e[r]=s}function qqs(e,t){return Math.round(e+Math.random()*(t-e))}function p6t(e,t,r,s){if(r{var QA=FEe(),f6t=z_n(),ZEe=u6t().ArraySet,$qs=o6t(),mWe=$_n().quickSort;function $E(e,t){var r=e;return typeof e=="string"&&(r=QA.parseSourceMapInput(e)),r.sections!=null?new wH(r,t):new ND(r,t)}$E.fromSourceMap=function(e,t){return ND.fromSourceMap(e,t)};$E.prototype._version=3;$E.prototype.__generatedMappings=null;Object.defineProperty($E.prototype,"_generatedMappings",{configurable:!0,enumerable:!0,get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}});$E.prototype.__originalMappings=null;Object.defineProperty($E.prototype,"_originalMappings",{configurable:!0,enumerable:!0,get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}});$E.prototype._charIsMappingSeparator=function(t,r){var s=t.charAt(r);return s===";"||s===","};$E.prototype._parseMappings=function(t,r){throw new Error("Subclasses must implement _parseMappings")};$E.GENERATED_ORDER=1;$E.ORIGINAL_ORDER=2;$E.GREATEST_LOWER_BOUND=1;$E.LEAST_UPPER_BOUND=2;$E.prototype.eachMapping=function(t,r,s){var a=r||null,o=s||$E.GENERATED_ORDER,g;switch(o){case $E.GENERATED_ORDER:g=this._generatedMappings;break;case $E.ORIGINAL_ORDER:g=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var p=this.sourceRoot;g.map(function(f){var m=f.source===null?null:this._sources.at(f.source);return m=QA.computeSourceURL(p,m,this._sourceMapURL),{source:m,generatedLine:f.generatedLine,generatedColumn:f.generatedColumn,originalLine:f.originalLine,originalColumn:f.originalColumn,name:f.name===null?null:this._names.at(f.name)}},this).forEach(t,a)};$E.prototype.allGeneratedPositionsFor=function(t){var r=QA.getArg(t,"line"),s={source:QA.getArg(t,"source"),originalLine:r,originalColumn:QA.getArg(t,"column",0)};if(s.source=this._findSourceIndex(s.source),s.source<0)return[];var a=[],o=this._findMapping(s,this._originalMappings,"originalLine","originalColumn",QA.compareByOriginalPositions,f6t.LEAST_UPPER_BOUND);if(o>=0){var g=this._originalMappings[o];if(t.column===void 0)for(var p=g.originalLine;g&&g.originalLine===p;)a.push({line:QA.getArg(g,"generatedLine",null),column:QA.getArg(g,"generatedColumn",null),lastColumn:QA.getArg(g,"lastGeneratedColumn",null)}),g=this._originalMappings[++o];else for(var f=g.originalColumn;g&&g.originalLine===r&&g.originalColumn==f;)a.push({line:QA.getArg(g,"generatedLine",null),column:QA.getArg(g,"generatedColumn",null),lastColumn:QA.getArg(g,"lastGeneratedColumn",null)}),g=this._originalMappings[++o]}return a};Sat.SourceMapConsumer=$E;function ND(e,t){var r=e;typeof e=="string"&&(r=QA.parseSourceMapInput(e));var s=QA.getArg(r,"version"),a=QA.getArg(r,"sources"),o=QA.getArg(r,"names",[]),g=QA.getArg(r,"sourceRoot",null),p=QA.getArg(r,"sourcesContent",null),f=QA.getArg(r,"mappings"),m=QA.getArg(r,"file",null);if(s!=this._version)throw new Error("Unsupported version: "+s);g&&(g=QA.normalize(g)),a=a.map(String).map(QA.normalize).map(function(y){return g&&QA.isAbsolute(g)&&QA.isAbsolute(y)?QA.relative(g,y):y}),this._names=ZEe.fromArray(o.map(String),!0),this._sources=ZEe.fromArray(a,!0),this._absoluteSources=this._sources.toArray().map(function(y){return QA.computeSourceURL(g,y,t)}),this.sourceRoot=g,this.sourcesContent=p,this._mappings=f,this._sourceMapURL=t,this.file=m}ND.prototype=Object.create($E.prototype);ND.prototype.consumer=$E;ND.prototype._findSourceIndex=function(e){var t=e;if(this.sourceRoot!=null&&(t=QA.relative(this.sourceRoot,t)),this._sources.has(t))return this._sources.indexOf(t);var r;for(r=0;r1&&(O.source=p+U[1],p+=U[1],O.originalLine=o+U[2],o=O.originalLine,O.originalLine+=1,O.originalColumn=g+U[3],g=O.originalColumn,U.length>4&&(O.name=f+U[4],f+=U[4])),T.push(O),typeof O.originalLine=="number"&&G.push(O)}mWe(T,QA.compareByGeneratedPositionsDeflated),this.__generatedMappings=T,mWe(G,QA.compareByOriginalPositions),this.__originalMappings=G};ND.prototype._findMapping=function(t,r,s,a,o,g){if(t[s]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+t[s]);if(t[a]<0)throw new TypeError("Column must be greater than or equal to 0, got "+t[a]);return f6t.search(t,r,o,g)};ND.prototype.computeColumnSpans=function(){for(var t=0;t=0){var a=this._generatedMappings[s];if(a.generatedLine===r.generatedLine){var o=QA.getArg(a,"source",null);o!==null&&(o=this._sources.at(o),o=QA.computeSourceURL(this.sourceRoot,o,this._sourceMapURL));var g=QA.getArg(a,"name",null);return g!==null&&(g=this._names.at(g)),{source:o,line:QA.getArg(a,"originalLine",null),column:QA.getArg(a,"originalColumn",null),name:g}}}return{source:null,line:null,column:null,name:null}};ND.prototype.hasContentsOfAllSources=function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(t){return t==null}):!1};ND.prototype.sourceContentFor=function(t,r){if(!this.sourcesContent)return null;var s=this._findSourceIndex(t);if(s>=0)return this.sourcesContent[s];var a=t;this.sourceRoot!=null&&(a=QA.relative(this.sourceRoot,a));var o;if(this.sourceRoot!=null&&(o=QA.urlParse(this.sourceRoot))){var g=a.replace(/^file:\/\//,"");if(o.scheme=="file"&&this._sources.has(g))return this.sourcesContent[this._sources.indexOf(g)];if((!o.path||o.path=="/")&&this._sources.has("/"+a))return this.sourcesContent[this._sources.indexOf("/"+a)]}if(r)return null;throw new Error('"'+a+'" is not in the SourceMap.')};ND.prototype.generatedPositionFor=function(t){var r=QA.getArg(t,"source");if(r=this._findSourceIndex(r),r<0)return{line:null,column:null,lastColumn:null};var s={source:r,originalLine:QA.getArg(t,"line"),originalColumn:QA.getArg(t,"column")},a=this._findMapping(s,this._originalMappings,"originalLine","originalColumn",QA.compareByOriginalPositions,QA.getArg(t,"bias",$E.GREATEST_LOWER_BOUND));if(a>=0){var o=this._originalMappings[a];if(o.source===s.source)return{line:QA.getArg(o,"generatedLine",null),column:QA.getArg(o,"generatedColumn",null),lastColumn:QA.getArg(o,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}};Sat.BasicSourceMapConsumer=ND;function wH(e,t){var r=e;typeof e=="string"&&(r=QA.parseSourceMapInput(e));var s=QA.getArg(r,"version"),a=QA.getArg(r,"sections");if(s!=this._version)throw new Error("Unsupported version: "+s);this._sources=new ZEe,this._names=new ZEe;var o={line:-1,column:0};this._sections=a.map(function(g){if(g.url)throw new Error("Support for url field in sections not implemented.");var p=QA.getArg(g,"offset"),f=QA.getArg(p,"line"),m=QA.getArg(p,"column");if(f{var e$s=g6t().SourceMapGenerator,wat=FEe(),t$s=/(\r?\n)/,r$s=10,LEe="$$$isSourceNode$$$";function EW(e,t,r,s,a){this.children=[],this.sourceContents={},this.line=e??null,this.column=t??null,this.source=r??null,this.name=a??null,this[LEe]=!0,s!=null&&this.add(s)}EW.fromStringWithSourceMap=function(t,r,s){var a=new EW,o=t.split(t$s),g=0,p=function(){var v=T(),G=T()||"";return v+G;function T(){return g=0;r--)this.prepend(t[r]);else if(t[LEe]||typeof t=="string")this.children.unshift(t);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+t);return this};EW.prototype.walk=function(t){for(var r,s=0,a=this.children.length;s0){for(r=[],s=0;s{Tat.SourceMapGenerator=g6t().SourceMapGenerator;Tat.SourceMapConsumer=t0n().SourceMapConsumer;Tat.SourceNode=n0n().SourceNode});var c0n=z((Nat,a0n)=>{"use strict";Nat.__esModule=!0;var C6t=EF(),JAe=void 0;try{(typeof define!="function"||!define.amd)&&(s0n=i0n(),JAe=s0n.SourceNode)}catch{}var s0n;JAe||(JAe=function(e,t,r,s){this.src="",s&&this.add(s)},JAe.prototype={add:function(t){C6t.isArray(t)&&(t=t.join("")),this.src+=t},prepend:function(t){C6t.isArray(t)&&(t=t.join("")),this.src=t+this.src},toStringWithSourceMap:function(){return{code:this.toString()}},toString:function(){return this.src}});function I6t(e,t,r){if(C6t.isArray(e)){for(var s=[],a=0,o=e.length;a{"use strict";Rat.__esModule=!0;function g0n(e){return e&&e.__esModule?e:{default:e}}var l0n=gat(),n$s=FO(),m6t=g0n(n$s),i$s=EF(),s$s=c0n(),u0n=g0n(s$s);function VEe(e){this.value=e}function WEe(){}WEe.prototype={nameLookup:function(t,r){return this.internalNameLookup(t,r)},depthedLookup:function(t){return[this.aliasable("container.lookup"),"(depths, ",JSON.stringify(t),")"]},compilerInfo:function(){var t=l0n.COMPILER_REVISION,r=l0n.REVISION_CHANGES[t];return[t,r]},appendToBuffer:function(t,r,s){return i$s.isArray(t)||(t=[t]),t=this.source.wrap(t,r),this.environment.isSimple?["return ",t,";"]:s?["buffer += ",t,";"]:(t.appendToBuffer=!0,t)},initializeBuffer:function(){return this.quotedString("")},internalNameLookup:function(t,r){return this.lookupPropertyFunctionIsUsed=!0,["lookupProperty(",t,",",JSON.stringify(r),")"]},lookupPropertyFunctionIsUsed:!1,compile:function(t,r,s,a){this.environment=t,this.options=r,this.stringParams=this.options.stringParams,this.trackIds=this.options.trackIds,this.precompile=!a,this.name=this.environment.name,this.isChild=!!s,this.context=s||{decorators:[],programs:[],environments:[]},this.preamble(),this.stackSlot=0,this.stackVars=[],this.aliases={},this.registers={list:[]},this.hashes=[],this.compileStack=[],this.inlineStack=[],this.blockParams=[],this.compileChildren(t,r),this.useDepths=this.useDepths||t.useDepths||t.useDecorators||this.options.compat,this.useBlockParams=this.useBlockParams||t.useBlockParams;var o=t.opcodes,g=void 0,p=void 0,f=void 0,m=void 0;for(f=0,m=o.length;f@\[-\^`\{-~]+(?=[=}\s\/.])\}\}\}\})/,/^(?:[^\x00]+?(?=(\{\{\{\{)))/,/^(?:[\s\S]*?--(~)?\}\})/,/^(?:\()/,/^(?:\))/,/^(?:\{\{\{\{)/,/^(?:\}\}\}\})/,/^(?:\{\{(~)?>)/,/^(?:\{\{(~)?#>)/,/^(?:\{\{(~)?#\*?)/,/^(?:\{\{(~)?\/)/,/^(?:\{\{(~)?\^\s*(~)?\}\})/,/^(?:\{\{(~)?\s*else\s*(~)?\}\})/,/^(?:\{\{(~)?\^)/,/^(?:\{\{(~)?\s*else\b)/,/^(?:\{\{(~)?\{)/,/^(?:\{\{(~)?&)/,/^(?:\{\{(~)?!--)/,/^(?:\{\{(~)?![\s\S]*?\}\})/,/^(?:\{\{(~)?\*?)/,/^(?:=)/,/^(?:\.\.)/,/^(?:\.(?=([=~}\s\/.)|])))/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}(~)?\}\})/,/^(?:(~)?\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=([~}\s)])))/,/^(?:false(?=([~}\s)])))/,/^(?:undefined(?=([~}\s)])))/,/^(?:null(?=([~}\s)])))/,/^(?:-?[0-9]+(?:\.[0-9]+)?(?=([~}\s)])))/,/^(?:as\s+\|)/,/^(?:\|)/,/^(?:([^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=([=~}\s\/.)|]))))/,/^(?:\[(\\\]|[^\]])*\])/,/^(?:.)/,/^(?:$)/],s.conditions={mu:{rules:[7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44],inclusive:!1},emu:{rules:[2],inclusive:!1},com:{rules:[6],inclusive:!1},raw:{rules:[3,4,5],inclusive:!1},INITIAL:{rules:[0,1,44],inclusive:!0}},s}();e.lexer=t;function r(){this.yy={}}return r.prototype=e,e.Parser=r,new r}();hat.default=pqs;S_n.exports=hat.default});var Eat=z((bat,R_n)=>{"use strict";bat.__esModule=!0;function fqs(e){return e&&e.__esModule?e:{default:e}}var Iqs=VO(),$8t=fqs(Iqs);function _at(){this.parents=[]}_at.prototype={constructor:_at,mutating:!1,acceptKey:function(t,r){var s=this.accept(t[r]);if(this.mutating){if(s&&!_at.prototype[s.type])throw new $8t.default('Unexpected node type "'+s.type+'" found when accepting '+r+" on "+t.type);t[r]=s}},acceptRequired:function(t,r){if(this.acceptKey(t,r),!t[r])throw new $8t.default(t.type+" requires "+r)},acceptArray:function(t){for(var r=0,s=t.length;r{"use strict";Bat.__esModule=!0;function Cqs(e){return e&&e.__esModule?e:{default:e}}var mqs=Eat(),hqs=Cqs(mqs);function JJ(){var e=arguments.length<=0||arguments[0]===void 0?{}:arguments[0];this.options=e}JJ.prototype=new hqs.default;JJ.prototype.Program=function(e){var t=!this.options.ignoreStandalone,r=!this.isRootSeen;this.isRootSeen=!0;for(var s=e.body,a=0,o=s.length;a{"use strict";WO.__esModule=!0;WO.SourceLocation=bqs;WO.id=Eqs;WO.stripFlags=Bqs;WO.stripComment=vqs;WO.preparePath=Sqs;WO.prepareMustache=wqs;WO.prepareRawBlock=Tqs;WO.prepareBlock=Nqs;WO.prepareProgram=Rqs;WO.preparePartialBlock=Dqs;function _qs(e){return e&&e.__esModule?e:{default:e}}var yqs=VO(),r6t=_qs(yqs);function n6t(e,t){if(t=t.path?t.path.original:t,e.path.original!==t){var r={loc:e.path.loc};throw new r6t.default(e.path.original+" doesn't match "+t,r)}}function bqs(e,t){this.source=e,this.start={line:t.first_line,column:t.first_column},this.end={line:t.last_line,column:t.last_column}}function Eqs(e){return/^\[.*\]$/.test(e)?e.substring(1,e.length-1):e}function Bqs(e,t){return{open:e.charAt(2)==="~",close:t.charAt(t.length-3)==="~"}}function vqs(e){return e.replace(/^\{\{~?!-?-?/,"").replace(/-?-?~?\}\}$/,"")}function Sqs(e,t,r){r=this.locInfo(r);for(var s=e?"@":"",a=[],o=0,g=0,p=t.length;g0)throw new r6t.default("Invalid path: "+s,{loc:r});f===".."&&o++}else a.push(f)}return{type:"PathExpression",data:e,depth:o,parts:a,original:s,loc:r}}function wqs(e,t,r,s,a,o){var g=s.charAt(3)||s.charAt(2),p=g!=="{"&&g!=="&",f=/\*/.test(s);return{type:f?"Decorator":"MustacheStatement",path:e,params:t,hash:r,escaped:p,strip:a,loc:this.locInfo(o)}}function Tqs(e,t,r,s){n6t(e,r),s=this.locInfo(s);var a={type:"Program",body:t,strip:{},loc:s};return{type:"BlockStatement",path:e.path,params:e.params,hash:e.hash,program:a,openStrip:{},inverseStrip:{},closeStrip:{},loc:s}}function Nqs(e,t,r,s,a,o){s&&s.path&&n6t(e,s);var g=/\*/.test(e.open);t.blockParams=e.blockParams;var p=void 0,f=void 0;if(r){if(g)throw new r6t.default("Unexpected inverse block on decorator",r);r.chain&&(r.program.body[0].closeStrip=s.strip),f=r.strip,p=r.program}return a&&(a=p,p=t,t=a),{type:g?"DecoratorBlock":"BlockStatement",path:e.path,params:e.params,hash:e.hash,program:t,inverse:p,openStrip:e.strip,inverseStrip:f,closeStrip:s&&s.strip,loc:this.locInfo(o)}}function Rqs(e,t){if(!t&&e.length){var r=e[0].loc,s=e[e.length-1].loc;r&&s&&(t={source:r.source,start:{line:r.start.line,column:r.start.column},end:{line:s.end.line,column:s.end.column}})}return{type:"Program",body:e,strip:{},loc:t}}function Dqs(e,t,r,s){return n6t(e,r),{type:"PartialBlockStatement",name:e.path,params:e.params,hash:e.hash,program:t,openStrip:e.strip,closeStrip:r&&r.strip,loc:this.locInfo(s)}}});var Z_n=z(dWe=>{"use strict";dWe.__esModule=!0;dWe.parseWithoutProcessing=F_n;dWe.parse=Wqs;function xqs(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}function G_n(e){return e&&e.__esModule?e:{default:e}}var kqs=w_n(),i6t=G_n(kqs),Gqs=x_n(),Fqs=G_n(Gqs),Zqs=k_n(),Lqs=xqs(Zqs),Vqs=TF();dWe.parser=i6t.default;var vat={};Vqs.extend(vat,Lqs);function F_n(e,t){if(e.type==="Program")return e;i6t.default.yy=vat,vat.locInfo=function(s){return new vat.SourceLocation(t&&t.srcName,s)};var r=i6t.default.parse(e);return r}function Wqs(e,t){var r=F_n(e,t),s=new Fqs.default(t);return s.accept(r)}});var P_n=z(CWe=>{"use strict";CWe.__esModule=!0;CWe.Compiler=s6t;CWe.precompile=Mqs;CWe.compile=Hqs;function V_n(e){return e&&e.__esModule?e:{default:e}}var Pqs=VO(),fWe=V_n(Pqs),IWe=TF(),Oqs=q8t(),pWe=V_n(Oqs),Qqs=[].slice;function s6t(){}s6t.prototype={compiler:s6t,equals:function(t){var r=this.opcodes.length;if(t.opcodes.length!==r)return!1;for(var s=0;s1)throw new fWe.default("Unsupported number of partial arguments: "+s.length,t);s.length||(this.options.explicitPartialContext?this.opcode("pushLiteral","undefined"):s.push({type:"PathExpression",parts:[],depth:0}));var a=t.name.original,o=t.name.type==="SubExpression";o&&this.accept(t.name),this.setupFullMustacheParams(t,r,void 0,!0);var g=t.indent||"";this.options.preventIndent&&g&&(this.opcode("appendContent",g),g=""),this.opcode("invokePartial",o,a,g),this.opcode("append")},PartialBlockStatement:function(t){this.PartialStatement(t)},MustacheStatement:function(t){this.SubExpression(t),t.escaped&&!this.options.noEscape?this.opcode("appendEscaped"):this.opcode("append")},Decorator:function(t){this.DecoratorBlock(t)},ContentStatement:function(t){t.value&&this.opcode("appendContent",t.value)},CommentStatement:function(){},SubExpression:function(t){L_n(t);var r=this.classifySexpr(t);r==="simple"?this.simpleSexpr(t):r==="helper"?this.helperSexpr(t):this.ambiguousSexpr(t)},ambiguousSexpr:function(t,r,s){var a=t.path,o=a.parts[0],g=r!=null||s!=null;this.opcode("getContext",a.depth),this.opcode("pushProgram",r),this.opcode("pushProgram",s),a.strict=!0,this.accept(a),this.opcode("invokeAmbiguous",o,g)},simpleSexpr:function(t){var r=t.path;r.strict=!0,this.accept(r),this.opcode("resolvePossibleLambda")},helperSexpr:function(t,r,s){var a=this.setupFullMustacheParams(t,r,s),o=t.path,g=o.parts[0];if(this.options.knownHelpers[g])this.opcode("invokeKnownHelper",a.length,g);else{if(this.options.knownHelpersOnly)throw new fWe.default("You specified knownHelpersOnly, but used the unknown helper "+g,t);o.strict=!0,o.falsy=!0,this.accept(o),this.opcode("invokeHelper",a.length,o.original,pWe.default.helpers.simpleId(o))}},PathExpression:function(t){this.addDepth(t.depth),this.opcode("getContext",t.depth);var r=t.parts[0],s=pWe.default.helpers.scopedId(t),a=!t.depth&&!s&&this.blockParamIndex(r);a?this.opcode("lookupBlockParam",a,t.parts):r?t.data?(this.options.data=!0,this.opcode("lookupData",t.depth,t.parts,t.strict)):this.opcode("lookupOnContext",t.parts,t.falsy,t.strict,s):this.opcode("pushContext")},StringLiteral:function(t){this.opcode("pushString",t.value)},NumberLiteral:function(t){this.opcode("pushLiteral",t.value)},BooleanLiteral:function(t){this.opcode("pushLiteral",t.value)},UndefinedLiteral:function(){this.opcode("pushLiteral","undefined")},NullLiteral:function(){this.opcode("pushLiteral","null")},Hash:function(t){var r=t.pairs,s=0,a=r.length;for(this.opcode("pushHash");s=0)return[r,o]}}};function Mqs(e,t,r){if(e==null||typeof e!="string"&&e.type!=="Program")throw new fWe.default("You must pass a string or Handlebars AST to Handlebars.precompile. You passed "+e);t=t||{},"data"in t||(t.data=!0),t.compat&&(t.useDepths=!0);var s=r.parse(e,t),a=new r.Compiler().compile(s,t);return new r.JavaScriptCompiler().compile(a,t)}function Hqs(e,t,r){if(t===void 0&&(t={}),e==null||typeof e!="string"&&e.type!=="Program")throw new fWe.default("You must pass a string or Handlebars AST to Handlebars.compile. You passed "+e);t=IWe.extend({},t),"data"in t||(t.data=!0),t.compat&&(t.useDepths=!0);var s=void 0;function a(){var g=r.parse(e,t),p=new r.Compiler().compile(g,t),f=new r.JavaScriptCompiler().compile(p,t,void 0,!0);return r.template(f)}function o(g,p){return s||(s=a()),s.call(this,g,p)}return o._setup=function(g){return s||(s=a()),s._setup(g)},o._child=function(g,p,f,m){return s||(s=a()),s._child(g,p,f,m)},o}function W_n(e,t){if(e===t)return!0;if(IWe.isArray(e)&&IWe.isArray(t)&&e.length===t.length){for(var r=0;r{var O_n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");o6t.encode=function(e){if(0<=e&&e{var M_n=Q_n(),a6t=5,H_n=1<>1;return t?-r:r}c6t.encode=function(t){var r="",s,a=Yqs(t);do s=a&Y_n,a>>>=a6t,a>0&&(s|=X_n),r+=M_n.encode(s);while(a>0);return r};c6t.decode=function(t,r,s){var a=t.length,o=0,g=0,p,f;do{if(r>=a)throw new Error("Expected more digits in base 64 VLQ value.");if(f=M_n.decode(t.charCodeAt(r++)),f===-1)throw new Error("Invalid base64 digit: "+t.charAt(r-1));p=!!(f&X_n),f&=Y_n,o=o+(f<{function Jqs(e,t,r){if(t in e)return e[t];if(arguments.length===3)return r;throw new Error('"'+t+'" is a required argument.')}bk.getArg=Jqs;var J_n=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,Uqs=/^data:.+\,.+$/;function mWe(e){var t=e.match(J_n);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}bk.urlParse=mWe;function FEe(e){var t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}bk.urlGenerate=FEe;function u6t(e){var t=e,r=mWe(e);if(r){if(!r.path)return e;t=r.path}for(var s=bk.isAbsolute(t),a=t.split(/\/+/),o,g=0,p=a.length-1;p>=0;p--)o=a[p],o==="."?a.splice(p,1):o===".."?g++:g>0&&(o===""?(a.splice(p+1,g),g=0):(a.splice(p,2),g--));return t=a.join("/"),t===""&&(t=s?"/":"."),r?(r.path=t,FEe(r)):t}bk.normalize=u6t;function U_n(e,t){e===""&&(e="."),t===""&&(t=".");var r=mWe(t),s=mWe(e);if(s&&(e=s.path||"/"),r&&!r.scheme)return s&&(r.scheme=s.scheme),FEe(r);if(r||t.match(Uqs))return t;if(s&&!s.host&&!s.path)return s.host=t,FEe(s);var a=t.charAt(0)==="/"?t:u6t(e.replace(/\/+$/,"")+"/"+t);return s?(s.path=a,FEe(s)):a}bk.join=U_n;bk.isAbsolute=function(e){return e.charAt(0)==="/"||J_n.test(e)};function Kqs(e,t){e===""&&(e="."),e=e.replace(/\/$/,"");for(var r=0;t.indexOf(e+"/")!==0;){var s=e.lastIndexOf("/");if(s<0||(e=e.slice(0,s),e.match(/^([^\/]+:\/)?\/*$/)))return t;++r}return Array(r+1).join("../")+t.substr(e.length+1)}bk.relative=Kqs;var K_n=function(){var e=Object.create(null);return!("__proto__"in e)}();function j_n(e){return e}function jqs(e){return z_n(e)?"$"+e:e}bk.toSetString=K_n?j_n:jqs;function zqs(e){return z_n(e)?e.slice(1):e}bk.fromSetString=K_n?j_n:zqs;function z_n(e){if(!e)return!1;var t=e.length;if(t<9||e.charCodeAt(t-1)!==95||e.charCodeAt(t-2)!==95||e.charCodeAt(t-3)!==111||e.charCodeAt(t-4)!==116||e.charCodeAt(t-5)!==111||e.charCodeAt(t-6)!==114||e.charCodeAt(t-7)!==112||e.charCodeAt(t-8)!==95||e.charCodeAt(t-9)!==95)return!1;for(var r=t-10;r>=0;r--)if(e.charCodeAt(r)!==36)return!1;return!0}function qqs(e,t,r){var s=ZEe(e.source,t.source);return s!==0||(s=e.originalLine-t.originalLine,s!==0)||(s=e.originalColumn-t.originalColumn,s!==0||r)||(s=e.generatedColumn-t.generatedColumn,s!==0)||(s=e.generatedLine-t.generatedLine,s!==0)?s:ZEe(e.name,t.name)}bk.compareByOriginalPositions=qqs;function $qs(e,t,r){var s=e.generatedLine-t.generatedLine;return s!==0||(s=e.generatedColumn-t.generatedColumn,s!==0||r)||(s=ZEe(e.source,t.source),s!==0)||(s=e.originalLine-t.originalLine,s!==0)||(s=e.originalColumn-t.originalColumn,s!==0)?s:ZEe(e.name,t.name)}bk.compareByGeneratedPositionsDeflated=$qs;function ZEe(e,t){return e===t?0:e===null?1:t===null?-1:e>t?1:-1}function e$s(e,t){var r=e.generatedLine-t.generatedLine;return r!==0||(r=e.generatedColumn-t.generatedColumn,r!==0)||(r=ZEe(e.source,t.source),r!==0)||(r=e.originalLine-t.originalLine,r!==0)||(r=e.originalColumn-t.originalColumn,r!==0)?r:ZEe(e.name,t.name)}bk.compareByGeneratedPositionsInflated=e$s;function t$s(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))}bk.parseSourceMapInput=t$s;function r$s(e,t,r){if(t=t||"",e&&(e[e.length-1]!=="/"&&t[0]!=="/"&&(e+="/"),t=e+t),r){var s=mWe(r);if(!s)throw new Error("sourceMapURL could not be parsed");if(s.path){var a=s.path.lastIndexOf("/");a>=0&&(s.path=s.path.substring(0,a+1))}t=U_n(FEe(s),t)}return u6t(t)}bk.computeSourceURL=r$s});var d6t=z(q_n=>{var g6t=LEe(),A6t=Object.prototype.hasOwnProperty,ede=typeof Map<"u";function Zj(){this._array=[],this._set=ede?new Map:Object.create(null)}Zj.fromArray=function(t,r){for(var s=new Zj,a=0,o=t.length;a=0)return r}else{var s=g6t.toSetString(t);if(A6t.call(this._set,s))return this._set[s]}throw new Error('"'+t+'" is not in the set.')};Zj.prototype.at=function(t){if(t>=0&&t{var $_n=LEe();function n$s(e,t){var r=e.generatedLine,s=t.generatedLine,a=e.generatedColumn,o=t.generatedColumn;return s>r||s==r&&o>=a||$_n.compareByGeneratedPositionsInflated(e,t)<=0}function Sat(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}Sat.prototype.unsortedForEach=function(t,r){this._array.forEach(t,r)};Sat.prototype.add=function(t){n$s(this._last,t)?(this._last=t,this._array.push(t)):(this._sorted=!1,this._array.push(t))};Sat.prototype.toArray=function(){return this._sorted||(this._array.sort($_n.compareByGeneratedPositionsInflated),this._sorted=!0),this._array};e0n.MappingList=Sat});var p6t=z(r0n=>{var hWe=l6t(),mw=LEe(),wat=d6t().ArraySet,i$s=t0n().MappingList;function PO(e){e||(e={}),this._file=mw.getArg(e,"file",null),this._sourceRoot=mw.getArg(e,"sourceRoot",null),this._skipValidation=mw.getArg(e,"skipValidation",!1),this._sources=new wat,this._names=new wat,this._mappings=new i$s,this._sourcesContents=null}PO.prototype._version=3;PO.fromSourceMap=function(t){var r=t.sourceRoot,s=new PO({file:t.file,sourceRoot:r});return t.eachMapping(function(a){var o={generated:{line:a.generatedLine,column:a.generatedColumn}};a.source!=null&&(o.source=a.source,r!=null&&(o.source=mw.relative(r,o.source)),o.original={line:a.originalLine,column:a.originalColumn},a.name!=null&&(o.name=a.name)),s.addMapping(o)}),t.sources.forEach(function(a){var o=a;r!==null&&(o=mw.relative(r,a)),s._sources.has(o)||s._sources.add(o);var g=t.sourceContentFor(a);g!=null&&s.setSourceContent(a,g)}),s};PO.prototype.addMapping=function(t){var r=mw.getArg(t,"generated"),s=mw.getArg(t,"original",null),a=mw.getArg(t,"source",null),o=mw.getArg(t,"name",null);this._skipValidation||this._validateMapping(r,s,a,o),a!=null&&(a=String(a),this._sources.has(a)||this._sources.add(a)),o!=null&&(o=String(o),this._names.has(o)||this._names.add(o)),this._mappings.add({generatedLine:r.line,generatedColumn:r.column,originalLine:s!=null&&s.line,originalColumn:s!=null&&s.column,source:a,name:o})};PO.prototype.setSourceContent=function(t,r){var s=t;this._sourceRoot!=null&&(s=mw.relative(this._sourceRoot,s)),r!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[mw.toSetString(s)]=r):this._sourcesContents&&(delete this._sourcesContents[mw.toSetString(s)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))};PO.prototype.applySourceMap=function(t,r,s){var a=r;if(r==null){if(t.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);a=t.file}var o=this._sourceRoot;o!=null&&(a=mw.relative(o,a));var g=new wat,p=new wat;this._mappings.unsortedForEach(function(f){if(f.source===a&&f.originalLine!=null){var m=t.originalPositionFor({line:f.originalLine,column:f.originalColumn});m.source!=null&&(f.source=m.source,s!=null&&(f.source=mw.join(s,f.source)),o!=null&&(f.source=mw.relative(o,f.source)),f.originalLine=m.line,f.originalColumn=m.column,m.name!=null&&(f.name=m.name))}var y=f.source;y!=null&&!g.has(y)&&g.add(y);var B=f.name;B!=null&&!p.has(B)&&p.add(B)},this),this._sources=g,this._names=p,t.sources.forEach(function(f){var m=t.sourceContentFor(f);m!=null&&(s!=null&&(f=mw.join(s,f)),o!=null&&(f=mw.relative(o,f)),this.setSourceContent(f,m))},this)};PO.prototype._validateMapping=function(t,r,s,a){if(r&&typeof r.line!="number"&&typeof r.column!="number")throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(!(t&&"line"in t&&"column"in t&&t.line>0&&t.column>=0&&!r&&!s&&!a)){if(t&&"line"in t&&"column"in t&&r&&"line"in r&&"column"in r&&t.line>0&&t.column>=0&&r.line>0&&r.column>=0&&s)return;throw new Error("Invalid mapping: "+JSON.stringify({generated:t,source:s,original:r,name:a}))}};PO.prototype._serializeMappings=function(){for(var t=0,r=1,s=0,a=0,o=0,g=0,p="",f,m,y,B,v=this._mappings.toArray(),k=0,T=v.length;k0){if(!mw.compareByGeneratedPositionsInflated(m,v[k-1]))continue;f+=","}f+=hWe.encode(m.generatedColumn-t),t=m.generatedColumn,m.source!=null&&(B=this._sources.indexOf(m.source),f+=hWe.encode(B-g),g=B,f+=hWe.encode(m.originalLine-1-a),a=m.originalLine-1,f+=hWe.encode(m.originalColumn-s),s=m.originalColumn,m.name!=null&&(y=this._names.indexOf(m.name),f+=hWe.encode(y-o),o=y)),p+=f}return p};PO.prototype._generateSourcesContent=function(t,r){return t.map(function(s){if(!this._sourcesContents)return null;r!=null&&(s=mw.relative(r,s));var a=mw.toSetString(s);return Object.prototype.hasOwnProperty.call(this._sourcesContents,a)?this._sourcesContents[a]:null},this)};PO.prototype.toJSON=function(){var t={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(t.file=this._file),this._sourceRoot!=null&&(t.sourceRoot=this._sourceRoot),this._sourcesContents&&(t.sourcesContent=this._generateSourcesContent(t.sources,t.sourceRoot)),t};PO.prototype.toString=function(){return JSON.stringify(this.toJSON())};r0n.SourceMapGenerator=PO});var n0n=z(tde=>{tde.GREATEST_LOWER_BOUND=1;tde.LEAST_UPPER_BOUND=2;function f6t(e,t,r,s,a,o){var g=Math.floor((t-e)/2)+e,p=a(r,s[g],!0);return p===0?g:p>0?t-g>1?f6t(g,t,r,s,a,o):o==tde.LEAST_UPPER_BOUND?t1?f6t(e,g,r,s,a,o):o==tde.LEAST_UPPER_BOUND?g:e<0?-1:e}tde.search=function(t,r,s,a){if(r.length===0)return-1;var o=f6t(-1,r.length,t,r,s,a||tde.GREATEST_LOWER_BOUND);if(o<0)return-1;for(;o-1>=0&&s(r[o],r[o-1],!0)===0;)--o;return o}});var s0n=z(i0n=>{function I6t(e,t,r){var s=e[t];e[t]=e[r],e[r]=s}function s$s(e,t){return Math.round(e+Math.random()*(t-e))}function C6t(e,t,r,s){if(r{var HA=LEe(),m6t=n0n(),VEe=d6t().ArraySet,o$s=l6t(),_We=s0n().quickSort;function t1(e,t){var r=e;return typeof e=="string"&&(r=HA.parseSourceMapInput(e)),r.sections!=null?new NH(r,t):new xD(r,t)}t1.fromSourceMap=function(e,t){return xD.fromSourceMap(e,t)};t1.prototype._version=3;t1.prototype.__generatedMappings=null;Object.defineProperty(t1.prototype,"_generatedMappings",{configurable:!0,enumerable:!0,get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}});t1.prototype.__originalMappings=null;Object.defineProperty(t1.prototype,"_originalMappings",{configurable:!0,enumerable:!0,get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}});t1.prototype._charIsMappingSeparator=function(t,r){var s=t.charAt(r);return s===";"||s===","};t1.prototype._parseMappings=function(t,r){throw new Error("Subclasses must implement _parseMappings")};t1.GENERATED_ORDER=1;t1.ORIGINAL_ORDER=2;t1.GREATEST_LOWER_BOUND=1;t1.LEAST_UPPER_BOUND=2;t1.prototype.eachMapping=function(t,r,s){var a=r||null,o=s||t1.GENERATED_ORDER,g;switch(o){case t1.GENERATED_ORDER:g=this._generatedMappings;break;case t1.ORIGINAL_ORDER:g=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var p=this.sourceRoot;g.map(function(f){var m=f.source===null?null:this._sources.at(f.source);return m=HA.computeSourceURL(p,m,this._sourceMapURL),{source:m,generatedLine:f.generatedLine,generatedColumn:f.generatedColumn,originalLine:f.originalLine,originalColumn:f.originalColumn,name:f.name===null?null:this._names.at(f.name)}},this).forEach(t,a)};t1.prototype.allGeneratedPositionsFor=function(t){var r=HA.getArg(t,"line"),s={source:HA.getArg(t,"source"),originalLine:r,originalColumn:HA.getArg(t,"column",0)};if(s.source=this._findSourceIndex(s.source),s.source<0)return[];var a=[],o=this._findMapping(s,this._originalMappings,"originalLine","originalColumn",HA.compareByOriginalPositions,m6t.LEAST_UPPER_BOUND);if(o>=0){var g=this._originalMappings[o];if(t.column===void 0)for(var p=g.originalLine;g&&g.originalLine===p;)a.push({line:HA.getArg(g,"generatedLine",null),column:HA.getArg(g,"generatedColumn",null),lastColumn:HA.getArg(g,"lastGeneratedColumn",null)}),g=this._originalMappings[++o];else for(var f=g.originalColumn;g&&g.originalLine===r&&g.originalColumn==f;)a.push({line:HA.getArg(g,"generatedLine",null),column:HA.getArg(g,"generatedColumn",null),lastColumn:HA.getArg(g,"lastGeneratedColumn",null)}),g=this._originalMappings[++o]}return a};Tat.SourceMapConsumer=t1;function xD(e,t){var r=e;typeof e=="string"&&(r=HA.parseSourceMapInput(e));var s=HA.getArg(r,"version"),a=HA.getArg(r,"sources"),o=HA.getArg(r,"names",[]),g=HA.getArg(r,"sourceRoot",null),p=HA.getArg(r,"sourcesContent",null),f=HA.getArg(r,"mappings"),m=HA.getArg(r,"file",null);if(s!=this._version)throw new Error("Unsupported version: "+s);g&&(g=HA.normalize(g)),a=a.map(String).map(HA.normalize).map(function(y){return g&&HA.isAbsolute(g)&&HA.isAbsolute(y)?HA.relative(g,y):y}),this._names=VEe.fromArray(o.map(String),!0),this._sources=VEe.fromArray(a,!0),this._absoluteSources=this._sources.toArray().map(function(y){return HA.computeSourceURL(g,y,t)}),this.sourceRoot=g,this.sourcesContent=p,this._mappings=f,this._sourceMapURL=t,this.file=m}xD.prototype=Object.create(t1.prototype);xD.prototype.consumer=t1;xD.prototype._findSourceIndex=function(e){var t=e;if(this.sourceRoot!=null&&(t=HA.relative(this.sourceRoot,t)),this._sources.has(t))return this._sources.indexOf(t);var r;for(r=0;r1&&(O.source=p+U[1],p+=U[1],O.originalLine=o+U[2],o=O.originalLine,O.originalLine+=1,O.originalColumn=g+U[3],g=O.originalColumn,U.length>4&&(O.name=f+U[4],f+=U[4])),T.push(O),typeof O.originalLine=="number"&&k.push(O)}_We(T,HA.compareByGeneratedPositionsDeflated),this.__generatedMappings=T,_We(k,HA.compareByOriginalPositions),this.__originalMappings=k};xD.prototype._findMapping=function(t,r,s,a,o,g){if(t[s]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+t[s]);if(t[a]<0)throw new TypeError("Column must be greater than or equal to 0, got "+t[a]);return m6t.search(t,r,o,g)};xD.prototype.computeColumnSpans=function(){for(var t=0;t=0){var a=this._generatedMappings[s];if(a.generatedLine===r.generatedLine){var o=HA.getArg(a,"source",null);o!==null&&(o=this._sources.at(o),o=HA.computeSourceURL(this.sourceRoot,o,this._sourceMapURL));var g=HA.getArg(a,"name",null);return g!==null&&(g=this._names.at(g)),{source:o,line:HA.getArg(a,"originalLine",null),column:HA.getArg(a,"originalColumn",null),name:g}}}return{source:null,line:null,column:null,name:null}};xD.prototype.hasContentsOfAllSources=function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(t){return t==null}):!1};xD.prototype.sourceContentFor=function(t,r){if(!this.sourcesContent)return null;var s=this._findSourceIndex(t);if(s>=0)return this.sourcesContent[s];var a=t;this.sourceRoot!=null&&(a=HA.relative(this.sourceRoot,a));var o;if(this.sourceRoot!=null&&(o=HA.urlParse(this.sourceRoot))){var g=a.replace(/^file:\/\//,"");if(o.scheme=="file"&&this._sources.has(g))return this.sourcesContent[this._sources.indexOf(g)];if((!o.path||o.path=="/")&&this._sources.has("/"+a))return this.sourcesContent[this._sources.indexOf("/"+a)]}if(r)return null;throw new Error('"'+a+'" is not in the SourceMap.')};xD.prototype.generatedPositionFor=function(t){var r=HA.getArg(t,"source");if(r=this._findSourceIndex(r),r<0)return{line:null,column:null,lastColumn:null};var s={source:r,originalLine:HA.getArg(t,"line"),originalColumn:HA.getArg(t,"column")},a=this._findMapping(s,this._originalMappings,"originalLine","originalColumn",HA.compareByOriginalPositions,HA.getArg(t,"bias",t1.GREATEST_LOWER_BOUND));if(a>=0){var o=this._originalMappings[a];if(o.source===s.source)return{line:HA.getArg(o,"generatedLine",null),column:HA.getArg(o,"generatedColumn",null),lastColumn:HA.getArg(o,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}};Tat.BasicSourceMapConsumer=xD;function NH(e,t){var r=e;typeof e=="string"&&(r=HA.parseSourceMapInput(e));var s=HA.getArg(r,"version"),a=HA.getArg(r,"sections");if(s!=this._version)throw new Error("Unsupported version: "+s);this._sources=new VEe,this._names=new VEe;var o={line:-1,column:0};this._sections=a.map(function(g){if(g.url)throw new Error("Support for url field in sections not implemented.");var p=HA.getArg(g,"offset"),f=HA.getArg(p,"line"),m=HA.getArg(p,"column");if(f{var a$s=p6t().SourceMapGenerator,Nat=LEe(),c$s=/(\r?\n)/,l$s=10,WEe="$$$isSourceNode$$$";function BW(e,t,r,s,a){this.children=[],this.sourceContents={},this.line=e??null,this.column=t??null,this.source=r??null,this.name=a??null,this[WEe]=!0,s!=null&&this.add(s)}BW.fromStringWithSourceMap=function(t,r,s){var a=new BW,o=t.split(c$s),g=0,p=function(){var v=T(),k=T()||"";return v+k;function T(){return g=0;r--)this.prepend(t[r]);else if(t[WEe]||typeof t=="string")this.children.unshift(t);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+t);return this};BW.prototype.walk=function(t){for(var r,s=0,a=this.children.length;s0){for(r=[],s=0;s{Rat.SourceMapGenerator=p6t().SourceMapGenerator;Rat.SourceMapConsumer=a0n().SourceMapConsumer;Rat.SourceNode=l0n().SourceNode});var p0n=z((Dat,d0n)=>{"use strict";Dat.__esModule=!0;var _6t=TF(),rde=void 0;try{(typeof define!="function"||!define.amd)&&(g0n=u0n(),rde=g0n.SourceNode)}catch{}var g0n;rde||(rde=function(e,t,r,s){this.src="",s&&this.add(s)},rde.prototype={add:function(t){_6t.isArray(t)&&(t=t.join("")),this.src+=t},prepend:function(t){_6t.isArray(t)&&(t=t.join("")),this.src=t+this.src},toStringWithSourceMap:function(){return{code:this.toString()}},toString:function(){return this.src}});function h6t(e,t,r){if(_6t.isArray(e)){for(var s=[],a=0,o=e.length;a{"use strict";xat.__esModule=!0;function C0n(e){return e&&e.__esModule?e:{default:e}}var f0n=dat(),u$s=VO(),y6t=C0n(u$s),g$s=TF(),A$s=p0n(),I0n=C0n(A$s);function PEe(e){this.value=e}function OEe(){}OEe.prototype={nameLookup:function(t,r){return this.internalNameLookup(t,r)},depthedLookup:function(t){return[this.aliasable("container.lookup"),"(depths, ",JSON.stringify(t),")"]},compilerInfo:function(){var t=f0n.COMPILER_REVISION,r=f0n.REVISION_CHANGES[t];return[t,r]},appendToBuffer:function(t,r,s){return g$s.isArray(t)||(t=[t]),t=this.source.wrap(t,r),this.environment.isSimple?["return ",t,";"]:s?["buffer += ",t,";"]:(t.appendToBuffer=!0,t)},initializeBuffer:function(){return this.quotedString("")},internalNameLookup:function(t,r){return this.lookupPropertyFunctionIsUsed=!0,["lookupProperty(",t,",",JSON.stringify(r),")"]},lookupPropertyFunctionIsUsed:!1,compile:function(t,r,s,a){this.environment=t,this.options=r,this.stringParams=this.options.stringParams,this.trackIds=this.options.trackIds,this.precompile=!a,this.name=this.environment.name,this.isChild=!!s,this.context=s||{decorators:[],programs:[],environments:[]},this.preamble(),this.stackSlot=0,this.stackVars=[],this.aliases={},this.registers={list:[]},this.hashes=[],this.compileStack=[],this.inlineStack=[],this.blockParams=[],this.compileChildren(t,r),this.useDepths=this.useDepths||t.useDepths||t.useDecorators||this.options.compat,this.useBlockParams=this.useBlockParams||t.useBlockParams;var o=t.opcodes,g=void 0,p=void 0,f=void 0,m=void 0;for(f=0,m=o.length;f0&&(s+=", "+a.join(", "));var o=0;Object.keys(this.aliases).forEach(function(f){var m=r.aliases[f];m.children&&m.referenceCount>1&&(s+=", alias"+ ++o+"="+f,m.children[0]="alias"+o)}),this.lookupPropertyFunctionIsUsed&&(s+=", "+this.lookupPropertyFunctionVarDeclaration());var g=["container","depth0","helpers","partials","data"];(this.useBlockParams||this.useDepths)&&g.push("blockParams"),this.useDepths&&g.push("depths");var p=this.mergeSource(s);return t?(g.push(p),Function.apply(this,g)):this.source.wrap(["function(",g.join(","),`) { +`),this.decorators=this.decorators.merge()));var y=this.createFunctionContext(a);if(this.isChild)return y;var B={compiler:this.compilerInfo(),main:y};this.decorators&&(B.main_d=this.decorators,B.useDecorators=!0);var v=this.context,k=v.programs,T=v.decorators;for(f=0,m=k.length;f0&&(s+=", "+a.join(", "));var o=0;Object.keys(this.aliases).forEach(function(f){var m=r.aliases[f];m.children&&m.referenceCount>1&&(s+=", alias"+ ++o+"="+f,m.children[0]="alias"+o)}),this.lookupPropertyFunctionIsUsed&&(s+=", "+this.lookupPropertyFunctionVarDeclaration());var g=["container","depth0","helpers","partials","data"];(this.useBlockParams||this.useDepths)&&g.push("blockParams"),this.useDepths&&g.push("depths");var p=this.mergeSource(s);return t?(g.push(p),Function.apply(this,g)):this.source.wrap(["function(",g.join(","),`) { `,p,"}"])},mergeSource:function(t){var r=this.environment.isSimple,s=!this.forceBuffer,a=void 0,o=void 0,g=void 0,p=void 0;return this.source.each(function(f){f.appendToBuffer?(g?f.prepend(" + "):g=f,p=f):(g&&(o?g.prepend("buffer += "):a=!0,p.add(";"),g=p=void 0),o=!0,r||(s=!1))}),s?g?(g.prepend("return "),p.add(";")):o||this.source.push('return "";'):(t+=", buffer = "+(a?"":this.initializeBuffer()),g?(g.prepend("return buffer + "),p.add(";")):this.source.push("return buffer;")),t&&this.source.prepend("var "+t.substring(2)+(a?"":`; `)),this.source.merge()},lookupPropertyFunctionVarDeclaration:function(){return` lookupProperty = container.lookupProperty || function(parent, propertyName) { @@ -268,217 +268,217 @@ Expecting `+Je.join(", ")+", got '"+(this.terminals_[ge]||ge)+"'":Xe="Parse erro } return undefined } - `.trim()},blockValue:function(t){var r=this.aliasable("container.hooks.blockHelperMissing"),s=[this.contextName(0)];this.setupHelperArgs(t,0,s);var a=this.popStack();s.splice(1,0,a),this.push(this.source.functionCall(r,"call",s))},ambiguousBlockValue:function(){var t=this.aliasable("container.hooks.blockHelperMissing"),r=[this.contextName(0)];this.setupHelperArgs("",0,r,!0),this.flushInline();var s=this.topStack();r.splice(1,0,s),this.pushSource(["if (!",this.lastHelper,") { ",s," = ",this.source.functionCall(t,"call",r),"}"])},appendContent:function(t){this.pendingContent?t=this.pendingContent+t:this.pendingLocation=this.source.currentLocation,this.pendingContent=t},append:function(){if(this.isInline())this.replaceStack(function(r){return[" != null ? ",r,' : ""']}),this.pushSource(this.appendToBuffer(this.popStack()));else{var t=this.popStack();this.pushSource(["if (",t," != null) { ",this.appendToBuffer(t,void 0,!0)," }"]),this.environment.isSimple&&this.pushSource(["else { ",this.appendToBuffer("''",void 0,!0)," }"])}},appendEscaped:function(){this.pushSource(this.appendToBuffer([this.aliasable("container.escapeExpression"),"(",this.popStack(),")"]))},getContext:function(t){this.lastContext=t},pushContext:function(){this.pushStackLiteral(this.contextName(this.lastContext))},lookupOnContext:function(t,r,s,a){var o=0;!a&&this.options.compat&&!this.lastContext?this.push(this.depthedLookup(t[o++])):this.pushContext(),this.resolvePath("context",t,o,r,s)},lookupBlockParam:function(t,r){this.useBlockParams=!0,this.push(["blockParams[",t[0],"][",t[1],"]"]),this.resolvePath("context",r,1)},lookupData:function(t,r,s){t?this.pushStackLiteral("container.data(data, "+t+")"):this.pushStackLiteral("data"),this.resolvePath("data",r,0,!0,s)},resolvePath:function(t,r,s,a,o){var g=this;if(this.options.strict||this.options.assumeObjects){this.push(o$s(this.options.strict&&o,this,r,s,t));return}for(var p=r.length;sthis.stackVars.length&&this.stackVars.push("stack"+this.stackSlot),this.topStackName()},topStackName:function(){return"stack"+this.stackSlot},flushInline:function(){var t=this.inlineStack;this.inlineStack=[];for(var r=0,s=t.length;r{"use strict";Dat.__esModule=!0;function hWe(e){return e&&e.__esModule?e:{default:e}}var a$s=C_n(),c$s=hWe(a$s),l$s=K8t(),u$s=hWe(l$s),h6t=R_n(),_6t=G_n(),g$s=d0n(),A$s=hWe(g$s),d$s=yat(),p$s=hWe(d$s),f$s=H8t(),I$s=hWe(f$s),C$s=c$s.default.create;function p0n(){var e=C$s();return e.compile=function(t,r){return _6t.compile(t,r,e)},e.precompile=function(t,r){return _6t.precompile(t,r,e)},e.AST=u$s.default,e.Compiler=_6t.Compiler,e.JavaScriptCompiler=A$s.default,e.Parser=h6t.parser,e.parse=h6t.parse,e.parseWithoutProcessing=h6t.parseWithoutProcessing,e}var PEe=p0n();PEe.create=p0n;I$s.default(PEe);PEe.Visitor=p$s.default;PEe.default=PEe;Dat.default=PEe;f0n.exports=Dat.default});var C0n=z(xat=>{"use strict";xat.__esModule=!0;xat.print=y$s;xat.PrintVisitor=jB;function m$s(e){return e&&e.__esModule?e:{default:e}}var h$s=yat(),_$s=m$s(h$s);function y$s(e){return new jB().accept(e)}function jB(){this.padding=0}jB.prototype=new _$s.default;jB.prototype.pad=function(e){for(var t="",r=0,s=this.padding;r "+t+" }}")};jB.prototype.PartialBlockStatement=function(e){var t="PARTIAL BLOCK:"+e.name.original;return e.params[0]&&(t+=" "+this.accept(e.params[0])),e.hash&&(t+=" "+this.accept(e.hash)),t+=" "+this.pad("PROGRAM:"),this.padding++,t+=this.accept(e.program),this.padding--,this.pad("{{> "+t+" }}")};jB.prototype.ContentStatement=function(e){return this.pad("CONTENT[ '"+e.value+"' ]")};jB.prototype.CommentStatement=function(e){return this.pad("{{! '"+e.value+"' }}")};jB.prototype.SubExpression=function(e){for(var t=e.params,r=[],s=void 0,a=0,o=t.length;a{"use strict";Object.defineProperty(Fat,"__esModule",{value:!0});Fat.LRUCache=void 0;var MEe=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,R0n=new Set,b6t=typeof process=="object"&&process?process:{},D0n=(e,t,r,s)=>{typeof b6t.emitWarning=="function"?b6t.emitWarning(e,t,r,s):console.error(`[${r}] ${t}: ${e}`)},Gat=globalThis.AbortController,N0n=globalThis.AbortSignal;if(typeof Gat>"u"){N0n=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(s,a){this._onabort.push(a)}},Gat=class{constructor(){t()}signal=new N0n;abort(s){if(!this.signal.aborted){this.signal.reason=s,this.signal.aborted=!0;for(let a of this.signal._onabort)a(s);this.signal.onabort?.(s)}}};let e=b6t.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",t=()=>{e&&(e=!1,D0n("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",t))}}var N$s=e=>!R0n.has(e),DHc=Symbol("type"),Une=e=>e&&e===Math.floor(e)&&e>0&&isFinite(e),x0n=e=>Une(e)?e<=Math.pow(2,8)?Uint8Array:e<=Math.pow(2,16)?Uint16Array:e<=Math.pow(2,32)?Uint32Array:e<=Number.MAX_SAFE_INTEGER?QEe:null:null,QEe=class extends Array{constructor(t){super(t),this.fill(0)}},E6t=class e{heap;length;static#e=!1;static create(t){let r=x0n(t);if(!r)return[];e.#e=!0;let s=new e(t,r);return e.#e=!1,s}constructor(t,r){if(!e.#e)throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new r(t),this.length=0}push(t){this.heap[this.length++]=t}pop(){return this.heap[--this.length]}},B6t=class e{#e;#t;#r;#n;#i;#a;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#s;#u;#g;#c;#o;#f;#C;#p;#A;#_;#d;#y;#b;#m;#E;#T;#I;static unsafeExposeInternals(t){return{starts:t.#b,ttls:t.#m,sizes:t.#y,keyMap:t.#g,keyList:t.#c,valList:t.#o,next:t.#f,prev:t.#C,get head(){return t.#p},get tail(){return t.#A},free:t.#_,isBackgroundFetch:r=>t.#l(r),backgroundFetch:(r,s,a,o)=>t.#G(r,s,a,o),moveToTail:r=>t.#D(r),indexes:r=>t.#B(r),rindexes:r=>t.#v(r),isStale:r=>t.#h(r)}}get max(){return this.#e}get maxSize(){return this.#t}get calculatedSize(){return this.#u}get size(){return this.#s}get fetchMethod(){return this.#i}get memoMethod(){return this.#a}get dispose(){return this.#r}get disposeAfter(){return this.#n}constructor(t){let{max:r=0,ttl:s,ttlResolution:a=1,ttlAutopurge:o,updateAgeOnGet:g,updateAgeOnHas:p,allowStale:f,dispose:m,disposeAfter:y,noDisposeOnSet:B,noUpdateTTL:v,maxSize:G=0,maxEntrySize:T=0,sizeCalculation:O,fetchMethod:X,memoMethod:U,noDeleteOnFetchRejection:le,noDeleteOnStaleGet:ae,allowStaleOnFetchRejection:ge,allowStaleOnFetchAbort:fe,ignoreFetchAbort:pe}=t;if(r!==0&&!Une(r))throw new TypeError("max option must be a nonnegative integer");let he=r?x0n(r):Array;if(!he)throw new Error("invalid max value: "+r);if(this.#e=r,this.#t=G,this.maxEntrySize=T||this.#t,this.sizeCalculation=O,this.sizeCalculation){if(!this.#t&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(U!==void 0&&typeof U!="function")throw new TypeError("memoMethod must be a function if defined");if(this.#a=U,X!==void 0&&typeof X!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.#i=X,this.#T=!!X,this.#g=new Map,this.#c=new Array(r).fill(void 0),this.#o=new Array(r).fill(void 0),this.#f=new he(r),this.#C=new he(r),this.#p=0,this.#A=0,this.#_=E6t.create(r),this.#s=0,this.#u=0,typeof m=="function"&&(this.#r=m),typeof y=="function"?(this.#n=y,this.#d=[]):(this.#n=void 0,this.#d=void 0),this.#E=!!this.#r,this.#I=!!this.#n,this.noDisposeOnSet=!!B,this.noUpdateTTL=!!v,this.noDeleteOnFetchRejection=!!le,this.allowStaleOnFetchRejection=!!ge,this.allowStaleOnFetchAbort=!!fe,this.ignoreFetchAbort=!!pe,this.maxEntrySize!==0){if(this.#t!==0&&!Une(this.#t))throw new TypeError("maxSize must be a positive integer if specified");if(!Une(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.#O()}if(this.allowStale=!!f,this.noDeleteOnStaleGet=!!ae,this.updateAgeOnGet=!!g,this.updateAgeOnHas=!!p,this.ttlResolution=Une(a)||a===0?a:1,this.ttlAutopurge=!!o,this.ttl=s||0,this.ttl){if(!Une(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.#F()}if(this.#e===0&&this.ttl===0&&this.#t===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#e&&!this.#t){let be="LRU_CACHE_UNBOUNDED";N$s(be)&&(R0n.add(be),D0n("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",be,e))}}getRemainingTTL(t){return this.#g.has(t)?1/0:0}#F(){let t=new QEe(this.#e),r=new QEe(this.#e);this.#m=t,this.#b=r,this.#Z=(o,g,p=MEe.now())=>{if(r[o]=g!==0?p:0,t[o]=g,g!==0&&this.ttlAutopurge){let f=setTimeout(()=>{this.#h(o)&&this.#S(this.#c[o],"expire")},g+1);f.unref&&f.unref()}},this.#N=o=>{r[o]=t[o]!==0?MEe.now():0},this.#w=(o,g)=>{if(t[g]){let p=t[g],f=r[g];if(!p||!f)return;o.ttl=p,o.start=f,o.now=s||a();let m=o.now-f;o.remainingTTL=p-m}};let s=0,a=()=>{let o=MEe.now();if(this.ttlResolution>0){s=o;let g=setTimeout(()=>s=0,this.ttlResolution);g.unref&&g.unref()}return o};this.getRemainingTTL=o=>{let g=this.#g.get(o);if(g===void 0)return 0;let p=t[g],f=r[g];if(!p||!f)return 1/0;let m=(s||a())-f;return p-m},this.#h=o=>{let g=r[o],p=t[o];return!!p&&!!g&&(s||a())-g>p}}#N=()=>{};#w=()=>{};#Z=()=>{};#h=()=>!1;#O(){let t=new QEe(this.#e);this.#u=0,this.#y=t,this.#R=r=>{this.#u-=t[r],t[r]=0},this.#L=(r,s,a,o)=>{if(this.#l(s))return 0;if(!Une(a))if(o){if(typeof o!="function")throw new TypeError("sizeCalculation must be a function");if(a=o(s,r),!Une(a))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return a},this.#x=(r,s,a)=>{if(t[r]=s,this.#t){let o=this.#t-t[r];for(;this.#u>o;)this.#k(!0)}this.#u+=t[r],a&&(a.entrySize=s,a.totalCalculatedSize=this.#u)}}#R=t=>{};#x=(t,r,s)=>{};#L=(t,r,s,a)=>{if(s||a)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#B({allowStale:t=this.allowStale}={}){if(this.#s)for(let r=this.#A;!(!this.#V(r)||((t||!this.#h(r))&&(yield r),r===this.#p));)r=this.#C[r]}*#v({allowStale:t=this.allowStale}={}){if(this.#s)for(let r=this.#p;!(!this.#V(r)||((t||!this.#h(r))&&(yield r),r===this.#A));)r=this.#f[r]}#V(t){return t!==void 0&&this.#g.get(this.#c[t])===t}*entries(){for(let t of this.#B())this.#o[t]!==void 0&&this.#c[t]!==void 0&&!this.#l(this.#o[t])&&(yield[this.#c[t],this.#o[t]])}*rentries(){for(let t of this.#v())this.#o[t]!==void 0&&this.#c[t]!==void 0&&!this.#l(this.#o[t])&&(yield[this.#c[t],this.#o[t]])}*keys(){for(let t of this.#B()){let r=this.#c[t];r!==void 0&&!this.#l(this.#o[t])&&(yield r)}}*rkeys(){for(let t of this.#v()){let r=this.#c[t];r!==void 0&&!this.#l(this.#o[t])&&(yield r)}}*values(){for(let t of this.#B())this.#o[t]!==void 0&&!this.#l(this.#o[t])&&(yield this.#o[t])}*rvalues(){for(let t of this.#v())this.#o[t]!==void 0&&!this.#l(this.#o[t])&&(yield this.#o[t])}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(t,r={}){for(let s of this.#B()){let a=this.#o[s],o=this.#l(a)?a.__staleWhileFetching:a;if(o!==void 0&&t(o,this.#c[s],this))return this.get(this.#c[s],r)}}forEach(t,r=this){for(let s of this.#B()){let a=this.#o[s],o=this.#l(a)?a.__staleWhileFetching:a;o!==void 0&&t.call(r,o,this.#c[s],this)}}rforEach(t,r=this){for(let s of this.#v()){let a=this.#o[s],o=this.#l(a)?a.__staleWhileFetching:a;o!==void 0&&t.call(r,o,this.#c[s],this)}}purgeStale(){let t=!1;for(let r of this.#v({allowStale:!0}))this.#h(r)&&(this.#S(this.#c[r],"expire"),t=!0);return t}info(t){let r=this.#g.get(t);if(r===void 0)return;let s=this.#o[r],a=this.#l(s)?s.__staleWhileFetching:s;if(a===void 0)return;let o={value:a};if(this.#m&&this.#b){let g=this.#m[r],p=this.#b[r];if(g&&p){let f=g-(MEe.now()-p);o.ttl=f,o.start=Date.now()}}return this.#y&&(o.size=this.#y[r]),o}dump(){let t=[];for(let r of this.#B({allowStale:!0})){let s=this.#c[r],a=this.#o[r],o=this.#l(a)?a.__staleWhileFetching:a;if(o===void 0||s===void 0)continue;let g={value:o};if(this.#m&&this.#b){g.ttl=this.#m[r];let p=MEe.now()-this.#b[r];g.start=Math.floor(Date.now()-p)}this.#y&&(g.size=this.#y[r]),t.unshift([s,g])}return t}load(t){this.clear();for(let[r,s]of t){if(s.start){let a=Date.now()-s.start;s.start=MEe.now()-a}this.set(r,s.value,s)}}set(t,r,s={}){if(r===void 0)return this.delete(t),this;let{ttl:a=this.ttl,start:o,noDisposeOnSet:g=this.noDisposeOnSet,sizeCalculation:p=this.sizeCalculation,status:f}=s,{noUpdateTTL:m=this.noUpdateTTL}=s,y=this.#L(t,r,s.size||0,p);if(this.maxEntrySize&&y>this.maxEntrySize)return f&&(f.set="miss",f.maxEntrySizeExceeded=!0),this.#S(t,"set"),this;let B=this.#s===0?void 0:this.#g.get(t);if(B===void 0)B=this.#s===0?this.#A:this.#_.length!==0?this.#_.pop():this.#s===this.#e?this.#k(!1):this.#s,this.#c[B]=t,this.#o[B]=r,this.#g.set(t,B),this.#f[this.#A]=B,this.#C[B]=this.#A,this.#A=B,this.#s++,this.#x(B,y,f),f&&(f.set="add"),m=!1;else{this.#D(B);let v=this.#o[B];if(r!==v){if(this.#T&&this.#l(v)){v.__abortController.abort(new Error("replaced"));let{__staleWhileFetching:G}=v;G!==void 0&&!g&&(this.#E&&this.#r?.(G,t,"set"),this.#I&&this.#d?.push([G,t,"set"]))}else g||(this.#E&&this.#r?.(v,t,"set"),this.#I&&this.#d?.push([v,t,"set"]));if(this.#R(B),this.#x(B,y,f),this.#o[B]=r,f){f.set="replace";let G=v&&this.#l(v)?v.__staleWhileFetching:v;G!==void 0&&(f.oldValue=G)}}else f&&(f.set="update")}if(a!==0&&!this.#m&&this.#F(),this.#m&&(m||this.#Z(B,a,o),f&&this.#w(f,B)),!g&&this.#I&&this.#d){let v=this.#d,G;for(;G=v?.shift();)this.#n?.(...G)}return this}pop(){try{for(;this.#s;){let t=this.#o[this.#p];if(this.#k(!0),this.#l(t)){if(t.__staleWhileFetching)return t.__staleWhileFetching}else if(t!==void 0)return t}}finally{if(this.#I&&this.#d){let t=this.#d,r;for(;r=t?.shift();)this.#n?.(...r)}}}#k(t){let r=this.#p,s=this.#c[r],a=this.#o[r];return this.#T&&this.#l(a)?a.__abortController.abort(new Error("evicted")):(this.#E||this.#I)&&(this.#E&&this.#r?.(a,s,"evict"),this.#I&&this.#d?.push([a,s,"evict"])),this.#R(r),t&&(this.#c[r]=void 0,this.#o[r]=void 0,this.#_.push(r)),this.#s===1?(this.#p=this.#A=0,this.#_.length=0):this.#p=this.#f[r],this.#g.delete(s),this.#s--,r}has(t,r={}){let{updateAgeOnHas:s=this.updateAgeOnHas,status:a}=r,o=this.#g.get(t);if(o!==void 0){let g=this.#o[o];if(this.#l(g)&&g.__staleWhileFetching===void 0)return!1;if(this.#h(o))a&&(a.has="stale",this.#w(a,o));else return s&&this.#N(o),a&&(a.has="hit",this.#w(a,o)),!0}else a&&(a.has="miss");return!1}peek(t,r={}){let{allowStale:s=this.allowStale}=r,a=this.#g.get(t);if(a===void 0||!s&&this.#h(a))return;let o=this.#o[a];return this.#l(o)?o.__staleWhileFetching:o}#G(t,r,s,a){let o=r===void 0?void 0:this.#o[r];if(this.#l(o))return o;let g=new Gat,{signal:p}=s;p?.addEventListener("abort",()=>g.abort(p.reason),{signal:g.signal});let f={signal:g.signal,options:s,context:a},m=(O,X=!1)=>{let{aborted:U}=g.signal,le=s.ignoreFetchAbort&&O!==void 0;if(s.status&&(U&&!X?(s.status.fetchAborted=!0,s.status.fetchError=g.signal.reason,le&&(s.status.fetchAbortIgnored=!0)):s.status.fetchResolved=!0),U&&!le&&!X)return B(g.signal.reason);let ae=G;return this.#o[r]===G&&(O===void 0?ae.__staleWhileFetching?this.#o[r]=ae.__staleWhileFetching:this.#S(t,"fetch"):(s.status&&(s.status.fetchUpdated=!0),this.set(t,O,f.options))),O},y=O=>(s.status&&(s.status.fetchRejected=!0,s.status.fetchError=O),B(O)),B=O=>{let{aborted:X}=g.signal,U=X&&s.allowStaleOnFetchAbort,le=U||s.allowStaleOnFetchRejection,ae=le||s.noDeleteOnFetchRejection,ge=G;if(this.#o[r]===G&&(!ae||ge.__staleWhileFetching===void 0?this.#S(t,"fetch"):U||(this.#o[r]=ge.__staleWhileFetching)),le)return s.status&&ge.__staleWhileFetching!==void 0&&(s.status.returnedStale=!0),ge.__staleWhileFetching;if(ge.__returned===ge)throw O},v=(O,X)=>{let U=this.#i?.(t,o,f);U&&U instanceof Promise&&U.then(le=>O(le===void 0?void 0:le),X),g.signal.addEventListener("abort",()=>{(!s.ignoreFetchAbort||s.allowStaleOnFetchAbort)&&(O(void 0),s.allowStaleOnFetchAbort&&(O=le=>m(le,!0)))})};s.status&&(s.status.fetchDispatched=!0);let G=new Promise(v).then(m,y),T=Object.assign(G,{__abortController:g,__staleWhileFetching:o,__returned:void 0});return r===void 0?(this.set(t,T,{...f.options,status:void 0}),r=this.#g.get(t)):this.#o[r]=T,T}#l(t){if(!this.#T)return!1;let r=t;return!!r&&r instanceof Promise&&r.hasOwnProperty("__staleWhileFetching")&&r.__abortController instanceof Gat}async fetch(t,r={}){let{allowStale:s=this.allowStale,updateAgeOnGet:a=this.updateAgeOnGet,noDeleteOnStaleGet:o=this.noDeleteOnStaleGet,ttl:g=this.ttl,noDisposeOnSet:p=this.noDisposeOnSet,size:f=0,sizeCalculation:m=this.sizeCalculation,noUpdateTTL:y=this.noUpdateTTL,noDeleteOnFetchRejection:B=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:v=this.allowStaleOnFetchRejection,ignoreFetchAbort:G=this.ignoreFetchAbort,allowStaleOnFetchAbort:T=this.allowStaleOnFetchAbort,context:O,forceRefresh:X=!1,status:U,signal:le}=r;if(!this.#T)return U&&(U.fetch="get"),this.get(t,{allowStale:s,updateAgeOnGet:a,noDeleteOnStaleGet:o,status:U});let ae={allowStale:s,updateAgeOnGet:a,noDeleteOnStaleGet:o,ttl:g,noDisposeOnSet:p,size:f,sizeCalculation:m,noUpdateTTL:y,noDeleteOnFetchRejection:B,allowStaleOnFetchRejection:v,allowStaleOnFetchAbort:T,ignoreFetchAbort:G,status:U,signal:le},ge=this.#g.get(t);if(ge===void 0){U&&(U.fetch="miss");let fe=this.#G(t,ge,ae,O);return fe.__returned=fe}else{let fe=this.#o[ge];if(this.#l(fe)){let ke=s&&fe.__staleWhileFetching!==void 0;return U&&(U.fetch="inflight",ke&&(U.returnedStale=!0)),ke?fe.__staleWhileFetching:fe.__returned=fe}let pe=this.#h(ge);if(!X&&!pe)return U&&(U.fetch="hit"),this.#D(ge),a&&this.#N(ge),U&&this.#w(U,ge),fe;let he=this.#G(t,ge,ae,O),Te=he.__staleWhileFetching!==void 0&&s;return U&&(U.fetch=pe?"stale":"refresh",Te&&pe&&(U.returnedStale=!0)),Te?he.__staleWhileFetching:he.__returned=he}}async forceFetch(t,r={}){let s=await this.fetch(t,r);if(s===void 0)throw new Error("fetch() returned undefined");return s}memo(t,r={}){let s=this.#a;if(!s)throw new Error("no memoMethod provided to constructor");let{context:a,forceRefresh:o,...g}=r,p=this.get(t,g);if(!o&&p!==void 0)return p;let f=s(t,p,{options:g,context:a});return this.set(t,f,g),f}get(t,r={}){let{allowStale:s=this.allowStale,updateAgeOnGet:a=this.updateAgeOnGet,noDeleteOnStaleGet:o=this.noDeleteOnStaleGet,status:g}=r,p=this.#g.get(t);if(p!==void 0){let f=this.#o[p],m=this.#l(f);return g&&this.#w(g,p),this.#h(p)?(g&&(g.get="stale"),m?(g&&s&&f.__staleWhileFetching!==void 0&&(g.returnedStale=!0),s?f.__staleWhileFetching:void 0):(o||this.#S(t,"expire"),g&&s&&(g.returnedStale=!0),s?f:void 0)):(g&&(g.get="hit"),m?f.__staleWhileFetching:(this.#D(p),a&&this.#N(p),f))}else g&&(g.get="miss")}#W(t,r){this.#C[r]=t,this.#f[t]=r}#D(t){t!==this.#A&&(t===this.#p?this.#p=this.#f[t]:this.#W(this.#C[t],this.#f[t]),this.#W(this.#A,t),this.#A=t)}delete(t){return this.#S(t,"delete")}#S(t,r){let s=!1;if(this.#s!==0){let a=this.#g.get(t);if(a!==void 0)if(s=!0,this.#s===1)this.#P(r);else{this.#R(a);let o=this.#o[a];if(this.#l(o)?o.__abortController.abort(new Error("deleted")):(this.#E||this.#I)&&(this.#E&&this.#r?.(o,t,r),this.#I&&this.#d?.push([o,t,r])),this.#g.delete(t),this.#c[a]=void 0,this.#o[a]=void 0,a===this.#A)this.#A=this.#C[a];else if(a===this.#p)this.#p=this.#f[a];else{let g=this.#C[a];this.#f[g]=this.#f[a];let p=this.#f[a];this.#C[p]=this.#C[a]}this.#s--,this.#_.push(a)}}if(this.#I&&this.#d?.length){let a=this.#d,o;for(;o=a?.shift();)this.#n?.(...o)}return s}clear(){return this.#P("delete")}#P(t){for(let r of this.#v({allowStale:!0})){let s=this.#o[r];if(this.#l(s))s.__abortController.abort(new Error("deleted"));else{let a=this.#c[r];this.#E&&this.#r?.(s,a,t),this.#I&&this.#d?.push([s,a,t])}}if(this.#g.clear(),this.#o.fill(void 0),this.#c.fill(void 0),this.#m&&this.#b&&(this.#m.fill(0),this.#b.fill(0)),this.#y&&this.#y.fill(0),this.#p=0,this.#A=0,this.#_.length=0,this.#u=0,this.#s=0,this.#I&&this.#d){let r=this.#d,s;for(;s=r?.shift();)this.#n?.(...s)}}};Fat.LRUCache=B6t});var Z0n=z((kHc,F0n)=>{"use strict";var C_=(...e)=>e.every(t=>t)?e.join(""):"",mw=e=>e?encodeURIComponent(e):"",G0n=e=>e.toLowerCase().replace(/^\W+|\/|\W+$/g,"").replace(/\W+/g,"-"),R$s={sshtemplate:({domain:e,user:t,project:r,committish:s})=>`git@${e}:${t}/${r}.git${C_("#",s)}`,sshurltemplate:({domain:e,user:t,project:r,committish:s})=>`git+ssh://git@${e}/${t}/${r}.git${C_("#",s)}`,edittemplate:({domain:e,user:t,project:r,committish:s,editpath:a,path:o})=>`https://${e}/${t}/${r}${C_("/",a,"/",mw(s||"HEAD"),"/",o)}`,browsetemplate:({domain:e,user:t,project:r,committish:s,treepath:a})=>`https://${e}/${t}/${r}${C_("/",a,"/",mw(s))}`,browsetreetemplate:({domain:e,user:t,project:r,committish:s,treepath:a,path:o,fragment:g,hashformat:p})=>`https://${e}/${t}/${r}/${a}/${mw(s||"HEAD")}/${o}${C_("#",p(g||""))}`,browseblobtemplate:({domain:e,user:t,project:r,committish:s,blobpath:a,path:o,fragment:g,hashformat:p})=>`https://${e}/${t}/${r}/${a}/${mw(s||"HEAD")}/${o}${C_("#",p(g||""))}`,docstemplate:({domain:e,user:t,project:r,treepath:s,committish:a})=>`https://${e}/${t}/${r}${C_("/",s,"/",mw(a))}#readme`,httpstemplate:({auth:e,domain:t,user:r,project:s,committish:a})=>`git+https://${C_(e,"@")}${t}/${r}/${s}.git${C_("#",a)}`,filetemplate:({domain:e,user:t,project:r,committish:s,path:a})=>`https://${e}/${t}/${r}/raw/${mw(s||"HEAD")}/${a}`,shortcuttemplate:({type:e,user:t,project:r,committish:s})=>`${e}:${t}/${r}${C_("#",s)}`,pathtemplate:({user:e,project:t,committish:r})=>`${e}/${t}${C_("#",r)}`,bugstemplate:({domain:e,user:t,project:r})=>`https://${e}/${t}/${r}/issues`,hashformat:G0n},Kne={};Kne.github={protocols:["git:","http:","git+ssh:","git+https:","ssh:","https:"],domain:"github.com",treepath:"tree",blobpath:"blob",editpath:"edit",filetemplate:({auth:e,user:t,project:r,committish:s,path:a})=>`https://${C_(e,"@")}raw.githubusercontent.com/${t}/${r}/${mw(s||"HEAD")}/${a}`,gittemplate:({auth:e,domain:t,user:r,project:s,committish:a})=>`git://${C_(e,"@")}${t}/${r}/${s}.git${C_("#",a)}`,tarballtemplate:({domain:e,user:t,project:r,committish:s})=>`https://codeload.${e}/${t}/${r}/tar.gz/${mw(s||"HEAD")}`,extract:e=>{let[,t,r,s,a]=e.pathname.split("/",5);if(!(s&&s!=="tree")&&(s||(a=e.hash.slice(1)),r&&r.endsWith(".git")&&(r=r.slice(0,-4)),!(!t||!r)))return{user:t,project:r,committish:a}}};Kne.bitbucket={protocols:["git+ssh:","git+https:","ssh:","https:"],domain:"bitbucket.org",treepath:"src",blobpath:"src",editpath:"?mode=edit",edittemplate:({domain:e,user:t,project:r,committish:s,treepath:a,path:o,editpath:g})=>`https://${e}/${t}/${r}${C_("/",a,"/",mw(s||"HEAD"),"/",o,g)}`,tarballtemplate:({domain:e,user:t,project:r,committish:s})=>`https://${e}/${t}/${r}/get/${mw(s||"HEAD")}.tar.gz`,extract:e=>{let[,t,r,s]=e.pathname.split("/",4);if(!["get"].includes(s)&&(r&&r.endsWith(".git")&&(r=r.slice(0,-4)),!(!t||!r)))return{user:t,project:r,committish:e.hash.slice(1)}}};Kne.gitlab={protocols:["git+ssh:","git+https:","ssh:","https:"],domain:"gitlab.com",treepath:"tree",blobpath:"tree",editpath:"-/edit",httpstemplate:({auth:e,domain:t,user:r,project:s,committish:a})=>`git+https://${C_(e,"@")}${t}/${r}/${s}.git${C_("#",a)}`,tarballtemplate:({domain:e,user:t,project:r,committish:s})=>`https://${e}/${t}/${r}/repository/archive.tar.gz?ref=${mw(s||"HEAD")}`,extract:e=>{let t=e.pathname.slice(1);if(t.includes("/-/")||t.includes("/archive.tar.gz"))return;let r=t.split("/"),s=r.pop();s.endsWith(".git")&&(s=s.slice(0,-4));let a=r.join("/");if(!(!a||!s))return{user:a,project:s,committish:e.hash.slice(1)}}};Kne.gist={protocols:["git:","git+ssh:","git+https:","ssh:","https:"],domain:"gist.github.com",editpath:"edit",sshtemplate:({domain:e,project:t,committish:r})=>`git@${e}:${t}.git${C_("#",r)}`,sshurltemplate:({domain:e,project:t,committish:r})=>`git+ssh://git@${e}/${t}.git${C_("#",r)}`,edittemplate:({domain:e,user:t,project:r,committish:s,editpath:a})=>`https://${e}/${t}/${r}${C_("/",mw(s))}/${a}`,browsetemplate:({domain:e,project:t,committish:r})=>`https://${e}/${t}${C_("/",mw(r))}`,browsetreetemplate:({domain:e,project:t,committish:r,path:s,hashformat:a})=>`https://${e}/${t}${C_("/",mw(r))}${C_("#",a(s))}`,browseblobtemplate:({domain:e,project:t,committish:r,path:s,hashformat:a})=>`https://${e}/${t}${C_("/",mw(r))}${C_("#",a(s))}`,docstemplate:({domain:e,project:t,committish:r})=>`https://${e}/${t}${C_("/",mw(r))}`,httpstemplate:({domain:e,project:t,committish:r})=>`git+https://${e}/${t}.git${C_("#",r)}`,filetemplate:({user:e,project:t,committish:r,path:s})=>`https://gist.githubusercontent.com/${e}/${t}/raw${C_("/",mw(r))}/${s}`,shortcuttemplate:({type:e,project:t,committish:r})=>`${e}:${t}${C_("#",r)}`,pathtemplate:({project:e,committish:t})=>`${e}${C_("#",t)}`,bugstemplate:({domain:e,project:t})=>`https://${e}/${t}`,gittemplate:({domain:e,project:t,committish:r})=>`git://${e}/${t}.git${C_("#",r)}`,tarballtemplate:({project:e,committish:t})=>`https://codeload.github.com/gist/${e}/tar.gz/${mw(t||"HEAD")}`,extract:e=>{let[,t,r,s]=e.pathname.split("/",4);if(s!=="raw"){if(!r){if(!t)return;r=t,t=null}return r.endsWith(".git")&&(r=r.slice(0,-4)),{user:t,project:r,committish:e.hash.slice(1)}}},hashformat:function(e){return e&&"file-"+G0n(e)}};Kne.sourcehut={protocols:["git+ssh:","https:"],domain:"git.sr.ht",treepath:"tree",blobpath:"tree",filetemplate:({domain:e,user:t,project:r,committish:s,path:a})=>`https://${e}/${t}/${r}/blob/${mw(s)||"HEAD"}/${a}`,httpstemplate:({domain:e,user:t,project:r,committish:s})=>`https://${e}/${t}/${r}.git${C_("#",s)}`,tarballtemplate:({domain:e,user:t,project:r,committish:s})=>`https://${e}/${t}/${r}/archive/${mw(s)||"HEAD"}.tar.gz`,bugstemplate:()=>null,extract:e=>{let[,t,r,s]=e.pathname.split("/",4);if(!["archive"].includes(s)&&(r&&r.endsWith(".git")&&(r=r.slice(0,-4)),!(!t||!r)))return{user:t,project:r,committish:e.hash.slice(1)}}};for(let[e,t]of Object.entries(Kne))Kne[e]=Object.assign({},R$s,t);F0n.exports=Kne});var S6t=z((GHc,V0n)=>{var D$s=Dt("url"),v6t=(e,t,r)=>{let s=e.indexOf(r);return e.lastIndexOf(t,s>-1?s:1/0)},L0n=e=>{try{return new D$s.URL(e)}catch{}},x$s=(e,t)=>{let r=e.indexOf(":"),s=e.slice(0,r+1);if(Object.prototype.hasOwnProperty.call(t,s))return e;let a=e.indexOf("@");return a>-1?a>r?`git+ssh://${e}`:e:e.indexOf("//")===r+1?e:`${e.slice(0,r+1)}//${e.slice(r+1)}`},k$s=e=>{let t=v6t(e,"@","#"),r=v6t(e,":","#");return r>t&&(e=e.slice(0,r)+"/"+e.slice(r+1)),v6t(e,":","#")===-1&&e.indexOf("//")===-1&&(e=`git+ssh://${e}`),e};V0n.exports=(e,t)=>{let r=t?x$s(e,t):e;return L0n(r)||L0n(k$s(r))}});var P0n=z((FHc,W0n)=>{"use strict";var G$s=S6t(),F$s=e=>{let t=e.indexOf("#"),r=e.indexOf("/"),s=e.indexOf("/",r+1),a=e.indexOf(":"),o=/\s/.exec(e),g=e.indexOf("@"),p=!o||t>-1&&o.index>t,f=g===-1||t>-1&&g>t,m=a===-1||t>-1&&a>t,y=s===-1||t>-1&&s>t,B=r>0,v=t>-1?e[t-1]!=="/":!e.endsWith("/"),G=!e.startsWith(".");return p&&B&&v&&G&&f&&m&&y};W0n.exports=(e,t,{gitHosts:r,protocols:s})=>{if(!e)return;let a=F$s(e)?`github:${e}`:e,o=G$s(a,s);if(!o)return;let g=r.byShortcut[o.protocol],p=r.byDomain[o.hostname.startsWith("www.")?o.hostname.slice(4):o.hostname],f=g||p;if(!f)return;let m=r[g||p],y=null;s[o.protocol]?.auth&&(o.username||o.password)&&(y=`${o.username}${o.password?":"+o.password:""}`);let B=null,v=null,G=null,T=null;try{if(g){let O=o.pathname.startsWith("/")?o.pathname.slice(1):o.pathname,X=O.indexOf("@");X>-1&&(O=O.slice(X+1));let U=O.lastIndexOf("/");U>-1?(v=decodeURIComponent(O.slice(0,U)),v||(v=null),G=decodeURIComponent(O.slice(U+1))):G=decodeURIComponent(O),G.endsWith(".git")&&(G=G.slice(0,-4)),o.hash&&(B=decodeURIComponent(o.hash.slice(1))),T="shortcut"}else{if(!m.protocols.includes(o.protocol))return;let O=m.extract(o);if(!O)return;v=O.user&&decodeURIComponent(O.user),G=decodeURIComponent(O.project),B=decodeURIComponent(O.committish),T=s[o.protocol]?.name||o.protocol.slice(0,-1)}}catch(O){if(O instanceof URIError)return;throw O}return[f,v,y,G,B,T,t]}});var T6t=z((ZHc,O0n)=>{"use strict";var{LRUCache:Z$s}=k0n(),L$s=Z0n(),V$s=P0n(),W$s=S6t(),w6t=new Z$s({max:1e3}),Zat=class e{constructor(t,r,s,a,o,g,p={}){Object.assign(this,e.#e[t],{type:t,user:r,auth:s,project:a,committish:o,default:g,opts:p})}static#e={byShortcut:{},byDomain:{}};static#t={"git+ssh:":{name:"sshurl"},"ssh:":{name:"sshurl"},"git+https:":{name:"https",auth:!0},"git:":{auth:!0},"http:":{auth:!0},"https:":{auth:!0},"git+http:":{auth:!0}};static addHost(t,r){e.#e[t]=r,e.#e.byDomain[r.domain]=t,e.#e.byShortcut[`${t}:`]=t,e.#t[`${t}:`]={name:t}}static fromUrl(t,r){if(typeof t!="string")return;let s=t+JSON.stringify(r||{});if(!w6t.has(s)){let a=V$s(t,r,{gitHosts:e.#e,protocols:e.#t});w6t.set(s,a?new e(...a):void 0)}return w6t.get(s)}static parseUrl(t){return W$s(t)}#r(t,r){if(typeof t!="function")return null;let s={...this,...this.opts,...r};s.path||(s.path=""),s.path.startsWith("/")&&(s.path=s.path.slice(1)),s.noCommittish&&(s.committish=null);let a=t(s);return s.noGitPlus&&a.startsWith("git+")?a.slice(4):a}hash(){return this.committish?`#${this.committish}`:""}ssh(t){return this.#r(this.sshtemplate,t)}sshurl(t){return this.#r(this.sshurltemplate,t)}browse(t,...r){return typeof t!="string"?this.#r(this.browsetemplate,t):typeof r[0]!="string"?this.#r(this.browsetreetemplate,{...r[0],path:t}):this.#r(this.browsetreetemplate,{...r[1],fragment:r[0],path:t})}browseFile(t,...r){return typeof r[0]!="string"?this.#r(this.browseblobtemplate,{...r[0],path:t}):this.#r(this.browseblobtemplate,{...r[1],fragment:r[0],path:t})}docs(t){return this.#r(this.docstemplate,t)}bugs(t){return this.#r(this.bugstemplate,t)}https(t){return this.#r(this.httpstemplate,t)}git(t){return this.#r(this.gittemplate,t)}shortcut(t){return this.#r(this.shortcuttemplate,t)}path(t){return this.#r(this.pathtemplate,t)}tarball(t){return this.#r(this.tarballtemplate,{...t,noCommittish:!1})}file(t,r){return this.#r(this.filetemplate,{...r,path:t})}edit(t,r){return this.#r(this.edittemplate,{...r,path:t})}getDefaultRepresentation(){return this.default}toString(t){return this.default&&typeof this[this.default]=="function"?this[this.default](t):this.sshurl(t)}};for(let[e,t]of Object.entries(L$s))Zat.addHost(e,t);O0n.exports=Zat});var Q0n=z((LHc,M0n)=>{"use strict";var{URL:P$s}=Dt("url"),O$s=new RegExp(/^\/?:?([/\w-.]+)\/([\w-.]+)\/?$/),M$s=new RegExp(/^\/repos\/([\w-.]+)\/([\w-.]+)\/(?:tarball|zipball)(?:\/.+)?$/),Q$s=new RegExp(/^\/([\w-.]+)\/([\w-.]+)\/(?:legacy\.(?:zip|tar\.gz))(?:\/.+)?$/);M0n.exports=e=>{let t=e.replace(/^git@/,"https://git@").replace(/git@([.\w]+):(?!\d)/,"git@$1/").replace(/\.git$/,""),r=new P$s(t,"https://example.com/"),s=a=>({browse:H$s(r,a),domain:r.host,project:a[2]||null,type:Y$s(r),user:a[1]||null});if(r.host){if(r.host.includes("api.github.com")){let a=M$s.exec(r.pathname)||[];return s(a)}if(r.host.includes("codeload.github.com")){let a=Q$s.exec(r.pathname)||[];return s(a)}}return s(O$s.exec(r.pathname)||[])};function Y$s({host:e}){return typeof e!="string"?null:e.indexOf("github")!==-1?"github":e.indexOf("gitlab")!==-1?"gitlab":null}function H$s(e,t){let s=`${e.protocol==="http:"?"http:":"https:"}//${e.host}/${t[1]}/${t[2]}`;return()=>s}});var N6t=z((PHc,J$s)=>{J$s.exports=["0BSD","3D-Slicer-1.0","AAL","ADSL","AFL-1.1","AFL-1.2","AFL-2.0","AFL-2.1","AFL-3.0","AGPL-1.0-only","AGPL-1.0-or-later","AGPL-3.0-only","AGPL-3.0-or-later","AMD-newlib","AMDPLPA","AML","AML-glslang","AMPAS","ANTLR-PD","ANTLR-PD-fallback","APAFML","APL-1.0","APSL-1.0","APSL-1.1","APSL-1.2","APSL-2.0","ASWF-Digital-Assets-1.0","ASWF-Digital-Assets-1.1","Abstyles","AdaCore-doc","Adobe-2006","Adobe-Display-PostScript","Adobe-Glyph","Adobe-Utopia","Afmparse","Aladdin","Apache-1.0","Apache-1.1","Apache-2.0","App-s2p","Arphic-1999","Artistic-1.0","Artistic-1.0-Perl","Artistic-1.0-cl8","Artistic-2.0","BSD-1-Clause","BSD-2-Clause","BSD-2-Clause-Darwin","BSD-2-Clause-Patent","BSD-2-Clause-Views","BSD-2-Clause-first-lines","BSD-3-Clause","BSD-3-Clause-Attribution","BSD-3-Clause-Clear","BSD-3-Clause-HP","BSD-3-Clause-LBNL","BSD-3-Clause-Modification","BSD-3-Clause-No-Military-License","BSD-3-Clause-No-Nuclear-License","BSD-3-Clause-No-Nuclear-License-2014","BSD-3-Clause-No-Nuclear-Warranty","BSD-3-Clause-Open-MPI","BSD-3-Clause-Sun","BSD-3-Clause-acpica","BSD-3-Clause-flex","BSD-4-Clause","BSD-4-Clause-Shortened","BSD-4-Clause-UC","BSD-4.3RENO","BSD-4.3TAHOE","BSD-Advertising-Acknowledgement","BSD-Attribution-HPND-disclaimer","BSD-Inferno-Nettverk","BSD-Protection","BSD-Source-Code","BSD-Source-beginning-file","BSD-Systemics","BSD-Systemics-W3Works","BSL-1.0","BUSL-1.1","Baekmuk","Bahyph","Barr","Beerware","BitTorrent-1.0","BitTorrent-1.1","Bitstream-Charter","Bitstream-Vera","BlueOak-1.0.0","Boehm-GC","Borceux","Brian-Gladman-2-Clause","Brian-Gladman-3-Clause","C-UDA-1.0","CAL-1.0","CAL-1.0-Combined-Work-Exception","CATOSL-1.1","CC-BY-1.0","CC-BY-2.0","CC-BY-2.5","CC-BY-2.5-AU","CC-BY-3.0","CC-BY-3.0-AT","CC-BY-3.0-AU","CC-BY-3.0-DE","CC-BY-3.0-IGO","CC-BY-3.0-NL","CC-BY-3.0-US","CC-BY-4.0","CC-BY-NC-1.0","CC-BY-NC-2.0","CC-BY-NC-2.5","CC-BY-NC-3.0","CC-BY-NC-3.0-DE","CC-BY-NC-4.0","CC-BY-NC-ND-1.0","CC-BY-NC-ND-2.0","CC-BY-NC-ND-2.5","CC-BY-NC-ND-3.0","CC-BY-NC-ND-3.0-DE","CC-BY-NC-ND-3.0-IGO","CC-BY-NC-ND-4.0","CC-BY-NC-SA-1.0","CC-BY-NC-SA-2.0","CC-BY-NC-SA-2.0-DE","CC-BY-NC-SA-2.0-FR","CC-BY-NC-SA-2.0-UK","CC-BY-NC-SA-2.5","CC-BY-NC-SA-3.0","CC-BY-NC-SA-3.0-DE","CC-BY-NC-SA-3.0-IGO","CC-BY-NC-SA-4.0","CC-BY-ND-1.0","CC-BY-ND-2.0","CC-BY-ND-2.5","CC-BY-ND-3.0","CC-BY-ND-3.0-DE","CC-BY-ND-4.0","CC-BY-SA-1.0","CC-BY-SA-2.0","CC-BY-SA-2.0-UK","CC-BY-SA-2.1-JP","CC-BY-SA-2.5","CC-BY-SA-3.0","CC-BY-SA-3.0-AT","CC-BY-SA-3.0-DE","CC-BY-SA-3.0-IGO","CC-BY-SA-4.0","CC-PDDC","CC0-1.0","CDDL-1.0","CDDL-1.1","CDL-1.0","CDLA-Permissive-1.0","CDLA-Permissive-2.0","CDLA-Sharing-1.0","CECILL-1.0","CECILL-1.1","CECILL-2.0","CECILL-2.1","CECILL-B","CECILL-C","CERN-OHL-1.1","CERN-OHL-1.2","CERN-OHL-P-2.0","CERN-OHL-S-2.0","CERN-OHL-W-2.0","CFITSIO","CMU-Mach","CMU-Mach-nodoc","CNRI-Jython","CNRI-Python","CNRI-Python-GPL-Compatible","COIL-1.0","CPAL-1.0","CPL-1.0","CPOL-1.02","CUA-OPL-1.0","Caldera","Caldera-no-preamble","Catharon","ClArtistic","Clips","Community-Spec-1.0","Condor-1.1","Cornell-Lossless-JPEG","Cronyx","Crossword","CrystalStacker","Cube","D-FSL-1.0","DEC-3-Clause","DL-DE-BY-2.0","DL-DE-ZERO-2.0","DOC","DRL-1.0","DRL-1.1","DSDP","DocBook-Schema","DocBook-XML","Dotseqn","ECL-1.0","ECL-2.0","EFL-1.0","EFL-2.0","EPICS","EPL-1.0","EPL-2.0","EUDatagrid","EUPL-1.0","EUPL-1.1","EUPL-1.2","Elastic-2.0","Entessa","ErlPL-1.1","Eurosym","FBM","FDK-AAC","FSFAP","FSFAP-no-warranty-disclaimer","FSFUL","FSFULLR","FSFULLRWD","FTL","Fair","Ferguson-Twofish","Frameworx-1.0","FreeBSD-DOC","FreeImage","Furuseth","GCR-docs","GD","GFDL-1.1-invariants-only","GFDL-1.1-invariants-or-later","GFDL-1.1-no-invariants-only","GFDL-1.1-no-invariants-or-later","GFDL-1.1-only","GFDL-1.1-or-later","GFDL-1.2-invariants-only","GFDL-1.2-invariants-or-later","GFDL-1.2-no-invariants-only","GFDL-1.2-no-invariants-or-later","GFDL-1.2-only","GFDL-1.2-or-later","GFDL-1.3-invariants-only","GFDL-1.3-invariants-or-later","GFDL-1.3-no-invariants-only","GFDL-1.3-no-invariants-or-later","GFDL-1.3-only","GFDL-1.3-or-later","GL2PS","GLWTPL","GPL-1.0-only","GPL-1.0-or-later","GPL-2.0-only","GPL-2.0-or-later","GPL-3.0-only","GPL-3.0-or-later","Giftware","Glide","Glulxe","Graphics-Gems","Gutmann","HIDAPI","HP-1986","HP-1989","HPND","HPND-DEC","HPND-Fenneberg-Livingston","HPND-INRIA-IMAG","HPND-Intel","HPND-Kevlin-Henney","HPND-MIT-disclaimer","HPND-Markus-Kuhn","HPND-Netrek","HPND-Pbmplus","HPND-UC","HPND-UC-export-US","HPND-doc","HPND-doc-sell","HPND-export-US","HPND-export-US-acknowledgement","HPND-export-US-modify","HPND-export2-US","HPND-merchantability-variant","HPND-sell-MIT-disclaimer-xserver","HPND-sell-regexpr","HPND-sell-variant","HPND-sell-variant-MIT-disclaimer","HPND-sell-variant-MIT-disclaimer-rev","HTMLTIDY","HaskellReport","Hippocratic-2.1","IBM-pibs","ICU","IEC-Code-Components-EULA","IJG","IJG-short","IPA","IPL-1.0","ISC","ISC-Veillard","ImageMagick","Imlib2","Info-ZIP","Inner-Net-2.0","Intel","Intel-ACPI","Interbase-1.0","JPL-image","JPNIC","JSON","Jam","JasPer-2.0","Kastrup","Kazlib","Knuth-CTAN","LAL-1.2","LAL-1.3","LGPL-2.0-only","LGPL-2.0-or-later","LGPL-2.1-only","LGPL-2.1-or-later","LGPL-3.0-only","LGPL-3.0-or-later","LGPLLR","LOOP","LPD-document","LPL-1.0","LPL-1.02","LPPL-1.0","LPPL-1.1","LPPL-1.2","LPPL-1.3a","LPPL-1.3c","LZMA-SDK-9.11-to-9.20","LZMA-SDK-9.22","Latex2e","Latex2e-translated-notice","Leptonica","LiLiQ-P-1.1","LiLiQ-R-1.1","LiLiQ-Rplus-1.1","Libpng","Linux-OpenIB","Linux-man-pages-1-para","Linux-man-pages-copyleft","Linux-man-pages-copyleft-2-para","Linux-man-pages-copyleft-var","Lucida-Bitmap-Fonts","MIT","MIT-0","MIT-CMU","MIT-Festival","MIT-Khronos-old","MIT-Modern-Variant","MIT-Wu","MIT-advertising","MIT-enna","MIT-feh","MIT-open-group","MIT-testregex","MITNFA","MMIXware","MPEG-SSG","MPL-1.0","MPL-1.1","MPL-2.0","MPL-2.0-no-copyleft-exception","MS-LPL","MS-PL","MS-RL","MTLL","Mackerras-3-Clause","Mackerras-3-Clause-acknowledgment","MakeIndex","Martin-Birgmeier","McPhee-slideshow","Minpack","MirOS","Motosoto","MulanPSL-1.0","MulanPSL-2.0","Multics","Mup","NAIST-2003","NASA-1.3","NBPL-1.0","NCBI-PD","NCGL-UK-2.0","NCL","NCSA","NGPL","NICTA-1.0","NIST-PD","NIST-PD-fallback","NIST-Software","NLOD-1.0","NLOD-2.0","NLPL","NOSL","NPL-1.0","NPL-1.1","NPOSL-3.0","NRL","NTP","NTP-0","Naumen","NetCDF","Newsletr","Nokia","Noweb","O-UDA-1.0","OAR","OCCT-PL","OCLC-2.0","ODC-By-1.0","ODbL-1.0","OFFIS","OFL-1.0","OFL-1.0-RFN","OFL-1.0-no-RFN","OFL-1.1","OFL-1.1-RFN","OFL-1.1-no-RFN","OGC-1.0","OGDL-Taiwan-1.0","OGL-Canada-2.0","OGL-UK-1.0","OGL-UK-2.0","OGL-UK-3.0","OGTSL","OLDAP-1.1","OLDAP-1.2","OLDAP-1.3","OLDAP-1.4","OLDAP-2.0","OLDAP-2.0.1","OLDAP-2.1","OLDAP-2.2","OLDAP-2.2.1","OLDAP-2.2.2","OLDAP-2.3","OLDAP-2.4","OLDAP-2.5","OLDAP-2.6","OLDAP-2.7","OLDAP-2.8","OLFL-1.3","OML","OPL-1.0","OPL-UK-3.0","OPUBL-1.0","OSET-PL-2.1","OSL-1.0","OSL-1.1","OSL-2.0","OSL-2.1","OSL-3.0","OpenPBS-2.3","OpenSSL","OpenSSL-standalone","OpenVision","PADL","PDDL-1.0","PHP-3.0","PHP-3.01","PPL","PSF-2.0","Parity-6.0.0","Parity-7.0.0","Pixar","Plexus","PolyForm-Noncommercial-1.0.0","PolyForm-Small-Business-1.0.0","PostgreSQL","Python-2.0","Python-2.0.1","QPL-1.0","QPL-1.0-INRIA-2004","Qhull","RHeCos-1.1","RPL-1.1","RPL-1.5","RPSL-1.0","RSA-MD","RSCPL","Rdisc","Ruby","Ruby-pty","SAX-PD","SAX-PD-2.0","SCEA","SGI-B-1.0","SGI-B-1.1","SGI-B-2.0","SGI-OpenGL","SGP4","SHL-0.5","SHL-0.51","SISSL","SISSL-1.2","SL","SMLNJ","SMPPL","SNIA","SPL-1.0","SSH-OpenSSH","SSH-short","SSLeay-standalone","SSPL-1.0","SWL","Saxpath","SchemeReport","Sendmail","Sendmail-8.23","SimPL-2.0","Sleepycat","Soundex","Spencer-86","Spencer-94","Spencer-99","SugarCRM-1.1.3","Sun-PPP","Sun-PPP-2000","SunPro","Symlinks","TAPR-OHL-1.0","TCL","TCP-wrappers","TGPPL-1.0","TMate","TORQUE-1.1","TOSL","TPDL","TPL-1.0","TTWL","TTYP0","TU-Berlin-1.0","TU-Berlin-2.0","TermReadKey","UCAR","UCL-1.0","UMich-Merit","UPL-1.0","URT-RLE","Ubuntu-font-1.0","Unicode-3.0","Unicode-DFS-2015","Unicode-DFS-2016","Unicode-TOU","UnixCrypt","Unlicense","VOSTROM","VSL-1.0","Vim","W3C","W3C-19980720","W3C-20150513","WTFPL","Watcom-1.0","Widget-Workshop","Wsuipa","X11","X11-distribute-modifications-variant","X11-swapped","XFree86-1.1","XSkat","Xdebug-1.03","Xerox","Xfig","Xnet","YPL-1.0","YPL-1.1","ZPL-1.1","ZPL-2.0","ZPL-2.1","Zed","Zeeff","Zend-2.0","Zimbra-1.3","Zimbra-1.4","Zlib","any-OSI","bcrypt-Solar-Designer","blessing","bzip2-1.0.6","check-cvs","checkmk","copyleft-next-0.3.0","copyleft-next-0.3.1","curl","cve-tou","diffmark","dtoa","dvipdfm","eGenix","etalab-2.0","fwlw","gSOAP-1.3b","gnuplot","gtkbook","hdparm","iMatix","libpng-2.0","libselinux-1.0","libtiff","libutil-David-Nugent","lsof","magaz","mailprio","metamail","mpi-permissive","mpich2","mplus","pkgconf","pnmstitch","psfrag","psutils","python-ldap","radvd","snprintf","softSurfer","ssh-keyscan","swrule","threeparttable","ulem","w3m","xinetd","xkeyboard-config-Zinoviev","xlock","xpp","xzoom","zlib-acknowledgement"]});var H0n=z((OHc,U$s)=>{U$s.exports=["AGPL-1.0","AGPL-3.0","BSD-2-Clause-FreeBSD","BSD-2-Clause-NetBSD","GFDL-1.1","GFDL-1.2","GFDL-1.3","GPL-1.0","GPL-2.0","GPL-2.0-with-GCC-exception","GPL-2.0-with-autoconf-exception","GPL-2.0-with-bison-exception","GPL-2.0-with-classpath-exception","GPL-2.0-with-font-exception","GPL-3.0","GPL-3.0-with-GCC-exception","GPL-3.0-with-autoconf-exception","LGPL-2.0","LGPL-2.1","LGPL-3.0","Net-SNMP","Nunit","StandardML-NJ","bzip2-1.0.5","eCos-2.0","wxWindows"]});var X0n=z((MHc,K$s)=>{K$s.exports=["389-exception","Asterisk-exception","Autoconf-exception-2.0","Autoconf-exception-3.0","Autoconf-exception-generic","Autoconf-exception-generic-3.0","Autoconf-exception-macro","Bison-exception-1.24","Bison-exception-2.2","Bootloader-exception","Classpath-exception-2.0","CLISP-exception-2.0","cryptsetup-OpenSSL-exception","DigiRule-FOSS-exception","eCos-exception-2.0","Fawkes-Runtime-exception","FLTK-exception","fmt-exception","Font-exception-2.0","freertos-exception-2.0","GCC-exception-2.0","GCC-exception-2.0-note","GCC-exception-3.1","Gmsh-exception","GNAT-exception","GNOME-examples-exception","GNU-compiler-exception","gnu-javamail-exception","GPL-3.0-interface-exception","GPL-3.0-linking-exception","GPL-3.0-linking-source-exception","GPL-CC-1.0","GStreamer-exception-2005","GStreamer-exception-2008","i2p-gpl-java-exception","KiCad-libraries-exception","LGPL-3.0-linking-exception","libpri-OpenH323-exception","Libtool-exception","Linux-syscall-note","LLGPL","LLVM-exception","LZMA-exception","mif-exception","OCaml-LGPL-linking-exception","OCCT-exception-1.0","OpenJDK-assembly-exception-1.0","openvpn-openssl-exception","PS-or-PDF-font-exception-20170817","QPL-1.0-INRIA-2004-exception","Qt-GPL-exception-1.0","Qt-LGPL-exception-1.1","Qwt-exception-1.0","SANE-exception","SHL-2.0","SHL-2.1","stunnel-exception","SWI-exception","Swift-exception","Texinfo-exception","u-boot-exception-2.0","UBDL-exception","Universal-FOSS-exception-1.0","vsftpd-openssl-exception","WxWindows-exception-3.1","x11vnc-openssl-exception"]});var U0n=z((QHc,J0n)=>{"use strict";var j$s=[].concat(N6t()).concat(H0n()),z$s=X0n();J0n.exports=function(e){var t=0;function r(){return t1&&e[t-2]===" ")throw new Error("Space before `+`");return T&&{type:"OPERATOR",string:T}}function g(){return s(/[A-Za-z0-9-.]+/)}function p(){var T=g();if(!T)throw new Error("Expected idstring at offset "+t);return T}function f(){if(s("DocumentRef-")){var T=p();return{type:"DOCUMENTREF",string:T}}}function m(){if(s("LicenseRef-")){var T=p();return{type:"LICENSEREF",string:T}}}function y(){var T=t,O=g();if(j$s.indexOf(O)!==-1)return{type:"LICENSE",string:O};if(z$s.indexOf(O)!==-1)return{type:"EXCEPTION",string:O};t=T}function B(){return o()||f()||m()||y()}for(var v=[];r()&&(a(),!!r());){var G=B();if(!G)throw new Error("Unexpected `"+e[t]+"` at offset "+t);v.push(G)}return v}});var j0n=z((YHc,K0n)=>{"use strict";K0n.exports=function(e){var t=0;function r(){return t{"use strict";var q$s=U0n(),$$s=j0n();z0n.exports=function(e){return $$s(q$s(e))}});var oyn=z((XHc,syn)=>{var eeo=R6t(),teo=N6t();function Lat(e){try{return eeo(e),!0}catch{return!1}}function iyn(e,t){var r=t[0].length-e[0].length;return r!==0?r:e[0].toUpperCase().localeCompare(t[0].toUpperCase())}var q0n=[["APGL","AGPL"],["Gpl","GPL"],["GLP","GPL"],["APL","Apache"],["ISD","ISC"],["GLP","GPL"],["IST","ISC"],["Claude","Clause"],[" or later","+"],[" International",""],["GNU","GPL"],["GUN","GPL"],["+",""],["GNU GPL","GPL"],["GNU LGPL","LGPL"],["GNU/GPL","GPL"],["GNU GLP","GPL"],["GNU LESSER GENERAL PUBLIC LICENSE","LGPL"],["GNU Lesser General Public License","LGPL"],["GNU LESSER GENERAL PUBLIC LICENSE","LGPL-2.1"],["GNU Lesser General Public License","LGPL-2.1"],["LESSER GENERAL PUBLIC LICENSE","LGPL"],["Lesser General Public License","LGPL"],["LESSER GENERAL PUBLIC LICENSE","LGPL-2.1"],["Lesser General Public License","LGPL-2.1"],["GNU General Public License","GPL"],["Gnu public license","GPL"],["GNU Public License","GPL"],["GNU GENERAL PUBLIC LICENSE","GPL"],["MTI","MIT"],["Mozilla Public License","MPL"],["Universal Permissive License","UPL"],["WTH","WTF"],["WTFGPL","WTFPL"],["-License",""]].sort(iyn),reo=0,neo=1,$0n=[function(e){return e.toUpperCase()},function(e){return e.trim()},function(e){return e.replace(/\./g,"")},function(e){return e.replace(/\s+/g,"")},function(e){return e.replace(/\s+/g,"-")},function(e){return e.replace("v","-")},function(e){return e.replace(/,?\s*(\d)/,"-$1")},function(e){return e.replace(/,?\s*(\d)/,"-$1.0")},function(e){return e.replace(/,?\s*(V\.|v\.|V|v|Version|version)\s*(\d)/,"-$2")},function(e){return e.replace(/,?\s*(V\.|v\.|V|v|Version|version)\s*(\d)/,"-$2.0")},function(e){return e[0].toUpperCase()+e.slice(1)},function(e){return e.replace("/","-")},function(e){return e.replace(/\s*V\s*(\d)/,"-$1").replace(/(\d)$/,"$1.0")},function(e){return e.indexOf("3.0")!==-1?e+"-or-later":e+"-only"},function(e){return e+"only"},function(e){return e.replace(/(\d)$/,"-$1.0")},function(e){return e.replace(/(-| )?(\d)$/,"-$2-Clause")},function(e){return e.replace(/(-| )clause(-| )(\d)/,"-$3-Clause")},function(e){return e.replace(/\b(Modified|New|Revised)(-| )?BSD((-| )License)?/i,"BSD-3-Clause")},function(e){return e.replace(/\bSimplified(-| )?BSD((-| )License)?/i,"BSD-2-Clause")},function(e){return e.replace(/\b(Free|Net)(-| )?BSD((-| )License)?/i,"BSD-2-Clause-$1BSD")},function(e){return e.replace(/\bClear(-| )?BSD((-| )License)?/i,"BSD-3-Clause-Clear")},function(e){return e.replace(/\b(Old|Original)(-| )?BSD((-| )License)?/i,"BSD-4-Clause")},function(e){return"CC-"+e},function(e){return"CC-"+e+"-4.0"},function(e){return e.replace("Attribution","BY").replace("NonCommercial","NC").replace("NoDerivatives","ND").replace(/ (\d)/,"-$1").replace(/ ?International/,"")},function(e){return"CC-"+e.replace("Attribution","BY").replace("NonCommercial","NC").replace("NoDerivatives","ND").replace(/ (\d)/,"-$1").replace(/ ?International/,"")+"-4.0"}],D6t=teo.map(function(e){var t=/^(.*)-\d+\.\d+$/.exec(e);return t?[t[0],t[1]]:[e,null]}).reduce(function(e,t){var r=t[1];return e[r]=e[r]||[],e[r].push(t[0]),e},{}),ieo=Object.keys(D6t).map(function(t){return[t,D6t[t]]}).filter(function(t){return t[1].length===1&&t[0]!==null&&t[0]!=="APL"}).map(function(t){return[t[0],t[1][0]]});D6t=void 0;var eyn=[["UNLI","Unlicense"],["WTF","WTFPL"],["2 CLAUSE","BSD-2-Clause"],["2-CLAUSE","BSD-2-Clause"],["3 CLAUSE","BSD-3-Clause"],["3-CLAUSE","BSD-3-Clause"],["AFFERO","AGPL-3.0-or-later"],["AGPL","AGPL-3.0-or-later"],["APACHE","Apache-2.0"],["ARTISTIC","Artistic-2.0"],["Affero","AGPL-3.0-or-later"],["BEER","Beerware"],["BOOST","BSL-1.0"],["BSD","BSD-2-Clause"],["CDDL","CDDL-1.1"],["ECLIPSE","EPL-1.0"],["FUCK","WTFPL"],["GNU","GPL-3.0-or-later"],["LGPL","LGPL-3.0-or-later"],["GPLV1","GPL-1.0-only"],["GPL-1","GPL-1.0-only"],["GPLV2","GPL-2.0-only"],["GPL-2","GPL-2.0-only"],["GPL","GPL-3.0-or-later"],["MIT +NO-FALSE-ATTRIBS","MITNFA"],["MIT","MIT"],["MPL","MPL-2.0"],["X11","X11"],["ZLIB","Zlib"]].concat(ieo).sort(iyn),seo=0,oeo=1,tyn=function(e){for(var t=0;t<$0n.length;t++){var r=$0n[t](e).trim();if(r!==e&&Lat(r))return r}return null},ryn=function(e){for(var t=e.toUpperCase(),r=0;r-1)return s[oeo]}return null},nyn=function(e,t){for(var r=0;r-1){var o=e.replace(a,s[neo]),g=t(o);if(g!==null)return g}}return null};syn.exports=function(e,t){t=t||{};var r=t.upgrade===void 0?!0:!!t.upgrade;function s(p){return r?aeo(p):p}var a=typeof e=="string"&&e.trim().length!==0;if(!a)throw Error("Invalid argument. Expected non-empty string.");if(e=e.trim(),Lat(e))return s(e);var o=e.replace(/\+$/,"").trim();if(Lat(o))return s(o);var g=tyn(e);return g!==null||(g=nyn(e,function(p){return Lat(p)?p:tyn(p)}),g!==null)||(g=ryn(e),g!==null)||(g=nyn(e,ryn),g!==null)?s(g):null};function aeo(e){return["GPL-1.0","LGPL-1.0","AGPL-1.0","GPL-2.0","LGPL-2.0","AGPL-2.0","LGPL-2.1"].indexOf(e)!==-1?e+"-only":["GPL-1.0+","GPL-2.0+","GPL-3.0+","LGPL-2.0+","LGPL-2.1+","LGPL-3.0+","AGPL-1.0+","AGPL-3.0+"].indexOf(e)!==-1?e.replace(/\+$/,"-or-later"):["GPL-3.0","LGPL-3.0","AGPL-3.0"].indexOf(e)!==-1?e+"-or-later":e}});var uyn=z((JHc,lyn)=>{var ceo=R6t(),leo=oyn(),ayn='license should be a valid SPDX license expression (without "LicenseRef"), "UNLICENSED", or "SEE LICENSE IN "',ueo=/^SEE LICEN[CS]E IN (.+)$/;function cyn(e,t){return t.slice(0,e.length)===e}function x6t(e){if(e.hasOwnProperty("license")){var t=e.license;return cyn("LicenseRef",t)||cyn("DocumentRef",t)}else return x6t(e.left)||x6t(e.right)}lyn.exports=function(e){var t;try{t=ceo(e)}catch{var r;if(e==="UNLICENSED"||e==="UNLICENCED")return{validForOldPackages:!0,validForNewPackages:!0,unlicensed:!0};if(r=ueo.exec(e))return{validForOldPackages:!0,validForNewPackages:!0,inFile:r[1]};var s={validForOldPackages:!1,validForNewPackages:!1,warnings:[ayn]};if(e.trim().length!==0){var a=leo(e);a&&s.warnings.push('license is similar to the valid expression "'+a+'"')}return s}return x6t(t)?{validForNewPackages:!1,validForOldPackages:!1,spdx:!0,warnings:[ayn]}:{validForNewPackages:!0,validForOldPackages:!0,spdx:!0}}});var Ayn=z((UHc,gyn)=>{gyn.exports=geo;function geo(e){if(!e||e==="ERROR: No README data found!")return;e=e.trim().split(` -`);let t=0;for(;e[t]&&e[t].trim().match(/^(#|$)/);)t++;let r=e.length,s=t+1;for(;s{Aeo.exports={topLevel:{dependancies:"dependencies",dependecies:"dependencies",depdenencies:"dependencies",devEependencies:"devDependencies",depends:"dependencies","dev-dependencies":"devDependencies",devDependences:"devDependencies",devDepenencies:"devDependencies",devdependencies:"devDependencies",repostitory:"repository",repo:"repository",prefereGlobal:"preferGlobal",hompage:"homepage",hampage:"homepage",autohr:"author",autor:"author",contributers:"contributors",publicationConfig:"publishConfig",script:"scripts"},bugs:{web:"url",name:"url"},script:{server:"start",tests:"test"}}});var Cyn=z((jHc,Iyn)=>{var deo=HQt(),peo=XQt(),feo=uyn(),Vat=T6t(),Ieo=Dt("node:module"),Ceo=["dependencies","devDependencies","optionalDependencies"],meo=Ayn(),k6t=Dt("url"),jne=dyn(),pyn=e=>e.includes("@")&&e.indexOf("@")"u"&&(t={});var r=t.strict;if(!e.name&&!r){e.name="";return}if(typeof e.name!="string")throw new Error("name field must be a string.");r||(e.name=e.name.trim()),yeo(e.name,r,t.allowLegacyCase),Ieo.builtinModules.includes(e.name)&&this.warn("conflictingName",e.name)},fixDescriptionField:function(e){e.description&&typeof e.description!="string"&&(this.warn("nonStringDescription"),delete e.description),e.readme&&!e.description&&(e.description=meo(e.readme)),e.description===void 0&&delete e.description,e.description||this.warn("missingDescription")},fixReadmeField:function(e){e.readme||(this.warn("missingReadme"),e.readme="ERROR: No README data found!")},fixBugsField:function(e){if(!e.bugs&&e.repository&&e.repository.url){var t=Vat.fromUrl(e.repository.url);t&&t.bugs()&&(e.bugs={url:t.bugs()})}else if(e.bugs){if(typeof e.bugs=="string")pyn(e.bugs)?e.bugs={email:e.bugs}:k6t.parse(e.bugs).protocol?e.bugs={url:e.bugs}:this.warn("nonEmailUrlBugsString");else{weo(e.bugs,this.warn);var r=e.bugs;e.bugs={},r.url&&(typeof r.url=="string"&&k6t.parse(r.url).protocol?e.bugs.url=r.url:this.warn("nonUrlBugsUrlField")),r.email&&(typeof r.email=="string"&&pyn(r.email)?e.bugs.email=r.email:this.warn("nonEmailBugsEmailField"))}!e.bugs.email&&!e.bugs.url&&(delete e.bugs,this.warn("emptyNormalizedBugs"))}},fixHomepageField:function(e){if(!e.homepage&&e.repository&&e.repository.url){var t=Vat.fromUrl(e.repository.url);t&&t.docs()&&(e.homepage=t.docs())}if(e.homepage){if(typeof e.homepage!="string")return this.warn("nonUrlHomepage"),delete e.homepage;k6t.parse(e.homepage).protocol||(e.homepage="http://"+e.homepage)}},fixLicenseField:function(e){let t=e.license||e.licence;if(!t)return this.warn("missingLicense");if(typeof t!="string"||t.length<1||t.trim()==="")return this.warn("invalidLicense");if(!feo(t).validForNewPackages)return this.warn("invalidLicense")}};function heo(e){if(e.charAt(0)!=="@")return!1;var t=e.slice(1).split("/");return t.length!==2?!1:t[0]&&t[1]&&t[0]===encodeURIComponent(t[0])&&t[1]===encodeURIComponent(t[1])}function _eo(e){return!e.match(/[/@\s+%:]/)&&e===encodeURIComponent(e)}function yeo(e,t,r){if(e.charAt(0)==="."||!(heo(e)||_eo(e))||t&&!r&&e!==e.toLowerCase()||e.toLowerCase()==="node_modules"||e.toLowerCase()==="favicon.ico")throw new Error("Invalid name: "+JSON.stringify(e))}function fyn(e,t){return e.author&&(e.author=t(e.author)),["maintainers","contributors"].forEach(function(r){Array.isArray(e[r])&&(e[r]=e[r].map(t))}),e}function beo(e){if(typeof e=="string")return e;var t=e.name||"",r=e.url||e.web,s=r?" ("+r+")":"",a=e.email||e.mail,o=a?" <"+a+">":"";return t+o+s}function Eeo(e){if(typeof e!="string")return e;var t=e.match(/^([^(<]+)/),r=e.match(/\(([^()]+)\)/),s=e.match(/<([^<>]+)>/),a={};return t&&t[0].trim()&&(a.name=t[0].trim()),s&&(a.email=s[1]),r&&(a.url=r[1]),a}function Beo(e){var t=e.optionalDependencies;if(t){var r=e.dependencies||{};Object.keys(t).forEach(function(s){r[s]=t[s]}),e.dependencies=r}}function veo(e,t,r){if(!e)return{};if(typeof e=="string"&&(e=e.trim().split(/[\n\r\s\t ,]+/)),!Array.isArray(e))return e;r("deprecatedArrayDependencies",t);var s={};return e.filter(function(a){return typeof a=="string"}).forEach(function(a){a=a.trim().split(/(:?[@\s><=])/);var o=a.shift(),g=a.join("");g=g.trim(),g=g.replace(/^@/,""),s[o]=g}),s}function Seo(e,t){Ceo.forEach(function(r){e[r]&&(e[r]=veo(e[r],r,t))})}function weo(e,t){e&&Object.keys(e).forEach(function(r){jne.bugs[r]&&(t("typo",r,jne.bugs[r],"bugs"),e[jne.bugs[r]]=e[r],delete e[r])})}});var myn=z((zHc,Teo)=>{Teo.exports={repositories:"'repositories' (plural) Not supported. Please pick one as the 'repository' field",missingRepository:"No repository field.",brokenGitUrl:"Probably broken git url: %s",nonObjectScripts:"scripts must be an object",nonStringScript:"script values must be string commands",nonArrayFiles:"Invalid 'files' member",invalidFilename:"Invalid filename in 'files' list: %s",nonArrayBundleDependencies:"Invalid 'bundleDependencies' list. Must be array of package names",nonStringBundleDependency:"Invalid bundleDependencies member: %s",nonDependencyBundleDependency:"Non-dependency in bundleDependencies: %s",nonObjectDependencies:"%s field must be an object",nonStringDependency:"Invalid dependency: %s %s",deprecatedArrayDependencies:"specifying %s as array is deprecated",deprecatedModules:"modules field is deprecated",nonArrayKeywords:"keywords should be an array of strings",nonStringKeyword:"keywords should be an array of strings",conflictingName:"%s is also the name of a node core module.",nonStringDescription:"'description' field should be a string",missingDescription:"No description",missingReadme:"No README data",missingLicense:"No license field.",nonEmailUrlBugsString:"Bug string field must be url, email, or {email,url}",nonUrlBugsUrlField:"bugs.url field must be a string url. Deleted.",nonEmailBugsEmailField:"bugs.email field must be a string email. Deleted.",emptyNormalizedBugs:"Normalized value of bugs field is an empty object. Deleted.",nonUrlHomepage:"homepage field must be a string url. Deleted.",invalidLicense:"license should be a valid SPDX license expression",typo:"%s should probably be %s."}});var yyn=z((qHc,_yn)=>{var hyn=Dt("util"),G6t=myn();_yn.exports=function(){var e=Array.prototype.slice.call(arguments,0),t=e.shift();if(t==="typo")return Neo.apply(null,e);var r=G6t[t]?G6t[t]:t+": '%s'";return e.unshift(r),hyn.format.apply(null,e)};function Neo(e,t,r){return r&&(e=r+"['"+e+"']",t=r+"['"+t+"']"),hyn.format(G6t.typo,e,t)}});var L6t=z(($Hc,Byn)=>{Byn.exports=byn;var F6t=Cyn();byn.fixer=F6t;var Reo=yyn(),Deo=["name","version","description","repository","modules","scripts","files","bin","man","bugs","keywords","readme","homepage","license"],xeo=["dependencies","people","typos"],Z6t=Deo.map(function(e){return Eyn(e)+"Field"});Z6t=Z6t.concat(xeo);function byn(e,t,r){t===!0&&(t=null,r=!0),r||(r=!1),(!t||e.private)&&(t=function(){}),e.scripts&&e.scripts.install==="node-gyp rebuild"&&!e.scripts.preinstall&&(e.gypfile=!0),F6t.warn=function(){t(Reo.apply(null,arguments))},Z6t.forEach(function(s){F6t["fix"+Eyn(s)](e,r)}),e._id=e.name+"@"+e.version}function Eyn(e){return e.charAt(0).toUpperCase()+e.slice(1)}});var Oat=z((n5c,V6t)=>{var Pat=process||{},Tyn=Pat.argv||[],Wat=Pat.env||{},Zeo=!(Wat.NO_COLOR||Tyn.includes("--no-color"))&&(!!Wat.FORCE_COLOR||Tyn.includes("--color")||Pat.platform==="win32"||(Pat.stdout||{}).isTTY&&Wat.TERM!=="dumb"||!!Wat.CI),Leo=(e,t,r=e)=>s=>{let a=""+s,o=a.indexOf(t,e.length);return~o?e+Veo(a,t,r,o)+t:e+a+t},Veo=(e,t,r,s)=>{let a="",o=0;do a+=e.substring(o,s)+r,o=s+t.length,s=e.indexOf(t,o);while(~s);return a+e.substring(o)},Nyn=(e=Zeo)=>{let t=e?Leo:()=>String;return{isColorSupported:e,reset:t("\x1B[0m","\x1B[0m"),bold:t("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:t("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:t("\x1B[3m","\x1B[23m"),underline:t("\x1B[4m","\x1B[24m"),inverse:t("\x1B[7m","\x1B[27m"),hidden:t("\x1B[8m","\x1B[28m"),strikethrough:t("\x1B[9m","\x1B[29m"),black:t("\x1B[30m","\x1B[39m"),red:t("\x1B[31m","\x1B[39m"),green:t("\x1B[32m","\x1B[39m"),yellow:t("\x1B[33m","\x1B[39m"),blue:t("\x1B[34m","\x1B[39m"),magenta:t("\x1B[35m","\x1B[39m"),cyan:t("\x1B[36m","\x1B[39m"),white:t("\x1B[37m","\x1B[39m"),gray:t("\x1B[90m","\x1B[39m"),bgBlack:t("\x1B[40m","\x1B[49m"),bgRed:t("\x1B[41m","\x1B[49m"),bgGreen:t("\x1B[42m","\x1B[49m"),bgYellow:t("\x1B[43m","\x1B[49m"),bgBlue:t("\x1B[44m","\x1B[49m"),bgMagenta:t("\x1B[45m","\x1B[49m"),bgCyan:t("\x1B[46m","\x1B[49m"),bgWhite:t("\x1B[47m","\x1B[49m"),blackBright:t("\x1B[90m","\x1B[39m"),redBright:t("\x1B[91m","\x1B[39m"),greenBright:t("\x1B[92m","\x1B[39m"),yellowBright:t("\x1B[93m","\x1B[39m"),blueBright:t("\x1B[94m","\x1B[39m"),magentaBright:t("\x1B[95m","\x1B[39m"),cyanBright:t("\x1B[96m","\x1B[39m"),whiteBright:t("\x1B[97m","\x1B[39m"),bgBlackBright:t("\x1B[100m","\x1B[49m"),bgRedBright:t("\x1B[101m","\x1B[49m"),bgGreenBright:t("\x1B[102m","\x1B[49m"),bgYellowBright:t("\x1B[103m","\x1B[49m"),bgBlueBright:t("\x1B[104m","\x1B[49m"),bgMagentaBright:t("\x1B[105m","\x1B[49m"),bgCyanBright:t("\x1B[106m","\x1B[49m"),bgWhiteBright:t("\x1B[107m","\x1B[49m")}};V6t.exports=Nyn();V6t.exports.createColors=Nyn});var W6t=z(Mat=>{Object.defineProperty(Mat,"__esModule",{value:!0});Mat.default=/((['"])(?:(?!\2|\\).|\\(?:\r\n|[\s\S]))*(\2)?|`(?:[^`\\$]|\\[\s\S]|\$(?!\{)|\$\{(?:[^{}]|\{[^}]*\}?)*\}?)*(`)?)|(\/\/.*)|(\/\*(?:[^*]|\*(?!\/))*(\*\/)?)|(\/(?!\*)(?:\[(?:(?![\]\\]).|\\.)*\]|(?![\/\]\\]).|\\.)+\/(?:(?!\s*(?:\b|[\u0080-\uFFFF$\\'"~({]|[+\-!](?!=)|\.?\d))|[gmiyus]{1,6}\b(?![\u0080-\uFFFF$\\]|\s*(?:[+\-*%&|^<>!=?({]|\/(?![\/*])))))|(0[xX][\da-fA-F]+|0[oO][0-7]+|0[bB][01]+|(?:\d*\.\d+|\d+\.?)(?:[eE][+-]?\d+)?)|((?!\d)(?:(?!\s)[$\w\u0080-\uFFFF]|\\u[\da-fA-F]{4}|\\u\{[\da-fA-F]+\})+)|(--|\+\+|&&|\|\||=>|\.{3}|(?:[+\-\/%&|^]|\*{1,2}|<{1,2}|>{1,3}|!=?|={1,2})=?|[?~.,:;[\](){}])|(\s+)|(^$|[\s\S])/g;Mat.matchToToken=function(e){var t={type:"invalid",value:e[0],closed:void 0};return e[1]?(t.type="string",t.closed=!!(e[3]||e[4])):e[5]?t.type="comment":e[6]?(t.type="comment",t.closed=!!e[7]):e[8]?t.type="regex":e[9]?t.type="number":e[10]?t.type="name":e[11]?t.type="punctuator":e[12]&&(t.type="whitespace"),t}});var Gyn=z(_We=>{"use strict";Object.defineProperty(_We,"__esModule",{value:!0});_We.isIdentifierChar=kyn;_We.isIdentifierName=Meo;_We.isIdentifierStart=xyn;var O6t="\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\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\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\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\u0AF9\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-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\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-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\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\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\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\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\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",Ryn="\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0897-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F\uFF65",Weo=new RegExp("["+O6t+"]"),Peo=new RegExp("["+O6t+Ryn+"]");O6t=Ryn=null;var Dyn=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,4,51,13,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,39,27,10,22,251,41,7,1,17,2,60,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,200,32,32,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,42,9,8936,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,229,29,3,0,496,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4153,7,221,3,5761,15,7472,16,621,2467,541,1507,4938,6,4191],Oeo=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,7,9,32,4,318,1,80,3,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,343,9,54,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,10,1,2,0,49,6,4,4,14,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,245,1,2,9,726,6,110,6,6,9,4759,9,787719,239];function P6t(e,t){let r=65536;for(let s=0,a=t.length;se)return!1;if(r+=t[s+1],r>=e)return!0}return!1}function xyn(e){return e<65?e===36:e<=90?!0:e<97?e===95:e<=122?!0:e<=65535?e>=170&&Weo.test(String.fromCharCode(e)):P6t(e,Dyn)}function kyn(e){return e<48?e===36:e<58?!0:e<65?!1:e<=90?!0:e<97?e===95:e<=122?!0:e<=65535?e>=170&&Peo.test(String.fromCharCode(e)):P6t(e,Dyn)||P6t(e,Oeo)}function Meo(e){let t=!0;for(let r=0;r{"use strict";Object.defineProperty(UAe,"__esModule",{value:!0});UAe.isKeyword=Jeo;UAe.isReservedWord=Fyn;UAe.isStrictBindOnlyReservedWord=Lyn;UAe.isStrictBindReservedWord=Xeo;UAe.isStrictReservedWord=Zyn;var M6t={keyword:["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"],strict:["implements","interface","let","package","private","protected","public","static","yield"],strictBind:["eval","arguments"]},Qeo=new Set(M6t.keyword),Yeo=new Set(M6t.strict),Heo=new Set(M6t.strictBind);function Fyn(e,t){return t&&e==="await"||e==="enum"}function Zyn(e,t){return Fyn(e,t)||Yeo.has(e)}function Lyn(e){return Heo.has(e)}function Xeo(e,t){return Zyn(e,t)||Lyn(e)}function Jeo(e){return Qeo.has(e)}});var Y6t=z(HJ=>{"use strict";Object.defineProperty(HJ,"__esModule",{value:!0});Object.defineProperty(HJ,"isIdentifierChar",{enumerable:!0,get:function(){return Q6t.isIdentifierChar}});Object.defineProperty(HJ,"isIdentifierName",{enumerable:!0,get:function(){return Q6t.isIdentifierName}});Object.defineProperty(HJ,"isIdentifierStart",{enumerable:!0,get:function(){return Q6t.isIdentifierStart}});Object.defineProperty(HJ,"isKeyword",{enumerable:!0,get:function(){return yWe.isKeyword}});Object.defineProperty(HJ,"isReservedWord",{enumerable:!0,get:function(){return yWe.isReservedWord}});Object.defineProperty(HJ,"isStrictBindOnlyReservedWord",{enumerable:!0,get:function(){return yWe.isStrictBindOnlyReservedWord}});Object.defineProperty(HJ,"isStrictBindReservedWord",{enumerable:!0,get:function(){return yWe.isStrictBindReservedWord}});Object.defineProperty(HJ,"isStrictReservedWord",{enumerable:!0,get:function(){return yWe.isStrictReservedWord}});var Q6t=Gyn(),yWe=Vyn()});var Uyn=z(bWe=>{"use strict";Object.defineProperty(bWe,"__esModule",{value:!0});var H6t=Oat(),Wyn=W6t(),Pyn=Y6t();function Ueo(){return typeof process=="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?!1:H6t.isColorSupported}var Qat=(e,t)=>r=>e(t(r));function Qyn(e){return{keyword:e.cyan,capitalized:e.yellow,jsxIdentifier:e.yellow,punctuator:e.yellow,number:e.magenta,string:e.green,regex:e.magenta,comment:e.gray,invalid:Qat(Qat(e.white,e.bgRed),e.bold),gutter:e.gray,marker:Qat(e.red,e.bold),message:Qat(e.red,e.bold),reset:e.reset}}var Keo=Qyn(H6t.createColors(!0)),jeo=Qyn(H6t.createColors(!1));function Yyn(e){return e?Keo:jeo}var zeo=new Set(["as","async","from","get","of","set"]),qeo=/\r\n|[\n\r\u2028\u2029]/,$eo=/^[()[\]{}]$/,Hyn;{let e=/^[a-z][\w-]*$/i,t=function(r,s,a){if(r.type==="name"){if(Pyn.isKeyword(r.value)||Pyn.isStrictReservedWord(r.value,!0)||zeo.has(r.value))return"keyword";if(e.test(r.value)&&(a[s-1]==="<"||a.slice(s-2,s)==="t[s](o)).join(` -`):r+=a;return r}var Oyn=!1,Myn=/\r\n|[\n\r\u2028\u2029]/;function eto(e,t,r){let s=Object.assign({column:0,line:-1},e.start),a=Object.assign({},s,e.end),{linesAbove:o=2,linesBelow:g=3}=r||{},p=s.line,f=s.column,m=a.line,y=a.column,B=Math.max(p-(o+1),0),v=Math.min(t.length,m+g);p===-1&&(B=0),m===-1&&(v=t.length);let G=m-p,T={};if(G)for(let O=0;O<=G;O++){let X=O+p;if(!f)T[X]=!0;else if(O===0){let U=t[X-1].length;T[X]=[f,U-f+1]}else if(O===G)T[X]=[0,y];else{let U=t[X-O].length;T[X]=[0,U]}}else f===y?f?T[p]=[f,0]:T[p]=!0:T[p]=[f,y-f];return{start:B,end:v,markerLines:T}}function Jyn(e,t,r={}){let s=r.forceColor||Ueo()&&r.highlightCode,a=Yyn(s),o=e.split(Myn),{start:g,end:p,markerLines:f}=eto(t,o,r),m=t.start&&typeof t.start.column=="number",y=String(p).length,v=(s?Xyn(e):e).split(Myn,p).slice(g,p).map((G,T)=>{let O=g+1+T,U=` ${` ${O}`.slice(-y)} |`,le=f[O],ae=!f[O+1];if(le){let ge="";if(Array.isArray(le)){let fe=G.slice(0,Math.max(le[0]-1,0)).replace(/[^\t]/g," "),pe=le[1]||1;ge=[` - `,a.gutter(U.replace(/\d/g," "))," ",fe,a.marker("^").repeat(pe)].join(""),ae&&r.message&&(ge+=" "+a.message(r.message))}return[a.marker(">"),a.gutter(U),G.length>0?` ${G}`:"",ge].join("")}else return` ${a.gutter(U)}${G.length>0?` ${G}`:""}`}).join(` + `.trim()},blockValue:function(t){var r=this.aliasable("container.hooks.blockHelperMissing"),s=[this.contextName(0)];this.setupHelperArgs(t,0,s);var a=this.popStack();s.splice(1,0,a),this.push(this.source.functionCall(r,"call",s))},ambiguousBlockValue:function(){var t=this.aliasable("container.hooks.blockHelperMissing"),r=[this.contextName(0)];this.setupHelperArgs("",0,r,!0),this.flushInline();var s=this.topStack();r.splice(1,0,s),this.pushSource(["if (!",this.lastHelper,") { ",s," = ",this.source.functionCall(t,"call",r),"}"])},appendContent:function(t){this.pendingContent?t=this.pendingContent+t:this.pendingLocation=this.source.currentLocation,this.pendingContent=t},append:function(){if(this.isInline())this.replaceStack(function(r){return[" != null ? ",r,' : ""']}),this.pushSource(this.appendToBuffer(this.popStack()));else{var t=this.popStack();this.pushSource(["if (",t," != null) { ",this.appendToBuffer(t,void 0,!0)," }"]),this.environment.isSimple&&this.pushSource(["else { ",this.appendToBuffer("''",void 0,!0)," }"])}},appendEscaped:function(){this.pushSource(this.appendToBuffer([this.aliasable("container.escapeExpression"),"(",this.popStack(),")"]))},getContext:function(t){this.lastContext=t},pushContext:function(){this.pushStackLiteral(this.contextName(this.lastContext))},lookupOnContext:function(t,r,s,a){var o=0;!a&&this.options.compat&&!this.lastContext?this.push(this.depthedLookup(t[o++])):this.pushContext(),this.resolvePath("context",t,o,r,s)},lookupBlockParam:function(t,r){this.useBlockParams=!0,this.push(["blockParams[",t[0],"][",t[1],"]"]),this.resolvePath("context",r,1)},lookupData:function(t,r,s){t?this.pushStackLiteral("container.data(data, "+t+")"):this.pushStackLiteral("data"),this.resolvePath("data",r,0,!0,s)},resolvePath:function(t,r,s,a,o){var g=this;if(this.options.strict||this.options.assumeObjects){this.push(d$s(this.options.strict&&o,this,r,s,t));return}for(var p=r.length;sthis.stackVars.length&&this.stackVars.push("stack"+this.stackSlot),this.topStackName()},topStackName:function(){return"stack"+this.stackSlot},flushInline:function(){var t=this.inlineStack;this.inlineStack=[];for(var r=0,s=t.length;r{"use strict";kat.__esModule=!0;function yWe(e){return e&&e.__esModule?e:{default:e}}var p$s=E_n(),f$s=yWe(p$s),I$s=q8t(),C$s=yWe(I$s),b6t=Z_n(),E6t=P_n(),m$s=h0n(),h$s=yWe(m$s),_$s=Eat(),y$s=yWe(_$s),b$s=U8t(),E$s=yWe(b$s),B$s=f$s.default.create;function _0n(){var e=B$s();return e.compile=function(t,r){return E6t.compile(t,r,e)},e.precompile=function(t,r){return E6t.precompile(t,r,e)},e.AST=C$s.default,e.Compiler=E6t.Compiler,e.JavaScriptCompiler=h$s.default,e.Parser=b6t.parser,e.parse=b6t.parse,e.parseWithoutProcessing=b6t.parseWithoutProcessing,e}var QEe=_0n();QEe.create=_0n;E$s.default(QEe);QEe.Visitor=y$s.default;QEe.default=QEe;kat.default=QEe;y0n.exports=kat.default});var E0n=z(Gat=>{"use strict";Gat.__esModule=!0;Gat.print=T$s;Gat.PrintVisitor=qB;function v$s(e){return e&&e.__esModule?e:{default:e}}var S$s=Eat(),w$s=v$s(S$s);function T$s(e){return new qB().accept(e)}function qB(){this.padding=0}qB.prototype=new w$s.default;qB.prototype.pad=function(e){for(var t="",r=0,s=this.padding;r "+t+" }}")};qB.prototype.PartialBlockStatement=function(e){var t="PARTIAL BLOCK:"+e.name.original;return e.params[0]&&(t+=" "+this.accept(e.params[0])),e.hash&&(t+=" "+this.accept(e.hash)),t+=" "+this.pad("PROGRAM:"),this.padding++,t+=this.accept(e.program),this.padding--,this.pad("{{> "+t+" }}")};qB.prototype.ContentStatement=function(e){return this.pad("CONTENT[ '"+e.value+"' ]")};qB.prototype.CommentStatement=function(e){return this.pad("{{! '"+e.value+"' }}")};qB.prototype.SubExpression=function(e){for(var t=e.params,r=[],s=void 0,a=0,o=t.length;a{"use strict";Object.defineProperty(Lat,"__esModule",{value:!0});Lat.LRUCache=void 0;var HEe=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,Z0n=new Set,v6t=typeof process=="object"&&process?process:{},L0n=(e,t,r,s)=>{typeof v6t.emitWarning=="function"?v6t.emitWarning(e,t,r,s):console.error(`[${r}] ${t}: ${e}`)},Zat=globalThis.AbortController,F0n=globalThis.AbortSignal;if(typeof Zat>"u"){F0n=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(s,a){this._onabort.push(a)}},Zat=class{constructor(){t()}signal=new F0n;abort(s){if(!this.signal.aborted){this.signal.reason=s,this.signal.aborted=!0;for(let a of this.signal._onabort)a(s);this.signal.onabort?.(s)}}};let e=v6t.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",t=()=>{e&&(e=!1,L0n("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",t))}}var Z$s=e=>!Z0n.has(e),JHc=Symbol("type"),jne=e=>e&&e===Math.floor(e)&&e>0&&isFinite(e),V0n=e=>jne(e)?e<=Math.pow(2,8)?Uint8Array:e<=Math.pow(2,16)?Uint16Array:e<=Math.pow(2,32)?Uint32Array:e<=Number.MAX_SAFE_INTEGER?YEe:null:null,YEe=class extends Array{constructor(t){super(t),this.fill(0)}},S6t=class e{heap;length;static#e=!1;static create(t){let r=V0n(t);if(!r)return[];e.#e=!0;let s=new e(t,r);return e.#e=!1,s}constructor(t,r){if(!e.#e)throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new r(t),this.length=0}push(t){this.heap[this.length++]=t}pop(){return this.heap[--this.length]}},w6t=class e{#e;#t;#r;#n;#i;#a;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#s;#u;#g;#c;#o;#f;#C;#p;#A;#_;#d;#y;#b;#m;#E;#T;#I;static unsafeExposeInternals(t){return{starts:t.#b,ttls:t.#m,sizes:t.#y,keyMap:t.#g,keyList:t.#c,valList:t.#o,next:t.#f,prev:t.#C,get head(){return t.#p},get tail(){return t.#A},free:t.#_,isBackgroundFetch:r=>t.#l(r),backgroundFetch:(r,s,a,o)=>t.#G(r,s,a,o),moveToTail:r=>t.#D(r),indexes:r=>t.#B(r),rindexes:r=>t.#v(r),isStale:r=>t.#h(r)}}get max(){return this.#e}get maxSize(){return this.#t}get calculatedSize(){return this.#u}get size(){return this.#s}get fetchMethod(){return this.#i}get memoMethod(){return this.#a}get dispose(){return this.#r}get disposeAfter(){return this.#n}constructor(t){let{max:r=0,ttl:s,ttlResolution:a=1,ttlAutopurge:o,updateAgeOnGet:g,updateAgeOnHas:p,allowStale:f,dispose:m,disposeAfter:y,noDisposeOnSet:B,noUpdateTTL:v,maxSize:k=0,maxEntrySize:T=0,sizeCalculation:O,fetchMethod:X,memoMethod:U,noDeleteOnFetchRejection:le,noDeleteOnStaleGet:ae,allowStaleOnFetchRejection:ge,allowStaleOnFetchAbort:fe,ignoreFetchAbort:pe}=t;if(r!==0&&!jne(r))throw new TypeError("max option must be a nonnegative integer");let he=r?V0n(r):Array;if(!he)throw new Error("invalid max value: "+r);if(this.#e=r,this.#t=k,this.maxEntrySize=T||this.#t,this.sizeCalculation=O,this.sizeCalculation){if(!this.#t&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(U!==void 0&&typeof U!="function")throw new TypeError("memoMethod must be a function if defined");if(this.#a=U,X!==void 0&&typeof X!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.#i=X,this.#T=!!X,this.#g=new Map,this.#c=new Array(r).fill(void 0),this.#o=new Array(r).fill(void 0),this.#f=new he(r),this.#C=new he(r),this.#p=0,this.#A=0,this.#_=S6t.create(r),this.#s=0,this.#u=0,typeof m=="function"&&(this.#r=m),typeof y=="function"?(this.#n=y,this.#d=[]):(this.#n=void 0,this.#d=void 0),this.#E=!!this.#r,this.#I=!!this.#n,this.noDisposeOnSet=!!B,this.noUpdateTTL=!!v,this.noDeleteOnFetchRejection=!!le,this.allowStaleOnFetchRejection=!!ge,this.allowStaleOnFetchAbort=!!fe,this.ignoreFetchAbort=!!pe,this.maxEntrySize!==0){if(this.#t!==0&&!jne(this.#t))throw new TypeError("maxSize must be a positive integer if specified");if(!jne(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.#O()}if(this.allowStale=!!f,this.noDeleteOnStaleGet=!!ae,this.updateAgeOnGet=!!g,this.updateAgeOnHas=!!p,this.ttlResolution=jne(a)||a===0?a:1,this.ttlAutopurge=!!o,this.ttl=s||0,this.ttl){if(!jne(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.#F()}if(this.#e===0&&this.ttl===0&&this.#t===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#e&&!this.#t){let be="LRU_CACHE_UNBOUNDED";Z$s(be)&&(Z0n.add(be),L0n("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",be,e))}}getRemainingTTL(t){return this.#g.has(t)?1/0:0}#F(){let t=new YEe(this.#e),r=new YEe(this.#e);this.#m=t,this.#b=r,this.#Z=(o,g,p=HEe.now())=>{if(r[o]=g!==0?p:0,t[o]=g,g!==0&&this.ttlAutopurge){let f=setTimeout(()=>{this.#h(o)&&this.#S(this.#c[o],"expire")},g+1);f.unref&&f.unref()}},this.#N=o=>{r[o]=t[o]!==0?HEe.now():0},this.#w=(o,g)=>{if(t[g]){let p=t[g],f=r[g];if(!p||!f)return;o.ttl=p,o.start=f,o.now=s||a();let m=o.now-f;o.remainingTTL=p-m}};let s=0,a=()=>{let o=HEe.now();if(this.ttlResolution>0){s=o;let g=setTimeout(()=>s=0,this.ttlResolution);g.unref&&g.unref()}return o};this.getRemainingTTL=o=>{let g=this.#g.get(o);if(g===void 0)return 0;let p=t[g],f=r[g];if(!p||!f)return 1/0;let m=(s||a())-f;return p-m},this.#h=o=>{let g=r[o],p=t[o];return!!p&&!!g&&(s||a())-g>p}}#N=()=>{};#w=()=>{};#Z=()=>{};#h=()=>!1;#O(){let t=new YEe(this.#e);this.#u=0,this.#y=t,this.#R=r=>{this.#u-=t[r],t[r]=0},this.#L=(r,s,a,o)=>{if(this.#l(s))return 0;if(!jne(a))if(o){if(typeof o!="function")throw new TypeError("sizeCalculation must be a function");if(a=o(s,r),!jne(a))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return a},this.#x=(r,s,a)=>{if(t[r]=s,this.#t){let o=this.#t-t[r];for(;this.#u>o;)this.#k(!0)}this.#u+=t[r],a&&(a.entrySize=s,a.totalCalculatedSize=this.#u)}}#R=t=>{};#x=(t,r,s)=>{};#L=(t,r,s,a)=>{if(s||a)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#B({allowStale:t=this.allowStale}={}){if(this.#s)for(let r=this.#A;!(!this.#V(r)||((t||!this.#h(r))&&(yield r),r===this.#p));)r=this.#C[r]}*#v({allowStale:t=this.allowStale}={}){if(this.#s)for(let r=this.#p;!(!this.#V(r)||((t||!this.#h(r))&&(yield r),r===this.#A));)r=this.#f[r]}#V(t){return t!==void 0&&this.#g.get(this.#c[t])===t}*entries(){for(let t of this.#B())this.#o[t]!==void 0&&this.#c[t]!==void 0&&!this.#l(this.#o[t])&&(yield[this.#c[t],this.#o[t]])}*rentries(){for(let t of this.#v())this.#o[t]!==void 0&&this.#c[t]!==void 0&&!this.#l(this.#o[t])&&(yield[this.#c[t],this.#o[t]])}*keys(){for(let t of this.#B()){let r=this.#c[t];r!==void 0&&!this.#l(this.#o[t])&&(yield r)}}*rkeys(){for(let t of this.#v()){let r=this.#c[t];r!==void 0&&!this.#l(this.#o[t])&&(yield r)}}*values(){for(let t of this.#B())this.#o[t]!==void 0&&!this.#l(this.#o[t])&&(yield this.#o[t])}*rvalues(){for(let t of this.#v())this.#o[t]!==void 0&&!this.#l(this.#o[t])&&(yield this.#o[t])}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(t,r={}){for(let s of this.#B()){let a=this.#o[s],o=this.#l(a)?a.__staleWhileFetching:a;if(o!==void 0&&t(o,this.#c[s],this))return this.get(this.#c[s],r)}}forEach(t,r=this){for(let s of this.#B()){let a=this.#o[s],o=this.#l(a)?a.__staleWhileFetching:a;o!==void 0&&t.call(r,o,this.#c[s],this)}}rforEach(t,r=this){for(let s of this.#v()){let a=this.#o[s],o=this.#l(a)?a.__staleWhileFetching:a;o!==void 0&&t.call(r,o,this.#c[s],this)}}purgeStale(){let t=!1;for(let r of this.#v({allowStale:!0}))this.#h(r)&&(this.#S(this.#c[r],"expire"),t=!0);return t}info(t){let r=this.#g.get(t);if(r===void 0)return;let s=this.#o[r],a=this.#l(s)?s.__staleWhileFetching:s;if(a===void 0)return;let o={value:a};if(this.#m&&this.#b){let g=this.#m[r],p=this.#b[r];if(g&&p){let f=g-(HEe.now()-p);o.ttl=f,o.start=Date.now()}}return this.#y&&(o.size=this.#y[r]),o}dump(){let t=[];for(let r of this.#B({allowStale:!0})){let s=this.#c[r],a=this.#o[r],o=this.#l(a)?a.__staleWhileFetching:a;if(o===void 0||s===void 0)continue;let g={value:o};if(this.#m&&this.#b){g.ttl=this.#m[r];let p=HEe.now()-this.#b[r];g.start=Math.floor(Date.now()-p)}this.#y&&(g.size=this.#y[r]),t.unshift([s,g])}return t}load(t){this.clear();for(let[r,s]of t){if(s.start){let a=Date.now()-s.start;s.start=HEe.now()-a}this.set(r,s.value,s)}}set(t,r,s={}){if(r===void 0)return this.delete(t),this;let{ttl:a=this.ttl,start:o,noDisposeOnSet:g=this.noDisposeOnSet,sizeCalculation:p=this.sizeCalculation,status:f}=s,{noUpdateTTL:m=this.noUpdateTTL}=s,y=this.#L(t,r,s.size||0,p);if(this.maxEntrySize&&y>this.maxEntrySize)return f&&(f.set="miss",f.maxEntrySizeExceeded=!0),this.#S(t,"set"),this;let B=this.#s===0?void 0:this.#g.get(t);if(B===void 0)B=this.#s===0?this.#A:this.#_.length!==0?this.#_.pop():this.#s===this.#e?this.#k(!1):this.#s,this.#c[B]=t,this.#o[B]=r,this.#g.set(t,B),this.#f[this.#A]=B,this.#C[B]=this.#A,this.#A=B,this.#s++,this.#x(B,y,f),f&&(f.set="add"),m=!1;else{this.#D(B);let v=this.#o[B];if(r!==v){if(this.#T&&this.#l(v)){v.__abortController.abort(new Error("replaced"));let{__staleWhileFetching:k}=v;k!==void 0&&!g&&(this.#E&&this.#r?.(k,t,"set"),this.#I&&this.#d?.push([k,t,"set"]))}else g||(this.#E&&this.#r?.(v,t,"set"),this.#I&&this.#d?.push([v,t,"set"]));if(this.#R(B),this.#x(B,y,f),this.#o[B]=r,f){f.set="replace";let k=v&&this.#l(v)?v.__staleWhileFetching:v;k!==void 0&&(f.oldValue=k)}}else f&&(f.set="update")}if(a!==0&&!this.#m&&this.#F(),this.#m&&(m||this.#Z(B,a,o),f&&this.#w(f,B)),!g&&this.#I&&this.#d){let v=this.#d,k;for(;k=v?.shift();)this.#n?.(...k)}return this}pop(){try{for(;this.#s;){let t=this.#o[this.#p];if(this.#k(!0),this.#l(t)){if(t.__staleWhileFetching)return t.__staleWhileFetching}else if(t!==void 0)return t}}finally{if(this.#I&&this.#d){let t=this.#d,r;for(;r=t?.shift();)this.#n?.(...r)}}}#k(t){let r=this.#p,s=this.#c[r],a=this.#o[r];return this.#T&&this.#l(a)?a.__abortController.abort(new Error("evicted")):(this.#E||this.#I)&&(this.#E&&this.#r?.(a,s,"evict"),this.#I&&this.#d?.push([a,s,"evict"])),this.#R(r),t&&(this.#c[r]=void 0,this.#o[r]=void 0,this.#_.push(r)),this.#s===1?(this.#p=this.#A=0,this.#_.length=0):this.#p=this.#f[r],this.#g.delete(s),this.#s--,r}has(t,r={}){let{updateAgeOnHas:s=this.updateAgeOnHas,status:a}=r,o=this.#g.get(t);if(o!==void 0){let g=this.#o[o];if(this.#l(g)&&g.__staleWhileFetching===void 0)return!1;if(this.#h(o))a&&(a.has="stale",this.#w(a,o));else return s&&this.#N(o),a&&(a.has="hit",this.#w(a,o)),!0}else a&&(a.has="miss");return!1}peek(t,r={}){let{allowStale:s=this.allowStale}=r,a=this.#g.get(t);if(a===void 0||!s&&this.#h(a))return;let o=this.#o[a];return this.#l(o)?o.__staleWhileFetching:o}#G(t,r,s,a){let o=r===void 0?void 0:this.#o[r];if(this.#l(o))return o;let g=new Zat,{signal:p}=s;p?.addEventListener("abort",()=>g.abort(p.reason),{signal:g.signal});let f={signal:g.signal,options:s,context:a},m=(O,X=!1)=>{let{aborted:U}=g.signal,le=s.ignoreFetchAbort&&O!==void 0;if(s.status&&(U&&!X?(s.status.fetchAborted=!0,s.status.fetchError=g.signal.reason,le&&(s.status.fetchAbortIgnored=!0)):s.status.fetchResolved=!0),U&&!le&&!X)return B(g.signal.reason);let ae=k;return this.#o[r]===k&&(O===void 0?ae.__staleWhileFetching?this.#o[r]=ae.__staleWhileFetching:this.#S(t,"fetch"):(s.status&&(s.status.fetchUpdated=!0),this.set(t,O,f.options))),O},y=O=>(s.status&&(s.status.fetchRejected=!0,s.status.fetchError=O),B(O)),B=O=>{let{aborted:X}=g.signal,U=X&&s.allowStaleOnFetchAbort,le=U||s.allowStaleOnFetchRejection,ae=le||s.noDeleteOnFetchRejection,ge=k;if(this.#o[r]===k&&(!ae||ge.__staleWhileFetching===void 0?this.#S(t,"fetch"):U||(this.#o[r]=ge.__staleWhileFetching)),le)return s.status&&ge.__staleWhileFetching!==void 0&&(s.status.returnedStale=!0),ge.__staleWhileFetching;if(ge.__returned===ge)throw O},v=(O,X)=>{let U=this.#i?.(t,o,f);U&&U instanceof Promise&&U.then(le=>O(le===void 0?void 0:le),X),g.signal.addEventListener("abort",()=>{(!s.ignoreFetchAbort||s.allowStaleOnFetchAbort)&&(O(void 0),s.allowStaleOnFetchAbort&&(O=le=>m(le,!0)))})};s.status&&(s.status.fetchDispatched=!0);let k=new Promise(v).then(m,y),T=Object.assign(k,{__abortController:g,__staleWhileFetching:o,__returned:void 0});return r===void 0?(this.set(t,T,{...f.options,status:void 0}),r=this.#g.get(t)):this.#o[r]=T,T}#l(t){if(!this.#T)return!1;let r=t;return!!r&&r instanceof Promise&&r.hasOwnProperty("__staleWhileFetching")&&r.__abortController instanceof Zat}async fetch(t,r={}){let{allowStale:s=this.allowStale,updateAgeOnGet:a=this.updateAgeOnGet,noDeleteOnStaleGet:o=this.noDeleteOnStaleGet,ttl:g=this.ttl,noDisposeOnSet:p=this.noDisposeOnSet,size:f=0,sizeCalculation:m=this.sizeCalculation,noUpdateTTL:y=this.noUpdateTTL,noDeleteOnFetchRejection:B=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:v=this.allowStaleOnFetchRejection,ignoreFetchAbort:k=this.ignoreFetchAbort,allowStaleOnFetchAbort:T=this.allowStaleOnFetchAbort,context:O,forceRefresh:X=!1,status:U,signal:le}=r;if(!this.#T)return U&&(U.fetch="get"),this.get(t,{allowStale:s,updateAgeOnGet:a,noDeleteOnStaleGet:o,status:U});let ae={allowStale:s,updateAgeOnGet:a,noDeleteOnStaleGet:o,ttl:g,noDisposeOnSet:p,size:f,sizeCalculation:m,noUpdateTTL:y,noDeleteOnFetchRejection:B,allowStaleOnFetchRejection:v,allowStaleOnFetchAbort:T,ignoreFetchAbort:k,status:U,signal:le},ge=this.#g.get(t);if(ge===void 0){U&&(U.fetch="miss");let fe=this.#G(t,ge,ae,O);return fe.__returned=fe}else{let fe=this.#o[ge];if(this.#l(fe)){let ke=s&&fe.__staleWhileFetching!==void 0;return U&&(U.fetch="inflight",ke&&(U.returnedStale=!0)),ke?fe.__staleWhileFetching:fe.__returned=fe}let pe=this.#h(ge);if(!X&&!pe)return U&&(U.fetch="hit"),this.#D(ge),a&&this.#N(ge),U&&this.#w(U,ge),fe;let he=this.#G(t,ge,ae,O),Te=he.__staleWhileFetching!==void 0&&s;return U&&(U.fetch=pe?"stale":"refresh",Te&&pe&&(U.returnedStale=!0)),Te?he.__staleWhileFetching:he.__returned=he}}async forceFetch(t,r={}){let s=await this.fetch(t,r);if(s===void 0)throw new Error("fetch() returned undefined");return s}memo(t,r={}){let s=this.#a;if(!s)throw new Error("no memoMethod provided to constructor");let{context:a,forceRefresh:o,...g}=r,p=this.get(t,g);if(!o&&p!==void 0)return p;let f=s(t,p,{options:g,context:a});return this.set(t,f,g),f}get(t,r={}){let{allowStale:s=this.allowStale,updateAgeOnGet:a=this.updateAgeOnGet,noDeleteOnStaleGet:o=this.noDeleteOnStaleGet,status:g}=r,p=this.#g.get(t);if(p!==void 0){let f=this.#o[p],m=this.#l(f);return g&&this.#w(g,p),this.#h(p)?(g&&(g.get="stale"),m?(g&&s&&f.__staleWhileFetching!==void 0&&(g.returnedStale=!0),s?f.__staleWhileFetching:void 0):(o||this.#S(t,"expire"),g&&s&&(g.returnedStale=!0),s?f:void 0)):(g&&(g.get="hit"),m?f.__staleWhileFetching:(this.#D(p),a&&this.#N(p),f))}else g&&(g.get="miss")}#W(t,r){this.#C[r]=t,this.#f[t]=r}#D(t){t!==this.#A&&(t===this.#p?this.#p=this.#f[t]:this.#W(this.#C[t],this.#f[t]),this.#W(this.#A,t),this.#A=t)}delete(t){return this.#S(t,"delete")}#S(t,r){let s=!1;if(this.#s!==0){let a=this.#g.get(t);if(a!==void 0)if(s=!0,this.#s===1)this.#P(r);else{this.#R(a);let o=this.#o[a];if(this.#l(o)?o.__abortController.abort(new Error("deleted")):(this.#E||this.#I)&&(this.#E&&this.#r?.(o,t,r),this.#I&&this.#d?.push([o,t,r])),this.#g.delete(t),this.#c[a]=void 0,this.#o[a]=void 0,a===this.#A)this.#A=this.#C[a];else if(a===this.#p)this.#p=this.#f[a];else{let g=this.#C[a];this.#f[g]=this.#f[a];let p=this.#f[a];this.#C[p]=this.#C[a]}this.#s--,this.#_.push(a)}}if(this.#I&&this.#d?.length){let a=this.#d,o;for(;o=a?.shift();)this.#n?.(...o)}return s}clear(){return this.#P("delete")}#P(t){for(let r of this.#v({allowStale:!0})){let s=this.#o[r];if(this.#l(s))s.__abortController.abort(new Error("deleted"));else{let a=this.#c[r];this.#E&&this.#r?.(s,a,t),this.#I&&this.#d?.push([s,a,t])}}if(this.#g.clear(),this.#o.fill(void 0),this.#c.fill(void 0),this.#m&&this.#b&&(this.#m.fill(0),this.#b.fill(0)),this.#y&&this.#y.fill(0),this.#p=0,this.#A=0,this.#_.length=0,this.#u=0,this.#s=0,this.#I&&this.#d){let r=this.#d,s;for(;s=r?.shift();)this.#n?.(...s)}}};Lat.LRUCache=w6t});var Q0n=z((KHc,O0n)=>{"use strict";var m_=(...e)=>e.every(t=>t)?e.join(""):"",hw=e=>e?encodeURIComponent(e):"",P0n=e=>e.toLowerCase().replace(/^\W+|\/|\W+$/g,"").replace(/\W+/g,"-"),L$s={sshtemplate:({domain:e,user:t,project:r,committish:s})=>`git@${e}:${t}/${r}.git${m_("#",s)}`,sshurltemplate:({domain:e,user:t,project:r,committish:s})=>`git+ssh://git@${e}/${t}/${r}.git${m_("#",s)}`,edittemplate:({domain:e,user:t,project:r,committish:s,editpath:a,path:o})=>`https://${e}/${t}/${r}${m_("/",a,"/",hw(s||"HEAD"),"/",o)}`,browsetemplate:({domain:e,user:t,project:r,committish:s,treepath:a})=>`https://${e}/${t}/${r}${m_("/",a,"/",hw(s))}`,browsetreetemplate:({domain:e,user:t,project:r,committish:s,treepath:a,path:o,fragment:g,hashformat:p})=>`https://${e}/${t}/${r}/${a}/${hw(s||"HEAD")}/${o}${m_("#",p(g||""))}`,browseblobtemplate:({domain:e,user:t,project:r,committish:s,blobpath:a,path:o,fragment:g,hashformat:p})=>`https://${e}/${t}/${r}/${a}/${hw(s||"HEAD")}/${o}${m_("#",p(g||""))}`,docstemplate:({domain:e,user:t,project:r,treepath:s,committish:a})=>`https://${e}/${t}/${r}${m_("/",s,"/",hw(a))}#readme`,httpstemplate:({auth:e,domain:t,user:r,project:s,committish:a})=>`git+https://${m_(e,"@")}${t}/${r}/${s}.git${m_("#",a)}`,filetemplate:({domain:e,user:t,project:r,committish:s,path:a})=>`https://${e}/${t}/${r}/raw/${hw(s||"HEAD")}/${a}`,shortcuttemplate:({type:e,user:t,project:r,committish:s})=>`${e}:${t}/${r}${m_("#",s)}`,pathtemplate:({user:e,project:t,committish:r})=>`${e}/${t}${m_("#",r)}`,bugstemplate:({domain:e,user:t,project:r})=>`https://${e}/${t}/${r}/issues`,hashformat:P0n},zne={};zne.github={protocols:["git:","http:","git+ssh:","git+https:","ssh:","https:"],domain:"github.com",treepath:"tree",blobpath:"blob",editpath:"edit",filetemplate:({auth:e,user:t,project:r,committish:s,path:a})=>`https://${m_(e,"@")}raw.githubusercontent.com/${t}/${r}/${hw(s||"HEAD")}/${a}`,gittemplate:({auth:e,domain:t,user:r,project:s,committish:a})=>`git://${m_(e,"@")}${t}/${r}/${s}.git${m_("#",a)}`,tarballtemplate:({domain:e,user:t,project:r,committish:s})=>`https://codeload.${e}/${t}/${r}/tar.gz/${hw(s||"HEAD")}`,extract:e=>{let[,t,r,s,a]=e.pathname.split("/",5);if(!(s&&s!=="tree")&&(s||(a=e.hash.slice(1)),r&&r.endsWith(".git")&&(r=r.slice(0,-4)),!(!t||!r)))return{user:t,project:r,committish:a}}};zne.bitbucket={protocols:["git+ssh:","git+https:","ssh:","https:"],domain:"bitbucket.org",treepath:"src",blobpath:"src",editpath:"?mode=edit",edittemplate:({domain:e,user:t,project:r,committish:s,treepath:a,path:o,editpath:g})=>`https://${e}/${t}/${r}${m_("/",a,"/",hw(s||"HEAD"),"/",o,g)}`,tarballtemplate:({domain:e,user:t,project:r,committish:s})=>`https://${e}/${t}/${r}/get/${hw(s||"HEAD")}.tar.gz`,extract:e=>{let[,t,r,s]=e.pathname.split("/",4);if(!["get"].includes(s)&&(r&&r.endsWith(".git")&&(r=r.slice(0,-4)),!(!t||!r)))return{user:t,project:r,committish:e.hash.slice(1)}}};zne.gitlab={protocols:["git+ssh:","git+https:","ssh:","https:"],domain:"gitlab.com",treepath:"tree",blobpath:"tree",editpath:"-/edit",httpstemplate:({auth:e,domain:t,user:r,project:s,committish:a})=>`git+https://${m_(e,"@")}${t}/${r}/${s}.git${m_("#",a)}`,tarballtemplate:({domain:e,user:t,project:r,committish:s})=>`https://${e}/${t}/${r}/repository/archive.tar.gz?ref=${hw(s||"HEAD")}`,extract:e=>{let t=e.pathname.slice(1);if(t.includes("/-/")||t.includes("/archive.tar.gz"))return;let r=t.split("/"),s=r.pop();s.endsWith(".git")&&(s=s.slice(0,-4));let a=r.join("/");if(!(!a||!s))return{user:a,project:s,committish:e.hash.slice(1)}}};zne.gist={protocols:["git:","git+ssh:","git+https:","ssh:","https:"],domain:"gist.github.com",editpath:"edit",sshtemplate:({domain:e,project:t,committish:r})=>`git@${e}:${t}.git${m_("#",r)}`,sshurltemplate:({domain:e,project:t,committish:r})=>`git+ssh://git@${e}/${t}.git${m_("#",r)}`,edittemplate:({domain:e,user:t,project:r,committish:s,editpath:a})=>`https://${e}/${t}/${r}${m_("/",hw(s))}/${a}`,browsetemplate:({domain:e,project:t,committish:r})=>`https://${e}/${t}${m_("/",hw(r))}`,browsetreetemplate:({domain:e,project:t,committish:r,path:s,hashformat:a})=>`https://${e}/${t}${m_("/",hw(r))}${m_("#",a(s))}`,browseblobtemplate:({domain:e,project:t,committish:r,path:s,hashformat:a})=>`https://${e}/${t}${m_("/",hw(r))}${m_("#",a(s))}`,docstemplate:({domain:e,project:t,committish:r})=>`https://${e}/${t}${m_("/",hw(r))}`,httpstemplate:({domain:e,project:t,committish:r})=>`git+https://${e}/${t}.git${m_("#",r)}`,filetemplate:({user:e,project:t,committish:r,path:s})=>`https://gist.githubusercontent.com/${e}/${t}/raw${m_("/",hw(r))}/${s}`,shortcuttemplate:({type:e,project:t,committish:r})=>`${e}:${t}${m_("#",r)}`,pathtemplate:({project:e,committish:t})=>`${e}${m_("#",t)}`,bugstemplate:({domain:e,project:t})=>`https://${e}/${t}`,gittemplate:({domain:e,project:t,committish:r})=>`git://${e}/${t}.git${m_("#",r)}`,tarballtemplate:({project:e,committish:t})=>`https://codeload.github.com/gist/${e}/tar.gz/${hw(t||"HEAD")}`,extract:e=>{let[,t,r,s]=e.pathname.split("/",4);if(s!=="raw"){if(!r){if(!t)return;r=t,t=null}return r.endsWith(".git")&&(r=r.slice(0,-4)),{user:t,project:r,committish:e.hash.slice(1)}}},hashformat:function(e){return e&&"file-"+P0n(e)}};zne.sourcehut={protocols:["git+ssh:","https:"],domain:"git.sr.ht",treepath:"tree",blobpath:"tree",filetemplate:({domain:e,user:t,project:r,committish:s,path:a})=>`https://${e}/${t}/${r}/blob/${hw(s)||"HEAD"}/${a}`,httpstemplate:({domain:e,user:t,project:r,committish:s})=>`https://${e}/${t}/${r}.git${m_("#",s)}`,tarballtemplate:({domain:e,user:t,project:r,committish:s})=>`https://${e}/${t}/${r}/archive/${hw(s)||"HEAD"}.tar.gz`,bugstemplate:()=>null,extract:e=>{let[,t,r,s]=e.pathname.split("/",4);if(!["archive"].includes(s)&&(r&&r.endsWith(".git")&&(r=r.slice(0,-4)),!(!t||!r)))return{user:t,project:r,committish:e.hash.slice(1)}}};for(let[e,t]of Object.entries(zne))zne[e]=Object.assign({},L$s,t);O0n.exports=zne});var N6t=z((jHc,H0n)=>{var V$s=xt("url"),T6t=(e,t,r)=>{let s=e.indexOf(r);return e.lastIndexOf(t,s>-1?s:1/0)},M0n=e=>{try{return new V$s.URL(e)}catch{}},W$s=(e,t)=>{let r=e.indexOf(":"),s=e.slice(0,r+1);if(Object.prototype.hasOwnProperty.call(t,s))return e;let a=e.indexOf("@");return a>-1?a>r?`git+ssh://${e}`:e:e.indexOf("//")===r+1?e:`${e.slice(0,r+1)}//${e.slice(r+1)}`},P$s=e=>{let t=T6t(e,"@","#"),r=T6t(e,":","#");return r>t&&(e=e.slice(0,r)+"/"+e.slice(r+1)),T6t(e,":","#")===-1&&e.indexOf("//")===-1&&(e=`git+ssh://${e}`),e};H0n.exports=(e,t)=>{let r=t?W$s(e,t):e;return M0n(r)||M0n(P$s(r))}});var X0n=z((zHc,Y0n)=>{"use strict";var O$s=N6t(),Q$s=e=>{let t=e.indexOf("#"),r=e.indexOf("/"),s=e.indexOf("/",r+1),a=e.indexOf(":"),o=/\s/.exec(e),g=e.indexOf("@"),p=!o||t>-1&&o.index>t,f=g===-1||t>-1&&g>t,m=a===-1||t>-1&&a>t,y=s===-1||t>-1&&s>t,B=r>0,v=t>-1?e[t-1]!=="/":!e.endsWith("/"),k=!e.startsWith(".");return p&&B&&v&&k&&f&&m&&y};Y0n.exports=(e,t,{gitHosts:r,protocols:s})=>{if(!e)return;let a=Q$s(e)?`github:${e}`:e,o=O$s(a,s);if(!o)return;let g=r.byShortcut[o.protocol],p=r.byDomain[o.hostname.startsWith("www.")?o.hostname.slice(4):o.hostname],f=g||p;if(!f)return;let m=r[g||p],y=null;s[o.protocol]?.auth&&(o.username||o.password)&&(y=`${o.username}${o.password?":"+o.password:""}`);let B=null,v=null,k=null,T=null;try{if(g){let O=o.pathname.startsWith("/")?o.pathname.slice(1):o.pathname,X=O.indexOf("@");X>-1&&(O=O.slice(X+1));let U=O.lastIndexOf("/");U>-1?(v=decodeURIComponent(O.slice(0,U)),v||(v=null),k=decodeURIComponent(O.slice(U+1))):k=decodeURIComponent(O),k.endsWith(".git")&&(k=k.slice(0,-4)),o.hash&&(B=decodeURIComponent(o.hash.slice(1))),T="shortcut"}else{if(!m.protocols.includes(o.protocol))return;let O=m.extract(o);if(!O)return;v=O.user&&decodeURIComponent(O.user),k=decodeURIComponent(O.project),B=decodeURIComponent(O.committish),T=s[o.protocol]?.name||o.protocol.slice(0,-1)}}catch(O){if(O instanceof URIError)return;throw O}return[f,v,y,k,B,T,t]}});var D6t=z((qHc,J0n)=>{"use strict";var{LRUCache:M$s}=W0n(),H$s=Q0n(),Y$s=X0n(),X$s=N6t(),R6t=new M$s({max:1e3}),Vat=class e{constructor(t,r,s,a,o,g,p={}){Object.assign(this,e.#e[t],{type:t,user:r,auth:s,project:a,committish:o,default:g,opts:p})}static#e={byShortcut:{},byDomain:{}};static#t={"git+ssh:":{name:"sshurl"},"ssh:":{name:"sshurl"},"git+https:":{name:"https",auth:!0},"git:":{auth:!0},"http:":{auth:!0},"https:":{auth:!0},"git+http:":{auth:!0}};static addHost(t,r){e.#e[t]=r,e.#e.byDomain[r.domain]=t,e.#e.byShortcut[`${t}:`]=t,e.#t[`${t}:`]={name:t}}static fromUrl(t,r){if(typeof t!="string")return;let s=t+JSON.stringify(r||{});if(!R6t.has(s)){let a=Y$s(t,r,{gitHosts:e.#e,protocols:e.#t});R6t.set(s,a?new e(...a):void 0)}return R6t.get(s)}static parseUrl(t){return X$s(t)}#r(t,r){if(typeof t!="function")return null;let s={...this,...this.opts,...r};s.path||(s.path=""),s.path.startsWith("/")&&(s.path=s.path.slice(1)),s.noCommittish&&(s.committish=null);let a=t(s);return s.noGitPlus&&a.startsWith("git+")?a.slice(4):a}hash(){return this.committish?`#${this.committish}`:""}ssh(t){return this.#r(this.sshtemplate,t)}sshurl(t){return this.#r(this.sshurltemplate,t)}browse(t,...r){return typeof t!="string"?this.#r(this.browsetemplate,t):typeof r[0]!="string"?this.#r(this.browsetreetemplate,{...r[0],path:t}):this.#r(this.browsetreetemplate,{...r[1],fragment:r[0],path:t})}browseFile(t,...r){return typeof r[0]!="string"?this.#r(this.browseblobtemplate,{...r[0],path:t}):this.#r(this.browseblobtemplate,{...r[1],fragment:r[0],path:t})}docs(t){return this.#r(this.docstemplate,t)}bugs(t){return this.#r(this.bugstemplate,t)}https(t){return this.#r(this.httpstemplate,t)}git(t){return this.#r(this.gittemplate,t)}shortcut(t){return this.#r(this.shortcuttemplate,t)}path(t){return this.#r(this.pathtemplate,t)}tarball(t){return this.#r(this.tarballtemplate,{...t,noCommittish:!1})}file(t,r){return this.#r(this.filetemplate,{...r,path:t})}edit(t,r){return this.#r(this.edittemplate,{...r,path:t})}getDefaultRepresentation(){return this.default}toString(t){return this.default&&typeof this[this.default]=="function"?this[this.default](t):this.sshurl(t)}};for(let[e,t]of Object.entries(H$s))Vat.addHost(e,t);J0n.exports=Vat});var K0n=z(($Hc,U0n)=>{"use strict";var{URL:J$s}=xt("url"),U$s=new RegExp(/^\/?:?([/\w-.]+)\/([\w-.]+)\/?$/),K$s=new RegExp(/^\/repos\/([\w-.]+)\/([\w-.]+)\/(?:tarball|zipball)(?:\/.+)?$/),j$s=new RegExp(/^\/([\w-.]+)\/([\w-.]+)\/(?:legacy\.(?:zip|tar\.gz))(?:\/.+)?$/);U0n.exports=e=>{let t=e.replace(/^git@/,"https://git@").replace(/git@([.\w]+):(?!\d)/,"git@$1/").replace(/\.git$/,""),r=new J$s(t,"https://example.com/"),s=a=>({browse:q$s(r,a),domain:r.host,project:a[2]||null,type:z$s(r),user:a[1]||null});if(r.host){if(r.host.includes("api.github.com")){let a=K$s.exec(r.pathname)||[];return s(a)}if(r.host.includes("codeload.github.com")){let a=j$s.exec(r.pathname)||[];return s(a)}}return s(U$s.exec(r.pathname)||[])};function z$s({host:e}){return typeof e!="string"?null:e.indexOf("github")!==-1?"github":e.indexOf("gitlab")!==-1?"gitlab":null}function q$s(e,t){let s=`${e.protocol==="http:"?"http:":"https:"}//${e.host}/${t[1]}/${t[2]}`;return()=>s}});var x6t=z((rYc,eeo)=>{eeo.exports=["0BSD","3D-Slicer-1.0","AAL","ADSL","AFL-1.1","AFL-1.2","AFL-2.0","AFL-2.1","AFL-3.0","AGPL-1.0-only","AGPL-1.0-or-later","AGPL-3.0-only","AGPL-3.0-or-later","AMD-newlib","AMDPLPA","AML","AML-glslang","AMPAS","ANTLR-PD","ANTLR-PD-fallback","APAFML","APL-1.0","APSL-1.0","APSL-1.1","APSL-1.2","APSL-2.0","ASWF-Digital-Assets-1.0","ASWF-Digital-Assets-1.1","Abstyles","AdaCore-doc","Adobe-2006","Adobe-Display-PostScript","Adobe-Glyph","Adobe-Utopia","Afmparse","Aladdin","Apache-1.0","Apache-1.1","Apache-2.0","App-s2p","Arphic-1999","Artistic-1.0","Artistic-1.0-Perl","Artistic-1.0-cl8","Artistic-2.0","BSD-1-Clause","BSD-2-Clause","BSD-2-Clause-Darwin","BSD-2-Clause-Patent","BSD-2-Clause-Views","BSD-2-Clause-first-lines","BSD-3-Clause","BSD-3-Clause-Attribution","BSD-3-Clause-Clear","BSD-3-Clause-HP","BSD-3-Clause-LBNL","BSD-3-Clause-Modification","BSD-3-Clause-No-Military-License","BSD-3-Clause-No-Nuclear-License","BSD-3-Clause-No-Nuclear-License-2014","BSD-3-Clause-No-Nuclear-Warranty","BSD-3-Clause-Open-MPI","BSD-3-Clause-Sun","BSD-3-Clause-acpica","BSD-3-Clause-flex","BSD-4-Clause","BSD-4-Clause-Shortened","BSD-4-Clause-UC","BSD-4.3RENO","BSD-4.3TAHOE","BSD-Advertising-Acknowledgement","BSD-Attribution-HPND-disclaimer","BSD-Inferno-Nettverk","BSD-Protection","BSD-Source-Code","BSD-Source-beginning-file","BSD-Systemics","BSD-Systemics-W3Works","BSL-1.0","BUSL-1.1","Baekmuk","Bahyph","Barr","Beerware","BitTorrent-1.0","BitTorrent-1.1","Bitstream-Charter","Bitstream-Vera","BlueOak-1.0.0","Boehm-GC","Borceux","Brian-Gladman-2-Clause","Brian-Gladman-3-Clause","C-UDA-1.0","CAL-1.0","CAL-1.0-Combined-Work-Exception","CATOSL-1.1","CC-BY-1.0","CC-BY-2.0","CC-BY-2.5","CC-BY-2.5-AU","CC-BY-3.0","CC-BY-3.0-AT","CC-BY-3.0-AU","CC-BY-3.0-DE","CC-BY-3.0-IGO","CC-BY-3.0-NL","CC-BY-3.0-US","CC-BY-4.0","CC-BY-NC-1.0","CC-BY-NC-2.0","CC-BY-NC-2.5","CC-BY-NC-3.0","CC-BY-NC-3.0-DE","CC-BY-NC-4.0","CC-BY-NC-ND-1.0","CC-BY-NC-ND-2.0","CC-BY-NC-ND-2.5","CC-BY-NC-ND-3.0","CC-BY-NC-ND-3.0-DE","CC-BY-NC-ND-3.0-IGO","CC-BY-NC-ND-4.0","CC-BY-NC-SA-1.0","CC-BY-NC-SA-2.0","CC-BY-NC-SA-2.0-DE","CC-BY-NC-SA-2.0-FR","CC-BY-NC-SA-2.0-UK","CC-BY-NC-SA-2.5","CC-BY-NC-SA-3.0","CC-BY-NC-SA-3.0-DE","CC-BY-NC-SA-3.0-IGO","CC-BY-NC-SA-4.0","CC-BY-ND-1.0","CC-BY-ND-2.0","CC-BY-ND-2.5","CC-BY-ND-3.0","CC-BY-ND-3.0-DE","CC-BY-ND-4.0","CC-BY-SA-1.0","CC-BY-SA-2.0","CC-BY-SA-2.0-UK","CC-BY-SA-2.1-JP","CC-BY-SA-2.5","CC-BY-SA-3.0","CC-BY-SA-3.0-AT","CC-BY-SA-3.0-DE","CC-BY-SA-3.0-IGO","CC-BY-SA-4.0","CC-PDDC","CC0-1.0","CDDL-1.0","CDDL-1.1","CDL-1.0","CDLA-Permissive-1.0","CDLA-Permissive-2.0","CDLA-Sharing-1.0","CECILL-1.0","CECILL-1.1","CECILL-2.0","CECILL-2.1","CECILL-B","CECILL-C","CERN-OHL-1.1","CERN-OHL-1.2","CERN-OHL-P-2.0","CERN-OHL-S-2.0","CERN-OHL-W-2.0","CFITSIO","CMU-Mach","CMU-Mach-nodoc","CNRI-Jython","CNRI-Python","CNRI-Python-GPL-Compatible","COIL-1.0","CPAL-1.0","CPL-1.0","CPOL-1.02","CUA-OPL-1.0","Caldera","Caldera-no-preamble","Catharon","ClArtistic","Clips","Community-Spec-1.0","Condor-1.1","Cornell-Lossless-JPEG","Cronyx","Crossword","CrystalStacker","Cube","D-FSL-1.0","DEC-3-Clause","DL-DE-BY-2.0","DL-DE-ZERO-2.0","DOC","DRL-1.0","DRL-1.1","DSDP","DocBook-Schema","DocBook-XML","Dotseqn","ECL-1.0","ECL-2.0","EFL-1.0","EFL-2.0","EPICS","EPL-1.0","EPL-2.0","EUDatagrid","EUPL-1.0","EUPL-1.1","EUPL-1.2","Elastic-2.0","Entessa","ErlPL-1.1","Eurosym","FBM","FDK-AAC","FSFAP","FSFAP-no-warranty-disclaimer","FSFUL","FSFULLR","FSFULLRWD","FTL","Fair","Ferguson-Twofish","Frameworx-1.0","FreeBSD-DOC","FreeImage","Furuseth","GCR-docs","GD","GFDL-1.1-invariants-only","GFDL-1.1-invariants-or-later","GFDL-1.1-no-invariants-only","GFDL-1.1-no-invariants-or-later","GFDL-1.1-only","GFDL-1.1-or-later","GFDL-1.2-invariants-only","GFDL-1.2-invariants-or-later","GFDL-1.2-no-invariants-only","GFDL-1.2-no-invariants-or-later","GFDL-1.2-only","GFDL-1.2-or-later","GFDL-1.3-invariants-only","GFDL-1.3-invariants-or-later","GFDL-1.3-no-invariants-only","GFDL-1.3-no-invariants-or-later","GFDL-1.3-only","GFDL-1.3-or-later","GL2PS","GLWTPL","GPL-1.0-only","GPL-1.0-or-later","GPL-2.0-only","GPL-2.0-or-later","GPL-3.0-only","GPL-3.0-or-later","Giftware","Glide","Glulxe","Graphics-Gems","Gutmann","HIDAPI","HP-1986","HP-1989","HPND","HPND-DEC","HPND-Fenneberg-Livingston","HPND-INRIA-IMAG","HPND-Intel","HPND-Kevlin-Henney","HPND-MIT-disclaimer","HPND-Markus-Kuhn","HPND-Netrek","HPND-Pbmplus","HPND-UC","HPND-UC-export-US","HPND-doc","HPND-doc-sell","HPND-export-US","HPND-export-US-acknowledgement","HPND-export-US-modify","HPND-export2-US","HPND-merchantability-variant","HPND-sell-MIT-disclaimer-xserver","HPND-sell-regexpr","HPND-sell-variant","HPND-sell-variant-MIT-disclaimer","HPND-sell-variant-MIT-disclaimer-rev","HTMLTIDY","HaskellReport","Hippocratic-2.1","IBM-pibs","ICU","IEC-Code-Components-EULA","IJG","IJG-short","IPA","IPL-1.0","ISC","ISC-Veillard","ImageMagick","Imlib2","Info-ZIP","Inner-Net-2.0","Intel","Intel-ACPI","Interbase-1.0","JPL-image","JPNIC","JSON","Jam","JasPer-2.0","Kastrup","Kazlib","Knuth-CTAN","LAL-1.2","LAL-1.3","LGPL-2.0-only","LGPL-2.0-or-later","LGPL-2.1-only","LGPL-2.1-or-later","LGPL-3.0-only","LGPL-3.0-or-later","LGPLLR","LOOP","LPD-document","LPL-1.0","LPL-1.02","LPPL-1.0","LPPL-1.1","LPPL-1.2","LPPL-1.3a","LPPL-1.3c","LZMA-SDK-9.11-to-9.20","LZMA-SDK-9.22","Latex2e","Latex2e-translated-notice","Leptonica","LiLiQ-P-1.1","LiLiQ-R-1.1","LiLiQ-Rplus-1.1","Libpng","Linux-OpenIB","Linux-man-pages-1-para","Linux-man-pages-copyleft","Linux-man-pages-copyleft-2-para","Linux-man-pages-copyleft-var","Lucida-Bitmap-Fonts","MIT","MIT-0","MIT-CMU","MIT-Festival","MIT-Khronos-old","MIT-Modern-Variant","MIT-Wu","MIT-advertising","MIT-enna","MIT-feh","MIT-open-group","MIT-testregex","MITNFA","MMIXware","MPEG-SSG","MPL-1.0","MPL-1.1","MPL-2.0","MPL-2.0-no-copyleft-exception","MS-LPL","MS-PL","MS-RL","MTLL","Mackerras-3-Clause","Mackerras-3-Clause-acknowledgment","MakeIndex","Martin-Birgmeier","McPhee-slideshow","Minpack","MirOS","Motosoto","MulanPSL-1.0","MulanPSL-2.0","Multics","Mup","NAIST-2003","NASA-1.3","NBPL-1.0","NCBI-PD","NCGL-UK-2.0","NCL","NCSA","NGPL","NICTA-1.0","NIST-PD","NIST-PD-fallback","NIST-Software","NLOD-1.0","NLOD-2.0","NLPL","NOSL","NPL-1.0","NPL-1.1","NPOSL-3.0","NRL","NTP","NTP-0","Naumen","NetCDF","Newsletr","Nokia","Noweb","O-UDA-1.0","OAR","OCCT-PL","OCLC-2.0","ODC-By-1.0","ODbL-1.0","OFFIS","OFL-1.0","OFL-1.0-RFN","OFL-1.0-no-RFN","OFL-1.1","OFL-1.1-RFN","OFL-1.1-no-RFN","OGC-1.0","OGDL-Taiwan-1.0","OGL-Canada-2.0","OGL-UK-1.0","OGL-UK-2.0","OGL-UK-3.0","OGTSL","OLDAP-1.1","OLDAP-1.2","OLDAP-1.3","OLDAP-1.4","OLDAP-2.0","OLDAP-2.0.1","OLDAP-2.1","OLDAP-2.2","OLDAP-2.2.1","OLDAP-2.2.2","OLDAP-2.3","OLDAP-2.4","OLDAP-2.5","OLDAP-2.6","OLDAP-2.7","OLDAP-2.8","OLFL-1.3","OML","OPL-1.0","OPL-UK-3.0","OPUBL-1.0","OSET-PL-2.1","OSL-1.0","OSL-1.1","OSL-2.0","OSL-2.1","OSL-3.0","OpenPBS-2.3","OpenSSL","OpenSSL-standalone","OpenVision","PADL","PDDL-1.0","PHP-3.0","PHP-3.01","PPL","PSF-2.0","Parity-6.0.0","Parity-7.0.0","Pixar","Plexus","PolyForm-Noncommercial-1.0.0","PolyForm-Small-Business-1.0.0","PostgreSQL","Python-2.0","Python-2.0.1","QPL-1.0","QPL-1.0-INRIA-2004","Qhull","RHeCos-1.1","RPL-1.1","RPL-1.5","RPSL-1.0","RSA-MD","RSCPL","Rdisc","Ruby","Ruby-pty","SAX-PD","SAX-PD-2.0","SCEA","SGI-B-1.0","SGI-B-1.1","SGI-B-2.0","SGI-OpenGL","SGP4","SHL-0.5","SHL-0.51","SISSL","SISSL-1.2","SL","SMLNJ","SMPPL","SNIA","SPL-1.0","SSH-OpenSSH","SSH-short","SSLeay-standalone","SSPL-1.0","SWL","Saxpath","SchemeReport","Sendmail","Sendmail-8.23","SimPL-2.0","Sleepycat","Soundex","Spencer-86","Spencer-94","Spencer-99","SugarCRM-1.1.3","Sun-PPP","Sun-PPP-2000","SunPro","Symlinks","TAPR-OHL-1.0","TCL","TCP-wrappers","TGPPL-1.0","TMate","TORQUE-1.1","TOSL","TPDL","TPL-1.0","TTWL","TTYP0","TU-Berlin-1.0","TU-Berlin-2.0","TermReadKey","UCAR","UCL-1.0","UMich-Merit","UPL-1.0","URT-RLE","Ubuntu-font-1.0","Unicode-3.0","Unicode-DFS-2015","Unicode-DFS-2016","Unicode-TOU","UnixCrypt","Unlicense","VOSTROM","VSL-1.0","Vim","W3C","W3C-19980720","W3C-20150513","WTFPL","Watcom-1.0","Widget-Workshop","Wsuipa","X11","X11-distribute-modifications-variant","X11-swapped","XFree86-1.1","XSkat","Xdebug-1.03","Xerox","Xfig","Xnet","YPL-1.0","YPL-1.1","ZPL-1.1","ZPL-2.0","ZPL-2.1","Zed","Zeeff","Zend-2.0","Zimbra-1.3","Zimbra-1.4","Zlib","any-OSI","bcrypt-Solar-Designer","blessing","bzip2-1.0.6","check-cvs","checkmk","copyleft-next-0.3.0","copyleft-next-0.3.1","curl","cve-tou","diffmark","dtoa","dvipdfm","eGenix","etalab-2.0","fwlw","gSOAP-1.3b","gnuplot","gtkbook","hdparm","iMatix","libpng-2.0","libselinux-1.0","libtiff","libutil-David-Nugent","lsof","magaz","mailprio","metamail","mpi-permissive","mpich2","mplus","pkgconf","pnmstitch","psfrag","psutils","python-ldap","radvd","snprintf","softSurfer","ssh-keyscan","swrule","threeparttable","ulem","w3m","xinetd","xkeyboard-config-Zinoviev","xlock","xpp","xzoom","zlib-acknowledgement"]});var z0n=z((nYc,teo)=>{teo.exports=["AGPL-1.0","AGPL-3.0","BSD-2-Clause-FreeBSD","BSD-2-Clause-NetBSD","GFDL-1.1","GFDL-1.2","GFDL-1.3","GPL-1.0","GPL-2.0","GPL-2.0-with-GCC-exception","GPL-2.0-with-autoconf-exception","GPL-2.0-with-bison-exception","GPL-2.0-with-classpath-exception","GPL-2.0-with-font-exception","GPL-3.0","GPL-3.0-with-GCC-exception","GPL-3.0-with-autoconf-exception","LGPL-2.0","LGPL-2.1","LGPL-3.0","Net-SNMP","Nunit","StandardML-NJ","bzip2-1.0.5","eCos-2.0","wxWindows"]});var q0n=z((iYc,reo)=>{reo.exports=["389-exception","Asterisk-exception","Autoconf-exception-2.0","Autoconf-exception-3.0","Autoconf-exception-generic","Autoconf-exception-generic-3.0","Autoconf-exception-macro","Bison-exception-1.24","Bison-exception-2.2","Bootloader-exception","Classpath-exception-2.0","CLISP-exception-2.0","cryptsetup-OpenSSL-exception","DigiRule-FOSS-exception","eCos-exception-2.0","Fawkes-Runtime-exception","FLTK-exception","fmt-exception","Font-exception-2.0","freertos-exception-2.0","GCC-exception-2.0","GCC-exception-2.0-note","GCC-exception-3.1","Gmsh-exception","GNAT-exception","GNOME-examples-exception","GNU-compiler-exception","gnu-javamail-exception","GPL-3.0-interface-exception","GPL-3.0-linking-exception","GPL-3.0-linking-source-exception","GPL-CC-1.0","GStreamer-exception-2005","GStreamer-exception-2008","i2p-gpl-java-exception","KiCad-libraries-exception","LGPL-3.0-linking-exception","libpri-OpenH323-exception","Libtool-exception","Linux-syscall-note","LLGPL","LLVM-exception","LZMA-exception","mif-exception","OCaml-LGPL-linking-exception","OCCT-exception-1.0","OpenJDK-assembly-exception-1.0","openvpn-openssl-exception","PS-or-PDF-font-exception-20170817","QPL-1.0-INRIA-2004-exception","Qt-GPL-exception-1.0","Qt-LGPL-exception-1.1","Qwt-exception-1.0","SANE-exception","SHL-2.0","SHL-2.1","stunnel-exception","SWI-exception","Swift-exception","Texinfo-exception","u-boot-exception-2.0","UBDL-exception","Universal-FOSS-exception-1.0","vsftpd-openssl-exception","WxWindows-exception-3.1","x11vnc-openssl-exception"]});var eyn=z((sYc,$0n)=>{"use strict";var neo=[].concat(x6t()).concat(z0n()),ieo=q0n();$0n.exports=function(e){var t=0;function r(){return t1&&e[t-2]===" ")throw new Error("Space before `+`");return T&&{type:"OPERATOR",string:T}}function g(){return s(/[A-Za-z0-9-.]+/)}function p(){var T=g();if(!T)throw new Error("Expected idstring at offset "+t);return T}function f(){if(s("DocumentRef-")){var T=p();return{type:"DOCUMENTREF",string:T}}}function m(){if(s("LicenseRef-")){var T=p();return{type:"LICENSEREF",string:T}}}function y(){var T=t,O=g();if(neo.indexOf(O)!==-1)return{type:"LICENSE",string:O};if(ieo.indexOf(O)!==-1)return{type:"EXCEPTION",string:O};t=T}function B(){return o()||f()||m()||y()}for(var v=[];r()&&(a(),!!r());){var k=B();if(!k)throw new Error("Unexpected `"+e[t]+"` at offset "+t);v.push(k)}return v}});var ryn=z((oYc,tyn)=>{"use strict";tyn.exports=function(e){var t=0;function r(){return t{"use strict";var seo=eyn(),oeo=ryn();nyn.exports=function(e){return oeo(seo(e))}});var Ayn=z((cYc,gyn)=>{var aeo=k6t(),ceo=x6t();function Wat(e){try{return aeo(e),!0}catch{return!1}}function uyn(e,t){var r=t[0].length-e[0].length;return r!==0?r:e[0].toUpperCase().localeCompare(t[0].toUpperCase())}var iyn=[["APGL","AGPL"],["Gpl","GPL"],["GLP","GPL"],["APL","Apache"],["ISD","ISC"],["GLP","GPL"],["IST","ISC"],["Claude","Clause"],[" or later","+"],[" International",""],["GNU","GPL"],["GUN","GPL"],["+",""],["GNU GPL","GPL"],["GNU LGPL","LGPL"],["GNU/GPL","GPL"],["GNU GLP","GPL"],["GNU LESSER GENERAL PUBLIC LICENSE","LGPL"],["GNU Lesser General Public License","LGPL"],["GNU LESSER GENERAL PUBLIC LICENSE","LGPL-2.1"],["GNU Lesser General Public License","LGPL-2.1"],["LESSER GENERAL PUBLIC LICENSE","LGPL"],["Lesser General Public License","LGPL"],["LESSER GENERAL PUBLIC LICENSE","LGPL-2.1"],["Lesser General Public License","LGPL-2.1"],["GNU General Public License","GPL"],["Gnu public license","GPL"],["GNU Public License","GPL"],["GNU GENERAL PUBLIC LICENSE","GPL"],["MTI","MIT"],["Mozilla Public License","MPL"],["Universal Permissive License","UPL"],["WTH","WTF"],["WTFGPL","WTFPL"],["-License",""]].sort(uyn),leo=0,ueo=1,syn=[function(e){return e.toUpperCase()},function(e){return e.trim()},function(e){return e.replace(/\./g,"")},function(e){return e.replace(/\s+/g,"")},function(e){return e.replace(/\s+/g,"-")},function(e){return e.replace("v","-")},function(e){return e.replace(/,?\s*(\d)/,"-$1")},function(e){return e.replace(/,?\s*(\d)/,"-$1.0")},function(e){return e.replace(/,?\s*(V\.|v\.|V|v|Version|version)\s*(\d)/,"-$2")},function(e){return e.replace(/,?\s*(V\.|v\.|V|v|Version|version)\s*(\d)/,"-$2.0")},function(e){return e[0].toUpperCase()+e.slice(1)},function(e){return e.replace("/","-")},function(e){return e.replace(/\s*V\s*(\d)/,"-$1").replace(/(\d)$/,"$1.0")},function(e){return e.indexOf("3.0")!==-1?e+"-or-later":e+"-only"},function(e){return e+"only"},function(e){return e.replace(/(\d)$/,"-$1.0")},function(e){return e.replace(/(-| )?(\d)$/,"-$2-Clause")},function(e){return e.replace(/(-| )clause(-| )(\d)/,"-$3-Clause")},function(e){return e.replace(/\b(Modified|New|Revised)(-| )?BSD((-| )License)?/i,"BSD-3-Clause")},function(e){return e.replace(/\bSimplified(-| )?BSD((-| )License)?/i,"BSD-2-Clause")},function(e){return e.replace(/\b(Free|Net)(-| )?BSD((-| )License)?/i,"BSD-2-Clause-$1BSD")},function(e){return e.replace(/\bClear(-| )?BSD((-| )License)?/i,"BSD-3-Clause-Clear")},function(e){return e.replace(/\b(Old|Original)(-| )?BSD((-| )License)?/i,"BSD-4-Clause")},function(e){return"CC-"+e},function(e){return"CC-"+e+"-4.0"},function(e){return e.replace("Attribution","BY").replace("NonCommercial","NC").replace("NoDerivatives","ND").replace(/ (\d)/,"-$1").replace(/ ?International/,"")},function(e){return"CC-"+e.replace("Attribution","BY").replace("NonCommercial","NC").replace("NoDerivatives","ND").replace(/ (\d)/,"-$1").replace(/ ?International/,"")+"-4.0"}],G6t=ceo.map(function(e){var t=/^(.*)-\d+\.\d+$/.exec(e);return t?[t[0],t[1]]:[e,null]}).reduce(function(e,t){var r=t[1];return e[r]=e[r]||[],e[r].push(t[0]),e},{}),geo=Object.keys(G6t).map(function(t){return[t,G6t[t]]}).filter(function(t){return t[1].length===1&&t[0]!==null&&t[0]!=="APL"}).map(function(t){return[t[0],t[1][0]]});G6t=void 0;var oyn=[["UNLI","Unlicense"],["WTF","WTFPL"],["2 CLAUSE","BSD-2-Clause"],["2-CLAUSE","BSD-2-Clause"],["3 CLAUSE","BSD-3-Clause"],["3-CLAUSE","BSD-3-Clause"],["AFFERO","AGPL-3.0-or-later"],["AGPL","AGPL-3.0-or-later"],["APACHE","Apache-2.0"],["ARTISTIC","Artistic-2.0"],["Affero","AGPL-3.0-or-later"],["BEER","Beerware"],["BOOST","BSL-1.0"],["BSD","BSD-2-Clause"],["CDDL","CDDL-1.1"],["ECLIPSE","EPL-1.0"],["FUCK","WTFPL"],["GNU","GPL-3.0-or-later"],["LGPL","LGPL-3.0-or-later"],["GPLV1","GPL-1.0-only"],["GPL-1","GPL-1.0-only"],["GPLV2","GPL-2.0-only"],["GPL-2","GPL-2.0-only"],["GPL","GPL-3.0-or-later"],["MIT +NO-FALSE-ATTRIBS","MITNFA"],["MIT","MIT"],["MPL","MPL-2.0"],["X11","X11"],["ZLIB","Zlib"]].concat(geo).sort(uyn),Aeo=0,deo=1,ayn=function(e){for(var t=0;t-1)return s[deo]}return null},lyn=function(e,t){for(var r=0;r-1){var o=e.replace(a,s[ueo]),g=t(o);if(g!==null)return g}}return null};gyn.exports=function(e,t){t=t||{};var r=t.upgrade===void 0?!0:!!t.upgrade;function s(p){return r?peo(p):p}var a=typeof e=="string"&&e.trim().length!==0;if(!a)throw Error("Invalid argument. Expected non-empty string.");if(e=e.trim(),Wat(e))return s(e);var o=e.replace(/\+$/,"").trim();if(Wat(o))return s(o);var g=ayn(e);return g!==null||(g=lyn(e,function(p){return Wat(p)?p:ayn(p)}),g!==null)||(g=cyn(e),g!==null)||(g=lyn(e,cyn),g!==null)?s(g):null};function peo(e){return["GPL-1.0","LGPL-1.0","AGPL-1.0","GPL-2.0","LGPL-2.0","AGPL-2.0","LGPL-2.1"].indexOf(e)!==-1?e+"-only":["GPL-1.0+","GPL-2.0+","GPL-3.0+","LGPL-2.0+","LGPL-2.1+","LGPL-3.0+","AGPL-1.0+","AGPL-3.0+"].indexOf(e)!==-1?e.replace(/\+$/,"-or-later"):["GPL-3.0","LGPL-3.0","AGPL-3.0"].indexOf(e)!==-1?e+"-or-later":e}});var Iyn=z((lYc,fyn)=>{var feo=k6t(),Ieo=Ayn(),dyn='license should be a valid SPDX license expression (without "LicenseRef"), "UNLICENSED", or "SEE LICENSE IN "',Ceo=/^SEE LICEN[CS]E IN (.+)$/;function pyn(e,t){return t.slice(0,e.length)===e}function F6t(e){if(e.hasOwnProperty("license")){var t=e.license;return pyn("LicenseRef",t)||pyn("DocumentRef",t)}else return F6t(e.left)||F6t(e.right)}fyn.exports=function(e){var t;try{t=feo(e)}catch{var r;if(e==="UNLICENSED"||e==="UNLICENCED")return{validForOldPackages:!0,validForNewPackages:!0,unlicensed:!0};if(r=Ceo.exec(e))return{validForOldPackages:!0,validForNewPackages:!0,inFile:r[1]};var s={validForOldPackages:!1,validForNewPackages:!1,warnings:[dyn]};if(e.trim().length!==0){var a=Ieo(e);a&&s.warnings.push('license is similar to the valid expression "'+a+'"')}return s}return F6t(t)?{validForNewPackages:!1,validForOldPackages:!1,spdx:!0,warnings:[dyn]}:{validForNewPackages:!0,validForOldPackages:!0,spdx:!0}}});var myn=z((uYc,Cyn)=>{Cyn.exports=meo;function meo(e){if(!e||e==="ERROR: No README data found!")return;e=e.trim().split(` +`);let t=0;for(;e[t]&&e[t].trim().match(/^(#|$)/);)t++;let r=e.length,s=t+1;for(;s{heo.exports={topLevel:{dependancies:"dependencies",dependecies:"dependencies",depdenencies:"dependencies",devEependencies:"devDependencies",depends:"dependencies","dev-dependencies":"devDependencies",devDependences:"devDependencies",devDepenencies:"devDependencies",devdependencies:"devDependencies",repostitory:"repository",repo:"repository",prefereGlobal:"preferGlobal",hompage:"homepage",hampage:"homepage",autohr:"author",autor:"author",contributers:"contributors",publicationConfig:"publishConfig",script:"scripts"},bugs:{web:"url",name:"url"},script:{server:"start",tests:"test"}}});var Eyn=z((AYc,byn)=>{var _eo=U5t(),yeo=K5t(),beo=Iyn(),Pat=D6t(),Eeo=xt("node:module"),Beo=["dependencies","devDependencies","optionalDependencies"],veo=myn(),Z6t=xt("url"),qne=hyn(),_yn=e=>e.includes("@")&&e.indexOf("@")"u"&&(t={});var r=t.strict;if(!e.name&&!r){e.name="";return}if(typeof e.name!="string")throw new Error("name field must be a string.");r||(e.name=e.name.trim()),Teo(e.name,r,t.allowLegacyCase),Eeo.builtinModules.includes(e.name)&&this.warn("conflictingName",e.name)},fixDescriptionField:function(e){e.description&&typeof e.description!="string"&&(this.warn("nonStringDescription"),delete e.description),e.readme&&!e.description&&(e.description=veo(e.readme)),e.description===void 0&&delete e.description,e.description||this.warn("missingDescription")},fixReadmeField:function(e){e.readme||(this.warn("missingReadme"),e.readme="ERROR: No README data found!")},fixBugsField:function(e){if(!e.bugs&&e.repository&&e.repository.url){var t=Pat.fromUrl(e.repository.url);t&&t.bugs()&&(e.bugs={url:t.bugs()})}else if(e.bugs){if(typeof e.bugs=="string")_yn(e.bugs)?e.bugs={email:e.bugs}:Z6t.parse(e.bugs).protocol?e.bugs={url:e.bugs}:this.warn("nonEmailUrlBugsString");else{Geo(e.bugs,this.warn);var r=e.bugs;e.bugs={},r.url&&(typeof r.url=="string"&&Z6t.parse(r.url).protocol?e.bugs.url=r.url:this.warn("nonUrlBugsUrlField")),r.email&&(typeof r.email=="string"&&_yn(r.email)?e.bugs.email=r.email:this.warn("nonEmailBugsEmailField"))}!e.bugs.email&&!e.bugs.url&&(delete e.bugs,this.warn("emptyNormalizedBugs"))}},fixHomepageField:function(e){if(!e.homepage&&e.repository&&e.repository.url){var t=Pat.fromUrl(e.repository.url);t&&t.docs()&&(e.homepage=t.docs())}if(e.homepage){if(typeof e.homepage!="string")return this.warn("nonUrlHomepage"),delete e.homepage;Z6t.parse(e.homepage).protocol||(e.homepage="http://"+e.homepage)}},fixLicenseField:function(e){let t=e.license||e.licence;if(!t)return this.warn("missingLicense");if(typeof t!="string"||t.length<1||t.trim()==="")return this.warn("invalidLicense");if(!beo(t).validForNewPackages)return this.warn("invalidLicense")}};function Seo(e){if(e.charAt(0)!=="@")return!1;var t=e.slice(1).split("/");return t.length!==2?!1:t[0]&&t[1]&&t[0]===encodeURIComponent(t[0])&&t[1]===encodeURIComponent(t[1])}function weo(e){return!e.match(/[/@\s+%:]/)&&e===encodeURIComponent(e)}function Teo(e,t,r){if(e.charAt(0)==="."||!(Seo(e)||weo(e))||t&&!r&&e!==e.toLowerCase()||e.toLowerCase()==="node_modules"||e.toLowerCase()==="favicon.ico")throw new Error("Invalid name: "+JSON.stringify(e))}function yyn(e,t){return e.author&&(e.author=t(e.author)),["maintainers","contributors"].forEach(function(r){Array.isArray(e[r])&&(e[r]=e[r].map(t))}),e}function Neo(e){if(typeof e=="string")return e;var t=e.name||"",r=e.url||e.web,s=r?" ("+r+")":"",a=e.email||e.mail,o=a?" <"+a+">":"";return t+o+s}function Reo(e){if(typeof e!="string")return e;var t=e.match(/^([^(<]+)/),r=e.match(/\(([^()]+)\)/),s=e.match(/<([^<>]+)>/),a={};return t&&t[0].trim()&&(a.name=t[0].trim()),s&&(a.email=s[1]),r&&(a.url=r[1]),a}function Deo(e){var t=e.optionalDependencies;if(t){var r=e.dependencies||{};Object.keys(t).forEach(function(s){r[s]=t[s]}),e.dependencies=r}}function xeo(e,t,r){if(!e)return{};if(typeof e=="string"&&(e=e.trim().split(/[\n\r\s\t ,]+/)),!Array.isArray(e))return e;r("deprecatedArrayDependencies",t);var s={};return e.filter(function(a){return typeof a=="string"}).forEach(function(a){a=a.trim().split(/(:?[@\s><=])/);var o=a.shift(),g=a.join("");g=g.trim(),g=g.replace(/^@/,""),s[o]=g}),s}function keo(e,t){Beo.forEach(function(r){e[r]&&(e[r]=xeo(e[r],r,t))})}function Geo(e,t){e&&Object.keys(e).forEach(function(r){qne.bugs[r]&&(t("typo",r,qne.bugs[r],"bugs"),e[qne.bugs[r]]=e[r],delete e[r])})}});var Byn=z((dYc,Feo)=>{Feo.exports={repositories:"'repositories' (plural) Not supported. Please pick one as the 'repository' field",missingRepository:"No repository field.",brokenGitUrl:"Probably broken git url: %s",nonObjectScripts:"scripts must be an object",nonStringScript:"script values must be string commands",nonArrayFiles:"Invalid 'files' member",invalidFilename:"Invalid filename in 'files' list: %s",nonArrayBundleDependencies:"Invalid 'bundleDependencies' list. Must be array of package names",nonStringBundleDependency:"Invalid bundleDependencies member: %s",nonDependencyBundleDependency:"Non-dependency in bundleDependencies: %s",nonObjectDependencies:"%s field must be an object",nonStringDependency:"Invalid dependency: %s %s",deprecatedArrayDependencies:"specifying %s as array is deprecated",deprecatedModules:"modules field is deprecated",nonArrayKeywords:"keywords should be an array of strings",nonStringKeyword:"keywords should be an array of strings",conflictingName:"%s is also the name of a node core module.",nonStringDescription:"'description' field should be a string",missingDescription:"No description",missingReadme:"No README data",missingLicense:"No license field.",nonEmailUrlBugsString:"Bug string field must be url, email, or {email,url}",nonUrlBugsUrlField:"bugs.url field must be a string url. Deleted.",nonEmailBugsEmailField:"bugs.email field must be a string email. Deleted.",emptyNormalizedBugs:"Normalized value of bugs field is an empty object. Deleted.",nonUrlHomepage:"homepage field must be a string url. Deleted.",invalidLicense:"license should be a valid SPDX license expression",typo:"%s should probably be %s."}});var wyn=z((pYc,Syn)=>{var vyn=xt("util"),L6t=Byn();Syn.exports=function(){var e=Array.prototype.slice.call(arguments,0),t=e.shift();if(t==="typo")return Zeo.apply(null,e);var r=L6t[t]?L6t[t]:t+": '%s'";return e.unshift(r),vyn.format.apply(null,e)};function Zeo(e,t,r){return r&&(e=r+"['"+e+"']",t=r+"['"+t+"']"),vyn.format(L6t.typo,e,t)}});var P6t=z((fYc,Ryn)=>{Ryn.exports=Tyn;var V6t=Eyn();Tyn.fixer=V6t;var Leo=wyn(),Veo=["name","version","description","repository","modules","scripts","files","bin","man","bugs","keywords","readme","homepage","license"],Weo=["dependencies","people","typos"],W6t=Veo.map(function(e){return Nyn(e)+"Field"});W6t=W6t.concat(Weo);function Tyn(e,t,r){t===!0&&(t=null,r=!0),r||(r=!1),(!t||e.private)&&(t=function(){}),e.scripts&&e.scripts.install==="node-gyp rebuild"&&!e.scripts.preinstall&&(e.gypfile=!0),V6t.warn=function(){t(Leo.apply(null,arguments))},W6t.forEach(function(s){V6t["fix"+Nyn(s)](e,r)}),e._id=e.name+"@"+e.version}function Nyn(e){return e.charAt(0).toUpperCase()+e.slice(1)}});var Mat=z((hYc,O6t)=>{var Qat=process||{},Gyn=Qat.argv||[],Oat=Qat.env||{},Meo=!(Oat.NO_COLOR||Gyn.includes("--no-color"))&&(!!Oat.FORCE_COLOR||Gyn.includes("--color")||Qat.platform==="win32"||(Qat.stdout||{}).isTTY&&Oat.TERM!=="dumb"||!!Oat.CI),Heo=(e,t,r=e)=>s=>{let a=""+s,o=a.indexOf(t,e.length);return~o?e+Yeo(a,t,r,o)+t:e+a+t},Yeo=(e,t,r,s)=>{let a="",o=0;do a+=e.substring(o,s)+r,o=s+t.length,s=e.indexOf(t,o);while(~s);return a+e.substring(o)},Fyn=(e=Meo)=>{let t=e?Heo:()=>String;return{isColorSupported:e,reset:t("\x1B[0m","\x1B[0m"),bold:t("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:t("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:t("\x1B[3m","\x1B[23m"),underline:t("\x1B[4m","\x1B[24m"),inverse:t("\x1B[7m","\x1B[27m"),hidden:t("\x1B[8m","\x1B[28m"),strikethrough:t("\x1B[9m","\x1B[29m"),black:t("\x1B[30m","\x1B[39m"),red:t("\x1B[31m","\x1B[39m"),green:t("\x1B[32m","\x1B[39m"),yellow:t("\x1B[33m","\x1B[39m"),blue:t("\x1B[34m","\x1B[39m"),magenta:t("\x1B[35m","\x1B[39m"),cyan:t("\x1B[36m","\x1B[39m"),white:t("\x1B[37m","\x1B[39m"),gray:t("\x1B[90m","\x1B[39m"),bgBlack:t("\x1B[40m","\x1B[49m"),bgRed:t("\x1B[41m","\x1B[49m"),bgGreen:t("\x1B[42m","\x1B[49m"),bgYellow:t("\x1B[43m","\x1B[49m"),bgBlue:t("\x1B[44m","\x1B[49m"),bgMagenta:t("\x1B[45m","\x1B[49m"),bgCyan:t("\x1B[46m","\x1B[49m"),bgWhite:t("\x1B[47m","\x1B[49m"),blackBright:t("\x1B[90m","\x1B[39m"),redBright:t("\x1B[91m","\x1B[39m"),greenBright:t("\x1B[92m","\x1B[39m"),yellowBright:t("\x1B[93m","\x1B[39m"),blueBright:t("\x1B[94m","\x1B[39m"),magentaBright:t("\x1B[95m","\x1B[39m"),cyanBright:t("\x1B[96m","\x1B[39m"),whiteBright:t("\x1B[97m","\x1B[39m"),bgBlackBright:t("\x1B[100m","\x1B[49m"),bgRedBright:t("\x1B[101m","\x1B[49m"),bgGreenBright:t("\x1B[102m","\x1B[49m"),bgYellowBright:t("\x1B[103m","\x1B[49m"),bgBlueBright:t("\x1B[104m","\x1B[49m"),bgMagentaBright:t("\x1B[105m","\x1B[49m"),bgCyanBright:t("\x1B[106m","\x1B[49m"),bgWhiteBright:t("\x1B[107m","\x1B[49m")}};O6t.exports=Fyn();O6t.exports.createColors=Fyn});var Q6t=z(Hat=>{Object.defineProperty(Hat,"__esModule",{value:!0});Hat.default=/((['"])(?:(?!\2|\\).|\\(?:\r\n|[\s\S]))*(\2)?|`(?:[^`\\$]|\\[\s\S]|\$(?!\{)|\$\{(?:[^{}]|\{[^}]*\}?)*\}?)*(`)?)|(\/\/.*)|(\/\*(?:[^*]|\*(?!\/))*(\*\/)?)|(\/(?!\*)(?:\[(?:(?![\]\\]).|\\.)*\]|(?![\/\]\\]).|\\.)+\/(?:(?!\s*(?:\b|[\u0080-\uFFFF$\\'"~({]|[+\-!](?!=)|\.?\d))|[gmiyus]{1,6}\b(?![\u0080-\uFFFF$\\]|\s*(?:[+\-*%&|^<>!=?({]|\/(?![\/*])))))|(0[xX][\da-fA-F]+|0[oO][0-7]+|0[bB][01]+|(?:\d*\.\d+|\d+\.?)(?:[eE][+-]?\d+)?)|((?!\d)(?:(?!\s)[$\w\u0080-\uFFFF]|\\u[\da-fA-F]{4}|\\u\{[\da-fA-F]+\})+)|(--|\+\+|&&|\|\||=>|\.{3}|(?:[+\-\/%&|^]|\*{1,2}|<{1,2}|>{1,3}|!=?|={1,2})=?|[?~.,:;[\](){}])|(\s+)|(^$|[\s\S])/g;Hat.matchToToken=function(e){var t={type:"invalid",value:e[0],closed:void 0};return e[1]?(t.type="string",t.closed=!!(e[3]||e[4])):e[5]?t.type="comment":e[6]?(t.type="comment",t.closed=!!e[7]):e[8]?t.type="regex":e[9]?t.type="number":e[10]?t.type="name":e[11]?t.type="punctuator":e[12]&&(t.type="whitespace"),t}});var Pyn=z(bWe=>{"use strict";Object.defineProperty(bWe,"__esModule",{value:!0});bWe.isIdentifierChar=Wyn;bWe.isIdentifierName=Keo;bWe.isIdentifierStart=Vyn;var H6t="\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\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\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\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\u0AF9\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-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\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-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\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\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\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\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\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",Zyn="\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0897-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F\uFF65",Xeo=new RegExp("["+H6t+"]"),Jeo=new RegExp("["+H6t+Zyn+"]");H6t=Zyn=null;var Lyn=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,4,51,13,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,39,27,10,22,251,41,7,1,17,2,60,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,200,32,32,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,42,9,8936,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,229,29,3,0,496,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4153,7,221,3,5761,15,7472,16,621,2467,541,1507,4938,6,4191],Ueo=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,7,9,32,4,318,1,80,3,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,343,9,54,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,10,1,2,0,49,6,4,4,14,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,245,1,2,9,726,6,110,6,6,9,4759,9,787719,239];function M6t(e,t){let r=65536;for(let s=0,a=t.length;se)return!1;if(r+=t[s+1],r>=e)return!0}return!1}function Vyn(e){return e<65?e===36:e<=90?!0:e<97?e===95:e<=122?!0:e<=65535?e>=170&&Xeo.test(String.fromCharCode(e)):M6t(e,Lyn)}function Wyn(e){return e<48?e===36:e<58?!0:e<65?!1:e<=90?!0:e<97?e===95:e<=122?!0:e<=65535?e>=170&&Jeo.test(String.fromCharCode(e)):M6t(e,Lyn)||M6t(e,Ueo)}function Keo(e){let t=!0;for(let r=0;r{"use strict";Object.defineProperty(nde,"__esModule",{value:!0});nde.isKeyword=eto;nde.isReservedWord=Oyn;nde.isStrictBindOnlyReservedWord=Myn;nde.isStrictBindReservedWord=$eo;nde.isStrictReservedWord=Qyn;var Y6t={keyword:["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"],strict:["implements","interface","let","package","private","protected","public","static","yield"],strictBind:["eval","arguments"]},jeo=new Set(Y6t.keyword),zeo=new Set(Y6t.strict),qeo=new Set(Y6t.strictBind);function Oyn(e,t){return t&&e==="await"||e==="enum"}function Qyn(e,t){return Oyn(e,t)||zeo.has(e)}function Myn(e){return qeo.has(e)}function $eo(e,t){return Qyn(e,t)||Myn(e)}function eto(e){return jeo.has(e)}});var J6t=z(UJ=>{"use strict";Object.defineProperty(UJ,"__esModule",{value:!0});Object.defineProperty(UJ,"isIdentifierChar",{enumerable:!0,get:function(){return X6t.isIdentifierChar}});Object.defineProperty(UJ,"isIdentifierName",{enumerable:!0,get:function(){return X6t.isIdentifierName}});Object.defineProperty(UJ,"isIdentifierStart",{enumerable:!0,get:function(){return X6t.isIdentifierStart}});Object.defineProperty(UJ,"isKeyword",{enumerable:!0,get:function(){return EWe.isKeyword}});Object.defineProperty(UJ,"isReservedWord",{enumerable:!0,get:function(){return EWe.isReservedWord}});Object.defineProperty(UJ,"isStrictBindOnlyReservedWord",{enumerable:!0,get:function(){return EWe.isStrictBindOnlyReservedWord}});Object.defineProperty(UJ,"isStrictBindReservedWord",{enumerable:!0,get:function(){return EWe.isStrictBindReservedWord}});Object.defineProperty(UJ,"isStrictReservedWord",{enumerable:!0,get:function(){return EWe.isStrictReservedWord}});var X6t=Pyn(),EWe=Hyn()});var ebn=z(BWe=>{"use strict";Object.defineProperty(BWe,"__esModule",{value:!0});var U6t=Mat(),Yyn=Q6t(),Xyn=J6t();function tto(){return typeof process=="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?!1:U6t.isColorSupported}var Yat=(e,t)=>r=>e(t(r));function Kyn(e){return{keyword:e.cyan,capitalized:e.yellow,jsxIdentifier:e.yellow,punctuator:e.yellow,number:e.magenta,string:e.green,regex:e.magenta,comment:e.gray,invalid:Yat(Yat(e.white,e.bgRed),e.bold),gutter:e.gray,marker:Yat(e.red,e.bold),message:Yat(e.red,e.bold),reset:e.reset}}var rto=Kyn(U6t.createColors(!0)),nto=Kyn(U6t.createColors(!1));function jyn(e){return e?rto:nto}var ito=new Set(["as","async","from","get","of","set"]),sto=/\r\n|[\n\r\u2028\u2029]/,oto=/^[()[\]{}]$/,zyn;{let e=/^[a-z][\w-]*$/i,t=function(r,s,a){if(r.type==="name"){if(Xyn.isKeyword(r.value)||Xyn.isStrictReservedWord(r.value,!0)||ito.has(r.value))return"keyword";if(e.test(r.value)&&(a[s-1]==="<"||a.slice(s-2,s)==="t[s](o)).join(` +`):r+=a;return r}var Jyn=!1,Uyn=/\r\n|[\n\r\u2028\u2029]/;function ato(e,t,r){let s=Object.assign({column:0,line:-1},e.start),a=Object.assign({},s,e.end),{linesAbove:o=2,linesBelow:g=3}=r||{},p=s.line,f=s.column,m=a.line,y=a.column,B=Math.max(p-(o+1),0),v=Math.min(t.length,m+g);p===-1&&(B=0),m===-1&&(v=t.length);let k=m-p,T={};if(k)for(let O=0;O<=k;O++){let X=O+p;if(!f)T[X]=!0;else if(O===0){let U=t[X-1].length;T[X]=[f,U-f+1]}else if(O===k)T[X]=[0,y];else{let U=t[X-O].length;T[X]=[0,U]}}else f===y?f?T[p]=[f,0]:T[p]=!0:T[p]=[f,y-f];return{start:B,end:v,markerLines:T}}function $yn(e,t,r={}){let s=r.forceColor||tto()&&r.highlightCode,a=jyn(s),o=e.split(Uyn),{start:g,end:p,markerLines:f}=ato(t,o,r),m=t.start&&typeof t.start.column=="number",y=String(p).length,v=(s?qyn(e):e).split(Uyn,p).slice(g,p).map((k,T)=>{let O=g+1+T,U=` ${` ${O}`.slice(-y)} |`,le=f[O],ae=!f[O+1];if(le){let ge="";if(Array.isArray(le)){let fe=k.slice(0,Math.max(le[0]-1,0)).replace(/[^\t]/g," "),pe=le[1]||1;ge=[` + `,a.gutter(U.replace(/\d/g," "))," ",fe,a.marker("^").repeat(pe)].join(""),ae&&r.message&&(ge+=" "+a.message(r.message))}return[a.marker(">"),a.gutter(U),k.length>0?` ${k}`:"",ge].join("")}else return` ${a.gutter(U)}${k.length>0?` ${k}`:""}`}).join(` `);return r.message&&!m&&(v=`${" ".repeat(y+1)}${r.message} -${v}`),s?a.reset(v):v}function tto(e,t,r,s={}){if(!Oyn){Oyn=!0;let o="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";if(process.emitWarning)process.emitWarning(o,"DeprecationWarning");else{let g=new Error(o);g.name="DeprecationWarning",console.warn(new Error(o))}}return r=Math.max(r,0),Jyn(e,{start:{column:r,line:t}},s)}bWe.codeFrameColumns=Jyn;bWe.default=tto;bWe.highlight=Xyn});function rto(e,t){let r=Kyn(e,` -`,t-1),s=t-r-1,a=0;for(let o=r;o>=0;o=Kyn(e,` -`,o-1))a++;return{line:a,column:s}}function Yat(e,t,{oneBased:r=!1}={}){if(t<0||t>=e.length&&e.length>0)throw new RangeError("Index out of bounds");let s=rto(e,t);return r?{line:s.line+1,column:s.column+1}:s}var Kyn,jyn=cc(()=>{Kyn=(e,t,r)=>r<0?-1:e.lastIndexOf(t,r)});function J6t(e,t,r){typeof t=="string"&&(r=t,t=void 0);let s;try{return JSON.parse(e,t)}catch(g){s=g.message}let a;e?(a=ito(e,s),s=sto(s)):s+=" while parsing empty string";let o=new X6t(s);throw o.fileName=r,a&&(o.codeFrame=zyn(e,a),o.rawCodeFrame=zyn(e,a,!1)),o}var qyn,nto,X6t,zyn,ito,sto,$yn=cc(()=>{qyn=xt(Uyn(),1);jyn();nto=e=>`\\u{${e.codePointAt(0).toString(16)}}`,X6t=class e extends Error{name="JSONError";fileName;codeFrame;rawCodeFrame;#e;constructor(t){super(),this.#e=t,Error.captureStackTrace?.(this,e)}get message(){let{fileName:t,codeFrame:r}=this;return`${this.#e}${t?` in ${t}`:""}${r?` +${v}`),s?a.reset(v):v}function cto(e,t,r,s={}){if(!Jyn){Jyn=!0;let o="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";if(process.emitWarning)process.emitWarning(o,"DeprecationWarning");else{let g=new Error(o);g.name="DeprecationWarning",console.warn(new Error(o))}}return r=Math.max(r,0),$yn(e,{start:{column:r,line:t}},s)}BWe.codeFrameColumns=$yn;BWe.default=cto;BWe.highlight=qyn});function lto(e,t){let r=tbn(e,` +`,t-1),s=t-r-1,a=0;for(let o=r;o>=0;o=tbn(e,` +`,o-1))a++;return{line:a,column:s}}function Xat(e,t,{oneBased:r=!1}={}){if(t<0||t>=e.length&&e.length>0)throw new RangeError("Index out of bounds");let s=lto(e,t);return r?{line:s.line+1,column:s.column+1}:s}var tbn,rbn=cc(()=>{tbn=(e,t,r)=>r<0?-1:e.lastIndexOf(t,r)});function j6t(e,t,r){typeof t=="string"&&(r=t,t=void 0);let s;try{return JSON.parse(e,t)}catch(g){s=g.message}let a;e?(a=gto(e,s),s=Ato(s)):s+=" while parsing empty string";let o=new K6t(s);throw o.fileName=r,a&&(o.codeFrame=nbn(e,a),o.rawCodeFrame=nbn(e,a,!1)),o}var ibn,uto,K6t,nbn,gto,Ato,sbn=cc(()=>{ibn=vt(ebn(),1);rbn();uto=e=>`\\u{${e.codePointAt(0).toString(16)}}`,K6t=class e extends Error{name="JSONError";fileName;codeFrame;rawCodeFrame;#e;constructor(t){super(),this.#e=t,Error.captureStackTrace?.(this,e)}get message(){let{fileName:t,codeFrame:r}=this;return`${this.#e}${t?` in ${t}`:""}${r?` ${r} -`:""}`}set message(t){this.#e=t}},zyn=(e,t,r=!0)=>(0,qyn.codeFrameColumns)(e,{start:t},{highlightCode:r}),ito=(e,t)=>{let r=t.match(/in JSON at position (?\d+)(?: \(line (?\d+) column (?\d+)\))?$/);if(!r)return;let{index:s,line:a,column:o}=r.groups;if(a&&o)return{line:Number(a),column:Number(o)};if(s=Number(s),s===e.length){let{line:g,column:p}=Yat(e,e.length-1,{oneBased:!0});return{line:g,column:p+1}}return Yat(e,s,{oneBased:!0})},sto=e=>e.replace(/(?<=^Unexpected token )(?')?(.)\k/,(t,r,s)=>`"${s}"(${nto(s)})`)});var ebn=cc(()=>{});import{fileURLToPath as oto}from"node:url";function EWe(e){return e instanceof URL?oto(e):e}var U6t=cc(()=>{ebn()});var nbn={};jf(nbn,{parsePackage:()=>uto,readPackage:()=>j6t,readPackageSync:()=>z6t});import ato from"node:fs";import cto from"node:fs/promises";import lto from"node:path";async function j6t({cwd:e,normalize:t=!0}={}){let r=await cto.readFile(rbn(e),"utf8");return K6t(r,t)}function z6t({cwd:e,normalize:t=!0}={}){let r=ato.readFileSync(rbn(e),"utf8");return K6t(r,t)}function uto(e,{normalize:t=!0}={}){let r=e!==null&&typeof e=="object"&&!Array.isArray(e);if(!r&&!(typeof e=="string"))throw new TypeError("`packageFile` should be either an `object` or a `string`.");let a=r?structuredClone(e):e;return K6t(a,t)}var tbn,rbn,K6t,q6t=cc(()=>{$yn();tbn=xt(L6t(),1);U6t();rbn=e=>lto.resolve(EWe(e)??".","package.json"),K6t=(e,t)=>{let r=typeof e=="string"?J6t(e):e;return t&&(0,tbn.default)(r),r}});import ibn from"node:process";import gto from"node:fs/promises";import{fileURLToPath as Ato}from"node:url";import dto from"node:fs";import VO from"node:path";async function sbn(e,{cwd:t=ibn.cwd(),type:r="file",stopAt:s}={}){let a=VO.resolve(Hat(t)??""),{root:o}=VO.parse(a);for(s=VO.resolve(a,Hat(s??o));a&&a!==s&&a!==o;){let g=VO.isAbsolute(e)?e:VO.join(a,e);try{let p=await gto.stat(g);if(r==="file"&&p.isFile()||r==="directory"&&p.isDirectory())return g}catch{}a=VO.dirname(a)}}function obn(e,{cwd:t=ibn.cwd(),type:r="file",stopAt:s}={}){let a=VO.resolve(Hat(t)??""),{root:o}=VO.parse(a);for(s=VO.resolve(a,Hat(s)??o);a&&a!==s&&a!==o;){let g=VO.isAbsolute(e)?e:VO.join(a,e);try{let p=dto.statSync(g,{throwIfNoEntry:!1});if(r==="file"&&p?.isFile()||r==="directory"&&p?.isDirectory())return g}catch{}a=VO.dirname(a)}}var Hat,abn=cc(()=>{Hat=e=>e instanceof URL?Ato(e):e});var lbn={};jf(lbn,{readPackageUp:()=>pto,readPackageUpSync:()=>fto});import cbn from"node:path";async function pto(e){let t=await sbn("package.json",e);if(t)return{packageJson:await j6t({...e,cwd:cbn.dirname(t)}),path:t}}function fto(e){let t=obn("package.json",e);if(t)return{packageJson:z6t({...e,cwd:cbn.dirname(t)}),path:t}}var ubn=cc(()=>{abn();q6t()});var _bn=z((eXc,hbn)=>{"use strict";hbn.exports=function(e){return Array.isArray(e)?e:[e]}});var bbn=z((tXc,ybn)=>{"use strict";ybn.exports=e=>{let t=typeof e;return e!==null&&(t==="object"||t==="function")}});var Bbn=z((rXc,Ebn)=>{"use strict";var KAe=bbn(),Rto=["__proto__","prototype","constructor"],Dto=e=>!e.some(t=>Rto.includes(t));function Xat(e){let t=e.split("."),r=[];for(let s=0;s{"use strict";var xto=_bn(),vbn=Bbn().get;function kto(e){return function(t,r){var s=0;return xto(e).some(function(a){var o,g;if(typeof a=="function"?(o=a(t),g=a(r)):typeof a=="string"?(o=vbn(t,a),g=vbn(r,a)):(o=t,g=r),o===g){s=0;return}return typeof o=="string"&&typeof g=="string"?(s=o.localeCompare(g),s!==0):(s=o{"use strict";var Wto=/[|\\{}()[\]^$+*?.]/g;Wbn.exports=function(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(Wto,"\\$&")}});var Obn=z((xXc,Pbn)=>{"use strict";Pbn.exports={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],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],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],rebeccapurple:[102,51,153],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]}});var a7t=z((kXc,Hbn)=>{var jAe=Obn(),Ybn={};for(Uat in jAe)jAe.hasOwnProperty(Uat)&&(Ybn[jAe[Uat]]=Uat);var Uat,rd=Hbn.exports={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};for(BF in rd)if(rd.hasOwnProperty(BF)){if(!("channels"in rd[BF]))throw new Error("missing channels property: "+BF);if(!("labels"in rd[BF]))throw new Error("missing channel labels property: "+BF);if(rd[BF].labels.length!==rd[BF].channels)throw new Error("channel and label counts mismatch: "+BF);Mbn=rd[BF].channels,Qbn=rd[BF].labels,delete rd[BF].channels,delete rd[BF].labels,Object.defineProperty(rd[BF],"channels",{value:Mbn}),Object.defineProperty(rd[BF],"labels",{value:Qbn})}var Mbn,Qbn,BF;rd.rgb.hsl=function(e){var t=e[0]/255,r=e[1]/255,s=e[2]/255,a=Math.min(t,r,s),o=Math.max(t,r,s),g=o-a,p,f,m;return o===a?p=0:t===o?p=(r-s)/g:r===o?p=2+(s-t)/g:s===o&&(p=4+(t-r)/g),p=Math.min(p*60,360),p<0&&(p+=360),m=(a+o)/2,o===a?f=0:m<=.5?f=g/(o+a):f=g/(2-o-a),[p,f*100,m*100]};rd.rgb.hsv=function(e){var t,r,s,a,o,g=e[0]/255,p=e[1]/255,f=e[2]/255,m=Math.max(g,p,f),y=m-Math.min(g,p,f),B=function(v){return(m-v)/6/y+1/2};return y===0?a=o=0:(o=y/m,t=B(g),r=B(p),s=B(f),g===m?a=s-r:p===m?a=1/3+t-s:f===m&&(a=2/3+r-t),a<0?a+=1:a>1&&(a-=1)),[a*360,o*100,m*100]};rd.rgb.hwb=function(e){var t=e[0],r=e[1],s=e[2],a=rd.rgb.hsl(e)[0],o=1/255*Math.min(t,Math.min(r,s));return s=1-1/255*Math.max(t,Math.max(r,s)),[a,o*100,s*100]};rd.rgb.cmyk=function(e){var t=e[0]/255,r=e[1]/255,s=e[2]/255,a,o,g,p;return p=Math.min(1-t,1-r,1-s),a=(1-t-p)/(1-p)||0,o=(1-r-p)/(1-p)||0,g=(1-s-p)/(1-p)||0,[a*100,o*100,g*100,p*100]};function Pto(e,t){return Math.pow(e[0]-t[0],2)+Math.pow(e[1]-t[1],2)+Math.pow(e[2]-t[2],2)}rd.rgb.keyword=function(e){var t=Ybn[e];if(t)return t;var r=1/0,s;for(var a in jAe)if(jAe.hasOwnProperty(a)){var o=jAe[a],g=Pto(e,o);g.04045?Math.pow((t+.055)/1.055,2.4):t/12.92,r=r>.04045?Math.pow((r+.055)/1.055,2.4):r/12.92,s=s>.04045?Math.pow((s+.055)/1.055,2.4):s/12.92;var a=t*.4124+r*.3576+s*.1805,o=t*.2126+r*.7152+s*.0722,g=t*.0193+r*.1192+s*.9505;return[a*100,o*100,g*100]};rd.rgb.lab=function(e){var t=rd.rgb.xyz(e),r=t[0],s=t[1],a=t[2],o,g,p;return r/=95.047,s/=100,a/=108.883,r=r>.008856?Math.pow(r,1/3):7.787*r+16/116,s=s>.008856?Math.pow(s,1/3):7.787*s+16/116,a=a>.008856?Math.pow(a,1/3):7.787*a+16/116,o=116*s-16,g=500*(r-s),p=200*(s-a),[o,g,p]};rd.hsl.rgb=function(e){var t=e[0]/360,r=e[1]/100,s=e[2]/100,a,o,g,p,f;if(r===0)return f=s*255,[f,f,f];s<.5?o=s*(1+r):o=s+r-s*r,a=2*s-o,p=[0,0,0];for(var m=0;m<3;m++)g=t+1/3*-(m-1),g<0&&g++,g>1&&g--,6*g<1?f=a+(o-a)*6*g:2*g<1?f=o:3*g<2?f=a+(o-a)*(2/3-g)*6:f=a,p[m]=f*255;return p};rd.hsl.hsv=function(e){var t=e[0],r=e[1]/100,s=e[2]/100,a=r,o=Math.max(s,.01),g,p;return s*=2,r*=s<=1?s:2-s,a*=o<=1?o:2-o,p=(s+r)/2,g=s===0?2*a/(o+a):2*r/(s+r),[t,g*100,p*100]};rd.hsv.rgb=function(e){var t=e[0]/60,r=e[1]/100,s=e[2]/100,a=Math.floor(t)%6,o=t-Math.floor(t),g=255*s*(1-r),p=255*s*(1-r*o),f=255*s*(1-r*(1-o));switch(s*=255,a){case 0:return[s,f,g];case 1:return[p,s,g];case 2:return[g,s,f];case 3:return[g,p,s];case 4:return[f,g,s];case 5:return[s,g,p]}};rd.hsv.hsl=function(e){var t=e[0],r=e[1]/100,s=e[2]/100,a=Math.max(s,.01),o,g,p;return p=(2-r)*s,o=(2-r)*a,g=r*a,g/=o<=1?o:2-o,g=g||0,p/=2,[t,g*100,p*100]};rd.hwb.rgb=function(e){var t=e[0]/360,r=e[1]/100,s=e[2]/100,a=r+s,o,g,p,f;a>1&&(r/=a,s/=a),o=Math.floor(6*t),g=1-s,p=6*t-o,o&1&&(p=1-p),f=r+p*(g-r);var m,y,B;switch(o){default:case 6:case 0:m=g,y=f,B=r;break;case 1:m=f,y=g,B=r;break;case 2:m=r,y=g,B=f;break;case 3:m=r,y=f,B=g;break;case 4:m=f,y=r,B=g;break;case 5:m=g,y=r,B=f;break}return[m*255,y*255,B*255]};rd.cmyk.rgb=function(e){var t=e[0]/100,r=e[1]/100,s=e[2]/100,a=e[3]/100,o,g,p;return o=1-Math.min(1,t*(1-a)+a),g=1-Math.min(1,r*(1-a)+a),p=1-Math.min(1,s*(1-a)+a),[o*255,g*255,p*255]};rd.xyz.rgb=function(e){var t=e[0]/100,r=e[1]/100,s=e[2]/100,a,o,g;return a=t*3.2406+r*-1.5372+s*-.4986,o=t*-.9689+r*1.8758+s*.0415,g=t*.0557+r*-.204+s*1.057,a=a>.0031308?1.055*Math.pow(a,1/2.4)-.055:a*12.92,o=o>.0031308?1.055*Math.pow(o,1/2.4)-.055:o*12.92,g=g>.0031308?1.055*Math.pow(g,1/2.4)-.055:g*12.92,a=Math.min(Math.max(0,a),1),o=Math.min(Math.max(0,o),1),g=Math.min(Math.max(0,g),1),[a*255,o*255,g*255]};rd.xyz.lab=function(e){var t=e[0],r=e[1],s=e[2],a,o,g;return t/=95.047,r/=100,s/=108.883,t=t>.008856?Math.pow(t,1/3):7.787*t+16/116,r=r>.008856?Math.pow(r,1/3):7.787*r+16/116,s=s>.008856?Math.pow(s,1/3):7.787*s+16/116,a=116*r-16,o=500*(t-r),g=200*(r-s),[a,o,g]};rd.lab.xyz=function(e){var t=e[0],r=e[1],s=e[2],a,o,g;o=(t+16)/116,a=r/500+o,g=o-s/200;var p=Math.pow(o,3),f=Math.pow(a,3),m=Math.pow(g,3);return o=p>.008856?p:(o-16/116)/7.787,a=f>.008856?f:(a-16/116)/7.787,g=m>.008856?m:(g-16/116)/7.787,a*=95.047,o*=100,g*=108.883,[a,o,g]};rd.lab.lch=function(e){var t=e[0],r=e[1],s=e[2],a,o,g;return a=Math.atan2(s,r),o=a*360/2/Math.PI,o<0&&(o+=360),g=Math.sqrt(r*r+s*s),[t,g,o]};rd.lch.lab=function(e){var t=e[0],r=e[1],s=e[2],a,o,g;return g=s/360*2*Math.PI,a=r*Math.cos(g),o=r*Math.sin(g),[t,a,o]};rd.rgb.ansi16=function(e){var t=e[0],r=e[1],s=e[2],a=1 in arguments?arguments[1]:rd.rgb.hsv(e)[2];if(a=Math.round(a/50),a===0)return 30;var o=30+(Math.round(s/255)<<2|Math.round(r/255)<<1|Math.round(t/255));return a===2&&(o+=60),o};rd.hsv.ansi16=function(e){return rd.rgb.ansi16(rd.hsv.rgb(e),e[2])};rd.rgb.ansi256=function(e){var t=e[0],r=e[1],s=e[2];if(t===r&&r===s)return t<8?16:t>248?231:Math.round((t-8)/247*24)+232;var a=16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(s/255*5);return a};rd.ansi16.rgb=function(e){var t=e%10;if(t===0||t===7)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];var r=(~~(e>50)+1)*.5,s=(t&1)*r*255,a=(t>>1&1)*r*255,o=(t>>2&1)*r*255;return[s,a,o]};rd.ansi256.rgb=function(e){if(e>=232){var t=(e-232)*10+8;return[t,t,t]}e-=16;var r,s=Math.floor(e/36)/5*255,a=Math.floor((r=e%36)/6)/5*255,o=r%6/5*255;return[s,a,o]};rd.rgb.hex=function(e){var t=((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255),r=t.toString(16).toUpperCase();return"000000".substring(r.length)+r};rd.hex.rgb=function(e){var t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];var r=t[0];t[0].length===3&&(r=r.split("").map(function(p){return p+p}).join(""));var s=parseInt(r,16),a=s>>16&255,o=s>>8&255,g=s&255;return[a,o,g]};rd.rgb.hcg=function(e){var t=e[0]/255,r=e[1]/255,s=e[2]/255,a=Math.max(Math.max(t,r),s),o=Math.min(Math.min(t,r),s),g=a-o,p,f;return g<1?p=o/(1-g):p=0,g<=0?f=0:a===t?f=(r-s)/g%6:a===r?f=2+(s-t)/g:f=4+(t-r)/g+4,f/=6,f%=1,[f*360,g*100,p*100]};rd.hsl.hcg=function(e){var t=e[1]/100,r=e[2]/100,s=1,a=0;return r<.5?s=2*t*r:s=2*t*(1-r),s<1&&(a=(r-.5*s)/(1-s)),[e[0],s*100,a*100]};rd.hsv.hcg=function(e){var t=e[1]/100,r=e[2]/100,s=t*r,a=0;return s<1&&(a=(r-s)/(1-s)),[e[0],s*100,a*100]};rd.hcg.rgb=function(e){var t=e[0]/360,r=e[1]/100,s=e[2]/100;if(r===0)return[s*255,s*255,s*255];var a=[0,0,0],o=t%1*6,g=o%1,p=1-g,f=0;switch(Math.floor(o)){case 0:a[0]=1,a[1]=g,a[2]=0;break;case 1:a[0]=p,a[1]=1,a[2]=0;break;case 2:a[0]=0,a[1]=1,a[2]=g;break;case 3:a[0]=0,a[1]=p,a[2]=1;break;case 4:a[0]=g,a[1]=0,a[2]=1;break;default:a[0]=1,a[1]=0,a[2]=p}return f=(1-r)*s,[(r*a[0]+f)*255,(r*a[1]+f)*255,(r*a[2]+f)*255]};rd.hcg.hsv=function(e){var t=e[1]/100,r=e[2]/100,s=t+r*(1-t),a=0;return s>0&&(a=t/s),[e[0],a*100,s*100]};rd.hcg.hsl=function(e){var t=e[1]/100,r=e[2]/100,s=r*(1-t)+.5*t,a=0;return s>0&&s<.5?a=t/(2*s):s>=.5&&s<1&&(a=t/(2*(1-s))),[e[0],a*100,s*100]};rd.hcg.hwb=function(e){var t=e[1]/100,r=e[2]/100,s=t+r*(1-t);return[e[0],(s-t)*100,(1-s)*100]};rd.hwb.hcg=function(e){var t=e[1]/100,r=e[2]/100,s=1-r,a=s-t,o=0;return a<1&&(o=(s-a)/(1-a)),[e[0],a*100,o*100]};rd.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]};rd.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]};rd.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]};rd.gray.hsl=rd.gray.hsv=function(e){return[0,0,e[0]]};rd.gray.hwb=function(e){return[0,100,e[0]]};rd.gray.cmyk=function(e){return[0,0,0,e[0]]};rd.gray.lab=function(e){return[e[0],0,0]};rd.gray.hex=function(e){var t=Math.round(e[0]/100*255)&255,r=(t<<16)+(t<<8)+t,s=r.toString(16).toUpperCase();return"000000".substring(s.length)+s};rd.rgb.gray=function(e){var t=(e[0]+e[1]+e[2])/3;return[t/255*100]}});var Jbn=z((GXc,Xbn)=>{var Kat=a7t();function Oto(){for(var e={},t=Object.keys(Kat),r=t.length,s=0;s{var c7t=a7t(),Hto=Jbn(),HEe={},Xto=Object.keys(c7t);function Jto(e){var t=function(r){return r==null?r:(arguments.length>1&&(r=Array.prototype.slice.call(arguments)),e(r))};return"conversion"in e&&(t.conversion=e.conversion),t}function Uto(e){var t=function(r){if(r==null)return r;arguments.length>1&&(r=Array.prototype.slice.call(arguments));var s=e(r);if(typeof s=="object")for(var a=s.length,o=0;o{"use strict";var XEe=Kbn(),jat=(e,t)=>function(){return`\x1B[${e.apply(XEe,arguments)+t}m`},zat=(e,t)=>function(){let r=e.apply(XEe,arguments);return`\x1B[${38+t};5;${r}m`},qat=(e,t)=>function(){let r=e.apply(XEe,arguments);return`\x1B[${38+t};2;${r[0]};${r[1]};${r[2]}m`};function Kto(){let e=new Map,t={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],gray:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};t.color.grey=t.color.gray;for(let a of Object.keys(t)){let o=t[a];for(let g of Object.keys(o)){let p=o[g];t[g]={open:`\x1B[${p[0]}m`,close:`\x1B[${p[1]}m`},o[g]=t[g],e.set(p[0],p[1])}Object.defineProperty(t,a,{value:o,enumerable:!1}),Object.defineProperty(t,"codes",{value:e,enumerable:!1})}let r=a=>a,s=(a,o,g)=>[a,o,g];t.color.close="\x1B[39m",t.bgColor.close="\x1B[49m",t.color.ansi={ansi:jat(r,0)},t.color.ansi256={ansi256:zat(r,0)},t.color.ansi16m={rgb:qat(s,0)},t.bgColor.ansi={ansi:jat(r,10)},t.bgColor.ansi256={ansi256:zat(r,10)},t.bgColor.ansi16m={rgb:qat(s,10)};for(let a of Object.keys(XEe)){if(typeof XEe[a]!="object")continue;let o=XEe[a];a==="ansi16"&&(a="ansi"),"ansi16"in o&&(t.color.ansi[a]=jat(o.ansi16,0),t.bgColor.ansi[a]=jat(o.ansi16,10)),"ansi256"in o&&(t.color.ansi256[a]=zat(o.ansi256,0),t.bgColor.ansi256[a]=zat(o.ansi256,10)),"rgb"in o&&(t.color.ansi16m[a]=qat(o.rgb,0),t.bgColor.ansi16m[a]=qat(o.rgb,10))}return t}Object.defineProperty(jbn,"exports",{enumerable:!0,get:Kto})});var $bn=z((LXc,qbn)=>{"use strict";qbn.exports=(e,t)=>{t=t||process.argv;let r=e.startsWith("-")?"":e.length===1?"-":"--",s=t.indexOf(r+e),a=t.indexOf("--");return s!==-1&&(a===-1?!0:s{"use strict";var jto=Dt("os"),TH=$bn(),Ck=process.env,JEe;TH("no-color")||TH("no-colors")||TH("color=false")?JEe=!1:(TH("color")||TH("colors")||TH("color=true")||TH("color=always"))&&(JEe=!0);"FORCE_COLOR"in Ck&&(JEe=Ck.FORCE_COLOR.length===0||parseInt(Ck.FORCE_COLOR,10)!==0);function zto(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function qto(e){if(JEe===!1)return 0;if(TH("color=16m")||TH("color=full")||TH("color=truecolor"))return 3;if(TH("color=256"))return 2;if(e&&!e.isTTY&&JEe!==!0)return 0;let t=JEe?1:0;if(process.platform==="win32"){let r=jto.release().split(".");return Number(process.versions.node.split(".")[0])>=8&&Number(r[0])>=10&&Number(r[2])>=10586?Number(r[2])>=14931?3:2:1}if("CI"in Ck)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(r=>r in Ck)||Ck.CI_NAME==="codeship"?1:t;if("TEAMCITY_VERSION"in Ck)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(Ck.TEAMCITY_VERSION)?1:0;if(Ck.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in Ck){let r=parseInt((Ck.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(Ck.TERM_PROGRAM){case"iTerm.app":return r>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(Ck.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(Ck.TERM)||"COLORTERM"in Ck?1:(Ck.TERM==="dumb",t)}function l7t(e){let t=qto(e);return zto(t)}eEn.exports={supportsColor:l7t,stdout:l7t(process.stdout),stderr:l7t(process.stderr)}});var oEn=z((WXc,sEn)=>{"use strict";var $to=/(?:\\(u[a-f\d]{4}|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,rEn=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,ero=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,tro=/\\(u[a-f\d]{4}|x[a-f\d]{2}|.)|([^\\])/gi,rro=new Map([["n",` -`],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e","\x1B"],["a","\x07"]]);function iEn(e){return e[0]==="u"&&e.length===5||e[0]==="x"&&e.length===3?String.fromCharCode(parseInt(e.slice(1),16)):rro.get(e)||e}function nro(e,t){let r=[],s=t.trim().split(/\s*,\s*/g),a;for(let o of s)if(!isNaN(o))r.push(Number(o));else if(a=o.match(ero))r.push(a[2].replace(tro,(g,p,f)=>p?iEn(p):f));else throw new Error(`Invalid Chalk template style argument: ${o} (in style '${e}')`);return r}function iro(e){rEn.lastIndex=0;let t=[],r;for(;(r=rEn.exec(e))!==null;){let s=r[1];if(r[2]){let a=nro(s,r[2]);t.push([s].concat(a))}else t.push([s])}return t}function nEn(e,t){let r={};for(let a of t)for(let o of a.styles)r[o[0]]=a.inverse?null:o.slice(1);let s=e;for(let a of Object.keys(r))if(Array.isArray(r[a])){if(!(a in s))throw new Error(`Unknown Chalk style: ${a}`);r[a].length>0?s=s[a].apply(s,r[a]):s=s[a]}return s}sEn.exports=(e,t)=>{let r=[],s=[],a=[];if(t.replace($to,(o,g,p,f,m,y)=>{if(g)a.push(iEn(g));else if(f){let B=a.join("");a=[],s.push(r.length===0?B:nEn(e,r)(B)),r.push({inverse:p,styles:iro(f)})}else if(m){if(r.length===0)throw new Error("Found extraneous } in Chalk template literal");s.push(nEn(e,r)(a.join(""))),a=[],r.pop()}else a.push(y)}),s.push(a.join("")),r.length>0){let o=`Chalk template literal is missing ${r.length} closing bracket${r.length===1?"":"s"} (\`}\`)`;throw new Error(o)}return s.join("")}});var gEn=z((PXc,SWe)=>{"use strict";var g7t=o7t(),hw=zbn(),u7t=tEn().stdout,sro=oEn(),cEn=process.platform==="win32"&&!(process.env.TERM||"").toLowerCase().startsWith("xterm"),lEn=["ansi","ansi","ansi256","ansi16m"],uEn=new Set(["gray"]),UEe=Object.create(null);function aEn(e,t){t=t||{};let r=u7t?u7t.level:0;e.level=t.level===void 0?r:t.level,e.enabled="enabled"in t?t.enabled:e.level>0}function vWe(e){if(!this||!(this instanceof vWe)||this.template){let t={};return aEn(t,e),t.template=function(){let r=[].slice.call(arguments);return cro.apply(null,[t.template].concat(r))},Object.setPrototypeOf(t,vWe.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=vWe,t.template}aEn(this,e)}cEn&&(hw.blue.open="\x1B[94m");for(let e of Object.keys(hw))hw[e].closeRe=new RegExp(g7t(hw[e].close),"g"),UEe[e]={get(){let t=hw[e];return $at.call(this,this._styles?this._styles.concat(t):[t],this._empty,e)}};UEe.visible={get(){return $at.call(this,this._styles||[],!0,"visible")}};hw.color.closeRe=new RegExp(g7t(hw.color.close),"g");for(let e of Object.keys(hw.color.ansi))uEn.has(e)||(UEe[e]={get(){let t=this.level;return function(){let s={open:hw.color[lEn[t]][e].apply(null,arguments),close:hw.color.close,closeRe:hw.color.closeRe};return $at.call(this,this._styles?this._styles.concat(s):[s],this._empty,e)}}});hw.bgColor.closeRe=new RegExp(g7t(hw.bgColor.close),"g");for(let e of Object.keys(hw.bgColor.ansi)){if(uEn.has(e))continue;let t="bg"+e[0].toUpperCase()+e.slice(1);UEe[t]={get(){let r=this.level;return function(){let a={open:hw.bgColor[lEn[r]][e].apply(null,arguments),close:hw.bgColor.close,closeRe:hw.bgColor.closeRe};return $at.call(this,this._styles?this._styles.concat(a):[a],this._empty,e)}}}}var oro=Object.defineProperties(()=>{},UEe);function $at(e,t,r){let s=function(){return aro.apply(s,arguments)};s._styles=e,s._empty=t;let a=this;return Object.defineProperty(s,"level",{enumerable:!0,get(){return a.level},set(o){a.level=o}}),Object.defineProperty(s,"enabled",{enumerable:!0,get(){return a.enabled},set(o){a.enabled=o}}),s.hasGrey=this.hasGrey||r==="gray"||r==="grey",s.__proto__=oro,s}function aro(){let e=arguments,t=e.length,r=String(arguments[0]);if(t===0)return"";if(t>1)for(let a=1;a{"use strict";Object.defineProperty(wWe,"__esModule",{value:!0});wWe.default=Iro;wWe.shouldHighlight=mEn;var AEn=W6t(),dEn=Y6t(),d7t=lro(Oat(),!0);function fEn(e){if(typeof WeakMap!="function")return null;var t=new WeakMap,r=new WeakMap;return(fEn=function(s){return s?r:t})(e)}function lro(e,t){if(!t&&e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var r=fEn(t);if(r&&r.has(e))return r.get(e);var s={__proto__:null},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(o!=="default"&&{}.hasOwnProperty.call(e,o)){var g=a?Object.getOwnPropertyDescriptor(e,o):null;g&&(g.get||g.set)?Object.defineProperty(s,o,g):s[o]=e[o]}return s.default=e,r&&r.set(e,s),s}var IEn=typeof process=="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?(0,d7t.createColors)(!1):d7t.default,pEn=(e,t)=>r=>e(t(r)),uro=new Set(["as","async","from","get","of","set"]);function gro(e){return{keyword:e.cyan,capitalized:e.yellow,jsxIdentifier:e.yellow,punctuator:e.yellow,number:e.magenta,string:e.green,regex:e.magenta,comment:e.gray,invalid:pEn(pEn(e.white,e.bgRed),e.bold)}}var Aro=/\r\n|[\n\r\u2028\u2029]/,dro=/^[()[\]{}]$/,CEn;{let e=/^[a-z][\w-]*$/i,t=function(r,s,a){if(r.type==="name"){if((0,dEn.isKeyword)(r.value)||(0,dEn.isStrictReservedWord)(r.value,!0)||uro.has(r.value))return"keyword";if(e.test(r.value)&&(a[s-1]==="<"||a.slice(s-2,s)==="o(g)).join(` -`):r+=a}return r}function mEn(e){return IEn.isColorSupported||e.forceColor}var A7t;function fro(e){if(e){var t;return(t=A7t)!=null||(A7t=(0,d7t.createColors)(!0)),A7t}return IEn}function Iro(e,t={}){if(e!==""&&mEn(t)){let r=gro(fro(t.forceColor));return pro(r,e)}else return e}{let e,t;wWe.getChalk=({forceColor:r})=>{var s;if((s=e)!=null||(e=gEn()),r){var a;return(a=t)!=null||(t=new e.constructor({enabled:!0,level:1})),t}return e}}});var tct=z(ect=>{"use strict";Object.defineProperty(ect,"__esModule",{value:!0});ect.codeFrameColumns=vEn;ect.default=bro;var _En=hEn(),f7t=Cro(Oat(),!0);function BEn(e){if(typeof WeakMap!="function")return null;var t=new WeakMap,r=new WeakMap;return(BEn=function(s){return s?r:t})(e)}function Cro(e,t){if(!t&&e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var r=BEn(t);if(r&&r.has(e))return r.get(e);var s={__proto__:null},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(o!=="default"&&{}.hasOwnProperty.call(e,o)){var g=a?Object.getOwnPropertyDescriptor(e,o):null;g&&(g.get||g.set)?Object.defineProperty(s,o,g):s[o]=e[o]}return s.default=e,r&&r.set(e,s),s}var mro=typeof process=="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?(0,f7t.createColors)(!1):f7t.default,yEn=(e,t)=>r=>e(t(r)),p7t;function hro(e){if(e){var t;return(t=p7t)!=null||(p7t=(0,f7t.createColors)(!0)),p7t}return mro}var bEn=!1;function _ro(e){return{gutter:e.gray,marker:yEn(e.red,e.bold),message:yEn(e.red,e.bold)}}var EEn=/\r\n|[\n\r\u2028\u2029]/;function yro(e,t,r){let s=Object.assign({column:0,line:-1},e.start),a=Object.assign({},s,e.end),{linesAbove:o=2,linesBelow:g=3}=r||{},p=s.line,f=s.column,m=a.line,y=a.column,B=Math.max(p-(o+1),0),v=Math.min(t.length,m+g);p===-1&&(B=0),m===-1&&(v=t.length);let G=m-p,T={};if(G)for(let O=0;O<=G;O++){let X=O+p;if(!f)T[X]=!0;else if(O===0){let U=t[X-1].length;T[X]=[f,U-f+1]}else if(O===G)T[X]=[0,y];else{let U=t[X-O].length;T[X]=[0,U]}}else f===y?f?T[p]=[f,0]:T[p]=!0:T[p]=[f,y-f];return{start:B,end:v,markerLines:T}}function vEn(e,t,r={}){let s=(r.highlightCode||r.forceColor)&&(0,_En.shouldHighlight)(r),a=hro(r.forceColor),o=_ro(a),g=(O,X)=>s?O(X):X,p=e.split(EEn),{start:f,end:m,markerLines:y}=yro(t,p,r),B=t.start&&typeof t.start.column=="number",v=String(m).length,T=(s?(0,_En.default)(e,r):e).split(EEn,m).slice(f,m).map((O,X)=>{let U=f+1+X,ae=` ${` ${U}`.slice(-v)} |`,ge=y[U],fe=!y[U+1];if(ge){let pe="";if(Array.isArray(ge)){let he=O.slice(0,Math.max(ge[0]-1,0)).replace(/[^\t]/g," "),be=ge[1]||1;pe=[` +`:""}`}set message(t){this.#e=t}},nbn=(e,t,r=!0)=>(0,ibn.codeFrameColumns)(e,{start:t},{highlightCode:r}),gto=(e,t)=>{let r=t.match(/in JSON at position (?\d+)(?: \(line (?\d+) column (?\d+)\))?$/);if(!r)return;let{index:s,line:a,column:o}=r.groups;if(a&&o)return{line:Number(a),column:Number(o)};if(s=Number(s),s===e.length){let{line:g,column:p}=Xat(e,e.length-1,{oneBased:!0});return{line:g,column:p+1}}return Xat(e,s,{oneBased:!0})},Ato=e=>e.replace(/(?<=^Unexpected token )(?')?(.)\k/,(t,r,s)=>`"${s}"(${uto(s)})`)});var obn=cc(()=>{});import{fileURLToPath as dto}from"node:url";function vWe(e){return e instanceof URL?dto(e):e}var z6t=cc(()=>{obn()});var lbn={};zf(lbn,{parsePackage:()=>Cto,readPackage:()=>$6t,readPackageSync:()=>e7t});import pto from"node:fs";import fto from"node:fs/promises";import Ito from"node:path";async function $6t({cwd:e,normalize:t=!0}={}){let r=await fto.readFile(cbn(e),"utf8");return q6t(r,t)}function e7t({cwd:e,normalize:t=!0}={}){let r=pto.readFileSync(cbn(e),"utf8");return q6t(r,t)}function Cto(e,{normalize:t=!0}={}){let r=e!==null&&typeof e=="object"&&!Array.isArray(e);if(!r&&!(typeof e=="string"))throw new TypeError("`packageFile` should be either an `object` or a `string`.");let a=r?structuredClone(e):e;return q6t(a,t)}var abn,cbn,q6t,t7t=cc(()=>{sbn();abn=vt(P6t(),1);z6t();cbn=e=>Ito.resolve(vWe(e)??".","package.json"),q6t=(e,t)=>{let r=typeof e=="string"?j6t(e):e;return t&&(0,abn.default)(r),r}});import ubn from"node:process";import mto from"node:fs/promises";import{fileURLToPath as hto}from"node:url";import _to from"node:fs";import OO from"node:path";async function gbn(e,{cwd:t=ubn.cwd(),type:r="file",stopAt:s}={}){let a=OO.resolve(Jat(t)??""),{root:o}=OO.parse(a);for(s=OO.resolve(a,Jat(s??o));a&&a!==s&&a!==o;){let g=OO.isAbsolute(e)?e:OO.join(a,e);try{let p=await mto.stat(g);if(r==="file"&&p.isFile()||r==="directory"&&p.isDirectory())return g}catch{}a=OO.dirname(a)}}function Abn(e,{cwd:t=ubn.cwd(),type:r="file",stopAt:s}={}){let a=OO.resolve(Jat(t)??""),{root:o}=OO.parse(a);for(s=OO.resolve(a,Jat(s)??o);a&&a!==s&&a!==o;){let g=OO.isAbsolute(e)?e:OO.join(a,e);try{let p=_to.statSync(g,{throwIfNoEntry:!1});if(r==="file"&&p?.isFile()||r==="directory"&&p?.isDirectory())return g}catch{}a=OO.dirname(a)}}var Jat,dbn=cc(()=>{Jat=e=>e instanceof URL?hto(e):e});var fbn={};zf(fbn,{readPackageUp:()=>yto,readPackageUpSync:()=>bto});import pbn from"node:path";async function yto(e){let t=await gbn("package.json",e);if(t)return{packageJson:await $6t({...e,cwd:pbn.dirname(t)}),path:t}}function bto(e){let t=Abn("package.json",e);if(t)return{packageJson:e7t({...e,cwd:pbn.dirname(t)}),path:t}}var Ibn=cc(()=>{dbn();t7t()});var Sbn=z((IXc,vbn)=>{"use strict";vbn.exports=function(e){return Array.isArray(e)?e:[e]}});var Tbn=z((CXc,wbn)=>{"use strict";wbn.exports=e=>{let t=typeof e;return e!==null&&(t==="object"||t==="function")}});var Rbn=z((mXc,Nbn)=>{"use strict";var ide=Tbn(),Lto=["__proto__","prototype","constructor"],Vto=e=>!e.some(t=>Lto.includes(t));function Uat(e){let t=e.split("."),r=[];for(let s=0;s{"use strict";var Wto=Sbn(),Dbn=Rbn().get;function Pto(e){return function(t,r){var s=0;return Wto(e).some(function(a){var o,g;if(typeof a=="function"?(o=a(t),g=a(r)):typeof a=="string"?(o=Dbn(t,a),g=Dbn(r,a)):(o=t,g=r),o===g){s=0;return}return typeof o=="string"&&typeof g=="string"?(s=o.localeCompare(g),s!==0):(s=o{"use strict";var Xto=/[|\\{}()[\]^$+*?.]/g;Ybn.exports=function(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(Xto,"\\$&")}});var Jbn=z((UXc,Xbn)=>{"use strict";Xbn.exports={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],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],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],rebeccapurple:[102,51,153],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]}});var u7t=z((KXc,zbn)=>{var sde=Jbn(),jbn={};for(jat in sde)sde.hasOwnProperty(jat)&&(jbn[sde[jat]]=jat);var jat,nd=zbn.exports={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};for(NF in nd)if(nd.hasOwnProperty(NF)){if(!("channels"in nd[NF]))throw new Error("missing channels property: "+NF);if(!("labels"in nd[NF]))throw new Error("missing channel labels property: "+NF);if(nd[NF].labels.length!==nd[NF].channels)throw new Error("channel and label counts mismatch: "+NF);Ubn=nd[NF].channels,Kbn=nd[NF].labels,delete nd[NF].channels,delete nd[NF].labels,Object.defineProperty(nd[NF],"channels",{value:Ubn}),Object.defineProperty(nd[NF],"labels",{value:Kbn})}var Ubn,Kbn,NF;nd.rgb.hsl=function(e){var t=e[0]/255,r=e[1]/255,s=e[2]/255,a=Math.min(t,r,s),o=Math.max(t,r,s),g=o-a,p,f,m;return o===a?p=0:t===o?p=(r-s)/g:r===o?p=2+(s-t)/g:s===o&&(p=4+(t-r)/g),p=Math.min(p*60,360),p<0&&(p+=360),m=(a+o)/2,o===a?f=0:m<=.5?f=g/(o+a):f=g/(2-o-a),[p,f*100,m*100]};nd.rgb.hsv=function(e){var t,r,s,a,o,g=e[0]/255,p=e[1]/255,f=e[2]/255,m=Math.max(g,p,f),y=m-Math.min(g,p,f),B=function(v){return(m-v)/6/y+1/2};return y===0?a=o=0:(o=y/m,t=B(g),r=B(p),s=B(f),g===m?a=s-r:p===m?a=1/3+t-s:f===m&&(a=2/3+r-t),a<0?a+=1:a>1&&(a-=1)),[a*360,o*100,m*100]};nd.rgb.hwb=function(e){var t=e[0],r=e[1],s=e[2],a=nd.rgb.hsl(e)[0],o=1/255*Math.min(t,Math.min(r,s));return s=1-1/255*Math.max(t,Math.max(r,s)),[a,o*100,s*100]};nd.rgb.cmyk=function(e){var t=e[0]/255,r=e[1]/255,s=e[2]/255,a,o,g,p;return p=Math.min(1-t,1-r,1-s),a=(1-t-p)/(1-p)||0,o=(1-r-p)/(1-p)||0,g=(1-s-p)/(1-p)||0,[a*100,o*100,g*100,p*100]};function Jto(e,t){return Math.pow(e[0]-t[0],2)+Math.pow(e[1]-t[1],2)+Math.pow(e[2]-t[2],2)}nd.rgb.keyword=function(e){var t=jbn[e];if(t)return t;var r=1/0,s;for(var a in sde)if(sde.hasOwnProperty(a)){var o=sde[a],g=Jto(e,o);g.04045?Math.pow((t+.055)/1.055,2.4):t/12.92,r=r>.04045?Math.pow((r+.055)/1.055,2.4):r/12.92,s=s>.04045?Math.pow((s+.055)/1.055,2.4):s/12.92;var a=t*.4124+r*.3576+s*.1805,o=t*.2126+r*.7152+s*.0722,g=t*.0193+r*.1192+s*.9505;return[a*100,o*100,g*100]};nd.rgb.lab=function(e){var t=nd.rgb.xyz(e),r=t[0],s=t[1],a=t[2],o,g,p;return r/=95.047,s/=100,a/=108.883,r=r>.008856?Math.pow(r,1/3):7.787*r+16/116,s=s>.008856?Math.pow(s,1/3):7.787*s+16/116,a=a>.008856?Math.pow(a,1/3):7.787*a+16/116,o=116*s-16,g=500*(r-s),p=200*(s-a),[o,g,p]};nd.hsl.rgb=function(e){var t=e[0]/360,r=e[1]/100,s=e[2]/100,a,o,g,p,f;if(r===0)return f=s*255,[f,f,f];s<.5?o=s*(1+r):o=s+r-s*r,a=2*s-o,p=[0,0,0];for(var m=0;m<3;m++)g=t+1/3*-(m-1),g<0&&g++,g>1&&g--,6*g<1?f=a+(o-a)*6*g:2*g<1?f=o:3*g<2?f=a+(o-a)*(2/3-g)*6:f=a,p[m]=f*255;return p};nd.hsl.hsv=function(e){var t=e[0],r=e[1]/100,s=e[2]/100,a=r,o=Math.max(s,.01),g,p;return s*=2,r*=s<=1?s:2-s,a*=o<=1?o:2-o,p=(s+r)/2,g=s===0?2*a/(o+a):2*r/(s+r),[t,g*100,p*100]};nd.hsv.rgb=function(e){var t=e[0]/60,r=e[1]/100,s=e[2]/100,a=Math.floor(t)%6,o=t-Math.floor(t),g=255*s*(1-r),p=255*s*(1-r*o),f=255*s*(1-r*(1-o));switch(s*=255,a){case 0:return[s,f,g];case 1:return[p,s,g];case 2:return[g,s,f];case 3:return[g,p,s];case 4:return[f,g,s];case 5:return[s,g,p]}};nd.hsv.hsl=function(e){var t=e[0],r=e[1]/100,s=e[2]/100,a=Math.max(s,.01),o,g,p;return p=(2-r)*s,o=(2-r)*a,g=r*a,g/=o<=1?o:2-o,g=g||0,p/=2,[t,g*100,p*100]};nd.hwb.rgb=function(e){var t=e[0]/360,r=e[1]/100,s=e[2]/100,a=r+s,o,g,p,f;a>1&&(r/=a,s/=a),o=Math.floor(6*t),g=1-s,p=6*t-o,o&1&&(p=1-p),f=r+p*(g-r);var m,y,B;switch(o){default:case 6:case 0:m=g,y=f,B=r;break;case 1:m=f,y=g,B=r;break;case 2:m=r,y=g,B=f;break;case 3:m=r,y=f,B=g;break;case 4:m=f,y=r,B=g;break;case 5:m=g,y=r,B=f;break}return[m*255,y*255,B*255]};nd.cmyk.rgb=function(e){var t=e[0]/100,r=e[1]/100,s=e[2]/100,a=e[3]/100,o,g,p;return o=1-Math.min(1,t*(1-a)+a),g=1-Math.min(1,r*(1-a)+a),p=1-Math.min(1,s*(1-a)+a),[o*255,g*255,p*255]};nd.xyz.rgb=function(e){var t=e[0]/100,r=e[1]/100,s=e[2]/100,a,o,g;return a=t*3.2406+r*-1.5372+s*-.4986,o=t*-.9689+r*1.8758+s*.0415,g=t*.0557+r*-.204+s*1.057,a=a>.0031308?1.055*Math.pow(a,1/2.4)-.055:a*12.92,o=o>.0031308?1.055*Math.pow(o,1/2.4)-.055:o*12.92,g=g>.0031308?1.055*Math.pow(g,1/2.4)-.055:g*12.92,a=Math.min(Math.max(0,a),1),o=Math.min(Math.max(0,o),1),g=Math.min(Math.max(0,g),1),[a*255,o*255,g*255]};nd.xyz.lab=function(e){var t=e[0],r=e[1],s=e[2],a,o,g;return t/=95.047,r/=100,s/=108.883,t=t>.008856?Math.pow(t,1/3):7.787*t+16/116,r=r>.008856?Math.pow(r,1/3):7.787*r+16/116,s=s>.008856?Math.pow(s,1/3):7.787*s+16/116,a=116*r-16,o=500*(t-r),g=200*(r-s),[a,o,g]};nd.lab.xyz=function(e){var t=e[0],r=e[1],s=e[2],a,o,g;o=(t+16)/116,a=r/500+o,g=o-s/200;var p=Math.pow(o,3),f=Math.pow(a,3),m=Math.pow(g,3);return o=p>.008856?p:(o-16/116)/7.787,a=f>.008856?f:(a-16/116)/7.787,g=m>.008856?m:(g-16/116)/7.787,a*=95.047,o*=100,g*=108.883,[a,o,g]};nd.lab.lch=function(e){var t=e[0],r=e[1],s=e[2],a,o,g;return a=Math.atan2(s,r),o=a*360/2/Math.PI,o<0&&(o+=360),g=Math.sqrt(r*r+s*s),[t,g,o]};nd.lch.lab=function(e){var t=e[0],r=e[1],s=e[2],a,o,g;return g=s/360*2*Math.PI,a=r*Math.cos(g),o=r*Math.sin(g),[t,a,o]};nd.rgb.ansi16=function(e){var t=e[0],r=e[1],s=e[2],a=1 in arguments?arguments[1]:nd.rgb.hsv(e)[2];if(a=Math.round(a/50),a===0)return 30;var o=30+(Math.round(s/255)<<2|Math.round(r/255)<<1|Math.round(t/255));return a===2&&(o+=60),o};nd.hsv.ansi16=function(e){return nd.rgb.ansi16(nd.hsv.rgb(e),e[2])};nd.rgb.ansi256=function(e){var t=e[0],r=e[1],s=e[2];if(t===r&&r===s)return t<8?16:t>248?231:Math.round((t-8)/247*24)+232;var a=16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(s/255*5);return a};nd.ansi16.rgb=function(e){var t=e%10;if(t===0||t===7)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];var r=(~~(e>50)+1)*.5,s=(t&1)*r*255,a=(t>>1&1)*r*255,o=(t>>2&1)*r*255;return[s,a,o]};nd.ansi256.rgb=function(e){if(e>=232){var t=(e-232)*10+8;return[t,t,t]}e-=16;var r,s=Math.floor(e/36)/5*255,a=Math.floor((r=e%36)/6)/5*255,o=r%6/5*255;return[s,a,o]};nd.rgb.hex=function(e){var t=((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255),r=t.toString(16).toUpperCase();return"000000".substring(r.length)+r};nd.hex.rgb=function(e){var t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];var r=t[0];t[0].length===3&&(r=r.split("").map(function(p){return p+p}).join(""));var s=parseInt(r,16),a=s>>16&255,o=s>>8&255,g=s&255;return[a,o,g]};nd.rgb.hcg=function(e){var t=e[0]/255,r=e[1]/255,s=e[2]/255,a=Math.max(Math.max(t,r),s),o=Math.min(Math.min(t,r),s),g=a-o,p,f;return g<1?p=o/(1-g):p=0,g<=0?f=0:a===t?f=(r-s)/g%6:a===r?f=2+(s-t)/g:f=4+(t-r)/g+4,f/=6,f%=1,[f*360,g*100,p*100]};nd.hsl.hcg=function(e){var t=e[1]/100,r=e[2]/100,s=1,a=0;return r<.5?s=2*t*r:s=2*t*(1-r),s<1&&(a=(r-.5*s)/(1-s)),[e[0],s*100,a*100]};nd.hsv.hcg=function(e){var t=e[1]/100,r=e[2]/100,s=t*r,a=0;return s<1&&(a=(r-s)/(1-s)),[e[0],s*100,a*100]};nd.hcg.rgb=function(e){var t=e[0]/360,r=e[1]/100,s=e[2]/100;if(r===0)return[s*255,s*255,s*255];var a=[0,0,0],o=t%1*6,g=o%1,p=1-g,f=0;switch(Math.floor(o)){case 0:a[0]=1,a[1]=g,a[2]=0;break;case 1:a[0]=p,a[1]=1,a[2]=0;break;case 2:a[0]=0,a[1]=1,a[2]=g;break;case 3:a[0]=0,a[1]=p,a[2]=1;break;case 4:a[0]=g,a[1]=0,a[2]=1;break;default:a[0]=1,a[1]=0,a[2]=p}return f=(1-r)*s,[(r*a[0]+f)*255,(r*a[1]+f)*255,(r*a[2]+f)*255]};nd.hcg.hsv=function(e){var t=e[1]/100,r=e[2]/100,s=t+r*(1-t),a=0;return s>0&&(a=t/s),[e[0],a*100,s*100]};nd.hcg.hsl=function(e){var t=e[1]/100,r=e[2]/100,s=r*(1-t)+.5*t,a=0;return s>0&&s<.5?a=t/(2*s):s>=.5&&s<1&&(a=t/(2*(1-s))),[e[0],a*100,s*100]};nd.hcg.hwb=function(e){var t=e[1]/100,r=e[2]/100,s=t+r*(1-t);return[e[0],(s-t)*100,(1-s)*100]};nd.hwb.hcg=function(e){var t=e[1]/100,r=e[2]/100,s=1-r,a=s-t,o=0;return a<1&&(o=(s-a)/(1-a)),[e[0],a*100,o*100]};nd.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]};nd.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]};nd.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]};nd.gray.hsl=nd.gray.hsv=function(e){return[0,0,e[0]]};nd.gray.hwb=function(e){return[0,100,e[0]]};nd.gray.cmyk=function(e){return[0,0,0,e[0]]};nd.gray.lab=function(e){return[e[0],0,0]};nd.gray.hex=function(e){var t=Math.round(e[0]/100*255)&255,r=(t<<16)+(t<<8)+t,s=r.toString(16).toUpperCase();return"000000".substring(s.length)+s};nd.rgb.gray=function(e){var t=(e[0]+e[1]+e[2])/3;return[t/255*100]}});var $bn=z((jXc,qbn)=>{var zat=u7t();function Uto(){for(var e={},t=Object.keys(zat),r=t.length,s=0;s{var g7t=u7t(),qto=$bn(),JEe={},$to=Object.keys(g7t);function ero(e){var t=function(r){return r==null?r:(arguments.length>1&&(r=Array.prototype.slice.call(arguments)),e(r))};return"conversion"in e&&(t.conversion=e.conversion),t}function tro(e){var t=function(r){if(r==null)return r;arguments.length>1&&(r=Array.prototype.slice.call(arguments));var s=e(r);if(typeof s=="object")for(var a=s.length,o=0;o{"use strict";var UEe=tEn(),qat=(e,t)=>function(){return`\x1B[${e.apply(UEe,arguments)+t}m`},$at=(e,t)=>function(){let r=e.apply(UEe,arguments);return`\x1B[${38+t};5;${r}m`},ect=(e,t)=>function(){let r=e.apply(UEe,arguments);return`\x1B[${38+t};2;${r[0]};${r[1]};${r[2]}m`};function rro(){let e=new Map,t={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],gray:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};t.color.grey=t.color.gray;for(let a of Object.keys(t)){let o=t[a];for(let g of Object.keys(o)){let p=o[g];t[g]={open:`\x1B[${p[0]}m`,close:`\x1B[${p[1]}m`},o[g]=t[g],e.set(p[0],p[1])}Object.defineProperty(t,a,{value:o,enumerable:!1}),Object.defineProperty(t,"codes",{value:e,enumerable:!1})}let r=a=>a,s=(a,o,g)=>[a,o,g];t.color.close="\x1B[39m",t.bgColor.close="\x1B[49m",t.color.ansi={ansi:qat(r,0)},t.color.ansi256={ansi256:$at(r,0)},t.color.ansi16m={rgb:ect(s,0)},t.bgColor.ansi={ansi:qat(r,10)},t.bgColor.ansi256={ansi256:$at(r,10)},t.bgColor.ansi16m={rgb:ect(s,10)};for(let a of Object.keys(UEe)){if(typeof UEe[a]!="object")continue;let o=UEe[a];a==="ansi16"&&(a="ansi"),"ansi16"in o&&(t.color.ansi[a]=qat(o.ansi16,0),t.bgColor.ansi[a]=qat(o.ansi16,10)),"ansi256"in o&&(t.color.ansi256[a]=$at(o.ansi256,0),t.bgColor.ansi256[a]=$at(o.ansi256,10)),"rgb"in o&&(t.color.ansi16m[a]=ect(o.rgb,0),t.bgColor.ansi16m[a]=ect(o.rgb,10))}return t}Object.defineProperty(rEn,"exports",{enumerable:!0,get:rro})});var sEn=z(($Xc,iEn)=>{"use strict";iEn.exports=(e,t)=>{t=t||process.argv;let r=e.startsWith("-")?"":e.length===1?"-":"--",s=t.indexOf(r+e),a=t.indexOf("--");return s!==-1&&(a===-1?!0:s{"use strict";var nro=xt("os"),RH=sEn(),Ek=process.env,KEe;RH("no-color")||RH("no-colors")||RH("color=false")?KEe=!1:(RH("color")||RH("colors")||RH("color=true")||RH("color=always"))&&(KEe=!0);"FORCE_COLOR"in Ek&&(KEe=Ek.FORCE_COLOR.length===0||parseInt(Ek.FORCE_COLOR,10)!==0);function iro(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function sro(e){if(KEe===!1)return 0;if(RH("color=16m")||RH("color=full")||RH("color=truecolor"))return 3;if(RH("color=256"))return 2;if(e&&!e.isTTY&&KEe!==!0)return 0;let t=KEe?1:0;if(process.platform==="win32"){let r=nro.release().split(".");return Number(process.versions.node.split(".")[0])>=8&&Number(r[0])>=10&&Number(r[2])>=10586?Number(r[2])>=14931?3:2:1}if("CI"in Ek)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(r=>r in Ek)||Ek.CI_NAME==="codeship"?1:t;if("TEAMCITY_VERSION"in Ek)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(Ek.TEAMCITY_VERSION)?1:0;if(Ek.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in Ek){let r=parseInt((Ek.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(Ek.TERM_PROGRAM){case"iTerm.app":return r>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(Ek.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(Ek.TERM)||"COLORTERM"in Ek?1:(Ek.TERM==="dumb",t)}function A7t(e){let t=sro(e);return iro(t)}oEn.exports={supportsColor:A7t,stdout:A7t(process.stdout),stderr:A7t(process.stderr)}});var AEn=z((t4c,gEn)=>{"use strict";var oro=/(?:\\(u[a-f\d]{4}|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,cEn=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,aro=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,cro=/\\(u[a-f\d]{4}|x[a-f\d]{2}|.)|([^\\])/gi,lro=new Map([["n",` +`],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e","\x1B"],["a","\x07"]]);function uEn(e){return e[0]==="u"&&e.length===5||e[0]==="x"&&e.length===3?String.fromCharCode(parseInt(e.slice(1),16)):lro.get(e)||e}function uro(e,t){let r=[],s=t.trim().split(/\s*,\s*/g),a;for(let o of s)if(!isNaN(o))r.push(Number(o));else if(a=o.match(aro))r.push(a[2].replace(cro,(g,p,f)=>p?uEn(p):f));else throw new Error(`Invalid Chalk template style argument: ${o} (in style '${e}')`);return r}function gro(e){cEn.lastIndex=0;let t=[],r;for(;(r=cEn.exec(e))!==null;){let s=r[1];if(r[2]){let a=uro(s,r[2]);t.push([s].concat(a))}else t.push([s])}return t}function lEn(e,t){let r={};for(let a of t)for(let o of a.styles)r[o[0]]=a.inverse?null:o.slice(1);let s=e;for(let a of Object.keys(r))if(Array.isArray(r[a])){if(!(a in s))throw new Error(`Unknown Chalk style: ${a}`);r[a].length>0?s=s[a].apply(s,r[a]):s=s[a]}return s}gEn.exports=(e,t)=>{let r=[],s=[],a=[];if(t.replace(oro,(o,g,p,f,m,y)=>{if(g)a.push(uEn(g));else if(f){let B=a.join("");a=[],s.push(r.length===0?B:lEn(e,r)(B)),r.push({inverse:p,styles:gro(f)})}else if(m){if(r.length===0)throw new Error("Found extraneous } in Chalk template literal");s.push(lEn(e,r)(a.join(""))),a=[],r.pop()}else a.push(y)}),s.push(a.join("")),r.length>0){let o=`Chalk template literal is missing ${r.length} closing bracket${r.length===1?"":"s"} (\`}\`)`;throw new Error(o)}return s.join("")}});var CEn=z((r4c,TWe)=>{"use strict";var p7t=l7t(),_w=nEn(),d7t=aEn().stdout,Aro=AEn(),pEn=process.platform==="win32"&&!(process.env.TERM||"").toLowerCase().startsWith("xterm"),fEn=["ansi","ansi","ansi256","ansi16m"],IEn=new Set(["gray"]),jEe=Object.create(null);function dEn(e,t){t=t||{};let r=d7t?d7t.level:0;e.level=t.level===void 0?r:t.level,e.enabled="enabled"in t?t.enabled:e.level>0}function wWe(e){if(!this||!(this instanceof wWe)||this.template){let t={};return dEn(t,e),t.template=function(){let r=[].slice.call(arguments);return fro.apply(null,[t.template].concat(r))},Object.setPrototypeOf(t,wWe.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=wWe,t.template}dEn(this,e)}pEn&&(_w.blue.open="\x1B[94m");for(let e of Object.keys(_w))_w[e].closeRe=new RegExp(p7t(_w[e].close),"g"),jEe[e]={get(){let t=_w[e];return tct.call(this,this._styles?this._styles.concat(t):[t],this._empty,e)}};jEe.visible={get(){return tct.call(this,this._styles||[],!0,"visible")}};_w.color.closeRe=new RegExp(p7t(_w.color.close),"g");for(let e of Object.keys(_w.color.ansi))IEn.has(e)||(jEe[e]={get(){let t=this.level;return function(){let s={open:_w.color[fEn[t]][e].apply(null,arguments),close:_w.color.close,closeRe:_w.color.closeRe};return tct.call(this,this._styles?this._styles.concat(s):[s],this._empty,e)}}});_w.bgColor.closeRe=new RegExp(p7t(_w.bgColor.close),"g");for(let e of Object.keys(_w.bgColor.ansi)){if(IEn.has(e))continue;let t="bg"+e[0].toUpperCase()+e.slice(1);jEe[t]={get(){let r=this.level;return function(){let a={open:_w.bgColor[fEn[r]][e].apply(null,arguments),close:_w.bgColor.close,closeRe:_w.bgColor.closeRe};return tct.call(this,this._styles?this._styles.concat(a):[a],this._empty,e)}}}}var dro=Object.defineProperties(()=>{},jEe);function tct(e,t,r){let s=function(){return pro.apply(s,arguments)};s._styles=e,s._empty=t;let a=this;return Object.defineProperty(s,"level",{enumerable:!0,get(){return a.level},set(o){a.level=o}}),Object.defineProperty(s,"enabled",{enumerable:!0,get(){return a.enabled},set(o){a.enabled=o}}),s.hasGrey=this.hasGrey||r==="gray"||r==="grey",s.__proto__=dro,s}function pro(){let e=arguments,t=e.length,r=String(arguments[0]);if(t===0)return"";if(t>1)for(let a=1;a{"use strict";Object.defineProperty(NWe,"__esModule",{value:!0});NWe.default=Ero;NWe.shouldHighlight=BEn;var mEn=Q6t(),hEn=J6t(),I7t=Iro(Mat(),!0);function yEn(e){if(typeof WeakMap!="function")return null;var t=new WeakMap,r=new WeakMap;return(yEn=function(s){return s?r:t})(e)}function Iro(e,t){if(!t&&e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var r=yEn(t);if(r&&r.has(e))return r.get(e);var s={__proto__:null},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(o!=="default"&&{}.hasOwnProperty.call(e,o)){var g=a?Object.getOwnPropertyDescriptor(e,o):null;g&&(g.get||g.set)?Object.defineProperty(s,o,g):s[o]=e[o]}return s.default=e,r&&r.set(e,s),s}var bEn=typeof process=="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?(0,I7t.createColors)(!1):I7t.default,_En=(e,t)=>r=>e(t(r)),Cro=new Set(["as","async","from","get","of","set"]);function mro(e){return{keyword:e.cyan,capitalized:e.yellow,jsxIdentifier:e.yellow,punctuator:e.yellow,number:e.magenta,string:e.green,regex:e.magenta,comment:e.gray,invalid:_En(_En(e.white,e.bgRed),e.bold)}}var hro=/\r\n|[\n\r\u2028\u2029]/,_ro=/^[()[\]{}]$/,EEn;{let e=/^[a-z][\w-]*$/i,t=function(r,s,a){if(r.type==="name"){if((0,hEn.isKeyword)(r.value)||(0,hEn.isStrictReservedWord)(r.value,!0)||Cro.has(r.value))return"keyword";if(e.test(r.value)&&(a[s-1]==="<"||a.slice(s-2,s)==="o(g)).join(` +`):r+=a}return r}function BEn(e){return bEn.isColorSupported||e.forceColor}var f7t;function bro(e){if(e){var t;return(t=f7t)!=null||(f7t=(0,I7t.createColors)(!0)),f7t}return bEn}function Ero(e,t={}){if(e!==""&&BEn(t)){let r=mro(bro(t.forceColor));return yro(r,e)}else return e}{let e,t;NWe.getChalk=({forceColor:r})=>{var s;if((s=e)!=null||(e=CEn()),r){var a;return(a=t)!=null||(t=new e.constructor({enabled:!0,level:1})),t}return e}}});var nct=z(rct=>{"use strict";Object.defineProperty(rct,"__esModule",{value:!0});rct.codeFrameColumns=DEn;rct.default=Nro;var SEn=vEn(),m7t=Bro(Mat(),!0);function REn(e){if(typeof WeakMap!="function")return null;var t=new WeakMap,r=new WeakMap;return(REn=function(s){return s?r:t})(e)}function Bro(e,t){if(!t&&e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var r=REn(t);if(r&&r.has(e))return r.get(e);var s={__proto__:null},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(o!=="default"&&{}.hasOwnProperty.call(e,o)){var g=a?Object.getOwnPropertyDescriptor(e,o):null;g&&(g.get||g.set)?Object.defineProperty(s,o,g):s[o]=e[o]}return s.default=e,r&&r.set(e,s),s}var vro=typeof process=="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?(0,m7t.createColors)(!1):m7t.default,wEn=(e,t)=>r=>e(t(r)),C7t;function Sro(e){if(e){var t;return(t=C7t)!=null||(C7t=(0,m7t.createColors)(!0)),C7t}return vro}var TEn=!1;function wro(e){return{gutter:e.gray,marker:wEn(e.red,e.bold),message:wEn(e.red,e.bold)}}var NEn=/\r\n|[\n\r\u2028\u2029]/;function Tro(e,t,r){let s=Object.assign({column:0,line:-1},e.start),a=Object.assign({},s,e.end),{linesAbove:o=2,linesBelow:g=3}=r||{},p=s.line,f=s.column,m=a.line,y=a.column,B=Math.max(p-(o+1),0),v=Math.min(t.length,m+g);p===-1&&(B=0),m===-1&&(v=t.length);let k=m-p,T={};if(k)for(let O=0;O<=k;O++){let X=O+p;if(!f)T[X]=!0;else if(O===0){let U=t[X-1].length;T[X]=[f,U-f+1]}else if(O===k)T[X]=[0,y];else{let U=t[X-O].length;T[X]=[0,U]}}else f===y?f?T[p]=[f,0]:T[p]=!0:T[p]=[f,y-f];return{start:B,end:v,markerLines:T}}function DEn(e,t,r={}){let s=(r.highlightCode||r.forceColor)&&(0,SEn.shouldHighlight)(r),a=Sro(r.forceColor),o=wro(a),g=(O,X)=>s?O(X):X,p=e.split(NEn),{start:f,end:m,markerLines:y}=Tro(t,p,r),B=t.start&&typeof t.start.column=="number",v=String(m).length,T=(s?(0,SEn.default)(e,r):e).split(NEn,m).slice(f,m).map((O,X)=>{let U=f+1+X,ae=` ${` ${U}`.slice(-v)} |`,ge=y[U],fe=!y[U+1];if(ge){let pe="";if(Array.isArray(ge)){let he=O.slice(0,Math.max(ge[0]-1,0)).replace(/[^\t]/g," "),be=ge[1]||1;pe=[` `,g(o.gutter,ae.replace(/\d/g," "))," ",he,g(o.marker,"^").repeat(be)].join(""),fe&&r.message&&(pe+=" "+g(o.message,r.message))}return[g(o.marker,">"),g(o.gutter,ae),O.length>0?` ${O}`:"",pe].join("")}else return` ${g(o.gutter,ae)}${O.length>0?` ${O}`:""}`}).join(` `);return r.message&&!B&&(T=`${" ".repeat(v+1)}${r.message} -${T}`),s?a.reset(T):T}function bro(e,t,r,s={}){if(!bEn){bEn=!0;let o="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";if(process.emitWarning)process.emitWarning(o,"DeprecationWarning");else{let g=new Error(o);g.name="DeprecationWarning",console.warn(new Error(o))}}return r=Math.max(r,0),vEn(e,{start:{column:r,line:t}},s)}});var LEn=z(vm=>{"use strict";var TWe=Symbol.for("react.element"),Ero=Symbol.for("react.portal"),Bro=Symbol.for("react.fragment"),vro=Symbol.for("react.strict_mode"),Sro=Symbol.for("react.profiler"),wro=Symbol.for("react.provider"),Tro=Symbol.for("react.context"),Nro=Symbol.for("react.forward_ref"),Rro=Symbol.for("react.suspense"),Dro=Symbol.for("react.memo"),xro=Symbol.for("react.lazy"),SEn=Symbol.iterator;function kro(e){return e===null||typeof e!="object"?null:(e=SEn&&e[SEn]||e["@@iterator"],typeof e=="function"?e:null)}var NEn={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},REn=Object.assign,DEn={};function KEe(e,t,r){this.props=e,this.context=t,this.refs=DEn,this.updater=r||NEn}KEe.prototype.isReactComponent={};KEe.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};KEe.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function xEn(){}xEn.prototype=KEe.prototype;function C7t(e,t,r){this.props=e,this.context=t,this.refs=DEn,this.updater=r||NEn}var m7t=C7t.prototype=new xEn;m7t.constructor=C7t;REn(m7t,KEe.prototype);m7t.isPureReactComponent=!0;var wEn=Array.isArray,kEn=Object.prototype.hasOwnProperty,h7t={current:null},GEn={key:!0,ref:!0,__self:!0,__source:!0};function FEn(e,t,r){var s,a={},o=null,g=null;if(t!=null)for(s in t.ref!==void 0&&(g=t.ref),t.key!==void 0&&(o=""+t.key),t)kEn.call(t,s)&&!GEn.hasOwnProperty(s)&&(a[s]=t[s]);var p=arguments.length-2;if(p===1)a.children=r;else if(1{"use strict";VEn.exports=LEn()});var y7t=z((jEe,NWe)=>{(function(){var e,t="4.17.21",r=200,s="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",a="Expected a function",o="Invalid `variable` option passed into `_.template`",g="__lodash_hash_undefined__",p=500,f="__lodash_placeholder__",m=1,y=2,B=4,v=1,G=2,T=1,O=2,X=4,U=8,le=16,ae=32,ge=64,fe=128,pe=256,he=512,be=30,Te="...",ke=800,x=16,et=1,Ue=2,Je=3,Xe=1/0,ft=9007199254740991,Gt=17976931348623157e292,er=NaN,Ur=4294967295,Ot=Ur-1,dr=Ur>>>1,Ar=[["ary",fe],["bind",T],["bindKey",O],["curry",U],["curryRight",le],["flip",he],["partial",ae],["partialRight",ge],["rearg",pe]],or="[object Arguments]",Fr="[object Array]",$r="[object AsyncFunction]",Or="[object Boolean]",In="[object Date]",Br="[object DOMException]",tr="[object Error]",gn="[object Function]",Gn="[object GeneratorFunction]",we="[object Map]",Zi="[object Number]",Za="[object Null]",ka="[object Object]",Qs="[object Promise]",lr="[object Proxy]",ga="[object RegExp]",vi="[object Set]",Qu="[object String]",Yu="[object Symbol]",YA="[object Undefined]",ud="[object WeakMap]",TA="[object WeakSet]",Ld="[object ArrayBuffer]",jr="[object DataView]",Gr="[object Float32Array]",Ir="[object Float64Array]",nn="[object Int8Array]",Cn="[object Int16Array]",Vn="[object Int32Array]",Ji="[object Uint8Array]",Hr="[object Uint8ClampedArray]",Ws="[object Uint16Array]",Ko="[object Uint32Array]",ai=/\b__p \+= '';/g,pa=/\b(__p \+=) '' \+/g,sg=/(__e\(.*?\)|\b__t\)) \+\n'';/g,Fu=/&(?:amp|lt|gt|quot|#39);/g,Cg=/[&<>"']/g,Zu=RegExp(Fu.source),Cl=RegExp(Cg.source),wi=/<%-([\s\S]+?)%>/g,ts=/<%([\s\S]+?)%>/g,$i=/<%=([\s\S]+?)%>/g,Ga=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,$s=/^\w*$/,xl=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,qo=/[\\^$.*+?()[\]{}|]/g,Na=RegExp(qo.source),wu=/^\s+/,Dg=/\s/,hl=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,au=/\{\n\/\* \[wrapped with (.+)\] \*/,Lg=/,? & /,cf=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Td=/[()=,{}\[\]\/\s]/,ei=/\\(\\)?/g,Qa=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Rt=/\w*$/,kl=/^[-+]0x[0-9a-f]+$/i,Hu=/^0b[01]+$/i,us=/^\[object .+?Constructor\]$/,og=/^0o[0-7]+$/i,on=/^(?:0|[1-9]\d*)$/,Bo=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,$g=/($^)/,cA=/['\n\r\u2028\u2029\\]/g,HA="\\ud800-\\udfff",No="\\u0300-\\u036f",Hl="\\ufe20-\\ufe2f",Ff="\\u20d0-\\u20ff",Vd=No+Hl+Ff,bA="\\u2700-\\u27bf",Os="a-z\\xdf-\\xf6\\xf8-\\xff",Hi="\\xac\\xb1\\xd7\\xf7",ec="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",ll="\\u2000-\\u206f",Ts=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",NA="A-Z\\xc0-\\xd6\\xd8-\\xde",Ud="\\ufe0e\\ufe0f",Ra=Hi+ec+ll+Ts,ys="['\u2019]",Xa="["+HA+"]",cm="["+Ra+"]",eo="["+Vd+"]",ps="\\d+",oc="["+bA+"]",TC="["+Os+"]",pI="[^"+HA+Ra+ps+bA+Os+NA+"]",SI="\\ud83c[\\udffb-\\udfff]",Bl="(?:"+eo+"|"+SI+")",il="[^"+HA+"]",LA="(?:\\ud83c[\\udde6-\\uddff]){2}",lf="[\\ud800-\\udbff][\\udc00-\\udfff]",za="["+NA+"]",iu="\\u200d",ii="(?:"+TC+"|"+pI+")",NC="(?:"+za+"|"+pI+")",Jh="(?:"+ys+"(?:d|ll|m|re|s|t|ve))?",Tm="(?:"+ys+"(?:D|LL|M|RE|S|T|VE))?",_l=Bl+"?",Og="["+Ud+"]?",sp="(?:"+iu+"(?:"+[il,LA,lf].join("|")+")"+Og+_l+")*",lm="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",ch="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",Xl=Og+_l+sp,Wp="(?:"+[oc,LA,lf].join("|")+")"+Xl,uC="(?:"+[il+eo+"?",eo,LA,lf,Xa].join("|")+")",fs=RegExp(ys,"g"),Ao=RegExp(eo,"g"),Do=RegExp(SI+"(?="+SI+")|"+uC+Xl,"g"),zl=RegExp([za+"?"+TC+"+"+Jh+"(?="+[cm,za,"$"].join("|")+")",NC+"+"+Tm+"(?="+[cm,za+ii,"$"].join("|")+")",za+"?"+ii+"+"+Jh,za+"+"+Tm,ch,lm,ps,Wp].join("|"),"g"),Nr=RegExp("["+iu+HA+Vd+Ud+"]"),Nn=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Di=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],na=-1,Ks={};Ks[Gr]=Ks[Ir]=Ks[nn]=Ks[Cn]=Ks[Vn]=Ks[Ji]=Ks[Hr]=Ks[Ws]=Ks[Ko]=!0,Ks[or]=Ks[Fr]=Ks[Ld]=Ks[Or]=Ks[jr]=Ks[In]=Ks[tr]=Ks[gn]=Ks[we]=Ks[Zi]=Ks[ka]=Ks[ga]=Ks[vi]=Ks[Qu]=Ks[ud]=!1;var Li={};Li[or]=Li[Fr]=Li[Ld]=Li[jr]=Li[Or]=Li[In]=Li[Gr]=Li[Ir]=Li[nn]=Li[Cn]=Li[Vn]=Li[we]=Li[Zi]=Li[ka]=Li[ga]=Li[vi]=Li[Qu]=Li[Yu]=Li[Ji]=Li[Hr]=Li[Ws]=Li[Ko]=!0,Li[tr]=Li[gn]=Li[ud]=!1;var Zl={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},RA={"&":"&","<":"<",">":">",'"':""","'":"'"},Nd={"&":"&","<":"<",">":">",""":'"',"'":"'"},WI={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},pl=parseFloat,Qm=parseInt,f1=typeof global=="object"&&global&&global.Object===Object&&global,fv=typeof self=="object"&&self&&self.Object===Object&&self,eA=f1||fv||Function("return this")(),Nm=typeof jEe=="object"&&jEe&&!jEe.nodeType&&jEe,lh=Nm&&typeof NWe=="object"&&NWe&&!NWe.nodeType&&NWe,Oy=lh&&lh.exports===Nm,vp=Oy&&f1.process,tA=function(){try{var Fi=lh&&lh.require&&lh.require("util").types;return Fi||vp&&vp.binding&&vp.binding("util")}catch{}}(),R0=tA&&tA.isArrayBuffer,_h=tA&&tA.isDate,ly=tA&&tA.isMap,uc=tA&&tA.isRegExp,b_=tA&&tA.isSet,Sb=tA&&tA.isTypedArray;function um(Fi,Lo,rs){switch(rs.length){case 0:return Fi.call(Lo);case 1:return Fi.call(Lo,rs[0]);case 2:return Fi.call(Lo,rs[0],rs[1]);case 3:return Fi.call(Lo,rs[0],rs[1],rs[2])}return Fi.apply(Lo,rs)}function uh(Fi,Lo,rs,vc){for(var Ml=-1,DA=Fi==null?0:Fi.length;++Ml-1}function Ef(Fi,Lo,rs){for(var vc=-1,Ml=Fi==null?0:Fi.length;++vc-1;);return rs}function fI(Fi,Lo){for(var rs=Fi.length;rs--&&Zr(Lo,Fi[rs],0)>-1;);return rs}function Bf(Fi,Lo){for(var rs=Fi.length,vc=0;rs--;)Fi[rs]===Lo&&++vc;return vc}var Uh=fc(Zl),Ym=fc(RA);function IS(Fi){return"\\"+WI[Fi]}function CS(Fi,Lo){return Fi==null?e:Fi[Lo]}function _E(Fi){return Nr.test(Fi)}function x0(Fi){return Nn.test(Fi)}function yE(Fi){for(var Lo,rs=[];!(Lo=Fi.next()).done;)rs.push(Lo.value);return rs}function CB(Fi){var Lo=-1,rs=Array(Fi.size);return Fi.forEach(function(vc,Ml){rs[++Lo]=[Ml,vc]}),rs}function J_(Fi,Lo){return function(rs){return Fi(Lo(rs))}}function yh(Fi,Lo){for(var rs=-1,vc=Fi.length,Ml=0,DA=[];++rs-1}function Jy(ne,Ie){var ze=this.__data__,Mt=hB(ze,ne);return Mt<0?(++this.size,ze.push([ne,Ie])):ze[Mt][1]=Ie,this}Eh.prototype.clear=y1,Eh.prototype.delete=vE,Eh.prototype.get=SE,Eh.prototype.has=bS,Eh.prototype.set=Jy;function qh(ne){var Ie=-1,ze=ne==null?0:ne.length;for(this.clear();++Ie=Ie?ne:Ie)),ne}function TI(ne,Ie,ze,Mt,Rr,bn){var Ci,Qi=Ie&m,bs=Ie&y,ia=Ie&B;if(ze&&(Ci=Rr?ze(ne,Mt,Rr,bn):ze(ne)),Ci!==e)return Ci;if(!O0(ne))return ne;var Ia=zp(ne);if(Ia){if(Ci=y2(ne),!Qi)return Lu(ne,Ci)}else{var Ac=Uu(ne),fu=Ac==gn||Ac==Gn;if(DE(ne))return nd(ne,Qi);if(Ac==ka||Ac==or||fu&&!Rr){if(Ci=bs||fu?{}:LR(ne),!Qi)return bs?jy(ne,vh(Ci,ne)):Mp(ne,bv(Ci,ne))}else{if(!Li[Ac])return Rr?ne:{};Ci=B3(ne,Ac,Qi)}}bn||(bn=new Wa);var Mg=bn.get(ne);if(Mg)return Mg;bn.set(ne,Ci),Ic(ne)?ne.forEach(function(Pd){Ci.add(TI(Pd,Ie,ze,Pd,ne,bn))}):Vae(ne)&&ne.forEach(function(Pd,oI){Ci.set(oI,TI(Pd,Ie,ze,oI,ne,bn))});var pd=ia?bs?Jr:Er:bs?wB:SB,Qp=Ia?e:pd(ne);return pg(Qp||ne,function(Pd,oI){Qp&&(oI=Pd,Pd=ne[oI]),p2(Ci,oI,TI(Pd,Ie,ze,oI,ne,bn))}),Ci}function j_(ne){var Ie=SB(ne);return function(ze){return f2(ze,ne,Ie)}}function f2(ne,Ie,ze){var Mt=ze.length;if(ne==null)return!Mt;for(ne=jd(ne);Mt--;){var Rr=ze[Mt],bn=Ie[Rr],Ci=ne[Rr];if(Ci===e&&!(Rr in ne)||!bn(Ci))return!1}return!0}function b1(ne,Ie,ze){if(typeof ne!="function")throw new Dm(a);return v3(function(){ne.apply(e,ze)},Ie)}function E1(ne,Ie,ze,Mt){var Rr=-1,bn=PI,Ci=!0,Qi=ne.length,bs=[],ia=Ie.length;if(!Qi)return bs;ze&&(Ie=eI(Ie,Kd(ze))),Mt?(bn=Ef,Ci=!1):Ie.length>=r&&(bn=ya,Ci=!1,Ie=new Bh(Ie));e:for(;++RrRr?0:Rr+ze),Mt=Mt===e||Mt>Rr?Rr:pf(Mt),Mt<0&&(Mt+=Rr),Mt=ze>Mt?0:X9(Mt);ze0&&ze(Qi)?Ie>1?AC(Qi,Ie-1,ze,Mt,Rr):Zf(Rr,Qi):Mt||(Rr[Rr.length]=Qi)}return Rr}var B1=$_(),I2=$_(!0);function Sp(ne,Ie){return ne&&B1(ne,Ie,SB)}function eC(ne,Ie){return ne&&I2(ne,Ie,SB)}function yd(ne,Ie){return Rm(Ie,function(ze){return QR(ne[ze])})}function V0(ne,Ie){Ie=Fa(Ie,ne);for(var ze=0,Mt=Ie.length;ne!=null&&zeIe}function v1(ne,Ie){return ne!=null&&uf.call(ne,Ie)}function gd(ne,Ie){return ne!=null&&Ie in jd(ne)}function pp(ne,Ie,ze){return ne>=uA(Ie,ze)&&ne=120&&Ia.length>=120)?new Bh(Ci&&Ia):e}Ia=ne[0];var Ac=-1,fu=Qi[0];e:for(;++Ac-1;)Qi!==ne&&mg.call(Qi,bs,1),mg.call(ne,bs,1);return ne}function wS(ne,Ie){for(var ze=ne?Ie.length:0,Mt=ze-1;ze--;){var Rr=Ie[ze];if(ze==Mt||Rr!==bn){var bn=Rr;e0(Rr)?mg.call(ne,Rr,1):ee(ne,Rr)}}return ne}function Xw(ne,Ie){return ne+C1(Vf()*(Ie-ne+1))}function dC(ne,Ie,ze,Mt){for(var Rr=-1,bn=OI(Qy((Ie-ne)/(ze||1)),0),Ci=rs(bn);bn--;)Ci[Mt?bn:++Rr]=ne,ne+=ze;return Ci}function Ah(ne,Ie){var ze="";if(!ne||Ie<1||Ie>ft)return ze;do Ie%2&&(ze+=ne),Ie=C1(Ie/2),Ie&&(ne+=ne);while(Ie);return ze}function Bg(ne,Ie){return S3(fA(ne,Ie,Yf),ne+"")}function Th(ne){return ES(HR(ne))}function C2(ne,Ie){var ze=HR(ne);return Si(ze,kb(Ie,0,ze.length))}function fp(ne,Ie,ze,Mt){if(!O0(ne))return ne;Ie=Fa(Ie,ne);for(var Rr=-1,bn=Ie.length,Ci=bn-1,Qi=ne;Qi!=null&&++RrRr?0:Rr+Ie),ze=ze>Rr?Rr:ze,ze<0&&(ze+=Rr),Rr=Ie>ze?0:ze-Ie>>>0,Ie>>>=0;for(var bn=rs(Rr);++Mt>>1,Ci=ne[bn];Ci!==null&&!zw(Ci)&&(ze?Ci<=Ie:Ci=r){var ia=Ie?null:Cx(ne);if(ia)return U_(ia);Ci=!1,Rr=ya,bs=new Bh}else bs=Ie?[]:Qi;e:for(;++Mt=Mt?ne:iI(ne,Ie,ze)}var vg=zT||function(ne){return eA.clearTimeout(ne)};function nd(ne,Ie){if(Ie)return ne.slice();var ze=ne.length,Mt=vn?vn(ze):new ne.constructor(ze);return ne.copy(Mt),Mt}function YC(ne){var Ie=new ne.constructor(ne.byteLength);return new Wr(Ie).set(new Wr(ne)),Ie}function Sn(ne,Ie){var ze=Ie?YC(ne.buffer):ne.buffer;return new ne.constructor(ze,ne.byteOffset,ne.byteLength)}function vr(ne){var Ie=new ne.constructor(ne.source,Rt.exec(ne));return Ie.lastIndex=ne.lastIndex,Ie}function Hn(ne){return Rb?jd(Rb.call(ne)):{}}function Fo(ne,Ie){var ze=Ie?YC(ne.buffer):ne.buffer;return new ne.constructor(ze,ne.byteOffset,ne.length)}function tc(ne,Ie){if(ne!==Ie){var ze=ne!==e,Mt=ne===null,Rr=ne===ne,bn=zw(ne),Ci=Ie!==e,Qi=Ie===null,bs=Ie===Ie,ia=zw(Ie);if(!Qi&&!ia&&!bn&&ne>Ie||bn&&Ci&&bs&&!Qi&&!ia||Mt&&Ci&&bs||!ze&&bs||!Rr)return 1;if(!Mt&&!bn&&!ia&&ne=Qi)return bs;var ia=ze[Mt];return bs*(ia=="desc"?-1:1)}}return ne.index-Ie.index}function pc(ne,Ie,ze,Mt){for(var Rr=-1,bn=ne.length,Ci=ze.length,Qi=-1,bs=Ie.length,ia=OI(bn-Ci,0),Ia=rs(bs+ia),Ac=!Mt;++Qi1?ze[Rr-1]:e,Ci=Rr>2?ze[2]:e;for(bn=ne.length>3&&typeof bn=="function"?(Rr--,bn):e,Ci&&my(ze[0],ze[1],Ci)&&(bn=Rr<3?e:bn,Rr=1),Ie=jd(Ie);++Mt-1?Rr[bn?Ie[Ci]:Ci]:e}}function sN(ne){return Ft(function(Ie){var ze=Ie.length,Mt=ze,Rr=zh.prototype.thru;for(ne&&Ie.reverse();Mt--;){var bn=Ie[Mt];if(typeof bn!="function")throw new Dm(a);if(Rr&&!Ci&&Ki(bn)=="wrapper")var Ci=new zh([],!0)}for(Mt=Ci?Mt:ze;++Mt1&&Nf.reverse(),Ia&&bsQi))return!1;var ia=bn.get(ne),Ia=bn.get(Ie);if(ia&&Ia)return ia==Ie&&Ia==ne;var Ac=-1,fu=!0,Mg=ze&G?new Bh:e;for(bn.set(ne,Ie),bn.set(Ie,ne);++Ac1?"& ":"")+Ie[Mt],Ie=Ie.join(ze>2?", ":" "),ne.replace(hl,`{ +${T}`),s?a.reset(T):T}function Nro(e,t,r,s={}){if(!TEn){TEn=!0;let o="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";if(process.emitWarning)process.emitWarning(o,"DeprecationWarning");else{let g=new Error(o);g.name="DeprecationWarning",console.warn(new Error(o))}}return r=Math.max(r,0),DEn(e,{start:{column:r,line:t}},s)}});var MEn=z(Sm=>{"use strict";var RWe=Symbol.for("react.element"),Rro=Symbol.for("react.portal"),Dro=Symbol.for("react.fragment"),xro=Symbol.for("react.strict_mode"),kro=Symbol.for("react.profiler"),Gro=Symbol.for("react.provider"),Fro=Symbol.for("react.context"),Zro=Symbol.for("react.forward_ref"),Lro=Symbol.for("react.suspense"),Vro=Symbol.for("react.memo"),Wro=Symbol.for("react.lazy"),xEn=Symbol.iterator;function Pro(e){return e===null||typeof e!="object"?null:(e=xEn&&e[xEn]||e["@@iterator"],typeof e=="function"?e:null)}var FEn={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},ZEn=Object.assign,LEn={};function zEe(e,t,r){this.props=e,this.context=t,this.refs=LEn,this.updater=r||FEn}zEe.prototype.isReactComponent={};zEe.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};zEe.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function VEn(){}VEn.prototype=zEe.prototype;function _7t(e,t,r){this.props=e,this.context=t,this.refs=LEn,this.updater=r||FEn}var y7t=_7t.prototype=new VEn;y7t.constructor=_7t;ZEn(y7t,zEe.prototype);y7t.isPureReactComponent=!0;var kEn=Array.isArray,WEn=Object.prototype.hasOwnProperty,b7t={current:null},PEn={key:!0,ref:!0,__self:!0,__source:!0};function OEn(e,t,r){var s,a={},o=null,g=null;if(t!=null)for(s in t.ref!==void 0&&(g=t.ref),t.key!==void 0&&(o=""+t.key),t)WEn.call(t,s)&&!PEn.hasOwnProperty(s)&&(a[s]=t[s]);var p=arguments.length-2;if(p===1)a.children=r;else if(1{"use strict";HEn.exports=MEn()});var B7t=z((qEe,DWe)=>{(function(){var e,t="4.17.21",r=200,s="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",a="Expected a function",o="Invalid `variable` option passed into `_.template`",g="__lodash_hash_undefined__",p=500,f="__lodash_placeholder__",m=1,y=2,B=4,v=1,k=2,T=1,O=2,X=4,U=8,le=16,ae=32,ge=64,fe=128,pe=256,he=512,be=30,Te="...",ke=800,x=16,et=1,Ue=2,Je=3,Xe=1/0,ft=9007199254740991,Gt=17976931348623157e292,er=NaN,Ur=4294967295,Ot=Ur-1,dr=Ur>>>1,Ar=[["ary",fe],["bind",T],["bindKey",O],["curry",U],["curryRight",le],["flip",he],["partial",ae],["partialRight",ge],["rearg",pe]],or="[object Arguments]",Fr="[object Array]",$r="[object AsyncFunction]",Or="[object Boolean]",In="[object Date]",Br="[object DOMException]",tr="[object Error]",gn="[object Function]",Gn="[object GeneratorFunction]",we="[object Map]",Zi="[object Number]",Fa="[object Null]",xa="[object Object]",Qs="[object Promise]",lr="[object Proxy]",ua="[object RegExp]",vi="[object Set]",Hu="[object String]",Yu="[object Symbol]",YA="[object Undefined]",gd="[object WeakMap]",NA="[object WeakSet]",Vd="[object ArrayBuffer]",jr="[object DataView]",Gr="[object Float32Array]",Ir="[object Float64Array]",nn="[object Int8Array]",Cn="[object Int16Array]",Vn="[object Int32Array]",Ji="[object Uint8Array]",Yr="[object Uint8ClampedArray]",Vs="[object Uint16Array]",Uo="[object Uint32Array]",ai=/\b__p \+= '';/g,da=/\b(__p \+=) '' \+/g,og=/(__e\(.*?\)|\b__t\)) \+\n'';/g,Zu=/&(?:amp|lt|gt|quot|#39);/g,mg=/[&<>"']/g,Lu=RegExp(Zu.source),ml=RegExp(mg.source),wi=/<%-([\s\S]+?)%>/g,ts=/<%([\s\S]+?)%>/g,$i=/<%=([\s\S]+?)%>/g,ka=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,qs=/^\w*$/,kl=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,zo=/[\\^$.*+?()[\]{}|]/g,Ta=RegExp(zo.source),Tu=/^\s+/,xg=/\s/,_l=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,cu=/\{\n\/\* \[wrapped with (.+)\] \*/,Vg=/,? & /,lf=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Nd=/[()=,{}\[\]\/\s]/,ei=/\\(\\)?/g,Qa=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Dt=/\w*$/,Gl=/^[-+]0x[0-9a-f]+$/i,Xu=/^0b[01]+$/i,us=/^\[object .+?Constructor\]$/,ag=/^0o[0-7]+$/i,on=/^(?:0|[1-9]\d*)$/,Eo=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,eA=/($^)/,lA=/['\n\r\u2028\u2029\\]/g,XA="\\ud800-\\udfff",To="\\u0300-\\u036f",Xl="\\ufe20-\\ufe2f",Zf="\\u20d0-\\u20ff",Wd=To+Xl+Zf,EA="\\u2700-\\u27bf",Ps="a-z\\xdf-\\xf6\\xf8-\\xff",Yi="\\xac\\xb1\\xd7\\xf7",ec="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",ul="\\u2000-\\u206f",Ts=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",RA="A-Z\\xc0-\\xd6\\xd8-\\xde",Kd="\\ufe0e\\ufe0f",Na=Yi+ec+ul+Ts,ys="['\u2019]",Ya="["+XA+"]",lm="["+Na+"]",$s="["+Wd+"]",ps="\\d+",oc="["+EA+"]",NC="["+Ps+"]",fI="[^"+XA+Na+ps+EA+Ps+RA+"]",wI="\\ud83c[\\udffb-\\udfff]",vl="(?:"+$s+"|"+wI+")",sl="[^"+XA+"]",VA="(?:\\ud83c[\\udde6-\\uddff]){2}",uf="[\\ud800-\\udbff][\\udc00-\\udfff]",ja="["+RA+"]",su="\\u200d",ii="(?:"+NC+"|"+fI+")",RC="(?:"+ja+"|"+fI+")",Uh="(?:"+ys+"(?:d|ll|m|re|s|t|ve))?",Nm="(?:"+ys+"(?:D|LL|M|RE|S|T|VE))?",yl=vl+"?",Qg="["+Kd+"]?",op="(?:"+su+"(?:"+[sl,VA,uf].join("|")+")"+Qg+yl+")*",um="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",lh="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",Jl=Qg+yl+op,Pp="(?:"+[oc,VA,uf].join("|")+")"+Jl,gC="(?:"+[sl+$s+"?",$s,VA,uf,Ya].join("|")+")",fs=RegExp(ys,"g"),go=RegExp($s,"g"),Ro=RegExp(wI+"(?="+wI+")|"+gC+Jl,"g"),ql=RegExp([ja+"?"+NC+"+"+Uh+"(?="+[lm,ja,"$"].join("|")+")",RC+"+"+Nm+"(?="+[lm,ja+ii,"$"].join("|")+")",ja+"?"+ii+"+"+Uh,ja+"+"+Nm,lh,um,ps,Pp].join("|"),"g"),Nr=RegExp("["+su+XA+Wd+Kd+"]"),Nn=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Di=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],ra=-1,Us={};Us[Gr]=Us[Ir]=Us[nn]=Us[Cn]=Us[Vn]=Us[Ji]=Us[Yr]=Us[Vs]=Us[Uo]=!0,Us[or]=Us[Fr]=Us[Vd]=Us[Or]=Us[jr]=Us[In]=Us[tr]=Us[gn]=Us[we]=Us[Zi]=Us[xa]=Us[ua]=Us[vi]=Us[Hu]=Us[gd]=!1;var Li={};Li[or]=Li[Fr]=Li[Vd]=Li[jr]=Li[Or]=Li[In]=Li[Gr]=Li[Ir]=Li[nn]=Li[Cn]=Li[Vn]=Li[we]=Li[Zi]=Li[xa]=Li[ua]=Li[vi]=Li[Hu]=Li[Yu]=Li[Ji]=Li[Yr]=Li[Vs]=Li[Uo]=!0,Li[tr]=Li[gn]=Li[gd]=!1;var Ll={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},DA={"&":"&","<":"<",">":">",'"':""","'":"'"},Rd={"&":"&","<":"<",">":">",""":'"',"'":"'"},PI={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},fl=parseFloat,Hm=parseInt,I1=typeof global=="object"&&global&&global.Object===Object&&global,Iv=typeof self=="object"&&self&&self.Object===Object&&self,tA=I1||Iv||Function("return this")(),Rm=typeof qEe=="object"&&qEe&&!qEe.nodeType&&qEe,uh=Rm&&typeof DWe=="object"&&DWe&&!DWe.nodeType&&DWe,Qy=uh&&uh.exports===Rm,Sp=Qy&&I1.process,rA=function(){try{var Fi=uh&&uh.require&&uh.require("util").types;return Fi||Sp&&Sp.binding&&Sp.binding("util")}catch{}}(),D0=rA&&rA.isArrayBuffer,yh=rA&&rA.isDate,uy=rA&&rA.isMap,uc=rA&&rA.isRegExp,E_=rA&&rA.isSet,Tb=rA&&rA.isTypedArray;function gm(Fi,Zo,rs){switch(rs.length){case 0:return Fi.call(Zo);case 1:return Fi.call(Zo,rs[0]);case 2:return Fi.call(Zo,rs[0],rs[1]);case 3:return Fi.call(Zo,rs[0],rs[1],rs[2])}return Fi.apply(Zo,rs)}function gh(Fi,Zo,rs,Sc){for(var Ml=-1,xA=Fi==null?0:Fi.length;++Ml-1}function Bf(Fi,Zo,rs){for(var Sc=-1,Ml=Fi==null?0:Fi.length;++Sc-1;);return rs}function II(Fi,Zo){for(var rs=Fi.length;rs--&&Zr(Zo,Fi[rs],0)>-1;);return rs}function vf(Fi,Zo){for(var rs=Fi.length,Sc=0;rs--;)Fi[rs]===Zo&&++Sc;return Sc}var Kh=Ic(Ll),Ym=Ic(DA);function CS(Fi){return"\\"+PI[Fi]}function mS(Fi,Zo){return Fi==null?e:Fi[Zo]}function bE(Fi){return Nr.test(Fi)}function k0(Fi){return Nn.test(Fi)}function EE(Fi){for(var Zo,rs=[];!(Zo=Fi.next()).done;)rs.push(Zo.value);return rs}function hB(Fi){var Zo=-1,rs=Array(Fi.size);return Fi.forEach(function(Sc,Ml){rs[++Zo]=[Ml,Sc]}),rs}function U_(Fi,Zo){return function(rs){return Fi(Zo(rs))}}function bh(Fi,Zo){for(var rs=-1,Sc=Fi.length,Ml=0,xA=[];++rs-1}function Uy(ne,Ie){var ze=this.__data__,Qt=yB(ze,ne);return Qt<0?(++this.size,ze.push([ne,Ie])):ze[Qt][1]=Ie,this}Bh.prototype.clear=b1,Bh.prototype.delete=wE,Bh.prototype.get=TE,Bh.prototype.has=ES,Bh.prototype.set=Uy;function $h(ne){var Ie=-1,ze=ne==null?0:ne.length;for(this.clear();++Ie=Ie?ne:Ie)),ne}function NI(ne,Ie,ze,Qt,Rr,bn){var Ci,Mi=Ie&m,bs=Ie&y,na=Ie&B;if(ze&&(Ci=Rr?ze(ne,Qt,Rr,bn):ze(ne)),Ci!==e)return Ci;if(!Q0(ne))return ne;var fa=qp(ne);if(fa){if(Ci=b2(ne),!Mi)return Vu(ne,Ci)}else{var dc=Ku(ne),Iu=dc==gn||dc==Gn;if(kE(ne))return id(ne,Mi);if(dc==xa||dc==or||Iu&&!Rr){if(Ci=bs||Iu?{}:PR(ne),!Mi)return bs?zy(ne,Sh(Ci,ne)):Mp(ne,Ev(Ci,ne))}else{if(!Li[dc])return Rr?ne:{};Ci=w3(ne,dc,Mi)}}bn||(bn=new Va);var Mg=bn.get(ne);if(Mg)return Mg;bn.set(ne,Ci),Cc(ne)?ne.forEach(function(Od){Ci.add(NI(Od,Ie,ze,Od,ne,bn))}):Jae(ne)&&ne.forEach(function(Od,aI){Ci.set(aI,NI(Od,Ie,ze,aI,ne,bn))});var fd=na?bs?Jr:Er:bs?NB:TB,Hp=fa?e:fd(ne);return fg(Hp||ne,function(Od,aI){Hp&&(aI=Od,Od=ne[aI]),f2(Ci,aI,NI(Od,Ie,ze,aI,ne,bn))}),Ci}function z_(ne){var Ie=TB(ne);return function(ze){return I2(ze,ne,Ie)}}function I2(ne,Ie,ze){var Qt=ze.length;if(ne==null)return!Qt;for(ne=zd(ne);Qt--;){var Rr=ze[Qt],bn=Ie[Rr],Ci=ne[Rr];if(Ci===e&&!(Rr in ne)||!bn(Ci))return!1}return!0}function E1(ne,Ie,ze){if(typeof ne!="function")throw new xm(a);return T3(function(){ne.apply(e,ze)},Ie)}function B1(ne,Ie,ze,Qt){var Rr=-1,bn=OI,Ci=!0,Mi=ne.length,bs=[],na=Ie.length;if(!Mi)return bs;ze&&(Ie=tI(Ie,jd(ze))),Qt?(bn=Bf,Ci=!1):Ie.length>=r&&(bn=ha,Ci=!1,Ie=new vh(Ie));e:for(;++RrRr?0:Rr+ze),Qt=Qt===e||Qt>Rr?Rr:ff(Qt),Qt<0&&(Qt+=Rr),Qt=ze>Qt?0:J9(Qt);ze0&&ze(Mi)?Ie>1?dC(Mi,Ie-1,ze,Qt,Rr):Lf(Rr,Mi):Qt||(Rr[Rr.length]=Mi)}return Rr}var v1=e0(),C2=e0(!0);function wp(ne,Ie){return ne&&v1(ne,Ie,TB)}function tC(ne,Ie){return ne&&C2(ne,Ie,TB)}function bd(ne,Ie){return Dm(Ie,function(ze){return XR(ne[ze])})}function W0(ne,Ie){Ie=Ga(Ie,ne);for(var ze=0,Qt=Ie.length;ne!=null&&zeIe}function S1(ne,Ie){return ne!=null&&gf.call(ne,Ie)}function Ad(ne,Ie){return ne!=null&&Ie in zd(ne)}function fp(ne,Ie,ze){return ne>=gA(Ie,ze)&&ne=120&&fa.length>=120)?new vh(Ci&&fa):e}fa=ne[0];var dc=-1,Iu=Mi[0];e:for(;++dc-1;)Mi!==ne&&hg.call(Mi,bs,1),hg.call(ne,bs,1);return ne}function TS(ne,Ie){for(var ze=ne?Ie.length:0,Qt=ze-1;ze--;){var Rr=Ie[ze];if(ze==Qt||Rr!==bn){var bn=Rr;t0(Rr)?hg.call(ne,Rr,1):ee(ne,Rr)}}return ne}function Jw(ne,Ie){return ne+m1(Wf()*(Ie-ne+1))}function pC(ne,Ie,ze,Qt){for(var Rr=-1,bn=QI(Hy((Ie-ne)/(ze||1)),0),Ci=rs(bn);bn--;)Ci[Qt?bn:++Rr]=ne,ne+=ze;return Ci}function dh(ne,Ie){var ze="";if(!ne||Ie<1||Ie>ft)return ze;do Ie%2&&(ze+=ne),Ie=m1(Ie/2),Ie&&(ne+=ne);while(Ie);return ze}function vg(ne,Ie){return N3(IA(ne,Ie,Yf),ne+"")}function Nh(ne){return BS(UR(ne))}function m2(ne,Ie){var ze=UR(ne);return Si(ze,Fb(Ie,0,ze.length))}function Ip(ne,Ie,ze,Qt){if(!Q0(ne))return ne;Ie=Ga(Ie,ne);for(var Rr=-1,bn=Ie.length,Ci=bn-1,Mi=ne;Mi!=null&&++RrRr?0:Rr+Ie),ze=ze>Rr?Rr:ze,ze<0&&(ze+=Rr),Rr=Ie>ze?0:ze-Ie>>>0,Ie>>>=0;for(var bn=rs(Rr);++Qt>>1,Ci=ne[bn];Ci!==null&&!qw(Ci)&&(ze?Ci<=Ie:Ci=r){var na=Ie?null:Ex(ne);if(na)return K_(na);Ci=!1,Rr=ha,bs=new vh}else bs=Ie?[]:Mi;e:for(;++Qt=Qt?ne:sI(ne,Ie,ze)}var Sg=qT||function(ne){return tA.clearTimeout(ne)};function id(ne,Ie){if(Ie)return ne.slice();var ze=ne.length,Qt=vn?vn(ze):new ne.constructor(ze);return ne.copy(Qt),Qt}function YC(ne){var Ie=new ne.constructor(ne.byteLength);return new Wr(Ie).set(new Wr(ne)),Ie}function Sn(ne,Ie){var ze=Ie?YC(ne.buffer):ne.buffer;return new ne.constructor(ze,ne.byteOffset,ne.byteLength)}function vr(ne){var Ie=new ne.constructor(ne.source,Dt.exec(ne));return Ie.lastIndex=ne.lastIndex,Ie}function Yn(ne){return xb?zd(xb.call(ne)):{}}function Go(ne,Ie){var ze=Ie?YC(ne.buffer):ne.buffer;return new ne.constructor(ze,ne.byteOffset,ne.length)}function tc(ne,Ie){if(ne!==Ie){var ze=ne!==e,Qt=ne===null,Rr=ne===ne,bn=qw(ne),Ci=Ie!==e,Mi=Ie===null,bs=Ie===Ie,na=qw(Ie);if(!Mi&&!na&&!bn&&ne>Ie||bn&&Ci&&bs&&!Mi&&!na||Qt&&Ci&&bs||!ze&&bs||!Rr)return 1;if(!Qt&&!bn&&!na&&ne=Mi)return bs;var na=ze[Qt];return bs*(na=="desc"?-1:1)}}return ne.index-Ie.index}function fc(ne,Ie,ze,Qt){for(var Rr=-1,bn=ne.length,Ci=ze.length,Mi=-1,bs=Ie.length,na=QI(bn-Ci,0),fa=rs(bs+na),dc=!Qt;++Mi1?ze[Rr-1]:e,Ci=Rr>2?ze[2]:e;for(bn=ne.length>3&&typeof bn=="function"?(Rr--,bn):e,Ci&&hy(ze[0],ze[1],Ci)&&(bn=Rr<3?e:bn,Rr=1),Ie=zd(Ie);++Qt-1?Rr[bn?Ie[Ci]:Ci]:e}}function oN(ne){return Ft(function(Ie){var ze=Ie.length,Qt=ze,Rr=qh.prototype.thru;for(ne&&Ie.reverse();Qt--;){var bn=Ie[Qt];if(typeof bn!="function")throw new xm(a);if(Rr&&!Ci&&Ki(bn)=="wrapper")var Ci=new qh([],!0)}for(Qt=Ci?Qt:ze;++Qt1&&Rf.reverse(),fa&&bsMi))return!1;var na=bn.get(ne),fa=bn.get(Ie);if(na&&fa)return na==Ie&&fa==ne;var dc=-1,Iu=!0,Mg=ze&k?new vh:e;for(bn.set(ne,Ie),bn.set(Ie,ne);++dc1?"& ":"")+Ie[Qt],Ie=Ie.join(ze>2?", ":" "),ne.replace(_l,`{ /* [wrapped with `+Ie+`] */ -`)}function sI(ne){return zp(ne)||_Z(ne)||!!(gf&&ne&&ne[gf])}function e0(ne,Ie){var ze=typeof ne;return Ie=Ie??ft,!!Ie&&(ze=="number"||ze!="symbol"&&on.test(ne))&&ne>-1&&ne%1==0&&ne0){if(++Ie>=ke)return arguments[0]}else Ie=0;return ne.apply(e,arguments)}}function Si(ne,Ie){var ze=-1,Mt=ne.length,Rr=Mt-1;for(Ie=Ie===e?Mt:Ie;++ze1?ne[Ie-1]:e;return ze=typeof ze=="function"?(ne.pop(),ze):e,uG(ne,ze)});function T3(ne){var Ie=An(ne);return Ie.__chain__=!0,Ie}function l8(ne,Ie){return Ie(ne),ne}function fZ(ne,Ie){return Ie(ne)}var YCe=Ft(function(ne){var Ie=ne.length,ze=Ie?ne[0]:0,Mt=this.__wrapped__,Rr=function(bn){return Uy(bn,ne)};return Ie>1||this.__actions__.length||!(Mt instanceof dp)||!e0(ze)?this.thru(Rr):(Mt=Mt.slice(ze,+ze+(Ie?1:0)),Mt.__actions__.push({func:fZ,args:[Rr],thisArg:e}),new zh(Mt,this.__chain__).thru(function(bn){return Ie&&!bn.length&&bn.push(e),bn}))});function pX(){return T3(this)}function f$(){return new zh(this.value(),this.__chain__)}function O9(){this.__values__===e&&(this.__values__=vX(this.value()));var ne=this.__index__>=this.__values__.length,Ie=ne?e:this.__values__[this.__index__++];return{done:ne,value:Ie}}function gG(){return this}function pQ(ne){for(var Ie,ze=this;ze instanceof d2;){var Mt=ao(ze);Mt.__index__=0,Mt.__values__=e,Ie?Rr.__wrapped__=Mt:Ie=Mt;var Rr=Mt;ze=ze.__wrapped__}return Rr.__wrapped__=ne,Ie}function Sv(){var ne=this.__wrapped__;if(ne instanceof dp){var Ie=ne;return this.__actions__.length&&(Ie=new dp(this)),Ie=Ie.reverse(),Ie.__actions__.push({func:fZ,args:[lG],thisArg:e}),new zh(Ie,this.__chain__)}return this.thru(lG)}function IZ(){return gt(this.__wrapped__,this.__actions__)}var RS=Bv(function(ne,Ie,ze){uf.call(ne,ze)?++ne[ze]:Oo(ne,ze,1)});function xae(ne,Ie,ze){var Mt=zp(ne)?wb:L0;return ze&&my(ne,Ie,ze)&&(Ie=e),Mt(ne,vo(Ie,3))}function u8(ne,Ie){var ze=zp(ne)?Rm:qu;return ze(ne,vo(Ie,3))}var M9=lZ(lN),Q9=lZ(lQ);function kae(ne,Ie){return AC(wv(ne,Ie),1)}function Ex(ne,Ie){return AC(wv(ne,Ie),Xe)}function g8(ne,Ie,ze){return ze=ze===e?1:pf(ze),AC(wv(ne,Ie),ze)}function I$(ne,Ie){var ze=zp(ne)?pg:Z0;return ze(ne,vo(Ie,3))}function Ip(ne,Ie){var ze=zp(ne)?gm:Sh;return ze(ne,vo(Ie,3))}var CZ=Bv(function(ne,Ie,ze){uf.call(ne,ze)?ne[ze].push(Ie):Oo(ne,ze,[Ie])});function fX(ne,Ie,ze,Mt){ne=DS(ne)?ne:HR(ne),ze=ze&&!Mt?pf(ze):0;var Rr=ne.length;return ze<0&&(ze=OI(Rr+ze,0)),v$(ne)?ze<=Rr&&ne.indexOf(Ie,ze)>-1:!!Rr&&Zr(ne,Ie,ze)>-1}var Rh=Bg(function(ne,Ie,ze){var Mt=-1,Rr=typeof Ie=="function",bn=DS(ne)?rs(ne.length):[];return Z0(ne,function(Ci){bn[++Mt]=Rr?um(Ie,Ci,ze):_B(Ci,Ie,ze)}),bn}),Y9=Bv(function(ne,Ie,ze){Oo(ne,ze,Ie)});function wv(ne,Ie){var ze=zp(ne)?eI:Oc;return ze(ne,vo(Ie,3))}function fQ(ne,Ie,ze,Mt){return ne==null?[]:(zp(Ie)||(Ie=Ie==null?[]:[Ie]),ze=Mt?e:ze,zp(ze)||(ze=ze==null?[]:[ze]),AA(ne,Ie,ze))}var C$=Bv(function(ne,Ie,ze){ne[ze?0:1].push(Ie)},function(){return[[],[]]});function gg(ne,Ie,ze){var Mt=zp(ne)?hE:Xc,Rr=arguments.length<3;return Mt(ne,vo(Ie,4),ze,Rr,Z0)}function w_(ne,Ie,ze){var Mt=zp(ne)?uy:Xc,Rr=arguments.length<3;return Mt(ne,vo(Ie,4),ze,Rr,Sh)}function NI(ne,Ie){var ze=zp(ne)?Rm:qu;return ze(ne,Ya(vo(Ie,3)))}function mZ(ne){var Ie=zp(ne)?ES:Th;return Ie(ne)}function $l(ne,Ie,ze){(ze?my(ne,Ie,ze):Ie===e)?Ie=1:Ie=pf(Ie);var Mt=zp(ne)?dm:C2;return Mt(ne,Ie)}function N3(ne){var Ie=zp(ne)?$h:xm;return Ie(ne)}function dd(ne){if(ne==null)return 0;if(DS(ne))return v$(ne)?ap(ne):ne.length;var Ie=Uu(ne);return Ie==we||Ie==vi?ne.size:xo(ne).length}function IQ(ne,Ie,ze){var Mt=zp(ne)?ie:TS;return ze&&my(ne,Ie,ze)&&(Ie=e),Mt(ne,vo(Ie,3))}var HCe=Bg(function(ne,Ie){if(ne==null)return[];var ze=Ie.length;return ze>1&&my(ne,Ie[0],Ie[1])?Ie=[]:ze>2&&my(Ie[0],Ie[1],Ie[2])&&(Ie=[Ie[0]]),AA(ne,AC(Ie,1),[])}),PR=Cv||function(){return eA.Date.now()};function m$(ne,Ie){if(typeof Ie!="function")throw new Dm(a);return ne=pf(ne),function(){if(--ne<1)return Ie.apply(this,arguments)}}function rC(ne,Ie,ze){return Ie=ze?e:Ie,Ie=ne&&Ie==null?ne.length:Ie,ag(ne,fe,e,e,e,e,Ie)}function Sa(ne,Ie){var ze;if(typeof Ie!="function")throw new Dm(a);return ne=pf(ne),function(){return--ne>0&&(ze=Ie.apply(this,arguments)),ne<=1&&(Ie=e),ze}}var jw=Bg(function(ne,Ie,ze){var Mt=T;if(ze.length){var Rr=yh(ze,Ss(jw));Mt|=ae}return ag(ne,Mt,Ie,ze,Rr)}),t_=Bg(function(ne,Ie,ze){var Mt=T|O;if(ze.length){var Rr=yh(ze,Ss(t_));Mt|=ae}return ag(Ie,Mt,ne,ze,Rr)});function A8(ne,Ie,ze){Ie=ze?e:Ie;var Mt=ag(ne,U,e,e,e,e,e,Ie);return Mt.placeholder=A8.placeholder,Mt}function hZ(ne,Ie,ze){Ie=ze?e:Ie;var Mt=ag(ne,le,e,e,e,e,e,Ie);return Mt.placeholder=hZ.placeholder,Mt}function Gae(ne,Ie,ze){var Mt,Rr,bn,Ci,Qi,bs,ia=0,Ia=!1,Ac=!1,fu=!0;if(typeof ne!="function")throw new Dm(a);Ie=Dh(Ie)||0,O0(ze)&&(Ia=!!ze.leading,Ac="maxWait"in ze,bn=Ac?OI(Dh(ze.maxWait)||0,Ie):bn,fu="trailing"in ze?!!ze.trailing:fu);function Mg(QI){var ZS=Mt,gN=Rr;return Mt=Rr=e,ia=QI,Ci=ne.apply(gN,ZS),Ci}function pd(QI){return ia=QI,Qi=v3(oI,Ie),Ia?Mg(QI):Ci}function Qp(QI){var ZS=QI-bs,gN=QI-ia,rme=Ie-ZS;return Ac?uA(rme,bn-gN):rme}function Pd(QI){var ZS=QI-bs,gN=QI-ia;return bs===e||ZS>=Ie||ZS<0||Ac&&gN>=bn}function oI(){var QI=PR();if(Pd(QI))return Nf(QI);Qi=v3(oI,Qp(QI))}function Nf(QI){return Qi=e,fu&&Mt?Mg(QI):(Mt=Rr=e,Ci)}function pC(){Qi!==e&&vg(Qi),ia=0,Mt=bs=Rr=Qi=e}function Vb(){return Qi===e?Ci:Nf(PR())}function r_(){var QI=PR(),ZS=Pd(QI);if(Mt=arguments,Rr=this,bs=QI,ZS){if(Qi===e)return pd(bs);if(Ac)return vg(Qi),Qi=v3(oI,Ie),Mg(bs)}return Qi===e&&(Qi=v3(oI,Ie)),Ci}return r_.cancel=pC,r_.flush=Vb,r_}var Np=Bg(function(ne,Ie){return b1(ne,1,Ie)}),Bx=Bg(function(ne,Ie,ze){return b1(ne,Dh(Ie)||0,ze)});function d8(ne){return ag(ne,he)}function EB(ne,Ie){if(typeof ne!="function"||Ie!=null&&typeof Ie!="function")throw new Dm(a);var ze=function(){var Mt=arguments,Rr=Ie?Ie.apply(this,Mt):Mt[0],bn=ze.cache;if(bn.has(Rr))return bn.get(Rr);var Ci=ne.apply(this,Mt);return ze.cache=bn.set(Rr,Ci)||bn,Ci};return ze.cache=new(EB.Cache||qh),ze}EB.Cache=qh;function Ya(ne){if(typeof ne!="function")throw new Dm(a);return function(){var Ie=arguments;switch(Ie.length){case 0:return!ne.call(this);case 1:return!ne.call(this,Ie[0]);case 2:return!ne.call(this,Ie[0],Ie[1]);case 3:return!ne.call(this,Ie[0],Ie[1],Ie[2])}return!ne.apply(this,Ie)}}function IX(ne){return Sa(2,ne)}var pu=el(function(ne,Ie){Ie=Ie.length==1&&zp(Ie[0])?eI(Ie[0],Kd(vo())):eI(AC(Ie,1),Kd(vo()));var ze=Ie.length;return Bg(function(Mt){for(var Rr=-1,bn=uA(Mt.length,ze);++Rr=Ie}),_Z=z_(function(){return arguments}())?z_:function(ne){return eb(ne)&&uf.call(ne,"callee")&&!fg.call(ne,"callee")},zp=rs.isArray,p8=R0?Kd(R0):e_;function DS(ne){return ne!=null&&P0(ne.length)&&!QR(ne)}function tn(ne){return eb(ne)&&DS(ne)}function hRe(ne){return ne===!0||ne===!1||eb(ne)&&Op(ne)==Or}var DE=Ow||fG,JCe=_h?Kd(_h):aa;function MR(ne){return eb(ne)&&ne.nodeType===1&&!DC(ne)}function b$(ne){if(ne==null)return!0;if(DS(ne)&&(zp(ne)||typeof ne=="string"||typeof ne.splice=="function"||DE(ne)||x3(ne)||_Z(ne)))return!ne.length;var Ie=Uu(ne);if(Ie==we||Ie==vi)return!ne.size;if(Ce(ne))return!xo(ne).length;for(var ze in ne)if(uf.call(ne,ze))return!1;return!0}function Lae(ne,Ie){return xA(ne,Ie)}function f8(ne,Ie,ze){ze=typeof ze=="function"?ze:e;var Mt=ze?ze(ne,Ie):e;return Mt===e?xA(ne,Ie,e,ze):!!Mt}function D3(ne){if(!eb(ne))return!1;var Ie=Op(ne);return Ie==tr||Ie==Br||typeof ne.message=="string"&&typeof ne.name=="string"&&!DC(ne)}function yZ(ne){return typeof ne=="number"&&jp(ne)}function QR(ne){if(!O0(ne))return!1;var Ie=Op(ne);return Ie==gn||Ie==Gn||Ie==$r||Ie==lr}function _X(ne){return typeof ne=="number"&&ne==pf(ne)}function P0(ne){return typeof ne=="number"&&ne>-1&&ne%1==0&&ne<=ft}function O0(ne){var Ie=typeof ne;return ne!=null&&(Ie=="object"||Ie=="function")}function eb(ne){return ne!=null&&typeof ne=="object"}var Vae=ly?Kd(ly):kR;function E$(ne,Ie){return ne===Ie||wE(ne,Ie,js(Ie))}function yX(ne,Ie,ze){return ze=typeof ze=="function"?ze:e,wE(ne,Ie,js(Ie),ze)}function B2(ne){return B$(ne)&&ne!=+ne}function Tv(ne){if(K(ne))throw new Ml(s);return GR(ne)}function _Re(ne){return ne===null}function I8(ne){return ne==null}function B$(ne){return typeof ne=="number"||eb(ne)&&Op(ne)==Zi}function DC(ne){if(!eb(ne)||Op(ne)!=ka)return!1;var Ie=os(ne);if(Ie===null)return!0;var ze=uf.call(Ie,"constructor")&&Ie.constructor;return typeof ze=="function"&&ze instanceof ze&&bE.call(ze)==mS}var bX=uc?Kd(uc):Ad;function EX(ne){return _X(ne)&&ne>=-ft&&ne<=ft}var Ic=b_?Kd(b_):fy;function v$(ne){return typeof ne=="string"||!zp(ne)&&eb(ne)&&Op(ne)==Qu}function zw(ne){return typeof ne=="symbol"||eb(ne)&&Op(ne)==Yu}var x3=Sb?Kd(Sb):Af;function k3(ne){return ne===e}function BX(ne){return eb(ne)&&Uu(ne)==ud}function C8(ne){return eb(ne)&&Op(ne)==TA}var Wae=NS(gh),Jm=NS(function(ne,Ie){return ne<=Ie});function vX(ne){if(!ne)return[];if(DS(ne))return v$(ne)?ug(ne):Lu(ne);if(rI&&ne[rI])return yE(ne[rI]());var Ie=Uu(ne),ze=Ie==we?CB:Ie==vi?U_:HR;return ze(ne)}function xS(ne){if(!ne)return ne===0?ne:0;if(ne=Dh(ne),ne===Xe||ne===-Xe){var Ie=ne<0?-1:1;return Ie*Gt}return ne===ne?ne:0}function pf(ne){var Ie=xS(ne),ze=Ie%1;return Ie===Ie?ze?Ie-ze:Ie:0}function X9(ne){return ne?kb(pf(ne),0,Ur):0}function Dh(ne){if(typeof ne=="number")return ne;if(zw(ne))return er;if(O0(ne)){var Ie=typeof ne.valueOf=="function"?ne.valueOf():ne;ne=O0(Ie)?Ie+"":Ie}if(typeof ne!="string")return ne===0?ne:+ne;ne=tI(ne);var ze=Hu.test(ne);return ze||og.test(ne)?Qm(ne.slice(2),ze?2:8):kl.test(ne)?er:+ne}function Nv(ne){return Rc(ne,wB(ne))}function hy(ne){return ne?kb(pf(ne),-ft,ft):ne===0?ne:0}function XC(ne){return ne==null?"":k(ne)}var qw=Ll(function(ne,Ie){if(Ce(Ie)||DS(Ie)){Rc(Ie,SB(Ie),ne);return}for(var ze in Ie)uf.call(Ie,ze)&&p2(ne,ze,Ie[ze])}),dG=Ll(function(ne,Ie){Rc(Ie,wB(Ie),ne)}),hQ=Ll(function(ne,Ie,ze,Mt){Rc(Ie,wB(Ie),ne,Mt)}),m8=Ll(function(ne,Ie,ze,Mt){Rc(Ie,SB(Ie),ne,Mt)}),UCe=Ft(Uy);function Pae(ne,Ie){var ze=h1(ne);return Ie==null?ze:bv(ze,Ie)}var XA=Bg(function(ne,Ie){ne=jd(ne);var ze=-1,Mt=Ie.length,Rr=Mt>2?Ie[2]:e;for(Rr&&my(Ie[0],Ie[1],Rr)&&(Mt=1);++ze1),bn}),Rc(ne,Jr(ne),ze),Mt&&(ze=TI(ze,m|y|B,aG));for(var Rr=Ie.length;Rr--;)ee(ze,Ie[Rr]);return ze});function $w(ne,Ie){return Z3(ne,Ya(vo(Ie)))}var _8=Ft(function(ne,Ie){return ne==null?{}:Ky(ne,Ie)});function Z3(ne,Ie){if(ne==null)return{};var ze=eI(Jr(ne),function(Mt){return[Mt]});return Ie=vo(Ie),S1(ne,ze,function(Mt,Rr){return Ie(Mt,Rr[0])})}function SX(ne,Ie,ze){Ie=Fa(Ie,ne);var Mt=-1,Rr=Ie.length;for(Rr||(Rr=1,ne=e);++MtIe){var Mt=ne;ne=Ie,Ie=Mt}if(ze||ne%1||Ie%1){var Rr=Vf();return uA(ne+Rr*(Ie-ne+pl("1e-"+((Rr+"").length-1))),Ie)}return Xw(ne,Ie)}var Hae=ZR(function(ne,Ie,ze){return Ie=Ie.toLowerCase(),ne+(ze?uN(Ie):Ie)});function uN(ne){return Sg(XC(ne).toLowerCase())}function Xae(ne){return ne=XC(ne),ne&&ne.replace(Bo,Uh).replace(Ao,"")}function TX(ne,Ie,ze){ne=XC(ne),Ie=k(Ie);var Mt=ne.length;ze=ze===e?Mt:kb(pf(ze),0,Mt);var Rr=ze;return ze-=Ie.length,ze>=0&&ne.slice(ze,Rr)==Ie}function EQ(ne){return ne=XC(ne),ne&&Cl.test(ne)?ne.replace(Cg,Ym):ne}function wf(ne){return ne=XC(ne),ne&&Na.test(ne)?ne.replace(qo,"\\$&"):ne}var xE=ZR(function(ne,Ie,ze){return ne+(ze?"-":"")+Ie.toLowerCase()}),k$=ZR(function(ne,Ie,ze){return ne+(ze?" ":"")+Ie.toLowerCase()}),NX=yB("toLowerCase");function zCe(ne,Ie,ze){ne=XC(ne),Ie=pf(Ie);var Mt=Ie?ap(ne):0;if(!Ie||Mt>=Ie)return ne;var Rr=(Ie-Mt)/2;return aN(C1(Rr),ze)+ne+aN(Qy(Rr),ze)}function qCe(ne,Ie,ze){ne=XC(ne),Ie=pf(Ie);var Mt=Ie?ap(ne):0;return Ie&&Mt>>0,ze?(ne=XC(ne),ne&&(typeof Ie=="string"||Ie!=null&&!bX(Ie))&&(Ie=k(Ie),!Ie&&_E(ne))?Eo(ug(ne),0,ze):ne.split(Ie,ze)):[]}var B8=ZR(function(ne,Ie,ze){return ne+(ze?" ":"")+Sg(Ie)});function Jae(ne,Ie,ze){return ne=XC(ne),ze=ze==null?0:kb(pf(ze),0,ne.length),Ie=k(Ie),ne.slice(ze,ze+Ie.length)==Ie}function Sx(ne,Ie,ze){var Mt=An.templateSettings;ze&&my(ne,Ie,ze)&&(Ie=e),ne=XC(ne),Ie=hQ({},Ie,Mt,Gb);var Rr=hQ({},Ie.imports,Mt.imports,Gb),bn=SB(Rr),Ci=D0(Rr,bn),Qi,bs,ia=0,Ia=Ie.interpolate||$g,Ac="__p += '",fu=bh((Ie.escape||$g).source+"|"+Ia.source+"|"+(Ia===$i?Qa:$g).source+"|"+(Ie.evaluate||$g).source+"|$","g"),Mg="//# sourceURL="+(uf.call(Ie,"sourceURL")?(Ie.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++na+"]")+` -`;ne.replace(fu,function(Pd,oI,Nf,pC,Vb,r_){return Nf||(Nf=pC),Ac+=ne.slice(ia,r_).replace(cA,IS),oI&&(Qi=!0,Ac+=`' + -__e(`+oI+`) + -'`),Vb&&(bs=!0,Ac+=`'; -`+Vb+`; -__p += '`),Nf&&(Ac+=`' + -((__t = (`+Nf+`)) == null ? '' : __t) + -'`),ia=r_+Pd.length,Pd}),Ac+=`'; -`;var pd=uf.call(Ie,"variable")&&Ie.variable;if(!pd)Ac=`with (obj) { -`+Ac+` +`)}function oI(ne){return qp(ne)||yZ(ne)||!!(Af&&ne&&ne[Af])}function t0(ne,Ie){var ze=typeof ne;return Ie=Ie??ft,!!Ie&&(ze=="number"||ze!="symbol"&&on.test(ne))&&ne>-1&&ne%1==0&&ne0){if(++Ie>=ke)return arguments[0]}else Ie=0;return ne.apply(e,arguments)}}function Si(ne,Ie){var ze=-1,Qt=ne.length,Rr=Qt-1;for(Ie=Ie===e?Qt:Ie;++ze1?ne[Ie-1]:e;return ze=typeof ze=="function"?(ne.pop(),ze):e,fG(ne,ze)});function D3(ne){var Ie=An(ne);return Ie.__chain__=!0,Ie}function f8(ne,Ie){return Ie(ne),ne}function IZ(ne,Ie){return Ie(ne)}var XCe=Ft(function(ne){var Ie=ne.length,ze=Ie?ne[0]:0,Qt=this.__wrapped__,Rr=function(bn){return Ky(bn,ne)};return Ie>1||this.__actions__.length||!(Qt instanceof pp)||!t0(ze)?this.thru(Rr):(Qt=Qt.slice(ze,+ze+(Ie?1:0)),Qt.__actions__.push({func:IZ,args:[Rr],thisArg:e}),new qh(Qt,this.__chain__).thru(function(bn){return Ie&&!bn.length&&bn.push(e),bn}))});function CX(){return D3(this)}function C$(){return new qh(this.value(),this.__chain__)}function Q9(){this.__values__===e&&(this.__values__=TX(this.value()));var ne=this.__index__>=this.__values__.length,Ie=ne?e:this.__values__[this.__index__++];return{done:ne,value:Ie}}function IG(){return this}function I5(ne){for(var Ie,ze=this;ze instanceof p2;){var Qt=oo(ze);Qt.__index__=0,Qt.__values__=e,Ie?Rr.__wrapped__=Qt:Ie=Qt;var Rr=Qt;ze=ze.__wrapped__}return Rr.__wrapped__=ne,Ie}function wv(){var ne=this.__wrapped__;if(ne instanceof pp){var Ie=ne;return this.__actions__.length&&(Ie=new pp(this)),Ie=Ie.reverse(),Ie.__actions__.push({func:IZ,args:[pG],thisArg:e}),new qh(Ie,this.__chain__)}return this.thru(pG)}function CZ(){return gt(this.__wrapped__,this.__actions__)}var DS=vv(function(ne,Ie,ze){gf.call(ne,ze)?++ne[ze]:Po(ne,ze,1)});function Oae(ne,Ie,ze){var Qt=qp(ne)?Nb:V0;return ze&&hy(ne,Ie,ze)&&(Ie=e),Qt(ne,Bo(Ie,3))}function I8(ne,Ie){var ze=qp(ne)?Dm:$u;return ze(ne,Bo(Ie,3))}var M9=uZ(uN),H9=uZ(g5);function Qae(ne,Ie){return dC(Tv(ne,Ie),1)}function Nx(ne,Ie){return dC(Tv(ne,Ie),Xe)}function C8(ne,Ie,ze){return ze=ze===e?1:ff(ze),dC(Tv(ne,Ie),ze)}function m$(ne,Ie){var ze=qp(ne)?fg:L0;return ze(ne,Bo(Ie,3))}function Cp(ne,Ie){var ze=qp(ne)?Am:wh;return ze(ne,Bo(Ie,3))}var mZ=vv(function(ne,Ie,ze){gf.call(ne,ze)?ne[ze].push(Ie):Po(ne,ze,[Ie])});function mX(ne,Ie,ze,Qt){ne=xS(ne)?ne:UR(ne),ze=ze&&!Qt?ff(ze):0;var Rr=ne.length;return ze<0&&(ze=QI(Rr+ze,0)),w$(ne)?ze<=Rr&&ne.indexOf(Ie,ze)>-1:!!Rr&&Zr(ne,Ie,ze)>-1}var Dh=vg(function(ne,Ie,ze){var Qt=-1,Rr=typeof Ie=="function",bn=xS(ne)?rs(ne.length):[];return L0(ne,function(Ci){bn[++Qt]=Rr?gm(Ie,Ci,ze):bB(Ci,Ie,ze)}),bn}),Y9=vv(function(ne,Ie,ze){Po(ne,ze,Ie)});function Tv(ne,Ie){var ze=qp(ne)?tI:Qc;return ze(ne,Bo(Ie,3))}function C5(ne,Ie,ze,Qt){return ne==null?[]:(qp(Ie)||(Ie=Ie==null?[]:[Ie]),ze=Qt?e:ze,qp(ze)||(ze=ze==null?[]:[ze]),dA(ne,Ie,ze))}var h$=vv(function(ne,Ie,ze){ne[ze?0:1].push(Ie)},function(){return[[],[]]});function Ag(ne,Ie,ze){var Qt=qp(ne)?yE:Jc,Rr=arguments.length<3;return Qt(ne,Bo(Ie,4),ze,Rr,L0)}function T_(ne,Ie,ze){var Qt=qp(ne)?gy:Jc,Rr=arguments.length<3;return Qt(ne,Bo(Ie,4),ze,Rr,wh)}function RI(ne,Ie){var ze=qp(ne)?Dm:$u;return ze(ne,Ma(Bo(Ie,3)))}function hZ(ne){var Ie=qp(ne)?BS:Nh;return Ie(ne)}function eu(ne,Ie,ze){(ze?hy(ne,Ie,ze):Ie===e)?Ie=1:Ie=ff(Ie);var Qt=qp(ne)?pm:m2;return Qt(ne,Ie)}function x3(ne){var Ie=qp(ne)?e_:km;return Ie(ne)}function pd(ne){if(ne==null)return 0;if(xS(ne))return w$(ne)?cp(ne):ne.length;var Ie=Ku(ne);return Ie==we||Ie==vi?ne.size:Do(ne).length}function m5(ne,Ie,ze){var Qt=qp(ne)?ie:NS;return ze&&hy(ne,Ie,ze)&&(Ie=e),Qt(ne,Bo(Ie,3))}var JCe=vg(function(ne,Ie){if(ne==null)return[];var ze=Ie.length;return ze>1&&hy(ne,Ie[0],Ie[1])?Ie=[]:ze>2&&hy(Ie[0],Ie[1],Ie[2])&&(Ie=[Ie[0]]),dA(ne,dC(Ie,1),[])}),HR=mv||function(){return tA.Date.now()};function _$(ne,Ie){if(typeof Ie!="function")throw new xm(a);return ne=ff(ne),function(){if(--ne<1)return Ie.apply(this,arguments)}}function nC(ne,Ie,ze){return Ie=ze?e:Ie,Ie=ne&&Ie==null?ne.length:Ie,cg(ne,fe,e,e,e,e,Ie)}function va(ne,Ie){var ze;if(typeof Ie!="function")throw new xm(a);return ne=ff(ne),function(){return--ne>0&&(ze=Ie.apply(this,arguments)),ne<=1&&(Ie=e),ze}}var zw=vg(function(ne,Ie,ze){var Qt=T;if(ze.length){var Rr=bh(ze,Ss(zw));Qt|=ae}return cg(ne,Qt,Ie,ze,Rr)}),r_=vg(function(ne,Ie,ze){var Qt=T|O;if(ze.length){var Rr=bh(ze,Ss(r_));Qt|=ae}return cg(Ie,Qt,ne,ze,Rr)});function m8(ne,Ie,ze){Ie=ze?e:Ie;var Qt=cg(ne,U,e,e,e,e,e,Ie);return Qt.placeholder=m8.placeholder,Qt}function _Z(ne,Ie,ze){Ie=ze?e:Ie;var Qt=cg(ne,le,e,e,e,e,e,Ie);return Qt.placeholder=_Z.placeholder,Qt}function Mae(ne,Ie,ze){var Qt,Rr,bn,Ci,Mi,bs,na=0,fa=!1,dc=!1,Iu=!0;if(typeof ne!="function")throw new xm(a);Ie=xh(Ie)||0,Q0(ze)&&(fa=!!ze.leading,dc="maxWait"in ze,bn=dc?QI(xh(ze.maxWait)||0,Ie):bn,Iu="trailing"in ze?!!ze.trailing:Iu);function Mg(HI){var LS=Qt,AN=Rr;return Qt=Rr=e,na=HI,Ci=ne.apply(AN,LS),Ci}function fd(HI){return na=HI,Mi=T3(aI,Ie),fa?Mg(HI):Ci}function Hp(HI){var LS=HI-bs,AN=HI-na,ime=Ie-LS;return dc?gA(ime,bn-AN):ime}function Od(HI){var LS=HI-bs,AN=HI-na;return bs===e||LS>=Ie||LS<0||dc&&AN>=bn}function aI(){var HI=HR();if(Od(HI))return Rf(HI);Mi=T3(aI,Hp(HI))}function Rf(HI){return Mi=e,Iu&&Qt?Mg(HI):(Qt=Rr=e,Ci)}function fC(){Mi!==e&&Sg(Mi),na=0,Qt=bs=Rr=Mi=e}function Pb(){return Mi===e?Ci:Rf(HR())}function n_(){var HI=HR(),LS=Od(HI);if(Qt=arguments,Rr=this,bs=HI,LS){if(Mi===e)return fd(bs);if(dc)return Sg(Mi),Mi=T3(aI,Ie),Mg(bs)}return Mi===e&&(Mi=T3(aI,Ie)),Ci}return n_.cancel=fC,n_.flush=Pb,n_}var Rp=vg(function(ne,Ie){return E1(ne,1,Ie)}),Rx=vg(function(ne,Ie,ze){return E1(ne,xh(Ie)||0,ze)});function h8(ne){return cg(ne,he)}function vB(ne,Ie){if(typeof ne!="function"||Ie!=null&&typeof Ie!="function")throw new xm(a);var ze=function(){var Qt=arguments,Rr=Ie?Ie.apply(this,Qt):Qt[0],bn=ze.cache;if(bn.has(Rr))return bn.get(Rr);var Ci=ne.apply(this,Qt);return ze.cache=bn.set(Rr,Ci)||bn,Ci};return ze.cache=new(vB.Cache||$h),ze}vB.Cache=$h;function Ma(ne){if(typeof ne!="function")throw new xm(a);return function(){var Ie=arguments;switch(Ie.length){case 0:return!ne.call(this);case 1:return!ne.call(this,Ie[0]);case 2:return!ne.call(this,Ie[0],Ie[1]);case 3:return!ne.call(this,Ie[0],Ie[1],Ie[2])}return!ne.apply(this,Ie)}}function hX(ne){return va(2,ne)}var fu=tl(function(ne,Ie){Ie=Ie.length==1&&qp(Ie[0])?tI(Ie[0],jd(Bo())):tI(dC(Ie,1),jd(Bo()));var ze=Ie.length;return vg(function(Qt){for(var Rr=-1,bn=gA(Qt.length,ze);++Rr=Ie}),yZ=q_(function(){return arguments}())?q_:function(ne){return tb(ne)&&gf.call(ne,"callee")&&!Ig.call(ne,"callee")},qp=rs.isArray,_8=D0?jd(D0):t_;function xS(ne){return ne!=null&&O0(ne.length)&&!XR(ne)}function tn(ne){return tb(ne)&&xS(ne)}function yRe(ne){return ne===!0||ne===!1||tb(ne)&&Qp(ne)==Or}var kE=Qw||_G,KCe=yh?jd(yh):oa;function YR(ne){return tb(ne)&&ne.nodeType===1&&!xC(ne)}function B$(ne){if(ne==null)return!0;if(xS(ne)&&(qp(ne)||typeof ne=="string"||typeof ne.splice=="function"||kE(ne)||F3(ne)||yZ(ne)))return!ne.length;var Ie=Ku(ne);if(Ie==we||Ie==vi)return!ne.size;if(Ce(ne))return!Do(ne).length;for(var ze in ne)if(gf.call(ne,ze))return!1;return!0}function Xae(ne,Ie){return kA(ne,Ie)}function y8(ne,Ie,ze){ze=typeof ze=="function"?ze:e;var Qt=ze?ze(ne,Ie):e;return Qt===e?kA(ne,Ie,e,ze):!!Qt}function G3(ne){if(!tb(ne))return!1;var Ie=Qp(ne);return Ie==tr||Ie==Br||typeof ne.message=="string"&&typeof ne.name=="string"&&!xC(ne)}function bZ(ne){return typeof ne=="number"&&zp(ne)}function XR(ne){if(!Q0(ne))return!1;var Ie=Qp(ne);return Ie==gn||Ie==Gn||Ie==$r||Ie==lr}function EX(ne){return typeof ne=="number"&&ne==ff(ne)}function O0(ne){return typeof ne=="number"&&ne>-1&&ne%1==0&&ne<=ft}function Q0(ne){var Ie=typeof ne;return ne!=null&&(Ie=="object"||Ie=="function")}function tb(ne){return ne!=null&&typeof ne=="object"}var Jae=uy?jd(uy):ZR;function v$(ne,Ie){return ne===Ie||NE(ne,Ie,Ks(Ie))}function BX(ne,Ie,ze){return ze=typeof ze=="function"?ze:e,NE(ne,Ie,Ks(Ie),ze)}function v2(ne){return S$(ne)&&ne!=+ne}function Nv(ne){if(K(ne))throw new Ml(s);return LR(ne)}function bRe(ne){return ne===null}function b8(ne){return ne==null}function S$(ne){return typeof ne=="number"||tb(ne)&&Qp(ne)==Zi}function xC(ne){if(!tb(ne)||Qp(ne)!=xa)return!1;var Ie=os(ne);if(Ie===null)return!0;var ze=gf.call(Ie,"constructor")&&Ie.constructor;return typeof ze=="function"&&ze instanceof ze&&BE.call(ze)==hS}var vX=uc?jd(uc):dd;function SX(ne){return EX(ne)&&ne>=-ft&&ne<=ft}var Cc=E_?jd(E_):Iy;function w$(ne){return typeof ne=="string"||!qp(ne)&&tb(ne)&&Qp(ne)==Hu}function qw(ne){return typeof ne=="symbol"||tb(ne)&&Qp(ne)==Yu}var F3=Tb?jd(Tb):df;function Z3(ne){return ne===e}function wX(ne){return tb(ne)&&Ku(ne)==gd}function E8(ne){return tb(ne)&&Qp(ne)==NA}var Uae=RS(Ah),Um=RS(function(ne,Ie){return ne<=Ie});function TX(ne){if(!ne)return[];if(xS(ne))return w$(ne)?gg(ne):Vu(ne);if(nI&&ne[nI])return EE(ne[nI]());var Ie=Ku(ne),ze=Ie==we?hB:Ie==vi?K_:UR;return ze(ne)}function kS(ne){if(!ne)return ne===0?ne:0;if(ne=xh(ne),ne===Xe||ne===-Xe){var Ie=ne<0?-1:1;return Ie*Gt}return ne===ne?ne:0}function ff(ne){var Ie=kS(ne),ze=Ie%1;return Ie===Ie?ze?Ie-ze:Ie:0}function J9(ne){return ne?Fb(ff(ne),0,Ur):0}function xh(ne){if(typeof ne=="number")return ne;if(qw(ne))return er;if(Q0(ne)){var Ie=typeof ne.valueOf=="function"?ne.valueOf():ne;ne=Q0(Ie)?Ie+"":Ie}if(typeof ne!="string")return ne===0?ne:+ne;ne=rI(ne);var ze=Xu.test(ne);return ze||ag.test(ne)?Hm(ne.slice(2),ze?2:8):Gl.test(ne)?er:+ne}function Rv(ne){return Dc(ne,NB(ne))}function _y(ne){return ne?Fb(ff(ne),-ft,ft):ne===0?ne:0}function JC(ne){return ne==null?"":G(ne)}var $w=Vl(function(ne,Ie){if(Ce(Ie)||xS(Ie)){Dc(Ie,TB(Ie),ne);return}for(var ze in Ie)gf.call(Ie,ze)&&f2(ne,ze,Ie[ze])}),mG=Vl(function(ne,Ie){Dc(Ie,NB(Ie),ne)}),y5=Vl(function(ne,Ie,ze,Qt){Dc(Ie,NB(Ie),ne,Qt)}),B8=Vl(function(ne,Ie,ze,Qt){Dc(Ie,TB(Ie),ne,Qt)}),jCe=Ft(Ky);function Kae(ne,Ie){var ze=_1(ne);return Ie==null?ze:Ev(ze,Ie)}var JA=vg(function(ne,Ie){ne=zd(ne);var ze=-1,Qt=Ie.length,Rr=Qt>2?Ie[2]:e;for(Rr&&hy(Ie[0],Ie[1],Rr)&&(Qt=1);++ze1),bn}),Dc(ne,Jr(ne),ze),Qt&&(ze=NI(ze,m|y|B,AG));for(var Rr=Ie.length;Rr--;)ee(ze,Ie[Rr]);return ze});function eT(ne,Ie){return W3(ne,Ma(Bo(Ie)))}var S8=Ft(function(ne,Ie){return ne==null?{}:jy(ne,Ie)});function W3(ne,Ie){if(ne==null)return{};var ze=tI(Jr(ne),function(Qt){return[Qt]});return Ie=Bo(Ie),w1(ne,ze,function(Qt,Rr){return Ie(Qt,Rr[0])})}function NX(ne,Ie,ze){Ie=Ga(Ie,ne);var Qt=-1,Rr=Ie.length;for(Rr||(Rr=1,ne=e);++QtIe){var Qt=ne;ne=Ie,Ie=Qt}if(ze||ne%1||Ie%1){var Rr=Wf();return gA(ne+Rr*(Ie-ne+fl("1e-"+((Rr+"").length-1))),Ie)}return Jw(ne,Ie)}var ece=WR(function(ne,Ie,ze){return Ie=Ie.toLowerCase(),ne+(ze?gN(Ie):Ie)});function gN(ne){return wg(JC(ne).toLowerCase())}function tce(ne){return ne=JC(ne),ne&&ne.replace(Eo,Kh).replace(go,"")}function DX(ne,Ie,ze){ne=JC(ne),Ie=G(Ie);var Qt=ne.length;ze=ze===e?Qt:Fb(ff(ze),0,Qt);var Rr=ze;return ze-=Ie.length,ze>=0&&ne.slice(ze,Rr)==Ie}function v5(ne){return ne=JC(ne),ne&&ml.test(ne)?ne.replace(mg,Ym):ne}function Tf(ne){return ne=JC(ne),ne&&Ta.test(ne)?ne.replace(zo,"\\$&"):ne}var GE=WR(function(ne,Ie,ze){return ne+(ze?"-":"")+Ie.toLowerCase()}),F$=WR(function(ne,Ie,ze){return ne+(ze?" ":"")+Ie.toLowerCase()}),xX=EB("toLowerCase");function $Ce(ne,Ie,ze){ne=JC(ne),Ie=ff(Ie);var Qt=Ie?cp(ne):0;if(!Ie||Qt>=Ie)return ne;var Rr=(Ie-Qt)/2;return cN(m1(Rr),ze)+ne+cN(Hy(Rr),ze)}function eme(ne,Ie,ze){ne=JC(ne),Ie=ff(Ie);var Qt=Ie?cp(ne):0;return Ie&&Qt>>0,ze?(ne=JC(ne),ne&&(typeof Ie=="string"||Ie!=null&&!vX(Ie))&&(Ie=G(Ie),!Ie&&bE(ne))?bo(gg(ne),0,ze):ne.split(Ie,ze)):[]}var R8=WR(function(ne,Ie,ze){return ne+(ze?" ":"")+wg(Ie)});function rce(ne,Ie,ze){return ne=JC(ne),ze=ze==null?0:Fb(ff(ze),0,ne.length),Ie=G(Ie),ne.slice(ze,ze+Ie.length)==Ie}function xx(ne,Ie,ze){var Qt=An.templateSettings;ze&&hy(ne,Ie,ze)&&(Ie=e),ne=JC(ne),Ie=y5({},Ie,Qt,Zb);var Rr=y5({},Ie.imports,Qt.imports,Zb),bn=TB(Rr),Ci=x0(Rr,bn),Mi,bs,na=0,fa=Ie.interpolate||eA,dc="__p += '",Iu=Eh((Ie.escape||eA).source+"|"+fa.source+"|"+(fa===$i?Qa:eA).source+"|"+(Ie.evaluate||eA).source+"|$","g"),Mg="//# sourceURL="+(gf.call(Ie,"sourceURL")?(Ie.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++ra+"]")+` +`;ne.replace(Iu,function(Od,aI,Rf,fC,Pb,n_){return Rf||(Rf=fC),dc+=ne.slice(na,n_).replace(lA,CS),aI&&(Mi=!0,dc+=`' + +__e(`+aI+`) + +'`),Pb&&(bs=!0,dc+=`'; +`+Pb+`; +__p += '`),Rf&&(dc+=`' + +((__t = (`+Rf+`)) == null ? '' : __t) + +'`),na=n_+Od.length,Od}),dc+=`'; +`;var fd=gf.call(Ie,"variable")&&Ie.variable;if(!fd)dc=`with (obj) { +`+dc+` } -`;else if(Td.test(pd))throw new Ml(o);Ac=(bs?Ac.replace(ai,""):Ac).replace(pa,"$1").replace(sg,"$1;"),Ac="function("+(pd||"obj")+`) { -`+(pd?"":`obj || (obj = {}); -`)+"var __t, __p = ''"+(Qi?", __e = _.escape":"")+(bs?`, __j = Array.prototype.join; +`;else if(Nd.test(fd))throw new Ml(o);dc=(bs?dc.replace(ai,""):dc).replace(da,"$1").replace(og,"$1;"),dc="function("+(fd||"obj")+`) { +`+(fd?"":`obj || (obj = {}); +`)+"var __t, __p = ''"+(Mi?", __e = _.escape":"")+(bs?`, __j = Array.prototype.join; function print() { __p += __j.call(arguments, '') } `:`; -`)+Ac+`return __p -}`;var Qp=v8(function(){return DA(bn,Mg+"return "+Ac).apply(e,Ci)});if(Qp.source=Ac,D3(Qp))throw Qp;return Qp}function F$(ne){return XC(ne).toLowerCase()}function pG(ne){return XC(ne).toUpperCase()}function bRe(ne,Ie,ze){if(ne=XC(ne),ne&&(ze||Ie===e))return tI(ne);if(!ne||!(Ie=k(Ie)))return ne;var Mt=ug(ne),Rr=ug(Ie),bn=md(Mt,Rr),Ci=fI(Mt,Rr)+1;return Eo(Mt,bn,Ci).join("")}function BQ(ne,Ie,ze){if(ne=XC(ne),ne&&(ze||Ie===e))return ne.slice(0,Hm(ne)+1);if(!ne||!(Ie=k(Ie)))return ne;var Mt=ug(ne),Rr=fI(Mt,ug(Ie))+1;return Eo(Mt,0,Rr).join("")}function vQ(ne,Ie,ze){if(ne=XC(ne),ne&&(ze||Ie===e))return ne.replace(wu,"");if(!ne||!(Ie=k(Ie)))return ne;var Mt=ug(ne),Rr=md(Mt,ug(Ie));return Eo(Mt,Rr).join("")}function Tf(ne,Ie){var ze=be,Mt=Te;if(O0(Ie)){var Rr="separator"in Ie?Ie.separator:Rr;ze="length"in Ie?pf(Ie.length):ze,Mt="omission"in Ie?k(Ie.omission):Mt}ne=XC(ne);var bn=ne.length;if(_E(ne)){var Ci=ug(ne);bn=Ci.length}if(ze>=bn)return ne;var Qi=ze-ap(Mt);if(Qi<1)return Mt;var bs=Ci?Eo(Ci,0,Qi).join(""):ne.slice(0,Qi);if(Rr===e)return bs+Mt;if(Ci&&(Qi+=bs.length-Qi),bX(Rr)){if(ne.slice(Qi).search(Rr)){var ia,Ia=bs;for(Rr.global||(Rr=bh(Rr.source,XC(Rt.exec(Rr))+"g")),Rr.lastIndex=0;ia=Rr.exec(Ia);)var Ac=ia.index;bs=bs.slice(0,Ac===e?Qi:Ac)}}else if(ne.indexOf(k(Rr),Qi)!=Qi){var fu=bs.lastIndexOf(Rr);fu>-1&&(bs=bs.slice(0,fu))}return bs+Mt}function tme(ne){return ne=XC(ne),ne&&Zu.test(ne)?ne.replace(Fu,Tb):ne}var L3=ZR(function(ne,Ie,ze){return ne+(ze?" ":"")+Ie.toUpperCase()}),Sg=yB("toUpperCase");function kE(ne,Ie,ze){return ne=XC(ne),Ie=ze?e:Ie,Ie===e?x0(ne)?My(ne):ye(ne):ne.match(Ie)||[]}var v8=Bg(function(ne,Ie){try{return um(ne,e,Ie)}catch(ze){return D3(ze)?ze:new Ml(ze)}}),Uae=Ft(function(ne,Ie){return pg(Ie,function(ze){ze=jc(ze),Oo(ne,ze,jw(ne[ze],ne))}),ne});function Z$(ne){var Ie=ne==null?0:ne.length,ze=vo();return ne=Ie?eI(ne,function(Mt){if(typeof Mt[1]!="function")throw new Dm(a);return[ze(Mt[0]),Mt[1]]}):[],Bg(function(Mt){for(var Rr=-1;++Rrft)return[];var ze=Ur,Mt=uA(ne,Ur);Ie=vo(Ie),ne-=Ur;for(var Rr=op(Mt,Ie);++ze0||Ie<0)?new dp(ze):(ne<0?ze=ze.takeRight(-ne):ne&&(ze=ze.drop(ne)),Ie!==e&&(Ie=pf(Ie),ze=Ie<0?ze.dropRight(-Ie):ze.take(Ie-ne)),ze)},dp.prototype.takeRightWhile=function(ne){return this.reverse().takeWhile(ne).reverse()},dp.prototype.toArray=function(){return this.take(Ur)},Sp(dp.prototype,function(ne,Ie){var ze=/^(?:filter|find|map|reject)|While$/.test(Ie),Mt=/^(?:head|last)$/.test(Ie),Rr=An[Mt?"take"+(Ie=="last"?"Right":""):Ie],bn=Mt||/^find/.test(Ie);Rr&&(An.prototype[Ie]=function(){var Ci=this.__wrapped__,Qi=Mt?[1]:arguments,bs=Ci instanceof dp,ia=Qi[0],Ia=bs||zp(Ci),Ac=function(oI){var Nf=Rr.apply(An,Zf([oI],Qi));return Mt&&fu?Nf[0]:Nf};Ia&&ze&&typeof ia=="function"&&ia.length!=1&&(bs=Ia=!1);var fu=this.__chain__,Mg=!!this.__actions__.length,pd=bn&&!fu,Qp=bs&&!Mg;if(!bn&&Ia){Ci=Qp?Ci:new dp(this);var Pd=ne.apply(Ci,Qi);return Pd.__actions__.push({func:fZ,args:[Ac],thisArg:e}),new zh(Pd,fu)}return pd&&Qp?ne.apply(this,Qi):(Pd=this.thru(Ac),pd?Mt?Pd.value()[0]:Pd.value():Pd)})}),pg(["pop","push","shift","sort","splice","unshift"],function(ne){var Ie=gy[ne],ze=/^(?:push|sort|unshift)$/.test(ne)?"tap":"thru",Mt=/^(?:pop|shift)$/.test(ne);An.prototype[ne]=function(){var Rr=arguments;if(Mt&&!this.__chain__){var bn=this.value();return Ie.apply(zp(bn)?bn:[],Rr)}return this[ze](function(Ci){return Ie.apply(zp(Ci)?Ci:[],Rr)})}}),Sp(dp.prototype,function(ne,Ie){var ze=An[Ie];if(ze){var Mt=ze.name+"";uf.call(mv,Mt)||(mv[Mt]=[]),mv[Mt].push({name:Ie,func:ze})}}),mv[Ju(e,O).name]=[{name:"wrapper",func:e}],dp.prototype.clone=Yw,dp.prototype.reverse=yS,dp.prototype.value=$T,An.prototype.at=YCe,An.prototype.chain=pX,An.prototype.commit=f$,An.prototype.next=O9,An.prototype.plant=pQ,An.prototype.reverse=Sv,An.prototype.toJSON=An.prototype.valueOf=An.prototype.value=IZ,An.prototype.first=An.prototype.head,rI&&(An.prototype[rI]=gG),An},wI=QC();typeof define=="function"&&typeof define.amd=="object"&&define.amd?(eA._=wI,define(function(){return wI})):lh?((lh.exports=wI)._=wI,Nm._=wI):eA._=wI}).call(jEe)});var DWe=z((HXc,b7t)=>{"use strict";var rh=b7t.exports;b7t.exports.default=rh;var ny="\x1B[",RWe="\x1B]",zEe="\x07",sct=";",WEn=process.env.TERM_PROGRAM==="Apple_Terminal";rh.cursorTo=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");return typeof t!="number"?ny+(e+1)+"G":ny+(t+1)+";"+(e+1)+"H"};rh.cursorMove=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");let r="";return e<0?r+=ny+-e+"D":e>0&&(r+=ny+e+"C"),t<0?r+=ny+-t+"A":t>0&&(r+=ny+t+"B"),r};rh.cursorUp=(e=1)=>ny+e+"A";rh.cursorDown=(e=1)=>ny+e+"B";rh.cursorForward=(e=1)=>ny+e+"C";rh.cursorBackward=(e=1)=>ny+e+"D";rh.cursorLeft=ny+"G";rh.cursorSavePosition=WEn?"\x1B7":ny+"s";rh.cursorRestorePosition=WEn?"\x1B8":ny+"u";rh.cursorGetPosition=ny+"6n";rh.cursorNextLine=ny+"E";rh.cursorPrevLine=ny+"F";rh.cursorHide=ny+"?25l";rh.cursorShow=ny+"?25h";rh.eraseLines=e=>{let t="";for(let r=0;r[RWe,"8",sct,sct,t,zEe,e,RWe,"8",sct,sct,zEe].join("");rh.image=(e,t={})=>{let r=`${RWe}1337;File=inline=1`;return t.width&&(r+=`;width=${t.width}`),t.height&&(r+=`;height=${t.height}`),t.preserveAspectRatio===!1&&(r+=";preserveAspectRatio=0"),r+":"+e.toString("base64")+zEe};rh.iTerm={setCwd:(e=process.cwd())=>`${RWe}50;CurrentDir=${e}${zEe}`,annotation:(e,t={})=>{let r=`${RWe}1337;`,s=typeof t.x<"u",a=typeof t.y<"u";if((s||a)&&!(s&&a&&typeof t.length<"u"))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return e=e.replace(/\|/g,""),r+=t.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",t.length>0?r+=(s?[e,t.length,t.x,t.y]:[t.length,e]).join("|"):r+=e,r+zEe}}});var OEn=z((XXc,E7t)=>{"use strict";var PEn=(e,t)=>{for(let r of Reflect.ownKeys(t))Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));return e};E7t.exports=PEn;E7t.exports.default=PEn});var QEn=z((JXc,act)=>{"use strict";var Vro=OEn(),oct=new WeakMap,MEn=(e,t={})=>{if(typeof e!="function")throw new TypeError("Expected a function");let r,s=0,a=e.displayName||e.name||"",o=function(...g){if(oct.set(o,++s),s===1)r=e.apply(this,g),e=null;else if(t.throw===!0)throw new Error(`Function \`${a}\` can only be called once`);return r};return Vro(o,e),oct.set(o,s),o};act.exports=MEn;act.exports.default=MEn;act.exports.callCount=e=>{if(!oct.has(e))throw new Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return oct.get(e)}});var YEn=z((UXc,cct)=>{cct.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"];process.platform!=="win32"&&cct.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&cct.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")});var Act=z((KXc,e1e)=>{var U1=global.process,zAe=function(e){return e&&typeof e=="object"&&typeof e.removeListener=="function"&&typeof e.emit=="function"&&typeof e.reallyExit=="function"&&typeof e.listeners=="function"&&typeof e.kill=="function"&&typeof e.pid=="number"&&typeof e.on=="function"};zAe(U1)?(HEn=Dt("assert"),qEe=YEn(),XEn=/^win/i.test(U1.platform),xWe=Dt("events"),typeof xWe!="function"&&(xWe=xWe.EventEmitter),U1.__signal_exit_emitter__?uR=U1.__signal_exit_emitter__:(uR=U1.__signal_exit_emitter__=new xWe,uR.count=0,uR.emitted={}),uR.infinite||(uR.setMaxListeners(1/0),uR.infinite=!0),e1e.exports=function(e,t){if(!zAe(global.process))return function(){};HEn.equal(typeof e,"function","a callback must be provided for exit handler"),$Ee===!1&&B7t();var r="exit";t&&t.alwaysLast&&(r="afterexit");var s=function(){uR.removeListener(r,e),uR.listeners("exit").length===0&&uR.listeners("afterexit").length===0&&lct()};return uR.on(r,e),s},lct=function(){!$Ee||!zAe(global.process)||($Ee=!1,qEe.forEach(function(t){try{U1.removeListener(t,uct[t])}catch{}}),U1.emit=gct,U1.reallyExit=v7t,uR.count-=1)},e1e.exports.unload=lct,qAe=function(t,r,s){uR.emitted[t]||(uR.emitted[t]=!0,uR.emit(t,r,s))},uct={},qEe.forEach(function(e){uct[e]=function(){if(zAe(global.process)){var r=U1.listeners(e);r.length===uR.count&&(lct(),qAe("exit",null,e),qAe("afterexit",null,e),XEn&&e==="SIGHUP"&&(e="SIGINT"),U1.kill(U1.pid,e))}}}),e1e.exports.signals=function(){return qEe},$Ee=!1,B7t=function(){$Ee||!zAe(global.process)||($Ee=!0,uR.count+=1,qEe=qEe.filter(function(t){try{return U1.on(t,uct[t]),!0}catch{return!1}}),U1.emit=UEn,U1.reallyExit=JEn)},e1e.exports.load=B7t,v7t=U1.reallyExit,JEn=function(t){zAe(global.process)&&(U1.exitCode=t||0,qAe("exit",U1.exitCode,null),qAe("afterexit",U1.exitCode,null),v7t.call(U1,U1.exitCode))},gct=U1.emit,UEn=function(t,r){if(t==="exit"&&zAe(global.process)){r!==void 0&&(U1.exitCode=r);var s=gct.apply(this,arguments);return qAe("exit",U1.exitCode,null),qAe("afterexit",U1.exitCode,null),s}else return gct.apply(this,arguments)}):e1e.exports=function(){return function(){}};var HEn,qEe,XEn,xWe,uR,lct,qAe,uct,$Ee,B7t,v7t,JEn,gct,UEn});var jEn=z((jXc,KEn)=>{"use strict";var Wro=QEn(),Pro=Act();KEn.exports=Wro(()=>{Pro(()=>{process.stderr.write("\x1B[?25h")},{alwaysLast:!0})})});var r1e=z(t1e=>{"use strict";var Oro=jEn(),dct=!1;t1e.show=(e=process.stderr)=>{e.isTTY&&(dct=!1,e.write("\x1B[?25h"))};t1e.hide=(e=process.stderr)=>{e.isTTY&&(Oro(),dct=!0,e.write("\x1B[?25l"))};t1e.toggle=(e,t)=>{e!==void 0&&(dct=e),dct?t1e.show(t):t1e.hide(t)}});var e1n=z(kWe=>{"use strict";var $En=kWe&&kWe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(kWe,"__esModule",{value:!0});var zEn=$En(DWe()),qEn=$En(r1e()),Mro=(e,{showCursor:t=!1}={})=>{let r=0,s="",a=!1,o=g=>{!t&&!a&&(qEn.default.hide(),a=!0);let p=g+` -`;p!==s&&(s=p,e.write(zEn.default.eraseLines(r)+p),r=p.split(` -`).length)};return o.clear=()=>{e.write(zEn.default.eraseLines(r)),s="",r=0},o.done=()=>{s="",r=0,t||(qEn.default.show(),a=!1)},o};kWe.default={create:Mro}});var t1n=z(($Xc,Qro)=>{Qro.exports=[{name:"AppVeyor",constant:"APPVEYOR",env:"APPVEYOR",pr:"APPVEYOR_PULL_REQUEST_NUMBER"},{name:"Azure Pipelines",constant:"AZURE_PIPELINES",env:"SYSTEM_TEAMFOUNDATIONCOLLECTIONURI",pr:"SYSTEM_PULLREQUEST_PULLREQUESTID"},{name:"Bamboo",constant:"BAMBOO",env:"bamboo_planKey"},{name:"Bitbucket Pipelines",constant:"BITBUCKET",env:"BITBUCKET_COMMIT",pr:"BITBUCKET_PR_ID"},{name:"Bitrise",constant:"BITRISE",env:"BITRISE_IO",pr:"BITRISE_PULL_REQUEST"},{name:"Buddy",constant:"BUDDY",env:"BUDDY_WORKSPACE_ID",pr:"BUDDY_EXECUTION_PULL_REQUEST_ID"},{name:"Buildkite",constant:"BUILDKITE",env:"BUILDKITE",pr:{env:"BUILDKITE_PULL_REQUEST",ne:"false"}},{name:"CircleCI",constant:"CIRCLE",env:"CIRCLECI",pr:"CIRCLE_PULL_REQUEST"},{name:"Cirrus CI",constant:"CIRRUS",env:"CIRRUS_CI",pr:"CIRRUS_PR"},{name:"AWS CodeBuild",constant:"CODEBUILD",env:"CODEBUILD_BUILD_ARN"},{name:"Codeship",constant:"CODESHIP",env:{CI_NAME:"codeship"}},{name:"Drone",constant:"DRONE",env:"DRONE",pr:{DRONE_BUILD_EVENT:"pull_request"}},{name:"dsari",constant:"DSARI",env:"DSARI"},{name:"GitLab CI",constant:"GITLAB",env:"GITLAB_CI"},{name:"GoCD",constant:"GOCD",env:"GO_PIPELINE_LABEL"},{name:"Hudson",constant:"HUDSON",env:"HUDSON_URL"},{name:"Jenkins",constant:"JENKINS",env:["JENKINS_URL","BUILD_ID"],pr:{any:["ghprbPullId","CHANGE_ID"]}},{name:"Magnum CI",constant:"MAGNUM",env:"MAGNUM"},{name:"Netlify CI",constant:"NETLIFY",env:"NETLIFY_BUILD_BASE",pr:{env:"PULL_REQUEST",ne:"false"}},{name:"Sail CI",constant:"SAIL",env:"SAILCI",pr:"SAIL_PULL_REQUEST_NUMBER"},{name:"Semaphore",constant:"SEMAPHORE",env:"SEMAPHORE",pr:"PULL_REQUEST_NUMBER"},{name:"Shippable",constant:"SHIPPABLE",env:"SHIPPABLE",pr:{IS_PULL_REQUEST:"true"}},{name:"Solano CI",constant:"SOLANO",env:"TDDIUM",pr:"TDDIUM_PR_ID"},{name:"Strider CD",constant:"STRIDER",env:"STRIDER"},{name:"TaskCluster",constant:"TASKCLUSTER",env:["TASK_ID","RUN_ID"]},{name:"TeamCity",constant:"TEAMCITY",env:"TEAMCITY_VERSION"},{name:"Travis CI",constant:"TRAVIS",env:"TRAVIS",pr:{env:"TRAVIS_PULL_REQUEST",ne:"false"}}]});var i1n=z(BW=>{"use strict";var n1n=t1n(),XJ=process.env;Object.defineProperty(BW,"_vendors",{value:n1n.map(function(e){return e.constant})});BW.name=null;BW.isPR=null;n1n.forEach(function(e){var t=Array.isArray(e.env)?e.env:[e.env],r=t.every(function(s){return r1n(s)});if(BW[e.constant]=r,r)switch(BW.name=e.name,typeof e.pr){case"string":BW.isPR=!!XJ[e.pr];break;case"object":"env"in e.pr?BW.isPR=e.pr.env in XJ&&XJ[e.pr.env]!==e.pr.ne:"any"in e.pr?BW.isPR=e.pr.any.some(function(s){return!!XJ[s]}):BW.isPR=r1n(e.pr);break;default:BW.isPR=null}});BW.isCI=!!(XJ.CI||XJ.CONTINUOUS_INTEGRATION||XJ.BUILD_NUMBER||XJ.RUN_ID||BW.name);function r1n(e){return typeof e=="string"?!!XJ[e]:Object.keys(e).every(function(t){return XJ[t]===e[t]})}});var S7t=z((t4c,s1n)=>{"use strict";s1n.exports=i1n().isCI});var w7t=z((r4c,o1n)=>{"use strict";var Yro=e=>{let t=new Set;do for(let r of Reflect.ownKeys(e))t.add([e,r]);while((e=Reflect.getPrototypeOf(e))&&e!==Object.prototype);return t};o1n.exports=(e,{include:t,exclude:r}={})=>{let s=a=>{let o=g=>typeof g=="string"?a===g:g.test(a);return t?t.some(o):r?!r.some(o):!0};for(let[a,o]of Yro(e.constructor.prototype)){if(o==="constructor"||!s(o))continue;let g=Reflect.getOwnPropertyDescriptor(a,o);g&&typeof g.value=="function"&&(e[o]=e[o].bind(e))}return e}});var A1n=z(b0=>{"use strict";var i1e,ZWe,Cct,G7t;typeof performance=="object"&&typeof performance.now=="function"?(a1n=performance,b0.unstable_now=function(){return a1n.now()}):(T7t=Date,c1n=T7t.now(),b0.unstable_now=function(){return T7t.now()-c1n});var a1n,T7t,c1n;typeof window>"u"||typeof MessageChannel!="function"?(n1e=null,N7t=null,R7t=function(){if(n1e!==null)try{var e=b0.unstable_now();n1e(!0,e),n1e=null}catch(t){throw setTimeout(R7t,0),t}},i1e=function(e){n1e!==null?setTimeout(i1e,0,e):(n1e=e,setTimeout(R7t,0))},ZWe=function(e,t){N7t=setTimeout(e,t)},Cct=function(){clearTimeout(N7t)},b0.unstable_shouldYield=function(){return!1},G7t=b0.unstable_forceFrameRate=function(){}):(l1n=window.setTimeout,u1n=window.clearTimeout,typeof console<"u"&&(g1n=window.cancelAnimationFrame,typeof window.requestAnimationFrame!="function"&&console.error("This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills"),typeof g1n!="function"&&console.error("This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills")),GWe=!1,FWe=null,pct=-1,D7t=5,x7t=0,b0.unstable_shouldYield=function(){return b0.unstable_now()>=x7t},G7t=function(){},b0.unstable_forceFrameRate=function(e){0>e||125>>1,a=e[s];if(a!==void 0&&0Ict(g,r))f!==void 0&&0>Ict(f,g)?(e[s]=f,e[p]=r,s=p):(e[s]=g,e[o]=r,s=o);else if(f!==void 0&&0>Ict(f,r))e[s]=f,e[p]=r,s=p;else break e}}return t}return null}function Ict(e,t){var r=e.sortIndex-t.sortIndex;return r!==0?r:e.id-t.id}var JJ=[],zne=[],Hro=1,WO=null,mk=3,hct=!1,$Ae=!1,LWe=!1;function Z7t(e){for(var t=NH(zne);t!==null;){if(t.callback===null)mct(zne);else if(t.startTime<=e)mct(zne),t.sortIndex=t.expirationTime,F7t(JJ,t);else break;t=NH(zne)}}function L7t(e){if(LWe=!1,Z7t(e),!$Ae)if(NH(JJ)!==null)$Ae=!0,i1e(V7t);else{var t=NH(zne);t!==null&&ZWe(L7t,t.startTime-e)}}function V7t(e,t){$Ae=!1,LWe&&(LWe=!1,Cct()),hct=!0;var r=mk;try{for(Z7t(t),WO=NH(JJ);WO!==null&&(!(WO.expirationTime>t)||e&&!b0.unstable_shouldYield());){var s=WO.callback;if(typeof s=="function"){WO.callback=null,mk=WO.priorityLevel;var a=s(WO.expirationTime<=t);t=b0.unstable_now(),typeof a=="function"?WO.callback=a:WO===NH(JJ)&&mct(JJ),Z7t(t)}else mct(JJ);WO=NH(JJ)}if(WO!==null)var o=!0;else{var g=NH(zne);g!==null&&ZWe(L7t,g.startTime-t),o=!1}return o}finally{WO=null,mk=r,hct=!1}}var Xro=G7t;b0.unstable_IdlePriority=5;b0.unstable_ImmediatePriority=1;b0.unstable_LowPriority=4;b0.unstable_NormalPriority=3;b0.unstable_Profiling=null;b0.unstable_UserBlockingPriority=2;b0.unstable_cancelCallback=function(e){e.callback=null};b0.unstable_continueExecution=function(){$Ae||hct||($Ae=!0,i1e(V7t))};b0.unstable_getCurrentPriorityLevel=function(){return mk};b0.unstable_getFirstCallbackNode=function(){return NH(JJ)};b0.unstable_next=function(e){switch(mk){case 1:case 2:case 3:var t=3;break;default:t=mk}var r=mk;mk=t;try{return e()}finally{mk=r}};b0.unstable_pauseExecution=function(){};b0.unstable_requestPaint=Xro;b0.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var r=mk;mk=e;try{return t()}finally{mk=r}};b0.unstable_scheduleCallback=function(e,t,r){var s=b0.unstable_now();switch(typeof r=="object"&&r!==null?(r=r.delay,r=typeof r=="number"&&0s?(e.sortIndex=r,F7t(zne,e),NH(JJ)===null&&e===NH(zne)&&(LWe?Cct():LWe=!0,ZWe(L7t,r-s))):(e.sortIndex=a,F7t(JJ,e),$Ae||hct||($Ae=!0,i1e(V7t))),e};b0.unstable_wrapCallback=function(e){var t=mk;return function(){var r=mk;mk=t;try{return e.apply(this,arguments)}finally{mk=r}}}});var VWe=z((i4c,d1n)=>{"use strict";d1n.exports=A1n()});var _ct=z((s4c,f1n)=>{"use strict";var p1n=Object.getOwnPropertySymbols,Jro=Object.prototype.hasOwnProperty,Uro=Object.prototype.propertyIsEnumerable;function Kro(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function jro(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var t={},r=0;r<10;r++)t["_"+String.fromCharCode(r)]=r;var s=Object.getOwnPropertyNames(t).map(function(o){return t[o]});if(s.join("")!=="0123456789")return!1;var a={};return"abcdefghijklmnopqrst".split("").forEach(function(o){a[o]=o}),Object.keys(Object.assign({},a)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}f1n.exports=jro()?Object.assign:function(e,t){for(var r,s=Kro(e),a,o=1;o{WWe.exports=function(t){var r={},s=_ct(),a=Fs(),o=VWe();function g(k){for(var L="https://reactjs.org/docs/error-decoder.html?invariant="+k,ee=1;ee=bn)return ne;var Mi=ze-cp(Qt);if(Mi<1)return Qt;var bs=Ci?bo(Ci,0,Mi).join(""):ne.slice(0,Mi);if(Rr===e)return bs+Qt;if(Ci&&(Mi+=bs.length-Mi),vX(Rr)){if(ne.slice(Mi).search(Rr)){var na,fa=bs;for(Rr.global||(Rr=Eh(Rr.source,JC(Dt.exec(Rr))+"g")),Rr.lastIndex=0;na=Rr.exec(fa);)var dc=na.index;bs=bs.slice(0,dc===e?Mi:dc)}}else if(ne.indexOf(G(Rr),Mi)!=Mi){var Iu=bs.lastIndexOf(Rr);Iu>-1&&(bs=bs.slice(0,Iu))}return bs+Qt}function nme(ne){return ne=JC(ne),ne&&Lu.test(ne)?ne.replace(Zu,Rb):ne}var P3=WR(function(ne,Ie,ze){return ne+(ze?" ":"")+Ie.toUpperCase()}),wg=EB("toUpperCase");function FE(ne,Ie,ze){return ne=JC(ne),Ie=ze?e:Ie,Ie===e?k0(ne)?My(ne):ye(ne):ne.match(Ie)||[]}var D8=vg(function(ne,Ie){try{return gm(ne,e,Ie)}catch(ze){return G3(ze)?ze:new Ml(ze)}}),nce=Ft(function(ne,Ie){return fg(Ie,function(ze){ze=zc(ze),Po(ne,ze,zw(ne[ze],ne))}),ne});function V$(ne){var Ie=ne==null?0:ne.length,ze=Bo();return ne=Ie?tI(ne,function(Qt){if(typeof Qt[1]!="function")throw new xm(a);return[ze(Qt[0]),Qt[1]]}):[],vg(function(Qt){for(var Rr=-1;++Rrft)return[];var ze=Ur,Qt=gA(ne,Ur);Ie=Bo(Ie),ne-=Ur;for(var Rr=ap(Qt,Ie);++ze0||Ie<0)?new pp(ze):(ne<0?ze=ze.takeRight(-ne):ne&&(ze=ze.drop(ne)),Ie!==e&&(Ie=ff(Ie),ze=Ie<0?ze.dropRight(-Ie):ze.take(Ie-ne)),ze)},pp.prototype.takeRightWhile=function(ne){return this.reverse().takeWhile(ne).reverse()},pp.prototype.toArray=function(){return this.take(Ur)},wp(pp.prototype,function(ne,Ie){var ze=/^(?:filter|find|map|reject)|While$/.test(Ie),Qt=/^(?:head|last)$/.test(Ie),Rr=An[Qt?"take"+(Ie=="last"?"Right":""):Ie],bn=Qt||/^find/.test(Ie);Rr&&(An.prototype[Ie]=function(){var Ci=this.__wrapped__,Mi=Qt?[1]:arguments,bs=Ci instanceof pp,na=Mi[0],fa=bs||qp(Ci),dc=function(aI){var Rf=Rr.apply(An,Lf([aI],Mi));return Qt&&Iu?Rf[0]:Rf};fa&&ze&&typeof na=="function"&&na.length!=1&&(bs=fa=!1);var Iu=this.__chain__,Mg=!!this.__actions__.length,fd=bn&&!Iu,Hp=bs&&!Mg;if(!bn&&fa){Ci=Hp?Ci:new pp(this);var Od=ne.apply(Ci,Mi);return Od.__actions__.push({func:IZ,args:[dc],thisArg:e}),new qh(Od,Iu)}return fd&&Hp?ne.apply(this,Mi):(Od=this.thru(dc),fd?Qt?Od.value()[0]:Od.value():Od)})}),fg(["pop","push","shift","sort","splice","unshift"],function(ne){var Ie=Ay[ne],ze=/^(?:push|sort|unshift)$/.test(ne)?"tap":"thru",Qt=/^(?:pop|shift)$/.test(ne);An.prototype[ne]=function(){var Rr=arguments;if(Qt&&!this.__chain__){var bn=this.value();return Ie.apply(qp(bn)?bn:[],Rr)}return this[ze](function(Ci){return Ie.apply(qp(Ci)?Ci:[],Rr)})}}),wp(pp.prototype,function(ne,Ie){var ze=An[Ie];if(ze){var Qt=ze.name+"";gf.call(hv,Qt)||(hv[Qt]=[]),hv[Qt].push({name:Ie,func:ze})}}),hv[Uu(e,O).name]=[{name:"wrapper",func:e}],pp.prototype.clone=Yw,pp.prototype.reverse=bS,pp.prototype.value=eN,An.prototype.at=XCe,An.prototype.chain=CX,An.prototype.commit=C$,An.prototype.next=Q9,An.prototype.plant=I5,An.prototype.reverse=wv,An.prototype.toJSON=An.prototype.valueOf=An.prototype.value=CZ,An.prototype.first=An.prototype.head,nI&&(An.prototype[nI]=IG),An},TI=HC();typeof define=="function"&&typeof define.amd=="object"&&define.amd?(tA._=TI,define(function(){return TI})):uh?((uh.exports=TI)._=TI,Rm._=TI):tA._=TI}).call(qEe)});var kWe=z((a4c,v7t)=>{"use strict";var nh=v7t.exports;v7t.exports.default=nh;var iy="\x1B[",xWe="\x1B]",$Ee="\x07",act=";",YEn=process.env.TERM_PROGRAM==="Apple_Terminal";nh.cursorTo=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");return typeof t!="number"?iy+(e+1)+"G":iy+(t+1)+";"+(e+1)+"H"};nh.cursorMove=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");let r="";return e<0?r+=iy+-e+"D":e>0&&(r+=iy+e+"C"),t<0?r+=iy+-t+"A":t>0&&(r+=iy+t+"B"),r};nh.cursorUp=(e=1)=>iy+e+"A";nh.cursorDown=(e=1)=>iy+e+"B";nh.cursorForward=(e=1)=>iy+e+"C";nh.cursorBackward=(e=1)=>iy+e+"D";nh.cursorLeft=iy+"G";nh.cursorSavePosition=YEn?"\x1B7":iy+"s";nh.cursorRestorePosition=YEn?"\x1B8":iy+"u";nh.cursorGetPosition=iy+"6n";nh.cursorNextLine=iy+"E";nh.cursorPrevLine=iy+"F";nh.cursorHide=iy+"?25l";nh.cursorShow=iy+"?25h";nh.eraseLines=e=>{let t="";for(let r=0;r[xWe,"8",act,act,t,$Ee,e,xWe,"8",act,act,$Ee].join("");nh.image=(e,t={})=>{let r=`${xWe}1337;File=inline=1`;return t.width&&(r+=`;width=${t.width}`),t.height&&(r+=`;height=${t.height}`),t.preserveAspectRatio===!1&&(r+=";preserveAspectRatio=0"),r+":"+e.toString("base64")+$Ee};nh.iTerm={setCwd:(e=process.cwd())=>`${xWe}50;CurrentDir=${e}${$Ee}`,annotation:(e,t={})=>{let r=`${xWe}1337;`,s=typeof t.x<"u",a=typeof t.y<"u";if((s||a)&&!(s&&a&&typeof t.length<"u"))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return e=e.replace(/\|/g,""),r+=t.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",t.length>0?r+=(s?[e,t.length,t.x,t.y]:[t.length,e]).join("|"):r+=e,r+$Ee}}});var JEn=z((c4c,S7t)=>{"use strict";var XEn=(e,t)=>{for(let r of Reflect.ownKeys(t))Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));return e};S7t.exports=XEn;S7t.exports.default=XEn});var KEn=z((l4c,lct)=>{"use strict";var Yro=JEn(),cct=new WeakMap,UEn=(e,t={})=>{if(typeof e!="function")throw new TypeError("Expected a function");let r,s=0,a=e.displayName||e.name||"",o=function(...g){if(cct.set(o,++s),s===1)r=e.apply(this,g),e=null;else if(t.throw===!0)throw new Error(`Function \`${a}\` can only be called once`);return r};return Yro(o,e),cct.set(o,s),o};lct.exports=UEn;lct.exports.default=UEn;lct.exports.callCount=e=>{if(!cct.has(e))throw new Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return cct.get(e)}});var jEn=z((u4c,uct)=>{uct.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"];process.platform!=="win32"&&uct.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&uct.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")});var pct=z((g4c,r1e)=>{var K1=global.process,ode=function(e){return e&&typeof e=="object"&&typeof e.removeListener=="function"&&typeof e.emit=="function"&&typeof e.reallyExit=="function"&&typeof e.listeners=="function"&&typeof e.kill=="function"&&typeof e.pid=="number"&&typeof e.on=="function"};ode(K1)?(zEn=xt("assert"),e1e=jEn(),qEn=/^win/i.test(K1.platform),GWe=xt("events"),typeof GWe!="function"&&(GWe=GWe.EventEmitter),K1.__signal_exit_emitter__?gR=K1.__signal_exit_emitter__:(gR=K1.__signal_exit_emitter__=new GWe,gR.count=0,gR.emitted={}),gR.infinite||(gR.setMaxListeners(1/0),gR.infinite=!0),r1e.exports=function(e,t){if(!ode(global.process))return function(){};zEn.equal(typeof e,"function","a callback must be provided for exit handler"),t1e===!1&&w7t();var r="exit";t&&t.alwaysLast&&(r="afterexit");var s=function(){gR.removeListener(r,e),gR.listeners("exit").length===0&&gR.listeners("afterexit").length===0&&gct()};return gR.on(r,e),s},gct=function(){!t1e||!ode(global.process)||(t1e=!1,e1e.forEach(function(t){try{K1.removeListener(t,Act[t])}catch{}}),K1.emit=dct,K1.reallyExit=T7t,gR.count-=1)},r1e.exports.unload=gct,ade=function(t,r,s){gR.emitted[t]||(gR.emitted[t]=!0,gR.emit(t,r,s))},Act={},e1e.forEach(function(e){Act[e]=function(){if(ode(global.process)){var r=K1.listeners(e);r.length===gR.count&&(gct(),ade("exit",null,e),ade("afterexit",null,e),qEn&&e==="SIGHUP"&&(e="SIGINT"),K1.kill(K1.pid,e))}}}),r1e.exports.signals=function(){return e1e},t1e=!1,w7t=function(){t1e||!ode(global.process)||(t1e=!0,gR.count+=1,e1e=e1e.filter(function(t){try{return K1.on(t,Act[t]),!0}catch{return!1}}),K1.emit=e1n,K1.reallyExit=$En)},r1e.exports.load=w7t,T7t=K1.reallyExit,$En=function(t){ode(global.process)&&(K1.exitCode=t||0,ade("exit",K1.exitCode,null),ade("afterexit",K1.exitCode,null),T7t.call(K1,K1.exitCode))},dct=K1.emit,e1n=function(t,r){if(t==="exit"&&ode(global.process)){r!==void 0&&(K1.exitCode=r);var s=dct.apply(this,arguments);return ade("exit",K1.exitCode,null),ade("afterexit",K1.exitCode,null),s}else return dct.apply(this,arguments)}):r1e.exports=function(){return function(){}};var zEn,e1e,qEn,GWe,gR,gct,ade,Act,t1e,w7t,T7t,$En,dct,e1n});var r1n=z((A4c,t1n)=>{"use strict";var Xro=KEn(),Jro=pct();t1n.exports=Xro(()=>{Jro(()=>{process.stderr.write("\x1B[?25h")},{alwaysLast:!0})})});var i1e=z(n1e=>{"use strict";var Uro=r1n(),fct=!1;n1e.show=(e=process.stderr)=>{e.isTTY&&(fct=!1,e.write("\x1B[?25h"))};n1e.hide=(e=process.stderr)=>{e.isTTY&&(Uro(),fct=!0,e.write("\x1B[?25l"))};n1e.toggle=(e,t)=>{e!==void 0&&(fct=e),fct?n1e.show(t):n1e.hide(t)}});var o1n=z(FWe=>{"use strict";var s1n=FWe&&FWe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(FWe,"__esModule",{value:!0});var n1n=s1n(kWe()),i1n=s1n(i1e()),Kro=(e,{showCursor:t=!1}={})=>{let r=0,s="",a=!1,o=g=>{!t&&!a&&(i1n.default.hide(),a=!0);let p=g+` +`;p!==s&&(s=p,e.write(n1n.default.eraseLines(r)+p),r=p.split(` +`).length)};return o.clear=()=>{e.write(n1n.default.eraseLines(r)),s="",r=0},o.done=()=>{s="",r=0,t||(i1n.default.show(),a=!1)},o};FWe.default={create:Kro}});var a1n=z((f4c,jro)=>{jro.exports=[{name:"AppVeyor",constant:"APPVEYOR",env:"APPVEYOR",pr:"APPVEYOR_PULL_REQUEST_NUMBER"},{name:"Azure Pipelines",constant:"AZURE_PIPELINES",env:"SYSTEM_TEAMFOUNDATIONCOLLECTIONURI",pr:"SYSTEM_PULLREQUEST_PULLREQUESTID"},{name:"Bamboo",constant:"BAMBOO",env:"bamboo_planKey"},{name:"Bitbucket Pipelines",constant:"BITBUCKET",env:"BITBUCKET_COMMIT",pr:"BITBUCKET_PR_ID"},{name:"Bitrise",constant:"BITRISE",env:"BITRISE_IO",pr:"BITRISE_PULL_REQUEST"},{name:"Buddy",constant:"BUDDY",env:"BUDDY_WORKSPACE_ID",pr:"BUDDY_EXECUTION_PULL_REQUEST_ID"},{name:"Buildkite",constant:"BUILDKITE",env:"BUILDKITE",pr:{env:"BUILDKITE_PULL_REQUEST",ne:"false"}},{name:"CircleCI",constant:"CIRCLE",env:"CIRCLECI",pr:"CIRCLE_PULL_REQUEST"},{name:"Cirrus CI",constant:"CIRRUS",env:"CIRRUS_CI",pr:"CIRRUS_PR"},{name:"AWS CodeBuild",constant:"CODEBUILD",env:"CODEBUILD_BUILD_ARN"},{name:"Codeship",constant:"CODESHIP",env:{CI_NAME:"codeship"}},{name:"Drone",constant:"DRONE",env:"DRONE",pr:{DRONE_BUILD_EVENT:"pull_request"}},{name:"dsari",constant:"DSARI",env:"DSARI"},{name:"GitLab CI",constant:"GITLAB",env:"GITLAB_CI"},{name:"GoCD",constant:"GOCD",env:"GO_PIPELINE_LABEL"},{name:"Hudson",constant:"HUDSON",env:"HUDSON_URL"},{name:"Jenkins",constant:"JENKINS",env:["JENKINS_URL","BUILD_ID"],pr:{any:["ghprbPullId","CHANGE_ID"]}},{name:"Magnum CI",constant:"MAGNUM",env:"MAGNUM"},{name:"Netlify CI",constant:"NETLIFY",env:"NETLIFY_BUILD_BASE",pr:{env:"PULL_REQUEST",ne:"false"}},{name:"Sail CI",constant:"SAIL",env:"SAILCI",pr:"SAIL_PULL_REQUEST_NUMBER"},{name:"Semaphore",constant:"SEMAPHORE",env:"SEMAPHORE",pr:"PULL_REQUEST_NUMBER"},{name:"Shippable",constant:"SHIPPABLE",env:"SHIPPABLE",pr:{IS_PULL_REQUEST:"true"}},{name:"Solano CI",constant:"SOLANO",env:"TDDIUM",pr:"TDDIUM_PR_ID"},{name:"Strider CD",constant:"STRIDER",env:"STRIDER"},{name:"TaskCluster",constant:"TASKCLUSTER",env:["TASK_ID","RUN_ID"]},{name:"TeamCity",constant:"TEAMCITY",env:"TEAMCITY_VERSION"},{name:"Travis CI",constant:"TRAVIS",env:"TRAVIS",pr:{env:"TRAVIS_PULL_REQUEST",ne:"false"}}]});var u1n=z(vW=>{"use strict";var l1n=a1n(),KJ=process.env;Object.defineProperty(vW,"_vendors",{value:l1n.map(function(e){return e.constant})});vW.name=null;vW.isPR=null;l1n.forEach(function(e){var t=Array.isArray(e.env)?e.env:[e.env],r=t.every(function(s){return c1n(s)});if(vW[e.constant]=r,r)switch(vW.name=e.name,typeof e.pr){case"string":vW.isPR=!!KJ[e.pr];break;case"object":"env"in e.pr?vW.isPR=e.pr.env in KJ&&KJ[e.pr.env]!==e.pr.ne:"any"in e.pr?vW.isPR=e.pr.any.some(function(s){return!!KJ[s]}):vW.isPR=c1n(e.pr);break;default:vW.isPR=null}});vW.isCI=!!(KJ.CI||KJ.CONTINUOUS_INTEGRATION||KJ.BUILD_NUMBER||KJ.RUN_ID||vW.name);function c1n(e){return typeof e=="string"?!!KJ[e]:Object.keys(e).every(function(t){return KJ[t]===e[t]})}});var N7t=z((C4c,g1n)=>{"use strict";g1n.exports=u1n().isCI});var R7t=z((m4c,A1n)=>{"use strict";var zro=e=>{let t=new Set;do for(let r of Reflect.ownKeys(e))t.add([e,r]);while((e=Reflect.getPrototypeOf(e))&&e!==Object.prototype);return t};A1n.exports=(e,{include:t,exclude:r}={})=>{let s=a=>{let o=g=>typeof g=="string"?a===g:g.test(a);return t?t.some(o):r?!r.some(o):!0};for(let[a,o]of zro(e.constructor.prototype)){if(o==="constructor"||!s(o))continue;let g=Reflect.getOwnPropertyDescriptor(a,o);g&&typeof g.value=="function"&&(e[o]=e[o].bind(e))}return e}});var m1n=z(E0=>{"use strict";var o1e,VWe,hct,L7t;typeof performance=="object"&&typeof performance.now=="function"?(d1n=performance,E0.unstable_now=function(){return d1n.now()}):(D7t=Date,p1n=D7t.now(),E0.unstable_now=function(){return D7t.now()-p1n});var d1n,D7t,p1n;typeof window>"u"||typeof MessageChannel!="function"?(s1e=null,x7t=null,k7t=function(){if(s1e!==null)try{var e=E0.unstable_now();s1e(!0,e),s1e=null}catch(t){throw setTimeout(k7t,0),t}},o1e=function(e){s1e!==null?setTimeout(o1e,0,e):(s1e=e,setTimeout(k7t,0))},VWe=function(e,t){x7t=setTimeout(e,t)},hct=function(){clearTimeout(x7t)},E0.unstable_shouldYield=function(){return!1},L7t=E0.unstable_forceFrameRate=function(){}):(f1n=window.setTimeout,I1n=window.clearTimeout,typeof console<"u"&&(C1n=window.cancelAnimationFrame,typeof window.requestAnimationFrame!="function"&&console.error("This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills"),typeof C1n!="function"&&console.error("This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills")),ZWe=!1,LWe=null,Ict=-1,G7t=5,F7t=0,E0.unstable_shouldYield=function(){return E0.unstable_now()>=F7t},L7t=function(){},E0.unstable_forceFrameRate=function(e){0>e||125>>1,a=e[s];if(a!==void 0&&0mct(g,r))f!==void 0&&0>mct(f,g)?(e[s]=f,e[p]=r,s=p):(e[s]=g,e[o]=r,s=o);else if(f!==void 0&&0>mct(f,r))e[s]=f,e[p]=r,s=p;else break e}}return t}return null}function mct(e,t){var r=e.sortIndex-t.sortIndex;return r!==0?r:e.id-t.id}var jJ=[],$ne=[],qro=1,QO=null,Bk=3,yct=!1,cde=!1,WWe=!1;function W7t(e){for(var t=DH($ne);t!==null;){if(t.callback===null)_ct($ne);else if(t.startTime<=e)_ct($ne),t.sortIndex=t.expirationTime,V7t(jJ,t);else break;t=DH($ne)}}function P7t(e){if(WWe=!1,W7t(e),!cde)if(DH(jJ)!==null)cde=!0,o1e(O7t);else{var t=DH($ne);t!==null&&VWe(P7t,t.startTime-e)}}function O7t(e,t){cde=!1,WWe&&(WWe=!1,hct()),yct=!0;var r=Bk;try{for(W7t(t),QO=DH(jJ);QO!==null&&(!(QO.expirationTime>t)||e&&!E0.unstable_shouldYield());){var s=QO.callback;if(typeof s=="function"){QO.callback=null,Bk=QO.priorityLevel;var a=s(QO.expirationTime<=t);t=E0.unstable_now(),typeof a=="function"?QO.callback=a:QO===DH(jJ)&&_ct(jJ),W7t(t)}else _ct(jJ);QO=DH(jJ)}if(QO!==null)var o=!0;else{var g=DH($ne);g!==null&&VWe(P7t,g.startTime-t),o=!1}return o}finally{QO=null,Bk=r,yct=!1}}var $ro=L7t;E0.unstable_IdlePriority=5;E0.unstable_ImmediatePriority=1;E0.unstable_LowPriority=4;E0.unstable_NormalPriority=3;E0.unstable_Profiling=null;E0.unstable_UserBlockingPriority=2;E0.unstable_cancelCallback=function(e){e.callback=null};E0.unstable_continueExecution=function(){cde||yct||(cde=!0,o1e(O7t))};E0.unstable_getCurrentPriorityLevel=function(){return Bk};E0.unstable_getFirstCallbackNode=function(){return DH(jJ)};E0.unstable_next=function(e){switch(Bk){case 1:case 2:case 3:var t=3;break;default:t=Bk}var r=Bk;Bk=t;try{return e()}finally{Bk=r}};E0.unstable_pauseExecution=function(){};E0.unstable_requestPaint=$ro;E0.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var r=Bk;Bk=e;try{return t()}finally{Bk=r}};E0.unstable_scheduleCallback=function(e,t,r){var s=E0.unstable_now();switch(typeof r=="object"&&r!==null?(r=r.delay,r=typeof r=="number"&&0s?(e.sortIndex=r,V7t($ne,e),DH(jJ)===null&&e===DH($ne)&&(WWe?hct():WWe=!0,VWe(P7t,r-s))):(e.sortIndex=a,V7t(jJ,e),cde||yct||(cde=!0,o1e(O7t))),e};E0.unstable_wrapCallback=function(e){var t=Bk;return function(){var r=Bk;Bk=t;try{return e.apply(this,arguments)}finally{Bk=r}}}});var PWe=z((_4c,h1n)=>{"use strict";h1n.exports=m1n()});var bct=z((y4c,y1n)=>{"use strict";var _1n=Object.getOwnPropertySymbols,eno=Object.prototype.hasOwnProperty,tno=Object.prototype.propertyIsEnumerable;function rno(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function nno(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var t={},r=0;r<10;r++)t["_"+String.fromCharCode(r)]=r;var s=Object.getOwnPropertyNames(t).map(function(o){return t[o]});if(s.join("")!=="0123456789")return!1;var a={};return"abcdefghijklmnopqrst".split("").forEach(function(o){a[o]=o}),Object.keys(Object.assign({},a)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}y1n.exports=nno()?Object.assign:function(e,t){for(var r,s=rno(e),a,o=1;o{OWe.exports=function(t){var r={},s=bct(),a=$a(),o=PWe();function g(G){for(var L="https://reactjs.org/docs/error-decoder.html?invariant="+G,ee=1;eeXr||xe[nr]!==gt[Xr])return` -`+xe[nr].replace(" at new "," at ");while(1<=nr&&0<=Xr);break}}}finally{on=!1,Error.prepareStackTrace=ee}return(k=k?k.displayName||k.name:"")?og(k):""}var $g=[],cA=-1;function HA(k){return{current:k}}function No(k){0>cA||(k.current=$g[cA],$g[cA]=null,cA--)}function Hl(k,L){cA++,$g[cA]=k.current,k.current=L}var Ff={},Vd=HA(Ff),bA=HA(!1),Os=Ff;function Hi(k,L){var ee=k.type.contextTypes;if(!ee)return Ff;var ve=k.stateNode;if(ve&&ve.__reactInternalMemoizedUnmaskedChildContext===L)return ve.__reactInternalMemoizedMaskedChildContext;var xe={},gt;for(gt in ee)xe[gt]=L[gt];return ve&&(k=k.stateNode,k.__reactInternalMemoizedUnmaskedChildContext=L,k.__reactInternalMemoizedMaskedChildContext=xe),xe}function ec(k){return k=k.childContextTypes,k!=null}function ll(){No(bA),No(Vd)}function Ts(k,L,ee){if(Vd.current!==Ff)throw Error(g(168));Hl(Vd,L),Hl(bA,ee)}function NA(k,L,ee){var ve=k.stateNode;if(k=L.childContextTypes,typeof ve.getChildContext!="function")return ee;ve=ve.getChildContext();for(var xe in ve)if(!(xe in k))throw Error(g(108,x(L)||"Unknown",xe));return s({},ee,ve)}function Ud(k){return k=(k=k.stateNode)&&k.__reactInternalMemoizedMergedChildContext||Ff,Os=Vd.current,Hl(Vd,k),Hl(bA,bA.current),!0}function Ra(k,L,ee){var ve=k.stateNode;if(!ve)throw Error(g(169));ee?(k=NA(k,L,Os),ve.__reactInternalMemoizedMergedChildContext=k,No(bA),No(Vd),Hl(Vd,k)):No(bA),Hl(bA,ee)}var ys=null,Xa=null,cm=o.unstable_now;cm();var eo=0,ps=8;function oc(k){if(1&k)return ps=15,1;if(2&k)return ps=14,2;if(4&k)return ps=13,4;var L=24&k;return L!==0?(ps=12,L):k&32?(ps=11,32):(L=192&k,L!==0?(ps=10,L):k&256?(ps=9,256):(L=3584&k,L!==0?(ps=8,L):k&4096?(ps=7,4096):(L=4186112&k,L!==0?(ps=6,L):(L=62914560&k,L!==0?(ps=5,L):k&67108864?(ps=4,67108864):k&134217728?(ps=3,134217728):(L=805306368&k,L!==0?(ps=2,L):1073741824&k?(ps=1,1073741824):(ps=8,k))))))}function TC(k){switch(k){case 99:return 15;case 98:return 10;case 97:case 96:return 8;case 95:return 2;default:return 0}}function pI(k){switch(k){case 15:case 14:return 99;case 13:case 12:case 11:case 10:return 98;case 9:case 8:case 7:case 6:case 4:case 5:return 97;case 3:case 2:case 1:return 95;case 0:return 90;default:throw Error(g(358,k))}}function SI(k,L){var ee=k.pendingLanes;if(ee===0)return ps=0;var ve=0,xe=0,gt=k.expiredLanes,nr=k.suspendedLanes,Xr=k.pingedLanes;if(gt!==0)ve=gt,xe=ps=15;else if(gt=ee&134217727,gt!==0){var Kn=gt&~nr;Kn!==0?(ve=oc(Kn),xe=ps):(Xr&=gt,Xr!==0&&(ve=oc(Xr),xe=ps))}else gt=ee&~nr,gt!==0?(ve=oc(gt),xe=ps):Xr!==0&&(ve=oc(Xr),xe=ps);if(ve===0)return 0;if(ve=31-iu(ve),ve=ee&((0>ve?0:1<ee;ee++)L.push(k);return L}function za(k,L,ee){k.pendingLanes|=L;var ve=L-1;k.suspendedLanes&=ve,k.pingedLanes&=ve,k=k.eventTimes,L=31-iu(L),k[L]=ee}var iu=Math.clz32?Math.clz32:Jh,ii=Math.log,NC=Math.LN2;function Jh(k){return k===0?32:31-(ii(k)/NC|0)|0}var Tm=o.unstable_runWithPriority,_l=o.unstable_scheduleCallback,Og=o.unstable_cancelCallback,sp=o.unstable_shouldYield,lm=o.unstable_requestPaint,ch=o.unstable_now,Xl=o.unstable_getCurrentPriorityLevel,Wp=o.unstable_ImmediatePriority,uC=o.unstable_UserBlockingPriority,fs=o.unstable_NormalPriority,Ao=o.unstable_LowPriority,Do=o.unstable_IdlePriority,zl={},Nr=lm!==void 0?lm:function(){},Nn=null,Di=null,na=!1,Ks=ch(),Li=1e4>Ks?ch:function(){return ch()-Ks};function Zl(){switch(Xl()){case Wp:return 99;case uC:return 98;case fs:return 97;case Ao:return 96;case Do:return 95;default:throw Error(g(332))}}function RA(k){switch(k){case 99:return Wp;case 98:return uC;case 97:return fs;case 96:return Ao;case 95:return Do;default:throw Error(g(332))}}function Nd(k,L){return k=RA(k),Tm(k,L)}function WI(k,L,ee){return k=RA(k),_l(k,L,ee)}function pl(){if(Di!==null){var k=Di;Di=null,Og(k)}Qm()}function Qm(){if(!na&&Nn!==null){na=!0;var k=0;try{var L=Nn;Nd(99,function(){for(;kXu?(Lu=pc,pc=null):Lu=pc.sibling;var Rc=Eo(Sn,pc,Hn[Xu],Fo);if(Rc===null){pc===null&&(pc=Lu);break}k&&pc&&Rc.alternate===null&&L(Sn,pc),vr=gt(Rc,vr,Xu),dA===null?tc=Rc:dA.sibling=Rc,dA=Rc,pc=Lu}if(Xu===Hn.length)return ee(Sn,pc),tc;if(pc===null){for(;XuXu?(Lu=pc,pc=null):Lu=pc.sibling;var Mp=Eo(Sn,pc,Rc.value,Fo);if(Mp===null){pc===null&&(pc=Lu);break}k&&pc&&Mp.alternate===null&&L(Sn,pc),vr=gt(Mp,vr,Xu),dA===null?tc=Mp:dA.sibling=Mp,dA=Mp,pc=Lu}if(Rc.done)return ee(Sn,pc),tc;if(pc===null){for(;!Rc.done;Xu++,Rc=Hn.next())Rc=el(Sn,Rc.value,Fo),Rc!==null&&(vr=gt(Rc,vr,Xu),dA===null?tc=Rc:dA.sibling=Rc,dA=Rc);return tc}for(pc=ve(Sn,pc);!Rc.done;Xu++,Rc=Hn.next())Rc=vg(pc,Sn,Xu,Rc.value,Fo),Rc!==null&&(k&&Rc.alternate!==null&&pc.delete(Rc.key===null?Xu:Rc.key),vr=gt(Rc,vr,Xu),dA===null?tc=Rc:dA.sibling=Rc,dA=Rc);return k&&pc.forEach(function(jy){return L(Sn,jy)}),tc}return function(Sn,vr,Hn,Fo){var tc=typeof Hn=="object"&&Hn!==null&&Hn.type===y&&Hn.key===null;tc&&(Hn=Hn.props.children);var dA=typeof Hn=="object"&&Hn!==null;if(dA)switch(Hn.$$typeof){case f:e:{for(dA=Hn.key,tc=vr;tc!==null;){if(tc.key===dA){switch(tc.tag){case 7:if(Hn.type===y){ee(Sn,tc.sibling),vr=xe(tc,Hn.props.children),vr.return=Sn,Sn=vr;break e}break;default:if(tc.elementType===Hn.type){ee(Sn,tc.sibling),vr=xe(tc,Hn.props),vr.ref=wr(Sn,tc,Hn),vr.return=Sn,Sn=vr;break e}}ee(Sn,tc);break}else L(Sn,tc);tc=tc.sibling}Hn.type===y?(vr=fp(Hn.props.children,Sn.mode,Fo,Hn.key),vr.return=Sn,Sn=vr):(Fo=C2(Hn.type,Hn.key,Hn.props,null,Sn.mode,Fo),Fo.ref=wr(Sn,vr,Hn),Fo.return=Sn,Sn=Fo)}return nr(Sn);case m:e:{for(tc=Hn.key;vr!==null;){if(vr.key===tc)if(vr.tag===4&&vr.stateNode.containerInfo===Hn.containerInfo&&vr.stateNode.implementation===Hn.implementation){ee(Sn,vr.sibling),vr=xe(vr,Hn.children||[]),vr.return=Sn,Sn=vr;break e}else{ee(Sn,vr);break}else L(Sn,vr);vr=vr.sibling}vr=xm(Hn,Sn.mode,Fo),vr.return=Sn,Sn=vr}return nr(Sn)}if(typeof Hn=="string"||typeof Hn=="number")return Hn=""+Hn,vr!==null&&vr.tag===6?(ee(Sn,vr.sibling),vr=xe(vr,Hn),vr.return=Sn,Sn=vr):(ee(Sn,vr),vr=w1(Hn,Sn.mode,Fo),vr.return=Sn,Sn=vr),nr(Sn);if(Zr(Hn))return nd(Sn,vr,Hn,Fo);if(ke(Hn))return YC(Sn,vr,Hn,Fo);if(dA&&Yn(Sn,Hn),typeof Hn>"u"&&!tc)switch(Sn.tag){case 1:case 22:case 0:case 11:case 15:throw Error(g(152,x(Sn.type)||"Component"))}return ee(Sn,vr)}}var Po=Dn(!0),fc=Dn(!1),Xc={},Yo=HA(Xc),yu=HA(Xc),op=HA(Xc);function lA(k){if(k===Xc)throw Error(g(174));return k}function tI(k,L){Hl(op,L),Hl(yu,k),Hl(Yo,Xc),k=Ur(L),No(Yo),Hl(Yo,k)}function Kd(){No(Yo),No(yu),No(op)}function D0(k){var L=lA(op.current),ee=lA(Yo.current);L=Ot(ee,k.type,L),ee!==L&&(Hl(yu,k),Hl(Yo,L))}function ya(k){yu.current===k&&(No(Yo),No(yu))}var md=HA(0);function fI(k){for(var L=k;L!==null;){if(L.tag===13){var ee=L.memoizedState;if(ee!==null&&(ee=ee.dehydrated,ee===null||au(ee)||Lg(ee)))return L}else if(L.tag===19&&L.memoizedProps.revealOrder!==void 0){if(L.flags&64)return L}else if(L.child!==null){L.child.return=L,L=L.child;continue}if(L===k)break;for(;L.sibling===null;){if(L.return===null||L.return===k)return null;L=L.return}L.sibling.return=L.return,L=L.sibling}return null}var Bf=null,Uh=null,Ym=!1;function IS(k,L){var ee=dC(5,null,null,0);ee.elementType="DELETED",ee.type="DELETED",ee.stateNode=L,ee.return=k,ee.flags=8,k.lastEffect!==null?(k.lastEffect.nextEffect=ee,k.lastEffect=ee):k.firstEffect=k.lastEffect=ee}function CS(k,L){switch(k.tag){case 5:return L=Dg(L,k.type,k.pendingProps),L!==null?(k.stateNode=L,!0):!1;case 6:return L=hl(L,k.pendingProps),L!==null?(k.stateNode=L,!0):!1;case 13:return!1;default:return!1}}function _E(k){if(Ym){var L=Uh;if(L){var ee=L;if(!CS(k,L)){if(L=cf(ee),!L||!CS(k,L)){k.flags=k.flags&-1025|2,Ym=!1,Bf=k;return}IS(Bf,ee)}Bf=k,Uh=Td(L)}else k.flags=k.flags&-1025|2,Ym=!1,Bf=k}}function x0(k){for(k=k.return;k!==null&&k.tag!==5&&k.tag!==3&&k.tag!==13;)k=k.return;Bf=k}function yE(k){if(!ka||k!==Bf)return!1;if(!Ym)return x0(k),Ym=!0,!1;var L=k.type;if(k.tag!==5||L!=="head"&&L!=="body"&&!In(L,k.memoizedProps))for(L=Uh;L;)IS(k,L),L=cf(L);if(x0(k),k.tag===13){if(!ka)throw Error(g(316));if(k=k.memoizedState,k=k!==null?k.dehydrated:null,!k)throw Error(g(317));Uh=Rt(k)}else Uh=Bf?cf(k.stateNode):null;return!0}function CB(){ka&&(Uh=Bf=null,Ym=!1)}var J_=[];function yh(){for(var k=0;kgt))throw Error(g(301));gt+=1,ug=ap=null,L.updateQueue=null,U_.current=Wr,k=ee(ve,xe)}while(Tb)}if(U_.current=dc,L=ap!==null&&ap.next!==null,RC=0,ug=ap=Kl=null,Hm=!1,L)throw Error(g(300));return k}function QC(){var k={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return ug===null?Kl.memoizedState=ug=k:ug=ug.next=k,ug}function wI(){if(ap===null){var k=Kl.alternate;k=k!==null?k.memoizedState:null}else k=ap.next;var L=ug===null?Kl.memoizedState:ug.next;if(L!==null)ug=L,ap=k;else{if(k===null)throw Error(g(310));ap=k,k={memoizedState:ap.memoizedState,baseState:ap.baseState,baseQueue:ap.baseQueue,queue:ap.queue,next:null},ug===null?Kl.memoizedState=ug=k:ug=ug.next=k}return ug}function Fi(k,L){return typeof L=="function"?L(k):L}function Lo(k){var L=wI(),ee=L.queue;if(ee===null)throw Error(g(311));ee.lastRenderedReducer=k;var ve=ap,xe=ve.baseQueue,gt=ee.pending;if(gt!==null){if(xe!==null){var nr=xe.next;xe.next=gt.next,gt.next=nr}ve.baseQueue=xe=gt,ee.pending=null}if(xe!==null){xe=xe.next,ve=ve.baseState;var Xr=nr=gt=null,Kn=xe;do{var to=Kn.lane;if((RC&to)===to)Xr!==null&&(Xr=Xr.next={lane:0,action:Kn.action,eagerReducer:Kn.eagerReducer,eagerState:Kn.eagerState,next:null}),ve=Kn.eagerReducer===k?Kn.eagerState:k(ve,Kn.action);else{var Fa={lane:to,action:Kn.action,eagerReducer:Kn.eagerReducer,eagerState:Kn.eagerState,next:null};Xr===null?(nr=Xr=Fa,gt=ve):Xr=Xr.next=Fa,Kl.lanes|=to,$h|=to}Kn=Kn.next}while(Kn!==null&&Kn!==xe);Xr===null?gt=ve:Xr.next=nr,eA(ve,L.memoizedState)||(os=!0),L.memoizedState=ve,L.baseState=gt,L.baseQueue=Xr,ee.lastRenderedState=ve}return[L.memoizedState,ee.dispatch]}function rs(k){var L=wI(),ee=L.queue;if(ee===null)throw Error(g(311));ee.lastRenderedReducer=k;var ve=ee.dispatch,xe=ee.pending,gt=L.memoizedState;if(xe!==null){ee.pending=null;var nr=xe=xe.next;do gt=k(gt,nr.action),nr=nr.next;while(nr!==xe);eA(gt,L.memoizedState)||(os=!0),L.memoizedState=gt,L.baseQueue===null&&(L.baseState=gt),ee.lastRenderedState=gt}return[gt,ve]}function vc(k,L,ee){var ve=L._getVersion;ve=ve(L._source);var xe=we?L._workInProgressVersionPrimary:L._workInProgressVersionSecondary;if(xe!==null?k=xe===ve:(k=k.mutableReadLanes,(k=(RC&k)===k)&&(we?L._workInProgressVersionPrimary=ve:L._workInProgressVersionSecondary=ve,J_.push(L))),k)return ee(L._source);throw J_.push(L),Error(g(350))}function Ml(k,L,ee,ve){var xe=EA;if(xe===null)throw Error(g(349));var gt=L._getVersion,nr=gt(L._source),Xr=U_.current,Kn=Xr.useState(function(){return vc(xe,L,ee)}),to=Kn[1],Fa=Kn[0];Kn=ug;var el=k.memoizedState,Eo=el.refs,vg=Eo.getSnapshot,nd=el.source;el=el.subscribe;var YC=Kl;return k.memoizedState={refs:Eo,source:L,subscribe:ve},Xr.useEffect(function(){Eo.getSnapshot=ee,Eo.setSnapshot=to;var Sn=gt(L._source);if(!eA(nr,Sn)){Sn=ee(L._source),eA(Fa,Sn)||(to(Sn),Sn=eC(YC),xe.mutableReadLanes|=Sn&xe.pendingLanes),Sn=xe.mutableReadLanes,xe.entangledLanes|=Sn;for(var vr=xe.entanglements,Hn=Sn;0ee?98:ee,function(){k(!0)}),Nd(97bv&&(L.flags|=64,xe=!0,py(ve,!1),L.lanes=33554432)}else{if(!xe)if(k=fI(gt),k!==null){if(L.flags|=64,xe=!0,k=k.updateQueue,k!==null&&(L.updateQueue=k,L.flags|=4),py(ve,!0),ve.tail===null&&ve.tailMode==="hidden"&&!gt.alternate&&!Ym)return L=L.lastEffect=ve.lastEffect,L!==null&&(L.nextEffect=null),null}else 2*Li()-ve.renderingStartTime>bv&&ee!==1073741824&&(L.flags|=64,xe=!0,py(ve,!1),L.lanes=33554432);ve.isBackwards?(gt.sibling=L.child,L.child=gt):(k=ve.last,k!==null?k.sibling=gt:L.child=gt,ve.last=gt)}return ve.tail!==null?(k=ve.tail,ve.rendering=k,ve.tail=k.sibling,ve.lastEffect=L.lastEffect,ve.renderingStartTime=Li(),k.sibling=null,L=md.current,Hl(md,xe?L&1|2:L&1),k):null;case 23:case 24:return _B(),k!==null&&k.memoizedState!==null!=(L.memoizedState!==null)&&ve.mode!=="unstable-defer-without-hiding"&&(L.flags|=4),null}throw Error(g(156,L.tag))}function _S(k){switch(k.tag){case 1:ec(k.type)&&ll();var L=k.flags;return L&4096?(k.flags=L&-4097|64,k):null;case 3:if(Kd(),No(bA),No(Vd),yh(),L=k.flags,L&64)throw Error(g(285));return k.flags=L&-4097|64,k;case 5:return ya(k),null;case 13:return No(md),L=k.flags,L&4096?(k.flags=L&-4097|64,k):null;case 19:return No(md),null;case 4:return Kd(),null;case 10:return Sb(k),null;case 23:case 24:return _B(),null;default:return null}}function Xy(k,L){try{var ee="",ve=L;do ee+=Oy(ve),ve=ve.return;while(ve);var xe=ee}catch(gt){xe=` +`+xe[nr].replace(" at new "," at ");while(1<=nr&&0<=Xr);break}}}finally{on=!1,Error.prepareStackTrace=ee}return(G=G?G.displayName||G.name:"")?ag(G):""}var eA=[],lA=-1;function XA(G){return{current:G}}function To(G){0>lA||(G.current=eA[lA],eA[lA]=null,lA--)}function Xl(G,L){lA++,eA[lA]=G.current,G.current=L}var Zf={},Wd=XA(Zf),EA=XA(!1),Ps=Zf;function Yi(G,L){var ee=G.type.contextTypes;if(!ee)return Zf;var ve=G.stateNode;if(ve&&ve.__reactInternalMemoizedUnmaskedChildContext===L)return ve.__reactInternalMemoizedMaskedChildContext;var xe={},gt;for(gt in ee)xe[gt]=L[gt];return ve&&(G=G.stateNode,G.__reactInternalMemoizedUnmaskedChildContext=L,G.__reactInternalMemoizedMaskedChildContext=xe),xe}function ec(G){return G=G.childContextTypes,G!=null}function ul(){To(EA),To(Wd)}function Ts(G,L,ee){if(Wd.current!==Zf)throw Error(g(168));Xl(Wd,L),Xl(EA,ee)}function RA(G,L,ee){var ve=G.stateNode;if(G=L.childContextTypes,typeof ve.getChildContext!="function")return ee;ve=ve.getChildContext();for(var xe in ve)if(!(xe in G))throw Error(g(108,x(L)||"Unknown",xe));return s({},ee,ve)}function Kd(G){return G=(G=G.stateNode)&&G.__reactInternalMemoizedMergedChildContext||Zf,Ps=Wd.current,Xl(Wd,G),Xl(EA,EA.current),!0}function Na(G,L,ee){var ve=G.stateNode;if(!ve)throw Error(g(169));ee?(G=RA(G,L,Ps),ve.__reactInternalMemoizedMergedChildContext=G,To(EA),To(Wd),Xl(Wd,G)):To(EA),Xl(EA,ee)}var ys=null,Ya=null,lm=o.unstable_now;lm();var $s=0,ps=8;function oc(G){if(1&G)return ps=15,1;if(2&G)return ps=14,2;if(4&G)return ps=13,4;var L=24&G;return L!==0?(ps=12,L):G&32?(ps=11,32):(L=192&G,L!==0?(ps=10,L):G&256?(ps=9,256):(L=3584&G,L!==0?(ps=8,L):G&4096?(ps=7,4096):(L=4186112&G,L!==0?(ps=6,L):(L=62914560&G,L!==0?(ps=5,L):G&67108864?(ps=4,67108864):G&134217728?(ps=3,134217728):(L=805306368&G,L!==0?(ps=2,L):1073741824&G?(ps=1,1073741824):(ps=8,G))))))}function NC(G){switch(G){case 99:return 15;case 98:return 10;case 97:case 96:return 8;case 95:return 2;default:return 0}}function fI(G){switch(G){case 15:case 14:return 99;case 13:case 12:case 11:case 10:return 98;case 9:case 8:case 7:case 6:case 4:case 5:return 97;case 3:case 2:case 1:return 95;case 0:return 90;default:throw Error(g(358,G))}}function wI(G,L){var ee=G.pendingLanes;if(ee===0)return ps=0;var ve=0,xe=0,gt=G.expiredLanes,nr=G.suspendedLanes,Xr=G.pingedLanes;if(gt!==0)ve=gt,xe=ps=15;else if(gt=ee&134217727,gt!==0){var Kn=gt&~nr;Kn!==0?(ve=oc(Kn),xe=ps):(Xr&=gt,Xr!==0&&(ve=oc(Xr),xe=ps))}else gt=ee&~nr,gt!==0?(ve=oc(gt),xe=ps):Xr!==0&&(ve=oc(Xr),xe=ps);if(ve===0)return 0;if(ve=31-su(ve),ve=ee&((0>ve?0:1<ee;ee++)L.push(G);return L}function ja(G,L,ee){G.pendingLanes|=L;var ve=L-1;G.suspendedLanes&=ve,G.pingedLanes&=ve,G=G.eventTimes,L=31-su(L),G[L]=ee}var su=Math.clz32?Math.clz32:Uh,ii=Math.log,RC=Math.LN2;function Uh(G){return G===0?32:31-(ii(G)/RC|0)|0}var Nm=o.unstable_runWithPriority,yl=o.unstable_scheduleCallback,Qg=o.unstable_cancelCallback,op=o.unstable_shouldYield,um=o.unstable_requestPaint,lh=o.unstable_now,Jl=o.unstable_getCurrentPriorityLevel,Pp=o.unstable_ImmediatePriority,gC=o.unstable_UserBlockingPriority,fs=o.unstable_NormalPriority,go=o.unstable_LowPriority,Ro=o.unstable_IdlePriority,ql={},Nr=um!==void 0?um:function(){},Nn=null,Di=null,ra=!1,Us=lh(),Li=1e4>Us?lh:function(){return lh()-Us};function Ll(){switch(Jl()){case Pp:return 99;case gC:return 98;case fs:return 97;case go:return 96;case Ro:return 95;default:throw Error(g(332))}}function DA(G){switch(G){case 99:return Pp;case 98:return gC;case 97:return fs;case 96:return go;case 95:return Ro;default:throw Error(g(332))}}function Rd(G,L){return G=DA(G),Nm(G,L)}function PI(G,L,ee){return G=DA(G),yl(G,L,ee)}function fl(){if(Di!==null){var G=Di;Di=null,Qg(G)}Hm()}function Hm(){if(!ra&&Nn!==null){ra=!0;var G=0;try{var L=Nn;Rd(99,function(){for(;GJu?(Vu=fc,fc=null):Vu=fc.sibling;var Dc=bo(Sn,fc,Yn[Ju],Go);if(Dc===null){fc===null&&(fc=Vu);break}G&&fc&&Dc.alternate===null&&L(Sn,fc),vr=gt(Dc,vr,Ju),pA===null?tc=Dc:pA.sibling=Dc,pA=Dc,fc=Vu}if(Ju===Yn.length)return ee(Sn,fc),tc;if(fc===null){for(;JuJu?(Vu=fc,fc=null):Vu=fc.sibling;var Mp=bo(Sn,fc,Dc.value,Go);if(Mp===null){fc===null&&(fc=Vu);break}G&&fc&&Mp.alternate===null&&L(Sn,fc),vr=gt(Mp,vr,Ju),pA===null?tc=Mp:pA.sibling=Mp,pA=Mp,fc=Vu}if(Dc.done)return ee(Sn,fc),tc;if(fc===null){for(;!Dc.done;Ju++,Dc=Yn.next())Dc=tl(Sn,Dc.value,Go),Dc!==null&&(vr=gt(Dc,vr,Ju),pA===null?tc=Dc:pA.sibling=Dc,pA=Dc);return tc}for(fc=ve(Sn,fc);!Dc.done;Ju++,Dc=Yn.next())Dc=Sg(fc,Sn,Ju,Dc.value,Go),Dc!==null&&(G&&Dc.alternate!==null&&fc.delete(Dc.key===null?Ju:Dc.key),vr=gt(Dc,vr,Ju),pA===null?tc=Dc:pA.sibling=Dc,pA=Dc);return G&&fc.forEach(function(zy){return L(Sn,zy)}),tc}return function(Sn,vr,Yn,Go){var tc=typeof Yn=="object"&&Yn!==null&&Yn.type===y&&Yn.key===null;tc&&(Yn=Yn.props.children);var pA=typeof Yn=="object"&&Yn!==null;if(pA)switch(Yn.$$typeof){case f:e:{for(pA=Yn.key,tc=vr;tc!==null;){if(tc.key===pA){switch(tc.tag){case 7:if(Yn.type===y){ee(Sn,tc.sibling),vr=xe(tc,Yn.props.children),vr.return=Sn,Sn=vr;break e}break;default:if(tc.elementType===Yn.type){ee(Sn,tc.sibling),vr=xe(tc,Yn.props),vr.ref=wr(Sn,tc,Yn),vr.return=Sn,Sn=vr;break e}}ee(Sn,tc);break}else L(Sn,tc);tc=tc.sibling}Yn.type===y?(vr=Ip(Yn.props.children,Sn.mode,Go,Yn.key),vr.return=Sn,Sn=vr):(Go=m2(Yn.type,Yn.key,Yn.props,null,Sn.mode,Go),Go.ref=wr(Sn,vr,Yn),Go.return=Sn,Sn=Go)}return nr(Sn);case m:e:{for(tc=Yn.key;vr!==null;){if(vr.key===tc)if(vr.tag===4&&vr.stateNode.containerInfo===Yn.containerInfo&&vr.stateNode.implementation===Yn.implementation){ee(Sn,vr.sibling),vr=xe(vr,Yn.children||[]),vr.return=Sn,Sn=vr;break e}else{ee(Sn,vr);break}else L(Sn,vr);vr=vr.sibling}vr=km(Yn,Sn.mode,Go),vr.return=Sn,Sn=vr}return nr(Sn)}if(typeof Yn=="string"||typeof Yn=="number")return Yn=""+Yn,vr!==null&&vr.tag===6?(ee(Sn,vr.sibling),vr=xe(vr,Yn),vr.return=Sn,Sn=vr):(ee(Sn,vr),vr=T1(Yn,Sn.mode,Go),vr.return=Sn,Sn=vr),nr(Sn);if(Zr(Yn))return id(Sn,vr,Yn,Go);if(ke(Yn))return YC(Sn,vr,Yn,Go);if(pA&&Hn(Sn,Yn),typeof Yn>"u"&&!tc)switch(Sn.tag){case 1:case 22:case 0:case 11:case 15:throw Error(g(152,x(Sn.type)||"Component"))}return ee(Sn,vr)}}var Wo=Dn(!0),Ic=Dn(!1),Jc={},Mo=XA(Jc),bu=XA(Jc),ap=XA(Jc);function uA(G){if(G===Jc)throw Error(g(174));return G}function rI(G,L){Xl(ap,L),Xl(bu,G),Xl(Mo,Jc),G=Ur(L),To(Mo),Xl(Mo,G)}function jd(){To(Mo),To(bu),To(ap)}function x0(G){var L=uA(ap.current),ee=uA(Mo.current);L=Ot(ee,G.type,L),ee!==L&&(Xl(bu,G),Xl(Mo,L))}function ha(G){bu.current===G&&(To(Mo),To(bu))}var hd=XA(0);function II(G){for(var L=G;L!==null;){if(L.tag===13){var ee=L.memoizedState;if(ee!==null&&(ee=ee.dehydrated,ee===null||cu(ee)||Vg(ee)))return L}else if(L.tag===19&&L.memoizedProps.revealOrder!==void 0){if(L.flags&64)return L}else if(L.child!==null){L.child.return=L,L=L.child;continue}if(L===G)break;for(;L.sibling===null;){if(L.return===null||L.return===G)return null;L=L.return}L.sibling.return=L.return,L=L.sibling}return null}var vf=null,Kh=null,Ym=!1;function CS(G,L){var ee=pC(5,null,null,0);ee.elementType="DELETED",ee.type="DELETED",ee.stateNode=L,ee.return=G,ee.flags=8,G.lastEffect!==null?(G.lastEffect.nextEffect=ee,G.lastEffect=ee):G.firstEffect=G.lastEffect=ee}function mS(G,L){switch(G.tag){case 5:return L=xg(L,G.type,G.pendingProps),L!==null?(G.stateNode=L,!0):!1;case 6:return L=_l(L,G.pendingProps),L!==null?(G.stateNode=L,!0):!1;case 13:return!1;default:return!1}}function bE(G){if(Ym){var L=Kh;if(L){var ee=L;if(!mS(G,L)){if(L=lf(ee),!L||!mS(G,L)){G.flags=G.flags&-1025|2,Ym=!1,vf=G;return}CS(vf,ee)}vf=G,Kh=Nd(L)}else G.flags=G.flags&-1025|2,Ym=!1,vf=G}}function k0(G){for(G=G.return;G!==null&&G.tag!==5&&G.tag!==3&&G.tag!==13;)G=G.return;vf=G}function EE(G){if(!xa||G!==vf)return!1;if(!Ym)return k0(G),Ym=!0,!1;var L=G.type;if(G.tag!==5||L!=="head"&&L!=="body"&&!In(L,G.memoizedProps))for(L=Kh;L;)CS(G,L),L=lf(L);if(k0(G),G.tag===13){if(!xa)throw Error(g(316));if(G=G.memoizedState,G=G!==null?G.dehydrated:null,!G)throw Error(g(317));Kh=Dt(G)}else Kh=vf?lf(G.stateNode):null;return!0}function hB(){xa&&(Kh=vf=null,Ym=!1)}var U_=[];function bh(){for(var G=0;Ggt))throw Error(g(301));gt+=1,gg=cp=null,L.updateQueue=null,K_.current=Wr,G=ee(ve,xe)}while(Rb)}if(K_.current=pc,L=cp!==null&&cp.next!==null,DC=0,gg=cp=jl=null,Xm=!1,L)throw Error(g(300));return G}function HC(){var G={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return gg===null?jl.memoizedState=gg=G:gg=gg.next=G,gg}function TI(){if(cp===null){var G=jl.alternate;G=G!==null?G.memoizedState:null}else G=cp.next;var L=gg===null?jl.memoizedState:gg.next;if(L!==null)gg=L,cp=G;else{if(G===null)throw Error(g(310));cp=G,G={memoizedState:cp.memoizedState,baseState:cp.baseState,baseQueue:cp.baseQueue,queue:cp.queue,next:null},gg===null?jl.memoizedState=gg=G:gg=gg.next=G}return gg}function Fi(G,L){return typeof L=="function"?L(G):L}function Zo(G){var L=TI(),ee=L.queue;if(ee===null)throw Error(g(311));ee.lastRenderedReducer=G;var ve=cp,xe=ve.baseQueue,gt=ee.pending;if(gt!==null){if(xe!==null){var nr=xe.next;xe.next=gt.next,gt.next=nr}ve.baseQueue=xe=gt,ee.pending=null}if(xe!==null){xe=xe.next,ve=ve.baseState;var Xr=nr=gt=null,Kn=xe;do{var eo=Kn.lane;if((DC&eo)===eo)Xr!==null&&(Xr=Xr.next={lane:0,action:Kn.action,eagerReducer:Kn.eagerReducer,eagerState:Kn.eagerState,next:null}),ve=Kn.eagerReducer===G?Kn.eagerState:G(ve,Kn.action);else{var Ga={lane:eo,action:Kn.action,eagerReducer:Kn.eagerReducer,eagerState:Kn.eagerState,next:null};Xr===null?(nr=Xr=Ga,gt=ve):Xr=Xr.next=Ga,jl.lanes|=eo,e_|=eo}Kn=Kn.next}while(Kn!==null&&Kn!==xe);Xr===null?gt=ve:Xr.next=nr,tA(ve,L.memoizedState)||(os=!0),L.memoizedState=ve,L.baseState=gt,L.baseQueue=Xr,ee.lastRenderedState=ve}return[L.memoizedState,ee.dispatch]}function rs(G){var L=TI(),ee=L.queue;if(ee===null)throw Error(g(311));ee.lastRenderedReducer=G;var ve=ee.dispatch,xe=ee.pending,gt=L.memoizedState;if(xe!==null){ee.pending=null;var nr=xe=xe.next;do gt=G(gt,nr.action),nr=nr.next;while(nr!==xe);tA(gt,L.memoizedState)||(os=!0),L.memoizedState=gt,L.baseQueue===null&&(L.baseState=gt),ee.lastRenderedState=gt}return[gt,ve]}function Sc(G,L,ee){var ve=L._getVersion;ve=ve(L._source);var xe=we?L._workInProgressVersionPrimary:L._workInProgressVersionSecondary;if(xe!==null?G=xe===ve:(G=G.mutableReadLanes,(G=(DC&G)===G)&&(we?L._workInProgressVersionPrimary=ve:L._workInProgressVersionSecondary=ve,U_.push(L))),G)return ee(L._source);throw U_.push(L),Error(g(350))}function Ml(G,L,ee,ve){var xe=BA;if(xe===null)throw Error(g(349));var gt=L._getVersion,nr=gt(L._source),Xr=K_.current,Kn=Xr.useState(function(){return Sc(xe,L,ee)}),eo=Kn[1],Ga=Kn[0];Kn=gg;var tl=G.memoizedState,bo=tl.refs,Sg=bo.getSnapshot,id=tl.source;tl=tl.subscribe;var YC=jl;return G.memoizedState={refs:bo,source:L,subscribe:ve},Xr.useEffect(function(){bo.getSnapshot=ee,bo.setSnapshot=eo;var Sn=gt(L._source);if(!tA(nr,Sn)){Sn=ee(L._source),tA(Ga,Sn)||(eo(Sn),Sn=tC(YC),xe.mutableReadLanes|=Sn&xe.pendingLanes),Sn=xe.mutableReadLanes,xe.entangledLanes|=Sn;for(var vr=xe.entanglements,Yn=Sn;0ee?98:ee,function(){G(!0)}),Rd(97Ev&&(L.flags|=64,xe=!0,fy(ve,!1),L.lanes=33554432)}else{if(!xe)if(G=II(gt),G!==null){if(L.flags|=64,xe=!0,G=G.updateQueue,G!==null&&(L.updateQueue=G,L.flags|=4),fy(ve,!0),ve.tail===null&&ve.tailMode==="hidden"&&!gt.alternate&&!Ym)return L=L.lastEffect=ve.lastEffect,L!==null&&(L.nextEffect=null),null}else 2*Li()-ve.renderingStartTime>Ev&&ee!==1073741824&&(L.flags|=64,xe=!0,fy(ve,!1),L.lanes=33554432);ve.isBackwards?(gt.sibling=L.child,L.child=gt):(G=ve.last,G!==null?G.sibling=gt:L.child=gt,ve.last=gt)}return ve.tail!==null?(G=ve.tail,ve.rendering=G,ve.tail=G.sibling,ve.lastEffect=L.lastEffect,ve.renderingStartTime=Li(),G.sibling=null,L=hd.current,Xl(hd,xe?L&1|2:L&1),G):null;case 23:case 24:return bB(),G!==null&&G.memoizedState!==null!=(L.memoizedState!==null)&&ve.mode!=="unstable-defer-without-hiding"&&(L.flags|=4),null}throw Error(g(156,L.tag))}function yS(G){switch(G.tag){case 1:ec(G.type)&&ul();var L=G.flags;return L&4096?(G.flags=L&-4097|64,G):null;case 3:if(jd(),To(EA),To(Wd),bh(),L=G.flags,L&64)throw Error(g(285));return G.flags=L&-4097|64,G;case 5:return ha(G),null;case 13:return To(hd),L=G.flags,L&4096?(G.flags=L&-4097|64,G):null;case 19:return To(hd),null;case 4:return jd(),null;case 10:return Tb(G),null;case 23:case 24:return bB(),null;default:return null}}function Jy(G,L){try{var ee="",ve=L;do ee+=Qy(ve),ve=ve.return;while(ve);var xe=ee}catch(gt){xe=` Error generating stack: `+gt.message+` -`+gt.stack}return{value:k,source:L,stack:xe}}function BE(k,L){try{console.error(L.value)}catch(ee){setTimeout(function(){throw ee})}}var mv=typeof WeakMap=="function"?WeakMap:Map;function Mw(k,L,ee){ee=PI(-1,ee),ee.tag=3,ee.payload={element:null};var ve=L.value;return ee.callback=function(){Uy||(Uy=!0,kb=ve),BE(k,L)},ee}function hv(k,L,ee){ee=PI(-1,ee),ee.tag=3;var ve=k.type.getDerivedStateFromError;if(typeof ve=="function"){var xe=L.value;ee.payload=function(){return BE(k,L),ve(xe)}}var gt=k.stateNode;return gt!==null&&typeof gt.componentDidCatch=="function"&&(ee.callback=function(){typeof ve!="function"&&(TI===null?TI=new Set([this]):TI.add(this),BE(k,L));var nr=L.stack;this.componentDidCatch(L.value,{componentStack:nr!==null?nr:""})}),ee}var xR=typeof WeakSet=="function"?WeakSet:Set;function qT(k){var L=k.ref;if(L!==null)if(typeof L=="function")try{L(null)}catch(ee){Mc(k,ee)}else L.current=null}function m1(k,L){switch(L.tag){case 0:case 11:case 15:case 22:return;case 1:if(L.flags&256&&k!==null){var ee=k.memoizedProps,ve=k.memoizedState;k=L.stateNode,L=k.getSnapshotBeforeUpdate(L.elementType===L.type?ee:vp(L.type,ee),ve),k.__reactInternalSnapshotBeforeUpdate=L}return;case 3:Zi&&L.flags&256&&ts(L.stateNode.containerInfo);return;case 5:case 6:case 4:case 17:return}throw Error(g(163))}function jh(k,L){if(L=L.updateQueue,L=L!==null?L.lastEffect:null,L!==null){var ee=L=L.next;do{if((ee.tag&k)===k){var ve=ee.destroy;ee.destroy=void 0,ve!==void 0&&ve()}ee=ee.next}while(ee!==L)}}function Rb(k,L,ee){switch(ee.tag){case 0:case 11:case 15:case 22:if(L=ee.updateQueue,L=L!==null?L.lastEffect:null,L!==null){k=L=L.next;do{if((k.tag&3)===3){var ve=k.create;k.destroy=ve()}k=k.next}while(k!==L)}if(L=ee.updateQueue,L=L!==null?L.lastEffect:null,L!==null){k=L=L.next;do{var xe=k;ve=xe.next,xe=xe.tag,xe&4&&xe&1&&(q_(ee,k),xo(ee,k)),k=ve}while(k!==L)}return;case 1:k=ee.stateNode,ee.flags&4&&(L===null?k.componentDidMount():(ve=ee.elementType===ee.type?L.memoizedProps:vp(ee.type,L.memoizedProps),k.componentDidUpdate(ve,L.memoizedState,k.__reactInternalSnapshotBeforeUpdate))),L=ee.updateQueue,L!==null&&hE(ee,L,k);return;case 3:if(L=ee.updateQueue,L!==null){if(k=null,ee.child!==null)switch(ee.child.tag){case 5:k=er(ee.child.stateNode);break;case 1:k=ee.child.stateNode}hE(ee,L,k)}return;case 5:k=ee.stateNode,L===null&&ee.flags&4&&Hr(k,ee.type,ee.memoizedProps,ee);return;case 6:return;case 4:return;case 12:return;case 13:ka&&ee.memoizedState===null&&(ee=ee.alternate,ee!==null&&(ee=ee.memoizedState,ee!==null&&(ee=ee.dehydrated,ee!==null&&Hu(ee))));return;case 19:case 17:case 20:case 21:case 23:case 24:return}throw Error(g(163))}function Qw(k,L){if(Zi)for(var ee=k;;){if(ee.tag===5){var ve=ee.stateNode;L?Cg(ve):Cl(ee.stateNode,ee.memoizedProps)}else if(ee.tag===6)ve=ee.stateNode,L?Zu(ve):wi(ve,ee.memoizedProps);else if((ee.tag!==23&&ee.tag!==24||ee.memoizedState===null||ee===k)&&ee.child!==null){ee.child.return=ee,ee=ee.child;continue}if(ee===k)break;for(;ee.sibling===null;){if(ee.return===null||ee.return===k)return;ee=ee.return}ee.sibling.return=ee.return,ee=ee.sibling}}function An(k,L){if(Xa&&typeof Xa.onCommitFiberUnmount=="function")try{Xa.onCommitFiberUnmount(ys,L)}catch{}switch(L.tag){case 0:case 11:case 14:case 15:case 22:if(k=L.updateQueue,k!==null&&(k=k.lastEffect,k!==null)){var ee=k=k.next;do{var ve=ee,xe=ve.destroy;if(ve=ve.tag,xe!==void 0)if(ve&4)q_(L,ee);else{ve=L;try{xe()}catch(gt){Mc(ve,gt)}}ee=ee.next}while(ee!==k)}break;case 1:if(qT(L),k=L.stateNode,typeof k.componentWillUnmount=="function")try{k.props=L.memoizedProps,k.state=L.memoizedState,k.componentWillUnmount()}catch(gt){Mc(L,gt)}break;case 5:qT(L);break;case 4:Zi?$T(k,L):Za&&Za&&(L=L.stateNode.containerInfo,k=Ga(L),qo(L,k))}}function h1(k,L){for(var ee=L;;)if(An(k,ee),ee.child===null||Zi&&ee.tag===4){if(ee===L)break;for(;ee.sibling===null;){if(ee.return===null||ee.return===L)return;ee=ee.return}ee.sibling.return=ee.return,ee=ee.sibling}else ee.child.return=ee,ee=ee.child}function d2(k){k.alternate=null,k.child=null,k.dependencies=null,k.firstEffect=null,k.lastEffect=null,k.memoizedProps=null,k.memoizedState=null,k.pendingProps=null,k.return=null,k.updateQueue=null}function zh(k){return k.tag===5||k.tag===3||k.tag===4}function dp(k){if(Zi){e:{for(var L=k.return;L!==null;){if(zh(L))break e;L=L.return}throw Error(g(160))}var ee=L;switch(L=ee.stateNode,ee.tag){case 5:var ve=!1;break;case 3:L=L.containerInfo,ve=!0;break;case 4:L=L.containerInfo,ve=!0;break;default:throw Error(g(161))}ee.flags&16&&(Fu(L),ee.flags&=-17);e:t:for(ee=k;;){for(;ee.sibling===null;){if(ee.return===null||zh(ee.return)){ee=null;break e}ee=ee.return}for(ee.sibling.return=ee.return,ee=ee.sibling;ee.tag!==5&&ee.tag!==6&&ee.tag!==18;){if(ee.flags&2||ee.child===null||ee.tag===4)continue t;ee.child.return=ee,ee=ee.child}if(!(ee.flags&2)){ee=ee.stateNode;break e}}ve?Yw(k,ee,L):yS(k,ee,L)}}function Yw(k,L,ee){var ve=k.tag,xe=ve===5||ve===6;if(xe)k=xe?k.stateNode:k.stateNode.instance,L?ai(ee,k,L):Vn(ee,k);else if(ve!==4&&(k=k.child,k!==null))for(Yw(k,L,ee),k=k.sibling;k!==null;)Yw(k,L,ee),k=k.sibling}function yS(k,L,ee){var ve=k.tag,xe=ve===5||ve===6;if(xe)k=xe?k.stateNode:k.stateNode.instance,L?Ko(ee,k,L):Cn(ee,k);else if(ve!==4&&(k=k.child,k!==null))for(yS(k,L,ee),k=k.sibling;k!==null;)yS(k,L,ee),k=k.sibling}function $T(k,L){for(var ee=L,ve=!1,xe,gt;;){if(!ve){ve=ee.return;e:for(;;){if(ve===null)throw Error(g(160));switch(xe=ve.stateNode,ve.tag){case 5:gt=!1;break e;case 3:xe=xe.containerInfo,gt=!0;break e;case 4:xe=xe.containerInfo,gt=!0;break e}ve=ve.return}ve=!0}if(ee.tag===5||ee.tag===6)h1(k,ee),gt?sg(xe,ee.stateNode):pa(xe,ee.stateNode);else if(ee.tag===4){if(ee.child!==null){xe=ee.stateNode.containerInfo,gt=!0,ee.child.return=ee,ee=ee.child;continue}}else if(An(k,ee),ee.child!==null){ee.child.return=ee,ee=ee.child;continue}if(ee===L)break;for(;ee.sibling===null;){if(ee.return===null||ee.return===L)return;ee=ee.return,ee.tag===4&&(ve=!1)}ee.sibling.return=ee.return,ee=ee.sibling}}function Db(k,L){if(Zi){switch(L.tag){case 0:case 11:case 14:case 15:case 22:jh(3,L);return;case 1:return;case 5:var ee=L.stateNode;if(ee!=null){var ve=L.memoizedProps;k=k!==null?k.memoizedProps:ve;var xe=L.type,gt=L.updateQueue;L.updateQueue=null,gt!==null&&Ws(ee,gt,xe,k,ve,L)}return;case 6:if(L.stateNode===null)throw Error(g(162));ee=L.memoizedProps,Ji(L.stateNode,k!==null?k.memoizedProps:ee,ee);return;case 3:ka&&(L=L.stateNode,L.hydrate&&(L.hydrate=!1,kl(L.containerInfo)));return;case 12:return;case 13:eN(L),G0(L);return;case 19:G0(L);return;case 17:return;case 23:case 24:Qw(L,L.memoizedState!==null);return}throw Error(g(163))}switch(L.tag){case 0:case 11:case 14:case 15:case 22:jh(3,L);return;case 12:return;case 13:eN(L),G0(L);return;case 19:G0(L);return;case 3:ka&&(ee=L.stateNode,ee.hydrate&&(ee.hydrate=!1,kl(ee.containerInfo)));break;case 23:case 24:return}e:if(Za){switch(L.tag){case 1:case 5:case 6:case 20:break e;case 3:case 4:L=L.stateNode,qo(L.containerInfo,L.pendingChildren);break e}throw Error(g(163))}}function eN(k){k.memoizedState!==null&&(BS=Li(),Zi&&Qw(k.child,!0))}function G0(k){var L=k.updateQueue;if(L!==null){k.updateQueue=null;var ee=k.stateNode;ee===null&&(ee=k.stateNode=new xR),L.forEach(function(ve){var xe=SS.bind(null,k,ve);ee.has(ve)||(ee.add(ve),ve.then(xe,xe))})}}function iG(k,L){return k!==null&&(k=k.memoizedState,k===null||k.dehydrated!==null)?(L=L.memoizedState,L!==null&&L.dehydrated===null):!1}var _1=0,xb=1,Eh=2,y1=3,vE=4;if(typeof Symbol=="function"&&Symbol.for){var SE=Symbol.for;_1=SE("selector.component"),xb=SE("selector.has_pseudo_class"),Eh=SE("selector.role"),y1=SE("selector.test_id"),vE=SE("selector.text")}function bS(k){var L=Qs(k);if(L!=null){if(typeof L.memoizedProps["data-testname"]!="string")throw Error(g(364));return L}if(k=ud(k),k===null)throw Error(g(362));return k.stateNode.current}function Jy(k,L){switch(L.$$typeof){case _1:if(k.type===L.value)return!0;break;case xb:e:{L=L.value,k=[k,0];for(var ee=0;ee";case xb:return":has("+(qh(k)||"")+")";case Eh:return'[role="'+k.value+'"]';case vE:return'"'+k.value+'"';case y1:return'[data-testname="'+k.value+'"]';default:throw Error(g(365,k))}}function tN(k,L){var ee=[];k=[k,0];for(var ve=0;vexe&&(xe=nr),ee&=~gt}if(ee=xe,ee=Li()-ee,ee=(120>ee?120:480>ee?480:1080>ee?1080:1920>ee?1920:3e3>ee?3e3:4320>ee?4320:1960*fx(ee/1960))-ee,10";case Gb:return":has("+($h(G)||"")+")";case Bh:return'[role="'+G.value+'"]';case wE:return'"'+G.value+'"';case b1:return'[data-testname="'+G.value+'"]';default:throw Error(g(365,G))}}function rN(G,L){var ee=[];G=[G,0];for(var ve=0;vexe&&(xe=nr),ee&=~gt}if(ee=xe,ee=Li()-ee,ee=(120>ee?120:480>ee?480:1080>ee?1080:1920>ee?1920:3e3>ee?3e3:4320>ee?4320:1960*yx(ee/1960))-ee,10 component higher in the tree to provide a loading indicator or placeholder to display.`)}Pp!==5&&(Pp=2),Kn=Xy(Kn,Xr),Eo=nr;do{switch(Eo.tag){case 3:gt=Kn,Eo.flags|=4096,L&=-L,Eo.lanes|=L;var dA=Mw(Eo,gt,L);eI(Eo,dA);break e;case 1:gt=Kn;var pc=Eo.type,Xu=Eo.stateNode;if(!(Eo.flags&64)&&(typeof pc.getDerivedStateFromError=="function"||Xu!==null&&typeof Xu.componentDidCatch=="function"&&(TI===null||!TI.has(Xu)))){Eo.flags|=4096,L&=-L,Eo.lanes|=L;var Lu=hv(Eo,gt,L);eI(Eo,Lu);break e}}Eo=Eo.return}while(Eo!==null)}GR(ee)}catch(Rc){L=Rc,hd===ee&&ee!==null&&(hd=ee=ee.return);continue}break}while(!0)}function aa(){var k=Bh.current;return Bh.current=dc,k===null?dc:k}function xA(k,L){var ee=Wa;Wa|=16;var ve=aa();EA===k&&nI===L||z_(k,L);do try{cZ();break}catch(xe){e_(k,xe)}while(!0);if(uc(),Wa=ee,Bh.current=ve,hd!==null)throw Error(g(261));return EA=null,nI=0,Pp}function cZ(){for(;hd!==null;)wE(hd)}function kR(){for(;hd!==null&&!sp();)wE(hd)}function wE(k){var L=gA(k.alternate,k,F0);k.memoizedProps=k.pendingProps,L===null?GR(k):hd=L,nN.current=null}function GR(k){var L=k;do{var ee=L.alternate;if(k=L.return,L.flags&2048){if(ee=_S(L),ee!==null){ee.flags&=2047,hd=ee;return}k!==null&&(k.firstEffect=k.lastEffect=null,k.flags|=2048)}else{if(ee=hS(ee,L,F0),ee!==null){hd=ee;return}if(ee=L,ee.tag!==24&&ee.tag!==23||ee.memoizedState===null||F0&1073741824||!(ee.mode&4)){for(var ve=0,xe=ee.child;xe!==null;)ve|=xe.lanes|xe.childLanes,xe=xe.sibling;ee.childLanes=ve}k!==null&&!(k.flags&2048)&&(k.firstEffect===null&&(k.firstEffect=L.firstEffect),L.lastEffect!==null&&(k.lastEffect!==null&&(k.lastEffect.nextEffect=L.firstEffect),k.lastEffect=L.lastEffect),1Li()-BS?z_(k,0):p2|=ee),II(k,L)}function SS(k,L){var ee=k.stateNode;ee!==null&&ee.delete(L),L=0,L===0&&(L=k.mode,L&2?L&4?(qu===0&&(qu=dm),L=LA(62914560&~qu),L===0&&(L=4194304)):L=Zl()===99?1:2:L=1),ee=Sp(),k=V0(k,L),k!==null&&(za(k,L,ee),II(k,ee))}var gA;gA=function(k,L,ee){var ve=L.lanes;if(k!==null)if(k.memoizedProps!==L.pendingProps||bA.current)os=!0;else if(ee&ve)os=!!(k.flags&16384);else{switch(os=!1,L.tag){case 3:Pw(L),CB();break;case 5:D0(L);break;case 1:ec(L.type)&&Ud(L);break;case 4:tI(L,L.stateNode.containerInfo);break;case 10:b_(L,L.memoizedProps.value);break;case 13:if(L.memoizedState!==null)return ee&L.child.childLanes?C1(k,L,ee):(Hl(md,md.current&1),L=uA(k,L,ee),L!==null?L.sibling:null);Hl(md,md.current&1);break;case 19:if(ve=(ee&L.childLanes)!==0,k.flags&64){if(ve)return OI(k,L,ee);L.flags|=64}var xe=L.memoizedState;if(xe!==null&&(xe.rendering=null,xe.tail=null,xe.lastEffect=null),Hl(md,md.current),ve)break;return null;case 23:case 24:return L.lanes=0,rI(k,L,ee)}return uA(k,L,ee)}else os=!1;switch(L.lanes=0,L.tag){case 2:if(ve=L.type,k!==null&&(k.alternate=null,L.alternate=null,L.flags|=2),k=L.pendingProps,xe=Hi(L,Vd.current),uh(L,ee),xe=My(null,L,ve,k,xe,ee),L.flags|=1,typeof xe=="object"&&xe!==null&&typeof xe.render=="function"&&xe.$$typeof===void 0){if(L.tag=1,L.memoizedState=null,L.updateQueue=null,ec(ve)){var gt=!0;Ud(L)}else gt=!1;L.memoizedState=xe.state!==null&&xe.state!==void 0?xe.state:null,wb(L);var nr=ve.getDerivedStateFromProps;typeof nr=="function"&&ie(L,ve,nr,k),xe.updater=w,L.stateNode=xe,xe._reactInternals=L,zt(L,ve,k,ee),L=Cv(null,L,ve,!0,gt,ee)}else L.tag=0,wo(null,L,xe,ee),L=L.child;return L;case 16:xe=L.elementType;e:{switch(k!==null&&(k.alternate=null,L.alternate=null,L.flags|=2),k=L.pendingProps,gt=xe._init,xe=gt(xe._payload),L.type=xe,gt=L.tag=Bg(xe),k=vp(xe,k),gt){case 0:L=Nb(null,L,xe,k,ee);break e;case 1:L=zT(null,L,xe,k,ee);break e;case 11:L=fg(null,L,xe,k,ee);break e;case 14:L=mg(null,L,xe,vp(xe.type,k),ve,ee);break e}throw Error(g(306,xe,""))}return L;case 0:return ve=L.type,xe=L.pendingProps,xe=L.elementType===ve?xe:vp(ve,xe),Nb(k,L,ve,xe,ee);case 1:return ve=L.type,xe=L.pendingProps,xe=L.elementType===ve?xe:vp(ve,xe),zT(k,L,ve,xe,ee);case 3:if(Pw(L),ve=L.updateQueue,k===null||ve===null)throw Error(g(282));if(ve=L.pendingProps,xe=L.memoizedState,xe=xe!==null?xe.element:null,Rm(k,L),Zf(L,ve,null,ee),ve=L.memoizedState.element,ve===xe)CB(),L=uA(k,L,ee);else{if(xe=L.stateNode,(gt=xe.hydrate)&&(ka?(Uh=Td(L.stateNode.containerInfo),Bf=L,gt=Ym=!0):gt=!1),gt){if(ka&&(k=xe.mutableSourceEagerHydrationData,k!=null))for(xe=0;xe=to&>>=el&&xe<=Fa&&nr<=Eo){k.splice(L,1);break}else if(ve!==to||ee.width!==Kn.width||Eonr){if(!(gt!==el||ee.height!==Kn.height||Faxe)){to>ve&&(Kn.width+=to-ve,Kn.x=ve),Fagt&&(Kn.height+=el-gt,Kn.y=gt),Eoee&&(ee=nr)),nr component higher in the tree to provide a loading indicator or placeholder to display.`)}Op!==5&&(Op=2),Kn=Jy(Kn,Xr),bo=nr;do{switch(bo.tag){case 3:gt=Kn,bo.flags|=4096,L&=-L,bo.lanes|=L;var pA=Mw(bo,gt,L);tI(bo,pA);break e;case 1:gt=Kn;var fc=bo.type,Ju=bo.stateNode;if(!(bo.flags&64)&&(typeof fc.getDerivedStateFromError=="function"||Ju!==null&&typeof Ju.componentDidCatch=="function"&&(NI===null||!NI.has(Ju)))){bo.flags|=4096,L&=-L,bo.lanes|=L;var Vu=_v(bo,gt,L);tI(bo,Vu);break e}}bo=bo.return}while(bo!==null)}LR(ee)}catch(Dc){L=Dc,_d===ee&&ee!==null&&(_d=ee=ee.return);continue}break}while(!0)}function oa(){var G=vh.current;return vh.current=pc,G===null?pc:G}function kA(G,L){var ee=Va;Va|=16;var ve=oa();BA===G&&iI===L||q_(G,L);do try{lZ();break}catch(xe){t_(G,xe)}while(!0);if(uc(),Va=ee,vh.current=ve,_d!==null)throw Error(g(261));return BA=null,iI=0,Op}function lZ(){for(;_d!==null;)NE(_d)}function ZR(){for(;_d!==null&&!op();)NE(_d)}function NE(G){var L=AA(G.alternate,G,Z0);G.memoizedProps=G.pendingProps,L===null?LR(G):_d=L,iN.current=null}function LR(G){var L=G;do{var ee=L.alternate;if(G=L.return,L.flags&2048){if(ee=yS(L),ee!==null){ee.flags&=2047,_d=ee;return}G!==null&&(G.firstEffect=G.lastEffect=null,G.flags|=2048)}else{if(ee=_S(ee,L,Z0),ee!==null){_d=ee;return}if(ee=L,ee.tag!==24&&ee.tag!==23||ee.memoizedState===null||Z0&1073741824||!(ee.mode&4)){for(var ve=0,xe=ee.child;xe!==null;)ve|=xe.lanes|xe.childLanes,xe=xe.sibling;ee.childLanes=ve}G!==null&&!(G.flags&2048)&&(G.firstEffect===null&&(G.firstEffect=L.firstEffect),L.lastEffect!==null&&(G.lastEffect!==null&&(G.lastEffect.nextEffect=L.firstEffect),G.lastEffect=L.lastEffect),1Li()-vS?q_(G,0):f2|=ee),CI(G,L)}function wS(G,L){var ee=G.stateNode;ee!==null&&ee.delete(L),L=0,L===0&&(L=G.mode,L&2?L&4?($u===0&&($u=pm),L=VA(62914560&~$u),L===0&&(L=4194304)):L=Ll()===99?1:2:L=1),ee=wp(),G=W0(G,L),G!==null&&(ja(G,L,ee),CI(G,ee))}var AA;AA=function(G,L,ee){var ve=L.lanes;if(G!==null)if(G.memoizedProps!==L.pendingProps||EA.current)os=!0;else if(ee&ve)os=!!(G.flags&16384);else{switch(os=!1,L.tag){case 3:Ow(L),hB();break;case 5:x0(L);break;case 1:ec(L.type)&&Kd(L);break;case 4:rI(L,L.stateNode.containerInfo);break;case 10:E_(L,L.memoizedProps.value);break;case 13:if(L.memoizedState!==null)return ee&L.child.childLanes?m1(G,L,ee):(Xl(hd,hd.current&1),L=gA(G,L,ee),L!==null?L.sibling:null);Xl(hd,hd.current&1);break;case 19:if(ve=(ee&L.childLanes)!==0,G.flags&64){if(ve)return QI(G,L,ee);L.flags|=64}var xe=L.memoizedState;if(xe!==null&&(xe.rendering=null,xe.tail=null,xe.lastEffect=null),Xl(hd,hd.current),ve)break;return null;case 23:case 24:return L.lanes=0,nI(G,L,ee)}return gA(G,L,ee)}else os=!1;switch(L.lanes=0,L.tag){case 2:if(ve=L.type,G!==null&&(G.alternate=null,L.alternate=null,L.flags|=2),G=L.pendingProps,xe=Yi(L,Wd.current),gh(L,ee),xe=My(null,L,ve,G,xe,ee),L.flags|=1,typeof xe=="object"&&xe!==null&&typeof xe.render=="function"&&xe.$$typeof===void 0){if(L.tag=1,L.memoizedState=null,L.updateQueue=null,ec(ve)){var gt=!0;Kd(L)}else gt=!1;L.memoizedState=xe.state!==null&&xe.state!==void 0?xe.state:null,Nb(L);var nr=ve.getDerivedStateFromProps;typeof nr=="function"&&ie(L,ve,nr,G),xe.updater=w,L.stateNode=xe,xe._reactInternals=L,zt(L,ve,G,ee),L=mv(null,L,ve,!0,gt,ee)}else L.tag=0,So(null,L,xe,ee),L=L.child;return L;case 16:xe=L.elementType;e:{switch(G!==null&&(G.alternate=null,L.alternate=null,L.flags|=2),G=L.pendingProps,gt=xe._init,xe=gt(xe._payload),L.type=xe,gt=L.tag=vg(xe),G=Sp(xe,G),gt){case 0:L=Db(null,L,xe,G,ee);break e;case 1:L=qT(null,L,xe,G,ee);break e;case 11:L=Ig(null,L,xe,G,ee);break e;case 14:L=hg(null,L,xe,Sp(xe.type,G),ve,ee);break e}throw Error(g(306,xe,""))}return L;case 0:return ve=L.type,xe=L.pendingProps,xe=L.elementType===ve?xe:Sp(ve,xe),Db(G,L,ve,xe,ee);case 1:return ve=L.type,xe=L.pendingProps,xe=L.elementType===ve?xe:Sp(ve,xe),qT(G,L,ve,xe,ee);case 3:if(Ow(L),ve=L.updateQueue,G===null||ve===null)throw Error(g(282));if(ve=L.pendingProps,xe=L.memoizedState,xe=xe!==null?xe.element:null,Dm(G,L),Lf(L,ve,null,ee),ve=L.memoizedState.element,ve===xe)hB(),L=gA(G,L,ee);else{if(xe=L.stateNode,(gt=xe.hydrate)&&(xa?(Kh=Nd(L.stateNode.containerInfo),vf=L,gt=Ym=!0):gt=!1),gt){if(xa&&(G=xe.mutableSourceEagerHydrationData,G!=null))for(xe=0;xe=eo&>>=tl&&xe<=Ga&&nr<=bo){G.splice(L,1);break}else if(ve!==eo||ee.width!==Kn.width||bonr){if(!(gt!==tl||ee.height!==Kn.height||Gaxe)){eo>ve&&(Kn.width+=eo-ve,Kn.x=ve),Gagt&&(Kn.height+=tl-gt,Kn.y=gt),boee&&(ee=nr)),nr ")+` No matching component was found for: - `)+k.join(" > ")}return null},r.getPublicRootInstance=function(k){if(k=k.current,!k.child)return null;switch(k.child.tag){case 5:return er(k.child.stateNode);default:return k.child.stateNode}},r.injectIntoDevTools=function(k){if(k={bundleType:k.bundleType,version:k.version,rendererPackageName:k.rendererPackageName,rendererConfig:k.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:p.ReactCurrentDispatcher,findHostInstanceByFiber:MI,findFiberByHostInstance:k.findFiberByHostInstance||FR,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")k=!1;else{var L=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!L.isDisabled&&L.supportsFiber)try{ys=L.inject(k),Xa=L}catch{}k=!0}return k},r.observeVisibleRects=function(k,L,ee,ve){if(!YA)throw Error(g(363));k=_v(k,L);var xe=nn(k,ee,ve).disconnect;return{disconnect:function(){xe()}}},r.registerMutableSourceForHydration=function(k,L){var ee=L._getVersion;ee=ee(L._source),k.mutableSourceEagerHydrationData==null?k.mutableSourceEagerHydrationData=[L,ee]:k.mutableSourceEagerHydrationData.push(L,ee)},r.runWithPriority=function(k,L){var ee=eo;try{return eo=k,L()}finally{eo=ee}},r.shouldSuspend=function(){return!1},r.unbatchedUpdates=function(k,L){var ee=Wa;Wa&=-2,Wa|=8;try{return k(L)}finally{Wa=ee,Wa===0&&(vh(),pl())}},r.updateContainer=function(k,L,ee,ve){var xe=L.current,gt=Sp(),nr=eC(xe);e:if(ee){ee=ee._reactInternals;t:{if(et(ee)!==ee||ee.tag!==1)throw Error(g(170));var Xr=ee;do{switch(Xr.tag){case 3:Xr=Xr.stateNode.context;break t;case 1:if(ec(Xr.type)){Xr=Xr.stateNode.__reactInternalMemoizedMergedChildContext;break t}}Xr=Xr.return}while(Xr!==null);throw Error(g(171))}if(ee.tag===1){var Kn=ee.type;if(ec(Kn)){ee=NA(ee,Kn,Xr);break e}}ee=Xr}else ee=Ff;return L.context===null?L.context=ee:L.pendingContext=ee,L=PI(gt,nr),L.payload={element:k},ve=ve===void 0?null:ve,ve!==null&&(L.callback=ve),Ef(xe,L),yd(xe,nr,gt),nr},r}});var m1n=z((a4c,C1n)=>{"use strict";C1n.exports=I1n()});var _1n=z((c4c,h1n)=>{"use strict";var zro={ALIGN_COUNT:8,ALIGN_AUTO:0,ALIGN_FLEX_START:1,ALIGN_CENTER:2,ALIGN_FLEX_END:3,ALIGN_STRETCH:4,ALIGN_BASELINE:5,ALIGN_SPACE_BETWEEN:6,ALIGN_SPACE_AROUND:7,DIMENSION_COUNT:2,DIMENSION_WIDTH:0,DIMENSION_HEIGHT:1,DIRECTION_COUNT:3,DIRECTION_INHERIT:0,DIRECTION_LTR:1,DIRECTION_RTL:2,DISPLAY_COUNT:2,DISPLAY_FLEX:0,DISPLAY_NONE:1,EDGE_COUNT:9,EDGE_LEFT:0,EDGE_TOP:1,EDGE_RIGHT:2,EDGE_BOTTOM:3,EDGE_START:4,EDGE_END:5,EDGE_HORIZONTAL:6,EDGE_VERTICAL:7,EDGE_ALL:8,EXPERIMENTAL_FEATURE_COUNT:1,EXPERIMENTAL_FEATURE_WEB_FLEX_BASIS:0,FLEX_DIRECTION_COUNT:4,FLEX_DIRECTION_COLUMN:0,FLEX_DIRECTION_COLUMN_REVERSE:1,FLEX_DIRECTION_ROW:2,FLEX_DIRECTION_ROW_REVERSE:3,JUSTIFY_COUNT:6,JUSTIFY_FLEX_START:0,JUSTIFY_CENTER:1,JUSTIFY_FLEX_END:2,JUSTIFY_SPACE_BETWEEN:3,JUSTIFY_SPACE_AROUND:4,JUSTIFY_SPACE_EVENLY:5,LOG_LEVEL_COUNT:6,LOG_LEVEL_ERROR:0,LOG_LEVEL_WARN:1,LOG_LEVEL_INFO:2,LOG_LEVEL_DEBUG:3,LOG_LEVEL_VERBOSE:4,LOG_LEVEL_FATAL:5,MEASURE_MODE_COUNT:3,MEASURE_MODE_UNDEFINED:0,MEASURE_MODE_EXACTLY:1,MEASURE_MODE_AT_MOST:2,NODE_TYPE_COUNT:2,NODE_TYPE_DEFAULT:0,NODE_TYPE_TEXT:1,OVERFLOW_COUNT:3,OVERFLOW_VISIBLE:0,OVERFLOW_HIDDEN:1,OVERFLOW_SCROLL:2,POSITION_TYPE_COUNT:2,POSITION_TYPE_RELATIVE:0,POSITION_TYPE_ABSOLUTE:1,PRINT_OPTIONS_COUNT:3,PRINT_OPTIONS_LAYOUT:1,PRINT_OPTIONS_STYLE:2,PRINT_OPTIONS_CHILDREN:4,UNIT_COUNT:4,UNIT_UNDEFINED:0,UNIT_POINT:1,UNIT_PERCENT:2,UNIT_AUTO:3,WRAP_COUNT:3,WRAP_NO_WRAP:0,WRAP_WRAP:1,WRAP_WRAP_REVERSE:2};h1n.exports=zro});var B1n=z((l4c,E1n)=>{"use strict";var qro=Object.assign||function(e){for(var t=1;t"}}]),e}(),y1n=function(){yct(e,null,[{key:"fromJS",value:function(r){var s=r.width,a=r.height;return new e(s,a)}}]);function e(t,r){P7t(this,e),this.width=t,this.height=r}return yct(e,[{key:"fromJS",value:function(r){r(this.width,this.height)}},{key:"toString",value:function(){return""}}]),e}(),b1n=function(){function e(t,r){P7t(this,e),this.unit=t,this.value=r}return yct(e,[{key:"fromJS",value:function(r){r(this.unit,this.value)}},{key:"toString",value:function(){switch(this.unit){case RH.UNIT_POINT:return String(this.value);case RH.UNIT_PERCENT:return this.value+"%";case RH.UNIT_AUTO:return"auto";default:return this.value+"?"}}},{key:"valueOf",value:function(){return this.value}}]),e}();E1n.exports=function(e,t){function r(g,p,f){var m=g[p];g[p]=function(){for(var y=arguments.length,B=Array(y),v=0;v1?B-1:0),G=1;G1&&arguments[1]!==void 0?arguments[1]:NaN,f=arguments.length>2&&arguments[2]!==void 0?arguments[2]:NaN,m=arguments.length>3&&arguments[3]!==void 0?arguments[3]:RH.DIRECTION_LTR;return g.call(this,p,f,m)}),qro({Config:t.Config,Node:t.Node,Layout:e("Layout",$ro),Size:e("Size",y1n),Value:e("Value",b1n),getInstanceCount:function(){return t.getInstanceCount.apply(t,arguments)}},RH)}});var v1n=z((exports,module)=>{(function(e,t){typeof define=="function"&&define.amd?define([],function(){return t}):typeof module=="object"&&module.exports?module.exports=t:(e.nbind=e.nbind||{}).init=t})(exports,function(Module,cb){typeof Module=="function"&&(cb=Module,Module={}),Module.onRuntimeInitialized=function(e,t){return function(){e&&e.apply(this,arguments);try{Module.ccall("nbind_init")}catch(r){t(r);return}t(null,{bind:Module._nbind_value,reflect:Module.NBind.reflect,queryType:Module.NBind.queryType,toggleLightGC:Module.toggleLightGC,lib:Module})}}(Module.onRuntimeInitialized,cb);var Module;Module||(Module=(typeof Module<"u"?Module:null)||{});var moduleOverrides={};for(var key in Module)Module.hasOwnProperty(key)&&(moduleOverrides[key]=Module[key]);var ENVIRONMENT_IS_WEB=!1,ENVIRONMENT_IS_WORKER=!1,ENVIRONMENT_IS_NODE=!1,ENVIRONMENT_IS_SHELL=!1;if(Module.ENVIRONMENT)if(Module.ENVIRONMENT==="WEB")ENVIRONMENT_IS_WEB=!0;else if(Module.ENVIRONMENT==="WORKER")ENVIRONMENT_IS_WORKER=!0;else if(Module.ENVIRONMENT==="NODE")ENVIRONMENT_IS_NODE=!0;else if(Module.ENVIRONMENT==="SHELL")ENVIRONMENT_IS_SHELL=!0;else throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.");else ENVIRONMENT_IS_WEB=typeof window=="object",ENVIRONMENT_IS_WORKER=typeof importScripts=="function",ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof Dt=="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER,ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){Module.print||(Module.print=console.log),Module.printErr||(Module.printErr=console.warn);var nodeFS,nodePath;Module.read=function(t,r){nodeFS||(nodeFS={}("")),nodePath||(nodePath={}("")),t=nodePath.normalize(t);var s=nodeFS.readFileSync(t);return r?s:s.toString()},Module.readBinary=function(t){var r=Module.read(t,!0);return r.buffer||(r=new Uint8Array(r)),assert(r.buffer),r},Module.load=function(t){globalEval(read(t))},Module.thisProgram||(process.argv.length>1?Module.thisProgram=process.argv[1].replace(/\\/g,"/"):Module.thisProgram="unknown-program"),Module.arguments=process.argv.slice(2),typeof module<"u"&&(module.exports=Module),process.on("uncaughtException",function(e){if(!(e instanceof ExitStatus))throw e}),Module.inspect=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL)Module.print||(Module.print=print),typeof printErr<"u"&&(Module.printErr=printErr),typeof read<"u"?Module.read=read:Module.read=function(){throw"no read() available"},Module.readBinary=function(t){if(typeof readbuffer=="function")return new Uint8Array(readbuffer(t));var r=read(t,"binary");return assert(typeof r=="object"),r},typeof scriptArgs<"u"?Module.arguments=scriptArgs:typeof arguments<"u"&&(Module.arguments=arguments),typeof quit=="function"&&(Module.quit=function(e,t){quit(e)});else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(Module.read=function(t){var r=new XMLHttpRequest;return r.open("GET",t,!1),r.send(null),r.responseText},ENVIRONMENT_IS_WORKER&&(Module.readBinary=function(t){var r=new XMLHttpRequest;return r.open("GET",t,!1),r.responseType="arraybuffer",r.send(null),new Uint8Array(r.response)}),Module.readAsync=function(t,r,s){var a=new XMLHttpRequest;a.open("GET",t,!0),a.responseType="arraybuffer",a.onload=function(){a.status==200||a.status==0&&a.response?r(a.response):s()},a.onerror=s,a.send(null)},typeof arguments<"u"&&(Module.arguments=arguments),typeof console<"u")Module.print||(Module.print=function(t){console.log(t)}),Module.printErr||(Module.printErr=function(t){console.warn(t)});else{var TRY_USE_DUMP=!1;Module.print||(Module.print=TRY_USE_DUMP&&typeof dump<"u"?function(e){dump(e)}:function(e){})}ENVIRONMENT_IS_WORKER&&(Module.load=importScripts),typeof Module.setWindowTitle>"u"&&(Module.setWindowTitle=function(e){document.title=e})}else throw"Unknown runtime environment. Where are we?";function globalEval(e){eval.call(null,e)}!Module.load&&Module.read&&(Module.load=function(t){globalEval(Module.read(t))}),Module.print||(Module.print=function(){}),Module.printErr||(Module.printErr=Module.print),Module.arguments||(Module.arguments=[]),Module.thisProgram||(Module.thisProgram="./this.program"),Module.quit||(Module.quit=function(e,t){throw t}),Module.print=Module.print,Module.printErr=Module.printErr,Module.preRun=[],Module.postRun=[];for(var key in moduleOverrides)moduleOverrides.hasOwnProperty(key)&&(Module[key]=moduleOverrides[key]);moduleOverrides=void 0;var Runtime={setTempRet0:function(e){return tempRet0=e,e},getTempRet0:function(){return tempRet0},stackSave:function(){return STACKTOP},stackRestore:function(e){STACKTOP=e},getNativeTypeSize:function(e){switch(e){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(e[e.length-1]==="*")return Runtime.QUANTUM_SIZE;if(e[0]==="i"){var t=parseInt(e.substr(1));return assert(t%8===0),t/8}else return 0}}},getNativeFieldSize:function(e){return Math.max(Runtime.getNativeTypeSize(e),Runtime.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(e,t){return t==="double"||t==="i64"?e&7&&(assert((e&7)===4),e+=4):assert((e&3)===0),e},getAlignSize:function(e,t,r){return!r&&(e=="i64"||e=="double")?8:e?Math.min(t||(e?Runtime.getNativeFieldSize(e):0),Runtime.QUANTUM_SIZE):Math.min(t,8)},dynCall:function(e,t,r){return r&&r.length?Module["dynCall_"+e].apply(null,[t].concat(r)):Module["dynCall_"+e].call(null,t)},functionPointers:[],addFunction:function(e){for(var t=0;t>2],r=(t+e+15|0)&-16;if(HEAP32[DYNAMICTOP_PTR>>2]=r,r>=TOTAL_MEMORY){var s=enlargeMemory();if(!s)return HEAP32[DYNAMICTOP_PTR>>2]=t,0}return t},alignMemory:function(e,t){var r=e=Math.ceil(e/(t||16))*(t||16);return r},makeBigInt:function(e,t,r){var s=r?+(e>>>0)+ +(t>>>0)*4294967296:+(e>>>0)+ +(t|0)*4294967296;return s},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module.Runtime=Runtime;var ABORT=0,EXITSTATUS=0;function assert(e,t){e||abort("Assertion failed: "+t)}function getCFunc(ident){var func=Module["_"+ident];if(!func)try{func=eval("_"+ident)}catch(e){}return assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)"),func}var cwrap,ccall;(function(){var JSfuncs={stackSave:function(){Runtime.stackSave()},stackRestore:function(){Runtime.stackRestore()},arrayToC:function(e){var t=Runtime.stackAlloc(e.length);return writeArrayToMemory(e,t),t},stringToC:function(e){var t=0;if(e!=null&&e!==0){var r=(e.length<<2)+1;t=Runtime.stackAlloc(r),stringToUTF8(e,t,r)}return t}},toC={string:JSfuncs.stringToC,array:JSfuncs.arrayToC};ccall=function(t,r,s,a,o){var g=getCFunc(t),p=[],f=0;if(a)for(var m=0;m>0]=t;break;case"i8":HEAP8[e>>0]=t;break;case"i16":HEAP16[e>>1]=t;break;case"i32":HEAP32[e>>2]=t;break;case"i64":tempI64=[t>>>0,(tempDouble=t,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[e>>2]=tempI64[0],HEAP32[e+4>>2]=tempI64[1];break;case"float":HEAPF32[e>>2]=t;break;case"double":HEAPF64[e>>3]=t;break;default:abort("invalid type for setValue: "+r)}}Module.setValue=setValue;function getValue(e,t,r){switch(t=t||"i8",t.charAt(t.length-1)==="*"&&(t="i32"),t){case"i1":return HEAP8[e>>0];case"i8":return HEAP8[e>>0];case"i16":return HEAP16[e>>1];case"i32":return HEAP32[e>>2];case"i64":return HEAP32[e>>2];case"float":return HEAPF32[e>>2];case"double":return HEAPF64[e>>3];default:abort("invalid type for setValue: "+t)}return null}Module.getValue=getValue;var ALLOC_NORMAL=0,ALLOC_STACK=1,ALLOC_STATIC=2,ALLOC_DYNAMIC=3,ALLOC_NONE=4;Module.ALLOC_NORMAL=ALLOC_NORMAL,Module.ALLOC_STACK=ALLOC_STACK,Module.ALLOC_STATIC=ALLOC_STATIC,Module.ALLOC_DYNAMIC=ALLOC_DYNAMIC,Module.ALLOC_NONE=ALLOC_NONE;function allocate(e,t,r,s){var a,o;typeof e=="number"?(a=!0,o=e):(a=!1,o=e.length);var g=typeof t=="string"?t:null,p;if(r==ALLOC_NONE?p=s:p=[typeof _malloc=="function"?_malloc:Runtime.staticAlloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][r===void 0?ALLOC_STATIC:r](Math.max(o,g?1:t.length)),a){var s=p,f;for(assert((p&3)==0),f=p+(o&-4);s>2]=0;for(f=p+o;s>0]=0;return p}if(g==="i8")return e.subarray||e.slice?HEAPU8.set(e,p):HEAPU8.set(new Uint8Array(e),p),p;for(var m=0,y,B,v;m>0],r|=s,!(s==0&&!t||(a++,t&&a==t)););t||(t=a);var o="";if(r<128){for(var g=1024,p;t>0;)p=String.fromCharCode.apply(String,HEAPU8.subarray(e,e+Math.min(t,g))),o=o?o+p:p,e+=g,t-=g;return o}return Module.UTF8ToString(e)}Module.Pointer_stringify=Pointer_stringify;function AsciiToString(e){for(var t="";;){var r=HEAP8[e++>>0];if(!r)return t;t+=String.fromCharCode(r)}}Module.AsciiToString=AsciiToString;function stringToAscii(e,t){return writeAsciiToMemory(e,t,!1)}Module.stringToAscii=stringToAscii;var UTF8Decoder=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function UTF8ArrayToString(e,t){for(var r=t;e[r];)++r;if(r-t>16&&e.subarray&&UTF8Decoder)return UTF8Decoder.decode(e.subarray(t,r));for(var s,a,o,g,p,f,m="";;){if(s=e[t++],!s)return m;if(!(s&128)){m+=String.fromCharCode(s);continue}if(a=e[t++]&63,(s&224)==192){m+=String.fromCharCode((s&31)<<6|a);continue}if(o=e[t++]&63,(s&240)==224?s=(s&15)<<12|a<<6|o:(g=e[t++]&63,(s&248)==240?s=(s&7)<<18|a<<12|o<<6|g:(p=e[t++]&63,(s&252)==248?s=(s&3)<<24|a<<18|o<<12|g<<6|p:(f=e[t++]&63,s=(s&1)<<30|a<<24|o<<18|g<<12|p<<6|f))),s<65536)m+=String.fromCharCode(s);else{var y=s-65536;m+=String.fromCharCode(55296|y>>10,56320|y&1023)}}}Module.UTF8ArrayToString=UTF8ArrayToString;function UTF8ToString(e){return UTF8ArrayToString(HEAPU8,e)}Module.UTF8ToString=UTF8ToString;function stringToUTF8Array(e,t,r,s){if(!(s>0))return 0;for(var a=r,o=r+s-1,g=0;g=55296&&p<=57343&&(p=65536+((p&1023)<<10)|e.charCodeAt(++g)&1023),p<=127){if(r>=o)break;t[r++]=p}else if(p<=2047){if(r+1>=o)break;t[r++]=192|p>>6,t[r++]=128|p&63}else if(p<=65535){if(r+2>=o)break;t[r++]=224|p>>12,t[r++]=128|p>>6&63,t[r++]=128|p&63}else if(p<=2097151){if(r+3>=o)break;t[r++]=240|p>>18,t[r++]=128|p>>12&63,t[r++]=128|p>>6&63,t[r++]=128|p&63}else if(p<=67108863){if(r+4>=o)break;t[r++]=248|p>>24,t[r++]=128|p>>18&63,t[r++]=128|p>>12&63,t[r++]=128|p>>6&63,t[r++]=128|p&63}else{if(r+5>=o)break;t[r++]=252|p>>30,t[r++]=128|p>>24&63,t[r++]=128|p>>18&63,t[r++]=128|p>>12&63,t[r++]=128|p>>6&63,t[r++]=128|p&63}}return t[r]=0,r-a}Module.stringToUTF8Array=stringToUTF8Array;function stringToUTF8(e,t,r){return stringToUTF8Array(e,HEAPU8,t,r)}Module.stringToUTF8=stringToUTF8;function lengthBytesUTF8(e){for(var t=0,r=0;r=55296&&s<=57343&&(s=65536+((s&1023)<<10)|e.charCodeAt(++r)&1023),s<=127?++t:s<=2047?t+=2:s<=65535?t+=3:s<=2097151?t+=4:s<=67108863?t+=5:t+=6}return t}Module.lengthBytesUTF8=lengthBytesUTF8;var UTF16Decoder=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0;function demangle(e){var t=Module.___cxa_demangle||Module.__cxa_demangle;if(t){try{var r=e.substr(1),s=lengthBytesUTF8(r)+1,a=_malloc(s);stringToUTF8(r,a,s);var o=_malloc(4),g=t(a,0,0,o);if(getValue(o,"i32")===0&&g)return Pointer_stringify(g)}catch{}finally{a&&_free(a),o&&_free(o),g&&_free(g)}return e}return Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),e}function demangleAll(e){var t=/__Z[\w\d_]+/g;return e.replace(t,function(r){var s=demangle(r);return r===s?r:r+" ["+s+"]"})}function jsStackTrace(){var e=new Error;if(!e.stack){try{throw new Error(0)}catch(t){e=t}if(!e.stack)return"(no stack trace available)"}return e.stack.toString()}function stackTrace(){var e=jsStackTrace();return Module.extraStackTrace&&(e+=` -`+Module.extraStackTrace()),demangleAll(e)}Module.stackTrace=stackTrace;var HEAP,buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module.HEAP8=HEAP8=new Int8Array(buffer),Module.HEAP16=HEAP16=new Int16Array(buffer),Module.HEAP32=HEAP32=new Int32Array(buffer),Module.HEAPU8=HEAPU8=new Uint8Array(buffer),Module.HEAPU16=HEAPU16=new Uint16Array(buffer),Module.HEAPU32=HEAPU32=new Uint32Array(buffer),Module.HEAPF32=HEAPF32=new Float32Array(buffer),Module.HEAPF64=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed,STACK_BASE,STACKTOP,STACK_MAX,DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0,staticSealed=!1;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module.TOTAL_STACK||5242880,TOTAL_MEMORY=Module.TOTAL_MEMORY||134217728;TOTAL_MEMORY0;){var t=e.shift();if(typeof t=="function"){t();continue}var r=t.func;typeof r=="number"?t.arg===void 0?Module.dynCall_v(r):Module.dynCall_vi(r,t.arg):r(t.arg===void 0?null:t.arg)}}var __ATPRERUN__=[],__ATINIT__=[],__ATMAIN__=[],__ATEXIT__=[],__ATPOSTRUN__=[],runtimeInitialized=!1,runtimeExited=!1;function preRun(){if(Module.preRun)for(typeof Module.preRun=="function"&&(Module.preRun=[Module.preRun]);Module.preRun.length;)addOnPreRun(Module.preRun.shift());callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){runtimeInitialized||(runtimeInitialized=!0,callRuntimeCallbacks(__ATINIT__))}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__),runtimeExited=!0}function postRun(){if(Module.postRun)for(typeof Module.postRun=="function"&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(e){__ATPRERUN__.unshift(e)}Module.addOnPreRun=addOnPreRun;function addOnInit(e){__ATINIT__.unshift(e)}Module.addOnInit=addOnInit;function addOnPreMain(e){__ATMAIN__.unshift(e)}Module.addOnPreMain=addOnPreMain;function addOnExit(e){__ATEXIT__.unshift(e)}Module.addOnExit=addOnExit;function addOnPostRun(e){__ATPOSTRUN__.unshift(e)}Module.addOnPostRun=addOnPostRun;function intArrayFromString(e,t,r){var s=r>0?r:lengthBytesUTF8(e)+1,a=new Array(s),o=stringToUTF8Array(e,a,0,a.length);return t&&(a.length=o),a}Module.intArrayFromString=intArrayFromString;function intArrayToString(e){for(var t=[],r=0;r255&&(s&=255),t.push(String.fromCharCode(s))}return t.join("")}Module.intArrayToString=intArrayToString;function writeStringToMemory(e,t,r){Runtime.warnOnce("writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!");var s,a;r&&(a=t+lengthBytesUTF8(e),s=HEAP8[a]),stringToUTF8(e,t,1/0),r&&(HEAP8[a]=s)}Module.writeStringToMemory=writeStringToMemory;function writeArrayToMemory(e,t){HEAP8.set(e,t)}Module.writeArrayToMemory=writeArrayToMemory;function writeAsciiToMemory(e,t,r){for(var s=0;s>0]=e.charCodeAt(s);r||(HEAP8[t>>0]=0)}if(Module.writeAsciiToMemory=writeAsciiToMemory,(!Math.imul||Math.imul(4294967295,5)!==-5)&&(Math.imul=function e(t,r){var s=t>>>16,a=t&65535,o=r>>>16,g=r&65535;return a*g+(s*g+a*o<<16)|0}),Math.imul=Math.imul,!Math.fround){var froundBuffer=new Float32Array(1);Math.fround=function(e){return froundBuffer[0]=e,froundBuffer[0]}}Math.fround=Math.fround,Math.clz32||(Math.clz32=function(e){e=e>>>0;for(var t=0;t<32;t++)if(e&1<<31-t)return t;return 32}),Math.clz32=Math.clz32,Math.trunc||(Math.trunc=function(e){return e<0?Math.ceil(e):Math.floor(e)}),Math.trunc=Math.trunc;var Math_abs=Math.abs,Math_cos=Math.cos,Math_sin=Math.sin,Math_tan=Math.tan,Math_acos=Math.acos,Math_asin=Math.asin,Math_atan=Math.atan,Math_atan2=Math.atan2,Math_exp=Math.exp,Math_log=Math.log,Math_sqrt=Math.sqrt,Math_ceil=Math.ceil,Math_floor=Math.floor,Math_pow=Math.pow,Math_imul=Math.imul,Math_fround=Math.fround,Math_round=Math.round,Math_min=Math.min,Math_clz32=Math.clz32,Math_trunc=Math.trunc,runDependencies=0,runDependencyWatcher=null,dependenciesFulfilled=null;function getUniqueRunDependency(e){return e}function addRunDependency(e){runDependencies++,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies)}Module.addRunDependency=addRunDependency;function removeRunDependency(e){if(runDependencies--,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies),runDependencies==0&&(runDependencyWatcher!==null&&(clearInterval(runDependencyWatcher),runDependencyWatcher=null),dependenciesFulfilled)){var t=dependenciesFulfilled;dependenciesFulfilled=null,t()}}Module.removeRunDependency=removeRunDependency,Module.preloadedImages={},Module.preloadedAudios={};var ASM_CONSTS=[function(e,t,r,s,a,o,g,p){return _nbind.callbackSignatureList[e].apply(this,arguments)}];function _emscripten_asm_const_iiiiiiii(e,t,r,s,a,o,g,p){return ASM_CONSTS[e](t,r,s,a,o,g,p)}function _emscripten_asm_const_iiiii(e,t,r,s,a){return ASM_CONSTS[e](t,r,s,a)}function _emscripten_asm_const_iiidddddd(e,t,r,s,a,o,g,p,f){return ASM_CONSTS[e](t,r,s,a,o,g,p,f)}function _emscripten_asm_const_iiididi(e,t,r,s,a,o,g){return ASM_CONSTS[e](t,r,s,a,o,g)}function _emscripten_asm_const_iiii(e,t,r,s){return ASM_CONSTS[e](t,r,s)}function _emscripten_asm_const_iiiid(e,t,r,s,a){return ASM_CONSTS[e](t,r,s,a)}function _emscripten_asm_const_iiiiii(e,t,r,s,a,o){return ASM_CONSTS[e](t,r,s,a,o)}STATIC_BASE=Runtime.GLOBAL_BASE,STATICTOP=STATIC_BASE+12800,__ATINIT__.push({func:function(){__GLOBAL__sub_I_Yoga_cpp()}},{func:function(){__GLOBAL__sub_I_nbind_cc()}},{func:function(){__GLOBAL__sub_I_common_cc()}},{func:function(){__GLOBAL__sub_I_Binding_cc()}}),allocate([0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,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,192,127,0,0,192,127,0,0,192,127,0,0,192,127,3,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,3,0,0,0,0,0,192,127,3,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,0,0,0,0,0,0,255,255,255,255,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,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,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,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,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,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,0,0,0,0,0,0,192,127,0,0,192,127,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,0,0,128,191,0,0,128,191,0,0,192,127,0,0,0,0,0,0,0,0,0,0,128,63,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,190,12,0,0,200,12,0,0,208,12,0,0,216,12,0,0,230,12,0,0,242,12,0,0,1,0,0,0,3,0,0,0,0,0,0,0,2,0,0,0,0,0,192,127,3,0,0,0,180,45,0,0,181,45,0,0,182,45,0,0,181,45,0,0,182,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,1,0,0,0,4,0,0,0,183,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,184,45,0,0,185,45,0,0,181,45,0,0,181,45,0,0,182,45,0,0,186,45,0,0,185,45,0,0,148,4,0,0,3,0,0,0,187,45,0,0,164,4,0,0,188,45,0,0,2,0,0,0,189,45,0,0,164,4,0,0,188,45,0,0,185,45,0,0,164,4,0,0,185,45,0,0,164,4,0,0,188,45,0,0,181,45,0,0,182,45,0,0,181,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,183,45,0,0,182,45,0,0,181,45,0,0,190,45,0,0,190,45,0,0,182,45,0,0,182,45,0,0,185,45,0,0,181,45,0,0,185,45,0,0,182,45,0,0,181,45,0,0,185,45,0,0,182,45,0,0,185,45,0,0,48,5,0,0,3,0,0,0,56,5,0,0,1,0,0,0,189,45,0,0,185,45,0,0,164,4,0,0,76,5,0,0,2,0,0,0,191,45,0,0,186,45,0,0,182,45,0,0,185,45,0,0,192,45,0,0,185,45,0,0,182,45,0,0,186,45,0,0,185,45,0,0,76,5,0,0,76,5,0,0,136,5,0,0,182,45,0,0,181,45,0,0,2,0,0,0,190,45,0,0,136,5,0,0,56,19,0,0,156,5,0,0,2,0,0,0,184,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,9,0,0,0,1,0,0,0,10,0,0,0,204,5,0,0,181,45,0,0,181,45,0,0,2,0,0,0,180,45,0,0,204,5,0,0,2,0,0,0,195,45,0,0,236,5,0,0,97,19,0,0,198,45,0,0,211,45,0,0,212,45,0,0,213,45,0,0,214,45,0,0,215,45,0,0,188,45,0,0,182,45,0,0,216,45,0,0,217,45,0,0,218,45,0,0,219,45,0,0,192,45,0,0,181,45,0,0,0,0,0,0,185,45,0,0,110,19,0,0,186,45,0,0,115,19,0,0,221,45,0,0,120,19,0,0,148,4,0,0,132,19,0,0,96,6,0,0,145,19,0,0,222,45,0,0,164,19,0,0,223,45,0,0,173,19,0,0,0,0,0,0,3,0,0,0,104,6,0,0,1,0,0,0,187,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,185,45,0,0,224,45,0,0,164,6,0,0,188,45,0,0,172,6,0,0,180,6,0,0,2,0,0,0,188,6,0,0,7,0,0,0,224,45,0,0,7,0,0,0,164,6,0,0,1,0,0,0,213,45,0,0,185,45,0,0,224,45,0,0,172,6,0,0,185,45,0,0,224,45,0,0,164,6,0,0,185,45,0,0,224,45,0,0,211,45,0,0,211,45,0,0,222,45,0,0,211,45,0,0,224,45,0,0,222,45,0,0,211,45,0,0,224,45,0,0,172,6,0,0,222,45,0,0,211,45,0,0,224,45,0,0,188,45,0,0,222,45,0,0,211,45,0,0,40,7,0,0,188,45,0,0,2,0,0,0,224,45,0,0,185,45,0,0,188,45,0,0,188,45,0,0,188,45,0,0,188,45,0,0,222,45,0,0,224,45,0,0,148,4,0,0,185,45,0,0,148,4,0,0,148,4,0,0,148,4,0,0,148,4,0,0,148,4,0,0,185,45,0,0,164,6,0,0,148,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,14,0,0,0,15,0,0,0,1,0,0,0,16,0,0,0,148,7,0,0,2,0,0,0,225,45,0,0,183,45,0,0,188,45,0,0,168,7,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,234,45,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,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,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,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,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,148,45,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,28,9,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,2,0,0,0,242,45,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,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,67,111,117,108,100,32,110,111,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,102,111,114,32,110,111,100,101,0,67,97,110,110,111,116,32,114,101,115,101,116,32,97,32,110,111,100,101,32,119,104,105,99,104,32,115,116,105,108,108,32,104,97,115,32,99,104,105,108,100,114,101,110,32,97,116,116,97,99,104,101,100,0,67,97,110,110,111,116,32,114,101,115,101,116,32,97,32,110,111,100,101,32,115,116,105,108,108,32,97,116,116,97,99,104,101,100,32,116,111,32,97,32,112,97,114,101,110,116,0,67,111,117,108,100,32,110,111,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,102,111,114,32,99,111,110,102,105,103,0,67,97,110,110,111,116,32,115,101,116,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,58,32,78,111,100,101,115,32,119,105,116,104,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,32,99,97,110,110,111,116,32,104,97,118,101,32,99,104,105,108,100,114,101,110,46,0,67,104,105,108,100,32,97,108,114,101,97,100,121,32,104,97,115,32,97,32,112,97,114,101,110,116,44,32,105,116,32,109,117,115,116,32,98,101,32,114,101,109,111,118,101,100,32,102,105,114,115,116,46,0,67,97,110,110,111,116,32,97,100,100,32,99,104,105,108,100,58,32,78,111,100,101,115,32,119,105,116,104,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,32,99,97,110,110,111,116,32,104,97,118,101,32,99,104,105,108,100,114,101,110,46,0,79,110,108,121,32,108,101,97,102,32,110,111,100,101,115,32,119,105,116,104,32,99,117,115,116,111,109,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,115,104,111,117,108,100,32,109,97,110,117,97,108,108,121,32,109,97,114,107,32,116,104,101,109,115,101,108,118,101,115,32,97,115,32,100,105,114,116,121,0,67,97,110,110,111,116,32,103,101,116,32,108,97,121,111,117,116,32,112,114,111,112,101,114,116,105,101,115,32,111,102,32,109,117,108,116,105,45,101,100,103,101,32,115,104,111,114,116,104,97,110,100,115,0,37,115,37,100,46,123,91,115,107,105,112,112,101,100,93,32,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,97,119,58,32,37,102,32,97,104,58,32,37,102,32,61,62,32,100,58,32,40,37,102,44,32,37,102,41,32,37,115,10,0,37,115,37,100,46,123,37,115,0,42,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,97,119,58,32,37,102,32,97,104,58,32,37,102,32,37,115,10,0,37,115,37,100,46,125,37,115,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,100,58,32,40,37,102,44,32,37,102,41,32,37,115,10,0,79,117,116,32,111,102,32,99,97,99,104,101,32,101,110,116,114,105,101,115,33,10,0,83,99,97,108,101,32,102,97,99,116,111,114,32,115,104,111,117,108,100,32,110,111,116,32,98,101,32,108,101,115,115,32,116,104,97,110,32,122,101,114,111,0,105,110,105,116,105,97,108,0,37,115,10,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,0,85,78,68,69,70,73,78,69,68,0,69,88,65,67,84,76,89,0,65,84,95,77,79,83,84,0,76,65,89,95,85,78,68,69,70,73,78,69,68,0,76,65,89,95,69,88,65,67,84,76,89,0,76,65,89,95,65,84,95,77,79,83,84,0,97,118,97,105,108,97,98,108,101,87,105,100,116,104,32,105,115,32,105,110,100,101,102,105,110,105,116,101,32,115,111,32,119,105,100,116,104,77,101,97,115,117,114,101,77,111,100,101,32,109,117,115,116,32,98,101,32,89,71,77,101,97,115,117,114,101,77,111,100,101,85,110,100,101,102,105,110,101,100,0,97,118,97,105,108,97,98,108,101,72,101,105,103,104,116,32,105,115,32,105,110,100,101,102,105,110,105,116,101,32,115,111,32,104,101,105,103,104,116,77,101,97,115,117,114,101,77,111,100,101,32,109,117,115,116,32,98,101,32,89,71,77,101,97,115,117,114,101,77,111,100,101,85,110,100,101,102,105,110,101,100,0,102,108,101,120,0,115,116,114,101,116,99,104,0,109,117,108,116,105,108,105,110,101,45,115,116,114,101,116,99,104,0,69,120,112,101,99,116,101,100,32,110,111,100,101,32,116,111,32,104,97,118,101,32,99,117,115,116,111,109,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,0,109,101,97,115,117,114,101,0,69,120,112,101,99,116,32,99,117,115,116,111,109,32,98,97,115,101,108,105,110,101,32,102,117,110,99,116,105,111,110,32,116,111,32,110,111,116,32,114,101,116,117,114,110,32,78,97,78,0,97,98,115,45,109,101,97,115,117,114,101,0,97,98,115,45,108,97,121,111,117,116,0,78,111,100,101,0,99,114,101,97,116,101,68,101,102,97,117,108,116,0,99,114,101,97,116,101,87,105,116,104,67,111,110,102,105,103,0,100,101,115,116,114,111,121,0,114,101,115,101,116,0,99,111,112,121,83,116,121,108,101,0,115,101,116,80,111,115,105,116,105,111,110,84,121,112,101,0,115,101,116,80,111,115,105,116,105,111,110,0,115,101,116,80,111,115,105,116,105,111,110,80,101,114,99,101,110,116,0,115,101,116,65,108,105,103,110,67,111,110,116,101,110,116,0,115,101,116,65,108,105,103,110,73,116,101,109,115,0,115,101,116,65,108,105,103,110,83,101,108,102,0,115,101,116,70,108,101,120,68,105,114,101,99,116,105,111,110,0,115,101,116,70,108,101,120,87,114,97,112,0,115,101,116,74,117,115,116,105,102,121,67,111,110,116,101,110,116,0,115,101,116,77,97,114,103,105,110,0,115,101,116,77,97,114,103,105,110,80,101,114,99,101,110,116,0,115,101,116,77,97,114,103,105,110,65,117,116,111,0,115,101,116,79,118,101,114,102,108,111,119,0,115,101,116,68,105,115,112,108,97,121,0,115,101,116,70,108,101,120,0,115,101,116,70,108,101,120,66,97,115,105,115,0,115,101,116,70,108,101,120,66,97,115,105,115,80,101,114,99,101,110,116,0,115,101,116,70,108,101,120,71,114,111,119,0,115,101,116,70,108,101,120,83,104,114,105,110,107,0,115,101,116,87,105,100,116,104,0,115,101,116,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,87,105,100,116,104,65,117,116,111,0,115,101,116,72,101,105,103,104,116,0,115,101,116,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,72,101,105,103,104,116,65,117,116,111,0,115,101,116,77,105,110,87,105,100,116,104,0,115,101,116,77,105,110,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,77,105,110,72,101,105,103,104,116,0,115,101,116,77,105,110,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,77,97,120,87,105,100,116,104,0,115,101,116,77,97,120,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,77,97,120,72,101,105,103,104,116,0,115,101,116,77,97,120,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,65,115,112,101,99,116,82,97,116,105,111,0,115,101,116,66,111,114,100,101,114,0,115,101,116,80,97,100,100,105,110,103,0,115,101,116,80,97,100,100,105,110,103,80,101,114,99,101,110,116,0,103,101,116,80,111,115,105,116,105,111,110,84,121,112,101,0,103,101,116,80,111,115,105,116,105,111,110,0,103,101,116,65,108,105,103,110,67,111,110,116,101,110,116,0,103,101,116,65,108,105,103,110,73,116,101,109,115,0,103,101,116,65,108,105,103,110,83,101,108,102,0,103,101,116,70,108,101,120,68,105,114,101,99,116,105,111,110,0,103,101,116,70,108,101,120,87,114,97,112,0,103,101,116,74,117,115,116,105,102,121,67,111,110,116,101,110,116,0,103,101,116,77,97,114,103,105,110,0,103,101,116,70,108,101,120,66,97,115,105,115,0,103,101,116,70,108,101,120,71,114,111,119,0,103,101,116,70,108,101,120,83,104,114,105,110,107,0,103,101,116,87,105,100,116,104,0,103,101,116,72,101,105,103,104,116,0,103,101,116,77,105,110,87,105,100,116,104,0,103,101,116,77,105,110,72,101,105,103,104,116,0,103,101,116,77,97,120,87,105,100,116,104,0,103,101,116,77,97,120,72,101,105,103,104,116,0,103,101,116,65,115,112,101,99,116,82,97,116,105,111,0,103,101,116,66,111,114,100,101,114,0,103,101,116,79,118,101,114,102,108,111,119,0,103,101,116,68,105,115,112,108,97,121,0,103,101,116,80,97,100,100,105,110,103,0,105,110,115,101,114,116,67,104,105,108,100,0,114,101,109,111,118,101,67,104,105,108,100,0,103,101,116,67,104,105,108,100,67,111,117,110,116,0,103,101,116,80,97,114,101,110,116,0,103,101,116,67,104,105,108,100,0,115,101,116,77,101,97,115,117,114,101,70,117,110,99,0,117,110,115,101,116,77,101,97,115,117,114,101,70,117,110,99,0,109,97,114,107,68,105,114,116,121,0,105,115,68,105,114,116,121,0,99,97,108,99,117,108,97,116,101,76,97,121,111,117,116,0,103,101,116,67,111,109,112,117,116,101,100,76,101,102,116,0,103,101,116,67,111,109,112,117,116,101,100,82,105,103,104,116,0,103,101,116,67,111,109,112,117,116,101,100,84,111,112,0,103,101,116,67,111,109,112,117,116,101,100,66,111,116,116,111,109,0,103,101,116,67,111,109,112,117,116,101,100,87,105,100,116,104,0,103,101,116,67,111,109,112,117,116,101,100,72,101,105,103,104,116,0,103,101,116,67,111,109,112,117,116,101,100,76,97,121,111,117,116,0,103,101,116,67,111,109,112,117,116,101,100,77,97,114,103,105,110,0,103,101,116,67,111,109,112,117,116,101,100,66,111,114,100,101,114,0,103,101,116,67,111,109,112,117,116,101,100,80,97,100,100,105,110,103,0,67,111,110,102,105,103,0,99,114,101,97,116,101,0,115,101,116,69,120,112,101,114,105,109,101,110,116,97,108,70,101,97,116,117,114,101,69,110,97,98,108,101,100,0,115,101,116,80,111,105,110,116,83,99,97,108,101,70,97,99,116,111,114,0,105,115,69,120,112,101,114,105,109,101,110,116,97,108,70,101,97,116,117,114,101,69,110,97,98,108,101,100,0,86,97,108,117,101,0,76,97,121,111,117,116,0,83,105,122,101,0,103,101,116,73,110,115,116,97,110,99,101,67,111,117,110,116,0,73,110,116,54,52,0,1,1,1,2,2,4,4,4,4,8,8,4,8,118,111,105,100,0,98,111,111,108,0,115,116,100,58,58,115,116,114,105,110,103,0,99,98,70,117,110,99,116,105,111,110,32,38,0,99,111,110,115,116,32,99,98,70,117,110,99,116,105,111,110,32,38,0,69,120,116,101,114,110,97,108,0,66,117,102,102,101,114,0,78,66,105,110,100,73,68,0,78,66,105,110,100,0,98,105,110,100,95,118,97,108,117,101,0,114,101,102,108,101,99,116,0,113,117,101,114,121,84,121,112,101,0,108,97,108,108,111,99,0,108,114,101,115,101,116,0,123,114,101,116,117,114,110,40,95,110,98,105,110,100,46,99,97,108,108,98,97,99,107,83,105,103,110,97,116,117,114,101,76,105,115,116,91,36,48,93,46,97,112,112,108,121,40,116,104,105,115,44,97,114,103,117,109,101,110,116,115,41,41,59,125,0,95,110,98,105,110,100,95,110,101,119,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,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,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,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,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,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,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,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,18,0,0,0,18,18,18,0,0,0,0,0,0,9,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,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,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,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,46,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);var tempDoublePtr=STATICTOP;STATICTOP+=16;function _atexit(e,t){__ATEXIT__.unshift({func:e,arg:t})}function ___cxa_atexit(){return _atexit.apply(null,arguments)}function _abort(){Module.abort()}function __ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj(){Module.printErr("missing function: _ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj"),abort(-1)}function __decorate(e,t,r,s){var a=arguments.length,o=a<3?t:s===null?s=Object.getOwnPropertyDescriptor(t,r):s,g;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(e,t,r,s);else for(var p=e.length-1;p>=0;p--)(g=e[p])&&(o=(a<3?g(o):a>3?g(t,r,o):g(t,r))||o);return a>3&&o&&Object.defineProperty(t,r,o),o}function _defineHidden(e){return function(t,r){Object.defineProperty(t,r,{configurable:!1,enumerable:!1,value:e,writable:!0})}}var _nbind={};function __nbind_free_external(e){_nbind.externalList[e].dereference(e)}function __nbind_reference_external(e){_nbind.externalList[e].reference()}function _llvm_stackrestore(e){var t=_llvm_stacksave,r=t.LLVM_SAVEDSTACKS[e];t.LLVM_SAVEDSTACKS.splice(e,1),Runtime.stackRestore(r)}function __nbind_register_pool(e,t,r,s){_nbind.Pool.pageSize=e,_nbind.Pool.usedPtr=t/4,_nbind.Pool.rootPtr=r,_nbind.Pool.pagePtr=s/4,HEAP32[t/4]=16909060,HEAP8[t]==1&&(_nbind.bigEndian=!0),HEAP32[t/4]=0,_nbind.makeTypeKindTbl=(o={},o[1024]=_nbind.PrimitiveType,o[64]=_nbind.Int64Type,o[2048]=_nbind.BindClass,o[3072]=_nbind.BindClassPtr,o[4096]=_nbind.SharedClassPtr,o[5120]=_nbind.ArrayType,o[6144]=_nbind.ArrayType,o[7168]=_nbind.CStringType,o[9216]=_nbind.CallbackType,o[10240]=_nbind.BindType,o),_nbind.makeTypeNameTbl={Buffer:_nbind.BufferType,External:_nbind.ExternalType,Int64:_nbind.Int64Type,_nbind_new:_nbind.CreateValueType,bool:_nbind.BooleanType,"cbFunction &":_nbind.CallbackType,"const cbFunction &":_nbind.CallbackType,"const std::string &":_nbind.StringType,"std::string":_nbind.StringType},Module.toggleLightGC=_nbind.toggleLightGC,_nbind.callUpcast=Module.dynCall_ii;var a=_nbind.makeType(_nbind.constructType,{flags:2048,id:0,name:""});a.proto=Module,_nbind.BindClass.list.push(a);var o}function _emscripten_set_main_loop_timing(e,t){if(Browser.mainLoop.timingMode=e,Browser.mainLoop.timingValue=t,!Browser.mainLoop.func)return 1;if(e==0)Browser.mainLoop.scheduler=function(){var g=Math.max(0,Browser.mainLoop.tickStartTime+t-_emscripten_get_now())|0;setTimeout(Browser.mainLoop.runner,g)},Browser.mainLoop.method="timeout";else if(e==1)Browser.mainLoop.scheduler=function(){Browser.requestAnimationFrame(Browser.mainLoop.runner)},Browser.mainLoop.method="rAF";else if(e==2){if(!window.setImmediate){let o=function(g){g.source===window&&g.data===s&&(g.stopPropagation(),r.shift()())};var a=o,r=[],s="setimmediate";window.addEventListener("message",o,!0),window.setImmediate=function(p){r.push(p),ENVIRONMENT_IS_WORKER?(Module.setImmediates===void 0&&(Module.setImmediates=[]),Module.setImmediates.push(p),window.postMessage({target:s})):window.postMessage(s,"*")}}Browser.mainLoop.scheduler=function(){window.setImmediate(Browser.mainLoop.runner)},Browser.mainLoop.method="immediate"}return 0}function _emscripten_get_now(){abort()}function _emscripten_set_main_loop(e,t,r,s,a){Module.noExitRuntime=!0,assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters."),Browser.mainLoop.func=e,Browser.mainLoop.arg=s;var o;typeof s<"u"?o=function(){Module.dynCall_vi(e,s)}:o=function(){Module.dynCall_v(e)};var g=Browser.mainLoop.currentlyRunningMainloop;if(Browser.mainLoop.runner=function(){if(!ABORT){if(Browser.mainLoop.queue.length>0){var f=Date.now(),m=Browser.mainLoop.queue.shift();if(m.func(m.arg),Browser.mainLoop.remainingBlockers){var y=Browser.mainLoop.remainingBlockers,B=y%1==0?y-1:Math.floor(y);m.counted?Browser.mainLoop.remainingBlockers=B:(B=B+.5,Browser.mainLoop.remainingBlockers=(8*y+B)/9)}if(console.log('main loop blocker "'+m.name+'" took '+(Date.now()-f)+" ms"),Browser.mainLoop.updateStatus(),g1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}else Browser.mainLoop.timingMode==0&&(Browser.mainLoop.tickStartTime=_emscripten_get_now());Browser.mainLoop.method==="timeout"&&Module.ctx&&(Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!"),Browser.mainLoop.method=""),Browser.mainLoop.runIter(o),!(g0?_emscripten_set_main_loop_timing(0,1e3/t):_emscripten_set_main_loop_timing(1,1),Browser.mainLoop.scheduler()),r)throw"SimulateInfiniteLoop"}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:function(){Browser.mainLoop.scheduler=null,Browser.mainLoop.currentlyRunningMainloop++},resume:function(){Browser.mainLoop.currentlyRunningMainloop++;var e=Browser.mainLoop.timingMode,t=Browser.mainLoop.timingValue,r=Browser.mainLoop.func;Browser.mainLoop.func=null,_emscripten_set_main_loop(r,0,!1,Browser.mainLoop.arg,!0),_emscripten_set_main_loop_timing(e,t),Browser.mainLoop.scheduler()},updateStatus:function(){if(Module.setStatus){var e=Module.statusMessage||"Please wait...",t=Browser.mainLoop.remainingBlockers,r=Browser.mainLoop.expectedBlockers;t?t"u"&&(console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available."),Module.noImageDecoding=!0);var e={};e.canHandle=function(o){return!Module.noImageDecoding&&/\.(jpg|jpeg|png|bmp)$/i.test(o)},e.handle=function(o,g,p,f){var m=null;if(Browser.hasBlobConstructor)try{m=new Blob([o],{type:Browser.getMimetype(g)}),m.size!==o.length&&(m=new Blob([new Uint8Array(o).buffer],{type:Browser.getMimetype(g)}))}catch(G){Runtime.warnOnce("Blob constructor present but fails: "+G+"; falling back to blob builder")}if(!m){var y=new Browser.BlobBuilder;y.append(new Uint8Array(o).buffer),m=y.getBlob()}var B=Browser.URLObject.createObjectURL(m),v=new Image;v.onload=function(){assert(v.complete,"Image "+g+" could not be decoded");var T=document.createElement("canvas");T.width=v.width,T.height=v.height;var O=T.getContext("2d");O.drawImage(v,0,0),Module.preloadedImages[g]=T,Browser.URLObject.revokeObjectURL(B),p&&p(o)},v.onerror=function(T){console.log("Image "+B+" could not be decoded"),f&&f()},v.src=B},Module.preloadPlugins.push(e);var t={};t.canHandle=function(o){return!Module.noAudioDecoding&&o.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},t.handle=function(o,g,p,f){var m=!1;function y(O){m||(m=!0,Module.preloadedAudios[g]=O,p&&p(o))}function B(){m||(m=!0,Module.preloadedAudios[g]=new Audio,f&&f())}if(Browser.hasBlobConstructor){try{var v=new Blob([o],{type:Browser.getMimetype(g)})}catch{return B()}var G=Browser.URLObject.createObjectURL(v),T=new Audio;T.addEventListener("canplaythrough",function(){y(T)},!1),T.onerror=function(X){if(m)return;console.log("warning: browser could not fully decode audio "+g+", trying slower base64 approach");function U(le){for(var ae="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",ge="=",fe="",pe=0,he=0,be=0;be=6;){var Te=pe>>he-6&63;he-=6,fe+=ae[Te]}return he==2?(fe+=ae[(pe&3)<<4],fe+=ge+ge):he==4&&(fe+=ae[(pe&15)<<2],fe+=ge),fe}T.src="data:audio/x-"+g.substr(-3)+";base64,"+U(o),y(T)},T.src=G,Browser.safeSetTimeout(function(){y(T)},1e4)}else return B()},Module.preloadPlugins.push(t);function r(){Browser.pointerLock=document.pointerLockElement===Module.canvas||document.mozPointerLockElement===Module.canvas||document.webkitPointerLockElement===Module.canvas||document.msPointerLockElement===Module.canvas}var s=Module.canvas;s&&(s.requestPointerLock=s.requestPointerLock||s.mozRequestPointerLock||s.webkitRequestPointerLock||s.msRequestPointerLock||function(){},s.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},s.exitPointerLock=s.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",r,!1),document.addEventListener("mozpointerlockchange",r,!1),document.addEventListener("webkitpointerlockchange",r,!1),document.addEventListener("mspointerlockchange",r,!1),Module.elementPointerLock&&s.addEventListener("click",function(a){!Browser.pointerLock&&Module.canvas.requestPointerLock&&(Module.canvas.requestPointerLock(),a.preventDefault())},!1))},createContext:function(e,t,r,s){if(t&&Module.ctx&&e==Module.canvas)return Module.ctx;var a,o;if(t){var g={antialias:!1,alpha:!1};if(s)for(var p in s)g[p]=s[p];o=GL.createContext(e,g),o&&(a=GL.getContext(o).GLctx)}else a=e.getContext("2d");return a?(r&&(t||assert(typeof GLctx>"u","cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),Module.ctx=a,t&&GL.makeContextCurrent(o),Module.useWebGL=t,Browser.moduleContextCreatedCallbacks.forEach(function(f){f()}),Browser.init()),a):null},destroyContext:function(e,t,r){},fullscreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullscreen:function(e,t,r){Browser.lockPointer=e,Browser.resizeCanvas=t,Browser.vrDevice=r,typeof Browser.lockPointer>"u"&&(Browser.lockPointer=!0),typeof Browser.resizeCanvas>"u"&&(Browser.resizeCanvas=!1),typeof Browser.vrDevice>"u"&&(Browser.vrDevice=null);var s=Module.canvas;function a(){Browser.isFullscreen=!1;var g=s.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===g?(s.exitFullscreen=document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||function(){},s.exitFullscreen=s.exitFullscreen.bind(document),Browser.lockPointer&&s.requestPointerLock(),Browser.isFullscreen=!0,Browser.resizeCanvas&&Browser.setFullscreenCanvasSize()):(g.parentNode.insertBefore(s,g),g.parentNode.removeChild(g),Browser.resizeCanvas&&Browser.setWindowedCanvasSize()),Module.onFullScreen&&Module.onFullScreen(Browser.isFullscreen),Module.onFullscreen&&Module.onFullscreen(Browser.isFullscreen),Browser.updateCanvasDimensions(s)}Browser.fullscreenHandlersInstalled||(Browser.fullscreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",a,!1),document.addEventListener("mozfullscreenchange",a,!1),document.addEventListener("webkitfullscreenchange",a,!1),document.addEventListener("MSFullscreenChange",a,!1));var o=document.createElement("div");s.parentNode.insertBefore(o,s),o.appendChild(s),o.requestFullscreen=o.requestFullscreen||o.mozRequestFullScreen||o.msRequestFullscreen||(o.webkitRequestFullscreen?function(){o.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT)}:null)||(o.webkitRequestFullScreen?function(){o.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null),r?o.requestFullscreen({vrDisplay:r}):o.requestFullscreen()},requestFullScreen:function(e,t,r){return Module.printErr("Browser.requestFullScreen() is deprecated. Please call Browser.requestFullscreen instead."),Browser.requestFullScreen=function(s,a,o){return Browser.requestFullscreen(s,a,o)},Browser.requestFullscreen(e,t,r)},nextRAF:0,fakeRequestAnimationFrame:function(e){var t=Date.now();if(Browser.nextRAF===0)Browser.nextRAF=t+1e3/60;else for(;t+2>=Browser.nextRAF;)Browser.nextRAF+=1e3/60;var r=Math.max(Browser.nextRAF-t,0);setTimeout(e,r)},requestAnimationFrame:function e(t){typeof window>"u"?Browser.fakeRequestAnimationFrame(t):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||Browser.fakeRequestAnimationFrame),window.requestAnimationFrame(t))},safeCallback:function(e){return function(){if(!ABORT)return e.apply(null,arguments)}},allowAsyncCallbacks:!0,queuedAsyncCallbacks:[],pauseAsyncCallbacks:function(){Browser.allowAsyncCallbacks=!1},resumeAsyncCallbacks:function(){if(Browser.allowAsyncCallbacks=!0,Browser.queuedAsyncCallbacks.length>0){var e=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[],e.forEach(function(t){t()})}},safeRequestAnimationFrame:function(e){return Browser.requestAnimationFrame(function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))})},safeSetTimeout:function(e,t){return Module.noExitRuntime=!0,setTimeout(function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))},t)},safeSetInterval:function(e,t){return Module.noExitRuntime=!0,setInterval(function(){ABORT||Browser.allowAsyncCallbacks&&e()},t)},getMimetype:function(e){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[e.substr(e.lastIndexOf(".")+1)]},getUserMedia:function(e){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia),window.getUserMedia(e)},getMovementX:function(e){return e.movementX||e.mozMovementX||e.webkitMovementX||0},getMovementY:function(e){return e.movementY||e.mozMovementY||e.webkitMovementY||0},getMouseWheelDelta:function(e){var t=0;switch(e.type){case"DOMMouseScroll":t=e.detail;break;case"mousewheel":t=e.wheelDelta;break;case"wheel":t=e.deltaY;break;default:throw"unrecognized mouse wheel event: "+e.type}return t},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function(e){if(Browser.pointerLock)e.type!="mousemove"&&"mozMovementX"in e?Browser.mouseMovementX=Browser.mouseMovementY=0:(Browser.mouseMovementX=Browser.getMovementX(e),Browser.mouseMovementY=Browser.getMovementY(e)),typeof SDL<"u"?(Browser.mouseX=SDL.mouseX+Browser.mouseMovementX,Browser.mouseY=SDL.mouseY+Browser.mouseMovementY):(Browser.mouseX+=Browser.mouseMovementX,Browser.mouseY+=Browser.mouseMovementY);else{var t=Module.canvas.getBoundingClientRect(),r=Module.canvas.width,s=Module.canvas.height,a=typeof window.scrollX<"u"?window.scrollX:window.pageXOffset,o=typeof window.scrollY<"u"?window.scrollY:window.pageYOffset;if(e.type==="touchstart"||e.type==="touchend"||e.type==="touchmove"){var g=e.touch;if(g===void 0)return;var p=g.pageX-(a+t.left),f=g.pageY-(o+t.top);p=p*(r/t.width),f=f*(s/t.height);var m={x:p,y:f};if(e.type==="touchstart")Browser.lastTouches[g.identifier]=m,Browser.touches[g.identifier]=m;else if(e.type==="touchend"||e.type==="touchmove"){var y=Browser.touches[g.identifier];y||(y=m),Browser.lastTouches[g.identifier]=y,Browser.touches[g.identifier]=m}return}var B=e.pageX-(a+t.left),v=e.pageY-(o+t.top);B=B*(r/t.width),v=v*(s/t.height),Browser.mouseMovementX=B-Browser.mouseX,Browser.mouseMovementY=v-Browser.mouseY,Browser.mouseX=B,Browser.mouseY=v}},asyncLoad:function(e,t,r,s){var a=s?"":"al "+e;Module.readAsync(e,function(o){assert(o,'Loading data file "'+e+'" failed (no arrayBuffer).'),t(new Uint8Array(o)),a&&removeRunDependency(a)},function(o){if(r)r();else throw'Loading data file "'+e+'" failed.'}),a&&addRunDependency(a)},resizeListeners:[],updateResizeListeners:function(){var e=Module.canvas;Browser.resizeListeners.forEach(function(t){t(e.width,e.height)})},setCanvasSize:function(e,t,r){var s=Module.canvas;Browser.updateCanvasDimensions(s,e,t),r||Browser.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullscreenCanvasSize:function(){if(typeof SDL<"u"){var e=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];e=e|8388608,HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=e}Browser.updateResizeListeners()},setWindowedCanvasSize:function(){if(typeof SDL<"u"){var e=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];e=e&-8388609,HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=e}Browser.updateResizeListeners()},updateCanvasDimensions:function(e,t,r){t&&r?(e.widthNative=t,e.heightNative=r):(t=e.widthNative,r=e.heightNative);var s=t,a=r;if(Module.forcedAspectRatio&&Module.forcedAspectRatio>0&&(s/a>2];return t},getStr:function(){var e=Pointer_stringify(SYSCALLS.get());return e},get64:function(){var e=SYSCALLS.get(),t=SYSCALLS.get();return e>=0?assert(t===0):assert(t===-1),e},getZero:function(){assert(SYSCALLS.get()===0)}};function ___syscall6(e,t){SYSCALLS.varargs=t;try{var r=SYSCALLS.getStreamFromFD();return FS.close(r),0}catch(s){return(typeof FS>"u"||!(s instanceof FS.ErrnoError))&&abort(s),-s.errno}}function ___syscall54(e,t){SYSCALLS.varargs=t;try{return 0}catch(r){return(typeof FS>"u"||!(r instanceof FS.ErrnoError))&&abort(r),-r.errno}}function _typeModule(e){var t=[[0,1,"X"],[1,1,"const X"],[128,1,"X *"],[256,1,"X &"],[384,1,"X &&"],[512,1,"std::shared_ptr"],[640,1,"std::unique_ptr"],[5120,1,"std::vector"],[6144,2,"std::array"],[9216,-1,"std::function"]];function r(f,m,y,B,v,G){if(m==1){var T=B&896;(T==128||T==256||T==384)&&(f="X const")}var O;return G?O=y.replace("X",f).replace("Y",v):O=f.replace("X",y).replace("Y",v),O.replace(/([*&]) (?=[*&])/g,"$1")}function s(f,m,y,B,v){throw new Error(f+" type "+y.replace("X",m+"?")+(B?" with flag "+B:"")+" in "+v)}function a(f,m,y,B,v,G,T,O){G===void 0&&(G="X"),O===void 0&&(O=1);var X=y(f);if(X)return X;var U=B(f),le=U.placeholderFlag,ae=t[le];T&&ae&&(G=r(T[2],T[0],G,ae[0],"?",!0));var ge;le==0&&(ge="Unbound"),le>=10&&(ge="Corrupt"),O>20&&(ge="Deeply nested"),ge&&s(ge,f,G,le,v||"?");var fe=U.paramList[0],pe=a(fe,m,y,B,v,G,ae,O+1),he,be={flags:ae[0],id:f,name:"",paramList:[pe]},Te=[],ke="?";switch(U.placeholderFlag){case 1:he=pe.spec;break;case 2:if((pe.flags&15360)==1024&&pe.spec.ptrSize==1){be.flags=7168;break}case 3:case 6:case 5:he=pe.spec,pe.flags&15360;break;case 8:ke=""+U.paramList[1],be.paramList.push(U.paramList[1]);break;case 9:for(var x=0,et=U.paramList[1];x>2]=e),e}function _llvm_stacksave(){var e=_llvm_stacksave;return e.LLVM_SAVEDSTACKS||(e.LLVM_SAVEDSTACKS=[]),e.LLVM_SAVEDSTACKS.push(Runtime.stackSave()),e.LLVM_SAVEDSTACKS.length-1}function ___syscall140(e,t){SYSCALLS.varargs=t;try{var r=SYSCALLS.getStreamFromFD(),s=SYSCALLS.get(),a=SYSCALLS.get(),o=SYSCALLS.get(),g=SYSCALLS.get(),p=a;return FS.llseek(r,p,g),HEAP32[o>>2]=r.position,r.getdents&&p===0&&g===0&&(r.getdents=null),0}catch(f){return(typeof FS>"u"||!(f instanceof FS.ErrnoError))&&abort(f),-f.errno}}function ___syscall146(e,t){SYSCALLS.varargs=t;try{var r=SYSCALLS.get(),s=SYSCALLS.get(),a=SYSCALLS.get(),o=0;___syscall146.buffer||(___syscall146.buffers=[null,[],[]],___syscall146.printChar=function(y,B){var v=___syscall146.buffers[y];assert(v),B===0||B===10?((y===1?Module.print:Module.printErr)(UTF8ArrayToString(v,0)),v.length=0):v.push(B)});for(var g=0;g>2],f=HEAP32[s+(g*8+4)>>2],m=0;m"u"||!(y instanceof FS.ErrnoError))&&abort(y),-y.errno}}function __nbind_finish(){for(var e=0,t=_nbind.BindClass.list;ee.pageSize/2||t>e.pageSize-r){var s=_nbind.typeNameTbl.NBind.proto;return s.lalloc(t)}else return HEAPU32[e.usedPtr]=r+t,e.rootPtr+r},e.lreset=function(t,r){var s=HEAPU32[e.pagePtr];if(s){var a=_nbind.typeNameTbl.NBind.proto;a.lreset(t,r)}else HEAPU32[e.usedPtr]=t},e}();_nbind.Pool=Pool;function constructType(e,t){var r=e==10240?_nbind.makeTypeNameTbl[t.name]||_nbind.BindType:_nbind.makeTypeKindTbl[e],s=new r(t);return typeIdTbl[t.id]=s,_nbind.typeNameTbl[t.name]=s,s}_nbind.constructType=constructType;function getType(e){return typeIdTbl[e]}_nbind.getType=getType;function queryType(e){var t=HEAPU8[e],r=_nbind.structureList[t][1];e/=4,r<0&&(++e,r=HEAPU32[e]+1);var s=Array.prototype.slice.call(HEAPU32.subarray(e+1,e+1+r));return t==9&&(s=[s[0],s.slice(1)]),{paramList:s,placeholderFlag:t}}_nbind.queryType=queryType;function getTypes(e,t){return e.map(function(r){return typeof r=="number"?_nbind.getComplexType(r,constructType,getType,queryType,t):_nbind.typeNameTbl[r]})}_nbind.getTypes=getTypes;function readTypeIdList(e,t){return Array.prototype.slice.call(HEAPU32,e/4,e/4+t)}_nbind.readTypeIdList=readTypeIdList;function readAsciiString(e){for(var t=e;HEAPU8[t++];);return String.fromCharCode.apply("",HEAPU8.subarray(e,t-1))}_nbind.readAsciiString=readAsciiString;function readPolicyList(e){var t={};if(e)for(;;){var r=HEAPU32[e/4];if(!r)break;t[readAsciiString(r)]=!0,e+=4}return t}_nbind.readPolicyList=readPolicyList;function getDynCall(e,t){var r={float32_t:"d",float64_t:"d",int64_t:"d",uint64_t:"d",void:"v"},s=e.map(function(o){return r[o.name]||"i"}).join(""),a=Module["dynCall_"+s];if(!a)throw new Error("dynCall_"+s+" not found for "+t+"("+e.map(function(o){return o.name}).join(", ")+")");return a}_nbind.getDynCall=getDynCall;function addMethod(e,t,r,s){var a=e[t];e.hasOwnProperty(t)&&a?((a.arity||a.arity===0)&&(a=_nbind.makeOverloader(a,a.arity),e[t]=a),a.addMethod(r,s)):(r.arity=s,e[t]=r)}_nbind.addMethod=addMethod;function throwError(e){throw new Error(e)}_nbind.throwError=throwError,_nbind.bigEndian=!1;var _a=_typeModule(_typeModule);_nbind.Type=_a.Type,_nbind.makeType=_a.makeType,_nbind.getComplexType=_a.getComplexType,_nbind.structureList=_a.structureList;var BindType=function(e){__extends(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.heap=HEAPU32,r.ptrSize=4,r}return t.prototype.needsWireRead=function(r){return!!this.wireRead||!!this.makeWireRead},t.prototype.needsWireWrite=function(r){return!!this.wireWrite||!!this.makeWireWrite},t}(_nbind.Type);_nbind.BindType=BindType;var PrimitiveType=function(e){__extends(t,e);function t(r){var s=e.call(this,r)||this,a=r.flags&32?{32:HEAPF32,64:HEAPF64}:r.flags&8?{8:HEAPU8,16:HEAPU16,32:HEAPU32}:{8:HEAP8,16:HEAP16,32:HEAP32};return s.heap=a[r.ptrSize*8],s.ptrSize=r.ptrSize,s}return t.prototype.needsWireWrite=function(r){return!!r&&!!r.Strict},t.prototype.makeWireWrite=function(r,s){return s&&s.Strict&&function(a){if(typeof a=="number")return a;throw new Error("Type mismatch")}},t}(BindType);_nbind.PrimitiveType=PrimitiveType;function pushCString(e,t){if(e==null){if(t&&t.Nullable)return 0;throw new Error("Type mismatch")}if(t&&t.Strict){if(typeof e!="string")throw new Error("Type mismatch")}else e=e.toString();var r=Module.lengthBytesUTF8(e)+1,s=_nbind.Pool.lalloc(r);return Module.stringToUTF8Array(e,HEAPU8,s,r),s}_nbind.pushCString=pushCString;function popCString(e){return e===0?null:Module.Pointer_stringify(e)}_nbind.popCString=popCString;var CStringType=function(e){__extends(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.wireRead=popCString,r.wireWrite=pushCString,r.readResources=[_nbind.resources.pool],r.writeResources=[_nbind.resources.pool],r}return t.prototype.makeWireWrite=function(r,s){return function(a){return pushCString(a,s)}},t}(BindType);_nbind.CStringType=CStringType;var BooleanType=function(e){__extends(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.wireRead=function(s){return!!s},r}return t.prototype.needsWireWrite=function(r){return!!r&&!!r.Strict},t.prototype.makeWireRead=function(r){return"!!("+r+")"},t.prototype.makeWireWrite=function(r,s){return s&&s.Strict&&function(a){if(typeof a=="boolean")return a;throw new Error("Type mismatch")}||r},t}(BindType);_nbind.BooleanType=BooleanType;var Wrapper=function(){function e(){}return e.prototype.persist=function(){this.__nbindState|=1},e}();_nbind.Wrapper=Wrapper;function makeBound(e,t){var r=function(s){__extends(a,s);function a(o,g,p,f){var m=s.call(this)||this;if(!(m instanceof a))return new(Function.prototype.bind.apply(a,Array.prototype.concat.apply([null],arguments)));var y=g,B=p,v=f;if(o!==_nbind.ptrMarker){var G=m.__nbindConstructor.apply(m,arguments);y=4608,v=HEAPU32[G/4],B=HEAPU32[G/4+1]}var T={configurable:!0,enumerable:!1,value:null,writable:!1},O={__nbindFlags:y,__nbindPtr:B};v&&(O.__nbindShared=v,_nbind.mark(m));for(var X=0,U=Object.keys(O);X>=1;var r=_nbind.valueList[e];return _nbind.valueList[e]=firstFreeValue,firstFreeValue=e,r}else{if(t)return _nbind.popShared(e,t);throw new Error("Invalid value slot "+e)}}_nbind.popValue=popValue;var valueBase=18446744073709552e3;function push64(e){return typeof e=="number"?e:pushValue(e)*4096+valueBase}function pop64(e){return e=3?g=Buffer.from(o):g=new Buffer(o),g.copy(s)}else getBuffer(s).set(o)}}_nbind.commitBuffer=commitBuffer;var dirtyList=[],gcTimer=0;function sweep(){for(var e=0,t=dirtyList;e>2]=DYNAMIC_BASE,staticSealed=!0;function invoke_viiiii(e,t,r,s,a,o){try{Module.dynCall_viiiii(e,t,r,s,a,o)}catch(g){if(typeof g!="number"&&g!=="longjmp")throw g;Module.setThrew(1,0)}}function invoke_vif(e,t,r){try{Module.dynCall_vif(e,t,r)}catch(s){if(typeof s!="number"&&s!=="longjmp")throw s;Module.setThrew(1,0)}}function invoke_vid(e,t,r){try{Module.dynCall_vid(e,t,r)}catch(s){if(typeof s!="number"&&s!=="longjmp")throw s;Module.setThrew(1,0)}}function invoke_fiff(e,t,r,s){try{return Module.dynCall_fiff(e,t,r,s)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_vi(e,t){try{Module.dynCall_vi(e,t)}catch(r){if(typeof r!="number"&&r!=="longjmp")throw r;Module.setThrew(1,0)}}function invoke_vii(e,t,r){try{Module.dynCall_vii(e,t,r)}catch(s){if(typeof s!="number"&&s!=="longjmp")throw s;Module.setThrew(1,0)}}function invoke_ii(e,t){try{return Module.dynCall_ii(e,t)}catch(r){if(typeof r!="number"&&r!=="longjmp")throw r;Module.setThrew(1,0)}}function invoke_viddi(e,t,r,s,a){try{Module.dynCall_viddi(e,t,r,s,a)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}function invoke_vidd(e,t,r,s){try{Module.dynCall_vidd(e,t,r,s)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_iiii(e,t,r,s){try{return Module.dynCall_iiii(e,t,r,s)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_diii(e,t,r,s){try{return Module.dynCall_diii(e,t,r,s)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_di(e,t){try{return Module.dynCall_di(e,t)}catch(r){if(typeof r!="number"&&r!=="longjmp")throw r;Module.setThrew(1,0)}}function invoke_iid(e,t,r){try{return Module.dynCall_iid(e,t,r)}catch(s){if(typeof s!="number"&&s!=="longjmp")throw s;Module.setThrew(1,0)}}function invoke_iii(e,t,r){try{return Module.dynCall_iii(e,t,r)}catch(s){if(typeof s!="number"&&s!=="longjmp")throw s;Module.setThrew(1,0)}}function invoke_viiddi(e,t,r,s,a,o){try{Module.dynCall_viiddi(e,t,r,s,a,o)}catch(g){if(typeof g!="number"&&g!=="longjmp")throw g;Module.setThrew(1,0)}}function invoke_viiiiii(e,t,r,s,a,o,g){try{Module.dynCall_viiiiii(e,t,r,s,a,o,g)}catch(p){if(typeof p!="number"&&p!=="longjmp")throw p;Module.setThrew(1,0)}}function invoke_dii(e,t,r){try{return Module.dynCall_dii(e,t,r)}catch(s){if(typeof s!="number"&&s!=="longjmp")throw s;Module.setThrew(1,0)}}function invoke_i(e){try{return Module.dynCall_i(e)}catch(t){if(typeof t!="number"&&t!=="longjmp")throw t;Module.setThrew(1,0)}}function invoke_iiiiii(e,t,r,s,a,o){try{return Module.dynCall_iiiiii(e,t,r,s,a,o)}catch(g){if(typeof g!="number"&&g!=="longjmp")throw g;Module.setThrew(1,0)}}function invoke_viiid(e,t,r,s,a){try{Module.dynCall_viiid(e,t,r,s,a)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}function invoke_viififi(e,t,r,s,a,o,g){try{Module.dynCall_viififi(e,t,r,s,a,o,g)}catch(p){if(typeof p!="number"&&p!=="longjmp")throw p;Module.setThrew(1,0)}}function invoke_viii(e,t,r,s){try{Module.dynCall_viii(e,t,r,s)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_v(e){try{Module.dynCall_v(e)}catch(t){if(typeof t!="number"&&t!=="longjmp")throw t;Module.setThrew(1,0)}}function invoke_viid(e,t,r,s){try{Module.dynCall_viid(e,t,r,s)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_idd(e,t,r){try{return Module.dynCall_idd(e,t,r)}catch(s){if(typeof s!="number"&&s!=="longjmp")throw s;Module.setThrew(1,0)}}function invoke_viiii(e,t,r,s,a){try{Module.dynCall_viiii(e,t,r,s,a)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}Module.asmGlobalArg={Math,Int8Array,Int16Array,Int32Array,Uint8Array,Uint16Array,Uint32Array,Float32Array,Float64Array,NaN:NaN,Infinity:1/0},Module.asmLibraryArg={abort,assert,enlargeMemory,getTotalMemory,abortOnCannotGrowMemory,invoke_viiiii,invoke_vif,invoke_vid,invoke_fiff,invoke_vi,invoke_vii,invoke_ii,invoke_viddi,invoke_vidd,invoke_iiii,invoke_diii,invoke_di,invoke_iid,invoke_iii,invoke_viiddi,invoke_viiiiii,invoke_dii,invoke_i,invoke_iiiiii,invoke_viiid,invoke_viififi,invoke_viii,invoke_v,invoke_viid,invoke_idd,invoke_viiii,_emscripten_asm_const_iiiii,_emscripten_asm_const_iiidddddd,_emscripten_asm_const_iiiid,__nbind_reference_external,_emscripten_asm_const_iiiiiiii,_removeAccessorPrefix,_typeModule,__nbind_register_pool,__decorate,_llvm_stackrestore,___cxa_atexit,__extends,__nbind_get_value_object,__ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj,_emscripten_set_main_loop_timing,__nbind_register_primitive,__nbind_register_type,_emscripten_memcpy_big,__nbind_register_function,___setErrNo,__nbind_register_class,__nbind_finish,_abort,_nbind_value,_llvm_stacksave,___syscall54,_defineHidden,_emscripten_set_main_loop,_emscripten_get_now,__nbind_register_callback_signature,_emscripten_asm_const_iiiiii,__nbind_free_external,_emscripten_asm_const_iiii,_emscripten_asm_const_iiididi,___syscall6,_atexit,___syscall140,___syscall146,DYNAMICTOP_PTR,tempDoublePtr,ABORT,STACKTOP,STACK_MAX,cttz_i8,___dso_handle};var asm=function(e,t,r){var s=new e.Int8Array(r),a=new e.Int16Array(r),o=new e.Int32Array(r),g=new e.Uint8Array(r),p=new e.Uint16Array(r),f=new e.Uint32Array(r),m=new e.Float32Array(r),y=new e.Float64Array(r),B=t.DYNAMICTOP_PTR|0,v=t.tempDoublePtr|0,G=t.ABORT|0,T=t.STACKTOP|0,O=t.STACK_MAX|0,X=t.cttz_i8|0,U=t.___dso_handle|0,le=0,ae=0,ge=0,fe=0,pe=e.NaN,he=e.Infinity,be=0,Te=0,ke=0,x=0,et=0,Ue=0,Je=e.Math.floor,Xe=e.Math.abs,ft=e.Math.sqrt,Gt=e.Math.pow,er=e.Math.cos,Ur=e.Math.sin,Ot=e.Math.tan,dr=e.Math.acos,Ar=e.Math.asin,or=e.Math.atan,Fr=e.Math.atan2,$r=e.Math.exp,Or=e.Math.log,In=e.Math.ceil,Br=e.Math.imul,tr=e.Math.min,gn=e.Math.max,Gn=e.Math.clz32,we=e.Math.fround,Zi=t.abort,Za=t.assert,ka=t.enlargeMemory,Qs=t.getTotalMemory,lr=t.abortOnCannotGrowMemory,ga=t.invoke_viiiii,vi=t.invoke_vif,Qu=t.invoke_vid,Yu=t.invoke_fiff,YA=t.invoke_vi,ud=t.invoke_vii,TA=t.invoke_ii,Ld=t.invoke_viddi,jr=t.invoke_vidd,Gr=t.invoke_iiii,Ir=t.invoke_diii,nn=t.invoke_di,Cn=t.invoke_iid,Vn=t.invoke_iii,Ji=t.invoke_viiddi,Hr=t.invoke_viiiiii,Ws=t.invoke_dii,Ko=t.invoke_i,ai=t.invoke_iiiiii,pa=t.invoke_viiid,sg=t.invoke_viififi,Fu=t.invoke_viii,Cg=t.invoke_v,Zu=t.invoke_viid,Cl=t.invoke_idd,wi=t.invoke_viiii,ts=t._emscripten_asm_const_iiiii,$i=t._emscripten_asm_const_iiidddddd,Ga=t._emscripten_asm_const_iiiid,$s=t.__nbind_reference_external,xl=t._emscripten_asm_const_iiiiiiii,qo=t._removeAccessorPrefix,Na=t._typeModule,wu=t.__nbind_register_pool,Dg=t.__decorate,hl=t._llvm_stackrestore,au=t.___cxa_atexit,Lg=t.__extends,cf=t.__nbind_get_value_object,Td=t.__ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj,ei=t._emscripten_set_main_loop_timing,Qa=t.__nbind_register_primitive,Rt=t.__nbind_register_type,kl=t._emscripten_memcpy_big,Hu=t.__nbind_register_function,us=t.___setErrNo,og=t.__nbind_register_class,on=t.__nbind_finish,Bo=t._abort,$g=t._nbind_value,cA=t._llvm_stacksave,HA=t.___syscall54,No=t._defineHidden,Hl=t._emscripten_set_main_loop,Ff=t._emscripten_get_now,Vd=t.__nbind_register_callback_signature,bA=t._emscripten_asm_const_iiiiii,Os=t.__nbind_free_external,Hi=t._emscripten_asm_const_iiii,ec=t._emscripten_asm_const_iiididi,ll=t.___syscall6,Ts=t._atexit,NA=t.___syscall140,Ud=t.___syscall146,Ra=we(0);let ys=we(0);function Xa(A){A=A|0;var _=0;return _=T,T=T+A|0,T=T+15&-16,_|0}function cm(){return T|0}function eo(A){A=A|0,T=A}function ps(A,_){A=A|0,_=_|0,T=A,O=_}function oc(A,_){A=A|0,_=_|0,le||(le=A,ae=_)}function TC(A){A=A|0,Ue=A}function pI(){return Ue|0}function SI(){var A=0,_=0;$d(8104,8,400)|0,$d(8504,408,540)|0,A=9044,_=A+44|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));s[9088]=0,s[9089]=1,o[2273]=0,o[2274]=948,o[2275]=948,au(17,8104,U|0)|0}function Bl(A){A=A|0,na(A+948|0)}function il(A){return A=we(A),((Qw(A)|0)&2147483647)>>>0>2139095040|0}function LA(A,_,S){A=A|0,_=_|0,S=S|0;e:do if(o[A+(_<<3)+4>>2]|0)A=A+(_<<3)|0;else{if((_|2|0)==3&&o[A+60>>2]|0){A=A+56|0;break}switch(_|0){case 0:case 2:case 4:case 5:{if(o[A+52>>2]|0){A=A+48|0;break e}break}default:}if(o[A+68>>2]|0){A=A+64|0;break}else{A=(_|1|0)==5?948:S;break}}while(!1);return A|0}function lf(A){A=A|0;var _=0;return _=jee(1e3)|0,za(A,(_|0)!=0,2456),o[2276]=(o[2276]|0)+1,$d(_|0,8104,1e3)|0,s[A+2>>0]|0&&(o[_+4>>2]=2,o[_+12>>2]=4),o[_+976>>2]=A,_|0}function za(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0;Y=T,T=T+16|0,F=Y,_||(o[F>>2]=S,g2(A,5,3197,F)),T=Y}function iu(){return lf(956)|0}function ii(A){A=A|0;var _=0;return _=xu(1e3)|0,NC(_,A),za(o[A+976>>2]|0,1,2456),o[2276]=(o[2276]|0)+1,o[_+944>>2]=0,_|0}function NC(A,_){A=A|0,_=_|0;var S=0;$d(A|0,_|0,948)|0,mS(A+948|0,_+948|0),S=A+960|0,A=_+960|0,_=S+40|0;do o[S>>2]=o[A>>2],S=S+4|0,A=A+4|0;while((S|0)<(_|0))}function Jh(A){A=A|0;var _=0,S=0,F=0,Y=0;if(_=A+944|0,S=o[_>>2]|0,S|0&&(Tm(S+948|0,A)|0,o[_>>2]=0),S=_l(A)|0,S|0){_=0;do o[(Og(A,_)|0)+944>>2]=0,_=_+1|0;while((_|0)!=(S|0))}S=A+948|0,F=o[S>>2]|0,Y=A+952|0,_=o[Y>>2]|0,(_|0)!=(F|0)&&(o[Y>>2]=_+(~((_+-4-F|0)>>>2)<<2)),sp(S),zee(A),o[2276]=(o[2276]|0)+-1}function Tm(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0;F=o[A>>2]|0,Se=A+4|0,S=o[Se>>2]|0,H=S;e:do if((F|0)==(S|0))Y=F,oe=4;else for(A=F;;){if((o[A>>2]|0)==(_|0)){Y=A,oe=4;break e}if(A=A+4|0,(A|0)==(S|0)){A=0;break}}while(!1);return(oe|0)==4&&((Y|0)!=(S|0)?(F=Y+4|0,A=H-F|0,_=A>>2,_&&(T6(Y|0,F|0,A|0)|0,S=o[Se>>2]|0),A=Y+(_<<2)|0,(S|0)==(A|0)||(o[Se>>2]=S+(~((S+-4-A|0)>>>2)<<2)),A=1):A=0),A|0}function _l(A){return A=A|0,(o[A+952>>2]|0)-(o[A+948>>2]|0)>>2|0}function Og(A,_){A=A|0,_=_|0;var S=0;return S=o[A+948>>2]|0,(o[A+952>>2]|0)-S>>2>>>0>_>>>0?A=o[S+(_<<2)>>2]|0:A=0,A|0}function sp(A){A=A|0;var _=0,S=0,F=0,Y=0;F=T,T=T+32|0,_=F,Y=o[A>>2]|0,S=(o[A+4>>2]|0)-Y|0,((o[A+8>>2]|0)-Y|0)>>>0>S>>>0&&(Y=S>>2,An(_,Y,Y,A+8|0),h1(A,_),d2(_)),T=F}function lm(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0;Ct=_l(A)|0;do if(Ct|0){if((o[(Og(A,0)|0)+944>>2]|0)==(A|0)){if(!(Tm(A+948|0,_)|0))break;$d(_+400|0,8504,540)|0,o[_+944>>2]=0,Di(A);break}oe=o[(o[A+976>>2]|0)+12>>2]|0,Se=A+948|0,He=(oe|0)==0,S=0,H=0;do F=o[(o[Se>>2]|0)+(H<<2)>>2]|0,(F|0)==(_|0)?Di(A):(Y=ii(F)|0,o[(o[Se>>2]|0)+(S<<2)>>2]=Y,o[Y+944>>2]=A,He||CV[oe&15](F,Y,A,S),S=S+1|0),H=H+1|0;while((H|0)!=(Ct|0));if(S>>>0>>0){He=A+948|0,Se=A+952|0,oe=S,S=o[Se>>2]|0;do H=(o[He>>2]|0)+(oe<<2)|0,F=H+4|0,Y=S-F|0,_=Y>>2,_&&(T6(H|0,F|0,Y|0)|0,S=o[Se>>2]|0),Y=S,F=H+(_<<2)|0,(Y|0)!=(F|0)&&(S=Y+(~((Y+-4-F|0)>>>2)<<2)|0,o[Se>>2]=S),oe=oe+1|0;while((oe|0)!=(Ct|0))}}while(!1)}function ch(A){A=A|0;var _=0,S=0,F=0,Y=0;Xl(A,(_l(A)|0)==0,2491),Xl(A,(o[A+944>>2]|0)==0,2545),_=A+948|0,S=o[_>>2]|0,F=A+952|0,Y=o[F>>2]|0,(Y|0)!=(S|0)&&(o[F>>2]=Y+(~((Y+-4-S|0)>>>2)<<2)),sp(_),_=A+976|0,S=o[_>>2]|0,$d(A|0,8104,1e3)|0,s[S+2>>0]|0&&(o[A+4>>2]=2,o[A+12>>2]=4),o[_>>2]=S}function Xl(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0;Y=T,T=T+16|0,F=Y,_||(o[F>>2]=S,DA(A,5,3197,F)),T=Y}function Wp(){return o[2276]|0}function uC(){var A=0;return A=jee(20)|0,fs((A|0)!=0,2592),o[2277]=(o[2277]|0)+1,o[A>>2]=o[239],o[A+4>>2]=o[240],o[A+8>>2]=o[241],o[A+12>>2]=o[242],o[A+16>>2]=o[243],A|0}function fs(A,_){A=A|0,_=_|0;var S=0,F=0;F=T,T=T+16|0,S=F,A||(o[S>>2]=_,DA(0,5,3197,S)),T=F}function Ao(A){A=A|0,zee(A),o[2277]=(o[2277]|0)+-1}function Do(A,_){A=A|0,_=_|0;var S=0;_?(Xl(A,(_l(A)|0)==0,2629),S=1):(S=0,_=0),o[A+964>>2]=_,o[A+988>>2]=S}function zl(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;F=T,T=T+16|0,H=F+8|0,Y=F+4|0,oe=F,o[Y>>2]=_,Xl(A,(o[_+944>>2]|0)==0,2709),Xl(A,(o[A+964>>2]|0)==0,2763),Nr(A),_=A+948|0,o[oe>>2]=(o[_>>2]|0)+(S<<2),o[H>>2]=o[oe>>2],Nn(_,H,Y)|0,o[(o[Y>>2]|0)+944>>2]=A,Di(A),T=F}function Nr(A){A=A|0;var _=0,S=0,F=0,Y=0,H=0,oe=0,Se=0;if(S=_l(A)|0,S|0&&(o[(Og(A,0)|0)+944>>2]|0)!=(A|0)){F=o[(o[A+976>>2]|0)+12>>2]|0,Y=A+948|0,H=(F|0)==0,_=0;do oe=o[(o[Y>>2]|0)+(_<<2)>>2]|0,Se=ii(oe)|0,o[(o[Y>>2]|0)+(_<<2)>>2]=Se,o[Se+944>>2]=A,H||CV[F&15](oe,Se,A,_),_=_+1|0;while((_|0)!=(S|0))}}function Nn(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0,Is=0,ji=0,Ei=0,bo=0,ro=0;bo=T,T=T+64|0,Ut=bo+52|0,Se=bo+48|0,cn=bo+28|0,Is=bo+24|0,ji=bo+20|0,Ei=bo,F=o[A>>2]|0,H=F,_=F+((o[_>>2]|0)-H>>2<<2)|0,F=A+4|0,Y=o[F>>2]|0,oe=A+8|0;do if(Y>>>0<(o[oe>>2]|0)>>>0){if((_|0)==(Y|0)){o[_>>2]=o[S>>2],o[F>>2]=(o[F>>2]|0)+4;break}zh(A,_,Y,_+4|0),_>>>0<=S>>>0&&(S=(o[F>>2]|0)>>>0>S>>>0?S+4|0:S),o[_>>2]=o[S>>2]}else{F=(Y-H>>2)+1|0,Y=at(A)|0,Y>>>0>>0&&RI(A),At=o[A>>2]|0,Ct=(o[oe>>2]|0)-At|0,H=Ct>>1,An(Ei,Ct>>2>>>0>>1>>>0?H>>>0>>0?F:H:Y,_-At>>2,A+8|0),At=Ei+8|0,F=o[At>>2]|0,H=Ei+12|0,Ct=o[H>>2]|0,oe=Ct,He=F;do if((F|0)==(Ct|0)){if(Ct=Ei+4|0,F=o[Ct>>2]|0,ro=o[Ei>>2]|0,Y=ro,F>>>0<=ro>>>0){F=oe-Y>>1,F=F|0?F:1,An(cn,F,F>>>2,o[Ei+16>>2]|0),o[Is>>2]=o[Ct>>2],o[ji>>2]=o[At>>2],o[Se>>2]=o[Is>>2],o[Ut>>2]=o[ji>>2],Yw(cn,Se,Ut),F=o[Ei>>2]|0,o[Ei>>2]=o[cn>>2],o[cn>>2]=F,F=cn+4|0,ro=o[Ct>>2]|0,o[Ct>>2]=o[F>>2],o[F>>2]=ro,F=cn+8|0,ro=o[At>>2]|0,o[At>>2]=o[F>>2],o[F>>2]=ro,F=cn+12|0,ro=o[H>>2]|0,o[H>>2]=o[F>>2],o[F>>2]=ro,d2(cn),F=o[At>>2]|0;break}H=F,oe=((H-Y>>2)+1|0)/-2|0,Se=F+(oe<<2)|0,Y=He-H|0,H=Y>>2,H&&(T6(Se|0,F|0,Y|0)|0,F=o[Ct>>2]|0),ro=Se+(H<<2)|0,o[At>>2]=ro,o[Ct>>2]=F+(oe<<2),F=ro}while(!1);o[F>>2]=o[S>>2],o[At>>2]=(o[At>>2]|0)+4,_=dp(A,Ei,_)|0,d2(Ei)}while(!1);return T=bo,_|0}function Di(A){A=A|0;var _=0;do{if(_=A+984|0,s[_>>0]|0)break;s[_>>0]=1,m[A+504>>2]=we(pe),A=o[A+944>>2]|0}while(A|0)}function na(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-4-F|0)>>>2)<<2)),Va(S))}function Ks(A){return A=A|0,o[A+944>>2]|0}function Li(A){A=A|0,Xl(A,(o[A+964>>2]|0)!=0,2832),Di(A)}function Zl(A){return A=A|0,(s[A+984>>0]|0)!=0|0}function RA(A,_){A=A|0,_=_|0,qee(A,_,400)|0&&($d(A|0,_|0,400)|0,Di(A))}function Nd(A){A=A|0;var _=ys;return _=we(m[A+44>>2]),A=il(_)|0,we(A?we(0):_)}function WI(A){A=A|0;var _=ys;return _=we(m[A+48>>2]),il(_)|0&&(_=s[(o[A+976>>2]|0)+2>>0]|0?we(1):we(0)),we(_)}function pl(A,_){A=A|0,_=_|0,o[A+980>>2]=_}function Qm(A){return A=A|0,o[A+980>>2]|0}function f1(A,_){A=A|0,_=_|0;var S=0;S=A+4|0,(o[S>>2]|0)!=(_|0)&&(o[S>>2]=_,Di(A))}function fv(A){return A=A|0,o[A+4>>2]|0}function eA(A,_){A=A|0,_=_|0;var S=0;S=A+8|0,(o[S>>2]|0)!=(_|0)&&(o[S>>2]=_,Di(A))}function Nm(A){return A=A|0,o[A+8>>2]|0}function lh(A,_){A=A|0,_=_|0;var S=0;S=A+12|0,(o[S>>2]|0)!=(_|0)&&(o[S>>2]=_,Di(A))}function Oy(A){return A=A|0,o[A+12>>2]|0}function vp(A,_){A=A|0,_=_|0;var S=0;S=A+16|0,(o[S>>2]|0)!=(_|0)&&(o[S>>2]=_,Di(A))}function tA(A){return A=A|0,o[A+16>>2]|0}function R0(A,_){A=A|0,_=_|0;var S=0;S=A+20|0,(o[S>>2]|0)!=(_|0)&&(o[S>>2]=_,Di(A))}function _h(A){return A=A|0,o[A+20>>2]|0}function ly(A,_){A=A|0,_=_|0;var S=0;S=A+24|0,(o[S>>2]|0)!=(_|0)&&(o[S>>2]=_,Di(A))}function uc(A){return A=A|0,o[A+24>>2]|0}function b_(A,_){A=A|0,_=_|0;var S=0;S=A+28|0,(o[S>>2]|0)!=(_|0)&&(o[S>>2]=_,Di(A))}function Sb(A){return A=A|0,o[A+28>>2]|0}function um(A,_){A=A|0,_=_|0;var S=0;S=A+32|0,(o[S>>2]|0)!=(_|0)&&(o[S>>2]=_,Di(A))}function uh(A){return A=A|0,o[A+32>>2]|0}function pg(A,_){A=A|0,_=_|0;var S=0;S=A+36|0,(o[S>>2]|0)!=(_|0)&&(o[S>>2]=_,Di(A))}function gm(A){return A=A|0,o[A+36>>2]|0}function wb(A,_){A=A|0,_=we(_);var S=0;S=A+40|0,we(m[S>>2])!=_&&(m[S>>2]=_,Di(A))}function Rm(A,_){A=A|0,_=we(_);var S=0;S=A+44|0,we(m[S>>2])!=_&&(m[S>>2]=_,Di(A))}function PI(A,_){A=A|0,_=we(_);var S=0;S=A+48|0,we(m[S>>2])!=_&&(m[S>>2]=_,Di(A))}function Ef(A,_){A=A|0,_=we(_);var S=0,F=0,Y=0,H=0;H=il(_)|0,S=(H^1)&1,F=A+52|0,Y=A+56|0,H|we(m[F>>2])==_&&(o[Y>>2]|0)==(S|0)||(m[F>>2]=_,o[Y>>2]=S,Di(A))}function eI(A,_){A=A|0,_=we(_);var S=0,F=0;F=A+52|0,S=A+56|0,we(m[F>>2])==_&&(o[S>>2]|0)==2||(m[F>>2]=_,F=il(_)|0,o[S>>2]=F?3:2,Di(A))}function Zf(A,_){A=A|0,_=_|0;var S=0,F=0;F=_+52|0,S=o[F+4>>2]|0,_=A,o[_>>2]=o[F>>2],o[_+4>>2]=S}function hE(A,_,S){A=A|0,_=_|0,S=we(S);var F=0,Y=0,H=0;H=il(S)|0,F=(H^1)&1,Y=A+132+(_<<3)|0,_=A+132+(_<<3)+4|0,H|we(m[Y>>2])==S&&(o[_>>2]|0)==(F|0)||(m[Y>>2]=S,o[_>>2]=F,Di(A))}function uy(A,_,S){A=A|0,_=_|0,S=we(S);var F=0,Y=0,H=0;H=il(S)|0,F=H?0:2,Y=A+132+(_<<3)|0,_=A+132+(_<<3)+4|0,H|we(m[Y>>2])==S&&(o[_>>2]|0)==(F|0)||(m[Y>>2]=S,o[_>>2]=F,Di(A))}function ie(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=_+132+(S<<3)|0,_=o[F+4>>2]|0,S=A,o[S>>2]=o[F>>2],o[S+4>>2]=_}function w(A,_,S){A=A|0,_=_|0,S=we(S);var F=0,Y=0,H=0;H=il(S)|0,F=(H^1)&1,Y=A+60+(_<<3)|0,_=A+60+(_<<3)+4|0,H|we(m[Y>>2])==S&&(o[_>>2]|0)==(F|0)||(m[Y>>2]=S,o[_>>2]=F,Di(A))}function J(A,_,S){A=A|0,_=_|0,S=we(S);var F=0,Y=0,H=0;H=il(S)|0,F=H?0:2,Y=A+60+(_<<3)|0,_=A+60+(_<<3)+4|0,H|we(m[Y>>2])==S&&(o[_>>2]|0)==(F|0)||(m[Y>>2]=S,o[_>>2]=F,Di(A))}function ye(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=_+60+(S<<3)|0,_=o[F+4>>2]|0,S=A,o[S>>2]=o[F>>2],o[S+4>>2]=_}function ut(A,_){A=A|0,_=_|0;var S=0;S=A+60+(_<<3)+4|0,(o[S>>2]|0)!=3&&(m[A+60+(_<<3)>>2]=we(pe),o[S>>2]=3,Di(A))}function zt(A,_,S){A=A|0,_=_|0,S=we(S);var F=0,Y=0,H=0;H=il(S)|0,F=(H^1)&1,Y=A+204+(_<<3)|0,_=A+204+(_<<3)+4|0,H|we(m[Y>>2])==S&&(o[_>>2]|0)==(F|0)||(m[Y>>2]=S,o[_>>2]=F,Di(A))}function Zr(A,_,S){A=A|0,_=_|0,S=we(S);var F=0,Y=0,H=0;H=il(S)|0,F=H?0:2,Y=A+204+(_<<3)|0,_=A+204+(_<<3)+4|0,H|we(m[Y>>2])==S&&(o[_>>2]|0)==(F|0)||(m[Y>>2]=S,o[_>>2]=F,Di(A))}function wr(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=_+204+(S<<3)|0,_=o[F+4>>2]|0,S=A,o[S>>2]=o[F>>2],o[S+4>>2]=_}function Yn(A,_,S){A=A|0,_=_|0,S=we(S);var F=0,Y=0,H=0;H=il(S)|0,F=(H^1)&1,Y=A+276+(_<<3)|0,_=A+276+(_<<3)+4|0,H|we(m[Y>>2])==S&&(o[_>>2]|0)==(F|0)||(m[Y>>2]=S,o[_>>2]=F,Di(A))}function Dn(A,_){return A=A|0,_=_|0,we(m[A+276+(_<<3)>>2])}function Po(A,_){A=A|0,_=we(_);var S=0,F=0,Y=0,H=0;H=il(_)|0,S=(H^1)&1,F=A+348|0,Y=A+352|0,H|we(m[F>>2])==_&&(o[Y>>2]|0)==(S|0)||(m[F>>2]=_,o[Y>>2]=S,Di(A))}function fc(A,_){A=A|0,_=we(_);var S=0,F=0;F=A+348|0,S=A+352|0,we(m[F>>2])==_&&(o[S>>2]|0)==2||(m[F>>2]=_,F=il(_)|0,o[S>>2]=F?3:2,Di(A))}function Xc(A){A=A|0;var _=0;_=A+352|0,(o[_>>2]|0)!=3&&(m[A+348>>2]=we(pe),o[_>>2]=3,Di(A))}function Yo(A,_){A=A|0,_=_|0;var S=0,F=0;F=_+348|0,S=o[F+4>>2]|0,_=A,o[_>>2]=o[F>>2],o[_+4>>2]=S}function yu(A,_){A=A|0,_=we(_);var S=0,F=0,Y=0,H=0;H=il(_)|0,S=(H^1)&1,F=A+356|0,Y=A+360|0,H|we(m[F>>2])==_&&(o[Y>>2]|0)==(S|0)||(m[F>>2]=_,o[Y>>2]=S,Di(A))}function op(A,_){A=A|0,_=we(_);var S=0,F=0;F=A+356|0,S=A+360|0,we(m[F>>2])==_&&(o[S>>2]|0)==2||(m[F>>2]=_,F=il(_)|0,o[S>>2]=F?3:2,Di(A))}function lA(A){A=A|0;var _=0;_=A+360|0,(o[_>>2]|0)!=3&&(m[A+356>>2]=we(pe),o[_>>2]=3,Di(A))}function tI(A,_){A=A|0,_=_|0;var S=0,F=0;F=_+356|0,S=o[F+4>>2]|0,_=A,o[_>>2]=o[F>>2],o[_+4>>2]=S}function Kd(A,_){A=A|0,_=we(_);var S=0,F=0,Y=0,H=0;H=il(_)|0,S=(H^1)&1,F=A+364|0,Y=A+368|0,H|we(m[F>>2])==_&&(o[Y>>2]|0)==(S|0)||(m[F>>2]=_,o[Y>>2]=S,Di(A))}function D0(A,_){A=A|0,_=we(_);var S=0,F=0,Y=0,H=0;H=il(_)|0,S=H?0:2,F=A+364|0,Y=A+368|0,H|we(m[F>>2])==_&&(o[Y>>2]|0)==(S|0)||(m[F>>2]=_,o[Y>>2]=S,Di(A))}function ya(A,_){A=A|0,_=_|0;var S=0,F=0;F=_+364|0,S=o[F+4>>2]|0,_=A,o[_>>2]=o[F>>2],o[_+4>>2]=S}function md(A,_){A=A|0,_=we(_);var S=0,F=0,Y=0,H=0;H=il(_)|0,S=(H^1)&1,F=A+372|0,Y=A+376|0,H|we(m[F>>2])==_&&(o[Y>>2]|0)==(S|0)||(m[F>>2]=_,o[Y>>2]=S,Di(A))}function fI(A,_){A=A|0,_=we(_);var S=0,F=0,Y=0,H=0;H=il(_)|0,S=H?0:2,F=A+372|0,Y=A+376|0,H|we(m[F>>2])==_&&(o[Y>>2]|0)==(S|0)||(m[F>>2]=_,o[Y>>2]=S,Di(A))}function Bf(A,_){A=A|0,_=_|0;var S=0,F=0;F=_+372|0,S=o[F+4>>2]|0,_=A,o[_>>2]=o[F>>2],o[_+4>>2]=S}function Uh(A,_){A=A|0,_=we(_);var S=0,F=0,Y=0,H=0;H=il(_)|0,S=(H^1)&1,F=A+380|0,Y=A+384|0,H|we(m[F>>2])==_&&(o[Y>>2]|0)==(S|0)||(m[F>>2]=_,o[Y>>2]=S,Di(A))}function Ym(A,_){A=A|0,_=we(_);var S=0,F=0,Y=0,H=0;H=il(_)|0,S=H?0:2,F=A+380|0,Y=A+384|0,H|we(m[F>>2])==_&&(o[Y>>2]|0)==(S|0)||(m[F>>2]=_,o[Y>>2]=S,Di(A))}function IS(A,_){A=A|0,_=_|0;var S=0,F=0;F=_+380|0,S=o[F+4>>2]|0,_=A,o[_>>2]=o[F>>2],o[_+4>>2]=S}function CS(A,_){A=A|0,_=we(_);var S=0,F=0,Y=0,H=0;H=il(_)|0,S=(H^1)&1,F=A+388|0,Y=A+392|0,H|we(m[F>>2])==_&&(o[Y>>2]|0)==(S|0)||(m[F>>2]=_,o[Y>>2]=S,Di(A))}function _E(A,_){A=A|0,_=we(_);var S=0,F=0,Y=0,H=0;H=il(_)|0,S=H?0:2,F=A+388|0,Y=A+392|0,H|we(m[F>>2])==_&&(o[Y>>2]|0)==(S|0)||(m[F>>2]=_,o[Y>>2]=S,Di(A))}function x0(A,_){A=A|0,_=_|0;var S=0,F=0;F=_+388|0,S=o[F+4>>2]|0,_=A,o[_>>2]=o[F>>2],o[_+4>>2]=S}function yE(A,_){A=A|0,_=we(_);var S=0;S=A+396|0,we(m[S>>2])!=_&&(m[S>>2]=_,Di(A))}function CB(A){return A=A|0,we(m[A+396>>2])}function J_(A){return A=A|0,we(m[A+400>>2])}function yh(A){return A=A|0,we(m[A+404>>2])}function U_(A){return A=A|0,we(m[A+408>>2])}function ql(A){return A=A|0,we(m[A+412>>2])}function RC(A){return A=A|0,we(m[A+416>>2])}function Kl(A){return A=A|0,we(m[A+420>>2])}function ap(A,_){switch(A=A|0,_=_|0,Xl(A,(_|0)<6,2918),_|0){case 0:{_=(o[A+496>>2]|0)==2?5:4;break}case 2:{_=(o[A+496>>2]|0)==2?4:5;break}default:}return we(m[A+424+(_<<2)>>2])}function ug(A,_){switch(A=A|0,_=_|0,Xl(A,(_|0)<6,2918),_|0){case 0:{_=(o[A+496>>2]|0)==2?5:4;break}case 2:{_=(o[A+496>>2]|0)==2?4:5;break}default:}return we(m[A+448+(_<<2)>>2])}function Hm(A,_){switch(A=A|0,_=_|0,Xl(A,(_|0)<6,2918),_|0){case 0:{_=(o[A+496>>2]|0)==2?5:4;break}case 2:{_=(o[A+496>>2]|0)==2?4:5;break}default:}return we(m[A+472+(_<<2)>>2])}function Tb(A,_){A=A|0,_=_|0;var S=0,F=ys;return S=o[A+4>>2]|0,(S|0)==(o[_+4>>2]|0)?S?(F=we(m[A>>2]),A=we(Xe(we(F-we(m[_>>2]))))>2]=0,o[F+4>>2]=0,o[F+8>>2]=0,Td(F|0,A|0,_|0,0),DA(A,3,(s[F+11>>0]|0)<0?o[F>>2]|0:F,S),The(F),T=S}function QC(A,_,S,F){A=we(A),_=we(_),S=S|0,F=F|0;var Y=ys;A=we(A*_),Y=we(s4(A,we(1)));do if(rA(Y,we(0))|0)A=we(A-Y);else{if(A=we(A-Y),rA(Y,we(1))|0){A=we(A+we(1));break}if(S){A=we(A+we(1));break}F||(Y>we(.5)?Y=we(1):(F=rA(Y,we(.5))|0,Y=we(F?1:0)),A=we(A+Y))}while(!1);return we(A/_)}function wI(A,_,S,F,Y,H,oe,Se,He,Ct,At,Ut,cn){A=A|0,_=we(_),S=S|0,F=we(F),Y=Y|0,H=we(H),oe=oe|0,Se=we(Se),He=we(He),Ct=we(Ct),At=we(At),Ut=we(Ut),cn=cn|0;var Is=0,ji=ys,Ei=ys,bo=ys,ro=ys,ca=ys,as=ys;return He>2]),ji!=we(0))?(bo=we(QC(_,ji,0,0)),ro=we(QC(F,ji,0,0)),Ei=we(QC(H,ji,0,0)),ji=we(QC(Se,ji,0,0))):(Ei=H,bo=_,ji=Se,ro=F),(Y|0)==(A|0)?Is=rA(Ei,bo)|0:Is=0,(oe|0)==(S|0)?cn=rA(ji,ro)|0:cn=0,!Is&&(ca=we(_-At),!(Fi(A,ca,He)|0))&&!(Lo(A,ca,Y,He)|0)?Is=rs(A,ca,Y,H,He)|0:Is=1,!cn&&(as=we(F-Ut),!(Fi(S,as,Ct)|0))&&!(Lo(S,as,oe,Ct)|0)?cn=rs(S,as,oe,Se,Ct)|0:cn=1,cn=Is&cn),cn|0}function Fi(A,_,S){return A=A|0,_=we(_),S=we(S),(A|0)==1?A=rA(_,S)|0:A=0,A|0}function Lo(A,_,S,F){return A=A|0,_=we(_),S=S|0,F=we(F),(A|0)==2&(S|0)==0?_>=F?A=1:A=rA(_,F)|0:A=0,A|0}function rs(A,_,S,F,Y){return A=A|0,_=we(_),S=S|0,F=we(F),Y=we(Y),(A|0)==2&(S|0)==2&F>_?Y<=_?A=1:A=rA(_,Y)|0:A=0,A|0}function vc(A,_,S,F,Y,H,oe,Se,He,Ct,At){A=A|0,_=we(_),S=we(S),F=F|0,Y=Y|0,H=H|0,oe=we(oe),Se=we(Se),He=He|0,Ct=Ct|0,At=At|0;var Ut=0,cn=0,Is=0,ji=0,Ei=ys,bo=ys,ro=0,ca=0,as=0,hs=0,Sl=0,id=0,Tu=0,tg=0,ep=0,Vg=0,Vu=0,ml=ys,If=ys,tu=ys,Io=0,hA=0;Vu=T,T=T+160|0,tg=Vu+152|0,Tu=Vu+120|0,id=Vu+104|0,as=Vu+72|0,ji=Vu+56|0,Sl=Vu+8|0,ca=Vu,hs=(o[2279]|0)+1|0,o[2279]=hs,ep=A+984|0,s[ep>>0]|0&&(o[A+512>>2]|0)!=(o[2278]|0)?ro=4:(o[A+516>>2]|0)==(F|0)?Vg=0:ro=4,(ro|0)==4&&(o[A+520>>2]=0,o[A+924>>2]=-1,o[A+928>>2]=-1,m[A+932>>2]=we(-1),m[A+936>>2]=we(-1),Vg=1);e:do if(o[A+964>>2]|0)if(Ei=we(Ml(A,2,oe)),bo=we(Ml(A,0,oe)),Ut=A+916|0,tu=we(m[Ut>>2]),If=we(m[A+920>>2]),ml=we(m[A+932>>2]),wI(Y,_,H,S,o[A+924>>2]|0,tu,o[A+928>>2]|0,If,ml,we(m[A+936>>2]),Ei,bo,At)|0)ro=22;else if(Is=o[A+520>>2]|0,!Is)ro=21;else for(cn=0;;){if(Ut=A+524+(cn*24|0)|0,ml=we(m[Ut>>2]),If=we(m[A+524+(cn*24|0)+4>>2]),tu=we(m[A+524+(cn*24|0)+16>>2]),wI(Y,_,H,S,o[A+524+(cn*24|0)+8>>2]|0,ml,o[A+524+(cn*24|0)+12>>2]|0,If,tu,we(m[A+524+(cn*24|0)+20>>2]),Ei,bo,At)|0){ro=22;break e}if(cn=cn+1|0,cn>>>0>=Is>>>0){ro=21;break}}else{if(He){if(Ut=A+916|0,!(rA(we(m[Ut>>2]),_)|0)){ro=21;break}if(!(rA(we(m[A+920>>2]),S)|0)){ro=21;break}if((o[A+924>>2]|0)!=(Y|0)){ro=21;break}Ut=(o[A+928>>2]|0)==(H|0)?Ut:0,ro=22;break}if(Is=o[A+520>>2]|0,!Is)ro=21;else for(cn=0;;){if(Ut=A+524+(cn*24|0)|0,rA(we(m[Ut>>2]),_)|0&&rA(we(m[A+524+(cn*24|0)+4>>2]),S)|0&&(o[A+524+(cn*24|0)+8>>2]|0)==(Y|0)&&(o[A+524+(cn*24|0)+12>>2]|0)==(H|0)){ro=22;break e}if(cn=cn+1|0,cn>>>0>=Is>>>0){ro=21;break}}}while(!1);do if((ro|0)==21)s[11697]|0?(Ut=0,ro=28):(Ut=0,ro=31);else if((ro|0)==22){if(cn=(s[11697]|0)!=0,!((Ut|0)!=0&(Vg^1)))if(cn){ro=28;break}else{ro=31;break}ji=Ut+16|0,o[A+908>>2]=o[ji>>2],Is=Ut+20|0,o[A+912>>2]=o[Is>>2],(s[11698]|0)==0|cn^1||(o[ca>>2]=Lf(hs)|0,o[ca+4>>2]=hs,DA(A,4,2972,ca),cn=o[A+972>>2]|0,cn|0&&IV[cn&127](A),Y=jd(Y,He)|0,H=jd(H,He)|0,hA=+we(m[ji>>2]),Io=+we(m[Is>>2]),o[Sl>>2]=Y,o[Sl+4>>2]=H,y[Sl+8>>3]=+_,y[Sl+16>>3]=+S,y[Sl+24>>3]=hA,y[Sl+32>>3]=Io,o[Sl+40>>2]=Ct,DA(A,4,2989,Sl))}while(!1);return(ro|0)==28&&(cn=Lf(hs)|0,o[ji>>2]=cn,o[ji+4>>2]=hs,o[ji+8>>2]=Vg?3047:11699,DA(A,4,3038,ji),cn=o[A+972>>2]|0,cn|0&&IV[cn&127](A),Sl=jd(Y,He)|0,ro=jd(H,He)|0,o[as>>2]=Sl,o[as+4>>2]=ro,y[as+8>>3]=+_,y[as+16>>3]=+S,o[as+24>>2]=Ct,DA(A,4,3049,as),ro=31),(ro|0)==31&&(bh(A,_,S,F,Y,H,oe,Se,He,At),s[11697]|0&&(cn=o[2279]|0,Sl=Lf(cn)|0,o[id>>2]=Sl,o[id+4>>2]=cn,o[id+8>>2]=Vg?3047:11699,DA(A,4,3083,id),cn=o[A+972>>2]|0,cn|0&&IV[cn&127](A),Sl=jd(Y,He)|0,id=jd(H,He)|0,Io=+we(m[A+908>>2]),hA=+we(m[A+912>>2]),o[Tu>>2]=Sl,o[Tu+4>>2]=id,y[Tu+8>>3]=Io,y[Tu+16>>3]=hA,o[Tu+24>>2]=Ct,DA(A,4,3092,Tu)),o[A+516>>2]=F,Ut||(cn=A+520|0,Ut=o[cn>>2]|0,(Ut|0)==16&&(s[11697]|0&&DA(A,4,3124,tg),o[cn>>2]=0,Ut=0),He?Ut=A+916|0:(o[cn>>2]=Ut+1,Ut=A+524+(Ut*24|0)|0),m[Ut>>2]=_,m[Ut+4>>2]=S,o[Ut+8>>2]=Y,o[Ut+12>>2]=H,o[Ut+16>>2]=o[A+908>>2],o[Ut+20>>2]=o[A+912>>2],Ut=0)),He&&(o[A+416>>2]=o[A+908>>2],o[A+420>>2]=o[A+912>>2],s[A+985>>0]=1,s[ep>>0]=0),o[2279]=(o[2279]|0)+-1,o[A+512>>2]=o[2278],T=Vu,Vg|(Ut|0)==0|0}function Ml(A,_,S){A=A|0,_=_|0,S=we(S);var F=ys;return F=we($t(A,_,S)),we(F+we(Wr(A,_,S)))}function DA(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0;H=T,T=T+16|0,Y=H,o[Y>>2]=F,A?F=o[A+976>>2]|0:F=0,EE(F,A,_,S,Y),T=H}function Lf(A){return A=A|0,(A>>>0>60?3201:3201+(60-A)|0)|0}function jd(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0;return Y=T,T=T+32|0,S=Y+12|0,F=Y,o[S>>2]=o[254],o[S+4>>2]=o[255],o[S+8>>2]=o[256],o[F>>2]=o[257],o[F+4>>2]=o[258],o[F+8>>2]=o[259],(A|0)>2?A=11699:A=o[(_?F:S)+(A<<2)>>2]|0,T=Y,A|0}function bh(A,_,S,F,Y,H,oe,Se,He,Ct){A=A|0,_=we(_),S=we(S),F=F|0,Y=Y|0,H=H|0,oe=we(oe),Se=we(Se),He=He|0,Ct=Ct|0;var At=0,Ut=0,cn=0,Is=0,ji=ys,Ei=ys,bo=ys,ro=ys,ca=ys,as=ys,hs=ys,Sl=0,id=0,Tu=0,tg=ys,ep=ys,Vg=0,Vu=ys,ml=0,If=0,tu=0,Io=0,hA=0,cu=0,zS=0,V1=0,mV=0,FC=0,WA=0,fd=0,q3=0,eD=0,Cf=0,Ob=0,xB=0,Zx=0,no=ys,BN=ys,Lx=ys,Vx=ys,ph=ys,tp=0,ef=0,x_=0,qS=0,TG=0,iT=ys,vN=ys,$3=ys,NG=ys,VE=ys,Mb=ys,Wx=0,mc=ys,Rp=ys,Fv=ys,Hf=ys,H0=ys,kZ=ys,GZ=0,kB=0,tD=ys,W1=ys,RG=0,eP=0,k_=0,hV=0,Ed=ys,nC=0,F2=0,ob=0,$S=0,zs=0,yl=0,mp=0,bc=ys,HI=0,Wf=0;mp=T,T=T+16|0,tp=mp+12|0,ef=mp+8|0,x_=mp+4|0,qS=mp,Xl(A,(Y|0)==0|(il(_)|0)^1,3326),Xl(A,(H|0)==0|(il(S)|0)^1,3406),F2=wo(A,F)|0,o[A+496>>2]=F2,zs=fg(2,F2)|0,yl=fg(0,F2)|0,m[A+440>>2]=we($t(A,zs,oe)),m[A+444>>2]=we(Wr(A,zs,oe)),m[A+428>>2]=we($t(A,yl,oe)),m[A+436>>2]=we(Wr(A,yl,oe)),m[A+464>>2]=we(mg(A,zs)),m[A+468>>2]=we(gf(A,zs)),m[A+452>>2]=we(mg(A,yl)),m[A+460>>2]=we(gf(A,yl)),m[A+488>>2]=we(rI(A,zs,oe)),m[A+492>>2]=we(gC(A,zs,oe)),m[A+476>>2]=we(rI(A,yl,oe)),m[A+484>>2]=we(gC(A,yl,oe));do if(o[A+964>>2]|0)Nb(A,_,S,Y,H,oe,Se);else{if(ob=A+948|0,$S=(o[A+952>>2]|0)-(o[ob>>2]|0)>>2,!$S){zT(A,_,S,Y,H,oe,Se);break}if(!He&&Cv(A,_,S,Y,H,oe,Se)|0)break;Nr(A),Ob=A+508|0,s[Ob>>0]=0,zs=fg(o[A+4>>2]|0,F2)|0,yl=Pw(zs,F2)|0,nC=vn(zs)|0,xB=o[A+8>>2]|0,eP=A+28|0,Zx=(o[eP>>2]|0)!=0,H0=nC?oe:Se,tD=nC?Se:oe,no=we(Qy(A,zs,oe)),BN=we(C1(A,zs,oe)),ji=we(Qy(A,yl,oe)),kZ=we(K_(A,zs,oe)),W1=we(K_(A,yl,oe)),Tu=nC?Y:H,RG=nC?H:Y,Ed=nC?kZ:W1,ca=nC?W1:kZ,Hf=we(Ml(A,2,oe)),ro=we(Ml(A,0,oe)),Ei=we(we(Mi(A+364|0,oe))-Ed),bo=we(we(Mi(A+380|0,oe))-Ed),as=we(we(Mi(A+372|0,Se))-ca),hs=we(we(Mi(A+388|0,Se))-ca),Lx=nC?Ei:as,Vx=nC?bo:hs,Hf=we(_-Hf),_=we(Hf-Ed),il(_)|0?Ed=_:Ed=we(mA(we(US(_,bo)),Ei)),Rp=we(S-ro),_=we(Rp-ca),il(_)|0?Fv=_:Fv=we(mA(we(US(_,hs)),as)),Ei=nC?Ed:Fv,mc=nC?Fv:Ed;e:do if((Tu|0)==1)for(F=0,Ut=0;;){if(At=Og(A,Ut)|0,!F)we(jp(At))>we(0)&&we(dy(At))>we(0)?F=At:F=0;else if(Ow(At)|0){Is=0;break e}if(Ut=Ut+1|0,Ut>>>0>=$S>>>0){Is=F;break}}else Is=0;while(!1);Sl=Is+500|0,id=Is+504|0,F=0,At=0,_=we(0),cn=0;do{if(Ut=o[(o[ob>>2]|0)+(cn<<2)>>2]|0,(o[Ut+36>>2]|0)==1)A2(Ut),s[Ut+985>>0]=1,s[Ut+984>>0]=0;else{gy(Ut),He&&Ay(Ut,wo(Ut,F2)|0,Ei,mc,Ed);do if((o[Ut+24>>2]|0)!=1)if((Ut|0)==(Is|0)){o[Sl>>2]=o[2278],m[id>>2]=we(0);break}else{OI(A,Ut,Ed,Y,Fv,Ed,Fv,H,F2,Ct);break}else At|0&&(o[At+960>>2]=Ut),o[Ut+960>>2]=0,At=Ut,F=F|0?F:Ut;while(!1);Mb=we(m[Ut+504>>2]),_=we(_+we(Mb+we(Ml(Ut,zs,Ed))))}cn=cn+1|0}while((cn|0)!=($S|0));for(tu=_>Ei,Wx=Zx&((Tu|0)==2&tu)?1:Tu,ml=(RG|0)==1,hA=ml&(He^1),cu=(Wx|0)==1,zS=(Wx|0)==2,V1=976+(zs<<2)|0,mV=(RG|2|0)==2,eD=ml&(Zx^1),FC=1040+(yl<<2)|0,WA=1040+(zs<<2)|0,fd=976+(yl<<2)|0,q3=(RG|0)!=1,tu=Zx&((Tu|0)!=0&tu),If=A+976|0,ml=ml^1,_=Ei,Vg=0,Io=0,Mb=we(0),ph=we(0);;){e:do if(Vg>>>0<$S>>>0)for(id=o[ob>>2]|0,cn=0,hs=we(0),as=we(0),bo=we(0),Ei=we(0),Ut=0,At=0,Is=Vg;;){if(Sl=o[id+(Is<<2)>>2]|0,(o[Sl+36>>2]|0)!=1&&(o[Sl+940>>2]=Io,(o[Sl+24>>2]|0)!=1)){if(ro=we(Ml(Sl,zs,Ed)),Cf=o[V1>>2]|0,S=we(Mi(Sl+380+(Cf<<3)|0,H0)),ca=we(m[Sl+504>>2]),S=we(US(S,ca)),S=we(mA(we(Mi(Sl+364+(Cf<<3)|0,H0)),S)),Zx&(cn|0)!=0&we(ro+we(as+S))>_){H=cn,ro=hs,Tu=Is;break e}ro=we(ro+S),S=we(as+ro),ro=we(hs+ro),Ow(Sl)|0&&(bo=we(bo+we(jp(Sl))),Ei=we(Ei-we(ca*we(dy(Sl))))),At|0&&(o[At+960>>2]=Sl),o[Sl+960>>2]=0,cn=cn+1|0,At=Sl,Ut=Ut|0?Ut:Sl}else ro=hs,S=as;if(Is=Is+1|0,Is>>>0<$S>>>0)hs=ro,as=S;else{H=cn,Tu=Is;break}}else H=0,ro=we(0),bo=we(0),Ei=we(0),Ut=0,Tu=Vg;while(!1);Cf=bo>we(0)&bowe(0)&EiVx&((il(Vx)|0)^1))_=Vx,Cf=51;else if(s[(o[If>>2]|0)+3>>0]|0)Cf=51;else{if(tg!=we(0)&&we(jp(A))!=we(0)){Cf=53;break}_=ro,Cf=53}while(!1);if((Cf|0)==51&&(Cf=0,il(_)|0?Cf=53:(ep=we(_-ro),Vu=_)),(Cf|0)==53&&(Cf=0,ro>2]|0,Is=epwe(0),as=we(ep/tg),bo=we(0),ro=we(0),_=we(0),At=Ut;do S=we(Mi(At+380+(cn<<3)|0,H0)),Ei=we(Mi(At+364+(cn<<3)|0,H0)),Ei=we(US(S,we(mA(Ei,we(m[At+504>>2]))))),Is?(S=we(Ei*we(dy(At))),S!=we(-0)&&(bc=we(Ei-we(ca*S)),iT=we(uA(At,zs,bc,Vu,Ed)),bc!=iT)&&(bo=we(bo-we(iT-Ei)),_=we(_+S))):Sl&&(vN=we(jp(At)),vN!=we(0))&&(bc=we(Ei+we(as*vN)),$3=we(uA(At,zs,bc,Vu,Ed)),bc!=$3)&&(bo=we(bo-we($3-Ei)),ro=we(ro-vN)),At=o[At+960>>2]|0;while(At|0);if(_=we(hs+_),Ei=we(ep+bo),TG)_=we(0);else{ca=we(tg+ro),Is=o[V1>>2]|0,Sl=Eiwe(0),ca=we(Ei/ca),_=we(0);do{bc=we(Mi(Ut+380+(Is<<3)|0,H0)),bo=we(Mi(Ut+364+(Is<<3)|0,H0)),bo=we(US(bc,we(mA(bo,we(m[Ut+504>>2]))))),Sl?(bc=we(bo*we(dy(Ut))),Ei=we(-bc),bc!=we(-0)?(bc=we(as*Ei),Ei=we(uA(Ut,zs,we(bo+(id?Ei:bc)),Vu,Ed))):Ei=bo):cn&&(NG=we(jp(Ut)),NG!=we(0))?Ei=we(uA(Ut,zs,we(bo+we(ca*NG)),Vu,Ed)):Ei=bo,_=we(_-we(Ei-bo)),ro=we(Ml(Ut,zs,Ed)),S=we(Ml(Ut,yl,Ed)),Ei=we(Ei+ro),m[ef>>2]=Ei,o[qS>>2]=1,bo=we(m[Ut+396>>2]);e:do if(il(bo)|0){At=il(mc)|0;do if(!At){if(tu|(E_(Ut,yl,mc)|0|ml)||(VA(A,Ut)|0)!=4||(o[(Am(Ut,yl)|0)+4>>2]|0)==3||(o[(Vf(Ut,yl)|0)+4>>2]|0)==3)break;m[tp>>2]=mc,o[x_>>2]=1;break e}while(!1);if(E_(Ut,yl,mc)|0){At=o[Ut+992+(o[fd>>2]<<2)>>2]|0,bc=we(S+we(Mi(At,mc))),m[tp>>2]=bc,At=q3&(o[At+4>>2]|0)==2,o[x_>>2]=((il(bc)|0|At)^1)&1;break}else{m[tp>>2]=mc,o[x_>>2]=At?0:2;break}}else bc=we(Ei-ro),tg=we(bc/bo),bc=we(bo*bc),o[x_>>2]=1,m[tp>>2]=we(S+(nC?tg:bc));while(!1);Yy(Ut,zs,Vu,Ed,qS,ef),Yy(Ut,yl,mc,Ed,x_,tp);do if(!(E_(Ut,yl,mc)|0)&&(VA(A,Ut)|0)==4){if((o[(Am(Ut,yl)|0)+4>>2]|0)==3){At=0;break}At=(o[(Vf(Ut,yl)|0)+4>>2]|0)!=3}else At=0;while(!1);bc=we(m[ef>>2]),tg=we(m[tp>>2]),HI=o[qS>>2]|0,Wf=o[x_>>2]|0,vc(Ut,nC?bc:tg,nC?tg:bc,F2,nC?HI:Wf,nC?Wf:HI,Ed,Fv,He&(At^1),3488,Ct)|0,s[Ob>>0]=s[Ob>>0]|s[Ut+508>>0],Ut=o[Ut+960>>2]|0}while(Ut|0)}}else _=we(0);if(_=we(ep+_),Wf=_>0]=Wf|g[Ob>>0],zS&_>we(0)?(At=o[V1>>2]|0,o[A+364+(At<<3)+4>>2]|0&&(VE=we(Mi(A+364+(At<<3)|0,H0)),VE>=we(0))?Ei=we(mA(we(0),we(VE-we(Vu-_)))):Ei=we(0)):Ei=_,Sl=Vg>>>0>>0,Sl){Is=o[ob>>2]|0,cn=Vg,At=0;do Ut=o[Is+(cn<<2)>>2]|0,o[Ut+24>>2]|0||(At=((o[(Am(Ut,zs)|0)+4>>2]|0)==3&1)+At|0,At=At+((o[(Vf(Ut,zs)|0)+4>>2]|0)==3&1)|0),cn=cn+1|0;while((cn|0)!=(Tu|0));At?(ro=we(0),S=we(0)):Cf=101}else Cf=101;e:do if((Cf|0)==101)switch(Cf=0,xB|0){case 1:{At=0,ro=we(Ei*we(.5)),S=we(0);break e}case 2:{At=0,ro=Ei,S=we(0);break e}case 3:{if(H>>>0<=1){At=0,ro=we(0),S=we(0);break e}S=we((H+-1|0)>>>0),At=0,ro=we(0),S=we(we(mA(Ei,we(0)))/S);break e}case 5:{S=we(Ei/we((H+1|0)>>>0)),At=0,ro=S;break e}case 4:{S=we(Ei/we(H>>>0)),At=0,ro=we(S*we(.5));break e}default:{At=0,ro=we(0),S=we(0);break e}}while(!1);if(_=we(no+ro),Sl){bo=we(Ei/we(At|0)),cn=o[ob>>2]|0,Ut=Vg,Ei=we(0);do{At=o[cn+(Ut<<2)>>2]|0;e:do if((o[At+36>>2]|0)!=1){switch(o[At+24>>2]|0){case 1:{if(Kh(At,zs)|0){if(!He)break e;bc=we(Hy(At,zs,Vu)),bc=we(bc+we(mg(A,zs))),bc=we(bc+we($t(At,zs,Ed))),m[At+400+(o[WA>>2]<<2)>>2]=bc;break e}break}case 0:if(Wf=(o[(Am(At,zs)|0)+4>>2]|0)==3,bc=we(bo+_),_=Wf?bc:_,He&&(Wf=At+400+(o[WA>>2]<<2)|0,m[Wf>>2]=we(_+we(m[Wf>>2]))),Wf=(o[(Vf(At,zs)|0)+4>>2]|0)==3,bc=we(bo+_),_=Wf?bc:_,hA){bc=we(S+we(Ml(At,zs,Ed))),Ei=mc,_=we(_+we(bc+we(m[At+504>>2])));break e}else{_=we(_+we(S+we(py(At,zs,Ed)))),Ei=we(mA(Ei,we(py(At,yl,Ed))));break e}default:}He&&(bc=we(ro+we(mg(A,zs))),Wf=At+400+(o[WA>>2]<<2)|0,m[Wf>>2]=we(bc+we(m[Wf>>2])))}while(!1);Ut=Ut+1|0}while((Ut|0)!=(Tu|0))}else Ei=we(0);if(S=we(BN+_),mV?ro=we(we(uA(A,yl,we(W1+Ei),tD,oe))-W1):ro=mc,bo=we(we(uA(A,yl,we(W1+(eD?mc:Ei)),tD,oe))-W1),Sl&He){Ut=Vg;do{cn=o[(o[ob>>2]|0)+(Ut<<2)>>2]|0;do if((o[cn+36>>2]|0)!=1){if((o[cn+24>>2]|0)==1){if(Kh(cn,yl)|0){if(bc=we(Hy(cn,yl,mc)),bc=we(bc+we(mg(A,yl))),bc=we(bc+we($t(cn,yl,Ed))),At=o[FC>>2]|0,m[cn+400+(At<<2)>>2]=bc,!(il(bc)|0))break}else At=o[FC>>2]|0;bc=we(mg(A,yl)),m[cn+400+(At<<2)>>2]=we(bc+we($t(cn,yl,Ed)));break}At=VA(A,cn)|0;do if((At|0)==4){if((o[(Am(cn,yl)|0)+4>>2]|0)==3){Cf=139;break}if((o[(Vf(cn,yl)|0)+4>>2]|0)==3){Cf=139;break}if(E_(cn,yl,mc)|0){_=ji;break}HI=o[cn+908+(o[V1>>2]<<2)>>2]|0,o[tp>>2]=HI,_=we(m[cn+396>>2]),Wf=il(_)|0,Ei=(o[v>>2]=HI,we(m[v>>2])),Wf?_=bo:(ep=we(Ml(cn,yl,Ed)),bc=we(Ei/_),_=we(_*Ei),_=we(ep+(nC?bc:_))),m[ef>>2]=_,m[tp>>2]=we(we(Ml(cn,zs,Ed))+Ei),o[x_>>2]=1,o[qS>>2]=1,Yy(cn,zs,Vu,Ed,x_,tp),Yy(cn,yl,mc,Ed,qS,ef),_=we(m[tp>>2]),ep=we(m[ef>>2]),bc=nC?_:ep,_=nC?ep:_,Wf=((il(bc)|0)^1)&1,vc(cn,bc,_,F2,Wf,((il(_)|0)^1)&1,Ed,Fv,1,3493,Ct)|0,_=ji}else Cf=139;while(!1);e:do if((Cf|0)==139){Cf=0,_=we(ro-we(py(cn,yl,Ed)));do if((o[(Am(cn,yl)|0)+4>>2]|0)==3){if((o[(Vf(cn,yl)|0)+4>>2]|0)!=3)break;_=we(ji+we(mA(we(0),we(_*we(.5)))));break e}while(!1);if((o[(Vf(cn,yl)|0)+4>>2]|0)==3){_=ji;break}if((o[(Am(cn,yl)|0)+4>>2]|0)==3){_=we(ji+we(mA(we(0),_)));break}switch(At|0){case 1:{_=ji;break e}case 2:{_=we(ji+we(_*we(.5)));break e}default:{_=we(ji+_);break e}}}while(!1);bc=we(Mb+_),Wf=cn+400+(o[FC>>2]<<2)|0,m[Wf>>2]=we(bc+we(m[Wf>>2]))}while(!1);Ut=Ut+1|0}while((Ut|0)!=(Tu|0))}if(Mb=we(Mb+bo),ph=we(mA(ph,S)),H=Io+1|0,Tu>>>0>=$S>>>0)break;_=Vu,Vg=Tu,Io=H}do if(He){if(At=H>>>0>1,!At&&!(hS(A)|0))break;if(!(il(mc)|0)){_=we(mc-Mb);e:do switch(o[A+12>>2]|0){case 3:{ji=we(ji+_),as=we(0);break}case 2:{ji=we(ji+we(_*we(.5))),as=we(0);break}case 4:{mc>Mb?as=we(_/we(H>>>0)):as=we(0);break}case 7:if(mc>Mb){ji=we(ji+we(_/we(H<<1>>>0))),as=we(_/we(H>>>0)),as=At?as:we(0);break e}else{ji=we(ji+we(_*we(.5))),as=we(0);break e}case 6:{as=we(_/we(Io>>>0)),as=mc>Mb&At?as:we(0);break}default:as=we(0)}while(!1);if(H|0)for(Sl=1040+(yl<<2)|0,id=976+(yl<<2)|0,Is=0,Ut=0;;){e:do if(Ut>>>0<$S>>>0)for(Ei=we(0),bo=we(0),_=we(0),cn=Ut;;){At=o[(o[ob>>2]|0)+(cn<<2)>>2]|0;do if((o[At+36>>2]|0)!=1&&!(o[At+24>>2]|0)){if((o[At+940>>2]|0)!=(Is|0))break e;if(_S(At,yl)|0&&(bc=we(m[At+908+(o[id>>2]<<2)>>2]),_=we(mA(_,we(bc+we(Ml(At,yl,Ed)))))),(VA(A,At)|0)!=5)break;VE=we(Xy(At)),VE=we(VE+we($t(At,0,Ed))),bc=we(m[At+912>>2]),bc=we(we(bc+we(Ml(At,0,Ed)))-VE),VE=we(mA(bo,VE)),bc=we(mA(Ei,bc)),Ei=bc,bo=VE,_=we(mA(_,we(VE+bc)))}while(!1);if(At=cn+1|0,At>>>0<$S>>>0)cn=At;else{cn=At;break}}else bo=we(0),_=we(0),cn=Ut;while(!1);if(ca=we(as+_),S=ji,ji=we(ji+ca),Ut>>>0>>0){ro=we(S+bo),At=Ut;do{Ut=o[(o[ob>>2]|0)+(At<<2)>>2]|0;e:do if((o[Ut+36>>2]|0)!=1&&!(o[Ut+24>>2]|0))switch(VA(A,Ut)|0){case 1:{bc=we(S+we($t(Ut,yl,Ed))),m[Ut+400+(o[Sl>>2]<<2)>>2]=bc;break e}case 3:{bc=we(we(ji-we(Wr(Ut,yl,Ed)))-we(m[Ut+908+(o[id>>2]<<2)>>2])),m[Ut+400+(o[Sl>>2]<<2)>>2]=bc;break e}case 2:{bc=we(S+we(we(ca-we(m[Ut+908+(o[id>>2]<<2)>>2]))*we(.5))),m[Ut+400+(o[Sl>>2]<<2)>>2]=bc;break e}case 4:{if(bc=we(S+we($t(Ut,yl,Ed))),m[Ut+400+(o[Sl>>2]<<2)>>2]=bc,E_(Ut,yl,mc)|0||(nC?(Ei=we(m[Ut+908>>2]),_=we(Ei+we(Ml(Ut,zs,Ed))),bo=ca):(bo=we(m[Ut+912>>2]),bo=we(bo+we(Ml(Ut,yl,Ed))),_=ca,Ei=we(m[Ut+908>>2])),rA(_,Ei)|0&&rA(bo,we(m[Ut+912>>2]))|0))break e;vc(Ut,_,bo,F2,1,1,Ed,Fv,1,3501,Ct)|0;break e}case 5:{m[Ut+404>>2]=we(we(ro-we(Xy(Ut)))+we(Hy(Ut,0,mc)));break e}default:break e}while(!1);At=At+1|0}while((At|0)!=(cn|0))}if(Is=Is+1|0,(Is|0)==(H|0))break;Ut=cn}}}while(!1);if(m[A+908>>2]=we(uA(A,2,Hf,oe,oe)),m[A+912>>2]=we(uA(A,0,Rp,Se,oe)),Wx|0&&(GZ=o[A+32>>2]|0,kB=(Wx|0)==2,!(kB&(GZ|0)!=2))?kB&(GZ|0)==2&&(_=we(kZ+Vu),_=we(mA(we(US(_,we(BE(A,zs,ph,H0)))),kZ)),Cf=198):(_=we(uA(A,zs,ph,H0,oe)),Cf=198),(Cf|0)==198&&(m[A+908+(o[976+(zs<<2)>>2]<<2)>>2]=_),RG|0&&(k_=o[A+32>>2]|0,hV=(RG|0)==2,!(hV&(k_|0)!=2))?hV&(k_|0)==2&&(_=we(W1+mc),_=we(mA(we(US(_,we(BE(A,yl,we(W1+Mb),tD)))),W1)),Cf=204):(_=we(uA(A,yl,we(W1+Mb),tD,oe)),Cf=204),(Cf|0)==204&&(m[A+908+(o[976+(yl<<2)>>2]<<2)>>2]=_),He){if((o[eP>>2]|0)==2){Ut=976+(yl<<2)|0,cn=1040+(yl<<2)|0,At=0;do Is=Og(A,At)|0,o[Is+24>>2]|0||(HI=o[Ut>>2]|0,bc=we(m[A+908+(HI<<2)>>2]),Wf=Is+400+(o[cn>>2]<<2)|0,bc=we(bc-we(m[Wf>>2])),m[Wf>>2]=we(bc-we(m[Is+908+(HI<<2)>>2]))),At=At+1|0;while((At|0)!=($S|0))}if(F|0){At=nC?Wx:Y;do mv(A,F,Ed,At,Fv,F2,Ct),F=o[F+960>>2]|0;while(F|0)}if(At=(zs|2|0)==3,Ut=(yl|2|0)==3,At|Ut){F=0;do cn=o[(o[ob>>2]|0)+(F<<2)>>2]|0,(o[cn+36>>2]|0)!=1&&(At&&Mw(A,cn,zs),Ut&&Mw(A,cn,yl)),F=F+1|0;while((F|0)!=($S|0))}}}while(!1);T=mp}function u2(A,_){A=A|0,_=we(_);var S=0;za(A,_>=we(0),3147),S=_==we(0),m[A+4>>2]=S?we(0):_}function Dm(A,_,S,F){A=A|0,_=we(_),S=we(S),F=F|0;var Y=ys,H=ys,oe=0,Se=0,He=0;o[2278]=(o[2278]|0)+1,gy(A),E_(A,2,_)|0?(Y=we(Mi(o[A+992>>2]|0,_)),He=1,Y=we(Y+we(Ml(A,2,_)))):(Y=we(Mi(A+380|0,_)),Y>=we(0)?He=2:(He=((il(_)|0)^1)&1,Y=_)),E_(A,0,S)|0?(H=we(Mi(o[A+996>>2]|0,S)),Se=1,H=we(H+we(Ml(A,0,_)))):(H=we(Mi(A+388|0,S)),H>=we(0)?Se=2:(Se=((il(S)|0)^1)&1,H=S)),oe=A+976|0,vc(A,Y,H,F,He,Se,_,S,1,3189,o[oe>>2]|0)|0&&(Ay(A,o[A+496>>2]|0,_,S,_),bE(A,we(m[(o[oe>>2]|0)+4>>2]),we(0),we(0)),s[11696]|0)&&Iv(A,7)}function gy(A){A=A|0;var _=0,S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;Se=T,T=T+32|0,oe=Se+24|0,H=Se+16|0,F=Se+8|0,Y=Se,S=0;do _=A+380+(S<<3)|0,o[A+380+(S<<3)+4>>2]|0&&(He=_,Ct=o[He+4>>2]|0,At=F,o[At>>2]=o[He>>2],o[At+4>>2]=Ct,At=A+364+(S<<3)|0,Ct=o[At+4>>2]|0,He=Y,o[He>>2]=o[At>>2],o[He+4>>2]=Ct,o[H>>2]=o[F>>2],o[H+4>>2]=o[F+4>>2],o[oe>>2]=o[Y>>2],o[oe+4>>2]=o[Y+4>>2],Tb(H,oe)|0)||(_=A+348+(S<<3)|0),o[A+992+(S<<2)>>2]=_,S=S+1|0;while((S|0)!=2);T=Se}function E_(A,_,S){A=A|0,_=_|0,S=we(S);var F=0;switch(A=o[A+992+(o[976+(_<<2)>>2]<<2)>>2]|0,o[A+4>>2]|0){case 0:case 3:{A=0;break}case 1:{we(m[A>>2])>2])>2]|0){case 2:{_=we(we(we(m[A>>2])*_)/we(100));break}case 1:{_=we(m[A>>2]);break}default:_=we(pe)}return we(_)}function Ay(A,_,S,F,Y){A=A|0,_=_|0,S=we(S),F=we(F),Y=we(Y);var H=0,oe=ys;_=o[A+944>>2]|0?_:1,H=fg(o[A+4>>2]|0,_)|0,_=Pw(H,_)|0,S=we(Rb(A,H,S)),F=we(Rb(A,_,F)),oe=we(S+we($t(A,H,Y))),m[A+400+(o[1040+(H<<2)>>2]<<2)>>2]=oe,S=we(S+we(Wr(A,H,Y))),m[A+400+(o[1e3+(H<<2)>>2]<<2)>>2]=S,S=we(F+we($t(A,_,Y))),m[A+400+(o[1040+(_<<2)>>2]<<2)>>2]=S,Y=we(F+we(Wr(A,_,Y))),m[A+400+(o[1e3+(_<<2)>>2]<<2)>>2]=Y}function bE(A,_,S,F){A=A|0,_=we(_),S=we(S),F=we(F);var Y=0,H=0,oe=ys,Se=ys,He=0,Ct=0,At=ys,Ut=0,cn=ys,Is=ys,ji=ys,Ei=ys;if(_!=we(0)&&(Y=A+400|0,Ei=we(m[Y>>2]),H=A+404|0,ji=we(m[H>>2]),Ut=A+416|0,Is=we(m[Ut>>2]),Ct=A+420|0,oe=we(m[Ct>>2]),cn=we(Ei+S),At=we(ji+F),F=we(cn+Is),Se=we(At+oe),He=(o[A+988>>2]|0)==1,m[Y>>2]=we(QC(Ei,_,0,He)),m[H>>2]=we(QC(ji,_,0,He)),S=we(s4(we(Is*_),we(1))),rA(S,we(0))|0?H=0:H=(rA(S,we(1))|0)^1,S=we(s4(we(oe*_),we(1))),rA(S,we(0))|0?Y=0:Y=(rA(S,we(1))|0)^1,Ei=we(QC(F,_,He&H,He&(H^1))),m[Ut>>2]=we(Ei-we(QC(cn,_,0,He))),Ei=we(QC(Se,_,He&Y,He&(Y^1))),m[Ct>>2]=we(Ei-we(QC(At,_,0,He))),H=(o[A+952>>2]|0)-(o[A+948>>2]|0)>>2,H|0)){Y=0;do bE(Og(A,Y)|0,_,cn,At),Y=Y+1|0;while((Y|0)!=(H|0))}}function uf(A,_,S,F,Y){switch(A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0,S|0){case 5:case 0:{A=NKe(o[489]|0,F,Y)|0;break}default:A=Ele(F,Y)|0}return A|0}function g2(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0;Y=T,T=T+16|0,H=Y,o[H>>2]=F,EE(A,0,_,S,H),T=Y}function EE(A,_,S,F,Y){if(A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0,A=A|0?A:956,Ql[o[A+8>>2]&1](A,_,S,F,Y)|0,(S|0)==5)Bo();else return}function k0(A,_,S){A=A|0,_=_|0,S=S|0,s[A+_>>0]=S&1}function mS(A,_){A=A|0,_=_|0;var S=0,F=0;o[A>>2]=0,o[A+4>>2]=0,o[A+8>>2]=0,S=_+4|0,F=(o[S>>2]|0)-(o[_>>2]|0)>>2,F|0&&(I1(A,F),dc(A,o[_>>2]|0,o[S>>2]|0,F))}function I1(A,_){A=A|0,_=_|0;var S=0;if((at(A)|0)>>>0<_>>>0&&RI(A),_>>>0>1073741823)Bo();else{S=xu(_<<2)|0,o[A+4>>2]=S,o[A>>2]=S,o[A+8>>2]=S+(_<<2);return}}function dc(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,F=A+4|0,A=S-_|0,(A|0)>0&&($d(o[F>>2]|0,_|0,A|0)|0,o[F>>2]=(o[F>>2]|0)+(A>>>2<<2))}function at(A){return A=A|0,1073741823}function $t(A,_,S){return A=A|0,_=_|0,S=we(S),vn(_)|0&&o[A+96>>2]|0?A=A+92|0:A=LA(A+60|0,o[1040+(_<<2)>>2]|0,992)|0,we(os(A,S))}function Wr(A,_,S){return A=A|0,_=_|0,S=we(S),vn(_)|0&&o[A+104>>2]|0?A=A+100|0:A=LA(A+60|0,o[1e3+(_<<2)>>2]|0,992)|0,we(os(A,S))}function vn(A){return A=A|0,(A|1|0)==3|0}function os(A,_){return A=A|0,_=we(_),(o[A+4>>2]|0)==3?_=we(0):_=we(Mi(A,_)),we(_)}function wo(A,_){return A=A|0,_=_|0,A=o[A>>2]|0,(A|0?A:(_|0)>1?_:1)|0}function fg(A,_){A=A|0,_=_|0;var S=0;e:do if((_|0)==2){switch(A|0){case 2:{A=3;break e}case 3:break;default:{S=4;break e}}A=2}else S=4;while(!1);return A|0}function mg(A,_){A=A|0,_=_|0;var S=ys;return vn(_)|0&&o[A+312>>2]|0&&(S=we(m[A+308>>2]),S>=we(0))||(S=we(mA(we(m[(LA(A+276|0,o[1040+(_<<2)>>2]|0,992)|0)>>2]),we(0)))),we(S)}function gf(A,_){A=A|0,_=_|0;var S=ys;return vn(_)|0&&o[A+320>>2]|0&&(S=we(m[A+316>>2]),S>=we(0))||(S=we(mA(we(m[(LA(A+276|0,o[1e3+(_<<2)>>2]|0,992)|0)>>2]),we(0)))),we(S)}function rI(A,_,S){A=A|0,_=_|0,S=we(S);var F=ys;return vn(_)|0&&o[A+240>>2]|0&&(F=we(Mi(A+236|0,S)),F>=we(0))||(F=we(mA(we(Mi(LA(A+204|0,o[1040+(_<<2)>>2]|0,992)|0,S)),we(0)))),we(F)}function gC(A,_,S){A=A|0,_=_|0,S=we(S);var F=ys;return vn(_)|0&&o[A+248>>2]|0&&(F=we(Mi(A+244|0,S)),F>=we(0))||(F=we(mA(we(Mi(LA(A+204|0,o[1e3+(_<<2)>>2]|0,992)|0,S)),we(0)))),we(F)}function Nb(A,_,S,F,Y,H,oe){A=A|0,_=we(_),S=we(S),F=F|0,Y=Y|0,H=we(H),oe=we(oe);var Se=ys,He=ys,Ct=ys,At=ys,Ut=ys,cn=ys,Is=0,ji=0,Ei=0;Ei=T,T=T+16|0,Is=Ei,ji=A+964|0,Xl(A,(o[ji>>2]|0)!=0,3519),Se=we(K_(A,2,_)),He=we(K_(A,0,_)),Ct=we(Ml(A,2,_)),At=we(Ml(A,0,_)),il(_)|0?Ut=_:Ut=we(mA(we(0),we(we(_-Ct)-Se))),il(S)|0?cn=S:cn=we(mA(we(0),we(we(S-At)-He))),(F|0)==1&(Y|0)==1?(m[A+908>>2]=we(uA(A,2,we(_-Ct),H,H)),_=we(uA(A,0,we(S-At),oe,H))):(cI[o[ji>>2]&1](Is,A,Ut,F,cn,Y),Ut=we(Se+we(m[Is>>2])),cn=we(_-Ct),m[A+908>>2]=we(uA(A,2,(F|2|0)==2?Ut:cn,H,H)),cn=we(He+we(m[Is+4>>2])),_=we(S-At),_=we(uA(A,0,(Y|2|0)==2?cn:_,oe,H))),m[A+912>>2]=_,T=Ei}function zT(A,_,S,F,Y,H,oe){A=A|0,_=we(_),S=we(S),F=F|0,Y=Y|0,H=we(H),oe=we(oe);var Se=ys,He=ys,Ct=ys,At=ys;Ct=we(K_(A,2,H)),Se=we(K_(A,0,H)),At=we(Ml(A,2,H)),He=we(Ml(A,0,H)),_=we(_-At),m[A+908>>2]=we(uA(A,2,(F|2|0)==2?Ct:_,H,H)),S=we(S-He),m[A+912>>2]=we(uA(A,0,(Y|2|0)==2?Se:S,oe,H))}function Cv(A,_,S,F,Y,H,oe){A=A|0,_=we(_),S=we(S),F=F|0,Y=Y|0,H=we(H),oe=we(oe);var Se=0,He=ys,Ct=ys;return Se=(F|0)==2,!(_<=we(0)&Se)&&!(S<=we(0)&(Y|0)==2)&&!((F|0)==1&(Y|0)==1)?A=0:(He=we(Ml(A,0,H)),Ct=we(Ml(A,2,H)),Se=_>2]=we(uA(A,2,Se?we(0):_,H,H)),_=we(S-He),Se=S>2]=we(uA(A,0,Se?we(0):_,oe,H)),A=1),A|0}function Pw(A,_){return A=A|0,_=_|0,hv(A)|0?A=fg(2,_)|0:A=0,A|0}function Qy(A,_,S){return A=A|0,_=_|0,S=we(S),S=we(rI(A,_,S)),we(S+we(mg(A,_)))}function C1(A,_,S){return A=A|0,_=_|0,S=we(S),S=we(gC(A,_,S)),we(S+we(gf(A,_)))}function K_(A,_,S){A=A|0,_=_|0,S=we(S);var F=ys;return F=we(Qy(A,_,S)),we(F+we(C1(A,_,S)))}function Ow(A){return A=A|0,o[A+24>>2]|0?A=0:we(jp(A))!=we(0)?A=1:A=we(dy(A))!=we(0),A|0}function jp(A){A=A|0;var _=ys;if(o[A+944>>2]|0){if(_=we(m[A+44>>2]),il(_)|0)return _=we(m[A+40>>2]),A=_>we(0)&((il(_)|0)^1),we(A?_:we(0))}else _=we(0);return we(_)}function dy(A){A=A|0;var _=ys,S=0,F=ys;do if(o[A+944>>2]|0){if(_=we(m[A+48>>2]),il(_)|0){if(S=s[(o[A+976>>2]|0)+2>>0]|0,!(S<<24>>24)&&(F=we(m[A+40>>2]),F>24?we(1):we(0)}}else _=we(0);while(!1);return we(_)}function A2(A){A=A|0;var _=0,S=0;if(pV(A+400|0,0,540)|0,s[A+985>>0]=1,Nr(A),S=_l(A)|0,S|0){_=A+948|0,A=0;do A2(o[(o[_>>2]|0)+(A<<2)>>2]|0),A=A+1|0;while((A|0)!=(S|0))}}function OI(A,_,S,F,Y,H,oe,Se,He,Ct){A=A|0,_=_|0,S=we(S),F=F|0,Y=we(Y),H=we(H),oe=we(oe),Se=Se|0,He=He|0,Ct=Ct|0;var At=0,Ut=ys,cn=0,Is=0,ji=ys,Ei=ys,bo=0,ro=ys,ca=0,as=ys,hs=0,Sl=0,id=0,Tu=0,tg=0,ep=0,Vg=0,Vu=0,ml=0,If=0;ml=T,T=T+16|0,id=ml+12|0,Tu=ml+8|0,tg=ml+4|0,ep=ml,Vu=fg(o[A+4>>2]|0,He)|0,hs=vn(Vu)|0,Ut=we(Mi(xR(_)|0,hs?H:oe)),Sl=E_(_,2,H)|0,Vg=E_(_,0,oe)|0;do if(!(il(Ut)|0)&&!(il(hs?S:Y)|0)){if(At=_+504|0,!(il(we(m[At>>2]))|0)&&(!(qT(o[_+976>>2]|0,0)|0)||(o[_+500>>2]|0)==(o[2278]|0)))break;m[At>>2]=we(mA(Ut,we(K_(_,Vu,H))))}else cn=7;while(!1);do if((cn|0)==7){if(ca=hs^1,!(ca|Sl^1)){oe=we(Mi(o[_+992>>2]|0,H)),m[_+504>>2]=we(mA(oe,we(K_(_,2,H))));break}if(!(hs|Vg^1)){oe=we(Mi(o[_+996>>2]|0,oe)),m[_+504>>2]=we(mA(oe,we(K_(_,0,H))));break}m[id>>2]=we(pe),m[Tu>>2]=we(pe),o[tg>>2]=0,o[ep>>2]=0,ro=we(Ml(_,2,H)),as=we(Ml(_,0,H)),Sl?(ji=we(ro+we(Mi(o[_+992>>2]|0,H))),m[id>>2]=ji,o[tg>>2]=1,Is=1):(Is=0,ji=we(pe)),Vg?(Ut=we(as+we(Mi(o[_+996>>2]|0,oe))),m[Tu>>2]=Ut,o[ep>>2]=1,At=1):(At=0,Ut=we(pe)),cn=o[A+32>>2]|0,hs&(cn|0)==2?cn=2:il(ji)|0&&!(il(S)|0)&&(m[id>>2]=S,o[tg>>2]=2,Is=2,ji=S),!((cn|0)==2&ca)&&il(Ut)|0&&!(il(Y)|0)&&(m[Tu>>2]=Y,o[ep>>2]=2,At=2,Ut=Y),Ei=we(m[_+396>>2]),bo=il(Ei)|0;do if(bo)cn=Is;else{if((Is|0)==1&ca){m[Tu>>2]=we(we(ji-ro)/Ei),o[ep>>2]=1,At=1,cn=1;break}hs&(At|0)==1?(m[id>>2]=we(Ei*we(Ut-as)),o[tg>>2]=1,At=1,cn=1):cn=Is}while(!1);If=il(S)|0,Is=(VA(A,_)|0)!=4,!(hs|Sl|((F|0)!=1|If)|(Is|(cn|0)==1))&&(m[id>>2]=S,o[tg>>2]=1,!bo)&&(m[Tu>>2]=we(we(S-ro)/Ei),o[ep>>2]=1,At=1),!(Vg|ca|((Se|0)!=1|(il(Y)|0))|(Is|(At|0)==1))&&(m[Tu>>2]=Y,o[ep>>2]=1,!bo)&&(m[id>>2]=we(Ei*we(Y-as)),o[tg>>2]=1),Yy(_,2,H,H,tg,id),Yy(_,0,oe,H,ep,Tu),S=we(m[id>>2]),Y=we(m[Tu>>2]),vc(_,S,Y,He,o[tg>>2]|0,o[ep>>2]|0,H,oe,0,3565,Ct)|0,oe=we(m[_+908+(o[976+(Vu<<2)>>2]<<2)>>2]),m[_+504>>2]=we(mA(oe,we(K_(_,Vu,H))))}while(!1);o[_+500>>2]=o[2278],T=ml}function uA(A,_,S,F,Y){return A=A|0,_=_|0,S=we(S),F=we(F),Y=we(Y),F=we(BE(A,_,S,F)),we(mA(F,we(K_(A,_,Y))))}function VA(A,_){return A=A|0,_=_|0,_=_+20|0,_=o[(o[_>>2]|0?_:A+16|0)>>2]|0,(_|0)==5&&hv(o[A+4>>2]|0)|0&&(_=1),_|0}function Am(A,_){return A=A|0,_=_|0,vn(_)|0&&o[A+96>>2]|0?_=4:_=o[1040+(_<<2)>>2]|0,A+60+(_<<3)|0}function Vf(A,_){return A=A|0,_=_|0,vn(_)|0&&o[A+104>>2]|0?_=5:_=o[1e3+(_<<2)>>2]|0,A+60+(_<<3)|0}function Yy(A,_,S,F,Y,H){switch(A=A|0,_=_|0,S=we(S),F=we(F),Y=Y|0,H=H|0,S=we(Mi(A+380+(o[976+(_<<2)>>2]<<3)|0,S)),S=we(S+we(Ml(A,_,F))),o[Y>>2]|0){case 2:case 1:{Y=il(S)|0,F=we(m[H>>2]),m[H>>2]=Y|F>2]=2,m[H>>2]=S);break}default:}}function Kh(A,_){return A=A|0,_=_|0,A=A+132|0,vn(_)|0&&o[(LA(A,4,948)|0)+4>>2]|0?A=1:A=(o[(LA(A,o[1040+(_<<2)>>2]|0,948)|0)+4>>2]|0)!=0,A|0}function Hy(A,_,S){A=A|0,_=_|0,S=we(S);var F=0,Y=0;return A=A+132|0,vn(_)|0&&(F=LA(A,4,948)|0,(o[F+4>>2]|0)!=0)?Y=4:(F=LA(A,o[1040+(_<<2)>>2]|0,948)|0,o[F+4>>2]|0?Y=4:S=we(0)),(Y|0)==4&&(S=we(Mi(F,S))),we(S)}function py(A,_,S){A=A|0,_=_|0,S=we(S);var F=ys;return F=we(m[A+908+(o[976+(_<<2)>>2]<<2)>>2]),F=we(F+we($t(A,_,S))),we(F+we(Wr(A,_,S)))}function hS(A){A=A|0;var _=0,S=0,F=0;e:do if(hv(o[A+4>>2]|0)|0)_=0;else if((o[A+16>>2]|0)!=5)if(S=_l(A)|0,!S)_=0;else for(_=0;;){if(F=Og(A,_)|0,!(o[F+24>>2]|0)&&(o[F+20>>2]|0)==5){_=1;break e}if(_=_+1|0,_>>>0>=S>>>0){_=0;break}}else _=1;while(!1);return _|0}function _S(A,_){A=A|0,_=_|0;var S=ys;return S=we(m[A+908+(o[976+(_<<2)>>2]<<2)>>2]),S>=we(0)&((il(S)|0)^1)|0}function Xy(A){A=A|0;var _=ys,S=0,F=0,Y=0,H=0,oe=0,Se=0,He=ys;if(S=o[A+968>>2]|0,S)He=we(m[A+908>>2]),_=we(m[A+912>>2]),_=we(Dle[S&0](A,He,_)),Xl(A,(il(_)|0)^1,3573);else{H=_l(A)|0;do if(H|0){for(S=0,Y=0;;){if(F=Og(A,Y)|0,o[F+940>>2]|0){oe=8;break}if((o[F+24>>2]|0)!=1)if(Se=(VA(A,F)|0)==5,Se){S=F;break}else S=S|0?S:F;if(Y=Y+1|0,Y>>>0>=H>>>0){oe=8;break}}if((oe|0)==8&&!S)break;return _=we(Xy(S)),we(_+we(m[S+404>>2]))}while(!1);_=we(m[A+912>>2])}return we(_)}function BE(A,_,S,F){A=A|0,_=_|0,S=we(S),F=we(F);var Y=ys,H=0;return hv(_)|0?(_=1,H=3):vn(_)|0?(_=0,H=3):(F=we(pe),Y=we(pe)),(H|0)==3&&(Y=we(Mi(A+364+(_<<3)|0,F)),F=we(Mi(A+380+(_<<3)|0,F))),H=F=we(0)&((il(F)|0)^1)),S=H?F:S,H=Y>=we(0)&((il(Y)|0)^1)&S>2]|0,H)|0,ji=Pw(bo,H)|0,Ei=vn(bo)|0,Ut=we(Ml(_,2,S)),cn=we(Ml(_,0,S)),E_(_,2,S)|0?Se=we(Ut+we(Mi(o[_+992>>2]|0,S))):Kh(_,2)|0&&m1(_,2)|0?(Se=we(m[A+908>>2]),He=we(mg(A,2)),He=we(Se-we(He+we(gf(A,2)))),Se=we(Hy(_,2,S)),Se=we(uA(_,2,we(He-we(Se+we(jh(_,2,S)))),S,S))):Se=we(pe),E_(_,0,Y)|0?He=we(cn+we(Mi(o[_+996>>2]|0,Y))):Kh(_,0)|0&&m1(_,0)|0?(He=we(m[A+912>>2]),ca=we(mg(A,0)),ca=we(He-we(ca+we(gf(A,0)))),He=we(Hy(_,0,Y)),He=we(uA(_,0,we(ca-we(He+we(jh(_,0,Y)))),Y,S))):He=we(pe),Ct=il(Se)|0,At=il(He)|0;do if(Ct^At&&(Is=we(m[_+396>>2]),!(il(Is)|0)))if(Ct){Se=we(Ut+we(we(He-cn)*Is));break}else{ca=we(cn+we(we(Se-Ut)/Is)),He=At?ca:He;break}while(!1);At=il(Se)|0,Ct=il(He)|0,At|Ct&&(as=(At^1)&1,F=S>we(0)&((F|0)!=0&At),Se=Ei?Se:F?S:Se,vc(_,Se,He,H,Ei?as:F?2:as,At&(Ct^1)&1,Se,He,0,3623,oe)|0,Se=we(m[_+908>>2]),Se=we(Se+we(Ml(_,2,S))),He=we(m[_+912>>2]),He=we(He+we(Ml(_,0,S)))),vc(_,Se,He,H,1,1,Se,He,1,3635,oe)|0,m1(_,bo)|0&&!(Kh(_,bo)|0)?(as=o[976+(bo<<2)>>2]|0,ca=we(m[A+908+(as<<2)>>2]),ca=we(ca-we(m[_+908+(as<<2)>>2])),ca=we(ca-we(gf(A,bo))),ca=we(ca-we(Wr(_,bo,S))),ca=we(ca-we(jh(_,bo,Ei?S:Y))),m[_+400+(o[1040+(bo<<2)>>2]<<2)>>2]=ca):ro=21;do if((ro|0)==21){if(!(Kh(_,bo)|0)&&(o[A+8>>2]|0)==1){as=o[976+(bo<<2)>>2]|0,ca=we(m[A+908+(as<<2)>>2]),ca=we(we(ca-we(m[_+908+(as<<2)>>2]))*we(.5)),m[_+400+(o[1040+(bo<<2)>>2]<<2)>>2]=ca;break}!(Kh(_,bo)|0)&&(o[A+8>>2]|0)==2&&(as=o[976+(bo<<2)>>2]|0,ca=we(m[A+908+(as<<2)>>2]),ca=we(ca-we(m[_+908+(as<<2)>>2])),m[_+400+(o[1040+(bo<<2)>>2]<<2)>>2]=ca)}while(!1);m1(_,ji)|0&&!(Kh(_,ji)|0)?(as=o[976+(ji<<2)>>2]|0,ca=we(m[A+908+(as<<2)>>2]),ca=we(ca-we(m[_+908+(as<<2)>>2])),ca=we(ca-we(gf(A,ji))),ca=we(ca-we(Wr(_,ji,S))),ca=we(ca-we(jh(_,ji,Ei?Y:S))),m[_+400+(o[1040+(ji<<2)>>2]<<2)>>2]=ca):ro=30;do if((ro|0)==30&&!(Kh(_,ji)|0)){if((VA(A,_)|0)==2){as=o[976+(ji<<2)>>2]|0,ca=we(m[A+908+(as<<2)>>2]),ca=we(we(ca-we(m[_+908+(as<<2)>>2]))*we(.5)),m[_+400+(o[1040+(ji<<2)>>2]<<2)>>2]=ca;break}as=(VA(A,_)|0)==3,as^(o[A+28>>2]|0)==2&&(as=o[976+(ji<<2)>>2]|0,ca=we(m[A+908+(as<<2)>>2]),ca=we(ca-we(m[_+908+(as<<2)>>2])),m[_+400+(o[1040+(ji<<2)>>2]<<2)>>2]=ca)}while(!1)}function Mw(A,_,S){A=A|0,_=_|0,S=S|0;var F=ys,Y=0;Y=o[976+(S<<2)>>2]|0,F=we(m[_+908+(Y<<2)>>2]),F=we(we(m[A+908+(Y<<2)>>2])-F),F=we(F-we(m[_+400+(o[1040+(S<<2)>>2]<<2)>>2])),m[_+400+(o[1e3+(S<<2)>>2]<<2)>>2]=F}function hv(A){return A=A|0,(A|1|0)==1|0}function xR(A){A=A|0;var _=ys;switch(o[A+56>>2]|0){case 0:case 3:{_=we(m[A+40>>2]),_>we(0)&((il(_)|0)^1)?A=s[(o[A+976>>2]|0)+2>>0]|0?1056:992:A=1056;break}default:A=A+52|0}return A|0}function qT(A,_){return A=A|0,_=_|0,(s[A+_>>0]|0)!=0|0}function m1(A,_){return A=A|0,_=_|0,A=A+132|0,vn(_)|0&&o[(LA(A,5,948)|0)+4>>2]|0?A=1:A=(o[(LA(A,o[1e3+(_<<2)>>2]|0,948)|0)+4>>2]|0)!=0,A|0}function jh(A,_,S){A=A|0,_=_|0,S=we(S);var F=0,Y=0;return A=A+132|0,vn(_)|0&&(F=LA(A,5,948)|0,(o[F+4>>2]|0)!=0)?Y=4:(F=LA(A,o[1e3+(_<<2)>>2]|0,948)|0,o[F+4>>2]|0?Y=4:S=we(0)),(Y|0)==4&&(S=we(Mi(F,S))),we(S)}function Rb(A,_,S){return A=A|0,_=_|0,S=we(S),Kh(A,_)|0?S=we(Hy(A,_,S)):S=we(-we(jh(A,_,S))),we(S)}function Qw(A){return A=we(A),m[v>>2]=A,o[v>>2]|0|0}function An(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>1073741823)Bo();else{Y=xu(_<<2)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S<<2)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_<<2)}function h1(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(0-(Y>>2)<<2)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function d2(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-4-_|0)>>>2)<<2)),A=o[A>>2]|0,A|0&&Va(A)}function zh(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0;if(oe=A+4|0,Se=o[oe>>2]|0,Y=Se-F|0,H=Y>>2,A=_+(H<<2)|0,A>>>0>>0){F=Se;do o[F>>2]=o[A>>2],A=A+4|0,F=(o[oe>>2]|0)+4|0,o[oe>>2]=F;while(A>>>0>>0)}H|0&&T6(Se+(0-H<<2)|0,_|0,Y|0)|0}function dp(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0;return Se=_+4|0,He=o[Se>>2]|0,Y=o[A>>2]|0,oe=S,H=oe-Y|0,F=He+(0-(H>>2)<<2)|0,o[Se>>2]=F,(H|0)>0&&$d(F|0,Y|0,H|0)|0,Y=A+4|0,H=_+8|0,F=(o[Y>>2]|0)-oe|0,(F|0)>0&&($d(o[H>>2]|0,S|0,F|0)|0,o[H>>2]=(o[H>>2]|0)+(F>>>2<<2)),oe=o[A>>2]|0,o[A>>2]=o[Se>>2],o[Se>>2]=oe,oe=o[Y>>2]|0,o[Y>>2]=o[H>>2],o[H>>2]=oe,oe=A+8|0,S=_+12|0,A=o[oe>>2]|0,o[oe>>2]=o[S>>2],o[S>>2]=A,o[_>>2]=o[Se>>2],He|0}function Yw(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;if(oe=o[_>>2]|0,H=o[S>>2]|0,(oe|0)!=(H|0)){Y=A+8|0,S=((H+-4-oe|0)>>>2)+1|0,A=oe,F=o[Y>>2]|0;do o[F>>2]=o[A>>2],F=(o[Y>>2]|0)+4|0,o[Y>>2]=F,A=A+4|0;while((A|0)!=(H|0));o[_>>2]=oe+(S<<2)}}function yS(){SI()}function $T(){var A=0;return A=xu(4)|0,Db(A),A|0}function Db(A){A=A|0,o[A>>2]=uC()|0}function eN(A){A=A|0,A|0&&(G0(A),Va(A))}function G0(A){A=A|0,Ao(o[A>>2]|0)}function iG(A,_,S){A=A|0,_=_|0,S=S|0,k0(o[A>>2]|0,_,S)}function _1(A,_){A=A|0,_=we(_),u2(o[A>>2]|0,_)}function xb(A,_){return A=A|0,_=_|0,qT(o[A>>2]|0,_)|0}function Eh(){var A=0;return A=xu(8)|0,y1(A,0),A|0}function y1(A,_){A=A|0,_=_|0,_?_=lf(o[_>>2]|0)|0:_=iu()|0,o[A>>2]=_,o[A+4>>2]=0,pl(_,A)}function vE(A){A=A|0;var _=0;return _=xu(8)|0,y1(_,A),_|0}function SE(A){A=A|0,A|0&&(bS(A),Va(A))}function bS(A){A=A|0;var _=0;Jh(o[A>>2]|0),_=A+4|0,A=o[_>>2]|0,o[_>>2]=0,A|0&&(Jy(A),Va(A))}function Jy(A){A=A|0,qh(A)}function qh(A){A=A|0,A=o[A>>2]|0,A|0&&Os(A|0)}function tN(A){return A=A|0,Qm(A)|0}function _v(A){A=A|0;var _=0,S=0;S=A+4|0,_=o[S>>2]|0,o[S>>2]=0,_|0&&(Jy(_),Va(_)),ch(o[A>>2]|0)}function yv(A,_){A=A|0,_=_|0,RA(o[A>>2]|0,o[_>>2]|0)}function rN(A,_){A=A|0,_=_|0,ly(o[A>>2]|0,_)}function fx(A,_,S){A=A|0,_=_|0,S=+S,hE(o[A>>2]|0,_,we(S))}function Bh(A,_,S){A=A|0,_=_|0,S=+S,uy(o[A>>2]|0,_,we(S))}function nN(A,_){A=A|0,_=_|0,lh(o[A>>2]|0,_)}function Hw(A,_){A=A|0,_=_|0,vp(o[A>>2]|0,_)}function Wa(A,_){A=A|0,_=_|0,R0(o[A>>2]|0,_)}function EA(A,_){A=A|0,_=_|0,f1(o[A>>2]|0,_)}function hd(A,_){A=A|0,_=_|0,b_(o[A>>2]|0,_)}function nI(A,_){A=A|0,_=_|0,eA(o[A>>2]|0,_)}function F0(A,_,S){A=A|0,_=_|0,S=+S,w(o[A>>2]|0,_,we(S))}function mB(A,_,S){A=A|0,_=_|0,S=+S,J(o[A>>2]|0,_,we(S))}function Pp(A,_){A=A|0,_=_|0,ut(o[A>>2]|0,_)}function ES(A,_){A=A|0,_=_|0,um(o[A>>2]|0,_)}function dm(A,_){A=A|0,_=_|0,pg(o[A>>2]|0,_)}function $h(A,_){A=A|0,_=+_,wb(o[A>>2]|0,we(_))}function B_(A,_){A=A|0,_=+_,Ef(o[A>>2]|0,we(_))}function p2(A,_){A=A|0,_=+_,eI(o[A>>2]|0,we(_))}function hB(A,_){A=A|0,_=+_,Rm(o[A>>2]|0,we(_))}function BS(A,_){A=A|0,_=+_,PI(o[A>>2]|0,we(_))}function bv(A,_){A=A|0,_=+_,Po(o[A>>2]|0,we(_))}function vh(A,_){A=A|0,_=+_,fc(o[A>>2]|0,we(_))}function Oo(A){A=A|0,Xc(o[A>>2]|0)}function Uy(A,_){A=A|0,_=+_,yu(o[A>>2]|0,we(_))}function kb(A,_){A=A|0,_=+_,op(o[A>>2]|0,we(_))}function TI(A){A=A|0,lA(o[A>>2]|0)}function j_(A,_){A=A|0,_=+_,Kd(o[A>>2]|0,we(_))}function f2(A,_){A=A|0,_=+_,D0(o[A>>2]|0,we(_))}function b1(A,_){A=A|0,_=+_,md(o[A>>2]|0,we(_))}function E1(A,_){A=A|0,_=+_,fI(o[A>>2]|0,we(_))}function Z0(A,_){A=A|0,_=+_,Uh(o[A>>2]|0,we(_))}function Sh(A,_){A=A|0,_=+_,Ym(o[A>>2]|0,we(_))}function L0(A,_){A=A|0,_=+_,CS(o[A>>2]|0,we(_))}function _d(A,_){A=A|0,_=+_,_E(o[A>>2]|0,we(_))}function Ev(A,_){A=A|0,_=+_,yE(o[A>>2]|0,we(_))}function qu(A,_,S){A=A|0,_=_|0,S=+S,Yn(o[A>>2]|0,_,we(S))}function AC(A,_,S){A=A|0,_=_|0,S=+S,zt(o[A>>2]|0,_,we(S))}function B1(A,_,S){A=A|0,_=_|0,S=+S,Zr(o[A>>2]|0,_,we(S))}function I2(A){return A=A|0,uc(o[A>>2]|0)|0}function Sp(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0;F=T,T=T+16|0,Y=F,ie(Y,o[_>>2]|0,S),eC(A,Y),T=F}function eC(A,_){A=A|0,_=_|0,yd(A,o[_+4>>2]|0,+we(m[_>>2]))}function yd(A,_,S){A=A|0,_=_|0,S=+S,o[A>>2]=_,y[A+8>>3]=S}function V0(A){return A=A|0,Oy(o[A>>2]|0)|0}function II(A){return A=A|0,tA(o[A>>2]|0)|0}function Op(A){return A=A|0,_h(o[A>>2]|0)|0}function W0(A){return A=A|0,fv(o[A>>2]|0)|0}function v1(A){return A=A|0,Sb(o[A>>2]|0)|0}function gd(A){return A=A|0,Nm(o[A>>2]|0)|0}function pp(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0;F=T,T=T+16|0,Y=F,ye(Y,o[_>>2]|0,S),eC(A,Y),T=F}function v_(A){return A=A|0,uh(o[A>>2]|0)|0}function vS(A){return A=A|0,gm(o[A>>2]|0)|0}function _B(A,_){A=A|0,_=_|0;var S=0,F=0;S=T,T=T+16|0,F=S,Zf(F,o[_>>2]|0),eC(A,F),T=S}function z_(A){return A=A|0,+ +we(Nd(o[A>>2]|0))}function e_(A){return A=A|0,+ +we(WI(o[A>>2]|0))}function aa(A,_){A=A|0,_=_|0;var S=0,F=0;S=T,T=T+16|0,F=S,Yo(F,o[_>>2]|0),eC(A,F),T=S}function xA(A,_){A=A|0,_=_|0;var S=0,F=0;S=T,T=T+16|0,F=S,tI(F,o[_>>2]|0),eC(A,F),T=S}function cZ(A,_){A=A|0,_=_|0;var S=0,F=0;S=T,T=T+16|0,F=S,ya(F,o[_>>2]|0),eC(A,F),T=S}function kR(A,_){A=A|0,_=_|0;var S=0,F=0;S=T,T=T+16|0,F=S,Bf(F,o[_>>2]|0),eC(A,F),T=S}function wE(A,_){A=A|0,_=_|0;var S=0,F=0;S=T,T=T+16|0,F=S,IS(F,o[_>>2]|0),eC(A,F),T=S}function GR(A,_){A=A|0,_=_|0;var S=0,F=0;S=T,T=T+16|0,F=S,x0(F,o[_>>2]|0),eC(A,F),T=S}function Ad(A){return A=A|0,+ +we(CB(o[A>>2]|0))}function fy(A,_){return A=A|0,_=_|0,+ +we(Dn(o[A>>2]|0,_))}function Af(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0;F=T,T=T+16|0,Y=F,wr(Y,o[_>>2]|0,S),eC(A,Y),T=F}function tC(A,_,S){A=A|0,_=_|0,S=S|0,zl(o[A>>2]|0,o[_>>2]|0,S)}function xo(A,_){A=A|0,_=_|0,lm(o[A>>2]|0,o[_>>2]|0)}function q_(A){return A=A|0,_l(o[A>>2]|0)|0}function gh(A){return A=A|0,A=Ks(o[A>>2]|0)|0,A?A=tN(A)|0:A=0,A|0}function Oc(A,_){return A=A|0,_=_|0,A=Og(o[A>>2]|0,_)|0,A?A=tN(A)|0:A=0,A|0}function Mc(A,_){A=A|0,_=_|0;var S=0,F=0;F=xu(4)|0,iN(F,_),S=A+4|0,_=o[S>>2]|0,o[S>>2]=F,_|0&&(Jy(_),Va(_)),Do(o[A>>2]|0,1)}function iN(A,_){A=A|0,_=_|0,iI(A,_)}function SS(A,_,S,F,Y,H){A=A|0,_=_|0,S=we(S),F=F|0,Y=we(Y),H=H|0;var oe=0,Se=0;oe=T,T=T+16|0,Se=oe,gA(Se,Qm(_)|0,+S,F,+Y,H),m[A>>2]=we(+y[Se>>3]),m[A+4>>2]=we(+y[Se+8>>3]),T=oe}function gA(A,_,S,F,Y,H){A=A|0,_=_|0,S=+S,F=F|0,Y=+Y,H=H|0;var oe=0,Se=0,He=0,Ct=0,At=0;oe=T,T=T+32|0,At=oe+8|0,Ct=oe+20|0,He=oe,Se=oe+16|0,y[At>>3]=S,o[Ct>>2]=F,y[He>>3]=Y,o[Se>>2]=H,S_(A,o[_+4>>2]|0,At,Ct,He,Se),T=oe}function S_(A,_,S,F,Y,H){A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0,H=H|0;var oe=0,Se=0;oe=T,T=T+16|0,Se=oe,YS(Se),_=AA(_)|0,Ky(A,_,+y[S>>3],o[F>>2]|0,+y[Y>>3],o[H>>2]|0),D2(Se),T=oe}function AA(A){return A=A|0,o[A>>2]|0}function Ky(A,_,S,F,Y,H){A=A|0,_=_|0,S=+S,F=F|0,Y=+Y,H=H|0;var oe=0;oe=Iy(S1()|0)|0,S=+wh(S),F=wS(F)|0,Y=+wh(Y),Xw(A,ec(0,oe|0,_|0,+S,F|0,+Y,wS(H)|0)|0)}function S1(){var A=0;return s[7608]|0||(TE(9120),A=7608,o[A>>2]=1,o[A+4>>2]=0),9120}function Iy(A){return A=A|0,o[A+8>>2]|0}function wh(A){return A=+A,+ +fp(A)}function wS(A){return A=A|0,C2(A)|0}function Xw(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0;Y=T,T=T+32|0,S=Y,F=_,F&1?(dC(S,0),cf(F|0,S|0)|0,Ah(A,S),Bg(S)):(o[A>>2]=o[_>>2],o[A+4>>2]=o[_+4>>2],o[A+8>>2]=o[_+8>>2],o[A+12>>2]=o[_+12>>2]),T=Y}function dC(A,_){A=A|0,_=_|0,Th(A,_),o[A+8>>2]=0,s[A+24>>0]=0}function Ah(A,_){A=A|0,_=_|0,_=_+8|0,o[A>>2]=o[_>>2],o[A+4>>2]=o[_+4>>2],o[A+8>>2]=o[_+8>>2],o[A+12>>2]=o[_+12>>2]}function Bg(A){A=A|0,s[A+24>>0]=0}function Th(A,_){A=A|0,_=_|0,o[A>>2]=_}function C2(A){return A=A|0,A|0}function fp(A){return A=+A,+A}function TE(A){A=A|0,xm(A,w1()|0,4)}function w1(){return 1064}function xm(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,o[A+4>>2]=S,o[A+8>>2]=Vd(_|0,S+1|0)|0}function iI(A,_){A=A|0,_=_|0,_=o[_>>2]|0,o[A>>2]=_,$s(_|0)}function TS(A){A=A|0;var _=0,S=0;S=A+4|0,_=o[S>>2]|0,o[S>>2]=0,_|0&&(Jy(_),Va(_)),Do(o[A>>2]|0,0)}function $(A){A=A|0,Li(o[A>>2]|0)}function Z(A){return A=A|0,Zl(o[A>>2]|0)|0}function MI(A,_,S,F){A=A|0,_=+_,S=+S,F=F|0,Dm(o[A>>2]|0,we(_),we(S),F)}function FR(A){return A=A|0,+ +we(J_(o[A>>2]|0))}function k(A){return A=A|0,+ +we(U_(o[A>>2]|0))}function L(A){return A=A|0,+ +we(yh(o[A>>2]|0))}function ee(A){return A=A|0,+ +we(ql(o[A>>2]|0))}function ve(A){return A=A|0,+ +we(RC(o[A>>2]|0))}function xe(A){return A=A|0,+ +we(Kl(o[A>>2]|0))}function gt(A,_){A=A|0,_=_|0,y[A>>3]=+we(J_(o[_>>2]|0)),y[A+8>>3]=+we(U_(o[_>>2]|0)),y[A+16>>3]=+we(yh(o[_>>2]|0)),y[A+24>>3]=+we(ql(o[_>>2]|0)),y[A+32>>3]=+we(RC(o[_>>2]|0)),y[A+40>>3]=+we(Kl(o[_>>2]|0))}function nr(A,_){return A=A|0,_=_|0,+ +we(ap(o[A>>2]|0,_))}function Xr(A,_){return A=A|0,_=_|0,+ +we(ug(o[A>>2]|0,_))}function Kn(A,_){return A=A|0,_=_|0,+ +we(Hm(o[A>>2]|0,_))}function to(){return Wp()|0}function Fa(){el(),Eo(),vg(),nd(),YC(),Sn()}function el(){fDe(11713,4938,1)}function Eo(){Dme(10448)}function vg(){Bee(10408)}function nd(){qd(10324)}function YC(){M3(10096)}function Sn(){vr(9132)}function vr(A){A=A|0;var _=0,S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0,Is=0,ji=0,Ei=0,bo=0,ro=0,ca=0,as=0,hs=0,Sl=0,id=0,Tu=0,tg=0,ep=0,Vg=0,Vu=0,ml=0,If=0,tu=0,Io=0,hA=0,cu=0,zS=0,V1=0,mV=0,FC=0,WA=0,fd=0,q3=0,eD=0,Cf=0,Ob=0,xB=0,Zx=0,no=0,BN=0,Lx=0,Vx=0,ph=0,tp=0,ef=0,x_=0,qS=0,TG=0,iT=0,vN=0,$3=0,NG=0,VE=0,Mb=0,Wx=0,mc=0,Rp=0,Fv=0,Hf=0,H0=0,kZ=0,GZ=0,kB=0,tD=0,W1=0,RG=0,eP=0,k_=0,hV=0,Ed=0,nC=0,F2=0,ob=0,$S=0,zs=0,yl=0,mp=0;_=T,T=T+672|0,S=_+656|0,mp=_+648|0,yl=_+640|0,zs=_+632|0,$S=_+624|0,ob=_+616|0,F2=_+608|0,nC=_+600|0,Ed=_+592|0,hV=_+584|0,k_=_+576|0,eP=_+568|0,RG=_+560|0,W1=_+552|0,tD=_+544|0,kB=_+536|0,GZ=_+528|0,kZ=_+520|0,H0=_+512|0,Hf=_+504|0,Fv=_+496|0,Rp=_+488|0,mc=_+480|0,Wx=_+472|0,Mb=_+464|0,VE=_+456|0,NG=_+448|0,$3=_+440|0,vN=_+432|0,iT=_+424|0,TG=_+416|0,qS=_+408|0,x_=_+400|0,ef=_+392|0,tp=_+384|0,ph=_+376|0,Vx=_+368|0,Lx=_+360|0,BN=_+352|0,no=_+344|0,Zx=_+336|0,xB=_+328|0,Ob=_+320|0,Cf=_+312|0,eD=_+304|0,q3=_+296|0,fd=_+288|0,WA=_+280|0,FC=_+272|0,mV=_+264|0,V1=_+256|0,zS=_+248|0,cu=_+240|0,hA=_+232|0,Io=_+224|0,tu=_+216|0,If=_+208|0,ml=_+200|0,Vu=_+192|0,Vg=_+184|0,ep=_+176|0,tg=_+168|0,Tu=_+160|0,id=_+152|0,Sl=_+144|0,hs=_+136|0,as=_+128|0,ca=_+120|0,ro=_+112|0,bo=_+104|0,Ei=_+96|0,ji=_+88|0,Is=_+80|0,cn=_+72|0,Ut=_+64|0,At=_+56|0,Ct=_+48|0,He=_+40|0,Se=_+32|0,oe=_+24|0,H=_+16|0,Y=_+8|0,F=_,Hn(A,3646),Fo(A,3651,2)|0,tc(A,3665,2)|0,dA(A,3682,18)|0,o[mp>>2]=19,o[mp+4>>2]=0,o[S>>2]=o[mp>>2],o[S+4>>2]=o[mp+4>>2],pc(A,3690,S)|0,o[yl>>2]=1,o[yl+4>>2]=0,o[S>>2]=o[yl>>2],o[S+4>>2]=o[yl+4>>2],Xu(A,3696,S)|0,o[zs>>2]=2,o[zs+4>>2]=0,o[S>>2]=o[zs>>2],o[S+4>>2]=o[zs+4>>2],Lu(A,3706,S)|0,o[$S>>2]=1,o[$S+4>>2]=0,o[S>>2]=o[$S>>2],o[S+4>>2]=o[$S+4>>2],Rc(A,3722,S)|0,o[ob>>2]=2,o[ob+4>>2]=0,o[S>>2]=o[ob>>2],o[S+4>>2]=o[ob+4>>2],Rc(A,3734,S)|0,o[F2>>2]=3,o[F2+4>>2]=0,o[S>>2]=o[F2>>2],o[S+4>>2]=o[F2+4>>2],Lu(A,3753,S)|0,o[nC>>2]=4,o[nC+4>>2]=0,o[S>>2]=o[nC>>2],o[S+4>>2]=o[nC+4>>2],Lu(A,3769,S)|0,o[Ed>>2]=5,o[Ed+4>>2]=0,o[S>>2]=o[Ed>>2],o[S+4>>2]=o[Ed+4>>2],Lu(A,3783,S)|0,o[hV>>2]=6,o[hV+4>>2]=0,o[S>>2]=o[hV>>2],o[S+4>>2]=o[hV+4>>2],Lu(A,3796,S)|0,o[k_>>2]=7,o[k_+4>>2]=0,o[S>>2]=o[k_>>2],o[S+4>>2]=o[k_+4>>2],Lu(A,3813,S)|0,o[eP>>2]=8,o[eP+4>>2]=0,o[S>>2]=o[eP>>2],o[S+4>>2]=o[eP+4>>2],Lu(A,3825,S)|0,o[RG>>2]=3,o[RG+4>>2]=0,o[S>>2]=o[RG>>2],o[S+4>>2]=o[RG+4>>2],Rc(A,3843,S)|0,o[W1>>2]=4,o[W1+4>>2]=0,o[S>>2]=o[W1>>2],o[S+4>>2]=o[W1+4>>2],Rc(A,3853,S)|0,o[tD>>2]=9,o[tD+4>>2]=0,o[S>>2]=o[tD>>2],o[S+4>>2]=o[tD+4>>2],Lu(A,3870,S)|0,o[kB>>2]=10,o[kB+4>>2]=0,o[S>>2]=o[kB>>2],o[S+4>>2]=o[kB+4>>2],Lu(A,3884,S)|0,o[GZ>>2]=11,o[GZ+4>>2]=0,o[S>>2]=o[GZ>>2],o[S+4>>2]=o[GZ+4>>2],Lu(A,3896,S)|0,o[kZ>>2]=1,o[kZ+4>>2]=0,o[S>>2]=o[kZ>>2],o[S+4>>2]=o[kZ+4>>2],Mp(A,3907,S)|0,o[H0>>2]=2,o[H0+4>>2]=0,o[S>>2]=o[H0>>2],o[S+4>>2]=o[H0+4>>2],Mp(A,3915,S)|0,o[Hf>>2]=3,o[Hf+4>>2]=0,o[S>>2]=o[Hf>>2],o[S+4>>2]=o[Hf+4>>2],Mp(A,3928,S)|0,o[Fv>>2]=4,o[Fv+4>>2]=0,o[S>>2]=o[Fv>>2],o[S+4>>2]=o[Fv+4>>2],Mp(A,3948,S)|0,o[Rp>>2]=5,o[Rp+4>>2]=0,o[S>>2]=o[Rp>>2],o[S+4>>2]=o[Rp+4>>2],Mp(A,3960,S)|0,o[mc>>2]=6,o[mc+4>>2]=0,o[S>>2]=o[mc>>2],o[S+4>>2]=o[mc+4>>2],Mp(A,3974,S)|0,o[Wx>>2]=7,o[Wx+4>>2]=0,o[S>>2]=o[Wx>>2],o[S+4>>2]=o[Wx+4>>2],Mp(A,3983,S)|0,o[Mb>>2]=20,o[Mb+4>>2]=0,o[S>>2]=o[Mb>>2],o[S+4>>2]=o[Mb+4>>2],pc(A,3999,S)|0,o[VE>>2]=8,o[VE+4>>2]=0,o[S>>2]=o[VE>>2],o[S+4>>2]=o[VE+4>>2],Mp(A,4012,S)|0,o[NG>>2]=9,o[NG+4>>2]=0,o[S>>2]=o[NG>>2],o[S+4>>2]=o[NG+4>>2],Mp(A,4022,S)|0,o[$3>>2]=21,o[$3+4>>2]=0,o[S>>2]=o[$3>>2],o[S+4>>2]=o[$3+4>>2],pc(A,4039,S)|0,o[vN>>2]=10,o[vN+4>>2]=0,o[S>>2]=o[vN>>2],o[S+4>>2]=o[vN+4>>2],Mp(A,4053,S)|0,o[iT>>2]=11,o[iT+4>>2]=0,o[S>>2]=o[iT>>2],o[S+4>>2]=o[iT+4>>2],Mp(A,4065,S)|0,o[TG>>2]=12,o[TG+4>>2]=0,o[S>>2]=o[TG>>2],o[S+4>>2]=o[TG+4>>2],Mp(A,4084,S)|0,o[qS>>2]=13,o[qS+4>>2]=0,o[S>>2]=o[qS>>2],o[S+4>>2]=o[qS+4>>2],Mp(A,4097,S)|0,o[x_>>2]=14,o[x_+4>>2]=0,o[S>>2]=o[x_>>2],o[S+4>>2]=o[x_+4>>2],Mp(A,4117,S)|0,o[ef>>2]=15,o[ef+4>>2]=0,o[S>>2]=o[ef>>2],o[S+4>>2]=o[ef+4>>2],Mp(A,4129,S)|0,o[tp>>2]=16,o[tp+4>>2]=0,o[S>>2]=o[tp>>2],o[S+4>>2]=o[tp+4>>2],Mp(A,4148,S)|0,o[ph>>2]=17,o[ph+4>>2]=0,o[S>>2]=o[ph>>2],o[S+4>>2]=o[ph+4>>2],Mp(A,4161,S)|0,o[Vx>>2]=18,o[Vx+4>>2]=0,o[S>>2]=o[Vx>>2],o[S+4>>2]=o[Vx+4>>2],Mp(A,4181,S)|0,o[Lx>>2]=5,o[Lx+4>>2]=0,o[S>>2]=o[Lx>>2],o[S+4>>2]=o[Lx+4>>2],Rc(A,4196,S)|0,o[BN>>2]=6,o[BN+4>>2]=0,o[S>>2]=o[BN>>2],o[S+4>>2]=o[BN+4>>2],Rc(A,4206,S)|0,o[no>>2]=7,o[no+4>>2]=0,o[S>>2]=o[no>>2],o[S+4>>2]=o[no+4>>2],Rc(A,4217,S)|0,o[Zx>>2]=3,o[Zx+4>>2]=0,o[S>>2]=o[Zx>>2],o[S+4>>2]=o[Zx+4>>2],jy(A,4235,S)|0,o[xB>>2]=1,o[xB+4>>2]=0,o[S>>2]=o[xB>>2],o[S+4>>2]=o[xB+4>>2],Bv(A,4251,S)|0,o[Ob>>2]=4,o[Ob+4>>2]=0,o[S>>2]=o[Ob>>2],o[S+4>>2]=o[Ob+4>>2],jy(A,4263,S)|0,o[Cf>>2]=5,o[Cf+4>>2]=0,o[S>>2]=o[Cf>>2],o[S+4>>2]=o[Cf+4>>2],jy(A,4279,S)|0,o[eD>>2]=6,o[eD+4>>2]=0,o[S>>2]=o[eD>>2],o[S+4>>2]=o[eD+4>>2],jy(A,4293,S)|0,o[q3>>2]=7,o[q3+4>>2]=0,o[S>>2]=o[q3>>2],o[S+4>>2]=o[q3+4>>2],jy(A,4306,S)|0,o[fd>>2]=8,o[fd+4>>2]=0,o[S>>2]=o[fd>>2],o[S+4>>2]=o[fd+4>>2],jy(A,4323,S)|0,o[WA>>2]=9,o[WA+4>>2]=0,o[S>>2]=o[WA>>2],o[S+4>>2]=o[WA+4>>2],jy(A,4335,S)|0,o[FC>>2]=2,o[FC+4>>2]=0,o[S>>2]=o[FC>>2],o[S+4>>2]=o[FC+4>>2],Bv(A,4353,S)|0,o[mV>>2]=12,o[mV+4>>2]=0,o[S>>2]=o[mV>>2],o[S+4>>2]=o[mV+4>>2],Ll(A,4363,S)|0,o[V1>>2]=1,o[V1+4>>2]=0,o[S>>2]=o[V1>>2],o[S+4>>2]=o[V1+4>>2],Xm(A,4376,S)|0,o[zS>>2]=2,o[zS+4>>2]=0,o[S>>2]=o[zS>>2],o[S+4>>2]=o[zS+4>>2],Xm(A,4388,S)|0,o[cu>>2]=13,o[cu+4>>2]=0,o[S>>2]=o[cu>>2],o[S+4>>2]=o[cu+4>>2],Ll(A,4402,S)|0,o[hA>>2]=14,o[hA+4>>2]=0,o[S>>2]=o[hA>>2],o[S+4>>2]=o[hA+4>>2],Ll(A,4411,S)|0,o[Io>>2]=15,o[Io+4>>2]=0,o[S>>2]=o[Io>>2],o[S+4>>2]=o[Io+4>>2],Ll(A,4421,S)|0,o[tu>>2]=16,o[tu+4>>2]=0,o[S>>2]=o[tu>>2],o[S+4>>2]=o[tu+4>>2],Ll(A,4433,S)|0,o[If>>2]=17,o[If+4>>2]=0,o[S>>2]=o[If>>2],o[S+4>>2]=o[If+4>>2],Ll(A,4446,S)|0,o[ml>>2]=18,o[ml+4>>2]=0,o[S>>2]=o[ml>>2],o[S+4>>2]=o[ml+4>>2],Ll(A,4458,S)|0,o[Vu>>2]=3,o[Vu+4>>2]=0,o[S>>2]=o[Vu>>2],o[S+4>>2]=o[Vu+4>>2],Xm(A,4471,S)|0,o[Vg>>2]=1,o[Vg+4>>2]=0,o[S>>2]=o[Vg>>2],o[S+4>>2]=o[Vg+4>>2],$_(A,4486,S)|0,o[ep>>2]=10,o[ep+4>>2]=0,o[S>>2]=o[ep>>2],o[S+4>>2]=o[ep+4>>2],jy(A,4496,S)|0,o[tg>>2]=11,o[tg+4>>2]=0,o[S>>2]=o[tg>>2],o[S+4>>2]=o[tg+4>>2],jy(A,4508,S)|0,o[Tu>>2]=3,o[Tu+4>>2]=0,o[S>>2]=o[Tu>>2],o[S+4>>2]=o[Tu+4>>2],Bv(A,4519,S)|0,o[id>>2]=4,o[id+4>>2]=0,o[S>>2]=o[id>>2],o[S+4>>2]=o[id+4>>2],HC(A,4530,S)|0,o[Sl>>2]=19,o[Sl+4>>2]=0,o[S>>2]=o[Sl>>2],o[S+4>>2]=o[Sl+4>>2],yB(A,4542,S)|0,o[hs>>2]=12,o[hs+4>>2]=0,o[S>>2]=o[hs>>2],o[S+4>>2]=o[hs+4>>2],ZR(A,4554,S)|0,o[as>>2]=13,o[as+4>>2]=0,o[S>>2]=o[as>>2],o[S+4>>2]=o[as+4>>2],sG(A,4568,S)|0,o[ca>>2]=2,o[ca+4>>2]=0,o[S>>2]=o[ca>>2],o[S+4>>2]=o[ca+4>>2],E3(A,4578,S)|0,o[ro>>2]=20,o[ro+4>>2]=0,o[S>>2]=o[ro>>2],o[S+4>>2]=o[ro+4>>2],lZ(A,4587,S)|0,o[bo>>2]=22,o[bo+4>>2]=0,o[S>>2]=o[bo>>2],o[S+4>>2]=o[bo+4>>2],pc(A,4602,S)|0,o[Ei>>2]=23,o[Ei+4>>2]=0,o[S>>2]=o[Ei>>2],o[S+4>>2]=o[Ei+4>>2],pc(A,4619,S)|0,o[ji>>2]=14,o[ji+4>>2]=0,o[S>>2]=o[ji>>2],o[S+4>>2]=o[ji+4>>2],sN(A,4629,S)|0,o[Is>>2]=1,o[Is+4>>2]=0,o[S>>2]=o[Is>>2],o[S+4>>2]=o[Is+4>>2],Ju(A,4637,S)|0,o[cn>>2]=4,o[cn+4>>2]=0,o[S>>2]=o[cn>>2],o[S+4>>2]=o[cn+4>>2],Xm(A,4653,S)|0,o[Ut>>2]=5,o[Ut+4>>2]=0,o[S>>2]=o[Ut>>2],o[S+4>>2]=o[Ut+4>>2],Xm(A,4669,S)|0,o[At>>2]=6,o[At+4>>2]=0,o[S>>2]=o[At>>2],o[S+4>>2]=o[At+4>>2],Xm(A,4686,S)|0,o[Ct>>2]=7,o[Ct+4>>2]=0,o[S>>2]=o[Ct>>2],o[S+4>>2]=o[Ct+4>>2],Xm(A,4701,S)|0,o[He>>2]=8,o[He+4>>2]=0,o[S>>2]=o[He>>2],o[S+4>>2]=o[He+4>>2],Xm(A,4719,S)|0,o[Se>>2]=9,o[Se+4>>2]=0,o[S>>2]=o[Se>>2],o[S+4>>2]=o[Se+4>>2],Xm(A,4736,S)|0,o[oe>>2]=21,o[oe+4>>2]=0,o[S>>2]=o[oe>>2],o[S+4>>2]=o[oe+4>>2],W9(A,4754,S)|0,o[H>>2]=2,o[H+4>>2]=0,o[S>>2]=o[H>>2],o[S+4>>2]=o[H+4>>2],$_(A,4772,S)|0,o[Y>>2]=3,o[Y+4>>2]=0,o[S>>2]=o[Y>>2],o[S+4>>2]=o[Y+4>>2],$_(A,4790,S)|0,o[F>>2]=4,o[F+4>>2]=0,o[S>>2]=o[F>>2],o[S+4>>2]=o[F+4>>2],$_(A,4808,S)|0,T=_}function Hn(A,_){A=A|0,_=_|0;var S=0;S=RQ()|0,o[A>>2]=S,BZ(S,_),WQ(o[A>>2]|0)}function Fo(A,_,S){return A=A|0,_=_|0,S=S|0,so(A,wp(_)|0,S,0),A|0}function tc(A,_,S){return A=A|0,_=_|0,S=S|0,z$(A,wp(_)|0,S,0),A|0}function dA(A,_,S){return A=A|0,_=_|0,S=S|0,Wb(A,wp(_)|0,S,0),A|0}function pc(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return F=T,T=T+16|0,Y=F+8|0,H=F,oe=o[S+4>>2]|0,o[H>>2]=o[S>>2],o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],NRe(A,_,Y),T=F,A|0}function Xu(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return F=T,T=T+16|0,Y=F+8|0,H=F,oe=o[S+4>>2]|0,o[H>>2]=o[S>>2],o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],pC(A,_,Y),T=F,A|0}function Lu(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return F=T,T=T+16|0,Y=F+8|0,H=F,oe=o[S+4>>2]|0,o[H>>2]=o[S>>2],o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],ne(A,_,Y),T=F,A|0}function Rc(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return F=T,T=T+16|0,Y=F+8|0,H=F,oe=o[S+4>>2]|0,o[H>>2]=o[S>>2],o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],T8(A,_,Y),T=F,A|0}function Mp(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return F=T,T=T+16|0,Y=F+8|0,H=F,oe=o[S+4>>2]|0,o[H>>2]=o[S>>2],o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],W$(A,_,Y),T=F,A|0}function jy(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return F=T,T=T+16|0,Y=F+8|0,H=F,oe=o[S+4>>2]|0,o[H>>2]=o[S>>2],o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],pG(A,_,Y),T=F,A|0}function Bv(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return F=T,T=T+16|0,Y=F+8|0,H=F,oe=o[S+4>>2]|0,o[H>>2]=o[S>>2],o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],Xae(A,_,Y),T=F,A|0}function Ll(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return F=T,T=T+16|0,Y=F+8|0,H=F,oe=o[S+4>>2]|0,o[H>>2]=o[S>>2],o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],_Q(A,_,Y),T=F,A|0}function Xm(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return F=T,T=T+16|0,Y=F+8|0,H=F,oe=o[S+4>>2]|0,o[H>>2]=o[S>>2],o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],X9(A,_,Y),T=F,A|0}function $_(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return F=T,T=T+16|0,Y=F+8|0,H=F,oe=o[S+4>>2]|0,o[H>>2]=o[S>>2],o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],Tv(A,_,Y),T=F,A|0}function HC(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return F=T,T=T+16|0,Y=F+8|0,H=F,oe=o[S+4>>2]|0,o[H>>2]=o[S>>2],o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],tn(A,_,Y),T=F,A|0}function yB(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return F=T,T=T+16|0,Y=F+8|0,H=F,oe=o[S+4>>2]|0,o[H>>2]=o[S>>2],o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],pu(A,_,Y),T=F,A|0}function ZR(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return F=T,T=T+16|0,Y=F+8|0,H=F,oe=o[S+4>>2]|0,o[H>>2]=o[S>>2],o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],$l(A,_,Y),T=F,A|0}function sG(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return F=T,T=T+16|0,Y=F+8|0,H=F,oe=o[S+4>>2]|0,o[H>>2]=o[S>>2],o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],u8(A,_,Y),T=F,A|0}function E3(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return F=T,T=T+16|0,Y=F+8|0,H=F,oe=o[S+4>>2]|0,o[H>>2]=o[S>>2],o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],dX(A,_,Y),T=F,A|0}function lZ(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return F=T,T=T+16|0,Y=F+8|0,H=F,oe=o[S+4>>2]|0,o[H>>2]=o[S>>2],o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],N1(A,_,Y),T=F,A|0}function sN(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return F=T,T=T+16|0,Y=F+8|0,H=F,oe=o[S+4>>2]|0,o[H>>2]=o[S>>2],o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],Uw(A,_,Y),T=F,A|0}function Ju(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return F=T,T=T+16|0,Y=F+8|0,H=F,oe=o[S+4>>2]|0,o[H>>2]=o[S>>2],o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],fA(A,_,Y),T=F,A|0}function W9(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return F=T,T=T+16|0,Y=F+8|0,H=F,oe=o[S+4>>2]|0,o[H>>2]=o[S>>2],o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],oN(A,_,Y),T=F,A|0}function oN(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0;F=T,T=T+16|0,Y=F+8|0,H=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=wp(_)|0,o[H>>2]=Se,o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],aN(A,S,Y,1),T=F}function wp(A){return A=A|0,A|0}function aN(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;Y=T,T=T+32|0,H=Y+16|0,At=Y+8|0,Se=Y,Ct=o[S>>2]|0,He=o[S+4>>2]|0,oe=o[A>>2]|0,A=uZ()|0,o[At>>2]=Ct,o[At+4>>2]=He,o[H>>2]=o[At>>2],o[H+4>>2]=o[At+4>>2],S=oG(H)|0,o[Se>>2]=Ct,o[Se+4>>2]=He,o[H>>2]=o[Se>>2],o[H+4>>2]=o[Se+4>>2],vf(oe,_,A,S,NS(H,F)|0,F),T=Y}function uZ(){var A=0,_=0;if(s[7616]|0||(Ft(9136),au(24,9136,U|0)|0,_=7616,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9136)|0)){A=9136,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));Ft(9136)}return 9136}function oG(A){return A=A|0,0}function NS(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,Y=At+24|0,oe=At+16|0,Se=At,He=At+8|0,H=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=H,o[Se+4>>2]=F,Ut=uZ()|0,Ct=Ut+24|0,A=ag(_,4)|0,o[He>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=H,o[oe+4>>2]=F,o[Y>>2]=o[oe>>2],o[Y+4>>2]=o[oe+4>>2],Gb(S,Y,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(m2(Ct,Se,He),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function vf(A,_,S,F,Y,H){A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0,H=H|0;var oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0,Is=0;oe=T,T=T+32|0,cn=oe+24|0,Ut=oe+20|0,He=oe+16|0,At=oe+12|0,Ct=oe+8|0,Se=oe+4|0,Is=oe,o[Ut>>2]=_,o[He>>2]=S,o[At>>2]=F,o[Ct>>2]=Y,o[Se>>2]=H,H=A+28|0,o[Is>>2]=o[H>>2],o[cn>>2]=o[Is>>2],Ix(A+24|0,cn,Ut,At,Ct,He,Se)|0,o[H>>2]=o[o[H>>2]>>2],T=oe}function Ix(A,_,S,F,Y,H,oe){return A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0,H=H|0,oe=oe|0,A=Cx(_)|0,_=xu(24)|0,gZ(_+4|0,o[S>>2]|0,o[F>>2]|0,o[Y>>2]|0,o[H>>2]|0,o[oe>>2]|0),o[_>>2]=o[A>>2],o[A>>2]=_,_|0}function Cx(A){return A=A|0,o[A>>2]|0}function gZ(A,_,S,F,Y,H){A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0,H=H|0,o[A>>2]=_,o[A+4>>2]=S,o[A+8>>2]=F,o[A+12>>2]=Y,o[A+16>>2]=H}function ag(A,_){return A=A|0,_=_|0,_|A|0}function Gb(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function m2(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,He=A+4|0,Y=(((o[He>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,H=aG(A)|0,H>>>0>>0)RI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,zy(Se,cn>>>0>>1>>>0?Ut>>>0>>0?Y:Ut:H,((o[He>>2]|0)-At|0)/12|0,A+8|0),He=Se+8|0,H=o[He>>2]|0,Y=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=Y,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],Gb(H,F,S),o[He>>2]=(o[He>>2]|0)+12,h2(A,Se),Ke(Se),T=Ct;return}}function aG(A){return A=A|0,357913941}function zy(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Bo();else{Y=xu(_*12|0)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_*12|0)}function h2(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(((Y|0)/-12|0)*12|0)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function Ke(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&Va(A)}function Ft(A){A=A|0,Ki(A)}function Er(A){A=A|0,Un(A+24|0)}function Jr(A){return A=A|0,o[A>>2]|0}function Un(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),Va(S))}function Ki(A){A=A|0;var _=0;_=Ss()|0,js(A,2,3,_,vo()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function Ss(){return 9228}function vo(){return 1140}function Pa(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0;return S=T,T=T+16|0,F=S+8|0,Y=S,H=xc(A)|0,A=o[H+4>>2]|0,o[Y>>2]=o[H>>2],o[Y+4>>2]=A,o[F>>2]=o[Y>>2],o[F+4>>2]=o[Y+4>>2],_=Jl(_,F)|0,T=S,_|0}function js(A,_,S,F,Y,H){A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0,H=H|0,o[A>>2]=_,o[A+4>>2]=S,o[A+8>>2]=F,o[A+12>>2]=Y,o[A+16>>2]=H}function xc(A){return A=A|0,(o[(uZ()|0)+24>>2]|0)+(A*12|0)|0}function Jl(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0;return Y=T,T=T+48|0,F=Y,S=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(S=o[(o[A>>2]|0)+S>>2]|0),nT[S&31](F,A),F=nA(F)|0,T=Y,F|0}function nA(A){A=A|0;var _=0,S=0,F=0,Y=0;return Y=T,T=T+32|0,_=Y+12|0,S=Y,F=Uu(Ig()|0)|0,F?(NE(_,F),Cy(S,_),_2(A,S),A=y2(_)|0):A=LR(A)|0,T=Y,A|0}function Ig(){var A=0;return s[7632]|0||(Ce(9184),au(25,9184,U|0)|0,A=7632,o[A>>2]=1,o[A+4>>2]=0),9184}function Uu(A){return A=A|0,o[A+36>>2]|0}function NE(A,_){A=A|0,_=_|0,o[A>>2]=_,o[A+4>>2]=A,o[A+8>>2]=0}function Cy(A,_){A=A|0,_=_|0,o[A>>2]=o[_>>2],o[A+4>>2]=o[_+4>>2],o[A+8>>2]=0}function _2(A,_){A=A|0,_=_|0,my(_,A,A+8|0,A+16|0,A+24|0,A+32|0,A+40|0)|0}function y2(A){return A=A|0,o[(o[A+4>>2]|0)+8>>2]|0}function LR(A){A=A|0;var _=0,S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0;He=T,T=T+16|0,S=He+4|0,F=He,Y=CN(8)|0,H=Y,oe=xu(48)|0,Se=oe,_=Se+48|0;do o[Se>>2]=o[A>>2],Se=Se+4|0,A=A+4|0;while((Se|0)<(_|0));return _=H+4|0,o[_>>2]=oe,Se=xu(8)|0,oe=o[_>>2]|0,o[F>>2]=0,o[S>>2]=o[F>>2],B3(Se,oe,S),o[Y>>2]=Se,T=He,H|0}function B3(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,S=xu(16)|0,o[S+4>>2]=0,o[S+8>>2]=0,o[S>>2]=1092,o[S+12>>2]=_,o[A+4>>2]=S}function pA(A){A=A|0,o4(A),Va(A)}function sI(A){A=A|0,A=o[A+12>>2]|0,A|0&&Va(A)}function e0(A){A=A|0,Va(A)}function my(A,_,S,F,Y,H,oe){return A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0,H=H|0,oe=oe|0,H=AZ(o[A>>2]|0,_,S,F,Y,H,oe)|0,oe=A+4|0,o[(o[oe>>2]|0)+8>>2]=H,o[(o[oe>>2]|0)+8>>2]|0}function AZ(A,_,S,F,Y,H,oe){A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0,H=H|0,oe=oe|0;var Se=0,He=0;return Se=T,T=T+16|0,He=Se,YS(He),A=AA(A)|0,oe=bd(A,+y[_>>3],+y[S>>3],+y[F>>3],+y[Y>>3],+y[H>>3],+y[oe>>3])|0,D2(He),T=Se,oe|0}function bd(A,_,S,F,Y,H,oe){A=A|0,_=+_,S=+S,F=+F,Y=+Y,H=+H,oe=+oe;var Se=0;return Se=Iy(Wd()|0)|0,_=+wh(_),S=+wh(S),F=+wh(F),Y=+wh(Y),H=+wh(H),$i(0,Se|0,A|0,+_,+S,+F,+Y,+H,+ +wh(oe))|0}function Wd(){var A=0;return s[7624]|0||(Ys(9172),A=7624,o[A>>2]=1,o[A+4>>2]=0),9172}function Ys(A){A=A|0,xm(A,K()|0,6)}function K(){return 1112}function Ce(A){A=A|0,Kc(A)}function Ze(A){A=A|0,pt(A+24|0),hr(A+16|0)}function pt(A){A=A|0,yo(A)}function hr(A){A=A|0,Zn(A)}function Zn(A){A=A|0;var _=0,S=0;if(_=o[A>>2]|0,_|0)do S=_,_=o[_>>2]|0,Va(S);while(_|0);o[A>>2]=0}function yo(A){A=A|0;var _=0,S=0;if(_=o[A>>2]|0,_|0)do S=_,_=o[_>>2]|0,Va(S);while(_|0);o[A>>2]=0}function Kc(A){A=A|0;var _=0;o[A+16>>2]=0,o[A+20>>2]=0,_=A+24|0,o[_>>2]=0,o[A+28>>2]=_,o[A+36>>2]=0,s[A+40>>0]=0,s[A+41>>0]=0}function fA(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0;F=T,T=T+16|0,Y=F+8|0,H=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=wp(_)|0,o[H>>2]=Se,o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],Fb(A,S,Y,0),T=F}function Fb(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;Y=T,T=T+32|0,H=Y+16|0,At=Y+8|0,Se=Y,Ct=o[S>>2]|0,He=o[S+4>>2]|0,oe=o[A>>2]|0,A=Nh()|0,o[At>>2]=Ct,o[At+4>>2]=He,o[H>>2]=o[At>>2],o[H+4>>2]=o[At+4>>2],S=b2(H)|0,o[Se>>2]=Ct,o[Se+4>>2]=He,o[H>>2]=o[Se>>2],o[H+4>>2]=o[Se+4>>2],vf(oe,_,A,S,qy(H,F)|0,F),T=Y}function Nh(){var A=0,_=0;if(s[7640]|0||(jc(9232),au(26,9232,U|0)|0,_=7640,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9232)|0)){A=9232,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));jc(9232)}return 9232}function b2(A){return A=A|0,0}function qy(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,Y=At+24|0,oe=At+16|0,Se=At,He=At+8|0,H=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=H,o[Se+4>>2]=F,Ut=Nh()|0,Ct=Ut+24|0,A=ag(_,4)|0,o[He>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=H,o[oe+4>>2]=F,o[Y>>2]=o[oe>>2],o[Y+4>>2]=o[oe+4>>2],v3(S,Y,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(S3(Ct,Se,He),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function v3(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function S3(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,He=A+4|0,Y=(((o[He>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,H=oQ(A)|0,H>>>0>>0)RI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,Tp(Se,cn>>>0>>1>>>0?Ut>>>0>>0?Y:Ut:H,((o[He>>2]|0)-At|0)/12|0,A+8|0),He=Se+8|0,H=o[He>>2]|0,Y=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=Y,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],v3(H,F,S),o[He>>2]=(o[He>>2]|0)+12,Si(A,Se),dZ(Se),T=Ct;return}}function oQ(A){return A=A|0,357913941}function Tp(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Bo();else{Y=xu(_*12|0)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_*12|0)}function Si(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(((Y|0)/-12|0)*12|0)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function dZ(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&Va(A)}function jc(A){A=A|0,ao(A)}function Rd(A){A=A|0,Sc(A+24|0)}function Sc(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),Va(S))}function ao(A){A=A|0;var _=0;_=Ss()|0,js(A,2,1,_,VR()|0,3),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function VR(){return 1144}function df(A,_,S,F,Y){A=A|0,_=_|0,S=+S,F=+F,Y=Y|0;var H=0,oe=0,Se=0,He=0;H=T,T=T+16|0,oe=H+8|0,Se=H,He=pZ(A)|0,A=o[He+4>>2]|0,o[Se>>2]=o[He>>2],o[Se+4>>2]=A,o[oe>>2]=o[Se>>2],o[oe+4>>2]=o[Se+4>>2],aQ(_,oe,S,F,Y),T=H}function pZ(A){return A=A|0,(o[(Nh()|0)+24>>2]|0)+(A*12|0)|0}function aQ(A,_,S,F,Y){A=A|0,_=_|0,S=+S,F=+F,Y=Y|0;var H=0,oe=0,Se=0,He=0,Ct=0;Ct=T,T=T+16|0,oe=Ct+2|0,Se=Ct+1|0,He=Ct,H=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(H=o[(o[A>>2]|0)+H>>2]|0),vv(oe,S),S=+cN(oe,S),vv(Se,F),F=+cN(Se,F),Sf(He,Y),He=Jw(He,Y)|0,Zhe[H&1](A,S,F,He),T=Ct}function vv(A,_){A=A|0,_=+_}function cN(A,_){return A=A|0,_=+_,+ +cQ(_)}function Sf(A,_){A=A|0,_=_|0}function Jw(A,_){return A=A|0,_=_|0,vl(_)|0}function vl(A){return A=A|0,A|0}function cQ(A){return A=+A,+A}function Uw(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0;F=T,T=T+16|0,Y=F+8|0,H=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=wp(_)|0,o[H>>2]=Se,o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],lN(A,S,Y,1),T=F}function lN(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;Y=T,T=T+32|0,H=Y+16|0,At=Y+8|0,Se=Y,Ct=o[S>>2]|0,He=o[S+4>>2]|0,oe=o[A>>2]|0,A=lQ()|0,o[At>>2]=Ct,o[At+4>>2]=He,o[H>>2]=o[At>>2],o[H+4>>2]=o[At+4>>2],S=WR(H)|0,o[Se>>2]=Ct,o[Se+4>>2]=He,o[H>>2]=o[Se>>2],o[H+4>>2]=o[Se+4>>2],vf(oe,_,A,S,r8(H,F)|0,F),T=Y}function lQ(){var A=0,_=0;if(s[7648]|0||(ss(9268),au(27,9268,U|0)|0,_=7648,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9268)|0)){A=9268,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));ss(9268)}return 9268}function WR(A){return A=A|0,0}function r8(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,Y=At+24|0,oe=At+16|0,Se=At,He=At+8|0,H=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=H,o[Se+4>>2]=F,Ut=lQ()|0,Ct=Ut+24|0,A=ag(_,4)|0,o[He>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=H,o[oe+4>>2]=F,o[Y>>2]=o[oe>>2],o[Y+4>>2]=o[oe+4>>2],n8(S,Y,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(i8(Ct,Se,He),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function n8(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function i8(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,He=A+4|0,Y=(((o[He>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,H=uQ(A)|0,H>>>0>>0)RI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,cG(Se,cn>>>0>>1>>>0?Ut>>>0>>0?Y:Ut:H,((o[He>>2]|0)-At|0)/12|0,A+8|0),He=Se+8|0,H=o[He>>2]|0,Y=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=Y,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],n8(H,F,S),o[He>>2]=(o[He>>2]|0)+12,s8(A,Se),mx(Se),T=Ct;return}}function uQ(A){return A=A|0,357913941}function cG(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Bo();else{Y=xu(_*12|0)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_*12|0)}function s8(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(((Y|0)/-12|0)*12|0)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function mx(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&Va(A)}function ss(A){A=A|0,La(A)}function jo(A){A=A|0,ea(A+24|0)}function ea(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),Va(S))}function La(A){A=A|0;var _=0;_=Ss()|0,js(A,2,4,_,gc()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function gc(){return 1160}function IA(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0;return S=T,T=T+16|0,F=S+8|0,Y=S,H=Dd(A)|0,A=o[H+4>>2]|0,o[Y>>2]=o[H>>2],o[Y+4>>2]=A,o[F>>2]=o[Y>>2],o[F+4>>2]=o[Y+4>>2],_=pm(_,F)|0,T=S,_|0}function Dd(A){return A=A|0,(o[(lQ()|0)+24>>2]|0)+(A*12|0)|0}function pm(A,_){A=A|0,_=_|0;var S=0;return S=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(S=o[(o[A>>2]|0)+S>>2]|0),T1(lY[S&31](A)|0)|0}function T1(A){return A=A|0,A&1|0}function N1(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0;F=T,T=T+16|0,Y=F+8|0,H=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=wp(_)|0,o[H>>2]=Se,o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],Zb(A,S,Y,0),T=F}function Zb(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;Y=T,T=T+32|0,H=Y+16|0,At=Y+8|0,Se=Y,Ct=o[S>>2]|0,He=o[S+4>>2]|0,oe=o[A>>2]|0,A=bB()|0,o[At>>2]=Ct,o[At+4>>2]=He,o[H>>2]=o[At>>2],o[H+4>>2]=o[At+4>>2],S=lG(H)|0,o[Se>>2]=Ct,o[Se+4>>2]=He,o[H>>2]=o[Se>>2],o[H+4>>2]=o[Se+4>>2],vf(oe,_,A,S,hx(H,F)|0,F),T=Y}function bB(){var A=0,_=0;if(s[7656]|0||(gQ(9304),au(28,9304,U|0)|0,_=7656,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9304)|0)){A=9304,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));gQ(9304)}return 9304}function lG(A){return A=A|0,0}function hx(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,Y=At+24|0,oe=At+16|0,Se=At,He=At+8|0,H=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=H,o[Se+4>>2]=F,Ut=bB()|0,Ct=Ut+24|0,A=ag(_,4)|0,o[He>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=H,o[oe+4>>2]=F,o[Y>>2]=o[oe>>2],o[Y+4>>2]=o[oe+4>>2],P9(S,Y,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(OCe(Ct,Se,He),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function P9(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function OCe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,He=A+4|0,Y=(((o[He>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,H=d$(A)|0,H>>>0>>0)RI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,_x(Se,cn>>>0>>1>>>0?Ut>>>0>>0?Y:Ut:H,((o[He>>2]|0)-At|0)/12|0,A+8|0),He=Se+8|0,H=o[He>>2]|0,Y=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=Y,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],P9(H,F,S),o[He>>2]=(o[He>>2]|0)+12,yx(A,Se),uX(Se),T=Ct;return}}function d$(A){return A=A|0,357913941}function _x(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Bo();else{Y=xu(_*12|0)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_*12|0)}function yx(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(((Y|0)/-12|0)*12|0)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function uX(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&Va(A)}function gQ(A){A=A|0,RE(A)}function bx(A){A=A|0,MCe(A+24|0)}function MCe(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),Va(S))}function RE(A){A=A|0;var _=0;_=Ss()|0,js(A,2,5,_,o8()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function o8(){return 1164}function QCe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;F=T,T=T+16|0,Y=F+8|0,H=F,oe=gX(A)|0,A=o[oe+4>>2]|0,o[H>>2]=o[oe>>2],o[H+4>>2]=A,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],mRe(_,Y,S),T=F}function gX(A){return A=A|0,(o[(bB()|0)+24>>2]|0)+(A*12|0)|0}function mRe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0;H=T,T=T+16|0,Y=H,F=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(F=o[(o[A>>2]|0)+F>>2]|0),R1(Y,S),S=Kw(Y,S)|0,nT[F&31](A,S),$y(Y),T=H}function R1(A,_){A=A|0,_=_|0,AX(A,_)}function Kw(A,_){return A=A|0,_=_|0,A|0}function $y(A){A=A|0,Jy(A)}function AX(A,_){A=A|0,_=_|0,AQ(A,_)}function AQ(A,_){A=A|0,_=_|0,o[A>>2]=_}function dX(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0;F=T,T=T+16|0,Y=F+8|0,H=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=wp(_)|0,o[H>>2]=Se,o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],uG(A,S,Y,0),T=F}function uG(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;Y=T,T=T+32|0,H=Y+16|0,At=Y+8|0,Se=Y,Ct=o[S>>2]|0,He=o[S+4>>2]|0,oe=o[A>>2]|0,A=km()|0,o[At>>2]=Ct,o[At+4>>2]=He,o[H>>2]=o[At>>2],o[H+4>>2]=o[At+4>>2],S=dQ(H)|0,o[Se>>2]=Ct,o[Se+4>>2]=He,o[H>>2]=o[Se>>2],o[H+4>>2]=o[Se+4>>2],vf(oe,_,A,S,a8(H,F)|0,F),T=Y}function km(){var A=0,_=0;if(s[7664]|0||(l8(9340),au(29,9340,U|0)|0,_=7664,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9340)|0)){A=9340,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));l8(9340)}return 9340}function dQ(A){return A=A|0,0}function a8(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,Y=At+24|0,oe=At+16|0,Se=At,He=At+8|0,H=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=H,o[Se+4>>2]=F,Ut=km()|0,Ct=Ut+24|0,A=ag(_,4)|0,o[He>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=H,o[oe+4>>2]=F,o[Y>>2]=o[oe>>2],o[Y+4>>2]=o[oe+4>>2],w3(S,Y,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(p$(Ct,Se,He),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function w3(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function p$(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,He=A+4|0,Y=(((o[He>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,H=E2(A)|0,H>>>0>>0)RI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,D1(Se,cn>>>0>>1>>>0?Ut>>>0>>0?Y:Ut:H,((o[He>>2]|0)-At|0)/12|0,A+8|0),He=Se+8|0,H=o[He>>2]|0,Y=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=Y,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],w3(H,F,S),o[He>>2]=(o[He>>2]|0)+12,c8(A,Se),T3(Se),T=Ct;return}}function E2(A){return A=A|0,357913941}function D1(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Bo();else{Y=xu(_*12|0)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_*12|0)}function c8(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(((Y|0)/-12|0)*12|0)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function T3(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&Va(A)}function l8(A){A=A|0,pX(A)}function fZ(A){A=A|0,YCe(A+24|0)}function YCe(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),Va(S))}function pX(A){A=A|0;var _=0;_=Ss()|0,js(A,2,4,_,f$()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function f$(){return 1180}function O9(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return F=T,T=T+16|0,Y=F+8|0,H=F,oe=gG(A)|0,A=o[oe+4>>2]|0,o[H>>2]=o[oe>>2],o[H+4>>2]=A,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],S=pQ(_,Y,S)|0,T=F,S|0}function gG(A){return A=A|0,(o[(km()|0)+24>>2]|0)+(A*12|0)|0}function pQ(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0;return H=T,T=T+16|0,Y=H,F=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(F=o[(o[A>>2]|0)+F>>2]|0),Sv(Y,S),Y=IZ(Y,S)|0,Y=RS(xg[F&15](A,Y)|0)|0,T=H,Y|0}function Sv(A,_){A=A|0,_=_|0}function IZ(A,_){return A=A|0,_=_|0,xae(_)|0}function RS(A){return A=A|0,A|0}function xae(A){return A=A|0,A|0}function u8(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0;F=T,T=T+16|0,Y=F+8|0,H=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=wp(_)|0,o[H>>2]=Se,o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],M9(A,S,Y,0),T=F}function M9(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;Y=T,T=T+32|0,H=Y+16|0,At=Y+8|0,Se=Y,Ct=o[S>>2]|0,He=o[S+4>>2]|0,oe=o[A>>2]|0,A=Q9()|0,o[At>>2]=Ct,o[At+4>>2]=He,o[H>>2]=o[At>>2],o[H+4>>2]=o[At+4>>2],S=kae(H)|0,o[Se>>2]=Ct,o[Se+4>>2]=He,o[H>>2]=o[Se>>2],o[H+4>>2]=o[Se+4>>2],vf(oe,_,A,S,Ex(H,F)|0,F),T=Y}function Q9(){var A=0,_=0;if(s[7672]|0||(Y9(9376),au(30,9376,U|0)|0,_=7672,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9376)|0)){A=9376,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));Y9(9376)}return 9376}function kae(A){return A=A|0,0}function Ex(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,Y=At+24|0,oe=At+16|0,Se=At,He=At+8|0,H=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=H,o[Se+4>>2]=F,Ut=Q9()|0,Ct=Ut+24|0,A=ag(_,4)|0,o[He>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=H,o[oe+4>>2]=F,o[Y>>2]=o[oe>>2],o[Y+4>>2]=o[oe+4>>2],g8(S,Y,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(I$(Ct,Se,He),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function g8(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function I$(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,He=A+4|0,Y=(((o[He>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,H=Ip(A)|0,H>>>0>>0)RI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,CZ(Se,cn>>>0>>1>>>0?Ut>>>0>>0?Y:Ut:H,((o[He>>2]|0)-At|0)/12|0,A+8|0),He=Se+8|0,H=o[He>>2]|0,Y=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=Y,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],g8(H,F,S),o[He>>2]=(o[He>>2]|0)+12,fX(A,Se),Rh(Se),T=Ct;return}}function Ip(A){return A=A|0,357913941}function CZ(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Bo();else{Y=xu(_*12|0)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_*12|0)}function fX(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(((Y|0)/-12|0)*12|0)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function Rh(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&Va(A)}function Y9(A){A=A|0,C$(A)}function wv(A){A=A|0,fQ(A+24|0)}function fQ(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),Va(S))}function C$(A){A=A|0;var _=0;_=Ss()|0,js(A,2,5,_,gg()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function gg(){return 1196}function w_(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0;return S=T,T=T+16|0,F=S+8|0,Y=S,H=NI(A)|0,A=o[H+4>>2]|0,o[Y>>2]=o[H>>2],o[Y+4>>2]=A,o[F>>2]=o[Y>>2],o[F+4>>2]=o[Y+4>>2],_=mZ(_,F)|0,T=S,_|0}function NI(A){return A=A|0,(o[(Q9()|0)+24>>2]|0)+(A*12|0)|0}function mZ(A,_){A=A|0,_=_|0;var S=0;return S=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(S=o[(o[A>>2]|0)+S>>2]|0),RS(lY[S&31](A)|0)|0}function $l(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0;F=T,T=T+16|0,Y=F+8|0,H=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=wp(_)|0,o[H>>2]=Se,o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],N3(A,S,Y,1),T=F}function N3(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;Y=T,T=T+32|0,H=Y+16|0,At=Y+8|0,Se=Y,Ct=o[S>>2]|0,He=o[S+4>>2]|0,oe=o[A>>2]|0,A=dd()|0,o[At>>2]=Ct,o[At+4>>2]=He,o[H>>2]=o[At>>2],o[H+4>>2]=o[At+4>>2],S=IQ(H)|0,o[Se>>2]=Ct,o[Se+4>>2]=He,o[H>>2]=o[Se>>2],o[H+4>>2]=o[Se+4>>2],vf(oe,_,A,S,HCe(H,F)|0,F),T=Y}function dd(){var A=0,_=0;if(s[7680]|0||(A8(9412),au(31,9412,U|0)|0,_=7680,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9412)|0)){A=9412,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));A8(9412)}return 9412}function IQ(A){return A=A|0,0}function HCe(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,Y=At+24|0,oe=At+16|0,Se=At,He=At+8|0,H=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=H,o[Se+4>>2]=F,Ut=dd()|0,Ct=Ut+24|0,A=ag(_,4)|0,o[He>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=H,o[oe+4>>2]=F,o[Y>>2]=o[oe>>2],o[Y+4>>2]=o[oe+4>>2],PR(S,Y,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(m$(Ct,Se,He),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function PR(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function m$(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,He=A+4|0,Y=(((o[He>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,H=rC(A)|0,H>>>0>>0)RI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,Sa(Se,cn>>>0>>1>>>0?Ut>>>0>>0?Y:Ut:H,((o[He>>2]|0)-At|0)/12|0,A+8|0),He=Se+8|0,H=o[He>>2]|0,Y=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=Y,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],PR(H,F,S),o[He>>2]=(o[He>>2]|0)+12,jw(A,Se),t_(Se),T=Ct;return}}function rC(A){return A=A|0,357913941}function Sa(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Bo();else{Y=xu(_*12|0)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_*12|0)}function jw(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(((Y|0)/-12|0)*12|0)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function t_(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&Va(A)}function A8(A){A=A|0,Np(A)}function hZ(A){A=A|0,Gae(A+24|0)}function Gae(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),Va(S))}function Np(A){A=A|0;var _=0;_=Ss()|0,js(A,2,6,_,Bx()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function Bx(){return 1200}function d8(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0;return S=T,T=T+16|0,F=S+8|0,Y=S,H=EB(A)|0,A=o[H+4>>2]|0,o[Y>>2]=o[H>>2],o[Y+4>>2]=A,o[F>>2]=o[Y>>2],o[F+4>>2]=o[Y+4>>2],_=Ya(_,F)|0,T=S,_|0}function EB(A){return A=A|0,(o[(dd()|0)+24>>2]|0)+(A*12|0)|0}function Ya(A,_){A=A|0,_=_|0;var S=0;return S=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(S=o[(o[A>>2]|0)+S>>2]|0),IX(lY[S&31](A)|0)|0}function IX(A){return A=A|0,A|0}function pu(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0;F=T,T=T+16|0,Y=F+8|0,H=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=wp(_)|0,o[H>>2]=Se,o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],H9(A,S,Y,0),T=F}function H9(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;Y=T,T=T+32|0,H=Y+16|0,At=Y+8|0,Se=Y,Ct=o[S>>2]|0,He=o[S+4>>2]|0,oe=o[A>>2]|0,A=R3()|0,o[At>>2]=Ct,o[At+4>>2]=He,o[H>>2]=o[At>>2],o[H+4>>2]=o[At+4>>2],S=CX(H)|0,o[Se>>2]=Ct,o[Se+4>>2]=He,o[H>>2]=o[Se>>2],o[H+4>>2]=o[Se+4>>2],vf(oe,_,A,S,Fae(H,F)|0,F),T=Y}function R3(){var A=0,_=0;if(s[7688]|0||(mQ(9448),au(32,9448,U|0)|0,_=7688,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9448)|0)){A=9448,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));mQ(9448)}return 9448}function CX(A){return A=A|0,0}function Fae(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,Y=At+24|0,oe=At+16|0,Se=At,He=At+8|0,H=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=H,o[Se+4>>2]=F,Ut=R3()|0,Ct=Ut+24|0,A=ag(_,4)|0,o[He>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=H,o[oe+4>>2]=F,o[Y>>2]=o[oe>>2],o[Y+4>>2]=o[oe+4>>2],CQ(S,Y,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(h$(Ct,Se,He),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function CQ(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function h$(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,He=A+4|0,Y=(((o[He>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,H=mX(A)|0,H>>>0>>0)RI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,_$(Se,cn>>>0>>1>>>0?Ut>>>0>>0?Y:Ut:H,((o[He>>2]|0)-At|0)/12|0,A+8|0),He=Se+8|0,H=o[He>>2]|0,Y=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=Y,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],CQ(H,F,S),o[He>>2]=(o[He>>2]|0)+12,hX(A,Se),Zae(Se),T=Ct;return}}function mX(A){return A=A|0,357913941}function _$(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Bo();else{Y=xu(_*12|0)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_*12|0)}function hX(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(((Y|0)/-12|0)*12|0)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function Zae(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&Va(A)}function mQ(A){A=A|0,BB(A)}function y$(A){A=A|0,AG(A+24|0)}function AG(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),Va(S))}function BB(A){A=A|0;var _=0;_=Ss()|0,js(A,2,6,_,x1()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function x1(){return 1204}function T_(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;F=T,T=T+16|0,Y=F+8|0,H=F,oe=XCe(A)|0,A=o[oe+4>>2]|0,o[H>>2]=o[oe>>2],o[H+4>>2]=A,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],_Z(_,Y,S),T=F}function XCe(A){return A=A|0,(o[(R3()|0)+24>>2]|0)+(A*12|0)|0}function _Z(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0;H=T,T=T+16|0,Y=H,F=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(F=o[(o[A>>2]|0)+F>>2]|0),zp(Y,S),Y=p8(Y,S)|0,nT[F&31](A,Y),T=H}function zp(A,_){A=A|0,_=_|0}function p8(A,_){return A=A|0,_=_|0,DS(_)|0}function DS(A){return A=A|0,A|0}function tn(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0;F=T,T=T+16|0,Y=F+8|0,H=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=wp(_)|0,o[H>>2]=Se,o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],hRe(A,S,Y,0),T=F}function hRe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;Y=T,T=T+32|0,H=Y+16|0,At=Y+8|0,Se=Y,Ct=o[S>>2]|0,He=o[S+4>>2]|0,oe=o[A>>2]|0,A=DE()|0,o[At>>2]=Ct,o[At+4>>2]=He,o[H>>2]=o[At>>2],o[H+4>>2]=o[At+4>>2],S=JCe(H)|0,o[Se>>2]=Ct,o[Se+4>>2]=He,o[H>>2]=o[Se>>2],o[H+4>>2]=o[Se+4>>2],vf(oe,_,A,S,MR(H,F)|0,F),T=Y}function DE(){var A=0,_=0;if(s[7696]|0||(_X(9484),au(33,9484,U|0)|0,_=7696,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9484)|0)){A=9484,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));_X(9484)}return 9484}function JCe(A){return A=A|0,0}function MR(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,Y=At+24|0,oe=At+16|0,Se=At,He=At+8|0,H=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=H,o[Se+4>>2]=F,Ut=DE()|0,Ct=Ut+24|0,A=ag(_,4)|0,o[He>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=H,o[oe+4>>2]=F,o[Y>>2]=o[oe>>2],o[Y+4>>2]=o[oe+4>>2],b$(S,Y,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(Lae(Ct,Se,He),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function b$(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function Lae(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,He=A+4|0,Y=(((o[He>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,H=f8(A)|0,H>>>0>>0)RI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,D3(Se,cn>>>0>>1>>>0?Ut>>>0>>0?Y:Ut:H,((o[He>>2]|0)-At|0)/12|0,A+8|0),He=Se+8|0,H=o[He>>2]|0,Y=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=Y,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],b$(H,F,S),o[He>>2]=(o[He>>2]|0)+12,yZ(A,Se),QR(Se),T=Ct;return}}function f8(A){return A=A|0,357913941}function D3(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Bo();else{Y=xu(_*12|0)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_*12|0)}function yZ(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(((Y|0)/-12|0)*12|0)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function QR(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&Va(A)}function _X(A){A=A|0,eb(A)}function P0(A){A=A|0,O0(A+24|0)}function O0(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),Va(S))}function eb(A){A=A|0;var _=0;_=Ss()|0,js(A,2,1,_,Vae()|0,2),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function Vae(){return 1212}function E$(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0;Y=T,T=T+16|0,H=Y+8|0,oe=Y,Se=yX(A)|0,A=o[Se+4>>2]|0,o[oe>>2]=o[Se>>2],o[oe+4>>2]=A,o[H>>2]=o[oe>>2],o[H+4>>2]=o[oe+4>>2],B2(_,H,S,F),T=Y}function yX(A){return A=A|0,(o[(DE()|0)+24>>2]|0)+(A*12|0)|0}function B2(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0;Se=T,T=T+16|0,H=Se+1|0,oe=Se,Y=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(Y=o[(o[A>>2]|0)+Y>>2]|0),zp(H,S),H=p8(H,S)|0,Sv(oe,F),oe=IZ(oe,F)|0,$p[Y&15](A,H,oe),T=Se}function Tv(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0;F=T,T=T+16|0,Y=F+8|0,H=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=wp(_)|0,o[H>>2]=Se,o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],_Re(A,S,Y,1),T=F}function _Re(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;Y=T,T=T+32|0,H=Y+16|0,At=Y+8|0,Se=Y,Ct=o[S>>2]|0,He=o[S+4>>2]|0,oe=o[A>>2]|0,A=I8()|0,o[At>>2]=Ct,o[At+4>>2]=He,o[H>>2]=o[At>>2],o[H+4>>2]=o[At+4>>2],S=B$(H)|0,o[Se>>2]=Ct,o[Se+4>>2]=He,o[H>>2]=o[Se>>2],o[H+4>>2]=o[Se+4>>2],vf(oe,_,A,S,DC(H,F)|0,F),T=Y}function I8(){var A=0,_=0;if(s[7704]|0||(k3(9520),au(34,9520,U|0)|0,_=7704,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9520)|0)){A=9520,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));k3(9520)}return 9520}function B$(A){return A=A|0,0}function DC(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,Y=At+24|0,oe=At+16|0,Se=At,He=At+8|0,H=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=H,o[Se+4>>2]=F,Ut=I8()|0,Ct=Ut+24|0,A=ag(_,4)|0,o[He>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=H,o[oe+4>>2]=F,o[Y>>2]=o[oe>>2],o[Y+4>>2]=o[oe+4>>2],bX(S,Y,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(EX(Ct,Se,He),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function bX(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function EX(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,He=A+4|0,Y=(((o[He>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,H=Ic(A)|0,H>>>0>>0)RI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,v$(Se,cn>>>0>>1>>>0?Ut>>>0>>0?Y:Ut:H,((o[He>>2]|0)-At|0)/12|0,A+8|0),He=Se+8|0,H=o[He>>2]|0,Y=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=Y,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],bX(H,F,S),o[He>>2]=(o[He>>2]|0)+12,zw(A,Se),x3(Se),T=Ct;return}}function Ic(A){return A=A|0,357913941}function v$(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Bo();else{Y=xu(_*12|0)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_*12|0)}function zw(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(((Y|0)/-12|0)*12|0)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function x3(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&Va(A)}function k3(A){A=A|0,Wae(A)}function BX(A){A=A|0,C8(A+24|0)}function C8(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),Va(S))}function Wae(A){A=A|0;var _=0;_=Ss()|0,js(A,2,1,_,Jm()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function Jm(){return 1224}function vX(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0;return Y=T,T=T+16|0,H=Y+8|0,oe=Y,Se=xS(A)|0,A=o[Se+4>>2]|0,o[oe>>2]=o[Se>>2],o[oe+4>>2]=A,o[H>>2]=o[oe>>2],o[H+4>>2]=o[oe+4>>2],F=+pf(_,H,S),T=Y,+F}function xS(A){return A=A|0,(o[(I8()|0)+24>>2]|0)+(A*12|0)|0}function pf(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return H=T,T=T+16|0,Y=H,F=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(F=o[(o[A>>2]|0)+F>>2]|0),Sf(Y,S),Y=Jw(Y,S)|0,oe=+fp(+GC[F&7](A,Y)),T=H,+oe}function X9(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0;F=T,T=T+16|0,Y=F+8|0,H=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=wp(_)|0,o[H>>2]=Se,o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],Dh(A,S,Y,1),T=F}function Dh(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;Y=T,T=T+32|0,H=Y+16|0,At=Y+8|0,Se=Y,Ct=o[S>>2]|0,He=o[S+4>>2]|0,oe=o[A>>2]|0,A=Nv()|0,o[At>>2]=Ct,o[At+4>>2]=He,o[H>>2]=o[At>>2],o[H+4>>2]=o[At+4>>2],S=hy(H)|0,o[Se>>2]=Ct,o[Se+4>>2]=He,o[H>>2]=o[Se>>2],o[H+4>>2]=o[Se+4>>2],vf(oe,_,A,S,XC(H,F)|0,F),T=Y}function Nv(){var A=0,_=0;if(s[7712]|0||(XA(9556),au(35,9556,U|0)|0,_=7712,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9556)|0)){A=9556,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));XA(9556)}return 9556}function hy(A){return A=A|0,0}function XC(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,Y=At+24|0,oe=At+16|0,Se=At,He=At+8|0,H=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=H,o[Se+4>>2]=F,Ut=Nv()|0,Ct=Ut+24|0,A=ag(_,4)|0,o[He>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=H,o[oe+4>>2]=F,o[Y>>2]=o[oe>>2],o[Y+4>>2]=o[oe+4>>2],qw(S,Y,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(dG(Ct,Se,He),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function qw(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function dG(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,He=A+4|0,Y=(((o[He>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,H=hQ(A)|0,H>>>0>>0)RI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,m8(Se,cn>>>0>>1>>>0?Ut>>>0>>0?Y:Ut:H,((o[He>>2]|0)-At|0)/12|0,A+8|0),He=Se+8|0,H=o[He>>2]|0,Y=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=Y,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],qw(H,F,S),o[He>>2]=(o[He>>2]|0)+12,UCe(A,Se),Pae(Se),T=Ct;return}}function hQ(A){return A=A|0,357913941}function m8(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Bo();else{Y=xu(_*12|0)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_*12|0)}function UCe(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(((Y|0)/-12|0)*12|0)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function Pae(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&Va(A)}function XA(A){A=A|0,Rv(A)}function J9(A){A=A|0,S$(A+24|0)}function S$(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),Va(S))}function Rv(A){A=A|0;var _=0;_=Ss()|0,js(A,2,5,_,KCe()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function KCe(){return 1232}function Oae(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;return F=T,T=T+16|0,Y=F+8|0,H=F,oe=w$(A)|0,A=o[oe+4>>2]|0,o[H>>2]=o[oe>>2],o[H+4>>2]=A,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],S=+vx(_,Y),T=F,+S}function w$(A){return A=A|0,(o[(Nv()|0)+24>>2]|0)+(A*12|0)|0}function vx(A,_){A=A|0,_=_|0;var S=0;return S=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(S=o[(o[A>>2]|0)+S>>2]|0),+ +fp(+Lhe[S&15](A))}function _Q(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0;F=T,T=T+16|0,Y=F+8|0,H=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=wp(_)|0,o[H>>2]=Se,o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],T$(A,S,Y,1),T=F}function T$(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;Y=T,T=T+32|0,H=Y+16|0,At=Y+8|0,Se=Y,Ct=o[S>>2]|0,He=o[S+4>>2]|0,oe=o[A>>2]|0,A=zd()|0,o[At>>2]=Ct,o[At+4>>2]=He,o[H>>2]=o[At>>2],o[H+4>>2]=o[At+4>>2],S=Mae(H)|0,o[Se>>2]=Ct,o[Se+4>>2]=He,o[H>>2]=o[Se>>2],o[H+4>>2]=o[Se+4>>2],vf(oe,_,A,S,Du(H,F)|0,F),T=Y}function zd(){var A=0,_=0;if(s[7720]|0||(N$(9592),au(36,9592,U|0)|0,_=7720,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9592)|0)){A=9592,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));N$(9592)}return 9592}function Mae(A){return A=A|0,0}function Du(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,Y=At+24|0,oe=At+16|0,Se=At,He=At+8|0,H=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=H,o[Se+4>>2]=F,Ut=zd()|0,Ct=Ut+24|0,A=ag(_,4)|0,o[He>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=H,o[oe+4>>2]=F,o[Y>>2]=o[oe>>2],o[Y+4>>2]=o[oe+4>>2],vB(S,Y,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(G3(Ct,Se,He),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function vB(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function G3(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,He=A+4|0,Y=(((o[He>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,H=h8(A)|0,H>>>0>>0)RI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,SB(Se,cn>>>0>>1>>>0?Ut>>>0>>0?Y:Ut:H,((o[He>>2]|0)-At|0)/12|0,A+8|0),He=Se+8|0,H=o[He>>2]|0,Y=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=Y,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],vB(H,F,S),o[He>>2]=(o[He>>2]|0)+12,wB(A,Se),Qae(Se),T=Ct;return}}function h8(A){return A=A|0,357913941}function SB(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Bo();else{Y=xu(_*12|0)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_*12|0)}function wB(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(((Y|0)/-12|0)*12|0)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function Qae(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&Va(A)}function N$(A){A=A|0,JC(A)}function F3(A){A=A|0,R$(A+24|0)}function R$(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),Va(S))}function JC(A){A=A|0;var _=0;_=Ss()|0,js(A,2,7,_,$w()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function $w(){return 1276}function _8(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0;return S=T,T=T+16|0,F=S+8|0,Y=S,H=Z3(A)|0,A=o[H+4>>2]|0,o[Y>>2]=o[H>>2],o[Y+4>>2]=A,o[F>>2]=o[Y>>2],o[F+4>>2]=o[Y+4>>2],_=SX(_,F)|0,T=S,_|0}function Z3(A){return A=A|0,(o[(zd()|0)+24>>2]|0)+(A*12|0)|0}function SX(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0;return Y=T,T=T+16|0,F=Y,S=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(S=o[(o[A>>2]|0)+S>>2]|0),nT[S&31](F,A),F=y8(F)|0,T=Y,F|0}function y8(A){A=A|0;var _=0,S=0,F=0,Y=0;return Y=T,T=T+32|0,_=Y+12|0,S=Y,F=Uu(D$()|0)|0,F?(NE(_,F),Cy(S,_),wX(A,S),A=y2(_)|0):A=jCe(A)|0,T=Y,A|0}function D$(){var A=0;return s[7736]|0||(uN(9640),au(25,9640,U|0)|0,A=7736,o[A>>2]=1,o[A+4>>2]=0),9640}function wX(A,_){A=A|0,_=_|0,HR(_,A,A+8|0)|0}function jCe(A){A=A|0;var _=0,S=0,F=0,Y=0,H=0,oe=0,Se=0;return S=T,T=T+16|0,Y=S+4|0,oe=S,F=CN(8)|0,_=F,Se=xu(16)|0,o[Se>>2]=o[A>>2],o[Se+4>>2]=o[A+4>>2],o[Se+8>>2]=o[A+8>>2],o[Se+12>>2]=o[A+12>>2],H=_+4|0,o[H>>2]=Se,A=xu(8)|0,H=o[H>>2]|0,o[oe>>2]=0,o[Y>>2]=o[oe>>2],yQ(A,H,Y),o[F>>2]=A,T=S,_|0}function yQ(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,S=xu(16)|0,o[S+4>>2]=0,o[S+8>>2]=0,o[S>>2]=1244,o[S+12>>2]=_,o[A+4>>2]=S}function YR(A){A=A|0,o4(A),Va(A)}function Yae(A){A=A|0,A=o[A+12>>2]|0,A|0&&Va(A)}function x$(A){A=A|0,Va(A)}function HR(A,_,S){return A=A|0,_=_|0,S=S|0,_=yRe(o[A>>2]|0,_,S)|0,S=A+4|0,o[(o[S>>2]|0)+8>>2]=_,o[(o[S>>2]|0)+8>>2]|0}function yRe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0;return F=T,T=T+16|0,Y=F,YS(Y),A=AA(A)|0,S=ls(A,o[_>>2]|0,+y[S>>3])|0,D2(Y),T=F,S|0}function ls(A,_,S){A=A|0,_=_|0,S=+S;var F=0;return F=Iy(b8()|0)|0,_=wS(_)|0,Ga(0,F|0,A|0,_|0,+ +wh(S))|0}function b8(){var A=0;return s[7728]|0||(bQ(9628),A=7728,o[A>>2]=1,o[A+4>>2]=0),9628}function bQ(A){A=A|0,xm(A,Hae()|0,2)}function Hae(){return 1264}function uN(A){A=A|0,Kc(A)}function Xae(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0;F=T,T=T+16|0,Y=F+8|0,H=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=wp(_)|0,o[H>>2]=Se,o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],TX(A,S,Y,1),T=F}function TX(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;Y=T,T=T+32|0,H=Y+16|0,At=Y+8|0,Se=Y,Ct=o[S>>2]|0,He=o[S+4>>2]|0,oe=o[A>>2]|0,A=EQ()|0,o[At>>2]=Ct,o[At+4>>2]=He,o[H>>2]=o[At>>2],o[H+4>>2]=o[At+4>>2],S=wf(H)|0,o[Se>>2]=Ct,o[Se+4>>2]=He,o[H>>2]=o[Se>>2],o[H+4>>2]=o[Se+4>>2],vf(oe,_,A,S,xE(H,F)|0,F),T=Y}function EQ(){var A=0,_=0;if(s[7744]|0||(E8(9684),au(37,9684,U|0)|0,_=7744,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9684)|0)){A=9684,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));E8(9684)}return 9684}function wf(A){return A=A|0,0}function xE(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,Y=At+24|0,oe=At+16|0,Se=At,He=At+8|0,H=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=H,o[Se+4>>2]=F,Ut=EQ()|0,Ct=Ut+24|0,A=ag(_,4)|0,o[He>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=H,o[oe+4>>2]=F,o[Y>>2]=o[oe>>2],o[Y+4>>2]=o[oe+4>>2],k$(S,Y,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(NX(Ct,Se,He),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function k$(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function NX(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,He=A+4|0,Y=(((o[He>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,H=zCe(A)|0,H>>>0>>0)RI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,qCe(Se,cn>>>0>>1>>>0?Ut>>>0>>0?Y:Ut:H,((o[He>>2]|0)-At|0)/12|0,A+8|0),He=Se+8|0,H=o[He>>2]|0,Y=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=Y,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],k$(H,F,S),o[He>>2]=(o[He>>2]|0)+12,$Ce(A,Se),kS(Se),T=Ct;return}}function zCe(A){return A=A|0,357913941}function qCe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Bo();else{Y=xu(_*12|0)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_*12|0)}function $Ce(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(((Y|0)/-12|0)*12|0)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function kS(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&Va(A)}function E8(A){A=A|0,G$(A)}function eme(A){A=A|0,bZ(A+24|0)}function bZ(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),Va(S))}function G$(A){A=A|0;var _=0;_=Ss()|0,js(A,2,5,_,B8()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function B8(){return 1280}function Jae(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return F=T,T=T+16|0,Y=F+8|0,H=F,oe=Sx(A)|0,A=o[oe+4>>2]|0,o[H>>2]=o[oe>>2],o[H+4>>2]=A,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],S=F$(_,Y,S)|0,T=F,S|0}function Sx(A){return A=A|0,(o[(EQ()|0)+24>>2]|0)+(A*12|0)|0}function F$(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return oe=T,T=T+32|0,Y=oe,H=oe+16|0,F=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(F=o[(o[A>>2]|0)+F>>2]|0),Sf(H,S),H=Jw(H,S)|0,$p[F&15](Y,A,H),H=y8(Y)|0,T=oe,H|0}function pG(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0;F=T,T=T+16|0,Y=F+8|0,H=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=wp(_)|0,o[H>>2]=Se,o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],bRe(A,S,Y,1),T=F}function bRe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;Y=T,T=T+32|0,H=Y+16|0,At=Y+8|0,Se=Y,Ct=o[S>>2]|0,He=o[S+4>>2]|0,oe=o[A>>2]|0,A=BQ()|0,o[At>>2]=Ct,o[At+4>>2]=He,o[H>>2]=o[At>>2],o[H+4>>2]=o[At+4>>2],S=vQ(H)|0,o[Se>>2]=Ct,o[Se+4>>2]=He,o[H>>2]=o[Se>>2],o[H+4>>2]=o[Se+4>>2],vf(oe,_,A,S,Tf(H,F)|0,F),T=Y}function BQ(){var A=0,_=0;if(s[7752]|0||(Z$(9720),au(38,9720,U|0)|0,_=7752,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9720)|0)){A=9720,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));Z$(9720)}return 9720}function vQ(A){return A=A|0,0}function Tf(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,Y=At+24|0,oe=At+16|0,Se=At,He=At+8|0,H=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=H,o[Se+4>>2]=F,Ut=BQ()|0,Ct=Ut+24|0,A=ag(_,4)|0,o[He>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=H,o[oe+4>>2]=F,o[Y>>2]=o[oe>>2],o[Y+4>>2]=o[oe+4>>2],tme(S,Y,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(L3(Ct,Se,He),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function tme(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function L3(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,He=A+4|0,Y=(((o[He>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,H=Sg(A)|0,H>>>0>>0)RI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,kE(Se,cn>>>0>>1>>>0?Ut>>>0>>0?Y:Ut:H,((o[He>>2]|0)-At|0)/12|0,A+8|0),He=Se+8|0,H=o[He>>2]|0,Y=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=Y,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],tme(H,F,S),o[He>>2]=(o[He>>2]|0)+12,v8(A,Se),Uae(Se),T=Ct;return}}function Sg(A){return A=A|0,357913941}function kE(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Bo();else{Y=xu(_*12|0)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_*12|0)}function v8(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(((Y|0)/-12|0)*12|0)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function Uae(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&Va(A)}function Z$(A){A=A|0,Kae(A)}function ERe(A){A=A|0,S8(A+24|0)}function S8(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),Va(S))}function Kae(A){A=A|0;var _=0;_=Ss()|0,js(A,2,8,_,L$()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function L$(){return 1288}function V$(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0;return S=T,T=T+16|0,F=S+8|0,Y=S,H=Yf(A)|0,A=o[H+4>>2]|0,o[Y>>2]=o[H>>2],o[Y+4>>2]=A,o[F>>2]=o[Y>>2],o[F+4>>2]=o[Y+4>>2],_=SQ(_,F)|0,T=S,_|0}function Yf(A){return A=A|0,(o[(BQ()|0)+24>>2]|0)+(A*12|0)|0}function SQ(A,_){A=A|0,_=_|0;var S=0;return S=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(S=o[(o[A>>2]|0)+S>>2]|0),C2(lY[S&31](A)|0)|0}function W$(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0;F=T,T=T+16|0,Y=F+8|0,H=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=wp(_)|0,o[H>>2]=Se,o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],jae(A,S,Y,0),T=F}function jae(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;Y=T,T=T+32|0,H=Y+16|0,At=Y+8|0,Se=Y,Ct=o[S>>2]|0,He=o[S+4>>2]|0,oe=o[A>>2]|0,A=V3()|0,o[At>>2]=Ct,o[At+4>>2]=He,o[H>>2]=o[At>>2],o[H+4>>2]=o[At+4>>2],S=BRe(H)|0,o[Se>>2]=Ct,o[Se+4>>2]=He,o[H>>2]=o[Se>>2],o[H+4>>2]=o[Se+4>>2],vf(oe,_,A,S,w8(H,F)|0,F),T=Y}function V3(){var A=0,_=0;if(s[7760]|0||(RX(9756),au(39,9756,U|0)|0,_=7760,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9756)|0)){A=9756,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));RX(9756)}return 9756}function BRe(A){return A=A|0,0}function w8(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,Y=At+24|0,oe=At+16|0,Se=At,He=At+8|0,H=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=H,o[Se+4>>2]=F,Ut=V3()|0,Ct=Ut+24|0,A=ag(_,4)|0,o[He>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=H,o[oe+4>>2]=F,o[Y>>2]=o[oe>>2],o[Y+4>>2]=o[oe+4>>2],v2(S,Y,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(XR(Ct,Se,He),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function v2(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function XR(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,He=A+4|0,Y=(((o[He>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,H=P$(A)|0,H>>>0>>0)RI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,O$(Se,cn>>>0>>1>>>0?Ut>>>0>>0?Y:Ut:H,((o[He>>2]|0)-At|0)/12|0,A+8|0),He=Se+8|0,H=o[He>>2]|0,Y=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=Y,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],v2(H,F,S),o[He>>2]=(o[He>>2]|0)+12,vRe(A,Se),U9(Se),T=Ct;return}}function P$(A){return A=A|0,357913941}function O$(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Bo();else{Y=xu(_*12|0)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_*12|0)}function vRe(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(((Y|0)/-12|0)*12|0)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function U9(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&Va(A)}function RX(A){A=A|0,Y$(A)}function M$(A){A=A|0,Q$(A+24|0)}function Q$(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),Va(S))}function Y$(A){A=A|0;var _=0;_=Ss()|0,js(A,2,8,_,DX()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function DX(){return 1292}function fG(A,_,S){A=A|0,_=_|0,S=+S;var F=0,Y=0,H=0,oe=0;F=T,T=T+16|0,Y=F+8|0,H=F,oe=zae(A)|0,A=o[oe+4>>2]|0,o[H>>2]=o[oe>>2],o[H+4>>2]=A,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],qae(_,Y,S),T=F}function zae(A){return A=A|0,(o[(V3()|0)+24>>2]|0)+(A*12|0)|0}function qae(A,_,S){A=A|0,_=_|0,S=+S;var F=0,Y=0,H=0;H=T,T=T+16|0,Y=H,F=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(F=o[(o[A>>2]|0)+F>>2]|0),vv(Y,S),S=+cN(Y,S),Fhe[F&31](A,S),T=H}function T8(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0;F=T,T=T+16|0,Y=F+8|0,H=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=wp(_)|0,o[H>>2]=Se,o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],$ae(A,S,Y,0),T=F}function $ae(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;Y=T,T=T+32|0,H=Y+16|0,At=Y+8|0,Se=Y,Ct=o[S>>2]|0,He=o[S+4>>2]|0,oe=o[A>>2]|0,A=W3()|0,o[At>>2]=Ct,o[At+4>>2]=He,o[H>>2]=o[At>>2],o[H+4>>2]=o[At+4>>2],S=N8(H)|0,o[Se>>2]=Ct,o[Se+4>>2]=He,o[H>>2]=o[Se>>2],o[H+4>>2]=o[Se+4>>2],vf(oe,_,A,S,S2(H,F)|0,F),T=Y}function W3(){var A=0,_=0;if(s[7768]|0||(t0(9792),au(40,9792,U|0)|0,_=7768,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9792)|0)){A=9792,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));t0(9792)}return 9792}function N8(A){return A=A|0,0}function S2(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,Y=At+24|0,oe=At+16|0,Se=At,He=At+8|0,H=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=H,o[Se+4>>2]=F,Ut=W3()|0,Ct=Ut+24|0,A=ag(_,4)|0,o[He>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=H,o[oe+4>>2]=F,o[Y>>2]=o[oe>>2],o[Y+4>>2]=o[oe+4>>2],H$(S,Y,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(xd(Ct,Se,He),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function H$(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function xd(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,He=A+4|0,Y=(((o[He>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,H=ece(A)|0,H>>>0>>0)RI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,xX(Se,cn>>>0>>1>>>0?Ut>>>0>>0?Y:Ut:H,((o[He>>2]|0)-At|0)/12|0,A+8|0),He=Se+8|0,H=o[He>>2]|0,Y=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=Y,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],H$(H,F,S),o[He>>2]=(o[He>>2]|0)+12,wQ(A,Se),K9(Se),T=Ct;return}}function ece(A){return A=A|0,357913941}function xX(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Bo();else{Y=xu(_*12|0)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_*12|0)}function wQ(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(((Y|0)/-12|0)*12|0)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function K9(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&Va(A)}function t0(A){A=A|0,Lb(A)}function Us(A){A=A|0,P3(A+24|0)}function P3(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),Va(S))}function Lb(A){A=A|0;var _=0;_=Ss()|0,js(A,2,1,_,GS()|0,2),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function GS(){return 1300}function kX(A,_,S,F){A=A|0,_=_|0,S=S|0,F=+F;var Y=0,H=0,oe=0,Se=0;Y=T,T=T+16|0,H=Y+8|0,oe=Y,Se=tce(A)|0,A=o[Se+4>>2]|0,o[oe>>2]=o[Se>>2],o[oe+4>>2]=A,o[H>>2]=o[oe>>2],o[H+4>>2]=o[oe+4>>2],R8(_,H,S,F),T=Y}function tce(A){return A=A|0,(o[(W3()|0)+24>>2]|0)+(A*12|0)|0}function R8(A,_,S,F){A=A|0,_=_|0,S=S|0,F=+F;var Y=0,H=0,oe=0,Se=0;Se=T,T=T+16|0,H=Se+1|0,oe=Se,Y=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(Y=o[(o[A>>2]|0)+Y>>2]|0),Sf(H,S),H=Jw(H,S)|0,vv(oe,F),F=+cN(oe,F),Pb[Y&15](A,H,F),T=Se}function ne(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0;F=T,T=T+16|0,Y=F+8|0,H=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=wp(_)|0,o[H>>2]=Se,o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],Ie(A,S,Y,0),T=F}function Ie(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;Y=T,T=T+32|0,H=Y+16|0,At=Y+8|0,Se=Y,Ct=o[S>>2]|0,He=o[S+4>>2]|0,oe=o[A>>2]|0,A=ze()|0,o[At>>2]=Ct,o[At+4>>2]=He,o[H>>2]=o[At>>2],o[H+4>>2]=o[At+4>>2],S=Mt(H)|0,o[Se>>2]=Ct,o[Se+4>>2]=He,o[H>>2]=o[Se>>2],o[H+4>>2]=o[Se+4>>2],vf(oe,_,A,S,Rr(H,F)|0,F),T=Y}function ze(){var A=0,_=0;if(s[7776]|0||(Ac(9828),au(41,9828,U|0)|0,_=7776,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9828)|0)){A=9828,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));Ac(9828)}return 9828}function Mt(A){return A=A|0,0}function Rr(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,Y=At+24|0,oe=At+16|0,Se=At,He=At+8|0,H=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=H,o[Se+4>>2]=F,Ut=ze()|0,Ct=Ut+24|0,A=ag(_,4)|0,o[He>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=H,o[oe+4>>2]=F,o[Y>>2]=o[oe>>2],o[Y+4>>2]=o[oe+4>>2],bn(S,Y,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(Ci(Ct,Se,He),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function bn(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function Ci(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,He=A+4|0,Y=(((o[He>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,H=Qi(A)|0,H>>>0>>0)RI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,bs(Se,cn>>>0>>1>>>0?Ut>>>0>>0?Y:Ut:H,((o[He>>2]|0)-At|0)/12|0,A+8|0),He=Se+8|0,H=o[He>>2]|0,Y=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=Y,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],bn(H,F,S),o[He>>2]=(o[He>>2]|0)+12,ia(A,Se),Ia(Se),T=Ct;return}}function Qi(A){return A=A|0,357913941}function bs(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Bo();else{Y=xu(_*12|0)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_*12|0)}function ia(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(((Y|0)/-12|0)*12|0)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function Ia(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&Va(A)}function Ac(A){A=A|0,pd(A)}function fu(A){A=A|0,Mg(A+24|0)}function Mg(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),Va(S))}function pd(A){A=A|0;var _=0;_=Ss()|0,js(A,2,7,_,Qp()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function Qp(){return 1312}function Pd(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;F=T,T=T+16|0,Y=F+8|0,H=F,oe=oI(A)|0,A=o[oe+4>>2]|0,o[H>>2]=o[oe>>2],o[H+4>>2]=A,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],Nf(_,Y,S),T=F}function oI(A){return A=A|0,(o[(ze()|0)+24>>2]|0)+(A*12|0)|0}function Nf(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0;H=T,T=T+16|0,Y=H,F=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(F=o[(o[A>>2]|0)+F>>2]|0),Sf(Y,S),Y=Jw(Y,S)|0,nT[F&31](A,Y),T=H}function pC(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0;F=T,T=T+16|0,Y=F+8|0,H=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=wp(_)|0,o[H>>2]=Se,o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],Vb(A,S,Y,0),T=F}function Vb(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;Y=T,T=T+32|0,H=Y+16|0,At=Y+8|0,Se=Y,Ct=o[S>>2]|0,He=o[S+4>>2]|0,oe=o[A>>2]|0,A=r_()|0,o[At>>2]=Ct,o[At+4>>2]=He,o[H>>2]=o[At>>2],o[H+4>>2]=o[At+4>>2],S=QI(H)|0,o[Se>>2]=Ct,o[Se+4>>2]=He,o[H>>2]=o[Se>>2],o[H+4>>2]=o[Se+4>>2],vf(oe,_,A,S,ZS(H,F)|0,F),T=Y}function r_(){var A=0,_=0;if(s[7784]|0||(LUe(9864),au(42,9864,U|0)|0,_=7784,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9864)|0)){A=9864,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));LUe(9864)}return 9864}function QI(A){return A=A|0,0}function ZS(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,Y=At+24|0,oe=At+16|0,Se=At,He=At+8|0,H=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=H,o[Se+4>>2]=F,Ut=r_()|0,Ct=Ut+24|0,A=ag(_,4)|0,o[He>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=H,o[oe+4>>2]=F,o[Y>>2]=o[oe>>2],o[Y+4>>2]=o[oe+4>>2],gN(S,Y,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(rme(Ct,Se,He),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function gN(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function rme(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,He=A+4|0,Y=(((o[He>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,H=rce(A)|0,H>>>0>>0)RI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,nme(Se,cn>>>0>>1>>>0?Ut>>>0>>0?Y:Ut:H,((o[He>>2]|0)-At|0)/12|0,A+8|0),He=Se+8|0,H=o[He>>2]|0,Y=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=Y,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],gN(H,F,S),o[He>>2]=(o[He>>2]|0)+12,ime(A,Se),SRe(Se),T=Ct;return}}function rce(A){return A=A|0,357913941}function nme(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Bo();else{Y=xu(_*12|0)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_*12|0)}function ime(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(((Y|0)/-12|0)*12|0)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function SRe(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&Va(A)}function LUe(A){A=A|0,HTt(A)}function YTt(A){A=A|0,wRe(A+24|0)}function wRe(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),Va(S))}function HTt(A){A=A|0;var _=0;_=Ss()|0,js(A,2,8,_,XTt()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function XTt(){return 1320}function LS(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;F=T,T=T+16|0,Y=F+8|0,H=F,oe=VUe(A)|0,A=o[oe+4>>2]|0,o[H>>2]=o[oe>>2],o[H+4>>2]=A,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],WUe(_,Y,S),T=F}function VUe(A){return A=A|0,(o[(r_()|0)+24>>2]|0)+(A*12|0)|0}function WUe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0;H=T,T=T+16|0,Y=H,F=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(F=o[(o[A>>2]|0)+F>>2]|0),wx(Y,S),Y=TRe(Y,S)|0,nT[F&31](A,Y),T=H}function wx(A,_){A=A|0,_=_|0}function TRe(A,_){return A=A|0,_=_|0,sme(_)|0}function sme(A){return A=A|0,A|0}function NRe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0;F=T,T=T+16|0,Y=F+8|0,H=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=wp(_)|0,o[H>>2]=Se,o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],TQ(A,S,Y,0),T=F}function TQ(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;Y=T,T=T+32|0,H=Y+16|0,At=Y+8|0,Se=Y,Ct=o[S>>2]|0,He=o[S+4>>2]|0,oe=o[A>>2]|0,A=nce()|0,o[At>>2]=Ct,o[At+4>>2]=He,o[H>>2]=o[At>>2],o[H+4>>2]=o[At+4>>2],S=D8(H)|0,o[Se>>2]=Ct,o[Se+4>>2]=He,o[H>>2]=o[Se>>2],o[H+4>>2]=o[Se+4>>2],vf(oe,_,A,S,RRe(H,F)|0,F),T=Y}function nce(){var A=0,_=0;if(s[7792]|0||(J$(9900),au(43,9900,U|0)|0,_=7792,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9900)|0)){A=9900,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));J$(9900)}return 9900}function D8(A){return A=A|0,0}function RRe(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,Y=At+24|0,oe=At+16|0,Se=At,He=At+8|0,H=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=H,o[Se+4>>2]=F,Ut=nce()|0,Ct=Ut+24|0,A=ag(_,4)|0,o[He>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=H,o[oe+4>>2]=F,o[Y>>2]=o[oe>>2],o[Y+4>>2]=o[oe+4>>2],X$(S,Y,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(DRe(Ct,Se,He),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function X$(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function DRe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,He=A+4|0,Y=(((o[He>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,H=xRe(A)|0,H>>>0>>0)RI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,ome(Se,cn>>>0>>1>>>0?Ut>>>0>>0?Y:Ut:H,((o[He>>2]|0)-At|0)/12|0,A+8|0),He=Se+8|0,H=o[He>>2]|0,Y=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=Y,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],X$(H,F,S),o[He>>2]=(o[He>>2]|0)+12,j9(A,Se),TB(Se),T=Ct;return}}function xRe(A){return A=A|0,357913941}function ome(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Bo();else{Y=xu(_*12|0)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_*12|0)}function j9(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(((Y|0)/-12|0)*12|0)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function TB(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&Va(A)}function J$(A){A=A|0,GX(A)}function kRe(A){A=A|0,GRe(A+24|0)}function GRe(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),Va(S))}function GX(A){A=A|0;var _=0;_=Ss()|0,js(A,2,22,_,FRe()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function FRe(){return 1344}function x8(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0;S=T,T=T+16|0,F=S+8|0,Y=S,H=ice(A)|0,A=o[H+4>>2]|0,o[Y>>2]=o[H>>2],o[Y+4>>2]=A,o[F>>2]=o[Y>>2],o[F+4>>2]=o[Y+4>>2],U$(_,F),T=S}function ice(A){return A=A|0,(o[(nce()|0)+24>>2]|0)+(A*12|0)|0}function U$(A,_){A=A|0,_=_|0;var S=0;S=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(S=o[(o[A>>2]|0)+S>>2]|0),IV[S&127](A)}function Wb(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0;H=o[A>>2]|0,Y=sce()|0,A=Um(S)|0,vf(H,_,Y,A,ZRe(S,F)|0,F)}function sce(){var A=0,_=0;if(s[7800]|0||(k8(9936),au(44,9936,U|0)|0,_=7800,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9936)|0)){A=9936,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));k8(9936)}return 9936}function Um(A){return A=A|0,A|0}function ZRe(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0;return Se=T,T=T+16|0,Y=Se,H=Se+4|0,o[Y>>2]=A,He=sce()|0,oe=He+24|0,_=ag(_,4)|0,o[H>>2]=_,S=He+28|0,F=o[S>>2]|0,F>>>0<(o[He+32>>2]|0)>>>0?(K$(F,A,_),_=(o[S>>2]|0)+8|0,o[S>>2]=_):(oce(oe,Y,H),_=o[S>>2]|0),T=Se,(_-(o[oe>>2]|0)>>3)+-1|0}function K$(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,o[A+4>>2]=S}function oce(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;if(Se=T,T=T+32|0,Y=Se,H=A+4|0,oe=((o[H>>2]|0)-(o[A>>2]|0)>>3)+1|0,F=r0(A)|0,F>>>0>>0)RI(A);else{He=o[A>>2]|0,At=(o[A+8>>2]|0)-He|0,Ct=At>>2,LRe(Y,At>>3>>>0>>1>>>0?Ct>>>0>>0?oe:Ct:F,(o[H>>2]|0)-He>>3,A+8|0),oe=Y+8|0,K$(o[oe>>2]|0,o[_>>2]|0,o[S>>2]|0),o[oe>>2]=(o[oe>>2]|0)+8,ace(A,Y),VRe(Y),T=Se;return}}function r0(A){return A=A|0,536870911}function LRe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>536870911)Bo();else{Y=xu(_<<3)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S<<3)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_<<3)}function ace(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(0-(Y>>3)<<3)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function VRe(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-8-_|0)>>>3)<<3)),A=o[A>>2]|0,A|0&&Va(A)}function k8(A){A=A|0,M0(A)}function z9(A){A=A|0,PUe(A+24|0)}function PUe(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),Va(S))}function M0(A){A=A|0;var _=0;_=Ss()|0,js(A,1,23,_,x1()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function j$(A,_){A=A|0,_=_|0,WRe(o[(cce(A)|0)>>2]|0,_)}function cce(A){return A=A|0,(o[(sce()|0)+24>>2]|0)+(A<<3)|0}function WRe(A,_){A=A|0,_=_|0;var S=0,F=0;S=T,T=T+16|0,F=S,zp(F,_),_=p8(F,_)|0,IV[A&127](_),T=S}function z$(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0;H=o[A>>2]|0,Y=G8()|0,A=q$(S)|0,vf(H,_,Y,A,FX(S,F)|0,F)}function G8(){var A=0,_=0;if(s[7808]|0||(NB(9972),au(45,9972,U|0)|0,_=7808,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9972)|0)){A=9972,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));NB(9972)}return 9972}function q$(A){return A=A|0,A|0}function FX(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0;return Se=T,T=T+16|0,Y=Se,H=Se+4|0,o[Y>>2]=A,He=G8()|0,oe=He+24|0,_=ag(_,4)|0,o[H>>2]=_,S=He+28|0,F=o[S>>2]|0,F>>>0<(o[He+32>>2]|0)>>>0?(F8(F,A,_),_=(o[S>>2]|0)+8|0,o[S>>2]=_):(Z8(oe,Y,H),_=o[S>>2]|0),T=Se,(_-(o[oe>>2]|0)>>3)+-1|0}function F8(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,o[A+4>>2]=S}function Z8(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;if(Se=T,T=T+32|0,Y=Se,H=A+4|0,oe=((o[H>>2]|0)-(o[A>>2]|0)>>3)+1|0,F=Tx(A)|0,F>>>0>>0)RI(A);else{He=o[A>>2]|0,At=(o[A+8>>2]|0)-He|0,Ct=At>>2,ame(Y,At>>3>>>0>>1>>>0?Ct>>>0>>0?oe:Ct:F,(o[H>>2]|0)-He>>3,A+8|0),oe=Y+8|0,F8(o[oe>>2]|0,o[_>>2]|0,o[S>>2]|0),o[oe>>2]=(o[oe>>2]|0)+8,cme(A,Y),ZX(Y),T=Se;return}}function Tx(A){return A=A|0,536870911}function ame(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>536870911)Bo();else{Y=xu(_<<3)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S<<3)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_<<3)}function cme(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(0-(Y>>3)<<3)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function ZX(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-8-_|0)>>>3)<<3)),A=o[A>>2]|0,A|0&&Va(A)}function NB(A){A=A|0,PRe(A)}function lce(A){A=A|0,uce(A+24|0)}function uce(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),Va(S))}function PRe(A){A=A|0;var _=0;_=Ss()|0,js(A,1,9,_,EZ()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function EZ(){return 1348}function L8(A,_){return A=A|0,_=_|0,NQ(o[(lme(A)|0)>>2]|0,_)|0}function lme(A){return A=A|0,(o[(G8()|0)+24>>2]|0)+(A<<3)|0}function NQ(A,_){A=A|0,_=_|0;var S=0,F=0;return S=T,T=T+16|0,F=S,JR(F,_),_=n0(F,_)|0,_=RS(lY[A&31](_)|0)|0,T=S,_|0}function JR(A,_){A=A|0,_=_|0}function n0(A,_){return A=A|0,_=_|0,OUe(_)|0}function OUe(A){return A=A|0,A|0}function so(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0;H=o[A>>2]|0,Y=V8()|0,A=gce(S)|0,vf(H,_,Y,A,$$(S,F)|0,F)}function V8(){var A=0,_=0;if(s[7816]|0||(W8(10008),au(46,10008,U|0)|0,_=7816,o[_>>2]=1,o[_+4>>2]=0),!(Jr(10008)|0)){A=10008,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));W8(10008)}return 10008}function gce(A){return A=A|0,A|0}function $$(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0;return Se=T,T=T+16|0,Y=Se,H=Se+4|0,o[Y>>2]=A,He=V8()|0,oe=He+24|0,_=ag(_,4)|0,o[H>>2]=_,S=He+28|0,F=o[S>>2]|0,F>>>0<(o[He+32>>2]|0)>>>0?(eee(F,A,_),_=(o[S>>2]|0)+8|0,o[S>>2]=_):(Q0(oe,Y,H),_=o[S>>2]|0),T=Se,(_-(o[oe>>2]|0)>>3)+-1|0}function eee(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,o[A+4>>2]=S}function Q0(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;if(Se=T,T=T+32|0,Y=Se,H=A+4|0,oe=((o[H>>2]|0)-(o[A>>2]|0)>>3)+1|0,F=tee(A)|0,F>>>0>>0)RI(A);else{He=o[A>>2]|0,At=(o[A+8>>2]|0)-He|0,Ct=At>>2,q9(Y,At>>3>>>0>>1>>>0?Ct>>>0>>0?oe:Ct:F,(o[H>>2]|0)-He>>3,A+8|0),oe=Y+8|0,eee(o[oe>>2]|0,o[_>>2]|0,o[S>>2]|0),o[oe>>2]=(o[oe>>2]|0)+8,ORe(A,Y),MUe(Y),T=Se;return}}function tee(A){return A=A|0,536870911}function q9(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>536870911)Bo();else{Y=xu(_<<3)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S<<3)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_<<3)}function ORe(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(0-(Y>>3)<<3)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function MUe(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-8-_|0)>>>3)<<3)),A=o[A>>2]|0,A|0&&Va(A)}function W8(A){A=A|0,P8(A)}function ree(A){A=A|0,Ace(A+24|0)}function Ace(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),Va(S))}function P8(A){A=A|0;var _=0;_=Ss()|0,js(A,1,15,_,gg()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function nee(A){return A=A|0,JTt(o[(O8(A)|0)>>2]|0)|0}function O8(A){return A=A|0,(o[(V8()|0)+24>>2]|0)+(A<<3)|0}function JTt(A){return A=A|0,RS(n_[A&7]()|0)|0}function RQ(){var A=0;return s[7832]|0||(CI(10052),au(25,10052,U|0)|0,A=7832,o[A>>2]=1,o[A+4>>2]=0),10052}function BZ(A,_){A=A|0,_=_|0,o[A>>2]=UTt()|0,o[A+4>>2]=MRe()|0,o[A+12>>2]=_,o[A+8>>2]=ume()|0,o[A+32>>2]=2}function UTt(){return 11709}function MRe(){return 1188}function ume(){return M8()|0}function LX(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,(IG(F,896)|0)==512?S|0&&(O3(S),Va(S)):_|0&&(bS(_),Va(_))}function IG(A,_){return A=A|0,_=_|0,_&A|0}function O3(A){A=A|0,A=o[A+4>>2]|0,A|0&&iY(A)}function M8(){var A=0;return s[7824]|0||(o[2511]=AN()|0,o[2512]=0,A=7824,o[A>>2]=1,o[A+4>>2]=0),10044}function AN(){return 0}function CI(A){A=A|0,Kc(A)}function M3(A){A=A|0;var _=0,S=0,F=0,Y=0,H=0;_=T,T=T+32|0,S=_+24|0,H=_+16|0,Y=_+8|0,F=_,dce(A,4827),iee(A,4834,3)|0,$9(A,3682,47)|0,o[H>>2]=9,o[H+4>>2]=0,o[S>>2]=o[H>>2],o[S+4>>2]=o[H+4>>2],pce(A,4841,S)|0,o[Y>>2]=1,o[Y+4>>2]=0,o[S>>2]=o[Y>>2],o[S+4>>2]=o[Y+4>>2],Q3(A,4871,S)|0,o[F>>2]=10,o[F+4>>2]=0,o[S>>2]=o[F>>2],o[S+4>>2]=o[F+4>>2],see(A,4891,S)|0,T=_}function dce(A,_){A=A|0,_=_|0;var S=0;S=tDe()|0,o[A>>2]=S,z8(S,_),WQ(o[A>>2]|0)}function iee(A,_,S){return A=A|0,_=_|0,S=S|0,zUe(A,wp(_)|0,S,0),A|0}function $9(A,_,S){return A=A|0,_=_|0,S=S|0,Iee(A,wp(_)|0,S,0),A|0}function pce(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return F=T,T=T+16|0,Y=F+8|0,H=F,oe=o[S+4>>2]|0,o[H>>2]=o[S>>2],o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],URe(A,_,Y),T=F,A|0}function Q3(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return F=T,T=T+16|0,Y=F+8|0,H=F,oe=o[S+4>>2]|0,o[H>>2]=o[S>>2],o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],w2(A,_,Y),T=F,A|0}function see(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return F=T,T=T+16|0,Y=F+8|0,H=F,oe=o[S+4>>2]|0,o[H>>2]=o[S>>2],o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],KTt(A,_,Y),T=F,A|0}function KTt(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0;F=T,T=T+16|0,Y=F+8|0,H=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=wp(_)|0,o[H>>2]=Se,o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],jTt(A,S,Y,1),T=F}function jTt(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;Y=T,T=T+32|0,H=Y+16|0,At=Y+8|0,Se=Y,Ct=o[S>>2]|0,He=o[S+4>>2]|0,oe=o[A>>2]|0,A=Q8()|0,o[At>>2]=Ct,o[At+4>>2]=He,o[H>>2]=o[At>>2],o[H+4>>2]=o[At+4>>2],S=UR(H)|0,o[Se>>2]=Ct,o[Se+4>>2]=He,o[H>>2]=o[Se>>2],o[H+4>>2]=o[Se+4>>2],vf(oe,_,A,S,oee(H,F)|0,F),T=Y}function Q8(){var A=0,_=0;if(s[7840]|0||(VX(10100),au(48,10100,U|0)|0,_=7840,o[_>>2]=1,o[_+4>>2]=0),!(Jr(10100)|0)){A=10100,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));VX(10100)}return 10100}function UR(A){return A=A|0,0}function oee(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,Y=At+24|0,oe=At+16|0,Se=At,He=At+8|0,H=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=H,o[Se+4>>2]=F,Ut=Q8()|0,Ct=Ut+24|0,A=ag(_,4)|0,o[He>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=H,o[oe+4>>2]=F,o[Y>>2]=o[oe>>2],o[Y+4>>2]=o[oe+4>>2],fce(S,Y,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(aee(Ct,Se,He),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function fce(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function aee(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,He=A+4|0,Y=(((o[He>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,H=QRe(A)|0,H>>>0>>0)RI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,cee(Se,cn>>>0>>1>>>0?Ut>>>0>>0?Y:Ut:H,((o[He>>2]|0)-At|0)/12|0,A+8|0),He=Se+8|0,H=o[He>>2]|0,Y=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=Y,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],fce(H,F,S),o[He>>2]=(o[He>>2]|0)+12,YRe(A,Se),Y8(Se),T=Ct;return}}function QRe(A){return A=A|0,357913941}function cee(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Bo();else{Y=xu(_*12|0)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_*12|0)}function YRe(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(((Y|0)/-12|0)*12|0)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function Y8(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&Va(A)}function VX(A){A=A|0,WX(A)}function lee(A){A=A|0,DQ(A+24|0)}function DQ(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),Va(S))}function WX(A){A=A|0;var _=0;_=Ss()|0,js(A,2,6,_,xQ()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function xQ(){return 1364}function HRe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;return F=T,T=T+16|0,Y=F+8|0,H=F,oe=kQ(A)|0,A=o[oe+4>>2]|0,o[H>>2]=o[oe>>2],o[H+4>>2]=A,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],S=PX(_,Y,S)|0,T=F,S|0}function kQ(A){return A=A|0,(o[(Q8()|0)+24>>2]|0)+(A*12|0)|0}function PX(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0;return H=T,T=T+16|0,Y=H,F=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(F=o[(o[A>>2]|0)+F>>2]|0),Sf(Y,S),Y=Jw(Y,S)|0,Y=T1(xg[F&15](A,Y)|0)|0,T=H,Y|0}function w2(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0;F=T,T=T+16|0,Y=F+8|0,H=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=wp(_)|0,o[H>>2]=Se,o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],uee(A,S,Y,0),T=F}function uee(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;Y=T,T=T+32|0,H=Y+16|0,At=Y+8|0,Se=Y,Ct=o[S>>2]|0,He=o[S+4>>2]|0,oe=o[A>>2]|0,A=XRe()|0,o[At>>2]=Ct,o[At+4>>2]=He,o[H>>2]=o[At>>2],o[H+4>>2]=o[At+4>>2],S=QUe(H)|0,o[Se>>2]=Ct,o[Se+4>>2]=He,o[H>>2]=o[Se>>2],o[H+4>>2]=o[Se+4>>2],vf(oe,_,A,S,gme(H,F)|0,F),T=Y}function XRe(){var A=0,_=0;if(s[7848]|0||(XUe(10136),au(49,10136,U|0)|0,_=7848,o[_>>2]=1,o[_+4>>2]=0),!(Jr(10136)|0)){A=10136,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));XUe(10136)}return 10136}function QUe(A){return A=A|0,0}function gme(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,Y=At+24|0,oe=At+16|0,Se=At,He=At+8|0,H=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=H,o[Se+4>>2]=F,Ut=XRe()|0,Ct=Ut+24|0,A=ag(_,4)|0,o[He>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=H,o[oe+4>>2]=F,o[Y>>2]=o[oe>>2],o[Y+4>>2]=o[oe+4>>2],Y3(S,Y,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(YUe(Ct,Se,He),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function Y3(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function YUe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,He=A+4|0,Y=(((o[He>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,H=gee(A)|0,H>>>0>>0)RI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,Aee(Se,cn>>>0>>1>>>0?Ut>>>0>>0?Y:Ut:H,((o[He>>2]|0)-At|0)/12|0,A+8|0),He=Se+8|0,H=o[He>>2]|0,Y=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=Y,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],Y3(H,F,S),o[He>>2]=(o[He>>2]|0)+12,Ame(A,Se),HUe(Se),T=Ct;return}}function gee(A){return A=A|0,357913941}function Aee(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Bo();else{Y=xu(_*12|0)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_*12|0)}function Ame(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(((Y|0)/-12|0)*12|0)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function HUe(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&Va(A)}function XUe(A){A=A|0,Ice(A)}function dme(A){A=A|0,dee(A+24|0)}function dee(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),Va(S))}function Ice(A){A=A|0;var _=0;_=Ss()|0,js(A,2,9,_,pme()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function pme(){return 1372}function vZ(A,_,S){A=A|0,_=_|0,S=+S;var F=0,Y=0,H=0,oe=0;F=T,T=T+16|0,Y=F+8|0,H=F,oe=SZ(A)|0,A=o[oe+4>>2]|0,o[H>>2]=o[oe>>2],o[H+4>>2]=A,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],eV(_,Y,S),T=F}function SZ(A){return A=A|0,(o[(XRe()|0)+24>>2]|0)+(A*12|0)|0}function eV(A,_,S){A=A|0,_=_|0,S=+S;var F=0,Y=0,H=0,oe=ys;H=T,T=T+16|0,Y=H,F=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(F=o[(o[A>>2]|0)+F>>2]|0),OX(Y,S),oe=we(JRe(Y,S)),c4[F&1](A,oe),T=H}function OX(A,_){A=A|0,_=+_}function JRe(A,_){return A=A|0,_=+_,we(JUe(_))}function JUe(A){return A=+A,we(A)}function URe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0;F=T,T=T+16|0,Y=F+8|0,H=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=wp(_)|0,o[H>>2]=Se,o[H+4>>2]=oe,o[Y>>2]=o[H>>2],o[Y+4>>2]=o[H+4>>2],KRe(A,S,Y,0),T=F}function KRe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;Y=T,T=T+32|0,H=Y+16|0,At=Y+8|0,Se=Y,Ct=o[S>>2]|0,He=o[S+4>>2]|0,oe=o[A>>2]|0,A=Nx()|0,o[At>>2]=Ct,o[At+4>>2]=He,o[H>>2]=o[At>>2],o[H+4>>2]=o[At+4>>2],S=Rx(H)|0,o[Se>>2]=Ct,o[Se+4>>2]=He,o[H>>2]=o[Se>>2],o[H+4>>2]=o[Se+4>>2],vf(oe,_,A,S,zTt(H,F)|0,F),T=Y}function Nx(){var A=0,_=0;if(s[7856]|0||(fme(10172),au(50,10172,U|0)|0,_=7856,o[_>>2]=1,o[_+4>>2]=0),!(Jr(10172)|0)){A=10172,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));fme(10172)}return 10172}function Rx(A){return A=A|0,0}function zTt(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,Y=At+24|0,oe=At+16|0,Se=At,He=At+8|0,H=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=H,o[Se+4>>2]=F,Ut=Nx()|0,Ct=Ut+24|0,A=ag(_,4)|0,o[He>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=H,o[oe+4>>2]=F,o[Y>>2]=o[oe>>2],o[Y+4>>2]=o[oe+4>>2],Cce(S,Y,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(jRe(Ct,Se,He),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function Cce(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function jRe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,He=A+4|0,Y=(((o[He>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,H=GQ(A)|0,H>>>0>>0)RI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,UUe(Se,cn>>>0>>1>>>0?Ut>>>0>>0?Y:Ut:H,((o[He>>2]|0)-At|0)/12|0,A+8|0),He=Se+8|0,H=o[He>>2]|0,Y=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=Y,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],Cce(H,F,S),o[He>>2]=(o[He>>2]|0)+12,pee(A,Se),KR(Se),T=Ct;return}}function GQ(A){return A=A|0,357913941}function UUe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Bo();else{Y=xu(_*12|0)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_*12|0)}function pee(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(((Y|0)/-12|0)*12|0)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function KR(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&Va(A)}function fme(A){A=A|0,Ime(A)}function H8(A){A=A|0,jA(A+24|0)}function jA(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),Va(S))}function Ime(A){A=A|0;var _=0;_=Ss()|0,js(A,2,3,_,tV()|0,2),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function tV(){return 1380}function eT(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0;Y=T,T=T+16|0,H=Y+8|0,oe=Y,Se=X8(A)|0,A=o[Se+4>>2]|0,o[oe>>2]=o[Se>>2],o[oe+4>>2]=A,o[H>>2]=o[oe>>2],o[H+4>>2]=o[oe+4>>2],fee(_,H,S,F),T=Y}function X8(A){return A=A|0,(o[(Nx()|0)+24>>2]|0)+(A*12|0)|0}function fee(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0;Se=T,T=T+16|0,H=Se+1|0,oe=Se,Y=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(Y=o[(o[A>>2]|0)+Y>>2]|0),Sf(H,S),H=Jw(H,S)|0,zRe(oe,F),oe=KUe(oe,F)|0,$p[Y&15](A,H,oe),T=Se}function zRe(A,_){A=A|0,_=_|0}function KUe(A,_){return A=A|0,_=_|0,Cme(_)|0}function Cme(A){return A=A|0,(A|0)!=0|0}function Iee(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0;H=o[A>>2]|0,Y=H3()|0,A=mme(S)|0,vf(H,_,Y,A,qRe(S,F)|0,F)}function H3(){var A=0,_=0;if(s[7864]|0||(CG(10208),au(51,10208,U|0)|0,_=7864,o[_>>2]=1,o[_+4>>2]=0),!(Jr(10208)|0)){A=10208,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));CG(10208)}return 10208}function mme(A){return A=A|0,A|0}function qRe(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0;return Se=T,T=T+16|0,Y=Se,H=Se+4|0,o[Y>>2]=A,He=H3()|0,oe=He+24|0,_=ag(_,4)|0,o[H>>2]=_,S=He+28|0,F=o[S>>2]|0,F>>>0<(o[He+32>>2]|0)>>>0?(Dv(F,A,_),_=(o[S>>2]|0)+8|0,o[S>>2]=_):(rV(oe,Y,H),_=o[S>>2]|0),T=Se,(_-(o[oe>>2]|0)>>3)+-1|0}function Dv(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,o[A+4>>2]=S}function rV(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;if(Se=T,T=T+32|0,Y=Se,H=A+4|0,oe=((o[H>>2]|0)-(o[A>>2]|0)>>3)+1|0,F=MX(A)|0,F>>>0>>0)RI(A);else{He=o[A>>2]|0,At=(o[A+8>>2]|0)-He|0,Ct=At>>2,J8(Y,At>>3>>>0>>1>>>0?Ct>>>0>>0?oe:Ct:F,(o[H>>2]|0)-He>>3,A+8|0),oe=Y+8|0,Dv(o[oe>>2]|0,o[_>>2]|0,o[S>>2]|0),o[oe>>2]=(o[oe>>2]|0)+8,U8(A,Y),Cee(Y),T=Se;return}}function MX(A){return A=A|0,536870911}function J8(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>536870911)Bo();else{Y=xu(_<<3)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S<<3)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_<<3)}function U8(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(0-(Y>>3)<<3)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function Cee(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-8-_|0)>>>3)<<3)),A=o[A>>2]|0,A|0&&Va(A)}function CG(A){A=A|0,mce(A)}function i0(A){A=A|0,hme(A+24|0)}function hme(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),Va(S))}function mce(A){A=A|0;var _=0;_=Ss()|0,js(A,1,24,_,hce()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function hce(){return 1392}function _me(A,_){A=A|0,_=_|0,FQ(o[(jUe(A)|0)>>2]|0,_)}function jUe(A){return A=A|0,(o[(H3()|0)+24>>2]|0)+(A<<3)|0}function FQ(A,_){A=A|0,_=_|0;var S=0,F=0;S=T,T=T+16|0,F=S,JR(F,_),_=n0(F,_)|0,IV[A&127](_),T=S}function zUe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0;H=o[A>>2]|0,Y=mee()|0,A=QX(S)|0,vf(H,_,Y,A,$Re(S,F)|0,F)}function mee(){var A=0,_=0;if(s[7872]|0||(nV(10244),au(52,10244,U|0)|0,_=7872,o[_>>2]=1,o[_+4>>2]=0),!(Jr(10244)|0)){A=10244,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));nV(10244)}return 10244}function QX(A){return A=A|0,A|0}function $Re(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0;return Se=T,T=T+16|0,Y=Se,H=Se+4|0,o[Y>>2]=A,He=mee()|0,oe=He+24|0,_=ag(_,4)|0,o[H>>2]=_,S=He+28|0,F=o[S>>2]|0,F>>>0<(o[He+32>>2]|0)>>>0?(YI(F,A,_),_=(o[S>>2]|0)+8|0,o[S>>2]=_):(K8(oe,Y,H),_=o[S>>2]|0),T=Se,(_-(o[oe>>2]|0)>>3)+-1|0}function YI(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,o[A+4>>2]=S}function K8(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;if(Se=T,T=T+32|0,Y=Se,H=A+4|0,oe=((o[H>>2]|0)-(o[A>>2]|0)>>3)+1|0,F=GE(A)|0,F>>>0>>0)RI(A);else{He=o[A>>2]|0,At=(o[A+8>>2]|0)-He|0,Ct=At>>2,_ce(Y,At>>3>>>0>>1>>>0?Ct>>>0>>0?oe:Ct:F,(o[H>>2]|0)-He>>3,A+8|0),oe=Y+8|0,YI(o[oe>>2]|0,o[_>>2]|0,o[S>>2]|0),o[oe>>2]=(o[oe>>2]|0)+8,jR(A,Y),yce(Y),T=Se;return}}function GE(A){return A=A|0,536870911}function _ce(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>536870911)Bo();else{Y=xu(_<<3)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S<<3)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_<<3)}function jR(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(0-(Y>>3)<<3)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function yce(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-8-_|0)>>>3)<<3)),A=o[A>>2]|0,A|0&&Va(A)}function nV(A){A=A|0,j8(A)}function VS(A){A=A|0,T2(A+24|0)}function T2(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),Va(S))}function j8(A){A=A|0;var _=0;_=Ss()|0,js(A,1,16,_,qUe()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function qUe(){return 1400}function hee(A){return A=A|0,eDe(o[(_ee(A)|0)>>2]|0)|0}function _ee(A){return A=A|0,(o[(mee()|0)+24>>2]|0)+(A<<3)|0}function eDe(A){return A=A|0,$Ue(n_[A&7]()|0)|0}function $Ue(A){return A=A|0,A|0}function tDe(){var A=0;return s[7880]|0||(Eme(10280),au(25,10280,U|0)|0,A=7880,o[A>>2]=1,o[A+4>>2]=0),10280}function z8(A,_){A=A|0,_=_|0,o[A>>2]=yme()|0,o[A+4>>2]=tb()|0,o[A+12>>2]=_,o[A+8>>2]=bme()|0,o[A+32>>2]=4}function yme(){return 11711}function tb(){return 1356}function bme(){return M8()|0}function wZ(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,(IG(F,896)|0)==512?S|0&&(WS(S),Va(S)):_|0&&(G0(_),Va(_))}function WS(A){A=A|0,A=o[A+4>>2]|0,A|0&&iY(A)}function Eme(A){A=A|0,Kc(A)}function qd(A){A=A|0,eKe(A,4920),rDe(A)|0,Bme(A)|0}function eKe(A,_){A=A|0,_=_|0;var S=0;S=D$()|0,o[A>>2]=S,oNt(S,_),WQ(o[A>>2]|0)}function rDe(A){A=A|0;var _=0;return _=o[A>>2]|0,mG(_,eNt()|0),A|0}function Bme(A){A=A|0;var _=0;return _=o[A>>2]|0,mG(_,vme()|0),A|0}function vme(){var A=0;return s[7888]|0||(bce(10328),au(53,10328,U|0)|0,A=7888,o[A>>2]=1,o[A+4>>2]=0),Jr(10328)|0||bce(10328),10328}function mG(A,_){A=A|0,_=_|0,vf(A,0,_,0,0,0)}function bce(A){A=A|0,bee(A),hG(A,10)}function nDe(A){A=A|0,yee(A+24|0)}function yee(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),Va(S))}function bee(A){A=A|0;var _=0;_=Ss()|0,js(A,5,1,_,iDe()|0,2),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function YX(A,_,S){A=A|0,_=_|0,S=+S,qTt(A,_,S)}function hG(A,_){A=A|0,_=_|0,o[A+20>>2]=_}function qTt(A,_,S){A=A|0,_=_|0,S=+S;var F=0,Y=0,H=0,oe=0,Se=0;F=T,T=T+16|0,H=F+8|0,Se=F+13|0,Y=F,oe=F+12|0,Sf(Se,_),o[H>>2]=Jw(Se,_)|0,vv(oe,S),y[Y>>3]=+cN(oe,S),Sme(A,H,Y),T=F}function Sme(A,_,S){A=A|0,_=_|0,S=S|0,yd(A+8|0,o[_>>2]|0,+y[S>>3]),s[A+24>>0]=1}function iDe(){return 1404}function wme(A,_){return A=A|0,_=+_,$Tt(A,_)|0}function $Tt(A,_){A=A|0,_=+_;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0;return F=T,T=T+16|0,H=F+4|0,oe=F+8|0,Se=F,Y=CN(8)|0,S=Y,He=xu(16)|0,Sf(H,A),A=Jw(H,A)|0,vv(oe,_),yd(He,A,+cN(oe,_)),oe=S+4|0,o[oe>>2]=He,A=xu(8)|0,oe=o[oe>>2]|0,o[Se>>2]=0,o[H>>2]=o[Se>>2],yQ(A,oe,H),o[Y>>2]=A,T=F,S|0}function eNt(){var A=0;return s[7896]|0||(tKe(10364),au(54,10364,U|0)|0,A=7896,o[A>>2]=1,o[A+4>>2]=0),Jr(10364)|0||tKe(10364),10364}function tKe(A){A=A|0,rNt(A),hG(A,55)}function tNt(A){A=A|0,rKe(A+24|0)}function rKe(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),Va(S))}function rNt(A){A=A|0;var _=0;_=Ss()|0,js(A,5,4,_,nNt()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function tT(A){A=A|0,nKe(A)}function nKe(A){A=A|0,Ece(A)}function Ece(A){A=A|0,iKe(A+8|0),s[A+24>>0]=1}function iKe(A){A=A|0,o[A>>2]=0,y[A+8>>3]=0}function nNt(){return 1424}function iNt(){return sNt()|0}function sNt(){var A=0,_=0,S=0,F=0,Y=0,H=0,oe=0;return _=T,T=T+16|0,Y=_+4|0,oe=_,S=CN(8)|0,A=S,F=xu(16)|0,iKe(F),H=A+4|0,o[H>>2]=F,F=xu(8)|0,H=o[H>>2]|0,o[oe>>2]=0,o[Y>>2]=o[oe>>2],yQ(F,H,Y),o[S>>2]=F,T=_,A|0}function oNt(A,_){A=A|0,_=_|0,o[A>>2]=Tme()|0,o[A+4>>2]=N2()|0,o[A+12>>2]=_,o[A+8>>2]=aNt()|0,o[A+32>>2]=5}function Tme(){return 11710}function N2(){return 1416}function aNt(){return XX()|0}function HX(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,(IG(F,896)|0)==512?S|0&&(Eee(S),Va(S)):_|0&&Va(_)}function Eee(A){A=A|0,A=o[A+4>>2]|0,A|0&&iY(A)}function XX(){var A=0;return s[7904]|0||(o[2600]=JX()|0,o[2601]=0,A=7904,o[A>>2]=1,o[A+4>>2]=0),10400}function JX(){return o[357]|0}function Bee(A){A=A|0,Nme(A,4926),UX(A)|0}function Nme(A,_){A=A|0,_=_|0;var S=0;S=Ig()|0,o[A>>2]=S,Tce(S,_),WQ(o[A>>2]|0)}function UX(A){A=A|0;var _=0;return _=o[A>>2]|0,mG(_,Dx()|0),A|0}function Dx(){var A=0;return s[7912]|0||(Bce(10412),au(56,10412,U|0)|0,A=7912,o[A>>2]=1,o[A+4>>2]=0),Jr(10412)|0||Bce(10412),10412}function Bce(A){A=A|0,Rme(A),hG(A,57)}function sKe(A){A=A|0,sDe(A+24|0)}function sDe(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),Va(S))}function Rme(A){A=A|0;var _=0;_=Ss()|0,js(A,5,5,_,Sce()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function oDe(A){A=A|0,aDe(A)}function aDe(A){A=A|0,vce(A)}function vce(A){A=A|0;var _=0,S=0;_=A+8|0,S=_+48|0;do o[_>>2]=0,_=_+4|0;while((_|0)<(S|0));s[A+56>>0]=1}function Sce(){return 1432}function cDe(){return wce()|0}function wce(){var A=0,_=0,S=0,F=0,Y=0,H=0,oe=0,Se=0;oe=T,T=T+16|0,A=oe+4|0,_=oe,S=CN(8)|0,F=S,Y=xu(48)|0,H=Y,Se=H+48|0;do o[H>>2]=0,H=H+4|0;while((H|0)<(Se|0));return H=F+4|0,o[H>>2]=Y,Se=xu(8)|0,H=o[H>>2]|0,o[_>>2]=0,o[A>>2]=o[_>>2],B3(Se,H,A),o[S>>2]=Se,T=oe,F|0}function Tce(A,_){A=A|0,_=_|0,o[A>>2]=X3()|0,o[A+4>>2]=Nce()|0,o[A+12>>2]=_,o[A+8>>2]=Rce()|0,o[A+32>>2]=6}function X3(){return 11704}function Nce(){return 1436}function Rce(){return XX()|0}function vee(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,(IG(F,896)|0)==512?S|0&&(oKe(S),Va(S)):_|0&&Va(_)}function oKe(A){A=A|0,A=o[A+4>>2]|0,A|0&&iY(A)}function Dme(A){A=A|0,q8(A,4933),J3(A)|0,dN(A)|0}function q8(A,_){A=A|0,_=_|0;var S=0;S=IC()|0,o[A>>2]=S,Dce(S,_),WQ(o[A>>2]|0)}function J3(A){A=A|0;var _=0;return _=o[A>>2]|0,mG(_,ADe()|0),A|0}function dN(A){A=A|0;var _=0;return _=o[A>>2]|0,mG(_,KX()|0),A|0}function KX(){var A=0;return s[7920]|0||(xme(10452),au(58,10452,U|0)|0,A=7920,o[A>>2]=1,o[A+4>>2]=0),Jr(10452)|0||xme(10452),10452}function xme(A){A=A|0,_G(A),hG(A,1)}function iV(A){A=A|0,sV(A+24|0)}function sV(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),Va(S))}function _G(A){A=A|0;var _=0;_=Ss()|0,js(A,5,1,_,fC()|0,2),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function ZQ(A,_,S){A=A|0,_=+_,S=+S,oV(A,_,S)}function oV(A,_,S){A=A|0,_=+_,S=+S;var F=0,Y=0,H=0,oe=0,Se=0;F=T,T=T+32|0,H=F+8|0,Se=F+17|0,Y=F,oe=F+16|0,vv(Se,_),y[H>>3]=+cN(Se,_),vv(oe,S),y[Y>>3]=+cN(oe,S),kme(A,H,Y),T=F}function kme(A,_,S){A=A|0,_=_|0,S=S|0,xx(A+8|0,+y[_>>3],+y[S>>3]),s[A+24>>0]=1}function xx(A,_,S){A=A|0,_=+_,S=+S,y[A>>3]=_,y[A+8>>3]=S}function fC(){return 1472}function lDe(A,_){return A=+A,_=+_,rb(A,_)|0}function rb(A,_){A=+A,_=+_;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0;return F=T,T=T+16|0,oe=F+4|0,Se=F+8|0,He=F,Y=CN(8)|0,S=Y,H=xu(16)|0,vv(oe,A),A=+cN(oe,A),vv(Se,_),xx(H,A,+cN(Se,_)),Se=S+4|0,o[Se>>2]=H,H=xu(8)|0,Se=o[Se>>2]|0,o[He>>2]=0,o[oe>>2]=o[He>>2],See(H,Se,oe),o[Y>>2]=H,T=F,S|0}function See(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,S=xu(16)|0,o[S+4>>2]=0,o[S+8>>2]=0,o[S>>2]=1452,o[S+12>>2]=_,o[A+4>>2]=S}function cNt(A){A=A|0,o4(A),Va(A)}function uDe(A){A=A|0,A=o[A+12>>2]|0,A|0&&Va(A)}function gDe(A){A=A|0,Va(A)}function ADe(){var A=0;return s[7928]|0||(Gme(10488),au(59,10488,U|0)|0,A=7928,o[A>>2]=1,o[A+4>>2]=0),Jr(10488)|0||Gme(10488),10488}function Gme(A){A=A|0,jX(A),hG(A,60)}function dDe(A){A=A|0,pDe(A+24|0)}function pDe(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),Va(S))}function jX(A){A=A|0;var _=0;_=Ss()|0,js(A,5,6,_,nb()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function lNt(A){A=A|0,aKe(A)}function aKe(A){A=A|0,Fme(A)}function Fme(A){A=A|0,Zme(A+8|0),s[A+24>>0]=1}function Zme(A){A=A|0,o[A>>2]=0,o[A+4>>2]=0,o[A+8>>2]=0,o[A+12>>2]=0}function nb(){return 1492}function ba(){return $u()|0}function $u(){var A=0,_=0,S=0,F=0,Y=0,H=0,oe=0;return _=T,T=T+16|0,Y=_+4|0,oe=_,S=CN(8)|0,A=S,F=xu(16)|0,Zme(F),H=A+4|0,o[H>>2]=F,F=xu(8)|0,H=o[H>>2]|0,o[oe>>2]=0,o[Y>>2]=o[oe>>2],See(F,H,Y),o[S>>2]=F,T=_,A|0}function IC(){var A=0;return s[7936]|0||(LQ(10524),au(25,10524,U|0)|0,A=7936,o[A>>2]=1,o[A+4>>2]=0),10524}function Dce(A,_){A=A|0,_=_|0,o[A>>2]=aV()|0,o[A+4>>2]=Lme()|0,o[A+12>>2]=_,o[A+8>>2]=PS()|0,o[A+32>>2]=7}function aV(){return 11700}function Lme(){return 1484}function PS(){return XX()|0}function $8(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,(IG(F,896)|0)==512?S|0&&(FE(S),Va(S)):_|0&&Va(_)}function FE(A){A=A|0,A=o[A+4>>2]|0,A|0&&iY(A)}function LQ(A){A=A|0,Kc(A)}function fDe(A,_,S){A=A|0,_=_|0,S=S|0,A=wp(_)|0,_=IDe(S)|0,S=N_(S,0)|0,Gce(A,_,S,xce()|0,0)}function IDe(A){return A=A|0,A|0}function N_(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0;return Se=T,T=T+16|0,Y=Se,H=Se+4|0,o[Y>>2]=A,He=xce()|0,oe=He+24|0,_=ag(_,4)|0,o[H>>2]=_,S=He+28|0,F=o[S>>2]|0,F>>>0<(o[He+32>>2]|0)>>>0?(xv(F,A,_),_=(o[S>>2]|0)+8|0,o[S>>2]=_):(VQ(oe,Y,H),_=o[S>>2]|0),T=Se,(_-(o[oe>>2]|0)>>3)+-1|0}function xce(){var A=0,_=0;if(s[7944]|0||(zR(10568),au(61,10568,U|0)|0,_=7944,o[_>>2]=1,o[_+4>>2]=0),!(Jr(10568)|0)){A=10568,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));zR(10568)}return 10568}function zR(A){A=A|0,lKe(A)}function cKe(A){A=A|0,uNt(A+24|0)}function uNt(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),Va(S))}function lKe(A){A=A|0;var _=0;_=Ss()|0,js(A,1,17,_,Bx()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function gNt(A){return A=A|0,Vme(o[(CDe(A)|0)>>2]|0)|0}function CDe(A){return A=A|0,(o[(xce()|0)+24>>2]|0)+(A<<3)|0}function Vme(A){return A=A|0,IX(n_[A&7]()|0)|0}function xv(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,o[A+4>>2]=S}function VQ(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;if(Se=T,T=T+32|0,Y=Se,H=A+4|0,oe=((o[H>>2]|0)-(o[A>>2]|0)>>3)+1|0,F=uKe(A)|0,F>>>0>>0)RI(A);else{He=o[A>>2]|0,At=(o[A+8>>2]|0)-He|0,Ct=At>>2,mDe(Y,At>>3>>>0>>1>>>0?Ct>>>0>>0?oe:Ct:F,(o[H>>2]|0)-He>>3,A+8|0),oe=Y+8|0,xv(o[oe>>2]|0,o[_>>2]|0,o[S>>2]|0),o[oe>>2]=(o[oe>>2]|0)+8,e6(A,Y),Wme(Y),T=Se;return}}function uKe(A){return A=A|0,536870911}function mDe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>536870911)Bo();else{Y=xu(_<<3)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S<<3)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_<<3)}function e6(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(0-(Y>>3)<<3)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function Wme(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-8-_|0)>>>3)<<3)),A=o[A>>2]|0,A|0&&Va(A)}function wee(){Tee()}function Tee(){qR(10604)}function qR(A){A=A|0,Pme(A,4955)}function Pme(A,_){A=A|0,_=_|0;var S=0;S=Ome()|0,o[A>>2]=S,fm(S,_),WQ(o[A>>2]|0)}function Ome(){var A=0;return s[7952]|0||(Mme(10612),au(25,10612,U|0)|0,A=7952,o[A>>2]=1,o[A+4>>2]=0),10612}function fm(A,_){A=A|0,_=_|0,o[A>>2]=Nee()|0,o[A+4>>2]=Ree()|0,o[A+12>>2]=_,o[A+8>>2]=Dee()|0,o[A+32>>2]=8}function WQ(A){A=A|0;var _=0,S=0;_=T,T=T+16|0,S=_,kv()|0,o[S>>2]=A,kce(10608,S),T=_}function kv(){return s[11714]|0||(o[2652]=0,au(62,10608,U|0)|0,s[11714]=1),10608}function kce(A,_){A=A|0,_=_|0;var S=0;S=xu(8)|0,o[S+4>>2]=o[_>>2],o[S>>2]=o[A>>2],o[A>>2]=S}function cp(A){A=A|0,ib(A)}function ib(A){A=A|0;var _=0,S=0;if(_=o[A>>2]|0,_|0)do S=_,_=o[_>>2]|0,Va(S);while(_|0);o[A>>2]=0}function Nee(){return 11715}function Ree(){return 1496}function Dee(){return M8()|0}function yG(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,(IG(F,896)|0)==512?S|0&&(t6(S),Va(S)):_|0&&Va(_)}function t6(A){A=A|0,A=o[A+4>>2]|0,A|0&&iY(A)}function Mme(A){A=A|0,Kc(A)}function hDe(A,_){A=A|0,_=_|0;var S=0,F=0;kv()|0,S=o[2652]|0;e:do if(S|0){for(;F=o[S+4>>2]|0,!(F|0&&!(kx(r6(F)|0,A)|0));)if(S=o[S>>2]|0,!S)break e;_De(F,_)}while(!1)}function r6(A){return A=A|0,o[A+12>>2]|0}function _De(A,_){A=A|0,_=_|0;var S=0;A=A+36|0,S=o[A>>2]|0,S|0&&(Jy(S),Va(S)),S=xu(4)|0,iN(S,_),o[A>>2]=S}function xee(){return s[11716]|0||(o[2664]=0,au(63,10656,U|0)|0,s[11716]=1),10656}function Qme(){var A=0;return s[11717]|0?A=o[2665]|0:(n6(),o[2665]=1504,s[11717]=1,A=1504),A|0}function n6(){s[11740]|0||(s[11718]=ag(ag(8,0)|0,0)|0,s[11719]=ag(ag(0,0)|0,0)|0,s[11720]=ag(ag(0,16)|0,0)|0,s[11721]=ag(ag(8,0)|0,0)|0,s[11722]=ag(ag(0,0)|0,0)|0,s[11723]=ag(ag(8,0)|0,0)|0,s[11724]=ag(ag(0,0)|0,0)|0,s[11725]=ag(ag(8,0)|0,0)|0,s[11726]=ag(ag(0,0)|0,0)|0,s[11727]=ag(ag(8,0)|0,0)|0,s[11728]=ag(ag(0,0)|0,0)|0,s[11729]=ag(ag(0,0)|0,32)|0,s[11730]=ag(ag(0,0)|0,32)|0,s[11740]=1)}function gKe(){return 1572}function Gce(A,_,S,F,Y){A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0;var H=0,oe=0,Se=0,He=0,Ct=0,At=0;H=T,T=T+32|0,At=H+16|0,Ct=H+12|0,He=H+8|0,Se=H+4|0,oe=H,o[At>>2]=A,o[Ct>>2]=_,o[He>>2]=S,o[Se>>2]=F,o[oe>>2]=Y,xee()|0,ANt(10656,At,Ct,He,Se,oe),T=H}function ANt(A,_,S,F,Y,H){A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0,H=H|0;var oe=0;oe=xu(24)|0,gZ(oe+4|0,o[_>>2]|0,o[S>>2]|0,o[F>>2]|0,o[Y>>2]|0,o[H>>2]|0),o[oe>>2]=o[A>>2],o[A>>2]=oe}function U3(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0,Is=0,ji=0,Ei=0,bo=0,ro=0,ca=0;if(ca=T,T=T+32|0,ji=ca+20|0,Ei=ca+8|0,bo=ca+4|0,ro=ca,_=o[_>>2]|0,_|0){Is=ji+4|0,He=ji+8|0,Ct=Ei+4|0,At=Ei+8|0,Ut=Ei+8|0,cn=ji+8|0;do{if(oe=_+4|0,Se=Fce(oe)|0,Se|0){if(Y=Zce(Se)|0,o[ji>>2]=0,o[Is>>2]=0,o[He>>2]=0,F=(i6(Se)|0)+1|0,yDe(ji,F),F|0)for(;F=F+-1|0,QS(Ei,o[Y>>2]|0),H=o[Is>>2]|0,H>>>0<(o[cn>>2]|0)>>>0?(o[H>>2]=o[Ei>>2],o[Is>>2]=(o[Is>>2]|0)+4):kee(ji,Ei),F;)Y=Y+4|0;F=cV(Se)|0,o[Ei>>2]=0,o[Ct>>2]=0,o[At>>2]=0;e:do if(o[F>>2]|0)for(Y=0,H=0;;){if((Y|0)==(H|0)?Lce(Ei,F):(o[Y>>2]=o[F>>2],o[Ct>>2]=(o[Ct>>2]|0)+4),F=F+4|0,!(o[F>>2]|0))break e;Y=o[Ct>>2]|0,H=o[Ut>>2]|0}while(!1);o[bo>>2]=k1(oe)|0,o[ro>>2]=Jr(Se)|0,dNt(S,A,bo,ro,ji,Ei),bDe(Ei),G1(ji)}_=o[_>>2]|0}while(_|0)}T=ca}function Fce(A){return A=A|0,o[A+12>>2]|0}function Zce(A){return A=A|0,o[A+12>>2]|0}function i6(A){return A=A|0,o[A+16>>2]|0}function yDe(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0;Y=T,T=T+32|0,S=Y,F=o[A>>2]|0,(o[A+8>>2]|0)-F>>2>>>0<_>>>0&&(AKe(S,_,(o[A+4>>2]|0)-F>>2,A+8|0),Pce(A,S),Y0(S)),T=Y}function kee(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0;if(oe=T,T=T+32|0,S=oe,F=A+4|0,Y=((o[F>>2]|0)-(o[A>>2]|0)>>2)+1|0,H=PQ(A)|0,H>>>0>>0)RI(A);else{Se=o[A>>2]|0,Ct=(o[A+8>>2]|0)-Se|0,He=Ct>>1,AKe(S,Ct>>2>>>0>>1>>>0?He>>>0>>0?Y:He:H,(o[F>>2]|0)-Se>>2,A+8|0),H=S+8|0,o[o[H>>2]>>2]=o[_>>2],o[H>>2]=(o[H>>2]|0)+4,Pce(A,S),Y0(S),T=oe;return}}function cV(A){return A=A|0,o[A+8>>2]|0}function Lce(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0;if(oe=T,T=T+32|0,S=oe,F=A+4|0,Y=((o[F>>2]|0)-(o[A>>2]|0)>>2)+1|0,H=aI(A)|0,H>>>0>>0)RI(A);else{Se=o[A>>2]|0,Ct=(o[A+8>>2]|0)-Se|0,He=Ct>>1,Wce(S,Ct>>2>>>0>>1>>>0?He>>>0>>0?Y:He:H,(o[F>>2]|0)-Se>>2,A+8|0),H=S+8|0,o[o[H>>2]>>2]=o[_>>2],o[H>>2]=(o[H>>2]|0)+4,OQ(A,S),l6(S),T=oe;return}}function k1(A){return A=A|0,o[A>>2]|0}function dNt(A,_,S,F,Y,H){A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0,H=H|0,F1(A,_,S,F,Y,H)}function bDe(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-4-F|0)>>>2)<<2)),Va(S))}function G1(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-4-F|0)>>>2)<<2)),Va(S))}function F1(A,_,S,F,Y,H){A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0,H=H|0;var oe=0,Se=0,He=0,Ct=0,At=0,Ut=0;oe=T,T=T+48|0,At=oe+40|0,Se=oe+32|0,Ut=oe+24|0,He=oe+12|0,Ct=oe,YS(Se),A=AA(A)|0,o[Ut>>2]=o[_>>2],S=o[S>>2]|0,F=o[F>>2]|0,s6(He,Y),TZ(Ct,H),o[At>>2]=o[Ut>>2],$R(A,At,S,F,He,Ct),bDe(Ct),G1(He),D2(Se),T=oe}function s6(A,_){A=A|0,_=_|0;var S=0,F=0;o[A>>2]=0,o[A+4>>2]=0,o[A+8>>2]=0,S=_+4|0,F=(o[S>>2]|0)-(o[_>>2]|0)>>2,F|0&&(L1(A,F),dh(A,o[_>>2]|0,o[S>>2]|0,F))}function TZ(A,_){A=A|0,_=_|0;var S=0,F=0;o[A>>2]=0,o[A+4>>2]=0,o[A+8>>2]=0,S=_+4|0,F=(o[S>>2]|0)-(o[_>>2]|0)>>2,F|0&&(Jme(A,F),RB(A,o[_>>2]|0,o[S>>2]|0,F))}function $R(A,_,S,F,Y,H){A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0,H=H|0;var oe=0,Se=0,He=0,Ct=0,At=0,Ut=0;oe=T,T=T+32|0,At=oe+28|0,Ut=oe+24|0,Se=oe+12|0,He=oe,Ct=Iy(OS()|0)|0,o[Ut>>2]=o[_>>2],o[At>>2]=o[Ut>>2],_=zX(At)|0,S=Vce(S)|0,F=NZ(F)|0,o[Se>>2]=o[Y>>2],At=Y+4|0,o[Se+4>>2]=o[At>>2],Ut=Y+8|0,o[Se+8>>2]=o[Ut>>2],o[Ut>>2]=0,o[At>>2]=0,o[Y>>2]=0,Y=o6(Se)|0,o[He>>2]=o[H>>2],At=H+4|0,o[He+4>>2]=o[At>>2],Ut=H+8|0,o[He+8>>2]=o[Ut>>2],o[Ut>>2]=0,o[At>>2]=0,o[H>>2]=0,xl(0,Ct|0,A|0,_|0,S|0,F|0,Y|0,EDe(He)|0)|0,bDe(He),G1(Se),T=oe}function OS(){var A=0;return s[7968]|0||(c6(10708),A=7968,o[A>>2]=1,o[A+4>>2]=0),10708}function zX(A){return A=A|0,vDe(A)|0}function Vce(A){return A=A|0,a6(A)|0}function NZ(A){return A=A|0,IX(A)|0}function o6(A){return A=A|0,Yme(A)|0}function EDe(A){return A=A|0,BDe(A)|0}function BDe(A){A=A|0;var _=0,S=0,F=0;if(F=(o[A+4>>2]|0)-(o[A>>2]|0)|0,S=F>>2,F=CN(F+4|0)|0,o[F>>2]=S,S|0){_=0;do o[F+4+(_<<2)>>2]=a6(o[(o[A>>2]|0)+(_<<2)>>2]|0)|0,_=_+1|0;while((_|0)!=(S|0))}return F|0}function a6(A){return A=A|0,A|0}function Yme(A){A=A|0;var _=0,S=0,F=0;if(F=(o[A+4>>2]|0)-(o[A>>2]|0)|0,S=F>>2,F=CN(F+4|0)|0,o[F>>2]=S,S|0){_=0;do o[F+4+(_<<2)>>2]=vDe((o[A>>2]|0)+(_<<2)|0)|0,_=_+1|0;while((_|0)!=(S|0))}return F|0}function vDe(A){A=A|0;var _=0,S=0,F=0,Y=0;return Y=T,T=T+32|0,_=Y+12|0,S=Y,F=Uu(Hme()|0)|0,F?(NE(_,F),Cy(S,_),yhe(A,S),A=y2(_)|0):A=Z1(A)|0,T=Y,A|0}function Hme(){var A=0;return s[7960]|0||(Xme(10664),au(25,10664,U|0)|0,A=7960,o[A>>2]=1,o[A+4>>2]=0),10664}function Z1(A){A=A|0;var _=0,S=0,F=0,Y=0,H=0,oe=0,Se=0;return S=T,T=T+16|0,Y=S+4|0,oe=S,F=CN(8)|0,_=F,Se=xu(4)|0,o[Se>>2]=o[A>>2],H=_+4|0,o[H>>2]=Se,A=xu(8)|0,H=o[H>>2]|0,o[oe>>2]=0,o[Y>>2]=o[oe>>2],qX(A,H,Y),o[F>>2]=A,T=S,_|0}function qX(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,S=xu(16)|0,o[S+4>>2]=0,o[S+8>>2]=0,o[S>>2]=1656,o[S+12>>2]=_,o[A+4>>2]=S}function SDe(A){A=A|0,o4(A),Va(A)}function wDe(A){A=A|0,A=o[A+12>>2]|0,A|0&&Va(A)}function pNt(A){A=A|0,Va(A)}function Xme(A){A=A|0,Kc(A)}function c6(A){A=A|0,xm(A,Gee()|0,5)}function Gee(){return 1676}function Jme(A,_){A=A|0,_=_|0;var S=0;if((aI(A)|0)>>>0<_>>>0&&RI(A),_>>>0>1073741823)Bo();else{S=xu(_<<2)|0,o[A+4>>2]=S,o[A>>2]=S,o[A+8>>2]=S+(_<<2);return}}function RB(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,F=A+4|0,A=S-_|0,(A|0)>0&&($d(o[F>>2]|0,_|0,A|0)|0,o[F>>2]=(o[F>>2]|0)+(A>>>2<<2))}function aI(A){return A=A|0,1073741823}function L1(A,_){A=A|0,_=_|0;var S=0;if((PQ(A)|0)>>>0<_>>>0&&RI(A),_>>>0>1073741823)Bo();else{S=xu(_<<2)|0,o[A+4>>2]=S,o[A>>2]=S,o[A+8>>2]=S+(_<<2);return}}function dh(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,F=A+4|0,A=S-_|0,(A|0)>0&&($d(o[F>>2]|0,_|0,A|0)|0,o[F>>2]=(o[F>>2]|0)+(A>>>2<<2))}function PQ(A){return A=A|0,1073741823}function Wce(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>1073741823)Bo();else{Y=xu(_<<2)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S<<2)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_<<2)}function OQ(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(0-(Y>>2)<<2)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function l6(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-4-_|0)>>>2)<<2)),A=o[A>>2]|0,A|0&&Va(A)}function AKe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>1073741823)Bo();else{Y=xu(_<<2)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S<<2)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_<<2)}function Pce(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(0-(Y>>2)<<2)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function Y0(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-4-_|0)>>>2)<<2)),A=o[A>>2]|0,A|0&&Va(A)}function pN(A,_,S,F,Y){A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0;var H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0,Is=0,ji=0,Ei=0;if(Ei=T,T=T+32|0,At=Ei+20|0,Ut=Ei+12|0,Ct=Ei+16|0,cn=Ei+4|0,Is=Ei,ji=Ei+8|0,Se=Qme()|0,H=o[Se>>2]|0,oe=o[H>>2]|0,oe|0)for(He=o[Se+8>>2]|0,Se=o[Se+4>>2]|0;QS(At,oe),u6(A,At,Se,He),H=H+4|0,oe=o[H>>2]|0,oe;)He=He+1|0,Se=Se+1|0;if(H=gKe()|0,oe=o[H>>2]|0,oe|0)do QS(At,oe),o[Ut>>2]=o[H+4>>2],TDe(_,At,Ut),H=H+8|0,oe=o[H>>2]|0;while(oe|0);if(H=o[(kv()|0)>>2]|0,H|0)do _=o[H+4>>2]|0,QS(At,o[(DB(_)|0)>>2]|0),o[Ut>>2]=r6(_)|0,sa(S,At,Ut),H=o[H>>2]|0;while(H|0);if(QS(Ct,0),H=xee()|0,o[At>>2]=o[Ct>>2],U3(At,H,Y),H=o[(kv()|0)>>2]|0,H|0){A=At+4|0,_=At+8|0,S=At+8|0;do{if(He=o[H+4>>2]|0,QS(Ut,o[(DB(He)|0)>>2]|0),Oce(cn,NDe(He)|0),oe=o[cn>>2]|0,oe|0){o[At>>2]=0,o[A>>2]=0,o[_>>2]=0;do QS(Is,o[(DB(o[oe+4>>2]|0)|0)>>2]|0),Se=o[A>>2]|0,Se>>>0<(o[S>>2]|0)>>>0?(o[Se>>2]=o[Is>>2],o[A>>2]=(o[A>>2]|0)+4):kee(At,Is),oe=o[oe>>2]|0;while(oe|0);RDe(F,Ut,At),G1(At)}o[ji>>2]=o[Ut>>2],Ct=Mce(He)|0,o[At>>2]=o[ji>>2],U3(At,Ct,Y),hr(cn),H=o[H>>2]|0}while(H|0)}T=Ei}function u6(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,mNt(A,_,S,F)}function TDe(A,_,S){A=A|0,_=_|0,S=S|0,xDe(A,_,S)}function DB(A){return A=A|0,A|0}function sa(A,_,S){A=A|0,_=_|0,S=S|0,DDe(A,_,S)}function NDe(A){return A=A|0,A+16|0}function Oce(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0;if(H=T,T=T+16|0,Y=H+8|0,S=H,o[A>>2]=0,F=o[_>>2]|0,o[Y>>2]=F,o[S>>2]=A,S=Qce(S)|0,F|0){if(F=xu(12)|0,oe=(QQ(Y)|0)+4|0,A=o[oe+4>>2]|0,_=F+4|0,o[_>>2]=o[oe>>2],o[_+4>>2]=A,_=o[o[Y>>2]>>2]|0,o[Y>>2]=_,!_)A=F;else for(_=F;A=xu(12)|0,He=(QQ(Y)|0)+4|0,Se=o[He+4>>2]|0,oe=A+4|0,o[oe>>2]=o[He>>2],o[oe+4>>2]=Se,o[_>>2]=A,oe=o[o[Y>>2]>>2]|0,o[Y>>2]=oe,oe;)_=A;o[A>>2]=o[S>>2],o[S>>2]=F}T=H}function RDe(A,_,S){A=A|0,_=_|0,S=S|0,R2(A,_,S)}function Mce(A){return A=A|0,A+24|0}function R2(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0;F=T,T=T+32|0,oe=F+24|0,Y=F+16|0,Se=F+12|0,H=F,YS(Y),A=AA(A)|0,o[Se>>2]=o[_>>2],s6(H,S),o[oe>>2]=o[Se>>2],MQ(A,oe,H),G1(H),D2(Y),T=F}function MQ(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0;F=T,T=T+32|0,oe=F+16|0,Se=F+12|0,Y=F,H=Iy(Ume()|0)|0,o[Se>>2]=o[_>>2],o[oe>>2]=o[Se>>2],_=zX(oe)|0,o[Y>>2]=o[S>>2],oe=S+4|0,o[Y+4>>2]=o[oe>>2],Se=S+8|0,o[Y+8>>2]=o[Se>>2],o[Se>>2]=0,o[oe>>2]=0,o[S>>2]=0,ts(0,H|0,A|0,_|0,o6(Y)|0)|0,G1(Y),T=F}function Ume(){var A=0;return s[7976]|0||(Cp(10720),A=7976,o[A>>2]=1,o[A+4>>2]=0),10720}function Cp(A){A=A|0,xm(A,Kme()|0,2)}function Kme(){return 1732}function Qce(A){return A=A|0,o[A>>2]|0}function QQ(A){return A=A|0,o[A>>2]|0}function DDe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;F=T,T=T+32|0,H=F+16|0,Y=F+8|0,oe=F,YS(Y),A=AA(A)|0,o[oe>>2]=o[_>>2],S=o[S>>2]|0,o[H>>2]=o[oe>>2],YQ(A,H,S),D2(Y),T=F}function YQ(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;F=T,T=T+16|0,H=F+4|0,oe=F,Y=Iy(fNt()|0)|0,o[oe>>2]=o[_>>2],o[H>>2]=o[oe>>2],_=zX(H)|0,ts(0,Y|0,A|0,_|0,Vce(S)|0)|0,T=F}function fNt(){var A=0;return s[7984]|0||(INt(10732),A=7984,o[A>>2]=1,o[A+4>>2]=0),10732}function INt(A){A=A|0,xm(A,CNt()|0,2)}function CNt(){return 1744}function xDe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;F=T,T=T+32|0,H=F+16|0,Y=F+8|0,oe=F,YS(Y),A=AA(A)|0,o[oe>>2]=o[_>>2],S=o[S>>2]|0,o[H>>2]=o[oe>>2],YQ(A,H,S),D2(Y),T=F}function mNt(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0;Y=T,T=T+32|0,oe=Y+16|0,H=Y+8|0,Se=Y,YS(H),A=AA(A)|0,o[Se>>2]=o[_>>2],S=s[S>>0]|0,F=s[F>>0]|0,o[oe>>2]=o[Se>>2],hNt(A,oe,S,F),D2(H),T=Y}function hNt(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0;Y=T,T=T+16|0,oe=Y+4|0,Se=Y,H=Iy(_Nt()|0)|0,o[Se>>2]=o[_>>2],o[oe>>2]=o[Se>>2],_=zX(oe)|0,S=xC(S)|0,bA(0,H|0,A|0,_|0,S|0,xC(F)|0)|0,T=Y}function _Nt(){var A=0;return s[7992]|0||(pKe(10744),A=7992,o[A>>2]=1,o[A+4>>2]=0),10744}function xC(A){return A=A|0,dKe(A)|0}function dKe(A){return A=A|0,A&255|0}function pKe(A){A=A|0,xm(A,kDe()|0,3)}function kDe(){return 1756}function fN(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0;switch(cn=T,T=T+32|0,Se=cn+8|0,He=cn+4|0,Ct=cn+20|0,At=cn,AQ(A,0),F=_he(_)|0,o[Se>>2]=0,Ut=Se+4|0,o[Ut>>2]=0,o[Se+8>>2]=0,F<<24>>24){case 0:{s[Ct>>0]=0,Yce(He,S,Ct),Fee(A,He)|0,qh(He);break}case 8:{Ut=fle(_)|0,s[Ct>>0]=8,QS(At,o[Ut+4>>2]|0),GDe(He,S,Ct,At,Ut+8|0),Fee(A,He)|0,qh(He);break}case 9:{if(H=fle(_)|0,_=o[H+4>>2]|0,_|0)for(oe=Se+8|0,Y=H+12|0;_=_+-1|0,QS(He,o[Y>>2]|0),F=o[Ut>>2]|0,F>>>0<(o[oe>>2]|0)>>>0?(o[F>>2]=o[He>>2],o[Ut>>2]=(o[Ut>>2]|0)+4):kee(Se,He),_;)Y=Y+4|0;s[Ct>>0]=9,QS(At,o[H+8>>2]|0),eu(He,S,Ct,At,Se),Fee(A,He)|0,qh(He);break}default:Ut=fle(_)|0,s[Ct>>0]=F,QS(At,o[Ut+4>>2]|0),HQ(He,S,Ct,At),Fee(A,He)|0,qh(He)}G1(Se),T=cn}function Yce(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0;F=T,T=T+16|0,Y=F,YS(Y),_=AA(_)|0,ENt(A,_,s[S>>0]|0),D2(Y),T=F}function Fee(A,_){A=A|0,_=_|0;var S=0;return S=o[A>>2]|0,S|0&&Os(S|0),o[A>>2]=o[_>>2],o[_>>2]=0,A|0}function GDe(A,_,S,F,Y){A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0;var H=0,oe=0,Se=0,He=0;H=T,T=T+32|0,Se=H+16|0,oe=H+8|0,He=H,YS(oe),_=AA(_)|0,S=s[S>>0]|0,o[He>>2]=o[F>>2],Y=o[Y>>2]|0,o[Se>>2]=o[He>>2],jme(A,_,S,Se,Y),D2(oe),T=H}function eu(A,_,S,F,Y){A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0;var H=0,oe=0,Se=0,He=0,Ct=0;H=T,T=T+32|0,He=H+24|0,oe=H+16|0,Ct=H+12|0,Se=H,YS(oe),_=AA(_)|0,S=s[S>>0]|0,o[Ct>>2]=o[F>>2],s6(Se,Y),o[He>>2]=o[Ct>>2],ff(A,_,S,He,Se),G1(Se),D2(oe),T=H}function HQ(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0;Y=T,T=T+32|0,oe=Y+16|0,H=Y+8|0,Se=Y,YS(H),_=AA(_)|0,S=s[S>>0]|0,o[Se>>2]=o[F>>2],o[oe>>2]=o[Se>>2],yNt(A,_,S,oe),D2(H),T=Y}function yNt(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0,oe=0,Se=0;Y=T,T=T+16|0,H=Y+4|0,Se=Y,oe=Iy(fKe()|0)|0,S=xC(S)|0,o[Se>>2]=o[F>>2],o[H>>2]=o[Se>>2],RZ(A,ts(0,oe|0,_|0,S|0,zX(H)|0)|0),T=Y}function fKe(){var A=0;return s[8e3]|0||(Im(10756),A=8e3,o[A>>2]=1,o[A+4>>2]=0),10756}function RZ(A,_){A=A|0,_=_|0,AQ(A,_)}function Im(A){A=A|0,xm(A,XQ()|0,2)}function XQ(){return 1772}function ff(A,_,S,F,Y){A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0;var H=0,oe=0,Se=0,He=0,Ct=0;H=T,T=T+32|0,He=H+16|0,Ct=H+12|0,oe=H,Se=Iy(Hce()|0)|0,S=xC(S)|0,o[Ct>>2]=o[F>>2],o[He>>2]=o[Ct>>2],F=zX(He)|0,o[oe>>2]=o[Y>>2],He=Y+4|0,o[oe+4>>2]=o[He>>2],Ct=Y+8|0,o[oe+8>>2]=o[Ct>>2],o[Ct>>2]=0,o[He>>2]=0,o[Y>>2]=0,RZ(A,bA(0,Se|0,_|0,S|0,F|0,o6(oe)|0)|0),G1(oe),T=H}function Hce(){var A=0;return s[8008]|0||(su(10768),A=8008,o[A>>2]=1,o[A+4>>2]=0),10768}function su(A){A=A|0,xm(A,FDe()|0,3)}function FDe(){return 1784}function jme(A,_,S,F,Y){A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0;var H=0,oe=0,Se=0,He=0;H=T,T=T+16|0,Se=H+4|0,He=H,oe=Iy(g6()|0)|0,S=xC(S)|0,o[He>>2]=o[F>>2],o[Se>>2]=o[He>>2],F=zX(Se)|0,RZ(A,bA(0,oe|0,_|0,S|0,F|0,NZ(Y)|0)|0),T=H}function g6(){var A=0;return s[8016]|0||(Xce(10780),A=8016,o[A>>2]=1,o[A+4>>2]=0),10780}function Xce(A){A=A|0,xm(A,bNt()|0,3)}function bNt(){return 1800}function ENt(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=Iy(BNt()|0)|0,RZ(A,Hi(0,F|0,_|0,xC(S)|0)|0)}function BNt(){var A=0;return s[8024]|0||(IKe(10792),A=8024,o[A>>2]=1,o[A+4>>2]=0),10792}function IKe(A){A=A|0,xm(A,CKe()|0,1)}function CKe(){return 1816}function Jce(){zme(),qme(),vNt()}function zme(){o[2702]=vle(65536)|0}function qme(){Lee(10856)}function vNt(){Zee(10816)}function Zee(A){A=A|0,mKe(A,5044),SNt(A)|0}function mKe(A,_){A=A|0,_=_|0;var S=0;S=Hme()|0,o[A>>2]=S,lV(S,_),WQ(o[A>>2]|0)}function SNt(A){A=A|0;var _=0;return _=o[A>>2]|0,mG(_,wNt()|0),A|0}function wNt(){var A=0;return s[8032]|0||(A6(10820),au(64,10820,U|0)|0,A=8032,o[A>>2]=1,o[A+4>>2]=0),Jr(10820)|0||A6(10820),10820}function A6(A){A=A|0,iA(A),hG(A,25)}function ZDr(A){A=A|0,kC(A+24|0)}function kC(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),Va(S))}function iA(A){A=A|0;var _=0;_=Ss()|0,js(A,5,18,_,IN()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function R_(A,_){A=A|0,_=_|0,s0(A,_)}function s0(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0;S=T,T=T+16|0,F=S,Y=S+4|0,Sv(Y,_),o[F>>2]=IZ(Y,_)|0,ZDe(A,F),T=S}function ZDe(A,_){A=A|0,_=_|0,ZE(A+4|0,o[_>>2]|0),s[A+8>>0]=1}function ZE(A,_){A=A|0,_=_|0,o[A>>2]=_}function IN(){return 1824}function JQ(A){return A=A|0,$me(A)|0}function $me(A){A=A|0;var _=0,S=0,F=0,Y=0,H=0,oe=0,Se=0;return S=T,T=T+16|0,Y=S+4|0,oe=S,F=CN(8)|0,_=F,Se=xu(4)|0,Sv(Y,A),ZE(Se,IZ(Y,A)|0),H=_+4|0,o[H>>2]=Se,A=xu(8)|0,H=o[H>>2]|0,o[oe>>2]=0,o[Y>>2]=o[oe>>2],qX(A,H,Y),o[F>>2]=A,T=S,_|0}function CN(A){A=A|0;var _=0,S=0;return A=A+7&-8,A>>>0<=32768&&(_=o[2701]|0,A>>>0<=(65536-_|0)>>>0)?(S=(o[2702]|0)+_|0,o[2701]=_+A,A=S):(A=vle(A+8|0)|0,o[A>>2]=o[2703],o[2703]=A,A=A+8|0),A|0}function lV(A,_){A=A|0,_=_|0,o[A>>2]=LE()|0,o[A+4>>2]=uV()|0,o[A+12>>2]=_,o[A+8>>2]=d6()|0,o[A+32>>2]=9}function LE(){return 11744}function uV(){return 1832}function d6(){return XX()|0}function Uce(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,(IG(F,896)|0)==512?S|0&&(bG(S),Va(S)):_|0&&Va(_)}function bG(A){A=A|0,A=o[A+4>>2]|0,A|0&&iY(A)}function Lee(A){A=A|0,Kce(A,5052),jce(A)|0,LDe(A,5058,26)|0,VDe(A,5069,1)|0,UQ(A,5077,10)|0,D_(A,5087,19)|0,ehe(A,5094,27)|0}function Kce(A,_){A=A|0,_=_|0;var S=0;S=dle()|0,o[A>>2]=S,SKe(S,_),WQ(o[A>>2]|0)}function jce(A){A=A|0;var _=0;return _=o[A>>2]|0,mG(_,vKe()|0),A|0}function LDe(A,_,S){return A=A|0,_=_|0,S=S|0,fhe(A,wp(_)|0,S,0),A|0}function VDe(A,_,S){return A=A|0,_=_|0,S=S|0,zDe(A,wp(_)|0,S,0),A|0}function UQ(A,_,S){return A=A|0,_=_|0,S=S|0,f6(A,wp(_)|0,S,0),A|0}function D_(A,_,S){return A=A|0,_=_|0,S=S|0,YDe(A,wp(_)|0,S,0),A|0}function Vee(A,_){A=A|0,_=_|0;var S=0,F=0;e:for(;;){for(S=o[2703]|0;;){if((S|0)==(_|0))break e;if(F=o[S>>2]|0,o[2703]=F,!S)S=F;else break}Va(S)}o[2701]=A}function ehe(A,_,S){return A=A|0,_=_|0,S=S|0,WDe(A,wp(_)|0,S,0),A|0}function WDe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0;H=o[A>>2]|0,Y=zce()|0,A=PDe(S)|0,vf(H,_,Y,A,qce(S,F)|0,F)}function zce(){var A=0,_=0;if(s[8040]|0||(ODe(10860),au(65,10860,U|0)|0,_=8040,o[_>>2]=1,o[_+4>>2]=0),!(Jr(10860)|0)){A=10860,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));ODe(10860)}return 10860}function PDe(A){return A=A|0,A|0}function qce(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0;return Se=T,T=T+16|0,Y=Se,H=Se+4|0,o[Y>>2]=A,He=zce()|0,oe=He+24|0,_=ag(_,4)|0,o[H>>2]=_,S=He+28|0,F=o[S>>2]|0,F>>>0<(o[He+32>>2]|0)>>>0?(Wee(F,A,_),_=(o[S>>2]|0)+8|0,o[S>>2]=_):($ce(oe,Y,H),_=o[S>>2]|0),T=Se,(_-(o[oe>>2]|0)>>3)+-1|0}function Wee(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,o[A+4>>2]=S}function $ce(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;if(Se=T,T=T+32|0,Y=Se,H=A+4|0,oe=((o[H>>2]|0)-(o[A>>2]|0)>>3)+1|0,F=ele(A)|0,F>>>0>>0)RI(A);else{He=o[A>>2]|0,At=(o[A+8>>2]|0)-He|0,Ct=At>>2,the(Y,At>>3>>>0>>1>>>0?Ct>>>0>>0?oe:Ct:F,(o[H>>2]|0)-He>>3,A+8|0),oe=Y+8|0,Wee(o[oe>>2]|0,o[_>>2]|0,o[S>>2]|0),o[oe>>2]=(o[oe>>2]|0)+8,rhe(A,Y),TNt(Y),T=Se;return}}function ele(A){return A=A|0,536870911}function the(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>536870911)Bo();else{Y=xu(_<<3)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S<<3)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_<<3)}function rhe(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(0-(Y>>3)<<3)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function TNt(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-8-_|0)>>>3)<<3)),A=o[A>>2]|0,A|0&&Va(A)}function ODe(A){A=A|0,MDe(A)}function NNt(A){A=A|0,nhe(A+24|0)}function nhe(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),Va(S))}function MDe(A){A=A|0;var _=0;_=Ss()|0,js(A,1,11,_,hKe()|0,2),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function hKe(){return 1840}function RNt(A,_,S){A=A|0,_=_|0,S=S|0,QDe(o[(DNt(A)|0)>>2]|0,_,S)}function DNt(A){return A=A|0,(o[(zce()|0)+24>>2]|0)+(A<<3)|0}function QDe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0;F=T,T=T+16|0,H=F+1|0,Y=F,Sv(H,_),_=IZ(H,_)|0,Sv(Y,S),S=IZ(Y,S)|0,nT[A&31](_,S),T=F}function YDe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0;H=o[A>>2]|0,Y=ihe()|0,A=_Ke(S)|0,vf(H,_,Y,A,yKe(S,F)|0,F)}function ihe(){var A=0,_=0;if(s[8048]|0||(ahe(10896),au(66,10896,U|0)|0,_=8048,o[_>>2]=1,o[_+4>>2]=0),!(Jr(10896)|0)){A=10896,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));ahe(10896)}return 10896}function _Ke(A){return A=A|0,A|0}function yKe(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0;return Se=T,T=T+16|0,Y=Se,H=Se+4|0,o[Y>>2]=A,He=ihe()|0,oe=He+24|0,_=ag(_,4)|0,o[H>>2]=_,S=He+28|0,F=o[S>>2]|0,F>>>0<(o[He+32>>2]|0)>>>0?(she(F,A,_),_=(o[S>>2]|0)+8|0,o[S>>2]=_):(p6(oe,Y,H),_=o[S>>2]|0),T=Se,(_-(o[oe>>2]|0)>>3)+-1|0}function she(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,o[A+4>>2]=S}function p6(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;if(Se=T,T=T+32|0,Y=Se,H=A+4|0,oe=((o[H>>2]|0)-(o[A>>2]|0)>>3)+1|0,F=tle(A)|0,F>>>0>>0)RI(A);else{He=o[A>>2]|0,At=(o[A+8>>2]|0)-He|0,Ct=At>>2,ohe(Y,At>>3>>>0>>1>>>0?Ct>>>0>>0?oe:Ct:F,(o[H>>2]|0)-He>>3,A+8|0),oe=Y+8|0,she(o[oe>>2]|0,o[_>>2]|0,o[S>>2]|0),o[oe>>2]=(o[oe>>2]|0)+8,HDe(A,Y),rle(Y),T=Se;return}}function tle(A){return A=A|0,536870911}function ohe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>536870911)Bo();else{Y=xu(_<<3)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S<<3)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_<<3)}function HDe(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(0-(Y>>3)<<3)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function rle(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-8-_|0)>>>3)<<3)),A=o[A>>2]|0,A|0&&Va(A)}function ahe(A){A=A|0,che(A)}function nle(A){A=A|0,EG(A+24|0)}function EG(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),Va(S))}function che(A){A=A|0;var _=0;_=Ss()|0,js(A,1,11,_,xNt()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function xNt(){return 1852}function kNt(A,_){return A=A|0,_=_|0,sle(o[(ile(A)|0)>>2]|0,_)|0}function ile(A){return A=A|0,(o[(ihe()|0)+24>>2]|0)+(A<<3)|0}function sle(A,_){A=A|0,_=_|0;var S=0,F=0;return S=T,T=T+16|0,F=S,Sv(F,_),_=IZ(F,_)|0,_=IX(lY[A&31](_)|0)|0,T=S,_|0}function f6(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0;H=o[A>>2]|0,Y=Pee()|0,A=GNt(S)|0,vf(H,_,Y,A,FNt(S,F)|0,F)}function Pee(){var A=0,_=0;if(s[8056]|0||(Oee(10932),au(67,10932,U|0)|0,_=8056,o[_>>2]=1,o[_+4>>2]=0),!(Jr(10932)|0)){A=10932,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));Oee(10932)}return 10932}function GNt(A){return A=A|0,A|0}function FNt(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0;return Se=T,T=T+16|0,Y=Se,H=Se+4|0,o[Y>>2]=A,He=Pee()|0,oe=He+24|0,_=ag(_,4)|0,o[H>>2]=_,S=He+28|0,F=o[S>>2]|0,F>>>0<(o[He+32>>2]|0)>>>0?(lhe(F,A,_),_=(o[S>>2]|0)+8|0,o[S>>2]=_):($X(oe,Y,H),_=o[S>>2]|0),T=Se,(_-(o[oe>>2]|0)>>3)+-1|0}function lhe(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,o[A+4>>2]=S}function $X(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;if(Se=T,T=T+32|0,Y=Se,H=A+4|0,oe=((o[H>>2]|0)-(o[A>>2]|0)>>3)+1|0,F=uhe(A)|0,F>>>0>>0)RI(A);else{He=o[A>>2]|0,At=(o[A+8>>2]|0)-He|0,Ct=At>>2,ZNt(Y,At>>3>>>0>>1>>>0?Ct>>>0>>0?oe:Ct:F,(o[H>>2]|0)-He>>3,A+8|0),oe=Y+8|0,lhe(o[oe>>2]|0,o[_>>2]|0,o[S>>2]|0),o[oe>>2]=(o[oe>>2]|0)+8,ole(A,Y),ale(Y),T=Se;return}}function uhe(A){return A=A|0,536870911}function ZNt(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>536870911)Bo();else{Y=xu(_<<3)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S<<3)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_<<3)}function ole(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(0-(Y>>3)<<3)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function ale(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-8-_|0)>>>3)<<3)),A=o[A>>2]|0,A|0&&Va(A)}function Oee(A){A=A|0,LNt(A)}function I6(A){A=A|0,Mee(A+24|0)}function Mee(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),Va(S))}function LNt(A){A=A|0;var _=0;_=Ss()|0,js(A,1,7,_,mN()|0,2),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function mN(){return 1860}function KQ(A,_,S){return A=A|0,_=_|0,S=S|0,JDe(o[(XDe(A)|0)>>2]|0,_,S)|0}function XDe(A){return A=A|0,(o[(Pee()|0)+24>>2]|0)+(A<<3)|0}function JDe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0;return F=T,T=T+32|0,oe=F+12|0,H=F+8|0,Se=F,He=F+16|0,Y=F+4|0,UDe(He,_),VNt(Se,He,_),R1(Y,S),S=Kw(Y,S)|0,o[oe>>2]=o[Se>>2],$p[A&15](H,oe,S),S=KDe(H)|0,qh(H),$y(Y),T=F,S|0}function UDe(A,_){A=A|0,_=_|0}function VNt(A,_,S){A=A|0,_=_|0,S=S|0,bKe(A,S)}function KDe(A){return A=A|0,AA(A)|0}function bKe(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0;Y=T,T=T+16|0,S=Y,F=_,F&1?(Qee(S,0),cf(F|0,S|0)|0,jDe(A,S),o0(S)):o[A>>2]=o[_>>2],T=Y}function Qee(A,_){A=A|0,_=_|0,Th(A,_),o[A+4>>2]=0,s[A+8>>0]=0}function jDe(A,_){A=A|0,_=_|0,o[A>>2]=o[_+4>>2]}function o0(A){A=A|0,s[A+8>>0]=0}function zDe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0;H=o[A>>2]|0,Y=e4()|0,A=BG(S)|0,vf(H,_,Y,A,t4(S,F)|0,F)}function e4(){var A=0,_=0;if(s[8064]|0||(hN(10968),au(68,10968,U|0)|0,_=8064,o[_>>2]=1,o[_+4>>2]=0),!(Jr(10968)|0)){A=10968,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));hN(10968)}return 10968}function BG(A){return A=A|0,A|0}function t4(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0;return Se=T,T=T+16|0,Y=Se,H=Se+4|0,o[Y>>2]=A,He=e4()|0,oe=He+24|0,_=ag(_,4)|0,o[H>>2]=_,S=He+28|0,F=o[S>>2]|0,F>>>0<(o[He+32>>2]|0)>>>0?(Yee(F,A,_),_=(o[S>>2]|0)+8|0,o[S>>2]=_):(Gv(oe,Y,H),_=o[S>>2]|0),T=Se,(_-(o[oe>>2]|0)>>3)+-1|0}function Yee(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,o[A+4>>2]=S}function Gv(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;if(Se=T,T=T+32|0,Y=Se,H=A+4|0,oe=((o[H>>2]|0)-(o[A>>2]|0)>>3)+1|0,F=cle(A)|0,F>>>0>>0)RI(A);else{He=o[A>>2]|0,At=(o[A+8>>2]|0)-He|0,Ct=At>>2,C6(Y,At>>3>>>0>>1>>>0?Ct>>>0>>0?oe:Ct:F,(o[H>>2]|0)-He>>3,A+8|0),oe=Y+8|0,Yee(o[oe>>2]|0,o[_>>2]|0,o[S>>2]|0),o[oe>>2]=(o[oe>>2]|0)+8,m6(A,Y),EKe(Y),T=Se;return}}function cle(A){return A=A|0,536870911}function C6(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>536870911)Bo();else{Y=xu(_<<3)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S<<3)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_<<3)}function m6(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(0-(Y>>3)<<3)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function EKe(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-8-_|0)>>>3)<<3)),A=o[A>>2]|0,A|0&&Va(A)}function hN(A){A=A|0,Ahe(A)}function h6(A){A=A|0,ghe(A+24|0)}function ghe(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),Va(S))}function Ahe(A){A=A|0;var _=0;_=Ss()|0,js(A,1,1,_,dhe()|0,5),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function dhe(){return 1872}function eg(A,_,S,F,Y,H){A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0,H=H|0,phe(o[(qDe(A)|0)>>2]|0,_,S,F,Y,H)}function qDe(A){return A=A|0,(o[(e4()|0)+24>>2]|0)+(A<<3)|0}function phe(A,_,S,F,Y,H){A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0,H=H|0;var oe=0,Se=0,He=0,Ct=0,At=0,Ut=0;oe=T,T=T+32|0,Se=oe+16|0,He=oe+12|0,Ct=oe+8|0,At=oe+4|0,Ut=oe,R1(Se,_),_=Kw(Se,_)|0,R1(He,S),S=Kw(He,S)|0,R1(Ct,F),F=Kw(Ct,F)|0,R1(At,Y),Y=Kw(At,Y)|0,R1(Ut,H),H=Kw(Ut,H)|0,ate[A&1](_,S,F,Y,H),$y(Ut),$y(At),$y(Ct),$y(He),$y(Se),T=oe}function fhe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0;H=o[A>>2]|0,Y=jQ()|0,A=Hee(S)|0,vf(H,_,Y,A,lle(S,F)|0,F)}function jQ(){var A=0,_=0;if(s[8072]|0||(BKe(11004),au(69,11004,U|0)|0,_=8072,o[_>>2]=1,o[_+4>>2]=0),!(Jr(11004)|0)){A=11004,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));BKe(11004)}return 11004}function Hee(A){return A=A|0,A|0}function lle(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0;return Se=T,T=T+16|0,Y=Se,H=Se+4|0,o[Y>>2]=A,He=jQ()|0,oe=He+24|0,_=ag(_,4)|0,o[H>>2]=_,S=He+28|0,F=o[S>>2]|0,F>>>0<(o[He+32>>2]|0)>>>0?(r4(F,A,_),_=(o[S>>2]|0)+8|0,o[S>>2]=_):(gV(oe,Y,H),_=o[S>>2]|0),T=Se,(_-(o[oe>>2]|0)>>3)+-1|0}function r4(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,o[A+4>>2]=S}function gV(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0;if(Se=T,T=T+32|0,Y=Se,H=A+4|0,oe=((o[H>>2]|0)-(o[A>>2]|0)>>3)+1|0,F=$De(A)|0,F>>>0>>0)RI(A);else{He=o[A>>2]|0,At=(o[A+8>>2]|0)-He|0,Ct=At>>2,Ihe(Y,At>>3>>>0>>1>>>0?Ct>>>0>>0?oe:Ct:F,(o[H>>2]|0)-He>>3,A+8|0),oe=Y+8|0,r4(o[oe>>2]|0,o[_>>2]|0,o[S>>2]|0),o[oe>>2]=(o[oe>>2]|0)+8,ule(A,Y),DZ(Y),T=Se;return}}function $De(A){return A=A|0,536870911}function Ihe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>536870911)Bo();else{Y=xu(_<<3)|0;break}else Y=0;while(!1);o[A>>2]=Y,F=Y+(S<<3)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=Y+(_<<3)}function ule(A,_){A=A|0,_=_|0;var S=0,F=0,Y=0,H=0,oe=0;F=o[A>>2]|0,oe=A+4|0,H=_+4|0,Y=(o[oe>>2]|0)-F|0,S=(o[H>>2]|0)+(0-(Y>>3)<<3)|0,o[H>>2]=S,(Y|0)>0?($d(S|0,F|0,Y|0)|0,F=H,S=o[H>>2]|0):F=H,H=o[A>>2]|0,o[A>>2]=S,o[F>>2]=H,H=_+8|0,Y=o[oe>>2]|0,o[oe>>2]=o[H>>2],o[H>>2]=Y,H=A+8|0,oe=_+12|0,A=o[H>>2]|0,o[H>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function DZ(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-8-_|0)>>>3)<<3)),A=o[A>>2]|0,A|0&&Va(A)}function BKe(A){A=A|0,exe(A)}function WNt(A){A=A|0,PNt(A+24|0)}function PNt(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),Va(S))}function exe(A){A=A|0;var _=0;_=Ss()|0,js(A,1,12,_,txe()|0,2),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function txe(){return 1896}function _6(A,_,S){A=A|0,_=_|0,S=S|0,MS(o[(n4(A)|0)>>2]|0,_,S)}function n4(A){return A=A|0,(o[(jQ()|0)+24>>2]|0)+(A<<3)|0}function MS(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0;F=T,T=T+16|0,H=F+4|0,Y=F,Che(H,_),_=rxe(H,_)|0,R1(Y,S),S=Kw(Y,S)|0,nT[A&31](_,S),$y(Y),T=F}function Che(A,_){A=A|0,_=_|0}function rxe(A,_){return A=A|0,_=_|0,kA(_)|0}function kA(A){return A=A|0,A|0}function vKe(){var A=0;return s[8080]|0||(_N(11040),au(70,11040,U|0)|0,A=8080,o[A>>2]=1,o[A+4>>2]=0),Jr(11040)|0||_N(11040),11040}function _N(A){A=A|0,nxe(A),hG(A,71)}function ONt(A){A=A|0,mhe(A+24|0)}function mhe(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),Va(S))}function nxe(A){A=A|0;var _=0;_=Ss()|0,js(A,5,7,_,b6()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function y6(A){A=A|0,ixe(A)}function ixe(A){A=A|0,gle(A)}function gle(A){A=A|0,s[A+8>>0]=1}function b6(){return 1936}function sxe(){return vG()|0}function vG(){var A=0,_=0,S=0,F=0,Y=0,H=0,oe=0;return _=T,T=T+16|0,Y=_+4|0,oe=_,S=CN(8)|0,A=S,H=A+4|0,o[H>>2]=xu(1)|0,F=xu(8)|0,H=o[H>>2]|0,o[oe>>2]=0,o[Y>>2]=o[oe>>2],AV(F,H,Y),o[S>>2]=F,T=_,A|0}function AV(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,S=xu(16)|0,o[S+4>>2]=0,o[S+8>>2]=0,o[S>>2]=1916,o[S+12>>2]=_,o[A+4>>2]=S}function yN(A){A=A|0,o4(A),Va(A)}function Ale(A){A=A|0,A=o[A+12>>2]|0,A|0&&Va(A)}function E6(A){A=A|0,Va(A)}function dle(){var A=0;return s[8088]|0||(ple(11076),au(25,11076,U|0)|0,A=8088,o[A>>2]=1,o[A+4>>2]=0),11076}function SKe(A,_){A=A|0,_=_|0,o[A>>2]=zQ()|0,o[A+4>>2]=Xee()|0,o[A+12>>2]=_,o[A+8>>2]=Jee()|0,o[A+32>>2]=10}function zQ(){return 11745}function Xee(){return 1940}function Jee(){return M8()|0}function hhe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,(IG(F,896)|0)==512?S|0&&(oxe(S),Va(S)):_|0&&Va(_)}function oxe(A){A=A|0,A=o[A+4>>2]|0,A|0&&iY(A)}function ple(A){A=A|0,Kc(A)}function QS(A,_){A=A|0,_=_|0,o[A>>2]=_}function fle(A){return A=A|0,o[A>>2]|0}function _he(A){return A=A|0,s[o[A>>2]>>0]|0}function yhe(A,_){A=A|0,_=_|0;var S=0,F=0;S=T,T=T+16|0,F=S,o[F>>2]=o[A>>2],Ile(_,F)|0,T=S}function Ile(A,_){A=A|0,_=_|0;var S=0;return S=B6(o[A>>2]|0,_)|0,_=A+4|0,o[(o[_>>2]|0)+8>>2]=S,o[(o[_>>2]|0)+8>>2]|0}function B6(A,_){A=A|0,_=_|0;var S=0,F=0;return S=T,T=T+16|0,F=S,YS(F),A=AA(A)|0,_=axe(A,o[_>>2]|0)|0,D2(F),T=S,_|0}function YS(A){A=A|0,o[A>>2]=o[2701],o[A+4>>2]=o[2703]}function axe(A,_){A=A|0,_=_|0;var S=0;return S=Iy(v6()|0)|0,Hi(0,S|0,A|0,NZ(_)|0)|0}function D2(A){A=A|0,Vee(o[A>>2]|0,o[A+4>>2]|0)}function v6(){var A=0;return s[8096]|0||(bhe(11120),A=8096,o[A>>2]=1,o[A+4>>2]=0),11120}function bhe(A){A=A|0,xm(A,x2()|0,1)}function x2(){return 1948}function k2(){qQ()}function qQ(){var A=0,_=0,S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0,Is=0,ji=0,Ei=0;if(ji=T,T=T+16|0,At=ji+4|0,Ut=ji,wu(65536,10804,o[2702]|0,10812),S=Qme()|0,_=o[S>>2]|0,A=o[_>>2]|0,A|0)for(F=o[S+8>>2]|0,S=o[S+4>>2]|0;Qa(A|0,g[S>>0]|0|0,s[F>>0]|0),_=_+4|0,A=o[_>>2]|0,A;)F=F+1|0,S=S+1|0;if(A=gKe()|0,_=o[A>>2]|0,_|0)do Rt(_|0,o[A+4>>2]|0),A=A+8|0,_=o[A>>2]|0;while(_|0);Rt(cxe()|0,5167),Ct=kv()|0,A=o[Ct>>2]|0;e:do if(A|0){do MNt(o[A+4>>2]|0),A=o[A>>2]|0;while(A|0);if(A=o[Ct>>2]|0,A|0){He=Ct;do{for(;Y=A,A=o[A>>2]|0,Y=o[Y+4>>2]|0,!!($Q(Y)|0);)if(o[Ut>>2]=He,o[At>>2]=o[Ut>>2],Cle(Ct,At)|0,!A)break e;if(UC(Y),He=o[He>>2]|0,_=Ehe(Y)|0,H=cA()|0,oe=T,T=T+((1*(_<<2)|0)+15&-16)|0,Se=T,T=T+((1*(_<<2)|0)+15&-16)|0,_=o[(NDe(Y)|0)>>2]|0,_|0)for(S=oe,F=Se;o[S>>2]=o[(DB(o[_+4>>2]|0)|0)>>2],o[F>>2]=o[_+8>>2],_=o[_>>2]|0,_;)S=S+4|0,F=F+4|0;Ei=DB(Y)|0,_=Bhe(Y)|0,S=Ehe(Y)|0,F=Uee(Y)|0,og(Ei|0,_|0,oe|0,Se|0,S|0,F|0,r6(Y)|0),hl(H|0)}while(A|0)}}while(!1);if(A=o[(xee()|0)>>2]|0,A|0)do Ei=A+4|0,Ct=Fce(Ei)|0,Y=cV(Ct)|0,H=Zce(Ct)|0,oe=(i6(Ct)|0)+1|0,Se=S6(Ct)|0,He=Kee(Ei)|0,Ct=Jr(Ct)|0,At=k1(Ei)|0,Ut=mle(Ei)|0,Hu(0,Y|0,H|0,oe|0,Se|0,He|0,Ct|0,At|0,Ut|0,hle(Ei)|0),A=o[A>>2]|0;while(A|0);A=o[(kv()|0)>>2]|0;e:do if(A|0){t:for(;;){if(_=o[A+4>>2]|0,_|0&&(cn=o[(DB(_)|0)>>2]|0,Is=o[(Mce(_)|0)>>2]|0,Is|0)){S=Is;do{_=S+4|0,F=Fce(_)|0;r:do if(F|0)switch(Jr(F)|0){case 0:break t;case 4:case 3:case 2:{Se=cV(F)|0,He=Zce(F)|0,Ct=(i6(F)|0)+1|0,At=S6(F)|0,Ut=Jr(F)|0,Ei=k1(_)|0,Hu(cn|0,Se|0,He|0,Ct|0,At|0,0,Ut|0,Ei|0,mle(_)|0,hle(_)|0);break r}case 1:{oe=cV(F)|0,Se=Zce(F)|0,He=(i6(F)|0)+1|0,Ct=S6(F)|0,At=Kee(_)|0,Ut=Jr(F)|0,Ei=k1(_)|0,Hu(cn|0,oe|0,Se|0,He|0,Ct|0,At|0,Ut|0,Ei|0,mle(_)|0,hle(_)|0);break r}case 5:{Ct=cV(F)|0,At=Zce(F)|0,Ut=(i6(F)|0)+1|0,Ei=S6(F)|0,Hu(cn|0,Ct|0,At|0,Ut|0,Ei|0,lxe(F)|0,Jr(F)|0,0,0,0);break r}default:break r}while(!1);S=o[S>>2]|0}while(S|0)}if(A=o[A>>2]|0,!A)break e}Bo()}while(!1);on(),T=ji}function cxe(){return 11703}function MNt(A){A=A|0,s[A+40>>0]=0}function $Q(A){return A=A|0,(s[A+40>>0]|0)!=0|0}function Cle(A,_){return A=A|0,_=_|0,_=uxe(_)|0,A=o[_>>2]|0,o[_>>2]=o[A>>2],Va(A),o[_>>2]|0}function UC(A){A=A|0,s[A+40>>0]=1}function Ehe(A){return A=A|0,o[A+20>>2]|0}function Bhe(A){return A=A|0,o[A+8>>2]|0}function Uee(A){return A=A|0,o[A+32>>2]|0}function S6(A){return A=A|0,o[A+4>>2]|0}function Kee(A){return A=A|0,o[A+4>>2]|0}function mle(A){return A=A|0,o[A+8>>2]|0}function hle(A){return A=A|0,o[A+16>>2]|0}function lxe(A){return A=A|0,o[A+20>>2]|0}function uxe(A){return A=A|0,o[A>>2]|0}function jee(A){A=A|0;var _=0,S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0,Is=0,ji=0,Ei=0,bo=0,ro=0,ca=0,as=0,hs=0,Sl=0;Sl=T,T=T+16|0,cn=Sl;do if(A>>>0<245){if(Ct=A>>>0<11?16:A+11&-8,A=Ct>>>3,Ut=o[2783]|0,S=Ut>>>A,S&3|0)return _=(S&1^1)+A|0,A=11172+(_<<1<<2)|0,S=A+8|0,F=o[S>>2]|0,Y=F+8|0,H=o[Y>>2]|0,(A|0)==(H|0)?o[2783]=Ut&~(1<<_):(o[H+12>>2]=A,o[S>>2]=H),hs=_<<3,o[F+4>>2]=hs|3,hs=F+hs+4|0,o[hs>>2]=o[hs>>2]|1,hs=Y,T=Sl,hs|0;if(At=o[2785]|0,Ct>>>0>At>>>0){if(S|0)return _=2<>>12&16,_=_>>>oe,S=_>>>5&8,_=_>>>S,Y=_>>>2&4,_=_>>>Y,A=_>>>1&2,_=_>>>A,F=_>>>1&1,F=(S|oe|Y|A|F)+(_>>>F)|0,_=11172+(F<<1<<2)|0,A=_+8|0,Y=o[A>>2]|0,oe=Y+8|0,S=o[oe>>2]|0,(_|0)==(S|0)?(A=Ut&~(1<>2]=_,o[A>>2]=S,A=Ut),H=(F<<3)-Ct|0,o[Y+4>>2]=Ct|3,F=Y+Ct|0,o[F+4>>2]=H|1,o[F+H>>2]=H,At|0&&(Y=o[2788]|0,_=At>>>3,S=11172+(_<<1<<2)|0,_=1<<_,A&_?(A=S+8|0,_=o[A>>2]|0):(o[2783]=A|_,_=S,A=S+8|0),o[A>>2]=Y,o[_+12>>2]=Y,o[Y+8>>2]=_,o[Y+12>>2]=S),o[2785]=H,o[2788]=F,hs=oe,T=Sl,hs|0;if(Se=o[2784]|0,Se){if(S=(Se&0-Se)+-1|0,oe=S>>>12&16,S=S>>>oe,H=S>>>5&8,S=S>>>H,He=S>>>2&4,S=S>>>He,F=S>>>1&2,S=S>>>F,A=S>>>1&1,A=o[11436+((H|oe|He|F|A)+(S>>>A)<<2)>>2]|0,S=(o[A+4>>2]&-8)-Ct|0,F=o[A+16+(((o[A+16>>2]|0)==0&1)<<2)>>2]|0,!F)He=A,H=S;else{do oe=(o[F+4>>2]&-8)-Ct|0,He=oe>>>0>>0,S=He?oe:S,A=He?F:A,F=o[F+16+(((o[F+16>>2]|0)==0&1)<<2)>>2]|0;while(F|0);He=A,H=S}if(oe=He+Ct|0,He>>>0>>0){Y=o[He+24>>2]|0,_=o[He+12>>2]|0;do if((_|0)==(He|0)){if(A=He+20|0,_=o[A>>2]|0,!_&&(A=He+16|0,_=o[A>>2]|0,!_)){S=0;break}for(;;){if(S=_+20|0,F=o[S>>2]|0,F|0){_=F,A=S;continue}if(S=_+16|0,F=o[S>>2]|0,F)_=F,A=S;else break}o[A>>2]=0,S=_}else S=o[He+8>>2]|0,o[S+12>>2]=_,o[_+8>>2]=S,S=_;while(!1);do if(Y|0){if(_=o[He+28>>2]|0,A=11436+(_<<2)|0,(He|0)==(o[A>>2]|0)){if(o[A>>2]=S,!S){o[2784]=Se&~(1<<_);break}}else if(o[Y+16+(((o[Y+16>>2]|0)!=(He|0)&1)<<2)>>2]=S,!S)break;o[S+24>>2]=Y,_=o[He+16>>2]|0,_|0&&(o[S+16>>2]=_,o[_+24>>2]=S),_=o[He+20>>2]|0,_|0&&(o[S+20>>2]=_,o[_+24>>2]=S)}while(!1);return H>>>0<16?(hs=H+Ct|0,o[He+4>>2]=hs|3,hs=He+hs+4|0,o[hs>>2]=o[hs>>2]|1):(o[He+4>>2]=Ct|3,o[oe+4>>2]=H|1,o[oe+H>>2]=H,At|0&&(F=o[2788]|0,_=At>>>3,S=11172+(_<<1<<2)|0,_=1<<_,Ut&_?(A=S+8|0,_=o[A>>2]|0):(o[2783]=Ut|_,_=S,A=S+8|0),o[A>>2]=F,o[_+12>>2]=F,o[F+8>>2]=_,o[F+12>>2]=S),o[2785]=H,o[2788]=oe),hs=He+8|0,T=Sl,hs|0}else Ut=Ct}else Ut=Ct}else Ut=Ct}else if(A>>>0<=4294967231)if(A=A+11|0,Ct=A&-8,He=o[2784]|0,He){F=0-Ct|0,A=A>>>8,A?Ct>>>0>16777215?Se=31:(Ut=(A+1048320|0)>>>16&8,as=A<>>16&4,as=as<>>16&2,Se=14-(At|Ut|Se)+(as<>>15)|0,Se=Ct>>>(Se+7|0)&1|Se<<1):Se=0,S=o[11436+(Se<<2)>>2]|0;e:do if(!S)S=0,A=0,as=57;else for(A=0,oe=Ct<<((Se|0)==31?0:25-(Se>>>1)|0),H=0;;){if(Y=(o[S+4>>2]&-8)-Ct|0,Y>>>0>>0)if(Y)A=S,F=Y;else{A=S,F=0,Y=S,as=61;break e}if(Y=o[S+20>>2]|0,S=o[S+16+(oe>>>31<<2)>>2]|0,H=(Y|0)==0|(Y|0)==(S|0)?H:Y,Y=(S|0)==0,Y){S=H,as=57;break}else oe=oe<<((Y^1)&1)}while(!1);if((as|0)==57){if((S|0)==0&(A|0)==0){if(A=2<>>12&16,Ut=Ut>>>oe,H=Ut>>>5&8,Ut=Ut>>>H,Se=Ut>>>2&4,Ut=Ut>>>Se,At=Ut>>>1&2,Ut=Ut>>>At,S=Ut>>>1&1,A=0,S=o[11436+((H|oe|Se|At|S)+(Ut>>>S)<<2)>>2]|0}S?(Y=S,as=61):(Se=A,oe=F)}if((as|0)==61)for(;;)if(as=0,S=(o[Y+4>>2]&-8)-Ct|0,Ut=S>>>0>>0,S=Ut?S:F,A=Ut?Y:A,Y=o[Y+16+(((o[Y+16>>2]|0)==0&1)<<2)>>2]|0,Y)F=S,as=61;else{Se=A,oe=S;break}if(Se|0&&oe>>>0<((o[2785]|0)-Ct|0)>>>0){if(H=Se+Ct|0,Se>>>0>=H>>>0)return hs=0,T=Sl,hs|0;Y=o[Se+24>>2]|0,_=o[Se+12>>2]|0;do if((_|0)==(Se|0)){if(A=Se+20|0,_=o[A>>2]|0,!_&&(A=Se+16|0,_=o[A>>2]|0,!_)){_=0;break}for(;;){if(S=_+20|0,F=o[S>>2]|0,F|0){_=F,A=S;continue}if(S=_+16|0,F=o[S>>2]|0,F)_=F,A=S;else break}o[A>>2]=0}else hs=o[Se+8>>2]|0,o[hs+12>>2]=_,o[_+8>>2]=hs;while(!1);do if(Y){if(A=o[Se+28>>2]|0,S=11436+(A<<2)|0,(Se|0)==(o[S>>2]|0)){if(o[S>>2]=_,!_){F=He&~(1<>2]|0)!=(Se|0)&1)<<2)>>2]=_,!_){F=He;break}o[_+24>>2]=Y,A=o[Se+16>>2]|0,A|0&&(o[_+16>>2]=A,o[A+24>>2]=_),A=o[Se+20>>2]|0,A&&(o[_+20>>2]=A,o[A+24>>2]=_),F=He}else F=He;while(!1);do if(oe>>>0>=16){if(o[Se+4>>2]=Ct|3,o[H+4>>2]=oe|1,o[H+oe>>2]=oe,_=oe>>>3,oe>>>0<256){S=11172+(_<<1<<2)|0,A=o[2783]|0,_=1<<_,A&_?(A=S+8|0,_=o[A>>2]|0):(o[2783]=A|_,_=S,A=S+8|0),o[A>>2]=H,o[_+12>>2]=H,o[H+8>>2]=_,o[H+12>>2]=S;break}if(_=oe>>>8,_?oe>>>0>16777215?_=31:(as=(_+1048320|0)>>>16&8,hs=_<>>16&4,hs=hs<>>16&2,_=14-(ca|as|_)+(hs<<_>>>15)|0,_=oe>>>(_+7|0)&1|_<<1):_=0,S=11436+(_<<2)|0,o[H+28>>2]=_,A=H+16|0,o[A+4>>2]=0,o[A>>2]=0,A=1<<_,!(F&A)){o[2784]=F|A,o[S>>2]=H,o[H+24>>2]=S,o[H+12>>2]=H,o[H+8>>2]=H;break}for(A=oe<<((_|0)==31?0:25-(_>>>1)|0),S=o[S>>2]|0;;){if((o[S+4>>2]&-8|0)==(oe|0)){as=97;break}if(F=S+16+(A>>>31<<2)|0,_=o[F>>2]|0,_)A=A<<1,S=_;else{as=96;break}}if((as|0)==96){o[F>>2]=H,o[H+24>>2]=S,o[H+12>>2]=H,o[H+8>>2]=H;break}else if((as|0)==97){as=S+8|0,hs=o[as>>2]|0,o[hs+12>>2]=H,o[as>>2]=H,o[H+8>>2]=hs,o[H+12>>2]=S,o[H+24>>2]=0;break}}else hs=oe+Ct|0,o[Se+4>>2]=hs|3,hs=Se+hs+4|0,o[hs>>2]=o[hs>>2]|1;while(!1);return hs=Se+8|0,T=Sl,hs|0}else Ut=Ct}else Ut=Ct;else Ut=-1;while(!1);if(S=o[2785]|0,S>>>0>=Ut>>>0)return _=S-Ut|0,A=o[2788]|0,_>>>0>15?(hs=A+Ut|0,o[2788]=hs,o[2785]=_,o[hs+4>>2]=_|1,o[hs+_>>2]=_,o[A+4>>2]=Ut|3):(o[2785]=0,o[2788]=0,o[A+4>>2]=S|3,hs=A+S+4|0,o[hs>>2]=o[hs>>2]|1),hs=A+8|0,T=Sl,hs|0;if(oe=o[2786]|0,oe>>>0>Ut>>>0)return ca=oe-Ut|0,o[2786]=ca,hs=o[2789]|0,as=hs+Ut|0,o[2789]=as,o[as+4>>2]=ca|1,o[hs+4>>2]=Ut|3,hs=hs+8|0,T=Sl,hs|0;if(o[2901]|0?A=o[2903]|0:(o[2903]=4096,o[2902]=4096,o[2904]=-1,o[2905]=-1,o[2906]=0,o[2894]=0,A=cn&-16^1431655768,o[cn>>2]=A,o[2901]=A,A=4096),Se=Ut+48|0,He=Ut+47|0,H=A+He|0,Y=0-A|0,Ct=H&Y,Ct>>>0<=Ut>>>0||(A=o[2893]|0,A|0&&(At=o[2891]|0,cn=At+Ct|0,cn>>>0<=At>>>0|cn>>>0>A>>>0)))return hs=0,T=Sl,hs|0;e:do if(o[2894]&4)_=0,as=133;else{S=o[2789]|0;t:do if(S){for(F=11580;A=o[F>>2]|0,!(A>>>0<=S>>>0&&(Ei=F+4|0,(A+(o[Ei>>2]|0)|0)>>>0>S>>>0));)if(A=o[F+8>>2]|0,A)F=A;else{as=118;break t}if(_=H-oe&Y,_>>>0<2147483647)if(A=fV(_|0)|0,(A|0)==((o[F>>2]|0)+(o[Ei>>2]|0)|0)){if((A|0)!=-1){oe=_,H=A,as=135;break e}}else F=A,as=126;else _=0}else as=118;while(!1);do if((as|0)==118)if(S=fV(0)|0,(S|0)!=-1&&(_=S,Is=o[2902]|0,ji=Is+-1|0,_=(ji&_|0?(ji+_&0-Is)-_|0:0)+Ct|0,Is=o[2891]|0,ji=_+Is|0,_>>>0>Ut>>>0&_>>>0<2147483647)){if(Ei=o[2893]|0,Ei|0&&ji>>>0<=Is>>>0|ji>>>0>Ei>>>0){_=0;break}if(A=fV(_|0)|0,(A|0)==(S|0)){oe=_,H=S,as=135;break e}else F=A,as=126}else _=0;while(!1);do if((as|0)==126){if(S=0-_|0,!(Se>>>0>_>>>0&(_>>>0<2147483647&(F|0)!=-1)))if((F|0)==-1){_=0;break}else{oe=_,H=F,as=135;break e}if(A=o[2903]|0,A=He-_+A&0-A,A>>>0>=2147483647){oe=_,H=F,as=135;break e}if((fV(A|0)|0)==-1){fV(S|0)|0,_=0;break}else{oe=A+_|0,H=F,as=135;break e}}while(!1);o[2894]=o[2894]|4,as=133}while(!1);if((as|0)==133&&Ct>>>0<2147483647&&(ca=fV(Ct|0)|0,Ei=fV(0)|0,bo=Ei-ca|0,ro=bo>>>0>(Ut+40|0)>>>0,!((ca|0)==-1|ro^1|ca>>>0>>0&((ca|0)!=-1&(Ei|0)!=-1)^1))&&(oe=ro?bo:_,H=ca,as=135),(as|0)==135){_=(o[2891]|0)+oe|0,o[2891]=_,_>>>0>(o[2892]|0)>>>0&&(o[2892]=_),He=o[2789]|0;do if(He){for(_=11580;;){if(A=o[_>>2]|0,S=_+4|0,F=o[S>>2]|0,(H|0)==(A+F|0)){as=145;break}if(Y=o[_+8>>2]|0,Y)_=Y;else break}if((as|0)==145&&!(o[_+12>>2]&8|0)&&He>>>0>>0&He>>>0>=A>>>0){o[S>>2]=F+oe,hs=He+8|0,hs=hs&7|0?0-hs&7:0,as=He+hs|0,hs=(o[2786]|0)+(oe-hs)|0,o[2789]=as,o[2786]=hs,o[as+4>>2]=hs|1,o[as+hs+4>>2]=40,o[2790]=o[2905];break}for(H>>>0<(o[2787]|0)>>>0&&(o[2787]=H),S=H+oe|0,_=11580;;){if((o[_>>2]|0)==(S|0)){as=153;break}if(A=o[_+8>>2]|0,A)_=A;else break}if((as|0)==153&&!(o[_+12>>2]&8|0)){o[_>>2]=H,At=_+4|0,o[At>>2]=(o[At>>2]|0)+oe,At=H+8|0,At=H+(At&7|0?0-At&7:0)|0,_=S+8|0,_=S+(_&7|0?0-_&7:0)|0,Ct=At+Ut|0,Se=_-At-Ut|0,o[At+4>>2]=Ut|3;do if((_|0)!=(He|0)){if((_|0)==(o[2788]|0)){hs=(o[2785]|0)+Se|0,o[2785]=hs,o[2788]=Ct,o[Ct+4>>2]=hs|1,o[Ct+hs>>2]=hs;break}if(A=o[_+4>>2]|0,(A&3|0)==1){oe=A&-8,F=A>>>3;e:do if(A>>>0<256)if(A=o[_+8>>2]|0,S=o[_+12>>2]|0,(S|0)==(A|0)){o[2783]=o[2783]&~(1<>2]=S,o[S+8>>2]=A;break}else{H=o[_+24>>2]|0,A=o[_+12>>2]|0;do if((A|0)==(_|0)){if(F=_+16|0,S=F+4|0,A=o[S>>2]|0,!A)if(A=o[F>>2]|0,A)S=F;else{A=0;break}for(;;){if(F=A+20|0,Y=o[F>>2]|0,Y|0){A=Y,S=F;continue}if(F=A+16|0,Y=o[F>>2]|0,Y)A=Y,S=F;else break}o[S>>2]=0}else hs=o[_+8>>2]|0,o[hs+12>>2]=A,o[A+8>>2]=hs;while(!1);if(!H)break;S=o[_+28>>2]|0,F=11436+(S<<2)|0;do if((_|0)!=(o[F>>2]|0)){if(o[H+16+(((o[H+16>>2]|0)!=(_|0)&1)<<2)>>2]=A,!A)break e}else{if(o[F>>2]=A,A|0)break;o[2784]=o[2784]&~(1<>2]=H,S=_+16|0,F=o[S>>2]|0,F|0&&(o[A+16>>2]=F,o[F+24>>2]=A),S=o[S+4>>2]|0,!S)break;o[A+20>>2]=S,o[S+24>>2]=A}while(!1);_=_+oe|0,Y=oe+Se|0}else Y=Se;if(_=_+4|0,o[_>>2]=o[_>>2]&-2,o[Ct+4>>2]=Y|1,o[Ct+Y>>2]=Y,_=Y>>>3,Y>>>0<256){S=11172+(_<<1<<2)|0,A=o[2783]|0,_=1<<_,A&_?(A=S+8|0,_=o[A>>2]|0):(o[2783]=A|_,_=S,A=S+8|0),o[A>>2]=Ct,o[_+12>>2]=Ct,o[Ct+8>>2]=_,o[Ct+12>>2]=S;break}_=Y>>>8;do if(!_)_=0;else{if(Y>>>0>16777215){_=31;break}as=(_+1048320|0)>>>16&8,hs=_<>>16&4,hs=hs<>>16&2,_=14-(ca|as|_)+(hs<<_>>>15)|0,_=Y>>>(_+7|0)&1|_<<1}while(!1);if(F=11436+(_<<2)|0,o[Ct+28>>2]=_,A=Ct+16|0,o[A+4>>2]=0,o[A>>2]=0,A=o[2784]|0,S=1<<_,!(A&S)){o[2784]=A|S,o[F>>2]=Ct,o[Ct+24>>2]=F,o[Ct+12>>2]=Ct,o[Ct+8>>2]=Ct;break}for(A=Y<<((_|0)==31?0:25-(_>>>1)|0),S=o[F>>2]|0;;){if((o[S+4>>2]&-8|0)==(Y|0)){as=194;break}if(F=S+16+(A>>>31<<2)|0,_=o[F>>2]|0,_)A=A<<1,S=_;else{as=193;break}}if((as|0)==193){o[F>>2]=Ct,o[Ct+24>>2]=S,o[Ct+12>>2]=Ct,o[Ct+8>>2]=Ct;break}else if((as|0)==194){as=S+8|0,hs=o[as>>2]|0,o[hs+12>>2]=Ct,o[as>>2]=Ct,o[Ct+8>>2]=hs,o[Ct+12>>2]=S,o[Ct+24>>2]=0;break}}else hs=(o[2786]|0)+Se|0,o[2786]=hs,o[2789]=Ct,o[Ct+4>>2]=hs|1;while(!1);return hs=At+8|0,T=Sl,hs|0}for(_=11580;A=o[_>>2]|0,!(A>>>0<=He>>>0&&(hs=A+(o[_+4>>2]|0)|0,hs>>>0>He>>>0));)_=o[_+8>>2]|0;Y=hs+-47|0,A=Y+8|0,A=Y+(A&7|0?0-A&7:0)|0,Y=He+16|0,A=A>>>0>>0?He:A,_=A+8|0,S=H+8|0,S=S&7|0?0-S&7:0,as=H+S|0,S=oe+-40-S|0,o[2789]=as,o[2786]=S,o[as+4>>2]=S|1,o[as+S+4>>2]=40,o[2790]=o[2905],S=A+4|0,o[S>>2]=27,o[_>>2]=o[2895],o[_+4>>2]=o[2896],o[_+8>>2]=o[2897],o[_+12>>2]=o[2898],o[2895]=H,o[2896]=oe,o[2898]=0,o[2897]=_,_=A+24|0;do as=_,_=_+4|0,o[_>>2]=7;while((as+8|0)>>>0>>0);if((A|0)!=(He|0)){if(H=A-He|0,o[S>>2]=o[S>>2]&-2,o[He+4>>2]=H|1,o[A>>2]=H,_=H>>>3,H>>>0<256){S=11172+(_<<1<<2)|0,A=o[2783]|0,_=1<<_,A&_?(A=S+8|0,_=o[A>>2]|0):(o[2783]=A|_,_=S,A=S+8|0),o[A>>2]=He,o[_+12>>2]=He,o[He+8>>2]=_,o[He+12>>2]=S;break}if(_=H>>>8,_?H>>>0>16777215?S=31:(as=(_+1048320|0)>>>16&8,hs=_<>>16&4,hs=hs<>>16&2,S=14-(ca|as|S)+(hs<>>15)|0,S=H>>>(S+7|0)&1|S<<1):S=0,F=11436+(S<<2)|0,o[He+28>>2]=S,o[He+20>>2]=0,o[Y>>2]=0,_=o[2784]|0,A=1<>2]=He,o[He+24>>2]=F,o[He+12>>2]=He,o[He+8>>2]=He;break}for(A=H<<((S|0)==31?0:25-(S>>>1)|0),S=o[F>>2]|0;;){if((o[S+4>>2]&-8|0)==(H|0)){as=216;break}if(F=S+16+(A>>>31<<2)|0,_=o[F>>2]|0,_)A=A<<1,S=_;else{as=215;break}}if((as|0)==215){o[F>>2]=He,o[He+24>>2]=S,o[He+12>>2]=He,o[He+8>>2]=He;break}else if((as|0)==216){as=S+8|0,hs=o[as>>2]|0,o[hs+12>>2]=He,o[as>>2]=He,o[He+8>>2]=hs,o[He+12>>2]=S,o[He+24>>2]=0;break}}}else{hs=o[2787]|0,(hs|0)==0|H>>>0>>0&&(o[2787]=H),o[2895]=H,o[2896]=oe,o[2898]=0,o[2792]=o[2901],o[2791]=-1,_=0;do hs=11172+(_<<1<<2)|0,o[hs+12>>2]=hs,o[hs+8>>2]=hs,_=_+1|0;while((_|0)!=32);hs=H+8|0,hs=hs&7|0?0-hs&7:0,as=H+hs|0,hs=oe+-40-hs|0,o[2789]=as,o[2786]=hs,o[as+4>>2]=hs|1,o[as+hs+4>>2]=40,o[2790]=o[2905]}while(!1);if(_=o[2786]|0,_>>>0>Ut>>>0)return ca=_-Ut|0,o[2786]=ca,hs=o[2789]|0,as=hs+Ut|0,o[2789]=as,o[as+4>>2]=ca|1,o[hs+4>>2]=Ut|3,hs=hs+8|0,T=Sl,hs|0}return o[(dV()|0)>>2]=12,hs=0,T=Sl,hs|0}function zee(A){A=A|0;var _=0,S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0;if(A){S=A+-8|0,Y=o[2787]|0,A=o[A+-4>>2]|0,_=A&-8,He=S+_|0;do if(A&1)Se=S,oe=S;else{if(F=o[S>>2]|0,!(A&3)||(oe=S+(0-F)|0,H=F+_|0,oe>>>0>>0))return;if((oe|0)==(o[2788]|0)){if(A=He+4|0,_=o[A>>2]|0,(_&3|0)!=3){Se=oe,_=H;break}o[2785]=H,o[A>>2]=_&-2,o[oe+4>>2]=H|1,o[oe+H>>2]=H;return}if(S=F>>>3,F>>>0<256)if(A=o[oe+8>>2]|0,_=o[oe+12>>2]|0,(_|0)==(A|0)){o[2783]=o[2783]&~(1<>2]=_,o[_+8>>2]=A,Se=oe,_=H;break}Y=o[oe+24>>2]|0,A=o[oe+12>>2]|0;do if((A|0)==(oe|0)){if(S=oe+16|0,_=S+4|0,A=o[_>>2]|0,!A)if(A=o[S>>2]|0,A)_=S;else{A=0;break}for(;;){if(S=A+20|0,F=o[S>>2]|0,F|0){A=F,_=S;continue}if(S=A+16|0,F=o[S>>2]|0,F)A=F,_=S;else break}o[_>>2]=0}else Se=o[oe+8>>2]|0,o[Se+12>>2]=A,o[A+8>>2]=Se;while(!1);if(Y){if(_=o[oe+28>>2]|0,S=11436+(_<<2)|0,(oe|0)==(o[S>>2]|0)){if(o[S>>2]=A,!A){o[2784]=o[2784]&~(1<<_),Se=oe,_=H;break}}else if(o[Y+16+(((o[Y+16>>2]|0)!=(oe|0)&1)<<2)>>2]=A,!A){Se=oe,_=H;break}o[A+24>>2]=Y,_=oe+16|0,S=o[_>>2]|0,S|0&&(o[A+16>>2]=S,o[S+24>>2]=A),_=o[_+4>>2]|0,_?(o[A+20>>2]=_,o[_+24>>2]=A,Se=oe,_=H):(Se=oe,_=H)}else Se=oe,_=H}while(!1);if(!(oe>>>0>=He>>>0)&&(A=He+4|0,F=o[A>>2]|0,!!(F&1))){if(F&2)o[A>>2]=F&-2,o[Se+4>>2]=_|1,o[oe+_>>2]=_,Y=_;else{if(A=o[2788]|0,(He|0)==(o[2789]|0)){if(He=(o[2786]|0)+_|0,o[2786]=He,o[2789]=Se,o[Se+4>>2]=He|1,(Se|0)!=(A|0))return;o[2788]=0,o[2785]=0;return}if((He|0)==(A|0)){He=(o[2785]|0)+_|0,o[2785]=He,o[2788]=oe,o[Se+4>>2]=He|1,o[oe+He>>2]=He;return}Y=(F&-8)+_|0,S=F>>>3;do if(F>>>0<256)if(_=o[He+8>>2]|0,A=o[He+12>>2]|0,(A|0)==(_|0)){o[2783]=o[2783]&~(1<>2]=A,o[A+8>>2]=_;break}else{H=o[He+24>>2]|0,A=o[He+12>>2]|0;do if((A|0)==(He|0)){if(S=He+16|0,_=S+4|0,A=o[_>>2]|0,!A)if(A=o[S>>2]|0,A)_=S;else{S=0;break}for(;;){if(S=A+20|0,F=o[S>>2]|0,F|0){A=F,_=S;continue}if(S=A+16|0,F=o[S>>2]|0,F)A=F,_=S;else break}o[_>>2]=0,S=A}else S=o[He+8>>2]|0,o[S+12>>2]=A,o[A+8>>2]=S,S=A;while(!1);if(H|0){if(A=o[He+28>>2]|0,_=11436+(A<<2)|0,(He|0)==(o[_>>2]|0)){if(o[_>>2]=S,!S){o[2784]=o[2784]&~(1<>2]|0)!=(He|0)&1)<<2)>>2]=S,!S)break;o[S+24>>2]=H,A=He+16|0,_=o[A>>2]|0,_|0&&(o[S+16>>2]=_,o[_+24>>2]=S),A=o[A+4>>2]|0,A|0&&(o[S+20>>2]=A,o[A+24>>2]=S)}}while(!1);if(o[Se+4>>2]=Y|1,o[oe+Y>>2]=Y,(Se|0)==(o[2788]|0)){o[2785]=Y;return}}if(A=Y>>>3,Y>>>0<256){S=11172+(A<<1<<2)|0,_=o[2783]|0,A=1<>2]|0):(o[2783]=_|A,A=S,_=S+8|0),o[_>>2]=Se,o[A+12>>2]=Se,o[Se+8>>2]=A,o[Se+12>>2]=S;return}A=Y>>>8,A?Y>>>0>16777215?A=31:(oe=(A+1048320|0)>>>16&8,He=A<>>16&4,He=He<>>16&2,A=14-(H|oe|A)+(He<>>15)|0,A=Y>>>(A+7|0)&1|A<<1):A=0,F=11436+(A<<2)|0,o[Se+28>>2]=A,o[Se+20>>2]=0,o[Se+16>>2]=0,_=o[2784]|0,S=1<>>1)|0),S=o[F>>2]|0;;){if((o[S+4>>2]&-8|0)==(Y|0)){A=73;break}if(F=S+16+(_>>>31<<2)|0,A=o[F>>2]|0,A)_=_<<1,S=A;else{A=72;break}}if((A|0)==72){o[F>>2]=Se,o[Se+24>>2]=S,o[Se+12>>2]=Se,o[Se+8>>2]=Se;break}else if((A|0)==73){oe=S+8|0,He=o[oe>>2]|0,o[He+12>>2]=Se,o[oe>>2]=Se,o[Se+8>>2]=He,o[Se+12>>2]=S,o[Se+24>>2]=0;break}}else o[2784]=_|S,o[F>>2]=Se,o[Se+24>>2]=F,o[Se+12>>2]=Se,o[Se+8>>2]=Se;while(!1);if(He=(o[2791]|0)+-1|0,o[2791]=He,!He)A=11588;else return;for(;A=o[A>>2]|0,A;)A=A+8|0;o[2791]=-1}}}function gxe(){return 11628}function vhe(A){A=A|0;var _=0,S=0;return _=T,T=T+16|0,S=_,o[S>>2]=TKe(o[A+60>>2]|0)|0,A=_le(ll(6,S|0)|0)|0,T=_,A|0}function She(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0,Is=0;Ut=T,T=T+48|0,Ct=Ut+16|0,H=Ut,Y=Ut+32|0,Se=A+28|0,F=o[Se>>2]|0,o[Y>>2]=F,He=A+20|0,F=(o[He>>2]|0)-F|0,o[Y+4>>2]=F,o[Y+8>>2]=_,o[Y+12>>2]=S,F=F+S|0,oe=A+60|0,o[H>>2]=o[oe>>2],o[H+4>>2]=Y,o[H+8>>2]=2,H=_le(Ud(146,H|0)|0)|0;e:do if((F|0)!=(H|0)){for(_=2;!((H|0)<0);)if(F=F-H|0,Is=o[Y+4>>2]|0,cn=H>>>0>Is>>>0,Y=cn?Y+8|0:Y,_=(cn<<31>>31)+_|0,Is=H-(cn?Is:0)|0,o[Y>>2]=(o[Y>>2]|0)+Is,cn=Y+4|0,o[cn>>2]=(o[cn>>2]|0)-Is,o[Ct>>2]=o[oe>>2],o[Ct+4>>2]=Y,o[Ct+8>>2]=_,H=_le(Ud(146,Ct|0)|0)|0,(F|0)==(H|0)){At=3;break e}o[A+16>>2]=0,o[Se>>2]=0,o[He>>2]=0,o[A>>2]=o[A>>2]|32,(_|0)==2?S=0:S=S-(o[Y+4>>2]|0)|0}else At=3;while(!1);return(At|0)==3&&(Is=o[A+44>>2]|0,o[A+16>>2]=Is+(o[A+48>>2]|0),o[Se>>2]=Is,o[He>>2]=Is),T=Ut,S|0}function wKe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0;return Y=T,T=T+32|0,H=Y,F=Y+20|0,o[H>>2]=o[A+60>>2],o[H+4>>2]=0,o[H+8>>2]=_,o[H+12>>2]=F,o[H+16>>2]=S,(_le(NA(140,H|0)|0)|0)<0?(o[F>>2]=-1,A=-1):A=o[F>>2]|0,T=Y,A|0}function _le(A){return A=A|0,A>>>0>4294963200&&(o[(dV()|0)>>2]=0-A,A=-1),A|0}function dV(){return(whe()|0)+64|0}function whe(){return bN()|0}function bN(){return 2084}function TKe(A){return A=A|0,A|0}function QNt(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0;return Y=T,T=T+32|0,F=Y,o[A+36>>2]=1,!(o[A>>2]&64|0)&&(o[F>>2]=o[A+60>>2],o[F+4>>2]=21523,o[F+8>>2]=Y+16,HA(54,F|0)|0)&&(s[A+75>>0]=-1),F=She(A,_,S)|0,T=Y,F|0}function kx(A,_){A=A|0,_=_|0;var S=0,F=0;if(S=s[A>>0]|0,F=s[_>>0]|0,!(S<<24>>24)||S<<24>>24!=F<<24>>24)A=F;else{do A=A+1|0,_=_+1|0,S=s[A>>0]|0,F=s[_>>0]|0;while(!(!(S<<24>>24)||S<<24>>24!=F<<24>>24));A=F}return(S&255)-(A&255)|0}function qee(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0;e:do if(!S)A=0;else{for(;F=s[A>>0]|0,Y=s[_>>0]|0,F<<24>>24==Y<<24>>24;)if(S=S+-1|0,S)A=A+1|0,_=_+1|0;else{A=0;break e}A=(F&255)-(Y&255)|0}while(!1);return A|0}function NKe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0,Is=0,ji=0,Ei=0;Ei=T,T=T+224|0,At=Ei+120|0,Ut=Ei+80|0,Is=Ei,ji=Ei+136|0,F=Ut,Y=F+40|0;do o[F>>2]=0,F=F+4|0;while((F|0)<(Y|0));return o[At>>2]=o[S>>2],(To(0,_,At,Is,Ut)|0)<0?S=-1:((o[A+76>>2]|0)>-1?cn=CA(A)|0:cn=0,S=o[A>>2]|0,Ct=S&32,(s[A+74>>0]|0)<1&&(o[A>>2]=S&-33),F=A+48|0,o[F>>2]|0?S=To(A,_,At,Is,Ut)|0:(Y=A+44|0,H=o[Y>>2]|0,o[Y>>2]=ji,oe=A+28|0,o[oe>>2]=ji,Se=A+20|0,o[Se>>2]=ji,o[F>>2]=80,He=A+16|0,o[He>>2]=ji+80,S=To(A,_,At,Is,Ut)|0,H&&(z3[o[A+36>>2]&7](A,0,0)|0,S=o[Se>>2]|0?S:-1,o[Y>>2]=H,o[F>>2]=0,o[He>>2]=0,o[oe>>2]=0,o[Se>>2]=0)),F=o[A>>2]|0,o[A>>2]=F|Ct,cn|0&&RKe(A),S=F&32|0?-1:S),T=Ei,S|0}function To(A,_,S,F,Y){A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0;var H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0,Is=0,ji=0,Ei=0,bo=0,ro=0,ca=0,as=0,hs=0,Sl=0,id=0,Tu=0,tg=0,ep=0,Vg=0,Vu=0;Vu=T,T=T+64|0,Tu=Vu+16|0,tg=Vu,Sl=Vu+24|0,ep=Vu+8|0,Vg=Vu+20|0,o[Tu>>2]=_,ca=(A|0)!=0,as=Sl+40|0,hs=as,Sl=Sl+39|0,id=ep+4|0,oe=0,H=0,At=0;e:for(;;){do if((H|0)>-1)if((oe|0)>(2147483647-H|0)){o[(dV()|0)>>2]=75,H=-1;break}else{H=oe+H|0;break}while(!1);if(oe=s[_>>0]|0,oe<<24>>24)Se=_;else{ro=87;break}t:for(;;){switch(oe<<24>>24){case 37:{oe=Se,ro=9;break t}case 0:{oe=Se;break t}default:}bo=Se+1|0,o[Tu>>2]=bo,oe=s[bo>>0]|0,Se=bo}t:do if((ro|0)==9)for(;;){if(ro=0,(s[Se+1>>0]|0)!=37)break t;if(oe=oe+1|0,Se=Se+2|0,o[Tu>>2]=Se,(s[Se>>0]|0)==37)ro=9;else break}while(!1);if(oe=oe-_|0,ca&&G2(A,_,oe),oe|0){_=Se;continue}He=Se+1|0,oe=(s[He>>0]|0)+-48|0,oe>>>0<10?(bo=(s[Se+2>>0]|0)==36,Ei=bo?oe:-1,At=bo?1:At,He=bo?Se+3|0:He):Ei=-1,o[Tu>>2]=He,oe=s[He>>0]|0,Se=(oe<<24>>24)+-32|0;t:do if(Se>>>0<32)for(Ct=0,Ut=oe;;){if(oe=1<>2]=He,oe=s[He>>0]|0,Se=(oe<<24>>24)+-32|0,Se>>>0>=32)break;Ut=oe}else Ct=0;while(!1);if(oe<<24>>24==42){if(Se=He+1|0,oe=(s[Se>>0]|0)+-48|0,oe>>>0<10&&(s[He+2>>0]|0)==36)o[Y+(oe<<2)>>2]=10,oe=o[F+((s[Se>>0]|0)+-48<<3)>>2]|0,At=1,He=He+3|0;else{if(At|0){H=-1;break}ca?(At=(o[S>>2]|0)+3&-4,oe=o[At>>2]|0,o[S>>2]=At+4,At=0,He=Se):(oe=0,At=0,He=Se)}o[Tu>>2]=He,bo=(oe|0)<0,oe=bo?0-oe|0:oe,Ct=bo?Ct|8192:Ct}else{if(oe=$ee(Tu)|0,(oe|0)<0){H=-1;break}He=o[Tu>>2]|0}do if((s[He>>0]|0)==46){if((s[He+1>>0]|0)!=42){o[Tu>>2]=He+1,Se=$ee(Tu)|0,He=o[Tu>>2]|0;break}if(Ut=He+2|0,Se=(s[Ut>>0]|0)+-48|0,Se>>>0<10&&(s[He+3>>0]|0)==36){o[Y+(Se<<2)>>2]=10,Se=o[F+((s[Ut>>0]|0)+-48<<3)>>2]|0,He=He+4|0,o[Tu>>2]=He;break}if(At|0){H=-1;break e}ca?(bo=(o[S>>2]|0)+3&-4,Se=o[bo>>2]|0,o[S>>2]=bo+4):Se=0,o[Tu>>2]=Ut,He=Ut}else Se=-1;while(!1);for(ji=0;;){if(((s[He>>0]|0)+-65|0)>>>0>57){H=-1;break e}if(bo=He+1|0,o[Tu>>2]=bo,Ut=s[(s[He>>0]|0)+-65+(5178+(ji*58|0))>>0]|0,cn=Ut&255,(cn+-1|0)>>>0<8)ji=cn,He=bo;else break}if(!(Ut<<24>>24)){H=-1;break}Is=(Ei|0)>-1;do if(Ut<<24>>24==19)if(Is){H=-1;break e}else ro=49;else{if(Is){o[Y+(Ei<<2)>>2]=cn,Is=F+(Ei<<3)|0,Ei=o[Is+4>>2]|0,ro=tg,o[ro>>2]=o[Is>>2],o[ro+4>>2]=Ei,ro=49;break}if(!ca){H=0;break e}ete(tg,cn,S)}while(!1);if((ro|0)==49&&(ro=0,!ca)){oe=0,_=bo;continue}He=s[He>>0]|0,He=(ji|0)!=0&(He&15|0)==3?He&-33:He,Is=Ct&-65537,Ei=Ct&8192|0?Is:Ct;t:do switch(He|0){case 110:switch((ji&255)<<24>>24){case 0:{o[o[tg>>2]>>2]=H,oe=0,_=bo;continue e}case 1:{o[o[tg>>2]>>2]=H,oe=0,_=bo;continue e}case 2:{oe=o[tg>>2]|0,o[oe>>2]=H,o[oe+4>>2]=((H|0)<0)<<31>>31,oe=0,_=bo;continue e}case 3:{a[o[tg>>2]>>1]=H,oe=0,_=bo;continue e}case 4:{s[o[tg>>2]>>0]=H,oe=0,_=bo;continue e}case 6:{o[o[tg>>2]>>2]=H,oe=0,_=bo;continue e}case 7:{oe=o[tg>>2]|0,o[oe>>2]=H,o[oe+4>>2]=((H|0)<0)<<31>>31,oe=0,_=bo;continue e}default:{oe=0,_=bo;continue e}}case 112:{He=120,Se=Se>>>0>8?Se:8,_=Ei|8,ro=61;break}case 88:case 120:{_=Ei,ro=61;break}case 111:{He=tg,_=o[He>>2]|0,He=o[He+4>>2]|0,cn=_e(_,He,as)|0,Is=hs-cn|0,Ct=0,Ut=5642,Se=(Ei&8|0)==0|(Se|0)>(Is|0)?Se:Is+1|0,Is=Ei,ro=67;break}case 105:case 100:if(He=tg,_=o[He>>2]|0,He=o[He+4>>2]|0,(He|0)<0){_=rT(0,0,_|0,He|0)|0,He=Ue,Ct=tg,o[Ct>>2]=_,o[Ct+4>>2]=He,Ct=1,Ut=5642,ro=66;break t}else{Ct=(Ei&2049|0)!=0&1,Ut=Ei&2048|0?5643:Ei&1|0?5644:5642,ro=66;break t}case 117:{He=tg,Ct=0,Ut=5642,_=o[He>>2]|0,He=o[He+4>>2]|0,ro=66;break}case 99:{s[Sl>>0]=o[tg>>2],_=Sl,Ct=0,Ut=5642,cn=as,He=1,Se=Is;break}case 109:{He=DKe(o[(dV()|0)>>2]|0)|0,ro=71;break}case 115:{He=o[tg>>2]|0,He=He|0?He:5652,ro=71;break}case 67:{o[ep>>2]=o[tg>>2],o[id>>2]=0,o[tg>>2]=ep,cn=-1,He=ep,ro=75;break}case 83:{_=o[tg>>2]|0,Se?(cn=Se,He=_,ro=75):(HS(A,32,oe,0,Ei),_=0,ro=84);break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{oe=xh(A,+y[tg>>3],oe,Se,Ei,He)|0,_=bo;continue e}default:Ct=0,Ut=5642,cn=as,He=Se,Se=Ei}while(!1);t:do if((ro|0)==61)Ei=tg,ji=o[Ei>>2]|0,Ei=o[Ei+4>>2]|0,cn=YNt(ji,Ei,as,He&32)|0,Ut=(_&8|0)==0|(ji|0)==0&(Ei|0)==0,Ct=Ut?0:2,Ut=Ut?5642:5642+(He>>4)|0,Is=_,_=ji,He=Ei,ro=67;else if((ro|0)==66)cn=w6(_,He,as)|0,Is=Ei,ro=67;else if((ro|0)==71)ro=0,Ei=Ho(He,0,Se)|0,ji=(Ei|0)==0,_=He,Ct=0,Ut=5642,cn=ji?He+Se|0:Ei,He=ji?Se:Ei-He|0,Se=Is;else if((ro|0)==75){for(ro=0,Ut=He,_=0,Se=0;Ct=o[Ut>>2]|0,!(!Ct||(Se=xKe(Vg,Ct)|0,(Se|0)<0|Se>>>0>(cn-_|0)>>>0));)if(_=Se+_|0,cn>>>0>_>>>0)Ut=Ut+4|0;else break;if((Se|0)<0){H=-1;break e}if(HS(A,32,oe,_,Ei),!_)_=0,ro=84;else for(Ct=0;;){if(Se=o[He>>2]|0,!Se){ro=84;break t}if(Se=xKe(Vg,Se)|0,Ct=Se+Ct|0,(Ct|0)>(_|0)){ro=84;break t}if(G2(A,Vg,Se),Ct>>>0>=_>>>0){ro=84;break}else He=He+4|0}}while(!1);if((ro|0)==67)ro=0,He=(_|0)!=0|(He|0)!=0,Ei=(Se|0)!=0|He,He=((He^1)&1)+(hs-cn)|0,_=Ei?cn:as,cn=as,He=Ei?(Se|0)>(He|0)?Se:He:Se,Se=(Se|0)>-1?Is&-65537:Is;else if((ro|0)==84){ro=0,HS(A,32,oe,_,Ei^8192),oe=(oe|0)>(_|0)?oe:_,_=bo;continue}ji=cn-_|0,Is=(He|0)<(ji|0)?ji:He,Ei=Is+Ct|0,oe=(oe|0)<(Ei|0)?Ei:oe,HS(A,32,oe,Ei,Se),G2(A,Ut,Ct),HS(A,48,oe,Ei,Se^65536),HS(A,48,Is,ji,0),G2(A,_,ji),HS(A,32,oe,Ei,Se^8192),_=bo}e:do if((ro|0)==87&&!A)if(!At)H=0;else{for(H=1;_=o[Y+(H<<2)>>2]|0,!!_;)if(ete(F+(H<<3)|0,_,S),H=H+1|0,(H|0)>=10){H=1;break e}for(;;){if(o[Y+(H<<2)>>2]|0){H=-1;break e}if(H=H+1|0,(H|0)>=10){H=1;break}}}while(!1);return T=Vu,H|0}function CA(A){return A=A|0,0}function RKe(A){A=A|0}function G2(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]&32||ble(_,S,A)|0}function $ee(A){A=A|0;var _=0,S=0,F=0;if(S=o[A>>2]|0,F=(s[S>>0]|0)+-48|0,F>>>0<10){_=0;do _=F+(_*10|0)|0,S=S+1|0,o[A>>2]=S,F=(s[S>>0]|0)+-48|0;while(F>>>0<10)}else _=0;return _|0}function ete(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0;e:do if(_>>>0<=20)do switch(_|0){case 9:{F=(o[S>>2]|0)+3&-4,_=o[F>>2]|0,o[S>>2]=F+4,o[A>>2]=_;break e}case 10:{F=(o[S>>2]|0)+3&-4,_=o[F>>2]|0,o[S>>2]=F+4,F=A,o[F>>2]=_,o[F+4>>2]=((_|0)<0)<<31>>31;break e}case 11:{F=(o[S>>2]|0)+3&-4,_=o[F>>2]|0,o[S>>2]=F+4,F=A,o[F>>2]=_,o[F+4>>2]=0;break e}case 12:{F=(o[S>>2]|0)+7&-8,_=F,Y=o[_>>2]|0,_=o[_+4>>2]|0,o[S>>2]=F+8,F=A,o[F>>2]=Y,o[F+4>>2]=_;break e}case 13:{Y=(o[S>>2]|0)+3&-4,F=o[Y>>2]|0,o[S>>2]=Y+4,F=(F&65535)<<16>>16,Y=A,o[Y>>2]=F,o[Y+4>>2]=((F|0)<0)<<31>>31;break e}case 14:{Y=(o[S>>2]|0)+3&-4,F=o[Y>>2]|0,o[S>>2]=Y+4,Y=A,o[Y>>2]=F&65535,o[Y+4>>2]=0;break e}case 15:{Y=(o[S>>2]|0)+3&-4,F=o[Y>>2]|0,o[S>>2]=Y+4,F=(F&255)<<24>>24,Y=A,o[Y>>2]=F,o[Y+4>>2]=((F|0)<0)<<31>>31;break e}case 16:{Y=(o[S>>2]|0)+3&-4,F=o[Y>>2]|0,o[S>>2]=Y+4,Y=A,o[Y>>2]=F&255,o[Y+4>>2]=0;break e}case 17:{Y=(o[S>>2]|0)+7&-8,H=+y[Y>>3],o[S>>2]=Y+8,y[A>>3]=H;break e}case 18:{Y=(o[S>>2]|0)+7&-8,H=+y[Y>>3],o[S>>2]=Y+8,y[A>>3]=H;break e}default:break e}while(!1);while(!1)}function YNt(A,_,S,F){if(A=A|0,_=_|0,S=S|0,F=F|0,!((A|0)==0&(_|0)==0))do S=S+-1|0,s[S>>0]=g[5694+(A&15)>>0]|0|F,A=nte(A|0,_|0,4)|0,_=Ue;while(!((A|0)==0&(_|0)==0));return S|0}function _e(A,_,S){if(A=A|0,_=_|0,S=S|0,!((A|0)==0&(_|0)==0))do S=S+-1|0,s[S>>0]=A&7|48,A=nte(A|0,_|0,3)|0,_=Ue;while(!((A|0)==0&(_|0)==0));return S|0}function w6(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;if(_>>>0>0|(_|0)==0&A>>>0>4294967295){for(;F=wle(A|0,_|0,10,0)|0,S=S+-1|0,s[S>>0]=F&255|48,F=A,A=Sle(A|0,_|0,10,0)|0,_>>>0>9|(_|0)==9&F>>>0>4294967295;)_=Ue;_=A}else _=A;if(_)for(;S=S+-1|0,s[S>>0]=(_>>>0)%10|0|48,!(_>>>0<10);)_=(_>>>0)/10|0;return S|0}function DKe(A){return A=A|0,Gx(A,o[(eY()|0)+188>>2]|0)|0}function Ho(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;H=_&255,F=(S|0)!=0;e:do if(F&(A&3|0)!=0)for(Y=_&255;;){if((s[A>>0]|0)==Y<<24>>24){oe=6;break e}if(A=A+1|0,S=S+-1|0,F=(S|0)!=0,!(F&(A&3|0)!=0)){oe=5;break}}else oe=5;while(!1);(oe|0)==5&&(F?oe=6:S=0);e:do if((oe|0)==6&&(Y=_&255,(s[A>>0]|0)!=Y<<24>>24)){F=Br(H,16843009)|0;t:do if(S>>>0>3){for(;H=o[A>>2]^F,!((H&-2139062144^-2139062144)&H+-16843009|0);)if(A=A+4|0,S=S+-4|0,S>>>0<=3){oe=11;break t}}else oe=11;while(!1);if((oe|0)==11&&!S){S=0;break}for(;;){if((s[A>>0]|0)==Y<<24>>24)break e;if(A=A+1|0,S=S+-1|0,!S){S=0;break}}}while(!1);return(S|0?A:0)|0}function HS(A,_,S,F,Y){A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0;var H=0,oe=0;if(oe=T,T=T+256|0,H=oe,(S|0)>(F|0)&(Y&73728|0)==0){if(Y=S-F|0,pV(H|0,_|0,(Y>>>0<256?Y:256)|0)|0,Y>>>0>255){_=S-F|0;do G2(A,H,256),Y=Y+-256|0;while(Y>>>0>255);Y=_&255}G2(A,H,Y)}T=oe}function xKe(A,_){return A=A|0,_=_|0,A?A=XS(A,_,0)|0:A=0,A|0}function xh(A,_,S,F,Y,H){A=A|0,_=+_,S=S|0,F=F|0,Y=Y|0,H=H|0;var oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0,Is=0,ji=0,Ei=0,bo=0,ro=0,ca=0,as=0,hs=0,Sl=0,id=0,Tu=0,tg=0,ep=0,Vg=0,Vu=0,ml=0;ml=T,T=T+560|0,He=ml+8|0,bo=ml,Vu=ml+524|0,Vg=Vu,Ct=ml+512|0,o[bo>>2]=0,ep=Ct+12|0,yle(_)|0,(Ue|0)<0?(_=-_,Tu=1,id=5659):(Tu=(Y&2049|0)!=0&1,id=Y&2048|0?5662:Y&1|0?5665:5660),yle(_)|0,tg=Ue&2146435072;do if(tg>>>0<2146435072|(tg|0)==2146435072&!1){if(Is=+tte(_,bo)*2,oe=Is!=0,oe&&(o[bo>>2]=(o[bo>>2]|0)+-1),ca=H|32,(ca|0)==97){ji=H&32,cn=ji|0?id+9|0:id,Ut=Tu|2,oe=12-F|0;do if(F>>>0>11|(oe|0)==0)_=Is;else{_=8;do oe=oe+-1|0,_=_*16;while(oe|0);if((s[cn>>0]|0)==45){_=-(_+(-Is-_));break}else{_=Is+_-_;break}}while(!1);Se=o[bo>>2]|0,oe=(Se|0)<0?0-Se|0:Se,oe=w6(oe,((oe|0)<0)<<31>>31,ep)|0,(oe|0)==(ep|0)&&(oe=Ct+11|0,s[oe>>0]=48),s[oe+-1>>0]=(Se>>31&2)+43,At=oe+-2|0,s[At>>0]=H+15,Ct=(F|0)<1,He=(Y&8|0)==0,oe=Vu;do tg=~~_,Se=oe+1|0,s[oe>>0]=g[5694+tg>>0]|ji,_=(_-+(tg|0))*16,(Se-Vg|0)==1&&!(He&(Ct&_==0))?(s[Se>>0]=46,oe=oe+2|0):oe=Se;while(_!=0);tg=oe-Vg|0,Vg=ep-At|0,ep=(F|0)!=0&(tg+-2|0)<(F|0)?F+2|0:tg,oe=Vg+Ut+ep|0,HS(A,32,S,oe,Y),G2(A,cn,Ut),HS(A,48,S,oe,Y^65536),G2(A,Vu,tg),HS(A,48,ep-tg|0,0,0),G2(A,At,Vg),HS(A,32,S,oe,Y^8192);break}Se=(F|0)<0?6:F,oe?(oe=(o[bo>>2]|0)+-28|0,o[bo>>2]=oe,_=Is*268435456):(_=Is,oe=o[bo>>2]|0),tg=(oe|0)<0?He:He+288|0,He=tg;do hs=~~_>>>0,o[He>>2]=hs,He=He+4|0,_=(_-+(hs>>>0))*1e9;while(_!=0);if((oe|0)>0)for(Ct=tg,Ut=He;;){if(At=(oe|0)<29?oe:29,oe=Ut+-4|0,oe>>>0>=Ct>>>0){He=0;do as=Ixe(o[oe>>2]|0,0,At|0)|0,as=xZ(as|0,Ue|0,He|0,0)|0,hs=Ue,ro=wle(as|0,hs|0,1e9,0)|0,o[oe>>2]=ro,He=Sle(as|0,hs|0,1e9,0)|0,oe=oe+-4|0;while(oe>>>0>=Ct>>>0);He&&(Ct=Ct+-4|0,o[Ct>>2]=He)}for(He=Ut;!(He>>>0<=Ct>>>0);)if(oe=He+-4|0,!(o[oe>>2]|0))He=oe;else break;if(oe=(o[bo>>2]|0)-At|0,o[bo>>2]=oe,(oe|0)>0)Ut=He;else break}else Ct=tg;if((oe|0)<0){F=((Se+25|0)/9|0)+1|0,Ei=(ca|0)==102;do{if(ji=0-oe|0,ji=(ji|0)<9?ji:9,Ct>>>0>>0){At=(1<>>ji,cn=0,oe=Ct;do hs=o[oe>>2]|0,o[oe>>2]=(hs>>>ji)+cn,cn=Br(hs&At,Ut)|0,oe=oe+4|0;while(oe>>>0>>0);oe=o[Ct>>2]|0?Ct:Ct+4|0,cn?(o[He>>2]=cn,Ct=oe,oe=He+4|0):(Ct=oe,oe=He)}else Ct=o[Ct>>2]|0?Ct:Ct+4|0,oe=He;He=Ei?tg:Ct,He=(oe-He>>2|0)>(F|0)?He+(F<<2)|0:oe,oe=(o[bo>>2]|0)+ji|0,o[bo>>2]=oe}while((oe|0)<0);oe=Ct,F=He}else oe=Ct,F=He;if(hs=tg,oe>>>0>>0){if(He=(hs-oe>>2)*9|0,At=o[oe>>2]|0,At>>>0>=10){Ct=10;do Ct=Ct*10|0,He=He+1|0;while(At>>>0>=Ct>>>0)}}else He=0;if(Ei=(ca|0)==103,ro=(Se|0)!=0,Ct=Se-((ca|0)!=102?He:0)+((ro&Ei)<<31>>31)|0,(Ct|0)<(((F-hs>>2)*9|0)+-9|0)){if(Ct=Ct+9216|0,ji=tg+4+(((Ct|0)/9|0)+-1024<<2)|0,Ct=((Ct|0)%9|0)+1|0,(Ct|0)<9){At=10;do At=At*10|0,Ct=Ct+1|0;while((Ct|0)!=9)}else At=10;if(Ut=o[ji>>2]|0,cn=(Ut>>>0)%(At>>>0)|0,Ct=(ji+4|0)==(F|0),Ct&(cn|0)==0)Ct=ji;else if(Is=((Ut>>>0)/(At>>>0)|0)&1|0?9007199254740994:9007199254740992,as=(At|0)/2|0,_=cn>>>0>>0?.5:Ct&(cn|0)==(as|0)?1:1.5,Tu&&(as=(s[id>>0]|0)==45,_=as?-_:_,Is=as?-Is:Is),Ct=Ut-cn|0,o[ji>>2]=Ct,Is+_!=Is){if(as=Ct+At|0,o[ji>>2]=as,as>>>0>999999999)for(He=ji;Ct=He+-4|0,o[He>>2]=0,Ct>>>0>>0&&(oe=oe+-4|0,o[oe>>2]=0),as=(o[Ct>>2]|0)+1|0,o[Ct>>2]=as,as>>>0>999999999;)He=Ct;else Ct=ji;if(He=(hs-oe>>2)*9|0,Ut=o[oe>>2]|0,Ut>>>0>=10){At=10;do At=At*10|0,He=He+1|0;while(Ut>>>0>=At>>>0)}}else Ct=ji;Ct=Ct+4|0,Ct=F>>>0>Ct>>>0?Ct:F,as=oe}else Ct=F,as=oe;for(ca=Ct;;){if(ca>>>0<=as>>>0){bo=0;break}if(oe=ca+-4|0,!(o[oe>>2]|0))ca=oe;else{bo=1;break}}F=0-He|0;do if(Ei)if(oe=((ro^1)&1)+Se|0,(oe|0)>(He|0)&(He|0)>-5?(At=H+-1|0,Se=oe+-1-He|0):(At=H+-2|0,Se=oe+-1|0),oe=Y&8,oe)ji=oe;else{if(bo&&(Sl=o[ca+-4>>2]|0,(Sl|0)!=0))if((Sl>>>0)%10|0)Ct=0;else{Ct=0,oe=10;do oe=oe*10|0,Ct=Ct+1|0;while(!((Sl>>>0)%(oe>>>0)|0|0))}else Ct=9;if(oe=((ca-hs>>2)*9|0)+-9|0,(At|32|0)==102){ji=oe-Ct|0,ji=(ji|0)>0?ji:0,Se=(Se|0)<(ji|0)?Se:ji,ji=0;break}else{ji=oe+He-Ct|0,ji=(ji|0)>0?ji:0,Se=(Se|0)<(ji|0)?Se:ji,ji=0;break}}else At=H,ji=Y&8;while(!1);if(Ei=Se|ji,Ut=(Ei|0)!=0&1,cn=(At|32|0)==102,cn)ro=0,oe=(He|0)>0?He:0;else{if(oe=(He|0)<0?F:He,oe=w6(oe,((oe|0)<0)<<31>>31,ep)|0,Ct=ep,(Ct-oe|0)<2)do oe=oe+-1|0,s[oe>>0]=48;while((Ct-oe|0)<2);s[oe+-1>>0]=(He>>31&2)+43,oe=oe+-2|0,s[oe>>0]=At,ro=oe,oe=Ct-oe|0}if(oe=Tu+1+Se+Ut+oe|0,HS(A,32,S,oe,Y),G2(A,id,Tu),HS(A,48,S,oe,Y^65536),cn){At=as>>>0>tg>>>0?tg:as,ji=Vu+9|0,Ut=ji,cn=Vu+8|0,Ct=At;do{if(He=w6(o[Ct>>2]|0,0,ji)|0,(Ct|0)==(At|0))(He|0)==(ji|0)&&(s[cn>>0]=48,He=cn);else if(He>>>0>Vu>>>0){pV(Vu|0,48,He-Vg|0)|0;do He=He+-1|0;while(He>>>0>Vu>>>0)}G2(A,He,Ut-He|0),Ct=Ct+4|0}while(Ct>>>0<=tg>>>0);if(Ei|0&&G2(A,5710,1),Ct>>>0>>0&(Se|0)>0)for(;;){if(He=w6(o[Ct>>2]|0,0,ji)|0,He>>>0>Vu>>>0){pV(Vu|0,48,He-Vg|0)|0;do He=He+-1|0;while(He>>>0>Vu>>>0)}if(G2(A,He,(Se|0)<9?Se:9),Ct=Ct+4|0,He=Se+-9|0,Ct>>>0>>0&(Se|0)>9)Se=He;else{Se=He;break}}HS(A,48,Se+9|0,9,0)}else{if(Ei=bo?ca:as+4|0,(Se|0)>-1){bo=Vu+9|0,ji=(ji|0)==0,F=bo,Ut=0-Vg|0,cn=Vu+8|0,At=as;do{He=w6(o[At>>2]|0,0,bo)|0,(He|0)==(bo|0)&&(s[cn>>0]=48,He=cn);do if((At|0)==(as|0)){if(Ct=He+1|0,G2(A,He,1),ji&(Se|0)<1){He=Ct;break}G2(A,5710,1),He=Ct}else{if(He>>>0<=Vu>>>0)break;pV(Vu|0,48,He+Ut|0)|0;do He=He+-1|0;while(He>>>0>Vu>>>0)}while(!1);Vg=F-He|0,G2(A,He,(Se|0)>(Vg|0)?Vg:Se),Se=Se-Vg|0,At=At+4|0}while(At>>>0>>0&(Se|0)>-1)}HS(A,48,Se+18|0,18,0),G2(A,ro,ep-ro|0)}HS(A,32,S,oe,Y^8192)}else Vu=(H&32|0)!=0,oe=Tu+3|0,HS(A,32,S,oe,Y&-65537),G2(A,id,Tu),G2(A,_!=_|!1?Vu?5686:5690:Vu?5678:5682,3),HS(A,32,S,oe,Y^8192);while(!1);return T=ml,((oe|0)<(S|0)?S:oe)|0}function yle(A){A=+A;var _=0;return y[v>>3]=A,_=o[v>>2]|0,Ue=o[v+4>>2]|0,_|0}function tte(A,_){return A=+A,_=_|0,+ +co(A,_)}function co(A,_){A=+A,_=_|0;var S=0,F=0,Y=0;switch(y[v>>3]=A,S=o[v>>2]|0,F=o[v+4>>2]|0,Y=nte(S|0,F|0,52)|0,Y&2047){case 0:{A!=0?(A=+co(A*18446744073709552e3,_),S=(o[_>>2]|0)+-64|0):S=0,o[_>>2]=S;break}case 2047:break;default:o[_>>2]=(Y&2047)+-1022,o[v>>2]=S,o[v+4>>2]=F&-2146435073|1071644672,A=+y[v>>3]}return+A}function XS(A,_,S){A=A|0,_=_|0,S=S|0;do if(A){if(_>>>0<128){s[A>>0]=_,A=1;break}if(!(o[o[(rte()|0)+188>>2]>>2]|0))if((_&-128|0)==57216){s[A>>0]=_,A=1;break}else{o[(dV()|0)>>2]=84,A=-1;break}if(_>>>0<2048){s[A>>0]=_>>>6|192,s[A+1>>0]=_&63|128,A=2;break}if(_>>>0<55296|(_&-8192|0)==57344){s[A>>0]=_>>>12|224,s[A+1>>0]=_>>>6&63|128,s[A+2>>0]=_&63|128,A=3;break}if((_+-65536|0)>>>0<1048576){s[A>>0]=_>>>18|240,s[A+1>>0]=_>>>12&63|128,s[A+2>>0]=_>>>6&63|128,s[A+3>>0]=_&63|128,A=4;break}else{o[(dV()|0)>>2]=84,A=-1;break}}else A=1;while(!1);return A|0}function rte(){return bN()|0}function eY(){return bN()|0}function Gx(A,_){A=A|0,_=_|0;var S=0,F=0;for(F=0;;){if((g[5712+F>>0]|0)==(A|0)){A=2;break}if(S=F+1|0,(S|0)==87){S=5800,F=87,A=5;break}else F=S}if((A|0)==2&&(F?(S=5800,A=5):S=5800),(A|0)==5)for(;;){do A=S,S=S+1|0;while(s[A>>0]|0);if(F=F+-1|0,F)A=5;else break}return Qg(S,o[_+20>>2]|0)|0}function Qg(A,_){return A=A|0,_=_|0,kKe(A,_)|0}function kKe(A,_){return A=A|0,_=_|0,_?_=Axe(o[_>>2]|0,o[_+4>>2]|0,A)|0:_=0,(_|0?_:A)|0}function Axe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0;cn=(o[A>>2]|0)+1794895138|0,H=SG(o[A+8>>2]|0,cn)|0,F=SG(o[A+12>>2]|0,cn)|0,Y=SG(o[A+16>>2]|0,cn)|0;e:do if(H>>>0<_>>>2>>>0&&(Ut=_-(H<<2)|0,F>>>0>>0&Y>>>0>>0)&&!((Y|F)&3|0)){for(Ut=F>>>2,At=Y>>>2,Ct=0;;){if(Se=H>>>1,He=Ct+Se|0,oe=He<<1,Y=oe+Ut|0,F=SG(o[A+(Y<<2)>>2]|0,cn)|0,Y=SG(o[A+(Y+1<<2)>>2]|0,cn)|0,!(Y>>>0<_>>>0&F>>>0<(_-Y|0)>>>0)){F=0;break e}if(s[A+(Y+F)>>0]|0){F=0;break e}if(F=kx(S,A+Y|0)|0,!F)break;if(F=(F|0)<0,(H|0)==1){F=0;break e}else Ct=F?Ct:He,H=F?Se:H-Se|0}F=oe+At|0,Y=SG(o[A+(F<<2)>>2]|0,cn)|0,F=SG(o[A+(F+1<<2)>>2]|0,cn)|0,F>>>0<_>>>0&Y>>>0<(_-F|0)>>>0?F=s[A+(F+Y)>>0]|0?0:A+F|0:F=0}else F=0;while(!1);return F|0}function SG(A,_){A=A|0,_=_|0;var S=0;return S=Dhe(A|0)|0,(_|0?S:A)|0}function ble(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0,Se=0;F=S+16|0,Y=o[F>>2]|0,Y?H=5:JS(S)|0?F=0:(Y=o[F>>2]|0,H=5);e:do if((H|0)==5){if(Se=S+20|0,oe=o[Se>>2]|0,F=oe,(Y-oe|0)>>>0<_>>>0){F=z3[o[S+36>>2]&7](S,A,_)|0;break}t:do if((s[S+75>>0]|0)>-1){for(oe=_;;){if(!oe){H=0,Y=A;break t}if(Y=oe+-1|0,(s[A+Y>>0]|0)==10)break;oe=Y}if(F=z3[o[S+36>>2]&7](S,A,oe)|0,F>>>0>>0)break e;H=oe,Y=A+oe|0,_=_-oe|0,F=o[Se>>2]|0}else H=0,Y=A;while(!1);$d(F|0,Y|0,_|0)|0,o[Se>>2]=(o[Se>>2]|0)+_,F=H+_|0}while(!1);return F|0}function JS(A){A=A|0;var _=0,S=0;return _=A+74|0,S=s[_>>0]|0,s[_>>0]=S+255|S,_=o[A>>2]|0,_&8?(o[A>>2]=_|32,A=-1):(o[A+8>>2]=0,o[A+4>>2]=0,S=o[A+44>>2]|0,o[A+28>>2]=S,o[A+20>>2]=S,o[A+16>>2]=S+(o[A+48>>2]|0),A=0),A|0}function mA(A,_){A=we(A),_=we(_);var S=0,F=0;S=tY(A)|0;do if((S&2147483647)>>>0<=2139095040){if(F=tY(_)|0,(F&2147483647)>>>0<=2139095040)if((F^S|0)<0){A=(S|0)<0?_:A;break}else{A=A<_?_:A;break}}else A=_;while(!1);return we(A)}function tY(A){return A=we(A),m[v>>2]=A,o[v>>2]|0|0}function US(A,_){A=we(A),_=we(_);var S=0,F=0;S=i4(A)|0;do if((S&2147483647)>>>0<=2139095040){if(F=i4(_)|0,(F&2147483647)>>>0<=2139095040)if((F^S|0)<0){A=(S|0)<0?A:_;break}else{A=A<_?A:_;break}}else A=_;while(!1);return we(A)}function i4(A){return A=we(A),m[v>>2]=A,o[v>>2]|0|0}function s4(A,_){A=we(A),_=we(_);var S=0,F=0,Y=0,H=0,oe=0,Se=0,He=0,Ct=0;H=(m[v>>2]=A,o[v>>2]|0),Se=(m[v>>2]=_,o[v>>2]|0),S=H>>>23&255,oe=Se>>>23&255,He=H&-2147483648,Y=Se<<1;e:do if(Y|0&&!((S|0)==255|((rY(_)|0)&2147483647)>>>0>2139095040)){if(F=H<<1,F>>>0<=Y>>>0)return _=we(A*we(0)),we((F|0)==(Y|0)?_:A);if(S)F=H&8388607|8388608;else{if(S=H<<9,(S|0)>-1){F=S,S=0;do S=S+-1|0,F=F<<1;while((F|0)>-1)}else S=0;F=H<<1-S}if(oe)Se=Se&8388607|8388608;else{if(H=Se<<9,(H|0)>-1){Y=0;do Y=Y+-1|0,H=H<<1;while((H|0)>-1)}else Y=0;oe=Y,Se=Se<<1-Y}Y=F-Se|0,H=(Y|0)>-1;t:do if((S|0)>(oe|0)){for(;;){if(H)if(Y)F=Y;else break;if(F=F<<1,S=S+-1|0,Y=F-Se|0,H=(Y|0)>-1,(S|0)<=(oe|0))break t}_=we(A*we(0));break e}while(!1);if(H)if(Y)F=Y;else{_=we(A*we(0));break}if(F>>>0<8388608)do F=F<<1,S=S+-1|0;while(F>>>0<8388608);(S|0)>0?S=F+-8388608|S<<23:S=F>>>(1-S|0),_=(o[v>>2]=S|He,we(m[v>>2]))}else Ct=3;while(!1);return(Ct|0)==3&&(_=we(A*_),_=we(_/_)),we(_)}function rY(A){return A=we(A),m[v>>2]=A,o[v>>2]|0|0}function Ele(A,_){return A=A|0,_=_|0,NKe(o[582]|0,A,_)|0}function RI(A){A=A|0,Bo()}function o4(A){A=A|0}function dxe(A,_){return A=A|0,_=_|0,0}function nY(A){return A=A|0,(EN(A+4|0)|0)==-1?(IV[o[(o[A>>2]|0)+8>>2]&127](A),A=1):A=0,A|0}function EN(A){A=A|0;var _=0;return _=o[A>>2]|0,o[A>>2]=_+-1,_+-1|0}function iY(A){A=A|0,nY(A)|0&&Ble(A)}function Ble(A){A=A|0;var _=0;_=A+8|0,o[_>>2]|0&&(EN(_)|0)!=-1||IV[o[(o[A>>2]|0)+16>>2]&127](A)}function xu(A){A=A|0;var _=0;for(_=A|0?A:1;A=jee(_)|0,!(A|0);){if(A=pxe()|0,!A){A=0;break}Rf[A&0]()}return A|0}function vle(A){return A=A|0,xu(A)|0}function Va(A){A=A|0,zee(A)}function The(A){A=A|0,(s[A+11>>0]|0)<0&&Va(o[A>>2]|0)}function pxe(){var A=0;return A=o[2923]|0,o[2923]=A+0,A|0}function fxe(){}function rT(A,_,S,F){return A=A|0,_=_|0,S=S|0,F=F|0,F=_-F-(S>>>0>A>>>0|0)>>>0,Ue=F,A-S>>>0|0|0}function xZ(A,_,S,F){return A=A|0,_=_|0,S=S|0,F=F|0,S=A+S>>>0,Ue=_+F+(S>>>0>>0|0)>>>0,S|0|0}function pV(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0,oe=0;if(H=A+S|0,_=_&255,(S|0)>=67){for(;A&3;)s[A>>0]=_,A=A+1|0;for(F=H&-4|0,Y=F-64|0,oe=_|_<<8|_<<16|_<<24;(A|0)<=(Y|0);)o[A>>2]=oe,o[A+4>>2]=oe,o[A+8>>2]=oe,o[A+12>>2]=oe,o[A+16>>2]=oe,o[A+20>>2]=oe,o[A+24>>2]=oe,o[A+28>>2]=oe,o[A+32>>2]=oe,o[A+36>>2]=oe,o[A+40>>2]=oe,o[A+44>>2]=oe,o[A+48>>2]=oe,o[A+52>>2]=oe,o[A+56>>2]=oe,o[A+60>>2]=oe,A=A+64|0;for(;(A|0)<(F|0);)o[A>>2]=oe,A=A+4|0}for(;(A|0)<(H|0);)s[A>>0]=_,A=A+1|0;return H-S|0}function Ixe(A,_,S){return A=A|0,_=_|0,S=S|0,(S|0)<32?(Ue=_<>>32-S,A<>>S,A>>>S|(_&(1<>>S-32|0)}function $d(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,Y=0,H=0;if((S|0)>=8192)return kl(A|0,_|0,S|0)|0;if(H=A|0,Y=A+S|0,(A&3)==(_&3)){for(;A&3;){if(!S)return H|0;s[A>>0]=s[_>>0]|0,A=A+1|0,_=_+1|0,S=S-1|0}for(S=Y&-4|0,F=S-64|0;(A|0)<=(F|0);)o[A>>2]=o[_>>2],o[A+4>>2]=o[_+4>>2],o[A+8>>2]=o[_+8>>2],o[A+12>>2]=o[_+12>>2],o[A+16>>2]=o[_+16>>2],o[A+20>>2]=o[_+20>>2],o[A+24>>2]=o[_+24>>2],o[A+28>>2]=o[_+28>>2],o[A+32>>2]=o[_+32>>2],o[A+36>>2]=o[_+36>>2],o[A+40>>2]=o[_+40>>2],o[A+44>>2]=o[_+44>>2],o[A+48>>2]=o[_+48>>2],o[A+52>>2]=o[_+52>>2],o[A+56>>2]=o[_+56>>2],o[A+60>>2]=o[_+60>>2],A=A+64|0,_=_+64|0;for(;(A|0)<(S|0);)o[A>>2]=o[_>>2],A=A+4|0,_=_+4|0}else for(S=Y-4|0;(A|0)<(S|0);)s[A>>0]=s[_>>0]|0,s[A+1>>0]=s[_+1>>0]|0,s[A+2>>0]=s[_+2>>0]|0,s[A+3>>0]=s[_+3>>0]|0,A=A+4|0,_=_+4|0;for(;(A|0)<(Y|0);)s[A>>0]=s[_>>0]|0,A=A+1|0,_=_+1|0;return H|0}function Nhe(A){A=A|0;var _=0;return _=s[X+(A&255)>>0]|0,(_|0)<8?_|0:(_=s[X+(A>>8&255)>>0]|0,(_|0)<8?_+8|0:(_=s[X+(A>>16&255)>>0]|0,(_|0)<8?_+16|0:(s[X+(A>>>24)>>0]|0)+24|0))}function Rhe(A,_,S,F,Y){A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0;var H=0,oe=0,Se=0,He=0,Ct=0,At=0,Ut=0,cn=0,Is=0,ji=0;if(At=A,He=_,Ct=He,oe=S,cn=F,Se=cn,!Ct)return H=(Y|0)!=0,Se?H?(o[Y>>2]=A|0,o[Y+4>>2]=_&0,cn=0,Y=0,Ue=cn,Y|0):(cn=0,Y=0,Ue=cn,Y|0):(H&&(o[Y>>2]=(At>>>0)%(oe>>>0),o[Y+4>>2]=0),cn=0,Y=(At>>>0)/(oe>>>0)>>>0,Ue=cn,Y|0);H=(Se|0)==0;do if(oe){if(!H){if(H=(Gn(Se|0)|0)-(Gn(Ct|0)|0)|0,H>>>0<=31){Ut=H+1|0,Se=31-H|0,_=H-31>>31,oe=Ut,A=At>>>(Ut>>>0)&_|Ct<>>(Ut>>>0)&_,H=0,Se=At<>2]=A|0,o[Y+4>>2]=He|_&0,cn=0,Y=0,Ue=cn,Y|0):(cn=0,Y=0,Ue=cn,Y|0)}if(H=oe-1|0,H&oe|0){Se=(Gn(oe|0)|0)+33-(Gn(Ct|0)|0)|0,ji=64-Se|0,Ut=32-Se|0,He=Ut>>31,Is=Se-32|0,_=Is>>31,oe=Se,A=Ut-1>>31&Ct>>>(Is>>>0)|(Ct<>>(Se>>>0))&_,_=_&Ct>>>(Se>>>0),H=At<>>(Is>>>0))&He|At<>31;break}return Y|0&&(o[Y>>2]=H&At,o[Y+4>>2]=0),(oe|0)==1?(Is=He|_&0,ji=A|0|0,Ue=Is,ji|0):(ji=Nhe(oe|0)|0,Is=Ct>>>(ji>>>0)|0,ji=Ct<<32-ji|At>>>(ji>>>0)|0,Ue=Is,ji|0)}else{if(H)return Y|0&&(o[Y>>2]=(Ct>>>0)%(oe>>>0),o[Y+4>>2]=0),Is=0,ji=(Ct>>>0)/(oe>>>0)>>>0,Ue=Is,ji|0;if(!At)return Y|0&&(o[Y>>2]=0,o[Y+4>>2]=(Ct>>>0)%(Se>>>0)),Is=0,ji=(Ct>>>0)/(Se>>>0)>>>0,Ue=Is,ji|0;if(H=Se-1|0,!(H&Se))return Y|0&&(o[Y>>2]=A|0,o[Y+4>>2]=H&Ct|_&0),Is=0,ji=Ct>>>((Nhe(Se|0)|0)>>>0),Ue=Is,ji|0;if(H=(Gn(Se|0)|0)-(Gn(Ct|0)|0)|0,H>>>0<=30){_=H+1|0,Se=31-H|0,oe=_,A=Ct<>>(_>>>0),_=Ct>>>(_>>>0),H=0,Se=At<>2]=A|0,o[Y+4>>2]=He|_&0,Is=0,ji=0,Ue=Is,ji|0):(Is=0,ji=0,Ue=Is,ji|0)}while(!1);if(!oe)Ct=Se,He=0,Se=0;else{Ut=S|0|0,At=cn|F&0,Ct=xZ(Ut|0,At|0,-1,-1)|0,S=Ue,He=Se,Se=0;do F=He,He=H>>>31|He<<1,H=Se|H<<1,F=A<<1|F>>>31|0,cn=A>>>31|_<<1|0,rT(Ct|0,S|0,F|0,cn|0)|0,ji=Ue,Is=ji>>31|((ji|0)<0?-1:0)<<1,Se=Is&1,A=rT(F|0,cn|0,Is&Ut|0,(((ji|0)<0?-1:0)>>31|((ji|0)<0?-1:0)<<1)&At|0)|0,_=Ue,oe=oe-1|0;while(oe|0);Ct=He,He=0}return oe=0,Y|0&&(o[Y>>2]=A,o[Y+4>>2]=_),Is=(H|0)>>>31|(Ct|oe)<<1|(oe<<1|H>>>31)&0|He,ji=(H<<1|0)&-2|Se,Ue=Is,ji|0}function Sle(A,_,S,F){return A=A|0,_=_|0,S=S|0,F=F|0,Rhe(A,_,S,F,0)|0}function fV(A){A=A|0;var _=0,S=0;return S=A+15&-16|0,_=o[B>>2]|0,A=_+S|0,(S|0)>0&(A|0)<(_|0)|(A|0)<0?(lr()|0,us(12),-1):(o[B>>2]=A,(A|0)>(Qs()|0)&&!(ka()|0)?(o[B>>2]=_,us(12),-1):_|0)}function T6(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;if((_|0)<(A|0)&(A|0)<(_+S|0)){for(F=A,_=_+S|0,A=A+S|0;(S|0)>0;)A=A-1|0,_=_-1|0,S=S-1|0,s[A>>0]=s[_>>0]|0;A=F}else $d(A,_,S)|0;return A|0}function wle(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var Y=0,H=0;return H=T,T=T+16|0,Y=H|0,Rhe(A,_,S,F,Y)|0,T=H,Ue=o[Y+4>>2]|0,o[Y>>2]|0|0}function Dhe(A){return A=A|0,(A&255)<<24|(A>>8&255)<<16|(A>>16&255)<<8|A>>>24|0}function Cxe(A,_,S,F,Y,H){A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0,H=H|0,ate[A&1](_|0,S|0,F|0,Y|0,H|0)}function mxe(A,_,S){A=A|0,_=_|0,S=we(S),c4[A&1](_|0,we(S))}function hxe(A,_,S){A=A|0,_=_|0,S=+S,Fhe[A&31](_|0,+S)}function N6(A,_,S,F){return A=A|0,_=_|0,S=we(S),F=we(F),we(Dle[A&0](_|0,we(S),we(F)))}function _xe(A,_){A=A|0,_=_|0,IV[A&127](_|0)}function yxe(A,_,S){A=A|0,_=_|0,S=S|0,nT[A&31](_|0,S|0)}function bxe(A,_){return A=A|0,_=_|0,lY[A&31](_|0)|0}function Exe(A,_,S,F,Y){A=A|0,_=_|0,S=+S,F=+F,Y=Y|0,Zhe[A&1](_|0,+S,+F,Y|0)}function Bxe(A,_,S,F){A=A|0,_=_|0,S=+S,F=+F,Yxe[A&1](_|0,+S,+F)}function vxe(A,_,S,F){return A=A|0,_=_|0,S=S|0,F=F|0,z3[A&7](_|0,S|0,F|0)|0}function Sxe(A,_,S,F){return A=A|0,_=_|0,S=S|0,F=F|0,+D6[A&1](_|0,S|0,F|0)}function wxe(A,_){return A=A|0,_=_|0,+Lhe[A&15](_|0)}function Txe(A,_,S){return A=A|0,_=_|0,S=+S,a0[A&1](_|0,+S)|0}function Nxe(A,_,S){return A=A|0,_=_|0,S=S|0,xg[A&15](_|0,S|0)|0}function Rxe(A,_,S,F,Y,H){A=A|0,_=_|0,S=S|0,F=+F,Y=+Y,H=H|0,qp[A&1](_|0,S|0,+F,+Y,H|0)}function Dxe(A,_,S,F,Y,H,oe){A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0,H=H|0,oe=oe|0,Jc[A&1](_|0,S|0,F|0,Y|0,H|0,oe|0)}function xxe(A,_,S){return A=A|0,_=_|0,S=S|0,+GC[A&7](_|0,S|0)}function Tle(A){return A=A|0,n_[A&7]()|0}function kxe(A,_,S,F,Y,H){return A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0,H=H|0,Ql[A&1](_|0,S|0,F|0,Y|0,H|0)|0}function xhe(A,_,S,F,Y){A=A|0,_=_|0,S=S|0,F=F|0,Y=+Y,jS[A&1](_|0,S|0,F|0,+Y)}function Gxe(A,_,S,F,Y,H,oe){A=A|0,_=_|0,S=S|0,F=we(F),Y=Y|0,H=we(H),oe=oe|0,cI[A&1](_|0,S|0,we(F),Y|0,we(H),oe|0)}function Fxe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,$p[A&15](_|0,S|0,F|0)}function Zxe(A){A=A|0,Rf[A&0]()}function Lxe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=+F,Pb[A&15](_|0,S|0,+F)}function Vxe(A,_,S){return A=A|0,_=+_,S=+S,sb[A&1](+_,+S)|0}function Wxe(A,_,S,F,Y){A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0,CV[A&15](_|0,S|0,F|0,Y|0)}function Pxe(A,_,S,F,Y){A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0,Zi(0)}function Nle(A,_){A=A|0,_=we(_),Zi(1)}function KS(A,_){A=A|0,_=+_,Zi(2)}function R6(A,_,S){return A=A|0,_=we(_),S=we(S),Zi(3),ys}function du(A){A=A|0,Zi(4)}function K3(A,_){A=A|0,_=_|0,Zi(5)}function bu(A){return A=A|0,Zi(6),0}function sY(A,_,S,F){A=A|0,_=+_,S=+S,F=F|0,Zi(7)}function khe(A,_,S){A=A|0,_=+_,S=+S,Zi(8)}function oY(A,_,S){return A=A|0,_=_|0,S=S|0,Zi(9),0}function aY(A,_,S){return A=A|0,_=_|0,S=S|0,Zi(10),0}function j3(A){return A=A|0,Zi(11),0}function Rle(A,_){return A=A|0,_=+_,Zi(12),0}function cY(A,_){return A=A|0,_=_|0,Zi(13),0}function Oxe(A,_,S,F,Y){A=A|0,_=_|0,S=+S,F=+F,Y=Y|0,Zi(14)}function Ghe(A,_,S,F,Y,H){A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0,H=H|0,Zi(15)}function ite(A,_){return A=A|0,_=_|0,Zi(16),0}function ste(){return Zi(17),0}function ote(A,_,S,F,Y){return A=A|0,_=_|0,S=S|0,F=F|0,Y=Y|0,Zi(18),0}function wG(A,_,S,F){A=A|0,_=_|0,S=S|0,F=+F,Zi(19)}function Mxe(A,_,S,F,Y,H){A=A|0,_=_|0,S=we(S),F=F|0,Y=we(Y),H=H|0,Zi(20)}function a4(A,_,S){A=A|0,_=_|0,S=S|0,Zi(21)}function Qxe(){Zi(22)}function sr(A,_,S){A=A|0,_=_|0,S=+S,Zi(23)}function kc(A,_){return A=+A,_=+_,Zi(24),0}function Fx(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,Zi(25)}var ate=[Pxe,pN],c4=[Nle,_1],Fhe=[KS,$h,B_,p2,hB,BS,bv,vh,Uy,kb,j_,f2,b1,E1,Z0,Sh,L0,_d,Ev,KS,KS,KS,KS,KS,KS,KS,KS,KS,KS,KS,KS,KS],Dle=[R6],IV=[du,o4,pA,sI,e0,YR,Yae,x$,cNt,uDe,gDe,SDe,wDe,pNt,yN,Ale,E6,Bl,SE,_v,Oo,TI,TS,$,Er,Ze,Rd,jo,bx,fZ,wv,hZ,y$,P0,BX,J9,F3,eme,ERe,M$,Us,fu,YTt,kRe,z9,lce,ree,eN,lee,dme,H8,i0,VS,nDe,tNt,tT,sKe,oDe,iV,dDe,lNt,cKe,cp,pt,ZDr,NNt,nle,I6,h6,WNt,ONt,y6,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du,du],nT=[K3,yv,rN,nN,Hw,Wa,EA,hd,nI,Pp,ES,dm,_B,aa,xA,cZ,kR,wE,GR,xo,Mc,gt,x8,j$,_me,R_,hDe,Vee,K3,K3,K3,K3],lY=[bu,vhe,vE,I2,V0,II,Op,W0,v1,gd,v_,vS,q_,gh,Z,nee,hee,gNt,JQ,CN,bu,bu,bu,bu,bu,bu,bu,bu,bu,bu,bu,bu],Zhe=[sY,MI],Yxe=[khe,ZQ],z3=[oY,She,wKe,QNt,O9,Jae,HRe,KQ],D6=[aY,vX],Lhe=[j3,z_,e_,Ad,FR,k,L,ee,ve,xe,j3,j3,j3,j3,j3,j3],a0=[Rle,wme],xg=[cY,dxe,Oc,Pa,IA,w_,d8,_8,V$,L8,xb,kNt,cY,cY,cY,cY],qp=[Oxe,df],Jc=[Ghe,eg],GC=[ite,fy,nr,Xr,Kn,Oae,ite,ite],n_=[ste,to,Eh,$T,iNt,cDe,ba,sxe],Ql=[ote,uf],jS=[wG,kX],cI=[Mxe,SS],$p=[a4,Sp,pp,Af,tC,QCe,T_,Pd,LS,iG,fN,RNt,_6,a4,a4,a4],Rf=[Qxe],Pb=[sr,fx,Bh,F0,mB,qu,AC,B1,fG,vZ,YX,sr,sr,sr,sr,sr],sb=[kc,lDe],CV=[Fx,E$,LX,eT,wZ,HX,vee,$8,yG,Uce,hhe,Fx,Fx,Fx,Fx,Fx];return{_llvm_bswap_i32:Dhe,dynCall_idd:Vxe,dynCall_i:Tle,_i64Subtract:rT,___udivdi3:Sle,dynCall_vif:mxe,setThrew:oc,dynCall_viii:Fxe,_bitshift64Lshr:nte,_bitshift64Shl:Ixe,dynCall_vi:_xe,dynCall_viiddi:Rxe,dynCall_diii:Sxe,dynCall_iii:Nxe,_memset:pV,_sbrk:fV,_memcpy:$d,__GLOBAL__sub_I_Yoga_cpp:yS,dynCall_vii:yxe,___uremdi3:wle,dynCall_vid:hxe,stackAlloc:Xa,_nbind_init:k2,getTempRet0:pI,dynCall_di:wxe,dynCall_iid:Txe,setTempRet0:TC,_i64Add:xZ,dynCall_fiff:N6,dynCall_iiii:vxe,_emscripten_get_global_libc:gxe,dynCall_viid:Lxe,dynCall_viiid:xhe,dynCall_viififi:Gxe,dynCall_ii:bxe,__GLOBAL__sub_I_Binding_cc:Jce,dynCall_viiii:Wxe,dynCall_iiiiii:kxe,stackSave:cm,dynCall_viiiii:Cxe,__GLOBAL__sub_I_nbind_cc:Fa,dynCall_vidd:Bxe,_free:zee,runPostSets:fxe,dynCall_viiiiii:Dxe,establishStackSpace:ps,_memmove:T6,stackRestore:eo,_malloc:jee,__GLOBAL__sub_I_common_cc:wee,dynCall_viddi:Exe,dynCall_dii:xxe,dynCall_v:Zxe}}(Module.asmGlobalArg,Module.asmLibraryArg,buffer),_llvm_bswap_i32=Module._llvm_bswap_i32=asm._llvm_bswap_i32,getTempRet0=Module.getTempRet0=asm.getTempRet0,___udivdi3=Module.___udivdi3=asm.___udivdi3,setThrew=Module.setThrew=asm.setThrew,_bitshift64Lshr=Module._bitshift64Lshr=asm._bitshift64Lshr,_bitshift64Shl=Module._bitshift64Shl=asm._bitshift64Shl,_memset=Module._memset=asm._memset,_sbrk=Module._sbrk=asm._sbrk,_memcpy=Module._memcpy=asm._memcpy,stackAlloc=Module.stackAlloc=asm.stackAlloc,___uremdi3=Module.___uremdi3=asm.___uremdi3,_nbind_init=Module._nbind_init=asm._nbind_init,_i64Subtract=Module._i64Subtract=asm._i64Subtract,setTempRet0=Module.setTempRet0=asm.setTempRet0,_i64Add=Module._i64Add=asm._i64Add,_emscripten_get_global_libc=Module._emscripten_get_global_libc=asm._emscripten_get_global_libc,__GLOBAL__sub_I_Yoga_cpp=Module.__GLOBAL__sub_I_Yoga_cpp=asm.__GLOBAL__sub_I_Yoga_cpp,__GLOBAL__sub_I_Binding_cc=Module.__GLOBAL__sub_I_Binding_cc=asm.__GLOBAL__sub_I_Binding_cc,stackSave=Module.stackSave=asm.stackSave,__GLOBAL__sub_I_nbind_cc=Module.__GLOBAL__sub_I_nbind_cc=asm.__GLOBAL__sub_I_nbind_cc,_free=Module._free=asm._free,runPostSets=Module.runPostSets=asm.runPostSets,establishStackSpace=Module.establishStackSpace=asm.establishStackSpace,_memmove=Module._memmove=asm._memmove,stackRestore=Module.stackRestore=asm.stackRestore,_malloc=Module._malloc=asm._malloc,__GLOBAL__sub_I_common_cc=Module.__GLOBAL__sub_I_common_cc=asm.__GLOBAL__sub_I_common_cc,dynCall_viiiii=Module.dynCall_viiiii=asm.dynCall_viiiii,dynCall_vif=Module.dynCall_vif=asm.dynCall_vif,dynCall_vid=Module.dynCall_vid=asm.dynCall_vid,dynCall_fiff=Module.dynCall_fiff=asm.dynCall_fiff,dynCall_vi=Module.dynCall_vi=asm.dynCall_vi,dynCall_vii=Module.dynCall_vii=asm.dynCall_vii,dynCall_ii=Module.dynCall_ii=asm.dynCall_ii,dynCall_viddi=Module.dynCall_viddi=asm.dynCall_viddi,dynCall_vidd=Module.dynCall_vidd=asm.dynCall_vidd,dynCall_iiii=Module.dynCall_iiii=asm.dynCall_iiii,dynCall_diii=Module.dynCall_diii=asm.dynCall_diii,dynCall_di=Module.dynCall_di=asm.dynCall_di,dynCall_iid=Module.dynCall_iid=asm.dynCall_iid,dynCall_iii=Module.dynCall_iii=asm.dynCall_iii,dynCall_viiddi=Module.dynCall_viiddi=asm.dynCall_viiddi,dynCall_viiiiii=Module.dynCall_viiiiii=asm.dynCall_viiiiii,dynCall_dii=Module.dynCall_dii=asm.dynCall_dii,dynCall_i=Module.dynCall_i=asm.dynCall_i,dynCall_iiiiii=Module.dynCall_iiiiii=asm.dynCall_iiiiii,dynCall_viiid=Module.dynCall_viiid=asm.dynCall_viiid,dynCall_viififi=Module.dynCall_viififi=asm.dynCall_viififi,dynCall_viii=Module.dynCall_viii=asm.dynCall_viii,dynCall_v=Module.dynCall_v=asm.dynCall_v,dynCall_viid=Module.dynCall_viid=asm.dynCall_viid,dynCall_idd=Module.dynCall_idd=asm.dynCall_idd,dynCall_viiii=Module.dynCall_viiii=asm.dynCall_viiii;Runtime.stackAlloc=Module.stackAlloc,Runtime.stackSave=Module.stackSave,Runtime.stackRestore=Module.stackRestore,Runtime.establishStackSpace=Module.establishStackSpace,Runtime.setTempRet0=Module.setTempRet0,Runtime.getTempRet0=Module.getTempRet0,Module.asm=asm;function ExitStatus(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}ExitStatus.prototype=new Error,ExitStatus.prototype.constructor=ExitStatus;var initialStackTop,preloadStartTime=null,calledMain=!1;dependenciesFulfilled=function e(){Module.calledRun||run(),Module.calledRun||(dependenciesFulfilled=e)},Module.callMain=Module.callMain=function e(t){t=t||[],ensureInitRuntime();var r=t.length+1;function s(){for(var f=0;f<3;f++)a.push(0)}var a=[allocate(intArrayFromString(Module.thisProgram),"i8",ALLOC_NORMAL)];s();for(var o=0;o0||(preRun(),runDependencies>0)||Module.calledRun)return;function t(){Module.calledRun||(Module.calledRun=!0,!ABORT&&(ensureInitRuntime(),preMain(),Module.onRuntimeInitialized&&Module.onRuntimeInitialized(),Module._main&&shouldRunNow&&Module.callMain(e),postRun()))}Module.setStatus?(Module.setStatus("Running..."),setTimeout(function(){setTimeout(function(){Module.setStatus("")},1),t()},1)):t()}Module.run=Module.run=run;function exit(e,t){t&&Module.noExitRuntime||(Module.noExitRuntime||(ABORT=!0,EXITSTATUS=e,STACKTOP=initialStackTop,exitRuntime(),Module.onExit&&Module.onExit(e)),ENVIRONMENT_IS_NODE&&process.exit(e),Module.quit(e,new ExitStatus(e)))}Module.exit=Module.exit=exit;var abortDecorators=[];function abort(e){Module.onAbort&&Module.onAbort(e),e!==void 0?(Module.print(e),Module.printErr(e),e=JSON.stringify(e)):e="",ABORT=!0,EXITSTATUS=1;var t=` -If this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.`,r="abort("+e+") at "+stackTrace()+t;throw abortDecorators&&abortDecorators.forEach(function(s){r=s(r,e)}),r}if(Module.abort=Module.abort=abort,Module.preInit)for(typeof Module.preInit=="function"&&(Module.preInit=[Module.preInit]);Module.preInit.length>0;)Module.preInit.pop()();var shouldRunNow=!0;Module.noInitialRun&&(shouldRunNow=!1),run()})});var vW=z((g4c,S1n)=>{"use strict";var eno=B1n(),tno=v1n(),O7t=!1,M7t=null;tno({},function(e,t){if(!O7t){if(O7t=!0,e)throw e;M7t=t}});if(!O7t)throw new Error("Failed to load the yoga module - it needed to be loaded synchronously, but didn't");S1n.exports=eno(M7t.bind,M7t.lib)});var Y7t=z((A4c,Q7t)=>{"use strict";var w1n=e=>Number.isNaN(e)?!1:e>=4352&&(e<=4447||e===9001||e===9002||11904<=e&&e<=12871&&e!==12351||12880<=e&&e<=19903||19968<=e&&e<=42182||43360<=e&&e<=43388||44032<=e&&e<=55203||63744<=e&&e<=64255||65040<=e&&e<=65049||65072<=e&&e<=65131||65281<=e&&e<=65376||65504<=e&&e<=65510||110592<=e&&e<=110593||127488<=e&&e<=127569||131072<=e&&e<=262141);Q7t.exports=w1n;Q7t.exports.default=w1n});var N1n=z((d4c,T1n)=>{"use strict";T1n.exports=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F|\uD83D\uDC68(?:\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68\uD83C\uDFFB|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C[\uDFFB-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)\uD83C\uDFFB|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB\uDFFC])|\uD83D\uDC69(?:\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB-\uDFFD])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620)\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF6\uD83C\uDDE6|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5\uDEEB\uDEEC\uDEF4-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g}});var s1e=z((p4c,H7t)=>{"use strict";var rno=AO(),nno=Y7t(),ino=N1n(),R1n=e=>{if(typeof e!="string"||e.length===0||(e=rno(e),e.length===0))return 0;e=e.replace(ino()," ");let t=0;for(let r=0;r=127&&s<=159||s>=768&&s<=879||(s>65535&&r++,t+=nno(s)?2:1)}return t};H7t.exports=R1n;H7t.exports.default=R1n});var PWe=z((f4c,X7t)=>{"use strict";var sno=s1e(),D1n=e=>{let t=0;for(let r of e.split(` -`))t=Math.max(t,sno(r));return t};X7t.exports=D1n;X7t.exports.default=D1n});var x1n=z(OWe=>{"use strict";var ono=OWe&&OWe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(OWe,"__esModule",{value:!0});var ano=ono(PWe()),J7t={};OWe.default=e=>{if(e.length===0)return{width:0,height:0};if(J7t[e])return J7t[e];let t=ano.default(e),r=e.split(` -`).length;return J7t[e]={width:t,height:r},{width:t,height:r}}});var k1n=z(MWe=>{"use strict";var cno=MWe&&MWe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(MWe,"__esModule",{value:!0});var Vh=cno(vW()),lno=(e,t)=>{"position"in t&&e.setPositionType(t.position==="absolute"?Vh.default.POSITION_TYPE_ABSOLUTE:Vh.default.POSITION_TYPE_RELATIVE)},uno=(e,t)=>{"marginLeft"in t&&e.setMargin(Vh.default.EDGE_START,t.marginLeft||0),"marginRight"in t&&e.setMargin(Vh.default.EDGE_END,t.marginRight||0),"marginTop"in t&&e.setMargin(Vh.default.EDGE_TOP,t.marginTop||0),"marginBottom"in t&&e.setMargin(Vh.default.EDGE_BOTTOM,t.marginBottom||0)},gno=(e,t)=>{"paddingLeft"in t&&e.setPadding(Vh.default.EDGE_LEFT,t.paddingLeft||0),"paddingRight"in t&&e.setPadding(Vh.default.EDGE_RIGHT,t.paddingRight||0),"paddingTop"in t&&e.setPadding(Vh.default.EDGE_TOP,t.paddingTop||0),"paddingBottom"in t&&e.setPadding(Vh.default.EDGE_BOTTOM,t.paddingBottom||0)},Ano=(e,t)=>{var r;"flexGrow"in t&&e.setFlexGrow((r=t.flexGrow)!==null&&r!==void 0?r:0),"flexShrink"in t&&e.setFlexShrink(typeof t.flexShrink=="number"?t.flexShrink:1),"flexDirection"in t&&(t.flexDirection==="row"&&e.setFlexDirection(Vh.default.FLEX_DIRECTION_ROW),t.flexDirection==="row-reverse"&&e.setFlexDirection(Vh.default.FLEX_DIRECTION_ROW_REVERSE),t.flexDirection==="column"&&e.setFlexDirection(Vh.default.FLEX_DIRECTION_COLUMN),t.flexDirection==="column-reverse"&&e.setFlexDirection(Vh.default.FLEX_DIRECTION_COLUMN_REVERSE)),"flexBasis"in t&&(typeof t.flexBasis=="number"?e.setFlexBasis(t.flexBasis):typeof t.flexBasis=="string"?e.setFlexBasisPercent(Number.parseInt(t.flexBasis,10)):e.setFlexBasis(NaN)),"alignItems"in t&&((t.alignItems==="stretch"||!t.alignItems)&&e.setAlignItems(Vh.default.ALIGN_STRETCH),t.alignItems==="flex-start"&&e.setAlignItems(Vh.default.ALIGN_FLEX_START),t.alignItems==="center"&&e.setAlignItems(Vh.default.ALIGN_CENTER),t.alignItems==="flex-end"&&e.setAlignItems(Vh.default.ALIGN_FLEX_END)),"alignSelf"in t&&((t.alignSelf==="auto"||!t.alignSelf)&&e.setAlignSelf(Vh.default.ALIGN_AUTO),t.alignSelf==="flex-start"&&e.setAlignSelf(Vh.default.ALIGN_FLEX_START),t.alignSelf==="center"&&e.setAlignSelf(Vh.default.ALIGN_CENTER),t.alignSelf==="flex-end"&&e.setAlignSelf(Vh.default.ALIGN_FLEX_END)),"justifyContent"in t&&((t.justifyContent==="flex-start"||!t.justifyContent)&&e.setJustifyContent(Vh.default.JUSTIFY_FLEX_START),t.justifyContent==="center"&&e.setJustifyContent(Vh.default.JUSTIFY_CENTER),t.justifyContent==="flex-end"&&e.setJustifyContent(Vh.default.JUSTIFY_FLEX_END),t.justifyContent==="space-between"&&e.setJustifyContent(Vh.default.JUSTIFY_SPACE_BETWEEN),t.justifyContent==="space-around"&&e.setJustifyContent(Vh.default.JUSTIFY_SPACE_AROUND))},dno=(e,t)=>{var r,s;"width"in t&&(typeof t.width=="number"?e.setWidth(t.width):typeof t.width=="string"?e.setWidthPercent(Number.parseInt(t.width,10)):e.setWidthAuto()),"height"in t&&(typeof t.height=="number"?e.setHeight(t.height):typeof t.height=="string"?e.setHeightPercent(Number.parseInt(t.height,10)):e.setHeightAuto()),"minWidth"in t&&(typeof t.minWidth=="string"?e.setMinWidthPercent(Number.parseInt(t.minWidth,10)):e.setMinWidth((r=t.minWidth)!==null&&r!==void 0?r:0)),"minHeight"in t&&(typeof t.minHeight=="string"?e.setMinHeightPercent(Number.parseInt(t.minHeight,10)):e.setMinHeight((s=t.minHeight)!==null&&s!==void 0?s:0))},pno=(e,t)=>{"display"in t&&e.setDisplay(t.display==="flex"?Vh.default.DISPLAY_FLEX:Vh.default.DISPLAY_NONE)},fno=(e,t)=>{if("borderStyle"in t){let r=typeof t.borderStyle=="string"?1:0;e.setBorder(Vh.default.EDGE_TOP,r),e.setBorder(Vh.default.EDGE_BOTTOM,r),e.setBorder(Vh.default.EDGE_LEFT,r),e.setBorder(Vh.default.EDGE_RIGHT,r)}};MWe.default=(e,t={})=>{lno(e,t),uno(e,t),gno(e,t),Ano(e,t),dno(e,t),pno(e,t),fno(e,t)}});var j7t=z((m4c,F1n)=>{"use strict";var QWe=s1e(),Ino=AO(),Cno=I9e(),K7t=new Set(["\x1B","\x9B"]),mno=39,G1n=e=>`${K7t.values().next().value}[${e}m`,hno=e=>e.split(" ").map(t=>QWe(t)),U7t=(e,t,r)=>{let s=[...t],a=!1,o=QWe(Ino(e[e.length-1]));for(let[g,p]of s.entries()){let f=QWe(p);if(o+f<=r?e[e.length-1]+=p:(e.push(p),o=0),K7t.has(p))a=!0;else if(a&&p==="m"){a=!1;continue}a||(o+=f,o===r&&g0&&e.length>1&&(e[e.length-2]+=e.pop())},_no=e=>{let t=e.split(" "),r=t.length;for(;r>0&&!(QWe(t[r-1])>0);)r--;return r===t.length?e:t.slice(0,r).join(" ")+t.slice(r).join("")},yno=(e,t,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let s="",a="",o,g=hno(e),p=[""];for(let[f,m]of e.split(" ").entries()){r.trim!==!1&&(p[p.length-1]=p[p.length-1].trimLeft());let y=QWe(p[p.length-1]);if(f!==0&&(y>=t&&(r.wordWrap===!1||r.trim===!1)&&(p.push(""),y=0),(y>0||r.trim===!1)&&(p[p.length-1]+=" ",y++)),r.hard&&g[f]>t){let B=t-y,v=1+Math.floor((g[f]-B-1)/t);Math.floor((g[f]-1)/t)t&&y>0&&g[f]>0){if(r.wordWrap===!1&&yt&&r.wordWrap===!1){U7t(p,m,t);continue}p[p.length-1]+=m}r.trim!==!1&&(p=p.map(_no)),s=p.join(` -`);for(let[f,m]of[...s].entries()){if(a+=m,K7t.has(m)){let B=parseFloat(/\d[^m]*/.exec(s.slice(f,f+4)));o=B===mno?null:B}let y=Cno.codes.get(Number(o));o&&y&&(s[f+1]===` -`?a+=G1n(y):m===` -`&&(a+=G1n(o)))}return a};F1n.exports=(e,t,r)=>String(e).normalize().replace(/\r\n/g,` + `)+G.join(" > ")}return null},r.getPublicRootInstance=function(G){if(G=G.current,!G.child)return null;switch(G.child.tag){case 5:return er(G.child.stateNode);default:return G.child.stateNode}},r.injectIntoDevTools=function(G){if(G={bundleType:G.bundleType,version:G.version,rendererPackageName:G.rendererPackageName,rendererConfig:G.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:p.ReactCurrentDispatcher,findHostInstanceByFiber:MI,findFiberByHostInstance:G.findFiberByHostInstance||VR,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")G=!1;else{var L=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!L.isDisabled&&L.supportsFiber)try{ys=L.inject(G),Ya=L}catch{}G=!0}return G},r.observeVisibleRects=function(G,L,ee,ve){if(!YA)throw Error(g(363));G=yv(G,L);var xe=nn(G,ee,ve).disconnect;return{disconnect:function(){xe()}}},r.registerMutableSourceForHydration=function(G,L){var ee=L._getVersion;ee=ee(L._source),G.mutableSourceEagerHydrationData==null?G.mutableSourceEagerHydrationData=[L,ee]:G.mutableSourceEagerHydrationData.push(L,ee)},r.runWithPriority=function(G,L){var ee=$s;try{return $s=G,L()}finally{$s=ee}},r.shouldSuspend=function(){return!1},r.unbatchedUpdates=function(G,L){var ee=Va;Va&=-2,Va|=8;try{return G(L)}finally{Va=ee,Va===0&&(Sh(),fl())}},r.updateContainer=function(G,L,ee,ve){var xe=L.current,gt=wp(),nr=tC(xe);e:if(ee){ee=ee._reactInternals;t:{if(et(ee)!==ee||ee.tag!==1)throw Error(g(170));var Xr=ee;do{switch(Xr.tag){case 3:Xr=Xr.stateNode.context;break t;case 1:if(ec(Xr.type)){Xr=Xr.stateNode.__reactInternalMemoizedMergedChildContext;break t}}Xr=Xr.return}while(Xr!==null);throw Error(g(171))}if(ee.tag===1){var Kn=ee.type;if(ec(Kn)){ee=RA(ee,Kn,Xr);break e}}ee=Xr}else ee=Zf;return L.context===null?L.context=ee:L.pendingContext=ee,L=OI(gt,nr),L.payload={element:G},ve=ve===void 0?null:ve,ve!==null&&(L.callback=ve),Bf(xe,L),bd(xe,nr,gt),nr},r}});var B1n=z((E4c,E1n)=>{"use strict";E1n.exports=b1n()});var S1n=z((B4c,v1n)=>{"use strict";var ino={ALIGN_COUNT:8,ALIGN_AUTO:0,ALIGN_FLEX_START:1,ALIGN_CENTER:2,ALIGN_FLEX_END:3,ALIGN_STRETCH:4,ALIGN_BASELINE:5,ALIGN_SPACE_BETWEEN:6,ALIGN_SPACE_AROUND:7,DIMENSION_COUNT:2,DIMENSION_WIDTH:0,DIMENSION_HEIGHT:1,DIRECTION_COUNT:3,DIRECTION_INHERIT:0,DIRECTION_LTR:1,DIRECTION_RTL:2,DISPLAY_COUNT:2,DISPLAY_FLEX:0,DISPLAY_NONE:1,EDGE_COUNT:9,EDGE_LEFT:0,EDGE_TOP:1,EDGE_RIGHT:2,EDGE_BOTTOM:3,EDGE_START:4,EDGE_END:5,EDGE_HORIZONTAL:6,EDGE_VERTICAL:7,EDGE_ALL:8,EXPERIMENTAL_FEATURE_COUNT:1,EXPERIMENTAL_FEATURE_WEB_FLEX_BASIS:0,FLEX_DIRECTION_COUNT:4,FLEX_DIRECTION_COLUMN:0,FLEX_DIRECTION_COLUMN_REVERSE:1,FLEX_DIRECTION_ROW:2,FLEX_DIRECTION_ROW_REVERSE:3,JUSTIFY_COUNT:6,JUSTIFY_FLEX_START:0,JUSTIFY_CENTER:1,JUSTIFY_FLEX_END:2,JUSTIFY_SPACE_BETWEEN:3,JUSTIFY_SPACE_AROUND:4,JUSTIFY_SPACE_EVENLY:5,LOG_LEVEL_COUNT:6,LOG_LEVEL_ERROR:0,LOG_LEVEL_WARN:1,LOG_LEVEL_INFO:2,LOG_LEVEL_DEBUG:3,LOG_LEVEL_VERBOSE:4,LOG_LEVEL_FATAL:5,MEASURE_MODE_COUNT:3,MEASURE_MODE_UNDEFINED:0,MEASURE_MODE_EXACTLY:1,MEASURE_MODE_AT_MOST:2,NODE_TYPE_COUNT:2,NODE_TYPE_DEFAULT:0,NODE_TYPE_TEXT:1,OVERFLOW_COUNT:3,OVERFLOW_VISIBLE:0,OVERFLOW_HIDDEN:1,OVERFLOW_SCROLL:2,POSITION_TYPE_COUNT:2,POSITION_TYPE_RELATIVE:0,POSITION_TYPE_ABSOLUTE:1,PRINT_OPTIONS_COUNT:3,PRINT_OPTIONS_LAYOUT:1,PRINT_OPTIONS_STYLE:2,PRINT_OPTIONS_CHILDREN:4,UNIT_COUNT:4,UNIT_UNDEFINED:0,UNIT_POINT:1,UNIT_PERCENT:2,UNIT_AUTO:3,WRAP_COUNT:3,WRAP_NO_WRAP:0,WRAP_WRAP:1,WRAP_WRAP_REVERSE:2};v1n.exports=ino});var R1n=z((v4c,N1n)=>{"use strict";var sno=Object.assign||function(e){for(var t=1;t"}}]),e}(),w1n=function(){Ect(e,null,[{key:"fromJS",value:function(r){var s=r.width,a=r.height;return new e(s,a)}}]);function e(t,r){M7t(this,e),this.width=t,this.height=r}return Ect(e,[{key:"fromJS",value:function(r){r(this.width,this.height)}},{key:"toString",value:function(){return""}}]),e}(),T1n=function(){function e(t,r){M7t(this,e),this.unit=t,this.value=r}return Ect(e,[{key:"fromJS",value:function(r){r(this.unit,this.value)}},{key:"toString",value:function(){switch(this.unit){case xH.UNIT_POINT:return String(this.value);case xH.UNIT_PERCENT:return this.value+"%";case xH.UNIT_AUTO:return"auto";default:return this.value+"?"}}},{key:"valueOf",value:function(){return this.value}}]),e}();N1n.exports=function(e,t){function r(g,p,f){var m=g[p];g[p]=function(){for(var y=arguments.length,B=Array(y),v=0;v1?B-1:0),k=1;k1&&arguments[1]!==void 0?arguments[1]:NaN,f=arguments.length>2&&arguments[2]!==void 0?arguments[2]:NaN,m=arguments.length>3&&arguments[3]!==void 0?arguments[3]:xH.DIRECTION_LTR;return g.call(this,p,f,m)}),sno({Config:t.Config,Node:t.Node,Layout:e("Layout",ono),Size:e("Size",w1n),Value:e("Value",T1n),getInstanceCount:function(){return t.getInstanceCount.apply(t,arguments)}},xH)}});var D1n=z((exports,module)=>{(function(e,t){typeof define=="function"&&define.amd?define([],function(){return t}):typeof module=="object"&&module.exports?module.exports=t:(e.nbind=e.nbind||{}).init=t})(exports,function(Module,cb){typeof Module=="function"&&(cb=Module,Module={}),Module.onRuntimeInitialized=function(e,t){return function(){e&&e.apply(this,arguments);try{Module.ccall("nbind_init")}catch(r){t(r);return}t(null,{bind:Module._nbind_value,reflect:Module.NBind.reflect,queryType:Module.NBind.queryType,toggleLightGC:Module.toggleLightGC,lib:Module})}}(Module.onRuntimeInitialized,cb);var Module;Module||(Module=(typeof Module<"u"?Module:null)||{});var moduleOverrides={};for(var key in Module)Module.hasOwnProperty(key)&&(moduleOverrides[key]=Module[key]);var ENVIRONMENT_IS_WEB=!1,ENVIRONMENT_IS_WORKER=!1,ENVIRONMENT_IS_NODE=!1,ENVIRONMENT_IS_SHELL=!1;if(Module.ENVIRONMENT)if(Module.ENVIRONMENT==="WEB")ENVIRONMENT_IS_WEB=!0;else if(Module.ENVIRONMENT==="WORKER")ENVIRONMENT_IS_WORKER=!0;else if(Module.ENVIRONMENT==="NODE")ENVIRONMENT_IS_NODE=!0;else if(Module.ENVIRONMENT==="SHELL")ENVIRONMENT_IS_SHELL=!0;else throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.");else ENVIRONMENT_IS_WEB=typeof window=="object",ENVIRONMENT_IS_WORKER=typeof importScripts=="function",ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof xt=="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER,ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){Module.print||(Module.print=console.log),Module.printErr||(Module.printErr=console.warn);var nodeFS,nodePath;Module.read=function(t,r){nodeFS||(nodeFS={}("")),nodePath||(nodePath={}("")),t=nodePath.normalize(t);var s=nodeFS.readFileSync(t);return r?s:s.toString()},Module.readBinary=function(t){var r=Module.read(t,!0);return r.buffer||(r=new Uint8Array(r)),assert(r.buffer),r},Module.load=function(t){globalEval(read(t))},Module.thisProgram||(process.argv.length>1?Module.thisProgram=process.argv[1].replace(/\\/g,"/"):Module.thisProgram="unknown-program"),Module.arguments=process.argv.slice(2),typeof module<"u"&&(module.exports=Module),process.on("uncaughtException",function(e){if(!(e instanceof ExitStatus))throw e}),Module.inspect=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL)Module.print||(Module.print=print),typeof printErr<"u"&&(Module.printErr=printErr),typeof read<"u"?Module.read=read:Module.read=function(){throw"no read() available"},Module.readBinary=function(t){if(typeof readbuffer=="function")return new Uint8Array(readbuffer(t));var r=read(t,"binary");return assert(typeof r=="object"),r},typeof scriptArgs<"u"?Module.arguments=scriptArgs:typeof arguments<"u"&&(Module.arguments=arguments),typeof quit=="function"&&(Module.quit=function(e,t){quit(e)});else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(Module.read=function(t){var r=new XMLHttpRequest;return r.open("GET",t,!1),r.send(null),r.responseText},ENVIRONMENT_IS_WORKER&&(Module.readBinary=function(t){var r=new XMLHttpRequest;return r.open("GET",t,!1),r.responseType="arraybuffer",r.send(null),new Uint8Array(r.response)}),Module.readAsync=function(t,r,s){var a=new XMLHttpRequest;a.open("GET",t,!0),a.responseType="arraybuffer",a.onload=function(){a.status==200||a.status==0&&a.response?r(a.response):s()},a.onerror=s,a.send(null)},typeof arguments<"u"&&(Module.arguments=arguments),typeof console<"u")Module.print||(Module.print=function(t){console.log(t)}),Module.printErr||(Module.printErr=function(t){console.warn(t)});else{var TRY_USE_DUMP=!1;Module.print||(Module.print=TRY_USE_DUMP&&typeof dump<"u"?function(e){dump(e)}:function(e){})}ENVIRONMENT_IS_WORKER&&(Module.load=importScripts),typeof Module.setWindowTitle>"u"&&(Module.setWindowTitle=function(e){document.title=e})}else throw"Unknown runtime environment. Where are we?";function globalEval(e){eval.call(null,e)}!Module.load&&Module.read&&(Module.load=function(t){globalEval(Module.read(t))}),Module.print||(Module.print=function(){}),Module.printErr||(Module.printErr=Module.print),Module.arguments||(Module.arguments=[]),Module.thisProgram||(Module.thisProgram="./this.program"),Module.quit||(Module.quit=function(e,t){throw t}),Module.print=Module.print,Module.printErr=Module.printErr,Module.preRun=[],Module.postRun=[];for(var key in moduleOverrides)moduleOverrides.hasOwnProperty(key)&&(Module[key]=moduleOverrides[key]);moduleOverrides=void 0;var Runtime={setTempRet0:function(e){return tempRet0=e,e},getTempRet0:function(){return tempRet0},stackSave:function(){return STACKTOP},stackRestore:function(e){STACKTOP=e},getNativeTypeSize:function(e){switch(e){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(e[e.length-1]==="*")return Runtime.QUANTUM_SIZE;if(e[0]==="i"){var t=parseInt(e.substr(1));return assert(t%8===0),t/8}else return 0}}},getNativeFieldSize:function(e){return Math.max(Runtime.getNativeTypeSize(e),Runtime.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(e,t){return t==="double"||t==="i64"?e&7&&(assert((e&7)===4),e+=4):assert((e&3)===0),e},getAlignSize:function(e,t,r){return!r&&(e=="i64"||e=="double")?8:e?Math.min(t||(e?Runtime.getNativeFieldSize(e):0),Runtime.QUANTUM_SIZE):Math.min(t,8)},dynCall:function(e,t,r){return r&&r.length?Module["dynCall_"+e].apply(null,[t].concat(r)):Module["dynCall_"+e].call(null,t)},functionPointers:[],addFunction:function(e){for(var t=0;t>2],r=(t+e+15|0)&-16;if(HEAP32[DYNAMICTOP_PTR>>2]=r,r>=TOTAL_MEMORY){var s=enlargeMemory();if(!s)return HEAP32[DYNAMICTOP_PTR>>2]=t,0}return t},alignMemory:function(e,t){var r=e=Math.ceil(e/(t||16))*(t||16);return r},makeBigInt:function(e,t,r){var s=r?+(e>>>0)+ +(t>>>0)*4294967296:+(e>>>0)+ +(t|0)*4294967296;return s},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module.Runtime=Runtime;var ABORT=0,EXITSTATUS=0;function assert(e,t){e||abort("Assertion failed: "+t)}function getCFunc(ident){var func=Module["_"+ident];if(!func)try{func=eval("_"+ident)}catch(e){}return assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)"),func}var cwrap,ccall;(function(){var JSfuncs={stackSave:function(){Runtime.stackSave()},stackRestore:function(){Runtime.stackRestore()},arrayToC:function(e){var t=Runtime.stackAlloc(e.length);return writeArrayToMemory(e,t),t},stringToC:function(e){var t=0;if(e!=null&&e!==0){var r=(e.length<<2)+1;t=Runtime.stackAlloc(r),stringToUTF8(e,t,r)}return t}},toC={string:JSfuncs.stringToC,array:JSfuncs.arrayToC};ccall=function(t,r,s,a,o){var g=getCFunc(t),p=[],f=0;if(a)for(var m=0;m>0]=t;break;case"i8":HEAP8[e>>0]=t;break;case"i16":HEAP16[e>>1]=t;break;case"i32":HEAP32[e>>2]=t;break;case"i64":tempI64=[t>>>0,(tempDouble=t,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[e>>2]=tempI64[0],HEAP32[e+4>>2]=tempI64[1];break;case"float":HEAPF32[e>>2]=t;break;case"double":HEAPF64[e>>3]=t;break;default:abort("invalid type for setValue: "+r)}}Module.setValue=setValue;function getValue(e,t,r){switch(t=t||"i8",t.charAt(t.length-1)==="*"&&(t="i32"),t){case"i1":return HEAP8[e>>0];case"i8":return HEAP8[e>>0];case"i16":return HEAP16[e>>1];case"i32":return HEAP32[e>>2];case"i64":return HEAP32[e>>2];case"float":return HEAPF32[e>>2];case"double":return HEAPF64[e>>3];default:abort("invalid type for setValue: "+t)}return null}Module.getValue=getValue;var ALLOC_NORMAL=0,ALLOC_STACK=1,ALLOC_STATIC=2,ALLOC_DYNAMIC=3,ALLOC_NONE=4;Module.ALLOC_NORMAL=ALLOC_NORMAL,Module.ALLOC_STACK=ALLOC_STACK,Module.ALLOC_STATIC=ALLOC_STATIC,Module.ALLOC_DYNAMIC=ALLOC_DYNAMIC,Module.ALLOC_NONE=ALLOC_NONE;function allocate(e,t,r,s){var a,o;typeof e=="number"?(a=!0,o=e):(a=!1,o=e.length);var g=typeof t=="string"?t:null,p;if(r==ALLOC_NONE?p=s:p=[typeof _malloc=="function"?_malloc:Runtime.staticAlloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][r===void 0?ALLOC_STATIC:r](Math.max(o,g?1:t.length)),a){var s=p,f;for(assert((p&3)==0),f=p+(o&-4);s>2]=0;for(f=p+o;s>0]=0;return p}if(g==="i8")return e.subarray||e.slice?HEAPU8.set(e,p):HEAPU8.set(new Uint8Array(e),p),p;for(var m=0,y,B,v;m>0],r|=s,!(s==0&&!t||(a++,t&&a==t)););t||(t=a);var o="";if(r<128){for(var g=1024,p;t>0;)p=String.fromCharCode.apply(String,HEAPU8.subarray(e,e+Math.min(t,g))),o=o?o+p:p,e+=g,t-=g;return o}return Module.UTF8ToString(e)}Module.Pointer_stringify=Pointer_stringify;function AsciiToString(e){for(var t="";;){var r=HEAP8[e++>>0];if(!r)return t;t+=String.fromCharCode(r)}}Module.AsciiToString=AsciiToString;function stringToAscii(e,t){return writeAsciiToMemory(e,t,!1)}Module.stringToAscii=stringToAscii;var UTF8Decoder=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function UTF8ArrayToString(e,t){for(var r=t;e[r];)++r;if(r-t>16&&e.subarray&&UTF8Decoder)return UTF8Decoder.decode(e.subarray(t,r));for(var s,a,o,g,p,f,m="";;){if(s=e[t++],!s)return m;if(!(s&128)){m+=String.fromCharCode(s);continue}if(a=e[t++]&63,(s&224)==192){m+=String.fromCharCode((s&31)<<6|a);continue}if(o=e[t++]&63,(s&240)==224?s=(s&15)<<12|a<<6|o:(g=e[t++]&63,(s&248)==240?s=(s&7)<<18|a<<12|o<<6|g:(p=e[t++]&63,(s&252)==248?s=(s&3)<<24|a<<18|o<<12|g<<6|p:(f=e[t++]&63,s=(s&1)<<30|a<<24|o<<18|g<<12|p<<6|f))),s<65536)m+=String.fromCharCode(s);else{var y=s-65536;m+=String.fromCharCode(55296|y>>10,56320|y&1023)}}}Module.UTF8ArrayToString=UTF8ArrayToString;function UTF8ToString(e){return UTF8ArrayToString(HEAPU8,e)}Module.UTF8ToString=UTF8ToString;function stringToUTF8Array(e,t,r,s){if(!(s>0))return 0;for(var a=r,o=r+s-1,g=0;g=55296&&p<=57343&&(p=65536+((p&1023)<<10)|e.charCodeAt(++g)&1023),p<=127){if(r>=o)break;t[r++]=p}else if(p<=2047){if(r+1>=o)break;t[r++]=192|p>>6,t[r++]=128|p&63}else if(p<=65535){if(r+2>=o)break;t[r++]=224|p>>12,t[r++]=128|p>>6&63,t[r++]=128|p&63}else if(p<=2097151){if(r+3>=o)break;t[r++]=240|p>>18,t[r++]=128|p>>12&63,t[r++]=128|p>>6&63,t[r++]=128|p&63}else if(p<=67108863){if(r+4>=o)break;t[r++]=248|p>>24,t[r++]=128|p>>18&63,t[r++]=128|p>>12&63,t[r++]=128|p>>6&63,t[r++]=128|p&63}else{if(r+5>=o)break;t[r++]=252|p>>30,t[r++]=128|p>>24&63,t[r++]=128|p>>18&63,t[r++]=128|p>>12&63,t[r++]=128|p>>6&63,t[r++]=128|p&63}}return t[r]=0,r-a}Module.stringToUTF8Array=stringToUTF8Array;function stringToUTF8(e,t,r){return stringToUTF8Array(e,HEAPU8,t,r)}Module.stringToUTF8=stringToUTF8;function lengthBytesUTF8(e){for(var t=0,r=0;r=55296&&s<=57343&&(s=65536+((s&1023)<<10)|e.charCodeAt(++r)&1023),s<=127?++t:s<=2047?t+=2:s<=65535?t+=3:s<=2097151?t+=4:s<=67108863?t+=5:t+=6}return t}Module.lengthBytesUTF8=lengthBytesUTF8;var UTF16Decoder=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0;function demangle(e){var t=Module.___cxa_demangle||Module.__cxa_demangle;if(t){try{var r=e.substr(1),s=lengthBytesUTF8(r)+1,a=_malloc(s);stringToUTF8(r,a,s);var o=_malloc(4),g=t(a,0,0,o);if(getValue(o,"i32")===0&&g)return Pointer_stringify(g)}catch{}finally{a&&_free(a),o&&_free(o),g&&_free(g)}return e}return Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),e}function demangleAll(e){var t=/__Z[\w\d_]+/g;return e.replace(t,function(r){var s=demangle(r);return r===s?r:r+" ["+s+"]"})}function jsStackTrace(){var e=new Error;if(!e.stack){try{throw new Error(0)}catch(t){e=t}if(!e.stack)return"(no stack trace available)"}return e.stack.toString()}function stackTrace(){var e=jsStackTrace();return Module.extraStackTrace&&(e+=` +`+Module.extraStackTrace()),demangleAll(e)}Module.stackTrace=stackTrace;var HEAP,buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module.HEAP8=HEAP8=new Int8Array(buffer),Module.HEAP16=HEAP16=new Int16Array(buffer),Module.HEAP32=HEAP32=new Int32Array(buffer),Module.HEAPU8=HEAPU8=new Uint8Array(buffer),Module.HEAPU16=HEAPU16=new Uint16Array(buffer),Module.HEAPU32=HEAPU32=new Uint32Array(buffer),Module.HEAPF32=HEAPF32=new Float32Array(buffer),Module.HEAPF64=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed,STACK_BASE,STACKTOP,STACK_MAX,DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0,staticSealed=!1;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module.TOTAL_STACK||5242880,TOTAL_MEMORY=Module.TOTAL_MEMORY||134217728;TOTAL_MEMORY0;){var t=e.shift();if(typeof t=="function"){t();continue}var r=t.func;typeof r=="number"?t.arg===void 0?Module.dynCall_v(r):Module.dynCall_vi(r,t.arg):r(t.arg===void 0?null:t.arg)}}var __ATPRERUN__=[],__ATINIT__=[],__ATMAIN__=[],__ATEXIT__=[],__ATPOSTRUN__=[],runtimeInitialized=!1,runtimeExited=!1;function preRun(){if(Module.preRun)for(typeof Module.preRun=="function"&&(Module.preRun=[Module.preRun]);Module.preRun.length;)addOnPreRun(Module.preRun.shift());callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){runtimeInitialized||(runtimeInitialized=!0,callRuntimeCallbacks(__ATINIT__))}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__),runtimeExited=!0}function postRun(){if(Module.postRun)for(typeof Module.postRun=="function"&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(e){__ATPRERUN__.unshift(e)}Module.addOnPreRun=addOnPreRun;function addOnInit(e){__ATINIT__.unshift(e)}Module.addOnInit=addOnInit;function addOnPreMain(e){__ATMAIN__.unshift(e)}Module.addOnPreMain=addOnPreMain;function addOnExit(e){__ATEXIT__.unshift(e)}Module.addOnExit=addOnExit;function addOnPostRun(e){__ATPOSTRUN__.unshift(e)}Module.addOnPostRun=addOnPostRun;function intArrayFromString(e,t,r){var s=r>0?r:lengthBytesUTF8(e)+1,a=new Array(s),o=stringToUTF8Array(e,a,0,a.length);return t&&(a.length=o),a}Module.intArrayFromString=intArrayFromString;function intArrayToString(e){for(var t=[],r=0;r255&&(s&=255),t.push(String.fromCharCode(s))}return t.join("")}Module.intArrayToString=intArrayToString;function writeStringToMemory(e,t,r){Runtime.warnOnce("writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!");var s,a;r&&(a=t+lengthBytesUTF8(e),s=HEAP8[a]),stringToUTF8(e,t,1/0),r&&(HEAP8[a]=s)}Module.writeStringToMemory=writeStringToMemory;function writeArrayToMemory(e,t){HEAP8.set(e,t)}Module.writeArrayToMemory=writeArrayToMemory;function writeAsciiToMemory(e,t,r){for(var s=0;s>0]=e.charCodeAt(s);r||(HEAP8[t>>0]=0)}if(Module.writeAsciiToMemory=writeAsciiToMemory,(!Math.imul||Math.imul(4294967295,5)!==-5)&&(Math.imul=function e(t,r){var s=t>>>16,a=t&65535,o=r>>>16,g=r&65535;return a*g+(s*g+a*o<<16)|0}),Math.imul=Math.imul,!Math.fround){var froundBuffer=new Float32Array(1);Math.fround=function(e){return froundBuffer[0]=e,froundBuffer[0]}}Math.fround=Math.fround,Math.clz32||(Math.clz32=function(e){e=e>>>0;for(var t=0;t<32;t++)if(e&1<<31-t)return t;return 32}),Math.clz32=Math.clz32,Math.trunc||(Math.trunc=function(e){return e<0?Math.ceil(e):Math.floor(e)}),Math.trunc=Math.trunc;var Math_abs=Math.abs,Math_cos=Math.cos,Math_sin=Math.sin,Math_tan=Math.tan,Math_acos=Math.acos,Math_asin=Math.asin,Math_atan=Math.atan,Math_atan2=Math.atan2,Math_exp=Math.exp,Math_log=Math.log,Math_sqrt=Math.sqrt,Math_ceil=Math.ceil,Math_floor=Math.floor,Math_pow=Math.pow,Math_imul=Math.imul,Math_fround=Math.fround,Math_round=Math.round,Math_min=Math.min,Math_clz32=Math.clz32,Math_trunc=Math.trunc,runDependencies=0,runDependencyWatcher=null,dependenciesFulfilled=null;function getUniqueRunDependency(e){return e}function addRunDependency(e){runDependencies++,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies)}Module.addRunDependency=addRunDependency;function removeRunDependency(e){if(runDependencies--,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies),runDependencies==0&&(runDependencyWatcher!==null&&(clearInterval(runDependencyWatcher),runDependencyWatcher=null),dependenciesFulfilled)){var t=dependenciesFulfilled;dependenciesFulfilled=null,t()}}Module.removeRunDependency=removeRunDependency,Module.preloadedImages={},Module.preloadedAudios={};var ASM_CONSTS=[function(e,t,r,s,a,o,g,p){return _nbind.callbackSignatureList[e].apply(this,arguments)}];function _emscripten_asm_const_iiiiiiii(e,t,r,s,a,o,g,p){return ASM_CONSTS[e](t,r,s,a,o,g,p)}function _emscripten_asm_const_iiiii(e,t,r,s,a){return ASM_CONSTS[e](t,r,s,a)}function _emscripten_asm_const_iiidddddd(e,t,r,s,a,o,g,p,f){return ASM_CONSTS[e](t,r,s,a,o,g,p,f)}function _emscripten_asm_const_iiididi(e,t,r,s,a,o,g){return ASM_CONSTS[e](t,r,s,a,o,g)}function _emscripten_asm_const_iiii(e,t,r,s){return ASM_CONSTS[e](t,r,s)}function _emscripten_asm_const_iiiid(e,t,r,s,a){return ASM_CONSTS[e](t,r,s,a)}function _emscripten_asm_const_iiiiii(e,t,r,s,a,o){return ASM_CONSTS[e](t,r,s,a,o)}STATIC_BASE=Runtime.GLOBAL_BASE,STATICTOP=STATIC_BASE+12800,__ATINIT__.push({func:function(){__GLOBAL__sub_I_Yoga_cpp()}},{func:function(){__GLOBAL__sub_I_nbind_cc()}},{func:function(){__GLOBAL__sub_I_common_cc()}},{func:function(){__GLOBAL__sub_I_Binding_cc()}}),allocate([0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,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,192,127,0,0,192,127,0,0,192,127,0,0,192,127,3,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,3,0,0,0,0,0,192,127,3,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,0,0,0,0,0,0,255,255,255,255,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,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,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,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,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,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,0,0,0,0,0,0,192,127,0,0,192,127,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,0,0,128,191,0,0,128,191,0,0,192,127,0,0,0,0,0,0,0,0,0,0,128,63,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,190,12,0,0,200,12,0,0,208,12,0,0,216,12,0,0,230,12,0,0,242,12,0,0,1,0,0,0,3,0,0,0,0,0,0,0,2,0,0,0,0,0,192,127,3,0,0,0,180,45,0,0,181,45,0,0,182,45,0,0,181,45,0,0,182,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,1,0,0,0,4,0,0,0,183,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,184,45,0,0,185,45,0,0,181,45,0,0,181,45,0,0,182,45,0,0,186,45,0,0,185,45,0,0,148,4,0,0,3,0,0,0,187,45,0,0,164,4,0,0,188,45,0,0,2,0,0,0,189,45,0,0,164,4,0,0,188,45,0,0,185,45,0,0,164,4,0,0,185,45,0,0,164,4,0,0,188,45,0,0,181,45,0,0,182,45,0,0,181,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,183,45,0,0,182,45,0,0,181,45,0,0,190,45,0,0,190,45,0,0,182,45,0,0,182,45,0,0,185,45,0,0,181,45,0,0,185,45,0,0,182,45,0,0,181,45,0,0,185,45,0,0,182,45,0,0,185,45,0,0,48,5,0,0,3,0,0,0,56,5,0,0,1,0,0,0,189,45,0,0,185,45,0,0,164,4,0,0,76,5,0,0,2,0,0,0,191,45,0,0,186,45,0,0,182,45,0,0,185,45,0,0,192,45,0,0,185,45,0,0,182,45,0,0,186,45,0,0,185,45,0,0,76,5,0,0,76,5,0,0,136,5,0,0,182,45,0,0,181,45,0,0,2,0,0,0,190,45,0,0,136,5,0,0,56,19,0,0,156,5,0,0,2,0,0,0,184,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,9,0,0,0,1,0,0,0,10,0,0,0,204,5,0,0,181,45,0,0,181,45,0,0,2,0,0,0,180,45,0,0,204,5,0,0,2,0,0,0,195,45,0,0,236,5,0,0,97,19,0,0,198,45,0,0,211,45,0,0,212,45,0,0,213,45,0,0,214,45,0,0,215,45,0,0,188,45,0,0,182,45,0,0,216,45,0,0,217,45,0,0,218,45,0,0,219,45,0,0,192,45,0,0,181,45,0,0,0,0,0,0,185,45,0,0,110,19,0,0,186,45,0,0,115,19,0,0,221,45,0,0,120,19,0,0,148,4,0,0,132,19,0,0,96,6,0,0,145,19,0,0,222,45,0,0,164,19,0,0,223,45,0,0,173,19,0,0,0,0,0,0,3,0,0,0,104,6,0,0,1,0,0,0,187,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,185,45,0,0,224,45,0,0,164,6,0,0,188,45,0,0,172,6,0,0,180,6,0,0,2,0,0,0,188,6,0,0,7,0,0,0,224,45,0,0,7,0,0,0,164,6,0,0,1,0,0,0,213,45,0,0,185,45,0,0,224,45,0,0,172,6,0,0,185,45,0,0,224,45,0,0,164,6,0,0,185,45,0,0,224,45,0,0,211,45,0,0,211,45,0,0,222,45,0,0,211,45,0,0,224,45,0,0,222,45,0,0,211,45,0,0,224,45,0,0,172,6,0,0,222,45,0,0,211,45,0,0,224,45,0,0,188,45,0,0,222,45,0,0,211,45,0,0,40,7,0,0,188,45,0,0,2,0,0,0,224,45,0,0,185,45,0,0,188,45,0,0,188,45,0,0,188,45,0,0,188,45,0,0,222,45,0,0,224,45,0,0,148,4,0,0,185,45,0,0,148,4,0,0,148,4,0,0,148,4,0,0,148,4,0,0,148,4,0,0,185,45,0,0,164,6,0,0,148,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,14,0,0,0,15,0,0,0,1,0,0,0,16,0,0,0,148,7,0,0,2,0,0,0,225,45,0,0,183,45,0,0,188,45,0,0,168,7,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,234,45,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,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,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,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,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,148,45,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,28,9,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,2,0,0,0,242,45,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,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,67,111,117,108,100,32,110,111,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,102,111,114,32,110,111,100,101,0,67,97,110,110,111,116,32,114,101,115,101,116,32,97,32,110,111,100,101,32,119,104,105,99,104,32,115,116,105,108,108,32,104,97,115,32,99,104,105,108,100,114,101,110,32,97,116,116,97,99,104,101,100,0,67,97,110,110,111,116,32,114,101,115,101,116,32,97,32,110,111,100,101,32,115,116,105,108,108,32,97,116,116,97,99,104,101,100,32,116,111,32,97,32,112,97,114,101,110,116,0,67,111,117,108,100,32,110,111,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,102,111,114,32,99,111,110,102,105,103,0,67,97,110,110,111,116,32,115,101,116,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,58,32,78,111,100,101,115,32,119,105,116,104,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,32,99,97,110,110,111,116,32,104,97,118,101,32,99,104,105,108,100,114,101,110,46,0,67,104,105,108,100,32,97,108,114,101,97,100,121,32,104,97,115,32,97,32,112,97,114,101,110,116,44,32,105,116,32,109,117,115,116,32,98,101,32,114,101,109,111,118,101,100,32,102,105,114,115,116,46,0,67,97,110,110,111,116,32,97,100,100,32,99,104,105,108,100,58,32,78,111,100,101,115,32,119,105,116,104,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,32,99,97,110,110,111,116,32,104,97,118,101,32,99,104,105,108,100,114,101,110,46,0,79,110,108,121,32,108,101,97,102,32,110,111,100,101,115,32,119,105,116,104,32,99,117,115,116,111,109,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,115,104,111,117,108,100,32,109,97,110,117,97,108,108,121,32,109,97,114,107,32,116,104,101,109,115,101,108,118,101,115,32,97,115,32,100,105,114,116,121,0,67,97,110,110,111,116,32,103,101,116,32,108,97,121,111,117,116,32,112,114,111,112,101,114,116,105,101,115,32,111,102,32,109,117,108,116,105,45,101,100,103,101,32,115,104,111,114,116,104,97,110,100,115,0,37,115,37,100,46,123,91,115,107,105,112,112,101,100,93,32,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,97,119,58,32,37,102,32,97,104,58,32,37,102,32,61,62,32,100,58,32,40,37,102,44,32,37,102,41,32,37,115,10,0,37,115,37,100,46,123,37,115,0,42,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,97,119,58,32,37,102,32,97,104,58,32,37,102,32,37,115,10,0,37,115,37,100,46,125,37,115,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,100,58,32,40,37,102,44,32,37,102,41,32,37,115,10,0,79,117,116,32,111,102,32,99,97,99,104,101,32,101,110,116,114,105,101,115,33,10,0,83,99,97,108,101,32,102,97,99,116,111,114,32,115,104,111,117,108,100,32,110,111,116,32,98,101,32,108,101,115,115,32,116,104,97,110,32,122,101,114,111,0,105,110,105,116,105,97,108,0,37,115,10,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,0,85,78,68,69,70,73,78,69,68,0,69,88,65,67,84,76,89,0,65,84,95,77,79,83,84,0,76,65,89,95,85,78,68,69,70,73,78,69,68,0,76,65,89,95,69,88,65,67,84,76,89,0,76,65,89,95,65,84,95,77,79,83,84,0,97,118,97,105,108,97,98,108,101,87,105,100,116,104,32,105,115,32,105,110,100,101,102,105,110,105,116,101,32,115,111,32,119,105,100,116,104,77,101,97,115,117,114,101,77,111,100,101,32,109,117,115,116,32,98,101,32,89,71,77,101,97,115,117,114,101,77,111,100,101,85,110,100,101,102,105,110,101,100,0,97,118,97,105,108,97,98,108,101,72,101,105,103,104,116,32,105,115,32,105,110,100,101,102,105,110,105,116,101,32,115,111,32,104,101,105,103,104,116,77,101,97,115,117,114,101,77,111,100,101,32,109,117,115,116,32,98,101,32,89,71,77,101,97,115,117,114,101,77,111,100,101,85,110,100,101,102,105,110,101,100,0,102,108,101,120,0,115,116,114,101,116,99,104,0,109,117,108,116,105,108,105,110,101,45,115,116,114,101,116,99,104,0,69,120,112,101,99,116,101,100,32,110,111,100,101,32,116,111,32,104,97,118,101,32,99,117,115,116,111,109,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,0,109,101,97,115,117,114,101,0,69,120,112,101,99,116,32,99,117,115,116,111,109,32,98,97,115,101,108,105,110,101,32,102,117,110,99,116,105,111,110,32,116,111,32,110,111,116,32,114,101,116,117,114,110,32,78,97,78,0,97,98,115,45,109,101,97,115,117,114,101,0,97,98,115,45,108,97,121,111,117,116,0,78,111,100,101,0,99,114,101,97,116,101,68,101,102,97,117,108,116,0,99,114,101,97,116,101,87,105,116,104,67,111,110,102,105,103,0,100,101,115,116,114,111,121,0,114,101,115,101,116,0,99,111,112,121,83,116,121,108,101,0,115,101,116,80,111,115,105,116,105,111,110,84,121,112,101,0,115,101,116,80,111,115,105,116,105,111,110,0,115,101,116,80,111,115,105,116,105,111,110,80,101,114,99,101,110,116,0,115,101,116,65,108,105,103,110,67,111,110,116,101,110,116,0,115,101,116,65,108,105,103,110,73,116,101,109,115,0,115,101,116,65,108,105,103,110,83,101,108,102,0,115,101,116,70,108,101,120,68,105,114,101,99,116,105,111,110,0,115,101,116,70,108,101,120,87,114,97,112,0,115,101,116,74,117,115,116,105,102,121,67,111,110,116,101,110,116,0,115,101,116,77,97,114,103,105,110,0,115,101,116,77,97,114,103,105,110,80,101,114,99,101,110,116,0,115,101,116,77,97,114,103,105,110,65,117,116,111,0,115,101,116,79,118,101,114,102,108,111,119,0,115,101,116,68,105,115,112,108,97,121,0,115,101,116,70,108,101,120,0,115,101,116,70,108,101,120,66,97,115,105,115,0,115,101,116,70,108,101,120,66,97,115,105,115,80,101,114,99,101,110,116,0,115,101,116,70,108,101,120,71,114,111,119,0,115,101,116,70,108,101,120,83,104,114,105,110,107,0,115,101,116,87,105,100,116,104,0,115,101,116,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,87,105,100,116,104,65,117,116,111,0,115,101,116,72,101,105,103,104,116,0,115,101,116,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,72,101,105,103,104,116,65,117,116,111,0,115,101,116,77,105,110,87,105,100,116,104,0,115,101,116,77,105,110,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,77,105,110,72,101,105,103,104,116,0,115,101,116,77,105,110,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,77,97,120,87,105,100,116,104,0,115,101,116,77,97,120,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,77,97,120,72,101,105,103,104,116,0,115,101,116,77,97,120,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,65,115,112,101,99,116,82,97,116,105,111,0,115,101,116,66,111,114,100,101,114,0,115,101,116,80,97,100,100,105,110,103,0,115,101,116,80,97,100,100,105,110,103,80,101,114,99,101,110,116,0,103,101,116,80,111,115,105,116,105,111,110,84,121,112,101,0,103,101,116,80,111,115,105,116,105,111,110,0,103,101,116,65,108,105,103,110,67,111,110,116,101,110,116,0,103,101,116,65,108,105,103,110,73,116,101,109,115,0,103,101,116,65,108,105,103,110,83,101,108,102,0,103,101,116,70,108,101,120,68,105,114,101,99,116,105,111,110,0,103,101,116,70,108,101,120,87,114,97,112,0,103,101,116,74,117,115,116,105,102,121,67,111,110,116,101,110,116,0,103,101,116,77,97,114,103,105,110,0,103,101,116,70,108,101,120,66,97,115,105,115,0,103,101,116,70,108,101,120,71,114,111,119,0,103,101,116,70,108,101,120,83,104,114,105,110,107,0,103,101,116,87,105,100,116,104,0,103,101,116,72,101,105,103,104,116,0,103,101,116,77,105,110,87,105,100,116,104,0,103,101,116,77,105,110,72,101,105,103,104,116,0,103,101,116,77,97,120,87,105,100,116,104,0,103,101,116,77,97,120,72,101,105,103,104,116,0,103,101,116,65,115,112,101,99,116,82,97,116,105,111,0,103,101,116,66,111,114,100,101,114,0,103,101,116,79,118,101,114,102,108,111,119,0,103,101,116,68,105,115,112,108,97,121,0,103,101,116,80,97,100,100,105,110,103,0,105,110,115,101,114,116,67,104,105,108,100,0,114,101,109,111,118,101,67,104,105,108,100,0,103,101,116,67,104,105,108,100,67,111,117,110,116,0,103,101,116,80,97,114,101,110,116,0,103,101,116,67,104,105,108,100,0,115,101,116,77,101,97,115,117,114,101,70,117,110,99,0,117,110,115,101,116,77,101,97,115,117,114,101,70,117,110,99,0,109,97,114,107,68,105,114,116,121,0,105,115,68,105,114,116,121,0,99,97,108,99,117,108,97,116,101,76,97,121,111,117,116,0,103,101,116,67,111,109,112,117,116,101,100,76,101,102,116,0,103,101,116,67,111,109,112,117,116,101,100,82,105,103,104,116,0,103,101,116,67,111,109,112,117,116,101,100,84,111,112,0,103,101,116,67,111,109,112,117,116,101,100,66,111,116,116,111,109,0,103,101,116,67,111,109,112,117,116,101,100,87,105,100,116,104,0,103,101,116,67,111,109,112,117,116,101,100,72,101,105,103,104,116,0,103,101,116,67,111,109,112,117,116,101,100,76,97,121,111,117,116,0,103,101,116,67,111,109,112,117,116,101,100,77,97,114,103,105,110,0,103,101,116,67,111,109,112,117,116,101,100,66,111,114,100,101,114,0,103,101,116,67,111,109,112,117,116,101,100,80,97,100,100,105,110,103,0,67,111,110,102,105,103,0,99,114,101,97,116,101,0,115,101,116,69,120,112,101,114,105,109,101,110,116,97,108,70,101,97,116,117,114,101,69,110,97,98,108,101,100,0,115,101,116,80,111,105,110,116,83,99,97,108,101,70,97,99,116,111,114,0,105,115,69,120,112,101,114,105,109,101,110,116,97,108,70,101,97,116,117,114,101,69,110,97,98,108,101,100,0,86,97,108,117,101,0,76,97,121,111,117,116,0,83,105,122,101,0,103,101,116,73,110,115,116,97,110,99,101,67,111,117,110,116,0,73,110,116,54,52,0,1,1,1,2,2,4,4,4,4,8,8,4,8,118,111,105,100,0,98,111,111,108,0,115,116,100,58,58,115,116,114,105,110,103,0,99,98,70,117,110,99,116,105,111,110,32,38,0,99,111,110,115,116,32,99,98,70,117,110,99,116,105,111,110,32,38,0,69,120,116,101,114,110,97,108,0,66,117,102,102,101,114,0,78,66,105,110,100,73,68,0,78,66,105,110,100,0,98,105,110,100,95,118,97,108,117,101,0,114,101,102,108,101,99,116,0,113,117,101,114,121,84,121,112,101,0,108,97,108,108,111,99,0,108,114,101,115,101,116,0,123,114,101,116,117,114,110,40,95,110,98,105,110,100,46,99,97,108,108,98,97,99,107,83,105,103,110,97,116,117,114,101,76,105,115,116,91,36,48,93,46,97,112,112,108,121,40,116,104,105,115,44,97,114,103,117,109,101,110,116,115,41,41,59,125,0,95,110,98,105,110,100,95,110,101,119,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,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,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,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,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,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,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,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,18,0,0,0,18,18,18,0,0,0,0,0,0,9,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,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,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,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,46,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);var tempDoublePtr=STATICTOP;STATICTOP+=16;function _atexit(e,t){__ATEXIT__.unshift({func:e,arg:t})}function ___cxa_atexit(){return _atexit.apply(null,arguments)}function _abort(){Module.abort()}function __ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj(){Module.printErr("missing function: _ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj"),abort(-1)}function __decorate(e,t,r,s){var a=arguments.length,o=a<3?t:s===null?s=Object.getOwnPropertyDescriptor(t,r):s,g;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(e,t,r,s);else for(var p=e.length-1;p>=0;p--)(g=e[p])&&(o=(a<3?g(o):a>3?g(t,r,o):g(t,r))||o);return a>3&&o&&Object.defineProperty(t,r,o),o}function _defineHidden(e){return function(t,r){Object.defineProperty(t,r,{configurable:!1,enumerable:!1,value:e,writable:!0})}}var _nbind={};function __nbind_free_external(e){_nbind.externalList[e].dereference(e)}function __nbind_reference_external(e){_nbind.externalList[e].reference()}function _llvm_stackrestore(e){var t=_llvm_stacksave,r=t.LLVM_SAVEDSTACKS[e];t.LLVM_SAVEDSTACKS.splice(e,1),Runtime.stackRestore(r)}function __nbind_register_pool(e,t,r,s){_nbind.Pool.pageSize=e,_nbind.Pool.usedPtr=t/4,_nbind.Pool.rootPtr=r,_nbind.Pool.pagePtr=s/4,HEAP32[t/4]=16909060,HEAP8[t]==1&&(_nbind.bigEndian=!0),HEAP32[t/4]=0,_nbind.makeTypeKindTbl=(o={},o[1024]=_nbind.PrimitiveType,o[64]=_nbind.Int64Type,o[2048]=_nbind.BindClass,o[3072]=_nbind.BindClassPtr,o[4096]=_nbind.SharedClassPtr,o[5120]=_nbind.ArrayType,o[6144]=_nbind.ArrayType,o[7168]=_nbind.CStringType,o[9216]=_nbind.CallbackType,o[10240]=_nbind.BindType,o),_nbind.makeTypeNameTbl={Buffer:_nbind.BufferType,External:_nbind.ExternalType,Int64:_nbind.Int64Type,_nbind_new:_nbind.CreateValueType,bool:_nbind.BooleanType,"cbFunction &":_nbind.CallbackType,"const cbFunction &":_nbind.CallbackType,"const std::string &":_nbind.StringType,"std::string":_nbind.StringType},Module.toggleLightGC=_nbind.toggleLightGC,_nbind.callUpcast=Module.dynCall_ii;var a=_nbind.makeType(_nbind.constructType,{flags:2048,id:0,name:""});a.proto=Module,_nbind.BindClass.list.push(a);var o}function _emscripten_set_main_loop_timing(e,t){if(Browser.mainLoop.timingMode=e,Browser.mainLoop.timingValue=t,!Browser.mainLoop.func)return 1;if(e==0)Browser.mainLoop.scheduler=function(){var g=Math.max(0,Browser.mainLoop.tickStartTime+t-_emscripten_get_now())|0;setTimeout(Browser.mainLoop.runner,g)},Browser.mainLoop.method="timeout";else if(e==1)Browser.mainLoop.scheduler=function(){Browser.requestAnimationFrame(Browser.mainLoop.runner)},Browser.mainLoop.method="rAF";else if(e==2){if(!window.setImmediate){let o=function(g){g.source===window&&g.data===s&&(g.stopPropagation(),r.shift()())};var a=o,r=[],s="setimmediate";window.addEventListener("message",o,!0),window.setImmediate=function(p){r.push(p),ENVIRONMENT_IS_WORKER?(Module.setImmediates===void 0&&(Module.setImmediates=[]),Module.setImmediates.push(p),window.postMessage({target:s})):window.postMessage(s,"*")}}Browser.mainLoop.scheduler=function(){window.setImmediate(Browser.mainLoop.runner)},Browser.mainLoop.method="immediate"}return 0}function _emscripten_get_now(){abort()}function _emscripten_set_main_loop(e,t,r,s,a){Module.noExitRuntime=!0,assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters."),Browser.mainLoop.func=e,Browser.mainLoop.arg=s;var o;typeof s<"u"?o=function(){Module.dynCall_vi(e,s)}:o=function(){Module.dynCall_v(e)};var g=Browser.mainLoop.currentlyRunningMainloop;if(Browser.mainLoop.runner=function(){if(!ABORT){if(Browser.mainLoop.queue.length>0){var f=Date.now(),m=Browser.mainLoop.queue.shift();if(m.func(m.arg),Browser.mainLoop.remainingBlockers){var y=Browser.mainLoop.remainingBlockers,B=y%1==0?y-1:Math.floor(y);m.counted?Browser.mainLoop.remainingBlockers=B:(B=B+.5,Browser.mainLoop.remainingBlockers=(8*y+B)/9)}if(console.log('main loop blocker "'+m.name+'" took '+(Date.now()-f)+" ms"),Browser.mainLoop.updateStatus(),g1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}else Browser.mainLoop.timingMode==0&&(Browser.mainLoop.tickStartTime=_emscripten_get_now());Browser.mainLoop.method==="timeout"&&Module.ctx&&(Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!"),Browser.mainLoop.method=""),Browser.mainLoop.runIter(o),!(g0?_emscripten_set_main_loop_timing(0,1e3/t):_emscripten_set_main_loop_timing(1,1),Browser.mainLoop.scheduler()),r)throw"SimulateInfiniteLoop"}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:function(){Browser.mainLoop.scheduler=null,Browser.mainLoop.currentlyRunningMainloop++},resume:function(){Browser.mainLoop.currentlyRunningMainloop++;var e=Browser.mainLoop.timingMode,t=Browser.mainLoop.timingValue,r=Browser.mainLoop.func;Browser.mainLoop.func=null,_emscripten_set_main_loop(r,0,!1,Browser.mainLoop.arg,!0),_emscripten_set_main_loop_timing(e,t),Browser.mainLoop.scheduler()},updateStatus:function(){if(Module.setStatus){var e=Module.statusMessage||"Please wait...",t=Browser.mainLoop.remainingBlockers,r=Browser.mainLoop.expectedBlockers;t?t"u"&&(console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available."),Module.noImageDecoding=!0);var e={};e.canHandle=function(o){return!Module.noImageDecoding&&/\.(jpg|jpeg|png|bmp)$/i.test(o)},e.handle=function(o,g,p,f){var m=null;if(Browser.hasBlobConstructor)try{m=new Blob([o],{type:Browser.getMimetype(g)}),m.size!==o.length&&(m=new Blob([new Uint8Array(o).buffer],{type:Browser.getMimetype(g)}))}catch(k){Runtime.warnOnce("Blob constructor present but fails: "+k+"; falling back to blob builder")}if(!m){var y=new Browser.BlobBuilder;y.append(new Uint8Array(o).buffer),m=y.getBlob()}var B=Browser.URLObject.createObjectURL(m),v=new Image;v.onload=function(){assert(v.complete,"Image "+g+" could not be decoded");var T=document.createElement("canvas");T.width=v.width,T.height=v.height;var O=T.getContext("2d");O.drawImage(v,0,0),Module.preloadedImages[g]=T,Browser.URLObject.revokeObjectURL(B),p&&p(o)},v.onerror=function(T){console.log("Image "+B+" could not be decoded"),f&&f()},v.src=B},Module.preloadPlugins.push(e);var t={};t.canHandle=function(o){return!Module.noAudioDecoding&&o.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},t.handle=function(o,g,p,f){var m=!1;function y(O){m||(m=!0,Module.preloadedAudios[g]=O,p&&p(o))}function B(){m||(m=!0,Module.preloadedAudios[g]=new Audio,f&&f())}if(Browser.hasBlobConstructor){try{var v=new Blob([o],{type:Browser.getMimetype(g)})}catch{return B()}var k=Browser.URLObject.createObjectURL(v),T=new Audio;T.addEventListener("canplaythrough",function(){y(T)},!1),T.onerror=function(X){if(m)return;console.log("warning: browser could not fully decode audio "+g+", trying slower base64 approach");function U(le){for(var ae="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",ge="=",fe="",pe=0,he=0,be=0;be=6;){var Te=pe>>he-6&63;he-=6,fe+=ae[Te]}return he==2?(fe+=ae[(pe&3)<<4],fe+=ge+ge):he==4&&(fe+=ae[(pe&15)<<2],fe+=ge),fe}T.src="data:audio/x-"+g.substr(-3)+";base64,"+U(o),y(T)},T.src=k,Browser.safeSetTimeout(function(){y(T)},1e4)}else return B()},Module.preloadPlugins.push(t);function r(){Browser.pointerLock=document.pointerLockElement===Module.canvas||document.mozPointerLockElement===Module.canvas||document.webkitPointerLockElement===Module.canvas||document.msPointerLockElement===Module.canvas}var s=Module.canvas;s&&(s.requestPointerLock=s.requestPointerLock||s.mozRequestPointerLock||s.webkitRequestPointerLock||s.msRequestPointerLock||function(){},s.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},s.exitPointerLock=s.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",r,!1),document.addEventListener("mozpointerlockchange",r,!1),document.addEventListener("webkitpointerlockchange",r,!1),document.addEventListener("mspointerlockchange",r,!1),Module.elementPointerLock&&s.addEventListener("click",function(a){!Browser.pointerLock&&Module.canvas.requestPointerLock&&(Module.canvas.requestPointerLock(),a.preventDefault())},!1))},createContext:function(e,t,r,s){if(t&&Module.ctx&&e==Module.canvas)return Module.ctx;var a,o;if(t){var g={antialias:!1,alpha:!1};if(s)for(var p in s)g[p]=s[p];o=GL.createContext(e,g),o&&(a=GL.getContext(o).GLctx)}else a=e.getContext("2d");return a?(r&&(t||assert(typeof GLctx>"u","cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),Module.ctx=a,t&&GL.makeContextCurrent(o),Module.useWebGL=t,Browser.moduleContextCreatedCallbacks.forEach(function(f){f()}),Browser.init()),a):null},destroyContext:function(e,t,r){},fullscreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullscreen:function(e,t,r){Browser.lockPointer=e,Browser.resizeCanvas=t,Browser.vrDevice=r,typeof Browser.lockPointer>"u"&&(Browser.lockPointer=!0),typeof Browser.resizeCanvas>"u"&&(Browser.resizeCanvas=!1),typeof Browser.vrDevice>"u"&&(Browser.vrDevice=null);var s=Module.canvas;function a(){Browser.isFullscreen=!1;var g=s.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===g?(s.exitFullscreen=document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||function(){},s.exitFullscreen=s.exitFullscreen.bind(document),Browser.lockPointer&&s.requestPointerLock(),Browser.isFullscreen=!0,Browser.resizeCanvas&&Browser.setFullscreenCanvasSize()):(g.parentNode.insertBefore(s,g),g.parentNode.removeChild(g),Browser.resizeCanvas&&Browser.setWindowedCanvasSize()),Module.onFullScreen&&Module.onFullScreen(Browser.isFullscreen),Module.onFullscreen&&Module.onFullscreen(Browser.isFullscreen),Browser.updateCanvasDimensions(s)}Browser.fullscreenHandlersInstalled||(Browser.fullscreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",a,!1),document.addEventListener("mozfullscreenchange",a,!1),document.addEventListener("webkitfullscreenchange",a,!1),document.addEventListener("MSFullscreenChange",a,!1));var o=document.createElement("div");s.parentNode.insertBefore(o,s),o.appendChild(s),o.requestFullscreen=o.requestFullscreen||o.mozRequestFullScreen||o.msRequestFullscreen||(o.webkitRequestFullscreen?function(){o.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT)}:null)||(o.webkitRequestFullScreen?function(){o.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null),r?o.requestFullscreen({vrDisplay:r}):o.requestFullscreen()},requestFullScreen:function(e,t,r){return Module.printErr("Browser.requestFullScreen() is deprecated. Please call Browser.requestFullscreen instead."),Browser.requestFullScreen=function(s,a,o){return Browser.requestFullscreen(s,a,o)},Browser.requestFullscreen(e,t,r)},nextRAF:0,fakeRequestAnimationFrame:function(e){var t=Date.now();if(Browser.nextRAF===0)Browser.nextRAF=t+1e3/60;else for(;t+2>=Browser.nextRAF;)Browser.nextRAF+=1e3/60;var r=Math.max(Browser.nextRAF-t,0);setTimeout(e,r)},requestAnimationFrame:function e(t){typeof window>"u"?Browser.fakeRequestAnimationFrame(t):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||Browser.fakeRequestAnimationFrame),window.requestAnimationFrame(t))},safeCallback:function(e){return function(){if(!ABORT)return e.apply(null,arguments)}},allowAsyncCallbacks:!0,queuedAsyncCallbacks:[],pauseAsyncCallbacks:function(){Browser.allowAsyncCallbacks=!1},resumeAsyncCallbacks:function(){if(Browser.allowAsyncCallbacks=!0,Browser.queuedAsyncCallbacks.length>0){var e=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[],e.forEach(function(t){t()})}},safeRequestAnimationFrame:function(e){return Browser.requestAnimationFrame(function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))})},safeSetTimeout:function(e,t){return Module.noExitRuntime=!0,setTimeout(function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))},t)},safeSetInterval:function(e,t){return Module.noExitRuntime=!0,setInterval(function(){ABORT||Browser.allowAsyncCallbacks&&e()},t)},getMimetype:function(e){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[e.substr(e.lastIndexOf(".")+1)]},getUserMedia:function(e){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia),window.getUserMedia(e)},getMovementX:function(e){return e.movementX||e.mozMovementX||e.webkitMovementX||0},getMovementY:function(e){return e.movementY||e.mozMovementY||e.webkitMovementY||0},getMouseWheelDelta:function(e){var t=0;switch(e.type){case"DOMMouseScroll":t=e.detail;break;case"mousewheel":t=e.wheelDelta;break;case"wheel":t=e.deltaY;break;default:throw"unrecognized mouse wheel event: "+e.type}return t},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function(e){if(Browser.pointerLock)e.type!="mousemove"&&"mozMovementX"in e?Browser.mouseMovementX=Browser.mouseMovementY=0:(Browser.mouseMovementX=Browser.getMovementX(e),Browser.mouseMovementY=Browser.getMovementY(e)),typeof SDL<"u"?(Browser.mouseX=SDL.mouseX+Browser.mouseMovementX,Browser.mouseY=SDL.mouseY+Browser.mouseMovementY):(Browser.mouseX+=Browser.mouseMovementX,Browser.mouseY+=Browser.mouseMovementY);else{var t=Module.canvas.getBoundingClientRect(),r=Module.canvas.width,s=Module.canvas.height,a=typeof window.scrollX<"u"?window.scrollX:window.pageXOffset,o=typeof window.scrollY<"u"?window.scrollY:window.pageYOffset;if(e.type==="touchstart"||e.type==="touchend"||e.type==="touchmove"){var g=e.touch;if(g===void 0)return;var p=g.pageX-(a+t.left),f=g.pageY-(o+t.top);p=p*(r/t.width),f=f*(s/t.height);var m={x:p,y:f};if(e.type==="touchstart")Browser.lastTouches[g.identifier]=m,Browser.touches[g.identifier]=m;else if(e.type==="touchend"||e.type==="touchmove"){var y=Browser.touches[g.identifier];y||(y=m),Browser.lastTouches[g.identifier]=y,Browser.touches[g.identifier]=m}return}var B=e.pageX-(a+t.left),v=e.pageY-(o+t.top);B=B*(r/t.width),v=v*(s/t.height),Browser.mouseMovementX=B-Browser.mouseX,Browser.mouseMovementY=v-Browser.mouseY,Browser.mouseX=B,Browser.mouseY=v}},asyncLoad:function(e,t,r,s){var a=s?"":"al "+e;Module.readAsync(e,function(o){assert(o,'Loading data file "'+e+'" failed (no arrayBuffer).'),t(new Uint8Array(o)),a&&removeRunDependency(a)},function(o){if(r)r();else throw'Loading data file "'+e+'" failed.'}),a&&addRunDependency(a)},resizeListeners:[],updateResizeListeners:function(){var e=Module.canvas;Browser.resizeListeners.forEach(function(t){t(e.width,e.height)})},setCanvasSize:function(e,t,r){var s=Module.canvas;Browser.updateCanvasDimensions(s,e,t),r||Browser.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullscreenCanvasSize:function(){if(typeof SDL<"u"){var e=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];e=e|8388608,HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=e}Browser.updateResizeListeners()},setWindowedCanvasSize:function(){if(typeof SDL<"u"){var e=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];e=e&-8388609,HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=e}Browser.updateResizeListeners()},updateCanvasDimensions:function(e,t,r){t&&r?(e.widthNative=t,e.heightNative=r):(t=e.widthNative,r=e.heightNative);var s=t,a=r;if(Module.forcedAspectRatio&&Module.forcedAspectRatio>0&&(s/a>2];return t},getStr:function(){var e=Pointer_stringify(SYSCALLS.get());return e},get64:function(){var e=SYSCALLS.get(),t=SYSCALLS.get();return e>=0?assert(t===0):assert(t===-1),e},getZero:function(){assert(SYSCALLS.get()===0)}};function ___syscall6(e,t){SYSCALLS.varargs=t;try{var r=SYSCALLS.getStreamFromFD();return FS.close(r),0}catch(s){return(typeof FS>"u"||!(s instanceof FS.ErrnoError))&&abort(s),-s.errno}}function ___syscall54(e,t){SYSCALLS.varargs=t;try{return 0}catch(r){return(typeof FS>"u"||!(r instanceof FS.ErrnoError))&&abort(r),-r.errno}}function _typeModule(e){var t=[[0,1,"X"],[1,1,"const X"],[128,1,"X *"],[256,1,"X &"],[384,1,"X &&"],[512,1,"std::shared_ptr"],[640,1,"std::unique_ptr"],[5120,1,"std::vector"],[6144,2,"std::array"],[9216,-1,"std::function"]];function r(f,m,y,B,v,k){if(m==1){var T=B&896;(T==128||T==256||T==384)&&(f="X const")}var O;return k?O=y.replace("X",f).replace("Y",v):O=f.replace("X",y).replace("Y",v),O.replace(/([*&]) (?=[*&])/g,"$1")}function s(f,m,y,B,v){throw new Error(f+" type "+y.replace("X",m+"?")+(B?" with flag "+B:"")+" in "+v)}function a(f,m,y,B,v,k,T,O){k===void 0&&(k="X"),O===void 0&&(O=1);var X=y(f);if(X)return X;var U=B(f),le=U.placeholderFlag,ae=t[le];T&&ae&&(k=r(T[2],T[0],k,ae[0],"?",!0));var ge;le==0&&(ge="Unbound"),le>=10&&(ge="Corrupt"),O>20&&(ge="Deeply nested"),ge&&s(ge,f,k,le,v||"?");var fe=U.paramList[0],pe=a(fe,m,y,B,v,k,ae,O+1),he,be={flags:ae[0],id:f,name:"",paramList:[pe]},Te=[],ke="?";switch(U.placeholderFlag){case 1:he=pe.spec;break;case 2:if((pe.flags&15360)==1024&&pe.spec.ptrSize==1){be.flags=7168;break}case 3:case 6:case 5:he=pe.spec,pe.flags&15360;break;case 8:ke=""+U.paramList[1],be.paramList.push(U.paramList[1]);break;case 9:for(var x=0,et=U.paramList[1];x>2]=e),e}function _llvm_stacksave(){var e=_llvm_stacksave;return e.LLVM_SAVEDSTACKS||(e.LLVM_SAVEDSTACKS=[]),e.LLVM_SAVEDSTACKS.push(Runtime.stackSave()),e.LLVM_SAVEDSTACKS.length-1}function ___syscall140(e,t){SYSCALLS.varargs=t;try{var r=SYSCALLS.getStreamFromFD(),s=SYSCALLS.get(),a=SYSCALLS.get(),o=SYSCALLS.get(),g=SYSCALLS.get(),p=a;return FS.llseek(r,p,g),HEAP32[o>>2]=r.position,r.getdents&&p===0&&g===0&&(r.getdents=null),0}catch(f){return(typeof FS>"u"||!(f instanceof FS.ErrnoError))&&abort(f),-f.errno}}function ___syscall146(e,t){SYSCALLS.varargs=t;try{var r=SYSCALLS.get(),s=SYSCALLS.get(),a=SYSCALLS.get(),o=0;___syscall146.buffer||(___syscall146.buffers=[null,[],[]],___syscall146.printChar=function(y,B){var v=___syscall146.buffers[y];assert(v),B===0||B===10?((y===1?Module.print:Module.printErr)(UTF8ArrayToString(v,0)),v.length=0):v.push(B)});for(var g=0;g>2],f=HEAP32[s+(g*8+4)>>2],m=0;m"u"||!(y instanceof FS.ErrnoError))&&abort(y),-y.errno}}function __nbind_finish(){for(var e=0,t=_nbind.BindClass.list;ee.pageSize/2||t>e.pageSize-r){var s=_nbind.typeNameTbl.NBind.proto;return s.lalloc(t)}else return HEAPU32[e.usedPtr]=r+t,e.rootPtr+r},e.lreset=function(t,r){var s=HEAPU32[e.pagePtr];if(s){var a=_nbind.typeNameTbl.NBind.proto;a.lreset(t,r)}else HEAPU32[e.usedPtr]=t},e}();_nbind.Pool=Pool;function constructType(e,t){var r=e==10240?_nbind.makeTypeNameTbl[t.name]||_nbind.BindType:_nbind.makeTypeKindTbl[e],s=new r(t);return typeIdTbl[t.id]=s,_nbind.typeNameTbl[t.name]=s,s}_nbind.constructType=constructType;function getType(e){return typeIdTbl[e]}_nbind.getType=getType;function queryType(e){var t=HEAPU8[e],r=_nbind.structureList[t][1];e/=4,r<0&&(++e,r=HEAPU32[e]+1);var s=Array.prototype.slice.call(HEAPU32.subarray(e+1,e+1+r));return t==9&&(s=[s[0],s.slice(1)]),{paramList:s,placeholderFlag:t}}_nbind.queryType=queryType;function getTypes(e,t){return e.map(function(r){return typeof r=="number"?_nbind.getComplexType(r,constructType,getType,queryType,t):_nbind.typeNameTbl[r]})}_nbind.getTypes=getTypes;function readTypeIdList(e,t){return Array.prototype.slice.call(HEAPU32,e/4,e/4+t)}_nbind.readTypeIdList=readTypeIdList;function readAsciiString(e){for(var t=e;HEAPU8[t++];);return String.fromCharCode.apply("",HEAPU8.subarray(e,t-1))}_nbind.readAsciiString=readAsciiString;function readPolicyList(e){var t={};if(e)for(;;){var r=HEAPU32[e/4];if(!r)break;t[readAsciiString(r)]=!0,e+=4}return t}_nbind.readPolicyList=readPolicyList;function getDynCall(e,t){var r={float32_t:"d",float64_t:"d",int64_t:"d",uint64_t:"d",void:"v"},s=e.map(function(o){return r[o.name]||"i"}).join(""),a=Module["dynCall_"+s];if(!a)throw new Error("dynCall_"+s+" not found for "+t+"("+e.map(function(o){return o.name}).join(", ")+")");return a}_nbind.getDynCall=getDynCall;function addMethod(e,t,r,s){var a=e[t];e.hasOwnProperty(t)&&a?((a.arity||a.arity===0)&&(a=_nbind.makeOverloader(a,a.arity),e[t]=a),a.addMethod(r,s)):(r.arity=s,e[t]=r)}_nbind.addMethod=addMethod;function throwError(e){throw new Error(e)}_nbind.throwError=throwError,_nbind.bigEndian=!1;var _a=_typeModule(_typeModule);_nbind.Type=_a.Type,_nbind.makeType=_a.makeType,_nbind.getComplexType=_a.getComplexType,_nbind.structureList=_a.structureList;var BindType=function(e){__extends(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.heap=HEAPU32,r.ptrSize=4,r}return t.prototype.needsWireRead=function(r){return!!this.wireRead||!!this.makeWireRead},t.prototype.needsWireWrite=function(r){return!!this.wireWrite||!!this.makeWireWrite},t}(_nbind.Type);_nbind.BindType=BindType;var PrimitiveType=function(e){__extends(t,e);function t(r){var s=e.call(this,r)||this,a=r.flags&32?{32:HEAPF32,64:HEAPF64}:r.flags&8?{8:HEAPU8,16:HEAPU16,32:HEAPU32}:{8:HEAP8,16:HEAP16,32:HEAP32};return s.heap=a[r.ptrSize*8],s.ptrSize=r.ptrSize,s}return t.prototype.needsWireWrite=function(r){return!!r&&!!r.Strict},t.prototype.makeWireWrite=function(r,s){return s&&s.Strict&&function(a){if(typeof a=="number")return a;throw new Error("Type mismatch")}},t}(BindType);_nbind.PrimitiveType=PrimitiveType;function pushCString(e,t){if(e==null){if(t&&t.Nullable)return 0;throw new Error("Type mismatch")}if(t&&t.Strict){if(typeof e!="string")throw new Error("Type mismatch")}else e=e.toString();var r=Module.lengthBytesUTF8(e)+1,s=_nbind.Pool.lalloc(r);return Module.stringToUTF8Array(e,HEAPU8,s,r),s}_nbind.pushCString=pushCString;function popCString(e){return e===0?null:Module.Pointer_stringify(e)}_nbind.popCString=popCString;var CStringType=function(e){__extends(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.wireRead=popCString,r.wireWrite=pushCString,r.readResources=[_nbind.resources.pool],r.writeResources=[_nbind.resources.pool],r}return t.prototype.makeWireWrite=function(r,s){return function(a){return pushCString(a,s)}},t}(BindType);_nbind.CStringType=CStringType;var BooleanType=function(e){__extends(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.wireRead=function(s){return!!s},r}return t.prototype.needsWireWrite=function(r){return!!r&&!!r.Strict},t.prototype.makeWireRead=function(r){return"!!("+r+")"},t.prototype.makeWireWrite=function(r,s){return s&&s.Strict&&function(a){if(typeof a=="boolean")return a;throw new Error("Type mismatch")}||r},t}(BindType);_nbind.BooleanType=BooleanType;var Wrapper=function(){function e(){}return e.prototype.persist=function(){this.__nbindState|=1},e}();_nbind.Wrapper=Wrapper;function makeBound(e,t){var r=function(s){__extends(a,s);function a(o,g,p,f){var m=s.call(this)||this;if(!(m instanceof a))return new(Function.prototype.bind.apply(a,Array.prototype.concat.apply([null],arguments)));var y=g,B=p,v=f;if(o!==_nbind.ptrMarker){var k=m.__nbindConstructor.apply(m,arguments);y=4608,v=HEAPU32[k/4],B=HEAPU32[k/4+1]}var T={configurable:!0,enumerable:!1,value:null,writable:!1},O={__nbindFlags:y,__nbindPtr:B};v&&(O.__nbindShared=v,_nbind.mark(m));for(var X=0,U=Object.keys(O);X>=1;var r=_nbind.valueList[e];return _nbind.valueList[e]=firstFreeValue,firstFreeValue=e,r}else{if(t)return _nbind.popShared(e,t);throw new Error("Invalid value slot "+e)}}_nbind.popValue=popValue;var valueBase=18446744073709552e3;function push64(e){return typeof e=="number"?e:pushValue(e)*4096+valueBase}function pop64(e){return e=3?g=Buffer.from(o):g=new Buffer(o),g.copy(s)}else getBuffer(s).set(o)}}_nbind.commitBuffer=commitBuffer;var dirtyList=[],gcTimer=0;function sweep(){for(var e=0,t=dirtyList;e>2]=DYNAMIC_BASE,staticSealed=!0;function invoke_viiiii(e,t,r,s,a,o){try{Module.dynCall_viiiii(e,t,r,s,a,o)}catch(g){if(typeof g!="number"&&g!=="longjmp")throw g;Module.setThrew(1,0)}}function invoke_vif(e,t,r){try{Module.dynCall_vif(e,t,r)}catch(s){if(typeof s!="number"&&s!=="longjmp")throw s;Module.setThrew(1,0)}}function invoke_vid(e,t,r){try{Module.dynCall_vid(e,t,r)}catch(s){if(typeof s!="number"&&s!=="longjmp")throw s;Module.setThrew(1,0)}}function invoke_fiff(e,t,r,s){try{return Module.dynCall_fiff(e,t,r,s)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_vi(e,t){try{Module.dynCall_vi(e,t)}catch(r){if(typeof r!="number"&&r!=="longjmp")throw r;Module.setThrew(1,0)}}function invoke_vii(e,t,r){try{Module.dynCall_vii(e,t,r)}catch(s){if(typeof s!="number"&&s!=="longjmp")throw s;Module.setThrew(1,0)}}function invoke_ii(e,t){try{return Module.dynCall_ii(e,t)}catch(r){if(typeof r!="number"&&r!=="longjmp")throw r;Module.setThrew(1,0)}}function invoke_viddi(e,t,r,s,a){try{Module.dynCall_viddi(e,t,r,s,a)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}function invoke_vidd(e,t,r,s){try{Module.dynCall_vidd(e,t,r,s)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_iiii(e,t,r,s){try{return Module.dynCall_iiii(e,t,r,s)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_diii(e,t,r,s){try{return Module.dynCall_diii(e,t,r,s)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_di(e,t){try{return Module.dynCall_di(e,t)}catch(r){if(typeof r!="number"&&r!=="longjmp")throw r;Module.setThrew(1,0)}}function invoke_iid(e,t,r){try{return Module.dynCall_iid(e,t,r)}catch(s){if(typeof s!="number"&&s!=="longjmp")throw s;Module.setThrew(1,0)}}function invoke_iii(e,t,r){try{return Module.dynCall_iii(e,t,r)}catch(s){if(typeof s!="number"&&s!=="longjmp")throw s;Module.setThrew(1,0)}}function invoke_viiddi(e,t,r,s,a,o){try{Module.dynCall_viiddi(e,t,r,s,a,o)}catch(g){if(typeof g!="number"&&g!=="longjmp")throw g;Module.setThrew(1,0)}}function invoke_viiiiii(e,t,r,s,a,o,g){try{Module.dynCall_viiiiii(e,t,r,s,a,o,g)}catch(p){if(typeof p!="number"&&p!=="longjmp")throw p;Module.setThrew(1,0)}}function invoke_dii(e,t,r){try{return Module.dynCall_dii(e,t,r)}catch(s){if(typeof s!="number"&&s!=="longjmp")throw s;Module.setThrew(1,0)}}function invoke_i(e){try{return Module.dynCall_i(e)}catch(t){if(typeof t!="number"&&t!=="longjmp")throw t;Module.setThrew(1,0)}}function invoke_iiiiii(e,t,r,s,a,o){try{return Module.dynCall_iiiiii(e,t,r,s,a,o)}catch(g){if(typeof g!="number"&&g!=="longjmp")throw g;Module.setThrew(1,0)}}function invoke_viiid(e,t,r,s,a){try{Module.dynCall_viiid(e,t,r,s,a)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}function invoke_viififi(e,t,r,s,a,o,g){try{Module.dynCall_viififi(e,t,r,s,a,o,g)}catch(p){if(typeof p!="number"&&p!=="longjmp")throw p;Module.setThrew(1,0)}}function invoke_viii(e,t,r,s){try{Module.dynCall_viii(e,t,r,s)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_v(e){try{Module.dynCall_v(e)}catch(t){if(typeof t!="number"&&t!=="longjmp")throw t;Module.setThrew(1,0)}}function invoke_viid(e,t,r,s){try{Module.dynCall_viid(e,t,r,s)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_idd(e,t,r){try{return Module.dynCall_idd(e,t,r)}catch(s){if(typeof s!="number"&&s!=="longjmp")throw s;Module.setThrew(1,0)}}function invoke_viiii(e,t,r,s,a){try{Module.dynCall_viiii(e,t,r,s,a)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}Module.asmGlobalArg={Math,Int8Array,Int16Array,Int32Array,Uint8Array,Uint16Array,Uint32Array,Float32Array,Float64Array,NaN:NaN,Infinity:1/0},Module.asmLibraryArg={abort,assert,enlargeMemory,getTotalMemory,abortOnCannotGrowMemory,invoke_viiiii,invoke_vif,invoke_vid,invoke_fiff,invoke_vi,invoke_vii,invoke_ii,invoke_viddi,invoke_vidd,invoke_iiii,invoke_diii,invoke_di,invoke_iid,invoke_iii,invoke_viiddi,invoke_viiiiii,invoke_dii,invoke_i,invoke_iiiiii,invoke_viiid,invoke_viififi,invoke_viii,invoke_v,invoke_viid,invoke_idd,invoke_viiii,_emscripten_asm_const_iiiii,_emscripten_asm_const_iiidddddd,_emscripten_asm_const_iiiid,__nbind_reference_external,_emscripten_asm_const_iiiiiiii,_removeAccessorPrefix,_typeModule,__nbind_register_pool,__decorate,_llvm_stackrestore,___cxa_atexit,__extends,__nbind_get_value_object,__ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj,_emscripten_set_main_loop_timing,__nbind_register_primitive,__nbind_register_type,_emscripten_memcpy_big,__nbind_register_function,___setErrNo,__nbind_register_class,__nbind_finish,_abort,_nbind_value,_llvm_stacksave,___syscall54,_defineHidden,_emscripten_set_main_loop,_emscripten_get_now,__nbind_register_callback_signature,_emscripten_asm_const_iiiiii,__nbind_free_external,_emscripten_asm_const_iiii,_emscripten_asm_const_iiididi,___syscall6,_atexit,___syscall140,___syscall146,DYNAMICTOP_PTR,tempDoublePtr,ABORT,STACKTOP,STACK_MAX,cttz_i8,___dso_handle};var asm=function(e,t,r){var s=new e.Int8Array(r),a=new e.Int16Array(r),o=new e.Int32Array(r),g=new e.Uint8Array(r),p=new e.Uint16Array(r),f=new e.Uint32Array(r),m=new e.Float32Array(r),y=new e.Float64Array(r),B=t.DYNAMICTOP_PTR|0,v=t.tempDoublePtr|0,k=t.ABORT|0,T=t.STACKTOP|0,O=t.STACK_MAX|0,X=t.cttz_i8|0,U=t.___dso_handle|0,le=0,ae=0,ge=0,fe=0,pe=e.NaN,he=e.Infinity,be=0,Te=0,ke=0,x=0,et=0,Ue=0,Je=e.Math.floor,Xe=e.Math.abs,ft=e.Math.sqrt,Gt=e.Math.pow,er=e.Math.cos,Ur=e.Math.sin,Ot=e.Math.tan,dr=e.Math.acos,Ar=e.Math.asin,or=e.Math.atan,Fr=e.Math.atan2,$r=e.Math.exp,Or=e.Math.log,In=e.Math.ceil,Br=e.Math.imul,tr=e.Math.min,gn=e.Math.max,Gn=e.Math.clz32,we=e.Math.fround,Zi=t.abort,Fa=t.assert,xa=t.enlargeMemory,Qs=t.getTotalMemory,lr=t.abortOnCannotGrowMemory,ua=t.invoke_viiiii,vi=t.invoke_vif,Hu=t.invoke_vid,Yu=t.invoke_fiff,YA=t.invoke_vi,gd=t.invoke_vii,NA=t.invoke_ii,Vd=t.invoke_viddi,jr=t.invoke_vidd,Gr=t.invoke_iiii,Ir=t.invoke_diii,nn=t.invoke_di,Cn=t.invoke_iid,Vn=t.invoke_iii,Ji=t.invoke_viiddi,Yr=t.invoke_viiiiii,Vs=t.invoke_dii,Uo=t.invoke_i,ai=t.invoke_iiiiii,da=t.invoke_viiid,og=t.invoke_viififi,Zu=t.invoke_viii,mg=t.invoke_v,Lu=t.invoke_viid,ml=t.invoke_idd,wi=t.invoke_viiii,ts=t._emscripten_asm_const_iiiii,$i=t._emscripten_asm_const_iiidddddd,ka=t._emscripten_asm_const_iiiid,qs=t.__nbind_reference_external,kl=t._emscripten_asm_const_iiiiiiii,zo=t._removeAccessorPrefix,Ta=t._typeModule,Tu=t.__nbind_register_pool,xg=t.__decorate,_l=t._llvm_stackrestore,cu=t.___cxa_atexit,Vg=t.__extends,lf=t.__nbind_get_value_object,Nd=t.__ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj,ei=t._emscripten_set_main_loop_timing,Qa=t.__nbind_register_primitive,Dt=t.__nbind_register_type,Gl=t._emscripten_memcpy_big,Xu=t.__nbind_register_function,us=t.___setErrNo,ag=t.__nbind_register_class,on=t.__nbind_finish,Eo=t._abort,eA=t._nbind_value,lA=t._llvm_stacksave,XA=t.___syscall54,To=t._defineHidden,Xl=t._emscripten_set_main_loop,Zf=t._emscripten_get_now,Wd=t.__nbind_register_callback_signature,EA=t._emscripten_asm_const_iiiiii,Ps=t.__nbind_free_external,Yi=t._emscripten_asm_const_iiii,ec=t._emscripten_asm_const_iiididi,ul=t.___syscall6,Ts=t._atexit,RA=t.___syscall140,Kd=t.___syscall146,Na=we(0);let ys=we(0);function Ya(A){A=A|0;var _=0;return _=T,T=T+A|0,T=T+15&-16,_|0}function lm(){return T|0}function $s(A){A=A|0,T=A}function ps(A,_){A=A|0,_=_|0,T=A,O=_}function oc(A,_){A=A|0,_=_|0,le||(le=A,ae=_)}function NC(A){A=A|0,Ue=A}function fI(){return Ue|0}function wI(){var A=0,_=0;ep(8104,8,400)|0,ep(8504,408,540)|0,A=9044,_=A+44|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));s[9088]=0,s[9089]=1,o[2273]=0,o[2274]=948,o[2275]=948,cu(17,8104,U|0)|0}function vl(A){A=A|0,ra(A+948|0)}function sl(A){return A=we(A),((Hw(A)|0)&2147483647)>>>0>2139095040|0}function VA(A,_,S){A=A|0,_=_|0,S=S|0;e:do if(o[A+(_<<3)+4>>2]|0)A=A+(_<<3)|0;else{if((_|2|0)==3&&o[A+60>>2]|0){A=A+56|0;break}switch(_|0){case 0:case 2:case 4:case 5:{if(o[A+52>>2]|0){A=A+48|0;break e}break}default:}if(o[A+68>>2]|0){A=A+64|0;break}else{A=(_|1|0)==5?948:S;break}}while(!1);return A|0}function uf(A){A=A|0;var _=0;return _=qee(1e3)|0,ja(A,(_|0)!=0,2456),o[2276]=(o[2276]|0)+1,ep(_|0,8104,1e3)|0,s[A+2>>0]|0&&(o[_+4>>2]=2,o[_+12>>2]=4),o[_+976>>2]=A,_|0}function ja(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0;H=T,T=T+16|0,F=H,_||(o[F>>2]=S,A2(A,5,3197,F)),T=H}function su(){return uf(956)|0}function ii(A){A=A|0;var _=0;return _=ku(1e3)|0,RC(_,A),ja(o[A+976>>2]|0,1,2456),o[2276]=(o[2276]|0)+1,o[_+944>>2]=0,_|0}function RC(A,_){A=A|0,_=_|0;var S=0;ep(A|0,_|0,948)|0,hS(A+948|0,_+948|0),S=A+960|0,A=_+960|0,_=S+40|0;do o[S>>2]=o[A>>2],S=S+4|0,A=A+4|0;while((S|0)<(_|0))}function Uh(A){A=A|0;var _=0,S=0,F=0,H=0;if(_=A+944|0,S=o[_>>2]|0,S|0&&(Nm(S+948|0,A)|0,o[_>>2]=0),S=yl(A)|0,S|0){_=0;do o[(Qg(A,_)|0)+944>>2]=0,_=_+1|0;while((_|0)!=(S|0))}S=A+948|0,F=o[S>>2]|0,H=A+952|0,_=o[H>>2]|0,(_|0)!=(F|0)&&(o[H>>2]=_+(~((_+-4-F|0)>>>2)<<2)),op(S),$ee(A),o[2276]=(o[2276]|0)+-1}function Nm(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0;F=o[A>>2]|0,Se=A+4|0,S=o[Se>>2]|0,Y=S;e:do if((F|0)==(S|0))H=F,oe=4;else for(A=F;;){if((o[A>>2]|0)==(_|0)){H=A,oe=4;break e}if(A=A+4|0,(A|0)==(S|0)){A=0;break}}while(!1);return(oe|0)==4&&((H|0)!=(S|0)?(F=H+4|0,A=Y-F|0,_=A>>2,_&&(G6(H|0,F|0,A|0)|0,S=o[Se>>2]|0),A=H+(_<<2)|0,(S|0)==(A|0)||(o[Se>>2]=S+(~((S+-4-A|0)>>>2)<<2)),A=1):A=0),A|0}function yl(A){return A=A|0,(o[A+952>>2]|0)-(o[A+948>>2]|0)>>2|0}function Qg(A,_){A=A|0,_=_|0;var S=0;return S=o[A+948>>2]|0,(o[A+952>>2]|0)-S>>2>>>0>_>>>0?A=o[S+(_<<2)>>2]|0:A=0,A|0}function op(A){A=A|0;var _=0,S=0,F=0,H=0;F=T,T=T+32|0,_=F,H=o[A>>2]|0,S=(o[A+4>>2]|0)-H|0,((o[A+8>>2]|0)-H|0)>>>0>S>>>0&&(H=S>>2,An(_,H,H,A+8|0),_1(A,_),p2(_)),T=F}function um(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0;Ct=yl(A)|0;do if(Ct|0){if((o[(Qg(A,0)|0)+944>>2]|0)==(A|0)){if(!(Nm(A+948|0,_)|0))break;ep(_+400|0,8504,540)|0,o[_+944>>2]=0,Di(A);break}oe=o[(o[A+976>>2]|0)+12>>2]|0,Se=A+948|0,Ye=(oe|0)==0,S=0,Y=0;do F=o[(o[Se>>2]|0)+(Y<<2)>>2]|0,(F|0)==(_|0)?Di(A):(H=ii(F)|0,o[(o[Se>>2]|0)+(S<<2)>>2]=H,o[H+944>>2]=A,Ye||mV[oe&15](F,H,A,S),S=S+1|0),Y=Y+1|0;while((Y|0)!=(Ct|0));if(S>>>0>>0){Ye=A+948|0,Se=A+952|0,oe=S,S=o[Se>>2]|0;do Y=(o[Ye>>2]|0)+(oe<<2)|0,F=Y+4|0,H=S-F|0,_=H>>2,_&&(G6(Y|0,F|0,H|0)|0,S=o[Se>>2]|0),H=S,F=Y+(_<<2)|0,(H|0)!=(F|0)&&(S=H+(~((H+-4-F|0)>>>2)<<2)|0,o[Se>>2]=S),oe=oe+1|0;while((oe|0)!=(Ct|0))}}while(!1)}function lh(A){A=A|0;var _=0,S=0,F=0,H=0;Jl(A,(yl(A)|0)==0,2491),Jl(A,(o[A+944>>2]|0)==0,2545),_=A+948|0,S=o[_>>2]|0,F=A+952|0,H=o[F>>2]|0,(H|0)!=(S|0)&&(o[F>>2]=H+(~((H+-4-S|0)>>>2)<<2)),op(_),_=A+976|0,S=o[_>>2]|0,ep(A|0,8104,1e3)|0,s[S+2>>0]|0&&(o[A+4>>2]=2,o[A+12>>2]=4),o[_>>2]=S}function Jl(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0;H=T,T=T+16|0,F=H,_||(o[F>>2]=S,xA(A,5,3197,F)),T=H}function Pp(){return o[2276]|0}function gC(){var A=0;return A=qee(20)|0,fs((A|0)!=0,2592),o[2277]=(o[2277]|0)+1,o[A>>2]=o[239],o[A+4>>2]=o[240],o[A+8>>2]=o[241],o[A+12>>2]=o[242],o[A+16>>2]=o[243],A|0}function fs(A,_){A=A|0,_=_|0;var S=0,F=0;F=T,T=T+16|0,S=F,A||(o[S>>2]=_,xA(0,5,3197,S)),T=F}function go(A){A=A|0,$ee(A),o[2277]=(o[2277]|0)+-1}function Ro(A,_){A=A|0,_=_|0;var S=0;_?(Jl(A,(yl(A)|0)==0,2629),S=1):(S=0,_=0),o[A+964>>2]=_,o[A+988>>2]=S}function ql(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;F=T,T=T+16|0,Y=F+8|0,H=F+4|0,oe=F,o[H>>2]=_,Jl(A,(o[_+944>>2]|0)==0,2709),Jl(A,(o[A+964>>2]|0)==0,2763),Nr(A),_=A+948|0,o[oe>>2]=(o[_>>2]|0)+(S<<2),o[Y>>2]=o[oe>>2],Nn(_,Y,H)|0,o[(o[H>>2]|0)+944>>2]=A,Di(A),T=F}function Nr(A){A=A|0;var _=0,S=0,F=0,H=0,Y=0,oe=0,Se=0;if(S=yl(A)|0,S|0&&(o[(Qg(A,0)|0)+944>>2]|0)!=(A|0)){F=o[(o[A+976>>2]|0)+12>>2]|0,H=A+948|0,Y=(F|0)==0,_=0;do oe=o[(o[H>>2]|0)+(_<<2)>>2]|0,Se=ii(oe)|0,o[(o[H>>2]|0)+(_<<2)>>2]=Se,o[Se+944>>2]=A,Y||mV[F&15](oe,Se,A,_),_=_+1|0;while((_|0)!=(S|0))}}function Nn(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0,Is=0,ji=0,Ei=0,yo=0,to=0;yo=T,T=T+64|0,Ut=yo+52|0,Se=yo+48|0,cn=yo+28|0,Is=yo+24|0,ji=yo+20|0,Ei=yo,F=o[A>>2]|0,Y=F,_=F+((o[_>>2]|0)-Y>>2<<2)|0,F=A+4|0,H=o[F>>2]|0,oe=A+8|0;do if(H>>>0<(o[oe>>2]|0)>>>0){if((_|0)==(H|0)){o[_>>2]=o[S>>2],o[F>>2]=(o[F>>2]|0)+4;break}qh(A,_,H,_+4|0),_>>>0<=S>>>0&&(S=(o[F>>2]|0)>>>0>S>>>0?S+4|0:S),o[_>>2]=o[S>>2]}else{F=(H-Y>>2)+1|0,H=at(A)|0,H>>>0>>0&&DI(A),At=o[A>>2]|0,Ct=(o[oe>>2]|0)-At|0,Y=Ct>>1,An(Ei,Ct>>2>>>0>>1>>>0?Y>>>0>>0?F:Y:H,_-At>>2,A+8|0),At=Ei+8|0,F=o[At>>2]|0,Y=Ei+12|0,Ct=o[Y>>2]|0,oe=Ct,Ye=F;do if((F|0)==(Ct|0)){if(Ct=Ei+4|0,F=o[Ct>>2]|0,to=o[Ei>>2]|0,H=to,F>>>0<=to>>>0){F=oe-H>>1,F=F|0?F:1,An(cn,F,F>>>2,o[Ei+16>>2]|0),o[Is>>2]=o[Ct>>2],o[ji>>2]=o[At>>2],o[Se>>2]=o[Is>>2],o[Ut>>2]=o[ji>>2],Yw(cn,Se,Ut),F=o[Ei>>2]|0,o[Ei>>2]=o[cn>>2],o[cn>>2]=F,F=cn+4|0,to=o[Ct>>2]|0,o[Ct>>2]=o[F>>2],o[F>>2]=to,F=cn+8|0,to=o[At>>2]|0,o[At>>2]=o[F>>2],o[F>>2]=to,F=cn+12|0,to=o[Y>>2]|0,o[Y>>2]=o[F>>2],o[F>>2]=to,p2(cn),F=o[At>>2]|0;break}Y=F,oe=((Y-H>>2)+1|0)/-2|0,Se=F+(oe<<2)|0,H=Ye-Y|0,Y=H>>2,Y&&(G6(Se|0,F|0,H|0)|0,F=o[Ct>>2]|0),to=Se+(Y<<2)|0,o[At>>2]=to,o[Ct>>2]=F+(oe<<2),F=to}while(!1);o[F>>2]=o[S>>2],o[At>>2]=(o[At>>2]|0)+4,_=pp(A,Ei,_)|0,p2(Ei)}while(!1);return T=yo,_|0}function Di(A){A=A|0;var _=0;do{if(_=A+984|0,s[_>>0]|0)break;s[_>>0]=1,m[A+504>>2]=we(pe),A=o[A+944>>2]|0}while(A|0)}function ra(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-4-F|0)>>>2)<<2)),La(S))}function Us(A){return A=A|0,o[A+944>>2]|0}function Li(A){A=A|0,Jl(A,(o[A+964>>2]|0)!=0,2832),Di(A)}function Ll(A){return A=A|0,(s[A+984>>0]|0)!=0|0}function DA(A,_){A=A|0,_=_|0,ete(A,_,400)|0&&(ep(A|0,_|0,400)|0,Di(A))}function Rd(A){A=A|0;var _=ys;return _=we(m[A+44>>2]),A=sl(_)|0,we(A?we(0):_)}function PI(A){A=A|0;var _=ys;return _=we(m[A+48>>2]),sl(_)|0&&(_=s[(o[A+976>>2]|0)+2>>0]|0?we(1):we(0)),we(_)}function fl(A,_){A=A|0,_=_|0,o[A+980>>2]=_}function Hm(A){return A=A|0,o[A+980>>2]|0}function I1(A,_){A=A|0,_=_|0;var S=0;S=A+4|0,(o[S>>2]|0)!=(_|0)&&(o[S>>2]=_,Di(A))}function Iv(A){return A=A|0,o[A+4>>2]|0}function tA(A,_){A=A|0,_=_|0;var S=0;S=A+8|0,(o[S>>2]|0)!=(_|0)&&(o[S>>2]=_,Di(A))}function Rm(A){return A=A|0,o[A+8>>2]|0}function uh(A,_){A=A|0,_=_|0;var S=0;S=A+12|0,(o[S>>2]|0)!=(_|0)&&(o[S>>2]=_,Di(A))}function Qy(A){return A=A|0,o[A+12>>2]|0}function Sp(A,_){A=A|0,_=_|0;var S=0;S=A+16|0,(o[S>>2]|0)!=(_|0)&&(o[S>>2]=_,Di(A))}function rA(A){return A=A|0,o[A+16>>2]|0}function D0(A,_){A=A|0,_=_|0;var S=0;S=A+20|0,(o[S>>2]|0)!=(_|0)&&(o[S>>2]=_,Di(A))}function yh(A){return A=A|0,o[A+20>>2]|0}function uy(A,_){A=A|0,_=_|0;var S=0;S=A+24|0,(o[S>>2]|0)!=(_|0)&&(o[S>>2]=_,Di(A))}function uc(A){return A=A|0,o[A+24>>2]|0}function E_(A,_){A=A|0,_=_|0;var S=0;S=A+28|0,(o[S>>2]|0)!=(_|0)&&(o[S>>2]=_,Di(A))}function Tb(A){return A=A|0,o[A+28>>2]|0}function gm(A,_){A=A|0,_=_|0;var S=0;S=A+32|0,(o[S>>2]|0)!=(_|0)&&(o[S>>2]=_,Di(A))}function gh(A){return A=A|0,o[A+32>>2]|0}function fg(A,_){A=A|0,_=_|0;var S=0;S=A+36|0,(o[S>>2]|0)!=(_|0)&&(o[S>>2]=_,Di(A))}function Am(A){return A=A|0,o[A+36>>2]|0}function Nb(A,_){A=A|0,_=we(_);var S=0;S=A+40|0,we(m[S>>2])!=_&&(m[S>>2]=_,Di(A))}function Dm(A,_){A=A|0,_=we(_);var S=0;S=A+44|0,we(m[S>>2])!=_&&(m[S>>2]=_,Di(A))}function OI(A,_){A=A|0,_=we(_);var S=0;S=A+48|0,we(m[S>>2])!=_&&(m[S>>2]=_,Di(A))}function Bf(A,_){A=A|0,_=we(_);var S=0,F=0,H=0,Y=0;Y=sl(_)|0,S=(Y^1)&1,F=A+52|0,H=A+56|0,Y|we(m[F>>2])==_&&(o[H>>2]|0)==(S|0)||(m[F>>2]=_,o[H>>2]=S,Di(A))}function tI(A,_){A=A|0,_=we(_);var S=0,F=0;F=A+52|0,S=A+56|0,we(m[F>>2])==_&&(o[S>>2]|0)==2||(m[F>>2]=_,F=sl(_)|0,o[S>>2]=F?3:2,Di(A))}function Lf(A,_){A=A|0,_=_|0;var S=0,F=0;F=_+52|0,S=o[F+4>>2]|0,_=A,o[_>>2]=o[F>>2],o[_+4>>2]=S}function yE(A,_,S){A=A|0,_=_|0,S=we(S);var F=0,H=0,Y=0;Y=sl(S)|0,F=(Y^1)&1,H=A+132+(_<<3)|0,_=A+132+(_<<3)+4|0,Y|we(m[H>>2])==S&&(o[_>>2]|0)==(F|0)||(m[H>>2]=S,o[_>>2]=F,Di(A))}function gy(A,_,S){A=A|0,_=_|0,S=we(S);var F=0,H=0,Y=0;Y=sl(S)|0,F=Y?0:2,H=A+132+(_<<3)|0,_=A+132+(_<<3)+4|0,Y|we(m[H>>2])==S&&(o[_>>2]|0)==(F|0)||(m[H>>2]=S,o[_>>2]=F,Di(A))}function ie(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=_+132+(S<<3)|0,_=o[F+4>>2]|0,S=A,o[S>>2]=o[F>>2],o[S+4>>2]=_}function w(A,_,S){A=A|0,_=_|0,S=we(S);var F=0,H=0,Y=0;Y=sl(S)|0,F=(Y^1)&1,H=A+60+(_<<3)|0,_=A+60+(_<<3)+4|0,Y|we(m[H>>2])==S&&(o[_>>2]|0)==(F|0)||(m[H>>2]=S,o[_>>2]=F,Di(A))}function J(A,_,S){A=A|0,_=_|0,S=we(S);var F=0,H=0,Y=0;Y=sl(S)|0,F=Y?0:2,H=A+60+(_<<3)|0,_=A+60+(_<<3)+4|0,Y|we(m[H>>2])==S&&(o[_>>2]|0)==(F|0)||(m[H>>2]=S,o[_>>2]=F,Di(A))}function ye(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=_+60+(S<<3)|0,_=o[F+4>>2]|0,S=A,o[S>>2]=o[F>>2],o[S+4>>2]=_}function ut(A,_){A=A|0,_=_|0;var S=0;S=A+60+(_<<3)+4|0,(o[S>>2]|0)!=3&&(m[A+60+(_<<3)>>2]=we(pe),o[S>>2]=3,Di(A))}function zt(A,_,S){A=A|0,_=_|0,S=we(S);var F=0,H=0,Y=0;Y=sl(S)|0,F=(Y^1)&1,H=A+204+(_<<3)|0,_=A+204+(_<<3)+4|0,Y|we(m[H>>2])==S&&(o[_>>2]|0)==(F|0)||(m[H>>2]=S,o[_>>2]=F,Di(A))}function Zr(A,_,S){A=A|0,_=_|0,S=we(S);var F=0,H=0,Y=0;Y=sl(S)|0,F=Y?0:2,H=A+204+(_<<3)|0,_=A+204+(_<<3)+4|0,Y|we(m[H>>2])==S&&(o[_>>2]|0)==(F|0)||(m[H>>2]=S,o[_>>2]=F,Di(A))}function wr(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=_+204+(S<<3)|0,_=o[F+4>>2]|0,S=A,o[S>>2]=o[F>>2],o[S+4>>2]=_}function Hn(A,_,S){A=A|0,_=_|0,S=we(S);var F=0,H=0,Y=0;Y=sl(S)|0,F=(Y^1)&1,H=A+276+(_<<3)|0,_=A+276+(_<<3)+4|0,Y|we(m[H>>2])==S&&(o[_>>2]|0)==(F|0)||(m[H>>2]=S,o[_>>2]=F,Di(A))}function Dn(A,_){return A=A|0,_=_|0,we(m[A+276+(_<<3)>>2])}function Wo(A,_){A=A|0,_=we(_);var S=0,F=0,H=0,Y=0;Y=sl(_)|0,S=(Y^1)&1,F=A+348|0,H=A+352|0,Y|we(m[F>>2])==_&&(o[H>>2]|0)==(S|0)||(m[F>>2]=_,o[H>>2]=S,Di(A))}function Ic(A,_){A=A|0,_=we(_);var S=0,F=0;F=A+348|0,S=A+352|0,we(m[F>>2])==_&&(o[S>>2]|0)==2||(m[F>>2]=_,F=sl(_)|0,o[S>>2]=F?3:2,Di(A))}function Jc(A){A=A|0;var _=0;_=A+352|0,(o[_>>2]|0)!=3&&(m[A+348>>2]=we(pe),o[_>>2]=3,Di(A))}function Mo(A,_){A=A|0,_=_|0;var S=0,F=0;F=_+348|0,S=o[F+4>>2]|0,_=A,o[_>>2]=o[F>>2],o[_+4>>2]=S}function bu(A,_){A=A|0,_=we(_);var S=0,F=0,H=0,Y=0;Y=sl(_)|0,S=(Y^1)&1,F=A+356|0,H=A+360|0,Y|we(m[F>>2])==_&&(o[H>>2]|0)==(S|0)||(m[F>>2]=_,o[H>>2]=S,Di(A))}function ap(A,_){A=A|0,_=we(_);var S=0,F=0;F=A+356|0,S=A+360|0,we(m[F>>2])==_&&(o[S>>2]|0)==2||(m[F>>2]=_,F=sl(_)|0,o[S>>2]=F?3:2,Di(A))}function uA(A){A=A|0;var _=0;_=A+360|0,(o[_>>2]|0)!=3&&(m[A+356>>2]=we(pe),o[_>>2]=3,Di(A))}function rI(A,_){A=A|0,_=_|0;var S=0,F=0;F=_+356|0,S=o[F+4>>2]|0,_=A,o[_>>2]=o[F>>2],o[_+4>>2]=S}function jd(A,_){A=A|0,_=we(_);var S=0,F=0,H=0,Y=0;Y=sl(_)|0,S=(Y^1)&1,F=A+364|0,H=A+368|0,Y|we(m[F>>2])==_&&(o[H>>2]|0)==(S|0)||(m[F>>2]=_,o[H>>2]=S,Di(A))}function x0(A,_){A=A|0,_=we(_);var S=0,F=0,H=0,Y=0;Y=sl(_)|0,S=Y?0:2,F=A+364|0,H=A+368|0,Y|we(m[F>>2])==_&&(o[H>>2]|0)==(S|0)||(m[F>>2]=_,o[H>>2]=S,Di(A))}function ha(A,_){A=A|0,_=_|0;var S=0,F=0;F=_+364|0,S=o[F+4>>2]|0,_=A,o[_>>2]=o[F>>2],o[_+4>>2]=S}function hd(A,_){A=A|0,_=we(_);var S=0,F=0,H=0,Y=0;Y=sl(_)|0,S=(Y^1)&1,F=A+372|0,H=A+376|0,Y|we(m[F>>2])==_&&(o[H>>2]|0)==(S|0)||(m[F>>2]=_,o[H>>2]=S,Di(A))}function II(A,_){A=A|0,_=we(_);var S=0,F=0,H=0,Y=0;Y=sl(_)|0,S=Y?0:2,F=A+372|0,H=A+376|0,Y|we(m[F>>2])==_&&(o[H>>2]|0)==(S|0)||(m[F>>2]=_,o[H>>2]=S,Di(A))}function vf(A,_){A=A|0,_=_|0;var S=0,F=0;F=_+372|0,S=o[F+4>>2]|0,_=A,o[_>>2]=o[F>>2],o[_+4>>2]=S}function Kh(A,_){A=A|0,_=we(_);var S=0,F=0,H=0,Y=0;Y=sl(_)|0,S=(Y^1)&1,F=A+380|0,H=A+384|0,Y|we(m[F>>2])==_&&(o[H>>2]|0)==(S|0)||(m[F>>2]=_,o[H>>2]=S,Di(A))}function Ym(A,_){A=A|0,_=we(_);var S=0,F=0,H=0,Y=0;Y=sl(_)|0,S=Y?0:2,F=A+380|0,H=A+384|0,Y|we(m[F>>2])==_&&(o[H>>2]|0)==(S|0)||(m[F>>2]=_,o[H>>2]=S,Di(A))}function CS(A,_){A=A|0,_=_|0;var S=0,F=0;F=_+380|0,S=o[F+4>>2]|0,_=A,o[_>>2]=o[F>>2],o[_+4>>2]=S}function mS(A,_){A=A|0,_=we(_);var S=0,F=0,H=0,Y=0;Y=sl(_)|0,S=(Y^1)&1,F=A+388|0,H=A+392|0,Y|we(m[F>>2])==_&&(o[H>>2]|0)==(S|0)||(m[F>>2]=_,o[H>>2]=S,Di(A))}function bE(A,_){A=A|0,_=we(_);var S=0,F=0,H=0,Y=0;Y=sl(_)|0,S=Y?0:2,F=A+388|0,H=A+392|0,Y|we(m[F>>2])==_&&(o[H>>2]|0)==(S|0)||(m[F>>2]=_,o[H>>2]=S,Di(A))}function k0(A,_){A=A|0,_=_|0;var S=0,F=0;F=_+388|0,S=o[F+4>>2]|0,_=A,o[_>>2]=o[F>>2],o[_+4>>2]=S}function EE(A,_){A=A|0,_=we(_);var S=0;S=A+396|0,we(m[S>>2])!=_&&(m[S>>2]=_,Di(A))}function hB(A){return A=A|0,we(m[A+396>>2])}function U_(A){return A=A|0,we(m[A+400>>2])}function bh(A){return A=A|0,we(m[A+404>>2])}function K_(A){return A=A|0,we(m[A+408>>2])}function $l(A){return A=A|0,we(m[A+412>>2])}function DC(A){return A=A|0,we(m[A+416>>2])}function jl(A){return A=A|0,we(m[A+420>>2])}function cp(A,_){switch(A=A|0,_=_|0,Jl(A,(_|0)<6,2918),_|0){case 0:{_=(o[A+496>>2]|0)==2?5:4;break}case 2:{_=(o[A+496>>2]|0)==2?4:5;break}default:}return we(m[A+424+(_<<2)>>2])}function gg(A,_){switch(A=A|0,_=_|0,Jl(A,(_|0)<6,2918),_|0){case 0:{_=(o[A+496>>2]|0)==2?5:4;break}case 2:{_=(o[A+496>>2]|0)==2?4:5;break}default:}return we(m[A+448+(_<<2)>>2])}function Xm(A,_){switch(A=A|0,_=_|0,Jl(A,(_|0)<6,2918),_|0){case 0:{_=(o[A+496>>2]|0)==2?5:4;break}case 2:{_=(o[A+496>>2]|0)==2?4:5;break}default:}return we(m[A+472+(_<<2)>>2])}function Rb(A,_){A=A|0,_=_|0;var S=0,F=ys;return S=o[A+4>>2]|0,(S|0)==(o[_+4>>2]|0)?S?(F=we(m[A>>2]),A=we(Xe(we(F-we(m[_>>2]))))>2]=0,o[F+4>>2]=0,o[F+8>>2]=0,Nd(F|0,A|0,_|0,0),xA(A,3,(s[F+11>>0]|0)<0?o[F>>2]|0:F,S),Rhe(F),T=S}function HC(A,_,S,F){A=we(A),_=we(_),S=S|0,F=F|0;var H=ys;A=we(A*_),H=we(c4(A,we(1)));do if(nA(H,we(0))|0)A=we(A-H);else{if(A=we(A-H),nA(H,we(1))|0){A=we(A+we(1));break}if(S){A=we(A+we(1));break}F||(H>we(.5)?H=we(1):(F=nA(H,we(.5))|0,H=we(F?1:0)),A=we(A+H))}while(!1);return we(A/_)}function TI(A,_,S,F,H,Y,oe,Se,Ye,Ct,At,Ut,cn){A=A|0,_=we(_),S=S|0,F=we(F),H=H|0,Y=we(Y),oe=oe|0,Se=we(Se),Ye=we(Ye),Ct=we(Ct),At=we(At),Ut=we(Ut),cn=cn|0;var Is=0,ji=ys,Ei=ys,yo=ys,to=ys,aa=ys,as=ys;return Ye>2]),ji!=we(0))?(yo=we(HC(_,ji,0,0)),to=we(HC(F,ji,0,0)),Ei=we(HC(Y,ji,0,0)),ji=we(HC(Se,ji,0,0))):(Ei=Y,yo=_,ji=Se,to=F),(H|0)==(A|0)?Is=nA(Ei,yo)|0:Is=0,(oe|0)==(S|0)?cn=nA(ji,to)|0:cn=0,!Is&&(aa=we(_-At),!(Fi(A,aa,Ye)|0))&&!(Zo(A,aa,H,Ye)|0)?Is=rs(A,aa,H,Y,Ye)|0:Is=1,!cn&&(as=we(F-Ut),!(Fi(S,as,Ct)|0))&&!(Zo(S,as,oe,Ct)|0)?cn=rs(S,as,oe,Se,Ct)|0:cn=1,cn=Is&cn),cn|0}function Fi(A,_,S){return A=A|0,_=we(_),S=we(S),(A|0)==1?A=nA(_,S)|0:A=0,A|0}function Zo(A,_,S,F){return A=A|0,_=we(_),S=S|0,F=we(F),(A|0)==2&(S|0)==0?_>=F?A=1:A=nA(_,F)|0:A=0,A|0}function rs(A,_,S,F,H){return A=A|0,_=we(_),S=S|0,F=we(F),H=we(H),(A|0)==2&(S|0)==2&F>_?H<=_?A=1:A=nA(_,H)|0:A=0,A|0}function Sc(A,_,S,F,H,Y,oe,Se,Ye,Ct,At){A=A|0,_=we(_),S=we(S),F=F|0,H=H|0,Y=Y|0,oe=we(oe),Se=we(Se),Ye=Ye|0,Ct=Ct|0,At=At|0;var Ut=0,cn=0,Is=0,ji=0,Ei=ys,yo=ys,to=0,aa=0,as=0,hs=0,wl=0,sd=0,Nu=0,rg=0,tp=0,Wg=0,Wu=0,hl=ys,Cf=ys,ru=ys,fo=0,_A=0;Wu=T,T=T+160|0,rg=Wu+152|0,Nu=Wu+120|0,sd=Wu+104|0,as=Wu+72|0,ji=Wu+56|0,wl=Wu+8|0,aa=Wu,hs=(o[2279]|0)+1|0,o[2279]=hs,tp=A+984|0,s[tp>>0]|0&&(o[A+512>>2]|0)!=(o[2278]|0)?to=4:(o[A+516>>2]|0)==(F|0)?Wg=0:to=4,(to|0)==4&&(o[A+520>>2]=0,o[A+924>>2]=-1,o[A+928>>2]=-1,m[A+932>>2]=we(-1),m[A+936>>2]=we(-1),Wg=1);e:do if(o[A+964>>2]|0)if(Ei=we(Ml(A,2,oe)),yo=we(Ml(A,0,oe)),Ut=A+916|0,ru=we(m[Ut>>2]),Cf=we(m[A+920>>2]),hl=we(m[A+932>>2]),TI(H,_,Y,S,o[A+924>>2]|0,ru,o[A+928>>2]|0,Cf,hl,we(m[A+936>>2]),Ei,yo,At)|0)to=22;else if(Is=o[A+520>>2]|0,!Is)to=21;else for(cn=0;;){if(Ut=A+524+(cn*24|0)|0,hl=we(m[Ut>>2]),Cf=we(m[A+524+(cn*24|0)+4>>2]),ru=we(m[A+524+(cn*24|0)+16>>2]),TI(H,_,Y,S,o[A+524+(cn*24|0)+8>>2]|0,hl,o[A+524+(cn*24|0)+12>>2]|0,Cf,ru,we(m[A+524+(cn*24|0)+20>>2]),Ei,yo,At)|0){to=22;break e}if(cn=cn+1|0,cn>>>0>=Is>>>0){to=21;break}}else{if(Ye){if(Ut=A+916|0,!(nA(we(m[Ut>>2]),_)|0)){to=21;break}if(!(nA(we(m[A+920>>2]),S)|0)){to=21;break}if((o[A+924>>2]|0)!=(H|0)){to=21;break}Ut=(o[A+928>>2]|0)==(Y|0)?Ut:0,to=22;break}if(Is=o[A+520>>2]|0,!Is)to=21;else for(cn=0;;){if(Ut=A+524+(cn*24|0)|0,nA(we(m[Ut>>2]),_)|0&&nA(we(m[A+524+(cn*24|0)+4>>2]),S)|0&&(o[A+524+(cn*24|0)+8>>2]|0)==(H|0)&&(o[A+524+(cn*24|0)+12>>2]|0)==(Y|0)){to=22;break e}if(cn=cn+1|0,cn>>>0>=Is>>>0){to=21;break}}}while(!1);do if((to|0)==21)s[11697]|0?(Ut=0,to=28):(Ut=0,to=31);else if((to|0)==22){if(cn=(s[11697]|0)!=0,!((Ut|0)!=0&(Wg^1)))if(cn){to=28;break}else{to=31;break}ji=Ut+16|0,o[A+908>>2]=o[ji>>2],Is=Ut+20|0,o[A+912>>2]=o[Is>>2],(s[11698]|0)==0|cn^1||(o[aa>>2]=Vf(hs)|0,o[aa+4>>2]=hs,xA(A,4,2972,aa),cn=o[A+972>>2]|0,cn|0&&CV[cn&127](A),H=zd(H,Ye)|0,Y=zd(Y,Ye)|0,_A=+we(m[ji>>2]),fo=+we(m[Is>>2]),o[wl>>2]=H,o[wl+4>>2]=Y,y[wl+8>>3]=+_,y[wl+16>>3]=+S,y[wl+24>>3]=_A,y[wl+32>>3]=fo,o[wl+40>>2]=Ct,xA(A,4,2989,wl))}while(!1);return(to|0)==28&&(cn=Vf(hs)|0,o[ji>>2]=cn,o[ji+4>>2]=hs,o[ji+8>>2]=Wg?3047:11699,xA(A,4,3038,ji),cn=o[A+972>>2]|0,cn|0&&CV[cn&127](A),wl=zd(H,Ye)|0,to=zd(Y,Ye)|0,o[as>>2]=wl,o[as+4>>2]=to,y[as+8>>3]=+_,y[as+16>>3]=+S,o[as+24>>2]=Ct,xA(A,4,3049,as),to=31),(to|0)==31&&(Eh(A,_,S,F,H,Y,oe,Se,Ye,At),s[11697]|0&&(cn=o[2279]|0,wl=Vf(cn)|0,o[sd>>2]=wl,o[sd+4>>2]=cn,o[sd+8>>2]=Wg?3047:11699,xA(A,4,3083,sd),cn=o[A+972>>2]|0,cn|0&&CV[cn&127](A),wl=zd(H,Ye)|0,sd=zd(Y,Ye)|0,fo=+we(m[A+908>>2]),_A=+we(m[A+912>>2]),o[Nu>>2]=wl,o[Nu+4>>2]=sd,y[Nu+8>>3]=fo,y[Nu+16>>3]=_A,o[Nu+24>>2]=Ct,xA(A,4,3092,Nu)),o[A+516>>2]=F,Ut||(cn=A+520|0,Ut=o[cn>>2]|0,(Ut|0)==16&&(s[11697]|0&&xA(A,4,3124,rg),o[cn>>2]=0,Ut=0),Ye?Ut=A+916|0:(o[cn>>2]=Ut+1,Ut=A+524+(Ut*24|0)|0),m[Ut>>2]=_,m[Ut+4>>2]=S,o[Ut+8>>2]=H,o[Ut+12>>2]=Y,o[Ut+16>>2]=o[A+908>>2],o[Ut+20>>2]=o[A+912>>2],Ut=0)),Ye&&(o[A+416>>2]=o[A+908>>2],o[A+420>>2]=o[A+912>>2],s[A+985>>0]=1,s[tp>>0]=0),o[2279]=(o[2279]|0)+-1,o[A+512>>2]=o[2278],T=Wu,Wg|(Ut|0)==0|0}function Ml(A,_,S){A=A|0,_=_|0,S=we(S);var F=ys;return F=we($t(A,_,S)),we(F+we(Wr(A,_,S)))}function xA(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0;Y=T,T=T+16|0,H=Y,o[H>>2]=F,A?F=o[A+976>>2]|0:F=0,vE(F,A,_,S,H),T=Y}function Vf(A){return A=A|0,(A>>>0>60?3201:3201+(60-A)|0)|0}function zd(A,_){A=A|0,_=_|0;var S=0,F=0,H=0;return H=T,T=T+32|0,S=H+12|0,F=H,o[S>>2]=o[254],o[S+4>>2]=o[255],o[S+8>>2]=o[256],o[F>>2]=o[257],o[F+4>>2]=o[258],o[F+8>>2]=o[259],(A|0)>2?A=11699:A=o[(_?F:S)+(A<<2)>>2]|0,T=H,A|0}function Eh(A,_,S,F,H,Y,oe,Se,Ye,Ct){A=A|0,_=we(_),S=we(S),F=F|0,H=H|0,Y=Y|0,oe=we(oe),Se=we(Se),Ye=Ye|0,Ct=Ct|0;var At=0,Ut=0,cn=0,Is=0,ji=ys,Ei=ys,yo=ys,to=ys,aa=ys,as=ys,hs=ys,wl=0,sd=0,Nu=0,rg=ys,tp=ys,Wg=0,Wu=ys,hl=0,Cf=0,ru=0,fo=0,_A=0,lu=0,qS=0,W1=0,hV=0,ZC=0,PA=0,Id=0,tP=0,nD=0,mf=0,Mb=0,GB=0,Qx=0,ro=ys,vN=ys,Mx=ys,Hx=ys,fh=ys,rp=0,tf=0,k_=0,$S=0,kG=0,sT=ys,SN=ys,rP=ys,GG=ys,PE=ys,Hb=ys,Yx=0,hc=ys,Dp=ys,Zv=ys,Xf=ys,X0=ys,GZ=ys,FZ=0,FB=0,iD=ys,P1=ys,FG=0,nP=0,G_=0,_V=0,Bd=ys,iC=0,Z2=0,ab=0,ew=0,js=0,bl=0,hp=0,Ec=ys,XI=0,Pf=0;hp=T,T=T+16|0,rp=hp+12|0,tf=hp+8|0,k_=hp+4|0,$S=hp,Jl(A,(H|0)==0|(sl(_)|0)^1,3326),Jl(A,(Y|0)==0|(sl(S)|0)^1,3406),Z2=So(A,F)|0,o[A+496>>2]=Z2,js=Ig(2,Z2)|0,bl=Ig(0,Z2)|0,m[A+440>>2]=we($t(A,js,oe)),m[A+444>>2]=we(Wr(A,js,oe)),m[A+428>>2]=we($t(A,bl,oe)),m[A+436>>2]=we(Wr(A,bl,oe)),m[A+464>>2]=we(hg(A,js)),m[A+468>>2]=we(Af(A,js)),m[A+452>>2]=we(hg(A,bl)),m[A+460>>2]=we(Af(A,bl)),m[A+488>>2]=we(nI(A,js,oe)),m[A+492>>2]=we(AC(A,js,oe)),m[A+476>>2]=we(nI(A,bl,oe)),m[A+484>>2]=we(AC(A,bl,oe));do if(o[A+964>>2]|0)Db(A,_,S,H,Y,oe,Se);else{if(ab=A+948|0,ew=(o[A+952>>2]|0)-(o[ab>>2]|0)>>2,!ew){qT(A,_,S,H,Y,oe,Se);break}if(!Ye&&mv(A,_,S,H,Y,oe,Se)|0)break;Nr(A),Mb=A+508|0,s[Mb>>0]=0,js=Ig(o[A+4>>2]|0,Z2)|0,bl=Ow(js,Z2)|0,iC=vn(js)|0,GB=o[A+8>>2]|0,nP=A+28|0,Qx=(o[nP>>2]|0)!=0,X0=iC?oe:Se,iD=iC?Se:oe,ro=we(Hy(A,js,oe)),vN=we(m1(A,js,oe)),ji=we(Hy(A,bl,oe)),GZ=we(j_(A,js,oe)),P1=we(j_(A,bl,oe)),Nu=iC?H:Y,FG=iC?Y:H,Bd=iC?GZ:P1,aa=iC?P1:GZ,Xf=we(Ml(A,2,oe)),to=we(Ml(A,0,oe)),Ei=we(we(Qi(A+364|0,oe))-Bd),yo=we(we(Qi(A+380|0,oe))-Bd),as=we(we(Qi(A+372|0,Se))-aa),hs=we(we(Qi(A+388|0,Se))-aa),Mx=iC?Ei:as,Hx=iC?yo:hs,Xf=we(_-Xf),_=we(Xf-Bd),sl(_)|0?Bd=_:Bd=we(hA(we(KS(_,yo)),Ei)),Dp=we(S-to),_=we(Dp-aa),sl(_)|0?Zv=_:Zv=we(hA(we(KS(_,hs)),as)),Ei=iC?Bd:Zv,hc=iC?Zv:Bd;e:do if((Nu|0)==1)for(F=0,Ut=0;;){if(At=Qg(A,Ut)|0,!F)we(zp(At))>we(0)&&we(py(At))>we(0)?F=At:F=0;else if(Qw(At)|0){Is=0;break e}if(Ut=Ut+1|0,Ut>>>0>=ew>>>0){Is=F;break}}else Is=0;while(!1);wl=Is+500|0,sd=Is+504|0,F=0,At=0,_=we(0),cn=0;do{if(Ut=o[(o[ab>>2]|0)+(cn<<2)>>2]|0,(o[Ut+36>>2]|0)==1)d2(Ut),s[Ut+985>>0]=1,s[Ut+984>>0]=0;else{Ay(Ut),Ye&&dy(Ut,So(Ut,Z2)|0,Ei,hc,Bd);do if((o[Ut+24>>2]|0)!=1)if((Ut|0)==(Is|0)){o[wl>>2]=o[2278],m[sd>>2]=we(0);break}else{QI(A,Ut,Bd,H,Zv,Bd,Zv,Y,Z2,Ct);break}else At|0&&(o[At+960>>2]=Ut),o[Ut+960>>2]=0,At=Ut,F=F|0?F:Ut;while(!1);Hb=we(m[Ut+504>>2]),_=we(_+we(Hb+we(Ml(Ut,js,Bd))))}cn=cn+1|0}while((cn|0)!=(ew|0));for(ru=_>Ei,Yx=Qx&((Nu|0)==2&ru)?1:Nu,hl=(FG|0)==1,_A=hl&(Ye^1),lu=(Yx|0)==1,qS=(Yx|0)==2,W1=976+(js<<2)|0,hV=(FG|2|0)==2,nD=hl&(Qx^1),ZC=1040+(bl<<2)|0,PA=1040+(js<<2)|0,Id=976+(bl<<2)|0,tP=(FG|0)!=1,ru=Qx&((Nu|0)!=0&ru),Cf=A+976|0,hl=hl^1,_=Ei,Wg=0,fo=0,Hb=we(0),fh=we(0);;){e:do if(Wg>>>0>>0)for(sd=o[ab>>2]|0,cn=0,hs=we(0),as=we(0),yo=we(0),Ei=we(0),Ut=0,At=0,Is=Wg;;){if(wl=o[sd+(Is<<2)>>2]|0,(o[wl+36>>2]|0)!=1&&(o[wl+940>>2]=fo,(o[wl+24>>2]|0)!=1)){if(to=we(Ml(wl,js,Bd)),mf=o[W1>>2]|0,S=we(Qi(wl+380+(mf<<3)|0,X0)),aa=we(m[wl+504>>2]),S=we(KS(S,aa)),S=we(hA(we(Qi(wl+364+(mf<<3)|0,X0)),S)),Qx&(cn|0)!=0&we(to+we(as+S))>_){Y=cn,to=hs,Nu=Is;break e}to=we(to+S),S=we(as+to),to=we(hs+to),Qw(wl)|0&&(yo=we(yo+we(zp(wl))),Ei=we(Ei-we(aa*we(py(wl))))),At|0&&(o[At+960>>2]=wl),o[wl+960>>2]=0,cn=cn+1|0,At=wl,Ut=Ut|0?Ut:wl}else to=hs,S=as;if(Is=Is+1|0,Is>>>0>>0)hs=to,as=S;else{Y=cn,Nu=Is;break}}else Y=0,to=we(0),yo=we(0),Ei=we(0),Ut=0,Nu=Wg;while(!1);mf=yo>we(0)&yowe(0)&EiHx&((sl(Hx)|0)^1))_=Hx,mf=51;else if(s[(o[Cf>>2]|0)+3>>0]|0)mf=51;else{if(rg!=we(0)&&we(zp(A))!=we(0)){mf=53;break}_=to,mf=53}while(!1);if((mf|0)==51&&(mf=0,sl(_)|0?mf=53:(tp=we(_-to),Wu=_)),(mf|0)==53&&(mf=0,to>2]|0,Is=tpwe(0),as=we(tp/rg),yo=we(0),to=we(0),_=we(0),At=Ut;do S=we(Qi(At+380+(cn<<3)|0,X0)),Ei=we(Qi(At+364+(cn<<3)|0,X0)),Ei=we(KS(S,we(hA(Ei,we(m[At+504>>2]))))),Is?(S=we(Ei*we(py(At))),S!=we(-0)&&(Ec=we(Ei-we(aa*S)),sT=we(gA(At,js,Ec,Wu,Bd)),Ec!=sT)&&(yo=we(yo-we(sT-Ei)),_=we(_+S))):wl&&(SN=we(zp(At)),SN!=we(0))&&(Ec=we(Ei+we(as*SN)),rP=we(gA(At,js,Ec,Wu,Bd)),Ec!=rP)&&(yo=we(yo-we(rP-Ei)),to=we(to-SN)),At=o[At+960>>2]|0;while(At|0);if(_=we(hs+_),Ei=we(tp+yo),kG)_=we(0);else{aa=we(rg+to),Is=o[W1>>2]|0,wl=Eiwe(0),aa=we(Ei/aa),_=we(0);do{Ec=we(Qi(Ut+380+(Is<<3)|0,X0)),yo=we(Qi(Ut+364+(Is<<3)|0,X0)),yo=we(KS(Ec,we(hA(yo,we(m[Ut+504>>2]))))),wl?(Ec=we(yo*we(py(Ut))),Ei=we(-Ec),Ec!=we(-0)?(Ec=we(as*Ei),Ei=we(gA(Ut,js,we(yo+(sd?Ei:Ec)),Wu,Bd))):Ei=yo):cn&&(GG=we(zp(Ut)),GG!=we(0))?Ei=we(gA(Ut,js,we(yo+we(aa*GG)),Wu,Bd)):Ei=yo,_=we(_-we(Ei-yo)),to=we(Ml(Ut,js,Bd)),S=we(Ml(Ut,bl,Bd)),Ei=we(Ei+to),m[tf>>2]=Ei,o[$S>>2]=1,yo=we(m[Ut+396>>2]);e:do if(sl(yo)|0){At=sl(hc)|0;do if(!At){if(ru|(B_(Ut,bl,hc)|0|hl)||(WA(A,Ut)|0)!=4||(o[(dm(Ut,bl)|0)+4>>2]|0)==3||(o[(Wf(Ut,bl)|0)+4>>2]|0)==3)break;m[rp>>2]=hc,o[k_>>2]=1;break e}while(!1);if(B_(Ut,bl,hc)|0){At=o[Ut+992+(o[Id>>2]<<2)>>2]|0,Ec=we(S+we(Qi(At,hc))),m[rp>>2]=Ec,At=tP&(o[At+4>>2]|0)==2,o[k_>>2]=((sl(Ec)|0|At)^1)&1;break}else{m[rp>>2]=hc,o[k_>>2]=At?0:2;break}}else Ec=we(Ei-to),rg=we(Ec/yo),Ec=we(yo*Ec),o[k_>>2]=1,m[rp>>2]=we(S+(iC?rg:Ec));while(!1);Yy(Ut,js,Wu,Bd,$S,tf),Yy(Ut,bl,hc,Bd,k_,rp);do if(!(B_(Ut,bl,hc)|0)&&(WA(A,Ut)|0)==4){if((o[(dm(Ut,bl)|0)+4>>2]|0)==3){At=0;break}At=(o[(Wf(Ut,bl)|0)+4>>2]|0)!=3}else At=0;while(!1);Ec=we(m[tf>>2]),rg=we(m[rp>>2]),XI=o[$S>>2]|0,Pf=o[k_>>2]|0,Sc(Ut,iC?Ec:rg,iC?rg:Ec,Z2,iC?XI:Pf,iC?Pf:XI,Bd,Zv,Ye&(At^1),3488,Ct)|0,s[Mb>>0]=s[Mb>>0]|s[Ut+508>>0],Ut=o[Ut+960>>2]|0}while(Ut|0)}}else _=we(0);if(_=we(tp+_),Pf=_>0]=Pf|g[Mb>>0],qS&_>we(0)?(At=o[W1>>2]|0,o[A+364+(At<<3)+4>>2]|0&&(PE=we(Qi(A+364+(At<<3)|0,X0)),PE>=we(0))?Ei=we(hA(we(0),we(PE-we(Wu-_)))):Ei=we(0)):Ei=_,wl=Wg>>>0>>0,wl){Is=o[ab>>2]|0,cn=Wg,At=0;do Ut=o[Is+(cn<<2)>>2]|0,o[Ut+24>>2]|0||(At=((o[(dm(Ut,js)|0)+4>>2]|0)==3&1)+At|0,At=At+((o[(Wf(Ut,js)|0)+4>>2]|0)==3&1)|0),cn=cn+1|0;while((cn|0)!=(Nu|0));At?(to=we(0),S=we(0)):mf=101}else mf=101;e:do if((mf|0)==101)switch(mf=0,GB|0){case 1:{At=0,to=we(Ei*we(.5)),S=we(0);break e}case 2:{At=0,to=Ei,S=we(0);break e}case 3:{if(Y>>>0<=1){At=0,to=we(0),S=we(0);break e}S=we((Y+-1|0)>>>0),At=0,to=we(0),S=we(we(hA(Ei,we(0)))/S);break e}case 5:{S=we(Ei/we((Y+1|0)>>>0)),At=0,to=S;break e}case 4:{S=we(Ei/we(Y>>>0)),At=0,to=we(S*we(.5));break e}default:{At=0,to=we(0),S=we(0);break e}}while(!1);if(_=we(ro+to),wl){yo=we(Ei/we(At|0)),cn=o[ab>>2]|0,Ut=Wg,Ei=we(0);do{At=o[cn+(Ut<<2)>>2]|0;e:do if((o[At+36>>2]|0)!=1){switch(o[At+24>>2]|0){case 1:{if(jh(At,js)|0){if(!Ye)break e;Ec=we(Xy(At,js,Wu)),Ec=we(Ec+we(hg(A,js))),Ec=we(Ec+we($t(At,js,Bd))),m[At+400+(o[PA>>2]<<2)>>2]=Ec;break e}break}case 0:if(Pf=(o[(dm(At,js)|0)+4>>2]|0)==3,Ec=we(yo+_),_=Pf?Ec:_,Ye&&(Pf=At+400+(o[PA>>2]<<2)|0,m[Pf>>2]=we(_+we(m[Pf>>2]))),Pf=(o[(Wf(At,js)|0)+4>>2]|0)==3,Ec=we(yo+_),_=Pf?Ec:_,_A){Ec=we(S+we(Ml(At,js,Bd))),Ei=hc,_=we(_+we(Ec+we(m[At+504>>2])));break e}else{_=we(_+we(S+we(fy(At,js,Bd)))),Ei=we(hA(Ei,we(fy(At,bl,Bd))));break e}default:}Ye&&(Ec=we(to+we(hg(A,js))),Pf=At+400+(o[PA>>2]<<2)|0,m[Pf>>2]=we(Ec+we(m[Pf>>2])))}while(!1);Ut=Ut+1|0}while((Ut|0)!=(Nu|0))}else Ei=we(0);if(S=we(vN+_),hV?to=we(we(gA(A,bl,we(P1+Ei),iD,oe))-P1):to=hc,yo=we(we(gA(A,bl,we(P1+(nD?hc:Ei)),iD,oe))-P1),wl&Ye){Ut=Wg;do{cn=o[(o[ab>>2]|0)+(Ut<<2)>>2]|0;do if((o[cn+36>>2]|0)!=1){if((o[cn+24>>2]|0)==1){if(jh(cn,bl)|0){if(Ec=we(Xy(cn,bl,hc)),Ec=we(Ec+we(hg(A,bl))),Ec=we(Ec+we($t(cn,bl,Bd))),At=o[ZC>>2]|0,m[cn+400+(At<<2)>>2]=Ec,!(sl(Ec)|0))break}else At=o[ZC>>2]|0;Ec=we(hg(A,bl)),m[cn+400+(At<<2)>>2]=we(Ec+we($t(cn,bl,Bd)));break}At=WA(A,cn)|0;do if((At|0)==4){if((o[(dm(cn,bl)|0)+4>>2]|0)==3){mf=139;break}if((o[(Wf(cn,bl)|0)+4>>2]|0)==3){mf=139;break}if(B_(cn,bl,hc)|0){_=ji;break}XI=o[cn+908+(o[W1>>2]<<2)>>2]|0,o[rp>>2]=XI,_=we(m[cn+396>>2]),Pf=sl(_)|0,Ei=(o[v>>2]=XI,we(m[v>>2])),Pf?_=yo:(tp=we(Ml(cn,bl,Bd)),Ec=we(Ei/_),_=we(_*Ei),_=we(tp+(iC?Ec:_))),m[tf>>2]=_,m[rp>>2]=we(we(Ml(cn,js,Bd))+Ei),o[k_>>2]=1,o[$S>>2]=1,Yy(cn,js,Wu,Bd,k_,rp),Yy(cn,bl,hc,Bd,$S,tf),_=we(m[rp>>2]),tp=we(m[tf>>2]),Ec=iC?_:tp,_=iC?tp:_,Pf=((sl(Ec)|0)^1)&1,Sc(cn,Ec,_,Z2,Pf,((sl(_)|0)^1)&1,Bd,Zv,1,3493,Ct)|0,_=ji}else mf=139;while(!1);e:do if((mf|0)==139){mf=0,_=we(to-we(fy(cn,bl,Bd)));do if((o[(dm(cn,bl)|0)+4>>2]|0)==3){if((o[(Wf(cn,bl)|0)+4>>2]|0)!=3)break;_=we(ji+we(hA(we(0),we(_*we(.5)))));break e}while(!1);if((o[(Wf(cn,bl)|0)+4>>2]|0)==3){_=ji;break}if((o[(dm(cn,bl)|0)+4>>2]|0)==3){_=we(ji+we(hA(we(0),_)));break}switch(At|0){case 1:{_=ji;break e}case 2:{_=we(ji+we(_*we(.5)));break e}default:{_=we(ji+_);break e}}}while(!1);Ec=we(Hb+_),Pf=cn+400+(o[ZC>>2]<<2)|0,m[Pf>>2]=we(Ec+we(m[Pf>>2]))}while(!1);Ut=Ut+1|0}while((Ut|0)!=(Nu|0))}if(Hb=we(Hb+yo),fh=we(hA(fh,S)),Y=fo+1|0,Nu>>>0>=ew>>>0)break;_=Wu,Wg=Nu,fo=Y}do if(Ye){if(At=Y>>>0>1,!At&&!(_S(A)|0))break;if(!(sl(hc)|0)){_=we(hc-Hb);e:do switch(o[A+12>>2]|0){case 3:{ji=we(ji+_),as=we(0);break}case 2:{ji=we(ji+we(_*we(.5))),as=we(0);break}case 4:{hc>Hb?as=we(_/we(Y>>>0)):as=we(0);break}case 7:if(hc>Hb){ji=we(ji+we(_/we(Y<<1>>>0))),as=we(_/we(Y>>>0)),as=At?as:we(0);break e}else{ji=we(ji+we(_*we(.5))),as=we(0);break e}case 6:{as=we(_/we(fo>>>0)),as=hc>Hb&At?as:we(0);break}default:as=we(0)}while(!1);if(Y|0)for(wl=1040+(bl<<2)|0,sd=976+(bl<<2)|0,Is=0,Ut=0;;){e:do if(Ut>>>0>>0)for(Ei=we(0),yo=we(0),_=we(0),cn=Ut;;){At=o[(o[ab>>2]|0)+(cn<<2)>>2]|0;do if((o[At+36>>2]|0)!=1&&!(o[At+24>>2]|0)){if((o[At+940>>2]|0)!=(Is|0))break e;if(yS(At,bl)|0&&(Ec=we(m[At+908+(o[sd>>2]<<2)>>2]),_=we(hA(_,we(Ec+we(Ml(At,bl,Bd)))))),(WA(A,At)|0)!=5)break;PE=we(Jy(At)),PE=we(PE+we($t(At,0,Bd))),Ec=we(m[At+912>>2]),Ec=we(we(Ec+we(Ml(At,0,Bd)))-PE),PE=we(hA(yo,PE)),Ec=we(hA(Ei,Ec)),Ei=Ec,yo=PE,_=we(hA(_,we(PE+Ec)))}while(!1);if(At=cn+1|0,At>>>0>>0)cn=At;else{cn=At;break}}else yo=we(0),_=we(0),cn=Ut;while(!1);if(aa=we(as+_),S=ji,ji=we(ji+aa),Ut>>>0>>0){to=we(S+yo),At=Ut;do{Ut=o[(o[ab>>2]|0)+(At<<2)>>2]|0;e:do if((o[Ut+36>>2]|0)!=1&&!(o[Ut+24>>2]|0))switch(WA(A,Ut)|0){case 1:{Ec=we(S+we($t(Ut,bl,Bd))),m[Ut+400+(o[wl>>2]<<2)>>2]=Ec;break e}case 3:{Ec=we(we(ji-we(Wr(Ut,bl,Bd)))-we(m[Ut+908+(o[sd>>2]<<2)>>2])),m[Ut+400+(o[wl>>2]<<2)>>2]=Ec;break e}case 2:{Ec=we(S+we(we(aa-we(m[Ut+908+(o[sd>>2]<<2)>>2]))*we(.5))),m[Ut+400+(o[wl>>2]<<2)>>2]=Ec;break e}case 4:{if(Ec=we(S+we($t(Ut,bl,Bd))),m[Ut+400+(o[wl>>2]<<2)>>2]=Ec,B_(Ut,bl,hc)|0||(iC?(Ei=we(m[Ut+908>>2]),_=we(Ei+we(Ml(Ut,js,Bd))),yo=aa):(yo=we(m[Ut+912>>2]),yo=we(yo+we(Ml(Ut,bl,Bd))),_=aa,Ei=we(m[Ut+908>>2])),nA(_,Ei)|0&&nA(yo,we(m[Ut+912>>2]))|0))break e;Sc(Ut,_,yo,Z2,1,1,Bd,Zv,1,3501,Ct)|0;break e}case 5:{m[Ut+404>>2]=we(we(to-we(Jy(Ut)))+we(Xy(Ut,0,hc)));break e}default:break e}while(!1);At=At+1|0}while((At|0)!=(cn|0))}if(Is=Is+1|0,(Is|0)==(Y|0))break;Ut=cn}}}while(!1);if(m[A+908>>2]=we(gA(A,2,Xf,oe,oe)),m[A+912>>2]=we(gA(A,0,Dp,Se,oe)),Yx|0&&(FZ=o[A+32>>2]|0,FB=(Yx|0)==2,!(FB&(FZ|0)!=2))?FB&(FZ|0)==2&&(_=we(GZ+Wu),_=we(hA(we(KS(_,we(SE(A,js,fh,X0)))),GZ)),mf=198):(_=we(gA(A,js,fh,X0,oe)),mf=198),(mf|0)==198&&(m[A+908+(o[976+(js<<2)>>2]<<2)>>2]=_),FG|0&&(G_=o[A+32>>2]|0,_V=(FG|0)==2,!(_V&(G_|0)!=2))?_V&(G_|0)==2&&(_=we(P1+hc),_=we(hA(we(KS(_,we(SE(A,bl,we(P1+Hb),iD)))),P1)),mf=204):(_=we(gA(A,bl,we(P1+Hb),iD,oe)),mf=204),(mf|0)==204&&(m[A+908+(o[976+(bl<<2)>>2]<<2)>>2]=_),Ye){if((o[nP>>2]|0)==2){Ut=976+(bl<<2)|0,cn=1040+(bl<<2)|0,At=0;do Is=Qg(A,At)|0,o[Is+24>>2]|0||(XI=o[Ut>>2]|0,Ec=we(m[A+908+(XI<<2)>>2]),Pf=Is+400+(o[cn>>2]<<2)|0,Ec=we(Ec-we(m[Pf>>2])),m[Pf>>2]=we(Ec-we(m[Is+908+(XI<<2)>>2]))),At=At+1|0;while((At|0)!=(ew|0))}if(F|0){At=iC?Yx:H;do hv(A,F,Bd,At,Zv,Z2,Ct),F=o[F+960>>2]|0;while(F|0)}if(At=(js|2|0)==3,Ut=(bl|2|0)==3,At|Ut){F=0;do cn=o[(o[ab>>2]|0)+(F<<2)>>2]|0,(o[cn+36>>2]|0)!=1&&(At&&Mw(A,cn,js),Ut&&Mw(A,cn,bl)),F=F+1|0;while((F|0)!=(ew|0))}}}while(!1);T=hp}function g2(A,_){A=A|0,_=we(_);var S=0;ja(A,_>=we(0),3147),S=_==we(0),m[A+4>>2]=S?we(0):_}function xm(A,_,S,F){A=A|0,_=we(_),S=we(S),F=F|0;var H=ys,Y=ys,oe=0,Se=0,Ye=0;o[2278]=(o[2278]|0)+1,Ay(A),B_(A,2,_)|0?(H=we(Qi(o[A+992>>2]|0,_)),Ye=1,H=we(H+we(Ml(A,2,_)))):(H=we(Qi(A+380|0,_)),H>=we(0)?Ye=2:(Ye=((sl(_)|0)^1)&1,H=_)),B_(A,0,S)|0?(Y=we(Qi(o[A+996>>2]|0,S)),Se=1,Y=we(Y+we(Ml(A,0,_)))):(Y=we(Qi(A+388|0,S)),Y>=we(0)?Se=2:(Se=((sl(S)|0)^1)&1,Y=S)),oe=A+976|0,Sc(A,H,Y,F,Ye,Se,_,S,1,3189,o[oe>>2]|0)|0&&(dy(A,o[A+496>>2]|0,_,S,_),BE(A,we(m[(o[oe>>2]|0)+4>>2]),we(0),we(0)),s[11696]|0)&&Cv(A,7)}function Ay(A){A=A|0;var _=0,S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;Se=T,T=T+32|0,oe=Se+24|0,Y=Se+16|0,F=Se+8|0,H=Se,S=0;do _=A+380+(S<<3)|0,o[A+380+(S<<3)+4>>2]|0&&(Ye=_,Ct=o[Ye+4>>2]|0,At=F,o[At>>2]=o[Ye>>2],o[At+4>>2]=Ct,At=A+364+(S<<3)|0,Ct=o[At+4>>2]|0,Ye=H,o[Ye>>2]=o[At>>2],o[Ye+4>>2]=Ct,o[Y>>2]=o[F>>2],o[Y+4>>2]=o[F+4>>2],o[oe>>2]=o[H>>2],o[oe+4>>2]=o[H+4>>2],Rb(Y,oe)|0)||(_=A+348+(S<<3)|0),o[A+992+(S<<2)>>2]=_,S=S+1|0;while((S|0)!=2);T=Se}function B_(A,_,S){A=A|0,_=_|0,S=we(S);var F=0;switch(A=o[A+992+(o[976+(_<<2)>>2]<<2)>>2]|0,o[A+4>>2]|0){case 0:case 3:{A=0;break}case 1:{we(m[A>>2])>2])>2]|0){case 2:{_=we(we(we(m[A>>2])*_)/we(100));break}case 1:{_=we(m[A>>2]);break}default:_=we(pe)}return we(_)}function dy(A,_,S,F,H){A=A|0,_=_|0,S=we(S),F=we(F),H=we(H);var Y=0,oe=ys;_=o[A+944>>2]|0?_:1,Y=Ig(o[A+4>>2]|0,_)|0,_=Ow(Y,_)|0,S=we(xb(A,Y,S)),F=we(xb(A,_,F)),oe=we(S+we($t(A,Y,H))),m[A+400+(o[1040+(Y<<2)>>2]<<2)>>2]=oe,S=we(S+we(Wr(A,Y,H))),m[A+400+(o[1e3+(Y<<2)>>2]<<2)>>2]=S,S=we(F+we($t(A,_,H))),m[A+400+(o[1040+(_<<2)>>2]<<2)>>2]=S,H=we(F+we(Wr(A,_,H))),m[A+400+(o[1e3+(_<<2)>>2]<<2)>>2]=H}function BE(A,_,S,F){A=A|0,_=we(_),S=we(S),F=we(F);var H=0,Y=0,oe=ys,Se=ys,Ye=0,Ct=0,At=ys,Ut=0,cn=ys,Is=ys,ji=ys,Ei=ys;if(_!=we(0)&&(H=A+400|0,Ei=we(m[H>>2]),Y=A+404|0,ji=we(m[Y>>2]),Ut=A+416|0,Is=we(m[Ut>>2]),Ct=A+420|0,oe=we(m[Ct>>2]),cn=we(Ei+S),At=we(ji+F),F=we(cn+Is),Se=we(At+oe),Ye=(o[A+988>>2]|0)==1,m[H>>2]=we(HC(Ei,_,0,Ye)),m[Y>>2]=we(HC(ji,_,0,Ye)),S=we(c4(we(Is*_),we(1))),nA(S,we(0))|0?Y=0:Y=(nA(S,we(1))|0)^1,S=we(c4(we(oe*_),we(1))),nA(S,we(0))|0?H=0:H=(nA(S,we(1))|0)^1,Ei=we(HC(F,_,Ye&Y,Ye&(Y^1))),m[Ut>>2]=we(Ei-we(HC(cn,_,0,Ye))),Ei=we(HC(Se,_,Ye&H,Ye&(H^1))),m[Ct>>2]=we(Ei-we(HC(At,_,0,Ye))),Y=(o[A+952>>2]|0)-(o[A+948>>2]|0)>>2,Y|0)){H=0;do BE(Qg(A,H)|0,_,cn,At),H=H+1|0;while((H|0)!=(Y|0))}}function gf(A,_,S,F,H){switch(A=A|0,_=_|0,S=S|0,F=F|0,H=H|0,S|0){case 5:case 0:{A=DKe(o[489]|0,F,H)|0;break}default:A=xle(F,H)|0}return A|0}function A2(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0;H=T,T=T+16|0,Y=H,o[Y>>2]=F,vE(A,0,_,S,Y),T=H}function vE(A,_,S,F,H){if(A=A|0,_=_|0,S=S|0,F=F|0,H=H|0,A=A|0?A:956,Hl[o[A+8>>2]&1](A,_,S,F,H)|0,(S|0)==5)Eo();else return}function G0(A,_,S){A=A|0,_=_|0,S=S|0,s[A+_>>0]=S&1}function hS(A,_){A=A|0,_=_|0;var S=0,F=0;o[A>>2]=0,o[A+4>>2]=0,o[A+8>>2]=0,S=_+4|0,F=(o[S>>2]|0)-(o[_>>2]|0)>>2,F|0&&(C1(A,F),pc(A,o[_>>2]|0,o[S>>2]|0,F))}function C1(A,_){A=A|0,_=_|0;var S=0;if((at(A)|0)>>>0<_>>>0&&DI(A),_>>>0>1073741823)Eo();else{S=ku(_<<2)|0,o[A+4>>2]=S,o[A>>2]=S,o[A+8>>2]=S+(_<<2);return}}function pc(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,F=A+4|0,A=S-_|0,(A|0)>0&&(ep(o[F>>2]|0,_|0,A|0)|0,o[F>>2]=(o[F>>2]|0)+(A>>>2<<2))}function at(A){return A=A|0,1073741823}function $t(A,_,S){return A=A|0,_=_|0,S=we(S),vn(_)|0&&o[A+96>>2]|0?A=A+92|0:A=VA(A+60|0,o[1040+(_<<2)>>2]|0,992)|0,we(os(A,S))}function Wr(A,_,S){return A=A|0,_=_|0,S=we(S),vn(_)|0&&o[A+104>>2]|0?A=A+100|0:A=VA(A+60|0,o[1e3+(_<<2)>>2]|0,992)|0,we(os(A,S))}function vn(A){return A=A|0,(A|1|0)==3|0}function os(A,_){return A=A|0,_=we(_),(o[A+4>>2]|0)==3?_=we(0):_=we(Qi(A,_)),we(_)}function So(A,_){return A=A|0,_=_|0,A=o[A>>2]|0,(A|0?A:(_|0)>1?_:1)|0}function Ig(A,_){A=A|0,_=_|0;var S=0;e:do if((_|0)==2){switch(A|0){case 2:{A=3;break e}case 3:break;default:{S=4;break e}}A=2}else S=4;while(!1);return A|0}function hg(A,_){A=A|0,_=_|0;var S=ys;return vn(_)|0&&o[A+312>>2]|0&&(S=we(m[A+308>>2]),S>=we(0))||(S=we(hA(we(m[(VA(A+276|0,o[1040+(_<<2)>>2]|0,992)|0)>>2]),we(0)))),we(S)}function Af(A,_){A=A|0,_=_|0;var S=ys;return vn(_)|0&&o[A+320>>2]|0&&(S=we(m[A+316>>2]),S>=we(0))||(S=we(hA(we(m[(VA(A+276|0,o[1e3+(_<<2)>>2]|0,992)|0)>>2]),we(0)))),we(S)}function nI(A,_,S){A=A|0,_=_|0,S=we(S);var F=ys;return vn(_)|0&&o[A+240>>2]|0&&(F=we(Qi(A+236|0,S)),F>=we(0))||(F=we(hA(we(Qi(VA(A+204|0,o[1040+(_<<2)>>2]|0,992)|0,S)),we(0)))),we(F)}function AC(A,_,S){A=A|0,_=_|0,S=we(S);var F=ys;return vn(_)|0&&o[A+248>>2]|0&&(F=we(Qi(A+244|0,S)),F>=we(0))||(F=we(hA(we(Qi(VA(A+204|0,o[1e3+(_<<2)>>2]|0,992)|0,S)),we(0)))),we(F)}function Db(A,_,S,F,H,Y,oe){A=A|0,_=we(_),S=we(S),F=F|0,H=H|0,Y=we(Y),oe=we(oe);var Se=ys,Ye=ys,Ct=ys,At=ys,Ut=ys,cn=ys,Is=0,ji=0,Ei=0;Ei=T,T=T+16|0,Is=Ei,ji=A+964|0,Jl(A,(o[ji>>2]|0)!=0,3519),Se=we(j_(A,2,_)),Ye=we(j_(A,0,_)),Ct=we(Ml(A,2,_)),At=we(Ml(A,0,_)),sl(_)|0?Ut=_:Ut=we(hA(we(0),we(we(_-Ct)-Se))),sl(S)|0?cn=S:cn=we(hA(we(0),we(we(S-At)-Ye))),(F|0)==1&(H|0)==1?(m[A+908>>2]=we(gA(A,2,we(_-Ct),Y,Y)),_=we(gA(A,0,we(S-At),oe,Y))):(lI[o[ji>>2]&1](Is,A,Ut,F,cn,H),Ut=we(Se+we(m[Is>>2])),cn=we(_-Ct),m[A+908>>2]=we(gA(A,2,(F|2|0)==2?Ut:cn,Y,Y)),cn=we(Ye+we(m[Is+4>>2])),_=we(S-At),_=we(gA(A,0,(H|2|0)==2?cn:_,oe,Y))),m[A+912>>2]=_,T=Ei}function qT(A,_,S,F,H,Y,oe){A=A|0,_=we(_),S=we(S),F=F|0,H=H|0,Y=we(Y),oe=we(oe);var Se=ys,Ye=ys,Ct=ys,At=ys;Ct=we(j_(A,2,Y)),Se=we(j_(A,0,Y)),At=we(Ml(A,2,Y)),Ye=we(Ml(A,0,Y)),_=we(_-At),m[A+908>>2]=we(gA(A,2,(F|2|0)==2?Ct:_,Y,Y)),S=we(S-Ye),m[A+912>>2]=we(gA(A,0,(H|2|0)==2?Se:S,oe,Y))}function mv(A,_,S,F,H,Y,oe){A=A|0,_=we(_),S=we(S),F=F|0,H=H|0,Y=we(Y),oe=we(oe);var Se=0,Ye=ys,Ct=ys;return Se=(F|0)==2,!(_<=we(0)&Se)&&!(S<=we(0)&(H|0)==2)&&!((F|0)==1&(H|0)==1)?A=0:(Ye=we(Ml(A,0,Y)),Ct=we(Ml(A,2,Y)),Se=_>2]=we(gA(A,2,Se?we(0):_,Y,Y)),_=we(S-Ye),Se=S>2]=we(gA(A,0,Se?we(0):_,oe,Y)),A=1),A|0}function Ow(A,_){return A=A|0,_=_|0,_v(A)|0?A=Ig(2,_)|0:A=0,A|0}function Hy(A,_,S){return A=A|0,_=_|0,S=we(S),S=we(nI(A,_,S)),we(S+we(hg(A,_)))}function m1(A,_,S){return A=A|0,_=_|0,S=we(S),S=we(AC(A,_,S)),we(S+we(Af(A,_)))}function j_(A,_,S){A=A|0,_=_|0,S=we(S);var F=ys;return F=we(Hy(A,_,S)),we(F+we(m1(A,_,S)))}function Qw(A){return A=A|0,o[A+24>>2]|0?A=0:we(zp(A))!=we(0)?A=1:A=we(py(A))!=we(0),A|0}function zp(A){A=A|0;var _=ys;if(o[A+944>>2]|0){if(_=we(m[A+44>>2]),sl(_)|0)return _=we(m[A+40>>2]),A=_>we(0)&((sl(_)|0)^1),we(A?_:we(0))}else _=we(0);return we(_)}function py(A){A=A|0;var _=ys,S=0,F=ys;do if(o[A+944>>2]|0){if(_=we(m[A+48>>2]),sl(_)|0){if(S=s[(o[A+976>>2]|0)+2>>0]|0,!(S<<24>>24)&&(F=we(m[A+40>>2]),F>24?we(1):we(0)}}else _=we(0);while(!1);return we(_)}function d2(A){A=A|0;var _=0,S=0;if(fV(A+400|0,0,540)|0,s[A+985>>0]=1,Nr(A),S=yl(A)|0,S|0){_=A+948|0,A=0;do d2(o[(o[_>>2]|0)+(A<<2)>>2]|0),A=A+1|0;while((A|0)!=(S|0))}}function QI(A,_,S,F,H,Y,oe,Se,Ye,Ct){A=A|0,_=_|0,S=we(S),F=F|0,H=we(H),Y=we(Y),oe=we(oe),Se=Se|0,Ye=Ye|0,Ct=Ct|0;var At=0,Ut=ys,cn=0,Is=0,ji=ys,Ei=ys,yo=0,to=ys,aa=0,as=ys,hs=0,wl=0,sd=0,Nu=0,rg=0,tp=0,Wg=0,Wu=0,hl=0,Cf=0;hl=T,T=T+16|0,sd=hl+12|0,Nu=hl+8|0,rg=hl+4|0,tp=hl,Wu=Ig(o[A+4>>2]|0,Ye)|0,hs=vn(Wu)|0,Ut=we(Qi(FR(_)|0,hs?Y:oe)),wl=B_(_,2,Y)|0,Wg=B_(_,0,oe)|0;do if(!(sl(Ut)|0)&&!(sl(hs?S:H)|0)){if(At=_+504|0,!(sl(we(m[At>>2]))|0)&&(!($T(o[_+976>>2]|0,0)|0)||(o[_+500>>2]|0)==(o[2278]|0)))break;m[At>>2]=we(hA(Ut,we(j_(_,Wu,Y))))}else cn=7;while(!1);do if((cn|0)==7){if(aa=hs^1,!(aa|wl^1)){oe=we(Qi(o[_+992>>2]|0,Y)),m[_+504>>2]=we(hA(oe,we(j_(_,2,Y))));break}if(!(hs|Wg^1)){oe=we(Qi(o[_+996>>2]|0,oe)),m[_+504>>2]=we(hA(oe,we(j_(_,0,Y))));break}m[sd>>2]=we(pe),m[Nu>>2]=we(pe),o[rg>>2]=0,o[tp>>2]=0,to=we(Ml(_,2,Y)),as=we(Ml(_,0,Y)),wl?(ji=we(to+we(Qi(o[_+992>>2]|0,Y))),m[sd>>2]=ji,o[rg>>2]=1,Is=1):(Is=0,ji=we(pe)),Wg?(Ut=we(as+we(Qi(o[_+996>>2]|0,oe))),m[Nu>>2]=Ut,o[tp>>2]=1,At=1):(At=0,Ut=we(pe)),cn=o[A+32>>2]|0,hs&(cn|0)==2?cn=2:sl(ji)|0&&!(sl(S)|0)&&(m[sd>>2]=S,o[rg>>2]=2,Is=2,ji=S),!((cn|0)==2&aa)&&sl(Ut)|0&&!(sl(H)|0)&&(m[Nu>>2]=H,o[tp>>2]=2,At=2,Ut=H),Ei=we(m[_+396>>2]),yo=sl(Ei)|0;do if(yo)cn=Is;else{if((Is|0)==1&aa){m[Nu>>2]=we(we(ji-to)/Ei),o[tp>>2]=1,At=1,cn=1;break}hs&(At|0)==1?(m[sd>>2]=we(Ei*we(Ut-as)),o[rg>>2]=1,At=1,cn=1):cn=Is}while(!1);Cf=sl(S)|0,Is=(WA(A,_)|0)!=4,!(hs|wl|((F|0)!=1|Cf)|(Is|(cn|0)==1))&&(m[sd>>2]=S,o[rg>>2]=1,!yo)&&(m[Nu>>2]=we(we(S-to)/Ei),o[tp>>2]=1,At=1),!(Wg|aa|((Se|0)!=1|(sl(H)|0))|(Is|(At|0)==1))&&(m[Nu>>2]=H,o[tp>>2]=1,!yo)&&(m[sd>>2]=we(Ei*we(H-as)),o[rg>>2]=1),Yy(_,2,Y,Y,rg,sd),Yy(_,0,oe,Y,tp,Nu),S=we(m[sd>>2]),H=we(m[Nu>>2]),Sc(_,S,H,Ye,o[rg>>2]|0,o[tp>>2]|0,Y,oe,0,3565,Ct)|0,oe=we(m[_+908+(o[976+(Wu<<2)>>2]<<2)>>2]),m[_+504>>2]=we(hA(oe,we(j_(_,Wu,Y))))}while(!1);o[_+500>>2]=o[2278],T=hl}function gA(A,_,S,F,H){return A=A|0,_=_|0,S=we(S),F=we(F),H=we(H),F=we(SE(A,_,S,F)),we(hA(F,we(j_(A,_,H))))}function WA(A,_){return A=A|0,_=_|0,_=_+20|0,_=o[(o[_>>2]|0?_:A+16|0)>>2]|0,(_|0)==5&&_v(o[A+4>>2]|0)|0&&(_=1),_|0}function dm(A,_){return A=A|0,_=_|0,vn(_)|0&&o[A+96>>2]|0?_=4:_=o[1040+(_<<2)>>2]|0,A+60+(_<<3)|0}function Wf(A,_){return A=A|0,_=_|0,vn(_)|0&&o[A+104>>2]|0?_=5:_=o[1e3+(_<<2)>>2]|0,A+60+(_<<3)|0}function Yy(A,_,S,F,H,Y){switch(A=A|0,_=_|0,S=we(S),F=we(F),H=H|0,Y=Y|0,S=we(Qi(A+380+(o[976+(_<<2)>>2]<<3)|0,S)),S=we(S+we(Ml(A,_,F))),o[H>>2]|0){case 2:case 1:{H=sl(S)|0,F=we(m[Y>>2]),m[Y>>2]=H|F>2]=2,m[Y>>2]=S);break}default:}}function jh(A,_){return A=A|0,_=_|0,A=A+132|0,vn(_)|0&&o[(VA(A,4,948)|0)+4>>2]|0?A=1:A=(o[(VA(A,o[1040+(_<<2)>>2]|0,948)|0)+4>>2]|0)!=0,A|0}function Xy(A,_,S){A=A|0,_=_|0,S=we(S);var F=0,H=0;return A=A+132|0,vn(_)|0&&(F=VA(A,4,948)|0,(o[F+4>>2]|0)!=0)?H=4:(F=VA(A,o[1040+(_<<2)>>2]|0,948)|0,o[F+4>>2]|0?H=4:S=we(0)),(H|0)==4&&(S=we(Qi(F,S))),we(S)}function fy(A,_,S){A=A|0,_=_|0,S=we(S);var F=ys;return F=we(m[A+908+(o[976+(_<<2)>>2]<<2)>>2]),F=we(F+we($t(A,_,S))),we(F+we(Wr(A,_,S)))}function _S(A){A=A|0;var _=0,S=0,F=0;e:do if(_v(o[A+4>>2]|0)|0)_=0;else if((o[A+16>>2]|0)!=5)if(S=yl(A)|0,!S)_=0;else for(_=0;;){if(F=Qg(A,_)|0,!(o[F+24>>2]|0)&&(o[F+20>>2]|0)==5){_=1;break e}if(_=_+1|0,_>>>0>=S>>>0){_=0;break}}else _=1;while(!1);return _|0}function yS(A,_){A=A|0,_=_|0;var S=ys;return S=we(m[A+908+(o[976+(_<<2)>>2]<<2)>>2]),S>=we(0)&((sl(S)|0)^1)|0}function Jy(A){A=A|0;var _=ys,S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=ys;if(S=o[A+968>>2]|0,S)Ye=we(m[A+908>>2]),_=we(m[A+912>>2]),_=we(Ple[S&0](A,Ye,_)),Jl(A,(sl(_)|0)^1,3573);else{Y=yl(A)|0;do if(Y|0){for(S=0,H=0;;){if(F=Qg(A,H)|0,o[F+940>>2]|0){oe=8;break}if((o[F+24>>2]|0)!=1)if(Se=(WA(A,F)|0)==5,Se){S=F;break}else S=S|0?S:F;if(H=H+1|0,H>>>0>=Y>>>0){oe=8;break}}if((oe|0)==8&&!S)break;return _=we(Jy(S)),we(_+we(m[S+404>>2]))}while(!1);_=we(m[A+912>>2])}return we(_)}function SE(A,_,S,F){A=A|0,_=_|0,S=we(S),F=we(F);var H=ys,Y=0;return _v(_)|0?(_=1,Y=3):vn(_)|0?(_=0,Y=3):(F=we(pe),H=we(pe)),(Y|0)==3&&(H=we(Qi(A+364+(_<<3)|0,F)),F=we(Qi(A+380+(_<<3)|0,F))),Y=F=we(0)&((sl(F)|0)^1)),S=Y?F:S,Y=H>=we(0)&((sl(H)|0)^1)&S>2]|0,Y)|0,ji=Ow(yo,Y)|0,Ei=vn(yo)|0,Ut=we(Ml(_,2,S)),cn=we(Ml(_,0,S)),B_(_,2,S)|0?Se=we(Ut+we(Qi(o[_+992>>2]|0,S))):jh(_,2)|0&&h1(_,2)|0?(Se=we(m[A+908>>2]),Ye=we(hg(A,2)),Ye=we(Se-we(Ye+we(Af(A,2)))),Se=we(Xy(_,2,S)),Se=we(gA(_,2,we(Ye-we(Se+we(zh(_,2,S)))),S,S))):Se=we(pe),B_(_,0,H)|0?Ye=we(cn+we(Qi(o[_+996>>2]|0,H))):jh(_,0)|0&&h1(_,0)|0?(Ye=we(m[A+912>>2]),aa=we(hg(A,0)),aa=we(Ye-we(aa+we(Af(A,0)))),Ye=we(Xy(_,0,H)),Ye=we(gA(_,0,we(aa-we(Ye+we(zh(_,0,H)))),H,S))):Ye=we(pe),Ct=sl(Se)|0,At=sl(Ye)|0;do if(Ct^At&&(Is=we(m[_+396>>2]),!(sl(Is)|0)))if(Ct){Se=we(Ut+we(we(Ye-cn)*Is));break}else{aa=we(cn+we(we(Se-Ut)/Is)),Ye=At?aa:Ye;break}while(!1);At=sl(Se)|0,Ct=sl(Ye)|0,At|Ct&&(as=(At^1)&1,F=S>we(0)&((F|0)!=0&At),Se=Ei?Se:F?S:Se,Sc(_,Se,Ye,Y,Ei?as:F?2:as,At&(Ct^1)&1,Se,Ye,0,3623,oe)|0,Se=we(m[_+908>>2]),Se=we(Se+we(Ml(_,2,S))),Ye=we(m[_+912>>2]),Ye=we(Ye+we(Ml(_,0,S)))),Sc(_,Se,Ye,Y,1,1,Se,Ye,1,3635,oe)|0,h1(_,yo)|0&&!(jh(_,yo)|0)?(as=o[976+(yo<<2)>>2]|0,aa=we(m[A+908+(as<<2)>>2]),aa=we(aa-we(m[_+908+(as<<2)>>2])),aa=we(aa-we(Af(A,yo))),aa=we(aa-we(Wr(_,yo,S))),aa=we(aa-we(zh(_,yo,Ei?S:H))),m[_+400+(o[1040+(yo<<2)>>2]<<2)>>2]=aa):to=21;do if((to|0)==21){if(!(jh(_,yo)|0)&&(o[A+8>>2]|0)==1){as=o[976+(yo<<2)>>2]|0,aa=we(m[A+908+(as<<2)>>2]),aa=we(we(aa-we(m[_+908+(as<<2)>>2]))*we(.5)),m[_+400+(o[1040+(yo<<2)>>2]<<2)>>2]=aa;break}!(jh(_,yo)|0)&&(o[A+8>>2]|0)==2&&(as=o[976+(yo<<2)>>2]|0,aa=we(m[A+908+(as<<2)>>2]),aa=we(aa-we(m[_+908+(as<<2)>>2])),m[_+400+(o[1040+(yo<<2)>>2]<<2)>>2]=aa)}while(!1);h1(_,ji)|0&&!(jh(_,ji)|0)?(as=o[976+(ji<<2)>>2]|0,aa=we(m[A+908+(as<<2)>>2]),aa=we(aa-we(m[_+908+(as<<2)>>2])),aa=we(aa-we(Af(A,ji))),aa=we(aa-we(Wr(_,ji,S))),aa=we(aa-we(zh(_,ji,Ei?H:S))),m[_+400+(o[1040+(ji<<2)>>2]<<2)>>2]=aa):to=30;do if((to|0)==30&&!(jh(_,ji)|0)){if((WA(A,_)|0)==2){as=o[976+(ji<<2)>>2]|0,aa=we(m[A+908+(as<<2)>>2]),aa=we(we(aa-we(m[_+908+(as<<2)>>2]))*we(.5)),m[_+400+(o[1040+(ji<<2)>>2]<<2)>>2]=aa;break}as=(WA(A,_)|0)==3,as^(o[A+28>>2]|0)==2&&(as=o[976+(ji<<2)>>2]|0,aa=we(m[A+908+(as<<2)>>2]),aa=we(aa-we(m[_+908+(as<<2)>>2])),m[_+400+(o[1040+(ji<<2)>>2]<<2)>>2]=aa)}while(!1)}function Mw(A,_,S){A=A|0,_=_|0,S=S|0;var F=ys,H=0;H=o[976+(S<<2)>>2]|0,F=we(m[_+908+(H<<2)>>2]),F=we(we(m[A+908+(H<<2)>>2])-F),F=we(F-we(m[_+400+(o[1040+(S<<2)>>2]<<2)>>2])),m[_+400+(o[1e3+(S<<2)>>2]<<2)>>2]=F}function _v(A){return A=A|0,(A|1|0)==1|0}function FR(A){A=A|0;var _=ys;switch(o[A+56>>2]|0){case 0:case 3:{_=we(m[A+40>>2]),_>we(0)&((sl(_)|0)^1)?A=s[(o[A+976>>2]|0)+2>>0]|0?1056:992:A=1056;break}default:A=A+52|0}return A|0}function $T(A,_){return A=A|0,_=_|0,(s[A+_>>0]|0)!=0|0}function h1(A,_){return A=A|0,_=_|0,A=A+132|0,vn(_)|0&&o[(VA(A,5,948)|0)+4>>2]|0?A=1:A=(o[(VA(A,o[1e3+(_<<2)>>2]|0,948)|0)+4>>2]|0)!=0,A|0}function zh(A,_,S){A=A|0,_=_|0,S=we(S);var F=0,H=0;return A=A+132|0,vn(_)|0&&(F=VA(A,5,948)|0,(o[F+4>>2]|0)!=0)?H=4:(F=VA(A,o[1e3+(_<<2)>>2]|0,948)|0,o[F+4>>2]|0?H=4:S=we(0)),(H|0)==4&&(S=we(Qi(F,S))),we(S)}function xb(A,_,S){return A=A|0,_=_|0,S=we(S),jh(A,_)|0?S=we(Xy(A,_,S)):S=we(-we(zh(A,_,S))),we(S)}function Hw(A){return A=we(A),m[v>>2]=A,o[v>>2]|0|0}function An(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>1073741823)Eo();else{H=ku(_<<2)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S<<2)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_<<2)}function _1(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(0-(H>>2)<<2)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function p2(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-4-_|0)>>>2)<<2)),A=o[A>>2]|0,A|0&&La(A)}function qh(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0;if(oe=A+4|0,Se=o[oe>>2]|0,H=Se-F|0,Y=H>>2,A=_+(Y<<2)|0,A>>>0>>0){F=Se;do o[F>>2]=o[A>>2],A=A+4|0,F=(o[oe>>2]|0)+4|0,o[oe>>2]=F;while(A>>>0>>0)}Y|0&&G6(Se+(0-Y<<2)|0,_|0,H|0)|0}function pp(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0;return Se=_+4|0,Ye=o[Se>>2]|0,H=o[A>>2]|0,oe=S,Y=oe-H|0,F=Ye+(0-(Y>>2)<<2)|0,o[Se>>2]=F,(Y|0)>0&&ep(F|0,H|0,Y|0)|0,H=A+4|0,Y=_+8|0,F=(o[H>>2]|0)-oe|0,(F|0)>0&&(ep(o[Y>>2]|0,S|0,F|0)|0,o[Y>>2]=(o[Y>>2]|0)+(F>>>2<<2)),oe=o[A>>2]|0,o[A>>2]=o[Se>>2],o[Se>>2]=oe,oe=o[H>>2]|0,o[H>>2]=o[Y>>2],o[Y>>2]=oe,oe=A+8|0,S=_+12|0,A=o[oe>>2]|0,o[oe>>2]=o[S>>2],o[S>>2]=A,o[_>>2]=o[Se>>2],Ye|0}function Yw(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;if(oe=o[_>>2]|0,Y=o[S>>2]|0,(oe|0)!=(Y|0)){H=A+8|0,S=((Y+-4-oe|0)>>>2)+1|0,A=oe,F=o[H>>2]|0;do o[F>>2]=o[A>>2],F=(o[H>>2]|0)+4|0,o[H>>2]=F,A=A+4|0;while((A|0)!=(Y|0));o[_>>2]=oe+(S<<2)}}function bS(){wI()}function eN(){var A=0;return A=ku(4)|0,kb(A),A|0}function kb(A){A=A|0,o[A>>2]=gC()|0}function tN(A){A=A|0,A|0&&(F0(A),La(A))}function F0(A){A=A|0,go(o[A>>2]|0)}function lG(A,_,S){A=A|0,_=_|0,S=S|0,G0(o[A>>2]|0,_,S)}function y1(A,_){A=A|0,_=we(_),g2(o[A>>2]|0,_)}function Gb(A,_){return A=A|0,_=_|0,$T(o[A>>2]|0,_)|0}function Bh(){var A=0;return A=ku(8)|0,b1(A,0),A|0}function b1(A,_){A=A|0,_=_|0,_?_=uf(o[_>>2]|0)|0:_=su()|0,o[A>>2]=_,o[A+4>>2]=0,fl(_,A)}function wE(A){A=A|0;var _=0;return _=ku(8)|0,b1(_,A),_|0}function TE(A){A=A|0,A|0&&(ES(A),La(A))}function ES(A){A=A|0;var _=0;Uh(o[A>>2]|0),_=A+4|0,A=o[_>>2]|0,o[_>>2]=0,A|0&&(Uy(A),La(A))}function Uy(A){A=A|0,$h(A)}function $h(A){A=A|0,A=o[A>>2]|0,A|0&&Ps(A|0)}function rN(A){return A=A|0,Hm(A)|0}function yv(A){A=A|0;var _=0,S=0;S=A+4|0,_=o[S>>2]|0,o[S>>2]=0,_|0&&(Uy(_),La(_)),lh(o[A>>2]|0)}function bv(A,_){A=A|0,_=_|0,DA(o[A>>2]|0,o[_>>2]|0)}function nN(A,_){A=A|0,_=_|0,uy(o[A>>2]|0,_)}function yx(A,_,S){A=A|0,_=_|0,S=+S,yE(o[A>>2]|0,_,we(S))}function vh(A,_,S){A=A|0,_=_|0,S=+S,gy(o[A>>2]|0,_,we(S))}function iN(A,_){A=A|0,_=_|0,uh(o[A>>2]|0,_)}function Xw(A,_){A=A|0,_=_|0,Sp(o[A>>2]|0,_)}function Va(A,_){A=A|0,_=_|0,D0(o[A>>2]|0,_)}function BA(A,_){A=A|0,_=_|0,I1(o[A>>2]|0,_)}function _d(A,_){A=A|0,_=_|0,E_(o[A>>2]|0,_)}function iI(A,_){A=A|0,_=_|0,tA(o[A>>2]|0,_)}function Z0(A,_,S){A=A|0,_=_|0,S=+S,w(o[A>>2]|0,_,we(S))}function _B(A,_,S){A=A|0,_=_|0,S=+S,J(o[A>>2]|0,_,we(S))}function Op(A,_){A=A|0,_=_|0,ut(o[A>>2]|0,_)}function BS(A,_){A=A|0,_=_|0,gm(o[A>>2]|0,_)}function pm(A,_){A=A|0,_=_|0,fg(o[A>>2]|0,_)}function e_(A,_){A=A|0,_=+_,Nb(o[A>>2]|0,we(_))}function v_(A,_){A=A|0,_=+_,Bf(o[A>>2]|0,we(_))}function f2(A,_){A=A|0,_=+_,tI(o[A>>2]|0,we(_))}function yB(A,_){A=A|0,_=+_,Dm(o[A>>2]|0,we(_))}function vS(A,_){A=A|0,_=+_,OI(o[A>>2]|0,we(_))}function Ev(A,_){A=A|0,_=+_,Wo(o[A>>2]|0,we(_))}function Sh(A,_){A=A|0,_=+_,Ic(o[A>>2]|0,we(_))}function Po(A){A=A|0,Jc(o[A>>2]|0)}function Ky(A,_){A=A|0,_=+_,bu(o[A>>2]|0,we(_))}function Fb(A,_){A=A|0,_=+_,ap(o[A>>2]|0,we(_))}function NI(A){A=A|0,uA(o[A>>2]|0)}function z_(A,_){A=A|0,_=+_,jd(o[A>>2]|0,we(_))}function I2(A,_){A=A|0,_=+_,x0(o[A>>2]|0,we(_))}function E1(A,_){A=A|0,_=+_,hd(o[A>>2]|0,we(_))}function B1(A,_){A=A|0,_=+_,II(o[A>>2]|0,we(_))}function L0(A,_){A=A|0,_=+_,Kh(o[A>>2]|0,we(_))}function wh(A,_){A=A|0,_=+_,Ym(o[A>>2]|0,we(_))}function V0(A,_){A=A|0,_=+_,mS(o[A>>2]|0,we(_))}function yd(A,_){A=A|0,_=+_,bE(o[A>>2]|0,we(_))}function Bv(A,_){A=A|0,_=+_,EE(o[A>>2]|0,we(_))}function $u(A,_,S){A=A|0,_=_|0,S=+S,Hn(o[A>>2]|0,_,we(S))}function dC(A,_,S){A=A|0,_=_|0,S=+S,zt(o[A>>2]|0,_,we(S))}function v1(A,_,S){A=A|0,_=_|0,S=+S,Zr(o[A>>2]|0,_,we(S))}function C2(A){return A=A|0,uc(o[A>>2]|0)|0}function wp(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0;F=T,T=T+16|0,H=F,ie(H,o[_>>2]|0,S),tC(A,H),T=F}function tC(A,_){A=A|0,_=_|0,bd(A,o[_+4>>2]|0,+we(m[_>>2]))}function bd(A,_,S){A=A|0,_=_|0,S=+S,o[A>>2]=_,y[A+8>>3]=S}function W0(A){return A=A|0,Qy(o[A>>2]|0)|0}function CI(A){return A=A|0,rA(o[A>>2]|0)|0}function Qp(A){return A=A|0,yh(o[A>>2]|0)|0}function P0(A){return A=A|0,Iv(o[A>>2]|0)|0}function S1(A){return A=A|0,Tb(o[A>>2]|0)|0}function Ad(A){return A=A|0,Rm(o[A>>2]|0)|0}function fp(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0;F=T,T=T+16|0,H=F,ye(H,o[_>>2]|0,S),tC(A,H),T=F}function S_(A){return A=A|0,gh(o[A>>2]|0)|0}function SS(A){return A=A|0,Am(o[A>>2]|0)|0}function bB(A,_){A=A|0,_=_|0;var S=0,F=0;S=T,T=T+16|0,F=S,Lf(F,o[_>>2]|0),tC(A,F),T=S}function q_(A){return A=A|0,+ +we(Rd(o[A>>2]|0))}function t_(A){return A=A|0,+ +we(PI(o[A>>2]|0))}function oa(A,_){A=A|0,_=_|0;var S=0,F=0;S=T,T=T+16|0,F=S,Mo(F,o[_>>2]|0),tC(A,F),T=S}function kA(A,_){A=A|0,_=_|0;var S=0,F=0;S=T,T=T+16|0,F=S,rI(F,o[_>>2]|0),tC(A,F),T=S}function lZ(A,_){A=A|0,_=_|0;var S=0,F=0;S=T,T=T+16|0,F=S,ha(F,o[_>>2]|0),tC(A,F),T=S}function ZR(A,_){A=A|0,_=_|0;var S=0,F=0;S=T,T=T+16|0,F=S,vf(F,o[_>>2]|0),tC(A,F),T=S}function NE(A,_){A=A|0,_=_|0;var S=0,F=0;S=T,T=T+16|0,F=S,CS(F,o[_>>2]|0),tC(A,F),T=S}function LR(A,_){A=A|0,_=_|0;var S=0,F=0;S=T,T=T+16|0,F=S,k0(F,o[_>>2]|0),tC(A,F),T=S}function dd(A){return A=A|0,+ +we(hB(o[A>>2]|0))}function Iy(A,_){return A=A|0,_=_|0,+ +we(Dn(o[A>>2]|0,_))}function df(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0;F=T,T=T+16|0,H=F,wr(H,o[_>>2]|0,S),tC(A,H),T=F}function rC(A,_,S){A=A|0,_=_|0,S=S|0,ql(o[A>>2]|0,o[_>>2]|0,S)}function Do(A,_){A=A|0,_=_|0,um(o[A>>2]|0,o[_>>2]|0)}function $_(A){return A=A|0,yl(o[A>>2]|0)|0}function Ah(A){return A=A|0,A=Us(o[A>>2]|0)|0,A?A=rN(A)|0:A=0,A|0}function Qc(A,_){return A=A|0,_=_|0,A=Qg(o[A>>2]|0,_)|0,A?A=rN(A)|0:A=0,A|0}function Mc(A,_){A=A|0,_=_|0;var S=0,F=0;F=ku(4)|0,sN(F,_),S=A+4|0,_=o[S>>2]|0,o[S>>2]=F,_|0&&(Uy(_),La(_)),Ro(o[A>>2]|0,1)}function sN(A,_){A=A|0,_=_|0,sI(A,_)}function wS(A,_,S,F,H,Y){A=A|0,_=_|0,S=we(S),F=F|0,H=we(H),Y=Y|0;var oe=0,Se=0;oe=T,T=T+16|0,Se=oe,AA(Se,Hm(_)|0,+S,F,+H,Y),m[A>>2]=we(+y[Se>>3]),m[A+4>>2]=we(+y[Se+8>>3]),T=oe}function AA(A,_,S,F,H,Y){A=A|0,_=_|0,S=+S,F=F|0,H=+H,Y=Y|0;var oe=0,Se=0,Ye=0,Ct=0,At=0;oe=T,T=T+32|0,At=oe+8|0,Ct=oe+20|0,Ye=oe,Se=oe+16|0,y[At>>3]=S,o[Ct>>2]=F,y[Ye>>3]=H,o[Se>>2]=Y,w_(A,o[_+4>>2]|0,At,Ct,Ye,Se),T=oe}function w_(A,_,S,F,H,Y){A=A|0,_=_|0,S=S|0,F=F|0,H=H|0,Y=Y|0;var oe=0,Se=0;oe=T,T=T+16|0,Se=oe,YS(Se),_=dA(_)|0,jy(A,_,+y[S>>3],o[F>>2]|0,+y[H>>3],o[Y>>2]|0),x2(Se),T=oe}function dA(A){return A=A|0,o[A>>2]|0}function jy(A,_,S,F,H,Y){A=A|0,_=_|0,S=+S,F=F|0,H=+H,Y=Y|0;var oe=0;oe=Cy(w1()|0)|0,S=+Th(S),F=TS(F)|0,H=+Th(H),Jw(A,ec(0,oe|0,_|0,+S,F|0,+H,TS(Y)|0)|0)}function w1(){var A=0;return s[7608]|0||(RE(9120),A=7608,o[A>>2]=1,o[A+4>>2]=0),9120}function Cy(A){return A=A|0,o[A+8>>2]|0}function Th(A){return A=+A,+ +Ip(A)}function TS(A){return A=A|0,m2(A)|0}function Jw(A,_){A=A|0,_=_|0;var S=0,F=0,H=0;H=T,T=T+32|0,S=H,F=_,F&1?(pC(S,0),lf(F|0,S|0)|0,dh(A,S),vg(S)):(o[A>>2]=o[_>>2],o[A+4>>2]=o[_+4>>2],o[A+8>>2]=o[_+8>>2],o[A+12>>2]=o[_+12>>2]),T=H}function pC(A,_){A=A|0,_=_|0,Nh(A,_),o[A+8>>2]=0,s[A+24>>0]=0}function dh(A,_){A=A|0,_=_|0,_=_+8|0,o[A>>2]=o[_>>2],o[A+4>>2]=o[_+4>>2],o[A+8>>2]=o[_+8>>2],o[A+12>>2]=o[_+12>>2]}function vg(A){A=A|0,s[A+24>>0]=0}function Nh(A,_){A=A|0,_=_|0,o[A>>2]=_}function m2(A){return A=A|0,A|0}function Ip(A){return A=+A,+A}function RE(A){A=A|0,km(A,T1()|0,4)}function T1(){return 1064}function km(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,o[A+4>>2]=S,o[A+8>>2]=Wd(_|0,S+1|0)|0}function sI(A,_){A=A|0,_=_|0,_=o[_>>2]|0,o[A>>2]=_,qs(_|0)}function NS(A){A=A|0;var _=0,S=0;S=A+4|0,_=o[S>>2]|0,o[S>>2]=0,_|0&&(Uy(_),La(_)),Ro(o[A>>2]|0,0)}function $(A){A=A|0,Li(o[A>>2]|0)}function Z(A){return A=A|0,Ll(o[A>>2]|0)|0}function MI(A,_,S,F){A=A|0,_=+_,S=+S,F=F|0,xm(o[A>>2]|0,we(_),we(S),F)}function VR(A){return A=A|0,+ +we(U_(o[A>>2]|0))}function G(A){return A=A|0,+ +we(K_(o[A>>2]|0))}function L(A){return A=A|0,+ +we(bh(o[A>>2]|0))}function ee(A){return A=A|0,+ +we($l(o[A>>2]|0))}function ve(A){return A=A|0,+ +we(DC(o[A>>2]|0))}function xe(A){return A=A|0,+ +we(jl(o[A>>2]|0))}function gt(A,_){A=A|0,_=_|0,y[A>>3]=+we(U_(o[_>>2]|0)),y[A+8>>3]=+we(K_(o[_>>2]|0)),y[A+16>>3]=+we(bh(o[_>>2]|0)),y[A+24>>3]=+we($l(o[_>>2]|0)),y[A+32>>3]=+we(DC(o[_>>2]|0)),y[A+40>>3]=+we(jl(o[_>>2]|0))}function nr(A,_){return A=A|0,_=_|0,+ +we(cp(o[A>>2]|0,_))}function Xr(A,_){return A=A|0,_=_|0,+ +we(gg(o[A>>2]|0,_))}function Kn(A,_){return A=A|0,_=_|0,+ +we(Xm(o[A>>2]|0,_))}function eo(){return Pp()|0}function Ga(){tl(),bo(),Sg(),id(),YC(),Sn()}function tl(){CDe(11713,4938,1)}function bo(){kme(10448)}function Sg(){See(10408)}function id(){$d(10324)}function YC(){Y3(10096)}function Sn(){vr(9132)}function vr(A){A=A|0;var _=0,S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0,Is=0,ji=0,Ei=0,yo=0,to=0,aa=0,as=0,hs=0,wl=0,sd=0,Nu=0,rg=0,tp=0,Wg=0,Wu=0,hl=0,Cf=0,ru=0,fo=0,_A=0,lu=0,qS=0,W1=0,hV=0,ZC=0,PA=0,Id=0,tP=0,nD=0,mf=0,Mb=0,GB=0,Qx=0,ro=0,vN=0,Mx=0,Hx=0,fh=0,rp=0,tf=0,k_=0,$S=0,kG=0,sT=0,SN=0,rP=0,GG=0,PE=0,Hb=0,Yx=0,hc=0,Dp=0,Zv=0,Xf=0,X0=0,GZ=0,FZ=0,FB=0,iD=0,P1=0,FG=0,nP=0,G_=0,_V=0,Bd=0,iC=0,Z2=0,ab=0,ew=0,js=0,bl=0,hp=0;_=T,T=T+672|0,S=_+656|0,hp=_+648|0,bl=_+640|0,js=_+632|0,ew=_+624|0,ab=_+616|0,Z2=_+608|0,iC=_+600|0,Bd=_+592|0,_V=_+584|0,G_=_+576|0,nP=_+568|0,FG=_+560|0,P1=_+552|0,iD=_+544|0,FB=_+536|0,FZ=_+528|0,GZ=_+520|0,X0=_+512|0,Xf=_+504|0,Zv=_+496|0,Dp=_+488|0,hc=_+480|0,Yx=_+472|0,Hb=_+464|0,PE=_+456|0,GG=_+448|0,rP=_+440|0,SN=_+432|0,sT=_+424|0,kG=_+416|0,$S=_+408|0,k_=_+400|0,tf=_+392|0,rp=_+384|0,fh=_+376|0,Hx=_+368|0,Mx=_+360|0,vN=_+352|0,ro=_+344|0,Qx=_+336|0,GB=_+328|0,Mb=_+320|0,mf=_+312|0,nD=_+304|0,tP=_+296|0,Id=_+288|0,PA=_+280|0,ZC=_+272|0,hV=_+264|0,W1=_+256|0,qS=_+248|0,lu=_+240|0,_A=_+232|0,fo=_+224|0,ru=_+216|0,Cf=_+208|0,hl=_+200|0,Wu=_+192|0,Wg=_+184|0,tp=_+176|0,rg=_+168|0,Nu=_+160|0,sd=_+152|0,wl=_+144|0,hs=_+136|0,as=_+128|0,aa=_+120|0,to=_+112|0,yo=_+104|0,Ei=_+96|0,ji=_+88|0,Is=_+80|0,cn=_+72|0,Ut=_+64|0,At=_+56|0,Ct=_+48|0,Ye=_+40|0,Se=_+32|0,oe=_+24|0,Y=_+16|0,H=_+8|0,F=_,Yn(A,3646),Go(A,3651,2)|0,tc(A,3665,2)|0,pA(A,3682,18)|0,o[hp>>2]=19,o[hp+4>>2]=0,o[S>>2]=o[hp>>2],o[S+4>>2]=o[hp+4>>2],fc(A,3690,S)|0,o[bl>>2]=1,o[bl+4>>2]=0,o[S>>2]=o[bl>>2],o[S+4>>2]=o[bl+4>>2],Ju(A,3696,S)|0,o[js>>2]=2,o[js+4>>2]=0,o[S>>2]=o[js>>2],o[S+4>>2]=o[js+4>>2],Vu(A,3706,S)|0,o[ew>>2]=1,o[ew+4>>2]=0,o[S>>2]=o[ew>>2],o[S+4>>2]=o[ew+4>>2],Dc(A,3722,S)|0,o[ab>>2]=2,o[ab+4>>2]=0,o[S>>2]=o[ab>>2],o[S+4>>2]=o[ab+4>>2],Dc(A,3734,S)|0,o[Z2>>2]=3,o[Z2+4>>2]=0,o[S>>2]=o[Z2>>2],o[S+4>>2]=o[Z2+4>>2],Vu(A,3753,S)|0,o[iC>>2]=4,o[iC+4>>2]=0,o[S>>2]=o[iC>>2],o[S+4>>2]=o[iC+4>>2],Vu(A,3769,S)|0,o[Bd>>2]=5,o[Bd+4>>2]=0,o[S>>2]=o[Bd>>2],o[S+4>>2]=o[Bd+4>>2],Vu(A,3783,S)|0,o[_V>>2]=6,o[_V+4>>2]=0,o[S>>2]=o[_V>>2],o[S+4>>2]=o[_V+4>>2],Vu(A,3796,S)|0,o[G_>>2]=7,o[G_+4>>2]=0,o[S>>2]=o[G_>>2],o[S+4>>2]=o[G_+4>>2],Vu(A,3813,S)|0,o[nP>>2]=8,o[nP+4>>2]=0,o[S>>2]=o[nP>>2],o[S+4>>2]=o[nP+4>>2],Vu(A,3825,S)|0,o[FG>>2]=3,o[FG+4>>2]=0,o[S>>2]=o[FG>>2],o[S+4>>2]=o[FG+4>>2],Dc(A,3843,S)|0,o[P1>>2]=4,o[P1+4>>2]=0,o[S>>2]=o[P1>>2],o[S+4>>2]=o[P1+4>>2],Dc(A,3853,S)|0,o[iD>>2]=9,o[iD+4>>2]=0,o[S>>2]=o[iD>>2],o[S+4>>2]=o[iD+4>>2],Vu(A,3870,S)|0,o[FB>>2]=10,o[FB+4>>2]=0,o[S>>2]=o[FB>>2],o[S+4>>2]=o[FB+4>>2],Vu(A,3884,S)|0,o[FZ>>2]=11,o[FZ+4>>2]=0,o[S>>2]=o[FZ>>2],o[S+4>>2]=o[FZ+4>>2],Vu(A,3896,S)|0,o[GZ>>2]=1,o[GZ+4>>2]=0,o[S>>2]=o[GZ>>2],o[S+4>>2]=o[GZ+4>>2],Mp(A,3907,S)|0,o[X0>>2]=2,o[X0+4>>2]=0,o[S>>2]=o[X0>>2],o[S+4>>2]=o[X0+4>>2],Mp(A,3915,S)|0,o[Xf>>2]=3,o[Xf+4>>2]=0,o[S>>2]=o[Xf>>2],o[S+4>>2]=o[Xf+4>>2],Mp(A,3928,S)|0,o[Zv>>2]=4,o[Zv+4>>2]=0,o[S>>2]=o[Zv>>2],o[S+4>>2]=o[Zv+4>>2],Mp(A,3948,S)|0,o[Dp>>2]=5,o[Dp+4>>2]=0,o[S>>2]=o[Dp>>2],o[S+4>>2]=o[Dp+4>>2],Mp(A,3960,S)|0,o[hc>>2]=6,o[hc+4>>2]=0,o[S>>2]=o[hc>>2],o[S+4>>2]=o[hc+4>>2],Mp(A,3974,S)|0,o[Yx>>2]=7,o[Yx+4>>2]=0,o[S>>2]=o[Yx>>2],o[S+4>>2]=o[Yx+4>>2],Mp(A,3983,S)|0,o[Hb>>2]=20,o[Hb+4>>2]=0,o[S>>2]=o[Hb>>2],o[S+4>>2]=o[Hb+4>>2],fc(A,3999,S)|0,o[PE>>2]=8,o[PE+4>>2]=0,o[S>>2]=o[PE>>2],o[S+4>>2]=o[PE+4>>2],Mp(A,4012,S)|0,o[GG>>2]=9,o[GG+4>>2]=0,o[S>>2]=o[GG>>2],o[S+4>>2]=o[GG+4>>2],Mp(A,4022,S)|0,o[rP>>2]=21,o[rP+4>>2]=0,o[S>>2]=o[rP>>2],o[S+4>>2]=o[rP+4>>2],fc(A,4039,S)|0,o[SN>>2]=10,o[SN+4>>2]=0,o[S>>2]=o[SN>>2],o[S+4>>2]=o[SN+4>>2],Mp(A,4053,S)|0,o[sT>>2]=11,o[sT+4>>2]=0,o[S>>2]=o[sT>>2],o[S+4>>2]=o[sT+4>>2],Mp(A,4065,S)|0,o[kG>>2]=12,o[kG+4>>2]=0,o[S>>2]=o[kG>>2],o[S+4>>2]=o[kG+4>>2],Mp(A,4084,S)|0,o[$S>>2]=13,o[$S+4>>2]=0,o[S>>2]=o[$S>>2],o[S+4>>2]=o[$S+4>>2],Mp(A,4097,S)|0,o[k_>>2]=14,o[k_+4>>2]=0,o[S>>2]=o[k_>>2],o[S+4>>2]=o[k_+4>>2],Mp(A,4117,S)|0,o[tf>>2]=15,o[tf+4>>2]=0,o[S>>2]=o[tf>>2],o[S+4>>2]=o[tf+4>>2],Mp(A,4129,S)|0,o[rp>>2]=16,o[rp+4>>2]=0,o[S>>2]=o[rp>>2],o[S+4>>2]=o[rp+4>>2],Mp(A,4148,S)|0,o[fh>>2]=17,o[fh+4>>2]=0,o[S>>2]=o[fh>>2],o[S+4>>2]=o[fh+4>>2],Mp(A,4161,S)|0,o[Hx>>2]=18,o[Hx+4>>2]=0,o[S>>2]=o[Hx>>2],o[S+4>>2]=o[Hx+4>>2],Mp(A,4181,S)|0,o[Mx>>2]=5,o[Mx+4>>2]=0,o[S>>2]=o[Mx>>2],o[S+4>>2]=o[Mx+4>>2],Dc(A,4196,S)|0,o[vN>>2]=6,o[vN+4>>2]=0,o[S>>2]=o[vN>>2],o[S+4>>2]=o[vN+4>>2],Dc(A,4206,S)|0,o[ro>>2]=7,o[ro+4>>2]=0,o[S>>2]=o[ro>>2],o[S+4>>2]=o[ro+4>>2],Dc(A,4217,S)|0,o[Qx>>2]=3,o[Qx+4>>2]=0,o[S>>2]=o[Qx>>2],o[S+4>>2]=o[Qx+4>>2],zy(A,4235,S)|0,o[GB>>2]=1,o[GB+4>>2]=0,o[S>>2]=o[GB>>2],o[S+4>>2]=o[GB+4>>2],vv(A,4251,S)|0,o[Mb>>2]=4,o[Mb+4>>2]=0,o[S>>2]=o[Mb>>2],o[S+4>>2]=o[Mb+4>>2],zy(A,4263,S)|0,o[mf>>2]=5,o[mf+4>>2]=0,o[S>>2]=o[mf>>2],o[S+4>>2]=o[mf+4>>2],zy(A,4279,S)|0,o[nD>>2]=6,o[nD+4>>2]=0,o[S>>2]=o[nD>>2],o[S+4>>2]=o[nD+4>>2],zy(A,4293,S)|0,o[tP>>2]=7,o[tP+4>>2]=0,o[S>>2]=o[tP>>2],o[S+4>>2]=o[tP+4>>2],zy(A,4306,S)|0,o[Id>>2]=8,o[Id+4>>2]=0,o[S>>2]=o[Id>>2],o[S+4>>2]=o[Id+4>>2],zy(A,4323,S)|0,o[PA>>2]=9,o[PA+4>>2]=0,o[S>>2]=o[PA>>2],o[S+4>>2]=o[PA+4>>2],zy(A,4335,S)|0,o[ZC>>2]=2,o[ZC+4>>2]=0,o[S>>2]=o[ZC>>2],o[S+4>>2]=o[ZC+4>>2],vv(A,4353,S)|0,o[hV>>2]=12,o[hV+4>>2]=0,o[S>>2]=o[hV>>2],o[S+4>>2]=o[hV+4>>2],Vl(A,4363,S)|0,o[W1>>2]=1,o[W1+4>>2]=0,o[S>>2]=o[W1>>2],o[S+4>>2]=o[W1+4>>2],Jm(A,4376,S)|0,o[qS>>2]=2,o[qS+4>>2]=0,o[S>>2]=o[qS>>2],o[S+4>>2]=o[qS+4>>2],Jm(A,4388,S)|0,o[lu>>2]=13,o[lu+4>>2]=0,o[S>>2]=o[lu>>2],o[S+4>>2]=o[lu+4>>2],Vl(A,4402,S)|0,o[_A>>2]=14,o[_A+4>>2]=0,o[S>>2]=o[_A>>2],o[S+4>>2]=o[_A+4>>2],Vl(A,4411,S)|0,o[fo>>2]=15,o[fo+4>>2]=0,o[S>>2]=o[fo>>2],o[S+4>>2]=o[fo+4>>2],Vl(A,4421,S)|0,o[ru>>2]=16,o[ru+4>>2]=0,o[S>>2]=o[ru>>2],o[S+4>>2]=o[ru+4>>2],Vl(A,4433,S)|0,o[Cf>>2]=17,o[Cf+4>>2]=0,o[S>>2]=o[Cf>>2],o[S+4>>2]=o[Cf+4>>2],Vl(A,4446,S)|0,o[hl>>2]=18,o[hl+4>>2]=0,o[S>>2]=o[hl>>2],o[S+4>>2]=o[hl+4>>2],Vl(A,4458,S)|0,o[Wu>>2]=3,o[Wu+4>>2]=0,o[S>>2]=o[Wu>>2],o[S+4>>2]=o[Wu+4>>2],Jm(A,4471,S)|0,o[Wg>>2]=1,o[Wg+4>>2]=0,o[S>>2]=o[Wg>>2],o[S+4>>2]=o[Wg+4>>2],e0(A,4486,S)|0,o[tp>>2]=10,o[tp+4>>2]=0,o[S>>2]=o[tp>>2],o[S+4>>2]=o[tp+4>>2],zy(A,4496,S)|0,o[rg>>2]=11,o[rg+4>>2]=0,o[S>>2]=o[rg>>2],o[S+4>>2]=o[rg+4>>2],zy(A,4508,S)|0,o[Nu>>2]=3,o[Nu+4>>2]=0,o[S>>2]=o[Nu>>2],o[S+4>>2]=o[Nu+4>>2],vv(A,4519,S)|0,o[sd>>2]=4,o[sd+4>>2]=0,o[S>>2]=o[sd>>2],o[S+4>>2]=o[sd+4>>2],XC(A,4530,S)|0,o[wl>>2]=19,o[wl+4>>2]=0,o[S>>2]=o[wl>>2],o[S+4>>2]=o[wl+4>>2],EB(A,4542,S)|0,o[hs>>2]=12,o[hs+4>>2]=0,o[S>>2]=o[hs>>2],o[S+4>>2]=o[hs+4>>2],WR(A,4554,S)|0,o[as>>2]=13,o[as+4>>2]=0,o[S>>2]=o[as>>2],o[S+4>>2]=o[as+4>>2],uG(A,4568,S)|0,o[aa>>2]=2,o[aa+4>>2]=0,o[S>>2]=o[aa>>2],o[S+4>>2]=o[aa+4>>2],S3(A,4578,S)|0,o[to>>2]=20,o[to+4>>2]=0,o[S>>2]=o[to>>2],o[S+4>>2]=o[to+4>>2],uZ(A,4587,S)|0,o[yo>>2]=22,o[yo+4>>2]=0,o[S>>2]=o[yo>>2],o[S+4>>2]=o[yo+4>>2],fc(A,4602,S)|0,o[Ei>>2]=23,o[Ei+4>>2]=0,o[S>>2]=o[Ei>>2],o[S+4>>2]=o[Ei+4>>2],fc(A,4619,S)|0,o[ji>>2]=14,o[ji+4>>2]=0,o[S>>2]=o[ji>>2],o[S+4>>2]=o[ji+4>>2],oN(A,4629,S)|0,o[Is>>2]=1,o[Is+4>>2]=0,o[S>>2]=o[Is>>2],o[S+4>>2]=o[Is+4>>2],Uu(A,4637,S)|0,o[cn>>2]=4,o[cn+4>>2]=0,o[S>>2]=o[cn>>2],o[S+4>>2]=o[cn+4>>2],Jm(A,4653,S)|0,o[Ut>>2]=5,o[Ut+4>>2]=0,o[S>>2]=o[Ut>>2],o[S+4>>2]=o[Ut+4>>2],Jm(A,4669,S)|0,o[At>>2]=6,o[At+4>>2]=0,o[S>>2]=o[At>>2],o[S+4>>2]=o[At+4>>2],Jm(A,4686,S)|0,o[Ct>>2]=7,o[Ct+4>>2]=0,o[S>>2]=o[Ct>>2],o[S+4>>2]=o[Ct+4>>2],Jm(A,4701,S)|0,o[Ye>>2]=8,o[Ye+4>>2]=0,o[S>>2]=o[Ye>>2],o[S+4>>2]=o[Ye+4>>2],Jm(A,4719,S)|0,o[Se>>2]=9,o[Se+4>>2]=0,o[S>>2]=o[Se>>2],o[S+4>>2]=o[Se+4>>2],Jm(A,4736,S)|0,o[oe>>2]=21,o[oe+4>>2]=0,o[S>>2]=o[oe>>2],o[S+4>>2]=o[oe+4>>2],P9(A,4754,S)|0,o[Y>>2]=2,o[Y+4>>2]=0,o[S>>2]=o[Y>>2],o[S+4>>2]=o[Y+4>>2],e0(A,4772,S)|0,o[H>>2]=3,o[H+4>>2]=0,o[S>>2]=o[H>>2],o[S+4>>2]=o[H+4>>2],e0(A,4790,S)|0,o[F>>2]=4,o[F+4>>2]=0,o[S>>2]=o[F>>2],o[S+4>>2]=o[F+4>>2],e0(A,4808,S)|0,T=_}function Yn(A,_){A=A|0,_=_|0;var S=0;S=x5()|0,o[A>>2]=S,vZ(S,_),O5(o[A>>2]|0)}function Go(A,_,S){return A=A|0,_=_|0,S=S|0,io(A,Tp(_)|0,S,0),A|0}function tc(A,_,S){return A=A|0,_=_|0,S=S|0,$$(A,Tp(_)|0,S,0),A|0}function pA(A,_,S){return A=A|0,_=_|0,S=S|0,Ob(A,Tp(_)|0,S,0),A|0}function fc(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return F=T,T=T+16|0,H=F+8|0,Y=F,oe=o[S+4>>2]|0,o[Y>>2]=o[S>>2],o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],DRe(A,_,H),T=F,A|0}function Ju(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return F=T,T=T+16|0,H=F+8|0,Y=F,oe=o[S+4>>2]|0,o[Y>>2]=o[S>>2],o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],fC(A,_,H),T=F,A|0}function Vu(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return F=T,T=T+16|0,H=F+8|0,Y=F,oe=o[S+4>>2]|0,o[Y>>2]=o[S>>2],o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],ne(A,_,H),T=F,A|0}function Dc(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return F=T,T=T+16|0,H=F+8|0,Y=F,oe=o[S+4>>2]|0,o[Y>>2]=o[S>>2],o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],G8(A,_,H),T=F,A|0}function Mp(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return F=T,T=T+16|0,H=F+8|0,Y=F,oe=o[S+4>>2]|0,o[Y>>2]=o[S>>2],o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],O$(A,_,H),T=F,A|0}function zy(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return F=T,T=T+16|0,H=F+8|0,Y=F,oe=o[S+4>>2]|0,o[Y>>2]=o[S>>2],o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],hG(A,_,H),T=F,A|0}function vv(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return F=T,T=T+16|0,H=F+8|0,Y=F,oe=o[S+4>>2]|0,o[Y>>2]=o[S>>2],o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],tce(A,_,H),T=F,A|0}function Vl(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return F=T,T=T+16|0,H=F+8|0,Y=F,oe=o[S+4>>2]|0,o[Y>>2]=o[S>>2],o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],b5(A,_,H),T=F,A|0}function Jm(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return F=T,T=T+16|0,H=F+8|0,Y=F,oe=o[S+4>>2]|0,o[Y>>2]=o[S>>2],o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],J9(A,_,H),T=F,A|0}function e0(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return F=T,T=T+16|0,H=F+8|0,Y=F,oe=o[S+4>>2]|0,o[Y>>2]=o[S>>2],o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],Nv(A,_,H),T=F,A|0}function XC(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return F=T,T=T+16|0,H=F+8|0,Y=F,oe=o[S+4>>2]|0,o[Y>>2]=o[S>>2],o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],tn(A,_,H),T=F,A|0}function EB(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return F=T,T=T+16|0,H=F+8|0,Y=F,oe=o[S+4>>2]|0,o[Y>>2]=o[S>>2],o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],fu(A,_,H),T=F,A|0}function WR(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return F=T,T=T+16|0,H=F+8|0,Y=F,oe=o[S+4>>2]|0,o[Y>>2]=o[S>>2],o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],eu(A,_,H),T=F,A|0}function uG(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return F=T,T=T+16|0,H=F+8|0,Y=F,oe=o[S+4>>2]|0,o[Y>>2]=o[S>>2],o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],I8(A,_,H),T=F,A|0}function S3(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return F=T,T=T+16|0,H=F+8|0,Y=F,oe=o[S+4>>2]|0,o[Y>>2]=o[S>>2],o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],IX(A,_,H),T=F,A|0}function uZ(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return F=T,T=T+16|0,H=F+8|0,Y=F,oe=o[S+4>>2]|0,o[Y>>2]=o[S>>2],o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],R1(A,_,H),T=F,A|0}function oN(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return F=T,T=T+16|0,H=F+8|0,Y=F,oe=o[S+4>>2]|0,o[Y>>2]=o[S>>2],o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],Kw(A,_,H),T=F,A|0}function Uu(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return F=T,T=T+16|0,H=F+8|0,Y=F,oe=o[S+4>>2]|0,o[Y>>2]=o[S>>2],o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],IA(A,_,H),T=F,A|0}function P9(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return F=T,T=T+16|0,H=F+8|0,Y=F,oe=o[S+4>>2]|0,o[Y>>2]=o[S>>2],o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],aN(A,_,H),T=F,A|0}function aN(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0;F=T,T=T+16|0,H=F+8|0,Y=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=Tp(_)|0,o[Y>>2]=Se,o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],cN(A,S,H,1),T=F}function Tp(A){return A=A|0,A|0}function cN(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;H=T,T=T+32|0,Y=H+16|0,At=H+8|0,Se=H,Ct=o[S>>2]|0,Ye=o[S+4>>2]|0,oe=o[A>>2]|0,A=gZ()|0,o[At>>2]=Ct,o[At+4>>2]=Ye,o[Y>>2]=o[At>>2],o[Y+4>>2]=o[At+4>>2],S=gG(Y)|0,o[Se>>2]=Ct,o[Se+4>>2]=Ye,o[Y>>2]=o[Se>>2],o[Y+4>>2]=o[Se+4>>2],Sf(oe,_,A,S,RS(Y,F)|0,F),T=H}function gZ(){var A=0,_=0;if(s[7616]|0||(Ft(9136),cu(24,9136,U|0)|0,_=7616,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9136)|0)){A=9136,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));Ft(9136)}return 9136}function gG(A){return A=A|0,0}function RS(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,H=At+24|0,oe=At+16|0,Se=At,Ye=At+8|0,Y=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=Y,o[Se+4>>2]=F,Ut=gZ()|0,Ct=Ut+24|0,A=cg(_,4)|0,o[Ye>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=Y,o[oe+4>>2]=F,o[H>>2]=o[oe>>2],o[H+4>>2]=o[oe+4>>2],Zb(S,H,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(h2(Ct,Se,Ye),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function Sf(A,_,S,F,H,Y){A=A|0,_=_|0,S=S|0,F=F|0,H=H|0,Y=Y|0;var oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0,Is=0;oe=T,T=T+32|0,cn=oe+24|0,Ut=oe+20|0,Ye=oe+16|0,At=oe+12|0,Ct=oe+8|0,Se=oe+4|0,Is=oe,o[Ut>>2]=_,o[Ye>>2]=S,o[At>>2]=F,o[Ct>>2]=H,o[Se>>2]=Y,Y=A+28|0,o[Is>>2]=o[Y>>2],o[cn>>2]=o[Is>>2],bx(A+24|0,cn,Ut,At,Ct,Ye,Se)|0,o[Y>>2]=o[o[Y>>2]>>2],T=oe}function bx(A,_,S,F,H,Y,oe){return A=A|0,_=_|0,S=S|0,F=F|0,H=H|0,Y=Y|0,oe=oe|0,A=Ex(_)|0,_=ku(24)|0,AZ(_+4|0,o[S>>2]|0,o[F>>2]|0,o[H>>2]|0,o[Y>>2]|0,o[oe>>2]|0),o[_>>2]=o[A>>2],o[A>>2]=_,_|0}function Ex(A){return A=A|0,o[A>>2]|0}function AZ(A,_,S,F,H,Y){A=A|0,_=_|0,S=S|0,F=F|0,H=H|0,Y=Y|0,o[A>>2]=_,o[A+4>>2]=S,o[A+8>>2]=F,o[A+12>>2]=H,o[A+16>>2]=Y}function cg(A,_){return A=A|0,_=_|0,_|A|0}function Zb(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function h2(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,Ye=A+4|0,H=(((o[Ye>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,Y=AG(A)|0,Y>>>0>>0)DI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,qy(Se,cn>>>0>>1>>>0?Ut>>>0>>0?H:Ut:Y,((o[Ye>>2]|0)-At|0)/12|0,A+8|0),Ye=Se+8|0,Y=o[Ye>>2]|0,H=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=H,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],Zb(Y,F,S),o[Ye>>2]=(o[Ye>>2]|0)+12,_2(A,Se),Ke(Se),T=Ct;return}}function AG(A){return A=A|0,357913941}function qy(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Eo();else{H=ku(_*12|0)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_*12|0)}function _2(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(((H|0)/-12|0)*12|0)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function Ke(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&La(A)}function Ft(A){A=A|0,Ki(A)}function Er(A){A=A|0,Un(A+24|0)}function Jr(A){return A=A|0,o[A>>2]|0}function Un(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),La(S))}function Ki(A){A=A|0;var _=0;_=Ss()|0,Ks(A,2,3,_,Bo()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function Ss(){return 9228}function Bo(){return 1140}function Wa(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0;return S=T,T=T+16|0,F=S+8|0,H=S,Y=kc(A)|0,A=o[Y+4>>2]|0,o[H>>2]=o[Y>>2],o[H+4>>2]=A,o[F>>2]=o[H>>2],o[F+4>>2]=o[H+4>>2],_=Ul(_,F)|0,T=S,_|0}function Ks(A,_,S,F,H,Y){A=A|0,_=_|0,S=S|0,F=F|0,H=H|0,Y=Y|0,o[A>>2]=_,o[A+4>>2]=S,o[A+8>>2]=F,o[A+12>>2]=H,o[A+16>>2]=Y}function kc(A){return A=A|0,(o[(gZ()|0)+24>>2]|0)+(A*12|0)|0}function Ul(A,_){A=A|0,_=_|0;var S=0,F=0,H=0;return H=T,T=T+48|0,F=H,S=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(S=o[(o[A>>2]|0)+S>>2]|0),iT[S&31](F,A),F=iA(F)|0,T=H,F|0}function iA(A){A=A|0;var _=0,S=0,F=0,H=0;return H=T,T=T+32|0,_=H+12|0,S=H,F=Ku(Cg()|0)|0,F?(DE(_,F),my(S,_),y2(A,S),A=b2(_)|0):A=PR(A)|0,T=H,A|0}function Cg(){var A=0;return s[7632]|0||(Ce(9184),cu(25,9184,U|0)|0,A=7632,o[A>>2]=1,o[A+4>>2]=0),9184}function Ku(A){return A=A|0,o[A+36>>2]|0}function DE(A,_){A=A|0,_=_|0,o[A>>2]=_,o[A+4>>2]=A,o[A+8>>2]=0}function my(A,_){A=A|0,_=_|0,o[A>>2]=o[_>>2],o[A+4>>2]=o[_+4>>2],o[A+8>>2]=0}function y2(A,_){A=A|0,_=_|0,hy(_,A,A+8|0,A+16|0,A+24|0,A+32|0,A+40|0)|0}function b2(A){return A=A|0,o[(o[A+4>>2]|0)+8>>2]|0}function PR(A){A=A|0;var _=0,S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0;Ye=T,T=T+16|0,S=Ye+4|0,F=Ye,H=mN(8)|0,Y=H,oe=ku(48)|0,Se=oe,_=Se+48|0;do o[Se>>2]=o[A>>2],Se=Se+4|0,A=A+4|0;while((Se|0)<(_|0));return _=Y+4|0,o[_>>2]=oe,Se=ku(8)|0,oe=o[_>>2]|0,o[F>>2]=0,o[S>>2]=o[F>>2],w3(Se,oe,S),o[H>>2]=Se,T=Ye,Y|0}function w3(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,S=ku(16)|0,o[S+4>>2]=0,o[S+8>>2]=0,o[S>>2]=1092,o[S+12>>2]=_,o[A+4>>2]=S}function fA(A){A=A|0,l4(A),La(A)}function oI(A){A=A|0,A=o[A+12>>2]|0,A|0&&La(A)}function t0(A){A=A|0,La(A)}function hy(A,_,S,F,H,Y,oe){return A=A|0,_=_|0,S=S|0,F=F|0,H=H|0,Y=Y|0,oe=oe|0,Y=dZ(o[A>>2]|0,_,S,F,H,Y,oe)|0,oe=A+4|0,o[(o[oe>>2]|0)+8>>2]=Y,o[(o[oe>>2]|0)+8>>2]|0}function dZ(A,_,S,F,H,Y,oe){A=A|0,_=_|0,S=S|0,F=F|0,H=H|0,Y=Y|0,oe=oe|0;var Se=0,Ye=0;return Se=T,T=T+16|0,Ye=Se,YS(Ye),A=dA(A)|0,oe=Ed(A,+y[_>>3],+y[S>>3],+y[F>>3],+y[H>>3],+y[Y>>3],+y[oe>>3])|0,x2(Ye),T=Se,oe|0}function Ed(A,_,S,F,H,Y,oe){A=A|0,_=+_,S=+S,F=+F,H=+H,Y=+Y,oe=+oe;var Se=0;return Se=Cy(Pd()|0)|0,_=+Th(_),S=+Th(S),F=+Th(F),H=+Th(H),Y=+Th(Y),$i(0,Se|0,A|0,+_,+S,+F,+H,+Y,+ +Th(oe))|0}function Pd(){var A=0;return s[7624]|0||(Ms(9172),A=7624,o[A>>2]=1,o[A+4>>2]=0),9172}function Ms(A){A=A|0,km(A,K()|0,6)}function K(){return 1112}function Ce(A){A=A|0,jc(A)}function Ze(A){A=A|0,pt(A+24|0),hr(A+16|0)}function pt(A){A=A|0,_o(A)}function hr(A){A=A|0,Zn(A)}function Zn(A){A=A|0;var _=0,S=0;if(_=o[A>>2]|0,_|0)do S=_,_=o[_>>2]|0,La(S);while(_|0);o[A>>2]=0}function _o(A){A=A|0;var _=0,S=0;if(_=o[A>>2]|0,_|0)do S=_,_=o[_>>2]|0,La(S);while(_|0);o[A>>2]=0}function jc(A){A=A|0;var _=0;o[A+16>>2]=0,o[A+20>>2]=0,_=A+24|0,o[_>>2]=0,o[A+28>>2]=_,o[A+36>>2]=0,s[A+40>>0]=0,s[A+41>>0]=0}function IA(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0;F=T,T=T+16|0,H=F+8|0,Y=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=Tp(_)|0,o[Y>>2]=Se,o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],Lb(A,S,H,0),T=F}function Lb(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;H=T,T=T+32|0,Y=H+16|0,At=H+8|0,Se=H,Ct=o[S>>2]|0,Ye=o[S+4>>2]|0,oe=o[A>>2]|0,A=Rh()|0,o[At>>2]=Ct,o[At+4>>2]=Ye,o[Y>>2]=o[At>>2],o[Y+4>>2]=o[At+4>>2],S=E2(Y)|0,o[Se>>2]=Ct,o[Se+4>>2]=Ye,o[Y>>2]=o[Se>>2],o[Y+4>>2]=o[Se+4>>2],Sf(oe,_,A,S,$y(Y,F)|0,F),T=H}function Rh(){var A=0,_=0;if(s[7640]|0||(zc(9232),cu(26,9232,U|0)|0,_=7640,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9232)|0)){A=9232,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));zc(9232)}return 9232}function E2(A){return A=A|0,0}function $y(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,H=At+24|0,oe=At+16|0,Se=At,Ye=At+8|0,Y=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=Y,o[Se+4>>2]=F,Ut=Rh()|0,Ct=Ut+24|0,A=cg(_,4)|0,o[Ye>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=Y,o[oe+4>>2]=F,o[H>>2]=o[oe>>2],o[H+4>>2]=o[oe+4>>2],T3(S,H,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(N3(Ct,Se,Ye),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function T3(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function N3(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,Ye=A+4|0,H=(((o[Ye>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,Y=c5(A)|0,Y>>>0>>0)DI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,Np(Se,cn>>>0>>1>>>0?Ut>>>0>>0?H:Ut:Y,((o[Ye>>2]|0)-At|0)/12|0,A+8|0),Ye=Se+8|0,Y=o[Ye>>2]|0,H=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=H,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],T3(Y,F,S),o[Ye>>2]=(o[Ye>>2]|0)+12,Si(A,Se),pZ(Se),T=Ct;return}}function c5(A){return A=A|0,357913941}function Np(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Eo();else{H=ku(_*12|0)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_*12|0)}function Si(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(((H|0)/-12|0)*12|0)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function pZ(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&La(A)}function zc(A){A=A|0,oo(A)}function Dd(A){A=A|0,wc(A+24|0)}function wc(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),La(S))}function oo(A){A=A|0;var _=0;_=Ss()|0,Ks(A,2,1,_,QR()|0,3),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function QR(){return 1144}function pf(A,_,S,F,H){A=A|0,_=_|0,S=+S,F=+F,H=H|0;var Y=0,oe=0,Se=0,Ye=0;Y=T,T=T+16|0,oe=Y+8|0,Se=Y,Ye=fZ(A)|0,A=o[Ye+4>>2]|0,o[Se>>2]=o[Ye>>2],o[Se+4>>2]=A,o[oe>>2]=o[Se>>2],o[oe+4>>2]=o[Se+4>>2],l5(_,oe,S,F,H),T=Y}function fZ(A){return A=A|0,(o[(Rh()|0)+24>>2]|0)+(A*12|0)|0}function l5(A,_,S,F,H){A=A|0,_=_|0,S=+S,F=+F,H=H|0;var Y=0,oe=0,Se=0,Ye=0,Ct=0;Ct=T,T=T+16|0,oe=Ct+2|0,Se=Ct+1|0,Ye=Ct,Y=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(Y=o[(o[A>>2]|0)+Y>>2]|0),Sv(oe,S),S=+lN(oe,S),Sv(Se,F),F=+lN(Se,F),wf(Ye,H),Ye=Uw(Ye,H)|0,Vhe[Y&1](A,S,F,Ye),T=Ct}function Sv(A,_){A=A|0,_=+_}function lN(A,_){return A=A|0,_=+_,+ +u5(_)}function wf(A,_){A=A|0,_=_|0}function Uw(A,_){return A=A|0,_=_|0,Sl(_)|0}function Sl(A){return A=A|0,A|0}function u5(A){return A=+A,+A}function Kw(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0;F=T,T=T+16|0,H=F+8|0,Y=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=Tp(_)|0,o[Y>>2]=Se,o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],uN(A,S,H,1),T=F}function uN(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;H=T,T=T+32|0,Y=H+16|0,At=H+8|0,Se=H,Ct=o[S>>2]|0,Ye=o[S+4>>2]|0,oe=o[A>>2]|0,A=g5()|0,o[At>>2]=Ct,o[At+4>>2]=Ye,o[Y>>2]=o[At>>2],o[Y+4>>2]=o[At+4>>2],S=MR(Y)|0,o[Se>>2]=Ct,o[Se+4>>2]=Ye,o[Y>>2]=o[Se>>2],o[Y+4>>2]=o[Se+4>>2],Sf(oe,_,A,S,c8(Y,F)|0,F),T=H}function g5(){var A=0,_=0;if(s[7648]|0||(ss(9268),cu(27,9268,U|0)|0,_=7648,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9268)|0)){A=9268,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));ss(9268)}return 9268}function MR(A){return A=A|0,0}function c8(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,H=At+24|0,oe=At+16|0,Se=At,Ye=At+8|0,Y=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=Y,o[Se+4>>2]=F,Ut=g5()|0,Ct=Ut+24|0,A=cg(_,4)|0,o[Ye>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=Y,o[oe+4>>2]=F,o[H>>2]=o[oe>>2],o[H+4>>2]=o[oe+4>>2],l8(S,H,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(u8(Ct,Se,Ye),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function l8(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function u8(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,Ye=A+4|0,H=(((o[Ye>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,Y=A5(A)|0,Y>>>0>>0)DI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,dG(Se,cn>>>0>>1>>>0?Ut>>>0>>0?H:Ut:Y,((o[Ye>>2]|0)-At|0)/12|0,A+8|0),Ye=Se+8|0,Y=o[Ye>>2]|0,H=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=H,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],l8(Y,F,S),o[Ye>>2]=(o[Ye>>2]|0)+12,g8(A,Se),Bx(Se),T=Ct;return}}function A5(A){return A=A|0,357913941}function dG(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Eo();else{H=ku(_*12|0)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_*12|0)}function g8(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(((H|0)/-12|0)*12|0)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function Bx(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&La(A)}function ss(A){A=A|0,Za(A)}function Ko(A){A=A|0,$o(A+24|0)}function $o(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),La(S))}function Za(A){A=A|0;var _=0;_=Ss()|0,Ks(A,2,4,_,gc()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function gc(){return 1160}function CA(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0;return S=T,T=T+16|0,F=S+8|0,H=S,Y=xd(A)|0,A=o[Y+4>>2]|0,o[H>>2]=o[Y>>2],o[H+4>>2]=A,o[F>>2]=o[H>>2],o[F+4>>2]=o[H+4>>2],_=fm(_,F)|0,T=S,_|0}function xd(A){return A=A|0,(o[(g5()|0)+24>>2]|0)+(A*12|0)|0}function fm(A,_){A=A|0,_=_|0;var S=0;return S=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(S=o[(o[A>>2]|0)+S>>2]|0),N1(gM[S&31](A)|0)|0}function N1(A){return A=A|0,A&1|0}function R1(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0;F=T,T=T+16|0,H=F+8|0,Y=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=Tp(_)|0,o[Y>>2]=Se,o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],Vb(A,S,H,0),T=F}function Vb(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;H=T,T=T+32|0,Y=H+16|0,At=H+8|0,Se=H,Ct=o[S>>2]|0,Ye=o[S+4>>2]|0,oe=o[A>>2]|0,A=BB()|0,o[At>>2]=Ct,o[At+4>>2]=Ye,o[Y>>2]=o[At>>2],o[Y+4>>2]=o[At+4>>2],S=pG(Y)|0,o[Se>>2]=Ct,o[Se+4>>2]=Ye,o[Y>>2]=o[Se>>2],o[Y+4>>2]=o[Se+4>>2],Sf(oe,_,A,S,vx(Y,F)|0,F),T=H}function BB(){var A=0,_=0;if(s[7656]|0||(d5(9304),cu(28,9304,U|0)|0,_=7656,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9304)|0)){A=9304,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));d5(9304)}return 9304}function pG(A){return A=A|0,0}function vx(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,H=At+24|0,oe=At+16|0,Se=At,Ye=At+8|0,Y=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=Y,o[Se+4>>2]=F,Ut=BB()|0,Ct=Ut+24|0,A=cg(_,4)|0,o[Ye>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=Y,o[oe+4>>2]=F,o[H>>2]=o[oe>>2],o[H+4>>2]=o[oe+4>>2],O9(S,H,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(MCe(Ct,Se,Ye),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function O9(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function MCe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,Ye=A+4|0,H=(((o[Ye>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,Y=f$(A)|0,Y>>>0>>0)DI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,Sx(Se,cn>>>0>>1>>>0?Ut>>>0>>0?H:Ut:Y,((o[Ye>>2]|0)-At|0)/12|0,A+8|0),Ye=Se+8|0,Y=o[Ye>>2]|0,H=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=H,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],O9(Y,F,S),o[Ye>>2]=(o[Ye>>2]|0)+12,wx(A,Se),dX(Se),T=Ct;return}}function f$(A){return A=A|0,357913941}function Sx(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Eo();else{H=ku(_*12|0)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_*12|0)}function wx(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(((H|0)/-12|0)*12|0)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function dX(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&La(A)}function d5(A){A=A|0,xE(A)}function Tx(A){A=A|0,HCe(A+24|0)}function HCe(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),La(S))}function xE(A){A=A|0;var _=0;_=Ss()|0,Ks(A,2,5,_,A8()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function A8(){return 1164}function YCe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;F=T,T=T+16|0,H=F+8|0,Y=F,oe=pX(A)|0,A=o[oe+4>>2]|0,o[Y>>2]=o[oe>>2],o[Y+4>>2]=A,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],_Re(_,H,S),T=F}function pX(A){return A=A|0,(o[(BB()|0)+24>>2]|0)+(A*12|0)|0}function _Re(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0;Y=T,T=T+16|0,H=Y,F=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(F=o[(o[A>>2]|0)+F>>2]|0),D1(H,S),S=jw(H,S)|0,iT[F&31](A,S),eb(H),T=Y}function D1(A,_){A=A|0,_=_|0,fX(A,_)}function jw(A,_){return A=A|0,_=_|0,A|0}function eb(A){A=A|0,Uy(A)}function fX(A,_){A=A|0,_=_|0,p5(A,_)}function p5(A,_){A=A|0,_=_|0,o[A>>2]=_}function IX(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0;F=T,T=T+16|0,H=F+8|0,Y=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=Tp(_)|0,o[Y>>2]=Se,o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],fG(A,S,H,0),T=F}function fG(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;H=T,T=T+32|0,Y=H+16|0,At=H+8|0,Se=H,Ct=o[S>>2]|0,Ye=o[S+4>>2]|0,oe=o[A>>2]|0,A=Gm()|0,o[At>>2]=Ct,o[At+4>>2]=Ye,o[Y>>2]=o[At>>2],o[Y+4>>2]=o[At+4>>2],S=f5(Y)|0,o[Se>>2]=Ct,o[Se+4>>2]=Ye,o[Y>>2]=o[Se>>2],o[Y+4>>2]=o[Se+4>>2],Sf(oe,_,A,S,d8(Y,F)|0,F),T=H}function Gm(){var A=0,_=0;if(s[7664]|0||(f8(9340),cu(29,9340,U|0)|0,_=7664,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9340)|0)){A=9340,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));f8(9340)}return 9340}function f5(A){return A=A|0,0}function d8(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,H=At+24|0,oe=At+16|0,Se=At,Ye=At+8|0,Y=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=Y,o[Se+4>>2]=F,Ut=Gm()|0,Ct=Ut+24|0,A=cg(_,4)|0,o[Ye>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=Y,o[oe+4>>2]=F,o[H>>2]=o[oe>>2],o[H+4>>2]=o[oe+4>>2],R3(S,H,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(I$(Ct,Se,Ye),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function R3(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function I$(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,Ye=A+4|0,H=(((o[Ye>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,Y=B2(A)|0,Y>>>0>>0)DI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,x1(Se,cn>>>0>>1>>>0?Ut>>>0>>0?H:Ut:Y,((o[Ye>>2]|0)-At|0)/12|0,A+8|0),Ye=Se+8|0,Y=o[Ye>>2]|0,H=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=H,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],R3(Y,F,S),o[Ye>>2]=(o[Ye>>2]|0)+12,p8(A,Se),D3(Se),T=Ct;return}}function B2(A){return A=A|0,357913941}function x1(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Eo();else{H=ku(_*12|0)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_*12|0)}function p8(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(((H|0)/-12|0)*12|0)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function D3(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&La(A)}function f8(A){A=A|0,CX(A)}function IZ(A){A=A|0,XCe(A+24|0)}function XCe(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),La(S))}function CX(A){A=A|0;var _=0;_=Ss()|0,Ks(A,2,4,_,C$()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function C$(){return 1180}function Q9(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return F=T,T=T+16|0,H=F+8|0,Y=F,oe=IG(A)|0,A=o[oe+4>>2]|0,o[Y>>2]=o[oe>>2],o[Y+4>>2]=A,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],S=I5(_,H,S)|0,T=F,S|0}function IG(A){return A=A|0,(o[(Gm()|0)+24>>2]|0)+(A*12|0)|0}function I5(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0;return Y=T,T=T+16|0,H=Y,F=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(F=o[(o[A>>2]|0)+F>>2]|0),wv(H,S),H=CZ(H,S)|0,H=DS(kg[F&15](A,H)|0)|0,T=Y,H|0}function wv(A,_){A=A|0,_=_|0}function CZ(A,_){return A=A|0,_=_|0,Oae(_)|0}function DS(A){return A=A|0,A|0}function Oae(A){return A=A|0,A|0}function I8(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0;F=T,T=T+16|0,H=F+8|0,Y=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=Tp(_)|0,o[Y>>2]=Se,o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],M9(A,S,H,0),T=F}function M9(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;H=T,T=T+32|0,Y=H+16|0,At=H+8|0,Se=H,Ct=o[S>>2]|0,Ye=o[S+4>>2]|0,oe=o[A>>2]|0,A=H9()|0,o[At>>2]=Ct,o[At+4>>2]=Ye,o[Y>>2]=o[At>>2],o[Y+4>>2]=o[At+4>>2],S=Qae(Y)|0,o[Se>>2]=Ct,o[Se+4>>2]=Ye,o[Y>>2]=o[Se>>2],o[Y+4>>2]=o[Se+4>>2],Sf(oe,_,A,S,Nx(Y,F)|0,F),T=H}function H9(){var A=0,_=0;if(s[7672]|0||(Y9(9376),cu(30,9376,U|0)|0,_=7672,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9376)|0)){A=9376,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));Y9(9376)}return 9376}function Qae(A){return A=A|0,0}function Nx(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,H=At+24|0,oe=At+16|0,Se=At,Ye=At+8|0,Y=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=Y,o[Se+4>>2]=F,Ut=H9()|0,Ct=Ut+24|0,A=cg(_,4)|0,o[Ye>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=Y,o[oe+4>>2]=F,o[H>>2]=o[oe>>2],o[H+4>>2]=o[oe+4>>2],C8(S,H,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(m$(Ct,Se,Ye),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function C8(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function m$(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,Ye=A+4|0,H=(((o[Ye>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,Y=Cp(A)|0,Y>>>0>>0)DI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,mZ(Se,cn>>>0>>1>>>0?Ut>>>0>>0?H:Ut:Y,((o[Ye>>2]|0)-At|0)/12|0,A+8|0),Ye=Se+8|0,Y=o[Ye>>2]|0,H=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=H,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],C8(Y,F,S),o[Ye>>2]=(o[Ye>>2]|0)+12,mX(A,Se),Dh(Se),T=Ct;return}}function Cp(A){return A=A|0,357913941}function mZ(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Eo();else{H=ku(_*12|0)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_*12|0)}function mX(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(((H|0)/-12|0)*12|0)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function Dh(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&La(A)}function Y9(A){A=A|0,h$(A)}function Tv(A){A=A|0,C5(A+24|0)}function C5(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),La(S))}function h$(A){A=A|0;var _=0;_=Ss()|0,Ks(A,2,5,_,Ag()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function Ag(){return 1196}function T_(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0;return S=T,T=T+16|0,F=S+8|0,H=S,Y=RI(A)|0,A=o[Y+4>>2]|0,o[H>>2]=o[Y>>2],o[H+4>>2]=A,o[F>>2]=o[H>>2],o[F+4>>2]=o[H+4>>2],_=hZ(_,F)|0,T=S,_|0}function RI(A){return A=A|0,(o[(H9()|0)+24>>2]|0)+(A*12|0)|0}function hZ(A,_){A=A|0,_=_|0;var S=0;return S=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(S=o[(o[A>>2]|0)+S>>2]|0),DS(gM[S&31](A)|0)|0}function eu(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0;F=T,T=T+16|0,H=F+8|0,Y=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=Tp(_)|0,o[Y>>2]=Se,o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],x3(A,S,H,1),T=F}function x3(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;H=T,T=T+32|0,Y=H+16|0,At=H+8|0,Se=H,Ct=o[S>>2]|0,Ye=o[S+4>>2]|0,oe=o[A>>2]|0,A=pd()|0,o[At>>2]=Ct,o[At+4>>2]=Ye,o[Y>>2]=o[At>>2],o[Y+4>>2]=o[At+4>>2],S=m5(Y)|0,o[Se>>2]=Ct,o[Se+4>>2]=Ye,o[Y>>2]=o[Se>>2],o[Y+4>>2]=o[Se+4>>2],Sf(oe,_,A,S,JCe(Y,F)|0,F),T=H}function pd(){var A=0,_=0;if(s[7680]|0||(m8(9412),cu(31,9412,U|0)|0,_=7680,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9412)|0)){A=9412,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));m8(9412)}return 9412}function m5(A){return A=A|0,0}function JCe(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,H=At+24|0,oe=At+16|0,Se=At,Ye=At+8|0,Y=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=Y,o[Se+4>>2]=F,Ut=pd()|0,Ct=Ut+24|0,A=cg(_,4)|0,o[Ye>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=Y,o[oe+4>>2]=F,o[H>>2]=o[oe>>2],o[H+4>>2]=o[oe+4>>2],HR(S,H,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(_$(Ct,Se,Ye),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function HR(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function _$(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,Ye=A+4|0,H=(((o[Ye>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,Y=nC(A)|0,Y>>>0>>0)DI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,va(Se,cn>>>0>>1>>>0?Ut>>>0>>0?H:Ut:Y,((o[Ye>>2]|0)-At|0)/12|0,A+8|0),Ye=Se+8|0,Y=o[Ye>>2]|0,H=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=H,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],HR(Y,F,S),o[Ye>>2]=(o[Ye>>2]|0)+12,zw(A,Se),r_(Se),T=Ct;return}}function nC(A){return A=A|0,357913941}function va(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Eo();else{H=ku(_*12|0)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_*12|0)}function zw(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(((H|0)/-12|0)*12|0)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function r_(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&La(A)}function m8(A){A=A|0,Rp(A)}function _Z(A){A=A|0,Mae(A+24|0)}function Mae(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),La(S))}function Rp(A){A=A|0;var _=0;_=Ss()|0,Ks(A,2,6,_,Rx()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function Rx(){return 1200}function h8(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0;return S=T,T=T+16|0,F=S+8|0,H=S,Y=vB(A)|0,A=o[Y+4>>2]|0,o[H>>2]=o[Y>>2],o[H+4>>2]=A,o[F>>2]=o[H>>2],o[F+4>>2]=o[H+4>>2],_=Ma(_,F)|0,T=S,_|0}function vB(A){return A=A|0,(o[(pd()|0)+24>>2]|0)+(A*12|0)|0}function Ma(A,_){A=A|0,_=_|0;var S=0;return S=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(S=o[(o[A>>2]|0)+S>>2]|0),hX(gM[S&31](A)|0)|0}function hX(A){return A=A|0,A|0}function fu(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0;F=T,T=T+16|0,H=F+8|0,Y=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=Tp(_)|0,o[Y>>2]=Se,o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],X9(A,S,H,0),T=F}function X9(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;H=T,T=T+32|0,Y=H+16|0,At=H+8|0,Se=H,Ct=o[S>>2]|0,Ye=o[S+4>>2]|0,oe=o[A>>2]|0,A=k3()|0,o[At>>2]=Ct,o[At+4>>2]=Ye,o[Y>>2]=o[At>>2],o[Y+4>>2]=o[At+4>>2],S=_X(Y)|0,o[Se>>2]=Ct,o[Se+4>>2]=Ye,o[Y>>2]=o[Se>>2],o[Y+4>>2]=o[Se+4>>2],Sf(oe,_,A,S,Hae(Y,F)|0,F),T=H}function k3(){var A=0,_=0;if(s[7688]|0||(_5(9448),cu(32,9448,U|0)|0,_=7688,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9448)|0)){A=9448,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));_5(9448)}return 9448}function _X(A){return A=A|0,0}function Hae(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,H=At+24|0,oe=At+16|0,Se=At,Ye=At+8|0,Y=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=Y,o[Se+4>>2]=F,Ut=k3()|0,Ct=Ut+24|0,A=cg(_,4)|0,o[Ye>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=Y,o[oe+4>>2]=F,o[H>>2]=o[oe>>2],o[H+4>>2]=o[oe+4>>2],h5(S,H,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(y$(Ct,Se,Ye),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function h5(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function y$(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,Ye=A+4|0,H=(((o[Ye>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,Y=yX(A)|0,Y>>>0>>0)DI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,b$(Se,cn>>>0>>1>>>0?Ut>>>0>>0?H:Ut:Y,((o[Ye>>2]|0)-At|0)/12|0,A+8|0),Ye=Se+8|0,Y=o[Ye>>2]|0,H=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=H,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],h5(Y,F,S),o[Ye>>2]=(o[Ye>>2]|0)+12,bX(A,Se),Yae(Se),T=Ct;return}}function yX(A){return A=A|0,357913941}function b$(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Eo();else{H=ku(_*12|0)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_*12|0)}function bX(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(((H|0)/-12|0)*12|0)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function Yae(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&La(A)}function _5(A){A=A|0,SB(A)}function E$(A){A=A|0,CG(A+24|0)}function CG(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),La(S))}function SB(A){A=A|0;var _=0;_=Ss()|0,Ks(A,2,6,_,k1()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function k1(){return 1204}function N_(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;F=T,T=T+16|0,H=F+8|0,Y=F,oe=UCe(A)|0,A=o[oe+4>>2]|0,o[Y>>2]=o[oe>>2],o[Y+4>>2]=A,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],yZ(_,H,S),T=F}function UCe(A){return A=A|0,(o[(k3()|0)+24>>2]|0)+(A*12|0)|0}function yZ(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0;Y=T,T=T+16|0,H=Y,F=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(F=o[(o[A>>2]|0)+F>>2]|0),qp(H,S),H=_8(H,S)|0,iT[F&31](A,H),T=Y}function qp(A,_){A=A|0,_=_|0}function _8(A,_){return A=A|0,_=_|0,xS(_)|0}function xS(A){return A=A|0,A|0}function tn(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0;F=T,T=T+16|0,H=F+8|0,Y=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=Tp(_)|0,o[Y>>2]=Se,o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],yRe(A,S,H,0),T=F}function yRe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;H=T,T=T+32|0,Y=H+16|0,At=H+8|0,Se=H,Ct=o[S>>2]|0,Ye=o[S+4>>2]|0,oe=o[A>>2]|0,A=kE()|0,o[At>>2]=Ct,o[At+4>>2]=Ye,o[Y>>2]=o[At>>2],o[Y+4>>2]=o[At+4>>2],S=KCe(Y)|0,o[Se>>2]=Ct,o[Se+4>>2]=Ye,o[Y>>2]=o[Se>>2],o[Y+4>>2]=o[Se+4>>2],Sf(oe,_,A,S,YR(Y,F)|0,F),T=H}function kE(){var A=0,_=0;if(s[7696]|0||(EX(9484),cu(33,9484,U|0)|0,_=7696,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9484)|0)){A=9484,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));EX(9484)}return 9484}function KCe(A){return A=A|0,0}function YR(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,H=At+24|0,oe=At+16|0,Se=At,Ye=At+8|0,Y=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=Y,o[Se+4>>2]=F,Ut=kE()|0,Ct=Ut+24|0,A=cg(_,4)|0,o[Ye>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=Y,o[oe+4>>2]=F,o[H>>2]=o[oe>>2],o[H+4>>2]=o[oe+4>>2],B$(S,H,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(Xae(Ct,Se,Ye),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function B$(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function Xae(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,Ye=A+4|0,H=(((o[Ye>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,Y=y8(A)|0,Y>>>0>>0)DI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,G3(Se,cn>>>0>>1>>>0?Ut>>>0>>0?H:Ut:Y,((o[Ye>>2]|0)-At|0)/12|0,A+8|0),Ye=Se+8|0,Y=o[Ye>>2]|0,H=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=H,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],B$(Y,F,S),o[Ye>>2]=(o[Ye>>2]|0)+12,bZ(A,Se),XR(Se),T=Ct;return}}function y8(A){return A=A|0,357913941}function G3(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Eo();else{H=ku(_*12|0)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_*12|0)}function bZ(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(((H|0)/-12|0)*12|0)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function XR(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&La(A)}function EX(A){A=A|0,tb(A)}function O0(A){A=A|0,Q0(A+24|0)}function Q0(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),La(S))}function tb(A){A=A|0;var _=0;_=Ss()|0,Ks(A,2,1,_,Jae()|0,2),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function Jae(){return 1212}function v$(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0;H=T,T=T+16|0,Y=H+8|0,oe=H,Se=BX(A)|0,A=o[Se+4>>2]|0,o[oe>>2]=o[Se>>2],o[oe+4>>2]=A,o[Y>>2]=o[oe>>2],o[Y+4>>2]=o[oe+4>>2],v2(_,Y,S,F),T=H}function BX(A){return A=A|0,(o[(kE()|0)+24>>2]|0)+(A*12|0)|0}function v2(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0;Se=T,T=T+16|0,Y=Se+1|0,oe=Se,H=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(H=o[(o[A>>2]|0)+H>>2]|0),qp(Y,S),Y=_8(Y,S)|0,wv(oe,F),oe=CZ(oe,F)|0,ef[H&15](A,Y,oe),T=Se}function Nv(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0;F=T,T=T+16|0,H=F+8|0,Y=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=Tp(_)|0,o[Y>>2]=Se,o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],bRe(A,S,H,1),T=F}function bRe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;H=T,T=T+32|0,Y=H+16|0,At=H+8|0,Se=H,Ct=o[S>>2]|0,Ye=o[S+4>>2]|0,oe=o[A>>2]|0,A=b8()|0,o[At>>2]=Ct,o[At+4>>2]=Ye,o[Y>>2]=o[At>>2],o[Y+4>>2]=o[At+4>>2],S=S$(Y)|0,o[Se>>2]=Ct,o[Se+4>>2]=Ye,o[Y>>2]=o[Se>>2],o[Y+4>>2]=o[Se+4>>2],Sf(oe,_,A,S,xC(Y,F)|0,F),T=H}function b8(){var A=0,_=0;if(s[7704]|0||(Z3(9520),cu(34,9520,U|0)|0,_=7704,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9520)|0)){A=9520,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));Z3(9520)}return 9520}function S$(A){return A=A|0,0}function xC(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,H=At+24|0,oe=At+16|0,Se=At,Ye=At+8|0,Y=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=Y,o[Se+4>>2]=F,Ut=b8()|0,Ct=Ut+24|0,A=cg(_,4)|0,o[Ye>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=Y,o[oe+4>>2]=F,o[H>>2]=o[oe>>2],o[H+4>>2]=o[oe+4>>2],vX(S,H,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(SX(Ct,Se,Ye),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function vX(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function SX(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,Ye=A+4|0,H=(((o[Ye>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,Y=Cc(A)|0,Y>>>0>>0)DI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,w$(Se,cn>>>0>>1>>>0?Ut>>>0>>0?H:Ut:Y,((o[Ye>>2]|0)-At|0)/12|0,A+8|0),Ye=Se+8|0,Y=o[Ye>>2]|0,H=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=H,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],vX(Y,F,S),o[Ye>>2]=(o[Ye>>2]|0)+12,qw(A,Se),F3(Se),T=Ct;return}}function Cc(A){return A=A|0,357913941}function w$(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Eo();else{H=ku(_*12|0)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_*12|0)}function qw(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(((H|0)/-12|0)*12|0)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function F3(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&La(A)}function Z3(A){A=A|0,Uae(A)}function wX(A){A=A|0,E8(A+24|0)}function E8(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),La(S))}function Uae(A){A=A|0;var _=0;_=Ss()|0,Ks(A,2,1,_,Um()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function Um(){return 1224}function TX(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0;return H=T,T=T+16|0,Y=H+8|0,oe=H,Se=kS(A)|0,A=o[Se+4>>2]|0,o[oe>>2]=o[Se>>2],o[oe+4>>2]=A,o[Y>>2]=o[oe>>2],o[Y+4>>2]=o[oe+4>>2],F=+ff(_,Y,S),T=H,+F}function kS(A){return A=A|0,(o[(b8()|0)+24>>2]|0)+(A*12|0)|0}function ff(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return Y=T,T=T+16|0,H=Y,F=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(F=o[(o[A>>2]|0)+F>>2]|0),wf(H,S),H=Uw(H,S)|0,oe=+Ip(+FC[F&7](A,H)),T=Y,+oe}function J9(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0;F=T,T=T+16|0,H=F+8|0,Y=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=Tp(_)|0,o[Y>>2]=Se,o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],xh(A,S,H,1),T=F}function xh(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;H=T,T=T+32|0,Y=H+16|0,At=H+8|0,Se=H,Ct=o[S>>2]|0,Ye=o[S+4>>2]|0,oe=o[A>>2]|0,A=Rv()|0,o[At>>2]=Ct,o[At+4>>2]=Ye,o[Y>>2]=o[At>>2],o[Y+4>>2]=o[At+4>>2],S=_y(Y)|0,o[Se>>2]=Ct,o[Se+4>>2]=Ye,o[Y>>2]=o[Se>>2],o[Y+4>>2]=o[Se+4>>2],Sf(oe,_,A,S,JC(Y,F)|0,F),T=H}function Rv(){var A=0,_=0;if(s[7712]|0||(JA(9556),cu(35,9556,U|0)|0,_=7712,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9556)|0)){A=9556,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));JA(9556)}return 9556}function _y(A){return A=A|0,0}function JC(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,H=At+24|0,oe=At+16|0,Se=At,Ye=At+8|0,Y=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=Y,o[Se+4>>2]=F,Ut=Rv()|0,Ct=Ut+24|0,A=cg(_,4)|0,o[Ye>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=Y,o[oe+4>>2]=F,o[H>>2]=o[oe>>2],o[H+4>>2]=o[oe+4>>2],$w(S,H,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(mG(Ct,Se,Ye),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function $w(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function mG(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,Ye=A+4|0,H=(((o[Ye>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,Y=y5(A)|0,Y>>>0>>0)DI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,B8(Se,cn>>>0>>1>>>0?Ut>>>0>>0?H:Ut:Y,((o[Ye>>2]|0)-At|0)/12|0,A+8|0),Ye=Se+8|0,Y=o[Ye>>2]|0,H=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=H,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],$w(Y,F,S),o[Ye>>2]=(o[Ye>>2]|0)+12,jCe(A,Se),Kae(Se),T=Ct;return}}function y5(A){return A=A|0,357913941}function B8(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Eo();else{H=ku(_*12|0)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_*12|0)}function jCe(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(((H|0)/-12|0)*12|0)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function Kae(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&La(A)}function JA(A){A=A|0,Dv(A)}function U9(A){A=A|0,T$(A+24|0)}function T$(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),La(S))}function Dv(A){A=A|0;var _=0;_=Ss()|0,Ks(A,2,5,_,zCe()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function zCe(){return 1232}function jae(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;return F=T,T=T+16|0,H=F+8|0,Y=F,oe=N$(A)|0,A=o[oe+4>>2]|0,o[Y>>2]=o[oe>>2],o[Y+4>>2]=A,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],S=+Dx(_,H),T=F,+S}function N$(A){return A=A|0,(o[(Rv()|0)+24>>2]|0)+(A*12|0)|0}function Dx(A,_){A=A|0,_=_|0;var S=0;return S=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(S=o[(o[A>>2]|0)+S>>2]|0),+ +Ip(+Whe[S&15](A))}function b5(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0;F=T,T=T+16|0,H=F+8|0,Y=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=Tp(_)|0,o[Y>>2]=Se,o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],R$(A,S,H,1),T=F}function R$(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;H=T,T=T+32|0,Y=H+16|0,At=H+8|0,Se=H,Ct=o[S>>2]|0,Ye=o[S+4>>2]|0,oe=o[A>>2]|0,A=qd()|0,o[At>>2]=Ct,o[At+4>>2]=Ye,o[Y>>2]=o[At>>2],o[Y+4>>2]=o[At+4>>2],S=zae(Y)|0,o[Se>>2]=Ct,o[Se+4>>2]=Ye,o[Y>>2]=o[Se>>2],o[Y+4>>2]=o[Se+4>>2],Sf(oe,_,A,S,xu(Y,F)|0,F),T=H}function qd(){var A=0,_=0;if(s[7720]|0||(D$(9592),cu(36,9592,U|0)|0,_=7720,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9592)|0)){A=9592,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));D$(9592)}return 9592}function zae(A){return A=A|0,0}function xu(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,H=At+24|0,oe=At+16|0,Se=At,Ye=At+8|0,Y=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=Y,o[Se+4>>2]=F,Ut=qd()|0,Ct=Ut+24|0,A=cg(_,4)|0,o[Ye>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=Y,o[oe+4>>2]=F,o[H>>2]=o[oe>>2],o[H+4>>2]=o[oe+4>>2],wB(S,H,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(L3(Ct,Se,Ye),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function wB(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function L3(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,Ye=A+4|0,H=(((o[Ye>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,Y=v8(A)|0,Y>>>0>>0)DI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,TB(Se,cn>>>0>>1>>>0?Ut>>>0>>0?H:Ut:Y,((o[Ye>>2]|0)-At|0)/12|0,A+8|0),Ye=Se+8|0,Y=o[Ye>>2]|0,H=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=H,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],wB(Y,F,S),o[Ye>>2]=(o[Ye>>2]|0)+12,NB(A,Se),qae(Se),T=Ct;return}}function v8(A){return A=A|0,357913941}function TB(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Eo();else{H=ku(_*12|0)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_*12|0)}function NB(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(((H|0)/-12|0)*12|0)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function qae(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&La(A)}function D$(A){A=A|0,UC(A)}function V3(A){A=A|0,x$(A+24|0)}function x$(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),La(S))}function UC(A){A=A|0;var _=0;_=Ss()|0,Ks(A,2,7,_,eT()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function eT(){return 1276}function S8(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0;return S=T,T=T+16|0,F=S+8|0,H=S,Y=W3(A)|0,A=o[Y+4>>2]|0,o[H>>2]=o[Y>>2],o[H+4>>2]=A,o[F>>2]=o[H>>2],o[F+4>>2]=o[H+4>>2],_=NX(_,F)|0,T=S,_|0}function W3(A){return A=A|0,(o[(qd()|0)+24>>2]|0)+(A*12|0)|0}function NX(A,_){A=A|0,_=_|0;var S=0,F=0,H=0;return H=T,T=T+16|0,F=H,S=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(S=o[(o[A>>2]|0)+S>>2]|0),iT[S&31](F,A),F=w8(F)|0,T=H,F|0}function w8(A){A=A|0;var _=0,S=0,F=0,H=0;return H=T,T=T+32|0,_=H+12|0,S=H,F=Ku(k$()|0)|0,F?(DE(_,F),my(S,_),RX(A,S),A=b2(_)|0):A=qCe(A)|0,T=H,A|0}function k$(){var A=0;return s[7736]|0||(gN(9640),cu(25,9640,U|0)|0,A=7736,o[A>>2]=1,o[A+4>>2]=0),9640}function RX(A,_){A=A|0,_=_|0,UR(_,A,A+8|0)|0}function qCe(A){A=A|0;var _=0,S=0,F=0,H=0,Y=0,oe=0,Se=0;return S=T,T=T+16|0,H=S+4|0,oe=S,F=mN(8)|0,_=F,Se=ku(16)|0,o[Se>>2]=o[A>>2],o[Se+4>>2]=o[A+4>>2],o[Se+8>>2]=o[A+8>>2],o[Se+12>>2]=o[A+12>>2],Y=_+4|0,o[Y>>2]=Se,A=ku(8)|0,Y=o[Y>>2]|0,o[oe>>2]=0,o[H>>2]=o[oe>>2],E5(A,Y,H),o[F>>2]=A,T=S,_|0}function E5(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,S=ku(16)|0,o[S+4>>2]=0,o[S+8>>2]=0,o[S>>2]=1244,o[S+12>>2]=_,o[A+4>>2]=S}function JR(A){A=A|0,l4(A),La(A)}function $ae(A){A=A|0,A=o[A+12>>2]|0,A|0&&La(A)}function G$(A){A=A|0,La(A)}function UR(A,_,S){return A=A|0,_=_|0,S=S|0,_=ERe(o[A>>2]|0,_,S)|0,S=A+4|0,o[(o[S>>2]|0)+8>>2]=_,o[(o[S>>2]|0)+8>>2]|0}function ERe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0;return F=T,T=T+16|0,H=F,YS(H),A=dA(A)|0,S=ls(A,o[_>>2]|0,+y[S>>3])|0,x2(H),T=F,S|0}function ls(A,_,S){A=A|0,_=_|0,S=+S;var F=0;return F=Cy(T8()|0)|0,_=TS(_)|0,ka(0,F|0,A|0,_|0,+ +Th(S))|0}function T8(){var A=0;return s[7728]|0||(B5(9628),A=7728,o[A>>2]=1,o[A+4>>2]=0),9628}function B5(A){A=A|0,km(A,ece()|0,2)}function ece(){return 1264}function gN(A){A=A|0,jc(A)}function tce(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0;F=T,T=T+16|0,H=F+8|0,Y=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=Tp(_)|0,o[Y>>2]=Se,o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],DX(A,S,H,1),T=F}function DX(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;H=T,T=T+32|0,Y=H+16|0,At=H+8|0,Se=H,Ct=o[S>>2]|0,Ye=o[S+4>>2]|0,oe=o[A>>2]|0,A=v5()|0,o[At>>2]=Ct,o[At+4>>2]=Ye,o[Y>>2]=o[At>>2],o[Y+4>>2]=o[At+4>>2],S=Tf(Y)|0,o[Se>>2]=Ct,o[Se+4>>2]=Ye,o[Y>>2]=o[Se>>2],o[Y+4>>2]=o[Se+4>>2],Sf(oe,_,A,S,GE(Y,F)|0,F),T=H}function v5(){var A=0,_=0;if(s[7744]|0||(N8(9684),cu(37,9684,U|0)|0,_=7744,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9684)|0)){A=9684,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));N8(9684)}return 9684}function Tf(A){return A=A|0,0}function GE(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,H=At+24|0,oe=At+16|0,Se=At,Ye=At+8|0,Y=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=Y,o[Se+4>>2]=F,Ut=v5()|0,Ct=Ut+24|0,A=cg(_,4)|0,o[Ye>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=Y,o[oe+4>>2]=F,o[H>>2]=o[oe>>2],o[H+4>>2]=o[oe+4>>2],F$(S,H,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(xX(Ct,Se,Ye),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function F$(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function xX(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,Ye=A+4|0,H=(((o[Ye>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,Y=$Ce(A)|0,Y>>>0>>0)DI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,eme(Se,cn>>>0>>1>>>0?Ut>>>0>>0?H:Ut:Y,((o[Ye>>2]|0)-At|0)/12|0,A+8|0),Ye=Se+8|0,Y=o[Ye>>2]|0,H=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=H,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],F$(Y,F,S),o[Ye>>2]=(o[Ye>>2]|0)+12,tme(A,Se),GS(Se),T=Ct;return}}function $Ce(A){return A=A|0,357913941}function eme(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Eo();else{H=ku(_*12|0)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_*12|0)}function tme(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(((H|0)/-12|0)*12|0)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function GS(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&La(A)}function N8(A){A=A|0,Z$(A)}function rme(A){A=A|0,EZ(A+24|0)}function EZ(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),La(S))}function Z$(A){A=A|0;var _=0;_=Ss()|0,Ks(A,2,5,_,R8()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function R8(){return 1280}function rce(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return F=T,T=T+16|0,H=F+8|0,Y=F,oe=xx(A)|0,A=o[oe+4>>2]|0,o[Y>>2]=o[oe>>2],o[Y+4>>2]=A,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],S=L$(_,H,S)|0,T=F,S|0}function xx(A){return A=A|0,(o[(v5()|0)+24>>2]|0)+(A*12|0)|0}function L$(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return oe=T,T=T+32|0,H=oe,Y=oe+16|0,F=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(F=o[(o[A>>2]|0)+F>>2]|0),wf(Y,S),Y=Uw(Y,S)|0,ef[F&15](H,A,Y),Y=w8(H)|0,T=oe,Y|0}function hG(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0;F=T,T=T+16|0,H=F+8|0,Y=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=Tp(_)|0,o[Y>>2]=Se,o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],BRe(A,S,H,1),T=F}function BRe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;H=T,T=T+32|0,Y=H+16|0,At=H+8|0,Se=H,Ct=o[S>>2]|0,Ye=o[S+4>>2]|0,oe=o[A>>2]|0,A=S5()|0,o[At>>2]=Ct,o[At+4>>2]=Ye,o[Y>>2]=o[At>>2],o[Y+4>>2]=o[At+4>>2],S=w5(Y)|0,o[Se>>2]=Ct,o[Se+4>>2]=Ye,o[Y>>2]=o[Se>>2],o[Y+4>>2]=o[Se+4>>2],Sf(oe,_,A,S,Nf(Y,F)|0,F),T=H}function S5(){var A=0,_=0;if(s[7752]|0||(V$(9720),cu(38,9720,U|0)|0,_=7752,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9720)|0)){A=9720,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));V$(9720)}return 9720}function w5(A){return A=A|0,0}function Nf(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,H=At+24|0,oe=At+16|0,Se=At,Ye=At+8|0,Y=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=Y,o[Se+4>>2]=F,Ut=S5()|0,Ct=Ut+24|0,A=cg(_,4)|0,o[Ye>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=Y,o[oe+4>>2]=F,o[H>>2]=o[oe>>2],o[H+4>>2]=o[oe+4>>2],nme(S,H,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(P3(Ct,Se,Ye),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function nme(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function P3(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,Ye=A+4|0,H=(((o[Ye>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,Y=wg(A)|0,Y>>>0>>0)DI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,FE(Se,cn>>>0>>1>>>0?Ut>>>0>>0?H:Ut:Y,((o[Ye>>2]|0)-At|0)/12|0,A+8|0),Ye=Se+8|0,Y=o[Ye>>2]|0,H=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=H,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],nme(Y,F,S),o[Ye>>2]=(o[Ye>>2]|0)+12,D8(A,Se),nce(Se),T=Ct;return}}function wg(A){return A=A|0,357913941}function FE(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Eo();else{H=ku(_*12|0)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_*12|0)}function D8(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(((H|0)/-12|0)*12|0)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function nce(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&La(A)}function V$(A){A=A|0,ice(A)}function vRe(A){A=A|0,x8(A+24|0)}function x8(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),La(S))}function ice(A){A=A|0;var _=0;_=Ss()|0,Ks(A,2,8,_,W$()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function W$(){return 1288}function P$(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0;return S=T,T=T+16|0,F=S+8|0,H=S,Y=Yf(A)|0,A=o[Y+4>>2]|0,o[H>>2]=o[Y>>2],o[H+4>>2]=A,o[F>>2]=o[H>>2],o[F+4>>2]=o[H+4>>2],_=T5(_,F)|0,T=S,_|0}function Yf(A){return A=A|0,(o[(S5()|0)+24>>2]|0)+(A*12|0)|0}function T5(A,_){A=A|0,_=_|0;var S=0;return S=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(S=o[(o[A>>2]|0)+S>>2]|0),m2(gM[S&31](A)|0)|0}function O$(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0;F=T,T=T+16|0,H=F+8|0,Y=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=Tp(_)|0,o[Y>>2]=Se,o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],sce(A,S,H,0),T=F}function sce(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;H=T,T=T+32|0,Y=H+16|0,At=H+8|0,Se=H,Ct=o[S>>2]|0,Ye=o[S+4>>2]|0,oe=o[A>>2]|0,A=O3()|0,o[At>>2]=Ct,o[At+4>>2]=Ye,o[Y>>2]=o[At>>2],o[Y+4>>2]=o[At+4>>2],S=SRe(Y)|0,o[Se>>2]=Ct,o[Se+4>>2]=Ye,o[Y>>2]=o[Se>>2],o[Y+4>>2]=o[Se+4>>2],Sf(oe,_,A,S,k8(Y,F)|0,F),T=H}function O3(){var A=0,_=0;if(s[7760]|0||(kX(9756),cu(39,9756,U|0)|0,_=7760,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9756)|0)){A=9756,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));kX(9756)}return 9756}function SRe(A){return A=A|0,0}function k8(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,H=At+24|0,oe=At+16|0,Se=At,Ye=At+8|0,Y=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=Y,o[Se+4>>2]=F,Ut=O3()|0,Ct=Ut+24|0,A=cg(_,4)|0,o[Ye>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=Y,o[oe+4>>2]=F,o[H>>2]=o[oe>>2],o[H+4>>2]=o[oe+4>>2],S2(S,H,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(KR(Ct,Se,Ye),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function S2(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function KR(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,Ye=A+4|0,H=(((o[Ye>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,Y=Q$(A)|0,Y>>>0>>0)DI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,M$(Se,cn>>>0>>1>>>0?Ut>>>0>>0?H:Ut:Y,((o[Ye>>2]|0)-At|0)/12|0,A+8|0),Ye=Se+8|0,Y=o[Ye>>2]|0,H=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=H,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],S2(Y,F,S),o[Ye>>2]=(o[Ye>>2]|0)+12,wRe(A,Se),K9(Se),T=Ct;return}}function Q$(A){return A=A|0,357913941}function M$(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Eo();else{H=ku(_*12|0)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_*12|0)}function wRe(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(((H|0)/-12|0)*12|0)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function K9(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&La(A)}function kX(A){A=A|0,X$(A)}function H$(A){A=A|0,Y$(A+24|0)}function Y$(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),La(S))}function X$(A){A=A|0;var _=0;_=Ss()|0,Ks(A,2,8,_,GX()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function GX(){return 1292}function _G(A,_,S){A=A|0,_=_|0,S=+S;var F=0,H=0,Y=0,oe=0;F=T,T=T+16|0,H=F+8|0,Y=F,oe=oce(A)|0,A=o[oe+4>>2]|0,o[Y>>2]=o[oe>>2],o[Y+4>>2]=A,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],ace(_,H,S),T=F}function oce(A){return A=A|0,(o[(O3()|0)+24>>2]|0)+(A*12|0)|0}function ace(A,_,S){A=A|0,_=_|0,S=+S;var F=0,H=0,Y=0;Y=T,T=T+16|0,H=Y,F=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(F=o[(o[A>>2]|0)+F>>2]|0),Sv(H,S),S=+lN(H,S),Lhe[F&31](A,S),T=Y}function G8(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0;F=T,T=T+16|0,H=F+8|0,Y=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=Tp(_)|0,o[Y>>2]=Se,o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],cce(A,S,H,0),T=F}function cce(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;H=T,T=T+32|0,Y=H+16|0,At=H+8|0,Se=H,Ct=o[S>>2]|0,Ye=o[S+4>>2]|0,oe=o[A>>2]|0,A=Q3()|0,o[At>>2]=Ct,o[At+4>>2]=Ye,o[Y>>2]=o[At>>2],o[Y+4>>2]=o[At+4>>2],S=F8(Y)|0,o[Se>>2]=Ct,o[Se+4>>2]=Ye,o[Y>>2]=o[Se>>2],o[Y+4>>2]=o[Se+4>>2],Sf(oe,_,A,S,w2(Y,F)|0,F),T=H}function Q3(){var A=0,_=0;if(s[7768]|0||(r0(9792),cu(40,9792,U|0)|0,_=7768,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9792)|0)){A=9792,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));r0(9792)}return 9792}function F8(A){return A=A|0,0}function w2(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,H=At+24|0,oe=At+16|0,Se=At,Ye=At+8|0,Y=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=Y,o[Se+4>>2]=F,Ut=Q3()|0,Ct=Ut+24|0,A=cg(_,4)|0,o[Ye>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=Y,o[oe+4>>2]=F,o[H>>2]=o[oe>>2],o[H+4>>2]=o[oe+4>>2],J$(S,H,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(kd(Ct,Se,Ye),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function J$(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function kd(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,Ye=A+4|0,H=(((o[Ye>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,Y=lce(A)|0,Y>>>0>>0)DI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,FX(Se,cn>>>0>>1>>>0?Ut>>>0>>0?H:Ut:Y,((o[Ye>>2]|0)-At|0)/12|0,A+8|0),Ye=Se+8|0,Y=o[Ye>>2]|0,H=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=H,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],J$(Y,F,S),o[Ye>>2]=(o[Ye>>2]|0)+12,N5(A,Se),j9(Se),T=Ct;return}}function lce(A){return A=A|0,357913941}function FX(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Eo();else{H=ku(_*12|0)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_*12|0)}function N5(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(((H|0)/-12|0)*12|0)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function j9(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&La(A)}function r0(A){A=A|0,Wb(A)}function Js(A){A=A|0,M3(A+24|0)}function M3(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),La(S))}function Wb(A){A=A|0;var _=0;_=Ss()|0,Ks(A,2,1,_,ZS()|0,2),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function ZS(){return 1300}function ZX(A,_,S,F){A=A|0,_=_|0,S=S|0,F=+F;var H=0,Y=0,oe=0,Se=0;H=T,T=T+16|0,Y=H+8|0,oe=H,Se=uce(A)|0,A=o[Se+4>>2]|0,o[oe>>2]=o[Se>>2],o[oe+4>>2]=A,o[Y>>2]=o[oe>>2],o[Y+4>>2]=o[oe+4>>2],Z8(_,Y,S,F),T=H}function uce(A){return A=A|0,(o[(Q3()|0)+24>>2]|0)+(A*12|0)|0}function Z8(A,_,S,F){A=A|0,_=_|0,S=S|0,F=+F;var H=0,Y=0,oe=0,Se=0;Se=T,T=T+16|0,Y=Se+1|0,oe=Se,H=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(H=o[(o[A>>2]|0)+H>>2]|0),wf(Y,S),Y=Uw(Y,S)|0,Sv(oe,F),F=+lN(oe,F),Qb[H&15](A,Y,F),T=Se}function ne(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0;F=T,T=T+16|0,H=F+8|0,Y=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=Tp(_)|0,o[Y>>2]=Se,o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],Ie(A,S,H,0),T=F}function Ie(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;H=T,T=T+32|0,Y=H+16|0,At=H+8|0,Se=H,Ct=o[S>>2]|0,Ye=o[S+4>>2]|0,oe=o[A>>2]|0,A=ze()|0,o[At>>2]=Ct,o[At+4>>2]=Ye,o[Y>>2]=o[At>>2],o[Y+4>>2]=o[At+4>>2],S=Qt(Y)|0,o[Se>>2]=Ct,o[Se+4>>2]=Ye,o[Y>>2]=o[Se>>2],o[Y+4>>2]=o[Se+4>>2],Sf(oe,_,A,S,Rr(Y,F)|0,F),T=H}function ze(){var A=0,_=0;if(s[7776]|0||(dc(9828),cu(41,9828,U|0)|0,_=7776,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9828)|0)){A=9828,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));dc(9828)}return 9828}function Qt(A){return A=A|0,0}function Rr(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,H=At+24|0,oe=At+16|0,Se=At,Ye=At+8|0,Y=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=Y,o[Se+4>>2]=F,Ut=ze()|0,Ct=Ut+24|0,A=cg(_,4)|0,o[Ye>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=Y,o[oe+4>>2]=F,o[H>>2]=o[oe>>2],o[H+4>>2]=o[oe+4>>2],bn(S,H,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(Ci(Ct,Se,Ye),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function bn(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function Ci(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,Ye=A+4|0,H=(((o[Ye>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,Y=Mi(A)|0,Y>>>0>>0)DI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,bs(Se,cn>>>0>>1>>>0?Ut>>>0>>0?H:Ut:Y,((o[Ye>>2]|0)-At|0)/12|0,A+8|0),Ye=Se+8|0,Y=o[Ye>>2]|0,H=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=H,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],bn(Y,F,S),o[Ye>>2]=(o[Ye>>2]|0)+12,na(A,Se),fa(Se),T=Ct;return}}function Mi(A){return A=A|0,357913941}function bs(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Eo();else{H=ku(_*12|0)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_*12|0)}function na(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(((H|0)/-12|0)*12|0)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function fa(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&La(A)}function dc(A){A=A|0,fd(A)}function Iu(A){A=A|0,Mg(A+24|0)}function Mg(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),La(S))}function fd(A){A=A|0;var _=0;_=Ss()|0,Ks(A,2,7,_,Hp()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function Hp(){return 1312}function Od(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;F=T,T=T+16|0,H=F+8|0,Y=F,oe=aI(A)|0,A=o[oe+4>>2]|0,o[Y>>2]=o[oe>>2],o[Y+4>>2]=A,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],Rf(_,H,S),T=F}function aI(A){return A=A|0,(o[(ze()|0)+24>>2]|0)+(A*12|0)|0}function Rf(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0;Y=T,T=T+16|0,H=Y,F=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(F=o[(o[A>>2]|0)+F>>2]|0),wf(H,S),H=Uw(H,S)|0,iT[F&31](A,H),T=Y}function fC(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0;F=T,T=T+16|0,H=F+8|0,Y=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=Tp(_)|0,o[Y>>2]=Se,o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],Pb(A,S,H,0),T=F}function Pb(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;H=T,T=T+32|0,Y=H+16|0,At=H+8|0,Se=H,Ct=o[S>>2]|0,Ye=o[S+4>>2]|0,oe=o[A>>2]|0,A=n_()|0,o[At>>2]=Ct,o[At+4>>2]=Ye,o[Y>>2]=o[At>>2],o[Y+4>>2]=o[At+4>>2],S=HI(Y)|0,o[Se>>2]=Ct,o[Se+4>>2]=Ye,o[Y>>2]=o[Se>>2],o[Y+4>>2]=o[Se+4>>2],Sf(oe,_,A,S,LS(Y,F)|0,F),T=H}function n_(){var A=0,_=0;if(s[7784]|0||(WUe(9864),cu(42,9864,U|0)|0,_=7784,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9864)|0)){A=9864,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));WUe(9864)}return 9864}function HI(A){return A=A|0,0}function LS(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,H=At+24|0,oe=At+16|0,Se=At,Ye=At+8|0,Y=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=Y,o[Se+4>>2]=F,Ut=n_()|0,Ct=Ut+24|0,A=cg(_,4)|0,o[Ye>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=Y,o[oe+4>>2]=F,o[H>>2]=o[oe>>2],o[H+4>>2]=o[oe+4>>2],AN(S,H,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(ime(Ct,Se,Ye),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function AN(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function ime(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,Ye=A+4|0,H=(((o[Ye>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,Y=gce(A)|0,Y>>>0>>0)DI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,sme(Se,cn>>>0>>1>>>0?Ut>>>0>>0?H:Ut:Y,((o[Ye>>2]|0)-At|0)/12|0,A+8|0),Ye=Se+8|0,Y=o[Ye>>2]|0,H=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=H,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],AN(Y,F,S),o[Ye>>2]=(o[Ye>>2]|0)+12,ome(A,Se),TRe(Se),T=Ct;return}}function gce(A){return A=A|0,357913941}function sme(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Eo();else{H=ku(_*12|0)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_*12|0)}function ome(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(((H|0)/-12|0)*12|0)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function TRe(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&La(A)}function WUe(A){A=A|0,UTt(A)}function JTt(A){A=A|0,NRe(A+24|0)}function NRe(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),La(S))}function UTt(A){A=A|0;var _=0;_=Ss()|0,Ks(A,2,8,_,KTt()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function KTt(){return 1320}function VS(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;F=T,T=T+16|0,H=F+8|0,Y=F,oe=PUe(A)|0,A=o[oe+4>>2]|0,o[Y>>2]=o[oe>>2],o[Y+4>>2]=A,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],OUe(_,H,S),T=F}function PUe(A){return A=A|0,(o[(n_()|0)+24>>2]|0)+(A*12|0)|0}function OUe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0;Y=T,T=T+16|0,H=Y,F=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(F=o[(o[A>>2]|0)+F>>2]|0),kx(H,S),H=RRe(H,S)|0,iT[F&31](A,H),T=Y}function kx(A,_){A=A|0,_=_|0}function RRe(A,_){return A=A|0,_=_|0,ame(_)|0}function ame(A){return A=A|0,A|0}function DRe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0;F=T,T=T+16|0,H=F+8|0,Y=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=Tp(_)|0,o[Y>>2]=Se,o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],R5(A,S,H,0),T=F}function R5(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;H=T,T=T+32|0,Y=H+16|0,At=H+8|0,Se=H,Ct=o[S>>2]|0,Ye=o[S+4>>2]|0,oe=o[A>>2]|0,A=Ace()|0,o[At>>2]=Ct,o[At+4>>2]=Ye,o[Y>>2]=o[At>>2],o[Y+4>>2]=o[At+4>>2],S=L8(Y)|0,o[Se>>2]=Ct,o[Se+4>>2]=Ye,o[Y>>2]=o[Se>>2],o[Y+4>>2]=o[Se+4>>2],Sf(oe,_,A,S,xRe(Y,F)|0,F),T=H}function Ace(){var A=0,_=0;if(s[7792]|0||(K$(9900),cu(43,9900,U|0)|0,_=7792,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9900)|0)){A=9900,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));K$(9900)}return 9900}function L8(A){return A=A|0,0}function xRe(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,H=At+24|0,oe=At+16|0,Se=At,Ye=At+8|0,Y=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=Y,o[Se+4>>2]=F,Ut=Ace()|0,Ct=Ut+24|0,A=cg(_,4)|0,o[Ye>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=Y,o[oe+4>>2]=F,o[H>>2]=o[oe>>2],o[H+4>>2]=o[oe+4>>2],U$(S,H,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(kRe(Ct,Se,Ye),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function U$(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function kRe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,Ye=A+4|0,H=(((o[Ye>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,Y=GRe(A)|0,Y>>>0>>0)DI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,cme(Se,cn>>>0>>1>>>0?Ut>>>0>>0?H:Ut:Y,((o[Ye>>2]|0)-At|0)/12|0,A+8|0),Ye=Se+8|0,Y=o[Ye>>2]|0,H=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=H,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],U$(Y,F,S),o[Ye>>2]=(o[Ye>>2]|0)+12,z9(A,Se),RB(Se),T=Ct;return}}function GRe(A){return A=A|0,357913941}function cme(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Eo();else{H=ku(_*12|0)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_*12|0)}function z9(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(((H|0)/-12|0)*12|0)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function RB(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&La(A)}function K$(A){A=A|0,LX(A)}function FRe(A){A=A|0,ZRe(A+24|0)}function ZRe(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),La(S))}function LX(A){A=A|0;var _=0;_=Ss()|0,Ks(A,2,22,_,LRe()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function LRe(){return 1344}function V8(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0;S=T,T=T+16|0,F=S+8|0,H=S,Y=dce(A)|0,A=o[Y+4>>2]|0,o[H>>2]=o[Y>>2],o[H+4>>2]=A,o[F>>2]=o[H>>2],o[F+4>>2]=o[H+4>>2],j$(_,F),T=S}function dce(A){return A=A|0,(o[(Ace()|0)+24>>2]|0)+(A*12|0)|0}function j$(A,_){A=A|0,_=_|0;var S=0;S=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(S=o[(o[A>>2]|0)+S>>2]|0),CV[S&127](A)}function Ob(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0;Y=o[A>>2]|0,H=pce()|0,A=Km(S)|0,Sf(Y,_,H,A,VRe(S,F)|0,F)}function pce(){var A=0,_=0;if(s[7800]|0||(W8(9936),cu(44,9936,U|0)|0,_=7800,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9936)|0)){A=9936,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));W8(9936)}return 9936}function Km(A){return A=A|0,A|0}function VRe(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0;return Se=T,T=T+16|0,H=Se,Y=Se+4|0,o[H>>2]=A,Ye=pce()|0,oe=Ye+24|0,_=cg(_,4)|0,o[Y>>2]=_,S=Ye+28|0,F=o[S>>2]|0,F>>>0<(o[Ye+32>>2]|0)>>>0?(z$(F,A,_),_=(o[S>>2]|0)+8|0,o[S>>2]=_):(fce(oe,H,Y),_=o[S>>2]|0),T=Se,(_-(o[oe>>2]|0)>>3)+-1|0}function z$(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,o[A+4>>2]=S}function fce(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;if(Se=T,T=T+32|0,H=Se,Y=A+4|0,oe=((o[Y>>2]|0)-(o[A>>2]|0)>>3)+1|0,F=n0(A)|0,F>>>0>>0)DI(A);else{Ye=o[A>>2]|0,At=(o[A+8>>2]|0)-Ye|0,Ct=At>>2,WRe(H,At>>3>>>0>>1>>>0?Ct>>>0>>0?oe:Ct:F,(o[Y>>2]|0)-Ye>>3,A+8|0),oe=H+8|0,z$(o[oe>>2]|0,o[_>>2]|0,o[S>>2]|0),o[oe>>2]=(o[oe>>2]|0)+8,Ice(A,H),PRe(H),T=Se;return}}function n0(A){return A=A|0,536870911}function WRe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>536870911)Eo();else{H=ku(_<<3)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S<<3)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_<<3)}function Ice(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(0-(H>>3)<<3)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function PRe(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-8-_|0)>>>3)<<3)),A=o[A>>2]|0,A|0&&La(A)}function W8(A){A=A|0,M0(A)}function q9(A){A=A|0,QUe(A+24|0)}function QUe(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),La(S))}function M0(A){A=A|0;var _=0;_=Ss()|0,Ks(A,1,23,_,k1()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function q$(A,_){A=A|0,_=_|0,ORe(o[(Cce(A)|0)>>2]|0,_)}function Cce(A){return A=A|0,(o[(pce()|0)+24>>2]|0)+(A<<3)|0}function ORe(A,_){A=A|0,_=_|0;var S=0,F=0;S=T,T=T+16|0,F=S,qp(F,_),_=_8(F,_)|0,CV[A&127](_),T=S}function $$(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0;Y=o[A>>2]|0,H=P8()|0,A=eee(S)|0,Sf(Y,_,H,A,VX(S,F)|0,F)}function P8(){var A=0,_=0;if(s[7808]|0||(DB(9972),cu(45,9972,U|0)|0,_=7808,o[_>>2]=1,o[_+4>>2]=0),!(Jr(9972)|0)){A=9972,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));DB(9972)}return 9972}function eee(A){return A=A|0,A|0}function VX(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0;return Se=T,T=T+16|0,H=Se,Y=Se+4|0,o[H>>2]=A,Ye=P8()|0,oe=Ye+24|0,_=cg(_,4)|0,o[Y>>2]=_,S=Ye+28|0,F=o[S>>2]|0,F>>>0<(o[Ye+32>>2]|0)>>>0?(O8(F,A,_),_=(o[S>>2]|0)+8|0,o[S>>2]=_):(Q8(oe,H,Y),_=o[S>>2]|0),T=Se,(_-(o[oe>>2]|0)>>3)+-1|0}function O8(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,o[A+4>>2]=S}function Q8(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;if(Se=T,T=T+32|0,H=Se,Y=A+4|0,oe=((o[Y>>2]|0)-(o[A>>2]|0)>>3)+1|0,F=Gx(A)|0,F>>>0>>0)DI(A);else{Ye=o[A>>2]|0,At=(o[A+8>>2]|0)-Ye|0,Ct=At>>2,lme(H,At>>3>>>0>>1>>>0?Ct>>>0>>0?oe:Ct:F,(o[Y>>2]|0)-Ye>>3,A+8|0),oe=H+8|0,O8(o[oe>>2]|0,o[_>>2]|0,o[S>>2]|0),o[oe>>2]=(o[oe>>2]|0)+8,ume(A,H),WX(H),T=Se;return}}function Gx(A){return A=A|0,536870911}function lme(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>536870911)Eo();else{H=ku(_<<3)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S<<3)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_<<3)}function ume(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(0-(H>>3)<<3)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function WX(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-8-_|0)>>>3)<<3)),A=o[A>>2]|0,A|0&&La(A)}function DB(A){A=A|0,QRe(A)}function mce(A){A=A|0,hce(A+24|0)}function hce(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),La(S))}function QRe(A){A=A|0;var _=0;_=Ss()|0,Ks(A,1,9,_,BZ()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function BZ(){return 1348}function M8(A,_){return A=A|0,_=_|0,D5(o[(gme(A)|0)>>2]|0,_)|0}function gme(A){return A=A|0,(o[(P8()|0)+24>>2]|0)+(A<<3)|0}function D5(A,_){A=A|0,_=_|0;var S=0,F=0;return S=T,T=T+16|0,F=S,jR(F,_),_=i0(F,_)|0,_=DS(gM[A&31](_)|0)|0,T=S,_|0}function jR(A,_){A=A|0,_=_|0}function i0(A,_){return A=A|0,_=_|0,MUe(_)|0}function MUe(A){return A=A|0,A|0}function io(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0;Y=o[A>>2]|0,H=H8()|0,A=_ce(S)|0,Sf(Y,_,H,A,tee(S,F)|0,F)}function H8(){var A=0,_=0;if(s[7816]|0||(Y8(10008),cu(46,10008,U|0)|0,_=7816,o[_>>2]=1,o[_+4>>2]=0),!(Jr(10008)|0)){A=10008,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));Y8(10008)}return 10008}function _ce(A){return A=A|0,A|0}function tee(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0;return Se=T,T=T+16|0,H=Se,Y=Se+4|0,o[H>>2]=A,Ye=H8()|0,oe=Ye+24|0,_=cg(_,4)|0,o[Y>>2]=_,S=Ye+28|0,F=o[S>>2]|0,F>>>0<(o[Ye+32>>2]|0)>>>0?(ree(F,A,_),_=(o[S>>2]|0)+8|0,o[S>>2]=_):(H0(oe,H,Y),_=o[S>>2]|0),T=Se,(_-(o[oe>>2]|0)>>3)+-1|0}function ree(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,o[A+4>>2]=S}function H0(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;if(Se=T,T=T+32|0,H=Se,Y=A+4|0,oe=((o[Y>>2]|0)-(o[A>>2]|0)>>3)+1|0,F=nee(A)|0,F>>>0>>0)DI(A);else{Ye=o[A>>2]|0,At=(o[A+8>>2]|0)-Ye|0,Ct=At>>2,$9(H,At>>3>>>0>>1>>>0?Ct>>>0>>0?oe:Ct:F,(o[Y>>2]|0)-Ye>>3,A+8|0),oe=H+8|0,ree(o[oe>>2]|0,o[_>>2]|0,o[S>>2]|0),o[oe>>2]=(o[oe>>2]|0)+8,MRe(A,H),HUe(H),T=Se;return}}function nee(A){return A=A|0,536870911}function $9(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>536870911)Eo();else{H=ku(_<<3)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S<<3)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_<<3)}function MRe(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(0-(H>>3)<<3)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function HUe(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-8-_|0)>>>3)<<3)),A=o[A>>2]|0,A|0&&La(A)}function Y8(A){A=A|0,X8(A)}function iee(A){A=A|0,yce(A+24|0)}function yce(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),La(S))}function X8(A){A=A|0;var _=0;_=Ss()|0,Ks(A,1,15,_,Ag()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function see(A){return A=A|0,jTt(o[(J8(A)|0)>>2]|0)|0}function J8(A){return A=A|0,(o[(H8()|0)+24>>2]|0)+(A<<3)|0}function jTt(A){return A=A|0,DS(i_[A&7]()|0)|0}function x5(){var A=0;return s[7832]|0||(mI(10052),cu(25,10052,U|0)|0,A=7832,o[A>>2]=1,o[A+4>>2]=0),10052}function vZ(A,_){A=A|0,_=_|0,o[A>>2]=zTt()|0,o[A+4>>2]=HRe()|0,o[A+12>>2]=_,o[A+8>>2]=Ame()|0,o[A+32>>2]=2}function zTt(){return 11709}function HRe(){return 1188}function Ame(){return U8()|0}function PX(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,(yG(F,896)|0)==512?S|0&&(H3(S),La(S)):_|0&&(ES(_),La(_))}function yG(A,_){return A=A|0,_=_|0,_&A|0}function H3(A){A=A|0,A=o[A+4>>2]|0,A|0&&oM(A)}function U8(){var A=0;return s[7824]|0||(o[2511]=dN()|0,o[2512]=0,A=7824,o[A>>2]=1,o[A+4>>2]=0),10044}function dN(){return 0}function mI(A){A=A|0,jc(A)}function Y3(A){A=A|0;var _=0,S=0,F=0,H=0,Y=0;_=T,T=T+32|0,S=_+24|0,Y=_+16|0,H=_+8|0,F=_,bce(A,4827),oee(A,4834,3)|0,eV(A,3682,47)|0,o[Y>>2]=9,o[Y+4>>2]=0,o[S>>2]=o[Y>>2],o[S+4>>2]=o[Y+4>>2],Ece(A,4841,S)|0,o[H>>2]=1,o[H+4>>2]=0,o[S>>2]=o[H>>2],o[S+4>>2]=o[H+4>>2],X3(A,4871,S)|0,o[F>>2]=10,o[F+4>>2]=0,o[S>>2]=o[F>>2],o[S+4>>2]=o[F+4>>2],aee(A,4891,S)|0,T=_}function bce(A,_){A=A|0,_=_|0;var S=0;S=nDe()|0,o[A>>2]=S,n6(S,_),O5(o[A>>2]|0)}function oee(A,_,S){return A=A|0,_=_|0,S=S|0,$Ue(A,Tp(_)|0,S,0),A|0}function eV(A,_,S){return A=A|0,_=_|0,S=S|0,mee(A,Tp(_)|0,S,0),A|0}function Ece(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return F=T,T=T+16|0,H=F+8|0,Y=F,oe=o[S+4>>2]|0,o[Y>>2]=o[S>>2],o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],jRe(A,_,H),T=F,A|0}function X3(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return F=T,T=T+16|0,H=F+8|0,Y=F,oe=o[S+4>>2]|0,o[Y>>2]=o[S>>2],o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],T2(A,_,H),T=F,A|0}function aee(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return F=T,T=T+16|0,H=F+8|0,Y=F,oe=o[S+4>>2]|0,o[Y>>2]=o[S>>2],o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],qTt(A,_,H),T=F,A|0}function qTt(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0;F=T,T=T+16|0,H=F+8|0,Y=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=Tp(_)|0,o[Y>>2]=Se,o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],$Tt(A,S,H,1),T=F}function $Tt(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;H=T,T=T+32|0,Y=H+16|0,At=H+8|0,Se=H,Ct=o[S>>2]|0,Ye=o[S+4>>2]|0,oe=o[A>>2]|0,A=K8()|0,o[At>>2]=Ct,o[At+4>>2]=Ye,o[Y>>2]=o[At>>2],o[Y+4>>2]=o[At+4>>2],S=zR(Y)|0,o[Se>>2]=Ct,o[Se+4>>2]=Ye,o[Y>>2]=o[Se>>2],o[Y+4>>2]=o[Se+4>>2],Sf(oe,_,A,S,cee(Y,F)|0,F),T=H}function K8(){var A=0,_=0;if(s[7840]|0||(OX(10100),cu(48,10100,U|0)|0,_=7840,o[_>>2]=1,o[_+4>>2]=0),!(Jr(10100)|0)){A=10100,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));OX(10100)}return 10100}function zR(A){return A=A|0,0}function cee(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,H=At+24|0,oe=At+16|0,Se=At,Ye=At+8|0,Y=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=Y,o[Se+4>>2]=F,Ut=K8()|0,Ct=Ut+24|0,A=cg(_,4)|0,o[Ye>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=Y,o[oe+4>>2]=F,o[H>>2]=o[oe>>2],o[H+4>>2]=o[oe+4>>2],Bce(S,H,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(lee(Ct,Se,Ye),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function Bce(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function lee(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,Ye=A+4|0,H=(((o[Ye>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,Y=YRe(A)|0,Y>>>0>>0)DI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,uee(Se,cn>>>0>>1>>>0?Ut>>>0>>0?H:Ut:Y,((o[Ye>>2]|0)-At|0)/12|0,A+8|0),Ye=Se+8|0,Y=o[Ye>>2]|0,H=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=H,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],Bce(Y,F,S),o[Ye>>2]=(o[Ye>>2]|0)+12,XRe(A,Se),j8(Se),T=Ct;return}}function YRe(A){return A=A|0,357913941}function uee(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Eo();else{H=ku(_*12|0)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_*12|0)}function XRe(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(((H|0)/-12|0)*12|0)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function j8(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&La(A)}function OX(A){A=A|0,QX(A)}function gee(A){A=A|0,k5(A+24|0)}function k5(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),La(S))}function QX(A){A=A|0;var _=0;_=Ss()|0,Ks(A,2,6,_,G5()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function G5(){return 1364}function JRe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;return F=T,T=T+16|0,H=F+8|0,Y=F,oe=F5(A)|0,A=o[oe+4>>2]|0,o[Y>>2]=o[oe>>2],o[Y+4>>2]=A,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],S=MX(_,H,S)|0,T=F,S|0}function F5(A){return A=A|0,(o[(K8()|0)+24>>2]|0)+(A*12|0)|0}function MX(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0;return Y=T,T=T+16|0,H=Y,F=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(F=o[(o[A>>2]|0)+F>>2]|0),wf(H,S),H=Uw(H,S)|0,H=N1(kg[F&15](A,H)|0)|0,T=Y,H|0}function T2(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0;F=T,T=T+16|0,H=F+8|0,Y=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=Tp(_)|0,o[Y>>2]=Se,o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],Aee(A,S,H,0),T=F}function Aee(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;H=T,T=T+32|0,Y=H+16|0,At=H+8|0,Se=H,Ct=o[S>>2]|0,Ye=o[S+4>>2]|0,oe=o[A>>2]|0,A=URe()|0,o[At>>2]=Ct,o[At+4>>2]=Ye,o[Y>>2]=o[At>>2],o[Y+4>>2]=o[At+4>>2],S=YUe(Y)|0,o[Se>>2]=Ct,o[Se+4>>2]=Ye,o[Y>>2]=o[Se>>2],o[Y+4>>2]=o[Se+4>>2],Sf(oe,_,A,S,dme(Y,F)|0,F),T=H}function URe(){var A=0,_=0;if(s[7848]|0||(UUe(10136),cu(49,10136,U|0)|0,_=7848,o[_>>2]=1,o[_+4>>2]=0),!(Jr(10136)|0)){A=10136,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));UUe(10136)}return 10136}function YUe(A){return A=A|0,0}function dme(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,H=At+24|0,oe=At+16|0,Se=At,Ye=At+8|0,Y=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=Y,o[Se+4>>2]=F,Ut=URe()|0,Ct=Ut+24|0,A=cg(_,4)|0,o[Ye>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=Y,o[oe+4>>2]=F,o[H>>2]=o[oe>>2],o[H+4>>2]=o[oe+4>>2],J3(S,H,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(XUe(Ct,Se,Ye),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function J3(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function XUe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,Ye=A+4|0,H=(((o[Ye>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,Y=dee(A)|0,Y>>>0>>0)DI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,pee(Se,cn>>>0>>1>>>0?Ut>>>0>>0?H:Ut:Y,((o[Ye>>2]|0)-At|0)/12|0,A+8|0),Ye=Se+8|0,Y=o[Ye>>2]|0,H=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=H,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],J3(Y,F,S),o[Ye>>2]=(o[Ye>>2]|0)+12,pme(A,Se),JUe(Se),T=Ct;return}}function dee(A){return A=A|0,357913941}function pee(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Eo();else{H=ku(_*12|0)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_*12|0)}function pme(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(((H|0)/-12|0)*12|0)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function JUe(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&La(A)}function UUe(A){A=A|0,vce(A)}function fme(A){A=A|0,fee(A+24|0)}function fee(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),La(S))}function vce(A){A=A|0;var _=0;_=Ss()|0,Ks(A,2,9,_,Ime()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function Ime(){return 1372}function SZ(A,_,S){A=A|0,_=_|0,S=+S;var F=0,H=0,Y=0,oe=0;F=T,T=T+16|0,H=F+8|0,Y=F,oe=wZ(A)|0,A=o[oe+4>>2]|0,o[Y>>2]=o[oe>>2],o[Y+4>>2]=A,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],tV(_,H,S),T=F}function wZ(A){return A=A|0,(o[(URe()|0)+24>>2]|0)+(A*12|0)|0}function tV(A,_,S){A=A|0,_=_|0,S=+S;var F=0,H=0,Y=0,oe=ys;Y=T,T=T+16|0,H=Y,F=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(F=o[(o[A>>2]|0)+F>>2]|0),HX(H,S),oe=we(KRe(H,S)),g4[F&1](A,oe),T=Y}function HX(A,_){A=A|0,_=+_}function KRe(A,_){return A=A|0,_=+_,we(KUe(_))}function KUe(A){return A=+A,we(A)}function jRe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0;F=T,T=T+16|0,H=F+8|0,Y=F,Se=o[S>>2]|0,oe=o[S+4>>2]|0,S=Tp(_)|0,o[Y>>2]=Se,o[Y+4>>2]=oe,o[H>>2]=o[Y>>2],o[H+4>>2]=o[Y+4>>2],zRe(A,S,H,0),T=F}function zRe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;H=T,T=T+32|0,Y=H+16|0,At=H+8|0,Se=H,Ct=o[S>>2]|0,Ye=o[S+4>>2]|0,oe=o[A>>2]|0,A=Fx()|0,o[At>>2]=Ct,o[At+4>>2]=Ye,o[Y>>2]=o[At>>2],o[Y+4>>2]=o[At+4>>2],S=Zx(Y)|0,o[Se>>2]=Ct,o[Se+4>>2]=Ye,o[Y>>2]=o[Se>>2],o[Y+4>>2]=o[Se+4>>2],Sf(oe,_,A,S,eNt(Y,F)|0,F),T=H}function Fx(){var A=0,_=0;if(s[7856]|0||(Cme(10172),cu(50,10172,U|0)|0,_=7856,o[_>>2]=1,o[_+4>>2]=0),!(Jr(10172)|0)){A=10172,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));Cme(10172)}return 10172}function Zx(A){return A=A|0,0}function eNt(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0;return At=T,T=T+32|0,H=At+24|0,oe=At+16|0,Se=At,Ye=At+8|0,Y=o[A>>2]|0,F=o[A+4>>2]|0,o[Se>>2]=Y,o[Se+4>>2]=F,Ut=Fx()|0,Ct=Ut+24|0,A=cg(_,4)|0,o[Ye>>2]=A,_=Ut+28|0,S=o[_>>2]|0,S>>>0<(o[Ut+32>>2]|0)>>>0?(o[oe>>2]=Y,o[oe+4>>2]=F,o[H>>2]=o[oe>>2],o[H+4>>2]=o[oe+4>>2],Sce(S,H,A),A=(o[_>>2]|0)+12|0,o[_>>2]=A):(qRe(Ct,Se,Ye),A=o[_>>2]|0),T=At,((A-(o[Ct>>2]|0)|0)/12|0)+-1|0}function Sce(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=o[_+4>>2]|0,o[A>>2]=o[_>>2],o[A+4>>2]=F,o[A+8>>2]=S}function qRe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0;if(Ct=T,T=T+48|0,F=Ct+32|0,oe=Ct+24|0,Se=Ct,Ye=A+4|0,H=(((o[Ye>>2]|0)-(o[A>>2]|0)|0)/12|0)+1|0,Y=Z5(A)|0,Y>>>0>>0)DI(A);else{At=o[A>>2]|0,cn=((o[A+8>>2]|0)-At|0)/12|0,Ut=cn<<1,jUe(Se,cn>>>0>>1>>>0?Ut>>>0>>0?H:Ut:Y,((o[Ye>>2]|0)-At|0)/12|0,A+8|0),Ye=Se+8|0,Y=o[Ye>>2]|0,H=o[_+4>>2]|0,S=o[S>>2]|0,o[oe>>2]=o[_>>2],o[oe+4>>2]=H,o[F>>2]=o[oe>>2],o[F+4>>2]=o[oe+4>>2],Sce(Y,F,S),o[Ye>>2]=(o[Ye>>2]|0)+12,Iee(A,Se),qR(Se),T=Ct;return}}function Z5(A){return A=A|0,357913941}function jUe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>357913941)Eo();else{H=ku(_*12|0)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S*12|0)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_*12|0)}function Iee(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(((H|0)/-12|0)*12|0)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function qR(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~(((F+-12-_|0)>>>0)/12|0)*12|0)),A=o[A>>2]|0,A|0&&La(A)}function Cme(A){A=A|0,mme(A)}function z8(A){A=A|0,zA(A+24|0)}function zA(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~(((_+-12-F|0)>>>0)/12|0)*12|0)),La(S))}function mme(A){A=A|0;var _=0;_=Ss()|0,Ks(A,2,3,_,rV()|0,2),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function rV(){return 1380}function tT(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0;H=T,T=T+16|0,Y=H+8|0,oe=H,Se=q8(A)|0,A=o[Se+4>>2]|0,o[oe>>2]=o[Se>>2],o[oe+4>>2]=A,o[Y>>2]=o[oe>>2],o[Y+4>>2]=o[oe+4>>2],Cee(_,Y,S,F),T=H}function q8(A){return A=A|0,(o[(Fx()|0)+24>>2]|0)+(A*12|0)|0}function Cee(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0;Se=T,T=T+16|0,Y=Se+1|0,oe=Se,H=o[_>>2]|0,_=o[_+4>>2]|0,A=A+(_>>1)|0,_&1&&(H=o[(o[A>>2]|0)+H>>2]|0),wf(Y,S),Y=Uw(Y,S)|0,$Re(oe,F),oe=zUe(oe,F)|0,ef[H&15](A,Y,oe),T=Se}function $Re(A,_){A=A|0,_=_|0}function zUe(A,_){return A=A|0,_=_|0,hme(_)|0}function hme(A){return A=A|0,(A|0)!=0|0}function mee(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0;Y=o[A>>2]|0,H=U3()|0,A=_me(S)|0,Sf(Y,_,H,A,eDe(S,F)|0,F)}function U3(){var A=0,_=0;if(s[7864]|0||(bG(10208),cu(51,10208,U|0)|0,_=7864,o[_>>2]=1,o[_+4>>2]=0),!(Jr(10208)|0)){A=10208,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));bG(10208)}return 10208}function _me(A){return A=A|0,A|0}function eDe(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0;return Se=T,T=T+16|0,H=Se,Y=Se+4|0,o[H>>2]=A,Ye=U3()|0,oe=Ye+24|0,_=cg(_,4)|0,o[Y>>2]=_,S=Ye+28|0,F=o[S>>2]|0,F>>>0<(o[Ye+32>>2]|0)>>>0?(xv(F,A,_),_=(o[S>>2]|0)+8|0,o[S>>2]=_):(nV(oe,H,Y),_=o[S>>2]|0),T=Se,(_-(o[oe>>2]|0)>>3)+-1|0}function xv(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,o[A+4>>2]=S}function nV(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;if(Se=T,T=T+32|0,H=Se,Y=A+4|0,oe=((o[Y>>2]|0)-(o[A>>2]|0)>>3)+1|0,F=YX(A)|0,F>>>0>>0)DI(A);else{Ye=o[A>>2]|0,At=(o[A+8>>2]|0)-Ye|0,Ct=At>>2,$8(H,At>>3>>>0>>1>>>0?Ct>>>0>>0?oe:Ct:F,(o[Y>>2]|0)-Ye>>3,A+8|0),oe=H+8|0,xv(o[oe>>2]|0,o[_>>2]|0,o[S>>2]|0),o[oe>>2]=(o[oe>>2]|0)+8,e6(A,H),hee(H),T=Se;return}}function YX(A){return A=A|0,536870911}function $8(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>536870911)Eo();else{H=ku(_<<3)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S<<3)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_<<3)}function e6(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(0-(H>>3)<<3)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function hee(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-8-_|0)>>>3)<<3)),A=o[A>>2]|0,A|0&&La(A)}function bG(A){A=A|0,wce(A)}function s0(A){A=A|0,yme(A+24|0)}function yme(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),La(S))}function wce(A){A=A|0;var _=0;_=Ss()|0,Ks(A,1,24,_,Tce()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function Tce(){return 1392}function bme(A,_){A=A|0,_=_|0,L5(o[(qUe(A)|0)>>2]|0,_)}function qUe(A){return A=A|0,(o[(U3()|0)+24>>2]|0)+(A<<3)|0}function L5(A,_){A=A|0,_=_|0;var S=0,F=0;S=T,T=T+16|0,F=S,jR(F,_),_=i0(F,_)|0,CV[A&127](_),T=S}function $Ue(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0;Y=o[A>>2]|0,H=_ee()|0,A=XX(S)|0,Sf(Y,_,H,A,tDe(S,F)|0,F)}function _ee(){var A=0,_=0;if(s[7872]|0||(iV(10244),cu(52,10244,U|0)|0,_=7872,o[_>>2]=1,o[_+4>>2]=0),!(Jr(10244)|0)){A=10244,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));iV(10244)}return 10244}function XX(A){return A=A|0,A|0}function tDe(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0;return Se=T,T=T+16|0,H=Se,Y=Se+4|0,o[H>>2]=A,Ye=_ee()|0,oe=Ye+24|0,_=cg(_,4)|0,o[Y>>2]=_,S=Ye+28|0,F=o[S>>2]|0,F>>>0<(o[Ye+32>>2]|0)>>>0?(YI(F,A,_),_=(o[S>>2]|0)+8|0,o[S>>2]=_):(t6(oe,H,Y),_=o[S>>2]|0),T=Se,(_-(o[oe>>2]|0)>>3)+-1|0}function YI(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,o[A+4>>2]=S}function t6(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;if(Se=T,T=T+32|0,H=Se,Y=A+4|0,oe=((o[Y>>2]|0)-(o[A>>2]|0)>>3)+1|0,F=ZE(A)|0,F>>>0>>0)DI(A);else{Ye=o[A>>2]|0,At=(o[A+8>>2]|0)-Ye|0,Ct=At>>2,Nce(H,At>>3>>>0>>1>>>0?Ct>>>0>>0?oe:Ct:F,(o[Y>>2]|0)-Ye>>3,A+8|0),oe=H+8|0,YI(o[oe>>2]|0,o[_>>2]|0,o[S>>2]|0),o[oe>>2]=(o[oe>>2]|0)+8,$R(A,H),Rce(H),T=Se;return}}function ZE(A){return A=A|0,536870911}function Nce(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>536870911)Eo();else{H=ku(_<<3)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S<<3)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_<<3)}function $R(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(0-(H>>3)<<3)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function Rce(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-8-_|0)>>>3)<<3)),A=o[A>>2]|0,A|0&&La(A)}function iV(A){A=A|0,r6(A)}function WS(A){A=A|0,N2(A+24|0)}function N2(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),La(S))}function r6(A){A=A|0;var _=0;_=Ss()|0,Ks(A,1,16,_,eKe()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function eKe(){return 1400}function yee(A){return A=A|0,rDe(o[(bee(A)|0)>>2]|0)|0}function bee(A){return A=A|0,(o[(_ee()|0)+24>>2]|0)+(A<<3)|0}function rDe(A){return A=A|0,tKe(i_[A&7]()|0)|0}function tKe(A){return A=A|0,A|0}function nDe(){var A=0;return s[7880]|0||(vme(10280),cu(25,10280,U|0)|0,A=7880,o[A>>2]=1,o[A+4>>2]=0),10280}function n6(A,_){A=A|0,_=_|0,o[A>>2]=Eme()|0,o[A+4>>2]=rb()|0,o[A+12>>2]=_,o[A+8>>2]=Bme()|0,o[A+32>>2]=4}function Eme(){return 11711}function rb(){return 1356}function Bme(){return U8()|0}function TZ(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,(yG(F,896)|0)==512?S|0&&(PS(S),La(S)):_|0&&(F0(_),La(_))}function PS(A){A=A|0,A=o[A+4>>2]|0,A|0&&oM(A)}function vme(A){A=A|0,jc(A)}function $d(A){A=A|0,rKe(A,4920),iDe(A)|0,Sme(A)|0}function rKe(A,_){A=A|0,_=_|0;var S=0;S=k$()|0,o[A>>2]=S,lNt(S,_),O5(o[A>>2]|0)}function iDe(A){A=A|0;var _=0;return _=o[A>>2]|0,EG(_,nNt()|0),A|0}function Sme(A){A=A|0;var _=0;return _=o[A>>2]|0,EG(_,wme()|0),A|0}function wme(){var A=0;return s[7888]|0||(Dce(10328),cu(53,10328,U|0)|0,A=7888,o[A>>2]=1,o[A+4>>2]=0),Jr(10328)|0||Dce(10328),10328}function EG(A,_){A=A|0,_=_|0,Sf(A,0,_,0,0,0)}function Dce(A){A=A|0,Bee(A),BG(A,10)}function sDe(A){A=A|0,Eee(A+24|0)}function Eee(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),La(S))}function Bee(A){A=A|0;var _=0;_=Ss()|0,Ks(A,5,1,_,oDe()|0,2),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function JX(A,_,S){A=A|0,_=_|0,S=+S,tNt(A,_,S)}function BG(A,_){A=A|0,_=_|0,o[A+20>>2]=_}function tNt(A,_,S){A=A|0,_=_|0,S=+S;var F=0,H=0,Y=0,oe=0,Se=0;F=T,T=T+16|0,Y=F+8|0,Se=F+13|0,H=F,oe=F+12|0,wf(Se,_),o[Y>>2]=Uw(Se,_)|0,Sv(oe,S),y[H>>3]=+lN(oe,S),Tme(A,Y,H),T=F}function Tme(A,_,S){A=A|0,_=_|0,S=S|0,bd(A+8|0,o[_>>2]|0,+y[S>>3]),s[A+24>>0]=1}function oDe(){return 1404}function Nme(A,_){return A=A|0,_=+_,rNt(A,_)|0}function rNt(A,_){A=A|0,_=+_;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0;return F=T,T=T+16|0,Y=F+4|0,oe=F+8|0,Se=F,H=mN(8)|0,S=H,Ye=ku(16)|0,wf(Y,A),A=Uw(Y,A)|0,Sv(oe,_),bd(Ye,A,+lN(oe,_)),oe=S+4|0,o[oe>>2]=Ye,A=ku(8)|0,oe=o[oe>>2]|0,o[Se>>2]=0,o[Y>>2]=o[Se>>2],E5(A,oe,Y),o[H>>2]=A,T=F,S|0}function nNt(){var A=0;return s[7896]|0||(nKe(10364),cu(54,10364,U|0)|0,A=7896,o[A>>2]=1,o[A+4>>2]=0),Jr(10364)|0||nKe(10364),10364}function nKe(A){A=A|0,sNt(A),BG(A,55)}function iNt(A){A=A|0,iKe(A+24|0)}function iKe(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),La(S))}function sNt(A){A=A|0;var _=0;_=Ss()|0,Ks(A,5,4,_,oNt()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function rT(A){A=A|0,sKe(A)}function sKe(A){A=A|0,xce(A)}function xce(A){A=A|0,oKe(A+8|0),s[A+24>>0]=1}function oKe(A){A=A|0,o[A>>2]=0,y[A+8>>3]=0}function oNt(){return 1424}function aNt(){return cNt()|0}function cNt(){var A=0,_=0,S=0,F=0,H=0,Y=0,oe=0;return _=T,T=T+16|0,H=_+4|0,oe=_,S=mN(8)|0,A=S,F=ku(16)|0,oKe(F),Y=A+4|0,o[Y>>2]=F,F=ku(8)|0,Y=o[Y>>2]|0,o[oe>>2]=0,o[H>>2]=o[oe>>2],E5(F,Y,H),o[S>>2]=F,T=_,A|0}function lNt(A,_){A=A|0,_=_|0,o[A>>2]=Rme()|0,o[A+4>>2]=R2()|0,o[A+12>>2]=_,o[A+8>>2]=uNt()|0,o[A+32>>2]=5}function Rme(){return 11710}function R2(){return 1416}function uNt(){return KX()|0}function UX(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,(yG(F,896)|0)==512?S|0&&(vee(S),La(S)):_|0&&La(_)}function vee(A){A=A|0,A=o[A+4>>2]|0,A|0&&oM(A)}function KX(){var A=0;return s[7904]|0||(o[2600]=jX()|0,o[2601]=0,A=7904,o[A>>2]=1,o[A+4>>2]=0),10400}function jX(){return o[357]|0}function See(A){A=A|0,Dme(A,4926),zX(A)|0}function Dme(A,_){A=A|0,_=_|0;var S=0;S=Cg()|0,o[A>>2]=S,Lce(S,_),O5(o[A>>2]|0)}function zX(A){A=A|0;var _=0;return _=o[A>>2]|0,EG(_,Lx()|0),A|0}function Lx(){var A=0;return s[7912]|0||(kce(10412),cu(56,10412,U|0)|0,A=7912,o[A>>2]=1,o[A+4>>2]=0),Jr(10412)|0||kce(10412),10412}function kce(A){A=A|0,xme(A),BG(A,57)}function aKe(A){A=A|0,aDe(A+24|0)}function aDe(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),La(S))}function xme(A){A=A|0;var _=0;_=Ss()|0,Ks(A,5,5,_,Fce()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function cDe(A){A=A|0,lDe(A)}function lDe(A){A=A|0,Gce(A)}function Gce(A){A=A|0;var _=0,S=0;_=A+8|0,S=_+48|0;do o[_>>2]=0,_=_+4|0;while((_|0)<(S|0));s[A+56>>0]=1}function Fce(){return 1432}function uDe(){return Zce()|0}function Zce(){var A=0,_=0,S=0,F=0,H=0,Y=0,oe=0,Se=0;oe=T,T=T+16|0,A=oe+4|0,_=oe,S=mN(8)|0,F=S,H=ku(48)|0,Y=H,Se=Y+48|0;do o[Y>>2]=0,Y=Y+4|0;while((Y|0)<(Se|0));return Y=F+4|0,o[Y>>2]=H,Se=ku(8)|0,Y=o[Y>>2]|0,o[_>>2]=0,o[A>>2]=o[_>>2],w3(Se,Y,A),o[S>>2]=Se,T=oe,F|0}function Lce(A,_){A=A|0,_=_|0,o[A>>2]=K3()|0,o[A+4>>2]=Vce()|0,o[A+12>>2]=_,o[A+8>>2]=Wce()|0,o[A+32>>2]=6}function K3(){return 11704}function Vce(){return 1436}function Wce(){return KX()|0}function wee(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,(yG(F,896)|0)==512?S|0&&(cKe(S),La(S)):_|0&&La(_)}function cKe(A){A=A|0,A=o[A+4>>2]|0,A|0&&oM(A)}function kme(A){A=A|0,i6(A,4933),j3(A)|0,pN(A)|0}function i6(A,_){A=A|0,_=_|0;var S=0;S=CC()|0,o[A>>2]=S,Pce(S,_),O5(o[A>>2]|0)}function j3(A){A=A|0;var _=0;return _=o[A>>2]|0,EG(_,pDe()|0),A|0}function pN(A){A=A|0;var _=0;return _=o[A>>2]|0,EG(_,qX()|0),A|0}function qX(){var A=0;return s[7920]|0||(Gme(10452),cu(58,10452,U|0)|0,A=7920,o[A>>2]=1,o[A+4>>2]=0),Jr(10452)|0||Gme(10452),10452}function Gme(A){A=A|0,vG(A),BG(A,1)}function sV(A){A=A|0,oV(A+24|0)}function oV(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),La(S))}function vG(A){A=A|0;var _=0;_=Ss()|0,Ks(A,5,1,_,IC()|0,2),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function V5(A,_,S){A=A|0,_=+_,S=+S,aV(A,_,S)}function aV(A,_,S){A=A|0,_=+_,S=+S;var F=0,H=0,Y=0,oe=0,Se=0;F=T,T=T+32|0,Y=F+8|0,Se=F+17|0,H=F,oe=F+16|0,Sv(Se,_),y[Y>>3]=+lN(Se,_),Sv(oe,S),y[H>>3]=+lN(oe,S),Fme(A,Y,H),T=F}function Fme(A,_,S){A=A|0,_=_|0,S=S|0,Vx(A+8|0,+y[_>>3],+y[S>>3]),s[A+24>>0]=1}function Vx(A,_,S){A=A|0,_=+_,S=+S,y[A>>3]=_,y[A+8>>3]=S}function IC(){return 1472}function gDe(A,_){return A=+A,_=+_,nb(A,_)|0}function nb(A,_){A=+A,_=+_;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0;return F=T,T=T+16|0,oe=F+4|0,Se=F+8|0,Ye=F,H=mN(8)|0,S=H,Y=ku(16)|0,Sv(oe,A),A=+lN(oe,A),Sv(Se,_),Vx(Y,A,+lN(Se,_)),Se=S+4|0,o[Se>>2]=Y,Y=ku(8)|0,Se=o[Se>>2]|0,o[Ye>>2]=0,o[oe>>2]=o[Ye>>2],Tee(Y,Se,oe),o[H>>2]=Y,T=F,S|0}function Tee(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,S=ku(16)|0,o[S+4>>2]=0,o[S+8>>2]=0,o[S>>2]=1452,o[S+12>>2]=_,o[A+4>>2]=S}function gNt(A){A=A|0,l4(A),La(A)}function ADe(A){A=A|0,A=o[A+12>>2]|0,A|0&&La(A)}function dDe(A){A=A|0,La(A)}function pDe(){var A=0;return s[7928]|0||(Zme(10488),cu(59,10488,U|0)|0,A=7928,o[A>>2]=1,o[A+4>>2]=0),Jr(10488)|0||Zme(10488),10488}function Zme(A){A=A|0,$X(A),BG(A,60)}function fDe(A){A=A|0,IDe(A+24|0)}function IDe(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),La(S))}function $X(A){A=A|0;var _=0;_=Ss()|0,Ks(A,5,6,_,ib()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function ANt(A){A=A|0,lKe(A)}function lKe(A){A=A|0,Lme(A)}function Lme(A){A=A|0,Vme(A+8|0),s[A+24>>0]=1}function Vme(A){A=A|0,o[A>>2]=0,o[A+4>>2]=0,o[A+8>>2]=0,o[A+12>>2]=0}function ib(){return 1492}function ya(){return eg()|0}function eg(){var A=0,_=0,S=0,F=0,H=0,Y=0,oe=0;return _=T,T=T+16|0,H=_+4|0,oe=_,S=mN(8)|0,A=S,F=ku(16)|0,Vme(F),Y=A+4|0,o[Y>>2]=F,F=ku(8)|0,Y=o[Y>>2]|0,o[oe>>2]=0,o[H>>2]=o[oe>>2],Tee(F,Y,H),o[S>>2]=F,T=_,A|0}function CC(){var A=0;return s[7936]|0||(W5(10524),cu(25,10524,U|0)|0,A=7936,o[A>>2]=1,o[A+4>>2]=0),10524}function Pce(A,_){A=A|0,_=_|0,o[A>>2]=cV()|0,o[A+4>>2]=Wme()|0,o[A+12>>2]=_,o[A+8>>2]=OS()|0,o[A+32>>2]=7}function cV(){return 11700}function Wme(){return 1484}function OS(){return KX()|0}function s6(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,(yG(F,896)|0)==512?S|0&&(LE(S),La(S)):_|0&&La(_)}function LE(A){A=A|0,A=o[A+4>>2]|0,A|0&&oM(A)}function W5(A){A=A|0,jc(A)}function CDe(A,_,S){A=A|0,_=_|0,S=S|0,A=Tp(_)|0,_=mDe(S)|0,S=R_(S,0)|0,Mce(A,_,S,Oce()|0,0)}function mDe(A){return A=A|0,A|0}function R_(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0;return Se=T,T=T+16|0,H=Se,Y=Se+4|0,o[H>>2]=A,Ye=Oce()|0,oe=Ye+24|0,_=cg(_,4)|0,o[Y>>2]=_,S=Ye+28|0,F=o[S>>2]|0,F>>>0<(o[Ye+32>>2]|0)>>>0?(kv(F,A,_),_=(o[S>>2]|0)+8|0,o[S>>2]=_):(P5(oe,H,Y),_=o[S>>2]|0),T=Se,(_-(o[oe>>2]|0)>>3)+-1|0}function Oce(){var A=0,_=0;if(s[7944]|0||(eD(10568),cu(61,10568,U|0)|0,_=7944,o[_>>2]=1,o[_+4>>2]=0),!(Jr(10568)|0)){A=10568,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));eD(10568)}return 10568}function eD(A){A=A|0,gKe(A)}function uKe(A){A=A|0,dNt(A+24|0)}function dNt(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),La(S))}function gKe(A){A=A|0;var _=0;_=Ss()|0,Ks(A,1,17,_,Rx()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function pNt(A){return A=A|0,Pme(o[(hDe(A)|0)>>2]|0)|0}function hDe(A){return A=A|0,(o[(Oce()|0)+24>>2]|0)+(A<<3)|0}function Pme(A){return A=A|0,hX(i_[A&7]()|0)|0}function kv(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,o[A+4>>2]=S}function P5(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;if(Se=T,T=T+32|0,H=Se,Y=A+4|0,oe=((o[Y>>2]|0)-(o[A>>2]|0)>>3)+1|0,F=AKe(A)|0,F>>>0>>0)DI(A);else{Ye=o[A>>2]|0,At=(o[A+8>>2]|0)-Ye|0,Ct=At>>2,_De(H,At>>3>>>0>>1>>>0?Ct>>>0>>0?oe:Ct:F,(o[Y>>2]|0)-Ye>>3,A+8|0),oe=H+8|0,kv(o[oe>>2]|0,o[_>>2]|0,o[S>>2]|0),o[oe>>2]=(o[oe>>2]|0)+8,o6(A,H),Ome(H),T=Se;return}}function AKe(A){return A=A|0,536870911}function _De(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>536870911)Eo();else{H=ku(_<<3)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S<<3)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_<<3)}function o6(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(0-(H>>3)<<3)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function Ome(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-8-_|0)>>>3)<<3)),A=o[A>>2]|0,A|0&&La(A)}function Nee(){Ree()}function Ree(){tD(10604)}function tD(A){A=A|0,Qme(A,4955)}function Qme(A,_){A=A|0,_=_|0;var S=0;S=Mme()|0,o[A>>2]=S,Im(S,_),O5(o[A>>2]|0)}function Mme(){var A=0;return s[7952]|0||(Hme(10612),cu(25,10612,U|0)|0,A=7952,o[A>>2]=1,o[A+4>>2]=0),10612}function Im(A,_){A=A|0,_=_|0,o[A>>2]=Dee()|0,o[A+4>>2]=xee()|0,o[A+12>>2]=_,o[A+8>>2]=kee()|0,o[A+32>>2]=8}function O5(A){A=A|0;var _=0,S=0;_=T,T=T+16|0,S=_,Gv()|0,o[S>>2]=A,Qce(10608,S),T=_}function Gv(){return s[11714]|0||(o[2652]=0,cu(62,10608,U|0)|0,s[11714]=1),10608}function Qce(A,_){A=A|0,_=_|0;var S=0;S=ku(8)|0,o[S+4>>2]=o[_>>2],o[S>>2]=o[A>>2],o[A>>2]=S}function lp(A){A=A|0,sb(A)}function sb(A){A=A|0;var _=0,S=0;if(_=o[A>>2]|0,_|0)do S=_,_=o[_>>2]|0,La(S);while(_|0);o[A>>2]=0}function Dee(){return 11715}function xee(){return 1496}function kee(){return U8()|0}function SG(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,(yG(F,896)|0)==512?S|0&&(a6(S),La(S)):_|0&&La(_)}function a6(A){A=A|0,A=o[A+4>>2]|0,A|0&&oM(A)}function Hme(A){A=A|0,jc(A)}function yDe(A,_){A=A|0,_=_|0;var S=0,F=0;Gv()|0,S=o[2652]|0;e:do if(S|0){for(;F=o[S+4>>2]|0,!(F|0&&!(Wx(c6(F)|0,A)|0));)if(S=o[S>>2]|0,!S)break e;bDe(F,_)}while(!1)}function c6(A){return A=A|0,o[A+12>>2]|0}function bDe(A,_){A=A|0,_=_|0;var S=0;A=A+36|0,S=o[A>>2]|0,S|0&&(Uy(S),La(S)),S=ku(4)|0,sN(S,_),o[A>>2]=S}function Gee(){return s[11716]|0||(o[2664]=0,cu(63,10656,U|0)|0,s[11716]=1),10656}function Yme(){var A=0;return s[11717]|0?A=o[2665]|0:(l6(),o[2665]=1504,s[11717]=1,A=1504),A|0}function l6(){s[11740]|0||(s[11718]=cg(cg(8,0)|0,0)|0,s[11719]=cg(cg(0,0)|0,0)|0,s[11720]=cg(cg(0,16)|0,0)|0,s[11721]=cg(cg(8,0)|0,0)|0,s[11722]=cg(cg(0,0)|0,0)|0,s[11723]=cg(cg(8,0)|0,0)|0,s[11724]=cg(cg(0,0)|0,0)|0,s[11725]=cg(cg(8,0)|0,0)|0,s[11726]=cg(cg(0,0)|0,0)|0,s[11727]=cg(cg(8,0)|0,0)|0,s[11728]=cg(cg(0,0)|0,0)|0,s[11729]=cg(cg(0,0)|0,32)|0,s[11730]=cg(cg(0,0)|0,32)|0,s[11740]=1)}function dKe(){return 1572}function Mce(A,_,S,F,H){A=A|0,_=_|0,S=S|0,F=F|0,H=H|0;var Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;Y=T,T=T+32|0,At=Y+16|0,Ct=Y+12|0,Ye=Y+8|0,Se=Y+4|0,oe=Y,o[At>>2]=A,o[Ct>>2]=_,o[Ye>>2]=S,o[Se>>2]=F,o[oe>>2]=H,Gee()|0,fNt(10656,At,Ct,Ye,Se,oe),T=Y}function fNt(A,_,S,F,H,Y){A=A|0,_=_|0,S=S|0,F=F|0,H=H|0,Y=Y|0;var oe=0;oe=ku(24)|0,AZ(oe+4|0,o[_>>2]|0,o[S>>2]|0,o[F>>2]|0,o[H>>2]|0,o[Y>>2]|0),o[oe>>2]=o[A>>2],o[A>>2]=oe}function z3(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0,Is=0,ji=0,Ei=0,yo=0,to=0,aa=0;if(aa=T,T=T+32|0,ji=aa+20|0,Ei=aa+8|0,yo=aa+4|0,to=aa,_=o[_>>2]|0,_|0){Is=ji+4|0,Ye=ji+8|0,Ct=Ei+4|0,At=Ei+8|0,Ut=Ei+8|0,cn=ji+8|0;do{if(oe=_+4|0,Se=Hce(oe)|0,Se|0){if(H=Yce(Se)|0,o[ji>>2]=0,o[Is>>2]=0,o[Ye>>2]=0,F=(u6(Se)|0)+1|0,EDe(ji,F),F|0)for(;F=F+-1|0,HS(Ei,o[H>>2]|0),Y=o[Is>>2]|0,Y>>>0<(o[cn>>2]|0)>>>0?(o[Y>>2]=o[Ei>>2],o[Is>>2]=(o[Is>>2]|0)+4):Fee(ji,Ei),F;)H=H+4|0;F=lV(Se)|0,o[Ei>>2]=0,o[Ct>>2]=0,o[At>>2]=0;e:do if(o[F>>2]|0)for(H=0,Y=0;;){if((H|0)==(Y|0)?Xce(Ei,F):(o[H>>2]=o[F>>2],o[Ct>>2]=(o[Ct>>2]|0)+4),F=F+4|0,!(o[F>>2]|0))break e;H=o[Ct>>2]|0,Y=o[Ut>>2]|0}while(!1);o[yo>>2]=G1(oe)|0,o[to>>2]=Jr(Se)|0,INt(S,A,yo,to,ji,Ei),BDe(Ei),F1(ji)}_=o[_>>2]|0}while(_|0)}T=aa}function Hce(A){return A=A|0,o[A+12>>2]|0}function Yce(A){return A=A|0,o[A+12>>2]|0}function u6(A){return A=A|0,o[A+16>>2]|0}function EDe(A,_){A=A|0,_=_|0;var S=0,F=0,H=0;H=T,T=T+32|0,S=H,F=o[A>>2]|0,(o[A+8>>2]|0)-F>>2>>>0<_>>>0&&(pKe(S,_,(o[A+4>>2]|0)-F>>2,A+8|0),Kce(A,S),Y0(S)),T=H}function Fee(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0;if(oe=T,T=T+32|0,S=oe,F=A+4|0,H=((o[F>>2]|0)-(o[A>>2]|0)>>2)+1|0,Y=Q5(A)|0,Y>>>0>>0)DI(A);else{Se=o[A>>2]|0,Ct=(o[A+8>>2]|0)-Se|0,Ye=Ct>>1,pKe(S,Ct>>2>>>0>>1>>>0?Ye>>>0>>0?H:Ye:Y,(o[F>>2]|0)-Se>>2,A+8|0),Y=S+8|0,o[o[Y>>2]>>2]=o[_>>2],o[Y>>2]=(o[Y>>2]|0)+4,Kce(A,S),Y0(S),T=oe;return}}function lV(A){return A=A|0,o[A+8>>2]|0}function Xce(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0;if(oe=T,T=T+32|0,S=oe,F=A+4|0,H=((o[F>>2]|0)-(o[A>>2]|0)>>2)+1|0,Y=cI(A)|0,Y>>>0>>0)DI(A);else{Se=o[A>>2]|0,Ct=(o[A+8>>2]|0)-Se|0,Ye=Ct>>1,Uce(S,Ct>>2>>>0>>1>>>0?Ye>>>0>>0?H:Ye:Y,(o[F>>2]|0)-Se>>2,A+8|0),Y=S+8|0,o[o[Y>>2]>>2]=o[_>>2],o[Y>>2]=(o[Y>>2]|0)+4,M5(A,S),f6(S),T=oe;return}}function G1(A){return A=A|0,o[A>>2]|0}function INt(A,_,S,F,H,Y){A=A|0,_=_|0,S=S|0,F=F|0,H=H|0,Y=Y|0,Z1(A,_,S,F,H,Y)}function BDe(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-4-F|0)>>>2)<<2)),La(S))}function F1(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-4-F|0)>>>2)<<2)),La(S))}function Z1(A,_,S,F,H,Y){A=A|0,_=_|0,S=S|0,F=F|0,H=H|0,Y=Y|0;var oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0;oe=T,T=T+48|0,At=oe+40|0,Se=oe+32|0,Ut=oe+24|0,Ye=oe+12|0,Ct=oe,YS(Se),A=dA(A)|0,o[Ut>>2]=o[_>>2],S=o[S>>2]|0,F=o[F>>2]|0,g6(Ye,H),NZ(Ct,Y),o[At>>2]=o[Ut>>2],rD(A,At,S,F,Ye,Ct),BDe(Ct),F1(Ye),x2(Se),T=oe}function g6(A,_){A=A|0,_=_|0;var S=0,F=0;o[A>>2]=0,o[A+4>>2]=0,o[A+8>>2]=0,S=_+4|0,F=(o[S>>2]|0)-(o[_>>2]|0)>>2,F|0&&(V1(A,F),ph(A,o[_>>2]|0,o[S>>2]|0,F))}function NZ(A,_){A=A|0,_=_|0;var S=0,F=0;o[A>>2]=0,o[A+4>>2]=0,o[A+8>>2]=0,S=_+4|0,F=(o[S>>2]|0)-(o[_>>2]|0)>>2,F|0&&(Kme(A,F),xB(A,o[_>>2]|0,o[S>>2]|0,F))}function rD(A,_,S,F,H,Y){A=A|0,_=_|0,S=S|0,F=F|0,H=H|0,Y=Y|0;var oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0;oe=T,T=T+32|0,At=oe+28|0,Ut=oe+24|0,Se=oe+12|0,Ye=oe,Ct=Cy(QS()|0)|0,o[Ut>>2]=o[_>>2],o[At>>2]=o[Ut>>2],_=e4(At)|0,S=Jce(S)|0,F=RZ(F)|0,o[Se>>2]=o[H>>2],At=H+4|0,o[Se+4>>2]=o[At>>2],Ut=H+8|0,o[Se+8>>2]=o[Ut>>2],o[Ut>>2]=0,o[At>>2]=0,o[H>>2]=0,H=A6(Se)|0,o[Ye>>2]=o[Y>>2],At=Y+4|0,o[Ye+4>>2]=o[At>>2],Ut=Y+8|0,o[Ye+8>>2]=o[Ut>>2],o[Ut>>2]=0,o[At>>2]=0,o[Y>>2]=0,kl(0,Ct|0,A|0,_|0,S|0,F|0,H|0,vDe(Ye)|0)|0,BDe(Ye),F1(Se),T=oe}function QS(){var A=0;return s[7968]|0||(p6(10708),A=7968,o[A>>2]=1,o[A+4>>2]=0),10708}function e4(A){return A=A|0,wDe(A)|0}function Jce(A){return A=A|0,d6(A)|0}function RZ(A){return A=A|0,hX(A)|0}function A6(A){return A=A|0,Xme(A)|0}function vDe(A){return A=A|0,SDe(A)|0}function SDe(A){A=A|0;var _=0,S=0,F=0;if(F=(o[A+4>>2]|0)-(o[A>>2]|0)|0,S=F>>2,F=mN(F+4|0)|0,o[F>>2]=S,S|0){_=0;do o[F+4+(_<<2)>>2]=d6(o[(o[A>>2]|0)+(_<<2)>>2]|0)|0,_=_+1|0;while((_|0)!=(S|0))}return F|0}function d6(A){return A=A|0,A|0}function Xme(A){A=A|0;var _=0,S=0,F=0;if(F=(o[A+4>>2]|0)-(o[A>>2]|0)|0,S=F>>2,F=mN(F+4|0)|0,o[F>>2]=S,S|0){_=0;do o[F+4+(_<<2)>>2]=wDe((o[A>>2]|0)+(_<<2)|0)|0,_=_+1|0;while((_|0)!=(S|0))}return F|0}function wDe(A){A=A|0;var _=0,S=0,F=0,H=0;return H=T,T=T+32|0,_=H+12|0,S=H,F=Ku(Jme()|0)|0,F?(DE(_,F),my(S,_),Ehe(A,S),A=b2(_)|0):A=L1(A)|0,T=H,A|0}function Jme(){var A=0;return s[7960]|0||(Ume(10664),cu(25,10664,U|0)|0,A=7960,o[A>>2]=1,o[A+4>>2]=0),10664}function L1(A){A=A|0;var _=0,S=0,F=0,H=0,Y=0,oe=0,Se=0;return S=T,T=T+16|0,H=S+4|0,oe=S,F=mN(8)|0,_=F,Se=ku(4)|0,o[Se>>2]=o[A>>2],Y=_+4|0,o[Y>>2]=Se,A=ku(8)|0,Y=o[Y>>2]|0,o[oe>>2]=0,o[H>>2]=o[oe>>2],t4(A,Y,H),o[F>>2]=A,T=S,_|0}function t4(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,S=ku(16)|0,o[S+4>>2]=0,o[S+8>>2]=0,o[S>>2]=1656,o[S+12>>2]=_,o[A+4>>2]=S}function TDe(A){A=A|0,l4(A),La(A)}function NDe(A){A=A|0,A=o[A+12>>2]|0,A|0&&La(A)}function CNt(A){A=A|0,La(A)}function Ume(A){A=A|0,jc(A)}function p6(A){A=A|0,km(A,Zee()|0,5)}function Zee(){return 1676}function Kme(A,_){A=A|0,_=_|0;var S=0;if((cI(A)|0)>>>0<_>>>0&&DI(A),_>>>0>1073741823)Eo();else{S=ku(_<<2)|0,o[A+4>>2]=S,o[A>>2]=S,o[A+8>>2]=S+(_<<2);return}}function xB(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,F=A+4|0,A=S-_|0,(A|0)>0&&(ep(o[F>>2]|0,_|0,A|0)|0,o[F>>2]=(o[F>>2]|0)+(A>>>2<<2))}function cI(A){return A=A|0,1073741823}function V1(A,_){A=A|0,_=_|0;var S=0;if((Q5(A)|0)>>>0<_>>>0&&DI(A),_>>>0>1073741823)Eo();else{S=ku(_<<2)|0,o[A+4>>2]=S,o[A>>2]=S,o[A+8>>2]=S+(_<<2);return}}function ph(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,F=A+4|0,A=S-_|0,(A|0)>0&&(ep(o[F>>2]|0,_|0,A|0)|0,o[F>>2]=(o[F>>2]|0)+(A>>>2<<2))}function Q5(A){return A=A|0,1073741823}function Uce(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>1073741823)Eo();else{H=ku(_<<2)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S<<2)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_<<2)}function M5(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(0-(H>>2)<<2)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function f6(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-4-_|0)>>>2)<<2)),A=o[A>>2]|0,A|0&&La(A)}function pKe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>1073741823)Eo();else{H=ku(_<<2)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S<<2)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_<<2)}function Kce(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(0-(H>>2)<<2)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function Y0(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-4-_|0)>>>2)<<2)),A=o[A>>2]|0,A|0&&La(A)}function fN(A,_,S,F,H){A=A|0,_=_|0,S=S|0,F=F|0,H=H|0;var Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0,Is=0,ji=0,Ei=0;if(Ei=T,T=T+32|0,At=Ei+20|0,Ut=Ei+12|0,Ct=Ei+16|0,cn=Ei+4|0,Is=Ei,ji=Ei+8|0,Se=Yme()|0,Y=o[Se>>2]|0,oe=o[Y>>2]|0,oe|0)for(Ye=o[Se+8>>2]|0,Se=o[Se+4>>2]|0;HS(At,oe),I6(A,At,Se,Ye),Y=Y+4|0,oe=o[Y>>2]|0,oe;)Ye=Ye+1|0,Se=Se+1|0;if(Y=dKe()|0,oe=o[Y>>2]|0,oe|0)do HS(At,oe),o[Ut>>2]=o[Y+4>>2],RDe(_,At,Ut),Y=Y+8|0,oe=o[Y>>2]|0;while(oe|0);if(Y=o[(Gv()|0)>>2]|0,Y|0)do _=o[Y+4>>2]|0,HS(At,o[(kB(_)|0)>>2]|0),o[Ut>>2]=c6(_)|0,ia(S,At,Ut),Y=o[Y>>2]|0;while(Y|0);if(HS(Ct,0),Y=Gee()|0,o[At>>2]=o[Ct>>2],z3(At,Y,H),Y=o[(Gv()|0)>>2]|0,Y|0){A=At+4|0,_=At+8|0,S=At+8|0;do{if(Ye=o[Y+4>>2]|0,HS(Ut,o[(kB(Ye)|0)>>2]|0),jce(cn,DDe(Ye)|0),oe=o[cn>>2]|0,oe|0){o[At>>2]=0,o[A>>2]=0,o[_>>2]=0;do HS(Is,o[(kB(o[oe+4>>2]|0)|0)>>2]|0),Se=o[A>>2]|0,Se>>>0<(o[S>>2]|0)>>>0?(o[Se>>2]=o[Is>>2],o[A>>2]=(o[A>>2]|0)+4):Fee(At,Is),oe=o[oe>>2]|0;while(oe|0);xDe(F,Ut,At),F1(At)}o[ji>>2]=o[Ut>>2],Ct=zce(Ye)|0,o[At>>2]=o[ji>>2],z3(At,Ct,H),hr(cn),Y=o[Y>>2]|0}while(Y|0)}T=Ei}function I6(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,yNt(A,_,S,F)}function RDe(A,_,S){A=A|0,_=_|0,S=S|0,GDe(A,_,S)}function kB(A){return A=A|0,A|0}function ia(A,_,S){A=A|0,_=_|0,S=S|0,kDe(A,_,S)}function DDe(A){return A=A|0,A+16|0}function jce(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0;if(Y=T,T=T+16|0,H=Y+8|0,S=Y,o[A>>2]=0,F=o[_>>2]|0,o[H>>2]=F,o[S>>2]=A,S=qce(S)|0,F|0){if(F=ku(12)|0,oe=(Y5(H)|0)+4|0,A=o[oe+4>>2]|0,_=F+4|0,o[_>>2]=o[oe>>2],o[_+4>>2]=A,_=o[o[H>>2]>>2]|0,o[H>>2]=_,!_)A=F;else for(_=F;A=ku(12)|0,Ye=(Y5(H)|0)+4|0,Se=o[Ye+4>>2]|0,oe=A+4|0,o[oe>>2]=o[Ye>>2],o[oe+4>>2]=Se,o[_>>2]=A,oe=o[o[H>>2]>>2]|0,o[H>>2]=oe,oe;)_=A;o[A>>2]=o[S>>2],o[S>>2]=F}T=Y}function xDe(A,_,S){A=A|0,_=_|0,S=S|0,D2(A,_,S)}function zce(A){return A=A|0,A+24|0}function D2(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0;F=T,T=T+32|0,oe=F+24|0,H=F+16|0,Se=F+12|0,Y=F,YS(H),A=dA(A)|0,o[Se>>2]=o[_>>2],g6(Y,S),o[oe>>2]=o[Se>>2],H5(A,oe,Y),F1(Y),x2(H),T=F}function H5(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0;F=T,T=T+32|0,oe=F+16|0,Se=F+12|0,H=F,Y=Cy(jme()|0)|0,o[Se>>2]=o[_>>2],o[oe>>2]=o[Se>>2],_=e4(oe)|0,o[H>>2]=o[S>>2],oe=S+4|0,o[H+4>>2]=o[oe>>2],Se=S+8|0,o[H+8>>2]=o[Se>>2],o[Se>>2]=0,o[oe>>2]=0,o[S>>2]=0,ts(0,Y|0,A|0,_|0,A6(H)|0)|0,F1(H),T=F}function jme(){var A=0;return s[7976]|0||(mp(10720),A=7976,o[A>>2]=1,o[A+4>>2]=0),10720}function mp(A){A=A|0,km(A,zme()|0,2)}function zme(){return 1732}function qce(A){return A=A|0,o[A>>2]|0}function Y5(A){return A=A|0,o[A>>2]|0}function kDe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;F=T,T=T+32|0,Y=F+16|0,H=F+8|0,oe=F,YS(H),A=dA(A)|0,o[oe>>2]=o[_>>2],S=o[S>>2]|0,o[Y>>2]=o[oe>>2],X5(A,Y,S),x2(H),T=F}function X5(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;F=T,T=T+16|0,Y=F+4|0,oe=F,H=Cy(mNt()|0)|0,o[oe>>2]=o[_>>2],o[Y>>2]=o[oe>>2],_=e4(Y)|0,ts(0,H|0,A|0,_|0,Jce(S)|0)|0,T=F}function mNt(){var A=0;return s[7984]|0||(hNt(10732),A=7984,o[A>>2]=1,o[A+4>>2]=0),10732}function hNt(A){A=A|0,km(A,_Nt()|0,2)}function _Nt(){return 1744}function GDe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;F=T,T=T+32|0,Y=F+16|0,H=F+8|0,oe=F,YS(H),A=dA(A)|0,o[oe>>2]=o[_>>2],S=o[S>>2]|0,o[Y>>2]=o[oe>>2],X5(A,Y,S),x2(H),T=F}function yNt(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0;H=T,T=T+32|0,oe=H+16|0,Y=H+8|0,Se=H,YS(Y),A=dA(A)|0,o[Se>>2]=o[_>>2],S=s[S>>0]|0,F=s[F>>0]|0,o[oe>>2]=o[Se>>2],bNt(A,oe,S,F),x2(Y),T=H}function bNt(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0;H=T,T=T+16|0,oe=H+4|0,Se=H,Y=Cy(ENt()|0)|0,o[Se>>2]=o[_>>2],o[oe>>2]=o[Se>>2],_=e4(oe)|0,S=kC(S)|0,EA(0,Y|0,A|0,_|0,S|0,kC(F)|0)|0,T=H}function ENt(){var A=0;return s[7992]|0||(IKe(10744),A=7992,o[A>>2]=1,o[A+4>>2]=0),10744}function kC(A){return A=A|0,fKe(A)|0}function fKe(A){return A=A|0,A&255|0}function IKe(A){A=A|0,km(A,FDe()|0,3)}function FDe(){return 1756}function IN(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0;switch(cn=T,T=T+32|0,Se=cn+8|0,Ye=cn+4|0,Ct=cn+20|0,At=cn,p5(A,0),F=bhe(_)|0,o[Se>>2]=0,Ut=Se+4|0,o[Ut>>2]=0,o[Se+8>>2]=0,F<<24>>24){case 0:{s[Ct>>0]=0,$ce(Ye,S,Ct),Lee(A,Ye)|0,$h(Ye);break}case 8:{Ut=Ble(_)|0,s[Ct>>0]=8,HS(At,o[Ut+4>>2]|0),ZDe(Ye,S,Ct,At,Ut+8|0),Lee(A,Ye)|0,$h(Ye);break}case 9:{if(Y=Ble(_)|0,_=o[Y+4>>2]|0,_|0)for(oe=Se+8|0,H=Y+12|0;_=_+-1|0,HS(Ye,o[H>>2]|0),F=o[Ut>>2]|0,F>>>0<(o[oe>>2]|0)>>>0?(o[F>>2]=o[Ye>>2],o[Ut>>2]=(o[Ut>>2]|0)+4):Fee(Se,Ye),_;)H=H+4|0;s[Ct>>0]=9,HS(At,o[Y+8>>2]|0),tu(Ye,S,Ct,At,Se),Lee(A,Ye)|0,$h(Ye);break}default:Ut=Ble(_)|0,s[Ct>>0]=F,HS(At,o[Ut+4>>2]|0),J5(Ye,S,Ct,At),Lee(A,Ye)|0,$h(Ye)}F1(Se),T=cn}function $ce(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0;F=T,T=T+16|0,H=F,YS(H),_=dA(_)|0,SNt(A,_,s[S>>0]|0),x2(H),T=F}function Lee(A,_){A=A|0,_=_|0;var S=0;return S=o[A>>2]|0,S|0&&Ps(S|0),o[A>>2]=o[_>>2],o[_>>2]=0,A|0}function ZDe(A,_,S,F,H){A=A|0,_=_|0,S=S|0,F=F|0,H=H|0;var Y=0,oe=0,Se=0,Ye=0;Y=T,T=T+32|0,Se=Y+16|0,oe=Y+8|0,Ye=Y,YS(oe),_=dA(_)|0,S=s[S>>0]|0,o[Ye>>2]=o[F>>2],H=o[H>>2]|0,o[Se>>2]=o[Ye>>2],qme(A,_,S,Se,H),x2(oe),T=Y}function tu(A,_,S,F,H){A=A|0,_=_|0,S=S|0,F=F|0,H=H|0;var Y=0,oe=0,Se=0,Ye=0,Ct=0;Y=T,T=T+32|0,Ye=Y+24|0,oe=Y+16|0,Ct=Y+12|0,Se=Y,YS(oe),_=dA(_)|0,S=s[S>>0]|0,o[Ct>>2]=o[F>>2],g6(Se,H),o[Ye>>2]=o[Ct>>2],If(A,_,S,Ye,Se),F1(Se),x2(oe),T=Y}function J5(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0;H=T,T=T+32|0,oe=H+16|0,Y=H+8|0,Se=H,YS(Y),_=dA(_)|0,S=s[S>>0]|0,o[Se>>2]=o[F>>2],o[oe>>2]=o[Se>>2],BNt(A,_,S,oe),x2(Y),T=H}function BNt(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0,oe=0,Se=0;H=T,T=T+16|0,Y=H+4|0,Se=H,oe=Cy(CKe()|0)|0,S=kC(S)|0,o[Se>>2]=o[F>>2],o[Y>>2]=o[Se>>2],DZ(A,ts(0,oe|0,_|0,S|0,e4(Y)|0)|0),T=H}function CKe(){var A=0;return s[8e3]|0||(Cm(10756),A=8e3,o[A>>2]=1,o[A+4>>2]=0),10756}function DZ(A,_){A=A|0,_=_|0,p5(A,_)}function Cm(A){A=A|0,km(A,U5()|0,2)}function U5(){return 1772}function If(A,_,S,F,H){A=A|0,_=_|0,S=S|0,F=F|0,H=H|0;var Y=0,oe=0,Se=0,Ye=0,Ct=0;Y=T,T=T+32|0,Ye=Y+16|0,Ct=Y+12|0,oe=Y,Se=Cy(ele()|0)|0,S=kC(S)|0,o[Ct>>2]=o[F>>2],o[Ye>>2]=o[Ct>>2],F=e4(Ye)|0,o[oe>>2]=o[H>>2],Ye=H+4|0,o[oe+4>>2]=o[Ye>>2],Ct=H+8|0,o[oe+8>>2]=o[Ct>>2],o[Ct>>2]=0,o[Ye>>2]=0,o[H>>2]=0,DZ(A,EA(0,Se|0,_|0,S|0,F|0,A6(oe)|0)|0),F1(oe),T=Y}function ele(){var A=0;return s[8008]|0||(ou(10768),A=8008,o[A>>2]=1,o[A+4>>2]=0),10768}function ou(A){A=A|0,km(A,LDe()|0,3)}function LDe(){return 1784}function qme(A,_,S,F,H){A=A|0,_=_|0,S=S|0,F=F|0,H=H|0;var Y=0,oe=0,Se=0,Ye=0;Y=T,T=T+16|0,Se=Y+4|0,Ye=Y,oe=Cy(C6()|0)|0,S=kC(S)|0,o[Ye>>2]=o[F>>2],o[Se>>2]=o[Ye>>2],F=e4(Se)|0,DZ(A,EA(0,oe|0,_|0,S|0,F|0,RZ(H)|0)|0),T=Y}function C6(){var A=0;return s[8016]|0||(tle(10780),A=8016,o[A>>2]=1,o[A+4>>2]=0),10780}function tle(A){A=A|0,km(A,vNt()|0,3)}function vNt(){return 1800}function SNt(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;F=Cy(wNt()|0)|0,DZ(A,Yi(0,F|0,_|0,kC(S)|0)|0)}function wNt(){var A=0;return s[8024]|0||(mKe(10792),A=8024,o[A>>2]=1,o[A+4>>2]=0),10792}function mKe(A){A=A|0,km(A,hKe()|0,1)}function hKe(){return 1816}function rle(){$me(),ehe(),TNt()}function $me(){o[2702]=Gle(65536)|0}function ehe(){Wee(10856)}function TNt(){Vee(10816)}function Vee(A){A=A|0,_Ke(A,5044),NNt(A)|0}function _Ke(A,_){A=A|0,_=_|0;var S=0;S=Jme()|0,o[A>>2]=S,uV(S,_),O5(o[A>>2]|0)}function NNt(A){A=A|0;var _=0;return _=o[A>>2]|0,EG(_,RNt()|0),A|0}function RNt(){var A=0;return s[8032]|0||(m6(10820),cu(64,10820,U|0)|0,A=8032,o[A>>2]=1,o[A+4>>2]=0),Jr(10820)|0||m6(10820),10820}function m6(A){A=A|0,sA(A),BG(A,25)}function QDr(A){A=A|0,GC(A+24|0)}function GC(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),La(S))}function sA(A){A=A|0;var _=0;_=Ss()|0,Ks(A,5,18,_,CN()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function D_(A,_){A=A|0,_=_|0,o0(A,_)}function o0(A,_){A=A|0,_=_|0;var S=0,F=0,H=0;S=T,T=T+16|0,F=S,H=S+4|0,wv(H,_),o[F>>2]=CZ(H,_)|0,VDe(A,F),T=S}function VDe(A,_){A=A|0,_=_|0,VE(A+4|0,o[_>>2]|0),s[A+8>>0]=1}function VE(A,_){A=A|0,_=_|0,o[A>>2]=_}function CN(){return 1824}function K5(A){return A=A|0,the(A)|0}function the(A){A=A|0;var _=0,S=0,F=0,H=0,Y=0,oe=0,Se=0;return S=T,T=T+16|0,H=S+4|0,oe=S,F=mN(8)|0,_=F,Se=ku(4)|0,wv(H,A),VE(Se,CZ(H,A)|0),Y=_+4|0,o[Y>>2]=Se,A=ku(8)|0,Y=o[Y>>2]|0,o[oe>>2]=0,o[H>>2]=o[oe>>2],t4(A,Y,H),o[F>>2]=A,T=S,_|0}function mN(A){A=A|0;var _=0,S=0;return A=A+7&-8,A>>>0<=32768&&(_=o[2701]|0,A>>>0<=(65536-_|0)>>>0)?(S=(o[2702]|0)+_|0,o[2701]=_+A,A=S):(A=Gle(A+8|0)|0,o[A>>2]=o[2703],o[2703]=A,A=A+8|0),A|0}function uV(A,_){A=A|0,_=_|0,o[A>>2]=WE()|0,o[A+4>>2]=gV()|0,o[A+12>>2]=_,o[A+8>>2]=h6()|0,o[A+32>>2]=9}function WE(){return 11744}function gV(){return 1832}function h6(){return KX()|0}function nle(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,(yG(F,896)|0)==512?S|0&&(wG(S),La(S)):_|0&&La(_)}function wG(A){A=A|0,A=o[A+4>>2]|0,A|0&&oM(A)}function Wee(A){A=A|0,ile(A,5052),sle(A)|0,WDe(A,5058,26)|0,PDe(A,5069,1)|0,j5(A,5077,10)|0,x_(A,5087,19)|0,rhe(A,5094,27)|0}function ile(A,_){A=A|0,_=_|0;var S=0;S=ble()|0,o[A>>2]=S,TKe(S,_),O5(o[A>>2]|0)}function sle(A){A=A|0;var _=0;return _=o[A>>2]|0,EG(_,wKe()|0),A|0}function WDe(A,_,S){return A=A|0,_=_|0,S=S|0,Che(A,Tp(_)|0,S,0),A|0}function PDe(A,_,S){return A=A|0,_=_|0,S=S|0,$De(A,Tp(_)|0,S,0),A|0}function j5(A,_,S){return A=A|0,_=_|0,S=S|0,y6(A,Tp(_)|0,S,0),A|0}function x_(A,_,S){return A=A|0,_=_|0,S=S|0,XDe(A,Tp(_)|0,S,0),A|0}function Pee(A,_){A=A|0,_=_|0;var S=0,F=0;e:for(;;){for(S=o[2703]|0;;){if((S|0)==(_|0))break e;if(F=o[S>>2]|0,o[2703]=F,!S)S=F;else break}La(S)}o[2701]=A}function rhe(A,_,S){return A=A|0,_=_|0,S=S|0,ODe(A,Tp(_)|0,S,0),A|0}function ODe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0;Y=o[A>>2]|0,H=ole()|0,A=QDe(S)|0,Sf(Y,_,H,A,ale(S,F)|0,F)}function ole(){var A=0,_=0;if(s[8040]|0||(MDe(10860),cu(65,10860,U|0)|0,_=8040,o[_>>2]=1,o[_+4>>2]=0),!(Jr(10860)|0)){A=10860,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));MDe(10860)}return 10860}function QDe(A){return A=A|0,A|0}function ale(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0;return Se=T,T=T+16|0,H=Se,Y=Se+4|0,o[H>>2]=A,Ye=ole()|0,oe=Ye+24|0,_=cg(_,4)|0,o[Y>>2]=_,S=Ye+28|0,F=o[S>>2]|0,F>>>0<(o[Ye+32>>2]|0)>>>0?(Oee(F,A,_),_=(o[S>>2]|0)+8|0,o[S>>2]=_):(cle(oe,H,Y),_=o[S>>2]|0),T=Se,(_-(o[oe>>2]|0)>>3)+-1|0}function Oee(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,o[A+4>>2]=S}function cle(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;if(Se=T,T=T+32|0,H=Se,Y=A+4|0,oe=((o[Y>>2]|0)-(o[A>>2]|0)>>3)+1|0,F=lle(A)|0,F>>>0>>0)DI(A);else{Ye=o[A>>2]|0,At=(o[A+8>>2]|0)-Ye|0,Ct=At>>2,nhe(H,At>>3>>>0>>1>>>0?Ct>>>0>>0?oe:Ct:F,(o[Y>>2]|0)-Ye>>3,A+8|0),oe=H+8|0,Oee(o[oe>>2]|0,o[_>>2]|0,o[S>>2]|0),o[oe>>2]=(o[oe>>2]|0)+8,ihe(A,H),DNt(H),T=Se;return}}function lle(A){return A=A|0,536870911}function nhe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>536870911)Eo();else{H=ku(_<<3)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S<<3)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_<<3)}function ihe(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(0-(H>>3)<<3)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function DNt(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-8-_|0)>>>3)<<3)),A=o[A>>2]|0,A|0&&La(A)}function MDe(A){A=A|0,HDe(A)}function xNt(A){A=A|0,she(A+24|0)}function she(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),La(S))}function HDe(A){A=A|0;var _=0;_=Ss()|0,Ks(A,1,11,_,yKe()|0,2),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function yKe(){return 1840}function kNt(A,_,S){A=A|0,_=_|0,S=S|0,YDe(o[(GNt(A)|0)>>2]|0,_,S)}function GNt(A){return A=A|0,(o[(ole()|0)+24>>2]|0)+(A<<3)|0}function YDe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0;F=T,T=T+16|0,Y=F+1|0,H=F,wv(Y,_),_=CZ(Y,_)|0,wv(H,S),S=CZ(H,S)|0,iT[A&31](_,S),T=F}function XDe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0;Y=o[A>>2]|0,H=ohe()|0,A=bKe(S)|0,Sf(Y,_,H,A,EKe(S,F)|0,F)}function ohe(){var A=0,_=0;if(s[8048]|0||(lhe(10896),cu(66,10896,U|0)|0,_=8048,o[_>>2]=1,o[_+4>>2]=0),!(Jr(10896)|0)){A=10896,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));lhe(10896)}return 10896}function bKe(A){return A=A|0,A|0}function EKe(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0;return Se=T,T=T+16|0,H=Se,Y=Se+4|0,o[H>>2]=A,Ye=ohe()|0,oe=Ye+24|0,_=cg(_,4)|0,o[Y>>2]=_,S=Ye+28|0,F=o[S>>2]|0,F>>>0<(o[Ye+32>>2]|0)>>>0?(ahe(F,A,_),_=(o[S>>2]|0)+8|0,o[S>>2]=_):(_6(oe,H,Y),_=o[S>>2]|0),T=Se,(_-(o[oe>>2]|0)>>3)+-1|0}function ahe(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,o[A+4>>2]=S}function _6(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;if(Se=T,T=T+32|0,H=Se,Y=A+4|0,oe=((o[Y>>2]|0)-(o[A>>2]|0)>>3)+1|0,F=ule(A)|0,F>>>0>>0)DI(A);else{Ye=o[A>>2]|0,At=(o[A+8>>2]|0)-Ye|0,Ct=At>>2,che(H,At>>3>>>0>>1>>>0?Ct>>>0>>0?oe:Ct:F,(o[Y>>2]|0)-Ye>>3,A+8|0),oe=H+8|0,ahe(o[oe>>2]|0,o[_>>2]|0,o[S>>2]|0),o[oe>>2]=(o[oe>>2]|0)+8,JDe(A,H),gle(H),T=Se;return}}function ule(A){return A=A|0,536870911}function che(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>536870911)Eo();else{H=ku(_<<3)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S<<3)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_<<3)}function JDe(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(0-(H>>3)<<3)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function gle(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-8-_|0)>>>3)<<3)),A=o[A>>2]|0,A|0&&La(A)}function lhe(A){A=A|0,uhe(A)}function Ale(A){A=A|0,TG(A+24|0)}function TG(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),La(S))}function uhe(A){A=A|0;var _=0;_=Ss()|0,Ks(A,1,11,_,FNt()|0,1),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function FNt(){return 1852}function ZNt(A,_){return A=A|0,_=_|0,ple(o[(dle(A)|0)>>2]|0,_)|0}function dle(A){return A=A|0,(o[(ohe()|0)+24>>2]|0)+(A<<3)|0}function ple(A,_){A=A|0,_=_|0;var S=0,F=0;return S=T,T=T+16|0,F=S,wv(F,_),_=CZ(F,_)|0,_=hX(gM[A&31](_)|0)|0,T=S,_|0}function y6(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0;Y=o[A>>2]|0,H=Qee()|0,A=LNt(S)|0,Sf(Y,_,H,A,VNt(S,F)|0,F)}function Qee(){var A=0,_=0;if(s[8056]|0||(Mee(10932),cu(67,10932,U|0)|0,_=8056,o[_>>2]=1,o[_+4>>2]=0),!(Jr(10932)|0)){A=10932,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));Mee(10932)}return 10932}function LNt(A){return A=A|0,A|0}function VNt(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0;return Se=T,T=T+16|0,H=Se,Y=Se+4|0,o[H>>2]=A,Ye=Qee()|0,oe=Ye+24|0,_=cg(_,4)|0,o[Y>>2]=_,S=Ye+28|0,F=o[S>>2]|0,F>>>0<(o[Ye+32>>2]|0)>>>0?(ghe(F,A,_),_=(o[S>>2]|0)+8|0,o[S>>2]=_):(r4(oe,H,Y),_=o[S>>2]|0),T=Se,(_-(o[oe>>2]|0)>>3)+-1|0}function ghe(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,o[A+4>>2]=S}function r4(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;if(Se=T,T=T+32|0,H=Se,Y=A+4|0,oe=((o[Y>>2]|0)-(o[A>>2]|0)>>3)+1|0,F=Ahe(A)|0,F>>>0>>0)DI(A);else{Ye=o[A>>2]|0,At=(o[A+8>>2]|0)-Ye|0,Ct=At>>2,WNt(H,At>>3>>>0>>1>>>0?Ct>>>0>>0?oe:Ct:F,(o[Y>>2]|0)-Ye>>3,A+8|0),oe=H+8|0,ghe(o[oe>>2]|0,o[_>>2]|0,o[S>>2]|0),o[oe>>2]=(o[oe>>2]|0)+8,fle(A,H),Ile(H),T=Se;return}}function Ahe(A){return A=A|0,536870911}function WNt(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>536870911)Eo();else{H=ku(_<<3)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S<<3)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_<<3)}function fle(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(0-(H>>3)<<3)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function Ile(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-8-_|0)>>>3)<<3)),A=o[A>>2]|0,A|0&&La(A)}function Mee(A){A=A|0,PNt(A)}function b6(A){A=A|0,Hee(A+24|0)}function Hee(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),La(S))}function PNt(A){A=A|0;var _=0;_=Ss()|0,Ks(A,1,7,_,hN()|0,2),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function hN(){return 1860}function z5(A,_,S){return A=A|0,_=_|0,S=S|0,KDe(o[(UDe(A)|0)>>2]|0,_,S)|0}function UDe(A){return A=A|0,(o[(Qee()|0)+24>>2]|0)+(A<<3)|0}function KDe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0;return F=T,T=T+32|0,oe=F+12|0,Y=F+8|0,Se=F,Ye=F+16|0,H=F+4|0,jDe(Ye,_),ONt(Se,Ye,_),D1(H,S),S=jw(H,S)|0,o[oe>>2]=o[Se>>2],ef[A&15](Y,oe,S),S=zDe(Y)|0,$h(Y),eb(H),T=F,S|0}function jDe(A,_){A=A|0,_=_|0}function ONt(A,_,S){A=A|0,_=_|0,S=S|0,BKe(A,S)}function zDe(A){return A=A|0,dA(A)|0}function BKe(A,_){A=A|0,_=_|0;var S=0,F=0,H=0;H=T,T=T+16|0,S=H,F=_,F&1?(Yee(S,0),lf(F|0,S|0)|0,qDe(A,S),a0(S)):o[A>>2]=o[_>>2],T=H}function Yee(A,_){A=A|0,_=_|0,Nh(A,_),o[A+4>>2]=0,s[A+8>>0]=0}function qDe(A,_){A=A|0,_=_|0,o[A>>2]=o[_+4>>2]}function a0(A){A=A|0,s[A+8>>0]=0}function $De(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0;Y=o[A>>2]|0,H=n4()|0,A=NG(S)|0,Sf(Y,_,H,A,i4(S,F)|0,F)}function n4(){var A=0,_=0;if(s[8064]|0||(_N(10968),cu(68,10968,U|0)|0,_=8064,o[_>>2]=1,o[_+4>>2]=0),!(Jr(10968)|0)){A=10968,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));_N(10968)}return 10968}function NG(A){return A=A|0,A|0}function i4(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0;return Se=T,T=T+16|0,H=Se,Y=Se+4|0,o[H>>2]=A,Ye=n4()|0,oe=Ye+24|0,_=cg(_,4)|0,o[Y>>2]=_,S=Ye+28|0,F=o[S>>2]|0,F>>>0<(o[Ye+32>>2]|0)>>>0?(Xee(F,A,_),_=(o[S>>2]|0)+8|0,o[S>>2]=_):(Fv(oe,H,Y),_=o[S>>2]|0),T=Se,(_-(o[oe>>2]|0)>>3)+-1|0}function Xee(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,o[A+4>>2]=S}function Fv(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;if(Se=T,T=T+32|0,H=Se,Y=A+4|0,oe=((o[Y>>2]|0)-(o[A>>2]|0)>>3)+1|0,F=Cle(A)|0,F>>>0>>0)DI(A);else{Ye=o[A>>2]|0,At=(o[A+8>>2]|0)-Ye|0,Ct=At>>2,E6(H,At>>3>>>0>>1>>>0?Ct>>>0>>0?oe:Ct:F,(o[Y>>2]|0)-Ye>>3,A+8|0),oe=H+8|0,Xee(o[oe>>2]|0,o[_>>2]|0,o[S>>2]|0),o[oe>>2]=(o[oe>>2]|0)+8,B6(A,H),vKe(H),T=Se;return}}function Cle(A){return A=A|0,536870911}function E6(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>536870911)Eo();else{H=ku(_<<3)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S<<3)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_<<3)}function B6(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(0-(H>>3)<<3)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function vKe(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-8-_|0)>>>3)<<3)),A=o[A>>2]|0,A|0&&La(A)}function _N(A){A=A|0,phe(A)}function v6(A){A=A|0,dhe(A+24|0)}function dhe(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),La(S))}function phe(A){A=A|0;var _=0;_=Ss()|0,Ks(A,1,1,_,fhe()|0,5),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function fhe(){return 1872}function tg(A,_,S,F,H,Y){A=A|0,_=_|0,S=S|0,F=F|0,H=H|0,Y=Y|0,Ihe(o[(exe(A)|0)>>2]|0,_,S,F,H,Y)}function exe(A){return A=A|0,(o[(n4()|0)+24>>2]|0)+(A<<3)|0}function Ihe(A,_,S,F,H,Y){A=A|0,_=_|0,S=S|0,F=F|0,H=H|0,Y=Y|0;var oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0;oe=T,T=T+32|0,Se=oe+16|0,Ye=oe+12|0,Ct=oe+8|0,At=oe+4|0,Ut=oe,D1(Se,_),_=jw(Se,_)|0,D1(Ye,S),S=jw(Ye,S)|0,D1(Ct,F),F=jw(Ct,F)|0,D1(At,H),H=jw(At,H)|0,D1(Ut,Y),Y=jw(Ut,Y)|0,lte[A&1](_,S,F,H,Y),eb(Ut),eb(At),eb(Ct),eb(Ye),eb(Se),T=oe}function Che(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0;Y=o[A>>2]|0,H=q5()|0,A=Jee(S)|0,Sf(Y,_,H,A,mle(S,F)|0,F)}function q5(){var A=0,_=0;if(s[8072]|0||(SKe(11004),cu(69,11004,U|0)|0,_=8072,o[_>>2]=1,o[_+4>>2]=0),!(Jr(11004)|0)){A=11004,_=A+36|0;do o[A>>2]=0,A=A+4|0;while((A|0)<(_|0));SKe(11004)}return 11004}function Jee(A){return A=A|0,A|0}function mle(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0;return Se=T,T=T+16|0,H=Se,Y=Se+4|0,o[H>>2]=A,Ye=q5()|0,oe=Ye+24|0,_=cg(_,4)|0,o[Y>>2]=_,S=Ye+28|0,F=o[S>>2]|0,F>>>0<(o[Ye+32>>2]|0)>>>0?(s4(F,A,_),_=(o[S>>2]|0)+8|0,o[S>>2]=_):(AV(oe,H,Y),_=o[S>>2]|0),T=Se,(_-(o[oe>>2]|0)>>3)+-1|0}function s4(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,o[A+4>>2]=S}function AV(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0;if(Se=T,T=T+32|0,H=Se,Y=A+4|0,oe=((o[Y>>2]|0)-(o[A>>2]|0)>>3)+1|0,F=txe(A)|0,F>>>0>>0)DI(A);else{Ye=o[A>>2]|0,At=(o[A+8>>2]|0)-Ye|0,Ct=At>>2,mhe(H,At>>3>>>0>>1>>>0?Ct>>>0>>0?oe:Ct:F,(o[Y>>2]|0)-Ye>>3,A+8|0),oe=H+8|0,s4(o[oe>>2]|0,o[_>>2]|0,o[S>>2]|0),o[oe>>2]=(o[oe>>2]|0)+8,hle(A,H),xZ(H),T=Se;return}}function txe(A){return A=A|0,536870911}function mhe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0;o[A+12>>2]=0,o[A+16>>2]=F;do if(_)if(_>>>0>536870911)Eo();else{H=ku(_<<3)|0;break}else H=0;while(!1);o[A>>2]=H,F=H+(S<<3)|0,o[A+8>>2]=F,o[A+4>>2]=F,o[A+12>>2]=H+(_<<3)}function hle(A,_){A=A|0,_=_|0;var S=0,F=0,H=0,Y=0,oe=0;F=o[A>>2]|0,oe=A+4|0,Y=_+4|0,H=(o[oe>>2]|0)-F|0,S=(o[Y>>2]|0)+(0-(H>>3)<<3)|0,o[Y>>2]=S,(H|0)>0?(ep(S|0,F|0,H|0)|0,F=Y,S=o[Y>>2]|0):F=Y,Y=o[A>>2]|0,o[A>>2]=S,o[F>>2]=Y,Y=_+8|0,H=o[oe>>2]|0,o[oe>>2]=o[Y>>2],o[Y>>2]=H,Y=A+8|0,oe=_+12|0,A=o[Y>>2]|0,o[Y>>2]=o[oe>>2],o[oe>>2]=A,o[_>>2]=o[F>>2]}function xZ(A){A=A|0;var _=0,S=0,F=0;_=o[A+4>>2]|0,S=A+8|0,F=o[S>>2]|0,(F|0)!=(_|0)&&(o[S>>2]=F+(~((F+-8-_|0)>>>3)<<3)),A=o[A>>2]|0,A|0&&La(A)}function SKe(A){A=A|0,rxe(A)}function QNt(A){A=A|0,MNt(A+24|0)}function MNt(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),La(S))}function rxe(A){A=A|0;var _=0;_=Ss()|0,Ks(A,1,12,_,nxe()|0,2),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function nxe(){return 1896}function S6(A,_,S){A=A|0,_=_|0,S=S|0,MS(o[(o4(A)|0)>>2]|0,_,S)}function o4(A){return A=A|0,(o[(q5()|0)+24>>2]|0)+(A<<3)|0}function MS(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0;F=T,T=T+16|0,Y=F+4|0,H=F,hhe(Y,_),_=ixe(Y,_)|0,D1(H,S),S=jw(H,S)|0,iT[A&31](_,S),eb(H),T=F}function hhe(A,_){A=A|0,_=_|0}function ixe(A,_){return A=A|0,_=_|0,GA(_)|0}function GA(A){return A=A|0,A|0}function wKe(){var A=0;return s[8080]|0||(yN(11040),cu(70,11040,U|0)|0,A=8080,o[A>>2]=1,o[A+4>>2]=0),Jr(11040)|0||yN(11040),11040}function yN(A){A=A|0,sxe(A),BG(A,71)}function HNt(A){A=A|0,_he(A+24|0)}function _he(A){A=A|0;var _=0,S=0,F=0;S=o[A>>2]|0,F=S,S|0&&(A=A+4|0,_=o[A>>2]|0,(_|0)!=(S|0)&&(o[A>>2]=_+(~((_+-8-F|0)>>>3)<<3)),La(S))}function sxe(A){A=A|0;var _=0;_=Ss()|0,Ks(A,5,7,_,T6()|0,0),o[A+24>>2]=0,o[A+28>>2]=0,o[A+32>>2]=0}function w6(A){A=A|0,oxe(A)}function oxe(A){A=A|0,_le(A)}function _le(A){A=A|0,s[A+8>>0]=1}function T6(){return 1936}function axe(){return RG()|0}function RG(){var A=0,_=0,S=0,F=0,H=0,Y=0,oe=0;return _=T,T=T+16|0,H=_+4|0,oe=_,S=mN(8)|0,A=S,Y=A+4|0,o[Y>>2]=ku(1)|0,F=ku(8)|0,Y=o[Y>>2]|0,o[oe>>2]=0,o[H>>2]=o[oe>>2],dV(F,Y,H),o[S>>2]=F,T=_,A|0}function dV(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]=_,S=ku(16)|0,o[S+4>>2]=0,o[S+8>>2]=0,o[S>>2]=1916,o[S+12>>2]=_,o[A+4>>2]=S}function bN(A){A=A|0,l4(A),La(A)}function yle(A){A=A|0,A=o[A+12>>2]|0,A|0&&La(A)}function N6(A){A=A|0,La(A)}function ble(){var A=0;return s[8088]|0||(Ele(11076),cu(25,11076,U|0)|0,A=8088,o[A>>2]=1,o[A+4>>2]=0),11076}function TKe(A,_){A=A|0,_=_|0,o[A>>2]=$5()|0,o[A+4>>2]=Uee()|0,o[A+12>>2]=_,o[A+8>>2]=Kee()|0,o[A+32>>2]=10}function $5(){return 11745}function Uee(){return 1940}function Kee(){return U8()|0}function yhe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,(yG(F,896)|0)==512?S|0&&(cxe(S),La(S)):_|0&&La(_)}function cxe(A){A=A|0,A=o[A+4>>2]|0,A|0&&oM(A)}function Ele(A){A=A|0,jc(A)}function HS(A,_){A=A|0,_=_|0,o[A>>2]=_}function Ble(A){return A=A|0,o[A>>2]|0}function bhe(A){return A=A|0,s[o[A>>2]>>0]|0}function Ehe(A,_){A=A|0,_=_|0;var S=0,F=0;S=T,T=T+16|0,F=S,o[F>>2]=o[A>>2],vle(_,F)|0,T=S}function vle(A,_){A=A|0,_=_|0;var S=0;return S=R6(o[A>>2]|0,_)|0,_=A+4|0,o[(o[_>>2]|0)+8>>2]=S,o[(o[_>>2]|0)+8>>2]|0}function R6(A,_){A=A|0,_=_|0;var S=0,F=0;return S=T,T=T+16|0,F=S,YS(F),A=dA(A)|0,_=lxe(A,o[_>>2]|0)|0,x2(F),T=S,_|0}function YS(A){A=A|0,o[A>>2]=o[2701],o[A+4>>2]=o[2703]}function lxe(A,_){A=A|0,_=_|0;var S=0;return S=Cy(D6()|0)|0,Yi(0,S|0,A|0,RZ(_)|0)|0}function x2(A){A=A|0,Pee(o[A>>2]|0,o[A+4>>2]|0)}function D6(){var A=0;return s[8096]|0||(Bhe(11120),A=8096,o[A>>2]=1,o[A+4>>2]=0),11120}function Bhe(A){A=A|0,km(A,k2()|0,1)}function k2(){return 1948}function G2(){eM()}function eM(){var A=0,_=0,S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0,Is=0,ji=0,Ei=0;if(ji=T,T=T+16|0,At=ji+4|0,Ut=ji,Tu(65536,10804,o[2702]|0,10812),S=Yme()|0,_=o[S>>2]|0,A=o[_>>2]|0,A|0)for(F=o[S+8>>2]|0,S=o[S+4>>2]|0;Qa(A|0,g[S>>0]|0|0,s[F>>0]|0),_=_+4|0,A=o[_>>2]|0,A;)F=F+1|0,S=S+1|0;if(A=dKe()|0,_=o[A>>2]|0,_|0)do Dt(_|0,o[A+4>>2]|0),A=A+8|0,_=o[A>>2]|0;while(_|0);Dt(uxe()|0,5167),Ct=Gv()|0,A=o[Ct>>2]|0;e:do if(A|0){do YNt(o[A+4>>2]|0),A=o[A>>2]|0;while(A|0);if(A=o[Ct>>2]|0,A|0){Ye=Ct;do{for(;H=A,A=o[A>>2]|0,H=o[H+4>>2]|0,!!(tM(H)|0);)if(o[Ut>>2]=Ye,o[At>>2]=o[Ut>>2],Sle(Ct,At)|0,!A)break e;if(KC(H),Ye=o[Ye>>2]|0,_=vhe(H)|0,Y=lA()|0,oe=T,T=T+((1*(_<<2)|0)+15&-16)|0,Se=T,T=T+((1*(_<<2)|0)+15&-16)|0,_=o[(DDe(H)|0)>>2]|0,_|0)for(S=oe,F=Se;o[S>>2]=o[(kB(o[_+4>>2]|0)|0)>>2],o[F>>2]=o[_+8>>2],_=o[_>>2]|0,_;)S=S+4|0,F=F+4|0;Ei=kB(H)|0,_=She(H)|0,S=vhe(H)|0,F=jee(H)|0,ag(Ei|0,_|0,oe|0,Se|0,S|0,F|0,c6(H)|0),_l(Y|0)}while(A|0)}}while(!1);if(A=o[(Gee()|0)>>2]|0,A|0)do Ei=A+4|0,Ct=Hce(Ei)|0,H=lV(Ct)|0,Y=Yce(Ct)|0,oe=(u6(Ct)|0)+1|0,Se=x6(Ct)|0,Ye=zee(Ei)|0,Ct=Jr(Ct)|0,At=G1(Ei)|0,Ut=wle(Ei)|0,Xu(0,H|0,Y|0,oe|0,Se|0,Ye|0,Ct|0,At|0,Ut|0,Tle(Ei)|0),A=o[A>>2]|0;while(A|0);A=o[(Gv()|0)>>2]|0;e:do if(A|0){t:for(;;){if(_=o[A+4>>2]|0,_|0&&(cn=o[(kB(_)|0)>>2]|0,Is=o[(zce(_)|0)>>2]|0,Is|0)){S=Is;do{_=S+4|0,F=Hce(_)|0;r:do if(F|0)switch(Jr(F)|0){case 0:break t;case 4:case 3:case 2:{Se=lV(F)|0,Ye=Yce(F)|0,Ct=(u6(F)|0)+1|0,At=x6(F)|0,Ut=Jr(F)|0,Ei=G1(_)|0,Xu(cn|0,Se|0,Ye|0,Ct|0,At|0,0,Ut|0,Ei|0,wle(_)|0,Tle(_)|0);break r}case 1:{oe=lV(F)|0,Se=Yce(F)|0,Ye=(u6(F)|0)+1|0,Ct=x6(F)|0,At=zee(_)|0,Ut=Jr(F)|0,Ei=G1(_)|0,Xu(cn|0,oe|0,Se|0,Ye|0,Ct|0,At|0,Ut|0,Ei|0,wle(_)|0,Tle(_)|0);break r}case 5:{Ct=lV(F)|0,At=Yce(F)|0,Ut=(u6(F)|0)+1|0,Ei=x6(F)|0,Xu(cn|0,Ct|0,At|0,Ut|0,Ei|0,gxe(F)|0,Jr(F)|0,0,0,0);break r}default:break r}while(!1);S=o[S>>2]|0}while(S|0)}if(A=o[A>>2]|0,!A)break e}Eo()}while(!1);on(),T=ji}function uxe(){return 11703}function YNt(A){A=A|0,s[A+40>>0]=0}function tM(A){return A=A|0,(s[A+40>>0]|0)!=0|0}function Sle(A,_){return A=A|0,_=_|0,_=Axe(_)|0,A=o[_>>2]|0,o[_>>2]=o[A>>2],La(A),o[_>>2]|0}function KC(A){A=A|0,s[A+40>>0]=1}function vhe(A){return A=A|0,o[A+20>>2]|0}function She(A){return A=A|0,o[A+8>>2]|0}function jee(A){return A=A|0,o[A+32>>2]|0}function x6(A){return A=A|0,o[A+4>>2]|0}function zee(A){return A=A|0,o[A+4>>2]|0}function wle(A){return A=A|0,o[A+8>>2]|0}function Tle(A){return A=A|0,o[A+16>>2]|0}function gxe(A){return A=A|0,o[A+20>>2]|0}function Axe(A){return A=A|0,o[A>>2]|0}function qee(A){A=A|0;var _=0,S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0,Is=0,ji=0,Ei=0,yo=0,to=0,aa=0,as=0,hs=0,wl=0;wl=T,T=T+16|0,cn=wl;do if(A>>>0<245){if(Ct=A>>>0<11?16:A+11&-8,A=Ct>>>3,Ut=o[2783]|0,S=Ut>>>A,S&3|0)return _=(S&1^1)+A|0,A=11172+(_<<1<<2)|0,S=A+8|0,F=o[S>>2]|0,H=F+8|0,Y=o[H>>2]|0,(A|0)==(Y|0)?o[2783]=Ut&~(1<<_):(o[Y+12>>2]=A,o[S>>2]=Y),hs=_<<3,o[F+4>>2]=hs|3,hs=F+hs+4|0,o[hs>>2]=o[hs>>2]|1,hs=H,T=wl,hs|0;if(At=o[2785]|0,Ct>>>0>At>>>0){if(S|0)return _=2<>>12&16,_=_>>>oe,S=_>>>5&8,_=_>>>S,H=_>>>2&4,_=_>>>H,A=_>>>1&2,_=_>>>A,F=_>>>1&1,F=(S|oe|H|A|F)+(_>>>F)|0,_=11172+(F<<1<<2)|0,A=_+8|0,H=o[A>>2]|0,oe=H+8|0,S=o[oe>>2]|0,(_|0)==(S|0)?(A=Ut&~(1<>2]=_,o[A>>2]=S,A=Ut),Y=(F<<3)-Ct|0,o[H+4>>2]=Ct|3,F=H+Ct|0,o[F+4>>2]=Y|1,o[F+Y>>2]=Y,At|0&&(H=o[2788]|0,_=At>>>3,S=11172+(_<<1<<2)|0,_=1<<_,A&_?(A=S+8|0,_=o[A>>2]|0):(o[2783]=A|_,_=S,A=S+8|0),o[A>>2]=H,o[_+12>>2]=H,o[H+8>>2]=_,o[H+12>>2]=S),o[2785]=Y,o[2788]=F,hs=oe,T=wl,hs|0;if(Se=o[2784]|0,Se){if(S=(Se&0-Se)+-1|0,oe=S>>>12&16,S=S>>>oe,Y=S>>>5&8,S=S>>>Y,Ye=S>>>2&4,S=S>>>Ye,F=S>>>1&2,S=S>>>F,A=S>>>1&1,A=o[11436+((Y|oe|Ye|F|A)+(S>>>A)<<2)>>2]|0,S=(o[A+4>>2]&-8)-Ct|0,F=o[A+16+(((o[A+16>>2]|0)==0&1)<<2)>>2]|0,!F)Ye=A,Y=S;else{do oe=(o[F+4>>2]&-8)-Ct|0,Ye=oe>>>0>>0,S=Ye?oe:S,A=Ye?F:A,F=o[F+16+(((o[F+16>>2]|0)==0&1)<<2)>>2]|0;while(F|0);Ye=A,Y=S}if(oe=Ye+Ct|0,Ye>>>0>>0){H=o[Ye+24>>2]|0,_=o[Ye+12>>2]|0;do if((_|0)==(Ye|0)){if(A=Ye+20|0,_=o[A>>2]|0,!_&&(A=Ye+16|0,_=o[A>>2]|0,!_)){S=0;break}for(;;){if(S=_+20|0,F=o[S>>2]|0,F|0){_=F,A=S;continue}if(S=_+16|0,F=o[S>>2]|0,F)_=F,A=S;else break}o[A>>2]=0,S=_}else S=o[Ye+8>>2]|0,o[S+12>>2]=_,o[_+8>>2]=S,S=_;while(!1);do if(H|0){if(_=o[Ye+28>>2]|0,A=11436+(_<<2)|0,(Ye|0)==(o[A>>2]|0)){if(o[A>>2]=S,!S){o[2784]=Se&~(1<<_);break}}else if(o[H+16+(((o[H+16>>2]|0)!=(Ye|0)&1)<<2)>>2]=S,!S)break;o[S+24>>2]=H,_=o[Ye+16>>2]|0,_|0&&(o[S+16>>2]=_,o[_+24>>2]=S),_=o[Ye+20>>2]|0,_|0&&(o[S+20>>2]=_,o[_+24>>2]=S)}while(!1);return Y>>>0<16?(hs=Y+Ct|0,o[Ye+4>>2]=hs|3,hs=Ye+hs+4|0,o[hs>>2]=o[hs>>2]|1):(o[Ye+4>>2]=Ct|3,o[oe+4>>2]=Y|1,o[oe+Y>>2]=Y,At|0&&(F=o[2788]|0,_=At>>>3,S=11172+(_<<1<<2)|0,_=1<<_,Ut&_?(A=S+8|0,_=o[A>>2]|0):(o[2783]=Ut|_,_=S,A=S+8|0),o[A>>2]=F,o[_+12>>2]=F,o[F+8>>2]=_,o[F+12>>2]=S),o[2785]=Y,o[2788]=oe),hs=Ye+8|0,T=wl,hs|0}else Ut=Ct}else Ut=Ct}else Ut=Ct}else if(A>>>0<=4294967231)if(A=A+11|0,Ct=A&-8,Ye=o[2784]|0,Ye){F=0-Ct|0,A=A>>>8,A?Ct>>>0>16777215?Se=31:(Ut=(A+1048320|0)>>>16&8,as=A<>>16&4,as=as<>>16&2,Se=14-(At|Ut|Se)+(as<>>15)|0,Se=Ct>>>(Se+7|0)&1|Se<<1):Se=0,S=o[11436+(Se<<2)>>2]|0;e:do if(!S)S=0,A=0,as=57;else for(A=0,oe=Ct<<((Se|0)==31?0:25-(Se>>>1)|0),Y=0;;){if(H=(o[S+4>>2]&-8)-Ct|0,H>>>0>>0)if(H)A=S,F=H;else{A=S,F=0,H=S,as=61;break e}if(H=o[S+20>>2]|0,S=o[S+16+(oe>>>31<<2)>>2]|0,Y=(H|0)==0|(H|0)==(S|0)?Y:H,H=(S|0)==0,H){S=Y,as=57;break}else oe=oe<<((H^1)&1)}while(!1);if((as|0)==57){if((S|0)==0&(A|0)==0){if(A=2<>>12&16,Ut=Ut>>>oe,Y=Ut>>>5&8,Ut=Ut>>>Y,Se=Ut>>>2&4,Ut=Ut>>>Se,At=Ut>>>1&2,Ut=Ut>>>At,S=Ut>>>1&1,A=0,S=o[11436+((Y|oe|Se|At|S)+(Ut>>>S)<<2)>>2]|0}S?(H=S,as=61):(Se=A,oe=F)}if((as|0)==61)for(;;)if(as=0,S=(o[H+4>>2]&-8)-Ct|0,Ut=S>>>0>>0,S=Ut?S:F,A=Ut?H:A,H=o[H+16+(((o[H+16>>2]|0)==0&1)<<2)>>2]|0,H)F=S,as=61;else{Se=A,oe=S;break}if(Se|0&&oe>>>0<((o[2785]|0)-Ct|0)>>>0){if(Y=Se+Ct|0,Se>>>0>=Y>>>0)return hs=0,T=wl,hs|0;H=o[Se+24>>2]|0,_=o[Se+12>>2]|0;do if((_|0)==(Se|0)){if(A=Se+20|0,_=o[A>>2]|0,!_&&(A=Se+16|0,_=o[A>>2]|0,!_)){_=0;break}for(;;){if(S=_+20|0,F=o[S>>2]|0,F|0){_=F,A=S;continue}if(S=_+16|0,F=o[S>>2]|0,F)_=F,A=S;else break}o[A>>2]=0}else hs=o[Se+8>>2]|0,o[hs+12>>2]=_,o[_+8>>2]=hs;while(!1);do if(H){if(A=o[Se+28>>2]|0,S=11436+(A<<2)|0,(Se|0)==(o[S>>2]|0)){if(o[S>>2]=_,!_){F=Ye&~(1<>2]|0)!=(Se|0)&1)<<2)>>2]=_,!_){F=Ye;break}o[_+24>>2]=H,A=o[Se+16>>2]|0,A|0&&(o[_+16>>2]=A,o[A+24>>2]=_),A=o[Se+20>>2]|0,A&&(o[_+20>>2]=A,o[A+24>>2]=_),F=Ye}else F=Ye;while(!1);do if(oe>>>0>=16){if(o[Se+4>>2]=Ct|3,o[Y+4>>2]=oe|1,o[Y+oe>>2]=oe,_=oe>>>3,oe>>>0<256){S=11172+(_<<1<<2)|0,A=o[2783]|0,_=1<<_,A&_?(A=S+8|0,_=o[A>>2]|0):(o[2783]=A|_,_=S,A=S+8|0),o[A>>2]=Y,o[_+12>>2]=Y,o[Y+8>>2]=_,o[Y+12>>2]=S;break}if(_=oe>>>8,_?oe>>>0>16777215?_=31:(as=(_+1048320|0)>>>16&8,hs=_<>>16&4,hs=hs<>>16&2,_=14-(aa|as|_)+(hs<<_>>>15)|0,_=oe>>>(_+7|0)&1|_<<1):_=0,S=11436+(_<<2)|0,o[Y+28>>2]=_,A=Y+16|0,o[A+4>>2]=0,o[A>>2]=0,A=1<<_,!(F&A)){o[2784]=F|A,o[S>>2]=Y,o[Y+24>>2]=S,o[Y+12>>2]=Y,o[Y+8>>2]=Y;break}for(A=oe<<((_|0)==31?0:25-(_>>>1)|0),S=o[S>>2]|0;;){if((o[S+4>>2]&-8|0)==(oe|0)){as=97;break}if(F=S+16+(A>>>31<<2)|0,_=o[F>>2]|0,_)A=A<<1,S=_;else{as=96;break}}if((as|0)==96){o[F>>2]=Y,o[Y+24>>2]=S,o[Y+12>>2]=Y,o[Y+8>>2]=Y;break}else if((as|0)==97){as=S+8|0,hs=o[as>>2]|0,o[hs+12>>2]=Y,o[as>>2]=Y,o[Y+8>>2]=hs,o[Y+12>>2]=S,o[Y+24>>2]=0;break}}else hs=oe+Ct|0,o[Se+4>>2]=hs|3,hs=Se+hs+4|0,o[hs>>2]=o[hs>>2]|1;while(!1);return hs=Se+8|0,T=wl,hs|0}else Ut=Ct}else Ut=Ct;else Ut=-1;while(!1);if(S=o[2785]|0,S>>>0>=Ut>>>0)return _=S-Ut|0,A=o[2788]|0,_>>>0>15?(hs=A+Ut|0,o[2788]=hs,o[2785]=_,o[hs+4>>2]=_|1,o[hs+_>>2]=_,o[A+4>>2]=Ut|3):(o[2785]=0,o[2788]=0,o[A+4>>2]=S|3,hs=A+S+4|0,o[hs>>2]=o[hs>>2]|1),hs=A+8|0,T=wl,hs|0;if(oe=o[2786]|0,oe>>>0>Ut>>>0)return aa=oe-Ut|0,o[2786]=aa,hs=o[2789]|0,as=hs+Ut|0,o[2789]=as,o[as+4>>2]=aa|1,o[hs+4>>2]=Ut|3,hs=hs+8|0,T=wl,hs|0;if(o[2901]|0?A=o[2903]|0:(o[2903]=4096,o[2902]=4096,o[2904]=-1,o[2905]=-1,o[2906]=0,o[2894]=0,A=cn&-16^1431655768,o[cn>>2]=A,o[2901]=A,A=4096),Se=Ut+48|0,Ye=Ut+47|0,Y=A+Ye|0,H=0-A|0,Ct=Y&H,Ct>>>0<=Ut>>>0||(A=o[2893]|0,A|0&&(At=o[2891]|0,cn=At+Ct|0,cn>>>0<=At>>>0|cn>>>0>A>>>0)))return hs=0,T=wl,hs|0;e:do if(o[2894]&4)_=0,as=133;else{S=o[2789]|0;t:do if(S){for(F=11580;A=o[F>>2]|0,!(A>>>0<=S>>>0&&(Ei=F+4|0,(A+(o[Ei>>2]|0)|0)>>>0>S>>>0));)if(A=o[F+8>>2]|0,A)F=A;else{as=118;break t}if(_=Y-oe&H,_>>>0<2147483647)if(A=IV(_|0)|0,(A|0)==((o[F>>2]|0)+(o[Ei>>2]|0)|0)){if((A|0)!=-1){oe=_,Y=A,as=135;break e}}else F=A,as=126;else _=0}else as=118;while(!1);do if((as|0)==118)if(S=IV(0)|0,(S|0)!=-1&&(_=S,Is=o[2902]|0,ji=Is+-1|0,_=(ji&_|0?(ji+_&0-Is)-_|0:0)+Ct|0,Is=o[2891]|0,ji=_+Is|0,_>>>0>Ut>>>0&_>>>0<2147483647)){if(Ei=o[2893]|0,Ei|0&&ji>>>0<=Is>>>0|ji>>>0>Ei>>>0){_=0;break}if(A=IV(_|0)|0,(A|0)==(S|0)){oe=_,Y=S,as=135;break e}else F=A,as=126}else _=0;while(!1);do if((as|0)==126){if(S=0-_|0,!(Se>>>0>_>>>0&(_>>>0<2147483647&(F|0)!=-1)))if((F|0)==-1){_=0;break}else{oe=_,Y=F,as=135;break e}if(A=o[2903]|0,A=Ye-_+A&0-A,A>>>0>=2147483647){oe=_,Y=F,as=135;break e}if((IV(A|0)|0)==-1){IV(S|0)|0,_=0;break}else{oe=A+_|0,Y=F,as=135;break e}}while(!1);o[2894]=o[2894]|4,as=133}while(!1);if((as|0)==133&&Ct>>>0<2147483647&&(aa=IV(Ct|0)|0,Ei=IV(0)|0,yo=Ei-aa|0,to=yo>>>0>(Ut+40|0)>>>0,!((aa|0)==-1|to^1|aa>>>0>>0&((aa|0)!=-1&(Ei|0)!=-1)^1))&&(oe=to?yo:_,Y=aa,as=135),(as|0)==135){_=(o[2891]|0)+oe|0,o[2891]=_,_>>>0>(o[2892]|0)>>>0&&(o[2892]=_),Ye=o[2789]|0;do if(Ye){for(_=11580;;){if(A=o[_>>2]|0,S=_+4|0,F=o[S>>2]|0,(Y|0)==(A+F|0)){as=145;break}if(H=o[_+8>>2]|0,H)_=H;else break}if((as|0)==145&&!(o[_+12>>2]&8|0)&&Ye>>>0>>0&Ye>>>0>=A>>>0){o[S>>2]=F+oe,hs=Ye+8|0,hs=hs&7|0?0-hs&7:0,as=Ye+hs|0,hs=(o[2786]|0)+(oe-hs)|0,o[2789]=as,o[2786]=hs,o[as+4>>2]=hs|1,o[as+hs+4>>2]=40,o[2790]=o[2905];break}for(Y>>>0<(o[2787]|0)>>>0&&(o[2787]=Y),S=Y+oe|0,_=11580;;){if((o[_>>2]|0)==(S|0)){as=153;break}if(A=o[_+8>>2]|0,A)_=A;else break}if((as|0)==153&&!(o[_+12>>2]&8|0)){o[_>>2]=Y,At=_+4|0,o[At>>2]=(o[At>>2]|0)+oe,At=Y+8|0,At=Y+(At&7|0?0-At&7:0)|0,_=S+8|0,_=S+(_&7|0?0-_&7:0)|0,Ct=At+Ut|0,Se=_-At-Ut|0,o[At+4>>2]=Ut|3;do if((_|0)!=(Ye|0)){if((_|0)==(o[2788]|0)){hs=(o[2785]|0)+Se|0,o[2785]=hs,o[2788]=Ct,o[Ct+4>>2]=hs|1,o[Ct+hs>>2]=hs;break}if(A=o[_+4>>2]|0,(A&3|0)==1){oe=A&-8,F=A>>>3;e:do if(A>>>0<256)if(A=o[_+8>>2]|0,S=o[_+12>>2]|0,(S|0)==(A|0)){o[2783]=o[2783]&~(1<>2]=S,o[S+8>>2]=A;break}else{Y=o[_+24>>2]|0,A=o[_+12>>2]|0;do if((A|0)==(_|0)){if(F=_+16|0,S=F+4|0,A=o[S>>2]|0,!A)if(A=o[F>>2]|0,A)S=F;else{A=0;break}for(;;){if(F=A+20|0,H=o[F>>2]|0,H|0){A=H,S=F;continue}if(F=A+16|0,H=o[F>>2]|0,H)A=H,S=F;else break}o[S>>2]=0}else hs=o[_+8>>2]|0,o[hs+12>>2]=A,o[A+8>>2]=hs;while(!1);if(!Y)break;S=o[_+28>>2]|0,F=11436+(S<<2)|0;do if((_|0)!=(o[F>>2]|0)){if(o[Y+16+(((o[Y+16>>2]|0)!=(_|0)&1)<<2)>>2]=A,!A)break e}else{if(o[F>>2]=A,A|0)break;o[2784]=o[2784]&~(1<>2]=Y,S=_+16|0,F=o[S>>2]|0,F|0&&(o[A+16>>2]=F,o[F+24>>2]=A),S=o[S+4>>2]|0,!S)break;o[A+20>>2]=S,o[S+24>>2]=A}while(!1);_=_+oe|0,H=oe+Se|0}else H=Se;if(_=_+4|0,o[_>>2]=o[_>>2]&-2,o[Ct+4>>2]=H|1,o[Ct+H>>2]=H,_=H>>>3,H>>>0<256){S=11172+(_<<1<<2)|0,A=o[2783]|0,_=1<<_,A&_?(A=S+8|0,_=o[A>>2]|0):(o[2783]=A|_,_=S,A=S+8|0),o[A>>2]=Ct,o[_+12>>2]=Ct,o[Ct+8>>2]=_,o[Ct+12>>2]=S;break}_=H>>>8;do if(!_)_=0;else{if(H>>>0>16777215){_=31;break}as=(_+1048320|0)>>>16&8,hs=_<>>16&4,hs=hs<>>16&2,_=14-(aa|as|_)+(hs<<_>>>15)|0,_=H>>>(_+7|0)&1|_<<1}while(!1);if(F=11436+(_<<2)|0,o[Ct+28>>2]=_,A=Ct+16|0,o[A+4>>2]=0,o[A>>2]=0,A=o[2784]|0,S=1<<_,!(A&S)){o[2784]=A|S,o[F>>2]=Ct,o[Ct+24>>2]=F,o[Ct+12>>2]=Ct,o[Ct+8>>2]=Ct;break}for(A=H<<((_|0)==31?0:25-(_>>>1)|0),S=o[F>>2]|0;;){if((o[S+4>>2]&-8|0)==(H|0)){as=194;break}if(F=S+16+(A>>>31<<2)|0,_=o[F>>2]|0,_)A=A<<1,S=_;else{as=193;break}}if((as|0)==193){o[F>>2]=Ct,o[Ct+24>>2]=S,o[Ct+12>>2]=Ct,o[Ct+8>>2]=Ct;break}else if((as|0)==194){as=S+8|0,hs=o[as>>2]|0,o[hs+12>>2]=Ct,o[as>>2]=Ct,o[Ct+8>>2]=hs,o[Ct+12>>2]=S,o[Ct+24>>2]=0;break}}else hs=(o[2786]|0)+Se|0,o[2786]=hs,o[2789]=Ct,o[Ct+4>>2]=hs|1;while(!1);return hs=At+8|0,T=wl,hs|0}for(_=11580;A=o[_>>2]|0,!(A>>>0<=Ye>>>0&&(hs=A+(o[_+4>>2]|0)|0,hs>>>0>Ye>>>0));)_=o[_+8>>2]|0;H=hs+-47|0,A=H+8|0,A=H+(A&7|0?0-A&7:0)|0,H=Ye+16|0,A=A>>>0>>0?Ye:A,_=A+8|0,S=Y+8|0,S=S&7|0?0-S&7:0,as=Y+S|0,S=oe+-40-S|0,o[2789]=as,o[2786]=S,o[as+4>>2]=S|1,o[as+S+4>>2]=40,o[2790]=o[2905],S=A+4|0,o[S>>2]=27,o[_>>2]=o[2895],o[_+4>>2]=o[2896],o[_+8>>2]=o[2897],o[_+12>>2]=o[2898],o[2895]=Y,o[2896]=oe,o[2898]=0,o[2897]=_,_=A+24|0;do as=_,_=_+4|0,o[_>>2]=7;while((as+8|0)>>>0>>0);if((A|0)!=(Ye|0)){if(Y=A-Ye|0,o[S>>2]=o[S>>2]&-2,o[Ye+4>>2]=Y|1,o[A>>2]=Y,_=Y>>>3,Y>>>0<256){S=11172+(_<<1<<2)|0,A=o[2783]|0,_=1<<_,A&_?(A=S+8|0,_=o[A>>2]|0):(o[2783]=A|_,_=S,A=S+8|0),o[A>>2]=Ye,o[_+12>>2]=Ye,o[Ye+8>>2]=_,o[Ye+12>>2]=S;break}if(_=Y>>>8,_?Y>>>0>16777215?S=31:(as=(_+1048320|0)>>>16&8,hs=_<>>16&4,hs=hs<>>16&2,S=14-(aa|as|S)+(hs<>>15)|0,S=Y>>>(S+7|0)&1|S<<1):S=0,F=11436+(S<<2)|0,o[Ye+28>>2]=S,o[Ye+20>>2]=0,o[H>>2]=0,_=o[2784]|0,A=1<>2]=Ye,o[Ye+24>>2]=F,o[Ye+12>>2]=Ye,o[Ye+8>>2]=Ye;break}for(A=Y<<((S|0)==31?0:25-(S>>>1)|0),S=o[F>>2]|0;;){if((o[S+4>>2]&-8|0)==(Y|0)){as=216;break}if(F=S+16+(A>>>31<<2)|0,_=o[F>>2]|0,_)A=A<<1,S=_;else{as=215;break}}if((as|0)==215){o[F>>2]=Ye,o[Ye+24>>2]=S,o[Ye+12>>2]=Ye,o[Ye+8>>2]=Ye;break}else if((as|0)==216){as=S+8|0,hs=o[as>>2]|0,o[hs+12>>2]=Ye,o[as>>2]=Ye,o[Ye+8>>2]=hs,o[Ye+12>>2]=S,o[Ye+24>>2]=0;break}}}else{hs=o[2787]|0,(hs|0)==0|Y>>>0>>0&&(o[2787]=Y),o[2895]=Y,o[2896]=oe,o[2898]=0,o[2792]=o[2901],o[2791]=-1,_=0;do hs=11172+(_<<1<<2)|0,o[hs+12>>2]=hs,o[hs+8>>2]=hs,_=_+1|0;while((_|0)!=32);hs=Y+8|0,hs=hs&7|0?0-hs&7:0,as=Y+hs|0,hs=oe+-40-hs|0,o[2789]=as,o[2786]=hs,o[as+4>>2]=hs|1,o[as+hs+4>>2]=40,o[2790]=o[2905]}while(!1);if(_=o[2786]|0,_>>>0>Ut>>>0)return aa=_-Ut|0,o[2786]=aa,hs=o[2789]|0,as=hs+Ut|0,o[2789]=as,o[as+4>>2]=aa|1,o[hs+4>>2]=Ut|3,hs=hs+8|0,T=wl,hs|0}return o[(pV()|0)>>2]=12,hs=0,T=wl,hs|0}function $ee(A){A=A|0;var _=0,S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0;if(A){S=A+-8|0,H=o[2787]|0,A=o[A+-4>>2]|0,_=A&-8,Ye=S+_|0;do if(A&1)Se=S,oe=S;else{if(F=o[S>>2]|0,!(A&3)||(oe=S+(0-F)|0,Y=F+_|0,oe>>>0>>0))return;if((oe|0)==(o[2788]|0)){if(A=Ye+4|0,_=o[A>>2]|0,(_&3|0)!=3){Se=oe,_=Y;break}o[2785]=Y,o[A>>2]=_&-2,o[oe+4>>2]=Y|1,o[oe+Y>>2]=Y;return}if(S=F>>>3,F>>>0<256)if(A=o[oe+8>>2]|0,_=o[oe+12>>2]|0,(_|0)==(A|0)){o[2783]=o[2783]&~(1<>2]=_,o[_+8>>2]=A,Se=oe,_=Y;break}H=o[oe+24>>2]|0,A=o[oe+12>>2]|0;do if((A|0)==(oe|0)){if(S=oe+16|0,_=S+4|0,A=o[_>>2]|0,!A)if(A=o[S>>2]|0,A)_=S;else{A=0;break}for(;;){if(S=A+20|0,F=o[S>>2]|0,F|0){A=F,_=S;continue}if(S=A+16|0,F=o[S>>2]|0,F)A=F,_=S;else break}o[_>>2]=0}else Se=o[oe+8>>2]|0,o[Se+12>>2]=A,o[A+8>>2]=Se;while(!1);if(H){if(_=o[oe+28>>2]|0,S=11436+(_<<2)|0,(oe|0)==(o[S>>2]|0)){if(o[S>>2]=A,!A){o[2784]=o[2784]&~(1<<_),Se=oe,_=Y;break}}else if(o[H+16+(((o[H+16>>2]|0)!=(oe|0)&1)<<2)>>2]=A,!A){Se=oe,_=Y;break}o[A+24>>2]=H,_=oe+16|0,S=o[_>>2]|0,S|0&&(o[A+16>>2]=S,o[S+24>>2]=A),_=o[_+4>>2]|0,_?(o[A+20>>2]=_,o[_+24>>2]=A,Se=oe,_=Y):(Se=oe,_=Y)}else Se=oe,_=Y}while(!1);if(!(oe>>>0>=Ye>>>0)&&(A=Ye+4|0,F=o[A>>2]|0,!!(F&1))){if(F&2)o[A>>2]=F&-2,o[Se+4>>2]=_|1,o[oe+_>>2]=_,H=_;else{if(A=o[2788]|0,(Ye|0)==(o[2789]|0)){if(Ye=(o[2786]|0)+_|0,o[2786]=Ye,o[2789]=Se,o[Se+4>>2]=Ye|1,(Se|0)!=(A|0))return;o[2788]=0,o[2785]=0;return}if((Ye|0)==(A|0)){Ye=(o[2785]|0)+_|0,o[2785]=Ye,o[2788]=oe,o[Se+4>>2]=Ye|1,o[oe+Ye>>2]=Ye;return}H=(F&-8)+_|0,S=F>>>3;do if(F>>>0<256)if(_=o[Ye+8>>2]|0,A=o[Ye+12>>2]|0,(A|0)==(_|0)){o[2783]=o[2783]&~(1<>2]=A,o[A+8>>2]=_;break}else{Y=o[Ye+24>>2]|0,A=o[Ye+12>>2]|0;do if((A|0)==(Ye|0)){if(S=Ye+16|0,_=S+4|0,A=o[_>>2]|0,!A)if(A=o[S>>2]|0,A)_=S;else{S=0;break}for(;;){if(S=A+20|0,F=o[S>>2]|0,F|0){A=F,_=S;continue}if(S=A+16|0,F=o[S>>2]|0,F)A=F,_=S;else break}o[_>>2]=0,S=A}else S=o[Ye+8>>2]|0,o[S+12>>2]=A,o[A+8>>2]=S,S=A;while(!1);if(Y|0){if(A=o[Ye+28>>2]|0,_=11436+(A<<2)|0,(Ye|0)==(o[_>>2]|0)){if(o[_>>2]=S,!S){o[2784]=o[2784]&~(1<>2]|0)!=(Ye|0)&1)<<2)>>2]=S,!S)break;o[S+24>>2]=Y,A=Ye+16|0,_=o[A>>2]|0,_|0&&(o[S+16>>2]=_,o[_+24>>2]=S),A=o[A+4>>2]|0,A|0&&(o[S+20>>2]=A,o[A+24>>2]=S)}}while(!1);if(o[Se+4>>2]=H|1,o[oe+H>>2]=H,(Se|0)==(o[2788]|0)){o[2785]=H;return}}if(A=H>>>3,H>>>0<256){S=11172+(A<<1<<2)|0,_=o[2783]|0,A=1<>2]|0):(o[2783]=_|A,A=S,_=S+8|0),o[_>>2]=Se,o[A+12>>2]=Se,o[Se+8>>2]=A,o[Se+12>>2]=S;return}A=H>>>8,A?H>>>0>16777215?A=31:(oe=(A+1048320|0)>>>16&8,Ye=A<>>16&4,Ye=Ye<>>16&2,A=14-(Y|oe|A)+(Ye<>>15)|0,A=H>>>(A+7|0)&1|A<<1):A=0,F=11436+(A<<2)|0,o[Se+28>>2]=A,o[Se+20>>2]=0,o[Se+16>>2]=0,_=o[2784]|0,S=1<>>1)|0),S=o[F>>2]|0;;){if((o[S+4>>2]&-8|0)==(H|0)){A=73;break}if(F=S+16+(_>>>31<<2)|0,A=o[F>>2]|0,A)_=_<<1,S=A;else{A=72;break}}if((A|0)==72){o[F>>2]=Se,o[Se+24>>2]=S,o[Se+12>>2]=Se,o[Se+8>>2]=Se;break}else if((A|0)==73){oe=S+8|0,Ye=o[oe>>2]|0,o[Ye+12>>2]=Se,o[oe>>2]=Se,o[Se+8>>2]=Ye,o[Se+12>>2]=S,o[Se+24>>2]=0;break}}else o[2784]=_|S,o[F>>2]=Se,o[Se+24>>2]=F,o[Se+12>>2]=Se,o[Se+8>>2]=Se;while(!1);if(Ye=(o[2791]|0)+-1|0,o[2791]=Ye,!Ye)A=11588;else return;for(;A=o[A>>2]|0,A;)A=A+8|0;o[2791]=-1}}}function dxe(){return 11628}function whe(A){A=A|0;var _=0,S=0;return _=T,T=T+16|0,S=_,o[S>>2]=RKe(o[A+60>>2]|0)|0,A=Nle(ul(6,S|0)|0)|0,T=_,A|0}function The(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0,Is=0;Ut=T,T=T+48|0,Ct=Ut+16|0,Y=Ut,H=Ut+32|0,Se=A+28|0,F=o[Se>>2]|0,o[H>>2]=F,Ye=A+20|0,F=(o[Ye>>2]|0)-F|0,o[H+4>>2]=F,o[H+8>>2]=_,o[H+12>>2]=S,F=F+S|0,oe=A+60|0,o[Y>>2]=o[oe>>2],o[Y+4>>2]=H,o[Y+8>>2]=2,Y=Nle(Kd(146,Y|0)|0)|0;e:do if((F|0)!=(Y|0)){for(_=2;!((Y|0)<0);)if(F=F-Y|0,Is=o[H+4>>2]|0,cn=Y>>>0>Is>>>0,H=cn?H+8|0:H,_=(cn<<31>>31)+_|0,Is=Y-(cn?Is:0)|0,o[H>>2]=(o[H>>2]|0)+Is,cn=H+4|0,o[cn>>2]=(o[cn>>2]|0)-Is,o[Ct>>2]=o[oe>>2],o[Ct+4>>2]=H,o[Ct+8>>2]=_,Y=Nle(Kd(146,Ct|0)|0)|0,(F|0)==(Y|0)){At=3;break e}o[A+16>>2]=0,o[Se>>2]=0,o[Ye>>2]=0,o[A>>2]=o[A>>2]|32,(_|0)==2?S=0:S=S-(o[H+4>>2]|0)|0}else At=3;while(!1);return(At|0)==3&&(Is=o[A+44>>2]|0,o[A+16>>2]=Is+(o[A+48>>2]|0),o[Se>>2]=Is,o[Ye>>2]=Is),T=Ut,S|0}function NKe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0;return H=T,T=T+32|0,Y=H,F=H+20|0,o[Y>>2]=o[A+60>>2],o[Y+4>>2]=0,o[Y+8>>2]=_,o[Y+12>>2]=F,o[Y+16>>2]=S,(Nle(RA(140,Y|0)|0)|0)<0?(o[F>>2]=-1,A=-1):A=o[F>>2]|0,T=H,A|0}function Nle(A){return A=A|0,A>>>0>4294963200&&(o[(pV()|0)>>2]=0-A,A=-1),A|0}function pV(){return(Nhe()|0)+64|0}function Nhe(){return EN()|0}function EN(){return 2084}function RKe(A){return A=A|0,A|0}function XNt(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0;return H=T,T=T+32|0,F=H,o[A+36>>2]=1,!(o[A>>2]&64|0)&&(o[F>>2]=o[A+60>>2],o[F+4>>2]=21523,o[F+8>>2]=H+16,XA(54,F|0)|0)&&(s[A+75>>0]=-1),F=The(A,_,S)|0,T=H,F|0}function Wx(A,_){A=A|0,_=_|0;var S=0,F=0;if(S=s[A>>0]|0,F=s[_>>0]|0,!(S<<24>>24)||S<<24>>24!=F<<24>>24)A=F;else{do A=A+1|0,_=_+1|0,S=s[A>>0]|0,F=s[_>>0]|0;while(!(!(S<<24>>24)||S<<24>>24!=F<<24>>24));A=F}return(S&255)-(A&255)|0}function ete(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0;e:do if(!S)A=0;else{for(;F=s[A>>0]|0,H=s[_>>0]|0,F<<24>>24==H<<24>>24;)if(S=S+-1|0,S)A=A+1|0,_=_+1|0;else{A=0;break e}A=(F&255)-(H&255)|0}while(!1);return A|0}function DKe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0,Is=0,ji=0,Ei=0;Ei=T,T=T+224|0,At=Ei+120|0,Ut=Ei+80|0,Is=Ei,ji=Ei+136|0,F=Ut,H=F+40|0;do o[F>>2]=0,F=F+4|0;while((F|0)<(H|0));return o[At>>2]=o[S>>2],(wo(0,_,At,Is,Ut)|0)<0?S=-1:((o[A+76>>2]|0)>-1?cn=mA(A)|0:cn=0,S=o[A>>2]|0,Ct=S&32,(s[A+74>>0]|0)<1&&(o[A>>2]=S&-33),F=A+48|0,o[F>>2]|0?S=wo(A,_,At,Is,Ut)|0:(H=A+44|0,Y=o[H>>2]|0,o[H>>2]=ji,oe=A+28|0,o[oe>>2]=ji,Se=A+20|0,o[Se>>2]=ji,o[F>>2]=80,Ye=A+16|0,o[Ye>>2]=ji+80,S=wo(A,_,At,Is,Ut)|0,Y&&(eP[o[A+36>>2]&7](A,0,0)|0,S=o[Se>>2]|0?S:-1,o[H>>2]=Y,o[F>>2]=0,o[Ye>>2]=0,o[oe>>2]=0,o[Se>>2]=0)),F=o[A>>2]|0,o[A>>2]=F|Ct,cn|0&&xKe(A),S=F&32|0?-1:S),T=Ei,S|0}function wo(A,_,S,F,H){A=A|0,_=_|0,S=S|0,F=F|0,H=H|0;var Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0,Is=0,ji=0,Ei=0,yo=0,to=0,aa=0,as=0,hs=0,wl=0,sd=0,Nu=0,rg=0,tp=0,Wg=0,Wu=0;Wu=T,T=T+64|0,Nu=Wu+16|0,rg=Wu,wl=Wu+24|0,tp=Wu+8|0,Wg=Wu+20|0,o[Nu>>2]=_,aa=(A|0)!=0,as=wl+40|0,hs=as,wl=wl+39|0,sd=tp+4|0,oe=0,Y=0,At=0;e:for(;;){do if((Y|0)>-1)if((oe|0)>(2147483647-Y|0)){o[(pV()|0)>>2]=75,Y=-1;break}else{Y=oe+Y|0;break}while(!1);if(oe=s[_>>0]|0,oe<<24>>24)Se=_;else{to=87;break}t:for(;;){switch(oe<<24>>24){case 37:{oe=Se,to=9;break t}case 0:{oe=Se;break t}default:}yo=Se+1|0,o[Nu>>2]=yo,oe=s[yo>>0]|0,Se=yo}t:do if((to|0)==9)for(;;){if(to=0,(s[Se+1>>0]|0)!=37)break t;if(oe=oe+1|0,Se=Se+2|0,o[Nu>>2]=Se,(s[Se>>0]|0)==37)to=9;else break}while(!1);if(oe=oe-_|0,aa&&F2(A,_,oe),oe|0){_=Se;continue}Ye=Se+1|0,oe=(s[Ye>>0]|0)+-48|0,oe>>>0<10?(yo=(s[Se+2>>0]|0)==36,Ei=yo?oe:-1,At=yo?1:At,Ye=yo?Se+3|0:Ye):Ei=-1,o[Nu>>2]=Ye,oe=s[Ye>>0]|0,Se=(oe<<24>>24)+-32|0;t:do if(Se>>>0<32)for(Ct=0,Ut=oe;;){if(oe=1<>2]=Ye,oe=s[Ye>>0]|0,Se=(oe<<24>>24)+-32|0,Se>>>0>=32)break;Ut=oe}else Ct=0;while(!1);if(oe<<24>>24==42){if(Se=Ye+1|0,oe=(s[Se>>0]|0)+-48|0,oe>>>0<10&&(s[Ye+2>>0]|0)==36)o[H+(oe<<2)>>2]=10,oe=o[F+((s[Se>>0]|0)+-48<<3)>>2]|0,At=1,Ye=Ye+3|0;else{if(At|0){Y=-1;break}aa?(At=(o[S>>2]|0)+3&-4,oe=o[At>>2]|0,o[S>>2]=At+4,At=0,Ye=Se):(oe=0,At=0,Ye=Se)}o[Nu>>2]=Ye,yo=(oe|0)<0,oe=yo?0-oe|0:oe,Ct=yo?Ct|8192:Ct}else{if(oe=tte(Nu)|0,(oe|0)<0){Y=-1;break}Ye=o[Nu>>2]|0}do if((s[Ye>>0]|0)==46){if((s[Ye+1>>0]|0)!=42){o[Nu>>2]=Ye+1,Se=tte(Nu)|0,Ye=o[Nu>>2]|0;break}if(Ut=Ye+2|0,Se=(s[Ut>>0]|0)+-48|0,Se>>>0<10&&(s[Ye+3>>0]|0)==36){o[H+(Se<<2)>>2]=10,Se=o[F+((s[Ut>>0]|0)+-48<<3)>>2]|0,Ye=Ye+4|0,o[Nu>>2]=Ye;break}if(At|0){Y=-1;break e}aa?(yo=(o[S>>2]|0)+3&-4,Se=o[yo>>2]|0,o[S>>2]=yo+4):Se=0,o[Nu>>2]=Ut,Ye=Ut}else Se=-1;while(!1);for(ji=0;;){if(((s[Ye>>0]|0)+-65|0)>>>0>57){Y=-1;break e}if(yo=Ye+1|0,o[Nu>>2]=yo,Ut=s[(s[Ye>>0]|0)+-65+(5178+(ji*58|0))>>0]|0,cn=Ut&255,(cn+-1|0)>>>0<8)ji=cn,Ye=yo;else break}if(!(Ut<<24>>24)){Y=-1;break}Is=(Ei|0)>-1;do if(Ut<<24>>24==19)if(Is){Y=-1;break e}else to=49;else{if(Is){o[H+(Ei<<2)>>2]=cn,Is=F+(Ei<<3)|0,Ei=o[Is+4>>2]|0,to=rg,o[to>>2]=o[Is>>2],o[to+4>>2]=Ei,to=49;break}if(!aa){Y=0;break e}rte(rg,cn,S)}while(!1);if((to|0)==49&&(to=0,!aa)){oe=0,_=yo;continue}Ye=s[Ye>>0]|0,Ye=(ji|0)!=0&(Ye&15|0)==3?Ye&-33:Ye,Is=Ct&-65537,Ei=Ct&8192|0?Is:Ct;t:do switch(Ye|0){case 110:switch((ji&255)<<24>>24){case 0:{o[o[rg>>2]>>2]=Y,oe=0,_=yo;continue e}case 1:{o[o[rg>>2]>>2]=Y,oe=0,_=yo;continue e}case 2:{oe=o[rg>>2]|0,o[oe>>2]=Y,o[oe+4>>2]=((Y|0)<0)<<31>>31,oe=0,_=yo;continue e}case 3:{a[o[rg>>2]>>1]=Y,oe=0,_=yo;continue e}case 4:{s[o[rg>>2]>>0]=Y,oe=0,_=yo;continue e}case 6:{o[o[rg>>2]>>2]=Y,oe=0,_=yo;continue e}case 7:{oe=o[rg>>2]|0,o[oe>>2]=Y,o[oe+4>>2]=((Y|0)<0)<<31>>31,oe=0,_=yo;continue e}default:{oe=0,_=yo;continue e}}case 112:{Ye=120,Se=Se>>>0>8?Se:8,_=Ei|8,to=61;break}case 88:case 120:{_=Ei,to=61;break}case 111:{Ye=rg,_=o[Ye>>2]|0,Ye=o[Ye+4>>2]|0,cn=_e(_,Ye,as)|0,Is=hs-cn|0,Ct=0,Ut=5642,Se=(Ei&8|0)==0|(Se|0)>(Is|0)?Se:Is+1|0,Is=Ei,to=67;break}case 105:case 100:if(Ye=rg,_=o[Ye>>2]|0,Ye=o[Ye+4>>2]|0,(Ye|0)<0){_=nT(0,0,_|0,Ye|0)|0,Ye=Ue,Ct=rg,o[Ct>>2]=_,o[Ct+4>>2]=Ye,Ct=1,Ut=5642,to=66;break t}else{Ct=(Ei&2049|0)!=0&1,Ut=Ei&2048|0?5643:Ei&1|0?5644:5642,to=66;break t}case 117:{Ye=rg,Ct=0,Ut=5642,_=o[Ye>>2]|0,Ye=o[Ye+4>>2]|0,to=66;break}case 99:{s[wl>>0]=o[rg>>2],_=wl,Ct=0,Ut=5642,cn=as,Ye=1,Se=Is;break}case 109:{Ye=kKe(o[(pV()|0)>>2]|0)|0,to=71;break}case 115:{Ye=o[rg>>2]|0,Ye=Ye|0?Ye:5652,to=71;break}case 67:{o[tp>>2]=o[rg>>2],o[sd>>2]=0,o[rg>>2]=tp,cn=-1,Ye=tp,to=75;break}case 83:{_=o[rg>>2]|0,Se?(cn=Se,Ye=_,to=75):(XS(A,32,oe,0,Ei),_=0,to=84);break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{oe=kh(A,+y[rg>>3],oe,Se,Ei,Ye)|0,_=yo;continue e}default:Ct=0,Ut=5642,cn=as,Ye=Se,Se=Ei}while(!1);t:do if((to|0)==61)Ei=rg,ji=o[Ei>>2]|0,Ei=o[Ei+4>>2]|0,cn=JNt(ji,Ei,as,Ye&32)|0,Ut=(_&8|0)==0|(ji|0)==0&(Ei|0)==0,Ct=Ut?0:2,Ut=Ut?5642:5642+(Ye>>4)|0,Is=_,_=ji,Ye=Ei,to=67;else if((to|0)==66)cn=k6(_,Ye,as)|0,Is=Ei,to=67;else if((to|0)==71)to=0,Ei=Ho(Ye,0,Se)|0,ji=(Ei|0)==0,_=Ye,Ct=0,Ut=5642,cn=ji?Ye+Se|0:Ei,Ye=ji?Se:Ei-Ye|0,Se=Is;else if((to|0)==75){for(to=0,Ut=Ye,_=0,Se=0;Ct=o[Ut>>2]|0,!(!Ct||(Se=GKe(Wg,Ct)|0,(Se|0)<0|Se>>>0>(cn-_|0)>>>0));)if(_=Se+_|0,cn>>>0>_>>>0)Ut=Ut+4|0;else break;if((Se|0)<0){Y=-1;break e}if(XS(A,32,oe,_,Ei),!_)_=0,to=84;else for(Ct=0;;){if(Se=o[Ye>>2]|0,!Se){to=84;break t}if(Se=GKe(Wg,Se)|0,Ct=Se+Ct|0,(Ct|0)>(_|0)){to=84;break t}if(F2(A,Wg,Se),Ct>>>0>=_>>>0){to=84;break}else Ye=Ye+4|0}}while(!1);if((to|0)==67)to=0,Ye=(_|0)!=0|(Ye|0)!=0,Ei=(Se|0)!=0|Ye,Ye=((Ye^1)&1)+(hs-cn)|0,_=Ei?cn:as,cn=as,Ye=Ei?(Se|0)>(Ye|0)?Se:Ye:Se,Se=(Se|0)>-1?Is&-65537:Is;else if((to|0)==84){to=0,XS(A,32,oe,_,Ei^8192),oe=(oe|0)>(_|0)?oe:_,_=yo;continue}ji=cn-_|0,Is=(Ye|0)<(ji|0)?ji:Ye,Ei=Is+Ct|0,oe=(oe|0)<(Ei|0)?Ei:oe,XS(A,32,oe,Ei,Se),F2(A,Ut,Ct),XS(A,48,oe,Ei,Se^65536),XS(A,48,Is,ji,0),F2(A,_,ji),XS(A,32,oe,Ei,Se^8192),_=yo}e:do if((to|0)==87&&!A)if(!At)Y=0;else{for(Y=1;_=o[H+(Y<<2)>>2]|0,!!_;)if(rte(F+(Y<<3)|0,_,S),Y=Y+1|0,(Y|0)>=10){Y=1;break e}for(;;){if(o[H+(Y<<2)>>2]|0){Y=-1;break e}if(Y=Y+1|0,(Y|0)>=10){Y=1;break}}}while(!1);return T=Wu,Y|0}function mA(A){return A=A|0,0}function xKe(A){A=A|0}function F2(A,_,S){A=A|0,_=_|0,S=S|0,o[A>>2]&32||Dle(_,S,A)|0}function tte(A){A=A|0;var _=0,S=0,F=0;if(S=o[A>>2]|0,F=(s[S>>0]|0)+-48|0,F>>>0<10){_=0;do _=F+(_*10|0)|0,S=S+1|0,o[A>>2]=S,F=(s[S>>0]|0)+-48|0;while(F>>>0<10)}else _=0;return _|0}function rte(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0;e:do if(_>>>0<=20)do switch(_|0){case 9:{F=(o[S>>2]|0)+3&-4,_=o[F>>2]|0,o[S>>2]=F+4,o[A>>2]=_;break e}case 10:{F=(o[S>>2]|0)+3&-4,_=o[F>>2]|0,o[S>>2]=F+4,F=A,o[F>>2]=_,o[F+4>>2]=((_|0)<0)<<31>>31;break e}case 11:{F=(o[S>>2]|0)+3&-4,_=o[F>>2]|0,o[S>>2]=F+4,F=A,o[F>>2]=_,o[F+4>>2]=0;break e}case 12:{F=(o[S>>2]|0)+7&-8,_=F,H=o[_>>2]|0,_=o[_+4>>2]|0,o[S>>2]=F+8,F=A,o[F>>2]=H,o[F+4>>2]=_;break e}case 13:{H=(o[S>>2]|0)+3&-4,F=o[H>>2]|0,o[S>>2]=H+4,F=(F&65535)<<16>>16,H=A,o[H>>2]=F,o[H+4>>2]=((F|0)<0)<<31>>31;break e}case 14:{H=(o[S>>2]|0)+3&-4,F=o[H>>2]|0,o[S>>2]=H+4,H=A,o[H>>2]=F&65535,o[H+4>>2]=0;break e}case 15:{H=(o[S>>2]|0)+3&-4,F=o[H>>2]|0,o[S>>2]=H+4,F=(F&255)<<24>>24,H=A,o[H>>2]=F,o[H+4>>2]=((F|0)<0)<<31>>31;break e}case 16:{H=(o[S>>2]|0)+3&-4,F=o[H>>2]|0,o[S>>2]=H+4,H=A,o[H>>2]=F&255,o[H+4>>2]=0;break e}case 17:{H=(o[S>>2]|0)+7&-8,Y=+y[H>>3],o[S>>2]=H+8,y[A>>3]=Y;break e}case 18:{H=(o[S>>2]|0)+7&-8,Y=+y[H>>3],o[S>>2]=H+8,y[A>>3]=Y;break e}default:break e}while(!1);while(!1)}function JNt(A,_,S,F){if(A=A|0,_=_|0,S=S|0,F=F|0,!((A|0)==0&(_|0)==0))do S=S+-1|0,s[S>>0]=g[5694+(A&15)>>0]|0|F,A=ste(A|0,_|0,4)|0,_=Ue;while(!((A|0)==0&(_|0)==0));return S|0}function _e(A,_,S){if(A=A|0,_=_|0,S=S|0,!((A|0)==0&(_|0)==0))do S=S+-1|0,s[S>>0]=A&7|48,A=ste(A|0,_|0,3)|0,_=Ue;while(!((A|0)==0&(_|0)==0));return S|0}function k6(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;if(_>>>0>0|(_|0)==0&A>>>0>4294967295){for(;F=Zle(A|0,_|0,10,0)|0,S=S+-1|0,s[S>>0]=F&255|48,F=A,A=Fle(A|0,_|0,10,0)|0,_>>>0>9|(_|0)==9&F>>>0>4294967295;)_=Ue;_=A}else _=A;if(_)for(;S=S+-1|0,s[S>>0]=(_>>>0)%10|0|48,!(_>>>0<10);)_=(_>>>0)/10|0;return S|0}function kKe(A){return A=A|0,Px(A,o[(rM()|0)+188>>2]|0)|0}function Ho(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;Y=_&255,F=(S|0)!=0;e:do if(F&(A&3|0)!=0)for(H=_&255;;){if((s[A>>0]|0)==H<<24>>24){oe=6;break e}if(A=A+1|0,S=S+-1|0,F=(S|0)!=0,!(F&(A&3|0)!=0)){oe=5;break}}else oe=5;while(!1);(oe|0)==5&&(F?oe=6:S=0);e:do if((oe|0)==6&&(H=_&255,(s[A>>0]|0)!=H<<24>>24)){F=Br(Y,16843009)|0;t:do if(S>>>0>3){for(;Y=o[A>>2]^F,!((Y&-2139062144^-2139062144)&Y+-16843009|0);)if(A=A+4|0,S=S+-4|0,S>>>0<=3){oe=11;break t}}else oe=11;while(!1);if((oe|0)==11&&!S){S=0;break}for(;;){if((s[A>>0]|0)==H<<24>>24)break e;if(A=A+1|0,S=S+-1|0,!S){S=0;break}}}while(!1);return(S|0?A:0)|0}function XS(A,_,S,F,H){A=A|0,_=_|0,S=S|0,F=F|0,H=H|0;var Y=0,oe=0;if(oe=T,T=T+256|0,Y=oe,(S|0)>(F|0)&(H&73728|0)==0){if(H=S-F|0,fV(Y|0,_|0,(H>>>0<256?H:256)|0)|0,H>>>0>255){_=S-F|0;do F2(A,Y,256),H=H+-256|0;while(H>>>0>255);H=_&255}F2(A,Y,H)}T=oe}function GKe(A,_){return A=A|0,_=_|0,A?A=JS(A,_,0)|0:A=0,A|0}function kh(A,_,S,F,H,Y){A=A|0,_=+_,S=S|0,F=F|0,H=H|0,Y=Y|0;var oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0,Is=0,ji=0,Ei=0,yo=0,to=0,aa=0,as=0,hs=0,wl=0,sd=0,Nu=0,rg=0,tp=0,Wg=0,Wu=0,hl=0;hl=T,T=T+560|0,Ye=hl+8|0,yo=hl,Wu=hl+524|0,Wg=Wu,Ct=hl+512|0,o[yo>>2]=0,tp=Ct+12|0,Rle(_)|0,(Ue|0)<0?(_=-_,Nu=1,sd=5659):(Nu=(H&2049|0)!=0&1,sd=H&2048|0?5662:H&1|0?5665:5660),Rle(_)|0,rg=Ue&2146435072;do if(rg>>>0<2146435072|(rg|0)==2146435072&!1){if(Is=+nte(_,yo)*2,oe=Is!=0,oe&&(o[yo>>2]=(o[yo>>2]|0)+-1),aa=Y|32,(aa|0)==97){ji=Y&32,cn=ji|0?sd+9|0:sd,Ut=Nu|2,oe=12-F|0;do if(F>>>0>11|(oe|0)==0)_=Is;else{_=8;do oe=oe+-1|0,_=_*16;while(oe|0);if((s[cn>>0]|0)==45){_=-(_+(-Is-_));break}else{_=Is+_-_;break}}while(!1);Se=o[yo>>2]|0,oe=(Se|0)<0?0-Se|0:Se,oe=k6(oe,((oe|0)<0)<<31>>31,tp)|0,(oe|0)==(tp|0)&&(oe=Ct+11|0,s[oe>>0]=48),s[oe+-1>>0]=(Se>>31&2)+43,At=oe+-2|0,s[At>>0]=Y+15,Ct=(F|0)<1,Ye=(H&8|0)==0,oe=Wu;do rg=~~_,Se=oe+1|0,s[oe>>0]=g[5694+rg>>0]|ji,_=(_-+(rg|0))*16,(Se-Wg|0)==1&&!(Ye&(Ct&_==0))?(s[Se>>0]=46,oe=oe+2|0):oe=Se;while(_!=0);rg=oe-Wg|0,Wg=tp-At|0,tp=(F|0)!=0&(rg+-2|0)<(F|0)?F+2|0:rg,oe=Wg+Ut+tp|0,XS(A,32,S,oe,H),F2(A,cn,Ut),XS(A,48,S,oe,H^65536),F2(A,Wu,rg),XS(A,48,tp-rg|0,0,0),F2(A,At,Wg),XS(A,32,S,oe,H^8192);break}Se=(F|0)<0?6:F,oe?(oe=(o[yo>>2]|0)+-28|0,o[yo>>2]=oe,_=Is*268435456):(_=Is,oe=o[yo>>2]|0),rg=(oe|0)<0?Ye:Ye+288|0,Ye=rg;do hs=~~_>>>0,o[Ye>>2]=hs,Ye=Ye+4|0,_=(_-+(hs>>>0))*1e9;while(_!=0);if((oe|0)>0)for(Ct=rg,Ut=Ye;;){if(At=(oe|0)<29?oe:29,oe=Ut+-4|0,oe>>>0>=Ct>>>0){Ye=0;do as=mxe(o[oe>>2]|0,0,At|0)|0,as=kZ(as|0,Ue|0,Ye|0,0)|0,hs=Ue,to=Zle(as|0,hs|0,1e9,0)|0,o[oe>>2]=to,Ye=Fle(as|0,hs|0,1e9,0)|0,oe=oe+-4|0;while(oe>>>0>=Ct>>>0);Ye&&(Ct=Ct+-4|0,o[Ct>>2]=Ye)}for(Ye=Ut;!(Ye>>>0<=Ct>>>0);)if(oe=Ye+-4|0,!(o[oe>>2]|0))Ye=oe;else break;if(oe=(o[yo>>2]|0)-At|0,o[yo>>2]=oe,(oe|0)>0)Ut=Ye;else break}else Ct=rg;if((oe|0)<0){F=((Se+25|0)/9|0)+1|0,Ei=(aa|0)==102;do{if(ji=0-oe|0,ji=(ji|0)<9?ji:9,Ct>>>0>>0){At=(1<>>ji,cn=0,oe=Ct;do hs=o[oe>>2]|0,o[oe>>2]=(hs>>>ji)+cn,cn=Br(hs&At,Ut)|0,oe=oe+4|0;while(oe>>>0>>0);oe=o[Ct>>2]|0?Ct:Ct+4|0,cn?(o[Ye>>2]=cn,Ct=oe,oe=Ye+4|0):(Ct=oe,oe=Ye)}else Ct=o[Ct>>2]|0?Ct:Ct+4|0,oe=Ye;Ye=Ei?rg:Ct,Ye=(oe-Ye>>2|0)>(F|0)?Ye+(F<<2)|0:oe,oe=(o[yo>>2]|0)+ji|0,o[yo>>2]=oe}while((oe|0)<0);oe=Ct,F=Ye}else oe=Ct,F=Ye;if(hs=rg,oe>>>0>>0){if(Ye=(hs-oe>>2)*9|0,At=o[oe>>2]|0,At>>>0>=10){Ct=10;do Ct=Ct*10|0,Ye=Ye+1|0;while(At>>>0>=Ct>>>0)}}else Ye=0;if(Ei=(aa|0)==103,to=(Se|0)!=0,Ct=Se-((aa|0)!=102?Ye:0)+((to&Ei)<<31>>31)|0,(Ct|0)<(((F-hs>>2)*9|0)+-9|0)){if(Ct=Ct+9216|0,ji=rg+4+(((Ct|0)/9|0)+-1024<<2)|0,Ct=((Ct|0)%9|0)+1|0,(Ct|0)<9){At=10;do At=At*10|0,Ct=Ct+1|0;while((Ct|0)!=9)}else At=10;if(Ut=o[ji>>2]|0,cn=(Ut>>>0)%(At>>>0)|0,Ct=(ji+4|0)==(F|0),Ct&(cn|0)==0)Ct=ji;else if(Is=((Ut>>>0)/(At>>>0)|0)&1|0?9007199254740994:9007199254740992,as=(At|0)/2|0,_=cn>>>0>>0?.5:Ct&(cn|0)==(as|0)?1:1.5,Nu&&(as=(s[sd>>0]|0)==45,_=as?-_:_,Is=as?-Is:Is),Ct=Ut-cn|0,o[ji>>2]=Ct,Is+_!=Is){if(as=Ct+At|0,o[ji>>2]=as,as>>>0>999999999)for(Ye=ji;Ct=Ye+-4|0,o[Ye>>2]=0,Ct>>>0>>0&&(oe=oe+-4|0,o[oe>>2]=0),as=(o[Ct>>2]|0)+1|0,o[Ct>>2]=as,as>>>0>999999999;)Ye=Ct;else Ct=ji;if(Ye=(hs-oe>>2)*9|0,Ut=o[oe>>2]|0,Ut>>>0>=10){At=10;do At=At*10|0,Ye=Ye+1|0;while(Ut>>>0>=At>>>0)}}else Ct=ji;Ct=Ct+4|0,Ct=F>>>0>Ct>>>0?Ct:F,as=oe}else Ct=F,as=oe;for(aa=Ct;;){if(aa>>>0<=as>>>0){yo=0;break}if(oe=aa+-4|0,!(o[oe>>2]|0))aa=oe;else{yo=1;break}}F=0-Ye|0;do if(Ei)if(oe=((to^1)&1)+Se|0,(oe|0)>(Ye|0)&(Ye|0)>-5?(At=Y+-1|0,Se=oe+-1-Ye|0):(At=Y+-2|0,Se=oe+-1|0),oe=H&8,oe)ji=oe;else{if(yo&&(wl=o[aa+-4>>2]|0,(wl|0)!=0))if((wl>>>0)%10|0)Ct=0;else{Ct=0,oe=10;do oe=oe*10|0,Ct=Ct+1|0;while(!((wl>>>0)%(oe>>>0)|0|0))}else Ct=9;if(oe=((aa-hs>>2)*9|0)+-9|0,(At|32|0)==102){ji=oe-Ct|0,ji=(ji|0)>0?ji:0,Se=(Se|0)<(ji|0)?Se:ji,ji=0;break}else{ji=oe+Ye-Ct|0,ji=(ji|0)>0?ji:0,Se=(Se|0)<(ji|0)?Se:ji,ji=0;break}}else At=Y,ji=H&8;while(!1);if(Ei=Se|ji,Ut=(Ei|0)!=0&1,cn=(At|32|0)==102,cn)to=0,oe=(Ye|0)>0?Ye:0;else{if(oe=(Ye|0)<0?F:Ye,oe=k6(oe,((oe|0)<0)<<31>>31,tp)|0,Ct=tp,(Ct-oe|0)<2)do oe=oe+-1|0,s[oe>>0]=48;while((Ct-oe|0)<2);s[oe+-1>>0]=(Ye>>31&2)+43,oe=oe+-2|0,s[oe>>0]=At,to=oe,oe=Ct-oe|0}if(oe=Nu+1+Se+Ut+oe|0,XS(A,32,S,oe,H),F2(A,sd,Nu),XS(A,48,S,oe,H^65536),cn){At=as>>>0>rg>>>0?rg:as,ji=Wu+9|0,Ut=ji,cn=Wu+8|0,Ct=At;do{if(Ye=k6(o[Ct>>2]|0,0,ji)|0,(Ct|0)==(At|0))(Ye|0)==(ji|0)&&(s[cn>>0]=48,Ye=cn);else if(Ye>>>0>Wu>>>0){fV(Wu|0,48,Ye-Wg|0)|0;do Ye=Ye+-1|0;while(Ye>>>0>Wu>>>0)}F2(A,Ye,Ut-Ye|0),Ct=Ct+4|0}while(Ct>>>0<=rg>>>0);if(Ei|0&&F2(A,5710,1),Ct>>>0>>0&(Se|0)>0)for(;;){if(Ye=k6(o[Ct>>2]|0,0,ji)|0,Ye>>>0>Wu>>>0){fV(Wu|0,48,Ye-Wg|0)|0;do Ye=Ye+-1|0;while(Ye>>>0>Wu>>>0)}if(F2(A,Ye,(Se|0)<9?Se:9),Ct=Ct+4|0,Ye=Se+-9|0,Ct>>>0>>0&(Se|0)>9)Se=Ye;else{Se=Ye;break}}XS(A,48,Se+9|0,9,0)}else{if(Ei=yo?aa:as+4|0,(Se|0)>-1){yo=Wu+9|0,ji=(ji|0)==0,F=yo,Ut=0-Wg|0,cn=Wu+8|0,At=as;do{Ye=k6(o[At>>2]|0,0,yo)|0,(Ye|0)==(yo|0)&&(s[cn>>0]=48,Ye=cn);do if((At|0)==(as|0)){if(Ct=Ye+1|0,F2(A,Ye,1),ji&(Se|0)<1){Ye=Ct;break}F2(A,5710,1),Ye=Ct}else{if(Ye>>>0<=Wu>>>0)break;fV(Wu|0,48,Ye+Ut|0)|0;do Ye=Ye+-1|0;while(Ye>>>0>Wu>>>0)}while(!1);Wg=F-Ye|0,F2(A,Ye,(Se|0)>(Wg|0)?Wg:Se),Se=Se-Wg|0,At=At+4|0}while(At>>>0>>0&(Se|0)>-1)}XS(A,48,Se+18|0,18,0),F2(A,to,tp-to|0)}XS(A,32,S,oe,H^8192)}else Wu=(Y&32|0)!=0,oe=Nu+3|0,XS(A,32,S,oe,H&-65537),F2(A,sd,Nu),F2(A,_!=_|!1?Wu?5686:5690:Wu?5678:5682,3),XS(A,32,S,oe,H^8192);while(!1);return T=hl,((oe|0)<(S|0)?S:oe)|0}function Rle(A){A=+A;var _=0;return y[v>>3]=A,_=o[v>>2]|0,Ue=o[v+4>>2]|0,_|0}function nte(A,_){return A=+A,_=_|0,+ +ao(A,_)}function ao(A,_){A=+A,_=_|0;var S=0,F=0,H=0;switch(y[v>>3]=A,S=o[v>>2]|0,F=o[v+4>>2]|0,H=ste(S|0,F|0,52)|0,H&2047){case 0:{A!=0?(A=+ao(A*18446744073709552e3,_),S=(o[_>>2]|0)+-64|0):S=0,o[_>>2]=S;break}case 2047:break;default:o[_>>2]=(H&2047)+-1022,o[v>>2]=S,o[v+4>>2]=F&-2146435073|1071644672,A=+y[v>>3]}return+A}function JS(A,_,S){A=A|0,_=_|0,S=S|0;do if(A){if(_>>>0<128){s[A>>0]=_,A=1;break}if(!(o[o[(ite()|0)+188>>2]>>2]|0))if((_&-128|0)==57216){s[A>>0]=_,A=1;break}else{o[(pV()|0)>>2]=84,A=-1;break}if(_>>>0<2048){s[A>>0]=_>>>6|192,s[A+1>>0]=_&63|128,A=2;break}if(_>>>0<55296|(_&-8192|0)==57344){s[A>>0]=_>>>12|224,s[A+1>>0]=_>>>6&63|128,s[A+2>>0]=_&63|128,A=3;break}if((_+-65536|0)>>>0<1048576){s[A>>0]=_>>>18|240,s[A+1>>0]=_>>>12&63|128,s[A+2>>0]=_>>>6&63|128,s[A+3>>0]=_&63|128,A=4;break}else{o[(pV()|0)>>2]=84,A=-1;break}}else A=1;while(!1);return A|0}function ite(){return EN()|0}function rM(){return EN()|0}function Px(A,_){A=A|0,_=_|0;var S=0,F=0;for(F=0;;){if((g[5712+F>>0]|0)==(A|0)){A=2;break}if(S=F+1|0,(S|0)==87){S=5800,F=87,A=5;break}else F=S}if((A|0)==2&&(F?(S=5800,A=5):S=5800),(A|0)==5)for(;;){do A=S,S=S+1|0;while(s[A>>0]|0);if(F=F+-1|0,F)A=5;else break}return Hg(S,o[_+20>>2]|0)|0}function Hg(A,_){return A=A|0,_=_|0,FKe(A,_)|0}function FKe(A,_){return A=A|0,_=_|0,_?_=pxe(o[_>>2]|0,o[_+4>>2]|0,A)|0:_=0,(_|0?_:A)|0}function pxe(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0;cn=(o[A>>2]|0)+1794895138|0,Y=DG(o[A+8>>2]|0,cn)|0,F=DG(o[A+12>>2]|0,cn)|0,H=DG(o[A+16>>2]|0,cn)|0;e:do if(Y>>>0<_>>>2>>>0&&(Ut=_-(Y<<2)|0,F>>>0>>0&H>>>0>>0)&&!((H|F)&3|0)){for(Ut=F>>>2,At=H>>>2,Ct=0;;){if(Se=Y>>>1,Ye=Ct+Se|0,oe=Ye<<1,H=oe+Ut|0,F=DG(o[A+(H<<2)>>2]|0,cn)|0,H=DG(o[A+(H+1<<2)>>2]|0,cn)|0,!(H>>>0<_>>>0&F>>>0<(_-H|0)>>>0)){F=0;break e}if(s[A+(H+F)>>0]|0){F=0;break e}if(F=Wx(S,A+H|0)|0,!F)break;if(F=(F|0)<0,(Y|0)==1){F=0;break e}else Ct=F?Ct:Ye,Y=F?Se:Y-Se|0}F=oe+At|0,H=DG(o[A+(F<<2)>>2]|0,cn)|0,F=DG(o[A+(F+1<<2)>>2]|0,cn)|0,F>>>0<_>>>0&H>>>0<(_-F|0)>>>0?F=s[A+(F+H)>>0]|0?0:A+F|0:F=0}else F=0;while(!1);return F|0}function DG(A,_){A=A|0,_=_|0;var S=0;return S=khe(A|0)|0,(_|0?S:A)|0}function Dle(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0,Se=0;F=S+16|0,H=o[F>>2]|0,H?Y=5:US(S)|0?F=0:(H=o[F>>2]|0,Y=5);e:do if((Y|0)==5){if(Se=S+20|0,oe=o[Se>>2]|0,F=oe,(H-oe|0)>>>0<_>>>0){F=eP[o[S+36>>2]&7](S,A,_)|0;break}t:do if((s[S+75>>0]|0)>-1){for(oe=_;;){if(!oe){Y=0,H=A;break t}if(H=oe+-1|0,(s[A+H>>0]|0)==10)break;oe=H}if(F=eP[o[S+36>>2]&7](S,A,oe)|0,F>>>0>>0)break e;Y=oe,H=A+oe|0,_=_-oe|0,F=o[Se>>2]|0}else Y=0,H=A;while(!1);ep(F|0,H|0,_|0)|0,o[Se>>2]=(o[Se>>2]|0)+_,F=Y+_|0}while(!1);return F|0}function US(A){A=A|0;var _=0,S=0;return _=A+74|0,S=s[_>>0]|0,s[_>>0]=S+255|S,_=o[A>>2]|0,_&8?(o[A>>2]=_|32,A=-1):(o[A+8>>2]=0,o[A+4>>2]=0,S=o[A+44>>2]|0,o[A+28>>2]=S,o[A+20>>2]=S,o[A+16>>2]=S+(o[A+48>>2]|0),A=0),A|0}function hA(A,_){A=we(A),_=we(_);var S=0,F=0;S=nM(A)|0;do if((S&2147483647)>>>0<=2139095040){if(F=nM(_)|0,(F&2147483647)>>>0<=2139095040)if((F^S|0)<0){A=(S|0)<0?_:A;break}else{A=A<_?_:A;break}}else A=_;while(!1);return we(A)}function nM(A){return A=we(A),m[v>>2]=A,o[v>>2]|0|0}function KS(A,_){A=we(A),_=we(_);var S=0,F=0;S=a4(A)|0;do if((S&2147483647)>>>0<=2139095040){if(F=a4(_)|0,(F&2147483647)>>>0<=2139095040)if((F^S|0)<0){A=(S|0)<0?A:_;break}else{A=A<_?A:_;break}}else A=_;while(!1);return we(A)}function a4(A){return A=we(A),m[v>>2]=A,o[v>>2]|0|0}function c4(A,_){A=we(A),_=we(_);var S=0,F=0,H=0,Y=0,oe=0,Se=0,Ye=0,Ct=0;Y=(m[v>>2]=A,o[v>>2]|0),Se=(m[v>>2]=_,o[v>>2]|0),S=Y>>>23&255,oe=Se>>>23&255,Ye=Y&-2147483648,H=Se<<1;e:do if(H|0&&!((S|0)==255|((iM(_)|0)&2147483647)>>>0>2139095040)){if(F=Y<<1,F>>>0<=H>>>0)return _=we(A*we(0)),we((F|0)==(H|0)?_:A);if(S)F=Y&8388607|8388608;else{if(S=Y<<9,(S|0)>-1){F=S,S=0;do S=S+-1|0,F=F<<1;while((F|0)>-1)}else S=0;F=Y<<1-S}if(oe)Se=Se&8388607|8388608;else{if(Y=Se<<9,(Y|0)>-1){H=0;do H=H+-1|0,Y=Y<<1;while((Y|0)>-1)}else H=0;oe=H,Se=Se<<1-H}H=F-Se|0,Y=(H|0)>-1;t:do if((S|0)>(oe|0)){for(;;){if(Y)if(H)F=H;else break;if(F=F<<1,S=S+-1|0,H=F-Se|0,Y=(H|0)>-1,(S|0)<=(oe|0))break t}_=we(A*we(0));break e}while(!1);if(Y)if(H)F=H;else{_=we(A*we(0));break}if(F>>>0<8388608)do F=F<<1,S=S+-1|0;while(F>>>0<8388608);(S|0)>0?S=F+-8388608|S<<23:S=F>>>(1-S|0),_=(o[v>>2]=S|Ye,we(m[v>>2]))}else Ct=3;while(!1);return(Ct|0)==3&&(_=we(A*_),_=we(_/_)),we(_)}function iM(A){return A=we(A),m[v>>2]=A,o[v>>2]|0|0}function xle(A,_){return A=A|0,_=_|0,DKe(o[582]|0,A,_)|0}function DI(A){A=A|0,Eo()}function l4(A){A=A|0}function fxe(A,_){return A=A|0,_=_|0,0}function sM(A){return A=A|0,(BN(A+4|0)|0)==-1?(CV[o[(o[A>>2]|0)+8>>2]&127](A),A=1):A=0,A|0}function BN(A){A=A|0;var _=0;return _=o[A>>2]|0,o[A>>2]=_+-1,_+-1|0}function oM(A){A=A|0,sM(A)|0&&kle(A)}function kle(A){A=A|0;var _=0;_=A+8|0,o[_>>2]|0&&(BN(_)|0)!=-1||CV[o[(o[A>>2]|0)+16>>2]&127](A)}function ku(A){A=A|0;var _=0;for(_=A|0?A:1;A=qee(_)|0,!(A|0);){if(A=Ixe()|0,!A){A=0;break}Df[A&0]()}return A|0}function Gle(A){return A=A|0,ku(A)|0}function La(A){A=A|0,$ee(A)}function Rhe(A){A=A|0,(s[A+11>>0]|0)<0&&La(o[A>>2]|0)}function Ixe(){var A=0;return A=o[2923]|0,o[2923]=A+0,A|0}function Cxe(){}function nT(A,_,S,F){return A=A|0,_=_|0,S=S|0,F=F|0,F=_-F-(S>>>0>A>>>0|0)>>>0,Ue=F,A-S>>>0|0|0}function kZ(A,_,S,F){return A=A|0,_=_|0,S=S|0,F=F|0,S=A+S>>>0,Ue=_+F+(S>>>0>>0|0)>>>0,S|0|0}function fV(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0,oe=0;if(Y=A+S|0,_=_&255,(S|0)>=67){for(;A&3;)s[A>>0]=_,A=A+1|0;for(F=Y&-4|0,H=F-64|0,oe=_|_<<8|_<<16|_<<24;(A|0)<=(H|0);)o[A>>2]=oe,o[A+4>>2]=oe,o[A+8>>2]=oe,o[A+12>>2]=oe,o[A+16>>2]=oe,o[A+20>>2]=oe,o[A+24>>2]=oe,o[A+28>>2]=oe,o[A+32>>2]=oe,o[A+36>>2]=oe,o[A+40>>2]=oe,o[A+44>>2]=oe,o[A+48>>2]=oe,o[A+52>>2]=oe,o[A+56>>2]=oe,o[A+60>>2]=oe,A=A+64|0;for(;(A|0)<(F|0);)o[A>>2]=oe,A=A+4|0}for(;(A|0)<(Y|0);)s[A>>0]=_,A=A+1|0;return Y-S|0}function mxe(A,_,S){return A=A|0,_=_|0,S=S|0,(S|0)<32?(Ue=_<>>32-S,A<>>S,A>>>S|(_&(1<>>S-32|0)}function ep(A,_,S){A=A|0,_=_|0,S=S|0;var F=0,H=0,Y=0;if((S|0)>=8192)return Gl(A|0,_|0,S|0)|0;if(Y=A|0,H=A+S|0,(A&3)==(_&3)){for(;A&3;){if(!S)return Y|0;s[A>>0]=s[_>>0]|0,A=A+1|0,_=_+1|0,S=S-1|0}for(S=H&-4|0,F=S-64|0;(A|0)<=(F|0);)o[A>>2]=o[_>>2],o[A+4>>2]=o[_+4>>2],o[A+8>>2]=o[_+8>>2],o[A+12>>2]=o[_+12>>2],o[A+16>>2]=o[_+16>>2],o[A+20>>2]=o[_+20>>2],o[A+24>>2]=o[_+24>>2],o[A+28>>2]=o[_+28>>2],o[A+32>>2]=o[_+32>>2],o[A+36>>2]=o[_+36>>2],o[A+40>>2]=o[_+40>>2],o[A+44>>2]=o[_+44>>2],o[A+48>>2]=o[_+48>>2],o[A+52>>2]=o[_+52>>2],o[A+56>>2]=o[_+56>>2],o[A+60>>2]=o[_+60>>2],A=A+64|0,_=_+64|0;for(;(A|0)<(S|0);)o[A>>2]=o[_>>2],A=A+4|0,_=_+4|0}else for(S=H-4|0;(A|0)<(S|0);)s[A>>0]=s[_>>0]|0,s[A+1>>0]=s[_+1>>0]|0,s[A+2>>0]=s[_+2>>0]|0,s[A+3>>0]=s[_+3>>0]|0,A=A+4|0,_=_+4|0;for(;(A|0)<(H|0);)s[A>>0]=s[_>>0]|0,A=A+1|0,_=_+1|0;return Y|0}function Dhe(A){A=A|0;var _=0;return _=s[X+(A&255)>>0]|0,(_|0)<8?_|0:(_=s[X+(A>>8&255)>>0]|0,(_|0)<8?_+8|0:(_=s[X+(A>>16&255)>>0]|0,(_|0)<8?_+16|0:(s[X+(A>>>24)>>0]|0)+24|0))}function xhe(A,_,S,F,H){A=A|0,_=_|0,S=S|0,F=F|0,H=H|0;var Y=0,oe=0,Se=0,Ye=0,Ct=0,At=0,Ut=0,cn=0,Is=0,ji=0;if(At=A,Ye=_,Ct=Ye,oe=S,cn=F,Se=cn,!Ct)return Y=(H|0)!=0,Se?Y?(o[H>>2]=A|0,o[H+4>>2]=_&0,cn=0,H=0,Ue=cn,H|0):(cn=0,H=0,Ue=cn,H|0):(Y&&(o[H>>2]=(At>>>0)%(oe>>>0),o[H+4>>2]=0),cn=0,H=(At>>>0)/(oe>>>0)>>>0,Ue=cn,H|0);Y=(Se|0)==0;do if(oe){if(!Y){if(Y=(Gn(Se|0)|0)-(Gn(Ct|0)|0)|0,Y>>>0<=31){Ut=Y+1|0,Se=31-Y|0,_=Y-31>>31,oe=Ut,A=At>>>(Ut>>>0)&_|Ct<>>(Ut>>>0)&_,Y=0,Se=At<>2]=A|0,o[H+4>>2]=Ye|_&0,cn=0,H=0,Ue=cn,H|0):(cn=0,H=0,Ue=cn,H|0)}if(Y=oe-1|0,Y&oe|0){Se=(Gn(oe|0)|0)+33-(Gn(Ct|0)|0)|0,ji=64-Se|0,Ut=32-Se|0,Ye=Ut>>31,Is=Se-32|0,_=Is>>31,oe=Se,A=Ut-1>>31&Ct>>>(Is>>>0)|(Ct<>>(Se>>>0))&_,_=_&Ct>>>(Se>>>0),Y=At<>>(Is>>>0))&Ye|At<>31;break}return H|0&&(o[H>>2]=Y&At,o[H+4>>2]=0),(oe|0)==1?(Is=Ye|_&0,ji=A|0|0,Ue=Is,ji|0):(ji=Dhe(oe|0)|0,Is=Ct>>>(ji>>>0)|0,ji=Ct<<32-ji|At>>>(ji>>>0)|0,Ue=Is,ji|0)}else{if(Y)return H|0&&(o[H>>2]=(Ct>>>0)%(oe>>>0),o[H+4>>2]=0),Is=0,ji=(Ct>>>0)/(oe>>>0)>>>0,Ue=Is,ji|0;if(!At)return H|0&&(o[H>>2]=0,o[H+4>>2]=(Ct>>>0)%(Se>>>0)),Is=0,ji=(Ct>>>0)/(Se>>>0)>>>0,Ue=Is,ji|0;if(Y=Se-1|0,!(Y&Se))return H|0&&(o[H>>2]=A|0,o[H+4>>2]=Y&Ct|_&0),Is=0,ji=Ct>>>((Dhe(Se|0)|0)>>>0),Ue=Is,ji|0;if(Y=(Gn(Se|0)|0)-(Gn(Ct|0)|0)|0,Y>>>0<=30){_=Y+1|0,Se=31-Y|0,oe=_,A=Ct<>>(_>>>0),_=Ct>>>(_>>>0),Y=0,Se=At<>2]=A|0,o[H+4>>2]=Ye|_&0,Is=0,ji=0,Ue=Is,ji|0):(Is=0,ji=0,Ue=Is,ji|0)}while(!1);if(!oe)Ct=Se,Ye=0,Se=0;else{Ut=S|0|0,At=cn|F&0,Ct=kZ(Ut|0,At|0,-1,-1)|0,S=Ue,Ye=Se,Se=0;do F=Ye,Ye=Y>>>31|Ye<<1,Y=Se|Y<<1,F=A<<1|F>>>31|0,cn=A>>>31|_<<1|0,nT(Ct|0,S|0,F|0,cn|0)|0,ji=Ue,Is=ji>>31|((ji|0)<0?-1:0)<<1,Se=Is&1,A=nT(F|0,cn|0,Is&Ut|0,(((ji|0)<0?-1:0)>>31|((ji|0)<0?-1:0)<<1)&At|0)|0,_=Ue,oe=oe-1|0;while(oe|0);Ct=Ye,Ye=0}return oe=0,H|0&&(o[H>>2]=A,o[H+4>>2]=_),Is=(Y|0)>>>31|(Ct|oe)<<1|(oe<<1|Y>>>31)&0|Ye,ji=(Y<<1|0)&-2|Se,Ue=Is,ji|0}function Fle(A,_,S,F){return A=A|0,_=_|0,S=S|0,F=F|0,xhe(A,_,S,F,0)|0}function IV(A){A=A|0;var _=0,S=0;return S=A+15&-16|0,_=o[B>>2]|0,A=_+S|0,(S|0)>0&(A|0)<(_|0)|(A|0)<0?(lr()|0,us(12),-1):(o[B>>2]=A,(A|0)>(Qs()|0)&&!(xa()|0)?(o[B>>2]=_,us(12),-1):_|0)}function G6(A,_,S){A=A|0,_=_|0,S=S|0;var F=0;if((_|0)<(A|0)&(A|0)<(_+S|0)){for(F=A,_=_+S|0,A=A+S|0;(S|0)>0;)A=A-1|0,_=_-1|0,S=S-1|0,s[A>>0]=s[_>>0]|0;A=F}else ep(A,_,S)|0;return A|0}function Zle(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0;var H=0,Y=0;return Y=T,T=T+16|0,H=Y|0,xhe(A,_,S,F,H)|0,T=Y,Ue=o[H+4>>2]|0,o[H>>2]|0|0}function khe(A){return A=A|0,(A&255)<<24|(A>>8&255)<<16|(A>>16&255)<<8|A>>>24|0}function hxe(A,_,S,F,H,Y){A=A|0,_=_|0,S=S|0,F=F|0,H=H|0,Y=Y|0,lte[A&1](_|0,S|0,F|0,H|0,Y|0)}function _xe(A,_,S){A=A|0,_=_|0,S=we(S),g4[A&1](_|0,we(S))}function yxe(A,_,S){A=A|0,_=_|0,S=+S,Lhe[A&31](_|0,+S)}function F6(A,_,S,F){return A=A|0,_=_|0,S=we(S),F=we(F),we(Ple[A&0](_|0,we(S),we(F)))}function bxe(A,_){A=A|0,_=_|0,CV[A&127](_|0)}function Exe(A,_,S){A=A|0,_=_|0,S=S|0,iT[A&31](_|0,S|0)}function Bxe(A,_){return A=A|0,_=_|0,gM[A&31](_|0)|0}function vxe(A,_,S,F,H){A=A|0,_=_|0,S=+S,F=+F,H=H|0,Vhe[A&1](_|0,+S,+F,H|0)}function Sxe(A,_,S,F){A=A|0,_=_|0,S=+S,F=+F,Xxe[A&1](_|0,+S,+F)}function wxe(A,_,S,F){return A=A|0,_=_|0,S=S|0,F=F|0,eP[A&7](_|0,S|0,F|0)|0}function Txe(A,_,S,F){return A=A|0,_=_|0,S=S|0,F=F|0,+L6[A&1](_|0,S|0,F|0)}function Nxe(A,_){return A=A|0,_=_|0,+Whe[A&15](_|0)}function Rxe(A,_,S){return A=A|0,_=_|0,S=+S,c0[A&1](_|0,+S)|0}function Dxe(A,_,S){return A=A|0,_=_|0,S=S|0,kg[A&15](_|0,S|0)|0}function xxe(A,_,S,F,H,Y){A=A|0,_=_|0,S=S|0,F=+F,H=+H,Y=Y|0,$p[A&1](_|0,S|0,+F,+H,Y|0)}function kxe(A,_,S,F,H,Y,oe){A=A|0,_=_|0,S=S|0,F=F|0,H=H|0,Y=Y|0,oe=oe|0,Uc[A&1](_|0,S|0,F|0,H|0,Y|0,oe|0)}function Gxe(A,_,S){return A=A|0,_=_|0,S=S|0,+FC[A&7](_|0,S|0)}function Lle(A){return A=A|0,i_[A&7]()|0}function Fxe(A,_,S,F,H,Y){return A=A|0,_=_|0,S=S|0,F=F|0,H=H|0,Y=Y|0,Hl[A&1](_|0,S|0,F|0,H|0,Y|0)|0}function Ghe(A,_,S,F,H){A=A|0,_=_|0,S=S|0,F=F|0,H=+H,zS[A&1](_|0,S|0,F|0,+H)}function Zxe(A,_,S,F,H,Y,oe){A=A|0,_=_|0,S=S|0,F=we(F),H=H|0,Y=we(Y),oe=oe|0,lI[A&1](_|0,S|0,we(F),H|0,we(Y),oe|0)}function Lxe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,ef[A&15](_|0,S|0,F|0)}function Vxe(A){A=A|0,Df[A&0]()}function Wxe(A,_,S,F){A=A|0,_=_|0,S=S|0,F=+F,Qb[A&15](_|0,S|0,+F)}function Pxe(A,_,S){return A=A|0,_=+_,S=+S,ob[A&1](+_,+S)|0}function Oxe(A,_,S,F,H){A=A|0,_=_|0,S=S|0,F=F|0,H=H|0,mV[A&15](_|0,S|0,F|0,H|0)}function Qxe(A,_,S,F,H){A=A|0,_=_|0,S=S|0,F=F|0,H=H|0,Zi(0)}function Vle(A,_){A=A|0,_=we(_),Zi(1)}function jS(A,_){A=A|0,_=+_,Zi(2)}function Z6(A,_,S){return A=A|0,_=we(_),S=we(S),Zi(3),ys}function pu(A){A=A|0,Zi(4)}function q3(A,_){A=A|0,_=_|0,Zi(5)}function Eu(A){return A=A|0,Zi(6),0}function aM(A,_,S,F){A=A|0,_=+_,S=+S,F=F|0,Zi(7)}function Fhe(A,_,S){A=A|0,_=+_,S=+S,Zi(8)}function cM(A,_,S){return A=A|0,_=_|0,S=S|0,Zi(9),0}function lM(A,_,S){return A=A|0,_=_|0,S=S|0,Zi(10),0}function $3(A){return A=A|0,Zi(11),0}function Wle(A,_){return A=A|0,_=+_,Zi(12),0}function uM(A,_){return A=A|0,_=_|0,Zi(13),0}function Mxe(A,_,S,F,H){A=A|0,_=_|0,S=+S,F=+F,H=H|0,Zi(14)}function Zhe(A,_,S,F,H,Y){A=A|0,_=_|0,S=S|0,F=F|0,H=H|0,Y=Y|0,Zi(15)}function ote(A,_){return A=A|0,_=_|0,Zi(16),0}function ate(){return Zi(17),0}function cte(A,_,S,F,H){return A=A|0,_=_|0,S=S|0,F=F|0,H=H|0,Zi(18),0}function xG(A,_,S,F){A=A|0,_=_|0,S=S|0,F=+F,Zi(19)}function Hxe(A,_,S,F,H,Y){A=A|0,_=_|0,S=we(S),F=F|0,H=we(H),Y=Y|0,Zi(20)}function u4(A,_,S){A=A|0,_=_|0,S=S|0,Zi(21)}function Yxe(){Zi(22)}function sr(A,_,S){A=A|0,_=_|0,S=+S,Zi(23)}function Gc(A,_){return A=+A,_=+_,Zi(24),0}function Ox(A,_,S,F){A=A|0,_=_|0,S=S|0,F=F|0,Zi(25)}var lte=[Qxe,fN],g4=[Vle,y1],Lhe=[jS,e_,v_,f2,yB,vS,Ev,Sh,Ky,Fb,z_,I2,E1,B1,L0,wh,V0,yd,Bv,jS,jS,jS,jS,jS,jS,jS,jS,jS,jS,jS,jS,jS],Ple=[Z6],CV=[pu,l4,fA,oI,t0,JR,$ae,G$,gNt,ADe,dDe,TDe,NDe,CNt,bN,yle,N6,vl,TE,yv,Po,NI,NS,$,Er,Ze,Dd,Ko,Tx,IZ,Tv,_Z,E$,O0,wX,U9,V3,rme,vRe,H$,Js,Iu,JTt,FRe,q9,mce,iee,tN,gee,fme,z8,s0,WS,sDe,iNt,rT,aKe,cDe,sV,fDe,ANt,uKe,lp,pt,QDr,xNt,Ale,b6,v6,QNt,HNt,w6,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu,pu],iT=[q3,bv,nN,iN,Xw,Va,BA,_d,iI,Op,BS,pm,bB,oa,kA,lZ,ZR,NE,LR,Do,Mc,gt,V8,q$,bme,D_,yDe,Pee,q3,q3,q3,q3],gM=[Eu,whe,wE,C2,W0,CI,Qp,P0,S1,Ad,S_,SS,$_,Ah,Z,see,yee,pNt,K5,mN,Eu,Eu,Eu,Eu,Eu,Eu,Eu,Eu,Eu,Eu,Eu,Eu],Vhe=[aM,MI],Xxe=[Fhe,V5],eP=[cM,The,NKe,XNt,Q9,rce,JRe,z5],L6=[lM,TX],Whe=[$3,q_,t_,dd,VR,G,L,ee,ve,xe,$3,$3,$3,$3,$3,$3],c0=[Wle,Nme],kg=[uM,fxe,Qc,Wa,CA,T_,h8,S8,P$,M8,Gb,ZNt,uM,uM,uM,uM],$p=[Mxe,pf],Uc=[Zhe,tg],FC=[ote,Iy,nr,Xr,Kn,jae,ote,ote],i_=[ate,eo,Bh,eN,aNt,uDe,ya,axe],Hl=[cte,gf],zS=[xG,ZX],lI=[Hxe,wS],ef=[u4,wp,fp,df,rC,YCe,N_,Od,VS,lG,IN,kNt,S6,u4,u4,u4],Df=[Yxe],Qb=[sr,yx,vh,Z0,_B,$u,dC,v1,_G,SZ,JX,sr,sr,sr,sr,sr],ob=[Gc,gDe],mV=[Ox,v$,PX,tT,TZ,UX,wee,s6,SG,nle,yhe,Ox,Ox,Ox,Ox,Ox];return{_llvm_bswap_i32:khe,dynCall_idd:Pxe,dynCall_i:Lle,_i64Subtract:nT,___udivdi3:Fle,dynCall_vif:_xe,setThrew:oc,dynCall_viii:Lxe,_bitshift64Lshr:ste,_bitshift64Shl:mxe,dynCall_vi:bxe,dynCall_viiddi:xxe,dynCall_diii:Txe,dynCall_iii:Dxe,_memset:fV,_sbrk:IV,_memcpy:ep,__GLOBAL__sub_I_Yoga_cpp:bS,dynCall_vii:Exe,___uremdi3:Zle,dynCall_vid:yxe,stackAlloc:Ya,_nbind_init:G2,getTempRet0:fI,dynCall_di:Nxe,dynCall_iid:Rxe,setTempRet0:NC,_i64Add:kZ,dynCall_fiff:F6,dynCall_iiii:wxe,_emscripten_get_global_libc:dxe,dynCall_viid:Wxe,dynCall_viiid:Ghe,dynCall_viififi:Zxe,dynCall_ii:Bxe,__GLOBAL__sub_I_Binding_cc:rle,dynCall_viiii:Oxe,dynCall_iiiiii:Fxe,stackSave:lm,dynCall_viiiii:hxe,__GLOBAL__sub_I_nbind_cc:Ga,dynCall_vidd:Sxe,_free:$ee,runPostSets:Cxe,dynCall_viiiiii:kxe,establishStackSpace:ps,_memmove:G6,stackRestore:$s,_malloc:qee,__GLOBAL__sub_I_common_cc:Nee,dynCall_viddi:vxe,dynCall_dii:Gxe,dynCall_v:Vxe}}(Module.asmGlobalArg,Module.asmLibraryArg,buffer),_llvm_bswap_i32=Module._llvm_bswap_i32=asm._llvm_bswap_i32,getTempRet0=Module.getTempRet0=asm.getTempRet0,___udivdi3=Module.___udivdi3=asm.___udivdi3,setThrew=Module.setThrew=asm.setThrew,_bitshift64Lshr=Module._bitshift64Lshr=asm._bitshift64Lshr,_bitshift64Shl=Module._bitshift64Shl=asm._bitshift64Shl,_memset=Module._memset=asm._memset,_sbrk=Module._sbrk=asm._sbrk,_memcpy=Module._memcpy=asm._memcpy,stackAlloc=Module.stackAlloc=asm.stackAlloc,___uremdi3=Module.___uremdi3=asm.___uremdi3,_nbind_init=Module._nbind_init=asm._nbind_init,_i64Subtract=Module._i64Subtract=asm._i64Subtract,setTempRet0=Module.setTempRet0=asm.setTempRet0,_i64Add=Module._i64Add=asm._i64Add,_emscripten_get_global_libc=Module._emscripten_get_global_libc=asm._emscripten_get_global_libc,__GLOBAL__sub_I_Yoga_cpp=Module.__GLOBAL__sub_I_Yoga_cpp=asm.__GLOBAL__sub_I_Yoga_cpp,__GLOBAL__sub_I_Binding_cc=Module.__GLOBAL__sub_I_Binding_cc=asm.__GLOBAL__sub_I_Binding_cc,stackSave=Module.stackSave=asm.stackSave,__GLOBAL__sub_I_nbind_cc=Module.__GLOBAL__sub_I_nbind_cc=asm.__GLOBAL__sub_I_nbind_cc,_free=Module._free=asm._free,runPostSets=Module.runPostSets=asm.runPostSets,establishStackSpace=Module.establishStackSpace=asm.establishStackSpace,_memmove=Module._memmove=asm._memmove,stackRestore=Module.stackRestore=asm.stackRestore,_malloc=Module._malloc=asm._malloc,__GLOBAL__sub_I_common_cc=Module.__GLOBAL__sub_I_common_cc=asm.__GLOBAL__sub_I_common_cc,dynCall_viiiii=Module.dynCall_viiiii=asm.dynCall_viiiii,dynCall_vif=Module.dynCall_vif=asm.dynCall_vif,dynCall_vid=Module.dynCall_vid=asm.dynCall_vid,dynCall_fiff=Module.dynCall_fiff=asm.dynCall_fiff,dynCall_vi=Module.dynCall_vi=asm.dynCall_vi,dynCall_vii=Module.dynCall_vii=asm.dynCall_vii,dynCall_ii=Module.dynCall_ii=asm.dynCall_ii,dynCall_viddi=Module.dynCall_viddi=asm.dynCall_viddi,dynCall_vidd=Module.dynCall_vidd=asm.dynCall_vidd,dynCall_iiii=Module.dynCall_iiii=asm.dynCall_iiii,dynCall_diii=Module.dynCall_diii=asm.dynCall_diii,dynCall_di=Module.dynCall_di=asm.dynCall_di,dynCall_iid=Module.dynCall_iid=asm.dynCall_iid,dynCall_iii=Module.dynCall_iii=asm.dynCall_iii,dynCall_viiddi=Module.dynCall_viiddi=asm.dynCall_viiddi,dynCall_viiiiii=Module.dynCall_viiiiii=asm.dynCall_viiiiii,dynCall_dii=Module.dynCall_dii=asm.dynCall_dii,dynCall_i=Module.dynCall_i=asm.dynCall_i,dynCall_iiiiii=Module.dynCall_iiiiii=asm.dynCall_iiiiii,dynCall_viiid=Module.dynCall_viiid=asm.dynCall_viiid,dynCall_viififi=Module.dynCall_viififi=asm.dynCall_viififi,dynCall_viii=Module.dynCall_viii=asm.dynCall_viii,dynCall_v=Module.dynCall_v=asm.dynCall_v,dynCall_viid=Module.dynCall_viid=asm.dynCall_viid,dynCall_idd=Module.dynCall_idd=asm.dynCall_idd,dynCall_viiii=Module.dynCall_viiii=asm.dynCall_viiii;Runtime.stackAlloc=Module.stackAlloc,Runtime.stackSave=Module.stackSave,Runtime.stackRestore=Module.stackRestore,Runtime.establishStackSpace=Module.establishStackSpace,Runtime.setTempRet0=Module.setTempRet0,Runtime.getTempRet0=Module.getTempRet0,Module.asm=asm;function ExitStatus(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}ExitStatus.prototype=new Error,ExitStatus.prototype.constructor=ExitStatus;var initialStackTop,preloadStartTime=null,calledMain=!1;dependenciesFulfilled=function e(){Module.calledRun||run(),Module.calledRun||(dependenciesFulfilled=e)},Module.callMain=Module.callMain=function e(t){t=t||[],ensureInitRuntime();var r=t.length+1;function s(){for(var f=0;f<3;f++)a.push(0)}var a=[allocate(intArrayFromString(Module.thisProgram),"i8",ALLOC_NORMAL)];s();for(var o=0;o0||(preRun(),runDependencies>0)||Module.calledRun)return;function t(){Module.calledRun||(Module.calledRun=!0,!ABORT&&(ensureInitRuntime(),preMain(),Module.onRuntimeInitialized&&Module.onRuntimeInitialized(),Module._main&&shouldRunNow&&Module.callMain(e),postRun()))}Module.setStatus?(Module.setStatus("Running..."),setTimeout(function(){setTimeout(function(){Module.setStatus("")},1),t()},1)):t()}Module.run=Module.run=run;function exit(e,t){t&&Module.noExitRuntime||(Module.noExitRuntime||(ABORT=!0,EXITSTATUS=e,STACKTOP=initialStackTop,exitRuntime(),Module.onExit&&Module.onExit(e)),ENVIRONMENT_IS_NODE&&process.exit(e),Module.quit(e,new ExitStatus(e)))}Module.exit=Module.exit=exit;var abortDecorators=[];function abort(e){Module.onAbort&&Module.onAbort(e),e!==void 0?(Module.print(e),Module.printErr(e),e=JSON.stringify(e)):e="",ABORT=!0,EXITSTATUS=1;var t=` +If this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.`,r="abort("+e+") at "+stackTrace()+t;throw abortDecorators&&abortDecorators.forEach(function(s){r=s(r,e)}),r}if(Module.abort=Module.abort=abort,Module.preInit)for(typeof Module.preInit=="function"&&(Module.preInit=[Module.preInit]);Module.preInit.length>0;)Module.preInit.pop()();var shouldRunNow=!0;Module.noInitialRun&&(shouldRunNow=!1),run()})});var SW=z((w4c,x1n)=>{"use strict";var ano=R1n(),cno=D1n(),H7t=!1,Y7t=null;cno({},function(e,t){if(!H7t){if(H7t=!0,e)throw e;Y7t=t}});if(!H7t)throw new Error("Failed to load the yoga module - it needed to be loaded synchronously, but didn't");x1n.exports=ano(Y7t.bind,Y7t.lib)});var J7t=z((T4c,X7t)=>{"use strict";var k1n=e=>Number.isNaN(e)?!1:e>=4352&&(e<=4447||e===9001||e===9002||11904<=e&&e<=12871&&e!==12351||12880<=e&&e<=19903||19968<=e&&e<=42182||43360<=e&&e<=43388||44032<=e&&e<=55203||63744<=e&&e<=64255||65040<=e&&e<=65049||65072<=e&&e<=65131||65281<=e&&e<=65376||65504<=e&&e<=65510||110592<=e&&e<=110593||127488<=e&&e<=127569||131072<=e&&e<=262141);X7t.exports=k1n;X7t.exports.default=k1n});var F1n=z((N4c,G1n)=>{"use strict";G1n.exports=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F|\uD83D\uDC68(?:\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68\uD83C\uDFFB|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C[\uDFFB-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)\uD83C\uDFFB|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB\uDFFC])|\uD83D\uDC69(?:\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB-\uDFFD])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620)\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF6\uD83C\uDDE6|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5\uDEEB\uDEEC\uDEF4-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g}});var a1e=z((R4c,U7t)=>{"use strict";var lno=fO(),uno=J7t(),gno=F1n(),Z1n=e=>{if(typeof e!="string"||e.length===0||(e=lno(e),e.length===0))return 0;e=e.replace(gno()," ");let t=0;for(let r=0;r=127&&s<=159||s>=768&&s<=879||(s>65535&&r++,t+=uno(s)?2:1)}return t};U7t.exports=Z1n;U7t.exports.default=Z1n});var QWe=z((D4c,K7t)=>{"use strict";var Ano=a1e(),L1n=e=>{let t=0;for(let r of e.split(` +`))t=Math.max(t,Ano(r));return t};K7t.exports=L1n;K7t.exports.default=L1n});var V1n=z(MWe=>{"use strict";var dno=MWe&&MWe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(MWe,"__esModule",{value:!0});var pno=dno(QWe()),j7t={};MWe.default=e=>{if(e.length===0)return{width:0,height:0};if(j7t[e])return j7t[e];let t=pno.default(e),r=e.split(` +`).length;return j7t[e]={width:t,height:r},{width:t,height:r}}});var W1n=z(HWe=>{"use strict";var fno=HWe&&HWe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(HWe,"__esModule",{value:!0});var Wh=fno(SW()),Ino=(e,t)=>{"position"in t&&e.setPositionType(t.position==="absolute"?Wh.default.POSITION_TYPE_ABSOLUTE:Wh.default.POSITION_TYPE_RELATIVE)},Cno=(e,t)=>{"marginLeft"in t&&e.setMargin(Wh.default.EDGE_START,t.marginLeft||0),"marginRight"in t&&e.setMargin(Wh.default.EDGE_END,t.marginRight||0),"marginTop"in t&&e.setMargin(Wh.default.EDGE_TOP,t.marginTop||0),"marginBottom"in t&&e.setMargin(Wh.default.EDGE_BOTTOM,t.marginBottom||0)},mno=(e,t)=>{"paddingLeft"in t&&e.setPadding(Wh.default.EDGE_LEFT,t.paddingLeft||0),"paddingRight"in t&&e.setPadding(Wh.default.EDGE_RIGHT,t.paddingRight||0),"paddingTop"in t&&e.setPadding(Wh.default.EDGE_TOP,t.paddingTop||0),"paddingBottom"in t&&e.setPadding(Wh.default.EDGE_BOTTOM,t.paddingBottom||0)},hno=(e,t)=>{var r;"flexGrow"in t&&e.setFlexGrow((r=t.flexGrow)!==null&&r!==void 0?r:0),"flexShrink"in t&&e.setFlexShrink(typeof t.flexShrink=="number"?t.flexShrink:1),"flexDirection"in t&&(t.flexDirection==="row"&&e.setFlexDirection(Wh.default.FLEX_DIRECTION_ROW),t.flexDirection==="row-reverse"&&e.setFlexDirection(Wh.default.FLEX_DIRECTION_ROW_REVERSE),t.flexDirection==="column"&&e.setFlexDirection(Wh.default.FLEX_DIRECTION_COLUMN),t.flexDirection==="column-reverse"&&e.setFlexDirection(Wh.default.FLEX_DIRECTION_COLUMN_REVERSE)),"flexBasis"in t&&(typeof t.flexBasis=="number"?e.setFlexBasis(t.flexBasis):typeof t.flexBasis=="string"?e.setFlexBasisPercent(Number.parseInt(t.flexBasis,10)):e.setFlexBasis(NaN)),"alignItems"in t&&((t.alignItems==="stretch"||!t.alignItems)&&e.setAlignItems(Wh.default.ALIGN_STRETCH),t.alignItems==="flex-start"&&e.setAlignItems(Wh.default.ALIGN_FLEX_START),t.alignItems==="center"&&e.setAlignItems(Wh.default.ALIGN_CENTER),t.alignItems==="flex-end"&&e.setAlignItems(Wh.default.ALIGN_FLEX_END)),"alignSelf"in t&&((t.alignSelf==="auto"||!t.alignSelf)&&e.setAlignSelf(Wh.default.ALIGN_AUTO),t.alignSelf==="flex-start"&&e.setAlignSelf(Wh.default.ALIGN_FLEX_START),t.alignSelf==="center"&&e.setAlignSelf(Wh.default.ALIGN_CENTER),t.alignSelf==="flex-end"&&e.setAlignSelf(Wh.default.ALIGN_FLEX_END)),"justifyContent"in t&&((t.justifyContent==="flex-start"||!t.justifyContent)&&e.setJustifyContent(Wh.default.JUSTIFY_FLEX_START),t.justifyContent==="center"&&e.setJustifyContent(Wh.default.JUSTIFY_CENTER),t.justifyContent==="flex-end"&&e.setJustifyContent(Wh.default.JUSTIFY_FLEX_END),t.justifyContent==="space-between"&&e.setJustifyContent(Wh.default.JUSTIFY_SPACE_BETWEEN),t.justifyContent==="space-around"&&e.setJustifyContent(Wh.default.JUSTIFY_SPACE_AROUND))},_no=(e,t)=>{var r,s;"width"in t&&(typeof t.width=="number"?e.setWidth(t.width):typeof t.width=="string"?e.setWidthPercent(Number.parseInt(t.width,10)):e.setWidthAuto()),"height"in t&&(typeof t.height=="number"?e.setHeight(t.height):typeof t.height=="string"?e.setHeightPercent(Number.parseInt(t.height,10)):e.setHeightAuto()),"minWidth"in t&&(typeof t.minWidth=="string"?e.setMinWidthPercent(Number.parseInt(t.minWidth,10)):e.setMinWidth((r=t.minWidth)!==null&&r!==void 0?r:0)),"minHeight"in t&&(typeof t.minHeight=="string"?e.setMinHeightPercent(Number.parseInt(t.minHeight,10)):e.setMinHeight((s=t.minHeight)!==null&&s!==void 0?s:0))},yno=(e,t)=>{"display"in t&&e.setDisplay(t.display==="flex"?Wh.default.DISPLAY_FLEX:Wh.default.DISPLAY_NONE)},bno=(e,t)=>{if("borderStyle"in t){let r=typeof t.borderStyle=="string"?1:0;e.setBorder(Wh.default.EDGE_TOP,r),e.setBorder(Wh.default.EDGE_BOTTOM,r),e.setBorder(Wh.default.EDGE_LEFT,r),e.setBorder(Wh.default.EDGE_RIGHT,r)}};HWe.default=(e,t={})=>{Ino(e,t),Cno(e,t),mno(e,t),hno(e,t),_no(e,t),yno(e,t),bno(e,t)}});var $7t=z((G4c,O1n)=>{"use strict";var YWe=a1e(),Eno=fO(),Bno=m9e(),q7t=new Set(["\x1B","\x9B"]),vno=39,P1n=e=>`${q7t.values().next().value}[${e}m`,Sno=e=>e.split(" ").map(t=>YWe(t)),z7t=(e,t,r)=>{let s=[...t],a=!1,o=YWe(Eno(e[e.length-1]));for(let[g,p]of s.entries()){let f=YWe(p);if(o+f<=r?e[e.length-1]+=p:(e.push(p),o=0),q7t.has(p))a=!0;else if(a&&p==="m"){a=!1;continue}a||(o+=f,o===r&&g0&&e.length>1&&(e[e.length-2]+=e.pop())},wno=e=>{let t=e.split(" "),r=t.length;for(;r>0&&!(YWe(t[r-1])>0);)r--;return r===t.length?e:t.slice(0,r).join(" ")+t.slice(r).join("")},Tno=(e,t,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let s="",a="",o,g=Sno(e),p=[""];for(let[f,m]of e.split(" ").entries()){r.trim!==!1&&(p[p.length-1]=p[p.length-1].trimLeft());let y=YWe(p[p.length-1]);if(f!==0&&(y>=t&&(r.wordWrap===!1||r.trim===!1)&&(p.push(""),y=0),(y>0||r.trim===!1)&&(p[p.length-1]+=" ",y++)),r.hard&&g[f]>t){let B=t-y,v=1+Math.floor((g[f]-B-1)/t);Math.floor((g[f]-1)/t)t&&y>0&&g[f]>0){if(r.wordWrap===!1&&yt&&r.wordWrap===!1){z7t(p,m,t);continue}p[p.length-1]+=m}r.trim!==!1&&(p=p.map(wno)),s=p.join(` +`);for(let[f,m]of[...s].entries()){if(a+=m,q7t.has(m)){let B=parseFloat(/\d[^m]*/.exec(s.slice(f,f+4)));o=B===vno?null:B}let y=Bno.codes.get(Number(o));o&&y&&(s[f+1]===` +`?a+=P1n(y):m===` +`&&(a+=P1n(o)))}return a};O1n.exports=(e,t,r)=>String(e).normalize().replace(/\r\n/g,` `).split(` -`).map(s=>yno(s,t,r)).join(` -`)});var V1n=z((h4c,L1n)=>{"use strict";var Z1n="[\uD800-\uDBFF][\uDC00-\uDFFF]",bno=e=>e&&e.exact?new RegExp(`^${Z1n}$`):new RegExp(Z1n,"g");L1n.exports=bno});var Ect=z((_4c,M1n)=>{"use strict";var Eno=Y7t(),Bno=V1n(),W1n=I9e(),O1n=["\x1B","\x9B"],bct=e=>`${O1n[0]}[${e}m`,P1n=(e,t,r)=>{let s=[];e=[...e];for(let a of e){let o=a;a.match(";")&&(a=a.split(";")[0][0]+"0");let g=W1n.codes.get(parseInt(a,10));if(g){let p=e.indexOf(g.toString());p>=0?e.splice(p,1):s.push(bct(t?g:o))}else if(t){s.push(bct(0));break}else s.push(bct(o))}if(t&&(s=s.filter((a,o)=>s.indexOf(a)===o),r!==void 0)){let a=bct(W1n.codes.get(parseInt(r,10)));s=s.reduce((o,g)=>g===a?[g,...o]:[...o,g],[])}return s.join("")};M1n.exports=(e,t,r)=>{let s=[...e.normalize()],a=[];r=typeof r=="number"?r:s.length;let o=!1,g,p=0,f="";for(let[m,y]of s.entries()){let B=!1;if(O1n.includes(y)){let v=/\d[^m]*/.exec(e.slice(m,m+18));g=v&&v.length>0?v[0]:void 0,pt&&p<=r)f+=y;else if(p===t&&!o&&g!==void 0)f=P1n(a);else if(p>=r){f+=P1n(a,!0,g);break}}return f}});var z7t=z((y4c,Q1n)=>{"use strict";var qne=Ect(),vno=s1e();function Bct(e,t,r){if(e.charAt(t)===" ")return t;for(let s=1;s<=3;s++)if(r){if(e.charAt(t+s)===" ")return t+s}else if(e.charAt(t-s)===" ")return t-s;return t}Q1n.exports=(e,t,r)=>{r={position:"end",preferTruncationOnSpace:!1,...r};let{position:s,space:a,preferTruncationOnSpace:o}=r,g="\u2026",p=1;if(typeof e!="string")throw new TypeError(`Expected \`input\` to be a string, got ${typeof e}`);if(typeof t!="number")throw new TypeError(`Expected \`columns\` to be a number, got ${typeof t}`);if(t<1)return"";if(t===1)return g;let f=vno(e);if(f<=t)return e;if(s==="start"){if(o){let m=Bct(e,f-t+1,!0);return g+qne(e,m,f).trim()}return a===!0&&(g+=" ",p=2),g+qne(e,f-t+p,f)}if(s==="middle"){a===!0&&(g=" "+g+" ",p=3);let m=Math.floor(t/2);if(o){let y=Bct(e,m),B=Bct(e,f-(t-m)+1,!0);return qne(e,0,y)+g+qne(e,B,f).trim()}return qne(e,0,m)+g+qne(e,f-(t-m)+p,f)}if(s==="end"){if(o){let m=Bct(e,t-1);return qne(e,0,m)+g}return a===!0&&(g=" "+g,p=2),qne(e,0,t-p)+g}throw new Error(`Expected \`options.position\` to be either \`start\`, \`middle\` or \`end\`, got ${s}`)}});var $7t=z(YWe=>{"use strict";var Y1n=YWe&&YWe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(YWe,"__esModule",{value:!0});var Sno=Y1n(j7t()),wno=Y1n(z7t()),q7t={};YWe.default=(e,t,r)=>{let s=e+String(t)+String(r);if(q7t[s])return q7t[s];let a=e;if(r==="wrap"&&(a=Sno.default(e,t,{trim:!1,hard:!0})),r.startsWith("truncate")){let o="end";r==="truncate-middle"&&(o="middle"),r==="truncate-start"&&(o="start"),a=wno.default(e,t,{position:o})}return q7t[s]=a,a}});var tjt=z(ejt=>{"use strict";Object.defineProperty(ejt,"__esModule",{value:!0});var H1n=e=>{let t="";if(e.childNodes.length>0)for(let r of e.childNodes){let s="";r.nodeName==="#text"?s=r.nodeValue:((r.nodeName==="ink-text"||r.nodeName==="ink-virtual-text")&&(s=H1n(r)),s.length>0&&typeof r.internal_transform=="function"&&(s=r.internal_transform(s))),t+=s}return t};ejt.default=H1n});var rjt=z(e1=>{"use strict";var HWe=e1&&e1.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e1,"__esModule",{value:!0});e1.setTextNodeValue=e1.createTextNode=e1.setStyle=e1.setAttribute=e1.removeChildNode=e1.insertBeforeNode=e1.appendChildNode=e1.createNode=e1.TEXT_NAME=void 0;var Tno=HWe(vW()),X1n=HWe(x1n()),Nno=HWe(k1n()),Rno=HWe($7t()),Dno=HWe(tjt());e1.TEXT_NAME="#text";e1.createNode=e=>{var t;let r={nodeName:e,style:{},attributes:{},childNodes:[],parentNode:null,yogaNode:e==="ink-virtual-text"?void 0:Tno.default.Node.create()};return e==="ink-text"&&((t=r.yogaNode)===null||t===void 0||t.setMeasureFunc(xno.bind(null,r))),r};e1.appendChildNode=(e,t)=>{var r;t.parentNode&&e1.removeChildNode(t.parentNode,t),t.parentNode=e,e.childNodes.push(t),t.yogaNode&&((r=e.yogaNode)===null||r===void 0||r.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&vct(e)};e1.insertBeforeNode=(e,t,r)=>{var s,a;t.parentNode&&e1.removeChildNode(t.parentNode,t),t.parentNode=e;let o=e.childNodes.indexOf(r);if(o>=0){e.childNodes.splice(o,0,t),t.yogaNode&&((s=e.yogaNode)===null||s===void 0||s.insertChild(t.yogaNode,o));return}e.childNodes.push(t),t.yogaNode&&((a=e.yogaNode)===null||a===void 0||a.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&vct(e)};e1.removeChildNode=(e,t)=>{var r,s;t.yogaNode&&((s=(r=t.parentNode)===null||r===void 0?void 0:r.yogaNode)===null||s===void 0||s.removeChild(t.yogaNode)),t.parentNode=null;let a=e.childNodes.indexOf(t);a>=0&&e.childNodes.splice(a,1),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&vct(e)};e1.setAttribute=(e,t,r)=>{e.attributes[t]=r};e1.setStyle=(e,t)=>{e.style=t,e.yogaNode&&Nno.default(e.yogaNode,t)};e1.createTextNode=e=>{let t={nodeName:"#text",nodeValue:e,yogaNode:void 0,parentNode:null,style:{}};return e1.setTextNodeValue(t,e),t};var xno=function(e,t){var r,s;let a=e.nodeName==="#text"?e.nodeValue:Dno.default(e),o=X1n.default(a);if(o.width<=t||o.width>=1&&t>0&&t<1)return o;let g=(s=(r=e.style)===null||r===void 0?void 0:r.textWrap)!==null&&s!==void 0?s:"wrap",p=Rno.default(a,t,g);return X1n.default(p)},J1n=e=>{var t;if(!(!e||!e.parentNode))return(t=e.yogaNode)!==null&&t!==void 0?t:J1n(e.parentNode)},vct=e=>{let t=J1n(e);t?.markDirty()};e1.setTextNodeValue=(e,t)=>{typeof t!="string"&&(t=String(t)),e.nodeValue=t,vct(e)}});var q1n=z(XWe=>{"use strict";var z1n=XWe&&XWe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(XWe,"__esModule",{value:!0});var U1n=VWe(),kno=z1n(m1n()),K1n=z1n(vW()),hk=rjt(),j1n=e=>{e?.unsetMeasureFunc(),e?.freeRecursive()};XWe.default=kno.default({schedulePassiveEffects:U1n.unstable_scheduleCallback,cancelPassiveEffects:U1n.unstable_cancelCallback,now:Date.now,getRootHostContext:()=>({isInsideText:!1}),prepareForCommit:()=>null,preparePortalMount:()=>null,clearContainer:()=>!1,shouldDeprioritizeSubtree:()=>!1,resetAfterCommit:e=>{if(e.isStaticDirty){e.isStaticDirty=!1,typeof e.onImmediateRender=="function"&&e.onImmediateRender();return}typeof e.onRender=="function"&&e.onRender()},getChildHostContext:(e,t)=>{let r=e.isInsideText,s=t==="ink-text"||t==="ink-virtual-text";return r===s?e:{isInsideText:s}},shouldSetTextContent:()=>!1,createInstance:(e,t,r,s)=>{if(s.isInsideText&&e==="ink-box")throw new Error(" can\u2019t be nested inside component");let a=e==="ink-text"&&s.isInsideText?"ink-virtual-text":e,o=hk.createNode(a);for(let[g,p]of Object.entries(t))g!=="children"&&(g==="style"?hk.setStyle(o,p):g==="internal_transform"?o.internal_transform=p:g==="internal_static"?o.internal_static=!0:hk.setAttribute(o,g,p));return o},createTextInstance:(e,t,r)=>{if(!r.isInsideText)throw new Error(`Text string "${e}" must be rendered inside component`);return hk.createTextNode(e)},resetTextContent:()=>{},hideTextInstance:e=>{hk.setTextNodeValue(e,"")},unhideTextInstance:(e,t)=>{hk.setTextNodeValue(e,t)},getPublicInstance:e=>e,hideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(K1n.default.DISPLAY_NONE)},unhideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(K1n.default.DISPLAY_FLEX)},appendInitialChild:hk.appendChildNode,appendChild:hk.appendChildNode,insertBefore:hk.insertBeforeNode,finalizeInitialChildren:(e,t,r,s)=>(e.internal_static&&(s.isStaticDirty=!0,s.staticNode=e),!1),supportsMutation:!0,appendChildToContainer:hk.appendChildNode,insertInContainerBefore:hk.insertBeforeNode,removeChildFromContainer:(e,t)=>{hk.removeChildNode(e,t),j1n(t.yogaNode)},prepareUpdate:(e,t,r,s,a)=>{e.internal_static&&(a.isStaticDirty=!0);let o={},g=Object.keys(s);for(let p of g)if(s[p]!==r[p]){if(p==="style"&&typeof s.style=="object"&&typeof r.style=="object"){let m=s.style,y=r.style,B=Object.keys(m);for(let v of B){if(v==="borderStyle"||v==="borderColor"){if(typeof o.style!="object"){let G={};o.style=G}o.style.borderStyle=m.borderStyle,o.style.borderColor=m.borderColor}if(m[v]!==y[v]){if(typeof o.style!="object"){let G={};o.style=G}o.style[v]=m[v]}}continue}o[p]=s[p]}return o},commitUpdate:(e,t)=>{for(let[r,s]of Object.entries(t))r!=="children"&&(r==="style"?hk.setStyle(e,s):r==="internal_transform"?e.internal_transform=s:r==="internal_static"?e.internal_static=!0:hk.setAttribute(e,r,s))},commitTextUpdate:(e,t,r)=>{hk.setTextNodeValue(e,r)},removeChild:(e,t)=>{hk.removeChildNode(e,t),j1n(t.yogaNode)}})});var njt=z((S4c,$1n)=>{"use strict";$1n.exports=(e,t=1,r)=>{if(r={indent:" ",includeEmptyLines:!1,...r},typeof e!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof e}\``);if(typeof t!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof t}\``);if(typeof r.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``);if(t===0)return e;let s=r.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return e.replace(s,r.indent.repeat(t))}});var e2n=z(JWe=>{"use strict";var Gno=JWe&&JWe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(JWe,"__esModule",{value:!0});var Sct=Gno(vW());JWe.default=e=>e.getComputedWidth()-e.getComputedPadding(Sct.default.EDGE_LEFT)-e.getComputedPadding(Sct.default.EDGE_RIGHT)-e.getComputedBorder(Sct.default.EDGE_LEFT)-e.getComputedBorder(Sct.default.EDGE_RIGHT)});var t2n=z((T4c,Fno)=>{Fno.exports={single:{topLeft:"\u250C",topRight:"\u2510",bottomRight:"\u2518",bottomLeft:"\u2514",vertical:"\u2502",horizontal:"\u2500"},double:{topLeft:"\u2554",topRight:"\u2557",bottomRight:"\u255D",bottomLeft:"\u255A",vertical:"\u2551",horizontal:"\u2550"},round:{topLeft:"\u256D",topRight:"\u256E",bottomRight:"\u256F",bottomLeft:"\u2570",vertical:"\u2502",horizontal:"\u2500"},bold:{topLeft:"\u250F",topRight:"\u2513",bottomRight:"\u251B",bottomLeft:"\u2517",vertical:"\u2503",horizontal:"\u2501"},singleDouble:{topLeft:"\u2553",topRight:"\u2556",bottomRight:"\u255C",bottomLeft:"\u2559",vertical:"\u2551",horizontal:"\u2500"},doubleSingle:{topLeft:"\u2552",topRight:"\u2555",bottomRight:"\u255B",bottomLeft:"\u2558",vertical:"\u2502",horizontal:"\u2550"},classic:{topLeft:"+",topRight:"+",bottomRight:"+",bottomLeft:"+",vertical:"|",horizontal:"-"}}});var sjt=z((N4c,ijt)=>{"use strict";var r2n=t2n();ijt.exports=r2n;ijt.exports.default=r2n});var i2n=z((R4c,n2n)=>{"use strict";var Zno=(e,t,r)=>{let s=e.indexOf(t);if(s===-1)return e;let a=t.length,o=0,g="";do g+=e.substr(o,s-o)+t+r,o=s+a,s=e.indexOf(t,o);while(s!==-1);return g+=e.substr(o),g},Lno=(e,t,r,s)=>{let a=0,o="";do{let g=e[s-1]==="\r";o+=e.substr(a,(g?s-1:s)-a)+t+(g?`\r +`).map(s=>Tno(s,t,r)).join(` +`)});var H1n=z((F4c,M1n)=>{"use strict";var Q1n="[\uD800-\uDBFF][\uDC00-\uDFFF]",Nno=e=>e&&e.exact?new RegExp(`^${Q1n}$`):new RegExp(Q1n,"g");M1n.exports=Nno});var vct=z((Z4c,U1n)=>{"use strict";var Rno=J7t(),Dno=H1n(),Y1n=m9e(),J1n=["\x1B","\x9B"],Bct=e=>`${J1n[0]}[${e}m`,X1n=(e,t,r)=>{let s=[];e=[...e];for(let a of e){let o=a;a.match(";")&&(a=a.split(";")[0][0]+"0");let g=Y1n.codes.get(parseInt(a,10));if(g){let p=e.indexOf(g.toString());p>=0?e.splice(p,1):s.push(Bct(t?g:o))}else if(t){s.push(Bct(0));break}else s.push(Bct(o))}if(t&&(s=s.filter((a,o)=>s.indexOf(a)===o),r!==void 0)){let a=Bct(Y1n.codes.get(parseInt(r,10)));s=s.reduce((o,g)=>g===a?[g,...o]:[...o,g],[])}return s.join("")};U1n.exports=(e,t,r)=>{let s=[...e.normalize()],a=[];r=typeof r=="number"?r:s.length;let o=!1,g,p=0,f="";for(let[m,y]of s.entries()){let B=!1;if(J1n.includes(y)){let v=/\d[^m]*/.exec(e.slice(m,m+18));g=v&&v.length>0?v[0]:void 0,pt&&p<=r)f+=y;else if(p===t&&!o&&g!==void 0)f=X1n(a);else if(p>=r){f+=X1n(a,!0,g);break}}return f}});var ejt=z((L4c,K1n)=>{"use strict";var eie=vct(),xno=a1e();function Sct(e,t,r){if(e.charAt(t)===" ")return t;for(let s=1;s<=3;s++)if(r){if(e.charAt(t+s)===" ")return t+s}else if(e.charAt(t-s)===" ")return t-s;return t}K1n.exports=(e,t,r)=>{r={position:"end",preferTruncationOnSpace:!1,...r};let{position:s,space:a,preferTruncationOnSpace:o}=r,g="\u2026",p=1;if(typeof e!="string")throw new TypeError(`Expected \`input\` to be a string, got ${typeof e}`);if(typeof t!="number")throw new TypeError(`Expected \`columns\` to be a number, got ${typeof t}`);if(t<1)return"";if(t===1)return g;let f=xno(e);if(f<=t)return e;if(s==="start"){if(o){let m=Sct(e,f-t+1,!0);return g+eie(e,m,f).trim()}return a===!0&&(g+=" ",p=2),g+eie(e,f-t+p,f)}if(s==="middle"){a===!0&&(g=" "+g+" ",p=3);let m=Math.floor(t/2);if(o){let y=Sct(e,m),B=Sct(e,f-(t-m)+1,!0);return eie(e,0,y)+g+eie(e,B,f).trim()}return eie(e,0,m)+g+eie(e,f-(t-m)+p,f)}if(s==="end"){if(o){let m=Sct(e,t-1);return eie(e,0,m)+g}return a===!0&&(g=" "+g,p=2),eie(e,0,t-p)+g}throw new Error(`Expected \`options.position\` to be either \`start\`, \`middle\` or \`end\`, got ${s}`)}});var rjt=z(XWe=>{"use strict";var j1n=XWe&&XWe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(XWe,"__esModule",{value:!0});var kno=j1n($7t()),Gno=j1n(ejt()),tjt={};XWe.default=(e,t,r)=>{let s=e+String(t)+String(r);if(tjt[s])return tjt[s];let a=e;if(r==="wrap"&&(a=kno.default(e,t,{trim:!1,hard:!0})),r.startsWith("truncate")){let o="end";r==="truncate-middle"&&(o="middle"),r==="truncate-start"&&(o="start"),a=Gno.default(e,t,{position:o})}return tjt[s]=a,a}});var ijt=z(njt=>{"use strict";Object.defineProperty(njt,"__esModule",{value:!0});var z1n=e=>{let t="";if(e.childNodes.length>0)for(let r of e.childNodes){let s="";r.nodeName==="#text"?s=r.nodeValue:((r.nodeName==="ink-text"||r.nodeName==="ink-virtual-text")&&(s=z1n(r)),s.length>0&&typeof r.internal_transform=="function"&&(s=r.internal_transform(s))),t+=s}return t};njt.default=z1n});var sjt=z(r1=>{"use strict";var JWe=r1&&r1.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(r1,"__esModule",{value:!0});r1.setTextNodeValue=r1.createTextNode=r1.setStyle=r1.setAttribute=r1.removeChildNode=r1.insertBeforeNode=r1.appendChildNode=r1.createNode=r1.TEXT_NAME=void 0;var Fno=JWe(SW()),q1n=JWe(V1n()),Zno=JWe(W1n()),Lno=JWe(rjt()),Vno=JWe(ijt());r1.TEXT_NAME="#text";r1.createNode=e=>{var t;let r={nodeName:e,style:{},attributes:{},childNodes:[],parentNode:null,yogaNode:e==="ink-virtual-text"?void 0:Fno.default.Node.create()};return e==="ink-text"&&((t=r.yogaNode)===null||t===void 0||t.setMeasureFunc(Wno.bind(null,r))),r};r1.appendChildNode=(e,t)=>{var r;t.parentNode&&r1.removeChildNode(t.parentNode,t),t.parentNode=e,e.childNodes.push(t),t.yogaNode&&((r=e.yogaNode)===null||r===void 0||r.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&wct(e)};r1.insertBeforeNode=(e,t,r)=>{var s,a;t.parentNode&&r1.removeChildNode(t.parentNode,t),t.parentNode=e;let o=e.childNodes.indexOf(r);if(o>=0){e.childNodes.splice(o,0,t),t.yogaNode&&((s=e.yogaNode)===null||s===void 0||s.insertChild(t.yogaNode,o));return}e.childNodes.push(t),t.yogaNode&&((a=e.yogaNode)===null||a===void 0||a.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&wct(e)};r1.removeChildNode=(e,t)=>{var r,s;t.yogaNode&&((s=(r=t.parentNode)===null||r===void 0?void 0:r.yogaNode)===null||s===void 0||s.removeChild(t.yogaNode)),t.parentNode=null;let a=e.childNodes.indexOf(t);a>=0&&e.childNodes.splice(a,1),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&wct(e)};r1.setAttribute=(e,t,r)=>{e.attributes[t]=r};r1.setStyle=(e,t)=>{e.style=t,e.yogaNode&&Zno.default(e.yogaNode,t)};r1.createTextNode=e=>{let t={nodeName:"#text",nodeValue:e,yogaNode:void 0,parentNode:null,style:{}};return r1.setTextNodeValue(t,e),t};var Wno=function(e,t){var r,s;let a=e.nodeName==="#text"?e.nodeValue:Vno.default(e),o=q1n.default(a);if(o.width<=t||o.width>=1&&t>0&&t<1)return o;let g=(s=(r=e.style)===null||r===void 0?void 0:r.textWrap)!==null&&s!==void 0?s:"wrap",p=Lno.default(a,t,g);return q1n.default(p)},$1n=e=>{var t;if(!(!e||!e.parentNode))return(t=e.yogaNode)!==null&&t!==void 0?t:$1n(e.parentNode)},wct=e=>{let t=$1n(e);t?.markDirty()};r1.setTextNodeValue=(e,t)=>{typeof t!="string"&&(t=String(t)),e.nodeValue=t,wct(e)}});var i2n=z(UWe=>{"use strict";var n2n=UWe&&UWe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(UWe,"__esModule",{value:!0});var e2n=PWe(),Pno=n2n(B1n()),t2n=n2n(SW()),vk=sjt(),r2n=e=>{e?.unsetMeasureFunc(),e?.freeRecursive()};UWe.default=Pno.default({schedulePassiveEffects:e2n.unstable_scheduleCallback,cancelPassiveEffects:e2n.unstable_cancelCallback,now:Date.now,getRootHostContext:()=>({isInsideText:!1}),prepareForCommit:()=>null,preparePortalMount:()=>null,clearContainer:()=>!1,shouldDeprioritizeSubtree:()=>!1,resetAfterCommit:e=>{if(e.isStaticDirty){e.isStaticDirty=!1,typeof e.onImmediateRender=="function"&&e.onImmediateRender();return}typeof e.onRender=="function"&&e.onRender()},getChildHostContext:(e,t)=>{let r=e.isInsideText,s=t==="ink-text"||t==="ink-virtual-text";return r===s?e:{isInsideText:s}},shouldSetTextContent:()=>!1,createInstance:(e,t,r,s)=>{if(s.isInsideText&&e==="ink-box")throw new Error(" can\u2019t be nested inside component");let a=e==="ink-text"&&s.isInsideText?"ink-virtual-text":e,o=vk.createNode(a);for(let[g,p]of Object.entries(t))g!=="children"&&(g==="style"?vk.setStyle(o,p):g==="internal_transform"?o.internal_transform=p:g==="internal_static"?o.internal_static=!0:vk.setAttribute(o,g,p));return o},createTextInstance:(e,t,r)=>{if(!r.isInsideText)throw new Error(`Text string "${e}" must be rendered inside component`);return vk.createTextNode(e)},resetTextContent:()=>{},hideTextInstance:e=>{vk.setTextNodeValue(e,"")},unhideTextInstance:(e,t)=>{vk.setTextNodeValue(e,t)},getPublicInstance:e=>e,hideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(t2n.default.DISPLAY_NONE)},unhideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(t2n.default.DISPLAY_FLEX)},appendInitialChild:vk.appendChildNode,appendChild:vk.appendChildNode,insertBefore:vk.insertBeforeNode,finalizeInitialChildren:(e,t,r,s)=>(e.internal_static&&(s.isStaticDirty=!0,s.staticNode=e),!1),supportsMutation:!0,appendChildToContainer:vk.appendChildNode,insertInContainerBefore:vk.insertBeforeNode,removeChildFromContainer:(e,t)=>{vk.removeChildNode(e,t),r2n(t.yogaNode)},prepareUpdate:(e,t,r,s,a)=>{e.internal_static&&(a.isStaticDirty=!0);let o={},g=Object.keys(s);for(let p of g)if(s[p]!==r[p]){if(p==="style"&&typeof s.style=="object"&&typeof r.style=="object"){let m=s.style,y=r.style,B=Object.keys(m);for(let v of B){if(v==="borderStyle"||v==="borderColor"){if(typeof o.style!="object"){let k={};o.style=k}o.style.borderStyle=m.borderStyle,o.style.borderColor=m.borderColor}if(m[v]!==y[v]){if(typeof o.style!="object"){let k={};o.style=k}o.style[v]=m[v]}}continue}o[p]=s[p]}return o},commitUpdate:(e,t)=>{for(let[r,s]of Object.entries(t))r!=="children"&&(r==="style"?vk.setStyle(e,s):r==="internal_transform"?e.internal_transform=s:r==="internal_static"?e.internal_static=!0:vk.setAttribute(e,r,s))},commitTextUpdate:(e,t,r)=>{vk.setTextNodeValue(e,r)},removeChild:(e,t)=>{vk.removeChildNode(e,t),r2n(t.yogaNode)}})});var ojt=z((Q4c,s2n)=>{"use strict";s2n.exports=(e,t=1,r)=>{if(r={indent:" ",includeEmptyLines:!1,...r},typeof e!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof e}\``);if(typeof t!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof t}\``);if(typeof r.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``);if(t===0)return e;let s=r.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return e.replace(s,r.indent.repeat(t))}});var o2n=z(KWe=>{"use strict";var Ono=KWe&&KWe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(KWe,"__esModule",{value:!0});var Tct=Ono(SW());KWe.default=e=>e.getComputedWidth()-e.getComputedPadding(Tct.default.EDGE_LEFT)-e.getComputedPadding(Tct.default.EDGE_RIGHT)-e.getComputedBorder(Tct.default.EDGE_LEFT)-e.getComputedBorder(Tct.default.EDGE_RIGHT)});var a2n=z((H4c,Qno)=>{Qno.exports={single:{topLeft:"\u250C",topRight:"\u2510",bottomRight:"\u2518",bottomLeft:"\u2514",vertical:"\u2502",horizontal:"\u2500"},double:{topLeft:"\u2554",topRight:"\u2557",bottomRight:"\u255D",bottomLeft:"\u255A",vertical:"\u2551",horizontal:"\u2550"},round:{topLeft:"\u256D",topRight:"\u256E",bottomRight:"\u256F",bottomLeft:"\u2570",vertical:"\u2502",horizontal:"\u2500"},bold:{topLeft:"\u250F",topRight:"\u2513",bottomRight:"\u251B",bottomLeft:"\u2517",vertical:"\u2503",horizontal:"\u2501"},singleDouble:{topLeft:"\u2553",topRight:"\u2556",bottomRight:"\u255C",bottomLeft:"\u2559",vertical:"\u2551",horizontal:"\u2500"},doubleSingle:{topLeft:"\u2552",topRight:"\u2555",bottomRight:"\u255B",bottomLeft:"\u2558",vertical:"\u2502",horizontal:"\u2550"},classic:{topLeft:"+",topRight:"+",bottomRight:"+",bottomLeft:"+",vertical:"|",horizontal:"-"}}});var cjt=z((Y4c,ajt)=>{"use strict";var c2n=a2n();ajt.exports=c2n;ajt.exports.default=c2n});var u2n=z((X4c,l2n)=>{"use strict";var Mno=(e,t,r)=>{let s=e.indexOf(t);if(s===-1)return e;let a=t.length,o=0,g="";do g+=e.substr(o,s-o)+t+r,o=s+a,s=e.indexOf(t,o);while(s!==-1);return g+=e.substr(o),g},Hno=(e,t,r,s)=>{let a=0,o="";do{let g=e[s-1]==="\r";o+=e.substr(a,(g?s-1:s)-a)+t+(g?`\r `:` `)+r,a=s+1,s=e.indexOf(` -`,a)}while(s!==-1);return o+=e.substr(a),o};n2n.exports={stringReplaceAll:Zno,stringEncaseCRLFWithFirstIndex:Lno}});var l2n=z((D4c,c2n)=>{"use strict";var Vno=/(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,s2n=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,Wno=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,Pno=/\\(u(?:[a-f\d]{4}|{[a-f\d]{1,6}})|x[a-f\d]{2}|.)|([^\\])/gi,Ono=new Map([["n",` -`],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e","\x1B"],["a","\x07"]]);function a2n(e){let t=e[0]==="u",r=e[1]==="{";return t&&!r&&e.length===5||e[0]==="x"&&e.length===3?String.fromCharCode(parseInt(e.slice(1),16)):t&&r?String.fromCodePoint(parseInt(e.slice(2,-1),16)):Ono.get(e)||e}function Mno(e,t){let r=[],s=t.trim().split(/\s*,\s*/g),a;for(let o of s){let g=Number(o);if(!Number.isNaN(g))r.push(g);else if(a=o.match(Wno))r.push(a[2].replace(Pno,(p,f,m)=>f?a2n(f):m));else throw new Error(`Invalid Chalk template style argument: ${o} (in style '${e}')`)}return r}function Qno(e){s2n.lastIndex=0;let t=[],r;for(;(r=s2n.exec(e))!==null;){let s=r[1];if(r[2]){let a=Mno(s,r[2]);t.push([s].concat(a))}else t.push([s])}return t}function o2n(e,t){let r={};for(let a of t)for(let o of a.styles)r[o[0]]=a.inverse?null:o.slice(1);let s=e;for(let[a,o]of Object.entries(r))if(Array.isArray(o)){if(!(a in s))throw new Error(`Unknown Chalk style: ${a}`);s=o.length>0?s[a](...o):s[a]}return s}c2n.exports=(e,t)=>{let r=[],s=[],a=[];if(t.replace(Vno,(o,g,p,f,m,y)=>{if(g)a.push(a2n(g));else if(f){let B=a.join("");a=[],s.push(r.length===0?B:o2n(e,r)(B)),r.push({inverse:p,styles:Qno(f)})}else if(m){if(r.length===0)throw new Error("Found extraneous } in Chalk template literal");s.push(o2n(e,r)(a.join(""))),a=[],r.pop()}else a.push(y)}),s.push(a.join("")),r.length>0){let o=`Chalk template literal is missing ${r.length} closing bracket${r.length===1?"":"s"} (\`}\`)`;throw new Error(o)}return s.join("")}});var $ne=z((x4c,f2n)=>{"use strict";var UWe=I9e(),{stdout:ajt,stderr:cjt}=Drt(),{stringReplaceAll:Yno,stringEncaseCRLFWithFirstIndex:Hno}=i2n(),{isArray:wct}=Array,g2n=["ansi","ansi","ansi256","ansi16m"],o1e=Object.create(null),Xno=(e,t={})=>{if(t.level&&!(Number.isInteger(t.level)&&t.level>=0&&t.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let r=ajt?ajt.level:0;e.level=t.level===void 0?r:t.level},ljt=class{constructor(t){return A2n(t)}},A2n=e=>{let t={};return Xno(t,e),t.template=(...r)=>p2n(t.template,...r),Object.setPrototypeOf(t,Tct.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=()=>{throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.")},t.template.Instance=ljt,t.template};function Tct(e){return A2n(e)}for(let[e,t]of Object.entries(UWe))o1e[e]={get(){let r=Nct(this,ujt(t.open,t.close,this._styler),this._isEmpty);return Object.defineProperty(this,e,{value:r}),r}};o1e.visible={get(){let e=Nct(this,this._styler,!0);return Object.defineProperty(this,"visible",{value:e}),e}};var d2n=["rgb","hex","keyword","hsl","hsv","hwb","ansi","ansi256"];for(let e of d2n)o1e[e]={get(){let{level:t}=this;return function(...r){let s=ujt(UWe.color[g2n[t]][e](...r),UWe.color.close,this._styler);return Nct(this,s,this._isEmpty)}}};for(let e of d2n){let t="bg"+e[0].toUpperCase()+e.slice(1);o1e[t]={get(){let{level:r}=this;return function(...s){let a=ujt(UWe.bgColor[g2n[r]][e](...s),UWe.bgColor.close,this._styler);return Nct(this,a,this._isEmpty)}}}}var Jno=Object.defineProperties(()=>{},{...o1e,level:{enumerable:!0,get(){return this._generator.level},set(e){this._generator.level=e}}}),ujt=(e,t,r)=>{let s,a;return r===void 0?(s=e,a=t):(s=r.openAll+e,a=t+r.closeAll),{open:e,close:t,openAll:s,closeAll:a,parent:r}},Nct=(e,t,r)=>{let s=(...a)=>wct(a[0])&&wct(a[0].raw)?u2n(s,p2n(s,...a)):u2n(s,a.length===1?""+a[0]:a.join(" "));return Object.setPrototypeOf(s,Jno),s._generator=e,s._styler=t,s._isEmpty=r,s},u2n=(e,t)=>{if(e.level<=0||!t)return e._isEmpty?"":t;let r=e._styler;if(r===void 0)return t;let{openAll:s,closeAll:a}=r;if(t.indexOf("\x1B")!==-1)for(;r!==void 0;)t=Yno(t,r.close,r.open),r=r.parent;let o=t.indexOf(` -`);return o!==-1&&(t=Hno(t,a,s,o)),s+t+a},ojt,p2n=(e,...t)=>{let[r]=t;if(!wct(r)||!wct(r.raw))return t.join(" ");let s=t.slice(1),a=[r.raw[0]];for(let o=1;o{"use strict";var Uno=jWe&&jWe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(jWe,"__esModule",{value:!0});var KWe=Uno($ne()),Kno=/^(rgb|hsl|hsv|hwb)\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/,jno=/^(ansi|ansi256)\(\s?(\d+)\s?\)$/,Dct=(e,t)=>t==="foreground"?e:"bg"+e[0].toUpperCase()+e.slice(1);jWe.default=(e,t,r)=>{if(!t)return e;if(t in KWe.default){let a=Dct(t,r);return KWe.default[a](e)}if(t.startsWith("#")){let a=Dct("hex",r);return KWe.default[a](t)(e)}if(t.startsWith("ansi")){let a=jno.exec(t);if(!a)return e;let o=Dct(a[1],r),g=Number(a[2]);return KWe.default[o](g)(e)}if(t.startsWith("rgb")||t.startsWith("hsl")||t.startsWith("hsv")||t.startsWith("hwb")){let a=Kno.exec(t);if(!a)return e;let o=Dct(a[1],r),g=Number(a[2]),p=Number(a[3]),f=Number(a[4]);return KWe.default[o](g,p,f)(e)}return e}});var C2n=z(zWe=>{"use strict";var I2n=zWe&&zWe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(zWe,"__esModule",{value:!0});var zno=I2n(sjt()),Ajt=I2n(gjt());zWe.default=(e,t,r,s)=>{if(typeof r.style.borderStyle=="string"){let a=r.yogaNode.getComputedWidth(),o=r.yogaNode.getComputedHeight(),g=r.style.borderColor,p=zno.default[r.style.borderStyle],f=Ajt.default(p.topLeft+p.horizontal.repeat(a-2)+p.topRight,g,"foreground"),m=(Ajt.default(p.vertical,g,"foreground")+` -`).repeat(o-2),y=Ajt.default(p.bottomLeft+p.horizontal.repeat(a-2)+p.bottomRight,g,"foreground");s.write(e,t,f,{transformers:[]}),s.write(e,t+1,m,{transformers:[]}),s.write(e+a-1,t+1,m,{transformers:[]}),s.write(e,t+o-1,y,{transformers:[]})}}});var h2n=z(qWe=>{"use strict";var ede=qWe&&qWe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(qWe,"__esModule",{value:!0});var qno=ede(vW()),$no=ede(PWe()),eio=ede(njt()),tio=ede($7t()),rio=ede(e2n()),nio=ede(tjt()),iio=ede(C2n()),sio=(e,t)=>{var r;let s=(r=e.childNodes[0])===null||r===void 0?void 0:r.yogaNode;if(s){let a=s.getComputedLeft(),o=s.getComputedTop();t=` -`.repeat(o)+eio.default(t,a)}return t},m2n=(e,t,r)=>{var s;let{offsetX:a=0,offsetY:o=0,transformers:g=[],skipStaticElements:p}=r;if(p&&e.internal_static)return;let{yogaNode:f}=e;if(f){if(f.getDisplay()===qno.default.DISPLAY_NONE)return;let m=a+f.getComputedLeft(),y=o+f.getComputedTop(),B=g;if(typeof e.internal_transform=="function"&&(B=[e.internal_transform,...g]),e.nodeName==="ink-text"){let v=nio.default(e);if(v.length>0){let G=$no.default(v),T=rio.default(f);if(G>T){let O=(s=e.style.textWrap)!==null&&s!==void 0?s:"wrap";v=tio.default(v,T,O)}v=sio(e,v),t.write(m,y,v,{transformers:B})}return}if(e.nodeName==="ink-box"&&iio.default(m,y,e,t),e.nodeName==="ink-root"||e.nodeName==="ink-box")for(let v of e.childNodes)m2n(v,t,{offsetX:m,offsetY:y,transformers:B,skipStaticElements:p})}};qWe.default=m2n});var b2n=z($We=>{"use strict";var y2n=$We&&$We.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty($We,"__esModule",{value:!0});var _2n=y2n(Ect()),oio=y2n(s1e()),djt=class{constructor(t){this.writes=[];let{width:r,height:s}=t;this.width=r,this.height=s}write(t,r,s,a){let{transformers:o}=a;s&&this.writes.push({x:t,y:r,text:s,transformers:o})}get(){let t=[];for(let s=0;ss.trimRight()).join(` -`),height:t.length}}};$We.default=djt});var v2n=z(e3e=>{"use strict";var pjt=e3e&&e3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e3e,"__esModule",{value:!0});var aio=pjt(vW()),E2n=pjt(h2n()),B2n=pjt(b2n());e3e.default=(e,t)=>{var r;if(e.yogaNode.setWidth(t),e.yogaNode){e.yogaNode.calculateLayout(void 0,void 0,aio.default.DIRECTION_LTR);let s=new B2n.default({width:e.yogaNode.getComputedWidth(),height:e.yogaNode.getComputedHeight()});E2n.default(e,s,{skipStaticElements:!0});let a;!((r=e.staticNode)===null||r===void 0)&&r.yogaNode&&(a=new B2n.default({width:e.staticNode.yogaNode.getComputedWidth(),height:e.staticNode.yogaNode.getComputedHeight()}),E2n.default(e.staticNode,a,{skipStaticElements:!1}));let{output:o,height:g}=s.get();return{output:o,outputHeight:g,staticOutput:a?`${a.get().output} -`:""}}return{output:"",outputHeight:0,staticOutput:""}}});var Ijt=z((V4c,T2n)=>{"use strict";var S2n=Dt("stream"),w2n=["assert","count","countReset","debug","dir","dirxml","error","group","groupCollapsed","groupEnd","info","log","table","time","timeEnd","timeLog","trace","warn"],fjt={},cio=e=>{let t=new S2n.PassThrough,r=new S2n.PassThrough;t.write=a=>e("stdout",a),r.write=a=>e("stderr",a);let s=new console.Console(t,r);for(let a of w2n)fjt[a]=console[a],console[a]=s[a];return()=>{for(let a of w2n)console[a]=fjt[a];fjt={}}};T2n.exports=cio});var mjt=z(Cjt=>{"use strict";Object.defineProperty(Cjt,"__esModule",{value:!0});Cjt.default=new WeakMap});var _jt=z(hjt=>{"use strict";Object.defineProperty(hjt,"__esModule",{value:!0});var lio=Fs(),N2n=lio.createContext({exit:()=>{}});N2n.displayName="InternalAppContext";hjt.default=N2n});var bjt=z(yjt=>{"use strict";Object.defineProperty(yjt,"__esModule",{value:!0});var uio=Fs(),R2n=uio.createContext({stdin:void 0,setRawMode:()=>{},isRawModeSupported:!1,internal_exitOnCtrlC:!0});R2n.displayName="InternalStdinContext";yjt.default=R2n});var Bjt=z(Ejt=>{"use strict";Object.defineProperty(Ejt,"__esModule",{value:!0});var gio=Fs(),D2n=gio.createContext({stdout:void 0,write:()=>{}});D2n.displayName="InternalStdoutContext";Ejt.default=D2n});var Sjt=z(vjt=>{"use strict";Object.defineProperty(vjt,"__esModule",{value:!0});var Aio=Fs(),x2n=Aio.createContext({stderr:void 0,write:()=>{}});x2n.displayName="InternalStderrContext";vjt.default=x2n});var xct=z(wjt=>{"use strict";Object.defineProperty(wjt,"__esModule",{value:!0});var dio=Fs(),k2n=dio.createContext({activeId:void 0,add:()=>{},remove:()=>{},activate:()=>{},deactivate:()=>{},enableFocus:()=>{},disableFocus:()=>{},focusNext:()=>{},focusPrevious:()=>{},focus:()=>{}});k2n.displayName="InternalFocusContext";wjt.default=k2n});var F2n=z((H4c,G2n)=>{"use strict";var pio=/[|\\{}()[\]^$+*?.-]/g;G2n.exports=e=>{if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(pio,"\\$&")}});var kct=z((X4c,V2n)=>{"use strict";var fio=F2n(),Iio=typeof process=="object"&&process&&typeof process.cwd=="function"?process.cwd():".",L2n=[].concat(Dt("module").builtinModules,"bootstrap_node","node").map(e=>new RegExp(`(?:\\((?:node:)?${e}(?:\\.js)?:\\d+:\\d+\\)$|^\\s*at (?:node:)?${e}(?:\\.js)?:\\d+:\\d+$)`));L2n.push(/\((?:node:)?internal\/[^:]+:\d+:\d+\)$/,/\s*at (?:node:)?internal\/[^:]+:\d+:\d+$/,/\/\.node-spawn-wrap-\w+-\w+\/node:\d+:\d+\)?$/);var Tjt=class e{constructor(t){t={ignoredPackages:[],...t},"internals"in t||(t.internals=e.nodeInternals()),"cwd"in t||(t.cwd=Iio),this._cwd=t.cwd.replace(/\\/g,"/"),this._internals=[].concat(t.internals,Cio(t.ignoredPackages)),this._wrapCallSite=t.wrapCallSite||!1}static nodeInternals(){return[...L2n]}clean(t,r=0){r=" ".repeat(r),Array.isArray(t)||(t=t.split(` +`,a)}while(s!==-1);return o+=e.substr(a),o};l2n.exports={stringReplaceAll:Mno,stringEncaseCRLFWithFirstIndex:Hno}});var f2n=z((J4c,p2n)=>{"use strict";var Yno=/(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,g2n=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,Xno=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,Jno=/\\(u(?:[a-f\d]{4}|{[a-f\d]{1,6}})|x[a-f\d]{2}|.)|([^\\])/gi,Uno=new Map([["n",` +`],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e","\x1B"],["a","\x07"]]);function d2n(e){let t=e[0]==="u",r=e[1]==="{";return t&&!r&&e.length===5||e[0]==="x"&&e.length===3?String.fromCharCode(parseInt(e.slice(1),16)):t&&r?String.fromCodePoint(parseInt(e.slice(2,-1),16)):Uno.get(e)||e}function Kno(e,t){let r=[],s=t.trim().split(/\s*,\s*/g),a;for(let o of s){let g=Number(o);if(!Number.isNaN(g))r.push(g);else if(a=o.match(Xno))r.push(a[2].replace(Jno,(p,f,m)=>f?d2n(f):m));else throw new Error(`Invalid Chalk template style argument: ${o} (in style '${e}')`)}return r}function jno(e){g2n.lastIndex=0;let t=[],r;for(;(r=g2n.exec(e))!==null;){let s=r[1];if(r[2]){let a=Kno(s,r[2]);t.push([s].concat(a))}else t.push([s])}return t}function A2n(e,t){let r={};for(let a of t)for(let o of a.styles)r[o[0]]=a.inverse?null:o.slice(1);let s=e;for(let[a,o]of Object.entries(r))if(Array.isArray(o)){if(!(a in s))throw new Error(`Unknown Chalk style: ${a}`);s=o.length>0?s[a](...o):s[a]}return s}p2n.exports=(e,t)=>{let r=[],s=[],a=[];if(t.replace(Yno,(o,g,p,f,m,y)=>{if(g)a.push(d2n(g));else if(f){let B=a.join("");a=[],s.push(r.length===0?B:A2n(e,r)(B)),r.push({inverse:p,styles:jno(f)})}else if(m){if(r.length===0)throw new Error("Found extraneous } in Chalk template literal");s.push(A2n(e,r)(a.join(""))),a=[],r.pop()}else a.push(y)}),s.push(a.join("")),r.length>0){let o=`Chalk template literal is missing ${r.length} closing bracket${r.length===1?"":"s"} (\`}\`)`;throw new Error(o)}return s.join("")}});var tie=z((U4c,y2n)=>{"use strict";var jWe=m9e(),{stdout:ujt,stderr:gjt}=krt(),{stringReplaceAll:zno,stringEncaseCRLFWithFirstIndex:qno}=u2n(),{isArray:Nct}=Array,C2n=["ansi","ansi","ansi256","ansi16m"],c1e=Object.create(null),$no=(e,t={})=>{if(t.level&&!(Number.isInteger(t.level)&&t.level>=0&&t.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let r=ujt?ujt.level:0;e.level=t.level===void 0?r:t.level},Ajt=class{constructor(t){return m2n(t)}},m2n=e=>{let t={};return $no(t,e),t.template=(...r)=>_2n(t.template,...r),Object.setPrototypeOf(t,Rct.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=()=>{throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.")},t.template.Instance=Ajt,t.template};function Rct(e){return m2n(e)}for(let[e,t]of Object.entries(jWe))c1e[e]={get(){let r=Dct(this,djt(t.open,t.close,this._styler),this._isEmpty);return Object.defineProperty(this,e,{value:r}),r}};c1e.visible={get(){let e=Dct(this,this._styler,!0);return Object.defineProperty(this,"visible",{value:e}),e}};var h2n=["rgb","hex","keyword","hsl","hsv","hwb","ansi","ansi256"];for(let e of h2n)c1e[e]={get(){let{level:t}=this;return function(...r){let s=djt(jWe.color[C2n[t]][e](...r),jWe.color.close,this._styler);return Dct(this,s,this._isEmpty)}}};for(let e of h2n){let t="bg"+e[0].toUpperCase()+e.slice(1);c1e[t]={get(){let{level:r}=this;return function(...s){let a=djt(jWe.bgColor[C2n[r]][e](...s),jWe.bgColor.close,this._styler);return Dct(this,a,this._isEmpty)}}}}var eio=Object.defineProperties(()=>{},{...c1e,level:{enumerable:!0,get(){return this._generator.level},set(e){this._generator.level=e}}}),djt=(e,t,r)=>{let s,a;return r===void 0?(s=e,a=t):(s=r.openAll+e,a=t+r.closeAll),{open:e,close:t,openAll:s,closeAll:a,parent:r}},Dct=(e,t,r)=>{let s=(...a)=>Nct(a[0])&&Nct(a[0].raw)?I2n(s,_2n(s,...a)):I2n(s,a.length===1?""+a[0]:a.join(" "));return Object.setPrototypeOf(s,eio),s._generator=e,s._styler=t,s._isEmpty=r,s},I2n=(e,t)=>{if(e.level<=0||!t)return e._isEmpty?"":t;let r=e._styler;if(r===void 0)return t;let{openAll:s,closeAll:a}=r;if(t.indexOf("\x1B")!==-1)for(;r!==void 0;)t=zno(t,r.close,r.open),r=r.parent;let o=t.indexOf(` +`);return o!==-1&&(t=qno(t,a,s,o)),s+t+a},ljt,_2n=(e,...t)=>{let[r]=t;if(!Nct(r)||!Nct(r.raw))return t.join(" ");let s=t.slice(1),a=[r.raw[0]];for(let o=1;o{"use strict";var tio=qWe&&qWe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(qWe,"__esModule",{value:!0});var zWe=tio(tie()),rio=/^(rgb|hsl|hsv|hwb)\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/,nio=/^(ansi|ansi256)\(\s?(\d+)\s?\)$/,kct=(e,t)=>t==="foreground"?e:"bg"+e[0].toUpperCase()+e.slice(1);qWe.default=(e,t,r)=>{if(!t)return e;if(t in zWe.default){let a=kct(t,r);return zWe.default[a](e)}if(t.startsWith("#")){let a=kct("hex",r);return zWe.default[a](t)(e)}if(t.startsWith("ansi")){let a=nio.exec(t);if(!a)return e;let o=kct(a[1],r),g=Number(a[2]);return zWe.default[o](g)(e)}if(t.startsWith("rgb")||t.startsWith("hsl")||t.startsWith("hsv")||t.startsWith("hwb")){let a=rio.exec(t);if(!a)return e;let o=kct(a[1],r),g=Number(a[2]),p=Number(a[3]),f=Number(a[4]);return zWe.default[o](g,p,f)(e)}return e}});var E2n=z($We=>{"use strict";var b2n=$We&&$We.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty($We,"__esModule",{value:!0});var iio=b2n(cjt()),fjt=b2n(pjt());$We.default=(e,t,r,s)=>{if(typeof r.style.borderStyle=="string"){let a=r.yogaNode.getComputedWidth(),o=r.yogaNode.getComputedHeight(),g=r.style.borderColor,p=iio.default[r.style.borderStyle],f=fjt.default(p.topLeft+p.horizontal.repeat(a-2)+p.topRight,g,"foreground"),m=(fjt.default(p.vertical,g,"foreground")+` +`).repeat(o-2),y=fjt.default(p.bottomLeft+p.horizontal.repeat(a-2)+p.bottomRight,g,"foreground");s.write(e,t,f,{transformers:[]}),s.write(e,t+1,m,{transformers:[]}),s.write(e+a-1,t+1,m,{transformers:[]}),s.write(e,t+o-1,y,{transformers:[]})}}});var v2n=z(e3e=>{"use strict";var lde=e3e&&e3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e3e,"__esModule",{value:!0});var sio=lde(SW()),oio=lde(QWe()),aio=lde(ojt()),cio=lde(rjt()),lio=lde(o2n()),uio=lde(ijt()),gio=lde(E2n()),Aio=(e,t)=>{var r;let s=(r=e.childNodes[0])===null||r===void 0?void 0:r.yogaNode;if(s){let a=s.getComputedLeft(),o=s.getComputedTop();t=` +`.repeat(o)+aio.default(t,a)}return t},B2n=(e,t,r)=>{var s;let{offsetX:a=0,offsetY:o=0,transformers:g=[],skipStaticElements:p}=r;if(p&&e.internal_static)return;let{yogaNode:f}=e;if(f){if(f.getDisplay()===sio.default.DISPLAY_NONE)return;let m=a+f.getComputedLeft(),y=o+f.getComputedTop(),B=g;if(typeof e.internal_transform=="function"&&(B=[e.internal_transform,...g]),e.nodeName==="ink-text"){let v=uio.default(e);if(v.length>0){let k=oio.default(v),T=lio.default(f);if(k>T){let O=(s=e.style.textWrap)!==null&&s!==void 0?s:"wrap";v=cio.default(v,T,O)}v=Aio(e,v),t.write(m,y,v,{transformers:B})}return}if(e.nodeName==="ink-box"&&gio.default(m,y,e,t),e.nodeName==="ink-root"||e.nodeName==="ink-box")for(let v of e.childNodes)B2n(v,t,{offsetX:m,offsetY:y,transformers:B,skipStaticElements:p})}};e3e.default=B2n});var T2n=z(t3e=>{"use strict";var w2n=t3e&&t3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t3e,"__esModule",{value:!0});var S2n=w2n(vct()),dio=w2n(a1e()),Ijt=class{constructor(t){this.writes=[];let{width:r,height:s}=t;this.width=r,this.height=s}write(t,r,s,a){let{transformers:o}=a;s&&this.writes.push({x:t,y:r,text:s,transformers:o})}get(){let t=[];for(let s=0;ss.trimRight()).join(` +`),height:t.length}}};t3e.default=Ijt});var D2n=z(r3e=>{"use strict";var Cjt=r3e&&r3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(r3e,"__esModule",{value:!0});var pio=Cjt(SW()),N2n=Cjt(v2n()),R2n=Cjt(T2n());r3e.default=(e,t)=>{var r;if(e.yogaNode.setWidth(t),e.yogaNode){e.yogaNode.calculateLayout(void 0,void 0,pio.default.DIRECTION_LTR);let s=new R2n.default({width:e.yogaNode.getComputedWidth(),height:e.yogaNode.getComputedHeight()});N2n.default(e,s,{skipStaticElements:!0});let a;!((r=e.staticNode)===null||r===void 0)&&r.yogaNode&&(a=new R2n.default({width:e.staticNode.yogaNode.getComputedWidth(),height:e.staticNode.yogaNode.getComputedHeight()}),N2n.default(e.staticNode,a,{skipStaticElements:!1}));let{output:o,height:g}=s.get();return{output:o,outputHeight:g,staticOutput:a?`${a.get().output} +`:""}}return{output:"",outputHeight:0,staticOutput:""}}});var hjt=z((eJc,G2n)=>{"use strict";var x2n=xt("stream"),k2n=["assert","count","countReset","debug","dir","dirxml","error","group","groupCollapsed","groupEnd","info","log","table","time","timeEnd","timeLog","trace","warn"],mjt={},fio=e=>{let t=new x2n.PassThrough,r=new x2n.PassThrough;t.write=a=>e("stdout",a),r.write=a=>e("stderr",a);let s=new console.Console(t,r);for(let a of k2n)mjt[a]=console[a],console[a]=s[a];return()=>{for(let a of k2n)console[a]=mjt[a];mjt={}}};G2n.exports=fio});var yjt=z(_jt=>{"use strict";Object.defineProperty(_jt,"__esModule",{value:!0});_jt.default=new WeakMap});var Ejt=z(bjt=>{"use strict";Object.defineProperty(bjt,"__esModule",{value:!0});var Iio=$a(),F2n=Iio.createContext({exit:()=>{}});F2n.displayName="InternalAppContext";bjt.default=F2n});var vjt=z(Bjt=>{"use strict";Object.defineProperty(Bjt,"__esModule",{value:!0});var Cio=$a(),Z2n=Cio.createContext({stdin:void 0,setRawMode:()=>{},isRawModeSupported:!1,internal_exitOnCtrlC:!0});Z2n.displayName="InternalStdinContext";Bjt.default=Z2n});var wjt=z(Sjt=>{"use strict";Object.defineProperty(Sjt,"__esModule",{value:!0});var mio=$a(),L2n=mio.createContext({stdout:void 0,write:()=>{}});L2n.displayName="InternalStdoutContext";Sjt.default=L2n});var Njt=z(Tjt=>{"use strict";Object.defineProperty(Tjt,"__esModule",{value:!0});var hio=$a(),V2n=hio.createContext({stderr:void 0,write:()=>{}});V2n.displayName="InternalStderrContext";Tjt.default=V2n});var Gct=z(Rjt=>{"use strict";Object.defineProperty(Rjt,"__esModule",{value:!0});var _io=$a(),W2n=_io.createContext({activeId:void 0,add:()=>{},remove:()=>{},activate:()=>{},deactivate:()=>{},enableFocus:()=>{},disableFocus:()=>{},focusNext:()=>{},focusPrevious:()=>{},focus:()=>{}});W2n.displayName="InternalFocusContext";Rjt.default=W2n});var O2n=z((aJc,P2n)=>{"use strict";var yio=/[|\\{}()[\]^$+*?.-]/g;P2n.exports=e=>{if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(yio,"\\$&")}});var Fct=z((cJc,H2n)=>{"use strict";var bio=O2n(),Eio=typeof process=="object"&&process&&typeof process.cwd=="function"?process.cwd():".",M2n=[].concat(xt("module").builtinModules,"bootstrap_node","node").map(e=>new RegExp(`(?:\\((?:node:)?${e}(?:\\.js)?:\\d+:\\d+\\)$|^\\s*at (?:node:)?${e}(?:\\.js)?:\\d+:\\d+$)`));M2n.push(/\((?:node:)?internal\/[^:]+:\d+:\d+\)$/,/\s*at (?:node:)?internal\/[^:]+:\d+:\d+$/,/\/\.node-spawn-wrap-\w+-\w+\/node:\d+:\d+\)?$/);var Djt=class e{constructor(t){t={ignoredPackages:[],...t},"internals"in t||(t.internals=e.nodeInternals()),"cwd"in t||(t.cwd=Eio),this._cwd=t.cwd.replace(/\\/g,"/"),this._internals=[].concat(t.internals,Bio(t.ignoredPackages)),this._wrapCallSite=t.wrapCallSite||!1}static nodeInternals(){return[...M2n]}clean(t,r=0){r=" ".repeat(r),Array.isArray(t)||(t=t.split(` `)),!/^\s*at /.test(t[0])&&/^\s*at /.test(t[1])&&(t=t.slice(1));let s=!1,a=null,o=[];return t.forEach(g=>{if(g=g.replace(/\\/g,"/"),this._internals.some(f=>f.test(g)))return;let p=/^\s*at /.test(g);s?g=g.trimEnd().replace(/^(\s+)at /,"$1"):(g=g.trim(),p&&(g=g.slice(3))),g=g.replace(`${this._cwd}/`,""),g&&(p?(a&&(o.push(a),a=null),o.push(g)):(s=!0,a=g))}),o.map(g=>`${r}${g} -`).join("")}captureString(t,r=this.captureString){typeof t=="function"&&(r=t,t=1/0);let{stackTraceLimit:s}=Error;t&&(Error.stackTraceLimit=t);let a={};Error.captureStackTrace(a,r);let{stack:o}=a;return Error.stackTraceLimit=s,this.clean(o)}capture(t,r=this.capture){typeof t=="function"&&(r=t,t=1/0);let{prepareStackTrace:s,stackTraceLimit:a}=Error;Error.prepareStackTrace=(p,f)=>this._wrapCallSite?f.map(this._wrapCallSite):f,t&&(Error.stackTraceLimit=t);let o={};Error.captureStackTrace(o,r);let{stack:g}=o;return Object.assign(Error,{prepareStackTrace:s,stackTraceLimit:a}),g}at(t=this.at){let[r]=this.capture(1,t);if(!r)return{};let s={line:r.getLineNumber(),column:r.getColumnNumber()};Z2n(s,r.getFileName(),this._cwd),r.isConstructor()&&Object.defineProperty(s,"constructor",{value:!0,configurable:!0}),r.isEval()&&(s.evalOrigin=r.getEvalOrigin()),r.isNative()&&(s.native=!0);let a;try{a=r.getTypeName()}catch{}a&&a!=="Object"&&a!=="[object Object]"&&(s.type=a);let o=r.getFunctionName();o&&(s.function=o);let g=r.getMethodName();return g&&o!==g&&(s.method=g),s}parseLine(t){let r=t&&t.match(mio);if(!r)return null;let s=r[1]==="new",a=r[2],o=r[3],g=r[4],p=Number(r[5]),f=Number(r[6]),m=r[7],y=r[8],B=r[9],v=r[10]==="native",G=r[11]===")",T,O={};if(y&&(O.line=Number(y)),B&&(O.column=Number(B)),G&&m){let X=0;for(let U=m.length-1;U>0;U--)if(m.charAt(U)===")")X++;else if(m.charAt(U)==="("&&m.charAt(U-1)===" "&&(X--,X===-1&&m.charAt(U-1)===" ")){let le=m.slice(0,U-1);m=m.slice(U+1),a+=` (${le}`;break}}if(a){let X=a.match(hio);X&&(a=X[1],T=X[2])}return Z2n(O,m,this._cwd),s&&Object.defineProperty(O,"constructor",{value:!0,configurable:!0}),o&&(O.evalOrigin=o,O.evalLine=p,O.evalColumn=f,O.evalFile=g&&g.replace(/\\/g,"/")),v&&(O.native=!0),a&&(O.function=a),T&&a!==T&&(O.method=T),O}};function Z2n(e,t,r){t&&(t=t.replace(/\\/g,"/"),t.startsWith(`${r}/`)&&(t=t.slice(r.length+1)),e.file=t)}function Cio(e){if(e.length===0)return[];let t=e.map(r=>fio(r));return new RegExp(`[/\\\\]node_modules[/\\\\](?:${t.join("|")})[/\\\\][^:]+:\\d+:\\d+`)}var mio=new RegExp("^(?:\\s*at )?(?:(new) )?(?:(.*?) \\()?(?:eval at ([^ ]+) \\((.+?):(\\d+):(\\d+)\\), )?(?:(.+?):(\\d+):(\\d+)|(native))(\\)?)$"),hio=/^(.*?) \[as (.*?)\]$/;V2n.exports=Tjt});var P2n=z((J4c,W2n)=>{"use strict";W2n.exports=(e,t)=>e.replace(/^\t+/gm,r=>" ".repeat(r.length*(t||2)))});var Njt=z((U4c,O2n)=>{"use strict";var _io=P2n(),yio=(e,t)=>{let r=[],s=e-t,a=e+t;for(let o=s;o<=a;o++)r.push(o);return r};O2n.exports=(e,t,r)=>{if(typeof e!="string")throw new TypeError("Source code is missing.");if(!t||t<1)throw new TypeError("Line number must start from `1`.");if(e=_io(e).split(/\r?\n/),!(t>e.length))return r={around:3,...r},yio(t,r.around).filter(s=>e[s-1]!==void 0).map(s=>({line:s,value:e[s-1]}))}});var Gct=z(DH=>{"use strict";var bio=DH&&DH.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Eio=DH&&DH.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Bio=DH&&DH.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&bio(t,e,r);return Eio(t,e),t},vio=DH&&DH.__rest||function(e,t){var r={};for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&t.indexOf(s)<0&&(r[s]=e[s]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,s=Object.getOwnPropertySymbols(e);a{var{children:r}=e,s=vio(e,["children"]);let a=Object.assign(Object.assign({},s),{marginLeft:s.marginLeft||s.marginX||s.margin||0,marginRight:s.marginRight||s.marginX||s.margin||0,marginTop:s.marginTop||s.marginY||s.margin||0,marginBottom:s.marginBottom||s.marginY||s.margin||0,paddingLeft:s.paddingLeft||s.paddingX||s.padding||0,paddingRight:s.paddingRight||s.paddingX||s.padding||0,paddingTop:s.paddingTop||s.paddingY||s.padding||0,paddingBottom:s.paddingBottom||s.paddingY||s.padding||0});return M2n.default.createElement("ink-box",{ref:t,style:a},r)});Rjt.displayName="Box";Rjt.defaultProps={flexDirection:"row",flexGrow:0,flexShrink:1};DH.default=Rjt});var kjt=z(t3e=>{"use strict";var Djt=t3e&&t3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t3e,"__esModule",{value:!0});var Sio=Djt(Fs()),a1e=Djt($ne()),Q2n=Djt(gjt()),xjt=({color:e,backgroundColor:t,dimColor:r,bold:s,italic:a,underline:o,strikethrough:g,inverse:p,wrap:f,children:m})=>{if(m==null)return null;let y=B=>(r&&(B=a1e.default.dim(B)),e&&(B=Q2n.default(B,e,"foreground")),t&&(B=Q2n.default(B,t,"background")),s&&(B=a1e.default.bold(B)),a&&(B=a1e.default.italic(B)),o&&(B=a1e.default.underline(B)),g&&(B=a1e.default.strikethrough(B)),p&&(B=a1e.default.inverse(B)),B);return Sio.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:f},internal_transform:y},m)};xjt.displayName="Text";xjt.defaultProps={dimColor:!1,bold:!1,italic:!1,underline:!1,strikethrough:!1,wrap:"wrap"};t3e.default=xjt});var J2n=z(xH=>{"use strict";var wio=xH&&xH.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Tio=xH&&xH.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Nio=xH&&xH.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&wio(t,e,r);return Tio(t,e),t},r3e=xH&&xH.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(xH,"__esModule",{value:!0});var Y2n=Nio(Dt("fs")),kT=r3e(Fs()),H2n=r3e(kct()),Rio=r3e(Njt()),Dj=r3e(Gct()),UJ=r3e(kjt()),X2n=new H2n.default({cwd:process.cwd(),internals:H2n.default.nodeInternals()}),Dio=({error:e})=>{let t=e.stack?e.stack.split(` -`).slice(1):void 0,r=t?X2n.parseLine(t[0]):void 0,s,a=0;if(r?.file&&r?.line&&Y2n.existsSync(r.file)){let o=Y2n.readFileSync(r.file,"utf8");if(s=Rio.default(o,r.line),s)for(let{line:g}of s)a=Math.max(a,String(g).length)}return kT.default.createElement(Dj.default,{flexDirection:"column",padding:1},kT.default.createElement(Dj.default,null,kT.default.createElement(UJ.default,{backgroundColor:"red",color:"white"}," ","ERROR"," "),kT.default.createElement(UJ.default,null," ",e.message)),r&&kT.default.createElement(Dj.default,{marginTop:1},kT.default.createElement(UJ.default,{dimColor:!0},r.file,":",r.line,":",r.column)),r&&s&&kT.default.createElement(Dj.default,{marginTop:1,flexDirection:"column"},s.map(({line:o,value:g})=>kT.default.createElement(Dj.default,{key:o},kT.default.createElement(Dj.default,{width:a+1},kT.default.createElement(UJ.default,{dimColor:o!==r.line,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0},String(o).padStart(a," "),":")),kT.default.createElement(UJ.default,{key:o,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0}," "+g)))),e.stack&&kT.default.createElement(Dj.default,{marginTop:1,flexDirection:"column"},e.stack.split(` -`).slice(1).map(o=>{let g=X2n.parseLine(o);return g?kT.default.createElement(Dj.default,{key:o},kT.default.createElement(UJ.default,{dimColor:!0},"- "),kT.default.createElement(UJ.default,{dimColor:!0,bold:!0},g.function),kT.default.createElement(UJ.default,{dimColor:!0,color:"gray"}," ","(",g.file,":",g.line,":",g.column,")")):kT.default.createElement(Dj.default,{key:o},kT.default.createElement(UJ.default,{dimColor:!0},"- "),kT.default.createElement(UJ.default,{dimColor:!0,bold:!0},o))})))};xH.default=Dio});var K2n=z(kH=>{"use strict";var xio=kH&&kH.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),kio=kH&&kH.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Gio=kH&&kH.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&xio(t,e,r);return kio(t,e),t},rde=kH&&kH.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(kH,"__esModule",{value:!0});var tde=Gio(Fs()),U2n=rde(r1e()),Fio=rde(_jt()),Zio=rde(bjt()),Lio=rde(Bjt()),Vio=rde(Sjt()),Wio=rde(xct()),Pio=rde(J2n()),Oio=" ",Mio="\x1B[Z",Qio="\x1B",Fct=class extends tde.PureComponent{constructor(){super(...arguments),this.state={isFocusEnabled:!0,activeFocusId:void 0,focusables:[],error:void 0},this.rawModeEnabledCount=0,this.handleSetRawMode=t=>{let{stdin:r}=this.props;if(!this.isRawModeSupported())throw r===process.stdin?new Error(`Raw mode is not supported on the current process.stdin, which Ink uses as input stream by default. +`).join("")}captureString(t,r=this.captureString){typeof t=="function"&&(r=t,t=1/0);let{stackTraceLimit:s}=Error;t&&(Error.stackTraceLimit=t);let a={};Error.captureStackTrace(a,r);let{stack:o}=a;return Error.stackTraceLimit=s,this.clean(o)}capture(t,r=this.capture){typeof t=="function"&&(r=t,t=1/0);let{prepareStackTrace:s,stackTraceLimit:a}=Error;Error.prepareStackTrace=(p,f)=>this._wrapCallSite?f.map(this._wrapCallSite):f,t&&(Error.stackTraceLimit=t);let o={};Error.captureStackTrace(o,r);let{stack:g}=o;return Object.assign(Error,{prepareStackTrace:s,stackTraceLimit:a}),g}at(t=this.at){let[r]=this.capture(1,t);if(!r)return{};let s={line:r.getLineNumber(),column:r.getColumnNumber()};Q2n(s,r.getFileName(),this._cwd),r.isConstructor()&&Object.defineProperty(s,"constructor",{value:!0,configurable:!0}),r.isEval()&&(s.evalOrigin=r.getEvalOrigin()),r.isNative()&&(s.native=!0);let a;try{a=r.getTypeName()}catch{}a&&a!=="Object"&&a!=="[object Object]"&&(s.type=a);let o=r.getFunctionName();o&&(s.function=o);let g=r.getMethodName();return g&&o!==g&&(s.method=g),s}parseLine(t){let r=t&&t.match(vio);if(!r)return null;let s=r[1]==="new",a=r[2],o=r[3],g=r[4],p=Number(r[5]),f=Number(r[6]),m=r[7],y=r[8],B=r[9],v=r[10]==="native",k=r[11]===")",T,O={};if(y&&(O.line=Number(y)),B&&(O.column=Number(B)),k&&m){let X=0;for(let U=m.length-1;U>0;U--)if(m.charAt(U)===")")X++;else if(m.charAt(U)==="("&&m.charAt(U-1)===" "&&(X--,X===-1&&m.charAt(U-1)===" ")){let le=m.slice(0,U-1);m=m.slice(U+1),a+=` (${le}`;break}}if(a){let X=a.match(Sio);X&&(a=X[1],T=X[2])}return Q2n(O,m,this._cwd),s&&Object.defineProperty(O,"constructor",{value:!0,configurable:!0}),o&&(O.evalOrigin=o,O.evalLine=p,O.evalColumn=f,O.evalFile=g&&g.replace(/\\/g,"/")),v&&(O.native=!0),a&&(O.function=a),T&&a!==T&&(O.method=T),O}};function Q2n(e,t,r){t&&(t=t.replace(/\\/g,"/"),t.startsWith(`${r}/`)&&(t=t.slice(r.length+1)),e.file=t)}function Bio(e){if(e.length===0)return[];let t=e.map(r=>bio(r));return new RegExp(`[/\\\\]node_modules[/\\\\](?:${t.join("|")})[/\\\\][^:]+:\\d+:\\d+`)}var vio=new RegExp("^(?:\\s*at )?(?:(new) )?(?:(.*?) \\()?(?:eval at ([^ ]+) \\((.+?):(\\d+):(\\d+)\\), )?(?:(.+?):(\\d+):(\\d+)|(native))(\\)?)$"),Sio=/^(.*?) \[as (.*?)\]$/;H2n.exports=Djt});var X2n=z((lJc,Y2n)=>{"use strict";Y2n.exports=(e,t)=>e.replace(/^\t+/gm,r=>" ".repeat(r.length*(t||2)))});var xjt=z((uJc,J2n)=>{"use strict";var wio=X2n(),Tio=(e,t)=>{let r=[],s=e-t,a=e+t;for(let o=s;o<=a;o++)r.push(o);return r};J2n.exports=(e,t,r)=>{if(typeof e!="string")throw new TypeError("Source code is missing.");if(!t||t<1)throw new TypeError("Line number must start from `1`.");if(e=wio(e).split(/\r?\n/),!(t>e.length))return r={around:3,...r},Tio(t,r.around).filter(s=>e[s-1]!==void 0).map(s=>({line:s,value:e[s-1]}))}});var Zct=z(kH=>{"use strict";var Nio=kH&&kH.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Rio=kH&&kH.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Dio=kH&&kH.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&Nio(t,e,r);return Rio(t,e),t},xio=kH&&kH.__rest||function(e,t){var r={};for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&t.indexOf(s)<0&&(r[s]=e[s]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,s=Object.getOwnPropertySymbols(e);a{var{children:r}=e,s=xio(e,["children"]);let a=Object.assign(Object.assign({},s),{marginLeft:s.marginLeft||s.marginX||s.margin||0,marginRight:s.marginRight||s.marginX||s.margin||0,marginTop:s.marginTop||s.marginY||s.margin||0,marginBottom:s.marginBottom||s.marginY||s.margin||0,paddingLeft:s.paddingLeft||s.paddingX||s.padding||0,paddingRight:s.paddingRight||s.paddingX||s.padding||0,paddingTop:s.paddingTop||s.paddingY||s.padding||0,paddingBottom:s.paddingBottom||s.paddingY||s.padding||0});return U2n.default.createElement("ink-box",{ref:t,style:a},r)});kjt.displayName="Box";kjt.defaultProps={flexDirection:"row",flexGrow:0,flexShrink:1};kH.default=kjt});var Zjt=z(n3e=>{"use strict";var Gjt=n3e&&n3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(n3e,"__esModule",{value:!0});var kio=Gjt($a()),l1e=Gjt(tie()),K2n=Gjt(pjt()),Fjt=({color:e,backgroundColor:t,dimColor:r,bold:s,italic:a,underline:o,strikethrough:g,inverse:p,wrap:f,children:m})=>{if(m==null)return null;let y=B=>(r&&(B=l1e.default.dim(B)),e&&(B=K2n.default(B,e,"foreground")),t&&(B=K2n.default(B,t,"background")),s&&(B=l1e.default.bold(B)),a&&(B=l1e.default.italic(B)),o&&(B=l1e.default.underline(B)),g&&(B=l1e.default.strikethrough(B)),p&&(B=l1e.default.inverse(B)),B);return kio.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:f},internal_transform:y},m)};Fjt.displayName="Text";Fjt.defaultProps={dimColor:!1,bold:!1,italic:!1,underline:!1,strikethrough:!1,wrap:"wrap"};n3e.default=Fjt});var $2n=z(GH=>{"use strict";var Gio=GH&&GH.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Fio=GH&&GH.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Zio=GH&&GH.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&Gio(t,e,r);return Fio(t,e),t},i3e=GH&&GH.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(GH,"__esModule",{value:!0});var j2n=Zio(xt("fs")),GT=i3e($a()),z2n=i3e(Fct()),Lio=i3e(xjt()),Lj=i3e(Zct()),zJ=i3e(Zjt()),q2n=new z2n.default({cwd:process.cwd(),internals:z2n.default.nodeInternals()}),Vio=({error:e})=>{let t=e.stack?e.stack.split(` +`).slice(1):void 0,r=t?q2n.parseLine(t[0]):void 0,s,a=0;if(r?.file&&r?.line&&j2n.existsSync(r.file)){let o=j2n.readFileSync(r.file,"utf8");if(s=Lio.default(o,r.line),s)for(let{line:g}of s)a=Math.max(a,String(g).length)}return GT.default.createElement(Lj.default,{flexDirection:"column",padding:1},GT.default.createElement(Lj.default,null,GT.default.createElement(zJ.default,{backgroundColor:"red",color:"white"}," ","ERROR"," "),GT.default.createElement(zJ.default,null," ",e.message)),r&>.default.createElement(Lj.default,{marginTop:1},GT.default.createElement(zJ.default,{dimColor:!0},r.file,":",r.line,":",r.column)),r&&s&>.default.createElement(Lj.default,{marginTop:1,flexDirection:"column"},s.map(({line:o,value:g})=>GT.default.createElement(Lj.default,{key:o},GT.default.createElement(Lj.default,{width:a+1},GT.default.createElement(zJ.default,{dimColor:o!==r.line,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0},String(o).padStart(a," "),":")),GT.default.createElement(zJ.default,{key:o,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0}," "+g)))),e.stack&>.default.createElement(Lj.default,{marginTop:1,flexDirection:"column"},e.stack.split(` +`).slice(1).map(o=>{let g=q2n.parseLine(o);return g?GT.default.createElement(Lj.default,{key:o},GT.default.createElement(zJ.default,{dimColor:!0},"- "),GT.default.createElement(zJ.default,{dimColor:!0,bold:!0},g.function),GT.default.createElement(zJ.default,{dimColor:!0,color:"gray"}," ","(",g.file,":",g.line,":",g.column,")")):GT.default.createElement(Lj.default,{key:o},GT.default.createElement(zJ.default,{dimColor:!0},"- "),GT.default.createElement(zJ.default,{dimColor:!0,bold:!0},o))})))};GH.default=Vio});var tBn=z(FH=>{"use strict";var Wio=FH&&FH.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Pio=FH&&FH.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Oio=FH&&FH.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&Wio(t,e,r);return Pio(t,e),t},gde=FH&&FH.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(FH,"__esModule",{value:!0});var ude=Oio($a()),eBn=gde(i1e()),Qio=gde(Ejt()),Mio=gde(vjt()),Hio=gde(wjt()),Yio=gde(Njt()),Xio=gde(Gct()),Jio=gde($2n()),Uio=" ",Kio="\x1B[Z",jio="\x1B",Lct=class extends ude.PureComponent{constructor(){super(...arguments),this.state={isFocusEnabled:!0,activeFocusId:void 0,focusables:[],error:void 0},this.rawModeEnabledCount=0,this.handleSetRawMode=t=>{let{stdin:r}=this.props;if(!this.isRawModeSupported())throw r===process.stdin?new Error(`Raw mode is not supported on the current process.stdin, which Ink uses as input stream by default. Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`):new Error(`Raw mode is not supported on the stdin provided to Ink. -Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`);if(r.setEncoding("utf8"),t){this.rawModeEnabledCount===0&&(r.addListener("data",this.handleInput),r.resume(),r.setRawMode(!0)),this.rawModeEnabledCount++;return}--this.rawModeEnabledCount===0&&(r.setRawMode(!1),r.removeListener("data",this.handleInput),r.pause())},this.handleInput=t=>{t===""&&this.props.exitOnCtrlC&&this.handleExit(),t===Qio&&this.state.activeFocusId&&this.setState({activeFocusId:void 0}),this.state.isFocusEnabled&&this.state.focusables.length>0&&(t===Oio&&this.focusNext(),t===Mio&&this.focusPrevious())},this.handleExit=t=>{this.isRawModeSupported()&&this.handleSetRawMode(!1),this.props.onExit(t)},this.enableFocus=()=>{this.setState({isFocusEnabled:!0})},this.disableFocus=()=>{this.setState({isFocusEnabled:!1})},this.focus=t=>{this.setState(r=>r.focusables.some(a=>a?.id===t)?{activeFocusId:t}:r)},this.focusNext=()=>{this.setState(t=>{var r;let s=(r=t.focusables[0])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findNextFocusable(t)||s}})},this.focusPrevious=()=>{this.setState(t=>{var r;let s=(r=t.focusables[t.focusables.length-1])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findPreviousFocusable(t)||s}})},this.addFocusable=(t,{autoFocus:r})=>{this.setState(s=>{let a=s.activeFocusId;return!a&&r&&(a=t),{activeFocusId:a,focusables:[...s.focusables,{id:t,isActive:!0}]}})},this.removeFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.filter(s=>s.id!==t)}))},this.activateFocusable=t=>{this.setState(r=>({focusables:r.focusables.map(s=>s.id!==t?s:{id:t,isActive:!0})}))},this.deactivateFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.map(s=>s.id!==t?s:{id:t,isActive:!1})}))},this.findNextFocusable=t=>{var r;let s=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=s+1;a{var r;let s=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=s-1;a>=0;a--)if(!((r=t.focusables[a])===null||r===void 0)&&r.isActive)return t.focusables[a].id}}static getDerivedStateFromError(t){return{error:t}}isRawModeSupported(){return this.props.stdin.isTTY}render(){return tde.default.createElement(Fio.default.Provider,{value:{exit:this.handleExit}},tde.default.createElement(Zio.default.Provider,{value:{stdin:this.props.stdin,setRawMode:this.handleSetRawMode,isRawModeSupported:this.isRawModeSupported(),internal_exitOnCtrlC:this.props.exitOnCtrlC}},tde.default.createElement(Lio.default.Provider,{value:{stdout:this.props.stdout,write:this.props.writeToStdout}},tde.default.createElement(Vio.default.Provider,{value:{stderr:this.props.stderr,write:this.props.writeToStderr}},tde.default.createElement(Wio.default.Provider,{value:{activeId:this.state.activeFocusId,add:this.addFocusable,remove:this.removeFocusable,activate:this.activateFocusable,deactivate:this.deactivateFocusable,enableFocus:this.enableFocus,disableFocus:this.disableFocus,focusNext:this.focusNext,focusPrevious:this.focusPrevious,focus:this.focus}},this.state.error?tde.default.createElement(Pio.default,{error:this.state.error}):this.props.children)))))}componentDidMount(){U2n.default.hide(this.props.stdout)}componentWillUnmount(){U2n.default.show(this.props.stdout),this.isRawModeSupported()&&this.handleSetRawMode(!1)}componentDidCatch(t){this.handleExit(t)}};kH.default=Fct;Fct.displayName="InternalApp"});var q2n=z(GH=>{"use strict";var Yio=GH&&GH.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Hio=GH&&GH.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Xio=GH&&GH.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&Yio(t,e,r);return Hio(t,e),t},FH=GH&&GH.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(GH,"__esModule",{value:!0});var Jio=FH(Fs()),j2n=y7t(),Uio=FH(e1n()),Kio=FH(DWe()),jio=FH(S7t()),zio=FH(w7t()),Gjt=FH(q1n()),qio=FH(v2n()),$io=FH(Act()),eso=FH(Ijt()),tso=Xio(rjt()),rso=FH(mjt()),nso=FH(K2n()),c1e=process.env.CI==="false"?!1:jio.default,z2n=()=>{},Fjt=class{constructor(t){this.resolveExitPromise=()=>{},this.rejectExitPromise=()=>{},this.unsubscribeExit=()=>{},this.onRender=()=>{if(this.isUnmounted)return;let{output:r,outputHeight:s,staticOutput:a}=qio.default(this.rootNode,this.options.stdout.columns||80),o=a&&a!==` -`;if(this.options.debug){o&&(this.fullStaticOutput+=a),this.options.stdout.write(this.fullStaticOutput+r);return}if(c1e){o&&this.options.stdout.write(a),this.lastOutput=r;return}if(o&&(this.fullStaticOutput+=a),s>=this.options.stdout.rows){this.options.stdout.write(Kio.default.clearTerminal+this.fullStaticOutput+r),this.lastOutput=r;return}o&&(this.log.clear(),this.options.stdout.write(a),this.log(r)),!o&&r!==this.lastOutput&&this.throttledLog(r),this.lastOutput=r},zio.default(this),this.options=t,this.rootNode=tso.createNode("ink-root"),this.rootNode.onRender=t.debug?this.onRender:j2n.throttle(this.onRender,32,{leading:!0,trailing:!0}),this.rootNode.onImmediateRender=this.onRender,this.log=Uio.default.create(t.stdout),this.throttledLog=t.debug?this.log:j2n.throttle(this.log,void 0,{leading:!0,trailing:!0}),this.isUnmounted=!1,this.lastOutput="",this.fullStaticOutput="",this.container=Gjt.default.createContainer(this.rootNode,0,!1,null),this.unsubscribeExit=$io.default(this.unmount,{alwaysLast:!1}),t.patchConsole&&this.patchConsole(),c1e||(t.stdout.on("resize",this.onRender),this.unsubscribeResize=()=>{t.stdout.off("resize",this.onRender)})}render(t){let r=Jio.default.createElement(nso.default,{stdin:this.options.stdin,stdout:this.options.stdout,stderr:this.options.stderr,writeToStdout:this.writeToStdout,writeToStderr:this.writeToStderr,exitOnCtrlC:this.options.exitOnCtrlC,onExit:this.unmount},t);Gjt.default.updateContainer(r,this.container,null,z2n)}writeToStdout(t){if(!this.isUnmounted){if(this.options.debug){this.options.stdout.write(t+this.fullStaticOutput+this.lastOutput);return}if(c1e){this.options.stdout.write(t);return}this.log.clear(),this.options.stdout.write(t),this.log(this.lastOutput)}}writeToStderr(t){if(!this.isUnmounted){if(this.options.debug){this.options.stderr.write(t),this.options.stdout.write(this.fullStaticOutput+this.lastOutput);return}if(c1e){this.options.stderr.write(t);return}this.log.clear(),this.options.stderr.write(t),this.log(this.lastOutput)}}unmount(t){this.isUnmounted||(this.onRender(),this.unsubscribeExit(),typeof this.restoreConsole=="function"&&this.restoreConsole(),typeof this.unsubscribeResize=="function"&&this.unsubscribeResize(),c1e?this.options.stdout.write(this.lastOutput+` -`):this.options.debug||this.log.done(),this.isUnmounted=!0,Gjt.default.updateContainer(null,this.container,null,z2n),rso.default.delete(this.options.stdout),t instanceof Error?this.rejectExitPromise(t):this.resolveExitPromise())}waitUntilExit(){return this.exitPromise||(this.exitPromise=new Promise((t,r)=>{this.resolveExitPromise=t,this.rejectExitPromise=r})),this.exitPromise}clear(){!c1e&&!this.options.debug&&this.log.clear()}patchConsole(){this.options.debug||(this.restoreConsole=eso.default((t,r)=>{t==="stdout"&&this.writeToStdout(r),t==="stderr"&&(r.startsWith("The above error occurred")||this.writeToStderr(r))}))}};GH.default=Fjt});var eBn=z(n3e=>{"use strict";var $2n=n3e&&n3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(n3e,"__esModule",{value:!0});var iso=$2n(q2n()),Zct=$2n(mjt()),sso=Dt("stream"),oso=(e,t)=>{let r=Object.assign({stdout:process.stdout,stdin:process.stdin,stderr:process.stderr,debug:!1,exitOnCtrlC:!0,patchConsole:!0},aso(t)),s=cso(r.stdout,()=>new iso.default(r));return s.render(e),{rerender:s.render,unmount:()=>s.unmount(),waitUntilExit:s.waitUntilExit,cleanup:()=>Zct.default.delete(r.stdout),clear:s.clear}};n3e.default=oso;var aso=(e={})=>e instanceof sso.Stream?{stdout:e,stdin:process.stdin}:e,cso=(e,t)=>{let r;return Zct.default.has(e)?r=Zct.default.get(e):(r=t(),Zct.default.set(e,r)),r}});var rBn=z(xj=>{"use strict";var lso=xj&&xj.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),uso=xj&&xj.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),gso=xj&&xj.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&lso(t,e,r);return uso(t,e),t};Object.defineProperty(xj,"__esModule",{value:!0});var i3e=gso(Fs()),tBn=e=>{let{items:t,children:r,style:s}=e,[a,o]=i3e.useState(0),g=i3e.useMemo(()=>t.slice(a),[t,a]);i3e.useLayoutEffect(()=>{o(t.length)},[t.length]);let p=g.map((m,y)=>r(m,a+y)),f=i3e.useMemo(()=>Object.assign({position:"absolute",flexDirection:"column"},s),[s]);return i3e.default.createElement("ink-box",{internal_static:!0,style:f},p)};tBn.displayName="Static";xj.default=tBn});var iBn=z(s3e=>{"use strict";var Aso=s3e&&s3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(s3e,"__esModule",{value:!0});var dso=Aso(Fs()),nBn=({children:e,transform:t})=>e==null?null:dso.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row"},internal_transform:t},e);nBn.displayName="Transform";s3e.default=nBn});var oBn=z(o3e=>{"use strict";var pso=o3e&&o3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(o3e,"__esModule",{value:!0});var fso=pso(Fs()),sBn=({count:e=1})=>fso.default.createElement("ink-text",null,` -`.repeat(e));sBn.displayName="Newline";o3e.default=sBn});var lBn=z(a3e=>{"use strict";var aBn=a3e&&a3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(a3e,"__esModule",{value:!0});var Iso=aBn(Fs()),Cso=aBn(Gct()),cBn=()=>Iso.default.createElement(Cso.default,{flexGrow:1});cBn.displayName="Spacer";a3e.default=cBn});var Lct=z(c3e=>{"use strict";var mso=c3e&&c3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(c3e,"__esModule",{value:!0});var hso=Fs(),_so=mso(bjt()),yso=()=>hso.useContext(_so.default);c3e.default=yso});var gBn=z(l3e=>{"use strict";var bso=l3e&&l3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(l3e,"__esModule",{value:!0});var uBn=Fs(),Eso=bso(Lct()),Bso=(e,t={})=>{let{stdin:r,setRawMode:s,internal_exitOnCtrlC:a}=Eso.default();uBn.useEffect(()=>{if(t.isActive!==!1)return s(!0),()=>{s(!1)}},[t.isActive,s]),uBn.useEffect(()=>{if(t.isActive===!1)return;let o=g=>{let p=String(g),f={upArrow:p==="\x1B[A",downArrow:p==="\x1B[B",leftArrow:p==="\x1B[D",rightArrow:p==="\x1B[C",pageDown:p==="\x1B[6~",pageUp:p==="\x1B[5~",return:p==="\r",escape:p==="\x1B",ctrl:!1,shift:!1,tab:p===" "||p==="\x1B[Z",backspace:p==="\b",delete:p==="\x7F"||p==="\x1B[3~",meta:!1};p<=""&&!f.return&&(p=String.fromCharCode(p.charCodeAt(0)+97-1),f.ctrl=!0),p.startsWith("\x1B")&&(p=p.slice(1),f.meta=!0);let m=p>="A"&&p<="Z",y=p>="\u0410"&&p<="\u042F";p.length===1&&(m||y)&&(f.shift=!0),f.tab&&p==="[Z"&&(f.shift=!0),(f.tab||f.backspace||f.delete)&&(p=""),(!(p==="c"&&f.ctrl)||!a)&&e(p,f)};return r?.on("data",o),()=>{r?.off("data",o)}},[t.isActive,r,a,e])};l3e.default=Bso});var ABn=z(u3e=>{"use strict";var vso=u3e&&u3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(u3e,"__esModule",{value:!0});var Sso=Fs(),wso=vso(_jt()),Tso=()=>Sso.useContext(wso.default);u3e.default=Tso});var dBn=z(g3e=>{"use strict";var Nso=g3e&&g3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(g3e,"__esModule",{value:!0});var Rso=Fs(),Dso=Nso(Bjt()),xso=()=>Rso.useContext(Dso.default);g3e.default=xso});var pBn=z(A3e=>{"use strict";var kso=A3e&&A3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(A3e,"__esModule",{value:!0});var Gso=Fs(),Fso=kso(Sjt()),Zso=()=>Gso.useContext(Fso.default);A3e.default=Zso});var IBn=z(p3e=>{"use strict";var fBn=p3e&&p3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(p3e,"__esModule",{value:!0});var d3e=Fs(),Lso=fBn(xct()),Vso=fBn(Lct()),Wso=({isActive:e=!0,autoFocus:t=!1,id:r}={})=>{let{isRawModeSupported:s,setRawMode:a}=Vso.default(),{activeId:o,add:g,remove:p,activate:f,deactivate:m,focus:y}=d3e.useContext(Lso.default),B=d3e.useMemo(()=>r??Math.random().toString().slice(2,7),[r]);return d3e.useEffect(()=>(g(B,{autoFocus:t}),()=>{p(B)}),[B,t]),d3e.useEffect(()=>{e?f(B):m(B)},[e,B]),d3e.useEffect(()=>{if(!(!s||!e))return a(!0),()=>{a(!1)}},[e]),{isFocused:!!B&&o===B,focus:y}};p3e.default=Wso});var CBn=z(f3e=>{"use strict";var Pso=f3e&&f3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(f3e,"__esModule",{value:!0});var Oso=Fs(),Mso=Pso(xct()),Qso=()=>{let e=Oso.useContext(Mso.default);return{enableFocus:e.enableFocus,disableFocus:e.disableFocus,focusNext:e.focusNext,focusPrevious:e.focusPrevious,focus:e.focus}};f3e.default=Qso});var mBn=z(Zjt=>{"use strict";Object.defineProperty(Zjt,"__esModule",{value:!0});Zjt.default=e=>{var t,r,s,a;return{width:(r=(t=e.yogaNode)===null||t===void 0?void 0:t.getComputedWidth())!==null&&r!==void 0?r:0,height:(a=(s=e.yogaNode)===null||s===void 0?void 0:s.getComputedHeight())!==null&&a!==void 0?a:0}}});var Dc=z(RD=>{"use strict";Object.defineProperty(RD,"__esModule",{value:!0});var Yso=eBn();Object.defineProperty(RD,"render",{enumerable:!0,get:function(){return Yso.default}});var Hso=Gct();Object.defineProperty(RD,"Box",{enumerable:!0,get:function(){return Hso.default}});var Xso=kjt();Object.defineProperty(RD,"Text",{enumerable:!0,get:function(){return Xso.default}});var Jso=rBn();Object.defineProperty(RD,"Static",{enumerable:!0,get:function(){return Jso.default}});var Uso=iBn();Object.defineProperty(RD,"Transform",{enumerable:!0,get:function(){return Uso.default}});var Kso=oBn();Object.defineProperty(RD,"Newline",{enumerable:!0,get:function(){return Kso.default}});var jso=lBn();Object.defineProperty(RD,"Spacer",{enumerable:!0,get:function(){return jso.default}});var zso=gBn();Object.defineProperty(RD,"useInput",{enumerable:!0,get:function(){return zso.default}});var qso=ABn();Object.defineProperty(RD,"useApp",{enumerable:!0,get:function(){return qso.default}});var $so=Lct();Object.defineProperty(RD,"useStdin",{enumerable:!0,get:function(){return $so.default}});var eoo=dBn();Object.defineProperty(RD,"useStdout",{enumerable:!0,get:function(){return eoo.default}});var too=pBn();Object.defineProperty(RD,"useStderr",{enumerable:!0,get:function(){return too.default}});var roo=IBn();Object.defineProperty(RD,"useFocus",{enumerable:!0,get:function(){return roo.default}});var noo=CBn();Object.defineProperty(RD,"useFocusManager",{enumerable:!0,get:function(){return noo.default}});var ioo=mBn();Object.defineProperty(RD,"measureElement",{enumerable:!0,get:function(){return ioo.default}})});var kBn=z(ide=>{"use strict";var{promisify:foo}=Dt("util"),xBn=Dt("fs");async function Mjt(e,t,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return(await foo(xBn[e])(r))[t]()}catch(s){if(s.code==="ENOENT")return!1;throw s}}function Qjt(e,t,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return xBn[e](r)[t]()}catch(s){if(s.code==="ENOENT")return!1;throw s}}ide.isFile=Mjt.bind(null,"stat","isFile");ide.isDirectory=Mjt.bind(null,"stat","isDirectory");ide.isSymlink=Mjt.bind(null,"lstat","isSymbolicLink");ide.isFileSync=Qjt.bind(null,"statSync","isFile");ide.isDirectorySync=Qjt.bind(null,"statSync","isDirectory");ide.isSymlinkSync=Qjt.bind(null,"lstatSync","isSymbolicLink")});var VBn=z((XJc,Yjt)=>{"use strict";var sde=Dt("path"),GBn=kBn(),FBn=e=>e.length>1?`{${e.join(",")}}`:e[0],ZBn=(e,t)=>{let r=e[0]==="!"?e.slice(1):e;return sde.isAbsolute(r)?r:sde.join(t,r)},Ioo=(e,t)=>sde.extname(e)?`**/${e}`:`**/${e}.${FBn(t)}`,LBn=(e,t)=>{if(t.files&&!Array.isArray(t.files))throw new TypeError(`Expected \`files\` to be of type \`Array\` but received type \`${typeof t.files}\``);if(t.extensions&&!Array.isArray(t.extensions))throw new TypeError(`Expected \`extensions\` to be of type \`Array\` but received type \`${typeof t.extensions}\``);return t.files&&t.extensions?t.files.map(r=>sde.posix.join(e,Ioo(r,t.extensions))):t.files?t.files.map(r=>sde.posix.join(e,`**/${r}`)):t.extensions?[sde.posix.join(e,`**/*.${FBn(t.extensions)}`)]:[sde.posix.join(e,"**")]};Yjt.exports=async(e,t)=>{if(t={cwd:process.cwd(),...t},typeof t.cwd!="string")throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof t.cwd}\``);let r=await Promise.all([].concat(e).map(async s=>await GBn.isDirectory(ZBn(s,t.cwd))?LBn(s,t):s));return[].concat.apply([],r)};Yjt.exports.sync=(e,t)=>{if(t={cwd:process.cwd(),...t},typeof t.cwd!="string")throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof t.cwd}\``);let r=[].concat(e).map(s=>GBn.isDirectorySync(ZBn(s,t.cwd))?LBn(s,t):s);return[].concat.apply([],r)}});var Oct=z((JJc,XBn)=>{function WBn(e){return Array.isArray(e)?e:[e]}var Jjt="",PBn=" ",Hjt="\\",Coo=/^\s+$/,moo=/(?:[^\\]|^)\\$/,hoo=/^\\!/,_oo=/^\\#/,yoo=/\r?\n/g,boo=/^\.*\/|^\.+$/,Xjt="/",QBn="node-ignore";typeof Symbol<"u"&&(QBn=Symbol.for("node-ignore"));var OBn=QBn,Eoo=(e,t,r)=>Object.defineProperty(e,t,{value:r}),Boo=/([0-z])-([0-z])/g,YBn=()=>!1,voo=e=>e.replace(Boo,(t,r,s)=>r.charCodeAt(0)<=s.charCodeAt(0)?t:Jjt),Soo=e=>{let{length:t}=e;return e.slice(0,t-t%2)},woo=[[/^\uFEFF/,()=>Jjt],[/((?:\\\\)*?)(\\?\s+)$/,(e,t,r)=>t+(r.indexOf("\\")===0?PBn:Jjt)],[/(\\+?)\s/g,(e,t)=>{let{length:r}=t;return t.slice(0,r-r%2)+PBn}],[/[\\$.|*+(){^]/g,e=>`\\${e}`],[/(?!\\)\?/g,()=>"[^/]"],[/^\//,()=>"^"],[/\//g,()=>"\\/"],[/^\^*\\\*\\\*\\\//,()=>"^(?:.*\\/)?"],[/^(?=[^^])/,function(){return/\/(?!$)/.test(this)?"^":"(?:^|\\/)"}],[/\\\/\\\*\\\*(?=\\\/|$)/g,(e,t,r)=>t+6{let s=r.replace(/\\\*/g,"[^\\/]*");return t+s}],[/\\\\\\(?=[$.|*+(){^])/g,()=>Hjt],[/\\\\/g,()=>Hjt],[/(\\)?\[([^\]/]*?)(\\*)($|\])/g,(e,t,r,s,a)=>t===Hjt?`\\[${r}${Soo(s)}${a}`:a==="]"&&s.length%2===0?`[${voo(r)}${s}]`:"[]"],[/(?:[^*])$/,e=>/\/$/.test(e)?`${e}$`:`${e}(?=$|\\/$)`],[/(\^|\\\/)?\\\*$/,(e,t)=>`${t?`${t}[^/]+`:"[^/]*"}(?=$|\\/$)`]],MBn=Object.create(null),Too=(e,t)=>{let r=MBn[e];return r||(r=woo.reduce((s,[a,o])=>s.replace(a,o.bind(e)),e),MBn[e]=r),t?new RegExp(r,"i"):new RegExp(r)},jjt=e=>typeof e=="string",Noo=e=>e&&jjt(e)&&!Coo.test(e)&&!moo.test(e)&&e.indexOf("#")!==0,Roo=e=>e.split(yoo),Ujt=class{constructor(t,r,s,a){this.origin=t,this.pattern=r,this.negative=s,this.regex=a}},Doo=(e,t)=>{let r=e,s=!1;e.indexOf("!")===0&&(s=!0,e=e.substr(1)),e=e.replace(hoo,"!").replace(_oo,"#");let a=Too(e,t);return new Ujt(r,e,s,a)},xoo=(e,t)=>{throw new t(e)},kj=(e,t,r)=>jjt(e)?e?kj.isNotRelative(e)?r(`path should be a \`path.relative()\`d string, but got "${t}"`,RangeError):!0:r("path must not be empty",TypeError):r(`path must be a string, but got \`${t}\``,TypeError),HBn=e=>boo.test(e);kj.isNotRelative=HBn;kj.convert=e=>e;var Kjt=class{constructor({ignorecase:t=!0,ignoreCase:r=t,allowRelativePaths:s=!1}={}){Eoo(this,OBn,!0),this._rules=[],this._ignoreCase=r,this._allowRelativePaths=s,this._initCache()}_initCache(){this._ignoreCache=Object.create(null),this._testCache=Object.create(null)}_addPattern(t){if(t&&t[OBn]){this._rules=this._rules.concat(t._rules),this._added=!0;return}if(Noo(t)){let r=Doo(t,this._ignoreCase);this._added=!0,this._rules.push(r)}}add(t){return this._added=!1,WBn(jjt(t)?Roo(t):t).forEach(this._addPattern,this),this._added&&this._initCache(),this}addPattern(t){return this.add(t)}_testOne(t,r){let s=!1,a=!1;return this._rules.forEach(o=>{let{negative:g}=o;if(a===g&&s!==a||g&&!s&&!a&&!r)return;o.regex.test(t)&&(s=!g,a=g)}),{ignored:s,unignored:a}}_test(t,r,s,a){let o=t&&kj.convert(t);return kj(o,t,this._allowRelativePaths?YBn:xoo),this._t(o,r,s,a)}_t(t,r,s,a){if(t in r)return r[t];if(a||(a=t.split(Xjt)),a.pop(),!a.length)return r[t]=this._testOne(t,s);let o=this._t(a.join(Xjt)+Xjt,r,s,a);return r[t]=o.ignored?o:this._testOne(t,s)}ignores(t){return this._test(t,this._ignoreCache,!1).ignored}createFilter(){return t=>!this.ignores(t)}filter(t){return WBn(t).filter(this.createFilter())}test(t){return this._test(t,this._testCache,!0)}},Pct=e=>new Kjt(e),koo=e=>kj(e&&kj.convert(e),e,YBn);Pct.isPathValid=koo;Pct.default=Pct;XBn.exports=Pct;if(typeof process<"u"&&(process.env&&process.env.IGNORE_TEST_WIN32||process.platform==="win32")){let e=r=>/^\\\\\?\\/.test(r)||/["<>|\u0000-\u001F]+/u.test(r)?r:r.replace(/\\/g,"/");kj.convert=e;let t=/^[a-z]:\//i;kj.isNotRelative=r=>t.test(r)||HBn(r)}});var rzt=z(Xct=>{"use strict";Object.defineProperty(Xct,"__esModule",{value:!0});Xct.Context=void 0;var Cvn=Dt("fs"),tao=Dt("os"),tzt=class{constructor(){var t,r,s;if(this.payload={},process.env.GITHUB_EVENT_PATH)if((0,Cvn.existsSync)(process.env.GITHUB_EVENT_PATH))this.payload=JSON.parse((0,Cvn.readFileSync)(process.env.GITHUB_EVENT_PATH,{encoding:"utf8"}));else{let a=process.env.GITHUB_EVENT_PATH;process.stdout.write(`GITHUB_EVENT_PATH ${a} does not exist${tao.EOL}`)}this.eventName=process.env.GITHUB_EVENT_NAME,this.sha=process.env.GITHUB_SHA,this.ref=process.env.GITHUB_REF,this.workflow=process.env.GITHUB_WORKFLOW,this.action=process.env.GITHUB_ACTION,this.actor=process.env.GITHUB_ACTOR,this.job=process.env.GITHUB_JOB,this.runNumber=parseInt(process.env.GITHUB_RUN_NUMBER,10),this.runId=parseInt(process.env.GITHUB_RUN_ID,10),this.apiUrl=(t=process.env.GITHUB_API_URL)!==null&&t!==void 0?t:"https://api.github.com",this.serverUrl=(r=process.env.GITHUB_SERVER_URL)!==null&&r!==void 0?r:"https://github.com",this.graphqlUrl=(s=process.env.GITHUB_GRAPHQL_URL)!==null&&s!==void 0?s:"https://api.github.com/graphql"}get issue(){let t=this.payload;return Object.assign(Object.assign({},this.repo),{number:(t.issue||t.pull_request||t).number})}get repo(){if(process.env.GITHUB_REPOSITORY){let[t,r]=process.env.GITHUB_REPOSITORY.split("/");return{owner:t,repo:r}}if(this.payload.repository)return{owner:this.payload.repository.owner.login,repo:this.payload.repository.name};throw new Error("context.repo requires a GITHUB_REPOSITORY environment variable like 'owner/repo'")}};Xct.Context=tzt});var hvn=z(d1e=>{"use strict";Object.defineProperty(d1e,"__esModule",{value:!0});d1e.checkBypass=d1e.getProxyUrl=void 0;function rao(e){let t=e.protocol==="https:";if(mvn(e))return;let r=t?process.env.https_proxy||process.env.HTTPS_PROXY:process.env.http_proxy||process.env.HTTP_PROXY;if(r)try{return new Jct(r)}catch{if(!r.startsWith("http://")&&!r.startsWith("https://"))return new Jct(`http://${r}`)}else return}d1e.getProxyUrl=rao;function mvn(e){if(!e.hostname)return!1;let t=e.hostname;if(nao(t))return!0;let r=process.env.no_proxy||process.env.NO_PROXY||"";if(!r)return!1;let s;e.port?s=Number(e.port):e.protocol==="http:"?s=80:e.protocol==="https:"&&(s=443);let a=[e.hostname.toUpperCase()];typeof s=="number"&&a.push(`${a[0]}:${s}`);for(let o of r.split(",").map(g=>g.trim().toUpperCase()).filter(g=>g))if(o==="*"||a.some(g=>g===o||g.endsWith(`.${o}`)||o.startsWith(".")&&g.endsWith(`${o}`)))return!0;return!1}d1e.checkBypass=mvn;function nao(e){let t=e.toLowerCase();return t==="localhost"||t.startsWith("127.")||t.startsWith("[::1]")||t.startsWith("[0:0:0:0:0:0:0:1]")}var Jct=class extends URL{constructor(t,r){super(t,r),this._decodedUsername=decodeURIComponent(super.username),this._decodedPassword=decodeURIComponent(super.password)}get username(){return this._decodedUsername}get password(){return this._decodedPassword}}});var aE=z((VUc,_vn)=>{_vn.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kHeadersList:Symbol("headers list"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kInterceptors:Symbol("dispatch interceptors"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kHTTP2BuildRequest:Symbol("http2 build request"),kHTTP1BuildRequest:Symbol("http1 build request"),kHTTP2CopyHeaders:Symbol("http2 copy headers"),kHTTPConnVersion:Symbol("http connection version"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable")}});var _b=z((WUc,yvn)=>{"use strict";var rS=class extends Error{constructor(t){super(t),this.name="UndiciError",this.code="UND_ERR"}},nzt=class e extends rS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ConnectTimeoutError",this.message=t||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}},izt=class e extends rS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="HeadersTimeoutError",this.message=t||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}},szt=class e extends rS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="HeadersOverflowError",this.message=t||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}},ozt=class e extends rS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="BodyTimeoutError",this.message=t||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT"}},azt=class e extends rS{constructor(t,r,s,a){super(t),Error.captureStackTrace(this,e),this.name="ResponseStatusCodeError",this.message=t||"Response Status Code Error",this.code="UND_ERR_RESPONSE_STATUS_CODE",this.body=a,this.status=r,this.statusCode=r,this.headers=s}},czt=class e extends rS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="InvalidArgumentError",this.message=t||"Invalid Argument Error",this.code="UND_ERR_INVALID_ARG"}},lzt=class e extends rS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="InvalidReturnValueError",this.message=t||"Invalid Return Value Error",this.code="UND_ERR_INVALID_RETURN_VALUE"}},uzt=class e extends rS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="AbortError",this.message=t||"Request aborted",this.code="UND_ERR_ABORTED"}},gzt=class e extends rS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="InformationalError",this.message=t||"Request information",this.code="UND_ERR_INFO"}},Azt=class e extends rS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="RequestContentLengthMismatchError",this.message=t||"Request body length does not match content-length header",this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}},dzt=class e extends rS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ResponseContentLengthMismatchError",this.message=t||"Response body length does not match content-length header",this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}},pzt=class e extends rS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ClientDestroyedError",this.message=t||"The client is destroyed",this.code="UND_ERR_DESTROYED"}},fzt=class e extends rS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ClientClosedError",this.message=t||"The client is closed",this.code="UND_ERR_CLOSED"}},Izt=class e extends rS{constructor(t,r){super(t),Error.captureStackTrace(this,e),this.name="SocketError",this.message=t||"Socket error",this.code="UND_ERR_SOCKET",this.socket=r}},Uct=class e extends rS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="NotSupportedError",this.message=t||"Not supported error",this.code="UND_ERR_NOT_SUPPORTED"}},Czt=class extends rS{constructor(t){super(t),Error.captureStackTrace(this,Uct),this.name="MissingUpstreamError",this.message=t||"No upstream has been added to the BalancedPool",this.code="UND_ERR_BPL_MISSING_UPSTREAM"}},mzt=class e extends Error{constructor(t,r,s){super(t),Error.captureStackTrace(this,e),this.name="HTTPParserError",this.code=r?`HPE_${r}`:void 0,this.data=s?s.toString():void 0}},hzt=class e extends rS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ResponseExceededMaxSizeError",this.message=t||"Response content exceeded max size",this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}},_zt=class e extends rS{constructor(t,r,{headers:s,data:a}){super(t),Error.captureStackTrace(this,e),this.name="RequestRetryError",this.message=t||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=r,this.data=a,this.headers=s}};yvn.exports={HTTPParserError:mzt,UndiciError:rS,HeadersTimeoutError:izt,HeadersOverflowError:szt,BodyTimeoutError:ozt,RequestContentLengthMismatchError:Azt,ConnectTimeoutError:nzt,ResponseStatusCodeError:azt,InvalidArgumentError:czt,InvalidReturnValueError:lzt,RequestAbortedError:uzt,ClientDestroyedError:pzt,ClientClosedError:fzt,InformationalError:gzt,SocketError:Izt,NotSupportedError:Uct,ResponseContentLengthMismatchError:dzt,BalancedPoolMissingUpstreamError:Czt,ResponseExceededMaxSizeError:hzt,RequestRetryError:_zt}});var Evn=z((PUc,bvn)=>{"use strict";var Kct={},yzt=["Accept","Accept-Encoding","Accept-Language","Accept-Ranges","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Age","Allow","Alt-Svc","Alt-Used","Authorization","Cache-Control","Clear-Site-Data","Connection","Content-Disposition","Content-Encoding","Content-Language","Content-Length","Content-Location","Content-Range","Content-Security-Policy","Content-Security-Policy-Report-Only","Content-Type","Cookie","Cross-Origin-Embedder-Policy","Cross-Origin-Opener-Policy","Cross-Origin-Resource-Policy","Date","Device-Memory","Downlink","ECT","ETag","Expect","Expect-CT","Expires","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Keep-Alive","Last-Modified","Link","Location","Max-Forwards","Origin","Permissions-Policy","Pragma","Proxy-Authenticate","Proxy-Authorization","RTT","Range","Referer","Referrer-Policy","Refresh","Retry-After","Sec-WebSocket-Accept","Sec-WebSocket-Extensions","Sec-WebSocket-Key","Sec-WebSocket-Protocol","Sec-WebSocket-Version","Server","Server-Timing","Service-Worker-Allowed","Service-Worker-Navigation-Preload","Set-Cookie","SourceMap","Strict-Transport-Security","Supports-Loading-Mode","TE","Timing-Allow-Origin","Trailer","Transfer-Encoding","Upgrade","Upgrade-Insecure-Requests","User-Agent","Vary","Via","WWW-Authenticate","X-Content-Type-Options","X-DNS-Prefetch-Control","X-Frame-Options","X-Permitted-Cross-Domain-Policies","X-Powered-By","X-Requested-With","X-XSS-Protection"];for(let e=0;e{"use strict";var wvn=Dt("assert"),{kDestroyed:Tvn,kBodyUsed:Bvn}=aE(),{IncomingMessage:iao}=Dt("http"),p1e=Dt("stream"),sao=Dt("net"),{InvalidArgumentError:xD}=_b(),{Blob:vvn}=Dt("buffer"),jct=Dt("util"),{stringify:oao}=Dt("querystring"),{headerNameLowerCasedRecord:aao}=Evn(),[bzt,Svn]=process.versions.node.split(".").map(e=>Number(e));function cao(){}function Ezt(e){return e&&typeof e=="object"&&typeof e.pipe=="function"&&typeof e.on=="function"}function Nvn(e){return vvn&&e instanceof vvn||e&&typeof e=="object"&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&/^(Blob|File)$/.test(e[Symbol.toStringTag])}function lao(e,t){if(e.includes("?")||e.includes("#"))throw new Error('Query params cannot be passed when url already contains "?" or "#".');let r=oao(t);return r&&(e+="?"+r),e}function Rvn(e){if(typeof e=="string"){if(e=new URL(e),!/^https?:/.test(e.origin||e.protocol))throw new xD("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}if(!e||typeof e!="object")throw new xD("Invalid URL: The URL argument must be a non-null object.");if(!/^https?:/.test(e.origin||e.protocol))throw new xD("Invalid URL protocol: the URL must start with `http:` or `https:`.");if(!(e instanceof URL)){if(e.port!=null&&e.port!==""&&!Number.isFinite(parseInt(e.port)))throw new xD("Invalid URL: port must be a valid integer or a string representation of an integer.");if(e.path!=null&&typeof e.path!="string")throw new xD("Invalid URL path: the path must be a string or null/undefined.");if(e.pathname!=null&&typeof e.pathname!="string")throw new xD("Invalid URL pathname: the pathname must be a string or null/undefined.");if(e.hostname!=null&&typeof e.hostname!="string")throw new xD("Invalid URL hostname: the hostname must be a string or null/undefined.");if(e.origin!=null&&typeof e.origin!="string")throw new xD("Invalid URL origin: the origin must be a string or null/undefined.");let t=e.port!=null?e.port:e.protocol==="https:"?443:80,r=e.origin!=null?e.origin:`${e.protocol}//${e.hostname}:${t}`,s=e.path!=null?e.path:`${e.pathname||""}${e.search||""}`;r.endsWith("/")&&(r=r.substring(0,r.length-1)),s&&!s.startsWith("/")&&(s=`/${s}`),e=new URL(r+s)}return e}function uao(e){if(e=Rvn(e),e.pathname!=="/"||e.search||e.hash)throw new xD("invalid url");return e}function gao(e){if(e[0]==="["){let r=e.indexOf("]");return wvn(r!==-1),e.substring(1,r)}let t=e.indexOf(":");return t===-1?e:e.substring(0,t)}function Aao(e){if(!e)return null;wvn.strictEqual(typeof e,"string");let t=gao(e);return sao.isIP(t)?"":t}function dao(e){return JSON.parse(JSON.stringify(e))}function pao(e){return e!=null&&typeof e[Symbol.asyncIterator]=="function"}function fao(e){return e!=null&&(typeof e[Symbol.iterator]=="function"||typeof e[Symbol.asyncIterator]=="function")}function Iao(e){if(e==null)return 0;if(Ezt(e)){let t=e._readableState;return t&&t.objectMode===!1&&t.ended===!0&&Number.isFinite(t.length)?t.length:null}else{if(Nvn(e))return e.size!=null?e.size:null;if(xvn(e))return e.byteLength}return null}function Bzt(e){return!e||!!(e.destroyed||e[Tvn])}function Dvn(e){let t=e&&e._readableState;return Bzt(e)&&t&&!t.endEmitted}function Cao(e,t){e==null||!Ezt(e)||Bzt(e)||(typeof e.destroy=="function"?(Object.getPrototypeOf(e).constructor===iao&&(e.socket=null),e.destroy(t)):t&&process.nextTick((r,s)=>{r.emit("error",s)},e,t),e.destroyed!==!0&&(e[Tvn]=!0))}var mao=/timeout=(\d+)/;function hao(e){let t=e.toString().match(mao);return t?parseInt(t[1],10)*1e3:null}function _ao(e){return aao[e]||e.toLowerCase()}function yao(e,t={}){if(!Array.isArray(e))return e;for(let r=0;ro.toString("utf8")):t[s]=e[r+1].toString("utf8")}return"content-length"in t&&"content-disposition"in t&&(t["content-disposition"]=Buffer.from(t["content-disposition"]).toString("latin1")),t}function bao(e){let t=[],r=!1,s=-1;for(let a=0;a{r.close()});else{let o=Buffer.isBuffer(a)?a:Buffer.from(a);r.enqueue(new Uint8Array(o))}return r.desiredSize>0},async cancel(r){await t.return()}},0)}function Rao(e){return e&&typeof e=="object"&&typeof e.append=="function"&&typeof e.delete=="function"&&typeof e.get=="function"&&typeof e.getAll=="function"&&typeof e.has=="function"&&typeof e.set=="function"&&e[Symbol.toStringTag]==="FormData"}function Dao(e){if(e){if(typeof e.throwIfAborted=="function")e.throwIfAborted();else if(e.aborted){let t=new Error("The operation was aborted");throw t.name="AbortError",t}}}function xao(e,t){return"addEventListener"in e?(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)):(e.addListener("abort",t),()=>e.removeListener("abort",t))}var kao=!!String.prototype.toWellFormed;function Gao(e){return kao?`${e}`.toWellFormed():jct.toUSVString?jct.toUSVString(e):`${e}`}function Fao(e){if(e==null||e==="")return{start:0,end:null,size:null};let t=e?e.match(/^bytes (\d+)-(\d+)\/(\d+)?$/):null;return t?{start:parseInt(t[1]),end:t[2]?parseInt(t[2]):null,size:t[3]?parseInt(t[3]):null}:null}var kvn=Object.create(null);kvn.enumerable=!0;Gvn.exports={kEnumerableProperty:kvn,nop:cao,isDisturbed:Bao,isErrored:vao,isReadable:Sao,toUSVString:Gao,isReadableAborted:Dvn,isBlobLike:Nvn,parseOrigin:uao,parseURL:Rvn,getServerName:Aao,isStream:Ezt,isIterable:fao,isAsyncIterable:pao,isDestroyed:Bzt,headerNameToString:_ao,parseRawHeaders:bao,parseHeaders:yao,parseKeepAliveTimeout:hao,destroy:Cao,bodyLength:Iao,deepClone:dao,ReadableStreamFrom:Nao,isBuffer:xvn,validateHandler:Eao,getSocketInfo:wao,isFormDataLike:Rao,buildURL:lao,throwIfAborted:Dao,addAbortListener:xao,parseRangeHeader:Fao,nodeMajor:bzt,nodeMinor:Svn,nodeHasAutoSelectFamily:bzt>18||bzt===18&&Svn>=13,safeHTTPMethods:["GET","HEAD","OPTIONS","TRACE"]}});var Lvn=z((MUc,Zvn)=>{"use strict";var vzt=Date.now(),tie,rie=[];function Zao(){vzt=Date.now();let e=rie.length,t=0;for(;t0&&vzt>=r.state&&(r.state=-1,r.callback(r.opaque)),r.state===-1?(r.state=-2,t!==e-1?rie[t]=rie.pop():rie.pop(),e-=1):t+=1}rie.length>0&&Fvn()}function Fvn(){tie&&tie.refresh?tie.refresh():(clearTimeout(tie),tie=setTimeout(Zao,1e3),tie.unref&&tie.unref())}var zct=class{constructor(t,r,s){this.callback=t,this.delay=r,this.opaque=s,this.state=-2,this.refresh()}refresh(){this.state===-2&&(rie.push(this),(!tie||rie.length===1)&&Fvn()),this.state=0}clear(){this.state=-1}};Zvn.exports={setTimeout(e,t,r){return t<1e3?setTimeout(e,t,r):new zct(e,t,r)},clearTimeout(e){e instanceof zct?e.clear():clearTimeout(e)}}});var Szt=z((QUc,Vvn)=>{"use strict";var Lao=Dt("node:events").EventEmitter,Vao=Dt("node:util").inherits;function ode(e){if(typeof e=="string"&&(e=Buffer.from(e)),!Buffer.isBuffer(e))throw new TypeError("The needle has to be a String or a Buffer.");let t=e.length;if(t===0)throw new Error("The needle cannot be an empty String/Buffer.");if(t>256)throw new Error("The needle cannot have a length bigger than 256.");this.maxMatches=1/0,this.matches=0,this._occ=new Array(256).fill(t),this._lookbehind_size=0,this._needle=e,this._bufpos=0,this._lookbehind=Buffer.alloc(t);for(var r=0;r=0)this.emit("info",!1,this._lookbehind,0,this._lookbehind_size),this._lookbehind_size=0;else{let p=this._lookbehind_size+o;return p>0&&this.emit("info",!1,this._lookbehind,0,p),this._lookbehind.copy(this._lookbehind,0,p,this._lookbehind_size-p),this._lookbehind_size-=p,e.copy(this._lookbehind,this._lookbehind_size),this._lookbehind_size+=t,this._bufpos=t,t}}if(o+=(o>=0)*this._bufpos,e.indexOf(r,o)!==-1)return o=e.indexOf(r,o),++this.matches,o>0?this.emit("info",!0,e,this._bufpos,o):this.emit("info",!0),this._bufpos=o+s;for(o=t-s;o0&&this.emit("info",!1,e,this._bufpos,o{"use strict";var Wao=Dt("node:util").inherits,Wvn=Dt("node:stream").Readable;function wzt(e){Wvn.call(this,e)}Wao(wzt,Wvn);wzt.prototype._read=function(e){};Pvn.exports=wzt});var qct=z((HUc,Mvn)=>{"use strict";Mvn.exports=function(t,r,s){if(!t||t[r]===void 0||t[r]===null)return s;if(typeof t[r]!="number"||isNaN(t[r]))throw new TypeError("Limit "+r+" is not a valid number");return t[r]}});var Xvn=z((XUc,Hvn)=>{"use strict";var Yvn=Dt("node:events").EventEmitter,Pao=Dt("node:util").inherits,Qvn=qct(),Oao=Szt(),Mao=Buffer.from(`\r +Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`);if(r.setEncoding("utf8"),t){this.rawModeEnabledCount===0&&(r.addListener("data",this.handleInput),r.resume(),r.setRawMode(!0)),this.rawModeEnabledCount++;return}--this.rawModeEnabledCount===0&&(r.setRawMode(!1),r.removeListener("data",this.handleInput),r.pause())},this.handleInput=t=>{t===""&&this.props.exitOnCtrlC&&this.handleExit(),t===jio&&this.state.activeFocusId&&this.setState({activeFocusId:void 0}),this.state.isFocusEnabled&&this.state.focusables.length>0&&(t===Uio&&this.focusNext(),t===Kio&&this.focusPrevious())},this.handleExit=t=>{this.isRawModeSupported()&&this.handleSetRawMode(!1),this.props.onExit(t)},this.enableFocus=()=>{this.setState({isFocusEnabled:!0})},this.disableFocus=()=>{this.setState({isFocusEnabled:!1})},this.focus=t=>{this.setState(r=>r.focusables.some(a=>a?.id===t)?{activeFocusId:t}:r)},this.focusNext=()=>{this.setState(t=>{var r;let s=(r=t.focusables[0])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findNextFocusable(t)||s}})},this.focusPrevious=()=>{this.setState(t=>{var r;let s=(r=t.focusables[t.focusables.length-1])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findPreviousFocusable(t)||s}})},this.addFocusable=(t,{autoFocus:r})=>{this.setState(s=>{let a=s.activeFocusId;return!a&&r&&(a=t),{activeFocusId:a,focusables:[...s.focusables,{id:t,isActive:!0}]}})},this.removeFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.filter(s=>s.id!==t)}))},this.activateFocusable=t=>{this.setState(r=>({focusables:r.focusables.map(s=>s.id!==t?s:{id:t,isActive:!0})}))},this.deactivateFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.map(s=>s.id!==t?s:{id:t,isActive:!1})}))},this.findNextFocusable=t=>{var r;let s=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=s+1;a{var r;let s=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=s-1;a>=0;a--)if(!((r=t.focusables[a])===null||r===void 0)&&r.isActive)return t.focusables[a].id}}static getDerivedStateFromError(t){return{error:t}}isRawModeSupported(){return this.props.stdin.isTTY}render(){return ude.default.createElement(Qio.default.Provider,{value:{exit:this.handleExit}},ude.default.createElement(Mio.default.Provider,{value:{stdin:this.props.stdin,setRawMode:this.handleSetRawMode,isRawModeSupported:this.isRawModeSupported(),internal_exitOnCtrlC:this.props.exitOnCtrlC}},ude.default.createElement(Hio.default.Provider,{value:{stdout:this.props.stdout,write:this.props.writeToStdout}},ude.default.createElement(Yio.default.Provider,{value:{stderr:this.props.stderr,write:this.props.writeToStderr}},ude.default.createElement(Xio.default.Provider,{value:{activeId:this.state.activeFocusId,add:this.addFocusable,remove:this.removeFocusable,activate:this.activateFocusable,deactivate:this.deactivateFocusable,enableFocus:this.enableFocus,disableFocus:this.disableFocus,focusNext:this.focusNext,focusPrevious:this.focusPrevious,focus:this.focus}},this.state.error?ude.default.createElement(Jio.default,{error:this.state.error}):this.props.children)))))}componentDidMount(){eBn.default.hide(this.props.stdout)}componentWillUnmount(){eBn.default.show(this.props.stdout),this.isRawModeSupported()&&this.handleSetRawMode(!1)}componentDidCatch(t){this.handleExit(t)}};FH.default=Lct;Lct.displayName="InternalApp"});var iBn=z(ZH=>{"use strict";var zio=ZH&&ZH.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),qio=ZH&&ZH.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),$io=ZH&&ZH.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&zio(t,e,r);return qio(t,e),t},LH=ZH&&ZH.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ZH,"__esModule",{value:!0});var eso=LH($a()),rBn=B7t(),tso=LH(o1n()),rso=LH(kWe()),nso=LH(N7t()),iso=LH(R7t()),Ljt=LH(i2n()),sso=LH(D2n()),oso=LH(pct()),aso=LH(hjt()),cso=$io(sjt()),lso=LH(yjt()),uso=LH(tBn()),u1e=process.env.CI==="false"?!1:nso.default,nBn=()=>{},Vjt=class{constructor(t){this.resolveExitPromise=()=>{},this.rejectExitPromise=()=>{},this.unsubscribeExit=()=>{},this.onRender=()=>{if(this.isUnmounted)return;let{output:r,outputHeight:s,staticOutput:a}=sso.default(this.rootNode,this.options.stdout.columns||80),o=a&&a!==` +`;if(this.options.debug){o&&(this.fullStaticOutput+=a),this.options.stdout.write(this.fullStaticOutput+r);return}if(u1e){o&&this.options.stdout.write(a),this.lastOutput=r;return}if(o&&(this.fullStaticOutput+=a),s>=this.options.stdout.rows){this.options.stdout.write(rso.default.clearTerminal+this.fullStaticOutput+r),this.lastOutput=r;return}o&&(this.log.clear(),this.options.stdout.write(a),this.log(r)),!o&&r!==this.lastOutput&&this.throttledLog(r),this.lastOutput=r},iso.default(this),this.options=t,this.rootNode=cso.createNode("ink-root"),this.rootNode.onRender=t.debug?this.onRender:rBn.throttle(this.onRender,32,{leading:!0,trailing:!0}),this.rootNode.onImmediateRender=this.onRender,this.log=tso.default.create(t.stdout),this.throttledLog=t.debug?this.log:rBn.throttle(this.log,void 0,{leading:!0,trailing:!0}),this.isUnmounted=!1,this.lastOutput="",this.fullStaticOutput="",this.container=Ljt.default.createContainer(this.rootNode,0,!1,null),this.unsubscribeExit=oso.default(this.unmount,{alwaysLast:!1}),t.patchConsole&&this.patchConsole(),u1e||(t.stdout.on("resize",this.onRender),this.unsubscribeResize=()=>{t.stdout.off("resize",this.onRender)})}render(t){let r=eso.default.createElement(uso.default,{stdin:this.options.stdin,stdout:this.options.stdout,stderr:this.options.stderr,writeToStdout:this.writeToStdout,writeToStderr:this.writeToStderr,exitOnCtrlC:this.options.exitOnCtrlC,onExit:this.unmount},t);Ljt.default.updateContainer(r,this.container,null,nBn)}writeToStdout(t){if(!this.isUnmounted){if(this.options.debug){this.options.stdout.write(t+this.fullStaticOutput+this.lastOutput);return}if(u1e){this.options.stdout.write(t);return}this.log.clear(),this.options.stdout.write(t),this.log(this.lastOutput)}}writeToStderr(t){if(!this.isUnmounted){if(this.options.debug){this.options.stderr.write(t),this.options.stdout.write(this.fullStaticOutput+this.lastOutput);return}if(u1e){this.options.stderr.write(t);return}this.log.clear(),this.options.stderr.write(t),this.log(this.lastOutput)}}unmount(t){this.isUnmounted||(this.onRender(),this.unsubscribeExit(),typeof this.restoreConsole=="function"&&this.restoreConsole(),typeof this.unsubscribeResize=="function"&&this.unsubscribeResize(),u1e?this.options.stdout.write(this.lastOutput+` +`):this.options.debug||this.log.done(),this.isUnmounted=!0,Ljt.default.updateContainer(null,this.container,null,nBn),lso.default.delete(this.options.stdout),t instanceof Error?this.rejectExitPromise(t):this.resolveExitPromise())}waitUntilExit(){return this.exitPromise||(this.exitPromise=new Promise((t,r)=>{this.resolveExitPromise=t,this.rejectExitPromise=r})),this.exitPromise}clear(){!u1e&&!this.options.debug&&this.log.clear()}patchConsole(){this.options.debug||(this.restoreConsole=aso.default((t,r)=>{t==="stdout"&&this.writeToStdout(r),t==="stderr"&&(r.startsWith("The above error occurred")||this.writeToStderr(r))}))}};ZH.default=Vjt});var oBn=z(s3e=>{"use strict";var sBn=s3e&&s3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(s3e,"__esModule",{value:!0});var gso=sBn(iBn()),Vct=sBn(yjt()),Aso=xt("stream"),dso=(e,t)=>{let r=Object.assign({stdout:process.stdout,stdin:process.stdin,stderr:process.stderr,debug:!1,exitOnCtrlC:!0,patchConsole:!0},pso(t)),s=fso(r.stdout,()=>new gso.default(r));return s.render(e),{rerender:s.render,unmount:()=>s.unmount(),waitUntilExit:s.waitUntilExit,cleanup:()=>Vct.default.delete(r.stdout),clear:s.clear}};s3e.default=dso;var pso=(e={})=>e instanceof Aso.Stream?{stdout:e,stdin:process.stdin}:e,fso=(e,t)=>{let r;return Vct.default.has(e)?r=Vct.default.get(e):(r=t(),Vct.default.set(e,r)),r}});var cBn=z(Vj=>{"use strict";var Iso=Vj&&Vj.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Cso=Vj&&Vj.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),mso=Vj&&Vj.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&Iso(t,e,r);return Cso(t,e),t};Object.defineProperty(Vj,"__esModule",{value:!0});var o3e=mso($a()),aBn=e=>{let{items:t,children:r,style:s}=e,[a,o]=o3e.useState(0),g=o3e.useMemo(()=>t.slice(a),[t,a]);o3e.useLayoutEffect(()=>{o(t.length)},[t.length]);let p=g.map((m,y)=>r(m,a+y)),f=o3e.useMemo(()=>Object.assign({position:"absolute",flexDirection:"column"},s),[s]);return o3e.default.createElement("ink-box",{internal_static:!0,style:f},p)};aBn.displayName="Static";Vj.default=aBn});var uBn=z(a3e=>{"use strict";var hso=a3e&&a3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(a3e,"__esModule",{value:!0});var _so=hso($a()),lBn=({children:e,transform:t})=>e==null?null:_so.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row"},internal_transform:t},e);lBn.displayName="Transform";a3e.default=lBn});var ABn=z(c3e=>{"use strict";var yso=c3e&&c3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(c3e,"__esModule",{value:!0});var bso=yso($a()),gBn=({count:e=1})=>bso.default.createElement("ink-text",null,` +`.repeat(e));gBn.displayName="Newline";c3e.default=gBn});var fBn=z(l3e=>{"use strict";var dBn=l3e&&l3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(l3e,"__esModule",{value:!0});var Eso=dBn($a()),Bso=dBn(Zct()),pBn=()=>Eso.default.createElement(Bso.default,{flexGrow:1});pBn.displayName="Spacer";l3e.default=pBn});var Wct=z(u3e=>{"use strict";var vso=u3e&&u3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(u3e,"__esModule",{value:!0});var Sso=$a(),wso=vso(vjt()),Tso=()=>Sso.useContext(wso.default);u3e.default=Tso});var CBn=z(g3e=>{"use strict";var Nso=g3e&&g3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(g3e,"__esModule",{value:!0});var IBn=$a(),Rso=Nso(Wct()),Dso=(e,t={})=>{let{stdin:r,setRawMode:s,internal_exitOnCtrlC:a}=Rso.default();IBn.useEffect(()=>{if(t.isActive!==!1)return s(!0),()=>{s(!1)}},[t.isActive,s]),IBn.useEffect(()=>{if(t.isActive===!1)return;let o=g=>{let p=String(g),f={upArrow:p==="\x1B[A",downArrow:p==="\x1B[B",leftArrow:p==="\x1B[D",rightArrow:p==="\x1B[C",pageDown:p==="\x1B[6~",pageUp:p==="\x1B[5~",return:p==="\r",escape:p==="\x1B",ctrl:!1,shift:!1,tab:p===" "||p==="\x1B[Z",backspace:p==="\b",delete:p==="\x7F"||p==="\x1B[3~",meta:!1};p<=""&&!f.return&&(p=String.fromCharCode(p.charCodeAt(0)+97-1),f.ctrl=!0),p.startsWith("\x1B")&&(p=p.slice(1),f.meta=!0);let m=p>="A"&&p<="Z",y=p>="\u0410"&&p<="\u042F";p.length===1&&(m||y)&&(f.shift=!0),f.tab&&p==="[Z"&&(f.shift=!0),(f.tab||f.backspace||f.delete)&&(p=""),(!(p==="c"&&f.ctrl)||!a)&&e(p,f)};return r?.on("data",o),()=>{r?.off("data",o)}},[t.isActive,r,a,e])};g3e.default=Dso});var mBn=z(A3e=>{"use strict";var xso=A3e&&A3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(A3e,"__esModule",{value:!0});var kso=$a(),Gso=xso(Ejt()),Fso=()=>kso.useContext(Gso.default);A3e.default=Fso});var hBn=z(d3e=>{"use strict";var Zso=d3e&&d3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(d3e,"__esModule",{value:!0});var Lso=$a(),Vso=Zso(wjt()),Wso=()=>Lso.useContext(Vso.default);d3e.default=Wso});var _Bn=z(p3e=>{"use strict";var Pso=p3e&&p3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(p3e,"__esModule",{value:!0});var Oso=$a(),Qso=Pso(Njt()),Mso=()=>Oso.useContext(Qso.default);p3e.default=Mso});var bBn=z(I3e=>{"use strict";var yBn=I3e&&I3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(I3e,"__esModule",{value:!0});var f3e=$a(),Hso=yBn(Gct()),Yso=yBn(Wct()),Xso=({isActive:e=!0,autoFocus:t=!1,id:r}={})=>{let{isRawModeSupported:s,setRawMode:a}=Yso.default(),{activeId:o,add:g,remove:p,activate:f,deactivate:m,focus:y}=f3e.useContext(Hso.default),B=f3e.useMemo(()=>r??Math.random().toString().slice(2,7),[r]);return f3e.useEffect(()=>(g(B,{autoFocus:t}),()=>{p(B)}),[B,t]),f3e.useEffect(()=>{e?f(B):m(B)},[e,B]),f3e.useEffect(()=>{if(!(!s||!e))return a(!0),()=>{a(!1)}},[e]),{isFocused:!!B&&o===B,focus:y}};I3e.default=Xso});var EBn=z(C3e=>{"use strict";var Jso=C3e&&C3e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(C3e,"__esModule",{value:!0});var Uso=$a(),Kso=Jso(Gct()),jso=()=>{let e=Uso.useContext(Kso.default);return{enableFocus:e.enableFocus,disableFocus:e.disableFocus,focusNext:e.focusNext,focusPrevious:e.focusPrevious,focus:e.focus}};C3e.default=jso});var BBn=z(Wjt=>{"use strict";Object.defineProperty(Wjt,"__esModule",{value:!0});Wjt.default=e=>{var t,r,s,a;return{width:(r=(t=e.yogaNode)===null||t===void 0?void 0:t.getComputedWidth())!==null&&r!==void 0?r:0,height:(a=(s=e.yogaNode)===null||s===void 0?void 0:s.getComputedHeight())!==null&&a!==void 0?a:0}}});var xc=z(kD=>{"use strict";Object.defineProperty(kD,"__esModule",{value:!0});var zso=oBn();Object.defineProperty(kD,"render",{enumerable:!0,get:function(){return zso.default}});var qso=Zct();Object.defineProperty(kD,"Box",{enumerable:!0,get:function(){return qso.default}});var $so=Zjt();Object.defineProperty(kD,"Text",{enumerable:!0,get:function(){return $so.default}});var eoo=cBn();Object.defineProperty(kD,"Static",{enumerable:!0,get:function(){return eoo.default}});var too=uBn();Object.defineProperty(kD,"Transform",{enumerable:!0,get:function(){return too.default}});var roo=ABn();Object.defineProperty(kD,"Newline",{enumerable:!0,get:function(){return roo.default}});var noo=fBn();Object.defineProperty(kD,"Spacer",{enumerable:!0,get:function(){return noo.default}});var ioo=CBn();Object.defineProperty(kD,"useInput",{enumerable:!0,get:function(){return ioo.default}});var soo=mBn();Object.defineProperty(kD,"useApp",{enumerable:!0,get:function(){return soo.default}});var ooo=Wct();Object.defineProperty(kD,"useStdin",{enumerable:!0,get:function(){return ooo.default}});var aoo=hBn();Object.defineProperty(kD,"useStdout",{enumerable:!0,get:function(){return aoo.default}});var coo=_Bn();Object.defineProperty(kD,"useStderr",{enumerable:!0,get:function(){return coo.default}});var loo=bBn();Object.defineProperty(kD,"useFocus",{enumerable:!0,get:function(){return loo.default}});var uoo=EBn();Object.defineProperty(kD,"useFocusManager",{enumerable:!0,get:function(){return uoo.default}});var goo=BBn();Object.defineProperty(kD,"measureElement",{enumerable:!0,get:function(){return goo.default}})});var SBn=z(Pct=>{"use strict";var Aoo=$a(),doo=Symbol.for("react.element"),poo=Symbol.for("react.fragment"),foo=Object.prototype.hasOwnProperty,Ioo=Aoo.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,Coo={key:!0,ref:!0,__self:!0,__source:!0};function vBn(e,t,r){var s,a={},o=null,g=null;r!==void 0&&(o=""+r),t.key!==void 0&&(o=""+t.key),t.ref!==void 0&&(g=t.ref);for(s in t)foo.call(t,s)&&!Coo.hasOwnProperty(s)&&(a[s]=t[s]);if(e&&e.defaultProps)for(s in t=e.defaultProps,t)a[s]===void 0&&(a[s]=t[s]);return{$$typeof:doo,type:e,key:o,ref:g,props:a,_owner:Ioo.current}}Pct.Fragment=poo;Pct.jsx=vBn;Pct.jsxs=vBn});var Ac=z((DJc,wBn)=>{"use strict";wBn.exports=SBn()});var QBn=z(dde=>{"use strict";var{promisify:Too}=xt("util"),OBn=xt("fs");async function Yjt(e,t,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return(await Too(OBn[e])(r))[t]()}catch(s){if(s.code==="ENOENT")return!1;throw s}}function Xjt(e,t,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return OBn[e](r)[t]()}catch(s){if(s.code==="ENOENT")return!1;throw s}}dde.isFile=Yjt.bind(null,"stat","isFile");dde.isDirectory=Yjt.bind(null,"stat","isDirectory");dde.isSymlink=Yjt.bind(null,"lstat","isSymbolicLink");dde.isFileSync=Xjt.bind(null,"statSync","isFile");dde.isDirectorySync=Xjt.bind(null,"statSync","isDirectory");dde.isSymlinkSync=Xjt.bind(null,"lstatSync","isSymbolicLink")});var JBn=z((uUc,Jjt)=>{"use strict";var pde=xt("path"),MBn=QBn(),HBn=e=>e.length>1?`{${e.join(",")}}`:e[0],YBn=(e,t)=>{let r=e[0]==="!"?e.slice(1):e;return pde.isAbsolute(r)?r:pde.join(t,r)},Noo=(e,t)=>pde.extname(e)?`**/${e}`:`**/${e}.${HBn(t)}`,XBn=(e,t)=>{if(t.files&&!Array.isArray(t.files))throw new TypeError(`Expected \`files\` to be of type \`Array\` but received type \`${typeof t.files}\``);if(t.extensions&&!Array.isArray(t.extensions))throw new TypeError(`Expected \`extensions\` to be of type \`Array\` but received type \`${typeof t.extensions}\``);return t.files&&t.extensions?t.files.map(r=>pde.posix.join(e,Noo(r,t.extensions))):t.files?t.files.map(r=>pde.posix.join(e,`**/${r}`)):t.extensions?[pde.posix.join(e,`**/*.${HBn(t.extensions)}`)]:[pde.posix.join(e,"**")]};Jjt.exports=async(e,t)=>{if(t={cwd:process.cwd(),...t},typeof t.cwd!="string")throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof t.cwd}\``);let r=await Promise.all([].concat(e).map(async s=>await MBn.isDirectory(YBn(s,t.cwd))?XBn(s,t):s));return[].concat.apply([],r)};Jjt.exports.sync=(e,t)=>{if(t={cwd:process.cwd(),...t},typeof t.cwd!="string")throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof t.cwd}\``);let r=[].concat(e).map(s=>MBn.isDirectorySync(YBn(s,t.cwd))?XBn(s,t):s);return[].concat.apply([],r)}});var m3e=z((gUc,tvn)=>{function UBn(e){return Array.isArray(e)?e:[e]}var jjt="",KBn=" ",Ujt="\\",Roo=/^\s+$/,Doo=/(?:[^\\]|^)\\$/,xoo=/^\\!/,koo=/^\\#/,Goo=/\r?\n/g,Foo=/^\.*\/|^\.+$/,Kjt="/",qBn="node-ignore";typeof Symbol<"u"&&(qBn=Symbol.for("node-ignore"));var jBn=qBn,Zoo=(e,t,r)=>Object.defineProperty(e,t,{value:r}),Loo=/([0-z])-([0-z])/g,$Bn=()=>!1,Voo=e=>e.replace(Loo,(t,r,s)=>r.charCodeAt(0)<=s.charCodeAt(0)?t:jjt),Woo=e=>{let{length:t}=e;return e.slice(0,t-t%2)},Poo=[[/^\uFEFF/,()=>jjt],[/((?:\\\\)*?)(\\?\s+)$/,(e,t,r)=>t+(r.indexOf("\\")===0?KBn:jjt)],[/(\\+?)\s/g,(e,t)=>{let{length:r}=t;return t.slice(0,r-r%2)+KBn}],[/[\\$.|*+(){^]/g,e=>`\\${e}`],[/(?!\\)\?/g,()=>"[^/]"],[/^\//,()=>"^"],[/\//g,()=>"\\/"],[/^\^*\\\*\\\*\\\//,()=>"^(?:.*\\/)?"],[/^(?=[^^])/,function(){return/\/(?!$)/.test(this)?"^":"(?:^|\\/)"}],[/\\\/\\\*\\\*(?=\\\/|$)/g,(e,t,r)=>t+6{let s=r.replace(/\\\*/g,"[^\\/]*");return t+s}],[/\\\\\\(?=[$.|*+(){^])/g,()=>Ujt],[/\\\\/g,()=>Ujt],[/(\\)?\[([^\]/]*?)(\\*)($|\])/g,(e,t,r,s,a)=>t===Ujt?`\\[${r}${Woo(s)}${a}`:a==="]"&&s.length%2===0?`[${Voo(r)}${s}]`:"[]"],[/(?:[^*])$/,e=>/\/$/.test(e)?`${e}$`:`${e}(?=$|\\/$)`],[/(\^|\\\/)?\\\*$/,(e,t)=>`${t?`${t}[^/]+`:"[^/]*"}(?=$|\\/$)`]],zBn=Object.create(null),Ooo=(e,t)=>{let r=zBn[e];return r||(r=Poo.reduce((s,[a,o])=>s.replace(a,o.bind(e)),e),zBn[e]=r),t?new RegExp(r,"i"):new RegExp(r)},$jt=e=>typeof e=="string",Qoo=e=>e&&$jt(e)&&!Roo.test(e)&&!Doo.test(e)&&e.indexOf("#")!==0,Moo=e=>e.split(Goo),zjt=class{constructor(t,r,s,a){this.origin=t,this.pattern=r,this.negative=s,this.regex=a}},Hoo=(e,t)=>{let r=e,s=!1;e.indexOf("!")===0&&(s=!0,e=e.substr(1)),e=e.replace(xoo,"!").replace(koo,"#");let a=Ooo(e,t);return new zjt(r,e,s,a)},Yoo=(e,t)=>{throw new t(e)},Wj=(e,t,r)=>$jt(e)?e?Wj.isNotRelative(e)?r(`path should be a \`path.relative()\`d string, but got "${t}"`,RangeError):!0:r("path must not be empty",TypeError):r(`path must be a string, but got \`${t}\``,TypeError),evn=e=>Foo.test(e);Wj.isNotRelative=evn;Wj.convert=e=>e;var qjt=class{constructor({ignorecase:t=!0,ignoreCase:r=t,allowRelativePaths:s=!1}={}){Zoo(this,jBn,!0),this._rules=[],this._ignoreCase=r,this._allowRelativePaths=s,this._initCache()}_initCache(){this._ignoreCache=Object.create(null),this._testCache=Object.create(null)}_addPattern(t){if(t&&t[jBn]){this._rules=this._rules.concat(t._rules),this._added=!0;return}if(Qoo(t)){let r=Hoo(t,this._ignoreCase);this._added=!0,this._rules.push(r)}}add(t){return this._added=!1,UBn($jt(t)?Moo(t):t).forEach(this._addPattern,this),this._added&&this._initCache(),this}addPattern(t){return this.add(t)}_testOne(t,r){let s=!1,a=!1;return this._rules.forEach(o=>{let{negative:g}=o;if(a===g&&s!==a||g&&!s&&!a&&!r)return;o.regex.test(t)&&(s=!g,a=g)}),{ignored:s,unignored:a}}_test(t,r,s,a){let o=t&&Wj.convert(t);return Wj(o,t,this._allowRelativePaths?$Bn:Yoo),this._t(o,r,s,a)}_t(t,r,s,a){if(t in r)return r[t];if(a||(a=t.split(Kjt)),a.pop(),!a.length)return r[t]=this._testOne(t,s);let o=this._t(a.join(Kjt)+Kjt,r,s,a);return r[t]=o.ignored?o:this._testOne(t,s)}ignores(t){return this._test(t,this._ignoreCache,!1).ignored}createFilter(){return t=>!this.ignores(t)}filter(t){return UBn(t).filter(this.createFilter())}test(t){return this._test(t,this._testCache,!0)}},Mct=e=>new qjt(e),Xoo=e=>Wj(e&&Wj.convert(e),e,$Bn);Mct.isPathValid=Xoo;Mct.default=Mct;tvn.exports=Mct;if(typeof process<"u"&&(process.env&&process.env.IGNORE_TEST_WIN32||process.platform==="win32")){let e=r=>/^\\\\\?\\/.test(r)||/["<>|\u0000-\u001F]+/u.test(r)?r:r.replace(/\\/g,"/");Wj.convert=e;let t=/^[a-z]:\//i;Wj.isNotRelative=r=>t.test(r)||evn(r)}});var szt=z(Uct=>{"use strict";Object.defineProperty(Uct,"__esModule",{value:!0});Uct.Context=void 0;var Svn=xt("fs"),pao=xt("os"),izt=class{constructor(){var t,r,s;if(this.payload={},process.env.GITHUB_EVENT_PATH)if((0,Svn.existsSync)(process.env.GITHUB_EVENT_PATH))this.payload=JSON.parse((0,Svn.readFileSync)(process.env.GITHUB_EVENT_PATH,{encoding:"utf8"}));else{let a=process.env.GITHUB_EVENT_PATH;process.stdout.write(`GITHUB_EVENT_PATH ${a} does not exist${pao.EOL}`)}this.eventName=process.env.GITHUB_EVENT_NAME,this.sha=process.env.GITHUB_SHA,this.ref=process.env.GITHUB_REF,this.workflow=process.env.GITHUB_WORKFLOW,this.action=process.env.GITHUB_ACTION,this.actor=process.env.GITHUB_ACTOR,this.job=process.env.GITHUB_JOB,this.runNumber=parseInt(process.env.GITHUB_RUN_NUMBER,10),this.runId=parseInt(process.env.GITHUB_RUN_ID,10),this.apiUrl=(t=process.env.GITHUB_API_URL)!==null&&t!==void 0?t:"https://api.github.com",this.serverUrl=(r=process.env.GITHUB_SERVER_URL)!==null&&r!==void 0?r:"https://github.com",this.graphqlUrl=(s=process.env.GITHUB_GRAPHQL_URL)!==null&&s!==void 0?s:"https://api.github.com/graphql"}get issue(){let t=this.payload;return Object.assign(Object.assign({},this.repo),{number:(t.issue||t.pull_request||t).number})}get repo(){if(process.env.GITHUB_REPOSITORY){let[t,r]=process.env.GITHUB_REPOSITORY.split("/");return{owner:t,repo:r}}if(this.payload.repository)return{owner:this.payload.repository.owner.login,repo:this.payload.repository.name};throw new Error("context.repo requires a GITHUB_REPOSITORY environment variable like 'owner/repo'")}};Uct.Context=izt});var Tvn=z(f1e=>{"use strict";Object.defineProperty(f1e,"__esModule",{value:!0});f1e.checkBypass=f1e.getProxyUrl=void 0;function fao(e){let t=e.protocol==="https:";if(wvn(e))return;let r=t?process.env.https_proxy||process.env.HTTPS_PROXY:process.env.http_proxy||process.env.HTTP_PROXY;if(r)try{return new Kct(r)}catch{if(!r.startsWith("http://")&&!r.startsWith("https://"))return new Kct(`http://${r}`)}else return}f1e.getProxyUrl=fao;function wvn(e){if(!e.hostname)return!1;let t=e.hostname;if(Iao(t))return!0;let r=process.env.no_proxy||process.env.NO_PROXY||"";if(!r)return!1;let s;e.port?s=Number(e.port):e.protocol==="http:"?s=80:e.protocol==="https:"&&(s=443);let a=[e.hostname.toUpperCase()];typeof s=="number"&&a.push(`${a[0]}:${s}`);for(let o of r.split(",").map(g=>g.trim().toUpperCase()).filter(g=>g))if(o==="*"||a.some(g=>g===o||g.endsWith(`.${o}`)||o.startsWith(".")&&g.endsWith(`${o}`)))return!0;return!1}f1e.checkBypass=wvn;function Iao(e){let t=e.toLowerCase();return t==="localhost"||t.startsWith("127.")||t.startsWith("[::1]")||t.startsWith("[0:0:0:0:0:0:0:1]")}var Kct=class extends URL{constructor(t,r){super(t,r),this._decodedUsername=decodeURIComponent(super.username),this._decodedPassword=decodeURIComponent(super.password)}get username(){return this._decodedUsername}get password(){return this._decodedPassword}}});var lE=z((rKc,Nvn)=>{Nvn.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kHeadersList:Symbol("headers list"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kInterceptors:Symbol("dispatch interceptors"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kHTTP2BuildRequest:Symbol("http2 build request"),kHTTP1BuildRequest:Symbol("http1 build request"),kHTTP2CopyHeaders:Symbol("http2 copy headers"),kHTTPConnVersion:Symbol("http connection version"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable")}});var yb=z((nKc,Rvn)=>{"use strict";var nS=class extends Error{constructor(t){super(t),this.name="UndiciError",this.code="UND_ERR"}},ozt=class e extends nS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ConnectTimeoutError",this.message=t||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}},azt=class e extends nS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="HeadersTimeoutError",this.message=t||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}},czt=class e extends nS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="HeadersOverflowError",this.message=t||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}},lzt=class e extends nS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="BodyTimeoutError",this.message=t||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT"}},uzt=class e extends nS{constructor(t,r,s,a){super(t),Error.captureStackTrace(this,e),this.name="ResponseStatusCodeError",this.message=t||"Response Status Code Error",this.code="UND_ERR_RESPONSE_STATUS_CODE",this.body=a,this.status=r,this.statusCode=r,this.headers=s}},gzt=class e extends nS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="InvalidArgumentError",this.message=t||"Invalid Argument Error",this.code="UND_ERR_INVALID_ARG"}},Azt=class e extends nS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="InvalidReturnValueError",this.message=t||"Invalid Return Value Error",this.code="UND_ERR_INVALID_RETURN_VALUE"}},dzt=class e extends nS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="AbortError",this.message=t||"Request aborted",this.code="UND_ERR_ABORTED"}},pzt=class e extends nS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="InformationalError",this.message=t||"Request information",this.code="UND_ERR_INFO"}},fzt=class e extends nS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="RequestContentLengthMismatchError",this.message=t||"Request body length does not match content-length header",this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}},Izt=class e extends nS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ResponseContentLengthMismatchError",this.message=t||"Response body length does not match content-length header",this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}},Czt=class e extends nS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ClientDestroyedError",this.message=t||"The client is destroyed",this.code="UND_ERR_DESTROYED"}},mzt=class e extends nS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ClientClosedError",this.message=t||"The client is closed",this.code="UND_ERR_CLOSED"}},hzt=class e extends nS{constructor(t,r){super(t),Error.captureStackTrace(this,e),this.name="SocketError",this.message=t||"Socket error",this.code="UND_ERR_SOCKET",this.socket=r}},jct=class e extends nS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="NotSupportedError",this.message=t||"Not supported error",this.code="UND_ERR_NOT_SUPPORTED"}},_zt=class extends nS{constructor(t){super(t),Error.captureStackTrace(this,jct),this.name="MissingUpstreamError",this.message=t||"No upstream has been added to the BalancedPool",this.code="UND_ERR_BPL_MISSING_UPSTREAM"}},yzt=class e extends Error{constructor(t,r,s){super(t),Error.captureStackTrace(this,e),this.name="HTTPParserError",this.code=r?`HPE_${r}`:void 0,this.data=s?s.toString():void 0}},bzt=class e extends nS{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="ResponseExceededMaxSizeError",this.message=t||"Response content exceeded max size",this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}},Ezt=class e extends nS{constructor(t,r,{headers:s,data:a}){super(t),Error.captureStackTrace(this,e),this.name="RequestRetryError",this.message=t||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=r,this.data=a,this.headers=s}};Rvn.exports={HTTPParserError:yzt,UndiciError:nS,HeadersTimeoutError:azt,HeadersOverflowError:czt,BodyTimeoutError:lzt,RequestContentLengthMismatchError:fzt,ConnectTimeoutError:ozt,ResponseStatusCodeError:uzt,InvalidArgumentError:gzt,InvalidReturnValueError:Azt,RequestAbortedError:dzt,ClientDestroyedError:Czt,ClientClosedError:mzt,InformationalError:pzt,SocketError:hzt,NotSupportedError:jct,ResponseContentLengthMismatchError:Izt,BalancedPoolMissingUpstreamError:_zt,ResponseExceededMaxSizeError:bzt,RequestRetryError:Ezt}});var xvn=z((iKc,Dvn)=>{"use strict";var zct={},Bzt=["Accept","Accept-Encoding","Accept-Language","Accept-Ranges","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Age","Allow","Alt-Svc","Alt-Used","Authorization","Cache-Control","Clear-Site-Data","Connection","Content-Disposition","Content-Encoding","Content-Language","Content-Length","Content-Location","Content-Range","Content-Security-Policy","Content-Security-Policy-Report-Only","Content-Type","Cookie","Cross-Origin-Embedder-Policy","Cross-Origin-Opener-Policy","Cross-Origin-Resource-Policy","Date","Device-Memory","Downlink","ECT","ETag","Expect","Expect-CT","Expires","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Keep-Alive","Last-Modified","Link","Location","Max-Forwards","Origin","Permissions-Policy","Pragma","Proxy-Authenticate","Proxy-Authorization","RTT","Range","Referer","Referrer-Policy","Refresh","Retry-After","Sec-WebSocket-Accept","Sec-WebSocket-Extensions","Sec-WebSocket-Key","Sec-WebSocket-Protocol","Sec-WebSocket-Version","Server","Server-Timing","Service-Worker-Allowed","Service-Worker-Navigation-Preload","Set-Cookie","SourceMap","Strict-Transport-Security","Supports-Loading-Mode","TE","Timing-Allow-Origin","Trailer","Transfer-Encoding","Upgrade","Upgrade-Insecure-Requests","User-Agent","Vary","Via","WWW-Authenticate","X-Content-Type-Options","X-DNS-Prefetch-Control","X-Frame-Options","X-Permitted-Cross-Domain-Policies","X-Powered-By","X-Requested-With","X-XSS-Protection"];for(let e=0;e{"use strict";var Zvn=xt("assert"),{kDestroyed:Lvn,kBodyUsed:kvn}=lE(),{IncomingMessage:Cao}=xt("http"),I1e=xt("stream"),mao=xt("net"),{InvalidArgumentError:FD}=yb(),{Blob:Gvn}=xt("buffer"),qct=xt("util"),{stringify:hao}=xt("querystring"),{headerNameLowerCasedRecord:_ao}=xvn(),[vzt,Fvn]=process.versions.node.split(".").map(e=>Number(e));function yao(){}function Szt(e){return e&&typeof e=="object"&&typeof e.pipe=="function"&&typeof e.on=="function"}function Vvn(e){return Gvn&&e instanceof Gvn||e&&typeof e=="object"&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&/^(Blob|File)$/.test(e[Symbol.toStringTag])}function bao(e,t){if(e.includes("?")||e.includes("#"))throw new Error('Query params cannot be passed when url already contains "?" or "#".');let r=hao(t);return r&&(e+="?"+r),e}function Wvn(e){if(typeof e=="string"){if(e=new URL(e),!/^https?:/.test(e.origin||e.protocol))throw new FD("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}if(!e||typeof e!="object")throw new FD("Invalid URL: The URL argument must be a non-null object.");if(!/^https?:/.test(e.origin||e.protocol))throw new FD("Invalid URL protocol: the URL must start with `http:` or `https:`.");if(!(e instanceof URL)){if(e.port!=null&&e.port!==""&&!Number.isFinite(parseInt(e.port)))throw new FD("Invalid URL: port must be a valid integer or a string representation of an integer.");if(e.path!=null&&typeof e.path!="string")throw new FD("Invalid URL path: the path must be a string or null/undefined.");if(e.pathname!=null&&typeof e.pathname!="string")throw new FD("Invalid URL pathname: the pathname must be a string or null/undefined.");if(e.hostname!=null&&typeof e.hostname!="string")throw new FD("Invalid URL hostname: the hostname must be a string or null/undefined.");if(e.origin!=null&&typeof e.origin!="string")throw new FD("Invalid URL origin: the origin must be a string or null/undefined.");let t=e.port!=null?e.port:e.protocol==="https:"?443:80,r=e.origin!=null?e.origin:`${e.protocol}//${e.hostname}:${t}`,s=e.path!=null?e.path:`${e.pathname||""}${e.search||""}`;r.endsWith("/")&&(r=r.substring(0,r.length-1)),s&&!s.startsWith("/")&&(s=`/${s}`),e=new URL(r+s)}return e}function Eao(e){if(e=Wvn(e),e.pathname!=="/"||e.search||e.hash)throw new FD("invalid url");return e}function Bao(e){if(e[0]==="["){let r=e.indexOf("]");return Zvn(r!==-1),e.substring(1,r)}let t=e.indexOf(":");return t===-1?e:e.substring(0,t)}function vao(e){if(!e)return null;Zvn.strictEqual(typeof e,"string");let t=Bao(e);return mao.isIP(t)?"":t}function Sao(e){return JSON.parse(JSON.stringify(e))}function wao(e){return e!=null&&typeof e[Symbol.asyncIterator]=="function"}function Tao(e){return e!=null&&(typeof e[Symbol.iterator]=="function"||typeof e[Symbol.asyncIterator]=="function")}function Nao(e){if(e==null)return 0;if(Szt(e)){let t=e._readableState;return t&&t.objectMode===!1&&t.ended===!0&&Number.isFinite(t.length)?t.length:null}else{if(Vvn(e))return e.size!=null?e.size:null;if(Ovn(e))return e.byteLength}return null}function wzt(e){return!e||!!(e.destroyed||e[Lvn])}function Pvn(e){let t=e&&e._readableState;return wzt(e)&&t&&!t.endEmitted}function Rao(e,t){e==null||!Szt(e)||wzt(e)||(typeof e.destroy=="function"?(Object.getPrototypeOf(e).constructor===Cao&&(e.socket=null),e.destroy(t)):t&&process.nextTick((r,s)=>{r.emit("error",s)},e,t),e.destroyed!==!0&&(e[Lvn]=!0))}var Dao=/timeout=(\d+)/;function xao(e){let t=e.toString().match(Dao);return t?parseInt(t[1],10)*1e3:null}function kao(e){return _ao[e]||e.toLowerCase()}function Gao(e,t={}){if(!Array.isArray(e))return e;for(let r=0;ro.toString("utf8")):t[s]=e[r+1].toString("utf8")}return"content-length"in t&&"content-disposition"in t&&(t["content-disposition"]=Buffer.from(t["content-disposition"]).toString("latin1")),t}function Fao(e){let t=[],r=!1,s=-1;for(let a=0;a{r.close()});else{let o=Buffer.isBuffer(a)?a:Buffer.from(a);r.enqueue(new Uint8Array(o))}return r.desiredSize>0},async cancel(r){await t.return()}},0)}function Mao(e){return e&&typeof e=="object"&&typeof e.append=="function"&&typeof e.delete=="function"&&typeof e.get=="function"&&typeof e.getAll=="function"&&typeof e.has=="function"&&typeof e.set=="function"&&e[Symbol.toStringTag]==="FormData"}function Hao(e){if(e){if(typeof e.throwIfAborted=="function")e.throwIfAborted();else if(e.aborted){let t=new Error("The operation was aborted");throw t.name="AbortError",t}}}function Yao(e,t){return"addEventListener"in e?(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)):(e.addListener("abort",t),()=>e.removeListener("abort",t))}var Xao=!!String.prototype.toWellFormed;function Jao(e){return Xao?`${e}`.toWellFormed():qct.toUSVString?qct.toUSVString(e):`${e}`}function Uao(e){if(e==null||e==="")return{start:0,end:null,size:null};let t=e?e.match(/^bytes (\d+)-(\d+)\/(\d+)?$/):null;return t?{start:parseInt(t[1]),end:t[2]?parseInt(t[2]):null,size:t[3]?parseInt(t[3]):null}:null}var Qvn=Object.create(null);Qvn.enumerable=!0;Mvn.exports={kEnumerableProperty:Qvn,nop:yao,isDisturbed:Lao,isErrored:Vao,isReadable:Wao,toUSVString:Jao,isReadableAborted:Pvn,isBlobLike:Vvn,parseOrigin:Eao,parseURL:Wvn,getServerName:vao,isStream:Szt,isIterable:Tao,isAsyncIterable:wao,isDestroyed:wzt,headerNameToString:kao,parseRawHeaders:Fao,parseHeaders:Gao,parseKeepAliveTimeout:xao,destroy:Rao,bodyLength:Nao,deepClone:Sao,ReadableStreamFrom:Qao,isBuffer:Ovn,validateHandler:Zao,getSocketInfo:Pao,isFormDataLike:Mao,buildURL:bao,throwIfAborted:Hao,addAbortListener:Yao,parseRangeHeader:Uao,nodeMajor:vzt,nodeMinor:Fvn,nodeHasAutoSelectFamily:vzt>18||vzt===18&&Fvn>=13,safeHTTPMethods:["GET","HEAD","OPTIONS","TRACE"]}});var Xvn=z((oKc,Yvn)=>{"use strict";var Tzt=Date.now(),nie,iie=[];function Kao(){Tzt=Date.now();let e=iie.length,t=0;for(;t0&&Tzt>=r.state&&(r.state=-1,r.callback(r.opaque)),r.state===-1?(r.state=-2,t!==e-1?iie[t]=iie.pop():iie.pop(),e-=1):t+=1}iie.length>0&&Hvn()}function Hvn(){nie&&nie.refresh?nie.refresh():(clearTimeout(nie),nie=setTimeout(Kao,1e3),nie.unref&&nie.unref())}var $ct=class{constructor(t,r,s){this.callback=t,this.delay=r,this.opaque=s,this.state=-2,this.refresh()}refresh(){this.state===-2&&(iie.push(this),(!nie||iie.length===1)&&Hvn()),this.state=0}clear(){this.state=-1}};Yvn.exports={setTimeout(e,t,r){return t<1e3?setTimeout(e,t,r):new $ct(e,t,r)},clearTimeout(e){e instanceof $ct?e.clear():clearTimeout(e)}}});var Nzt=z((aKc,Jvn)=>{"use strict";var jao=xt("node:events").EventEmitter,zao=xt("node:util").inherits;function fde(e){if(typeof e=="string"&&(e=Buffer.from(e)),!Buffer.isBuffer(e))throw new TypeError("The needle has to be a String or a Buffer.");let t=e.length;if(t===0)throw new Error("The needle cannot be an empty String/Buffer.");if(t>256)throw new Error("The needle cannot have a length bigger than 256.");this.maxMatches=1/0,this.matches=0,this._occ=new Array(256).fill(t),this._lookbehind_size=0,this._needle=e,this._bufpos=0,this._lookbehind=Buffer.alloc(t);for(var r=0;r=0)this.emit("info",!1,this._lookbehind,0,this._lookbehind_size),this._lookbehind_size=0;else{let p=this._lookbehind_size+o;return p>0&&this.emit("info",!1,this._lookbehind,0,p),this._lookbehind.copy(this._lookbehind,0,p,this._lookbehind_size-p),this._lookbehind_size-=p,e.copy(this._lookbehind,this._lookbehind_size),this._lookbehind_size+=t,this._bufpos=t,t}}if(o+=(o>=0)*this._bufpos,e.indexOf(r,o)!==-1)return o=e.indexOf(r,o),++this.matches,o>0?this.emit("info",!0,e,this._bufpos,o):this.emit("info",!0),this._bufpos=o+s;for(o=t-s;o0&&this.emit("info",!1,e,this._bufpos,o{"use strict";var qao=xt("node:util").inherits,Uvn=xt("node:stream").Readable;function Rzt(e){Uvn.call(this,e)}qao(Rzt,Uvn);Rzt.prototype._read=function(e){};Kvn.exports=Rzt});var elt=z((lKc,zvn)=>{"use strict";zvn.exports=function(t,r,s){if(!t||t[r]===void 0||t[r]===null)return s;if(typeof t[r]!="number"||isNaN(t[r]))throw new TypeError("Limit "+r+" is not a valid number");return t[r]}});var tSn=z((uKc,eSn)=>{"use strict";var $vn=xt("node:events").EventEmitter,$ao=xt("node:util").inherits,qvn=elt(),eco=Nzt(),tco=Buffer.from(`\r \r -`),Qao=/\r\n/g,Yao=/^([^:]+):[ \t]?([\x00-\xFF]+)?$/;function f1e(e){Yvn.call(this),e=e||{};let t=this;this.nread=0,this.maxed=!1,this.npairs=0,this.maxHeaderPairs=Qvn(e,"maxHeaderPairs",2e3),this.maxHeaderSize=Qvn(e,"maxHeaderSize",80*1024),this.buffer="",this.header={},this.finished=!1,this.ss=new Oao(Mao),this.ss.on("info",function(r,s,a,o){s&&!t.maxed&&(t.nread+o-a>=t.maxHeaderSize?(o=t.maxHeaderSize-t.nread+a,t.nread=t.maxHeaderSize,t.maxed=!0):t.nread+=o-a,t.buffer+=s.toString("binary",a,o)),r&&t._finish()})}Pao(f1e,Yvn);f1e.prototype.push=function(e){let t=this.ss.push(e);if(this.finished)return t};f1e.prototype.reset=function(){this.finished=!1,this.buffer="",this.header={},this.ss.reset()};f1e.prototype._finish=function(){this.buffer&&this._parseHeader(),this.ss.matches=this.ss.maxMatches;let e=this.header;this.header={},this.buffer="",this.finished=!0,this.nread=this.npairs=0,this.maxed=!1,this.emit("header",e)};f1e.prototype._parseHeader=function(){if(this.npairs===this.maxHeaderPairs)return;let e=this.buffer.split(Qao),t=e.length,r,s;for(var a=0;a{"use strict";var Tzt=Dt("node:stream").Writable,Hao=Dt("node:util").inherits,Xao=Szt(),Jvn=Ovn(),Jao=Xvn(),Uao=45,Kao=Buffer.from("-"),jao=Buffer.from(`\r -`),zao=function(){};function ZH(e){if(!(this instanceof ZH))return new ZH(e);if(Tzt.call(this,e),!e||!e.headerFirst&&typeof e.boundary!="string")throw new TypeError("Boundary required");typeof e.boundary=="string"?this.setBoundary(e.boundary):this._bparser=void 0,this._headerFirst=e.headerFirst,this._dashes=0,this._parts=0,this._finished=!1,this._realFinish=!1,this._isPreamble=!0,this._justMatched=!1,this._firstWrite=!0,this._inHeader=!0,this._part=void 0,this._cb=void 0,this._ignoreData=!1,this._partOpts={highWaterMark:e.partHwm},this._pause=!1;let t=this;this._hparser=new Jao(e),this._hparser.on("header",function(r){t._inHeader=!1,t._part.emit("header",r)})}Hao(ZH,Tzt);ZH.prototype.emit=function(e){if(e==="finish"&&!this._realFinish){if(!this._finished){let t=this;process.nextTick(function(){if(t.emit("error",new Error("Unexpected end of multipart data")),t._part&&!t._ignoreData){let r=t._isPreamble?"Preamble":"Part";t._part.emit("error",new Error(r+" terminated early due to unexpected end of multipart data")),t._part.push(null),process.nextTick(function(){t._realFinish=!0,t.emit("finish"),t._realFinish=!1});return}t._realFinish=!0,t.emit("finish"),t._realFinish=!1})}}else Tzt.prototype.emit.apply(this,arguments)};ZH.prototype._write=function(e,t,r){if(!this._hparser&&!this._bparser)return r();if(this._headerFirst&&this._isPreamble){this._part||(this._part=new Jvn(this._partOpts),this.listenerCount("preamble")!==0?this.emit("preamble",this._part):this._ignore());let s=this._hparser.push(e);if(!this._inHeader&&s!==void 0&&s{"use strict";var Kvn=new TextDecoder("utf-8"),jvn=new Map([["utf-8",Kvn],["utf8",Kvn]]);function qao(e){let t;for(;;)switch(e){case"utf-8":case"utf8":return _3e.utf8;case"latin1":case"ascii":case"us-ascii":case"iso-8859-1":case"iso8859-1":case"iso88591":case"iso_8859-1":case"windows-1252":case"iso_8859-1:1987":case"cp1252":case"x-cp1252":return _3e.latin1;case"utf16le":case"utf-16le":case"ucs2":case"ucs-2":return _3e.utf16le;case"base64":return _3e.base64;default:if(t===void 0){t=!0,e=e.toLowerCase();continue}return _3e.other.bind(e)}}var _3e={utf8:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.utf8Slice(0,e.length)),latin1:(e,t)=>e.length===0?"":typeof e=="string"?e:e.latin1Slice(0,e.length),utf16le:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.ucs2Slice(0,e.length)),base64:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.base64Slice(0,e.length)),other:(e,t)=>{if(e.length===0)return"";if(typeof e=="string"&&(e=Buffer.from(e,t)),jvn.has(Rzt.toString()))try{return jvn.get(Rzt).decode(e)}catch{}return typeof e=="string"?e:e.toString()}};function $ao(e,t,r){return e&&qao(r)(e,t)}zvn.exports=$ao});var xzt=z((UUc,rSn)=>{"use strict";var elt=$ct(),qvn=/%[a-fA-F0-9][a-fA-F0-9]/g,eco={"%00":"\0","%01":"","%02":"","%03":"","%04":"","%05":"","%06":"","%07":"\x07","%08":"\b","%09":" ","%0a":` +`),rco=/\r\n/g,nco=/^([^:]+):[ \t]?([\x00-\xFF]+)?$/;function C1e(e){$vn.call(this),e=e||{};let t=this;this.nread=0,this.maxed=!1,this.npairs=0,this.maxHeaderPairs=qvn(e,"maxHeaderPairs",2e3),this.maxHeaderSize=qvn(e,"maxHeaderSize",80*1024),this.buffer="",this.header={},this.finished=!1,this.ss=new eco(tco),this.ss.on("info",function(r,s,a,o){s&&!t.maxed&&(t.nread+o-a>=t.maxHeaderSize?(o=t.maxHeaderSize-t.nread+a,t.nread=t.maxHeaderSize,t.maxed=!0):t.nread+=o-a,t.buffer+=s.toString("binary",a,o)),r&&t._finish()})}$ao(C1e,$vn);C1e.prototype.push=function(e){let t=this.ss.push(e);if(this.finished)return t};C1e.prototype.reset=function(){this.finished=!1,this.buffer="",this.header={},this.ss.reset()};C1e.prototype._finish=function(){this.buffer&&this._parseHeader(),this.ss.matches=this.ss.maxMatches;let e=this.header;this.header={},this.buffer="",this.finished=!0,this.nread=this.npairs=0,this.maxed=!1,this.emit("header",e)};C1e.prototype._parseHeader=function(){if(this.npairs===this.maxHeaderPairs)return;let e=this.buffer.split(rco),t=e.length,r,s;for(var a=0;a{"use strict";var Dzt=xt("node:stream").Writable,ico=xt("node:util").inherits,sco=Nzt(),rSn=jvn(),oco=tSn(),aco=45,cco=Buffer.from("-"),lco=Buffer.from(`\r +`),uco=function(){};function VH(e){if(!(this instanceof VH))return new VH(e);if(Dzt.call(this,e),!e||!e.headerFirst&&typeof e.boundary!="string")throw new TypeError("Boundary required");typeof e.boundary=="string"?this.setBoundary(e.boundary):this._bparser=void 0,this._headerFirst=e.headerFirst,this._dashes=0,this._parts=0,this._finished=!1,this._realFinish=!1,this._isPreamble=!0,this._justMatched=!1,this._firstWrite=!0,this._inHeader=!0,this._part=void 0,this._cb=void 0,this._ignoreData=!1,this._partOpts={highWaterMark:e.partHwm},this._pause=!1;let t=this;this._hparser=new oco(e),this._hparser.on("header",function(r){t._inHeader=!1,t._part.emit("header",r)})}ico(VH,Dzt);VH.prototype.emit=function(e){if(e==="finish"&&!this._realFinish){if(!this._finished){let t=this;process.nextTick(function(){if(t.emit("error",new Error("Unexpected end of multipart data")),t._part&&!t._ignoreData){let r=t._isPreamble?"Preamble":"Part";t._part.emit("error",new Error(r+" terminated early due to unexpected end of multipart data")),t._part.push(null),process.nextTick(function(){t._realFinish=!0,t.emit("finish"),t._realFinish=!1});return}t._realFinish=!0,t.emit("finish"),t._realFinish=!1})}}else Dzt.prototype.emit.apply(this,arguments)};VH.prototype._write=function(e,t,r){if(!this._hparser&&!this._bparser)return r();if(this._headerFirst&&this._isPreamble){this._part||(this._part=new rSn(this._partOpts),this.listenerCount("preamble")!==0?this.emit("preamble",this._part):this._ignore());let s=this._hparser.push(e);if(!this._inHeader&&s!==void 0&&s{"use strict";var iSn=new TextDecoder("utf-8"),sSn=new Map([["utf-8",iSn],["utf8",iSn]]);function gco(e){let t;for(;;)switch(e){case"utf-8":case"utf8":return E3e.utf8;case"latin1":case"ascii":case"us-ascii":case"iso-8859-1":case"iso8859-1":case"iso88591":case"iso_8859-1":case"windows-1252":case"iso_8859-1:1987":case"cp1252":case"x-cp1252":return E3e.latin1;case"utf16le":case"utf-16le":case"ucs2":case"ucs-2":return E3e.utf16le;case"base64":return E3e.base64;default:if(t===void 0){t=!0,e=e.toLowerCase();continue}return E3e.other.bind(e)}}var E3e={utf8:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.utf8Slice(0,e.length)),latin1:(e,t)=>e.length===0?"":typeof e=="string"?e:e.latin1Slice(0,e.length),utf16le:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.ucs2Slice(0,e.length)),base64:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.base64Slice(0,e.length)),other:(e,t)=>{if(e.length===0)return"";if(typeof e=="string"&&(e=Buffer.from(e,t)),sSn.has(kzt.toString()))try{return sSn.get(kzt).decode(e)}catch{}return typeof e=="string"?e:e.toString()}};function Aco(e,t,r){return e&&gco(r)(e,t)}oSn.exports=Aco});var Fzt=z((AKc,gSn)=>{"use strict";var rlt=tlt(),aSn=/%[a-fA-F0-9][a-fA-F0-9]/g,dco={"%00":"\0","%01":"","%02":"","%03":"","%04":"","%05":"","%06":"","%07":"\x07","%08":"\b","%09":" ","%0a":` `,"%0A":` -`,"%0b":"\v","%0B":"\v","%0c":"\f","%0C":"\f","%0d":"\r","%0D":"\r","%0e":"","%0E":"","%0f":"","%0F":"","%10":"","%11":"","%12":"","%13":"","%14":"","%15":"","%16":"","%17":"","%18":"","%19":"","%1a":"","%1A":"","%1b":"\x1B","%1B":"\x1B","%1c":"","%1C":"","%1d":"","%1D":"","%1e":"","%1E":"","%1f":"","%1F":"","%20":" ","%21":"!","%22":'"',"%23":"#","%24":"$","%25":"%","%26":"&","%27":"'","%28":"(","%29":")","%2a":"*","%2A":"*","%2b":"+","%2B":"+","%2c":",","%2C":",","%2d":"-","%2D":"-","%2e":".","%2E":".","%2f":"/","%2F":"/","%30":"0","%31":"1","%32":"2","%33":"3","%34":"4","%35":"5","%36":"6","%37":"7","%38":"8","%39":"9","%3a":":","%3A":":","%3b":";","%3B":";","%3c":"<","%3C":"<","%3d":"=","%3D":"=","%3e":">","%3E":">","%3f":"?","%3F":"?","%40":"@","%41":"A","%42":"B","%43":"C","%44":"D","%45":"E","%46":"F","%47":"G","%48":"H","%49":"I","%4a":"J","%4A":"J","%4b":"K","%4B":"K","%4c":"L","%4C":"L","%4d":"M","%4D":"M","%4e":"N","%4E":"N","%4f":"O","%4F":"O","%50":"P","%51":"Q","%52":"R","%53":"S","%54":"T","%55":"U","%56":"V","%57":"W","%58":"X","%59":"Y","%5a":"Z","%5A":"Z","%5b":"[","%5B":"[","%5c":"\\","%5C":"\\","%5d":"]","%5D":"]","%5e":"^","%5E":"^","%5f":"_","%5F":"_","%60":"`","%61":"a","%62":"b","%63":"c","%64":"d","%65":"e","%66":"f","%67":"g","%68":"h","%69":"i","%6a":"j","%6A":"j","%6b":"k","%6B":"k","%6c":"l","%6C":"l","%6d":"m","%6D":"m","%6e":"n","%6E":"n","%6f":"o","%6F":"o","%70":"p","%71":"q","%72":"r","%73":"s","%74":"t","%75":"u","%76":"v","%77":"w","%78":"x","%79":"y","%7a":"z","%7A":"z","%7b":"{","%7B":"{","%7c":"|","%7C":"|","%7d":"}","%7D":"}","%7e":"~","%7E":"~","%7f":"\x7F","%7F":"\x7F","%80":"\x80","%81":"\x81","%82":"\x82","%83":"\x83","%84":"\x84","%85":"\x85","%86":"\x86","%87":"\x87","%88":"\x88","%89":"\x89","%8a":"\x8A","%8A":"\x8A","%8b":"\x8B","%8B":"\x8B","%8c":"\x8C","%8C":"\x8C","%8d":"\x8D","%8D":"\x8D","%8e":"\x8E","%8E":"\x8E","%8f":"\x8F","%8F":"\x8F","%90":"\x90","%91":"\x91","%92":"\x92","%93":"\x93","%94":"\x94","%95":"\x95","%96":"\x96","%97":"\x97","%98":"\x98","%99":"\x99","%9a":"\x9A","%9A":"\x9A","%9b":"\x9B","%9B":"\x9B","%9c":"\x9C","%9C":"\x9C","%9d":"\x9D","%9D":"\x9D","%9e":"\x9E","%9E":"\x9E","%9f":"\x9F","%9F":"\x9F","%a0":"\xA0","%A0":"\xA0","%a1":"\xA1","%A1":"\xA1","%a2":"\xA2","%A2":"\xA2","%a3":"\xA3","%A3":"\xA3","%a4":"\xA4","%A4":"\xA4","%a5":"\xA5","%A5":"\xA5","%a6":"\xA6","%A6":"\xA6","%a7":"\xA7","%A7":"\xA7","%a8":"\xA8","%A8":"\xA8","%a9":"\xA9","%A9":"\xA9","%aa":"\xAA","%Aa":"\xAA","%aA":"\xAA","%AA":"\xAA","%ab":"\xAB","%Ab":"\xAB","%aB":"\xAB","%AB":"\xAB","%ac":"\xAC","%Ac":"\xAC","%aC":"\xAC","%AC":"\xAC","%ad":"\xAD","%Ad":"\xAD","%aD":"\xAD","%AD":"\xAD","%ae":"\xAE","%Ae":"\xAE","%aE":"\xAE","%AE":"\xAE","%af":"\xAF","%Af":"\xAF","%aF":"\xAF","%AF":"\xAF","%b0":"\xB0","%B0":"\xB0","%b1":"\xB1","%B1":"\xB1","%b2":"\xB2","%B2":"\xB2","%b3":"\xB3","%B3":"\xB3","%b4":"\xB4","%B4":"\xB4","%b5":"\xB5","%B5":"\xB5","%b6":"\xB6","%B6":"\xB6","%b7":"\xB7","%B7":"\xB7","%b8":"\xB8","%B8":"\xB8","%b9":"\xB9","%B9":"\xB9","%ba":"\xBA","%Ba":"\xBA","%bA":"\xBA","%BA":"\xBA","%bb":"\xBB","%Bb":"\xBB","%bB":"\xBB","%BB":"\xBB","%bc":"\xBC","%Bc":"\xBC","%bC":"\xBC","%BC":"\xBC","%bd":"\xBD","%Bd":"\xBD","%bD":"\xBD","%BD":"\xBD","%be":"\xBE","%Be":"\xBE","%bE":"\xBE","%BE":"\xBE","%bf":"\xBF","%Bf":"\xBF","%bF":"\xBF","%BF":"\xBF","%c0":"\xC0","%C0":"\xC0","%c1":"\xC1","%C1":"\xC1","%c2":"\xC2","%C2":"\xC2","%c3":"\xC3","%C3":"\xC3","%c4":"\xC4","%C4":"\xC4","%c5":"\xC5","%C5":"\xC5","%c6":"\xC6","%C6":"\xC6","%c7":"\xC7","%C7":"\xC7","%c8":"\xC8","%C8":"\xC8","%c9":"\xC9","%C9":"\xC9","%ca":"\xCA","%Ca":"\xCA","%cA":"\xCA","%CA":"\xCA","%cb":"\xCB","%Cb":"\xCB","%cB":"\xCB","%CB":"\xCB","%cc":"\xCC","%Cc":"\xCC","%cC":"\xCC","%CC":"\xCC","%cd":"\xCD","%Cd":"\xCD","%cD":"\xCD","%CD":"\xCD","%ce":"\xCE","%Ce":"\xCE","%cE":"\xCE","%CE":"\xCE","%cf":"\xCF","%Cf":"\xCF","%cF":"\xCF","%CF":"\xCF","%d0":"\xD0","%D0":"\xD0","%d1":"\xD1","%D1":"\xD1","%d2":"\xD2","%D2":"\xD2","%d3":"\xD3","%D3":"\xD3","%d4":"\xD4","%D4":"\xD4","%d5":"\xD5","%D5":"\xD5","%d6":"\xD6","%D6":"\xD6","%d7":"\xD7","%D7":"\xD7","%d8":"\xD8","%D8":"\xD8","%d9":"\xD9","%D9":"\xD9","%da":"\xDA","%Da":"\xDA","%dA":"\xDA","%DA":"\xDA","%db":"\xDB","%Db":"\xDB","%dB":"\xDB","%DB":"\xDB","%dc":"\xDC","%Dc":"\xDC","%dC":"\xDC","%DC":"\xDC","%dd":"\xDD","%Dd":"\xDD","%dD":"\xDD","%DD":"\xDD","%de":"\xDE","%De":"\xDE","%dE":"\xDE","%DE":"\xDE","%df":"\xDF","%Df":"\xDF","%dF":"\xDF","%DF":"\xDF","%e0":"\xE0","%E0":"\xE0","%e1":"\xE1","%E1":"\xE1","%e2":"\xE2","%E2":"\xE2","%e3":"\xE3","%E3":"\xE3","%e4":"\xE4","%E4":"\xE4","%e5":"\xE5","%E5":"\xE5","%e6":"\xE6","%E6":"\xE6","%e7":"\xE7","%E7":"\xE7","%e8":"\xE8","%E8":"\xE8","%e9":"\xE9","%E9":"\xE9","%ea":"\xEA","%Ea":"\xEA","%eA":"\xEA","%EA":"\xEA","%eb":"\xEB","%Eb":"\xEB","%eB":"\xEB","%EB":"\xEB","%ec":"\xEC","%Ec":"\xEC","%eC":"\xEC","%EC":"\xEC","%ed":"\xED","%Ed":"\xED","%eD":"\xED","%ED":"\xED","%ee":"\xEE","%Ee":"\xEE","%eE":"\xEE","%EE":"\xEE","%ef":"\xEF","%Ef":"\xEF","%eF":"\xEF","%EF":"\xEF","%f0":"\xF0","%F0":"\xF0","%f1":"\xF1","%F1":"\xF1","%f2":"\xF2","%F2":"\xF2","%f3":"\xF3","%F3":"\xF3","%f4":"\xF4","%F4":"\xF4","%f5":"\xF5","%F5":"\xF5","%f6":"\xF6","%F6":"\xF6","%f7":"\xF7","%F7":"\xF7","%f8":"\xF8","%F8":"\xF8","%f9":"\xF9","%F9":"\xF9","%fa":"\xFA","%Fa":"\xFA","%fA":"\xFA","%FA":"\xFA","%fb":"\xFB","%Fb":"\xFB","%fB":"\xFB","%FB":"\xFB","%fc":"\xFC","%Fc":"\xFC","%fC":"\xFC","%FC":"\xFC","%fd":"\xFD","%Fd":"\xFD","%fD":"\xFD","%FD":"\xFD","%fe":"\xFE","%Fe":"\xFE","%fE":"\xFE","%FE":"\xFE","%ff":"\xFF","%Ff":"\xFF","%fF":"\xFF","%FF":"\xFF"};function $vn(e){return eco[e]}var tlt=0,eSn=1,Dzt=2,tSn=3;function tco(e){let t=[],r=tlt,s="",a=!1,o=!1,g=0,p="",f=e.length;for(var m=0;m{"use strict";nSn.exports=function(t){if(typeof t!="string")return"";for(var r=t.length-1;r>=0;--r)switch(t.charCodeAt(r)){case 47:case 92:return t=t.slice(r+1),t===".."||t==="."?"":t}return t===".."||t==="."?"":t}});var cSn=z((jUc,aSn)=>{"use strict";var{Readable:oSn}=Dt("node:stream"),{inherits:rco}=Dt("node:util"),nco=Nzt(),sSn=xzt(),ico=$ct(),sco=iSn(),ade=qct(),oco=/^boundary$/i,aco=/^form-data$/i,cco=/^charset$/i,lco=/^filename$/i,uco=/^name$/i;rlt.detect=/^multipart\/form-data/i;function rlt(e,t){let r,s,a=this,o,g=t.limits,p=t.isPartAFile||((x,et,Ue)=>et==="application/octet-stream"||Ue!==void 0),f=t.parsedConType||[],m=t.defCharset||"utf8",y=t.preservePath,B={highWaterMark:t.fileHwm};for(r=0,s=f.length;rU)return a.parser.removeListener("part",x),a.parser.on("part",I1e),e.hitPartsLimit=!0,e.emit("partsLimit"),I1e(et);if(be){let Ue=be;Ue.emit("end"),Ue.removeAllListeners("end")}et.on("header",function(Ue){let Je,Xe,ft,Gt,er,Ur,Ot=0;if(Ue["content-type"]&&(ft=sSn(Ue["content-type"][0]),ft[0])){for(Je=ft[0].toLowerCase(),r=0,s=ft.length;rT){let $r=T-Ot+Fr.length;$r>0&&or.push(Fr.slice(0,$r)),or.truncated=!0,or.bytesRead=T,et.removeAllListeners("data"),or.emit("limit");return}else or.push(Fr)||(a._pause=!0);or.bytesRead=Ot},Ar=function(){he=void 0,or.push(null)}}else{if(fe===X)return e.hitFieldsLimit||(e.hitFieldsLimit=!0,e.emit("fieldsLimit")),I1e(et);++fe,++pe;let or="",Fr=!1;be=et,dr=function($r){if((Ot+=$r.length)>G){let Or=G-(Ot-$r.length);or+=$r.toString("binary",0,Or),Fr=!0,et.removeAllListeners("data")}else or+=$r.toString("binary")},Ar=function(){be=void 0,or.length&&(or=ico(or,"binary",Gt)),e.emit("field",Xe,or,!1,Fr,er,Je),--pe,v()}}et._readableState.sync=!1,et.on("data",dr),et.on("end",Ar)}).on("error",function(Ue){he&&he.emit("error",Ue)})}).on("error",function(x){e.emit("error",x)}).on("finish",function(){Te=!0,v()})}rlt.prototype.write=function(e,t){let r=this.parser.write(e);r&&!this._pause?t():(this._needDrain=!r,this._cb=t)};rlt.prototype.end=function(){let e=this;e.parser.writable?e.parser.end():e._boy._done||process.nextTick(function(){e._boy._done=!0,e._boy.emit("finish")})};function I1e(e){e.resume()}function kzt(e){oSn.call(this,e),this.bytesRead=0,this.truncated=!1}rco(kzt,oSn);kzt.prototype._read=function(e){};aSn.exports=rlt});var uSn=z((zUc,lSn)=>{"use strict";var gco=/\+/g,Aco=[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,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,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,1,1,1,1,1,1,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 Gzt(){this.buffer=void 0}Gzt.prototype.write=function(e){e=e.replace(gco," ");let t="",r=0,s=0,a=e.length;for(;rs&&(t+=e.substring(s,r),s=r),this.buffer="",++s);return s{"use strict";var dco=uSn(),C1e=$ct(),Fzt=qct(),pco=/^charset$/i;nlt.detect=/^application\/x-www-form-urlencoded/i;function nlt(e,t){let r=t.limits,s=t.parsedConType;this.boy=e,this.fieldSizeLimit=Fzt(r,"fieldSize",1*1024*1024),this.fieldNameSizeLimit=Fzt(r,"fieldNameSize",100),this.fieldsLimit=Fzt(r,"fields",1/0);let a;for(var o=0,g=s.length;oo&&(this._key+=this.decoder.write(e.toString("binary",o,r))),this._state="val",this._hitLimit=!1,this._checkingBytes=!0,this._val="",this._bytesVal=0,this._valTrunc=!1,this.decoder.reset(),o=r+1;else if(s!==void 0){++this._fields;let p,f=this._keyTrunc;if(s>o?p=this._key+=this.decoder.write(e.toString("binary",o,s)):p=this._key,this._hitLimit=!1,this._checkingBytes=!0,this._key="",this._bytesKey=0,this._keyTrunc=!1,this.decoder.reset(),p.length&&this.boy.emit("field",C1e(p,"binary",this.charset),"",f,!1),o=s+1,this._fields===this.fieldsLimit)return t()}else this._hitLimit?(a>o&&(this._key+=this.decoder.write(e.toString("binary",o,a))),o=a,(this._bytesKey=this._key.length)===this.fieldNameSizeLimit&&(this._checkingBytes=!1,this._keyTrunc=!0)):(oo&&(this._val+=this.decoder.write(e.toString("binary",o,s))),this.boy.emit("field",C1e(this._key,"binary",this.charset),C1e(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc),this._state="key",this._hitLimit=!1,this._checkingBytes=!0,this._key="",this._bytesKey=0,this._keyTrunc=!1,this.decoder.reset(),o=s+1,this._fields===this.fieldsLimit)return t()}else this._hitLimit?(a>o&&(this._val+=this.decoder.write(e.toString("binary",o,a))),o=a,(this._val===""&&this.fieldSizeLimit===0||(this._bytesVal=this._val.length)===this.fieldSizeLimit)&&(this._checkingBytes=!1,this._valTrunc=!0)):(o0?this.boy.emit("field",C1e(this._key,"binary",this.charset),"",this._keyTrunc,!1):this._state==="val"&&this.boy.emit("field",C1e(this._key,"binary",this.charset),C1e(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc),this.boy._done=!0,this.boy.emit("finish"))};gSn.exports=nlt});var fSn=z(($Uc,y3e)=>{"use strict";var Zzt=Dt("node:stream").Writable,{inherits:fco}=Dt("node:util"),Ico=Nzt(),dSn=cSn(),pSn=ASn(),Cco=xzt();function Fj(e){if(!(this instanceof Fj))return new Fj(e);if(typeof e!="object")throw new TypeError("Busboy expected an options-Object.");if(typeof e.headers!="object")throw new TypeError("Busboy expected an options-Object with headers-attribute.");if(typeof e.headers["content-type"]!="string")throw new TypeError("Missing Content-Type-header.");let{headers:t,...r}=e;this.opts={autoDestroy:!1,...r},Zzt.call(this,this.opts),this._done=!1,this._parser=this.getParserByHeaders(t),this._finished=!1}fco(Fj,Zzt);Fj.prototype.emit=function(e){if(e==="finish"){if(this._done){if(this._finished)return}else{this._parser?.end();return}this._finished=!0}Zzt.prototype.emit.apply(this,arguments)};Fj.prototype.getParserByHeaders=function(e){let t=Cco(e["content-type"]),r={defCharset:this.opts.defCharset,fileHwm:this.opts.fileHwm,headers:e,highWaterMark:this.opts.highWaterMark,isPartAFile:this.opts.isPartAFile,limits:this.opts.limits,parsedConType:t,preservePath:this.opts.preservePath};if(dSn.detect.test(t[0]))return new dSn(this,r);if(pSn.detect.test(t[0]))return new pSn(this,r);throw new Error("Unsupported Content-Type.")};Fj.prototype._write=function(e,t,r){this._parser.write(e,r)};y3e.exports=Fj;y3e.exports.default=Fj;y3e.exports.Busboy=Fj;y3e.exports.Dicer=Ico});var nie=z((eKc,ESn)=>{"use strict";var{MessageChannel:mco,receiveMessageOnPort:hco}=Dt("worker_threads"),ISn=["GET","HEAD","POST"],_co=new Set(ISn),yco=[101,204,205,304],CSn=[301,302,303,307,308],bco=new Set(CSn),mSn=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","5060","5061","6000","6566","6665","6666","6667","6668","6669","6697","10080"],Eco=new Set(mSn),hSn=["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],Bco=new Set(hSn),vco=["follow","manual","error"],_Sn=["GET","HEAD","OPTIONS","TRACE"],Sco=new Set(_Sn),wco=["navigate","same-origin","no-cors","cors"],Tco=["omit","same-origin","include"],Nco=["default","no-store","reload","no-cache","force-cache","only-if-cached"],Rco=["content-encoding","content-language","content-location","content-type","content-length"],Dco=["half"],ySn=["CONNECT","TRACE","TRACK"],xco=new Set(ySn),bSn=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],kco=new Set(bSn),Gco=globalThis.DOMException??(()=>{try{atob("~")}catch(e){return Object.getPrototypeOf(e).constructor}})(),m1e,Fco=globalThis.structuredClone??function(t,r=void 0){if(arguments.length===0)throw new TypeError("missing argument");return m1e||(m1e=new mco),m1e.port1.unref(),m1e.port2.unref(),m1e.port1.postMessage(t,r?.transfer),hco(m1e.port2).message};ESn.exports={DOMException:Gco,structuredClone:Fco,subresource:bSn,forbiddenMethods:ySn,requestBodyHeader:Rco,referrerPolicy:hSn,requestRedirect:vco,requestMode:wco,requestCredentials:Tco,requestCache:Nco,redirectStatus:CSn,corsSafeListedMethods:ISn,nullBodyStatus:yco,safeMethods:_Sn,badPorts:mSn,requestDuplex:Dco,subresourceSet:kco,badPortsSet:Eco,redirectStatusSet:bco,corsSafeListedMethodsSet:_co,safeMethodsSet:Sco,forbiddenMethodsSet:xco,referrerPolicySet:Bco}});var h1e=z((tKc,BSn)=>{"use strict";var Lzt=Symbol.for("undici.globalOrigin.1");function Zco(){return globalThis[Lzt]}function Lco(e){if(e===void 0){Object.defineProperty(globalThis,Lzt,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let t=new URL(e);if(t.protocol!=="http:"&&t.protocol!=="https:")throw new TypeError(`Only http & https urls are allowed, received ${t.protocol}`);Object.defineProperty(globalThis,Lzt,{value:t,writable:!0,enumerable:!1,configurable:!1})}BSn.exports={getGlobalOrigin:Zco,setGlobalOrigin:Lco}});var QO=z((rKc,xSn)=>{"use strict";var{redirectStatusSet:Vco,referrerPolicySet:Wco,badPortsSet:Pco}=nie(),{getGlobalOrigin:Oco}=h1e(),{performance:Mco}=Dt("perf_hooks"),{isBlobLike:Qco,toUSVString:Yco,ReadableStreamFrom:Hco}=Ih(),_1e=Dt("assert"),{isUint8Array:Xco}=Dt("util/types"),vSn=[],ilt;try{ilt=Dt("crypto");let e=["sha256","sha384","sha512"];vSn=ilt.getHashes().filter(t=>e.includes(t))}catch{}function SSn(e){let t=e.urlList,r=t.length;return r===0?null:t[r-1].toString()}function Jco(e,t){if(!Vco.has(e.status))return null;let r=e.headersList.get("location");return r!==null&&TSn(r)&&(r=new URL(r,SSn(e))),r&&!r.hash&&(r.hash=t),r}function E3e(e){return e.urlList[e.urlList.length-1]}function Uco(e){let t=E3e(e);return DSn(t)&&Pco.has(t.port)?"blocked":"allowed"}function Kco(e){return e instanceof Error||e?.constructor?.name==="Error"||e?.constructor?.name==="DOMException"}function jco(e){for(let t=0;t=32&&r<=126||r>=128&&r<=255))return!1}return!0}function zco(e){switch(e){case 34:case 40:case 41:case 44:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 123:case 125:return!1;default:return e>=33&&e<=126}}function wSn(e){if(e.length===0)return!1;for(let t=0;t0)for(let o=s.length;o!==0;o--){let g=s[o-1].trim();if(Wco.has(g)){a=g;break}}a!==""&&(e.referrerPolicy=a)}function elo(){return"allowed"}function tlo(){return"success"}function rlo(){return"success"}function nlo(e){let t=null;t=e.mode,e.headersList.set("sec-fetch-mode",t)}function ilo(e){let t=e.origin;if(e.responseTainting==="cors"||e.mode==="websocket")t&&e.headersList.append("origin",t);else if(e.method!=="GET"&&e.method!=="HEAD"){switch(e.referrerPolicy){case"no-referrer":t=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":e.origin&&Pzt(e.origin)&&!Pzt(E3e(e))&&(t=null);break;case"same-origin":slt(e,E3e(e))||(t=null);break;default:}t&&e.headersList.append("origin",t)}}function slo(e){return Mco.now()}function olo(e){return{startTime:e.startTime??0,redirectStartTime:0,redirectEndTime:0,postRedirectStartTime:e.startTime??0,finalServiceWorkerStartTime:0,finalNetworkResponseStartTime:0,finalNetworkRequestStartTime:0,endTime:0,encodedBodySize:0,decodedBodySize:0,finalConnectionTimingInfo:null}}function alo(){return{referrerPolicy:"strict-origin-when-cross-origin"}}function clo(e){return{referrerPolicy:e.referrerPolicy}}function llo(e){let t=e.referrerPolicy;_1e(t);let r=null;if(e.referrer==="client"){let p=Oco();if(!p||p.origin==="null")return"no-referrer";r=new URL(p)}else e.referrer instanceof URL&&(r=e.referrer);let s=Vzt(r),a=Vzt(r,!0);s.toString().length>4096&&(s=a);let o=slt(e,s),g=b3e(s)&&!b3e(e.url);switch(t){case"origin":return a??Vzt(r,!0);case"unsafe-url":return s;case"same-origin":return o?a:"no-referrer";case"origin-when-cross-origin":return o?s:a;case"strict-origin-when-cross-origin":{let p=E3e(e);return slt(s,p)?s:b3e(s)&&!b3e(p)?"no-referrer":a}case"strict-origin":case"no-referrer-when-downgrade":default:return g?"no-referrer":a}}function Vzt(e,t){return _1e(e instanceof URL),e.protocol==="file:"||e.protocol==="about:"||e.protocol==="blank:"?"no-referrer":(e.username="",e.password="",e.hash="",t&&(e.pathname="",e.search=""),e)}function b3e(e){if(!(e instanceof URL))return!1;if(e.href==="about:blank"||e.href==="about:srcdoc"||e.protocol==="data:"||e.protocol==="file:")return!0;return t(e.origin);function t(r){if(r==null||r==="null")return!1;let s=new URL(r);return!!(s.protocol==="https:"||s.protocol==="wss:"||/^127(?:\.[0-9]+){0,2}\.[0-9]+$|^\[(?:0*:)*?:?0*1\]$/.test(s.hostname)||s.hostname==="localhost"||s.hostname.includes("localhost.")||s.hostname.endsWith(".localhost"))}}function ulo(e,t){if(ilt===void 0)return!0;let r=NSn(t);if(r==="no metadata"||r.length===0)return!0;let s=Alo(r),a=dlo(r,s);for(let o of a){let g=o.algo,p=o.hash,f=ilt.createHash(g).update(e).digest("base64");if(f[f.length-1]==="="&&(f[f.length-2]==="="?f=f.slice(0,-2):f=f.slice(0,-1)),plo(f,p))return!0}return!1}var glo=/(?sha256|sha384|sha512)-((?[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\s|$)( +[!-~]*)?)?/i;function NSn(e){let t=[],r=!0;for(let s of e.split(" ")){r=!1;let a=glo.exec(s);if(a===null||a.groups===void 0||a.groups.algo===void 0)continue;let o=a.groups.algo.toLowerCase();vSn.includes(o)&&t.push(a.groups)}return r===!0?"no metadata":t}function Alo(e){let t=e[0].algo;if(t[3]==="5")return t;for(let r=1;r{e=s,t=a}),resolve:e,reject:t}}function Clo(e){return e.controller.state==="aborted"}function mlo(e){return e.controller.state==="aborted"||e.controller.state==="terminated"}var Ozt={delete:"DELETE",DELETE:"DELETE",get:"GET",GET:"GET",head:"HEAD",HEAD:"HEAD",options:"OPTIONS",OPTIONS:"OPTIONS",post:"POST",POST:"POST",put:"PUT",PUT:"PUT"};Object.setPrototypeOf(Ozt,null);function hlo(e){return Ozt[e.toLowerCase()]??e}function _lo(e){let t=JSON.stringify(e);if(t===void 0)throw new TypeError("Value is not JSON serializable");return _1e(typeof t=="string"),t}var ylo=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function blo(e,t,r){let s={index:0,kind:r,target:e},a={next(){if(Object.getPrototypeOf(this)!==a)throw new TypeError(`'next' called on an object that does not implement interface ${t} Iterator.`);let{index:o,kind:g,target:p}=s,f=p(),m=f.length;if(o>=m)return{value:void 0,done:!0};let y=f[o];return s.index=o+1,Elo(y,g)},[Symbol.toStringTag]:`${t} Iterator`};return Object.setPrototypeOf(a,ylo),Object.setPrototypeOf({},a)}function Elo(e,t){let r;switch(t){case"key":{r=e[0];break}case"value":{r=e[1];break}case"key+value":{r=e;break}}return{value:r,done:!1}}async function Blo(e,t,r){let s=t,a=r,o;try{o=e.stream.getReader()}catch(g){a(g);return}try{let g=await RSn(o);s(g)}catch(g){a(g)}}var Wzt=globalThis.ReadableStream;function vlo(e){return Wzt||(Wzt=Dt("stream/web").ReadableStream),e instanceof Wzt||e[Symbol.toStringTag]==="ReadableStream"&&typeof e.tee=="function"}var Slo=65535;function wlo(e){return e.lengtht+String.fromCharCode(r),"")}function Tlo(e){try{e.close()}catch(t){if(!t.message.includes("Controller is already closed"))throw t}}function Nlo(e){for(let t=0;tObject.prototype.hasOwnProperty.call(e,t));xSn.exports={isAborted:Clo,isCancelled:mlo,createDeferredPromise:Ilo,ReadableStreamFrom:Hco,toUSVString:Yco,tryUpgradeRequestToAPotentiallyTrustworthyURL:flo,coarsenedSharedCurrentTime:slo,determineRequestsReferrer:llo,makePolicyContainer:alo,clonePolicyContainer:clo,appendFetchMetadata:nlo,appendRequestOriginHeader:ilo,TAOCheck:rlo,corsCheck:tlo,crossOriginResourcePolicyCheck:elo,createOpaqueTimingInfo:olo,setRequestReferrerPolicyOnRedirect:$co,isValidHTTPToken:wSn,requestBadPort:Uco,requestCurrentURL:E3e,responseURL:SSn,responseLocationURL:Jco,isBlobLike:Qco,isURLPotentiallyTrustworthy:b3e,isValidReasonPhrase:jco,sameOrigin:slt,normalizeMethod:hlo,serializeJavascriptValueToJSONString:_lo,makeIterator:blo,isValidHeaderName:qco,isValidHeaderValue:TSn,hasOwn:Dlo,isErrorLike:Kco,fullyReadBody:Blo,bytesMatch:ulo,isReadableStreamLike:vlo,readableStreamClose:Tlo,isomorphicEncode:Nlo,isomorphicDecode:wlo,urlIsLocal:Rlo,urlHasHttpsScheme:Pzt,urlIsHttpHttpsScheme:DSn,readAllBytes:RSn,normalizeMethodRecord:Ozt,parseMetadata:NSn}});var Zj=z((nKc,kSn)=>{"use strict";kSn.exports={kUrl:Symbol("url"),kHeaders:Symbol("headers"),kSignal:Symbol("signal"),kState:Symbol("state"),kGuard:Symbol("guard"),kRealm:Symbol("realm")}});var SF=z((iKc,FSn)=>{"use strict";var{types:KJ}=Dt("util"),{hasOwn:GSn,toUSVString:xlo}=QO(),ju={};ju.converters={};ju.util={};ju.errors={};ju.errors.exception=function(e){return new TypeError(`${e.header}: ${e.message}`)};ju.errors.conversionFailed=function(e){let t=e.types.length===1?"":" one of",r=`${e.argument} could not be converted to${t}: ${e.types.join(", ")}.`;return ju.errors.exception({header:e.prefix,message:r})};ju.errors.invalidArgument=function(e){return ju.errors.exception({header:e.prefix,message:`"${e.value}" is an invalid ${e.type}.`})};ju.brandCheck=function(e,t,r=void 0){if(r?.strict!==!1&&!(e instanceof t))throw new TypeError("Illegal invocation");return e?.[Symbol.toStringTag]===t.prototype[Symbol.toStringTag]};ju.argumentLengthCheck=function({length:e},t,r){if(ea)throw ju.errors.exception({header:"Integer conversion",message:`Value must be between ${o}-${a}, got ${g}.`});return g}return!Number.isNaN(g)&&s.clamp===!0?(g=Math.min(Math.max(g,o),a),Math.floor(g)%2===0?g=Math.floor(g):g=Math.ceil(g),g):Number.isNaN(g)||g===0&&Object.is(0,g)||g===Number.POSITIVE_INFINITY||g===Number.NEGATIVE_INFINITY?0:(g=ju.util.IntegerPart(g),g=g%Math.pow(2,t),r==="signed"&&g>=Math.pow(2,t)-1?g-Math.pow(2,t):g)};ju.util.IntegerPart=function(e){let t=Math.floor(Math.abs(e));return e<0?-1*t:t};ju.sequenceConverter=function(e){return t=>{if(ju.util.Type(t)!=="Object")throw ju.errors.exception({header:"Sequence",message:`Value of type ${ju.util.Type(t)} is not an Object.`});let r=t?.[Symbol.iterator]?.(),s=[];if(r===void 0||typeof r.next!="function")throw ju.errors.exception({header:"Sequence",message:"Object is not an iterator."});for(;;){let{done:a,value:o}=r.next();if(a)break;s.push(e(o))}return s}};ju.recordConverter=function(e,t){return r=>{if(ju.util.Type(r)!=="Object")throw ju.errors.exception({header:"Record",message:`Value of type ${ju.util.Type(r)} is not an Object.`});let s={};if(!KJ.isProxy(r)){let o=Object.keys(r);for(let g of o){let p=e(g),f=t(r[g]);s[p]=f}return s}let a=Reflect.ownKeys(r);for(let o of a)if(Reflect.getOwnPropertyDescriptor(r,o)?.enumerable){let p=e(o),f=t(r[o]);s[p]=f}return s}};ju.interfaceConverter=function(e){return(t,r={})=>{if(r.strict!==!1&&!(t instanceof e))throw ju.errors.exception({header:e.name,message:`Expected ${t} to be an instance of ${e.name}.`});return t}};ju.dictionaryConverter=function(e){return t=>{let r=ju.util.Type(t),s={};if(r==="Null"||r==="Undefined")return s;if(r!=="Object")throw ju.errors.exception({header:"Dictionary",message:`Expected ${t} to be one of: Null, Undefined, Object.`});for(let a of e){let{key:o,defaultValue:g,required:p,converter:f}=a;if(p===!0&&!GSn(t,o))throw ju.errors.exception({header:"Dictionary",message:`Missing required key "${o}".`});let m=t[o],y=GSn(a,"defaultValue");if(y&&m!==null&&(m=m??g),p||y||m!==void 0){if(m=f(m),a.allowedValues&&!a.allowedValues.includes(m))throw ju.errors.exception({header:"Dictionary",message:`${m} is not an accepted type. Expected one of ${a.allowedValues.join(", ")}.`});s[o]=m}}return s}};ju.nullableConverter=function(e){return t=>t===null?t:e(t)};ju.converters.DOMString=function(e,t={}){if(e===null&&t.legacyNullToEmptyString)return"";if(typeof e=="symbol")throw new TypeError("Could not convert argument of type symbol to string.");return String(e)};ju.converters.ByteString=function(e){let t=ju.converters.DOMString(e);for(let r=0;r255)throw new TypeError(`Cannot convert argument to a ByteString because the character at index ${r} has a value of ${t.charCodeAt(r)} which is greater than 255.`);return t};ju.converters.USVString=xlo;ju.converters.boolean=function(e){return!!e};ju.converters.any=function(e){return e};ju.converters["long long"]=function(e){return ju.util.ConvertToInt(e,64,"signed")};ju.converters["unsigned long long"]=function(e){return ju.util.ConvertToInt(e,64,"unsigned")};ju.converters["unsigned long"]=function(e){return ju.util.ConvertToInt(e,32,"unsigned")};ju.converters["unsigned short"]=function(e,t){return ju.util.ConvertToInt(e,16,"unsigned",t)};ju.converters.ArrayBuffer=function(e,t={}){if(ju.util.Type(e)!=="Object"||!KJ.isAnyArrayBuffer(e))throw ju.errors.conversionFailed({prefix:`${e}`,argument:`${e}`,types:["ArrayBuffer"]});if(t.allowShared===!1&&KJ.isSharedArrayBuffer(e))throw ju.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});return e};ju.converters.TypedArray=function(e,t,r={}){if(ju.util.Type(e)!=="Object"||!KJ.isTypedArray(e)||e.constructor.name!==t.name)throw ju.errors.conversionFailed({prefix:`${t.name}`,argument:`${e}`,types:[t.name]});if(r.allowShared===!1&&KJ.isSharedArrayBuffer(e.buffer))throw ju.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});return e};ju.converters.DataView=function(e,t={}){if(ju.util.Type(e)!=="Object"||!KJ.isDataView(e))throw ju.errors.exception({header:"DataView",message:"Object is not a DataView."});if(t.allowShared===!1&&KJ.isSharedArrayBuffer(e.buffer))throw ju.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});return e};ju.converters.BufferSource=function(e,t={}){if(KJ.isAnyArrayBuffer(e))return ju.converters.ArrayBuffer(e,t);if(KJ.isTypedArray(e))return ju.converters.TypedArray(e,e.constructor);if(KJ.isDataView(e))return ju.converters.DataView(e,t);throw new TypeError(`Could not convert ${e} to a BufferSource.`)};ju.converters["sequence"]=ju.sequenceConverter(ju.converters.ByteString);ju.converters["sequence>"]=ju.sequenceConverter(ju.converters["sequence"]);ju.converters["record"]=ju.recordConverter(ju.converters.ByteString,ju.converters.ByteString);FSn.exports={webidl:ju}});var LH=z((sKc,OSn)=>{var alt=Dt("assert"),{atob:klo}=Dt("buffer"),{isomorphicDecode:Glo}=QO(),Flo=new TextEncoder,olt=/^[!#$%&'*+-.^_|~A-Za-z0-9]+$/,Zlo=/(\u000A|\u000D|\u0009|\u0020)/,Llo=/[\u0009|\u0020-\u007E|\u0080-\u00FF]/;function Vlo(e){alt(e.protocol==="data:");let t=VSn(e,!0);t=t.slice(5);let r={position:0},s=y1e(",",t,r),a=s.length;if(s=Mlo(s,!0,!0),r.position>=t.length)return"failure";r.position++;let o=t.slice(a+1),g=WSn(o);if(/;(\u0020){0,}base64$/i.test(s)){let f=Glo(g);if(g=Plo(f),g==="failure")return"failure";s=s.slice(0,-6),s=s.replace(/(\u0020)+$/,""),s=s.slice(0,-1)}s.startsWith(";")&&(s="text/plain"+s);let p=Qzt(s);return p==="failure"&&(p=Qzt("text/plain;charset=US-ASCII")),{mimeType:p,body:g}}function VSn(e,t=!1){if(!t)return e.href;let r=e.href,s=e.hash.length;return s===0?r:r.substring(0,r.length-s)}function clt(e,t,r){let s="";for(;r.positione.length)return"failure";t.position++;let s=y1e(";",e,t);if(s=Mzt(s,!1,!0),s.length===0||!olt.test(s))return"failure";let a=r.toLowerCase(),o=s.toLowerCase(),g={type:a,subtype:o,parameters:new Map,essence:`${a}/${o}`};for(;t.positionZlo.test(m),e,t);let p=clt(m=>m!==";"&&m!=="=",e,t);if(p=p.toLowerCase(),t.positione.length)break;let f=null;if(e[t.position]==='"')f=PSn(e,t,!0),y1e(";",e,t);else if(f=y1e(";",e,t),f=Mzt(f,!1,!0),f.length===0)continue;p.length!==0&&olt.test(p)&&(f.length===0||Llo.test(f))&&!g.parameters.has(p)&&g.parameters.set(p,f)}return g}function Plo(e){if(e=e.replace(/[\u0009\u000A\u000C\u000D\u0020]/g,""),e.length%4===0&&(e=e.replace(/=?=$/,"")),e.length%4===1||/[^+/0-9A-Za-z]/.test(e))return"failure";let t=klo(e),r=new Uint8Array(t.length);for(let s=0;sg!=='"'&&g!=="\\",e,t),!(t.position>=e.length);){let o=e[t.position];if(t.position++,o==="\\"){if(t.position>=e.length){a+="\\";break}a+=e[t.position],t.position++}else{alt(o==='"');break}}return r?a:e.slice(s,t.position)}function Olo(e){alt(e!=="failure");let{parameters:t,essence:r}=e,s=r;for(let[a,o]of t.entries())s+=";",s+=a,s+="=",olt.test(o)||(o=o.replace(/(\\|")/g,"\\$1"),o='"'+o,o+='"'),s+=o;return s}function ZSn(e){return e==="\r"||e===` -`||e===" "||e===" "}function Mzt(e,t=!0,r=!0){let s=0,a=e.length-1;if(t)for(;s0&&ZSn(e[a]);a--);return e.slice(s,a+1)}function LSn(e){return e==="\r"||e===` -`||e===" "||e==="\f"||e===" "}function Mlo(e,t=!0,r=!0){let s=0,a=e.length-1;if(t)for(;s0&&LSn(e[a]);a--);return e.slice(s,a+1)}OSn.exports={dataURLProcessor:Vlo,URLSerializer:VSn,collectASequenceOfCodePoints:clt,collectASequenceOfCodePointsFast:y1e,stringPercentDecode:WSn,parseMIMEType:Qzt,collectAnHTTPQuotedString:PSn,serializeAMimeType:Olo}});var llt=z((oKc,XSn)=>{"use strict";var{Blob:YSn,File:MSn}=Dt("buffer"),{types:Yzt}=Dt("util"),{kState:wW}=Zj(),{isBlobLike:HSn}=QO(),{webidl:E0}=SF(),{parseMIMEType:Qlo,serializeAMimeType:Ylo}=LH(),{kEnumerableProperty:QSn}=Ih(),Hlo=new TextEncoder,B3e=class e extends YSn{constructor(t,r,s={}){E0.argumentLengthCheck(arguments,2,{header:"File constructor"}),t=E0.converters["sequence"](t),r=E0.converters.USVString(r),s=E0.converters.FilePropertyBag(s);let a=r,o=s.type,g;e:{if(o){if(o=Qlo(o),o==="failure"){o="";break e}o=Ylo(o).toLowerCase()}g=s.lastModified}super(Xlo(t,s),{type:o}),this[wW]={name:a,lastModified:g,type:o}}get name(){return E0.brandCheck(this,e),this[wW].name}get lastModified(){return E0.brandCheck(this,e),this[wW].lastModified}get type(){return E0.brandCheck(this,e),this[wW].type}},Hzt=class e{constructor(t,r,s={}){let a=r,o=s.type,g=s.lastModified??Date.now();this[wW]={blobLike:t,name:a,type:o,lastModified:g}}stream(...t){return E0.brandCheck(this,e),this[wW].blobLike.stream(...t)}arrayBuffer(...t){return E0.brandCheck(this,e),this[wW].blobLike.arrayBuffer(...t)}slice(...t){return E0.brandCheck(this,e),this[wW].blobLike.slice(...t)}text(...t){return E0.brandCheck(this,e),this[wW].blobLike.text(...t)}get size(){return E0.brandCheck(this,e),this[wW].blobLike.size}get type(){return E0.brandCheck(this,e),this[wW].blobLike.type}get name(){return E0.brandCheck(this,e),this[wW].name}get lastModified(){return E0.brandCheck(this,e),this[wW].lastModified}get[Symbol.toStringTag](){return"File"}};Object.defineProperties(B3e.prototype,{[Symbol.toStringTag]:{value:"File",configurable:!0},name:QSn,lastModified:QSn});E0.converters.Blob=E0.interfaceConverter(YSn);E0.converters.BlobPart=function(e,t){if(E0.util.Type(e)==="Object"){if(HSn(e))return E0.converters.Blob(e,{strict:!1});if(ArrayBuffer.isView(e)||Yzt.isAnyArrayBuffer(e))return E0.converters.BufferSource(e,t)}return E0.converters.USVString(e,t)};E0.converters["sequence"]=E0.sequenceConverter(E0.converters.BlobPart);E0.converters.FilePropertyBag=E0.dictionaryConverter([{key:"lastModified",converter:E0.converters["long long"],get defaultValue(){return Date.now()}},{key:"type",converter:E0.converters.DOMString,defaultValue:""},{key:"endings",converter:e=>(e=E0.converters.DOMString(e),e=e.toLowerCase(),e!=="native"&&(e="transparent"),e),defaultValue:"transparent"}]);function Xlo(e,t){let r=[];for(let s of e)if(typeof s=="string"){let a=s;t.endings==="native"&&(a=Jlo(a)),r.push(Hlo.encode(a))}else Yzt.isAnyArrayBuffer(s)||Yzt.isTypedArray(s)?s.buffer?r.push(new Uint8Array(s.buffer,s.byteOffset,s.byteLength)):r.push(new Uint8Array(s)):HSn(s)&&r.push(s);return r}function Jlo(e){let t=` +`,"%0b":"\v","%0B":"\v","%0c":"\f","%0C":"\f","%0d":"\r","%0D":"\r","%0e":"","%0E":"","%0f":"","%0F":"","%10":"","%11":"","%12":"","%13":"","%14":"","%15":"","%16":"","%17":"","%18":"","%19":"","%1a":"","%1A":"","%1b":"\x1B","%1B":"\x1B","%1c":"","%1C":"","%1d":"","%1D":"","%1e":"","%1E":"","%1f":"","%1F":"","%20":" ","%21":"!","%22":'"',"%23":"#","%24":"$","%25":"%","%26":"&","%27":"'","%28":"(","%29":")","%2a":"*","%2A":"*","%2b":"+","%2B":"+","%2c":",","%2C":",","%2d":"-","%2D":"-","%2e":".","%2E":".","%2f":"/","%2F":"/","%30":"0","%31":"1","%32":"2","%33":"3","%34":"4","%35":"5","%36":"6","%37":"7","%38":"8","%39":"9","%3a":":","%3A":":","%3b":";","%3B":";","%3c":"<","%3C":"<","%3d":"=","%3D":"=","%3e":">","%3E":">","%3f":"?","%3F":"?","%40":"@","%41":"A","%42":"B","%43":"C","%44":"D","%45":"E","%46":"F","%47":"G","%48":"H","%49":"I","%4a":"J","%4A":"J","%4b":"K","%4B":"K","%4c":"L","%4C":"L","%4d":"M","%4D":"M","%4e":"N","%4E":"N","%4f":"O","%4F":"O","%50":"P","%51":"Q","%52":"R","%53":"S","%54":"T","%55":"U","%56":"V","%57":"W","%58":"X","%59":"Y","%5a":"Z","%5A":"Z","%5b":"[","%5B":"[","%5c":"\\","%5C":"\\","%5d":"]","%5D":"]","%5e":"^","%5E":"^","%5f":"_","%5F":"_","%60":"`","%61":"a","%62":"b","%63":"c","%64":"d","%65":"e","%66":"f","%67":"g","%68":"h","%69":"i","%6a":"j","%6A":"j","%6b":"k","%6B":"k","%6c":"l","%6C":"l","%6d":"m","%6D":"m","%6e":"n","%6E":"n","%6f":"o","%6F":"o","%70":"p","%71":"q","%72":"r","%73":"s","%74":"t","%75":"u","%76":"v","%77":"w","%78":"x","%79":"y","%7a":"z","%7A":"z","%7b":"{","%7B":"{","%7c":"|","%7C":"|","%7d":"}","%7D":"}","%7e":"~","%7E":"~","%7f":"\x7F","%7F":"\x7F","%80":"\x80","%81":"\x81","%82":"\x82","%83":"\x83","%84":"\x84","%85":"\x85","%86":"\x86","%87":"\x87","%88":"\x88","%89":"\x89","%8a":"\x8A","%8A":"\x8A","%8b":"\x8B","%8B":"\x8B","%8c":"\x8C","%8C":"\x8C","%8d":"\x8D","%8D":"\x8D","%8e":"\x8E","%8E":"\x8E","%8f":"\x8F","%8F":"\x8F","%90":"\x90","%91":"\x91","%92":"\x92","%93":"\x93","%94":"\x94","%95":"\x95","%96":"\x96","%97":"\x97","%98":"\x98","%99":"\x99","%9a":"\x9A","%9A":"\x9A","%9b":"\x9B","%9B":"\x9B","%9c":"\x9C","%9C":"\x9C","%9d":"\x9D","%9D":"\x9D","%9e":"\x9E","%9E":"\x9E","%9f":"\x9F","%9F":"\x9F","%a0":"\xA0","%A0":"\xA0","%a1":"\xA1","%A1":"\xA1","%a2":"\xA2","%A2":"\xA2","%a3":"\xA3","%A3":"\xA3","%a4":"\xA4","%A4":"\xA4","%a5":"\xA5","%A5":"\xA5","%a6":"\xA6","%A6":"\xA6","%a7":"\xA7","%A7":"\xA7","%a8":"\xA8","%A8":"\xA8","%a9":"\xA9","%A9":"\xA9","%aa":"\xAA","%Aa":"\xAA","%aA":"\xAA","%AA":"\xAA","%ab":"\xAB","%Ab":"\xAB","%aB":"\xAB","%AB":"\xAB","%ac":"\xAC","%Ac":"\xAC","%aC":"\xAC","%AC":"\xAC","%ad":"\xAD","%Ad":"\xAD","%aD":"\xAD","%AD":"\xAD","%ae":"\xAE","%Ae":"\xAE","%aE":"\xAE","%AE":"\xAE","%af":"\xAF","%Af":"\xAF","%aF":"\xAF","%AF":"\xAF","%b0":"\xB0","%B0":"\xB0","%b1":"\xB1","%B1":"\xB1","%b2":"\xB2","%B2":"\xB2","%b3":"\xB3","%B3":"\xB3","%b4":"\xB4","%B4":"\xB4","%b5":"\xB5","%B5":"\xB5","%b6":"\xB6","%B6":"\xB6","%b7":"\xB7","%B7":"\xB7","%b8":"\xB8","%B8":"\xB8","%b9":"\xB9","%B9":"\xB9","%ba":"\xBA","%Ba":"\xBA","%bA":"\xBA","%BA":"\xBA","%bb":"\xBB","%Bb":"\xBB","%bB":"\xBB","%BB":"\xBB","%bc":"\xBC","%Bc":"\xBC","%bC":"\xBC","%BC":"\xBC","%bd":"\xBD","%Bd":"\xBD","%bD":"\xBD","%BD":"\xBD","%be":"\xBE","%Be":"\xBE","%bE":"\xBE","%BE":"\xBE","%bf":"\xBF","%Bf":"\xBF","%bF":"\xBF","%BF":"\xBF","%c0":"\xC0","%C0":"\xC0","%c1":"\xC1","%C1":"\xC1","%c2":"\xC2","%C2":"\xC2","%c3":"\xC3","%C3":"\xC3","%c4":"\xC4","%C4":"\xC4","%c5":"\xC5","%C5":"\xC5","%c6":"\xC6","%C6":"\xC6","%c7":"\xC7","%C7":"\xC7","%c8":"\xC8","%C8":"\xC8","%c9":"\xC9","%C9":"\xC9","%ca":"\xCA","%Ca":"\xCA","%cA":"\xCA","%CA":"\xCA","%cb":"\xCB","%Cb":"\xCB","%cB":"\xCB","%CB":"\xCB","%cc":"\xCC","%Cc":"\xCC","%cC":"\xCC","%CC":"\xCC","%cd":"\xCD","%Cd":"\xCD","%cD":"\xCD","%CD":"\xCD","%ce":"\xCE","%Ce":"\xCE","%cE":"\xCE","%CE":"\xCE","%cf":"\xCF","%Cf":"\xCF","%cF":"\xCF","%CF":"\xCF","%d0":"\xD0","%D0":"\xD0","%d1":"\xD1","%D1":"\xD1","%d2":"\xD2","%D2":"\xD2","%d3":"\xD3","%D3":"\xD3","%d4":"\xD4","%D4":"\xD4","%d5":"\xD5","%D5":"\xD5","%d6":"\xD6","%D6":"\xD6","%d7":"\xD7","%D7":"\xD7","%d8":"\xD8","%D8":"\xD8","%d9":"\xD9","%D9":"\xD9","%da":"\xDA","%Da":"\xDA","%dA":"\xDA","%DA":"\xDA","%db":"\xDB","%Db":"\xDB","%dB":"\xDB","%DB":"\xDB","%dc":"\xDC","%Dc":"\xDC","%dC":"\xDC","%DC":"\xDC","%dd":"\xDD","%Dd":"\xDD","%dD":"\xDD","%DD":"\xDD","%de":"\xDE","%De":"\xDE","%dE":"\xDE","%DE":"\xDE","%df":"\xDF","%Df":"\xDF","%dF":"\xDF","%DF":"\xDF","%e0":"\xE0","%E0":"\xE0","%e1":"\xE1","%E1":"\xE1","%e2":"\xE2","%E2":"\xE2","%e3":"\xE3","%E3":"\xE3","%e4":"\xE4","%E4":"\xE4","%e5":"\xE5","%E5":"\xE5","%e6":"\xE6","%E6":"\xE6","%e7":"\xE7","%E7":"\xE7","%e8":"\xE8","%E8":"\xE8","%e9":"\xE9","%E9":"\xE9","%ea":"\xEA","%Ea":"\xEA","%eA":"\xEA","%EA":"\xEA","%eb":"\xEB","%Eb":"\xEB","%eB":"\xEB","%EB":"\xEB","%ec":"\xEC","%Ec":"\xEC","%eC":"\xEC","%EC":"\xEC","%ed":"\xED","%Ed":"\xED","%eD":"\xED","%ED":"\xED","%ee":"\xEE","%Ee":"\xEE","%eE":"\xEE","%EE":"\xEE","%ef":"\xEF","%Ef":"\xEF","%eF":"\xEF","%EF":"\xEF","%f0":"\xF0","%F0":"\xF0","%f1":"\xF1","%F1":"\xF1","%f2":"\xF2","%F2":"\xF2","%f3":"\xF3","%F3":"\xF3","%f4":"\xF4","%F4":"\xF4","%f5":"\xF5","%F5":"\xF5","%f6":"\xF6","%F6":"\xF6","%f7":"\xF7","%F7":"\xF7","%f8":"\xF8","%F8":"\xF8","%f9":"\xF9","%F9":"\xF9","%fa":"\xFA","%Fa":"\xFA","%fA":"\xFA","%FA":"\xFA","%fb":"\xFB","%Fb":"\xFB","%fB":"\xFB","%FB":"\xFB","%fc":"\xFC","%Fc":"\xFC","%fC":"\xFC","%FC":"\xFC","%fd":"\xFD","%Fd":"\xFD","%fD":"\xFD","%FD":"\xFD","%fe":"\xFE","%Fe":"\xFE","%fE":"\xFE","%FE":"\xFE","%ff":"\xFF","%Ff":"\xFF","%fF":"\xFF","%FF":"\xFF"};function cSn(e){return dco[e]}var nlt=0,lSn=1,Gzt=2,uSn=3;function pco(e){let t=[],r=nlt,s="",a=!1,o=!1,g=0,p="",f=e.length;for(var m=0;m{"use strict";ASn.exports=function(t){if(typeof t!="string")return"";for(var r=t.length-1;r>=0;--r)switch(t.charCodeAt(r)){case 47:case 92:return t=t.slice(r+1),t===".."||t==="."?"":t}return t===".."||t==="."?"":t}});var CSn=z((pKc,ISn)=>{"use strict";var{Readable:fSn}=xt("node:stream"),{inherits:fco}=xt("node:util"),Ico=xzt(),pSn=Fzt(),Cco=tlt(),mco=dSn(),Ide=elt(),hco=/^boundary$/i,_co=/^form-data$/i,yco=/^charset$/i,bco=/^filename$/i,Eco=/^name$/i;ilt.detect=/^multipart\/form-data/i;function ilt(e,t){let r,s,a=this,o,g=t.limits,p=t.isPartAFile||((x,et,Ue)=>et==="application/octet-stream"||Ue!==void 0),f=t.parsedConType||[],m=t.defCharset||"utf8",y=t.preservePath,B={highWaterMark:t.fileHwm};for(r=0,s=f.length;rU)return a.parser.removeListener("part",x),a.parser.on("part",m1e),e.hitPartsLimit=!0,e.emit("partsLimit"),m1e(et);if(be){let Ue=be;Ue.emit("end"),Ue.removeAllListeners("end")}et.on("header",function(Ue){let Je,Xe,ft,Gt,er,Ur,Ot=0;if(Ue["content-type"]&&(ft=pSn(Ue["content-type"][0]),ft[0])){for(Je=ft[0].toLowerCase(),r=0,s=ft.length;rT){let $r=T-Ot+Fr.length;$r>0&&or.push(Fr.slice(0,$r)),or.truncated=!0,or.bytesRead=T,et.removeAllListeners("data"),or.emit("limit");return}else or.push(Fr)||(a._pause=!0);or.bytesRead=Ot},Ar=function(){he=void 0,or.push(null)}}else{if(fe===X)return e.hitFieldsLimit||(e.hitFieldsLimit=!0,e.emit("fieldsLimit")),m1e(et);++fe,++pe;let or="",Fr=!1;be=et,dr=function($r){if((Ot+=$r.length)>k){let Or=k-(Ot-$r.length);or+=$r.toString("binary",0,Or),Fr=!0,et.removeAllListeners("data")}else or+=$r.toString("binary")},Ar=function(){be=void 0,or.length&&(or=Cco(or,"binary",Gt)),e.emit("field",Xe,or,!1,Fr,er,Je),--pe,v()}}et._readableState.sync=!1,et.on("data",dr),et.on("end",Ar)}).on("error",function(Ue){he&&he.emit("error",Ue)})}).on("error",function(x){e.emit("error",x)}).on("finish",function(){Te=!0,v()})}ilt.prototype.write=function(e,t){let r=this.parser.write(e);r&&!this._pause?t():(this._needDrain=!r,this._cb=t)};ilt.prototype.end=function(){let e=this;e.parser.writable?e.parser.end():e._boy._done||process.nextTick(function(){e._boy._done=!0,e._boy.emit("finish")})};function m1e(e){e.resume()}function Zzt(e){fSn.call(this,e),this.bytesRead=0,this.truncated=!1}fco(Zzt,fSn);Zzt.prototype._read=function(e){};ISn.exports=ilt});var hSn=z((fKc,mSn)=>{"use strict";var Bco=/\+/g,vco=[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,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,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,1,1,1,1,1,1,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 Lzt(){this.buffer=void 0}Lzt.prototype.write=function(e){e=e.replace(Bco," ");let t="",r=0,s=0,a=e.length;for(;rs&&(t+=e.substring(s,r),s=r),this.buffer="",++s);return s{"use strict";var Sco=hSn(),h1e=tlt(),Vzt=elt(),wco=/^charset$/i;slt.detect=/^application\/x-www-form-urlencoded/i;function slt(e,t){let r=t.limits,s=t.parsedConType;this.boy=e,this.fieldSizeLimit=Vzt(r,"fieldSize",1*1024*1024),this.fieldNameSizeLimit=Vzt(r,"fieldNameSize",100),this.fieldsLimit=Vzt(r,"fields",1/0);let a;for(var o=0,g=s.length;oo&&(this._key+=this.decoder.write(e.toString("binary",o,r))),this._state="val",this._hitLimit=!1,this._checkingBytes=!0,this._val="",this._bytesVal=0,this._valTrunc=!1,this.decoder.reset(),o=r+1;else if(s!==void 0){++this._fields;let p,f=this._keyTrunc;if(s>o?p=this._key+=this.decoder.write(e.toString("binary",o,s)):p=this._key,this._hitLimit=!1,this._checkingBytes=!0,this._key="",this._bytesKey=0,this._keyTrunc=!1,this.decoder.reset(),p.length&&this.boy.emit("field",h1e(p,"binary",this.charset),"",f,!1),o=s+1,this._fields===this.fieldsLimit)return t()}else this._hitLimit?(a>o&&(this._key+=this.decoder.write(e.toString("binary",o,a))),o=a,(this._bytesKey=this._key.length)===this.fieldNameSizeLimit&&(this._checkingBytes=!1,this._keyTrunc=!0)):(oo&&(this._val+=this.decoder.write(e.toString("binary",o,s))),this.boy.emit("field",h1e(this._key,"binary",this.charset),h1e(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc),this._state="key",this._hitLimit=!1,this._checkingBytes=!0,this._key="",this._bytesKey=0,this._keyTrunc=!1,this.decoder.reset(),o=s+1,this._fields===this.fieldsLimit)return t()}else this._hitLimit?(a>o&&(this._val+=this.decoder.write(e.toString("binary",o,a))),o=a,(this._val===""&&this.fieldSizeLimit===0||(this._bytesVal=this._val.length)===this.fieldSizeLimit)&&(this._checkingBytes=!1,this._valTrunc=!0)):(o0?this.boy.emit("field",h1e(this._key,"binary",this.charset),"",this._keyTrunc,!1):this._state==="val"&&this.boy.emit("field",h1e(this._key,"binary",this.charset),h1e(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc),this.boy._done=!0,this.boy.emit("finish"))};_Sn.exports=slt});var BSn=z((CKc,B3e)=>{"use strict";var Wzt=xt("node:stream").Writable,{inherits:Tco}=xt("node:util"),Nco=xzt(),bSn=CSn(),ESn=ySn(),Rco=Fzt();function Oj(e){if(!(this instanceof Oj))return new Oj(e);if(typeof e!="object")throw new TypeError("Busboy expected an options-Object.");if(typeof e.headers!="object")throw new TypeError("Busboy expected an options-Object with headers-attribute.");if(typeof e.headers["content-type"]!="string")throw new TypeError("Missing Content-Type-header.");let{headers:t,...r}=e;this.opts={autoDestroy:!1,...r},Wzt.call(this,this.opts),this._done=!1,this._parser=this.getParserByHeaders(t),this._finished=!1}Tco(Oj,Wzt);Oj.prototype.emit=function(e){if(e==="finish"){if(this._done){if(this._finished)return}else{this._parser?.end();return}this._finished=!0}Wzt.prototype.emit.apply(this,arguments)};Oj.prototype.getParserByHeaders=function(e){let t=Rco(e["content-type"]),r={defCharset:this.opts.defCharset,fileHwm:this.opts.fileHwm,headers:e,highWaterMark:this.opts.highWaterMark,isPartAFile:this.opts.isPartAFile,limits:this.opts.limits,parsedConType:t,preservePath:this.opts.preservePath};if(bSn.detect.test(t[0]))return new bSn(this,r);if(ESn.detect.test(t[0]))return new ESn(this,r);throw new Error("Unsupported Content-Type.")};Oj.prototype._write=function(e,t,r){this._parser.write(e,r)};B3e.exports=Oj;B3e.exports.default=Oj;B3e.exports.Busboy=Oj;B3e.exports.Dicer=Nco});var sie=z((mKc,xSn)=>{"use strict";var{MessageChannel:Dco,receiveMessageOnPort:xco}=xt("worker_threads"),vSn=["GET","HEAD","POST"],kco=new Set(vSn),Gco=[101,204,205,304],SSn=[301,302,303,307,308],Fco=new Set(SSn),wSn=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","5060","5061","6000","6566","6665","6666","6667","6668","6669","6697","10080"],Zco=new Set(wSn),TSn=["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],Lco=new Set(TSn),Vco=["follow","manual","error"],NSn=["GET","HEAD","OPTIONS","TRACE"],Wco=new Set(NSn),Pco=["navigate","same-origin","no-cors","cors"],Oco=["omit","same-origin","include"],Qco=["default","no-store","reload","no-cache","force-cache","only-if-cached"],Mco=["content-encoding","content-language","content-location","content-type","content-length"],Hco=["half"],RSn=["CONNECT","TRACE","TRACK"],Yco=new Set(RSn),DSn=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],Xco=new Set(DSn),Jco=globalThis.DOMException??(()=>{try{atob("~")}catch(e){return Object.getPrototypeOf(e).constructor}})(),_1e,Uco=globalThis.structuredClone??function(t,r=void 0){if(arguments.length===0)throw new TypeError("missing argument");return _1e||(_1e=new Dco),_1e.port1.unref(),_1e.port2.unref(),_1e.port1.postMessage(t,r?.transfer),xco(_1e.port2).message};xSn.exports={DOMException:Jco,structuredClone:Uco,subresource:DSn,forbiddenMethods:RSn,requestBodyHeader:Mco,referrerPolicy:TSn,requestRedirect:Vco,requestMode:Pco,requestCredentials:Oco,requestCache:Qco,redirectStatus:SSn,corsSafeListedMethods:vSn,nullBodyStatus:Gco,safeMethods:NSn,badPorts:wSn,requestDuplex:Hco,subresourceSet:Xco,badPortsSet:Zco,redirectStatusSet:Fco,corsSafeListedMethodsSet:kco,safeMethodsSet:Wco,forbiddenMethodsSet:Yco,referrerPolicySet:Lco}});var y1e=z((hKc,kSn)=>{"use strict";var Pzt=Symbol.for("undici.globalOrigin.1");function Kco(){return globalThis[Pzt]}function jco(e){if(e===void 0){Object.defineProperty(globalThis,Pzt,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let t=new URL(e);if(t.protocol!=="http:"&&t.protocol!=="https:")throw new TypeError(`Only http & https urls are allowed, received ${t.protocol}`);Object.defineProperty(globalThis,Pzt,{value:t,writable:!0,enumerable:!1,configurable:!1})}kSn.exports={getGlobalOrigin:Kco,setGlobalOrigin:jco}});var XO=z((_Kc,OSn)=>{"use strict";var{redirectStatusSet:zco,referrerPolicySet:qco,badPortsSet:$co}=sie(),{getGlobalOrigin:elo}=y1e(),{performance:tlo}=xt("perf_hooks"),{isBlobLike:rlo,toUSVString:nlo,ReadableStreamFrom:ilo}=Ch(),b1e=xt("assert"),{isUint8Array:slo}=xt("util/types"),GSn=[],olt;try{olt=xt("crypto");let e=["sha256","sha384","sha512"];GSn=olt.getHashes().filter(t=>e.includes(t))}catch{}function FSn(e){let t=e.urlList,r=t.length;return r===0?null:t[r-1].toString()}function olo(e,t){if(!zco.has(e.status))return null;let r=e.headersList.get("location");return r!==null&&LSn(r)&&(r=new URL(r,FSn(e))),r&&!r.hash&&(r.hash=t),r}function S3e(e){return e.urlList[e.urlList.length-1]}function alo(e){let t=S3e(e);return PSn(t)&&$co.has(t.port)?"blocked":"allowed"}function clo(e){return e instanceof Error||e?.constructor?.name==="Error"||e?.constructor?.name==="DOMException"}function llo(e){for(let t=0;t=32&&r<=126||r>=128&&r<=255))return!1}return!0}function ulo(e){switch(e){case 34:case 40:case 41:case 44:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 123:case 125:return!1;default:return e>=33&&e<=126}}function ZSn(e){if(e.length===0)return!1;for(let t=0;t0)for(let o=s.length;o!==0;o--){let g=s[o-1].trim();if(qco.has(g)){a=g;break}}a!==""&&(e.referrerPolicy=a)}function dlo(){return"allowed"}function plo(){return"success"}function flo(){return"success"}function Ilo(e){let t=null;t=e.mode,e.headersList.set("sec-fetch-mode",t)}function Clo(e){let t=e.origin;if(e.responseTainting==="cors"||e.mode==="websocket")t&&e.headersList.append("origin",t);else if(e.method!=="GET"&&e.method!=="HEAD"){switch(e.referrerPolicy){case"no-referrer":t=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":e.origin&&Mzt(e.origin)&&!Mzt(S3e(e))&&(t=null);break;case"same-origin":alt(e,S3e(e))||(t=null);break;default:}t&&e.headersList.append("origin",t)}}function mlo(e){return tlo.now()}function hlo(e){return{startTime:e.startTime??0,redirectStartTime:0,redirectEndTime:0,postRedirectStartTime:e.startTime??0,finalServiceWorkerStartTime:0,finalNetworkResponseStartTime:0,finalNetworkRequestStartTime:0,endTime:0,encodedBodySize:0,decodedBodySize:0,finalConnectionTimingInfo:null}}function _lo(){return{referrerPolicy:"strict-origin-when-cross-origin"}}function ylo(e){return{referrerPolicy:e.referrerPolicy}}function blo(e){let t=e.referrerPolicy;b1e(t);let r=null;if(e.referrer==="client"){let p=elo();if(!p||p.origin==="null")return"no-referrer";r=new URL(p)}else e.referrer instanceof URL&&(r=e.referrer);let s=Ozt(r),a=Ozt(r,!0);s.toString().length>4096&&(s=a);let o=alt(e,s),g=v3e(s)&&!v3e(e.url);switch(t){case"origin":return a??Ozt(r,!0);case"unsafe-url":return s;case"same-origin":return o?a:"no-referrer";case"origin-when-cross-origin":return o?s:a;case"strict-origin-when-cross-origin":{let p=S3e(e);return alt(s,p)?s:v3e(s)&&!v3e(p)?"no-referrer":a}case"strict-origin":case"no-referrer-when-downgrade":default:return g?"no-referrer":a}}function Ozt(e,t){return b1e(e instanceof URL),e.protocol==="file:"||e.protocol==="about:"||e.protocol==="blank:"?"no-referrer":(e.username="",e.password="",e.hash="",t&&(e.pathname="",e.search=""),e)}function v3e(e){if(!(e instanceof URL))return!1;if(e.href==="about:blank"||e.href==="about:srcdoc"||e.protocol==="data:"||e.protocol==="file:")return!0;return t(e.origin);function t(r){if(r==null||r==="null")return!1;let s=new URL(r);return!!(s.protocol==="https:"||s.protocol==="wss:"||/^127(?:\.[0-9]+){0,2}\.[0-9]+$|^\[(?:0*:)*?:?0*1\]$/.test(s.hostname)||s.hostname==="localhost"||s.hostname.includes("localhost.")||s.hostname.endsWith(".localhost"))}}function Elo(e,t){if(olt===void 0)return!0;let r=VSn(t);if(r==="no metadata"||r.length===0)return!0;let s=vlo(r),a=Slo(r,s);for(let o of a){let g=o.algo,p=o.hash,f=olt.createHash(g).update(e).digest("base64");if(f[f.length-1]==="="&&(f[f.length-2]==="="?f=f.slice(0,-2):f=f.slice(0,-1)),wlo(f,p))return!0}return!1}var Blo=/(?sha256|sha384|sha512)-((?[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\s|$)( +[!-~]*)?)?/i;function VSn(e){let t=[],r=!0;for(let s of e.split(" ")){r=!1;let a=Blo.exec(s);if(a===null||a.groups===void 0||a.groups.algo===void 0)continue;let o=a.groups.algo.toLowerCase();GSn.includes(o)&&t.push(a.groups)}return r===!0?"no metadata":t}function vlo(e){let t=e[0].algo;if(t[3]==="5")return t;for(let r=1;r{e=s,t=a}),resolve:e,reject:t}}function Rlo(e){return e.controller.state==="aborted"}function Dlo(e){return e.controller.state==="aborted"||e.controller.state==="terminated"}var Hzt={delete:"DELETE",DELETE:"DELETE",get:"GET",GET:"GET",head:"HEAD",HEAD:"HEAD",options:"OPTIONS",OPTIONS:"OPTIONS",post:"POST",POST:"POST",put:"PUT",PUT:"PUT"};Object.setPrototypeOf(Hzt,null);function xlo(e){return Hzt[e.toLowerCase()]??e}function klo(e){let t=JSON.stringify(e);if(t===void 0)throw new TypeError("Value is not JSON serializable");return b1e(typeof t=="string"),t}var Glo=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function Flo(e,t,r){let s={index:0,kind:r,target:e},a={next(){if(Object.getPrototypeOf(this)!==a)throw new TypeError(`'next' called on an object that does not implement interface ${t} Iterator.`);let{index:o,kind:g,target:p}=s,f=p(),m=f.length;if(o>=m)return{value:void 0,done:!0};let y=f[o];return s.index=o+1,Zlo(y,g)},[Symbol.toStringTag]:`${t} Iterator`};return Object.setPrototypeOf(a,Glo),Object.setPrototypeOf({},a)}function Zlo(e,t){let r;switch(t){case"key":{r=e[0];break}case"value":{r=e[1];break}case"key+value":{r=e;break}}return{value:r,done:!1}}async function Llo(e,t,r){let s=t,a=r,o;try{o=e.stream.getReader()}catch(g){a(g);return}try{let g=await WSn(o);s(g)}catch(g){a(g)}}var Qzt=globalThis.ReadableStream;function Vlo(e){return Qzt||(Qzt=xt("stream/web").ReadableStream),e instanceof Qzt||e[Symbol.toStringTag]==="ReadableStream"&&typeof e.tee=="function"}var Wlo=65535;function Plo(e){return e.lengtht+String.fromCharCode(r),"")}function Olo(e){try{e.close()}catch(t){if(!t.message.includes("Controller is already closed"))throw t}}function Qlo(e){for(let t=0;tObject.prototype.hasOwnProperty.call(e,t));OSn.exports={isAborted:Rlo,isCancelled:Dlo,createDeferredPromise:Nlo,ReadableStreamFrom:ilo,toUSVString:nlo,tryUpgradeRequestToAPotentiallyTrustworthyURL:Tlo,coarsenedSharedCurrentTime:mlo,determineRequestsReferrer:blo,makePolicyContainer:_lo,clonePolicyContainer:ylo,appendFetchMetadata:Ilo,appendRequestOriginHeader:Clo,TAOCheck:flo,corsCheck:plo,crossOriginResourcePolicyCheck:dlo,createOpaqueTimingInfo:hlo,setRequestReferrerPolicyOnRedirect:Alo,isValidHTTPToken:ZSn,requestBadPort:alo,requestCurrentURL:S3e,responseURL:FSn,responseLocationURL:olo,isBlobLike:rlo,isURLPotentiallyTrustworthy:v3e,isValidReasonPhrase:llo,sameOrigin:alt,normalizeMethod:xlo,serializeJavascriptValueToJSONString:klo,makeIterator:Flo,isValidHeaderName:glo,isValidHeaderValue:LSn,hasOwn:Hlo,isErrorLike:clo,fullyReadBody:Llo,bytesMatch:Elo,isReadableStreamLike:Vlo,readableStreamClose:Olo,isomorphicEncode:Qlo,isomorphicDecode:Plo,urlIsLocal:Mlo,urlHasHttpsScheme:Mzt,urlIsHttpHttpsScheme:PSn,readAllBytes:WSn,normalizeMethodRecord:Hzt,parseMetadata:VSn}});var Qj=z((yKc,QSn)=>{"use strict";QSn.exports={kUrl:Symbol("url"),kHeaders:Symbol("headers"),kSignal:Symbol("signal"),kState:Symbol("state"),kGuard:Symbol("guard"),kRealm:Symbol("realm")}});var DF=z((bKc,HSn)=>{"use strict";var{types:qJ}=xt("util"),{hasOwn:MSn,toUSVString:Ylo}=XO(),zu={};zu.converters={};zu.util={};zu.errors={};zu.errors.exception=function(e){return new TypeError(`${e.header}: ${e.message}`)};zu.errors.conversionFailed=function(e){let t=e.types.length===1?"":" one of",r=`${e.argument} could not be converted to${t}: ${e.types.join(", ")}.`;return zu.errors.exception({header:e.prefix,message:r})};zu.errors.invalidArgument=function(e){return zu.errors.exception({header:e.prefix,message:`"${e.value}" is an invalid ${e.type}.`})};zu.brandCheck=function(e,t,r=void 0){if(r?.strict!==!1&&!(e instanceof t))throw new TypeError("Illegal invocation");return e?.[Symbol.toStringTag]===t.prototype[Symbol.toStringTag]};zu.argumentLengthCheck=function({length:e},t,r){if(ea)throw zu.errors.exception({header:"Integer conversion",message:`Value must be between ${o}-${a}, got ${g}.`});return g}return!Number.isNaN(g)&&s.clamp===!0?(g=Math.min(Math.max(g,o),a),Math.floor(g)%2===0?g=Math.floor(g):g=Math.ceil(g),g):Number.isNaN(g)||g===0&&Object.is(0,g)||g===Number.POSITIVE_INFINITY||g===Number.NEGATIVE_INFINITY?0:(g=zu.util.IntegerPart(g),g=g%Math.pow(2,t),r==="signed"&&g>=Math.pow(2,t)-1?g-Math.pow(2,t):g)};zu.util.IntegerPart=function(e){let t=Math.floor(Math.abs(e));return e<0?-1*t:t};zu.sequenceConverter=function(e){return t=>{if(zu.util.Type(t)!=="Object")throw zu.errors.exception({header:"Sequence",message:`Value of type ${zu.util.Type(t)} is not an Object.`});let r=t?.[Symbol.iterator]?.(),s=[];if(r===void 0||typeof r.next!="function")throw zu.errors.exception({header:"Sequence",message:"Object is not an iterator."});for(;;){let{done:a,value:o}=r.next();if(a)break;s.push(e(o))}return s}};zu.recordConverter=function(e,t){return r=>{if(zu.util.Type(r)!=="Object")throw zu.errors.exception({header:"Record",message:`Value of type ${zu.util.Type(r)} is not an Object.`});let s={};if(!qJ.isProxy(r)){let o=Object.keys(r);for(let g of o){let p=e(g),f=t(r[g]);s[p]=f}return s}let a=Reflect.ownKeys(r);for(let o of a)if(Reflect.getOwnPropertyDescriptor(r,o)?.enumerable){let p=e(o),f=t(r[o]);s[p]=f}return s}};zu.interfaceConverter=function(e){return(t,r={})=>{if(r.strict!==!1&&!(t instanceof e))throw zu.errors.exception({header:e.name,message:`Expected ${t} to be an instance of ${e.name}.`});return t}};zu.dictionaryConverter=function(e){return t=>{let r=zu.util.Type(t),s={};if(r==="Null"||r==="Undefined")return s;if(r!=="Object")throw zu.errors.exception({header:"Dictionary",message:`Expected ${t} to be one of: Null, Undefined, Object.`});for(let a of e){let{key:o,defaultValue:g,required:p,converter:f}=a;if(p===!0&&!MSn(t,o))throw zu.errors.exception({header:"Dictionary",message:`Missing required key "${o}".`});let m=t[o],y=MSn(a,"defaultValue");if(y&&m!==null&&(m=m??g),p||y||m!==void 0){if(m=f(m),a.allowedValues&&!a.allowedValues.includes(m))throw zu.errors.exception({header:"Dictionary",message:`${m} is not an accepted type. Expected one of ${a.allowedValues.join(", ")}.`});s[o]=m}}return s}};zu.nullableConverter=function(e){return t=>t===null?t:e(t)};zu.converters.DOMString=function(e,t={}){if(e===null&&t.legacyNullToEmptyString)return"";if(typeof e=="symbol")throw new TypeError("Could not convert argument of type symbol to string.");return String(e)};zu.converters.ByteString=function(e){let t=zu.converters.DOMString(e);for(let r=0;r255)throw new TypeError(`Cannot convert argument to a ByteString because the character at index ${r} has a value of ${t.charCodeAt(r)} which is greater than 255.`);return t};zu.converters.USVString=Ylo;zu.converters.boolean=function(e){return!!e};zu.converters.any=function(e){return e};zu.converters["long long"]=function(e){return zu.util.ConvertToInt(e,64,"signed")};zu.converters["unsigned long long"]=function(e){return zu.util.ConvertToInt(e,64,"unsigned")};zu.converters["unsigned long"]=function(e){return zu.util.ConvertToInt(e,32,"unsigned")};zu.converters["unsigned short"]=function(e,t){return zu.util.ConvertToInt(e,16,"unsigned",t)};zu.converters.ArrayBuffer=function(e,t={}){if(zu.util.Type(e)!=="Object"||!qJ.isAnyArrayBuffer(e))throw zu.errors.conversionFailed({prefix:`${e}`,argument:`${e}`,types:["ArrayBuffer"]});if(t.allowShared===!1&&qJ.isSharedArrayBuffer(e))throw zu.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});return e};zu.converters.TypedArray=function(e,t,r={}){if(zu.util.Type(e)!=="Object"||!qJ.isTypedArray(e)||e.constructor.name!==t.name)throw zu.errors.conversionFailed({prefix:`${t.name}`,argument:`${e}`,types:[t.name]});if(r.allowShared===!1&&qJ.isSharedArrayBuffer(e.buffer))throw zu.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});return e};zu.converters.DataView=function(e,t={}){if(zu.util.Type(e)!=="Object"||!qJ.isDataView(e))throw zu.errors.exception({header:"DataView",message:"Object is not a DataView."});if(t.allowShared===!1&&qJ.isSharedArrayBuffer(e.buffer))throw zu.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});return e};zu.converters.BufferSource=function(e,t={}){if(qJ.isAnyArrayBuffer(e))return zu.converters.ArrayBuffer(e,t);if(qJ.isTypedArray(e))return zu.converters.TypedArray(e,e.constructor);if(qJ.isDataView(e))return zu.converters.DataView(e,t);throw new TypeError(`Could not convert ${e} to a BufferSource.`)};zu.converters["sequence"]=zu.sequenceConverter(zu.converters.ByteString);zu.converters["sequence>"]=zu.sequenceConverter(zu.converters["sequence"]);zu.converters["record"]=zu.recordConverter(zu.converters.ByteString,zu.converters.ByteString);HSn.exports={webidl:zu}});var WH=z((EKc,jSn)=>{var llt=xt("assert"),{atob:Xlo}=xt("buffer"),{isomorphicDecode:Jlo}=XO(),Ulo=new TextEncoder,clt=/^[!#$%&'*+-.^_|~A-Za-z0-9]+$/,Klo=/(\u000A|\u000D|\u0009|\u0020)/,jlo=/[\u0009|\u0020-\u007E|\u0080-\u00FF]/;function zlo(e){llt(e.protocol==="data:");let t=JSn(e,!0);t=t.slice(5);let r={position:0},s=E1e(",",t,r),a=s.length;if(s=tuo(s,!0,!0),r.position>=t.length)return"failure";r.position++;let o=t.slice(a+1),g=USn(o);if(/;(\u0020){0,}base64$/i.test(s)){let f=Jlo(g);if(g=$lo(f),g==="failure")return"failure";s=s.slice(0,-6),s=s.replace(/(\u0020)+$/,""),s=s.slice(0,-1)}s.startsWith(";")&&(s="text/plain"+s);let p=Xzt(s);return p==="failure"&&(p=Xzt("text/plain;charset=US-ASCII")),{mimeType:p,body:g}}function JSn(e,t=!1){if(!t)return e.href;let r=e.href,s=e.hash.length;return s===0?r:r.substring(0,r.length-s)}function ult(e,t,r){let s="";for(;r.positione.length)return"failure";t.position++;let s=E1e(";",e,t);if(s=Yzt(s,!1,!0),s.length===0||!clt.test(s))return"failure";let a=r.toLowerCase(),o=s.toLowerCase(),g={type:a,subtype:o,parameters:new Map,essence:`${a}/${o}`};for(;t.positionKlo.test(m),e,t);let p=ult(m=>m!==";"&&m!=="=",e,t);if(p=p.toLowerCase(),t.positione.length)break;let f=null;if(e[t.position]==='"')f=KSn(e,t,!0),E1e(";",e,t);else if(f=E1e(";",e,t),f=Yzt(f,!1,!0),f.length===0)continue;p.length!==0&&clt.test(p)&&(f.length===0||jlo.test(f))&&!g.parameters.has(p)&&g.parameters.set(p,f)}return g}function $lo(e){if(e=e.replace(/[\u0009\u000A\u000C\u000D\u0020]/g,""),e.length%4===0&&(e=e.replace(/=?=$/,"")),e.length%4===1||/[^+/0-9A-Za-z]/.test(e))return"failure";let t=Xlo(e),r=new Uint8Array(t.length);for(let s=0;sg!=='"'&&g!=="\\",e,t),!(t.position>=e.length);){let o=e[t.position];if(t.position++,o==="\\"){if(t.position>=e.length){a+="\\";break}a+=e[t.position],t.position++}else{llt(o==='"');break}}return r?a:e.slice(s,t.position)}function euo(e){llt(e!=="failure");let{parameters:t,essence:r}=e,s=r;for(let[a,o]of t.entries())s+=";",s+=a,s+="=",clt.test(o)||(o=o.replace(/(\\|")/g,"\\$1"),o='"'+o,o+='"'),s+=o;return s}function YSn(e){return e==="\r"||e===` +`||e===" "||e===" "}function Yzt(e,t=!0,r=!0){let s=0,a=e.length-1;if(t)for(;s0&&YSn(e[a]);a--);return e.slice(s,a+1)}function XSn(e){return e==="\r"||e===` +`||e===" "||e==="\f"||e===" "}function tuo(e,t=!0,r=!0){let s=0,a=e.length-1;if(t)for(;s0&&XSn(e[a]);a--);return e.slice(s,a+1)}jSn.exports={dataURLProcessor:zlo,URLSerializer:JSn,collectASequenceOfCodePoints:ult,collectASequenceOfCodePointsFast:E1e,stringPercentDecode:USn,parseMIMEType:Xzt,collectAnHTTPQuotedString:KSn,serializeAMimeType:euo}});var glt=z((BKc,twn)=>{"use strict";var{Blob:$Sn,File:zSn}=xt("buffer"),{types:Jzt}=xt("util"),{kState:TW}=Qj(),{isBlobLike:ewn}=XO(),{webidl:B0}=DF(),{parseMIMEType:ruo,serializeAMimeType:nuo}=WH(),{kEnumerableProperty:qSn}=Ch(),iuo=new TextEncoder,w3e=class e extends $Sn{constructor(t,r,s={}){B0.argumentLengthCheck(arguments,2,{header:"File constructor"}),t=B0.converters["sequence"](t),r=B0.converters.USVString(r),s=B0.converters.FilePropertyBag(s);let a=r,o=s.type,g;e:{if(o){if(o=ruo(o),o==="failure"){o="";break e}o=nuo(o).toLowerCase()}g=s.lastModified}super(suo(t,s),{type:o}),this[TW]={name:a,lastModified:g,type:o}}get name(){return B0.brandCheck(this,e),this[TW].name}get lastModified(){return B0.brandCheck(this,e),this[TW].lastModified}get type(){return B0.brandCheck(this,e),this[TW].type}},Uzt=class e{constructor(t,r,s={}){let a=r,o=s.type,g=s.lastModified??Date.now();this[TW]={blobLike:t,name:a,type:o,lastModified:g}}stream(...t){return B0.brandCheck(this,e),this[TW].blobLike.stream(...t)}arrayBuffer(...t){return B0.brandCheck(this,e),this[TW].blobLike.arrayBuffer(...t)}slice(...t){return B0.brandCheck(this,e),this[TW].blobLike.slice(...t)}text(...t){return B0.brandCheck(this,e),this[TW].blobLike.text(...t)}get size(){return B0.brandCheck(this,e),this[TW].blobLike.size}get type(){return B0.brandCheck(this,e),this[TW].blobLike.type}get name(){return B0.brandCheck(this,e),this[TW].name}get lastModified(){return B0.brandCheck(this,e),this[TW].lastModified}get[Symbol.toStringTag](){return"File"}};Object.defineProperties(w3e.prototype,{[Symbol.toStringTag]:{value:"File",configurable:!0},name:qSn,lastModified:qSn});B0.converters.Blob=B0.interfaceConverter($Sn);B0.converters.BlobPart=function(e,t){if(B0.util.Type(e)==="Object"){if(ewn(e))return B0.converters.Blob(e,{strict:!1});if(ArrayBuffer.isView(e)||Jzt.isAnyArrayBuffer(e))return B0.converters.BufferSource(e,t)}return B0.converters.USVString(e,t)};B0.converters["sequence"]=B0.sequenceConverter(B0.converters.BlobPart);B0.converters.FilePropertyBag=B0.dictionaryConverter([{key:"lastModified",converter:B0.converters["long long"],get defaultValue(){return Date.now()}},{key:"type",converter:B0.converters.DOMString,defaultValue:""},{key:"endings",converter:e=>(e=B0.converters.DOMString(e),e=e.toLowerCase(),e!=="native"&&(e="transparent"),e),defaultValue:"transparent"}]);function suo(e,t){let r=[];for(let s of e)if(typeof s=="string"){let a=s;t.endings==="native"&&(a=ouo(a)),r.push(iuo.encode(a))}else Jzt.isAnyArrayBuffer(s)||Jzt.isTypedArray(s)?s.buffer?r.push(new Uint8Array(s.buffer,s.byteOffset,s.byteLength)):r.push(new Uint8Array(s)):ewn(s)&&r.push(s);return r}function ouo(e){let t=` `;return process.platform==="win32"&&(t=`\r -`),e.replace(/\r?\n/g,t)}function Ulo(e){return MSn&&e instanceof MSn||e instanceof B3e||e&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&e[Symbol.toStringTag]==="File"}XSn.exports={File:B3e,FileLike:Hzt,isFileLike:Ulo}});var glt=z((aKc,zSn)=>{"use strict";var{isBlobLike:ult,toUSVString:Klo,makeIterator:Xzt}=QO(),{kState:yk}=Zj(),{File:jSn,FileLike:JSn,isFileLike:jlo}=llt(),{webidl:iy}=SF(),{Blob:zlo,File:Jzt}=Dt("buffer"),USn=Jzt??jSn,b1e=class e{constructor(t){if(t!==void 0)throw iy.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]});this[yk]=[]}append(t,r,s=void 0){if(iy.brandCheck(this,e),iy.argumentLengthCheck(arguments,2,{header:"FormData.append"}),arguments.length===3&&!ult(r))throw new TypeError("Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'");t=iy.converters.USVString(t),r=ult(r)?iy.converters.Blob(r,{strict:!1}):iy.converters.USVString(r),s=arguments.length===3?iy.converters.USVString(s):void 0;let a=KSn(t,r,s);this[yk].push(a)}delete(t){iy.brandCheck(this,e),iy.argumentLengthCheck(arguments,1,{header:"FormData.delete"}),t=iy.converters.USVString(t),this[yk]=this[yk].filter(r=>r.name!==t)}get(t){iy.brandCheck(this,e),iy.argumentLengthCheck(arguments,1,{header:"FormData.get"}),t=iy.converters.USVString(t);let r=this[yk].findIndex(s=>s.name===t);return r===-1?null:this[yk][r].value}getAll(t){return iy.brandCheck(this,e),iy.argumentLengthCheck(arguments,1,{header:"FormData.getAll"}),t=iy.converters.USVString(t),this[yk].filter(r=>r.name===t).map(r=>r.value)}has(t){return iy.brandCheck(this,e),iy.argumentLengthCheck(arguments,1,{header:"FormData.has"}),t=iy.converters.USVString(t),this[yk].findIndex(r=>r.name===t)!==-1}set(t,r,s=void 0){if(iy.brandCheck(this,e),iy.argumentLengthCheck(arguments,2,{header:"FormData.set"}),arguments.length===3&&!ult(r))throw new TypeError("Failed to execute 'set' on 'FormData': parameter 2 is not of type 'Blob'");t=iy.converters.USVString(t),r=ult(r)?iy.converters.Blob(r,{strict:!1}):iy.converters.USVString(r),s=arguments.length===3?Klo(s):void 0;let a=KSn(t,r,s),o=this[yk].findIndex(g=>g.name===t);o!==-1?this[yk]=[...this[yk].slice(0,o),a,...this[yk].slice(o+1).filter(g=>g.name!==t)]:this[yk].push(a)}entries(){return iy.brandCheck(this,e),Xzt(()=>this[yk].map(t=>[t.name,t.value]),"FormData","key+value")}keys(){return iy.brandCheck(this,e),Xzt(()=>this[yk].map(t=>[t.name,t.value]),"FormData","key")}values(){return iy.brandCheck(this,e),Xzt(()=>this[yk].map(t=>[t.name,t.value]),"FormData","value")}forEach(t,r=globalThis){if(iy.brandCheck(this,e),iy.argumentLengthCheck(arguments,1,{header:"FormData.forEach"}),typeof t!="function")throw new TypeError("Failed to execute 'forEach' on 'FormData': parameter 1 is not of type 'Function'.");for(let[s,a]of this)t.apply(r,[a,s,this])}};b1e.prototype[Symbol.iterator]=b1e.prototype.entries;Object.defineProperties(b1e.prototype,{[Symbol.toStringTag]:{value:"FormData",configurable:!0}});function KSn(e,t,r){if(e=Buffer.from(e).toString("utf8"),typeof t=="string")t=Buffer.from(t).toString("utf8");else if(jlo(t)||(t=t instanceof zlo?new USn([t],"blob",{type:t.type}):new JSn(t,"blob",{type:t.type})),r!==void 0){let s={type:t.type,lastModified:t.lastModified};t=Jzt&&t instanceof Jzt||t instanceof jSn?new USn([t],r,s):new JSn(t,r,s)}return{name:e,value:t}}zSn.exports={FormData:b1e}});var v3e=z((cKc,own)=>{"use strict";var qlo=fSn(),E1e=Ih(),{ReadableStreamFrom:$lo,isBlobLike:qSn,isReadableStreamLike:euo,readableStreamClose:tuo,createDeferredPromise:ruo,fullyReadBody:nuo}=QO(),{FormData:$Sn}=glt(),{kState:Vj}=Zj(),{webidl:Uzt}=SF(),{DOMException:rwn,structuredClone:iuo}=nie(),{Blob:suo,File:ouo}=Dt("buffer"),{kBodyUsed:auo}=aE(),Kzt=Dt("assert"),{isErrored:cuo}=Ih(),{isUint8Array:nwn,isArrayBuffer:luo}=Dt("util/types"),{File:uuo}=llt(),{parseMIMEType:guo,serializeAMimeType:Auo}=LH(),Lj=globalThis.ReadableStream,ewn=ouo??uuo,Alt=new TextEncoder,duo=new TextDecoder;function iwn(e,t=!1){Lj||(Lj=Dt("stream/web").ReadableStream);let r=null;e instanceof Lj?r=e:qSn(e)?r=e.stream():r=new Lj({async pull(f){f.enqueue(typeof a=="string"?Alt.encode(a):a),queueMicrotask(()=>tuo(f))},start(){},type:void 0}),Kzt(euo(r));let s=null,a=null,o=null,g=null;if(typeof e=="string")a=e,g="text/plain;charset=UTF-8";else if(e instanceof URLSearchParams)a=e.toString(),g="application/x-www-form-urlencoded;charset=UTF-8";else if(luo(e))a=new Uint8Array(e.slice());else if(ArrayBuffer.isView(e))a=new Uint8Array(e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength));else if(E1e.isFormDataLike(e)){let f=`----formdata-undici-0${`${Math.floor(Math.random()*1e11)}`.padStart(11,"0")}`,m=`--${f}\r +`),e.replace(/\r?\n/g,t)}function auo(e){return zSn&&e instanceof zSn||e instanceof w3e||e&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&e[Symbol.toStringTag]==="File"}twn.exports={File:w3e,FileLike:Uzt,isFileLike:auo}});var dlt=z((vKc,own)=>{"use strict";var{isBlobLike:Alt,toUSVString:cuo,makeIterator:Kzt}=XO(),{kState:Sk}=Qj(),{File:swn,FileLike:rwn,isFileLike:luo}=glt(),{webidl:sy}=DF(),{Blob:uuo,File:jzt}=xt("buffer"),nwn=jzt??swn,B1e=class e{constructor(t){if(t!==void 0)throw sy.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]});this[Sk]=[]}append(t,r,s=void 0){if(sy.brandCheck(this,e),sy.argumentLengthCheck(arguments,2,{header:"FormData.append"}),arguments.length===3&&!Alt(r))throw new TypeError("Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'");t=sy.converters.USVString(t),r=Alt(r)?sy.converters.Blob(r,{strict:!1}):sy.converters.USVString(r),s=arguments.length===3?sy.converters.USVString(s):void 0;let a=iwn(t,r,s);this[Sk].push(a)}delete(t){sy.brandCheck(this,e),sy.argumentLengthCheck(arguments,1,{header:"FormData.delete"}),t=sy.converters.USVString(t),this[Sk]=this[Sk].filter(r=>r.name!==t)}get(t){sy.brandCheck(this,e),sy.argumentLengthCheck(arguments,1,{header:"FormData.get"}),t=sy.converters.USVString(t);let r=this[Sk].findIndex(s=>s.name===t);return r===-1?null:this[Sk][r].value}getAll(t){return sy.brandCheck(this,e),sy.argumentLengthCheck(arguments,1,{header:"FormData.getAll"}),t=sy.converters.USVString(t),this[Sk].filter(r=>r.name===t).map(r=>r.value)}has(t){return sy.brandCheck(this,e),sy.argumentLengthCheck(arguments,1,{header:"FormData.has"}),t=sy.converters.USVString(t),this[Sk].findIndex(r=>r.name===t)!==-1}set(t,r,s=void 0){if(sy.brandCheck(this,e),sy.argumentLengthCheck(arguments,2,{header:"FormData.set"}),arguments.length===3&&!Alt(r))throw new TypeError("Failed to execute 'set' on 'FormData': parameter 2 is not of type 'Blob'");t=sy.converters.USVString(t),r=Alt(r)?sy.converters.Blob(r,{strict:!1}):sy.converters.USVString(r),s=arguments.length===3?cuo(s):void 0;let a=iwn(t,r,s),o=this[Sk].findIndex(g=>g.name===t);o!==-1?this[Sk]=[...this[Sk].slice(0,o),a,...this[Sk].slice(o+1).filter(g=>g.name!==t)]:this[Sk].push(a)}entries(){return sy.brandCheck(this,e),Kzt(()=>this[Sk].map(t=>[t.name,t.value]),"FormData","key+value")}keys(){return sy.brandCheck(this,e),Kzt(()=>this[Sk].map(t=>[t.name,t.value]),"FormData","key")}values(){return sy.brandCheck(this,e),Kzt(()=>this[Sk].map(t=>[t.name,t.value]),"FormData","value")}forEach(t,r=globalThis){if(sy.brandCheck(this,e),sy.argumentLengthCheck(arguments,1,{header:"FormData.forEach"}),typeof t!="function")throw new TypeError("Failed to execute 'forEach' on 'FormData': parameter 1 is not of type 'Function'.");for(let[s,a]of this)t.apply(r,[a,s,this])}};B1e.prototype[Symbol.iterator]=B1e.prototype.entries;Object.defineProperties(B1e.prototype,{[Symbol.toStringTag]:{value:"FormData",configurable:!0}});function iwn(e,t,r){if(e=Buffer.from(e).toString("utf8"),typeof t=="string")t=Buffer.from(t).toString("utf8");else if(luo(t)||(t=t instanceof uuo?new nwn([t],"blob",{type:t.type}):new rwn(t,"blob",{type:t.type})),r!==void 0){let s={type:t.type,lastModified:t.lastModified};t=jzt&&t instanceof jzt||t instanceof swn?new nwn([t],r,s):new rwn(t,r,s)}return{name:e,value:t}}own.exports={FormData:B1e}});var T3e=z((SKc,fwn)=>{"use strict";var guo=BSn(),v1e=Ch(),{ReadableStreamFrom:Auo,isBlobLike:awn,isReadableStreamLike:duo,readableStreamClose:puo,createDeferredPromise:fuo,fullyReadBody:Iuo}=XO(),{FormData:cwn}=dlt(),{kState:Hj}=Qj(),{webidl:zzt}=DF(),{DOMException:gwn,structuredClone:Cuo}=sie(),{Blob:muo,File:huo}=xt("buffer"),{kBodyUsed:_uo}=lE(),qzt=xt("assert"),{isErrored:yuo}=Ch(),{isUint8Array:Awn,isArrayBuffer:buo}=xt("util/types"),{File:Euo}=glt(),{parseMIMEType:Buo,serializeAMimeType:vuo}=WH(),Mj=globalThis.ReadableStream,lwn=huo??Euo,plt=new TextEncoder,Suo=new TextDecoder;function dwn(e,t=!1){Mj||(Mj=xt("stream/web").ReadableStream);let r=null;e instanceof Mj?r=e:awn(e)?r=e.stream():r=new Mj({async pull(f){f.enqueue(typeof a=="string"?plt.encode(a):a),queueMicrotask(()=>puo(f))},start(){},type:void 0}),qzt(duo(r));let s=null,a=null,o=null,g=null;if(typeof e=="string")a=e,g="text/plain;charset=UTF-8";else if(e instanceof URLSearchParams)a=e.toString(),g="application/x-www-form-urlencoded;charset=UTF-8";else if(buo(e))a=new Uint8Array(e.slice());else if(ArrayBuffer.isView(e))a=new Uint8Array(e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength));else if(v1e.isFormDataLike(e)){let f=`----formdata-undici-0${`${Math.floor(Math.random()*1e11)}`.padStart(11,"0")}`,m=`--${f}\r Content-Disposition: form-data`;let y=X=>X.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),B=X=>X.replace(/\r?\n|\r/g,`\r -`),v=[],G=new Uint8Array([13,10]);o=0;let T=!1;for(let[X,U]of e)if(typeof U=="string"){let le=Alt.encode(m+`; name="${y(B(X))}"\r +`),v=[],k=new Uint8Array([13,10]);o=0;let T=!1;for(let[X,U]of e)if(typeof U=="string"){let le=plt.encode(m+`; name="${y(B(X))}"\r \r ${B(U)}\r -`);v.push(le),o+=le.byteLength}else{let le=Alt.encode(`${m}; name="${y(B(X))}"`+(U.name?`; filename="${y(U.name)}"`:"")+`\r +`);v.push(le),o+=le.byteLength}else{let le=plt.encode(`${m}; name="${y(B(X))}"`+(U.name?`; filename="${y(U.name)}"`:"")+`\r Content-Type: ${U.type||"application/octet-stream"}\r \r -`);v.push(le,U,G),typeof U.size=="number"?o+=le.byteLength+U.size+G.byteLength:T=!0}let O=Alt.encode(`--${f}--`);v.push(O),o+=O.byteLength,T&&(o=null),a=e,s=async function*(){for(let X of v)X.stream?yield*X.stream():yield X},g="multipart/form-data; boundary="+f}else if(qSn(e))a=e,o=e.size,e.type&&(g=e.type);else if(typeof e[Symbol.asyncIterator]=="function"){if(t)throw new TypeError("keepalive");if(E1e.isDisturbed(e)||e.locked)throw new TypeError("Response body object should not be disturbed or locked");r=e instanceof Lj?e:$lo(e)}if((typeof a=="string"||E1e.isBuffer(a))&&(o=Buffer.byteLength(a)),s!=null){let f;r=new Lj({async start(){f=s(e)[Symbol.asyncIterator]()},async pull(m){let{value:y,done:B}=await f.next();return B?queueMicrotask(()=>{m.close()}):cuo(r)||m.enqueue(new Uint8Array(y)),m.desiredSize>0},async cancel(m){await f.return()},type:void 0})}return[{stream:r,source:a,length:o},g]}function puo(e,t=!1){return Lj||(Lj=Dt("stream/web").ReadableStream),e instanceof Lj&&(Kzt(!E1e.isDisturbed(e),"The body has already been consumed."),Kzt(!e.locked,"The stream is locked.")),iwn(e,t)}function fuo(e){let[t,r]=e.stream.tee(),s=iuo(r,{transfer:[r]}),[,a]=s.tee();return e.stream=t,{stream:a,length:e.length,source:e.source}}async function*twn(e){if(e)if(nwn(e))yield e;else{let t=e.stream;if(E1e.isDisturbed(t))throw new TypeError("The body has already been consumed.");if(t.locked)throw new TypeError("The stream is locked.");t[auo]=!0,yield*t}}function jzt(e){if(e.aborted)throw new rwn("The operation was aborted.","AbortError")}function Iuo(e){return{blob(){return dlt(this,r=>{let s=_uo(this);return s==="failure"?s="":s&&(s=Auo(s)),new suo([r],{type:s})},e)},arrayBuffer(){return dlt(this,r=>new Uint8Array(r).buffer,e)},text(){return dlt(this,swn,e)},json(){return dlt(this,huo,e)},async formData(){Uzt.brandCheck(this,e),jzt(this[Vj]);let r=this.headers.get("Content-Type");if(/multipart\/form-data/.test(r)){let s={};for(let[p,f]of this.headers)s[p.toLowerCase()]=f;let a=new $Sn,o;try{o=new qlo({headers:s,preservePath:!0})}catch(p){throw new rwn(`${p}`,"AbortError")}o.on("field",(p,f)=>{a.append(p,f)}),o.on("file",(p,f,m,y,B)=>{let v=[];if(y==="base64"||y.toLowerCase()==="base64"){let G="";f.on("data",T=>{G+=T.toString().replace(/[\r\n]/gm,"");let O=G.length-G.length%4;v.push(Buffer.from(G.slice(0,O),"base64")),G=G.slice(O)}),f.on("end",()=>{v.push(Buffer.from(G,"base64")),a.append(p,new ewn(v,m,{type:B}))})}else f.on("data",G=>{v.push(G)}),f.on("end",()=>{a.append(p,new ewn(v,m,{type:B}))})});let g=new Promise((p,f)=>{o.on("finish",p),o.on("error",m=>f(new TypeError(m)))});if(this.body!==null)for await(let p of twn(this[Vj].body))o.write(p);return o.end(),await g,a}else if(/application\/x-www-form-urlencoded/.test(r)){let s;try{let o="",g=new TextDecoder("utf-8",{ignoreBOM:!0});for await(let p of twn(this[Vj].body)){if(!nwn(p))throw new TypeError("Expected Uint8Array chunk");o+=g.decode(p,{stream:!0})}o+=g.decode(),s=new URLSearchParams(o)}catch(o){throw Object.assign(new TypeError,{cause:o})}let a=new $Sn;for(let[o,g]of s)a.append(o,g);return a}else throw await Promise.resolve(),jzt(this[Vj]),Uzt.errors.exception({header:`${e.name}.formData`,message:"Could not parse content as FormData."})}}}function Cuo(e){Object.assign(e.prototype,Iuo(e))}async function dlt(e,t,r){if(Uzt.brandCheck(e,r),jzt(e[Vj]),muo(e[Vj].body))throw new TypeError("Body is unusable");let s=ruo(),a=g=>s.reject(g),o=g=>{try{s.resolve(t(g))}catch(p){a(p)}};return e[Vj].body==null?(o(new Uint8Array),s.promise):(await nuo(e[Vj].body,o,a),s.promise)}function muo(e){return e!=null&&(e.stream.locked||E1e.isDisturbed(e.stream))}function swn(e){return e.length===0?"":(e[0]===239&&e[1]===187&&e[2]===191&&(e=e.subarray(3)),duo.decode(e))}function huo(e){return JSON.parse(swn(e))}function _uo(e){let{headersList:t}=e[Vj],r=t.get("content-type");return r===null?"failure":guo(r)}own.exports={extractBody:iwn,safelyExtractBody:puo,cloneBody:fuo,mixinBody:Cuo}});var uwn=z((lKc,lwn)=>{"use strict";var{InvalidArgumentError:cE,NotSupportedError:yuo}=_b(),Wj=Dt("assert"),{kHTTP2BuildRequest:buo,kHTTP2CopyHeaders:Euo,kHTTP1BuildRequest:Buo}=aE(),ZL=Ih(),awn=/^[\^_`a-zA-Z\-0-9!#$%&'*+.|~]+$/,cwn=/[^\t\x20-\x7e\x80-\xff]/,vuo=/[^\u0021-\u00ff]/,VH=Symbol("handler"),_w={},zzt;try{let e=Dt("diagnostics_channel");_w.create=e.channel("undici:request:create"),_w.bodySent=e.channel("undici:request:bodySent"),_w.headers=e.channel("undici:request:headers"),_w.trailers=e.channel("undici:request:trailers"),_w.error=e.channel("undici:request:error")}catch{_w.create={hasSubscribers:!1},_w.bodySent={hasSubscribers:!1},_w.headers={hasSubscribers:!1},_w.trailers={hasSubscribers:!1},_w.error={hasSubscribers:!1}}var qzt=class e{constructor(t,{path:r,method:s,body:a,headers:o,query:g,idempotent:p,blocking:f,upgrade:m,headersTimeout:y,bodyTimeout:B,reset:v,throwOnError:G,expectContinue:T},O){if(typeof r!="string")throw new cE("path must be a string");if(r[0]!=="/"&&!(r.startsWith("http://")||r.startsWith("https://"))&&s!=="CONNECT")throw new cE("path must be an absolute URL or start with a slash");if(vuo.exec(r)!==null)throw new cE("invalid request path");if(typeof s!="string")throw new cE("method must be a string");if(awn.exec(s)===null)throw new cE("invalid request method");if(m&&typeof m!="string")throw new cE("upgrade must be a string");if(y!=null&&(!Number.isFinite(y)||y<0))throw new cE("invalid headersTimeout");if(B!=null&&(!Number.isFinite(B)||B<0))throw new cE("invalid bodyTimeout");if(v!=null&&typeof v!="boolean")throw new cE("invalid reset");if(T!=null&&typeof T!="boolean")throw new cE("invalid expectContinue");if(this.headersTimeout=y,this.bodyTimeout=B,this.throwOnError=G===!0,this.method=s,this.abort=null,a==null)this.body=null;else if(ZL.isStream(a)){this.body=a;let X=this.body._readableState;(!X||!X.autoDestroy)&&(this.endHandler=function(){ZL.destroy(this)},this.body.on("end",this.endHandler)),this.errorHandler=U=>{this.abort?this.abort(U):this.error=U},this.body.on("error",this.errorHandler)}else if(ZL.isBuffer(a))this.body=a.byteLength?a:null;else if(ArrayBuffer.isView(a))this.body=a.buffer.byteLength?Buffer.from(a.buffer,a.byteOffset,a.byteLength):null;else if(a instanceof ArrayBuffer)this.body=a.byteLength?Buffer.from(a):null;else if(typeof a=="string")this.body=a.length?Buffer.from(a):null;else if(ZL.isFormDataLike(a)||ZL.isIterable(a)||ZL.isBlobLike(a))this.body=a;else throw new cE("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable");if(this.completed=!1,this.aborted=!1,this.upgrade=m||null,this.path=g?ZL.buildURL(r,g):r,this.origin=t,this.idempotent=p??(s==="HEAD"||s==="GET"),this.blocking=f??!1,this.reset=v??null,this.host=null,this.contentLength=null,this.contentType=null,this.headers="",this.expectContinue=T??!1,Array.isArray(o)){if(o.length%2!==0)throw new cE("headers array must be even");for(let X=0;X{"use strict";var Suo=Dt("events"),$zt=class extends Suo{dispatch(){throw new Error("not implemented")}close(){throw new Error("not implemented")}destroy(){throw new Error("not implemented")}};gwn.exports=$zt});var T3e=z((gKc,Awn)=>{"use strict";var wuo=plt(),{ClientDestroyedError:eqt,ClientClosedError:Tuo,InvalidArgumentError:B1e}=_b(),{kDestroy:Nuo,kClose:Ruo,kDispatch:tqt,kInterceptors:lde}=aE(),v1e=Symbol("destroyed"),w3e=Symbol("closed"),Pj=Symbol("onDestroyed"),S1e=Symbol("onClosed"),flt=Symbol("Intercepted Dispatch"),rqt=class extends wuo{constructor(){super(),this[v1e]=!1,this[Pj]=null,this[w3e]=!1,this[S1e]=[]}get destroyed(){return this[v1e]}get closed(){return this[w3e]}get interceptors(){return this[lde]}set interceptors(t){if(t){for(let r=t.length-1;r>=0;r--)if(typeof this[lde][r]!="function")throw new B1e("interceptor must be an function")}this[lde]=t}close(t){if(t===void 0)return new Promise((s,a)=>{this.close((o,g)=>o?a(o):s(g))});if(typeof t!="function")throw new B1e("invalid callback");if(this[v1e]){queueMicrotask(()=>t(new eqt,null));return}if(this[w3e]){this[S1e]?this[S1e].push(t):queueMicrotask(()=>t(null,null));return}this[w3e]=!0,this[S1e].push(t);let r=()=>{let s=this[S1e];this[S1e]=null;for(let a=0;athis.destroy()).then(()=>{queueMicrotask(r)})}destroy(t,r){if(typeof t=="function"&&(r=t,t=null),r===void 0)return new Promise((a,o)=>{this.destroy(t,(g,p)=>g?o(g):a(p))});if(typeof r!="function")throw new B1e("invalid callback");if(this[v1e]){this[Pj]?this[Pj].push(r):queueMicrotask(()=>r(null,null));return}t||(t=new eqt),this[v1e]=!0,this[Pj]=this[Pj]||[],this[Pj].push(r);let s=()=>{let a=this[Pj];this[Pj]=null;for(let o=0;o{queueMicrotask(s)})}[flt](t,r){if(!this[lde]||this[lde].length===0)return this[flt]=this[tqt],this[tqt](t,r);let s=this[tqt].bind(this);for(let a=this[lde].length-1;a>=0;a--)s=this[lde][a](s);return this[flt]=s,s(t,r)}dispatch(t,r){if(!r||typeof r!="object")throw new B1e("handler must be an object");try{if(!t||typeof t!="object")throw new B1e("opts must be an object.");if(this[v1e]||this[Pj])throw new eqt;if(this[w3e])throw new Tuo;return this[flt](t,r)}catch(s){if(typeof r.onError!="function")throw new B1e("invalid onError method");return r.onError(s),!1}}};Awn.exports=rqt});var N3e=z((pKc,fwn)=>{"use strict";var Duo=Dt("net"),dwn=Dt("assert"),pwn=Ih(),{InvalidArgumentError:xuo,ConnectTimeoutError:kuo}=_b(),nqt,iqt;global.FinalizationRegistry&&!process.env.NODE_V8_COVERAGE?iqt=class{constructor(t){this._maxCachedSessions=t,this._sessionCache=new Map,this._sessionRegistry=new global.FinalizationRegistry(r=>{if(this._sessionCache.size=this._maxCachedSessions){let{value:s}=this._sessionCache.keys().next();this._sessionCache.delete(s)}this._sessionCache.set(t,r)}}};function Guo({allowH2:e,maxCachedSessions:t,socketPath:r,timeout:s,...a}){if(t!=null&&(!Number.isInteger(t)||t<0))throw new xuo("maxCachedSessions must be a positive integer or zero");let o={path:r,...a},g=new iqt(t??100);return s=s??1e4,e=e??!1,function({hostname:f,host:m,protocol:y,port:B,servername:v,localAddress:G,httpSocket:T},O){let X;if(y==="https:"){nqt||(nqt=Dt("tls")),v=v||o.servername||pwn.getServerName(m)||null;let le=v||f,ae=g.get(le)||null;dwn(le),X=nqt.connect({highWaterMark:16384,...o,servername:v,session:ae,localAddress:G,ALPNProtocols:e?["http/1.1","h2"]:["http/1.1"],socket:T,port:B||443,host:f}),X.on("session",function(ge){g.set(le,ge)})}else dwn(!T,"httpSocket can only be sent on TLS update"),X=Duo.connect({highWaterMark:64*1024,...o,localAddress:G,port:B||80,host:f});if(o.keepAlive==null||o.keepAlive){let le=o.keepAliveInitialDelay===void 0?6e4:o.keepAliveInitialDelay;X.setKeepAlive(!0,le)}let U=Fuo(()=>Zuo(X),s);return X.setNoDelay(!0).once(y==="https:"?"secureConnect":"connect",function(){if(U(),O){let le=O;O=null,le(null,this)}}).on("error",function(le){if(U(),O){let ae=O;O=null,ae(le)}}),X}}function Fuo(e,t){if(!t)return()=>{};let r=null,s=null,a=setTimeout(()=>{r=setImmediate(()=>{process.platform==="win32"?s=setImmediate(()=>e()):e()})},t);return()=>{clearTimeout(a),clearImmediate(r),clearImmediate(s)}}function Zuo(e){pwn.destroy(e,new kuo)}fwn.exports=Guo});var Iwn=z(Ilt=>{"use strict";Object.defineProperty(Ilt,"__esModule",{value:!0});Ilt.enumToMap=void 0;function Luo(e){let t={};return Object.keys(e).forEach(r=>{let s=e[r];typeof s=="number"&&(t[r]=s)}),t}Ilt.enumToMap=Luo});var Cwn=z(gu=>{"use strict";Object.defineProperty(gu,"__esModule",{value:!0});gu.SPECIAL_HEADERS=gu.HEADER_STATE=gu.MINOR=gu.MAJOR=gu.CONNECTION_TOKEN_CHARS=gu.HEADER_CHARS=gu.TOKEN=gu.STRICT_TOKEN=gu.HEX=gu.URL_CHAR=gu.STRICT_URL_CHAR=gu.USERINFO_CHARS=gu.MARK=gu.ALPHANUM=gu.NUM=gu.HEX_MAP=gu.NUM_MAP=gu.ALPHA=gu.FINISH=gu.H_METHOD_MAP=gu.METHOD_MAP=gu.METHODS_RTSP=gu.METHODS_ICE=gu.METHODS_HTTP=gu.METHODS=gu.LENIENT_FLAGS=gu.FLAGS=gu.TYPE=gu.ERROR=void 0;var Vuo=Iwn(),Wuo;(function(e){e[e.OK=0]="OK",e[e.INTERNAL=1]="INTERNAL",e[e.STRICT=2]="STRICT",e[e.LF_EXPECTED=3]="LF_EXPECTED",e[e.UNEXPECTED_CONTENT_LENGTH=4]="UNEXPECTED_CONTENT_LENGTH",e[e.CLOSED_CONNECTION=5]="CLOSED_CONNECTION",e[e.INVALID_METHOD=6]="INVALID_METHOD",e[e.INVALID_URL=7]="INVALID_URL",e[e.INVALID_CONSTANT=8]="INVALID_CONSTANT",e[e.INVALID_VERSION=9]="INVALID_VERSION",e[e.INVALID_HEADER_TOKEN=10]="INVALID_HEADER_TOKEN",e[e.INVALID_CONTENT_LENGTH=11]="INVALID_CONTENT_LENGTH",e[e.INVALID_CHUNK_SIZE=12]="INVALID_CHUNK_SIZE",e[e.INVALID_STATUS=13]="INVALID_STATUS",e[e.INVALID_EOF_STATE=14]="INVALID_EOF_STATE",e[e.INVALID_TRANSFER_ENCODING=15]="INVALID_TRANSFER_ENCODING",e[e.CB_MESSAGE_BEGIN=16]="CB_MESSAGE_BEGIN",e[e.CB_HEADERS_COMPLETE=17]="CB_HEADERS_COMPLETE",e[e.CB_MESSAGE_COMPLETE=18]="CB_MESSAGE_COMPLETE",e[e.CB_CHUNK_HEADER=19]="CB_CHUNK_HEADER",e[e.CB_CHUNK_COMPLETE=20]="CB_CHUNK_COMPLETE",e[e.PAUSED=21]="PAUSED",e[e.PAUSED_UPGRADE=22]="PAUSED_UPGRADE",e[e.PAUSED_H2_UPGRADE=23]="PAUSED_H2_UPGRADE",e[e.USER=24]="USER"})(Wuo=gu.ERROR||(gu.ERROR={}));var Puo;(function(e){e[e.BOTH=0]="BOTH",e[e.REQUEST=1]="REQUEST",e[e.RESPONSE=2]="RESPONSE"})(Puo=gu.TYPE||(gu.TYPE={}));var Ouo;(function(e){e[e.CONNECTION_KEEP_ALIVE=1]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=2]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=4]="CONNECTION_UPGRADE",e[e.CHUNKED=8]="CHUNKED",e[e.UPGRADE=16]="UPGRADE",e[e.CONTENT_LENGTH=32]="CONTENT_LENGTH",e[e.SKIPBODY=64]="SKIPBODY",e[e.TRAILING=128]="TRAILING",e[e.TRANSFER_ENCODING=512]="TRANSFER_ENCODING"})(Ouo=gu.FLAGS||(gu.FLAGS={}));var Muo;(function(e){e[e.HEADERS=1]="HEADERS",e[e.CHUNKED_LENGTH=2]="CHUNKED_LENGTH",e[e.KEEP_ALIVE=4]="KEEP_ALIVE"})(Muo=gu.LENIENT_FLAGS||(gu.LENIENT_FLAGS={}));var kp;(function(e){e[e.DELETE=0]="DELETE",e[e.GET=1]="GET",e[e.HEAD=2]="HEAD",e[e.POST=3]="POST",e[e.PUT=4]="PUT",e[e.CONNECT=5]="CONNECT",e[e.OPTIONS=6]="OPTIONS",e[e.TRACE=7]="TRACE",e[e.COPY=8]="COPY",e[e.LOCK=9]="LOCK",e[e.MKCOL=10]="MKCOL",e[e.MOVE=11]="MOVE",e[e.PROPFIND=12]="PROPFIND",e[e.PROPPATCH=13]="PROPPATCH",e[e.SEARCH=14]="SEARCH",e[e.UNLOCK=15]="UNLOCK",e[e.BIND=16]="BIND",e[e.REBIND=17]="REBIND",e[e.UNBIND=18]="UNBIND",e[e.ACL=19]="ACL",e[e.REPORT=20]="REPORT",e[e.MKACTIVITY=21]="MKACTIVITY",e[e.CHECKOUT=22]="CHECKOUT",e[e.MERGE=23]="MERGE",e[e["M-SEARCH"]=24]="M-SEARCH",e[e.NOTIFY=25]="NOTIFY",e[e.SUBSCRIBE=26]="SUBSCRIBE",e[e.UNSUBSCRIBE=27]="UNSUBSCRIBE",e[e.PATCH=28]="PATCH",e[e.PURGE=29]="PURGE",e[e.MKCALENDAR=30]="MKCALENDAR",e[e.LINK=31]="LINK",e[e.UNLINK=32]="UNLINK",e[e.SOURCE=33]="SOURCE",e[e.PRI=34]="PRI",e[e.DESCRIBE=35]="DESCRIBE",e[e.ANNOUNCE=36]="ANNOUNCE",e[e.SETUP=37]="SETUP",e[e.PLAY=38]="PLAY",e[e.PAUSE=39]="PAUSE",e[e.TEARDOWN=40]="TEARDOWN",e[e.GET_PARAMETER=41]="GET_PARAMETER",e[e.SET_PARAMETER=42]="SET_PARAMETER",e[e.REDIRECT=43]="REDIRECT",e[e.RECORD=44]="RECORD",e[e.FLUSH=45]="FLUSH"})(kp=gu.METHODS||(gu.METHODS={}));gu.METHODS_HTTP=[kp.DELETE,kp.GET,kp.HEAD,kp.POST,kp.PUT,kp.CONNECT,kp.OPTIONS,kp.TRACE,kp.COPY,kp.LOCK,kp.MKCOL,kp.MOVE,kp.PROPFIND,kp.PROPPATCH,kp.SEARCH,kp.UNLOCK,kp.BIND,kp.REBIND,kp.UNBIND,kp.ACL,kp.REPORT,kp.MKACTIVITY,kp.CHECKOUT,kp.MERGE,kp["M-SEARCH"],kp.NOTIFY,kp.SUBSCRIBE,kp.UNSUBSCRIBE,kp.PATCH,kp.PURGE,kp.MKCALENDAR,kp.LINK,kp.UNLINK,kp.PRI,kp.SOURCE];gu.METHODS_ICE=[kp.SOURCE];gu.METHODS_RTSP=[kp.OPTIONS,kp.DESCRIBE,kp.ANNOUNCE,kp.SETUP,kp.PLAY,kp.PAUSE,kp.TEARDOWN,kp.GET_PARAMETER,kp.SET_PARAMETER,kp.REDIRECT,kp.RECORD,kp.FLUSH,kp.GET,kp.POST];gu.METHOD_MAP=Vuo.enumToMap(kp);gu.H_METHOD_MAP={};Object.keys(gu.METHOD_MAP).forEach(e=>{/^H/.test(e)&&(gu.H_METHOD_MAP[e]=gu.METHOD_MAP[e])});var Quo;(function(e){e[e.SAFE=0]="SAFE",e[e.SAFE_WITH_CB=1]="SAFE_WITH_CB",e[e.UNSAFE=2]="UNSAFE"})(Quo=gu.FINISH||(gu.FINISH={}));gu.ALPHA=[];for(let e=65;e<=90;e++)gu.ALPHA.push(String.fromCharCode(e)),gu.ALPHA.push(String.fromCharCode(e+32));gu.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};gu.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15};gu.NUM=["0","1","2","3","4","5","6","7","8","9"];gu.ALPHANUM=gu.ALPHA.concat(gu.NUM);gu.MARK=["-","_",".","!","~","*","'","(",")"];gu.USERINFO_CHARS=gu.ALPHANUM.concat(gu.MARK).concat(["%",";",":","&","=","+","$",","]);gu.STRICT_URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(gu.ALPHANUM);gu.URL_CHAR=gu.STRICT_URL_CHAR.concat([" ","\f"]);for(let e=128;e<=255;e++)gu.URL_CHAR.push(e);gu.HEX=gu.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);gu.STRICT_TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(gu.ALPHANUM);gu.TOKEN=gu.STRICT_TOKEN.concat([" "]);gu.HEADER_CHARS=[" "];for(let e=32;e<=255;e++)e!==127&&gu.HEADER_CHARS.push(e);gu.CONNECTION_TOKEN_CHARS=gu.HEADER_CHARS.filter(e=>e!==44);gu.MAJOR=gu.NUM_MAP;gu.MINOR=gu.MAJOR;var w1e;(function(e){e[e.GENERAL=0]="GENERAL",e[e.CONNECTION=1]="CONNECTION",e[e.CONTENT_LENGTH=2]="CONTENT_LENGTH",e[e.TRANSFER_ENCODING=3]="TRANSFER_ENCODING",e[e.UPGRADE=4]="UPGRADE",e[e.CONNECTION_KEEP_ALIVE=5]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=6]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=7]="CONNECTION_UPGRADE",e[e.TRANSFER_ENCODING_CHUNKED=8]="TRANSFER_ENCODING_CHUNKED"})(w1e=gu.HEADER_STATE||(gu.HEADER_STATE={}));gu.SPECIAL_HEADERS={connection:w1e.CONNECTION,"content-length":w1e.CONTENT_LENGTH,"proxy-connection":w1e.CONNECTION,"transfer-encoding":w1e.TRANSFER_ENCODING,upgrade:w1e.UPGRADE}});var aqt=z((CKc,_wn)=>{"use strict";var Oj=Ih(),{kBodyUsed:R3e}=aE(),oqt=Dt("assert"),{InvalidArgumentError:Yuo}=_b(),Huo=Dt("events"),Xuo=[300,301,302,303,307,308],mwn=Symbol("body"),Clt=class{constructor(t){this[mwn]=t,this[R3e]=!1}async*[Symbol.asyncIterator](){oqt(!this[R3e],"disturbed"),this[R3e]=!0,yield*this[mwn]}},sqt=class{constructor(t,r,s,a){if(r!=null&&(!Number.isInteger(r)||r<0))throw new Yuo("maxRedirections must be a positive number");Oj.validateHandler(a,s.method,s.upgrade),this.dispatch=t,this.location=null,this.abort=null,this.opts={...s,maxRedirections:0},this.maxRedirections=r,this.handler=a,this.history=[],Oj.isStream(this.opts.body)?(Oj.bodyLength(this.opts.body)===0&&this.opts.body.on("data",function(){oqt(!1)}),typeof this.opts.body.readableDidRead!="boolean"&&(this.opts.body[R3e]=!1,Huo.prototype.on.call(this.opts.body,"data",function(){this[R3e]=!0}))):this.opts.body&&typeof this.opts.body.pipeTo=="function"?this.opts.body=new Clt(this.opts.body):this.opts.body&&typeof this.opts.body!="string"&&!ArrayBuffer.isView(this.opts.body)&&Oj.isIterable(this.opts.body)&&(this.opts.body=new Clt(this.opts.body))}onConnect(t){this.abort=t,this.handler.onConnect(t,{history:this.history})}onUpgrade(t,r,s){this.handler.onUpgrade(t,r,s)}onError(t){this.handler.onError(t)}onHeaders(t,r,s,a){if(this.location=this.history.length>=this.maxRedirections||Oj.isDisturbed(this.opts.body)?null:Juo(t,r),this.opts.origin&&this.history.push(new URL(this.opts.path,this.opts.origin)),!this.location)return this.handler.onHeaders(t,r,s,a);let{origin:o,pathname:g,search:p}=Oj.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),f=p?`${g}${p}`:g;this.opts.headers=Uuo(this.opts.headers,t===303,this.opts.origin!==o),this.opts.path=f,this.opts.origin=o,this.opts.maxRedirections=0,this.opts.query=null,t===303&&this.opts.method!=="HEAD"&&(this.opts.method="GET",this.opts.body=null)}onData(t){if(!this.location)return this.handler.onData(t)}onComplete(t){this.location?(this.location=null,this.abort=null,this.dispatch(this.opts,this)):this.handler.onComplete(t)}onBodySent(t){this.handler.onBodySent&&this.handler.onBodySent(t)}};function Juo(e,t){if(Xuo.indexOf(e)===-1)return null;for(let r=0;r{"use strict";var Kuo=aqt();function juo({maxRedirections:e}){return t=>function(s,a){let{maxRedirections:o=e}=s;if(!o)return t(s,a);let g=new Kuo(t,o,s,a);return s={...s,maxRedirections:0},t(s,g)}}ywn.exports=juo});var cqt=z((hKc,bwn)=>{bwn.exports="AGFzbQEAAAABMAhgAX8Bf2ADf39/AX9gBH9/f38Bf2AAAGADf39/AGABfwBgAn9/AGAGf39/f39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQACA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAA0ZFAwMEAAAFAAAAAAAABQEFAAUFBQAABgAAAAAGBgYGAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAABAQcAAAUFAwABBAUBcAESEgUDAQACBggBfwFBgNQECwfRBSIGbWVtb3J5AgALX2luaXRpYWxpemUACRlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALbGxodHRwX2luaXQAChhsbGh0dHBfc2hvdWxkX2tlZXBfYWxpdmUAQQxsbGh0dHBfYWxsb2MADAZtYWxsb2MARgtsbGh0dHBfZnJlZQANBGZyZWUASA9sbGh0dHBfZ2V0X3R5cGUADhVsbGh0dHBfZ2V0X2h0dHBfbWFqb3IADxVsbGh0dHBfZ2V0X2h0dHBfbWlub3IAEBFsbGh0dHBfZ2V0X21ldGhvZAARFmxsaHR0cF9nZXRfc3RhdHVzX2NvZGUAEhJsbGh0dHBfZ2V0X3VwZ3JhZGUAEwxsbGh0dHBfcmVzZXQAFA5sbGh0dHBfZXhlY3V0ZQAVFGxsaHR0cF9zZXR0aW5nc19pbml0ABYNbGxodHRwX2ZpbmlzaAAXDGxsaHR0cF9wYXVzZQAYDWxsaHR0cF9yZXN1bWUAGRtsbGh0dHBfcmVzdW1lX2FmdGVyX3VwZ3JhZGUAGhBsbGh0dHBfZ2V0X2Vycm5vABsXbGxodHRwX2dldF9lcnJvcl9yZWFzb24AHBdsbGh0dHBfc2V0X2Vycm9yX3JlYXNvbgAdFGxsaHR0cF9nZXRfZXJyb3JfcG9zAB4RbGxodHRwX2Vycm5vX25hbWUAHxJsbGh0dHBfbWV0aG9kX25hbWUAIBJsbGh0dHBfc3RhdHVzX25hbWUAIRpsbGh0dHBfc2V0X2xlbmllbnRfaGVhZGVycwAiIWxsaHR0cF9zZXRfbGVuaWVudF9jaHVua2VkX2xlbmd0aAAjHWxsaHR0cF9zZXRfbGVuaWVudF9rZWVwX2FsaXZlACQkbGxodHRwX3NldF9sZW5pZW50X3RyYW5zZmVyX2VuY29kaW5nACUYbGxodHRwX21lc3NhZ2VfbmVlZHNfZW9mAD8JFwEAQQELEQECAwQFCwYHNTk3MS8tJyspCsLgAkUCAAsIABCIgICAAAsZACAAEMKAgIAAGiAAIAI2AjggACABOgAoCxwAIAAgAC8BMiAALQAuIAAQwYCAgAAQgICAgAALKgEBf0HAABDGgICAACIBEMKAgIAAGiABQYCIgIAANgI4IAEgADoAKCABCwoAIAAQyICAgAALBwAgAC0AKAsHACAALQAqCwcAIAAtACsLBwAgAC0AKQsHACAALwEyCwcAIAAtAC4LRQEEfyAAKAIYIQEgAC0ALSECIAAtACghAyAAKAI4IQQgABDCgICAABogACAENgI4IAAgAzoAKCAAIAI6AC0gACABNgIYCxEAIAAgASABIAJqEMOAgIAACxAAIABBAEHcABDMgICAABoLZwEBf0EAIQECQCAAKAIMDQACQAJAAkACQCAALQAvDgMBAAMCCyAAKAI4IgFFDQAgASgCLCIBRQ0AIAAgARGAgICAAAAiAQ0DC0EADwsQyoCAgAAACyAAQcOWgIAANgIQQQ4hAQsgAQseAAJAIAAoAgwNACAAQdGbgIAANgIQIABBFTYCDAsLFgACQCAAKAIMQRVHDQAgAEEANgIMCwsWAAJAIAAoAgxBFkcNACAAQQA2AgwLCwcAIAAoAgwLBwAgACgCEAsJACAAIAE2AhALBwAgACgCFAsiAAJAIABBJEkNABDKgICAAAALIABBAnRBoLOAgABqKAIACyIAAkAgAEEuSQ0AEMqAgIAAAAsgAEECdEGwtICAAGooAgAL7gsBAX9B66iAgAAhAQJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABBnH9qDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0Hhp4CAAA8LQaShgIAADwtBy6yAgAAPC0H+sYCAAA8LQcCkgIAADwtBq6SAgAAPC0GNqICAAA8LQeKmgIAADwtBgLCAgAAPC0G5r4CAAA8LQdekgIAADwtB75+AgAAPC0Hhn4CAAA8LQfqfgIAADwtB8qCAgAAPC0Gor4CAAA8LQa6ygIAADwtBiLCAgAAPC0Hsp4CAAA8LQYKigIAADwtBjp2AgAAPC0HQroCAAA8LQcqjgIAADwtBxbKAgAAPC0HfnICAAA8LQdKcgIAADwtBxKCAgAAPC0HXoICAAA8LQaKfgIAADwtB7a6AgAAPC0GrsICAAA8LQdSlgIAADwtBzK6AgAAPC0H6roCAAA8LQfyrgIAADwtB0rCAgAAPC0HxnYCAAA8LQbuggIAADwtB96uAgAAPC0GQsYCAAA8LQdexgIAADwtBoq2AgAAPC0HUp4CAAA8LQeCrgIAADwtBn6yAgAAPC0HrsYCAAA8LQdWfgIAADwtByrGAgAAPC0HepYCAAA8LQdSegIAADwtB9JyAgAAPC0GnsoCAAA8LQbGdgIAADwtBoJ2AgAAPC0G5sYCAAA8LQbywgIAADwtBkqGAgAAPC0GzpoCAAA8LQemsgIAADwtBrJ6AgAAPC0HUq4CAAA8LQfemgIAADwtBgKaAgAAPC0GwoYCAAA8LQf6egIAADwtBjaOAgAAPC0GJrYCAAA8LQfeigIAADwtBoLGAgAAPC0Gun4CAAA8LQcalgIAADwtB6J6AgAAPC0GTooCAAA8LQcKvgIAADwtBw52AgAAPC0GLrICAAA8LQeGdgIAADwtBja+AgAAPC0HqoYCAAA8LQbStgIAADwtB0q+AgAAPC0HfsoCAAA8LQdKygIAADwtB8LCAgAAPC0GpooCAAA8LQfmjgIAADwtBmZ6AgAAPC0G1rICAAA8LQZuwgIAADwtBkrKAgAAPC0G2q4CAAA8LQcKigIAADwtB+LKAgAAPC0GepYCAAA8LQdCigIAADwtBup6AgAAPC0GBnoCAAA8LEMqAgIAAAAtB1qGAgAAhAQsgAQsWACAAIAAtAC1B/gFxIAFBAEdyOgAtCxkAIAAgAC0ALUH9AXEgAUEAR0EBdHI6AC0LGQAgACAALQAtQfsBcSABQQBHQQJ0cjoALQsZACAAIAAtAC1B9wFxIAFBAEdBA3RyOgAtCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAgAiBEUNACAAIAQRgICAgAAAIQMLIAMLSQECf0EAIQMCQCAAKAI4IgRFDQAgBCgCBCIERQ0AIAAgASACIAFrIAQRgYCAgAAAIgNBf0cNACAAQcaRgIAANgIQQRghAwsgAwsuAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIwIgRFDQAgACAEEYCAgIAAACEDCyADC0kBAn9BACEDAkAgACgCOCIERQ0AIAQoAggiBEUNACAAIAEgAiABayAEEYGAgIAAACIDQX9HDQAgAEH2ioCAADYCEEEYIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCNCIERQ0AIAAgBBGAgICAAAAhAwsgAwtJAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIMIgRFDQAgACABIAIgAWsgBBGBgICAAAAiA0F/Rw0AIABB7ZqAgAA2AhBBGCEDCyADCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAjgiBEUNACAAIAQRgICAgAAAIQMLIAMLSQECf0EAIQMCQCAAKAI4IgRFDQAgBCgCECIERQ0AIAAgASACIAFrIAQRgYCAgAAAIgNBf0cNACAAQZWQgIAANgIQQRghAwsgAwsuAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAI8IgRFDQAgACAEEYCAgIAAACEDCyADC0kBAn9BACEDAkAgACgCOCIERQ0AIAQoAhQiBEUNACAAIAEgAiABayAEEYGAgIAAACIDQX9HDQAgAEGqm4CAADYCEEEYIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCQCIERQ0AIAAgBBGAgICAAAAhAwsgAwtJAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIYIgRFDQAgACABIAIgAWsgBBGBgICAAAAiA0F/Rw0AIABB7ZOAgAA2AhBBGCEDCyADCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAkQiBEUNACAAIAQRgICAgAAAIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCJCIERQ0AIAAgBBGAgICAAAAhAwsgAwsuAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIsIgRFDQAgACAEEYCAgIAAACEDCyADC0kBAn9BACEDAkAgACgCOCIERQ0AIAQoAigiBEUNACAAIAEgAiABayAEEYGAgIAAACIDQX9HDQAgAEH2iICAADYCEEEYIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCUCIERQ0AIAAgBBGAgICAAAAhAwsgAwtJAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIcIgRFDQAgACABIAIgAWsgBBGBgICAAAAiA0F/Rw0AIABBwpmAgAA2AhBBGCEDCyADCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAkgiBEUNACAAIAQRgICAgAAAIQMLIAMLSQECf0EAIQMCQCAAKAI4IgRFDQAgBCgCICIERQ0AIAAgASACIAFrIAQRgYCAgAAAIgNBf0cNACAAQZSUgIAANgIQQRghAwsgAwsuAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAJMIgRFDQAgACAEEYCAgIAAACEDCyADCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAlQiBEUNACAAIAQRgICAgAAAIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCWCIERQ0AIAAgBBGAgICAAAAhAwsgAwtFAQF/AkACQCAALwEwQRRxQRRHDQBBASEDIAAtAChBAUYNASAALwEyQeUARiEDDAELIAAtAClBBUYhAwsgACADOgAuQQAL/gEBA39BASEDAkAgAC8BMCIEQQhxDQAgACkDIEIAUiEDCwJAAkAgAC0ALkUNAEEBIQUgAC0AKUEFRg0BQQEhBSAEQcAAcUUgA3FBAUcNAQtBACEFIARBwABxDQBBAiEFIARB//8DcSIDQQhxDQACQCADQYAEcUUNAAJAIAAtAChBAUcNACAALQAtQQpxDQBBBQ8LQQQPCwJAIANBIHENAAJAIAAtAChBAUYNACAALwEyQf//A3EiAEGcf2pB5ABJDQAgAEHMAUYNACAAQbACRg0AQQQhBSAEQShxRQ0CIANBiARxQYAERg0CC0EADwtBAEEDIAApAyBQGyEFCyAFC2IBAn9BACEBAkAgAC0AKEEBRg0AIAAvATJB//8DcSICQZx/akHkAEkNACACQcwBRg0AIAJBsAJGDQAgAC8BMCIAQcAAcQ0AQQEhASAAQYgEcUGABEYNACAAQShxRSEBCyABC6cBAQN/AkACQAJAIAAtACpFDQAgAC0AK0UNAEEAIQMgAC8BMCIEQQJxRQ0BDAILQQAhAyAALwEwIgRBAXFFDQELQQEhAyAALQAoQQFGDQAgAC8BMkH//wNxIgVBnH9qQeQASQ0AIAVBzAFGDQAgBUGwAkYNACAEQcAAcQ0AQQAhAyAEQYgEcUGABEYNACAEQShxQQBHIQMLIABBADsBMCAAQQA6AC8gAwuZAQECfwJAAkACQCAALQAqRQ0AIAAtACtFDQBBACEBIAAvATAiAkECcUUNAQwCC0EAIQEgAC8BMCICQQFxRQ0BC0EBIQEgAC0AKEEBRg0AIAAvATJB//8DcSIAQZx/akHkAEkNACAAQcwBRg0AIABBsAJGDQAgAkHAAHENAEEAIQEgAkGIBHFBgARGDQAgAkEocUEARyEBCyABC1kAIABBGGpCADcDACAAQgA3AwAgAEE4akIANwMAIABBMGpCADcDACAAQShqQgA3AwAgAEEgakIANwMAIABBEGpCADcDACAAQQhqQgA3AwAgAEHdATYCHEEAC3sBAX8CQCAAKAIMIgMNAAJAIAAoAgRFDQAgACABNgIECwJAIAAgASACEMSAgIAAIgMNACAAKAIMDwsgACADNgIcQQAhAyAAKAIEIgFFDQAgACABIAIgACgCCBGBgICAAAAiAUUNACAAIAI2AhQgACABNgIMIAEhAwsgAwvk8wEDDn8DfgR/I4CAgIAAQRBrIgMkgICAgAAgASEEIAEhBSABIQYgASEHIAEhCCABIQkgASEKIAEhCyABIQwgASENIAEhDiABIQ8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgACgCHCIQQX9qDt0B2gEB2QECAwQFBgcICQoLDA0O2AEPENcBERLWARMUFRYXGBkaG+AB3wEcHR7VAR8gISIjJCXUASYnKCkqKyzTAdIBLS7RAdABLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDREVG2wFHSElKzwHOAUvNAUzMAU1OT1BRUlNUVVZXWFlaW1xdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+f4ABgQGCAYMBhAGFAYYBhwGIAYkBigGLAYwBjQGOAY8BkAGRAZIBkwGUAZUBlgGXAZgBmQGaAZsBnAGdAZ4BnwGgAaEBogGjAaQBpQGmAacBqAGpAaoBqwGsAa0BrgGvAbABsQGyAbMBtAG1AbYBtwHLAcoBuAHJAbkByAG6AbsBvAG9Ab4BvwHAAcEBwgHDAcQBxQHGAQDcAQtBACEQDMYBC0EOIRAMxQELQQ0hEAzEAQtBDyEQDMMBC0EQIRAMwgELQRMhEAzBAQtBFCEQDMABC0EVIRAMvwELQRYhEAy+AQtBFyEQDL0BC0EYIRAMvAELQRkhEAy7AQtBGiEQDLoBC0EbIRAMuQELQRwhEAy4AQtBCCEQDLcBC0EdIRAMtgELQSAhEAy1AQtBHyEQDLQBC0EHIRAMswELQSEhEAyyAQtBIiEQDLEBC0EeIRAMsAELQSMhEAyvAQtBEiEQDK4BC0ERIRAMrQELQSQhEAysAQtBJSEQDKsBC0EmIRAMqgELQSchEAypAQtBwwEhEAyoAQtBKSEQDKcBC0ErIRAMpgELQSwhEAylAQtBLSEQDKQBC0EuIRAMowELQS8hEAyiAQtBxAEhEAyhAQtBMCEQDKABC0E0IRAMnwELQQwhEAyeAQtBMSEQDJ0BC0EyIRAMnAELQTMhEAybAQtBOSEQDJoBC0E1IRAMmQELQcUBIRAMmAELQQshEAyXAQtBOiEQDJYBC0E2IRAMlQELQQohEAyUAQtBNyEQDJMBC0E4IRAMkgELQTwhEAyRAQtBOyEQDJABC0E9IRAMjwELQQkhEAyOAQtBKCEQDI0BC0E+IRAMjAELQT8hEAyLAQtBwAAhEAyKAQtBwQAhEAyJAQtBwgAhEAyIAQtBwwAhEAyHAQtBxAAhEAyGAQtBxQAhEAyFAQtBxgAhEAyEAQtBKiEQDIMBC0HHACEQDIIBC0HIACEQDIEBC0HJACEQDIABC0HKACEQDH8LQcsAIRAMfgtBzQAhEAx9C0HMACEQDHwLQc4AIRAMewtBzwAhEAx6C0HQACEQDHkLQdEAIRAMeAtB0gAhEAx3C0HTACEQDHYLQdQAIRAMdQtB1gAhEAx0C0HVACEQDHMLQQYhEAxyC0HXACEQDHELQQUhEAxwC0HYACEQDG8LQQQhEAxuC0HZACEQDG0LQdoAIRAMbAtB2wAhEAxrC0HcACEQDGoLQQMhEAxpC0HdACEQDGgLQd4AIRAMZwtB3wAhEAxmC0HhACEQDGULQeAAIRAMZAtB4gAhEAxjC0HjACEQDGILQQIhEAxhC0HkACEQDGALQeUAIRAMXwtB5gAhEAxeC0HnACEQDF0LQegAIRAMXAtB6QAhEAxbC0HqACEQDFoLQesAIRAMWQtB7AAhEAxYC0HtACEQDFcLQe4AIRAMVgtB7wAhEAxVC0HwACEQDFQLQfEAIRAMUwtB8gAhEAxSC0HzACEQDFELQfQAIRAMUAtB9QAhEAxPC0H2ACEQDE4LQfcAIRAMTQtB+AAhEAxMC0H5ACEQDEsLQfoAIRAMSgtB+wAhEAxJC0H8ACEQDEgLQf0AIRAMRwtB/gAhEAxGC0H/ACEQDEULQYABIRAMRAtBgQEhEAxDC0GCASEQDEILQYMBIRAMQQtBhAEhEAxAC0GFASEQDD8LQYYBIRAMPgtBhwEhEAw9C0GIASEQDDwLQYkBIRAMOwtBigEhEAw6C0GLASEQDDkLQYwBIRAMOAtBjQEhEAw3C0GOASEQDDYLQY8BIRAMNQtBkAEhEAw0C0GRASEQDDMLQZIBIRAMMgtBkwEhEAwxC0GUASEQDDALQZUBIRAMLwtBlgEhEAwuC0GXASEQDC0LQZgBIRAMLAtBmQEhEAwrC0GaASEQDCoLQZsBIRAMKQtBnAEhEAwoC0GdASEQDCcLQZ4BIRAMJgtBnwEhEAwlC0GgASEQDCQLQaEBIRAMIwtBogEhEAwiC0GjASEQDCELQaQBIRAMIAtBpQEhEAwfC0GmASEQDB4LQacBIRAMHQtBqAEhEAwcC0GpASEQDBsLQaoBIRAMGgtBqwEhEAwZC0GsASEQDBgLQa0BIRAMFwtBrgEhEAwWC0EBIRAMFQtBrwEhEAwUC0GwASEQDBMLQbEBIRAMEgtBswEhEAwRC0GyASEQDBALQbQBIRAMDwtBtQEhEAwOC0G2ASEQDA0LQbcBIRAMDAtBuAEhEAwLC0G5ASEQDAoLQboBIRAMCQtBuwEhEAwIC0HGASEQDAcLQbwBIRAMBgtBvQEhEAwFC0G+ASEQDAQLQb8BIRAMAwtBwAEhEAwCC0HCASEQDAELQcEBIRALA0ACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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FCAAIBA2AgxBACEQDLIBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxNCyAAQdMANgIcIAAgATYCFCAAIBA2AgxBACEQDLEBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxRCyAAQeUANgIcIAAgATYCFCAAIBA2AgxBACEQDLABCyAAQQA2AhwgACABNgIUIABBxoqAgAA2AhAgAEEHNgIMQQAhEAyvAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMSQsgAEHSADYCHCAAIAE2AhQgACAQNgIMQQAhEAyuAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMSQsgAEHTADYCHCAAIAE2AhQgACAQNgIMQQAhEAytAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMTQsgAEHlADYCHCAAIAE2AhQgACAQNgIMQQAhEAysAQsgAEEANgIcIAAgATYCFCAAQdyIgIAANgIQIABBBzYCDEEAIRAMqwELIBBBP0cNASABQQFqIQELQQUhEAyQAQtBACEQIABBADYCHCAAIAE2AhQgAEH9koCAADYCECAAQQc2AgwMqAELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEILIABB0gA2AhwgACABNgIUIAAgEDYCDEEAIRAMpwELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEILIABB0wA2AhwgACABNgIUIAAgEDYCDEEAIRAMpgELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEYLIABB5QA2AhwgACABNgIUIAAgEDYCDEEAIRAMpQELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDD8LIABB0gA2AhwgACAUNgIUIAAgATYCDEEAIRAMpAELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDD8LIABB0wA2AhwgACAUNgIUIAAgATYCDEEAIRAMowELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDEMLIABB5QA2AhwgACAU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YWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWVzc2FnZV9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX21ldGhvZF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lYCBjYWxsYmFjayBlcnJvcgBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNlcnZlcgBJbnZhbGlkIGhlYWRlciB2YWx1ZSBjaGFyAEludmFsaWQgaGVhZGVyIGZpZWxkIGNoYXIAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl92ZXJzaW9uAEludmFsaWQgbWlub3IgdmVyc2lvbgBJbnZhbGlkIG1ham9yIHZlcnNpb24ARXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgdmVyc2lvbgBFeHBlY3RlZCBDUkxGIGFmdGVyIHZlcnNpb24ASW52YWxpZCBIVFRQIHZlcnNpb24ASW52YWxpZCBoZWFkZXIgdG9rZW4AU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl91cmwASW52YWxpZCBjaGFyYWN0ZXJzIGluIHVybABVbmV4cGVjdGVkIHN0YXJ0IGNoYXIgaW4gdXJsAERvdWJsZSBAIGluIHVybABFbXB0eSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXJhY3RlciBpbiBDb250ZW50LUxlbmd0aABEdXBsaWNhdGUgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyIGluIHVybCBwYXRoAENvbnRlbnQtTGVuZ3RoIGNhbid0IGJlIHByZXNlbnQgd2l0aCBUcmFuc2Zlci1FbmNvZGluZwBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBzaXplAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25faGVhZGVyX3ZhbHVlAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgdmFsdWUATWlzc2luZyBleHBlY3RlZCBMRiBhZnRlciBoZWFkZXIgdmFsdWUASW52YWxpZCBgVHJhbnNmZXItRW5jb2RpbmdgIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHF1b3RlIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fbmFtZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIG5hbWUAUGF1c2Ugb24gQ09OTkVDVC9VcGdyYWRlAFBhdXNlIG9uIFBSSS9VcGdyYWRlAEV4cGVjdGVkIEhUVFAvMiBDb25uZWN0aW9uIFByZWZhY2UAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9tZXRob2QARXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgbWV0aG9kAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25faGVhZGVyX2ZpZWxkAFBhdXNlZABJbnZhbGlkIHdvcmQgZW5jb3VudGVyZWQASW52YWxpZCBtZXRob2QgZW5jb3VudGVyZWQAVW5leHBlY3RlZCBjaGFyIGluIHVybCBzY2hlbWEAUmVxdWVzdCBoYXMgaW52YWxpZCBgVHJhbnNmZXItRW5jb2RpbmdgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX0NIVU5LX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX05BTUVfQ09NUExFVEUASFBFX0NCX01FU1NBR0VfQ09NUExFVEUASFBFX0NCX01FVEhPRF9DT01QTEVURQBIUEVfQ0JfSEVBREVSX0ZJRUxEX0NPTVBMRVRFAERFTEVURQBIUEVfSU5WQUxJRF9FT0ZfU1RBVEUASU5WQUxJRF9TU0xfQ0VSVElGSUNBVEUAUEFVU0UATk9fUkVTUE9OU0UAVU5TVVBQT1JURURfTUVESUFfVFlQRQBHT05FAE5PVF9BQ0NFUFRBQkxFAFNFUlZJQ0VfVU5BVkFJTEFCTEUAUkFOR0VfTk9UX1NBVElTRklBQkxFAE9SSUdJTl9JU19VTlJFQUNIQUJMRQBSRVNQT05TRV9JU19TVEFMRQBQVVJHRQBNRVJHRQBSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFAFJFUVVFU1RfSEVBREVSX1RPT19MQVJHRQBQQVlMT0FEX1RPT19MQVJHRQBJTlNVRkZJQ0lFTlRfU1RPUkFHRQBIUEVfUEFVU0VEX1VQR1JBREUASFBFX1BBVVNFRF9IMl9VUEdSQURFAFNPVVJDRQBBTk5PVU5DRQBUUkFDRQBIUEVfVU5FWFBFQ1RFRF9TUEFDRQBERVNDUklCRQBVTlNVQlNDUklCRQBSRUNPUkQASFBFX0lOVkFMSURfTUVUSE9EAE5PVF9GT1VORABQUk9QRklORABVTkJJTkQAUkVCSU5EAFVOQVVUSE9SSVpFRABNRVRIT0RfTk9UX0FMTE9XRUQASFRUUF9WRVJTSU9OX05PVF9TVVBQT1JURUQAQUxSRUFEWV9SRVBPUlRFRABBQ0NFUFRFRABOT1RfSU1QTEVNRU5URUQATE9PUF9ERVRFQ1RFRABIUEVfQ1JfRVhQRUNURUQASFBFX0xGX0VYUEVDVEVEAENSRUFURUQASU1fVVNFRABIUEVfUEFVU0VEAFRJTUVPVVRfT0NDVVJFRABQQVlNRU5UX1JFUVVJUkVEAFBSRUNPTkRJVElPTl9SRVFVSVJFRABQUk9YWV9BVVRIRU5USUNBVElPTl9SRVFVSVJFRABORVRXT1JLX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAExFTkdUSF9SRVFVSVJFRABTU0xfQ0VSVElGSUNBVEVfUkVRVUlSRUQAVVBHUkFERV9SRVFVSVJFRABQQUdFX0VYUElSRUQAUFJFQ09ORElUSU9OX0ZBSUxFRABFWFBFQ1RBVElPTl9GQUlMRUQAUkVWQUxJREFUSU9OX0ZBSUxFRABTU0xfSEFORFNIQUtFX0ZBSUxFRABMT0NLRUQAVFJBTlNGT1JNQVRJT05fQVBQTElFRABOT1RfTU9ESUZJRUQATk9UX0VYVEVOREVEAEJBTkRXSURUSF9MSU1JVF9FWENFRURFRABTSVRFX0lTX09WRVJMT0FERUQASEVBRABFeHBlY3RlZCBIVFRQLwAAXhMAACYTAAAwEAAA8BcAAJ0TAAAVEgAAORcAAPASAAAKEAAAdRIAAK0SAACCEwAATxQAAH8QAACgFQAAIxQAAIkSAACLFAAATRUAANQRAADPFAAAEBgAAMkWAADcFgAAwREAAOAXAAC7FAAAdBQAAHwVAADlFAAACBcAAB8QAABlFQAAoxQAACgVAAACFQAAmRUAACwQAACLGQAATw8AANQOAABqEAAAzhAAAAIXAACJDgAAbhMAABwTAABmFAAAVhcAAMETAADNEwAAbBMAAGgXAABmFwAAXxcAACITAADODwAAaQ4AANgOAABjFgAAyxMAAKoOAAAoFwAAJhcAAMUTAABdFgAA6BEAAGcTAABlEwAA8hYAAHMTAAAdFwAA+RYAAPMRAADPDgAAzhUAAAwSAACzEQAApREAAGEQAAAyFwAAuxMAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAIDAgICAgIAAAICAAICAAICAgICAgICAgIABAAAAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAACAAICAgICAAACAgACAgACAgICAgICAgICAAMABAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbG9zZWVlcC1hbGl2ZQAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBY2h1bmtlZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEAAQEBAQEAAAEBAAEBAAEBAQEBAQEBAQEAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AAAAAAAAAAAAAAAAAAAByYW5zZmVyLWVuY29kaW5ncGdyYWRlDQoNCg0KU00NCg0KVFRQL0NFL1RTUC8AAAAAAAAAAAAAAAABAgABAwAAAAAAAAAAAAAAAAAAAAAAAAQBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAQIAAQMAAAAAAAAAAAAAAAAAAAAAAAAEAQEFAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAQAAAgAAAAAAAAAAAAAAAAAAAAAAAAMEAAAEBAQEBAQEBAQEBAUEBAQEBAQEBAQEBAQABAAGBwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAIAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABOT1VOQ0VFQ0tPVVRORUNURVRFQ1JJQkVMVVNIRVRFQURTRUFSQ0hSR0VDVElWSVRZTEVOREFSVkVPVElGWVBUSU9OU0NIU0VBWVNUQVRDSEdFT1JESVJFQ1RPUlRSQ0hQQVJBTUVURVJVUkNFQlNDUklCRUFSRE9XTkFDRUlORE5LQ0tVQlNDUklCRUhUVFAvQURUUC8="});var Bwn=z((_Kc,Ewn)=>{Ewn.exports="AGFzbQEAAAABMAhgAX8Bf2ADf39/AX9gBH9/f38Bf2AAAGADf39/AGABfwBgAn9/AGAGf39/f39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQACA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAA0ZFAwMEAAAFAAAAAAAABQEFAAUFBQAABgAAAAAGBgYGAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAABAQcAAAUFAwABBAUBcAESEgUDAQACBggBfwFBgNQECwfRBSIGbWVtb3J5AgALX2luaXRpYWxpemUACRlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALbGxodHRwX2luaXQAChhsbGh0dHBfc2hvdWxkX2tlZXBfYWxpdmUAQQxsbGh0dHBfYWxsb2MADAZtYWxsb2MARgtsbGh0dHBfZnJlZQANBGZyZWUASA9sbGh0dHBfZ2V0X3R5cGUADhVsbGh0dHBfZ2V0X2h0dHBfbWFqb3IADxVsbGh0dHBfZ2V0X2h0dHBfbWlub3IAEBFsbGh0dHBfZ2V0X21ldGhvZAARFmxsaHR0cF9nZXRfc3RhdHVzX2NvZGUAEhJsbGh0dHBfZ2V0X3VwZ3JhZGUAEwxsbGh0dHBfcmVzZXQAFA5sbGh0dHBfZXhlY3V0ZQAVFGxsaHR0cF9zZXR0aW5nc19pbml0ABYNbGxodHRwX2ZpbmlzaAAXDGxsaHR0cF9wYXVzZQAYDWxsaHR0cF9yZXN1bWUAGRtsbGh0dHBfcmVzdW1lX2FmdGVyX3VwZ3JhZGUAGhBsbGh0dHBfZ2V0X2Vycm5vABsXbGxodHRwX2dldF9lcnJvcl9yZWFzb24AHBdsbGh0dHBfc2V0X2Vycm9yX3JlYXNvbgAdFGxsaHR0cF9nZXRfZXJyb3JfcG9zAB4RbGxodHRwX2Vycm5vX25hbWUAHxJsbGh0dHBfbWV0aG9kX25hbWUAIBJs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IAH9CwMAIABBMGogAf0LAwAgAEEgaiAB/QsDACAAQd0BNgIcQQALewEBfwJAIAAoAgwiAw0AAkAgACgCBEUNACAAIAE2AgQLAkAgACABIAIQxICAgAAiAw0AIAAoAgwPCyAAIAM2AhxBACEDIAAoAgQiAUUNACAAIAEgAiAAKAIIEYGAgIAAACIBRQ0AIAAgAjYCFCAAIAE2AgwgASEDCyADC+TzAQMOfwN+BH8jgICAgABBEGsiAySAgICAACABIQQgASEFIAEhBiABIQcgASEIIAEhCSABIQogASELIAEhDCABIQ0gASEOIAEhDwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAAKAIcIhBBf2oO3QHaAQHZAQIDBAUGBwgJCgsMDQ7YAQ8Q1wEREtYBExQVFhcYGRob4AHfARwdHtUBHyAhIiMkJdQBJicoKSorLNMB0gEtLtEB0AEvMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUbbAUdISUrPAc4BS80BTMwBTU5PUFFSU1RVVldYWVpbXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX5/gAGBAYIBgwGEAYUBhgGHAYgBiQGKAYsBjAGNAY4BjwGQAZEB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QAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIBAOxwEAAQID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YWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fdmFsdWVgIGNhbGxiYWNrIGVycm9yAGBvbl9zdGF0dXNfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl92ZXJzaW9uX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdXJsX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAEVtcHR5IENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhcmFjdGVyIGluIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBNaXNzaW5nIGV4cGVjdGVkIExGIGFmdGVyIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AgaGVhZGVyIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGUgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZWQgdmFsdWUAUGF1c2VkIGJ5IG9uX2hlYWRlcnNfY29tcGxldGUASW52YWxpZCBFT0Ygc3RhdGUAb25fcmVzZXQgcGF1c2UAb25fY2h1bmtfaGVhZGVyIHBhdXNlAG9uX21lc3NhZ2VfYmVnaW4gcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlIHBhdXNlAG9uX3N0YXR1c19jb21wbGV0ZSBwYXVzZQBvbl92ZXJzaW9uX2NvbXBsZXRlIHBhdXNlAG9uX3VybF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGUgcGF1c2UAb25fbWVzc2FnZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXRob2RfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lIHBhdXNlAFVuZXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgc3RhcnQgbGluZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgbmFtZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AAU1dJVENIX1BST1hZAFVTRV9QUk9YWQBNS0FDVElWSVRZAFVOUFJPQ0VTU0FCTEVfRU5USVRZAENPUFkATU9WRURfUEVSTUFORU5UTFkAVE9PX0VBUkxZAE5PVElGWQBGQUlMRURfREVQRU5ERU5DWQBCQURfR0FURVdBWQBQTEFZAFBVVABDSEVDS09VVABHQVRFV0FZX1RJTUVPVVQAUkVRVUVTVF9USU1FT1VUAE5FVFdPUktfQ09OTkVDVF9USU1FT1VUAENPTk5FQ1RJT05fVElNRU9VVABMT0dJTl9USU1FT1VUAE5FVFdPUktfUkVBRF9USU1FT1VUAFBPU1QATUlTRElSRUNURURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9MT0FEX0JBTEFOQ0VEX1JFUVVFU1QAQkFEX1JFUVVFU1QASFRUUF9SRVFVRVNUX1NFTlRfVE9fSFRUUFNfUE9SVABSRVBPUlQASU1fQV9URUFQT1QAUkVTRVRfQ09OVEVOVABOT19DT05URU5UAFBBUlRJQUxfQ09OVEVOVABIUEVfSU5WQUxJRF9DT05TVEFOVABIUEVfQ0JfUkVTRVQAR0VUAEhQRV9TVFJJQ1QAQ09ORkxJQ1QAVEVNUE9SQVJZX1JFRElSRUNUAFBFUk1BTkVOVF9SRURJUkVDVABDT05ORUNUAE1VTFRJX1NUQVRVUwBIUEVfSU5WQUxJRF9TVEFUVVMAVE9PX01BTllfUkVRVUVTVFMARUFSTFlfSElOVFMAVU5BVkFJTEFCTEVfRk9SX0xFR0FMX1JFQVNPTlMAT1BUSU9OUwBTV0lUQ0hJTkdfUFJPVE9DT0xTAFZBUklBTlRfQUxTT19ORUdPVElBVEVTAE1VTFRJUExFX0NIT0lDRVMASU5URVJOQUxfU0VSVkVSX0VSUk9SAFdFQl9TRVJWRVJfVU5LTk9XTl9FUlJPUgBSQUlMR1VOX0VSUk9SAElERU5USVRZX1BST1ZJREVSX0FVVEhFTlRJQ0FUSU9OX0VSUk9SAFNTTF9DRVJUSUZJQ0FURV9FUlJPUgBJTlZBTElEX1hfRk9SV0FSREVEX0ZPUgBTRVRfUEFSQU1FVEVSAEdFVF9QQVJBTUVURVIASFBFX1VTRVIAU0VFX09USEVSAEhQRV9DQl9DSFVOS19IRUFERVIATUtDQUxFTkRBUgBTRVRVUABXRUJfU0VSVkVSX0lTX0RPV04AVEVBUkRPV04ASFBFX0NMT1NFRF9DT05ORUNUSU9OAEhFVVJJU1RJQ19FWFBJUkFUSU9OAERJU0NPTk5FQ1RFRF9PUEVSQVRJT04ATk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04ASFBFX0lOVkFMSURfVkVSU0lPTgBIUEVfQ0JfTUVTU0FHRV9CRUdJTgBTSVRFX0lTX0ZST1pFTgBIUEVfSU5WQUxJRF9IRUFERVJfVE9LRU4ASU5WQUxJRF9UT0tFTgBGT1JCSURERU4ARU5IQU5DRV9ZT1VSX0NBTE0ASFBFX0lOVkFMSURfVVJMAEJMT0NLRURfQllfUEFSRU5UQUxfQ09OVFJPTABNS0NPTABBQ0wASFBFX0lOVEVSTkFMAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0VfVU5PRkZJQ0lBTABIUEVfT0sAVU5MSU5LAFVOTE9DSwBQUkkAUkVUUllfV0lUSABIUEVfSU5WQUxJRF9DT05URU5UX0xFTkdUSABIUEVfVU5FWFBFQ1RFRF9DT05URU5UX0xFTkdUSABGTFVTSABQUk9QUEFUQ0gATS1TRUFSQ0gAVVJJX1RPT19MT05HAFBST0NFU1NJTkcATUlTQ0VMTEFORU9VU19QRVJTSVNURU5UX1dBUk5JTkcATUlTQ0VMTEFORU9VU19XQVJOSU5HAEhQRV9JTlZBTElEX1RSQU5TRkVSX0VOQ09ESU5HAEV4cGVjdGVkIENSTEYASFBFX0lOVkFMSURfQ0hVTktfU0laRQBNT1ZFAENPTlRJTlVFAEhQRV9DQl9TVEFUVVNfQ09NUExFVEUASFBFX0NCX0hFQURFUlNfQ09NUExFVEUASFBFX0NCX1ZFUlNJT05fQ09NUExFVEUASFBFX0NCX1VSTF9DT01QTEVURQBIUEVfQ0JfQ0hVTktfQ09NUExFVEUASFBFX0NCX0hFQURFUl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fTkFNRV9DT01QTEVURQBIUEVfQ0JfTUVTU0FHRV9DT01QTEVURQBIUEVfQ0JfTUVUSE9EX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfRklFTERfQ09NUExFVEUAREVMRVRFAEhQRV9JTlZBTElEX0VPRl9TVEFURQBJTlZBTElEX1NTTF9DRVJUSUZJQ0FURQBQQVVTRQBOT19SRVNQT05TRQBVTlNVUFBPUlRFRF9NRURJQV9UWVBFAEdPTkUATk9UX0FDQ0VQVEFCTEUAU0VSVklDRV9VTkFWQUlMQUJMRQBSQU5HRV9OT1RfU0FUSVNGSUFCTEUAT1JJR0lOX0lTX1VOUkVBQ0hBQkxFAFJFU1BPTlNFX0lTX1NUQUxFAFBVUkdFAE1FUkdFAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UAUkVRVUVTVF9IRUFERVJfVE9PX0xBUkdFAFBBWUxPQURfVE9PX0xBUkdFAElOU1VGRklDSUVOVF9TVE9SQUdFAEhQRV9QQVVTRURfVVBHUkFERQBIUEVfUEFVU0VEX0gyX1VQR1JBREUAU09VUkNFAEFOTk9VTkNFAFRSQUNFAEhQRV9VTkVYUEVDVEVEX1NQQUNFAERFU0NSSUJFAFVOU1VCU0NSSUJFAFJFQ09SRABIUEVfSU5WQUxJRF9NRVRIT0QATk9UX0ZPVU5EAFBST1BGSU5EAFVOQklORABSRUJJTkQAVU5BVVRIT1JJWkVEAE1FVEhPRF9OT1RfQUxMT1dFRABIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRABBTFJFQURZX1JFUE9SVEVEAEFDQ0VQVEVEAE5PVF9JTVBMRU1FTlRFRABMT09QX0RFVEVDVEVEAEhQRV9DUl9FWFBFQ1RFRABIUEVfTEZfRVhQRUNURUQAQ1JFQVRFRABJTV9VU0VEAEhQRV9QQVVTRUQAVElNRU9VVF9PQ0NVUkVEAFBBWU1FTlRfUkVRVUlSRUQAUFJFQ09ORElUSU9OX1JFUVVJUkVEAFBST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAE5FVFdPUktfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATEVOR1RIX1JFUVVJUkVEAFNTTF9DRVJUSUZJQ0FURV9SRVFVSVJFRABVUEdSQURFX1JFUVVJUkVEAFBBR0VfRVhQSVJFRABQUkVDT05ESVRJT05fRkFJTEVEAEVYUEVDVEFUSU9OX0ZBSUxFRABSRVZBTElEQVRJT05fRkFJTEVEAFNTTF9IQU5EU0hBS0VfRkFJTEVEAExPQ0tFRABUUkFOU0ZPUk1BVElPTl9BUFBMSUVEAE5PVF9NT0RJRklFRABOT1RfRVhURU5ERUQAQkFORFdJRFRIX0xJTUlUX0VYQ0VFREVEAFNJVEVfSVNfT1ZFUkxPQURFRABIRUFEAEV4cGVjdGVkIEhUVFAvAABeEwAAJhMAADAQAADwFwAAnRMAABUSAAA5FwAA8BIAAAoQAAB1EgAArRIAAIITAABPFAAAfxAAAKAVAAAjFAAAiRIAAIsUAABNFQAA1BEAAM8UAAAQGAAAyRYAANwWAADBEQAA4BcAALsUAAB0FAAAfBUAAOUUAAAIFwAAHxAAAGUVAACjFAAAKBUAAAIVAACZFQAALBAAAIsZAABPDwAA1A4AAGoQAADOEAAAAhcAAIkOAABuEwAAHBMAAGYUAABWFwAAwRMAAM0TAABsEwAAaBcAAGYXAABfFwAAIhMAAM4PAABpDgAA2A4AAGMWAADLEwAAqg4AACgXAAAmFwAAxRMAAF0WAADoEQAAZxMAAGUTAADyFgAAcxMAAB0XAAD5FgAA8xEAAM8OAADOFQAADBIAALMRAAClEQAAYRAAADIXAAC7EwAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAgMCAgICAgAAAgIAAgIAAgICAgICAgICAgAEAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAIAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAIAAgICAgIAAAICAAICAAICAgICAgICAgIAAwAEAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABsb3NlZWVwLWFsaXZlAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFjaHVua2VkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGVjdGlvbmVudC1sZW5ndGhvbnJveHktY29ubmVjdGlvbgAAAAAAAAAAAAAAAAAAAHJhbnNmZXItZW5jb2RpbmdwZ3JhZGUNCg0KDQpTTQ0KDQpUVFAvQ0UvVFNQLwAAAAAAAAAAAAAAAAECAAEDAAAAAAAAAAAAAAAAAAAAAAAABAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAgABAwAAAAAAAAAAAAAAAAAAAAAAAAQBAQUBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAABAAACAAAAAAAAAAAAAAAAAAAAAAAAAwQAAAQEBAQEBAQEBAQEBQQEBAQEBAQEBAQEBAAEAAYHBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAgAAAAACAAAAAAAAAAAAAAAAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE5PVU5DRUVDS09VVE5FQ1RFVEVDUklCRUxVU0hFVEVBRFNFQVJDSFJHRUNUSVZJVFlMRU5EQVJWRU9USUZZUFRJT05TQ0hTRUFZU1RBVENIR0VPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFSFRUUC9BRFRQLw=="});var L3e=z((yKc,Qwn)=>{"use strict";var yA=Dt("assert"),wwn=Dt("net"),zuo=Dt("http"),{pipeline:quo}=Dt("stream"),yp=Ih(),lqt=Lvn(),gqt=uwn(),$uo=T3e(),{RequestContentLengthMismatchError:Mj,ResponseContentLengthMismatchError:ego,InvalidArgumentError:nS,RequestAbortedError:hqt,HeadersTimeoutError:tgo,HeadersOverflowError:rgo,SocketError:N1e,InformationalError:$J,BodyTimeoutError:ngo,HTTPParserError:igo,ResponseExceededMaxSizeError:sgo,ClientDestroyedError:ogo}=_b(),ago=N3e(),{kUrl:kD,kReset:wF,kServerName:iie,kClient:eU,kBusy:Aqt,kParser:zB,kConnect:cgo,kBlocking:R1e,kResuming:ude,kRunning:sB,kPending:Ade,kSize:gde,kWriting:Qj,kQueue:t1,kConnected:lgo,kConnecting:T1e,kNeedDrain:oie,kNoRef:D3e,kKeepAliveDefaultTimeout:dqt,kHostHeader:Twn,kPendingIdx:TW,kRunningIdx:r1,kError:GD,kPipelining:aie,kSocket:qB,kKeepAliveTimeoutValue:G3e,kMaxHeadersSize:ylt,kKeepAliveMaxTimeout:Nwn,kKeepAliveTimeoutThreshold:Rwn,kHeadersTimeout:Dwn,kBodyTimeout:xwn,kStrictContentLength:F3e,kConnector:x3e,kMaxRedirections:ugo,kMaxRequests:Z3e,kCounter:kwn,kClose:ggo,kDestroy:Ago,kDispatch:dgo,kInterceptors:pgo,kLocalAddress:k3e,kMaxResponseSize:Gwn,kHTTPConnVersion:tU,kHost:Fwn,kHTTP2Session:NW,kHTTP2SessionState:Elt,kHTTP2BuildRequest:fgo,kHTTP2CopyHeaders:Igo,kHTTP1BuildRequest:Cgo}=aE(),Blt;try{Blt=Dt("http2")}catch{Blt={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:mgo,HTTP2_HEADER_METHOD:hgo,HTTP2_HEADER_PATH:_go,HTTP2_HEADER_SCHEME:ygo,HTTP2_HEADER_CONTENT_LENGTH:bgo,HTTP2_HEADER_EXPECT:Ego,HTTP2_HEADER_STATUS:Bgo}}=Blt,vwn=!1,hlt=Buffer[Symbol.species],sie=Symbol("kClosedResolve"),bk={};try{let e=Dt("diagnostics_channel");bk.sendHeaders=e.channel("undici:client:sendHeaders"),bk.beforeConnect=e.channel("undici:client:beforeConnect"),bk.connectError=e.channel("undici:client:connectError"),bk.connected=e.channel("undici:client:connected")}catch{bk.sendHeaders={hasSubscribers:!1},bk.beforeConnect={hasSubscribers:!1},bk.connectError={hasSubscribers:!1},bk.connected={hasSubscribers:!1}}var pqt=class extends $uo{constructor(t,{interceptors:r,maxHeaderSize:s,headersTimeout:a,socketTimeout:o,requestTimeout:g,connectTimeout:p,bodyTimeout:f,idleTimeout:m,keepAlive:y,keepAliveTimeout:B,maxKeepAliveTimeout:v,keepAliveMaxTimeout:G,keepAliveTimeoutThreshold:T,socketPath:O,pipelining:X,tls:U,strictContentLength:le,maxCachedSessions:ae,maxRedirections:ge,connect:fe,maxRequestsPerClient:pe,localAddress:he,maxResponseSize:be,autoSelectFamily:Te,autoSelectFamilyAttemptTimeout:ke,allowH2:x,maxConcurrentStreams:et}={}){if(super(),y!==void 0)throw new nS("unsupported keepAlive, use pipelining=0 instead");if(o!==void 0)throw new nS("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(g!==void 0)throw new nS("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(m!==void 0)throw new nS("unsupported idleTimeout, use keepAliveTimeout instead");if(v!==void 0)throw new nS("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(s!=null&&!Number.isFinite(s))throw new nS("invalid maxHeaderSize");if(O!=null&&typeof O!="string")throw new nS("invalid socketPath");if(p!=null&&(!Number.isFinite(p)||p<0))throw new nS("invalid connectTimeout");if(B!=null&&(!Number.isFinite(B)||B<=0))throw new nS("invalid keepAliveTimeout");if(G!=null&&(!Number.isFinite(G)||G<=0))throw new nS("invalid keepAliveMaxTimeout");if(T!=null&&!Number.isFinite(T))throw new nS("invalid keepAliveTimeoutThreshold");if(a!=null&&(!Number.isInteger(a)||a<0))throw new nS("headersTimeout must be a positive integer or zero");if(f!=null&&(!Number.isInteger(f)||f<0))throw new nS("bodyTimeout must be a positive integer or zero");if(fe!=null&&typeof fe!="function"&&typeof fe!="object")throw new nS("connect must be a function or an object");if(ge!=null&&(!Number.isInteger(ge)||ge<0))throw new nS("maxRedirections must be a positive number");if(pe!=null&&(!Number.isInteger(pe)||pe<0))throw new nS("maxRequestsPerClient must be a positive number");if(he!=null&&(typeof he!="string"||wwn.isIP(he)===0))throw new nS("localAddress must be valid string IP address");if(be!=null&&(!Number.isInteger(be)||be<-1))throw new nS("maxResponseSize must be a positive number");if(ke!=null&&(!Number.isInteger(ke)||ke<-1))throw new nS("autoSelectFamilyAttemptTimeout must be a positive number");if(x!=null&&typeof x!="boolean")throw new nS("allowH2 must be a valid boolean value");if(et!=null&&(typeof et!="number"||et<1))throw new nS("maxConcurrentStreams must be a possitive integer, greater than 0");typeof fe!="function"&&(fe=ago({...U,maxCachedSessions:ae,allowH2:x,socketPath:O,timeout:p,...yp.nodeHasAutoSelectFamily&&Te?{autoSelectFamily:Te,autoSelectFamilyAttemptTimeout:ke}:void 0,...fe})),this[pgo]=r&&r.Client&&Array.isArray(r.Client)?r.Client:[Ngo({maxRedirections:ge})],this[kD]=yp.parseOrigin(t),this[x3e]=fe,this[qB]=null,this[aie]=X??1,this[ylt]=s||zuo.maxHeaderSize,this[dqt]=B??4e3,this[Nwn]=G??6e5,this[Rwn]=T??1e3,this[G3e]=this[dqt],this[iie]=null,this[k3e]=he??null,this[ude]=0,this[oie]=0,this[Twn]=`host: ${this[kD].hostname}${this[kD].port?`:${this[kD].port}`:""}\r -`,this[xwn]=f??3e5,this[Dwn]=a??3e5,this[F3e]=le??!0,this[ugo]=ge,this[Z3e]=pe,this[sie]=null,this[Gwn]=be>-1?be:-1,this[tU]="h1",this[NW]=null,this[Elt]=x?{openStreams:0,maxConcurrentStreams:et??100}:null,this[Fwn]=`${this[kD].hostname}${this[kD].port?`:${this[kD].port}`:""}`,this[t1]=[],this[r1]=0,this[TW]=0}get pipelining(){return this[aie]}set pipelining(t){this[aie]=t,RW(this,!0)}get[Ade](){return this[t1].length-this[TW]}get[sB](){return this[TW]-this[r1]}get[gde](){return this[t1].length-this[r1]}get[lgo](){return!!this[qB]&&!this[T1e]&&!this[qB].destroyed}get[Aqt](){let t=this[qB];return t&&(t[wF]||t[Qj]||t[R1e])||this[gde]>=(this[aie]||1)||this[Ade]>0}[cgo](t){Wwn(this),this.once("connect",t)}[dgo](t,r){let s=t.origin||this[kD].origin,a=this[tU]==="h2"?gqt[fgo](s,t,r):gqt[Cgo](s,t,r);return this[t1].push(a),this[ude]||(yp.bodyLength(a.body)==null&&yp.isIterable(a.body)?(this[ude]=1,process.nextTick(RW,this)):RW(this,!0)),this[ude]&&this[oie]!==2&&this[Aqt]&&(this[oie]=2),this[oie]<2}async[ggo](){return new Promise(t=>{this[gde]?this[sie]=t:t(null)})}async[Ago](t){return new Promise(r=>{let s=this[t1].splice(this[TW]);for(let o=0;o{this[sie]&&(this[sie](),this[sie]=null),r()};this[NW]!=null&&(yp.destroy(this[NW],t),this[NW]=null,this[Elt]=null),this[qB]?yp.destroy(this[qB].on("close",a),t):queueMicrotask(a),RW(this)})}};function vgo(e){yA(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[qB][GD]=e,wlt(this[eU],e)}function Sgo(e,t,r){let s=new $J(`HTTP/2: "frameError" received - type ${e}, code ${t}`);r===0&&(this[qB][GD]=s,wlt(this[eU],s))}function wgo(){yp.destroy(this,new N1e("other side closed")),yp.destroy(this[qB],new N1e("other side closed"))}function Tgo(e){let t=this[eU],r=new $J(`HTTP/2: "GOAWAY" frame received with code ${e}`);if(t[qB]=null,t[NW]=null,t.destroyed){yA(this[Ade]===0);let s=t[t1].splice(t[r1]);for(let a=0;a0){let s=t[t1][t[r1]];t[t1][t[r1]++]=null,TF(t,s,r)}t[TW]=t[r1],yA(t[sB]===0),t.emit("disconnect",t[kD],[t],r),RW(t)}var jJ=Cwn(),Ngo=mlt(),Rgo=Buffer.alloc(0);async function Dgo(){let e=process.env.JEST_WORKER_ID?cqt():void 0,t;try{t=await WebAssembly.compile(Buffer.from(Bwn(),"base64"))}catch{t=await WebAssembly.compile(Buffer.from(e||cqt(),"base64"))}return await WebAssembly.instantiate(t,{env:{wasm_on_url:(r,s,a)=>0,wasm_on_status:(r,s,a)=>{yA.strictEqual(GT.ptr,r);let o=s-qJ+zJ.byteOffset;return GT.onStatus(new hlt(zJ.buffer,o,a))||0},wasm_on_message_begin:r=>(yA.strictEqual(GT.ptr,r),GT.onMessageBegin()||0),wasm_on_header_field:(r,s,a)=>{yA.strictEqual(GT.ptr,r);let o=s-qJ+zJ.byteOffset;return GT.onHeaderField(new hlt(zJ.buffer,o,a))||0},wasm_on_header_value:(r,s,a)=>{yA.strictEqual(GT.ptr,r);let o=s-qJ+zJ.byteOffset;return GT.onHeaderValue(new hlt(zJ.buffer,o,a))||0},wasm_on_headers_complete:(r,s,a,o)=>(yA.strictEqual(GT.ptr,r),GT.onHeadersComplete(s,!!a,!!o)||0),wasm_on_body:(r,s,a)=>{yA.strictEqual(GT.ptr,r);let o=s-qJ+zJ.byteOffset;return GT.onBody(new hlt(zJ.buffer,o,a))||0},wasm_on_message_complete:r=>(yA.strictEqual(GT.ptr,r),GT.onMessageComplete()||0)}})}var uqt=null,fqt=Dgo();fqt.catch();var GT=null,zJ=null,_lt=0,qJ=null,D1e=1,blt=2,Iqt=3,Cqt=class{constructor(t,r,{exports:s}){yA(Number.isFinite(t[ylt])&&t[ylt]>0),this.llhttp=s,this.ptr=this.llhttp.llhttp_alloc(jJ.TYPE.RESPONSE),this.client=t,this.socket=r,this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.statusCode=null,this.statusText="",this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=t[ylt],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=t[Gwn]}setTimeout(t,r){this.timeoutType=r,t!==this.timeoutValue?(lqt.clearTimeout(this.timeout),t?(this.timeout=lqt.setTimeout(xgo,t,this),this.timeout.unref&&this.timeout.unref()):this.timeout=null,this.timeoutValue=t):this.timeout&&this.timeout.refresh&&this.timeout.refresh()}resume(){this.socket.destroyed||!this.paused||(yA(this.ptr!=null),yA(GT==null),this.llhttp.llhttp_resume(this.ptr),yA(this.timeoutType===blt),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||Rgo),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){let t=this.socket.read();if(t===null)break;this.execute(t)}}execute(t){yA(this.ptr!=null),yA(GT==null),yA(!this.paused);let{socket:r,llhttp:s}=this;t.length>_lt&&(qJ&&s.free(qJ),_lt=Math.ceil(t.length/4096)*4096,qJ=s.malloc(_lt)),new Uint8Array(s.memory.buffer,qJ,_lt).set(t);try{let a;try{zJ=t,GT=this,a=s.llhttp_execute(this.ptr,qJ,t.length)}catch(g){throw g}finally{GT=null,zJ=null}let o=s.llhttp_get_error_pos(this.ptr)-qJ;if(a===jJ.ERROR.PAUSED_UPGRADE)this.onUpgrade(t.slice(o));else if(a===jJ.ERROR.PAUSED)this.paused=!0,r.unshift(t.slice(o));else if(a!==jJ.ERROR.OK){let g=s.llhttp_get_error_reason(this.ptr),p="";if(g){let f=new Uint8Array(s.memory.buffer,g).indexOf(0);p="Response does not match the HTTP/1.1 protocol ("+Buffer.from(s.memory.buffer,g,f).toString()+")"}throw new igo(p,jJ.ERROR[a],t.slice(o))}}catch(a){yp.destroy(r,a)}}destroy(){yA(this.ptr!=null),yA(GT==null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,lqt.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(t){this.statusText=t.toString()}onMessageBegin(){let{socket:t,client:r}=this;if(t.destroyed||!r[t1][r[r1]])return-1}onHeaderField(t){let r=this.headers.length;r&1?this.headers[r-1]=Buffer.concat([this.headers[r-1],t]):this.headers.push(t),this.trackHeader(t.length)}onHeaderValue(t){let r=this.headers.length;(r&1)===1?(this.headers.push(t),r+=1):this.headers[r-1]=Buffer.concat([this.headers[r-1],t]);let s=this.headers[r-2];s.length===10&&s.toString().toLowerCase()==="keep-alive"?this.keepAlive+=t.toString():s.length===10&&s.toString().toLowerCase()==="connection"?this.connection+=t.toString():s.length===14&&s.toString().toLowerCase()==="content-length"&&(this.contentLength+=t.toString()),this.trackHeader(t.length)}trackHeader(t){this.headersSize+=t,this.headersSize>=this.headersMaxSize&&yp.destroy(this.socket,new rgo)}onUpgrade(t){let{upgrade:r,client:s,socket:a,headers:o,statusCode:g}=this;yA(r);let p=s[t1][s[r1]];yA(p),yA(!a.destroyed),yA(a===s[qB]),yA(!this.paused),yA(p.upgrade||p.method==="CONNECT"),this.statusCode=null,this.statusText="",this.shouldKeepAlive=null,yA(this.headers.length%2===0),this.headers=[],this.headersSize=0,a.unshift(t),a[zB].destroy(),a[zB]=null,a[eU]=null,a[GD]=null,a.removeListener("error",Lwn).removeListener("readable",Zwn).removeListener("end",Vwn).removeListener("close",mqt),s[qB]=null,s[t1][s[r1]++]=null,s.emit("disconnect",s[kD],[s],new $J("upgrade"));try{p.onUpgrade(g,o,a)}catch(f){yp.destroy(a,f)}RW(s)}onHeadersComplete(t,r,s){let{client:a,socket:o,headers:g,statusText:p}=this;if(o.destroyed)return-1;let f=a[t1][a[r1]];if(!f)return-1;if(yA(!this.upgrade),yA(this.statusCode<200),t===100)return yp.destroy(o,new N1e("bad response",yp.getSocketInfo(o))),-1;if(r&&!f.upgrade)return yp.destroy(o,new N1e("bad upgrade",yp.getSocketInfo(o))),-1;if(yA.strictEqual(this.timeoutType,D1e),this.statusCode=t,this.shouldKeepAlive=s||f.method==="HEAD"&&!o[wF]&&this.connection.toLowerCase()==="keep-alive",this.statusCode>=200){let y=f.bodyTimeout!=null?f.bodyTimeout:a[xwn];this.setTimeout(y,blt)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if(f.method==="CONNECT")return yA(a[sB]===1),this.upgrade=!0,2;if(r)return yA(a[sB]===1),this.upgrade=!0,2;if(yA(this.headers.length%2===0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&a[aie]){let y=this.keepAlive?yp.parseKeepAliveTimeout(this.keepAlive):null;if(y!=null){let B=Math.min(y-a[Rwn],a[Nwn]);B<=0?o[wF]=!0:a[G3e]=B}else a[G3e]=a[dqt]}else o[wF]=!0;let m=f.onHeaders(t,g,this.resume,p)===!1;return f.aborted?-1:f.method==="HEAD"||t<200?1:(o[R1e]&&(o[R1e]=!1,RW(a)),m?jJ.ERROR.PAUSED:0)}onBody(t){let{client:r,socket:s,statusCode:a,maxResponseSize:o}=this;if(s.destroyed)return-1;let g=r[t1][r[r1]];if(yA(g),yA.strictEqual(this.timeoutType,blt),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),yA(a>=200),o>-1&&this.bytesRead+t.length>o)return yp.destroy(s,new sgo),-1;if(this.bytesRead+=t.length,g.onData(t)===!1)return jJ.ERROR.PAUSED}onMessageComplete(){let{client:t,socket:r,statusCode:s,upgrade:a,headers:o,contentLength:g,bytesRead:p,shouldKeepAlive:f}=this;if(r.destroyed&&(!s||f))return-1;if(a)return;let m=t[t1][t[r1]];if(yA(m),yA(s>=100),this.statusCode=null,this.statusText="",this.bytesRead=0,this.contentLength="",this.keepAlive="",this.connection="",yA(this.headers.length%2===0),this.headers=[],this.headersSize=0,!(s<200)){if(m.method!=="HEAD"&&g&&p!==parseInt(g,10))return yp.destroy(r,new ego),-1;if(m.onComplete(o),t[t1][t[r1]++]=null,r[Qj])return yA.strictEqual(t[sB],0),yp.destroy(r,new $J("reset")),jJ.ERROR.PAUSED;if(f){if(r[wF]&&t[sB]===0)return yp.destroy(r,new $J("reset")),jJ.ERROR.PAUSED;t[aie]===1?setImmediate(RW,t):RW(t)}else return yp.destroy(r,new $J("reset")),jJ.ERROR.PAUSED}}};function xgo(e){let{socket:t,timeoutType:r,client:s}=e;r===D1e?(!t[Qj]||t.writableNeedDrain||s[sB]>1)&&(yA(!e.paused,"cannot be paused while waiting for headers"),yp.destroy(t,new tgo)):r===blt?e.paused||yp.destroy(t,new ngo):r===Iqt&&(yA(s[sB]===0&&s[G3e]),yp.destroy(t,new $J("socket idle timeout")))}function Zwn(){let{[zB]:e}=this;e&&e.readMore()}function Lwn(e){let{[eU]:t,[zB]:r}=this;if(yA(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),t[tU]!=="h2"&&e.code==="ECONNRESET"&&r.statusCode&&!r.shouldKeepAlive){r.onMessageComplete();return}this[GD]=e,wlt(this[eU],e)}function wlt(e,t){if(e[sB]===0&&t.code!=="UND_ERR_INFO"&&t.code!=="UND_ERR_SOCKET"){yA(e[TW]===e[r1]);let r=e[t1].splice(e[r1]);for(let s=0;s0&&r.code!=="UND_ERR_INFO"){let s=e[t1][e[r1]];e[t1][e[r1]++]=null,TF(e,s,r)}e[TW]=e[r1],yA(e[sB]===0),e.emit("disconnect",e[kD],[e],r),RW(e)}async function Wwn(e){yA(!e[T1e]),yA(!e[qB]);let{host:t,hostname:r,protocol:s,port:a}=e[kD];if(r[0]==="["){let o=r.indexOf("]");yA(o!==-1);let g=r.substring(1,o);yA(wwn.isIP(g)),r=g}e[T1e]=!0,bk.beforeConnect.hasSubscribers&&bk.beforeConnect.publish({connectParams:{host:t,hostname:r,protocol:s,port:a,servername:e[iie],localAddress:e[k3e]},connector:e[x3e]});try{let o=await new Promise((p,f)=>{e[x3e]({host:t,hostname:r,protocol:s,port:a,servername:e[iie],localAddress:e[k3e]},(m,y)=>{m?f(m):p(y)})});if(e.destroyed){yp.destroy(o.on("error",()=>{}),new ogo);return}if(e[T1e]=!1,yA(o),o.alpnProtocol==="h2"){vwn||(vwn=!0,process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"}));let p=Blt.connect(e[kD],{createConnection:()=>o,peerMaxConcurrentStreams:e[Elt].maxConcurrentStreams});e[tU]="h2",p[eU]=e,p[qB]=o,p.on("error",vgo),p.on("frameError",Sgo),p.on("end",wgo),p.on("goaway",Tgo),p.on("close",mqt),p.unref(),e[NW]=p,o[NW]=p}else uqt||(uqt=await fqt,fqt=null),o[D3e]=!1,o[Qj]=!1,o[wF]=!1,o[R1e]=!1,o[zB]=new Cqt(e,o,uqt);o[kwn]=0,o[Z3e]=e[Z3e],o[eU]=e,o[GD]=null,o.on("error",Lwn).on("readable",Zwn).on("end",Vwn).on("close",mqt),e[qB]=o,bk.connected.hasSubscribers&&bk.connected.publish({connectParams:{host:t,hostname:r,protocol:s,port:a,servername:e[iie],localAddress:e[k3e]},connector:e[x3e],socket:o}),e.emit("connect",e[kD],[e])}catch(o){if(e.destroyed)return;if(e[T1e]=!1,bk.connectError.hasSubscribers&&bk.connectError.publish({connectParams:{host:t,hostname:r,protocol:s,port:a,servername:e[iie],localAddress:e[k3e]},connector:e[x3e],error:o}),o.code==="ERR_TLS_CERT_ALTNAME_INVALID")for(yA(e[sB]===0);e[Ade]>0&&e[t1][e[TW]].servername===e[iie];){let g=e[t1][e[TW]++];TF(e,g,o)}else wlt(e,o);e.emit("connectionError",e[kD],[e],o)}RW(e)}function Swn(e){e[oie]=0,e.emit("drain",e[kD],[e])}function RW(e,t){e[ude]!==2&&(e[ude]=2,kgo(e,t),e[ude]=0,e[r1]>256&&(e[t1].splice(0,e[r1]),e[TW]-=e[r1],e[r1]=0))}function kgo(e,t){for(;;){if(e.destroyed){yA(e[Ade]===0);return}if(e[sie]&&!e[gde]){e[sie](),e[sie]=null;return}let r=e[qB];if(r&&!r.destroyed&&r.alpnProtocol!=="h2"){if(e[gde]===0?!r[D3e]&&r.unref&&(r.unref(),r[D3e]=!0):r[D3e]&&r.ref&&(r.ref(),r[D3e]=!1),e[gde]===0)r[zB].timeoutType!==Iqt&&r[zB].setTimeout(e[G3e],Iqt);else if(e[sB]>0&&r[zB].statusCode<200&&r[zB].timeoutType!==D1e){let a=e[t1][e[r1]],o=a.headersTimeout!=null?a.headersTimeout:e[Dwn];r[zB].setTimeout(o,D1e)}}if(e[Aqt])e[oie]=2;else if(e[oie]===2){t?(e[oie]=1,process.nextTick(Swn,e)):Swn(e);continue}if(e[Ade]===0||e[sB]>=(e[aie]||1))return;let s=e[t1][e[TW]];if(e[kD].protocol==="https:"&&e[iie]!==s.servername){if(e[sB]>0)return;if(e[iie]=s.servername,r&&r.servername!==s.servername){yp.destroy(r,new $J("servername changed"));return}}if(e[T1e])return;if(!r&&!e[NW]){Wwn(e);return}if(r.destroyed||r[Qj]||r[wF]||r[R1e]||e[sB]>0&&!s.idempotent||e[sB]>0&&(s.upgrade||s.method==="CONNECT")||e[sB]>0&&yp.bodyLength(s.body)!==0&&(yp.isStream(s.body)||yp.isAsyncIterable(s.body)))return;!s.aborted&&Ggo(e,s)?e[TW]++:e[t1].splice(e[TW],1)}}function Pwn(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function Ggo(e,t){if(e[tU]==="h2"){Fgo(e,e[NW],t);return}let{body:r,method:s,path:a,host:o,upgrade:g,headers:p,blocking:f,reset:m}=t,y=s==="PUT"||s==="POST"||s==="PATCH";r&&typeof r.read=="function"&&r.read(0);let B=yp.bodyLength(r),v=B;if(v===null&&(v=t.contentLength),v===0&&!y&&(v=null),Pwn(s)&&v>0&&t.contentLength!==null&&t.contentLength!==v){if(e[F3e])return TF(e,t,new Mj),!1;process.emitWarning(new Mj)}let G=e[qB];try{t.onConnect(O=>{t.aborted||t.completed||(TF(e,t,O||new hqt),yp.destroy(G,new $J("aborted")))})}catch(O){TF(e,t,O)}if(t.aborted)return!1;s==="HEAD"&&(G[wF]=!0),(g||s==="CONNECT")&&(G[wF]=!0),m!=null&&(G[wF]=m),e[Z3e]&&G[kwn]++>=e[Z3e]&&(G[wF]=!0),f&&(G[R1e]=!0);let T=`${s} ${a} HTTP/1.1\r +`);v.push(le,U,k),typeof U.size=="number"?o+=le.byteLength+U.size+k.byteLength:T=!0}let O=plt.encode(`--${f}--`);v.push(O),o+=O.byteLength,T&&(o=null),a=e,s=async function*(){for(let X of v)X.stream?yield*X.stream():yield X},g="multipart/form-data; boundary="+f}else if(awn(e))a=e,o=e.size,e.type&&(g=e.type);else if(typeof e[Symbol.asyncIterator]=="function"){if(t)throw new TypeError("keepalive");if(v1e.isDisturbed(e)||e.locked)throw new TypeError("Response body object should not be disturbed or locked");r=e instanceof Mj?e:Auo(e)}if((typeof a=="string"||v1e.isBuffer(a))&&(o=Buffer.byteLength(a)),s!=null){let f;r=new Mj({async start(){f=s(e)[Symbol.asyncIterator]()},async pull(m){let{value:y,done:B}=await f.next();return B?queueMicrotask(()=>{m.close()}):yuo(r)||m.enqueue(new Uint8Array(y)),m.desiredSize>0},async cancel(m){await f.return()},type:void 0})}return[{stream:r,source:a,length:o},g]}function wuo(e,t=!1){return Mj||(Mj=xt("stream/web").ReadableStream),e instanceof Mj&&(qzt(!v1e.isDisturbed(e),"The body has already been consumed."),qzt(!e.locked,"The stream is locked.")),dwn(e,t)}function Tuo(e){let[t,r]=e.stream.tee(),s=Cuo(r,{transfer:[r]}),[,a]=s.tee();return e.stream=t,{stream:a,length:e.length,source:e.source}}async function*uwn(e){if(e)if(Awn(e))yield e;else{let t=e.stream;if(v1e.isDisturbed(t))throw new TypeError("The body has already been consumed.");if(t.locked)throw new TypeError("The stream is locked.");t[_uo]=!0,yield*t}}function $zt(e){if(e.aborted)throw new gwn("The operation was aborted.","AbortError")}function Nuo(e){return{blob(){return flt(this,r=>{let s=kuo(this);return s==="failure"?s="":s&&(s=vuo(s)),new muo([r],{type:s})},e)},arrayBuffer(){return flt(this,r=>new Uint8Array(r).buffer,e)},text(){return flt(this,pwn,e)},json(){return flt(this,xuo,e)},async formData(){zzt.brandCheck(this,e),$zt(this[Hj]);let r=this.headers.get("Content-Type");if(/multipart\/form-data/.test(r)){let s={};for(let[p,f]of this.headers)s[p.toLowerCase()]=f;let a=new cwn,o;try{o=new guo({headers:s,preservePath:!0})}catch(p){throw new gwn(`${p}`,"AbortError")}o.on("field",(p,f)=>{a.append(p,f)}),o.on("file",(p,f,m,y,B)=>{let v=[];if(y==="base64"||y.toLowerCase()==="base64"){let k="";f.on("data",T=>{k+=T.toString().replace(/[\r\n]/gm,"");let O=k.length-k.length%4;v.push(Buffer.from(k.slice(0,O),"base64")),k=k.slice(O)}),f.on("end",()=>{v.push(Buffer.from(k,"base64")),a.append(p,new lwn(v,m,{type:B}))})}else f.on("data",k=>{v.push(k)}),f.on("end",()=>{a.append(p,new lwn(v,m,{type:B}))})});let g=new Promise((p,f)=>{o.on("finish",p),o.on("error",m=>f(new TypeError(m)))});if(this.body!==null)for await(let p of uwn(this[Hj].body))o.write(p);return o.end(),await g,a}else if(/application\/x-www-form-urlencoded/.test(r)){let s;try{let o="",g=new TextDecoder("utf-8",{ignoreBOM:!0});for await(let p of uwn(this[Hj].body)){if(!Awn(p))throw new TypeError("Expected Uint8Array chunk");o+=g.decode(p,{stream:!0})}o+=g.decode(),s=new URLSearchParams(o)}catch(o){throw Object.assign(new TypeError,{cause:o})}let a=new cwn;for(let[o,g]of s)a.append(o,g);return a}else throw await Promise.resolve(),$zt(this[Hj]),zzt.errors.exception({header:`${e.name}.formData`,message:"Could not parse content as FormData."})}}}function Ruo(e){Object.assign(e.prototype,Nuo(e))}async function flt(e,t,r){if(zzt.brandCheck(e,r),$zt(e[Hj]),Duo(e[Hj].body))throw new TypeError("Body is unusable");let s=fuo(),a=g=>s.reject(g),o=g=>{try{s.resolve(t(g))}catch(p){a(p)}};return e[Hj].body==null?(o(new Uint8Array),s.promise):(await Iuo(e[Hj].body,o,a),s.promise)}function Duo(e){return e!=null&&(e.stream.locked||v1e.isDisturbed(e.stream))}function pwn(e){return e.length===0?"":(e[0]===239&&e[1]===187&&e[2]===191&&(e=e.subarray(3)),Suo.decode(e))}function xuo(e){return JSON.parse(pwn(e))}function kuo(e){let{headersList:t}=e[Hj],r=t.get("content-type");return r===null?"failure":Buo(r)}fwn.exports={extractBody:dwn,safelyExtractBody:wuo,cloneBody:Tuo,mixinBody:Ruo}});var hwn=z((wKc,mwn)=>{"use strict";var{InvalidArgumentError:uE,NotSupportedError:Guo}=yb(),Yj=xt("assert"),{kHTTP2BuildRequest:Fuo,kHTTP2CopyHeaders:Zuo,kHTTP1BuildRequest:Luo}=lE(),LL=Ch(),Iwn=/^[\^_`a-zA-Z\-0-9!#$%&'*+.|~]+$/,Cwn=/[^\t\x20-\x7e\x80-\xff]/,Vuo=/[^\u0021-\u00ff]/,PH=Symbol("handler"),yw={},eqt;try{let e=xt("diagnostics_channel");yw.create=e.channel("undici:request:create"),yw.bodySent=e.channel("undici:request:bodySent"),yw.headers=e.channel("undici:request:headers"),yw.trailers=e.channel("undici:request:trailers"),yw.error=e.channel("undici:request:error")}catch{yw.create={hasSubscribers:!1},yw.bodySent={hasSubscribers:!1},yw.headers={hasSubscribers:!1},yw.trailers={hasSubscribers:!1},yw.error={hasSubscribers:!1}}var tqt=class e{constructor(t,{path:r,method:s,body:a,headers:o,query:g,idempotent:p,blocking:f,upgrade:m,headersTimeout:y,bodyTimeout:B,reset:v,throwOnError:k,expectContinue:T},O){if(typeof r!="string")throw new uE("path must be a string");if(r[0]!=="/"&&!(r.startsWith("http://")||r.startsWith("https://"))&&s!=="CONNECT")throw new uE("path must be an absolute URL or start with a slash");if(Vuo.exec(r)!==null)throw new uE("invalid request path");if(typeof s!="string")throw new uE("method must be a string");if(Iwn.exec(s)===null)throw new uE("invalid request method");if(m&&typeof m!="string")throw new uE("upgrade must be a string");if(y!=null&&(!Number.isFinite(y)||y<0))throw new uE("invalid headersTimeout");if(B!=null&&(!Number.isFinite(B)||B<0))throw new uE("invalid bodyTimeout");if(v!=null&&typeof v!="boolean")throw new uE("invalid reset");if(T!=null&&typeof T!="boolean")throw new uE("invalid expectContinue");if(this.headersTimeout=y,this.bodyTimeout=B,this.throwOnError=k===!0,this.method=s,this.abort=null,a==null)this.body=null;else if(LL.isStream(a)){this.body=a;let X=this.body._readableState;(!X||!X.autoDestroy)&&(this.endHandler=function(){LL.destroy(this)},this.body.on("end",this.endHandler)),this.errorHandler=U=>{this.abort?this.abort(U):this.error=U},this.body.on("error",this.errorHandler)}else if(LL.isBuffer(a))this.body=a.byteLength?a:null;else if(ArrayBuffer.isView(a))this.body=a.buffer.byteLength?Buffer.from(a.buffer,a.byteOffset,a.byteLength):null;else if(a instanceof ArrayBuffer)this.body=a.byteLength?Buffer.from(a):null;else if(typeof a=="string")this.body=a.length?Buffer.from(a):null;else if(LL.isFormDataLike(a)||LL.isIterable(a)||LL.isBlobLike(a))this.body=a;else throw new uE("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable");if(this.completed=!1,this.aborted=!1,this.upgrade=m||null,this.path=g?LL.buildURL(r,g):r,this.origin=t,this.idempotent=p??(s==="HEAD"||s==="GET"),this.blocking=f??!1,this.reset=v??null,this.host=null,this.contentLength=null,this.contentType=null,this.headers="",this.expectContinue=T??!1,Array.isArray(o)){if(o.length%2!==0)throw new uE("headers array must be even");for(let X=0;X{"use strict";var Wuo=xt("events"),rqt=class extends Wuo{dispatch(){throw new Error("not implemented")}close(){throw new Error("not implemented")}destroy(){throw new Error("not implemented")}};_wn.exports=rqt});var D3e=z((NKc,ywn)=>{"use strict";var Puo=Ilt(),{ClientDestroyedError:nqt,ClientClosedError:Ouo,InvalidArgumentError:S1e}=yb(),{kDestroy:Quo,kClose:Muo,kDispatch:iqt,kInterceptors:mde}=lE(),w1e=Symbol("destroyed"),R3e=Symbol("closed"),Xj=Symbol("onDestroyed"),T1e=Symbol("onClosed"),Clt=Symbol("Intercepted Dispatch"),sqt=class extends Puo{constructor(){super(),this[w1e]=!1,this[Xj]=null,this[R3e]=!1,this[T1e]=[]}get destroyed(){return this[w1e]}get closed(){return this[R3e]}get interceptors(){return this[mde]}set interceptors(t){if(t){for(let r=t.length-1;r>=0;r--)if(typeof this[mde][r]!="function")throw new S1e("interceptor must be an function")}this[mde]=t}close(t){if(t===void 0)return new Promise((s,a)=>{this.close((o,g)=>o?a(o):s(g))});if(typeof t!="function")throw new S1e("invalid callback");if(this[w1e]){queueMicrotask(()=>t(new nqt,null));return}if(this[R3e]){this[T1e]?this[T1e].push(t):queueMicrotask(()=>t(null,null));return}this[R3e]=!0,this[T1e].push(t);let r=()=>{let s=this[T1e];this[T1e]=null;for(let a=0;athis.destroy()).then(()=>{queueMicrotask(r)})}destroy(t,r){if(typeof t=="function"&&(r=t,t=null),r===void 0)return new Promise((a,o)=>{this.destroy(t,(g,p)=>g?o(g):a(p))});if(typeof r!="function")throw new S1e("invalid callback");if(this[w1e]){this[Xj]?this[Xj].push(r):queueMicrotask(()=>r(null,null));return}t||(t=new nqt),this[w1e]=!0,this[Xj]=this[Xj]||[],this[Xj].push(r);let s=()=>{let a=this[Xj];this[Xj]=null;for(let o=0;o{queueMicrotask(s)})}[Clt](t,r){if(!this[mde]||this[mde].length===0)return this[Clt]=this[iqt],this[iqt](t,r);let s=this[iqt].bind(this);for(let a=this[mde].length-1;a>=0;a--)s=this[mde][a](s);return this[Clt]=s,s(t,r)}dispatch(t,r){if(!r||typeof r!="object")throw new S1e("handler must be an object");try{if(!t||typeof t!="object")throw new S1e("opts must be an object.");if(this[w1e]||this[Xj])throw new nqt;if(this[R3e])throw new Ouo;return this[Clt](t,r)}catch(s){if(typeof r.onError!="function")throw new S1e("invalid onError method");return r.onError(s),!1}}};ywn.exports=sqt});var x3e=z((xKc,Bwn)=>{"use strict";var Huo=xt("net"),bwn=xt("assert"),Ewn=Ch(),{InvalidArgumentError:Yuo,ConnectTimeoutError:Xuo}=yb(),oqt,aqt;global.FinalizationRegistry&&!process.env.NODE_V8_COVERAGE?aqt=class{constructor(t){this._maxCachedSessions=t,this._sessionCache=new Map,this._sessionRegistry=new global.FinalizationRegistry(r=>{if(this._sessionCache.size=this._maxCachedSessions){let{value:s}=this._sessionCache.keys().next();this._sessionCache.delete(s)}this._sessionCache.set(t,r)}}};function Juo({allowH2:e,maxCachedSessions:t,socketPath:r,timeout:s,...a}){if(t!=null&&(!Number.isInteger(t)||t<0))throw new Yuo("maxCachedSessions must be a positive integer or zero");let o={path:r,...a},g=new aqt(t??100);return s=s??1e4,e=e??!1,function({hostname:f,host:m,protocol:y,port:B,servername:v,localAddress:k,httpSocket:T},O){let X;if(y==="https:"){oqt||(oqt=xt("tls")),v=v||o.servername||Ewn.getServerName(m)||null;let le=v||f,ae=g.get(le)||null;bwn(le),X=oqt.connect({highWaterMark:16384,...o,servername:v,session:ae,localAddress:k,ALPNProtocols:e?["http/1.1","h2"]:["http/1.1"],socket:T,port:B||443,host:f}),X.on("session",function(ge){g.set(le,ge)})}else bwn(!T,"httpSocket can only be sent on TLS update"),X=Huo.connect({highWaterMark:64*1024,...o,localAddress:k,port:B||80,host:f});if(o.keepAlive==null||o.keepAlive){let le=o.keepAliveInitialDelay===void 0?6e4:o.keepAliveInitialDelay;X.setKeepAlive(!0,le)}let U=Uuo(()=>Kuo(X),s);return X.setNoDelay(!0).once(y==="https:"?"secureConnect":"connect",function(){if(U(),O){let le=O;O=null,le(null,this)}}).on("error",function(le){if(U(),O){let ae=O;O=null,ae(le)}}),X}}function Uuo(e,t){if(!t)return()=>{};let r=null,s=null,a=setTimeout(()=>{r=setImmediate(()=>{process.platform==="win32"?s=setImmediate(()=>e()):e()})},t);return()=>{clearTimeout(a),clearImmediate(r),clearImmediate(s)}}function Kuo(e){Ewn.destroy(e,new Xuo)}Bwn.exports=Juo});var vwn=z(mlt=>{"use strict";Object.defineProperty(mlt,"__esModule",{value:!0});mlt.enumToMap=void 0;function juo(e){let t={};return Object.keys(e).forEach(r=>{let s=e[r];typeof s=="number"&&(t[r]=s)}),t}mlt.enumToMap=juo});var Swn=z(Au=>{"use strict";Object.defineProperty(Au,"__esModule",{value:!0});Au.SPECIAL_HEADERS=Au.HEADER_STATE=Au.MINOR=Au.MAJOR=Au.CONNECTION_TOKEN_CHARS=Au.HEADER_CHARS=Au.TOKEN=Au.STRICT_TOKEN=Au.HEX=Au.URL_CHAR=Au.STRICT_URL_CHAR=Au.USERINFO_CHARS=Au.MARK=Au.ALPHANUM=Au.NUM=Au.HEX_MAP=Au.NUM_MAP=Au.ALPHA=Au.FINISH=Au.H_METHOD_MAP=Au.METHOD_MAP=Au.METHODS_RTSP=Au.METHODS_ICE=Au.METHODS_HTTP=Au.METHODS=Au.LENIENT_FLAGS=Au.FLAGS=Au.TYPE=Au.ERROR=void 0;var zuo=vwn(),quo;(function(e){e[e.OK=0]="OK",e[e.INTERNAL=1]="INTERNAL",e[e.STRICT=2]="STRICT",e[e.LF_EXPECTED=3]="LF_EXPECTED",e[e.UNEXPECTED_CONTENT_LENGTH=4]="UNEXPECTED_CONTENT_LENGTH",e[e.CLOSED_CONNECTION=5]="CLOSED_CONNECTION",e[e.INVALID_METHOD=6]="INVALID_METHOD",e[e.INVALID_URL=7]="INVALID_URL",e[e.INVALID_CONSTANT=8]="INVALID_CONSTANT",e[e.INVALID_VERSION=9]="INVALID_VERSION",e[e.INVALID_HEADER_TOKEN=10]="INVALID_HEADER_TOKEN",e[e.INVALID_CONTENT_LENGTH=11]="INVALID_CONTENT_LENGTH",e[e.INVALID_CHUNK_SIZE=12]="INVALID_CHUNK_SIZE",e[e.INVALID_STATUS=13]="INVALID_STATUS",e[e.INVALID_EOF_STATE=14]="INVALID_EOF_STATE",e[e.INVALID_TRANSFER_ENCODING=15]="INVALID_TRANSFER_ENCODING",e[e.CB_MESSAGE_BEGIN=16]="CB_MESSAGE_BEGIN",e[e.CB_HEADERS_COMPLETE=17]="CB_HEADERS_COMPLETE",e[e.CB_MESSAGE_COMPLETE=18]="CB_MESSAGE_COMPLETE",e[e.CB_CHUNK_HEADER=19]="CB_CHUNK_HEADER",e[e.CB_CHUNK_COMPLETE=20]="CB_CHUNK_COMPLETE",e[e.PAUSED=21]="PAUSED",e[e.PAUSED_UPGRADE=22]="PAUSED_UPGRADE",e[e.PAUSED_H2_UPGRADE=23]="PAUSED_H2_UPGRADE",e[e.USER=24]="USER"})(quo=Au.ERROR||(Au.ERROR={}));var $uo;(function(e){e[e.BOTH=0]="BOTH",e[e.REQUEST=1]="REQUEST",e[e.RESPONSE=2]="RESPONSE"})($uo=Au.TYPE||(Au.TYPE={}));var ego;(function(e){e[e.CONNECTION_KEEP_ALIVE=1]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=2]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=4]="CONNECTION_UPGRADE",e[e.CHUNKED=8]="CHUNKED",e[e.UPGRADE=16]="UPGRADE",e[e.CONTENT_LENGTH=32]="CONTENT_LENGTH",e[e.SKIPBODY=64]="SKIPBODY",e[e.TRAILING=128]="TRAILING",e[e.TRANSFER_ENCODING=512]="TRANSFER_ENCODING"})(ego=Au.FLAGS||(Au.FLAGS={}));var tgo;(function(e){e[e.HEADERS=1]="HEADERS",e[e.CHUNKED_LENGTH=2]="CHUNKED_LENGTH",e[e.KEEP_ALIVE=4]="KEEP_ALIVE"})(tgo=Au.LENIENT_FLAGS||(Au.LENIENT_FLAGS={}));var Gp;(function(e){e[e.DELETE=0]="DELETE",e[e.GET=1]="GET",e[e.HEAD=2]="HEAD",e[e.POST=3]="POST",e[e.PUT=4]="PUT",e[e.CONNECT=5]="CONNECT",e[e.OPTIONS=6]="OPTIONS",e[e.TRACE=7]="TRACE",e[e.COPY=8]="COPY",e[e.LOCK=9]="LOCK",e[e.MKCOL=10]="MKCOL",e[e.MOVE=11]="MOVE",e[e.PROPFIND=12]="PROPFIND",e[e.PROPPATCH=13]="PROPPATCH",e[e.SEARCH=14]="SEARCH",e[e.UNLOCK=15]="UNLOCK",e[e.BIND=16]="BIND",e[e.REBIND=17]="REBIND",e[e.UNBIND=18]="UNBIND",e[e.ACL=19]="ACL",e[e.REPORT=20]="REPORT",e[e.MKACTIVITY=21]="MKACTIVITY",e[e.CHECKOUT=22]="CHECKOUT",e[e.MERGE=23]="MERGE",e[e["M-SEARCH"]=24]="M-SEARCH",e[e.NOTIFY=25]="NOTIFY",e[e.SUBSCRIBE=26]="SUBSCRIBE",e[e.UNSUBSCRIBE=27]="UNSUBSCRIBE",e[e.PATCH=28]="PATCH",e[e.PURGE=29]="PURGE",e[e.MKCALENDAR=30]="MKCALENDAR",e[e.LINK=31]="LINK",e[e.UNLINK=32]="UNLINK",e[e.SOURCE=33]="SOURCE",e[e.PRI=34]="PRI",e[e.DESCRIBE=35]="DESCRIBE",e[e.ANNOUNCE=36]="ANNOUNCE",e[e.SETUP=37]="SETUP",e[e.PLAY=38]="PLAY",e[e.PAUSE=39]="PAUSE",e[e.TEARDOWN=40]="TEARDOWN",e[e.GET_PARAMETER=41]="GET_PARAMETER",e[e.SET_PARAMETER=42]="SET_PARAMETER",e[e.REDIRECT=43]="REDIRECT",e[e.RECORD=44]="RECORD",e[e.FLUSH=45]="FLUSH"})(Gp=Au.METHODS||(Au.METHODS={}));Au.METHODS_HTTP=[Gp.DELETE,Gp.GET,Gp.HEAD,Gp.POST,Gp.PUT,Gp.CONNECT,Gp.OPTIONS,Gp.TRACE,Gp.COPY,Gp.LOCK,Gp.MKCOL,Gp.MOVE,Gp.PROPFIND,Gp.PROPPATCH,Gp.SEARCH,Gp.UNLOCK,Gp.BIND,Gp.REBIND,Gp.UNBIND,Gp.ACL,Gp.REPORT,Gp.MKACTIVITY,Gp.CHECKOUT,Gp.MERGE,Gp["M-SEARCH"],Gp.NOTIFY,Gp.SUBSCRIBE,Gp.UNSUBSCRIBE,Gp.PATCH,Gp.PURGE,Gp.MKCALENDAR,Gp.LINK,Gp.UNLINK,Gp.PRI,Gp.SOURCE];Au.METHODS_ICE=[Gp.SOURCE];Au.METHODS_RTSP=[Gp.OPTIONS,Gp.DESCRIBE,Gp.ANNOUNCE,Gp.SETUP,Gp.PLAY,Gp.PAUSE,Gp.TEARDOWN,Gp.GET_PARAMETER,Gp.SET_PARAMETER,Gp.REDIRECT,Gp.RECORD,Gp.FLUSH,Gp.GET,Gp.POST];Au.METHOD_MAP=zuo.enumToMap(Gp);Au.H_METHOD_MAP={};Object.keys(Au.METHOD_MAP).forEach(e=>{/^H/.test(e)&&(Au.H_METHOD_MAP[e]=Au.METHOD_MAP[e])});var rgo;(function(e){e[e.SAFE=0]="SAFE",e[e.SAFE_WITH_CB=1]="SAFE_WITH_CB",e[e.UNSAFE=2]="UNSAFE"})(rgo=Au.FINISH||(Au.FINISH={}));Au.ALPHA=[];for(let e=65;e<=90;e++)Au.ALPHA.push(String.fromCharCode(e)),Au.ALPHA.push(String.fromCharCode(e+32));Au.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};Au.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15};Au.NUM=["0","1","2","3","4","5","6","7","8","9"];Au.ALPHANUM=Au.ALPHA.concat(Au.NUM);Au.MARK=["-","_",".","!","~","*","'","(",")"];Au.USERINFO_CHARS=Au.ALPHANUM.concat(Au.MARK).concat(["%",";",":","&","=","+","$",","]);Au.STRICT_URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(Au.ALPHANUM);Au.URL_CHAR=Au.STRICT_URL_CHAR.concat([" ","\f"]);for(let e=128;e<=255;e++)Au.URL_CHAR.push(e);Au.HEX=Au.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);Au.STRICT_TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(Au.ALPHANUM);Au.TOKEN=Au.STRICT_TOKEN.concat([" "]);Au.HEADER_CHARS=[" "];for(let e=32;e<=255;e++)e!==127&&Au.HEADER_CHARS.push(e);Au.CONNECTION_TOKEN_CHARS=Au.HEADER_CHARS.filter(e=>e!==44);Au.MAJOR=Au.NUM_MAP;Au.MINOR=Au.MAJOR;var N1e;(function(e){e[e.GENERAL=0]="GENERAL",e[e.CONNECTION=1]="CONNECTION",e[e.CONTENT_LENGTH=2]="CONTENT_LENGTH",e[e.TRANSFER_ENCODING=3]="TRANSFER_ENCODING",e[e.UPGRADE=4]="UPGRADE",e[e.CONNECTION_KEEP_ALIVE=5]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=6]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=7]="CONNECTION_UPGRADE",e[e.TRANSFER_ENCODING_CHUNKED=8]="TRANSFER_ENCODING_CHUNKED"})(N1e=Au.HEADER_STATE||(Au.HEADER_STATE={}));Au.SPECIAL_HEADERS={connection:N1e.CONNECTION,"content-length":N1e.CONTENT_LENGTH,"proxy-connection":N1e.CONNECTION,"transfer-encoding":N1e.TRANSFER_ENCODING,upgrade:N1e.UPGRADE}});var uqt=z((FKc,Nwn)=>{"use strict";var Jj=Ch(),{kBodyUsed:k3e}=lE(),lqt=xt("assert"),{InvalidArgumentError:ngo}=yb(),igo=xt("events"),sgo=[300,301,302,303,307,308],wwn=Symbol("body"),hlt=class{constructor(t){this[wwn]=t,this[k3e]=!1}async*[Symbol.asyncIterator](){lqt(!this[k3e],"disturbed"),this[k3e]=!0,yield*this[wwn]}},cqt=class{constructor(t,r,s,a){if(r!=null&&(!Number.isInteger(r)||r<0))throw new ngo("maxRedirections must be a positive number");Jj.validateHandler(a,s.method,s.upgrade),this.dispatch=t,this.location=null,this.abort=null,this.opts={...s,maxRedirections:0},this.maxRedirections=r,this.handler=a,this.history=[],Jj.isStream(this.opts.body)?(Jj.bodyLength(this.opts.body)===0&&this.opts.body.on("data",function(){lqt(!1)}),typeof this.opts.body.readableDidRead!="boolean"&&(this.opts.body[k3e]=!1,igo.prototype.on.call(this.opts.body,"data",function(){this[k3e]=!0}))):this.opts.body&&typeof this.opts.body.pipeTo=="function"?this.opts.body=new hlt(this.opts.body):this.opts.body&&typeof this.opts.body!="string"&&!ArrayBuffer.isView(this.opts.body)&&Jj.isIterable(this.opts.body)&&(this.opts.body=new hlt(this.opts.body))}onConnect(t){this.abort=t,this.handler.onConnect(t,{history:this.history})}onUpgrade(t,r,s){this.handler.onUpgrade(t,r,s)}onError(t){this.handler.onError(t)}onHeaders(t,r,s,a){if(this.location=this.history.length>=this.maxRedirections||Jj.isDisturbed(this.opts.body)?null:ogo(t,r),this.opts.origin&&this.history.push(new URL(this.opts.path,this.opts.origin)),!this.location)return this.handler.onHeaders(t,r,s,a);let{origin:o,pathname:g,search:p}=Jj.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),f=p?`${g}${p}`:g;this.opts.headers=ago(this.opts.headers,t===303,this.opts.origin!==o),this.opts.path=f,this.opts.origin=o,this.opts.maxRedirections=0,this.opts.query=null,t===303&&this.opts.method!=="HEAD"&&(this.opts.method="GET",this.opts.body=null)}onData(t){if(!this.location)return this.handler.onData(t)}onComplete(t){this.location?(this.location=null,this.abort=null,this.dispatch(this.opts,this)):this.handler.onComplete(t)}onBodySent(t){this.handler.onBodySent&&this.handler.onBodySent(t)}};function ogo(e,t){if(sgo.indexOf(e)===-1)return null;for(let r=0;r{"use strict";var cgo=uqt();function lgo({maxRedirections:e}){return t=>function(s,a){let{maxRedirections:o=e}=s;if(!o)return t(s,a);let g=new cgo(t,o,s,a);return s={...s,maxRedirections:0},t(s,g)}}Rwn.exports=lgo});var gqt=z((LKc,Dwn)=>{Dwn.exports="AGFzbQEAAAABMAhgAX8Bf2ADf39/AX9gBH9/f38Bf2AAAGADf39/AGABfwBgAn9/AGAGf39/f39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQACA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAA0ZFAwMEAAAFAAAAAAAABQEFAAUFBQAABgAAAAAGBgYGAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAABAQcAAAUFAwABBAUBcAESEgUDAQACBggBfwFBgNQECwfRBSIGbWVtb3J5AgALX2luaXRpYWxpemUACRlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALbGxodHRwX2luaXQAChhsbGh0dHBfc2hvdWxkX2tlZXBfYWxpdmUAQQxsbGh0dHBfYWxsb2MADAZtYWxsb2MARgtsbGh0dHBfZnJlZQANBGZyZWUASA9sbGh0dHBfZ2V0X3R5cGUADhVsbGh0dHBfZ2V0X2h0dHBfbWFqb3IADxVsbGh0dHBfZ2V0X2h0dHBfbWlub3IAEBFsbGh0dHBfZ2V0X21ldGhvZAARFmxsaHR0cF9nZXRfc3RhdHVzX2NvZGUAEhJsbGh0dHBfZ2V0X3VwZ3JhZGUAEwxsbGh0dHBfcmVzZXQAFA5sbGh0dHBfZXhlY3V0ZQAVFGxsaHR0cF9zZXR0aW5nc19pbml0ABYNbGxodHRwX2ZpbmlzaAAXDGxsaHR0cF9wYXVzZQAYDWxsaHR0cF9yZXN1bWUAGRtsbGh0dHBfcmVzdW1lX2FmdGVyX3VwZ3JhZGUAGhBsbGh0dHBfZ2V0X2Vycm5vABsXbGxodHRwX2dldF9lcnJvcl9yZWFzb24AHBdsbGh0dHBfc2V0X2Vycm9yX3JlYXNvbgAdFGxsaHR0cF9nZXRfZXJyb3JfcG9zAB4RbGxodHRwX2Vycm5vX25hbWUAHxJsbGh0dHBfbWV0aG9kX25hbWUAIBJs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ADcDACAAQShqQgA3AwAgAEEgakIANwMAIABBEGpCADcDACAAQQhqQgA3AwAgAEHdATYCHEEAC3sBAX8CQCAAKAIMIgMNAAJAIAAoAgRFDQAgACABNgIECwJAIAAgASACEMSAgIAAIgMNACAAKAIMDwsgACADNgIcQQAhAyAAKAIEIgFFDQAgACABIAIgACgCCBGBgICAAAAiAUUNACAAIAI2AhQgACABNgIMIAEhAwsgAwvk8wEDDn8DfgR/I4CAgIAAQRBrIgMkgICAgAAgASEEIAEhBSABIQYgASEHIAEhCCABIQkgASEKIAEhCyABIQwgASENIAEhDiABIQ8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgACgCHCIQQX9qDt0B2gEB2QECAwQFBgcICQoLDA0O2AEPENcBERLWARMUFRYXGBkaG+AB3wEcHR7VAR8gISIjJCXUASYnKCkqKyzTAdIBLS7RAdABLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDREVG2wFHSElKzwHOAUvNAUzMAU1OT1BRUlNUVVZXWFlaW1xdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+f4ABgQGCAYMBhAGFAYYBhwGIAYkB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QAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAQDscBAAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxweHyAhIyUoP0BBREVGR0hJSktMTU9QUVJT3gNXWVtcXWBiZWZnaGlqa2xtb3BxcnN0dXZ3eHl6e3x9foABggGFAYYBhwGJAYsBjAGNAY4BjwGQAZEBlAGVAZYBlwGYAZkBmgGbAZwBnQGeAZ8BoAGhAaIBowGkAaUBpgGnAagBqQGqAasBrAGtAa4BrwGwAbEBsgGzAbQBtQG2AbcBuAG5AboBuwG8Ab0BvgG/AcABwQHCAcMBxAHFAcYBxwHIAckBygHLAcwBzQHOAc8B0AHRAdIB0wHUAdUB1gHXAdgB2QHaAdsB3AHdAd4B4AHhAeIB4wHkAeUB5gHnAegB6QHqAesB7AHtAe4B7wHwAfEB8gHzAZkCpAKwAv4C/gILIAEiBCACRw3zAUHdASEQDP8DCyABIhAgAkcN3QFBwwEhEAz+AwsgASIBIAJHDZABQfcAIRAM/QMLIAEiASACRw2GAUHvACEQDPwDCyABIgEgAkcNf0HqACEQDPsDCyABIgEgAkcNe0HoACEQDPoDCyABIgEgAkcNeEHmACEQDPkDCyABIgEgAkcNGkEYIRAM+AMLIAEiASACRw0UQRIhEAz3AwsgASIBIAJHDVlBxQAhEAz2AwsgASIBIAJHDUpBPyEQDPUDCyABIgEgAkcNSEE8IRAM9AMLIAEiASACRw1BQTEhEAzzAwsgAC0ALkEBRg3rAwyHAgsgACABIgEgAhDAgICAAEEBRw3mASAAQgA3AyAM5wELIAAgASIBIAIQtICAgAAiEA3nASABIQEM9QILAkAgASIBIAJHDQBBBiEQDPADCyAAIAFBAWoiASACELuAgIAAIhAN6AEgASEBDDELIABCADcDIEESIRAM1QMLIAEiECACRw0rQR0hEAztAwsCQCABIgEgAkYNACABQQFqIQFBECEQDNQDC0EHIRAM7AMLIABCACAAKQMgIhEgAiABIhBrrSISfSITIBMgEVYbNwMgIBEgElYiFEUN5QFBCCEQDOsDCwJAIAEiASACRg0AIABBiYCAgAA2AgggACABNgIEIAEhAUEUIRAM0gMLQQkhEAzqAwsgASEBIAApAyBQDeQBIAEhAQzyAgsCQCABIgEgAkcNAEELIRAM6QMLIAAgAUEBaiIBIAIQtoCAgAAiEA3lASABIQEM8gILIAAgASIBIAIQuICAgAAiEA3lASABIQEM8gILIAAgASIBIAIQuICAgAAiEA3mASABIQEMDQsgACABIgEgAhC6gICAACIQDecBIAEhAQzwAgsCQCABIgEgAkcNAEEPIRAM5QMLIAEtAAAiEEE7Rg0IIBBBDUcN6AEgAUEBaiEBDO8CCyAAIAEiASACELqAgIAAIhAN6AEgASEBDPICCwNAAkAgAS0AAEHwtYCAAGotAAAiEEEBRg0AIBBBAkcN6wEgACgCBCEQIABBADYCBCAAIBAgAUEBaiIBELmAgIAAIhAN6gEgASEBDPQCCyABQQFqIgEgAkcNAAtBEiEQDOIDCyAAIAEiASACELqAgIAAIhAN6QEgASEBDAoLIAEiASACRw0GQRshEAzgAwsCQCABIgEgAkcNAEEWIRAM4AMLIABBioCAgAA2AgggACABNgIEIAAgASACELiAgIAAIhAN6gEgASEBQSAhEAzGAwsCQCABIgEgAkYNAANAAkAgAS0AAEHwt4CAAGotAAAiEEECRg0AAkAgEEF/ag4E5QHsAQDrAewBCyABQQFqIQFBCCEQDMgDCyABQQFqIgEgAkcNAAtBFSEQDN8DC0EVIRAM3gMLA0ACQCABLQAAQfC5gIAAai0AACIQQQJGDQAgEEF/ag4E3gHsAeAB6wHsAQsgAUEBaiIBIAJHDQALQRghEAzdAwsCQCABIgEgAkYNACAAQYuAgIAANgIIIAAgATYCBCABIQFBByEQDMQDC0EZIRAM3AMLIAFBAWohAQwCCwJAIAEiFCACRw0AQRohEAzbAwsgFCEBAkAgFC0AAEFzag4U3QLuAu4C7gLuAu4C7gLuAu4C7gLuAu4C7gLuAu4C7gLuAu4C7gIA7gILQQAhECAAQQA2AhwgAEGvi4CAADYCECAAQQI2AgwgACAUQQFqNgIUDNoDCwJAIAEtAAAiEEE7Rg0AIBBBDUcN6AEgAUEBaiEBDOUCCyABQQFqIQELQSIhEAy/AwsCQCABIhAgAkcNAEEcIRAM2AMLQgAhESAQIQEgEC0AAEFQag435wHmAQECAwQFBgcIAAAAAAAAAAkKCwwNDgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADxAREhMUAAtBHiEQDL0DC0ICIREM5QELQgMhEQzkAQtCBCERDOMBC0IFIREM4gELQgYhEQzhAQtCByERDOABC0IIIREM3wELQgkhEQzeAQtCCiERDN0BC0ILIREM3AELQgwhEQzbAQtCDSERDNoBC0IOIREM2QELQg8hEQzYAQtCCiERDNcBC0ILIREM1gELQgwhEQzVAQtCDSERDNQBC0IOIREM0wELQg8hEQzSAQtCACERAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAQLQAAQVBqDjflAeQBAAECAwQFBgfmAeYB5gHmAeYB5gHmAQgJCgsMDeYB5gHmAeYB5gHmAeYB5gHmAeYB5gHmAeYB5gHmAeYB5gHmAeYB5gHmAeYB5gHmAeYB5gEODxAREhPmAQtCAiERDOQBC0IDIREM4wELQgQhEQziAQtCBSERDOEBC0IGIREM4AELQgchEQzfAQtCCCERDN4BC0IJIREM3QELQgohEQzcAQtCCyERDNsBC0IMIREM2gELQg0hEQzZAQtCDiERDNgBC0IPIREM1wELQgohEQzWAQtCCyERDNUBC0IMIREM1AELQg0hEQzTAQtCDiERDNIBC0IPIREM0QELIABCACAAKQMgIhEgAiABIhBrrSISfSITIBMgEVYbNwMgIBEgElYiFEUN0gFBHyEQDMADCwJAIAEiASACRg0AIABBiYCAgAA2AgggACABNgIEIAEhAUEkIRAMpwMLQSAhEAy/AwsgACABIhAgAhC+gICAAEF/ag4FtgEAxQIB0QHSAQtBESEQDKQDCyAAQQE6AC8gECEBDLsDCyABIgEgAkcN0gFBJCEQDLsDCyABIg0gAkcNHkHGACEQDLoDCyAAIAEiASACELKAgIAAIhAN1AEgASEBDLUBCyABIhAgAkcNJkHQACEQDLgDCwJAIAEiASACRw0AQSghEAy4AwsgAEEANgIEIABBjICAgAA2AgggACABIAEQsYCAgAAiEA3TASABIQEM2AELAkAgASIQIAJHDQBBKSEQDLcDCyAQLQAAIgFBIEYNFCABQQlHDdMBIBBBAWohAQwVCwJAIAEiASACRg0AIAFBAWohAQwXC0EqIRAMtQMLAkAgASIQIAJHDQBBKyEQDLUDCwJAIBAtAAAiAUEJRg0AIAFBIEcN1QELIAAtACxBCEYN0wEgECEBDJEDCwJAIAEiASACRw0AQSwhEAy0AwsgAS0AAEEKRw3VASABQQFqIQEMyQILIAEiDiACRw3VAUEvIRAMsgMLA0ACQCABLQAAIhBBIEYNAAJAIBBBdmoOBADcAdwBANoBCyABIQEM4AELIAFBAWoiASACRw0AC0ExIRAMsQMLQTIhECABIhQgAkYNsAMgAiAUayAAKAIAIgFqIRUgFCABa0EDaiEWAkADQCAULQAAIhdBIHIgFyAXQb9/akH/AXFBGkkbQf8BcSABQfC7gIAAai0AAEcNAQJAIAFBA0cNAEEGIQEMlgMLIAFBAWohASAUQQFqIhQgAkcNAAsgACAVNgIADLEDCyAAQQA2AgAgFCEBDNkBC0EzIRAgASIUIAJGDa8DIAIgFGsgACgCACIBaiEVIBQgAWtBCGohFgJAA0AgFC0AACIXQSByIBcgF0G/f2pB/wFxQRpJG0H/AXEgAUH0u4CAAGotAABHDQECQCABQQhHDQBBBSEBDJUDCyABQQFqIQEgFEEBaiIUIAJHDQALIAAgFTYCAAywAwsgAEEANgIAIBQhAQzYAQtBNCEQIAEiFCACRg2uAyACIBRrIAAoAgAiAWohFSAUIAFrQQVqIRYCQANAIBQtAAAiF0EgciAXIBdBv39qQf8BcUEaSRtB/wFxIAFB0MKAgABqLQAARw0BAkAgAUEFRw0AQQchAQyUAwsgAUEBaiEBIBRBAWoiFCACRw0ACyAAIBU2AgAMrwMLIABBADYCACAUIQEM1wELAkAgASIBIAJGDQADQAJAIAEtAABBgL6AgABqLQAAIhBBAUYNACAQQQJGDQogASEBDN0BCyABQQFqIgEgAkcNAAtBMCEQDK4DC0EwIRAMrQMLAkAgASIBIAJGDQADQAJAIAEtAAAiEEEgRg0AIBBBdmoOBNkB2gHaAdkB2gELIAFBAWoiASACRw0AC0E4IRAMrQMLQTghEAysAwsDQAJAIAEtAAAiEEEgRg0AIBBBCUcNAwsgAUEBaiIBIAJHDQALQTwhEAyrAwsDQAJAIAEtAAAiEEEgRg0AAkACQCAQQXZqDgTaAQEB2gEACyAQQSxGDdsBCyABIQEMBAsgAUEBaiIBIAJHDQALQT8hEAyqAwsgASEBDNsBC0HAACEQIAEiFCACRg2oAyACIBRrIAAoAgAiAWohFiAUIAFrQQZqIRcCQANAIBQtAABBIHIgAUGAwICAAGotAABHDQEgAUEGRg2OAyABQQFqIQEgFEEBaiIUIAJHDQALIAAgFjYCAAypAwsgAEEANgIAIBQhAQtBNiEQDI4DCwJAIAEiDyACRw0AQcEAIRAMpwMLIABBjICAgAA2AgggACAPNgIEIA8hASAALQAsQX9qDgTNAdUB1wHZAYcDCyABQQFqIQEMzAELAkAgASIBIAJGDQADQAJAIAEtAAAiEEEgciAQIBBBv39qQf8BcUEaSRtB/wFxIhBBCUYNACAQQSBGDQACQAJAAkACQCAQQZ1/ag4TAAMDAwMDAwMBAwMDAwMDAwMDAgMLIAFBAWohAUExIRAMkQMLIAFBAWohAUEyIRAMkAMLIAFBAWohAUEzIRAMjwMLIAEhAQzQAQsgAUEBaiIBIAJHDQALQTUhEAylAwtBNSEQDKQDCwJAIAEiASACRg0AA0ACQCABLQAAQYC8gIAAai0AAEEBRg0AIAEhAQzTAQsgAUEBaiIBIAJHDQALQT0hEAykAwtBPSEQDKMDCyAAIAEiASACELCAgIAAIhAN1gEgASEBDAELIBBBAWohAQtBPCEQDIcDCwJAIAEiASACRw0AQcIAIRAMoAMLAkADQAJAIAEtAABBd2oOGAAC/gL+AoQD/gL+Av4C/gL+Av4C/gL+Av4C/gL+Av4C/gL+Av4C/gL+Av4CAP4CCyABQQFqIgEgAkcNAAtBwgAhEAygAwsgAUEBaiEBIAAtAC1BAXFFDb0BIAEhAQtBLCEQDIUDCyABIgEgAkcN0wFBxAAhEAydAwsDQAJAIAEtAABBkMCAgABqLQAAQQFGDQAgASEBDLcCCyABQQFqIgEgAkcNAAtBxQAhEAycAwsgDS0AACIQQSBGDbMBIBBBOkcNgQMgACgCBCEBIABBADYCBCAAIAEgDRCvgICAACIBDdABIA1BAWohAQyzAgtBxwAhECABIg0gAkYNmgMgAiANayAAKAIAIgFqIRYgDSABa0EFaiEXA0AgDS0AACIUQSByIBQgFEG/f2pB/wFxQRpJG0H/AXEgAUGQwoCAAGotAABHDYADIAFBBUYN9AIgAUEBaiEBIA1BAWoiDSACRw0ACyAAIBY2AgAMmgMLQcgAIRAgASINIAJGDZkDIAIgDWsgACgCACIBaiEWIA0gAWtBCWohFwNAIA0tAAAiFEEgciAUIBRBv39qQf8BcUEaSRtB/wFxIAFBlsKAgABqLQAARw3/AgJAIAFBCUcNAEECIQEM9QILIAFBAWohASANQQFqIg0gAkcNAAsgACAWNgIADJkDCwJAIAEiDSACRw0AQckAIRAMmQMLAkACQCANLQAAIgFBIHIgASABQb9/akH/AXFBGkkbQf8BcUGSf2oOBwCAA4ADgAOAA4ADAYADCyANQQFqIQFBPiEQDIADCyANQQFqIQFBPyEQDP8CC0HKACEQIAEiDSACRg2XAyACIA1rIAAoAgAiAWohFiANIAFrQQFqIRcDQCANLQAAIhRBIHIgFCAUQb9/akH/AXFBGkkbQf8BcSABQaDCgIAAai0AAEcN/QIgAUEBRg3wAiABQQFqIQEgDUEBaiINIAJHDQALIAAgFjYCAAyXAwtBywAhECABIg0gAkYNlgMgAiANayAAKAIAIgFqIRYgDSABa0EOaiEXA0AgDS0AACIUQSByIBQgFEG/f2pB/wFxQRpJG0H/AXEgAUGiwoCAAGotAABHDfwCIAFBDkYN8AIgAUEBaiEBIA1BAWoiDSACRw0ACyAAIBY2AgAMlgMLQcwAIRAgASINIAJGDZUDIAIgDWsgACgCACIBaiEWIA0gAWtBD2ohFwNAIA0tAAAiFEEgciAUIBRBv39qQf8BcUEaSRtB/wFxIAFBwMKAgABqLQAARw37AgJAIAFBD0cNAEEDIQEM8QILIAFBAWohASANQQFqIg0gAkcNAAsgACAWNgIADJUDC0HNACEQIAEiDSACRg2UAyACIA1rIAAoAgAiAWohFiANIAFrQQVqIRcDQCANLQAAIhRBIHIgFCAUQb9/akH/AXFBGkkbQf8BcSABQdDCgIAAai0AAEcN+gICQCABQQVHDQBBBCEBDPACCyABQQFqIQEgDUEBaiINIAJHDQALIAAgFjYCAAyUAwsCQCABIg0gAkcNAEHOACEQDJQDCwJAAkACQAJAIA0tAAAiAUEgciABIAFBv39qQf8BcUEaSRtB/wFxQZ1/ag4TAP0C/QL9Av0C/QL9Av0C/QL9Av0C/QL9AgH9Av0C/QICA/0CCyANQQFqIQFBwQAhEAz9AgsgDUEBaiEBQcIAIRAM/AILIA1BAWohAUHDACEQDPsCCyANQQFqIQFBxAAhEAz6AgsCQCABIgEgAkYNACAAQY2AgIAANgIIIAAgATYCBCABIQFBxQAhEAz6AgtBzwAhEAySAwsgECEBAkACQCAQLQAAQXZqDgQBqAKoAgCoAgsgEEEBaiEBC0EnIRAM+AILAkAgASIBIAJHDQBB0QAhEAyRAwsCQCABLQAAQSBGDQAgASEBDI0BCyABQQFqIQEgAC0ALUEBcUUNxwEgASEBDIwBCyABIhcgAkcNyAFB0gAhEAyPAwtB0wAhECABIhQgAkYNjgMgAiAUayAAKAIAIgFqIRYgFCABa0EBaiEXA0AgFC0AACABQdbCgIAAai0AAEcNzAEgAUEBRg3HASABQQFqIQEgFEEBaiIUIAJHDQALIAAgFjYCAAyOAwsCQCABIgEgAkcNAEHVACEQDI4DCyABLQAAQQpHDcwBIAFBAWohAQzHAQsCQCABIgEgAkcNAEHWACEQDI0DCwJAAkAgAS0AAEF2ag4EAM0BzQEBzQELIAFBAWohAQzHAQsgAUEBaiEBQcoAIRAM8wILIAAgASIBIAIQroCAgAAiEA3LASABIQFBzQAhEAzyAgsgAC0AKUEiRg2FAwymAgsCQCABIgEgAkcNAEHbACEQDIoDC0EAIRRBASEXQQEhFkEAIRACQAJAAkACQAJAAkACQAJAAkAgAS0AAEFQag4K1AHTAQABAgMEBQYI1QELQQIhEAwGC0EDIRAMBQtBBCEQDAQLQQUhEAwDC0EGIRAMAgtBByEQDAELQQghEAtBACEXQQAhFkEAIRQMzAELQQkhEEEBIRRBACEXQQAhFgzLAQsCQCABIgEgAkcNAEHdACEQDIkDCyABLQAAQS5HDcwBIAFBAWohAQymAgsgASIBIAJHDcwBQd8AIRAMhwMLAkAgASIBIAJGDQAgAEGOgICAADYCCCAAIAE2AgQgASEBQdAAIRAM7gILQeAAIRAMhgMLQeEAIRAgASIBIAJGDYUDIAIgAWsgACgCACIUaiEWIAEgFGtBA2ohFwNAIAEtAAAgFEHiwoCAAGotAABHDc0BIBRBA0YNzAEgFEEBaiEUIAFBAWoiASACRw0ACyAAIBY2AgAMhQMLQeIAIRAgASIBIAJGDYQDIAIgAWsgACgCACIUaiEWIAEgFGtBAmohFwNAIAEtAAAgFEHmwoCAAGotAABHDcwBIBRBAkYNzgEgFEEBaiEUIAFBAWoiASACRw0ACyAAIBY2AgAMhAMLQeMAIRAgASIBIAJGDYMDIAIgAWsgACgCACIUaiEWIAEgFGtBA2ohFwNAIAEtAAAgFEHpwoCAAGotAABHDcsBIBRBA0YNzgEgFEEBaiEUIAFBAWoiASACRw0ACyAAIBY2AgAMgwMLAkAgASIBIAJHDQBB5QAhEAyDAwsgACABQQFqIgEgAhCogICAACIQDc0BIAEhAUHWACEQDOkCCwJAIAEiASACRg0AA0ACQCABLQAAIhBBIEYNAAJAAkACQCAQQbh/ag4LAAHPAc8BzwHPAc8BzwHPAc8BAs8BCyABQQFqIQFB0gAhEAztAgsgAUEBaiEBQdMAIRAM7AILIAFBAWohAUHUACEQDOsCCyABQQFqIgEgAkcNAAtB5AAhEAyCAwtB5AAhEAyBAwsDQAJAIAEtAABB8MKAgABqLQAAIhBBAUYNACAQQX5qDgPPAdAB0QHSAQsgAUEBaiIBIAJHDQALQeYAIRAMgAMLAkAgASIBIAJGDQAgAUEBaiEBDAMLQecAIRAM/wILA0ACQCABLQAAQfDEgIAAai0AACIQQQFGDQACQCAQQX5qDgTSAdMB1AEA1QELIAEhAUHXACEQDOcCCyABQQFqIgEgAkcNAAtB6AAhEAz+AgsCQCABIgEgAkcNAEHpACEQDP4CCwJAIAEtAAAiEEF2ag4augHVAdUBvAHVAdUB1QHVAdUB1QHVAdUB1QHVAdUB1QHVAdUB1QHVAdUB1QHKAdUB1QEA0wELIAFBAWohAQtBBiEQDOMCCwNAAkAgAS0AAEHwxoCAAGotAABBAUYNACABIQEMngILIAFBAWoiASACRw0AC0HqACEQDPsCCwJAIAEiASACRg0AIAFBAWohAQwDC0HrACEQDPoCCwJAIAEiASACRw0AQewAIRAM+gILIAFBAWohAQwBCwJAIAEiASACRw0AQe0AIRAM+QILIAFBAWohAQtBBCEQDN4CCwJAIAEiFCACRw0AQe4AIRAM9wILIBQhAQJAAkACQCAULQAAQfDIgIAAai0AAEF/ag4H1AHVAdYBAJwCAQLXAQsgFEEBaiEBDAoLIBRBAWohAQzNAQtBACEQIABBADYCHCAAQZuSgIAANgIQIABBBzYCDCAAIBRBAWo2AhQM9gILAkADQAJAIAEtAABB8MiAgABqLQAAIhBBBEYNAAJAAkAgEEF/ag4H0gHTAdQB2QEABAHZAQsgASEBQdoAIRAM4AILIAFBAWohAUHcACEQDN8CCyABQQFqIgEgAkcNAAtB7wAhEAz2AgsgAUEBaiEBDMsBCwJAIAEiFCACRw0AQfAAIRAM9QILIBQtAABBL0cN1AEgFEEBaiEBDAYLAkAgASIUIAJHDQBB8QAhEAz0AgsCQCAULQAAIgFBL0cNACAUQQFqIQFB3QAhEAzbAgsgAUF2aiIEQRZLDdMBQQEgBHRBiYCAAnFFDdMBDMoCCwJAIAEiASACRg0AIAFBAWohAUHeACEQDNoCC0HyACEQDPICCwJAIAEiFCACRw0AQfQAIRAM8gILIBQhAQJAIBQtAABB8MyAgABqLQAAQX9qDgPJApQCANQBC0HhACEQDNgCCwJAIAEiFCACRg0AA0ACQCAULQAAQfDKgIAAai0AACIBQQNGDQACQCABQX9qDgLLAgDVAQsgFCEBQd8AIRAM2gILIBRBAWoiFCACRw0AC0HzACEQDPECC0HzACEQDPACCwJAIAEiASACRg0AIABBj4CAgAA2AgggACABNgIEIAEhAUHgACEQDNcCC0H1ACEQDO8CCwJAIAEiASACRw0AQfYAIRAM7wILIABBj4CAgAA2AgggACABNgIEIAEhAQtBAyEQDNQCCwNAIAEtAABBIEcNwwIgAUEBaiIBIAJHDQALQfcAIRAM7AILAkAgASIBIAJHDQBB+AAhEAzsAgsgAS0AAEEgRw3OASABQQFqIQEM7wELIAAgASIBIAIQrICAgAAiEA3OASABIQEMjgILAkAgASIEIAJHDQBB+gAhEAzqAgsgBC0AAEHMAEcN0QEgBEEBaiEBQRMhEAzPAQsCQCABIgQgAkcNAEH7ACEQDOkCCyACIARrIAAoAgAiAWohFCAEIAFrQQVqIRADQCAELQAAIAFB8M6AgABqLQAARw3QASABQQVGDc4BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQfsAIRAM6AILAkAgASIEIAJHDQBB/AAhEAzoAgsCQAJAIAQtAABBvX9qDgwA0QHRAdEB0QHRAdEB0QHRAdEB0QEB0QELIARBAWohAUHmACEQDM8CCyAEQQFqIQFB5wAhEAzOAgsCQCABIgQgAkcNAEH9ACEQDOcCCyACIARrIAAoAgAiAWohFCAEIAFrQQJqIRACQANAIAQtAAAgAUHtz4CAAGotAABHDc8BIAFBAkYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEH9ACEQDOcCCyAAQQA2AgAgEEEBaiEBQRAhEAzMAQsCQCABIgQgAkcNAEH+ACEQDOYCCyACIARrIAAoAgAiAWohFCAEIAFrQQVqIRACQANAIAQtAAAgAUH2zoCAAGotAABHDc4BIAFBBUYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEH+ACEQDOYCCyAAQQA2AgAgEEEBaiEBQRYhEAzLAQsCQCABIgQgAkcNAEH/ACEQDOUCCyACIARrIAAoAgAiAWohFCAEIAFrQQNqIRACQANAIAQtAAAgAUH8zoCAAGotAABHDc0BIAFBA0YNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEH/ACEQDOUCCyAAQQA2AgAgEEEBaiEBQQUhEAzKAQsCQCABIgQgAkcNAEGAASEQDOQCCyAELQAAQdkARw3LASAEQQFqIQFBCCEQDMkBCwJAIAEiBCACRw0AQYEBIRAM4wILAkACQCAELQAAQbJ/ag4DAMwBAcwBCyAEQQFqIQFB6wAhEAzKAgsgBEEBaiEBQewAIRAMyQILAkAgASIEIAJHDQBBggEhEAziAgsCQAJAIAQtAABBuH9qDggAywHLAcsBywHLAcsBAcsBCyAEQQFqIQFB6gAhEAzJAgsgBEEBaiEBQe0AIRAMyAILAkAgASIEIAJHDQBBgwEhEAzhAgsgAiAEayAAKAIAIgFqIRAgBCABa0ECaiEUAkADQCAELQAAIAFBgM+AgABqLQAARw3JASABQQJGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBA2AgBBgwEhEAzhAgtBACEQIABBADYCACAUQQFqIQEMxgELAkAgASIEIAJHDQBBhAEhEAzgAgsgAiAEayAAKAIAIgFqIRQgBCABa0EEaiEQAkADQCAELQAAIAFBg8+AgABqLQAARw3IASABQQRGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBhAEhEAzgAgsgAEEANgIAIBBBAWohAUEjIRAMxQELAkAgASIEIAJHDQBBhQEhEAzfAgsCQAJAIAQtAABBtH9qDggAyAHIAcgByAHIAcgBAcgBCyAEQQFqIQFB7wAhEAzGAgsgBEEBaiEBQfAAIRAMxQILAkAgASIEIAJHDQBBhgEhEAzeAgsgBC0AAEHFAEcNxQEgBEEBaiEBDIMCCwJAIAEiBCACRw0AQYcBIRAM3QILIAIgBGsgACgCACIBaiEUIAQgAWtBA2ohEAJAA0AgBC0AACABQYjPgIAAai0AAEcNxQEgAUEDRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQYcBIRAM3QILIABBADYCACAQQQFqIQFBLSEQDMIBCwJAIAEiBCACRw0AQYgBIRAM3AILIAIgBGsgACgCACIBaiEUIAQgAWtBCGohEAJAA0AgBC0AACABQdDPgIAAai0AAEcNxAEgAUEIRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQYgBIRAM3AILIABBADYCACAQQQFqIQFBKSEQDMEBCwJAIAEiASACRw0AQYkBIRAM2wILQQEhECABLQAAQd8ARw3AASABQQFqIQEMgQILAkAgASIEIAJHDQBBigEhEAzaAgsgAiAEayAAKAIAIgFqIRQgBCABa0EBaiEQA0AgBC0AACABQYzPgIAAai0AAEcNwQEgAUEBRg2vAiABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGKASEQDNkCCwJAIAEiBCACRw0AQYsBIRAM2QILIAIgBGsgACgCACIBaiEUIAQgAWtBAmohEAJAA0AgBC0AACABQY7PgIAAai0AAEcNwQEgAUECRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQYsBIRAM2QILIABBADYCACAQQQFqIQFBAiEQDL4BCwJAIAEiBCACRw0AQYwBIRAM2AILIAIgBGsgACgCACIBaiEUIAQgAWtBAWohEAJAA0AgBC0AACABQfDPgIAAai0AAEcNwAEgAUEBRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQYwBIRAM2AILIABBADYCACAQQQFqIQFBHyEQDL0BCwJAIAEiBCACRw0AQY0BIRAM1wILIAIgBGsgACgCACIBaiEUIAQgAWtBAWohEAJAA0AgBC0AACABQfLPgIAAai0AAEcNvwEgAUEBRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQY0BIRAM1wILIABBADYCACAQQQFqIQFBCSEQDLwBCwJAIAEiBCACRw0AQY4BIRAM1gILAkACQCAELQAAQbd/ag4HAL8BvwG/Ab8BvwEBvwELIARBAWohAUH4ACEQDL0CCyAEQQFqIQFB+QAhEAy8AgsCQCABIgQgAkcNAEGPASEQDNUCCyACIARrIAAoAgAiAWohFCAEIAFrQQVqIRACQANAIAQtAAAgAUGRz4CAAGotAABHDb0BIAFBBUYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGPASEQDNUCCyAAQQA2AgAgEEEBaiEBQRghEAy6AQsCQCABIgQgAkcNAEGQASEQDNQCCyACIARrIAAoAgAiAWohFCAEIAFrQQJqIRACQANAIAQtAAAgAUGXz4CAAGotAABHDbwBIAFBAkYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGQASEQDNQCCyAAQQA2AgAgEEEBaiEBQRchEAy5AQsCQCABIgQgAkcNAEGRASEQDNMCCyACIARrIAAoAgAiAWohFCAEIAFrQQZqIRACQANAIAQtAAAgAUGaz4CAAGotAABHDbsBIAFBBkYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGRASEQDNMCCyAAQQA2AgAgEEEBaiEBQRUhEAy4AQsCQCABIgQgAkcNAEGSASEQDNICCyACIARrIAAoAgAiAWohFCAEIAFrQQVqIRACQANAIAQtAAAgAUGhz4CAAGotAABHDboBIAFBBUYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGSASEQDNICCyAAQQA2AgAgEEEBaiEBQR4hEAy3AQsCQCABIgQgAkcNAEGTASEQDNECCyAELQAAQcwARw24ASAEQQFqIQFBCiEQDLYBCwJAIAQgAkcNAEGUASEQDNACCwJAAkAgBC0AAEG/f2oODwC5AbkBuQG5AbkBuQG5AbkBuQG5AbkBuQG5AQG5AQsgBEEBaiEBQf4AIRAMtwILIARBAWohAUH/ACEQDLYCCwJAIAQgAkcNAEGVASEQDM8CCwJAAkAgBC0AAEG/f2oOAwC4AQG4AQsgBEEBaiEBQf0AIRAMtgILIARBAWohBEGAASEQDLUCCwJAIAQgAkcNAEGWASEQDM4CCyACIARrIAAoAgAiAWohFCAEIAFrQQFqIRACQANAIAQtAAAgAUGnz4CAAGotAABHDbYBIAFBAUYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGWASEQDM4CCyAAQQA2AgAgEEEBaiEBQQshEAyzAQsCQCAEIAJHDQBBlwEhEAzNAgsCQAJAAkACQCAELQAAQVNqDiMAuAG4AbgBuAG4AbgBuAG4AbgBuAG4AbgBuAG4AbgBuAG4AbgBuAG4AbgBuAG4AQG4AbgBuAG4AbgBArgBuAG4AQO4AQsgBEEBaiEBQfsAIRAMtgILIARBAWohAUH8ACEQDLUCCyAEQQFqIQRBgQEhEAy0AgsgBEEBaiEEQYIBIRAMswILAkAgBCACRw0AQZgBIRAMzAILIAIgBGsgACgCACIBaiEUIAQgAWtBBGohEAJAA0AgBC0AACABQanPgIAAai0AAEcNtAEgAUEERg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQZgBIRAMzAILIABBADYCACAQQQFqIQFBGSEQDLEBCwJAIAQgAkcNAEGZASEQDMsCCyACIARrIAAoAgAiAWohFCAEIAFrQQVqIRACQANAIAQtAAAgAUGuz4CAAGotAABHDbMBIAFBBUYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGZASEQDMsCCyAAQQA2AgAgEEEBaiEBQQYhEAywAQsCQCAEIAJHDQBBmgEhEAzKAgsgAiAEayAAKAIAIgFqIRQgBCABa0EBaiEQAkADQCAELQAAIAFBtM+AgABqLQAARw2yASABQQFGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBmgEhEAzKAgsgAEEANgIAIBBBAWohAUEcIRAMrwELAkAgBCACRw0AQZsBIRAMyQILIAIgBGsgACgCACIBaiEUIAQgAWtBAWohEAJAA0AgBC0AACABQbbPgIAAai0AAEcNsQEgAUEBRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQZsBIRAMyQILIABBADYCACAQQQFqIQFBJyEQDK4BCwJAIAQgAkcNAEGcASEQDMgCCwJAAkAgBC0AAEGsf2oOAgABsQELIARBAWohBEGGASEQDK8CCyAEQQFqIQRBhwEhEAyuAgsCQCAEIAJHDQBBnQEhEAzHAgsgAiAEayAAKAIAIgFqIRQgBCABa0EBaiEQAkADQCAELQAAIAFBuM+AgABqLQAARw2vASABQQFGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBnQEhEAzHAgsgAEEANgIAIBBBAWohAUEmIRAMrAELAkAgBCACRw0AQZ4BIRAMxgILIAIgBGsgACgCACIBaiEUIAQgAWtBAWohEAJAA0AgBC0AACABQbrPgIAAai0AAEcNrgEgAUEBRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQZ4BIRAMxgILIABBADYCACAQQQFqIQFBAyEQDKsBCwJAIAQgAkcNAEGfASEQDMUCCyACIARrIAAoAgAiAWohFCAEIAFrQQJqIRACQANAIAQtAAAgAUHtz4CAAGotAABHDa0BIAFBAkYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGfASEQDMUCCyAAQQA2AgAgEEEBaiEBQQwhEAyqAQsCQCAEIAJHDQBBoAEhEAzEAgsgAiAEayAAKAIAIgFqIRQgBCABa0EDaiEQAkADQCAELQAAIAFBvM+AgABqLQAARw2sASABQQNGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBoAEhEAzEAgsgAEEANgIAIBBBAWohAUENIRAMqQELAkAgBCACRw0AQaEBIRAMwwILAkACQCAELQAAQbp/ag4LAKwBrAGsAawBrAGsAawBrAGsAQGsAQsgBEEBaiEEQYsBIRAMqgILIARBAWohBEGMASEQDKkCCwJAIAQgAkcNAEGiASEQDMICCyAELQAAQdAARw2pASAEQQFqIQQM6QELAkAgBCACRw0AQaMBIRAMwQILAkACQCAELQAAQbd/ag4HAaoBqgGqAaoBqgEAqgELIARBAWohBEGOASEQDKgCCyAEQQFqIQFBIiEQDKYBCwJAIAQgAkcNAEGkASEQDMACCyACIARrIAAoAgAiAWohFCAEIAFrQQFqIRACQANAIAQtAAAgAUHAz4CAAGotAABHDagBIAFBAUYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGkASEQDMACCyAAQQA2AgAgEEEBaiEBQR0hEAylAQsCQCAEIAJHDQBBpQEhEAy/AgsCQAJAIAQtAABBrn9qDgMAqAEBqAELIARBAWohBEGQASEQDKYCCyAEQQFqIQFBBCEQDKQBCwJAIAQgAkcNAEGmASEQDL4CCwJAAkACQAJAAkAgBC0AAEG/f2oOFQCqAaoBqgGqAaoBqgGqAaoBqgGqAQGqAaoBAqoBqgEDqgGqAQSqAQsgBEEBaiEEQYgBIRAMqAILIARBAWohBEGJASEQDKcCCyAEQQFqIQRBigEhEAymAgsgBEEBaiEEQY8BIRAMpQILIARBAWohBEGRASEQDKQCCwJAIAQgAkcNAEGnASEQDL0CCyACIARrIAAoAgAiAWohFCAEIAFrQQJqIRACQANAIAQtAAAgAUHtz4CAAGotAABHDaUBIAFBAkYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGnASEQDL0CCyAAQQA2AgAgEEEBaiEBQREhEAyiAQsCQCAEIAJHDQBBqAEhEAy8AgsgAiAEayAAKAIAIgFqIRQgBCABa0ECaiEQAkADQCAELQAAIAFBws+AgABqLQAARw2kASABQQJGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBqAEhEAy8AgsgAEEANgIAIBBBAWohAUEsIRAMoQELAkAgBCACRw0AQakBIRAMuwILIAIgBGsgACgCACIBaiEUIAQgAWtBBGohEAJAA0AgBC0AACABQcXPgIAAai0AAEcNowEgAUEERg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQakBIRAMuwILIABBADYCACAQQQFqIQFBKyEQDKABCwJAIAQgAkcNAEGqASEQDLoCCyACIARrIAAoAgAiAWohFCAEIAFrQQJqIRACQANAIAQtAAAgAUHKz4CAAGotAABHDaIBIAFBAkYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGqASEQDLoCCyAAQQA2AgAgEEEBaiEBQRQhEAyfAQsCQCAEIAJHDQBBqwEhEAy5AgsCQAJAAkACQCAELQAAQb5/ag4PAAECpAGkAaQBpAGkAaQBpAGkAaQBpAGkAQOkAQsgBEEBaiEEQZMBIRAMogILIARBAWohBEGUASEQDKECCyAEQQFqIQRBlQEhEAygAgsgBEEBaiEEQZYBIRAMnwILAkAgBCACRw0AQawBIRAMuAILIAQtAABBxQBHDZ8BIARBAWohBAzgAQsCQCAEIAJHDQBBrQEhEAy3AgsgAiAEayAAKAIAIgFqIRQgBCABa0ECaiEQAkADQCAELQAAIAFBzc+AgABqLQAARw2fASABQQJGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBrQEhEAy3AgsgAEEANgIAIBBBAWohAUEOIRAMnAELAkAgBCACRw0AQa4BIRAMtgILIAQtAABB0ABHDZ0BIARBAWohAUElIRAMmwELAkAgBCACRw0AQa8BIRAMtQILIAIgBGsgACgCACIBaiEUIAQgAWtBCGohEAJAA0AgBC0AACABQdDPgIAAai0AAEcNnQEgAUEIRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQa8BIRAMtQILIABBADYCACAQQQFqIQFBKiEQDJoBCwJAIAQgAkcNAEGwASEQDLQCCwJAAkAgBC0AAEGrf2oOCwCdAZ0BnQGdAZ0BnQGdAZ0BnQEBnQELIARBAWohBEGaASEQDJsCCyAEQQFqIQRBmwEhEAyaAgsCQCAEIAJHDQBBsQEhEAyzAgsCQAJAIAQtAABBv39qDhQAnAGcAZwBnAGcAZwBnAGcAZwBnAGcAZwBnAGcAZwBnAGcAZwBAZwBCyAEQQFqIQRBmQEhEAyaAgsgBEEBaiEEQZwBIRAMmQILAkAgBCACRw0AQbIBIRAMsgILIAIgBGsgACgCACIBaiEUIAQgAWtBA2ohEAJAA0AgBC0AACABQdnPgIAAai0AAEcNmgEgAUEDRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQbIBIRAMsgILIABBADYCACAQQQFqIQFBISEQDJcBCwJAIAQgAkcNAEGzASEQDLECCyACIARrIAAoAgAiAWohFCAEIAFrQQZqIRACQANAIAQtAAAgAUHdz4CAAGotAABHDZkBIAFBBkYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGzASEQDLECCyAAQQA2AgAgEEEBaiEBQRohEAyWAQsCQCAEIAJHDQBBtAEhEAywAgsCQAJAAkAgBC0AAEG7f2oOEQCaAZoBmgGaAZoBmgGaAZoBmgEBmgGaAZoBmgGaAQKaAQsgBEEBaiEEQZ0BIRAMmAILIARBAWohBEGeASEQDJcCCyAEQQFqIQRBnwEhEAyWAgsCQCAEIAJHDQBBtQEhEAyvAgsgAiAEayAAKAIAIgFqIRQgBCABa0EFaiEQAkADQCAELQAAIAFB5M+AgABqLQAARw2XASABQQVGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBtQEhEAyvAgsgAEEANgIAIBBBAWohAUEoIRAMlAELAkAgBCACRw0AQbYBIRAMrgILIAIgBGsgACgCACIBaiEUIAQgAWtBAmohEAJAA0AgBC0AACABQerPgIAAai0AAEcNlgEgAUECRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQbYBIRAMrgILIABBADYCACAQQQFqIQFBByEQDJMBCwJAIAQgAkcNAEG3ASEQDK0CCwJAAkAgBC0AAEG7f2oODgCWAZYBlgGWAZYBlgGWAZYBlgGWAZYBlgEBlgELIARBAWohBEGhASEQDJQCCyAEQQFqIQRBogEhEAyTAgsCQCAEIAJHDQBBuAEhEAysAgsgAiAEayAAKAIAIgFqIRQgBCABa0ECaiEQAkADQCAELQAAIAFB7c+AgABqLQAARw2UASABQQJGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBuAEhEAysAgsgAEEANgIAIBBBAWohAUESIRAMkQELAkAgBCACRw0AQbkBIRAMqwILIAIgBGsgACgCACIBaiEUIAQgAWtBAWohEAJAA0AgBC0AACABQfDPgIAAai0AAEcNkwEgAUEBRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQbkBIRAMqwILIABBADYCACAQQQFqIQFBICEQDJABCwJAIAQgAkcNAEG6ASEQDKoCCyACIARrIAAoAgAiAWohFCAEIAFrQQFqIRACQANAIAQtAAAgAUHyz4CAAGotAABHDZIBIAFBAUYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEG6ASEQDKoCCyAAQQA2AgAgEEEBaiEBQQ8hEAyPAQsCQCAEIAJHDQBBuwEhEAypAgsCQAJAIAQtAABBt39qDgcAkgGSAZIBkgGSAQGSAQsgBEEBaiEEQaUBIRAMkAILIARBAWohBEGmASEQDI8CCwJAIAQgAkcNAEG8ASEQDKgCCyACIARrIAAoAgAiAWohFCAEIAFrQQdqIRACQANAIAQtAAAgAUH0z4CAAGotAABHDZABIAFBB0YNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEG8ASEQDKgCCyAAQQA2AgAgEEEBaiEBQRshEAyNAQsCQCAEIAJHDQBBvQEhEAynAgsCQAJAAkAgBC0AAEG+f2oOEgCRAZEBkQGRAZEBkQGRAZEBkQEBkQGRAZEBkQGRAZEBApEBCyAEQQFqIQRBpAEhEAyPAgsgBEEBaiEEQacBIRAMjgILIARBAWohBEGoASEQDI0CCwJAIAQgAkcNAEG+ASEQDKYCCyAELQAAQc4ARw2NASAEQQFqIQQMzwELAkAgBCACRw0AQb8BIRAMpQILAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgBC0AAEG/f2oOFQABAgOcAQQFBpwBnAGcAQcICQoLnAEMDQ4PnAELIARBAWohAUHoACEQDJoCCyAEQQFqIQFB6QAhEAyZAgsgBEEBaiEBQe4AIRAMmAILIARBAWohAUHyACEQDJcCCyAEQQFqIQFB8wAhEAyWAgsgBEEBaiEBQfYAIRAMlQILIARBAWohAUH3ACEQDJQCCyAEQQFqIQFB+gAhEAyTAgsgBEEBaiEEQYMBIRAMkgILIARBAWohBEGEASEQDJECCyAEQQFqIQRBhQEhEAyQAgsgBEEBaiEEQZIBIRAMjwILIARBAWohBEGYASEQDI4CCyAEQQFqIQRBoAEhEAyNAgsgBEEBaiEEQaMBIRAMjAILIARBAWohBEGqASEQDIsCCwJAIAQgAkYNACAAQZCAgIAANgIIIAAgBDYCBEGrASEQDIsCC0HAASEQDKMCCyAAIAUgAhCqgICAACIBDYsBIAUhAQxcCwJAIAYgAkYNACAGQQFqIQUMjQELQcIBIRAMoQILA0ACQCAQLQAAQXZqDgSMAQAAjwEACyAQQQFqIhAgAkcNAAtBwwEhEAygAgsCQCAHIAJGDQAgAEGRgICAADYCCCAAIAc2AgQgByEBQQEhEAyHAgtBxAEhEAyfAgsCQCAHIAJHDQBBxQEhEAyfAgsCQAJAIActAABBdmoOBAHOAc4BAM4BCyAHQQFqIQYMjQELIAdBAWohBQyJAQsCQCAHIAJHDQBBxgEhEAyeAgsCQAJAIActAABBdmoOFwGPAY8BAY8BjwGPAY8BjwGPAY8BjwGPAY8BjwGPAY8BjwGPAY8BjwGPAQCPAQsgB0EBaiEHC0GwASEQDIQCCwJAIAggAkcNAEHIASEQDJ0CCyAILQAAQSBHDY0BIABBADsBMiAIQQFqIQFBswEhEAyDAgsgASEXAkADQCAXIgcgAkYNASAHLQAAQVBqQf8BcSIQQQpPDcwBAkAgAC8BMiIUQZkzSw0AIAAgFEEKbCIUOwEyIBBB//8DcyAUQf7/A3FJDQAgB0EBaiEXIAAgFCAQaiIQOwEyIBBB//8DcUHoB0kNAQsLQQAhECAAQQA2AhwgAEHBiYCAADYCECAAQQ02AgwgACAHQQFqNgIUDJwCC0HHASEQDJsCCyAAIAggAhCugICAACIQRQ3KASAQQRVHDYwBIABByAE2AhwgACAINgIUIABByZeAgAA2AhAgAEEVNgIMQQAhEAyaAgsCQCAJIAJHDQBBzAEhEAyaAgtBACEUQQEhF0EBIRZBACEQAkACQAJAAkACQAJAAkACQAJAIAktAABBUGoOCpYBlQEAAQIDBAUGCJcBC0ECIRAMBgtBAyEQDAULQQQhEAwEC0EFIRAMAwtBBiEQDAILQQchEAwBC0EIIRALQQAhF0EAIRZBACEUDI4BC0EJIRBBASEUQQAhF0EAIRYMjQELAkAgCiACRw0AQc4BIRAMmQILIAotAABBLkcNjgEgCkEBaiEJDMoBCyALIAJHDY4BQdABIRAMlwILAkAgCyACRg0AIABBjoCAgAA2AgggACALNgIEQbcBIRAM/gELQdEBIRAMlgILAkAgBCACRw0AQdIBIRAMlgILIAIgBGsgACgCACIQaiEUIAQgEGtBBGohCwNAIAQtAAAgEEH8z4CAAGotAABHDY4BIBBBBEYN6QEgEEEBaiEQIARBAWoiBCACRw0ACyAAIBQ2AgBB0gEhEAyVAgsgACAMIAIQrICAgAAiAQ2NASAMIQEMuAELAkAgBCACRw0AQdQBIRAMlAILIAIgBGsgACgCACIQaiEUIAQgEGtBAWohDANAIAQtAAAgEEGB0ICAAGotAABHDY8BIBBBAUYNjgEgEEEBaiEQIARBAWoiBCACRw0ACyAAIBQ2AgBB1AEhEAyTAgsCQCAEIAJHDQBB1gEhEAyTAgsgAiAEayAAKAIAIhBqIRQgBCAQa0ECaiELA0AgBC0AACAQQYPQgIAAai0AAEcNjgEgEEECRg2QASAQQQFqIRAgBEEBaiIEIAJHDQALIAAgFDYCAEHWASEQDJICCwJAIAQgAkcNAEHXASEQDJICCwJAAkAgBC0AAEG7f2oOEACPAY8BjwGPAY8BjwGPAY8BjwGPAY8BjwGPAY8BAY8BCyAEQQFqIQRBuwEhEAz5AQsgBEEBaiEEQbwBIRAM+AELAkAgBCACRw0AQdgBIRAMkQILIAQtAABByABHDYwBIARBAWohBAzEAQsCQCAEIAJGDQAgAEGQgICAADYCCCAAIAQ2AgRBvgEhEAz3AQtB2QEhEAyPAgsCQCAEIAJHDQBB2gEhEAyPAgsgBC0AAEHIAEYNwwEgAEEBOgAoDLkBCyAAQQI6AC8gACAEIAIQpoCAgAAiEA2NAUHCASEQDPQBCyAALQAoQX9qDgK3AbkBuAELA0ACQCAELQAAQXZqDgQAjgGOAQCOAQsgBEEBaiIEIAJHDQALQd0BIRAMiwILIABBADoALyAALQAtQQRxRQ2EAgsgAEEAOgAvIABBAToANCABIQEMjAELIBBBFUYN2gEgAEEANgIcIAAgATYCFCAAQaeOgIAANgIQIABBEjYCDEEAIRAMiAILAkAgACAQIAIQtICAgAAiBA0AIBAhAQyBAgsCQCAEQRVHDQAgAEEDNgIcIAAgEDYCFCAAQbCYgIAANgIQIABBFTYCDEEAIRAMiAILIABBADYCHCAAIBA2AhQgAEGnjoCAADYCECAAQRI2AgxBACEQDIcCCyAQQRVGDdYBIABBADYCHCAAIAE2AhQgAEHajYCAADYCECAAQRQ2AgxBACEQDIYCCyAAKAIEIRcgAEEANgIEIBAgEadqIhYhASAAIBcgECAWIBQbIhAQtYCAgAAiFEUNjQEgAEEHNgIcIAAgEDYCFCAAIBQ2AgxBACEQDIUCCyAAIAAvATBBgAFyOwEwIAEhAQtBKiEQDOoBCyAQQRVGDdEBIABBADYCHCAAIAE2AhQgAEGDjICAADYCECAAQRM2AgxBACEQDIICCyAQQRVGDc8BIABBADYCHCAAIAE2AhQgAEGaj4CAADYCECAAQSI2AgxBACEQDIECCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQt4CAgAAiEA0AIAFBAWohAQyNAQsgAEEMNgIcIAAgEDYCDCAAIAFBAWo2AhRBACEQDIACCyAQQRVGDcwBIABBADYCHCAAIAE2AhQgAEGaj4CAADYCECAAQSI2AgxBACEQDP8BCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQt4CAgAAiEA0AIAFBAWohAQyMAQsgAEENNgIcIAAgEDYCDCAAIAFBAWo2AhRBACEQDP4BCyAQQRVGDckBIABBADYCHCAAIAE2AhQgAEHGjICAADYCECAAQSM2AgxBACEQDP0BCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQuYCAgAAiEA0AIAFBAWohAQyLAQsgAEEONgIcIAAgEDYCDCAAIAFBAWo2AhRBACEQDPwBCyAAQQA2AhwgACABNgIUIABBwJWAgAA2AhAgAEECNgIMQQAhEAz7AQsgEEEVRg3FASAAQQA2AhwgACABNgIUIABBxoyAgAA2AhAgAEEjNgIMQQAhEAz6AQsgAEEQNgIcIAAgATYCFCAAIBA2AgxBACEQDPkBCyAAKAIEIQQgAEEANgIEAkAgACAEIAEQuYCAgAAiBA0AIAFBAWohAQzxAQsgAEERNgIcIAAgBDYCDCAAIAFBAWo2AhRBACEQDPgBCyAQQRVGDcEBIABBADYCHCAAIAE2AhQgAEHGjICAADYCECAAQSM2AgxBACEQDPcBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQuYCAgAAiEA0AIAFBAWohAQyIAQsgAEETNgIcIAAgEDYCDCAAIAFBAWo2AhRBACEQDPYBCyAAKAIEIQQgAEEANgIEAkAgACAEIAEQuYCAgAAiBA0AIAFBAWohAQztAQsgAEEUNgIcIAAgBDYCDCAAIAFBAWo2AhRBACEQDPUBCyAQQRVGDb0BIABBADYCHCAAIAE2AhQgAEGaj4CAADYCECAAQSI2AgxBACEQDPQBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQt4CAgAAiEA0AIAFBAWohAQyGAQsgAEEWNgIcIAAgEDYCDCAAIAFBAWo2AhRBACEQDPMBCyAAKAIEIQQgAEEANgIEAkAgACAEIAEQt4CAgAAiBA0AIAFBAWohAQzpAQsgAEEXNgIcIAAgBDYCDCAAIAFBAWo2AhRBACEQDPIBCyAAQQA2AhwgACABNgIUIABBzZOAgAA2AhAgAEEMNgIMQQAhEAzxAQtCASERCyAQQQFqIQECQCAAKQMgIhJC//////////8PVg0AIAAgEkIEhiARhDcDICABIQEMhAELIABBADYCHCAAIAE2AhQgAEGtiYCAADYCECAAQQw2AgxBACEQDO8BCyAAQQA2AhwgACAQNgIUIABBzZOAgAA2AhAgAEEMNgIMQQAhEAzuAQsgACgCBCEXIABBADYCBCAQIBGnaiIWIQEgACAXIBAgFiAUGyIQELWAgIAAIhRFDXMgAEEFNgIcIAAgEDYCFCAAIBQ2AgxBACEQDO0BCyAAQQA2AhwgACAQNgIUIABBqpyAgAA2AhAgAEEPNgIMQQAhEAzsAQsgACAQIAIQtICAgAAiAQ0BIBAhAQtBDiEQDNEBCwJAIAFBFUcNACAAQQI2AhwgACAQNgIUIABBsJiAgAA2AhAgAEEVNgIMQQAhEAzqAQsgAEEANgIcIAAgEDYCFCAAQaeOgIAANgIQIABBEjYCDEEAIRAM6QELIAFBAWohEAJAIAAvATAiAUGAAXFFDQACQCAAIBAgAhC7gICAACIBDQAgECEBDHALIAFBFUcNugEgAEEFNgIcIAAgEDYCFCAAQfmXgIAANgIQIABBFTYCDEEAIRAM6QELAkAgAUGgBHFBoARHDQAgAC0ALUECcQ0AIABBADYCHCAAIBA2AhQgAEGWk4CAADYCECAAQQQ2AgxBACEQDOkBCyAAIBAgAhC9gICAABogECEBAkACQAJAAkACQCAAIBAgAhCzgICAAA4WAgEABAQEBAQEBAQEBAQEBAQEBAQEAwQLIABBAToALgsgACAALwEwQcAAcjsBMCAQIQELQSYhEAzRAQsgAEEjNgIcIAAgEDYCFCAAQaWWgIAANgIQIABBFTYCDEEAIRAM6QELIABBADYCHCAAIBA2AhQgAEHVi4CAADYCECAAQRE2AgxBACEQDOgBCyAALQAtQQFxRQ0BQcMBIRAMzgELAkAgDSACRg0AA0ACQCANLQAAQSBGDQAgDSEBDMQBCyANQQFqIg0gAkcNAAtBJSEQDOcBC0ElIRAM5gELIAAoAgQhBCAAQQA2AgQgACAEIA0Qr4CAgAAiBEUNrQEgAEEmNgIcIAAgBDYCDCAAIA1BAWo2AhRBACEQDOUBCyAQQRVGDasBIABBADYCHCAAIAE2AhQgAEH9jYCAADYCECAAQR02AgxBACEQDOQBCyAAQSc2AhwgACABNgIUIAAgEDYCDEEAIRAM4wELIBAhAUEBIRQCQAJAAkACQAJAAkACQCAALQAsQX5qDgcGBQUDAQIABQsgACAALwEwQQhyOwEwDAMLQQIhFAwBC0EEIRQLIABBAToALCAAIAAvATAgFHI7ATALIBAhAQtBKyEQDMoBCyAAQQA2AhwgACAQNgIUIABBq5KAgAA2AhAgAEELNgIMQQAhEAziAQsgAEEANgIcIAAgATYCFCAAQeGPgIAANgIQIABBCjYCDEEAIRAM4QELIABBADoALCAQIQEMvQELIBAhAUEBIRQCQAJAAkACQAJAIAAtACxBe2oOBAMBAgAFCyAAIAAvATBBCHI7ATAMAwtBAiEUDAELQQQhFAsgAEEBOgAsIAAgAC8BMCAUcjsBMAsgECEBC0EpIRAMxQELIABBADYCHCAAIAE2AhQgAEHwlICAADYCECAAQQM2AgxBACEQDN0BCwJAIA4tAABBDUcNACAAKAIEIQEgAEEANgIEAkAgACABIA4QsYCAgAAiAQ0AIA5BAWohAQx1CyAAQSw2AhwgACABNgIMIAAgDkEBajYCFEEAIRAM3QELIAAtAC1BAXFFDQFBxAEhEAzDAQsCQCAOIAJHDQBBLSEQDNwBCwJAAkADQAJAIA4tAABBdmoOBAIAAAMACyAOQQFqIg4gAkcNAAtBLSEQDN0BCyAAKAIEIQEgAEEANgIEAkAgACABIA4QsYCAgAAiAQ0AIA4hAQx0CyAAQSw2AhwgACAONgIUIAAgATYCDEEAIRAM3AELIAAoAgQhASAAQQA2AgQCQCAAIAEgDhCxgICAACIBDQAgDkEBaiEBDHMLIABBLDYCHCAAIAE2AgwgACAOQQFqNgIUQQAhEAzbAQsgACgCBCEEIABBADYCBCAAIAQgDhCxgICAACIEDaABIA4hAQzOAQsgEEEsRw0BIAFBAWohEEEBIQECQAJAAkACQAJAIAAtACxBe2oOBAMBAgQACyAQIQEMBAtBAiEBDAELQQQhAQsgAEEBOgAsIAAgAC8BMCABcjsBMCAQIQEMAQsgACAALwEwQQhyOwEwIBAhAQtBOSEQDL8BCyAAQQA6ACwgASEBC0E0IRAMvQELIAAgAC8BMEEgcjsBMCABIQEMAgsgACgCBCEEIABBADYCBAJAIAAgBCABELGAgIAAIgQNACABIQEMxwELIABBNzYCHCAAIAE2AhQgACAENgIMQQAhEAzUAQsgAEEIOgAsIAEhAQtBMCEQDLkBCwJAIAAtAChBAUYNACABIQEMBAsgAC0ALUEIcUUNkwEgASEBDAMLIAAtADBBIHENlAFBxQEhEAy3AQsCQCAPIAJGDQACQANAAkAgDy0AAEFQaiIBQf8BcUEKSQ0AIA8hAUE1IRAMugELIAApAyAiEUKZs+bMmbPmzBlWDQEgACARQgp+IhE3AyAgESABrUL/AYMiEkJ/hVYNASAAIBEgEnw3AyAgD0EBaiIPIAJHDQALQTkhEAzRAQsgACgCBCECIABBADYCBCAAIAIgD0EBaiIEELGAgIAAIgINlQEgBCEBDMMBC0E5IRAMzwELAkAgAC8BMCIBQQhxRQ0AIAAtAChBAUcNACAALQAtQQhxRQ2QAQsgACABQff7A3FBgARyOwEwIA8hAQtBNyEQDLQBCyAAIAAvATBBEHI7ATAMqwELIBBBFUYNiwEgAEEANgIcIAAgATYCFCAAQfCOgIAANgIQIABBHDYCDEEAIRAMywELIABBwwA2AhwgACABNgIMIAAgDUEBajYCFEEAIRAMygELAkAgAS0AAEE6Rw0AIAAoAgQhECAAQQA2AgQCQCAAIBAgARCvgICAACIQDQAgAUEBaiEBDGMLIABBwwA2AhwgACAQNgIMIAAgAUEBajYCFEEAIRAMygELIABBADYCHCAAIAE2AhQgAEGxkYCAADYCECAAQQo2AgxBACEQDMkBCyAAQQA2AhwgACABNgIUIABBoJmAgAA2AhAgAEEeNgIMQQAhEAzIAQsgAEEANgIACyAAQYASOwEqIAAgF0EBaiIBIAIQqICAgAAiEA0BIAEhAQtBxwAhEAysAQsgEEEVRw2DASAAQdEANgIcIAAgATYCFCAAQeOXgIAANgIQIABBFTYCDEEAIRAMxAELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDF4LIABB0gA2AhwgACABNgIUIAAgEDYCDEEAIRAMwwELIABBADYCHCAAIBQ2AhQgAEHBqICAADYCECAAQQc2AgwgAEEANgIAQQAhEAzCAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMXQsgAEHTADYCHCAAIAE2AhQgACAQNgIMQQAhEAzBAQtBACEQIABBADYCHCAAIAE2AhQgAEGAkYCAADYCECAAQQk2AgwMwAELIBBBFUYNfSAAQQA2AhwgACABNgIUIABBlI2AgAA2AhAgAEEhNgIMQQAhEAy/AQtBASEWQQAhF0EAIRRBASEQCyAAIBA6ACsgAUEBaiEBAkACQCAALQAtQRBxDQACQAJAAkAgAC0AKg4DAQACBAsgFkUNAwwCCyAUDQEMAgsgF0UNAQsgACgCBCEQIABBADYCBAJAIAAgECABEK2AgIAAIhANACABIQEMXAsgAEHYADYCHCAAIAE2AhQgACAQNgIMQQAhEAy+AQsgACgCBCEEIABBADYCBAJAIAAgBCABEK2AgIAAIgQNACABIQEMrQELIABB2QA2AhwgACABNgIUIAAgBDYCDEEAIRAMvQELIAAoAgQhBCAAQQA2AgQCQCAAIAQgARCtgICAACIEDQAgASEBDKsBCyAAQdoANgIcIAAgATYCFCAAIAQ2AgxBACEQDLwBCyAAKAIEIQQgAEEANgIEAkAgACAEIAEQrYCAgAAiBA0AIAEhAQypAQsgAEHcADYCHCAAIAE2AhQgACAENgIMQQAhEAy7AQsCQCABLQAAQVBqIhBB/wFxQQpPDQAgACAQOgAqIAFBAWohAUHPACEQDKIBCyAAKAIEIQQgAEEANgIEAkAgACAEIAEQrYCAgAAiBA0AIAEhAQynAQsgAEHeADYCHCAAIAE2AhQgACAENgIMQQAhEAy6AQsgAEEANgIAIBdBAWohAQJAIAAtAClBI08NACABIQEMWQsgAEEANgIcIAAgATYCFCAAQdOJgIAANgIQIABBCDYCDEEAIRAMuQELIABBADYCAAtBACEQIABBADYCHCAAIAE2AhQgAEGQs4CAADYCECAAQQg2AgwMtwELIABBADYCACAXQQFqIQECQCAALQApQSFHDQAgASEBDFYLIABBADYCHCAAIAE2AhQgAEGbioCAADYCECAAQQg2AgxBACEQDLYBCyAAQQA2AgAgF0EBaiEBAkAgAC0AKSIQQV1qQQtPDQAgASEBDFULAkAgEEEGSw0AQQEgEHRBygBxRQ0AIAEhAQxVC0EAIRAgAEEANgIcIAAgATYCFCAAQfeJgIAANgIQIABBCDYCDAy1AQsgEEEVRg1xIABBADYCHCAAIAE2AhQgAEG5jYCAADYCECAAQRo2AgxBACEQDLQBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxUCyAAQeUANgIcIAAgATYCFCAAIBA2AgxBACEQDLMBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxNCyAAQdIANgIcIAAgATYCFCAAIBA2AgxBACEQDLIBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxNCyAAQdMANgIcIAAgATYCFCAAIBA2AgxBACEQDLEBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxRCyAAQeUANgIcIAAgATYCFCAAIBA2AgxBACEQDLABCyAAQQA2AhwgACABNgIUIABBxoqAgAA2AhAgAEEHNgIMQQAhEAyvAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMSQsgAEHSADYCHCAAIAE2AhQgACAQNgIMQQAhEAyuAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMSQsgAEHTADYCHCAAIAE2AhQgACAQNgIMQQAhEAytAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMTQsgAEHlADYCHCAAIAE2AhQgACAQNgIMQQAhEAysAQsgAEEANgIcIAAgATYCFCAAQdyIgIAANgIQIABBBzYCDEEAIRAMqwELIBBBP0cNASABQQFqIQELQQUhEAyQAQtBACEQIABBADYCHCAAIAE2AhQgAEH9koCAADYCECAAQQc2AgwMqAELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEILIABB0gA2AhwgACABNgIUIAAgEDYCDEEAIRAMpwELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEILIABB0wA2AhwgACABNgIUIAAgEDYCDEEAIRAMpgELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEYLIABB5QA2AhwgACABNgIUIAAgEDYCDEEAIRAMpQELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDD8LIABB0gA2AhwgACAUNgIUIAAgATYCDEEAIRAMpAELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDD8LIABB0wA2AhwgACAUNgIUIAAgATYCDEEAIRAMowELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDEMLIABB5QA2AhwgACAU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YWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWVzc2FnZV9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX21ldGhvZF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lYCBjYWxsYmFjayBlcnJvcgBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNlcnZlcgBJbnZhbGlkIGhlYWRlciB2YWx1ZSBjaGFyAEludmFsaWQgaGVhZGVyIGZpZWxkIGNoYXIAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl92ZXJzaW9uAEludmFsaWQgbWlub3IgdmVyc2lvbgBJbnZhbGlkIG1ham9yIHZlcnNpb24ARXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgdmVyc2lvbgBFeHBlY3RlZCBDUkxGIGFmdGVyIHZlcnNpb24ASW52YWxpZCBIVFRQIHZlcnNpb24ASW52YWxpZCBoZWFkZXIgdG9rZW4AU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl91cmwASW52YWxpZCBjaGFyYWN0ZXJzIGluIHVybABVbmV4cGVjdGVkIHN0YXJ0IGNoYXIgaW4gdXJsAERvdWJsZSBAIGluIHVybABFbXB0eSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXJhY3RlciBpbiBDb250ZW50LUxlbmd0aABEdXBsaWNhdGUgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyIGluIHVybCBwYXRoAENvbnRlbnQtTGVuZ3RoIGNhbid0IGJlIHByZXNlbnQgd2l0aCBUcmFuc2Zlci1FbmNvZGluZwBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBzaXplAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25faGVhZGVyX3ZhbHVlAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgdmFsdWUATWlzc2luZyBleHBlY3RlZCBMRiBhZnRlciBoZWFkZXIgdmFsdWUASW52YWxpZCBgVHJhbnNmZXItRW5jb2RpbmdgIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHF1b3RlIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fbmFtZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIG5hbWUAUGF1c2Ugb24gQ09OTkVDVC9VcGdyYWRlAFBhdXNlIG9uIFBSSS9VcGdyYWRlAEV4cGVjdGVkIEhUVFAvMiBDb25uZWN0aW9uIFByZWZhY2UAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9tZXRob2QARXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgbWV0aG9kAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25faGVhZGVyX2ZpZWxkAFBhdXNlZABJbnZhbGlkIHdvcmQgZW5jb3VudGVyZWQASW52YWxpZCBtZXRob2QgZW5jb3VudGVyZWQAVW5leHBlY3RlZCBjaGFyIGluIHVybCBzY2hlbWEAUmVxdWVzdCBoYXMgaW52YWxpZCBgVHJhbnNmZXItRW5jb2RpbmdgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX0NIVU5LX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX05BTUVfQ09NUExFVEUASFBFX0NCX01FU1NBR0VfQ09NUExFVEUASFBFX0NCX01FVEhPRF9DT01QTEVURQBIUEVfQ0JfSEVBREVSX0ZJRUxEX0NPTVBMRVRFAERFTEVURQBIUEVfSU5WQUxJRF9FT0ZfU1RBVEUASU5WQUxJRF9TU0xfQ0VSVElGSUNBVEUAUEFVU0UATk9fUkVTUE9OU0UAVU5TVVBQT1JURURfTUVESUFfVFlQRQBHT05FAE5PVF9BQ0NFUFRBQkxFAFNFUlZJQ0VfVU5BVkFJTEFCTEUAUkFOR0VfTk9UX1NBVElTRklBQkxFAE9SSUdJTl9JU19VTlJFQUNIQUJMRQBSRVNQT05TRV9JU19TVEFMRQBQVVJHRQBNRVJHRQBSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFAFJFUVVFU1RfSEVBREVSX1RPT19MQVJHRQBQQVlMT0FEX1RPT19MQVJHRQBJTlNVRkZJQ0lFTlRfU1RPUkFHRQBIUEVfUEFVU0VEX1VQR1JBREUASFBFX1BBVVNFRF9IMl9VUEdSQURFAFNPVVJDRQBBTk5PVU5DRQBUUkFDRQBIUEVfVU5FWFBFQ1RFRF9TUEFDRQBERVNDUklCRQBVTlNVQlNDUklCRQBSRUNPUkQASFBFX0lOVkFMSURfTUVUSE9EAE5PVF9GT1VORABQUk9QRklORABVTkJJTkQAUkVCSU5EAFVOQVVUSE9SSVpFRABNRVRIT0RfTk9UX0FMTE9XRUQASFRUUF9WRVJTSU9OX05PVF9TVVBQT1JURUQAQUxSRUFEWV9SRVBPUlRFRABBQ0NFUFRFRABOT1RfSU1QTEVNRU5URUQATE9PUF9ERVRFQ1RFRABIUEVfQ1JfRVhQRUNURUQASFBFX0xGX0VYUEVDVEVEAENSRUFURUQASU1fVVNFRABIUEVfUEFVU0VEAFRJTUVPVVRfT0NDVVJFRABQQVlNRU5UX1JFUVVJUkVEAFBSRUNPTkRJVElPTl9SRVFVSVJFRABQUk9YWV9BVVRIRU5USUNBVElPTl9SRVFVSVJFRABORVRXT1JLX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAExFTkdUSF9SRVFVSVJFRABTU0xfQ0VSVElGSUNBVEVfUkVRVUlSRUQAVVBHUkFERV9SRVFVSVJFRABQQUdFX0VYUElSRUQAUFJFQ09ORElUSU9OX0ZBSUxFRABFWFBFQ1RBVElPTl9GQUlMRUQAUkVWQUxJREFUSU9OX0ZBSUxFRABTU0xfSEFORFNIQUtFX0ZBSUxFRABMT0NLRUQAVFJBTlNGT1JNQVRJT05fQVBQTElFRABOT1RfTU9ESUZJRUQATk9UX0VYVEVOREVEAEJBTkRXSURUSF9MSU1JVF9FWENFRURFRABTSVRFX0lTX09WRVJMT0FERUQASEVBRABFeHBlY3RlZCBIVFRQLwAAXhMAACYTAAAwEAAA8BcAAJ0TAAAVEgAAORcAAPASAAAKEAAAdRIAAK0SAACCEwAATxQAAH8QAACgFQAAIxQAAIkSAACLFAAATRUAANQRAADPFAAAEBgAAMkWAADcFgAAwREAAOAXAAC7FAAAdBQAAHwVAADlFAAACBcAAB8QAABlFQAAoxQAACgVAAACFQAAmRUAACwQAACLGQAATw8AANQOAABqEAAAzhAAAAIXAACJDgAAbhMAABwTAABmFAAAVhcAAMETAADNEwAAbBMAAGgXAABmFwAAXxcAACITAADODwAAaQ4AANgOAABjFgAAyxMAAKoOAAAoFwAAJhcAAMUTAABdFgAA6BEAAGcTAABlEwAA8hYAAHMTAAAdFwAA+RYAAPMRAADPDgAAzhUAAAwSAACzEQAApREAAGEQAAAyFwAAuxMAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAIDAgICAgIAAAICAAICAAICAgICAgICAgIABAAAAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAACAAICAgICAAACAgACAgACAgICAgICAgICAAMABAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbG9zZWVlcC1hbGl2ZQAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBY2h1bmtlZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEAAQEBAQEAAAEBAAEBAAEBAQEBAQEBAQEAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AAAAAAAAAAAAAAAAAAAByYW5zZmVyLWVuY29kaW5ncGdyYWRlDQoNCg0KU00NCg0KVFRQL0NFL1RTUC8AAAAAAAAAAAAAAAABAgABAwAAAAAAAAAAAAAAAAAAAAAAAAQBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAQIAAQMAAAAAAAAAAAAAAAAAAAAAAAAEAQEFAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAQAAAgAAAAAAAAAAAAAAAAAAAAAAAAMEAAAEBAQEBAQEBAQEBAUEBAQEBAQEBAQEBAQABAAGBwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAIAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABOT1VOQ0VFQ0tPVVRORUNURVRFQ1JJQkVMVVNIRVRFQURTRUFSQ0hSR0VDVElWSVRZTEVOREFSVkVPVElGWVBUSU9OU0NIU0VBWVNUQVRDSEdFT1JESVJFQ1RPUlRSQ0hQQVJBTUVURVJVUkNFQlNDUklCRUFSRE9XTkFDRUlORE5LQ0tVQlNDUklCRUhUVFAvQURUUC8="});var kwn=z((VKc,xwn)=>{xwn.exports="AGFzbQEAAAABMAhgAX8Bf2ADf39/AX9gBH9/f38Bf2AAAGADf39/AGABfwBgAn9/AGAGf39/f39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQACA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAA0ZFAwMEAAAFAAAAAAAABQEFAAUFBQAABgAAAAAGBgYGAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAABAQcAAAUFAwABBAUBcAESEgUDAQACBggBfwFBgNQECwfRBSIGbWVtb3J5AgALX2luaXRpYWxpemUACRlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALbGxodHRwX2luaXQAChhsbGh0dHBfc2hvdWxkX2tlZXBfYWxpdmUAQQxsbGh0dHBfYWxsb2MADAZtYWxsb2MARgtsbGh0dHBfZnJlZQANBGZyZWUASA9sbGh0dHBfZ2V0X3R5cGUADhVsbGh0dHBfZ2V0X2h0dHBfbWFqb3IADxVsbGh0dHBfZ2V0X2h0dHBfbWlub3IAEBFsbGh0dHBfZ2V0X21ldGhvZAARFmxsaHR0cF9nZXRfc3RhdHVzX2NvZGUAEhJsbGh0dHBfZ2V0X3VwZ3JhZGUAEwxsbGh0dHBfcmVzZXQAFA5sbGh0dHBfZXhlY3V0ZQAVFGxsaHR0cF9zZXR0aW5nc19pbml0ABYNbGxodHRwX2ZpbmlzaAAXDGxsaHR0cF9wYXVzZQAYDWxsaHR0cF9yZXN1bWUAGRtsbGh0dHBfcmVzdW1lX2FmdGVyX3VwZ3JhZGUAGhBsbGh0dHBfZ2V0X2Vycm5vABsXbGxodHRwX2dldF9lcnJvcl9yZWFzb24AHBdsbGh0dHBfc2V0X2Vycm9yX3JlYXNvbgAdFGxsaHR0cF9nZXRfZXJyb3JfcG9zAB4RbGxodHRwX2Vycm5vX25hbWUAHxJsbGh0dHBfbWV0aG9kX25hbWUAIBJs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IAH9CwMAIABBMGogAf0LAwAgAEEgaiAB/QsDACAAQd0BNgIcQQALewEBfwJAIAAoAgwiAw0AAkAgACgCBEUNACAAIAE2AgQLAkAgACABIAIQxICAgAAiAw0AIAAoAgwPCyAAIAM2AhxBACEDIAAoAgQiAUUNACAAIAEgAiAAKAIIEYGAgIAAACIBRQ0AIAAgAjYCFCAAIAE2AgwgASEDCyADC+TzAQMOfwN+BH8jgICAgABBEGsiAySAgICAACABIQQgASEFIAEhBiABIQcgASEIIAEhCSABIQogASELIAEhDCABIQ0gASEOIAEhDwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAAKAIcIhBBf2oO3QHaAQHZAQIDBAUGBwgJCgsMDQ7YAQ8Q1wEREtYBExQVFhcYGRob4AHfARwdHtUBHyAhIiMkJdQBJicoKSorLNMB0gEtLtEB0AEvMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUbbAUdISUrPAc4BS80BTMwBTU5PUFFSU1RVVldYWVpbXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX5/gAGBAYIBgwGEAYUBhgGHAYgBiQGKAYsBjAGNAY4BjwGQAZEB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QAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIBAOxwEAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB4fICEjJSg/QEFERUZHSElKS0xNT1BRUlPeA1dZW1xdYGJlZmdoaWprbG1vcHFyc3R1dnd4eXp7fH1+gAGCAYUBhgGHAYkBiwGMAY0BjgGPAZABkQGUAZUBlgGXAZgBmQGaAZsBnAGdAZ4BnwGgAaEBogGjAaQBpQGmAacBqAGpAaoBqwGsAa0BrgGvAbABsQGyAbMBtAG1AbYBtwG4AbkBugG7AbwBvQG+Ab8BwAHBAcIBwwHEAcUBxgHHAcgByQHKAcsBzAHNAc4BzwHQAdEB0gHTAdQB1QHWAdcB2AHZAdoB2wHcAd0B3gHgAeEB4gHjAeQB5QHmAecB6AHpAeoB6wHsAe0B7gHvAfAB8QHyAfMBmQKkArAC/gL+AgsgASIEIAJHDfMBQd0BIRAM/wMLIAEiECACRw3dAUHDASEQDP4DCyABIgEgAkcNkAFB9wAhEAz9AwsgASIBIAJHDYYBQe8AIRAM/AMLIAEiASACRw1/QeoAIRAM+wMLIAEiASACRw17QegAIRAM+gMLIAEiASACRw14QeYAIRAM+QMLIAEiASACRw0aQRghEAz4AwsgASIBIAJHDRRBEiEQDPcDCyABIgEgAkcNWUHFACEQDPYDCyABIgEgAkcNSkE/IRAM9QMLIAEiASACRw1IQTwhEAz0AwsgASIBIAJHDUFBMSEQDPMDCyAALQAuQQFGDesDDIcCCyAAIAEiASACEMCAgIAAQQFHDeYBIABCADcDIAznAQsgACABIgEgAhC0gICAACIQDecBIAEhAQz1AgsCQCABIgEgAkcNAEEGIRAM8AMLIAAgAUEBaiIBIAIQu4CAgAAiEA3oASABIQEMMQsgAEIANwMgQRIhEAzVAwsgASIQIAJHDStBHSEQDO0DCwJAIAEiASACRg0AIAFBAWohAUEQIRAM1AMLQQchEAzsAwsgAEIAIAApAyAiESACIAEiEGutIhJ9IhMgEyARVhs3AyAgESASViIURQ3lAUEIIRAM6wMLAkAgASIBIAJGDQAgAEGJgICAADYCCCAAIAE2AgQgASEBQRQhEAzSAwtBCSEQDOoDCyABIQEgACkDIFAN5AEgASEBDPICCwJAIAEiASACRw0AQQshEAzpAwsgACABQQFqIgEgAhC2gICAACIQDeUBIAEhAQzyAgsgACABIgEgAhC4gICAACIQDeUBIAEhAQzyAgsgACABIgEgAhC4gICAACIQDeYBIAEhAQwNCyAAIAEiASACELqAgIAAIhAN5wEgASEBDPACCwJAIAEiASACRw0AQQ8hEAzlAwsgAS0AACIQQTtGDQggEEENRw3oASABQQFqIQEM7wILIAAgASIBIAIQuoCAgAAiEA3oASABIQEM8gILA0ACQCABLQAAQfC1gIAAai0AACIQQQFGDQAgEEECRw3rASAAKAIEIRAgAEEANgIEIAAgECABQQFqIgEQuYCAgAAiEA3qASABIQEM9AILIAFBAWoiASACRw0AC0ESIRAM4gMLIAAgASIBIAIQuoCAgAAiEA3pASABIQEMCgsgASIBIAJHDQZBGyEQDOADCwJAIAEiASACRw0AQRYhEAzgAwsgAEGKgICAADYCCCAAIAE2AgQgACABIAIQuICAgAAiEA3qASABIQFBICEQDMYDCwJAIAEiASACRg0AA0ACQCABLQAAQfC3gIAAai0AACIQQQJGDQACQCAQQX9qDgTlAewBAOsB7AELIAFBAWohAUEIIRAMyAMLIAFBAWoiASACRw0AC0EVIRAM3wMLQRUhEAzeAwsDQAJAIAEtAABB8LmAgABqLQAAIhBBAkYNACAQQX9qDgTeAewB4AHrAewBCyABQQFqIgEgAkcNAAtBGCEQDN0DCwJAIAEiASACRg0AIABBi4CAgAA2AgggACABNgIEIAEhAUEHIRAMxAMLQRkhEAzcAwsgAUEBaiEBDAILAkAgASIUIAJHDQBBGiEQDNsDCyAUIQECQCAULQAAQXNqDhTdAu4C7gLuAu4C7gLuAu4C7gLuAu4C7gLuAu4C7gLuAu4C7gLuAgDuAgtBACEQIABBADYCHCAAQa+LgIAANgIQIABBAjYCDCAAIBRBAWo2AhQM2gMLAkAgAS0AACIQQTtGDQAgEEENRw3oASABQQFqIQEM5QILIAFBAWohAQtBIiEQDL8DCwJAIAEiECACRw0AQRwhEAzYAwtCACERIBAhASAQLQAAQVBqDjfnAeYBAQIDBAUGBwgAAAAAAAAACQoLDA0OAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPEBESExQAC0EeIRAMvQMLQgIhEQzlAQtCAyERDOQBC0IEIREM4wELQgUhEQziAQtCBiERDOEBC0IHIREM4AELQgghEQzfAQtCCSERDN4BC0IKIREM3QELQgshEQzcAQtCDCERDNsBC0INIREM2gELQg4hEQzZAQtCDyERDNgBC0IKIREM1wELQgshEQzWAQtCDCERDNUBC0INIREM1AELQg4hEQzTAQtCDyERDNIBC0IAIRECQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIBAtAABBUGoON+UB5AEAAQIDBAUGB+YB5gHmAeYB5gHmAeYBCAkKCwwN5gHmAeYB5gHmAeYB5gHmAeYB5gHmAeYB5gHmAeYB5gHmAeYB5gHmAeYB5gHmAeYB5gHmAQ4PEBESE+YBC0ICIREM5AELQgMhEQzjAQtCBCERDOIBC0IFIREM4QELQgYhEQzgAQtCByERDN8BC0IIIREM3gELQgkhEQzdAQtCCiERDNwBC0ILIREM2wELQgwhEQzaAQtCDSERDNkBC0IOIREM2AELQg8hEQzXAQtCCiERDNYBC0ILIREM1QELQgwhEQzUAQtCDSERDNMBC0IOIREM0gELQg8hEQzRAQsgAEIAIAApAyAiESACIAEiEGutIhJ9IhMgEyARVhs3AyAgESASViIURQ3SAUEfIRAMwAMLAkAgASIBIAJGDQAgAEGJgICAADYCCCAAIAE2AgQgASEBQSQhEAynAwtBICEQDL8DCyAAIAEiECACEL6AgIAAQX9qDgW2AQDFAgHRAdIBC0ERIRAMpAMLIABBAToALyAQIQEMuwMLIAEiASACRw3SAUEkIRAMuwMLIAEiDSACRw0eQcYAIRAMugMLIAAgASIBIAIQsoCAgAAiEA3UASABIQEMtQELIAEiECACRw0mQdAAIRAMuAMLAkAgASIBIAJHDQBBKCEQDLgDCyAAQQA2AgQgAEGMgICAADYCCCAAIAEgARCxgICAACIQDdMBIAEhAQzYAQsCQCABIhAgAkcNAEEpIRAMtwMLIBAtAAAiAUEgRg0UIAFBCUcN0wEgEEEBaiEBDBULAkAgASIBIAJGDQAgAUEBaiEBDBcLQSohEAy1AwsCQCABIhAgAkcNAEErIRAMtQMLAkAgEC0AACIBQQlGDQAgAUEgRw3VAQsgAC0ALEEIRg3TASAQIQEMkQMLAkAgASIBIAJHDQBBLCEQDLQDCyABLQAAQQpHDdUBIAFBAWohAQzJAgsgASIOIAJHDdUBQS8hEAyyAwsDQAJAIAEtAAAiEEEgRg0AAkAgEEF2ag4EANwB3AEA2gELIAEhAQzgAQsgAUEBaiIBIAJHDQALQTEhEAyxAwtBMiEQIAEiFCACRg2wAyACIBRrIAAoAgAiAWohFSAUIAFrQQNqIRYCQANAIBQtAAAiF0EgciAXIBdBv39qQf8BcUEaSRtB/wFxIAFB8LuAgABqLQAARw0BAkAgAUEDRw0AQQYhAQyWAwsgAUEBaiEBIBRBAWoiFCACRw0ACyAAIBU2AgAMsQMLIABBADYCACAUIQEM2QELQTMhECABIhQgAkYNrwMgAiAUayAAKAIAIgFqIRUgFCABa0EIaiEWAkADQCAULQAAIhdBIHIgFyAXQb9/akH/AXFBGkkbQf8BcSABQfS7gIAAai0AAEcNAQJAIAFBCEcNAEEFIQEMlQMLIAFBAWohASAUQQFqIhQgAkcNAAsgACAVNgIADLADCyAAQQA2AgAgFCEBDNgBC0E0IRAgASIUIAJGDa4DIAIgFGsgACgCACIBaiEVIBQgAWtBBWohFgJAA0AgFC0AACIXQSByIBcgF0G/f2pB/wFxQRpJG0H/AXEgAUHQwoCAAGotAABHDQECQCABQQVHDQBBByEBDJQDCyABQQFqIQEgFEEBaiIUIAJHDQALIAAgFTYCAAyvAwsgAEEANgIAIBQhAQzXAQsCQCABIgEgAkYNAANAAkAgAS0AAEGAvoCAAGotAAAiEEEBRg0AIBBBAkYNCiABIQEM3QELIAFBAWoiASACRw0AC0EwIRAMrgMLQTAhEAytAwsCQCABIgEgAkYNAANAAkAgAS0AACIQQSBGDQAgEEF2ag4E2QHaAdoB2QHaAQsgAUEBaiIBIAJHDQALQTghEAytAwtBOCEQDKwDCwNAAkAgAS0AACIQQSBGDQAgEEEJRw0DCyABQQFqIgEgAkcNAAtBPCEQDKsDCwNAAkAgAS0AACIQQSBGDQACQAJAIBBBdmoOBNoBAQHaAQALIBBBLEYN2wELIAEhAQwECyABQQFqIgEgAkcNAAtBPyEQDKoDCyABIQEM2wELQcAAIRAgASIUIAJGDagDIAIgFGsgACgCACIBaiEWIBQgAWtBBmohFwJAA0AgFC0AAEEgciABQYDAgIAAai0AAEcNASABQQZGDY4DIAFBAWohASAUQQFqIhQgAkcNAAsgACAWNgIADKkDCyAAQQA2AgAgFCEBC0E2IRAMjgMLAkAgASIPIAJHDQBBwQAhEAynAwsgAEGMgICAADYCCCAAIA82AgQgDyEBIAAtACxBf2oOBM0B1QHXAdkBhwMLIAFBAWohAQzMAQsCQCABIgEgAkYNAANAAkAgAS0AACIQQSByIBAgEEG/f2pB/wFxQRpJG0H/AXEiEEEJRg0AIBBBIEYNAAJAAkACQAJAIBBBnX9qDhMAAwMDAwMDAwEDAwMDAwMDAwMCAwsgAUEBaiEBQTEhEAyRAwsgAUEBaiEBQTIhEAyQAwsgAUEBaiEBQTMhEAyPAwsgASEBDNABCyABQQFqIgEgAkcNAAtBNSEQDKUDC0E1IRAMpAMLAkAgASIBIAJGDQADQAJAIAEtAABBgLyAgABqLQAAQQFGDQAgASEBDNMBCyABQQFqIgEgAkcNAAtBPSEQDKQDC0E9IRAMowMLIAAgASIBIAIQsICAgAAiEA3WASABIQEMAQsgEEEBaiEBC0E8IRAMhwMLAkAgASIBIAJHDQBBwgAhEAygAwsCQANAAkAgAS0AAEF3ag4YAAL+Av4ChAP+Av4C/gL+Av4C/gL+Av4C/gL+Av4C/gL+Av4C/gL+Av4C/gIA/gILIAFBAWoiASACRw0AC0HCACEQDKADCyABQQFqIQEgAC0ALUEBcUUNvQEgASEBC0EsIRAMhQMLIAEiASACRw3TAUHEACEQDJ0DCwNAAkAgAS0AAEGQwICAAGotAABBAUYNACABIQEMtwILIAFBAWoiASACRw0AC0HFACEQDJwDCyANLQAAIhBBIEYNswEgEEE6Rw2BAyAAKAIEIQEgAEEANgIEIAAgASANEK+AgIAAIgEN0AEgDUEBaiEBDLMCC0HHACEQIAEiDSACRg2aAyACIA1rIAAoAgAiAWohFiANIAFrQQVqIRcDQCANLQAAIhRBIHIgFCAUQb9/akH/AXFBGkkbQf8BcSABQZDCgIAAai0AAEcNgAMgAUEFRg30AiABQQFqIQEgDUEBaiINIAJHDQALIAAgFjYCAAyaAwtByAAhECABIg0gAkYNmQMgAiANayAAKAIAIgFqIRYgDSABa0EJaiEXA0AgDS0AACIUQSByIBQgFEG/f2pB/wFxQRpJG0H/AXEgAUGWwoCAAGotAABHDf8CAkAgAUEJRw0AQQIhAQz1AgsgAUEBaiEBIA1BAWoiDSACRw0ACyAAIBY2AgAMmQMLAkAgASINIAJHDQBByQAhEAyZAwsCQAJAIA0tAAAiAUEgciABIAFBv39qQf8BcUEaSRtB/wFxQZJ/ag4HAIADgAOAA4ADgAMBgAMLIA1BAWohAUE+IRAMgAMLIA1BAWohAUE/IRAM/wILQcoAIRAgASINIAJGDZcDIAIgDWsgACgCACIBaiEWIA0gAWtBAWohFwNAIA0tAAAiFEEgciAUIBRBv39qQf8BcUEaSRtB/wFxIAFBoMKAgABqLQAARw39AiABQQFGDfACIAFBAWohASANQQFqIg0gAkcNAAsgACAWNgIADJcDC0HLACEQIAEiDSACRg2WAyACIA1rIAAoAgAiAWohFiANIAFrQQ5qIRcDQCANLQAAIhRBIHIgFCAUQb9/akH/AXFBGkkbQf8BcSABQaLCgIAAai0AAEcN/AIgAUEORg3wAiABQQFqIQEgDUEBaiINIAJHDQALIAAgFjYCAAyWAwtBzAAhECABIg0gAkYNlQMgAiANayAAKAIAIgFqIRYgDSABa0EPaiEXA0AgDS0AACIUQSByIBQgFEG/f2pB/wFxQRpJG0H/AXEgAUHAwoCAAGotAABHDfsCAkAgAUEPRw0AQQMhAQzxAgsgAUEBaiEBIA1BAWoiDSACRw0ACyAAIBY2AgAMlQMLQc0AIRAgASINIAJGDZQDIAIgDWsgACgCACIBaiEWIA0gAWtBBWohFwNAIA0tAAAiFEEgciAUIBRBv39qQf8BcUEaSRtB/wFxIAFB0MKAgABqLQAARw36AgJAIAFBBUcNAEEEIQEM8AILIAFBAWohASANQQFqIg0gAkcNAAsgACAWNgIADJQDCwJAIAEiDSACRw0AQc4AIRAMlAMLAkACQAJAAkAgDS0AACIBQSByIAEgAUG/f2pB/wFxQRpJG0H/AXFBnX9qDhMA/QL9Av0C/QL9Av0C/QL9Av0C/QL9Av0CAf0C/QL9AgID/QILIA1BAWohAUHBACEQDP0CCyANQQFqIQFBwgAhEAz8AgsgDUEBaiEBQcMAIRAM+wILIA1BAWohAUHEACEQDPoCCwJAIAEiASACRg0AIABBjYCAgAA2AgggACABNgIEIAEhAUHFACEQDPoCC0HPACEQDJIDCyAQIQECQAJAIBAtAABBdmoOBAGoAqgCAKgCCyAQQQFqIQELQSchEAz4AgsCQCABIgEgAkcNAEHRACEQDJEDCwJAIAEtAABBIEYNACABIQEMjQELIAFBAWohASAALQAtQQFxRQ3HASABIQEMjAELIAEiFyACRw3IAUHSACEQDI8DC0HTACEQIAEiFCACRg2OAyACIBRrIAAoAgAiAWohFiAUIAFrQQFqIRcDQCAULQAAIAFB1sKAgABqLQAARw3MASABQQFGDccBIAFBAWohASAUQQFqIhQgAkcNAAsgACAWNgIADI4DCwJAIAEiASACRw0AQdUAIRAMjgMLIAEtAABBCkcNzAEgAUEBaiEBDMcBCwJAIAEiASACRw0AQdYAIRAMjQMLAkACQCABLQAAQXZqDgQAzQHNAQHNAQsgAUEBaiEBDMcBCyABQQFqIQFBygAhEAzzAgsgACABIgEgAhCugICAACIQDcsBIAEhAUHNACEQDPICCyAALQApQSJGDYUDDKYCCwJAIAEiASACRw0AQdsAIRAMigMLQQAhFEEBIRdBASEWQQAhEAJAAkACQAJAAkACQAJAAkACQCABLQAAQVBqDgrUAdMBAAECAwQFBgjVAQtBAiEQDAYLQQMhEAwFC0EEIRAMBAtBBSEQDAMLQQYhEAwCC0EHIRAMAQtBCCEQC0EAIRdBACEWQQAhFAzMAQtBCSEQQQEhFEEAIRdBACEWDMsBCwJAIAEiASACRw0AQd0AIRAMiQMLIAEtAABBLkcNzAEgAUEBaiEBDKYCCyABIgEgAkcNzAFB3wAhEAyHAwsCQCABIgEgAkYNACAAQY6AgIAANgIIIAAgATYCBCABIQFB0AAhEAzuAgtB4AAhEAyGAwtB4QAhECABIgEgAkYNhQMgAiABayAAKAIAIhRqIRYgASAUa0EDaiEXA0AgAS0AACAUQeLCgIAAai0AAEcNzQEgFEEDRg3MASAUQQFqIRQgAUEBaiIBIAJHDQALIAAgFjYCAAyFAwtB4gAhECABIgEgAkYNhAMgAiABayAAKAIAIhRqIRYgASAUa0ECaiEXA0AgAS0AACAUQebCgIAAai0AAEcNzAEgFEECRg3OASAUQQFqIRQgAUEBaiIBIAJHDQALIAAgFjYCAAyEAwtB4wAhECABIgEgAkYNgwMgAiABayAAKAIAIhRqIRYgASAUa0EDaiEXA0AgAS0AACAUQenCgIAAai0AAEcNywEgFEEDRg3OASAUQQFqIRQgAUEBaiIBIAJHDQALIAAgFjYCAAyDAwsCQCABIgEgAkcNAEHlACEQDIMDCyAAIAFBAWoiASACEKiAgIAAIhANzQEgASEBQdYAIRAM6QILAkAgASIBIAJGDQADQAJAIAEtAAAiEEEgRg0AAkACQAJAIBBBuH9qDgsAAc8BzwHPAc8BzwHPAc8BzwECzwELIAFBAWohAUHSACEQDO0CCyABQQFqIQFB0wAhEAzsAgsgAUEBaiEBQdQAIRAM6wILIAFBAWoiASACRw0AC0HkACEQDIIDC0HkACEQDIEDCwNAAkAgAS0AAEHwwoCAAGotAAAiEEEBRg0AIBBBfmoOA88B0AHRAdIBCyABQQFqIgEgAkcNAAtB5gAhEAyAAwsCQCABIgEgAkYNACABQQFqIQEMAwtB5wAhEAz/AgsDQAJAIAEtAABB8MSAgABqLQAAIhBBAUYNAAJAIBBBfmoOBNIB0wHUAQDVAQsgASEBQdcAIRAM5wILIAFBAWoiASACRw0AC0HoACEQDP4CCwJAIAEiASACRw0AQekAIRAM/gILAkAgAS0AACIQQXZqDhq6AdUB1QG8AdUB1QHVAdUB1QHVAdUB1QHVAdUB1QHVAdUB1QHVAdUB1QHVAcoB1QHVAQDTAQsgAUEBaiEBC0EGIRAM4wILA0ACQCABLQAAQfDGgIAAai0AAEEBRg0AIAEhAQyeAgsgAUEBaiIBIAJHDQALQeoAIRAM+wILAkAgASIBIAJGDQAgAUEBaiEBDAMLQesAIRAM+gILAkAgASIBIAJHDQBB7AAhEAz6AgsgAUEBaiEBDAELAkAgASIBIAJHDQBB7QAhEAz5AgsgAUEBaiEBC0EEIRAM3gILAkAgASIUIAJHDQBB7gAhEAz3AgsgFCEBAkACQAJAIBQtAABB8MiAgABqLQAAQX9qDgfUAdUB1gEAnAIBAtcBCyAUQQFqIQEMCgsgFEEBaiEBDM0BC0EAIRAgAEEANgIcIABBm5KAgAA2AhAgAEEHNgIMIAAgFEEBajYCFAz2AgsCQANAAkAgAS0AAEHwyICAAGotAAAiEEEERg0AAkACQCAQQX9qDgfSAdMB1AHZAQAEAdkBCyABIQFB2gAhEAzgAgsgAUEBaiEBQdwAIRAM3wILIAFBAWoiASACRw0AC0HvACEQDPYCCyABQQFqIQEMywELAkAgASIUIAJHDQBB8AAhEAz1AgsgFC0AAEEvRw3UASAUQQFqIQEMBgsCQCABIhQgAkcNAEHxACEQDPQCCwJAIBQtAAAiAUEvRw0AIBRBAWohAUHdACEQDNsCCyABQXZqIgRBFksN0wFBASAEdEGJgIACcUUN0wEMygILAkAgASIBIAJGDQAgAUEBaiEBQd4AIRAM2gILQfIAIRAM8gILAkAgASIUIAJHDQBB9AAhEAzyAgsgFCEBAkAgFC0AAEHwzICAAGotAABBf2oOA8kClAIA1AELQeEAIRAM2AILAkAgASIUIAJGDQADQAJAIBQtAABB8MqAgABqLQAAIgFBA0YNAAJAIAFBf2oOAssCANUBCyAUIQFB3wAhEAzaAgsgFEEBaiIUIAJHDQALQfMAIRAM8QILQfMAIRAM8AILAkAgASIBIAJGDQAgAEGPgICAADYCCCAAIAE2AgQgASEBQeAAIRAM1wILQfUAIRAM7wILAkAgASIBIAJHDQBB9gAhEAzvAgsgAEGPgICAADYCCCAAIAE2AgQgASEBC0EDIRAM1AILA0AgAS0AAEEgRw3DAiABQQFqIgEgAkcNAAtB9wAhEAzsAgsCQCABIgEgAkcNAEH4ACEQDOwCCyABLQAAQSBHDc4BIAFBAWohAQzvAQsgACABIgEgAhCsgICAACIQDc4BIAEhAQyOAgsCQCABIgQgAkcNAEH6ACEQDOoCCyAELQAAQcwARw3RASAEQQFqIQFBEyEQDM8BCwJAIAEiBCACRw0AQfsAIRAM6QILIAIgBGsgACgCACIBaiEUIAQgAWtBBWohEANAIAQtAAAgAUHwzoCAAGotAABHDdABIAFBBUYNzgEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBB+wAhEAzoAgsCQCABIgQgAkcNAEH8ACEQDOgCCwJAAkAgBC0AAEG9f2oODADRAdEB0QHRAdEB0QHRAdEB0QHRAQHRAQsgBEEBaiEBQeYAIRAMzwILIARBAWohAUHnACEQDM4CCwJAIAEiBCACRw0AQf0AIRAM5wILIAIgBGsgACgCACIBaiEUIAQgAWtBAmohEAJAA0AgBC0AACABQe3PgIAAai0AAEcNzwEgAUECRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQf0AIRAM5wILIABBADYCACAQQQFqIQFBECEQDMwBCwJAIAEiBCACRw0AQf4AIRAM5gILIAIgBGsgACgCACIBaiEUIAQgAWtBBWohEAJAA0AgBC0AACABQfbOgIAAai0AAEcNzgEgAUEFRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQf4AIRAM5gILIABBADYCACAQQQFqIQFBFiEQDMsBCwJAIAEiBCACRw0AQf8AIRAM5QILIAIgBGsgACgCACIBaiEUIAQgAWtBA2ohEAJAA0AgBC0AACABQfzOgIAAai0AAEcNzQEgAUEDRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQf8AIRAM5QILIABBADYCACAQQQFqIQFBBSEQDMoBCwJAIAEiBCACRw0AQYABIRAM5AILIAQtAABB2QBHDcsBIARBAWohAUEIIRAMyQELAkAgASIEIAJHDQBBgQEhEAzjAgsCQAJAIAQtAABBsn9qDgMAzAEBzAELIARBAWohAUHrACEQDMoCCyAEQQFqIQFB7AAhEAzJAgsCQCABIgQgAkcNAEGCASEQDOICCwJAAkAgBC0AAEG4f2oOCADLAcsBywHLAcsBywEBywELIARBAWohAUHqACEQDMkCCyAEQQFqIQFB7QAhEAzIAgsCQCABIgQgAkcNAEGDASEQDOECCyACIARrIAAoAgAiAWohECAEIAFrQQJqIRQCQANAIAQtAAAgAUGAz4CAAGotAABHDckBIAFBAkYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgEDYCAEGDASEQDOECC0EAIRAgAEEANgIAIBRBAWohAQzGAQsCQCABIgQgAkcNAEGEASEQDOACCyACIARrIAAoAgAiAWohFCAEIAFrQQRqIRACQANAIAQtAAAgAUGDz4CAAGotAABHDcgBIAFBBEYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGEASEQDOACCyAAQQA2AgAgEEEBaiEBQSMhEAzFAQsCQCABIgQgAkcNAEGFASEQDN8CCwJAAkAgBC0AAEG0f2oOCADIAcgByAHIAcgByAEByAELIARBAWohAUHvACEQDMYCCyAEQQFqIQFB8AAhEAzFAgsCQCABIgQgAkcNAEGGASEQDN4CCyAELQAAQcUARw3FASAEQQFqIQEMgwILAkAgASIEIAJHDQBBhwEhEAzdAgsgAiAEayAAKAIAIgFqIRQgBCABa0EDaiEQAkADQCAELQAAIAFBiM+AgABqLQAARw3FASABQQNGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBhwEhEAzdAgsgAEEANgIAIBBBAWohAUEtIRAMwgELAkAgASIEIAJHDQBBiAEhEAzcAgsgAiAEayAAKAIAIgFqIRQgBCABa0EIaiEQAkADQCAELQAAIAFB0M+AgABqLQAARw3EASABQQhGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBiAEhEAzcAgsgAEEANgIAIBBBAWohAUEpIRAMwQELAkAgASIBIAJHDQBBiQEhEAzbAgtBASEQIAEtAABB3wBHDcABIAFBAWohAQyBAgsCQCABIgQgAkcNAEGKASEQDNoCCyACIARrIAAoAgAiAWohFCAEIAFrQQFqIRADQCAELQAAIAFBjM+AgABqLQAARw3BASABQQFGDa8CIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQYoBIRAM2QILAkAgASIEIAJHDQBBiwEhEAzZAgsgAiAEayAAKAIAIgFqIRQgBCABa0ECaiEQAkADQCAELQAAIAFBjs+AgABqLQAARw3BASABQQJGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBiwEhEAzZAgsgAEEANgIAIBBBAWohAUECIRAMvgELAkAgASIEIAJHDQBBjAEhEAzYAgsgAiAEayAAKAIAIgFqIRQgBCABa0EBaiEQAkADQCAELQAAIAFB8M+AgABqLQAARw3AASABQQFGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBjAEhEAzYAgsgAEEANgIAIBBBAWohAUEfIRAMvQELAkAgASIEIAJHDQBBjQEhEAzXAgsgAiAEayAAKAIAIgFqIRQgBCABa0EBaiEQAkADQCAELQAAIAFB8s+AgABqLQAARw2/ASABQQFGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBjQEhEAzXAgsgAEEANgIAIBBBAWohAUEJIRAMvAELAkAgASIEIAJHDQBBjgEhEAzWAgsCQAJAIAQtAABBt39qDgcAvwG/Ab8BvwG/AQG/AQsgBEEBaiEBQfgAIRAMvQILIARBAWohAUH5ACEQDLwCCwJAIAEiBCACRw0AQY8BIRAM1QILIAIgBGsgACgCACIBaiEUIAQgAWtBBWohEAJAA0AgBC0AACABQZHPgIAAai0AAEcNvQEgAUEFRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQY8BIRAM1QILIABBADYCACAQQQFqIQFBGCEQDLoBCwJAIAEiBCACRw0AQZABIRAM1AILIAIgBGsgACgCACIBaiEUIAQgAWtBAmohEAJAA0AgBC0AACABQZfPgIAAai0AAEcNvAEgAUECRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQZABIRAM1AILIABBADYCACAQQQFqIQFBFyEQDLkBCwJAIAEiBCACRw0AQZEBIRAM0wILIAIgBGsgACgCACIBaiEUIAQgAWtBBmohEAJAA0AgBC0AACABQZrPgIAAai0AAEcNuwEgAUEGRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQZEBIRAM0wILIABBADYCACAQQQFqIQFBFSEQDLgBCwJAIAEiBCACRw0AQZIBIRAM0gILIAIgBGsgACgCACIBaiEUIAQgAWtBBWohEAJAA0AgBC0AACABQaHPgIAAai0AAEcNugEgAUEFRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQZIBIRAM0gILIABBADYCACAQQQFqIQFBHiEQDLcBCwJAIAEiBCACRw0AQZMBIRAM0QILIAQtAABBzABHDbgBIARBAWohAUEKIRAMtgELAkAgBCACRw0AQZQBIRAM0AILAkACQCAELQAAQb9/ag4PALkBuQG5AbkBuQG5AbkBuQG5AbkBuQG5AbkBAbkBCyAEQQFqIQFB/gAhEAy3AgsgBEEBaiEBQf8AIRAMtgILAkAgBCACRw0AQZUBIRAMzwILAkACQCAELQAAQb9/ag4DALgBAbgBCyAEQQFqIQFB/QAhEAy2AgsgBEEBaiEEQYABIRAMtQILAkAgBCACRw0AQZYBIRAMzgILIAIgBGsgACgCACIBaiEUIAQgAWtBAWohEAJAA0AgBC0AACABQafPgIAAai0AAEcNtgEgAUEBRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQZYBIRAMzgILIABBADYCACAQQQFqIQFBCyEQDLMBCwJAIAQgAkcNAEGXASEQDM0CCwJAAkACQAJAIAQtAABBU2oOIwC4AbgBuAG4AbgBuAG4AbgBuAG4AbgBuAG4AbgBuAG4AbgBuAG4AbgBuAG4AbgBAbgBuAG4AbgBuAECuAG4AbgBA7gBCyAEQQFqIQFB+wAhEAy2AgsgBEEBaiEBQfwAIRAMtQILIARBAWohBEGBASEQDLQCCyAEQQFqIQRBggEhEAyzAgsCQCAEIAJHDQBBmAEhEAzMAgsgAiAEayAAKAIAIgFqIRQgBCABa0EEaiEQAkADQCAELQAAIAFBqc+AgABqLQAARw20ASABQQRGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBmAEhEAzMAgsgAEEANgIAIBBBAWohAUEZIRAMsQELAkAgBCACRw0AQZkBIRAMywILIAIgBGsgACgCACIBaiEUIAQgAWtBBWohEAJAA0AgBC0AACABQa7PgIAAai0AAEcNswEgAUEFRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQZkBIRAMywILIABBADYCACAQQQFqIQFBBiEQDLABCwJAIAQgAkcNAEGaASEQDMoCCyACIARrIAAoAgAiAWohFCAEIAFrQQFqIRACQANAIAQtAAAgAUG0z4CAAGotAABHDbIBIAFBAUYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGaASEQDMoCCyAAQQA2AgAgEEEBaiEBQRwhEAyvAQsCQCAEIAJHDQBBmwEhEAzJAgsgAiAEayAAKAIAIgFqIRQgBCABa0EBaiEQAkADQCAELQAAIAFBts+AgABqLQAARw2xASABQQFGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBmwEhEAzJAgsgAEEANgIAIBBBAWohAUEnIRAMrgELAkAgBCACRw0AQZwBIRAMyAILAkACQCAELQAAQax/ag4CAAGxAQsgBEEBaiEEQYYBIRAMrwILIARBAWohBEGHASEQDK4CCwJAIAQgAkcNAEGdASEQDMcCCyACIARrIAAoAgAiAWohFCAEIAFrQQFqIRACQANAIAQtAAAgAUG4z4CAAGotAABHDa8BIAFBAUYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGdASEQDMcCCyAAQQA2AgAgEEEBaiEBQSYhEAysAQsCQCAEIAJHDQBBngEhEAzGAgsgAiAEayAAKAIAIgFqIRQgBCABa0EBaiEQAkADQCAELQAAIAFBus+AgABqLQAARw2uASABQQFGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBngEhEAzGAgsgAEEANgIAIBBBAWohAUEDIRAMqwELAkAgBCACRw0AQZ8BIRAMxQILIAIgBGsgACgCACIBaiEUIAQgAWtBAmohEAJAA0AgBC0AACABQe3PgIAAai0AAEcNrQEgAUECRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQZ8BIRAMxQILIABBADYCACAQQQFqIQFBDCEQDKoBCwJAIAQgAkcNAEGgASEQDMQCCyACIARrIAAoAgAiAWohFCAEIAFrQQNqIRACQANAIAQtAAAgAUG8z4CAAGotAABHDawBIAFBA0YNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGgASEQDMQCCyAAQQA2AgAgEEEBaiEBQQ0hEAypAQsCQCAEIAJHDQBBoQEhEAzDAgsCQAJAIAQtAABBun9qDgsArAGsAawBrAGsAawBrAGsAawBAawBCyAEQQFqIQRBiwEhEAyqAgsgBEEBaiEEQYwBIRAMqQILAkAgBCACRw0AQaIBIRAMwgILIAQtAABB0ABHDakBIARBAWohBAzpAQsCQCAEIAJHDQBBowEhEAzBAgsCQAJAIAQtAABBt39qDgcBqgGqAaoBqgGqAQCqAQsgBEEBaiEEQY4BIRAMqAILIARBAWohAUEiIRAMpgELAkAgBCACRw0AQaQBIRAMwAILIAIgBGsgACgCACIBaiEUIAQgAWtBAWohEAJAA0AgBC0AACABQcDPgIAAai0AAEcNqAEgAUEBRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQaQBIRAMwAILIABBADYCACAQQQFqIQFBHSEQDKUBCwJAIAQgAkcNAEGlASEQDL8CCwJAAkAgBC0AAEGuf2oOAwCoAQGoAQsgBEEBaiEEQZABIRAMpgILIARBAWohAUEEIRAMpAELAkAgBCACRw0AQaYBIRAMvgILAkACQAJAAkACQCAELQAAQb9/ag4VAKoBqgGqAaoBqgGqAaoBqgGqAaoBAaoBqgECqgGqAQOqAaoBBKoBCyAEQQFqIQRBiAEhEAyoAgsgBEEBaiEEQYkBIRAMpwILIARBAWohBEGKASEQDKYCCyAEQQFqIQRBjwEhEAylAgsgBEEBaiEEQZEBIRAMpAILAkAgBCACRw0AQacBIRAMvQILIAIgBGsgACgCACIBaiEUIAQgAWtBAmohEAJAA0AgBC0AACABQe3PgIAAai0AAEcNpQEgAUECRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQacBIRAMvQILIABBADYCACAQQQFqIQFBESEQDKIBCwJAIAQgAkcNAEGoASEQDLwCCyACIARrIAAoAgAiAWohFCAEIAFrQQJqIRACQANAIAQtAAAgAUHCz4CAAGotAABHDaQBIAFBAkYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGoASEQDLwCCyAAQQA2AgAgEEEBaiEBQSwhEAyhAQsCQCAEIAJHDQBBqQEhEAy7AgsgAiAEayAAKAIAIgFqIRQgBCABa0EEaiEQAkADQCAELQAAIAFBxc+AgABqLQAARw2jASABQQRGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBqQEhEAy7AgsgAEEANgIAIBBBAWohAUErIRAMoAELAkAgBCACRw0AQaoBIRAMugILIAIgBGsgACgCACIBaiEUIAQgAWtBAmohEAJAA0AgBC0AACABQcrPgIAAai0AAEcNogEgAUECRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQaoBIRAMugILIABBADYCACAQQQFqIQFBFCEQDJ8BCwJAIAQgAkcNAEGrASEQDLkCCwJAAkACQAJAIAQtAABBvn9qDg8AAQKkAaQBpAGkAaQBpAGkAaQBpAGkAaQBA6QBCyAEQQFqIQRBkwEhEAyiAgsgBEEBaiEEQZQBIRAMoQILIARBAWohBEGVASEQDKACCyAEQQFqIQRBlgEhEAyfAgsCQCAEIAJHDQBBrAEhEAy4AgsgBC0AAEHFAEcNnwEgBEEBaiEEDOABCwJAIAQgAkcNAEGtASEQDLcCCyACIARrIAAoAgAiAWohFCAEIAFrQQJqIRACQANAIAQtAAAgAUHNz4CAAGotAABHDZ8BIAFBAkYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGtASEQDLcCCyAAQQA2AgAgEEEBaiEBQQ4hEAycAQsCQCAEIAJHDQBBrgEhEAy2AgsgBC0AAEHQAEcNnQEgBEEBaiEBQSUhEAybAQsCQCAEIAJHDQBBrwEhEAy1AgsgAiAEayAAKAIAIgFqIRQgBCABa0EIaiEQAkADQCAELQAAIAFB0M+AgABqLQAARw2dASABQQhGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBrwEhEAy1AgsgAEEANgIAIBBBAWohAUEqIRAMmgELAkAgBCACRw0AQbABIRAMtAILAkACQCAELQAAQat/ag4LAJ0BnQGdAZ0BnQGdAZ0BnQGdAQGdAQsgBEEBaiEEQZoBIRAMmwILIARBAWohBEGbASEQDJoCCwJAIAQgAkcNAEGxASEQDLMCCwJAAkAgBC0AAEG/f2oOFACcAZwBnAGcAZwBnAGcAZwBnAGcAZwBnAGcAZwBnAGcAZwBnAEBnAELIARBAWohBEGZASEQDJoCCyAEQQFqIQRBnAEhEAyZAgsCQCAEIAJHDQBBsgEhEAyyAgsgAiAEayAAKAIAIgFqIRQgBCABa0EDaiEQAkADQCAELQAAIAFB2c+AgABqLQAARw2aASABQQNGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBsgEhEAyyAgsgAEEANgIAIBBBAWohAUEhIRAMlwELAkAgBCACRw0AQbMBIRAMsQILIAIgBGsgACgCACIBaiEUIAQgAWtBBmohEAJAA0AgBC0AACABQd3PgIAAai0AAEcNmQEgAUEGRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQbMBIRAMsQILIABBADYCACAQQQFqIQFBGiEQDJYBCwJAIAQgAkcNAEG0ASEQDLACCwJAAkACQCAELQAAQbt/ag4RAJoBmgGaAZoBmgGaAZoBmgGaAQGaAZoBmgGaAZoBApoBCyAEQQFqIQRBnQEhEAyYAgsgBEEBaiEEQZ4BIRAMlwILIARBAWohBEGfASEQDJYCCwJAIAQgAkcNAEG1ASEQDK8CCyACIARrIAAoAgAiAWohFCAEIAFrQQVqIRACQANAIAQtAAAgAUHkz4CAAGotAABHDZcBIAFBBUYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEG1ASEQDK8CCyAAQQA2AgAgEEEBaiEBQSghEAyUAQsCQCAEIAJHDQBBtgEhEAyuAgsgAiAEayAAKAIAIgFqIRQgBCABa0ECaiEQAkADQCAELQAAIAFB6s+AgABqLQAARw2WASABQQJGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBtgEhEAyuAgsgAEEANgIAIBBBAWohAUEHIRAMkwELAkAgBCACRw0AQbcBIRAMrQILAkACQCAELQAAQbt/ag4OAJYBlgGWAZYBlgGWAZYBlgGWAZYBlgGWAQGWAQsgBEEBaiEEQaEBIRAMlAILIARBAWohBEGiASEQDJMCCwJAIAQgAkcNAEG4ASEQDKwCCyACIARrIAAoAgAiAWohFCAEIAFrQQJqIRACQANAIAQtAAAgAUHtz4CAAGotAABHDZQBIAFBAkYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEG4ASEQDKwCCyAAQQA2AgAgEEEBaiEBQRIhEAyRAQsCQCAEIAJHDQBBuQEhEAyrAgsgAiAEayAAKAIAIgFqIRQgBCABa0EBaiEQAkADQCAELQAAIAFB8M+AgABqLQAARw2TASABQQFGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBuQEhEAyrAgsgAEEANgIAIBBBAWohAUEgIRAMkAELAkAgBCACRw0AQboBIRAMqgILIAIgBGsgACgCACIBaiEUIAQgAWtBAWohEAJAA0AgBC0AACABQfLPgIAAai0AAEcNkgEgAUEBRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQboBIRAMqgILIABBADYCACAQQQFqIQFBDyEQDI8BCwJAIAQgAkcNAEG7ASEQDKkCCwJAAkAgBC0AAEG3f2oOBwCSAZIBkgGSAZIBAZIBCyAEQQFqIQRBpQEhEAyQAgsgBEEBaiEEQaYBIRAMjwILAkAgBCACRw0AQbwBIRAMqAILIAIgBGsgACgCACIBaiEUIAQgAWtBB2ohEAJAA0AgBC0AACABQfTPgIAAai0AAEcNkAEgAUEHRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQbwBIRAMqAILIABBADYCACAQQQFqIQFBGyEQDI0BCwJAIAQgAkcNAEG9ASEQDKcCCwJAAkACQCAELQAAQb5/ag4SAJEBkQGRAZEBkQGRAZEBkQGRAQGRAZEBkQGRAZEBkQECkQELIARBAWohBEGkASEQDI8CCyAEQQFqIQRBpwEhEAyOAgsgBEEBaiEEQagBIRAMjQILAkAgBCACRw0AQb4BIRAMpgILIAQtAABBzgBHDY0BIARBAWohBAzPAQsCQCAEIAJHDQBBvwEhEAylAgsCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAELQAAQb9/ag4VAAECA5wBBAUGnAGcAZwBBwgJCgucAQwNDg+cAQsgBEEBaiEBQegAIRAMmgILIARBAWohAUHpACEQDJkCCyAEQQFqIQFB7gAhEAyYAgsgBEEBaiEBQfIAIRAMlwILIARBAWohAUHzACEQDJYCCyAEQQFqIQFB9gAhEAyVAgsgBEEBaiEBQfcAIRAMlAILIARBAWohAUH6ACEQDJMCCyAEQQFqIQRBgwEhEAySAgsgBEEBaiEEQYQBIRAMkQILIARBAWohBEGFASEQDJACCyAEQQFqIQRBkgEhEAyPAgsgBEEBaiEEQZgBIRAMjgILIARBAWohBEGgASEQDI0CCyAEQQFqIQRBowEhEAyMAgsgBEEBaiEEQaoBIRAMiwILAkAgBCACRg0AIABBkICAgAA2AgggACAENgIEQasBIRAMiwILQcABIRAMowILIAAgBSACEKqAgIAAIgENiwEgBSEBDFwLAkAgBiACRg0AIAZBAWohBQyNAQtBwgEhEAyhAgsDQAJAIBAtAABBdmoOBIwBAACPAQALIBBBAWoiECACRw0AC0HDASEQDKACCwJAIAcgAkYNACAAQZGAgIAANgIIIAAgBzYCBCAHIQFBASEQDIcCC0HEASEQDJ8CCwJAIAcgAkcNAEHFASEQDJ8CCwJAAkAgBy0AAEF2ag4EAc4BzgEAzgELIAdBAWohBgyNAQsgB0EBaiEFDIkBCwJAIAcgAkcNAEHGASEQDJ4CCwJAAkAgBy0AAEF2ag4XAY8BjwEBjwGPAY8BjwGPAY8BjwGPAY8BjwGPAY8BjwGPAY8BjwGPAY8BAI8BCyAHQQFqIQcLQbABIRAMhAILAkAgCCACRw0AQcgBIRAMnQILIAgtAABBIEcNjQEgAEEAOwEyIAhBAWohAUGzASEQDIMCCyABIRcCQANAIBciByACRg0BIActAABBUGpB/wFxIhBBCk8NzAECQCAALwEyIhRBmTNLDQAgACAUQQpsIhQ7ATIgEEH//wNzIBRB/v8DcUkNACAHQQFqIRcgACAUIBBqIhA7ATIgEEH//wNxQegHSQ0BCwtBACEQIABBADYCHCAAQcGJgIAANgIQIABBDTYCDCAAIAdBAWo2AhQMnAILQccBIRAMmwILIAAgCCACEK6AgIAAIhBFDcoBIBBBFUcNjAEgAEHIATYCHCAAIAg2AhQgAEHJl4CAADYCECAAQRU2AgxBACEQDJoCCwJAIAkgAkcNAEHMASEQDJoCC0EAIRRBASEXQQEhFkEAIRACQAJAAkACQAJAAkACQAJAAkAgCS0AAEFQag4KlgGVAQABAgMEBQYIlwELQQIhEAwGC0EDIRAMBQtBBCEQDAQLQQUhEAwDC0EGIRAMAgtBByEQDAELQQghEAtBACEXQQAhFkEAIRQMjgELQQkhEEEBIRRBACEXQQAhFgyNAQsCQCAKIAJHDQBBzgEhEAyZAgsgCi0AAEEuRw2OASAKQQFqIQkMygELIAsgAkcNjgFB0AEhEAyXAgsCQCALIAJGDQAgAEGOgICAADYCCCAAIAs2AgRBtwEhEAz+AQtB0QEhEAyWAgsCQCAEIAJHDQBB0gEhEAyWAgsgAiAEayAAKAIAIhBqIRQgBCAQa0EEaiELA0AgBC0AACAQQfzPgIAAai0AAEcNjgEgEEEERg3pASAQQQFqIRAgBEEBaiIEIAJHDQALIAAgFDYCAEHSASEQDJUCCyAAIAwgAhCsgICAACIBDY0BIAwhAQy4AQsCQCAEIAJHDQBB1AEhEAyUAgsgAiAEayAAKAIAIhBqIRQgBCAQa0EBaiEMA0AgBC0AACAQQYHQgIAAai0AAEcNjwEgEEEBRg2OASAQQQFqIRAgBEEBaiIEIAJHDQALIAAgFDYCAEHUASEQDJMCCwJAIAQgAkcNAEHWASEQDJMCCyACIARrIAAoAgAiEGohFCAEIBBrQQJqIQsDQCAELQAAIBBBg9CAgABqLQAARw2OASAQQQJGDZABIBBBAWohECAEQQFqIgQgAkcNAAsgACAUNgIAQdYBIRAMkgILAkAgBCACRw0AQdcBIRAMkgILAkACQCAELQAAQbt/ag4QAI8BjwGPAY8BjwGPAY8BjwGPAY8BjwGPAY8BjwEBjwELIARBAWohBEG7ASEQDPkBCyAEQQFqIQRBvAEhEAz4AQsCQCAEIAJHDQBB2AEhEAyRAgsgBC0AAEHIAEcNjAEgBEEBaiEEDMQBCwJAIAQgAkYNACAAQZCAgIAANgIIIAAgBDYCBEG+ASEQDPcBC0HZASEQDI8CCwJAIAQgAkcNAEHaASEQDI8CCyAELQAAQcgARg3DASAAQQE6ACgMuQELIABBAjoALyAAIAQgAhCmgICAACIQDY0BQcIBIRAM9AELIAAtAChBf2oOArcBuQG4AQsDQAJAIAQtAABBdmoOBACOAY4BAI4BCyAEQQFqIgQgAkcNAAtB3QEhEAyLAgsgAEEAOgAvIAAtAC1BBHFFDYQCCyAAQQA6AC8gAEEBOgA0IAEhAQyMAQsgEEEVRg3aASAAQQA2AhwgACABNgIUIABBp46AgAA2AhAgAEESNgIMQQAhEAyIAgsCQCAAIBAgAhC0gICAACIEDQAgECEBDIECCwJAIARBFUcNACAAQQM2AhwgACAQNgIUIABBsJiAgAA2AhAgAEEVNgIMQQAhEAyIAgsgAEEANgIcIAAgEDYCFCAAQaeOgIAANgIQIABBEjYCDEEAIRAMhwILIBBBFUYN1gEgAEEANgIcIAAgATYCFCAAQdqNgIAANgIQIABBFDYCDEEAIRAMhgILIAAoAgQhFyAAQQA2AgQgECARp2oiFiEBIAAgFyAQIBYgFBsiEBC1gICAACIURQ2NASAAQQc2AhwgACAQNgIUIAAgFDYCDEEAIRAMhQILIAAgAC8BMEGAAXI7ATAgASEBC0EqIRAM6gELIBBBFUYN0QEgAEEANgIcIAAgATYCFCAAQYOMgIAANgIQIABBEzYCDEEAIRAMggILIBBBFUYNzwEgAEEANgIcIAAgATYCFCAAQZqPgIAANgIQIABBIjYCDEEAIRAMgQILIAAoAgQhECAAQQA2AgQCQCAAIBAgARC3gICAACIQDQAgAUEBaiEBDI0BCyAAQQw2AhwgACAQNgIMIAAgAUEBajYCFEEAIRAMgAILIBBBFUYNzAEgAEEANgIcIAAgATYCFCAAQZqPgIAANgIQIABBIjYCDEEAIRAM/wELIAAoAgQhECAAQQA2AgQCQCAAIBAgARC3gICAACIQDQAgAUEBaiEBDIwBCyAAQQ02AhwgACAQNgIMIAAgAUEBajYCFEEAIRAM/gELIBBBFUYNyQEgAEEANgIcIAAgATYCFCAAQcaMgIAANgIQIABBIzYCDEEAIRAM/QELIAAoAgQhECAAQQA2AgQCQCAAIBAgARC5gICAACIQDQAgAUEBaiEBDIsBCyAAQQ42AhwgACAQNgIMIAAgAUEBajYCFEEAIRAM/AELIABBADYCHCAAIAE2AhQgAEHAlYCAADYCECAAQQI2AgxBACEQDPsBCyAQQRVGDcUBIABBADYCHCAAIAE2AhQgAEHGjICAADYCECAAQSM2AgxBACEQDPoBCyAAQRA2AhwgACABNgIUIAAgEDYCDEEAIRAM+QELIAAoAgQhBCAAQQA2AgQCQCAAIAQgARC5gICAACIEDQAgAUEBaiEBDPEBCyAAQRE2AhwgACAENgIMIAAgAUEBajYCFEEAIRAM+AELIBBBFUYNwQEgAEEANgIcIAAgATYCFCAAQcaMgIAANgIQIABBIzYCDEEAIRAM9wELIAAoAgQhECAAQQA2AgQCQCAAIBAgARC5gICAACIQDQAgAUEBaiEBDIgBCyAAQRM2AhwgACAQNgIMIAAgAUEBajYCFEEAIRAM9gELIAAoAgQhBCAAQQA2AgQCQCAAIAQgARC5gICAACIEDQAgAUEBaiEBDO0BCyAAQRQ2AhwgACAENgIMIAAgAUEBajYCFEEAIRAM9QELIBBBFUYNvQEgAEEANgIcIAAgATYCFCAAQZqPgIAANgIQIABBIjYCDEEAIRAM9AELIAAoAgQhECAAQQA2AgQCQCAAIBAgARC3gICAACIQDQAgAUEBaiEBDIYBCyAAQRY2AhwgACAQNgIMIAAgAUEBajYCFEEAIRAM8wELIAAoAgQhBCAAQQA2AgQCQCAAIAQgARC3gICAACIEDQAgAUEBaiEBDOkBCyAAQRc2AhwgACAENgIMIAAgAUEBajYCFEEAIRAM8gELIABBADYCHCAAIAE2AhQgAEHNk4CAADYCECAAQQw2AgxBACEQDPEBC0IBIRELIBBBAWohAQJAIAApAyAiEkL//////////w9WDQAgACASQgSGIBGENwMgIAEhAQyEAQsgAEEANgIcIAAgATYCFCAAQa2JgIAANgIQIABBDDYCDEEAIRAM7wELIABBADYCHCAAIBA2AhQgAEHNk4CAADYCECAAQQw2AgxBACEQDO4BCyAAKAIEIRcgAEEANgIEIBAgEadqIhYhASAAIBcgECAWIBQbIhAQtYCAgAAiFEUNcyAAQQU2AhwgACAQNgIUIAAgFDYCDEEAIRAM7QELIABBADYCHCAAIBA2AhQgAEGqnICAADYCECAAQQ82AgxBACEQDOwBCyAAIBAgAhC0gICAACIBDQEgECEBC0EOIRAM0QELAkAgAUEVRw0AIABBAjYCHCAAIBA2AhQgAEGwmICAADYCECAAQRU2AgxBACEQDOoBCyAAQQA2AhwgACAQNgIUIABBp46AgAA2AhAgAEESNgIMQQAhEAzpAQsgAUEBaiEQAkAgAC8BMCIBQYABcUUNAAJAIAAgECACELuAgIAAIgENACAQIQEMcAsgAUEVRw26ASAAQQU2AhwgACAQNgIUIABB+ZeAgAA2AhAgAEEVNgIMQQAhEAzpAQsCQCABQaAEcUGgBEcNACAALQAtQQJxDQAgAEEANgIcIAAgEDYCFCAAQZaTgIAANgIQIABBBDYCDEEAIRAM6QELIAAgECACEL2AgIAAGiAQIQECQAJAAkACQAJAIAAgECACELOAgIAADhYCAQAEBAQEBAQEBAQEBAQEBAQEBAQDBAsgAEEBOgAuCyAAIAAvATBBwAByOwEwIBAhAQtBJiEQDNEBCyAAQSM2AhwgACAQNgIUIABBpZaAgAA2AhAgAEEVNgIMQQAhEAzpAQsgAEEANgIcIAAgEDYCFCAAQdWLgIAANgIQIABBETYCDEEAIRAM6AELIAAtAC1BAXFFDQFBwwEhEAzOAQsCQCANIAJGDQADQAJAIA0tAABBIEYNACANIQEMxAELIA1BAWoiDSACRw0AC0ElIRAM5wELQSUhEAzmAQsgACgCBCEEIABBADYCBCAAIAQgDRCvgICAACIERQ2tASAAQSY2AhwgACAENgIMIAAgDUEBajYCFEEAIRAM5QELIBBBFUYNqwEgAEEANgIcIAAgATYCFCAAQf2NgIAANgIQIABBHTYCDEEAIRAM5AELIABBJzYCHCAAIAE2AhQgACAQNgIMQQAhEAzjAQsgECEBQQEhFAJAAkACQAJAAkACQAJAIAAtACxBfmoOBwYFBQMBAgAFCyAAIAAvATBBCHI7ATAMAwtBAiEUDAELQQQhFAsgAEEBOgAsIAAgAC8BMCAUcjsBMAsgECEBC0ErIRAMygELIABBADYCHCAAIBA2AhQgAEGrkoCAADYCECAAQQs2AgxBACEQDOIBCyAAQQA2AhwgACABNgIUIABB4Y+AgAA2AhAgAEEKNgIMQQAhEAzhAQsgAEEAOgAsIBAhAQy9AQsgECEBQQEhFAJAAkACQAJAAkAgAC0ALEF7ag4EAwECAAULIAAgAC8BMEEIcjsBMAwDC0ECIRQMAQtBBCEUCyAAQQE6ACwgACAALwEwIBRyOwEwCyAQIQELQSkhEAzFAQsgAEEANgIcIAAgATYCFCAAQfCUgIAANgIQIABBAzYCDEEAIRAM3QELAkAgDi0AAEENRw0AIAAoAgQhASAAQQA2AgQCQCAAIAEgDhCxgICAACIBDQAgDkEBaiEBDHULIABBLDYCHCAAIAE2AgwgACAOQQFqNgIUQQAhEAzdAQsgAC0ALUEBcUUNAUHEASEQDMMBCwJAIA4gAkcNAEEtIRAM3AELAkACQANAAkAgDi0AAEF2ag4EAgAAAwALIA5BAWoiDiACRw0AC0EtIRAM3QELIAAoAgQhASAAQQA2AgQCQCAAIAEgDhCxgICAACIBDQAgDiEBDHQLIABBLDYCHCAAIA42AhQgACABNgIMQQAhEAzcAQsgACgCBCEBIABBADYCBAJAIAAgASAOELGAgIAAIgENACAOQQFqIQEMcwsgAEEsNgIcIAAgATYCDCAAIA5BAWo2AhRBACEQDNsBCyAAKAIEIQQgAEEANgIEIAAgBCAOELGAgIAAIgQNoAEgDiEBDM4BCyAQQSxHDQEgAUEBaiEQQQEhAQJAAkACQAJAAkAgAC0ALEF7ag4EAwECBAALIBAhAQwEC0ECIQEMAQtBBCEBCyAAQQE6ACwgACAALwEwIAFyOwEwIBAhAQwBCyAAIAAvATBBCHI7ATAgECEBC0E5IRAMvwELIABBADoALCABIQELQTQhEAy9AQsgACAALwEwQSByOwEwIAEhAQwCCyAAKAIEIQQgAEEANgIEAkAgACAEIAEQsYCAgAAiBA0AIAEhAQzHAQsgAEE3NgIcIAAgATYCFCAAIAQ2AgxBACEQDNQBCyAAQQg6ACwgASEBC0EwIRAMuQELAkAgAC0AKEEBRg0AIAEhAQwECyAALQAtQQhxRQ2TASABIQEMAwsgAC0AMEEgcQ2UAUHFASEQDLcBCwJAIA8gAkYNAAJAA0ACQCAPLQAAQVBqIgFB/wFxQQpJDQAgDyEBQTUhEAy6AQsgACkDICIRQpmz5syZs+bMGVYNASAAIBFCCn4iETcDICARIAGtQv8BgyISQn+FVg0BIAAgESASfDcDICAPQQFqIg8gAkcNAAtBOSEQDNEBCyAAKAIEIQIgAEEANgIEIAAgAiAPQQFqIgQQsYCAgAAiAg2VASAEIQEMwwELQTkhEAzPAQsCQCAALwEwIgFBCHFFDQAgAC0AKEEBRw0AIAAtAC1BCHFFDZABCyAAIAFB9/sDcUGABHI7ATAgDyEBC0E3IRAMtAELIAAgAC8BMEEQcjsBMAyrAQsgEEEVRg2LASAAQQA2AhwgACABNgIUIABB8I6AgAA2AhAgAEEcNgIMQQAhEAzLAQsgAEHDADYCHCAAIAE2AgwgACANQQFqNgIUQQAhEAzKAQsCQCABLQAAQTpHDQAgACgCBCEQIABBADYCBAJAIAAgECABEK+AgIAAIhANACABQQFqIQEMYwsgAEHDADYCHCAAIBA2AgwgACABQQFqNgIUQQAhEAzKAQsgAEEANgIcIAAgATYCFCAAQbGRgIAANgIQIABBCjYCDEEAIRAMyQELIABBADYCHCAAIAE2AhQgAEGgmYCAADYCECAAQR42AgxBACEQDMgBCyAAQQA2AgALIABBgBI7ASogACAXQQFqIgEgAhCogICAACIQDQEgASEBC0HHACEQDKwBCyAQQRVHDYMBIABB0QA2AhwgACABNgIUIABB45eAgAA2AhAgAEEVNgIMQQAhEAzEAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMXgsgAEHSADYCHCAAIAE2AhQgACAQNgIMQQAhEAzDAQsgAEEANgIcIAAgFDYCFCAAQcGogIAANgIQIABBBzYCDCAAQQA2AgBBACEQDMIBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxdCyAAQdMANgIcIAAgATYCFCAAIBA2AgxBACEQDMEBC0EAIRAgAEEANgIcIAAgATYCFCAAQYCRgIAANgIQIABBCTYCDAzAAQsgEEEVRg19IABBADYCHCAAIAE2AhQgAEGUjYCAADYCECAAQSE2AgxBACEQDL8BC0EBIRZBACEXQQAhFEEBIRALIAAgEDoAKyABQQFqIQECQAJAIAAtAC1BEHENAAJAAkACQCAALQAqDgMBAAIECyAWRQ0DDAILIBQNAQwCCyAXRQ0BCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQrYCAgAAiEA0AIAEhAQxcCyAAQdgANgIcIAAgATYCFCAAIBA2AgxBACEQDL4BCyAAKAIEIQQgAEEANgIEAkAgACAEIAEQrYCAgAAiBA0AIAEhAQytAQsgAEHZADYCHCAAIAE2AhQgACAENgIMQQAhEAy9AQsgACgCBCEEIABBADYCBAJAIAAgBCABEK2AgIAAIgQNACABIQEMqwELIABB2gA2AhwgACABNgIUIAAgBDYCDEEAIRAMvAELIAAoAgQhBCAAQQA2AgQCQCAAIAQgARCtgICAACIEDQAgASEBDKkBCyAAQdwANgIcIAAgATYCFCAAIAQ2AgxBACEQDLsBCwJAIAEtAABBUGoiEEH/AXFBCk8NACAAIBA6ACogAUEBaiEBQc8AIRAMogELIAAoAgQhBCAAQQA2AgQCQCAAIAQgARCtgICAACIEDQAgASEBDKcBCyAAQd4ANgIcIAAgATYCFCAAIAQ2AgxBACEQDLoBCyAAQQA2AgAgF0EBaiEBAkAgAC0AKUEjTw0AIAEhAQxZCyAAQQA2AhwgACABNgIUIABB04mAgAA2AhAgAEEINgIMQQAhEAy5AQsgAEEANgIAC0EAIRAgAEEANgIcIAAgATYCFCAAQZCzgIAANgIQIABBCDYCDAy3AQsgAEEANgIAIBdBAWohAQJAIAAtAClBIUcNACABIQEMVgsgAEEANgIcIAAgATYCFCAAQZuKgIAANgIQIABBCDYCDEEAIRAMtgELIABBADYCACAXQQFqIQECQCAALQApIhBBXWpBC08NACABIQEMVQsCQCAQQQZLDQBBASAQdEHKAHFFDQAgASEBDFULQQAhECAAQQA2AhwgACABNgIUIABB94mAgAA2AhAgAEEINgIMDLUBCyAQQRVGDXEgAEEANgIcIAAgATYCFCAAQbmNgIAANgIQIABBGjYCDEEAIRAMtAELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDFQLIABB5QA2AhwgACABNgIUIAAgEDYCDEEAIRAMswELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDE0LIABB0gA2AhwgACABNgIUIAAgEDYCDEEAIRAMsgELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDE0LIABB0wA2AhwgACABNgIUIAAgEDYCDEEAIRAMsQELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDFELIABB5QA2AhwgACABNgIUIAAgEDYCDEEAIRAMsAELIABBADYCHCAAIAE2AhQgAEHGioCAADYCECAAQQc2AgxBACEQDK8BCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxJCyAAQdIANgIcIAAgATYCFCAAIBA2AgxBACEQDK4BCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxJCyAAQdMANgIcIAAgATYCFCAAIBA2AgxBACEQDK0BCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxNCyAAQeUANgIcIAAgATYCFCAAIBA2AgxBACEQDKwBCyAAQQA2AhwgACABNgIUIABB3IiAgAA2AhAgAEEHNgIMQQAhEAyrAQsgEEE/Rw0BIAFBAWohAQtBBSEQDJABC0EAIRAgAEEANgIcIAAgATYCFCAAQf2SgIAANgIQIABBBzYCDAyoAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMQgsgAEHSADYCHCAAIAE2AhQgACAQNgIMQQAhEAynAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMQgsgAEHTADYCHCAAIAE2AhQgACAQNgIMQQAhEAymAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMRgsgAEHlADYCHCAAIAE2AhQgACAQNgIMQQAhEAylAQsgACgCBCEBIABBADYCBAJAIAAgASAUEKeAgIAAIgENACAUIQEMPwsgAEHSADYCHCAAIBQ2AhQgACABNgIMQQAhEAykAQsgACgCBCEBIABBADYCBAJAIAAgASAUEKeAgIAAIgENACAUIQEMPwsgAEHTADYCHCAAIBQ2AhQgACABNgIMQQAhEAyjAQsgACgCBCEBIABBADYCBAJAIAAgASAUEKeAgIAAIgENACAUIQEMQwsgAEHlADYCHCAAIBQ2AhQgACABNgIMQQAhEAyiAQsgAEEANgIcIAAgFDYCFCAAQcOPgIAANgIQIABBBzYCDEEAIRAMoQELIABBADYCHCAAIAE2AhQgAEHDj4CAADYCECAAQQc2AgxBACEQDKABC0EAIRAgAEEANgIcIAAgFDYCFCAAQYycgIAANgIQIABBBzYCDAyfAQsgAEEANgIcIAAgFDYCFCAAQYycgIAANgIQIABBBzYCDEEAIRAMngELIABBADYCHCAAIBQ2AhQgAEH+kYCAADYCECAAQQc2AgxBACEQDJ0BCyAAQQA2AhwgACABNgIUIABBjpuAgAA2AhAgAEEGNgIMQQAhEAycAQsgEEEVRg1XIABBADYCHCAAIAE2AhQgAEHMjoCAADYCECAAQSA2AgxBACEQDJsBCyAAQQA2AgAgEEEBaiEBQSQhEAsgACAQOgApIAAoAgQhECAAQQA2AgQgACAQIAEQq4CAgAAiEA1UIAEhAQw+CyAAQQA2AgALQQAhECAAQQA2AhwgACAENgIUIABB8ZuAgAA2AhAgAEEGNgIMDJcBCyABQRVGDVAgAEEANgIcIAAgBTYCFCAAQfCMgIAANgIQIABBGzYCDEEAIRAMlgELIAAoAgQhBSAAQQA2AgQgACAFIBAQqYCAgAAiBQ0BIBBBAWohBQtBrQEhEAx7CyAAQcEBNgIcIAAgBTYCDCAAIBBBAWo2AhRBACEQDJMBCyAAKAIEIQYgAEEANgIEIAAgBiAQEKmAgIAAIgYNASAQQQFqIQYLQa4BIRAMeAsgAEHCATYCHCAAIAY2AgwgACAQQQFqNgIUQQAhEAyQAQsgAEEANgIcIAAgBzYCFCAAQZeLgIAANgIQIABBDTYCDEEAIRAMjwELIABBADYCHCAAIAg2AhQgAEHjkICAADYCECAAQQk2AgxBACEQDI4BCyAAQQA2AhwgACAINgIUIABBlI2AgAA2AhAgAEEhNgIMQQAhEAyNAQtBASEWQQAhF0EAIRRBASEQCyAAIBA6ACsgCUEBaiEIAkACQCAALQAtQRBxDQACQAJAAkAgAC0AKg4DAQACBAsgFkUNAwwCCyAUDQEMAgsgF0UNAQsgACgCBCEQIABBADYCBCAAIBAgCBCtgICAACIQRQ09IABByQE2AhwgACAINgIUIAAgEDYCDEEAIRAMjAELIAAoAgQhBCAAQQA2AgQgACAEIAgQrYCAgAAiBEUNdiAAQcoBNgIcIAAgCDYCFCAAIAQ2AgxBACEQDIsBCyAAKAIEIQQgAEEANgIEIAAgBCAJEK2AgIAAIgRFDXQgAEHLATYCHCAAIAk2AhQgACAENgIMQQAhEAyKAQsgACgCBCEEIABBADYCBCAAIAQgChCtgICAACIERQ1yIABBzQE2AhwgACAKNgIUIAAgBDYCDEEAIRAMiQELAkAgCy0AAEFQaiIQQf8BcUEKTw0AIAAgEDoAKiALQQFqIQpBtgEhEAxwCyAAKAIEIQQgAEEANgIEIAAgBCALEK2AgIAAIgRFDXAgAEHPATYCHCAAIAs2AhQgACAENgIMQQAhEAyIAQsgAEEANgIcIAAgBDYCFCAAQZCzgIAANgIQIABBCDYCDCAAQQA2AgBBACEQDIcBCyABQRVGDT8gAEEANgIcIAAgDDYCFCAAQcyOgIAANgIQIABBIDYCDEEAIRAMhgELIABBgQQ7ASggACgCBCEQIABCADcDACAAIBAgDEEBaiIMEKuAgIAAIhBFDTggAEHTATYCHCAAIAw2AhQgACAQNgIMQQAhEAyFAQsgAEEANgIAC0EAIRAgAEEANgIcIAAgBDYCFCAAQdibgIAANgIQIABBCDYCDAyDAQsgACgCBCEQIABCADcDACAAIBAgC0EBaiILEKuAgIAAIhANAUHGASEQDGkLIABBAjoAKAxVCyAAQdUBNgIcIAAgCzYCFCAAIBA2AgxBACEQDIABCyAQQRVGDTcgAEEANgIcIAAgBDYCFCAAQaSMgIAANgIQIABBEDYCDEEAIRAMfwsgAC0ANEEBRw00IAAgBCACELyAgIAAIhBFDTQgEEEVRw01IABB3AE2AhwgACAENgIUIABB1ZaAgAA2AhAgAEEVNgIMQQAhEAx+C0EAIRAgAEEANgIcIABBr4uAgAA2AhAgAEECNgIMIAAgFEEBajYCFAx9C0EAIRAMYwtBAiEQDGILQQ0hEAxhC0EPIRAMYAtBJSEQDF8LQRMhEAxeC0EVIRAMXQtBFiEQDFwLQRchEAxbC0EYIRAMWgtBGSEQDFkLQRohEAxYC0EbIRAMVwtBHCEQDFYLQR0hEAxVC0EfIRAMVAtBISEQDFMLQSMhEAxSC0HGACEQDFELQS4hEAxQC0EvIRAMTwtBOyEQDE4LQT0hEAxNC0HIACEQDEwLQckAIRAMSwtBywAhEAxKC0HMACEQDEkLQc4AIRAMSAtB0QAhEAxHC0HVACEQDEYLQdgAIRAMRQtB2QAhEAxEC0HbACEQDEMLQeQAIRAMQgtB5QAhEAxBC0HxACEQDEALQfQAIRAMPwtBjQEhEAw+C0GXASEQDD0LQakBIRAMPAtBrAEhEAw7C0HAASEQDDoLQbkBIRAMOQtBrwEhEAw4C0GxASEQDDcLQbIBIRAMNgtBtAEhEAw1C0G1ASEQDDQLQboBIRAMMwtBvQEhEAwyC0G/ASEQDDELQcEBIRAMMAsgAEEANgIcIAAgBDYCFCAAQemLgIAANgIQIABBHzYCDEEAIRAMSAsgAEHbATYCHCAAIAQ2AhQgAEH6loCAADYCECAAQRU2AgxBACEQDEcLIABB+AA2AhwgACAMNgIUIABBypiAgAA2AhAgAEEVNgIMQQAhEAxGCyAAQdEANgIcIAAgBTYCFCAAQbCXgIAANgIQIABBFTYCDEEAIRAMRQsgAEH5ADYCHCAAIAE2AhQgACAQNgIMQQAhEAxECyAAQfgANgIcIAAgATYCFCAAQcqYgIAANgIQIABBFTYCDEEAIRAMQwsgAEHkADYCHCAAIAE2AhQgAEHjl4CAADYCECAAQRU2AgxBACEQDEILIABB1wA2AhwgACABNgIUIABByZeAgAA2AhAgAEEVNgIMQQAhEAxBCyAAQQA2AhwgACABNgIUIABBuY2AgAA2AhAgAEEaNgIMQQAhEAxACyAAQcIANgIcIAAgATYCFCAAQeOYgIAANgIQIABBFTYCDEEAIRAMPwsgAEEANgIEIAAgDyAPELGAgIAAIgRFDQEgAEE6NgIcIAAgBDYCDCAAIA9BAWo2AhRBACEQDD4LIAAoAgQhBCAAQQA2AgQCQCAAIAQgARCxgICAACIERQ0AIABBOzYCHCAAIAQ2AgwgACABQQFqNgIUQQAhEAw+CyABQQFqIQEMLQsgD0EBaiEBDC0LIABBADYCHCAAIA82AhQgAEHkkoCAADYCECAAQQQ2AgxBACEQDDsLIABBNjYCHCAAIAQ2AhQgACACNgIMQQAhEAw6CyAAQS42AhwgACAONgIUIAAgBDYCDEEAIRAMOQsgAEHQADYCHCAAIAE2AhQgAEGRmICAADYCECAAQRU2AgxBACEQDDgLIA1BAWohAQwsCyAAQRU2AhwgACABNgIUIABBgpmAgAA2AhAgAEEVNgIMQQAhEAw2CyAAQRs2AhwgACABNgIUIABBkZeAgAA2AhAgAEEVNgIMQQAhEAw1CyAAQQ82AhwgACABNgIUIABBkZeAgAA2AhAgAEEVNgIMQQAhEAw0CyAAQQs2AhwgACABNgIUIABBkZeAgAA2AhAgAEEVNgIMQQAhEAwzCyAAQRo2AhwgACABNgIUIABBgpmAgAA2AhAgAEEVNgIMQQAhEAwyCyAAQQs2AhwgACABNgIUIABBgpmAgAA2AhAgAEEVNgIMQQAhEAwxCyAAQQo2AhwgACABNgIUIABB5JaAgAA2AhAgAEEVNgIMQQAhEAwwCyAAQR42AhwgACABNgIUIABB+ZeAgAA2AhAgAEEVNgIMQQAhEAwvCyAAQQA2AhwgACAQNgIUIABB2o2AgAA2AhAgAEEUNgIMQQAhEAwuCyAAQQQ2AhwgACABNgIUIABBsJiAgAA2AhAgAEEVNgIMQQAhEAwtCyAAQQA2AgAgC0EBaiELC0G4ASEQDBILIABBADYCACAQQQFqIQFB9QAhEAwRCyABIQECQCAALQApQQVHDQBB4wAhEAwRC0HiACEQDBALQQAhECAAQQA2AhwgAEHkkYCAADYCECAAQQc2AgwgACAUQQFqNgIUDCgLIABBADYCACAXQQFqIQFBwAAhEAwOC0EBIQELIAAgAToALCAAQQA2AgAgF0EBaiEBC0EoIRAMCwsgASEBC0E4IRAMCQsCQCABIg8gAkYNAANAAkAgDy0AAEGAvoCAAGotAAAiAUEBRg0AIAFBAkcNAyAPQQFqIQEMBAsgD0EBaiIPIAJHDQALQT4hEAwiC0E+IRAMIQsgAEEAOgAsIA8hAQwBC0ELIRAMBgtBOiEQDAULIAFBAWohAUEtIRAMBAsgACABOgAsIABBADYCACAWQQFqIQFBDCEQDAMLIABBADYCACAXQQFqIQFBCiEQDAILIABBADYCAAsgAEEAOgAsIA0hAUEJIRAMAAsLQQAhECAAQQA2AhwgACALNgIUIABBzZCAgAA2AhAgAEEJNgIMDBcLQQAhECAAQQA2AhwgACAKNgIUIABB6YqAgAA2AhAgAEEJNgIMDBYLQQAhECAAQQA2AhwgACAJNgIUIABBt5CAgAA2AhAgAEEJNgIMDBULQQAhECAAQQA2AhwgACAINgIUIABBnJGAgAA2AhAgAEEJNgIMDBQLQQAhECAAQQA2AhwgACABNgIUIABBzZCAgAA2AhAgAEEJNgIMDBMLQQAhECAAQQA2AhwgACABNgIUIABB6YqAgAA2AhAgAEEJNgIMDBILQQAhECAAQQA2AhwgACABNgIUIABBt5CAgAA2AhAgAEEJNgIMDBELQQAhECAAQQA2AhwgACABNgIUIABBnJGAgAA2AhAgAEEJNgIMDBALQQAhECAAQQA2AhwgACABNgIUIABBl5WAgAA2AhAgAEEPNgIMDA8LQQAhECAAQQA2AhwgACABNgIUIABBl5WAgAA2AhAgAEEPNgIMDA4LQQAhECAAQQA2AhwgACABNgIUIABBwJKAgAA2AhAgAEELNgIMDA0LQQAhECAAQQA2AhwgACABNgIUIABBlYmAgAA2AhAgAEELNgIMDAwLQQAhECAAQQA2AhwgACABNgIUIABB4Y+AgAA2AhAgAEEKNgIMDAsLQQAhECAAQQA2AhwgACABNgIUIABB+4+AgAA2AhAgAEEKNgIMDAoLQQAhECAAQQA2AhwgACABNgIUIABB8ZmAgAA2AhAgAEECNgIMDAkLQQAhECAAQQA2AhwgACABNgIUIABBxJSAgAA2AhAgAEECNgIMDAgLQQAhECAAQQA2AhwgACABNgIUIABB8pWAgAA2AhAgAEECNgIMDAcLIABBAjYCHCAAIAE2AhQgAEGcmoCAADYCECAAQRY2AgxBACEQDAYLQQEhEAwFC0HUACEQIAEiBCACRg0EIANBCGogACAEIAJB2MKAgABBChDFgICAACADKAIMIQQgAygCCA4DAQQCAAsQyoCAgAAACyAAQQA2AhwgAEG1moCAADYCECAAQRc2AgwgACAEQQFqNgIUQQAhEAwCCyAAQQA2AhwgACAENgIUIABBypqAgAA2AhAgAEEJNgIMQQAhEAwBCwJAIAEiBCACRw0AQSIhEAwBCyAAQYmAgIAANgIIIAAgBDYCBEEhIRALIANBEGokgICAgAAgEAuvAQECfyABKAIAIQYCQAJAIAIgA0YNACAEIAZqIQQgBiADaiACayEHIAIgBkF/cyAFaiIGaiEFA0ACQCACLQAAIAQtAABGDQBBAiEEDAMLAkAgBg0AQQAhBCAFIQIMAwsgBkF/aiEGIARBAWohBCACQQFqIgIgA0cNAAsgByEGIAMhAgsgAEEBNgIAIAEgBjYCACAAIAI2AgQPCyABQQA2AgAgACAENgIAIAAgAjYCBAsKACAAEMeAgIAAC/I2AQt/I4CAgIAAQRBrIgEkgICAgAACQEEAKAKg0ICAAA0AQQAQy4CAgABBgNSEgABrIgJB2QBJDQBBACEDAkBBACgC4NOAgAAiBA0AQQBCfzcC7NOAgABBAEKAgISAgIDAADcC5NOAgABBACABQQhqQXBxQdiq1aoFcyIENgLg04CAAEEAQQA2AvTTgIAAQQBBADYCxNOAgAALQQAgAjYCzNOAgABBAEGA1ISAADYCyNOAgABBAEGA1ISAADYCmNCAgABBACAENgKs0ICAAEEAQX82AqjQgIAAA0AgA0HE0ICAAGogA0G40ICAAGoiBDYCACAEIANBsNCAgABqIgU2AgAgA0G80ICAAGogBTYCACADQczQgIAAaiADQcDQgIAAaiIFNgIAIAUgBDYCACADQdTQgIAAaiADQcjQgIAAaiIENgIAIAQgBTYCACADQdDQgIAAaiAENgIAIANBIGoiA0GAAkcNAAtBgNSEgABBeEGA1ISAAGtBD3FBAEGA1ISAAEEIakEPcRsiA2oiBEEEaiACQUhqIgUgA2siA0EBcjYCAEEAQQAoAvDTgIAANgKk0ICAAEEAIAM2ApTQgIAAQQAgBDYCoNCAgABBgNSEgAAgBWpBODYCBAsCQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAEHsAUsNAAJAQQAoAojQgIAAIgZBECAAQRNqQXBxIABBC0kbIgJBA3YiBHYiA0EDcUUNAAJAAkAgA0EBcSAEckEBcyIFQQN0IgRBsNCAgABqIgMgBEG40ICAAGooAgAiBCgCCCICRw0AQQAgBkF+IAV3cTYCiNCAgAAMAQsgAyACNgIIIAIgAzYCDAsgBEEIaiEDIAQgBUEDdCIFQQNyNgIEIAQgBWoiBCAEKAIEQQFyNgIEDAwLIAJBACgCkNCAgAAiB00NAQJAIANFDQACQAJAIAMgBHRBAiAEdCIDQQAgA2tycSIDQQAgA2txQX9qIgMgA0EMdkEQcSIDdiIEQQV2QQhxIgUgA3IgBCAFdiIDQQJ2QQRxIgRyIAMgBHYiA0EBdkECcSIEciADIAR2IgNBAXZBAXEiBHIgAyAEdmoiBEEDdCIDQbDQgIAAaiIFIANBuNCAgABqKAIAIgMoAggiAEcNAEEAIAZBfiAEd3EiBjYCiNCAgAAMAQsgBSAANgIIIAAgBTYCDAsgAyACQQNyNgIEIAMgBEEDdCIEaiAEIAJrIgU2AgAgAyACaiIAIAVBAXI2AgQCQCAHRQ0AIAdBeHFBsNCAgABqIQJBACgCnNCAgAAhBAJAAkAgBkEBIAdBA3Z0IghxDQBBACAGIAhyNgKI0ICAACACIQgMAQsgAigCCCEICyAIIAQ2AgwgAiAENgIIIAQgAjYCDCAEIAg2AggLIANBCGohA0EAIAA2ApzQgIAAQQAgBTYCkNCAgAAMDAtBACgCjNCAgAAiCUUNASAJQQAgCWtxQX9qIgMgA0EMdkEQcSIDdiIEQQV2QQhxIgUgA3IgBCAFdiIDQQJ2QQRxIgRyIAMgBHYiA0EBdkECcSIEciADIAR2IgNBAXZBAXEiBHIgAyAEdmpBAnRBuNKAgABqKAIAIgAoAgRBeHEgAmshBCAAIQUCQANAAkAgBSgCECIDDQAgBUEUaigCACIDRQ0CCyADKAIEQXhxIAJrIgUgBCAFIARJIgUbIQQgAyAAIAUbIQAgAyEFDAALCyAAKAIYIQoCQCAAKAIMIgggAEYNACAAKAIIIgNBACgCmNCAgABJGiAIIAM2AgggAyAINgIMDAsLAkAgAEEUaiIFKAIAIgMNACAAKAIQIgNFDQMgAEEQaiEFCwNAIAUhCyADIghBFGoiBSgCACIDDQAgCEEQaiEFIAgoAhAiAw0ACyALQQA2AgAMCgtBfyECIABBv39LDQAgAEETaiIDQXBxIQJBACgCjNCAgAAiB0UNAEEAIQsCQCACQYACSQ0AQR8hCyACQf///wdLDQAgA0EIdiIDIANBgP4/akEQdkEIcSIDdCIEIARBgOAfakEQdkEEcSIEdCIFIAVBgIAPakEQdkECcSIFdEEPdiADIARyIAVyayIDQQF0IAIgA0EVanZBAXFyQRxqIQsLQQAgAmshBAJAAkACQAJAIAtBAnRBuNKAgABqKAIAIgUNAEEAIQNBACEIDAELQQAhAyACQQBBGSALQQF2ayALQR9GG3QhAEEAIQgDQAJAIAUoAgRBeHEgAmsiBiAETw0AIAYhBCAFIQggBg0AQQAhBCAFIQggBSEDDAMLIAMgBUEUaigCACIGIAYgBSAAQR12QQRxakEQaigCACIFRhsgAyAGGyEDIABBAXQhACAFDQALCwJAIAMgCHINAEEAIQhBAiALdCIDQQAgA2tyIAdxIgNFDQMgA0EAIANrcUF/aiIDIANBDHZBEHEiA3YiBUEFdkEIcSIAIANyIAUgAHYiA0ECdkEEcSIFciADIAV2IgNBAXZBAnEiBXIgAyAFdiIDQQF2QQFxIgVyIAMgBXZqQQJ0QbjSgIAAaigCACEDCyADRQ0BCwNAIAMoAgRBeHEgAmsiBiAESSEAAkAgAygCECIFDQAgA0EUaigCACEFCyAGIAQgABshBCADIAggABshCCAFIQMgBQ0ACwsgCEUNACAEQQAoApDQgIAAIAJrTw0AIAgoAhghCwJAIAgoAgwiACAIRg0AIAgoAggiA0EAKAKY0ICAAEkaIAAgAzYCCCADIAA2AgwMCQsCQCAIQRRqIgUoAgAiAw0AIAgoAhAiA0UNAyAIQRBqIQULA0AgBSEGIAMiAEEUaiIFKAIAIgMNACAAQRBqIQUgACgCECIDDQALIAZBADYCAAwICwJAQQAoApDQgIAAIgMgAkkNAEEAKAKc0ICAACEEAkACQCADIAJrIgVBEEkNACAEIAJqIgAgBUEBcjYCBEEAIAU2ApDQgIAAQQAgADYCnNCAgAAgBCADaiAFNgIAIAQgAkEDcjYCBAwBCyAEIANBA3I2AgQgBCADaiIDIAMoAgRBAXI2AgRBAEEANgKc0ICAAEEAQQA2ApDQgIAACyAEQQhqIQMMCgsCQEEAKAKU0ICAACIAIAJNDQBBACgCoNCAgAAiAyACaiIEIAAgAmsiBUEBcjYCBEEAIAU2ApTQgIAAQQAgBDYCoNCAgAAgAyACQQNyNgIEIANBCGohAwwKCwJAAkBBACgC4NOAgABFDQBBACgC6NOAgAAhBAwBC0EAQn83AuzTgIAAQQBCgICEgICAwAA3AuTTgIAAQQAgAUEMakFwcUHYqtWqBXM2AuDTgIAAQQBBADYC9NOAgABBAEEANgLE04CAAEGAgAQhBAtBACEDAkAgBCACQccAaiIHaiIGQQAgBGsiC3EiCCACSw0AQQBBMDYC+NOAgAAMCgsCQEEAKALA04CAACIDRQ0AAkBBACgCuNOAgAAiBCAIaiIFIARNDQAgBSADTQ0BC0EAIQNBAEEwNgL404CAAAwKC0EALQDE04CAAEEEcQ0EAkACQAJAQQAoAqDQgIAAIgRFDQBByNOAgAAhAwNAAkAgAygCACIFIARLDQAgBSADKAIEaiAESw0DCyADKAIIIgMNAAsLQQAQy4CAgAAiAEF/Rg0FIAghBgJAQQAoAuTTgIAAIgNBf2oiBCAAcUUNACAIIABrIAQgAGpBACADa3FqIQYLIAYgAk0NBSAGQf7///8HSw0FAkBBACgCwNOAgAAiA0UNAEEAKAK404CAACIEIAZqIgUgBE0NBiAFIANLDQYLIAYQy4CAgAAiAyAARw0BDAcLIAYgAGsgC3EiBkH+////B0sNBCAGEMuAgIAAIgAgAygCACADKAIEakYNAyAAIQMLAkAgA0F/Rg0AIAJByABqIAZNDQACQCAHIAZrQQAoAujTgIAAIgRqQQAgBGtxIgRB/v///wdNDQAgAyEADAcLAkAgBBDLgICAAEF/Rg0AIAQgBmohBiADIQAMBwtBACAGaxDLgICAABoMBAsgAyEAIANBf0cNBQwDC0EAIQgMBwtBACEADAULIABBf0cNAgtBAEEAKALE04CAAEEEcjYCxNOAgAALIAhB/v///wdLDQEgCBDLgICAACEAQQAQy4CAgAAhAyAAQX9GDQEgA0F/Rg0BIAAgA08NASADIABrIgYgAkE4ak0NAQtBAEEAKAK404CAACAGaiIDNgK404CAAAJAIANBACgCvNOAgABNDQBBACADNgK804CAAAsCQAJAAkACQEEAKAKg0ICAACIERQ0AQcjTgIAAIQMDQCAAIAMoAgAiBSADKAIEIghqRg0CIAMoAggiAw0ADAMLCwJAAkBBACgCmNCAgAAiA0UNACAAIANPDQELQQAgADYCmNCAgAALQQAhA0EAIAY2AszTgIAAQQAgADYCyNOAgABBAEF/NgKo0ICAAEEAQQAoAuDTgIAANgKs0ICAAEEAQQA2AtTTgIAAA0AgA0HE0ICAAGogA0G40ICAAGoiBDYCACAEIANBsNCAgABqIgU2AgAgA0G80ICAAGogBTYCACADQczQgIAAaiADQcDQgIAAaiIFNgIAIAUgBDYCACADQdTQgIAAaiADQcjQgIAAaiIENgIAIAQgBTYCACADQdDQgIAAaiAENgIAIANBIGoiA0GAAkcNAAsgAEF4IABrQQ9xQQAgAEEIakEPcRsiA2oiBCAGQUhqIgUgA2siA0EBcjYCBEEAQQAoAvDTgIAANgKk0ICAAEEAIAM2ApTQgIAAQQAgBDYCoNCAgAAgACAFakE4NgIEDAILIAMtAAxBCHENACAEIAVJDQAgBCAATw0AIARBeCAEa0EPcUEAIARBCGpBD3EbIgVqIgBBACgClNCAgAAgBmoiCyAFayIFQQFyNgIEIAMgCCAGajYCBEEAQQAoAvDTgIAANgKk0ICAAEEAIAU2ApTQgIAAQQAgADYCoNCAgAAgBCALakE4NgIEDAELAkAgAEEAKAKY0ICAACIITw0AQQAgADYCmNCAgAAgACEICyAAIAZqIQVByNOAgAAhAwJAAkACQAJAAkACQAJAA0AgAygCACAFRg0BIAMoAggiAw0ADAILCyADLQAMQQhxRQ0BC0HI04CAACEDA0ACQCADKAIAIgUgBEsNACAFIAMoAgRqIgUgBEsNAwsgAygCCCEDDAALCyADIAA2AgAgAyADKAIEIAZqNgIEIABBeCAAa0EPcUEAIABBCGpBD3EbaiILIAJBA3I2AgQgBUF4IAVrQQ9xQQAgBUEIakEPcRtqIgYgCyACaiICayEDAkAgBiAERw0AQQAgAjYCoNCAgABBAEEAKAKU0ICAACADaiIDNgKU0ICAACACIANBAXI2AgQMAwsCQCAGQQAoApzQgIAARw0AQQAgAjYCnNCAgABBAEEAKAKQ0ICAACADaiIDNgKQ0ICAACACIANBAXI2AgQgAiADaiADNgIADAMLAkAgBigCBCIEQQNxQQFHDQAgBEF4cSEHAkACQCAEQf8BSw0AIAYoAggiBSAEQQN2IghBA3RBsNCAgABqIgBGGgJAIAYoAgwiBCAFRw0AQQBBACgCiNCAgABBfiAId3E2AojQgIAADAILIAQgAEYaIAQgBTYCCCAFIAQ2AgwMAQsgBigCGCEJAkACQCAGKAIMIgAgBkYNACAGKAIIIgQgCEkaIAAgBDYCCCAEIAA2AgwMAQsCQCAGQRRqIgQoAgAiBQ0AIAZBEGoiBCgCACIFDQBBACEADAELA0AgBCEIIAUiAEEUaiIEKAIAIgUNACAAQRBqIQQgACgCECIFDQALIAhBADYCAAsgCUUNAAJAAkAgBiAGKAIcIgVBAnRBuNKAgABqIgQoAgBHDQAgBCAANgIAIAANAUEAQQAoAozQgIAAQX4gBXdxNgKM0ICAAAwCCyAJQRBBFCAJKAIQIAZGG2ogADYCACAARQ0BCyAAIAk2AhgCQCAGKAIQIgRFDQAgACAENgIQIAQgADYCGAsgBigCFCIERQ0AIABBFGogBDYCACAEIAA2AhgLIAcgA2ohAyAGIAdqIgYoAgQhBAsgBiAEQX5xNgIEIAIgA2ogAzYCACACIANBAXI2AgQCQCADQf8BSw0AIANBeHFBsNCAgABqIQQCQAJAQQAoAojQgIAAIgVBASADQQN2dCIDcQ0AQQAgBSADcjYCiNCAgAAgBCEDDAELIAQoAgghAwsgAyACNgIMIAQgAjYCCCACIAQ2AgwgAiADNgIIDAMLQR8hBAJAIANB////B0sNACADQQh2IgQgBEGA/j9qQRB2QQhxIgR0IgUgBUGA4B9qQRB2QQRxIgV0IgAgAEGAgA9qQRB2QQJxIgB0QQ92IAQgBXIgAHJrIgRBAXQgAyAEQRVqdkEBcXJBHGohBAsgAiAENgIcIAJCADcCECAEQQJ0QbjSgIAAaiEFAkBBACgCjNCAgAAiAEEBIAR0IghxDQAgBSACNgIAQQAgACAIcjYCjNCAgAAgAiAFNgIYIAIgAjYCCCACIAI2AgwMAwsgA0EAQRkgBEEBdmsgBEEfRht0IQQgBSgCACEAA0AgACIFKAIEQXhxIANGDQIgBEEddiEAIARBAXQhBCAFIABBBHFqQRBqIggoAgAiAA0ACyAIIAI2AgAgAiAFNgIYIAIgAjYCDCACIAI2AggMAgsgAEF4IABrQQ9xQQAgAEEIakEPcRsiA2oiCyAGQUhqIgggA2siA0EBcjYCBCAAIAhqQTg2AgQgBCAFQTcgBWtBD3FBACAFQUlqQQ9xG2pBQWoiCCAIIARBEGpJGyIIQSM2AgRBAEEAKALw04CAADYCpNCAgABBACADNgKU0ICAAEEAIAs2AqDQgIAAIAhBEGpBACkC0NOAgAA3AgAgCEEAKQLI04CAADcCCEEAIAhBCGo2AtDTgIAAQQAgBjYCzNOAgABBACAANgLI04CAAEEAQQA2AtTTgIAAIAhBJGohAwNAIANBBzYCACADQQRqIgMgBUkNAAsgCCAERg0DIAggCCgCBEF+cTYCBCAIIAggBGsiADYCACAEIABBAXI2AgQCQCAAQf8BSw0AIABBeHFBsNCAgABqIQMCQAJAQQAoAojQgIAAIgVBASAAQQN2dCIAcQ0AQQAgBSAAcjYCiNCAgAAgAyEFDAELIAMoAgghBQsgBSAENgIMIAMgBDYCCCAEIAM2AgwgBCAFNgIIDAQLQR8hAwJAIABB////B0sNACAAQQh2IgMgA0GA/j9qQRB2QQhxIgN0IgUgBUGA4B9qQRB2QQRxIgV0IgggCEGAgA9qQRB2QQJxIgh0QQ92IAMgBXIgCHJrIgNBAXQgACADQRVqdkEBcXJBHGohAwsgBCADNgIcIARCADcCECADQQJ0QbjSgIAAaiEFAkBBACgCjNCAgAAiCEEBIAN0IgZxDQAgBSAENgIAQQAgCCAGcjYCjNCAgAAgBCAFNgIYIAQgBDYCCCAEIAQ2AgwMBAsgAEEAQRkgA0EBdmsgA0EfRht0IQMgBSgCACEIA0AgCCIFKAIEQXhxIABGDQMgA0EddiEIIANBAXQhAyAFIAhBBHFqQRBqIgYoAgAiCA0ACyAGIAQ2AgAgBCAFNgIYIAQgBDYCDCAEIAQ2AggMAwsgBSgCCCIDIAI2AgwgBSACNgIIIAJBADYCGCACIAU2AgwgAiADNgIICyALQQhqIQMMBQsgBSgCCCIDIAQ2AgwgBSAENgIIIARBADYCGCAEIAU2AgwgBCADNgIIC0EAKAKU0ICAACIDIAJNDQBBACgCoNCAgAAiBCACaiIFIAMgAmsiA0EBcjYCBEEAIAM2ApTQgIAAQQAgBTYCoNCAgAAgBCACQQNyNgIEIARBCGohAwwDC0EAIQNBAEEwNgL404CAAAwCCwJAIAtFDQACQAJAIAggCCgCHCIFQQJ0QbjSgIAAaiIDKAIARw0AIAMgADYCACAADQFBACAHQX4gBXdxIgc2AozQgIAADAILIAtBEEEUIAsoAhAgCEYbaiAANgIAIABFDQELIAAgCzYCGAJAIAgoAhAiA0UNACAAIAM2AhAgAyAANgIYCyAIQRRqKAIAIgNFDQAgAEEUaiADNgIAIAMgADYCGAsCQAJAIARBD0sNACAIIAQgAmoiA0EDcjYCBCAIIANqIgMgAygCBEEBcjYCBAwBCyAIIAJqIgAgBEEBcjYCBCAIIAJBA3I2AgQgACAEaiAENgIAAkAgBEH/AUsNACAEQXhxQbDQgIAAaiEDAkACQEEAKAKI0ICAACIFQQEgBEEDdnQiBHENAEEAIAUgBHI2AojQgIAAIAMhBAwBCyADKAIIIQQLIAQgADYCDCADIAA2AgggACADNgIMIAAgBDYCCAwBC0EfIQMCQCAEQf///wdLDQAgBEEIdiIDIANBgP4/akEQdkEIcSIDdCIFIAVBgOAfakEQdkEEcSIFdCICIAJBgIAPakEQdkECcSICdEEPdiADIAVyIAJyayIDQQF0IAQgA0EVanZBAXFyQRxqIQMLIAAgAzYCHCAAQgA3AhAgA0ECdEG40oCAAGohBQJAIAdBASADdCICcQ0AIAUgADYCAEEAIAcgAnI2AozQgIAAIAAgBTYCGCAAIAA2AgggACAANgIMDAELIARBAEEZIANBAXZrIANBH0YbdCEDIAUoAgAhAgJAA0AgAiIFKAIEQXhxIARGDQEgA0EddiECIANBAXQhAyAFIAJBBHFqQRBqIgYoAgAiAg0ACyAGIAA2AgAgACAFNgIYIAAgADYCDCAAIAA2AggMAQsgBSgCCCIDIAA2AgwgBSAANgIIIABBADYCGCAAIAU2AgwgACADNgIICyAIQQhqIQMMAQsCQCAKRQ0AAkACQCAAIAAoAhwiBUECdEG40oCAAGoiAygCAEcNACADIAg2AgAgCA0BQQAgCUF+IAV3cTYCjNCAgAAMAgsgCkEQQRQgCigCECAARhtqIAg2AgAgCEUNAQsgCCAKNgIYAkAgACgCECIDRQ0AIAggAzYCECADIAg2AhgLIABBFGooAgAiA0UNACAIQRRqIAM2AgAgAyAINgIYCwJAAkAgBEEPSw0AIAAgBCACaiIDQQNyNgIEIAAgA2oiAyADKAIEQQFyNgIEDAELIAAgAmoiBSAEQQFyNgIEIAAgAkEDcjYCBCAFIARqIAQ2AgACQCAHRQ0AIAdBeHFBsNCAgABqIQJBACgCnNCAgAAhAwJAAkBBASAHQQN2dCIIIAZxDQBBACAIIAZyNgKI0ICAACACIQgMAQsgAigCCCEICyAIIAM2AgwgAiADNgIIIAMgAjYCDCADIAg2AggLQQAgBTYCnNCAgABBACAENgKQ0ICAAAsgAEEIaiEDCyABQRBqJICAgIAAIAMLCgAgABDJgICAAAviDQEHfwJAIABFDQAgAEF4aiIBIABBfGooAgAiAkF4cSIAaiEDAkAgAkEBcQ0AIAJBA3FFDQEgASABKAIAIgJrIgFBACgCmNCAgAAiBEkNASACIABqIQACQCABQQAoApzQgIAARg0AAkAgAkH/AUsNACABKAIIIgQgAkEDdiIFQQN0QbDQgIAAaiIGRhoCQCABKAIMIgIgBEcNAEEAQQAoAojQgIAAQX4gBXdxNgKI0ICAAAwDCyACIAZGGiACIAQ2AgggBCACNgIMDAILIAEoAhghBwJAAkAgASgCDCIGIAFGDQAgASgCCCICIARJGiAGIAI2AgggAiAGNgIMDAELAkAgAUEUaiICKAIAIgQNACABQRBqIgIoAgAiBA0AQQAhBgwBCwNAIAIhBSAEIgZBFGoiAigCACIEDQAgBkEQaiECIAYoAhAiBA0ACyAFQQA2AgALIAdFDQECQAJAIAEgASgCHCIEQQJ0QbjSgIAAaiICKAIARw0AIAIgBjYCACAGDQFBAEEAKAKM0ICAAEF+IAR3cTYCjNCAgAAMAwsgB0EQQRQgBygCECABRhtqIAY2AgAgBkUNAgsgBiAHNgIYAkAgASgCECICRQ0AIAYgAjYCECACIAY2AhgLIAEoAhQiAkUNASAGQRRqIAI2AgAgAiAGNgIYDAELIAMoAgQiAkEDcUEDRw0AIAMgAkF+cTYCBEEAIAA2ApDQgIAAIAEgAGogADYCACABIABBAXI2AgQPCyABIANPDQAgAygCBCICQQFxRQ0AAkACQCACQQJxDQACQCADQQAoAqDQgIAARw0AQQAgATYCoNCAgABBAEEAKAKU0ICAACAAaiIANgKU0ICAACABIABBAXI2AgQgAUEAKAKc0ICAAEcNA0EAQQA2ApDQgIAAQQBBADYCnNCAgAAPCwJAIANBACgCnNCAgABHDQBBACABNgKc0ICAAEEAQQAoApDQgIAAIABqIgA2ApDQgIAAIAEgAEEBcjYCBCABIABqIAA2AgAPCyACQXhxIABqIQACQAJAIAJB/wFLDQAgAygCCCIEIAJBA3YiBUEDdEGw0ICAAGoiBkYaAkAgAygCDCICIARHDQBBAEEAKAKI0ICAAEF+IAV3cTYCiNCAgAAMAgsgAiAGRhogAiAENgIIIAQgAjYCDAwBCyADKAIYIQcCQAJAIAMoAgwiBiADRg0AIAMoAggiAkEAKAKY0ICAAEkaIAYgAjYCCCACIAY2AgwMAQsCQCADQRRqIgIoAgAiBA0AIANBEGoiAigCACIEDQBBACEGDAELA0AgAiEFIAQiBkEUaiICKAIAIgQNACAGQRBqIQIgBigCECIEDQALIAVBADYCAAsgB0UNAAJAAkAgAyADKAIcIgRBAnRBuNKAgABqIgIoAgBHDQAgAiAGNgIAIAYNAUEAQQAoAozQgIAAQX4gBHdxNgKM0ICAAAwCCyAHQRBBFCAHKAIQIANGG2ogBjYCACAGRQ0BCyAGIAc2AhgCQCADKAIQIgJFDQAgBiACNgIQIAIgBjYCGAsgAygCFCICRQ0AIAZBFGogAjYCACACIAY2AhgLIAEgAGogADYCACABIABBAXI2AgQgAUEAKAKc0ICAAEcNAUEAIAA2ApDQgIAADwsgAyACQX5xNgIEIAEgAGogADYCACABIABBAXI2AgQLAkAgAEH/AUsNACAAQXhxQbDQgIAAaiECAkACQEEAKAKI0ICAACIEQQEgAEEDdnQiAHENAEEAIAQgAHI2AojQgIAAIAIhAAwBCyACKAIIIQALIAAgATYCDCACIAE2AgggASACNgIMIAEgADYCCA8LQR8hAgJAIABB////B0sNACAAQQh2IgIgAkGA/j9qQRB2QQhxIgJ0IgQgBEGA4B9qQRB2QQRxIgR0IgYgBkGAgA9qQRB2QQJxIgZ0QQ92IAIgBHIgBnJrIgJBAXQgACACQRVqdkEBcXJBHGohAgsgASACNgIcIAFCADcCECACQQJ0QbjSgIAAaiEEAkACQEEAKAKM0ICAACIGQQEgAnQiA3ENACAEIAE2AgBBACAGIANyNgKM0ICAACABIAQ2AhggASABNgIIIAEgATYCDAwBCyAAQQBBGSACQQF2ayACQR9GG3QhAiAEKAIAIQYCQANAIAYiBCgCBEF4cSAARg0BIAJBHXYhBiACQQF0IQIgBCAGQQRxakEQaiIDKAIAIgYNAAsgAyABNgIAIAEgBDYCGCABIAE2AgwgASABNgIIDAELIAQoAggiACABNgIMIAQgATYCCCABQQA2AhggASAENgIMIAEgADYCCAtBAEEAKAKo0ICAAEF/aiIBQX8gARs2AqjQgIAACwsEAAAAC04AAkAgAA0APwBBEHQPCwJAIABB//8DcQ0AIABBf0wNAAJAIABBEHZAACIAQX9HDQBBAEEwNgL404CAAEF/DwsgAEEQdA8LEMqAgIAAAAvyAgIDfwF+AkAgAkUNACAAIAE6AAAgAiAAaiIDQX9qIAE6AAAgAkEDSQ0AIAAgAToAAiAAIAE6AAEgA0F9aiABOgAAIANBfmogAToAACACQQdJDQAgACABOgADIANBfGogAToAACACQQlJDQAgAEEAIABrQQNxIgRqIgMgAUH/AXFBgYKECGwiATYCACADIAIgBGtBfHEiBGoiAkF8aiABNgIAIARBCUkNACADIAE2AgggAyABNgIEIAJBeGogATYCACACQXRqIAE2AgAgBEEZSQ0AIAMgATYCGCADIAE2AhQgAyABNgIQIAMgATYCDCACQXBqIAE2AgAgAkFsaiABNgIAIAJBaGogATYCACACQWRqIAE2AgAgBCADQQRxQRhyIgVrIgJBIEkNACABrUKBgICAEH4hBiADIAVqIQEDQCABIAY3AxggASAGNwMQIAEgBjcDCCABIAY3AwAgAUEgaiEBIAJBYGoiAkEfSw0ACwsgAAsLjkgBAEGACAuGSAEAAAACAAAAAwAAAAAAAAAAAAAABAAAAAUAAAAAAAAAAAAAAAYAAAAHAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASW52YWxpZCBjaGFyIGluIHVybCBxdWVyeQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2JvZHkAQ29udGVudC1MZW5ndGggb3ZlcmZsb3cAQ2h1bmsgc2l6ZSBvdmVyZmxvdwBSZXNwb25zZSBvdmVyZmxvdwBJbnZhbGlkIG1ldGhvZCBmb3IgSFRUUC94LnggcmVxdWVzdABJbnZhbGlkIG1ldGhvZCBmb3IgUlRTUC94LnggcmVxdWVzdABFeHBlY3RlZCBTT1VSQ0UgbWV0aG9kIGZvciBJQ0UveC54IHJlcXVlc3QASW52YWxpZCBjaGFyIGluIHVybCBmcmFnbWVudCBzdGFydABFeHBlY3RlZCBkb3QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9zdGF0dXMASW52YWxpZCByZXNwb25zZSBzdGF0dXMASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucwBVc2VyIGNhbGxiYWNrIGVycm9yAGBvbl9yZXNldGAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2hlYWRlcmAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfYmVnaW5gIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fdmFsdWVgIGNhbGxiYWNrIGVycm9yAGBvbl9zdGF0dXNfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl92ZXJzaW9uX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdXJsX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAEVtcHR5IENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhcmFjdGVyIGluIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBNaXNzaW5nIGV4cGVjdGVkIExGIGFmdGVyIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AgaGVhZGVyIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGUgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZWQgdmFsdWUAUGF1c2VkIGJ5IG9uX2hlYWRlcnNfY29tcGxldGUASW52YWxpZCBFT0Ygc3RhdGUAb25fcmVzZXQgcGF1c2UAb25fY2h1bmtfaGVhZGVyIHBhdXNlAG9uX21lc3NhZ2VfYmVnaW4gcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlIHBhdXNlAG9uX3N0YXR1c19jb21wbGV0ZSBwYXVzZQBvbl92ZXJzaW9uX2NvbXBsZXRlIHBhdXNlAG9uX3VybF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGUgcGF1c2UAb25fbWVzc2FnZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXRob2RfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lIHBhdXNlAFVuZXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgc3RhcnQgbGluZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgbmFtZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AAU1dJVENIX1BST1hZAFVTRV9QUk9YWQBNS0FDVElWSVRZAFVOUFJPQ0VTU0FCTEVfRU5USVRZAENPUFkATU9WRURfUEVSTUFORU5UTFkAVE9PX0VBUkxZAE5PVElGWQBGQUlMRURfREVQRU5ERU5DWQBCQURfR0FURVdBWQBQTEFZAFBVVABDSEVDS09VVABHQVRFV0FZX1RJTUVPVVQAUkVRVUVTVF9USU1FT1VUAE5FVFdPUktfQ09OTkVDVF9USU1FT1VUAENPTk5FQ1RJT05fVElNRU9VVABMT0dJTl9USU1FT1VUAE5FVFdPUktfUkVBRF9USU1FT1VUAFBPU1QATUlTRElSRUNURURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9MT0FEX0JBTEFOQ0VEX1JFUVVFU1QAQkFEX1JFUVVFU1QASFRUUF9SRVFVRVNUX1NFTlRfVE9fSFRUUFNfUE9SVABSRVBPUlQASU1fQV9URUFQT1QAUkVTRVRfQ09OVEVOVABOT19DT05URU5UAFBBUlRJQUxfQ09OVEVOVABIUEVfSU5WQUxJRF9DT05TVEFOVABIUEVfQ0JfUkVTRVQAR0VUAEhQRV9TVFJJQ1QAQ09ORkxJQ1QAVEVNUE9SQVJZX1JFRElSRUNUAFBFUk1BTkVOVF9SRURJUkVDVABDT05ORUNUAE1VTFRJX1NUQVRVUwBIUEVfSU5WQUxJRF9TVEFUVVMAVE9PX01BTllfUkVRVUVTVFMARUFSTFlfSElOVFMAVU5BVkFJTEFCTEVfRk9SX0xFR0FMX1JFQVNPTlMAT1BUSU9OUwBTV0lUQ0hJTkdfUFJPVE9DT0xTAFZBUklBTlRfQUxTT19ORUdPVElBVEVTAE1VTFRJUExFX0NIT0lDRVMASU5URVJOQUxfU0VSVkVSX0VSUk9SAFdFQl9TRVJWRVJfVU5LTk9XTl9FUlJPUgBSQUlMR1VOX0VSUk9SAElERU5USVRZX1BST1ZJREVSX0FVVEhFTlRJQ0FUSU9OX0VSUk9SAFNTTF9DRVJUSUZJQ0FURV9FUlJPUgBJTlZBTElEX1hfRk9SV0FSREVEX0ZPUgBTRVRfUEFSQU1FVEVSAEdFVF9QQVJBTUVURVIASFBFX1VTRVIAU0VFX09USEVSAEhQRV9DQl9DSFVOS19IRUFERVIATUtDQUxFTkRBUgBTRVRVUABXRUJfU0VSVkVSX0lTX0RPV04AVEVBUkRPV04ASFBFX0NMT1NFRF9DT05ORUNUSU9OAEhFVVJJU1RJQ19FWFBJUkFUSU9OAERJU0NPTk5FQ1RFRF9PUEVSQVRJT04ATk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04ASFBFX0lOVkFMSURfVkVSU0lPTgBIUEVfQ0JfTUVTU0FHRV9CRUdJTgBTSVRFX0lTX0ZST1pFTgBIUEVfSU5WQUxJRF9IRUFERVJfVE9LRU4ASU5WQUxJRF9UT0tFTgBGT1JCSURERU4ARU5IQU5DRV9ZT1VSX0NBTE0ASFBFX0lOVkFMSURfVVJMAEJMT0NLRURfQllfUEFSRU5UQUxfQ09OVFJPTABNS0NPTABBQ0wASFBFX0lOVEVSTkFMAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0VfVU5PRkZJQ0lBTABIUEVfT0sAVU5MSU5LAFVOTE9DSwBQUkkAUkVUUllfV0lUSABIUEVfSU5WQUxJRF9DT05URU5UX0xFTkdUSABIUEVfVU5FWFBFQ1RFRF9DT05URU5UX0xFTkdUSABGTFVTSABQUk9QUEFUQ0gATS1TRUFSQ0gAVVJJX1RPT19MT05HAFBST0NFU1NJTkcATUlTQ0VMTEFORU9VU19QRVJTSVNURU5UX1dBUk5JTkcATUlTQ0VMTEFORU9VU19XQVJOSU5HAEhQRV9JTlZBTElEX1RSQU5TRkVSX0VOQ09ESU5HAEV4cGVjdGVkIENSTEYASFBFX0lOVkFMSURfQ0hVTktfU0laRQBNT1ZFAENPTlRJTlVFAEhQRV9DQl9TVEFUVVNfQ09NUExFVEUASFBFX0NCX0hFQURFUlNfQ09NUExFVEUASFBFX0NCX1ZFUlNJT05fQ09NUExFVEUASFBFX0NCX1VSTF9DT01QTEVURQBIUEVfQ0JfQ0hVTktfQ09NUExFVEUASFBFX0NCX0hFQURFUl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fTkFNRV9DT01QTEVURQBIUEVfQ0JfTUVTU0FHRV9DT01QTEVURQBIUEVfQ0JfTUVUSE9EX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfRklFTERfQ09NUExFVEUAREVMRVRFAEhQRV9JTlZBTElEX0VPRl9TVEFURQBJTlZBTElEX1NTTF9DRVJUSUZJQ0FURQBQQVVTRQBOT19SRVNQT05TRQBVTlNVUFBPUlRFRF9NRURJQV9UWVBFAEdPTkUATk9UX0FDQ0VQVEFCTEUAU0VSVklDRV9VTkFWQUlMQUJMRQBSQU5HRV9OT1RfU0FUSVNGSUFCTEUAT1JJR0lOX0lTX1VOUkVBQ0hBQkxFAFJFU1BPTlNFX0lTX1NUQUxFAFBVUkdFAE1FUkdFAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UAUkVRVUVTVF9IRUFERVJfVE9PX0xBUkdFAFBBWUxPQURfVE9PX0xBUkdFAElOU1VGRklDSUVOVF9TVE9SQUdFAEhQRV9QQVVTRURfVVBHUkFERQBIUEVfUEFVU0VEX0gyX1VQR1JBREUAU09VUkNFAEFOTk9VTkNFAFRSQUNFAEhQRV9VTkVYUEVDVEVEX1NQQUNFAERFU0NSSUJFAFVOU1VCU0NSSUJFAFJFQ09SRABIUEVfSU5WQUxJRF9NRVRIT0QATk9UX0ZPVU5EAFBST1BGSU5EAFVOQklORABSRUJJTkQAVU5BVVRIT1JJWkVEAE1FVEhPRF9OT1RfQUxMT1dFRABIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRABBTFJFQURZX1JFUE9SVEVEAEFDQ0VQVEVEAE5PVF9JTVBMRU1FTlRFRABMT09QX0RFVEVDVEVEAEhQRV9DUl9FWFBFQ1RFRABIUEVfTEZfRVhQRUNURUQAQ1JFQVRFRABJTV9VU0VEAEhQRV9QQVVTRUQAVElNRU9VVF9PQ0NVUkVEAFBBWU1FTlRfUkVRVUlSRUQAUFJFQ09ORElUSU9OX1JFUVVJUkVEAFBST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAE5FVFdPUktfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATEVOR1RIX1JFUVVJUkVEAFNTTF9DRVJUSUZJQ0FURV9SRVFVSVJFRABVUEdSQURFX1JFUVVJUkVEAFBBR0VfRVhQSVJFRABQUkVDT05ESVRJT05fRkFJTEVEAEVYUEVDVEFUSU9OX0ZBSUxFRABSRVZBTElEQVRJT05fRkFJTEVEAFNTTF9IQU5EU0hBS0VfRkFJTEVEAExPQ0tFRABUUkFOU0ZPUk1BVElPTl9BUFBMSUVEAE5PVF9NT0RJRklFRABOT1RfRVhURU5ERUQAQkFORFdJRFRIX0xJTUlUX0VYQ0VFREVEAFNJVEVfSVNfT1ZFUkxPQURFRABIRUFEAEV4cGVjdGVkIEhUVFAvAABeEwAAJhMAADAQAADwFwAAnRMAABUSAAA5FwAA8BIAAAoQAAB1EgAArRIAAIITAABPFAAAfxAAAKAVAAAjFAAAiRIAAIsUAABNFQAA1BEAAM8UAAAQGAAAyRYAANwWAADBEQAA4BcAALsUAAB0FAAAfBUAAOUUAAAIFwAAHxAAAGUVAACjFAAAKBUAAAIVAACZFQAALBAAAIsZAABPDwAA1A4AAGoQAADOEAAAAhcAAIkOAABuEwAAHBMAAGYUAABWFwAAwRMAAM0TAABsEwAAaBcAAGYXAABfFwAAIhMAAM4PAABpDgAA2A4AAGMWAADLEwAAqg4AACgXAAAmFwAAxRMAAF0WAADoEQAAZxMAAGUTAADyFgAAcxMAAB0XAAD5FgAA8xEAAM8OAADOFQAADBIAALMRAAClEQAAYRAAADIXAAC7EwAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAgMCAgICAgAAAgIAAgIAAgICAgICAgICAgAEAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAIAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAIAAgICAgIAAAICAAICAAICAgICAgICAgIAAwAEAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABsb3NlZWVwLWFsaXZlAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFjaHVua2VkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGVjdGlvbmVudC1sZW5ndGhvbnJveHktY29ubmVjdGlvbgAAAAAAAAAAAAAAAAAAAHJhbnNmZXItZW5jb2RpbmdwZ3JhZGUNCg0KDQpTTQ0KDQpUVFAvQ0UvVFNQLwAAAAAAAAAAAAAAAAECAAEDAAAAAAAAAAAAAAAAAAAAAAAABAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAgABAwAAAAAAAAAAAAAAAAAAAAAAAAQBAQUBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAABAAACAAAAAAAAAAAAAAAAAAAAAAAAAwQAAAQEBAQEBAQEBAQEBQQEBAQEBAQEBAQEBAAEAAYHBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAgAAAAACAAAAAAAAAAAAAAAAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE5PVU5DRUVDS09VVE5FQ1RFVEVDUklCRUxVU0hFVEVBRFNFQVJDSFJHRUNUSVZJVFlMRU5EQVJWRU9USUZZUFRJT05TQ0hTRUFZU1RBVENIR0VPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFSFRUUC9BRFRQLw=="});var P3e=z((WKc,qwn)=>{"use strict";var bA=xt("assert"),Zwn=xt("net"),ugo=xt("http"),{pipeline:ggo}=xt("stream"),bp=Ch(),Aqt=Xvn(),pqt=hwn(),Ago=D3e(),{RequestContentLengthMismatchError:Uj,ResponseContentLengthMismatchError:dgo,InvalidArgumentError:iS,RequestAbortedError:bqt,HeadersTimeoutError:pgo,HeadersOverflowError:fgo,SocketError:D1e,InformationalError:rU,BodyTimeoutError:Igo,HTTPParserError:Cgo,ResponseExceededMaxSizeError:mgo,ClientDestroyedError:hgo}=yb(),_go=x3e(),{kUrl:ZD,kReset:xF,kServerName:oie,kClient:nU,kBusy:fqt,kParser:$B,kConnect:ygo,kBlocking:x1e,kResuming:hde,kRunning:oB,kPending:yde,kSize:_de,kWriting:Kj,kQueue:n1,kConnected:bgo,kConnecting:R1e,kNeedDrain:cie,kNoRef:G3e,kKeepAliveDefaultTimeout:Iqt,kHostHeader:Lwn,kPendingIdx:NW,kRunningIdx:i1,kError:LD,kPipelining:lie,kSocket:ev,kKeepAliveTimeoutValue:L3e,kMaxHeadersSize:Elt,kKeepAliveMaxTimeout:Vwn,kKeepAliveTimeoutThreshold:Wwn,kHeadersTimeout:Pwn,kBodyTimeout:Own,kStrictContentLength:V3e,kConnector:F3e,kMaxRedirections:Ego,kMaxRequests:W3e,kCounter:Qwn,kClose:Bgo,kDestroy:vgo,kDispatch:Sgo,kInterceptors:wgo,kLocalAddress:Z3e,kMaxResponseSize:Mwn,kHTTPConnVersion:iU,kHost:Hwn,kHTTP2Session:RW,kHTTP2SessionState:vlt,kHTTP2BuildRequest:Tgo,kHTTP2CopyHeaders:Ngo,kHTTP1BuildRequest:Rgo}=lE(),Slt;try{Slt=xt("http2")}catch{Slt={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:Dgo,HTTP2_HEADER_METHOD:xgo,HTTP2_HEADER_PATH:kgo,HTTP2_HEADER_SCHEME:Ggo,HTTP2_HEADER_CONTENT_LENGTH:Fgo,HTTP2_HEADER_EXPECT:Zgo,HTTP2_HEADER_STATUS:Lgo}}=Slt,Gwn=!1,ylt=Buffer[Symbol.species],aie=Symbol("kClosedResolve"),wk={};try{let e=xt("diagnostics_channel");wk.sendHeaders=e.channel("undici:client:sendHeaders"),wk.beforeConnect=e.channel("undici:client:beforeConnect"),wk.connectError=e.channel("undici:client:connectError"),wk.connected=e.channel("undici:client:connected")}catch{wk.sendHeaders={hasSubscribers:!1},wk.beforeConnect={hasSubscribers:!1},wk.connectError={hasSubscribers:!1},wk.connected={hasSubscribers:!1}}var Cqt=class extends Ago{constructor(t,{interceptors:r,maxHeaderSize:s,headersTimeout:a,socketTimeout:o,requestTimeout:g,connectTimeout:p,bodyTimeout:f,idleTimeout:m,keepAlive:y,keepAliveTimeout:B,maxKeepAliveTimeout:v,keepAliveMaxTimeout:k,keepAliveTimeoutThreshold:T,socketPath:O,pipelining:X,tls:U,strictContentLength:le,maxCachedSessions:ae,maxRedirections:ge,connect:fe,maxRequestsPerClient:pe,localAddress:he,maxResponseSize:be,autoSelectFamily:Te,autoSelectFamilyAttemptTimeout:ke,allowH2:x,maxConcurrentStreams:et}={}){if(super(),y!==void 0)throw new iS("unsupported keepAlive, use pipelining=0 instead");if(o!==void 0)throw new iS("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(g!==void 0)throw new iS("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(m!==void 0)throw new iS("unsupported idleTimeout, use keepAliveTimeout instead");if(v!==void 0)throw new iS("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(s!=null&&!Number.isFinite(s))throw new iS("invalid maxHeaderSize");if(O!=null&&typeof O!="string")throw new iS("invalid socketPath");if(p!=null&&(!Number.isFinite(p)||p<0))throw new iS("invalid connectTimeout");if(B!=null&&(!Number.isFinite(B)||B<=0))throw new iS("invalid keepAliveTimeout");if(k!=null&&(!Number.isFinite(k)||k<=0))throw new iS("invalid keepAliveMaxTimeout");if(T!=null&&!Number.isFinite(T))throw new iS("invalid keepAliveTimeoutThreshold");if(a!=null&&(!Number.isInteger(a)||a<0))throw new iS("headersTimeout must be a positive integer or zero");if(f!=null&&(!Number.isInteger(f)||f<0))throw new iS("bodyTimeout must be a positive integer or zero");if(fe!=null&&typeof fe!="function"&&typeof fe!="object")throw new iS("connect must be a function or an object");if(ge!=null&&(!Number.isInteger(ge)||ge<0))throw new iS("maxRedirections must be a positive number");if(pe!=null&&(!Number.isInteger(pe)||pe<0))throw new iS("maxRequestsPerClient must be a positive number");if(he!=null&&(typeof he!="string"||Zwn.isIP(he)===0))throw new iS("localAddress must be valid string IP address");if(be!=null&&(!Number.isInteger(be)||be<-1))throw new iS("maxResponseSize must be a positive number");if(ke!=null&&(!Number.isInteger(ke)||ke<-1))throw new iS("autoSelectFamilyAttemptTimeout must be a positive number");if(x!=null&&typeof x!="boolean")throw new iS("allowH2 must be a valid boolean value");if(et!=null&&(typeof et!="number"||et<1))throw new iS("maxConcurrentStreams must be a possitive integer, greater than 0");typeof fe!="function"&&(fe=_go({...U,maxCachedSessions:ae,allowH2:x,socketPath:O,timeout:p,...bp.nodeHasAutoSelectFamily&&Te?{autoSelectFamily:Te,autoSelectFamilyAttemptTimeout:ke}:void 0,...fe})),this[wgo]=r&&r.Client&&Array.isArray(r.Client)?r.Client:[Qgo({maxRedirections:ge})],this[ZD]=bp.parseOrigin(t),this[F3e]=fe,this[ev]=null,this[lie]=X??1,this[Elt]=s||ugo.maxHeaderSize,this[Iqt]=B??4e3,this[Vwn]=k??6e5,this[Wwn]=T??1e3,this[L3e]=this[Iqt],this[oie]=null,this[Z3e]=he??null,this[hde]=0,this[cie]=0,this[Lwn]=`host: ${this[ZD].hostname}${this[ZD].port?`:${this[ZD].port}`:""}\r +`,this[Own]=f??3e5,this[Pwn]=a??3e5,this[V3e]=le??!0,this[Ego]=ge,this[W3e]=pe,this[aie]=null,this[Mwn]=be>-1?be:-1,this[iU]="h1",this[RW]=null,this[vlt]=x?{openStreams:0,maxConcurrentStreams:et??100}:null,this[Hwn]=`${this[ZD].hostname}${this[ZD].port?`:${this[ZD].port}`:""}`,this[n1]=[],this[i1]=0,this[NW]=0}get pipelining(){return this[lie]}set pipelining(t){this[lie]=t,DW(this,!0)}get[yde](){return this[n1].length-this[NW]}get[oB](){return this[NW]-this[i1]}get[_de](){return this[n1].length-this[i1]}get[bgo](){return!!this[ev]&&!this[R1e]&&!this[ev].destroyed}get[fqt](){let t=this[ev];return t&&(t[xF]||t[Kj]||t[x1e])||this[_de]>=(this[lie]||1)||this[yde]>0}[ygo](t){Uwn(this),this.once("connect",t)}[Sgo](t,r){let s=t.origin||this[ZD].origin,a=this[iU]==="h2"?pqt[Tgo](s,t,r):pqt[Rgo](s,t,r);return this[n1].push(a),this[hde]||(bp.bodyLength(a.body)==null&&bp.isIterable(a.body)?(this[hde]=1,process.nextTick(DW,this)):DW(this,!0)),this[hde]&&this[cie]!==2&&this[fqt]&&(this[cie]=2),this[cie]<2}async[Bgo](){return new Promise(t=>{this[_de]?this[aie]=t:t(null)})}async[vgo](t){return new Promise(r=>{let s=this[n1].splice(this[NW]);for(let o=0;o{this[aie]&&(this[aie](),this[aie]=null),r()};this[RW]!=null&&(bp.destroy(this[RW],t),this[RW]=null,this[vlt]=null),this[ev]?bp.destroy(this[ev].on("close",a),t):queueMicrotask(a),DW(this)})}};function Vgo(e){bA(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[ev][LD]=e,Nlt(this[nU],e)}function Wgo(e,t,r){let s=new rU(`HTTP/2: "frameError" received - type ${e}, code ${t}`);r===0&&(this[ev][LD]=s,Nlt(this[nU],s))}function Pgo(){bp.destroy(this,new D1e("other side closed")),bp.destroy(this[ev],new D1e("other side closed"))}function Ogo(e){let t=this[nU],r=new rU(`HTTP/2: "GOAWAY" frame received with code ${e}`);if(t[ev]=null,t[RW]=null,t.destroyed){bA(this[yde]===0);let s=t[n1].splice(t[i1]);for(let a=0;a0){let s=t[n1][t[i1]];t[n1][t[i1]++]=null,kF(t,s,r)}t[NW]=t[i1],bA(t[oB]===0),t.emit("disconnect",t[ZD],[t],r),DW(t)}var $J=Swn(),Qgo=_lt(),Mgo=Buffer.alloc(0);async function Hgo(){let e=process.env.JEST_WORKER_ID?gqt():void 0,t;try{t=await WebAssembly.compile(Buffer.from(kwn(),"base64"))}catch{t=await WebAssembly.compile(Buffer.from(e||gqt(),"base64"))}return await WebAssembly.instantiate(t,{env:{wasm_on_url:(r,s,a)=>0,wasm_on_status:(r,s,a)=>{bA.strictEqual(FT.ptr,r);let o=s-tU+eU.byteOffset;return FT.onStatus(new ylt(eU.buffer,o,a))||0},wasm_on_message_begin:r=>(bA.strictEqual(FT.ptr,r),FT.onMessageBegin()||0),wasm_on_header_field:(r,s,a)=>{bA.strictEqual(FT.ptr,r);let o=s-tU+eU.byteOffset;return FT.onHeaderField(new ylt(eU.buffer,o,a))||0},wasm_on_header_value:(r,s,a)=>{bA.strictEqual(FT.ptr,r);let o=s-tU+eU.byteOffset;return FT.onHeaderValue(new ylt(eU.buffer,o,a))||0},wasm_on_headers_complete:(r,s,a,o)=>(bA.strictEqual(FT.ptr,r),FT.onHeadersComplete(s,!!a,!!o)||0),wasm_on_body:(r,s,a)=>{bA.strictEqual(FT.ptr,r);let o=s-tU+eU.byteOffset;return FT.onBody(new ylt(eU.buffer,o,a))||0},wasm_on_message_complete:r=>(bA.strictEqual(FT.ptr,r),FT.onMessageComplete()||0)}})}var dqt=null,mqt=Hgo();mqt.catch();var FT=null,eU=null,blt=0,tU=null,k1e=1,Blt=2,hqt=3,_qt=class{constructor(t,r,{exports:s}){bA(Number.isFinite(t[Elt])&&t[Elt]>0),this.llhttp=s,this.ptr=this.llhttp.llhttp_alloc($J.TYPE.RESPONSE),this.client=t,this.socket=r,this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.statusCode=null,this.statusText="",this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=t[Elt],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=t[Mwn]}setTimeout(t,r){this.timeoutType=r,t!==this.timeoutValue?(Aqt.clearTimeout(this.timeout),t?(this.timeout=Aqt.setTimeout(Ygo,t,this),this.timeout.unref&&this.timeout.unref()):this.timeout=null,this.timeoutValue=t):this.timeout&&this.timeout.refresh&&this.timeout.refresh()}resume(){this.socket.destroyed||!this.paused||(bA(this.ptr!=null),bA(FT==null),this.llhttp.llhttp_resume(this.ptr),bA(this.timeoutType===Blt),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||Mgo),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){let t=this.socket.read();if(t===null)break;this.execute(t)}}execute(t){bA(this.ptr!=null),bA(FT==null),bA(!this.paused);let{socket:r,llhttp:s}=this;t.length>blt&&(tU&&s.free(tU),blt=Math.ceil(t.length/4096)*4096,tU=s.malloc(blt)),new Uint8Array(s.memory.buffer,tU,blt).set(t);try{let a;try{eU=t,FT=this,a=s.llhttp_execute(this.ptr,tU,t.length)}catch(g){throw g}finally{FT=null,eU=null}let o=s.llhttp_get_error_pos(this.ptr)-tU;if(a===$J.ERROR.PAUSED_UPGRADE)this.onUpgrade(t.slice(o));else if(a===$J.ERROR.PAUSED)this.paused=!0,r.unshift(t.slice(o));else if(a!==$J.ERROR.OK){let g=s.llhttp_get_error_reason(this.ptr),p="";if(g){let f=new Uint8Array(s.memory.buffer,g).indexOf(0);p="Response does not match the HTTP/1.1 protocol ("+Buffer.from(s.memory.buffer,g,f).toString()+")"}throw new Cgo(p,$J.ERROR[a],t.slice(o))}}catch(a){bp.destroy(r,a)}}destroy(){bA(this.ptr!=null),bA(FT==null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,Aqt.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(t){this.statusText=t.toString()}onMessageBegin(){let{socket:t,client:r}=this;if(t.destroyed||!r[n1][r[i1]])return-1}onHeaderField(t){let r=this.headers.length;r&1?this.headers[r-1]=Buffer.concat([this.headers[r-1],t]):this.headers.push(t),this.trackHeader(t.length)}onHeaderValue(t){let r=this.headers.length;(r&1)===1?(this.headers.push(t),r+=1):this.headers[r-1]=Buffer.concat([this.headers[r-1],t]);let s=this.headers[r-2];s.length===10&&s.toString().toLowerCase()==="keep-alive"?this.keepAlive+=t.toString():s.length===10&&s.toString().toLowerCase()==="connection"?this.connection+=t.toString():s.length===14&&s.toString().toLowerCase()==="content-length"&&(this.contentLength+=t.toString()),this.trackHeader(t.length)}trackHeader(t){this.headersSize+=t,this.headersSize>=this.headersMaxSize&&bp.destroy(this.socket,new fgo)}onUpgrade(t){let{upgrade:r,client:s,socket:a,headers:o,statusCode:g}=this;bA(r);let p=s[n1][s[i1]];bA(p),bA(!a.destroyed),bA(a===s[ev]),bA(!this.paused),bA(p.upgrade||p.method==="CONNECT"),this.statusCode=null,this.statusText="",this.shouldKeepAlive=null,bA(this.headers.length%2===0),this.headers=[],this.headersSize=0,a.unshift(t),a[$B].destroy(),a[$B]=null,a[nU]=null,a[LD]=null,a.removeListener("error",Xwn).removeListener("readable",Ywn).removeListener("end",Jwn).removeListener("close",yqt),s[ev]=null,s[n1][s[i1]++]=null,s.emit("disconnect",s[ZD],[s],new rU("upgrade"));try{p.onUpgrade(g,o,a)}catch(f){bp.destroy(a,f)}DW(s)}onHeadersComplete(t,r,s){let{client:a,socket:o,headers:g,statusText:p}=this;if(o.destroyed)return-1;let f=a[n1][a[i1]];if(!f)return-1;if(bA(!this.upgrade),bA(this.statusCode<200),t===100)return bp.destroy(o,new D1e("bad response",bp.getSocketInfo(o))),-1;if(r&&!f.upgrade)return bp.destroy(o,new D1e("bad upgrade",bp.getSocketInfo(o))),-1;if(bA.strictEqual(this.timeoutType,k1e),this.statusCode=t,this.shouldKeepAlive=s||f.method==="HEAD"&&!o[xF]&&this.connection.toLowerCase()==="keep-alive",this.statusCode>=200){let y=f.bodyTimeout!=null?f.bodyTimeout:a[Own];this.setTimeout(y,Blt)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if(f.method==="CONNECT")return bA(a[oB]===1),this.upgrade=!0,2;if(r)return bA(a[oB]===1),this.upgrade=!0,2;if(bA(this.headers.length%2===0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&a[lie]){let y=this.keepAlive?bp.parseKeepAliveTimeout(this.keepAlive):null;if(y!=null){let B=Math.min(y-a[Wwn],a[Vwn]);B<=0?o[xF]=!0:a[L3e]=B}else a[L3e]=a[Iqt]}else o[xF]=!0;let m=f.onHeaders(t,g,this.resume,p)===!1;return f.aborted?-1:f.method==="HEAD"||t<200?1:(o[x1e]&&(o[x1e]=!1,DW(a)),m?$J.ERROR.PAUSED:0)}onBody(t){let{client:r,socket:s,statusCode:a,maxResponseSize:o}=this;if(s.destroyed)return-1;let g=r[n1][r[i1]];if(bA(g),bA.strictEqual(this.timeoutType,Blt),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),bA(a>=200),o>-1&&this.bytesRead+t.length>o)return bp.destroy(s,new mgo),-1;if(this.bytesRead+=t.length,g.onData(t)===!1)return $J.ERROR.PAUSED}onMessageComplete(){let{client:t,socket:r,statusCode:s,upgrade:a,headers:o,contentLength:g,bytesRead:p,shouldKeepAlive:f}=this;if(r.destroyed&&(!s||f))return-1;if(a)return;let m=t[n1][t[i1]];if(bA(m),bA(s>=100),this.statusCode=null,this.statusText="",this.bytesRead=0,this.contentLength="",this.keepAlive="",this.connection="",bA(this.headers.length%2===0),this.headers=[],this.headersSize=0,!(s<200)){if(m.method!=="HEAD"&&g&&p!==parseInt(g,10))return bp.destroy(r,new dgo),-1;if(m.onComplete(o),t[n1][t[i1]++]=null,r[Kj])return bA.strictEqual(t[oB],0),bp.destroy(r,new rU("reset")),$J.ERROR.PAUSED;if(f){if(r[xF]&&t[oB]===0)return bp.destroy(r,new rU("reset")),$J.ERROR.PAUSED;t[lie]===1?setImmediate(DW,t):DW(t)}else return bp.destroy(r,new rU("reset")),$J.ERROR.PAUSED}}};function Ygo(e){let{socket:t,timeoutType:r,client:s}=e;r===k1e?(!t[Kj]||t.writableNeedDrain||s[oB]>1)&&(bA(!e.paused,"cannot be paused while waiting for headers"),bp.destroy(t,new pgo)):r===Blt?e.paused||bp.destroy(t,new Igo):r===hqt&&(bA(s[oB]===0&&s[L3e]),bp.destroy(t,new rU("socket idle timeout")))}function Ywn(){let{[$B]:e}=this;e&&e.readMore()}function Xwn(e){let{[nU]:t,[$B]:r}=this;if(bA(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),t[iU]!=="h2"&&e.code==="ECONNRESET"&&r.statusCode&&!r.shouldKeepAlive){r.onMessageComplete();return}this[LD]=e,Nlt(this[nU],e)}function Nlt(e,t){if(e[oB]===0&&t.code!=="UND_ERR_INFO"&&t.code!=="UND_ERR_SOCKET"){bA(e[NW]===e[i1]);let r=e[n1].splice(e[i1]);for(let s=0;s0&&r.code!=="UND_ERR_INFO"){let s=e[n1][e[i1]];e[n1][e[i1]++]=null,kF(e,s,r)}e[NW]=e[i1],bA(e[oB]===0),e.emit("disconnect",e[ZD],[e],r),DW(e)}async function Uwn(e){bA(!e[R1e]),bA(!e[ev]);let{host:t,hostname:r,protocol:s,port:a}=e[ZD];if(r[0]==="["){let o=r.indexOf("]");bA(o!==-1);let g=r.substring(1,o);bA(Zwn.isIP(g)),r=g}e[R1e]=!0,wk.beforeConnect.hasSubscribers&&wk.beforeConnect.publish({connectParams:{host:t,hostname:r,protocol:s,port:a,servername:e[oie],localAddress:e[Z3e]},connector:e[F3e]});try{let o=await new Promise((p,f)=>{e[F3e]({host:t,hostname:r,protocol:s,port:a,servername:e[oie],localAddress:e[Z3e]},(m,y)=>{m?f(m):p(y)})});if(e.destroyed){bp.destroy(o.on("error",()=>{}),new hgo);return}if(e[R1e]=!1,bA(o),o.alpnProtocol==="h2"){Gwn||(Gwn=!0,process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"}));let p=Slt.connect(e[ZD],{createConnection:()=>o,peerMaxConcurrentStreams:e[vlt].maxConcurrentStreams});e[iU]="h2",p[nU]=e,p[ev]=o,p.on("error",Vgo),p.on("frameError",Wgo),p.on("end",Pgo),p.on("goaway",Ogo),p.on("close",yqt),p.unref(),e[RW]=p,o[RW]=p}else dqt||(dqt=await mqt,mqt=null),o[G3e]=!1,o[Kj]=!1,o[xF]=!1,o[x1e]=!1,o[$B]=new _qt(e,o,dqt);o[Qwn]=0,o[W3e]=e[W3e],o[nU]=e,o[LD]=null,o.on("error",Xwn).on("readable",Ywn).on("end",Jwn).on("close",yqt),e[ev]=o,wk.connected.hasSubscribers&&wk.connected.publish({connectParams:{host:t,hostname:r,protocol:s,port:a,servername:e[oie],localAddress:e[Z3e]},connector:e[F3e],socket:o}),e.emit("connect",e[ZD],[e])}catch(o){if(e.destroyed)return;if(e[R1e]=!1,wk.connectError.hasSubscribers&&wk.connectError.publish({connectParams:{host:t,hostname:r,protocol:s,port:a,servername:e[oie],localAddress:e[Z3e]},connector:e[F3e],error:o}),o.code==="ERR_TLS_CERT_ALTNAME_INVALID")for(bA(e[oB]===0);e[yde]>0&&e[n1][e[NW]].servername===e[oie];){let g=e[n1][e[NW]++];kF(e,g,o)}else Nlt(e,o);e.emit("connectionError",e[ZD],[e],o)}DW(e)}function Fwn(e){e[cie]=0,e.emit("drain",e[ZD],[e])}function DW(e,t){e[hde]!==2&&(e[hde]=2,Xgo(e,t),e[hde]=0,e[i1]>256&&(e[n1].splice(0,e[i1]),e[NW]-=e[i1],e[i1]=0))}function Xgo(e,t){for(;;){if(e.destroyed){bA(e[yde]===0);return}if(e[aie]&&!e[_de]){e[aie](),e[aie]=null;return}let r=e[ev];if(r&&!r.destroyed&&r.alpnProtocol!=="h2"){if(e[_de]===0?!r[G3e]&&r.unref&&(r.unref(),r[G3e]=!0):r[G3e]&&r.ref&&(r.ref(),r[G3e]=!1),e[_de]===0)r[$B].timeoutType!==hqt&&r[$B].setTimeout(e[L3e],hqt);else if(e[oB]>0&&r[$B].statusCode<200&&r[$B].timeoutType!==k1e){let a=e[n1][e[i1]],o=a.headersTimeout!=null?a.headersTimeout:e[Pwn];r[$B].setTimeout(o,k1e)}}if(e[fqt])e[cie]=2;else if(e[cie]===2){t?(e[cie]=1,process.nextTick(Fwn,e)):Fwn(e);continue}if(e[yde]===0||e[oB]>=(e[lie]||1))return;let s=e[n1][e[NW]];if(e[ZD].protocol==="https:"&&e[oie]!==s.servername){if(e[oB]>0)return;if(e[oie]=s.servername,r&&r.servername!==s.servername){bp.destroy(r,new rU("servername changed"));return}}if(e[R1e])return;if(!r&&!e[RW]){Uwn(e);return}if(r.destroyed||r[Kj]||r[xF]||r[x1e]||e[oB]>0&&!s.idempotent||e[oB]>0&&(s.upgrade||s.method==="CONNECT")||e[oB]>0&&bp.bodyLength(s.body)!==0&&(bp.isStream(s.body)||bp.isAsyncIterable(s.body)))return;!s.aborted&&Jgo(e,s)?e[NW]++:e[n1].splice(e[NW],1)}}function Kwn(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function Jgo(e,t){if(e[iU]==="h2"){Ugo(e,e[RW],t);return}let{body:r,method:s,path:a,host:o,upgrade:g,headers:p,blocking:f,reset:m}=t,y=s==="PUT"||s==="POST"||s==="PATCH";r&&typeof r.read=="function"&&r.read(0);let B=bp.bodyLength(r),v=B;if(v===null&&(v=t.contentLength),v===0&&!y&&(v=null),Kwn(s)&&v>0&&t.contentLength!==null&&t.contentLength!==v){if(e[V3e])return kF(e,t,new Uj),!1;process.emitWarning(new Uj)}let k=e[ev];try{t.onConnect(O=>{t.aborted||t.completed||(kF(e,t,O||new bqt),bp.destroy(k,new rU("aborted")))})}catch(O){kF(e,t,O)}if(t.aborted)return!1;s==="HEAD"&&(k[xF]=!0),(g||s==="CONNECT")&&(k[xF]=!0),m!=null&&(k[xF]=m),e[W3e]&&k[Qwn]++>=e[W3e]&&(k[xF]=!0),f&&(k[x1e]=!0);let T=`${s} ${a} HTTP/1.1\r `;return typeof o=="string"?T+=`host: ${o}\r -`:T+=e[Twn],g?T+=`connection: upgrade\r +`:T+=e[Lwn],g?T+=`connection: upgrade\r upgrade: ${g}\r -`:e[aie]&&!G[wF]?T+=`connection: keep-alive\r +`:e[lie]&&!k[xF]?T+=`connection: keep-alive\r `:T+=`connection: close\r -`,p&&(T+=p),bk.sendHeaders.hasSubscribers&&bk.sendHeaders.publish({request:t,headers:T,socket:G}),!r||B===0?(v===0?G.write(`${T}content-length: 0\r +`,p&&(T+=p),wk.sendHeaders.hasSubscribers&&wk.sendHeaders.publish({request:t,headers:T,socket:k}),!r||B===0?(v===0?k.write(`${T}content-length: 0\r \r -`,"latin1"):(yA(v===null,"no body must not have content length"),G.write(`${T}\r -`,"latin1")),t.onRequestSent()):yp.isBuffer(r)?(yA(v===r.byteLength,"buffer body must have content length"),G.cork(),G.write(`${T}content-length: ${v}\r +`,"latin1"):(bA(v===null,"no body must not have content length"),k.write(`${T}\r +`,"latin1")),t.onRequestSent()):bp.isBuffer(r)?(bA(v===r.byteLength,"buffer body must have content length"),k.cork(),k.write(`${T}content-length: ${v}\r \r -`,"latin1"),G.write(r),G.uncork(),t.onBodySent(r),t.onRequestSent(),y||(G[wF]=!0)):yp.isBlobLike(r)?typeof r.stream=="function"?vlt({body:r.stream(),client:e,request:t,socket:G,contentLength:v,header:T,expectsPayload:y}):Mwn({body:r,client:e,request:t,socket:G,contentLength:v,header:T,expectsPayload:y}):yp.isStream(r)?Own({body:r,client:e,request:t,socket:G,contentLength:v,header:T,expectsPayload:y}):yp.isIterable(r)?vlt({body:r,client:e,request:t,socket:G,contentLength:v,header:T,expectsPayload:y}):yA(!1),!0}function Fgo(e,t,r){let{body:s,method:a,path:o,host:g,upgrade:p,expectContinue:f,signal:m,headers:y}=r,B;if(typeof y=="string"?B=gqt[Igo](y.trim()):B=y,p)return TF(e,r,new Error("Upgrade not supported for H2")),!1;try{r.onConnect(le=>{r.aborted||r.completed||TF(e,r,le||new hqt)})}catch(le){TF(e,r,le)}if(r.aborted)return!1;let v,G=e[Elt];if(B[mgo]=g||e[Fwn],B[hgo]=a,a==="CONNECT")return t.ref(),v=t.request(B,{endStream:!1,signal:m}),v.id&&!v.pending?(r.onUpgrade(null,null,v),++G.openStreams):v.once("ready",()=>{r.onUpgrade(null,null,v),++G.openStreams}),v.once("close",()=>{G.openStreams-=1,G.openStreams===0&&t.unref()}),!0;B[_go]=o,B[ygo]="https";let T=a==="PUT"||a==="POST"||a==="PATCH";s&&typeof s.read=="function"&&s.read(0);let O=yp.bodyLength(s);if(O==null&&(O=r.contentLength),(O===0||!T)&&(O=null),Pwn(a)&&O>0&&r.contentLength!=null&&r.contentLength!==O){if(e[F3e])return TF(e,r,new Mj),!1;process.emitWarning(new Mj)}O!=null&&(yA(s,"no body must not have content length"),B[bgo]=`${O}`),t.ref();let X=a==="GET"||a==="HEAD";return f?(B[Ego]="100-continue",v=t.request(B,{endStream:X,signal:m}),v.once("continue",U)):(v=t.request(B,{endStream:X,signal:m}),U()),++G.openStreams,v.once("response",le=>{let{[Bgo]:ae,...ge}=le;r.onHeaders(Number(ae),ge,v.resume.bind(v),"")===!1&&v.pause()}),v.once("end",()=>{r.onComplete([])}),v.on("data",le=>{r.onData(le)===!1&&v.pause()}),v.once("close",()=>{G.openStreams-=1,G.openStreams===0&&t.unref()}),v.once("error",function(le){e[NW]&&!e[NW].destroyed&&!this.closed&&!this.destroyed&&(G.streams-=1,yp.destroy(v,le))}),v.once("frameError",(le,ae)=>{let ge=new $J(`HTTP/2: "frameError" received - type ${le}, code ${ae}`);TF(e,r,ge),e[NW]&&!e[NW].destroyed&&!this.closed&&!this.destroyed&&(G.streams-=1,yp.destroy(v,ge))}),!0;function U(){s?yp.isBuffer(s)?(yA(O===s.byteLength,"buffer body must have content length"),v.cork(),v.write(s),v.uncork(),v.end(),r.onBodySent(s),r.onRequestSent()):yp.isBlobLike(s)?typeof s.stream=="function"?vlt({client:e,request:r,contentLength:O,h2stream:v,expectsPayload:T,body:s.stream(),socket:e[qB],header:""}):Mwn({body:s,client:e,request:r,contentLength:O,expectsPayload:T,h2stream:v,header:"",socket:e[qB]}):yp.isStream(s)?Own({body:s,client:e,request:r,contentLength:O,expectsPayload:T,socket:e[qB],h2stream:v,header:""}):yp.isIterable(s)?vlt({body:s,client:e,request:r,contentLength:O,expectsPayload:T,header:"",h2stream:v,socket:e[qB]}):yA(!1):r.onRequestSent()}}function Own({h2stream:e,body:t,client:r,request:s,socket:a,contentLength:o,header:g,expectsPayload:p}){if(yA(o!==0||r[sB]===0,"stream body cannot be pipelined"),r[tU]==="h2"){let O=function(X){s.onBodySent(X)},T=quo(t,e,X=>{X?(yp.destroy(t,X),yp.destroy(e,X)):s.onRequestSent()});T.on("data",O),T.once("end",()=>{T.removeListener("data",O),yp.destroy(T)});return}let f=!1,m=new Slt({socket:a,request:s,contentLength:o,client:r,expectsPayload:p,header:g}),y=function(T){if(!f)try{!m.write(T)&&this.pause&&this.pause()}catch(O){yp.destroy(this,O)}},B=function(){f||t.resume&&t.resume()},v=function(){if(f)return;let T=new hqt;queueMicrotask(()=>G(T))},G=function(T){if(!f){if(f=!0,yA(a.destroyed||a[Qj]&&r[sB]<=1),a.off("drain",B).off("error",G),t.removeListener("data",y).removeListener("end",G).removeListener("error",G).removeListener("close",v),!T)try{m.end()}catch(O){T=O}m.destroy(T),T&&(T.code!=="UND_ERR_INFO"||T.message!=="reset")?yp.destroy(t,T):yp.destroy(t)}};t.on("data",y).on("end",G).on("error",G).on("close",v),t.resume&&t.resume(),a.on("drain",B).on("error",G)}async function Mwn({h2stream:e,body:t,client:r,request:s,socket:a,contentLength:o,header:g,expectsPayload:p}){yA(o===t.size,"blob body must have content length");let f=r[tU]==="h2";try{if(o!=null&&o!==t.size)throw new Mj;let m=Buffer.from(await t.arrayBuffer());f?(e.cork(),e.write(m),e.uncork()):(a.cork(),a.write(`${g}content-length: ${o}\r +`,"latin1"),k.write(r),k.uncork(),t.onBodySent(r),t.onRequestSent(),y||(k[xF]=!0)):bp.isBlobLike(r)?typeof r.stream=="function"?wlt({body:r.stream(),client:e,request:t,socket:k,contentLength:v,header:T,expectsPayload:y}):zwn({body:r,client:e,request:t,socket:k,contentLength:v,header:T,expectsPayload:y}):bp.isStream(r)?jwn({body:r,client:e,request:t,socket:k,contentLength:v,header:T,expectsPayload:y}):bp.isIterable(r)?wlt({body:r,client:e,request:t,socket:k,contentLength:v,header:T,expectsPayload:y}):bA(!1),!0}function Ugo(e,t,r){let{body:s,method:a,path:o,host:g,upgrade:p,expectContinue:f,signal:m,headers:y}=r,B;if(typeof y=="string"?B=pqt[Ngo](y.trim()):B=y,p)return kF(e,r,new Error("Upgrade not supported for H2")),!1;try{r.onConnect(le=>{r.aborted||r.completed||kF(e,r,le||new bqt)})}catch(le){kF(e,r,le)}if(r.aborted)return!1;let v,k=e[vlt];if(B[Dgo]=g||e[Hwn],B[xgo]=a,a==="CONNECT")return t.ref(),v=t.request(B,{endStream:!1,signal:m}),v.id&&!v.pending?(r.onUpgrade(null,null,v),++k.openStreams):v.once("ready",()=>{r.onUpgrade(null,null,v),++k.openStreams}),v.once("close",()=>{k.openStreams-=1,k.openStreams===0&&t.unref()}),!0;B[kgo]=o,B[Ggo]="https";let T=a==="PUT"||a==="POST"||a==="PATCH";s&&typeof s.read=="function"&&s.read(0);let O=bp.bodyLength(s);if(O==null&&(O=r.contentLength),(O===0||!T)&&(O=null),Kwn(a)&&O>0&&r.contentLength!=null&&r.contentLength!==O){if(e[V3e])return kF(e,r,new Uj),!1;process.emitWarning(new Uj)}O!=null&&(bA(s,"no body must not have content length"),B[Fgo]=`${O}`),t.ref();let X=a==="GET"||a==="HEAD";return f?(B[Zgo]="100-continue",v=t.request(B,{endStream:X,signal:m}),v.once("continue",U)):(v=t.request(B,{endStream:X,signal:m}),U()),++k.openStreams,v.once("response",le=>{let{[Lgo]:ae,...ge}=le;r.onHeaders(Number(ae),ge,v.resume.bind(v),"")===!1&&v.pause()}),v.once("end",()=>{r.onComplete([])}),v.on("data",le=>{r.onData(le)===!1&&v.pause()}),v.once("close",()=>{k.openStreams-=1,k.openStreams===0&&t.unref()}),v.once("error",function(le){e[RW]&&!e[RW].destroyed&&!this.closed&&!this.destroyed&&(k.streams-=1,bp.destroy(v,le))}),v.once("frameError",(le,ae)=>{let ge=new rU(`HTTP/2: "frameError" received - type ${le}, code ${ae}`);kF(e,r,ge),e[RW]&&!e[RW].destroyed&&!this.closed&&!this.destroyed&&(k.streams-=1,bp.destroy(v,ge))}),!0;function U(){s?bp.isBuffer(s)?(bA(O===s.byteLength,"buffer body must have content length"),v.cork(),v.write(s),v.uncork(),v.end(),r.onBodySent(s),r.onRequestSent()):bp.isBlobLike(s)?typeof s.stream=="function"?wlt({client:e,request:r,contentLength:O,h2stream:v,expectsPayload:T,body:s.stream(),socket:e[ev],header:""}):zwn({body:s,client:e,request:r,contentLength:O,expectsPayload:T,h2stream:v,header:"",socket:e[ev]}):bp.isStream(s)?jwn({body:s,client:e,request:r,contentLength:O,expectsPayload:T,socket:e[ev],h2stream:v,header:""}):bp.isIterable(s)?wlt({body:s,client:e,request:r,contentLength:O,expectsPayload:T,header:"",h2stream:v,socket:e[ev]}):bA(!1):r.onRequestSent()}}function jwn({h2stream:e,body:t,client:r,request:s,socket:a,contentLength:o,header:g,expectsPayload:p}){if(bA(o!==0||r[oB]===0,"stream body cannot be pipelined"),r[iU]==="h2"){let O=function(X){s.onBodySent(X)},T=ggo(t,e,X=>{X?(bp.destroy(t,X),bp.destroy(e,X)):s.onRequestSent()});T.on("data",O),T.once("end",()=>{T.removeListener("data",O),bp.destroy(T)});return}let f=!1,m=new Tlt({socket:a,request:s,contentLength:o,client:r,expectsPayload:p,header:g}),y=function(T){if(!f)try{!m.write(T)&&this.pause&&this.pause()}catch(O){bp.destroy(this,O)}},B=function(){f||t.resume&&t.resume()},v=function(){if(f)return;let T=new bqt;queueMicrotask(()=>k(T))},k=function(T){if(!f){if(f=!0,bA(a.destroyed||a[Kj]&&r[oB]<=1),a.off("drain",B).off("error",k),t.removeListener("data",y).removeListener("end",k).removeListener("error",k).removeListener("close",v),!T)try{m.end()}catch(O){T=O}m.destroy(T),T&&(T.code!=="UND_ERR_INFO"||T.message!=="reset")?bp.destroy(t,T):bp.destroy(t)}};t.on("data",y).on("end",k).on("error",k).on("close",v),t.resume&&t.resume(),a.on("drain",B).on("error",k)}async function zwn({h2stream:e,body:t,client:r,request:s,socket:a,contentLength:o,header:g,expectsPayload:p}){bA(o===t.size,"blob body must have content length");let f=r[iU]==="h2";try{if(o!=null&&o!==t.size)throw new Uj;let m=Buffer.from(await t.arrayBuffer());f?(e.cork(),e.write(m),e.uncork()):(a.cork(),a.write(`${g}content-length: ${o}\r \r -`,"latin1"),a.write(m),a.uncork()),s.onBodySent(m),s.onRequestSent(),p||(a[wF]=!0),RW(r)}catch(m){yp.destroy(f?e:a,m)}}async function vlt({h2stream:e,body:t,client:r,request:s,socket:a,contentLength:o,header:g,expectsPayload:p}){yA(o!==0||r[sB]===0,"iterator body cannot be pipelined");let f=null;function m(){if(f){let v=f;f=null,v()}}let y=()=>new Promise((v,G)=>{yA(f===null),a[GD]?G(a[GD]):f=v});if(r[tU]==="h2"){e.on("close",m).on("drain",m);try{for await(let v of t){if(a[GD])throw a[GD];let G=e.write(v);s.onBodySent(v),G||await y()}}catch(v){e.destroy(v)}finally{s.onRequestSent(),e.end(),e.off("close",m).off("drain",m)}return}a.on("close",m).on("drain",m);let B=new Slt({socket:a,request:s,contentLength:o,client:r,expectsPayload:p,header:g});try{for await(let v of t){if(a[GD])throw a[GD];B.write(v)||await y()}B.end()}catch(v){B.destroy(v)}finally{a.off("close",m).off("drain",m)}}var Slt=class{constructor({socket:t,request:r,contentLength:s,client:a,expectsPayload:o,header:g}){this.socket=t,this.request=r,this.contentLength=s,this.client=a,this.bytesWritten=0,this.expectsPayload=o,this.header=g,t[Qj]=!0}write(t){let{socket:r,request:s,contentLength:a,client:o,bytesWritten:g,expectsPayload:p,header:f}=this;if(r[GD])throw r[GD];if(r.destroyed)return!1;let m=Buffer.byteLength(t);if(!m)return!0;if(a!==null&&g+m>a){if(o[F3e])throw new Mj;process.emitWarning(new Mj)}r.cork(),g===0&&(p||(r[wF]=!0),a===null?r.write(`${f}transfer-encoding: chunked\r +`,"latin1"),a.write(m),a.uncork()),s.onBodySent(m),s.onRequestSent(),p||(a[xF]=!0),DW(r)}catch(m){bp.destroy(f?e:a,m)}}async function wlt({h2stream:e,body:t,client:r,request:s,socket:a,contentLength:o,header:g,expectsPayload:p}){bA(o!==0||r[oB]===0,"iterator body cannot be pipelined");let f=null;function m(){if(f){let v=f;f=null,v()}}let y=()=>new Promise((v,k)=>{bA(f===null),a[LD]?k(a[LD]):f=v});if(r[iU]==="h2"){e.on("close",m).on("drain",m);try{for await(let v of t){if(a[LD])throw a[LD];let k=e.write(v);s.onBodySent(v),k||await y()}}catch(v){e.destroy(v)}finally{s.onRequestSent(),e.end(),e.off("close",m).off("drain",m)}return}a.on("close",m).on("drain",m);let B=new Tlt({socket:a,request:s,contentLength:o,client:r,expectsPayload:p,header:g});try{for await(let v of t){if(a[LD])throw a[LD];B.write(v)||await y()}B.end()}catch(v){B.destroy(v)}finally{a.off("close",m).off("drain",m)}}var Tlt=class{constructor({socket:t,request:r,contentLength:s,client:a,expectsPayload:o,header:g}){this.socket=t,this.request=r,this.contentLength=s,this.client=a,this.bytesWritten=0,this.expectsPayload=o,this.header=g,t[Kj]=!0}write(t){let{socket:r,request:s,contentLength:a,client:o,bytesWritten:g,expectsPayload:p,header:f}=this;if(r[LD])throw r[LD];if(r.destroyed)return!1;let m=Buffer.byteLength(t);if(!m)return!0;if(a!==null&&g+m>a){if(o[V3e])throw new Uj;process.emitWarning(new Uj)}r.cork(),g===0&&(p||(r[xF]=!0),a===null?r.write(`${f}transfer-encoding: chunked\r `,"latin1"):r.write(`${f}content-length: ${a}\r \r `,"latin1")),a===null&&r.write(`\r ${m.toString(16)}\r -`,"latin1"),this.bytesWritten+=m;let y=r.write(t);return r.uncork(),s.onBodySent(t),y||r[zB].timeout&&r[zB].timeoutType===D1e&&r[zB].timeout.refresh&&r[zB].timeout.refresh(),y}end(){let{socket:t,contentLength:r,client:s,bytesWritten:a,expectsPayload:o,header:g,request:p}=this;if(p.onRequestSent(),t[Qj]=!1,t[GD])throw t[GD];if(!t.destroyed){if(a===0?o?t.write(`${g}content-length: 0\r +`,"latin1"),this.bytesWritten+=m;let y=r.write(t);return r.uncork(),s.onBodySent(t),y||r[$B].timeout&&r[$B].timeoutType===k1e&&r[$B].timeout.refresh&&r[$B].timeout.refresh(),y}end(){let{socket:t,contentLength:r,client:s,bytesWritten:a,expectsPayload:o,header:g,request:p}=this;if(p.onRequestSent(),t[Kj]=!1,t[LD])throw t[LD];if(!t.destroyed){if(a===0?o?t.write(`${g}content-length: 0\r \r `,"latin1"):t.write(`${g}\r `,"latin1"):r===null&&t.write(`\r 0\r \r -`,"latin1"),r!==null&&a!==r){if(s[F3e])throw new Mj;process.emitWarning(new Mj)}t[zB].timeout&&t[zB].timeoutType===D1e&&t[zB].timeout.refresh&&t[zB].timeout.refresh(),RW(s)}}destroy(t){let{socket:r,client:s}=this;r[Qj]=!1,t&&(yA(s[sB]<=1,"pipeline should only contain this request"),yp.destroy(r,t))}};function TF(e,t,r){try{t.onError(r),yA(t.aborted)}catch(s){e.emit("error",s)}}Qwn.exports=pqt});var Hwn=z((EKc,Ywn)=>{"use strict";var Tlt=class{constructor(){this.bottom=0,this.top=0,this.list=new Array(2048),this.next=null}isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&2047)===this.bottom}push(t){this.list[this.top]=t,this.top=this.top+1&2047}shift(){let t=this.list[this.bottom];return t===void 0?null:(this.list[this.bottom]=void 0,this.bottom=this.bottom+1&2047,t)}};Ywn.exports=class{constructor(){this.head=this.tail=new Tlt}isEmpty(){return this.head.isEmpty()}push(t){this.head.isFull()&&(this.head=this.head.next=new Tlt),this.head.push(t)}shift(){let t=this.tail,r=t.shift();return t.isEmpty()&&t.next!==null&&(this.tail=t.next),r}}});var Jwn=z((BKc,Xwn)=>{var{kFree:Zgo,kConnected:Lgo,kPending:Vgo,kQueued:Wgo,kRunning:Pgo,kSize:Ogo}=aE(),dde=Symbol("pool"),_qt=class{constructor(t){this[dde]=t}get connected(){return this[dde][Lgo]}get free(){return this[dde][Zgo]}get pending(){return this[dde][Vgo]}get queued(){return this[dde][Wgo]}get running(){return this[dde][Pgo]}get size(){return this[dde][Ogo]}};Xwn.exports=_qt});var Sqt=z((vKc,nTn)=>{"use strict";var Mgo=T3e(),Qgo=Hwn(),{kConnected:yqt,kSize:Uwn,kRunning:Kwn,kPending:jwn,kQueued:V3e,kBusy:Ygo,kFree:Hgo,kUrl:Xgo,kClose:Jgo,kDestroy:Ugo,kDispatch:Kgo}=aE(),jgo=Jwn(),LL=Symbol("clients"),NF=Symbol("needDrain"),W3e=Symbol("queue"),bqt=Symbol("closed resolve"),Eqt=Symbol("onDrain"),zwn=Symbol("onConnect"),qwn=Symbol("onDisconnect"),$wn=Symbol("onConnectionError"),Bqt=Symbol("get dispatcher"),tTn=Symbol("add client"),rTn=Symbol("remove client"),eTn=Symbol("stats"),vqt=class extends Mgo{constructor(){super(),this[W3e]=new Qgo,this[LL]=[],this[V3e]=0;let t=this;this[Eqt]=function(s,a){let o=t[W3e],g=!1;for(;!g;){let p=o.shift();if(!p)break;t[V3e]--,g=!this.dispatch(p.opts,p.handler)}this[NF]=g,!this[NF]&&t[NF]&&(t[NF]=!1,t.emit("drain",s,[t,...a])),t[bqt]&&o.isEmpty()&&Promise.all(t[LL].map(p=>p.close())).then(t[bqt])},this[zwn]=(r,s)=>{t.emit("connect",r,[t,...s])},this[qwn]=(r,s,a)=>{t.emit("disconnect",r,[t,...s],a)},this[$wn]=(r,s,a)=>{t.emit("connectionError",r,[t,...s],a)},this[eTn]=new jgo(this)}get[Ygo](){return this[NF]}get[yqt](){return this[LL].filter(t=>t[yqt]).length}get[Hgo](){return this[LL].filter(t=>t[yqt]&&!t[NF]).length}get[jwn](){let t=this[V3e];for(let{[jwn]:r}of this[LL])t+=r;return t}get[Kwn](){let t=0;for(let{[Kwn]:r}of this[LL])t+=r;return t}get[Uwn](){let t=this[V3e];for(let{[Uwn]:r}of this[LL])t+=r;return t}get stats(){return this[eTn]}async[Jgo](){return this[W3e].isEmpty()?Promise.all(this[LL].map(t=>t.close())):new Promise(t=>{this[bqt]=t})}async[Ugo](t){for(;;){let r=this[W3e].shift();if(!r)break;r.handler.onError(t)}return Promise.all(this[LL].map(r=>r.destroy(t)))}[Kgo](t,r){let s=this[Bqt]();return s?s.dispatch(t,r)||(s[NF]=!0,this[NF]=!this[Bqt]()):(this[NF]=!0,this[W3e].push({opts:t,handler:r}),this[V3e]++),!this[NF]}[tTn](t){return t.on("drain",this[Eqt]).on("connect",this[zwn]).on("disconnect",this[qwn]).on("connectionError",this[$wn]),this[LL].push(t),this[NF]&&process.nextTick(()=>{this[NF]&&this[Eqt](t[Xgo],[this,t])}),this}[rTn](t){t.close(()=>{let r=this[LL].indexOf(t);r!==-1&&this[LL].splice(r,1)}),this[NF]=this[LL].some(r=>!r[NF]&&r.closed!==!0&&r.destroyed!==!0)}};nTn.exports={PoolBase:vqt,kClients:LL,kNeedDrain:NF,kAddClient:tTn,kRemoveClient:rTn,kGetDispatcher:Bqt}});var x1e=z((SKc,aTn)=>{"use strict";var{PoolBase:zgo,kClients:iTn,kNeedDrain:qgo,kAddClient:$go,kGetDispatcher:eAo}=Sqt(),tAo=L3e(),{InvalidArgumentError:wqt}=_b(),Tqt=Ih(),{kUrl:sTn,kInterceptors:rAo}=aE(),nAo=N3e(),Nqt=Symbol("options"),Rqt=Symbol("connections"),oTn=Symbol("factory");function iAo(e,t){return new tAo(e,t)}var Dqt=class extends zgo{constructor(t,{connections:r,factory:s=iAo,connect:a,connectTimeout:o,tls:g,maxCachedSessions:p,socketPath:f,autoSelectFamily:m,autoSelectFamilyAttemptTimeout:y,allowH2:B,...v}={}){if(super(),r!=null&&(!Number.isFinite(r)||r<0))throw new wqt("invalid connections");if(typeof s!="function")throw new wqt("factory must be a function.");if(a!=null&&typeof a!="function"&&typeof a!="object")throw new wqt("connect must be a function or an object");typeof a!="function"&&(a=nAo({...g,maxCachedSessions:p,allowH2:B,socketPath:f,timeout:o,...Tqt.nodeHasAutoSelectFamily&&m?{autoSelectFamily:m,autoSelectFamilyAttemptTimeout:y}:void 0,...a})),this[rAo]=v.interceptors&&v.interceptors.Pool&&Array.isArray(v.interceptors.Pool)?v.interceptors.Pool:[],this[Rqt]=r||null,this[sTn]=Tqt.parseOrigin(t),this[Nqt]={...Tqt.deepClone(v),connect:a,allowH2:B},this[Nqt].interceptors=v.interceptors?{...v.interceptors}:void 0,this[oTn]=s}[eAo](){let t=this[iTn].find(r=>!r[qgo]);return t||((!this[Rqt]||this[iTn].length{"use strict";var{BalancedPoolMissingUpstreamError:sAo,InvalidArgumentError:oAo}=_b(),{PoolBase:aAo,kClients:RF,kNeedDrain:P3e,kAddClient:cAo,kRemoveClient:lAo,kGetDispatcher:uAo}=Sqt(),gAo=x1e(),{kUrl:xqt,kInterceptors:AAo}=aE(),{parseOrigin:cTn}=Ih(),lTn=Symbol("factory"),Nlt=Symbol("options"),uTn=Symbol("kGreatestCommonDivisor"),pde=Symbol("kCurrentWeight"),fde=Symbol("kIndex"),YO=Symbol("kWeight"),Rlt=Symbol("kMaxWeightPerServer"),Dlt=Symbol("kErrorPenalty");function gTn(e,t){return t===0?e:gTn(t,e%t)}function dAo(e,t){return new gAo(e,t)}var kqt=class extends aAo{constructor(t=[],{factory:r=dAo,...s}={}){if(super(),this[Nlt]=s,this[fde]=-1,this[pde]=0,this[Rlt]=this[Nlt].maxWeightPerServer||100,this[Dlt]=this[Nlt].errorPenalty||15,Array.isArray(t)||(t=[t]),typeof r!="function")throw new oAo("factory must be a function.");this[AAo]=s.interceptors&&s.interceptors.BalancedPool&&Array.isArray(s.interceptors.BalancedPool)?s.interceptors.BalancedPool:[],this[lTn]=r;for(let a of t)this.addUpstream(a);this._updateBalancedPoolStats()}addUpstream(t){let r=cTn(t).origin;if(this[RF].find(a=>a[xqt].origin===r&&a.closed!==!0&&a.destroyed!==!0))return this;let s=this[lTn](r,Object.assign({},this[Nlt]));this[cAo](s),s.on("connect",()=>{s[YO]=Math.min(this[Rlt],s[YO]+this[Dlt])}),s.on("connectionError",()=>{s[YO]=Math.max(1,s[YO]-this[Dlt]),this._updateBalancedPoolStats()}),s.on("disconnect",(...a)=>{let o=a[2];o&&o.code==="UND_ERR_SOCKET"&&(s[YO]=Math.max(1,s[YO]-this[Dlt]),this._updateBalancedPoolStats())});for(let a of this[RF])a[YO]=this[Rlt];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){this[uTn]=this[RF].map(t=>t[YO]).reduce(gTn,0)}removeUpstream(t){let r=cTn(t).origin,s=this[RF].find(a=>a[xqt].origin===r&&a.closed!==!0&&a.destroyed!==!0);return s&&this[lAo](s),this}get upstreams(){return this[RF].filter(t=>t.closed!==!0&&t.destroyed!==!0).map(t=>t[xqt].origin)}[uAo](){if(this[RF].length===0)throw new sAo;if(!this[RF].find(o=>!o[P3e]&&o.closed!==!0&&o.destroyed!==!0)||this[RF].map(o=>o[P3e]).reduce((o,g)=>o&&g,!0))return;let s=0,a=this[RF].findIndex(o=>!o[P3e]);for(;s++this[RF][a][YO]&&!o[P3e]&&(a=this[fde]),this[fde]===0&&(this[pde]=this[pde]-this[uTn],this[pde]<=0&&(this[pde]=this[Rlt])),o[YO]>=this[pde]&&!o[P3e])return o}return this[pde]=this[RF][a][YO],this[fde]=a,this[RF][a]}};ATn.exports=kqt});var Gqt=z((TKc,ITn)=>{"use strict";var{kConnected:pTn,kSize:fTn}=aE(),xlt=class{constructor(t){this.value=t}deref(){return this.value[pTn]===0&&this.value[fTn]===0?void 0:this.value}},klt=class{constructor(t){this.finalizer=t}register(t,r){t.on&&t.on("disconnect",()=>{t[pTn]===0&&t[fTn]===0&&this.finalizer(r)})}};ITn.exports=function(){return process.env.NODE_V8_COVERAGE?{WeakRef:xlt,FinalizationRegistry:klt}:{WeakRef:global.WeakRef||xlt,FinalizationRegistry:global.FinalizationRegistry||klt}}});var O3e=z((NKc,BTn)=>{"use strict";var{InvalidArgumentError:Glt}=_b(),{kClients:cie,kRunning:CTn,kClose:pAo,kDestroy:fAo,kDispatch:IAo,kInterceptors:CAo}=aE(),mAo=T3e(),hAo=x1e(),_Ao=L3e(),yAo=Ih(),bAo=mlt(),{WeakRef:EAo,FinalizationRegistry:BAo}=Gqt()(),mTn=Symbol("onConnect"),hTn=Symbol("onDisconnect"),_Tn=Symbol("onConnectionError"),vAo=Symbol("maxRedirections"),yTn=Symbol("onDrain"),bTn=Symbol("factory"),ETn=Symbol("finalizer"),Fqt=Symbol("options");function SAo(e,t){return t&&t.connections===1?new _Ao(e,t):new hAo(e,t)}var Zqt=class extends mAo{constructor({factory:t=SAo,maxRedirections:r=0,connect:s,...a}={}){if(super(),typeof t!="function")throw new Glt("factory must be a function.");if(s!=null&&typeof s!="function"&&typeof s!="object")throw new Glt("connect must be a function or an object");if(!Number.isInteger(r)||r<0)throw new Glt("maxRedirections must be a positive number");s&&typeof s!="function"&&(s={...s}),this[CAo]=a.interceptors&&a.interceptors.Agent&&Array.isArray(a.interceptors.Agent)?a.interceptors.Agent:[bAo({maxRedirections:r})],this[Fqt]={...yAo.deepClone(a),connect:s},this[Fqt].interceptors=a.interceptors?{...a.interceptors}:void 0,this[vAo]=r,this[bTn]=t,this[cie]=new Map,this[ETn]=new BAo(g=>{let p=this[cie].get(g);p!==void 0&&p.deref()===void 0&&this[cie].delete(g)});let o=this;this[yTn]=(g,p)=>{o.emit("drain",g,[o,...p])},this[mTn]=(g,p)=>{o.emit("connect",g,[o,...p])},this[hTn]=(g,p,f)=>{o.emit("disconnect",g,[o,...p],f)},this[_Tn]=(g,p,f)=>{o.emit("connectionError",g,[o,...p],f)}}get[CTn](){let t=0;for(let r of this[cie].values()){let s=r.deref();s&&(t+=s[CTn])}return t}[IAo](t,r){let s;if(t.origin&&(typeof t.origin=="string"||t.origin instanceof URL))s=String(t.origin);else throw new Glt("opts.origin must be a non-empty string or URL.");let a=this[cie].get(s),o=a?a.deref():null;return o||(o=this[bTn](t.origin,this[Fqt]).on("drain",this[yTn]).on("connect",this[mTn]).on("disconnect",this[hTn]).on("connectionError",this[_Tn]),this[cie].set(s,new EAo(o)),this[ETn].register(o,s)),o.dispatch(t,r)}async[pAo](){let t=[];for(let r of this[cie].values()){let s=r.deref();s&&t.push(s.close())}await Promise.all(t)}async[fAo](t){let r=[];for(let s of this[cie].values()){let a=s.deref();a&&r.push(a.destroy(t))}await Promise.all(r)}};BTn.exports=Zqt});var kTn=z((DKc,xTn)=>{"use strict";var TTn=Dt("assert"),{Readable:wAo}=Dt("stream"),{RequestAbortedError:NTn,NotSupportedError:TAo,InvalidArgumentError:NAo}=_b(),Llt=Ih(),{ReadableStreamFrom:RAo,toUSVString:DAo}=Ih(),Lqt,DW=Symbol("kConsume"),Flt=Symbol("kReading"),lie=Symbol("kBody"),vTn=Symbol("abort"),RTn=Symbol("kContentType"),STn=()=>{};xTn.exports=class extends wAo{constructor({resume:t,abort:r,contentType:s="",highWaterMark:a=64*1024}){super({autoDestroy:!0,read:t,highWaterMark:a}),this._readableState.dataEmitted=!1,this[vTn]=r,this[DW]=null,this[lie]=null,this[RTn]=s,this[Flt]=!1}destroy(t){return this.destroyed?this:(!t&&!this._readableState.endEmitted&&(t=new NTn),t&&this[vTn](),super.destroy(t))}emit(t,...r){return t==="data"?this._readableState.dataEmitted=!0:t==="error"&&(this._readableState.errorEmitted=!0),super.emit(t,...r)}on(t,...r){return(t==="data"||t==="readable")&&(this[Flt]=!0),super.on(t,...r)}addListener(t,...r){return this.on(t,...r)}off(t,...r){let s=super.off(t,...r);return(t==="data"||t==="readable")&&(this[Flt]=this.listenerCount("data")>0||this.listenerCount("readable")>0),s}removeListener(t,...r){return this.off(t,...r)}push(t){return this[DW]&&t!==null&&this.readableLength===0?(DTn(this[DW],t),this[Flt]?super.push(t):!0):super.push(t)}async text(){return Zlt(this,"text")}async json(){return Zlt(this,"json")}async blob(){return Zlt(this,"blob")}async arrayBuffer(){return Zlt(this,"arrayBuffer")}async formData(){throw new TAo}get bodyUsed(){return Llt.isDisturbed(this)}get body(){return this[lie]||(this[lie]=RAo(this),this[DW]&&(this[lie].getReader(),TTn(this[lie].locked))),this[lie]}dump(t){let r=t&&Number.isFinite(t.limit)?t.limit:262144,s=t&&t.signal;if(s)try{if(typeof s!="object"||!("aborted"in s))throw new NAo("signal must be an AbortSignal");Llt.throwIfAborted(s)}catch(a){return Promise.reject(a)}return this.closed?Promise.resolve(null):new Promise((a,o)=>{let g=s?Llt.addAbortListener(s,()=>{this.destroy()}):STn;this.on("close",function(){g(),s&&s.aborted?o(s.reason||Object.assign(new Error("The operation was aborted"),{name:"AbortError"})):a(null)}).on("error",STn).on("data",function(p){r-=p.length,r<=0&&this.destroy()}).resume()})}};function xAo(e){return e[lie]&&e[lie].locked===!0||e[DW]}function kAo(e){return Llt.isDisturbed(e)||xAo(e)}async function Zlt(e,t){if(kAo(e))throw new TypeError("unusable");return TTn(!e[DW]),new Promise((r,s)=>{e[DW]={type:t,stream:e,resolve:r,reject:s,length:0,body:[]},e.on("error",function(a){Vqt(this[DW],a)}).on("close",function(){this[DW].body!==null&&Vqt(this[DW],new NTn)}),process.nextTick(GAo,e[DW])})}function GAo(e){if(e.body===null)return;let{_readableState:t}=e.stream;for(let r of t.buffer)DTn(e,r);for(t.endEmitted?wTn(this[DW]):e.stream.on("end",function(){wTn(this[DW])}),e.stream.resume();e.stream.read()!=null;);}function wTn(e){let{type:t,body:r,resolve:s,stream:a,length:o}=e;try{if(t==="text")s(DAo(Buffer.concat(r)));else if(t==="json")s(JSON.parse(Buffer.concat(r)));else if(t==="arrayBuffer"){let g=new Uint8Array(o),p=0;for(let f of r)g.set(f,p),p+=f.byteLength;s(g.buffer)}else t==="blob"&&(Lqt||(Lqt=Dt("buffer").Blob),s(new Lqt(r,{type:a[RTn]})));Vqt(e)}catch(g){a.destroy(g)}}function DTn(e,t){e.length+=t.length,e.body.push(t)}function Vqt(e,t){e.body!==null&&(t?e.reject(t):e.resolve(),e.type=null,e.stream=null,e.resolve=null,e.reject=null,e.length=0,e.body=null)}});var Wqt=z((xKc,FTn)=>{var FAo=Dt("assert"),{ResponseStatusCodeError:Vlt}=_b(),{toUSVString:GTn}=Ih();async function ZAo({callback:e,body:t,contentType:r,statusCode:s,statusMessage:a,headers:o}){FAo(t);let g=[],p=0;for await(let f of t)if(g.push(f),p+=f.length,p>128*1024){g=null;break}if(s===204||!r||!g){process.nextTick(e,new Vlt(`Response status code ${s}${a?`: ${a}`:""}`,s,o));return}try{if(r.startsWith("application/json")){let f=JSON.parse(GTn(Buffer.concat(g)));process.nextTick(e,new Vlt(`Response status code ${s}${a?`: ${a}`:""}`,s,o,f));return}if(r.startsWith("text/")){let f=GTn(Buffer.concat(g));process.nextTick(e,new Vlt(`Response status code ${s}${a?`: ${a}`:""}`,s,o,f));return}}catch{}process.nextTick(e,new Vlt(`Response status code ${s}${a?`: ${a}`:""}`,s,o))}FTn.exports={getResolveErrorBodyCallback:ZAo}});var G1e=z((kKc,LTn)=>{var{addAbortListener:LAo}=Ih(),{RequestAbortedError:VAo}=_b(),k1e=Symbol("kListener"),uie=Symbol("kSignal");function ZTn(e){e.abort?e.abort():e.onError(new VAo)}function WAo(e,t){if(e[uie]=null,e[k1e]=null,!!t){if(t.aborted){ZTn(e);return}e[uie]=t,e[k1e]=()=>{ZTn(e)},LAo(e[uie],e[k1e])}}function PAo(e){e[uie]&&("removeEventListener"in e[uie]?e[uie].removeEventListener("abort",e[k1e]):e[uie].removeListener("abort",e[k1e]),e[uie]=null,e[k1e]=null)}LTn.exports={addSignal:WAo,removeSignal:PAo}});var PTn=z((GKc,Pqt)=>{"use strict";var OAo=kTn(),{InvalidArgumentError:F1e,RequestAbortedError:MAo}=_b(),rU=Ih(),{getResolveErrorBodyCallback:QAo}=Wqt(),{AsyncResource:YAo}=Dt("async_hooks"),{addSignal:HAo,removeSignal:VTn}=G1e(),Wlt=class extends YAo{constructor(t,r){if(!t||typeof t!="object")throw new F1e("invalid opts");let{signal:s,method:a,opaque:o,body:g,onInfo:p,responseHeaders:f,throwOnError:m,highWaterMark:y}=t;try{if(typeof r!="function")throw new F1e("invalid callback");if(y&&(typeof y!="number"||y<0))throw new F1e("invalid highWaterMark");if(s&&typeof s.on!="function"&&typeof s.addEventListener!="function")throw new F1e("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new F1e("invalid method");if(p&&typeof p!="function")throw new F1e("invalid onInfo callback");super("UNDICI_REQUEST")}catch(B){throw rU.isStream(g)&&rU.destroy(g.on("error",rU.nop),B),B}this.responseHeaders=f||null,this.opaque=o||null,this.callback=r,this.res=null,this.abort=null,this.body=g,this.trailers={},this.context=null,this.onInfo=p||null,this.throwOnError=m,this.highWaterMark=y,rU.isStream(g)&&g.on("error",B=>{this.onError(B)}),HAo(this,s)}onConnect(t,r){if(!this.callback)throw new MAo;this.abort=t,this.context=r}onHeaders(t,r,s,a){let{callback:o,opaque:g,abort:p,context:f,responseHeaders:m,highWaterMark:y}=this,B=m==="raw"?rU.parseRawHeaders(r):rU.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:B});return}let G=(m==="raw"?rU.parseHeaders(r):B)["content-type"],T=new OAo({resume:s,abort:p,contentType:G,highWaterMark:y});this.callback=null,this.res=T,o!==null&&(this.throwOnError&&t>=400?this.runInAsyncScope(QAo,null,{callback:o,body:T,contentType:G,statusCode:t,statusMessage:a,headers:B}):this.runInAsyncScope(o,null,null,{statusCode:t,headers:B,trailers:this.trailers,opaque:g,body:T,context:f}))}onData(t){let{res:r}=this;return r.push(t)}onComplete(t){let{res:r}=this;VTn(this),rU.parseHeaders(t,this.trailers),r.push(null)}onError(t){let{res:r,callback:s,body:a,opaque:o}=this;VTn(this),s&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(s,null,t,{opaque:o})})),r&&(this.res=null,queueMicrotask(()=>{rU.destroy(r,t)})),a&&(this.body=null,rU.destroy(a,t))}};function WTn(e,t){if(t===void 0)return new Promise((r,s)=>{WTn.call(this,e,(a,o)=>a?s(a):r(o))});try{this.dispatch(e,new Wlt(e,t))}catch(r){if(typeof t!="function")throw r;let s=e&&e.opaque;queueMicrotask(()=>t(r,{opaque:s}))}}Pqt.exports=WTn;Pqt.exports.RequestHandler=Wlt});var YTn=z((FKc,QTn)=>{"use strict";var{finished:XAo,PassThrough:JAo}=Dt("stream"),{InvalidArgumentError:Z1e,InvalidReturnValueError:UAo,RequestAbortedError:KAo}=_b(),WH=Ih(),{getResolveErrorBodyCallback:jAo}=Wqt(),{AsyncResource:zAo}=Dt("async_hooks"),{addSignal:qAo,removeSignal:OTn}=G1e(),Oqt=class extends zAo{constructor(t,r,s){if(!t||typeof t!="object")throw new Z1e("invalid opts");let{signal:a,method:o,opaque:g,body:p,onInfo:f,responseHeaders:m,throwOnError:y}=t;try{if(typeof s!="function")throw new Z1e("invalid callback");if(typeof r!="function")throw new Z1e("invalid factory");if(a&&typeof a.on!="function"&&typeof a.addEventListener!="function")throw new Z1e("signal must be an EventEmitter or EventTarget");if(o==="CONNECT")throw new Z1e("invalid method");if(f&&typeof f!="function")throw new Z1e("invalid onInfo callback");super("UNDICI_STREAM")}catch(B){throw WH.isStream(p)&&WH.destroy(p.on("error",WH.nop),B),B}this.responseHeaders=m||null,this.opaque=g||null,this.factory=r,this.callback=s,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=p,this.onInfo=f||null,this.throwOnError=y||!1,WH.isStream(p)&&p.on("error",B=>{this.onError(B)}),qAo(this,a)}onConnect(t,r){if(!this.callback)throw new KAo;this.abort=t,this.context=r}onHeaders(t,r,s,a){let{factory:o,opaque:g,context:p,callback:f,responseHeaders:m}=this,y=m==="raw"?WH.parseRawHeaders(r):WH.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:y});return}this.factory=null;let B;if(this.throwOnError&&t>=400){let T=(m==="raw"?WH.parseHeaders(r):y)["content-type"];B=new JAo,this.callback=null,this.runInAsyncScope(jAo,null,{callback:f,body:B,contentType:T,statusCode:t,statusMessage:a,headers:y})}else{if(o===null)return;if(B=this.runInAsyncScope(o,null,{statusCode:t,headers:y,opaque:g,context:p}),!B||typeof B.write!="function"||typeof B.end!="function"||typeof B.on!="function")throw new UAo("expected Writable");XAo(B,{readable:!1},G=>{let{callback:T,res:O,opaque:X,trailers:U,abort:le}=this;this.res=null,(G||!O.readable)&&WH.destroy(O,G),this.callback=null,this.runInAsyncScope(T,null,G||null,{opaque:X,trailers:U}),G&&le()})}return B.on("drain",s),this.res=B,(B.writableNeedDrain!==void 0?B.writableNeedDrain:B._writableState&&B._writableState.needDrain)!==!0}onData(t){let{res:r}=this;return r?r.write(t):!0}onComplete(t){let{res:r}=this;OTn(this),r&&(this.trailers=WH.parseHeaders(t),r.end())}onError(t){let{res:r,callback:s,opaque:a,body:o}=this;OTn(this),this.factory=null,r?(this.res=null,WH.destroy(r,t)):s&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(s,null,t,{opaque:a})})),o&&(this.body=null,WH.destroy(o,t))}};function MTn(e,t,r){if(r===void 0)return new Promise((s,a)=>{MTn.call(this,e,t,(o,g)=>o?a(o):s(g))});try{this.dispatch(e,new Oqt(e,t,r))}catch(s){if(typeof r!="function")throw s;let a=e&&e.opaque;queueMicrotask(()=>r(s,{opaque:a}))}}QTn.exports=MTn});var JTn=z((ZKc,XTn)=>{"use strict";var{Readable:HTn,Duplex:$Ao,PassThrough:edo}=Dt("stream"),{InvalidArgumentError:M3e,InvalidReturnValueError:tdo,RequestAbortedError:Plt}=_b(),HO=Ih(),{AsyncResource:rdo}=Dt("async_hooks"),{addSignal:ndo,removeSignal:ido}=G1e(),sdo=Dt("assert"),L1e=Symbol("resume"),Mqt=class extends HTn{constructor(){super({autoDestroy:!0}),this[L1e]=null}_read(){let{[L1e]:t}=this;t&&(this[L1e]=null,t())}_destroy(t,r){this._read(),r(t)}},Qqt=class extends HTn{constructor(t){super({autoDestroy:!0}),this[L1e]=t}_read(){this[L1e]()}_destroy(t,r){!t&&!this._readableState.endEmitted&&(t=new Plt),r(t)}},Yqt=class extends rdo{constructor(t,r){if(!t||typeof t!="object")throw new M3e("invalid opts");if(typeof r!="function")throw new M3e("invalid handler");let{signal:s,method:a,opaque:o,onInfo:g,responseHeaders:p}=t;if(s&&typeof s.on!="function"&&typeof s.addEventListener!="function")throw new M3e("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new M3e("invalid method");if(g&&typeof g!="function")throw new M3e("invalid onInfo callback");super("UNDICI_PIPELINE"),this.opaque=o||null,this.responseHeaders=p||null,this.handler=r,this.abort=null,this.context=null,this.onInfo=g||null,this.req=new Mqt().on("error",HO.nop),this.ret=new $Ao({readableObjectMode:t.objectMode,autoDestroy:!0,read:()=>{let{body:f}=this;f&&f.resume&&f.resume()},write:(f,m,y)=>{let{req:B}=this;B.push(f,m)||B._readableState.destroyed?y():B[L1e]=y},destroy:(f,m)=>{let{body:y,req:B,res:v,ret:G,abort:T}=this;!f&&!G._readableState.endEmitted&&(f=new Plt),T&&f&&T(),HO.destroy(y,f),HO.destroy(B,f),HO.destroy(v,f),ido(this),m(f)}}).on("prefinish",()=>{let{req:f}=this;f.push(null)}),this.res=null,ndo(this,s)}onConnect(t,r){let{ret:s,res:a}=this;if(sdo(!a,"pipeline cannot be retried"),s.destroyed)throw new Plt;this.abort=t,this.context=r}onHeaders(t,r,s){let{opaque:a,handler:o,context:g}=this;if(t<200){if(this.onInfo){let f=this.responseHeaders==="raw"?HO.parseRawHeaders(r):HO.parseHeaders(r);this.onInfo({statusCode:t,headers:f})}return}this.res=new Qqt(s);let p;try{this.handler=null;let f=this.responseHeaders==="raw"?HO.parseRawHeaders(r):HO.parseHeaders(r);p=this.runInAsyncScope(o,null,{statusCode:t,headers:f,opaque:a,body:this.res,context:g})}catch(f){throw this.res.on("error",HO.nop),f}if(!p||typeof p.on!="function")throw new tdo("expected Readable");p.on("data",f=>{let{ret:m,body:y}=this;!m.push(f)&&y.pause&&y.pause()}).on("error",f=>{let{ret:m}=this;HO.destroy(m,f)}).on("end",()=>{let{ret:f}=this;f.push(null)}).on("close",()=>{let{ret:f}=this;f._readableState.ended||HO.destroy(f,new Plt)}),this.body=p}onData(t){let{res:r}=this;return r.push(t)}onComplete(t){let{res:r}=this;r.push(null)}onError(t){let{ret:r}=this;this.handler=null,HO.destroy(r,t)}};function odo(e,t){try{let r=new Yqt(e,t);return this.dispatch({...e,body:r.req},r),r.ret}catch(r){return new edo().destroy(r)}}XTn.exports=odo});var qTn=z((LKc,zTn)=>{"use strict";var{InvalidArgumentError:Hqt,RequestAbortedError:ado,SocketError:cdo}=_b(),{AsyncResource:ldo}=Dt("async_hooks"),UTn=Ih(),{addSignal:udo,removeSignal:KTn}=G1e(),gdo=Dt("assert"),Xqt=class extends ldo{constructor(t,r){if(!t||typeof t!="object")throw new Hqt("invalid opts");if(typeof r!="function")throw new Hqt("invalid callback");let{signal:s,opaque:a,responseHeaders:o}=t;if(s&&typeof s.on!="function"&&typeof s.addEventListener!="function")throw new Hqt("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE"),this.responseHeaders=o||null,this.opaque=a||null,this.callback=r,this.abort=null,this.context=null,udo(this,s)}onConnect(t,r){if(!this.callback)throw new ado;this.abort=t,this.context=null}onHeaders(){throw new cdo("bad upgrade",null)}onUpgrade(t,r,s){let{callback:a,opaque:o,context:g}=this;gdo.strictEqual(t,101),KTn(this),this.callback=null;let p=this.responseHeaders==="raw"?UTn.parseRawHeaders(r):UTn.parseHeaders(r);this.runInAsyncScope(a,null,null,{headers:p,socket:s,opaque:o,context:g})}onError(t){let{callback:r,opaque:s}=this;KTn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:s})}))}};function jTn(e,t){if(t===void 0)return new Promise((r,s)=>{jTn.call(this,e,(a,o)=>a?s(a):r(o))});try{let r=new Xqt(e,t);this.dispatch({...e,method:e.method||"GET",upgrade:e.protocol||"Websocket"},r)}catch(r){if(typeof t!="function")throw r;let s=e&&e.opaque;queueMicrotask(()=>t(r,{opaque:s}))}}zTn.exports=jTn});var nNn=z((VKc,rNn)=>{"use strict";var{AsyncResource:Ado}=Dt("async_hooks"),{InvalidArgumentError:Jqt,RequestAbortedError:ddo,SocketError:pdo}=_b(),$Tn=Ih(),{addSignal:fdo,removeSignal:eNn}=G1e(),Uqt=class extends Ado{constructor(t,r){if(!t||typeof t!="object")throw new Jqt("invalid opts");if(typeof r!="function")throw new Jqt("invalid callback");let{signal:s,opaque:a,responseHeaders:o}=t;if(s&&typeof s.on!="function"&&typeof s.addEventListener!="function")throw new Jqt("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT"),this.opaque=a||null,this.responseHeaders=o||null,this.callback=r,this.abort=null,fdo(this,s)}onConnect(t,r){if(!this.callback)throw new ddo;this.abort=t,this.context=r}onHeaders(){throw new pdo("bad connect",null)}onUpgrade(t,r,s){let{callback:a,opaque:o,context:g}=this;eNn(this),this.callback=null;let p=r;p!=null&&(p=this.responseHeaders==="raw"?$Tn.parseRawHeaders(r):$Tn.parseHeaders(r)),this.runInAsyncScope(a,null,null,{statusCode:t,headers:p,socket:s,opaque:o,context:g})}onError(t){let{callback:r,opaque:s}=this;eNn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:s})}))}};function tNn(e,t){if(t===void 0)return new Promise((r,s)=>{tNn.call(this,e,(a,o)=>a?s(a):r(o))});try{let r=new Uqt(e,t);this.dispatch({...e,method:"CONNECT"},r)}catch(r){if(typeof t!="function")throw r;let s=e&&e.opaque;queueMicrotask(()=>t(r,{opaque:s}))}}rNn.exports=tNn});var iNn=z((WKc,V1e)=>{"use strict";V1e.exports.request=PTn();V1e.exports.stream=YTn();V1e.exports.pipeline=JTn();V1e.exports.upgrade=qTn();V1e.exports.connect=nNn()});var jqt=z((PKc,sNn)=>{"use strict";var{UndiciError:Ido}=_b(),Kqt=class e extends Ido{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="MockNotMatchedError",this.message=t||"The request does not match any registered mock dispatches",this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}};sNn.exports={MockNotMatchedError:Kqt}});var W1e=z((OKc,oNn)=>{"use strict";oNn.exports={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected")}});var Q3e=z((MKc,mNn)=>{"use strict";var{MockNotMatchedError:Ide}=jqt(),{kDispatches:Olt,kMockAgent:Cdo,kOriginalDispatch:mdo,kOrigin:hdo,kGetNetConnect:_do}=W1e(),{buildURL:ydo,nop:bdo}=Ih(),{STATUS_CODES:Edo}=Dt("http"),{types:{isPromise:Bdo}}=Dt("util");function Yj(e,t){return typeof e=="string"?e===t:e instanceof RegExp?e.test(t):typeof e=="function"?e(t)===!0:!1}function cNn(e){return Object.fromEntries(Object.entries(e).map(([t,r])=>[t.toLocaleLowerCase(),r]))}function lNn(e,t){if(Array.isArray(e)){for(let r=0;r"u")return!0;if(typeof t!="object"||typeof e.headers!="object")return!1;for(let[r,s]of Object.entries(e.headers)){let a=lNn(t,r);if(!Yj(s,a))return!1}return!0}function aNn(e){if(typeof e!="string")return e;let t=e.split("?");if(t.length!==2)return e;let r=new URLSearchParams(t.pop());return r.sort(),[...t,r.toString()].join("?")}function vdo(e,{path:t,method:r,body:s,headers:a}){let o=Yj(e.path,t),g=Yj(e.method,r),p=typeof e.body<"u"?Yj(e.body,s):!0,f=gNn(e,a);return o&&g&&p&&f}function ANn(e){return Buffer.isBuffer(e)?e:typeof e=="object"?JSON.stringify(e):e.toString()}function dNn(e,t){let r=t.query?ydo(t.path,t.query):t.path,s=typeof r=="string"?aNn(r):r,a=e.filter(({consumed:o})=>!o).filter(({path:o})=>Yj(aNn(o),s));if(a.length===0)throw new Ide(`Mock dispatch not matched for path '${s}'`);if(a=a.filter(({method:o})=>Yj(o,t.method)),a.length===0)throw new Ide(`Mock dispatch not matched for method '${t.method}'`);if(a=a.filter(({body:o})=>typeof o<"u"?Yj(o,t.body):!0),a.length===0)throw new Ide(`Mock dispatch not matched for body '${t.body}'`);if(a=a.filter(o=>gNn(o,t.headers)),a.length===0)throw new Ide(`Mock dispatch not matched for headers '${typeof t.headers=="object"?JSON.stringify(t.headers):t.headers}'`);return a[0]}function Sdo(e,t,r){let s={timesInvoked:0,times:1,persist:!1,consumed:!1},a=typeof r=="function"?{callback:r}:{...r},o={...s,...t,pending:!0,data:{error:null,...a}};return e.push(o),o}function zqt(e,t){let r=e.findIndex(s=>s.consumed?vdo(s,t):!1);r!==-1&&e.splice(r,1)}function pNn(e){let{path:t,method:r,body:s,headers:a,query:o}=e;return{path:t,method:r,body:s,headers:a,query:o}}function qqt(e){return Object.entries(e).reduce((t,[r,s])=>[...t,Buffer.from(`${r}`),Array.isArray(s)?s.map(a=>Buffer.from(`${a}`)):Buffer.from(`${s}`)],[])}function fNn(e){return Edo[e]||"unknown"}async function wdo(e){let t=[];for await(let r of e)t.push(r);return Buffer.concat(t).toString("utf8")}function INn(e,t){let r=pNn(e),s=dNn(this[Olt],r);s.timesInvoked++,s.data.callback&&(s.data={...s.data,...s.data.callback(e)});let{data:{statusCode:a,data:o,headers:g,trailers:p,error:f},delay:m,persist:y}=s,{timesInvoked:B,times:v}=s;if(s.consumed=!y&&B>=v,s.pending=B0?setTimeout(()=>{G(this[Olt])},m):G(this[Olt]);function G(O,X=o){let U=Array.isArray(e.headers)?uNn(e.headers):e.headers,le=typeof X=="function"?X({...e,headers:U}):X;if(Bdo(le)){le.then(pe=>G(O,pe));return}let ae=ANn(le),ge=qqt(g),fe=qqt(p);t.abort=bdo,t.onHeaders(a,ge,T,fNn(a)),t.onData(Buffer.from(ae)),t.onComplete(fe),zqt(O,r)}function T(){}return!0}function Tdo(){let e=this[Cdo],t=this[hdo],r=this[mdo];return function(a,o){if(e.isMockActive)try{INn.call(this,a,o)}catch(g){if(g instanceof Ide){let p=e[_do]();if(p===!1)throw new Ide(`${g.message}: subsequent request to origin ${t} was not allowed (net.connect disabled)`);if(CNn(p,t))r.call(this,a,o);else throw new Ide(`${g.message}: subsequent request to origin ${t} was not allowed (net.connect is not enabled for this origin)`)}else throw g}else r.call(this,a,o)}}function CNn(e,t){let r=new URL(t);return e===!0?!0:!!(Array.isArray(e)&&e.some(s=>Yj(s,r.host)))}function Ndo(e){if(e){let{agent:t,...r}=e;return r}}mNn.exports={getResponseData:ANn,getMockDispatch:dNn,addMockDispatch:Sdo,deleteMockDispatch:zqt,buildKey:pNn,generateKeyValues:qqt,matchValue:Yj,getResponse:wdo,getStatusText:fNn,mockDispatch:INn,buildMockDispatch:Tdo,checkNetConnect:CNn,buildMockOptions:Ndo,getHeaderByName:lNn}});var s$t=z((QKc,i$t)=>{"use strict";var{getResponseData:Rdo,buildKey:Ddo,addMockDispatch:$qt}=Q3e(),{kDispatches:Mlt,kDispatchKey:Qlt,kDefaultHeaders:e$t,kDefaultTrailers:t$t,kContentLength:r$t,kMockDispatch:Ylt}=W1e(),{InvalidArgumentError:PH}=_b(),{buildURL:xdo}=Ih(),P1e=class{constructor(t){this[Ylt]=t}delay(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new PH("waitInMs must be a valid integer > 0");return this[Ylt].delay=t,this}persist(){return this[Ylt].persist=!0,this}times(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new PH("repeatTimes must be a valid integer > 0");return this[Ylt].times=t,this}},n$t=class{constructor(t,r){if(typeof t!="object")throw new PH("opts must be an object");if(typeof t.path>"u")throw new PH("opts.path must be defined");if(typeof t.method>"u"&&(t.method="GET"),typeof t.path=="string")if(t.query)t.path=xdo(t.path,t.query);else{let s=new URL(t.path,"data://");t.path=s.pathname+s.search}typeof t.method=="string"&&(t.method=t.method.toUpperCase()),this[Qlt]=Ddo(t),this[Mlt]=r,this[e$t]={},this[t$t]={},this[r$t]=!1}createMockScopeDispatchData(t,r,s={}){let a=Rdo(r),o=this[r$t]?{"content-length":a.length}:{},g={...this[e$t],...o,...s.headers},p={...this[t$t],...s.trailers};return{statusCode:t,data:r,headers:g,trailers:p}}validateReplyParameters(t,r,s){if(typeof t>"u")throw new PH("statusCode must be defined");if(typeof r>"u")throw new PH("data must be defined");if(typeof s!="object")throw new PH("responseOptions must be an object")}reply(t){if(typeof t=="function"){let p=m=>{let y=t(m);if(typeof y!="object")throw new PH("reply options callback must return an object");let{statusCode:B,data:v="",responseOptions:G={}}=y;return this.validateReplyParameters(B,v,G),{...this.createMockScopeDispatchData(B,v,G)}},f=$qt(this[Mlt],this[Qlt],p);return new P1e(f)}let[r,s="",a={}]=[...arguments];this.validateReplyParameters(r,s,a);let o=this.createMockScopeDispatchData(r,s,a),g=$qt(this[Mlt],this[Qlt],o);return new P1e(g)}replyWithError(t){if(typeof t>"u")throw new PH("error must be defined");let r=$qt(this[Mlt],this[Qlt],{error:t});return new P1e(r)}defaultReplyHeaders(t){if(typeof t>"u")throw new PH("headers must be defined");return this[e$t]=t,this}defaultReplyTrailers(t){if(typeof t>"u")throw new PH("trailers must be defined");return this[t$t]=t,this}replyContentLength(){return this[r$t]=!0,this}};i$t.exports.MockInterceptor=n$t;i$t.exports.MockScope=P1e});var c$t=z((YKc,vNn)=>{"use strict";var{promisify:kdo}=Dt("util"),Gdo=L3e(),{buildMockDispatch:Fdo}=Q3e(),{kDispatches:hNn,kMockAgent:_Nn,kClose:yNn,kOriginalClose:bNn,kOrigin:ENn,kOriginalDispatch:Zdo,kConnected:o$t}=W1e(),{MockInterceptor:Ldo}=s$t(),BNn=aE(),{InvalidArgumentError:Vdo}=_b(),a$t=class extends Gdo{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new Vdo("Argument opts.agent must implement Agent");this[_Nn]=r.agent,this[ENn]=t,this[hNn]=[],this[o$t]=1,this[Zdo]=this.dispatch,this[bNn]=this.close.bind(this),this.dispatch=Fdo.call(this),this.close=this[yNn]}get[BNn.kConnected](){return this[o$t]}intercept(t){return new Ldo(t,this[hNn])}async[yNn](){await kdo(this[bNn])(),this[o$t]=0,this[_Nn][BNn.kClients].delete(this[ENn])}};vNn.exports=a$t});var g$t=z((HKc,xNn)=>{"use strict";var{promisify:Wdo}=Dt("util"),Pdo=x1e(),{buildMockDispatch:Odo}=Q3e(),{kDispatches:SNn,kMockAgent:wNn,kClose:TNn,kOriginalClose:NNn,kOrigin:RNn,kOriginalDispatch:Mdo,kConnected:l$t}=W1e(),{MockInterceptor:Qdo}=s$t(),DNn=aE(),{InvalidArgumentError:Ydo}=_b(),u$t=class extends Pdo{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new Ydo("Argument opts.agent must implement Agent");this[wNn]=r.agent,this[RNn]=t,this[SNn]=[],this[l$t]=1,this[Mdo]=this.dispatch,this[NNn]=this.close.bind(this),this.dispatch=Odo.call(this),this.close=this[TNn]}get[DNn.kConnected](){return this[l$t]}intercept(t){return new Qdo(t,this[SNn])}async[TNn](){await Wdo(this[NNn])(),this[l$t]=0,this[wNn][DNn.kClients].delete(this[RNn])}};xNn.exports=u$t});var GNn=z((JKc,kNn)=>{"use strict";var Hdo={pronoun:"it",is:"is",was:"was",this:"this"},Xdo={pronoun:"they",is:"are",was:"were",this:"these"};kNn.exports=class{constructor(t,r){this.singular=t,this.plural=r}pluralize(t){let r=t===1,s=r?Hdo:Xdo,a=r?this.singular:this.plural;return{...s,count:t,noun:a}}}});var ZNn=z((KKc,FNn)=>{"use strict";var{Transform:Jdo}=Dt("stream"),{Console:Udo}=Dt("console");FNn.exports=class{constructor({disableColors:t}={}){this.transform=new Jdo({transform(r,s,a){a(null,r)}}),this.logger=new Udo({stdout:this.transform,inspectOptions:{colors:!t&&!process.env.CI}})}format(t){let r=t.map(({method:s,path:a,data:{statusCode:o},persist:g,times:p,timesInvoked:f,origin:m})=>({Method:s,Origin:m,Path:a,"Status code":o,Persistent:g?"\u2705":"\u274C",Invocations:f,Remaining:g?1/0:p-f}));return this.logger.table(r),this.transform.read().toString()}}});var PNn=z((jKc,WNn)=>{"use strict";var{kClients:Cde}=aE(),Kdo=O3e(),{kAgent:A$t,kMockAgentSet:Hlt,kMockAgentGet:LNn,kDispatches:d$t,kIsMockActive:Xlt,kNetConnect:mde,kGetNetConnect:jdo,kOptions:Jlt,kFactory:Ult}=W1e(),zdo=c$t(),qdo=g$t(),{matchValue:$do,buildMockOptions:epo}=Q3e(),{InvalidArgumentError:VNn,UndiciError:tpo}=_b(),rpo=plt(),npo=GNn(),ipo=ZNn(),p$t=class{constructor(t){this.value=t}deref(){return this.value}},f$t=class extends rpo{constructor(t){if(super(t),this[mde]=!0,this[Xlt]=!0,t&&t.agent&&typeof t.agent.dispatch!="function")throw new VNn("Argument opts.agent must implement Agent");let r=t&&t.agent?t.agent:new Kdo(t);this[A$t]=r,this[Cde]=r[Cde],this[Jlt]=epo(t)}get(t){let r=this[LNn](t);return r||(r=this[Ult](t),this[Hlt](t,r)),r}dispatch(t,r){return this.get(t.origin),this[A$t].dispatch(t,r)}async close(){await this[A$t].close(),this[Cde].clear()}deactivate(){this[Xlt]=!1}activate(){this[Xlt]=!0}enableNetConnect(t){if(typeof t=="string"||typeof t=="function"||t instanceof RegExp)Array.isArray(this[mde])?this[mde].push(t):this[mde]=[t];else if(typeof t>"u")this[mde]=!0;else throw new VNn("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[mde]=!1}get isMockActive(){return this[Xlt]}[Hlt](t,r){this[Cde].set(t,new p$t(r))}[Ult](t){let r=Object.assign({agent:this},this[Jlt]);return this[Jlt]&&this[Jlt].connections===1?new zdo(t,r):new qdo(t,r)}[LNn](t){let r=this[Cde].get(t);if(r)return r.deref();if(typeof t!="string"){let s=this[Ult]("http://localhost:9999");return this[Hlt](t,s),s}for(let[s,a]of Array.from(this[Cde])){let o=a.deref();if(o&&typeof s!="string"&&$do(s,t)){let g=this[Ult](t);return this[Hlt](t,g),g[d$t]=o[d$t],g}}}[jdo](){return this[mde]}pendingInterceptors(){let t=this[Cde];return Array.from(t.entries()).flatMap(([r,s])=>s.deref()[d$t].map(a=>({...a,origin:r}))).filter(({pending:r})=>r)}assertNoPendingInterceptors({pendingInterceptorsFormatter:t=new ipo}={}){let r=this.pendingInterceptors();if(r.length===0)return;let s=new npo("interceptor","interceptors").pluralize(r.length);throw new tpo(` +`,"latin1"),r!==null&&a!==r){if(s[V3e])throw new Uj;process.emitWarning(new Uj)}t[$B].timeout&&t[$B].timeoutType===k1e&&t[$B].timeout.refresh&&t[$B].timeout.refresh(),DW(s)}}destroy(t){let{socket:r,client:s}=this;r[Kj]=!1,t&&(bA(s[oB]<=1,"pipeline should only contain this request"),bp.destroy(r,t))}};function kF(e,t,r){try{t.onError(r),bA(t.aborted)}catch(s){e.emit("error",s)}}qwn.exports=Cqt});var eTn=z((OKc,$wn)=>{"use strict";var Rlt=class{constructor(){this.bottom=0,this.top=0,this.list=new Array(2048),this.next=null}isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&2047)===this.bottom}push(t){this.list[this.top]=t,this.top=this.top+1&2047}shift(){let t=this.list[this.bottom];return t===void 0?null:(this.list[this.bottom]=void 0,this.bottom=this.bottom+1&2047,t)}};$wn.exports=class{constructor(){this.head=this.tail=new Rlt}isEmpty(){return this.head.isEmpty()}push(t){this.head.isFull()&&(this.head=this.head.next=new Rlt),this.head.push(t)}shift(){let t=this.tail,r=t.shift();return t.isEmpty()&&t.next!==null&&(this.tail=t.next),r}}});var rTn=z((QKc,tTn)=>{var{kFree:Kgo,kConnected:jgo,kPending:zgo,kQueued:qgo,kRunning:$go,kSize:eAo}=lE(),bde=Symbol("pool"),Eqt=class{constructor(t){this[bde]=t}get connected(){return this[bde][jgo]}get free(){return this[bde][Kgo]}get pending(){return this[bde][zgo]}get queued(){return this[bde][qgo]}get running(){return this[bde][$go]}get size(){return this[bde][eAo]}};tTn.exports=Eqt});var Nqt=z((MKc,ATn)=>{"use strict";var tAo=D3e(),rAo=eTn(),{kConnected:Bqt,kSize:nTn,kRunning:iTn,kPending:sTn,kQueued:O3e,kBusy:nAo,kFree:iAo,kUrl:sAo,kClose:oAo,kDestroy:aAo,kDispatch:cAo}=lE(),lAo=rTn(),VL=Symbol("clients"),GF=Symbol("needDrain"),Q3e=Symbol("queue"),vqt=Symbol("closed resolve"),Sqt=Symbol("onDrain"),oTn=Symbol("onConnect"),aTn=Symbol("onDisconnect"),cTn=Symbol("onConnectionError"),wqt=Symbol("get dispatcher"),uTn=Symbol("add client"),gTn=Symbol("remove client"),lTn=Symbol("stats"),Tqt=class extends tAo{constructor(){super(),this[Q3e]=new rAo,this[VL]=[],this[O3e]=0;let t=this;this[Sqt]=function(s,a){let o=t[Q3e],g=!1;for(;!g;){let p=o.shift();if(!p)break;t[O3e]--,g=!this.dispatch(p.opts,p.handler)}this[GF]=g,!this[GF]&&t[GF]&&(t[GF]=!1,t.emit("drain",s,[t,...a])),t[vqt]&&o.isEmpty()&&Promise.all(t[VL].map(p=>p.close())).then(t[vqt])},this[oTn]=(r,s)=>{t.emit("connect",r,[t,...s])},this[aTn]=(r,s,a)=>{t.emit("disconnect",r,[t,...s],a)},this[cTn]=(r,s,a)=>{t.emit("connectionError",r,[t,...s],a)},this[lTn]=new lAo(this)}get[nAo](){return this[GF]}get[Bqt](){return this[VL].filter(t=>t[Bqt]).length}get[iAo](){return this[VL].filter(t=>t[Bqt]&&!t[GF]).length}get[sTn](){let t=this[O3e];for(let{[sTn]:r}of this[VL])t+=r;return t}get[iTn](){let t=0;for(let{[iTn]:r}of this[VL])t+=r;return t}get[nTn](){let t=this[O3e];for(let{[nTn]:r}of this[VL])t+=r;return t}get stats(){return this[lTn]}async[oAo](){return this[Q3e].isEmpty()?Promise.all(this[VL].map(t=>t.close())):new Promise(t=>{this[vqt]=t})}async[aAo](t){for(;;){let r=this[Q3e].shift();if(!r)break;r.handler.onError(t)}return Promise.all(this[VL].map(r=>r.destroy(t)))}[cAo](t,r){let s=this[wqt]();return s?s.dispatch(t,r)||(s[GF]=!0,this[GF]=!this[wqt]()):(this[GF]=!0,this[Q3e].push({opts:t,handler:r}),this[O3e]++),!this[GF]}[uTn](t){return t.on("drain",this[Sqt]).on("connect",this[oTn]).on("disconnect",this[aTn]).on("connectionError",this[cTn]),this[VL].push(t),this[GF]&&process.nextTick(()=>{this[GF]&&this[Sqt](t[sAo],[this,t])}),this}[gTn](t){t.close(()=>{let r=this[VL].indexOf(t);r!==-1&&this[VL].splice(r,1)}),this[GF]=this[VL].some(r=>!r[GF]&&r.closed!==!0&&r.destroyed!==!0)}};ATn.exports={PoolBase:Tqt,kClients:VL,kNeedDrain:GF,kAddClient:uTn,kRemoveClient:gTn,kGetDispatcher:wqt}});var G1e=z((HKc,ITn)=>{"use strict";var{PoolBase:uAo,kClients:dTn,kNeedDrain:gAo,kAddClient:AAo,kGetDispatcher:dAo}=Nqt(),pAo=P3e(),{InvalidArgumentError:Rqt}=yb(),Dqt=Ch(),{kUrl:pTn,kInterceptors:fAo}=lE(),IAo=x3e(),xqt=Symbol("options"),kqt=Symbol("connections"),fTn=Symbol("factory");function CAo(e,t){return new pAo(e,t)}var Gqt=class extends uAo{constructor(t,{connections:r,factory:s=CAo,connect:a,connectTimeout:o,tls:g,maxCachedSessions:p,socketPath:f,autoSelectFamily:m,autoSelectFamilyAttemptTimeout:y,allowH2:B,...v}={}){if(super(),r!=null&&(!Number.isFinite(r)||r<0))throw new Rqt("invalid connections");if(typeof s!="function")throw new Rqt("factory must be a function.");if(a!=null&&typeof a!="function"&&typeof a!="object")throw new Rqt("connect must be a function or an object");typeof a!="function"&&(a=IAo({...g,maxCachedSessions:p,allowH2:B,socketPath:f,timeout:o,...Dqt.nodeHasAutoSelectFamily&&m?{autoSelectFamily:m,autoSelectFamilyAttemptTimeout:y}:void 0,...a})),this[fAo]=v.interceptors&&v.interceptors.Pool&&Array.isArray(v.interceptors.Pool)?v.interceptors.Pool:[],this[kqt]=r||null,this[pTn]=Dqt.parseOrigin(t),this[xqt]={...Dqt.deepClone(v),connect:a,allowH2:B},this[xqt].interceptors=v.interceptors?{...v.interceptors}:void 0,this[fTn]=s}[dAo](){let t=this[dTn].find(r=>!r[gAo]);return t||((!this[kqt]||this[dTn].length{"use strict";var{BalancedPoolMissingUpstreamError:mAo,InvalidArgumentError:hAo}=yb(),{PoolBase:_Ao,kClients:FF,kNeedDrain:M3e,kAddClient:yAo,kRemoveClient:bAo,kGetDispatcher:EAo}=Nqt(),BAo=G1e(),{kUrl:Fqt,kInterceptors:vAo}=lE(),{parseOrigin:CTn}=Ch(),mTn=Symbol("factory"),Dlt=Symbol("options"),hTn=Symbol("kGreatestCommonDivisor"),Ede=Symbol("kCurrentWeight"),Bde=Symbol("kIndex"),JO=Symbol("kWeight"),xlt=Symbol("kMaxWeightPerServer"),klt=Symbol("kErrorPenalty");function _Tn(e,t){return t===0?e:_Tn(t,e%t)}function SAo(e,t){return new BAo(e,t)}var Zqt=class extends _Ao{constructor(t=[],{factory:r=SAo,...s}={}){if(super(),this[Dlt]=s,this[Bde]=-1,this[Ede]=0,this[xlt]=this[Dlt].maxWeightPerServer||100,this[klt]=this[Dlt].errorPenalty||15,Array.isArray(t)||(t=[t]),typeof r!="function")throw new hAo("factory must be a function.");this[vAo]=s.interceptors&&s.interceptors.BalancedPool&&Array.isArray(s.interceptors.BalancedPool)?s.interceptors.BalancedPool:[],this[mTn]=r;for(let a of t)this.addUpstream(a);this._updateBalancedPoolStats()}addUpstream(t){let r=CTn(t).origin;if(this[FF].find(a=>a[Fqt].origin===r&&a.closed!==!0&&a.destroyed!==!0))return this;let s=this[mTn](r,Object.assign({},this[Dlt]));this[yAo](s),s.on("connect",()=>{s[JO]=Math.min(this[xlt],s[JO]+this[klt])}),s.on("connectionError",()=>{s[JO]=Math.max(1,s[JO]-this[klt]),this._updateBalancedPoolStats()}),s.on("disconnect",(...a)=>{let o=a[2];o&&o.code==="UND_ERR_SOCKET"&&(s[JO]=Math.max(1,s[JO]-this[klt]),this._updateBalancedPoolStats())});for(let a of this[FF])a[JO]=this[xlt];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){this[hTn]=this[FF].map(t=>t[JO]).reduce(_Tn,0)}removeUpstream(t){let r=CTn(t).origin,s=this[FF].find(a=>a[Fqt].origin===r&&a.closed!==!0&&a.destroyed!==!0);return s&&this[bAo](s),this}get upstreams(){return this[FF].filter(t=>t.closed!==!0&&t.destroyed!==!0).map(t=>t[Fqt].origin)}[EAo](){if(this[FF].length===0)throw new mAo;if(!this[FF].find(o=>!o[M3e]&&o.closed!==!0&&o.destroyed!==!0)||this[FF].map(o=>o[M3e]).reduce((o,g)=>o&&g,!0))return;let s=0,a=this[FF].findIndex(o=>!o[M3e]);for(;s++this[FF][a][JO]&&!o[M3e]&&(a=this[Bde]),this[Bde]===0&&(this[Ede]=this[Ede]-this[hTn],this[Ede]<=0&&(this[Ede]=this[xlt])),o[JO]>=this[Ede]&&!o[M3e])return o}return this[Ede]=this[FF][a][JO],this[Bde]=a,this[FF][a]}};yTn.exports=Zqt});var Lqt=z((XKc,vTn)=>{"use strict";var{kConnected:ETn,kSize:BTn}=lE(),Glt=class{constructor(t){this.value=t}deref(){return this.value[ETn]===0&&this.value[BTn]===0?void 0:this.value}},Flt=class{constructor(t){this.finalizer=t}register(t,r){t.on&&t.on("disconnect",()=>{t[ETn]===0&&t[BTn]===0&&this.finalizer(r)})}};vTn.exports=function(){return process.env.NODE_V8_COVERAGE?{WeakRef:Glt,FinalizationRegistry:Flt}:{WeakRef:global.WeakRef||Glt,FinalizationRegistry:global.FinalizationRegistry||Flt}}});var H3e=z((JKc,kTn)=>{"use strict";var{InvalidArgumentError:Zlt}=yb(),{kClients:uie,kRunning:STn,kClose:wAo,kDestroy:TAo,kDispatch:NAo,kInterceptors:RAo}=lE(),DAo=D3e(),xAo=G1e(),kAo=P3e(),GAo=Ch(),FAo=_lt(),{WeakRef:ZAo,FinalizationRegistry:LAo}=Lqt()(),wTn=Symbol("onConnect"),TTn=Symbol("onDisconnect"),NTn=Symbol("onConnectionError"),VAo=Symbol("maxRedirections"),RTn=Symbol("onDrain"),DTn=Symbol("factory"),xTn=Symbol("finalizer"),Vqt=Symbol("options");function WAo(e,t){return t&&t.connections===1?new kAo(e,t):new xAo(e,t)}var Wqt=class extends DAo{constructor({factory:t=WAo,maxRedirections:r=0,connect:s,...a}={}){if(super(),typeof t!="function")throw new Zlt("factory must be a function.");if(s!=null&&typeof s!="function"&&typeof s!="object")throw new Zlt("connect must be a function or an object");if(!Number.isInteger(r)||r<0)throw new Zlt("maxRedirections must be a positive number");s&&typeof s!="function"&&(s={...s}),this[RAo]=a.interceptors&&a.interceptors.Agent&&Array.isArray(a.interceptors.Agent)?a.interceptors.Agent:[FAo({maxRedirections:r})],this[Vqt]={...GAo.deepClone(a),connect:s},this[Vqt].interceptors=a.interceptors?{...a.interceptors}:void 0,this[VAo]=r,this[DTn]=t,this[uie]=new Map,this[xTn]=new LAo(g=>{let p=this[uie].get(g);p!==void 0&&p.deref()===void 0&&this[uie].delete(g)});let o=this;this[RTn]=(g,p)=>{o.emit("drain",g,[o,...p])},this[wTn]=(g,p)=>{o.emit("connect",g,[o,...p])},this[TTn]=(g,p,f)=>{o.emit("disconnect",g,[o,...p],f)},this[NTn]=(g,p,f)=>{o.emit("connectionError",g,[o,...p],f)}}get[STn](){let t=0;for(let r of this[uie].values()){let s=r.deref();s&&(t+=s[STn])}return t}[NAo](t,r){let s;if(t.origin&&(typeof t.origin=="string"||t.origin instanceof URL))s=String(t.origin);else throw new Zlt("opts.origin must be a non-empty string or URL.");let a=this[uie].get(s),o=a?a.deref():null;return o||(o=this[DTn](t.origin,this[Vqt]).on("drain",this[RTn]).on("connect",this[wTn]).on("disconnect",this[TTn]).on("connectionError",this[NTn]),this[uie].set(s,new ZAo(o)),this[xTn].register(o,s)),o.dispatch(t,r)}async[wAo](){let t=[];for(let r of this[uie].values()){let s=r.deref();s&&t.push(s.close())}await Promise.all(t)}async[TAo](t){let r=[];for(let s of this[uie].values()){let a=s.deref();a&&r.push(a.destroy(t))}await Promise.all(r)}};kTn.exports=Wqt});var QTn=z((KKc,OTn)=>{"use strict";var LTn=xt("assert"),{Readable:PAo}=xt("stream"),{RequestAbortedError:VTn,NotSupportedError:OAo,InvalidArgumentError:QAo}=yb(),Wlt=Ch(),{ReadableStreamFrom:MAo,toUSVString:HAo}=Ch(),Pqt,xW=Symbol("kConsume"),Llt=Symbol("kReading"),gie=Symbol("kBody"),GTn=Symbol("abort"),WTn=Symbol("kContentType"),FTn=()=>{};OTn.exports=class extends PAo{constructor({resume:t,abort:r,contentType:s="",highWaterMark:a=64*1024}){super({autoDestroy:!0,read:t,highWaterMark:a}),this._readableState.dataEmitted=!1,this[GTn]=r,this[xW]=null,this[gie]=null,this[WTn]=s,this[Llt]=!1}destroy(t){return this.destroyed?this:(!t&&!this._readableState.endEmitted&&(t=new VTn),t&&this[GTn](),super.destroy(t))}emit(t,...r){return t==="data"?this._readableState.dataEmitted=!0:t==="error"&&(this._readableState.errorEmitted=!0),super.emit(t,...r)}on(t,...r){return(t==="data"||t==="readable")&&(this[Llt]=!0),super.on(t,...r)}addListener(t,...r){return this.on(t,...r)}off(t,...r){let s=super.off(t,...r);return(t==="data"||t==="readable")&&(this[Llt]=this.listenerCount("data")>0||this.listenerCount("readable")>0),s}removeListener(t,...r){return this.off(t,...r)}push(t){return this[xW]&&t!==null&&this.readableLength===0?(PTn(this[xW],t),this[Llt]?super.push(t):!0):super.push(t)}async text(){return Vlt(this,"text")}async json(){return Vlt(this,"json")}async blob(){return Vlt(this,"blob")}async arrayBuffer(){return Vlt(this,"arrayBuffer")}async formData(){throw new OAo}get bodyUsed(){return Wlt.isDisturbed(this)}get body(){return this[gie]||(this[gie]=MAo(this),this[xW]&&(this[gie].getReader(),LTn(this[gie].locked))),this[gie]}dump(t){let r=t&&Number.isFinite(t.limit)?t.limit:262144,s=t&&t.signal;if(s)try{if(typeof s!="object"||!("aborted"in s))throw new QAo("signal must be an AbortSignal");Wlt.throwIfAborted(s)}catch(a){return Promise.reject(a)}return this.closed?Promise.resolve(null):new Promise((a,o)=>{let g=s?Wlt.addAbortListener(s,()=>{this.destroy()}):FTn;this.on("close",function(){g(),s&&s.aborted?o(s.reason||Object.assign(new Error("The operation was aborted"),{name:"AbortError"})):a(null)}).on("error",FTn).on("data",function(p){r-=p.length,r<=0&&this.destroy()}).resume()})}};function YAo(e){return e[gie]&&e[gie].locked===!0||e[xW]}function XAo(e){return Wlt.isDisturbed(e)||YAo(e)}async function Vlt(e,t){if(XAo(e))throw new TypeError("unusable");return LTn(!e[xW]),new Promise((r,s)=>{e[xW]={type:t,stream:e,resolve:r,reject:s,length:0,body:[]},e.on("error",function(a){Oqt(this[xW],a)}).on("close",function(){this[xW].body!==null&&Oqt(this[xW],new VTn)}),process.nextTick(JAo,e[xW])})}function JAo(e){if(e.body===null)return;let{_readableState:t}=e.stream;for(let r of t.buffer)PTn(e,r);for(t.endEmitted?ZTn(this[xW]):e.stream.on("end",function(){ZTn(this[xW])}),e.stream.resume();e.stream.read()!=null;);}function ZTn(e){let{type:t,body:r,resolve:s,stream:a,length:o}=e;try{if(t==="text")s(HAo(Buffer.concat(r)));else if(t==="json")s(JSON.parse(Buffer.concat(r)));else if(t==="arrayBuffer"){let g=new Uint8Array(o),p=0;for(let f of r)g.set(f,p),p+=f.byteLength;s(g.buffer)}else t==="blob"&&(Pqt||(Pqt=xt("buffer").Blob),s(new Pqt(r,{type:a[WTn]})));Oqt(e)}catch(g){a.destroy(g)}}function PTn(e,t){e.length+=t.length,e.body.push(t)}function Oqt(e,t){e.body!==null&&(t?e.reject(t):e.resolve(),e.type=null,e.stream=null,e.resolve=null,e.reject=null,e.length=0,e.body=null)}});var Qqt=z((jKc,HTn)=>{var UAo=xt("assert"),{ResponseStatusCodeError:Plt}=yb(),{toUSVString:MTn}=Ch();async function KAo({callback:e,body:t,contentType:r,statusCode:s,statusMessage:a,headers:o}){UAo(t);let g=[],p=0;for await(let f of t)if(g.push(f),p+=f.length,p>128*1024){g=null;break}if(s===204||!r||!g){process.nextTick(e,new Plt(`Response status code ${s}${a?`: ${a}`:""}`,s,o));return}try{if(r.startsWith("application/json")){let f=JSON.parse(MTn(Buffer.concat(g)));process.nextTick(e,new Plt(`Response status code ${s}${a?`: ${a}`:""}`,s,o,f));return}if(r.startsWith("text/")){let f=MTn(Buffer.concat(g));process.nextTick(e,new Plt(`Response status code ${s}${a?`: ${a}`:""}`,s,o,f));return}}catch{}process.nextTick(e,new Plt(`Response status code ${s}${a?`: ${a}`:""}`,s,o))}HTn.exports={getResolveErrorBodyCallback:KAo}});var Z1e=z((zKc,XTn)=>{var{addAbortListener:jAo}=Ch(),{RequestAbortedError:zAo}=yb(),F1e=Symbol("kListener"),Aie=Symbol("kSignal");function YTn(e){e.abort?e.abort():e.onError(new zAo)}function qAo(e,t){if(e[Aie]=null,e[F1e]=null,!!t){if(t.aborted){YTn(e);return}e[Aie]=t,e[F1e]=()=>{YTn(e)},jAo(e[Aie],e[F1e])}}function $Ao(e){e[Aie]&&("removeEventListener"in e[Aie]?e[Aie].removeEventListener("abort",e[F1e]):e[Aie].removeListener("abort",e[F1e]),e[Aie]=null,e[F1e]=null)}XTn.exports={addSignal:qAo,removeSignal:$Ao}});var KTn=z((qKc,Mqt)=>{"use strict";var edo=QTn(),{InvalidArgumentError:L1e,RequestAbortedError:tdo}=yb(),sU=Ch(),{getResolveErrorBodyCallback:rdo}=Qqt(),{AsyncResource:ndo}=xt("async_hooks"),{addSignal:ido,removeSignal:JTn}=Z1e(),Olt=class extends ndo{constructor(t,r){if(!t||typeof t!="object")throw new L1e("invalid opts");let{signal:s,method:a,opaque:o,body:g,onInfo:p,responseHeaders:f,throwOnError:m,highWaterMark:y}=t;try{if(typeof r!="function")throw new L1e("invalid callback");if(y&&(typeof y!="number"||y<0))throw new L1e("invalid highWaterMark");if(s&&typeof s.on!="function"&&typeof s.addEventListener!="function")throw new L1e("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new L1e("invalid method");if(p&&typeof p!="function")throw new L1e("invalid onInfo callback");super("UNDICI_REQUEST")}catch(B){throw sU.isStream(g)&&sU.destroy(g.on("error",sU.nop),B),B}this.responseHeaders=f||null,this.opaque=o||null,this.callback=r,this.res=null,this.abort=null,this.body=g,this.trailers={},this.context=null,this.onInfo=p||null,this.throwOnError=m,this.highWaterMark=y,sU.isStream(g)&&g.on("error",B=>{this.onError(B)}),ido(this,s)}onConnect(t,r){if(!this.callback)throw new tdo;this.abort=t,this.context=r}onHeaders(t,r,s,a){let{callback:o,opaque:g,abort:p,context:f,responseHeaders:m,highWaterMark:y}=this,B=m==="raw"?sU.parseRawHeaders(r):sU.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:B});return}let k=(m==="raw"?sU.parseHeaders(r):B)["content-type"],T=new edo({resume:s,abort:p,contentType:k,highWaterMark:y});this.callback=null,this.res=T,o!==null&&(this.throwOnError&&t>=400?this.runInAsyncScope(rdo,null,{callback:o,body:T,contentType:k,statusCode:t,statusMessage:a,headers:B}):this.runInAsyncScope(o,null,null,{statusCode:t,headers:B,trailers:this.trailers,opaque:g,body:T,context:f}))}onData(t){let{res:r}=this;return r.push(t)}onComplete(t){let{res:r}=this;JTn(this),sU.parseHeaders(t,this.trailers),r.push(null)}onError(t){let{res:r,callback:s,body:a,opaque:o}=this;JTn(this),s&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(s,null,t,{opaque:o})})),r&&(this.res=null,queueMicrotask(()=>{sU.destroy(r,t)})),a&&(this.body=null,sU.destroy(a,t))}};function UTn(e,t){if(t===void 0)return new Promise((r,s)=>{UTn.call(this,e,(a,o)=>a?s(a):r(o))});try{this.dispatch(e,new Olt(e,t))}catch(r){if(typeof t!="function")throw r;let s=e&&e.opaque;queueMicrotask(()=>t(r,{opaque:s}))}}Mqt.exports=UTn;Mqt.exports.RequestHandler=Olt});var $Tn=z(($Kc,qTn)=>{"use strict";var{finished:sdo,PassThrough:odo}=xt("stream"),{InvalidArgumentError:V1e,InvalidReturnValueError:ado,RequestAbortedError:cdo}=yb(),OH=Ch(),{getResolveErrorBodyCallback:ldo}=Qqt(),{AsyncResource:udo}=xt("async_hooks"),{addSignal:gdo,removeSignal:jTn}=Z1e(),Hqt=class extends udo{constructor(t,r,s){if(!t||typeof t!="object")throw new V1e("invalid opts");let{signal:a,method:o,opaque:g,body:p,onInfo:f,responseHeaders:m,throwOnError:y}=t;try{if(typeof s!="function")throw new V1e("invalid callback");if(typeof r!="function")throw new V1e("invalid factory");if(a&&typeof a.on!="function"&&typeof a.addEventListener!="function")throw new V1e("signal must be an EventEmitter or EventTarget");if(o==="CONNECT")throw new V1e("invalid method");if(f&&typeof f!="function")throw new V1e("invalid onInfo callback");super("UNDICI_STREAM")}catch(B){throw OH.isStream(p)&&OH.destroy(p.on("error",OH.nop),B),B}this.responseHeaders=m||null,this.opaque=g||null,this.factory=r,this.callback=s,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=p,this.onInfo=f||null,this.throwOnError=y||!1,OH.isStream(p)&&p.on("error",B=>{this.onError(B)}),gdo(this,a)}onConnect(t,r){if(!this.callback)throw new cdo;this.abort=t,this.context=r}onHeaders(t,r,s,a){let{factory:o,opaque:g,context:p,callback:f,responseHeaders:m}=this,y=m==="raw"?OH.parseRawHeaders(r):OH.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:y});return}this.factory=null;let B;if(this.throwOnError&&t>=400){let T=(m==="raw"?OH.parseHeaders(r):y)["content-type"];B=new odo,this.callback=null,this.runInAsyncScope(ldo,null,{callback:f,body:B,contentType:T,statusCode:t,statusMessage:a,headers:y})}else{if(o===null)return;if(B=this.runInAsyncScope(o,null,{statusCode:t,headers:y,opaque:g,context:p}),!B||typeof B.write!="function"||typeof B.end!="function"||typeof B.on!="function")throw new ado("expected Writable");sdo(B,{readable:!1},k=>{let{callback:T,res:O,opaque:X,trailers:U,abort:le}=this;this.res=null,(k||!O.readable)&&OH.destroy(O,k),this.callback=null,this.runInAsyncScope(T,null,k||null,{opaque:X,trailers:U}),k&&le()})}return B.on("drain",s),this.res=B,(B.writableNeedDrain!==void 0?B.writableNeedDrain:B._writableState&&B._writableState.needDrain)!==!0}onData(t){let{res:r}=this;return r?r.write(t):!0}onComplete(t){let{res:r}=this;jTn(this),r&&(this.trailers=OH.parseHeaders(t),r.end())}onError(t){let{res:r,callback:s,opaque:a,body:o}=this;jTn(this),this.factory=null,r?(this.res=null,OH.destroy(r,t)):s&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(s,null,t,{opaque:a})})),o&&(this.body=null,OH.destroy(o,t))}};function zTn(e,t,r){if(r===void 0)return new Promise((s,a)=>{zTn.call(this,e,t,(o,g)=>o?a(o):s(g))});try{this.dispatch(e,new Hqt(e,t,r))}catch(s){if(typeof r!="function")throw s;let a=e&&e.opaque;queueMicrotask(()=>r(s,{opaque:a}))}}qTn.exports=zTn});var rNn=z((e8c,tNn)=>{"use strict";var{Readable:eNn,Duplex:Ado,PassThrough:ddo}=xt("stream"),{InvalidArgumentError:Y3e,InvalidReturnValueError:pdo,RequestAbortedError:Qlt}=yb(),UO=Ch(),{AsyncResource:fdo}=xt("async_hooks"),{addSignal:Ido,removeSignal:Cdo}=Z1e(),mdo=xt("assert"),W1e=Symbol("resume"),Yqt=class extends eNn{constructor(){super({autoDestroy:!0}),this[W1e]=null}_read(){let{[W1e]:t}=this;t&&(this[W1e]=null,t())}_destroy(t,r){this._read(),r(t)}},Xqt=class extends eNn{constructor(t){super({autoDestroy:!0}),this[W1e]=t}_read(){this[W1e]()}_destroy(t,r){!t&&!this._readableState.endEmitted&&(t=new Qlt),r(t)}},Jqt=class extends fdo{constructor(t,r){if(!t||typeof t!="object")throw new Y3e("invalid opts");if(typeof r!="function")throw new Y3e("invalid handler");let{signal:s,method:a,opaque:o,onInfo:g,responseHeaders:p}=t;if(s&&typeof s.on!="function"&&typeof s.addEventListener!="function")throw new Y3e("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new Y3e("invalid method");if(g&&typeof g!="function")throw new Y3e("invalid onInfo callback");super("UNDICI_PIPELINE"),this.opaque=o||null,this.responseHeaders=p||null,this.handler=r,this.abort=null,this.context=null,this.onInfo=g||null,this.req=new Yqt().on("error",UO.nop),this.ret=new Ado({readableObjectMode:t.objectMode,autoDestroy:!0,read:()=>{let{body:f}=this;f&&f.resume&&f.resume()},write:(f,m,y)=>{let{req:B}=this;B.push(f,m)||B._readableState.destroyed?y():B[W1e]=y},destroy:(f,m)=>{let{body:y,req:B,res:v,ret:k,abort:T}=this;!f&&!k._readableState.endEmitted&&(f=new Qlt),T&&f&&T(),UO.destroy(y,f),UO.destroy(B,f),UO.destroy(v,f),Cdo(this),m(f)}}).on("prefinish",()=>{let{req:f}=this;f.push(null)}),this.res=null,Ido(this,s)}onConnect(t,r){let{ret:s,res:a}=this;if(mdo(!a,"pipeline cannot be retried"),s.destroyed)throw new Qlt;this.abort=t,this.context=r}onHeaders(t,r,s){let{opaque:a,handler:o,context:g}=this;if(t<200){if(this.onInfo){let f=this.responseHeaders==="raw"?UO.parseRawHeaders(r):UO.parseHeaders(r);this.onInfo({statusCode:t,headers:f})}return}this.res=new Xqt(s);let p;try{this.handler=null;let f=this.responseHeaders==="raw"?UO.parseRawHeaders(r):UO.parseHeaders(r);p=this.runInAsyncScope(o,null,{statusCode:t,headers:f,opaque:a,body:this.res,context:g})}catch(f){throw this.res.on("error",UO.nop),f}if(!p||typeof p.on!="function")throw new pdo("expected Readable");p.on("data",f=>{let{ret:m,body:y}=this;!m.push(f)&&y.pause&&y.pause()}).on("error",f=>{let{ret:m}=this;UO.destroy(m,f)}).on("end",()=>{let{ret:f}=this;f.push(null)}).on("close",()=>{let{ret:f}=this;f._readableState.ended||UO.destroy(f,new Qlt)}),this.body=p}onData(t){let{res:r}=this;return r.push(t)}onComplete(t){let{res:r}=this;r.push(null)}onError(t){let{ret:r}=this;this.handler=null,UO.destroy(r,t)}};function hdo(e,t){try{let r=new Jqt(e,t);return this.dispatch({...e,body:r.req},r),r.ret}catch(r){return new ddo().destroy(r)}}tNn.exports=hdo});var aNn=z((t8c,oNn)=>{"use strict";var{InvalidArgumentError:Uqt,RequestAbortedError:_do,SocketError:ydo}=yb(),{AsyncResource:bdo}=xt("async_hooks"),nNn=Ch(),{addSignal:Edo,removeSignal:iNn}=Z1e(),Bdo=xt("assert"),Kqt=class extends bdo{constructor(t,r){if(!t||typeof t!="object")throw new Uqt("invalid opts");if(typeof r!="function")throw new Uqt("invalid callback");let{signal:s,opaque:a,responseHeaders:o}=t;if(s&&typeof s.on!="function"&&typeof s.addEventListener!="function")throw new Uqt("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE"),this.responseHeaders=o||null,this.opaque=a||null,this.callback=r,this.abort=null,this.context=null,Edo(this,s)}onConnect(t,r){if(!this.callback)throw new _do;this.abort=t,this.context=null}onHeaders(){throw new ydo("bad upgrade",null)}onUpgrade(t,r,s){let{callback:a,opaque:o,context:g}=this;Bdo.strictEqual(t,101),iNn(this),this.callback=null;let p=this.responseHeaders==="raw"?nNn.parseRawHeaders(r):nNn.parseHeaders(r);this.runInAsyncScope(a,null,null,{headers:p,socket:s,opaque:o,context:g})}onError(t){let{callback:r,opaque:s}=this;iNn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:s})}))}};function sNn(e,t){if(t===void 0)return new Promise((r,s)=>{sNn.call(this,e,(a,o)=>a?s(a):r(o))});try{let r=new Kqt(e,t);this.dispatch({...e,method:e.method||"GET",upgrade:e.protocol||"Websocket"},r)}catch(r){if(typeof t!="function")throw r;let s=e&&e.opaque;queueMicrotask(()=>t(r,{opaque:s}))}}oNn.exports=sNn});var ANn=z((r8c,gNn)=>{"use strict";var{AsyncResource:vdo}=xt("async_hooks"),{InvalidArgumentError:jqt,RequestAbortedError:Sdo,SocketError:wdo}=yb(),cNn=Ch(),{addSignal:Tdo,removeSignal:lNn}=Z1e(),zqt=class extends vdo{constructor(t,r){if(!t||typeof t!="object")throw new jqt("invalid opts");if(typeof r!="function")throw new jqt("invalid callback");let{signal:s,opaque:a,responseHeaders:o}=t;if(s&&typeof s.on!="function"&&typeof s.addEventListener!="function")throw new jqt("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT"),this.opaque=a||null,this.responseHeaders=o||null,this.callback=r,this.abort=null,Tdo(this,s)}onConnect(t,r){if(!this.callback)throw new Sdo;this.abort=t,this.context=r}onHeaders(){throw new wdo("bad connect",null)}onUpgrade(t,r,s){let{callback:a,opaque:o,context:g}=this;lNn(this),this.callback=null;let p=r;p!=null&&(p=this.responseHeaders==="raw"?cNn.parseRawHeaders(r):cNn.parseHeaders(r)),this.runInAsyncScope(a,null,null,{statusCode:t,headers:p,socket:s,opaque:o,context:g})}onError(t){let{callback:r,opaque:s}=this;lNn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:s})}))}};function uNn(e,t){if(t===void 0)return new Promise((r,s)=>{uNn.call(this,e,(a,o)=>a?s(a):r(o))});try{let r=new zqt(e,t);this.dispatch({...e,method:"CONNECT"},r)}catch(r){if(typeof t!="function")throw r;let s=e&&e.opaque;queueMicrotask(()=>t(r,{opaque:s}))}}gNn.exports=uNn});var dNn=z((n8c,P1e)=>{"use strict";P1e.exports.request=KTn();P1e.exports.stream=$Tn();P1e.exports.pipeline=rNn();P1e.exports.upgrade=aNn();P1e.exports.connect=ANn()});var $qt=z((i8c,pNn)=>{"use strict";var{UndiciError:Ndo}=yb(),qqt=class e extends Ndo{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="MockNotMatchedError",this.message=t||"The request does not match any registered mock dispatches",this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}};pNn.exports={MockNotMatchedError:qqt}});var O1e=z((s8c,fNn)=>{"use strict";fNn.exports={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected")}});var X3e=z((o8c,wNn)=>{"use strict";var{MockNotMatchedError:vde}=$qt(),{kDispatches:Mlt,kMockAgent:Rdo,kOriginalDispatch:Ddo,kOrigin:xdo,kGetNetConnect:kdo}=O1e(),{buildURL:Gdo,nop:Fdo}=Ch(),{STATUS_CODES:Zdo}=xt("http"),{types:{isPromise:Ldo}}=xt("util");function jj(e,t){return typeof e=="string"?e===t:e instanceof RegExp?e.test(t):typeof e=="function"?e(t)===!0:!1}function CNn(e){return Object.fromEntries(Object.entries(e).map(([t,r])=>[t.toLocaleLowerCase(),r]))}function mNn(e,t){if(Array.isArray(e)){for(let r=0;r"u")return!0;if(typeof t!="object"||typeof e.headers!="object")return!1;for(let[r,s]of Object.entries(e.headers)){let a=mNn(t,r);if(!jj(s,a))return!1}return!0}function INn(e){if(typeof e!="string")return e;let t=e.split("?");if(t.length!==2)return e;let r=new URLSearchParams(t.pop());return r.sort(),[...t,r.toString()].join("?")}function Vdo(e,{path:t,method:r,body:s,headers:a}){let o=jj(e.path,t),g=jj(e.method,r),p=typeof e.body<"u"?jj(e.body,s):!0,f=_Nn(e,a);return o&&g&&p&&f}function yNn(e){return Buffer.isBuffer(e)?e:typeof e=="object"?JSON.stringify(e):e.toString()}function bNn(e,t){let r=t.query?Gdo(t.path,t.query):t.path,s=typeof r=="string"?INn(r):r,a=e.filter(({consumed:o})=>!o).filter(({path:o})=>jj(INn(o),s));if(a.length===0)throw new vde(`Mock dispatch not matched for path '${s}'`);if(a=a.filter(({method:o})=>jj(o,t.method)),a.length===0)throw new vde(`Mock dispatch not matched for method '${t.method}'`);if(a=a.filter(({body:o})=>typeof o<"u"?jj(o,t.body):!0),a.length===0)throw new vde(`Mock dispatch not matched for body '${t.body}'`);if(a=a.filter(o=>_Nn(o,t.headers)),a.length===0)throw new vde(`Mock dispatch not matched for headers '${typeof t.headers=="object"?JSON.stringify(t.headers):t.headers}'`);return a[0]}function Wdo(e,t,r){let s={timesInvoked:0,times:1,persist:!1,consumed:!1},a=typeof r=="function"?{callback:r}:{...r},o={...s,...t,pending:!0,data:{error:null,...a}};return e.push(o),o}function e$t(e,t){let r=e.findIndex(s=>s.consumed?Vdo(s,t):!1);r!==-1&&e.splice(r,1)}function ENn(e){let{path:t,method:r,body:s,headers:a,query:o}=e;return{path:t,method:r,body:s,headers:a,query:o}}function t$t(e){return Object.entries(e).reduce((t,[r,s])=>[...t,Buffer.from(`${r}`),Array.isArray(s)?s.map(a=>Buffer.from(`${a}`)):Buffer.from(`${s}`)],[])}function BNn(e){return Zdo[e]||"unknown"}async function Pdo(e){let t=[];for await(let r of e)t.push(r);return Buffer.concat(t).toString("utf8")}function vNn(e,t){let r=ENn(e),s=bNn(this[Mlt],r);s.timesInvoked++,s.data.callback&&(s.data={...s.data,...s.data.callback(e)});let{data:{statusCode:a,data:o,headers:g,trailers:p,error:f},delay:m,persist:y}=s,{timesInvoked:B,times:v}=s;if(s.consumed=!y&&B>=v,s.pending=B0?setTimeout(()=>{k(this[Mlt])},m):k(this[Mlt]);function k(O,X=o){let U=Array.isArray(e.headers)?hNn(e.headers):e.headers,le=typeof X=="function"?X({...e,headers:U}):X;if(Ldo(le)){le.then(pe=>k(O,pe));return}let ae=yNn(le),ge=t$t(g),fe=t$t(p);t.abort=Fdo,t.onHeaders(a,ge,T,BNn(a)),t.onData(Buffer.from(ae)),t.onComplete(fe),e$t(O,r)}function T(){}return!0}function Odo(){let e=this[Rdo],t=this[xdo],r=this[Ddo];return function(a,o){if(e.isMockActive)try{vNn.call(this,a,o)}catch(g){if(g instanceof vde){let p=e[kdo]();if(p===!1)throw new vde(`${g.message}: subsequent request to origin ${t} was not allowed (net.connect disabled)`);if(SNn(p,t))r.call(this,a,o);else throw new vde(`${g.message}: subsequent request to origin ${t} was not allowed (net.connect is not enabled for this origin)`)}else throw g}else r.call(this,a,o)}}function SNn(e,t){let r=new URL(t);return e===!0?!0:!!(Array.isArray(e)&&e.some(s=>jj(s,r.host)))}function Qdo(e){if(e){let{agent:t,...r}=e;return r}}wNn.exports={getResponseData:yNn,getMockDispatch:bNn,addMockDispatch:Wdo,deleteMockDispatch:e$t,buildKey:ENn,generateKeyValues:t$t,matchValue:jj,getResponse:Pdo,getStatusText:BNn,mockDispatch:vNn,buildMockDispatch:Odo,checkNetConnect:SNn,buildMockOptions:Qdo,getHeaderByName:mNn}});var c$t=z((a8c,a$t)=>{"use strict";var{getResponseData:Mdo,buildKey:Hdo,addMockDispatch:r$t}=X3e(),{kDispatches:Hlt,kDispatchKey:Ylt,kDefaultHeaders:n$t,kDefaultTrailers:i$t,kContentLength:s$t,kMockDispatch:Xlt}=O1e(),{InvalidArgumentError:QH}=yb(),{buildURL:Ydo}=Ch(),Q1e=class{constructor(t){this[Xlt]=t}delay(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new QH("waitInMs must be a valid integer > 0");return this[Xlt].delay=t,this}persist(){return this[Xlt].persist=!0,this}times(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new QH("repeatTimes must be a valid integer > 0");return this[Xlt].times=t,this}},o$t=class{constructor(t,r){if(typeof t!="object")throw new QH("opts must be an object");if(typeof t.path>"u")throw new QH("opts.path must be defined");if(typeof t.method>"u"&&(t.method="GET"),typeof t.path=="string")if(t.query)t.path=Ydo(t.path,t.query);else{let s=new URL(t.path,"data://");t.path=s.pathname+s.search}typeof t.method=="string"&&(t.method=t.method.toUpperCase()),this[Ylt]=Hdo(t),this[Hlt]=r,this[n$t]={},this[i$t]={},this[s$t]=!1}createMockScopeDispatchData(t,r,s={}){let a=Mdo(r),o=this[s$t]?{"content-length":a.length}:{},g={...this[n$t],...o,...s.headers},p={...this[i$t],...s.trailers};return{statusCode:t,data:r,headers:g,trailers:p}}validateReplyParameters(t,r,s){if(typeof t>"u")throw new QH("statusCode must be defined");if(typeof r>"u")throw new QH("data must be defined");if(typeof s!="object")throw new QH("responseOptions must be an object")}reply(t){if(typeof t=="function"){let p=m=>{let y=t(m);if(typeof y!="object")throw new QH("reply options callback must return an object");let{statusCode:B,data:v="",responseOptions:k={}}=y;return this.validateReplyParameters(B,v,k),{...this.createMockScopeDispatchData(B,v,k)}},f=r$t(this[Hlt],this[Ylt],p);return new Q1e(f)}let[r,s="",a={}]=[...arguments];this.validateReplyParameters(r,s,a);let o=this.createMockScopeDispatchData(r,s,a),g=r$t(this[Hlt],this[Ylt],o);return new Q1e(g)}replyWithError(t){if(typeof t>"u")throw new QH("error must be defined");let r=r$t(this[Hlt],this[Ylt],{error:t});return new Q1e(r)}defaultReplyHeaders(t){if(typeof t>"u")throw new QH("headers must be defined");return this[n$t]=t,this}defaultReplyTrailers(t){if(typeof t>"u")throw new QH("trailers must be defined");return this[i$t]=t,this}replyContentLength(){return this[s$t]=!0,this}};a$t.exports.MockInterceptor=o$t;a$t.exports.MockScope=Q1e});var g$t=z((c8c,GNn)=>{"use strict";var{promisify:Xdo}=xt("util"),Jdo=P3e(),{buildMockDispatch:Udo}=X3e(),{kDispatches:TNn,kMockAgent:NNn,kClose:RNn,kOriginalClose:DNn,kOrigin:xNn,kOriginalDispatch:Kdo,kConnected:l$t}=O1e(),{MockInterceptor:jdo}=c$t(),kNn=lE(),{InvalidArgumentError:zdo}=yb(),u$t=class extends Jdo{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new zdo("Argument opts.agent must implement Agent");this[NNn]=r.agent,this[xNn]=t,this[TNn]=[],this[l$t]=1,this[Kdo]=this.dispatch,this[DNn]=this.close.bind(this),this.dispatch=Udo.call(this),this.close=this[RNn]}get[kNn.kConnected](){return this[l$t]}intercept(t){return new jdo(t,this[TNn])}async[RNn](){await Xdo(this[DNn])(),this[l$t]=0,this[NNn][kNn.kClients].delete(this[xNn])}};GNn.exports=u$t});var p$t=z((l8c,ONn)=>{"use strict";var{promisify:qdo}=xt("util"),$do=G1e(),{buildMockDispatch:epo}=X3e(),{kDispatches:FNn,kMockAgent:ZNn,kClose:LNn,kOriginalClose:VNn,kOrigin:WNn,kOriginalDispatch:tpo,kConnected:A$t}=O1e(),{MockInterceptor:rpo}=c$t(),PNn=lE(),{InvalidArgumentError:npo}=yb(),d$t=class extends $do{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new npo("Argument opts.agent must implement Agent");this[ZNn]=r.agent,this[WNn]=t,this[FNn]=[],this[A$t]=1,this[tpo]=this.dispatch,this[VNn]=this.close.bind(this),this.dispatch=epo.call(this),this.close=this[LNn]}get[PNn.kConnected](){return this[A$t]}intercept(t){return new rpo(t,this[FNn])}async[LNn](){await qdo(this[VNn])(),this[A$t]=0,this[ZNn][PNn.kClients].delete(this[WNn])}};ONn.exports=d$t});var MNn=z((g8c,QNn)=>{"use strict";var ipo={pronoun:"it",is:"is",was:"was",this:"this"},spo={pronoun:"they",is:"are",was:"were",this:"these"};QNn.exports=class{constructor(t,r){this.singular=t,this.plural=r}pluralize(t){let r=t===1,s=r?ipo:spo,a=r?this.singular:this.plural;return{...s,count:t,noun:a}}}});var YNn=z((d8c,HNn)=>{"use strict";var{Transform:opo}=xt("stream"),{Console:apo}=xt("console");HNn.exports=class{constructor({disableColors:t}={}){this.transform=new opo({transform(r,s,a){a(null,r)}}),this.logger=new apo({stdout:this.transform,inspectOptions:{colors:!t&&!process.env.CI}})}format(t){let r=t.map(({method:s,path:a,data:{statusCode:o},persist:g,times:p,timesInvoked:f,origin:m})=>({Method:s,Origin:m,Path:a,"Status code":o,Persistent:g?"\u2705":"\u274C",Invocations:f,Remaining:g?1/0:p-f}));return this.logger.table(r),this.transform.read().toString()}}});var KNn=z((p8c,UNn)=>{"use strict";var{kClients:Sde}=lE(),cpo=H3e(),{kAgent:f$t,kMockAgentSet:Jlt,kMockAgentGet:XNn,kDispatches:I$t,kIsMockActive:Ult,kNetConnect:wde,kGetNetConnect:lpo,kOptions:Klt,kFactory:jlt}=O1e(),upo=g$t(),gpo=p$t(),{matchValue:Apo,buildMockOptions:dpo}=X3e(),{InvalidArgumentError:JNn,UndiciError:ppo}=yb(),fpo=Ilt(),Ipo=MNn(),Cpo=YNn(),C$t=class{constructor(t){this.value=t}deref(){return this.value}},m$t=class extends fpo{constructor(t){if(super(t),this[wde]=!0,this[Ult]=!0,t&&t.agent&&typeof t.agent.dispatch!="function")throw new JNn("Argument opts.agent must implement Agent");let r=t&&t.agent?t.agent:new cpo(t);this[f$t]=r,this[Sde]=r[Sde],this[Klt]=dpo(t)}get(t){let r=this[XNn](t);return r||(r=this[jlt](t),this[Jlt](t,r)),r}dispatch(t,r){return this.get(t.origin),this[f$t].dispatch(t,r)}async close(){await this[f$t].close(),this[Sde].clear()}deactivate(){this[Ult]=!1}activate(){this[Ult]=!0}enableNetConnect(t){if(typeof t=="string"||typeof t=="function"||t instanceof RegExp)Array.isArray(this[wde])?this[wde].push(t):this[wde]=[t];else if(typeof t>"u")this[wde]=!0;else throw new JNn("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[wde]=!1}get isMockActive(){return this[Ult]}[Jlt](t,r){this[Sde].set(t,new C$t(r))}[jlt](t){let r=Object.assign({agent:this},this[Klt]);return this[Klt]&&this[Klt].connections===1?new upo(t,r):new gpo(t,r)}[XNn](t){let r=this[Sde].get(t);if(r)return r.deref();if(typeof t!="string"){let s=this[jlt]("http://localhost:9999");return this[Jlt](t,s),s}for(let[s,a]of Array.from(this[Sde])){let o=a.deref();if(o&&typeof s!="string"&&Apo(s,t)){let g=this[jlt](t);return this[Jlt](t,g),g[I$t]=o[I$t],g}}}[lpo](){return this[wde]}pendingInterceptors(){let t=this[Sde];return Array.from(t.entries()).flatMap(([r,s])=>s.deref()[I$t].map(a=>({...a,origin:r}))).filter(({pending:r})=>r)}assertNoPendingInterceptors({pendingInterceptorsFormatter:t=new Cpo}={}){let r=this.pendingInterceptors();if(r.length===0)return;let s=new Ipo("interceptor","interceptors").pluralize(r.length);throw new ppo(` ${s.count} ${s.noun} ${s.is} pending: ${t.format(r)} -`.trim())}};WNn.exports=f$t});var XNn=z((zKc,HNn)=>{"use strict";var{kProxy:spo,kClose:opo,kDestroy:apo,kInterceptors:cpo}=aE(),{URL:ONn}=Dt("url"),MNn=O3e(),lpo=x1e(),upo=T3e(),{InvalidArgumentError:X3e,RequestAbortedError:gpo}=_b(),QNn=N3e(),Y3e=Symbol("proxy agent"),Klt=Symbol("proxy client"),H3e=Symbol("proxy headers"),I$t=Symbol("request tls settings"),Apo=Symbol("proxy tls settings"),YNn=Symbol("connect endpoint function");function dpo(e){return e==="https:"?443:80}function ppo(e){if(typeof e=="string"&&(e={uri:e}),!e||!e.uri)throw new X3e("Proxy opts.uri is mandatory");return{uri:e.uri,protocol:e.protocol||"https"}}function fpo(e,t){return new lpo(e,t)}var C$t=class extends upo{constructor(t){if(super(t),this[spo]=ppo(t),this[Y3e]=new MNn(t),this[cpo]=t.interceptors&&t.interceptors.ProxyAgent&&Array.isArray(t.interceptors.ProxyAgent)?t.interceptors.ProxyAgent:[],typeof t=="string"&&(t={uri:t}),!t||!t.uri)throw new X3e("Proxy opts.uri is mandatory");let{clientFactory:r=fpo}=t;if(typeof r!="function")throw new X3e("Proxy opts.clientFactory must be a function.");this[I$t]=t.requestTls,this[Apo]=t.proxyTls,this[H3e]=t.headers||{};let s=new ONn(t.uri),{origin:a,port:o,host:g,username:p,password:f}=s;if(t.auth&&t.token)throw new X3e("opts.auth cannot be used in combination with opts.token");t.auth?this[H3e]["proxy-authorization"]=`Basic ${t.auth}`:t.token?this[H3e]["proxy-authorization"]=t.token:p&&f&&(this[H3e]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(p)}:${decodeURIComponent(f)}`).toString("base64")}`);let m=QNn({...t.proxyTls});this[YNn]=QNn({...t.requestTls}),this[Klt]=r(s,{connect:m}),this[Y3e]=new MNn({...t,connect:async(y,B)=>{let v=y.host;y.port||(v+=`:${dpo(y.protocol)}`);try{let{socket:G,statusCode:T}=await this[Klt].connect({origin:a,port:o,path:v,signal:y.signal,headers:{...this[H3e],host:g}});if(T!==200&&(G.on("error",()=>{}).destroy(),B(new gpo(`Proxy response (${T}) !== 200 when HTTP Tunneling`))),y.protocol!=="https:"){B(null,G);return}let O;this[I$t]?O=this[I$t].servername:O=y.servername,this[YNn]({...y,servername:O,httpSocket:G},B)}catch(G){B(G)}}})}dispatch(t,r){let{host:s}=new ONn(t.origin),a=Ipo(t.headers);return Cpo(a),this[Y3e].dispatch({...t,headers:{...a,host:s}},r)}async[opo](){await this[Y3e].close(),await this[Klt].close()}async[apo](){await this[Y3e].destroy(),await this[Klt].destroy()}};function Ipo(e){if(Array.isArray(e)){let t={};for(let r=0;rr.toLowerCase()==="proxy-authorization"))throw new X3e("Proxy-Authorization should be sent in ProxyAgent constructor")}HNn.exports=C$t});var zNn=z((qKc,jNn)=>{var hde=Dt("assert"),{kRetryHandlerDefaultRetry:JNn}=aE(),{RequestRetryError:jlt}=_b(),{isDisturbed:UNn,parseHeaders:mpo,parseRangeHeader:KNn}=Ih();function hpo(e){let t=Date.now();return new Date(e).getTime()-t}var m$t=class e{constructor(t,r){let{retryOptions:s,...a}=t,{retry:o,maxRetries:g,maxTimeout:p,minTimeout:f,timeoutFactor:m,methods:y,errorCodes:B,retryAfter:v,statusCodes:G}=s??{};this.dispatch=r.dispatch,this.handler=r.handler,this.opts=a,this.abort=null,this.aborted=!1,this.retryOpts={retry:o??e[JNn],retryAfter:v??!0,maxTimeout:p??30*1e3,timeout:f??500,timeoutFactor:m??2,maxRetries:g??5,methods:y??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:G??[500,502,503,504,429],errorCodes:B??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE"]},this.retryCount=0,this.start=0,this.end=null,this.etag=null,this.resume=null,this.handler.onConnect(T=>{this.aborted=!0,this.abort?this.abort(T):this.reason=T})}onRequestSent(){this.handler.onRequestSent&&this.handler.onRequestSent()}onUpgrade(t,r,s){this.handler.onUpgrade&&this.handler.onUpgrade(t,r,s)}onConnect(t){this.aborted?t(this.reason):this.abort=t}onBodySent(t){if(this.handler.onBodySent)return this.handler.onBodySent(t)}static[JNn](t,{state:r,opts:s},a){let{statusCode:o,code:g,headers:p}=t,{method:f,retryOptions:m}=s,{maxRetries:y,timeout:B,maxTimeout:v,timeoutFactor:G,statusCodes:T,errorCodes:O,methods:X}=m,{counter:U,currentTimeout:le}=r;if(le=le!=null&&le>0?le:B,g&&g!=="UND_ERR_REQ_RETRY"&&g!=="UND_ERR_SOCKET"&&!O.includes(g)){a(t);return}if(Array.isArray(X)&&!X.includes(f)){a(t);return}if(o!=null&&Array.isArray(T)&&!T.includes(o)){a(t);return}if(U>y){a(t);return}let ae=p!=null&&p["retry-after"];ae&&(ae=Number(ae),ae=isNaN(ae)?hpo(ae):ae*1e3);let ge=ae>0?Math.min(ae,v):Math.min(le*G**U,v);r.currentTimeout=ge,setTimeout(()=>a(null),ge)}onHeaders(t,r,s,a){let o=mpo(r);if(this.retryCount+=1,t>=300)return this.abort(new jlt("Request failed",t,{headers:o,count:this.retryCount})),!1;if(this.resume!=null){if(this.resume=null,t!==206)return!0;let p=KNn(o["content-range"]);if(!p)return this.abort(new jlt("Content-Range mismatch",t,{headers:o,count:this.retryCount})),!1;if(this.etag!=null&&this.etag!==o.etag)return this.abort(new jlt("ETag mismatch",t,{headers:o,count:this.retryCount})),!1;let{start:f,size:m,end:y=m}=p;return hde(this.start===f,"content-range mismatch"),hde(this.end==null||this.end===y,"content-range mismatch"),this.resume=s,!0}if(this.end==null){if(t===206){let p=KNn(o["content-range"]);if(p==null)return this.handler.onHeaders(t,r,s,a);let{start:f,size:m,end:y=m}=p;hde(f!=null&&Number.isFinite(f)&&this.start!==f,"content-range mismatch"),hde(Number.isFinite(f)),hde(y!=null&&Number.isFinite(y)&&this.end!==y,"invalid content-length"),this.start=f,this.end=y}if(this.end==null){let p=o["content-length"];this.end=p!=null?Number(p):null}return hde(Number.isFinite(this.start)),hde(this.end==null||Number.isFinite(this.end),"invalid content-length"),this.resume=s,this.etag=o.etag!=null?o.etag:null,this.handler.onHeaders(t,r,s,a)}let g=new jlt("Request failed",t,{headers:o,count:this.retryCount});return this.abort(g),!1}onData(t){return this.start+=t.length,this.handler.onData(t)}onComplete(t){return this.retryCount=0,this.handler.onComplete(t)}onError(t){if(this.aborted||UNn(this.opts.body))return this.handler.onError(t);this.retryOpts.retry(t,{state:{counter:this.retryCount++,currentTimeout:this.retryAfter},opts:{retryOptions:this.retryOpts,...this.opts}},r.bind(this));function r(s){if(s!=null||this.aborted||UNn(this.opts.body))return this.handler.onError(s);this.start!==0&&(this.opts={...this.opts,headers:{...this.opts.headers,range:`bytes=${this.start}-${this.end??""}`}});try{this.dispatch(this.opts,this)}catch(a){this.handler.onError(a)}}}};jNn.exports=m$t});var O1e=z(($Kc,tRn)=>{"use strict";var qNn=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:_po}=_b(),ypo=O3e();eRn()===void 0&&$Nn(new ypo);function $Nn(e){if(!e||typeof e.dispatch!="function")throw new _po("Argument agent must implement Agent");Object.defineProperty(globalThis,qNn,{value:e,writable:!0,enumerable:!1,configurable:!1})}function eRn(){return globalThis[qNn]}tRn.exports={setGlobalDispatcher:$Nn,getGlobalDispatcher:eRn}});var nRn=z((t8c,rRn)=>{"use strict";rRn.exports=class{constructor(t){this.handler=t}onConnect(...t){return this.handler.onConnect(...t)}onError(...t){return this.handler.onError(...t)}onUpgrade(...t){return this.handler.onUpgrade(...t)}onHeaders(...t){return this.handler.onHeaders(...t)}onData(...t){return this.handler.onData(...t)}onComplete(...t){return this.handler.onComplete(...t)}onBodySent(...t){return this.handler.onBodySent(...t)}}});var _de=z((r8c,cRn)=>{"use strict";var{kHeadersList:WL,kConstruct:bpo}=aE(),{kGuard:iU}=Zj(),{kEnumerableProperty:nU}=Ih(),{makeIterator:M1e,isValidHeaderName:J3e,isValidHeaderValue:sRn}=QO(),{webidl:PC}=SF(),Epo=Dt("assert"),VL=Symbol("headers map"),FD=Symbol("headers map sorted");function iRn(e){return e===10||e===13||e===9||e===32}function oRn(e){let t=0,r=e.length;for(;r>t&&iRn(e.charCodeAt(r-1));)--r;for(;r>t&&iRn(e.charCodeAt(t));)++t;return t===0&&r===e.length?e:e.substring(t,r)}function aRn(e,t){if(Array.isArray(t))for(let r=0;r>","record"]})}function h$t(e,t,r){if(r=oRn(r),J3e(t)){if(!sRn(r))throw PC.errors.invalidArgument({prefix:"Headers.append",value:r,type:"header value"})}else throw PC.errors.invalidArgument({prefix:"Headers.append",value:t,type:"header name"});if(e[iU]==="immutable")throw new TypeError("immutable");return e[iU],e[WL].append(t,r)}var zlt=class e{cookies=null;constructor(t){t instanceof e?(this[VL]=new Map(t[VL]),this[FD]=t[FD],this.cookies=t.cookies===null?null:[...t.cookies]):(this[VL]=new Map(t),this[FD]=null)}contains(t){return t=t.toLowerCase(),this[VL].has(t)}clear(){this[VL].clear(),this[FD]=null,this.cookies=null}append(t,r){this[FD]=null;let s=t.toLowerCase(),a=this[VL].get(s);if(a){let o=s==="cookie"?"; ":", ";this[VL].set(s,{name:a.name,value:`${a.value}${o}${r}`})}else this[VL].set(s,{name:t,value:r});s==="set-cookie"&&(this.cookies??=[],this.cookies.push(r))}set(t,r){this[FD]=null;let s=t.toLowerCase();s==="set-cookie"&&(this.cookies=[r]),this[VL].set(s,{name:t,value:r})}delete(t){this[FD]=null,t=t.toLowerCase(),t==="set-cookie"&&(this.cookies=null),this[VL].delete(t)}get(t){let r=this[VL].get(t.toLowerCase());return r===void 0?null:r.value}*[Symbol.iterator](){for(let[t,{value:r}]of this[VL])yield[t,r]}get entries(){let t={};if(this[VL].size)for(let{name:r,value:s}of this[VL].values())t[r]=s;return t}},Q1e=class e{constructor(t=void 0){t!==bpo&&(this[WL]=new zlt,this[iU]="none",t!==void 0&&(t=PC.converters.HeadersInit(t),aRn(this,t)))}append(t,r){return PC.brandCheck(this,e),PC.argumentLengthCheck(arguments,2,{header:"Headers.append"}),t=PC.converters.ByteString(t),r=PC.converters.ByteString(r),h$t(this,t,r)}delete(t){if(PC.brandCheck(this,e),PC.argumentLengthCheck(arguments,1,{header:"Headers.delete"}),t=PC.converters.ByteString(t),!J3e(t))throw PC.errors.invalidArgument({prefix:"Headers.delete",value:t,type:"header name"});if(this[iU]==="immutable")throw new TypeError("immutable");this[iU],this[WL].contains(t)&&this[WL].delete(t)}get(t){if(PC.brandCheck(this,e),PC.argumentLengthCheck(arguments,1,{header:"Headers.get"}),t=PC.converters.ByteString(t),!J3e(t))throw PC.errors.invalidArgument({prefix:"Headers.get",value:t,type:"header name"});return this[WL].get(t)}has(t){if(PC.brandCheck(this,e),PC.argumentLengthCheck(arguments,1,{header:"Headers.has"}),t=PC.converters.ByteString(t),!J3e(t))throw PC.errors.invalidArgument({prefix:"Headers.has",value:t,type:"header name"});return this[WL].contains(t)}set(t,r){if(PC.brandCheck(this,e),PC.argumentLengthCheck(arguments,2,{header:"Headers.set"}),t=PC.converters.ByteString(t),r=PC.converters.ByteString(r),r=oRn(r),J3e(t)){if(!sRn(r))throw PC.errors.invalidArgument({prefix:"Headers.set",value:r,type:"header value"})}else throw PC.errors.invalidArgument({prefix:"Headers.set",value:t,type:"header name"});if(this[iU]==="immutable")throw new TypeError("immutable");this[iU],this[WL].set(t,r)}getSetCookie(){PC.brandCheck(this,e);let t=this[WL].cookies;return t?[...t]:[]}get[FD](){if(this[WL][FD])return this[WL][FD];let t=[],r=[...this[WL]].sort((a,o)=>a[0]t,"Headers","key")}return M1e(()=>[...this[FD].values()],"Headers","key")}values(){if(PC.brandCheck(this,e),this[iU]==="immutable"){let t=this[FD];return M1e(()=>t,"Headers","value")}return M1e(()=>[...this[FD].values()],"Headers","value")}entries(){if(PC.brandCheck(this,e),this[iU]==="immutable"){let t=this[FD];return M1e(()=>t,"Headers","key+value")}return M1e(()=>[...this[FD].values()],"Headers","key+value")}forEach(t,r=globalThis){if(PC.brandCheck(this,e),PC.argumentLengthCheck(arguments,1,{header:"Headers.forEach"}),typeof t!="function")throw new TypeError("Failed to execute 'forEach' on 'Headers': parameter 1 is not of type 'Function'.");for(let[s,a]of this)t.apply(r,[a,s,this])}[Symbol.for("nodejs.util.inspect.custom")](){return PC.brandCheck(this,e),this[WL]}};Q1e.prototype[Symbol.iterator]=Q1e.prototype.entries;Object.defineProperties(Q1e.prototype,{append:nU,delete:nU,get:nU,has:nU,set:nU,getSetCookie:nU,keys:nU,values:nU,entries:nU,forEach:nU,[Symbol.iterator]:{enumerable:!1},[Symbol.toStringTag]:{value:"Headers",configurable:!0}});PC.converters.HeadersInit=function(e){if(PC.util.Type(e)==="Object")return e[Symbol.iterator]?PC.converters["sequence>"](e):PC.converters["record"](e);throw PC.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence>","record"]})};cRn.exports={fill:aRn,Headers:Q1e,HeadersList:zlt}});var tut=z((n8c,IRn)=>{"use strict";var{Headers:Bpo,HeadersList:lRn,fill:vpo}=_de(),{extractBody:uRn,cloneBody:Spo,mixinBody:wpo}=v3e(),b$t=Ih(),{kEnumerableProperty:kW}=b$t,{isValidReasonPhrase:Tpo,isCancelled:Npo,isAborted:Rpo,isBlobLike:Dpo,serializeJavascriptValueToJSONString:xpo,isErrorLike:kpo,isomorphicEncode:Gpo}=QO(),{redirectStatusSet:Fpo,nullBodyStatus:Zpo,DOMException:gRn}=nie(),{kState:K1,kHeaders:gR,kGuard:Y1e,kRealm:xW}=Zj(),{webidl:BC}=SF(),{FormData:Lpo}=glt(),{getGlobalOrigin:Vpo}=h1e(),{URLSerializer:ARn}=LH(),{kHeadersList:_$t,kConstruct:Wpo}=aE(),E$t=Dt("assert"),{types:y$t}=Dt("util"),pRn=globalThis.ReadableStream||Dt("stream/web").ReadableStream,Ppo=new TextEncoder("utf-8"),H1e=class e{static error(){let t={settingsObject:{}},r=new e;return r[K1]=$lt(),r[xW]=t,r[gR][_$t]=r[K1].headersList,r[gR][Y1e]="immutable",r[gR][xW]=t,r}static json(t,r={}){BC.argumentLengthCheck(arguments,1,{header:"Response.json"}),r!==null&&(r=BC.converters.ResponseInit(r));let s=Ppo.encode(xpo(t)),a=uRn(s),o={settingsObject:{}},g=new e;return g[xW]=o,g[gR][Y1e]="response",g[gR][xW]=o,dRn(g,r,{body:a[0],type:"application/json"}),g}static redirect(t,r=302){let s={settingsObject:{}};BC.argumentLengthCheck(arguments,1,{header:"Response.redirect"}),t=BC.converters.USVString(t),r=BC.converters["unsigned short"](r);let a;try{a=new URL(t,Vpo())}catch(p){throw Object.assign(new TypeError("Failed to parse URL from "+t),{cause:p})}if(!Fpo.has(r))throw new RangeError("Invalid status code "+r);let o=new e;o[xW]=s,o[gR][Y1e]="immutable",o[gR][xW]=s,o[K1].status=r;let g=Gpo(ARn(a));return o[K1].headersList.append("location",g),o}constructor(t=null,r={}){t!==null&&(t=BC.converters.BodyInit(t)),r=BC.converters.ResponseInit(r),this[xW]={settingsObject:{}},this[K1]=eut({}),this[gR]=new Bpo(Wpo),this[gR][Y1e]="response",this[gR][_$t]=this[K1].headersList,this[gR][xW]=this[xW];let s=null;if(t!=null){let[a,o]=uRn(t);s={body:a,type:o}}dRn(this,r,s)}get type(){return BC.brandCheck(this,e),this[K1].type}get url(){BC.brandCheck(this,e);let t=this[K1].urlList,r=t[t.length-1]??null;return r===null?"":ARn(r,!0)}get redirected(){return BC.brandCheck(this,e),this[K1].urlList.length>1}get status(){return BC.brandCheck(this,e),this[K1].status}get ok(){return BC.brandCheck(this,e),this[K1].status>=200&&this[K1].status<=299}get statusText(){return BC.brandCheck(this,e),this[K1].statusText}get headers(){return BC.brandCheck(this,e),this[gR]}get body(){return BC.brandCheck(this,e),this[K1].body?this[K1].body.stream:null}get bodyUsed(){return BC.brandCheck(this,e),!!this[K1].body&&b$t.isDisturbed(this[K1].body.stream)}clone(){if(BC.brandCheck(this,e),this.bodyUsed||this.body&&this.body.locked)throw BC.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let t=B$t(this[K1]),r=new e;return r[K1]=t,r[xW]=this[xW],r[gR][_$t]=t.headersList,r[gR][Y1e]=this[gR][Y1e],r[gR][xW]=this[gR][xW],r}};wpo(H1e);Object.defineProperties(H1e.prototype,{type:kW,url:kW,status:kW,ok:kW,redirected:kW,statusText:kW,headers:kW,clone:kW,body:kW,bodyUsed:kW,[Symbol.toStringTag]:{value:"Response",configurable:!0}});Object.defineProperties(H1e,{json:kW,redirect:kW,error:kW});function B$t(e){if(e.internalResponse)return fRn(B$t(e.internalResponse),e.type);let t=eut({...e,body:null});return e.body!=null&&(t.body=Spo(e.body)),t}function eut(e){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...e,headersList:e.headersList?new lRn(e.headersList):new lRn,urlList:e.urlList?[...e.urlList]:[]}}function $lt(e){let t=kpo(e);return eut({type:"error",status:0,error:t?e:new Error(e&&String(e)),aborted:e&&e.name==="AbortError"})}function qlt(e,t){return t={internalResponse:e,...t},new Proxy(e,{get(r,s){return s in t?t[s]:r[s]},set(r,s,a){return E$t(!(s in t)),r[s]=a,!0}})}function fRn(e,t){if(t==="basic")return qlt(e,{type:"basic",headersList:e.headersList});if(t==="cors")return qlt(e,{type:"cors",headersList:e.headersList});if(t==="opaque")return qlt(e,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null});if(t==="opaqueredirect")return qlt(e,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null});E$t(!1)}function Opo(e,t=null){return E$t(Npo(e)),Rpo(e)?$lt(Object.assign(new gRn("The operation was aborted.","AbortError"),{cause:t})):$lt(Object.assign(new gRn("Request was cancelled."),{cause:t}))}function dRn(e,t,r){if(t.status!==null&&(t.status<200||t.status>599))throw new RangeError('init["status"] must be in the range of 200 to 599, inclusive.');if("statusText"in t&&t.statusText!=null&&!Tpo(String(t.statusText)))throw new TypeError("Invalid statusText");if("status"in t&&t.status!=null&&(e[K1].status=t.status),"statusText"in t&&t.statusText!=null&&(e[K1].statusText=t.statusText),"headers"in t&&t.headers!=null&&vpo(e[gR],t.headers),r){if(Zpo.includes(e.status))throw BC.errors.exception({header:"Response constructor",message:"Invalid response status code "+e.status});e[K1].body=r.body,r.type!=null&&!e[K1].headersList.contains("Content-Type")&&e[K1].headersList.append("content-type",r.type)}}BC.converters.ReadableStream=BC.interfaceConverter(pRn);BC.converters.FormData=BC.interfaceConverter(Lpo);BC.converters.URLSearchParams=BC.interfaceConverter(URLSearchParams);BC.converters.XMLHttpRequestBodyInit=function(e){return typeof e=="string"?BC.converters.USVString(e):Dpo(e)?BC.converters.Blob(e,{strict:!1}):y$t.isArrayBuffer(e)||y$t.isTypedArray(e)||y$t.isDataView(e)?BC.converters.BufferSource(e):b$t.isFormDataLike(e)?BC.converters.FormData(e,{strict:!1}):e instanceof URLSearchParams?BC.converters.URLSearchParams(e):BC.converters.DOMString(e)};BC.converters.BodyInit=function(e){return e instanceof pRn?BC.converters.ReadableStream(e):e?.[Symbol.asyncIterator]?e:BC.converters.XMLHttpRequestBodyInit(e)};BC.converters.ResponseInit=BC.dictionaryConverter([{key:"status",converter:BC.converters["unsigned short"],defaultValue:200},{key:"statusText",converter:BC.converters.ByteString,defaultValue:""},{key:"headers",converter:BC.converters.HeadersInit}]);IRn.exports={makeNetworkError:$lt,makeResponse:eut,makeAppropriateNetworkError:Opo,filterResponse:fRn,Response:H1e,cloneResponse:B$t}});var j3e=z((i8c,bRn)=>{"use strict";var{extractBody:Mpo,mixinBody:Qpo,cloneBody:Ypo}=v3e(),{Headers:CRn,fill:Hpo,HeadersList:sut}=_de(),{FinalizationRegistry:Xpo}=Gqt()(),K3e=Ih(),{isValidHTTPToken:Jpo,sameOrigin:mRn,normalizeMethod:Upo,makePolicyContainer:Kpo,normalizeMethodRecord:jpo}=QO(),{forbiddenMethodsSet:zpo,corsSafeListedMethodsSet:qpo,referrerPolicy:$po,requestRedirect:efo,requestMode:tfo,requestCredentials:rfo,requestCache:nfo,requestDuplex:ifo}=nie(),{kEnumerableProperty:yw}=K3e,{kHeaders:Ek,kSignal:U3e,kState:n1,kGuard:rut,kRealm:GW}=Zj(),{webidl:kf}=SF(),{getGlobalOrigin:sfo}=h1e(),{URLSerializer:ofo}=LH(),{kHeadersList:nut,kConstruct:iut}=aE(),afo=Dt("assert"),{getMaxListeners:hRn,setMaxListeners:_Rn,getEventListeners:cfo,defaultMaxListeners:yRn}=Dt("events"),v$t=globalThis.TransformStream,lfo=Symbol("abortController"),ufo=new Xpo(({signal:e,abort:t})=>{e.removeEventListener("abort",t)}),yde=class e{constructor(t,r={}){if(t===iut)return;kf.argumentLengthCheck(arguments,1,{header:"Request constructor"}),t=kf.converters.RequestInfo(t),r=kf.converters.RequestInit(r),this[GW]={settingsObject:{baseUrl:sfo(),get origin(){return this.baseUrl?.origin},policyContainer:Kpo()}};let s=null,a=null,o=this[GW].settingsObject.baseUrl,g=null;if(typeof t=="string"){let X;try{X=new URL(t,o)}catch(U){throw new TypeError("Failed to parse URL from "+t,{cause:U})}if(X.username||X.password)throw new TypeError("Request cannot be constructed from a URL that includes credentials: "+t);s=out({urlList:[X]}),a="cors"}else afo(t instanceof e),s=t[n1],g=t[U3e];let p=this[GW].settingsObject.origin,f="client";if(s.window?.constructor?.name==="EnvironmentSettingsObject"&&mRn(s.window,p)&&(f=s.window),r.window!=null)throw new TypeError(`'window' option '${f}' must be null`);"window"in r&&(f="no-window"),s=out({method:s.method,headersList:s.headersList,unsafeRequest:s.unsafeRequest,client:this[GW].settingsObject,window:f,priority:s.priority,origin:s.origin,referrer:s.referrer,referrerPolicy:s.referrerPolicy,mode:s.mode,credentials:s.credentials,cache:s.cache,redirect:s.redirect,integrity:s.integrity,keepalive:s.keepalive,reloadNavigation:s.reloadNavigation,historyNavigation:s.historyNavigation,urlList:[...s.urlList]});let m=Object.keys(r).length!==0;if(m&&(s.mode==="navigate"&&(s.mode="same-origin"),s.reloadNavigation=!1,s.historyNavigation=!1,s.origin="client",s.referrer="client",s.referrerPolicy="",s.url=s.urlList[s.urlList.length-1],s.urlList=[s.url]),r.referrer!==void 0){let X=r.referrer;if(X==="")s.referrer="no-referrer";else{let U;try{U=new URL(X,o)}catch(le){throw new TypeError(`Referrer "${X}" is not a valid URL.`,{cause:le})}U.protocol==="about:"&&U.hostname==="client"||p&&!mRn(U,this[GW].settingsObject.baseUrl)?s.referrer="client":s.referrer=U}}r.referrerPolicy!==void 0&&(s.referrerPolicy=r.referrerPolicy);let y;if(r.mode!==void 0?y=r.mode:y=a,y==="navigate")throw kf.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(y!=null&&(s.mode=y),r.credentials!==void 0&&(s.credentials=r.credentials),r.cache!==void 0&&(s.cache=r.cache),s.cache==="only-if-cached"&&s.mode!=="same-origin")throw new TypeError("'only-if-cached' can be set only with 'same-origin' mode");if(r.redirect!==void 0&&(s.redirect=r.redirect),r.integrity!=null&&(s.integrity=String(r.integrity)),r.keepalive!==void 0&&(s.keepalive=!!r.keepalive),r.method!==void 0){let X=r.method;if(!Jpo(X))throw new TypeError(`'${X}' is not a valid HTTP method.`);if(zpo.has(X.toUpperCase()))throw new TypeError(`'${X}' HTTP method is unsupported.`);X=jpo[X]??Upo(X),s.method=X}r.signal!==void 0&&(g=r.signal),this[n1]=s;let B=new AbortController;if(this[U3e]=B.signal,this[U3e][GW]=this[GW],g!=null){if(!g||typeof g.aborted!="boolean"||typeof g.addEventListener!="function")throw new TypeError("Failed to construct 'Request': member signal is not of type AbortSignal.");if(g.aborted)B.abort(g.reason);else{this[lfo]=B;let X=new WeakRef(B),U=function(){let le=X.deref();le!==void 0&&le.abort(this.reason)};try{(typeof hRn=="function"&&hRn(g)===yRn||cfo(g,"abort").length>=yRn)&&_Rn(100,g)}catch{}K3e.addAbortListener(g,U),ufo.register(B,{signal:g,abort:U})}}if(this[Ek]=new CRn(iut),this[Ek][nut]=s.headersList,this[Ek][rut]="request",this[Ek][GW]=this[GW],y==="no-cors"){if(!qpo.has(s.method))throw new TypeError(`'${s.method} is unsupported in no-cors mode.`);this[Ek][rut]="request-no-cors"}if(m){let X=this[Ek][nut],U=r.headers!==void 0?r.headers:new sut(X);if(X.clear(),U instanceof sut){for(let[le,ae]of U)X.append(le,ae);X.cookies=U.cookies}else Hpo(this[Ek],U)}let v=t instanceof e?t[n1].body:null;if((r.body!=null||v!=null)&&(s.method==="GET"||s.method==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body.");let G=null;if(r.body!=null){let[X,U]=Mpo(r.body,s.keepalive);G=X,U&&!this[Ek][nut].contains("content-type")&&this[Ek].append("content-type",U)}let T=G??v;if(T!=null&&T.source==null){if(G!=null&&r.duplex==null)throw new TypeError("RequestInit: duplex option is required when sending a body.");if(s.mode!=="same-origin"&&s.mode!=="cors")throw new TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"');s.useCORSPreflightFlag=!0}let O=T;if(G==null&&v!=null){if(K3e.isDisturbed(v.stream)||v.stream.locked)throw new TypeError("Cannot construct a Request with a Request object that has already been used.");v$t||(v$t=Dt("stream/web").TransformStream);let X=new v$t;v.stream.pipeThrough(X),O={source:v.source,length:v.length,stream:X.readable}}this[n1].body=O}get method(){return kf.brandCheck(this,e),this[n1].method}get url(){return kf.brandCheck(this,e),ofo(this[n1].url)}get headers(){return kf.brandCheck(this,e),this[Ek]}get destination(){return kf.brandCheck(this,e),this[n1].destination}get referrer(){return kf.brandCheck(this,e),this[n1].referrer==="no-referrer"?"":this[n1].referrer==="client"?"about:client":this[n1].referrer.toString()}get referrerPolicy(){return kf.brandCheck(this,e),this[n1].referrerPolicy}get mode(){return kf.brandCheck(this,e),this[n1].mode}get credentials(){return this[n1].credentials}get cache(){return kf.brandCheck(this,e),this[n1].cache}get redirect(){return kf.brandCheck(this,e),this[n1].redirect}get integrity(){return kf.brandCheck(this,e),this[n1].integrity}get keepalive(){return kf.brandCheck(this,e),this[n1].keepalive}get isReloadNavigation(){return kf.brandCheck(this,e),this[n1].reloadNavigation}get isHistoryNavigation(){return kf.brandCheck(this,e),this[n1].historyNavigation}get signal(){return kf.brandCheck(this,e),this[U3e]}get body(){return kf.brandCheck(this,e),this[n1].body?this[n1].body.stream:null}get bodyUsed(){return kf.brandCheck(this,e),!!this[n1].body&&K3e.isDisturbed(this[n1].body.stream)}get duplex(){return kf.brandCheck(this,e),"half"}clone(){if(kf.brandCheck(this,e),this.bodyUsed||this.body?.locked)throw new TypeError("unusable");let t=gfo(this[n1]),r=new e(iut);r[n1]=t,r[GW]=this[GW],r[Ek]=new CRn(iut),r[Ek][nut]=t.headersList,r[Ek][rut]=this[Ek][rut],r[Ek][GW]=this[Ek][GW];let s=new AbortController;return this.signal.aborted?s.abort(this.signal.reason):K3e.addAbortListener(this.signal,()=>{s.abort(this.signal.reason)}),r[U3e]=s.signal,r}};Qpo(yde);function out(e){let t={method:"GET",localURLsOnly:!1,unsafeRequest:!1,body:null,client:null,reservedClient:null,replacesClientId:"",window:"client",keepalive:!1,serviceWorkers:"all",initiator:"",destination:"",priority:null,origin:"client",policyContainer:"client",referrer:"client",referrerPolicy:"",mode:"no-cors",useCORSPreflightFlag:!1,credentials:"same-origin",useCredentials:!1,cache:"default",redirect:"follow",integrity:"",cryptoGraphicsNonceMetadata:"",parserMetadata:"",reloadNavigation:!1,historyNavigation:!1,userActivation:!1,taintedOrigin:!1,redirectCount:0,responseTainting:"basic",preventNoCacheCacheControlHeaderModification:!1,done:!1,timingAllowFailed:!1,...e,headersList:e.headersList?new sut(e.headersList):new sut};return t.url=t.urlList[0],t}function gfo(e){let t=out({...e,body:null});return e.body!=null&&(t.body=Ypo(e.body)),t}Object.defineProperties(yde.prototype,{method:yw,url:yw,headers:yw,redirect:yw,clone:yw,signal:yw,duplex:yw,destination:yw,body:yw,bodyUsed:yw,isHistoryNavigation:yw,isReloadNavigation:yw,keepalive:yw,integrity:yw,cache:yw,credentials:yw,attribute:yw,referrerPolicy:yw,referrer:yw,mode:yw,[Symbol.toStringTag]:{value:"Request",configurable:!0}});kf.converters.Request=kf.interfaceConverter(yde);kf.converters.RequestInfo=function(e){return typeof e=="string"?kf.converters.USVString(e):e instanceof yde?kf.converters.Request(e):kf.converters.USVString(e)};kf.converters.AbortSignal=kf.interfaceConverter(AbortSignal);kf.converters.RequestInit=kf.dictionaryConverter([{key:"method",converter:kf.converters.ByteString},{key:"headers",converter:kf.converters.HeadersInit},{key:"body",converter:kf.nullableConverter(kf.converters.BodyInit)},{key:"referrer",converter:kf.converters.USVString},{key:"referrerPolicy",converter:kf.converters.DOMString,allowedValues:$po},{key:"mode",converter:kf.converters.DOMString,allowedValues:tfo},{key:"credentials",converter:kf.converters.DOMString,allowedValues:rfo},{key:"cache",converter:kf.converters.DOMString,allowedValues:nfo},{key:"redirect",converter:kf.converters.DOMString,allowedValues:efo},{key:"integrity",converter:kf.converters.DOMString},{key:"keepalive",converter:kf.converters.boolean},{key:"signal",converter:kf.nullableConverter(e=>kf.converters.AbortSignal(e,{strict:!1}))},{key:"window",converter:kf.converters.any},{key:"duplex",converter:kf.converters.DOMString,allowedValues:ifo}]);bRn.exports={Request:yde,makeRequest:out}});var dut=z((s8c,ZRn)=>{"use strict";var{Response:Afo,makeNetworkError:yb,makeAppropriateNetworkError:aut,filterResponse:S$t,makeResponse:cut}=tut(),{Headers:ERn}=_de(),{Request:dfo,makeRequest:pfo}=j3e(),z3e=Dt("zlib"),{bytesMatch:ffo,makePolicyContainer:Ifo,clonePolicyContainer:Cfo,requestBadPort:mfo,TAOCheck:hfo,appendRequestOriginHeader:_fo,responseLocationURL:yfo,requestCurrentURL:sU,setRequestReferrerPolicyOnRedirect:bfo,tryUpgradeRequestToAPotentiallyTrustworthyURL:Efo,createOpaqueTimingInfo:F$t,appendFetchMetadata:Bfo,corsCheck:vfo,crossOriginResourcePolicyCheck:Sfo,determineRequestsReferrer:wfo,coarsenedSharedCurrentTime:Z$t,createDeferredPromise:Tfo,isBlobLike:Nfo,sameOrigin:x$t,isCancelled:J1e,isAborted:BRn,isErrorLike:Rfo,fullyReadBody:TRn,readableStreamClose:Dfo,isomorphicEncode:k$t,urlIsLocal:xfo,urlIsHttpHttpsScheme:L$t,urlHasHttpsScheme:kfo}=QO(),{kState:G$t,kHeaders:w$t,kGuard:Gfo,kRealm:vRn}=Zj(),U1e=Dt("assert"),{safelyExtractBody:lut}=v3e(),{redirectStatusSet:NRn,nullBodyStatus:RRn,safeMethodsSet:Ffo,requestBodyHeader:Zfo,subresourceSet:Lfo,DOMException:uut}=nie(),{kHeadersList:X1e}=aE(),Vfo=Dt("events"),{Readable:Wfo,pipeline:Pfo}=Dt("stream"),{addAbortListener:Ofo,isErrored:Mfo,isReadable:gut,nodeMajor:SRn,nodeMinor:Qfo}=Ih(),{dataURLProcessor:Yfo,serializeAMimeType:Hfo}=LH(),{TransformStream:Xfo}=Dt("stream/web"),{getGlobalDispatcher:Jfo}=O1e(),{webidl:Ufo}=SF(),{STATUS_CODES:Kfo}=Dt("http"),jfo=["GET","HEAD"],T$t,N$t=globalThis.ReadableStream,Aut=class extends Vfo{constructor(t){super(),this.dispatcher=t,this.connection=null,this.dump=!1,this.state="ongoing",this.setMaxListeners(21)}terminate(t){this.state==="ongoing"&&(this.state="terminated",this.connection?.destroy(t),this.emit("terminated",t))}abort(t){this.state==="ongoing"&&(this.state="aborted",t||(t=new uut("The operation was aborted.","AbortError")),this.serializedAbortReason=t,this.connection?.destroy(t),this.emit("terminated",t))}};function zfo(e,t={}){Ufo.argumentLengthCheck(arguments,1,{header:"globalThis.fetch"});let r=Tfo(),s;try{s=new dfo(e,t)}catch(v){return r.reject(v),r.promise}let a=s[G$t];if(s.signal.aborted)return R$t(r,a,null,s.signal.reason),r.promise;a.client.globalObject?.constructor?.name==="ServiceWorkerGlobalScope"&&(a.serviceWorkers="none");let g=null,p=null,f=!1,m=null;return Ofo(s.signal,()=>{f=!0,U1e(m!=null),m.abort(s.signal.reason),R$t(r,a,g,s.signal.reason)}),m=xRn({request:a,processResponseEndOfBody:v=>DRn(v,"fetch"),processResponse:v=>{if(f)return Promise.resolve();if(v.aborted)return R$t(r,a,g,m.serializedAbortReason),Promise.resolve();if(v.type==="error")return r.reject(Object.assign(new TypeError("fetch failed"),{cause:v.error})),Promise.resolve();g=new Afo,g[G$t]=v,g[vRn]=p,g[w$t][X1e]=v.headersList,g[w$t][Gfo]="immutable",g[w$t][vRn]=p,r.resolve(g)},dispatcher:t.dispatcher??Jfo()}),r.promise}function DRn(e,t="other"){if(e.type==="error"&&e.aborted||!e.urlList?.length)return;let r=e.urlList[0],s=e.timingInfo,a=e.cacheState;L$t(r)&&s!==null&&(e.timingAllowPassed||(s=F$t({startTime:s.startTime}),a=""),s.endTime=Z$t(),e.timingInfo=s,qfo(s,r,t,globalThis,a))}function qfo(e,t,r,s,a){(SRn>18||SRn===18&&Qfo>=2)&&performance.markResourceTiming(e,t.href,r,s,a)}function R$t(e,t,r,s){if(s||(s=new uut("The operation was aborted.","AbortError")),e.reject(s),t.body!=null&&gut(t.body?.stream)&&t.body.stream.cancel(s).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o}),r==null)return;let a=r[G$t];a.body!=null&&gut(a.body?.stream)&&a.body.stream.cancel(s).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o})}function xRn({request:e,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:s,processResponseEndOfBody:a,processResponseConsumeBody:o,useParallelQueue:g=!1,dispatcher:p}){let f=null,m=!1;e.client!=null&&(f=e.client.globalObject,m=e.client.crossOriginIsolatedCapability);let y=Z$t(m),B=F$t({startTime:y}),v={controller:new Aut(p),request:e,timingInfo:B,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:s,processResponseConsumeBody:o,processResponseEndOfBody:a,taskDestination:f,crossOriginIsolatedCapability:m};return U1e(!e.body||e.body.stream),e.window==="client"&&(e.window=e.client?.globalObject?.constructor?.name==="Window"?e.client:"no-window"),e.origin==="client"&&(e.origin=e.client?.origin),e.policyContainer==="client"&&(e.client!=null?e.policyContainer=Cfo(e.client.policyContainer):e.policyContainer=Ifo()),e.headersList.contains("accept")||e.headersList.append("accept","*/*"),e.headersList.contains("accept-language")||e.headersList.append("accept-language","*"),e.priority,Lfo.has(e.destination),kRn(v).catch(G=>{v.controller.terminate(G)}),v.controller}async function kRn(e,t=!1){let r=e.request,s=null;if(r.localURLsOnly&&!xfo(sU(r))&&(s=yb("local URLs only")),Efo(r),mfo(r)==="blocked"&&(s=yb("bad port")),r.referrerPolicy===""&&(r.referrerPolicy=r.policyContainer.referrerPolicy),r.referrer!=="no-referrer"&&(r.referrer=wfo(r)),s===null&&(s=await(async()=>{let o=sU(r);return x$t(o,r.url)&&r.responseTainting==="basic"||o.protocol==="data:"||r.mode==="navigate"||r.mode==="websocket"?(r.responseTainting="basic",await wRn(e)):r.mode==="same-origin"?yb('request mode cannot be "same-origin"'):r.mode==="no-cors"?r.redirect!=="follow"?yb('redirect mode cannot be "follow" for "no-cors" request'):(r.responseTainting="opaque",await wRn(e)):L$t(sU(r))?(r.responseTainting="cors",await GRn(e)):yb("URL scheme must be a HTTP(S) scheme")})()),t)return s;s.status!==0&&!s.internalResponse&&(r.responseTainting,r.responseTainting==="basic"?s=S$t(s,"basic"):r.responseTainting==="cors"?s=S$t(s,"cors"):r.responseTainting==="opaque"?s=S$t(s,"opaque"):U1e(!1));let a=s.status===0?s:s.internalResponse;if(a.urlList.length===0&&a.urlList.push(...r.urlList),r.timingAllowFailed||(s.timingAllowPassed=!0),s.type==="opaque"&&a.status===206&&a.rangeRequested&&!r.headers.contains("range")&&(s=a=yb()),s.status!==0&&(r.method==="HEAD"||r.method==="CONNECT"||RRn.includes(a.status))&&(a.body=null,e.controller.dump=!0),r.integrity){let o=p=>D$t(e,yb(p));if(r.responseTainting==="opaque"||s.body==null){o(s.error);return}let g=p=>{if(!ffo(p,r.integrity)){o("integrity mismatch");return}s.body=lut(p)[0],D$t(e,s)};await TRn(s.body,g,o)}else D$t(e,s)}function wRn(e){if(J1e(e)&&e.request.redirectCount===0)return Promise.resolve(aut(e));let{request:t}=e,{protocol:r}=sU(t);switch(r){case"about:":return Promise.resolve(yb("about scheme is not supported"));case"blob:":{T$t||(T$t=Dt("buffer").resolveObjectURL);let s=sU(t);if(s.search.length!==0)return Promise.resolve(yb("NetworkError when attempting to fetch resource."));let a=T$t(s.toString());if(t.method!=="GET"||!Nfo(a))return Promise.resolve(yb("invalid method"));let o=lut(a),g=o[0],p=k$t(`${g.length}`),f=o[1]??"",m=cut({statusText:"OK",headersList:[["content-length",{name:"Content-Length",value:p}],["content-type",{name:"Content-Type",value:f}]]});return m.body=g,Promise.resolve(m)}case"data:":{let s=sU(t),a=Yfo(s);if(a==="failure")return Promise.resolve(yb("failed to fetch the data URL"));let o=Hfo(a.mimeType);return Promise.resolve(cut({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:o}]],body:lut(a.body)[0]}))}case"file:":return Promise.resolve(yb("not implemented... yet..."));case"http:":case"https:":return GRn(e).catch(s=>yb(s));default:return Promise.resolve(yb("unknown scheme"))}}function $fo(e,t){e.request.done=!0,e.processResponseDone!=null&&queueMicrotask(()=>e.processResponseDone(t))}function D$t(e,t){t.type==="error"&&(t.urlList=[e.request.urlList[0]],t.timingInfo=F$t({startTime:e.timingInfo.startTime}));let r=()=>{e.request.done=!0,e.processResponseEndOfBody!=null&&queueMicrotask(()=>e.processResponseEndOfBody(t))};if(e.processResponse!=null&&queueMicrotask(()=>e.processResponse(t)),t.body==null)r();else{let s=(o,g)=>{g.enqueue(o)},a=new Xfo({start(){},transform:s,flush:r},{size(){return 1}},{size(){return 1}});t.body={stream:t.body.stream.pipeThrough(a)}}if(e.processResponseConsumeBody!=null){let s=o=>e.processResponseConsumeBody(t,o),a=o=>e.processResponseConsumeBody(t,o);if(t.body==null)queueMicrotask(()=>s(null));else return TRn(t.body,s,a);return Promise.resolve()}}async function GRn(e){let t=e.request,r=null,s=null,a=e.timingInfo;if(t.serviceWorkers,r===null){if(t.redirect==="follow"&&(t.serviceWorkers="none"),s=r=await FRn(e),t.responseTainting==="cors"&&vfo(t,r)==="failure")return yb("cors failure");hfo(t,r)==="failure"&&(t.timingAllowFailed=!0)}return(t.responseTainting==="opaque"||r.type==="opaque")&&Sfo(t.origin,t.client,t.destination,s)==="blocked"?yb("blocked"):(NRn.has(s.status)&&(t.redirect!=="manual"&&e.controller.connection.destroy(),t.redirect==="error"?r=yb("unexpected redirect"):t.redirect==="manual"?r=s:t.redirect==="follow"?r=await eIo(e,r):U1e(!1)),r.timingInfo=a,r)}function eIo(e,t){let r=e.request,s=t.internalResponse?t.internalResponse:t,a;try{if(a=yfo(s,sU(r).hash),a==null)return t}catch(g){return Promise.resolve(yb(g))}if(!L$t(a))return Promise.resolve(yb("URL scheme must be a HTTP(S) scheme"));if(r.redirectCount===20)return Promise.resolve(yb("redirect count exceeded"));if(r.redirectCount+=1,r.mode==="cors"&&(a.username||a.password)&&!x$t(r,a))return Promise.resolve(yb('cross origin not allowed for request mode "cors"'));if(r.responseTainting==="cors"&&(a.username||a.password))return Promise.resolve(yb('URL cannot contain credentials for request mode "cors"'));if(s.status!==303&&r.body!=null&&r.body.source==null)return Promise.resolve(yb());if([301,302].includes(s.status)&&r.method==="POST"||s.status===303&&!jfo.includes(r.method)){r.method="GET",r.body=null;for(let g of Zfo)r.headersList.delete(g)}x$t(sU(r),a)||(r.headersList.delete("authorization"),r.headersList.delete("proxy-authorization",!0),r.headersList.delete("cookie"),r.headersList.delete("host")),r.body!=null&&(U1e(r.body.source!=null),r.body=lut(r.body.source)[0]);let o=e.timingInfo;return o.redirectEndTime=o.postRedirectStartTime=Z$t(e.crossOriginIsolatedCapability),o.redirectStartTime===0&&(o.redirectStartTime=o.startTime),r.urlList.push(a),bfo(r,s),kRn(e,!0)}async function FRn(e,t=!1,r=!1){let s=e.request,a=null,o=null,g=null,p=null,f=!1;s.window==="no-window"&&s.redirect==="error"?(a=e,o=s):(o=pfo(s),a={...e},a.request=o);let m=s.credentials==="include"||s.credentials==="same-origin"&&s.responseTainting==="basic",y=o.body?o.body.length:null,B=null;if(o.body==null&&["POST","PUT"].includes(o.method)&&(B="0"),y!=null&&(B=k$t(`${y}`)),B!=null&&o.headersList.append("content-length",B),y!=null&&o.keepalive,o.referrer instanceof URL&&o.headersList.append("referer",k$t(o.referrer.href)),_fo(o),Bfo(o),o.headersList.contains("user-agent")||o.headersList.append("user-agent",typeof esbuildDetection>"u"?"undici":"node"),o.cache==="default"&&(o.headersList.contains("if-modified-since")||o.headersList.contains("if-none-match")||o.headersList.contains("if-unmodified-since")||o.headersList.contains("if-match")||o.headersList.contains("if-range"))&&(o.cache="no-store"),o.cache==="no-cache"&&!o.preventNoCacheCacheControlHeaderModification&&!o.headersList.contains("cache-control")&&o.headersList.append("cache-control","max-age=0"),(o.cache==="no-store"||o.cache==="reload")&&(o.headersList.contains("pragma")||o.headersList.append("pragma","no-cache"),o.headersList.contains("cache-control")||o.headersList.append("cache-control","no-cache")),o.headersList.contains("range")&&o.headersList.append("accept-encoding","identity"),o.headersList.contains("accept-encoding")||(kfo(sU(o))?o.headersList.append("accept-encoding","br, gzip, deflate"):o.headersList.append("accept-encoding","gzip, deflate")),o.headersList.delete("host"),p==null&&(o.cache="no-store"),o.mode!=="no-store"&&o.mode,g==null){if(o.mode==="only-if-cached")return yb("only if cached");let v=await tIo(a,m,r);!Ffo.has(o.method)&&v.status>=200&&v.status<=399,f&&v.status,g==null&&(g=v)}if(g.urlList=[...o.urlList],o.headersList.contains("range")&&(g.rangeRequested=!0),g.requestIncludesCredentials=m,g.status===407)return s.window==="no-window"?yb():J1e(e)?aut(e):yb("proxy authentication required");if(g.status===421&&!r&&(s.body==null||s.body.source!=null)){if(J1e(e))return aut(e);e.controller.connection.destroy(),g=await FRn(e,t,!0)}return g}async function tIo(e,t=!1,r=!1){U1e(!e.controller.connection||e.controller.connection.destroyed),e.controller.connection={abort:null,destroyed:!1,destroy(T){this.destroyed||(this.destroyed=!0,this.abort?.(T??new uut("The operation was aborted.","AbortError")))}};let s=e.request,a=null,o=e.timingInfo;null==null&&(s.cache="no-store");let p=r?"yes":"no";s.mode;let f=null;if(s.body==null&&e.processRequestEndOfBody)queueMicrotask(()=>e.processRequestEndOfBody());else if(s.body!=null){let T=async function*(U){J1e(e)||(yield U,e.processRequestBodyChunkLength?.(U.byteLength))},O=()=>{J1e(e)||e.processRequestEndOfBody&&e.processRequestEndOfBody()},X=U=>{J1e(e)||(U.name==="AbortError"?e.controller.abort():e.controller.terminate(U))};f=async function*(){try{for await(let U of s.body.stream)yield*T(U);O()}catch(U){X(U)}}()}try{let{body:T,status:O,statusText:X,headersList:U,socket:le}=await G({body:f});if(le)a=cut({status:O,statusText:X,headersList:U,socket:le});else{let ae=T[Symbol.asyncIterator]();e.controller.next=()=>ae.next(),a=cut({status:O,statusText:X,headersList:U})}}catch(T){return T.name==="AbortError"?(e.controller.connection.destroy(),aut(e,T)):yb(T)}let m=()=>{e.controller.resume()},y=T=>{e.controller.abort(T)};N$t||(N$t=Dt("stream/web").ReadableStream);let B=new N$t({async start(T){e.controller.controller=T},async pull(T){await m(T)},async cancel(T){await y(T)}},{highWaterMark:0,size(){return 1}});a.body={stream:B},e.controller.on("terminated",v),e.controller.resume=async()=>{for(;;){let T,O;try{let{done:X,value:U}=await e.controller.next();if(BRn(e))break;T=X?void 0:U}catch(X){e.controller.ended&&!o.encodedBodySize?T=void 0:(T=X,O=!0)}if(T===void 0){Dfo(e.controller.controller),$fo(e,a);return}if(o.decodedBodySize+=T?.byteLength??0,O){e.controller.terminate(T);return}if(e.controller.controller.enqueue(new Uint8Array(T)),Mfo(B)){e.controller.terminate();return}if(!e.controller.controller.desiredSize)return}};function v(T){BRn(e)?(a.aborted=!0,gut(B)&&e.controller.controller.error(e.controller.serializedAbortReason)):gut(B)&&e.controller.controller.error(new TypeError("terminated",{cause:Rfo(T)?T:void 0})),e.controller.connection.destroy()}return a;async function G({body:T}){let O=sU(s),X=e.controller.dispatcher;return new Promise((U,le)=>X.dispatch({path:O.pathname+O.search,origin:O.origin,method:s.method,body:e.controller.dispatcher.isMockActive?s.body&&(s.body.source||s.body.stream):T,headers:s.headersList.entries,maxRedirections:0,upgrade:s.mode==="websocket"?"websocket":void 0},{body:null,abort:null,onConnect(ae){let{connection:ge}=e.controller;ge.destroyed?ae(new uut("The operation was aborted.","AbortError")):(e.controller.on("terminated",ae),this.abort=ge.abort=ae)},onHeaders(ae,ge,fe,pe){if(ae<200)return;let he=[],be="",Te=new ERn;if(Array.isArray(ge))for(let et=0;etXe.trim()):Ue.toLowerCase()==="location"&&(be=Je),Te[X1e].append(Ue,Je)}else{let et=Object.keys(ge);for(let Ue of et){let Je=ge[Ue];Ue.toLowerCase()==="content-encoding"?he=Je.toLowerCase().split(",").map(Xe=>Xe.trim()).reverse():Ue.toLowerCase()==="location"&&(be=Je),Te[X1e].append(Ue,Je)}}this.body=new Wfo({read:fe});let ke=[],x=s.redirect==="follow"&&be&&NRn.has(ae);if(s.method!=="HEAD"&&s.method!=="CONNECT"&&!RRn.includes(ae)&&!x)for(let et of he)if(et==="x-gzip"||et==="gzip")ke.push(z3e.createGunzip({flush:z3e.constants.Z_SYNC_FLUSH,finishFlush:z3e.constants.Z_SYNC_FLUSH}));else if(et==="deflate")ke.push(z3e.createInflate());else if(et==="br")ke.push(z3e.createBrotliDecompress());else{ke.length=0;break}return U({status:ae,statusText:pe,headersList:Te[X1e],body:ke.length?Pfo(this.body,...ke,()=>{}):this.body.on("error",()=>{})}),!0},onData(ae){if(e.controller.dump)return;let ge=ae;return o.encodedBodySize+=ge.byteLength,this.body.push(ge)},onComplete(){this.abort&&e.controller.off("terminated",this.abort),e.controller.ended=!0,this.body.push(null)},onError(ae){this.abort&&e.controller.off("terminated",this.abort),this.body?.destroy(ae),e.controller.terminate(ae),le(ae)},onUpgrade(ae,ge,fe){if(ae!==101)return;let pe=new ERn;for(let he=0;he{"use strict";LRn.exports={kState:Symbol("FileReader state"),kResult:Symbol("FileReader result"),kError:Symbol("FileReader error"),kLastProgressEventFired:Symbol("FileReader last progress event fired timestamp"),kEvents:Symbol("FileReader events"),kAborted:Symbol("FileReader aborted")}});var WRn=z((a8c,VRn)=>{"use strict";var{webidl:FW}=SF(),put=Symbol("ProgressEvent state"),W$t=class e extends Event{constructor(t,r={}){t=FW.converters.DOMString(t),r=FW.converters.ProgressEventInit(r??{}),super(t,r),this[put]={lengthComputable:r.lengthComputable,loaded:r.loaded,total:r.total}}get lengthComputable(){return FW.brandCheck(this,e),this[put].lengthComputable}get loaded(){return FW.brandCheck(this,e),this[put].loaded}get total(){return FW.brandCheck(this,e),this[put].total}};FW.converters.ProgressEventInit=FW.dictionaryConverter([{key:"lengthComputable",converter:FW.converters.boolean,defaultValue:!1},{key:"loaded",converter:FW.converters["unsigned long long"],defaultValue:0},{key:"total",converter:FW.converters["unsigned long long"],defaultValue:0},{key:"bubbles",converter:FW.converters.boolean,defaultValue:!1},{key:"cancelable",converter:FW.converters.boolean,defaultValue:!1},{key:"composed",converter:FW.converters.boolean,defaultValue:!1}]);VRn.exports={ProgressEvent:W$t}});var ORn=z((c8c,PRn)=>{"use strict";function rIo(e){if(!e)return"failure";switch(e.trim().toLowerCase()){case"unicode-1-1-utf-8":case"unicode11utf8":case"unicode20utf8":case"utf-8":case"utf8":case"x-unicode20utf8":return"UTF-8";case"866":case"cp866":case"csibm866":case"ibm866":return"IBM866";case"csisolatin2":case"iso-8859-2":case"iso-ir-101":case"iso8859-2":case"iso88592":case"iso_8859-2":case"iso_8859-2:1987":case"l2":case"latin2":return"ISO-8859-2";case"csisolatin3":case"iso-8859-3":case"iso-ir-109":case"iso8859-3":case"iso88593":case"iso_8859-3":case"iso_8859-3:1988":case"l3":case"latin3":return"ISO-8859-3";case"csisolatin4":case"iso-8859-4":case"iso-ir-110":case"iso8859-4":case"iso88594":case"iso_8859-4":case"iso_8859-4:1988":case"l4":case"latin4":return"ISO-8859-4";case"csisolatincyrillic":case"cyrillic":case"iso-8859-5":case"iso-ir-144":case"iso8859-5":case"iso88595":case"iso_8859-5":case"iso_8859-5:1988":return"ISO-8859-5";case"arabic":case"asmo-708":case"csiso88596e":case"csiso88596i":case"csisolatinarabic":case"ecma-114":case"iso-8859-6":case"iso-8859-6-e":case"iso-8859-6-i":case"iso-ir-127":case"iso8859-6":case"iso88596":case"iso_8859-6":case"iso_8859-6:1987":return"ISO-8859-6";case"csisolatingreek":case"ecma-118":case"elot_928":case"greek":case"greek8":case"iso-8859-7":case"iso-ir-126":case"iso8859-7":case"iso88597":case"iso_8859-7":case"iso_8859-7:1987":case"sun_eu_greek":return"ISO-8859-7";case"csiso88598e":case"csisolatinhebrew":case"hebrew":case"iso-8859-8":case"iso-8859-8-e":case"iso-ir-138":case"iso8859-8":case"iso88598":case"iso_8859-8":case"iso_8859-8:1988":case"visual":return"ISO-8859-8";case"csiso88598i":case"iso-8859-8-i":case"logical":return"ISO-8859-8-I";case"csisolatin6":case"iso-8859-10":case"iso-ir-157":case"iso8859-10":case"iso885910":case"l6":case"latin6":return"ISO-8859-10";case"iso-8859-13":case"iso8859-13":case"iso885913":return"ISO-8859-13";case"iso-8859-14":case"iso8859-14":case"iso885914":return"ISO-8859-14";case"csisolatin9":case"iso-8859-15":case"iso8859-15":case"iso885915":case"iso_8859-15":case"l9":return"ISO-8859-15";case"iso-8859-16":return"ISO-8859-16";case"cskoi8r":case"koi":case"koi8":case"koi8-r":case"koi8_r":return"KOI8-R";case"koi8-ru":case"koi8-u":return"KOI8-U";case"csmacintosh":case"mac":case"macintosh":case"x-mac-roman":return"macintosh";case"iso-8859-11":case"iso8859-11":case"iso885911":case"tis-620":case"windows-874":return"windows-874";case"cp1250":case"windows-1250":case"x-cp1250":return"windows-1250";case"cp1251":case"windows-1251":case"x-cp1251":return"windows-1251";case"ansi_x3.4-1968":case"ascii":case"cp1252":case"cp819":case"csisolatin1":case"ibm819":case"iso-8859-1":case"iso-ir-100":case"iso8859-1":case"iso88591":case"iso_8859-1":case"iso_8859-1:1987":case"l1":case"latin1":case"us-ascii":case"windows-1252":case"x-cp1252":return"windows-1252";case"cp1253":case"windows-1253":case"x-cp1253":return"windows-1253";case"cp1254":case"csisolatin5":case"iso-8859-9":case"iso-ir-148":case"iso8859-9":case"iso88599":case"iso_8859-9":case"iso_8859-9:1989":case"l5":case"latin5":case"windows-1254":case"x-cp1254":return"windows-1254";case"cp1255":case"windows-1255":case"x-cp1255":return"windows-1255";case"cp1256":case"windows-1256":case"x-cp1256":return"windows-1256";case"cp1257":case"windows-1257":case"x-cp1257":return"windows-1257";case"cp1258":case"windows-1258":case"x-cp1258":return"windows-1258";case"x-mac-cyrillic":case"x-mac-ukrainian":return"x-mac-cyrillic";case"chinese":case"csgb2312":case"csiso58gb231280":case"gb2312":case"gb_2312":case"gb_2312-80":case"gbk":case"iso-ir-58":case"x-gbk":return"GBK";case"gb18030":return"gb18030";case"big5":case"big5-hkscs":case"cn-big5":case"csbig5":case"x-x-big5":return"Big5";case"cseucpkdfmtjapanese":case"euc-jp":case"x-euc-jp":return"EUC-JP";case"csiso2022jp":case"iso-2022-jp":return"ISO-2022-JP";case"csshiftjis":case"ms932":case"ms_kanji":case"shift-jis":case"shift_jis":case"sjis":case"windows-31j":case"x-sjis":return"Shift_JIS";case"cseuckr":case"csksc56011987":case"euc-kr":case"iso-ir-149":case"korean":case"ks_c_5601-1987":case"ks_c_5601-1989":case"ksc5601":case"ksc_5601":case"windows-949":return"EUC-KR";case"csiso2022kr":case"hz-gb-2312":case"iso-2022-cn":case"iso-2022-cn-ext":case"iso-2022-kr":case"replacement":return"replacement";case"unicodefffe":case"utf-16be":return"UTF-16BE";case"csunicode":case"iso-10646-ucs-2":case"ucs-2":case"unicode":case"unicodefeff":case"utf-16":case"utf-16le":return"UTF-16LE";case"x-user-defined":return"x-user-defined";default:return"failure"}}PRn.exports={getEncoding:rIo}});var KRn=z((l8c,URn)=>{"use strict";var{kState:K1e,kError:P$t,kResult:MRn,kAborted:q3e,kLastProgressEventFired:O$t}=V$t(),{ProgressEvent:nIo}=WRn(),{getEncoding:QRn}=ORn(),{DOMException:iIo}=nie(),{serializeAMimeType:sIo,parseMIMEType:YRn}=LH(),{types:oIo}=Dt("util"),{StringDecoder:HRn}=Dt("string_decoder"),{btoa:XRn}=Dt("buffer"),aIo={enumerable:!0,writable:!1,configurable:!1};function cIo(e,t,r,s){if(e[K1e]==="loading")throw new iIo("Invalid state","InvalidStateError");e[K1e]="loading",e[MRn]=null,e[P$t]=null;let o=t.stream().getReader(),g=[],p=o.read(),f=!0;(async()=>{for(;!e[q3e];)try{let{done:m,value:y}=await p;if(f&&!e[q3e]&&queueMicrotask(()=>{gie("loadstart",e)}),f=!1,!m&&oIo.isUint8Array(y))g.push(y),(e[O$t]===void 0||Date.now()-e[O$t]>=50)&&!e[q3e]&&(e[O$t]=Date.now(),queueMicrotask(()=>{gie("progress",e)})),p=o.read();else if(m){queueMicrotask(()=>{e[K1e]="done";try{let B=lIo(g,r,t.type,s);if(e[q3e])return;e[MRn]=B,gie("load",e)}catch(B){e[P$t]=B,gie("error",e)}e[K1e]!=="loading"&&gie("loadend",e)});break}}catch(m){if(e[q3e])return;queueMicrotask(()=>{e[K1e]="done",e[P$t]=m,gie("error",e),e[K1e]!=="loading"&&gie("loadend",e)});break}})()}function gie(e,t){let r=new nIo(e,{bubbles:!1,cancelable:!1});t.dispatchEvent(r)}function lIo(e,t,r,s){switch(t){case"DataURL":{let a="data:",o=YRn(r||"application/octet-stream");o!=="failure"&&(a+=sIo(o)),a+=";base64,";let g=new HRn("latin1");for(let p of e)a+=XRn(g.write(p));return a+=XRn(g.end()),a}case"Text":{let a="failure";if(s&&(a=QRn(s)),a==="failure"&&r){let o=YRn(r);o!=="failure"&&(a=QRn(o.parameters.get("charset")))}return a==="failure"&&(a="UTF-8"),uIo(e,a)}case"ArrayBuffer":return JRn(e).buffer;case"BinaryString":{let a="",o=new HRn("latin1");for(let g of e)a+=o.write(g);return a+=o.end(),a}}}function uIo(e,t){let r=JRn(e),s=gIo(r),a=0;s!==null&&(t=s,a=s==="UTF-8"?3:2);let o=r.slice(a);return new TextDecoder(t).decode(o)}function gIo(e){let[t,r,s]=e;return t===239&&r===187&&s===191?"UTF-8":t===254&&r===255?"UTF-16BE":t===255&&r===254?"UTF-16LE":null}function JRn(e){let t=e.reduce((s,a)=>s+a.byteLength,0),r=0;return e.reduce((s,a)=>(s.set(a,r),r+=a.byteLength,s),new Uint8Array(t))}URn.exports={staticPropertyDescriptors:aIo,readOperation:cIo,fireAProgressEvent:gie}});var $Rn=z((u8c,qRn)=>{"use strict";var{staticPropertyDescriptors:j1e,readOperation:fut,fireAProgressEvent:jRn}=KRn(),{kState:bde,kError:zRn,kResult:Iut,kEvents:O_,kAborted:AIo}=V$t(),{webidl:Gy}=SF(),{kEnumerableProperty:PL}=Ih(),OH=class e extends EventTarget{constructor(){super(),this[bde]="empty",this[Iut]=null,this[zRn]=null,this[O_]={loadend:null,error:null,abort:null,load:null,progress:null,loadstart:null}}readAsArrayBuffer(t){Gy.brandCheck(this,e),Gy.argumentLengthCheck(arguments,1,{header:"FileReader.readAsArrayBuffer"}),t=Gy.converters.Blob(t,{strict:!1}),fut(this,t,"ArrayBuffer")}readAsBinaryString(t){Gy.brandCheck(this,e),Gy.argumentLengthCheck(arguments,1,{header:"FileReader.readAsBinaryString"}),t=Gy.converters.Blob(t,{strict:!1}),fut(this,t,"BinaryString")}readAsText(t,r=void 0){Gy.brandCheck(this,e),Gy.argumentLengthCheck(arguments,1,{header:"FileReader.readAsText"}),t=Gy.converters.Blob(t,{strict:!1}),r!==void 0&&(r=Gy.converters.DOMString(r)),fut(this,t,"Text",r)}readAsDataURL(t){Gy.brandCheck(this,e),Gy.argumentLengthCheck(arguments,1,{header:"FileReader.readAsDataURL"}),t=Gy.converters.Blob(t,{strict:!1}),fut(this,t,"DataURL")}abort(){if(this[bde]==="empty"||this[bde]==="done"){this[Iut]=null;return}this[bde]==="loading"&&(this[bde]="done",this[Iut]=null),this[AIo]=!0,jRn("abort",this),this[bde]!=="loading"&&jRn("loadend",this)}get readyState(){switch(Gy.brandCheck(this,e),this[bde]){case"empty":return this.EMPTY;case"loading":return this.LOADING;case"done":return this.DONE}}get result(){return Gy.brandCheck(this,e),this[Iut]}get error(){return Gy.brandCheck(this,e),this[zRn]}get onloadend(){return Gy.brandCheck(this,e),this[O_].loadend}set onloadend(t){Gy.brandCheck(this,e),this[O_].loadend&&this.removeEventListener("loadend",this[O_].loadend),typeof t=="function"?(this[O_].loadend=t,this.addEventListener("loadend",t)):this[O_].loadend=null}get onerror(){return Gy.brandCheck(this,e),this[O_].error}set onerror(t){Gy.brandCheck(this,e),this[O_].error&&this.removeEventListener("error",this[O_].error),typeof t=="function"?(this[O_].error=t,this.addEventListener("error",t)):this[O_].error=null}get onloadstart(){return Gy.brandCheck(this,e),this[O_].loadstart}set onloadstart(t){Gy.brandCheck(this,e),this[O_].loadstart&&this.removeEventListener("loadstart",this[O_].loadstart),typeof t=="function"?(this[O_].loadstart=t,this.addEventListener("loadstart",t)):this[O_].loadstart=null}get onprogress(){return Gy.brandCheck(this,e),this[O_].progress}set onprogress(t){Gy.brandCheck(this,e),this[O_].progress&&this.removeEventListener("progress",this[O_].progress),typeof t=="function"?(this[O_].progress=t,this.addEventListener("progress",t)):this[O_].progress=null}get onload(){return Gy.brandCheck(this,e),this[O_].load}set onload(t){Gy.brandCheck(this,e),this[O_].load&&this.removeEventListener("load",this[O_].load),typeof t=="function"?(this[O_].load=t,this.addEventListener("load",t)):this[O_].load=null}get onabort(){return Gy.brandCheck(this,e),this[O_].abort}set onabort(t){Gy.brandCheck(this,e),this[O_].abort&&this.removeEventListener("abort",this[O_].abort),typeof t=="function"?(this[O_].abort=t,this.addEventListener("abort",t)):this[O_].abort=null}};OH.EMPTY=OH.prototype.EMPTY=0;OH.LOADING=OH.prototype.LOADING=1;OH.DONE=OH.prototype.DONE=2;Object.defineProperties(OH.prototype,{EMPTY:j1e,LOADING:j1e,DONE:j1e,readAsArrayBuffer:PL,readAsBinaryString:PL,readAsText:PL,readAsDataURL:PL,abort:PL,readyState:PL,result:PL,error:PL,onloadstart:PL,onprogress:PL,onload:PL,onabort:PL,onerror:PL,onloadend:PL,[Symbol.toStringTag]:{value:"FileReader",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(OH,{EMPTY:j1e,LOADING:j1e,DONE:j1e});qRn.exports={FileReader:OH}});var Cut=z((g8c,eDn)=>{"use strict";eDn.exports={kConstruct:aE().kConstruct}});var nDn=z((A8c,rDn)=>{"use strict";var dIo=Dt("assert"),{URLSerializer:tDn}=LH(),{isValidHeaderName:pIo}=QO();function fIo(e,t,r=!1){let s=tDn(e,r),a=tDn(t,r);return s===a}function IIo(e){dIo(e!==null);let t=[];for(let r of e.split(",")){if(r=r.trim(),r.length){if(!pIo(r))continue}else continue;t.push(r)}return t}rDn.exports={urlEquals:fIo,fieldValues:IIo}});var lDn=z((d8c,cDn)=>{"use strict";var{kConstruct:CIo}=Cut(),{urlEquals:mIo,fieldValues:M$t}=nDn(),{kEnumerableProperty:Ede,isDisturbed:hIo}=Ih(),{kHeadersList:iDn}=aE(),{webidl:Gp}=SF(),{Response:oDn,cloneResponse:_Io}=tut(),{Request:oU}=j3e(),{kState:DF,kHeaders:mut,kGuard:sDn,kRealm:yIo}=Zj(),{fetching:bIo}=dut(),{urlIsHttpHttpsScheme:hut,createDeferredPromise:z1e,readAllBytes:EIo}=QO(),Q$t=Dt("assert"),{getGlobalDispatcher:BIo}=O1e(),_ut=class e{#e;constructor(){arguments[0]!==CIo&&Gp.illegalConstructor(),this.#e=arguments[1]}async match(t,r={}){Gp.brandCheck(this,e),Gp.argumentLengthCheck(arguments,1,{header:"Cache.match"}),t=Gp.converters.RequestInfo(t),r=Gp.converters.CacheQueryOptions(r);let s=await this.matchAll(t,r);if(s.length!==0)return s[0]}async matchAll(t=void 0,r={}){Gp.brandCheck(this,e),t!==void 0&&(t=Gp.converters.RequestInfo(t)),r=Gp.converters.CacheQueryOptions(r);let s=null;if(t!==void 0)if(t instanceof oU){if(s=t[DF],s.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(s=new oU(t)[DF]);let a=[];if(t===void 0)for(let g of this.#e)a.push(g[1]);else{let g=this.#r(s,r);for(let p of g)a.push(p[1])}let o=[];for(let g of a){let p=new oDn(g.body?.source??null),f=p[DF].body;p[DF]=g,p[DF].body=f,p[mut][iDn]=g.headersList,p[mut][sDn]="immutable",o.push(p)}return Object.freeze(o)}async add(t){Gp.brandCheck(this,e),Gp.argumentLengthCheck(arguments,1,{header:"Cache.add"}),t=Gp.converters.RequestInfo(t);let r=[t];return await this.addAll(r)}async addAll(t){Gp.brandCheck(this,e),Gp.argumentLengthCheck(arguments,1,{header:"Cache.addAll"}),t=Gp.converters["sequence"](t);let r=[],s=[];for(let B of t){if(typeof B=="string")continue;let v=B[DF];if(!hut(v.url)||v.method!=="GET")throw Gp.errors.exception({header:"Cache.addAll",message:"Expected http/s scheme when method is not GET."})}let a=[];for(let B of t){let v=new oU(B)[DF];if(!hut(v.url))throw Gp.errors.exception({header:"Cache.addAll",message:"Expected http/s scheme."});v.initiator="fetch",v.destination="subresource",s.push(v);let G=z1e();a.push(bIo({request:v,dispatcher:BIo(),processResponse(T){if(T.type==="error"||T.status===206||T.status<200||T.status>299)G.reject(Gp.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(T.headersList.contains("vary")){let O=M$t(T.headersList.get("vary"));for(let X of O)if(X==="*"){G.reject(Gp.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(let U of a)U.abort();return}}},processResponseEndOfBody(T){if(T.aborted){G.reject(new DOMException("aborted","AbortError"));return}G.resolve(T)}})),r.push(G.promise)}let g=await Promise.all(r),p=[],f=0;for(let B of g){let v={type:"put",request:s[f],response:B};p.push(v),f++}let m=z1e(),y=null;try{this.#t(p)}catch(B){y=B}return queueMicrotask(()=>{y===null?m.resolve(void 0):m.reject(y)}),m.promise}async put(t,r){Gp.brandCheck(this,e),Gp.argumentLengthCheck(arguments,2,{header:"Cache.put"}),t=Gp.converters.RequestInfo(t),r=Gp.converters.Response(r);let s=null;if(t instanceof oU?s=t[DF]:s=new oU(t)[DF],!hut(s.url)||s.method!=="GET")throw Gp.errors.exception({header:"Cache.put",message:"Expected an http/s scheme when method is not GET"});let a=r[DF];if(a.status===206)throw Gp.errors.exception({header:"Cache.put",message:"Got 206 status"});if(a.headersList.contains("vary")){let v=M$t(a.headersList.get("vary"));for(let G of v)if(G==="*")throw Gp.errors.exception({header:"Cache.put",message:"Got * vary field value"})}if(a.body&&(hIo(a.body.stream)||a.body.stream.locked))throw Gp.errors.exception({header:"Cache.put",message:"Response body is locked or disturbed"});let o=_Io(a),g=z1e();if(a.body!=null){let G=a.body.stream.getReader();EIo(G).then(g.resolve,g.reject)}else g.resolve(void 0);let p=[],f={type:"put",request:s,response:o};p.push(f);let m=await g.promise;o.body!=null&&(o.body.source=m);let y=z1e(),B=null;try{this.#t(p)}catch(v){B=v}return queueMicrotask(()=>{B===null?y.resolve():y.reject(B)}),y.promise}async delete(t,r={}){Gp.brandCheck(this,e),Gp.argumentLengthCheck(arguments,1,{header:"Cache.delete"}),t=Gp.converters.RequestInfo(t),r=Gp.converters.CacheQueryOptions(r);let s=null;if(t instanceof oU){if(s=t[DF],s.method!=="GET"&&!r.ignoreMethod)return!1}else Q$t(typeof t=="string"),s=new oU(t)[DF];let a=[],o={type:"delete",request:s,options:r};a.push(o);let g=z1e(),p=null,f;try{f=this.#t(a)}catch(m){p=m}return queueMicrotask(()=>{p===null?g.resolve(!!f?.length):g.reject(p)}),g.promise}async keys(t=void 0,r={}){Gp.brandCheck(this,e),t!==void 0&&(t=Gp.converters.RequestInfo(t)),r=Gp.converters.CacheQueryOptions(r);let s=null;if(t!==void 0)if(t instanceof oU){if(s=t[DF],s.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(s=new oU(t)[DF]);let a=z1e(),o=[];if(t===void 0)for(let g of this.#e)o.push(g[0]);else{let g=this.#r(s,r);for(let p of g)o.push(p[0])}return queueMicrotask(()=>{let g=[];for(let p of o){let f=new oU("https://a");f[DF]=p,f[mut][iDn]=p.headersList,f[mut][sDn]="immutable",f[yIo]=p.client,g.push(f)}a.resolve(Object.freeze(g))}),a.promise}#t(t){let r=this.#e,s=[...r],a=[],o=[];try{for(let g of t){if(g.type!=="delete"&&g.type!=="put")throw Gp.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if(g.type==="delete"&&g.response!=null)throw Gp.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#r(g.request,g.options,a).length)throw new DOMException("???","InvalidStateError");let p;if(g.type==="delete"){if(p=this.#r(g.request,g.options),p.length===0)return[];for(let f of p){let m=r.indexOf(f);Q$t(m!==-1),r.splice(m,1)}}else if(g.type==="put"){if(g.response==null)throw Gp.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});let f=g.request;if(!hut(f.url))throw Gp.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if(f.method!=="GET")throw Gp.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(g.options!=null)throw Gp.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});p=this.#r(g.request);for(let m of p){let y=r.indexOf(m);Q$t(y!==-1),r.splice(y,1)}r.push([g.request,g.response]),a.push([g.request,g.response])}o.push([g.request,g.response])}return o}catch(g){throw this.#e.length=0,this.#e=s,g}}#r(t,r,s){let a=[],o=s??this.#e;for(let g of o){let[p,f]=g;this.#n(t,p,f,r)&&a.push(g)}return a}#n(t,r,s=null,a){let o=new URL(t.url),g=new URL(r.url);if(a?.ignoreSearch&&(g.search="",o.search=""),!mIo(o,g,!0))return!1;if(s==null||a?.ignoreVary||!s.headersList.contains("vary"))return!0;let p=M$t(s.headersList.get("vary"));for(let f of p){if(f==="*")return!1;let m=r.headersList.get(f),y=t.headersList.get(f);if(m!==y)return!1}return!0}};Object.defineProperties(_ut.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:Ede,matchAll:Ede,add:Ede,addAll:Ede,put:Ede,delete:Ede,keys:Ede});var aDn=[{key:"ignoreSearch",converter:Gp.converters.boolean,defaultValue:!1},{key:"ignoreMethod",converter:Gp.converters.boolean,defaultValue:!1},{key:"ignoreVary",converter:Gp.converters.boolean,defaultValue:!1}];Gp.converters.CacheQueryOptions=Gp.dictionaryConverter(aDn);Gp.converters.MultiCacheQueryOptions=Gp.dictionaryConverter([...aDn,{key:"cacheName",converter:Gp.converters.DOMString}]);Gp.converters.Response=Gp.interfaceConverter(oDn);Gp.converters["sequence"]=Gp.sequenceConverter(Gp.converters.RequestInfo);cDn.exports={Cache:_ut}});var gDn=z((p8c,uDn)=>{"use strict";var{kConstruct:$3e}=Cut(),{Cache:yut}=lDn(),{webidl:xF}=SF(),{kEnumerableProperty:ePe}=Ih(),but=class e{#e=new Map;constructor(){arguments[0]!==$3e&&xF.illegalConstructor()}async match(t,r={}){if(xF.brandCheck(this,e),xF.argumentLengthCheck(arguments,1,{header:"CacheStorage.match"}),t=xF.converters.RequestInfo(t),r=xF.converters.MultiCacheQueryOptions(r),r.cacheName!=null){if(this.#e.has(r.cacheName)){let s=this.#e.get(r.cacheName);return await new yut($3e,s).match(t,r)}}else for(let s of this.#e.values()){let o=await new yut($3e,s).match(t,r);if(o!==void 0)return o}}async has(t){return xF.brandCheck(this,e),xF.argumentLengthCheck(arguments,1,{header:"CacheStorage.has"}),t=xF.converters.DOMString(t),this.#e.has(t)}async open(t){if(xF.brandCheck(this,e),xF.argumentLengthCheck(arguments,1,{header:"CacheStorage.open"}),t=xF.converters.DOMString(t),this.#e.has(t)){let s=this.#e.get(t);return new yut($3e,s)}let r=[];return this.#e.set(t,r),new yut($3e,r)}async delete(t){return xF.brandCheck(this,e),xF.argumentLengthCheck(arguments,1,{header:"CacheStorage.delete"}),t=xF.converters.DOMString(t),this.#e.delete(t)}async keys(){return xF.brandCheck(this,e),[...this.#e.keys()]}};Object.defineProperties(but.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:ePe,has:ePe,open:ePe,delete:ePe,keys:ePe});uDn.exports={CacheStorage:but}});var dDn=z((f8c,ADn)=>{"use strict";ADn.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var Y$t=z((I8c,IDn)=>{"use strict";var pDn=Dt("assert"),{kHeadersList:fDn}=aE();function vIo(e){if(e.length===0)return!1;for(let t of e){let r=t.charCodeAt(0);if(r>=0||r<=8||r>=10||r<=31||r===127)return!1}}function SIo(e){for(let t of e){let r=t.charCodeAt(0);if(r<=32||r>127||t==="("||t===")"||t===">"||t==="<"||t==="@"||t===","||t===";"||t===":"||t==="\\"||t==='"'||t==="/"||t==="["||t==="]"||t==="?"||t==="="||t==="{"||t==="}")throw new Error("Invalid cookie name")}}function wIo(e){for(let t of e){let r=t.charCodeAt(0);if(r<33||r===34||r===44||r===59||r===92||r>126)throw new Error("Invalid header value")}}function TIo(e){for(let t of e)if(t.charCodeAt(0)<33||t===";")throw new Error("Invalid cookie path")}function NIo(e){if(e.startsWith("-")||e.endsWith(".")||e.endsWith("-"))throw new Error("Invalid cookie domain")}function RIo(e){typeof e=="number"&&(e=new Date(e));let t=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],r=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],s=t[e.getUTCDay()],a=e.getUTCDate().toString().padStart(2,"0"),o=r[e.getUTCMonth()],g=e.getUTCFullYear(),p=e.getUTCHours().toString().padStart(2,"0"),f=e.getUTCMinutes().toString().padStart(2,"0"),m=e.getUTCSeconds().toString().padStart(2,"0");return`${s}, ${a} ${o} ${g} ${p}:${f}:${m} GMT`}function DIo(e){if(e<0)throw new Error("Invalid cookie max-age")}function xIo(e){if(e.name.length===0)return null;SIo(e.name),wIo(e.value);let t=[`${e.name}=${e.value}`];e.name.startsWith("__Secure-")&&(e.secure=!0),e.name.startsWith("__Host-")&&(e.secure=!0,e.domain=null,e.path="/"),e.secure&&t.push("Secure"),e.httpOnly&&t.push("HttpOnly"),typeof e.maxAge=="number"&&(DIo(e.maxAge),t.push(`Max-Age=${e.maxAge}`)),e.domain&&(NIo(e.domain),t.push(`Domain=${e.domain}`)),e.path&&(TIo(e.path),t.push(`Path=${e.path}`)),e.expires&&e.expires.toString()!=="Invalid Date"&&t.push(`Expires=${RIo(e.expires)}`),e.sameSite&&t.push(`SameSite=${e.sameSite}`);for(let r of e.unparsed){if(!r.includes("="))throw new Error("Invalid unparsed");let[s,...a]=r.split("=");t.push(`${s.trim()}=${a.join("=")}`)}return t.join("; ")}var Eut;function kIo(e){if(e[fDn])return e[fDn];Eut||(Eut=Object.getOwnPropertySymbols(e).find(r=>r.description==="headers list"),pDn(Eut,"Headers cannot be parsed"));let t=e[Eut];return pDn(t),t}IDn.exports={isCTLExcludingHtab:vIo,stringify:xIo,getHeadersList:kIo}});var mDn=z((C8c,CDn)=>{"use strict";var{maxNameValuePairSize:GIo,maxAttributeValueSize:FIo}=dDn(),{isCTLExcludingHtab:ZIo}=Y$t(),{collectASequenceOfCodePointsFast:But}=LH(),LIo=Dt("assert");function VIo(e){if(ZIo(e))return null;let t="",r="",s="",a="";if(e.includes(";")){let o={position:0};t=But(";",e,o),r=e.slice(o.position)}else t=e;if(!t.includes("="))a=t;else{let o={position:0};s=But("=",t,o),a=t.slice(o.position+1)}return s=s.trim(),a=a.trim(),s.length+a.length>GIo?null:{name:s,value:a,...q1e(r)}}function q1e(e,t={}){if(e.length===0)return t;LIo(e[0]===";"),e=e.slice(1);let r="";e.includes(";")?(r=But(";",e,{position:0}),e=e.slice(r.length)):(r=e,e="");let s="",a="";if(r.includes("=")){let g={position:0};s=But("=",r,g),a=r.slice(g.position+1)}else s=r;if(s=s.trim(),a=a.trim(),a.length>FIo)return q1e(e,t);let o=s.toLowerCase();if(o==="expires"){let g=new Date(a);t.expires=g}else if(o==="max-age"){let g=a.charCodeAt(0);if((g<48||g>57)&&a[0]!=="-"||!/^\d+$/.test(a))return q1e(e,t);let p=Number(a);t.maxAge=p}else if(o==="domain"){let g=a;g[0]==="."&&(g=g.slice(1)),g=g.toLowerCase(),t.domain=g}else if(o==="path"){let g="";a.length===0||a[0]!=="/"?g="/":g=a,t.path=g}else if(o==="secure")t.secure=!0;else if(o==="httponly")t.httpOnly=!0;else if(o==="samesite"){let g="Default",p=a.toLowerCase();p.includes("none")&&(g="None"),p.includes("strict")&&(g="Strict"),p.includes("lax")&&(g="Lax"),t.sameSite=g}else t.unparsed??=[],t.unparsed.push(`${s}=${a}`);return q1e(e,t)}CDn.exports={parseSetCookie:VIo,parseUnparsedAttributes:q1e}});var bDn=z((m8c,yDn)=>{"use strict";var{parseSetCookie:WIo}=mDn(),{stringify:hDn,getHeadersList:PIo}=Y$t(),{webidl:Lm}=SF(),{Headers:vut}=_de();function OIo(e){Lm.argumentLengthCheck(arguments,1,{header:"getCookies"}),Lm.brandCheck(e,vut,{strict:!1});let t=e.get("cookie"),r={};if(!t)return r;for(let s of t.split(";")){let[a,...o]=s.split("=");r[a.trim()]=o.join("=")}return r}function MIo(e,t,r){Lm.argumentLengthCheck(arguments,2,{header:"deleteCookie"}),Lm.brandCheck(e,vut,{strict:!1}),t=Lm.converters.DOMString(t),r=Lm.converters.DeleteCookieAttributes(r),_Dn(e,{name:t,value:"",expires:new Date(0),...r})}function QIo(e){Lm.argumentLengthCheck(arguments,1,{header:"getSetCookies"}),Lm.brandCheck(e,vut,{strict:!1});let t=PIo(e).cookies;return t?t.map(r=>WIo(Array.isArray(r)?r[1]:r)):[]}function _Dn(e,t){Lm.argumentLengthCheck(arguments,2,{header:"setCookie"}),Lm.brandCheck(e,vut,{strict:!1}),t=Lm.converters.Cookie(t),hDn(t)&&e.append("Set-Cookie",hDn(t))}Lm.converters.DeleteCookieAttributes=Lm.dictionaryConverter([{converter:Lm.nullableConverter(Lm.converters.DOMString),key:"path",defaultValue:null},{converter:Lm.nullableConverter(Lm.converters.DOMString),key:"domain",defaultValue:null}]);Lm.converters.Cookie=Lm.dictionaryConverter([{converter:Lm.converters.DOMString,key:"name"},{converter:Lm.converters.DOMString,key:"value"},{converter:Lm.nullableConverter(e=>typeof e=="number"?Lm.converters["unsigned long long"](e):new Date(e)),key:"expires",defaultValue:null},{converter:Lm.nullableConverter(Lm.converters["long long"]),key:"maxAge",defaultValue:null},{converter:Lm.nullableConverter(Lm.converters.DOMString),key:"domain",defaultValue:null},{converter:Lm.nullableConverter(Lm.converters.DOMString),key:"path",defaultValue:null},{converter:Lm.nullableConverter(Lm.converters.boolean),key:"secure",defaultValue:null},{converter:Lm.nullableConverter(Lm.converters.boolean),key:"httpOnly",defaultValue:null},{converter:Lm.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:Lm.sequenceConverter(Lm.converters.DOMString),key:"unparsed",defaultValue:[]}]);yDn.exports={getCookies:OIo,deleteCookie:MIo,getSetCookies:QIo,setCookie:_Dn}});var $1e=z((h8c,EDn)=>{"use strict";var YIo="258EAFA5-E914-47DA-95CA-C5AB0DC85B11",HIo={enumerable:!0,writable:!1,configurable:!1},XIo={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},JIo={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},UIo=2**16-1,KIo={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},jIo=Buffer.allocUnsafe(0);EDn.exports={uid:YIo,staticPropertyDescriptors:HIo,states:XIo,opcodes:JIo,maxUnsigned16Bit:UIo,parserStates:KIo,emptyBuffer:jIo}});var tPe=z((_8c,BDn)=>{"use strict";BDn.exports={kWebSocketURL:Symbol("url"),kReadyState:Symbol("ready state"),kController:Symbol("controller"),kResponse:Symbol("response"),kBinaryType:Symbol("binary type"),kSentClose:Symbol("sent close"),kReceivedClose:Symbol("received close"),kByteParser:Symbol("byte parser")}});var X$t=z((y8c,vDn)=>{"use strict";var{webidl:Fp}=SF(),{kEnumerableProperty:OL}=Ih(),{MessagePort:zIo}=Dt("worker_threads"),Sut=class e extends Event{#e;constructor(t,r={}){Fp.argumentLengthCheck(arguments,1,{header:"MessageEvent constructor"}),t=Fp.converters.DOMString(t),r=Fp.converters.MessageEventInit(r),super(t,r),this.#e=r}get data(){return Fp.brandCheck(this,e),this.#e.data}get origin(){return Fp.brandCheck(this,e),this.#e.origin}get lastEventId(){return Fp.brandCheck(this,e),this.#e.lastEventId}get source(){return Fp.brandCheck(this,e),this.#e.source}get ports(){return Fp.brandCheck(this,e),Object.isFrozen(this.#e.ports)||Object.freeze(this.#e.ports),this.#e.ports}initMessageEvent(t,r=!1,s=!1,a=null,o="",g="",p=null,f=[]){return Fp.brandCheck(this,e),Fp.argumentLengthCheck(arguments,1,{header:"MessageEvent.initMessageEvent"}),new e(t,{bubbles:r,cancelable:s,data:a,origin:o,lastEventId:g,source:p,ports:f})}},wut=class e extends Event{#e;constructor(t,r={}){Fp.argumentLengthCheck(arguments,1,{header:"CloseEvent constructor"}),t=Fp.converters.DOMString(t),r=Fp.converters.CloseEventInit(r),super(t,r),this.#e=r}get wasClean(){return Fp.brandCheck(this,e),this.#e.wasClean}get code(){return Fp.brandCheck(this,e),this.#e.code}get reason(){return Fp.brandCheck(this,e),this.#e.reason}},Tut=class e extends Event{#e;constructor(t,r){Fp.argumentLengthCheck(arguments,1,{header:"ErrorEvent constructor"}),super(t,r),t=Fp.converters.DOMString(t),r=Fp.converters.ErrorEventInit(r??{}),this.#e=r}get message(){return Fp.brandCheck(this,e),this.#e.message}get filename(){return Fp.brandCheck(this,e),this.#e.filename}get lineno(){return Fp.brandCheck(this,e),this.#e.lineno}get colno(){return Fp.brandCheck(this,e),this.#e.colno}get error(){return Fp.brandCheck(this,e),this.#e.error}};Object.defineProperties(Sut.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:OL,origin:OL,lastEventId:OL,source:OL,ports:OL,initMessageEvent:OL});Object.defineProperties(wut.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:OL,code:OL,wasClean:OL});Object.defineProperties(Tut.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:OL,filename:OL,lineno:OL,colno:OL,error:OL});Fp.converters.MessagePort=Fp.interfaceConverter(zIo);Fp.converters["sequence"]=Fp.sequenceConverter(Fp.converters.MessagePort);var H$t=[{key:"bubbles",converter:Fp.converters.boolean,defaultValue:!1},{key:"cancelable",converter:Fp.converters.boolean,defaultValue:!1},{key:"composed",converter:Fp.converters.boolean,defaultValue:!1}];Fp.converters.MessageEventInit=Fp.dictionaryConverter([...H$t,{key:"data",converter:Fp.converters.any,defaultValue:null},{key:"origin",converter:Fp.converters.USVString,defaultValue:""},{key:"lastEventId",converter:Fp.converters.DOMString,defaultValue:""},{key:"source",converter:Fp.nullableConverter(Fp.converters.MessagePort),defaultValue:null},{key:"ports",converter:Fp.converters["sequence"],get defaultValue(){return[]}}]);Fp.converters.CloseEventInit=Fp.dictionaryConverter([...H$t,{key:"wasClean",converter:Fp.converters.boolean,defaultValue:!1},{key:"code",converter:Fp.converters["unsigned short"],defaultValue:0},{key:"reason",converter:Fp.converters.USVString,defaultValue:""}]);Fp.converters.ErrorEventInit=Fp.dictionaryConverter([...H$t,{key:"message",converter:Fp.converters.DOMString,defaultValue:""},{key:"filename",converter:Fp.converters.USVString,defaultValue:""},{key:"lineno",converter:Fp.converters["unsigned long"],defaultValue:0},{key:"colno",converter:Fp.converters["unsigned long"],defaultValue:0},{key:"error",converter:Fp.converters.any}]);vDn.exports={MessageEvent:Sut,CloseEvent:wut,ErrorEvent:Tut}});var Dut=z((b8c,TDn)=>{"use strict";var{kReadyState:Nut,kController:qIo,kResponse:$Io,kBinaryType:eCo,kWebSocketURL:tCo}=tPe(),{states:Rut,opcodes:SDn}=$1e(),{MessageEvent:rCo,ErrorEvent:nCo}=X$t();function iCo(e){return e[Nut]===Rut.OPEN}function sCo(e){return e[Nut]===Rut.CLOSING}function oCo(e){return e[Nut]===Rut.CLOSED}function J$t(e,t,r=Event,s){let a=new r(e,s);t.dispatchEvent(a)}function aCo(e,t,r){if(e[Nut]!==Rut.OPEN)return;let s;if(t===SDn.TEXT)try{s=new TextDecoder("utf-8",{fatal:!0}).decode(r)}catch{wDn(e,"Received invalid UTF-8 in text frame.");return}else t===SDn.BINARY&&(e[eCo]==="blob"?s=new Blob([r]):s=new Uint8Array(r).buffer);J$t("message",e,rCo,{origin:e[tCo].origin,data:s})}function cCo(e){if(e.length===0)return!1;for(let t of e){let r=t.charCodeAt(0);if(r<33||r>126||t==="("||t===")"||t==="<"||t===">"||t==="@"||t===","||t===";"||t===":"||t==="\\"||t==='"'||t==="/"||t==="["||t==="]"||t==="?"||t==="="||t==="{"||t==="}"||r===32||r===9)return!1}return!0}function lCo(e){return e>=1e3&&e<1015?e!==1004&&e!==1005&&e!==1006:e>=3e3&&e<=4999}function wDn(e,t){let{[qIo]:r,[$Io]:s}=e;r.abort(),s?.socket&&!s.socket.destroyed&&s.socket.destroy(),t&&J$t("error",e,nCo,{error:new Error(t)})}TDn.exports={isEstablished:iCo,isClosing:sCo,isClosed:oCo,fireEvent:J$t,isValidSubprotocol:cCo,isValidStatusCode:lCo,failWebsocketConnection:wDn,websocketMessageReceived:aCo}});var GDn=z((E8c,kDn)=>{"use strict";var K$t=Dt("diagnostics_channel"),{uid:uCo,states:RDn}=$1e(),{kReadyState:DDn,kSentClose:NDn,kByteParser:xDn,kReceivedClose:gCo}=tPe(),{fireEvent:ACo,failWebsocketConnection:Bde}=Dut(),{CloseEvent:dCo}=X$t(),{makeRequest:pCo}=j3e(),{fetching:fCo}=dut(),{Headers:ICo}=_de(),{getGlobalDispatcher:CCo}=O1e(),{kHeadersList:mCo}=aE(),Hj={};Hj.open=K$t.channel("undici:websocket:open");Hj.close=K$t.channel("undici:websocket:close");Hj.socketError=K$t.channel("undici:websocket:socket_error");var U$t;try{U$t=Dt("crypto")}catch{}function hCo(e,t,r,s,a){let o=e;o.protocol=e.protocol==="ws:"?"http:":"https:";let g=pCo({urlList:[o],serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(a.headers){let y=new ICo(a.headers)[mCo];g.headersList=y}let p=U$t.randomBytes(16).toString("base64");g.headersList.append("sec-websocket-key",p),g.headersList.append("sec-websocket-version","13");for(let y of t)g.headersList.append("sec-websocket-protocol",y);let f="";return fCo({request:g,useParallelQueue:!0,dispatcher:a.dispatcher??CCo(),processResponse(y){if(y.type==="error"||y.status!==101){Bde(r,"Received network error or non-101 status code.");return}if(t.length!==0&&!y.headersList.get("Sec-WebSocket-Protocol")){Bde(r,"Server did not respond with sent protocols.");return}if(y.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){Bde(r,'Server did not set Upgrade header to "websocket".');return}if(y.headersList.get("Connection")?.toLowerCase()!=="upgrade"){Bde(r,'Server did not set Connection header to "upgrade".');return}let B=y.headersList.get("Sec-WebSocket-Accept"),v=U$t.createHash("sha1").update(p+uCo).digest("base64");if(B!==v){Bde(r,"Incorrect hash received in Sec-WebSocket-Accept header.");return}let G=y.headersList.get("Sec-WebSocket-Extensions");if(G!==null&&G!==f){Bde(r,"Received different permessage-deflate than the one set.");return}let T=y.headersList.get("Sec-WebSocket-Protocol");if(T!==null&&T!==g.headersList.get("Sec-WebSocket-Protocol")){Bde(r,"Protocol was not set in the opening handshake.");return}y.socket.on("data",_Co),y.socket.on("close",yCo),y.socket.on("error",bCo),Hj.open.hasSubscribers&&Hj.open.publish({address:y.socket.address(),protocol:T,extensions:G}),s(y)}})}function _Co(e){this.ws[xDn].write(e)||this.pause()}function yCo(){let{ws:e}=this,t=e[NDn]&&e[gCo],r=1005,s="",a=e[xDn].closingInfo;a?(r=a.code??1005,s=a.reason):e[NDn]||(r=1006),e[DDn]=RDn.CLOSED,ACo("close",e,dCo,{wasClean:t,code:r,reason:s}),Hj.close.hasSubscribers&&Hj.close.publish({websocket:e,code:r,reason:s})}function bCo(e){let{ws:t}=this;t[DDn]=RDn.CLOSING,Hj.socketError.hasSubscribers&&Hj.socketError.publish(e),this.destroy()}kDn.exports={establishWebSocketConnection:hCo}});var z$t=z((B8c,ZDn)=>{"use strict";var{maxUnsigned16Bit:ECo}=$1e(),FDn;try{FDn=Dt("crypto")}catch{}var j$t=class{constructor(t){this.frameData=t,this.maskKey=FDn.randomBytes(4)}createFrame(t){let r=this.frameData?.byteLength??0,s=r,a=6;r>ECo?(a+=8,s=127):r>125&&(a+=2,s=126);let o=Buffer.allocUnsafe(r+a);o[0]=o[1]=0,o[0]|=128,o[0]=(o[0]&240)+t;o[a-4]=this.maskKey[0],o[a-3]=this.maskKey[1],o[a-2]=this.maskKey[2],o[a-1]=this.maskKey[3],o[1]=s,s===126?o.writeUInt16BE(r,2):s===127&&(o[2]=o[3]=0,o.writeUIntBE(r,4,6)),o[1]|=128;for(let g=0;g{"use strict";var{Writable:BCo}=Dt("stream"),MDn=Dt("diagnostics_channel"),{parserStates:XO,opcodes:JO,states:vCo,emptyBuffer:SCo}=$1e(),{kReadyState:wCo,kSentClose:LDn,kResponse:VDn,kReceivedClose:WDn}=tPe(),{isValidStatusCode:PDn,failWebsocketConnection:rPe,websocketMessageReceived:TCo}=Dut(),{WebsocketFrameSend:ODn}=z$t(),e2e={};e2e.ping=MDn.channel("undici:websocket:ping");e2e.pong=MDn.channel("undici:websocket:pong");var q$t=class extends BCo{#e=[];#t=0;#r=XO.INFO;#n={};#i=[];constructor(t){super(),this.ws=t}_write(t,r,s){this.#e.push(t),this.#t+=t.length,this.run(s)}run(t){for(;;){if(this.#r===XO.INFO){if(this.#t<2)return t();let r=this.consume(2);if(this.#n.fin=(r[0]&128)!==0,this.#n.opcode=r[0]&15,this.#n.originalOpcode??=this.#n.opcode,this.#n.fragmented=!this.#n.fin&&this.#n.opcode!==JO.CONTINUATION,this.#n.fragmented&&this.#n.opcode!==JO.BINARY&&this.#n.opcode!==JO.TEXT){rPe(this.ws,"Invalid frame type was fragmented.");return}let s=r[1]&127;if(s<=125?(this.#n.payloadLength=s,this.#r=XO.READ_DATA):s===126?this.#r=XO.PAYLOADLENGTH_16:s===127&&(this.#r=XO.PAYLOADLENGTH_64),this.#n.fragmented&&s>125){rPe(this.ws,"Fragmented frame exceeded 125 bytes.");return}else if((this.#n.opcode===JO.PING||this.#n.opcode===JO.PONG||this.#n.opcode===JO.CLOSE)&&s>125){rPe(this.ws,"Payload length for control frame exceeded 125 bytes.");return}else if(this.#n.opcode===JO.CLOSE){if(s===1){rPe(this.ws,"Received close frame with a 1-byte body.");return}let a=this.consume(s);if(this.#n.closeInfo=this.parseCloseBody(!1,a),!this.ws[LDn]){let o=Buffer.allocUnsafe(2);o.writeUInt16BE(this.#n.closeInfo.code,0);let g=new ODn(o);this.ws[VDn].socket.write(g.createFrame(JO.CLOSE),p=>{p||(this.ws[LDn]=!0)})}this.ws[wCo]=vCo.CLOSING,this.ws[WDn]=!0,this.end();return}else if(this.#n.opcode===JO.PING){let a=this.consume(s);if(!this.ws[WDn]){let o=new ODn(a);this.ws[VDn].socket.write(o.createFrame(JO.PONG)),e2e.ping.hasSubscribers&&e2e.ping.publish({payload:a})}if(this.#r=XO.INFO,this.#t>0)continue;t();return}else if(this.#n.opcode===JO.PONG){let a=this.consume(s);if(e2e.pong.hasSubscribers&&e2e.pong.publish({payload:a}),this.#t>0)continue;t();return}}else if(this.#r===XO.PAYLOADLENGTH_16){if(this.#t<2)return t();let r=this.consume(2);this.#n.payloadLength=r.readUInt16BE(0),this.#r=XO.READ_DATA}else if(this.#r===XO.PAYLOADLENGTH_64){if(this.#t<8)return t();let r=this.consume(8),s=r.readUInt32BE(0);if(s>2**31-1){rPe(this.ws,"Received payload length > 2^31 bytes.");return}let a=r.readUInt32BE(4);this.#n.payloadLength=(s<<8)+a,this.#r=XO.READ_DATA}else if(this.#r===XO.READ_DATA){if(this.#t=this.#n.payloadLength){let r=this.consume(this.#n.payloadLength);if(this.#i.push(r),!this.#n.fragmented||this.#n.fin&&this.#n.opcode===JO.CONTINUATION){let s=Buffer.concat(this.#i);TCo(this.ws,this.#n.originalOpcode,s),this.#n={},this.#i.length=0}this.#r=XO.INFO}}if(!(this.#t>0)){t();break}}}consume(t){if(t>this.#t)return null;if(t===0)return SCo;if(this.#e[0].length===t)return this.#t-=this.#e[0].length,this.#e.shift();let r=Buffer.allocUnsafe(t),s=0;for(;s!==t;){let a=this.#e[0],{length:o}=a;if(o+s===t){r.set(this.#e.shift(),s);break}else if(o+s>t){r.set(a.subarray(0,t-s),s),this.#e[0]=a.subarray(t-s);break}else r.set(this.#e.shift(),s),s+=a.length}return this.#t-=t,r}parseCloseBody(t,r){let s;if(r.length>=2&&(s=r.readUInt16BE(0)),t)return PDn(s)?{code:s}:null;let a=r.subarray(2);if(a[0]===239&&a[1]===187&&a[2]===191&&(a=a.subarray(3)),s!==void 0&&!PDn(s))return null;try{a=new TextDecoder("utf-8",{fatal:!0}).decode(a)}catch{return null}return{code:s,reason:a}}get closingInfo(){return this.#n.closeInfo}};QDn.exports={ByteParser:q$t}});var qDn=z((S8c,zDn)=>{"use strict";var{webidl:gI}=SF(),{DOMException:Aie}=nie(),{URLSerializer:NCo}=LH(),{getGlobalOrigin:RCo}=h1e(),{staticPropertyDescriptors:die,states:t2e,opcodes:nPe,emptyBuffer:DCo}=$1e(),{kWebSocketURL:HDn,kReadyState:Xj,kController:xCo,kBinaryType:xut,kResponse:kut,kSentClose:kCo,kByteParser:GCo}=tPe(),{isEstablished:XDn,isClosing:JDn,isValidSubprotocol:FCo,failWebsocketConnection:ZCo,fireEvent:LCo}=Dut(),{establishWebSocketConnection:VCo}=GDn(),{WebsocketFrameSend:iPe}=z$t(),{ByteParser:WCo}=YDn(),{kEnumerableProperty:UO,isBlobLike:KDn}=Ih(),{getGlobalDispatcher:PCo}=O1e(),{types:jDn}=Dt("util"),UDn=!1,ZW=class e extends EventTarget{#e={open:null,error:null,close:null,message:null};#t=0;#r="";#n="";constructor(t,r=[]){super(),gI.argumentLengthCheck(arguments,1,{header:"WebSocket constructor"}),UDn||(UDn=!0,process.emitWarning("WebSockets are experimental, expect them to change at any time.",{code:"UNDICI-WS"}));let s=gI.converters["DOMString or sequence or WebSocketInit"](r);t=gI.converters.USVString(t),r=s.protocols;let a=RCo(),o;try{o=new URL(t,a)}catch(g){throw new Aie(g,"SyntaxError")}if(o.protocol==="http:"?o.protocol="ws:":o.protocol==="https:"&&(o.protocol="wss:"),o.protocol!=="ws:"&&o.protocol!=="wss:")throw new Aie(`Expected a ws: or wss: protocol, got ${o.protocol}`,"SyntaxError");if(o.hash||o.href.endsWith("#"))throw new Aie("Got fragment","SyntaxError");if(typeof r=="string"&&(r=[r]),r.length!==new Set(r.map(g=>g.toLowerCase())).size)throw new Aie("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(r.length>0&&!r.every(g=>FCo(g)))throw new Aie("Invalid Sec-WebSocket-Protocol value","SyntaxError");this[HDn]=new URL(o.href),this[xCo]=VCo(o,r,this,g=>this.#i(g),s),this[Xj]=e.CONNECTING,this[xut]="blob"}close(t=void 0,r=void 0){if(gI.brandCheck(this,e),t!==void 0&&(t=gI.converters["unsigned short"](t,{clamp:!0})),r!==void 0&&(r=gI.converters.USVString(r)),t!==void 0&&t!==1e3&&(t<3e3||t>4999))throw new Aie("invalid code","InvalidAccessError");let s=0;if(r!==void 0&&(s=Buffer.byteLength(r),s>123))throw new Aie(`Reason must be less than 123 bytes; received ${s}`,"SyntaxError");if(!(this[Xj]===e.CLOSING||this[Xj]===e.CLOSED))if(!XDn(this))ZCo(this,"Connection was closed before it was established."),this[Xj]=e.CLOSING;else if(JDn(this))this[Xj]=e.CLOSING;else{let a=new iPe;t!==void 0&&r===void 0?(a.frameData=Buffer.allocUnsafe(2),a.frameData.writeUInt16BE(t,0)):t!==void 0&&r!==void 0?(a.frameData=Buffer.allocUnsafe(2+s),a.frameData.writeUInt16BE(t,0),a.frameData.write(r,2,"utf-8")):a.frameData=DCo,this[kut].socket.write(a.createFrame(nPe.CLOSE),g=>{g||(this[kCo]=!0)}),this[Xj]=t2e.CLOSING}}send(t){if(gI.brandCheck(this,e),gI.argumentLengthCheck(arguments,1,{header:"WebSocket.send"}),t=gI.converters.WebSocketSendData(t),this[Xj]===e.CONNECTING)throw new Aie("Sent before connected.","InvalidStateError");if(!XDn(this)||JDn(this))return;let r=this[kut].socket;if(typeof t=="string"){let s=Buffer.from(t),o=new iPe(s).createFrame(nPe.TEXT);this.#t+=s.byteLength,r.write(o,()=>{this.#t-=s.byteLength})}else if(jDn.isArrayBuffer(t)){let s=Buffer.from(t),o=new iPe(s).createFrame(nPe.BINARY);this.#t+=s.byteLength,r.write(o,()=>{this.#t-=s.byteLength})}else if(ArrayBuffer.isView(t)){let s=Buffer.from(t,t.byteOffset,t.byteLength),o=new iPe(s).createFrame(nPe.BINARY);this.#t+=s.byteLength,r.write(o,()=>{this.#t-=s.byteLength})}else if(KDn(t)){let s=new iPe;t.arrayBuffer().then(a=>{let o=Buffer.from(a);s.frameData=o;let g=s.createFrame(nPe.BINARY);this.#t+=o.byteLength,r.write(g,()=>{this.#t-=o.byteLength})})}}get readyState(){return gI.brandCheck(this,e),this[Xj]}get bufferedAmount(){return gI.brandCheck(this,e),this.#t}get url(){return gI.brandCheck(this,e),NCo(this[HDn])}get extensions(){return gI.brandCheck(this,e),this.#n}get protocol(){return gI.brandCheck(this,e),this.#r}get onopen(){return gI.brandCheck(this,e),this.#e.open}set onopen(t){gI.brandCheck(this,e),this.#e.open&&this.removeEventListener("open",this.#e.open),typeof t=="function"?(this.#e.open=t,this.addEventListener("open",t)):this.#e.open=null}get onerror(){return gI.brandCheck(this,e),this.#e.error}set onerror(t){gI.brandCheck(this,e),this.#e.error&&this.removeEventListener("error",this.#e.error),typeof t=="function"?(this.#e.error=t,this.addEventListener("error",t)):this.#e.error=null}get onclose(){return gI.brandCheck(this,e),this.#e.close}set onclose(t){gI.brandCheck(this,e),this.#e.close&&this.removeEventListener("close",this.#e.close),typeof t=="function"?(this.#e.close=t,this.addEventListener("close",t)):this.#e.close=null}get onmessage(){return gI.brandCheck(this,e),this.#e.message}set onmessage(t){gI.brandCheck(this,e),this.#e.message&&this.removeEventListener("message",this.#e.message),typeof t=="function"?(this.#e.message=t,this.addEventListener("message",t)):this.#e.message=null}get binaryType(){return gI.brandCheck(this,e),this[xut]}set binaryType(t){gI.brandCheck(this,e),t!=="blob"&&t!=="arraybuffer"?this[xut]="blob":this[xut]=t}#i(t){this[kut]=t;let r=new WCo(this);r.on("drain",function(){this.ws[kut].socket.resume()}),t.socket.ws=this,this[GCo]=r,this[Xj]=t2e.OPEN;let s=t.headersList.get("sec-websocket-extensions");s!==null&&(this.#n=s);let a=t.headersList.get("sec-websocket-protocol");a!==null&&(this.#r=a),LCo("open",this)}};ZW.CONNECTING=ZW.prototype.CONNECTING=t2e.CONNECTING;ZW.OPEN=ZW.prototype.OPEN=t2e.OPEN;ZW.CLOSING=ZW.prototype.CLOSING=t2e.CLOSING;ZW.CLOSED=ZW.prototype.CLOSED=t2e.CLOSED;Object.defineProperties(ZW.prototype,{CONNECTING:die,OPEN:die,CLOSING:die,CLOSED:die,url:UO,readyState:UO,bufferedAmount:UO,onopen:UO,onerror:UO,onclose:UO,close:UO,onmessage:UO,binaryType:UO,send:UO,extensions:UO,protocol:UO,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(ZW,{CONNECTING:die,OPEN:die,CLOSING:die,CLOSED:die});gI.converters["sequence"]=gI.sequenceConverter(gI.converters.DOMString);gI.converters["DOMString or sequence"]=function(e){return gI.util.Type(e)==="Object"&&Symbol.iterator in e?gI.converters["sequence"](e):gI.converters.DOMString(e)};gI.converters.WebSocketInit=gI.dictionaryConverter([{key:"protocols",converter:gI.converters["DOMString or sequence"],get defaultValue(){return[]}},{key:"dispatcher",converter:e=>e,get defaultValue(){return PCo()}},{key:"headers",converter:gI.nullableConverter(gI.converters.HeadersInit)}]);gI.converters["DOMString or sequence or WebSocketInit"]=function(e){return gI.util.Type(e)==="Object"&&!(Symbol.iterator in e)?gI.converters.WebSocketInit(e):{protocols:gI.converters["DOMString or sequence"](e)}};gI.converters.WebSocketSendData=function(e){if(gI.util.Type(e)==="Object"){if(KDn(e))return gI.converters.Blob(e,{strict:!1});if(ArrayBuffer.isView(e)||jDn.isAnyArrayBuffer(e))return gI.converters.BufferSource(e)}return gI.converters.USVString(e)};zDn.exports={WebSocket:ZW}});var rxn=z((w8c,oC)=>{"use strict";var OCo=L3e(),$Dn=plt(),exn=_b(),MCo=x1e(),QCo=dTn(),YCo=O3e(),vde=Ih(),{InvalidArgumentError:Gut}=exn,r2e=iNn(),HCo=N3e(),XCo=c$t(),JCo=PNn(),UCo=g$t(),KCo=jqt(),jCo=XNn(),zCo=zNn(),{getGlobalDispatcher:txn,setGlobalDispatcher:qCo}=O1e(),$Co=nRn(),emo=aqt(),tmo=mlt(),$$t;try{Dt("crypto"),$$t=!0}catch{$$t=!1}Object.assign($Dn.prototype,r2e);oC.exports.Dispatcher=$Dn;oC.exports.Client=OCo;oC.exports.Pool=MCo;oC.exports.BalancedPool=QCo;oC.exports.Agent=YCo;oC.exports.ProxyAgent=jCo;oC.exports.RetryHandler=zCo;oC.exports.DecoratorHandler=$Co;oC.exports.RedirectHandler=emo;oC.exports.createRedirectInterceptor=tmo;oC.exports.buildConnector=HCo;oC.exports.errors=exn;function sPe(e){return(t,r,s)=>{if(typeof r=="function"&&(s=r,r=null),!t||typeof t!="string"&&typeof t!="object"&&!(t instanceof URL))throw new Gut("invalid url");if(r!=null&&typeof r!="object")throw new Gut("invalid opts");if(r&&r.path!=null){if(typeof r.path!="string")throw new Gut("invalid opts.path");let g=r.path;r.path.startsWith("/")||(g=`/${g}`),t=new URL(vde.parseOrigin(t).origin+g)}else r||(r=typeof t=="object"?t:{}),t=vde.parseURL(t);let{agent:a,dispatcher:o=txn()}=r;if(a)throw new Gut("unsupported opts.agent. Did you mean opts.client?");return e.call(o,{...r,origin:t.origin,path:t.search?`${t.pathname}${t.search}`:t.pathname,method:r.method||(r.body?"PUT":"GET")},s)}}oC.exports.setGlobalDispatcher=qCo;oC.exports.getGlobalDispatcher=txn;if(vde.nodeMajor>16||vde.nodeMajor===16&&vde.nodeMinor>=8){let e=null;oC.exports.fetch=async function(g){e||(e=dut().fetch);try{return await e(...arguments)}catch(p){throw typeof p=="object"&&Error.captureStackTrace(p,this),p}},oC.exports.Headers=_de().Headers,oC.exports.Response=tut().Response,oC.exports.Request=j3e().Request,oC.exports.FormData=glt().FormData,oC.exports.File=llt().File,oC.exports.FileReader=$Rn().FileReader;let{setGlobalOrigin:t,getGlobalOrigin:r}=h1e();oC.exports.setGlobalOrigin=t,oC.exports.getGlobalOrigin=r;let{CacheStorage:s}=gDn(),{kConstruct:a}=Cut();oC.exports.caches=new s(a)}if(vde.nodeMajor>=16){let{deleteCookie:e,getCookies:t,getSetCookies:r,setCookie:s}=bDn();oC.exports.deleteCookie=e,oC.exports.getCookies=t,oC.exports.getSetCookies=r,oC.exports.setCookie=s;let{parseMIMEType:a,serializeAMimeType:o}=LH();oC.exports.parseMIMEType=a,oC.exports.serializeAMimeType=o}if(vde.nodeMajor>=18&&$$t){let{WebSocket:e}=qDn();oC.exports.WebSocket=e}oC.exports.request=sPe(r2e.request);oC.exports.stream=sPe(r2e.stream);oC.exports.pipeline=sPe(r2e.pipeline);oC.exports.connect=sPe(r2e.connect);oC.exports.upgrade=sPe(r2e.upgrade);oC.exports.MockClient=XCo;oC.exports.MockPool=UCo;oC.exports.MockAgent=JCo;oC.exports.mockErrors=KCo});var ixn=z(lE=>{"use strict";var rmo=lE&&lE.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),nmo=lE&&lE.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Wut=lE&&lE.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&rmo(t,e,r);return nmo(t,e),t},iS=lE&&lE.__awaiter||function(e,t,r,s){function a(o){return o instanceof r?o:new r(function(g){g(o)})}return new(r||(r=Promise))(function(o,g){function p(y){try{m(s.next(y))}catch(B){g(B)}}function f(y){try{m(s.throw(y))}catch(B){g(B)}}function m(y){y.done?o(y.value):a(y.value).then(p,f)}m((s=s.apply(e,t||[])).next())})};Object.defineProperty(lE,"__esModule",{value:!0});lE.HttpClient=lE.isHttps=lE.HttpClientResponse=lE.HttpClientError=lE.getProxyUrl=lE.MediaTypes=lE.Headers=lE.HttpCodes=void 0;var eer=Wut(Dt("http")),nxn=Wut(Dt("https")),ter=Wut(hvn()),Fut=Wut(aXt()),imo=rxn(),KO;(function(e){e[e.OK=200]="OK",e[e.MultipleChoices=300]="MultipleChoices",e[e.MovedPermanently=301]="MovedPermanently",e[e.ResourceMoved=302]="ResourceMoved",e[e.SeeOther=303]="SeeOther",e[e.NotModified=304]="NotModified",e[e.UseProxy=305]="UseProxy",e[e.SwitchProxy=306]="SwitchProxy",e[e.TemporaryRedirect=307]="TemporaryRedirect",e[e.PermanentRedirect=308]="PermanentRedirect",e[e.BadRequest=400]="BadRequest",e[e.Unauthorized=401]="Unauthorized",e[e.PaymentRequired=402]="PaymentRequired",e[e.Forbidden=403]="Forbidden",e[e.NotFound=404]="NotFound",e[e.MethodNotAllowed=405]="MethodNotAllowed",e[e.NotAcceptable=406]="NotAcceptable",e[e.ProxyAuthenticationRequired=407]="ProxyAuthenticationRequired",e[e.RequestTimeout=408]="RequestTimeout",e[e.Conflict=409]="Conflict",e[e.Gone=410]="Gone",e[e.TooManyRequests=429]="TooManyRequests",e[e.InternalServerError=500]="InternalServerError",e[e.NotImplemented=501]="NotImplemented",e[e.BadGateway=502]="BadGateway",e[e.ServiceUnavailable=503]="ServiceUnavailable",e[e.GatewayTimeout=504]="GatewayTimeout"})(KO||(lE.HttpCodes=KO={}));var Bk;(function(e){e.Accept="accept",e.ContentType="content-type"})(Bk||(lE.Headers=Bk={}));var Jj;(function(e){e.ApplicationJson="application/json"})(Jj||(lE.MediaTypes=Jj={}));function smo(e){let t=ter.getProxyUrl(new URL(e));return t?t.href:""}lE.getProxyUrl=smo;var omo=[KO.MovedPermanently,KO.ResourceMoved,KO.SeeOther,KO.TemporaryRedirect,KO.PermanentRedirect],amo=[KO.BadGateway,KO.ServiceUnavailable,KO.GatewayTimeout],cmo=["OPTIONS","GET","DELETE","HEAD"],lmo=10,umo=5,Lut=class e extends Error{constructor(t,r){super(t),this.name="HttpClientError",this.statusCode=r,Object.setPrototypeOf(this,e.prototype)}};lE.HttpClientError=Lut;var Vut=class{constructor(t){this.message=t}readBody(){return iS(this,void 0,void 0,function*(){return new Promise(t=>iS(this,void 0,void 0,function*(){let r=Buffer.alloc(0);this.message.on("data",s=>{r=Buffer.concat([r,s])}),this.message.on("end",()=>{t(r.toString())})}))})}readBodyBuffer(){return iS(this,void 0,void 0,function*(){return new Promise(t=>iS(this,void 0,void 0,function*(){let r=[];this.message.on("data",s=>{r.push(s)}),this.message.on("end",()=>{t(Buffer.concat(r))})}))})}};lE.HttpClientResponse=Vut;function gmo(e){return new URL(e).protocol==="https:"}lE.isHttps=gmo;var rer=class{constructor(t,r,s){this._ignoreSslError=!1,this._allowRedirects=!0,this._allowRedirectDowngrade=!1,this._maxRedirects=50,this._allowRetries=!1,this._maxRetries=1,this._keepAlive=!1,this._disposed=!1,this.userAgent=t,this.handlers=r||[],this.requestOptions=s,s&&(s.ignoreSslError!=null&&(this._ignoreSslError=s.ignoreSslError),this._socketTimeout=s.socketTimeout,s.allowRedirects!=null&&(this._allowRedirects=s.allowRedirects),s.allowRedirectDowngrade!=null&&(this._allowRedirectDowngrade=s.allowRedirectDowngrade),s.maxRedirects!=null&&(this._maxRedirects=Math.max(s.maxRedirects,0)),s.keepAlive!=null&&(this._keepAlive=s.keepAlive),s.allowRetries!=null&&(this._allowRetries=s.allowRetries),s.maxRetries!=null&&(this._maxRetries=s.maxRetries))}options(t,r){return iS(this,void 0,void 0,function*(){return this.request("OPTIONS",t,null,r||{})})}get(t,r){return iS(this,void 0,void 0,function*(){return this.request("GET",t,null,r||{})})}del(t,r){return iS(this,void 0,void 0,function*(){return this.request("DELETE",t,null,r||{})})}post(t,r,s){return iS(this,void 0,void 0,function*(){return this.request("POST",t,r,s||{})})}patch(t,r,s){return iS(this,void 0,void 0,function*(){return this.request("PATCH",t,r,s||{})})}put(t,r,s){return iS(this,void 0,void 0,function*(){return this.request("PUT",t,r,s||{})})}head(t,r){return iS(this,void 0,void 0,function*(){return this.request("HEAD",t,null,r||{})})}sendStream(t,r,s,a){return iS(this,void 0,void 0,function*(){return this.request(t,r,s,a)})}getJson(t,r={}){return iS(this,void 0,void 0,function*(){r[Bk.Accept]=this._getExistingOrDefaultHeader(r,Bk.Accept,Jj.ApplicationJson);let s=yield this.get(t,r);return this._processResponse(s,this.requestOptions)})}postJson(t,r,s={}){return iS(this,void 0,void 0,function*(){let a=JSON.stringify(r,null,2);s[Bk.Accept]=this._getExistingOrDefaultHeader(s,Bk.Accept,Jj.ApplicationJson),s[Bk.ContentType]=this._getExistingOrDefaultHeader(s,Bk.ContentType,Jj.ApplicationJson);let o=yield this.post(t,a,s);return this._processResponse(o,this.requestOptions)})}putJson(t,r,s={}){return iS(this,void 0,void 0,function*(){let a=JSON.stringify(r,null,2);s[Bk.Accept]=this._getExistingOrDefaultHeader(s,Bk.Accept,Jj.ApplicationJson),s[Bk.ContentType]=this._getExistingOrDefaultHeader(s,Bk.ContentType,Jj.ApplicationJson);let o=yield this.put(t,a,s);return this._processResponse(o,this.requestOptions)})}patchJson(t,r,s={}){return iS(this,void 0,void 0,function*(){let a=JSON.stringify(r,null,2);s[Bk.Accept]=this._getExistingOrDefaultHeader(s,Bk.Accept,Jj.ApplicationJson),s[Bk.ContentType]=this._getExistingOrDefaultHeader(s,Bk.ContentType,Jj.ApplicationJson);let o=yield this.patch(t,a,s);return this._processResponse(o,this.requestOptions)})}request(t,r,s,a){return iS(this,void 0,void 0,function*(){if(this._disposed)throw new Error("Client has already been disposed.");let o=new URL(r),g=this._prepareRequest(t,o,a),p=this._allowRetries&&cmo.includes(t)?this._maxRetries+1:1,f=0,m;do{if(m=yield this.requestRaw(g,s),m&&m.message&&m.message.statusCode===KO.Unauthorized){let B;for(let v of this.handlers)if(v.canHandleAuthentication(m)){B=v;break}return B?B.handleAuthentication(this,g,s):m}let y=this._maxRedirects;for(;m.message.statusCode&&omo.includes(m.message.statusCode)&&this._allowRedirects&&y>0;){let B=m.message.headers.location;if(!B)break;let v=new URL(B);if(o.protocol==="https:"&&o.protocol!==v.protocol&&!this._allowRedirectDowngrade)throw new Error("Redirect from HTTPS to HTTP protocol. This downgrade is not allowed for security reasons. If you want to allow this behavior, set the allowRedirectDowngrade option to true.");if(yield m.readBody(),v.hostname!==o.hostname)for(let G in a)G.toLowerCase()==="authorization"&&delete a[G];g=this._prepareRequest(t,v,a),m=yield this.requestRaw(g,s),y--}if(!m.message.statusCode||!amo.includes(m.message.statusCode))return m;f+=1,f{function o(g,p){g?a(g):p?s(p):a(new Error("Unknown error"))}this.requestRawWithCallback(t,r,o)})})}requestRawWithCallback(t,r,s){typeof r=="string"&&(t.options.headers||(t.options.headers={}),t.options.headers["Content-Length"]=Buffer.byteLength(r,"utf8"));let a=!1;function o(f,m){a||(a=!0,s(f,m))}let g=t.httpModule.request(t.options,f=>{let m=new Vut(f);o(void 0,m)}),p;g.on("socket",f=>{p=f}),g.setTimeout(this._socketTimeout||3*6e4,()=>{p&&p.end(),o(new Error(`Request timeout: ${t.options.path}`))}),g.on("error",function(f){o(f)}),r&&typeof r=="string"&&g.write(r,"utf8"),r&&typeof r!="string"?(r.on("close",function(){g.end()}),r.pipe(g)):g.end()}getAgent(t){let r=new URL(t);return this._getAgent(r)}getAgentDispatcher(t){let r=new URL(t),s=ter.getProxyUrl(r);if(s&&s.hostname)return this._getProxyAgentDispatcher(r,s)}_prepareRequest(t,r,s){let a={};a.parsedUrl=r;let o=a.parsedUrl.protocol==="https:";a.httpModule=o?nxn:eer;let g=o?443:80;if(a.options={},a.options.host=a.parsedUrl.hostname,a.options.port=a.parsedUrl.port?parseInt(a.parsedUrl.port):g,a.options.path=(a.parsedUrl.pathname||"")+(a.parsedUrl.search||""),a.options.method=t,a.options.headers=this._mergeHeaders(s),this.userAgent!=null&&(a.options.headers["user-agent"]=this.userAgent),a.options.agent=this._getAgent(a.parsedUrl),this.handlers)for(let p of this.handlers)p.prepareRequest(a.options);return a}_mergeHeaders(t){return this.requestOptions&&this.requestOptions.headers?Object.assign({},Zut(this.requestOptions.headers),Zut(t||{})):Zut(t||{})}_getExistingOrDefaultHeader(t,r,s){let a;return this.requestOptions&&this.requestOptions.headers&&(a=Zut(this.requestOptions.headers)[r]),t[r]||a||s}_getAgent(t){let r,s=ter.getProxyUrl(t),a=s&&s.hostname;if(this._keepAlive&&a&&(r=this._proxyAgent),a||(r=this._agent),r)return r;let o=t.protocol==="https:",g=100;if(this.requestOptions&&(g=this.requestOptions.maxSockets||eer.globalAgent.maxSockets),s&&s.hostname){let p={maxSockets:g,keepAlive:this._keepAlive,proxy:Object.assign(Object.assign({},(s.username||s.password)&&{proxyAuth:`${s.username}:${s.password}`}),{host:s.hostname,port:s.port})},f,m=s.protocol==="https:";o?f=m?Fut.httpsOverHttps:Fut.httpsOverHttp:f=m?Fut.httpOverHttps:Fut.httpOverHttp,r=f(p),this._proxyAgent=r}if(!r){let p={keepAlive:this._keepAlive,maxSockets:g};r=o?new nxn.Agent(p):new eer.Agent(p),this._agent=r}return o&&this._ignoreSslError&&(r.options=Object.assign(r.options||{},{rejectUnauthorized:!1})),r}_getProxyAgentDispatcher(t,r){let s;if(this._keepAlive&&(s=this._proxyAgentDispatcher),s)return s;let a=t.protocol==="https:";return s=new imo.ProxyAgent(Object.assign({uri:r.href,pipelining:this._keepAlive?1:0},(r.username||r.password)&&{token:`Basic ${Buffer.from(`${r.username}:${r.password}`).toString("base64")}`})),this._proxyAgentDispatcher=s,a&&this._ignoreSslError&&(s.options=Object.assign(s.options.requestTls||{},{rejectUnauthorized:!1})),s}_performExponentialBackoff(t){return iS(this,void 0,void 0,function*(){t=Math.min(lmo,t);let r=umo*Math.pow(2,t);return new Promise(s=>setTimeout(()=>s(),r))})}_processResponse(t,r){return iS(this,void 0,void 0,function*(){return new Promise((s,a)=>iS(this,void 0,void 0,function*(){let o=t.message.statusCode||0,g={statusCode:o,result:null,headers:{}};o===KO.NotFound&&s(g);function p(y,B){if(typeof B=="string"){let v=new Date(B);if(!isNaN(v.valueOf()))return v}return B}let f,m;try{m=yield t.readBody(),m&&m.length>0&&(r&&r.deserializeDates?f=JSON.parse(m,p):f=JSON.parse(m),g.result=f),g.headers=t.message.headers}catch{}if(o>299){let y;f&&f.message?y=f.message:m&&m.length>0?y=m:y=`Failed request: (${o})`;let B=new Lut(y,o);B.result=g.result,a(B)}else s(g)}))})}};lE.HttpClient=rer;var Zut=e=>Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{})});var j1=z((N8c,sxn)=>{sxn.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kBody:Symbol("abstracted request body"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kResume:Symbol("resume"),kOnError:Symbol("on error"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kInterceptors:Symbol("dispatch interceptors"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable"),kListeners:Symbol("listeners"),kHTTPContext:Symbol("http context"),kMaxConcurrentStreams:Symbol("max concurrent streams"),kNoProxyAgent:Symbol("no proxy agent"),kHttpProxyAgent:Symbol("http proxy agent"),kHttpsProxyAgent:Symbol("https proxy agent")}});var B0=z((R8c,oxn)=>{"use strict";var oB=class extends Error{constructor(t){super(t),this.name="UndiciError",this.code="UND_ERR"}},ner=class extends oB{constructor(t){super(t),this.name="ConnectTimeoutError",this.message=t||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}},ier=class extends oB{constructor(t){super(t),this.name="HeadersTimeoutError",this.message=t||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}},ser=class extends oB{constructor(t){super(t),this.name="HeadersOverflowError",this.message=t||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}},oer=class extends oB{constructor(t){super(t),this.name="BodyTimeoutError",this.message=t||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT"}},aer=class extends oB{constructor(t,r,s,a){super(t),this.name="ResponseStatusCodeError",this.message=t||"Response Status Code Error",this.code="UND_ERR_RESPONSE_STATUS_CODE",this.body=a,this.status=r,this.statusCode=r,this.headers=s}},cer=class extends oB{constructor(t){super(t),this.name="InvalidArgumentError",this.message=t||"Invalid Argument Error",this.code="UND_ERR_INVALID_ARG"}},ler=class extends oB{constructor(t){super(t),this.name="InvalidReturnValueError",this.message=t||"Invalid Return Value Error",this.code="UND_ERR_INVALID_RETURN_VALUE"}},Put=class extends oB{constructor(t){super(t),this.name="AbortError",this.message=t||"The operation was aborted"}},uer=class extends Put{constructor(t){super(t),this.name="AbortError",this.message=t||"Request aborted",this.code="UND_ERR_ABORTED"}},ger=class extends oB{constructor(t){super(t),this.name="InformationalError",this.message=t||"Request information",this.code="UND_ERR_INFO"}},Aer=class extends oB{constructor(t){super(t),this.name="RequestContentLengthMismatchError",this.message=t||"Request body length does not match content-length header",this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}},der=class extends oB{constructor(t){super(t),this.name="ResponseContentLengthMismatchError",this.message=t||"Response body length does not match content-length header",this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}},per=class extends oB{constructor(t){super(t),this.name="ClientDestroyedError",this.message=t||"The client is destroyed",this.code="UND_ERR_DESTROYED"}},fer=class extends oB{constructor(t){super(t),this.name="ClientClosedError",this.message=t||"The client is closed",this.code="UND_ERR_CLOSED"}},Ier=class extends oB{constructor(t,r){super(t),this.name="SocketError",this.message=t||"Socket error",this.code="UND_ERR_SOCKET",this.socket=r}},Cer=class extends oB{constructor(t){super(t),this.name="NotSupportedError",this.message=t||"Not supported error",this.code="UND_ERR_NOT_SUPPORTED"}},mer=class extends oB{constructor(t){super(t),this.name="MissingUpstreamError",this.message=t||"No upstream has been added to the BalancedPool",this.code="UND_ERR_BPL_MISSING_UPSTREAM"}},her=class extends Error{constructor(t,r,s){super(t),this.name="HTTPParserError",this.code=r?`HPE_${r}`:void 0,this.data=s?s.toString():void 0}},_er=class extends oB{constructor(t){super(t),this.name="ResponseExceededMaxSizeError",this.message=t||"Response content exceeded max size",this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}},yer=class extends oB{constructor(t,r,{headers:s,data:a}){super(t),this.name="RequestRetryError",this.message=t||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=r,this.data=a,this.headers=s}},ber=class extends oB{constructor(t,r,{headers:s,data:a}){super(t),this.name="ResponseError",this.message=t||"Response error",this.code="UND_ERR_RESPONSE",this.statusCode=r,this.data=a,this.headers=s}},Eer=class extends oB{constructor(t,r,s){super(r,{cause:t,...s??{}}),this.name="SecureProxyConnectionError",this.message=r||"Secure Proxy Connection failed",this.code="UND_ERR_PRX_TLS",this.cause=t}};oxn.exports={AbortError:Put,HTTPParserError:her,UndiciError:oB,HeadersTimeoutError:ier,HeadersOverflowError:ser,BodyTimeoutError:oer,RequestContentLengthMismatchError:Aer,ConnectTimeoutError:ner,ResponseStatusCodeError:aer,InvalidArgumentError:cer,InvalidReturnValueError:ler,RequestAbortedError:uer,ClientDestroyedError:per,ClientClosedError:fer,InformationalError:ger,SocketError:Ier,NotSupportedError:Cer,ResponseContentLengthMismatchError:der,BalancedPoolMissingUpstreamError:mer,ResponseExceededMaxSizeError:_er,RequestRetryError:yer,ResponseError:ber,SecureProxyConnectionError:Eer}});var Mut=z((D8c,axn)=>{"use strict";var Out={},Ber=["Accept","Accept-Encoding","Accept-Language","Accept-Ranges","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Age","Allow","Alt-Svc","Alt-Used","Authorization","Cache-Control","Clear-Site-Data","Connection","Content-Disposition","Content-Encoding","Content-Language","Content-Length","Content-Location","Content-Range","Content-Security-Policy","Content-Security-Policy-Report-Only","Content-Type","Cookie","Cross-Origin-Embedder-Policy","Cross-Origin-Opener-Policy","Cross-Origin-Resource-Policy","Date","Device-Memory","Downlink","ECT","ETag","Expect","Expect-CT","Expires","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Keep-Alive","Last-Modified","Link","Location","Max-Forwards","Origin","Permissions-Policy","Pragma","Proxy-Authenticate","Proxy-Authorization","RTT","Range","Referer","Referrer-Policy","Refresh","Retry-After","Sec-WebSocket-Accept","Sec-WebSocket-Extensions","Sec-WebSocket-Key","Sec-WebSocket-Protocol","Sec-WebSocket-Version","Server","Server-Timing","Service-Worker-Allowed","Service-Worker-Navigation-Preload","Set-Cookie","SourceMap","Strict-Transport-Security","Supports-Loading-Mode","TE","Timing-Allow-Origin","Trailer","Transfer-Encoding","Upgrade","Upgrade-Insecure-Requests","User-Agent","Vary","Via","WWW-Authenticate","X-Content-Type-Options","X-DNS-Prefetch-Control","X-Frame-Options","X-Permitted-Cross-Domain-Policies","X-Powered-By","X-Requested-With","X-XSS-Protection"];for(let e=0;e{"use strict";var{wellknownHeaderNames:cxn,headerNameLowerCasedRecord:Amo}=Mut(),ver=class e{value=null;left=null;middle=null;right=null;code;constructor(t,r,s){if(s===void 0||s>=t.length)throw new TypeError("Unreachable");if((this.code=t.charCodeAt(s))>127)throw new TypeError("key must be ascii string");t.length!==++s?this.middle=new e(t,r,s):this.value=r}add(t,r){let s=t.length;if(s===0)throw new TypeError("Unreachable");let a=0,o=this;for(;;){let g=t.charCodeAt(a);if(g>127)throw new TypeError("key must be ascii string");if(o.code===g)if(s===++a){o.value=r;break}else if(o.middle!==null)o=o.middle;else{o.middle=new e(t,r,a);break}else if(o.code=65&&(o|=32);a!==null;){if(o===a.code){if(r===++s)return a;a=a.middle;break}a=a.code{"use strict";var oPe=Dt("node:assert"),{kDestroyed:dxn,kBodyUsed:n2e,kListeners:Ser,kBody:Axn}=j1(),{IncomingMessage:dmo}=Dt("node:http"),Xut=Dt("node:stream"),pmo=Dt("node:net"),{Blob:fmo}=Dt("node:buffer"),Imo=Dt("node:util"),{stringify:Cmo}=Dt("node:querystring"),{EventEmitter:mmo}=Dt("node:events"),{InvalidArgumentError:AR}=B0(),{headerNameLowerCasedRecord:hmo}=Mut(),{tree:pxn}=gxn(),[_mo,ymo]=process.versions.node.split(".").map(e=>Number(e)),Hut=class{constructor(t){this[Axn]=t,this[n2e]=!1}async*[Symbol.asyncIterator](){oPe(!this[n2e],"disturbed"),this[n2e]=!0,yield*this[Axn]}};function bmo(e){return Jut(e)?(hxn(e)===0&&e.on("data",function(){oPe(!1)}),typeof e.readableDidRead!="boolean"&&(e[n2e]=!1,mmo.prototype.on.call(e,"data",function(){this[n2e]=!0})),e):e&&typeof e.pipeTo=="function"?new Hut(e):e&&typeof e!="string"&&!ArrayBuffer.isView(e)&&mxn(e)?new Hut(e):e}function Emo(){}function Jut(e){return e&&typeof e=="object"&&typeof e.pipe=="function"&&typeof e.on=="function"}function fxn(e){if(e===null)return!1;if(e instanceof fmo)return!0;if(typeof e!="object")return!1;{let t=e[Symbol.toStringTag];return(t==="Blob"||t==="File")&&("stream"in e&&typeof e.stream=="function"||"arrayBuffer"in e&&typeof e.arrayBuffer=="function")}}function Bmo(e,t){if(e.includes("?")||e.includes("#"))throw new Error('Query params cannot be passed when url already contains "?" or "#".');let r=Cmo(t);return r&&(e+="?"+r),e}function Ixn(e){let t=parseInt(e,10);return t===Number(e)&&t>=0&&t<=65535}function Yut(e){return e!=null&&e[0]==="h"&&e[1]==="t"&&e[2]==="t"&&e[3]==="p"&&(e[4]===":"||e[4]==="s"&&e[5]===":")}function Cxn(e){if(typeof e=="string"){if(e=new URL(e),!Yut(e.origin||e.protocol))throw new AR("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}if(!e||typeof e!="object")throw new AR("Invalid URL: The URL argument must be a non-null object.");if(!(e instanceof URL)){if(e.port!=null&&e.port!==""&&Ixn(e.port)===!1)throw new AR("Invalid URL: port must be a valid integer or a string representation of an integer.");if(e.path!=null&&typeof e.path!="string")throw new AR("Invalid URL path: the path must be a string or null/undefined.");if(e.pathname!=null&&typeof e.pathname!="string")throw new AR("Invalid URL pathname: the pathname must be a string or null/undefined.");if(e.hostname!=null&&typeof e.hostname!="string")throw new AR("Invalid URL hostname: the hostname must be a string or null/undefined.");if(e.origin!=null&&typeof e.origin!="string")throw new AR("Invalid URL origin: the origin must be a string or null/undefined.");if(!Yut(e.origin||e.protocol))throw new AR("Invalid URL protocol: the URL must start with `http:` or `https:`.");let t=e.port!=null?e.port:e.protocol==="https:"?443:80,r=e.origin!=null?e.origin:`${e.protocol||""}//${e.hostname||""}:${t}`,s=e.path!=null?e.path:`${e.pathname||""}${e.search||""}`;return r[r.length-1]==="/"&&(r=r.slice(0,r.length-1)),s&&s[0]!=="/"&&(s=`/${s}`),new URL(`${r}${s}`)}if(!Yut(e.origin||e.protocol))throw new AR("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}function vmo(e){if(e=Cxn(e),e.pathname!=="/"||e.search||e.hash)throw new AR("invalid url");return e}function Smo(e){if(e[0]==="["){let r=e.indexOf("]");return oPe(r!==-1),e.substring(1,r)}let t=e.indexOf(":");return t===-1?e:e.substring(0,t)}function wmo(e){if(!e)return null;oPe(typeof e=="string");let t=Smo(e);return pmo.isIP(t)?"":t}function Tmo(e){return JSON.parse(JSON.stringify(e))}function Nmo(e){return e!=null&&typeof e[Symbol.asyncIterator]=="function"}function mxn(e){return e!=null&&(typeof e[Symbol.iterator]=="function"||typeof e[Symbol.asyncIterator]=="function")}function hxn(e){if(e==null)return 0;if(Jut(e)){let t=e._readableState;return t&&t.objectMode===!1&&t.ended===!0&&Number.isFinite(t.length)?t.length:null}else{if(fxn(e))return e.size!=null?e.size:null;if(bxn(e))return e.byteLength}return null}function _xn(e){return e&&!!(e.destroyed||e[dxn]||Xut.isDestroyed?.(e))}function Rmo(e,t){e==null||!Jut(e)||_xn(e)||(typeof e.destroy=="function"?(Object.getPrototypeOf(e).constructor===dmo&&(e.socket=null),e.destroy(t)):t&&queueMicrotask(()=>{e.emit("error",t)}),e.destroyed!==!0&&(e[dxn]=!0))}var Dmo=/timeout=(\d+)/;function xmo(e){let t=e.toString().match(Dmo);return t?parseInt(t[1],10)*1e3:null}function yxn(e){return typeof e=="string"?hmo[e]??e.toLowerCase():pxn.lookup(e)??e.toString("latin1").toLowerCase()}function kmo(e){return pxn.lookup(e)??e.toString("latin1").toLowerCase()}function Gmo(e,t){t===void 0&&(t={});for(let r=0;rg.toString("utf8")):o.toString("utf8")}}return"content-length"in t&&"content-disposition"in t&&(t["content-disposition"]=Buffer.from(t["content-disposition"]).toString("latin1")),t}function Fmo(e){let t=e.length,r=new Array(t),s=!1,a=-1,o,g,p=0;for(let f=0;f{r.close(),r.byobRequest?.respond(0)});else{let o=Buffer.isBuffer(a)?a:Buffer.from(a);o.byteLength&&r.enqueue(new Uint8Array(o))}return r.desiredSize>0},async cancel(r){await t.return()},type:"bytes"})}function Mmo(e){return e&&typeof e=="object"&&typeof e.append=="function"&&typeof e.delete=="function"&&typeof e.get=="function"&&typeof e.getAll=="function"&&typeof e.has=="function"&&typeof e.set=="function"&&e[Symbol.toStringTag]==="FormData"}function Qmo(e,t){return"addEventListener"in e?(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)):(e.addListener("abort",t),()=>e.removeListener("abort",t))}var Ymo=typeof String.prototype.toWellFormed=="function",Hmo=typeof String.prototype.isWellFormed=="function";function Exn(e){return Ymo?`${e}`.toWellFormed():Imo.toUSVString(e)}function Xmo(e){return Hmo?`${e}`.isWellFormed():Exn(e)===`${e}`}function Bxn(e){switch(e){case 34:case 40:case 41:case 44:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 123:case 125:return!1;default:return e>=33&&e<=126}}function Jmo(e){if(e.length===0)return!1;for(let t=0;t{"use strict";var v0=Dt("node:diagnostics_channel"),Ner=Dt("node:util"),Uut=Ner.debuglog("undici"),Ter=Ner.debuglog("fetch"),Sde=Ner.debuglog("websocket"),Txn=!1,eho={beforeConnect:v0.channel("undici:client:beforeConnect"),connected:v0.channel("undici:client:connected"),connectError:v0.channel("undici:client:connectError"),sendHeaders:v0.channel("undici:client:sendHeaders"),create:v0.channel("undici:request:create"),bodySent:v0.channel("undici:request:bodySent"),headers:v0.channel("undici:request:headers"),trailers:v0.channel("undici:request:trailers"),error:v0.channel("undici:request:error"),open:v0.channel("undici:websocket:open"),close:v0.channel("undici:websocket:close"),socketError:v0.channel("undici:websocket:socket_error"),ping:v0.channel("undici:websocket:ping"),pong:v0.channel("undici:websocket:pong")};if(Uut.enabled||Ter.enabled){let e=Ter.enabled?Ter:Uut;v0.channel("undici:client:beforeConnect").subscribe(t=>{let{connectParams:{version:r,protocol:s,port:a,host:o}}=t;e("connecting to %s using %s%s",`${o}${a?`:${a}`:""}`,s,r)}),v0.channel("undici:client:connected").subscribe(t=>{let{connectParams:{version:r,protocol:s,port:a,host:o}}=t;e("connected to %s using %s%s",`${o}${a?`:${a}`:""}`,s,r)}),v0.channel("undici:client:connectError").subscribe(t=>{let{connectParams:{version:r,protocol:s,port:a,host:o},error:g}=t;e("connection to %s using %s%s errored - %s",`${o}${a?`:${a}`:""}`,s,r,g.message)}),v0.channel("undici:client:sendHeaders").subscribe(t=>{let{request:{method:r,path:s,origin:a}}=t;e("sending request to %s %s/%s",r,a,s)}),v0.channel("undici:request:headers").subscribe(t=>{let{request:{method:r,path:s,origin:a},response:{statusCode:o}}=t;e("received response to %s %s/%s - HTTP %d",r,a,s,o)}),v0.channel("undici:request:trailers").subscribe(t=>{let{request:{method:r,path:s,origin:a}}=t;e("trailers received from %s %s/%s",r,a,s)}),v0.channel("undici:request:error").subscribe(t=>{let{request:{method:r,path:s,origin:a},error:o}=t;e("request to %s %s/%s errored - %s",r,a,s,o.message)}),Txn=!0}if(Sde.enabled){if(!Txn){let e=Uut.enabled?Uut:Sde;v0.channel("undici:client:beforeConnect").subscribe(t=>{let{connectParams:{version:r,protocol:s,port:a,host:o}}=t;e("connecting to %s%s using %s%s",o,a?`:${a}`:"",s,r)}),v0.channel("undici:client:connected").subscribe(t=>{let{connectParams:{version:r,protocol:s,port:a,host:o}}=t;e("connected to %s%s using %s%s",o,a?`:${a}`:"",s,r)}),v0.channel("undici:client:connectError").subscribe(t=>{let{connectParams:{version:r,protocol:s,port:a,host:o},error:g}=t;e("connection to %s%s using %s%s errored - %s",o,a?`:${a}`:"",s,r,g.message)}),v0.channel("undici:client:sendHeaders").subscribe(t=>{let{request:{method:r,path:s,origin:a}}=t;e("sending request to %s %s/%s",r,a,s)})}v0.channel("undici:websocket:open").subscribe(e=>{let{address:{address:t,port:r}}=e;Sde("connection opened %s%s",t,r?`:${r}`:"")}),v0.channel("undici:websocket:close").subscribe(e=>{let{websocket:t,code:r,reason:s}=e;Sde("closed connection to %s - %s %s",t.url,r,s)}),v0.channel("undici:websocket:socket_error").subscribe(e=>{Sde("connection errored - %s",e.message)}),v0.channel("undici:websocket:ping").subscribe(e=>{Sde("ping received")}),v0.channel("undici:websocket:pong").subscribe(e=>{Sde("pong received")})}Nxn.exports={channels:eho}});var Gxn=z((F8c,kxn)=>{"use strict";var{InvalidArgumentError:aB,NotSupportedError:tho}=B0(),Uj=Dt("node:assert"),{isValidHTTPToken:xxn,isValidHeaderValue:Rxn,isStream:rho,destroy:nho,isBuffer:iho,isFormDataLike:sho,isIterable:oho,isBlobLike:aho,buildURL:cho,validateHandler:lho,getServerName:uho,normalizedMethodRecords:gho}=tm(),{channels:aU}=i2e(),{headerNameLowerCasedRecord:Dxn}=Mut(),Aho=/[^\u0021-\u00ff]/,jO=Symbol("handler"),Rer=class{constructor(t,{path:r,method:s,body:a,headers:o,query:g,idempotent:p,blocking:f,upgrade:m,headersTimeout:y,bodyTimeout:B,reset:v,throwOnError:G,expectContinue:T,servername:O},X){if(typeof r!="string")throw new aB("path must be a string");if(r[0]!=="/"&&!(r.startsWith("http://")||r.startsWith("https://"))&&s!=="CONNECT")throw new aB("path must be an absolute URL or start with a slash");if(Aho.test(r))throw new aB("invalid request path");if(typeof s!="string")throw new aB("method must be a string");if(gho[s]===void 0&&!xxn(s))throw new aB("invalid request method");if(m&&typeof m!="string")throw new aB("upgrade must be a string");if(y!=null&&(!Number.isFinite(y)||y<0))throw new aB("invalid headersTimeout");if(B!=null&&(!Number.isFinite(B)||B<0))throw new aB("invalid bodyTimeout");if(v!=null&&typeof v!="boolean")throw new aB("invalid reset");if(T!=null&&typeof T!="boolean")throw new aB("invalid expectContinue");if(this.headersTimeout=y,this.bodyTimeout=B,this.throwOnError=G===!0,this.method=s,this.abort=null,a==null)this.body=null;else if(rho(a)){this.body=a;let U=this.body._readableState;(!U||!U.autoDestroy)&&(this.endHandler=function(){nho(this)},this.body.on("end",this.endHandler)),this.errorHandler=le=>{this.abort?this.abort(le):this.error=le},this.body.on("error",this.errorHandler)}else if(iho(a))this.body=a.byteLength?a:null;else if(ArrayBuffer.isView(a))this.body=a.buffer.byteLength?Buffer.from(a.buffer,a.byteOffset,a.byteLength):null;else if(a instanceof ArrayBuffer)this.body=a.byteLength?Buffer.from(a):null;else if(typeof a=="string")this.body=a.length?Buffer.from(a):null;else if(sho(a)||oho(a)||aho(a))this.body=a;else throw new aB("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable");if(this.completed=!1,this.aborted=!1,this.upgrade=m||null,this.path=g?cho(r,g):r,this.origin=t,this.idempotent=p??(s==="HEAD"||s==="GET"),this.blocking=f??!1,this.reset=v??null,this.host=null,this.contentLength=null,this.contentType=null,this.headers=[],this.expectContinue=T??!1,Array.isArray(o)){if(o.length%2!==0)throw new aB("headers array must be even");for(let U=0;U{"use strict";var dho=Dt("node:events"),jut=class extends dho{dispatch(){throw new Error("not implemented")}close(){throw new Error("not implemented")}destroy(){throw new Error("not implemented")}compose(...t){let r=Array.isArray(t[0])?t[0]:t,s=this.dispatch.bind(this);for(let a of r)if(a!=null){if(typeof a!="function")throw new TypeError(`invalid interceptor, expected function received ${typeof a}`);if(s=a(s),s==null||typeof s!="function"||s.length!==2)throw new TypeError("invalid interceptor")}return new Der(this,s)}},Der=class extends jut{#e=null;#t=null;constructor(t,r){super(),this.#e=t,this.#t=r}dispatch(...t){this.#t(...t)}close(...t){return this.#e.close(...t)}destroy(...t){return this.#e.destroy(...t)}};Fxn.exports=jut});var c2e=z((L8c,Zxn)=>{"use strict";var pho=aPe(),{ClientDestroyedError:xer,ClientClosedError:fho,InvalidArgumentError:s2e}=B0(),{kDestroy:Iho,kClose:Cho,kClosed:cPe,kDestroyed:o2e,kDispatch:ker,kInterceptors:wde}=j1(),Kj=Symbol("onDestroyed"),a2e=Symbol("onClosed"),zut=Symbol("Intercepted Dispatch"),Ger=class extends pho{constructor(){super(),this[o2e]=!1,this[Kj]=null,this[cPe]=!1,this[a2e]=[]}get destroyed(){return this[o2e]}get closed(){return this[cPe]}get interceptors(){return this[wde]}set interceptors(t){if(t){for(let r=t.length-1;r>=0;r--)if(typeof this[wde][r]!="function")throw new s2e("interceptor must be an function")}this[wde]=t}close(t){if(t===void 0)return new Promise((s,a)=>{this.close((o,g)=>o?a(o):s(g))});if(typeof t!="function")throw new s2e("invalid callback");if(this[o2e]){queueMicrotask(()=>t(new xer,null));return}if(this[cPe]){this[a2e]?this[a2e].push(t):queueMicrotask(()=>t(null,null));return}this[cPe]=!0,this[a2e].push(t);let r=()=>{let s=this[a2e];this[a2e]=null;for(let a=0;athis.destroy()).then(()=>{queueMicrotask(r)})}destroy(t,r){if(typeof t=="function"&&(r=t,t=null),r===void 0)return new Promise((a,o)=>{this.destroy(t,(g,p)=>g?o(g):a(p))});if(typeof r!="function")throw new s2e("invalid callback");if(this[o2e]){this[Kj]?this[Kj].push(r):queueMicrotask(()=>r(null,null));return}t||(t=new xer),this[o2e]=!0,this[Kj]=this[Kj]||[],this[Kj].push(r);let s=()=>{let a=this[Kj];this[Kj]=null;for(let o=0;o{queueMicrotask(s)})}[zut](t,r){if(!this[wde]||this[wde].length===0)return this[zut]=this[ker],this[ker](t,r);let s=this[ker].bind(this);for(let a=this[wde].length-1;a>=0;a--)s=this[wde][a](s);return this[zut]=s,s(t,r)}dispatch(t,r){if(!r||typeof r!="object")throw new s2e("handler must be an object");try{if(!t||typeof t!="object")throw new s2e("opts must be an object.");if(this[o2e]||this[Kj])throw new xer;if(this[cPe])throw new fho;return this[zut](t,r)}catch(s){if(typeof r.onError!="function")throw new s2e("invalid onError method");return r.onError(s),!1}}};Zxn.exports=Ger});var Oer=z((V8c,Pxn)=>{"use strict";var l2e=0,Fer=1e3,Zer=(Fer>>1)-1,jj,Ler=Symbol("kFastTimer"),zj=[],Ver=-2,Wer=-1,Vxn=0,Lxn=1;function Per(){l2e+=Zer;let e=0,t=zj.length;for(;e=r._idleStart+r._idleTimeout&&(r._state=Wer,r._idleStart=-1,r._onTimeout(r._timerArg)),r._state===Wer?(r._state=Ver,--t!==0&&(zj[e]=zj[t])):++e}zj.length=t,zj.length!==0&&Wxn()}function Wxn(){jj?jj.refresh():(clearTimeout(jj),jj=setTimeout(Per,Zer),jj.unref&&jj.unref())}var qut=class{[Ler]=!0;_state=Ver;_idleTimeout=-1;_idleStart=-1;_onTimeout;_timerArg;constructor(t,r,s){this._onTimeout=t,this._idleTimeout=r,this._timerArg=s,this.refresh()}refresh(){this._state===Ver&&zj.push(this),(!jj||zj.length===1)&&Wxn(),this._state=Vxn}clear(){this._state=Wer,this._idleStart=-1}};Pxn.exports={setTimeout(e,t,r){return t<=Fer?setTimeout(e,t,r):new qut(e,t,r)},clearTimeout(e){e[Ler]?e.clear():clearTimeout(e)},setFastTimeout(e,t,r){return new qut(e,t,r)},clearFastTimeout(e){e.clear()},now(){return l2e},tick(e=0){l2e+=e-Fer+1,Per(),Per()},reset(){l2e=0,zj.length=0,clearTimeout(jj),jj=null},kFastTimer:Ler}});var lPe=z((O8c,Hxn)=>{"use strict";var mho=Dt("node:net"),Oxn=Dt("node:assert"),Yxn=tm(),{InvalidArgumentError:hho,ConnectTimeoutError:_ho}=B0(),$ut=Oer();function Mxn(){}var Mer,Qer;global.FinalizationRegistry&&!(process.env.NODE_V8_COVERAGE||process.env.UNDICI_NO_FG)?Qer=class{constructor(t){this._maxCachedSessions=t,this._sessionCache=new Map,this._sessionRegistry=new global.FinalizationRegistry(r=>{if(this._sessionCache.size=this._maxCachedSessions){let{value:s}=this._sessionCache.keys().next();this._sessionCache.delete(s)}this._sessionCache.set(t,r)}}};function yho({allowH2:e,maxCachedSessions:t,socketPath:r,timeout:s,session:a,...o}){if(t!=null&&(!Number.isInteger(t)||t<0))throw new hho("maxCachedSessions must be a positive integer or zero");let g={path:r,...o},p=new Qer(t??100);return s=s??1e4,e=e??!1,function({hostname:m,host:y,protocol:B,port:v,servername:G,localAddress:T,httpSocket:O},X){let U;if(B==="https:"){Mer||(Mer=Dt("node:tls")),G=G||g.servername||Yxn.getServerName(y)||null;let ae=G||m;Oxn(ae);let ge=a||p.get(ae)||null;v=v||443,U=Mer.connect({highWaterMark:16384,...g,servername:G,session:ge,localAddress:T,ALPNProtocols:e?["http/1.1","h2"]:["http/1.1"],socket:O,port:v,host:m}),U.on("session",function(fe){p.set(ae,fe)})}else Oxn(!O,"httpSocket can only be sent on TLS update"),v=v||80,U=mho.connect({highWaterMark:64*1024,...g,localAddress:T,port:v,host:m});if(g.keepAlive==null||g.keepAlive){let ae=g.keepAliveInitialDelay===void 0?6e4:g.keepAliveInitialDelay;U.setKeepAlive(!0,ae)}let le=bho(new WeakRef(U),{timeout:s,hostname:m,port:v});return U.setNoDelay(!0).once(B==="https:"?"secureConnect":"connect",function(){if(queueMicrotask(le),X){let ae=X;X=null,ae(null,this)}}).on("error",function(ae){if(queueMicrotask(le),X){let ge=X;X=null,ge(ae)}}),U}}var bho=process.platform==="win32"?(e,t)=>{if(!t.timeout)return Mxn;let r=null,s=null,a=$ut.setFastTimeout(()=>{r=setImmediate(()=>{s=setImmediate(()=>Qxn(e.deref(),t))})},t.timeout);return()=>{$ut.clearFastTimeout(a),clearImmediate(r),clearImmediate(s)}}:(e,t)=>{if(!t.timeout)return Mxn;let r=null,s=$ut.setFastTimeout(()=>{r=setImmediate(()=>{Qxn(e.deref(),t)})},t.timeout);return()=>{$ut.clearFastTimeout(s),clearImmediate(r)}};function Qxn(e,t){let r="Connect Timeout Error";Array.isArray(e.autoSelectFamilyAttemptedAddresses)?r+=` (attempted addresses: ${e.autoSelectFamilyAttemptedAddresses.join(", ")},`:r+=` (attempted address: ${t.hostname}:${t.port},`,r+=` timeout: ${t.timeout}ms)`,Yxn.destroy(e,new _ho(r))}Hxn.exports=yho});var Xxn=z(egt=>{"use strict";Object.defineProperty(egt,"__esModule",{value:!0});egt.enumToMap=void 0;function Eho(e){let t={};return Object.keys(e).forEach(r=>{let s=e[r];typeof s=="number"&&(t[r]=s)}),t}egt.enumToMap=Eho});var Jxn=z(Au=>{"use strict";Object.defineProperty(Au,"__esModule",{value:!0});Au.SPECIAL_HEADERS=Au.HEADER_STATE=Au.MINOR=Au.MAJOR=Au.CONNECTION_TOKEN_CHARS=Au.HEADER_CHARS=Au.TOKEN=Au.STRICT_TOKEN=Au.HEX=Au.URL_CHAR=Au.STRICT_URL_CHAR=Au.USERINFO_CHARS=Au.MARK=Au.ALPHANUM=Au.NUM=Au.HEX_MAP=Au.NUM_MAP=Au.ALPHA=Au.FINISH=Au.H_METHOD_MAP=Au.METHOD_MAP=Au.METHODS_RTSP=Au.METHODS_ICE=Au.METHODS_HTTP=Au.METHODS=Au.LENIENT_FLAGS=Au.FLAGS=Au.TYPE=Au.ERROR=void 0;var Bho=Xxn(),vho;(function(e){e[e.OK=0]="OK",e[e.INTERNAL=1]="INTERNAL",e[e.STRICT=2]="STRICT",e[e.LF_EXPECTED=3]="LF_EXPECTED",e[e.UNEXPECTED_CONTENT_LENGTH=4]="UNEXPECTED_CONTENT_LENGTH",e[e.CLOSED_CONNECTION=5]="CLOSED_CONNECTION",e[e.INVALID_METHOD=6]="INVALID_METHOD",e[e.INVALID_URL=7]="INVALID_URL",e[e.INVALID_CONSTANT=8]="INVALID_CONSTANT",e[e.INVALID_VERSION=9]="INVALID_VERSION",e[e.INVALID_HEADER_TOKEN=10]="INVALID_HEADER_TOKEN",e[e.INVALID_CONTENT_LENGTH=11]="INVALID_CONTENT_LENGTH",e[e.INVALID_CHUNK_SIZE=12]="INVALID_CHUNK_SIZE",e[e.INVALID_STATUS=13]="INVALID_STATUS",e[e.INVALID_EOF_STATE=14]="INVALID_EOF_STATE",e[e.INVALID_TRANSFER_ENCODING=15]="INVALID_TRANSFER_ENCODING",e[e.CB_MESSAGE_BEGIN=16]="CB_MESSAGE_BEGIN",e[e.CB_HEADERS_COMPLETE=17]="CB_HEADERS_COMPLETE",e[e.CB_MESSAGE_COMPLETE=18]="CB_MESSAGE_COMPLETE",e[e.CB_CHUNK_HEADER=19]="CB_CHUNK_HEADER",e[e.CB_CHUNK_COMPLETE=20]="CB_CHUNK_COMPLETE",e[e.PAUSED=21]="PAUSED",e[e.PAUSED_UPGRADE=22]="PAUSED_UPGRADE",e[e.PAUSED_H2_UPGRADE=23]="PAUSED_H2_UPGRADE",e[e.USER=24]="USER"})(vho=Au.ERROR||(Au.ERROR={}));var Sho;(function(e){e[e.BOTH=0]="BOTH",e[e.REQUEST=1]="REQUEST",e[e.RESPONSE=2]="RESPONSE"})(Sho=Au.TYPE||(Au.TYPE={}));var who;(function(e){e[e.CONNECTION_KEEP_ALIVE=1]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=2]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=4]="CONNECTION_UPGRADE",e[e.CHUNKED=8]="CHUNKED",e[e.UPGRADE=16]="UPGRADE",e[e.CONTENT_LENGTH=32]="CONTENT_LENGTH",e[e.SKIPBODY=64]="SKIPBODY",e[e.TRAILING=128]="TRAILING",e[e.TRANSFER_ENCODING=512]="TRANSFER_ENCODING"})(who=Au.FLAGS||(Au.FLAGS={}));var Tho;(function(e){e[e.HEADERS=1]="HEADERS",e[e.CHUNKED_LENGTH=2]="CHUNKED_LENGTH",e[e.KEEP_ALIVE=4]="KEEP_ALIVE"})(Tho=Au.LENIENT_FLAGS||(Au.LENIENT_FLAGS={}));var Zp;(function(e){e[e.DELETE=0]="DELETE",e[e.GET=1]="GET",e[e.HEAD=2]="HEAD",e[e.POST=3]="POST",e[e.PUT=4]="PUT",e[e.CONNECT=5]="CONNECT",e[e.OPTIONS=6]="OPTIONS",e[e.TRACE=7]="TRACE",e[e.COPY=8]="COPY",e[e.LOCK=9]="LOCK",e[e.MKCOL=10]="MKCOL",e[e.MOVE=11]="MOVE",e[e.PROPFIND=12]="PROPFIND",e[e.PROPPATCH=13]="PROPPATCH",e[e.SEARCH=14]="SEARCH",e[e.UNLOCK=15]="UNLOCK",e[e.BIND=16]="BIND",e[e.REBIND=17]="REBIND",e[e.UNBIND=18]="UNBIND",e[e.ACL=19]="ACL",e[e.REPORT=20]="REPORT",e[e.MKACTIVITY=21]="MKACTIVITY",e[e.CHECKOUT=22]="CHECKOUT",e[e.MERGE=23]="MERGE",e[e["M-SEARCH"]=24]="M-SEARCH",e[e.NOTIFY=25]="NOTIFY",e[e.SUBSCRIBE=26]="SUBSCRIBE",e[e.UNSUBSCRIBE=27]="UNSUBSCRIBE",e[e.PATCH=28]="PATCH",e[e.PURGE=29]="PURGE",e[e.MKCALENDAR=30]="MKCALENDAR",e[e.LINK=31]="LINK",e[e.UNLINK=32]="UNLINK",e[e.SOURCE=33]="SOURCE",e[e.PRI=34]="PRI",e[e.DESCRIBE=35]="DESCRIBE",e[e.ANNOUNCE=36]="ANNOUNCE",e[e.SETUP=37]="SETUP",e[e.PLAY=38]="PLAY",e[e.PAUSE=39]="PAUSE",e[e.TEARDOWN=40]="TEARDOWN",e[e.GET_PARAMETER=41]="GET_PARAMETER",e[e.SET_PARAMETER=42]="SET_PARAMETER",e[e.REDIRECT=43]="REDIRECT",e[e.RECORD=44]="RECORD",e[e.FLUSH=45]="FLUSH"})(Zp=Au.METHODS||(Au.METHODS={}));Au.METHODS_HTTP=[Zp.DELETE,Zp.GET,Zp.HEAD,Zp.POST,Zp.PUT,Zp.CONNECT,Zp.OPTIONS,Zp.TRACE,Zp.COPY,Zp.LOCK,Zp.MKCOL,Zp.MOVE,Zp.PROPFIND,Zp.PROPPATCH,Zp.SEARCH,Zp.UNLOCK,Zp.BIND,Zp.REBIND,Zp.UNBIND,Zp.ACL,Zp.REPORT,Zp.MKACTIVITY,Zp.CHECKOUT,Zp.MERGE,Zp["M-SEARCH"],Zp.NOTIFY,Zp.SUBSCRIBE,Zp.UNSUBSCRIBE,Zp.PATCH,Zp.PURGE,Zp.MKCALENDAR,Zp.LINK,Zp.UNLINK,Zp.PRI,Zp.SOURCE];Au.METHODS_ICE=[Zp.SOURCE];Au.METHODS_RTSP=[Zp.OPTIONS,Zp.DESCRIBE,Zp.ANNOUNCE,Zp.SETUP,Zp.PLAY,Zp.PAUSE,Zp.TEARDOWN,Zp.GET_PARAMETER,Zp.SET_PARAMETER,Zp.REDIRECT,Zp.RECORD,Zp.FLUSH,Zp.GET,Zp.POST];Au.METHOD_MAP=Bho.enumToMap(Zp);Au.H_METHOD_MAP={};Object.keys(Au.METHOD_MAP).forEach(e=>{/^H/.test(e)&&(Au.H_METHOD_MAP[e]=Au.METHOD_MAP[e])});var Nho;(function(e){e[e.SAFE=0]="SAFE",e[e.SAFE_WITH_CB=1]="SAFE_WITH_CB",e[e.UNSAFE=2]="UNSAFE"})(Nho=Au.FINISH||(Au.FINISH={}));Au.ALPHA=[];for(let e=65;e<=90;e++)Au.ALPHA.push(String.fromCharCode(e)),Au.ALPHA.push(String.fromCharCode(e+32));Au.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};Au.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15};Au.NUM=["0","1","2","3","4","5","6","7","8","9"];Au.ALPHANUM=Au.ALPHA.concat(Au.NUM);Au.MARK=["-","_",".","!","~","*","'","(",")"];Au.USERINFO_CHARS=Au.ALPHANUM.concat(Au.MARK).concat(["%",";",":","&","=","+","$",","]);Au.STRICT_URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(Au.ALPHANUM);Au.URL_CHAR=Au.STRICT_URL_CHAR.concat([" ","\f"]);for(let e=128;e<=255;e++)Au.URL_CHAR.push(e);Au.HEX=Au.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);Au.STRICT_TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(Au.ALPHANUM);Au.TOKEN=Au.STRICT_TOKEN.concat([" "]);Au.HEADER_CHARS=[" "];for(let e=32;e<=255;e++)e!==127&&Au.HEADER_CHARS.push(e);Au.CONNECTION_TOKEN_CHARS=Au.HEADER_CHARS.filter(e=>e!==44);Au.MAJOR=Au.NUM_MAP;Au.MINOR=Au.MAJOR;var u2e;(function(e){e[e.GENERAL=0]="GENERAL",e[e.CONNECTION=1]="CONNECTION",e[e.CONTENT_LENGTH=2]="CONTENT_LENGTH",e[e.TRANSFER_ENCODING=3]="TRANSFER_ENCODING",e[e.UPGRADE=4]="UPGRADE",e[e.CONNECTION_KEEP_ALIVE=5]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=6]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=7]="CONNECTION_UPGRADE",e[e.TRANSFER_ENCODING_CHUNKED=8]="TRANSFER_ENCODING_CHUNKED"})(u2e=Au.HEADER_STATE||(Au.HEADER_STATE={}));Au.SPECIAL_HEADERS={connection:u2e.CONNECTION,"content-length":u2e.CONTENT_LENGTH,"proxy-connection":u2e.CONNECTION,"transfer-encoding":u2e.TRANSFER_ENCODING,upgrade:u2e.UPGRADE}});var Yer=z((Y8c,Uxn)=>{"use strict";var{Buffer:Rho}=Dt("node:buffer");Uxn.exports=Rho.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAy0sBQYAAAIAAAAAAAACAQIAAgICAAADAAAAAAMDAwMBAQEBAQEBAQEAAAIAAAAEBQFwARISBQMBAAIGCAF/AUGA1AQLB9EFIgZtZW1vcnkCAAtfaW5pdGlhbGl6ZQAIGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBAAtsbGh0dHBfaW5pdAAJGGxsaHR0cF9zaG91bGRfa2VlcF9hbGl2ZQAvDGxsaHR0cF9hbGxvYwALBm1hbGxvYwAxC2xsaHR0cF9mcmVlAAwEZnJlZQAMD2xsaHR0cF9nZXRfdHlwZQANFWxsaHR0cF9nZXRfaHR0cF9tYWpvcgAOFWxsaHR0cF9nZXRfaHR0cF9taW5vcgAPEWxsaHR0cF9nZXRfbWV0aG9kABAWbGxodHRwX2dldF9zdGF0dXNfY29kZQAREmxsaHR0cF9nZXRfdXBncmFkZQASDGxsaHR0cF9yZXNldAATDmxsaHR0cF9leGVjdXRlABQUbGxodHRwX3NldHRpbmdzX2luaXQAFQ1sbGh0dHBfZmluaXNoABYMbGxodHRwX3BhdXNlABcNbGxodHRwX3Jlc3VtZQAYG2xsaHR0cF9yZXN1bWVfYWZ0ZXJfdXBncmFkZQAZEGxsaHR0cF9nZXRfZXJybm8AGhdsbGh0dHBfZ2V0X2Vycm9yX3JlYXNvbgAbF2xsaHR0cF9zZXRfZXJyb3JfcmVhc29uABwUbGxodHRwX2dldF9lcnJvcl9wb3MAHRFsbGh0dHBfZXJybm9fbmFtZQAeEmxsaHR0cF9tZXRob2RfbmFtZQAfEmxsaHR0cF9zdGF0dXNfbmFtZQAgGmxsaHR0cF9zZXRfbGVu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PgtBhwEMPQtBiAEMPAtBiQEMOwtBigEMOgtBiwEMOQtBjAEMOAtBjQEMNwtBjgEMNgtBjwEMNQtBkAEMNAtBkQEMMwtBkgEMMgtBkwEMMQtBlAEMMAtBlQEMLwtBlgEMLgtBlwEMLQtBmAEMLAtBmQEMKwtBmgEMKgtBmwEMKQtBnAEMKAtBnQEMJwtBngEMJgtBnwEMJQtBoAEMJAtBoQEMIwtBogEMIgtBowEMIQtBpAEMIAtBpQEMHwtBpgEMHgtBpwEMHQtBqAEMHAtBqQEMGwtBqgEMGgtBqwEMGQtBrAEMGAtBrQEMFwtBrgEMFgtBAQwVC0GvAQwUC0GwAQwTC0GxAQwSC0GzAQwRC0GyAQwQC0G0AQwPC0G1AQwOC0G2AQwNC0G3AQwMC0G4AQwLC0G5AQwKC0G6AQwJC0G7AQwIC0HGAQwHC0G8AQwGC0G9AQwFC0G+AQwEC0G/AQwDC0HAAQwCC0HCAQwBC0HBAQshAwNAAkACQAJAAkACQAJAAkACQAJAIAICfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAgJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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iQEhAwykAgtBASABLQAAQd8ARw1nGiABQQFqIQEMXgtBigEhAyABIARGDaICIAIoAgAiACAEIAFraiEFIAEgAGtBAWohBgNAIAEtAAAgAEGMzwBqLQAARw1kIABBAUYN+gEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMogILQYsBIQMgASAERg2hAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGOzwBqLQAARw1kIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyiAgsgAkEANgIAIAZBAWohAUECDGULQYwBIQMgASAERg2gAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHwzwBqLQAARw1jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyhAgsgAkEANgIAIAZBAWohAUEfDGQLQY0BIQMgASAERg2fAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHyzwBqLQAARw1iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAygAgsgAkEANgIAIAZBAWohAUEJDGMLIAEgBEYEQEGOASEDDJ8CCwJAAkAgAS0AAEHJAGsOBwBiYmJiYgFiCyABQQFqIQFB+AAhAwyGAgsgAUEBaiEBQfkAIQMMhQILQY8BIQMgASAERg2dAiACKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGRzwBqLQAARw1gIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyeAgsgAkEANgIAIAZBAWohAUEYDGELQZABIQMgASAERg2cAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGXzwBqLQAARw1fIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAydAgsgAkEANgIAIAZBAWohAUEXDGALQZEBIQMgASAERg2bAiACKAIAIgAgBCABa2ohBSABIABrQQZqIQYCQANAIAEtAAAgAEGazwBqLQAARw1eIABBBkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAycAgsgAkEANgIAIAZBAWohAUEV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JSIARQ0RIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMtAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0gIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMswELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0iIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMsgELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0OIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMsQELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0dIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMsAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0fIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMrwELIABBP0cNASABQQFqCyEBQQUhAwyUAQtBACEDIAJBADYCHCACIAE2AhQgAkH9EjYCECACQQc2AgwMrAELIAJBADYCHCACIAE2AhQgAkHcCDYCECACQQc2AgxBACEDDKsBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNByACQeUANgIcIAIgATYCFCACIAA2AgxBACEDDKoBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNFiACQdMANgIcIAIgATYCFCACIAA2AgxBACEDDKkBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNGCACQdIANgIcIAIgATYCFCACIAA2AgxBACEDDKgBCyACQQA2AhwgAiABNgIUIAJBxgo2AhAgAkEHNgIMQQAhAwynAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQMgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwymAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRIgAkHTADYCHCACIAE2AhQgAiAANgIMQQAhAwylAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRQgAkHSADYCHCACIAE2AhQgAiAANgIMQQAhAwykAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQAgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwyjAQtB1QAhAwyJAQsgAEEVRwRAIAJBADYCHCACIAE2AhQgAkG5DTYCECACQRo2AgxB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AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB5ABrDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0HhJw8LQaQhDwtByywPC0H+MQ8LQcAkDwtBqyQPC0GNKA8LQeImDwtBgDAPC0G5Lw8LQdckDwtB7x8PC0HhHw8LQfofDwtB8iAPC0GoLw8LQa4yDwtBiDAPC0HsJw8LQYIiDwtBjh0PC0HQLg8LQcojDwtBxTIPC0HfHA8LQdIcDwtBxCAPC0HXIA8LQaIfDwtB7S4PC0GrMA8LQdQlDwtBzC4PC0H6Lg8LQfwrDwtB0jAPC0HxHQ8LQbsgDwtB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CABB3AgLii1JbnZhbGlkIGNoYXIgaW4gdXJsIHF1ZXJ5AFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fYm9keQBDb250ZW50LUxlbmd0aCBvdmVyZmxvdwBDaHVuayBzaXplIG92ZXJmbG93AFJlc3BvbnNlIG92ZXJmbG93AEludmFsaWQgbWV0aG9kIGZvciBIVFRQL3gueCByZXF1ZXN0AEludmFsaWQgbWV0aG9kIGZvciBSVFNQL3gueCByZXF1ZXN0AEV4cGVjdGVkIFNPVVJDRSBtZXRob2QgZm9yIElDRS94LnggcmVxdWVzdABJbnZhbGlkIGNoYXIgaW4gdXJsIGZyYWdtZW50IHN0YXJ0AEV4cGVjdGVkIGRvdABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3N0YXR1cwBJbnZhbGlkIHJlc3BvbnNlIHN0YXR1cwBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zAFVzZXIgY2FsbGJhY2sgZXJyb3IAYG9uX3Jlc2V0YCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfaGVhZGVyYCBjYWxsYmFjayBlcnJvcgBgb25fbWVzc2FnZV9iZWdpbmAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3N0YXR1c19jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3ZlcnNpb25fY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl91cmxfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2hlYWRlcl92YWx1ZV9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXRob2RfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfZmllbGRfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fbmFtZWAgY2FsbGJhY2sgZXJyb3IAVW5leHBlY3RlZCBjaGFyIGluIHVybCBzZXJ2ZXIASW52YWxpZCBoZWFkZXIgdmFsdWUgY2hhcgBJbnZhbGlkIGhlYWRlciBmaWVsZCBjaGFyAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fdmVyc2lvbgBJbnZhbGlkIG1pbm9yIHZlcnNpb24ASW52YWxpZCBtYWpvciB2ZXJzaW9uAEV4cGVjdGVkIHNwYWNlIGFmdGVyIHZlcnNpb24ARXhwZWN0ZWQgQ1JMRiBhZnRlciB2ZXJzaW9uAEludmFsaWQgSFRUUCB2ZXJzaW9uAEludmFsaWQgaGVhZGVyIHRva2VuAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fdXJsAEludmFsaWQgY2hhcmFjdGVycyBpbiB1cmwAVW5leHBlY3RlZCBzdGFydCBjaGFyIGluIHVybABEb3VibGUgQCBpbiB1cmwARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgARHVwbGljYXRlIENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhciBpbiB1cmwgcGF0aABDb250ZW50LUxlbmd0aCBjYW4ndCBiZSBwcmVzZW50IHdpdGggVHJhbnNmZXItRW5jb2RpbmcASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgc2l6ZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2hlYWRlcl92YWx1ZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHF1b3RlZCB2YWx1ZQBQYXVzZWQgYnkgb25faGVhZGVyc19jb21wbGV0ZQBJbnZhbGlkIEVPRiBzdGF0ZQBvbl9yZXNldCBwYXVzZQBvbl9jaHVua19oZWFkZXIgcGF1c2UAb25fbWVzc2FnZV9iZWdpbiBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fdmFsdWUgcGF1c2UAb25fc3RhdHVzX2NvbXBsZXRlIHBhdXNlAG9uX3ZlcnNpb25fY29tcGxldGUgcGF1c2UAb25fdXJsX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl92YWx1ZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXNzYWdlX2NvbXBsZXRlIHBhdXNlAG9uX21ldGhvZF9jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfZmllbGRfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUgcGF1c2UAVW5leHBlY3RlZCBzcGFjZSBhZnRlciBzdGFydCBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAFBhdXNlIG9uIENPTk5FQ1QvVXBncmFkZQBQYXVzZSBvbiBQUkkvVXBncmFkZQBFeHBlY3RlZCBIVFRQLzIgQ29ubmVjdGlvbiBQcmVmYWNlAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fbWV0aG9kAEV4cGVjdGVkIHNwYWNlIGFmdGVyIG1ldGhvZABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2hlYWRlcl9maWVsZABQYXVzZWQASW52YWxpZCB3b3JkIGVuY291bnRlcmVkAEludmFsaWQgbWV0aG9kIGVuY291bnRlcmVkAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2NoZW1hAFJlcXVlc3QgaGFzIGludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYABTV0lUQ0hfUFJPWFkAVVNFX1BST1hZAE1LQUNUSVZJVFkAVU5QUk9DRVNTQUJMRV9FTlRJVFkAQ09QWQBNT1ZFRF9QRVJNQU5FTlRMWQBUT09fRUFSTFkATk9USUZZAEZBSUxFRF9ERVBFTkRFTkNZAEJBRF9HQVRFV0FZAFBMQVkAUFVUAENIRUNLT1VUAEdBVEVXQVlfVElNRU9VVABSRVFVRVNUX1RJTUVPVVQATkVUV09SS19DT05ORUNUX1RJTUVPVVQAQ09OTkVDVElPTl9USU1FT1VUAExPR0lOX1RJTUVPVVQATkVUV09SS19SRUFEX1RJTUVPVVQAUE9TVABNSVNESVJFQ1RFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX0xPQURfQkFMQU5DRURfUkVRVUVTVABCQURfUkVRVUVTVABIVFRQX1JFUVVFU1RfU0VOVF9UT19IVFRQU19QT1JUAFJFUE9SVABJTV9BX1RFQVBPVABSRVNFVF9DT05URU5UAE5PX0NPTlRFTlQAUEFSVElBTF9DT05URU5UAEhQRV9JTlZBTElEX0NPTlNUQU5UAEhQRV9DQl9SRVNFVABHRVQASFBFX1NUUklDVABDT05GTElDVABURU1QT1JBUllfUkVESVJFQ1QAUEVSTUFORU5UX1JFRElSRUNUAENPTk5FQ1QATVVMVElfU1RBVFVTAEhQRV9JTlZBTElEX1NUQVRVUwBUT09fTUFOWV9SRVFVRVNUUwBFQVJMWV9ISU5UUwBVTkFWQUlMQUJMRV9GT1JfTEVHQUxfUkVBU09OUwBPUFRJT05TAFNXSVRDSElOR19QUk9UT0NPTFMAVkFSSUFOVF9BTFNPX05FR09USUFURVMATVVMVElQTEVfQ0hPSUNFUwBJTlRFUk5BTF9TRVJWRVJfRVJST1IAV0VCX1NFUlZFUl9VTktOT1dOX0VSUk9SAFJBSUxHVU5fRVJST1IASURFTlRJVFlfUFJPVklERVJfQVVUSEVOVElDQVRJT05fRVJST1IAU1NMX0NFUlRJRklDQVRFX0VSUk9SAElOVkFMSURfWF9GT1JXQVJERURfRk9SAFNFVF9QQVJBTUVURVIAR0VUX1BBUkFNRVRFUgBIUEVfVVNFUgBTRUVfT1RIRVIASFBFX0NCX0NIVU5LX0hFQURFUgBNS0NBTEVOREFSAFNFVFVQAFdFQl9TRVJWRVJfSVNfRE9XTgBURUFSRE9XTgBIUEVfQ0xPU0VEX0NPTk5FQ1RJT04ASEVVUklTVElDX0VYUElSQVRJT04ARElTQ09OTkVDVEVEX09QRVJBVElPTgBOT05fQVVUSE9SSVRBVElWRV9JTkZPUk1BVElPTgBIUEVfSU5WQUxJRF9WRVJTSU9OAEhQRV9DQl9NRVNTQUdFX0JFR0lOAFNJVEVfSVNfRlJPWkVOAEhQRV9JTlZBTElEX0hFQURFUl9UT0tFTgBJTlZBTElEX1RPS0VOAEZPUkJJRERFTgBFTkhBTkNFX1lPVVJfQ0FMTQBIUEVfSU5WQUxJRF9VUkwAQkxPQ0tFRF9CWV9QQVJFTlRBTF9DT05UUk9MAE1LQ09MAEFDTABIUEVfSU5URVJOQUwAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRV9VTk9GRklDSUFMAEhQRV9PSwBVTkxJTksAVU5MT0NLAFBSSQBSRVRSWV9XSVRIAEhQRV9JTlZBTElEX0NPTlRFTlRfTEVOR1RIAEhQRV9VTkVYUEVDVEVEX0NPTlRFTlRfTEVOR1RIAEZMVVNIAFBST1BQQVRDSABNLVNFQVJDSABVUklfVE9PX0xPTkcAUFJPQ0VTU0lORwBNSVNDRUxMQU5FT1VTX1BFUlNJU1RFTlRfV0FSTklORwBNSVNDRUxMQU5FT1VTX1dBUk5JTkcASFBFX0lOVkFMSURfVFJBTlNGRVJfRU5DT0RJTkcARXhwZWN0ZWQgQ1JMRgBIUEVfSU5WQUxJRF9DSFVOS19TSVpFAE1PVkUAQ09OVElOVUUASFBFX0NCX1NUQVRVU19DT01QTEVURQBIUEVfQ0JfSEVBREVSU19DT01QTEVURQBIUEVfQ0JfVkVSU0lPTl9DT01QTEVURQBIUEVfQ0JfVVJMX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8AAF4TAAAmEwAAMBAAAPAXAACdEwAAFRIAADkXAADwEgAAChAAAHUSAACtEgAAghMAAE8UAAB/EAAAoBUAACMUAACJEgAAixQAAE0VAADUEQAAzxQAABAYAADJFgAA3BYAAMERAADgFwAAuxQAAHQUAAB8FQAA5RQAAAgXAAAfEAAAZRUAAKMUAAAoFQAAAhUAAJkVAAAsEAAAixkAAE8PAADUDgAAahAAAM4QAAACFwAAiQ4AAG4TAAAcEwAAZhQAAFYXAADBEwAAzRMAAGwTAABoFwAAZhcAAF8XAAAiEwAAzg8AAGkOAADYDgAAYxYAAMsTAACqDgAAKBcAACYXAADFEwAAXRYAAOgRAABnEwAAZRMAAPIWAABzEwAAHRcAAPkWAADzEQAAzw4AAM4VAAAMEgAAsxEAAKURAABhEAAAMhcAALsTAEH5NQsBAQBBkDYL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB/TcLAQEAQZE4C14CAwICAgICAAACAgACAgACAgICAgICAgICAAQAAAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAEH9OQsBAQBBkToLXgIAAgICAgIAAAICAAICAAICAgICAgICAgIAAwAEAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAQfA7Cw1sb3NlZWVwLWFsaXZlAEGJPAsBAQBBoDwL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBiT4LAQEAQaA+C+cBAQEBAQEBAQEBAQEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFjaHVua2VkAEGwwAALXwEBAAEBAQEBAAABAQABAQABAQEBAQEBAQEBAAAAAAAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAEGQwgALIWVjdGlvbmVudC1sZW5ndGhvbnJveHktY29ubmVjdGlvbgBBwMIACy1yYW5zZmVyLWVuY29kaW5ncGdyYWRlDQoNCg0KU00NCg0KVFRQL0NFL1RTUC8AQfnCAAsFAQIAAQMAQZDDAAvgAQQBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAEH5xAALBQECAAEDAEGQxQAL4AEEAQEFAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+cYACwQBAAABAEGRxwAL3wEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAEH6yAALBAEAAAIAQZDJAAtfAwQAAAQEBAQEBAQEBAQEBQQEBAQEBAQEBAQEBAAEAAYHBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQAQfrKAAsEAQAAAQBBkMsACwEBAEGqywALQQIAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAEH6zAALBAEAAAEAQZDNAAsBAQBBms0ACwYCAAAAAAIAQbHNAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBB8M4AC5YBTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRU9SRElSRUNUT1JUUkNIUEFSQU1FVEVSVVJDRUJTQ1JJQkVBUkRPV05BQ0VJTkROS0NLVUJTQ1JJQkVIVFRQL0FEVFAv","base64")});var jxn=z((H8c,Kxn)=>{"use strict";var{Buffer:Dho}=Dt("node:buffer");Kxn.exports=Dho.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAy0sBQYAAAIAAAAAAAACAQIAAgICAAADAAAAAAMDAwMBAQEBAQEBAQEAAAIAAAAEBQFwARISBQMBAAIGCAF/AUGA1AQLB9EFIgZtZW1vcnkCAAtfaW5pdGlhbGl6ZQAIGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBAAtsbGh0dHBfaW5pdAAJGGxsaHR0cF9zaG91bGRfa2VlcF9hbGl2ZQAvDGxsaHR0cF9hbGxvYwALBm1hbGxvYwAxC2xsaHR0cF9mcmVlAAwEZnJlZQAMD2xsaHR0cF9nZXRfdHlwZQANFWxsaHR0cF9nZXRfaHR0cF9tYWpvcgAOFWxsaHR0cF9nZXRfaHR0cF9taW5vcgAPEWxsaHR0cF9nZXRfbWV0aG9kABAWbGxodHRwX2dldF9zdGF0dXNfY29kZQAREmxsaHR0cF9nZXRfdXBncmFkZQASDGxsaHR0cF9yZXNldAATDmxsaHR0cF9leGVjdXRlABQUbGxodHRwX3NldHRpbmdzX2luaXQAFQ1sbGh0dHBfZmluaXNoABYMbGxodHRwX3BhdXNlABcNbGxodHRwX3Jlc3VtZQAYG2xsaHR0cF9yZXN1bWVfYWZ0ZXJfdXBncmFkZQAZEGxsaHR0cF9nZXRfZXJybm8AGhdsbGh0dHBfZ2V0X2Vycm9yX3JlYXNvbgAbF2xsaHR0cF9zZXRfZXJyb3JfcmVhc29uABwUbGxodHRwX2dldF9lcnJvcl9wb3MAHRFsbGh0dHBfZXJybm9fbmFtZQAeEmxsaHR0cF9tZXRob2RfbmFtZQAfEmxsaHR0cF9zdGF0dXNfbmFtZQAgGmxsaHR0cF9zZXRfbGVu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PgtBhwEMPQtBiAEMPAtBiQEMOwtBigEMOgtBiwEMOQtBjAEMOAtBjQEMNwtBjgEMNgtBjwEMNQtBkAEMNAtBkQEMMwtBkgEMMgtBkwEMMQtBlAEMMAtBlQEMLwtBlgEMLgtBlwEMLQtBmAEMLAtBmQEMKwtBmgEMKgtBmwEMKQtBnAEMKAtBnQEMJwtBngEMJgtBnwEMJQtBoAEMJAtBoQEMIwtBogEMIgtBowEMIQtBpAEMIAtBpQEMHwtBpgEMHgtBpwEMHQtBqAEMHAtBqQEMGwtBqgEMGgtBqwEMGQtBrAEMGAtBrQEMFwtBrgEMFgtBAQwVC0GvAQwUC0GwAQwTC0GxAQwSC0GzAQwRC0GyAQwQC0G0AQwPC0G1AQwOC0G2AQwNC0G3AQwMC0G4AQwLC0G5AQwKC0G6AQwJC0G7AQwIC0HGAQwHC0G8AQwGC0G9AQwFC0G+AQwEC0G/AQwDC0HAAQwCC0HCAQwBC0HBAQshAwNAAkACQAJAAkACQAJAAkACQAJAIAICfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAgJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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iQEhAwykAgtBASABLQAAQd8ARw1nGiABQQFqIQEMXgtBigEhAyABIARGDaICIAIoAgAiACAEIAFraiEFIAEgAGtBAWohBgNAIAEtAAAgAEGMzwBqLQAARw1kIABBAUYN+gEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMogILQYsBIQMgASAERg2hAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGOzwBqLQAARw1kIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyiAgsgAkEANgIAIAZBAWohAUECDGULQYwBIQMgASAERg2gAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHwzwBqLQAARw1jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyhAgsgAkEANgIAIAZBAWohAUEfDGQLQY0BIQMgASAERg2fAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHyzwBqLQAARw1iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAygAgsgAkEANgIAIAZBAWohAUEJDGMLIAEgBEYEQEGOASEDDJ8CCwJAAkAgAS0AAEHJAGsOBwBiYmJiYgFiCyABQQFqIQFB+AAhAwyGAgsgAUEBaiEBQfkAIQMMhQILQY8BIQMgASAERg2dAiACKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGRzwBqLQAARw1gIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyeAgsgAkEANgIAIAZBAWohAUEYDGELQZABIQMgASAERg2cAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGXzwBqLQAARw1fIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAydAgsgAkEANgIAIAZBAWohAUEXDGALQZEBIQMgASAERg2bAiACKAIAIgAgBCABa2ohBSABIABrQQZqIQYCQANAIAEtAAAgAEGazwBqLQAARw1eIABBBkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAycAgsgAkEANgIAIAZBAWohAUEV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JSIARQ0RIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMtAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0gIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMswELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0iIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMsgELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0OIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMsQELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0dIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMsAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0fIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMrwELIABBP0cNASABQQFqCyEBQQUhAwyUAQtBACEDIAJBADYCHCACIAE2AhQgAkH9EjYCECACQQc2AgwMrAELIAJBADYCHCACIAE2AhQgAkHcCDYCECACQQc2AgxBACEDDKsBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNByACQeUANgIcIAIgATYCFCACIAA2AgxBACEDDKoBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNFiACQdMANgIcIAIgATYCFCACIAA2AgxBACEDDKkBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNGCACQdIANgIcIAIgATYCFCACIAA2AgxBACEDDKgBCyACQQA2AhwgAiABNgIUIAJBxgo2AhAgAkEHNgIMQQAhAwynAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQMgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwymAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRIgAkHTADYCHCACIAE2AhQgAiAANgIMQQAhAwylAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRQgAkHSADYCHCACIAE2AhQgAiAANgIMQQAhAwykAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQAgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwyjAQtB1QAhAwyJAQsgAEEVRwRAIAJBADYCHCACIAE2AhQgAkG5DTYCECACQRo2AgxB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AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB5ABrDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0HhJw8LQaQhDwtByywPC0H+MQ8LQcAkDwtBqyQPC0GNKA8LQeImDwtBgDAPC0G5Lw8LQdckDwtB7x8PC0HhHw8LQfofDwtB8iAPC0GoLw8LQa4yDwtBiDAPC0HsJw8LQYIiDwtBjh0PC0HQLg8LQcojDwtBxTIPC0HfHA8LQdIcDwtBxCAPC0HXIA8LQaIfDwtB7S4PC0GrMA8LQdQlDwtBzC4PC0H6Lg8LQfwrDwtB0jAPC0HxHQ8LQbsgDwtB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AAADAEGUCAsFBAAAAAUAQaQICwkGAAAABwAAAAgAQdwIC4otSW52YWxpZCBjaGFyIGluIHVybCBxdWVyeQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2JvZHkAQ29udGVudC1MZW5ndGggb3ZlcmZsb3cAQ2h1bmsgc2l6ZSBvdmVyZmxvdwBSZXNwb25zZSBvdmVyZmxvdwBJbnZhbGlkIG1ldGhvZCBmb3IgSFRUUC94LnggcmVxdWVzdABJbnZhbGlkIG1ldGhvZCBmb3IgUlRTUC94LnggcmVxdWVzdABFeHBlY3RlZCBTT1VSQ0UgbWV0aG9kIGZvciBJQ0UveC54IHJlcXVlc3QASW52YWxpZCBjaGFyIGluIHVybCBmcmFnbWVudCBzdGFydABFeHBlY3RlZCBkb3QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9zdGF0dXMASW52YWxpZCByZXNwb25zZSBzdGF0dXMASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucwBVc2VyIGNhbGxiYWNrIGVycm9yAGBvbl9yZXNldGAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2hlYWRlcmAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfYmVnaW5gIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fdmFsdWVgIGNhbGxiYWNrIGVycm9yAGBvbl9zdGF0dXNfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl92ZXJzaW9uX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdXJsX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAEVtcHR5IENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhcmFjdGVyIGluIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBNaXNzaW5nIGV4cGVjdGVkIExGIGFmdGVyIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AgaGVhZGVyIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGUgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZWQgdmFsdWUAUGF1c2VkIGJ5IG9uX2hlYWRlcnNfY29tcGxldGUASW52YWxpZCBFT0Ygc3RhdGUAb25fcmVzZXQgcGF1c2UAb25fY2h1bmtfaGVhZGVyIHBhdXNlAG9uX21lc3NhZ2VfYmVnaW4gcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlIHBhdXNlAG9uX3N0YXR1c19jb21wbGV0ZSBwYXVzZQBvbl92ZXJzaW9uX2NvbXBsZXRlIHBhdXNlAG9uX3VybF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGUgcGF1c2UAb25fbWVzc2FnZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXRob2RfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lIHBhdXNlAFVuZXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgc3RhcnQgbGluZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgbmFtZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AAU1dJVENIX1BST1hZAFVTRV9QUk9YWQBNS0FDVElWSVRZAFVOUFJPQ0VTU0FCTEVfRU5USVRZAENPUFkATU9WRURfUEVSTUFORU5UTFkAVE9PX0VBUkxZAE5PVElGWQBGQUlMRURfREVQRU5ERU5DWQBCQURfR0FURVdBWQBQTEFZAFBVVABDSEVDS09VVABHQVRFV0FZX1RJTUVPVVQAUkVRVUVTVF9USU1FT1VUAE5FVFdPUktfQ09OTkVDVF9USU1FT1VUAENPTk5FQ1RJT05fVElNRU9VVABMT0dJTl9USU1FT1VUAE5FVFdPUktfUkVBRF9USU1FT1VUAFBPU1QATUlTRElSRUNURURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9MT0FEX0JBTEFOQ0VEX1JFUVVFU1QAQkFEX1JFUVVFU1QASFRUUF9SRVFVRVNUX1NFTlRfVE9fSFRUUFNfUE9SVABSRVBPUlQASU1fQV9URUFQT1QAUkVTRVRfQ09OVEVOVABOT19DT05URU5UAFBBUlRJQUxfQ09OVEVOVABIUEVfSU5WQUxJRF9DT05TVEFOVABIUEVfQ0JfUkVTRVQAR0VUAEhQRV9TVFJJQ1QAQ09ORkxJQ1QAVEVNUE9SQVJZX1JFRElSRUNUAFBFUk1BTkVOVF9SRURJUkVDVABDT05ORUNUAE1VTFRJX1NUQVRVUwBIUEVfSU5WQUxJRF9TVEFUVVMAVE9PX01BTllfUkVRVUVTVFMARUFSTFlfSElOVFMAVU5BVkFJTEFCTEVfRk9SX0xFR0FMX1JFQVNPTlMAT1BUSU9OUwBTV0lUQ0hJTkdfUFJPVE9DT0xTAFZBUklBTlRfQUxTT19ORUdPVElBVEVTAE1VTFRJUExFX0NIT0lDRVMASU5URVJOQUxfU0VSVkVSX0VSUk9SAFdFQl9TRVJWRVJfVU5LTk9XTl9FUlJPUgBSQUlMR1VOX0VSUk9SAElERU5USVRZX1BST1ZJREVSX0FVVEhFTlRJQ0FUSU9OX0VSUk9SAFNTTF9DRVJUSUZJQ0FURV9FUlJPUgBJTlZBTElEX1hfRk9SV0FSREVEX0ZPUgBTRVRfUEFSQU1FVEVSAEdFVF9QQVJBTUVURVIASFBFX1VTRVIAU0VFX09USEVSAEhQRV9DQl9DSFVOS19IRUFERVIATUtDQUxFTkRBUgBTRVRVUABXRUJfU0VSVkVSX0lTX0RPV04AVEVBUkRPV04ASFBFX0NMT1NFRF9DT05ORUNUSU9OAEhFVVJJU1RJQ19FWFBJUkFUSU9OAERJU0NPTk5FQ1RFRF9PUEVSQVRJT04ATk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04ASFBFX0lOVkFMSURfVkVSU0lPTgBIUEVfQ0JfTUVTU0FHRV9CRUdJTgBTSVRFX0lTX0ZST1pFTgBIUEVfSU5WQUxJRF9IRUFERVJfVE9LRU4ASU5WQUxJRF9UT0tFTgBGT1JCSURERU4ARU5IQU5DRV9ZT1VSX0NBTE0ASFBFX0lOVkFMSURfVVJMAEJMT0NLRURfQllfUEFSRU5UQUxfQ09OVFJPTABNS0NPTABBQ0wASFBFX0lOVEVSTkFMAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0VfVU5PRkZJQ0lBTABIUEVfT0sAVU5MSU5LAFVOTE9DSwBQUkkAUkVUUllfV0lUSABIUEVfSU5WQUxJRF9DT05URU5UX0xFTkdUSABIUEVfVU5FWFBFQ1RFRF9DT05URU5UX0xFTkdUSABGTFVTSABQUk9QUEFUQ0gATS1TRUFSQ0gAVVJJX1RPT19MT05HAFBST0NFU1NJTkcATUlTQ0VMTEFORU9VU19QRVJTSVNURU5UX1dBUk5JTkcATUlTQ0VMTEFORU9VU19XQVJOSU5HAEhQRV9JTlZBTElEX1RSQU5TRkVSX0VOQ09ESU5HAEV4cGVjdGVkIENSTEYASFBFX0lOVkFMSURfQ0hVTktfU0laRQBNT1ZFAENPTlRJTlVFAEhQRV9DQl9TVEFUVVNfQ09NUExFVEUASFBFX0NCX0hFQURFUlNfQ09NUExFVEUASFBFX0NCX1ZFUlNJT05fQ09NUExFVEUASFBFX0NCX1VSTF9DT01QTEVURQBIUEVfQ0JfQ0hVTktfQ09NUExFVEUASFBFX0NCX0hFQURFUl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fTkFNRV9DT01QTEVURQBIUEVfQ0JfTUVTU0FHRV9DT01QTEVURQBIUEVfQ0JfTUVUSE9EX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfRklFTERfQ09NUExFVEUAREVMRVRFAEhQRV9JTlZBTElEX0VPRl9TVEFURQBJTlZBTElEX1NTTF9DRVJUSUZJQ0FURQBQQVVTRQBOT19SRVNQT05TRQBVTlNVUFBPUlRFRF9NRURJQV9UWVBFAEdPTkUATk9UX0FDQ0VQVEFCTEUAU0VSVklDRV9VTkFWQUlMQUJMRQBSQU5HRV9OT1RfU0FUSVNGSUFCTEUAT1JJR0lOX0lTX1VOUkVBQ0hBQkxFAFJFU1BPTlNFX0lTX1NUQUxFAFBVUkdFAE1FUkdFAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UAUkVRVUVTVF9IRUFERVJfVE9PX0xBUkdFAFBBWUxPQURfVE9PX0xBUkdFAElOU1VGRklDSUVOVF9TVE9SQUdFAEhQRV9QQVVTRURfVVBHUkFERQBIUEVfUEFVU0VEX0gyX1VQR1JBREUAU09VUkNFAEFOTk9VTkNFAFRSQUNFAEhQRV9VTkVYUEVDVEVEX1NQQUNFAERFU0NSSUJFAFVOU1VCU0NSSUJFAFJFQ09SRABIUEVfSU5WQUxJRF9NRVRIT0QATk9UX0ZPVU5EAFBST1BGSU5EAFVOQklORABSRUJJTkQAVU5BVVRIT1JJWkVEAE1FVEhPRF9OT1RfQUxMT1dFRABIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRABBTFJFQURZX1JFUE9SVEVEAEFDQ0VQVEVEAE5PVF9JTVBMRU1FTlRFRABMT09QX0RFVEVDVEVEAEhQRV9DUl9FWFBFQ1RFRABIUEVfTEZfRVhQRUNURUQAQ1JFQVRFRABJTV9VU0VEAEhQRV9QQVVTRUQAVElNRU9VVF9PQ0NVUkVEAFBBWU1FTlRfUkVRVUlSRUQAUFJFQ09ORElUSU9OX1JFUVVJUkVEAFBST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAE5FVFdPUktfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATEVOR1RIX1JFUVVJUkVEAFNTTF9DRVJUSUZJQ0FURV9SRVFVSVJFRABVUEdSQURFX1JFUVVJUkVEAFBBR0VfRVhQSVJFRABQUkVDT05ESVRJT05fRkFJTEVEAEVYUEVDVEFUSU9OX0ZBSUxFRABSRVZBTElEQVRJT05fRkFJTEVEAFNTTF9IQU5EU0hBS0VfRkFJTEVEAExPQ0tFRABUUkFOU0ZPUk1BVElPTl9BUFBMSUVEAE5PVF9NT0RJRklFRABOT1RfRVhURU5ERUQAQkFORFdJRFRIX0xJTUlUX0VYQ0VFREVEAFNJVEVfSVNfT1ZFUkxPQURFRABIRUFEAEV4cGVjdGVkIEhUVFAvAABeEwAAJhMAADAQAADwFwAAnRMAABUSAAA5FwAA8BIAAAoQAAB1EgAArRIAAIITAABPFAAAfxAAAKAVAAAjFAAAiRIAAIsUAABNFQAA1BEAAM8UAAAQGAAAyRYAANwWAADBEQAA4BcAALsUAAB0FAAAfBUAAOUUAAAIFwAAHxAAAGUVAACjFAAAKBUAAAIVAACZFQAALBAAAIsZAABPDwAA1A4AAGoQAADOEAAAAhcAAIkOAABuEwAAHBMAAGYUAABWFwAAwRMAAM0TAABsEwAAaBcAAGYXAABfFwAAIhMAAM4PAABpDgAA2A4AAGMWAADLEwAAqg4AACgXAAAmFwAAxRMAAF0WAADoEQAAZxMAAGUTAADyFgAAcxMAAB0XAAD5FgAA8xEAAM8OAADOFQAADBIAALMRAAClEQAAYRAAADIXAAC7EwBB+TULAQEAQZA2C+ABAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQf03CwEBAEGROAteAgMCAgICAgAAAgIAAgIAAgICAgICAgICAgAEAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAIAAgBB/TkLAQEAQZE6C14CAAICAgICAAACAgACAgACAgICAgICAgICAAMABAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAEHwOwsNbG9zZWVlcC1hbGl2ZQBBiTwLAQEAQaA8C+ABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQYk+CwEBAEGgPgvnAQEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBY2h1bmtlZABBsMAAC18BAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBBkMIACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQcDCAAstcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQoNClNNDQoNClRUUC9DRS9UU1AvAEH5wgALBQECAAEDAEGQwwAL4AEEAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+cQACwUBAgABAwBBkMUAC+ABBAEBBQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQfnGAAsEAQAAAQBBkccAC98BAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+sgACwQBAAACAEGQyQALXwMEAAAEBAQEBAQEBAQEBAUEBAQEBAQEBAQEBAQABAAGBwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEAEH6ygALBAEAAAEAQZDLAAsBAQBBqssAC0ECAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBB+swACwQBAAABAEGQzQALAQEAQZrNAAsGAgAAAAACAEGxzQALOgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQfDOAAuWAU5PVU5DRUVDS09VVE5FQ1RFVEVDUklCRUxVU0hFVEVBRFNFQVJDSFJHRUNUSVZJVFlMRU5EQVJWRU9USUZZUFRJT05TQ0hTRUFZU1RBVENIR0VPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFSFRUUC9BRFRQLw==","base64")});var uPe=z((X8c,ikn)=>{"use strict";var zxn=["GET","HEAD","POST"],xho=new Set(zxn),kho=[101,204,205,304],qxn=[301,302,303,307,308],Gho=new Set(qxn),$xn=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","4190","5060","5061","6000","6566","6665","6666","6667","6668","6669","6679","6697","10080"],Fho=new Set($xn),ekn=["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],Zho=new Set(ekn),Lho=["follow","manual","error"],tkn=["GET","HEAD","OPTIONS","TRACE"],Vho=new Set(tkn),Who=["navigate","same-origin","no-cors","cors"],Pho=["omit","same-origin","include"],Oho=["default","no-store","reload","no-cache","force-cache","only-if-cached"],Mho=["content-encoding","content-language","content-location","content-type","content-length"],Qho=["half"],rkn=["CONNECT","TRACE","TRACK"],Yho=new Set(rkn),nkn=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],Hho=new Set(nkn);ikn.exports={subresource:nkn,forbiddenMethods:rkn,requestBodyHeader:Mho,referrerPolicy:ekn,requestRedirect:Lho,requestMode:Who,requestCredentials:Pho,requestCache:Oho,redirectStatus:qxn,corsSafeListedMethods:zxn,nullBodyStatus:kho,safeMethods:tkn,badPorts:$xn,requestDuplex:Qho,subresourceSet:Hho,badPortsSet:Fho,redirectStatusSet:Gho,corsSafeListedMethodsSet:xho,safeMethodsSet:Vho,forbiddenMethodsSet:Yho,referrerPolicySet:Zho}});var Xer=z((J8c,skn)=>{"use strict";var Her=Symbol.for("undici.globalOrigin.1");function Xho(){return globalThis[Her]}function Jho(e){if(e===void 0){Object.defineProperty(globalThis,Her,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let t=new URL(e);if(t.protocol!=="http:"&&t.protocol!=="https:")throw new TypeError(`Only http & https urls are allowed, received ${t.protocol}`);Object.defineProperty(globalThis,Her,{value:t,writable:!0,enumerable:!1,configurable:!1})}skn.exports={getGlobalOrigin:Xho,setGlobalOrigin:Jho}});var ML=z((U8c,Akn)=>{"use strict";var rgt=Dt("node:assert"),Uho=new TextEncoder,gPe=/^[!#$%&'*+\-.^_|~A-Za-z0-9]+$/,Kho=/[\u000A\u000D\u0009\u0020]/,jho=/[\u0009\u000A\u000C\u000D\u0020]/g,zho=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function qho(e){rgt(e.protocol==="data:");let t=ckn(e,!0);t=t.slice(5);let r={position:0},s=g2e(",",t,r),a=s.length;if(s=i_o(s,!0,!0),r.position>=t.length)return"failure";r.position++;let o=t.slice(a+1),g=lkn(o);if(/;(\u0020){0,}base64$/i.test(s)){let f=gkn(g);if(g=e_o(f),g==="failure")return"failure";s=s.slice(0,-6),s=s.replace(/(\u0020)+$/,""),s=s.slice(0,-1)}s.startsWith(";")&&(s="text/plain"+s);let p=Jer(s);return p==="failure"&&(p=Jer("text/plain;charset=US-ASCII")),{mimeType:p,body:g}}function ckn(e,t=!1){if(!t)return e.href;let r=e.href,s=e.hash.length,a=s===0?r:r.substring(0,r.length-s);return!s&&r.endsWith("#")?a.slice(0,-1):a}function ngt(e,t,r){let s="";for(;r.position=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102}function akn(e){return e>=48&&e<=57?e-48:(e&223)-55}function $ho(e){let t=e.length,r=new Uint8Array(t),s=0;for(let a=0;ae.length)return"failure";t.position++;let s=g2e(";",e,t);if(s=tgt(s,!1,!0),s.length===0||!gPe.test(s))return"failure";let a=r.toLowerCase(),o=s.toLowerCase(),g={type:a,subtype:o,parameters:new Map,essence:`${a}/${o}`};for(;t.positionKho.test(m),e,t);let p=ngt(m=>m!==";"&&m!=="=",e,t);if(p=p.toLowerCase(),t.positione.length)break;let f=null;if(e[t.position]==='"')f=ukn(e,t,!0),g2e(";",e,t);else if(f=g2e(";",e,t),f=tgt(f,!1,!0),f.length===0)continue;p.length!==0&&gPe.test(p)&&(f.length===0||zho.test(f))&&!g.parameters.has(p)&&g.parameters.set(p,f)}return g}function e_o(e){e=e.replace(jho,"");let t=e.length;if(t%4===0&&e.charCodeAt(t-1)===61&&(--t,e.charCodeAt(t-1)===61&&--t),t%4===1||/[^+/0-9A-Za-z]/.test(e.length===t?e:e.substring(0,t)))return"failure";let r=Buffer.from(e,"base64");return new Uint8Array(r.buffer,r.byteOffset,r.byteLength)}function ukn(e,t,r){let s=t.position,a="";for(rgt(e[t.position]==='"'),t.position++;a+=ngt(g=>g!=='"'&&g!=="\\",e,t),!(t.position>=e.length);){let o=e[t.position];if(t.position++,o==="\\"){if(t.position>=e.length){a+="\\";break}a+=e[t.position],t.position++}else{rgt(o==='"');break}}return r?a:e.slice(s,t.position)}function t_o(e){rgt(e!=="failure");let{parameters:t,essence:r}=e,s=r;for(let[a,o]of t.entries())s+=";",s+=a,s+="=",gPe.test(o)||(o=o.replace(/(\\|")/g,"\\$1"),o='"'+o,o+='"'),s+=o;return s}function r_o(e){return e===13||e===10||e===9||e===32}function tgt(e,t=!0,r=!0){return Uer(e,t,r,r_o)}function n_o(e){return e===13||e===10||e===9||e===12||e===32}function i_o(e,t=!0,r=!0){return Uer(e,t,r,n_o)}function Uer(e,t,r,s){let a=0,o=e.length-1;if(t)for(;a0&&s(e.charCodeAt(o));)o--;return a===0&&o===e.length-1?e:e.slice(a,o+1)}function gkn(e){let t=e.length;if(65535>t)return String.fromCharCode.apply(null,e);let r="",s=0,a=65535;for(;st&&(a=t-s),r+=String.fromCharCode.apply(null,e.subarray(s,s+=a));return r}function s_o(e){switch(e.essence){case"application/ecmascript":case"application/javascript":case"application/x-ecmascript":case"application/x-javascript":case"text/ecmascript":case"text/javascript":case"text/javascript1.0":case"text/javascript1.1":case"text/javascript1.2":case"text/javascript1.3":case"text/javascript1.4":case"text/javascript1.5":case"text/jscript":case"text/livescript":case"text/x-ecmascript":case"text/x-javascript":return"text/javascript";case"application/json":case"text/json":return"application/json";case"image/svg+xml":return"image/svg+xml";case"text/xml":case"application/xml":return"application/xml"}return e.subtype.endsWith("+json")?"application/json":e.subtype.endsWith("+xml")?"application/xml":""}Akn.exports={dataURLProcessor:qho,URLSerializer:ckn,collectASequenceOfCodePoints:ngt,collectASequenceOfCodePointsFast:g2e,stringPercentDecode:lkn,parseMIMEType:Jer,collectAnHTTPQuotedString:ukn,serializeAMimeType:t_o,removeChars:Uer,removeHTTPWhitespace:tgt,minimizeSupportedMimeType:s_o,HTTP_TOKEN_CODEPOINTS:gPe,isomorphicDecode:gkn}});var ZD=z((K8c,dkn)=>{"use strict";var{types:cU,inspect:o_o}=Dt("node:util"),{toUSVString:a_o}=tm(),Ul={};Ul.converters={};Ul.util={};Ul.errors={};Ul.errors.exception=function(e){return new TypeError(`${e.header}: ${e.message}`)};Ul.errors.conversionFailed=function(e){let t=e.types.length===1?"":" one of",r=`${e.argument} could not be converted to${t}: ${e.types.join(", ")}.`;return Ul.errors.exception({header:e.prefix,message:r})};Ul.errors.invalidArgument=function(e){return Ul.errors.exception({header:e.prefix,message:`"${e.value}" is an invalid ${e.type}.`})};Ul.brandCheck=function(e,t,r){if(r?.strict!==!1){if(!(e instanceof t)){let s=new TypeError("Illegal invocation");throw s.code="ERR_INVALID_THIS",s}}else if(e?.[Symbol.toStringTag]!==t.prototype[Symbol.toStringTag]){let s=new TypeError("Illegal invocation");throw s.code="ERR_INVALID_THIS",s}};Ul.argumentLengthCheck=function({length:e},t,r){if(ea)throw Ul.errors.exception({header:"Integer conversion",message:`Value must be between ${o}-${a}, got ${g}.`});return g}return!Number.isNaN(g)&&s?.clamp===!0?(g=Math.min(Math.max(g,o),a),Math.floor(g)%2===0?g=Math.floor(g):g=Math.ceil(g),g):Number.isNaN(g)||g===0&&Object.is(0,g)||g===Number.POSITIVE_INFINITY||g===Number.NEGATIVE_INFINITY?0:(g=Ul.util.IntegerPart(g),g=g%Math.pow(2,t),r==="signed"&&g>=Math.pow(2,t)-1?g-Math.pow(2,t):g)};Ul.util.IntegerPart=function(e){let t=Math.floor(Math.abs(e));return e<0?-1*t:t};Ul.util.Stringify=function(e){switch(Ul.util.Type(e)){case"Symbol":return`Symbol(${e.description})`;case"Object":return o_o(e);case"String":return`"${e}"`;default:return`${e}`}};Ul.sequenceConverter=function(e){return(t,r,s,a)=>{if(Ul.util.Type(t)!=="Object")throw Ul.errors.exception({header:r,message:`${s} (${Ul.util.Stringify(t)}) is not iterable.`});let o=typeof a=="function"?a():t?.[Symbol.iterator]?.(),g=[],p=0;if(o===void 0||typeof o.next!="function")throw Ul.errors.exception({header:r,message:`${s} is not iterable.`});for(;;){let{done:f,value:m}=o.next();if(f)break;g.push(e(m,r,`${s}[${p++}]`))}return g}};Ul.recordConverter=function(e,t){return(r,s,a)=>{if(Ul.util.Type(r)!=="Object")throw Ul.errors.exception({header:s,message:`${a} ("${Ul.util.Type(r)}") is not an Object.`});let o={};if(!cU.isProxy(r)){let p=[...Object.getOwnPropertyNames(r),...Object.getOwnPropertySymbols(r)];for(let f of p){let m=e(f,s,a),y=t(r[f],s,a);o[m]=y}return o}let g=Reflect.ownKeys(r);for(let p of g)if(Reflect.getOwnPropertyDescriptor(r,p)?.enumerable){let m=e(p,s,a),y=t(r[p],s,a);o[m]=y}return o}};Ul.interfaceConverter=function(e){return(t,r,s,a)=>{if(a?.strict!==!1&&!(t instanceof e))throw Ul.errors.exception({header:r,message:`Expected ${s} ("${Ul.util.Stringify(t)}") to be an instance of ${e.name}.`});return t}};Ul.dictionaryConverter=function(e){return(t,r,s)=>{let a=Ul.util.Type(t),o={};if(a==="Null"||a==="Undefined")return o;if(a!=="Object")throw Ul.errors.exception({header:r,message:`Expected ${t} to be one of: Null, Undefined, Object.`});for(let g of e){let{key:p,defaultValue:f,required:m,converter:y}=g;if(m===!0&&!Object.hasOwn(t,p))throw Ul.errors.exception({header:r,message:`Missing required key "${p}".`});let B=t[p],v=Object.hasOwn(g,"defaultValue");if(v&&B!==null&&(B??=f()),m||v||B!==void 0){if(B=y(B,r,`${s}.${p}`),g.allowedValues&&!g.allowedValues.includes(B))throw Ul.errors.exception({header:r,message:`${B} is not an accepted type. Expected one of ${g.allowedValues.join(", ")}.`});o[p]=B}}return o}};Ul.nullableConverter=function(e){return(t,r,s)=>t===null?t:e(t,r,s)};Ul.converters.DOMString=function(e,t,r,s){if(e===null&&s?.legacyNullToEmptyString)return"";if(typeof e=="symbol")throw Ul.errors.exception({header:t,message:`${r} is a symbol, which cannot be converted to a DOMString.`});return String(e)};Ul.converters.ByteString=function(e,t,r){let s=Ul.converters.DOMString(e,t,r);for(let a=0;a255)throw new TypeError(`Cannot convert argument to a ByteString because the character at index ${a} has a value of ${s.charCodeAt(a)} which is greater than 255.`);return s};Ul.converters.USVString=a_o;Ul.converters.boolean=function(e){return!!e};Ul.converters.any=function(e){return e};Ul.converters["long long"]=function(e,t,r){return Ul.util.ConvertToInt(e,64,"signed",void 0,t,r)};Ul.converters["unsigned long long"]=function(e,t,r){return Ul.util.ConvertToInt(e,64,"unsigned",void 0,t,r)};Ul.converters["unsigned long"]=function(e,t,r){return Ul.util.ConvertToInt(e,32,"unsigned",void 0,t,r)};Ul.converters["unsigned short"]=function(e,t,r,s){return Ul.util.ConvertToInt(e,16,"unsigned",s,t,r)};Ul.converters.ArrayBuffer=function(e,t,r,s){if(Ul.util.Type(e)!=="Object"||!cU.isAnyArrayBuffer(e))throw Ul.errors.conversionFailed({prefix:t,argument:`${r} ("${Ul.util.Stringify(e)}")`,types:["ArrayBuffer"]});if(s?.allowShared===!1&&cU.isSharedArrayBuffer(e))throw Ul.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.resizable||e.growable)throw Ul.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};Ul.converters.TypedArray=function(e,t,r,s,a){if(Ul.util.Type(e)!=="Object"||!cU.isTypedArray(e)||e.constructor.name!==t.name)throw Ul.errors.conversionFailed({prefix:r,argument:`${s} ("${Ul.util.Stringify(e)}")`,types:[t.name]});if(a?.allowShared===!1&&cU.isSharedArrayBuffer(e.buffer))throw Ul.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.buffer.resizable||e.buffer.growable)throw Ul.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};Ul.converters.DataView=function(e,t,r,s){if(Ul.util.Type(e)!=="Object"||!cU.isDataView(e))throw Ul.errors.exception({header:t,message:`${r} is not a DataView.`});if(s?.allowShared===!1&&cU.isSharedArrayBuffer(e.buffer))throw Ul.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.buffer.resizable||e.buffer.growable)throw Ul.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};Ul.converters.BufferSource=function(e,t,r,s){if(cU.isAnyArrayBuffer(e))return Ul.converters.ArrayBuffer(e,t,r,{...s,allowShared:!1});if(cU.isTypedArray(e))return Ul.converters.TypedArray(e,e.constructor,t,r,{...s,allowShared:!1});if(cU.isDataView(e))return Ul.converters.DataView(e,t,r,{...s,allowShared:!1});throw Ul.errors.conversionFailed({prefix:t,argument:`${r} ("${Ul.util.Stringify(e)}")`,types:["BufferSource"]})};Ul.converters["sequence"]=Ul.sequenceConverter(Ul.converters.ByteString);Ul.converters["sequence>"]=Ul.sequenceConverter(Ul.converters["sequence"]);Ul.converters["record"]=Ul.recordConverter(Ul.converters.ByteString,Ul.converters.ByteString);dkn.exports={webidl:Ul}});var LW=z((j8c,wkn)=>{"use strict";var{Transform:c_o}=Dt("node:stream"),pkn=Dt("node:zlib"),{redirectStatusSet:l_o,referrerPolicySet:u_o,badPortsSet:g_o}=uPe(),{getGlobalOrigin:fkn}=Xer(),{collectASequenceOfCodePoints:Tde,collectAnHTTPQuotedString:A_o,removeChars:d_o,parseMIMEType:p_o}=ML(),{performance:f_o}=Dt("node:perf_hooks"),{isBlobLike:I_o,ReadableStreamFrom:C_o,isValidHTTPToken:Ikn,normalizedMethodRecordsBase:m_o}=tm(),Nde=Dt("node:assert"),{isUint8Array:h_o}=Dt("node:util/types"),{webidl:APe}=ZD(),Ckn=[],sgt;try{sgt=Dt("node:crypto");let e=["sha256","sha384","sha512"];Ckn=sgt.getHashes().filter(t=>e.includes(t))}catch{}function mkn(e){let t=e.urlList,r=t.length;return r===0?null:t[r-1].toString()}function __o(e,t){if(!l_o.has(e.status))return null;let r=e.headersList.get("location",!0);return r!==null&&_kn(r)&&(hkn(r)||(r=y_o(r)),r=new URL(r,mkn(e))),r&&!r.hash&&(r.hash=t),r}function hkn(e){for(let t=0;t126||r<32)return!1}return!0}function y_o(e){return Buffer.from(e,"binary").toString("utf8")}function pPe(e){return e.urlList[e.urlList.length-1]}function b_o(e){let t=pPe(e);return vkn(t)&&g_o.has(t.port)?"blocked":"allowed"}function E_o(e){return e instanceof Error||e?.constructor?.name==="Error"||e?.constructor?.name==="DOMException"}function B_o(e){for(let t=0;t=32&&r<=126||r>=128&&r<=255))return!1}return!0}var v_o=Ikn;function _kn(e){return(e[0]===" "||e[0]===" "||e[e.length-1]===" "||e[e.length-1]===" "||e.includes(` -`)||e.includes("\r")||e.includes("\0"))===!1}function S_o(e,t){let{headersList:r}=t,s=(r.get("referrer-policy",!0)??"").split(","),a="";if(s.length>0)for(let o=s.length;o!==0;o--){let g=s[o-1].trim();if(u_o.has(g)){a=g;break}}a!==""&&(e.referrerPolicy=a)}function w_o(){return"allowed"}function T_o(){return"success"}function N_o(){return"success"}function R_o(e){let t=null;t=e.mode,e.headersList.set("sec-fetch-mode",t,!0)}function D_o(e){let t=e.origin;if(!(t==="client"||t===void 0)){if(e.responseTainting==="cors"||e.mode==="websocket")e.headersList.append("origin",t,!0);else if(e.method!=="GET"&&e.method!=="HEAD"){switch(e.referrerPolicy){case"no-referrer":t=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":e.origin&&jer(e.origin)&&!jer(pPe(e))&&(t=null);break;case"same-origin":ogt(e,pPe(e))||(t=null);break;default:}e.headersList.append("origin",t,!0)}}}function A2e(e,t){return e}function x_o(e,t,r){return!e?.startTime||e.startTime4096&&(s=a);let o=ogt(e,s),g=dPe(s)&&!dPe(e.url);switch(t){case"origin":return a??Ker(r,!0);case"unsafe-url":return s;case"same-origin":return o?a:"no-referrer";case"origin-when-cross-origin":return o?s:a;case"strict-origin-when-cross-origin":{let p=pPe(e);return ogt(s,p)?s:dPe(s)&&!dPe(p)?"no-referrer":a}case"strict-origin":case"no-referrer-when-downgrade":default:return g?"no-referrer":a}}function Ker(e,t){return Nde(e instanceof URL),e=new URL(e),e.protocol==="file:"||e.protocol==="about:"||e.protocol==="blank:"?"no-referrer":(e.username="",e.password="",e.hash="",t&&(e.pathname="",e.search=""),e)}function dPe(e){if(!(e instanceof URL))return!1;if(e.href==="about:blank"||e.href==="about:srcdoc"||e.protocol==="data:"||e.protocol==="file:")return!0;return t(e.origin);function t(r){if(r==null||r==="null")return!1;let s=new URL(r);return!!(s.protocol==="https:"||s.protocol==="wss:"||/^127(?:\.[0-9]+){0,2}\.[0-9]+$|^\[(?:0*:)*?:?0*1\]$/.test(s.hostname)||s.hostname==="localhost"||s.hostname.includes("localhost.")||s.hostname.endsWith(".localhost"))}}function L_o(e,t){if(sgt===void 0)return!0;let r=bkn(t);if(r==="no metadata"||r.length===0)return!0;let s=W_o(r),a=P_o(r,s);for(let o of a){let g=o.algo,p=o.hash,f=sgt.createHash(g).update(e).digest("base64");if(f[f.length-1]==="="&&(f[f.length-2]==="="?f=f.slice(0,-2):f=f.slice(0,-1)),O_o(f,p))return!0}return!1}var V_o=/(?sha256|sha384|sha512)-((?[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\s|$)( +[!-~]*)?)?/i;function bkn(e){let t=[],r=!0;for(let s of e.split(" ")){r=!1;let a=V_o.exec(s);if(a===null||a.groups===void 0||a.groups.algo===void 0)continue;let o=a.groups.algo.toLowerCase();Ckn.includes(o)&&t.push(a.groups)}return r===!0?"no metadata":t}function W_o(e){let t=e[0].algo;if(t[3]==="5")return t;for(let r=1;r{e=s,t=a}),resolve:e,reject:t}}function Y_o(e){return e.controller.state==="aborted"}function H_o(e){return e.controller.state==="aborted"||e.controller.state==="terminated"}function X_o(e){return m_o[e.toLowerCase()]??e}function J_o(e){let t=JSON.stringify(e);if(t===void 0)throw new TypeError("Value is not JSON serializable");return Nde(typeof t=="string"),t}var U_o=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function Ekn(e,t,r=0,s=1){class a{#e;#t;#r;constructor(g,p){this.#e=g,this.#t=p,this.#r=0}next(){if(typeof this!="object"||this===null||!(#e in this))throw new TypeError(`'next' called on an object that does not implement interface ${e} Iterator.`);let g=this.#r,p=this.#e[t],f=p.length;if(g>=f)return{value:void 0,done:!0};let{[r]:m,[s]:y}=p[g];this.#r=g+1;let B;switch(this.#t){case"key":B=m;break;case"value":B=y;break;case"key+value":B=[m,y];break}return{value:B,done:!1}}}return delete a.prototype.constructor,Object.setPrototypeOf(a.prototype,U_o),Object.defineProperties(a.prototype,{[Symbol.toStringTag]:{writable:!1,enumerable:!1,configurable:!0,value:`${e} Iterator`},next:{writable:!0,enumerable:!0,configurable:!0}}),function(o,g){return new a(o,g)}}function K_o(e,t,r,s=0,a=1){let o=Ekn(e,r,s,a),g={keys:{writable:!0,enumerable:!0,configurable:!0,value:function(){return APe.brandCheck(this,t),o(this,"key")}},values:{writable:!0,enumerable:!0,configurable:!0,value:function(){return APe.brandCheck(this,t),o(this,"value")}},entries:{writable:!0,enumerable:!0,configurable:!0,value:function(){return APe.brandCheck(this,t),o(this,"key+value")}},forEach:{writable:!0,enumerable:!0,configurable:!0,value:function(f,m=globalThis){if(APe.brandCheck(this,t),APe.argumentLengthCheck(arguments,1,`${e}.forEach`),typeof f!="function")throw new TypeError(`Failed to execute 'forEach' on '${e}': parameter 1 is not of type 'Function'.`);for(let{0:y,1:B}of o(this,"key+value"))f.call(m,B,y,this)}}};return Object.defineProperties(t.prototype,{...g,[Symbol.iterator]:{writable:!0,enumerable:!1,configurable:!0,value:g.entries.value}})}async function j_o(e,t,r){let s=t,a=r,o;try{o=e.stream.getReader()}catch(g){a(g);return}try{s(await Bkn(o))}catch(g){a(g)}}function z_o(e){return e instanceof ReadableStream||e[Symbol.toStringTag]==="ReadableStream"&&typeof e.tee=="function"}function q_o(e){try{e.close(),e.byobRequest?.respond(0)}catch(t){if(!t.message.includes("Controller is already closed")&&!t.message.includes("ReadableStream is already closed"))throw t}}var $_o=/[^\x00-\xFF]/;function igt(e){return Nde(!$_o.test(e)),e}async function Bkn(e){let t=[],r=0;for(;;){let{done:s,value:a}=await e.read();if(s)return Buffer.concat(t,r);if(!h_o(a))throw new TypeError("Received non-Uint8Array chunk");t.push(a),r+=a.length}}function e0o(e){Nde("protocol"in e);let t=e.protocol;return t==="about:"||t==="blob:"||t==="data:"}function jer(e){return typeof e=="string"&&e[5]===":"&&e[0]==="h"&&e[1]==="t"&&e[2]==="t"&&e[3]==="p"&&e[4]==="s"||e.protocol==="https:"}function vkn(e){Nde("protocol"in e);let t=e.protocol;return t==="http:"||t==="https:"}function t0o(e,t){let r=e;if(!r.startsWith("bytes"))return"failure";let s={position:5};if(t&&Tde(f=>f===" "||f===" ",r,s),r.charCodeAt(s.position)!==61)return"failure";s.position++,t&&Tde(f=>f===" "||f===" ",r,s);let a=Tde(f=>{let m=f.charCodeAt(0);return m>=48&&m<=57},r,s),o=a.length?Number(a):null;if(t&&Tde(f=>f===" "||f===" ",r,s),r.charCodeAt(s.position)!==45)return"failure";s.position++,t&&Tde(f=>f===" "||f===" ",r,s);let g=Tde(f=>{let m=f.charCodeAt(0);return m>=48&&m<=57},r,s),p=g.length?Number(g):null;return s.positionp?"failure":{rangeStartValue:o,rangeEndValue:p}}function r0o(e,t,r){let s="bytes ";return s+=igt(`${e}`),s+="-",s+=igt(`${t}`),s+="/",s+=igt(`${r}`),s}var zer=class extends c_o{#e;constructor(t){super(),this.#e=t}_transform(t,r,s){if(!this._inflateStream){if(t.length===0){s();return}this._inflateStream=(t[0]&15)===8?pkn.createInflate(this.#e):pkn.createInflateRaw(this.#e),this._inflateStream.on("data",this.push.bind(this)),this._inflateStream.on("end",()=>this.push(null)),this._inflateStream.on("error",a=>this.destroy(a))}this._inflateStream.write(t,r,s)}_final(t){this._inflateStream&&(this._inflateStream.end(),this._inflateStream=null),t()}};function n0o(e){return new zer(e)}function i0o(e){let t=null,r=null,s=null,a=Skn("content-type",e);if(a===null)return"failure";for(let o of a){let g=p_o(o);g==="failure"||g.essence==="*/*"||(s=g,s.essence!==r?(t=null,s.parameters.has("charset")&&(t=s.parameters.get("charset")),r=s.essence):!s.parameters.has("charset")&&t!==null&&s.parameters.set("charset",t))}return s??"failure"}function s0o(e){let t=e,r={position:0},s=[],a="";for(;r.positiono!=='"'&&o!==",",t,r),r.positiono===9||o===32),s.push(a),a=""}return s}function Skn(e,t){let r=t.get(e,!0);return r===null?null:s0o(r)}var o0o=new TextDecoder;function a0o(e){return e.length===0?"":(e[0]===239&&e[1]===187&&e[2]===191&&(e=e.subarray(3)),o0o.decode(e))}var qer=class{get baseUrl(){return fkn()}get origin(){return this.baseUrl?.origin}policyContainer=ykn()},$er=class{settingsObject=new qer},c0o=new $er;wkn.exports={isAborted:Y_o,isCancelled:H_o,isValidEncodedURL:hkn,createDeferredPromise:Q_o,ReadableStreamFrom:C_o,tryUpgradeRequestToAPotentiallyTrustworthyURL:M_o,clampAndCoarsenConnectionTimingInfo:x_o,coarsenedSharedCurrentTime:k_o,determineRequestsReferrer:Z_o,makePolicyContainer:ykn,clonePolicyContainer:F_o,appendFetchMetadata:R_o,appendRequestOriginHeader:D_o,TAOCheck:N_o,corsCheck:T_o,crossOriginResourcePolicyCheck:w_o,createOpaqueTimingInfo:G_o,setRequestReferrerPolicyOnRedirect:S_o,isValidHTTPToken:Ikn,requestBadPort:b_o,requestCurrentURL:pPe,responseURL:mkn,responseLocationURL:__o,isBlobLike:I_o,isURLPotentiallyTrustworthy:dPe,isValidReasonPhrase:B_o,sameOrigin:ogt,normalizeMethod:X_o,serializeJavascriptValueToJSONString:J_o,iteratorMixin:K_o,createIterator:Ekn,isValidHeaderName:v_o,isValidHeaderValue:_kn,isErrorLike:E_o,fullyReadBody:j_o,bytesMatch:L_o,isReadableStreamLike:z_o,readableStreamClose:q_o,isomorphicEncode:igt,urlIsLocal:e0o,urlHasHttpsScheme:jer,urlIsHttpHttpsScheme:vkn,readAllBytes:Bkn,simpleRangeHeaderValue:t0o,buildContentRange:r0o,parseMetadata:bkn,createInflate:n0o,extractMimeType:i0o,getDecodeSplit:Skn,utf8DecodeBytes:a0o,environmentSettingsObject:c0o}});var pie=z((z8c,Tkn)=>{"use strict";Tkn.exports={kUrl:Symbol("url"),kHeaders:Symbol("headers"),kSignal:Symbol("signal"),kState:Symbol("state"),kDispatcher:Symbol("dispatcher")}});var ttr=z((q8c,Nkn)=>{"use strict";var{Blob:l0o,File:u0o}=Dt("node:buffer"),{kState:qj}=pie(),{webidl:lU}=ZD(),etr=class e{constructor(t,r,s={}){let a=r,o=s.type,g=s.lastModified??Date.now();this[qj]={blobLike:t,name:a,type:o,lastModified:g}}stream(...t){return lU.brandCheck(this,e),this[qj].blobLike.stream(...t)}arrayBuffer(...t){return lU.brandCheck(this,e),this[qj].blobLike.arrayBuffer(...t)}slice(...t){return lU.brandCheck(this,e),this[qj].blobLike.slice(...t)}text(...t){return lU.brandCheck(this,e),this[qj].blobLike.text(...t)}get size(){return lU.brandCheck(this,e),this[qj].blobLike.size}get type(){return lU.brandCheck(this,e),this[qj].blobLike.type}get name(){return lU.brandCheck(this,e),this[qj].name}get lastModified(){return lU.brandCheck(this,e),this[qj].lastModified}get[Symbol.toStringTag](){return"File"}};lU.converters.Blob=lU.interfaceConverter(l0o);function g0o(e){return e instanceof u0o||e&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&e[Symbol.toStringTag]==="File"}Nkn.exports={FileLike:etr,isFileLike:g0o}});var IPe=z(($8c,Gkn)=>{"use strict";var{isBlobLike:agt,iteratorMixin:A0o}=LW(),{kState:kF}=pie(),{kEnumerableProperty:d2e}=tm(),{FileLike:Rkn,isFileLike:d0o}=ttr(),{webidl:i1}=ZD(),{File:kkn}=Dt("node:buffer"),Dkn=Dt("node:util"),xkn=globalThis.File??kkn,fPe=class e{constructor(t){if(t!==void 0)throw i1.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]});this[kF]=[]}append(t,r,s=void 0){i1.brandCheck(this,e);let a="FormData.append";if(i1.argumentLengthCheck(arguments,2,a),arguments.length===3&&!agt(r))throw new TypeError("Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'");t=i1.converters.USVString(t,a,"name"),r=agt(r)?i1.converters.Blob(r,a,"value",{strict:!1}):i1.converters.USVString(r,a,"value"),s=arguments.length===3?i1.converters.USVString(s,a,"filename"):void 0;let o=rtr(t,r,s);this[kF].push(o)}delete(t){i1.brandCheck(this,e);let r="FormData.delete";i1.argumentLengthCheck(arguments,1,r),t=i1.converters.USVString(t,r,"name"),this[kF]=this[kF].filter(s=>s.name!==t)}get(t){i1.brandCheck(this,e);let r="FormData.get";i1.argumentLengthCheck(arguments,1,r),t=i1.converters.USVString(t,r,"name");let s=this[kF].findIndex(a=>a.name===t);return s===-1?null:this[kF][s].value}getAll(t){i1.brandCheck(this,e);let r="FormData.getAll";return i1.argumentLengthCheck(arguments,1,r),t=i1.converters.USVString(t,r,"name"),this[kF].filter(s=>s.name===t).map(s=>s.value)}has(t){i1.brandCheck(this,e);let r="FormData.has";return i1.argumentLengthCheck(arguments,1,r),t=i1.converters.USVString(t,r,"name"),this[kF].findIndex(s=>s.name===t)!==-1}set(t,r,s=void 0){i1.brandCheck(this,e);let a="FormData.set";if(i1.argumentLengthCheck(arguments,2,a),arguments.length===3&&!agt(r))throw new TypeError("Failed to execute 'set' on 'FormData': parameter 2 is not of type 'Blob'");t=i1.converters.USVString(t,a,"name"),r=agt(r)?i1.converters.Blob(r,a,"name",{strict:!1}):i1.converters.USVString(r,a,"name"),s=arguments.length===3?i1.converters.USVString(s,a,"name"):void 0;let o=rtr(t,r,s),g=this[kF].findIndex(p=>p.name===t);g!==-1?this[kF]=[...this[kF].slice(0,g),o,...this[kF].slice(g+1).filter(p=>p.name!==t)]:this[kF].push(o)}[Dkn.inspect.custom](t,r){let s=this[kF].reduce((o,g)=>(o[g.name]?Array.isArray(o[g.name])?o[g.name].push(g.value):o[g.name]=[o[g.name],g.value]:o[g.name]=g.value,o),{__proto__:null});r.depth??=t,r.colors??=!0;let a=Dkn.formatWithOptions(r,s);return`FormData ${a.slice(a.indexOf("]")+2)}`}};A0o("FormData",fPe,kF,"name","value");Object.defineProperties(fPe.prototype,{append:d2e,delete:d2e,get:d2e,getAll:d2e,has:d2e,set:d2e,[Symbol.toStringTag]:{value:"FormData",configurable:!0}});function rtr(e,t,r){if(typeof t!="string"){if(d0o(t)||(t=t instanceof Blob?new xkn([t],"blob",{type:t.type}):new Rkn(t,"blob",{type:t.type})),r!==void 0){let s={type:t.type,lastModified:t.lastModified};t=t instanceof kkn?new xkn([t],r,s):new Rkn(t,r,s)}}return{name:e,value:t}}Gkn.exports={FormData:fPe,makeEntry:rtr}});var Pkn=z((e6c,Wkn)=>{"use strict";var{isUSVString:Fkn,bufferToLowerCasedHeaderName:p0o}=tm(),{utf8DecodeBytes:f0o}=LW(),{HTTP_TOKEN_CODEPOINTS:I0o,isomorphicDecode:Zkn}=ML(),{isFileLike:C0o}=ttr(),{makeEntry:m0o}=IPe(),cgt=Dt("node:assert"),{File:h0o}=Dt("node:buffer"),_0o=globalThis.File??h0o,y0o=Buffer.from('form-data; name="'),Lkn=Buffer.from("; filename"),b0o=Buffer.from("--"),E0o=Buffer.from(`--\r -`);function B0o(e){for(let t=0;t70)return!1;for(let r=0;r=48&&s<=57||s>=65&&s<=90||s>=97&&s<=122||s===39||s===45||s===95))return!1}return!0}function S0o(e,t){cgt(t!=="failure"&&t.essence==="multipart/form-data");let r=t.parameters.get("boundary");if(r===void 0)return"failure";let s=Buffer.from(`--${r}`,"utf8"),a=[],o={position:0};for(;e[o.position]===13&&e[o.position+1]===10;)o.position+=2;let g=e.length;for(;e[g-1]===10&&e[g-2]===13;)g-=2;for(g!==e.length&&(e=e.subarray(0,g));;){if(e.subarray(o.position,o.position+s.length).equals(s))o.position+=s.length;else return"failure";if(o.position===e.length-2&&lgt(e,b0o,o)||o.position===e.length-4&&lgt(e,E0o,o))return a;if(e[o.position]!==13||e[o.position+1]!==10)return"failure";o.position+=2;let p=w0o(e,o);if(p==="failure")return"failure";let{name:f,filename:m,contentType:y,encoding:B}=p;o.position+=2;let v;{let T=e.indexOf(s.subarray(2),o.position);if(T===-1)return"failure";v=e.subarray(o.position,T-4),o.position+=v.length,B==="base64"&&(v=Buffer.from(v.toString(),"base64"))}if(e[o.position]!==13||e[o.position+1]!==10)return"failure";o.position+=2;let G;m!==null?(y??="text/plain",B0o(y)||(y=""),G=new _0o([v],m,{type:y})):G=f0o(Buffer.from(v)),cgt(Fkn(f)),cgt(typeof G=="string"&&Fkn(G)||C0o(G)),a.push(m0o(f,G,m))}}function w0o(e,t){let r=null,s=null,a=null,o=null;for(;;){if(e[t.position]===13&&e[t.position+1]===10)return r===null?"failure":{name:r,filename:s,contentType:a,encoding:o};let g=p2e(p=>p!==10&&p!==13&&p!==58,e,t);if(g=ntr(g,!0,!0,p=>p===9||p===32),!I0o.test(g.toString())||e[t.position]!==58)return"failure";switch(t.position++,p2e(p=>p===32||p===9,e,t),p0o(g)){case"content-disposition":{if(r=s=null,!lgt(e,y0o,t)||(t.position+=17,r=Vkn(e,t),r===null))return"failure";if(lgt(e,Lkn,t)){let p=t.position+Lkn.length;if(e[p]===42&&(t.position+=1,p+=1),e[p]!==61||e[p+1]!==34||(t.position+=12,s=Vkn(e,t),s===null))return"failure"}break}case"content-type":{let p=p2e(f=>f!==10&&f!==13,e,t);p=ntr(p,!1,!0,f=>f===9||f===32),a=Zkn(p);break}case"content-transfer-encoding":{let p=p2e(f=>f!==10&&f!==13,e,t);p=ntr(p,!1,!0,f=>f===9||f===32),o=Zkn(p);break}default:p2e(p=>p!==10&&p!==13,e,t)}if(e[t.position]!==13&&e[t.position+1]!==10)return"failure";t.position+=2}}function Vkn(e,t){cgt(e[t.position-1]===34);let r=p2e(s=>s!==10&&s!==13&&s!==34,e,t);return e[t.position]!==34?null:(t.position++,r=new TextDecoder().decode(r).replace(/%0A/ig,` -`).replace(/%0D/ig,"\r").replace(/%22/g,'"'),r)}function p2e(e,t,r){let s=r.position;for(;s0&&s(e[o]);)o--;return a===0&&o===e.length-1?e:e.subarray(a,o+1)}function lgt(e,t,r){if(e.length{"use strict";var CPe=tm(),{ReadableStreamFrom:T0o,isBlobLike:Okn,isReadableStreamLike:N0o,readableStreamClose:R0o,createDeferredPromise:D0o,fullyReadBody:x0o,extractMimeType:k0o,utf8DecodeBytes:Ykn}=LW(),{FormData:Mkn}=IPe(),{kState:I2e}=pie(),{webidl:G0o}=ZD(),{Blob:F0o}=Dt("node:buffer"),itr=Dt("node:assert"),{isErrored:Hkn,isDisturbed:Z0o}=Dt("node:stream"),{isArrayBuffer:L0o}=Dt("node:util/types"),{serializeAMimeType:V0o}=ML(),{multipartFormDataParser:W0o}=Pkn(),ugt=new TextEncoder;function P0o(){}var str=globalThis.FinalizationRegistry&&process.version.indexOf("v18")!==0,otr;str&&(otr=new FinalizationRegistry(e=>{let t=e.deref();t&&!t.locked&&!Z0o(t)&&!Hkn(t)&&t.cancel("Response object has been garbage collected").catch(P0o)}));function Xkn(e,t=!1){let r=null;e instanceof ReadableStream?r=e:Okn(e)?r=e.stream():r=new ReadableStream({async pull(f){let m=typeof a=="string"?ugt.encode(a):a;m.byteLength&&f.enqueue(m),queueMicrotask(()=>R0o(f))},start(){},type:"bytes"}),itr(N0o(r));let s=null,a=null,o=null,g=null;if(typeof e=="string")a=e,g="text/plain;charset=UTF-8";else if(e instanceof URLSearchParams)a=e.toString(),g="application/x-www-form-urlencoded;charset=UTF-8";else if(L0o(e))a=new Uint8Array(e.slice());else if(ArrayBuffer.isView(e))a=new Uint8Array(e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength));else if(CPe.isFormDataLike(e)){let f=`----formdata-undici-0${`${Math.floor(Math.random()*1e11)}`.padStart(11,"0")}`,m=`--${f}\r +`.trim())}};UNn.exports=m$t});var tRn=z((f8c,eRn)=>{"use strict";var{kProxy:mpo,kClose:hpo,kDestroy:_po,kInterceptors:ypo}=lE(),{URL:jNn}=xt("url"),zNn=H3e(),bpo=G1e(),Epo=D3e(),{InvalidArgumentError:K3e,RequestAbortedError:Bpo}=yb(),qNn=x3e(),J3e=Symbol("proxy agent"),zlt=Symbol("proxy client"),U3e=Symbol("proxy headers"),h$t=Symbol("request tls settings"),vpo=Symbol("proxy tls settings"),$Nn=Symbol("connect endpoint function");function Spo(e){return e==="https:"?443:80}function wpo(e){if(typeof e=="string"&&(e={uri:e}),!e||!e.uri)throw new K3e("Proxy opts.uri is mandatory");return{uri:e.uri,protocol:e.protocol||"https"}}function Tpo(e,t){return new bpo(e,t)}var _$t=class extends Epo{constructor(t){if(super(t),this[mpo]=wpo(t),this[J3e]=new zNn(t),this[ypo]=t.interceptors&&t.interceptors.ProxyAgent&&Array.isArray(t.interceptors.ProxyAgent)?t.interceptors.ProxyAgent:[],typeof t=="string"&&(t={uri:t}),!t||!t.uri)throw new K3e("Proxy opts.uri is mandatory");let{clientFactory:r=Tpo}=t;if(typeof r!="function")throw new K3e("Proxy opts.clientFactory must be a function.");this[h$t]=t.requestTls,this[vpo]=t.proxyTls,this[U3e]=t.headers||{};let s=new jNn(t.uri),{origin:a,port:o,host:g,username:p,password:f}=s;if(t.auth&&t.token)throw new K3e("opts.auth cannot be used in combination with opts.token");t.auth?this[U3e]["proxy-authorization"]=`Basic ${t.auth}`:t.token?this[U3e]["proxy-authorization"]=t.token:p&&f&&(this[U3e]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(p)}:${decodeURIComponent(f)}`).toString("base64")}`);let m=qNn({...t.proxyTls});this[$Nn]=qNn({...t.requestTls}),this[zlt]=r(s,{connect:m}),this[J3e]=new zNn({...t,connect:async(y,B)=>{let v=y.host;y.port||(v+=`:${Spo(y.protocol)}`);try{let{socket:k,statusCode:T}=await this[zlt].connect({origin:a,port:o,path:v,signal:y.signal,headers:{...this[U3e],host:g}});if(T!==200&&(k.on("error",()=>{}).destroy(),B(new Bpo(`Proxy response (${T}) !== 200 when HTTP Tunneling`))),y.protocol!=="https:"){B(null,k);return}let O;this[h$t]?O=this[h$t].servername:O=y.servername,this[$Nn]({...y,servername:O,httpSocket:k},B)}catch(k){B(k)}}})}dispatch(t,r){let{host:s}=new jNn(t.origin),a=Npo(t.headers);return Rpo(a),this[J3e].dispatch({...t,headers:{...a,host:s}},r)}async[hpo](){await this[J3e].close(),await this[zlt].close()}async[_po](){await this[J3e].destroy(),await this[zlt].destroy()}};function Npo(e){if(Array.isArray(e)){let t={};for(let r=0;rr.toLowerCase()==="proxy-authorization"))throw new K3e("Proxy-Authorization should be sent in ProxyAgent constructor")}eRn.exports=_$t});var oRn=z((I8c,sRn)=>{var Tde=xt("assert"),{kRetryHandlerDefaultRetry:rRn}=lE(),{RequestRetryError:qlt}=yb(),{isDisturbed:nRn,parseHeaders:Dpo,parseRangeHeader:iRn}=Ch();function xpo(e){let t=Date.now();return new Date(e).getTime()-t}var y$t=class e{constructor(t,r){let{retryOptions:s,...a}=t,{retry:o,maxRetries:g,maxTimeout:p,minTimeout:f,timeoutFactor:m,methods:y,errorCodes:B,retryAfter:v,statusCodes:k}=s??{};this.dispatch=r.dispatch,this.handler=r.handler,this.opts=a,this.abort=null,this.aborted=!1,this.retryOpts={retry:o??e[rRn],retryAfter:v??!0,maxTimeout:p??30*1e3,timeout:f??500,timeoutFactor:m??2,maxRetries:g??5,methods:y??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:k??[500,502,503,504,429],errorCodes:B??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE"]},this.retryCount=0,this.start=0,this.end=null,this.etag=null,this.resume=null,this.handler.onConnect(T=>{this.aborted=!0,this.abort?this.abort(T):this.reason=T})}onRequestSent(){this.handler.onRequestSent&&this.handler.onRequestSent()}onUpgrade(t,r,s){this.handler.onUpgrade&&this.handler.onUpgrade(t,r,s)}onConnect(t){this.aborted?t(this.reason):this.abort=t}onBodySent(t){if(this.handler.onBodySent)return this.handler.onBodySent(t)}static[rRn](t,{state:r,opts:s},a){let{statusCode:o,code:g,headers:p}=t,{method:f,retryOptions:m}=s,{maxRetries:y,timeout:B,maxTimeout:v,timeoutFactor:k,statusCodes:T,errorCodes:O,methods:X}=m,{counter:U,currentTimeout:le}=r;if(le=le!=null&&le>0?le:B,g&&g!=="UND_ERR_REQ_RETRY"&&g!=="UND_ERR_SOCKET"&&!O.includes(g)){a(t);return}if(Array.isArray(X)&&!X.includes(f)){a(t);return}if(o!=null&&Array.isArray(T)&&!T.includes(o)){a(t);return}if(U>y){a(t);return}let ae=p!=null&&p["retry-after"];ae&&(ae=Number(ae),ae=isNaN(ae)?xpo(ae):ae*1e3);let ge=ae>0?Math.min(ae,v):Math.min(le*k**U,v);r.currentTimeout=ge,setTimeout(()=>a(null),ge)}onHeaders(t,r,s,a){let o=Dpo(r);if(this.retryCount+=1,t>=300)return this.abort(new qlt("Request failed",t,{headers:o,count:this.retryCount})),!1;if(this.resume!=null){if(this.resume=null,t!==206)return!0;let p=iRn(o["content-range"]);if(!p)return this.abort(new qlt("Content-Range mismatch",t,{headers:o,count:this.retryCount})),!1;if(this.etag!=null&&this.etag!==o.etag)return this.abort(new qlt("ETag mismatch",t,{headers:o,count:this.retryCount})),!1;let{start:f,size:m,end:y=m}=p;return Tde(this.start===f,"content-range mismatch"),Tde(this.end==null||this.end===y,"content-range mismatch"),this.resume=s,!0}if(this.end==null){if(t===206){let p=iRn(o["content-range"]);if(p==null)return this.handler.onHeaders(t,r,s,a);let{start:f,size:m,end:y=m}=p;Tde(f!=null&&Number.isFinite(f)&&this.start!==f,"content-range mismatch"),Tde(Number.isFinite(f)),Tde(y!=null&&Number.isFinite(y)&&this.end!==y,"invalid content-length"),this.start=f,this.end=y}if(this.end==null){let p=o["content-length"];this.end=p!=null?Number(p):null}return Tde(Number.isFinite(this.start)),Tde(this.end==null||Number.isFinite(this.end),"invalid content-length"),this.resume=s,this.etag=o.etag!=null?o.etag:null,this.handler.onHeaders(t,r,s,a)}let g=new qlt("Request failed",t,{headers:o,count:this.retryCount});return this.abort(g),!1}onData(t){return this.start+=t.length,this.handler.onData(t)}onComplete(t){return this.retryCount=0,this.handler.onComplete(t)}onError(t){if(this.aborted||nRn(this.opts.body))return this.handler.onError(t);this.retryOpts.retry(t,{state:{counter:this.retryCount++,currentTimeout:this.retryAfter},opts:{retryOptions:this.retryOpts,...this.opts}},r.bind(this));function r(s){if(s!=null||this.aborted||nRn(this.opts.body))return this.handler.onError(s);this.start!==0&&(this.opts={...this.opts,headers:{...this.opts.headers,range:`bytes=${this.start}-${this.end??""}`}});try{this.dispatch(this.opts,this)}catch(a){this.handler.onError(a)}}}};sRn.exports=y$t});var M1e=z((C8c,uRn)=>{"use strict";var aRn=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:kpo}=yb(),Gpo=H3e();lRn()===void 0&&cRn(new Gpo);function cRn(e){if(!e||typeof e.dispatch!="function")throw new kpo("Argument agent must implement Agent");Object.defineProperty(globalThis,aRn,{value:e,writable:!0,enumerable:!1,configurable:!1})}function lRn(){return globalThis[aRn]}uRn.exports={setGlobalDispatcher:cRn,getGlobalDispatcher:lRn}});var ARn=z((h8c,gRn)=>{"use strict";gRn.exports=class{constructor(t){this.handler=t}onConnect(...t){return this.handler.onConnect(...t)}onError(...t){return this.handler.onError(...t)}onUpgrade(...t){return this.handler.onUpgrade(...t)}onHeaders(...t){return this.handler.onHeaders(...t)}onData(...t){return this.handler.onData(...t)}onComplete(...t){return this.handler.onComplete(...t)}onBodySent(...t){return this.handler.onBodySent(...t)}}});var Nde=z((_8c,CRn)=>{"use strict";var{kHeadersList:PL,kConstruct:Fpo}=lE(),{kGuard:aU}=Qj(),{kEnumerableProperty:oU}=Ch(),{makeIterator:H1e,isValidHeaderName:j3e,isValidHeaderValue:pRn}=XO(),{webidl:OC}=DF(),Zpo=xt("assert"),WL=Symbol("headers map"),VD=Symbol("headers map sorted");function dRn(e){return e===10||e===13||e===9||e===32}function fRn(e){let t=0,r=e.length;for(;r>t&&dRn(e.charCodeAt(r-1));)--r;for(;r>t&&dRn(e.charCodeAt(t));)++t;return t===0&&r===e.length?e:e.substring(t,r)}function IRn(e,t){if(Array.isArray(t))for(let r=0;r>","record"]})}function b$t(e,t,r){if(r=fRn(r),j3e(t)){if(!pRn(r))throw OC.errors.invalidArgument({prefix:"Headers.append",value:r,type:"header value"})}else throw OC.errors.invalidArgument({prefix:"Headers.append",value:t,type:"header name"});if(e[aU]==="immutable")throw new TypeError("immutable");return e[aU],e[PL].append(t,r)}var $lt=class e{cookies=null;constructor(t){t instanceof e?(this[WL]=new Map(t[WL]),this[VD]=t[VD],this.cookies=t.cookies===null?null:[...t.cookies]):(this[WL]=new Map(t),this[VD]=null)}contains(t){return t=t.toLowerCase(),this[WL].has(t)}clear(){this[WL].clear(),this[VD]=null,this.cookies=null}append(t,r){this[VD]=null;let s=t.toLowerCase(),a=this[WL].get(s);if(a){let o=s==="cookie"?"; ":", ";this[WL].set(s,{name:a.name,value:`${a.value}${o}${r}`})}else this[WL].set(s,{name:t,value:r});s==="set-cookie"&&(this.cookies??=[],this.cookies.push(r))}set(t,r){this[VD]=null;let s=t.toLowerCase();s==="set-cookie"&&(this.cookies=[r]),this[WL].set(s,{name:t,value:r})}delete(t){this[VD]=null,t=t.toLowerCase(),t==="set-cookie"&&(this.cookies=null),this[WL].delete(t)}get(t){let r=this[WL].get(t.toLowerCase());return r===void 0?null:r.value}*[Symbol.iterator](){for(let[t,{value:r}]of this[WL])yield[t,r]}get entries(){let t={};if(this[WL].size)for(let{name:r,value:s}of this[WL].values())t[r]=s;return t}},Y1e=class e{constructor(t=void 0){t!==Fpo&&(this[PL]=new $lt,this[aU]="none",t!==void 0&&(t=OC.converters.HeadersInit(t),IRn(this,t)))}append(t,r){return OC.brandCheck(this,e),OC.argumentLengthCheck(arguments,2,{header:"Headers.append"}),t=OC.converters.ByteString(t),r=OC.converters.ByteString(r),b$t(this,t,r)}delete(t){if(OC.brandCheck(this,e),OC.argumentLengthCheck(arguments,1,{header:"Headers.delete"}),t=OC.converters.ByteString(t),!j3e(t))throw OC.errors.invalidArgument({prefix:"Headers.delete",value:t,type:"header name"});if(this[aU]==="immutable")throw new TypeError("immutable");this[aU],this[PL].contains(t)&&this[PL].delete(t)}get(t){if(OC.brandCheck(this,e),OC.argumentLengthCheck(arguments,1,{header:"Headers.get"}),t=OC.converters.ByteString(t),!j3e(t))throw OC.errors.invalidArgument({prefix:"Headers.get",value:t,type:"header name"});return this[PL].get(t)}has(t){if(OC.brandCheck(this,e),OC.argumentLengthCheck(arguments,1,{header:"Headers.has"}),t=OC.converters.ByteString(t),!j3e(t))throw OC.errors.invalidArgument({prefix:"Headers.has",value:t,type:"header name"});return this[PL].contains(t)}set(t,r){if(OC.brandCheck(this,e),OC.argumentLengthCheck(arguments,2,{header:"Headers.set"}),t=OC.converters.ByteString(t),r=OC.converters.ByteString(r),r=fRn(r),j3e(t)){if(!pRn(r))throw OC.errors.invalidArgument({prefix:"Headers.set",value:r,type:"header value"})}else throw OC.errors.invalidArgument({prefix:"Headers.set",value:t,type:"header name"});if(this[aU]==="immutable")throw new TypeError("immutable");this[aU],this[PL].set(t,r)}getSetCookie(){OC.brandCheck(this,e);let t=this[PL].cookies;return t?[...t]:[]}get[VD](){if(this[PL][VD])return this[PL][VD];let t=[],r=[...this[PL]].sort((a,o)=>a[0]t,"Headers","key")}return H1e(()=>[...this[VD].values()],"Headers","key")}values(){if(OC.brandCheck(this,e),this[aU]==="immutable"){let t=this[VD];return H1e(()=>t,"Headers","value")}return H1e(()=>[...this[VD].values()],"Headers","value")}entries(){if(OC.brandCheck(this,e),this[aU]==="immutable"){let t=this[VD];return H1e(()=>t,"Headers","key+value")}return H1e(()=>[...this[VD].values()],"Headers","key+value")}forEach(t,r=globalThis){if(OC.brandCheck(this,e),OC.argumentLengthCheck(arguments,1,{header:"Headers.forEach"}),typeof t!="function")throw new TypeError("Failed to execute 'forEach' on 'Headers': parameter 1 is not of type 'Function'.");for(let[s,a]of this)t.apply(r,[a,s,this])}[Symbol.for("nodejs.util.inspect.custom")](){return OC.brandCheck(this,e),this[PL]}};Y1e.prototype[Symbol.iterator]=Y1e.prototype.entries;Object.defineProperties(Y1e.prototype,{append:oU,delete:oU,get:oU,has:oU,set:oU,getSetCookie:oU,keys:oU,values:oU,entries:oU,forEach:oU,[Symbol.iterator]:{enumerable:!1},[Symbol.toStringTag]:{value:"Headers",configurable:!0}});OC.converters.HeadersInit=function(e){if(OC.util.Type(e)==="Object")return e[Symbol.iterator]?OC.converters["sequence>"](e):OC.converters["record"](e);throw OC.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence>","record"]})};CRn.exports={fill:IRn,Headers:Y1e,HeadersList:$lt}});var nut=z((y8c,vRn)=>{"use strict";var{Headers:Lpo,HeadersList:mRn,fill:Vpo}=Nde(),{extractBody:hRn,cloneBody:Wpo,mixinBody:Ppo}=T3e(),v$t=Ch(),{kEnumerableProperty:GW}=v$t,{isValidReasonPhrase:Opo,isCancelled:Qpo,isAborted:Mpo,isBlobLike:Hpo,serializeJavascriptValueToJSONString:Ypo,isErrorLike:Xpo,isomorphicEncode:Jpo}=XO(),{redirectStatusSet:Upo,nullBodyStatus:Kpo,DOMException:_Rn}=sie(),{kState:j1,kHeaders:dR,kGuard:X1e,kRealm:kW}=Qj(),{webidl:vC}=DF(),{FormData:jpo}=dlt(),{getGlobalOrigin:zpo}=y1e(),{URLSerializer:yRn}=WH(),{kHeadersList:E$t,kConstruct:qpo}=lE(),S$t=xt("assert"),{types:B$t}=xt("util"),ERn=globalThis.ReadableStream||xt("stream/web").ReadableStream,$po=new TextEncoder("utf-8"),J1e=class e{static error(){let t={settingsObject:{}},r=new e;return r[j1]=tut(),r[kW]=t,r[dR][E$t]=r[j1].headersList,r[dR][X1e]="immutable",r[dR][kW]=t,r}static json(t,r={}){vC.argumentLengthCheck(arguments,1,{header:"Response.json"}),r!==null&&(r=vC.converters.ResponseInit(r));let s=$po.encode(Ypo(t)),a=hRn(s),o={settingsObject:{}},g=new e;return g[kW]=o,g[dR][X1e]="response",g[dR][kW]=o,bRn(g,r,{body:a[0],type:"application/json"}),g}static redirect(t,r=302){let s={settingsObject:{}};vC.argumentLengthCheck(arguments,1,{header:"Response.redirect"}),t=vC.converters.USVString(t),r=vC.converters["unsigned short"](r);let a;try{a=new URL(t,zpo())}catch(p){throw Object.assign(new TypeError("Failed to parse URL from "+t),{cause:p})}if(!Upo.has(r))throw new RangeError("Invalid status code "+r);let o=new e;o[kW]=s,o[dR][X1e]="immutable",o[dR][kW]=s,o[j1].status=r;let g=Jpo(yRn(a));return o[j1].headersList.append("location",g),o}constructor(t=null,r={}){t!==null&&(t=vC.converters.BodyInit(t)),r=vC.converters.ResponseInit(r),this[kW]={settingsObject:{}},this[j1]=rut({}),this[dR]=new Lpo(qpo),this[dR][X1e]="response",this[dR][E$t]=this[j1].headersList,this[dR][kW]=this[kW];let s=null;if(t!=null){let[a,o]=hRn(t);s={body:a,type:o}}bRn(this,r,s)}get type(){return vC.brandCheck(this,e),this[j1].type}get url(){vC.brandCheck(this,e);let t=this[j1].urlList,r=t[t.length-1]??null;return r===null?"":yRn(r,!0)}get redirected(){return vC.brandCheck(this,e),this[j1].urlList.length>1}get status(){return vC.brandCheck(this,e),this[j1].status}get ok(){return vC.brandCheck(this,e),this[j1].status>=200&&this[j1].status<=299}get statusText(){return vC.brandCheck(this,e),this[j1].statusText}get headers(){return vC.brandCheck(this,e),this[dR]}get body(){return vC.brandCheck(this,e),this[j1].body?this[j1].body.stream:null}get bodyUsed(){return vC.brandCheck(this,e),!!this[j1].body&&v$t.isDisturbed(this[j1].body.stream)}clone(){if(vC.brandCheck(this,e),this.bodyUsed||this.body&&this.body.locked)throw vC.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let t=w$t(this[j1]),r=new e;return r[j1]=t,r[kW]=this[kW],r[dR][E$t]=t.headersList,r[dR][X1e]=this[dR][X1e],r[dR][kW]=this[dR][kW],r}};Ppo(J1e);Object.defineProperties(J1e.prototype,{type:GW,url:GW,status:GW,ok:GW,redirected:GW,statusText:GW,headers:GW,clone:GW,body:GW,bodyUsed:GW,[Symbol.toStringTag]:{value:"Response",configurable:!0}});Object.defineProperties(J1e,{json:GW,redirect:GW,error:GW});function w$t(e){if(e.internalResponse)return BRn(w$t(e.internalResponse),e.type);let t=rut({...e,body:null});return e.body!=null&&(t.body=Wpo(e.body)),t}function rut(e){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...e,headersList:e.headersList?new mRn(e.headersList):new mRn,urlList:e.urlList?[...e.urlList]:[]}}function tut(e){let t=Xpo(e);return rut({type:"error",status:0,error:t?e:new Error(e&&String(e)),aborted:e&&e.name==="AbortError"})}function eut(e,t){return t={internalResponse:e,...t},new Proxy(e,{get(r,s){return s in t?t[s]:r[s]},set(r,s,a){return S$t(!(s in t)),r[s]=a,!0}})}function BRn(e,t){if(t==="basic")return eut(e,{type:"basic",headersList:e.headersList});if(t==="cors")return eut(e,{type:"cors",headersList:e.headersList});if(t==="opaque")return eut(e,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null});if(t==="opaqueredirect")return eut(e,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null});S$t(!1)}function efo(e,t=null){return S$t(Qpo(e)),Mpo(e)?tut(Object.assign(new _Rn("The operation was aborted.","AbortError"),{cause:t})):tut(Object.assign(new _Rn("Request was cancelled."),{cause:t}))}function bRn(e,t,r){if(t.status!==null&&(t.status<200||t.status>599))throw new RangeError('init["status"] must be in the range of 200 to 599, inclusive.');if("statusText"in t&&t.statusText!=null&&!Opo(String(t.statusText)))throw new TypeError("Invalid statusText");if("status"in t&&t.status!=null&&(e[j1].status=t.status),"statusText"in t&&t.statusText!=null&&(e[j1].statusText=t.statusText),"headers"in t&&t.headers!=null&&Vpo(e[dR],t.headers),r){if(Kpo.includes(e.status))throw vC.errors.exception({header:"Response constructor",message:"Invalid response status code "+e.status});e[j1].body=r.body,r.type!=null&&!e[j1].headersList.contains("Content-Type")&&e[j1].headersList.append("content-type",r.type)}}vC.converters.ReadableStream=vC.interfaceConverter(ERn);vC.converters.FormData=vC.interfaceConverter(jpo);vC.converters.URLSearchParams=vC.interfaceConverter(URLSearchParams);vC.converters.XMLHttpRequestBodyInit=function(e){return typeof e=="string"?vC.converters.USVString(e):Hpo(e)?vC.converters.Blob(e,{strict:!1}):B$t.isArrayBuffer(e)||B$t.isTypedArray(e)||B$t.isDataView(e)?vC.converters.BufferSource(e):v$t.isFormDataLike(e)?vC.converters.FormData(e,{strict:!1}):e instanceof URLSearchParams?vC.converters.URLSearchParams(e):vC.converters.DOMString(e)};vC.converters.BodyInit=function(e){return e instanceof ERn?vC.converters.ReadableStream(e):e?.[Symbol.asyncIterator]?e:vC.converters.XMLHttpRequestBodyInit(e)};vC.converters.ResponseInit=vC.dictionaryConverter([{key:"status",converter:vC.converters["unsigned short"],defaultValue:200},{key:"statusText",converter:vC.converters.ByteString,defaultValue:""},{key:"headers",converter:vC.converters.HeadersInit}]);vRn.exports={makeNetworkError:tut,makeResponse:rut,makeAppropriateNetworkError:efo,filterResponse:BRn,Response:J1e,cloneResponse:w$t}});var $3e=z((b8c,DRn)=>{"use strict";var{extractBody:tfo,mixinBody:rfo,cloneBody:nfo}=T3e(),{Headers:SRn,fill:ifo,HeadersList:aut}=Nde(),{FinalizationRegistry:sfo}=Lqt()(),q3e=Ch(),{isValidHTTPToken:ofo,sameOrigin:wRn,normalizeMethod:afo,makePolicyContainer:cfo,normalizeMethodRecord:lfo}=XO(),{forbiddenMethodsSet:ufo,corsSafeListedMethodsSet:gfo,referrerPolicy:Afo,requestRedirect:dfo,requestMode:pfo,requestCredentials:ffo,requestCache:Ifo,requestDuplex:Cfo}=sie(),{kEnumerableProperty:bw}=q3e,{kHeaders:Tk,kSignal:z3e,kState:s1,kGuard:iut,kRealm:FW}=Qj(),{webidl:Gf}=DF(),{getGlobalOrigin:mfo}=y1e(),{URLSerializer:hfo}=WH(),{kHeadersList:sut,kConstruct:out}=lE(),_fo=xt("assert"),{getMaxListeners:TRn,setMaxListeners:NRn,getEventListeners:yfo,defaultMaxListeners:RRn}=xt("events"),T$t=globalThis.TransformStream,bfo=Symbol("abortController"),Efo=new sfo(({signal:e,abort:t})=>{e.removeEventListener("abort",t)}),Rde=class e{constructor(t,r={}){if(t===out)return;Gf.argumentLengthCheck(arguments,1,{header:"Request constructor"}),t=Gf.converters.RequestInfo(t),r=Gf.converters.RequestInit(r),this[FW]={settingsObject:{baseUrl:mfo(),get origin(){return this.baseUrl?.origin},policyContainer:cfo()}};let s=null,a=null,o=this[FW].settingsObject.baseUrl,g=null;if(typeof t=="string"){let X;try{X=new URL(t,o)}catch(U){throw new TypeError("Failed to parse URL from "+t,{cause:U})}if(X.username||X.password)throw new TypeError("Request cannot be constructed from a URL that includes credentials: "+t);s=cut({urlList:[X]}),a="cors"}else _fo(t instanceof e),s=t[s1],g=t[z3e];let p=this[FW].settingsObject.origin,f="client";if(s.window?.constructor?.name==="EnvironmentSettingsObject"&&wRn(s.window,p)&&(f=s.window),r.window!=null)throw new TypeError(`'window' option '${f}' must be null`);"window"in r&&(f="no-window"),s=cut({method:s.method,headersList:s.headersList,unsafeRequest:s.unsafeRequest,client:this[FW].settingsObject,window:f,priority:s.priority,origin:s.origin,referrer:s.referrer,referrerPolicy:s.referrerPolicy,mode:s.mode,credentials:s.credentials,cache:s.cache,redirect:s.redirect,integrity:s.integrity,keepalive:s.keepalive,reloadNavigation:s.reloadNavigation,historyNavigation:s.historyNavigation,urlList:[...s.urlList]});let m=Object.keys(r).length!==0;if(m&&(s.mode==="navigate"&&(s.mode="same-origin"),s.reloadNavigation=!1,s.historyNavigation=!1,s.origin="client",s.referrer="client",s.referrerPolicy="",s.url=s.urlList[s.urlList.length-1],s.urlList=[s.url]),r.referrer!==void 0){let X=r.referrer;if(X==="")s.referrer="no-referrer";else{let U;try{U=new URL(X,o)}catch(le){throw new TypeError(`Referrer "${X}" is not a valid URL.`,{cause:le})}U.protocol==="about:"&&U.hostname==="client"||p&&!wRn(U,this[FW].settingsObject.baseUrl)?s.referrer="client":s.referrer=U}}r.referrerPolicy!==void 0&&(s.referrerPolicy=r.referrerPolicy);let y;if(r.mode!==void 0?y=r.mode:y=a,y==="navigate")throw Gf.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(y!=null&&(s.mode=y),r.credentials!==void 0&&(s.credentials=r.credentials),r.cache!==void 0&&(s.cache=r.cache),s.cache==="only-if-cached"&&s.mode!=="same-origin")throw new TypeError("'only-if-cached' can be set only with 'same-origin' mode");if(r.redirect!==void 0&&(s.redirect=r.redirect),r.integrity!=null&&(s.integrity=String(r.integrity)),r.keepalive!==void 0&&(s.keepalive=!!r.keepalive),r.method!==void 0){let X=r.method;if(!ofo(X))throw new TypeError(`'${X}' is not a valid HTTP method.`);if(ufo.has(X.toUpperCase()))throw new TypeError(`'${X}' HTTP method is unsupported.`);X=lfo[X]??afo(X),s.method=X}r.signal!==void 0&&(g=r.signal),this[s1]=s;let B=new AbortController;if(this[z3e]=B.signal,this[z3e][FW]=this[FW],g!=null){if(!g||typeof g.aborted!="boolean"||typeof g.addEventListener!="function")throw new TypeError("Failed to construct 'Request': member signal is not of type AbortSignal.");if(g.aborted)B.abort(g.reason);else{this[bfo]=B;let X=new WeakRef(B),U=function(){let le=X.deref();le!==void 0&&le.abort(this.reason)};try{(typeof TRn=="function"&&TRn(g)===RRn||yfo(g,"abort").length>=RRn)&&NRn(100,g)}catch{}q3e.addAbortListener(g,U),Efo.register(B,{signal:g,abort:U})}}if(this[Tk]=new SRn(out),this[Tk][sut]=s.headersList,this[Tk][iut]="request",this[Tk][FW]=this[FW],y==="no-cors"){if(!gfo.has(s.method))throw new TypeError(`'${s.method} is unsupported in no-cors mode.`);this[Tk][iut]="request-no-cors"}if(m){let X=this[Tk][sut],U=r.headers!==void 0?r.headers:new aut(X);if(X.clear(),U instanceof aut){for(let[le,ae]of U)X.append(le,ae);X.cookies=U.cookies}else ifo(this[Tk],U)}let v=t instanceof e?t[s1].body:null;if((r.body!=null||v!=null)&&(s.method==="GET"||s.method==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body.");let k=null;if(r.body!=null){let[X,U]=tfo(r.body,s.keepalive);k=X,U&&!this[Tk][sut].contains("content-type")&&this[Tk].append("content-type",U)}let T=k??v;if(T!=null&&T.source==null){if(k!=null&&r.duplex==null)throw new TypeError("RequestInit: duplex option is required when sending a body.");if(s.mode!=="same-origin"&&s.mode!=="cors")throw new TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"');s.useCORSPreflightFlag=!0}let O=T;if(k==null&&v!=null){if(q3e.isDisturbed(v.stream)||v.stream.locked)throw new TypeError("Cannot construct a Request with a Request object that has already been used.");T$t||(T$t=xt("stream/web").TransformStream);let X=new T$t;v.stream.pipeThrough(X),O={source:v.source,length:v.length,stream:X.readable}}this[s1].body=O}get method(){return Gf.brandCheck(this,e),this[s1].method}get url(){return Gf.brandCheck(this,e),hfo(this[s1].url)}get headers(){return Gf.brandCheck(this,e),this[Tk]}get destination(){return Gf.brandCheck(this,e),this[s1].destination}get referrer(){return Gf.brandCheck(this,e),this[s1].referrer==="no-referrer"?"":this[s1].referrer==="client"?"about:client":this[s1].referrer.toString()}get referrerPolicy(){return Gf.brandCheck(this,e),this[s1].referrerPolicy}get mode(){return Gf.brandCheck(this,e),this[s1].mode}get credentials(){return this[s1].credentials}get cache(){return Gf.brandCheck(this,e),this[s1].cache}get redirect(){return Gf.brandCheck(this,e),this[s1].redirect}get integrity(){return Gf.brandCheck(this,e),this[s1].integrity}get keepalive(){return Gf.brandCheck(this,e),this[s1].keepalive}get isReloadNavigation(){return Gf.brandCheck(this,e),this[s1].reloadNavigation}get isHistoryNavigation(){return Gf.brandCheck(this,e),this[s1].historyNavigation}get signal(){return Gf.brandCheck(this,e),this[z3e]}get body(){return Gf.brandCheck(this,e),this[s1].body?this[s1].body.stream:null}get bodyUsed(){return Gf.brandCheck(this,e),!!this[s1].body&&q3e.isDisturbed(this[s1].body.stream)}get duplex(){return Gf.brandCheck(this,e),"half"}clone(){if(Gf.brandCheck(this,e),this.bodyUsed||this.body?.locked)throw new TypeError("unusable");let t=Bfo(this[s1]),r=new e(out);r[s1]=t,r[FW]=this[FW],r[Tk]=new SRn(out),r[Tk][sut]=t.headersList,r[Tk][iut]=this[Tk][iut],r[Tk][FW]=this[Tk][FW];let s=new AbortController;return this.signal.aborted?s.abort(this.signal.reason):q3e.addAbortListener(this.signal,()=>{s.abort(this.signal.reason)}),r[z3e]=s.signal,r}};rfo(Rde);function cut(e){let t={method:"GET",localURLsOnly:!1,unsafeRequest:!1,body:null,client:null,reservedClient:null,replacesClientId:"",window:"client",keepalive:!1,serviceWorkers:"all",initiator:"",destination:"",priority:null,origin:"client",policyContainer:"client",referrer:"client",referrerPolicy:"",mode:"no-cors",useCORSPreflightFlag:!1,credentials:"same-origin",useCredentials:!1,cache:"default",redirect:"follow",integrity:"",cryptoGraphicsNonceMetadata:"",parserMetadata:"",reloadNavigation:!1,historyNavigation:!1,userActivation:!1,taintedOrigin:!1,redirectCount:0,responseTainting:"basic",preventNoCacheCacheControlHeaderModification:!1,done:!1,timingAllowFailed:!1,...e,headersList:e.headersList?new aut(e.headersList):new aut};return t.url=t.urlList[0],t}function Bfo(e){let t=cut({...e,body:null});return e.body!=null&&(t.body=nfo(e.body)),t}Object.defineProperties(Rde.prototype,{method:bw,url:bw,headers:bw,redirect:bw,clone:bw,signal:bw,duplex:bw,destination:bw,body:bw,bodyUsed:bw,isHistoryNavigation:bw,isReloadNavigation:bw,keepalive:bw,integrity:bw,cache:bw,credentials:bw,attribute:bw,referrerPolicy:bw,referrer:bw,mode:bw,[Symbol.toStringTag]:{value:"Request",configurable:!0}});Gf.converters.Request=Gf.interfaceConverter(Rde);Gf.converters.RequestInfo=function(e){return typeof e=="string"?Gf.converters.USVString(e):e instanceof Rde?Gf.converters.Request(e):Gf.converters.USVString(e)};Gf.converters.AbortSignal=Gf.interfaceConverter(AbortSignal);Gf.converters.RequestInit=Gf.dictionaryConverter([{key:"method",converter:Gf.converters.ByteString},{key:"headers",converter:Gf.converters.HeadersInit},{key:"body",converter:Gf.nullableConverter(Gf.converters.BodyInit)},{key:"referrer",converter:Gf.converters.USVString},{key:"referrerPolicy",converter:Gf.converters.DOMString,allowedValues:Afo},{key:"mode",converter:Gf.converters.DOMString,allowedValues:pfo},{key:"credentials",converter:Gf.converters.DOMString,allowedValues:ffo},{key:"cache",converter:Gf.converters.DOMString,allowedValues:Ifo},{key:"redirect",converter:Gf.converters.DOMString,allowedValues:dfo},{key:"integrity",converter:Gf.converters.DOMString},{key:"keepalive",converter:Gf.converters.boolean},{key:"signal",converter:Gf.nullableConverter(e=>Gf.converters.AbortSignal(e,{strict:!1}))},{key:"window",converter:Gf.converters.any},{key:"duplex",converter:Gf.converters.DOMString,allowedValues:Cfo}]);DRn.exports={Request:Rde,makeRequest:cut}});var fut=z((E8c,YRn)=>{"use strict";var{Response:vfo,makeNetworkError:bb,makeAppropriateNetworkError:lut,filterResponse:N$t,makeResponse:uut}=nut(),{Headers:xRn}=Nde(),{Request:Sfo,makeRequest:wfo}=$3e(),ePe=xt("zlib"),{bytesMatch:Tfo,makePolicyContainer:Nfo,clonePolicyContainer:Rfo,requestBadPort:Dfo,TAOCheck:xfo,appendRequestOriginHeader:kfo,responseLocationURL:Gfo,requestCurrentURL:cU,setRequestReferrerPolicyOnRedirect:Ffo,tryUpgradeRequestToAPotentiallyTrustworthyURL:Zfo,createOpaqueTimingInfo:V$t,appendFetchMetadata:Lfo,corsCheck:Vfo,crossOriginResourcePolicyCheck:Wfo,determineRequestsReferrer:Pfo,coarsenedSharedCurrentTime:W$t,createDeferredPromise:Ofo,isBlobLike:Qfo,sameOrigin:F$t,isCancelled:K1e,isAborted:kRn,isErrorLike:Mfo,fullyReadBody:LRn,readableStreamClose:Hfo,isomorphicEncode:Z$t,urlIsLocal:Yfo,urlIsHttpHttpsScheme:P$t,urlHasHttpsScheme:Xfo}=XO(),{kState:L$t,kHeaders:R$t,kGuard:Jfo,kRealm:GRn}=Qj(),j1e=xt("assert"),{safelyExtractBody:gut}=T3e(),{redirectStatusSet:VRn,nullBodyStatus:WRn,safeMethodsSet:Ufo,requestBodyHeader:Kfo,subresourceSet:jfo,DOMException:Aut}=sie(),{kHeadersList:U1e}=lE(),zfo=xt("events"),{Readable:qfo,pipeline:$fo}=xt("stream"),{addAbortListener:eIo,isErrored:tIo,isReadable:dut,nodeMajor:FRn,nodeMinor:rIo}=Ch(),{dataURLProcessor:nIo,serializeAMimeType:iIo}=WH(),{TransformStream:sIo}=xt("stream/web"),{getGlobalDispatcher:oIo}=M1e(),{webidl:aIo}=DF(),{STATUS_CODES:cIo}=xt("http"),lIo=["GET","HEAD"],D$t,x$t=globalThis.ReadableStream,put=class extends zfo{constructor(t){super(),this.dispatcher=t,this.connection=null,this.dump=!1,this.state="ongoing",this.setMaxListeners(21)}terminate(t){this.state==="ongoing"&&(this.state="terminated",this.connection?.destroy(t),this.emit("terminated",t))}abort(t){this.state==="ongoing"&&(this.state="aborted",t||(t=new Aut("The operation was aborted.","AbortError")),this.serializedAbortReason=t,this.connection?.destroy(t),this.emit("terminated",t))}};function uIo(e,t={}){aIo.argumentLengthCheck(arguments,1,{header:"globalThis.fetch"});let r=Ofo(),s;try{s=new Sfo(e,t)}catch(v){return r.reject(v),r.promise}let a=s[L$t];if(s.signal.aborted)return k$t(r,a,null,s.signal.reason),r.promise;a.client.globalObject?.constructor?.name==="ServiceWorkerGlobalScope"&&(a.serviceWorkers="none");let g=null,p=null,f=!1,m=null;return eIo(s.signal,()=>{f=!0,j1e(m!=null),m.abort(s.signal.reason),k$t(r,a,g,s.signal.reason)}),m=ORn({request:a,processResponseEndOfBody:v=>PRn(v,"fetch"),processResponse:v=>{if(f)return Promise.resolve();if(v.aborted)return k$t(r,a,g,m.serializedAbortReason),Promise.resolve();if(v.type==="error")return r.reject(Object.assign(new TypeError("fetch failed"),{cause:v.error})),Promise.resolve();g=new vfo,g[L$t]=v,g[GRn]=p,g[R$t][U1e]=v.headersList,g[R$t][Jfo]="immutable",g[R$t][GRn]=p,r.resolve(g)},dispatcher:t.dispatcher??oIo()}),r.promise}function PRn(e,t="other"){if(e.type==="error"&&e.aborted||!e.urlList?.length)return;let r=e.urlList[0],s=e.timingInfo,a=e.cacheState;P$t(r)&&s!==null&&(e.timingAllowPassed||(s=V$t({startTime:s.startTime}),a=""),s.endTime=W$t(),e.timingInfo=s,gIo(s,r,t,globalThis,a))}function gIo(e,t,r,s,a){(FRn>18||FRn===18&&rIo>=2)&&performance.markResourceTiming(e,t.href,r,s,a)}function k$t(e,t,r,s){if(s||(s=new Aut("The operation was aborted.","AbortError")),e.reject(s),t.body!=null&&dut(t.body?.stream)&&t.body.stream.cancel(s).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o}),r==null)return;let a=r[L$t];a.body!=null&&dut(a.body?.stream)&&a.body.stream.cancel(s).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o})}function ORn({request:e,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:s,processResponseEndOfBody:a,processResponseConsumeBody:o,useParallelQueue:g=!1,dispatcher:p}){let f=null,m=!1;e.client!=null&&(f=e.client.globalObject,m=e.client.crossOriginIsolatedCapability);let y=W$t(m),B=V$t({startTime:y}),v={controller:new put(p),request:e,timingInfo:B,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:s,processResponseConsumeBody:o,processResponseEndOfBody:a,taskDestination:f,crossOriginIsolatedCapability:m};return j1e(!e.body||e.body.stream),e.window==="client"&&(e.window=e.client?.globalObject?.constructor?.name==="Window"?e.client:"no-window"),e.origin==="client"&&(e.origin=e.client?.origin),e.policyContainer==="client"&&(e.client!=null?e.policyContainer=Rfo(e.client.policyContainer):e.policyContainer=Nfo()),e.headersList.contains("accept")||e.headersList.append("accept","*/*"),e.headersList.contains("accept-language")||e.headersList.append("accept-language","*"),e.priority,jfo.has(e.destination),QRn(v).catch(k=>{v.controller.terminate(k)}),v.controller}async function QRn(e,t=!1){let r=e.request,s=null;if(r.localURLsOnly&&!Yfo(cU(r))&&(s=bb("local URLs only")),Zfo(r),Dfo(r)==="blocked"&&(s=bb("bad port")),r.referrerPolicy===""&&(r.referrerPolicy=r.policyContainer.referrerPolicy),r.referrer!=="no-referrer"&&(r.referrer=Pfo(r)),s===null&&(s=await(async()=>{let o=cU(r);return F$t(o,r.url)&&r.responseTainting==="basic"||o.protocol==="data:"||r.mode==="navigate"||r.mode==="websocket"?(r.responseTainting="basic",await ZRn(e)):r.mode==="same-origin"?bb('request mode cannot be "same-origin"'):r.mode==="no-cors"?r.redirect!=="follow"?bb('redirect mode cannot be "follow" for "no-cors" request'):(r.responseTainting="opaque",await ZRn(e)):P$t(cU(r))?(r.responseTainting="cors",await MRn(e)):bb("URL scheme must be a HTTP(S) scheme")})()),t)return s;s.status!==0&&!s.internalResponse&&(r.responseTainting,r.responseTainting==="basic"?s=N$t(s,"basic"):r.responseTainting==="cors"?s=N$t(s,"cors"):r.responseTainting==="opaque"?s=N$t(s,"opaque"):j1e(!1));let a=s.status===0?s:s.internalResponse;if(a.urlList.length===0&&a.urlList.push(...r.urlList),r.timingAllowFailed||(s.timingAllowPassed=!0),s.type==="opaque"&&a.status===206&&a.rangeRequested&&!r.headers.contains("range")&&(s=a=bb()),s.status!==0&&(r.method==="HEAD"||r.method==="CONNECT"||WRn.includes(a.status))&&(a.body=null,e.controller.dump=!0),r.integrity){let o=p=>G$t(e,bb(p));if(r.responseTainting==="opaque"||s.body==null){o(s.error);return}let g=p=>{if(!Tfo(p,r.integrity)){o("integrity mismatch");return}s.body=gut(p)[0],G$t(e,s)};await LRn(s.body,g,o)}else G$t(e,s)}function ZRn(e){if(K1e(e)&&e.request.redirectCount===0)return Promise.resolve(lut(e));let{request:t}=e,{protocol:r}=cU(t);switch(r){case"about:":return Promise.resolve(bb("about scheme is not supported"));case"blob:":{D$t||(D$t=xt("buffer").resolveObjectURL);let s=cU(t);if(s.search.length!==0)return Promise.resolve(bb("NetworkError when attempting to fetch resource."));let a=D$t(s.toString());if(t.method!=="GET"||!Qfo(a))return Promise.resolve(bb("invalid method"));let o=gut(a),g=o[0],p=Z$t(`${g.length}`),f=o[1]??"",m=uut({statusText:"OK",headersList:[["content-length",{name:"Content-Length",value:p}],["content-type",{name:"Content-Type",value:f}]]});return m.body=g,Promise.resolve(m)}case"data:":{let s=cU(t),a=nIo(s);if(a==="failure")return Promise.resolve(bb("failed to fetch the data URL"));let o=iIo(a.mimeType);return Promise.resolve(uut({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:o}]],body:gut(a.body)[0]}))}case"file:":return Promise.resolve(bb("not implemented... yet..."));case"http:":case"https:":return MRn(e).catch(s=>bb(s));default:return Promise.resolve(bb("unknown scheme"))}}function AIo(e,t){e.request.done=!0,e.processResponseDone!=null&&queueMicrotask(()=>e.processResponseDone(t))}function G$t(e,t){t.type==="error"&&(t.urlList=[e.request.urlList[0]],t.timingInfo=V$t({startTime:e.timingInfo.startTime}));let r=()=>{e.request.done=!0,e.processResponseEndOfBody!=null&&queueMicrotask(()=>e.processResponseEndOfBody(t))};if(e.processResponse!=null&&queueMicrotask(()=>e.processResponse(t)),t.body==null)r();else{let s=(o,g)=>{g.enqueue(o)},a=new sIo({start(){},transform:s,flush:r},{size(){return 1}},{size(){return 1}});t.body={stream:t.body.stream.pipeThrough(a)}}if(e.processResponseConsumeBody!=null){let s=o=>e.processResponseConsumeBody(t,o),a=o=>e.processResponseConsumeBody(t,o);if(t.body==null)queueMicrotask(()=>s(null));else return LRn(t.body,s,a);return Promise.resolve()}}async function MRn(e){let t=e.request,r=null,s=null,a=e.timingInfo;if(t.serviceWorkers,r===null){if(t.redirect==="follow"&&(t.serviceWorkers="none"),s=r=await HRn(e),t.responseTainting==="cors"&&Vfo(t,r)==="failure")return bb("cors failure");xfo(t,r)==="failure"&&(t.timingAllowFailed=!0)}return(t.responseTainting==="opaque"||r.type==="opaque")&&Wfo(t.origin,t.client,t.destination,s)==="blocked"?bb("blocked"):(VRn.has(s.status)&&(t.redirect!=="manual"&&e.controller.connection.destroy(),t.redirect==="error"?r=bb("unexpected redirect"):t.redirect==="manual"?r=s:t.redirect==="follow"?r=await dIo(e,r):j1e(!1)),r.timingInfo=a,r)}function dIo(e,t){let r=e.request,s=t.internalResponse?t.internalResponse:t,a;try{if(a=Gfo(s,cU(r).hash),a==null)return t}catch(g){return Promise.resolve(bb(g))}if(!P$t(a))return Promise.resolve(bb("URL scheme must be a HTTP(S) scheme"));if(r.redirectCount===20)return Promise.resolve(bb("redirect count exceeded"));if(r.redirectCount+=1,r.mode==="cors"&&(a.username||a.password)&&!F$t(r,a))return Promise.resolve(bb('cross origin not allowed for request mode "cors"'));if(r.responseTainting==="cors"&&(a.username||a.password))return Promise.resolve(bb('URL cannot contain credentials for request mode "cors"'));if(s.status!==303&&r.body!=null&&r.body.source==null)return Promise.resolve(bb());if([301,302].includes(s.status)&&r.method==="POST"||s.status===303&&!lIo.includes(r.method)){r.method="GET",r.body=null;for(let g of Kfo)r.headersList.delete(g)}F$t(cU(r),a)||(r.headersList.delete("authorization"),r.headersList.delete("proxy-authorization",!0),r.headersList.delete("cookie"),r.headersList.delete("host")),r.body!=null&&(j1e(r.body.source!=null),r.body=gut(r.body.source)[0]);let o=e.timingInfo;return o.redirectEndTime=o.postRedirectStartTime=W$t(e.crossOriginIsolatedCapability),o.redirectStartTime===0&&(o.redirectStartTime=o.startTime),r.urlList.push(a),Ffo(r,s),QRn(e,!0)}async function HRn(e,t=!1,r=!1){let s=e.request,a=null,o=null,g=null,p=null,f=!1;s.window==="no-window"&&s.redirect==="error"?(a=e,o=s):(o=wfo(s),a={...e},a.request=o);let m=s.credentials==="include"||s.credentials==="same-origin"&&s.responseTainting==="basic",y=o.body?o.body.length:null,B=null;if(o.body==null&&["POST","PUT"].includes(o.method)&&(B="0"),y!=null&&(B=Z$t(`${y}`)),B!=null&&o.headersList.append("content-length",B),y!=null&&o.keepalive,o.referrer instanceof URL&&o.headersList.append("referer",Z$t(o.referrer.href)),kfo(o),Lfo(o),o.headersList.contains("user-agent")||o.headersList.append("user-agent",typeof esbuildDetection>"u"?"undici":"node"),o.cache==="default"&&(o.headersList.contains("if-modified-since")||o.headersList.contains("if-none-match")||o.headersList.contains("if-unmodified-since")||o.headersList.contains("if-match")||o.headersList.contains("if-range"))&&(o.cache="no-store"),o.cache==="no-cache"&&!o.preventNoCacheCacheControlHeaderModification&&!o.headersList.contains("cache-control")&&o.headersList.append("cache-control","max-age=0"),(o.cache==="no-store"||o.cache==="reload")&&(o.headersList.contains("pragma")||o.headersList.append("pragma","no-cache"),o.headersList.contains("cache-control")||o.headersList.append("cache-control","no-cache")),o.headersList.contains("range")&&o.headersList.append("accept-encoding","identity"),o.headersList.contains("accept-encoding")||(Xfo(cU(o))?o.headersList.append("accept-encoding","br, gzip, deflate"):o.headersList.append("accept-encoding","gzip, deflate")),o.headersList.delete("host"),p==null&&(o.cache="no-store"),o.mode!=="no-store"&&o.mode,g==null){if(o.mode==="only-if-cached")return bb("only if cached");let v=await pIo(a,m,r);!Ufo.has(o.method)&&v.status>=200&&v.status<=399,f&&v.status,g==null&&(g=v)}if(g.urlList=[...o.urlList],o.headersList.contains("range")&&(g.rangeRequested=!0),g.requestIncludesCredentials=m,g.status===407)return s.window==="no-window"?bb():K1e(e)?lut(e):bb("proxy authentication required");if(g.status===421&&!r&&(s.body==null||s.body.source!=null)){if(K1e(e))return lut(e);e.controller.connection.destroy(),g=await HRn(e,t,!0)}return g}async function pIo(e,t=!1,r=!1){j1e(!e.controller.connection||e.controller.connection.destroyed),e.controller.connection={abort:null,destroyed:!1,destroy(T){this.destroyed||(this.destroyed=!0,this.abort?.(T??new Aut("The operation was aborted.","AbortError")))}};let s=e.request,a=null,o=e.timingInfo;null==null&&(s.cache="no-store");let p=r?"yes":"no";s.mode;let f=null;if(s.body==null&&e.processRequestEndOfBody)queueMicrotask(()=>e.processRequestEndOfBody());else if(s.body!=null){let T=async function*(U){K1e(e)||(yield U,e.processRequestBodyChunkLength?.(U.byteLength))},O=()=>{K1e(e)||e.processRequestEndOfBody&&e.processRequestEndOfBody()},X=U=>{K1e(e)||(U.name==="AbortError"?e.controller.abort():e.controller.terminate(U))};f=async function*(){try{for await(let U of s.body.stream)yield*T(U);O()}catch(U){X(U)}}()}try{let{body:T,status:O,statusText:X,headersList:U,socket:le}=await k({body:f});if(le)a=uut({status:O,statusText:X,headersList:U,socket:le});else{let ae=T[Symbol.asyncIterator]();e.controller.next=()=>ae.next(),a=uut({status:O,statusText:X,headersList:U})}}catch(T){return T.name==="AbortError"?(e.controller.connection.destroy(),lut(e,T)):bb(T)}let m=()=>{e.controller.resume()},y=T=>{e.controller.abort(T)};x$t||(x$t=xt("stream/web").ReadableStream);let B=new x$t({async start(T){e.controller.controller=T},async pull(T){await m(T)},async cancel(T){await y(T)}},{highWaterMark:0,size(){return 1}});a.body={stream:B},e.controller.on("terminated",v),e.controller.resume=async()=>{for(;;){let T,O;try{let{done:X,value:U}=await e.controller.next();if(kRn(e))break;T=X?void 0:U}catch(X){e.controller.ended&&!o.encodedBodySize?T=void 0:(T=X,O=!0)}if(T===void 0){Hfo(e.controller.controller),AIo(e,a);return}if(o.decodedBodySize+=T?.byteLength??0,O){e.controller.terminate(T);return}if(e.controller.controller.enqueue(new Uint8Array(T)),tIo(B)){e.controller.terminate();return}if(!e.controller.controller.desiredSize)return}};function v(T){kRn(e)?(a.aborted=!0,dut(B)&&e.controller.controller.error(e.controller.serializedAbortReason)):dut(B)&&e.controller.controller.error(new TypeError("terminated",{cause:Mfo(T)?T:void 0})),e.controller.connection.destroy()}return a;async function k({body:T}){let O=cU(s),X=e.controller.dispatcher;return new Promise((U,le)=>X.dispatch({path:O.pathname+O.search,origin:O.origin,method:s.method,body:e.controller.dispatcher.isMockActive?s.body&&(s.body.source||s.body.stream):T,headers:s.headersList.entries,maxRedirections:0,upgrade:s.mode==="websocket"?"websocket":void 0},{body:null,abort:null,onConnect(ae){let{connection:ge}=e.controller;ge.destroyed?ae(new Aut("The operation was aborted.","AbortError")):(e.controller.on("terminated",ae),this.abort=ge.abort=ae)},onHeaders(ae,ge,fe,pe){if(ae<200)return;let he=[],be="",Te=new xRn;if(Array.isArray(ge))for(let et=0;etXe.trim()):Ue.toLowerCase()==="location"&&(be=Je),Te[U1e].append(Ue,Je)}else{let et=Object.keys(ge);for(let Ue of et){let Je=ge[Ue];Ue.toLowerCase()==="content-encoding"?he=Je.toLowerCase().split(",").map(Xe=>Xe.trim()).reverse():Ue.toLowerCase()==="location"&&(be=Je),Te[U1e].append(Ue,Je)}}this.body=new qfo({read:fe});let ke=[],x=s.redirect==="follow"&&be&&VRn.has(ae);if(s.method!=="HEAD"&&s.method!=="CONNECT"&&!WRn.includes(ae)&&!x)for(let et of he)if(et==="x-gzip"||et==="gzip")ke.push(ePe.createGunzip({flush:ePe.constants.Z_SYNC_FLUSH,finishFlush:ePe.constants.Z_SYNC_FLUSH}));else if(et==="deflate")ke.push(ePe.createInflate());else if(et==="br")ke.push(ePe.createBrotliDecompress());else{ke.length=0;break}return U({status:ae,statusText:pe,headersList:Te[U1e],body:ke.length?$fo(this.body,...ke,()=>{}):this.body.on("error",()=>{})}),!0},onData(ae){if(e.controller.dump)return;let ge=ae;return o.encodedBodySize+=ge.byteLength,this.body.push(ge)},onComplete(){this.abort&&e.controller.off("terminated",this.abort),e.controller.ended=!0,this.body.push(null)},onError(ae){this.abort&&e.controller.off("terminated",this.abort),this.body?.destroy(ae),e.controller.terminate(ae),le(ae)},onUpgrade(ae,ge,fe){if(ae!==101)return;let pe=new xRn;for(let he=0;he{"use strict";XRn.exports={kState:Symbol("FileReader state"),kResult:Symbol("FileReader result"),kError:Symbol("FileReader error"),kLastProgressEventFired:Symbol("FileReader last progress event fired timestamp"),kEvents:Symbol("FileReader events"),kAborted:Symbol("FileReader aborted")}});var URn=z((v8c,JRn)=>{"use strict";var{webidl:ZW}=DF(),Iut=Symbol("ProgressEvent state"),Q$t=class e extends Event{constructor(t,r={}){t=ZW.converters.DOMString(t),r=ZW.converters.ProgressEventInit(r??{}),super(t,r),this[Iut]={lengthComputable:r.lengthComputable,loaded:r.loaded,total:r.total}}get lengthComputable(){return ZW.brandCheck(this,e),this[Iut].lengthComputable}get loaded(){return ZW.brandCheck(this,e),this[Iut].loaded}get total(){return ZW.brandCheck(this,e),this[Iut].total}};ZW.converters.ProgressEventInit=ZW.dictionaryConverter([{key:"lengthComputable",converter:ZW.converters.boolean,defaultValue:!1},{key:"loaded",converter:ZW.converters["unsigned long long"],defaultValue:0},{key:"total",converter:ZW.converters["unsigned long long"],defaultValue:0},{key:"bubbles",converter:ZW.converters.boolean,defaultValue:!1},{key:"cancelable",converter:ZW.converters.boolean,defaultValue:!1},{key:"composed",converter:ZW.converters.boolean,defaultValue:!1}]);JRn.exports={ProgressEvent:Q$t}});var jRn=z((S8c,KRn)=>{"use strict";function fIo(e){if(!e)return"failure";switch(e.trim().toLowerCase()){case"unicode-1-1-utf-8":case"unicode11utf8":case"unicode20utf8":case"utf-8":case"utf8":case"x-unicode20utf8":return"UTF-8";case"866":case"cp866":case"csibm866":case"ibm866":return"IBM866";case"csisolatin2":case"iso-8859-2":case"iso-ir-101":case"iso8859-2":case"iso88592":case"iso_8859-2":case"iso_8859-2:1987":case"l2":case"latin2":return"ISO-8859-2";case"csisolatin3":case"iso-8859-3":case"iso-ir-109":case"iso8859-3":case"iso88593":case"iso_8859-3":case"iso_8859-3:1988":case"l3":case"latin3":return"ISO-8859-3";case"csisolatin4":case"iso-8859-4":case"iso-ir-110":case"iso8859-4":case"iso88594":case"iso_8859-4":case"iso_8859-4:1988":case"l4":case"latin4":return"ISO-8859-4";case"csisolatincyrillic":case"cyrillic":case"iso-8859-5":case"iso-ir-144":case"iso8859-5":case"iso88595":case"iso_8859-5":case"iso_8859-5:1988":return"ISO-8859-5";case"arabic":case"asmo-708":case"csiso88596e":case"csiso88596i":case"csisolatinarabic":case"ecma-114":case"iso-8859-6":case"iso-8859-6-e":case"iso-8859-6-i":case"iso-ir-127":case"iso8859-6":case"iso88596":case"iso_8859-6":case"iso_8859-6:1987":return"ISO-8859-6";case"csisolatingreek":case"ecma-118":case"elot_928":case"greek":case"greek8":case"iso-8859-7":case"iso-ir-126":case"iso8859-7":case"iso88597":case"iso_8859-7":case"iso_8859-7:1987":case"sun_eu_greek":return"ISO-8859-7";case"csiso88598e":case"csisolatinhebrew":case"hebrew":case"iso-8859-8":case"iso-8859-8-e":case"iso-ir-138":case"iso8859-8":case"iso88598":case"iso_8859-8":case"iso_8859-8:1988":case"visual":return"ISO-8859-8";case"csiso88598i":case"iso-8859-8-i":case"logical":return"ISO-8859-8-I";case"csisolatin6":case"iso-8859-10":case"iso-ir-157":case"iso8859-10":case"iso885910":case"l6":case"latin6":return"ISO-8859-10";case"iso-8859-13":case"iso8859-13":case"iso885913":return"ISO-8859-13";case"iso-8859-14":case"iso8859-14":case"iso885914":return"ISO-8859-14";case"csisolatin9":case"iso-8859-15":case"iso8859-15":case"iso885915":case"iso_8859-15":case"l9":return"ISO-8859-15";case"iso-8859-16":return"ISO-8859-16";case"cskoi8r":case"koi":case"koi8":case"koi8-r":case"koi8_r":return"KOI8-R";case"koi8-ru":case"koi8-u":return"KOI8-U";case"csmacintosh":case"mac":case"macintosh":case"x-mac-roman":return"macintosh";case"iso-8859-11":case"iso8859-11":case"iso885911":case"tis-620":case"windows-874":return"windows-874";case"cp1250":case"windows-1250":case"x-cp1250":return"windows-1250";case"cp1251":case"windows-1251":case"x-cp1251":return"windows-1251";case"ansi_x3.4-1968":case"ascii":case"cp1252":case"cp819":case"csisolatin1":case"ibm819":case"iso-8859-1":case"iso-ir-100":case"iso8859-1":case"iso88591":case"iso_8859-1":case"iso_8859-1:1987":case"l1":case"latin1":case"us-ascii":case"windows-1252":case"x-cp1252":return"windows-1252";case"cp1253":case"windows-1253":case"x-cp1253":return"windows-1253";case"cp1254":case"csisolatin5":case"iso-8859-9":case"iso-ir-148":case"iso8859-9":case"iso88599":case"iso_8859-9":case"iso_8859-9:1989":case"l5":case"latin5":case"windows-1254":case"x-cp1254":return"windows-1254";case"cp1255":case"windows-1255":case"x-cp1255":return"windows-1255";case"cp1256":case"windows-1256":case"x-cp1256":return"windows-1256";case"cp1257":case"windows-1257":case"x-cp1257":return"windows-1257";case"cp1258":case"windows-1258":case"x-cp1258":return"windows-1258";case"x-mac-cyrillic":case"x-mac-ukrainian":return"x-mac-cyrillic";case"chinese":case"csgb2312":case"csiso58gb231280":case"gb2312":case"gb_2312":case"gb_2312-80":case"gbk":case"iso-ir-58":case"x-gbk":return"GBK";case"gb18030":return"gb18030";case"big5":case"big5-hkscs":case"cn-big5":case"csbig5":case"x-x-big5":return"Big5";case"cseucpkdfmtjapanese":case"euc-jp":case"x-euc-jp":return"EUC-JP";case"csiso2022jp":case"iso-2022-jp":return"ISO-2022-JP";case"csshiftjis":case"ms932":case"ms_kanji":case"shift-jis":case"shift_jis":case"sjis":case"windows-31j":case"x-sjis":return"Shift_JIS";case"cseuckr":case"csksc56011987":case"euc-kr":case"iso-ir-149":case"korean":case"ks_c_5601-1987":case"ks_c_5601-1989":case"ksc5601":case"ksc_5601":case"windows-949":return"EUC-KR";case"csiso2022kr":case"hz-gb-2312":case"iso-2022-cn":case"iso-2022-cn-ext":case"iso-2022-kr":case"replacement":return"replacement";case"unicodefffe":case"utf-16be":return"UTF-16BE";case"csunicode":case"iso-10646-ucs-2":case"ucs-2":case"unicode":case"unicodefeff":case"utf-16":case"utf-16le":return"UTF-16LE";case"x-user-defined":return"x-user-defined";default:return"failure"}}KRn.exports={getEncoding:fIo}});var iDn=z((w8c,nDn)=>{"use strict";var{kState:z1e,kError:M$t,kResult:zRn,kAborted:tPe,kLastProgressEventFired:H$t}=O$t(),{ProgressEvent:IIo}=URn(),{getEncoding:qRn}=jRn(),{DOMException:CIo}=sie(),{serializeAMimeType:mIo,parseMIMEType:$Rn}=WH(),{types:hIo}=xt("util"),{StringDecoder:eDn}=xt("string_decoder"),{btoa:tDn}=xt("buffer"),_Io={enumerable:!0,writable:!1,configurable:!1};function yIo(e,t,r,s){if(e[z1e]==="loading")throw new CIo("Invalid state","InvalidStateError");e[z1e]="loading",e[zRn]=null,e[M$t]=null;let o=t.stream().getReader(),g=[],p=o.read(),f=!0;(async()=>{for(;!e[tPe];)try{let{done:m,value:y}=await p;if(f&&!e[tPe]&&queueMicrotask(()=>{die("loadstart",e)}),f=!1,!m&&hIo.isUint8Array(y))g.push(y),(e[H$t]===void 0||Date.now()-e[H$t]>=50)&&!e[tPe]&&(e[H$t]=Date.now(),queueMicrotask(()=>{die("progress",e)})),p=o.read();else if(m){queueMicrotask(()=>{e[z1e]="done";try{let B=bIo(g,r,t.type,s);if(e[tPe])return;e[zRn]=B,die("load",e)}catch(B){e[M$t]=B,die("error",e)}e[z1e]!=="loading"&&die("loadend",e)});break}}catch(m){if(e[tPe])return;queueMicrotask(()=>{e[z1e]="done",e[M$t]=m,die("error",e),e[z1e]!=="loading"&&die("loadend",e)});break}})()}function die(e,t){let r=new IIo(e,{bubbles:!1,cancelable:!1});t.dispatchEvent(r)}function bIo(e,t,r,s){switch(t){case"DataURL":{let a="data:",o=$Rn(r||"application/octet-stream");o!=="failure"&&(a+=mIo(o)),a+=";base64,";let g=new eDn("latin1");for(let p of e)a+=tDn(g.write(p));return a+=tDn(g.end()),a}case"Text":{let a="failure";if(s&&(a=qRn(s)),a==="failure"&&r){let o=$Rn(r);o!=="failure"&&(a=qRn(o.parameters.get("charset")))}return a==="failure"&&(a="UTF-8"),EIo(e,a)}case"ArrayBuffer":return rDn(e).buffer;case"BinaryString":{let a="",o=new eDn("latin1");for(let g of e)a+=o.write(g);return a+=o.end(),a}}}function EIo(e,t){let r=rDn(e),s=BIo(r),a=0;s!==null&&(t=s,a=s==="UTF-8"?3:2);let o=r.slice(a);return new TextDecoder(t).decode(o)}function BIo(e){let[t,r,s]=e;return t===239&&r===187&&s===191?"UTF-8":t===254&&r===255?"UTF-16BE":t===255&&r===254?"UTF-16LE":null}function rDn(e){let t=e.reduce((s,a)=>s+a.byteLength,0),r=0;return e.reduce((s,a)=>(s.set(a,r),r+=a.byteLength,s),new Uint8Array(t))}nDn.exports={staticPropertyDescriptors:_Io,readOperation:yIo,fireAProgressEvent:die}});var cDn=z((T8c,aDn)=>{"use strict";var{staticPropertyDescriptors:q1e,readOperation:Cut,fireAProgressEvent:sDn}=iDn(),{kState:Dde,kError:oDn,kResult:mut,kEvents:Q_,kAborted:vIo}=O$t(),{webidl:Fy}=DF(),{kEnumerableProperty:OL}=Ch(),MH=class e extends EventTarget{constructor(){super(),this[Dde]="empty",this[mut]=null,this[oDn]=null,this[Q_]={loadend:null,error:null,abort:null,load:null,progress:null,loadstart:null}}readAsArrayBuffer(t){Fy.brandCheck(this,e),Fy.argumentLengthCheck(arguments,1,{header:"FileReader.readAsArrayBuffer"}),t=Fy.converters.Blob(t,{strict:!1}),Cut(this,t,"ArrayBuffer")}readAsBinaryString(t){Fy.brandCheck(this,e),Fy.argumentLengthCheck(arguments,1,{header:"FileReader.readAsBinaryString"}),t=Fy.converters.Blob(t,{strict:!1}),Cut(this,t,"BinaryString")}readAsText(t,r=void 0){Fy.brandCheck(this,e),Fy.argumentLengthCheck(arguments,1,{header:"FileReader.readAsText"}),t=Fy.converters.Blob(t,{strict:!1}),r!==void 0&&(r=Fy.converters.DOMString(r)),Cut(this,t,"Text",r)}readAsDataURL(t){Fy.brandCheck(this,e),Fy.argumentLengthCheck(arguments,1,{header:"FileReader.readAsDataURL"}),t=Fy.converters.Blob(t,{strict:!1}),Cut(this,t,"DataURL")}abort(){if(this[Dde]==="empty"||this[Dde]==="done"){this[mut]=null;return}this[Dde]==="loading"&&(this[Dde]="done",this[mut]=null),this[vIo]=!0,sDn("abort",this),this[Dde]!=="loading"&&sDn("loadend",this)}get readyState(){switch(Fy.brandCheck(this,e),this[Dde]){case"empty":return this.EMPTY;case"loading":return this.LOADING;case"done":return this.DONE}}get result(){return Fy.brandCheck(this,e),this[mut]}get error(){return Fy.brandCheck(this,e),this[oDn]}get onloadend(){return Fy.brandCheck(this,e),this[Q_].loadend}set onloadend(t){Fy.brandCheck(this,e),this[Q_].loadend&&this.removeEventListener("loadend",this[Q_].loadend),typeof t=="function"?(this[Q_].loadend=t,this.addEventListener("loadend",t)):this[Q_].loadend=null}get onerror(){return Fy.brandCheck(this,e),this[Q_].error}set onerror(t){Fy.brandCheck(this,e),this[Q_].error&&this.removeEventListener("error",this[Q_].error),typeof t=="function"?(this[Q_].error=t,this.addEventListener("error",t)):this[Q_].error=null}get onloadstart(){return Fy.brandCheck(this,e),this[Q_].loadstart}set onloadstart(t){Fy.brandCheck(this,e),this[Q_].loadstart&&this.removeEventListener("loadstart",this[Q_].loadstart),typeof t=="function"?(this[Q_].loadstart=t,this.addEventListener("loadstart",t)):this[Q_].loadstart=null}get onprogress(){return Fy.brandCheck(this,e),this[Q_].progress}set onprogress(t){Fy.brandCheck(this,e),this[Q_].progress&&this.removeEventListener("progress",this[Q_].progress),typeof t=="function"?(this[Q_].progress=t,this.addEventListener("progress",t)):this[Q_].progress=null}get onload(){return Fy.brandCheck(this,e),this[Q_].load}set onload(t){Fy.brandCheck(this,e),this[Q_].load&&this.removeEventListener("load",this[Q_].load),typeof t=="function"?(this[Q_].load=t,this.addEventListener("load",t)):this[Q_].load=null}get onabort(){return Fy.brandCheck(this,e),this[Q_].abort}set onabort(t){Fy.brandCheck(this,e),this[Q_].abort&&this.removeEventListener("abort",this[Q_].abort),typeof t=="function"?(this[Q_].abort=t,this.addEventListener("abort",t)):this[Q_].abort=null}};MH.EMPTY=MH.prototype.EMPTY=0;MH.LOADING=MH.prototype.LOADING=1;MH.DONE=MH.prototype.DONE=2;Object.defineProperties(MH.prototype,{EMPTY:q1e,LOADING:q1e,DONE:q1e,readAsArrayBuffer:OL,readAsBinaryString:OL,readAsText:OL,readAsDataURL:OL,abort:OL,readyState:OL,result:OL,error:OL,onloadstart:OL,onprogress:OL,onload:OL,onabort:OL,onerror:OL,onloadend:OL,[Symbol.toStringTag]:{value:"FileReader",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(MH,{EMPTY:q1e,LOADING:q1e,DONE:q1e});aDn.exports={FileReader:MH}});var hut=z((N8c,lDn)=>{"use strict";lDn.exports={kConstruct:lE().kConstruct}});var ADn=z((R8c,gDn)=>{"use strict";var SIo=xt("assert"),{URLSerializer:uDn}=WH(),{isValidHeaderName:wIo}=XO();function TIo(e,t,r=!1){let s=uDn(e,r),a=uDn(t,r);return s===a}function NIo(e){SIo(e!==null);let t=[];for(let r of e.split(",")){if(r=r.trim(),r.length){if(!wIo(r))continue}else continue;t.push(r)}return t}gDn.exports={urlEquals:TIo,fieldValues:NIo}});var mDn=z((D8c,CDn)=>{"use strict";var{kConstruct:RIo}=hut(),{urlEquals:DIo,fieldValues:Y$t}=ADn(),{kEnumerableProperty:xde,isDisturbed:xIo}=Ch(),{kHeadersList:dDn}=lE(),{webidl:Fp}=DF(),{Response:fDn,cloneResponse:kIo}=nut(),{Request:lU}=$3e(),{kState:ZF,kHeaders:_ut,kGuard:pDn,kRealm:GIo}=Qj(),{fetching:FIo}=fut(),{urlIsHttpHttpsScheme:yut,createDeferredPromise:$1e,readAllBytes:ZIo}=XO(),X$t=xt("assert"),{getGlobalDispatcher:LIo}=M1e(),but=class e{#e;constructor(){arguments[0]!==RIo&&Fp.illegalConstructor(),this.#e=arguments[1]}async match(t,r={}){Fp.brandCheck(this,e),Fp.argumentLengthCheck(arguments,1,{header:"Cache.match"}),t=Fp.converters.RequestInfo(t),r=Fp.converters.CacheQueryOptions(r);let s=await this.matchAll(t,r);if(s.length!==0)return s[0]}async matchAll(t=void 0,r={}){Fp.brandCheck(this,e),t!==void 0&&(t=Fp.converters.RequestInfo(t)),r=Fp.converters.CacheQueryOptions(r);let s=null;if(t!==void 0)if(t instanceof lU){if(s=t[ZF],s.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(s=new lU(t)[ZF]);let a=[];if(t===void 0)for(let g of this.#e)a.push(g[1]);else{let g=this.#r(s,r);for(let p of g)a.push(p[1])}let o=[];for(let g of a){let p=new fDn(g.body?.source??null),f=p[ZF].body;p[ZF]=g,p[ZF].body=f,p[_ut][dDn]=g.headersList,p[_ut][pDn]="immutable",o.push(p)}return Object.freeze(o)}async add(t){Fp.brandCheck(this,e),Fp.argumentLengthCheck(arguments,1,{header:"Cache.add"}),t=Fp.converters.RequestInfo(t);let r=[t];return await this.addAll(r)}async addAll(t){Fp.brandCheck(this,e),Fp.argumentLengthCheck(arguments,1,{header:"Cache.addAll"}),t=Fp.converters["sequence"](t);let r=[],s=[];for(let B of t){if(typeof B=="string")continue;let v=B[ZF];if(!yut(v.url)||v.method!=="GET")throw Fp.errors.exception({header:"Cache.addAll",message:"Expected http/s scheme when method is not GET."})}let a=[];for(let B of t){let v=new lU(B)[ZF];if(!yut(v.url))throw Fp.errors.exception({header:"Cache.addAll",message:"Expected http/s scheme."});v.initiator="fetch",v.destination="subresource",s.push(v);let k=$1e();a.push(FIo({request:v,dispatcher:LIo(),processResponse(T){if(T.type==="error"||T.status===206||T.status<200||T.status>299)k.reject(Fp.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(T.headersList.contains("vary")){let O=Y$t(T.headersList.get("vary"));for(let X of O)if(X==="*"){k.reject(Fp.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(let U of a)U.abort();return}}},processResponseEndOfBody(T){if(T.aborted){k.reject(new DOMException("aborted","AbortError"));return}k.resolve(T)}})),r.push(k.promise)}let g=await Promise.all(r),p=[],f=0;for(let B of g){let v={type:"put",request:s[f],response:B};p.push(v),f++}let m=$1e(),y=null;try{this.#t(p)}catch(B){y=B}return queueMicrotask(()=>{y===null?m.resolve(void 0):m.reject(y)}),m.promise}async put(t,r){Fp.brandCheck(this,e),Fp.argumentLengthCheck(arguments,2,{header:"Cache.put"}),t=Fp.converters.RequestInfo(t),r=Fp.converters.Response(r);let s=null;if(t instanceof lU?s=t[ZF]:s=new lU(t)[ZF],!yut(s.url)||s.method!=="GET")throw Fp.errors.exception({header:"Cache.put",message:"Expected an http/s scheme when method is not GET"});let a=r[ZF];if(a.status===206)throw Fp.errors.exception({header:"Cache.put",message:"Got 206 status"});if(a.headersList.contains("vary")){let v=Y$t(a.headersList.get("vary"));for(let k of v)if(k==="*")throw Fp.errors.exception({header:"Cache.put",message:"Got * vary field value"})}if(a.body&&(xIo(a.body.stream)||a.body.stream.locked))throw Fp.errors.exception({header:"Cache.put",message:"Response body is locked or disturbed"});let o=kIo(a),g=$1e();if(a.body!=null){let k=a.body.stream.getReader();ZIo(k).then(g.resolve,g.reject)}else g.resolve(void 0);let p=[],f={type:"put",request:s,response:o};p.push(f);let m=await g.promise;o.body!=null&&(o.body.source=m);let y=$1e(),B=null;try{this.#t(p)}catch(v){B=v}return queueMicrotask(()=>{B===null?y.resolve():y.reject(B)}),y.promise}async delete(t,r={}){Fp.brandCheck(this,e),Fp.argumentLengthCheck(arguments,1,{header:"Cache.delete"}),t=Fp.converters.RequestInfo(t),r=Fp.converters.CacheQueryOptions(r);let s=null;if(t instanceof lU){if(s=t[ZF],s.method!=="GET"&&!r.ignoreMethod)return!1}else X$t(typeof t=="string"),s=new lU(t)[ZF];let a=[],o={type:"delete",request:s,options:r};a.push(o);let g=$1e(),p=null,f;try{f=this.#t(a)}catch(m){p=m}return queueMicrotask(()=>{p===null?g.resolve(!!f?.length):g.reject(p)}),g.promise}async keys(t=void 0,r={}){Fp.brandCheck(this,e),t!==void 0&&(t=Fp.converters.RequestInfo(t)),r=Fp.converters.CacheQueryOptions(r);let s=null;if(t!==void 0)if(t instanceof lU){if(s=t[ZF],s.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(s=new lU(t)[ZF]);let a=$1e(),o=[];if(t===void 0)for(let g of this.#e)o.push(g[0]);else{let g=this.#r(s,r);for(let p of g)o.push(p[0])}return queueMicrotask(()=>{let g=[];for(let p of o){let f=new lU("https://a");f[ZF]=p,f[_ut][dDn]=p.headersList,f[_ut][pDn]="immutable",f[GIo]=p.client,g.push(f)}a.resolve(Object.freeze(g))}),a.promise}#t(t){let r=this.#e,s=[...r],a=[],o=[];try{for(let g of t){if(g.type!=="delete"&&g.type!=="put")throw Fp.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if(g.type==="delete"&&g.response!=null)throw Fp.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#r(g.request,g.options,a).length)throw new DOMException("???","InvalidStateError");let p;if(g.type==="delete"){if(p=this.#r(g.request,g.options),p.length===0)return[];for(let f of p){let m=r.indexOf(f);X$t(m!==-1),r.splice(m,1)}}else if(g.type==="put"){if(g.response==null)throw Fp.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});let f=g.request;if(!yut(f.url))throw Fp.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if(f.method!=="GET")throw Fp.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(g.options!=null)throw Fp.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});p=this.#r(g.request);for(let m of p){let y=r.indexOf(m);X$t(y!==-1),r.splice(y,1)}r.push([g.request,g.response]),a.push([g.request,g.response])}o.push([g.request,g.response])}return o}catch(g){throw this.#e.length=0,this.#e=s,g}}#r(t,r,s){let a=[],o=s??this.#e;for(let g of o){let[p,f]=g;this.#n(t,p,f,r)&&a.push(g)}return a}#n(t,r,s=null,a){let o=new URL(t.url),g=new URL(r.url);if(a?.ignoreSearch&&(g.search="",o.search=""),!DIo(o,g,!0))return!1;if(s==null||a?.ignoreVary||!s.headersList.contains("vary"))return!0;let p=Y$t(s.headersList.get("vary"));for(let f of p){if(f==="*")return!1;let m=r.headersList.get(f),y=t.headersList.get(f);if(m!==y)return!1}return!0}};Object.defineProperties(but.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:xde,matchAll:xde,add:xde,addAll:xde,put:xde,delete:xde,keys:xde});var IDn=[{key:"ignoreSearch",converter:Fp.converters.boolean,defaultValue:!1},{key:"ignoreMethod",converter:Fp.converters.boolean,defaultValue:!1},{key:"ignoreVary",converter:Fp.converters.boolean,defaultValue:!1}];Fp.converters.CacheQueryOptions=Fp.dictionaryConverter(IDn);Fp.converters.MultiCacheQueryOptions=Fp.dictionaryConverter([...IDn,{key:"cacheName",converter:Fp.converters.DOMString}]);Fp.converters.Response=Fp.interfaceConverter(fDn);Fp.converters["sequence"]=Fp.sequenceConverter(Fp.converters.RequestInfo);CDn.exports={Cache:but}});var _Dn=z((x8c,hDn)=>{"use strict";var{kConstruct:rPe}=hut(),{Cache:Eut}=mDn(),{webidl:LF}=DF(),{kEnumerableProperty:nPe}=Ch(),But=class e{#e=new Map;constructor(){arguments[0]!==rPe&&LF.illegalConstructor()}async match(t,r={}){if(LF.brandCheck(this,e),LF.argumentLengthCheck(arguments,1,{header:"CacheStorage.match"}),t=LF.converters.RequestInfo(t),r=LF.converters.MultiCacheQueryOptions(r),r.cacheName!=null){if(this.#e.has(r.cacheName)){let s=this.#e.get(r.cacheName);return await new Eut(rPe,s).match(t,r)}}else for(let s of this.#e.values()){let o=await new Eut(rPe,s).match(t,r);if(o!==void 0)return o}}async has(t){return LF.brandCheck(this,e),LF.argumentLengthCheck(arguments,1,{header:"CacheStorage.has"}),t=LF.converters.DOMString(t),this.#e.has(t)}async open(t){if(LF.brandCheck(this,e),LF.argumentLengthCheck(arguments,1,{header:"CacheStorage.open"}),t=LF.converters.DOMString(t),this.#e.has(t)){let s=this.#e.get(t);return new Eut(rPe,s)}let r=[];return this.#e.set(t,r),new Eut(rPe,r)}async delete(t){return LF.brandCheck(this,e),LF.argumentLengthCheck(arguments,1,{header:"CacheStorage.delete"}),t=LF.converters.DOMString(t),this.#e.delete(t)}async keys(){return LF.brandCheck(this,e),[...this.#e.keys()]}};Object.defineProperties(But.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:nPe,has:nPe,open:nPe,delete:nPe,keys:nPe});hDn.exports={CacheStorage:But}});var bDn=z((k8c,yDn)=>{"use strict";yDn.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var J$t=z((G8c,vDn)=>{"use strict";var EDn=xt("assert"),{kHeadersList:BDn}=lE();function VIo(e){if(e.length===0)return!1;for(let t of e){let r=t.charCodeAt(0);if(r>=0||r<=8||r>=10||r<=31||r===127)return!1}}function WIo(e){for(let t of e){let r=t.charCodeAt(0);if(r<=32||r>127||t==="("||t===")"||t===">"||t==="<"||t==="@"||t===","||t===";"||t===":"||t==="\\"||t==='"'||t==="/"||t==="["||t==="]"||t==="?"||t==="="||t==="{"||t==="}")throw new Error("Invalid cookie name")}}function PIo(e){for(let t of e){let r=t.charCodeAt(0);if(r<33||r===34||r===44||r===59||r===92||r>126)throw new Error("Invalid header value")}}function OIo(e){for(let t of e)if(t.charCodeAt(0)<33||t===";")throw new Error("Invalid cookie path")}function QIo(e){if(e.startsWith("-")||e.endsWith(".")||e.endsWith("-"))throw new Error("Invalid cookie domain")}function MIo(e){typeof e=="number"&&(e=new Date(e));let t=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],r=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],s=t[e.getUTCDay()],a=e.getUTCDate().toString().padStart(2,"0"),o=r[e.getUTCMonth()],g=e.getUTCFullYear(),p=e.getUTCHours().toString().padStart(2,"0"),f=e.getUTCMinutes().toString().padStart(2,"0"),m=e.getUTCSeconds().toString().padStart(2,"0");return`${s}, ${a} ${o} ${g} ${p}:${f}:${m} GMT`}function HIo(e){if(e<0)throw new Error("Invalid cookie max-age")}function YIo(e){if(e.name.length===0)return null;WIo(e.name),PIo(e.value);let t=[`${e.name}=${e.value}`];e.name.startsWith("__Secure-")&&(e.secure=!0),e.name.startsWith("__Host-")&&(e.secure=!0,e.domain=null,e.path="/"),e.secure&&t.push("Secure"),e.httpOnly&&t.push("HttpOnly"),typeof e.maxAge=="number"&&(HIo(e.maxAge),t.push(`Max-Age=${e.maxAge}`)),e.domain&&(QIo(e.domain),t.push(`Domain=${e.domain}`)),e.path&&(OIo(e.path),t.push(`Path=${e.path}`)),e.expires&&e.expires.toString()!=="Invalid Date"&&t.push(`Expires=${MIo(e.expires)}`),e.sameSite&&t.push(`SameSite=${e.sameSite}`);for(let r of e.unparsed){if(!r.includes("="))throw new Error("Invalid unparsed");let[s,...a]=r.split("=");t.push(`${s.trim()}=${a.join("=")}`)}return t.join("; ")}var vut;function XIo(e){if(e[BDn])return e[BDn];vut||(vut=Object.getOwnPropertySymbols(e).find(r=>r.description==="headers list"),EDn(vut,"Headers cannot be parsed"));let t=e[vut];return EDn(t),t}vDn.exports={isCTLExcludingHtab:VIo,stringify:YIo,getHeadersList:XIo}});var wDn=z((F8c,SDn)=>{"use strict";var{maxNameValuePairSize:JIo,maxAttributeValueSize:UIo}=bDn(),{isCTLExcludingHtab:KIo}=J$t(),{collectASequenceOfCodePointsFast:Sut}=WH(),jIo=xt("assert");function zIo(e){if(KIo(e))return null;let t="",r="",s="",a="";if(e.includes(";")){let o={position:0};t=Sut(";",e,o),r=e.slice(o.position)}else t=e;if(!t.includes("="))a=t;else{let o={position:0};s=Sut("=",t,o),a=t.slice(o.position+1)}return s=s.trim(),a=a.trim(),s.length+a.length>JIo?null:{name:s,value:a,...e2e(r)}}function e2e(e,t={}){if(e.length===0)return t;jIo(e[0]===";"),e=e.slice(1);let r="";e.includes(";")?(r=Sut(";",e,{position:0}),e=e.slice(r.length)):(r=e,e="");let s="",a="";if(r.includes("=")){let g={position:0};s=Sut("=",r,g),a=r.slice(g.position+1)}else s=r;if(s=s.trim(),a=a.trim(),a.length>UIo)return e2e(e,t);let o=s.toLowerCase();if(o==="expires"){let g=new Date(a);t.expires=g}else if(o==="max-age"){let g=a.charCodeAt(0);if((g<48||g>57)&&a[0]!=="-"||!/^\d+$/.test(a))return e2e(e,t);let p=Number(a);t.maxAge=p}else if(o==="domain"){let g=a;g[0]==="."&&(g=g.slice(1)),g=g.toLowerCase(),t.domain=g}else if(o==="path"){let g="";a.length===0||a[0]!=="/"?g="/":g=a,t.path=g}else if(o==="secure")t.secure=!0;else if(o==="httponly")t.httpOnly=!0;else if(o==="samesite"){let g="Default",p=a.toLowerCase();p.includes("none")&&(g="None"),p.includes("strict")&&(g="Strict"),p.includes("lax")&&(g="Lax"),t.sameSite=g}else t.unparsed??=[],t.unparsed.push(`${s}=${a}`);return e2e(e,t)}SDn.exports={parseSetCookie:zIo,parseUnparsedAttributes:e2e}});var DDn=z((Z8c,RDn)=>{"use strict";var{parseSetCookie:qIo}=wDn(),{stringify:TDn,getHeadersList:$Io}=J$t(),{webidl:Vm}=DF(),{Headers:wut}=Nde();function eCo(e){Vm.argumentLengthCheck(arguments,1,{header:"getCookies"}),Vm.brandCheck(e,wut,{strict:!1});let t=e.get("cookie"),r={};if(!t)return r;for(let s of t.split(";")){let[a,...o]=s.split("=");r[a.trim()]=o.join("=")}return r}function tCo(e,t,r){Vm.argumentLengthCheck(arguments,2,{header:"deleteCookie"}),Vm.brandCheck(e,wut,{strict:!1}),t=Vm.converters.DOMString(t),r=Vm.converters.DeleteCookieAttributes(r),NDn(e,{name:t,value:"",expires:new Date(0),...r})}function rCo(e){Vm.argumentLengthCheck(arguments,1,{header:"getSetCookies"}),Vm.brandCheck(e,wut,{strict:!1});let t=$Io(e).cookies;return t?t.map(r=>qIo(Array.isArray(r)?r[1]:r)):[]}function NDn(e,t){Vm.argumentLengthCheck(arguments,2,{header:"setCookie"}),Vm.brandCheck(e,wut,{strict:!1}),t=Vm.converters.Cookie(t),TDn(t)&&e.append("Set-Cookie",TDn(t))}Vm.converters.DeleteCookieAttributes=Vm.dictionaryConverter([{converter:Vm.nullableConverter(Vm.converters.DOMString),key:"path",defaultValue:null},{converter:Vm.nullableConverter(Vm.converters.DOMString),key:"domain",defaultValue:null}]);Vm.converters.Cookie=Vm.dictionaryConverter([{converter:Vm.converters.DOMString,key:"name"},{converter:Vm.converters.DOMString,key:"value"},{converter:Vm.nullableConverter(e=>typeof e=="number"?Vm.converters["unsigned long long"](e):new Date(e)),key:"expires",defaultValue:null},{converter:Vm.nullableConverter(Vm.converters["long long"]),key:"maxAge",defaultValue:null},{converter:Vm.nullableConverter(Vm.converters.DOMString),key:"domain",defaultValue:null},{converter:Vm.nullableConverter(Vm.converters.DOMString),key:"path",defaultValue:null},{converter:Vm.nullableConverter(Vm.converters.boolean),key:"secure",defaultValue:null},{converter:Vm.nullableConverter(Vm.converters.boolean),key:"httpOnly",defaultValue:null},{converter:Vm.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:Vm.sequenceConverter(Vm.converters.DOMString),key:"unparsed",defaultValue:[]}]);RDn.exports={getCookies:eCo,deleteCookie:tCo,getSetCookies:rCo,setCookie:NDn}});var t2e=z((L8c,xDn)=>{"use strict";var nCo="258EAFA5-E914-47DA-95CA-C5AB0DC85B11",iCo={enumerable:!0,writable:!1,configurable:!1},sCo={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},oCo={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},aCo=2**16-1,cCo={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},lCo=Buffer.allocUnsafe(0);xDn.exports={uid:nCo,staticPropertyDescriptors:iCo,states:sCo,opcodes:oCo,maxUnsigned16Bit:aCo,parserStates:cCo,emptyBuffer:lCo}});var iPe=z((V8c,kDn)=>{"use strict";kDn.exports={kWebSocketURL:Symbol("url"),kReadyState:Symbol("ready state"),kController:Symbol("controller"),kResponse:Symbol("response"),kBinaryType:Symbol("binary type"),kSentClose:Symbol("sent close"),kReceivedClose:Symbol("received close"),kByteParser:Symbol("byte parser")}});var K$t=z((W8c,GDn)=>{"use strict";var{webidl:Zp}=DF(),{kEnumerableProperty:QL}=Ch(),{MessagePort:uCo}=xt("worker_threads"),Tut=class e extends Event{#e;constructor(t,r={}){Zp.argumentLengthCheck(arguments,1,{header:"MessageEvent constructor"}),t=Zp.converters.DOMString(t),r=Zp.converters.MessageEventInit(r),super(t,r),this.#e=r}get data(){return Zp.brandCheck(this,e),this.#e.data}get origin(){return Zp.brandCheck(this,e),this.#e.origin}get lastEventId(){return Zp.brandCheck(this,e),this.#e.lastEventId}get source(){return Zp.brandCheck(this,e),this.#e.source}get ports(){return Zp.brandCheck(this,e),Object.isFrozen(this.#e.ports)||Object.freeze(this.#e.ports),this.#e.ports}initMessageEvent(t,r=!1,s=!1,a=null,o="",g="",p=null,f=[]){return Zp.brandCheck(this,e),Zp.argumentLengthCheck(arguments,1,{header:"MessageEvent.initMessageEvent"}),new e(t,{bubbles:r,cancelable:s,data:a,origin:o,lastEventId:g,source:p,ports:f})}},Nut=class e extends Event{#e;constructor(t,r={}){Zp.argumentLengthCheck(arguments,1,{header:"CloseEvent constructor"}),t=Zp.converters.DOMString(t),r=Zp.converters.CloseEventInit(r),super(t,r),this.#e=r}get wasClean(){return Zp.brandCheck(this,e),this.#e.wasClean}get code(){return Zp.brandCheck(this,e),this.#e.code}get reason(){return Zp.brandCheck(this,e),this.#e.reason}},Rut=class e extends Event{#e;constructor(t,r){Zp.argumentLengthCheck(arguments,1,{header:"ErrorEvent constructor"}),super(t,r),t=Zp.converters.DOMString(t),r=Zp.converters.ErrorEventInit(r??{}),this.#e=r}get message(){return Zp.brandCheck(this,e),this.#e.message}get filename(){return Zp.brandCheck(this,e),this.#e.filename}get lineno(){return Zp.brandCheck(this,e),this.#e.lineno}get colno(){return Zp.brandCheck(this,e),this.#e.colno}get error(){return Zp.brandCheck(this,e),this.#e.error}};Object.defineProperties(Tut.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:QL,origin:QL,lastEventId:QL,source:QL,ports:QL,initMessageEvent:QL});Object.defineProperties(Nut.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:QL,code:QL,wasClean:QL});Object.defineProperties(Rut.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:QL,filename:QL,lineno:QL,colno:QL,error:QL});Zp.converters.MessagePort=Zp.interfaceConverter(uCo);Zp.converters["sequence"]=Zp.sequenceConverter(Zp.converters.MessagePort);var U$t=[{key:"bubbles",converter:Zp.converters.boolean,defaultValue:!1},{key:"cancelable",converter:Zp.converters.boolean,defaultValue:!1},{key:"composed",converter:Zp.converters.boolean,defaultValue:!1}];Zp.converters.MessageEventInit=Zp.dictionaryConverter([...U$t,{key:"data",converter:Zp.converters.any,defaultValue:null},{key:"origin",converter:Zp.converters.USVString,defaultValue:""},{key:"lastEventId",converter:Zp.converters.DOMString,defaultValue:""},{key:"source",converter:Zp.nullableConverter(Zp.converters.MessagePort),defaultValue:null},{key:"ports",converter:Zp.converters["sequence"],get defaultValue(){return[]}}]);Zp.converters.CloseEventInit=Zp.dictionaryConverter([...U$t,{key:"wasClean",converter:Zp.converters.boolean,defaultValue:!1},{key:"code",converter:Zp.converters["unsigned short"],defaultValue:0},{key:"reason",converter:Zp.converters.USVString,defaultValue:""}]);Zp.converters.ErrorEventInit=Zp.dictionaryConverter([...U$t,{key:"message",converter:Zp.converters.DOMString,defaultValue:""},{key:"filename",converter:Zp.converters.USVString,defaultValue:""},{key:"lineno",converter:Zp.converters["unsigned long"],defaultValue:0},{key:"colno",converter:Zp.converters["unsigned long"],defaultValue:0},{key:"error",converter:Zp.converters.any}]);GDn.exports={MessageEvent:Tut,CloseEvent:Nut,ErrorEvent:Rut}});var kut=z((P8c,LDn)=>{"use strict";var{kReadyState:Dut,kController:gCo,kResponse:ACo,kBinaryType:dCo,kWebSocketURL:pCo}=iPe(),{states:xut,opcodes:FDn}=t2e(),{MessageEvent:fCo,ErrorEvent:ICo}=K$t();function CCo(e){return e[Dut]===xut.OPEN}function mCo(e){return e[Dut]===xut.CLOSING}function hCo(e){return e[Dut]===xut.CLOSED}function j$t(e,t,r=Event,s){let a=new r(e,s);t.dispatchEvent(a)}function _Co(e,t,r){if(e[Dut]!==xut.OPEN)return;let s;if(t===FDn.TEXT)try{s=new TextDecoder("utf-8",{fatal:!0}).decode(r)}catch{ZDn(e,"Received invalid UTF-8 in text frame.");return}else t===FDn.BINARY&&(e[dCo]==="blob"?s=new Blob([r]):s=new Uint8Array(r).buffer);j$t("message",e,fCo,{origin:e[pCo].origin,data:s})}function yCo(e){if(e.length===0)return!1;for(let t of e){let r=t.charCodeAt(0);if(r<33||r>126||t==="("||t===")"||t==="<"||t===">"||t==="@"||t===","||t===";"||t===":"||t==="\\"||t==='"'||t==="/"||t==="["||t==="]"||t==="?"||t==="="||t==="{"||t==="}"||r===32||r===9)return!1}return!0}function bCo(e){return e>=1e3&&e<1015?e!==1004&&e!==1005&&e!==1006:e>=3e3&&e<=4999}function ZDn(e,t){let{[gCo]:r,[ACo]:s}=e;r.abort(),s?.socket&&!s.socket.destroyed&&s.socket.destroy(),t&&j$t("error",e,ICo,{error:new Error(t)})}LDn.exports={isEstablished:CCo,isClosing:mCo,isClosed:hCo,fireEvent:j$t,isValidSubprotocol:yCo,isValidStatusCode:bCo,failWebsocketConnection:ZDn,websocketMessageReceived:_Co}});var MDn=z((O8c,QDn)=>{"use strict";var q$t=xt("diagnostics_channel"),{uid:ECo,states:WDn}=t2e(),{kReadyState:PDn,kSentClose:VDn,kByteParser:ODn,kReceivedClose:BCo}=iPe(),{fireEvent:vCo,failWebsocketConnection:kde}=kut(),{CloseEvent:SCo}=K$t(),{makeRequest:wCo}=$3e(),{fetching:TCo}=fut(),{Headers:NCo}=Nde(),{getGlobalDispatcher:RCo}=M1e(),{kHeadersList:DCo}=lE(),zj={};zj.open=q$t.channel("undici:websocket:open");zj.close=q$t.channel("undici:websocket:close");zj.socketError=q$t.channel("undici:websocket:socket_error");var z$t;try{z$t=xt("crypto")}catch{}function xCo(e,t,r,s,a){let o=e;o.protocol=e.protocol==="ws:"?"http:":"https:";let g=wCo({urlList:[o],serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(a.headers){let y=new NCo(a.headers)[DCo];g.headersList=y}let p=z$t.randomBytes(16).toString("base64");g.headersList.append("sec-websocket-key",p),g.headersList.append("sec-websocket-version","13");for(let y of t)g.headersList.append("sec-websocket-protocol",y);let f="";return TCo({request:g,useParallelQueue:!0,dispatcher:a.dispatcher??RCo(),processResponse(y){if(y.type==="error"||y.status!==101){kde(r,"Received network error or non-101 status code.");return}if(t.length!==0&&!y.headersList.get("Sec-WebSocket-Protocol")){kde(r,"Server did not respond with sent protocols.");return}if(y.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){kde(r,'Server did not set Upgrade header to "websocket".');return}if(y.headersList.get("Connection")?.toLowerCase()!=="upgrade"){kde(r,'Server did not set Connection header to "upgrade".');return}let B=y.headersList.get("Sec-WebSocket-Accept"),v=z$t.createHash("sha1").update(p+ECo).digest("base64");if(B!==v){kde(r,"Incorrect hash received in Sec-WebSocket-Accept header.");return}let k=y.headersList.get("Sec-WebSocket-Extensions");if(k!==null&&k!==f){kde(r,"Received different permessage-deflate than the one set.");return}let T=y.headersList.get("Sec-WebSocket-Protocol");if(T!==null&&T!==g.headersList.get("Sec-WebSocket-Protocol")){kde(r,"Protocol was not set in the opening handshake.");return}y.socket.on("data",kCo),y.socket.on("close",GCo),y.socket.on("error",FCo),zj.open.hasSubscribers&&zj.open.publish({address:y.socket.address(),protocol:T,extensions:k}),s(y)}})}function kCo(e){this.ws[ODn].write(e)||this.pause()}function GCo(){let{ws:e}=this,t=e[VDn]&&e[BCo],r=1005,s="",a=e[ODn].closingInfo;a?(r=a.code??1005,s=a.reason):e[VDn]||(r=1006),e[PDn]=WDn.CLOSED,vCo("close",e,SCo,{wasClean:t,code:r,reason:s}),zj.close.hasSubscribers&&zj.close.publish({websocket:e,code:r,reason:s})}function FCo(e){let{ws:t}=this;t[PDn]=WDn.CLOSING,zj.socketError.hasSubscribers&&zj.socketError.publish(e),this.destroy()}QDn.exports={establishWebSocketConnection:xCo}});var eer=z((Q8c,YDn)=>{"use strict";var{maxUnsigned16Bit:ZCo}=t2e(),HDn;try{HDn=xt("crypto")}catch{}var $$t=class{constructor(t){this.frameData=t,this.maskKey=HDn.randomBytes(4)}createFrame(t){let r=this.frameData?.byteLength??0,s=r,a=6;r>ZCo?(a+=8,s=127):r>125&&(a+=2,s=126);let o=Buffer.allocUnsafe(r+a);o[0]=o[1]=0,o[0]|=128,o[0]=(o[0]&240)+t;o[a-4]=this.maskKey[0],o[a-3]=this.maskKey[1],o[a-2]=this.maskKey[2],o[a-1]=this.maskKey[3],o[1]=s,s===126?o.writeUInt16BE(r,2):s===127&&(o[2]=o[3]=0,o.writeUIntBE(r,4,6)),o[1]|=128;for(let g=0;g{"use strict";var{Writable:LCo}=xt("stream"),zDn=xt("diagnostics_channel"),{parserStates:KO,opcodes:jO,states:VCo,emptyBuffer:WCo}=t2e(),{kReadyState:PCo,kSentClose:XDn,kResponse:JDn,kReceivedClose:UDn}=iPe(),{isValidStatusCode:KDn,failWebsocketConnection:sPe,websocketMessageReceived:OCo}=kut(),{WebsocketFrameSend:jDn}=eer(),r2e={};r2e.ping=zDn.channel("undici:websocket:ping");r2e.pong=zDn.channel("undici:websocket:pong");var ter=class extends LCo{#e=[];#t=0;#r=KO.INFO;#n={};#i=[];constructor(t){super(),this.ws=t}_write(t,r,s){this.#e.push(t),this.#t+=t.length,this.run(s)}run(t){for(;;){if(this.#r===KO.INFO){if(this.#t<2)return t();let r=this.consume(2);if(this.#n.fin=(r[0]&128)!==0,this.#n.opcode=r[0]&15,this.#n.originalOpcode??=this.#n.opcode,this.#n.fragmented=!this.#n.fin&&this.#n.opcode!==jO.CONTINUATION,this.#n.fragmented&&this.#n.opcode!==jO.BINARY&&this.#n.opcode!==jO.TEXT){sPe(this.ws,"Invalid frame type was fragmented.");return}let s=r[1]&127;if(s<=125?(this.#n.payloadLength=s,this.#r=KO.READ_DATA):s===126?this.#r=KO.PAYLOADLENGTH_16:s===127&&(this.#r=KO.PAYLOADLENGTH_64),this.#n.fragmented&&s>125){sPe(this.ws,"Fragmented frame exceeded 125 bytes.");return}else if((this.#n.opcode===jO.PING||this.#n.opcode===jO.PONG||this.#n.opcode===jO.CLOSE)&&s>125){sPe(this.ws,"Payload length for control frame exceeded 125 bytes.");return}else if(this.#n.opcode===jO.CLOSE){if(s===1){sPe(this.ws,"Received close frame with a 1-byte body.");return}let a=this.consume(s);if(this.#n.closeInfo=this.parseCloseBody(!1,a),!this.ws[XDn]){let o=Buffer.allocUnsafe(2);o.writeUInt16BE(this.#n.closeInfo.code,0);let g=new jDn(o);this.ws[JDn].socket.write(g.createFrame(jO.CLOSE),p=>{p||(this.ws[XDn]=!0)})}this.ws[PCo]=VCo.CLOSING,this.ws[UDn]=!0,this.end();return}else if(this.#n.opcode===jO.PING){let a=this.consume(s);if(!this.ws[UDn]){let o=new jDn(a);this.ws[JDn].socket.write(o.createFrame(jO.PONG)),r2e.ping.hasSubscribers&&r2e.ping.publish({payload:a})}if(this.#r=KO.INFO,this.#t>0)continue;t();return}else if(this.#n.opcode===jO.PONG){let a=this.consume(s);if(r2e.pong.hasSubscribers&&r2e.pong.publish({payload:a}),this.#t>0)continue;t();return}}else if(this.#r===KO.PAYLOADLENGTH_16){if(this.#t<2)return t();let r=this.consume(2);this.#n.payloadLength=r.readUInt16BE(0),this.#r=KO.READ_DATA}else if(this.#r===KO.PAYLOADLENGTH_64){if(this.#t<8)return t();let r=this.consume(8),s=r.readUInt32BE(0);if(s>2**31-1){sPe(this.ws,"Received payload length > 2^31 bytes.");return}let a=r.readUInt32BE(4);this.#n.payloadLength=(s<<8)+a,this.#r=KO.READ_DATA}else if(this.#r===KO.READ_DATA){if(this.#t=this.#n.payloadLength){let r=this.consume(this.#n.payloadLength);if(this.#i.push(r),!this.#n.fragmented||this.#n.fin&&this.#n.opcode===jO.CONTINUATION){let s=Buffer.concat(this.#i);OCo(this.ws,this.#n.originalOpcode,s),this.#n={},this.#i.length=0}this.#r=KO.INFO}}if(!(this.#t>0)){t();break}}}consume(t){if(t>this.#t)return null;if(t===0)return WCo;if(this.#e[0].length===t)return this.#t-=this.#e[0].length,this.#e.shift();let r=Buffer.allocUnsafe(t),s=0;for(;s!==t;){let a=this.#e[0],{length:o}=a;if(o+s===t){r.set(this.#e.shift(),s);break}else if(o+s>t){r.set(a.subarray(0,t-s),s),this.#e[0]=a.subarray(t-s);break}else r.set(this.#e.shift(),s),s+=a.length}return this.#t-=t,r}parseCloseBody(t,r){let s;if(r.length>=2&&(s=r.readUInt16BE(0)),t)return KDn(s)?{code:s}:null;let a=r.subarray(2);if(a[0]===239&&a[1]===187&&a[2]===191&&(a=a.subarray(3)),s!==void 0&&!KDn(s))return null;try{a=new TextDecoder("utf-8",{fatal:!0}).decode(a)}catch{return null}return{code:s,reason:a}}get closingInfo(){return this.#n.closeInfo}};qDn.exports={ByteParser:ter}});var axn=z((H8c,oxn)=>{"use strict";var{webidl:AI}=DF(),{DOMException:pie}=sie(),{URLSerializer:QCo}=WH(),{getGlobalOrigin:MCo}=y1e(),{staticPropertyDescriptors:fie,states:n2e,opcodes:oPe,emptyBuffer:HCo}=t2e(),{kWebSocketURL:exn,kReadyState:qj,kController:YCo,kBinaryType:Gut,kResponse:Fut,kSentClose:XCo,kByteParser:JCo}=iPe(),{isEstablished:txn,isClosing:rxn,isValidSubprotocol:UCo,failWebsocketConnection:KCo,fireEvent:jCo}=kut(),{establishWebSocketConnection:zCo}=MDn(),{WebsocketFrameSend:aPe}=eer(),{ByteParser:qCo}=$Dn(),{kEnumerableProperty:zO,isBlobLike:ixn}=Ch(),{getGlobalDispatcher:$Co}=M1e(),{types:sxn}=xt("util"),nxn=!1,LW=class e extends EventTarget{#e={open:null,error:null,close:null,message:null};#t=0;#r="";#n="";constructor(t,r=[]){super(),AI.argumentLengthCheck(arguments,1,{header:"WebSocket constructor"}),nxn||(nxn=!0,process.emitWarning("WebSockets are experimental, expect them to change at any time.",{code:"UNDICI-WS"}));let s=AI.converters["DOMString or sequence or WebSocketInit"](r);t=AI.converters.USVString(t),r=s.protocols;let a=MCo(),o;try{o=new URL(t,a)}catch(g){throw new pie(g,"SyntaxError")}if(o.protocol==="http:"?o.protocol="ws:":o.protocol==="https:"&&(o.protocol="wss:"),o.protocol!=="ws:"&&o.protocol!=="wss:")throw new pie(`Expected a ws: or wss: protocol, got ${o.protocol}`,"SyntaxError");if(o.hash||o.href.endsWith("#"))throw new pie("Got fragment","SyntaxError");if(typeof r=="string"&&(r=[r]),r.length!==new Set(r.map(g=>g.toLowerCase())).size)throw new pie("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(r.length>0&&!r.every(g=>UCo(g)))throw new pie("Invalid Sec-WebSocket-Protocol value","SyntaxError");this[exn]=new URL(o.href),this[YCo]=zCo(o,r,this,g=>this.#i(g),s),this[qj]=e.CONNECTING,this[Gut]="blob"}close(t=void 0,r=void 0){if(AI.brandCheck(this,e),t!==void 0&&(t=AI.converters["unsigned short"](t,{clamp:!0})),r!==void 0&&(r=AI.converters.USVString(r)),t!==void 0&&t!==1e3&&(t<3e3||t>4999))throw new pie("invalid code","InvalidAccessError");let s=0;if(r!==void 0&&(s=Buffer.byteLength(r),s>123))throw new pie(`Reason must be less than 123 bytes; received ${s}`,"SyntaxError");if(!(this[qj]===e.CLOSING||this[qj]===e.CLOSED))if(!txn(this))KCo(this,"Connection was closed before it was established."),this[qj]=e.CLOSING;else if(rxn(this))this[qj]=e.CLOSING;else{let a=new aPe;t!==void 0&&r===void 0?(a.frameData=Buffer.allocUnsafe(2),a.frameData.writeUInt16BE(t,0)):t!==void 0&&r!==void 0?(a.frameData=Buffer.allocUnsafe(2+s),a.frameData.writeUInt16BE(t,0),a.frameData.write(r,2,"utf-8")):a.frameData=HCo,this[Fut].socket.write(a.createFrame(oPe.CLOSE),g=>{g||(this[XCo]=!0)}),this[qj]=n2e.CLOSING}}send(t){if(AI.brandCheck(this,e),AI.argumentLengthCheck(arguments,1,{header:"WebSocket.send"}),t=AI.converters.WebSocketSendData(t),this[qj]===e.CONNECTING)throw new pie("Sent before connected.","InvalidStateError");if(!txn(this)||rxn(this))return;let r=this[Fut].socket;if(typeof t=="string"){let s=Buffer.from(t),o=new aPe(s).createFrame(oPe.TEXT);this.#t+=s.byteLength,r.write(o,()=>{this.#t-=s.byteLength})}else if(sxn.isArrayBuffer(t)){let s=Buffer.from(t),o=new aPe(s).createFrame(oPe.BINARY);this.#t+=s.byteLength,r.write(o,()=>{this.#t-=s.byteLength})}else if(ArrayBuffer.isView(t)){let s=Buffer.from(t,t.byteOffset,t.byteLength),o=new aPe(s).createFrame(oPe.BINARY);this.#t+=s.byteLength,r.write(o,()=>{this.#t-=s.byteLength})}else if(ixn(t)){let s=new aPe;t.arrayBuffer().then(a=>{let o=Buffer.from(a);s.frameData=o;let g=s.createFrame(oPe.BINARY);this.#t+=o.byteLength,r.write(g,()=>{this.#t-=o.byteLength})})}}get readyState(){return AI.brandCheck(this,e),this[qj]}get bufferedAmount(){return AI.brandCheck(this,e),this.#t}get url(){return AI.brandCheck(this,e),QCo(this[exn])}get extensions(){return AI.brandCheck(this,e),this.#n}get protocol(){return AI.brandCheck(this,e),this.#r}get onopen(){return AI.brandCheck(this,e),this.#e.open}set onopen(t){AI.brandCheck(this,e),this.#e.open&&this.removeEventListener("open",this.#e.open),typeof t=="function"?(this.#e.open=t,this.addEventListener("open",t)):this.#e.open=null}get onerror(){return AI.brandCheck(this,e),this.#e.error}set onerror(t){AI.brandCheck(this,e),this.#e.error&&this.removeEventListener("error",this.#e.error),typeof t=="function"?(this.#e.error=t,this.addEventListener("error",t)):this.#e.error=null}get onclose(){return AI.brandCheck(this,e),this.#e.close}set onclose(t){AI.brandCheck(this,e),this.#e.close&&this.removeEventListener("close",this.#e.close),typeof t=="function"?(this.#e.close=t,this.addEventListener("close",t)):this.#e.close=null}get onmessage(){return AI.brandCheck(this,e),this.#e.message}set onmessage(t){AI.brandCheck(this,e),this.#e.message&&this.removeEventListener("message",this.#e.message),typeof t=="function"?(this.#e.message=t,this.addEventListener("message",t)):this.#e.message=null}get binaryType(){return AI.brandCheck(this,e),this[Gut]}set binaryType(t){AI.brandCheck(this,e),t!=="blob"&&t!=="arraybuffer"?this[Gut]="blob":this[Gut]=t}#i(t){this[Fut]=t;let r=new qCo(this);r.on("drain",function(){this.ws[Fut].socket.resume()}),t.socket.ws=this,this[JCo]=r,this[qj]=n2e.OPEN;let s=t.headersList.get("sec-websocket-extensions");s!==null&&(this.#n=s);let a=t.headersList.get("sec-websocket-protocol");a!==null&&(this.#r=a),jCo("open",this)}};LW.CONNECTING=LW.prototype.CONNECTING=n2e.CONNECTING;LW.OPEN=LW.prototype.OPEN=n2e.OPEN;LW.CLOSING=LW.prototype.CLOSING=n2e.CLOSING;LW.CLOSED=LW.prototype.CLOSED=n2e.CLOSED;Object.defineProperties(LW.prototype,{CONNECTING:fie,OPEN:fie,CLOSING:fie,CLOSED:fie,url:zO,readyState:zO,bufferedAmount:zO,onopen:zO,onerror:zO,onclose:zO,close:zO,onmessage:zO,binaryType:zO,send:zO,extensions:zO,protocol:zO,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(LW,{CONNECTING:fie,OPEN:fie,CLOSING:fie,CLOSED:fie});AI.converters["sequence"]=AI.sequenceConverter(AI.converters.DOMString);AI.converters["DOMString or sequence"]=function(e){return AI.util.Type(e)==="Object"&&Symbol.iterator in e?AI.converters["sequence"](e):AI.converters.DOMString(e)};AI.converters.WebSocketInit=AI.dictionaryConverter([{key:"protocols",converter:AI.converters["DOMString or sequence"],get defaultValue(){return[]}},{key:"dispatcher",converter:e=>e,get defaultValue(){return $Co()}},{key:"headers",converter:AI.nullableConverter(AI.converters.HeadersInit)}]);AI.converters["DOMString or sequence or WebSocketInit"]=function(e){return AI.util.Type(e)==="Object"&&!(Symbol.iterator in e)?AI.converters.WebSocketInit(e):{protocols:AI.converters["DOMString or sequence"](e)}};AI.converters.WebSocketSendData=function(e){if(AI.util.Type(e)==="Object"){if(ixn(e))return AI.converters.Blob(e,{strict:!1});if(ArrayBuffer.isView(e)||sxn.isAnyArrayBuffer(e))return AI.converters.BufferSource(e)}return AI.converters.USVString(e)};oxn.exports={WebSocket:LW}});var gxn=z((Y8c,aC)=>{"use strict";var emo=P3e(),cxn=Ilt(),lxn=yb(),tmo=G1e(),rmo=bTn(),nmo=H3e(),Gde=Ch(),{InvalidArgumentError:Zut}=lxn,i2e=dNn(),imo=x3e(),smo=g$t(),omo=KNn(),amo=p$t(),cmo=$qt(),lmo=tRn(),umo=oRn(),{getGlobalDispatcher:uxn,setGlobalDispatcher:gmo}=M1e(),Amo=ARn(),dmo=uqt(),pmo=_lt(),rer;try{xt("crypto"),rer=!0}catch{rer=!1}Object.assign(cxn.prototype,i2e);aC.exports.Dispatcher=cxn;aC.exports.Client=emo;aC.exports.Pool=tmo;aC.exports.BalancedPool=rmo;aC.exports.Agent=nmo;aC.exports.ProxyAgent=lmo;aC.exports.RetryHandler=umo;aC.exports.DecoratorHandler=Amo;aC.exports.RedirectHandler=dmo;aC.exports.createRedirectInterceptor=pmo;aC.exports.buildConnector=imo;aC.exports.errors=lxn;function cPe(e){return(t,r,s)=>{if(typeof r=="function"&&(s=r,r=null),!t||typeof t!="string"&&typeof t!="object"&&!(t instanceof URL))throw new Zut("invalid url");if(r!=null&&typeof r!="object")throw new Zut("invalid opts");if(r&&r.path!=null){if(typeof r.path!="string")throw new Zut("invalid opts.path");let g=r.path;r.path.startsWith("/")||(g=`/${g}`),t=new URL(Gde.parseOrigin(t).origin+g)}else r||(r=typeof t=="object"?t:{}),t=Gde.parseURL(t);let{agent:a,dispatcher:o=uxn()}=r;if(a)throw new Zut("unsupported opts.agent. Did you mean opts.client?");return e.call(o,{...r,origin:t.origin,path:t.search?`${t.pathname}${t.search}`:t.pathname,method:r.method||(r.body?"PUT":"GET")},s)}}aC.exports.setGlobalDispatcher=gmo;aC.exports.getGlobalDispatcher=uxn;if(Gde.nodeMajor>16||Gde.nodeMajor===16&&Gde.nodeMinor>=8){let e=null;aC.exports.fetch=async function(g){e||(e=fut().fetch);try{return await e(...arguments)}catch(p){throw typeof p=="object"&&Error.captureStackTrace(p,this),p}},aC.exports.Headers=Nde().Headers,aC.exports.Response=nut().Response,aC.exports.Request=$3e().Request,aC.exports.FormData=dlt().FormData,aC.exports.File=glt().File,aC.exports.FileReader=cDn().FileReader;let{setGlobalOrigin:t,getGlobalOrigin:r}=y1e();aC.exports.setGlobalOrigin=t,aC.exports.getGlobalOrigin=r;let{CacheStorage:s}=_Dn(),{kConstruct:a}=hut();aC.exports.caches=new s(a)}if(Gde.nodeMajor>=16){let{deleteCookie:e,getCookies:t,getSetCookies:r,setCookie:s}=DDn();aC.exports.deleteCookie=e,aC.exports.getCookies=t,aC.exports.getSetCookies=r,aC.exports.setCookie=s;let{parseMIMEType:a,serializeAMimeType:o}=WH();aC.exports.parseMIMEType=a,aC.exports.serializeAMimeType=o}if(Gde.nodeMajor>=18&&rer){let{WebSocket:e}=axn();aC.exports.WebSocket=e}aC.exports.request=cPe(i2e.request);aC.exports.stream=cPe(i2e.stream);aC.exports.pipeline=cPe(i2e.pipeline);aC.exports.connect=cPe(i2e.connect);aC.exports.upgrade=cPe(i2e.upgrade);aC.exports.MockClient=smo;aC.exports.MockPool=amo;aC.exports.MockAgent=omo;aC.exports.mockErrors=cmo});var dxn=z(gE=>{"use strict";var fmo=gE&&gE.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Imo=gE&&gE.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Out=gE&&gE.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&fmo(t,e,r);return Imo(t,e),t},sS=gE&&gE.__awaiter||function(e,t,r,s){function a(o){return o instanceof r?o:new r(function(g){g(o)})}return new(r||(r=Promise))(function(o,g){function p(y){try{m(s.next(y))}catch(B){g(B)}}function f(y){try{m(s.throw(y))}catch(B){g(B)}}function m(y){y.done?o(y.value):a(y.value).then(p,f)}m((s=s.apply(e,t||[])).next())})};Object.defineProperty(gE,"__esModule",{value:!0});gE.HttpClient=gE.isHttps=gE.HttpClientResponse=gE.HttpClientError=gE.getProxyUrl=gE.MediaTypes=gE.Headers=gE.HttpCodes=void 0;var ner=Out(xt("http")),Axn=Out(xt("https")),ier=Out(Tvn()),Lut=Out(uXt()),Cmo=gxn(),qO;(function(e){e[e.OK=200]="OK",e[e.MultipleChoices=300]="MultipleChoices",e[e.MovedPermanently=301]="MovedPermanently",e[e.ResourceMoved=302]="ResourceMoved",e[e.SeeOther=303]="SeeOther",e[e.NotModified=304]="NotModified",e[e.UseProxy=305]="UseProxy",e[e.SwitchProxy=306]="SwitchProxy",e[e.TemporaryRedirect=307]="TemporaryRedirect",e[e.PermanentRedirect=308]="PermanentRedirect",e[e.BadRequest=400]="BadRequest",e[e.Unauthorized=401]="Unauthorized",e[e.PaymentRequired=402]="PaymentRequired",e[e.Forbidden=403]="Forbidden",e[e.NotFound=404]="NotFound",e[e.MethodNotAllowed=405]="MethodNotAllowed",e[e.NotAcceptable=406]="NotAcceptable",e[e.ProxyAuthenticationRequired=407]="ProxyAuthenticationRequired",e[e.RequestTimeout=408]="RequestTimeout",e[e.Conflict=409]="Conflict",e[e.Gone=410]="Gone",e[e.TooManyRequests=429]="TooManyRequests",e[e.InternalServerError=500]="InternalServerError",e[e.NotImplemented=501]="NotImplemented",e[e.BadGateway=502]="BadGateway",e[e.ServiceUnavailable=503]="ServiceUnavailable",e[e.GatewayTimeout=504]="GatewayTimeout"})(qO||(gE.HttpCodes=qO={}));var Nk;(function(e){e.Accept="accept",e.ContentType="content-type"})(Nk||(gE.Headers=Nk={}));var $j;(function(e){e.ApplicationJson="application/json"})($j||(gE.MediaTypes=$j={}));function mmo(e){let t=ier.getProxyUrl(new URL(e));return t?t.href:""}gE.getProxyUrl=mmo;var hmo=[qO.MovedPermanently,qO.ResourceMoved,qO.SeeOther,qO.TemporaryRedirect,qO.PermanentRedirect],_mo=[qO.BadGateway,qO.ServiceUnavailable,qO.GatewayTimeout],ymo=["OPTIONS","GET","DELETE","HEAD"],bmo=10,Emo=5,Wut=class e extends Error{constructor(t,r){super(t),this.name="HttpClientError",this.statusCode=r,Object.setPrototypeOf(this,e.prototype)}};gE.HttpClientError=Wut;var Put=class{constructor(t){this.message=t}readBody(){return sS(this,void 0,void 0,function*(){return new Promise(t=>sS(this,void 0,void 0,function*(){let r=Buffer.alloc(0);this.message.on("data",s=>{r=Buffer.concat([r,s])}),this.message.on("end",()=>{t(r.toString())})}))})}readBodyBuffer(){return sS(this,void 0,void 0,function*(){return new Promise(t=>sS(this,void 0,void 0,function*(){let r=[];this.message.on("data",s=>{r.push(s)}),this.message.on("end",()=>{t(Buffer.concat(r))})}))})}};gE.HttpClientResponse=Put;function Bmo(e){return new URL(e).protocol==="https:"}gE.isHttps=Bmo;var ser=class{constructor(t,r,s){this._ignoreSslError=!1,this._allowRedirects=!0,this._allowRedirectDowngrade=!1,this._maxRedirects=50,this._allowRetries=!1,this._maxRetries=1,this._keepAlive=!1,this._disposed=!1,this.userAgent=t,this.handlers=r||[],this.requestOptions=s,s&&(s.ignoreSslError!=null&&(this._ignoreSslError=s.ignoreSslError),this._socketTimeout=s.socketTimeout,s.allowRedirects!=null&&(this._allowRedirects=s.allowRedirects),s.allowRedirectDowngrade!=null&&(this._allowRedirectDowngrade=s.allowRedirectDowngrade),s.maxRedirects!=null&&(this._maxRedirects=Math.max(s.maxRedirects,0)),s.keepAlive!=null&&(this._keepAlive=s.keepAlive),s.allowRetries!=null&&(this._allowRetries=s.allowRetries),s.maxRetries!=null&&(this._maxRetries=s.maxRetries))}options(t,r){return sS(this,void 0,void 0,function*(){return this.request("OPTIONS",t,null,r||{})})}get(t,r){return sS(this,void 0,void 0,function*(){return this.request("GET",t,null,r||{})})}del(t,r){return sS(this,void 0,void 0,function*(){return this.request("DELETE",t,null,r||{})})}post(t,r,s){return sS(this,void 0,void 0,function*(){return this.request("POST",t,r,s||{})})}patch(t,r,s){return sS(this,void 0,void 0,function*(){return this.request("PATCH",t,r,s||{})})}put(t,r,s){return sS(this,void 0,void 0,function*(){return this.request("PUT",t,r,s||{})})}head(t,r){return sS(this,void 0,void 0,function*(){return this.request("HEAD",t,null,r||{})})}sendStream(t,r,s,a){return sS(this,void 0,void 0,function*(){return this.request(t,r,s,a)})}getJson(t,r={}){return sS(this,void 0,void 0,function*(){r[Nk.Accept]=this._getExistingOrDefaultHeader(r,Nk.Accept,$j.ApplicationJson);let s=yield this.get(t,r);return this._processResponse(s,this.requestOptions)})}postJson(t,r,s={}){return sS(this,void 0,void 0,function*(){let a=JSON.stringify(r,null,2);s[Nk.Accept]=this._getExistingOrDefaultHeader(s,Nk.Accept,$j.ApplicationJson),s[Nk.ContentType]=this._getExistingOrDefaultHeader(s,Nk.ContentType,$j.ApplicationJson);let o=yield this.post(t,a,s);return this._processResponse(o,this.requestOptions)})}putJson(t,r,s={}){return sS(this,void 0,void 0,function*(){let a=JSON.stringify(r,null,2);s[Nk.Accept]=this._getExistingOrDefaultHeader(s,Nk.Accept,$j.ApplicationJson),s[Nk.ContentType]=this._getExistingOrDefaultHeader(s,Nk.ContentType,$j.ApplicationJson);let o=yield this.put(t,a,s);return this._processResponse(o,this.requestOptions)})}patchJson(t,r,s={}){return sS(this,void 0,void 0,function*(){let a=JSON.stringify(r,null,2);s[Nk.Accept]=this._getExistingOrDefaultHeader(s,Nk.Accept,$j.ApplicationJson),s[Nk.ContentType]=this._getExistingOrDefaultHeader(s,Nk.ContentType,$j.ApplicationJson);let o=yield this.patch(t,a,s);return this._processResponse(o,this.requestOptions)})}request(t,r,s,a){return sS(this,void 0,void 0,function*(){if(this._disposed)throw new Error("Client has already been disposed.");let o=new URL(r),g=this._prepareRequest(t,o,a),p=this._allowRetries&&ymo.includes(t)?this._maxRetries+1:1,f=0,m;do{if(m=yield this.requestRaw(g,s),m&&m.message&&m.message.statusCode===qO.Unauthorized){let B;for(let v of this.handlers)if(v.canHandleAuthentication(m)){B=v;break}return B?B.handleAuthentication(this,g,s):m}let y=this._maxRedirects;for(;m.message.statusCode&&hmo.includes(m.message.statusCode)&&this._allowRedirects&&y>0;){let B=m.message.headers.location;if(!B)break;let v=new URL(B);if(o.protocol==="https:"&&o.protocol!==v.protocol&&!this._allowRedirectDowngrade)throw new Error("Redirect from HTTPS to HTTP protocol. This downgrade is not allowed for security reasons. If you want to allow this behavior, set the allowRedirectDowngrade option to true.");if(yield m.readBody(),v.hostname!==o.hostname)for(let k in a)k.toLowerCase()==="authorization"&&delete a[k];g=this._prepareRequest(t,v,a),m=yield this.requestRaw(g,s),y--}if(!m.message.statusCode||!_mo.includes(m.message.statusCode))return m;f+=1,f{function o(g,p){g?a(g):p?s(p):a(new Error("Unknown error"))}this.requestRawWithCallback(t,r,o)})})}requestRawWithCallback(t,r,s){typeof r=="string"&&(t.options.headers||(t.options.headers={}),t.options.headers["Content-Length"]=Buffer.byteLength(r,"utf8"));let a=!1;function o(f,m){a||(a=!0,s(f,m))}let g=t.httpModule.request(t.options,f=>{let m=new Put(f);o(void 0,m)}),p;g.on("socket",f=>{p=f}),g.setTimeout(this._socketTimeout||3*6e4,()=>{p&&p.end(),o(new Error(`Request timeout: ${t.options.path}`))}),g.on("error",function(f){o(f)}),r&&typeof r=="string"&&g.write(r,"utf8"),r&&typeof r!="string"?(r.on("close",function(){g.end()}),r.pipe(g)):g.end()}getAgent(t){let r=new URL(t);return this._getAgent(r)}getAgentDispatcher(t){let r=new URL(t),s=ier.getProxyUrl(r);if(s&&s.hostname)return this._getProxyAgentDispatcher(r,s)}_prepareRequest(t,r,s){let a={};a.parsedUrl=r;let o=a.parsedUrl.protocol==="https:";a.httpModule=o?Axn:ner;let g=o?443:80;if(a.options={},a.options.host=a.parsedUrl.hostname,a.options.port=a.parsedUrl.port?parseInt(a.parsedUrl.port):g,a.options.path=(a.parsedUrl.pathname||"")+(a.parsedUrl.search||""),a.options.method=t,a.options.headers=this._mergeHeaders(s),this.userAgent!=null&&(a.options.headers["user-agent"]=this.userAgent),a.options.agent=this._getAgent(a.parsedUrl),this.handlers)for(let p of this.handlers)p.prepareRequest(a.options);return a}_mergeHeaders(t){return this.requestOptions&&this.requestOptions.headers?Object.assign({},Vut(this.requestOptions.headers),Vut(t||{})):Vut(t||{})}_getExistingOrDefaultHeader(t,r,s){let a;return this.requestOptions&&this.requestOptions.headers&&(a=Vut(this.requestOptions.headers)[r]),t[r]||a||s}_getAgent(t){let r,s=ier.getProxyUrl(t),a=s&&s.hostname;if(this._keepAlive&&a&&(r=this._proxyAgent),a||(r=this._agent),r)return r;let o=t.protocol==="https:",g=100;if(this.requestOptions&&(g=this.requestOptions.maxSockets||ner.globalAgent.maxSockets),s&&s.hostname){let p={maxSockets:g,keepAlive:this._keepAlive,proxy:Object.assign(Object.assign({},(s.username||s.password)&&{proxyAuth:`${s.username}:${s.password}`}),{host:s.hostname,port:s.port})},f,m=s.protocol==="https:";o?f=m?Lut.httpsOverHttps:Lut.httpsOverHttp:f=m?Lut.httpOverHttps:Lut.httpOverHttp,r=f(p),this._proxyAgent=r}if(!r){let p={keepAlive:this._keepAlive,maxSockets:g};r=o?new Axn.Agent(p):new ner.Agent(p),this._agent=r}return o&&this._ignoreSslError&&(r.options=Object.assign(r.options||{},{rejectUnauthorized:!1})),r}_getProxyAgentDispatcher(t,r){let s;if(this._keepAlive&&(s=this._proxyAgentDispatcher),s)return s;let a=t.protocol==="https:";return s=new Cmo.ProxyAgent(Object.assign({uri:r.href,pipelining:this._keepAlive?1:0},(r.username||r.password)&&{token:`Basic ${Buffer.from(`${r.username}:${r.password}`).toString("base64")}`})),this._proxyAgentDispatcher=s,a&&this._ignoreSslError&&(s.options=Object.assign(s.options.requestTls||{},{rejectUnauthorized:!1})),s}_performExponentialBackoff(t){return sS(this,void 0,void 0,function*(){t=Math.min(bmo,t);let r=Emo*Math.pow(2,t);return new Promise(s=>setTimeout(()=>s(),r))})}_processResponse(t,r){return sS(this,void 0,void 0,function*(){return new Promise((s,a)=>sS(this,void 0,void 0,function*(){let o=t.message.statusCode||0,g={statusCode:o,result:null,headers:{}};o===qO.NotFound&&s(g);function p(y,B){if(typeof B=="string"){let v=new Date(B);if(!isNaN(v.valueOf()))return v}return B}let f,m;try{m=yield t.readBody(),m&&m.length>0&&(r&&r.deserializeDates?f=JSON.parse(m,p):f=JSON.parse(m),g.result=f),g.headers=t.message.headers}catch{}if(o>299){let y;f&&f.message?y=f.message:m&&m.length>0?y=m:y=`Failed request: (${o})`;let B=new Wut(y,o);B.result=g.result,a(B)}else s(g)}))})}};gE.HttpClient=ser;var Vut=e=>Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{})});var z1=z((J8c,pxn)=>{pxn.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kBody:Symbol("abstracted request body"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kResume:Symbol("resume"),kOnError:Symbol("on error"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kInterceptors:Symbol("dispatch interceptors"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable"),kListeners:Symbol("listeners"),kHTTPContext:Symbol("http context"),kMaxConcurrentStreams:Symbol("max concurrent streams"),kNoProxyAgent:Symbol("no proxy agent"),kHttpProxyAgent:Symbol("http proxy agent"),kHttpsProxyAgent:Symbol("https proxy agent")}});var v0=z((U8c,fxn)=>{"use strict";var aB=class extends Error{constructor(t){super(t),this.name="UndiciError",this.code="UND_ERR"}},oer=class extends aB{constructor(t){super(t),this.name="ConnectTimeoutError",this.message=t||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}},aer=class extends aB{constructor(t){super(t),this.name="HeadersTimeoutError",this.message=t||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}},cer=class extends aB{constructor(t){super(t),this.name="HeadersOverflowError",this.message=t||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}},ler=class extends aB{constructor(t){super(t),this.name="BodyTimeoutError",this.message=t||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT"}},uer=class extends aB{constructor(t,r,s,a){super(t),this.name="ResponseStatusCodeError",this.message=t||"Response Status Code Error",this.code="UND_ERR_RESPONSE_STATUS_CODE",this.body=a,this.status=r,this.statusCode=r,this.headers=s}},ger=class extends aB{constructor(t){super(t),this.name="InvalidArgumentError",this.message=t||"Invalid Argument Error",this.code="UND_ERR_INVALID_ARG"}},Aer=class extends aB{constructor(t){super(t),this.name="InvalidReturnValueError",this.message=t||"Invalid Return Value Error",this.code="UND_ERR_INVALID_RETURN_VALUE"}},Qut=class extends aB{constructor(t){super(t),this.name="AbortError",this.message=t||"The operation was aborted"}},der=class extends Qut{constructor(t){super(t),this.name="AbortError",this.message=t||"Request aborted",this.code="UND_ERR_ABORTED"}},per=class extends aB{constructor(t){super(t),this.name="InformationalError",this.message=t||"Request information",this.code="UND_ERR_INFO"}},fer=class extends aB{constructor(t){super(t),this.name="RequestContentLengthMismatchError",this.message=t||"Request body length does not match content-length header",this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}},Ier=class extends aB{constructor(t){super(t),this.name="ResponseContentLengthMismatchError",this.message=t||"Response body length does not match content-length header",this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}},Cer=class extends aB{constructor(t){super(t),this.name="ClientDestroyedError",this.message=t||"The client is destroyed",this.code="UND_ERR_DESTROYED"}},mer=class extends aB{constructor(t){super(t),this.name="ClientClosedError",this.message=t||"The client is closed",this.code="UND_ERR_CLOSED"}},her=class extends aB{constructor(t,r){super(t),this.name="SocketError",this.message=t||"Socket error",this.code="UND_ERR_SOCKET",this.socket=r}},_er=class extends aB{constructor(t){super(t),this.name="NotSupportedError",this.message=t||"Not supported error",this.code="UND_ERR_NOT_SUPPORTED"}},yer=class extends aB{constructor(t){super(t),this.name="MissingUpstreamError",this.message=t||"No upstream has been added to the BalancedPool",this.code="UND_ERR_BPL_MISSING_UPSTREAM"}},ber=class extends Error{constructor(t,r,s){super(t),this.name="HTTPParserError",this.code=r?`HPE_${r}`:void 0,this.data=s?s.toString():void 0}},Eer=class extends aB{constructor(t){super(t),this.name="ResponseExceededMaxSizeError",this.message=t||"Response content exceeded max size",this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}},Ber=class extends aB{constructor(t,r,{headers:s,data:a}){super(t),this.name="RequestRetryError",this.message=t||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=r,this.data=a,this.headers=s}},ver=class extends aB{constructor(t,r,{headers:s,data:a}){super(t),this.name="ResponseError",this.message=t||"Response error",this.code="UND_ERR_RESPONSE",this.statusCode=r,this.data=a,this.headers=s}},Ser=class extends aB{constructor(t,r,s){super(r,{cause:t,...s??{}}),this.name="SecureProxyConnectionError",this.message=r||"Secure Proxy Connection failed",this.code="UND_ERR_PRX_TLS",this.cause=t}};fxn.exports={AbortError:Qut,HTTPParserError:ber,UndiciError:aB,HeadersTimeoutError:aer,HeadersOverflowError:cer,BodyTimeoutError:ler,RequestContentLengthMismatchError:fer,ConnectTimeoutError:oer,ResponseStatusCodeError:uer,InvalidArgumentError:ger,InvalidReturnValueError:Aer,RequestAbortedError:der,ClientDestroyedError:Cer,ClientClosedError:mer,InformationalError:per,SocketError:her,NotSupportedError:_er,ResponseContentLengthMismatchError:Ier,BalancedPoolMissingUpstreamError:yer,ResponseExceededMaxSizeError:Eer,RequestRetryError:Ber,ResponseError:ver,SecureProxyConnectionError:Ser}});var Hut=z((K8c,Ixn)=>{"use strict";var Mut={},wer=["Accept","Accept-Encoding","Accept-Language","Accept-Ranges","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Age","Allow","Alt-Svc","Alt-Used","Authorization","Cache-Control","Clear-Site-Data","Connection","Content-Disposition","Content-Encoding","Content-Language","Content-Length","Content-Location","Content-Range","Content-Security-Policy","Content-Security-Policy-Report-Only","Content-Type","Cookie","Cross-Origin-Embedder-Policy","Cross-Origin-Opener-Policy","Cross-Origin-Resource-Policy","Date","Device-Memory","Downlink","ECT","ETag","Expect","Expect-CT","Expires","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Keep-Alive","Last-Modified","Link","Location","Max-Forwards","Origin","Permissions-Policy","Pragma","Proxy-Authenticate","Proxy-Authorization","RTT","Range","Referer","Referrer-Policy","Refresh","Retry-After","Sec-WebSocket-Accept","Sec-WebSocket-Extensions","Sec-WebSocket-Key","Sec-WebSocket-Protocol","Sec-WebSocket-Version","Server","Server-Timing","Service-Worker-Allowed","Service-Worker-Navigation-Preload","Set-Cookie","SourceMap","Strict-Transport-Security","Supports-Loading-Mode","TE","Timing-Allow-Origin","Trailer","Transfer-Encoding","Upgrade","Upgrade-Insecure-Requests","User-Agent","Vary","Via","WWW-Authenticate","X-Content-Type-Options","X-DNS-Prefetch-Control","X-Frame-Options","X-Permitted-Cross-Domain-Policies","X-Powered-By","X-Requested-With","X-XSS-Protection"];for(let e=0;e{"use strict";var{wellknownHeaderNames:Cxn,headerNameLowerCasedRecord:vmo}=Hut(),Ter=class e{value=null;left=null;middle=null;right=null;code;constructor(t,r,s){if(s===void 0||s>=t.length)throw new TypeError("Unreachable");if((this.code=t.charCodeAt(s))>127)throw new TypeError("key must be ascii string");t.length!==++s?this.middle=new e(t,r,s):this.value=r}add(t,r){let s=t.length;if(s===0)throw new TypeError("Unreachable");let a=0,o=this;for(;;){let g=t.charCodeAt(a);if(g>127)throw new TypeError("key must be ascii string");if(o.code===g)if(s===++a){o.value=r;break}else if(o.middle!==null)o=o.middle;else{o.middle=new e(t,r,a);break}else if(o.code=65&&(o|=32);a!==null;){if(o===a.code){if(r===++s)return a;a=a.middle;break}a=a.code{"use strict";var lPe=xt("node:assert"),{kDestroyed:bxn,kBodyUsed:s2e,kListeners:Ner,kBody:yxn}=z1(),{IncomingMessage:Smo}=xt("node:http"),Uut=xt("node:stream"),wmo=xt("node:net"),{Blob:Tmo}=xt("node:buffer"),Nmo=xt("node:util"),{stringify:Rmo}=xt("node:querystring"),{EventEmitter:Dmo}=xt("node:events"),{InvalidArgumentError:pR}=v0(),{headerNameLowerCasedRecord:xmo}=Hut(),{tree:Exn}=_xn(),[kmo,Gmo]=process.versions.node.split(".").map(e=>Number(e)),Jut=class{constructor(t){this[yxn]=t,this[s2e]=!1}async*[Symbol.asyncIterator](){lPe(!this[s2e],"disturbed"),this[s2e]=!0,yield*this[yxn]}};function Fmo(e){return Kut(e)?(Txn(e)===0&&e.on("data",function(){lPe(!1)}),typeof e.readableDidRead!="boolean"&&(e[s2e]=!1,Dmo.prototype.on.call(e,"data",function(){this[s2e]=!0})),e):e&&typeof e.pipeTo=="function"?new Jut(e):e&&typeof e!="string"&&!ArrayBuffer.isView(e)&&wxn(e)?new Jut(e):e}function Zmo(){}function Kut(e){return e&&typeof e=="object"&&typeof e.pipe=="function"&&typeof e.on=="function"}function Bxn(e){if(e===null)return!1;if(e instanceof Tmo)return!0;if(typeof e!="object")return!1;{let t=e[Symbol.toStringTag];return(t==="Blob"||t==="File")&&("stream"in e&&typeof e.stream=="function"||"arrayBuffer"in e&&typeof e.arrayBuffer=="function")}}function Lmo(e,t){if(e.includes("?")||e.includes("#"))throw new Error('Query params cannot be passed when url already contains "?" or "#".');let r=Rmo(t);return r&&(e+="?"+r),e}function vxn(e){let t=parseInt(e,10);return t===Number(e)&&t>=0&&t<=65535}function Xut(e){return e!=null&&e[0]==="h"&&e[1]==="t"&&e[2]==="t"&&e[3]==="p"&&(e[4]===":"||e[4]==="s"&&e[5]===":")}function Sxn(e){if(typeof e=="string"){if(e=new URL(e),!Xut(e.origin||e.protocol))throw new pR("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}if(!e||typeof e!="object")throw new pR("Invalid URL: The URL argument must be a non-null object.");if(!(e instanceof URL)){if(e.port!=null&&e.port!==""&&vxn(e.port)===!1)throw new pR("Invalid URL: port must be a valid integer or a string representation of an integer.");if(e.path!=null&&typeof e.path!="string")throw new pR("Invalid URL path: the path must be a string or null/undefined.");if(e.pathname!=null&&typeof e.pathname!="string")throw new pR("Invalid URL pathname: the pathname must be a string or null/undefined.");if(e.hostname!=null&&typeof e.hostname!="string")throw new pR("Invalid URL hostname: the hostname must be a string or null/undefined.");if(e.origin!=null&&typeof e.origin!="string")throw new pR("Invalid URL origin: the origin must be a string or null/undefined.");if(!Xut(e.origin||e.protocol))throw new pR("Invalid URL protocol: the URL must start with `http:` or `https:`.");let t=e.port!=null?e.port:e.protocol==="https:"?443:80,r=e.origin!=null?e.origin:`${e.protocol||""}//${e.hostname||""}:${t}`,s=e.path!=null?e.path:`${e.pathname||""}${e.search||""}`;return r[r.length-1]==="/"&&(r=r.slice(0,r.length-1)),s&&s[0]!=="/"&&(s=`/${s}`),new URL(`${r}${s}`)}if(!Xut(e.origin||e.protocol))throw new pR("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}function Vmo(e){if(e=Sxn(e),e.pathname!=="/"||e.search||e.hash)throw new pR("invalid url");return e}function Wmo(e){if(e[0]==="["){let r=e.indexOf("]");return lPe(r!==-1),e.substring(1,r)}let t=e.indexOf(":");return t===-1?e:e.substring(0,t)}function Pmo(e){if(!e)return null;lPe(typeof e=="string");let t=Wmo(e);return wmo.isIP(t)?"":t}function Omo(e){return JSON.parse(JSON.stringify(e))}function Qmo(e){return e!=null&&typeof e[Symbol.asyncIterator]=="function"}function wxn(e){return e!=null&&(typeof e[Symbol.iterator]=="function"||typeof e[Symbol.asyncIterator]=="function")}function Txn(e){if(e==null)return 0;if(Kut(e)){let t=e._readableState;return t&&t.objectMode===!1&&t.ended===!0&&Number.isFinite(t.length)?t.length:null}else{if(Bxn(e))return e.size!=null?e.size:null;if(Dxn(e))return e.byteLength}return null}function Nxn(e){return e&&!!(e.destroyed||e[bxn]||Uut.isDestroyed?.(e))}function Mmo(e,t){e==null||!Kut(e)||Nxn(e)||(typeof e.destroy=="function"?(Object.getPrototypeOf(e).constructor===Smo&&(e.socket=null),e.destroy(t)):t&&queueMicrotask(()=>{e.emit("error",t)}),e.destroyed!==!0&&(e[bxn]=!0))}var Hmo=/timeout=(\d+)/;function Ymo(e){let t=e.toString().match(Hmo);return t?parseInt(t[1],10)*1e3:null}function Rxn(e){return typeof e=="string"?xmo[e]??e.toLowerCase():Exn.lookup(e)??e.toString("latin1").toLowerCase()}function Xmo(e){return Exn.lookup(e)??e.toString("latin1").toLowerCase()}function Jmo(e,t){t===void 0&&(t={});for(let r=0;rg.toString("utf8")):o.toString("utf8")}}return"content-length"in t&&"content-disposition"in t&&(t["content-disposition"]=Buffer.from(t["content-disposition"]).toString("latin1")),t}function Umo(e){let t=e.length,r=new Array(t),s=!1,a=-1,o,g,p=0;for(let f=0;f{r.close(),r.byobRequest?.respond(0)});else{let o=Buffer.isBuffer(a)?a:Buffer.from(a);o.byteLength&&r.enqueue(new Uint8Array(o))}return r.desiredSize>0},async cancel(r){await t.return()},type:"bytes"})}function tho(e){return e&&typeof e=="object"&&typeof e.append=="function"&&typeof e.delete=="function"&&typeof e.get=="function"&&typeof e.getAll=="function"&&typeof e.has=="function"&&typeof e.set=="function"&&e[Symbol.toStringTag]==="FormData"}function rho(e,t){return"addEventListener"in e?(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)):(e.addListener("abort",t),()=>e.removeListener("abort",t))}var nho=typeof String.prototype.toWellFormed=="function",iho=typeof String.prototype.isWellFormed=="function";function xxn(e){return nho?`${e}`.toWellFormed():Nmo.toUSVString(e)}function sho(e){return iho?`${e}`.isWellFormed():xxn(e)===`${e}`}function kxn(e){switch(e){case 34:case 40:case 41:case 44:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 123:case 125:return!1;default:return e>=33&&e<=126}}function oho(e){if(e.length===0)return!1;for(let t=0;t{"use strict";var S0=xt("node:diagnostics_channel"),xer=xt("node:util"),jut=xer.debuglog("undici"),Der=xer.debuglog("fetch"),Fde=xer.debuglog("websocket"),Lxn=!1,dho={beforeConnect:S0.channel("undici:client:beforeConnect"),connected:S0.channel("undici:client:connected"),connectError:S0.channel("undici:client:connectError"),sendHeaders:S0.channel("undici:client:sendHeaders"),create:S0.channel("undici:request:create"),bodySent:S0.channel("undici:request:bodySent"),headers:S0.channel("undici:request:headers"),trailers:S0.channel("undici:request:trailers"),error:S0.channel("undici:request:error"),open:S0.channel("undici:websocket:open"),close:S0.channel("undici:websocket:close"),socketError:S0.channel("undici:websocket:socket_error"),ping:S0.channel("undici:websocket:ping"),pong:S0.channel("undici:websocket:pong")};if(jut.enabled||Der.enabled){let e=Der.enabled?Der:jut;S0.channel("undici:client:beforeConnect").subscribe(t=>{let{connectParams:{version:r,protocol:s,port:a,host:o}}=t;e("connecting to %s using %s%s",`${o}${a?`:${a}`:""}`,s,r)}),S0.channel("undici:client:connected").subscribe(t=>{let{connectParams:{version:r,protocol:s,port:a,host:o}}=t;e("connected to %s using %s%s",`${o}${a?`:${a}`:""}`,s,r)}),S0.channel("undici:client:connectError").subscribe(t=>{let{connectParams:{version:r,protocol:s,port:a,host:o},error:g}=t;e("connection to %s using %s%s errored - %s",`${o}${a?`:${a}`:""}`,s,r,g.message)}),S0.channel("undici:client:sendHeaders").subscribe(t=>{let{request:{method:r,path:s,origin:a}}=t;e("sending request to %s %s/%s",r,a,s)}),S0.channel("undici:request:headers").subscribe(t=>{let{request:{method:r,path:s,origin:a},response:{statusCode:o}}=t;e("received response to %s %s/%s - HTTP %d",r,a,s,o)}),S0.channel("undici:request:trailers").subscribe(t=>{let{request:{method:r,path:s,origin:a}}=t;e("trailers received from %s %s/%s",r,a,s)}),S0.channel("undici:request:error").subscribe(t=>{let{request:{method:r,path:s,origin:a},error:o}=t;e("request to %s %s/%s errored - %s",r,a,s,o.message)}),Lxn=!0}if(Fde.enabled){if(!Lxn){let e=jut.enabled?jut:Fde;S0.channel("undici:client:beforeConnect").subscribe(t=>{let{connectParams:{version:r,protocol:s,port:a,host:o}}=t;e("connecting to %s%s using %s%s",o,a?`:${a}`:"",s,r)}),S0.channel("undici:client:connected").subscribe(t=>{let{connectParams:{version:r,protocol:s,port:a,host:o}}=t;e("connected to %s%s using %s%s",o,a?`:${a}`:"",s,r)}),S0.channel("undici:client:connectError").subscribe(t=>{let{connectParams:{version:r,protocol:s,port:a,host:o},error:g}=t;e("connection to %s%s using %s%s errored - %s",o,a?`:${a}`:"",s,r,g.message)}),S0.channel("undici:client:sendHeaders").subscribe(t=>{let{request:{method:r,path:s,origin:a}}=t;e("sending request to %s %s/%s",r,a,s)})}S0.channel("undici:websocket:open").subscribe(e=>{let{address:{address:t,port:r}}=e;Fde("connection opened %s%s",t,r?`:${r}`:"")}),S0.channel("undici:websocket:close").subscribe(e=>{let{websocket:t,code:r,reason:s}=e;Fde("closed connection to %s - %s %s",t.url,r,s)}),S0.channel("undici:websocket:socket_error").subscribe(e=>{Fde("connection errored - %s",e.message)}),S0.channel("undici:websocket:ping").subscribe(e=>{Fde("ping received")}),S0.channel("undici:websocket:pong").subscribe(e=>{Fde("pong received")})}Vxn.exports={channels:dho}});var Mxn=z(($8c,Qxn)=>{"use strict";var{InvalidArgumentError:cB,NotSupportedError:pho}=v0(),ez=xt("node:assert"),{isValidHTTPToken:Oxn,isValidHeaderValue:Wxn,isStream:fho,destroy:Iho,isBuffer:Cho,isFormDataLike:mho,isIterable:hho,isBlobLike:_ho,buildURL:yho,validateHandler:bho,getServerName:Eho,normalizedMethodRecords:Bho}=rm(),{channels:uU}=o2e(),{headerNameLowerCasedRecord:Pxn}=Hut(),vho=/[^\u0021-\u00ff]/,$O=Symbol("handler"),ker=class{constructor(t,{path:r,method:s,body:a,headers:o,query:g,idempotent:p,blocking:f,upgrade:m,headersTimeout:y,bodyTimeout:B,reset:v,throwOnError:k,expectContinue:T,servername:O},X){if(typeof r!="string")throw new cB("path must be a string");if(r[0]!=="/"&&!(r.startsWith("http://")||r.startsWith("https://"))&&s!=="CONNECT")throw new cB("path must be an absolute URL or start with a slash");if(vho.test(r))throw new cB("invalid request path");if(typeof s!="string")throw new cB("method must be a string");if(Bho[s]===void 0&&!Oxn(s))throw new cB("invalid request method");if(m&&typeof m!="string")throw new cB("upgrade must be a string");if(y!=null&&(!Number.isFinite(y)||y<0))throw new cB("invalid headersTimeout");if(B!=null&&(!Number.isFinite(B)||B<0))throw new cB("invalid bodyTimeout");if(v!=null&&typeof v!="boolean")throw new cB("invalid reset");if(T!=null&&typeof T!="boolean")throw new cB("invalid expectContinue");if(this.headersTimeout=y,this.bodyTimeout=B,this.throwOnError=k===!0,this.method=s,this.abort=null,a==null)this.body=null;else if(fho(a)){this.body=a;let U=this.body._readableState;(!U||!U.autoDestroy)&&(this.endHandler=function(){Iho(this)},this.body.on("end",this.endHandler)),this.errorHandler=le=>{this.abort?this.abort(le):this.error=le},this.body.on("error",this.errorHandler)}else if(Cho(a))this.body=a.byteLength?a:null;else if(ArrayBuffer.isView(a))this.body=a.buffer.byteLength?Buffer.from(a.buffer,a.byteOffset,a.byteLength):null;else if(a instanceof ArrayBuffer)this.body=a.byteLength?Buffer.from(a):null;else if(typeof a=="string")this.body=a.length?Buffer.from(a):null;else if(mho(a)||hho(a)||_ho(a))this.body=a;else throw new cB("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable");if(this.completed=!1,this.aborted=!1,this.upgrade=m||null,this.path=g?yho(r,g):r,this.origin=t,this.idempotent=p??(s==="HEAD"||s==="GET"),this.blocking=f??!1,this.reset=v??null,this.host=null,this.contentLength=null,this.contentType=null,this.headers=[],this.expectContinue=T??!1,Array.isArray(o)){if(o.length%2!==0)throw new cB("headers array must be even");for(let U=0;U{"use strict";var Sho=xt("node:events"),qut=class extends Sho{dispatch(){throw new Error("not implemented")}close(){throw new Error("not implemented")}destroy(){throw new Error("not implemented")}compose(...t){let r=Array.isArray(t[0])?t[0]:t,s=this.dispatch.bind(this);for(let a of r)if(a!=null){if(typeof a!="function")throw new TypeError(`invalid interceptor, expected function received ${typeof a}`);if(s=a(s),s==null||typeof s!="function"||s.length!==2)throw new TypeError("invalid interceptor")}return new Ger(this,s)}},Ger=class extends qut{#e=null;#t=null;constructor(t,r){super(),this.#e=t,this.#t=r}dispatch(...t){this.#t(...t)}close(...t){return this.#e.close(...t)}destroy(...t){return this.#e.destroy(...t)}};Hxn.exports=qut});var u2e=z((t6c,Yxn)=>{"use strict";var who=uPe(),{ClientDestroyedError:Fer,ClientClosedError:Tho,InvalidArgumentError:a2e}=v0(),{kDestroy:Nho,kClose:Rho,kClosed:gPe,kDestroyed:c2e,kDispatch:Zer,kInterceptors:Zde}=z1(),tz=Symbol("onDestroyed"),l2e=Symbol("onClosed"),$ut=Symbol("Intercepted Dispatch"),Ler=class extends who{constructor(){super(),this[c2e]=!1,this[tz]=null,this[gPe]=!1,this[l2e]=[]}get destroyed(){return this[c2e]}get closed(){return this[gPe]}get interceptors(){return this[Zde]}set interceptors(t){if(t){for(let r=t.length-1;r>=0;r--)if(typeof this[Zde][r]!="function")throw new a2e("interceptor must be an function")}this[Zde]=t}close(t){if(t===void 0)return new Promise((s,a)=>{this.close((o,g)=>o?a(o):s(g))});if(typeof t!="function")throw new a2e("invalid callback");if(this[c2e]){queueMicrotask(()=>t(new Fer,null));return}if(this[gPe]){this[l2e]?this[l2e].push(t):queueMicrotask(()=>t(null,null));return}this[gPe]=!0,this[l2e].push(t);let r=()=>{let s=this[l2e];this[l2e]=null;for(let a=0;athis.destroy()).then(()=>{queueMicrotask(r)})}destroy(t,r){if(typeof t=="function"&&(r=t,t=null),r===void 0)return new Promise((a,o)=>{this.destroy(t,(g,p)=>g?o(g):a(p))});if(typeof r!="function")throw new a2e("invalid callback");if(this[c2e]){this[tz]?this[tz].push(r):queueMicrotask(()=>r(null,null));return}t||(t=new Fer),this[c2e]=!0,this[tz]=this[tz]||[],this[tz].push(r);let s=()=>{let a=this[tz];this[tz]=null;for(let o=0;o{queueMicrotask(s)})}[$ut](t,r){if(!this[Zde]||this[Zde].length===0)return this[$ut]=this[Zer],this[Zer](t,r);let s=this[Zer].bind(this);for(let a=this[Zde].length-1;a>=0;a--)s=this[Zde][a](s);return this[$ut]=s,s(t,r)}dispatch(t,r){if(!r||typeof r!="object")throw new a2e("handler must be an object");try{if(!t||typeof t!="object")throw new a2e("opts must be an object.");if(this[c2e]||this[tz])throw new Fer;if(this[gPe])throw new Tho;return this[$ut](t,r)}catch(s){if(typeof r.onError!="function")throw new a2e("invalid onError method");return r.onError(s),!1}}};Yxn.exports=Ler});var Her=z((r6c,Kxn)=>{"use strict";var g2e=0,Ver=1e3,Wer=(Ver>>1)-1,rz,Per=Symbol("kFastTimer"),nz=[],Oer=-2,Qer=-1,Jxn=0,Xxn=1;function Mer(){g2e+=Wer;let e=0,t=nz.length;for(;e=r._idleStart+r._idleTimeout&&(r._state=Qer,r._idleStart=-1,r._onTimeout(r._timerArg)),r._state===Qer?(r._state=Oer,--t!==0&&(nz[e]=nz[t])):++e}nz.length=t,nz.length!==0&&Uxn()}function Uxn(){rz?rz.refresh():(clearTimeout(rz),rz=setTimeout(Mer,Wer),rz.unref&&rz.unref())}var egt=class{[Per]=!0;_state=Oer;_idleTimeout=-1;_idleStart=-1;_onTimeout;_timerArg;constructor(t,r,s){this._onTimeout=t,this._idleTimeout=r,this._timerArg=s,this.refresh()}refresh(){this._state===Oer&&nz.push(this),(!rz||nz.length===1)&&Uxn(),this._state=Jxn}clear(){this._state=Qer,this._idleStart=-1}};Kxn.exports={setTimeout(e,t,r){return t<=Ver?setTimeout(e,t,r):new egt(e,t,r)},clearTimeout(e){e[Per]?e.clear():clearTimeout(e)},setFastTimeout(e,t,r){return new egt(e,t,r)},clearFastTimeout(e){e.clear()},now(){return g2e},tick(e=0){g2e+=e-Ver+1,Mer(),Mer()},reset(){g2e=0,nz.length=0,clearTimeout(rz),rz=null},kFastTimer:Per}});var APe=z((s6c,ekn)=>{"use strict";var Dho=xt("node:net"),jxn=xt("node:assert"),$xn=rm(),{InvalidArgumentError:xho,ConnectTimeoutError:kho}=v0(),tgt=Her();function zxn(){}var Yer,Xer;global.FinalizationRegistry&&!(process.env.NODE_V8_COVERAGE||process.env.UNDICI_NO_FG)?Xer=class{constructor(t){this._maxCachedSessions=t,this._sessionCache=new Map,this._sessionRegistry=new global.FinalizationRegistry(r=>{if(this._sessionCache.size=this._maxCachedSessions){let{value:s}=this._sessionCache.keys().next();this._sessionCache.delete(s)}this._sessionCache.set(t,r)}}};function Gho({allowH2:e,maxCachedSessions:t,socketPath:r,timeout:s,session:a,...o}){if(t!=null&&(!Number.isInteger(t)||t<0))throw new xho("maxCachedSessions must be a positive integer or zero");let g={path:r,...o},p=new Xer(t??100);return s=s??1e4,e=e??!1,function({hostname:m,host:y,protocol:B,port:v,servername:k,localAddress:T,httpSocket:O},X){let U;if(B==="https:"){Yer||(Yer=xt("node:tls")),k=k||g.servername||$xn.getServerName(y)||null;let ae=k||m;jxn(ae);let ge=a||p.get(ae)||null;v=v||443,U=Yer.connect({highWaterMark:16384,...g,servername:k,session:ge,localAddress:T,ALPNProtocols:e?["http/1.1","h2"]:["http/1.1"],socket:O,port:v,host:m}),U.on("session",function(fe){p.set(ae,fe)})}else jxn(!O,"httpSocket can only be sent on TLS update"),v=v||80,U=Dho.connect({highWaterMark:64*1024,...g,localAddress:T,port:v,host:m});if(g.keepAlive==null||g.keepAlive){let ae=g.keepAliveInitialDelay===void 0?6e4:g.keepAliveInitialDelay;U.setKeepAlive(!0,ae)}let le=Fho(new WeakRef(U),{timeout:s,hostname:m,port:v});return U.setNoDelay(!0).once(B==="https:"?"secureConnect":"connect",function(){if(queueMicrotask(le),X){let ae=X;X=null,ae(null,this)}}).on("error",function(ae){if(queueMicrotask(le),X){let ge=X;X=null,ge(ae)}}),U}}var Fho=process.platform==="win32"?(e,t)=>{if(!t.timeout)return zxn;let r=null,s=null,a=tgt.setFastTimeout(()=>{r=setImmediate(()=>{s=setImmediate(()=>qxn(e.deref(),t))})},t.timeout);return()=>{tgt.clearFastTimeout(a),clearImmediate(r),clearImmediate(s)}}:(e,t)=>{if(!t.timeout)return zxn;let r=null,s=tgt.setFastTimeout(()=>{r=setImmediate(()=>{qxn(e.deref(),t)})},t.timeout);return()=>{tgt.clearFastTimeout(s),clearImmediate(r)}};function qxn(e,t){let r="Connect Timeout Error";Array.isArray(e.autoSelectFamilyAttemptedAddresses)?r+=` (attempted addresses: ${e.autoSelectFamilyAttemptedAddresses.join(", ")},`:r+=` (attempted address: ${t.hostname}:${t.port},`,r+=` timeout: ${t.timeout}ms)`,$xn.destroy(e,new kho(r))}ekn.exports=Gho});var tkn=z(rgt=>{"use strict";Object.defineProperty(rgt,"__esModule",{value:!0});rgt.enumToMap=void 0;function Zho(e){let t={};return Object.keys(e).forEach(r=>{let s=e[r];typeof s=="number"&&(t[r]=s)}),t}rgt.enumToMap=Zho});var rkn=z(du=>{"use strict";Object.defineProperty(du,"__esModule",{value:!0});du.SPECIAL_HEADERS=du.HEADER_STATE=du.MINOR=du.MAJOR=du.CONNECTION_TOKEN_CHARS=du.HEADER_CHARS=du.TOKEN=du.STRICT_TOKEN=du.HEX=du.URL_CHAR=du.STRICT_URL_CHAR=du.USERINFO_CHARS=du.MARK=du.ALPHANUM=du.NUM=du.HEX_MAP=du.NUM_MAP=du.ALPHA=du.FINISH=du.H_METHOD_MAP=du.METHOD_MAP=du.METHODS_RTSP=du.METHODS_ICE=du.METHODS_HTTP=du.METHODS=du.LENIENT_FLAGS=du.FLAGS=du.TYPE=du.ERROR=void 0;var Lho=tkn(),Vho;(function(e){e[e.OK=0]="OK",e[e.INTERNAL=1]="INTERNAL",e[e.STRICT=2]="STRICT",e[e.LF_EXPECTED=3]="LF_EXPECTED",e[e.UNEXPECTED_CONTENT_LENGTH=4]="UNEXPECTED_CONTENT_LENGTH",e[e.CLOSED_CONNECTION=5]="CLOSED_CONNECTION",e[e.INVALID_METHOD=6]="INVALID_METHOD",e[e.INVALID_URL=7]="INVALID_URL",e[e.INVALID_CONSTANT=8]="INVALID_CONSTANT",e[e.INVALID_VERSION=9]="INVALID_VERSION",e[e.INVALID_HEADER_TOKEN=10]="INVALID_HEADER_TOKEN",e[e.INVALID_CONTENT_LENGTH=11]="INVALID_CONTENT_LENGTH",e[e.INVALID_CHUNK_SIZE=12]="INVALID_CHUNK_SIZE",e[e.INVALID_STATUS=13]="INVALID_STATUS",e[e.INVALID_EOF_STATE=14]="INVALID_EOF_STATE",e[e.INVALID_TRANSFER_ENCODING=15]="INVALID_TRANSFER_ENCODING",e[e.CB_MESSAGE_BEGIN=16]="CB_MESSAGE_BEGIN",e[e.CB_HEADERS_COMPLETE=17]="CB_HEADERS_COMPLETE",e[e.CB_MESSAGE_COMPLETE=18]="CB_MESSAGE_COMPLETE",e[e.CB_CHUNK_HEADER=19]="CB_CHUNK_HEADER",e[e.CB_CHUNK_COMPLETE=20]="CB_CHUNK_COMPLETE",e[e.PAUSED=21]="PAUSED",e[e.PAUSED_UPGRADE=22]="PAUSED_UPGRADE",e[e.PAUSED_H2_UPGRADE=23]="PAUSED_H2_UPGRADE",e[e.USER=24]="USER"})(Vho=du.ERROR||(du.ERROR={}));var Who;(function(e){e[e.BOTH=0]="BOTH",e[e.REQUEST=1]="REQUEST",e[e.RESPONSE=2]="RESPONSE"})(Who=du.TYPE||(du.TYPE={}));var Pho;(function(e){e[e.CONNECTION_KEEP_ALIVE=1]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=2]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=4]="CONNECTION_UPGRADE",e[e.CHUNKED=8]="CHUNKED",e[e.UPGRADE=16]="UPGRADE",e[e.CONTENT_LENGTH=32]="CONTENT_LENGTH",e[e.SKIPBODY=64]="SKIPBODY",e[e.TRAILING=128]="TRAILING",e[e.TRANSFER_ENCODING=512]="TRANSFER_ENCODING"})(Pho=du.FLAGS||(du.FLAGS={}));var Oho;(function(e){e[e.HEADERS=1]="HEADERS",e[e.CHUNKED_LENGTH=2]="CHUNKED_LENGTH",e[e.KEEP_ALIVE=4]="KEEP_ALIVE"})(Oho=du.LENIENT_FLAGS||(du.LENIENT_FLAGS={}));var Lp;(function(e){e[e.DELETE=0]="DELETE",e[e.GET=1]="GET",e[e.HEAD=2]="HEAD",e[e.POST=3]="POST",e[e.PUT=4]="PUT",e[e.CONNECT=5]="CONNECT",e[e.OPTIONS=6]="OPTIONS",e[e.TRACE=7]="TRACE",e[e.COPY=8]="COPY",e[e.LOCK=9]="LOCK",e[e.MKCOL=10]="MKCOL",e[e.MOVE=11]="MOVE",e[e.PROPFIND=12]="PROPFIND",e[e.PROPPATCH=13]="PROPPATCH",e[e.SEARCH=14]="SEARCH",e[e.UNLOCK=15]="UNLOCK",e[e.BIND=16]="BIND",e[e.REBIND=17]="REBIND",e[e.UNBIND=18]="UNBIND",e[e.ACL=19]="ACL",e[e.REPORT=20]="REPORT",e[e.MKACTIVITY=21]="MKACTIVITY",e[e.CHECKOUT=22]="CHECKOUT",e[e.MERGE=23]="MERGE",e[e["M-SEARCH"]=24]="M-SEARCH",e[e.NOTIFY=25]="NOTIFY",e[e.SUBSCRIBE=26]="SUBSCRIBE",e[e.UNSUBSCRIBE=27]="UNSUBSCRIBE",e[e.PATCH=28]="PATCH",e[e.PURGE=29]="PURGE",e[e.MKCALENDAR=30]="MKCALENDAR",e[e.LINK=31]="LINK",e[e.UNLINK=32]="UNLINK",e[e.SOURCE=33]="SOURCE",e[e.PRI=34]="PRI",e[e.DESCRIBE=35]="DESCRIBE",e[e.ANNOUNCE=36]="ANNOUNCE",e[e.SETUP=37]="SETUP",e[e.PLAY=38]="PLAY",e[e.PAUSE=39]="PAUSE",e[e.TEARDOWN=40]="TEARDOWN",e[e.GET_PARAMETER=41]="GET_PARAMETER",e[e.SET_PARAMETER=42]="SET_PARAMETER",e[e.REDIRECT=43]="REDIRECT",e[e.RECORD=44]="RECORD",e[e.FLUSH=45]="FLUSH"})(Lp=du.METHODS||(du.METHODS={}));du.METHODS_HTTP=[Lp.DELETE,Lp.GET,Lp.HEAD,Lp.POST,Lp.PUT,Lp.CONNECT,Lp.OPTIONS,Lp.TRACE,Lp.COPY,Lp.LOCK,Lp.MKCOL,Lp.MOVE,Lp.PROPFIND,Lp.PROPPATCH,Lp.SEARCH,Lp.UNLOCK,Lp.BIND,Lp.REBIND,Lp.UNBIND,Lp.ACL,Lp.REPORT,Lp.MKACTIVITY,Lp.CHECKOUT,Lp.MERGE,Lp["M-SEARCH"],Lp.NOTIFY,Lp.SUBSCRIBE,Lp.UNSUBSCRIBE,Lp.PATCH,Lp.PURGE,Lp.MKCALENDAR,Lp.LINK,Lp.UNLINK,Lp.PRI,Lp.SOURCE];du.METHODS_ICE=[Lp.SOURCE];du.METHODS_RTSP=[Lp.OPTIONS,Lp.DESCRIBE,Lp.ANNOUNCE,Lp.SETUP,Lp.PLAY,Lp.PAUSE,Lp.TEARDOWN,Lp.GET_PARAMETER,Lp.SET_PARAMETER,Lp.REDIRECT,Lp.RECORD,Lp.FLUSH,Lp.GET,Lp.POST];du.METHOD_MAP=Lho.enumToMap(Lp);du.H_METHOD_MAP={};Object.keys(du.METHOD_MAP).forEach(e=>{/^H/.test(e)&&(du.H_METHOD_MAP[e]=du.METHOD_MAP[e])});var Qho;(function(e){e[e.SAFE=0]="SAFE",e[e.SAFE_WITH_CB=1]="SAFE_WITH_CB",e[e.UNSAFE=2]="UNSAFE"})(Qho=du.FINISH||(du.FINISH={}));du.ALPHA=[];for(let e=65;e<=90;e++)du.ALPHA.push(String.fromCharCode(e)),du.ALPHA.push(String.fromCharCode(e+32));du.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};du.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15};du.NUM=["0","1","2","3","4","5","6","7","8","9"];du.ALPHANUM=du.ALPHA.concat(du.NUM);du.MARK=["-","_",".","!","~","*","'","(",")"];du.USERINFO_CHARS=du.ALPHANUM.concat(du.MARK).concat(["%",";",":","&","=","+","$",","]);du.STRICT_URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(du.ALPHANUM);du.URL_CHAR=du.STRICT_URL_CHAR.concat([" ","\f"]);for(let e=128;e<=255;e++)du.URL_CHAR.push(e);du.HEX=du.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);du.STRICT_TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(du.ALPHANUM);du.TOKEN=du.STRICT_TOKEN.concat([" "]);du.HEADER_CHARS=[" "];for(let e=32;e<=255;e++)e!==127&&du.HEADER_CHARS.push(e);du.CONNECTION_TOKEN_CHARS=du.HEADER_CHARS.filter(e=>e!==44);du.MAJOR=du.NUM_MAP;du.MINOR=du.MAJOR;var A2e;(function(e){e[e.GENERAL=0]="GENERAL",e[e.CONNECTION=1]="CONNECTION",e[e.CONTENT_LENGTH=2]="CONTENT_LENGTH",e[e.TRANSFER_ENCODING=3]="TRANSFER_ENCODING",e[e.UPGRADE=4]="UPGRADE",e[e.CONNECTION_KEEP_ALIVE=5]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=6]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=7]="CONNECTION_UPGRADE",e[e.TRANSFER_ENCODING_CHUNKED=8]="TRANSFER_ENCODING_CHUNKED"})(A2e=du.HEADER_STATE||(du.HEADER_STATE={}));du.SPECIAL_HEADERS={connection:A2e.CONNECTION,"content-length":A2e.CONTENT_LENGTH,"proxy-connection":A2e.CONNECTION,"transfer-encoding":A2e.TRANSFER_ENCODING,upgrade:A2e.UPGRADE}});var Jer=z((c6c,nkn)=>{"use strict";var{Buffer:Mho}=xt("node:buffer");nkn.exports=Mho.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAy0sBQYAAAIAAAAAAAACAQIAAgICAAADAAAAAAMDAwMBAQEBAQEBAQEAAAIAAAAEBQFwARISBQMBAAIGCAF/AUGA1AQLB9EFIgZtZW1vcnkCAAtfaW5pdGlhbGl6ZQAIGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBAAtsbGh0dHBfaW5pdAAJGGxsaHR0cF9zaG91bGRfa2VlcF9hbGl2ZQAvDGxsaHR0cF9hbGxvYwALBm1hbGxvYwAxC2xsaHR0cF9mcmVlAAwEZnJlZQAMD2xsaHR0cF9nZXRfdHlwZQANFWxsaHR0cF9nZXRfaHR0cF9tYWpvcgAOFWxsaHR0cF9nZXRfaHR0cF9taW5vcgAPEWxsaHR0cF9nZXRfbWV0aG9kABAWbGxodHRwX2dldF9zdGF0dXNfY29kZQAREmxsaHR0cF9nZXRfdXBncmFkZQASDGxsaHR0cF9yZXNldAATDmxsaHR0cF9leGVjdXRlABQUbGxodHRwX3NldHRpbmdzX2luaXQAFQ1sbGh0dHBfZmluaXNoABYMbGxodHRwX3BhdXNlABcNbGxodHRwX3Jlc3VtZQAYG2xsaHR0cF9yZXN1bWVfYWZ0ZXJfdXBncmFkZQAZEGxsaHR0cF9nZXRfZXJybm8AGhdsbGh0dHBfZ2V0X2Vycm9yX3JlYXNvbgAbF2xsaHR0cF9zZXRfZXJyb3JfcmVhc29uABwUbGxodHRwX2dldF9lcnJvcl9wb3MAHRFsbGh0dHBfZXJybm9fbmFtZQAeEmxsaHR0cF9tZXRob2RfbmFtZQAfEmxsaHR0cF9zdGF0dXNfbmFtZQAgGmxsaHR0cF9zZXRfbGVu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PgtBhwEMPQtBiAEMPAtBiQEMOwtBigEMOgtBiwEMOQtBjAEMOAtBjQEMNwtBjgEMNgtBjwEMNQtBkAEMNAtBkQEMMwtBkgEMMgtBkwEMMQtBlAEMMAtBlQEMLwtBlgEMLgtBlwEMLQtBmAEMLAtBmQEMKwtBmgEMKgtBmwEMKQtBnAEMKAtBnQEMJwtBngEMJgtBnwEMJQtBoAEMJAtBoQEMIwtBogEMIgtBowEMIQtBpAEMIAtBpQEMHwtBpgEMHgtBpwEMHQtBqAEMHAtBqQEMGwtBqgEMGgtBqwEMGQtBrAEMGAtBrQEMFwtBrgEMFgtBAQwVC0GvAQwUC0GwAQwTC0GxAQwSC0GzAQwRC0GyAQwQC0G0AQwPC0G1AQwOC0G2AQwNC0G3AQwMC0G4AQwLC0G5AQwKC0G6AQwJC0G7AQwIC0HGAQwHC0G8AQwGC0G9AQwFC0G+AQwEC0G/AQwDC0HAAQwCC0HCAQwBC0HBAQshAwNAAkACQAJAAkACQAJAAkACQAJAIAICfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAgJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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iQEhAwykAgtBASABLQAAQd8ARw1nGiABQQFqIQEMXgtBigEhAyABIARGDaICIAIoAgAiACAEIAFraiEFIAEgAGtBAWohBgNAIAEtAAAgAEGMzwBqLQAARw1kIABBAUYN+gEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMogILQYsBIQMgASAERg2hAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGOzwBqLQAARw1kIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyiAgsgAkEANgIAIAZBAWohAUECDGULQYwBIQMgASAERg2gAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHwzwBqLQAARw1jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyhAgsgAkEANgIAIAZBAWohAUEfDGQLQY0BIQMgASAERg2fAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHyzwBqLQAARw1iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAygAgsgAkEANgIAIAZBAWohAUEJDGMLIAEgBEYEQEGOASEDDJ8CCwJAAkAgAS0AAEHJAGsOBwBiYmJiYgFiCyABQQFqIQFB+AAhAwyGAgsgAUEBaiEBQfkAIQMMhQILQY8BIQMgASAERg2dAiACKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGRzwBqLQAARw1gIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyeAgsgAkEANgIAIAZBAWohAUEYDGELQZABIQMgASAERg2cAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGXzwBqLQAARw1fIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAydAgsgAkEANgIAIAZBAWohAUEXDGALQZEBIQMgASAERg2bAiACKAIAIgAgBCABa2ohBSABIABrQQZqIQYCQANAIAEtAAAgAEGazwBqLQAARw1eIABBBkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAycAgsgAkEANgIAIAZBAWohAUEV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JSIARQ0RIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMtAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0gIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMswELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0iIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMsgELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0OIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMsQELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0dIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMsAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0fIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMrwELIABBP0cNASABQQFqCyEBQQUhAwyUAQtBACEDIAJBADYCHCACIAE2AhQgAkH9EjYCECACQQc2AgwMrAELIAJBADYCHCACIAE2AhQgAkHcCDYCECACQQc2AgxBACEDDKsBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNByACQeUANgIcIAIgATYCFCACIAA2AgxBACEDDKoBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNFiACQdMANgIcIAIgATYCFCACIAA2AgxBACEDDKkBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNGCACQdIANgIcIAIgATYCFCACIAA2AgxBACEDDKgBCyACQQA2AhwgAiABNgIUIAJBxgo2AhAgAkEHNgIMQQAhAwynAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQMgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwymAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRIgAkHTADYCHCACIAE2AhQgAiAANgIMQQAhAwylAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRQgAkHSADYCHCACIAE2AhQgAiAANgIMQQAhAwykAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQAgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwyjAQtB1QAhAwyJAQsgAEEVRwRAIAJBADYCHCACIAE2AhQgAkG5DTYCECACQRo2AgxB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AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB5ABrDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0HhJw8LQaQhDwtByywPC0H+MQ8LQcAkDwtBqyQPC0GNKA8LQeImDwtBgDAPC0G5Lw8LQdckDwtB7x8PC0HhHw8LQfofDwtB8iAPC0GoLw8LQa4yDwtBiDAPC0HsJw8LQYIiDwtBjh0PC0HQLg8LQcojDwtBxTIPC0HfHA8LQdIcDwtBxCAPC0HXIA8LQaIfDwtB7S4PC0GrMA8LQdQlDwtBzC4PC0H6Lg8LQfwrDwtB0jAPC0HxHQ8LQbsgDwtB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CABB3AgLii1JbnZhbGlkIGNoYXIgaW4gdXJsIHF1ZXJ5AFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fYm9keQBDb250ZW50LUxlbmd0aCBvdmVyZmxvdwBDaHVuayBzaXplIG92ZXJmbG93AFJlc3BvbnNlIG92ZXJmbG93AEludmFsaWQgbWV0aG9kIGZvciBIVFRQL3gueCByZXF1ZXN0AEludmFsaWQgbWV0aG9kIGZvciBSVFNQL3gueCByZXF1ZXN0AEV4cGVjdGVkIFNPVVJDRSBtZXRob2QgZm9yIElDRS94LnggcmVxdWVzdABJbnZhbGlkIGNoYXIgaW4gdXJsIGZyYWdtZW50IHN0YXJ0AEV4cGVjdGVkIGRvdABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3N0YXR1cwBJbnZhbGlkIHJlc3BvbnNlIHN0YXR1cwBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zAFVzZXIgY2FsbGJhY2sgZXJyb3IAYG9uX3Jlc2V0YCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfaGVhZGVyYCBjYWxsYmFjayBlcnJvcgBgb25fbWVzc2FnZV9iZWdpbmAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3N0YXR1c19jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3ZlcnNpb25fY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl91cmxfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2hlYWRlcl92YWx1ZV9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXRob2RfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfZmllbGRfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fbmFtZWAgY2FsbGJhY2sgZXJyb3IAVW5leHBlY3RlZCBjaGFyIGluIHVybCBzZXJ2ZXIASW52YWxpZCBoZWFkZXIgdmFsdWUgY2hhcgBJbnZhbGlkIGhlYWRlciBmaWVsZCBjaGFyAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fdmVyc2lvbgBJbnZhbGlkIG1pbm9yIHZlcnNpb24ASW52YWxpZCBtYWpvciB2ZXJzaW9uAEV4cGVjdGVkIHNwYWNlIGFmdGVyIHZlcnNpb24ARXhwZWN0ZWQgQ1JMRiBhZnRlciB2ZXJzaW9uAEludmFsaWQgSFRUUCB2ZXJzaW9uAEludmFsaWQgaGVhZGVyIHRva2VuAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fdXJsAEludmFsaWQgY2hhcmFjdGVycyBpbiB1cmwAVW5leHBlY3RlZCBzdGFydCBjaGFyIGluIHVybABEb3VibGUgQCBpbiB1cmwARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgARHVwbGljYXRlIENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhciBpbiB1cmwgcGF0aABDb250ZW50LUxlbmd0aCBjYW4ndCBiZSBwcmVzZW50IHdpdGggVHJhbnNmZXItRW5jb2RpbmcASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgc2l6ZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2hlYWRlcl92YWx1ZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHF1b3RlZCB2YWx1ZQBQYXVzZWQgYnkgb25faGVhZGVyc19jb21wbGV0ZQBJbnZhbGlkIEVPRiBzdGF0ZQBvbl9yZXNldCBwYXVzZQBvbl9jaHVua19oZWFkZXIgcGF1c2UAb25fbWVzc2FnZV9iZWdpbiBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fdmFsdWUgcGF1c2UAb25fc3RhdHVzX2NvbXBsZXRlIHBhdXNlAG9uX3ZlcnNpb25fY29tcGxldGUgcGF1c2UAb25fdXJsX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl92YWx1ZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXNzYWdlX2NvbXBsZXRlIHBhdXNlAG9uX21ldGhvZF9jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfZmllbGRfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUgcGF1c2UAVW5leHBlY3RlZCBzcGFjZSBhZnRlciBzdGFydCBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAFBhdXNlIG9uIENPTk5FQ1QvVXBncmFkZQBQYXVzZSBvbiBQUkkvVXBncmFkZQBFeHBlY3RlZCBIVFRQLzIgQ29ubmVjdGlvbiBQcmVmYWNlAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fbWV0aG9kAEV4cGVjdGVkIHNwYWNlIGFmdGVyIG1ldGhvZABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2hlYWRlcl9maWVsZABQYXVzZWQASW52YWxpZCB3b3JkIGVuY291bnRlcmVkAEludmFsaWQgbWV0aG9kIGVuY291bnRlcmVkAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2NoZW1hAFJlcXVlc3QgaGFzIGludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYABTV0lUQ0hfUFJPWFkAVVNFX1BST1hZAE1LQUNUSVZJVFkAVU5QUk9DRVNTQUJMRV9FTlRJVFkAQ09QWQBNT1ZFRF9QRVJNQU5FTlRMWQBUT09fRUFSTFkATk9USUZZAEZBSUxFRF9ERVBFTkRFTkNZAEJBRF9HQVRFV0FZAFBMQVkAUFVUAENIRUNLT1VUAEdBVEVXQVlfVElNRU9VVABSRVFVRVNUX1RJTUVPVVQATkVUV09SS19DT05ORUNUX1RJTUVPVVQAQ09OTkVDVElPTl9USU1FT1VUAExPR0lOX1RJTUVPVVQATkVUV09SS19SRUFEX1RJTUVPVVQAUE9TVABNSVNESVJFQ1RFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX0xPQURfQkFMQU5DRURfUkVRVUVTVABCQURfUkVRVUVTVABIVFRQX1JFUVVFU1RfU0VOVF9UT19IVFRQU19QT1JUAFJFUE9SVABJTV9BX1RFQVBPVABSRVNFVF9DT05URU5UAE5PX0NPTlRFTlQAUEFSVElBTF9DT05URU5UAEhQRV9JTlZBTElEX0NPTlNUQU5UAEhQRV9DQl9SRVNFVABHRVQASFBFX1NUUklDVABDT05GTElDVABURU1QT1JBUllfUkVESVJFQ1QAUEVSTUFORU5UX1JFRElSRUNUAENPTk5FQ1QATVVMVElfU1RBVFVTAEhQRV9JTlZBTElEX1NUQVRVUwBUT09fTUFOWV9SRVFVRVNUUwBFQVJMWV9ISU5UUwBVTkFWQUlMQUJMRV9GT1JfTEVHQUxfUkVBU09OUwBPUFRJT05TAFNXSVRDSElOR19QUk9UT0NPTFMAVkFSSUFOVF9BTFNPX05FR09USUFURVMATVVMVElQTEVfQ0hPSUNFUwBJTlRFUk5BTF9TRVJWRVJfRVJST1IAV0VCX1NFUlZFUl9VTktOT1dOX0VSUk9SAFJBSUxHVU5fRVJST1IASURFTlRJVFlfUFJPVklERVJfQVVUSEVOVElDQVRJT05fRVJST1IAU1NMX0NFUlRJRklDQVRFX0VSUk9SAElOVkFMSURfWF9GT1JXQVJERURfRk9SAFNFVF9QQVJBTUVURVIAR0VUX1BBUkFNRVRFUgBIUEVfVVNFUgBTRUVfT1RIRVIASFBFX0NCX0NIVU5LX0hFQURFUgBNS0NBTEVOREFSAFNFVFVQAFdFQl9TRVJWRVJfSVNfRE9XTgBURUFSRE9XTgBIUEVfQ0xPU0VEX0NPTk5FQ1RJT04ASEVVUklTVElDX0VYUElSQVRJT04ARElTQ09OTkVDVEVEX09QRVJBVElPTgBOT05fQVVUSE9SSVRBVElWRV9JTkZPUk1BVElPTgBIUEVfSU5WQUxJRF9WRVJTSU9OAEhQRV9DQl9NRVNTQUdFX0JFR0lOAFNJVEVfSVNfRlJPWkVOAEhQRV9JTlZBTElEX0hFQURFUl9UT0tFTgBJTlZBTElEX1RPS0VOAEZPUkJJRERFTgBFTkhBTkNFX1lPVVJfQ0FMTQBIUEVfSU5WQUxJRF9VUkwAQkxPQ0tFRF9CWV9QQVJFTlRBTF9DT05UUk9MAE1LQ09MAEFDTABIUEVfSU5URVJOQUwAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRV9VTk9GRklDSUFMAEhQRV9PSwBVTkxJTksAVU5MT0NLAFBSSQBSRVRSWV9XSVRIAEhQRV9JTlZBTElEX0NPTlRFTlRfTEVOR1RIAEhQRV9VTkVYUEVDVEVEX0NPTlRFTlRfTEVOR1RIAEZMVVNIAFBST1BQQVRDSABNLVNFQVJDSABVUklfVE9PX0xPTkcAUFJPQ0VTU0lORwBNSVNDRUxMQU5FT1VTX1BFUlNJU1RFTlRfV0FSTklORwBNSVNDRUxMQU5FT1VTX1dBUk5JTkcASFBFX0lOVkFMSURfVFJBTlNGRVJfRU5DT0RJTkcARXhwZWN0ZWQgQ1JMRgBIUEVfSU5WQUxJRF9DSFVOS19TSVpFAE1PVkUAQ09OVElOVUUASFBFX0NCX1NUQVRVU19DT01QTEVURQBIUEVfQ0JfSEVBREVSU19DT01QTEVURQBIUEVfQ0JfVkVSU0lPTl9DT01QTEVURQBIUEVfQ0JfVVJMX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8AAF4TAAAmEwAAMBAAAPAXAACdEwAAFRIAADkXAADwEgAAChAAAHUSAACtEgAAghMAAE8UAAB/EAAAoBUAACMUAACJEgAAixQAAE0VAADUEQAAzxQAABAYAADJFgAA3BYAAMERAADgFwAAuxQAAHQUAAB8FQAA5RQAAAgXAAAfEAAAZRUAAKMUAAAoFQAAAhUAAJkVAAAsEAAAixkAAE8PAADUDgAAahAAAM4QAAACFwAAiQ4AAG4TAAAcEwAAZhQAAFYXAADBEwAAzRMAAGwTAABoFwAAZhcAAF8XAAAiEwAAzg8AAGkOAADYDgAAYxYAAMsTAACqDgAAKBcAACYXAADFEwAAXRYAAOgRAABnEwAAZRMAAPIWAABzEwAAHRcAAPkWAADzEQAAzw4AAM4VAAAMEgAAsxEAAKURAABhEAAAMhcAALsTAEH5NQsBAQBBkDYL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB/TcLAQEAQZE4C14CAwICAgICAAACAgACAgACAgICAgICAgICAAQAAAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAEH9OQsBAQBBkToLXgIAAgICAgIAAAICAAICAAICAgICAgICAgIAAwAEAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAQfA7Cw1sb3NlZWVwLWFsaXZlAEGJPAsBAQBBoDwL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBiT4LAQEAQaA+C+cBAQEBAQEBAQEBAQEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFjaHVua2VkAEGwwAALXwEBAAEBAQEBAAABAQABAQABAQEBAQEBAQEBAAAAAAAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAEGQwgALIWVjdGlvbmVudC1sZW5ndGhvbnJveHktY29ubmVjdGlvbgBBwMIACy1yYW5zZmVyLWVuY29kaW5ncGdyYWRlDQoNCg0KU00NCg0KVFRQL0NFL1RTUC8AQfnCAAsFAQIAAQMAQZDDAAvgAQQBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAEH5xAALBQECAAEDAEGQxQAL4AEEAQEFAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+cYACwQBAAABAEGRxwAL3wEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAEH6yAALBAEAAAIAQZDJAAtfAwQAAAQEBAQEBAQEBAQEBQQEBAQEBAQEBAQEBAAEAAYHBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQAQfrKAAsEAQAAAQBBkMsACwEBAEGqywALQQIAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAEH6zAALBAEAAAEAQZDNAAsBAQBBms0ACwYCAAAAAAIAQbHNAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBB8M4AC5YBTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRU9SRElSRUNUT1JUUkNIUEFSQU1FVEVSVVJDRUJTQ1JJQkVBUkRPV05BQ0VJTkROS0NLVUJTQ1JJQkVIVFRQL0FEVFAv","base64")});var skn=z((l6c,ikn)=>{"use strict";var{Buffer:Hho}=xt("node:buffer");ikn.exports=Hho.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAy0sBQYAAAIAAAAAAAACAQIAAgICAAADAAAAAAMDAwMBAQEBAQEBAQEAAAIAAAAEBQFwARISBQMBAAIGCAF/AUGA1AQLB9EFIgZtZW1vcnkCAAtfaW5pdGlhbGl6ZQAIGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBAAtsbGh0dHBfaW5pdAAJGGxsaHR0cF9zaG91bGRfa2VlcF9hbGl2ZQAvDGxsaHR0cF9hbGxvYwALBm1hbGxvYwAxC2xsaHR0cF9mcmVlAAwEZnJlZQAMD2xsaHR0cF9nZXRfdHlwZQANFWxsaHR0cF9nZXRfaHR0cF9tYWpvcgAOFWxsaHR0cF9nZXRfaHR0cF9taW5vcgAPEWxsaHR0cF9nZXRfbWV0aG9kABAWbGxodHRwX2dldF9zdGF0dXNfY29kZQAREmxsaHR0cF9nZXRfdXBncmFkZQASDGxsaHR0cF9yZXNldAATDmxsaHR0cF9leGVjdXRlABQUbGxodHRwX3NldHRpbmdzX2luaXQAFQ1sbGh0dHBfZmluaXNoABYMbGxodHRwX3BhdXNlABcNbGxodHRwX3Jlc3VtZQAYG2xsaHR0cF9yZXN1bWVfYWZ0ZXJfdXBncmFkZQAZEGxsaHR0cF9nZXRfZXJybm8AGhdsbGh0dHBfZ2V0X2Vycm9yX3JlYXNvbgAbF2xsaHR0cF9zZXRfZXJyb3JfcmVhc29uABwUbGxodHRwX2dldF9lcnJvcl9wb3MAHRFsbGh0dHBfZXJybm9fbmFtZQAeEmxsaHR0cF9tZXRob2RfbmFtZQAfEmxsaHR0cF9zdGF0dXNfbmFtZQAgGmxsaHR0cF9zZXRfbGVu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PgtBhwEMPQtBiAEMPAtBiQEMOwtBigEMOgtBiwEMOQtBjAEMOAtBjQEMNwtBjgEMNgtBjwEMNQtBkAEMNAtBkQEMMwtBkgEMMgtBkwEMMQtBlAEMMAtBlQEMLwtBlgEMLgtBlwEMLQtBmAEMLAtBmQEMKwtBmgEMKgtBmwEMKQtBnAEMKAtBnQEMJwtBngEMJgtBnwEMJQtBoAEMJAtBoQEMIwtBogEMIgtBowEMIQtBpAEMIAtBpQEMHwtBpgEMHgtBpwEMHQtBqAEMHAtBqQEMGwtBqgEMGgtBqwEMGQtBrAEMGAtBrQEMFwtBrgEMFgtBAQwVC0GvAQwUC0GwAQwTC0GxAQwSC0GzAQwRC0GyAQwQC0G0AQwPC0G1AQwOC0G2AQwNC0G3AQwMC0G4AQwLC0G5AQwKC0G6AQwJC0G7AQwIC0HGAQwHC0G8AQwGC0G9AQwFC0G+AQwEC0G/AQwDC0HAAQwCC0HCAQwBC0HBAQshAwNAAkACQAJAAkACQAJAAkACQAJAIAICfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAgJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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iQEhAwykAgtBASABLQAAQd8ARw1nGiABQQFqIQEMXgtBigEhAyABIARGDaICIAIoAgAiACAEIAFraiEFIAEgAGtBAWohBgNAIAEtAAAgAEGMzwBqLQAARw1kIABBAUYN+gEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMogILQYsBIQMgASAERg2hAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGOzwBqLQAARw1kIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyiAgsgAkEANgIAIAZBAWohAUECDGULQYwBIQMgASAERg2gAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHwzwBqLQAARw1jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyhAgsgAkEANgIAIAZBAWohAUEfDGQLQY0BIQMgASAERg2fAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHyzwBqLQAARw1iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAygAgsgAkEANgIAIAZBAWohAUEJDGMLIAEgBEYEQEGOASEDDJ8CCwJAAkAgAS0AAEHJAGsOBwBiYmJiYgFiCyABQQFqIQFB+AAhAwyGAgsgAUEBaiEBQfkAIQMMhQILQY8BIQMgASAERg2dAiACKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGRzwBqLQAARw1gIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyeAgsgAkEANgIAIAZBAWohAUEYDGELQZABIQMgASAERg2cAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGXzwBqLQAARw1fIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAydAgsgAkEANgIAIAZBAWohAUEXDGALQZEBIQMgASAERg2bAiACKAIAIgAgBCABa2ohBSABIABrQQZqIQYCQANAIAEtAAAgAEGazwBqLQAARw1eIABBBkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAycAgsgAkEANgIAIAZBAWohAUEV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JSIARQ0RIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMtAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0gIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMswELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0iIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMsgELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0OIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMsQELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0dIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMsAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0fIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMrwELIABBP0cNASABQQFqCyEBQQUhAwyUAQtBACEDIAJBADYCHCACIAE2AhQgAkH9EjYCECACQQc2AgwMrAELIAJBADYCHCACIAE2AhQgAkHcCDYCECACQQc2AgxBACEDDKsBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNByACQeUANgIcIAIgATYCFCACIAA2AgxBACEDDKoBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNFiACQdMANgIcIAIgATYCFCACIAA2AgxBACEDDKkBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNGCACQdIANgIcIAIgATYCFCACIAA2AgxBACEDDKgBCyACQQA2AhwgAiABNgIUIAJBxgo2AhAgAkEHNgIMQQAhAwynAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQMgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwymAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRIgAkHTADYCHCACIAE2AhQgAiAANgIMQQAhAwylAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRQgAkHSADYCHCACIAE2AhQgAiAANgIMQQAhAwykAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQAgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwyjAQtB1QAhAwyJAQsgAEEVRwRAIAJBADYCHCACIAE2AhQgAkG5DTYCECACQRo2AgxB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AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB5ABrDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0HhJw8LQaQhDwtByywPC0H+MQ8LQcAkDwtBqyQPC0GNKA8LQeImDwtBgDAPC0G5Lw8LQdckDwtB7x8PC0HhHw8LQfofDwtB8iAPC0GoLw8LQa4yDwtBiDAPC0HsJw8LQYIiDwtBjh0PC0HQLg8LQcojDwtBxTIPC0HfHA8LQdIcDwtBxCAPC0HXIA8LQaIfDwtB7S4PC0GrMA8LQdQlDwtBzC4PC0H6Lg8LQfwrDwtB0jAPC0HxHQ8LQbsgDwtB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AAADAEGUCAsFBAAAAAUAQaQICwkGAAAABwAAAAgAQdwIC4otSW52YWxpZCBjaGFyIGluIHVybCBxdWVyeQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2JvZHkAQ29udGVudC1MZW5ndGggb3ZlcmZsb3cAQ2h1bmsgc2l6ZSBvdmVyZmxvdwBSZXNwb25zZSBvdmVyZmxvdwBJbnZhbGlkIG1ldGhvZCBmb3IgSFRUUC94LnggcmVxdWVzdABJbnZhbGlkIG1ldGhvZCBmb3IgUlRTUC94LnggcmVxdWVzdABFeHBlY3RlZCBTT1VSQ0UgbWV0aG9kIGZvciBJQ0UveC54IHJlcXVlc3QASW52YWxpZCBjaGFyIGluIHVybCBmcmFnbWVudCBzdGFydABFeHBlY3RlZCBkb3QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9zdGF0dXMASW52YWxpZCByZXNwb25zZSBzdGF0dXMASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucwBVc2VyIGNhbGxiYWNrIGVycm9yAGBvbl9yZXNldGAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2hlYWRlcmAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfYmVnaW5gIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fdmFsdWVgIGNhbGxiYWNrIGVycm9yAGBvbl9zdGF0dXNfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl92ZXJzaW9uX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdXJsX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAEVtcHR5IENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhcmFjdGVyIGluIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBNaXNzaW5nIGV4cGVjdGVkIExGIGFmdGVyIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AgaGVhZGVyIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGUgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZWQgdmFsdWUAUGF1c2VkIGJ5IG9uX2hlYWRlcnNfY29tcGxldGUASW52YWxpZCBFT0Ygc3RhdGUAb25fcmVzZXQgcGF1c2UAb25fY2h1bmtfaGVhZGVyIHBhdXNlAG9uX21lc3NhZ2VfYmVnaW4gcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlIHBhdXNlAG9uX3N0YXR1c19jb21wbGV0ZSBwYXVzZQBvbl92ZXJzaW9uX2NvbXBsZXRlIHBhdXNlAG9uX3VybF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGUgcGF1c2UAb25fbWVzc2FnZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXRob2RfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lIHBhdXNlAFVuZXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgc3RhcnQgbGluZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgbmFtZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AAU1dJVENIX1BST1hZAFVTRV9QUk9YWQBNS0FDVElWSVRZAFVOUFJPQ0VTU0FCTEVfRU5USVRZAENPUFkATU9WRURfUEVSTUFORU5UTFkAVE9PX0VBUkxZAE5PVElGWQBGQUlMRURfREVQRU5ERU5DWQBCQURfR0FURVdBWQBQTEFZAFBVVABDSEVDS09VVABHQVRFV0FZX1RJTUVPVVQAUkVRVUVTVF9USU1FT1VUAE5FVFdPUktfQ09OTkVDVF9USU1FT1VUAENPTk5FQ1RJT05fVElNRU9VVABMT0dJTl9USU1FT1VUAE5FVFdPUktfUkVBRF9USU1FT1VUAFBPU1QATUlTRElSRUNURURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9MT0FEX0JBTEFOQ0VEX1JFUVVFU1QAQkFEX1JFUVVFU1QASFRUUF9SRVFVRVNUX1NFTlRfVE9fSFRUUFNfUE9SVABSRVBPUlQASU1fQV9URUFQT1QAUkVTRVRfQ09OVEVOVABOT19DT05URU5UAFBBUlRJQUxfQ09OVEVOVABIUEVfSU5WQUxJRF9DT05TVEFOVABIUEVfQ0JfUkVTRVQAR0VUAEhQRV9TVFJJQ1QAQ09ORkxJQ1QAVEVNUE9SQVJZX1JFRElSRUNUAFBFUk1BTkVOVF9SRURJUkVDVABDT05ORUNUAE1VTFRJX1NUQVRVUwBIUEVfSU5WQUxJRF9TVEFUVVMAVE9PX01BTllfUkVRVUVTVFMARUFSTFlfSElOVFMAVU5BVkFJTEFCTEVfRk9SX0xFR0FMX1JFQVNPTlMAT1BUSU9OUwBTV0lUQ0hJTkdfUFJPVE9DT0xTAFZBUklBTlRfQUxTT19ORUdPVElBVEVTAE1VTFRJUExFX0NIT0lDRVMASU5URVJOQUxfU0VSVkVSX0VSUk9SAFdFQl9TRVJWRVJfVU5LTk9XTl9FUlJPUgBSQUlMR1VOX0VSUk9SAElERU5USVRZX1BST1ZJREVSX0FVVEhFTlRJQ0FUSU9OX0VSUk9SAFNTTF9DRVJUSUZJQ0FURV9FUlJPUgBJTlZBTElEX1hfRk9SV0FSREVEX0ZPUgBTRVRfUEFSQU1FVEVSAEdFVF9QQVJBTUVURVIASFBFX1VTRVIAU0VFX09USEVSAEhQRV9DQl9DSFVOS19IRUFERVIATUtDQUxFTkRBUgBTRVRVUABXRUJfU0VSVkVSX0lTX0RPV04AVEVBUkRPV04ASFBFX0NMT1NFRF9DT05ORUNUSU9OAEhFVVJJU1RJQ19FWFBJUkFUSU9OAERJU0NPTk5FQ1RFRF9PUEVSQVRJT04ATk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04ASFBFX0lOVkFMSURfVkVSU0lPTgBIUEVfQ0JfTUVTU0FHRV9CRUdJTgBTSVRFX0lTX0ZST1pFTgBIUEVfSU5WQUxJRF9IRUFERVJfVE9LRU4ASU5WQUxJRF9UT0tFTgBGT1JCSURERU4ARU5IQU5DRV9ZT1VSX0NBTE0ASFBFX0lOVkFMSURfVVJMAEJMT0NLRURfQllfUEFSRU5UQUxfQ09OVFJPTABNS0NPTABBQ0wASFBFX0lOVEVSTkFMAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0VfVU5PRkZJQ0lBTABIUEVfT0sAVU5MSU5LAFVOTE9DSwBQUkkAUkVUUllfV0lUSABIUEVfSU5WQUxJRF9DT05URU5UX0xFTkdUSABIUEVfVU5FWFBFQ1RFRF9DT05URU5UX0xFTkdUSABGTFVTSABQUk9QUEFUQ0gATS1TRUFSQ0gAVVJJX1RPT19MT05HAFBST0NFU1NJTkcATUlTQ0VMTEFORU9VU19QRVJTSVNURU5UX1dBUk5JTkcATUlTQ0VMTEFORU9VU19XQVJOSU5HAEhQRV9JTlZBTElEX1RSQU5TRkVSX0VOQ09ESU5HAEV4cGVjdGVkIENSTEYASFBFX0lOVkFMSURfQ0hVTktfU0laRQBNT1ZFAENPTlRJTlVFAEhQRV9DQl9TVEFUVVNfQ09NUExFVEUASFBFX0NCX0hFQURFUlNfQ09NUExFVEUASFBFX0NCX1ZFUlNJT05fQ09NUExFVEUASFBFX0NCX1VSTF9DT01QTEVURQBIUEVfQ0JfQ0hVTktfQ09NUExFVEUASFBFX0NCX0hFQURFUl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fTkFNRV9DT01QTEVURQBIUEVfQ0JfTUVTU0FHRV9DT01QTEVURQBIUEVfQ0JfTUVUSE9EX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfRklFTERfQ09NUExFVEUAREVMRVRFAEhQRV9JTlZBTElEX0VPRl9TVEFURQBJTlZBTElEX1NTTF9DRVJUSUZJQ0FURQBQQVVTRQBOT19SRVNQT05TRQBVTlNVUFBPUlRFRF9NRURJQV9UWVBFAEdPTkUATk9UX0FDQ0VQVEFCTEUAU0VSVklDRV9VTkFWQUlMQUJMRQBSQU5HRV9OT1RfU0FUSVNGSUFCTEUAT1JJR0lOX0lTX1VOUkVBQ0hBQkxFAFJFU1BPTlNFX0lTX1NUQUxFAFBVUkdFAE1FUkdFAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UAUkVRVUVTVF9IRUFERVJfVE9PX0xBUkdFAFBBWUxPQURfVE9PX0xBUkdFAElOU1VGRklDSUVOVF9TVE9SQUdFAEhQRV9QQVVTRURfVVBHUkFERQBIUEVfUEFVU0VEX0gyX1VQR1JBREUAU09VUkNFAEFOTk9VTkNFAFRSQUNFAEhQRV9VTkVYUEVDVEVEX1NQQUNFAERFU0NSSUJFAFVOU1VCU0NSSUJFAFJFQ09SRABIUEVfSU5WQUxJRF9NRVRIT0QATk9UX0ZPVU5EAFBST1BGSU5EAFVOQklORABSRUJJTkQAVU5BVVRIT1JJWkVEAE1FVEhPRF9OT1RfQUxMT1dFRABIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRABBTFJFQURZX1JFUE9SVEVEAEFDQ0VQVEVEAE5PVF9JTVBMRU1FTlRFRABMT09QX0RFVEVDVEVEAEhQRV9DUl9FWFBFQ1RFRABIUEVfTEZfRVhQRUNURUQAQ1JFQVRFRABJTV9VU0VEAEhQRV9QQVVTRUQAVElNRU9VVF9PQ0NVUkVEAFBBWU1FTlRfUkVRVUlSRUQAUFJFQ09ORElUSU9OX1JFUVVJUkVEAFBST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAE5FVFdPUktfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATEVOR1RIX1JFUVVJUkVEAFNTTF9DRVJUSUZJQ0FURV9SRVFVSVJFRABVUEdSQURFX1JFUVVJUkVEAFBBR0VfRVhQSVJFRABQUkVDT05ESVRJT05fRkFJTEVEAEVYUEVDVEFUSU9OX0ZBSUxFRABSRVZBTElEQVRJT05fRkFJTEVEAFNTTF9IQU5EU0hBS0VfRkFJTEVEAExPQ0tFRABUUkFOU0ZPUk1BVElPTl9BUFBMSUVEAE5PVF9NT0RJRklFRABOT1RfRVhURU5ERUQAQkFORFdJRFRIX0xJTUlUX0VYQ0VFREVEAFNJVEVfSVNfT1ZFUkxPQURFRABIRUFEAEV4cGVjdGVkIEhUVFAvAABeEwAAJhMAADAQAADwFwAAnRMAABUSAAA5FwAA8BIAAAoQAAB1EgAArRIAAIITAABPFAAAfxAAAKAVAAAjFAAAiRIAAIsUAABNFQAA1BEAAM8UAAAQGAAAyRYAANwWAADBEQAA4BcAALsUAAB0FAAAfBUAAOUUAAAIFwAAHxAAAGUVAACjFAAAKBUAAAIVAACZFQAALBAAAIsZAABPDwAA1A4AAGoQAADOEAAAAhcAAIkOAABuEwAAHBMAAGYUAABWFwAAwRMAAM0TAABsEwAAaBcAAGYXAABfFwAAIhMAAM4PAABpDgAA2A4AAGMWAADLEwAAqg4AACgXAAAmFwAAxRMAAF0WAADoEQAAZxMAAGUTAADyFgAAcxMAAB0XAAD5FgAA8xEAAM8OAADOFQAADBIAALMRAAClEQAAYRAAADIXAAC7EwBB+TULAQEAQZA2C+ABAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQf03CwEBAEGROAteAgMCAgICAgAAAgIAAgIAAgICAgICAgICAgAEAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAIAAgBB/TkLAQEAQZE6C14CAAICAgICAAACAgACAgACAgICAgICAgICAAMABAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAEHwOwsNbG9zZWVlcC1hbGl2ZQBBiTwLAQEAQaA8C+ABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQYk+CwEBAEGgPgvnAQEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBY2h1bmtlZABBsMAAC18BAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBBkMIACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQcDCAAstcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQoNClNNDQoNClRUUC9DRS9UU1AvAEH5wgALBQECAAEDAEGQwwAL4AEEAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+cQACwUBAgABAwBBkMUAC+ABBAEBBQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQfnGAAsEAQAAAQBBkccAC98BAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+sgACwQBAAACAEGQyQALXwMEAAAEBAQEBAQEBAQEBAUEBAQEBAQEBAQEBAQABAAGBwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEAEH6ygALBAEAAAEAQZDLAAsBAQBBqssAC0ECAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBB+swACwQBAAABAEGQzQALAQEAQZrNAAsGAgAAAAACAEGxzQALOgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQfDOAAuWAU5PVU5DRUVDS09VVE5FQ1RFVEVDUklCRUxVU0hFVEVBRFNFQVJDSFJHRUNUSVZJVFlMRU5EQVJWRU9USUZZUFRJT05TQ0hTRUFZU1RBVENIR0VPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFSFRUUC9BRFRQLw==","base64")});var dPe=z((u6c,dkn)=>{"use strict";var okn=["GET","HEAD","POST"],Yho=new Set(okn),Xho=[101,204,205,304],akn=[301,302,303,307,308],Jho=new Set(akn),ckn=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","4190","5060","5061","6000","6566","6665","6666","6667","6668","6669","6679","6697","10080"],Uho=new Set(ckn),lkn=["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],Kho=new Set(lkn),jho=["follow","manual","error"],ukn=["GET","HEAD","OPTIONS","TRACE"],zho=new Set(ukn),qho=["navigate","same-origin","no-cors","cors"],$ho=["omit","same-origin","include"],e_o=["default","no-store","reload","no-cache","force-cache","only-if-cached"],t_o=["content-encoding","content-language","content-location","content-type","content-length"],r_o=["half"],gkn=["CONNECT","TRACE","TRACK"],n_o=new Set(gkn),Akn=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],i_o=new Set(Akn);dkn.exports={subresource:Akn,forbiddenMethods:gkn,requestBodyHeader:t_o,referrerPolicy:lkn,requestRedirect:jho,requestMode:qho,requestCredentials:$ho,requestCache:e_o,redirectStatus:akn,corsSafeListedMethods:okn,nullBodyStatus:Xho,safeMethods:ukn,badPorts:ckn,requestDuplex:r_o,subresourceSet:i_o,badPortsSet:Uho,redirectStatusSet:Jho,corsSafeListedMethodsSet:Yho,safeMethodsSet:zho,forbiddenMethodsSet:n_o,referrerPolicySet:Kho}});var Ker=z((g6c,pkn)=>{"use strict";var Uer=Symbol.for("undici.globalOrigin.1");function s_o(){return globalThis[Uer]}function o_o(e){if(e===void 0){Object.defineProperty(globalThis,Uer,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let t=new URL(e);if(t.protocol!=="http:"&&t.protocol!=="https:")throw new TypeError(`Only http & https urls are allowed, received ${t.protocol}`);Object.defineProperty(globalThis,Uer,{value:t,writable:!0,enumerable:!1,configurable:!1})}pkn.exports={getGlobalOrigin:s_o,setGlobalOrigin:o_o}});var ML=z((A6c,ykn)=>{"use strict";var igt=xt("node:assert"),a_o=new TextEncoder,pPe=/^[!#$%&'*+\-.^_|~A-Za-z0-9]+$/,c_o=/[\u000A\u000D\u0009\u0020]/,l_o=/[\u0009\u000A\u000C\u000D\u0020]/g,u_o=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function g_o(e){igt(e.protocol==="data:");let t=Ckn(e,!0);t=t.slice(5);let r={position:0},s=d2e(",",t,r),a=s.length;if(s=C_o(s,!0,!0),r.position>=t.length)return"failure";r.position++;let o=t.slice(a+1),g=mkn(o);if(/;(\u0020){0,}base64$/i.test(s)){let f=_kn(g);if(g=d_o(f),g==="failure")return"failure";s=s.slice(0,-6),s=s.replace(/(\u0020)+$/,""),s=s.slice(0,-1)}s.startsWith(";")&&(s="text/plain"+s);let p=jer(s);return p==="failure"&&(p=jer("text/plain;charset=US-ASCII")),{mimeType:p,body:g}}function Ckn(e,t=!1){if(!t)return e.href;let r=e.href,s=e.hash.length,a=s===0?r:r.substring(0,r.length-s);return!s&&r.endsWith("#")?a.slice(0,-1):a}function sgt(e,t,r){let s="";for(;r.position=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102}function Ikn(e){return e>=48&&e<=57?e-48:(e&223)-55}function A_o(e){let t=e.length,r=new Uint8Array(t),s=0;for(let a=0;ae.length)return"failure";t.position++;let s=d2e(";",e,t);if(s=ngt(s,!1,!0),s.length===0||!pPe.test(s))return"failure";let a=r.toLowerCase(),o=s.toLowerCase(),g={type:a,subtype:o,parameters:new Map,essence:`${a}/${o}`};for(;t.positionc_o.test(m),e,t);let p=sgt(m=>m!==";"&&m!=="=",e,t);if(p=p.toLowerCase(),t.positione.length)break;let f=null;if(e[t.position]==='"')f=hkn(e,t,!0),d2e(";",e,t);else if(f=d2e(";",e,t),f=ngt(f,!1,!0),f.length===0)continue;p.length!==0&&pPe.test(p)&&(f.length===0||u_o.test(f))&&!g.parameters.has(p)&&g.parameters.set(p,f)}return g}function d_o(e){e=e.replace(l_o,"");let t=e.length;if(t%4===0&&e.charCodeAt(t-1)===61&&(--t,e.charCodeAt(t-1)===61&&--t),t%4===1||/[^+/0-9A-Za-z]/.test(e.length===t?e:e.substring(0,t)))return"failure";let r=Buffer.from(e,"base64");return new Uint8Array(r.buffer,r.byteOffset,r.byteLength)}function hkn(e,t,r){let s=t.position,a="";for(igt(e[t.position]==='"'),t.position++;a+=sgt(g=>g!=='"'&&g!=="\\",e,t),!(t.position>=e.length);){let o=e[t.position];if(t.position++,o==="\\"){if(t.position>=e.length){a+="\\";break}a+=e[t.position],t.position++}else{igt(o==='"');break}}return r?a:e.slice(s,t.position)}function p_o(e){igt(e!=="failure");let{parameters:t,essence:r}=e,s=r;for(let[a,o]of t.entries())s+=";",s+=a,s+="=",pPe.test(o)||(o=o.replace(/(\\|")/g,"\\$1"),o='"'+o,o+='"'),s+=o;return s}function f_o(e){return e===13||e===10||e===9||e===32}function ngt(e,t=!0,r=!0){return zer(e,t,r,f_o)}function I_o(e){return e===13||e===10||e===9||e===12||e===32}function C_o(e,t=!0,r=!0){return zer(e,t,r,I_o)}function zer(e,t,r,s){let a=0,o=e.length-1;if(t)for(;a0&&s(e.charCodeAt(o));)o--;return a===0&&o===e.length-1?e:e.slice(a,o+1)}function _kn(e){let t=e.length;if(65535>t)return String.fromCharCode.apply(null,e);let r="",s=0,a=65535;for(;st&&(a=t-s),r+=String.fromCharCode.apply(null,e.subarray(s,s+=a));return r}function m_o(e){switch(e.essence){case"application/ecmascript":case"application/javascript":case"application/x-ecmascript":case"application/x-javascript":case"text/ecmascript":case"text/javascript":case"text/javascript1.0":case"text/javascript1.1":case"text/javascript1.2":case"text/javascript1.3":case"text/javascript1.4":case"text/javascript1.5":case"text/jscript":case"text/livescript":case"text/x-ecmascript":case"text/x-javascript":return"text/javascript";case"application/json":case"text/json":return"application/json";case"image/svg+xml":return"image/svg+xml";case"text/xml":case"application/xml":return"application/xml"}return e.subtype.endsWith("+json")?"application/json":e.subtype.endsWith("+xml")?"application/xml":""}ykn.exports={dataURLProcessor:g_o,URLSerializer:Ckn,collectASequenceOfCodePoints:sgt,collectASequenceOfCodePointsFast:d2e,stringPercentDecode:mkn,parseMIMEType:jer,collectAnHTTPQuotedString:hkn,serializeAMimeType:p_o,removeChars:zer,removeHTTPWhitespace:ngt,minimizeSupportedMimeType:m_o,HTTP_TOKEN_CODEPOINTS:pPe,isomorphicDecode:_kn}});var WD=z((d6c,bkn)=>{"use strict";var{types:gU,inspect:h_o}=xt("node:util"),{toUSVString:__o}=rm(),Kl={};Kl.converters={};Kl.util={};Kl.errors={};Kl.errors.exception=function(e){return new TypeError(`${e.header}: ${e.message}`)};Kl.errors.conversionFailed=function(e){let t=e.types.length===1?"":" one of",r=`${e.argument} could not be converted to${t}: ${e.types.join(", ")}.`;return Kl.errors.exception({header:e.prefix,message:r})};Kl.errors.invalidArgument=function(e){return Kl.errors.exception({header:e.prefix,message:`"${e.value}" is an invalid ${e.type}.`})};Kl.brandCheck=function(e,t,r){if(r?.strict!==!1){if(!(e instanceof t)){let s=new TypeError("Illegal invocation");throw s.code="ERR_INVALID_THIS",s}}else if(e?.[Symbol.toStringTag]!==t.prototype[Symbol.toStringTag]){let s=new TypeError("Illegal invocation");throw s.code="ERR_INVALID_THIS",s}};Kl.argumentLengthCheck=function({length:e},t,r){if(ea)throw Kl.errors.exception({header:"Integer conversion",message:`Value must be between ${o}-${a}, got ${g}.`});return g}return!Number.isNaN(g)&&s?.clamp===!0?(g=Math.min(Math.max(g,o),a),Math.floor(g)%2===0?g=Math.floor(g):g=Math.ceil(g),g):Number.isNaN(g)||g===0&&Object.is(0,g)||g===Number.POSITIVE_INFINITY||g===Number.NEGATIVE_INFINITY?0:(g=Kl.util.IntegerPart(g),g=g%Math.pow(2,t),r==="signed"&&g>=Math.pow(2,t)-1?g-Math.pow(2,t):g)};Kl.util.IntegerPart=function(e){let t=Math.floor(Math.abs(e));return e<0?-1*t:t};Kl.util.Stringify=function(e){switch(Kl.util.Type(e)){case"Symbol":return`Symbol(${e.description})`;case"Object":return h_o(e);case"String":return`"${e}"`;default:return`${e}`}};Kl.sequenceConverter=function(e){return(t,r,s,a)=>{if(Kl.util.Type(t)!=="Object")throw Kl.errors.exception({header:r,message:`${s} (${Kl.util.Stringify(t)}) is not iterable.`});let o=typeof a=="function"?a():t?.[Symbol.iterator]?.(),g=[],p=0;if(o===void 0||typeof o.next!="function")throw Kl.errors.exception({header:r,message:`${s} is not iterable.`});for(;;){let{done:f,value:m}=o.next();if(f)break;g.push(e(m,r,`${s}[${p++}]`))}return g}};Kl.recordConverter=function(e,t){return(r,s,a)=>{if(Kl.util.Type(r)!=="Object")throw Kl.errors.exception({header:s,message:`${a} ("${Kl.util.Type(r)}") is not an Object.`});let o={};if(!gU.isProxy(r)){let p=[...Object.getOwnPropertyNames(r),...Object.getOwnPropertySymbols(r)];for(let f of p){let m=e(f,s,a),y=t(r[f],s,a);o[m]=y}return o}let g=Reflect.ownKeys(r);for(let p of g)if(Reflect.getOwnPropertyDescriptor(r,p)?.enumerable){let m=e(p,s,a),y=t(r[p],s,a);o[m]=y}return o}};Kl.interfaceConverter=function(e){return(t,r,s,a)=>{if(a?.strict!==!1&&!(t instanceof e))throw Kl.errors.exception({header:r,message:`Expected ${s} ("${Kl.util.Stringify(t)}") to be an instance of ${e.name}.`});return t}};Kl.dictionaryConverter=function(e){return(t,r,s)=>{let a=Kl.util.Type(t),o={};if(a==="Null"||a==="Undefined")return o;if(a!=="Object")throw Kl.errors.exception({header:r,message:`Expected ${t} to be one of: Null, Undefined, Object.`});for(let g of e){let{key:p,defaultValue:f,required:m,converter:y}=g;if(m===!0&&!Object.hasOwn(t,p))throw Kl.errors.exception({header:r,message:`Missing required key "${p}".`});let B=t[p],v=Object.hasOwn(g,"defaultValue");if(v&&B!==null&&(B??=f()),m||v||B!==void 0){if(B=y(B,r,`${s}.${p}`),g.allowedValues&&!g.allowedValues.includes(B))throw Kl.errors.exception({header:r,message:`${B} is not an accepted type. Expected one of ${g.allowedValues.join(", ")}.`});o[p]=B}}return o}};Kl.nullableConverter=function(e){return(t,r,s)=>t===null?t:e(t,r,s)};Kl.converters.DOMString=function(e,t,r,s){if(e===null&&s?.legacyNullToEmptyString)return"";if(typeof e=="symbol")throw Kl.errors.exception({header:t,message:`${r} is a symbol, which cannot be converted to a DOMString.`});return String(e)};Kl.converters.ByteString=function(e,t,r){let s=Kl.converters.DOMString(e,t,r);for(let a=0;a255)throw new TypeError(`Cannot convert argument to a ByteString because the character at index ${a} has a value of ${s.charCodeAt(a)} which is greater than 255.`);return s};Kl.converters.USVString=__o;Kl.converters.boolean=function(e){return!!e};Kl.converters.any=function(e){return e};Kl.converters["long long"]=function(e,t,r){return Kl.util.ConvertToInt(e,64,"signed",void 0,t,r)};Kl.converters["unsigned long long"]=function(e,t,r){return Kl.util.ConvertToInt(e,64,"unsigned",void 0,t,r)};Kl.converters["unsigned long"]=function(e,t,r){return Kl.util.ConvertToInt(e,32,"unsigned",void 0,t,r)};Kl.converters["unsigned short"]=function(e,t,r,s){return Kl.util.ConvertToInt(e,16,"unsigned",s,t,r)};Kl.converters.ArrayBuffer=function(e,t,r,s){if(Kl.util.Type(e)!=="Object"||!gU.isAnyArrayBuffer(e))throw Kl.errors.conversionFailed({prefix:t,argument:`${r} ("${Kl.util.Stringify(e)}")`,types:["ArrayBuffer"]});if(s?.allowShared===!1&&gU.isSharedArrayBuffer(e))throw Kl.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.resizable||e.growable)throw Kl.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};Kl.converters.TypedArray=function(e,t,r,s,a){if(Kl.util.Type(e)!=="Object"||!gU.isTypedArray(e)||e.constructor.name!==t.name)throw Kl.errors.conversionFailed({prefix:r,argument:`${s} ("${Kl.util.Stringify(e)}")`,types:[t.name]});if(a?.allowShared===!1&&gU.isSharedArrayBuffer(e.buffer))throw Kl.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.buffer.resizable||e.buffer.growable)throw Kl.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};Kl.converters.DataView=function(e,t,r,s){if(Kl.util.Type(e)!=="Object"||!gU.isDataView(e))throw Kl.errors.exception({header:t,message:`${r} is not a DataView.`});if(s?.allowShared===!1&&gU.isSharedArrayBuffer(e.buffer))throw Kl.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.buffer.resizable||e.buffer.growable)throw Kl.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};Kl.converters.BufferSource=function(e,t,r,s){if(gU.isAnyArrayBuffer(e))return Kl.converters.ArrayBuffer(e,t,r,{...s,allowShared:!1});if(gU.isTypedArray(e))return Kl.converters.TypedArray(e,e.constructor,t,r,{...s,allowShared:!1});if(gU.isDataView(e))return Kl.converters.DataView(e,t,r,{...s,allowShared:!1});throw Kl.errors.conversionFailed({prefix:t,argument:`${r} ("${Kl.util.Stringify(e)}")`,types:["BufferSource"]})};Kl.converters["sequence"]=Kl.sequenceConverter(Kl.converters.ByteString);Kl.converters["sequence>"]=Kl.sequenceConverter(Kl.converters["sequence"]);Kl.converters["record"]=Kl.recordConverter(Kl.converters.ByteString,Kl.converters.ByteString);bkn.exports={webidl:Kl}});var VW=z((p6c,Zkn)=>{"use strict";var{Transform:y_o}=xt("node:stream"),Ekn=xt("node:zlib"),{redirectStatusSet:b_o,referrerPolicySet:E_o,badPortsSet:B_o}=dPe(),{getGlobalOrigin:Bkn}=Ker(),{collectASequenceOfCodePoints:Lde,collectAnHTTPQuotedString:v_o,removeChars:S_o,parseMIMEType:w_o}=ML(),{performance:T_o}=xt("node:perf_hooks"),{isBlobLike:N_o,ReadableStreamFrom:R_o,isValidHTTPToken:vkn,normalizedMethodRecordsBase:D_o}=rm(),Vde=xt("node:assert"),{isUint8Array:x_o}=xt("node:util/types"),{webidl:fPe}=WD(),Skn=[],agt;try{agt=xt("node:crypto");let e=["sha256","sha384","sha512"];Skn=agt.getHashes().filter(t=>e.includes(t))}catch{}function wkn(e){let t=e.urlList,r=t.length;return r===0?null:t[r-1].toString()}function k_o(e,t){if(!b_o.has(e.status))return null;let r=e.headersList.get("location",!0);return r!==null&&Nkn(r)&&(Tkn(r)||(r=G_o(r)),r=new URL(r,wkn(e))),r&&!r.hash&&(r.hash=t),r}function Tkn(e){for(let t=0;t126||r<32)return!1}return!0}function G_o(e){return Buffer.from(e,"binary").toString("utf8")}function CPe(e){return e.urlList[e.urlList.length-1]}function F_o(e){let t=CPe(e);return Gkn(t)&&B_o.has(t.port)?"blocked":"allowed"}function Z_o(e){return e instanceof Error||e?.constructor?.name==="Error"||e?.constructor?.name==="DOMException"}function L_o(e){for(let t=0;t=32&&r<=126||r>=128&&r<=255))return!1}return!0}var V_o=vkn;function Nkn(e){return(e[0]===" "||e[0]===" "||e[e.length-1]===" "||e[e.length-1]===" "||e.includes(` +`)||e.includes("\r")||e.includes("\0"))===!1}function W_o(e,t){let{headersList:r}=t,s=(r.get("referrer-policy",!0)??"").split(","),a="";if(s.length>0)for(let o=s.length;o!==0;o--){let g=s[o-1].trim();if(E_o.has(g)){a=g;break}}a!==""&&(e.referrerPolicy=a)}function P_o(){return"allowed"}function O_o(){return"success"}function Q_o(){return"success"}function M_o(e){let t=null;t=e.mode,e.headersList.set("sec-fetch-mode",t,!0)}function H_o(e){let t=e.origin;if(!(t==="client"||t===void 0)){if(e.responseTainting==="cors"||e.mode==="websocket")e.headersList.append("origin",t,!0);else if(e.method!=="GET"&&e.method!=="HEAD"){switch(e.referrerPolicy){case"no-referrer":t=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":e.origin&&$er(e.origin)&&!$er(CPe(e))&&(t=null);break;case"same-origin":cgt(e,CPe(e))||(t=null);break;default:}e.headersList.append("origin",t,!0)}}}function p2e(e,t){return e}function Y_o(e,t,r){return!e?.startTime||e.startTime4096&&(s=a);let o=cgt(e,s),g=IPe(s)&&!IPe(e.url);switch(t){case"origin":return a??qer(r,!0);case"unsafe-url":return s;case"same-origin":return o?a:"no-referrer";case"origin-when-cross-origin":return o?s:a;case"strict-origin-when-cross-origin":{let p=CPe(e);return cgt(s,p)?s:IPe(s)&&!IPe(p)?"no-referrer":a}case"strict-origin":case"no-referrer-when-downgrade":default:return g?"no-referrer":a}}function qer(e,t){return Vde(e instanceof URL),e=new URL(e),e.protocol==="file:"||e.protocol==="about:"||e.protocol==="blank:"?"no-referrer":(e.username="",e.password="",e.hash="",t&&(e.pathname="",e.search=""),e)}function IPe(e){if(!(e instanceof URL))return!1;if(e.href==="about:blank"||e.href==="about:srcdoc"||e.protocol==="data:"||e.protocol==="file:")return!0;return t(e.origin);function t(r){if(r==null||r==="null")return!1;let s=new URL(r);return!!(s.protocol==="https:"||s.protocol==="wss:"||/^127(?:\.[0-9]+){0,2}\.[0-9]+$|^\[(?:0*:)*?:?0*1\]$/.test(s.hostname)||s.hostname==="localhost"||s.hostname.includes("localhost.")||s.hostname.endsWith(".localhost"))}}function j_o(e,t){if(agt===void 0)return!0;let r=Dkn(t);if(r==="no metadata"||r.length===0)return!0;let s=q_o(r),a=$_o(r,s);for(let o of a){let g=o.algo,p=o.hash,f=agt.createHash(g).update(e).digest("base64");if(f[f.length-1]==="="&&(f[f.length-2]==="="?f=f.slice(0,-2):f=f.slice(0,-1)),e0o(f,p))return!0}return!1}var z_o=/(?sha256|sha384|sha512)-((?[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\s|$)( +[!-~]*)?)?/i;function Dkn(e){let t=[],r=!0;for(let s of e.split(" ")){r=!1;let a=z_o.exec(s);if(a===null||a.groups===void 0||a.groups.algo===void 0)continue;let o=a.groups.algo.toLowerCase();Skn.includes(o)&&t.push(a.groups)}return r===!0?"no metadata":t}function q_o(e){let t=e[0].algo;if(t[3]==="5")return t;for(let r=1;r{e=s,t=a}),resolve:e,reject:t}}function n0o(e){return e.controller.state==="aborted"}function i0o(e){return e.controller.state==="aborted"||e.controller.state==="terminated"}function s0o(e){return D_o[e.toLowerCase()]??e}function o0o(e){let t=JSON.stringify(e);if(t===void 0)throw new TypeError("Value is not JSON serializable");return Vde(typeof t=="string"),t}var a0o=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function xkn(e,t,r=0,s=1){class a{#e;#t;#r;constructor(g,p){this.#e=g,this.#t=p,this.#r=0}next(){if(typeof this!="object"||this===null||!(#e in this))throw new TypeError(`'next' called on an object that does not implement interface ${e} Iterator.`);let g=this.#r,p=this.#e[t],f=p.length;if(g>=f)return{value:void 0,done:!0};let{[r]:m,[s]:y}=p[g];this.#r=g+1;let B;switch(this.#t){case"key":B=m;break;case"value":B=y;break;case"key+value":B=[m,y];break}return{value:B,done:!1}}}return delete a.prototype.constructor,Object.setPrototypeOf(a.prototype,a0o),Object.defineProperties(a.prototype,{[Symbol.toStringTag]:{writable:!1,enumerable:!1,configurable:!0,value:`${e} Iterator`},next:{writable:!0,enumerable:!0,configurable:!0}}),function(o,g){return new a(o,g)}}function c0o(e,t,r,s=0,a=1){let o=xkn(e,r,s,a),g={keys:{writable:!0,enumerable:!0,configurable:!0,value:function(){return fPe.brandCheck(this,t),o(this,"key")}},values:{writable:!0,enumerable:!0,configurable:!0,value:function(){return fPe.brandCheck(this,t),o(this,"value")}},entries:{writable:!0,enumerable:!0,configurable:!0,value:function(){return fPe.brandCheck(this,t),o(this,"key+value")}},forEach:{writable:!0,enumerable:!0,configurable:!0,value:function(f,m=globalThis){if(fPe.brandCheck(this,t),fPe.argumentLengthCheck(arguments,1,`${e}.forEach`),typeof f!="function")throw new TypeError(`Failed to execute 'forEach' on '${e}': parameter 1 is not of type 'Function'.`);for(let{0:y,1:B}of o(this,"key+value"))f.call(m,B,y,this)}}};return Object.defineProperties(t.prototype,{...g,[Symbol.iterator]:{writable:!0,enumerable:!1,configurable:!0,value:g.entries.value}})}async function l0o(e,t,r){let s=t,a=r,o;try{o=e.stream.getReader()}catch(g){a(g);return}try{s(await kkn(o))}catch(g){a(g)}}function u0o(e){return e instanceof ReadableStream||e[Symbol.toStringTag]==="ReadableStream"&&typeof e.tee=="function"}function g0o(e){try{e.close(),e.byobRequest?.respond(0)}catch(t){if(!t.message.includes("Controller is already closed")&&!t.message.includes("ReadableStream is already closed"))throw t}}var A0o=/[^\x00-\xFF]/;function ogt(e){return Vde(!A0o.test(e)),e}async function kkn(e){let t=[],r=0;for(;;){let{done:s,value:a}=await e.read();if(s)return Buffer.concat(t,r);if(!x_o(a))throw new TypeError("Received non-Uint8Array chunk");t.push(a),r+=a.length}}function d0o(e){Vde("protocol"in e);let t=e.protocol;return t==="about:"||t==="blob:"||t==="data:"}function $er(e){return typeof e=="string"&&e[5]===":"&&e[0]==="h"&&e[1]==="t"&&e[2]==="t"&&e[3]==="p"&&e[4]==="s"||e.protocol==="https:"}function Gkn(e){Vde("protocol"in e);let t=e.protocol;return t==="http:"||t==="https:"}function p0o(e,t){let r=e;if(!r.startsWith("bytes"))return"failure";let s={position:5};if(t&&Lde(f=>f===" "||f===" ",r,s),r.charCodeAt(s.position)!==61)return"failure";s.position++,t&&Lde(f=>f===" "||f===" ",r,s);let a=Lde(f=>{let m=f.charCodeAt(0);return m>=48&&m<=57},r,s),o=a.length?Number(a):null;if(t&&Lde(f=>f===" "||f===" ",r,s),r.charCodeAt(s.position)!==45)return"failure";s.position++,t&&Lde(f=>f===" "||f===" ",r,s);let g=Lde(f=>{let m=f.charCodeAt(0);return m>=48&&m<=57},r,s),p=g.length?Number(g):null;return s.positionp?"failure":{rangeStartValue:o,rangeEndValue:p}}function f0o(e,t,r){let s="bytes ";return s+=ogt(`${e}`),s+="-",s+=ogt(`${t}`),s+="/",s+=ogt(`${r}`),s}var etr=class extends y_o{#e;constructor(t){super(),this.#e=t}_transform(t,r,s){if(!this._inflateStream){if(t.length===0){s();return}this._inflateStream=(t[0]&15)===8?Ekn.createInflate(this.#e):Ekn.createInflateRaw(this.#e),this._inflateStream.on("data",this.push.bind(this)),this._inflateStream.on("end",()=>this.push(null)),this._inflateStream.on("error",a=>this.destroy(a))}this._inflateStream.write(t,r,s)}_final(t){this._inflateStream&&(this._inflateStream.end(),this._inflateStream=null),t()}};function I0o(e){return new etr(e)}function C0o(e){let t=null,r=null,s=null,a=Fkn("content-type",e);if(a===null)return"failure";for(let o of a){let g=w_o(o);g==="failure"||g.essence==="*/*"||(s=g,s.essence!==r?(t=null,s.parameters.has("charset")&&(t=s.parameters.get("charset")),r=s.essence):!s.parameters.has("charset")&&t!==null&&s.parameters.set("charset",t))}return s??"failure"}function m0o(e){let t=e,r={position:0},s=[],a="";for(;r.positiono!=='"'&&o!==",",t,r),r.positiono===9||o===32),s.push(a),a=""}return s}function Fkn(e,t){let r=t.get(e,!0);return r===null?null:m0o(r)}var h0o=new TextDecoder;function _0o(e){return e.length===0?"":(e[0]===239&&e[1]===187&&e[2]===191&&(e=e.subarray(3)),h0o.decode(e))}var ttr=class{get baseUrl(){return Bkn()}get origin(){return this.baseUrl?.origin}policyContainer=Rkn()},rtr=class{settingsObject=new ttr},y0o=new rtr;Zkn.exports={isAborted:n0o,isCancelled:i0o,isValidEncodedURL:Tkn,createDeferredPromise:r0o,ReadableStreamFrom:R_o,tryUpgradeRequestToAPotentiallyTrustworthyURL:t0o,clampAndCoarsenConnectionTimingInfo:Y_o,coarsenedSharedCurrentTime:X_o,determineRequestsReferrer:K_o,makePolicyContainer:Rkn,clonePolicyContainer:U_o,appendFetchMetadata:M_o,appendRequestOriginHeader:H_o,TAOCheck:Q_o,corsCheck:O_o,crossOriginResourcePolicyCheck:P_o,createOpaqueTimingInfo:J_o,setRequestReferrerPolicyOnRedirect:W_o,isValidHTTPToken:vkn,requestBadPort:F_o,requestCurrentURL:CPe,responseURL:wkn,responseLocationURL:k_o,isBlobLike:N_o,isURLPotentiallyTrustworthy:IPe,isValidReasonPhrase:L_o,sameOrigin:cgt,normalizeMethod:s0o,serializeJavascriptValueToJSONString:o0o,iteratorMixin:c0o,createIterator:xkn,isValidHeaderName:V_o,isValidHeaderValue:Nkn,isErrorLike:Z_o,fullyReadBody:l0o,bytesMatch:j_o,isReadableStreamLike:u0o,readableStreamClose:g0o,isomorphicEncode:ogt,urlIsLocal:d0o,urlHasHttpsScheme:$er,urlIsHttpHttpsScheme:Gkn,readAllBytes:kkn,simpleRangeHeaderValue:p0o,buildContentRange:f0o,parseMetadata:Dkn,createInflate:I0o,extractMimeType:C0o,getDecodeSplit:Fkn,utf8DecodeBytes:_0o,environmentSettingsObject:y0o}});var Iie=z((f6c,Lkn)=>{"use strict";Lkn.exports={kUrl:Symbol("url"),kHeaders:Symbol("headers"),kSignal:Symbol("signal"),kState:Symbol("state"),kDispatcher:Symbol("dispatcher")}});var itr=z((I6c,Vkn)=>{"use strict";var{Blob:b0o,File:E0o}=xt("node:buffer"),{kState:iz}=Iie(),{webidl:AU}=WD(),ntr=class e{constructor(t,r,s={}){let a=r,o=s.type,g=s.lastModified??Date.now();this[iz]={blobLike:t,name:a,type:o,lastModified:g}}stream(...t){return AU.brandCheck(this,e),this[iz].blobLike.stream(...t)}arrayBuffer(...t){return AU.brandCheck(this,e),this[iz].blobLike.arrayBuffer(...t)}slice(...t){return AU.brandCheck(this,e),this[iz].blobLike.slice(...t)}text(...t){return AU.brandCheck(this,e),this[iz].blobLike.text(...t)}get size(){return AU.brandCheck(this,e),this[iz].blobLike.size}get type(){return AU.brandCheck(this,e),this[iz].blobLike.type}get name(){return AU.brandCheck(this,e),this[iz].name}get lastModified(){return AU.brandCheck(this,e),this[iz].lastModified}get[Symbol.toStringTag](){return"File"}};AU.converters.Blob=AU.interfaceConverter(b0o);function B0o(e){return e instanceof E0o||e&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&e[Symbol.toStringTag]==="File"}Vkn.exports={FileLike:ntr,isFileLike:B0o}});var hPe=z((C6c,Mkn)=>{"use strict";var{isBlobLike:lgt,iteratorMixin:v0o}=VW(),{kState:VF}=Iie(),{kEnumerableProperty:f2e}=rm(),{FileLike:Wkn,isFileLike:S0o}=itr(),{webidl:o1}=WD(),{File:Qkn}=xt("node:buffer"),Pkn=xt("node:util"),Okn=globalThis.File??Qkn,mPe=class e{constructor(t){if(t!==void 0)throw o1.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]});this[VF]=[]}append(t,r,s=void 0){o1.brandCheck(this,e);let a="FormData.append";if(o1.argumentLengthCheck(arguments,2,a),arguments.length===3&&!lgt(r))throw new TypeError("Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'");t=o1.converters.USVString(t,a,"name"),r=lgt(r)?o1.converters.Blob(r,a,"value",{strict:!1}):o1.converters.USVString(r,a,"value"),s=arguments.length===3?o1.converters.USVString(s,a,"filename"):void 0;let o=str(t,r,s);this[VF].push(o)}delete(t){o1.brandCheck(this,e);let r="FormData.delete";o1.argumentLengthCheck(arguments,1,r),t=o1.converters.USVString(t,r,"name"),this[VF]=this[VF].filter(s=>s.name!==t)}get(t){o1.brandCheck(this,e);let r="FormData.get";o1.argumentLengthCheck(arguments,1,r),t=o1.converters.USVString(t,r,"name");let s=this[VF].findIndex(a=>a.name===t);return s===-1?null:this[VF][s].value}getAll(t){o1.brandCheck(this,e);let r="FormData.getAll";return o1.argumentLengthCheck(arguments,1,r),t=o1.converters.USVString(t,r,"name"),this[VF].filter(s=>s.name===t).map(s=>s.value)}has(t){o1.brandCheck(this,e);let r="FormData.has";return o1.argumentLengthCheck(arguments,1,r),t=o1.converters.USVString(t,r,"name"),this[VF].findIndex(s=>s.name===t)!==-1}set(t,r,s=void 0){o1.brandCheck(this,e);let a="FormData.set";if(o1.argumentLengthCheck(arguments,2,a),arguments.length===3&&!lgt(r))throw new TypeError("Failed to execute 'set' on 'FormData': parameter 2 is not of type 'Blob'");t=o1.converters.USVString(t,a,"name"),r=lgt(r)?o1.converters.Blob(r,a,"name",{strict:!1}):o1.converters.USVString(r,a,"name"),s=arguments.length===3?o1.converters.USVString(s,a,"name"):void 0;let o=str(t,r,s),g=this[VF].findIndex(p=>p.name===t);g!==-1?this[VF]=[...this[VF].slice(0,g),o,...this[VF].slice(g+1).filter(p=>p.name!==t)]:this[VF].push(o)}[Pkn.inspect.custom](t,r){let s=this[VF].reduce((o,g)=>(o[g.name]?Array.isArray(o[g.name])?o[g.name].push(g.value):o[g.name]=[o[g.name],g.value]:o[g.name]=g.value,o),{__proto__:null});r.depth??=t,r.colors??=!0;let a=Pkn.formatWithOptions(r,s);return`FormData ${a.slice(a.indexOf("]")+2)}`}};v0o("FormData",mPe,VF,"name","value");Object.defineProperties(mPe.prototype,{append:f2e,delete:f2e,get:f2e,getAll:f2e,has:f2e,set:f2e,[Symbol.toStringTag]:{value:"FormData",configurable:!0}});function str(e,t,r){if(typeof t!="string"){if(S0o(t)||(t=t instanceof Blob?new Okn([t],"blob",{type:t.type}):new Wkn(t,"blob",{type:t.type})),r!==void 0){let s={type:t.type,lastModified:t.lastModified};t=t instanceof Qkn?new Okn([t],r,s):new Wkn(t,r,s)}}return{name:e,value:t}}Mkn.exports={FormData:mPe,makeEntry:str}});var Kkn=z((m6c,Ukn)=>{"use strict";var{isUSVString:Hkn,bufferToLowerCasedHeaderName:w0o}=rm(),{utf8DecodeBytes:T0o}=VW(),{HTTP_TOKEN_CODEPOINTS:N0o,isomorphicDecode:Ykn}=ML(),{isFileLike:R0o}=itr(),{makeEntry:D0o}=hPe(),ugt=xt("node:assert"),{File:x0o}=xt("node:buffer"),k0o=globalThis.File??x0o,G0o=Buffer.from('form-data; name="'),Xkn=Buffer.from("; filename"),F0o=Buffer.from("--"),Z0o=Buffer.from(`--\r +`);function L0o(e){for(let t=0;t70)return!1;for(let r=0;r=48&&s<=57||s>=65&&s<=90||s>=97&&s<=122||s===39||s===45||s===95))return!1}return!0}function W0o(e,t){ugt(t!=="failure"&&t.essence==="multipart/form-data");let r=t.parameters.get("boundary");if(r===void 0)return"failure";let s=Buffer.from(`--${r}`,"utf8"),a=[],o={position:0};for(;e[o.position]===13&&e[o.position+1]===10;)o.position+=2;let g=e.length;for(;e[g-1]===10&&e[g-2]===13;)g-=2;for(g!==e.length&&(e=e.subarray(0,g));;){if(e.subarray(o.position,o.position+s.length).equals(s))o.position+=s.length;else return"failure";if(o.position===e.length-2&&ggt(e,F0o,o)||o.position===e.length-4&&ggt(e,Z0o,o))return a;if(e[o.position]!==13||e[o.position+1]!==10)return"failure";o.position+=2;let p=P0o(e,o);if(p==="failure")return"failure";let{name:f,filename:m,contentType:y,encoding:B}=p;o.position+=2;let v;{let T=e.indexOf(s.subarray(2),o.position);if(T===-1)return"failure";v=e.subarray(o.position,T-4),o.position+=v.length,B==="base64"&&(v=Buffer.from(v.toString(),"base64"))}if(e[o.position]!==13||e[o.position+1]!==10)return"failure";o.position+=2;let k;m!==null?(y??="text/plain",L0o(y)||(y=""),k=new k0o([v],m,{type:y})):k=T0o(Buffer.from(v)),ugt(Hkn(f)),ugt(typeof k=="string"&&Hkn(k)||R0o(k)),a.push(D0o(f,k,m))}}function P0o(e,t){let r=null,s=null,a=null,o=null;for(;;){if(e[t.position]===13&&e[t.position+1]===10)return r===null?"failure":{name:r,filename:s,contentType:a,encoding:o};let g=I2e(p=>p!==10&&p!==13&&p!==58,e,t);if(g=otr(g,!0,!0,p=>p===9||p===32),!N0o.test(g.toString())||e[t.position]!==58)return"failure";switch(t.position++,I2e(p=>p===32||p===9,e,t),w0o(g)){case"content-disposition":{if(r=s=null,!ggt(e,G0o,t)||(t.position+=17,r=Jkn(e,t),r===null))return"failure";if(ggt(e,Xkn,t)){let p=t.position+Xkn.length;if(e[p]===42&&(t.position+=1,p+=1),e[p]!==61||e[p+1]!==34||(t.position+=12,s=Jkn(e,t),s===null))return"failure"}break}case"content-type":{let p=I2e(f=>f!==10&&f!==13,e,t);p=otr(p,!1,!0,f=>f===9||f===32),a=Ykn(p);break}case"content-transfer-encoding":{let p=I2e(f=>f!==10&&f!==13,e,t);p=otr(p,!1,!0,f=>f===9||f===32),o=Ykn(p);break}default:I2e(p=>p!==10&&p!==13,e,t)}if(e[t.position]!==13&&e[t.position+1]!==10)return"failure";t.position+=2}}function Jkn(e,t){ugt(e[t.position-1]===34);let r=I2e(s=>s!==10&&s!==13&&s!==34,e,t);return e[t.position]!==34?null:(t.position++,r=new TextDecoder().decode(r).replace(/%0A/ig,` +`).replace(/%0D/ig,"\r").replace(/%22/g,'"'),r)}function I2e(e,t,r){let s=r.position;for(;s0&&s(e[o]);)o--;return a===0&&o===e.length-1?e:e.subarray(a,o+1)}function ggt(e,t,r){if(e.length{"use strict";var _Pe=rm(),{ReadableStreamFrom:O0o,isBlobLike:jkn,isReadableStreamLike:Q0o,readableStreamClose:M0o,createDeferredPromise:H0o,fullyReadBody:Y0o,extractMimeType:X0o,utf8DecodeBytes:$kn}=VW(),{FormData:zkn}=hPe(),{kState:m2e}=Iie(),{webidl:J0o}=WD(),{Blob:U0o}=xt("node:buffer"),atr=xt("node:assert"),{isErrored:eGn,isDisturbed:K0o}=xt("node:stream"),{isArrayBuffer:j0o}=xt("node:util/types"),{serializeAMimeType:z0o}=ML(),{multipartFormDataParser:q0o}=Kkn(),Agt=new TextEncoder;function $0o(){}var ctr=globalThis.FinalizationRegistry&&process.version.indexOf("v18")!==0,ltr;ctr&&(ltr=new FinalizationRegistry(e=>{let t=e.deref();t&&!t.locked&&!K0o(t)&&!eGn(t)&&t.cancel("Response object has been garbage collected").catch($0o)}));function tGn(e,t=!1){let r=null;e instanceof ReadableStream?r=e:jkn(e)?r=e.stream():r=new ReadableStream({async pull(f){let m=typeof a=="string"?Agt.encode(a):a;m.byteLength&&f.enqueue(m),queueMicrotask(()=>M0o(f))},start(){},type:"bytes"}),atr(Q0o(r));let s=null,a=null,o=null,g=null;if(typeof e=="string")a=e,g="text/plain;charset=UTF-8";else if(e instanceof URLSearchParams)a=e.toString(),g="application/x-www-form-urlencoded;charset=UTF-8";else if(j0o(e))a=new Uint8Array(e.slice());else if(ArrayBuffer.isView(e))a=new Uint8Array(e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength));else if(_Pe.isFormDataLike(e)){let f=`----formdata-undici-0${`${Math.floor(Math.random()*1e11)}`.padStart(11,"0")}`,m=`--${f}\r Content-Disposition: form-data`;let y=X=>X.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),B=X=>X.replace(/\r?\n|\r/g,`\r -`),v=[],G=new Uint8Array([13,10]);o=0;let T=!1;for(let[X,U]of e)if(typeof U=="string"){let le=ugt.encode(m+`; name="${y(B(X))}"\r +`),v=[],k=new Uint8Array([13,10]);o=0;let T=!1;for(let[X,U]of e)if(typeof U=="string"){let le=Agt.encode(m+`; name="${y(B(X))}"\r \r ${B(U)}\r -`);v.push(le),o+=le.byteLength}else{let le=ugt.encode(`${m}; name="${y(B(X))}"`+(U.name?`; filename="${y(U.name)}"`:"")+`\r +`);v.push(le),o+=le.byteLength}else{let le=Agt.encode(`${m}; name="${y(B(X))}"`+(U.name?`; filename="${y(U.name)}"`:"")+`\r Content-Type: ${U.type||"application/octet-stream"}\r \r -`);v.push(le,U,G),typeof U.size=="number"?o+=le.byteLength+U.size+G.byteLength:T=!0}let O=ugt.encode(`--${f}--`);v.push(O),o+=O.byteLength,T&&(o=null),a=e,s=async function*(){for(let X of v)X.stream?yield*X.stream():yield X},g=`multipart/form-data; boundary=${f}`}else if(Okn(e))a=e,o=e.size,e.type&&(g=e.type);else if(typeof e[Symbol.asyncIterator]=="function"){if(t)throw new TypeError("keepalive");if(CPe.isDisturbed(e)||e.locked)throw new TypeError("Response body object should not be disturbed or locked");r=e instanceof ReadableStream?e:T0o(e)}if((typeof a=="string"||CPe.isBuffer(a))&&(o=Buffer.byteLength(a)),s!=null){let f;r=new ReadableStream({async start(){f=s(e)[Symbol.asyncIterator]()},async pull(m){let{value:y,done:B}=await f.next();if(B)queueMicrotask(()=>{m.close(),m.byobRequest?.respond(0)});else if(!Hkn(r)){let v=new Uint8Array(y);v.byteLength&&m.enqueue(v)}return m.desiredSize>0},async cancel(m){await f.return()},type:"bytes"})}return[{stream:r,source:a,length:o},g]}function O0o(e,t=!1){return e instanceof ReadableStream&&(itr(!CPe.isDisturbed(e),"The body has already been consumed."),itr(!e.locked,"The stream is locked.")),Xkn(e,t)}function M0o(e,t){let[r,s]=t.stream.tee();return str&&otr.register(e,new WeakRef(r)),t.stream=r,{stream:s,length:t.length,source:t.source}}function Q0o(e){if(e.aborted)throw new DOMException("The operation was aborted.","AbortError")}function Y0o(e){return{blob(){return f2e(this,r=>{let s=Qkn(this);return s===null?s="":s&&(s=V0o(s)),new F0o([r],{type:s})},e)},arrayBuffer(){return f2e(this,r=>new Uint8Array(r).buffer,e)},text(){return f2e(this,Ykn,e)},json(){return f2e(this,X0o,e)},formData(){return f2e(this,r=>{let s=Qkn(this);if(s!==null)switch(s.essence){case"multipart/form-data":{let a=W0o(r,s);if(a==="failure")throw new TypeError("Failed to parse body as FormData.");let o=new Mkn;return o[I2e]=a,o}case"application/x-www-form-urlencoded":{let a=new URLSearchParams(r.toString()),o=new Mkn;for(let[g,p]of a)o.append(g,p);return o}}throw new TypeError('Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".')},e)},bytes(){return f2e(this,r=>new Uint8Array(r),e)}}}function H0o(e){Object.assign(e.prototype,Y0o(e))}async function f2e(e,t,r){if(G0o.brandCheck(e,r),Jkn(e))throw new TypeError("Body is unusable: Body has already been read");Q0o(e[I2e]);let s=D0o(),a=g=>s.reject(g),o=g=>{try{s.resolve(t(g))}catch(p){a(p)}};return e[I2e].body==null?(o(Buffer.allocUnsafe(0)),s.promise):(await x0o(e[I2e].body,o,a),s.promise)}function Jkn(e){let t=e[I2e].body;return t!=null&&(t.stream.locked||CPe.isDisturbed(t.stream))}function X0o(e){return JSON.parse(Ykn(e))}function Qkn(e){let t=e[I2e].headersList,r=k0o(t);return r==="failure"?null:r}Ukn.exports={extractBody:Xkn,safelyExtractBody:O0o,cloneBody:M0o,mixinBody:H0o,streamRegistry:otr,hasFinalizationRegistry:str,bodyUnusable:Jkn}});var sGn=z((r6c,iGn)=>{"use strict";var af=Dt("node:assert"),AI=tm(),{channels:Kkn}=i2e(),atr=Oer(),{RequestContentLengthMismatchError:Rde,ResponseContentLengthMismatchError:J0o,RequestAbortedError:tGn,HeadersTimeoutError:U0o,HeadersOverflowError:K0o,SocketError:Igt,InformationalError:C2e,BodyTimeoutError:j0o,HTTPParserError:z0o,ResponseExceededMaxSizeError:q0o}=B0(),{kUrl:rGn,kReset:QL,kClient:gtr,kParser:$B,kBlocking:yPe,kRunning:vk,kPending:$0o,kSize:jkn,kWriting:Iie,kQueue:MH,kNoRef:hPe,kKeepAliveDefaultTimeout:eyo,kHostHeader:tyo,kPendingIdx:ryo,kRunningIdx:zO,kError:qO,kPipelining:pgt,kSocket:m2e,kKeepAliveTimeoutValue:Cgt,kMaxHeadersSize:ctr,kKeepAliveMaxTimeout:nyo,kKeepAliveTimeoutThreshold:iyo,kHeadersTimeout:syo,kBodyTimeout:oyo,kStrictContentLength:Atr,kMaxRequests:zkn,kCounter:ayo,kMaxResponseSize:cyo,kOnError:lyo,kResume:fie,kHTTPContext:nGn}=j1(),uU=Jxn(),uyo=Buffer.alloc(0),ggt=Buffer[Symbol.species],Agt=AI.addListener,gyo=AI.removeAllListeners,ltr;async function Ayo(){let e=process.env.JEST_WORKER_ID?Yer():void 0,t;try{t=await WebAssembly.compile(jxn())}catch{t=await WebAssembly.compile(e||Yer())}return await WebAssembly.instantiate(t,{env:{wasm_on_url:(r,s,a)=>0,wasm_on_status:(r,s,a)=>{af(FT.ptr===r);let o=s-AU+gU.byteOffset;return FT.onStatus(new ggt(gU.buffer,o,a))||0},wasm_on_message_begin:r=>(af(FT.ptr===r),FT.onMessageBegin()||0),wasm_on_header_field:(r,s,a)=>{af(FT.ptr===r);let o=s-AU+gU.byteOffset;return FT.onHeaderField(new ggt(gU.buffer,o,a))||0},wasm_on_header_value:(r,s,a)=>{af(FT.ptr===r);let o=s-AU+gU.byteOffset;return FT.onHeaderValue(new ggt(gU.buffer,o,a))||0},wasm_on_headers_complete:(r,s,a,o)=>(af(FT.ptr===r),FT.onHeadersComplete(s,!!a,!!o)||0),wasm_on_body:(r,s,a)=>{af(FT.ptr===r);let o=s-AU+gU.byteOffset;return FT.onBody(new ggt(gU.buffer,o,a))||0},wasm_on_message_complete:r=>(af(FT.ptr===r),FT.onMessageComplete()||0)}})}var utr=null,dtr=Ayo();dtr.catch();var FT=null,gU=null,dgt=0,AU=null,dyo=0,_Pe=1,h2e=2|_Pe,fgt=4|_Pe,ftr=8|dyo,Itr=class{constructor(t,r,{exports:s}){af(Number.isFinite(t[ctr])&&t[ctr]>0),this.llhttp=s,this.ptr=this.llhttp.llhttp_alloc(uU.TYPE.RESPONSE),this.client=t,this.socket=r,this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.statusCode=null,this.statusText="",this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=t[ctr],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=t[cyo]}setTimeout(t,r){t!==this.timeoutValue||r&_Pe^this.timeoutType&_Pe?(this.timeout&&(atr.clearTimeout(this.timeout),this.timeout=null),t&&(r&_Pe?this.timeout=atr.setFastTimeout(qkn,t,new WeakRef(this)):(this.timeout=setTimeout(qkn,t,new WeakRef(this)),this.timeout.unref())),this.timeoutValue=t):this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.timeoutType=r}resume(){this.socket.destroyed||!this.paused||(af(this.ptr!=null),af(FT==null),this.llhttp.llhttp_resume(this.ptr),af(this.timeoutType===fgt),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||uyo),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){let t=this.socket.read();if(t===null)break;this.execute(t)}}execute(t){af(this.ptr!=null),af(FT==null),af(!this.paused);let{socket:r,llhttp:s}=this;t.length>dgt&&(AU&&s.free(AU),dgt=Math.ceil(t.length/4096)*4096,AU=s.malloc(dgt)),new Uint8Array(s.memory.buffer,AU,dgt).set(t);try{let a;try{gU=t,FT=this,a=s.llhttp_execute(this.ptr,AU,t.length)}catch(g){throw g}finally{FT=null,gU=null}let o=s.llhttp_get_error_pos(this.ptr)-AU;if(a===uU.ERROR.PAUSED_UPGRADE)this.onUpgrade(t.slice(o));else if(a===uU.ERROR.PAUSED)this.paused=!0,r.unshift(t.slice(o));else if(a!==uU.ERROR.OK){let g=s.llhttp_get_error_reason(this.ptr),p="";if(g){let f=new Uint8Array(s.memory.buffer,g).indexOf(0);p="Response does not match the HTTP/1.1 protocol ("+Buffer.from(s.memory.buffer,g,f).toString()+")"}throw new z0o(p,uU.ERROR[a],t.slice(o))}}catch(a){AI.destroy(r,a)}}destroy(){af(this.ptr!=null),af(FT==null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,this.timeout&&atr.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(t){this.statusText=t.toString()}onMessageBegin(){let{socket:t,client:r}=this;if(t.destroyed)return-1;let s=r[MH][r[zO]];if(!s)return-1;s.onResponseStarted()}onHeaderField(t){let r=this.headers.length;r&1?this.headers[r-1]=Buffer.concat([this.headers[r-1],t]):this.headers.push(t),this.trackHeader(t.length)}onHeaderValue(t){let r=this.headers.length;(r&1)===1?(this.headers.push(t),r+=1):this.headers[r-1]=Buffer.concat([this.headers[r-1],t]);let s=this.headers[r-2];if(s.length===10){let a=AI.bufferToLowerCasedHeaderName(s);a==="keep-alive"?this.keepAlive+=t.toString():a==="connection"&&(this.connection+=t.toString())}else s.length===14&&AI.bufferToLowerCasedHeaderName(s)==="content-length"&&(this.contentLength+=t.toString());this.trackHeader(t.length)}trackHeader(t){this.headersSize+=t,this.headersSize>=this.headersMaxSize&&AI.destroy(this.socket,new K0o)}onUpgrade(t){let{upgrade:r,client:s,socket:a,headers:o,statusCode:g}=this;af(r),af(s[m2e]===a),af(!a.destroyed),af(!this.paused),af((o.length&1)===0);let p=s[MH][s[zO]];af(p),af(p.upgrade||p.method==="CONNECT"),this.statusCode=null,this.statusText="",this.shouldKeepAlive=null,this.headers=[],this.headersSize=0,a.unshift(t),a[$B].destroy(),a[$B]=null,a[gtr]=null,a[qO]=null,gyo(a),s[m2e]=null,s[nGn]=null,s[MH][s[zO]++]=null,s.emit("disconnect",s[rGn],[s],new C2e("upgrade"));try{p.onUpgrade(g,o,a)}catch(f){AI.destroy(a,f)}s[fie]()}onHeadersComplete(t,r,s){let{client:a,socket:o,headers:g,statusText:p}=this;if(o.destroyed)return-1;let f=a[MH][a[zO]];if(!f)return-1;if(af(!this.upgrade),af(this.statusCode<200),t===100)return AI.destroy(o,new Igt("bad response",AI.getSocketInfo(o))),-1;if(r&&!f.upgrade)return AI.destroy(o,new Igt("bad upgrade",AI.getSocketInfo(o))),-1;if(af(this.timeoutType===h2e),this.statusCode=t,this.shouldKeepAlive=s||f.method==="HEAD"&&!o[QL]&&this.connection.toLowerCase()==="keep-alive",this.statusCode>=200){let y=f.bodyTimeout!=null?f.bodyTimeout:a[oyo];this.setTimeout(y,fgt)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if(f.method==="CONNECT")return af(a[vk]===1),this.upgrade=!0,2;if(r)return af(a[vk]===1),this.upgrade=!0,2;if(af((this.headers.length&1)===0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&a[pgt]){let y=this.keepAlive?AI.parseKeepAliveTimeout(this.keepAlive):null;if(y!=null){let B=Math.min(y-a[iyo],a[nyo]);B<=0?o[QL]=!0:a[Cgt]=B}else a[Cgt]=a[eyo]}else o[QL]=!0;let m=f.onHeaders(t,g,this.resume,p)===!1;return f.aborted?-1:f.method==="HEAD"||t<200?1:(o[yPe]&&(o[yPe]=!1,a[fie]()),m?uU.ERROR.PAUSED:0)}onBody(t){let{client:r,socket:s,statusCode:a,maxResponseSize:o}=this;if(s.destroyed)return-1;let g=r[MH][r[zO]];if(af(g),af(this.timeoutType===fgt),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),af(a>=200),o>-1&&this.bytesRead+t.length>o)return AI.destroy(s,new q0o),-1;if(this.bytesRead+=t.length,g.onData(t)===!1)return uU.ERROR.PAUSED}onMessageComplete(){let{client:t,socket:r,statusCode:s,upgrade:a,headers:o,contentLength:g,bytesRead:p,shouldKeepAlive:f}=this;if(r.destroyed&&(!s||f))return-1;if(a)return;af(s>=100),af((this.headers.length&1)===0);let m=t[MH][t[zO]];if(af(m),this.statusCode=null,this.statusText="",this.bytesRead=0,this.contentLength="",this.keepAlive="",this.connection="",this.headers=[],this.headersSize=0,!(s<200)){if(m.method!=="HEAD"&&g&&p!==parseInt(g,10))return AI.destroy(r,new J0o),-1;if(m.onComplete(o),t[MH][t[zO]++]=null,r[Iie])return af(t[vk]===0),AI.destroy(r,new C2e("reset")),uU.ERROR.PAUSED;if(f){if(r[QL]&&t[vk]===0)return AI.destroy(r,new C2e("reset")),uU.ERROR.PAUSED;t[pgt]==null||t[pgt]===1?setImmediate(()=>t[fie]()):t[fie]()}else return AI.destroy(r,new C2e("reset")),uU.ERROR.PAUSED}}};function qkn(e){let{socket:t,timeoutType:r,client:s,paused:a}=e.deref();r===h2e?(!t[Iie]||t.writableNeedDrain||s[vk]>1)&&(af(!a,"cannot be paused while waiting for headers"),AI.destroy(t,new U0o)):r===fgt?a||AI.destroy(t,new j0o):r===ftr&&(af(s[vk]===0&&s[Cgt]),AI.destroy(t,new C2e("socket idle timeout")))}async function pyo(e,t){e[m2e]=t,utr||(utr=await dtr,dtr=null),t[hPe]=!1,t[Iie]=!1,t[QL]=!1,t[yPe]=!1,t[$B]=new Itr(e,t,utr),Agt(t,"error",function(s){af(s.code!=="ERR_TLS_CERT_ALTNAME_INVALID");let a=this[$B];if(s.code==="ECONNRESET"&&a.statusCode&&!a.shouldKeepAlive){a.onMessageComplete();return}this[qO]=s,this[gtr][lyo](s)}),Agt(t,"readable",function(){let s=this[$B];s&&s.readMore()}),Agt(t,"end",function(){let s=this[$B];if(s.statusCode&&!s.shouldKeepAlive){s.onMessageComplete();return}AI.destroy(this,new Igt("other side closed",AI.getSocketInfo(this)))}),Agt(t,"close",function(){let s=this[gtr],a=this[$B];a&&(!this[qO]&&a.statusCode&&!a.shouldKeepAlive&&a.onMessageComplete(),this[$B].destroy(),this[$B]=null);let o=this[qO]||new Igt("closed",AI.getSocketInfo(this));if(s[m2e]=null,s[nGn]=null,s.destroyed){af(s[$0o]===0);let g=s[MH].splice(s[zO]);for(let p=0;p0&&o.code!=="UND_ERR_INFO"){let g=s[MH][s[zO]];s[MH][s[zO]++]=null,AI.errorRequest(s,g,o)}s[ryo]=s[zO],af(s[vk]===0),s.emit("disconnect",s[rGn],[s],o),s[fie]()});let r=!1;return t.on("close",()=>{r=!0}),{version:"h1",defaultPipelining:1,write(...s){return Cyo(e,...s)},resume(){fyo(e)},destroy(s,a){r?queueMicrotask(a):t.destroy(s).on("close",a)},get destroyed(){return t.destroyed},busy(s){return!!(t[Iie]||t[QL]||t[yPe]||s&&(e[vk]>0&&!s.idempotent||e[vk]>0&&(s.upgrade||s.method==="CONNECT")||e[vk]>0&&AI.bodyLength(s.body)!==0&&(AI.isStream(s.body)||AI.isAsyncIterable(s.body)||AI.isFormDataLike(s.body))))}}}function fyo(e){let t=e[m2e];if(t&&!t.destroyed){if(e[jkn]===0?!t[hPe]&&t.unref&&(t.unref(),t[hPe]=!0):t[hPe]&&t.ref&&(t.ref(),t[hPe]=!1),e[jkn]===0)t[$B].timeoutType!==ftr&&t[$B].setTimeout(e[Cgt],ftr);else if(e[vk]>0&&t[$B].statusCode<200&&t[$B].timeoutType!==h2e){let r=e[MH][e[zO]],s=r.headersTimeout!=null?r.headersTimeout:e[syo];t[$B].setTimeout(s,h2e)}}}function Iyo(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function Cyo(e,t){let{method:r,path:s,host:a,upgrade:o,blocking:g,reset:p}=t,{body:f,headers:m,contentLength:y}=t,B=r==="PUT"||r==="POST"||r==="PATCH"||r==="QUERY"||r==="PROPFIND"||r==="PROPPATCH";if(AI.isFormDataLike(f)){ltr||(ltr=mPe().extractBody);let[X,U]=ltr(f);t.contentType==null&&m.push("content-type",U),f=X.stream,y=X.length}else AI.isBlobLike(f)&&t.contentType==null&&f.type&&m.push("content-type",f.type);f&&typeof f.read=="function"&&f.read(0);let v=AI.bodyLength(f);if(y=v??y,y===null&&(y=t.contentLength),y===0&&!B&&(y=null),Iyo(r)&&y>0&&t.contentLength!==null&&t.contentLength!==y){if(e[Atr])return AI.errorRequest(e,t,new Rde),!1;process.emitWarning(new Rde)}let G=e[m2e],T=X=>{t.aborted||t.completed||(AI.errorRequest(e,t,X||new tGn),AI.destroy(f),AI.destroy(G,new C2e("aborted")))};try{t.onConnect(T)}catch(X){AI.errorRequest(e,t,X)}if(t.aborted)return!1;r==="HEAD"&&(G[QL]=!0),(o||r==="CONNECT")&&(G[QL]=!0),p!=null&&(G[QL]=p),e[zkn]&&G[ayo]++>=e[zkn]&&(G[QL]=!0),g&&(G[yPe]=!0);let O=`${r} ${s} HTTP/1.1\r +`);v.push(le,U,k),typeof U.size=="number"?o+=le.byteLength+U.size+k.byteLength:T=!0}let O=Agt.encode(`--${f}--`);v.push(O),o+=O.byteLength,T&&(o=null),a=e,s=async function*(){for(let X of v)X.stream?yield*X.stream():yield X},g=`multipart/form-data; boundary=${f}`}else if(jkn(e))a=e,o=e.size,e.type&&(g=e.type);else if(typeof e[Symbol.asyncIterator]=="function"){if(t)throw new TypeError("keepalive");if(_Pe.isDisturbed(e)||e.locked)throw new TypeError("Response body object should not be disturbed or locked");r=e instanceof ReadableStream?e:O0o(e)}if((typeof a=="string"||_Pe.isBuffer(a))&&(o=Buffer.byteLength(a)),s!=null){let f;r=new ReadableStream({async start(){f=s(e)[Symbol.asyncIterator]()},async pull(m){let{value:y,done:B}=await f.next();if(B)queueMicrotask(()=>{m.close(),m.byobRequest?.respond(0)});else if(!eGn(r)){let v=new Uint8Array(y);v.byteLength&&m.enqueue(v)}return m.desiredSize>0},async cancel(m){await f.return()},type:"bytes"})}return[{stream:r,source:a,length:o},g]}function eyo(e,t=!1){return e instanceof ReadableStream&&(atr(!_Pe.isDisturbed(e),"The body has already been consumed."),atr(!e.locked,"The stream is locked.")),tGn(e,t)}function tyo(e,t){let[r,s]=t.stream.tee();return ctr&<r.register(e,new WeakRef(r)),t.stream=r,{stream:s,length:t.length,source:t.source}}function ryo(e){if(e.aborted)throw new DOMException("The operation was aborted.","AbortError")}function nyo(e){return{blob(){return C2e(this,r=>{let s=qkn(this);return s===null?s="":s&&(s=z0o(s)),new U0o([r],{type:s})},e)},arrayBuffer(){return C2e(this,r=>new Uint8Array(r).buffer,e)},text(){return C2e(this,$kn,e)},json(){return C2e(this,syo,e)},formData(){return C2e(this,r=>{let s=qkn(this);if(s!==null)switch(s.essence){case"multipart/form-data":{let a=q0o(r,s);if(a==="failure")throw new TypeError("Failed to parse body as FormData.");let o=new zkn;return o[m2e]=a,o}case"application/x-www-form-urlencoded":{let a=new URLSearchParams(r.toString()),o=new zkn;for(let[g,p]of a)o.append(g,p);return o}}throw new TypeError('Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".')},e)},bytes(){return C2e(this,r=>new Uint8Array(r),e)}}}function iyo(e){Object.assign(e.prototype,nyo(e))}async function C2e(e,t,r){if(J0o.brandCheck(e,r),rGn(e))throw new TypeError("Body is unusable: Body has already been read");ryo(e[m2e]);let s=H0o(),a=g=>s.reject(g),o=g=>{try{s.resolve(t(g))}catch(p){a(p)}};return e[m2e].body==null?(o(Buffer.allocUnsafe(0)),s.promise):(await Y0o(e[m2e].body,o,a),s.promise)}function rGn(e){let t=e[m2e].body;return t!=null&&(t.stream.locked||_Pe.isDisturbed(t.stream))}function syo(e){return JSON.parse($kn(e))}function qkn(e){let t=e[m2e].headersList,r=X0o(t);return r==="failure"?null:r}nGn.exports={extractBody:tGn,safelyExtractBody:eyo,cloneBody:tyo,mixinBody:iyo,streamRegistry:ltr,hasFinalizationRegistry:ctr,bodyUnusable:rGn}});var pGn=z((_6c,dGn)=>{"use strict";var cf=xt("node:assert"),dI=rm(),{channels:iGn}=o2e(),utr=Her(),{RequestContentLengthMismatchError:Wde,ResponseContentLengthMismatchError:oyo,RequestAbortedError:uGn,HeadersTimeoutError:ayo,HeadersOverflowError:cyo,SocketError:mgt,InformationalError:h2e,BodyTimeoutError:lyo,HTTPParserError:uyo,ResponseExceededMaxSizeError:gyo}=v0(),{kUrl:gGn,kReset:HL,kClient:ftr,kParser:tv,kBlocking:BPe,kRunning:Rk,kPending:Ayo,kSize:sGn,kWriting:mie,kQueue:HH,kNoRef:bPe,kKeepAliveDefaultTimeout:dyo,kHostHeader:pyo,kPendingIdx:fyo,kRunningIdx:eQ,kError:tQ,kPipelining:Igt,kSocket:_2e,kKeepAliveTimeoutValue:hgt,kMaxHeadersSize:gtr,kKeepAliveMaxTimeout:Iyo,kKeepAliveTimeoutThreshold:Cyo,kHeadersTimeout:myo,kBodyTimeout:hyo,kStrictContentLength:Itr,kMaxRequests:oGn,kCounter:_yo,kMaxResponseSize:yyo,kOnError:byo,kResume:Cie,kHTTPContext:AGn}=z1(),dU=rkn(),Eyo=Buffer.alloc(0),dgt=Buffer[Symbol.species],pgt=dI.addListener,Byo=dI.removeAllListeners,Atr;async function vyo(){let e=process.env.JEST_WORKER_ID?Jer():void 0,t;try{t=await WebAssembly.compile(skn())}catch{t=await WebAssembly.compile(e||Jer())}return await WebAssembly.instantiate(t,{env:{wasm_on_url:(r,s,a)=>0,wasm_on_status:(r,s,a)=>{cf(ZT.ptr===r);let o=s-fU+pU.byteOffset;return ZT.onStatus(new dgt(pU.buffer,o,a))||0},wasm_on_message_begin:r=>(cf(ZT.ptr===r),ZT.onMessageBegin()||0),wasm_on_header_field:(r,s,a)=>{cf(ZT.ptr===r);let o=s-fU+pU.byteOffset;return ZT.onHeaderField(new dgt(pU.buffer,o,a))||0},wasm_on_header_value:(r,s,a)=>{cf(ZT.ptr===r);let o=s-fU+pU.byteOffset;return ZT.onHeaderValue(new dgt(pU.buffer,o,a))||0},wasm_on_headers_complete:(r,s,a,o)=>(cf(ZT.ptr===r),ZT.onHeadersComplete(s,!!a,!!o)||0),wasm_on_body:(r,s,a)=>{cf(ZT.ptr===r);let o=s-fU+pU.byteOffset;return ZT.onBody(new dgt(pU.buffer,o,a))||0},wasm_on_message_complete:r=>(cf(ZT.ptr===r),ZT.onMessageComplete()||0)}})}var dtr=null,Ctr=vyo();Ctr.catch();var ZT=null,pU=null,fgt=0,fU=null,Syo=0,EPe=1,y2e=2|EPe,Cgt=4|EPe,mtr=8|Syo,htr=class{constructor(t,r,{exports:s}){cf(Number.isFinite(t[gtr])&&t[gtr]>0),this.llhttp=s,this.ptr=this.llhttp.llhttp_alloc(dU.TYPE.RESPONSE),this.client=t,this.socket=r,this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.statusCode=null,this.statusText="",this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=t[gtr],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=t[yyo]}setTimeout(t,r){t!==this.timeoutValue||r&EPe^this.timeoutType&EPe?(this.timeout&&(utr.clearTimeout(this.timeout),this.timeout=null),t&&(r&EPe?this.timeout=utr.setFastTimeout(aGn,t,new WeakRef(this)):(this.timeout=setTimeout(aGn,t,new WeakRef(this)),this.timeout.unref())),this.timeoutValue=t):this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.timeoutType=r}resume(){this.socket.destroyed||!this.paused||(cf(this.ptr!=null),cf(ZT==null),this.llhttp.llhttp_resume(this.ptr),cf(this.timeoutType===Cgt),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||Eyo),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){let t=this.socket.read();if(t===null)break;this.execute(t)}}execute(t){cf(this.ptr!=null),cf(ZT==null),cf(!this.paused);let{socket:r,llhttp:s}=this;t.length>fgt&&(fU&&s.free(fU),fgt=Math.ceil(t.length/4096)*4096,fU=s.malloc(fgt)),new Uint8Array(s.memory.buffer,fU,fgt).set(t);try{let a;try{pU=t,ZT=this,a=s.llhttp_execute(this.ptr,fU,t.length)}catch(g){throw g}finally{ZT=null,pU=null}let o=s.llhttp_get_error_pos(this.ptr)-fU;if(a===dU.ERROR.PAUSED_UPGRADE)this.onUpgrade(t.slice(o));else if(a===dU.ERROR.PAUSED)this.paused=!0,r.unshift(t.slice(o));else if(a!==dU.ERROR.OK){let g=s.llhttp_get_error_reason(this.ptr),p="";if(g){let f=new Uint8Array(s.memory.buffer,g).indexOf(0);p="Response does not match the HTTP/1.1 protocol ("+Buffer.from(s.memory.buffer,g,f).toString()+")"}throw new uyo(p,dU.ERROR[a],t.slice(o))}}catch(a){dI.destroy(r,a)}}destroy(){cf(this.ptr!=null),cf(ZT==null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,this.timeout&&utr.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(t){this.statusText=t.toString()}onMessageBegin(){let{socket:t,client:r}=this;if(t.destroyed)return-1;let s=r[HH][r[eQ]];if(!s)return-1;s.onResponseStarted()}onHeaderField(t){let r=this.headers.length;r&1?this.headers[r-1]=Buffer.concat([this.headers[r-1],t]):this.headers.push(t),this.trackHeader(t.length)}onHeaderValue(t){let r=this.headers.length;(r&1)===1?(this.headers.push(t),r+=1):this.headers[r-1]=Buffer.concat([this.headers[r-1],t]);let s=this.headers[r-2];if(s.length===10){let a=dI.bufferToLowerCasedHeaderName(s);a==="keep-alive"?this.keepAlive+=t.toString():a==="connection"&&(this.connection+=t.toString())}else s.length===14&&dI.bufferToLowerCasedHeaderName(s)==="content-length"&&(this.contentLength+=t.toString());this.trackHeader(t.length)}trackHeader(t){this.headersSize+=t,this.headersSize>=this.headersMaxSize&&dI.destroy(this.socket,new cyo)}onUpgrade(t){let{upgrade:r,client:s,socket:a,headers:o,statusCode:g}=this;cf(r),cf(s[_2e]===a),cf(!a.destroyed),cf(!this.paused),cf((o.length&1)===0);let p=s[HH][s[eQ]];cf(p),cf(p.upgrade||p.method==="CONNECT"),this.statusCode=null,this.statusText="",this.shouldKeepAlive=null,this.headers=[],this.headersSize=0,a.unshift(t),a[tv].destroy(),a[tv]=null,a[ftr]=null,a[tQ]=null,Byo(a),s[_2e]=null,s[AGn]=null,s[HH][s[eQ]++]=null,s.emit("disconnect",s[gGn],[s],new h2e("upgrade"));try{p.onUpgrade(g,o,a)}catch(f){dI.destroy(a,f)}s[Cie]()}onHeadersComplete(t,r,s){let{client:a,socket:o,headers:g,statusText:p}=this;if(o.destroyed)return-1;let f=a[HH][a[eQ]];if(!f)return-1;if(cf(!this.upgrade),cf(this.statusCode<200),t===100)return dI.destroy(o,new mgt("bad response",dI.getSocketInfo(o))),-1;if(r&&!f.upgrade)return dI.destroy(o,new mgt("bad upgrade",dI.getSocketInfo(o))),-1;if(cf(this.timeoutType===y2e),this.statusCode=t,this.shouldKeepAlive=s||f.method==="HEAD"&&!o[HL]&&this.connection.toLowerCase()==="keep-alive",this.statusCode>=200){let y=f.bodyTimeout!=null?f.bodyTimeout:a[hyo];this.setTimeout(y,Cgt)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if(f.method==="CONNECT")return cf(a[Rk]===1),this.upgrade=!0,2;if(r)return cf(a[Rk]===1),this.upgrade=!0,2;if(cf((this.headers.length&1)===0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&a[Igt]){let y=this.keepAlive?dI.parseKeepAliveTimeout(this.keepAlive):null;if(y!=null){let B=Math.min(y-a[Cyo],a[Iyo]);B<=0?o[HL]=!0:a[hgt]=B}else a[hgt]=a[dyo]}else o[HL]=!0;let m=f.onHeaders(t,g,this.resume,p)===!1;return f.aborted?-1:f.method==="HEAD"||t<200?1:(o[BPe]&&(o[BPe]=!1,a[Cie]()),m?dU.ERROR.PAUSED:0)}onBody(t){let{client:r,socket:s,statusCode:a,maxResponseSize:o}=this;if(s.destroyed)return-1;let g=r[HH][r[eQ]];if(cf(g),cf(this.timeoutType===Cgt),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),cf(a>=200),o>-1&&this.bytesRead+t.length>o)return dI.destroy(s,new gyo),-1;if(this.bytesRead+=t.length,g.onData(t)===!1)return dU.ERROR.PAUSED}onMessageComplete(){let{client:t,socket:r,statusCode:s,upgrade:a,headers:o,contentLength:g,bytesRead:p,shouldKeepAlive:f}=this;if(r.destroyed&&(!s||f))return-1;if(a)return;cf(s>=100),cf((this.headers.length&1)===0);let m=t[HH][t[eQ]];if(cf(m),this.statusCode=null,this.statusText="",this.bytesRead=0,this.contentLength="",this.keepAlive="",this.connection="",this.headers=[],this.headersSize=0,!(s<200)){if(m.method!=="HEAD"&&g&&p!==parseInt(g,10))return dI.destroy(r,new oyo),-1;if(m.onComplete(o),t[HH][t[eQ]++]=null,r[mie])return cf(t[Rk]===0),dI.destroy(r,new h2e("reset")),dU.ERROR.PAUSED;if(f){if(r[HL]&&t[Rk]===0)return dI.destroy(r,new h2e("reset")),dU.ERROR.PAUSED;t[Igt]==null||t[Igt]===1?setImmediate(()=>t[Cie]()):t[Cie]()}else return dI.destroy(r,new h2e("reset")),dU.ERROR.PAUSED}}};function aGn(e){let{socket:t,timeoutType:r,client:s,paused:a}=e.deref();r===y2e?(!t[mie]||t.writableNeedDrain||s[Rk]>1)&&(cf(!a,"cannot be paused while waiting for headers"),dI.destroy(t,new ayo)):r===Cgt?a||dI.destroy(t,new lyo):r===mtr&&(cf(s[Rk]===0&&s[hgt]),dI.destroy(t,new h2e("socket idle timeout")))}async function wyo(e,t){e[_2e]=t,dtr||(dtr=await Ctr,Ctr=null),t[bPe]=!1,t[mie]=!1,t[HL]=!1,t[BPe]=!1,t[tv]=new htr(e,t,dtr),pgt(t,"error",function(s){cf(s.code!=="ERR_TLS_CERT_ALTNAME_INVALID");let a=this[tv];if(s.code==="ECONNRESET"&&a.statusCode&&!a.shouldKeepAlive){a.onMessageComplete();return}this[tQ]=s,this[ftr][byo](s)}),pgt(t,"readable",function(){let s=this[tv];s&&s.readMore()}),pgt(t,"end",function(){let s=this[tv];if(s.statusCode&&!s.shouldKeepAlive){s.onMessageComplete();return}dI.destroy(this,new mgt("other side closed",dI.getSocketInfo(this)))}),pgt(t,"close",function(){let s=this[ftr],a=this[tv];a&&(!this[tQ]&&a.statusCode&&!a.shouldKeepAlive&&a.onMessageComplete(),this[tv].destroy(),this[tv]=null);let o=this[tQ]||new mgt("closed",dI.getSocketInfo(this));if(s[_2e]=null,s[AGn]=null,s.destroyed){cf(s[Ayo]===0);let g=s[HH].splice(s[eQ]);for(let p=0;p0&&o.code!=="UND_ERR_INFO"){let g=s[HH][s[eQ]];s[HH][s[eQ]++]=null,dI.errorRequest(s,g,o)}s[fyo]=s[eQ],cf(s[Rk]===0),s.emit("disconnect",s[gGn],[s],o),s[Cie]()});let r=!1;return t.on("close",()=>{r=!0}),{version:"h1",defaultPipelining:1,write(...s){return Ryo(e,...s)},resume(){Tyo(e)},destroy(s,a){r?queueMicrotask(a):t.destroy(s).on("close",a)},get destroyed(){return t.destroyed},busy(s){return!!(t[mie]||t[HL]||t[BPe]||s&&(e[Rk]>0&&!s.idempotent||e[Rk]>0&&(s.upgrade||s.method==="CONNECT")||e[Rk]>0&&dI.bodyLength(s.body)!==0&&(dI.isStream(s.body)||dI.isAsyncIterable(s.body)||dI.isFormDataLike(s.body))))}}}function Tyo(e){let t=e[_2e];if(t&&!t.destroyed){if(e[sGn]===0?!t[bPe]&&t.unref&&(t.unref(),t[bPe]=!0):t[bPe]&&t.ref&&(t.ref(),t[bPe]=!1),e[sGn]===0)t[tv].timeoutType!==mtr&&t[tv].setTimeout(e[hgt],mtr);else if(e[Rk]>0&&t[tv].statusCode<200&&t[tv].timeoutType!==y2e){let r=e[HH][e[eQ]],s=r.headersTimeout!=null?r.headersTimeout:e[myo];t[tv].setTimeout(s,y2e)}}}function Nyo(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function Ryo(e,t){let{method:r,path:s,host:a,upgrade:o,blocking:g,reset:p}=t,{body:f,headers:m,contentLength:y}=t,B=r==="PUT"||r==="POST"||r==="PATCH"||r==="QUERY"||r==="PROPFIND"||r==="PROPPATCH";if(dI.isFormDataLike(f)){Atr||(Atr=yPe().extractBody);let[X,U]=Atr(f);t.contentType==null&&m.push("content-type",U),f=X.stream,y=X.length}else dI.isBlobLike(f)&&t.contentType==null&&f.type&&m.push("content-type",f.type);f&&typeof f.read=="function"&&f.read(0);let v=dI.bodyLength(f);if(y=v??y,y===null&&(y=t.contentLength),y===0&&!B&&(y=null),Nyo(r)&&y>0&&t.contentLength!==null&&t.contentLength!==y){if(e[Itr])return dI.errorRequest(e,t,new Wde),!1;process.emitWarning(new Wde)}let k=e[_2e],T=X=>{t.aborted||t.completed||(dI.errorRequest(e,t,X||new uGn),dI.destroy(f),dI.destroy(k,new h2e("aborted")))};try{t.onConnect(T)}catch(X){dI.errorRequest(e,t,X)}if(t.aborted)return!1;r==="HEAD"&&(k[HL]=!0),(o||r==="CONNECT")&&(k[HL]=!0),p!=null&&(k[HL]=p),e[oGn]&&k[_yo]++>=e[oGn]&&(k[HL]=!0),g&&(k[BPe]=!0);let O=`${r} ${s} HTTP/1.1\r `;if(typeof a=="string"?O+=`host: ${a}\r -`:O+=e[tyo],o?O+=`connection: upgrade\r +`:O+=e[pyo],o?O+=`connection: upgrade\r upgrade: ${o}\r -`:e[pgt]&&!G[QL]?O+=`connection: keep-alive\r +`:e[Igt]&&!k[HL]?O+=`connection: keep-alive\r `:O+=`connection: close\r `,Array.isArray(m))for(let X=0;X{t.removeListener("error",G)}),!f){let T=new tGn;queueMicrotask(()=>G(T))}},G=function(T){if(!f){if(f=!0,af(a.destroyed||a[Iie]&&r[vk]<=1),a.off("drain",B).off("error",G),t.removeListener("data",y).removeListener("end",G).removeListener("close",v),!T)try{m.end()}catch(O){T=O}m.destroy(T),T&&(T.code!=="UND_ERR_INFO"||T.message!=="reset")?AI.destroy(t,T):AI.destroy(t)}};t.on("data",y).on("end",G).on("error",G).on("close",v),t.resume&&t.resume(),a.on("drain",B).on("error",G),t.errorEmitted??t.errored?setImmediate(()=>G(t.errored)):(t.endEmitted??t.readableEnded)&&setImmediate(()=>G(null)),(t.closeEmitted??t.closed)&&setImmediate(v)}function $kn(e,t,r,s,a,o,g,p){try{t?AI.isBuffer(t)&&(af(o===t.byteLength,"buffer body must have content length"),a.cork(),a.write(`${g}content-length: ${o}\r +`}return iGn.sendHeaders.hasSubscribers&&iGn.sendHeaders.publish({request:t,headers:O,socket:k}),!f||v===0?cGn(T,null,e,t,k,y,O,B):dI.isBuffer(f)?cGn(T,f,e,t,k,y,O,B):dI.isBlobLike(f)?typeof f.stream=="function"?lGn(T,f.stream(),e,t,k,y,O,B):xyo(T,f,e,t,k,y,O,B):dI.isStream(f)?Dyo(T,f,e,t,k,y,O,B):dI.isIterable(f)?lGn(T,f,e,t,k,y,O,B):cf(!1),!0}function Dyo(e,t,r,s,a,o,g,p){cf(o!==0||r[Rk]===0,"stream body cannot be pipelined");let f=!1,m=new _gt({abort:e,socket:a,request:s,contentLength:o,client:r,expectsPayload:p,header:g}),y=function(T){if(!f)try{!m.write(T)&&this.pause&&this.pause()}catch(O){dI.destroy(this,O)}},B=function(){f||t.resume&&t.resume()},v=function(){if(queueMicrotask(()=>{t.removeListener("error",k)}),!f){let T=new uGn;queueMicrotask(()=>k(T))}},k=function(T){if(!f){if(f=!0,cf(a.destroyed||a[mie]&&r[Rk]<=1),a.off("drain",B).off("error",k),t.removeListener("data",y).removeListener("end",k).removeListener("close",v),!T)try{m.end()}catch(O){T=O}m.destroy(T),T&&(T.code!=="UND_ERR_INFO"||T.message!=="reset")?dI.destroy(t,T):dI.destroy(t)}};t.on("data",y).on("end",k).on("error",k).on("close",v),t.resume&&t.resume(),a.on("drain",B).on("error",k),t.errorEmitted??t.errored?setImmediate(()=>k(t.errored)):(t.endEmitted??t.readableEnded)&&setImmediate(()=>k(null)),(t.closeEmitted??t.closed)&&setImmediate(v)}function cGn(e,t,r,s,a,o,g,p){try{t?dI.isBuffer(t)&&(cf(o===t.byteLength,"buffer body must have content length"),a.cork(),a.write(`${g}content-length: ${o}\r \r -`,"latin1"),a.write(t),a.uncork(),s.onBodySent(t),!p&&s.reset!==!1&&(a[QL]=!0)):o===0?a.write(`${g}content-length: 0\r +`,"latin1"),a.write(t),a.uncork(),s.onBodySent(t),!p&&s.reset!==!1&&(a[HL]=!0)):o===0?a.write(`${g}content-length: 0\r \r -`,"latin1"):(af(o===null,"no body must not have content length"),a.write(`${g}\r -`,"latin1")),s.onRequestSent(),r[fie]()}catch(f){e(f)}}async function hyo(e,t,r,s,a,o,g,p){af(o===t.size,"blob body must have content length");try{if(o!=null&&o!==t.size)throw new Rde;let f=Buffer.from(await t.arrayBuffer());a.cork(),a.write(`${g}content-length: ${o}\r +`,"latin1"):(cf(o===null,"no body must not have content length"),a.write(`${g}\r +`,"latin1")),s.onRequestSent(),r[Cie]()}catch(f){e(f)}}async function xyo(e,t,r,s,a,o,g,p){cf(o===t.size,"blob body must have content length");try{if(o!=null&&o!==t.size)throw new Wde;let f=Buffer.from(await t.arrayBuffer());a.cork(),a.write(`${g}content-length: ${o}\r \r -`,"latin1"),a.write(f),a.uncork(),s.onBodySent(f),s.onRequestSent(),!p&&s.reset!==!1&&(a[QL]=!0),r[fie]()}catch(f){e(f)}}async function eGn(e,t,r,s,a,o,g,p){af(o!==0||r[vk]===0,"iterator body cannot be pipelined");let f=null;function m(){if(f){let v=f;f=null,v()}}let y=()=>new Promise((v,G)=>{af(f===null),a[qO]?G(a[qO]):f=v});a.on("close",m).on("drain",m);let B=new mgt({abort:e,socket:a,request:s,contentLength:o,client:r,expectsPayload:p,header:g});try{for await(let v of t){if(a[qO])throw a[qO];B.write(v)||await y()}B.end()}catch(v){B.destroy(v)}finally{a.off("close",m).off("drain",m)}}var mgt=class{constructor({abort:t,socket:r,request:s,contentLength:a,client:o,expectsPayload:g,header:p}){this.socket=r,this.request=s,this.contentLength=a,this.client=o,this.bytesWritten=0,this.expectsPayload=g,this.header=p,this.abort=t,r[Iie]=!0}write(t){let{socket:r,request:s,contentLength:a,client:o,bytesWritten:g,expectsPayload:p,header:f}=this;if(r[qO])throw r[qO];if(r.destroyed)return!1;let m=Buffer.byteLength(t);if(!m)return!0;if(a!==null&&g+m>a){if(o[Atr])throw new Rde;process.emitWarning(new Rde)}r.cork(),g===0&&(!p&&s.reset!==!1&&(r[QL]=!0),a===null?r.write(`${f}transfer-encoding: chunked\r +`,"latin1"),a.write(f),a.uncork(),s.onBodySent(f),s.onRequestSent(),!p&&s.reset!==!1&&(a[HL]=!0),r[Cie]()}catch(f){e(f)}}async function lGn(e,t,r,s,a,o,g,p){cf(o!==0||r[Rk]===0,"iterator body cannot be pipelined");let f=null;function m(){if(f){let v=f;f=null,v()}}let y=()=>new Promise((v,k)=>{cf(f===null),a[tQ]?k(a[tQ]):f=v});a.on("close",m).on("drain",m);let B=new _gt({abort:e,socket:a,request:s,contentLength:o,client:r,expectsPayload:p,header:g});try{for await(let v of t){if(a[tQ])throw a[tQ];B.write(v)||await y()}B.end()}catch(v){B.destroy(v)}finally{a.off("close",m).off("drain",m)}}var _gt=class{constructor({abort:t,socket:r,request:s,contentLength:a,client:o,expectsPayload:g,header:p}){this.socket=r,this.request=s,this.contentLength=a,this.client=o,this.bytesWritten=0,this.expectsPayload=g,this.header=p,this.abort=t,r[mie]=!0}write(t){let{socket:r,request:s,contentLength:a,client:o,bytesWritten:g,expectsPayload:p,header:f}=this;if(r[tQ])throw r[tQ];if(r.destroyed)return!1;let m=Buffer.byteLength(t);if(!m)return!0;if(a!==null&&g+m>a){if(o[Itr])throw new Wde;process.emitWarning(new Wde)}r.cork(),g===0&&(!p&&s.reset!==!1&&(r[HL]=!0),a===null?r.write(`${f}transfer-encoding: chunked\r `,"latin1"):r.write(`${f}content-length: ${a}\r \r `,"latin1")),a===null&&r.write(`\r ${m.toString(16)}\r -`,"latin1"),this.bytesWritten+=m;let y=r.write(t);return r.uncork(),s.onBodySent(t),y||r[$B].timeout&&r[$B].timeoutType===h2e&&r[$B].timeout.refresh&&r[$B].timeout.refresh(),y}end(){let{socket:t,contentLength:r,client:s,bytesWritten:a,expectsPayload:o,header:g,request:p}=this;if(p.onRequestSent(),t[Iie]=!1,t[qO])throw t[qO];if(!t.destroyed){if(a===0?o?t.write(`${g}content-length: 0\r +`,"latin1"),this.bytesWritten+=m;let y=r.write(t);return r.uncork(),s.onBodySent(t),y||r[tv].timeout&&r[tv].timeoutType===y2e&&r[tv].timeout.refresh&&r[tv].timeout.refresh(),y}end(){let{socket:t,contentLength:r,client:s,bytesWritten:a,expectsPayload:o,header:g,request:p}=this;if(p.onRequestSent(),t[mie]=!1,t[tQ])throw t[tQ];if(!t.destroyed){if(a===0?o?t.write(`${g}content-length: 0\r \r `,"latin1"):t.write(`${g}\r `,"latin1"):r===null&&t.write(`\r 0\r \r -`,"latin1"),r!==null&&a!==r){if(s[Atr])throw new Rde;process.emitWarning(new Rde)}t[$B].timeout&&t[$B].timeoutType===h2e&&t[$B].timeout.refresh&&t[$B].timeout.refresh(),s[fie]()}}destroy(t){let{socket:r,client:s,abort:a}=this;r[Iie]=!1,t&&(af(s[vk]<=1,"pipeline should only contain this request"),a(t))}};iGn.exports=pyo});var AGn=z((n6c,gGn)=>{"use strict";var $O=Dt("node:assert"),{pipeline:_yo}=Dt("node:stream"),nh=tm(),{RequestContentLengthMismatchError:Ctr,RequestAbortedError:oGn,SocketError:bPe,InformationalError:mtr}=B0(),{kUrl:hgt,kReset:ygt,kClient:_2e,kRunning:bgt,kPending:yyo,kQueue:Dde,kPendingIdx:htr,kRunningIdx:dU,kError:YH,kSocket:dR,kStrictContentLength:byo,kOnError:_tr,kMaxConcurrentStreams:uGn,kHTTP2Session:QH,kResume:Cie,kSize:Eyo,kHTTPContext:Byo}=j1(),$j=Symbol("open streams"),aGn=!1,_gt;try{_gt=Dt("node:http2")}catch{_gt={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:vyo,HTTP2_HEADER_METHOD:Syo,HTTP2_HEADER_PATH:wyo,HTTP2_HEADER_SCHEME:Tyo,HTTP2_HEADER_CONTENT_LENGTH:Nyo,HTTP2_HEADER_EXPECT:Ryo,HTTP2_HEADER_STATUS:Dyo}}=_gt;function xyo(e){let t=[];for(let[r,s]of Object.entries(e))if(Array.isArray(s))for(let a of s)t.push(Buffer.from(r),Buffer.from(a));else t.push(Buffer.from(r),Buffer.from(s));return t}async function kyo(e,t){e[dR]=t,aGn||(aGn=!0,process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"}));let r=_gt.connect(e[hgt],{createConnection:()=>t,peerMaxConcurrentStreams:e[uGn]});r[$j]=0,r[_2e]=e,r[dR]=t,nh.addListener(r,"error",Fyo),nh.addListener(r,"frameError",Zyo),nh.addListener(r,"end",Lyo),nh.addListener(r,"goaway",Vyo),nh.addListener(r,"close",function(){let{[_2e]:a}=this,{[dR]:o}=a,g=this[dR][YH]||this[YH]||new bPe("closed",nh.getSocketInfo(o));if(a[QH]=null,a.destroyed){$O(a[yyo]===0);let p=a[Dde].splice(a[dU]);for(let f=0;f{s=!0}),{version:"h2",defaultPipelining:1/0,write(...a){return Pyo(e,...a)},resume(){Gyo(e)},destroy(a,o){s?queueMicrotask(o):t.destroy(a).on("close",o)},get destroyed(){return t.destroyed},busy(){return!1}}}function Gyo(e){let t=e[dR];t?.destroyed===!1&&(e[Eyo]===0&&e[uGn]===0?(t.unref(),e[QH].unref()):(t.ref(),e[QH].ref()))}function Fyo(e){$O(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[dR][YH]=e,this[_2e][_tr](e)}function Zyo(e,t,r){if(r===0){let s=new mtr(`HTTP/2: "frameError" received - type ${e}, code ${t}`);this[dR][YH]=s,this[_2e][_tr](s)}}function Lyo(){let e=new bPe("other side closed",nh.getSocketInfo(this[dR]));this.destroy(e),nh.destroy(this[dR],e)}function Vyo(e){let t=this[YH]||new bPe(`HTTP/2: "GOAWAY" frame received with code ${e}`,nh.getSocketInfo(this)),r=this[_2e];r[dR]=null,r[Byo]=null,this[QH]!=null&&(this[QH].destroy(t),this[QH]=null),nh.destroy(this[dR],t);let s=r[Dde][r[dU]];r[Dde][r[dU]++]=null,nh.errorRequest(r,s,t),r[htr]=r[dU],$O(r[bgt]===0),r.emit("disconnect",r[hgt],[r],t),r[Cie]()}function Wyo(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function Pyo(e,t){let r=e[QH],{body:s,method:a,path:o,host:g,upgrade:p,expectContinue:f,signal:m,headers:y}=t;if(p)return nh.errorRequest(e,t,new Error("Upgrade not supported for H2")),!1;let B={};for(let ge=0;ge{t.aborted||t.completed||(ge=ge||new oGn,nh.errorRequest(e,t,ge),v!=null&&nh.destroy(v,ge),nh.destroy(s,ge),e[Dde][e[dU]++]=null,e[Cie]())};try{t.onConnect(O)}catch(ge){nh.errorRequest(e,t,ge)}if(t.aborted)return!1;if(a==="CONNECT")return r.ref(),v=r.request(B,{endStream:!1,signal:m}),v.id&&!v.pending?(t.onUpgrade(null,null,v),++r[$j],e[Dde][e[dU]++]=null):v.once("ready",()=>{t.onUpgrade(null,null,v),++r[$j],e[Dde][e[dU]++]=null}),v.once("close",()=>{r[$j]-=1,r[$j]===0&&r.unref()}),!0;B[wyo]=o,B[Tyo]="https";let X=a==="PUT"||a==="POST"||a==="PATCH";s&&typeof s.read=="function"&&s.read(0);let U=nh.bodyLength(s);if(U==null&&(U=t.contentLength),(U===0||!X)&&(U=null),Wyo(a)&&U>0&&t.contentLength!=null&&t.contentLength!==U){if(e[byo])return nh.errorRequest(e,t,new Ctr),!1;process.emitWarning(new Ctr)}U!=null&&($O(s,"no body must not have content length"),B[Nyo]=`${U}`),r.ref();let le=a==="GET"||a==="HEAD"||s===null;return f?(B[Ryo]="100-continue",v=r.request(B,{endStream:le,signal:m}),v.once("continue",ae)):(v=r.request(B,{endStream:le,signal:m}),ae()),++r[$j],v.once("response",ge=>{let{[Dyo]:fe,...pe}=ge;if(t.onResponseStarted(),t.aborted){let he=new oGn;nh.errorRequest(e,t,he),nh.destroy(v,he);return}t.onHeaders(Number(fe),xyo(pe),v.resume.bind(v),"")===!1&&v.pause(),v.on("data",he=>{t.onData(he)===!1&&v.pause()})}),v.once("end",()=>{(v.state?.state==null||v.state.state<6)&&t.onComplete([]),r[$j]===0&&r.unref(),O(new mtr("HTTP/2: stream half-closed (remote)")),e[Dde][e[dU]++]=null,e[htr]=e[dU],e[Cie]()}),v.once("close",()=>{r[$j]-=1,r[$j]===0&&r.unref()}),v.once("error",function(ge){O(ge)}),v.once("frameError",(ge,fe)=>{O(new mtr(`HTTP/2: "frameError" received - type ${ge}, code ${fe}`))}),!0;function ae(){!s||U===0?cGn(O,v,null,e,t,e[dR],U,X):nh.isBuffer(s)?cGn(O,v,s,e,t,e[dR],U,X):nh.isBlobLike(s)?typeof s.stream=="function"?lGn(O,v,s.stream(),e,t,e[dR],U,X):Myo(O,v,s,e,t,e[dR],U,X):nh.isStream(s)?Oyo(O,e[dR],X,v,s,e,t,U):nh.isIterable(s)?lGn(O,v,s,e,t,e[dR],U,X):$O(!1)}}function cGn(e,t,r,s,a,o,g,p){try{r!=null&&nh.isBuffer(r)&&($O(g===r.byteLength,"buffer body must have content length"),t.cork(),t.write(r),t.uncork(),t.end(),a.onBodySent(r)),p||(o[ygt]=!0),a.onRequestSent(),s[Cie]()}catch(f){e(f)}}function Oyo(e,t,r,s,a,o,g,p){$O(p!==0||o[bgt]===0,"stream body cannot be pipelined");let f=_yo(a,s,y=>{y?(nh.destroy(f,y),e(y)):(nh.removeAllListeners(f),g.onRequestSent(),r||(t[ygt]=!0),o[Cie]())});nh.addListener(f,"data",m);function m(y){g.onBodySent(y)}}async function Myo(e,t,r,s,a,o,g,p){$O(g===r.size,"blob body must have content length");try{if(g!=null&&g!==r.size)throw new Ctr;let f=Buffer.from(await r.arrayBuffer());t.cork(),t.write(f),t.uncork(),t.end(),a.onBodySent(f),a.onRequestSent(),p||(o[ygt]=!0),s[Cie]()}catch(f){e(f)}}async function lGn(e,t,r,s,a,o,g,p){$O(g!==0||s[bgt]===0,"iterator body cannot be pipelined");let f=null;function m(){if(f){let B=f;f=null,B()}}let y=()=>new Promise((B,v)=>{$O(f===null),o[YH]?v(o[YH]):f=B});t.on("close",m).on("drain",m);try{for await(let B of r){if(o[YH])throw o[YH];let v=t.write(B);a.onBodySent(B),v||await y()}t.end(),a.onRequestSent(),p||(o[ygt]=!0),s[Cie]()}catch(B){e(B)}finally{t.off("close",m).off("drain",m)}}gGn.exports=kyo});var Bgt=z((i6c,fGn)=>{"use strict";var pU=tm(),{kBodyUsed:EPe}=j1(),btr=Dt("node:assert"),{InvalidArgumentError:Qyo}=B0(),Yyo=Dt("node:events"),Hyo=[300,301,302,303,307,308],dGn=Symbol("body"),Egt=class{constructor(t){this[dGn]=t,this[EPe]=!1}async*[Symbol.asyncIterator](){btr(!this[EPe],"disturbed"),this[EPe]=!0,yield*this[dGn]}},ytr=class{constructor(t,r,s,a){if(r!=null&&(!Number.isInteger(r)||r<0))throw new Qyo("maxRedirections must be a positive number");pU.validateHandler(a,s.method,s.upgrade),this.dispatch=t,this.location=null,this.abort=null,this.opts={...s,maxRedirections:0},this.maxRedirections=r,this.handler=a,this.history=[],this.redirectionLimitReached=!1,pU.isStream(this.opts.body)?(pU.bodyLength(this.opts.body)===0&&this.opts.body.on("data",function(){btr(!1)}),typeof this.opts.body.readableDidRead!="boolean"&&(this.opts.body[EPe]=!1,Yyo.prototype.on.call(this.opts.body,"data",function(){this[EPe]=!0}))):this.opts.body&&typeof this.opts.body.pipeTo=="function"?this.opts.body=new Egt(this.opts.body):this.opts.body&&typeof this.opts.body!="string"&&!ArrayBuffer.isView(this.opts.body)&&pU.isIterable(this.opts.body)&&(this.opts.body=new Egt(this.opts.body))}onConnect(t){this.abort=t,this.handler.onConnect(t,{history:this.history})}onUpgrade(t,r,s){this.handler.onUpgrade(t,r,s)}onError(t){this.handler.onError(t)}onHeaders(t,r,s,a){if(this.location=this.history.length>=this.maxRedirections||pU.isDisturbed(this.opts.body)?null:Xyo(t,r),this.opts.throwOnMaxRedirect&&this.history.length>=this.maxRedirections){this.request&&this.request.abort(new Error("max redirects")),this.redirectionLimitReached=!0,this.abort(new Error("max redirects"));return}if(this.opts.origin&&this.history.push(new URL(this.opts.path,this.opts.origin)),!this.location)return this.handler.onHeaders(t,r,s,a);let{origin:o,pathname:g,search:p}=pU.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),f=p?`${g}${p}`:g;this.opts.headers=Jyo(this.opts.headers,t===303,this.opts.origin!==o),this.opts.path=f,this.opts.origin=o,this.opts.maxRedirections=0,this.opts.query=null,t===303&&this.opts.method!=="HEAD"&&(this.opts.method="GET",this.opts.body=null)}onData(t){if(!this.location)return this.handler.onData(t)}onComplete(t){this.location?(this.location=null,this.abort=null,this.dispatch(this.opts,this)):this.handler.onComplete(t)}onBodySent(t){this.handler.onBodySent&&this.handler.onBodySent(t)}};function Xyo(e,t){if(Hyo.indexOf(e)===-1)return null;for(let r=0;r{"use strict";var Uyo=Bgt();function Kyo({maxRedirections:e}){return t=>function(s,a){let{maxRedirections:o=e}=s;if(!o)return t(s,a);let g=new Uyo(t,o,s,a);return s={...s,maxRedirections:0},t(s,g)}}IGn.exports=Kyo});var RPe=z((o6c,SGn)=>{"use strict";var ez=Dt("node:assert"),bGn=Dt("node:net"),jyo=Dt("node:http"),xde=tm(),{channels:y2e}=i2e(),zyo=Gxn(),qyo=c2e(),{InvalidArgumentError:sS,InformationalError:$yo,ClientDestroyedError:ebo}=B0(),tbo=lPe(),{kUrl:fU,kServerName:mie,kClient:rbo,kBusy:Etr,kConnect:nbo,kResuming:kde,kRunning:TPe,kPending:NPe,kSize:wPe,kQueue:HH,kConnected:ibo,kConnecting:b2e,kNeedDrain:_ie,kKeepAliveDefaultTimeout:CGn,kHostHeader:sbo,kPendingIdx:XH,kRunningIdx:tz,kError:obo,kPipelining:Sgt,kKeepAliveTimeoutValue:abo,kMaxHeadersSize:cbo,kKeepAliveMaxTimeout:lbo,kKeepAliveTimeoutThreshold:ubo,kHeadersTimeout:gbo,kBodyTimeout:Abo,kStrictContentLength:dbo,kConnector:BPe,kMaxRedirections:pbo,kMaxRequests:Btr,kCounter:fbo,kClose:Ibo,kDestroy:Cbo,kDispatch:mbo,kInterceptors:mGn,kLocalAddress:vPe,kMaxResponseSize:hbo,kOnError:_bo,kHTTPContext:oS,kMaxConcurrentStreams:ybo,kResume:SPe}=j1(),bbo=sGn(),Ebo=AGn(),hGn=!1,hie=Symbol("kClosedResolve"),_Gn=()=>{};function EGn(e){return e[Sgt]??e[oS]?.defaultPipelining??1}var vtr=class extends qyo{constructor(t,{interceptors:r,maxHeaderSize:s,headersTimeout:a,socketTimeout:o,requestTimeout:g,connectTimeout:p,bodyTimeout:f,idleTimeout:m,keepAlive:y,keepAliveTimeout:B,maxKeepAliveTimeout:v,keepAliveMaxTimeout:G,keepAliveTimeoutThreshold:T,socketPath:O,pipelining:X,tls:U,strictContentLength:le,maxCachedSessions:ae,maxRedirections:ge,connect:fe,maxRequestsPerClient:pe,localAddress:he,maxResponseSize:be,autoSelectFamily:Te,autoSelectFamilyAttemptTimeout:ke,maxConcurrentStreams:x,allowH2:et}={}){if(super(),y!==void 0)throw new sS("unsupported keepAlive, use pipelining=0 instead");if(o!==void 0)throw new sS("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(g!==void 0)throw new sS("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(m!==void 0)throw new sS("unsupported idleTimeout, use keepAliveTimeout instead");if(v!==void 0)throw new sS("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(s!=null&&!Number.isFinite(s))throw new sS("invalid maxHeaderSize");if(O!=null&&typeof O!="string")throw new sS("invalid socketPath");if(p!=null&&(!Number.isFinite(p)||p<0))throw new sS("invalid connectTimeout");if(B!=null&&(!Number.isFinite(B)||B<=0))throw new sS("invalid keepAliveTimeout");if(G!=null&&(!Number.isFinite(G)||G<=0))throw new sS("invalid keepAliveMaxTimeout");if(T!=null&&!Number.isFinite(T))throw new sS("invalid keepAliveTimeoutThreshold");if(a!=null&&(!Number.isInteger(a)||a<0))throw new sS("headersTimeout must be a positive integer or zero");if(f!=null&&(!Number.isInteger(f)||f<0))throw new sS("bodyTimeout must be a positive integer or zero");if(fe!=null&&typeof fe!="function"&&typeof fe!="object")throw new sS("connect must be a function or an object");if(ge!=null&&(!Number.isInteger(ge)||ge<0))throw new sS("maxRedirections must be a positive number");if(pe!=null&&(!Number.isInteger(pe)||pe<0))throw new sS("maxRequestsPerClient must be a positive number");if(he!=null&&(typeof he!="string"||bGn.isIP(he)===0))throw new sS("localAddress must be valid string IP address");if(be!=null&&(!Number.isInteger(be)||be<-1))throw new sS("maxResponseSize must be a positive number");if(ke!=null&&(!Number.isInteger(ke)||ke<-1))throw new sS("autoSelectFamilyAttemptTimeout must be a positive number");if(et!=null&&typeof et!="boolean")throw new sS("allowH2 must be a valid boolean value");if(x!=null&&(typeof x!="number"||x<1))throw new sS("maxConcurrentStreams must be a positive integer, greater than 0");typeof fe!="function"&&(fe=tbo({...U,maxCachedSessions:ae,allowH2:et,socketPath:O,timeout:p,...Te?{autoSelectFamily:Te,autoSelectFamilyAttemptTimeout:ke}:void 0,...fe})),r?.Client&&Array.isArray(r.Client)?(this[mGn]=r.Client,hGn||(hGn=!0,process.emitWarning("Client.Options#interceptor is deprecated. Use Dispatcher#compose instead.",{code:"UNDICI-CLIENT-INTERCEPTOR-DEPRECATED"}))):this[mGn]=[Bbo({maxRedirections:ge})],this[fU]=xde.parseOrigin(t),this[BPe]=fe,this[Sgt]=X??1,this[cbo]=s||jyo.maxHeaderSize,this[CGn]=B??4e3,this[lbo]=G??6e5,this[ubo]=T??2e3,this[abo]=this[CGn],this[mie]=null,this[vPe]=he??null,this[kde]=0,this[_ie]=0,this[sbo]=`host: ${this[fU].hostname}${this[fU].port?`:${this[fU].port}`:""}\r -`,this[Abo]=f??3e5,this[gbo]=a??3e5,this[dbo]=le??!0,this[pbo]=ge,this[Btr]=pe,this[hie]=null,this[hbo]=be>-1?be:-1,this[ybo]=x??100,this[oS]=null,this[HH]=[],this[tz]=0,this[XH]=0,this[SPe]=Ue=>Str(this,Ue),this[_bo]=Ue=>BGn(this,Ue)}get pipelining(){return this[Sgt]}set pipelining(t){this[Sgt]=t,this[SPe](!0)}get[NPe](){return this[HH].length-this[XH]}get[TPe](){return this[XH]-this[tz]}get[wPe](){return this[HH].length-this[tz]}get[ibo](){return!!this[oS]&&!this[b2e]&&!this[oS].destroyed}get[Etr](){return!!(this[oS]?.busy(null)||this[wPe]>=(EGn(this)||1)||this[NPe]>0)}[nbo](t){vGn(this),this.once("connect",t)}[mbo](t,r){let s=t.origin||this[fU].origin,a=new zyo(s,t,r);return this[HH].push(a),this[kde]||(xde.bodyLength(a.body)==null&&xde.isIterable(a.body)?(this[kde]=1,queueMicrotask(()=>Str(this))):this[SPe](!0)),this[kde]&&this[_ie]!==2&&this[Etr]&&(this[_ie]=2),this[_ie]<2}async[Ibo](){return new Promise(t=>{this[wPe]?this[hie]=t:t(null)})}async[Cbo](t){return new Promise(r=>{let s=this[HH].splice(this[XH]);for(let o=0;o{this[hie]&&(this[hie](),this[hie]=null),r(null)};this[oS]?(this[oS].destroy(t,a),this[oS]=null):queueMicrotask(a),this[SPe]()})}},Bbo=vgt();function BGn(e,t){if(e[TPe]===0&&t.code!=="UND_ERR_INFO"&&t.code!=="UND_ERR_SOCKET"){ez(e[XH]===e[tz]);let r=e[HH].splice(e[tz]);for(let s=0;s{e[BPe]({host:t,hostname:r,protocol:s,port:a,servername:e[mie],localAddress:e[vPe]},(f,m)=>{f?p(f):g(m)})});if(e.destroyed){xde.destroy(o.on("error",_Gn),new ebo);return}ez(o);try{e[oS]=o.alpnProtocol==="h2"?await Ebo(e,o):await bbo(e,o)}catch(g){throw o.destroy().on("error",_Gn),g}e[b2e]=!1,o[fbo]=0,o[Btr]=e[Btr],o[rbo]=e,o[obo]=null,y2e.connected.hasSubscribers&&y2e.connected.publish({connectParams:{host:t,hostname:r,protocol:s,port:a,version:e[oS]?.version,servername:e[mie],localAddress:e[vPe]},connector:e[BPe],socket:o}),e.emit("connect",e[fU],[e])}catch(o){if(e.destroyed)return;if(e[b2e]=!1,y2e.connectError.hasSubscribers&&y2e.connectError.publish({connectParams:{host:t,hostname:r,protocol:s,port:a,version:e[oS]?.version,servername:e[mie],localAddress:e[vPe]},connector:e[BPe],error:o}),o.code==="ERR_TLS_CERT_ALTNAME_INVALID")for(ez(e[TPe]===0);e[NPe]>0&&e[HH][e[XH]].servername===e[mie];){let g=e[HH][e[XH]++];xde.errorRequest(e,g,o)}else BGn(e,o);e.emit("connectionError",e[fU],[e],o)}e[SPe]()}function yGn(e){e[_ie]=0,e.emit("drain",e[fU],[e])}function Str(e,t){e[kde]!==2&&(e[kde]=2,vbo(e,t),e[kde]=0,e[tz]>256&&(e[HH].splice(0,e[tz]),e[XH]-=e[tz],e[tz]=0))}function vbo(e,t){for(;;){if(e.destroyed){ez(e[NPe]===0);return}if(e[hie]&&!e[wPe]){e[hie](),e[hie]=null;return}if(e[oS]&&e[oS].resume(),e[Etr])e[_ie]=2;else if(e[_ie]===2){t?(e[_ie]=1,queueMicrotask(()=>yGn(e))):yGn(e);continue}if(e[NPe]===0||e[TPe]>=(EGn(e)||1))return;let r=e[HH][e[XH]];if(e[fU].protocol==="https:"&&e[mie]!==r.servername){if(e[TPe]>0)return;e[mie]=r.servername,e[oS]?.destroy(new $yo("servername changed"),()=>{e[oS]=null,Str(e)})}if(e[b2e])return;if(!e[oS]){vGn(e);return}if(e[oS].destroyed||e[oS].busy(r))return;!r.aborted&&e[oS].write(r)?e[XH]++:e[HH].splice(e[XH],1)}}SGn.exports=vtr});var wtr=z((c6c,wGn)=>{"use strict";var wgt=class{constructor(){this.bottom=0,this.top=0,this.list=new Array(2048),this.next=null}isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&2047)===this.bottom}push(t){this.list[this.top]=t,this.top=this.top+1&2047}shift(){let t=this.list[this.bottom];return t===void 0?null:(this.list[this.bottom]=void 0,this.bottom=this.bottom+1&2047,t)}};wGn.exports=class{constructor(){this.head=this.tail=new wgt}isEmpty(){return this.head.isEmpty()}push(t){this.head.isFull()&&(this.head=this.head.next=new wgt),this.head.push(t)}shift(){let t=this.tail,r=t.shift();return t.isEmpty()&&t.next!==null&&(this.tail=t.next),r}}});var NGn=z((l6c,TGn)=>{var{kFree:Sbo,kConnected:wbo,kPending:Tbo,kQueued:Nbo,kRunning:Rbo,kSize:Dbo}=j1(),Gde=Symbol("pool"),Ttr=class{constructor(t){this[Gde]=t}get connected(){return this[Gde][wbo]}get free(){return this[Gde][Sbo]}get pending(){return this[Gde][Tbo]}get queued(){return this[Gde][Nbo]}get running(){return this[Gde][Rbo]}get size(){return this[Gde][Dbo]}};TGn.exports=Ttr});var Gtr=z((u6c,WGn)=>{"use strict";var xbo=c2e(),kbo=wtr(),{kConnected:Ntr,kSize:RGn,kRunning:DGn,kPending:xGn,kQueued:DPe,kBusy:Gbo,kFree:Fbo,kUrl:Zbo,kClose:Lbo,kDestroy:Vbo,kDispatch:Wbo}=j1(),Pbo=NGn(),YL=Symbol("clients"),GF=Symbol("needDrain"),xPe=Symbol("queue"),Rtr=Symbol("closed resolve"),Dtr=Symbol("onDrain"),kGn=Symbol("onConnect"),GGn=Symbol("onDisconnect"),FGn=Symbol("onConnectionError"),xtr=Symbol("get dispatcher"),LGn=Symbol("add client"),VGn=Symbol("remove client"),ZGn=Symbol("stats"),ktr=class extends xbo{constructor(){super(),this[xPe]=new kbo,this[YL]=[],this[DPe]=0;let t=this;this[Dtr]=function(s,a){let o=t[xPe],g=!1;for(;!g;){let p=o.shift();if(!p)break;t[DPe]--,g=!this.dispatch(p.opts,p.handler)}this[GF]=g,!this[GF]&&t[GF]&&(t[GF]=!1,t.emit("drain",s,[t,...a])),t[Rtr]&&o.isEmpty()&&Promise.all(t[YL].map(p=>p.close())).then(t[Rtr])},this[kGn]=(r,s)=>{t.emit("connect",r,[t,...s])},this[GGn]=(r,s,a)=>{t.emit("disconnect",r,[t,...s],a)},this[FGn]=(r,s,a)=>{t.emit("connectionError",r,[t,...s],a)},this[ZGn]=new Pbo(this)}get[Gbo](){return this[GF]}get[Ntr](){return this[YL].filter(t=>t[Ntr]).length}get[Fbo](){return this[YL].filter(t=>t[Ntr]&&!t[GF]).length}get[xGn](){let t=this[DPe];for(let{[xGn]:r}of this[YL])t+=r;return t}get[DGn](){let t=0;for(let{[DGn]:r}of this[YL])t+=r;return t}get[RGn](){let t=this[DPe];for(let{[RGn]:r}of this[YL])t+=r;return t}get stats(){return this[ZGn]}async[Lbo](){this[xPe].isEmpty()?await Promise.all(this[YL].map(t=>t.close())):await new Promise(t=>{this[Rtr]=t})}async[Vbo](t){for(;;){let r=this[xPe].shift();if(!r)break;r.handler.onError(t)}await Promise.all(this[YL].map(r=>r.destroy(t)))}[Wbo](t,r){let s=this[xtr]();return s?s.dispatch(t,r)||(s[GF]=!0,this[GF]=!this[xtr]()):(this[GF]=!0,this[xPe].push({opts:t,handler:r}),this[DPe]++),!this[GF]}[LGn](t){return t.on("drain",this[Dtr]).on("connect",this[kGn]).on("disconnect",this[GGn]).on("connectionError",this[FGn]),this[YL].push(t),this[GF]&&queueMicrotask(()=>{this[GF]&&this[Dtr](t[Zbo],[this,t])}),this}[VGn](t){t.close(()=>{let r=this[YL].indexOf(t);r!==-1&&this[YL].splice(r,1)}),this[GF]=this[YL].some(r=>!r[GF]&&r.closed!==!0&&r.destroyed!==!0)}};WGn.exports={PoolBase:ktr,kClients:YL,kNeedDrain:GF,kAddClient:LGn,kRemoveClient:VGn,kGetDispatcher:xtr}});var E2e=z((g6c,YGn)=>{"use strict";var{PoolBase:Obo,kClients:PGn,kNeedDrain:Mbo,kAddClient:Qbo,kGetDispatcher:Ybo}=Gtr(),Hbo=RPe(),{InvalidArgumentError:Ftr}=B0(),OGn=tm(),{kUrl:MGn,kInterceptors:Xbo}=j1(),Jbo=lPe(),Ztr=Symbol("options"),Ltr=Symbol("connections"),QGn=Symbol("factory");function Ubo(e,t){return new Hbo(e,t)}var Vtr=class extends Obo{constructor(t,{connections:r,factory:s=Ubo,connect:a,connectTimeout:o,tls:g,maxCachedSessions:p,socketPath:f,autoSelectFamily:m,autoSelectFamilyAttemptTimeout:y,allowH2:B,...v}={}){if(super(),r!=null&&(!Number.isFinite(r)||r<0))throw new Ftr("invalid connections");if(typeof s!="function")throw new Ftr("factory must be a function.");if(a!=null&&typeof a!="function"&&typeof a!="object")throw new Ftr("connect must be a function or an object");typeof a!="function"&&(a=Jbo({...g,maxCachedSessions:p,allowH2:B,socketPath:f,timeout:o,...m?{autoSelectFamily:m,autoSelectFamilyAttemptTimeout:y}:void 0,...a})),this[Xbo]=v.interceptors?.Pool&&Array.isArray(v.interceptors.Pool)?v.interceptors.Pool:[],this[Ltr]=r||null,this[MGn]=OGn.parseOrigin(t),this[Ztr]={...OGn.deepClone(v),connect:a,allowH2:B},this[Ztr].interceptors=v.interceptors?{...v.interceptors}:void 0,this[QGn]=s}[Ybo](){for(let t of this[PGn])if(!t[Mbo])return t;if(!this[Ltr]||this[PGn].length{"use strict";var{BalancedPoolMissingUpstreamError:Kbo,InvalidArgumentError:jbo}=B0(),{PoolBase:zbo,kClients:Sk,kNeedDrain:kPe,kAddClient:qbo,kRemoveClient:$bo,kGetDispatcher:eEo}=Gtr(),tEo=E2e(),{kUrl:Wtr,kInterceptors:rEo}=j1(),{parseOrigin:HGn}=tm(),XGn=Symbol("factory"),Tgt=Symbol("options"),JGn=Symbol("kGreatestCommonDivisor"),Fde=Symbol("kCurrentWeight"),Zde=Symbol("kIndex"),eM=Symbol("kWeight"),Ngt=Symbol("kMaxWeightPerServer"),Rgt=Symbol("kErrorPenalty");function nEo(e,t){if(e===0)return t;for(;t!==0;){let r=t;t=e%t,e=r}return e}function iEo(e,t){return new tEo(e,t)}var Ptr=class extends zbo{constructor(t=[],{factory:r=iEo,...s}={}){if(super(),this[Tgt]=s,this[Zde]=-1,this[Fde]=0,this[Ngt]=this[Tgt].maxWeightPerServer||100,this[Rgt]=this[Tgt].errorPenalty||15,Array.isArray(t)||(t=[t]),typeof r!="function")throw new jbo("factory must be a function.");this[rEo]=s.interceptors?.BalancedPool&&Array.isArray(s.interceptors.BalancedPool)?s.interceptors.BalancedPool:[],this[XGn]=r;for(let a of t)this.addUpstream(a);this._updateBalancedPoolStats()}addUpstream(t){let r=HGn(t).origin;if(this[Sk].find(a=>a[Wtr].origin===r&&a.closed!==!0&&a.destroyed!==!0))return this;let s=this[XGn](r,Object.assign({},this[Tgt]));this[qbo](s),s.on("connect",()=>{s[eM]=Math.min(this[Ngt],s[eM]+this[Rgt])}),s.on("connectionError",()=>{s[eM]=Math.max(1,s[eM]-this[Rgt]),this._updateBalancedPoolStats()}),s.on("disconnect",(...a)=>{let o=a[2];o&&o.code==="UND_ERR_SOCKET"&&(s[eM]=Math.max(1,s[eM]-this[Rgt]),this._updateBalancedPoolStats())});for(let a of this[Sk])a[eM]=this[Ngt];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){let t=0;for(let r=0;ra[Wtr].origin===r&&a.closed!==!0&&a.destroyed!==!0);return s&&this[$bo](s),this}get upstreams(){return this[Sk].filter(t=>t.closed!==!0&&t.destroyed!==!0).map(t=>t[Wtr].origin)}[eEo](){if(this[Sk].length===0)throw new Kbo;if(!this[Sk].find(o=>!o[kPe]&&o.closed!==!0&&o.destroyed!==!0)||this[Sk].map(o=>o[kPe]).reduce((o,g)=>o&&g,!0))return;let s=0,a=this[Sk].findIndex(o=>!o[kPe]);for(;s++this[Sk][a][eM]&&!o[kPe]&&(a=this[Zde]),this[Zde]===0&&(this[Fde]=this[Fde]-this[JGn],this[Fde]<=0&&(this[Fde]=this[Ngt])),o[eM]>=this[Fde]&&!o[kPe])return o}return this[Fde]=this[Sk][a][eM],this[Zde]=a,this[Sk][a]}};UGn.exports=Ptr});var B2e=z((d6c,rFn)=>{"use strict";var{InvalidArgumentError:Dgt}=B0(),{kClients:yie,kRunning:jGn,kClose:sEo,kDestroy:oEo,kDispatch:aEo,kInterceptors:cEo}=j1(),lEo=c2e(),uEo=E2e(),gEo=RPe(),AEo=tm(),dEo=vgt(),zGn=Symbol("onConnect"),qGn=Symbol("onDisconnect"),$Gn=Symbol("onConnectionError"),pEo=Symbol("maxRedirections"),eFn=Symbol("onDrain"),tFn=Symbol("factory"),Otr=Symbol("options");function fEo(e,t){return t&&t.connections===1?new gEo(e,t):new uEo(e,t)}var Mtr=class extends lEo{constructor({factory:t=fEo,maxRedirections:r=0,connect:s,...a}={}){if(super(),typeof t!="function")throw new Dgt("factory must be a function.");if(s!=null&&typeof s!="function"&&typeof s!="object")throw new Dgt("connect must be a function or an object");if(!Number.isInteger(r)||r<0)throw new Dgt("maxRedirections must be a positive number");s&&typeof s!="function"&&(s={...s}),this[cEo]=a.interceptors?.Agent&&Array.isArray(a.interceptors.Agent)?a.interceptors.Agent:[dEo({maxRedirections:r})],this[Otr]={...AEo.deepClone(a),connect:s},this[Otr].interceptors=a.interceptors?{...a.interceptors}:void 0,this[pEo]=r,this[tFn]=t,this[yie]=new Map,this[eFn]=(o,g)=>{this.emit("drain",o,[this,...g])},this[zGn]=(o,g)=>{this.emit("connect",o,[this,...g])},this[qGn]=(o,g,p)=>{this.emit("disconnect",o,[this,...g],p)},this[$Gn]=(o,g,p)=>{this.emit("connectionError",o,[this,...g],p)}}get[jGn](){let t=0;for(let r of this[yie].values())t+=r[jGn];return t}[aEo](t,r){let s;if(t.origin&&(typeof t.origin=="string"||t.origin instanceof URL))s=String(t.origin);else throw new Dgt("opts.origin must be a non-empty string or URL.");let a=this[yie].get(s);return a||(a=this[tFn](t.origin,this[Otr]).on("drain",this[eFn]).on("connect",this[zGn]).on("disconnect",this[qGn]).on("connectionError",this[$Gn]),this[yie].set(s,a)),a.dispatch(t,r)}async[sEo](){let t=[];for(let r of this[yie].values())t.push(r.close());this[yie].clear(),await Promise.all(t)}async[oEo](t){let r=[];for(let s of this[yie].values())r.push(s.destroy(t));this[yie].clear(),await Promise.all(r)}};rFn.exports=Mtr});var Htr=z((p6c,oFn)=>{"use strict";var{kProxy:IEo,kClose:CEo,kDestroy:mEo,kInterceptors:hEo}=j1(),{URL:GPe}=Dt("node:url"),_Eo=B2e(),yEo=E2e(),bEo=c2e(),{InvalidArgumentError:Ggt,RequestAbortedError:EEo,SecureProxyConnectionError:BEo}=B0(),nFn=lPe(),xgt=Symbol("proxy agent"),kgt=Symbol("proxy client"),FPe=Symbol("proxy headers"),Qtr=Symbol("request tls settings"),iFn=Symbol("proxy tls settings"),sFn=Symbol("connect endpoint function");function vEo(e){return e==="https:"?443:80}function SEo(e,t){return new yEo(e,t)}var wEo=()=>{},Ytr=class extends bEo{constructor(t){if(super(),!t||typeof t=="object"&&!(t instanceof GPe)&&!t.uri)throw new Ggt("Proxy uri is mandatory");let{clientFactory:r=SEo}=t;if(typeof r!="function")throw new Ggt("Proxy opts.clientFactory must be a function.");let s=this.#e(t),{href:a,origin:o,port:g,protocol:p,username:f,password:m,hostname:y}=s;if(this[IEo]={uri:a,protocol:p},this[hEo]=t.interceptors?.ProxyAgent&&Array.isArray(t.interceptors.ProxyAgent)?t.interceptors.ProxyAgent:[],this[Qtr]=t.requestTls,this[iFn]=t.proxyTls,this[FPe]=t.headers||{},t.auth&&t.token)throw new Ggt("opts.auth cannot be used in combination with opts.token");t.auth?this[FPe]["proxy-authorization"]=`Basic ${t.auth}`:t.token?this[FPe]["proxy-authorization"]=t.token:f&&m&&(this[FPe]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(f)}:${decodeURIComponent(m)}`).toString("base64")}`);let B=nFn({...t.proxyTls});this[sFn]=nFn({...t.requestTls}),this[kgt]=r(s,{connect:B}),this[xgt]=new _Eo({...t,connect:async(v,G)=>{let T=v.host;v.port||(T+=`:${vEo(v.protocol)}`);try{let{socket:O,statusCode:X}=await this[kgt].connect({origin:o,port:g,path:T,signal:v.signal,headers:{...this[FPe],host:v.host},servername:this[iFn]?.servername||y});if(X!==200&&(O.on("error",wEo).destroy(),G(new EEo(`Proxy response (${X}) !== 200 when HTTP Tunneling`))),v.protocol!=="https:"){G(null,O);return}let U;this[Qtr]?U=this[Qtr].servername:U=v.servername,this[sFn]({...v,servername:U,httpSocket:O},G)}catch(O){O.code==="ERR_TLS_CERT_ALTNAME_INVALID"?G(new BEo(O)):G(O)}}})}dispatch(t,r){let s=TEo(t.headers);if(NEo(s),s&&!("host"in s)&&!("Host"in s)){let{host:a}=new GPe(t.origin);s.host=a}return this[xgt].dispatch({...t,headers:s},r)}#e(t){return typeof t=="string"?new GPe(t):t instanceof GPe?t:new GPe(t.uri)}async[CEo](){await this[xgt].close(),await this[kgt].close()}async[mEo](){await this[xgt].destroy(),await this[kgt].destroy()}};function TEo(e){if(Array.isArray(e)){let t={};for(let r=0;rr.toLowerCase()==="proxy-authorization"))throw new Ggt("Proxy-Authorization should be sent in ProxyAgent constructor")}oFn.exports=Ytr});var AFn=z((f6c,gFn)=>{"use strict";var REo=c2e(),{kClose:DEo,kDestroy:xEo,kClosed:aFn,kDestroyed:cFn,kDispatch:kEo,kNoProxyAgent:ZPe,kHttpProxyAgent:bie,kHttpsProxyAgent:Lde}=j1(),lFn=Htr(),GEo=B2e(),FEo={"http:":80,"https:":443},uFn=!1,Xtr=class extends REo{#e=null;#t=null;#r=null;constructor(t={}){super(),this.#r=t,uFn||(uFn=!0,process.emitWarning("EnvHttpProxyAgent is experimental, expect them to change at any time.",{code:"UNDICI-EHPA"}));let{httpProxy:r,httpsProxy:s,noProxy:a,...o}=t;this[ZPe]=new GEo(o);let g=r??process.env.http_proxy??process.env.HTTP_PROXY;g?this[bie]=new lFn({...o,uri:g}):this[bie]=this[ZPe];let p=s??process.env.https_proxy??process.env.HTTPS_PROXY;p?this[Lde]=new lFn({...o,uri:p}):this[Lde]=this[bie],this.#a()}[kEo](t,r){let s=new URL(t.origin);return this.#n(s).dispatch(t,r)}async[DEo](){await this[ZPe].close(),this[bie][aFn]||await this[bie].close(),this[Lde][aFn]||await this[Lde].close()}async[xEo](t){await this[ZPe].destroy(t),this[bie][cFn]||await this[bie].destroy(t),this[Lde][cFn]||await this[Lde].destroy(t)}#n(t){let{protocol:r,host:s,port:a}=t;return s=s.replace(/:\d*$/,"").toLowerCase(),a=Number.parseInt(a,10)||FEo[r]||0,this.#i(s,a)?r==="https:"?this[Lde]:this[bie]:this[ZPe]}#i(t,r){if(this.#s&&this.#a(),this.#t.length===0)return!0;if(this.#e==="*")return!1;for(let s=0;s{"use strict";var v2e=Dt("node:assert"),{kRetryHandlerDefaultRetry:dFn}=j1(),{RequestRetryError:LPe}=B0(),{isDisturbed:pFn,parseHeaders:ZEo,parseRangeHeader:fFn,wrapRequestBody:LEo}=tm();function VEo(e){let t=Date.now();return new Date(e).getTime()-t}var Jtr=class e{constructor(t,r){let{retryOptions:s,...a}=t,{retry:o,maxRetries:g,maxTimeout:p,minTimeout:f,timeoutFactor:m,methods:y,errorCodes:B,retryAfter:v,statusCodes:G}=s??{};this.dispatch=r.dispatch,this.handler=r.handler,this.opts={...a,body:LEo(t.body)},this.abort=null,this.aborted=!1,this.retryOpts={retry:o??e[dFn],retryAfter:v??!0,maxTimeout:p??30*1e3,minTimeout:f??500,timeoutFactor:m??2,maxRetries:g??5,methods:y??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:G??[500,502,503,504,429],errorCodes:B??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE","UND_ERR_SOCKET"]},this.retryCount=0,this.retryCountCheckpoint=0,this.start=0,this.end=null,this.etag=null,this.resume=null,this.handler.onConnect(T=>{this.aborted=!0,this.abort?this.abort(T):this.reason=T})}onRequestSent(){this.handler.onRequestSent&&this.handler.onRequestSent()}onUpgrade(t,r,s){this.handler.onUpgrade&&this.handler.onUpgrade(t,r,s)}onConnect(t){this.aborted?t(this.reason):this.abort=t}onBodySent(t){if(this.handler.onBodySent)return this.handler.onBodySent(t)}static[dFn](t,{state:r,opts:s},a){let{statusCode:o,code:g,headers:p}=t,{method:f,retryOptions:m}=s,{maxRetries:y,minTimeout:B,maxTimeout:v,timeoutFactor:G,statusCodes:T,errorCodes:O,methods:X}=m,{counter:U}=r;if(g&&g!=="UND_ERR_REQ_RETRY"&&!O.includes(g)){a(t);return}if(Array.isArray(X)&&!X.includes(f)){a(t);return}if(o!=null&&Array.isArray(T)&&!T.includes(o)){a(t);return}if(U>y){a(t);return}let le=p?.["retry-after"];le&&(le=Number(le),le=Number.isNaN(le)?VEo(le):le*1e3);let ae=le>0?Math.min(le,v):Math.min(B*G**(U-1),v);setTimeout(()=>a(null),ae)}onHeaders(t,r,s,a){let o=ZEo(r);if(this.retryCount+=1,t>=300)return this.retryOpts.statusCodes.includes(t)===!1?this.handler.onHeaders(t,r,s,a):(this.abort(new LPe("Request failed",t,{headers:o,data:{count:this.retryCount}})),!1);if(this.resume!=null){if(this.resume=null,t!==206&&(this.start>0||t!==200))return this.abort(new LPe("server does not support the range header and the payload was partially consumed",t,{headers:o,data:{count:this.retryCount}})),!1;let p=fFn(o["content-range"]);if(!p)return this.abort(new LPe("Content-Range mismatch",t,{headers:o,data:{count:this.retryCount}})),!1;if(this.etag!=null&&this.etag!==o.etag)return this.abort(new LPe("ETag mismatch",t,{headers:o,data:{count:this.retryCount}})),!1;let{start:f,size:m,end:y=m}=p;return v2e(this.start===f,"content-range mismatch"),v2e(this.end==null||this.end===y,"content-range mismatch"),this.resume=s,!0}if(this.end==null){if(t===206){let p=fFn(o["content-range"]);if(p==null)return this.handler.onHeaders(t,r,s,a);let{start:f,size:m,end:y=m}=p;v2e(f!=null&&Number.isFinite(f),"content-range mismatch"),v2e(y!=null&&Number.isFinite(y),"invalid content-length"),this.start=f,this.end=y}if(this.end==null){let p=o["content-length"];this.end=p!=null?Number(p):null}return v2e(Number.isFinite(this.start)),v2e(this.end==null||Number.isFinite(this.end),"invalid content-length"),this.resume=s,this.etag=o.etag!=null?o.etag:null,this.etag!=null&&this.etag.startsWith("W/")&&(this.etag=null),this.handler.onHeaders(t,r,s,a)}let g=new LPe("Request failed",t,{headers:o,data:{count:this.retryCount}});return this.abort(g),!1}onData(t){return this.start+=t.length,this.handler.onData(t)}onComplete(t){return this.retryCount=0,this.handler.onComplete(t)}onError(t){if(this.aborted||pFn(this.opts.body))return this.handler.onError(t);this.retryCount-this.retryCountCheckpoint>0?this.retryCount=this.retryCountCheckpoint+(this.retryCount-this.retryCountCheckpoint):this.retryCount+=1,this.retryOpts.retry(t,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},r.bind(this));function r(s){if(s!=null||this.aborted||pFn(this.opts.body))return this.handler.onError(s);if(this.start!==0){let a={range:`bytes=${this.start}-${this.end??""}`};this.etag!=null&&(a["if-match"]=this.etag),this.opts={...this.opts,headers:{...this.opts.headers,...a}}}try{this.retryCountCheckpoint=this.retryCount,this.dispatch(this.opts,this)}catch(a){this.handler.onError(a)}}}};IFn.exports=Jtr});var mFn=z((C6c,CFn)=>{"use strict";var WEo=aPe(),PEo=Fgt(),Utr=class extends WEo{#e=null;#t=null;constructor(t,r={}){super(r),this.#e=t,this.#t=r}dispatch(t,r){let s=new PEo({...t,retryOptions:this.#t},{dispatch:this.#e.dispatch.bind(this.#e),handler:r});return this.#e.dispatch(t,s)}close(){return this.#e.close()}destroy(){return this.#e.destroy()}};CFn.exports=Utr});var trr=z((m6c,wFn)=>{"use strict";var EFn=Dt("node:assert"),{Readable:OEo}=Dt("node:stream"),{RequestAbortedError:BFn,NotSupportedError:MEo,InvalidArgumentError:QEo,AbortError:Ktr}=B0(),vFn=tm(),{ReadableStreamFrom:YEo}=tm(),VW=Symbol("kConsume"),VPe=Symbol("kReading"),Eie=Symbol("kBody"),hFn=Symbol("kAbort"),SFn=Symbol("kContentType"),_Fn=Symbol("kContentLength"),HEo=()=>{},jtr=class extends OEo{constructor({resume:t,abort:r,contentType:s="",contentLength:a,highWaterMark:o=64*1024}){super({autoDestroy:!0,read:t,highWaterMark:o}),this._readableState.dataEmitted=!1,this[hFn]=r,this[VW]=null,this[Eie]=null,this[SFn]=s,this[_Fn]=a,this[VPe]=!1}destroy(t){return!t&&!this._readableState.endEmitted&&(t=new BFn),t&&this[hFn](),super.destroy(t)}_destroy(t,r){this[VPe]?r(t):setImmediate(()=>{r(t)})}on(t,...r){return(t==="data"||t==="readable")&&(this[VPe]=!0),super.on(t,...r)}addListener(t,...r){return this.on(t,...r)}off(t,...r){let s=super.off(t,...r);return(t==="data"||t==="readable")&&(this[VPe]=this.listenerCount("data")>0||this.listenerCount("readable")>0),s}removeListener(t,...r){return this.off(t,...r)}push(t){return this[VW]&&t!==null?(qtr(this[VW],t),this[VPe]?super.push(t):!0):super.push(t)}async text(){return WPe(this,"text")}async json(){return WPe(this,"json")}async blob(){return WPe(this,"blob")}async bytes(){return WPe(this,"bytes")}async arrayBuffer(){return WPe(this,"arrayBuffer")}async formData(){throw new MEo}get bodyUsed(){return vFn.isDisturbed(this)}get body(){return this[Eie]||(this[Eie]=YEo(this),this[VW]&&(this[Eie].getReader(),EFn(this[Eie].locked))),this[Eie]}async dump(t){let r=Number.isFinite(t?.limit)?t.limit:131072,s=t?.signal;if(s!=null&&(typeof s!="object"||!("aborted"in s)))throw new QEo("signal must be an AbortSignal");return s?.throwIfAborted(),this._readableState.closeEmitted?null:await new Promise((a,o)=>{this[_Fn]>r&&this.destroy(new Ktr);let g=()=>{this.destroy(s.reason??new Ktr)};s?.addEventListener("abort",g),this.on("close",function(){s?.removeEventListener("abort",g),s?.aborted?o(s.reason??new Ktr):a(null)}).on("error",HEo).on("data",function(p){r-=p.length,r<=0&&this.destroy()}).resume()})}};function XEo(e){return e[Eie]&&e[Eie].locked===!0||e[VW]}function JEo(e){return vFn.isDisturbed(e)||XEo(e)}async function WPe(e,t){return EFn(!e[VW]),new Promise((r,s)=>{if(JEo(e)){let a=e._readableState;a.destroyed&&a.closeEmitted===!1?e.on("error",o=>{s(o)}).on("close",()=>{s(new TypeError("unusable"))}):s(a.errored??new TypeError("unusable"))}else queueMicrotask(()=>{e[VW]={type:t,stream:e,resolve:r,reject:s,length:0,body:[]},e.on("error",function(a){$tr(this[VW],a)}).on("close",function(){this[VW].body!==null&&$tr(this[VW],new BFn)}),UEo(e[VW])})})}function UEo(e){if(e.body===null)return;let{_readableState:t}=e.stream;if(t.bufferIndex){let r=t.bufferIndex,s=t.buffer.length;for(let a=r;a2&&r[0]===239&&r[1]===187&&r[2]===191?3:0;return r.utf8Slice(a,s)}function yFn(e,t){if(e.length===0||t===0)return new Uint8Array(0);if(e.length===1)return new Uint8Array(e[0]);let r=new Uint8Array(Buffer.allocUnsafeSlow(t).buffer),s=0;for(let a=0;a{var KEo=Dt("node:assert"),{ResponseStatusCodeError:TFn}=B0(),{chunksDecode:NFn}=trr(),jEo=128*1024;async function zEo({callback:e,body:t,contentType:r,statusCode:s,statusMessage:a,headers:o}){KEo(t);let g=[],p=0;try{for await(let B of t)if(g.push(B),p+=B.length,p>jEo){g=[],p=0;break}}catch{g=[],p=0}let f=`Response status code ${s}${a?`: ${a}`:""}`;if(s===204||!r||!p){queueMicrotask(()=>e(new TFn(f,s,o)));return}let m=Error.stackTraceLimit;Error.stackTraceLimit=0;let y;try{RFn(r)?y=JSON.parse(NFn(g,p)):DFn(r)&&(y=NFn(g,p))}catch{}finally{Error.stackTraceLimit=m}queueMicrotask(()=>e(new TFn(f,s,o,y)))}var RFn=e=>e.length>15&&e[11]==="/"&&e[0]==="a"&&e[1]==="p"&&e[2]==="p"&&e[3]==="l"&&e[4]==="i"&&e[5]==="c"&&e[6]==="a"&&e[7]==="t"&&e[8]==="i"&&e[9]==="o"&&e[10]==="n"&&e[12]==="j"&&e[13]==="s"&&e[14]==="o"&&e[15]==="n",DFn=e=>e.length>4&&e[4]==="/"&&e[0]==="t"&&e[1]==="e"&&e[2]==="x"&&e[3]==="t";xFn.exports={getResolveErrorBodyCallback:zEo,isContentTypeApplicationJson:RFn,isContentTypeText:DFn}});var FFn=z((_6c,nrr)=>{"use strict";var qEo=Dt("node:assert"),{Readable:$Eo}=trr(),{InvalidArgumentError:S2e,RequestAbortedError:kFn}=B0(),tM=tm(),{getResolveErrorBodyCallback:e1o}=rrr(),{AsyncResource:t1o}=Dt("node:async_hooks"),Zgt=class extends t1o{constructor(t,r){if(!t||typeof t!="object")throw new S2e("invalid opts");let{signal:s,method:a,opaque:o,body:g,onInfo:p,responseHeaders:f,throwOnError:m,highWaterMark:y}=t;try{if(typeof r!="function")throw new S2e("invalid callback");if(y&&(typeof y!="number"||y<0))throw new S2e("invalid highWaterMark");if(s&&typeof s.on!="function"&&typeof s.addEventListener!="function")throw new S2e("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new S2e("invalid method");if(p&&typeof p!="function")throw new S2e("invalid onInfo callback");super("UNDICI_REQUEST")}catch(B){throw tM.isStream(g)&&tM.destroy(g.on("error",tM.nop),B),B}this.method=a,this.responseHeaders=f||null,this.opaque=o||null,this.callback=r,this.res=null,this.abort=null,this.body=g,this.trailers={},this.context=null,this.onInfo=p||null,this.throwOnError=m,this.highWaterMark=y,this.signal=s,this.reason=null,this.removeAbortListener=null,tM.isStream(g)&&g.on("error",B=>{this.onError(B)}),this.signal&&(this.signal.aborted?this.reason=this.signal.reason??new kFn:this.removeAbortListener=tM.addAbortListener(this.signal,()=>{this.reason=this.signal.reason??new kFn,this.res?tM.destroy(this.res,this.reason):this.abort&&this.abort(this.reason),this.removeAbortListener&&(this.res?.off("close",this.removeAbortListener),this.removeAbortListener(),this.removeAbortListener=null)}))}onConnect(t,r){if(this.reason){t(this.reason);return}qEo(this.callback),this.abort=t,this.context=r}onHeaders(t,r,s,a){let{callback:o,opaque:g,abort:p,context:f,responseHeaders:m,highWaterMark:y}=this,B=m==="raw"?tM.parseRawHeaders(r):tM.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:B});return}let v=m==="raw"?tM.parseHeaders(r):B,G=v["content-type"],T=v["content-length"],O=new $Eo({resume:s,abort:p,contentType:G,contentLength:this.method!=="HEAD"&&T?Number(T):null,highWaterMark:y});this.removeAbortListener&&O.on("close",this.removeAbortListener),this.callback=null,this.res=O,o!==null&&(this.throwOnError&&t>=400?this.runInAsyncScope(e1o,null,{callback:o,body:O,contentType:G,statusCode:t,statusMessage:a,headers:B}):this.runInAsyncScope(o,null,null,{statusCode:t,headers:B,trailers:this.trailers,opaque:g,body:O,context:f}))}onData(t){return this.res.push(t)}onComplete(t){tM.parseHeaders(t,this.trailers),this.res.push(null)}onError(t){let{res:r,callback:s,body:a,opaque:o}=this;s&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(s,null,t,{opaque:o})})),r&&(this.res=null,queueMicrotask(()=>{tM.destroy(r,t)})),a&&(this.body=null,tM.destroy(a,t)),this.removeAbortListener&&(r?.off("close",this.removeAbortListener),this.removeAbortListener(),this.removeAbortListener=null)}};function GFn(e,t){if(t===void 0)return new Promise((r,s)=>{GFn.call(this,e,(a,o)=>a?s(a):r(o))});try{this.dispatch(e,new Zgt(e,t))}catch(r){if(typeof t!="function")throw r;let s=e?.opaque;queueMicrotask(()=>t(r,{opaque:s}))}}nrr.exports=GFn;nrr.exports.RequestHandler=Zgt});var PPe=z((y6c,VFn)=>{var{addAbortListener:r1o}=tm(),{RequestAbortedError:n1o}=B0(),w2e=Symbol("kListener"),IU=Symbol("kSignal");function ZFn(e){e.abort?e.abort(e[IU]?.reason):e.reason=e[IU]?.reason??new n1o,LFn(e)}function i1o(e,t){if(e.reason=null,e[IU]=null,e[w2e]=null,!!t){if(t.aborted){ZFn(e);return}e[IU]=t,e[w2e]=()=>{ZFn(e)},r1o(e[IU],e[w2e])}}function LFn(e){e[IU]&&("removeEventListener"in e[IU]?e[IU].removeEventListener("abort",e[w2e]):e[IU].removeListener("abort",e[w2e]),e[IU]=null,e[w2e]=null)}VFn.exports={addSignal:i1o,removeSignal:LFn}});var MFn=z((b6c,OFn)=>{"use strict";var s1o=Dt("node:assert"),{finished:o1o,PassThrough:a1o}=Dt("node:stream"),{InvalidArgumentError:T2e,InvalidReturnValueError:c1o}=B0(),JH=tm(),{getResolveErrorBodyCallback:l1o}=rrr(),{AsyncResource:u1o}=Dt("node:async_hooks"),{addSignal:g1o,removeSignal:WFn}=PPe(),irr=class extends u1o{constructor(t,r,s){if(!t||typeof t!="object")throw new T2e("invalid opts");let{signal:a,method:o,opaque:g,body:p,onInfo:f,responseHeaders:m,throwOnError:y}=t;try{if(typeof s!="function")throw new T2e("invalid callback");if(typeof r!="function")throw new T2e("invalid factory");if(a&&typeof a.on!="function"&&typeof a.addEventListener!="function")throw new T2e("signal must be an EventEmitter or EventTarget");if(o==="CONNECT")throw new T2e("invalid method");if(f&&typeof f!="function")throw new T2e("invalid onInfo callback");super("UNDICI_STREAM")}catch(B){throw JH.isStream(p)&&JH.destroy(p.on("error",JH.nop),B),B}this.responseHeaders=m||null,this.opaque=g||null,this.factory=r,this.callback=s,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=p,this.onInfo=f||null,this.throwOnError=y||!1,JH.isStream(p)&&p.on("error",B=>{this.onError(B)}),g1o(this,a)}onConnect(t,r){if(this.reason){t(this.reason);return}s1o(this.callback),this.abort=t,this.context=r}onHeaders(t,r,s,a){let{factory:o,opaque:g,context:p,callback:f,responseHeaders:m}=this,y=m==="raw"?JH.parseRawHeaders(r):JH.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:y});return}this.factory=null;let B;if(this.throwOnError&&t>=400){let T=(m==="raw"?JH.parseHeaders(r):y)["content-type"];B=new a1o,this.callback=null,this.runInAsyncScope(l1o,null,{callback:f,body:B,contentType:T,statusCode:t,statusMessage:a,headers:y})}else{if(o===null)return;if(B=this.runInAsyncScope(o,null,{statusCode:t,headers:y,opaque:g,context:p}),!B||typeof B.write!="function"||typeof B.end!="function"||typeof B.on!="function")throw new c1o("expected Writable");o1o(B,{readable:!1},G=>{let{callback:T,res:O,opaque:X,trailers:U,abort:le}=this;this.res=null,(G||!O.readable)&&JH.destroy(O,G),this.callback=null,this.runInAsyncScope(T,null,G||null,{opaque:X,trailers:U}),G&&le()})}return B.on("drain",s),this.res=B,(B.writableNeedDrain!==void 0?B.writableNeedDrain:B._writableState?.needDrain)!==!0}onData(t){let{res:r}=this;return r?r.write(t):!0}onComplete(t){let{res:r}=this;WFn(this),r&&(this.trailers=JH.parseHeaders(t),r.end())}onError(t){let{res:r,callback:s,opaque:a,body:o}=this;WFn(this),this.factory=null,r?(this.res=null,JH.destroy(r,t)):s&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(s,null,t,{opaque:a})})),o&&(this.body=null,JH.destroy(o,t))}};function PFn(e,t,r){if(r===void 0)return new Promise((s,a)=>{PFn.call(this,e,t,(o,g)=>o?a(o):s(g))});try{this.dispatch(e,new irr(e,t,r))}catch(s){if(typeof r!="function")throw s;let a=e?.opaque;queueMicrotask(()=>r(s,{opaque:a}))}}OFn.exports=PFn});var XFn=z((E6c,HFn)=>{"use strict";var{Readable:YFn,Duplex:A1o,PassThrough:d1o}=Dt("node:stream"),{InvalidArgumentError:OPe,InvalidReturnValueError:p1o,RequestAbortedError:srr}=B0(),rM=tm(),{AsyncResource:f1o}=Dt("node:async_hooks"),{addSignal:I1o,removeSignal:C1o}=PPe(),QFn=Dt("node:assert"),N2e=Symbol("resume"),orr=class extends YFn{constructor(){super({autoDestroy:!0}),this[N2e]=null}_read(){let{[N2e]:t}=this;t&&(this[N2e]=null,t())}_destroy(t,r){this._read(),r(t)}},arr=class extends YFn{constructor(t){super({autoDestroy:!0}),this[N2e]=t}_read(){this[N2e]()}_destroy(t,r){!t&&!this._readableState.endEmitted&&(t=new srr),r(t)}},crr=class extends f1o{constructor(t,r){if(!t||typeof t!="object")throw new OPe("invalid opts");if(typeof r!="function")throw new OPe("invalid handler");let{signal:s,method:a,opaque:o,onInfo:g,responseHeaders:p}=t;if(s&&typeof s.on!="function"&&typeof s.addEventListener!="function")throw new OPe("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new OPe("invalid method");if(g&&typeof g!="function")throw new OPe("invalid onInfo callback");super("UNDICI_PIPELINE"),this.opaque=o||null,this.responseHeaders=p||null,this.handler=r,this.abort=null,this.context=null,this.onInfo=g||null,this.req=new orr().on("error",rM.nop),this.ret=new A1o({readableObjectMode:t.objectMode,autoDestroy:!0,read:()=>{let{body:f}=this;f?.resume&&f.resume()},write:(f,m,y)=>{let{req:B}=this;B.push(f,m)||B._readableState.destroyed?y():B[N2e]=y},destroy:(f,m)=>{let{body:y,req:B,res:v,ret:G,abort:T}=this;!f&&!G._readableState.endEmitted&&(f=new srr),T&&f&&T(),rM.destroy(y,f),rM.destroy(B,f),rM.destroy(v,f),C1o(this),m(f)}}).on("prefinish",()=>{let{req:f}=this;f.push(null)}),this.res=null,I1o(this,s)}onConnect(t,r){let{ret:s,res:a}=this;if(this.reason){t(this.reason);return}QFn(!a,"pipeline cannot be retried"),QFn(!s.destroyed),this.abort=t,this.context=r}onHeaders(t,r,s){let{opaque:a,handler:o,context:g}=this;if(t<200){if(this.onInfo){let f=this.responseHeaders==="raw"?rM.parseRawHeaders(r):rM.parseHeaders(r);this.onInfo({statusCode:t,headers:f})}return}this.res=new arr(s);let p;try{this.handler=null;let f=this.responseHeaders==="raw"?rM.parseRawHeaders(r):rM.parseHeaders(r);p=this.runInAsyncScope(o,null,{statusCode:t,headers:f,opaque:a,body:this.res,context:g})}catch(f){throw this.res.on("error",rM.nop),f}if(!p||typeof p.on!="function")throw new p1o("expected Readable");p.on("data",f=>{let{ret:m,body:y}=this;!m.push(f)&&y.pause&&y.pause()}).on("error",f=>{let{ret:m}=this;rM.destroy(m,f)}).on("end",()=>{let{ret:f}=this;f.push(null)}).on("close",()=>{let{ret:f}=this;f._readableState.ended||rM.destroy(f,new srr)}),this.body=p}onData(t){let{res:r}=this;return r.push(t)}onComplete(t){let{res:r}=this;r.push(null)}onError(t){let{ret:r}=this;this.handler=null,rM.destroy(r,t)}};function m1o(e,t){try{let r=new crr(e,t);return this.dispatch({...e,body:r.req},r),r.ret}catch(r){return new d1o().destroy(r)}}HFn.exports=m1o});var qFn=z((B6c,zFn)=>{"use strict";var{InvalidArgumentError:lrr,SocketError:h1o}=B0(),{AsyncResource:_1o}=Dt("node:async_hooks"),JFn=tm(),{addSignal:y1o,removeSignal:UFn}=PPe(),KFn=Dt("node:assert"),urr=class extends _1o{constructor(t,r){if(!t||typeof t!="object")throw new lrr("invalid opts");if(typeof r!="function")throw new lrr("invalid callback");let{signal:s,opaque:a,responseHeaders:o}=t;if(s&&typeof s.on!="function"&&typeof s.addEventListener!="function")throw new lrr("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE"),this.responseHeaders=o||null,this.opaque=a||null,this.callback=r,this.abort=null,this.context=null,y1o(this,s)}onConnect(t,r){if(this.reason){t(this.reason);return}KFn(this.callback),this.abort=t,this.context=null}onHeaders(){throw new h1o("bad upgrade",null)}onUpgrade(t,r,s){KFn(t===101);let{callback:a,opaque:o,context:g}=this;UFn(this),this.callback=null;let p=this.responseHeaders==="raw"?JFn.parseRawHeaders(r):JFn.parseHeaders(r);this.runInAsyncScope(a,null,null,{headers:p,socket:s,opaque:o,context:g})}onError(t){let{callback:r,opaque:s}=this;UFn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:s})}))}};function jFn(e,t){if(t===void 0)return new Promise((r,s)=>{jFn.call(this,e,(a,o)=>a?s(a):r(o))});try{let r=new urr(e,t);this.dispatch({...e,method:e.method||"GET",upgrade:e.protocol||"Websocket"},r)}catch(r){if(typeof t!="function")throw r;let s=e?.opaque;queueMicrotask(()=>t(r,{opaque:s}))}}zFn.exports=jFn});var nZn=z((v6c,rZn)=>{"use strict";var b1o=Dt("node:assert"),{AsyncResource:E1o}=Dt("node:async_hooks"),{InvalidArgumentError:grr,SocketError:B1o}=B0(),$Fn=tm(),{addSignal:v1o,removeSignal:eZn}=PPe(),Arr=class extends E1o{constructor(t,r){if(!t||typeof t!="object")throw new grr("invalid opts");if(typeof r!="function")throw new grr("invalid callback");let{signal:s,opaque:a,responseHeaders:o}=t;if(s&&typeof s.on!="function"&&typeof s.addEventListener!="function")throw new grr("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT"),this.opaque=a||null,this.responseHeaders=o||null,this.callback=r,this.abort=null,v1o(this,s)}onConnect(t,r){if(this.reason){t(this.reason);return}b1o(this.callback),this.abort=t,this.context=r}onHeaders(){throw new B1o("bad connect",null)}onUpgrade(t,r,s){let{callback:a,opaque:o,context:g}=this;eZn(this),this.callback=null;let p=r;p!=null&&(p=this.responseHeaders==="raw"?$Fn.parseRawHeaders(r):$Fn.parseHeaders(r)),this.runInAsyncScope(a,null,null,{statusCode:t,headers:p,socket:s,opaque:o,context:g})}onError(t){let{callback:r,opaque:s}=this;eZn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:s})}))}};function tZn(e,t){if(t===void 0)return new Promise((r,s)=>{tZn.call(this,e,(a,o)=>a?s(a):r(o))});try{let r=new Arr(e,t);this.dispatch({...e,method:"CONNECT"},r)}catch(r){if(typeof t!="function")throw r;let s=e?.opaque;queueMicrotask(()=>t(r,{opaque:s}))}}rZn.exports=tZn});var iZn=z((S6c,R2e)=>{"use strict";R2e.exports.request=FFn();R2e.exports.stream=MFn();R2e.exports.pipeline=XFn();R2e.exports.upgrade=qFn();R2e.exports.connect=nZn()});var prr=z((w6c,sZn)=>{"use strict";var{UndiciError:S1o}=B0(),drr=class e extends S1o{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="MockNotMatchedError",this.message=t||"The request does not match any registered mock dispatches",this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}};sZn.exports={MockNotMatchedError:drr}});var D2e=z((T6c,oZn)=>{"use strict";oZn.exports={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected")}});var MPe=z((N6c,CZn)=>{"use strict";var{MockNotMatchedError:Vde}=prr(),{kDispatches:Lgt,kMockAgent:w1o,kOriginalDispatch:T1o,kOrigin:N1o,kGetNetConnect:R1o}=D2e(),{buildURL:D1o}=tm(),{STATUS_CODES:x1o}=Dt("node:http"),{types:{isPromise:k1o}}=Dt("node:util");function rz(e,t){return typeof e=="string"?e===t:e instanceof RegExp?e.test(t):typeof e=="function"?e(t)===!0:!1}function cZn(e){return Object.fromEntries(Object.entries(e).map(([t,r])=>[t.toLocaleLowerCase(),r]))}function lZn(e,t){if(Array.isArray(e)){for(let r=0;r"u")return!0;if(typeof t!="object"||typeof e.headers!="object")return!1;for(let[r,s]of Object.entries(e.headers)){let a=lZn(t,r);if(!rz(s,a))return!1}return!0}function aZn(e){if(typeof e!="string")return e;let t=e.split("?");if(t.length!==2)return e;let r=new URLSearchParams(t.pop());return r.sort(),[...t,r.toString()].join("?")}function G1o(e,{path:t,method:r,body:s,headers:a}){let o=rz(e.path,t),g=rz(e.method,r),p=typeof e.body<"u"?rz(e.body,s):!0,f=uZn(e,a);return o&&g&&p&&f}function gZn(e){return Buffer.isBuffer(e)||e instanceof Uint8Array||e instanceof ArrayBuffer?e:typeof e=="object"?JSON.stringify(e):e.toString()}function AZn(e,t){let r=t.query?D1o(t.path,t.query):t.path,s=typeof r=="string"?aZn(r):r,a=e.filter(({consumed:o})=>!o).filter(({path:o})=>rz(aZn(o),s));if(a.length===0)throw new Vde(`Mock dispatch not matched for path '${s}'`);if(a=a.filter(({method:o})=>rz(o,t.method)),a.length===0)throw new Vde(`Mock dispatch not matched for method '${t.method}' on path '${s}'`);if(a=a.filter(({body:o})=>typeof o<"u"?rz(o,t.body):!0),a.length===0)throw new Vde(`Mock dispatch not matched for body '${t.body}' on path '${s}'`);if(a=a.filter(o=>uZn(o,t.headers)),a.length===0){let o=typeof t.headers=="object"?JSON.stringify(t.headers):t.headers;throw new Vde(`Mock dispatch not matched for headers '${o}' on path '${s}'`)}return a[0]}function F1o(e,t,r){let s={timesInvoked:0,times:1,persist:!1,consumed:!1},a=typeof r=="function"?{callback:r}:{...r},o={...s,...t,pending:!0,data:{error:null,...a}};return e.push(o),o}function frr(e,t){let r=e.findIndex(s=>s.consumed?G1o(s,t):!1);r!==-1&&e.splice(r,1)}function dZn(e){let{path:t,method:r,body:s,headers:a,query:o}=e;return{path:t,method:r,body:s,headers:a,query:o}}function Irr(e){let t=Object.keys(e),r=[];for(let s=0;s=v,s.pending=B0?setTimeout(()=>{G(this[Lgt])},m):G(this[Lgt]);function G(O,X=o){let U=Array.isArray(e.headers)?Crr(e.headers):e.headers,le=typeof X=="function"?X({...e,headers:U}):X;if(k1o(le)){le.then(pe=>G(O,pe));return}let ae=gZn(le),ge=Irr(g),fe=Irr(p);t.onConnect?.(pe=>t.onError(pe),null),t.onHeaders?.(a,ge,T,pZn(a)),t.onData?.(Buffer.from(ae)),t.onComplete?.(fe),frr(O,r)}function T(){}return!0}function L1o(){let e=this[w1o],t=this[N1o],r=this[T1o];return function(a,o){if(e.isMockActive)try{fZn.call(this,a,o)}catch(g){if(g instanceof Vde){let p=e[R1o]();if(p===!1)throw new Vde(`${g.message}: subsequent request to origin ${t} was not allowed (net.connect disabled)`);if(IZn(p,t))r.call(this,a,o);else throw new Vde(`${g.message}: subsequent request to origin ${t} was not allowed (net.connect is not enabled for this origin)`)}else throw g}else r.call(this,a,o)}}function IZn(e,t){let r=new URL(t);return e===!0?!0:!!(Array.isArray(e)&&e.some(s=>rz(s,r.host)))}function V1o(e){if(e){let{agent:t,...r}=e;return r}}CZn.exports={getResponseData:gZn,getMockDispatch:AZn,addMockDispatch:F1o,deleteMockDispatch:frr,buildKey:dZn,generateKeyValues:Irr,matchValue:rz,getResponse:Z1o,getStatusText:pZn,mockDispatch:fZn,buildMockDispatch:L1o,checkNetConnect:IZn,buildMockOptions:V1o,getHeaderByName:lZn,buildHeadersFromArray:Crr}});var Brr=z((R6c,Err)=>{"use strict";var{getResponseData:W1o,buildKey:P1o,addMockDispatch:mrr}=MPe(),{kDispatches:Vgt,kDispatchKey:Wgt,kDefaultHeaders:hrr,kDefaultTrailers:_rr,kContentLength:yrr,kMockDispatch:Pgt}=D2e(),{InvalidArgumentError:CU}=B0(),{buildURL:O1o}=tm(),x2e=class{constructor(t){this[Pgt]=t}delay(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new CU("waitInMs must be a valid integer > 0");return this[Pgt].delay=t,this}persist(){return this[Pgt].persist=!0,this}times(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new CU("repeatTimes must be a valid integer > 0");return this[Pgt].times=t,this}},brr=class{constructor(t,r){if(typeof t!="object")throw new CU("opts must be an object");if(typeof t.path>"u")throw new CU("opts.path must be defined");if(typeof t.method>"u"&&(t.method="GET"),typeof t.path=="string")if(t.query)t.path=O1o(t.path,t.query);else{let s=new URL(t.path,"data://");t.path=s.pathname+s.search}typeof t.method=="string"&&(t.method=t.method.toUpperCase()),this[Wgt]=P1o(t),this[Vgt]=r,this[hrr]={},this[_rr]={},this[yrr]=!1}createMockScopeDispatchData({statusCode:t,data:r,responseOptions:s}){let a=W1o(r),o=this[yrr]?{"content-length":a.length}:{},g={...this[hrr],...o,...s.headers},p={...this[_rr],...s.trailers};return{statusCode:t,data:r,headers:g,trailers:p}}validateReplyParameters(t){if(typeof t.statusCode>"u")throw new CU("statusCode must be defined");if(typeof t.responseOptions!="object"||t.responseOptions===null)throw new CU("responseOptions must be an object")}reply(t){if(typeof t=="function"){let o=p=>{let f=t(p);if(typeof f!="object"||f===null)throw new CU("reply options callback must return an object");let m={data:"",responseOptions:{},...f};return this.validateReplyParameters(m),{...this.createMockScopeDispatchData(m)}},g=mrr(this[Vgt],this[Wgt],o);return new x2e(g)}let r={statusCode:t,data:arguments[1]===void 0?"":arguments[1],responseOptions:arguments[2]===void 0?{}:arguments[2]};this.validateReplyParameters(r);let s=this.createMockScopeDispatchData(r),a=mrr(this[Vgt],this[Wgt],s);return new x2e(a)}replyWithError(t){if(typeof t>"u")throw new CU("error must be defined");let r=mrr(this[Vgt],this[Wgt],{error:t});return new x2e(r)}defaultReplyHeaders(t){if(typeof t>"u")throw new CU("headers must be defined");return this[hrr]=t,this}defaultReplyTrailers(t){if(typeof t>"u")throw new CU("trailers must be defined");return this[_rr]=t,this}replyContentLength(){return this[yrr]=!0,this}};Err.exports.MockInterceptor=brr;Err.exports.MockScope=x2e});var wrr=z((D6c,BZn)=>{"use strict";var{promisify:M1o}=Dt("node:util"),Q1o=RPe(),{buildMockDispatch:Y1o}=MPe(),{kDispatches:mZn,kMockAgent:hZn,kClose:_Zn,kOriginalClose:yZn,kOrigin:bZn,kOriginalDispatch:H1o,kConnected:vrr}=D2e(),{MockInterceptor:X1o}=Brr(),EZn=j1(),{InvalidArgumentError:J1o}=B0(),Srr=class extends Q1o{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new J1o("Argument opts.agent must implement Agent");this[hZn]=r.agent,this[bZn]=t,this[mZn]=[],this[vrr]=1,this[H1o]=this.dispatch,this[yZn]=this.close.bind(this),this.dispatch=Y1o.call(this),this.close=this[_Zn]}get[EZn.kConnected](){return this[vrr]}intercept(t){return new X1o(t,this[mZn])}async[_Zn](){await M1o(this[yZn])(),this[vrr]=0,this[hZn][EZn.kClients].delete(this[bZn])}};BZn.exports=Srr});var Rrr=z((x6c,DZn)=>{"use strict";var{promisify:U1o}=Dt("node:util"),K1o=E2e(),{buildMockDispatch:j1o}=MPe(),{kDispatches:vZn,kMockAgent:SZn,kClose:wZn,kOriginalClose:TZn,kOrigin:NZn,kOriginalDispatch:z1o,kConnected:Trr}=D2e(),{MockInterceptor:q1o}=Brr(),RZn=j1(),{InvalidArgumentError:$1o}=B0(),Nrr=class extends K1o{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new $1o("Argument opts.agent must implement Agent");this[SZn]=r.agent,this[NZn]=t,this[vZn]=[],this[Trr]=1,this[z1o]=this.dispatch,this[TZn]=this.close.bind(this),this.dispatch=j1o.call(this),this.close=this[wZn]}get[RZn.kConnected](){return this[Trr]}intercept(t){return new q1o(t,this[vZn])}async[wZn](){await U1o(this[TZn])(),this[Trr]=0,this[SZn][RZn.kClients].delete(this[NZn])}};DZn.exports=Nrr});var kZn=z((G6c,xZn)=>{"use strict";var e2o={pronoun:"it",is:"is",was:"was",this:"this"},t2o={pronoun:"they",is:"are",was:"were",this:"these"};xZn.exports=class{constructor(t,r){this.singular=t,this.plural=r}pluralize(t){let r=t===1,s=r?e2o:t2o,a=r?this.singular:this.plural;return{...s,count:t,noun:a}}}});var FZn=z((Z6c,GZn)=>{"use strict";var{Transform:r2o}=Dt("node:stream"),{Console:n2o}=Dt("node:console"),i2o=process.versions.icu?"\u2705":"Y ",s2o=process.versions.icu?"\u274C":"N ";GZn.exports=class{constructor({disableColors:t}={}){this.transform=new r2o({transform(r,s,a){a(null,r)}}),this.logger=new n2o({stdout:this.transform,inspectOptions:{colors:!t&&!process.env.CI}})}format(t){let r=t.map(({method:s,path:a,data:{statusCode:o},persist:g,times:p,timesInvoked:f,origin:m})=>({Method:s,Origin:m,Path:a,"Status code":o,Persistent:g?i2o:s2o,Invocations:f,Remaining:g?1/0:p-f}));return this.logger.table(r),this.transform.read().toString()}}});var WZn=z((L6c,VZn)=>{"use strict";var{kClients:Wde}=j1(),o2o=B2e(),{kAgent:Drr,kMockAgentSet:Ogt,kMockAgentGet:ZZn,kDispatches:xrr,kIsMockActive:Mgt,kNetConnect:Pde,kGetNetConnect:a2o,kOptions:Qgt,kFactory:Ygt}=D2e(),c2o=wrr(),l2o=Rrr(),{matchValue:u2o,buildMockOptions:g2o}=MPe(),{InvalidArgumentError:LZn,UndiciError:A2o}=B0(),d2o=aPe(),p2o=kZn(),f2o=FZn(),krr=class extends d2o{constructor(t){if(super(t),this[Pde]=!0,this[Mgt]=!0,t?.agent&&typeof t.agent.dispatch!="function")throw new LZn("Argument opts.agent must implement Agent");let r=t?.agent?t.agent:new o2o(t);this[Drr]=r,this[Wde]=r[Wde],this[Qgt]=g2o(t)}get(t){let r=this[ZZn](t);return r||(r=this[Ygt](t),this[Ogt](t,r)),r}dispatch(t,r){return this.get(t.origin),this[Drr].dispatch(t,r)}async close(){await this[Drr].close(),this[Wde].clear()}deactivate(){this[Mgt]=!1}activate(){this[Mgt]=!0}enableNetConnect(t){if(typeof t=="string"||typeof t=="function"||t instanceof RegExp)Array.isArray(this[Pde])?this[Pde].push(t):this[Pde]=[t];else if(typeof t>"u")this[Pde]=!0;else throw new LZn("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[Pde]=!1}get isMockActive(){return this[Mgt]}[Ogt](t,r){this[Wde].set(t,r)}[Ygt](t){let r=Object.assign({agent:this},this[Qgt]);return this[Qgt]&&this[Qgt].connections===1?new c2o(t,r):new l2o(t,r)}[ZZn](t){let r=this[Wde].get(t);if(r)return r;if(typeof t!="string"){let s=this[Ygt]("http://localhost:9999");return this[Ogt](t,s),s}for(let[s,a]of Array.from(this[Wde]))if(a&&typeof s!="string"&&u2o(s,t)){let o=this[Ygt](t);return this[Ogt](t,o),o[xrr]=a[xrr],o}}[a2o](){return this[Pde]}pendingInterceptors(){let t=this[Wde];return Array.from(t.entries()).flatMap(([r,s])=>s[xrr].map(a=>({...a,origin:r}))).filter(({pending:r})=>r)}assertNoPendingInterceptors({pendingInterceptorsFormatter:t=new f2o}={}){let r=this.pendingInterceptors();if(r.length===0)return;let s=new p2o("interceptor","interceptors").pluralize(r.length);throw new A2o(` +`,"latin1"),r!==null&&a!==r){if(s[Itr])throw new Wde;process.emitWarning(new Wde)}t[tv].timeout&&t[tv].timeoutType===y2e&&t[tv].timeout.refresh&&t[tv].timeout.refresh(),s[Cie]()}}destroy(t){let{socket:r,client:s,abort:a}=this;r[mie]=!1,t&&(cf(s[Rk]<=1,"pipeline should only contain this request"),a(t))}};dGn.exports=wyo});var yGn=z((y6c,_Gn)=>{"use strict";var rQ=xt("node:assert"),{pipeline:kyo}=xt("node:stream"),ih=rm(),{RequestContentLengthMismatchError:_tr,RequestAbortedError:fGn,SocketError:vPe,InformationalError:ytr}=v0(),{kUrl:ygt,kReset:Egt,kClient:b2e,kRunning:Bgt,kPending:Gyo,kQueue:Pde,kPendingIdx:btr,kRunningIdx:IU,kError:XH,kSocket:fR,kStrictContentLength:Fyo,kOnError:Etr,kMaxConcurrentStreams:hGn,kHTTP2Session:YH,kResume:hie,kSize:Zyo,kHTTPContext:Lyo}=z1(),sz=Symbol("open streams"),IGn=!1,bgt;try{bgt=xt("node:http2")}catch{bgt={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:Vyo,HTTP2_HEADER_METHOD:Wyo,HTTP2_HEADER_PATH:Pyo,HTTP2_HEADER_SCHEME:Oyo,HTTP2_HEADER_CONTENT_LENGTH:Qyo,HTTP2_HEADER_EXPECT:Myo,HTTP2_HEADER_STATUS:Hyo}}=bgt;function Yyo(e){let t=[];for(let[r,s]of Object.entries(e))if(Array.isArray(s))for(let a of s)t.push(Buffer.from(r),Buffer.from(a));else t.push(Buffer.from(r),Buffer.from(s));return t}async function Xyo(e,t){e[fR]=t,IGn||(IGn=!0,process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"}));let r=bgt.connect(e[ygt],{createConnection:()=>t,peerMaxConcurrentStreams:e[hGn]});r[sz]=0,r[b2e]=e,r[fR]=t,ih.addListener(r,"error",Uyo),ih.addListener(r,"frameError",Kyo),ih.addListener(r,"end",jyo),ih.addListener(r,"goaway",zyo),ih.addListener(r,"close",function(){let{[b2e]:a}=this,{[fR]:o}=a,g=this[fR][XH]||this[XH]||new vPe("closed",ih.getSocketInfo(o));if(a[YH]=null,a.destroyed){rQ(a[Gyo]===0);let p=a[Pde].splice(a[IU]);for(let f=0;f{s=!0}),{version:"h2",defaultPipelining:1/0,write(...a){return $yo(e,...a)},resume(){Jyo(e)},destroy(a,o){s?queueMicrotask(o):t.destroy(a).on("close",o)},get destroyed(){return t.destroyed},busy(){return!1}}}function Jyo(e){let t=e[fR];t?.destroyed===!1&&(e[Zyo]===0&&e[hGn]===0?(t.unref(),e[YH].unref()):(t.ref(),e[YH].ref()))}function Uyo(e){rQ(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[fR][XH]=e,this[b2e][Etr](e)}function Kyo(e,t,r){if(r===0){let s=new ytr(`HTTP/2: "frameError" received - type ${e}, code ${t}`);this[fR][XH]=s,this[b2e][Etr](s)}}function jyo(){let e=new vPe("other side closed",ih.getSocketInfo(this[fR]));this.destroy(e),ih.destroy(this[fR],e)}function zyo(e){let t=this[XH]||new vPe(`HTTP/2: "GOAWAY" frame received with code ${e}`,ih.getSocketInfo(this)),r=this[b2e];r[fR]=null,r[Lyo]=null,this[YH]!=null&&(this[YH].destroy(t),this[YH]=null),ih.destroy(this[fR],t);let s=r[Pde][r[IU]];r[Pde][r[IU]++]=null,ih.errorRequest(r,s,t),r[btr]=r[IU],rQ(r[Bgt]===0),r.emit("disconnect",r[ygt],[r],t),r[hie]()}function qyo(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function $yo(e,t){let r=e[YH],{body:s,method:a,path:o,host:g,upgrade:p,expectContinue:f,signal:m,headers:y}=t;if(p)return ih.errorRequest(e,t,new Error("Upgrade not supported for H2")),!1;let B={};for(let ge=0;ge{t.aborted||t.completed||(ge=ge||new fGn,ih.errorRequest(e,t,ge),v!=null&&ih.destroy(v,ge),ih.destroy(s,ge),e[Pde][e[IU]++]=null,e[hie]())};try{t.onConnect(O)}catch(ge){ih.errorRequest(e,t,ge)}if(t.aborted)return!1;if(a==="CONNECT")return r.ref(),v=r.request(B,{endStream:!1,signal:m}),v.id&&!v.pending?(t.onUpgrade(null,null,v),++r[sz],e[Pde][e[IU]++]=null):v.once("ready",()=>{t.onUpgrade(null,null,v),++r[sz],e[Pde][e[IU]++]=null}),v.once("close",()=>{r[sz]-=1,r[sz]===0&&r.unref()}),!0;B[Pyo]=o,B[Oyo]="https";let X=a==="PUT"||a==="POST"||a==="PATCH";s&&typeof s.read=="function"&&s.read(0);let U=ih.bodyLength(s);if(U==null&&(U=t.contentLength),(U===0||!X)&&(U=null),qyo(a)&&U>0&&t.contentLength!=null&&t.contentLength!==U){if(e[Fyo])return ih.errorRequest(e,t,new _tr),!1;process.emitWarning(new _tr)}U!=null&&(rQ(s,"no body must not have content length"),B[Qyo]=`${U}`),r.ref();let le=a==="GET"||a==="HEAD"||s===null;return f?(B[Myo]="100-continue",v=r.request(B,{endStream:le,signal:m}),v.once("continue",ae)):(v=r.request(B,{endStream:le,signal:m}),ae()),++r[sz],v.once("response",ge=>{let{[Hyo]:fe,...pe}=ge;if(t.onResponseStarted(),t.aborted){let he=new fGn;ih.errorRequest(e,t,he),ih.destroy(v,he);return}t.onHeaders(Number(fe),Yyo(pe),v.resume.bind(v),"")===!1&&v.pause(),v.on("data",he=>{t.onData(he)===!1&&v.pause()})}),v.once("end",()=>{(v.state?.state==null||v.state.state<6)&&t.onComplete([]),r[sz]===0&&r.unref(),O(new ytr("HTTP/2: stream half-closed (remote)")),e[Pde][e[IU]++]=null,e[btr]=e[IU],e[hie]()}),v.once("close",()=>{r[sz]-=1,r[sz]===0&&r.unref()}),v.once("error",function(ge){O(ge)}),v.once("frameError",(ge,fe)=>{O(new ytr(`HTTP/2: "frameError" received - type ${ge}, code ${fe}`))}),!0;function ae(){!s||U===0?CGn(O,v,null,e,t,e[fR],U,X):ih.isBuffer(s)?CGn(O,v,s,e,t,e[fR],U,X):ih.isBlobLike(s)?typeof s.stream=="function"?mGn(O,v,s.stream(),e,t,e[fR],U,X):tbo(O,v,s,e,t,e[fR],U,X):ih.isStream(s)?ebo(O,e[fR],X,v,s,e,t,U):ih.isIterable(s)?mGn(O,v,s,e,t,e[fR],U,X):rQ(!1)}}function CGn(e,t,r,s,a,o,g,p){try{r!=null&&ih.isBuffer(r)&&(rQ(g===r.byteLength,"buffer body must have content length"),t.cork(),t.write(r),t.uncork(),t.end(),a.onBodySent(r)),p||(o[Egt]=!0),a.onRequestSent(),s[hie]()}catch(f){e(f)}}function ebo(e,t,r,s,a,o,g,p){rQ(p!==0||o[Bgt]===0,"stream body cannot be pipelined");let f=kyo(a,s,y=>{y?(ih.destroy(f,y),e(y)):(ih.removeAllListeners(f),g.onRequestSent(),r||(t[Egt]=!0),o[hie]())});ih.addListener(f,"data",m);function m(y){g.onBodySent(y)}}async function tbo(e,t,r,s,a,o,g,p){rQ(g===r.size,"blob body must have content length");try{if(g!=null&&g!==r.size)throw new _tr;let f=Buffer.from(await r.arrayBuffer());t.cork(),t.write(f),t.uncork(),t.end(),a.onBodySent(f),a.onRequestSent(),p||(o[Egt]=!0),s[hie]()}catch(f){e(f)}}async function mGn(e,t,r,s,a,o,g,p){rQ(g!==0||s[Bgt]===0,"iterator body cannot be pipelined");let f=null;function m(){if(f){let B=f;f=null,B()}}let y=()=>new Promise((B,v)=>{rQ(f===null),o[XH]?v(o[XH]):f=B});t.on("close",m).on("drain",m);try{for await(let B of r){if(o[XH])throw o[XH];let v=t.write(B);a.onBodySent(B),v||await y()}t.end(),a.onRequestSent(),p||(o[Egt]=!0),s[hie]()}catch(B){e(B)}finally{t.off("close",m).off("drain",m)}}_Gn.exports=Xyo});var Sgt=z((b6c,BGn)=>{"use strict";var CU=rm(),{kBodyUsed:SPe}=z1(),vtr=xt("node:assert"),{InvalidArgumentError:rbo}=v0(),nbo=xt("node:events"),ibo=[300,301,302,303,307,308],bGn=Symbol("body"),vgt=class{constructor(t){this[bGn]=t,this[SPe]=!1}async*[Symbol.asyncIterator](){vtr(!this[SPe],"disturbed"),this[SPe]=!0,yield*this[bGn]}},Btr=class{constructor(t,r,s,a){if(r!=null&&(!Number.isInteger(r)||r<0))throw new rbo("maxRedirections must be a positive number");CU.validateHandler(a,s.method,s.upgrade),this.dispatch=t,this.location=null,this.abort=null,this.opts={...s,maxRedirections:0},this.maxRedirections=r,this.handler=a,this.history=[],this.redirectionLimitReached=!1,CU.isStream(this.opts.body)?(CU.bodyLength(this.opts.body)===0&&this.opts.body.on("data",function(){vtr(!1)}),typeof this.opts.body.readableDidRead!="boolean"&&(this.opts.body[SPe]=!1,nbo.prototype.on.call(this.opts.body,"data",function(){this[SPe]=!0}))):this.opts.body&&typeof this.opts.body.pipeTo=="function"?this.opts.body=new vgt(this.opts.body):this.opts.body&&typeof this.opts.body!="string"&&!ArrayBuffer.isView(this.opts.body)&&CU.isIterable(this.opts.body)&&(this.opts.body=new vgt(this.opts.body))}onConnect(t){this.abort=t,this.handler.onConnect(t,{history:this.history})}onUpgrade(t,r,s){this.handler.onUpgrade(t,r,s)}onError(t){this.handler.onError(t)}onHeaders(t,r,s,a){if(this.location=this.history.length>=this.maxRedirections||CU.isDisturbed(this.opts.body)?null:sbo(t,r),this.opts.throwOnMaxRedirect&&this.history.length>=this.maxRedirections){this.request&&this.request.abort(new Error("max redirects")),this.redirectionLimitReached=!0,this.abort(new Error("max redirects"));return}if(this.opts.origin&&this.history.push(new URL(this.opts.path,this.opts.origin)),!this.location)return this.handler.onHeaders(t,r,s,a);let{origin:o,pathname:g,search:p}=CU.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),f=p?`${g}${p}`:g;this.opts.headers=obo(this.opts.headers,t===303,this.opts.origin!==o),this.opts.path=f,this.opts.origin=o,this.opts.maxRedirections=0,this.opts.query=null,t===303&&this.opts.method!=="HEAD"&&(this.opts.method="GET",this.opts.body=null)}onData(t){if(!this.location)return this.handler.onData(t)}onComplete(t){this.location?(this.location=null,this.abort=null,this.dispatch(this.opts,this)):this.handler.onComplete(t)}onBodySent(t){this.handler.onBodySent&&this.handler.onBodySent(t)}};function sbo(e,t){if(ibo.indexOf(e)===-1)return null;for(let r=0;r{"use strict";var abo=Sgt();function cbo({maxRedirections:e}){return t=>function(s,a){let{maxRedirections:o=e}=s;if(!o)return t(s,a);let g=new abo(t,o,s,a);return s={...s,maxRedirections:0},t(s,g)}}vGn.exports=cbo});var kPe=z((B6c,FGn)=>{"use strict";var oz=xt("node:assert"),DGn=xt("node:net"),lbo=xt("node:http"),Ode=rm(),{channels:E2e}=o2e(),ubo=Mxn(),gbo=u2e(),{InvalidArgumentError:oS,InformationalError:Abo,ClientDestroyedError:dbo}=v0(),pbo=APe(),{kUrl:mU,kServerName:_ie,kClient:fbo,kBusy:Str,kConnect:Ibo,kResuming:Qde,kRunning:DPe,kPending:xPe,kSize:RPe,kQueue:JH,kConnected:Cbo,kConnecting:B2e,kNeedDrain:bie,kKeepAliveDefaultTimeout:SGn,kHostHeader:mbo,kPendingIdx:UH,kRunningIdx:az,kError:hbo,kPipelining:Tgt,kKeepAliveTimeoutValue:_bo,kMaxHeadersSize:ybo,kKeepAliveMaxTimeout:bbo,kKeepAliveTimeoutThreshold:Ebo,kHeadersTimeout:Bbo,kBodyTimeout:vbo,kStrictContentLength:Sbo,kConnector:wPe,kMaxRedirections:wbo,kMaxRequests:wtr,kCounter:Tbo,kClose:Nbo,kDestroy:Rbo,kDispatch:Dbo,kInterceptors:wGn,kLocalAddress:TPe,kMaxResponseSize:xbo,kOnError:kbo,kHTTPContext:aS,kMaxConcurrentStreams:Gbo,kResume:NPe}=z1(),Fbo=pGn(),Zbo=yGn(),TGn=!1,yie=Symbol("kClosedResolve"),NGn=()=>{};function xGn(e){return e[Tgt]??e[aS]?.defaultPipelining??1}var Ttr=class extends gbo{constructor(t,{interceptors:r,maxHeaderSize:s,headersTimeout:a,socketTimeout:o,requestTimeout:g,connectTimeout:p,bodyTimeout:f,idleTimeout:m,keepAlive:y,keepAliveTimeout:B,maxKeepAliveTimeout:v,keepAliveMaxTimeout:k,keepAliveTimeoutThreshold:T,socketPath:O,pipelining:X,tls:U,strictContentLength:le,maxCachedSessions:ae,maxRedirections:ge,connect:fe,maxRequestsPerClient:pe,localAddress:he,maxResponseSize:be,autoSelectFamily:Te,autoSelectFamilyAttemptTimeout:ke,maxConcurrentStreams:x,allowH2:et}={}){if(super(),y!==void 0)throw new oS("unsupported keepAlive, use pipelining=0 instead");if(o!==void 0)throw new oS("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(g!==void 0)throw new oS("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(m!==void 0)throw new oS("unsupported idleTimeout, use keepAliveTimeout instead");if(v!==void 0)throw new oS("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(s!=null&&!Number.isFinite(s))throw new oS("invalid maxHeaderSize");if(O!=null&&typeof O!="string")throw new oS("invalid socketPath");if(p!=null&&(!Number.isFinite(p)||p<0))throw new oS("invalid connectTimeout");if(B!=null&&(!Number.isFinite(B)||B<=0))throw new oS("invalid keepAliveTimeout");if(k!=null&&(!Number.isFinite(k)||k<=0))throw new oS("invalid keepAliveMaxTimeout");if(T!=null&&!Number.isFinite(T))throw new oS("invalid keepAliveTimeoutThreshold");if(a!=null&&(!Number.isInteger(a)||a<0))throw new oS("headersTimeout must be a positive integer or zero");if(f!=null&&(!Number.isInteger(f)||f<0))throw new oS("bodyTimeout must be a positive integer or zero");if(fe!=null&&typeof fe!="function"&&typeof fe!="object")throw new oS("connect must be a function or an object");if(ge!=null&&(!Number.isInteger(ge)||ge<0))throw new oS("maxRedirections must be a positive number");if(pe!=null&&(!Number.isInteger(pe)||pe<0))throw new oS("maxRequestsPerClient must be a positive number");if(he!=null&&(typeof he!="string"||DGn.isIP(he)===0))throw new oS("localAddress must be valid string IP address");if(be!=null&&(!Number.isInteger(be)||be<-1))throw new oS("maxResponseSize must be a positive number");if(ke!=null&&(!Number.isInteger(ke)||ke<-1))throw new oS("autoSelectFamilyAttemptTimeout must be a positive number");if(et!=null&&typeof et!="boolean")throw new oS("allowH2 must be a valid boolean value");if(x!=null&&(typeof x!="number"||x<1))throw new oS("maxConcurrentStreams must be a positive integer, greater than 0");typeof fe!="function"&&(fe=pbo({...U,maxCachedSessions:ae,allowH2:et,socketPath:O,timeout:p,...Te?{autoSelectFamily:Te,autoSelectFamilyAttemptTimeout:ke}:void 0,...fe})),r?.Client&&Array.isArray(r.Client)?(this[wGn]=r.Client,TGn||(TGn=!0,process.emitWarning("Client.Options#interceptor is deprecated. Use Dispatcher#compose instead.",{code:"UNDICI-CLIENT-INTERCEPTOR-DEPRECATED"}))):this[wGn]=[Lbo({maxRedirections:ge})],this[mU]=Ode.parseOrigin(t),this[wPe]=fe,this[Tgt]=X??1,this[ybo]=s||lbo.maxHeaderSize,this[SGn]=B??4e3,this[bbo]=k??6e5,this[Ebo]=T??2e3,this[_bo]=this[SGn],this[_ie]=null,this[TPe]=he??null,this[Qde]=0,this[bie]=0,this[mbo]=`host: ${this[mU].hostname}${this[mU].port?`:${this[mU].port}`:""}\r +`,this[vbo]=f??3e5,this[Bbo]=a??3e5,this[Sbo]=le??!0,this[wbo]=ge,this[wtr]=pe,this[yie]=null,this[xbo]=be>-1?be:-1,this[Gbo]=x??100,this[aS]=null,this[JH]=[],this[az]=0,this[UH]=0,this[NPe]=Ue=>Ntr(this,Ue),this[kbo]=Ue=>kGn(this,Ue)}get pipelining(){return this[Tgt]}set pipelining(t){this[Tgt]=t,this[NPe](!0)}get[xPe](){return this[JH].length-this[UH]}get[DPe](){return this[UH]-this[az]}get[RPe](){return this[JH].length-this[az]}get[Cbo](){return!!this[aS]&&!this[B2e]&&!this[aS].destroyed}get[Str](){return!!(this[aS]?.busy(null)||this[RPe]>=(xGn(this)||1)||this[xPe]>0)}[Ibo](t){GGn(this),this.once("connect",t)}[Dbo](t,r){let s=t.origin||this[mU].origin,a=new ubo(s,t,r);return this[JH].push(a),this[Qde]||(Ode.bodyLength(a.body)==null&&Ode.isIterable(a.body)?(this[Qde]=1,queueMicrotask(()=>Ntr(this))):this[NPe](!0)),this[Qde]&&this[bie]!==2&&this[Str]&&(this[bie]=2),this[bie]<2}async[Nbo](){return new Promise(t=>{this[RPe]?this[yie]=t:t(null)})}async[Rbo](t){return new Promise(r=>{let s=this[JH].splice(this[UH]);for(let o=0;o{this[yie]&&(this[yie](),this[yie]=null),r(null)};this[aS]?(this[aS].destroy(t,a),this[aS]=null):queueMicrotask(a),this[NPe]()})}},Lbo=wgt();function kGn(e,t){if(e[DPe]===0&&t.code!=="UND_ERR_INFO"&&t.code!=="UND_ERR_SOCKET"){oz(e[UH]===e[az]);let r=e[JH].splice(e[az]);for(let s=0;s{e[wPe]({host:t,hostname:r,protocol:s,port:a,servername:e[_ie],localAddress:e[TPe]},(f,m)=>{f?p(f):g(m)})});if(e.destroyed){Ode.destroy(o.on("error",NGn),new dbo);return}oz(o);try{e[aS]=o.alpnProtocol==="h2"?await Zbo(e,o):await Fbo(e,o)}catch(g){throw o.destroy().on("error",NGn),g}e[B2e]=!1,o[Tbo]=0,o[wtr]=e[wtr],o[fbo]=e,o[hbo]=null,E2e.connected.hasSubscribers&&E2e.connected.publish({connectParams:{host:t,hostname:r,protocol:s,port:a,version:e[aS]?.version,servername:e[_ie],localAddress:e[TPe]},connector:e[wPe],socket:o}),e.emit("connect",e[mU],[e])}catch(o){if(e.destroyed)return;if(e[B2e]=!1,E2e.connectError.hasSubscribers&&E2e.connectError.publish({connectParams:{host:t,hostname:r,protocol:s,port:a,version:e[aS]?.version,servername:e[_ie],localAddress:e[TPe]},connector:e[wPe],error:o}),o.code==="ERR_TLS_CERT_ALTNAME_INVALID")for(oz(e[DPe]===0);e[xPe]>0&&e[JH][e[UH]].servername===e[_ie];){let g=e[JH][e[UH]++];Ode.errorRequest(e,g,o)}else kGn(e,o);e.emit("connectionError",e[mU],[e],o)}e[NPe]()}function RGn(e){e[bie]=0,e.emit("drain",e[mU],[e])}function Ntr(e,t){e[Qde]!==2&&(e[Qde]=2,Vbo(e,t),e[Qde]=0,e[az]>256&&(e[JH].splice(0,e[az]),e[UH]-=e[az],e[az]=0))}function Vbo(e,t){for(;;){if(e.destroyed){oz(e[xPe]===0);return}if(e[yie]&&!e[RPe]){e[yie](),e[yie]=null;return}if(e[aS]&&e[aS].resume(),e[Str])e[bie]=2;else if(e[bie]===2){t?(e[bie]=1,queueMicrotask(()=>RGn(e))):RGn(e);continue}if(e[xPe]===0||e[DPe]>=(xGn(e)||1))return;let r=e[JH][e[UH]];if(e[mU].protocol==="https:"&&e[_ie]!==r.servername){if(e[DPe]>0)return;e[_ie]=r.servername,e[aS]?.destroy(new Abo("servername changed"),()=>{e[aS]=null,Ntr(e)})}if(e[B2e])return;if(!e[aS]){GGn(e);return}if(e[aS].destroyed||e[aS].busy(r))return;!r.aborted&&e[aS].write(r)?e[UH]++:e[JH].splice(e[UH],1)}}FGn.exports=Ttr});var Rtr=z((S6c,ZGn)=>{"use strict";var Ngt=class{constructor(){this.bottom=0,this.top=0,this.list=new Array(2048),this.next=null}isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&2047)===this.bottom}push(t){this.list[this.top]=t,this.top=this.top+1&2047}shift(){let t=this.list[this.bottom];return t===void 0?null:(this.list[this.bottom]=void 0,this.bottom=this.bottom+1&2047,t)}};ZGn.exports=class{constructor(){this.head=this.tail=new Ngt}isEmpty(){return this.head.isEmpty()}push(t){this.head.isFull()&&(this.head=this.head.next=new Ngt),this.head.push(t)}shift(){let t=this.tail,r=t.shift();return t.isEmpty()&&t.next!==null&&(this.tail=t.next),r}}});var VGn=z((w6c,LGn)=>{var{kFree:Wbo,kConnected:Pbo,kPending:Obo,kQueued:Qbo,kRunning:Mbo,kSize:Hbo}=z1(),Mde=Symbol("pool"),Dtr=class{constructor(t){this[Mde]=t}get connected(){return this[Mde][Pbo]}get free(){return this[Mde][Wbo]}get pending(){return this[Mde][Obo]}get queued(){return this[Mde][Qbo]}get running(){return this[Mde][Mbo]}get size(){return this[Mde][Hbo]}};LGn.exports=Dtr});var Ltr=z((T6c,UGn)=>{"use strict";var Ybo=u2e(),Xbo=Rtr(),{kConnected:xtr,kSize:WGn,kRunning:PGn,kPending:OGn,kQueued:GPe,kBusy:Jbo,kFree:Ubo,kUrl:Kbo,kClose:jbo,kDestroy:zbo,kDispatch:qbo}=z1(),$bo=VGn(),YL=Symbol("clients"),WF=Symbol("needDrain"),FPe=Symbol("queue"),ktr=Symbol("closed resolve"),Gtr=Symbol("onDrain"),QGn=Symbol("onConnect"),MGn=Symbol("onDisconnect"),HGn=Symbol("onConnectionError"),Ftr=Symbol("get dispatcher"),XGn=Symbol("add client"),JGn=Symbol("remove client"),YGn=Symbol("stats"),Ztr=class extends Ybo{constructor(){super(),this[FPe]=new Xbo,this[YL]=[],this[GPe]=0;let t=this;this[Gtr]=function(s,a){let o=t[FPe],g=!1;for(;!g;){let p=o.shift();if(!p)break;t[GPe]--,g=!this.dispatch(p.opts,p.handler)}this[WF]=g,!this[WF]&&t[WF]&&(t[WF]=!1,t.emit("drain",s,[t,...a])),t[ktr]&&o.isEmpty()&&Promise.all(t[YL].map(p=>p.close())).then(t[ktr])},this[QGn]=(r,s)=>{t.emit("connect",r,[t,...s])},this[MGn]=(r,s,a)=>{t.emit("disconnect",r,[t,...s],a)},this[HGn]=(r,s,a)=>{t.emit("connectionError",r,[t,...s],a)},this[YGn]=new $bo(this)}get[Jbo](){return this[WF]}get[xtr](){return this[YL].filter(t=>t[xtr]).length}get[Ubo](){return this[YL].filter(t=>t[xtr]&&!t[WF]).length}get[OGn](){let t=this[GPe];for(let{[OGn]:r}of this[YL])t+=r;return t}get[PGn](){let t=0;for(let{[PGn]:r}of this[YL])t+=r;return t}get[WGn](){let t=this[GPe];for(let{[WGn]:r}of this[YL])t+=r;return t}get stats(){return this[YGn]}async[jbo](){this[FPe].isEmpty()?await Promise.all(this[YL].map(t=>t.close())):await new Promise(t=>{this[ktr]=t})}async[zbo](t){for(;;){let r=this[FPe].shift();if(!r)break;r.handler.onError(t)}await Promise.all(this[YL].map(r=>r.destroy(t)))}[qbo](t,r){let s=this[Ftr]();return s?s.dispatch(t,r)||(s[WF]=!0,this[WF]=!this[Ftr]()):(this[WF]=!0,this[FPe].push({opts:t,handler:r}),this[GPe]++),!this[WF]}[XGn](t){return t.on("drain",this[Gtr]).on("connect",this[QGn]).on("disconnect",this[MGn]).on("connectionError",this[HGn]),this[YL].push(t),this[WF]&&queueMicrotask(()=>{this[WF]&&this[Gtr](t[Kbo],[this,t])}),this}[JGn](t){t.close(()=>{let r=this[YL].indexOf(t);r!==-1&&this[YL].splice(r,1)}),this[WF]=this[YL].some(r=>!r[WF]&&r.closed!==!0&&r.destroyed!==!0)}};UGn.exports={PoolBase:Ztr,kClients:YL,kNeedDrain:WF,kAddClient:XGn,kRemoveClient:JGn,kGetDispatcher:Ftr}});var v2e=z((N6c,$Gn)=>{"use strict";var{PoolBase:eEo,kClients:KGn,kNeedDrain:tEo,kAddClient:rEo,kGetDispatcher:nEo}=Ltr(),iEo=kPe(),{InvalidArgumentError:Vtr}=v0(),jGn=rm(),{kUrl:zGn,kInterceptors:sEo}=z1(),oEo=APe(),Wtr=Symbol("options"),Ptr=Symbol("connections"),qGn=Symbol("factory");function aEo(e,t){return new iEo(e,t)}var Otr=class extends eEo{constructor(t,{connections:r,factory:s=aEo,connect:a,connectTimeout:o,tls:g,maxCachedSessions:p,socketPath:f,autoSelectFamily:m,autoSelectFamilyAttemptTimeout:y,allowH2:B,...v}={}){if(super(),r!=null&&(!Number.isFinite(r)||r<0))throw new Vtr("invalid connections");if(typeof s!="function")throw new Vtr("factory must be a function.");if(a!=null&&typeof a!="function"&&typeof a!="object")throw new Vtr("connect must be a function or an object");typeof a!="function"&&(a=oEo({...g,maxCachedSessions:p,allowH2:B,socketPath:f,timeout:o,...m?{autoSelectFamily:m,autoSelectFamilyAttemptTimeout:y}:void 0,...a})),this[sEo]=v.interceptors?.Pool&&Array.isArray(v.interceptors.Pool)?v.interceptors.Pool:[],this[Ptr]=r||null,this[zGn]=jGn.parseOrigin(t),this[Wtr]={...jGn.deepClone(v),connect:a,allowH2:B},this[Wtr].interceptors=v.interceptors?{...v.interceptors}:void 0,this[qGn]=s}[nEo](){for(let t of this[KGn])if(!t[tEo])return t;if(!this[Ptr]||this[KGn].length{"use strict";var{BalancedPoolMissingUpstreamError:cEo,InvalidArgumentError:lEo}=v0(),{PoolBase:uEo,kClients:Dk,kNeedDrain:ZPe,kAddClient:gEo,kRemoveClient:AEo,kGetDispatcher:dEo}=Ltr(),pEo=v2e(),{kUrl:Qtr,kInterceptors:fEo}=z1(),{parseOrigin:eFn}=rm(),tFn=Symbol("factory"),Rgt=Symbol("options"),rFn=Symbol("kGreatestCommonDivisor"),Hde=Symbol("kCurrentWeight"),Yde=Symbol("kIndex"),nQ=Symbol("kWeight"),Dgt=Symbol("kMaxWeightPerServer"),xgt=Symbol("kErrorPenalty");function IEo(e,t){if(e===0)return t;for(;t!==0;){let r=t;t=e%t,e=r}return e}function CEo(e,t){return new pEo(e,t)}var Mtr=class extends uEo{constructor(t=[],{factory:r=CEo,...s}={}){if(super(),this[Rgt]=s,this[Yde]=-1,this[Hde]=0,this[Dgt]=this[Rgt].maxWeightPerServer||100,this[xgt]=this[Rgt].errorPenalty||15,Array.isArray(t)||(t=[t]),typeof r!="function")throw new lEo("factory must be a function.");this[fEo]=s.interceptors?.BalancedPool&&Array.isArray(s.interceptors.BalancedPool)?s.interceptors.BalancedPool:[],this[tFn]=r;for(let a of t)this.addUpstream(a);this._updateBalancedPoolStats()}addUpstream(t){let r=eFn(t).origin;if(this[Dk].find(a=>a[Qtr].origin===r&&a.closed!==!0&&a.destroyed!==!0))return this;let s=this[tFn](r,Object.assign({},this[Rgt]));this[gEo](s),s.on("connect",()=>{s[nQ]=Math.min(this[Dgt],s[nQ]+this[xgt])}),s.on("connectionError",()=>{s[nQ]=Math.max(1,s[nQ]-this[xgt]),this._updateBalancedPoolStats()}),s.on("disconnect",(...a)=>{let o=a[2];o&&o.code==="UND_ERR_SOCKET"&&(s[nQ]=Math.max(1,s[nQ]-this[xgt]),this._updateBalancedPoolStats())});for(let a of this[Dk])a[nQ]=this[Dgt];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){let t=0;for(let r=0;ra[Qtr].origin===r&&a.closed!==!0&&a.destroyed!==!0);return s&&this[AEo](s),this}get upstreams(){return this[Dk].filter(t=>t.closed!==!0&&t.destroyed!==!0).map(t=>t[Qtr].origin)}[dEo](){if(this[Dk].length===0)throw new cEo;if(!this[Dk].find(o=>!o[ZPe]&&o.closed!==!0&&o.destroyed!==!0)||this[Dk].map(o=>o[ZPe]).reduce((o,g)=>o&&g,!0))return;let s=0,a=this[Dk].findIndex(o=>!o[ZPe]);for(;s++this[Dk][a][nQ]&&!o[ZPe]&&(a=this[Yde]),this[Yde]===0&&(this[Hde]=this[Hde]-this[rFn],this[Hde]<=0&&(this[Hde]=this[Dgt])),o[nQ]>=this[Hde]&&!o[ZPe])return o}return this[Hde]=this[Dk][a][nQ],this[Yde]=a,this[Dk][a]}};nFn.exports=Mtr});var S2e=z((D6c,gFn)=>{"use strict";var{InvalidArgumentError:kgt}=v0(),{kClients:Eie,kRunning:sFn,kClose:mEo,kDestroy:hEo,kDispatch:_Eo,kInterceptors:yEo}=z1(),bEo=u2e(),EEo=v2e(),BEo=kPe(),vEo=rm(),SEo=wgt(),oFn=Symbol("onConnect"),aFn=Symbol("onDisconnect"),cFn=Symbol("onConnectionError"),wEo=Symbol("maxRedirections"),lFn=Symbol("onDrain"),uFn=Symbol("factory"),Htr=Symbol("options");function TEo(e,t){return t&&t.connections===1?new BEo(e,t):new EEo(e,t)}var Ytr=class extends bEo{constructor({factory:t=TEo,maxRedirections:r=0,connect:s,...a}={}){if(super(),typeof t!="function")throw new kgt("factory must be a function.");if(s!=null&&typeof s!="function"&&typeof s!="object")throw new kgt("connect must be a function or an object");if(!Number.isInteger(r)||r<0)throw new kgt("maxRedirections must be a positive number");s&&typeof s!="function"&&(s={...s}),this[yEo]=a.interceptors?.Agent&&Array.isArray(a.interceptors.Agent)?a.interceptors.Agent:[SEo({maxRedirections:r})],this[Htr]={...vEo.deepClone(a),connect:s},this[Htr].interceptors=a.interceptors?{...a.interceptors}:void 0,this[wEo]=r,this[uFn]=t,this[Eie]=new Map,this[lFn]=(o,g)=>{this.emit("drain",o,[this,...g])},this[oFn]=(o,g)=>{this.emit("connect",o,[this,...g])},this[aFn]=(o,g,p)=>{this.emit("disconnect",o,[this,...g],p)},this[cFn]=(o,g,p)=>{this.emit("connectionError",o,[this,...g],p)}}get[sFn](){let t=0;for(let r of this[Eie].values())t+=r[sFn];return t}[_Eo](t,r){let s;if(t.origin&&(typeof t.origin=="string"||t.origin instanceof URL))s=String(t.origin);else throw new kgt("opts.origin must be a non-empty string or URL.");let a=this[Eie].get(s);return a||(a=this[uFn](t.origin,this[Htr]).on("drain",this[lFn]).on("connect",this[oFn]).on("disconnect",this[aFn]).on("connectionError",this[cFn]),this[Eie].set(s,a)),a.dispatch(t,r)}async[mEo](){let t=[];for(let r of this[Eie].values())t.push(r.close());this[Eie].clear(),await Promise.all(t)}async[hEo](t){let r=[];for(let s of this[Eie].values())r.push(s.destroy(t));this[Eie].clear(),await Promise.all(r)}};gFn.exports=Ytr});var Utr=z((x6c,fFn)=>{"use strict";var{kProxy:NEo,kClose:REo,kDestroy:DEo,kInterceptors:xEo}=z1(),{URL:LPe}=xt("node:url"),kEo=S2e(),GEo=v2e(),FEo=u2e(),{InvalidArgumentError:Zgt,RequestAbortedError:ZEo,SecureProxyConnectionError:LEo}=v0(),AFn=APe(),Ggt=Symbol("proxy agent"),Fgt=Symbol("proxy client"),VPe=Symbol("proxy headers"),Xtr=Symbol("request tls settings"),dFn=Symbol("proxy tls settings"),pFn=Symbol("connect endpoint function");function VEo(e){return e==="https:"?443:80}function WEo(e,t){return new GEo(e,t)}var PEo=()=>{},Jtr=class extends FEo{constructor(t){if(super(),!t||typeof t=="object"&&!(t instanceof LPe)&&!t.uri)throw new Zgt("Proxy uri is mandatory");let{clientFactory:r=WEo}=t;if(typeof r!="function")throw new Zgt("Proxy opts.clientFactory must be a function.");let s=this.#e(t),{href:a,origin:o,port:g,protocol:p,username:f,password:m,hostname:y}=s;if(this[NEo]={uri:a,protocol:p},this[xEo]=t.interceptors?.ProxyAgent&&Array.isArray(t.interceptors.ProxyAgent)?t.interceptors.ProxyAgent:[],this[Xtr]=t.requestTls,this[dFn]=t.proxyTls,this[VPe]=t.headers||{},t.auth&&t.token)throw new Zgt("opts.auth cannot be used in combination with opts.token");t.auth?this[VPe]["proxy-authorization"]=`Basic ${t.auth}`:t.token?this[VPe]["proxy-authorization"]=t.token:f&&m&&(this[VPe]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(f)}:${decodeURIComponent(m)}`).toString("base64")}`);let B=AFn({...t.proxyTls});this[pFn]=AFn({...t.requestTls}),this[Fgt]=r(s,{connect:B}),this[Ggt]=new kEo({...t,connect:async(v,k)=>{let T=v.host;v.port||(T+=`:${VEo(v.protocol)}`);try{let{socket:O,statusCode:X}=await this[Fgt].connect({origin:o,port:g,path:T,signal:v.signal,headers:{...this[VPe],host:v.host},servername:this[dFn]?.servername||y});if(X!==200&&(O.on("error",PEo).destroy(),k(new ZEo(`Proxy response (${X}) !== 200 when HTTP Tunneling`))),v.protocol!=="https:"){k(null,O);return}let U;this[Xtr]?U=this[Xtr].servername:U=v.servername,this[pFn]({...v,servername:U,httpSocket:O},k)}catch(O){O.code==="ERR_TLS_CERT_ALTNAME_INVALID"?k(new LEo(O)):k(O)}}})}dispatch(t,r){let s=OEo(t.headers);if(QEo(s),s&&!("host"in s)&&!("Host"in s)){let{host:a}=new LPe(t.origin);s.host=a}return this[Ggt].dispatch({...t,headers:s},r)}#e(t){return typeof t=="string"?new LPe(t):t instanceof LPe?t:new LPe(t.uri)}async[REo](){await this[Ggt].close(),await this[Fgt].close()}async[DEo](){await this[Ggt].destroy(),await this[Fgt].destroy()}};function OEo(e){if(Array.isArray(e)){let t={};for(let r=0;rr.toLowerCase()==="proxy-authorization"))throw new Zgt("Proxy-Authorization should be sent in ProxyAgent constructor")}fFn.exports=Jtr});var yFn=z((k6c,_Fn)=>{"use strict";var MEo=u2e(),{kClose:HEo,kDestroy:YEo,kClosed:IFn,kDestroyed:CFn,kDispatch:XEo,kNoProxyAgent:WPe,kHttpProxyAgent:Bie,kHttpsProxyAgent:Xde}=z1(),mFn=Utr(),JEo=S2e(),UEo={"http:":80,"https:":443},hFn=!1,Ktr=class extends MEo{#e=null;#t=null;#r=null;constructor(t={}){super(),this.#r=t,hFn||(hFn=!0,process.emitWarning("EnvHttpProxyAgent is experimental, expect them to change at any time.",{code:"UNDICI-EHPA"}));let{httpProxy:r,httpsProxy:s,noProxy:a,...o}=t;this[WPe]=new JEo(o);let g=r??process.env.http_proxy??process.env.HTTP_PROXY;g?this[Bie]=new mFn({...o,uri:g}):this[Bie]=this[WPe];let p=s??process.env.https_proxy??process.env.HTTPS_PROXY;p?this[Xde]=new mFn({...o,uri:p}):this[Xde]=this[Bie],this.#a()}[XEo](t,r){let s=new URL(t.origin);return this.#n(s).dispatch(t,r)}async[HEo](){await this[WPe].close(),this[Bie][IFn]||await this[Bie].close(),this[Xde][IFn]||await this[Xde].close()}async[YEo](t){await this[WPe].destroy(t),this[Bie][CFn]||await this[Bie].destroy(t),this[Xde][CFn]||await this[Xde].destroy(t)}#n(t){let{protocol:r,host:s,port:a}=t;return s=s.replace(/:\d*$/,"").toLowerCase(),a=Number.parseInt(a,10)||UEo[r]||0,this.#i(s,a)?r==="https:"?this[Xde]:this[Bie]:this[WPe]}#i(t,r){if(this.#s&&this.#a(),this.#t.length===0)return!0;if(this.#e==="*")return!1;for(let s=0;s{"use strict";var w2e=xt("node:assert"),{kRetryHandlerDefaultRetry:bFn}=z1(),{RequestRetryError:PPe}=v0(),{isDisturbed:EFn,parseHeaders:KEo,parseRangeHeader:BFn,wrapRequestBody:jEo}=rm();function zEo(e){let t=Date.now();return new Date(e).getTime()-t}var jtr=class e{constructor(t,r){let{retryOptions:s,...a}=t,{retry:o,maxRetries:g,maxTimeout:p,minTimeout:f,timeoutFactor:m,methods:y,errorCodes:B,retryAfter:v,statusCodes:k}=s??{};this.dispatch=r.dispatch,this.handler=r.handler,this.opts={...a,body:jEo(t.body)},this.abort=null,this.aborted=!1,this.retryOpts={retry:o??e[bFn],retryAfter:v??!0,maxTimeout:p??30*1e3,minTimeout:f??500,timeoutFactor:m??2,maxRetries:g??5,methods:y??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:k??[500,502,503,504,429],errorCodes:B??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE","UND_ERR_SOCKET"]},this.retryCount=0,this.retryCountCheckpoint=0,this.start=0,this.end=null,this.etag=null,this.resume=null,this.handler.onConnect(T=>{this.aborted=!0,this.abort?this.abort(T):this.reason=T})}onRequestSent(){this.handler.onRequestSent&&this.handler.onRequestSent()}onUpgrade(t,r,s){this.handler.onUpgrade&&this.handler.onUpgrade(t,r,s)}onConnect(t){this.aborted?t(this.reason):this.abort=t}onBodySent(t){if(this.handler.onBodySent)return this.handler.onBodySent(t)}static[bFn](t,{state:r,opts:s},a){let{statusCode:o,code:g,headers:p}=t,{method:f,retryOptions:m}=s,{maxRetries:y,minTimeout:B,maxTimeout:v,timeoutFactor:k,statusCodes:T,errorCodes:O,methods:X}=m,{counter:U}=r;if(g&&g!=="UND_ERR_REQ_RETRY"&&!O.includes(g)){a(t);return}if(Array.isArray(X)&&!X.includes(f)){a(t);return}if(o!=null&&Array.isArray(T)&&!T.includes(o)){a(t);return}if(U>y){a(t);return}let le=p?.["retry-after"];le&&(le=Number(le),le=Number.isNaN(le)?zEo(le):le*1e3);let ae=le>0?Math.min(le,v):Math.min(B*k**(U-1),v);setTimeout(()=>a(null),ae)}onHeaders(t,r,s,a){let o=KEo(r);if(this.retryCount+=1,t>=300)return this.retryOpts.statusCodes.includes(t)===!1?this.handler.onHeaders(t,r,s,a):(this.abort(new PPe("Request failed",t,{headers:o,data:{count:this.retryCount}})),!1);if(this.resume!=null){if(this.resume=null,t!==206&&(this.start>0||t!==200))return this.abort(new PPe("server does not support the range header and the payload was partially consumed",t,{headers:o,data:{count:this.retryCount}})),!1;let p=BFn(o["content-range"]);if(!p)return this.abort(new PPe("Content-Range mismatch",t,{headers:o,data:{count:this.retryCount}})),!1;if(this.etag!=null&&this.etag!==o.etag)return this.abort(new PPe("ETag mismatch",t,{headers:o,data:{count:this.retryCount}})),!1;let{start:f,size:m,end:y=m}=p;return w2e(this.start===f,"content-range mismatch"),w2e(this.end==null||this.end===y,"content-range mismatch"),this.resume=s,!0}if(this.end==null){if(t===206){let p=BFn(o["content-range"]);if(p==null)return this.handler.onHeaders(t,r,s,a);let{start:f,size:m,end:y=m}=p;w2e(f!=null&&Number.isFinite(f),"content-range mismatch"),w2e(y!=null&&Number.isFinite(y),"invalid content-length"),this.start=f,this.end=y}if(this.end==null){let p=o["content-length"];this.end=p!=null?Number(p):null}return w2e(Number.isFinite(this.start)),w2e(this.end==null||Number.isFinite(this.end),"invalid content-length"),this.resume=s,this.etag=o.etag!=null?o.etag:null,this.etag!=null&&this.etag.startsWith("W/")&&(this.etag=null),this.handler.onHeaders(t,r,s,a)}let g=new PPe("Request failed",t,{headers:o,data:{count:this.retryCount}});return this.abort(g),!1}onData(t){return this.start+=t.length,this.handler.onData(t)}onComplete(t){return this.retryCount=0,this.handler.onComplete(t)}onError(t){if(this.aborted||EFn(this.opts.body))return this.handler.onError(t);this.retryCount-this.retryCountCheckpoint>0?this.retryCount=this.retryCountCheckpoint+(this.retryCount-this.retryCountCheckpoint):this.retryCount+=1,this.retryOpts.retry(t,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},r.bind(this));function r(s){if(s!=null||this.aborted||EFn(this.opts.body))return this.handler.onError(s);if(this.start!==0){let a={range:`bytes=${this.start}-${this.end??""}`};this.etag!=null&&(a["if-match"]=this.etag),this.opts={...this.opts,headers:{...this.opts.headers,...a}}}try{this.retryCountCheckpoint=this.retryCount,this.dispatch(this.opts,this)}catch(a){this.handler.onError(a)}}}};vFn.exports=jtr});var wFn=z((F6c,SFn)=>{"use strict";var qEo=uPe(),$Eo=Lgt(),ztr=class extends qEo{#e=null;#t=null;constructor(t,r={}){super(r),this.#e=t,this.#t=r}dispatch(t,r){let s=new $Eo({...t,retryOptions:this.#t},{dispatch:this.#e.dispatch.bind(this.#e),handler:r});return this.#e.dispatch(t,s)}close(){return this.#e.close()}destroy(){return this.#e.destroy()}};SFn.exports=ztr});var irr=z((Z6c,ZFn)=>{"use strict";var xFn=xt("node:assert"),{Readable:e1o}=xt("node:stream"),{RequestAbortedError:kFn,NotSupportedError:t1o,InvalidArgumentError:r1o,AbortError:qtr}=v0(),GFn=rm(),{ReadableStreamFrom:n1o}=rm(),WW=Symbol("kConsume"),OPe=Symbol("kReading"),vie=Symbol("kBody"),TFn=Symbol("kAbort"),FFn=Symbol("kContentType"),NFn=Symbol("kContentLength"),i1o=()=>{},$tr=class extends e1o{constructor({resume:t,abort:r,contentType:s="",contentLength:a,highWaterMark:o=64*1024}){super({autoDestroy:!0,read:t,highWaterMark:o}),this._readableState.dataEmitted=!1,this[TFn]=r,this[WW]=null,this[vie]=null,this[FFn]=s,this[NFn]=a,this[OPe]=!1}destroy(t){return!t&&!this._readableState.endEmitted&&(t=new kFn),t&&this[TFn](),super.destroy(t)}_destroy(t,r){this[OPe]?r(t):setImmediate(()=>{r(t)})}on(t,...r){return(t==="data"||t==="readable")&&(this[OPe]=!0),super.on(t,...r)}addListener(t,...r){return this.on(t,...r)}off(t,...r){let s=super.off(t,...r);return(t==="data"||t==="readable")&&(this[OPe]=this.listenerCount("data")>0||this.listenerCount("readable")>0),s}removeListener(t,...r){return this.off(t,...r)}push(t){return this[WW]&&t!==null?(rrr(this[WW],t),this[OPe]?super.push(t):!0):super.push(t)}async text(){return QPe(this,"text")}async json(){return QPe(this,"json")}async blob(){return QPe(this,"blob")}async bytes(){return QPe(this,"bytes")}async arrayBuffer(){return QPe(this,"arrayBuffer")}async formData(){throw new t1o}get bodyUsed(){return GFn.isDisturbed(this)}get body(){return this[vie]||(this[vie]=n1o(this),this[WW]&&(this[vie].getReader(),xFn(this[vie].locked))),this[vie]}async dump(t){let r=Number.isFinite(t?.limit)?t.limit:131072,s=t?.signal;if(s!=null&&(typeof s!="object"||!("aborted"in s)))throw new r1o("signal must be an AbortSignal");return s?.throwIfAborted(),this._readableState.closeEmitted?null:await new Promise((a,o)=>{this[NFn]>r&&this.destroy(new qtr);let g=()=>{this.destroy(s.reason??new qtr)};s?.addEventListener("abort",g),this.on("close",function(){s?.removeEventListener("abort",g),s?.aborted?o(s.reason??new qtr):a(null)}).on("error",i1o).on("data",function(p){r-=p.length,r<=0&&this.destroy()}).resume()})}};function s1o(e){return e[vie]&&e[vie].locked===!0||e[WW]}function o1o(e){return GFn.isDisturbed(e)||s1o(e)}async function QPe(e,t){return xFn(!e[WW]),new Promise((r,s)=>{if(o1o(e)){let a=e._readableState;a.destroyed&&a.closeEmitted===!1?e.on("error",o=>{s(o)}).on("close",()=>{s(new TypeError("unusable"))}):s(a.errored??new TypeError("unusable"))}else queueMicrotask(()=>{e[WW]={type:t,stream:e,resolve:r,reject:s,length:0,body:[]},e.on("error",function(a){nrr(this[WW],a)}).on("close",function(){this[WW].body!==null&&nrr(this[WW],new kFn)}),a1o(e[WW])})})}function a1o(e){if(e.body===null)return;let{_readableState:t}=e.stream;if(t.bufferIndex){let r=t.bufferIndex,s=t.buffer.length;for(let a=r;a2&&r[0]===239&&r[1]===187&&r[2]===191?3:0;return r.utf8Slice(a,s)}function RFn(e,t){if(e.length===0||t===0)return new Uint8Array(0);if(e.length===1)return new Uint8Array(e[0]);let r=new Uint8Array(Buffer.allocUnsafeSlow(t).buffer),s=0;for(let a=0;a{var c1o=xt("node:assert"),{ResponseStatusCodeError:LFn}=v0(),{chunksDecode:VFn}=irr(),l1o=128*1024;async function u1o({callback:e,body:t,contentType:r,statusCode:s,statusMessage:a,headers:o}){c1o(t);let g=[],p=0;try{for await(let B of t)if(g.push(B),p+=B.length,p>l1o){g=[],p=0;break}}catch{g=[],p=0}let f=`Response status code ${s}${a?`: ${a}`:""}`;if(s===204||!r||!p){queueMicrotask(()=>e(new LFn(f,s,o)));return}let m=Error.stackTraceLimit;Error.stackTraceLimit=0;let y;try{WFn(r)?y=JSON.parse(VFn(g,p)):PFn(r)&&(y=VFn(g,p))}catch{}finally{Error.stackTraceLimit=m}queueMicrotask(()=>e(new LFn(f,s,o,y)))}var WFn=e=>e.length>15&&e[11]==="/"&&e[0]==="a"&&e[1]==="p"&&e[2]==="p"&&e[3]==="l"&&e[4]==="i"&&e[5]==="c"&&e[6]==="a"&&e[7]==="t"&&e[8]==="i"&&e[9]==="o"&&e[10]==="n"&&e[12]==="j"&&e[13]==="s"&&e[14]==="o"&&e[15]==="n",PFn=e=>e.length>4&&e[4]==="/"&&e[0]==="t"&&e[1]==="e"&&e[2]==="x"&&e[3]==="t";OFn.exports={getResolveErrorBodyCallback:u1o,isContentTypeApplicationJson:WFn,isContentTypeText:PFn}});var HFn=z((V6c,orr)=>{"use strict";var g1o=xt("node:assert"),{Readable:A1o}=irr(),{InvalidArgumentError:T2e,RequestAbortedError:QFn}=v0(),iQ=rm(),{getResolveErrorBodyCallback:d1o}=srr(),{AsyncResource:p1o}=xt("node:async_hooks"),Vgt=class extends p1o{constructor(t,r){if(!t||typeof t!="object")throw new T2e("invalid opts");let{signal:s,method:a,opaque:o,body:g,onInfo:p,responseHeaders:f,throwOnError:m,highWaterMark:y}=t;try{if(typeof r!="function")throw new T2e("invalid callback");if(y&&(typeof y!="number"||y<0))throw new T2e("invalid highWaterMark");if(s&&typeof s.on!="function"&&typeof s.addEventListener!="function")throw new T2e("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new T2e("invalid method");if(p&&typeof p!="function")throw new T2e("invalid onInfo callback");super("UNDICI_REQUEST")}catch(B){throw iQ.isStream(g)&&iQ.destroy(g.on("error",iQ.nop),B),B}this.method=a,this.responseHeaders=f||null,this.opaque=o||null,this.callback=r,this.res=null,this.abort=null,this.body=g,this.trailers={},this.context=null,this.onInfo=p||null,this.throwOnError=m,this.highWaterMark=y,this.signal=s,this.reason=null,this.removeAbortListener=null,iQ.isStream(g)&&g.on("error",B=>{this.onError(B)}),this.signal&&(this.signal.aborted?this.reason=this.signal.reason??new QFn:this.removeAbortListener=iQ.addAbortListener(this.signal,()=>{this.reason=this.signal.reason??new QFn,this.res?iQ.destroy(this.res,this.reason):this.abort&&this.abort(this.reason),this.removeAbortListener&&(this.res?.off("close",this.removeAbortListener),this.removeAbortListener(),this.removeAbortListener=null)}))}onConnect(t,r){if(this.reason){t(this.reason);return}g1o(this.callback),this.abort=t,this.context=r}onHeaders(t,r,s,a){let{callback:o,opaque:g,abort:p,context:f,responseHeaders:m,highWaterMark:y}=this,B=m==="raw"?iQ.parseRawHeaders(r):iQ.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:B});return}let v=m==="raw"?iQ.parseHeaders(r):B,k=v["content-type"],T=v["content-length"],O=new A1o({resume:s,abort:p,contentType:k,contentLength:this.method!=="HEAD"&&T?Number(T):null,highWaterMark:y});this.removeAbortListener&&O.on("close",this.removeAbortListener),this.callback=null,this.res=O,o!==null&&(this.throwOnError&&t>=400?this.runInAsyncScope(d1o,null,{callback:o,body:O,contentType:k,statusCode:t,statusMessage:a,headers:B}):this.runInAsyncScope(o,null,null,{statusCode:t,headers:B,trailers:this.trailers,opaque:g,body:O,context:f}))}onData(t){return this.res.push(t)}onComplete(t){iQ.parseHeaders(t,this.trailers),this.res.push(null)}onError(t){let{res:r,callback:s,body:a,opaque:o}=this;s&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(s,null,t,{opaque:o})})),r&&(this.res=null,queueMicrotask(()=>{iQ.destroy(r,t)})),a&&(this.body=null,iQ.destroy(a,t)),this.removeAbortListener&&(r?.off("close",this.removeAbortListener),this.removeAbortListener(),this.removeAbortListener=null)}};function MFn(e,t){if(t===void 0)return new Promise((r,s)=>{MFn.call(this,e,(a,o)=>a?s(a):r(o))});try{this.dispatch(e,new Vgt(e,t))}catch(r){if(typeof t!="function")throw r;let s=e?.opaque;queueMicrotask(()=>t(r,{opaque:s}))}}orr.exports=MFn;orr.exports.RequestHandler=Vgt});var MPe=z((W6c,JFn)=>{var{addAbortListener:f1o}=rm(),{RequestAbortedError:I1o}=v0(),N2e=Symbol("kListener"),hU=Symbol("kSignal");function YFn(e){e.abort?e.abort(e[hU]?.reason):e.reason=e[hU]?.reason??new I1o,XFn(e)}function C1o(e,t){if(e.reason=null,e[hU]=null,e[N2e]=null,!!t){if(t.aborted){YFn(e);return}e[hU]=t,e[N2e]=()=>{YFn(e)},f1o(e[hU],e[N2e])}}function XFn(e){e[hU]&&("removeEventListener"in e[hU]?e[hU].removeEventListener("abort",e[N2e]):e[hU].removeListener("abort",e[N2e]),e[hU]=null,e[N2e]=null)}JFn.exports={addSignal:C1o,removeSignal:XFn}});var zFn=z((P6c,jFn)=>{"use strict";var m1o=xt("node:assert"),{finished:h1o,PassThrough:_1o}=xt("node:stream"),{InvalidArgumentError:R2e,InvalidReturnValueError:y1o}=v0(),KH=rm(),{getResolveErrorBodyCallback:b1o}=srr(),{AsyncResource:E1o}=xt("node:async_hooks"),{addSignal:B1o,removeSignal:UFn}=MPe(),arr=class extends E1o{constructor(t,r,s){if(!t||typeof t!="object")throw new R2e("invalid opts");let{signal:a,method:o,opaque:g,body:p,onInfo:f,responseHeaders:m,throwOnError:y}=t;try{if(typeof s!="function")throw new R2e("invalid callback");if(typeof r!="function")throw new R2e("invalid factory");if(a&&typeof a.on!="function"&&typeof a.addEventListener!="function")throw new R2e("signal must be an EventEmitter or EventTarget");if(o==="CONNECT")throw new R2e("invalid method");if(f&&typeof f!="function")throw new R2e("invalid onInfo callback");super("UNDICI_STREAM")}catch(B){throw KH.isStream(p)&&KH.destroy(p.on("error",KH.nop),B),B}this.responseHeaders=m||null,this.opaque=g||null,this.factory=r,this.callback=s,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=p,this.onInfo=f||null,this.throwOnError=y||!1,KH.isStream(p)&&p.on("error",B=>{this.onError(B)}),B1o(this,a)}onConnect(t,r){if(this.reason){t(this.reason);return}m1o(this.callback),this.abort=t,this.context=r}onHeaders(t,r,s,a){let{factory:o,opaque:g,context:p,callback:f,responseHeaders:m}=this,y=m==="raw"?KH.parseRawHeaders(r):KH.parseHeaders(r);if(t<200){this.onInfo&&this.onInfo({statusCode:t,headers:y});return}this.factory=null;let B;if(this.throwOnError&&t>=400){let T=(m==="raw"?KH.parseHeaders(r):y)["content-type"];B=new _1o,this.callback=null,this.runInAsyncScope(b1o,null,{callback:f,body:B,contentType:T,statusCode:t,statusMessage:a,headers:y})}else{if(o===null)return;if(B=this.runInAsyncScope(o,null,{statusCode:t,headers:y,opaque:g,context:p}),!B||typeof B.write!="function"||typeof B.end!="function"||typeof B.on!="function")throw new y1o("expected Writable");h1o(B,{readable:!1},k=>{let{callback:T,res:O,opaque:X,trailers:U,abort:le}=this;this.res=null,(k||!O.readable)&&KH.destroy(O,k),this.callback=null,this.runInAsyncScope(T,null,k||null,{opaque:X,trailers:U}),k&&le()})}return B.on("drain",s),this.res=B,(B.writableNeedDrain!==void 0?B.writableNeedDrain:B._writableState?.needDrain)!==!0}onData(t){let{res:r}=this;return r?r.write(t):!0}onComplete(t){let{res:r}=this;UFn(this),r&&(this.trailers=KH.parseHeaders(t),r.end())}onError(t){let{res:r,callback:s,opaque:a,body:o}=this;UFn(this),this.factory=null,r?(this.res=null,KH.destroy(r,t)):s&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(s,null,t,{opaque:a})})),o&&(this.body=null,KH.destroy(o,t))}};function KFn(e,t,r){if(r===void 0)return new Promise((s,a)=>{KFn.call(this,e,t,(o,g)=>o?a(o):s(g))});try{this.dispatch(e,new arr(e,t,r))}catch(s){if(typeof r!="function")throw s;let a=e?.opaque;queueMicrotask(()=>r(s,{opaque:a}))}}jFn.exports=KFn});var tZn=z((O6c,eZn)=>{"use strict";var{Readable:$Fn,Duplex:v1o,PassThrough:S1o}=xt("node:stream"),{InvalidArgumentError:HPe,InvalidReturnValueError:w1o,RequestAbortedError:crr}=v0(),sQ=rm(),{AsyncResource:T1o}=xt("node:async_hooks"),{addSignal:N1o,removeSignal:R1o}=MPe(),qFn=xt("node:assert"),D2e=Symbol("resume"),lrr=class extends $Fn{constructor(){super({autoDestroy:!0}),this[D2e]=null}_read(){let{[D2e]:t}=this;t&&(this[D2e]=null,t())}_destroy(t,r){this._read(),r(t)}},urr=class extends $Fn{constructor(t){super({autoDestroy:!0}),this[D2e]=t}_read(){this[D2e]()}_destroy(t,r){!t&&!this._readableState.endEmitted&&(t=new crr),r(t)}},grr=class extends T1o{constructor(t,r){if(!t||typeof t!="object")throw new HPe("invalid opts");if(typeof r!="function")throw new HPe("invalid handler");let{signal:s,method:a,opaque:o,onInfo:g,responseHeaders:p}=t;if(s&&typeof s.on!="function"&&typeof s.addEventListener!="function")throw new HPe("signal must be an EventEmitter or EventTarget");if(a==="CONNECT")throw new HPe("invalid method");if(g&&typeof g!="function")throw new HPe("invalid onInfo callback");super("UNDICI_PIPELINE"),this.opaque=o||null,this.responseHeaders=p||null,this.handler=r,this.abort=null,this.context=null,this.onInfo=g||null,this.req=new lrr().on("error",sQ.nop),this.ret=new v1o({readableObjectMode:t.objectMode,autoDestroy:!0,read:()=>{let{body:f}=this;f?.resume&&f.resume()},write:(f,m,y)=>{let{req:B}=this;B.push(f,m)||B._readableState.destroyed?y():B[D2e]=y},destroy:(f,m)=>{let{body:y,req:B,res:v,ret:k,abort:T}=this;!f&&!k._readableState.endEmitted&&(f=new crr),T&&f&&T(),sQ.destroy(y,f),sQ.destroy(B,f),sQ.destroy(v,f),R1o(this),m(f)}}).on("prefinish",()=>{let{req:f}=this;f.push(null)}),this.res=null,N1o(this,s)}onConnect(t,r){let{ret:s,res:a}=this;if(this.reason){t(this.reason);return}qFn(!a,"pipeline cannot be retried"),qFn(!s.destroyed),this.abort=t,this.context=r}onHeaders(t,r,s){let{opaque:a,handler:o,context:g}=this;if(t<200){if(this.onInfo){let f=this.responseHeaders==="raw"?sQ.parseRawHeaders(r):sQ.parseHeaders(r);this.onInfo({statusCode:t,headers:f})}return}this.res=new urr(s);let p;try{this.handler=null;let f=this.responseHeaders==="raw"?sQ.parseRawHeaders(r):sQ.parseHeaders(r);p=this.runInAsyncScope(o,null,{statusCode:t,headers:f,opaque:a,body:this.res,context:g})}catch(f){throw this.res.on("error",sQ.nop),f}if(!p||typeof p.on!="function")throw new w1o("expected Readable");p.on("data",f=>{let{ret:m,body:y}=this;!m.push(f)&&y.pause&&y.pause()}).on("error",f=>{let{ret:m}=this;sQ.destroy(m,f)}).on("end",()=>{let{ret:f}=this;f.push(null)}).on("close",()=>{let{ret:f}=this;f._readableState.ended||sQ.destroy(f,new crr)}),this.body=p}onData(t){let{res:r}=this;return r.push(t)}onComplete(t){let{res:r}=this;r.push(null)}onError(t){let{ret:r}=this;this.handler=null,sQ.destroy(r,t)}};function D1o(e,t){try{let r=new grr(e,t);return this.dispatch({...e,body:r.req},r),r.ret}catch(r){return new S1o().destroy(r)}}eZn.exports=D1o});var aZn=z((Q6c,oZn)=>{"use strict";var{InvalidArgumentError:Arr,SocketError:x1o}=v0(),{AsyncResource:k1o}=xt("node:async_hooks"),rZn=rm(),{addSignal:G1o,removeSignal:nZn}=MPe(),iZn=xt("node:assert"),drr=class extends k1o{constructor(t,r){if(!t||typeof t!="object")throw new Arr("invalid opts");if(typeof r!="function")throw new Arr("invalid callback");let{signal:s,opaque:a,responseHeaders:o}=t;if(s&&typeof s.on!="function"&&typeof s.addEventListener!="function")throw new Arr("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE"),this.responseHeaders=o||null,this.opaque=a||null,this.callback=r,this.abort=null,this.context=null,G1o(this,s)}onConnect(t,r){if(this.reason){t(this.reason);return}iZn(this.callback),this.abort=t,this.context=null}onHeaders(){throw new x1o("bad upgrade",null)}onUpgrade(t,r,s){iZn(t===101);let{callback:a,opaque:o,context:g}=this;nZn(this),this.callback=null;let p=this.responseHeaders==="raw"?rZn.parseRawHeaders(r):rZn.parseHeaders(r);this.runInAsyncScope(a,null,null,{headers:p,socket:s,opaque:o,context:g})}onError(t){let{callback:r,opaque:s}=this;nZn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:s})}))}};function sZn(e,t){if(t===void 0)return new Promise((r,s)=>{sZn.call(this,e,(a,o)=>a?s(a):r(o))});try{let r=new drr(e,t);this.dispatch({...e,method:e.method||"GET",upgrade:e.protocol||"Websocket"},r)}catch(r){if(typeof t!="function")throw r;let s=e?.opaque;queueMicrotask(()=>t(r,{opaque:s}))}}oZn.exports=sZn});var AZn=z((M6c,gZn)=>{"use strict";var F1o=xt("node:assert"),{AsyncResource:Z1o}=xt("node:async_hooks"),{InvalidArgumentError:prr,SocketError:L1o}=v0(),cZn=rm(),{addSignal:V1o,removeSignal:lZn}=MPe(),frr=class extends Z1o{constructor(t,r){if(!t||typeof t!="object")throw new prr("invalid opts");if(typeof r!="function")throw new prr("invalid callback");let{signal:s,opaque:a,responseHeaders:o}=t;if(s&&typeof s.on!="function"&&typeof s.addEventListener!="function")throw new prr("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT"),this.opaque=a||null,this.responseHeaders=o||null,this.callback=r,this.abort=null,V1o(this,s)}onConnect(t,r){if(this.reason){t(this.reason);return}F1o(this.callback),this.abort=t,this.context=r}onHeaders(){throw new L1o("bad connect",null)}onUpgrade(t,r,s){let{callback:a,opaque:o,context:g}=this;lZn(this),this.callback=null;let p=r;p!=null&&(p=this.responseHeaders==="raw"?cZn.parseRawHeaders(r):cZn.parseHeaders(r)),this.runInAsyncScope(a,null,null,{statusCode:t,headers:p,socket:s,opaque:o,context:g})}onError(t){let{callback:r,opaque:s}=this;lZn(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,t,{opaque:s})}))}};function uZn(e,t){if(t===void 0)return new Promise((r,s)=>{uZn.call(this,e,(a,o)=>a?s(a):r(o))});try{let r=new frr(e,t);this.dispatch({...e,method:"CONNECT"},r)}catch(r){if(typeof t!="function")throw r;let s=e?.opaque;queueMicrotask(()=>t(r,{opaque:s}))}}gZn.exports=uZn});var dZn=z((H6c,x2e)=>{"use strict";x2e.exports.request=HFn();x2e.exports.stream=zFn();x2e.exports.pipeline=tZn();x2e.exports.upgrade=aZn();x2e.exports.connect=AZn()});var Crr=z((Y6c,pZn)=>{"use strict";var{UndiciError:W1o}=v0(),Irr=class e extends W1o{constructor(t){super(t),Error.captureStackTrace(this,e),this.name="MockNotMatchedError",this.message=t||"The request does not match any registered mock dispatches",this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}};pZn.exports={MockNotMatchedError:Irr}});var k2e=z((X6c,fZn)=>{"use strict";fZn.exports={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected")}});var YPe=z((J6c,SZn)=>{"use strict";var{MockNotMatchedError:Jde}=Crr(),{kDispatches:Wgt,kMockAgent:P1o,kOriginalDispatch:O1o,kOrigin:Q1o,kGetNetConnect:M1o}=k2e(),{buildURL:H1o}=rm(),{STATUS_CODES:Y1o}=xt("node:http"),{types:{isPromise:X1o}}=xt("node:util");function cz(e,t){return typeof e=="string"?e===t:e instanceof RegExp?e.test(t):typeof e=="function"?e(t)===!0:!1}function CZn(e){return Object.fromEntries(Object.entries(e).map(([t,r])=>[t.toLocaleLowerCase(),r]))}function mZn(e,t){if(Array.isArray(e)){for(let r=0;r"u")return!0;if(typeof t!="object"||typeof e.headers!="object")return!1;for(let[r,s]of Object.entries(e.headers)){let a=mZn(t,r);if(!cz(s,a))return!1}return!0}function IZn(e){if(typeof e!="string")return e;let t=e.split("?");if(t.length!==2)return e;let r=new URLSearchParams(t.pop());return r.sort(),[...t,r.toString()].join("?")}function J1o(e,{path:t,method:r,body:s,headers:a}){let o=cz(e.path,t),g=cz(e.method,r),p=typeof e.body<"u"?cz(e.body,s):!0,f=hZn(e,a);return o&&g&&p&&f}function _Zn(e){return Buffer.isBuffer(e)||e instanceof Uint8Array||e instanceof ArrayBuffer?e:typeof e=="object"?JSON.stringify(e):e.toString()}function yZn(e,t){let r=t.query?H1o(t.path,t.query):t.path,s=typeof r=="string"?IZn(r):r,a=e.filter(({consumed:o})=>!o).filter(({path:o})=>cz(IZn(o),s));if(a.length===0)throw new Jde(`Mock dispatch not matched for path '${s}'`);if(a=a.filter(({method:o})=>cz(o,t.method)),a.length===0)throw new Jde(`Mock dispatch not matched for method '${t.method}' on path '${s}'`);if(a=a.filter(({body:o})=>typeof o<"u"?cz(o,t.body):!0),a.length===0)throw new Jde(`Mock dispatch not matched for body '${t.body}' on path '${s}'`);if(a=a.filter(o=>hZn(o,t.headers)),a.length===0){let o=typeof t.headers=="object"?JSON.stringify(t.headers):t.headers;throw new Jde(`Mock dispatch not matched for headers '${o}' on path '${s}'`)}return a[0]}function U1o(e,t,r){let s={timesInvoked:0,times:1,persist:!1,consumed:!1},a=typeof r=="function"?{callback:r}:{...r},o={...s,...t,pending:!0,data:{error:null,...a}};return e.push(o),o}function mrr(e,t){let r=e.findIndex(s=>s.consumed?J1o(s,t):!1);r!==-1&&e.splice(r,1)}function bZn(e){let{path:t,method:r,body:s,headers:a,query:o}=e;return{path:t,method:r,body:s,headers:a,query:o}}function hrr(e){let t=Object.keys(e),r=[];for(let s=0;s=v,s.pending=B0?setTimeout(()=>{k(this[Wgt])},m):k(this[Wgt]);function k(O,X=o){let U=Array.isArray(e.headers)?_rr(e.headers):e.headers,le=typeof X=="function"?X({...e,headers:U}):X;if(X1o(le)){le.then(pe=>k(O,pe));return}let ae=_Zn(le),ge=hrr(g),fe=hrr(p);t.onConnect?.(pe=>t.onError(pe),null),t.onHeaders?.(a,ge,T,EZn(a)),t.onData?.(Buffer.from(ae)),t.onComplete?.(fe),mrr(O,r)}function T(){}return!0}function j1o(){let e=this[P1o],t=this[Q1o],r=this[O1o];return function(a,o){if(e.isMockActive)try{BZn.call(this,a,o)}catch(g){if(g instanceof Jde){let p=e[M1o]();if(p===!1)throw new Jde(`${g.message}: subsequent request to origin ${t} was not allowed (net.connect disabled)`);if(vZn(p,t))r.call(this,a,o);else throw new Jde(`${g.message}: subsequent request to origin ${t} was not allowed (net.connect is not enabled for this origin)`)}else throw g}else r.call(this,a,o)}}function vZn(e,t){let r=new URL(t);return e===!0?!0:!!(Array.isArray(e)&&e.some(s=>cz(s,r.host)))}function z1o(e){if(e){let{agent:t,...r}=e;return r}}SZn.exports={getResponseData:_Zn,getMockDispatch:yZn,addMockDispatch:U1o,deleteMockDispatch:mrr,buildKey:bZn,generateKeyValues:hrr,matchValue:cz,getResponse:K1o,getStatusText:EZn,mockDispatch:BZn,buildMockDispatch:j1o,checkNetConnect:vZn,buildMockOptions:z1o,getHeaderByName:mZn,buildHeadersFromArray:_rr}});var wrr=z((U6c,Srr)=>{"use strict";var{getResponseData:q1o,buildKey:$1o,addMockDispatch:yrr}=YPe(),{kDispatches:Pgt,kDispatchKey:Ogt,kDefaultHeaders:brr,kDefaultTrailers:Err,kContentLength:Brr,kMockDispatch:Qgt}=k2e(),{InvalidArgumentError:_U}=v0(),{buildURL:e2o}=rm(),G2e=class{constructor(t){this[Qgt]=t}delay(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new _U("waitInMs must be a valid integer > 0");return this[Qgt].delay=t,this}persist(){return this[Qgt].persist=!0,this}times(t){if(typeof t!="number"||!Number.isInteger(t)||t<=0)throw new _U("repeatTimes must be a valid integer > 0");return this[Qgt].times=t,this}},vrr=class{constructor(t,r){if(typeof t!="object")throw new _U("opts must be an object");if(typeof t.path>"u")throw new _U("opts.path must be defined");if(typeof t.method>"u"&&(t.method="GET"),typeof t.path=="string")if(t.query)t.path=e2o(t.path,t.query);else{let s=new URL(t.path,"data://");t.path=s.pathname+s.search}typeof t.method=="string"&&(t.method=t.method.toUpperCase()),this[Ogt]=$1o(t),this[Pgt]=r,this[brr]={},this[Err]={},this[Brr]=!1}createMockScopeDispatchData({statusCode:t,data:r,responseOptions:s}){let a=q1o(r),o=this[Brr]?{"content-length":a.length}:{},g={...this[brr],...o,...s.headers},p={...this[Err],...s.trailers};return{statusCode:t,data:r,headers:g,trailers:p}}validateReplyParameters(t){if(typeof t.statusCode>"u")throw new _U("statusCode must be defined");if(typeof t.responseOptions!="object"||t.responseOptions===null)throw new _U("responseOptions must be an object")}reply(t){if(typeof t=="function"){let o=p=>{let f=t(p);if(typeof f!="object"||f===null)throw new _U("reply options callback must return an object");let m={data:"",responseOptions:{},...f};return this.validateReplyParameters(m),{...this.createMockScopeDispatchData(m)}},g=yrr(this[Pgt],this[Ogt],o);return new G2e(g)}let r={statusCode:t,data:arguments[1]===void 0?"":arguments[1],responseOptions:arguments[2]===void 0?{}:arguments[2]};this.validateReplyParameters(r);let s=this.createMockScopeDispatchData(r),a=yrr(this[Pgt],this[Ogt],s);return new G2e(a)}replyWithError(t){if(typeof t>"u")throw new _U("error must be defined");let r=yrr(this[Pgt],this[Ogt],{error:t});return new G2e(r)}defaultReplyHeaders(t){if(typeof t>"u")throw new _U("headers must be defined");return this[brr]=t,this}defaultReplyTrailers(t){if(typeof t>"u")throw new _U("trailers must be defined");return this[Err]=t,this}replyContentLength(){return this[Brr]=!0,this}};Srr.exports.MockInterceptor=vrr;Srr.exports.MockScope=G2e});var Rrr=z((K6c,kZn)=>{"use strict";var{promisify:t2o}=xt("node:util"),r2o=kPe(),{buildMockDispatch:n2o}=YPe(),{kDispatches:wZn,kMockAgent:TZn,kClose:NZn,kOriginalClose:RZn,kOrigin:DZn,kOriginalDispatch:i2o,kConnected:Trr}=k2e(),{MockInterceptor:s2o}=wrr(),xZn=z1(),{InvalidArgumentError:o2o}=v0(),Nrr=class extends r2o{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new o2o("Argument opts.agent must implement Agent");this[TZn]=r.agent,this[DZn]=t,this[wZn]=[],this[Trr]=1,this[i2o]=this.dispatch,this[RZn]=this.close.bind(this),this.dispatch=n2o.call(this),this.close=this[NZn]}get[xZn.kConnected](){return this[Trr]}intercept(t){return new s2o(t,this[wZn])}async[NZn](){await t2o(this[RZn])(),this[Trr]=0,this[TZn][xZn.kClients].delete(this[DZn])}};kZn.exports=Nrr});var krr=z((j6c,PZn)=>{"use strict";var{promisify:a2o}=xt("node:util"),c2o=v2e(),{buildMockDispatch:l2o}=YPe(),{kDispatches:GZn,kMockAgent:FZn,kClose:ZZn,kOriginalClose:LZn,kOrigin:VZn,kOriginalDispatch:u2o,kConnected:Drr}=k2e(),{MockInterceptor:g2o}=wrr(),WZn=z1(),{InvalidArgumentError:A2o}=v0(),xrr=class extends c2o{constructor(t,r){if(super(t,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new A2o("Argument opts.agent must implement Agent");this[FZn]=r.agent,this[VZn]=t,this[GZn]=[],this[Drr]=1,this[u2o]=this.dispatch,this[LZn]=this.close.bind(this),this.dispatch=l2o.call(this),this.close=this[ZZn]}get[WZn.kConnected](){return this[Drr]}intercept(t){return new g2o(t,this[GZn])}async[ZZn](){await a2o(this[LZn])(),this[Drr]=0,this[FZn][WZn.kClients].delete(this[VZn])}};PZn.exports=xrr});var QZn=z((q6c,OZn)=>{"use strict";var d2o={pronoun:"it",is:"is",was:"was",this:"this"},p2o={pronoun:"they",is:"are",was:"were",this:"these"};OZn.exports=class{constructor(t,r){this.singular=t,this.plural=r}pluralize(t){let r=t===1,s=r?d2o:p2o,a=r?this.singular:this.plural;return{...s,count:t,noun:a}}}});var HZn=z((e7c,MZn)=>{"use strict";var{Transform:f2o}=xt("node:stream"),{Console:I2o}=xt("node:console"),C2o=process.versions.icu?"\u2705":"Y ",m2o=process.versions.icu?"\u274C":"N ";MZn.exports=class{constructor({disableColors:t}={}){this.transform=new f2o({transform(r,s,a){a(null,r)}}),this.logger=new I2o({stdout:this.transform,inspectOptions:{colors:!t&&!process.env.CI}})}format(t){let r=t.map(({method:s,path:a,data:{statusCode:o},persist:g,times:p,timesInvoked:f,origin:m})=>({Method:s,Origin:m,Path:a,"Status code":o,Persistent:g?C2o:m2o,Invocations:f,Remaining:g?1/0:p-f}));return this.logger.table(r),this.transform.read().toString()}}});var UZn=z((t7c,JZn)=>{"use strict";var{kClients:Ude}=z1(),h2o=S2e(),{kAgent:Grr,kMockAgentSet:Mgt,kMockAgentGet:YZn,kDispatches:Frr,kIsMockActive:Hgt,kNetConnect:Kde,kGetNetConnect:_2o,kOptions:Ygt,kFactory:Xgt}=k2e(),y2o=Rrr(),b2o=krr(),{matchValue:E2o,buildMockOptions:B2o}=YPe(),{InvalidArgumentError:XZn,UndiciError:v2o}=v0(),S2o=uPe(),w2o=QZn(),T2o=HZn(),Zrr=class extends S2o{constructor(t){if(super(t),this[Kde]=!0,this[Hgt]=!0,t?.agent&&typeof t.agent.dispatch!="function")throw new XZn("Argument opts.agent must implement Agent");let r=t?.agent?t.agent:new h2o(t);this[Grr]=r,this[Ude]=r[Ude],this[Ygt]=B2o(t)}get(t){let r=this[YZn](t);return r||(r=this[Xgt](t),this[Mgt](t,r)),r}dispatch(t,r){return this.get(t.origin),this[Grr].dispatch(t,r)}async close(){await this[Grr].close(),this[Ude].clear()}deactivate(){this[Hgt]=!1}activate(){this[Hgt]=!0}enableNetConnect(t){if(typeof t=="string"||typeof t=="function"||t instanceof RegExp)Array.isArray(this[Kde])?this[Kde].push(t):this[Kde]=[t];else if(typeof t>"u")this[Kde]=!0;else throw new XZn("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[Kde]=!1}get isMockActive(){return this[Hgt]}[Mgt](t,r){this[Ude].set(t,r)}[Xgt](t){let r=Object.assign({agent:this},this[Ygt]);return this[Ygt]&&this[Ygt].connections===1?new y2o(t,r):new b2o(t,r)}[YZn](t){let r=this[Ude].get(t);if(r)return r;if(typeof t!="string"){let s=this[Xgt]("http://localhost:9999");return this[Mgt](t,s),s}for(let[s,a]of Array.from(this[Ude]))if(a&&typeof s!="string"&&E2o(s,t)){let o=this[Xgt](t);return this[Mgt](t,o),o[Frr]=a[Frr],o}}[_2o](){return this[Kde]}pendingInterceptors(){let t=this[Ude];return Array.from(t.entries()).flatMap(([r,s])=>s[Frr].map(a=>({...a,origin:r}))).filter(({pending:r})=>r)}assertNoPendingInterceptors({pendingInterceptorsFormatter:t=new T2o}={}){let r=this.pendingInterceptors();if(r.length===0)return;let s=new w2o("interceptor","interceptors").pluralize(r.length);throw new v2o(` ${s.count} ${s.noun} ${s.is} pending: ${t.format(r)} -`.trim())}};VZn.exports=krr});var Hgt=z((V6c,QZn)=>{"use strict";var PZn=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:I2o}=B0(),C2o=B2e();MZn()===void 0&&OZn(new C2o);function OZn(e){if(!e||typeof e.dispatch!="function")throw new I2o("Argument agent must implement Agent");Object.defineProperty(globalThis,PZn,{value:e,writable:!0,enumerable:!1,configurable:!1})}function MZn(){return globalThis[PZn]}QZn.exports={setGlobalDispatcher:OZn,getGlobalDispatcher:MZn}});var Grr=z((P6c,YZn)=>{"use strict";YZn.exports=class{#e;constructor(t){if(typeof t!="object"||t===null)throw new TypeError("handler must be an object");this.#e=t}onConnect(...t){return this.#e.onConnect?.(...t)}onError(...t){return this.#e.onError?.(...t)}onUpgrade(...t){return this.#e.onUpgrade?.(...t)}onResponseStarted(...t){return this.#e.onResponseStarted?.(...t)}onHeaders(...t){return this.#e.onHeaders?.(...t)}onData(...t){return this.#e.onData?.(...t)}onComplete(...t){return this.#e.onComplete?.(...t)}onBodySent(...t){return this.#e.onBodySent?.(...t)}}});var XZn=z((O6c,HZn)=>{"use strict";var m2o=Bgt();HZn.exports=e=>{let t=e?.maxRedirections;return r=>function(a,o){let{maxRedirections:g=t,...p}=a;if(!g)return r(a,o);let f=new m2o(r,g,a,o);return r(p,f)}}});var UZn=z((M6c,JZn)=>{"use strict";var h2o=Fgt();JZn.exports=e=>t=>function(s,a){return t(s,new h2o({...s,retryOptions:{...e,...s.retryOptions}},{handler:a,dispatch:t}))}});var jZn=z((Q6c,KZn)=>{"use strict";var _2o=tm(),{InvalidArgumentError:y2o,RequestAbortedError:b2o}=B0(),E2o=Grr(),Frr=class extends E2o{#e=1024*1024;#t=null;#r=!1;#n=!1;#i=0;#a=null;#s=null;constructor({maxSize:t},r){if(super(r),t!=null&&(!Number.isFinite(t)||t<1))throw new y2o("maxSize must be a number greater than 0");this.#e=t??this.#e,this.#s=r}onConnect(t){this.#t=t,this.#s.onConnect(this.#u.bind(this))}#u(t){this.#n=!0,this.#a=t}onHeaders(t,r,s,a){let g=_2o.parseHeaders(r)["content-length"];if(g!=null&&g>this.#e)throw new b2o(`Response size (${g}) larger than maxSize (${this.#e})`);return this.#n?!0:this.#s.onHeaders(t,r,s,a)}onError(t){this.#r||(t=this.#a??t,this.#s.onError(t))}onData(t){return this.#i=this.#i+t.length,this.#i>=this.#e&&(this.#r=!0,this.#n?this.#s.onError(this.#a):this.#s.onComplete([])),!0}onComplete(t){if(!this.#r){if(this.#n){this.#s.onError(this.reason);return}this.#s.onComplete(t)}}};function B2o({maxSize:e}={maxSize:1024*1024}){return t=>function(s,a){let{dumpMaxSize:o=e}=s,g=new Frr({maxSize:o},a);return t(s,g)}}KZn.exports=B2o});var Ode=z((Y6c,nLn)=>{"use strict";var{kConstruct:v2o}=j1(),{kEnumerableProperty:k2e}=tm(),{iteratorMixin:S2o,isValidHeaderName:QPe,isValidHeaderValue:qZn}=LW(),{webidl:Wh}=ZD(),Zrr=Dt("node:assert"),Xgt=Dt("node:util"),bw=Symbol("headers map"),WW=Symbol("headers map sorted");function zZn(e){return e===10||e===13||e===9||e===32}function $Zn(e){let t=0,r=e.length;for(;r>t&&zZn(e.charCodeAt(r-1));)--r;for(;r>t&&zZn(e.charCodeAt(t));)++t;return t===0&&r===e.length?e:e.substring(t,r)}function eLn(e,t){if(Array.isArray(t))for(let r=0;r>","record"]})}function Lrr(e,t,r){if(r=$Zn(r),QPe(t)){if(!qZn(r))throw Wh.errors.invalidArgument({prefix:"Headers.append",value:r,type:"header value"})}else throw Wh.errors.invalidArgument({prefix:"Headers.append",value:t,type:"header name"});if(rLn(e)==="immutable")throw new TypeError("immutable");return Vrr(e).append(t,r,!1)}function tLn(e,t){return e[0]>1),r[m][0]<=y[0]?f=m+1:p=m;if(o!==m){for(g=o;g>f;)r[g]=r[--g];r[f]=y}}if(!s.next().done)throw new TypeError("Unreachable");return r}else{let s=0;for(let{0:a,1:{value:o}}of this[bw])r[s++]=[a,o],Zrr(o!==null);return r.sort(tLn)}}},UH=class e{#e;#t;constructor(t=void 0){t!==v2o&&(this.#t=new Jgt,this.#e="none",t!==void 0&&(t=Wh.converters.HeadersInit(t,"Headers contructor","init"),eLn(this,t)))}append(t,r){Wh.brandCheck(this,e),Wh.argumentLengthCheck(arguments,2,"Headers.append");let s="Headers.append";return t=Wh.converters.ByteString(t,s,"name"),r=Wh.converters.ByteString(r,s,"value"),Lrr(this,t,r)}delete(t){if(Wh.brandCheck(this,e),Wh.argumentLengthCheck(arguments,1,"Headers.delete"),t=Wh.converters.ByteString(t,"Headers.delete","name"),!QPe(t))throw Wh.errors.invalidArgument({prefix:"Headers.delete",value:t,type:"header name"});if(this.#e==="immutable")throw new TypeError("immutable");this.#t.contains(t,!1)&&this.#t.delete(t,!1)}get(t){Wh.brandCheck(this,e),Wh.argumentLengthCheck(arguments,1,"Headers.get");let r="Headers.get";if(t=Wh.converters.ByteString(t,r,"name"),!QPe(t))throw Wh.errors.invalidArgument({prefix:r,value:t,type:"header name"});return this.#t.get(t,!1)}has(t){Wh.brandCheck(this,e),Wh.argumentLengthCheck(arguments,1,"Headers.has");let r="Headers.has";if(t=Wh.converters.ByteString(t,r,"name"),!QPe(t))throw Wh.errors.invalidArgument({prefix:r,value:t,type:"header name"});return this.#t.contains(t,!1)}set(t,r){Wh.brandCheck(this,e),Wh.argumentLengthCheck(arguments,2,"Headers.set");let s="Headers.set";if(t=Wh.converters.ByteString(t,s,"name"),r=Wh.converters.ByteString(r,s,"value"),r=$Zn(r),QPe(t)){if(!qZn(r))throw Wh.errors.invalidArgument({prefix:s,value:r,type:"header value"})}else throw Wh.errors.invalidArgument({prefix:s,value:t,type:"header name"});if(this.#e==="immutable")throw new TypeError("immutable");this.#t.set(t,r,!1)}getSetCookie(){Wh.brandCheck(this,e);let t=this.#t.cookies;return t?[...t]:[]}get[WW](){if(this.#t[WW])return this.#t[WW];let t=[],r=this.#t.toSortedArray(),s=this.#t.cookies;if(s===null||s.length===1)return this.#t[WW]=r;for(let a=0;a>"](e,t,r,s.bind(e)):Wh.converters["record"](e,t,r)}throw Wh.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence>","record"]})};nLn.exports={fill:eLn,compareHeaderName:tLn,Headers:UH,HeadersList:Jgt,getHeadersGuard:rLn,setHeadersGuard:w2o,setHeadersList:T2o,getHeadersList:Vrr}});var HPe=z((H6c,dLn)=>{"use strict";var{Headers:lLn,HeadersList:iLn,fill:N2o,getHeadersGuard:R2o,setHeadersGuard:uLn,setHeadersList:gLn}=Ode(),{extractBody:sLn,cloneBody:D2o,mixinBody:x2o,hasFinalizationRegistry:k2o,streamRegistry:G2o,bodyUnusable:F2o}=mPe(),Wrr=tm(),oLn=Dt("node:util"),{kEnumerableProperty:PW}=Wrr,{isValidReasonPhrase:Z2o,isCancelled:L2o,isAborted:V2o,isBlobLike:W2o,serializeJavascriptValueToJSONString:P2o,isErrorLike:O2o,isomorphicEncode:M2o,environmentSettingsObject:Q2o}=LW(),{redirectStatusSet:Y2o,nullBodyStatus:H2o}=uPe(),{kState:ev,kHeaders:nz}=pie(),{webidl:vC}=ZD(),{FormData:X2o}=IPe(),{URLSerializer:aLn}=ML(),{kConstruct:Kgt}=j1(),Prr=Dt("node:assert"),{types:J2o}=Dt("node:util"),U2o=new TextEncoder("utf-8"),Mde=class e{static error(){return YPe(jgt(),"immutable")}static json(t,r={}){vC.argumentLengthCheck(arguments,1,"Response.json"),r!==null&&(r=vC.converters.ResponseInit(r));let s=U2o.encode(P2o(t)),a=sLn(s),o=YPe(G2e({}),"response");return cLn(o,r,{body:a[0],type:"application/json"}),o}static redirect(t,r=302){vC.argumentLengthCheck(arguments,1,"Response.redirect"),t=vC.converters.USVString(t),r=vC.converters["unsigned short"](r);let s;try{s=new URL(t,Q2o.settingsObject.baseUrl)}catch(g){throw new TypeError(`Failed to parse URL from ${t}`,{cause:g})}if(!Y2o.has(r))throw new RangeError(`Invalid status code ${r}`);let a=YPe(G2e({}),"immutable");a[ev].status=r;let o=M2o(aLn(s));return a[ev].headersList.append("location",o,!0),a}constructor(t=null,r={}){if(t===Kgt)return;t!==null&&(t=vC.converters.BodyInit(t)),r=vC.converters.ResponseInit(r),this[ev]=G2e({}),this[nz]=new lLn(Kgt),uLn(this[nz],"response"),gLn(this[nz],this[ev].headersList);let s=null;if(t!=null){let[a,o]=sLn(t);s={body:a,type:o}}cLn(this,r,s)}get type(){return vC.brandCheck(this,e),this[ev].type}get url(){vC.brandCheck(this,e);let t=this[ev].urlList,r=t[t.length-1]??null;return r===null?"":aLn(r,!0)}get redirected(){return vC.brandCheck(this,e),this[ev].urlList.length>1}get status(){return vC.brandCheck(this,e),this[ev].status}get ok(){return vC.brandCheck(this,e),this[ev].status>=200&&this[ev].status<=299}get statusText(){return vC.brandCheck(this,e),this[ev].statusText}get headers(){return vC.brandCheck(this,e),this[nz]}get body(){return vC.brandCheck(this,e),this[ev].body?this[ev].body.stream:null}get bodyUsed(){return vC.brandCheck(this,e),!!this[ev].body&&Wrr.isDisturbed(this[ev].body.stream)}clone(){if(vC.brandCheck(this,e),F2o(this))throw vC.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let t=Orr(this[ev]);return YPe(t,R2o(this[nz]))}[oLn.inspect.custom](t,r){r.depth===null&&(r.depth=2),r.colors??=!0;let s={status:this.status,statusText:this.statusText,headers:this.headers,body:this.body,bodyUsed:this.bodyUsed,ok:this.ok,redirected:this.redirected,type:this.type,url:this.url};return`Response ${oLn.formatWithOptions(r,s)}`}};x2o(Mde);Object.defineProperties(Mde.prototype,{type:PW,url:PW,status:PW,ok:PW,redirected:PW,statusText:PW,headers:PW,clone:PW,body:PW,bodyUsed:PW,[Symbol.toStringTag]:{value:"Response",configurable:!0}});Object.defineProperties(Mde,{json:PW,redirect:PW,error:PW});function Orr(e){if(e.internalResponse)return ALn(Orr(e.internalResponse),e.type);let t=G2e({...e,body:null});return e.body!=null&&(t.body=D2o(t,e.body)),t}function G2e(e){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...e,headersList:e?.headersList?new iLn(e?.headersList):new iLn,urlList:e?.urlList?[...e.urlList]:[]}}function jgt(e){let t=O2o(e);return G2e({type:"error",status:0,error:t?e:new Error(e&&String(e)),aborted:e&&e.name==="AbortError"})}function K2o(e){return e.type==="error"&&e.status===0}function Ugt(e,t){return t={internalResponse:e,...t},new Proxy(e,{get(r,s){return s in t?t[s]:r[s]},set(r,s,a){return Prr(!(s in t)),r[s]=a,!0}})}function ALn(e,t){if(t==="basic")return Ugt(e,{type:"basic",headersList:e.headersList});if(t==="cors")return Ugt(e,{type:"cors",headersList:e.headersList});if(t==="opaque")return Ugt(e,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null});if(t==="opaqueredirect")return Ugt(e,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null});Prr(!1)}function j2o(e,t=null){return Prr(L2o(e)),V2o(e)?jgt(Object.assign(new DOMException("The operation was aborted.","AbortError"),{cause:t})):jgt(Object.assign(new DOMException("Request was cancelled."),{cause:t}))}function cLn(e,t,r){if(t.status!==null&&(t.status<200||t.status>599))throw new RangeError('init["status"] must be in the range of 200 to 599, inclusive.');if("statusText"in t&&t.statusText!=null&&!Z2o(String(t.statusText)))throw new TypeError("Invalid statusText");if("status"in t&&t.status!=null&&(e[ev].status=t.status),"statusText"in t&&t.statusText!=null&&(e[ev].statusText=t.statusText),"headers"in t&&t.headers!=null&&N2o(e[nz],t.headers),r){if(H2o.includes(e.status))throw vC.errors.exception({header:"Response constructor",message:`Invalid response status code ${e.status}`});e[ev].body=r.body,r.type!=null&&!e[ev].headersList.contains("content-type",!0)&&e[ev].headersList.append("content-type",r.type,!0)}}function YPe(e,t){let r=new Mde(Kgt);return r[ev]=e,r[nz]=new lLn(Kgt),gLn(r[nz],e.headersList),uLn(r[nz],t),k2o&&e.body?.stream&&G2o.register(r,new WeakRef(e.body.stream)),r}vC.converters.ReadableStream=vC.interfaceConverter(ReadableStream);vC.converters.FormData=vC.interfaceConverter(X2o);vC.converters.URLSearchParams=vC.interfaceConverter(URLSearchParams);vC.converters.XMLHttpRequestBodyInit=function(e,t,r){return typeof e=="string"?vC.converters.USVString(e,t,r):W2o(e)?vC.converters.Blob(e,t,r,{strict:!1}):ArrayBuffer.isView(e)||J2o.isArrayBuffer(e)?vC.converters.BufferSource(e,t,r):Wrr.isFormDataLike(e)?vC.converters.FormData(e,t,r,{strict:!1}):e instanceof URLSearchParams?vC.converters.URLSearchParams(e,t,r):vC.converters.DOMString(e,t,r)};vC.converters.BodyInit=function(e,t,r){return e instanceof ReadableStream?vC.converters.ReadableStream(e,t,r):e?.[Symbol.asyncIterator]?e:vC.converters.XMLHttpRequestBodyInit(e,t,r)};vC.converters.ResponseInit=vC.dictionaryConverter([{key:"status",converter:vC.converters["unsigned short"],defaultValue:()=>200},{key:"statusText",converter:vC.converters.ByteString,defaultValue:()=>""},{key:"headers",converter:vC.converters.HeadersInit}]);dLn.exports={isNetworkError:K2o,makeNetworkError:jgt,makeResponse:G2e,makeAppropriateNetworkError:j2o,filterResponse:ALn,Response:Mde,cloneResponse:Orr,fromInnerResponse:YPe}});var CLn=z((X6c,ILn)=>{"use strict";var{kConnected:pLn,kSize:fLn}=j1(),Mrr=class{constructor(t){this.value=t}deref(){return this.value[pLn]===0&&this.value[fLn]===0?void 0:this.value}},Qrr=class{constructor(t){this.finalizer=t}register(t,r){t.on&&t.on("disconnect",()=>{t[pLn]===0&&t[fLn]===0&&this.finalizer(r)})}unregister(t){}};ILn.exports=function(){return process.env.NODE_V8_COVERAGE&&process.version.startsWith("v18")?(process._rawDebug("Using compatibility WeakRef and FinalizationRegistry"),{WeakRef:Mrr,FinalizationRegistry:Qrr}):{WeakRef,FinalizationRegistry}}});var F2e=z((J6c,xLn)=>{"use strict";var{extractBody:z2o,mixinBody:q2o,cloneBody:$2o,bodyUnusable:mLn}=mPe(),{Headers:wLn,fill:eBo,HeadersList:eAt,setHeadersGuard:Hrr,getHeadersGuard:tBo,setHeadersList:TLn,getHeadersList:hLn}=Ode(),{FinalizationRegistry:rBo}=CLn()(),qgt=tm(),_Ln=Dt("node:util"),{isValidHTTPToken:nBo,sameOrigin:yLn,environmentSettingsObject:zgt}=LW(),{forbiddenMethodsSet:iBo,corsSafeListedMethodsSet:sBo,referrerPolicy:oBo,requestRedirect:aBo,requestMode:cBo,requestCredentials:lBo,requestCache:uBo,requestDuplex:gBo}=uPe(),{kEnumerableProperty:Ew,normalizedMethodRecordsBase:ABo,normalizedMethodRecords:dBo}=qgt,{kHeaders:OW,kSignal:$gt,kState:s1,kDispatcher:Yrr}=pie(),{webidl:_f}=ZD(),{URLSerializer:pBo}=ML(),{kConstruct:tAt}=j1(),fBo=Dt("node:assert"),{getMaxListeners:bLn,setMaxListeners:ELn,getEventListeners:IBo,defaultMaxListeners:BLn}=Dt("node:events"),CBo=Symbol("abortController"),NLn=new rBo(({signal:e,abort:t})=>{e.removeEventListener("abort",t)}),rAt=new WeakMap;function vLn(e){return t;function t(){let r=e.deref();if(r!==void 0){NLn.unregister(t),this.removeEventListener("abort",t),r.abort(this.reason);let s=rAt.get(r.signal);if(s!==void 0){if(s.size!==0){for(let a of s){let o=a.deref();o!==void 0&&o.abort(this.reason)}s.clear()}rAt.delete(r.signal)}}}}var SLn=!1,Bie=class e{constructor(t,r={}){if(t===tAt)return;let s="Request constructor";_f.argumentLengthCheck(arguments,1,s),t=_f.converters.RequestInfo(t,s,"input"),r=_f.converters.RequestInit(r,s,"init");let a=null,o=null,g=zgt.settingsObject.baseUrl,p=null;if(typeof t=="string"){this[Yrr]=r.dispatcher;let U;try{U=new URL(t,g)}catch(le){throw new TypeError("Failed to parse URL from "+t,{cause:le})}if(U.username||U.password)throw new TypeError("Request cannot be constructed from a URL that includes credentials: "+t);a=nAt({urlList:[U]}),o="cors"}else this[Yrr]=r.dispatcher||t[Yrr],fBo(t instanceof e),a=t[s1],p=t[$gt];let f=zgt.settingsObject.origin,m="client";if(a.window?.constructor?.name==="EnvironmentSettingsObject"&&yLn(a.window,f)&&(m=a.window),r.window!=null)throw new TypeError(`'window' option '${m}' must be null`);"window"in r&&(m="no-window"),a=nAt({method:a.method,headersList:a.headersList,unsafeRequest:a.unsafeRequest,client:zgt.settingsObject,window:m,priority:a.priority,origin:a.origin,referrer:a.referrer,referrerPolicy:a.referrerPolicy,mode:a.mode,credentials:a.credentials,cache:a.cache,redirect:a.redirect,integrity:a.integrity,keepalive:a.keepalive,reloadNavigation:a.reloadNavigation,historyNavigation:a.historyNavigation,urlList:[...a.urlList]});let y=Object.keys(r).length!==0;if(y&&(a.mode==="navigate"&&(a.mode="same-origin"),a.reloadNavigation=!1,a.historyNavigation=!1,a.origin="client",a.referrer="client",a.referrerPolicy="",a.url=a.urlList[a.urlList.length-1],a.urlList=[a.url]),r.referrer!==void 0){let U=r.referrer;if(U==="")a.referrer="no-referrer";else{let le;try{le=new URL(U,g)}catch(ae){throw new TypeError(`Referrer "${U}" is not a valid URL.`,{cause:ae})}le.protocol==="about:"&&le.hostname==="client"||f&&!yLn(le,zgt.settingsObject.baseUrl)?a.referrer="client":a.referrer=le}}r.referrerPolicy!==void 0&&(a.referrerPolicy=r.referrerPolicy);let B;if(r.mode!==void 0?B=r.mode:B=o,B==="navigate")throw _f.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(B!=null&&(a.mode=B),r.credentials!==void 0&&(a.credentials=r.credentials),r.cache!==void 0&&(a.cache=r.cache),a.cache==="only-if-cached"&&a.mode!=="same-origin")throw new TypeError("'only-if-cached' can be set only with 'same-origin' mode");if(r.redirect!==void 0&&(a.redirect=r.redirect),r.integrity!=null&&(a.integrity=String(r.integrity)),r.keepalive!==void 0&&(a.keepalive=!!r.keepalive),r.method!==void 0){let U=r.method,le=dBo[U];if(le!==void 0)a.method=le;else{if(!nBo(U))throw new TypeError(`'${U}' is not a valid HTTP method.`);let ae=U.toUpperCase();if(iBo.has(ae))throw new TypeError(`'${U}' HTTP method is unsupported.`);U=ABo[ae]??U,a.method=U}!SLn&&a.method==="patch"&&(process.emitWarning("Using `patch` is highly likely to result in a `405 Method Not Allowed`. `PATCH` is much more likely to succeed.",{code:"UNDICI-FETCH-patch"}),SLn=!0)}r.signal!==void 0&&(p=r.signal),this[s1]=a;let v=new AbortController;if(this[$gt]=v.signal,p!=null){if(!p||typeof p.aborted!="boolean"||typeof p.addEventListener!="function")throw new TypeError("Failed to construct 'Request': member signal is not of type AbortSignal.");if(p.aborted)v.abort(p.reason);else{this[CBo]=v;let U=new WeakRef(v),le=vLn(U);try{(typeof bLn=="function"&&bLn(p)===BLn||IBo(p,"abort").length>=BLn)&&ELn(1500,p)}catch{}qgt.addAbortListener(p,le),NLn.register(v,{signal:p,abort:le},le)}}if(this[OW]=new wLn(tAt),TLn(this[OW],a.headersList),Hrr(this[OW],"request"),B==="no-cors"){if(!sBo.has(a.method))throw new TypeError(`'${a.method} is unsupported in no-cors mode.`);Hrr(this[OW],"request-no-cors")}if(y){let U=hLn(this[OW]),le=r.headers!==void 0?r.headers:new eAt(U);if(U.clear(),le instanceof eAt){for(let{name:ae,value:ge}of le.rawValues())U.append(ae,ge,!1);U.cookies=le.cookies}else eBo(this[OW],le)}let G=t instanceof e?t[s1].body:null;if((r.body!=null||G!=null)&&(a.method==="GET"||a.method==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body.");let T=null;if(r.body!=null){let[U,le]=z2o(r.body,a.keepalive);T=U,le&&!hLn(this[OW]).contains("content-type",!0)&&this[OW].append("content-type",le)}let O=T??G;if(O!=null&&O.source==null){if(T!=null&&r.duplex==null)throw new TypeError("RequestInit: duplex option is required when sending a body.");if(a.mode!=="same-origin"&&a.mode!=="cors")throw new TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"');a.useCORSPreflightFlag=!0}let X=O;if(T==null&&G!=null){if(mLn(t))throw new TypeError("Cannot construct a Request with a Request object that has already been used.");let U=new TransformStream;G.stream.pipeThrough(U),X={source:G.source,length:G.length,stream:U.readable}}this[s1].body=X}get method(){return _f.brandCheck(this,e),this[s1].method}get url(){return _f.brandCheck(this,e),pBo(this[s1].url)}get headers(){return _f.brandCheck(this,e),this[OW]}get destination(){return _f.brandCheck(this,e),this[s1].destination}get referrer(){return _f.brandCheck(this,e),this[s1].referrer==="no-referrer"?"":this[s1].referrer==="client"?"about:client":this[s1].referrer.toString()}get referrerPolicy(){return _f.brandCheck(this,e),this[s1].referrerPolicy}get mode(){return _f.brandCheck(this,e),this[s1].mode}get credentials(){return this[s1].credentials}get cache(){return _f.brandCheck(this,e),this[s1].cache}get redirect(){return _f.brandCheck(this,e),this[s1].redirect}get integrity(){return _f.brandCheck(this,e),this[s1].integrity}get keepalive(){return _f.brandCheck(this,e),this[s1].keepalive}get isReloadNavigation(){return _f.brandCheck(this,e),this[s1].reloadNavigation}get isHistoryNavigation(){return _f.brandCheck(this,e),this[s1].historyNavigation}get signal(){return _f.brandCheck(this,e),this[$gt]}get body(){return _f.brandCheck(this,e),this[s1].body?this[s1].body.stream:null}get bodyUsed(){return _f.brandCheck(this,e),!!this[s1].body&&qgt.isDisturbed(this[s1].body.stream)}get duplex(){return _f.brandCheck(this,e),"half"}clone(){if(_f.brandCheck(this,e),mLn(this))throw new TypeError("unusable");let t=RLn(this[s1]),r=new AbortController;if(this.signal.aborted)r.abort(this.signal.reason);else{let s=rAt.get(this.signal);s===void 0&&(s=new Set,rAt.set(this.signal,s));let a=new WeakRef(r);s.add(a),qgt.addAbortListener(r.signal,vLn(a))}return DLn(t,r.signal,tBo(this[OW]))}[_Ln.inspect.custom](t,r){r.depth===null&&(r.depth=2),r.colors??=!0;let s={method:this.method,url:this.url,headers:this.headers,destination:this.destination,referrer:this.referrer,referrerPolicy:this.referrerPolicy,mode:this.mode,credentials:this.credentials,cache:this.cache,redirect:this.redirect,integrity:this.integrity,keepalive:this.keepalive,isReloadNavigation:this.isReloadNavigation,isHistoryNavigation:this.isHistoryNavigation,signal:this.signal};return`Request ${_Ln.formatWithOptions(r,s)}`}};q2o(Bie);function nAt(e){return{method:e.method??"GET",localURLsOnly:e.localURLsOnly??!1,unsafeRequest:e.unsafeRequest??!1,body:e.body??null,client:e.client??null,reservedClient:e.reservedClient??null,replacesClientId:e.replacesClientId??"",window:e.window??"client",keepalive:e.keepalive??!1,serviceWorkers:e.serviceWorkers??"all",initiator:e.initiator??"",destination:e.destination??"",priority:e.priority??null,origin:e.origin??"client",policyContainer:e.policyContainer??"client",referrer:e.referrer??"client",referrerPolicy:e.referrerPolicy??"",mode:e.mode??"no-cors",useCORSPreflightFlag:e.useCORSPreflightFlag??!1,credentials:e.credentials??"same-origin",useCredentials:e.useCredentials??!1,cache:e.cache??"default",redirect:e.redirect??"follow",integrity:e.integrity??"",cryptoGraphicsNonceMetadata:e.cryptoGraphicsNonceMetadata??"",parserMetadata:e.parserMetadata??"",reloadNavigation:e.reloadNavigation??!1,historyNavigation:e.historyNavigation??!1,userActivation:e.userActivation??!1,taintedOrigin:e.taintedOrigin??!1,redirectCount:e.redirectCount??0,responseTainting:e.responseTainting??"basic",preventNoCacheCacheControlHeaderModification:e.preventNoCacheCacheControlHeaderModification??!1,done:e.done??!1,timingAllowFailed:e.timingAllowFailed??!1,urlList:e.urlList,url:e.urlList[0],headersList:e.headersList?new eAt(e.headersList):new eAt}}function RLn(e){let t=nAt({...e,body:null});return e.body!=null&&(t.body=$2o(t,e.body)),t}function DLn(e,t,r){let s=new Bie(tAt);return s[s1]=e,s[$gt]=t,s[OW]=new wLn(tAt),TLn(s[OW],e.headersList),Hrr(s[OW],r),s}Object.defineProperties(Bie.prototype,{method:Ew,url:Ew,headers:Ew,redirect:Ew,clone:Ew,signal:Ew,duplex:Ew,destination:Ew,body:Ew,bodyUsed:Ew,isHistoryNavigation:Ew,isReloadNavigation:Ew,keepalive:Ew,integrity:Ew,cache:Ew,credentials:Ew,attribute:Ew,referrerPolicy:Ew,referrer:Ew,mode:Ew,[Symbol.toStringTag]:{value:"Request",configurable:!0}});_f.converters.Request=_f.interfaceConverter(Bie);_f.converters.RequestInfo=function(e,t,r){return typeof e=="string"?_f.converters.USVString(e,t,r):e instanceof Bie?_f.converters.Request(e,t,r):_f.converters.USVString(e,t,r)};_f.converters.AbortSignal=_f.interfaceConverter(AbortSignal);_f.converters.RequestInit=_f.dictionaryConverter([{key:"method",converter:_f.converters.ByteString},{key:"headers",converter:_f.converters.HeadersInit},{key:"body",converter:_f.nullableConverter(_f.converters.BodyInit)},{key:"referrer",converter:_f.converters.USVString},{key:"referrerPolicy",converter:_f.converters.DOMString,allowedValues:oBo},{key:"mode",converter:_f.converters.DOMString,allowedValues:cBo},{key:"credentials",converter:_f.converters.DOMString,allowedValues:lBo},{key:"cache",converter:_f.converters.DOMString,allowedValues:uBo},{key:"redirect",converter:_f.converters.DOMString,allowedValues:aBo},{key:"integrity",converter:_f.converters.DOMString},{key:"keepalive",converter:_f.converters.boolean},{key:"signal",converter:_f.nullableConverter(e=>_f.converters.AbortSignal(e,"RequestInit","signal",{strict:!1}))},{key:"window",converter:_f.converters.any},{key:"duplex",converter:_f.converters.DOMString,allowedValues:gBo},{key:"dispatcher",converter:_f.converters.any}]);xLn.exports={Request:Bie,makeRequest:nAt,fromInnerRequest:DLn,cloneRequest:RLn}});var JPe=z((U6c,JLn)=>{"use strict";var{makeNetworkError:sy,makeAppropriateNetworkError:iAt,filterResponse:Xrr,makeResponse:sAt,fromInnerResponse:mBo}=HPe(),{HeadersList:kLn}=Ode(),{Request:hBo,cloneRequest:_Bo}=F2e(),vie=Dt("node:zlib"),{bytesMatch:yBo,makePolicyContainer:bBo,clonePolicyContainer:EBo,requestBadPort:BBo,TAOCheck:vBo,appendRequestOriginHeader:SBo,responseLocationURL:wBo,requestCurrentURL:mU,setRequestReferrerPolicyOnRedirect:TBo,tryUpgradeRequestToAPotentiallyTrustworthyURL:NBo,createOpaqueTimingInfo:zrr,appendFetchMetadata:RBo,corsCheck:DBo,crossOriginResourcePolicyCheck:xBo,determineRequestsReferrer:kBo,coarsenedSharedCurrentTime:XPe,createDeferredPromise:GBo,isBlobLike:FBo,sameOrigin:jrr,isCancelled:Qde,isAborted:GLn,isErrorLike:ZBo,fullyReadBody:LBo,readableStreamClose:VBo,isomorphicEncode:oAt,urlIsLocal:WBo,urlIsHttpHttpsScheme:qrr,urlHasHttpsScheme:PBo,clampAndCoarsenConnectionTimingInfo:OBo,simpleRangeHeaderValue:MBo,buildContentRange:QBo,createInflate:YBo,extractMimeType:HBo}=LW(),{kState:VLn,kDispatcher:XBo}=pie(),Yde=Dt("node:assert"),{safelyExtractBody:$rr,extractBody:FLn}=mPe(),{redirectStatusSet:WLn,nullBodyStatus:PLn,safeMethodsSet:JBo,requestBodyHeader:UBo,subresourceSet:KBo}=uPe(),jBo=Dt("node:events"),{Readable:zBo,pipeline:qBo,finished:$Bo}=Dt("node:stream"),{addAbortListener:evo,isErrored:tvo,isReadable:aAt,bufferToLowerCasedHeaderName:ZLn}=tm(),{dataURLProcessor:rvo,serializeAMimeType:nvo,minimizeSupportedMimeType:ivo}=ML(),{getGlobalDispatcher:svo}=Hgt(),{webidl:ovo}=ZD(),{STATUS_CODES:avo}=Dt("node:http"),cvo=["GET","HEAD"],lvo=typeof __UNDICI_IS_NODE__<"u"||typeof esbuildDetection<"u"?"node":"undici",Jrr,cAt=class extends jBo{constructor(t){super(),this.dispatcher=t,this.connection=null,this.dump=!1,this.state="ongoing"}terminate(t){this.state==="ongoing"&&(this.state="terminated",this.connection?.destroy(t),this.emit("terminated",t))}abort(t){this.state==="ongoing"&&(this.state="aborted",t||(t=new DOMException("The operation was aborted.","AbortError")),this.serializedAbortReason=t,this.connection?.destroy(t),this.emit("terminated",t))}};function uvo(e){OLn(e,"fetch")}function gvo(e,t=void 0){ovo.argumentLengthCheck(arguments,1,"globalThis.fetch");let r=GBo(),s;try{s=new hBo(e,t)}catch(y){return r.reject(y),r.promise}let a=s[VLn];if(s.signal.aborted)return Urr(r,a,null,s.signal.reason),r.promise;a.client.globalObject?.constructor?.name==="ServiceWorkerGlobalScope"&&(a.serviceWorkers="none");let g=null,p=!1,f=null;return evo(s.signal,()=>{p=!0,Yde(f!=null),f.abort(s.signal.reason);let y=g?.deref();Urr(r,a,y,s.signal.reason)}),f=QLn({request:a,processResponseEndOfBody:uvo,processResponse:y=>{if(!p){if(y.aborted){Urr(r,a,g,f.serializedAbortReason);return}if(y.type==="error"){r.reject(new TypeError("fetch failed",{cause:y.error}));return}g=new WeakRef(mBo(y,"immutable")),r.resolve(g.deref()),r=null}},dispatcher:s[XBo]}),r.promise}function OLn(e,t="other"){if(e.type==="error"&&e.aborted||!e.urlList?.length)return;let r=e.urlList[0],s=e.timingInfo,a=e.cacheState;qrr(r)&&s!==null&&(e.timingAllowPassed||(s=zrr({startTime:s.startTime}),a=""),s.endTime=XPe(),e.timingInfo=s,MLn(s,r.href,t,globalThis,a))}var MLn=performance.markResourceTiming;function Urr(e,t,r,s){if(e&&e.reject(s),t.body!=null&&aAt(t.body?.stream)&&t.body.stream.cancel(s).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o}),r==null)return;let a=r[VLn];a.body!=null&&aAt(a.body?.stream)&&a.body.stream.cancel(s).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o})}function QLn({request:e,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:s,processResponseEndOfBody:a,processResponseConsumeBody:o,useParallelQueue:g=!1,dispatcher:p=svo()}){Yde(p);let f=null,m=!1;e.client!=null&&(f=e.client.globalObject,m=e.client.crossOriginIsolatedCapability);let y=XPe(m),B=zrr({startTime:y}),v={controller:new cAt(p),request:e,timingInfo:B,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:s,processResponseConsumeBody:o,processResponseEndOfBody:a,taskDestination:f,crossOriginIsolatedCapability:m};return Yde(!e.body||e.body.stream),e.window==="client"&&(e.window=e.client?.globalObject?.constructor?.name==="Window"?e.client:"no-window"),e.origin==="client"&&(e.origin=e.client.origin),e.policyContainer==="client"&&(e.client!=null?e.policyContainer=EBo(e.client.policyContainer):e.policyContainer=bBo()),e.headersList.contains("accept",!0)||e.headersList.append("accept","*/*",!0),e.headersList.contains("accept-language",!0)||e.headersList.append("accept-language","*",!0),e.priority,KBo.has(e.destination),YLn(v).catch(G=>{v.controller.terminate(G)}),v.controller}async function YLn(e,t=!1){let r=e.request,s=null;if(r.localURLsOnly&&!WBo(mU(r))&&(s=sy("local URLs only")),NBo(r),BBo(r)==="blocked"&&(s=sy("bad port")),r.referrerPolicy===""&&(r.referrerPolicy=r.policyContainer.referrerPolicy),r.referrer!=="no-referrer"&&(r.referrer=kBo(r)),s===null&&(s=await(async()=>{let o=mU(r);return jrr(o,r.url)&&r.responseTainting==="basic"||o.protocol==="data:"||r.mode==="navigate"||r.mode==="websocket"?(r.responseTainting="basic",await LLn(e)):r.mode==="same-origin"?sy('request mode cannot be "same-origin"'):r.mode==="no-cors"?r.redirect!=="follow"?sy('redirect mode cannot be "follow" for "no-cors" request'):(r.responseTainting="opaque",await LLn(e)):qrr(mU(r))?(r.responseTainting="cors",await HLn(e)):sy("URL scheme must be a HTTP(S) scheme")})()),t)return s;s.status!==0&&!s.internalResponse&&(r.responseTainting,r.responseTainting==="basic"?s=Xrr(s,"basic"):r.responseTainting==="cors"?s=Xrr(s,"cors"):r.responseTainting==="opaque"?s=Xrr(s,"opaque"):Yde(!1));let a=s.status===0?s:s.internalResponse;if(a.urlList.length===0&&a.urlList.push(...r.urlList),r.timingAllowFailed||(s.timingAllowPassed=!0),s.type==="opaque"&&a.status===206&&a.rangeRequested&&!r.headers.contains("range",!0)&&(s=a=sy()),s.status!==0&&(r.method==="HEAD"||r.method==="CONNECT"||PLn.includes(a.status))&&(a.body=null,e.controller.dump=!0),r.integrity){let o=p=>Krr(e,sy(p));if(r.responseTainting==="opaque"||s.body==null){o(s.error);return}let g=p=>{if(!yBo(p,r.integrity)){o("integrity mismatch");return}s.body=$rr(p)[0],Krr(e,s)};await LBo(s.body,g,o)}else Krr(e,s)}function LLn(e){if(Qde(e)&&e.request.redirectCount===0)return Promise.resolve(iAt(e));let{request:t}=e,{protocol:r}=mU(t);switch(r){case"about:":return Promise.resolve(sy("about scheme is not supported"));case"blob:":{Jrr||(Jrr=Dt("node:buffer").resolveObjectURL);let s=mU(t);if(s.search.length!==0)return Promise.resolve(sy("NetworkError when attempting to fetch resource."));let a=Jrr(s.toString());if(t.method!=="GET"||!FBo(a))return Promise.resolve(sy("invalid method"));let o=sAt(),g=a.size,p=oAt(`${g}`),f=a.type;if(t.headersList.contains("range",!0)){o.rangeRequested=!0;let m=t.headersList.get("range",!0),y=MBo(m,!0);if(y==="failure")return Promise.resolve(sy("failed to fetch the data URL"));let{rangeStartValue:B,rangeEndValue:v}=y;if(B===null)B=g-v,v=B+v-1;else{if(B>=g)return Promise.resolve(sy("Range start is greater than the blob's size."));(v===null||v>=g)&&(v=g-1)}let G=a.slice(B,v,f),T=FLn(G);o.body=T[0];let O=oAt(`${G.size}`),X=QBo(B,v,g);o.status=206,o.statusText="Partial Content",o.headersList.set("content-length",O,!0),o.headersList.set("content-type",f,!0),o.headersList.set("content-range",X,!0)}else{let m=FLn(a);o.statusText="OK",o.body=m[0],o.headersList.set("content-length",p,!0),o.headersList.set("content-type",f,!0)}return Promise.resolve(o)}case"data:":{let s=mU(t),a=rvo(s);if(a==="failure")return Promise.resolve(sy("failed to fetch the data URL"));let o=nvo(a.mimeType);return Promise.resolve(sAt({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:o}]],body:$rr(a.body)[0]}))}case"file:":return Promise.resolve(sy("not implemented... yet..."));case"http:":case"https:":return HLn(e).catch(s=>sy(s));default:return Promise.resolve(sy("unknown scheme"))}}function Avo(e,t){e.request.done=!0,e.processResponseDone!=null&&queueMicrotask(()=>e.processResponseDone(t))}function Krr(e,t){let r=e.timingInfo,s=()=>{let o=Date.now();e.request.destination==="document"&&(e.controller.fullTimingInfo=r),e.controller.reportTimingSteps=()=>{if(e.request.url.protocol!=="https:")return;r.endTime=o;let p=t.cacheState,f=t.bodyInfo;t.timingAllowPassed||(r=zrr(r),p="");let m=0;if(e.request.mode!=="navigator"||!t.hasCrossOriginRedirects){m=t.status;let y=HBo(t.headersList);y!=="failure"&&(f.contentType=ivo(y))}e.request.initiatorType!=null&&MLn(r,e.request.url.href,e.request.initiatorType,globalThis,p,f,m)};let g=()=>{e.request.done=!0,e.processResponseEndOfBody!=null&&queueMicrotask(()=>e.processResponseEndOfBody(t)),e.request.initiatorType!=null&&e.controller.reportTimingSteps()};queueMicrotask(()=>g())};e.processResponse!=null&&queueMicrotask(()=>{e.processResponse(t),e.processResponse=null});let a=t.type==="error"?t:t.internalResponse??t;a.body==null?s():$Bo(a.body.stream,()=>{s()})}async function HLn(e){let t=e.request,r=null,s=null,a=e.timingInfo;if(t.serviceWorkers,r===null){if(t.redirect==="follow"&&(t.serviceWorkers="none"),s=r=await XLn(e),t.responseTainting==="cors"&&DBo(t,r)==="failure")return sy("cors failure");vBo(t,r)==="failure"&&(t.timingAllowFailed=!0)}return(t.responseTainting==="opaque"||r.type==="opaque")&&xBo(t.origin,t.client,t.destination,s)==="blocked"?sy("blocked"):(WLn.has(s.status)&&(t.redirect!=="manual"&&e.controller.connection.destroy(void 0,!1),t.redirect==="error"?r=sy("unexpected redirect"):t.redirect==="manual"?r=s:t.redirect==="follow"?r=await dvo(e,r):Yde(!1)),r.timingInfo=a,r)}function dvo(e,t){let r=e.request,s=t.internalResponse?t.internalResponse:t,a;try{if(a=wBo(s,mU(r).hash),a==null)return t}catch(g){return Promise.resolve(sy(g))}if(!qrr(a))return Promise.resolve(sy("URL scheme must be a HTTP(S) scheme"));if(r.redirectCount===20)return Promise.resolve(sy("redirect count exceeded"));if(r.redirectCount+=1,r.mode==="cors"&&(a.username||a.password)&&!jrr(r,a))return Promise.resolve(sy('cross origin not allowed for request mode "cors"'));if(r.responseTainting==="cors"&&(a.username||a.password))return Promise.resolve(sy('URL cannot contain credentials for request mode "cors"'));if(s.status!==303&&r.body!=null&&r.body.source==null)return Promise.resolve(sy());if([301,302].includes(s.status)&&r.method==="POST"||s.status===303&&!cvo.includes(r.method)){r.method="GET",r.body=null;for(let g of UBo)r.headersList.delete(g)}jrr(mU(r),a)||(r.headersList.delete("authorization",!0),r.headersList.delete("proxy-authorization",!0),r.headersList.delete("cookie",!0),r.headersList.delete("host",!0)),r.body!=null&&(Yde(r.body.source!=null),r.body=$rr(r.body.source)[0]);let o=e.timingInfo;return o.redirectEndTime=o.postRedirectStartTime=XPe(e.crossOriginIsolatedCapability),o.redirectStartTime===0&&(o.redirectStartTime=o.startTime),r.urlList.push(a),TBo(r,s),YLn(e,!0)}async function XLn(e,t=!1,r=!1){let s=e.request,a=null,o=null,g=null,p=null,f=!1;s.window==="no-window"&&s.redirect==="error"?(a=e,o=s):(o=_Bo(s),a={...e},a.request=o);let m=s.credentials==="include"||s.credentials==="same-origin"&&s.responseTainting==="basic",y=o.body?o.body.length:null,B=null;if(o.body==null&&["POST","PUT"].includes(o.method)&&(B="0"),y!=null&&(B=oAt(`${y}`)),B!=null&&o.headersList.append("content-length",B,!0),y!=null&&o.keepalive,o.referrer instanceof URL&&o.headersList.append("referer",oAt(o.referrer.href),!0),SBo(o),RBo(o),o.headersList.contains("user-agent",!0)||o.headersList.append("user-agent",lvo),o.cache==="default"&&(o.headersList.contains("if-modified-since",!0)||o.headersList.contains("if-none-match",!0)||o.headersList.contains("if-unmodified-since",!0)||o.headersList.contains("if-match",!0)||o.headersList.contains("if-range",!0))&&(o.cache="no-store"),o.cache==="no-cache"&&!o.preventNoCacheCacheControlHeaderModification&&!o.headersList.contains("cache-control",!0)&&o.headersList.append("cache-control","max-age=0",!0),(o.cache==="no-store"||o.cache==="reload")&&(o.headersList.contains("pragma",!0)||o.headersList.append("pragma","no-cache",!0),o.headersList.contains("cache-control",!0)||o.headersList.append("cache-control","no-cache",!0)),o.headersList.contains("range",!0)&&o.headersList.append("accept-encoding","identity",!0),o.headersList.contains("accept-encoding",!0)||(PBo(mU(o))?o.headersList.append("accept-encoding","br, gzip, deflate",!0):o.headersList.append("accept-encoding","gzip, deflate",!0)),o.headersList.delete("host",!0),p==null&&(o.cache="no-store"),o.cache!=="no-store"&&o.cache,g==null){if(o.cache==="only-if-cached")return sy("only if cached");let v=await pvo(a,m,r);!JBo.has(o.method)&&v.status>=200&&v.status<=399,f&&v.status,g==null&&(g=v)}if(g.urlList=[...o.urlList],o.headersList.contains("range",!0)&&(g.rangeRequested=!0),g.requestIncludesCredentials=m,g.status===407)return s.window==="no-window"?sy():Qde(e)?iAt(e):sy("proxy authentication required");if(g.status===421&&!r&&(s.body==null||s.body.source!=null)){if(Qde(e))return iAt(e);e.controller.connection.destroy(),g=await XLn(e,t,!0)}return g}async function pvo(e,t=!1,r=!1){Yde(!e.controller.connection||e.controller.connection.destroyed),e.controller.connection={abort:null,destroyed:!1,destroy(T,O=!0){this.destroyed||(this.destroyed=!0,O&&this.abort?.(T??new DOMException("The operation was aborted.","AbortError")))}};let s=e.request,a=null,o=e.timingInfo;null==null&&(s.cache="no-store");let p=r?"yes":"no";s.mode;let f=null;if(s.body==null&&e.processRequestEndOfBody)queueMicrotask(()=>e.processRequestEndOfBody());else if(s.body!=null){let T=async function*(U){Qde(e)||(yield U,e.processRequestBodyChunkLength?.(U.byteLength))},O=()=>{Qde(e)||e.processRequestEndOfBody&&e.processRequestEndOfBody()},X=U=>{Qde(e)||(U.name==="AbortError"?e.controller.abort():e.controller.terminate(U))};f=async function*(){try{for await(let U of s.body.stream)yield*T(U);O()}catch(U){X(U)}}()}try{let{body:T,status:O,statusText:X,headersList:U,socket:le}=await G({body:f});if(le)a=sAt({status:O,statusText:X,headersList:U,socket:le});else{let ae=T[Symbol.asyncIterator]();e.controller.next=()=>ae.next(),a=sAt({status:O,statusText:X,headersList:U})}}catch(T){return T.name==="AbortError"?(e.controller.connection.destroy(),iAt(e,T)):sy(T)}let m=async()=>{await e.controller.resume()},y=T=>{Qde(e)||e.controller.abort(T)},B=new ReadableStream({async start(T){e.controller.controller=T},async pull(T){await m(T)},async cancel(T){await y(T)},type:"bytes"});a.body={stream:B,source:null,length:null},e.controller.onAborted=v,e.controller.on("terminated",v),e.controller.resume=async()=>{for(;;){let T,O;try{let{done:U,value:le}=await e.controller.next();if(GLn(e))break;T=U?void 0:le}catch(U){e.controller.ended&&!o.encodedBodySize?T=void 0:(T=U,O=!0)}if(T===void 0){VBo(e.controller.controller),Avo(e,a);return}if(o.decodedBodySize+=T?.byteLength??0,O){e.controller.terminate(T);return}let X=new Uint8Array(T);if(X.byteLength&&e.controller.controller.enqueue(X),tvo(B)){e.controller.terminate();return}if(e.controller.controller.desiredSize<=0)return}};function v(T){GLn(e)?(a.aborted=!0,aAt(B)&&e.controller.controller.error(e.controller.serializedAbortReason)):aAt(B)&&e.controller.controller.error(new TypeError("terminated",{cause:ZBo(T)?T:void 0})),e.controller.connection.destroy()}return a;function G({body:T}){let O=mU(s),X=e.controller.dispatcher;return new Promise((U,le)=>X.dispatch({path:O.pathname+O.search,origin:O.origin,method:s.method,body:X.isMockActive?s.body&&(s.body.source||s.body.stream):T,headers:s.headersList.entries,maxRedirections:0,upgrade:s.mode==="websocket"?"websocket":void 0},{body:null,abort:null,onConnect(ae){let{connection:ge}=e.controller;o.finalConnectionTimingInfo=OBo(void 0,o.postRedirectStartTime,e.crossOriginIsolatedCapability),ge.destroyed?ae(new DOMException("The operation was aborted.","AbortError")):(e.controller.on("terminated",ae),this.abort=ge.abort=ae),o.finalNetworkRequestStartTime=XPe(e.crossOriginIsolatedCapability)},onResponseStarted(){o.finalNetworkResponseStartTime=XPe(e.crossOriginIsolatedCapability)},onHeaders(ae,ge,fe,pe){if(ae<200)return;let he=[],be="",Te=new kLn;for(let Je=0;JeJe.trim())),be=Te.get("location",!0),this.body=new zBo({read:fe});let x=[],et=be&&s.redirect==="follow"&&WLn.has(ae);if(he.length!==0&&s.method!=="HEAD"&&s.method!=="CONNECT"&&!PLn.includes(ae)&&!et)for(let Je=0;Je{Je&&this.onError(Je)}).on("error",Ue):this.body.on("error",Ue)}),!0},onData(ae){if(e.controller.dump)return;let ge=ae;return o.encodedBodySize+=ge.byteLength,this.body.push(ge)},onComplete(){this.abort&&e.controller.off("terminated",this.abort),e.controller.onAborted&&e.controller.off("terminated",e.controller.onAborted),e.controller.ended=!0,this.body.push(null)},onError(ae){this.abort&&e.controller.off("terminated",this.abort),this.body?.destroy(ae),e.controller.terminate(ae),le(ae)},onUpgrade(ae,ge,fe){if(ae!==101)return;let pe=new kLn;for(let he=0;he{"use strict";ULn.exports={kState:Symbol("FileReader state"),kResult:Symbol("FileReader result"),kError:Symbol("FileReader error"),kLastProgressEventFired:Symbol("FileReader last progress event fired timestamp"),kEvents:Symbol("FileReader events"),kAborted:Symbol("FileReader aborted")}});var jLn=z((j6c,KLn)=>{"use strict";var{webidl:MW}=ZD(),lAt=Symbol("ProgressEvent state"),tnr=class e extends Event{constructor(t,r={}){t=MW.converters.DOMString(t,"ProgressEvent constructor","type"),r=MW.converters.ProgressEventInit(r??{}),super(t,r),this[lAt]={lengthComputable:r.lengthComputable,loaded:r.loaded,total:r.total}}get lengthComputable(){return MW.brandCheck(this,e),this[lAt].lengthComputable}get loaded(){return MW.brandCheck(this,e),this[lAt].loaded}get total(){return MW.brandCheck(this,e),this[lAt].total}};MW.converters.ProgressEventInit=MW.dictionaryConverter([{key:"lengthComputable",converter:MW.converters.boolean,defaultValue:()=>!1},{key:"loaded",converter:MW.converters["unsigned long long"],defaultValue:()=>0},{key:"total",converter:MW.converters["unsigned long long"],defaultValue:()=>0},{key:"bubbles",converter:MW.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:MW.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:MW.converters.boolean,defaultValue:()=>!1}]);KLn.exports={ProgressEvent:tnr}});var qLn=z((z6c,zLn)=>{"use strict";function fvo(e){if(!e)return"failure";switch(e.trim().toLowerCase()){case"unicode-1-1-utf-8":case"unicode11utf8":case"unicode20utf8":case"utf-8":case"utf8":case"x-unicode20utf8":return"UTF-8";case"866":case"cp866":case"csibm866":case"ibm866":return"IBM866";case"csisolatin2":case"iso-8859-2":case"iso-ir-101":case"iso8859-2":case"iso88592":case"iso_8859-2":case"iso_8859-2:1987":case"l2":case"latin2":return"ISO-8859-2";case"csisolatin3":case"iso-8859-3":case"iso-ir-109":case"iso8859-3":case"iso88593":case"iso_8859-3":case"iso_8859-3:1988":case"l3":case"latin3":return"ISO-8859-3";case"csisolatin4":case"iso-8859-4":case"iso-ir-110":case"iso8859-4":case"iso88594":case"iso_8859-4":case"iso_8859-4:1988":case"l4":case"latin4":return"ISO-8859-4";case"csisolatincyrillic":case"cyrillic":case"iso-8859-5":case"iso-ir-144":case"iso8859-5":case"iso88595":case"iso_8859-5":case"iso_8859-5:1988":return"ISO-8859-5";case"arabic":case"asmo-708":case"csiso88596e":case"csiso88596i":case"csisolatinarabic":case"ecma-114":case"iso-8859-6":case"iso-8859-6-e":case"iso-8859-6-i":case"iso-ir-127":case"iso8859-6":case"iso88596":case"iso_8859-6":case"iso_8859-6:1987":return"ISO-8859-6";case"csisolatingreek":case"ecma-118":case"elot_928":case"greek":case"greek8":case"iso-8859-7":case"iso-ir-126":case"iso8859-7":case"iso88597":case"iso_8859-7":case"iso_8859-7:1987":case"sun_eu_greek":return"ISO-8859-7";case"csiso88598e":case"csisolatinhebrew":case"hebrew":case"iso-8859-8":case"iso-8859-8-e":case"iso-ir-138":case"iso8859-8":case"iso88598":case"iso_8859-8":case"iso_8859-8:1988":case"visual":return"ISO-8859-8";case"csiso88598i":case"iso-8859-8-i":case"logical":return"ISO-8859-8-I";case"csisolatin6":case"iso-8859-10":case"iso-ir-157":case"iso8859-10":case"iso885910":case"l6":case"latin6":return"ISO-8859-10";case"iso-8859-13":case"iso8859-13":case"iso885913":return"ISO-8859-13";case"iso-8859-14":case"iso8859-14":case"iso885914":return"ISO-8859-14";case"csisolatin9":case"iso-8859-15":case"iso8859-15":case"iso885915":case"iso_8859-15":case"l9":return"ISO-8859-15";case"iso-8859-16":return"ISO-8859-16";case"cskoi8r":case"koi":case"koi8":case"koi8-r":case"koi8_r":return"KOI8-R";case"koi8-ru":case"koi8-u":return"KOI8-U";case"csmacintosh":case"mac":case"macintosh":case"x-mac-roman":return"macintosh";case"iso-8859-11":case"iso8859-11":case"iso885911":case"tis-620":case"windows-874":return"windows-874";case"cp1250":case"windows-1250":case"x-cp1250":return"windows-1250";case"cp1251":case"windows-1251":case"x-cp1251":return"windows-1251";case"ansi_x3.4-1968":case"ascii":case"cp1252":case"cp819":case"csisolatin1":case"ibm819":case"iso-8859-1":case"iso-ir-100":case"iso8859-1":case"iso88591":case"iso_8859-1":case"iso_8859-1:1987":case"l1":case"latin1":case"us-ascii":case"windows-1252":case"x-cp1252":return"windows-1252";case"cp1253":case"windows-1253":case"x-cp1253":return"windows-1253";case"cp1254":case"csisolatin5":case"iso-8859-9":case"iso-ir-148":case"iso8859-9":case"iso88599":case"iso_8859-9":case"iso_8859-9:1989":case"l5":case"latin5":case"windows-1254":case"x-cp1254":return"windows-1254";case"cp1255":case"windows-1255":case"x-cp1255":return"windows-1255";case"cp1256":case"windows-1256":case"x-cp1256":return"windows-1256";case"cp1257":case"windows-1257":case"x-cp1257":return"windows-1257";case"cp1258":case"windows-1258":case"x-cp1258":return"windows-1258";case"x-mac-cyrillic":case"x-mac-ukrainian":return"x-mac-cyrillic";case"chinese":case"csgb2312":case"csiso58gb231280":case"gb2312":case"gb_2312":case"gb_2312-80":case"gbk":case"iso-ir-58":case"x-gbk":return"GBK";case"gb18030":return"gb18030";case"big5":case"big5-hkscs":case"cn-big5":case"csbig5":case"x-x-big5":return"Big5";case"cseucpkdfmtjapanese":case"euc-jp":case"x-euc-jp":return"EUC-JP";case"csiso2022jp":case"iso-2022-jp":return"ISO-2022-JP";case"csshiftjis":case"ms932":case"ms_kanji":case"shift-jis":case"shift_jis":case"sjis":case"windows-31j":case"x-sjis":return"Shift_JIS";case"cseuckr":case"csksc56011987":case"euc-kr":case"iso-ir-149":case"korean":case"ks_c_5601-1987":case"ks_c_5601-1989":case"ksc5601":case"ksc_5601":case"windows-949":return"EUC-KR";case"csiso2022kr":case"hz-gb-2312":case"iso-2022-cn":case"iso-2022-cn-ext":case"iso-2022-kr":case"replacement":return"replacement";case"unicodefffe":case"utf-16be":return"UTF-16BE";case"csunicode":case"iso-10646-ucs-2":case"ucs-2":case"unicode":case"unicodefeff":case"utf-16":case"utf-16le":return"UTF-16LE";case"x-user-defined":return"x-user-defined";default:return"failure"}}zLn.exports={getEncoding:fvo}});var o9n=z((q6c,s9n)=>{"use strict";var{kState:Z2e,kError:rnr,kResult:$Ln,kAborted:UPe,kLastProgressEventFired:nnr}=enr(),{ProgressEvent:Ivo}=jLn(),{getEncoding:e9n}=qLn(),{serializeAMimeType:Cvo,parseMIMEType:t9n}=ML(),{types:mvo}=Dt("node:util"),{StringDecoder:r9n}=Dt("string_decoder"),{btoa:n9n}=Dt("node:buffer"),hvo={enumerable:!0,writable:!1,configurable:!1};function _vo(e,t,r,s){if(e[Z2e]==="loading")throw new DOMException("Invalid state","InvalidStateError");e[Z2e]="loading",e[$Ln]=null,e[rnr]=null;let o=t.stream().getReader(),g=[],p=o.read(),f=!0;(async()=>{for(;!e[UPe];)try{let{done:m,value:y}=await p;if(f&&!e[UPe]&&queueMicrotask(()=>{Sie("loadstart",e)}),f=!1,!m&&mvo.isUint8Array(y))g.push(y),(e[nnr]===void 0||Date.now()-e[nnr]>=50)&&!e[UPe]&&(e[nnr]=Date.now(),queueMicrotask(()=>{Sie("progress",e)})),p=o.read();else if(m){queueMicrotask(()=>{e[Z2e]="done";try{let B=yvo(g,r,t.type,s);if(e[UPe])return;e[$Ln]=B,Sie("load",e)}catch(B){e[rnr]=B,Sie("error",e)}e[Z2e]!=="loading"&&Sie("loadend",e)});break}}catch(m){if(e[UPe])return;queueMicrotask(()=>{e[Z2e]="done",e[rnr]=m,Sie("error",e),e[Z2e]!=="loading"&&Sie("loadend",e)});break}})()}function Sie(e,t){let r=new Ivo(e,{bubbles:!1,cancelable:!1});t.dispatchEvent(r)}function yvo(e,t,r,s){switch(t){case"DataURL":{let a="data:",o=t9n(r||"application/octet-stream");o!=="failure"&&(a+=Cvo(o)),a+=";base64,";let g=new r9n("latin1");for(let p of e)a+=n9n(g.write(p));return a+=n9n(g.end()),a}case"Text":{let a="failure";if(s&&(a=e9n(s)),a==="failure"&&r){let o=t9n(r);o!=="failure"&&(a=e9n(o.parameters.get("charset")))}return a==="failure"&&(a="UTF-8"),bvo(e,a)}case"ArrayBuffer":return i9n(e).buffer;case"BinaryString":{let a="",o=new r9n("latin1");for(let g of e)a+=o.write(g);return a+=o.end(),a}}}function bvo(e,t){let r=i9n(e),s=Evo(r),a=0;s!==null&&(t=s,a=s==="UTF-8"?3:2);let o=r.slice(a);return new TextDecoder(t).decode(o)}function Evo(e){let[t,r,s]=e;return t===239&&r===187&&s===191?"UTF-8":t===254&&r===255?"UTF-16BE":t===255&&r===254?"UTF-16LE":null}function i9n(e){let t=e.reduce((s,a)=>s+a.byteLength,0),r=0;return e.reduce((s,a)=>(s.set(a,r),r+=a.byteLength,s),new Uint8Array(t))}s9n.exports={staticPropertyDescriptors:hvo,readOperation:_vo,fireAProgressEvent:Sie}});var u9n=z(($6c,l9n)=>{"use strict";var{staticPropertyDescriptors:L2e,readOperation:uAt,fireAProgressEvent:a9n}=o9n(),{kState:Hde,kError:c9n,kResult:gAt,kEvents:M_,kAborted:Bvo}=enr(),{webidl:Fy}=ZD(),{kEnumerableProperty:HL}=tm(),KH=class e extends EventTarget{constructor(){super(),this[Hde]="empty",this[gAt]=null,this[c9n]=null,this[M_]={loadend:null,error:null,abort:null,load:null,progress:null,loadstart:null}}readAsArrayBuffer(t){Fy.brandCheck(this,e),Fy.argumentLengthCheck(arguments,1,"FileReader.readAsArrayBuffer"),t=Fy.converters.Blob(t,{strict:!1}),uAt(this,t,"ArrayBuffer")}readAsBinaryString(t){Fy.brandCheck(this,e),Fy.argumentLengthCheck(arguments,1,"FileReader.readAsBinaryString"),t=Fy.converters.Blob(t,{strict:!1}),uAt(this,t,"BinaryString")}readAsText(t,r=void 0){Fy.brandCheck(this,e),Fy.argumentLengthCheck(arguments,1,"FileReader.readAsText"),t=Fy.converters.Blob(t,{strict:!1}),r!==void 0&&(r=Fy.converters.DOMString(r,"FileReader.readAsText","encoding")),uAt(this,t,"Text",r)}readAsDataURL(t){Fy.brandCheck(this,e),Fy.argumentLengthCheck(arguments,1,"FileReader.readAsDataURL"),t=Fy.converters.Blob(t,{strict:!1}),uAt(this,t,"DataURL")}abort(){if(this[Hde]==="empty"||this[Hde]==="done"){this[gAt]=null;return}this[Hde]==="loading"&&(this[Hde]="done",this[gAt]=null),this[Bvo]=!0,a9n("abort",this),this[Hde]!=="loading"&&a9n("loadend",this)}get readyState(){switch(Fy.brandCheck(this,e),this[Hde]){case"empty":return this.EMPTY;case"loading":return this.LOADING;case"done":return this.DONE}}get result(){return Fy.brandCheck(this,e),this[gAt]}get error(){return Fy.brandCheck(this,e),this[c9n]}get onloadend(){return Fy.brandCheck(this,e),this[M_].loadend}set onloadend(t){Fy.brandCheck(this,e),this[M_].loadend&&this.removeEventListener("loadend",this[M_].loadend),typeof t=="function"?(this[M_].loadend=t,this.addEventListener("loadend",t)):this[M_].loadend=null}get onerror(){return Fy.brandCheck(this,e),this[M_].error}set onerror(t){Fy.brandCheck(this,e),this[M_].error&&this.removeEventListener("error",this[M_].error),typeof t=="function"?(this[M_].error=t,this.addEventListener("error",t)):this[M_].error=null}get onloadstart(){return Fy.brandCheck(this,e),this[M_].loadstart}set onloadstart(t){Fy.brandCheck(this,e),this[M_].loadstart&&this.removeEventListener("loadstart",this[M_].loadstart),typeof t=="function"?(this[M_].loadstart=t,this.addEventListener("loadstart",t)):this[M_].loadstart=null}get onprogress(){return Fy.brandCheck(this,e),this[M_].progress}set onprogress(t){Fy.brandCheck(this,e),this[M_].progress&&this.removeEventListener("progress",this[M_].progress),typeof t=="function"?(this[M_].progress=t,this.addEventListener("progress",t)):this[M_].progress=null}get onload(){return Fy.brandCheck(this,e),this[M_].load}set onload(t){Fy.brandCheck(this,e),this[M_].load&&this.removeEventListener("load",this[M_].load),typeof t=="function"?(this[M_].load=t,this.addEventListener("load",t)):this[M_].load=null}get onabort(){return Fy.brandCheck(this,e),this[M_].abort}set onabort(t){Fy.brandCheck(this,e),this[M_].abort&&this.removeEventListener("abort",this[M_].abort),typeof t=="function"?(this[M_].abort=t,this.addEventListener("abort",t)):this[M_].abort=null}};KH.EMPTY=KH.prototype.EMPTY=0;KH.LOADING=KH.prototype.LOADING=1;KH.DONE=KH.prototype.DONE=2;Object.defineProperties(KH.prototype,{EMPTY:L2e,LOADING:L2e,DONE:L2e,readAsArrayBuffer:HL,readAsBinaryString:HL,readAsText:HL,readAsDataURL:HL,abort:HL,readyState:HL,result:HL,error:HL,onloadstart:HL,onprogress:HL,onload:HL,onabort:HL,onerror:HL,onloadend:HL,[Symbol.toStringTag]:{value:"FileReader",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(KH,{EMPTY:L2e,LOADING:L2e,DONE:L2e});l9n.exports={FileReader:KH}});var AAt=z((e7c,g9n)=>{"use strict";g9n.exports={kConstruct:j1().kConstruct}});var p9n=z((t7c,d9n)=>{"use strict";var vvo=Dt("node:assert"),{URLSerializer:A9n}=ML(),{isValidHeaderName:Svo}=LW();function wvo(e,t,r=!1){let s=A9n(e,r),a=A9n(t,r);return s===a}function Tvo(e){vvo(e!==null);let t=[];for(let r of e.split(","))r=r.trim(),Svo(r)&&t.push(r);return t}d9n.exports={urlEquals:wvo,getFieldValues:Tvo}});var C9n=z((r7c,I9n)=>{"use strict";var{kConstruct:Nvo}=AAt(),{urlEquals:Rvo,getFieldValues:inr}=p9n(),{kEnumerableProperty:Xde,isDisturbed:Dvo}=tm(),{webidl:bp}=ZD(),{Response:xvo,cloneResponse:kvo,fromInnerResponse:Gvo}=HPe(),{Request:iz,fromInnerRequest:Fvo}=F2e(),{kState:jH}=pie(),{fetching:Zvo}=JPe(),{urlIsHttpHttpsScheme:dAt,createDeferredPromise:V2e,readAllBytes:Lvo}=LW(),snr=Dt("node:assert"),pAt=class e{#e;constructor(){arguments[0]!==Nvo&&bp.illegalConstructor(),this.#e=arguments[1]}async match(t,r={}){bp.brandCheck(this,e);let s="Cache.match";bp.argumentLengthCheck(arguments,1,s),t=bp.converters.RequestInfo(t,s,"request"),r=bp.converters.CacheQueryOptions(r,s,"options");let a=this.#i(t,r,1);if(a.length!==0)return a[0]}async matchAll(t=void 0,r={}){bp.brandCheck(this,e);let s="Cache.matchAll";return t!==void 0&&(t=bp.converters.RequestInfo(t,s,"request")),r=bp.converters.CacheQueryOptions(r,s,"options"),this.#i(t,r)}async add(t){bp.brandCheck(this,e);let r="Cache.add";bp.argumentLengthCheck(arguments,1,r),t=bp.converters.RequestInfo(t,r,"request");let s=[t];return await this.addAll(s)}async addAll(t){bp.brandCheck(this,e);let r="Cache.addAll";bp.argumentLengthCheck(arguments,1,r);let s=[],a=[];for(let v of t){if(v===void 0)throw bp.errors.conversionFailed({prefix:r,argument:"Argument 1",types:["undefined is not allowed"]});if(v=bp.converters.RequestInfo(v),typeof v=="string")continue;let G=v[jH];if(!dAt(G.url)||G.method!=="GET")throw bp.errors.exception({header:r,message:"Expected http/s scheme when method is not GET."})}let o=[];for(let v of t){let G=new iz(v)[jH];if(!dAt(G.url))throw bp.errors.exception({header:r,message:"Expected http/s scheme."});G.initiator="fetch",G.destination="subresource",a.push(G);let T=V2e();o.push(Zvo({request:G,processResponse(O){if(O.type==="error"||O.status===206||O.status<200||O.status>299)T.reject(bp.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(O.headersList.contains("vary")){let X=inr(O.headersList.get("vary"));for(let U of X)if(U==="*"){T.reject(bp.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(let le of o)le.abort();return}}},processResponseEndOfBody(O){if(O.aborted){T.reject(new DOMException("aborted","AbortError"));return}T.resolve(O)}})),s.push(T.promise)}let p=await Promise.all(s),f=[],m=0;for(let v of p){let G={type:"put",request:a[m],response:v};f.push(G),m++}let y=V2e(),B=null;try{this.#t(f)}catch(v){B=v}return queueMicrotask(()=>{B===null?y.resolve(void 0):y.reject(B)}),y.promise}async put(t,r){bp.brandCheck(this,e);let s="Cache.put";bp.argumentLengthCheck(arguments,2,s),t=bp.converters.RequestInfo(t,s,"request"),r=bp.converters.Response(r,s,"response");let a=null;if(t instanceof iz?a=t[jH]:a=new iz(t)[jH],!dAt(a.url)||a.method!=="GET")throw bp.errors.exception({header:s,message:"Expected an http/s scheme when method is not GET"});let o=r[jH];if(o.status===206)throw bp.errors.exception({header:s,message:"Got 206 status"});if(o.headersList.contains("vary")){let G=inr(o.headersList.get("vary"));for(let T of G)if(T==="*")throw bp.errors.exception({header:s,message:"Got * vary field value"})}if(o.body&&(Dvo(o.body.stream)||o.body.stream.locked))throw bp.errors.exception({header:s,message:"Response body is locked or disturbed"});let g=kvo(o),p=V2e();if(o.body!=null){let T=o.body.stream.getReader();Lvo(T).then(p.resolve,p.reject)}else p.resolve(void 0);let f=[],m={type:"put",request:a,response:g};f.push(m);let y=await p.promise;g.body!=null&&(g.body.source=y);let B=V2e(),v=null;try{this.#t(f)}catch(G){v=G}return queueMicrotask(()=>{v===null?B.resolve():B.reject(v)}),B.promise}async delete(t,r={}){bp.brandCheck(this,e);let s="Cache.delete";bp.argumentLengthCheck(arguments,1,s),t=bp.converters.RequestInfo(t,s,"request"),r=bp.converters.CacheQueryOptions(r,s,"options");let a=null;if(t instanceof iz){if(a=t[jH],a.method!=="GET"&&!r.ignoreMethod)return!1}else snr(typeof t=="string"),a=new iz(t)[jH];let o=[],g={type:"delete",request:a,options:r};o.push(g);let p=V2e(),f=null,m;try{m=this.#t(o)}catch(y){f=y}return queueMicrotask(()=>{f===null?p.resolve(!!m?.length):p.reject(f)}),p.promise}async keys(t=void 0,r={}){bp.brandCheck(this,e);let s="Cache.keys";t!==void 0&&(t=bp.converters.RequestInfo(t,s,"request")),r=bp.converters.CacheQueryOptions(r,s,"options");let a=null;if(t!==void 0)if(t instanceof iz){if(a=t[jH],a.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(a=new iz(t)[jH]);let o=V2e(),g=[];if(t===void 0)for(let p of this.#e)g.push(p[0]);else{let p=this.#r(a,r);for(let f of p)g.push(f[0])}return queueMicrotask(()=>{let p=[];for(let f of g){let m=Fvo(f,new AbortController().signal,"immutable");p.push(m)}o.resolve(Object.freeze(p))}),o.promise}#t(t){let r=this.#e,s=[...r],a=[],o=[];try{for(let g of t){if(g.type!=="delete"&&g.type!=="put")throw bp.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if(g.type==="delete"&&g.response!=null)throw bp.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#r(g.request,g.options,a).length)throw new DOMException("???","InvalidStateError");let p;if(g.type==="delete"){if(p=this.#r(g.request,g.options),p.length===0)return[];for(let f of p){let m=r.indexOf(f);snr(m!==-1),r.splice(m,1)}}else if(g.type==="put"){if(g.response==null)throw bp.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});let f=g.request;if(!dAt(f.url))throw bp.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if(f.method!=="GET")throw bp.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(g.options!=null)throw bp.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});p=this.#r(g.request);for(let m of p){let y=r.indexOf(m);snr(y!==-1),r.splice(y,1)}r.push([g.request,g.response]),a.push([g.request,g.response])}o.push([g.request,g.response])}return o}catch(g){throw this.#e.length=0,this.#e=s,g}}#r(t,r,s){let a=[],o=s??this.#e;for(let g of o){let[p,f]=g;this.#n(t,p,f,r)&&a.push(g)}return a}#n(t,r,s=null,a){let o=new URL(t.url),g=new URL(r.url);if(a?.ignoreSearch&&(g.search="",o.search=""),!Rvo(o,g,!0))return!1;if(s==null||a?.ignoreVary||!s.headersList.contains("vary"))return!0;let p=inr(s.headersList.get("vary"));for(let f of p){if(f==="*")return!1;let m=r.headersList.get(f),y=t.headersList.get(f);if(m!==y)return!1}return!0}#i(t,r,s=1/0){let a=null;if(t!==void 0)if(t instanceof iz){if(a=t[jH],a.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(a=new iz(t)[jH]);let o=[];if(t===void 0)for(let p of this.#e)o.push(p[1]);else{let p=this.#r(a,r);for(let f of p)o.push(f[1])}let g=[];for(let p of o){let f=Gvo(p,"immutable");if(g.push(f.clone()),g.length>=s)break}return Object.freeze(g)}};Object.defineProperties(pAt.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:Xde,matchAll:Xde,add:Xde,addAll:Xde,put:Xde,delete:Xde,keys:Xde});var f9n=[{key:"ignoreSearch",converter:bp.converters.boolean,defaultValue:()=>!1},{key:"ignoreMethod",converter:bp.converters.boolean,defaultValue:()=>!1},{key:"ignoreVary",converter:bp.converters.boolean,defaultValue:()=>!1}];bp.converters.CacheQueryOptions=bp.dictionaryConverter(f9n);bp.converters.MultiCacheQueryOptions=bp.dictionaryConverter([...f9n,{key:"cacheName",converter:bp.converters.DOMString}]);bp.converters.Response=bp.interfaceConverter(xvo);bp.converters["sequence"]=bp.sequenceConverter(bp.converters.RequestInfo);I9n.exports={Cache:pAt}});var h9n=z((n7c,m9n)=>{"use strict";var{kConstruct:KPe}=AAt(),{Cache:fAt}=C9n(),{webidl:FF}=ZD(),{kEnumerableProperty:jPe}=tm(),IAt=class e{#e=new Map;constructor(){arguments[0]!==KPe&&FF.illegalConstructor()}async match(t,r={}){if(FF.brandCheck(this,e),FF.argumentLengthCheck(arguments,1,"CacheStorage.match"),t=FF.converters.RequestInfo(t),r=FF.converters.MultiCacheQueryOptions(r),r.cacheName!=null){if(this.#e.has(r.cacheName)){let s=this.#e.get(r.cacheName);return await new fAt(KPe,s).match(t,r)}}else for(let s of this.#e.values()){let o=await new fAt(KPe,s).match(t,r);if(o!==void 0)return o}}async has(t){FF.brandCheck(this,e);let r="CacheStorage.has";return FF.argumentLengthCheck(arguments,1,r),t=FF.converters.DOMString(t,r,"cacheName"),this.#e.has(t)}async open(t){FF.brandCheck(this,e);let r="CacheStorage.open";if(FF.argumentLengthCheck(arguments,1,r),t=FF.converters.DOMString(t,r,"cacheName"),this.#e.has(t)){let a=this.#e.get(t);return new fAt(KPe,a)}let s=[];return this.#e.set(t,s),new fAt(KPe,s)}async delete(t){FF.brandCheck(this,e);let r="CacheStorage.delete";return FF.argumentLengthCheck(arguments,1,r),t=FF.converters.DOMString(t,r,"cacheName"),this.#e.delete(t)}async keys(){return FF.brandCheck(this,e),[...this.#e.keys()]}};Object.defineProperties(IAt.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:jPe,has:jPe,open:jPe,delete:jPe,keys:jPe});m9n.exports={CacheStorage:IAt}});var y9n=z((i7c,_9n)=>{"use strict";_9n.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var onr=z((s7c,S9n)=>{"use strict";function Vvo(e){for(let t=0;t=0&&r<=8||r>=10&&r<=31||r===127)return!0}return!1}function b9n(e){for(let t=0;t126||r===34||r===40||r===41||r===60||r===62||r===64||r===44||r===59||r===58||r===92||r===47||r===91||r===93||r===63||r===61||r===123||r===125)throw new Error("Invalid cookie name")}}function E9n(e){let t=e.length,r=0;if(e[0]==='"'){if(t===1||e[t-1]!=='"')throw new Error("Invalid cookie value");--t,++r}for(;r126||s===34||s===44||s===59||s===92)throw new Error("Invalid cookie value")}}function B9n(e){for(let t=0;tt.toString().padStart(2,"0"));function v9n(e){return typeof e=="number"&&(e=new Date(e)),`${Pvo[e.getUTCDay()]}, ${CAt[e.getUTCDate()]} ${Ovo[e.getUTCMonth()]} ${e.getUTCFullYear()} ${CAt[e.getUTCHours()]}:${CAt[e.getUTCMinutes()]}:${CAt[e.getUTCSeconds()]} GMT`}function Mvo(e){if(e<0)throw new Error("Invalid cookie max-age")}function Qvo(e){if(e.name.length===0)return null;b9n(e.name),E9n(e.value);let t=[`${e.name}=${e.value}`];e.name.startsWith("__Secure-")&&(e.secure=!0),e.name.startsWith("__Host-")&&(e.secure=!0,e.domain=null,e.path="/"),e.secure&&t.push("Secure"),e.httpOnly&&t.push("HttpOnly"),typeof e.maxAge=="number"&&(Mvo(e.maxAge),t.push(`Max-Age=${e.maxAge}`)),e.domain&&(Wvo(e.domain),t.push(`Domain=${e.domain}`)),e.path&&(B9n(e.path),t.push(`Path=${e.path}`)),e.expires&&e.expires.toString()!=="Invalid Date"&&t.push(`Expires=${v9n(e.expires)}`),e.sameSite&&t.push(`SameSite=${e.sameSite}`);for(let r of e.unparsed){if(!r.includes("="))throw new Error("Invalid unparsed");let[s,...a]=r.split("=");t.push(`${s.trim()}=${a.join("=")}`)}return t.join("; ")}S9n.exports={isCTLExcludingHtab:Vvo,validateCookieName:b9n,validateCookiePath:B9n,validateCookieValue:E9n,toIMFDate:v9n,stringify:Qvo}});var T9n=z((o7c,w9n)=>{"use strict";var{maxNameValuePairSize:Yvo,maxAttributeValueSize:Hvo}=y9n(),{isCTLExcludingHtab:Xvo}=onr(),{collectASequenceOfCodePointsFast:mAt}=ML(),Jvo=Dt("node:assert");function Uvo(e){if(Xvo(e))return null;let t="",r="",s="",a="";if(e.includes(";")){let o={position:0};t=mAt(";",e,o),r=e.slice(o.position)}else t=e;if(!t.includes("="))a=t;else{let o={position:0};s=mAt("=",t,o),a=t.slice(o.position+1)}return s=s.trim(),a=a.trim(),s.length+a.length>Yvo?null:{name:s,value:a,...W2e(r)}}function W2e(e,t={}){if(e.length===0)return t;Jvo(e[0]===";"),e=e.slice(1);let r="";e.includes(";")?(r=mAt(";",e,{position:0}),e=e.slice(r.length)):(r=e,e="");let s="",a="";if(r.includes("=")){let g={position:0};s=mAt("=",r,g),a=r.slice(g.position+1)}else s=r;if(s=s.trim(),a=a.trim(),a.length>Hvo)return W2e(e,t);let o=s.toLowerCase();if(o==="expires"){let g=new Date(a);t.expires=g}else if(o==="max-age"){let g=a.charCodeAt(0);if((g<48||g>57)&&a[0]!=="-"||!/^\d+$/.test(a))return W2e(e,t);let p=Number(a);t.maxAge=p}else if(o==="domain"){let g=a;g[0]==="."&&(g=g.slice(1)),g=g.toLowerCase(),t.domain=g}else if(o==="path"){let g="";a.length===0||a[0]!=="/"?g="/":g=a,t.path=g}else if(o==="secure")t.secure=!0;else if(o==="httponly")t.httpOnly=!0;else if(o==="samesite"){let g="Default",p=a.toLowerCase();p.includes("none")&&(g="None"),p.includes("strict")&&(g="Strict"),p.includes("lax")&&(g="Lax"),t.sameSite=g}else t.unparsed??=[],t.unparsed.push(`${s}=${a}`);return W2e(e,t)}w9n.exports={parseSetCookie:Uvo,parseUnparsedAttributes:W2e}});var D9n=z((a7c,R9n)=>{"use strict";var{parseSetCookie:Kvo}=T9n(),{stringify:jvo}=onr(),{webidl:Vm}=ZD(),{Headers:hAt}=Ode();function zvo(e){Vm.argumentLengthCheck(arguments,1,"getCookies"),Vm.brandCheck(e,hAt,{strict:!1});let t=e.get("cookie"),r={};if(!t)return r;for(let s of t.split(";")){let[a,...o]=s.split("=");r[a.trim()]=o.join("=")}return r}function qvo(e,t,r){Vm.brandCheck(e,hAt,{strict:!1});let s="deleteCookie";Vm.argumentLengthCheck(arguments,2,s),t=Vm.converters.DOMString(t,s,"name"),r=Vm.converters.DeleteCookieAttributes(r),N9n(e,{name:t,value:"",expires:new Date(0),...r})}function $vo(e){Vm.argumentLengthCheck(arguments,1,"getSetCookies"),Vm.brandCheck(e,hAt,{strict:!1});let t=e.getSetCookie();return t?t.map(r=>Kvo(r)):[]}function N9n(e,t){Vm.argumentLengthCheck(arguments,2,"setCookie"),Vm.brandCheck(e,hAt,{strict:!1}),t=Vm.converters.Cookie(t);let r=jvo(t);r&&e.append("Set-Cookie",r)}Vm.converters.DeleteCookieAttributes=Vm.dictionaryConverter([{converter:Vm.nullableConverter(Vm.converters.DOMString),key:"path",defaultValue:()=>null},{converter:Vm.nullableConverter(Vm.converters.DOMString),key:"domain",defaultValue:()=>null}]);Vm.converters.Cookie=Vm.dictionaryConverter([{converter:Vm.converters.DOMString,key:"name"},{converter:Vm.converters.DOMString,key:"value"},{converter:Vm.nullableConverter(e=>typeof e=="number"?Vm.converters["unsigned long long"](e):new Date(e)),key:"expires",defaultValue:()=>null},{converter:Vm.nullableConverter(Vm.converters["long long"]),key:"maxAge",defaultValue:()=>null},{converter:Vm.nullableConverter(Vm.converters.DOMString),key:"domain",defaultValue:()=>null},{converter:Vm.nullableConverter(Vm.converters.DOMString),key:"path",defaultValue:()=>null},{converter:Vm.nullableConverter(Vm.converters.boolean),key:"secure",defaultValue:()=>null},{converter:Vm.nullableConverter(Vm.converters.boolean),key:"httpOnly",defaultValue:()=>null},{converter:Vm.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:Vm.sequenceConverter(Vm.converters.DOMString),key:"unparsed",defaultValue:()=>new Array(0)}]);R9n.exports={getCookies:zvo,deleteCookie:qvo,getSetCookies:$vo,setCookie:N9n}});var O2e=z((c7c,k9n)=>{"use strict";var{webidl:Lp}=ZD(),{kEnumerableProperty:XL}=tm(),{kConstruct:x9n}=j1(),{MessagePort:eSo}=Dt("node:worker_threads"),P2e=class e extends Event{#e;constructor(t,r={}){if(t===x9n){super(arguments[1],arguments[2]);return}let s="MessageEvent constructor";Lp.argumentLengthCheck(arguments,1,s),t=Lp.converters.DOMString(t,s,"type"),r=Lp.converters.MessageEventInit(r,s,"eventInitDict"),super(t,r),this.#e=r}get data(){return Lp.brandCheck(this,e),this.#e.data}get origin(){return Lp.brandCheck(this,e),this.#e.origin}get lastEventId(){return Lp.brandCheck(this,e),this.#e.lastEventId}get source(){return Lp.brandCheck(this,e),this.#e.source}get ports(){return Lp.brandCheck(this,e),Object.isFrozen(this.#e.ports)||Object.freeze(this.#e.ports),this.#e.ports}initMessageEvent(t,r=!1,s=!1,a=null,o="",g="",p=null,f=[]){return Lp.brandCheck(this,e),Lp.argumentLengthCheck(arguments,1,"MessageEvent.initMessageEvent"),new e(t,{bubbles:r,cancelable:s,data:a,origin:o,lastEventId:g,source:p,ports:f})}static createFastMessageEvent(t,r){let s=new e(x9n,t,r);return s.#e=r,s.#e.data??=null,s.#e.origin??="",s.#e.lastEventId??="",s.#e.source??=null,s.#e.ports??=[],s}},{createFastMessageEvent:tSo}=P2e;delete P2e.createFastMessageEvent;var _At=class e extends Event{#e;constructor(t,r={}){let s="CloseEvent constructor";Lp.argumentLengthCheck(arguments,1,s),t=Lp.converters.DOMString(t,s,"type"),r=Lp.converters.CloseEventInit(r),super(t,r),this.#e=r}get wasClean(){return Lp.brandCheck(this,e),this.#e.wasClean}get code(){return Lp.brandCheck(this,e),this.#e.code}get reason(){return Lp.brandCheck(this,e),this.#e.reason}},yAt=class e extends Event{#e;constructor(t,r){let s="ErrorEvent constructor";Lp.argumentLengthCheck(arguments,1,s),super(t,r),t=Lp.converters.DOMString(t,s,"type"),r=Lp.converters.ErrorEventInit(r??{}),this.#e=r}get message(){return Lp.brandCheck(this,e),this.#e.message}get filename(){return Lp.brandCheck(this,e),this.#e.filename}get lineno(){return Lp.brandCheck(this,e),this.#e.lineno}get colno(){return Lp.brandCheck(this,e),this.#e.colno}get error(){return Lp.brandCheck(this,e),this.#e.error}};Object.defineProperties(P2e.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:XL,origin:XL,lastEventId:XL,source:XL,ports:XL,initMessageEvent:XL});Object.defineProperties(_At.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:XL,code:XL,wasClean:XL});Object.defineProperties(yAt.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:XL,filename:XL,lineno:XL,colno:XL,error:XL});Lp.converters.MessagePort=Lp.interfaceConverter(eSo);Lp.converters["sequence"]=Lp.sequenceConverter(Lp.converters.MessagePort);var anr=[{key:"bubbles",converter:Lp.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:Lp.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:Lp.converters.boolean,defaultValue:()=>!1}];Lp.converters.MessageEventInit=Lp.dictionaryConverter([...anr,{key:"data",converter:Lp.converters.any,defaultValue:()=>null},{key:"origin",converter:Lp.converters.USVString,defaultValue:()=>""},{key:"lastEventId",converter:Lp.converters.DOMString,defaultValue:()=>""},{key:"source",converter:Lp.nullableConverter(Lp.converters.MessagePort),defaultValue:()=>null},{key:"ports",converter:Lp.converters["sequence"],defaultValue:()=>new Array(0)}]);Lp.converters.CloseEventInit=Lp.dictionaryConverter([...anr,{key:"wasClean",converter:Lp.converters.boolean,defaultValue:()=>!1},{key:"code",converter:Lp.converters["unsigned short"],defaultValue:()=>0},{key:"reason",converter:Lp.converters.USVString,defaultValue:()=>""}]);Lp.converters.ErrorEventInit=Lp.dictionaryConverter([...anr,{key:"message",converter:Lp.converters.DOMString,defaultValue:()=>""},{key:"filename",converter:Lp.converters.USVString,defaultValue:()=>""},{key:"lineno",converter:Lp.converters["unsigned long"],defaultValue:()=>0},{key:"colno",converter:Lp.converters["unsigned long"],defaultValue:()=>0},{key:"error",converter:Lp.converters.any}]);k9n.exports={MessageEvent:P2e,CloseEvent:_At,ErrorEvent:yAt,createFastMessageEvent:tSo}});var Jde=z((l7c,G9n)=>{"use strict";var rSo="258EAFA5-E914-47DA-95CA-C5AB0DC85B11",nSo={enumerable:!0,writable:!1,configurable:!1},iSo={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},sSo={NOT_SENT:0,PROCESSING:1,SENT:2},oSo={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},aSo=2**16-1,cSo={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},lSo=Buffer.allocUnsafe(0),uSo={string:1,typedArray:2,arrayBuffer:3,blob:4};G9n.exports={uid:rSo,sentCloseFrameState:sSo,staticPropertyDescriptors:nSo,states:iSo,opcodes:oSo,maxUnsigned16Bit:aSo,parserStates:cSo,emptyBuffer:lSo,sendHints:uSo}});var zPe=z((u7c,F9n)=>{"use strict";F9n.exports={kWebSocketURL:Symbol("url"),kReadyState:Symbol("ready state"),kController:Symbol("controller"),kResponse:Symbol("response"),kBinaryType:Symbol("binary type"),kSentClose:Symbol("sent close"),kReceivedClose:Symbol("received close"),kByteParser:Symbol("byte parser")}});var eOe=z((g7c,Y9n)=>{"use strict";var{kReadyState:qPe,kController:gSo,kResponse:ASo,kBinaryType:dSo,kWebSocketURL:pSo}=zPe(),{states:$Pe,opcodes:wie}=Jde(),{ErrorEvent:fSo,createFastMessageEvent:ISo}=O2e(),{isUtf8:CSo}=Dt("node:buffer"),{collectASequenceOfCodePointsFast:mSo,removeHTTPWhitespace:Z9n}=ML();function hSo(e){return e[qPe]===$Pe.CONNECTING}function _So(e){return e[qPe]===$Pe.OPEN}function ySo(e){return e[qPe]===$Pe.CLOSING}function bSo(e){return e[qPe]===$Pe.CLOSED}function cnr(e,t,r=(a,o)=>new Event(a,o),s={}){let a=r(e,s);t.dispatchEvent(a)}function ESo(e,t,r){if(e[qPe]!==$Pe.OPEN)return;let s;if(t===wie.TEXT)try{s=Q9n(r)}catch{V9n(e,"Received invalid UTF-8 in text frame.");return}else t===wie.BINARY&&(e[dSo]==="blob"?s=new Blob([r]):s=BSo(r));cnr("message",e,ISo,{origin:e[pSo].origin,data:s})}function BSo(e){return e.byteLength===e.buffer.byteLength?e.buffer:e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength)}function vSo(e){if(e.length===0)return!1;for(let t=0;t126||r===34||r===40||r===41||r===44||r===47||r===58||r===59||r===60||r===61||r===62||r===63||r===64||r===91||r===92||r===93||r===123||r===125)return!1}return!0}function SSo(e){return e>=1e3&&e<1015?e!==1004&&e!==1005&&e!==1006:e>=3e3&&e<=4999}function V9n(e,t){let{[gSo]:r,[ASo]:s}=e;r.abort(),s?.socket&&!s.socket.destroyed&&s.socket.destroy(),t&&cnr("error",e,(a,o)=>new fSo(a,o),{error:new Error(t),message:t})}function W9n(e){return e===wie.CLOSE||e===wie.PING||e===wie.PONG}function P9n(e){return e===wie.CONTINUATION}function O9n(e){return e===wie.TEXT||e===wie.BINARY}function wSo(e){return O9n(e)||P9n(e)||W9n(e)}function TSo(e){let t={position:0},r=new Map;for(;t.position57)return!1}return!0}var M9n=typeof process.versions.icu=="string",L9n=M9n?new TextDecoder("utf-8",{fatal:!0}):void 0,Q9n=M9n?L9n.decode.bind(L9n):function(e){if(CSo(e))return e.toString("utf-8");throw new TypeError("Invalid utf-8 received.")};Y9n.exports={isConnecting:hSo,isEstablished:_So,isClosing:ySo,isClosed:bSo,fireEvent:cnr,isValidSubprotocol:vSo,isValidStatusCode:SSo,failWebsocketConnection:V9n,websocketMessageReceived:ESo,utf8Decode:Q9n,isControlFrame:W9n,isContinuationFrame:P9n,isTextBinaryFrame:O9n,isValidOpcode:wSo,parseExtensions:TSo,isValidClientWindowBits:NSo}});var EAt=z((A7c,H9n)=>{"use strict";var{maxUnsigned16Bit:RSo}=Jde(),bAt=16386,lnr,tOe=null,M2e=bAt;try{lnr=Dt("node:crypto")}catch{lnr={randomFillSync:function(t,r,s){for(let a=0;aRSo?(g+=8,o=127):a>125&&(g+=2,o=126);let p=Buffer.allocUnsafe(a+g);p[0]=p[1]=0,p[0]|=128,p[0]=(p[0]&240)+t;p[g-4]=s[0],p[g-3]=s[1],p[g-2]=s[2],p[g-1]=s[3],p[1]=o,o===126?p.writeUInt16BE(a,2):o===127&&(p[2]=p[3]=0,p.writeUIntBE(a,4,6)),p[1]|=128;for(let f=0;f{"use strict";var{uid:xSo,states:rOe,sentCloseFrameState:BAt,emptyBuffer:kSo,opcodes:GSo}=Jde(),{kReadyState:nOe,kSentClose:vAt,kByteParser:J9n,kReceivedClose:X9n,kResponse:U9n}=zPe(),{fireEvent:FSo,failWebsocketConnection:Tie,isClosing:ZSo,isClosed:LSo,isEstablished:VSo,parseExtensions:WSo}=eOe(),{channels:Q2e}=i2e(),{CloseEvent:PSo}=O2e(),{makeRequest:OSo}=F2e(),{fetching:MSo}=JPe(),{Headers:QSo,getHeadersList:YSo}=Ode(),{getDecodeSplit:HSo}=LW(),{WebsocketFrameSend:XSo}=EAt(),gnr;try{gnr=Dt("node:crypto")}catch{}function JSo(e,t,r,s,a,o){let g=e;g.protocol=e.protocol==="ws:"?"http:":"https:";let p=OSo({urlList:[g],client:r,serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(o.headers){let B=YSo(new QSo(o.headers));p.headersList=B}let f=gnr.randomBytes(16).toString("base64");p.headersList.append("sec-websocket-key",f),p.headersList.append("sec-websocket-version","13");for(let B of t)p.headersList.append("sec-websocket-protocol",B);return p.headersList.append("sec-websocket-extensions","permessage-deflate; client_max_window_bits"),MSo({request:p,useParallelQueue:!0,dispatcher:o.dispatcher,processResponse(B){if(B.type==="error"||B.status!==101){Tie(s,"Received network error or non-101 status code.");return}if(t.length!==0&&!B.headersList.get("Sec-WebSocket-Protocol")){Tie(s,"Server did not respond with sent protocols.");return}if(B.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){Tie(s,'Server did not set Upgrade header to "websocket".');return}if(B.headersList.get("Connection")?.toLowerCase()!=="upgrade"){Tie(s,'Server did not set Connection header to "upgrade".');return}let v=B.headersList.get("Sec-WebSocket-Accept"),G=gnr.createHash("sha1").update(f+xSo).digest("base64");if(v!==G){Tie(s,"Incorrect hash received in Sec-WebSocket-Accept header.");return}let T=B.headersList.get("Sec-WebSocket-Extensions"),O;if(T!==null&&(O=WSo(T),!O.has("permessage-deflate"))){Tie(s,"Sec-WebSocket-Extensions header does not match.");return}let X=B.headersList.get("Sec-WebSocket-Protocol");if(X!==null&&!HSo("sec-websocket-protocol",p.headersList).includes(X)){Tie(s,"Protocol was not set in the opening handshake.");return}B.socket.on("data",K9n),B.socket.on("close",j9n),B.socket.on("error",z9n),Q2e.open.hasSubscribers&&Q2e.open.publish({address:B.socket.address(),protocol:X,extensions:T}),a(B,O)}})}function USo(e,t,r,s){if(!(ZSo(e)||LSo(e)))if(!VSo(e))Tie(e,"Connection was closed before it was established."),e[nOe]=rOe.CLOSING;else if(e[vAt]===BAt.NOT_SENT){e[vAt]=BAt.PROCESSING;let a=new XSo;t!==void 0&&r===void 0?(a.frameData=Buffer.allocUnsafe(2),a.frameData.writeUInt16BE(t,0)):t!==void 0&&r!==void 0?(a.frameData=Buffer.allocUnsafe(2+s),a.frameData.writeUInt16BE(t,0),a.frameData.write(r,2,"utf-8")):a.frameData=kSo,e[U9n].socket.write(a.createFrame(GSo.CLOSE)),e[vAt]=BAt.SENT,e[nOe]=rOe.CLOSING}else e[nOe]=rOe.CLOSING}function K9n(e){this.ws[J9n].write(e)||this.pause()}function j9n(){let{ws:e}=this,{[U9n]:t}=e;t.socket.off("data",K9n),t.socket.off("close",j9n),t.socket.off("error",z9n);let r=e[vAt]===BAt.SENT&&e[X9n],s=1005,a="",o=e[J9n].closingInfo;o&&!o.error?(s=o.code??1005,a=o.reason):e[X9n]||(s=1006),e[nOe]=rOe.CLOSED,FSo("close",e,(g,p)=>new PSo(g,p),{wasClean:r,code:s,reason:a}),Q2e.close.hasSubscribers&&Q2e.close.publish({websocket:e,code:s,reason:a})}function z9n(e){let{ws:t}=this;t[nOe]=rOe.CLOSING,Q2e.socketError.hasSubscribers&&Q2e.socketError.publish(e),this.destroy()}q9n.exports={establishWebSocketConnection:JSo,closeWebSocketConnection:USo}});var eVn=z((p7c,$9n)=>{"use strict";var{createInflateRaw:KSo,Z_DEFAULT_WINDOWBITS:jSo}=Dt("node:zlib"),{isValidClientWindowBits:zSo}=eOe(),qSo=Buffer.from([0,0,255,255]),SAt=Symbol("kBuffer"),wAt=Symbol("kLength"),dnr=class{#e;#t={};constructor(t){this.#t.serverNoContextTakeover=t.has("server_no_context_takeover"),this.#t.serverMaxWindowBits=t.get("server_max_window_bits")}decompress(t,r,s){if(!this.#e){let a=jSo;if(this.#t.serverMaxWindowBits){if(!zSo(this.#t.serverMaxWindowBits)){s(new Error("Invalid server_max_window_bits"));return}a=Number.parseInt(this.#t.serverMaxWindowBits)}this.#e=KSo({windowBits:a}),this.#e[SAt]=[],this.#e[wAt]=0,this.#e.on("data",o=>{this.#e[SAt].push(o),this.#e[wAt]+=o.length}),this.#e.on("error",o=>{this.#e=null,s(o)})}this.#e.write(t),r&&this.#e.write(qSo),this.#e.flush(()=>{let a=Buffer.concat(this.#e[SAt],this.#e[wAt]);this.#e[SAt].length=0,this.#e[wAt]=0,s(null,a)})}};$9n.exports={PerMessageDeflate:dnr}});var gVn=z((f7c,uVn)=>{"use strict";var{Writable:$So}=Dt("node:stream"),ewo=Dt("node:assert"),{parserStates:JL,opcodes:Y2e,states:two,emptyBuffer:tVn,sentCloseFrameState:rVn}=Jde(),{kReadyState:rwo,kSentClose:nVn,kResponse:iVn,kReceivedClose:sVn}=zPe(),{channels:TAt}=i2e(),{isValidStatusCode:nwo,isValidOpcode:iwo,failWebsocketConnection:nM,websocketMessageReceived:oVn,utf8Decode:swo,isControlFrame:aVn,isTextBinaryFrame:pnr,isContinuationFrame:owo}=eOe(),{WebsocketFrameSend:cVn}=EAt(),{closeWebSocketConnection:lVn}=Anr(),{PerMessageDeflate:awo}=eVn(),fnr=class extends $So{#e=[];#t=0;#r=!1;#n=JL.INFO;#i={};#a=[];#s;constructor(t,r){super(),this.ws=t,this.#s=r??new Map,this.#s.has("permessage-deflate")&&this.#s.set("permessage-deflate",new awo(r))}_write(t,r,s){this.#e.push(t),this.#t+=t.length,this.#r=!0,this.run(s)}run(t){for(;this.#r;)if(this.#n===JL.INFO){if(this.#t<2)return t();let r=this.consume(2),s=(r[0]&128)!==0,a=r[0]&15,o=(r[1]&128)===128,g=!s&&a!==Y2e.CONTINUATION,p=r[1]&127,f=r[0]&64,m=r[0]&32,y=r[0]&16;if(!iwo(a))return nM(this.ws,"Invalid opcode received"),t();if(o)return nM(this.ws,"Frame cannot be masked"),t();if(f!==0&&!this.#s.has("permessage-deflate")){nM(this.ws,"Expected RSV1 to be clear.");return}if(m!==0||y!==0){nM(this.ws,"RSV1, RSV2, RSV3 must be clear");return}if(g&&!pnr(a)){nM(this.ws,"Invalid frame type was fragmented.");return}if(pnr(a)&&this.#a.length>0){nM(this.ws,"Expected continuation frame");return}if(this.#i.fragmented&&g){nM(this.ws,"Fragmented frame exceeded 125 bytes.");return}if((p>125||g)&&aVn(a)){nM(this.ws,"Control frame either too large or fragmented");return}if(owo(a)&&this.#a.length===0&&!this.#i.compressed){nM(this.ws,"Unexpected continuation frame");return}p<=125?(this.#i.payloadLength=p,this.#n=JL.READ_DATA):p===126?this.#n=JL.PAYLOADLENGTH_16:p===127&&(this.#n=JL.PAYLOADLENGTH_64),pnr(a)&&(this.#i.binaryType=a,this.#i.compressed=f!==0),this.#i.opcode=a,this.#i.masked=o,this.#i.fin=s,this.#i.fragmented=g}else if(this.#n===JL.PAYLOADLENGTH_16){if(this.#t<2)return t();let r=this.consume(2);this.#i.payloadLength=r.readUInt16BE(0),this.#n=JL.READ_DATA}else if(this.#n===JL.PAYLOADLENGTH_64){if(this.#t<8)return t();let r=this.consume(8),s=r.readUInt32BE(0);if(s>2**31-1){nM(this.ws,"Received payload length > 2^31 bytes.");return}let a=r.readUInt32BE(4);this.#i.payloadLength=(s<<8)+a,this.#n=JL.READ_DATA}else if(this.#n===JL.READ_DATA){if(this.#t{if(s){lVn(this.ws,1007,s.message,s.message.length);return}if(this.#a.push(a),!this.#i.fin){this.#n=JL.INFO,this.#r=!0,this.run(t);return}oVn(this.ws,this.#i.binaryType,Buffer.concat(this.#a)),this.#r=!0,this.#n=JL.INFO,this.#a.length=0,this.run(t)}),this.#r=!1;break}else{if(this.#a.push(r),!this.#i.fragmented&&this.#i.fin){let s=Buffer.concat(this.#a);oVn(this.ws,this.#i.binaryType,s),this.#a.length=0}this.#n=JL.INFO}}}consume(t){if(t>this.#t)throw new Error("Called consume() before buffers satiated.");if(t===0)return tVn;if(this.#e[0].length===t)return this.#t-=this.#e[0].length,this.#e.shift();let r=Buffer.allocUnsafe(t),s=0;for(;s!==t;){let a=this.#e[0],{length:o}=a;if(o+s===t){r.set(this.#e.shift(),s);break}else if(o+s>t){r.set(a.subarray(0,t-s),s),this.#e[0]=a.subarray(t-s);break}else r.set(this.#e.shift(),s),s+=a.length}return this.#t-=t,r}parseCloseBody(t){ewo(t.length!==1);let r;if(t.length>=2&&(r=t.readUInt16BE(0)),r!==void 0&&!nwo(r))return{code:1002,reason:"Invalid status code",error:!0};let s=t.subarray(2);s[0]===239&&s[1]===187&&s[2]===191&&(s=s.subarray(3));try{s=swo(s)}catch{return{code:1007,reason:"Invalid UTF-8",error:!0}}return{code:r,reason:s,error:!1}}parseControlFrame(t){let{opcode:r,payloadLength:s}=this.#i;if(r===Y2e.CLOSE){if(s===1)return nM(this.ws,"Received close frame with a 1-byte body."),!1;if(this.#i.closeInfo=this.parseCloseBody(t),this.#i.closeInfo.error){let{code:a,reason:o}=this.#i.closeInfo;return lVn(this.ws,a,o,o.length),nM(this.ws,o),!1}if(this.ws[nVn]!==rVn.SENT){let a=tVn;this.#i.closeInfo.code&&(a=Buffer.allocUnsafe(2),a.writeUInt16BE(this.#i.closeInfo.code,0));let o=new cVn(a);this.ws[iVn].socket.write(o.createFrame(Y2e.CLOSE),g=>{g||(this.ws[nVn]=rVn.SENT)})}return this.ws[rwo]=two.CLOSING,this.ws[sVn]=!0,!1}else if(r===Y2e.PING){if(!this.ws[sVn]){let a=new cVn(t);this.ws[iVn].socket.write(a.createFrame(Y2e.PONG)),TAt.ping.hasSubscribers&&TAt.ping.publish({payload:t})}}else r===Y2e.PONG&&TAt.pong.hasSubscribers&&TAt.pong.publish({payload:t});return!0}get closingInfo(){return this.#i.closeInfo}};uVn.exports={ByteParser:fnr}});var IVn=z((I7c,fVn)=>{"use strict";var{WebsocketFrameSend:cwo}=EAt(),{opcodes:AVn,sendHints:H2e}=Jde(),lwo=wtr(),dVn=Buffer[Symbol.species],Inr=class{#e=new lwo;#t=!1;#r;constructor(t){this.#r=t}add(t,r,s){if(s!==H2e.blob){let o=pVn(t,s);if(!this.#t)this.#r.write(o,r);else{let g={promise:null,callback:r,frame:o};this.#e.push(g)}return}let a={promise:t.arrayBuffer().then(o=>{a.promise=null,a.frame=pVn(o,s)}),callback:r,frame:null};this.#e.push(a),this.#t||this.#n()}async#n(){this.#t=!0;let t=this.#e;for(;!t.isEmpty();){let r=t.shift();r.promise!==null&&await r.promise,this.#r.write(r.frame,r.callback),r.callback=r.frame=null}this.#t=!1}};function pVn(e,t){return new cwo(uwo(e,t)).createFrame(t===H2e.string?AVn.TEXT:AVn.BINARY)}function uwo(e,t){switch(t){case H2e.string:return Buffer.from(e);case H2e.arrayBuffer:case H2e.blob:return new dVn(e);case H2e.typedArray:return new dVn(e.buffer,e.byteOffset,e.byteLength)}}fVn.exports={SendQueue:Inr}});var vVn=z((C7c,BVn)=>{"use strict";var{webidl:qf}=ZD(),{URLSerializer:gwo}=ML(),{environmentSettingsObject:CVn}=LW(),{staticPropertyDescriptors:Nie,states:iOe,sentCloseFrameState:Awo,sendHints:NAt}=Jde(),{kWebSocketURL:mVn,kReadyState:Cnr,kController:dwo,kBinaryType:RAt,kResponse:hVn,kSentClose:pwo,kByteParser:fwo}=zPe(),{isConnecting:Iwo,isEstablished:Cwo,isClosing:mwo,isValidSubprotocol:hwo,fireEvent:_Vn}=eOe(),{establishWebSocketConnection:_wo,closeWebSocketConnection:yVn}=Anr(),{ByteParser:ywo}=gVn(),{kEnumerableProperty:iM,isBlobLike:bVn}=tm(),{getGlobalDispatcher:bwo}=Hgt(),{types:EVn}=Dt("node:util"),{ErrorEvent:Ewo,CloseEvent:Bwo}=O2e(),{SendQueue:vwo}=IVn(),QW=class e extends EventTarget{#e={open:null,error:null,close:null,message:null};#t=0;#r="";#n="";#i;constructor(t,r=[]){super();let s="WebSocket constructor";qf.argumentLengthCheck(arguments,1,s);let a=qf.converters["DOMString or sequence or WebSocketInit"](r,s,"options");t=qf.converters.USVString(t,s,"url"),r=a.protocols;let o=CVn.settingsObject.baseUrl,g;try{g=new URL(t,o)}catch(f){throw new DOMException(f,"SyntaxError")}if(g.protocol==="http:"?g.protocol="ws:":g.protocol==="https:"&&(g.protocol="wss:"),g.protocol!=="ws:"&&g.protocol!=="wss:")throw new DOMException(`Expected a ws: or wss: protocol, got ${g.protocol}`,"SyntaxError");if(g.hash||g.href.endsWith("#"))throw new DOMException("Got fragment","SyntaxError");if(typeof r=="string"&&(r=[r]),r.length!==new Set(r.map(f=>f.toLowerCase())).size)throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(r.length>0&&!r.every(f=>hwo(f)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");this[mVn]=new URL(g.href);let p=CVn.settingsObject;this[dwo]=_wo(g,r,p,this,(f,m)=>this.#a(f,m),a),this[Cnr]=e.CONNECTING,this[pwo]=Awo.NOT_SENT,this[RAt]="blob"}close(t=void 0,r=void 0){qf.brandCheck(this,e);let s="WebSocket.close";if(t!==void 0&&(t=qf.converters["unsigned short"](t,s,"code",{clamp:!0})),r!==void 0&&(r=qf.converters.USVString(r,s,"reason")),t!==void 0&&t!==1e3&&(t<3e3||t>4999))throw new DOMException("invalid code","InvalidAccessError");let a=0;if(r!==void 0&&(a=Buffer.byteLength(r),a>123))throw new DOMException(`Reason must be less than 123 bytes; received ${a}`,"SyntaxError");yVn(this,t,r,a)}send(t){qf.brandCheck(this,e);let r="WebSocket.send";if(qf.argumentLengthCheck(arguments,1,r),t=qf.converters.WebSocketSendData(t,r,"data"),Iwo(this))throw new DOMException("Sent before connected.","InvalidStateError");if(!(!Cwo(this)||mwo(this)))if(typeof t=="string"){let s=Buffer.byteLength(t);this.#t+=s,this.#i.add(t,()=>{this.#t-=s},NAt.string)}else EVn.isArrayBuffer(t)?(this.#t+=t.byteLength,this.#i.add(t,()=>{this.#t-=t.byteLength},NAt.arrayBuffer)):ArrayBuffer.isView(t)?(this.#t+=t.byteLength,this.#i.add(t,()=>{this.#t-=t.byteLength},NAt.typedArray)):bVn(t)&&(this.#t+=t.size,this.#i.add(t,()=>{this.#t-=t.size},NAt.blob))}get readyState(){return qf.brandCheck(this,e),this[Cnr]}get bufferedAmount(){return qf.brandCheck(this,e),this.#t}get url(){return qf.brandCheck(this,e),gwo(this[mVn])}get extensions(){return qf.brandCheck(this,e),this.#n}get protocol(){return qf.brandCheck(this,e),this.#r}get onopen(){return qf.brandCheck(this,e),this.#e.open}set onopen(t){qf.brandCheck(this,e),this.#e.open&&this.removeEventListener("open",this.#e.open),typeof t=="function"?(this.#e.open=t,this.addEventListener("open",t)):this.#e.open=null}get onerror(){return qf.brandCheck(this,e),this.#e.error}set onerror(t){qf.brandCheck(this,e),this.#e.error&&this.removeEventListener("error",this.#e.error),typeof t=="function"?(this.#e.error=t,this.addEventListener("error",t)):this.#e.error=null}get onclose(){return qf.brandCheck(this,e),this.#e.close}set onclose(t){qf.brandCheck(this,e),this.#e.close&&this.removeEventListener("close",this.#e.close),typeof t=="function"?(this.#e.close=t,this.addEventListener("close",t)):this.#e.close=null}get onmessage(){return qf.brandCheck(this,e),this.#e.message}set onmessage(t){qf.brandCheck(this,e),this.#e.message&&this.removeEventListener("message",this.#e.message),typeof t=="function"?(this.#e.message=t,this.addEventListener("message",t)):this.#e.message=null}get binaryType(){return qf.brandCheck(this,e),this[RAt]}set binaryType(t){qf.brandCheck(this,e),t!=="blob"&&t!=="arraybuffer"?this[RAt]="blob":this[RAt]=t}#a(t,r){this[hVn]=t;let s=new ywo(this,r);s.on("drain",Swo),s.on("error",wwo.bind(this)),t.socket.ws=this,this[fwo]=s,this.#i=new vwo(t.socket),this[Cnr]=iOe.OPEN;let a=t.headersList.get("sec-websocket-extensions");a!==null&&(this.#n=a);let o=t.headersList.get("sec-websocket-protocol");o!==null&&(this.#r=o),_Vn("open",this)}};QW.CONNECTING=QW.prototype.CONNECTING=iOe.CONNECTING;QW.OPEN=QW.prototype.OPEN=iOe.OPEN;QW.CLOSING=QW.prototype.CLOSING=iOe.CLOSING;QW.CLOSED=QW.prototype.CLOSED=iOe.CLOSED;Object.defineProperties(QW.prototype,{CONNECTING:Nie,OPEN:Nie,CLOSING:Nie,CLOSED:Nie,url:iM,readyState:iM,bufferedAmount:iM,onopen:iM,onerror:iM,onclose:iM,close:iM,onmessage:iM,binaryType:iM,send:iM,extensions:iM,protocol:iM,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(QW,{CONNECTING:Nie,OPEN:Nie,CLOSING:Nie,CLOSED:Nie});qf.converters["sequence"]=qf.sequenceConverter(qf.converters.DOMString);qf.converters["DOMString or sequence"]=function(e,t,r){return qf.util.Type(e)==="Object"&&Symbol.iterator in e?qf.converters["sequence"](e):qf.converters.DOMString(e,t,r)};qf.converters.WebSocketInit=qf.dictionaryConverter([{key:"protocols",converter:qf.converters["DOMString or sequence"],defaultValue:()=>new Array(0)},{key:"dispatcher",converter:qf.converters.any,defaultValue:()=>bwo()},{key:"headers",converter:qf.nullableConverter(qf.converters.HeadersInit)}]);qf.converters["DOMString or sequence or WebSocketInit"]=function(e){return qf.util.Type(e)==="Object"&&!(Symbol.iterator in e)?qf.converters.WebSocketInit(e):{protocols:qf.converters["DOMString or sequence"](e)}};qf.converters.WebSocketSendData=function(e){if(qf.util.Type(e)==="Object"){if(bVn(e))return qf.converters.Blob(e,{strict:!1});if(ArrayBuffer.isView(e)||EVn.isArrayBuffer(e))return qf.converters.BufferSource(e)}return qf.converters.USVString(e)};function Swo(){this.ws[hVn].socket.resume()}function wwo(e){let t,r;e instanceof Bwo?(t=e.reason,r=e.code):t=e.message,_Vn("error",this,()=>new Ewo("error",{error:e,message:t})),yVn(this,r)}BVn.exports={WebSocket:QW}});var mnr=z((m7c,SVn)=>{"use strict";function Two(e){return e.indexOf("\0")===-1}function Nwo(e){if(e.length===0)return!1;for(let t=0;t57)return!1;return!0}function Rwo(e){return new Promise(t=>{setTimeout(t,e).unref()})}SVn.exports={isValidLastEventId:Two,isASCIINumber:Nwo,delay:Rwo}});var RVn=z((h7c,NVn)=>{"use strict";var{Transform:Dwo}=Dt("node:stream"),{isASCIINumber:wVn,isValidLastEventId:TVn}=mnr(),sz=[239,187,191],hnr=10,DAt=13,xwo=58,kwo=32,_nr=class extends Dwo{state=null;checkBOM=!0;crlfCheck=!1;eventEndCheck=!1;buffer=null;pos=0;event={data:void 0,event:void 0,id:void 0,retry:void 0};constructor(t={}){t.readableObjectMode=!0,super(t),this.state=t.eventSourceSettings||{},t.push&&(this.push=t.push)}_transform(t,r,s){if(t.length===0){s();return}if(this.buffer?this.buffer=Buffer.concat([this.buffer,t]):this.buffer=t,this.checkBOM)switch(this.buffer.length){case 1:if(this.buffer[0]===sz[0]){s();return}this.checkBOM=!1,s();return;case 2:if(this.buffer[0]===sz[0]&&this.buffer[1]===sz[1]){s();return}this.checkBOM=!1;break;case 3:if(this.buffer[0]===sz[0]&&this.buffer[1]===sz[1]&&this.buffer[2]===sz[2]){this.buffer=Buffer.alloc(0),this.checkBOM=!1,s();return}this.checkBOM=!1;break;default:this.buffer[0]===sz[0]&&this.buffer[1]===sz[1]&&this.buffer[2]===sz[2]&&(this.buffer=this.buffer.subarray(3)),this.checkBOM=!1;break}for(;this.pos0&&(r[a]=o);break}}processEvent(t){t.retry&&wVn(t.retry)&&(this.state.reconnectionTime=parseInt(t.retry,10)),t.id&&TVn(t.id)&&(this.state.lastEventId=t.id),t.data!==void 0&&this.push({type:t.event||"message",options:{data:t.data,lastEventId:this.state.lastEventId,origin:this.state.origin}})}clearEvent(){this.event={data:void 0,event:void 0,id:void 0,retry:void 0}}};NVn.exports={EventSourceStream:_nr}});var VVn=z((_7c,LVn)=>{"use strict";var{pipeline:Gwo}=Dt("node:stream"),{fetching:Fwo}=JPe(),{makeRequest:Zwo}=F2e(),{webidl:Rie}=ZD(),{EventSourceStream:Lwo}=RVn(),{parseMIMEType:Vwo}=ML(),{createFastMessageEvent:Wwo}=O2e(),{isNetworkError:DVn}=HPe(),{delay:Pwo}=mnr(),{kEnumerableProperty:Ude}=tm(),{environmentSettingsObject:xVn}=LW(),kVn=!1,GVn=3e3,sOe=0,FVn=1,oOe=2,Owo="anonymous",Mwo="use-credentials",X2e=class e extends EventTarget{#e={open:null,error:null,message:null};#t=null;#r=!1;#n=sOe;#i=null;#a=null;#s;#u;constructor(t,r={}){super();let s="EventSource constructor";Rie.argumentLengthCheck(arguments,1,s),kVn||(kVn=!0,process.emitWarning("EventSource is experimental, expect them to change at any time.",{code:"UNDICI-ES"})),t=Rie.converters.USVString(t,s,"url"),r=Rie.converters.EventSourceInitDict(r,s,"eventSourceInitDict"),this.#s=r.dispatcher,this.#u={lastEventId:"",reconnectionTime:GVn};let a=xVn,o;try{o=new URL(t,a.settingsObject.baseUrl),this.#u.origin=o.origin}catch(f){throw new DOMException(f,"SyntaxError")}this.#t=o.href;let g=Owo;r.withCredentials&&(g=Mwo,this.#r=!0);let p={redirect:"follow",keepalive:!0,mode:"cors",credentials:g==="anonymous"?"same-origin":"omit",referrer:"no-referrer"};p.client=xVn.settingsObject,p.headersList=[["accept",{name:"accept",value:"text/event-stream"}]],p.cache="no-store",p.initiator="other",p.urlList=[new URL(this.#t)],this.#i=Zwo(p),this.#g()}get readyState(){return this.#n}get url(){return this.#t}get withCredentials(){return this.#r}#g(){if(this.#n===oOe)return;this.#n=sOe;let t={request:this.#i,dispatcher:this.#s},r=s=>{DVn(s)&&(this.dispatchEvent(new Event("error")),this.close()),this.#c()};t.processResponseEndOfBody=r,t.processResponse=s=>{if(DVn(s))if(s.aborted){this.close(),this.dispatchEvent(new Event("error"));return}else{this.#c();return}let a=s.headersList.get("content-type",!0),o=a!==null?Vwo(a):"failure",g=o!=="failure"&&o.essence==="text/event-stream";if(s.status!==200||g===!1){this.close(),this.dispatchEvent(new Event("error"));return}this.#n=FVn,this.dispatchEvent(new Event("open")),this.#u.origin=s.urlList[s.urlList.length-1].origin;let p=new Lwo({eventSourceSettings:this.#u,push:f=>{this.dispatchEvent(Wwo(f.type,f.options))}});Gwo(s.body.stream,p,f=>{f?.aborted===!1&&(this.close(),this.dispatchEvent(new Event("error")))})},this.#a=Fwo(t)}async#c(){this.#n!==oOe&&(this.#n=sOe,this.dispatchEvent(new Event("error")),await Pwo(this.#u.reconnectionTime),this.#n===sOe&&(this.#u.lastEventId.length&&this.#i.headersList.set("last-event-id",this.#u.lastEventId,!0),this.#g()))}close(){Rie.brandCheck(this,e),this.#n!==oOe&&(this.#n=oOe,this.#a.abort(),this.#i=null)}get onopen(){return this.#e.open}set onopen(t){this.#e.open&&this.removeEventListener("open",this.#e.open),typeof t=="function"?(this.#e.open=t,this.addEventListener("open",t)):this.#e.open=null}get onmessage(){return this.#e.message}set onmessage(t){this.#e.message&&this.removeEventListener("message",this.#e.message),typeof t=="function"?(this.#e.message=t,this.addEventListener("message",t)):this.#e.message=null}get onerror(){return this.#e.error}set onerror(t){this.#e.error&&this.removeEventListener("error",this.#e.error),typeof t=="function"?(this.#e.error=t,this.addEventListener("error",t)):this.#e.error=null}},ZVn={CONNECTING:{__proto__:null,configurable:!1,enumerable:!0,value:sOe,writable:!1},OPEN:{__proto__:null,configurable:!1,enumerable:!0,value:FVn,writable:!1},CLOSED:{__proto__:null,configurable:!1,enumerable:!0,value:oOe,writable:!1}};Object.defineProperties(X2e,ZVn);Object.defineProperties(X2e.prototype,ZVn);Object.defineProperties(X2e.prototype,{close:Ude,onerror:Ude,onmessage:Ude,onopen:Ude,readyState:Ude,url:Ude,withCredentials:Ude});Rie.converters.EventSourceInitDict=Rie.dictionaryConverter([{key:"withCredentials",converter:Rie.converters.boolean,defaultValue:()=>!1},{key:"dispatcher",converter:Rie.converters.any}]);LVn.exports={EventSource:X2e,defaultReconnectionTime:GVn}});var MVn=z((y7c,yf)=>{"use strict";var Qwo=RPe(),WVn=aPe(),Ywo=E2e(),Hwo=KGn(),Xwo=B2e(),Jwo=Htr(),Uwo=AFn(),Kwo=mFn(),PVn=B0(),kAt=tm(),{InvalidArgumentError:xAt}=PVn,J2e=iZn(),jwo=lPe(),zwo=wrr(),qwo=WZn(),$wo=Rrr(),eTo=prr(),tTo=Fgt(),{getGlobalDispatcher:OVn,setGlobalDispatcher:rTo}=Hgt(),nTo=Grr(),iTo=Bgt(),sTo=vgt();Object.assign(WVn.prototype,J2e);yf.exports.Dispatcher=WVn;yf.exports.Client=Qwo;yf.exports.Pool=Ywo;yf.exports.BalancedPool=Hwo;yf.exports.Agent=Xwo;yf.exports.ProxyAgent=Jwo;yf.exports.EnvHttpProxyAgent=Uwo;yf.exports.RetryAgent=Kwo;yf.exports.RetryHandler=tTo;yf.exports.DecoratorHandler=nTo;yf.exports.RedirectHandler=iTo;yf.exports.createRedirectInterceptor=sTo;yf.exports.interceptors={redirect:XZn(),retry:UZn(),dump:jZn()};yf.exports.buildConnector=jwo;yf.exports.errors=PVn;yf.exports.util={parseHeaders:kAt.parseHeaders,headerNameToString:kAt.headerNameToString};function aOe(e){return(t,r,s)=>{if(typeof r=="function"&&(s=r,r=null),!t||typeof t!="string"&&typeof t!="object"&&!(t instanceof URL))throw new xAt("invalid url");if(r!=null&&typeof r!="object")throw new xAt("invalid opts");if(r&&r.path!=null){if(typeof r.path!="string")throw new xAt("invalid opts.path");let g=r.path;r.path.startsWith("/")||(g=`/${g}`),t=new URL(kAt.parseOrigin(t).origin+g)}else r||(r=typeof t=="object"?t:{}),t=kAt.parseURL(t);let{agent:a,dispatcher:o=OVn()}=r;if(a)throw new xAt("unsupported opts.agent. Did you mean opts.client?");return e.call(o,{...r,origin:t.origin,path:t.search?`${t.pathname}${t.search}`:t.pathname,method:r.method||(r.body?"PUT":"GET")},s)}}yf.exports.setGlobalDispatcher=rTo;yf.exports.getGlobalDispatcher=OVn;var oTo=JPe().fetch;yf.exports.fetch=async function(t,r=void 0){try{return await oTo(t,r)}catch(s){throw s&&typeof s=="object"&&Error.captureStackTrace(s),s}};yf.exports.Headers=Ode().Headers;yf.exports.Response=HPe().Response;yf.exports.Request=F2e().Request;yf.exports.FormData=IPe().FormData;yf.exports.File=globalThis.File??Dt("node:buffer").File;yf.exports.FileReader=u9n().FileReader;var{setGlobalOrigin:aTo,getGlobalOrigin:cTo}=Xer();yf.exports.setGlobalOrigin=aTo;yf.exports.getGlobalOrigin=cTo;var{CacheStorage:lTo}=h9n(),{kConstruct:uTo}=AAt();yf.exports.caches=new lTo(uTo);var{deleteCookie:gTo,getCookies:ATo,getSetCookies:dTo,setCookie:pTo}=D9n();yf.exports.deleteCookie=gTo;yf.exports.getCookies=ATo;yf.exports.getSetCookies=dTo;yf.exports.setCookie=pTo;var{parseMIMEType:fTo,serializeAMimeType:ITo}=ML();yf.exports.parseMIMEType=fTo;yf.exports.serializeAMimeType=ITo;var{CloseEvent:CTo,ErrorEvent:mTo,MessageEvent:hTo}=O2e();yf.exports.WebSocket=vVn().WebSocket;yf.exports.CloseEvent=CTo;yf.exports.ErrorEvent=mTo;yf.exports.MessageEvent=hTo;yf.exports.request=aOe(J2e.request);yf.exports.stream=aOe(J2e.stream);yf.exports.pipeline=aOe(J2e.pipeline);yf.exports.connect=aOe(J2e.connect);yf.exports.upgrade=aOe(J2e.upgrade);yf.exports.MockClient=zwo;yf.exports.MockPool=$wo;yf.exports.MockAgent=qwo;yf.exports.mockErrors=eTo;var{EventSource:_To}=VVn();yf.exports.EventSource=_To});var HVn=z(Bw=>{"use strict";var yTo=Bw&&Bw.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),bTo=Bw&&Bw.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),ETo=Bw&&Bw.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&yTo(t,e,r);return bTo(t,e),t},BTo=Bw&&Bw.__awaiter||function(e,t,r,s){function a(o){return o instanceof r?o:new r(function(g){g(o)})}return new(r||(r=Promise))(function(o,g){function p(y){try{m(s.next(y))}catch(B){g(B)}}function f(y){try{m(s.throw(y))}catch(B){g(B)}}function m(y){y.done?o(y.value):a(y.value).then(p,f)}m((s=s.apply(e,t||[])).next())})};Object.defineProperty(Bw,"__esModule",{value:!0});Bw.getApiBaseUrl=Bw.getProxyFetch=Bw.getProxyAgentDispatcher=Bw.getProxyAgent=Bw.getAuthString=void 0;var QVn=ETo(ixn()),vTo=MVn();function STo(e,t){if(!e&&!t.auth)throw new Error("Parameter token or opts.auth is required");if(e&&t.auth)throw new Error("Parameters token and opts.auth may not both be specified");return typeof t.auth=="string"?t.auth:`token ${e}`}Bw.getAuthString=STo;function wTo(e){return new QVn.HttpClient().getAgent(e)}Bw.getProxyAgent=wTo;function YVn(e){return new QVn.HttpClient().getAgentDispatcher(e)}Bw.getProxyAgentDispatcher=YVn;function TTo(e){let t=YVn(e);return(s,a)=>BTo(this,void 0,void 0,function*(){return(0,vTo.fetch)(s,Object.assign(Object.assign({},a),{dispatcher:t}))})}Bw.getProxyFetch=TTo;function NTo(){return process.env.GITHUB_API_URL||"https://api.github.com"}Bw.getApiBaseUrl=NTo});var cOe=z(ynr=>{"use strict";Object.defineProperty(ynr,"__esModule",{value:!0});function RTo(){return typeof navigator=="object"&&"userAgent"in navigator?navigator.userAgent:typeof process=="object"&&process.version!==void 0?`Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`:""}ynr.getUserAgent=RTo});var UVn=z((B7c,JVn)=>{JVn.exports=XVn;function XVn(e,t,r,s){if(typeof r!="function")throw new Error("method for before hook must be a function");return s||(s={}),Array.isArray(t)?t.reverse().reduce(function(a,o){return XVn.bind(null,e,o,a,s)},r)():Promise.resolve().then(function(){return e.registry[t]?e.registry[t].reduce(function(a,o){return o.hook.bind(null,a,s)},r)():r(s)})}});var jVn=z((v7c,KVn)=>{KVn.exports=DTo;function DTo(e,t,r,s){var a=s;e.registry[r]||(e.registry[r]=[]),t==="before"&&(s=function(o,g){return Promise.resolve().then(a.bind(null,g)).then(o.bind(null,g))}),t==="after"&&(s=function(o,g){var p;return Promise.resolve().then(o.bind(null,g)).then(function(f){return p=f,a(p,g)}).then(function(){return p})}),t==="error"&&(s=function(o,g){return Promise.resolve().then(o.bind(null,g)).catch(function(p){return a(p,g)})}),e.registry[r].push({hook:s,orig:a})}});var qVn=z((S7c,zVn)=>{zVn.exports=xTo;function xTo(e,t,r){if(e.registry[t]){var s=e.registry[t].map(function(a){return a.orig}).indexOf(r);s!==-1&&e.registry[t].splice(s,1)}}});var sWn=z((w7c,lOe)=>{var rWn=UVn(),kTo=jVn(),GTo=qVn(),$Vn=Function.bind,eWn=$Vn.bind($Vn);function nWn(e,t,r){var s=eWn(GTo,null).apply(null,r?[t,r]:[t]);e.api={remove:s},e.remove=s,["before","error","after","wrap"].forEach(function(a){var o=r?[t,a,r]:[t,a];e[a]=e.api[a]=eWn(kTo,null).apply(null,o)})}function FTo(){var e="h",t={registry:{}},r=rWn.bind(null,t,e);return nWn(r,t,e),r}function iWn(){var e={registry:{}},t=rWn.bind(null,e);return nWn(t,e),t}var tWn=!1;function U2e(){return tWn||(console.warn('[before-after-hook]: "Hook()" repurposing warning, use "Hook.Collection()". Read more: https://git.io/upgrade-before-after-hook-to-1.4'),tWn=!0),iWn()}U2e.Singular=FTo.bind();U2e.Collection=iWn.bind();lOe.exports=U2e;lOe.exports.Hook=U2e;lOe.exports.Singular=U2e.Singular;lOe.exports.Collection=U2e.Collection});var pWn=z((T7c,dWn)=>{"use strict";var Bnr=Object.defineProperty,ZTo=Object.getOwnPropertyDescriptor,LTo=Object.getOwnPropertyNames,VTo=Object.prototype.hasOwnProperty,WTo=(e,t)=>{for(var r in t)Bnr(e,r,{get:t[r],enumerable:!0})},PTo=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of LTo(t))!VTo.call(e,a)&&a!==r&&Bnr(e,a,{get:()=>t[a],enumerable:!(s=ZTo(t,a))||s.enumerable});return e},OTo=e=>PTo(Bnr({},"__esModule",{value:!0}),e),cWn={};WTo(cWn,{endpoint:()=>rNo});dWn.exports=OTo(cWn);var MTo=cOe(),QTo="9.0.5",YTo=`octokit-endpoint.js/${QTo} ${(0,MTo.getUserAgent)()}`,HTo={method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":YTo},mediaType:{format:""}};function XTo(e){return e?Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{}):{}}function JTo(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}function lWn(e,t){let r=Object.assign({},e);return Object.keys(t).forEach(s=>{JTo(t[s])?s in e?r[s]=lWn(e[s],t[s]):Object.assign(r,{[s]:t[s]}):Object.assign(r,{[s]:t[s]})}),r}function oWn(e){for(let t in e)e[t]===void 0&&delete e[t];return e}function Enr(e,t,r){if(typeof t=="string"){let[a,o]=t.split(" ");r=Object.assign(o?{method:a,url:o}:{url:a},r)}else r=Object.assign({},t);r.headers=XTo(r.headers),oWn(r),oWn(r.headers);let s=lWn(e||{},r);return r.url==="/graphql"&&(e&&e.mediaType.previews?.length&&(s.mediaType.previews=e.mediaType.previews.filter(a=>!s.mediaType.previews.includes(a)).concat(s.mediaType.previews)),s.mediaType.previews=(s.mediaType.previews||[]).map(a=>a.replace(/-preview/,""))),s}function UTo(e,t){let r=/\?/.test(e)?"&":"?",s=Object.keys(t);return s.length===0?e:e+r+s.map(a=>a==="q"?"q="+t.q.split("+").map(encodeURIComponent).join("+"):`${a}=${encodeURIComponent(t[a])}`).join("&")}var KTo=/\{[^}]+\}/g;function jTo(e){return e.replace(/^\W+|\W+$/g,"").split(/,/)}function zTo(e){let t=e.match(KTo);return t?t.map(jTo).reduce((r,s)=>r.concat(s),[]):[]}function aWn(e,t){let r={__proto__:null};for(let s of Object.keys(e))t.indexOf(s)===-1&&(r[s]=e[s]);return r}function uWn(e){return e.split(/(%[0-9A-Fa-f]{2})/g).map(function(t){return/%[0-9A-Fa-f]/.test(t)||(t=encodeURI(t).replace(/%5B/g,"[").replace(/%5D/g,"]")),t}).join("")}function j2e(e){return encodeURIComponent(e).replace(/[!'()*]/g,function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()})}function uOe(e,t,r){return t=e==="+"||e==="#"?uWn(t):j2e(t),r?j2e(r)+"="+t:t}function K2e(e){return e!=null}function bnr(e){return e===";"||e==="&"||e==="?"}function qTo(e,t,r,s){var a=e[r],o=[];if(K2e(a)&&a!=="")if(typeof a=="string"||typeof a=="number"||typeof a=="boolean")a=a.toString(),s&&s!=="*"&&(a=a.substring(0,parseInt(s,10))),o.push(uOe(t,a,bnr(t)?r:""));else if(s==="*")Array.isArray(a)?a.filter(K2e).forEach(function(g){o.push(uOe(t,g,bnr(t)?r:""))}):Object.keys(a).forEach(function(g){K2e(a[g])&&o.push(uOe(t,a[g],g))});else{let g=[];Array.isArray(a)?a.filter(K2e).forEach(function(p){g.push(uOe(t,p))}):Object.keys(a).forEach(function(p){K2e(a[p])&&(g.push(j2e(p)),g.push(uOe(t,a[p].toString())))}),bnr(t)?o.push(j2e(r)+"="+g.join(",")):g.length!==0&&o.push(g.join(","))}else t===";"?K2e(a)&&o.push(j2e(r)):a===""&&(t==="&"||t==="?")?o.push(j2e(r)+"="):a===""&&o.push("");return o}function $To(e){return{expand:eNo.bind(null,e)}}function eNo(e,t){var r=["+","#",".","/",";","?","&"];return e=e.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g,function(s,a,o){if(a){let p="",f=[];if(r.indexOf(a.charAt(0))!==-1&&(p=a.charAt(0),a=a.substr(1)),a.split(/,/g).forEach(function(m){var y=/([^:\*]*)(?::(\d+)|(\*))?/.exec(m);f.push(qTo(t,p,y[1],y[2]||y[3]))}),p&&p!=="+"){var g=",";return p==="?"?g="&":p!=="#"&&(g=p),(f.length!==0?p:"")+f.join(g)}else return f.join(",")}else return uWn(o)}),e==="/"?e:e.replace(/\/$/,"")}function gWn(e){let t=e.method.toUpperCase(),r=(e.url||"/").replace(/:([a-z]\w+)/g,"{$1}"),s=Object.assign({},e.headers),a,o=aWn(e,["method","baseUrl","url","headers","request","mediaType"]),g=zTo(r);r=$To(r).expand(o),/^http/.test(r)||(r=e.baseUrl+r);let p=Object.keys(e).filter(y=>g.includes(y)).concat("baseUrl"),f=aWn(o,p);if(!/application\/octet-stream/i.test(s.accept)&&(e.mediaType.format&&(s.accept=s.accept.split(/,/).map(y=>y.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/,`application/vnd$1$2.${e.mediaType.format}`)).join(",")),r.endsWith("/graphql")&&e.mediaType.previews?.length)){let y=s.accept.match(/[\w-]+(?=-preview)/g)||[];s.accept=y.concat(e.mediaType.previews).map(B=>{let v=e.mediaType.format?`.${e.mediaType.format}`:"+json";return`application/vnd.github.${B}-preview${v}`}).join(",")}return["GET","HEAD"].includes(t)?r=UTo(r,f):"data"in f?a=f.data:Object.keys(f).length&&(a=f),!s["content-type"]&&typeof a<"u"&&(s["content-type"]="application/json; charset=utf-8"),["PATCH","PUT"].includes(t)&&typeof a>"u"&&(a=""),Object.assign({method:t,url:r,headers:s},typeof a<"u"?{body:a}:null,e.request?{request:e.request}:null)}function tNo(e,t,r){return gWn(Enr(e,t,r))}function AWn(e,t){let r=Enr(e,t),s=tNo.bind(null,r);return Object.assign(s,{DEFAULTS:r,defaults:AWn.bind(null,r),merge:Enr.bind(null,r),parse:gWn})}var rNo=AWn(null,HTo)});var fWn=z(Snr=>{"use strict";Object.defineProperty(Snr,"__esModule",{value:!0});var vnr=class extends Error{constructor(t){super(t),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor),this.name="Deprecation"}};Snr.Deprecation=vnr});var yWn=z((R7c,_Wn)=>{"use strict";var nNo=Object.create,GAt=Object.defineProperty,iNo=Object.getOwnPropertyDescriptor,sNo=Object.getOwnPropertyNames,oNo=Object.getPrototypeOf,aNo=Object.prototype.hasOwnProperty,cNo=(e,t)=>{for(var r in t)GAt(e,r,{get:t[r],enumerable:!0})},CWn=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of sNo(t))!aNo.call(e,a)&&a!==r&&GAt(e,a,{get:()=>t[a],enumerable:!(s=iNo(t,a))||s.enumerable});return e},lNo=(e,t,r)=>(r=e!=null?nNo(oNo(e)):{},CWn(t||!e||!e.__esModule?GAt(r,"default",{value:e,enumerable:!0}):r,e)),uNo=e=>CWn(GAt({},"__esModule",{value:!0}),e),mWn={};cNo(mWn,{RequestError:()=>dNo});_Wn.exports=uNo(mWn);var IWn=fWn(),hWn=lNo(oit()),gNo=(0,hWn.default)(e=>console.warn(e)),ANo=(0,hWn.default)(e=>console.warn(e)),dNo=class extends Error{constructor(e,t,r){super(e),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor),this.name="HttpError",this.status=t;let s;"headers"in r&&typeof r.headers<"u"&&(s=r.headers),"response"in r&&(this.response=r.response,s=r.response.headers);let a=Object.assign({},r.request);r.request.headers.authorization&&(a.headers=Object.assign({},r.request.headers,{authorization:r.request.headers.authorization.replace(/ .*$/," [REDACTED]")})),a.url=a.url.replace(/\bclient_secret=\w+/g,"client_secret=[REDACTED]").replace(/\baccess_token=\w+/g,"access_token=[REDACTED]"),this.request=a,Object.defineProperty(this,"code",{get(){return gNo(new IWn.Deprecation("[@octokit/request-error] `error.code` is deprecated, use `error.status`.")),t}}),Object.defineProperty(this,"headers",{get(){return ANo(new IWn.Deprecation("[@octokit/request-error] `error.headers` is deprecated, use `error.response.headers`.")),s||{}}})}}});var AOe=z((x7c,BWn)=>{"use strict";var Nnr=Object.defineProperty,pNo=Object.getOwnPropertyDescriptor,fNo=Object.getOwnPropertyNames,INo=Object.prototype.hasOwnProperty,CNo=(e,t)=>{for(var r in t)Nnr(e,r,{get:t[r],enumerable:!0})},mNo=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of fNo(t))!INo.call(e,a)&&a!==r&&Nnr(e,a,{get:()=>t[a],enumerable:!(s=pNo(t,a))||s.enumerable});return e},hNo=e=>mNo(Nnr({},"__esModule",{value:!0}),e),EWn={};CNo(EWn,{request:()=>SNo});BWn.exports=hNo(EWn);var _No=pWn(),yNo=cOe(),bNo="8.4.0";function ENo(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}var gOe=yWn();function BNo(e){return e.arrayBuffer()}function bWn(e){var t,r,s,a;let o=e.request&&e.request.log?e.request.log:console,g=((t=e.request)==null?void 0:t.parseSuccessResponseBody)!==!1;(ENo(e.body)||Array.isArray(e.body))&&(e.body=JSON.stringify(e.body));let p={},f,m,{fetch:y}=globalThis;if((r=e.request)!=null&&r.fetch&&(y=e.request.fetch),!y)throw new Error("fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing");return y(e.url,{method:e.method,body:e.body,redirect:(s=e.request)==null?void 0:s.redirect,headers:e.headers,signal:(a=e.request)==null?void 0:a.signal,...e.body&&{duplex:"half"}}).then(async B=>{m=B.url,f=B.status;for(let v of B.headers)p[v[0]]=v[1];if("deprecation"in p){let v=p.link&&p.link.match(/<([^>]+)>; rel="deprecation"/),G=v&&v.pop();o.warn(`[@octokit/request] "${e.method} ${e.url}" is deprecated. It is scheduled to be removed on ${p.sunset}${G?`. See ${G}`:""}`)}if(!(f===204||f===205)){if(e.method==="HEAD"){if(f<400)return;throw new gOe.RequestError(B.statusText,f,{response:{url:m,status:f,headers:p,data:void 0},request:e})}if(f===304)throw new gOe.RequestError("Not modified",f,{response:{url:m,status:f,headers:p,data:await wnr(B)},request:e});if(f>=400){let v=await wnr(B);throw new gOe.RequestError(vNo(v),f,{response:{url:m,status:f,headers:p,data:v},request:e})}return g?await wnr(B):B.body}}).then(B=>({status:f,url:m,headers:p,data:B})).catch(B=>{if(B instanceof gOe.RequestError)throw B;if(B.name==="AbortError")throw B;let v=B.message;throw B.name==="TypeError"&&"cause"in B&&(B.cause instanceof Error?v=B.cause.message:typeof B.cause=="string"&&(v=B.cause)),new gOe.RequestError(v,500,{request:e})})}async function wnr(e){let t=e.headers.get("content-type");return/application\/json/.test(t)?e.json().catch(()=>e.text()).catch(()=>""):!t||/^text\/|charset=utf-8$/.test(t)?e.text():BNo(e)}function vNo(e){if(typeof e=="string")return e;let t;return"documentation_url"in e?t=` - ${e.documentation_url}`:t="","message"in e?Array.isArray(e.errors)?`${e.message}: ${e.errors.map(JSON.stringify).join(", ")}${t}`:`${e.message}${t}`:`Unknown error: ${JSON.stringify(e)}`}function Tnr(e,t){let r=e.defaults(t);return Object.assign(function(a,o){let g=r.merge(a,o);if(!g.request||!g.request.hook)return bWn(r.parse(g));let p=(f,m)=>bWn(r.parse(r.merge(f,m)));return Object.assign(p,{endpoint:r,defaults:Tnr.bind(null,r)}),g.request.hook(p,g)},{endpoint:r,defaults:Tnr.bind(null,r)})}var SNo=Tnr(_No.endpoint,{headers:{"user-agent":`octokit-request.js/${bNo} ${(0,yNo.getUserAgent)()}`}})});var NWn=z((F7c,TWn)=>{"use strict";var Rnr=Object.defineProperty,wNo=Object.getOwnPropertyDescriptor,TNo=Object.getOwnPropertyNames,NNo=Object.prototype.hasOwnProperty,RNo=(e,t)=>{for(var r in t)Rnr(e,r,{get:t[r],enumerable:!0})},DNo=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of TNo(t))!NNo.call(e,a)&&a!==r&&Rnr(e,a,{get:()=>t[a],enumerable:!(s=wNo(t,a))||s.enumerable});return e},xNo=e=>DNo(Rnr({},"__esModule",{value:!0}),e),SWn={};RNo(SWn,{GraphqlResponseError:()=>wWn,graphql:()=>PNo,withCustomRequest:()=>ONo});TWn.exports=xNo(SWn);var kNo=AOe(),GNo=cOe(),FNo="7.1.0",k7c=AOe(),G7c=AOe();function ZNo(e){return`Request failed due to following response errors: +`.trim())}};JZn.exports=Zrr});var Jgt=z((r7c,qZn)=>{"use strict";var KZn=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:N2o}=v0(),R2o=S2e();zZn()===void 0&&jZn(new R2o);function jZn(e){if(!e||typeof e.dispatch!="function")throw new N2o("Argument agent must implement Agent");Object.defineProperty(globalThis,KZn,{value:e,writable:!0,enumerable:!1,configurable:!1})}function zZn(){return globalThis[KZn]}qZn.exports={setGlobalDispatcher:jZn,getGlobalDispatcher:zZn}});var Lrr=z((i7c,$Zn)=>{"use strict";$Zn.exports=class{#e;constructor(t){if(typeof t!="object"||t===null)throw new TypeError("handler must be an object");this.#e=t}onConnect(...t){return this.#e.onConnect?.(...t)}onError(...t){return this.#e.onError?.(...t)}onUpgrade(...t){return this.#e.onUpgrade?.(...t)}onResponseStarted(...t){return this.#e.onResponseStarted?.(...t)}onHeaders(...t){return this.#e.onHeaders?.(...t)}onData(...t){return this.#e.onData?.(...t)}onComplete(...t){return this.#e.onComplete?.(...t)}onBodySent(...t){return this.#e.onBodySent?.(...t)}}});var tLn=z((s7c,eLn)=>{"use strict";var D2o=Sgt();eLn.exports=e=>{let t=e?.maxRedirections;return r=>function(a,o){let{maxRedirections:g=t,...p}=a;if(!g)return r(a,o);let f=new D2o(r,g,a,o);return r(p,f)}}});var nLn=z((o7c,rLn)=>{"use strict";var x2o=Lgt();rLn.exports=e=>t=>function(s,a){return t(s,new x2o({...s,retryOptions:{...e,...s.retryOptions}},{handler:a,dispatch:t}))}});var sLn=z((a7c,iLn)=>{"use strict";var k2o=rm(),{InvalidArgumentError:G2o,RequestAbortedError:F2o}=v0(),Z2o=Lrr(),Vrr=class extends Z2o{#e=1024*1024;#t=null;#r=!1;#n=!1;#i=0;#a=null;#s=null;constructor({maxSize:t},r){if(super(r),t!=null&&(!Number.isFinite(t)||t<1))throw new G2o("maxSize must be a number greater than 0");this.#e=t??this.#e,this.#s=r}onConnect(t){this.#t=t,this.#s.onConnect(this.#u.bind(this))}#u(t){this.#n=!0,this.#a=t}onHeaders(t,r,s,a){let g=k2o.parseHeaders(r)["content-length"];if(g!=null&&g>this.#e)throw new F2o(`Response size (${g}) larger than maxSize (${this.#e})`);return this.#n?!0:this.#s.onHeaders(t,r,s,a)}onError(t){this.#r||(t=this.#a??t,this.#s.onError(t))}onData(t){return this.#i=this.#i+t.length,this.#i>=this.#e&&(this.#r=!0,this.#n?this.#s.onError(this.#a):this.#s.onComplete([])),!0}onComplete(t){if(!this.#r){if(this.#n){this.#s.onError(this.reason);return}this.#s.onComplete(t)}}};function L2o({maxSize:e}={maxSize:1024*1024}){return t=>function(s,a){let{dumpMaxSize:o=e}=s,g=new Vrr({maxSize:o},a);return t(s,g)}}iLn.exports=L2o});var jde=z((c7c,ALn)=>{"use strict";var{kConstruct:V2o}=z1(),{kEnumerableProperty:F2e}=rm(),{iteratorMixin:W2o,isValidHeaderName:XPe,isValidHeaderValue:aLn}=VW(),{webidl:Ph}=WD(),Wrr=xt("node:assert"),Ugt=xt("node:util"),Ew=Symbol("headers map"),PW=Symbol("headers map sorted");function oLn(e){return e===10||e===13||e===9||e===32}function cLn(e){let t=0,r=e.length;for(;r>t&&oLn(e.charCodeAt(r-1));)--r;for(;r>t&&oLn(e.charCodeAt(t));)++t;return t===0&&r===e.length?e:e.substring(t,r)}function lLn(e,t){if(Array.isArray(t))for(let r=0;r>","record"]})}function Prr(e,t,r){if(r=cLn(r),XPe(t)){if(!aLn(r))throw Ph.errors.invalidArgument({prefix:"Headers.append",value:r,type:"header value"})}else throw Ph.errors.invalidArgument({prefix:"Headers.append",value:t,type:"header name"});if(gLn(e)==="immutable")throw new TypeError("immutable");return Orr(e).append(t,r,!1)}function uLn(e,t){return e[0]>1),r[m][0]<=y[0]?f=m+1:p=m;if(o!==m){for(g=o;g>f;)r[g]=r[--g];r[f]=y}}if(!s.next().done)throw new TypeError("Unreachable");return r}else{let s=0;for(let{0:a,1:{value:o}}of this[Ew])r[s++]=[a,o],Wrr(o!==null);return r.sort(uLn)}}},jH=class e{#e;#t;constructor(t=void 0){t!==V2o&&(this.#t=new Kgt,this.#e="none",t!==void 0&&(t=Ph.converters.HeadersInit(t,"Headers contructor","init"),lLn(this,t)))}append(t,r){Ph.brandCheck(this,e),Ph.argumentLengthCheck(arguments,2,"Headers.append");let s="Headers.append";return t=Ph.converters.ByteString(t,s,"name"),r=Ph.converters.ByteString(r,s,"value"),Prr(this,t,r)}delete(t){if(Ph.brandCheck(this,e),Ph.argumentLengthCheck(arguments,1,"Headers.delete"),t=Ph.converters.ByteString(t,"Headers.delete","name"),!XPe(t))throw Ph.errors.invalidArgument({prefix:"Headers.delete",value:t,type:"header name"});if(this.#e==="immutable")throw new TypeError("immutable");this.#t.contains(t,!1)&&this.#t.delete(t,!1)}get(t){Ph.brandCheck(this,e),Ph.argumentLengthCheck(arguments,1,"Headers.get");let r="Headers.get";if(t=Ph.converters.ByteString(t,r,"name"),!XPe(t))throw Ph.errors.invalidArgument({prefix:r,value:t,type:"header name"});return this.#t.get(t,!1)}has(t){Ph.brandCheck(this,e),Ph.argumentLengthCheck(arguments,1,"Headers.has");let r="Headers.has";if(t=Ph.converters.ByteString(t,r,"name"),!XPe(t))throw Ph.errors.invalidArgument({prefix:r,value:t,type:"header name"});return this.#t.contains(t,!1)}set(t,r){Ph.brandCheck(this,e),Ph.argumentLengthCheck(arguments,2,"Headers.set");let s="Headers.set";if(t=Ph.converters.ByteString(t,s,"name"),r=Ph.converters.ByteString(r,s,"value"),r=cLn(r),XPe(t)){if(!aLn(r))throw Ph.errors.invalidArgument({prefix:s,value:r,type:"header value"})}else throw Ph.errors.invalidArgument({prefix:s,value:t,type:"header name"});if(this.#e==="immutable")throw new TypeError("immutable");this.#t.set(t,r,!1)}getSetCookie(){Ph.brandCheck(this,e);let t=this.#t.cookies;return t?[...t]:[]}get[PW](){if(this.#t[PW])return this.#t[PW];let t=[],r=this.#t.toSortedArray(),s=this.#t.cookies;if(s===null||s.length===1)return this.#t[PW]=r;for(let a=0;a>"](e,t,r,s.bind(e)):Ph.converters["record"](e,t,r)}throw Ph.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence>","record"]})};ALn.exports={fill:lLn,compareHeaderName:uLn,Headers:jH,HeadersList:Kgt,getHeadersGuard:gLn,setHeadersGuard:P2o,setHeadersList:O2o,getHeadersList:Orr}});var UPe=z((l7c,bLn)=>{"use strict";var{Headers:mLn,HeadersList:dLn,fill:Q2o,getHeadersGuard:M2o,setHeadersGuard:hLn,setHeadersList:_Ln}=jde(),{extractBody:pLn,cloneBody:H2o,mixinBody:Y2o,hasFinalizationRegistry:X2o,streamRegistry:J2o,bodyUnusable:U2o}=yPe(),Qrr=rm(),fLn=xt("node:util"),{kEnumerableProperty:OW}=Qrr,{isValidReasonPhrase:K2o,isCancelled:j2o,isAborted:z2o,isBlobLike:q2o,serializeJavascriptValueToJSONString:$2o,isErrorLike:eBo,isomorphicEncode:tBo,environmentSettingsObject:rBo}=VW(),{redirectStatusSet:nBo,nullBodyStatus:iBo}=dPe(),{kState:rv,kHeaders:lz}=Iie(),{webidl:SC}=WD(),{FormData:sBo}=hPe(),{URLSerializer:ILn}=ML(),{kConstruct:zgt}=z1(),Mrr=xt("node:assert"),{types:oBo}=xt("node:util"),aBo=new TextEncoder("utf-8"),zde=class e{static error(){return JPe(qgt(),"immutable")}static json(t,r={}){SC.argumentLengthCheck(arguments,1,"Response.json"),r!==null&&(r=SC.converters.ResponseInit(r));let s=aBo.encode($2o(t)),a=pLn(s),o=JPe(Z2e({}),"response");return CLn(o,r,{body:a[0],type:"application/json"}),o}static redirect(t,r=302){SC.argumentLengthCheck(arguments,1,"Response.redirect"),t=SC.converters.USVString(t),r=SC.converters["unsigned short"](r);let s;try{s=new URL(t,rBo.settingsObject.baseUrl)}catch(g){throw new TypeError(`Failed to parse URL from ${t}`,{cause:g})}if(!nBo.has(r))throw new RangeError(`Invalid status code ${r}`);let a=JPe(Z2e({}),"immutable");a[rv].status=r;let o=tBo(ILn(s));return a[rv].headersList.append("location",o,!0),a}constructor(t=null,r={}){if(t===zgt)return;t!==null&&(t=SC.converters.BodyInit(t)),r=SC.converters.ResponseInit(r),this[rv]=Z2e({}),this[lz]=new mLn(zgt),hLn(this[lz],"response"),_Ln(this[lz],this[rv].headersList);let s=null;if(t!=null){let[a,o]=pLn(t);s={body:a,type:o}}CLn(this,r,s)}get type(){return SC.brandCheck(this,e),this[rv].type}get url(){SC.brandCheck(this,e);let t=this[rv].urlList,r=t[t.length-1]??null;return r===null?"":ILn(r,!0)}get redirected(){return SC.brandCheck(this,e),this[rv].urlList.length>1}get status(){return SC.brandCheck(this,e),this[rv].status}get ok(){return SC.brandCheck(this,e),this[rv].status>=200&&this[rv].status<=299}get statusText(){return SC.brandCheck(this,e),this[rv].statusText}get headers(){return SC.brandCheck(this,e),this[lz]}get body(){return SC.brandCheck(this,e),this[rv].body?this[rv].body.stream:null}get bodyUsed(){return SC.brandCheck(this,e),!!this[rv].body&&Qrr.isDisturbed(this[rv].body.stream)}clone(){if(SC.brandCheck(this,e),U2o(this))throw SC.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let t=Hrr(this[rv]);return JPe(t,M2o(this[lz]))}[fLn.inspect.custom](t,r){r.depth===null&&(r.depth=2),r.colors??=!0;let s={status:this.status,statusText:this.statusText,headers:this.headers,body:this.body,bodyUsed:this.bodyUsed,ok:this.ok,redirected:this.redirected,type:this.type,url:this.url};return`Response ${fLn.formatWithOptions(r,s)}`}};Y2o(zde);Object.defineProperties(zde.prototype,{type:OW,url:OW,status:OW,ok:OW,redirected:OW,statusText:OW,headers:OW,clone:OW,body:OW,bodyUsed:OW,[Symbol.toStringTag]:{value:"Response",configurable:!0}});Object.defineProperties(zde,{json:OW,redirect:OW,error:OW});function Hrr(e){if(e.internalResponse)return yLn(Hrr(e.internalResponse),e.type);let t=Z2e({...e,body:null});return e.body!=null&&(t.body=H2o(t,e.body)),t}function Z2e(e){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...e,headersList:e?.headersList?new dLn(e?.headersList):new dLn,urlList:e?.urlList?[...e.urlList]:[]}}function qgt(e){let t=eBo(e);return Z2e({type:"error",status:0,error:t?e:new Error(e&&String(e)),aborted:e&&e.name==="AbortError"})}function cBo(e){return e.type==="error"&&e.status===0}function jgt(e,t){return t={internalResponse:e,...t},new Proxy(e,{get(r,s){return s in t?t[s]:r[s]},set(r,s,a){return Mrr(!(s in t)),r[s]=a,!0}})}function yLn(e,t){if(t==="basic")return jgt(e,{type:"basic",headersList:e.headersList});if(t==="cors")return jgt(e,{type:"cors",headersList:e.headersList});if(t==="opaque")return jgt(e,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null});if(t==="opaqueredirect")return jgt(e,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null});Mrr(!1)}function lBo(e,t=null){return Mrr(j2o(e)),z2o(e)?qgt(Object.assign(new DOMException("The operation was aborted.","AbortError"),{cause:t})):qgt(Object.assign(new DOMException("Request was cancelled."),{cause:t}))}function CLn(e,t,r){if(t.status!==null&&(t.status<200||t.status>599))throw new RangeError('init["status"] must be in the range of 200 to 599, inclusive.');if("statusText"in t&&t.statusText!=null&&!K2o(String(t.statusText)))throw new TypeError("Invalid statusText");if("status"in t&&t.status!=null&&(e[rv].status=t.status),"statusText"in t&&t.statusText!=null&&(e[rv].statusText=t.statusText),"headers"in t&&t.headers!=null&&Q2o(e[lz],t.headers),r){if(iBo.includes(e.status))throw SC.errors.exception({header:"Response constructor",message:`Invalid response status code ${e.status}`});e[rv].body=r.body,r.type!=null&&!e[rv].headersList.contains("content-type",!0)&&e[rv].headersList.append("content-type",r.type,!0)}}function JPe(e,t){let r=new zde(zgt);return r[rv]=e,r[lz]=new mLn(zgt),_Ln(r[lz],e.headersList),hLn(r[lz],t),X2o&&e.body?.stream&&J2o.register(r,new WeakRef(e.body.stream)),r}SC.converters.ReadableStream=SC.interfaceConverter(ReadableStream);SC.converters.FormData=SC.interfaceConverter(sBo);SC.converters.URLSearchParams=SC.interfaceConverter(URLSearchParams);SC.converters.XMLHttpRequestBodyInit=function(e,t,r){return typeof e=="string"?SC.converters.USVString(e,t,r):q2o(e)?SC.converters.Blob(e,t,r,{strict:!1}):ArrayBuffer.isView(e)||oBo.isArrayBuffer(e)?SC.converters.BufferSource(e,t,r):Qrr.isFormDataLike(e)?SC.converters.FormData(e,t,r,{strict:!1}):e instanceof URLSearchParams?SC.converters.URLSearchParams(e,t,r):SC.converters.DOMString(e,t,r)};SC.converters.BodyInit=function(e,t,r){return e instanceof ReadableStream?SC.converters.ReadableStream(e,t,r):e?.[Symbol.asyncIterator]?e:SC.converters.XMLHttpRequestBodyInit(e,t,r)};SC.converters.ResponseInit=SC.dictionaryConverter([{key:"status",converter:SC.converters["unsigned short"],defaultValue:()=>200},{key:"statusText",converter:SC.converters.ByteString,defaultValue:()=>""},{key:"headers",converter:SC.converters.HeadersInit}]);bLn.exports={isNetworkError:cBo,makeNetworkError:qgt,makeResponse:Z2e,makeAppropriateNetworkError:lBo,filterResponse:yLn,Response:zde,cloneResponse:Hrr,fromInnerResponse:JPe}});var SLn=z((u7c,vLn)=>{"use strict";var{kConnected:ELn,kSize:BLn}=z1(),Yrr=class{constructor(t){this.value=t}deref(){return this.value[ELn]===0&&this.value[BLn]===0?void 0:this.value}},Xrr=class{constructor(t){this.finalizer=t}register(t,r){t.on&&t.on("disconnect",()=>{t[ELn]===0&&t[BLn]===0&&this.finalizer(r)})}unregister(t){}};vLn.exports=function(){return process.env.NODE_V8_COVERAGE&&process.version.startsWith("v18")?(process._rawDebug("Using compatibility WeakRef and FinalizationRegistry"),{WeakRef:Yrr,FinalizationRegistry:Xrr}):{WeakRef,FinalizationRegistry}}});var L2e=z((g7c,OLn)=>{"use strict";var{extractBody:uBo,mixinBody:gBo,cloneBody:ABo,bodyUnusable:wLn}=yPe(),{Headers:ZLn,fill:dBo,HeadersList:rAt,setHeadersGuard:Urr,getHeadersGuard:pBo,setHeadersList:LLn,getHeadersList:TLn}=jde(),{FinalizationRegistry:fBo}=SLn()(),eAt=rm(),NLn=xt("node:util"),{isValidHTTPToken:IBo,sameOrigin:RLn,environmentSettingsObject:$gt}=VW(),{forbiddenMethodsSet:CBo,corsSafeListedMethodsSet:mBo,referrerPolicy:hBo,requestRedirect:_Bo,requestMode:yBo,requestCredentials:bBo,requestCache:EBo,requestDuplex:BBo}=dPe(),{kEnumerableProperty:Bw,normalizedMethodRecordsBase:vBo,normalizedMethodRecords:SBo}=eAt,{kHeaders:QW,kSignal:tAt,kState:a1,kDispatcher:Jrr}=Iie(),{webidl:yf}=WD(),{URLSerializer:wBo}=ML(),{kConstruct:nAt}=z1(),TBo=xt("node:assert"),{getMaxListeners:DLn,setMaxListeners:xLn,getEventListeners:NBo,defaultMaxListeners:kLn}=xt("node:events"),RBo=Symbol("abortController"),VLn=new fBo(({signal:e,abort:t})=>{e.removeEventListener("abort",t)}),iAt=new WeakMap;function GLn(e){return t;function t(){let r=e.deref();if(r!==void 0){VLn.unregister(t),this.removeEventListener("abort",t),r.abort(this.reason);let s=iAt.get(r.signal);if(s!==void 0){if(s.size!==0){for(let a of s){let o=a.deref();o!==void 0&&o.abort(this.reason)}s.clear()}iAt.delete(r.signal)}}}}var FLn=!1,Sie=class e{constructor(t,r={}){if(t===nAt)return;let s="Request constructor";yf.argumentLengthCheck(arguments,1,s),t=yf.converters.RequestInfo(t,s,"input"),r=yf.converters.RequestInit(r,s,"init");let a=null,o=null,g=$gt.settingsObject.baseUrl,p=null;if(typeof t=="string"){this[Jrr]=r.dispatcher;let U;try{U=new URL(t,g)}catch(le){throw new TypeError("Failed to parse URL from "+t,{cause:le})}if(U.username||U.password)throw new TypeError("Request cannot be constructed from a URL that includes credentials: "+t);a=sAt({urlList:[U]}),o="cors"}else this[Jrr]=r.dispatcher||t[Jrr],TBo(t instanceof e),a=t[a1],p=t[tAt];let f=$gt.settingsObject.origin,m="client";if(a.window?.constructor?.name==="EnvironmentSettingsObject"&&RLn(a.window,f)&&(m=a.window),r.window!=null)throw new TypeError(`'window' option '${m}' must be null`);"window"in r&&(m="no-window"),a=sAt({method:a.method,headersList:a.headersList,unsafeRequest:a.unsafeRequest,client:$gt.settingsObject,window:m,priority:a.priority,origin:a.origin,referrer:a.referrer,referrerPolicy:a.referrerPolicy,mode:a.mode,credentials:a.credentials,cache:a.cache,redirect:a.redirect,integrity:a.integrity,keepalive:a.keepalive,reloadNavigation:a.reloadNavigation,historyNavigation:a.historyNavigation,urlList:[...a.urlList]});let y=Object.keys(r).length!==0;if(y&&(a.mode==="navigate"&&(a.mode="same-origin"),a.reloadNavigation=!1,a.historyNavigation=!1,a.origin="client",a.referrer="client",a.referrerPolicy="",a.url=a.urlList[a.urlList.length-1],a.urlList=[a.url]),r.referrer!==void 0){let U=r.referrer;if(U==="")a.referrer="no-referrer";else{let le;try{le=new URL(U,g)}catch(ae){throw new TypeError(`Referrer "${U}" is not a valid URL.`,{cause:ae})}le.protocol==="about:"&&le.hostname==="client"||f&&!RLn(le,$gt.settingsObject.baseUrl)?a.referrer="client":a.referrer=le}}r.referrerPolicy!==void 0&&(a.referrerPolicy=r.referrerPolicy);let B;if(r.mode!==void 0?B=r.mode:B=o,B==="navigate")throw yf.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(B!=null&&(a.mode=B),r.credentials!==void 0&&(a.credentials=r.credentials),r.cache!==void 0&&(a.cache=r.cache),a.cache==="only-if-cached"&&a.mode!=="same-origin")throw new TypeError("'only-if-cached' can be set only with 'same-origin' mode");if(r.redirect!==void 0&&(a.redirect=r.redirect),r.integrity!=null&&(a.integrity=String(r.integrity)),r.keepalive!==void 0&&(a.keepalive=!!r.keepalive),r.method!==void 0){let U=r.method,le=SBo[U];if(le!==void 0)a.method=le;else{if(!IBo(U))throw new TypeError(`'${U}' is not a valid HTTP method.`);let ae=U.toUpperCase();if(CBo.has(ae))throw new TypeError(`'${U}' HTTP method is unsupported.`);U=vBo[ae]??U,a.method=U}!FLn&&a.method==="patch"&&(process.emitWarning("Using `patch` is highly likely to result in a `405 Method Not Allowed`. `PATCH` is much more likely to succeed.",{code:"UNDICI-FETCH-patch"}),FLn=!0)}r.signal!==void 0&&(p=r.signal),this[a1]=a;let v=new AbortController;if(this[tAt]=v.signal,p!=null){if(!p||typeof p.aborted!="boolean"||typeof p.addEventListener!="function")throw new TypeError("Failed to construct 'Request': member signal is not of type AbortSignal.");if(p.aborted)v.abort(p.reason);else{this[RBo]=v;let U=new WeakRef(v),le=GLn(U);try{(typeof DLn=="function"&&DLn(p)===kLn||NBo(p,"abort").length>=kLn)&&xLn(1500,p)}catch{}eAt.addAbortListener(p,le),VLn.register(v,{signal:p,abort:le},le)}}if(this[QW]=new ZLn(nAt),LLn(this[QW],a.headersList),Urr(this[QW],"request"),B==="no-cors"){if(!mBo.has(a.method))throw new TypeError(`'${a.method} is unsupported in no-cors mode.`);Urr(this[QW],"request-no-cors")}if(y){let U=TLn(this[QW]),le=r.headers!==void 0?r.headers:new rAt(U);if(U.clear(),le instanceof rAt){for(let{name:ae,value:ge}of le.rawValues())U.append(ae,ge,!1);U.cookies=le.cookies}else dBo(this[QW],le)}let k=t instanceof e?t[a1].body:null;if((r.body!=null||k!=null)&&(a.method==="GET"||a.method==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body.");let T=null;if(r.body!=null){let[U,le]=uBo(r.body,a.keepalive);T=U,le&&!TLn(this[QW]).contains("content-type",!0)&&this[QW].append("content-type",le)}let O=T??k;if(O!=null&&O.source==null){if(T!=null&&r.duplex==null)throw new TypeError("RequestInit: duplex option is required when sending a body.");if(a.mode!=="same-origin"&&a.mode!=="cors")throw new TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"');a.useCORSPreflightFlag=!0}let X=O;if(T==null&&k!=null){if(wLn(t))throw new TypeError("Cannot construct a Request with a Request object that has already been used.");let U=new TransformStream;k.stream.pipeThrough(U),X={source:k.source,length:k.length,stream:U.readable}}this[a1].body=X}get method(){return yf.brandCheck(this,e),this[a1].method}get url(){return yf.brandCheck(this,e),wBo(this[a1].url)}get headers(){return yf.brandCheck(this,e),this[QW]}get destination(){return yf.brandCheck(this,e),this[a1].destination}get referrer(){return yf.brandCheck(this,e),this[a1].referrer==="no-referrer"?"":this[a1].referrer==="client"?"about:client":this[a1].referrer.toString()}get referrerPolicy(){return yf.brandCheck(this,e),this[a1].referrerPolicy}get mode(){return yf.brandCheck(this,e),this[a1].mode}get credentials(){return this[a1].credentials}get cache(){return yf.brandCheck(this,e),this[a1].cache}get redirect(){return yf.brandCheck(this,e),this[a1].redirect}get integrity(){return yf.brandCheck(this,e),this[a1].integrity}get keepalive(){return yf.brandCheck(this,e),this[a1].keepalive}get isReloadNavigation(){return yf.brandCheck(this,e),this[a1].reloadNavigation}get isHistoryNavigation(){return yf.brandCheck(this,e),this[a1].historyNavigation}get signal(){return yf.brandCheck(this,e),this[tAt]}get body(){return yf.brandCheck(this,e),this[a1].body?this[a1].body.stream:null}get bodyUsed(){return yf.brandCheck(this,e),!!this[a1].body&&eAt.isDisturbed(this[a1].body.stream)}get duplex(){return yf.brandCheck(this,e),"half"}clone(){if(yf.brandCheck(this,e),wLn(this))throw new TypeError("unusable");let t=WLn(this[a1]),r=new AbortController;if(this.signal.aborted)r.abort(this.signal.reason);else{let s=iAt.get(this.signal);s===void 0&&(s=new Set,iAt.set(this.signal,s));let a=new WeakRef(r);s.add(a),eAt.addAbortListener(r.signal,GLn(a))}return PLn(t,r.signal,pBo(this[QW]))}[NLn.inspect.custom](t,r){r.depth===null&&(r.depth=2),r.colors??=!0;let s={method:this.method,url:this.url,headers:this.headers,destination:this.destination,referrer:this.referrer,referrerPolicy:this.referrerPolicy,mode:this.mode,credentials:this.credentials,cache:this.cache,redirect:this.redirect,integrity:this.integrity,keepalive:this.keepalive,isReloadNavigation:this.isReloadNavigation,isHistoryNavigation:this.isHistoryNavigation,signal:this.signal};return`Request ${NLn.formatWithOptions(r,s)}`}};gBo(Sie);function sAt(e){return{method:e.method??"GET",localURLsOnly:e.localURLsOnly??!1,unsafeRequest:e.unsafeRequest??!1,body:e.body??null,client:e.client??null,reservedClient:e.reservedClient??null,replacesClientId:e.replacesClientId??"",window:e.window??"client",keepalive:e.keepalive??!1,serviceWorkers:e.serviceWorkers??"all",initiator:e.initiator??"",destination:e.destination??"",priority:e.priority??null,origin:e.origin??"client",policyContainer:e.policyContainer??"client",referrer:e.referrer??"client",referrerPolicy:e.referrerPolicy??"",mode:e.mode??"no-cors",useCORSPreflightFlag:e.useCORSPreflightFlag??!1,credentials:e.credentials??"same-origin",useCredentials:e.useCredentials??!1,cache:e.cache??"default",redirect:e.redirect??"follow",integrity:e.integrity??"",cryptoGraphicsNonceMetadata:e.cryptoGraphicsNonceMetadata??"",parserMetadata:e.parserMetadata??"",reloadNavigation:e.reloadNavigation??!1,historyNavigation:e.historyNavigation??!1,userActivation:e.userActivation??!1,taintedOrigin:e.taintedOrigin??!1,redirectCount:e.redirectCount??0,responseTainting:e.responseTainting??"basic",preventNoCacheCacheControlHeaderModification:e.preventNoCacheCacheControlHeaderModification??!1,done:e.done??!1,timingAllowFailed:e.timingAllowFailed??!1,urlList:e.urlList,url:e.urlList[0],headersList:e.headersList?new rAt(e.headersList):new rAt}}function WLn(e){let t=sAt({...e,body:null});return e.body!=null&&(t.body=ABo(t,e.body)),t}function PLn(e,t,r){let s=new Sie(nAt);return s[a1]=e,s[tAt]=t,s[QW]=new ZLn(nAt),LLn(s[QW],e.headersList),Urr(s[QW],r),s}Object.defineProperties(Sie.prototype,{method:Bw,url:Bw,headers:Bw,redirect:Bw,clone:Bw,signal:Bw,duplex:Bw,destination:Bw,body:Bw,bodyUsed:Bw,isHistoryNavigation:Bw,isReloadNavigation:Bw,keepalive:Bw,integrity:Bw,cache:Bw,credentials:Bw,attribute:Bw,referrerPolicy:Bw,referrer:Bw,mode:Bw,[Symbol.toStringTag]:{value:"Request",configurable:!0}});yf.converters.Request=yf.interfaceConverter(Sie);yf.converters.RequestInfo=function(e,t,r){return typeof e=="string"?yf.converters.USVString(e,t,r):e instanceof Sie?yf.converters.Request(e,t,r):yf.converters.USVString(e,t,r)};yf.converters.AbortSignal=yf.interfaceConverter(AbortSignal);yf.converters.RequestInit=yf.dictionaryConverter([{key:"method",converter:yf.converters.ByteString},{key:"headers",converter:yf.converters.HeadersInit},{key:"body",converter:yf.nullableConverter(yf.converters.BodyInit)},{key:"referrer",converter:yf.converters.USVString},{key:"referrerPolicy",converter:yf.converters.DOMString,allowedValues:hBo},{key:"mode",converter:yf.converters.DOMString,allowedValues:yBo},{key:"credentials",converter:yf.converters.DOMString,allowedValues:bBo},{key:"cache",converter:yf.converters.DOMString,allowedValues:EBo},{key:"redirect",converter:yf.converters.DOMString,allowedValues:_Bo},{key:"integrity",converter:yf.converters.DOMString},{key:"keepalive",converter:yf.converters.boolean},{key:"signal",converter:yf.nullableConverter(e=>yf.converters.AbortSignal(e,"RequestInit","signal",{strict:!1}))},{key:"window",converter:yf.converters.any},{key:"duplex",converter:yf.converters.DOMString,allowedValues:BBo},{key:"dispatcher",converter:yf.converters.any}]);OLn.exports={Request:Sie,makeRequest:sAt,fromInnerRequest:PLn,cloneRequest:WLn}});var jPe=z((A7c,r9n)=>{"use strict";var{makeNetworkError:oy,makeAppropriateNetworkError:oAt,filterResponse:Krr,makeResponse:aAt,fromInnerResponse:DBo}=UPe(),{HeadersList:QLn}=jde(),{Request:xBo,cloneRequest:kBo}=L2e(),wie=xt("node:zlib"),{bytesMatch:GBo,makePolicyContainer:FBo,clonePolicyContainer:ZBo,requestBadPort:LBo,TAOCheck:VBo,appendRequestOriginHeader:WBo,responseLocationURL:PBo,requestCurrentURL:yU,setRequestReferrerPolicyOnRedirect:OBo,tryUpgradeRequestToAPotentiallyTrustworthyURL:QBo,createOpaqueTimingInfo:enr,appendFetchMetadata:MBo,corsCheck:HBo,crossOriginResourcePolicyCheck:YBo,determineRequestsReferrer:XBo,coarsenedSharedCurrentTime:KPe,createDeferredPromise:JBo,isBlobLike:UBo,sameOrigin:$rr,isCancelled:qde,isAborted:MLn,isErrorLike:KBo,fullyReadBody:jBo,readableStreamClose:zBo,isomorphicEncode:cAt,urlIsLocal:qBo,urlIsHttpHttpsScheme:tnr,urlHasHttpsScheme:$Bo,clampAndCoarsenConnectionTimingInfo:evo,simpleRangeHeaderValue:tvo,buildContentRange:rvo,createInflate:nvo,extractMimeType:ivo}=VW(),{kState:JLn,kDispatcher:svo}=Iie(),$de=xt("node:assert"),{safelyExtractBody:rnr,extractBody:HLn}=yPe(),{redirectStatusSet:ULn,nullBodyStatus:KLn,safeMethodsSet:ovo,requestBodyHeader:avo,subresourceSet:cvo}=dPe(),lvo=xt("node:events"),{Readable:uvo,pipeline:gvo,finished:Avo}=xt("node:stream"),{addAbortListener:dvo,isErrored:pvo,isReadable:lAt,bufferToLowerCasedHeaderName:YLn}=rm(),{dataURLProcessor:fvo,serializeAMimeType:Ivo,minimizeSupportedMimeType:Cvo}=ML(),{getGlobalDispatcher:mvo}=Jgt(),{webidl:hvo}=WD(),{STATUS_CODES:_vo}=xt("node:http"),yvo=["GET","HEAD"],bvo=typeof __UNDICI_IS_NODE__<"u"||typeof esbuildDetection<"u"?"node":"undici",jrr,uAt=class extends lvo{constructor(t){super(),this.dispatcher=t,this.connection=null,this.dump=!1,this.state="ongoing"}terminate(t){this.state==="ongoing"&&(this.state="terminated",this.connection?.destroy(t),this.emit("terminated",t))}abort(t){this.state==="ongoing"&&(this.state="aborted",t||(t=new DOMException("The operation was aborted.","AbortError")),this.serializedAbortReason=t,this.connection?.destroy(t),this.emit("terminated",t))}};function Evo(e){jLn(e,"fetch")}function Bvo(e,t=void 0){hvo.argumentLengthCheck(arguments,1,"globalThis.fetch");let r=JBo(),s;try{s=new xBo(e,t)}catch(y){return r.reject(y),r.promise}let a=s[JLn];if(s.signal.aborted)return zrr(r,a,null,s.signal.reason),r.promise;a.client.globalObject?.constructor?.name==="ServiceWorkerGlobalScope"&&(a.serviceWorkers="none");let g=null,p=!1,f=null;return dvo(s.signal,()=>{p=!0,$de(f!=null),f.abort(s.signal.reason);let y=g?.deref();zrr(r,a,y,s.signal.reason)}),f=qLn({request:a,processResponseEndOfBody:Evo,processResponse:y=>{if(!p){if(y.aborted){zrr(r,a,g,f.serializedAbortReason);return}if(y.type==="error"){r.reject(new TypeError("fetch failed",{cause:y.error}));return}g=new WeakRef(DBo(y,"immutable")),r.resolve(g.deref()),r=null}},dispatcher:s[svo]}),r.promise}function jLn(e,t="other"){if(e.type==="error"&&e.aborted||!e.urlList?.length)return;let r=e.urlList[0],s=e.timingInfo,a=e.cacheState;tnr(r)&&s!==null&&(e.timingAllowPassed||(s=enr({startTime:s.startTime}),a=""),s.endTime=KPe(),e.timingInfo=s,zLn(s,r.href,t,globalThis,a))}var zLn=performance.markResourceTiming;function zrr(e,t,r,s){if(e&&e.reject(s),t.body!=null&&lAt(t.body?.stream)&&t.body.stream.cancel(s).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o}),r==null)return;let a=r[JLn];a.body!=null&&lAt(a.body?.stream)&&a.body.stream.cancel(s).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o})}function qLn({request:e,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:s,processResponseEndOfBody:a,processResponseConsumeBody:o,useParallelQueue:g=!1,dispatcher:p=mvo()}){$de(p);let f=null,m=!1;e.client!=null&&(f=e.client.globalObject,m=e.client.crossOriginIsolatedCapability);let y=KPe(m),B=enr({startTime:y}),v={controller:new uAt(p),request:e,timingInfo:B,processRequestBodyChunkLength:t,processRequestEndOfBody:r,processResponse:s,processResponseConsumeBody:o,processResponseEndOfBody:a,taskDestination:f,crossOriginIsolatedCapability:m};return $de(!e.body||e.body.stream),e.window==="client"&&(e.window=e.client?.globalObject?.constructor?.name==="Window"?e.client:"no-window"),e.origin==="client"&&(e.origin=e.client.origin),e.policyContainer==="client"&&(e.client!=null?e.policyContainer=ZBo(e.client.policyContainer):e.policyContainer=FBo()),e.headersList.contains("accept",!0)||e.headersList.append("accept","*/*",!0),e.headersList.contains("accept-language",!0)||e.headersList.append("accept-language","*",!0),e.priority,cvo.has(e.destination),$Ln(v).catch(k=>{v.controller.terminate(k)}),v.controller}async function $Ln(e,t=!1){let r=e.request,s=null;if(r.localURLsOnly&&!qBo(yU(r))&&(s=oy("local URLs only")),QBo(r),LBo(r)==="blocked"&&(s=oy("bad port")),r.referrerPolicy===""&&(r.referrerPolicy=r.policyContainer.referrerPolicy),r.referrer!=="no-referrer"&&(r.referrer=XBo(r)),s===null&&(s=await(async()=>{let o=yU(r);return $rr(o,r.url)&&r.responseTainting==="basic"||o.protocol==="data:"||r.mode==="navigate"||r.mode==="websocket"?(r.responseTainting="basic",await XLn(e)):r.mode==="same-origin"?oy('request mode cannot be "same-origin"'):r.mode==="no-cors"?r.redirect!=="follow"?oy('redirect mode cannot be "follow" for "no-cors" request'):(r.responseTainting="opaque",await XLn(e)):tnr(yU(r))?(r.responseTainting="cors",await e9n(e)):oy("URL scheme must be a HTTP(S) scheme")})()),t)return s;s.status!==0&&!s.internalResponse&&(r.responseTainting,r.responseTainting==="basic"?s=Krr(s,"basic"):r.responseTainting==="cors"?s=Krr(s,"cors"):r.responseTainting==="opaque"?s=Krr(s,"opaque"):$de(!1));let a=s.status===0?s:s.internalResponse;if(a.urlList.length===0&&a.urlList.push(...r.urlList),r.timingAllowFailed||(s.timingAllowPassed=!0),s.type==="opaque"&&a.status===206&&a.rangeRequested&&!r.headers.contains("range",!0)&&(s=a=oy()),s.status!==0&&(r.method==="HEAD"||r.method==="CONNECT"||KLn.includes(a.status))&&(a.body=null,e.controller.dump=!0),r.integrity){let o=p=>qrr(e,oy(p));if(r.responseTainting==="opaque"||s.body==null){o(s.error);return}let g=p=>{if(!GBo(p,r.integrity)){o("integrity mismatch");return}s.body=rnr(p)[0],qrr(e,s)};await jBo(s.body,g,o)}else qrr(e,s)}function XLn(e){if(qde(e)&&e.request.redirectCount===0)return Promise.resolve(oAt(e));let{request:t}=e,{protocol:r}=yU(t);switch(r){case"about:":return Promise.resolve(oy("about scheme is not supported"));case"blob:":{jrr||(jrr=xt("node:buffer").resolveObjectURL);let s=yU(t);if(s.search.length!==0)return Promise.resolve(oy("NetworkError when attempting to fetch resource."));let a=jrr(s.toString());if(t.method!=="GET"||!UBo(a))return Promise.resolve(oy("invalid method"));let o=aAt(),g=a.size,p=cAt(`${g}`),f=a.type;if(t.headersList.contains("range",!0)){o.rangeRequested=!0;let m=t.headersList.get("range",!0),y=tvo(m,!0);if(y==="failure")return Promise.resolve(oy("failed to fetch the data URL"));let{rangeStartValue:B,rangeEndValue:v}=y;if(B===null)B=g-v,v=B+v-1;else{if(B>=g)return Promise.resolve(oy("Range start is greater than the blob's size."));(v===null||v>=g)&&(v=g-1)}let k=a.slice(B,v,f),T=HLn(k);o.body=T[0];let O=cAt(`${k.size}`),X=rvo(B,v,g);o.status=206,o.statusText="Partial Content",o.headersList.set("content-length",O,!0),o.headersList.set("content-type",f,!0),o.headersList.set("content-range",X,!0)}else{let m=HLn(a);o.statusText="OK",o.body=m[0],o.headersList.set("content-length",p,!0),o.headersList.set("content-type",f,!0)}return Promise.resolve(o)}case"data:":{let s=yU(t),a=fvo(s);if(a==="failure")return Promise.resolve(oy("failed to fetch the data URL"));let o=Ivo(a.mimeType);return Promise.resolve(aAt({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:o}]],body:rnr(a.body)[0]}))}case"file:":return Promise.resolve(oy("not implemented... yet..."));case"http:":case"https:":return e9n(e).catch(s=>oy(s));default:return Promise.resolve(oy("unknown scheme"))}}function vvo(e,t){e.request.done=!0,e.processResponseDone!=null&&queueMicrotask(()=>e.processResponseDone(t))}function qrr(e,t){let r=e.timingInfo,s=()=>{let o=Date.now();e.request.destination==="document"&&(e.controller.fullTimingInfo=r),e.controller.reportTimingSteps=()=>{if(e.request.url.protocol!=="https:")return;r.endTime=o;let p=t.cacheState,f=t.bodyInfo;t.timingAllowPassed||(r=enr(r),p="");let m=0;if(e.request.mode!=="navigator"||!t.hasCrossOriginRedirects){m=t.status;let y=ivo(t.headersList);y!=="failure"&&(f.contentType=Cvo(y))}e.request.initiatorType!=null&&zLn(r,e.request.url.href,e.request.initiatorType,globalThis,p,f,m)};let g=()=>{e.request.done=!0,e.processResponseEndOfBody!=null&&queueMicrotask(()=>e.processResponseEndOfBody(t)),e.request.initiatorType!=null&&e.controller.reportTimingSteps()};queueMicrotask(()=>g())};e.processResponse!=null&&queueMicrotask(()=>{e.processResponse(t),e.processResponse=null});let a=t.type==="error"?t:t.internalResponse??t;a.body==null?s():Avo(a.body.stream,()=>{s()})}async function e9n(e){let t=e.request,r=null,s=null,a=e.timingInfo;if(t.serviceWorkers,r===null){if(t.redirect==="follow"&&(t.serviceWorkers="none"),s=r=await t9n(e),t.responseTainting==="cors"&&HBo(t,r)==="failure")return oy("cors failure");VBo(t,r)==="failure"&&(t.timingAllowFailed=!0)}return(t.responseTainting==="opaque"||r.type==="opaque")&&YBo(t.origin,t.client,t.destination,s)==="blocked"?oy("blocked"):(ULn.has(s.status)&&(t.redirect!=="manual"&&e.controller.connection.destroy(void 0,!1),t.redirect==="error"?r=oy("unexpected redirect"):t.redirect==="manual"?r=s:t.redirect==="follow"?r=await Svo(e,r):$de(!1)),r.timingInfo=a,r)}function Svo(e,t){let r=e.request,s=t.internalResponse?t.internalResponse:t,a;try{if(a=PBo(s,yU(r).hash),a==null)return t}catch(g){return Promise.resolve(oy(g))}if(!tnr(a))return Promise.resolve(oy("URL scheme must be a HTTP(S) scheme"));if(r.redirectCount===20)return Promise.resolve(oy("redirect count exceeded"));if(r.redirectCount+=1,r.mode==="cors"&&(a.username||a.password)&&!$rr(r,a))return Promise.resolve(oy('cross origin not allowed for request mode "cors"'));if(r.responseTainting==="cors"&&(a.username||a.password))return Promise.resolve(oy('URL cannot contain credentials for request mode "cors"'));if(s.status!==303&&r.body!=null&&r.body.source==null)return Promise.resolve(oy());if([301,302].includes(s.status)&&r.method==="POST"||s.status===303&&!yvo.includes(r.method)){r.method="GET",r.body=null;for(let g of avo)r.headersList.delete(g)}$rr(yU(r),a)||(r.headersList.delete("authorization",!0),r.headersList.delete("proxy-authorization",!0),r.headersList.delete("cookie",!0),r.headersList.delete("host",!0)),r.body!=null&&($de(r.body.source!=null),r.body=rnr(r.body.source)[0]);let o=e.timingInfo;return o.redirectEndTime=o.postRedirectStartTime=KPe(e.crossOriginIsolatedCapability),o.redirectStartTime===0&&(o.redirectStartTime=o.startTime),r.urlList.push(a),OBo(r,s),$Ln(e,!0)}async function t9n(e,t=!1,r=!1){let s=e.request,a=null,o=null,g=null,p=null,f=!1;s.window==="no-window"&&s.redirect==="error"?(a=e,o=s):(o=kBo(s),a={...e},a.request=o);let m=s.credentials==="include"||s.credentials==="same-origin"&&s.responseTainting==="basic",y=o.body?o.body.length:null,B=null;if(o.body==null&&["POST","PUT"].includes(o.method)&&(B="0"),y!=null&&(B=cAt(`${y}`)),B!=null&&o.headersList.append("content-length",B,!0),y!=null&&o.keepalive,o.referrer instanceof URL&&o.headersList.append("referer",cAt(o.referrer.href),!0),WBo(o),MBo(o),o.headersList.contains("user-agent",!0)||o.headersList.append("user-agent",bvo),o.cache==="default"&&(o.headersList.contains("if-modified-since",!0)||o.headersList.contains("if-none-match",!0)||o.headersList.contains("if-unmodified-since",!0)||o.headersList.contains("if-match",!0)||o.headersList.contains("if-range",!0))&&(o.cache="no-store"),o.cache==="no-cache"&&!o.preventNoCacheCacheControlHeaderModification&&!o.headersList.contains("cache-control",!0)&&o.headersList.append("cache-control","max-age=0",!0),(o.cache==="no-store"||o.cache==="reload")&&(o.headersList.contains("pragma",!0)||o.headersList.append("pragma","no-cache",!0),o.headersList.contains("cache-control",!0)||o.headersList.append("cache-control","no-cache",!0)),o.headersList.contains("range",!0)&&o.headersList.append("accept-encoding","identity",!0),o.headersList.contains("accept-encoding",!0)||($Bo(yU(o))?o.headersList.append("accept-encoding","br, gzip, deflate",!0):o.headersList.append("accept-encoding","gzip, deflate",!0)),o.headersList.delete("host",!0),p==null&&(o.cache="no-store"),o.cache!=="no-store"&&o.cache,g==null){if(o.cache==="only-if-cached")return oy("only if cached");let v=await wvo(a,m,r);!ovo.has(o.method)&&v.status>=200&&v.status<=399,f&&v.status,g==null&&(g=v)}if(g.urlList=[...o.urlList],o.headersList.contains("range",!0)&&(g.rangeRequested=!0),g.requestIncludesCredentials=m,g.status===407)return s.window==="no-window"?oy():qde(e)?oAt(e):oy("proxy authentication required");if(g.status===421&&!r&&(s.body==null||s.body.source!=null)){if(qde(e))return oAt(e);e.controller.connection.destroy(),g=await t9n(e,t,!0)}return g}async function wvo(e,t=!1,r=!1){$de(!e.controller.connection||e.controller.connection.destroyed),e.controller.connection={abort:null,destroyed:!1,destroy(T,O=!0){this.destroyed||(this.destroyed=!0,O&&this.abort?.(T??new DOMException("The operation was aborted.","AbortError")))}};let s=e.request,a=null,o=e.timingInfo;null==null&&(s.cache="no-store");let p=r?"yes":"no";s.mode;let f=null;if(s.body==null&&e.processRequestEndOfBody)queueMicrotask(()=>e.processRequestEndOfBody());else if(s.body!=null){let T=async function*(U){qde(e)||(yield U,e.processRequestBodyChunkLength?.(U.byteLength))},O=()=>{qde(e)||e.processRequestEndOfBody&&e.processRequestEndOfBody()},X=U=>{qde(e)||(U.name==="AbortError"?e.controller.abort():e.controller.terminate(U))};f=async function*(){try{for await(let U of s.body.stream)yield*T(U);O()}catch(U){X(U)}}()}try{let{body:T,status:O,statusText:X,headersList:U,socket:le}=await k({body:f});if(le)a=aAt({status:O,statusText:X,headersList:U,socket:le});else{let ae=T[Symbol.asyncIterator]();e.controller.next=()=>ae.next(),a=aAt({status:O,statusText:X,headersList:U})}}catch(T){return T.name==="AbortError"?(e.controller.connection.destroy(),oAt(e,T)):oy(T)}let m=async()=>{await e.controller.resume()},y=T=>{qde(e)||e.controller.abort(T)},B=new ReadableStream({async start(T){e.controller.controller=T},async pull(T){await m(T)},async cancel(T){await y(T)},type:"bytes"});a.body={stream:B,source:null,length:null},e.controller.onAborted=v,e.controller.on("terminated",v),e.controller.resume=async()=>{for(;;){let T,O;try{let{done:U,value:le}=await e.controller.next();if(MLn(e))break;T=U?void 0:le}catch(U){e.controller.ended&&!o.encodedBodySize?T=void 0:(T=U,O=!0)}if(T===void 0){zBo(e.controller.controller),vvo(e,a);return}if(o.decodedBodySize+=T?.byteLength??0,O){e.controller.terminate(T);return}let X=new Uint8Array(T);if(X.byteLength&&e.controller.controller.enqueue(X),pvo(B)){e.controller.terminate();return}if(e.controller.controller.desiredSize<=0)return}};function v(T){MLn(e)?(a.aborted=!0,lAt(B)&&e.controller.controller.error(e.controller.serializedAbortReason)):lAt(B)&&e.controller.controller.error(new TypeError("terminated",{cause:KBo(T)?T:void 0})),e.controller.connection.destroy()}return a;function k({body:T}){let O=yU(s),X=e.controller.dispatcher;return new Promise((U,le)=>X.dispatch({path:O.pathname+O.search,origin:O.origin,method:s.method,body:X.isMockActive?s.body&&(s.body.source||s.body.stream):T,headers:s.headersList.entries,maxRedirections:0,upgrade:s.mode==="websocket"?"websocket":void 0},{body:null,abort:null,onConnect(ae){let{connection:ge}=e.controller;o.finalConnectionTimingInfo=evo(void 0,o.postRedirectStartTime,e.crossOriginIsolatedCapability),ge.destroyed?ae(new DOMException("The operation was aborted.","AbortError")):(e.controller.on("terminated",ae),this.abort=ge.abort=ae),o.finalNetworkRequestStartTime=KPe(e.crossOriginIsolatedCapability)},onResponseStarted(){o.finalNetworkResponseStartTime=KPe(e.crossOriginIsolatedCapability)},onHeaders(ae,ge,fe,pe){if(ae<200)return;let he=[],be="",Te=new QLn;for(let Je=0;JeJe.trim())),be=Te.get("location",!0),this.body=new uvo({read:fe});let x=[],et=be&&s.redirect==="follow"&&ULn.has(ae);if(he.length!==0&&s.method!=="HEAD"&&s.method!=="CONNECT"&&!KLn.includes(ae)&&!et)for(let Je=0;Je{Je&&this.onError(Je)}).on("error",Ue):this.body.on("error",Ue)}),!0},onData(ae){if(e.controller.dump)return;let ge=ae;return o.encodedBodySize+=ge.byteLength,this.body.push(ge)},onComplete(){this.abort&&e.controller.off("terminated",this.abort),e.controller.onAborted&&e.controller.off("terminated",e.controller.onAborted),e.controller.ended=!0,this.body.push(null)},onError(ae){this.abort&&e.controller.off("terminated",this.abort),this.body?.destroy(ae),e.controller.terminate(ae),le(ae)},onUpgrade(ae,ge,fe){if(ae!==101)return;let pe=new QLn;for(let he=0;he{"use strict";n9n.exports={kState:Symbol("FileReader state"),kResult:Symbol("FileReader result"),kError:Symbol("FileReader error"),kLastProgressEventFired:Symbol("FileReader last progress event fired timestamp"),kEvents:Symbol("FileReader events"),kAborted:Symbol("FileReader aborted")}});var s9n=z((p7c,i9n)=>{"use strict";var{webidl:MW}=WD(),gAt=Symbol("ProgressEvent state"),inr=class e extends Event{constructor(t,r={}){t=MW.converters.DOMString(t,"ProgressEvent constructor","type"),r=MW.converters.ProgressEventInit(r??{}),super(t,r),this[gAt]={lengthComputable:r.lengthComputable,loaded:r.loaded,total:r.total}}get lengthComputable(){return MW.brandCheck(this,e),this[gAt].lengthComputable}get loaded(){return MW.brandCheck(this,e),this[gAt].loaded}get total(){return MW.brandCheck(this,e),this[gAt].total}};MW.converters.ProgressEventInit=MW.dictionaryConverter([{key:"lengthComputable",converter:MW.converters.boolean,defaultValue:()=>!1},{key:"loaded",converter:MW.converters["unsigned long long"],defaultValue:()=>0},{key:"total",converter:MW.converters["unsigned long long"],defaultValue:()=>0},{key:"bubbles",converter:MW.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:MW.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:MW.converters.boolean,defaultValue:()=>!1}]);i9n.exports={ProgressEvent:inr}});var a9n=z((f7c,o9n)=>{"use strict";function Tvo(e){if(!e)return"failure";switch(e.trim().toLowerCase()){case"unicode-1-1-utf-8":case"unicode11utf8":case"unicode20utf8":case"utf-8":case"utf8":case"x-unicode20utf8":return"UTF-8";case"866":case"cp866":case"csibm866":case"ibm866":return"IBM866";case"csisolatin2":case"iso-8859-2":case"iso-ir-101":case"iso8859-2":case"iso88592":case"iso_8859-2":case"iso_8859-2:1987":case"l2":case"latin2":return"ISO-8859-2";case"csisolatin3":case"iso-8859-3":case"iso-ir-109":case"iso8859-3":case"iso88593":case"iso_8859-3":case"iso_8859-3:1988":case"l3":case"latin3":return"ISO-8859-3";case"csisolatin4":case"iso-8859-4":case"iso-ir-110":case"iso8859-4":case"iso88594":case"iso_8859-4":case"iso_8859-4:1988":case"l4":case"latin4":return"ISO-8859-4";case"csisolatincyrillic":case"cyrillic":case"iso-8859-5":case"iso-ir-144":case"iso8859-5":case"iso88595":case"iso_8859-5":case"iso_8859-5:1988":return"ISO-8859-5";case"arabic":case"asmo-708":case"csiso88596e":case"csiso88596i":case"csisolatinarabic":case"ecma-114":case"iso-8859-6":case"iso-8859-6-e":case"iso-8859-6-i":case"iso-ir-127":case"iso8859-6":case"iso88596":case"iso_8859-6":case"iso_8859-6:1987":return"ISO-8859-6";case"csisolatingreek":case"ecma-118":case"elot_928":case"greek":case"greek8":case"iso-8859-7":case"iso-ir-126":case"iso8859-7":case"iso88597":case"iso_8859-7":case"iso_8859-7:1987":case"sun_eu_greek":return"ISO-8859-7";case"csiso88598e":case"csisolatinhebrew":case"hebrew":case"iso-8859-8":case"iso-8859-8-e":case"iso-ir-138":case"iso8859-8":case"iso88598":case"iso_8859-8":case"iso_8859-8:1988":case"visual":return"ISO-8859-8";case"csiso88598i":case"iso-8859-8-i":case"logical":return"ISO-8859-8-I";case"csisolatin6":case"iso-8859-10":case"iso-ir-157":case"iso8859-10":case"iso885910":case"l6":case"latin6":return"ISO-8859-10";case"iso-8859-13":case"iso8859-13":case"iso885913":return"ISO-8859-13";case"iso-8859-14":case"iso8859-14":case"iso885914":return"ISO-8859-14";case"csisolatin9":case"iso-8859-15":case"iso8859-15":case"iso885915":case"iso_8859-15":case"l9":return"ISO-8859-15";case"iso-8859-16":return"ISO-8859-16";case"cskoi8r":case"koi":case"koi8":case"koi8-r":case"koi8_r":return"KOI8-R";case"koi8-ru":case"koi8-u":return"KOI8-U";case"csmacintosh":case"mac":case"macintosh":case"x-mac-roman":return"macintosh";case"iso-8859-11":case"iso8859-11":case"iso885911":case"tis-620":case"windows-874":return"windows-874";case"cp1250":case"windows-1250":case"x-cp1250":return"windows-1250";case"cp1251":case"windows-1251":case"x-cp1251":return"windows-1251";case"ansi_x3.4-1968":case"ascii":case"cp1252":case"cp819":case"csisolatin1":case"ibm819":case"iso-8859-1":case"iso-ir-100":case"iso8859-1":case"iso88591":case"iso_8859-1":case"iso_8859-1:1987":case"l1":case"latin1":case"us-ascii":case"windows-1252":case"x-cp1252":return"windows-1252";case"cp1253":case"windows-1253":case"x-cp1253":return"windows-1253";case"cp1254":case"csisolatin5":case"iso-8859-9":case"iso-ir-148":case"iso8859-9":case"iso88599":case"iso_8859-9":case"iso_8859-9:1989":case"l5":case"latin5":case"windows-1254":case"x-cp1254":return"windows-1254";case"cp1255":case"windows-1255":case"x-cp1255":return"windows-1255";case"cp1256":case"windows-1256":case"x-cp1256":return"windows-1256";case"cp1257":case"windows-1257":case"x-cp1257":return"windows-1257";case"cp1258":case"windows-1258":case"x-cp1258":return"windows-1258";case"x-mac-cyrillic":case"x-mac-ukrainian":return"x-mac-cyrillic";case"chinese":case"csgb2312":case"csiso58gb231280":case"gb2312":case"gb_2312":case"gb_2312-80":case"gbk":case"iso-ir-58":case"x-gbk":return"GBK";case"gb18030":return"gb18030";case"big5":case"big5-hkscs":case"cn-big5":case"csbig5":case"x-x-big5":return"Big5";case"cseucpkdfmtjapanese":case"euc-jp":case"x-euc-jp":return"EUC-JP";case"csiso2022jp":case"iso-2022-jp":return"ISO-2022-JP";case"csshiftjis":case"ms932":case"ms_kanji":case"shift-jis":case"shift_jis":case"sjis":case"windows-31j":case"x-sjis":return"Shift_JIS";case"cseuckr":case"csksc56011987":case"euc-kr":case"iso-ir-149":case"korean":case"ks_c_5601-1987":case"ks_c_5601-1989":case"ksc5601":case"ksc_5601":case"windows-949":return"EUC-KR";case"csiso2022kr":case"hz-gb-2312":case"iso-2022-cn":case"iso-2022-cn-ext":case"iso-2022-kr":case"replacement":return"replacement";case"unicodefffe":case"utf-16be":return"UTF-16BE";case"csunicode":case"iso-10646-ucs-2":case"ucs-2":case"unicode":case"unicodefeff":case"utf-16":case"utf-16le":return"UTF-16LE";case"x-user-defined":return"x-user-defined";default:return"failure"}}o9n.exports={getEncoding:Tvo}});var f9n=z((I7c,p9n)=>{"use strict";var{kState:V2e,kError:snr,kResult:c9n,kAborted:zPe,kLastProgressEventFired:onr}=nnr(),{ProgressEvent:Nvo}=s9n(),{getEncoding:l9n}=a9n(),{serializeAMimeType:Rvo,parseMIMEType:u9n}=ML(),{types:Dvo}=xt("node:util"),{StringDecoder:g9n}=xt("string_decoder"),{btoa:A9n}=xt("node:buffer"),xvo={enumerable:!0,writable:!1,configurable:!1};function kvo(e,t,r,s){if(e[V2e]==="loading")throw new DOMException("Invalid state","InvalidStateError");e[V2e]="loading",e[c9n]=null,e[snr]=null;let o=t.stream().getReader(),g=[],p=o.read(),f=!0;(async()=>{for(;!e[zPe];)try{let{done:m,value:y}=await p;if(f&&!e[zPe]&&queueMicrotask(()=>{Tie("loadstart",e)}),f=!1,!m&&Dvo.isUint8Array(y))g.push(y),(e[onr]===void 0||Date.now()-e[onr]>=50)&&!e[zPe]&&(e[onr]=Date.now(),queueMicrotask(()=>{Tie("progress",e)})),p=o.read();else if(m){queueMicrotask(()=>{e[V2e]="done";try{let B=Gvo(g,r,t.type,s);if(e[zPe])return;e[c9n]=B,Tie("load",e)}catch(B){e[snr]=B,Tie("error",e)}e[V2e]!=="loading"&&Tie("loadend",e)});break}}catch(m){if(e[zPe])return;queueMicrotask(()=>{e[V2e]="done",e[snr]=m,Tie("error",e),e[V2e]!=="loading"&&Tie("loadend",e)});break}})()}function Tie(e,t){let r=new Nvo(e,{bubbles:!1,cancelable:!1});t.dispatchEvent(r)}function Gvo(e,t,r,s){switch(t){case"DataURL":{let a="data:",o=u9n(r||"application/octet-stream");o!=="failure"&&(a+=Rvo(o)),a+=";base64,";let g=new g9n("latin1");for(let p of e)a+=A9n(g.write(p));return a+=A9n(g.end()),a}case"Text":{let a="failure";if(s&&(a=l9n(s)),a==="failure"&&r){let o=u9n(r);o!=="failure"&&(a=l9n(o.parameters.get("charset")))}return a==="failure"&&(a="UTF-8"),Fvo(e,a)}case"ArrayBuffer":return d9n(e).buffer;case"BinaryString":{let a="",o=new g9n("latin1");for(let g of e)a+=o.write(g);return a+=o.end(),a}}}function Fvo(e,t){let r=d9n(e),s=Zvo(r),a=0;s!==null&&(t=s,a=s==="UTF-8"?3:2);let o=r.slice(a);return new TextDecoder(t).decode(o)}function Zvo(e){let[t,r,s]=e;return t===239&&r===187&&s===191?"UTF-8":t===254&&r===255?"UTF-16BE":t===255&&r===254?"UTF-16LE":null}function d9n(e){let t=e.reduce((s,a)=>s+a.byteLength,0),r=0;return e.reduce((s,a)=>(s.set(a,r),r+=a.byteLength,s),new Uint8Array(t))}p9n.exports={staticPropertyDescriptors:xvo,readOperation:kvo,fireAProgressEvent:Tie}});var h9n=z((C7c,m9n)=>{"use strict";var{staticPropertyDescriptors:W2e,readOperation:AAt,fireAProgressEvent:I9n}=f9n(),{kState:epe,kError:C9n,kResult:dAt,kEvents:M_,kAborted:Lvo}=nnr(),{webidl:Zy}=WD(),{kEnumerableProperty:XL}=rm(),zH=class e extends EventTarget{constructor(){super(),this[epe]="empty",this[dAt]=null,this[C9n]=null,this[M_]={loadend:null,error:null,abort:null,load:null,progress:null,loadstart:null}}readAsArrayBuffer(t){Zy.brandCheck(this,e),Zy.argumentLengthCheck(arguments,1,"FileReader.readAsArrayBuffer"),t=Zy.converters.Blob(t,{strict:!1}),AAt(this,t,"ArrayBuffer")}readAsBinaryString(t){Zy.brandCheck(this,e),Zy.argumentLengthCheck(arguments,1,"FileReader.readAsBinaryString"),t=Zy.converters.Blob(t,{strict:!1}),AAt(this,t,"BinaryString")}readAsText(t,r=void 0){Zy.brandCheck(this,e),Zy.argumentLengthCheck(arguments,1,"FileReader.readAsText"),t=Zy.converters.Blob(t,{strict:!1}),r!==void 0&&(r=Zy.converters.DOMString(r,"FileReader.readAsText","encoding")),AAt(this,t,"Text",r)}readAsDataURL(t){Zy.brandCheck(this,e),Zy.argumentLengthCheck(arguments,1,"FileReader.readAsDataURL"),t=Zy.converters.Blob(t,{strict:!1}),AAt(this,t,"DataURL")}abort(){if(this[epe]==="empty"||this[epe]==="done"){this[dAt]=null;return}this[epe]==="loading"&&(this[epe]="done",this[dAt]=null),this[Lvo]=!0,I9n("abort",this),this[epe]!=="loading"&&I9n("loadend",this)}get readyState(){switch(Zy.brandCheck(this,e),this[epe]){case"empty":return this.EMPTY;case"loading":return this.LOADING;case"done":return this.DONE}}get result(){return Zy.brandCheck(this,e),this[dAt]}get error(){return Zy.brandCheck(this,e),this[C9n]}get onloadend(){return Zy.brandCheck(this,e),this[M_].loadend}set onloadend(t){Zy.brandCheck(this,e),this[M_].loadend&&this.removeEventListener("loadend",this[M_].loadend),typeof t=="function"?(this[M_].loadend=t,this.addEventListener("loadend",t)):this[M_].loadend=null}get onerror(){return Zy.brandCheck(this,e),this[M_].error}set onerror(t){Zy.brandCheck(this,e),this[M_].error&&this.removeEventListener("error",this[M_].error),typeof t=="function"?(this[M_].error=t,this.addEventListener("error",t)):this[M_].error=null}get onloadstart(){return Zy.brandCheck(this,e),this[M_].loadstart}set onloadstart(t){Zy.brandCheck(this,e),this[M_].loadstart&&this.removeEventListener("loadstart",this[M_].loadstart),typeof t=="function"?(this[M_].loadstart=t,this.addEventListener("loadstart",t)):this[M_].loadstart=null}get onprogress(){return Zy.brandCheck(this,e),this[M_].progress}set onprogress(t){Zy.brandCheck(this,e),this[M_].progress&&this.removeEventListener("progress",this[M_].progress),typeof t=="function"?(this[M_].progress=t,this.addEventListener("progress",t)):this[M_].progress=null}get onload(){return Zy.brandCheck(this,e),this[M_].load}set onload(t){Zy.brandCheck(this,e),this[M_].load&&this.removeEventListener("load",this[M_].load),typeof t=="function"?(this[M_].load=t,this.addEventListener("load",t)):this[M_].load=null}get onabort(){return Zy.brandCheck(this,e),this[M_].abort}set onabort(t){Zy.brandCheck(this,e),this[M_].abort&&this.removeEventListener("abort",this[M_].abort),typeof t=="function"?(this[M_].abort=t,this.addEventListener("abort",t)):this[M_].abort=null}};zH.EMPTY=zH.prototype.EMPTY=0;zH.LOADING=zH.prototype.LOADING=1;zH.DONE=zH.prototype.DONE=2;Object.defineProperties(zH.prototype,{EMPTY:W2e,LOADING:W2e,DONE:W2e,readAsArrayBuffer:XL,readAsBinaryString:XL,readAsText:XL,readAsDataURL:XL,abort:XL,readyState:XL,result:XL,error:XL,onloadstart:XL,onprogress:XL,onload:XL,onabort:XL,onerror:XL,onloadend:XL,[Symbol.toStringTag]:{value:"FileReader",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(zH,{EMPTY:W2e,LOADING:W2e,DONE:W2e});m9n.exports={FileReader:zH}});var pAt=z((m7c,_9n)=>{"use strict";_9n.exports={kConstruct:z1().kConstruct}});var E9n=z((h7c,b9n)=>{"use strict";var Vvo=xt("node:assert"),{URLSerializer:y9n}=ML(),{isValidHeaderName:Wvo}=VW();function Pvo(e,t,r=!1){let s=y9n(e,r),a=y9n(t,r);return s===a}function Ovo(e){Vvo(e!==null);let t=[];for(let r of e.split(","))r=r.trim(),Wvo(r)&&t.push(r);return t}b9n.exports={urlEquals:Pvo,getFieldValues:Ovo}});var S9n=z((_7c,v9n)=>{"use strict";var{kConstruct:Qvo}=pAt(),{urlEquals:Mvo,getFieldValues:anr}=E9n(),{kEnumerableProperty:tpe,isDisturbed:Hvo}=rm(),{webidl:Ep}=WD(),{Response:Yvo,cloneResponse:Xvo,fromInnerResponse:Jvo}=UPe(),{Request:uz,fromInnerRequest:Uvo}=L2e(),{kState:qH}=Iie(),{fetching:Kvo}=jPe(),{urlIsHttpHttpsScheme:fAt,createDeferredPromise:P2e,readAllBytes:jvo}=VW(),cnr=xt("node:assert"),IAt=class e{#e;constructor(){arguments[0]!==Qvo&&Ep.illegalConstructor(),this.#e=arguments[1]}async match(t,r={}){Ep.brandCheck(this,e);let s="Cache.match";Ep.argumentLengthCheck(arguments,1,s),t=Ep.converters.RequestInfo(t,s,"request"),r=Ep.converters.CacheQueryOptions(r,s,"options");let a=this.#i(t,r,1);if(a.length!==0)return a[0]}async matchAll(t=void 0,r={}){Ep.brandCheck(this,e);let s="Cache.matchAll";return t!==void 0&&(t=Ep.converters.RequestInfo(t,s,"request")),r=Ep.converters.CacheQueryOptions(r,s,"options"),this.#i(t,r)}async add(t){Ep.brandCheck(this,e);let r="Cache.add";Ep.argumentLengthCheck(arguments,1,r),t=Ep.converters.RequestInfo(t,r,"request");let s=[t];return await this.addAll(s)}async addAll(t){Ep.brandCheck(this,e);let r="Cache.addAll";Ep.argumentLengthCheck(arguments,1,r);let s=[],a=[];for(let v of t){if(v===void 0)throw Ep.errors.conversionFailed({prefix:r,argument:"Argument 1",types:["undefined is not allowed"]});if(v=Ep.converters.RequestInfo(v),typeof v=="string")continue;let k=v[qH];if(!fAt(k.url)||k.method!=="GET")throw Ep.errors.exception({header:r,message:"Expected http/s scheme when method is not GET."})}let o=[];for(let v of t){let k=new uz(v)[qH];if(!fAt(k.url))throw Ep.errors.exception({header:r,message:"Expected http/s scheme."});k.initiator="fetch",k.destination="subresource",a.push(k);let T=P2e();o.push(Kvo({request:k,processResponse(O){if(O.type==="error"||O.status===206||O.status<200||O.status>299)T.reject(Ep.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(O.headersList.contains("vary")){let X=anr(O.headersList.get("vary"));for(let U of X)if(U==="*"){T.reject(Ep.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(let le of o)le.abort();return}}},processResponseEndOfBody(O){if(O.aborted){T.reject(new DOMException("aborted","AbortError"));return}T.resolve(O)}})),s.push(T.promise)}let p=await Promise.all(s),f=[],m=0;for(let v of p){let k={type:"put",request:a[m],response:v};f.push(k),m++}let y=P2e(),B=null;try{this.#t(f)}catch(v){B=v}return queueMicrotask(()=>{B===null?y.resolve(void 0):y.reject(B)}),y.promise}async put(t,r){Ep.brandCheck(this,e);let s="Cache.put";Ep.argumentLengthCheck(arguments,2,s),t=Ep.converters.RequestInfo(t,s,"request"),r=Ep.converters.Response(r,s,"response");let a=null;if(t instanceof uz?a=t[qH]:a=new uz(t)[qH],!fAt(a.url)||a.method!=="GET")throw Ep.errors.exception({header:s,message:"Expected an http/s scheme when method is not GET"});let o=r[qH];if(o.status===206)throw Ep.errors.exception({header:s,message:"Got 206 status"});if(o.headersList.contains("vary")){let k=anr(o.headersList.get("vary"));for(let T of k)if(T==="*")throw Ep.errors.exception({header:s,message:"Got * vary field value"})}if(o.body&&(Hvo(o.body.stream)||o.body.stream.locked))throw Ep.errors.exception({header:s,message:"Response body is locked or disturbed"});let g=Xvo(o),p=P2e();if(o.body!=null){let T=o.body.stream.getReader();jvo(T).then(p.resolve,p.reject)}else p.resolve(void 0);let f=[],m={type:"put",request:a,response:g};f.push(m);let y=await p.promise;g.body!=null&&(g.body.source=y);let B=P2e(),v=null;try{this.#t(f)}catch(k){v=k}return queueMicrotask(()=>{v===null?B.resolve():B.reject(v)}),B.promise}async delete(t,r={}){Ep.brandCheck(this,e);let s="Cache.delete";Ep.argumentLengthCheck(arguments,1,s),t=Ep.converters.RequestInfo(t,s,"request"),r=Ep.converters.CacheQueryOptions(r,s,"options");let a=null;if(t instanceof uz){if(a=t[qH],a.method!=="GET"&&!r.ignoreMethod)return!1}else cnr(typeof t=="string"),a=new uz(t)[qH];let o=[],g={type:"delete",request:a,options:r};o.push(g);let p=P2e(),f=null,m;try{m=this.#t(o)}catch(y){f=y}return queueMicrotask(()=>{f===null?p.resolve(!!m?.length):p.reject(f)}),p.promise}async keys(t=void 0,r={}){Ep.brandCheck(this,e);let s="Cache.keys";t!==void 0&&(t=Ep.converters.RequestInfo(t,s,"request")),r=Ep.converters.CacheQueryOptions(r,s,"options");let a=null;if(t!==void 0)if(t instanceof uz){if(a=t[qH],a.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(a=new uz(t)[qH]);let o=P2e(),g=[];if(t===void 0)for(let p of this.#e)g.push(p[0]);else{let p=this.#r(a,r);for(let f of p)g.push(f[0])}return queueMicrotask(()=>{let p=[];for(let f of g){let m=Uvo(f,new AbortController().signal,"immutable");p.push(m)}o.resolve(Object.freeze(p))}),o.promise}#t(t){let r=this.#e,s=[...r],a=[],o=[];try{for(let g of t){if(g.type!=="delete"&&g.type!=="put")throw Ep.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if(g.type==="delete"&&g.response!=null)throw Ep.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#r(g.request,g.options,a).length)throw new DOMException("???","InvalidStateError");let p;if(g.type==="delete"){if(p=this.#r(g.request,g.options),p.length===0)return[];for(let f of p){let m=r.indexOf(f);cnr(m!==-1),r.splice(m,1)}}else if(g.type==="put"){if(g.response==null)throw Ep.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});let f=g.request;if(!fAt(f.url))throw Ep.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if(f.method!=="GET")throw Ep.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(g.options!=null)throw Ep.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});p=this.#r(g.request);for(let m of p){let y=r.indexOf(m);cnr(y!==-1),r.splice(y,1)}r.push([g.request,g.response]),a.push([g.request,g.response])}o.push([g.request,g.response])}return o}catch(g){throw this.#e.length=0,this.#e=s,g}}#r(t,r,s){let a=[],o=s??this.#e;for(let g of o){let[p,f]=g;this.#n(t,p,f,r)&&a.push(g)}return a}#n(t,r,s=null,a){let o=new URL(t.url),g=new URL(r.url);if(a?.ignoreSearch&&(g.search="",o.search=""),!Mvo(o,g,!0))return!1;if(s==null||a?.ignoreVary||!s.headersList.contains("vary"))return!0;let p=anr(s.headersList.get("vary"));for(let f of p){if(f==="*")return!1;let m=r.headersList.get(f),y=t.headersList.get(f);if(m!==y)return!1}return!0}#i(t,r,s=1/0){let a=null;if(t!==void 0)if(t instanceof uz){if(a=t[qH],a.method!=="GET"&&!r.ignoreMethod)return[]}else typeof t=="string"&&(a=new uz(t)[qH]);let o=[];if(t===void 0)for(let p of this.#e)o.push(p[1]);else{let p=this.#r(a,r);for(let f of p)o.push(f[1])}let g=[];for(let p of o){let f=Jvo(p,"immutable");if(g.push(f.clone()),g.length>=s)break}return Object.freeze(g)}};Object.defineProperties(IAt.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:tpe,matchAll:tpe,add:tpe,addAll:tpe,put:tpe,delete:tpe,keys:tpe});var B9n=[{key:"ignoreSearch",converter:Ep.converters.boolean,defaultValue:()=>!1},{key:"ignoreMethod",converter:Ep.converters.boolean,defaultValue:()=>!1},{key:"ignoreVary",converter:Ep.converters.boolean,defaultValue:()=>!1}];Ep.converters.CacheQueryOptions=Ep.dictionaryConverter(B9n);Ep.converters.MultiCacheQueryOptions=Ep.dictionaryConverter([...B9n,{key:"cacheName",converter:Ep.converters.DOMString}]);Ep.converters.Response=Ep.interfaceConverter(Yvo);Ep.converters["sequence"]=Ep.sequenceConverter(Ep.converters.RequestInfo);v9n.exports={Cache:IAt}});var T9n=z((y7c,w9n)=>{"use strict";var{kConstruct:qPe}=pAt(),{Cache:CAt}=S9n(),{webidl:PF}=WD(),{kEnumerableProperty:$Pe}=rm(),mAt=class e{#e=new Map;constructor(){arguments[0]!==qPe&&PF.illegalConstructor()}async match(t,r={}){if(PF.brandCheck(this,e),PF.argumentLengthCheck(arguments,1,"CacheStorage.match"),t=PF.converters.RequestInfo(t),r=PF.converters.MultiCacheQueryOptions(r),r.cacheName!=null){if(this.#e.has(r.cacheName)){let s=this.#e.get(r.cacheName);return await new CAt(qPe,s).match(t,r)}}else for(let s of this.#e.values()){let o=await new CAt(qPe,s).match(t,r);if(o!==void 0)return o}}async has(t){PF.brandCheck(this,e);let r="CacheStorage.has";return PF.argumentLengthCheck(arguments,1,r),t=PF.converters.DOMString(t,r,"cacheName"),this.#e.has(t)}async open(t){PF.brandCheck(this,e);let r="CacheStorage.open";if(PF.argumentLengthCheck(arguments,1,r),t=PF.converters.DOMString(t,r,"cacheName"),this.#e.has(t)){let a=this.#e.get(t);return new CAt(qPe,a)}let s=[];return this.#e.set(t,s),new CAt(qPe,s)}async delete(t){PF.brandCheck(this,e);let r="CacheStorage.delete";return PF.argumentLengthCheck(arguments,1,r),t=PF.converters.DOMString(t,r,"cacheName"),this.#e.delete(t)}async keys(){return PF.brandCheck(this,e),[...this.#e.keys()]}};Object.defineProperties(mAt.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:$Pe,has:$Pe,open:$Pe,delete:$Pe,keys:$Pe});w9n.exports={CacheStorage:mAt}});var R9n=z((b7c,N9n)=>{"use strict";N9n.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var lnr=z((E7c,F9n)=>{"use strict";function zvo(e){for(let t=0;t=0&&r<=8||r>=10&&r<=31||r===127)return!0}return!1}function D9n(e){for(let t=0;t126||r===34||r===40||r===41||r===60||r===62||r===64||r===44||r===59||r===58||r===92||r===47||r===91||r===93||r===63||r===61||r===123||r===125)throw new Error("Invalid cookie name")}}function x9n(e){let t=e.length,r=0;if(e[0]==='"'){if(t===1||e[t-1]!=='"')throw new Error("Invalid cookie value");--t,++r}for(;r126||s===34||s===44||s===59||s===92)throw new Error("Invalid cookie value")}}function k9n(e){for(let t=0;tt.toString().padStart(2,"0"));function G9n(e){return typeof e=="number"&&(e=new Date(e)),`${$vo[e.getUTCDay()]}, ${hAt[e.getUTCDate()]} ${eSo[e.getUTCMonth()]} ${e.getUTCFullYear()} ${hAt[e.getUTCHours()]}:${hAt[e.getUTCMinutes()]}:${hAt[e.getUTCSeconds()]} GMT`}function tSo(e){if(e<0)throw new Error("Invalid cookie max-age")}function rSo(e){if(e.name.length===0)return null;D9n(e.name),x9n(e.value);let t=[`${e.name}=${e.value}`];e.name.startsWith("__Secure-")&&(e.secure=!0),e.name.startsWith("__Host-")&&(e.secure=!0,e.domain=null,e.path="/"),e.secure&&t.push("Secure"),e.httpOnly&&t.push("HttpOnly"),typeof e.maxAge=="number"&&(tSo(e.maxAge),t.push(`Max-Age=${e.maxAge}`)),e.domain&&(qvo(e.domain),t.push(`Domain=${e.domain}`)),e.path&&(k9n(e.path),t.push(`Path=${e.path}`)),e.expires&&e.expires.toString()!=="Invalid Date"&&t.push(`Expires=${G9n(e.expires)}`),e.sameSite&&t.push(`SameSite=${e.sameSite}`);for(let r of e.unparsed){if(!r.includes("="))throw new Error("Invalid unparsed");let[s,...a]=r.split("=");t.push(`${s.trim()}=${a.join("=")}`)}return t.join("; ")}F9n.exports={isCTLExcludingHtab:zvo,validateCookieName:D9n,validateCookiePath:k9n,validateCookieValue:x9n,toIMFDate:G9n,stringify:rSo}});var L9n=z((B7c,Z9n)=>{"use strict";var{maxNameValuePairSize:nSo,maxAttributeValueSize:iSo}=R9n(),{isCTLExcludingHtab:sSo}=lnr(),{collectASequenceOfCodePointsFast:_At}=ML(),oSo=xt("node:assert");function aSo(e){if(sSo(e))return null;let t="",r="",s="",a="";if(e.includes(";")){let o={position:0};t=_At(";",e,o),r=e.slice(o.position)}else t=e;if(!t.includes("="))a=t;else{let o={position:0};s=_At("=",t,o),a=t.slice(o.position+1)}return s=s.trim(),a=a.trim(),s.length+a.length>nSo?null:{name:s,value:a,...O2e(r)}}function O2e(e,t={}){if(e.length===0)return t;oSo(e[0]===";"),e=e.slice(1);let r="";e.includes(";")?(r=_At(";",e,{position:0}),e=e.slice(r.length)):(r=e,e="");let s="",a="";if(r.includes("=")){let g={position:0};s=_At("=",r,g),a=r.slice(g.position+1)}else s=r;if(s=s.trim(),a=a.trim(),a.length>iSo)return O2e(e,t);let o=s.toLowerCase();if(o==="expires"){let g=new Date(a);t.expires=g}else if(o==="max-age"){let g=a.charCodeAt(0);if((g<48||g>57)&&a[0]!=="-"||!/^\d+$/.test(a))return O2e(e,t);let p=Number(a);t.maxAge=p}else if(o==="domain"){let g=a;g[0]==="."&&(g=g.slice(1)),g=g.toLowerCase(),t.domain=g}else if(o==="path"){let g="";a.length===0||a[0]!=="/"?g="/":g=a,t.path=g}else if(o==="secure")t.secure=!0;else if(o==="httponly")t.httpOnly=!0;else if(o==="samesite"){let g="Default",p=a.toLowerCase();p.includes("none")&&(g="None"),p.includes("strict")&&(g="Strict"),p.includes("lax")&&(g="Lax"),t.sameSite=g}else t.unparsed??=[],t.unparsed.push(`${s}=${a}`);return O2e(e,t)}Z9n.exports={parseSetCookie:aSo,parseUnparsedAttributes:O2e}});var P9n=z((v7c,W9n)=>{"use strict";var{parseSetCookie:cSo}=L9n(),{stringify:lSo}=lnr(),{webidl:Wm}=WD(),{Headers:yAt}=jde();function uSo(e){Wm.argumentLengthCheck(arguments,1,"getCookies"),Wm.brandCheck(e,yAt,{strict:!1});let t=e.get("cookie"),r={};if(!t)return r;for(let s of t.split(";")){let[a,...o]=s.split("=");r[a.trim()]=o.join("=")}return r}function gSo(e,t,r){Wm.brandCheck(e,yAt,{strict:!1});let s="deleteCookie";Wm.argumentLengthCheck(arguments,2,s),t=Wm.converters.DOMString(t,s,"name"),r=Wm.converters.DeleteCookieAttributes(r),V9n(e,{name:t,value:"",expires:new Date(0),...r})}function ASo(e){Wm.argumentLengthCheck(arguments,1,"getSetCookies"),Wm.brandCheck(e,yAt,{strict:!1});let t=e.getSetCookie();return t?t.map(r=>cSo(r)):[]}function V9n(e,t){Wm.argumentLengthCheck(arguments,2,"setCookie"),Wm.brandCheck(e,yAt,{strict:!1}),t=Wm.converters.Cookie(t);let r=lSo(t);r&&e.append("Set-Cookie",r)}Wm.converters.DeleteCookieAttributes=Wm.dictionaryConverter([{converter:Wm.nullableConverter(Wm.converters.DOMString),key:"path",defaultValue:()=>null},{converter:Wm.nullableConverter(Wm.converters.DOMString),key:"domain",defaultValue:()=>null}]);Wm.converters.Cookie=Wm.dictionaryConverter([{converter:Wm.converters.DOMString,key:"name"},{converter:Wm.converters.DOMString,key:"value"},{converter:Wm.nullableConverter(e=>typeof e=="number"?Wm.converters["unsigned long long"](e):new Date(e)),key:"expires",defaultValue:()=>null},{converter:Wm.nullableConverter(Wm.converters["long long"]),key:"maxAge",defaultValue:()=>null},{converter:Wm.nullableConverter(Wm.converters.DOMString),key:"domain",defaultValue:()=>null},{converter:Wm.nullableConverter(Wm.converters.DOMString),key:"path",defaultValue:()=>null},{converter:Wm.nullableConverter(Wm.converters.boolean),key:"secure",defaultValue:()=>null},{converter:Wm.nullableConverter(Wm.converters.boolean),key:"httpOnly",defaultValue:()=>null},{converter:Wm.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:Wm.sequenceConverter(Wm.converters.DOMString),key:"unparsed",defaultValue:()=>new Array(0)}]);W9n.exports={getCookies:uSo,deleteCookie:gSo,getSetCookies:ASo,setCookie:V9n}});var M2e=z((S7c,Q9n)=>{"use strict";var{webidl:Vp}=WD(),{kEnumerableProperty:JL}=rm(),{kConstruct:O9n}=z1(),{MessagePort:dSo}=xt("node:worker_threads"),Q2e=class e extends Event{#e;constructor(t,r={}){if(t===O9n){super(arguments[1],arguments[2]);return}let s="MessageEvent constructor";Vp.argumentLengthCheck(arguments,1,s),t=Vp.converters.DOMString(t,s,"type"),r=Vp.converters.MessageEventInit(r,s,"eventInitDict"),super(t,r),this.#e=r}get data(){return Vp.brandCheck(this,e),this.#e.data}get origin(){return Vp.brandCheck(this,e),this.#e.origin}get lastEventId(){return Vp.brandCheck(this,e),this.#e.lastEventId}get source(){return Vp.brandCheck(this,e),this.#e.source}get ports(){return Vp.brandCheck(this,e),Object.isFrozen(this.#e.ports)||Object.freeze(this.#e.ports),this.#e.ports}initMessageEvent(t,r=!1,s=!1,a=null,o="",g="",p=null,f=[]){return Vp.brandCheck(this,e),Vp.argumentLengthCheck(arguments,1,"MessageEvent.initMessageEvent"),new e(t,{bubbles:r,cancelable:s,data:a,origin:o,lastEventId:g,source:p,ports:f})}static createFastMessageEvent(t,r){let s=new e(O9n,t,r);return s.#e=r,s.#e.data??=null,s.#e.origin??="",s.#e.lastEventId??="",s.#e.source??=null,s.#e.ports??=[],s}},{createFastMessageEvent:pSo}=Q2e;delete Q2e.createFastMessageEvent;var bAt=class e extends Event{#e;constructor(t,r={}){let s="CloseEvent constructor";Vp.argumentLengthCheck(arguments,1,s),t=Vp.converters.DOMString(t,s,"type"),r=Vp.converters.CloseEventInit(r),super(t,r),this.#e=r}get wasClean(){return Vp.brandCheck(this,e),this.#e.wasClean}get code(){return Vp.brandCheck(this,e),this.#e.code}get reason(){return Vp.brandCheck(this,e),this.#e.reason}},EAt=class e extends Event{#e;constructor(t,r){let s="ErrorEvent constructor";Vp.argumentLengthCheck(arguments,1,s),super(t,r),t=Vp.converters.DOMString(t,s,"type"),r=Vp.converters.ErrorEventInit(r??{}),this.#e=r}get message(){return Vp.brandCheck(this,e),this.#e.message}get filename(){return Vp.brandCheck(this,e),this.#e.filename}get lineno(){return Vp.brandCheck(this,e),this.#e.lineno}get colno(){return Vp.brandCheck(this,e),this.#e.colno}get error(){return Vp.brandCheck(this,e),this.#e.error}};Object.defineProperties(Q2e.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:JL,origin:JL,lastEventId:JL,source:JL,ports:JL,initMessageEvent:JL});Object.defineProperties(bAt.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:JL,code:JL,wasClean:JL});Object.defineProperties(EAt.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:JL,filename:JL,lineno:JL,colno:JL,error:JL});Vp.converters.MessagePort=Vp.interfaceConverter(dSo);Vp.converters["sequence"]=Vp.sequenceConverter(Vp.converters.MessagePort);var unr=[{key:"bubbles",converter:Vp.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:Vp.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:Vp.converters.boolean,defaultValue:()=>!1}];Vp.converters.MessageEventInit=Vp.dictionaryConverter([...unr,{key:"data",converter:Vp.converters.any,defaultValue:()=>null},{key:"origin",converter:Vp.converters.USVString,defaultValue:()=>""},{key:"lastEventId",converter:Vp.converters.DOMString,defaultValue:()=>""},{key:"source",converter:Vp.nullableConverter(Vp.converters.MessagePort),defaultValue:()=>null},{key:"ports",converter:Vp.converters["sequence"],defaultValue:()=>new Array(0)}]);Vp.converters.CloseEventInit=Vp.dictionaryConverter([...unr,{key:"wasClean",converter:Vp.converters.boolean,defaultValue:()=>!1},{key:"code",converter:Vp.converters["unsigned short"],defaultValue:()=>0},{key:"reason",converter:Vp.converters.USVString,defaultValue:()=>""}]);Vp.converters.ErrorEventInit=Vp.dictionaryConverter([...unr,{key:"message",converter:Vp.converters.DOMString,defaultValue:()=>""},{key:"filename",converter:Vp.converters.USVString,defaultValue:()=>""},{key:"lineno",converter:Vp.converters["unsigned long"],defaultValue:()=>0},{key:"colno",converter:Vp.converters["unsigned long"],defaultValue:()=>0},{key:"error",converter:Vp.converters.any}]);Q9n.exports={MessageEvent:Q2e,CloseEvent:bAt,ErrorEvent:EAt,createFastMessageEvent:pSo}});var rpe=z((w7c,M9n)=>{"use strict";var fSo="258EAFA5-E914-47DA-95CA-C5AB0DC85B11",ISo={enumerable:!0,writable:!1,configurable:!1},CSo={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},mSo={NOT_SENT:0,PROCESSING:1,SENT:2},hSo={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},_So=2**16-1,ySo={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},bSo=Buffer.allocUnsafe(0),ESo={string:1,typedArray:2,arrayBuffer:3,blob:4};M9n.exports={uid:fSo,sentCloseFrameState:mSo,staticPropertyDescriptors:ISo,states:CSo,opcodes:hSo,maxUnsigned16Bit:_So,parserStates:ySo,emptyBuffer:bSo,sendHints:ESo}});var eOe=z((T7c,H9n)=>{"use strict";H9n.exports={kWebSocketURL:Symbol("url"),kReadyState:Symbol("ready state"),kController:Symbol("controller"),kResponse:Symbol("response"),kBinaryType:Symbol("binary type"),kSentClose:Symbol("sent close"),kReceivedClose:Symbol("received close"),kByteParser:Symbol("byte parser")}});var nOe=z((N7c,$9n)=>{"use strict";var{kReadyState:tOe,kController:BSo,kResponse:vSo,kBinaryType:SSo,kWebSocketURL:wSo}=eOe(),{states:rOe,opcodes:Nie}=rpe(),{ErrorEvent:TSo,createFastMessageEvent:NSo}=M2e(),{isUtf8:RSo}=xt("node:buffer"),{collectASequenceOfCodePointsFast:DSo,removeHTTPWhitespace:Y9n}=ML();function xSo(e){return e[tOe]===rOe.CONNECTING}function kSo(e){return e[tOe]===rOe.OPEN}function GSo(e){return e[tOe]===rOe.CLOSING}function FSo(e){return e[tOe]===rOe.CLOSED}function gnr(e,t,r=(a,o)=>new Event(a,o),s={}){let a=r(e,s);t.dispatchEvent(a)}function ZSo(e,t,r){if(e[tOe]!==rOe.OPEN)return;let s;if(t===Nie.TEXT)try{s=q9n(r)}catch{J9n(e,"Received invalid UTF-8 in text frame.");return}else t===Nie.BINARY&&(e[SSo]==="blob"?s=new Blob([r]):s=LSo(r));gnr("message",e,NSo,{origin:e[wSo].origin,data:s})}function LSo(e){return e.byteLength===e.buffer.byteLength?e.buffer:e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength)}function VSo(e){if(e.length===0)return!1;for(let t=0;t126||r===34||r===40||r===41||r===44||r===47||r===58||r===59||r===60||r===61||r===62||r===63||r===64||r===91||r===92||r===93||r===123||r===125)return!1}return!0}function WSo(e){return e>=1e3&&e<1015?e!==1004&&e!==1005&&e!==1006:e>=3e3&&e<=4999}function J9n(e,t){let{[BSo]:r,[vSo]:s}=e;r.abort(),s?.socket&&!s.socket.destroyed&&s.socket.destroy(),t&&gnr("error",e,(a,o)=>new TSo(a,o),{error:new Error(t),message:t})}function U9n(e){return e===Nie.CLOSE||e===Nie.PING||e===Nie.PONG}function K9n(e){return e===Nie.CONTINUATION}function j9n(e){return e===Nie.TEXT||e===Nie.BINARY}function PSo(e){return j9n(e)||K9n(e)||U9n(e)}function OSo(e){let t={position:0},r=new Map;for(;t.position57)return!1}return!0}var z9n=typeof process.versions.icu=="string",X9n=z9n?new TextDecoder("utf-8",{fatal:!0}):void 0,q9n=z9n?X9n.decode.bind(X9n):function(e){if(RSo(e))return e.toString("utf-8");throw new TypeError("Invalid utf-8 received.")};$9n.exports={isConnecting:xSo,isEstablished:kSo,isClosing:GSo,isClosed:FSo,fireEvent:gnr,isValidSubprotocol:VSo,isValidStatusCode:WSo,failWebsocketConnection:J9n,websocketMessageReceived:ZSo,utf8Decode:q9n,isControlFrame:U9n,isContinuationFrame:K9n,isTextBinaryFrame:j9n,isValidOpcode:PSo,parseExtensions:OSo,isValidClientWindowBits:QSo}});var vAt=z((R7c,eVn)=>{"use strict";var{maxUnsigned16Bit:MSo}=rpe(),BAt=16386,Anr,iOe=null,H2e=BAt;try{Anr=xt("node:crypto")}catch{Anr={randomFillSync:function(t,r,s){for(let a=0;aMSo?(g+=8,o=127):a>125&&(g+=2,o=126);let p=Buffer.allocUnsafe(a+g);p[0]=p[1]=0,p[0]|=128,p[0]=(p[0]&240)+t;p[g-4]=s[0],p[g-3]=s[1],p[g-2]=s[2],p[g-1]=s[3],p[1]=o,o===126?p.writeUInt16BE(a,2):o===127&&(p[2]=p[3]=0,p.writeUIntBE(a,4,6)),p[1]|=128;for(let f=0;f{"use strict";var{uid:YSo,states:sOe,sentCloseFrameState:SAt,emptyBuffer:XSo,opcodes:JSo}=rpe(),{kReadyState:oOe,kSentClose:wAt,kByteParser:rVn,kReceivedClose:tVn,kResponse:nVn}=eOe(),{fireEvent:USo,failWebsocketConnection:Rie,isClosing:KSo,isClosed:jSo,isEstablished:zSo,parseExtensions:qSo}=nOe(),{channels:Y2e}=o2e(),{CloseEvent:$So}=M2e(),{makeRequest:ewo}=L2e(),{fetching:two}=jPe(),{Headers:rwo,getHeadersList:nwo}=jde(),{getDecodeSplit:iwo}=VW(),{WebsocketFrameSend:swo}=vAt(),pnr;try{pnr=xt("node:crypto")}catch{}function owo(e,t,r,s,a,o){let g=e;g.protocol=e.protocol==="ws:"?"http:":"https:";let p=ewo({urlList:[g],client:r,serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(o.headers){let B=nwo(new rwo(o.headers));p.headersList=B}let f=pnr.randomBytes(16).toString("base64");p.headersList.append("sec-websocket-key",f),p.headersList.append("sec-websocket-version","13");for(let B of t)p.headersList.append("sec-websocket-protocol",B);return p.headersList.append("sec-websocket-extensions","permessage-deflate; client_max_window_bits"),two({request:p,useParallelQueue:!0,dispatcher:o.dispatcher,processResponse(B){if(B.type==="error"||B.status!==101){Rie(s,"Received network error or non-101 status code.");return}if(t.length!==0&&!B.headersList.get("Sec-WebSocket-Protocol")){Rie(s,"Server did not respond with sent protocols.");return}if(B.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){Rie(s,'Server did not set Upgrade header to "websocket".');return}if(B.headersList.get("Connection")?.toLowerCase()!=="upgrade"){Rie(s,'Server did not set Connection header to "upgrade".');return}let v=B.headersList.get("Sec-WebSocket-Accept"),k=pnr.createHash("sha1").update(f+YSo).digest("base64");if(v!==k){Rie(s,"Incorrect hash received in Sec-WebSocket-Accept header.");return}let T=B.headersList.get("Sec-WebSocket-Extensions"),O;if(T!==null&&(O=qSo(T),!O.has("permessage-deflate"))){Rie(s,"Sec-WebSocket-Extensions header does not match.");return}let X=B.headersList.get("Sec-WebSocket-Protocol");if(X!==null&&!iwo("sec-websocket-protocol",p.headersList).includes(X)){Rie(s,"Protocol was not set in the opening handshake.");return}B.socket.on("data",iVn),B.socket.on("close",sVn),B.socket.on("error",oVn),Y2e.open.hasSubscribers&&Y2e.open.publish({address:B.socket.address(),protocol:X,extensions:T}),a(B,O)}})}function awo(e,t,r,s){if(!(KSo(e)||jSo(e)))if(!zSo(e))Rie(e,"Connection was closed before it was established."),e[oOe]=sOe.CLOSING;else if(e[wAt]===SAt.NOT_SENT){e[wAt]=SAt.PROCESSING;let a=new swo;t!==void 0&&r===void 0?(a.frameData=Buffer.allocUnsafe(2),a.frameData.writeUInt16BE(t,0)):t!==void 0&&r!==void 0?(a.frameData=Buffer.allocUnsafe(2+s),a.frameData.writeUInt16BE(t,0),a.frameData.write(r,2,"utf-8")):a.frameData=XSo,e[nVn].socket.write(a.createFrame(JSo.CLOSE)),e[wAt]=SAt.SENT,e[oOe]=sOe.CLOSING}else e[oOe]=sOe.CLOSING}function iVn(e){this.ws[rVn].write(e)||this.pause()}function sVn(){let{ws:e}=this,{[nVn]:t}=e;t.socket.off("data",iVn),t.socket.off("close",sVn),t.socket.off("error",oVn);let r=e[wAt]===SAt.SENT&&e[tVn],s=1005,a="",o=e[rVn].closingInfo;o&&!o.error?(s=o.code??1005,a=o.reason):e[tVn]||(s=1006),e[oOe]=sOe.CLOSED,USo("close",e,(g,p)=>new $So(g,p),{wasClean:r,code:s,reason:a}),Y2e.close.hasSubscribers&&Y2e.close.publish({websocket:e,code:s,reason:a})}function oVn(e){let{ws:t}=this;t[oOe]=sOe.CLOSING,Y2e.socketError.hasSubscribers&&Y2e.socketError.publish(e),this.destroy()}aVn.exports={establishWebSocketConnection:owo,closeWebSocketConnection:awo}});var lVn=z((x7c,cVn)=>{"use strict";var{createInflateRaw:cwo,Z_DEFAULT_WINDOWBITS:lwo}=xt("node:zlib"),{isValidClientWindowBits:uwo}=nOe(),gwo=Buffer.from([0,0,255,255]),TAt=Symbol("kBuffer"),NAt=Symbol("kLength"),Inr=class{#e;#t={};constructor(t){this.#t.serverNoContextTakeover=t.has("server_no_context_takeover"),this.#t.serverMaxWindowBits=t.get("server_max_window_bits")}decompress(t,r,s){if(!this.#e){let a=lwo;if(this.#t.serverMaxWindowBits){if(!uwo(this.#t.serverMaxWindowBits)){s(new Error("Invalid server_max_window_bits"));return}a=Number.parseInt(this.#t.serverMaxWindowBits)}this.#e=cwo({windowBits:a}),this.#e[TAt]=[],this.#e[NAt]=0,this.#e.on("data",o=>{this.#e[TAt].push(o),this.#e[NAt]+=o.length}),this.#e.on("error",o=>{this.#e=null,s(o)})}this.#e.write(t),r&&this.#e.write(gwo),this.#e.flush(()=>{let a=Buffer.concat(this.#e[TAt],this.#e[NAt]);this.#e[TAt].length=0,this.#e[NAt]=0,s(null,a)})}};cVn.exports={PerMessageDeflate:Inr}});var _Vn=z((k7c,hVn)=>{"use strict";var{Writable:Awo}=xt("node:stream"),dwo=xt("node:assert"),{parserStates:UL,opcodes:X2e,states:pwo,emptyBuffer:uVn,sentCloseFrameState:gVn}=rpe(),{kReadyState:fwo,kSentClose:AVn,kResponse:dVn,kReceivedClose:pVn}=eOe(),{channels:RAt}=o2e(),{isValidStatusCode:Iwo,isValidOpcode:Cwo,failWebsocketConnection:oQ,websocketMessageReceived:fVn,utf8Decode:mwo,isControlFrame:IVn,isTextBinaryFrame:Cnr,isContinuationFrame:hwo}=nOe(),{WebsocketFrameSend:CVn}=vAt(),{closeWebSocketConnection:mVn}=fnr(),{PerMessageDeflate:_wo}=lVn(),mnr=class extends Awo{#e=[];#t=0;#r=!1;#n=UL.INFO;#i={};#a=[];#s;constructor(t,r){super(),this.ws=t,this.#s=r??new Map,this.#s.has("permessage-deflate")&&this.#s.set("permessage-deflate",new _wo(r))}_write(t,r,s){this.#e.push(t),this.#t+=t.length,this.#r=!0,this.run(s)}run(t){for(;this.#r;)if(this.#n===UL.INFO){if(this.#t<2)return t();let r=this.consume(2),s=(r[0]&128)!==0,a=r[0]&15,o=(r[1]&128)===128,g=!s&&a!==X2e.CONTINUATION,p=r[1]&127,f=r[0]&64,m=r[0]&32,y=r[0]&16;if(!Cwo(a))return oQ(this.ws,"Invalid opcode received"),t();if(o)return oQ(this.ws,"Frame cannot be masked"),t();if(f!==0&&!this.#s.has("permessage-deflate")){oQ(this.ws,"Expected RSV1 to be clear.");return}if(m!==0||y!==0){oQ(this.ws,"RSV1, RSV2, RSV3 must be clear");return}if(g&&!Cnr(a)){oQ(this.ws,"Invalid frame type was fragmented.");return}if(Cnr(a)&&this.#a.length>0){oQ(this.ws,"Expected continuation frame");return}if(this.#i.fragmented&&g){oQ(this.ws,"Fragmented frame exceeded 125 bytes.");return}if((p>125||g)&&IVn(a)){oQ(this.ws,"Control frame either too large or fragmented");return}if(hwo(a)&&this.#a.length===0&&!this.#i.compressed){oQ(this.ws,"Unexpected continuation frame");return}p<=125?(this.#i.payloadLength=p,this.#n=UL.READ_DATA):p===126?this.#n=UL.PAYLOADLENGTH_16:p===127&&(this.#n=UL.PAYLOADLENGTH_64),Cnr(a)&&(this.#i.binaryType=a,this.#i.compressed=f!==0),this.#i.opcode=a,this.#i.masked=o,this.#i.fin=s,this.#i.fragmented=g}else if(this.#n===UL.PAYLOADLENGTH_16){if(this.#t<2)return t();let r=this.consume(2);this.#i.payloadLength=r.readUInt16BE(0),this.#n=UL.READ_DATA}else if(this.#n===UL.PAYLOADLENGTH_64){if(this.#t<8)return t();let r=this.consume(8),s=r.readUInt32BE(0);if(s>2**31-1){oQ(this.ws,"Received payload length > 2^31 bytes.");return}let a=r.readUInt32BE(4);this.#i.payloadLength=(s<<8)+a,this.#n=UL.READ_DATA}else if(this.#n===UL.READ_DATA){if(this.#t{if(s){mVn(this.ws,1007,s.message,s.message.length);return}if(this.#a.push(a),!this.#i.fin){this.#n=UL.INFO,this.#r=!0,this.run(t);return}fVn(this.ws,this.#i.binaryType,Buffer.concat(this.#a)),this.#r=!0,this.#n=UL.INFO,this.#a.length=0,this.run(t)}),this.#r=!1;break}else{if(this.#a.push(r),!this.#i.fragmented&&this.#i.fin){let s=Buffer.concat(this.#a);fVn(this.ws,this.#i.binaryType,s),this.#a.length=0}this.#n=UL.INFO}}}consume(t){if(t>this.#t)throw new Error("Called consume() before buffers satiated.");if(t===0)return uVn;if(this.#e[0].length===t)return this.#t-=this.#e[0].length,this.#e.shift();let r=Buffer.allocUnsafe(t),s=0;for(;s!==t;){let a=this.#e[0],{length:o}=a;if(o+s===t){r.set(this.#e.shift(),s);break}else if(o+s>t){r.set(a.subarray(0,t-s),s),this.#e[0]=a.subarray(t-s);break}else r.set(this.#e.shift(),s),s+=a.length}return this.#t-=t,r}parseCloseBody(t){dwo(t.length!==1);let r;if(t.length>=2&&(r=t.readUInt16BE(0)),r!==void 0&&!Iwo(r))return{code:1002,reason:"Invalid status code",error:!0};let s=t.subarray(2);s[0]===239&&s[1]===187&&s[2]===191&&(s=s.subarray(3));try{s=mwo(s)}catch{return{code:1007,reason:"Invalid UTF-8",error:!0}}return{code:r,reason:s,error:!1}}parseControlFrame(t){let{opcode:r,payloadLength:s}=this.#i;if(r===X2e.CLOSE){if(s===1)return oQ(this.ws,"Received close frame with a 1-byte body."),!1;if(this.#i.closeInfo=this.parseCloseBody(t),this.#i.closeInfo.error){let{code:a,reason:o}=this.#i.closeInfo;return mVn(this.ws,a,o,o.length),oQ(this.ws,o),!1}if(this.ws[AVn]!==gVn.SENT){let a=uVn;this.#i.closeInfo.code&&(a=Buffer.allocUnsafe(2),a.writeUInt16BE(this.#i.closeInfo.code,0));let o=new CVn(a);this.ws[dVn].socket.write(o.createFrame(X2e.CLOSE),g=>{g||(this.ws[AVn]=gVn.SENT)})}return this.ws[fwo]=pwo.CLOSING,this.ws[pVn]=!0,!1}else if(r===X2e.PING){if(!this.ws[pVn]){let a=new CVn(t);this.ws[dVn].socket.write(a.createFrame(X2e.PONG)),RAt.ping.hasSubscribers&&RAt.ping.publish({payload:t})}}else r===X2e.PONG&&RAt.pong.hasSubscribers&&RAt.pong.publish({payload:t});return!0}get closingInfo(){return this.#i.closeInfo}};hVn.exports={ByteParser:mnr}});var vVn=z((G7c,BVn)=>{"use strict";var{WebsocketFrameSend:ywo}=vAt(),{opcodes:yVn,sendHints:J2e}=rpe(),bwo=Rtr(),bVn=Buffer[Symbol.species],hnr=class{#e=new bwo;#t=!1;#r;constructor(t){this.#r=t}add(t,r,s){if(s!==J2e.blob){let o=EVn(t,s);if(!this.#t)this.#r.write(o,r);else{let g={promise:null,callback:r,frame:o};this.#e.push(g)}return}let a={promise:t.arrayBuffer().then(o=>{a.promise=null,a.frame=EVn(o,s)}),callback:r,frame:null};this.#e.push(a),this.#t||this.#n()}async#n(){this.#t=!0;let t=this.#e;for(;!t.isEmpty();){let r=t.shift();r.promise!==null&&await r.promise,this.#r.write(r.frame,r.callback),r.callback=r.frame=null}this.#t=!1}};function EVn(e,t){return new ywo(Ewo(e,t)).createFrame(t===J2e.string?yVn.TEXT:yVn.BINARY)}function Ewo(e,t){switch(t){case J2e.string:return Buffer.from(e);case J2e.arrayBuffer:case J2e.blob:return new bVn(e);case J2e.typedArray:return new bVn(e.buffer,e.byteOffset,e.byteLength)}}BVn.exports={SendQueue:hnr}});var GVn=z((F7c,kVn)=>{"use strict";var{webidl:$f}=WD(),{URLSerializer:Bwo}=ML(),{environmentSettingsObject:SVn}=VW(),{staticPropertyDescriptors:Die,states:aOe,sentCloseFrameState:vwo,sendHints:DAt}=rpe(),{kWebSocketURL:wVn,kReadyState:_nr,kController:Swo,kBinaryType:xAt,kResponse:TVn,kSentClose:wwo,kByteParser:Two}=eOe(),{isConnecting:Nwo,isEstablished:Rwo,isClosing:Dwo,isValidSubprotocol:xwo,fireEvent:NVn}=nOe(),{establishWebSocketConnection:kwo,closeWebSocketConnection:RVn}=fnr(),{ByteParser:Gwo}=_Vn(),{kEnumerableProperty:aQ,isBlobLike:DVn}=rm(),{getGlobalDispatcher:Fwo}=Jgt(),{types:xVn}=xt("node:util"),{ErrorEvent:Zwo,CloseEvent:Lwo}=M2e(),{SendQueue:Vwo}=vVn(),HW=class e extends EventTarget{#e={open:null,error:null,close:null,message:null};#t=0;#r="";#n="";#i;constructor(t,r=[]){super();let s="WebSocket constructor";$f.argumentLengthCheck(arguments,1,s);let a=$f.converters["DOMString or sequence or WebSocketInit"](r,s,"options");t=$f.converters.USVString(t,s,"url"),r=a.protocols;let o=SVn.settingsObject.baseUrl,g;try{g=new URL(t,o)}catch(f){throw new DOMException(f,"SyntaxError")}if(g.protocol==="http:"?g.protocol="ws:":g.protocol==="https:"&&(g.protocol="wss:"),g.protocol!=="ws:"&&g.protocol!=="wss:")throw new DOMException(`Expected a ws: or wss: protocol, got ${g.protocol}`,"SyntaxError");if(g.hash||g.href.endsWith("#"))throw new DOMException("Got fragment","SyntaxError");if(typeof r=="string"&&(r=[r]),r.length!==new Set(r.map(f=>f.toLowerCase())).size)throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(r.length>0&&!r.every(f=>xwo(f)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");this[wVn]=new URL(g.href);let p=SVn.settingsObject;this[Swo]=kwo(g,r,p,this,(f,m)=>this.#a(f,m),a),this[_nr]=e.CONNECTING,this[wwo]=vwo.NOT_SENT,this[xAt]="blob"}close(t=void 0,r=void 0){$f.brandCheck(this,e);let s="WebSocket.close";if(t!==void 0&&(t=$f.converters["unsigned short"](t,s,"code",{clamp:!0})),r!==void 0&&(r=$f.converters.USVString(r,s,"reason")),t!==void 0&&t!==1e3&&(t<3e3||t>4999))throw new DOMException("invalid code","InvalidAccessError");let a=0;if(r!==void 0&&(a=Buffer.byteLength(r),a>123))throw new DOMException(`Reason must be less than 123 bytes; received ${a}`,"SyntaxError");RVn(this,t,r,a)}send(t){$f.brandCheck(this,e);let r="WebSocket.send";if($f.argumentLengthCheck(arguments,1,r),t=$f.converters.WebSocketSendData(t,r,"data"),Nwo(this))throw new DOMException("Sent before connected.","InvalidStateError");if(!(!Rwo(this)||Dwo(this)))if(typeof t=="string"){let s=Buffer.byteLength(t);this.#t+=s,this.#i.add(t,()=>{this.#t-=s},DAt.string)}else xVn.isArrayBuffer(t)?(this.#t+=t.byteLength,this.#i.add(t,()=>{this.#t-=t.byteLength},DAt.arrayBuffer)):ArrayBuffer.isView(t)?(this.#t+=t.byteLength,this.#i.add(t,()=>{this.#t-=t.byteLength},DAt.typedArray)):DVn(t)&&(this.#t+=t.size,this.#i.add(t,()=>{this.#t-=t.size},DAt.blob))}get readyState(){return $f.brandCheck(this,e),this[_nr]}get bufferedAmount(){return $f.brandCheck(this,e),this.#t}get url(){return $f.brandCheck(this,e),Bwo(this[wVn])}get extensions(){return $f.brandCheck(this,e),this.#n}get protocol(){return $f.brandCheck(this,e),this.#r}get onopen(){return $f.brandCheck(this,e),this.#e.open}set onopen(t){$f.brandCheck(this,e),this.#e.open&&this.removeEventListener("open",this.#e.open),typeof t=="function"?(this.#e.open=t,this.addEventListener("open",t)):this.#e.open=null}get onerror(){return $f.brandCheck(this,e),this.#e.error}set onerror(t){$f.brandCheck(this,e),this.#e.error&&this.removeEventListener("error",this.#e.error),typeof t=="function"?(this.#e.error=t,this.addEventListener("error",t)):this.#e.error=null}get onclose(){return $f.brandCheck(this,e),this.#e.close}set onclose(t){$f.brandCheck(this,e),this.#e.close&&this.removeEventListener("close",this.#e.close),typeof t=="function"?(this.#e.close=t,this.addEventListener("close",t)):this.#e.close=null}get onmessage(){return $f.brandCheck(this,e),this.#e.message}set onmessage(t){$f.brandCheck(this,e),this.#e.message&&this.removeEventListener("message",this.#e.message),typeof t=="function"?(this.#e.message=t,this.addEventListener("message",t)):this.#e.message=null}get binaryType(){return $f.brandCheck(this,e),this[xAt]}set binaryType(t){$f.brandCheck(this,e),t!=="blob"&&t!=="arraybuffer"?this[xAt]="blob":this[xAt]=t}#a(t,r){this[TVn]=t;let s=new Gwo(this,r);s.on("drain",Wwo),s.on("error",Pwo.bind(this)),t.socket.ws=this,this[Two]=s,this.#i=new Vwo(t.socket),this[_nr]=aOe.OPEN;let a=t.headersList.get("sec-websocket-extensions");a!==null&&(this.#n=a);let o=t.headersList.get("sec-websocket-protocol");o!==null&&(this.#r=o),NVn("open",this)}};HW.CONNECTING=HW.prototype.CONNECTING=aOe.CONNECTING;HW.OPEN=HW.prototype.OPEN=aOe.OPEN;HW.CLOSING=HW.prototype.CLOSING=aOe.CLOSING;HW.CLOSED=HW.prototype.CLOSED=aOe.CLOSED;Object.defineProperties(HW.prototype,{CONNECTING:Die,OPEN:Die,CLOSING:Die,CLOSED:Die,url:aQ,readyState:aQ,bufferedAmount:aQ,onopen:aQ,onerror:aQ,onclose:aQ,close:aQ,onmessage:aQ,binaryType:aQ,send:aQ,extensions:aQ,protocol:aQ,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(HW,{CONNECTING:Die,OPEN:Die,CLOSING:Die,CLOSED:Die});$f.converters["sequence"]=$f.sequenceConverter($f.converters.DOMString);$f.converters["DOMString or sequence"]=function(e,t,r){return $f.util.Type(e)==="Object"&&Symbol.iterator in e?$f.converters["sequence"](e):$f.converters.DOMString(e,t,r)};$f.converters.WebSocketInit=$f.dictionaryConverter([{key:"protocols",converter:$f.converters["DOMString or sequence"],defaultValue:()=>new Array(0)},{key:"dispatcher",converter:$f.converters.any,defaultValue:()=>Fwo()},{key:"headers",converter:$f.nullableConverter($f.converters.HeadersInit)}]);$f.converters["DOMString or sequence or WebSocketInit"]=function(e){return $f.util.Type(e)==="Object"&&!(Symbol.iterator in e)?$f.converters.WebSocketInit(e):{protocols:$f.converters["DOMString or sequence"](e)}};$f.converters.WebSocketSendData=function(e){if($f.util.Type(e)==="Object"){if(DVn(e))return $f.converters.Blob(e,{strict:!1});if(ArrayBuffer.isView(e)||xVn.isArrayBuffer(e))return $f.converters.BufferSource(e)}return $f.converters.USVString(e)};function Wwo(){this.ws[TVn].socket.resume()}function Pwo(e){let t,r;e instanceof Lwo?(t=e.reason,r=e.code):t=e.message,NVn("error",this,()=>new Zwo("error",{error:e,message:t})),RVn(this,r)}kVn.exports={WebSocket:HW}});var ynr=z((Z7c,FVn)=>{"use strict";function Owo(e){return e.indexOf("\0")===-1}function Qwo(e){if(e.length===0)return!1;for(let t=0;t57)return!1;return!0}function Mwo(e){return new Promise(t=>{setTimeout(t,e).unref()})}FVn.exports={isValidLastEventId:Owo,isASCIINumber:Qwo,delay:Mwo}});var WVn=z((L7c,VVn)=>{"use strict";var{Transform:Hwo}=xt("node:stream"),{isASCIINumber:ZVn,isValidLastEventId:LVn}=ynr(),gz=[239,187,191],bnr=10,kAt=13,Ywo=58,Xwo=32,Enr=class extends Hwo{state=null;checkBOM=!0;crlfCheck=!1;eventEndCheck=!1;buffer=null;pos=0;event={data:void 0,event:void 0,id:void 0,retry:void 0};constructor(t={}){t.readableObjectMode=!0,super(t),this.state=t.eventSourceSettings||{},t.push&&(this.push=t.push)}_transform(t,r,s){if(t.length===0){s();return}if(this.buffer?this.buffer=Buffer.concat([this.buffer,t]):this.buffer=t,this.checkBOM)switch(this.buffer.length){case 1:if(this.buffer[0]===gz[0]){s();return}this.checkBOM=!1,s();return;case 2:if(this.buffer[0]===gz[0]&&this.buffer[1]===gz[1]){s();return}this.checkBOM=!1;break;case 3:if(this.buffer[0]===gz[0]&&this.buffer[1]===gz[1]&&this.buffer[2]===gz[2]){this.buffer=Buffer.alloc(0),this.checkBOM=!1,s();return}this.checkBOM=!1;break;default:this.buffer[0]===gz[0]&&this.buffer[1]===gz[1]&&this.buffer[2]===gz[2]&&(this.buffer=this.buffer.subarray(3)),this.checkBOM=!1;break}for(;this.pos0&&(r[a]=o);break}}processEvent(t){t.retry&&ZVn(t.retry)&&(this.state.reconnectionTime=parseInt(t.retry,10)),t.id&&LVn(t.id)&&(this.state.lastEventId=t.id),t.data!==void 0&&this.push({type:t.event||"message",options:{data:t.data,lastEventId:this.state.lastEventId,origin:this.state.origin}})}clearEvent(){this.event={data:void 0,event:void 0,id:void 0,retry:void 0}}};VVn.exports={EventSourceStream:Enr}});var JVn=z((V7c,XVn)=>{"use strict";var{pipeline:Jwo}=xt("node:stream"),{fetching:Uwo}=jPe(),{makeRequest:Kwo}=L2e(),{webidl:xie}=WD(),{EventSourceStream:jwo}=WVn(),{parseMIMEType:zwo}=ML(),{createFastMessageEvent:qwo}=M2e(),{isNetworkError:PVn}=UPe(),{delay:$wo}=ynr(),{kEnumerableProperty:npe}=rm(),{environmentSettingsObject:OVn}=VW(),QVn=!1,MVn=3e3,cOe=0,HVn=1,lOe=2,eTo="anonymous",tTo="use-credentials",U2e=class e extends EventTarget{#e={open:null,error:null,message:null};#t=null;#r=!1;#n=cOe;#i=null;#a=null;#s;#u;constructor(t,r={}){super();let s="EventSource constructor";xie.argumentLengthCheck(arguments,1,s),QVn||(QVn=!0,process.emitWarning("EventSource is experimental, expect them to change at any time.",{code:"UNDICI-ES"})),t=xie.converters.USVString(t,s,"url"),r=xie.converters.EventSourceInitDict(r,s,"eventSourceInitDict"),this.#s=r.dispatcher,this.#u={lastEventId:"",reconnectionTime:MVn};let a=OVn,o;try{o=new URL(t,a.settingsObject.baseUrl),this.#u.origin=o.origin}catch(f){throw new DOMException(f,"SyntaxError")}this.#t=o.href;let g=eTo;r.withCredentials&&(g=tTo,this.#r=!0);let p={redirect:"follow",keepalive:!0,mode:"cors",credentials:g==="anonymous"?"same-origin":"omit",referrer:"no-referrer"};p.client=OVn.settingsObject,p.headersList=[["accept",{name:"accept",value:"text/event-stream"}]],p.cache="no-store",p.initiator="other",p.urlList=[new URL(this.#t)],this.#i=Kwo(p),this.#g()}get readyState(){return this.#n}get url(){return this.#t}get withCredentials(){return this.#r}#g(){if(this.#n===lOe)return;this.#n=cOe;let t={request:this.#i,dispatcher:this.#s},r=s=>{PVn(s)&&(this.dispatchEvent(new Event("error")),this.close()),this.#c()};t.processResponseEndOfBody=r,t.processResponse=s=>{if(PVn(s))if(s.aborted){this.close(),this.dispatchEvent(new Event("error"));return}else{this.#c();return}let a=s.headersList.get("content-type",!0),o=a!==null?zwo(a):"failure",g=o!=="failure"&&o.essence==="text/event-stream";if(s.status!==200||g===!1){this.close(),this.dispatchEvent(new Event("error"));return}this.#n=HVn,this.dispatchEvent(new Event("open")),this.#u.origin=s.urlList[s.urlList.length-1].origin;let p=new jwo({eventSourceSettings:this.#u,push:f=>{this.dispatchEvent(qwo(f.type,f.options))}});Jwo(s.body.stream,p,f=>{f?.aborted===!1&&(this.close(),this.dispatchEvent(new Event("error")))})},this.#a=Uwo(t)}async#c(){this.#n!==lOe&&(this.#n=cOe,this.dispatchEvent(new Event("error")),await $wo(this.#u.reconnectionTime),this.#n===cOe&&(this.#u.lastEventId.length&&this.#i.headersList.set("last-event-id",this.#u.lastEventId,!0),this.#g()))}close(){xie.brandCheck(this,e),this.#n!==lOe&&(this.#n=lOe,this.#a.abort(),this.#i=null)}get onopen(){return this.#e.open}set onopen(t){this.#e.open&&this.removeEventListener("open",this.#e.open),typeof t=="function"?(this.#e.open=t,this.addEventListener("open",t)):this.#e.open=null}get onmessage(){return this.#e.message}set onmessage(t){this.#e.message&&this.removeEventListener("message",this.#e.message),typeof t=="function"?(this.#e.message=t,this.addEventListener("message",t)):this.#e.message=null}get onerror(){return this.#e.error}set onerror(t){this.#e.error&&this.removeEventListener("error",this.#e.error),typeof t=="function"?(this.#e.error=t,this.addEventListener("error",t)):this.#e.error=null}},YVn={CONNECTING:{__proto__:null,configurable:!1,enumerable:!0,value:cOe,writable:!1},OPEN:{__proto__:null,configurable:!1,enumerable:!0,value:HVn,writable:!1},CLOSED:{__proto__:null,configurable:!1,enumerable:!0,value:lOe,writable:!1}};Object.defineProperties(U2e,YVn);Object.defineProperties(U2e.prototype,YVn);Object.defineProperties(U2e.prototype,{close:npe,onerror:npe,onmessage:npe,onopen:npe,readyState:npe,url:npe,withCredentials:npe});xie.converters.EventSourceInitDict=xie.dictionaryConverter([{key:"withCredentials",converter:xie.converters.boolean,defaultValue:()=>!1},{key:"dispatcher",converter:xie.converters.any}]);XVn.exports={EventSource:U2e,defaultReconnectionTime:MVn}});var zVn=z((W7c,bf)=>{"use strict";var rTo=kPe(),UVn=uPe(),nTo=v2e(),iTo=iFn(),sTo=S2e(),oTo=Utr(),aTo=yFn(),cTo=wFn(),KVn=v0(),FAt=rm(),{InvalidArgumentError:GAt}=KVn,K2e=dZn(),lTo=APe(),uTo=Rrr(),gTo=UZn(),ATo=krr(),dTo=Crr(),pTo=Lgt(),{getGlobalDispatcher:jVn,setGlobalDispatcher:fTo}=Jgt(),ITo=Lrr(),CTo=Sgt(),mTo=wgt();Object.assign(UVn.prototype,K2e);bf.exports.Dispatcher=UVn;bf.exports.Client=rTo;bf.exports.Pool=nTo;bf.exports.BalancedPool=iTo;bf.exports.Agent=sTo;bf.exports.ProxyAgent=oTo;bf.exports.EnvHttpProxyAgent=aTo;bf.exports.RetryAgent=cTo;bf.exports.RetryHandler=pTo;bf.exports.DecoratorHandler=ITo;bf.exports.RedirectHandler=CTo;bf.exports.createRedirectInterceptor=mTo;bf.exports.interceptors={redirect:tLn(),retry:nLn(),dump:sLn()};bf.exports.buildConnector=lTo;bf.exports.errors=KVn;bf.exports.util={parseHeaders:FAt.parseHeaders,headerNameToString:FAt.headerNameToString};function uOe(e){return(t,r,s)=>{if(typeof r=="function"&&(s=r,r=null),!t||typeof t!="string"&&typeof t!="object"&&!(t instanceof URL))throw new GAt("invalid url");if(r!=null&&typeof r!="object")throw new GAt("invalid opts");if(r&&r.path!=null){if(typeof r.path!="string")throw new GAt("invalid opts.path");let g=r.path;r.path.startsWith("/")||(g=`/${g}`),t=new URL(FAt.parseOrigin(t).origin+g)}else r||(r=typeof t=="object"?t:{}),t=FAt.parseURL(t);let{agent:a,dispatcher:o=jVn()}=r;if(a)throw new GAt("unsupported opts.agent. Did you mean opts.client?");return e.call(o,{...r,origin:t.origin,path:t.search?`${t.pathname}${t.search}`:t.pathname,method:r.method||(r.body?"PUT":"GET")},s)}}bf.exports.setGlobalDispatcher=fTo;bf.exports.getGlobalDispatcher=jVn;var hTo=jPe().fetch;bf.exports.fetch=async function(t,r=void 0){try{return await hTo(t,r)}catch(s){throw s&&typeof s=="object"&&Error.captureStackTrace(s),s}};bf.exports.Headers=jde().Headers;bf.exports.Response=UPe().Response;bf.exports.Request=L2e().Request;bf.exports.FormData=hPe().FormData;bf.exports.File=globalThis.File??xt("node:buffer").File;bf.exports.FileReader=h9n().FileReader;var{setGlobalOrigin:_To,getGlobalOrigin:yTo}=Ker();bf.exports.setGlobalOrigin=_To;bf.exports.getGlobalOrigin=yTo;var{CacheStorage:bTo}=T9n(),{kConstruct:ETo}=pAt();bf.exports.caches=new bTo(ETo);var{deleteCookie:BTo,getCookies:vTo,getSetCookies:STo,setCookie:wTo}=P9n();bf.exports.deleteCookie=BTo;bf.exports.getCookies=vTo;bf.exports.getSetCookies=STo;bf.exports.setCookie=wTo;var{parseMIMEType:TTo,serializeAMimeType:NTo}=ML();bf.exports.parseMIMEType=TTo;bf.exports.serializeAMimeType=NTo;var{CloseEvent:RTo,ErrorEvent:DTo,MessageEvent:xTo}=M2e();bf.exports.WebSocket=GVn().WebSocket;bf.exports.CloseEvent=RTo;bf.exports.ErrorEvent=DTo;bf.exports.MessageEvent=xTo;bf.exports.request=uOe(K2e.request);bf.exports.stream=uOe(K2e.stream);bf.exports.pipeline=uOe(K2e.pipeline);bf.exports.connect=uOe(K2e.connect);bf.exports.upgrade=uOe(K2e.upgrade);bf.exports.MockClient=uTo;bf.exports.MockPool=ATo;bf.exports.MockAgent=gTo;bf.exports.mockErrors=dTo;var{EventSource:kTo}=JVn();bf.exports.EventSource=kTo});var eWn=z(vw=>{"use strict";var GTo=vw&&vw.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),FTo=vw&&vw.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),ZTo=vw&&vw.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&>o(t,e,r);return FTo(t,e),t},LTo=vw&&vw.__awaiter||function(e,t,r,s){function a(o){return o instanceof r?o:new r(function(g){g(o)})}return new(r||(r=Promise))(function(o,g){function p(y){try{m(s.next(y))}catch(B){g(B)}}function f(y){try{m(s.throw(y))}catch(B){g(B)}}function m(y){y.done?o(y.value):a(y.value).then(p,f)}m((s=s.apply(e,t||[])).next())})};Object.defineProperty(vw,"__esModule",{value:!0});vw.getApiBaseUrl=vw.getProxyFetch=vw.getProxyAgentDispatcher=vw.getProxyAgent=vw.getAuthString=void 0;var qVn=ZTo(dxn()),VTo=zVn();function WTo(e,t){if(!e&&!t.auth)throw new Error("Parameter token or opts.auth is required");if(e&&t.auth)throw new Error("Parameters token and opts.auth may not both be specified");return typeof t.auth=="string"?t.auth:`token ${e}`}vw.getAuthString=WTo;function PTo(e){return new qVn.HttpClient().getAgent(e)}vw.getProxyAgent=PTo;function $Vn(e){return new qVn.HttpClient().getAgentDispatcher(e)}vw.getProxyAgentDispatcher=$Vn;function OTo(e){let t=$Vn(e);return(s,a)=>LTo(this,void 0,void 0,function*(){return(0,VTo.fetch)(s,Object.assign(Object.assign({},a),{dispatcher:t}))})}vw.getProxyFetch=OTo;function QTo(){return process.env.GITHUB_API_URL||"https://api.github.com"}vw.getApiBaseUrl=QTo});var gOe=z(Bnr=>{"use strict";Object.defineProperty(Bnr,"__esModule",{value:!0});function MTo(){return typeof navigator=="object"&&"userAgent"in navigator?navigator.userAgent:typeof process=="object"&&process.version!==void 0?`Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`:""}Bnr.getUserAgent=MTo});var nWn=z((Q7c,rWn)=>{rWn.exports=tWn;function tWn(e,t,r,s){if(typeof r!="function")throw new Error("method for before hook must be a function");return s||(s={}),Array.isArray(t)?t.reverse().reduce(function(a,o){return tWn.bind(null,e,o,a,s)},r)():Promise.resolve().then(function(){return e.registry[t]?e.registry[t].reduce(function(a,o){return o.hook.bind(null,a,s)},r)():r(s)})}});var sWn=z((M7c,iWn)=>{iWn.exports=HTo;function HTo(e,t,r,s){var a=s;e.registry[r]||(e.registry[r]=[]),t==="before"&&(s=function(o,g){return Promise.resolve().then(a.bind(null,g)).then(o.bind(null,g))}),t==="after"&&(s=function(o,g){var p;return Promise.resolve().then(o.bind(null,g)).then(function(f){return p=f,a(p,g)}).then(function(){return p})}),t==="error"&&(s=function(o,g){return Promise.resolve().then(o.bind(null,g)).catch(function(p){return a(p,g)})}),e.registry[r].push({hook:s,orig:a})}});var aWn=z((H7c,oWn)=>{oWn.exports=YTo;function YTo(e,t,r){if(e.registry[t]){var s=e.registry[t].map(function(a){return a.orig}).indexOf(r);s!==-1&&e.registry[t].splice(s,1)}}});var pWn=z((Y7c,AOe)=>{var gWn=nWn(),XTo=sWn(),JTo=aWn(),cWn=Function.bind,lWn=cWn.bind(cWn);function AWn(e,t,r){var s=lWn(JTo,null).apply(null,r?[t,r]:[t]);e.api={remove:s},e.remove=s,["before","error","after","wrap"].forEach(function(a){var o=r?[t,a,r]:[t,a];e[a]=e.api[a]=lWn(XTo,null).apply(null,o)})}function UTo(){var e="h",t={registry:{}},r=gWn.bind(null,t,e);return AWn(r,t,e),r}function dWn(){var e={registry:{}},t=gWn.bind(null,e);return AWn(t,e),t}var uWn=!1;function j2e(){return uWn||(console.warn('[before-after-hook]: "Hook()" repurposing warning, use "Hook.Collection()". Read more: https://git.io/upgrade-before-after-hook-to-1.4'),uWn=!0),dWn()}j2e.Singular=UTo.bind();j2e.Collection=dWn.bind();AOe.exports=j2e;AOe.exports.Hook=j2e;AOe.exports.Singular=j2e.Singular;AOe.exports.Collection=j2e.Collection});var EWn=z((X7c,bWn)=>{"use strict";var wnr=Object.defineProperty,KTo=Object.getOwnPropertyDescriptor,jTo=Object.getOwnPropertyNames,zTo=Object.prototype.hasOwnProperty,qTo=(e,t)=>{for(var r in t)wnr(e,r,{get:t[r],enumerable:!0})},$To=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of jTo(t))!zTo.call(e,a)&&a!==r&&wnr(e,a,{get:()=>t[a],enumerable:!(s=KTo(t,a))||s.enumerable});return e},eNo=e=>$To(wnr({},"__esModule",{value:!0}),e),CWn={};qTo(CWn,{endpoint:()=>fNo});bWn.exports=eNo(CWn);var tNo=gOe(),rNo="9.0.5",nNo=`octokit-endpoint.js/${rNo} ${(0,tNo.getUserAgent)()}`,iNo={method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":nNo},mediaType:{format:""}};function sNo(e){return e?Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{}):{}}function oNo(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}function mWn(e,t){let r=Object.assign({},e);return Object.keys(t).forEach(s=>{oNo(t[s])?s in e?r[s]=mWn(e[s],t[s]):Object.assign(r,{[s]:t[s]}):Object.assign(r,{[s]:t[s]})}),r}function fWn(e){for(let t in e)e[t]===void 0&&delete e[t];return e}function Snr(e,t,r){if(typeof t=="string"){let[a,o]=t.split(" ");r=Object.assign(o?{method:a,url:o}:{url:a},r)}else r=Object.assign({},t);r.headers=sNo(r.headers),fWn(r),fWn(r.headers);let s=mWn(e||{},r);return r.url==="/graphql"&&(e&&e.mediaType.previews?.length&&(s.mediaType.previews=e.mediaType.previews.filter(a=>!s.mediaType.previews.includes(a)).concat(s.mediaType.previews)),s.mediaType.previews=(s.mediaType.previews||[]).map(a=>a.replace(/-preview/,""))),s}function aNo(e,t){let r=/\?/.test(e)?"&":"?",s=Object.keys(t);return s.length===0?e:e+r+s.map(a=>a==="q"?"q="+t.q.split("+").map(encodeURIComponent).join("+"):`${a}=${encodeURIComponent(t[a])}`).join("&")}var cNo=/\{[^}]+\}/g;function lNo(e){return e.replace(/^\W+|\W+$/g,"").split(/,/)}function uNo(e){let t=e.match(cNo);return t?t.map(lNo).reduce((r,s)=>r.concat(s),[]):[]}function IWn(e,t){let r={__proto__:null};for(let s of Object.keys(e))t.indexOf(s)===-1&&(r[s]=e[s]);return r}function hWn(e){return e.split(/(%[0-9A-Fa-f]{2})/g).map(function(t){return/%[0-9A-Fa-f]/.test(t)||(t=encodeURI(t).replace(/%5B/g,"[").replace(/%5D/g,"]")),t}).join("")}function q2e(e){return encodeURIComponent(e).replace(/[!'()*]/g,function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()})}function dOe(e,t,r){return t=e==="+"||e==="#"?hWn(t):q2e(t),r?q2e(r)+"="+t:t}function z2e(e){return e!=null}function vnr(e){return e===";"||e==="&"||e==="?"}function gNo(e,t,r,s){var a=e[r],o=[];if(z2e(a)&&a!=="")if(typeof a=="string"||typeof a=="number"||typeof a=="boolean")a=a.toString(),s&&s!=="*"&&(a=a.substring(0,parseInt(s,10))),o.push(dOe(t,a,vnr(t)?r:""));else if(s==="*")Array.isArray(a)?a.filter(z2e).forEach(function(g){o.push(dOe(t,g,vnr(t)?r:""))}):Object.keys(a).forEach(function(g){z2e(a[g])&&o.push(dOe(t,a[g],g))});else{let g=[];Array.isArray(a)?a.filter(z2e).forEach(function(p){g.push(dOe(t,p))}):Object.keys(a).forEach(function(p){z2e(a[p])&&(g.push(q2e(p)),g.push(dOe(t,a[p].toString())))}),vnr(t)?o.push(q2e(r)+"="+g.join(",")):g.length!==0&&o.push(g.join(","))}else t===";"?z2e(a)&&o.push(q2e(r)):a===""&&(t==="&"||t==="?")?o.push(q2e(r)+"="):a===""&&o.push("");return o}function ANo(e){return{expand:dNo.bind(null,e)}}function dNo(e,t){var r=["+","#",".","/",";","?","&"];return e=e.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g,function(s,a,o){if(a){let p="",f=[];if(r.indexOf(a.charAt(0))!==-1&&(p=a.charAt(0),a=a.substr(1)),a.split(/,/g).forEach(function(m){var y=/([^:\*]*)(?::(\d+)|(\*))?/.exec(m);f.push(gNo(t,p,y[1],y[2]||y[3]))}),p&&p!=="+"){var g=",";return p==="?"?g="&":p!=="#"&&(g=p),(f.length!==0?p:"")+f.join(g)}else return f.join(",")}else return hWn(o)}),e==="/"?e:e.replace(/\/$/,"")}function _Wn(e){let t=e.method.toUpperCase(),r=(e.url||"/").replace(/:([a-z]\w+)/g,"{$1}"),s=Object.assign({},e.headers),a,o=IWn(e,["method","baseUrl","url","headers","request","mediaType"]),g=uNo(r);r=ANo(r).expand(o),/^http/.test(r)||(r=e.baseUrl+r);let p=Object.keys(e).filter(y=>g.includes(y)).concat("baseUrl"),f=IWn(o,p);if(!/application\/octet-stream/i.test(s.accept)&&(e.mediaType.format&&(s.accept=s.accept.split(/,/).map(y=>y.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/,`application/vnd$1$2.${e.mediaType.format}`)).join(",")),r.endsWith("/graphql")&&e.mediaType.previews?.length)){let y=s.accept.match(/[\w-]+(?=-preview)/g)||[];s.accept=y.concat(e.mediaType.previews).map(B=>{let v=e.mediaType.format?`.${e.mediaType.format}`:"+json";return`application/vnd.github.${B}-preview${v}`}).join(",")}return["GET","HEAD"].includes(t)?r=aNo(r,f):"data"in f?a=f.data:Object.keys(f).length&&(a=f),!s["content-type"]&&typeof a<"u"&&(s["content-type"]="application/json; charset=utf-8"),["PATCH","PUT"].includes(t)&&typeof a>"u"&&(a=""),Object.assign({method:t,url:r,headers:s},typeof a<"u"?{body:a}:null,e.request?{request:e.request}:null)}function pNo(e,t,r){return _Wn(Snr(e,t,r))}function yWn(e,t){let r=Snr(e,t),s=pNo.bind(null,r);return Object.assign(s,{DEFAULTS:r,defaults:yWn.bind(null,r),merge:Snr.bind(null,r),parse:_Wn})}var fNo=yWn(null,iNo)});var BWn=z(Nnr=>{"use strict";Object.defineProperty(Nnr,"__esModule",{value:!0});var Tnr=class extends Error{constructor(t){super(t),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor),this.name="Deprecation"}};Nnr.Deprecation=Tnr});var RWn=z((U7c,NWn)=>{"use strict";var INo=Object.create,ZAt=Object.defineProperty,CNo=Object.getOwnPropertyDescriptor,mNo=Object.getOwnPropertyNames,hNo=Object.getPrototypeOf,_No=Object.prototype.hasOwnProperty,yNo=(e,t)=>{for(var r in t)ZAt(e,r,{get:t[r],enumerable:!0})},SWn=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of mNo(t))!_No.call(e,a)&&a!==r&&ZAt(e,a,{get:()=>t[a],enumerable:!(s=CNo(t,a))||s.enumerable});return e},bNo=(e,t,r)=>(r=e!=null?INo(hNo(e)):{},SWn(t||!e||!e.__esModule?ZAt(r,"default",{value:e,enumerable:!0}):r,e)),ENo=e=>SWn(ZAt({},"__esModule",{value:!0}),e),wWn={};yNo(wWn,{RequestError:()=>SNo});NWn.exports=ENo(wWn);var vWn=BWn(),TWn=bNo(cit()),BNo=(0,TWn.default)(e=>console.warn(e)),vNo=(0,TWn.default)(e=>console.warn(e)),SNo=class extends Error{constructor(e,t,r){super(e),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor),this.name="HttpError",this.status=t;let s;"headers"in r&&typeof r.headers<"u"&&(s=r.headers),"response"in r&&(this.response=r.response,s=r.response.headers);let a=Object.assign({},r.request);r.request.headers.authorization&&(a.headers=Object.assign({},r.request.headers,{authorization:r.request.headers.authorization.replace(/ .*$/," [REDACTED]")})),a.url=a.url.replace(/\bclient_secret=\w+/g,"client_secret=[REDACTED]").replace(/\baccess_token=\w+/g,"access_token=[REDACTED]"),this.request=a,Object.defineProperty(this,"code",{get(){return BNo(new vWn.Deprecation("[@octokit/request-error] `error.code` is deprecated, use `error.status`.")),t}}),Object.defineProperty(this,"headers",{get(){return vNo(new vWn.Deprecation("[@octokit/request-error] `error.headers` is deprecated, use `error.response.headers`.")),s||{}}})}}});var fOe=z((j7c,kWn)=>{"use strict";var xnr=Object.defineProperty,wNo=Object.getOwnPropertyDescriptor,TNo=Object.getOwnPropertyNames,NNo=Object.prototype.hasOwnProperty,RNo=(e,t)=>{for(var r in t)xnr(e,r,{get:t[r],enumerable:!0})},DNo=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of TNo(t))!NNo.call(e,a)&&a!==r&&xnr(e,a,{get:()=>t[a],enumerable:!(s=wNo(t,a))||s.enumerable});return e},xNo=e=>DNo(xnr({},"__esModule",{value:!0}),e),xWn={};RNo(xWn,{request:()=>WNo});kWn.exports=xNo(xWn);var kNo=EWn(),GNo=gOe(),FNo="8.4.0";function ZNo(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}var pOe=RWn();function LNo(e){return e.arrayBuffer()}function DWn(e){var t,r,s,a;let o=e.request&&e.request.log?e.request.log:console,g=((t=e.request)==null?void 0:t.parseSuccessResponseBody)!==!1;(ZNo(e.body)||Array.isArray(e.body))&&(e.body=JSON.stringify(e.body));let p={},f,m,{fetch:y}=globalThis;if((r=e.request)!=null&&r.fetch&&(y=e.request.fetch),!y)throw new Error("fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing");return y(e.url,{method:e.method,body:e.body,redirect:(s=e.request)==null?void 0:s.redirect,headers:e.headers,signal:(a=e.request)==null?void 0:a.signal,...e.body&&{duplex:"half"}}).then(async B=>{m=B.url,f=B.status;for(let v of B.headers)p[v[0]]=v[1];if("deprecation"in p){let v=p.link&&p.link.match(/<([^>]+)>; rel="deprecation"/),k=v&&v.pop();o.warn(`[@octokit/request] "${e.method} ${e.url}" is deprecated. It is scheduled to be removed on ${p.sunset}${k?`. See ${k}`:""}`)}if(!(f===204||f===205)){if(e.method==="HEAD"){if(f<400)return;throw new pOe.RequestError(B.statusText,f,{response:{url:m,status:f,headers:p,data:void 0},request:e})}if(f===304)throw new pOe.RequestError("Not modified",f,{response:{url:m,status:f,headers:p,data:await Rnr(B)},request:e});if(f>=400){let v=await Rnr(B);throw new pOe.RequestError(VNo(v),f,{response:{url:m,status:f,headers:p,data:v},request:e})}return g?await Rnr(B):B.body}}).then(B=>({status:f,url:m,headers:p,data:B})).catch(B=>{if(B instanceof pOe.RequestError)throw B;if(B.name==="AbortError")throw B;let v=B.message;throw B.name==="TypeError"&&"cause"in B&&(B.cause instanceof Error?v=B.cause.message:typeof B.cause=="string"&&(v=B.cause)),new pOe.RequestError(v,500,{request:e})})}async function Rnr(e){let t=e.headers.get("content-type");return/application\/json/.test(t)?e.json().catch(()=>e.text()).catch(()=>""):!t||/^text\/|charset=utf-8$/.test(t)?e.text():LNo(e)}function VNo(e){if(typeof e=="string")return e;let t;return"documentation_url"in e?t=` - ${e.documentation_url}`:t="","message"in e?Array.isArray(e.errors)?`${e.message}: ${e.errors.map(JSON.stringify).join(", ")}${t}`:`${e.message}${t}`:`Unknown error: ${JSON.stringify(e)}`}function Dnr(e,t){let r=e.defaults(t);return Object.assign(function(a,o){let g=r.merge(a,o);if(!g.request||!g.request.hook)return DWn(r.parse(g));let p=(f,m)=>DWn(r.parse(r.merge(f,m)));return Object.assign(p,{endpoint:r,defaults:Dnr.bind(null,r)}),g.request.hook(p,g)},{endpoint:r,defaults:Dnr.bind(null,r)})}var WNo=Dnr(kNo.endpoint,{headers:{"user-agent":`octokit-request.js/${FNo} ${(0,GNo.getUserAgent)()}`}})});var VWn=z(($7c,LWn)=>{"use strict";var knr=Object.defineProperty,PNo=Object.getOwnPropertyDescriptor,ONo=Object.getOwnPropertyNames,QNo=Object.prototype.hasOwnProperty,MNo=(e,t)=>{for(var r in t)knr(e,r,{get:t[r],enumerable:!0})},HNo=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of ONo(t))!QNo.call(e,a)&&a!==r&&knr(e,a,{get:()=>t[a],enumerable:!(s=PNo(t,a))||s.enumerable});return e},YNo=e=>HNo(knr({},"__esModule",{value:!0}),e),FWn={};MNo(FWn,{GraphqlResponseError:()=>ZWn,graphql:()=>$No,withCustomRequest:()=>eRo});LWn.exports=YNo(FWn);var XNo=fOe(),JNo=gOe(),UNo="7.1.0",z7c=fOe(),q7c=fOe();function KNo(e){return`Request failed due to following response errors: `+e.errors.map(t=>` - ${t.message}`).join(` -`)}var wWn=class extends Error{constructor(e,t,r){super(ZNo(r)),this.request=e,this.headers=t,this.response=r,this.name="GraphqlResponseError",this.errors=r.errors,this.data=r.data,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},LNo=["method","baseUrl","url","headers","request","query","mediaType"],VNo=["query","method","url"],vWn=/\/api\/v3\/?$/;function WNo(e,t,r){if(r){if(typeof t=="string"&&"query"in r)return Promise.reject(new Error('[@octokit/graphql] "query" cannot be used as variable name'));for(let g in r)if(VNo.includes(g))return Promise.reject(new Error(`[@octokit/graphql] "${g}" cannot be used as variable name`))}let s=typeof t=="string"?Object.assign({query:t},r):t,a=Object.keys(s).reduce((g,p)=>LNo.includes(p)?(g[p]=s[p],g):(g.variables||(g.variables={}),g.variables[p]=s[p],g),{}),o=s.baseUrl||e.endpoint.DEFAULTS.baseUrl;return vWn.test(o)&&(a.url=o.replace(vWn,"/api/graphql")),e(a).then(g=>{if(g.data.errors){let p={};for(let f of Object.keys(g.headers))p[f]=g.headers[f];throw new wWn(a,p,g.data)}return g.data.data})}function Dnr(e,t){let r=e.defaults(t);return Object.assign((a,o)=>WNo(r,a,o),{defaults:Dnr.bind(null,r),endpoint:r.endpoint})}var PNo=Dnr(kNo.request,{headers:{"user-agent":`octokit-graphql.js/${FNo} ${(0,GNo.getUserAgent)()}`},method:"POST",url:"/graphql"});function ONo(e){return Dnr(e,{method:"POST",url:"/graphql"})}});var xWn=z((L7c,DWn)=>{"use strict";var xnr=Object.defineProperty,MNo=Object.getOwnPropertyDescriptor,QNo=Object.getOwnPropertyNames,YNo=Object.prototype.hasOwnProperty,HNo=(e,t)=>{for(var r in t)xnr(e,r,{get:t[r],enumerable:!0})},XNo=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of QNo(t))!YNo.call(e,a)&&a!==r&&xnr(e,a,{get:()=>t[a],enumerable:!(s=MNo(t,a))||s.enumerable});return e},JNo=e=>XNo(xnr({},"__esModule",{value:!0}),e),RWn={};HNo(RWn,{createTokenAuth:()=>eRo});DWn.exports=JNo(RWn);var UNo=/^v1\./,KNo=/^ghs_/,jNo=/^ghu_/;async function zNo(e){let t=e.split(/\./).length===3,r=UNo.test(e)||KNo.test(e),s=jNo.test(e);return{type:"token",token:e,tokenType:t?"app":r?"installation":s?"user-to-server":"oauth"}}function qNo(e){return e.split(/\./).length===3?`bearer ${e}`:`token ${e}`}async function $No(e,t,r,s){let a=t.endpoint.merge(r,s);return a.headers.authorization=qNo(e),t(a)}var eRo=function(t){if(!t)throw new Error("[@octokit/auth-token] No token passed to createTokenAuth");if(typeof t!="string")throw new Error("[@octokit/auth-token] Token passed to createTokenAuth is not a string");return t=t.replace(/^(token|bearer) +/i,""),Object.assign(zNo.bind(null,t),{hook:$No.bind(null,t)})}});var WWn=z((V7c,VWn)=>{"use strict";var knr=Object.defineProperty,tRo=Object.getOwnPropertyDescriptor,rRo=Object.getOwnPropertyNames,nRo=Object.prototype.hasOwnProperty,iRo=(e,t)=>{for(var r in t)knr(e,r,{get:t[r],enumerable:!0})},sRo=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of rRo(t))!nRo.call(e,a)&&a!==r&&knr(e,a,{get:()=>t[a],enumerable:!(s=tRo(t,a))||s.enumerable});return e},oRo=e=>sRo(knr({},"__esModule",{value:!0}),e),ZWn={};iRo(ZWn,{Octokit:()=>dRo});VWn.exports=oRo(ZWn);var aRo=cOe(),cRo=sWn(),kWn=AOe(),lRo=NWn(),uRo=xWn(),LWn="5.2.0",GWn=()=>{},gRo=console.warn.bind(console),ARo=console.error.bind(console),FWn=`octokit-core.js/${LWn} ${(0,aRo.getUserAgent)()}`,dRo=class{static{this.VERSION=LWn}static defaults(e){return class extends this{constructor(...r){let s=r[0]||{};if(typeof e=="function"){super(e(s));return}super(Object.assign({},e,s,s.userAgent&&e.userAgent?{userAgent:`${s.userAgent} ${e.userAgent}`}:null))}}}static{this.plugins=[]}static plugin(...e){let t=this.plugins;return class extends this{static{this.plugins=t.concat(e.filter(s=>!t.includes(s)))}}}constructor(e={}){let t=new cRo.Collection,r={baseUrl:kWn.request.endpoint.DEFAULTS.baseUrl,headers:{},request:Object.assign({},e.request,{hook:t.bind(null,"request")}),mediaType:{previews:[],format:""}};if(r.headers["user-agent"]=e.userAgent?`${e.userAgent} ${FWn}`:FWn,e.baseUrl&&(r.baseUrl=e.baseUrl),e.previews&&(r.mediaType.previews=e.previews),e.timeZone&&(r.headers["time-zone"]=e.timeZone),this.request=kWn.request.defaults(r),this.graphql=(0,lRo.withCustomRequest)(this.request).defaults(r),this.log=Object.assign({debug:GWn,info:GWn,warn:gRo,error:ARo},e.log),this.hook=t,e.authStrategy){let{authStrategy:a,...o}=e,g=a(Object.assign({request:this.request,log:this.log,octokit:this,octokitOptions:o},e.auth));t.wrap("request",g.hook),this.auth=g}else if(!e.auth)this.auth=async()=>({type:"unauthenticated"});else{let a=(0,uRo.createTokenAuth)(e.auth);t.wrap("request",a.hook),this.auth=a}let s=this.constructor;for(let a=0;a{"use strict";var Gnr=Object.defineProperty,pRo=Object.getOwnPropertyDescriptor,fRo=Object.getOwnPropertyNames,IRo=Object.prototype.hasOwnProperty,CRo=(e,t)=>{for(var r in t)Gnr(e,r,{get:t[r],enumerable:!0})},mRo=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of fRo(t))!IRo.call(e,a)&&a!==r&&Gnr(e,a,{get:()=>t[a],enumerable:!(s=pRo(t,a))||s.enumerable});return e},hRo=e=>mRo(Gnr({},"__esModule",{value:!0}),e),PWn={};CRo(PWn,{legacyRestEndpointMethods:()=>YWn,restEndpointMethods:()=>QWn});HWn.exports=hRo(PWn);var OWn="10.4.1",_Ro={actions:{addCustomLabelsToSelfHostedRunnerForOrg:["POST /orgs/{org}/actions/runners/{runner_id}/labels"],addCustomLabelsToSelfHostedRunnerForRepo:["POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],approveWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve"],cancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel"],createEnvironmentVariable:["POST /repositories/{repository_id}/environments/{environment_name}/variables"],createOrUpdateEnvironmentSecret:["PUT /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}"],createOrgVariable:["POST /orgs/{org}/actions/variables"],createRegistrationTokenForOrg:["POST /orgs/{org}/actions/runners/registration-token"],createRegistrationTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/registration-token"],createRemoveTokenForOrg:["POST /orgs/{org}/actions/runners/remove-token"],createRemoveTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/remove-token"],createRepoVariable:["POST /repos/{owner}/{repo}/actions/variables"],createWorkflowDispatch:["POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches"],deleteActionsCacheById:["DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}"],deleteActionsCacheByKey:["DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}"],deleteArtifact:["DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],deleteEnvironmentSecret:["DELETE /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],deleteEnvironmentVariable:["DELETE /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],deleteOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}"],deleteOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}"],deleteRepoVariable:["DELETE /repos/{owner}/{repo}/actions/variables/{name}"],deleteSelfHostedRunnerFromOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}"],deleteSelfHostedRunnerFromRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}"],deleteWorkflowRun:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}"],deleteWorkflowRunLogs:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],disableSelectedRepositoryGithubActionsOrganization:["DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}"],disableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable"],downloadArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}"],downloadJobLogsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs"],downloadWorkflowRunAttemptLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs"],downloadWorkflowRunLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],enableSelectedRepositoryGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories/{repository_id}"],enableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable"],forceCancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/force-cancel"],generateRunnerJitconfigForOrg:["POST /orgs/{org}/actions/runners/generate-jitconfig"],generateRunnerJitconfigForRepo:["POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig"],getActionsCacheList:["GET /repos/{owner}/{repo}/actions/caches"],getActionsCacheUsage:["GET /repos/{owner}/{repo}/actions/cache/usage"],getActionsCacheUsageByRepoForOrg:["GET /orgs/{org}/actions/cache/usage-by-repository"],getActionsCacheUsageForOrg:["GET /orgs/{org}/actions/cache/usage"],getAllowedActionsOrganization:["GET /orgs/{org}/actions/permissions/selected-actions"],getAllowedActionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/selected-actions"],getArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],getCustomOidcSubClaimForRepo:["GET /repos/{owner}/{repo}/actions/oidc/customization/sub"],getEnvironmentPublicKey:["GET /repositories/{repository_id}/environments/{environment_name}/secrets/public-key"],getEnvironmentSecret:["GET /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],getEnvironmentVariable:["GET /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],getGithubActionsDefaultWorkflowPermissionsOrganization:["GET /orgs/{org}/actions/permissions/workflow"],getGithubActionsDefaultWorkflowPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/workflow"],getGithubActionsPermissionsOrganization:["GET /orgs/{org}/actions/permissions"],getGithubActionsPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions"],getJobForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}"],getOrgPublicKey:["GET /orgs/{org}/actions/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}"],getOrgVariable:["GET /orgs/{org}/actions/variables/{name}"],getPendingDeploymentsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],getRepoPermissions:["GET /repos/{owner}/{repo}/actions/permissions",{},{renamed:["actions","getGithubActionsPermissionsRepository"]}],getRepoPublicKey:["GET /repos/{owner}/{repo}/actions/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/actions/secrets/{secret_name}"],getRepoVariable:["GET /repos/{owner}/{repo}/actions/variables/{name}"],getReviewsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals"],getSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}"],getSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}"],getWorkflow:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}"],getWorkflowAccessToRepository:["GET /repos/{owner}/{repo}/actions/permissions/access"],getWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}"],getWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}"],getWorkflowRunUsage:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing"],getWorkflowUsage:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing"],listArtifactsForRepo:["GET /repos/{owner}/{repo}/actions/artifacts"],listEnvironmentSecrets:["GET /repositories/{repository_id}/environments/{environment_name}/secrets"],listEnvironmentVariables:["GET /repositories/{repository_id}/environments/{environment_name}/variables"],listJobsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs"],listJobsForWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs"],listLabelsForSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}/labels"],listLabelsForSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],listOrgSecrets:["GET /orgs/{org}/actions/secrets"],listOrgVariables:["GET /orgs/{org}/actions/variables"],listRepoOrganizationSecrets:["GET /repos/{owner}/{repo}/actions/organization-secrets"],listRepoOrganizationVariables:["GET /repos/{owner}/{repo}/actions/organization-variables"],listRepoSecrets:["GET /repos/{owner}/{repo}/actions/secrets"],listRepoVariables:["GET /repos/{owner}/{repo}/actions/variables"],listRepoWorkflows:["GET /repos/{owner}/{repo}/actions/workflows"],listRunnerApplicationsForOrg:["GET /orgs/{org}/actions/runners/downloads"],listRunnerApplicationsForRepo:["GET /repos/{owner}/{repo}/actions/runners/downloads"],listSelectedReposForOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}/repositories"],listSelectedReposForOrgVariable:["GET /orgs/{org}/actions/variables/{name}/repositories"],listSelectedRepositoriesEnabledGithubActionsOrganization:["GET /orgs/{org}/actions/permissions/repositories"],listSelfHostedRunnersForOrg:["GET /orgs/{org}/actions/runners"],listSelfHostedRunnersForRepo:["GET /repos/{owner}/{repo}/actions/runners"],listWorkflowRunArtifacts:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts"],listWorkflowRuns:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs"],listWorkflowRunsForRepo:["GET /repos/{owner}/{repo}/actions/runs"],reRunJobForWorkflowRun:["POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun"],reRunWorkflow:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun"],reRunWorkflowFailedJobs:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs"],removeAllCustomLabelsFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels"],removeAllCustomLabelsFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],removeCustomLabelFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}"],removeCustomLabelFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],reviewCustomGatesForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule"],reviewPendingDeploymentsForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],setAllowedActionsOrganization:["PUT /orgs/{org}/actions/permissions/selected-actions"],setAllowedActionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/selected-actions"],setCustomLabelsForSelfHostedRunnerForOrg:["PUT /orgs/{org}/actions/runners/{runner_id}/labels"],setCustomLabelsForSelfHostedRunnerForRepo:["PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],setCustomOidcSubClaimForRepo:["PUT /repos/{owner}/{repo}/actions/oidc/customization/sub"],setGithubActionsDefaultWorkflowPermissionsOrganization:["PUT /orgs/{org}/actions/permissions/workflow"],setGithubActionsDefaultWorkflowPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/workflow"],setGithubActionsPermissionsOrganization:["PUT /orgs/{org}/actions/permissions"],setGithubActionsPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories"],setSelectedReposForOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories"],setSelectedRepositoriesEnabledGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories"],setWorkflowAccessToRepository:["PUT /repos/{owner}/{repo}/actions/permissions/access"],updateEnvironmentVariable:["PATCH /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],updateOrgVariable:["PATCH /orgs/{org}/actions/variables/{name}"],updateRepoVariable:["PATCH /repos/{owner}/{repo}/actions/variables/{name}"]},activity:{checkRepoIsStarredByAuthenticatedUser:["GET /user/starred/{owner}/{repo}"],deleteRepoSubscription:["DELETE /repos/{owner}/{repo}/subscription"],deleteThreadSubscription:["DELETE /notifications/threads/{thread_id}/subscription"],getFeeds:["GET /feeds"],getRepoSubscription:["GET /repos/{owner}/{repo}/subscription"],getThread:["GET /notifications/threads/{thread_id}"],getThreadSubscriptionForAuthenticatedUser:["GET /notifications/threads/{thread_id}/subscription"],listEventsForAuthenticatedUser:["GET /users/{username}/events"],listNotificationsForAuthenticatedUser:["GET /notifications"],listOrgEventsForAuthenticatedUser:["GET /users/{username}/events/orgs/{org}"],listPublicEvents:["GET /events"],listPublicEventsForRepoNetwork:["GET /networks/{owner}/{repo}/events"],listPublicEventsForUser:["GET /users/{username}/events/public"],listPublicOrgEvents:["GET /orgs/{org}/events"],listReceivedEventsForUser:["GET /users/{username}/received_events"],listReceivedPublicEventsForUser:["GET /users/{username}/received_events/public"],listRepoEvents:["GET /repos/{owner}/{repo}/events"],listRepoNotificationsForAuthenticatedUser:["GET /repos/{owner}/{repo}/notifications"],listReposStarredByAuthenticatedUser:["GET /user/starred"],listReposStarredByUser:["GET /users/{username}/starred"],listReposWatchedByUser:["GET /users/{username}/subscriptions"],listStargazersForRepo:["GET /repos/{owner}/{repo}/stargazers"],listWatchedReposForAuthenticatedUser:["GET /user/subscriptions"],listWatchersForRepo:["GET /repos/{owner}/{repo}/subscribers"],markNotificationsAsRead:["PUT /notifications"],markRepoNotificationsAsRead:["PUT /repos/{owner}/{repo}/notifications"],markThreadAsDone:["DELETE /notifications/threads/{thread_id}"],markThreadAsRead:["PATCH /notifications/threads/{thread_id}"],setRepoSubscription:["PUT /repos/{owner}/{repo}/subscription"],setThreadSubscription:["PUT /notifications/threads/{thread_id}/subscription"],starRepoForAuthenticatedUser:["PUT /user/starred/{owner}/{repo}"],unstarRepoForAuthenticatedUser:["DELETE /user/starred/{owner}/{repo}"]},apps:{addRepoToInstallation:["PUT /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","addRepoToInstallationForAuthenticatedUser"]}],addRepoToInstallationForAuthenticatedUser:["PUT /user/installations/{installation_id}/repositories/{repository_id}"],checkToken:["POST /applications/{client_id}/token"],createFromManifest:["POST /app-manifests/{code}/conversions"],createInstallationAccessToken:["POST /app/installations/{installation_id}/access_tokens"],deleteAuthorization:["DELETE /applications/{client_id}/grant"],deleteInstallation:["DELETE /app/installations/{installation_id}"],deleteToken:["DELETE /applications/{client_id}/token"],getAuthenticated:["GET /app"],getBySlug:["GET /apps/{app_slug}"],getInstallation:["GET /app/installations/{installation_id}"],getOrgInstallation:["GET /orgs/{org}/installation"],getRepoInstallation:["GET /repos/{owner}/{repo}/installation"],getSubscriptionPlanForAccount:["GET /marketplace_listing/accounts/{account_id}"],getSubscriptionPlanForAccountStubbed:["GET /marketplace_listing/stubbed/accounts/{account_id}"],getUserInstallation:["GET /users/{username}/installation"],getWebhookConfigForApp:["GET /app/hook/config"],getWebhookDelivery:["GET /app/hook/deliveries/{delivery_id}"],listAccountsForPlan:["GET /marketplace_listing/plans/{plan_id}/accounts"],listAccountsForPlanStubbed:["GET /marketplace_listing/stubbed/plans/{plan_id}/accounts"],listInstallationReposForAuthenticatedUser:["GET /user/installations/{installation_id}/repositories"],listInstallationRequestsForAuthenticatedApp:["GET /app/installation-requests"],listInstallations:["GET /app/installations"],listInstallationsForAuthenticatedUser:["GET /user/installations"],listPlans:["GET /marketplace_listing/plans"],listPlansStubbed:["GET /marketplace_listing/stubbed/plans"],listReposAccessibleToInstallation:["GET /installation/repositories"],listSubscriptionsForAuthenticatedUser:["GET /user/marketplace_purchases"],listSubscriptionsForAuthenticatedUserStubbed:["GET /user/marketplace_purchases/stubbed"],listWebhookDeliveries:["GET /app/hook/deliveries"],redeliverWebhookDelivery:["POST /app/hook/deliveries/{delivery_id}/attempts"],removeRepoFromInstallation:["DELETE /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","removeRepoFromInstallationForAuthenticatedUser"]}],removeRepoFromInstallationForAuthenticatedUser:["DELETE /user/installations/{installation_id}/repositories/{repository_id}"],resetToken:["PATCH /applications/{client_id}/token"],revokeInstallationAccessToken:["DELETE /installation/token"],scopeToken:["POST /applications/{client_id}/token/scoped"],suspendInstallation:["PUT /app/installations/{installation_id}/suspended"],unsuspendInstallation:["DELETE /app/installations/{installation_id}/suspended"],updateWebhookConfigForApp:["PATCH /app/hook/config"]},billing:{getGithubActionsBillingOrg:["GET /orgs/{org}/settings/billing/actions"],getGithubActionsBillingUser:["GET /users/{username}/settings/billing/actions"],getGithubPackagesBillingOrg:["GET /orgs/{org}/settings/billing/packages"],getGithubPackagesBillingUser:["GET /users/{username}/settings/billing/packages"],getSharedStorageBillingOrg:["GET /orgs/{org}/settings/billing/shared-storage"],getSharedStorageBillingUser:["GET /users/{username}/settings/billing/shared-storage"]},checks:{create:["POST /repos/{owner}/{repo}/check-runs"],createSuite:["POST /repos/{owner}/{repo}/check-suites"],get:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}"],getSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}"],listAnnotations:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations"],listForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-runs"],listForSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs"],listSuitesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-suites"],rerequestRun:["POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest"],rerequestSuite:["POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest"],setSuitesPreferences:["PATCH /repos/{owner}/{repo}/check-suites/preferences"],update:["PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}"]},codeScanning:{deleteAnalysis:["DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}"],getAlert:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}",{},{renamedParameters:{alert_id:"alert_number"}}],getAnalysis:["GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}"],getCodeqlDatabase:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}"],getDefaultSetup:["GET /repos/{owner}/{repo}/code-scanning/default-setup"],getSarif:["GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}"],listAlertInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances"],listAlertsForOrg:["GET /orgs/{org}/code-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/code-scanning/alerts"],listAlertsInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances",{},{renamed:["codeScanning","listAlertInstances"]}],listCodeqlDatabases:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases"],listRecentAnalyses:["GET /repos/{owner}/{repo}/code-scanning/analyses"],updateAlert:["PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}"],updateDefaultSetup:["PATCH /repos/{owner}/{repo}/code-scanning/default-setup"],uploadSarif:["POST /repos/{owner}/{repo}/code-scanning/sarifs"]},codesOfConduct:{getAllCodesOfConduct:["GET /codes_of_conduct"],getConductCode:["GET /codes_of_conduct/{key}"]},codespaces:{addRepositoryForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],checkPermissionsForDevcontainer:["GET /repos/{owner}/{repo}/codespaces/permissions_check"],codespaceMachinesForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/machines"],createForAuthenticatedUser:["POST /user/codespaces"],createOrUpdateOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],createOrUpdateSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}"],createWithPrForAuthenticatedUser:["POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces"],createWithRepoForAuthenticatedUser:["POST /repos/{owner}/{repo}/codespaces"],deleteForAuthenticatedUser:["DELETE /user/codespaces/{codespace_name}"],deleteFromOrganization:["DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}"],deleteOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],deleteSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}"],exportForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/exports"],getCodespacesForUserInOrg:["GET /orgs/{org}/members/{username}/codespaces"],getExportDetailsForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/exports/{export_id}"],getForAuthenticatedUser:["GET /user/codespaces/{codespace_name}"],getOrgPublicKey:["GET /orgs/{org}/codespaces/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}"],getPublicKeyForAuthenticatedUser:["GET /user/codespaces/secrets/public-key"],getRepoPublicKey:["GET /repos/{owner}/{repo}/codespaces/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],getSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}"],listDevcontainersInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/devcontainers"],listForAuthenticatedUser:["GET /user/codespaces"],listInOrganization:["GET /orgs/{org}/codespaces",{},{renamedParameters:{org_id:"org"}}],listInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces"],listOrgSecrets:["GET /orgs/{org}/codespaces/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/codespaces/secrets"],listRepositoriesForSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}/repositories"],listSecretsForAuthenticatedUser:["GET /user/codespaces/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],preFlightWithRepoForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/new"],publishForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/publish"],removeRepositoryForSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],repoMachinesForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/machines"],setRepositoriesForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],startForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/start"],stopForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/stop"],stopInOrganization:["POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop"],updateForAuthenticatedUser:["PATCH /user/codespaces/{codespace_name}"]},copilot:{addCopilotSeatsForTeams:["POST /orgs/{org}/copilot/billing/selected_teams"],addCopilotSeatsForUsers:["POST /orgs/{org}/copilot/billing/selected_users"],cancelCopilotSeatAssignmentForTeams:["DELETE /orgs/{org}/copilot/billing/selected_teams"],cancelCopilotSeatAssignmentForUsers:["DELETE /orgs/{org}/copilot/billing/selected_users"],getCopilotOrganizationDetails:["GET /orgs/{org}/copilot/billing"],getCopilotSeatDetailsForUser:["GET /orgs/{org}/members/{username}/copilot"],listCopilotSeats:["GET /orgs/{org}/copilot/billing/seats"]},dependabot:{addSelectedRepoToOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],deleteOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],getAlert:["GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"],getOrgPublicKey:["GET /orgs/{org}/dependabot/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}"],getRepoPublicKey:["GET /repos/{owner}/{repo}/dependabot/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/dependabot/alerts"],listAlertsForOrg:["GET /orgs/{org}/dependabot/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/dependabot/alerts"],listOrgSecrets:["GET /orgs/{org}/dependabot/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/dependabot/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],updateAlert:["PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"]},dependencyGraph:{createRepositorySnapshot:["POST /repos/{owner}/{repo}/dependency-graph/snapshots"],diffRange:["GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}"],exportSbom:["GET /repos/{owner}/{repo}/dependency-graph/sbom"]},emojis:{get:["GET /emojis"]},gists:{checkIsStarred:["GET /gists/{gist_id}/star"],create:["POST /gists"],createComment:["POST /gists/{gist_id}/comments"],delete:["DELETE /gists/{gist_id}"],deleteComment:["DELETE /gists/{gist_id}/comments/{comment_id}"],fork:["POST /gists/{gist_id}/forks"],get:["GET /gists/{gist_id}"],getComment:["GET /gists/{gist_id}/comments/{comment_id}"],getRevision:["GET /gists/{gist_id}/{sha}"],list:["GET /gists"],listComments:["GET /gists/{gist_id}/comments"],listCommits:["GET /gists/{gist_id}/commits"],listForUser:["GET /users/{username}/gists"],listForks:["GET /gists/{gist_id}/forks"],listPublic:["GET /gists/public"],listStarred:["GET /gists/starred"],star:["PUT /gists/{gist_id}/star"],unstar:["DELETE /gists/{gist_id}/star"],update:["PATCH /gists/{gist_id}"],updateComment:["PATCH /gists/{gist_id}/comments/{comment_id}"]},git:{createBlob:["POST /repos/{owner}/{repo}/git/blobs"],createCommit:["POST /repos/{owner}/{repo}/git/commits"],createRef:["POST /repos/{owner}/{repo}/git/refs"],createTag:["POST /repos/{owner}/{repo}/git/tags"],createTree:["POST /repos/{owner}/{repo}/git/trees"],deleteRef:["DELETE /repos/{owner}/{repo}/git/refs/{ref}"],getBlob:["GET /repos/{owner}/{repo}/git/blobs/{file_sha}"],getCommit:["GET /repos/{owner}/{repo}/git/commits/{commit_sha}"],getRef:["GET /repos/{owner}/{repo}/git/ref/{ref}"],getTag:["GET /repos/{owner}/{repo}/git/tags/{tag_sha}"],getTree:["GET /repos/{owner}/{repo}/git/trees/{tree_sha}"],listMatchingRefs:["GET /repos/{owner}/{repo}/git/matching-refs/{ref}"],updateRef:["PATCH /repos/{owner}/{repo}/git/refs/{ref}"]},gitignore:{getAllTemplates:["GET /gitignore/templates"],getTemplate:["GET /gitignore/templates/{name}"]},interactions:{getRestrictionsForAuthenticatedUser:["GET /user/interaction-limits"],getRestrictionsForOrg:["GET /orgs/{org}/interaction-limits"],getRestrictionsForRepo:["GET /repos/{owner}/{repo}/interaction-limits"],getRestrictionsForYourPublicRepos:["GET /user/interaction-limits",{},{renamed:["interactions","getRestrictionsForAuthenticatedUser"]}],removeRestrictionsForAuthenticatedUser:["DELETE /user/interaction-limits"],removeRestrictionsForOrg:["DELETE /orgs/{org}/interaction-limits"],removeRestrictionsForRepo:["DELETE /repos/{owner}/{repo}/interaction-limits"],removeRestrictionsForYourPublicRepos:["DELETE /user/interaction-limits",{},{renamed:["interactions","removeRestrictionsForAuthenticatedUser"]}],setRestrictionsForAuthenticatedUser:["PUT /user/interaction-limits"],setRestrictionsForOrg:["PUT /orgs/{org}/interaction-limits"],setRestrictionsForRepo:["PUT /repos/{owner}/{repo}/interaction-limits"],setRestrictionsForYourPublicRepos:["PUT /user/interaction-limits",{},{renamed:["interactions","setRestrictionsForAuthenticatedUser"]}]},issues:{addAssignees:["POST /repos/{owner}/{repo}/issues/{issue_number}/assignees"],addLabels:["POST /repos/{owner}/{repo}/issues/{issue_number}/labels"],checkUserCanBeAssigned:["GET /repos/{owner}/{repo}/assignees/{assignee}"],checkUserCanBeAssignedToIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee}"],create:["POST /repos/{owner}/{repo}/issues"],createComment:["POST /repos/{owner}/{repo}/issues/{issue_number}/comments"],createLabel:["POST /repos/{owner}/{repo}/labels"],createMilestone:["POST /repos/{owner}/{repo}/milestones"],deleteComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}"],deleteLabel:["DELETE /repos/{owner}/{repo}/labels/{name}"],deleteMilestone:["DELETE /repos/{owner}/{repo}/milestones/{milestone_number}"],get:["GET /repos/{owner}/{repo}/issues/{issue_number}"],getComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}"],getEvent:["GET /repos/{owner}/{repo}/issues/events/{event_id}"],getLabel:["GET /repos/{owner}/{repo}/labels/{name}"],getMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}"],list:["GET /issues"],listAssignees:["GET /repos/{owner}/{repo}/assignees"],listComments:["GET /repos/{owner}/{repo}/issues/{issue_number}/comments"],listCommentsForRepo:["GET /repos/{owner}/{repo}/issues/comments"],listEvents:["GET /repos/{owner}/{repo}/issues/{issue_number}/events"],listEventsForRepo:["GET /repos/{owner}/{repo}/issues/events"],listEventsForTimeline:["GET /repos/{owner}/{repo}/issues/{issue_number}/timeline"],listForAuthenticatedUser:["GET /user/issues"],listForOrg:["GET /orgs/{org}/issues"],listForRepo:["GET /repos/{owner}/{repo}/issues"],listLabelsForMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels"],listLabelsForRepo:["GET /repos/{owner}/{repo}/labels"],listLabelsOnIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/labels"],listMilestones:["GET /repos/{owner}/{repo}/milestones"],lock:["PUT /repos/{owner}/{repo}/issues/{issue_number}/lock"],removeAllLabels:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels"],removeAssignees:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees"],removeLabel:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}"],setLabels:["PUT /repos/{owner}/{repo}/issues/{issue_number}/labels"],unlock:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock"],update:["PATCH /repos/{owner}/{repo}/issues/{issue_number}"],updateComment:["PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}"],updateLabel:["PATCH /repos/{owner}/{repo}/labels/{name}"],updateMilestone:["PATCH /repos/{owner}/{repo}/milestones/{milestone_number}"]},licenses:{get:["GET /licenses/{license}"],getAllCommonlyUsed:["GET /licenses"],getForRepo:["GET /repos/{owner}/{repo}/license"]},markdown:{render:["POST /markdown"],renderRaw:["POST /markdown/raw",{headers:{"content-type":"text/plain; charset=utf-8"}}]},meta:{get:["GET /meta"],getAllVersions:["GET /versions"],getOctocat:["GET /octocat"],getZen:["GET /zen"],root:["GET /"]},migrations:{cancelImport:["DELETE /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.cancelImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#cancel-an-import"}],deleteArchiveForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/archive"],deleteArchiveForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/archive"],downloadArchiveForOrg:["GET /orgs/{org}/migrations/{migration_id}/archive"],getArchiveForAuthenticatedUser:["GET /user/migrations/{migration_id}/archive"],getCommitAuthors:["GET /repos/{owner}/{repo}/import/authors",{},{deprecated:"octokit.rest.migrations.getCommitAuthors() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-commit-authors"}],getImportStatus:["GET /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.getImportStatus() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-an-import-status"}],getLargeFiles:["GET /repos/{owner}/{repo}/import/large_files",{},{deprecated:"octokit.rest.migrations.getLargeFiles() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-large-files"}],getStatusForAuthenticatedUser:["GET /user/migrations/{migration_id}"],getStatusForOrg:["GET /orgs/{org}/migrations/{migration_id}"],listForAuthenticatedUser:["GET /user/migrations"],listForOrg:["GET /orgs/{org}/migrations"],listReposForAuthenticatedUser:["GET /user/migrations/{migration_id}/repositories"],listReposForOrg:["GET /orgs/{org}/migrations/{migration_id}/repositories"],listReposForUser:["GET /user/migrations/{migration_id}/repositories",{},{renamed:["migrations","listReposForAuthenticatedUser"]}],mapCommitAuthor:["PATCH /repos/{owner}/{repo}/import/authors/{author_id}",{},{deprecated:"octokit.rest.migrations.mapCommitAuthor() is deprecated, see https://docs.github.com/rest/migrations/source-imports#map-a-commit-author"}],setLfsPreference:["PATCH /repos/{owner}/{repo}/import/lfs",{},{deprecated:"octokit.rest.migrations.setLfsPreference() is deprecated, see https://docs.github.com/rest/migrations/source-imports#update-git-lfs-preference"}],startForAuthenticatedUser:["POST /user/migrations"],startForOrg:["POST /orgs/{org}/migrations"],startImport:["PUT /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.startImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#start-an-import"}],unlockRepoForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock"],unlockRepoForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock"],updateImport:["PATCH /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.updateImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#update-an-import"}]},oidc:{getOidcCustomSubTemplateForOrg:["GET /orgs/{org}/actions/oidc/customization/sub"],updateOidcCustomSubTemplateForOrg:["PUT /orgs/{org}/actions/oidc/customization/sub"]},orgs:{addSecurityManagerTeam:["PUT /orgs/{org}/security-managers/teams/{team_slug}"],assignTeamToOrgRole:["PUT /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],assignUserToOrgRole:["PUT /orgs/{org}/organization-roles/users/{username}/{role_id}"],blockUser:["PUT /orgs/{org}/blocks/{username}"],cancelInvitation:["DELETE /orgs/{org}/invitations/{invitation_id}"],checkBlockedUser:["GET /orgs/{org}/blocks/{username}"],checkMembershipForUser:["GET /orgs/{org}/members/{username}"],checkPublicMembershipForUser:["GET /orgs/{org}/public_members/{username}"],convertMemberToOutsideCollaborator:["PUT /orgs/{org}/outside_collaborators/{username}"],createCustomOrganizationRole:["POST /orgs/{org}/organization-roles"],createInvitation:["POST /orgs/{org}/invitations"],createOrUpdateCustomProperties:["PATCH /orgs/{org}/properties/schema"],createOrUpdateCustomPropertiesValuesForRepos:["PATCH /orgs/{org}/properties/values"],createOrUpdateCustomProperty:["PUT /orgs/{org}/properties/schema/{custom_property_name}"],createWebhook:["POST /orgs/{org}/hooks"],delete:["DELETE /orgs/{org}"],deleteCustomOrganizationRole:["DELETE /orgs/{org}/organization-roles/{role_id}"],deleteWebhook:["DELETE /orgs/{org}/hooks/{hook_id}"],enableOrDisableSecurityProductOnAllOrgRepos:["POST /orgs/{org}/{security_product}/{enablement}"],get:["GET /orgs/{org}"],getAllCustomProperties:["GET /orgs/{org}/properties/schema"],getCustomProperty:["GET /orgs/{org}/properties/schema/{custom_property_name}"],getMembershipForAuthenticatedUser:["GET /user/memberships/orgs/{org}"],getMembershipForUser:["GET /orgs/{org}/memberships/{username}"],getOrgRole:["GET /orgs/{org}/organization-roles/{role_id}"],getWebhook:["GET /orgs/{org}/hooks/{hook_id}"],getWebhookConfigForOrg:["GET /orgs/{org}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}"],list:["GET /organizations"],listAppInstallations:["GET /orgs/{org}/installations"],listBlockedUsers:["GET /orgs/{org}/blocks"],listCustomPropertiesValuesForRepos:["GET /orgs/{org}/properties/values"],listFailedInvitations:["GET /orgs/{org}/failed_invitations"],listForAuthenticatedUser:["GET /user/orgs"],listForUser:["GET /users/{username}/orgs"],listInvitationTeams:["GET /orgs/{org}/invitations/{invitation_id}/teams"],listMembers:["GET /orgs/{org}/members"],listMembershipsForAuthenticatedUser:["GET /user/memberships/orgs"],listOrgRoleTeams:["GET /orgs/{org}/organization-roles/{role_id}/teams"],listOrgRoleUsers:["GET /orgs/{org}/organization-roles/{role_id}/users"],listOrgRoles:["GET /orgs/{org}/organization-roles"],listOrganizationFineGrainedPermissions:["GET /orgs/{org}/organization-fine-grained-permissions"],listOutsideCollaborators:["GET /orgs/{org}/outside_collaborators"],listPatGrantRepositories:["GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories"],listPatGrantRequestRepositories:["GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories"],listPatGrantRequests:["GET /orgs/{org}/personal-access-token-requests"],listPatGrants:["GET /orgs/{org}/personal-access-tokens"],listPendingInvitations:["GET /orgs/{org}/invitations"],listPublicMembers:["GET /orgs/{org}/public_members"],listSecurityManagerTeams:["GET /orgs/{org}/security-managers"],listWebhookDeliveries:["GET /orgs/{org}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /orgs/{org}/hooks"],patchCustomOrganizationRole:["PATCH /orgs/{org}/organization-roles/{role_id}"],pingWebhook:["POST /orgs/{org}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeCustomProperty:["DELETE /orgs/{org}/properties/schema/{custom_property_name}"],removeMember:["DELETE /orgs/{org}/members/{username}"],removeMembershipForUser:["DELETE /orgs/{org}/memberships/{username}"],removeOutsideCollaborator:["DELETE /orgs/{org}/outside_collaborators/{username}"],removePublicMembershipForAuthenticatedUser:["DELETE /orgs/{org}/public_members/{username}"],removeSecurityManagerTeam:["DELETE /orgs/{org}/security-managers/teams/{team_slug}"],reviewPatGrantRequest:["POST /orgs/{org}/personal-access-token-requests/{pat_request_id}"],reviewPatGrantRequestsInBulk:["POST /orgs/{org}/personal-access-token-requests"],revokeAllOrgRolesTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}"],revokeAllOrgRolesUser:["DELETE /orgs/{org}/organization-roles/users/{username}"],revokeOrgRoleTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],revokeOrgRoleUser:["DELETE /orgs/{org}/organization-roles/users/{username}/{role_id}"],setMembershipForUser:["PUT /orgs/{org}/memberships/{username}"],setPublicMembershipForAuthenticatedUser:["PUT /orgs/{org}/public_members/{username}"],unblockUser:["DELETE /orgs/{org}/blocks/{username}"],update:["PATCH /orgs/{org}"],updateMembershipForAuthenticatedUser:["PATCH /user/memberships/orgs/{org}"],updatePatAccess:["POST /orgs/{org}/personal-access-tokens/{pat_id}"],updatePatAccesses:["POST /orgs/{org}/personal-access-tokens"],updateWebhook:["PATCH /orgs/{org}/hooks/{hook_id}"],updateWebhookConfigForOrg:["PATCH /orgs/{org}/hooks/{hook_id}/config"]},packages:{deletePackageForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}"],deletePackageForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}"],deletePackageForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}"],deletePackageVersionForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getAllPackageVersionsForAPackageOwnedByAnOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByOrg"]}],getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByAuthenticatedUser"]}],getAllPackageVersionsForPackageOwnedByAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions"],getPackageForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}"],getPackageForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}"],getPackageForUser:["GET /users/{username}/packages/{package_type}/{package_name}"],getPackageVersionForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],listDockerMigrationConflictingPackagesForAuthenticatedUser:["GET /user/docker/conflicts"],listDockerMigrationConflictingPackagesForOrganization:["GET /orgs/{org}/docker/conflicts"],listDockerMigrationConflictingPackagesForUser:["GET /users/{username}/docker/conflicts"],listPackagesForAuthenticatedUser:["GET /user/packages"],listPackagesForOrganization:["GET /orgs/{org}/packages"],listPackagesForUser:["GET /users/{username}/packages"],restorePackageForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForUser:["POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageVersionForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForUser:["POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"]},projects:{addCollaborator:["PUT /projects/{project_id}/collaborators/{username}"],createCard:["POST /projects/columns/{column_id}/cards"],createColumn:["POST /projects/{project_id}/columns"],createForAuthenticatedUser:["POST /user/projects"],createForOrg:["POST /orgs/{org}/projects"],createForRepo:["POST /repos/{owner}/{repo}/projects"],delete:["DELETE /projects/{project_id}"],deleteCard:["DELETE /projects/columns/cards/{card_id}"],deleteColumn:["DELETE /projects/columns/{column_id}"],get:["GET /projects/{project_id}"],getCard:["GET /projects/columns/cards/{card_id}"],getColumn:["GET /projects/columns/{column_id}"],getPermissionForUser:["GET /projects/{project_id}/collaborators/{username}/permission"],listCards:["GET /projects/columns/{column_id}/cards"],listCollaborators:["GET /projects/{project_id}/collaborators"],listColumns:["GET /projects/{project_id}/columns"],listForOrg:["GET /orgs/{org}/projects"],listForRepo:["GET /repos/{owner}/{repo}/projects"],listForUser:["GET /users/{username}/projects"],moveCard:["POST /projects/columns/cards/{card_id}/moves"],moveColumn:["POST /projects/columns/{column_id}/moves"],removeCollaborator:["DELETE /projects/{project_id}/collaborators/{username}"],update:["PATCH /projects/{project_id}"],updateCard:["PATCH /projects/columns/cards/{card_id}"],updateColumn:["PATCH /projects/columns/{column_id}"]},pulls:{checkIfMerged:["GET /repos/{owner}/{repo}/pulls/{pull_number}/merge"],create:["POST /repos/{owner}/{repo}/pulls"],createReplyForReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies"],createReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],createReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments"],deletePendingReview:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],deleteReviewComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}"],dismissReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals"],get:["GET /repos/{owner}/{repo}/pulls/{pull_number}"],getReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],getReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}"],list:["GET /repos/{owner}/{repo}/pulls"],listCommentsForReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments"],listCommits:["GET /repos/{owner}/{repo}/pulls/{pull_number}/commits"],listFiles:["GET /repos/{owner}/{repo}/pulls/{pull_number}/files"],listRequestedReviewers:["GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],listReviewComments:["GET /repos/{owner}/{repo}/pulls/{pull_number}/comments"],listReviewCommentsForRepo:["GET /repos/{owner}/{repo}/pulls/comments"],listReviews:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],merge:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge"],removeRequestedReviewers:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],requestReviewers:["POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],submitReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events"],update:["PATCH /repos/{owner}/{repo}/pulls/{pull_number}"],updateBranch:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch"],updateReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],updateReviewComment:["PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}"]},rateLimit:{get:["GET /rate_limit"]},reactions:{createForCommitComment:["POST /repos/{owner}/{repo}/comments/{comment_id}/reactions"],createForIssue:["POST /repos/{owner}/{repo}/issues/{issue_number}/reactions"],createForIssueComment:["POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],createForPullRequestReviewComment:["POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],createForRelease:["POST /repos/{owner}/{repo}/releases/{release_id}/reactions"],createForTeamDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],createForTeamDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"],deleteForCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}"],deleteForIssue:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}"],deleteForIssueComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}"],deleteForPullRequestComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}"],deleteForRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}"],deleteForTeamDiscussion:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}"],deleteForTeamDiscussionComment:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}"],listForCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}/reactions"],listForIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/reactions"],listForIssueComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],listForPullRequestReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],listForRelease:["GET /repos/{owner}/{repo}/releases/{release_id}/reactions"],listForTeamDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],listForTeamDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"]},repos:{acceptInvitation:["PATCH /user/repository_invitations/{invitation_id}",{},{renamed:["repos","acceptInvitationForAuthenticatedUser"]}],acceptInvitationForAuthenticatedUser:["PATCH /user/repository_invitations/{invitation_id}"],addAppAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],addCollaborator:["PUT /repos/{owner}/{repo}/collaborators/{username}"],addStatusCheckContexts:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],addTeamAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],addUserAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],cancelPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}/cancel"],checkAutomatedSecurityFixes:["GET /repos/{owner}/{repo}/automated-security-fixes"],checkCollaborator:["GET /repos/{owner}/{repo}/collaborators/{username}"],checkVulnerabilityAlerts:["GET /repos/{owner}/{repo}/vulnerability-alerts"],codeownersErrors:["GET /repos/{owner}/{repo}/codeowners/errors"],compareCommits:["GET /repos/{owner}/{repo}/compare/{base}...{head}"],compareCommitsWithBasehead:["GET /repos/{owner}/{repo}/compare/{basehead}"],createAutolink:["POST /repos/{owner}/{repo}/autolinks"],createCommitComment:["POST /repos/{owner}/{repo}/commits/{commit_sha}/comments"],createCommitSignatureProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],createCommitStatus:["POST /repos/{owner}/{repo}/statuses/{sha}"],createDeployKey:["POST /repos/{owner}/{repo}/keys"],createDeployment:["POST /repos/{owner}/{repo}/deployments"],createDeploymentBranchPolicy:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],createDeploymentProtectionRule:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],createDeploymentStatus:["POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],createDispatchEvent:["POST /repos/{owner}/{repo}/dispatches"],createForAuthenticatedUser:["POST /user/repos"],createFork:["POST /repos/{owner}/{repo}/forks"],createInOrg:["POST /orgs/{org}/repos"],createOrUpdateCustomPropertiesValues:["PATCH /repos/{owner}/{repo}/properties/values"],createOrUpdateEnvironment:["PUT /repos/{owner}/{repo}/environments/{environment_name}"],createOrUpdateFileContents:["PUT /repos/{owner}/{repo}/contents/{path}"],createOrgRuleset:["POST /orgs/{org}/rulesets"],createPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments"],createPagesSite:["POST /repos/{owner}/{repo}/pages"],createRelease:["POST /repos/{owner}/{repo}/releases"],createRepoRuleset:["POST /repos/{owner}/{repo}/rulesets"],createTagProtection:["POST /repos/{owner}/{repo}/tags/protection"],createUsingTemplate:["POST /repos/{template_owner}/{template_repo}/generate"],createWebhook:["POST /repos/{owner}/{repo}/hooks"],declineInvitation:["DELETE /user/repository_invitations/{invitation_id}",{},{renamed:["repos","declineInvitationForAuthenticatedUser"]}],declineInvitationForAuthenticatedUser:["DELETE /user/repository_invitations/{invitation_id}"],delete:["DELETE /repos/{owner}/{repo}"],deleteAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],deleteAdminBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],deleteAnEnvironment:["DELETE /repos/{owner}/{repo}/environments/{environment_name}"],deleteAutolink:["DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}"],deleteBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection"],deleteCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}"],deleteCommitSignatureProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],deleteDeployKey:["DELETE /repos/{owner}/{repo}/keys/{key_id}"],deleteDeployment:["DELETE /repos/{owner}/{repo}/deployments/{deployment_id}"],deleteDeploymentBranchPolicy:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],deleteFile:["DELETE /repos/{owner}/{repo}/contents/{path}"],deleteInvitation:["DELETE /repos/{owner}/{repo}/invitations/{invitation_id}"],deleteOrgRuleset:["DELETE /orgs/{org}/rulesets/{ruleset_id}"],deletePagesSite:["DELETE /repos/{owner}/{repo}/pages"],deletePullRequestReviewProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],deleteRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}"],deleteReleaseAsset:["DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}"],deleteRepoRuleset:["DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id}"],deleteTagProtection:["DELETE /repos/{owner}/{repo}/tags/protection/{tag_protection_id}"],deleteWebhook:["DELETE /repos/{owner}/{repo}/hooks/{hook_id}"],disableAutomatedSecurityFixes:["DELETE /repos/{owner}/{repo}/automated-security-fixes"],disableDeploymentProtectionRule:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],disablePrivateVulnerabilityReporting:["DELETE /repos/{owner}/{repo}/private-vulnerability-reporting"],disableVulnerabilityAlerts:["DELETE /repos/{owner}/{repo}/vulnerability-alerts"],downloadArchive:["GET /repos/{owner}/{repo}/zipball/{ref}",{},{renamed:["repos","downloadZipballArchive"]}],downloadTarballArchive:["GET /repos/{owner}/{repo}/tarball/{ref}"],downloadZipballArchive:["GET /repos/{owner}/{repo}/zipball/{ref}"],enableAutomatedSecurityFixes:["PUT /repos/{owner}/{repo}/automated-security-fixes"],enablePrivateVulnerabilityReporting:["PUT /repos/{owner}/{repo}/private-vulnerability-reporting"],enableVulnerabilityAlerts:["PUT /repos/{owner}/{repo}/vulnerability-alerts"],generateReleaseNotes:["POST /repos/{owner}/{repo}/releases/generate-notes"],get:["GET /repos/{owner}/{repo}"],getAccessRestrictions:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],getAdminBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],getAllDeploymentProtectionRules:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],getAllEnvironments:["GET /repos/{owner}/{repo}/environments"],getAllStatusCheckContexts:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"],getAllTopics:["GET /repos/{owner}/{repo}/topics"],getAppsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps"],getAutolink:["GET /repos/{owner}/{repo}/autolinks/{autolink_id}"],getBranch:["GET /repos/{owner}/{repo}/branches/{branch}"],getBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection"],getBranchRules:["GET /repos/{owner}/{repo}/rules/branches/{branch}"],getClones:["GET /repos/{owner}/{repo}/traffic/clones"],getCodeFrequencyStats:["GET /repos/{owner}/{repo}/stats/code_frequency"],getCollaboratorPermissionLevel:["GET /repos/{owner}/{repo}/collaborators/{username}/permission"],getCombinedStatusForRef:["GET /repos/{owner}/{repo}/commits/{ref}/status"],getCommit:["GET /repos/{owner}/{repo}/commits/{ref}"],getCommitActivityStats:["GET /repos/{owner}/{repo}/stats/commit_activity"],getCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}"],getCommitSignatureProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],getCommunityProfileMetrics:["GET /repos/{owner}/{repo}/community/profile"],getContent:["GET /repos/{owner}/{repo}/contents/{path}"],getContributorsStats:["GET /repos/{owner}/{repo}/stats/contributors"],getCustomDeploymentProtectionRule:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],getCustomPropertiesValues:["GET /repos/{owner}/{repo}/properties/values"],getDeployKey:["GET /repos/{owner}/{repo}/keys/{key_id}"],getDeployment:["GET /repos/{owner}/{repo}/deployments/{deployment_id}"],getDeploymentBranchPolicy:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],getDeploymentStatus:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}"],getEnvironment:["GET /repos/{owner}/{repo}/environments/{environment_name}"],getLatestPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/latest"],getLatestRelease:["GET /repos/{owner}/{repo}/releases/latest"],getOrgRuleSuite:["GET /orgs/{org}/rulesets/rule-suites/{rule_suite_id}"],getOrgRuleSuites:["GET /orgs/{org}/rulesets/rule-suites"],getOrgRuleset:["GET /orgs/{org}/rulesets/{ruleset_id}"],getOrgRulesets:["GET /orgs/{org}/rulesets"],getPages:["GET /repos/{owner}/{repo}/pages"],getPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/{build_id}"],getPagesDeployment:["GET /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}"],getPagesHealthCheck:["GET /repos/{owner}/{repo}/pages/health"],getParticipationStats:["GET /repos/{owner}/{repo}/stats/participation"],getPullRequestReviewProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],getPunchCardStats:["GET /repos/{owner}/{repo}/stats/punch_card"],getReadme:["GET /repos/{owner}/{repo}/readme"],getReadmeInDirectory:["GET /repos/{owner}/{repo}/readme/{dir}"],getRelease:["GET /repos/{owner}/{repo}/releases/{release_id}"],getReleaseAsset:["GET /repos/{owner}/{repo}/releases/assets/{asset_id}"],getReleaseByTag:["GET /repos/{owner}/{repo}/releases/tags/{tag}"],getRepoRuleSuite:["GET /repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}"],getRepoRuleSuites:["GET /repos/{owner}/{repo}/rulesets/rule-suites"],getRepoRuleset:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}"],getRepoRulesets:["GET /repos/{owner}/{repo}/rulesets"],getStatusChecksProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],getTeamsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"],getTopPaths:["GET /repos/{owner}/{repo}/traffic/popular/paths"],getTopReferrers:["GET /repos/{owner}/{repo}/traffic/popular/referrers"],getUsersWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"],getViews:["GET /repos/{owner}/{repo}/traffic/views"],getWebhook:["GET /repos/{owner}/{repo}/hooks/{hook_id}"],getWebhookConfigForRepo:["GET /repos/{owner}/{repo}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}"],listActivities:["GET /repos/{owner}/{repo}/activity"],listAutolinks:["GET /repos/{owner}/{repo}/autolinks"],listBranches:["GET /repos/{owner}/{repo}/branches"],listBranchesForHeadCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head"],listCollaborators:["GET /repos/{owner}/{repo}/collaborators"],listCommentsForCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/comments"],listCommitCommentsForRepo:["GET /repos/{owner}/{repo}/comments"],listCommitStatusesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/statuses"],listCommits:["GET /repos/{owner}/{repo}/commits"],listContributors:["GET /repos/{owner}/{repo}/contributors"],listCustomDeploymentRuleIntegrations:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps"],listDeployKeys:["GET /repos/{owner}/{repo}/keys"],listDeploymentBranchPolicies:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],listDeploymentStatuses:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],listDeployments:["GET /repos/{owner}/{repo}/deployments"],listForAuthenticatedUser:["GET /user/repos"],listForOrg:["GET /orgs/{org}/repos"],listForUser:["GET /users/{username}/repos"],listForks:["GET /repos/{owner}/{repo}/forks"],listInvitations:["GET /repos/{owner}/{repo}/invitations"],listInvitationsForAuthenticatedUser:["GET /user/repository_invitations"],listLanguages:["GET /repos/{owner}/{repo}/languages"],listPagesBuilds:["GET /repos/{owner}/{repo}/pages/builds"],listPublic:["GET /repositories"],listPullRequestsAssociatedWithCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls"],listReleaseAssets:["GET /repos/{owner}/{repo}/releases/{release_id}/assets"],listReleases:["GET /repos/{owner}/{repo}/releases"],listTagProtection:["GET /repos/{owner}/{repo}/tags/protection"],listTags:["GET /repos/{owner}/{repo}/tags"],listTeams:["GET /repos/{owner}/{repo}/teams"],listWebhookDeliveries:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /repos/{owner}/{repo}/hooks"],merge:["POST /repos/{owner}/{repo}/merges"],mergeUpstream:["POST /repos/{owner}/{repo}/merge-upstream"],pingWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeAppAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],removeCollaborator:["DELETE /repos/{owner}/{repo}/collaborators/{username}"],removeStatusCheckContexts:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],removeStatusCheckProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],removeTeamAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],removeUserAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],renameBranch:["POST /repos/{owner}/{repo}/branches/{branch}/rename"],replaceAllTopics:["PUT /repos/{owner}/{repo}/topics"],requestPagesBuild:["POST /repos/{owner}/{repo}/pages/builds"],setAdminBranchProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],setAppAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],setStatusCheckContexts:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],setTeamAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],setUserAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],testPushWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/tests"],transfer:["POST /repos/{owner}/{repo}/transfer"],update:["PATCH /repos/{owner}/{repo}"],updateBranchProtection:["PUT /repos/{owner}/{repo}/branches/{branch}/protection"],updateCommitComment:["PATCH /repos/{owner}/{repo}/comments/{comment_id}"],updateDeploymentBranchPolicy:["PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],updateInformationAboutPagesSite:["PUT /repos/{owner}/{repo}/pages"],updateInvitation:["PATCH /repos/{owner}/{repo}/invitations/{invitation_id}"],updateOrgRuleset:["PUT /orgs/{org}/rulesets/{ruleset_id}"],updatePullRequestReviewProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],updateRelease:["PATCH /repos/{owner}/{repo}/releases/{release_id}"],updateReleaseAsset:["PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}"],updateRepoRuleset:["PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}"],updateStatusCheckPotection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks",{},{renamed:["repos","updateStatusCheckProtection"]}],updateStatusCheckProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],updateWebhook:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}"],updateWebhookConfigForRepo:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config"],uploadReleaseAsset:["POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}",{baseUrl:"https://uploads.github.com"}]},search:{code:["GET /search/code"],commits:["GET /search/commits"],issuesAndPullRequests:["GET /search/issues"],labels:["GET /search/labels"],repos:["GET /search/repositories"],topics:["GET /search/topics"],users:["GET /search/users"]},secretScanning:{getAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/secret-scanning/alerts"],listAlertsForOrg:["GET /orgs/{org}/secret-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/secret-scanning/alerts"],listLocationsForAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations"],updateAlert:["PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"]},securityAdvisories:{createFork:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks"],createPrivateVulnerabilityReport:["POST /repos/{owner}/{repo}/security-advisories/reports"],createRepositoryAdvisory:["POST /repos/{owner}/{repo}/security-advisories"],createRepositoryAdvisoryCveRequest:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve"],getGlobalAdvisory:["GET /advisories/{ghsa_id}"],getRepositoryAdvisory:["GET /repos/{owner}/{repo}/security-advisories/{ghsa_id}"],listGlobalAdvisories:["GET /advisories"],listOrgRepositoryAdvisories:["GET /orgs/{org}/security-advisories"],listRepositoryAdvisories:["GET /repos/{owner}/{repo}/security-advisories"],updateRepositoryAdvisory:["PATCH /repos/{owner}/{repo}/security-advisories/{ghsa_id}"]},teams:{addOrUpdateMembershipForUserInOrg:["PUT /orgs/{org}/teams/{team_slug}/memberships/{username}"],addOrUpdateProjectPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}"],addOrUpdateRepoPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],checkPermissionsForProjectInOrg:["GET /orgs/{org}/teams/{team_slug}/projects/{project_id}"],checkPermissionsForRepoInOrg:["GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],create:["POST /orgs/{org}/teams"],createDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],createDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions"],deleteDiscussionCommentInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],deleteDiscussionInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],deleteInOrg:["DELETE /orgs/{org}/teams/{team_slug}"],getByName:["GET /orgs/{org}/teams/{team_slug}"],getDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],getDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],getMembershipForUserInOrg:["GET /orgs/{org}/teams/{team_slug}/memberships/{username}"],list:["GET /orgs/{org}/teams"],listChildInOrg:["GET /orgs/{org}/teams/{team_slug}/teams"],listDiscussionCommentsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],listDiscussionsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions"],listForAuthenticatedUser:["GET /user/teams"],listMembersInOrg:["GET /orgs/{org}/teams/{team_slug}/members"],listPendingInvitationsInOrg:["GET /orgs/{org}/teams/{team_slug}/invitations"],listProjectsInOrg:["GET /orgs/{org}/teams/{team_slug}/projects"],listReposInOrg:["GET /orgs/{org}/teams/{team_slug}/repos"],removeMembershipForUserInOrg:["DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}"],removeProjectInOrg:["DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}"],removeRepoInOrg:["DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],updateDiscussionCommentInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],updateDiscussionInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],updateInOrg:["PATCH /orgs/{org}/teams/{team_slug}"]},users:{addEmailForAuthenticated:["POST /user/emails",{},{renamed:["users","addEmailForAuthenticatedUser"]}],addEmailForAuthenticatedUser:["POST /user/emails"],addSocialAccountForAuthenticatedUser:["POST /user/social_accounts"],block:["PUT /user/blocks/{username}"],checkBlocked:["GET /user/blocks/{username}"],checkFollowingForUser:["GET /users/{username}/following/{target_user}"],checkPersonIsFollowedByAuthenticated:["GET /user/following/{username}"],createGpgKeyForAuthenticated:["POST /user/gpg_keys",{},{renamed:["users","createGpgKeyForAuthenticatedUser"]}],createGpgKeyForAuthenticatedUser:["POST /user/gpg_keys"],createPublicSshKeyForAuthenticated:["POST /user/keys",{},{renamed:["users","createPublicSshKeyForAuthenticatedUser"]}],createPublicSshKeyForAuthenticatedUser:["POST /user/keys"],createSshSigningKeyForAuthenticatedUser:["POST /user/ssh_signing_keys"],deleteEmailForAuthenticated:["DELETE /user/emails",{},{renamed:["users","deleteEmailForAuthenticatedUser"]}],deleteEmailForAuthenticatedUser:["DELETE /user/emails"],deleteGpgKeyForAuthenticated:["DELETE /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","deleteGpgKeyForAuthenticatedUser"]}],deleteGpgKeyForAuthenticatedUser:["DELETE /user/gpg_keys/{gpg_key_id}"],deletePublicSshKeyForAuthenticated:["DELETE /user/keys/{key_id}",{},{renamed:["users","deletePublicSshKeyForAuthenticatedUser"]}],deletePublicSshKeyForAuthenticatedUser:["DELETE /user/keys/{key_id}"],deleteSocialAccountForAuthenticatedUser:["DELETE /user/social_accounts"],deleteSshSigningKeyForAuthenticatedUser:["DELETE /user/ssh_signing_keys/{ssh_signing_key_id}"],follow:["PUT /user/following/{username}"],getAuthenticated:["GET /user"],getByUsername:["GET /users/{username}"],getContextForUser:["GET /users/{username}/hovercard"],getGpgKeyForAuthenticated:["GET /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","getGpgKeyForAuthenticatedUser"]}],getGpgKeyForAuthenticatedUser:["GET /user/gpg_keys/{gpg_key_id}"],getPublicSshKeyForAuthenticated:["GET /user/keys/{key_id}",{},{renamed:["users","getPublicSshKeyForAuthenticatedUser"]}],getPublicSshKeyForAuthenticatedUser:["GET /user/keys/{key_id}"],getSshSigningKeyForAuthenticatedUser:["GET /user/ssh_signing_keys/{ssh_signing_key_id}"],list:["GET /users"],listBlockedByAuthenticated:["GET /user/blocks",{},{renamed:["users","listBlockedByAuthenticatedUser"]}],listBlockedByAuthenticatedUser:["GET /user/blocks"],listEmailsForAuthenticated:["GET /user/emails",{},{renamed:["users","listEmailsForAuthenticatedUser"]}],listEmailsForAuthenticatedUser:["GET /user/emails"],listFollowedByAuthenticated:["GET /user/following",{},{renamed:["users","listFollowedByAuthenticatedUser"]}],listFollowedByAuthenticatedUser:["GET /user/following"],listFollowersForAuthenticatedUser:["GET /user/followers"],listFollowersForUser:["GET /users/{username}/followers"],listFollowingForUser:["GET /users/{username}/following"],listGpgKeysForAuthenticated:["GET /user/gpg_keys",{},{renamed:["users","listGpgKeysForAuthenticatedUser"]}],listGpgKeysForAuthenticatedUser:["GET /user/gpg_keys"],listGpgKeysForUser:["GET /users/{username}/gpg_keys"],listPublicEmailsForAuthenticated:["GET /user/public_emails",{},{renamed:["users","listPublicEmailsForAuthenticatedUser"]}],listPublicEmailsForAuthenticatedUser:["GET /user/public_emails"],listPublicKeysForUser:["GET /users/{username}/keys"],listPublicSshKeysForAuthenticated:["GET /user/keys",{},{renamed:["users","listPublicSshKeysForAuthenticatedUser"]}],listPublicSshKeysForAuthenticatedUser:["GET /user/keys"],listSocialAccountsForAuthenticatedUser:["GET /user/social_accounts"],listSocialAccountsForUser:["GET /users/{username}/social_accounts"],listSshSigningKeysForAuthenticatedUser:["GET /user/ssh_signing_keys"],listSshSigningKeysForUser:["GET /users/{username}/ssh_signing_keys"],setPrimaryEmailVisibilityForAuthenticated:["PATCH /user/email/visibility",{},{renamed:["users","setPrimaryEmailVisibilityForAuthenticatedUser"]}],setPrimaryEmailVisibilityForAuthenticatedUser:["PATCH /user/email/visibility"],unblock:["DELETE /user/blocks/{username}"],unfollow:["DELETE /user/following/{username}"],updateAuthenticated:["PATCH /user"]}},yRo=_Ro,Kde=new Map;for(let[e,t]of Object.entries(yRo))for(let[r,s]of Object.entries(t)){let[a,o,g]=s,[p,f]=a.split(/ /),m=Object.assign({method:p,url:f},o);Kde.has(e)||Kde.set(e,new Map),Kde.get(e).set(r,{scope:e,methodName:r,endpointDefaults:m,decorations:g})}var bRo={has({scope:e},t){return Kde.get(e).has(t)},getOwnPropertyDescriptor(e,t){return{value:this.get(e,t),configurable:!0,writable:!0,enumerable:!0}},defineProperty(e,t,r){return Object.defineProperty(e.cache,t,r),!0},deleteProperty(e,t){return delete e.cache[t],!0},ownKeys({scope:e}){return[...Kde.get(e).keys()]},set(e,t,r){return e.cache[t]=r},get({octokit:e,scope:t,cache:r},s){if(r[s])return r[s];let a=Kde.get(t).get(s);if(!a)return;let{endpointDefaults:o,decorations:g}=a;return g?r[s]=ERo(e,t,s,o,g):r[s]=e.request.defaults(o),r[s]}};function MWn(e){let t={};for(let r of Kde.keys())t[r]=new Proxy({octokit:e,scope:r,cache:{}},bRo);return t}function ERo(e,t,r,s,a){let o=e.request.defaults(s);function g(...p){let f=o.endpoint.merge(...p);if(a.mapToData)return f=Object.assign({},f,{data:f[a.mapToData],[a.mapToData]:void 0}),o(f);if(a.renamed){let[m,y]=a.renamed;e.log.warn(`octokit.${t}.${r}() has been renamed to octokit.${m}.${y}()`)}if(a.deprecated&&e.log.warn(a.deprecated),a.renamedParameters){let m=o.endpoint.merge(...p);for(let[y,B]of Object.entries(a.renamedParameters))y in m&&(e.log.warn(`"${y}" parameter is deprecated for "octokit.${t}.${r}()". Use "${B}" instead`),B in m||(m[B]=m[y]),delete m[y]);return o(m)}return o(...p)}return Object.assign(g,o)}function QWn(e){return{rest:MWn(e)}}QWn.VERSION=OWn;function YWn(e){let t=MWn(e);return{...t,rest:t}}YWn.VERSION=OWn});var $Wn=z((Q7c,qWn)=>{"use strict";var Fnr=Object.defineProperty,BRo=Object.getOwnPropertyDescriptor,vRo=Object.getOwnPropertyNames,SRo=Object.prototype.hasOwnProperty,wRo=(e,t)=>{for(var r in t)Fnr(e,r,{get:t[r],enumerable:!0})},TRo=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of vRo(t))!SRo.call(e,a)&&a!==r&&Fnr(e,a,{get:()=>t[a],enumerable:!(s=BRo(t,a))||s.enumerable});return e},NRo=e=>TRo(Fnr({},"__esModule",{value:!0}),e),JWn={};wRo(JWn,{composePaginateRest:()=>xRo,isPaginatingEndpoint:()=>kRo,paginateRest:()=>zWn,paginatingEndpoints:()=>jWn});qWn.exports=NRo(JWn);var RRo="9.2.1";function DRo(e){if(!e.data)return{...e,data:[]};if(!("total_count"in e.data&&!("url"in e.data)))return e;let r=e.data.incomplete_results,s=e.data.repository_selection,a=e.data.total_count;delete e.data.incomplete_results,delete e.data.repository_selection,delete e.data.total_count;let o=Object.keys(e.data)[0],g=e.data[o];return e.data=g,typeof r<"u"&&(e.data.incomplete_results=r),typeof s<"u"&&(e.data.repository_selection=s),e.data.total_count=a,e}function Znr(e,t,r){let s=typeof t=="function"?t.endpoint(r):e.request.endpoint(t,r),a=typeof t=="function"?t:e.request,o=s.method,g=s.headers,p=s.url;return{[Symbol.asyncIterator]:()=>({async next(){if(!p)return{done:!0};try{let f=await a({method:o,url:p,headers:g}),m=DRo(f);return p=((m.headers.link||"").match(/<([^>]+)>;\s*rel="next"/)||[])[1],{value:m}}catch(f){if(f.status!==409)throw f;return p="",{value:{status:200,headers:{},data:[]}}}}})}}function UWn(e,t,r,s){return typeof r=="function"&&(s=r,r=void 0),KWn(e,[],Znr(e,t,r)[Symbol.asyncIterator](),s)}function KWn(e,t,r,s){return r.next().then(a=>{if(a.done)return t;let o=!1;function g(){o=!0}return t=t.concat(s?s(a.value,g):a.value.data),o?t:KWn(e,t,r,s)})}var xRo=Object.assign(UWn,{iterator:Znr}),jWn=["GET /advisories","GET /app/hook/deliveries","GET /app/installation-requests","GET /app/installations","GET /assignments/{assignment_id}/accepted_assignments","GET /classrooms","GET /classrooms/{classroom_id}/assignments","GET /enterprises/{enterprise}/dependabot/alerts","GET /enterprises/{enterprise}/secret-scanning/alerts","GET /events","GET /gists","GET /gists/public","GET /gists/starred","GET /gists/{gist_id}/comments","GET /gists/{gist_id}/commits","GET /gists/{gist_id}/forks","GET /installation/repositories","GET /issues","GET /licenses","GET /marketplace_listing/plans","GET /marketplace_listing/plans/{plan_id}/accounts","GET /marketplace_listing/stubbed/plans","GET /marketplace_listing/stubbed/plans/{plan_id}/accounts","GET /networks/{owner}/{repo}/events","GET /notifications","GET /organizations","GET /orgs/{org}/actions/cache/usage-by-repository","GET /orgs/{org}/actions/permissions/repositories","GET /orgs/{org}/actions/runners","GET /orgs/{org}/actions/secrets","GET /orgs/{org}/actions/secrets/{secret_name}/repositories","GET /orgs/{org}/actions/variables","GET /orgs/{org}/actions/variables/{name}/repositories","GET /orgs/{org}/blocks","GET /orgs/{org}/code-scanning/alerts","GET /orgs/{org}/codespaces","GET /orgs/{org}/codespaces/secrets","GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories","GET /orgs/{org}/copilot/billing/seats","GET /orgs/{org}/dependabot/alerts","GET /orgs/{org}/dependabot/secrets","GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories","GET /orgs/{org}/events","GET /orgs/{org}/failed_invitations","GET /orgs/{org}/hooks","GET /orgs/{org}/hooks/{hook_id}/deliveries","GET /orgs/{org}/installations","GET /orgs/{org}/invitations","GET /orgs/{org}/invitations/{invitation_id}/teams","GET /orgs/{org}/issues","GET /orgs/{org}/members","GET /orgs/{org}/members/{username}/codespaces","GET /orgs/{org}/migrations","GET /orgs/{org}/migrations/{migration_id}/repositories","GET /orgs/{org}/organization-roles/{role_id}/teams","GET /orgs/{org}/organization-roles/{role_id}/users","GET /orgs/{org}/outside_collaborators","GET /orgs/{org}/packages","GET /orgs/{org}/packages/{package_type}/{package_name}/versions","GET /orgs/{org}/personal-access-token-requests","GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories","GET /orgs/{org}/personal-access-tokens","GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories","GET /orgs/{org}/projects","GET /orgs/{org}/properties/values","GET /orgs/{org}/public_members","GET /orgs/{org}/repos","GET /orgs/{org}/rulesets","GET /orgs/{org}/rulesets/rule-suites","GET /orgs/{org}/secret-scanning/alerts","GET /orgs/{org}/security-advisories","GET /orgs/{org}/teams","GET /orgs/{org}/teams/{team_slug}/discussions","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions","GET /orgs/{org}/teams/{team_slug}/invitations","GET /orgs/{org}/teams/{team_slug}/members","GET /orgs/{org}/teams/{team_slug}/projects","GET /orgs/{org}/teams/{team_slug}/repos","GET /orgs/{org}/teams/{team_slug}/teams","GET /projects/columns/{column_id}/cards","GET /projects/{project_id}/collaborators","GET /projects/{project_id}/columns","GET /repos/{owner}/{repo}/actions/artifacts","GET /repos/{owner}/{repo}/actions/caches","GET /repos/{owner}/{repo}/actions/organization-secrets","GET /repos/{owner}/{repo}/actions/organization-variables","GET /repos/{owner}/{repo}/actions/runners","GET /repos/{owner}/{repo}/actions/runs","GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts","GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs","GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs","GET /repos/{owner}/{repo}/actions/secrets","GET /repos/{owner}/{repo}/actions/variables","GET /repos/{owner}/{repo}/actions/workflows","GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs","GET /repos/{owner}/{repo}/activity","GET /repos/{owner}/{repo}/assignees","GET /repos/{owner}/{repo}/branches","GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations","GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs","GET /repos/{owner}/{repo}/code-scanning/alerts","GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances","GET /repos/{owner}/{repo}/code-scanning/analyses","GET /repos/{owner}/{repo}/codespaces","GET /repos/{owner}/{repo}/codespaces/devcontainers","GET /repos/{owner}/{repo}/codespaces/secrets","GET /repos/{owner}/{repo}/collaborators","GET /repos/{owner}/{repo}/comments","GET /repos/{owner}/{repo}/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/commits","GET /repos/{owner}/{repo}/commits/{commit_sha}/comments","GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls","GET /repos/{owner}/{repo}/commits/{ref}/check-runs","GET /repos/{owner}/{repo}/commits/{ref}/check-suites","GET /repos/{owner}/{repo}/commits/{ref}/status","GET /repos/{owner}/{repo}/commits/{ref}/statuses","GET /repos/{owner}/{repo}/contributors","GET /repos/{owner}/{repo}/dependabot/alerts","GET /repos/{owner}/{repo}/dependabot/secrets","GET /repos/{owner}/{repo}/deployments","GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses","GET /repos/{owner}/{repo}/environments","GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies","GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps","GET /repos/{owner}/{repo}/events","GET /repos/{owner}/{repo}/forks","GET /repos/{owner}/{repo}/hooks","GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries","GET /repos/{owner}/{repo}/invitations","GET /repos/{owner}/{repo}/issues","GET /repos/{owner}/{repo}/issues/comments","GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/issues/events","GET /repos/{owner}/{repo}/issues/{issue_number}/comments","GET /repos/{owner}/{repo}/issues/{issue_number}/events","GET /repos/{owner}/{repo}/issues/{issue_number}/labels","GET /repos/{owner}/{repo}/issues/{issue_number}/reactions","GET /repos/{owner}/{repo}/issues/{issue_number}/timeline","GET /repos/{owner}/{repo}/keys","GET /repos/{owner}/{repo}/labels","GET /repos/{owner}/{repo}/milestones","GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels","GET /repos/{owner}/{repo}/notifications","GET /repos/{owner}/{repo}/pages/builds","GET /repos/{owner}/{repo}/projects","GET /repos/{owner}/{repo}/pulls","GET /repos/{owner}/{repo}/pulls/comments","GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/pulls/{pull_number}/comments","GET /repos/{owner}/{repo}/pulls/{pull_number}/commits","GET /repos/{owner}/{repo}/pulls/{pull_number}/files","GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews","GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments","GET /repos/{owner}/{repo}/releases","GET /repos/{owner}/{repo}/releases/{release_id}/assets","GET /repos/{owner}/{repo}/releases/{release_id}/reactions","GET /repos/{owner}/{repo}/rules/branches/{branch}","GET /repos/{owner}/{repo}/rulesets","GET /repos/{owner}/{repo}/rulesets/rule-suites","GET /repos/{owner}/{repo}/secret-scanning/alerts","GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations","GET /repos/{owner}/{repo}/security-advisories","GET /repos/{owner}/{repo}/stargazers","GET /repos/{owner}/{repo}/subscribers","GET /repos/{owner}/{repo}/tags","GET /repos/{owner}/{repo}/teams","GET /repos/{owner}/{repo}/topics","GET /repositories","GET /repositories/{repository_id}/environments/{environment_name}/secrets","GET /repositories/{repository_id}/environments/{environment_name}/variables","GET /search/code","GET /search/commits","GET /search/issues","GET /search/labels","GET /search/repositories","GET /search/topics","GET /search/users","GET /teams/{team_id}/discussions","GET /teams/{team_id}/discussions/{discussion_number}/comments","GET /teams/{team_id}/discussions/{discussion_number}/comments/{comment_number}/reactions","GET /teams/{team_id}/discussions/{discussion_number}/reactions","GET /teams/{team_id}/invitations","GET /teams/{team_id}/members","GET /teams/{team_id}/projects","GET /teams/{team_id}/repos","GET /teams/{team_id}/teams","GET /user/blocks","GET /user/codespaces","GET /user/codespaces/secrets","GET /user/emails","GET /user/followers","GET /user/following","GET /user/gpg_keys","GET /user/installations","GET /user/installations/{installation_id}/repositories","GET /user/issues","GET /user/keys","GET /user/marketplace_purchases","GET /user/marketplace_purchases/stubbed","GET /user/memberships/orgs","GET /user/migrations","GET /user/migrations/{migration_id}/repositories","GET /user/orgs","GET /user/packages","GET /user/packages/{package_type}/{package_name}/versions","GET /user/public_emails","GET /user/repos","GET /user/repository_invitations","GET /user/social_accounts","GET /user/ssh_signing_keys","GET /user/starred","GET /user/subscriptions","GET /user/teams","GET /users","GET /users/{username}/events","GET /users/{username}/events/orgs/{org}","GET /users/{username}/events/public","GET /users/{username}/followers","GET /users/{username}/following","GET /users/{username}/gists","GET /users/{username}/gpg_keys","GET /users/{username}/keys","GET /users/{username}/orgs","GET /users/{username}/packages","GET /users/{username}/projects","GET /users/{username}/received_events","GET /users/{username}/received_events/public","GET /users/{username}/repos","GET /users/{username}/social_accounts","GET /users/{username}/ssh_signing_keys","GET /users/{username}/starred","GET /users/{username}/subscriptions"];function kRo(e){return typeof e=="string"?jWn.includes(e):!1}function zWn(e){return{paginate:Object.assign(UWn.bind(null,e),{iterator:Znr.bind(null,e)})}}zWn.VERSION=RRo});var t3n=z(LD=>{"use strict";var GRo=LD&&LD.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),FRo=LD&&LD.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),e3n=LD&&LD.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&GRo(t,e,r);return FRo(t,e),t};Object.defineProperty(LD,"__esModule",{value:!0});LD.getOctokitOptions=LD.GitHub=LD.defaults=LD.context=void 0;var ZRo=e3n(rzt()),FAt=e3n(HVn()),LRo=WWn(),VRo=XWn(),WRo=$Wn();LD.context=new ZRo.Context;var Lnr=FAt.getApiBaseUrl();LD.defaults={baseUrl:Lnr,request:{agent:FAt.getProxyAgent(Lnr),fetch:FAt.getProxyFetch(Lnr)}};LD.GitHub=LRo.Octokit.plugin(VRo.restEndpointMethods,WRo.paginateRest).defaults(LD.defaults);function PRo(e,t){let r=Object.assign({},t||{}),s=FAt.getAuthString(e,r);return s&&(r.auth=s),r}LD.getOctokitOptions=PRo});var z2e=z(sM=>{"use strict";var ORo=sM&&sM.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),MRo=sM&&sM.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),QRo=sM&&sM.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&ORo(t,e,r);return MRo(t,e),t};Object.defineProperty(sM,"__esModule",{value:!0});sM.getOctokit=sM.context=void 0;var YRo=QRo(rzt()),r3n=t3n();sM.context=new YRo.Context;function HRo(e,t,...r){let s=r3n.GitHub.plugin(...r);return new s((0,r3n.getOctokitOptions)(e,t))}sM.getOctokit=HRo});function Mnr({onlyFirst:e=!1}={}){let r=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(r,e?void 0:"g")}var A3n=cc(()=>{});function oz(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(JRo,"")}var JRo,pOe=cc(()=>{A3n();JRo=Mnr()});var QAt=z((qjc,MAt)=>{var $3n={};(e=>{"use strict";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(n,c)=>{for(var u in c)t(n,u,{get:c[u],enumerable:!0})},g=(n,c,u,d)=>{if(c&&typeof c=="object"||typeof c=="function")for(let I of s(c))!a.call(n,I)&&I!==u&&t(n,I,{get:()=>c[I],enumerable:!(d=r(c,I))||d.enumerable});return n},p=n=>n,f={};o(f,{ANONYMOUS:()=>Bje,AccessFlags:()=>Hy,AssertionLevel:()=>_l,AssignmentDeclarationKind:()=>qT,AssignmentKind:()=>URe,Associativity:()=>rDe,BreakpointResolver:()=>Eze,BuilderFileEmit:()=>zxt,BuilderProgramKind:()=>ikt,BuilderState:()=>uT,CallHierarchy:()=>e7,CharacterCodes:()=>iG,CheckFlags:()=>OI,CheckMode:()=>Y8e,ClassificationType:()=>D7e,ClassificationTypeNames:()=>uGt,CommentDirectiveType:()=>vn,Comparison:()=>B,CompletionInfoFlags:()=>nGt,CompletionTriggerKind:()=>N7e,Completions:()=>o7,ContainerFlags:()=>SDt,ContextFlags:()=>Cv,Debug:()=>w,DiagnosticCategory:()=>m1,Diagnostics:()=>Z,DocumentHighlights:()=>CFe,ElementFlags:()=>Kh,EmitFlags:()=>y1,EmitHint:()=>Jy,EmitOnly:()=>mg,EndOfLineState:()=>oGt,ExitStatus:()=>rI,ExportKind:()=>aFt,Extension:()=>_1,ExternalEmitHelpers:()=>bS,FileIncludeKind:()=>wo,FilePreprocessingDiagnosticsKind:()=>fg,FileSystemEntryKind:()=>j_,FileWatcherEventKind:()=>Hw,FindAllReferences:()=>Yp,FlattenLevel:()=>$Dt,FlowFlags:()=>Wr,ForegroundColorEscapeSequences:()=>Qxt,FunctionFlags:()=>$Re,GeneratedIdentifierFlags:()=>dc,GetLiteralTextFlags:()=>Uae,GoToDefinition:()=>Kte,HighlightSpanKind:()=>tGt,IdentifierNameMap:()=>Bte,IdentifierNameMultiMap:()=>XDt,ImportKind:()=>oFt,ImportsNotUsedAsValues:()=>Yw,IndentStyle:()=>rGt,IndexFlags:()=>py,IndexKind:()=>BE,InferenceFlags:()=>hv,InferencePriority:()=>Mw,InlayHintKind:()=>eGt,InlayHints:()=>pqe,InternalEmitFlags:()=>vE,InternalSymbolName:()=>uA,IntersectionFlags:()=>zT,InvalidatedProjectKind:()=>Tkt,JSDocParsingMode:()=>fx,JsDoc:()=>mP,JsTyping:()=>kN,JsxEmit:()=>dp,JsxFlags:()=>mS,JsxReferenceKind:()=>hS,LanguageFeatureMinimumTarget:()=>SE,LanguageServiceMode:()=>qkt,LanguageVariant:()=>eN,LexicalEnvironmentFlags:()=>tN,ListFormat:()=>_v,LogLevel:()=>ie,MapCode:()=>fqe,MemberOverrideStatus:()=>gC,ModifierFlags:()=>k0,ModuleDetectionKind:()=>Qw,ModuleInstanceState:()=>BDt,ModuleKind:()=>zh,ModuleResolutionKind:()=>Rb,ModuleSpecifierEnding:()=>XDe,NavigateTo:()=>NFt,NavigationBar:()=>DFt,NewLineKind:()=>yS,NodeBuilderFlags:()=>Pw,NodeCheckFlags:()=>VA,NodeFactoryFlags:()=>She,NodeFlags:()=>EE,NodeResolutionFeatures:()=>ADt,ObjectFlags:()=>Vf,OperationCanceledException:()=>os,OperatorPrecedence:()=>nDe,OrganizeImports:()=>hP,OrganizeImportsMode:()=>T7e,OuterExpressionKinds:()=>qh,OutliningElementsCollector:()=>mqe,OutliningSpanKind:()=>iGt,OutputFileType:()=>sGt,PackageJsonAutoImportPreference:()=>zkt,PackageJsonDependencyGroup:()=>jkt,PatternMatchKind:()=>Yje,PollingInterval:()=>Wa,PollingWatchKind:()=>d2,PragmaKindFlags:()=>yv,PrivateIdentifierKind:()=>Nhe,ProcessLevel:()=>sxt,ProgramUpdateLevel:()=>Vxt,QuotePreference:()=>GGt,RegularExpressionFlags:()=>at,RelationComparisonResult:()=>I1,Rename:()=>rZe,ScriptElementKind:()=>cGt,ScriptElementKindModifier:()=>lGt,ScriptKind:()=>$T,ScriptSnapshot:()=>BGe,ScriptTarget:()=>Db,SemanticClassificationFormat:()=>$kt,SemanticMeaning:()=>gGt,SemicolonPreference:()=>R7e,SignatureCheckMode:()=>H8e,SignatureFlags:()=>Xy,SignatureHelp:()=>h0e,SignatureInfo:()=>jxt,SignatureKind:()=>_S,SmartSelectionRange:()=>yqe,SnippetKind:()=>Eh,StatisticType:()=>Pkt,StructureIsReused:()=>gf,SymbolAccessibility:()=>K_,SymbolDisplay:()=>MZ,SymbolDisplayPartKind:()=>SGe,SymbolFlags:()=>A2,SymbolFormatFlags:()=>C1,SyntaxKind:()=>g2,SyntheticSymbolKind:()=>Ow,Ternary:()=>xR,ThrottledCancellationToken:()=>PZt,TokenClass:()=>aGt,TokenFlags:()=>$t,TransformFlags:()=>xb,TypeFacts:()=>Q8e,TypeFlags:()=>Am,TypeFormatFlags:()=>Qy,TypeMapKind:()=>mv,TypePredicateKind:()=>jp,TypeReferenceSerializationKind:()=>dy,UnionReduction:()=>Nb,UpToDateStatusType:()=>ykt,VarianceFlags:()=>Yy,Version:()=>Dn,VersionRange:()=>Xc,WatchDirectoryFlags:()=>G0,WatchDirectoryKind:()=>h1,WatchFileKind:()=>An,WatchLogLevel:()=>Pxt,WatchType:()=>hm,accessPrivateIdentifier:()=>zDt,addDisposableResourceHelper:()=>Wxe,addEmitFlags:()=>XS,addEmitHelper:()=>nY,addEmitHelpers:()=>EN,addInternalEmitFlags:()=>eY,addNodeFactoryPatcher:()=>_le,addObjectAllocatorPatcher:()=>pKe,addRange:()=>ai,addRelatedInfo:()=>eg,addSyntheticLeadingComment:()=>i4,addSyntheticTrailingComment:()=>Ele,addToSeen:()=>R2,advancedAsyncSuperHelper:()=>KS,affectsDeclarationPathOptionDeclarations:()=>kRt,affectsEmitOptionDeclarations:()=>xRt,allKeysStartWithDot:()=>Tke,altDirectorySeparator:()=>AC,and:()=>uh,append:()=>Hr,appendIfUnique:()=>sg,arrayFrom:()=>on,arrayIsEqualTo:()=>Cn,arrayIsHomogeneous:()=>txe,arrayIsSorted:()=>nn,arrayOf:()=>og,arrayReverseIterator:()=>Zu,arrayToMap:()=>cA,arrayToMultiMap:()=>No,arrayToNumericMap:()=>HA,arraysEqual:()=>Je,assertType:()=>wb,assign:()=>Bo,assignHelper:()=>hxe,asyncDelegator:()=>yxe,asyncGeneratorHelper:()=>_xe,asyncSuperHelper:()=>Nle,asyncValues:()=>bxe,attachFileToDiagnostics:()=>RZ,awaitHelper:()=>N6,awaiterHelper:()=>Bxe,base64decode:()=>yDe,base64encode:()=>i6,binarySearch:()=>Lg,binarySearchKey:()=>cf,bindSourceFile:()=>wDt,breakIntoCharacterSpans:()=>yFt,breakIntoWordSpans:()=>bFt,buildLinkParts:()=>QGt,buildOpts:()=>zhe,buildOverload:()=>AHr,bundlerModuleNameResolver:()=>dDt,canBeConvertedToAsync:()=>jje,canHaveDecorators:()=>pY,canHaveExportModifier:()=>Xee,canHaveFlowNode:()=>gee,canHaveIllegalDecorators:()=>$Ke,canHaveIllegalModifiers:()=>dRt,canHaveIllegalType:()=>jDr,canHaveIllegalTypeParameters:()=>ARt,canHaveJSDoc:()=>Aee,canHaveLocals:()=>Tv,canHaveModifiers:()=>ew,canHaveSymbol:()=>B2,canIncludeBindAndCheckDiagnsotics:()=>Hee,canJsonReportNoInputFiles:()=>Qle,canProduceDiagnostics:()=>Mke,canUsePropertyAccess:()=>hhe,canWatchAffectingLocation:()=>Akt,canWatchAtTypes:()=>gkt,canWatchDirectoryOrFile:()=>oGe,cartesianProduct:()=>Ef,cast:()=>ps,chainBundle:()=>lT,chainDiagnosticMessages:()=>su,changeAnyExtension:()=>S1,changeCompilerHostLikeToUseCache:()=>cue,changeExtension:()=>BG,changeFullExtension:()=>Iy,changesAffectModuleResolution:()=>wB,changesAffectingProgramStructure:()=>N$,characterToRegularExpressionFlag:()=>dA,childIsDecorated:()=>Z8,classElementOrClassElementParameterIsDecorated:()=>ame,classHasClassThisAssignment:()=>o6e,classHasDeclaredOrExplicitlyAssignedName:()=>a6e,classHasExplicitlyAssignedName:()=>Wke,classOrConstructorParameterIsDecorated:()=>Tx,classPrivateFieldGetHelper:()=>Zxe,classPrivateFieldInHelper:()=>Vxe,classPrivateFieldSetHelper:()=>Lxe,classicNameResolver:()=>bDt,classifier:()=>YZt,cleanExtendedConfigCache:()=>jke,clear:()=>Ur,clearMap:()=>Y0,clearSharedExtendedConfigFileWatcher:()=>_6e,climbPastPropertyAccess:()=>NGe,climbPastPropertyOrElementAccess:()=>fGt,clone:()=>Vd,cloneCompilerOptions:()=>j7e,closeFileWatcher:()=>RB,closeFileWatcherOf:()=>ZB,codefix:()=>d0,collapseTextChangeRangesAcrossMultipleVersions:()=>pt,collectExternalModuleInfo:()=>r6e,combine:()=>Ws,combinePaths:()=>xo,commandLineOptionOfCustomType:()=>VRt,commentPragmas:()=>rN,commonOptionsWithBuild:()=>cke,commonPackageFolders:()=>QDe,compact:()=>Vn,compareBooleans:()=>RA,compareDataObjects:()=>Pce,compareDiagnostics:()=>g6,compareDiagnosticsSkipRelatedInformation:()=>Xce,compareEmitHelpers:()=>Sle,compareNumberOfDirectorySeparators:()=>Qee,comparePaths:()=>Ah,comparePathsCaseInsensitive:()=>dC,comparePathsCaseSensitive:()=>Xw,comparePatternKeys:()=>W8e,compareProperties:()=>Zl,compareStringsCaseInsensitive:()=>fs,compareStringsCaseInsensitiveEslintCompatible:()=>Ao,compareStringsCaseSensitive:()=>Do,compareStringsCaseSensitiveUI:()=>Li,compareTextSpans:()=>Wp,compareValues:()=>Xl,compileOnSaveCommandLineOption:()=>oke,compilerOptionsAffectDeclarationPath:()=>PDe,compilerOptionsAffectEmit:()=>zce,compilerOptionsAffectSemanticDiagnostics:()=>WDe,compilerOptionsDidYouMeanDiagnostics:()=>Ake,compilerOptionsIndicateEsModules:()=>nje,compose:()=>Tm,computeCommonSourceDirectoryOfFilenames:()=>Oxt,computeLineAndCharacterOfPosition:()=>Mp,computeLineOfPosition:()=>jy,computeLineStarts:()=>pc,computePositionOfLineAndCharacter:()=>Lu,computeSignature:()=>skt,computeSignatureWithDiagnostics:()=>M6e,computeSuggestionDiagnostics:()=>Jje,computedOptions:()=>kC,concatenate:()=>vi,concatenateDiagnosticMessageChains:()=>FDe,configDirTemplateSubstitutionOptions:()=>ZRt,configDirTemplateSubstitutionWatchOptions:()=>LRt,consumesNodeCoreModules:()=>aFe,contains:()=>Ue,containsIgnoredPath:()=>y6,containsObjectRestOrSpread:()=>Jhe,containsParseError:()=>HR,containsPath:()=>Bg,convertCompilerOptionsForTelemetry:()=>eDt,convertCompilerOptionsFromJson:()=>okr,convertJsonOption:()=>I4,convertToBase64:()=>Fce,convertToJson:()=>e_e,convertToObject:()=>JRt,convertToOptionsWithAbsolutePaths:()=>Ike,convertToRelativePath:()=>TE,convertToTSConfig:()=>y8e,convertTypeAcquisitionFromJson:()=>akr,copyComments:()=>b4,copyEntries:()=>_8,copyLeadingComments:()=>Pte,copyProperties:()=>Os,copyTrailingAsLeadingComments:()=>U_e,copyTrailingComments:()=>Eue,couldStartTrivia:()=>sN,countWhere:()=>ft,createAbstractBuilder:()=>uFr,createAccessorPropertyBackingField:()=>r8e,createAccessorPropertyGetRedirector:()=>yRt,createAccessorPropertySetRedirector:()=>bRt,createBaseNodeFactory:()=>lxe,createBinaryExpressionTrampoline:()=>nke,createBindingHelper:()=>Tle,createBuildInfo:()=>Xke,createBuilderProgram:()=>Q6e,createBuilderProgramUsingProgramBuildInfo:()=>lkt,createBuilderStatusReporter:()=>fGe,createCacheWithRedirects:()=>D8e,createCacheableExportInfoMap:()=>Fje,createCachedDirectoryStructureHost:()=>Uke,createClassNamedEvaluationHelperBlock:()=>ixt,createClassThisAssignmentBlock:()=>rxt,createClassifier:()=>QZr,createCommentDirectivesMap:()=>Jae,createCompilerDiagnostic:()=>ff,createCompilerDiagnosticForInvalidCustomType:()=>WRt,createCompilerDiagnosticFromMessageChain:()=>Hce,createCompilerHost:()=>Mxt,createCompilerHostFromProgramHost:()=>l7e,createCompilerHostWorker:()=>zke,createDetachedDiagnostic:()=>HQ,createDiagnosticCollection:()=>hG,createDiagnosticForFileFromMessageChain:()=>ne,createDiagnosticForNode:()=>Us,createDiagnosticForNodeArray:()=>P3,createDiagnosticForNodeArrayFromMessageChain:()=>kX,createDiagnosticForNodeFromMessageChain:()=>GS,createDiagnosticForNodeInSourceFile:()=>Lb,createDiagnosticForRange:()=>ze,createDiagnosticMessageChainFromDiagnostic:()=>Ie,createDiagnosticReporter:()=>X6,createDocumentPositionMapper:()=>YDt,createDocumentRegistry:()=>uFt,createDocumentRegistryInternal:()=>Oje,createEmitAndSemanticDiagnosticsBuilderProgram:()=>J6e,createEmitHelperFactory:()=>Rhe,createEmptyExports:()=>Phe,createEvaluator:()=>Ehe,createExpressionForJsxElement:()=>sRt,createExpressionForJsxFragment:()=>oRt,createExpressionForObjectLiteralElementLike:()=>aRt,createExpressionForPropertyName:()=>JKe,createExpressionFromEntityName:()=>Ohe,createExternalHelpersImportDeclarationIfNeeded:()=>jKe,createFileDiagnostic:()=>Im,createFileDiagnosticFromMessageChain:()=>R8,createFlowNode:()=>nD,createForOfBindingStatement:()=>XKe,createFutureSourceFile:()=>fFe,createGetCanonicalFileName:()=>tA,createGetIsolatedDeclarationErrors:()=>Txt,createGetSourceFile:()=>v6e,createGetSymbolAccessibilityDiagnosticForNode:()=>FZ,createGetSymbolAccessibilityDiagnosticForNodeName:()=>wxt,createGetSymbolWalker:()=>TDt,createIncrementalCompilerHost:()=>pGe,createIncrementalProgram:()=>_kt,createJsxFactoryExpression:()=>HKe,createLanguageService:()=>OZt,createLanguageServiceSourceFile:()=>kFe,createMemberAccessForPropertyName:()=>p4,createModeAwareCache:()=>hte,createModeAwareCacheKey:()=>Jle,createModuleNotFoundChain:()=>wX,createModuleResolutionCache:()=>_te,createModuleResolutionLoader:()=>k6e,createModuleResolutionLoaderUsingGlobalCache:()=>Ikt,createModuleSpecifierResolutionHost:()=>j6,createMultiMap:()=>ec,createNameResolver:()=>S6,createNodeConverters:()=>zee,createNodeFactory:()=>dV,createOptionNameMap:()=>uke,createOverload:()=>Gqe,createPackageJsonImportFilter:()=>Ote,createPackageJsonInfo:()=>wje,createParenthesizerRules:()=>uxe,createPatternMatcher:()=>fFt,createPrinter:()=>SV,createPrinterWithDefaults:()=>Zxt,createPrinterWithRemoveComments:()=>h4,createPrinterWithRemoveCommentsNeverAsciiEscape:()=>Lxt,createPrinterWithRemoveCommentsOmitTrailingSemicolon:()=>Jke,createProgram:()=>E_e,createProgramHost:()=>u7e,createPropertyNameNodeForIdentifierOrLiteral:()=>Ale,createQueue:()=>NA,createRange:()=>F1,createRedirectedBuilderProgram:()=>X6e,createResolutionCache:()=>K6e,createRuntimeTypeSerializer:()=>uxt,createScanner:()=>Ft,createSemanticDiagnosticsBuilderProgram:()=>lFr,createSet:()=>Ud,createSolutionBuilder:()=>vkt,createSolutionBuilderHost:()=>Ekt,createSolutionBuilderWithWatch:()=>Skt,createSolutionBuilderWithWatchHost:()=>Bkt,createSortedArray:()=>jr,createSourceFile:()=>L6,createSourceMapGenerator:()=>VDt,createSourceMapSource:()=>DKe,createSuperAccessVariableStatement:()=>Oke,createSymbolTable:()=>Du,createSymlinkCache:()=>rhe,createSyntacticTypeNodeBuilder:()=>Jkt,createSystemWatchFunctions:()=>Sh,createTextChange:()=>P_e,createTextChangeFromStartLength:()=>QGe,createTextChangeRange:()=>Ce,createTextRangeFromNode:()=>$7e,createTextRangeFromSpan:()=>MGe,createTextSpan:()=>bd,createTextSpanFromBounds:()=>Wd,createTextSpanFromNode:()=>Ey,createTextSpanFromRange:()=>TV,createTextSpanFromStringLiteralLikeContent:()=>q7e,createTextWriter:()=>Bee,createTokenRange:()=>Vce,createTypeChecker:()=>ZDt,createTypeReferenceDirectiveResolutionCache:()=>vke,createTypeReferenceResolutionLoader:()=>qke,createWatchCompilerHost:()=>_Fr,createWatchCompilerHostOfConfigFile:()=>g7e,createWatchCompilerHostOfFilesAndCompilerOptions:()=>A7e,createWatchFactory:()=>c7e,createWatchHost:()=>a7e,createWatchProgram:()=>d7e,createWatchStatusReporter:()=>z6e,createWriteFileMeasuringIO:()=>S6e,declarationNameToString:()=>xd,decodeMappings:()=>$8e,decodedTextSpanIntersectsWith:()=>e0,decorateHelper:()=>T6,deduplicate:()=>TA,defaultIncludeSpec:()=>B8e,defaultInitCompilerOptions:()=>p8e,defaultMaximumTruncationLength:()=>_Q,diagnosticCategoryName:()=>jh,diagnosticToString:()=>EY,diagnosticsEqualityComparer:()=>Jce,directoryProbablyExists:()=>k1,directorySeparator:()=>qu,displayPart:()=>Qb,displayPartsToString:()=>o0e,disposeEmitNodes:()=>yle,disposeResourcesHelper:()=>Pxe,documentSpansEqual:()=>uje,dumpTracingLegend:()=>uf,elementAt:()=>ts,elideNodes:()=>_Rt,emitComments:()=>dDe,emitDetachedComments:()=>pDe,emitFiles:()=>m6e,emitFilesAndReportErrors:()=>uGe,emitFilesAndReportErrorsAndGetExitStatus:()=>o7e,emitModuleKindIsNonNodeESM:()=>Kce,emitNewLineBeforeLeadingCommentOfPosition:()=>Gme,emitNewLineBeforeLeadingComments:()=>gDe,emitNewLineBeforeLeadingCommentsOfPosition:()=>ADe,emitResolverSkipsTypeChecking:()=>C6e,emitSkippedWithNoDiagnostics:()=>W6e,emptyArray:()=>v,emptyFileSystemEntries:()=>ghe,emptyMap:()=>G,emptyOptions:()=>Lv,emptySet:()=>T,endsWith:()=>pl,ensurePathIsNonModuleName:()=>Ky,ensureScriptKind:()=>ile,ensureTrailingDirectorySeparator:()=>AA,entityNameToString:()=>t0,enumerateInsertsAndDeletes:()=>PI,equalOwnProperties:()=>$g,equateStringsCaseInsensitive:()=>sp,equateStringsCaseSensitive:()=>lm,equateValues:()=>Og,esDecorateHelper:()=>Cxe,escapeJsxAttributeString:()=>Tme,escapeLeadingUnderscores:()=>Rd,escapeNonAsciiString:()=>Ece,escapeSnippetText:()=>AV,escapeString:()=>tT,escapeTemplateSubstitution:()=>Sme,evaluatorResult:()=>UC,every:()=>he,executeCommandLine:()=>tZr,expandPreOrPostfixIncrementOrDecrementExpression:()=>zxe,explainFiles:()=>t7e,explainIfFileIsRedirectAndImpliedFormat:()=>r7e,exportAssignmentIsAlias:()=>H3,exportStarHelper:()=>Fxe,expressionResultIsUnused:()=>nxe,extend:()=>bA,extendsHelper:()=>vxe,extensionFromPath:()=>m6,extensionIsTS:()=>cle,extensionsNotSupportingExtensionlessResolution:()=>Oee,externalHelpersModuleNameText:()=>vx,factory:()=>_e,fileExtensionIs:()=>gd,fileExtensionIsOneOf:()=>pp,fileIncludeReasonToDiagnostics:()=>s7e,fileShouldUseJavaScriptRequire:()=>Gje,filter:()=>Gt,filterMutate:()=>er,filterSemanticDiagnostics:()=>rGe,find:()=>be,findAncestor:()=>Si,findBestPatternMatch:()=>ly,findChildOfKind:()=>Od,findComputedPropertyNameCacheAssignment:()=>ike,findConfigFile:()=>E6e,findConstructorDeclaration:()=>Uee,findContainingList:()=>GGe,findDiagnosticForNode:()=>tFt,findFirstNonJsxWhitespaceToken:()=>_Gt,findIndex:()=>ke,findLast:()=>Te,findLastIndex:()=>x,findListItemInfo:()=>hGt,findMap:()=>et,findModifier:()=>Lte,findNextToken:()=>yY,findPackageJson:()=>$Gt,findPackageJsons:()=>Sje,findPrecedingMatchingToken:()=>PGe,findPrecedingToken:()=>_m,findSuperStatementIndexPath:()=>Zke,findTokenOnLeftOfPosition:()=>LGe,findUseStrictPrologue:()=>KKe,first:()=>$s,firstDefined:()=>le,firstDefinedIterator:()=>ae,firstIterator:()=>xl,firstOrOnly:()=>Dje,firstOrUndefined:()=>$i,firstOrUndefinedIterator:()=>Ga,fixupCompilerOptions:()=>zje,flatMap:()=>Fr,flatMapIterator:()=>Or,flatMapToMutable:()=>$r,flatten:()=>or,flattenCommaList:()=>ERt,flattenDestructuringAssignment:()=>m4,flattenDestructuringBinding:()=>CY,flattenDiagnosticMessageText:()=>xN,forEach:()=>X,forEachAncestor:()=>R$,forEachAncestorDirectory:()=>iI,forEachChild:()=>mu,forEachChildRecursively:()=>Z6,forEachEmittedFile:()=>d6e,forEachEnclosingBlockScopeContainer:()=>H$,forEachEntry:()=>JC,forEachExternalModuleToImportFrom:()=>Lje,forEachImportClauseDeclaration:()=>HRe,forEachKey:()=>$w,forEachLeadingCommentRange:()=>vf,forEachNameInAccessChainWalkingLeft:()=>DDe,forEachNameOfDefaultExport:()=>Vje,forEachPropertyAssignment:()=>GX,forEachResolvedProjectReference:()=>F6e,forEachReturnStatement:()=>wx,forEachRight:()=>U,forEachTrailingCommentRange:()=>Ix,forEachTsConfigPropArray:()=>U$,forEachUnique:()=>Aje,forEachYieldExpression:()=>TRe,forSomeAncestorDirectory:()=>NDe,formatColorAndReset:()=>mY,formatDiagnostic:()=>w6e,formatDiagnostics:()=>OGr,formatDiagnosticsWithColorAndContext:()=>Xxt,formatGeneratedName:()=>iP,formatGeneratedNamePart:()=>fte,formatLocation:()=>T6e,formatMessage:()=>XQ,formatStringFromArgs:()=>fN,formatting:()=>jC,fullTripleSlashAMDReferencePathRegEx:()=>wRe,fullTripleSlashReferencePathRegEx:()=>SRe,generateDjb2Hash:()=>Bh,generateTSConfig:()=>KRt,generatorHelper:()=>xxe,getAdjustedReferenceLocation:()=>Y7e,getAdjustedRenameLocation:()=>ZGe,getAliasDeclarationFromName:()=>Cme,getAllAccessorDeclarations:()=>xx,getAllDecoratorsOfClass:()=>i6e,getAllDecoratorsOfClassElement:()=>Vke,getAllJSDocTags:()=>o8,getAllJSDocTagsOfKind:()=>QCe,getAllKeys:()=>Hu,getAllProjectOutputs:()=>Hke,getAllSuperTypeNodes:()=>J8,getAllowJSCompilerOption:()=>bG,getAllowSyntheticDefaultImports:()=>JQ,getAncestor:()=>CG,getAnyExtensionFromPath:()=>wE,getAreDeclarationMapsEnabled:()=>Uce,getAssignedExpandoInitializer:()=>RQ,getAssignedName:()=>cQ,getAssignedNameOfIdentifier:()=>nue,getAssignmentDeclarationKind:()=>CI,getAssignmentDeclarationPropertyAccessKind:()=>oee,getAssignmentTargetKind:()=>Nx,getAutomaticTypeDirectiveNames:()=>Eke,getBaseFileName:()=>xA,getBinaryOperatorPrecedence:()=>bee,getBuildInfo:()=>h6e,getBuildInfoFileVersionMap:()=>H6e,getBuildInfoText:()=>Gxt,getBuildOrderFromAnyBuildOrder:()=>w_e,getBuilderCreationParameters:()=>iGe,getBuilderFileEmit:()=>wV,getCanonicalDiagnostic:()=>Mt,getCheckFlags:()=>aI,getClassExtendsHeritageElement:()=>rV,getClassLikeDeclarationOfSymbol:()=>DB,getCombinedLocalAndExportSymbolFlags:()=>PQ,getCombinedModifierFlags:()=>Nh,getCombinedNodeFlags:()=>qy,getCombinedNodeFlagsAlwaysIncludeJSDoc:()=>b2,getCommentRange:()=>JS,getCommonSourceDirectory:()=>aue,getCommonSourceDirectoryOfConfig:()=>H6,getCompilerOptionValue:()=>qce,getCompilerOptionsDiffValue:()=>URt,getConditions:()=>EV,getConfigFileParsingDiagnostics:()=>hY,getConstantValue:()=>o4,getContainerFlags:()=>O8e,getContainerNode:()=>y4,getContainingClass:()=>Um,getContainingClassExcludingClassDecorators:()=>oce,getContainingClassStaticBlock:()=>ZRe,getContainingFunction:()=>Wb,getContainingFunctionDeclaration:()=>sce,getContainingFunctionOrClassStaticBlock:()=>K$,getContainingNodeArray:()=>ixe,getContainingObjectLiteralElement:()=>a0e,getContextualTypeFromParent:()=>$Ge,getContextualTypeFromParentOrAncestorTypeNode:()=>FGe,getCurrentTime:()=>S_e,getDeclarationDiagnostics:()=>Nxt,getDeclarationEmitExtensionForPath:()=>Sce,getDeclarationEmitOutputFilePath:()=>aDe,getDeclarationEmitOutputFilePathWorker:()=>vce,getDeclarationFileExtension:()=>o8e,getDeclarationFromName:()=>X8,getDeclarationModifierFlagsFromSymbol:()=>L1,getDeclarationOfKind:()=>zd,getDeclarationsOfKind:()=>Mae,getDeclaredExpandoInitializer:()=>O8,getDecorators:()=>Uw,getDefaultCompilerOptions:()=>xFe,getDefaultFormatCodeSettings:()=>vGe,getDefaultLibFileName:()=>Ig,getDefaultLibFilePath:()=>MZt,getDefaultLikeExportInfo:()=>IFe,getDefaultLikeExportNameFromDeclaration:()=>lFe,getDiagnosticText:()=>ab,getDiagnosticsWithinSpan:()=>rFt,getDirectoryPath:()=>aa,getDirectoryToWatchFailedLookupLocation:()=>U6e,getDirectoryToWatchFailedLookupLocationFromTypeRoot:()=>pkt,getDocumentPositionMapper:()=>Xje,getDocumentSpansEqualityComparer:()=>gje,getESModuleInterop:()=>IN,getEditsForFileRename:()=>AFt,getEffectiveBaseTypeNode:()=>Dv,getEffectiveConstraintOfTypeParameter:()=>Kw,getEffectiveContainerForJSDocTemplateTag:()=>Ice,getEffectiveImplementsTypeNodes:()=>MX,getEffectiveInitializer:()=>nee,getEffectiveJSDocHost:()=>SZ,getEffectiveModifierFlags:()=>N_,getEffectiveModifierFlagsAlwaysIncludeJSDoc:()=>xce,getEffectiveModifierFlagsNoCache:()=>CDe,getEffectiveReturnTypeNode:()=>rb,getEffectiveSetAccessorTypeAnnotationNode:()=>uDe,getEffectiveTypeAnnotationNode:()=>fC,getEffectiveTypeParameterDeclarations:()=>R1,getEffectiveTypeRoots:()=>Xle,getElementOrPropertyAccessArgumentExpressionOrName:()=>Q8,getElementOrPropertyAccessName:()=>UR,getElementsOfBindingOrAssignmentPattern:()=>pte,getEmitDeclarations:()=>LE,getEmitFlags:()=>Sg,getEmitHelpers:()=>Ble,getEmitModuleDetectionKind:()=>ZDe,getEmitModuleKind:()=>R_,getEmitModuleResolutionKind:()=>s0,getEmitScriptTarget:()=>iA,getEmitStandardClassFields:()=>ehe,getEnclosingBlockScopeContainer:()=>S2,getEnclosingContainer:()=>N8,getEncodedSemanticClassifications:()=>Wje,getEncodedSyntacticClassifications:()=>Pje,getEndLinePosition:()=>TX,getEntityNameFromTypeNode:()=>z$,getEntrypointsFromPackageJsonInfo:()=>Z8e,getErrorCountForSummary:()=>cGe,getErrorSpanForNode:()=>Qi,getErrorSummaryText:()=>$6e,getEscapedTextOfIdentifierOrLiteral:()=>j8,getEscapedTextOfJsxAttributeName:()=>B6,getEscapedTextOfJsxNamespacedName:()=>D2,getExpandoInitializer:()=>BZ,getExportAssignmentExpression:()=>mme,getExportInfoMap:()=>$_e,getExportNeedsImportStarHelper:()=>HDt,getExpressionAssociativity:()=>Bme,getExpressionPrecedence:()=>mG,getExternalHelpersModuleName:()=>eke,getExternalModuleImportEqualsDeclarationExpression:()=>L8,getExternalModuleName:()=>DQ,getExternalModuleNameFromDeclaration:()=>sDe,getExternalModuleNameFromPath:()=>Rme,getExternalModuleNameLiteral:()=>F6,getExternalModuleRequireArgument:()=>lme,getFallbackOptions:()=>h_e,getFileEmitOutput:()=>Kxt,getFileMatcherPatterns:()=>nle,getFileNamesFromConfigSpecs:()=>Yle,getFileWatcherEventKind:()=>bv,getFilesInErrorForSummary:()=>lGe,getFirstConstructorWithBody:()=>dN,getFirstIdentifier:()=>ib,getFirstNonSpaceCharacterPosition:()=>XGt,getFirstProjectOutput:()=>I6e,getFixableErrorSpanExpression:()=>Nje,getFormatCodeSettingsForWriting:()=>dFe,getFullWidth:()=>SX,getFunctionFlags:()=>YI,getHeritageClause:()=>Cee,getHostSignatureFromJSDoc:()=>vZ,getIdentifierAutoGenerate:()=>Ixe,getIdentifierGeneratedImportReference:()=>$d,getIdentifierTypeArguments:()=>xZ,getImmediatelyInvokedFunctionExpression:()=>z9,getImpliedNodeFormatForFile:()=>b_e,getImpliedNodeFormatForFileWorker:()=>tGe,getImportNeedsImportDefaultHelper:()=>t6e,getImportNeedsImportStarHelper:()=>Gke,getIndentSize:()=>JX,getIndentString:()=>XX,getInferredLibraryNameResolveFrom:()=>eGe,getInitializedVariables:()=>c6,getInitializerOfBinaryExpression:()=>fce,getInitializerOfBindingOrAssignmentElement:()=>Yhe,getInterfaceBaseTypeNodes:()=>U8,getInternalEmitFlags:()=>kE,getInvokedExpression:()=>G8,getIsolatedModules:()=>ZE,getJSDocAugmentsTag:()=>s8,getJSDocClassTag:()=>ss,getJSDocCommentRanges:()=>ime,getJSDocCommentsAndTags:()=>Ame,getJSDocDeprecatedTag:()=>Zb,getJSDocDeprecatedTagNoCache:()=>bB,getJSDocEnumTag:()=>lG,getJSDocHost:()=>eV,getJSDocImplementsTags:()=>mx,getJSDocOverloadTags:()=>pme,getJSDocOverrideTagNoCache:()=>N1,getJSDocParameterTags:()=>WR,getJSDocParameterTagsNoCache:()=>r8,getJSDocPrivateTag:()=>La,getJSDocPrivateTagNoCache:()=>gc,getJSDocProtectedTag:()=>IA,getJSDocProtectedTagNoCache:()=>Dd,getJSDocPublicTag:()=>jo,getJSDocPublicTagNoCache:()=>ea,getJSDocReadonlyTag:()=>pm,getJSDocReadonlyTagNoCache:()=>T1,getJSDocReturnTag:()=>P9,getJSDocReturnType:()=>uX,getJSDocRoot:()=>OX,getJSDocSatisfiesExpressionType:()=>yhe,getJSDocSatisfiesTag:()=>d$,getJSDocTags:()=>bx,getJSDocTagsNoCache:()=>MCe,getJSDocTemplateTag:()=>OCe,getJSDocThisTag:()=>hx,getJSDocType:()=>yx,getJSDocTypeAliasName:()=>qKe,getJSDocTypeAssertionType:()=>Wle,getJSDocTypeParameterDeclarations:()=>See,getJSDocTypeParameterTags:()=>i8,getJSDocTypeParameterTagsNoCache:()=>uQ,getJSDocTypeTag:()=>_x,getJSXImplicitImportBase:()=>$ce,getJSXRuntimeImport:()=>ele,getJSXTransformEnabled:()=>Wee,getKeyForCompilerOptions:()=>R8e,getLanguageVariant:()=>Zee,getLastChild:()=>Mce,getLeadingCommentRanges:()=>Gb,getLeadingCommentRangesOfNode:()=>nme,getLeftmostAccessExpression:()=>QQ,getLeftmostExpression:()=>YQ,getLibraryNameFromLibFileName:()=>Z6e,getLineAndCharacterOfPosition:()=>Ll,getLineInfo:()=>q8e,getLineOfLocalPosition:()=>q8,getLineOfLocalPositionFromLineMap:()=>J3,getLineStartPositionForPosition:()=>Vv,getLineStarts:()=>Rc,getLinesBetweenPositionAndNextNonWhitespaceCharacter:()=>wDe,getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter:()=>SDe,getLinesBetweenPositions:()=>Bv,getLinesBetweenRangeEndAndRangeStart:()=>Yme,getLinesBetweenRangeEndPositions:()=>vDe,getLiteralText:()=>Z$,getLocalNameForExternalImport:()=>dte,getLocalSymbolForExportDefault:()=>n6,getLocaleSpecificMessage:()=>eu,getLocaleTimeString:()=>v_e,getMappedContextSpan:()=>dje,getMappedDocumentSpan:()=>KGe,getMappedLocation:()=>_ue,getMatchedFileSpec:()=>n7e,getMatchedIncludeSpec:()=>i7e,getMeaningFromDeclaration:()=>wGe,getMeaningFromLocation:()=>_4,getMembersOfDeclaration:()=>NRe,getModeForFileReference:()=>__e,getModeForResolutionAtIndex:()=>Jxt,getModeForUsageLocation:()=>R6e,getModifiedTime:()=>hd,getModifiers:()=>lN,getModuleInstanceState:()=>FG,getModuleNameStringLiteralAt:()=>B_e,getModuleSpecifierEndingPreference:()=>UDe,getModuleSpecifierResolverHost:()=>ije,getNameForExportedSymbol:()=>cFe,getNameFromImportAttribute:()=>Cle,getNameFromIndexInfo:()=>ece,getNameFromPropertyName:()=>M_e,getNameOfAccessExpression:()=>Kme,getNameOfCompilerOptionValue:()=>b8e,getNameOfDeclaration:()=>vl,getNameOfExpando:()=>ume,getNameOfJSDocTypedef:()=>cN,getNameOfScriptTarget:()=>Vee,getNameOrArgument:()=>see,getNameTable:()=>bze,getNamesForExportedSymbol:()=>nFt,getNamespaceDeclarationNode:()=>WX,getNewLineCharacter:()=>G1,getNewLineKind:()=>q_e,getNewLineOrDefaultFromHost:()=>WZ,getNewTargetContainer:()=>VRe,getNextJSDocCommentLocation:()=>dme,getNodeChildren:()=>QKe,getNodeForGeneratedName:()=>Xhe,getNodeId:()=>sd,getNodeKind:()=>_Y,getNodeModifiers:()=>Cue,getNodeModulePathParts:()=>dle,getNonAssignedNameOfDeclaration:()=>Jw,getNonAssignmentOperatorForCompoundAssignment:()=>eue,getNonAugmentationDeclaration:()=>O$,getNonDecoratorTokenPosOfNode:()=>F$,getNormalizedAbsolutePath:()=>Oc,getNormalizedAbsolutePathWithoutRoot:()=>SS,getNormalizedPathComponents:()=>gh,getObjectFlags:()=>sa,getOperator:()=>bce,getOperatorAssociativity:()=>vme,getOperatorPrecedence:()=>yee,getOptionFromName:()=>I8e,getOptionsForLibraryResolution:()=>x8e,getOptionsNameMap:()=>Cte,getOrCreateEmitNode:()=>xh,getOrCreateExternalHelpersModuleNameIfNeeded:()=>gRt,getOrUpdate:()=>we,getOriginalNode:()=>Tp,getOriginalNodeId:()=>by,getOriginalSourceFile:()=>eKe,getOutputDeclarationFileName:()=>Ste,getOutputDeclarationFileNameWorker:()=>p6e,getOutputExtension:()=>Yke,getOutputFileNames:()=>WGr,getOutputJSFileNameWorker:()=>f6e,getOutputPathsFor:()=>oue,getOutputPathsForBundle:()=>Qke,getOwnEmitOutputFilePath:()=>oDe,getOwnKeys:()=>kl,getOwnValues:()=>us,getPackageJsonInfo:()=>BV,getPackageJsonTypesVersionsPaths:()=>bke,getPackageJsonsVisibleToFile:()=>eFt,getPackageNameFromTypesPackageName:()=>jle,getPackageScopeForPath:()=>Kle,getParameterSymbolFromJSDoc:()=>dee,getParameterTypeNode:()=>SKe,getParentNodeInSpan:()=>Y_e,getParseTreeNode:()=>jc,getParsedCommandLineOfConfigFile:()=>qhe,getPathComponents:()=>Ad,getPathComponentsRelativeTo:()=>C2,getPathFromPathComponents:()=>fy,getPathUpdater:()=>Qje,getPathsBasePath:()=>wce,getPatternFromSpec:()=>HDe,getPendingEmitKind:()=>Rte,getPositionOfLineAndCharacter:()=>Xu,getPossibleGenericSignatures:()=>X7e,getPossibleOriginalInputExtensionForExtension:()=>cDe,getPossibleTypeArgumentsInfo:()=>J7e,getPreEmitDiagnostics:()=>PGr,getPrecedingNonSpaceCharacterPosition:()=>zGe,getPrivateIdentifier:()=>s6e,getProperties:()=>n6e,getProperty:()=>Rt,getPropertyArrayElementValue:()=>FRe,getPropertyAssignmentAliasLikeExpression:()=>qRe,getPropertyNameForPropertyNameNode:()=>nV,getPropertyNameForUniqueESSymbol:()=>qUe,getPropertyNameFromType:()=>k2,getPropertyNameOfBindingOrAssignmentElement:()=>zKe,getPropertySymbolFromBindingElement:()=>UGe,getPropertySymbolsFromContextualType:()=>GFe,getQuoteFromPreference:()=>oje,getQuotePreference:()=>W2,getRangesWhere:()=>ga,getRefactorContextSpan:()=>z6,getReferencedFileLocation:()=>uue,getRegexFromPattern:()=>EG,getRegularExpressionForWildcard:()=>p6,getRegularExpressionsForWildcards:()=>tle,getRelativePathFromDirectory:()=>fp,getRelativePathFromFile:()=>w1,getRelativePathToDirectoryOrUrl:()=>xm,getRenameLocation:()=>J_e,getReplacementSpanForContextToken:()=>z7e,getResolutionDiagnostic:()=>O6e,getResolutionModeOverride:()=>wte,getResolveJsonModule:()=>lV,getResolvePackageJsonExports:()=>$me,getResolvePackageJsonImports:()=>CN,getResolvedExternalModuleName:()=>Bce,getRestIndicatorOfBindingOrAssignmentElement:()=>tke,getRestParameterElementType:()=>sme,getRightMostAssignedExpression:()=>IG,getRootDeclaration:()=>WS,getRootDirectoryOfResolutionCache:()=>fkt,getRootLength:()=>e_,getRootPathSplitLength:()=>pFr,getScriptKind:()=>mje,getScriptKindFromFileName:()=>sle,getScriptTargetFeatures:()=>v8,getSelectedEffectiveModifierFlags:()=>LQ,getSelectedSyntacticModifierFlags:()=>fDe,getSemanticClassifications:()=>cFt,getSemanticJsxChildren:()=>YX,getSetAccessorTypeAnnotationNode:()=>xme,getSetAccessorValueParameter:()=>KX,getSetExternalModuleIndicator:()=>A6,getShebang:()=>aG,getSingleInitializerOfVariableStatementOrPropertyDeclaration:()=>gme,getSingleVariableOfVariableStatement:()=>Y3,getSnapshotText:()=>K6,getSnippetElement:()=>vle,getSourceFileOfModule:()=>b8,getSourceFileOfNode:()=>ls,getSourceFilePathInNewDir:()=>Nce,getSourceFilePathInNewDirWorker:()=>Rce,getSourceFileVersionAsHashFromText:()=>gGe,getSourceFilesToEmit:()=>Tce,getSourceMapRange:()=>Gx,getSourceMapper:()=>BFt,getSourceTextOfNodeFromSourceFile:()=>pG,getSpanOfTokenAtPosition:()=>Rr,getSpellingSuggestion:()=>Nd,getStartPositionOfLine:()=>uN,getStartPositionOfRange:()=>qX,getStartsOnNewLine:()=>SG,getStaticPropertiesAndClassStaticBlock:()=>Lke,getStrictOptionValue:()=>D_,getStringComparer:()=>zl,getSubPatternFromSpec:()=>rle,getSuperCallFromStatement:()=>Fke,getSuperContainer:()=>k8,getSupportedCodeFixes:()=>_ze,getSupportedExtensions:()=>I6,getSupportedExtensionsWithJsonIfResolveJsonModule:()=>Mee,getSwitchedType:()=>Eje,getSymbolId:()=>kg,getSymbolNameForPrivateIdentifier:()=>hee,getSymbolParentOrFail:()=>uFe,getSymbolTarget:()=>hje,getSyntacticClassifications:()=>lFt,getSyntacticModifierFlags:()=>zR,getSyntacticModifierFlagsNoCache:()=>Vme,getSynthesizedDeepClone:()=>Bd,getSynthesizedDeepCloneWithReplacements:()=>X_e,getSynthesizedDeepClones:()=>bY,getSynthesizedDeepClonesWithReplacements:()=>_je,getSyntheticLeadingComments:()=>tY,getSyntheticTrailingComments:()=>s4,getTargetLabel:()=>RGe,getTargetOfBindingOrAssignmentElement:()=>yV,getTemporaryModuleResolutionState:()=>Ule,getTextOfConstantValue:()=>S8,getTextOfIdentifierOrLiteral:()=>T2,getTextOfJSDocComment:()=>gX,getTextOfJsxAttributeName:()=>YS,getTextOfJsxNamespacedName:()=>v6,getTextOfNode:()=>Tf,getTextOfNodeFromSourceText:()=>vQ,getTextOfPropertyName:()=>K9,getThisContainer:()=>r0,getThisParameter:()=>iV,getTokenAtPosition:()=>Qc,getTokenPosOfNode:()=>Sx,getTokenSourceMapRange:()=>kKe,getTouchingPropertyName:()=>lb,getTouchingToken:()=>Fte,getTrailingCommentRanges:()=>m2,getTrailingSemicolonDeferringWriter:()=>Nme,getTransformFlagsSubtreeExclusions:()=>G2,getTransformers:()=>xxt,getTsBuildInfoEmitOutputFilePath:()=>ZZ,getTsConfigObjectLiteralExpression:()=>x8,getTsConfigPropArrayElementValue:()=>ice,getTypeAnnotationNode:()=>lDe,getTypeArgumentOrTypeParameterList:()=>TGt,getTypeKeywordOfTypeOnlyImport:()=>lje,getTypeNode:()=>fxe,getTypeNodeIfAccessible:()=>vue,getTypeParameterFromJsDoc:()=>JRe,getTypeParameterOwner:()=>hr,getTypesPackageName:()=>Nke,getUILocale:()=>na,getUniqueName:()=>E4,getUniqueSymbolId:()=>HGt,getUseDefineForClassFields:()=>Lee,getWatchErrorSummaryDiagnosticMessage:()=>q6e,getWatchFactory:()=>b6e,group:()=>Hl,groupBy:()=>Ff,guessIndentation:()=>Pae,handleNoEmitOptions:()=>P6e,handleWatchOptionsConfigDirTemplateSubstitution:()=>Cke,hasAbstractModifier:()=>aV,hasAccessorModifier:()=>PS,hasAmbientModifier:()=>Lme,hasChangesInResolutions:()=>x$,hasChildOfKind:()=>L_e,hasContextSensitiveParameters:()=>gle,hasDecorators:()=>FE,hasDocComment:()=>SGt,hasDynamicName:()=>jR,hasEffectiveModifier:()=>nb,hasEffectiveModifiers:()=>Fme,hasEffectiveReadonlyModifier:()=>$8,hasExtension:()=>v1,hasIndexSignature:()=>bje,hasInferredType:()=>hle,hasInitializer:()=>qw,hasInvalidEscape:()=>wme,hasJSDocNodes:()=>hy,hasJSDocParameterTags:()=>cG,hasJSFileExtension:()=>mN,hasJsonModuleEmitEnabled:()=>jce,hasOnlyExpressionInitializer:()=>dG,hasOverrideModifier:()=>Dce,hasPossibleExternalModuleReference:()=>$ae,hasProperty:()=>Qa,hasPropertyAccessExpressionWithName:()=>x_e,hasQuestionToken:()=>kQ,hasRecordedExternalHelpers:()=>uRt,hasResolutionModeOverride:()=>cxe,hasRestParameter:()=>S$,hasScopeMarker:()=>Lae,hasStaticModifier:()=>IC,hasSyntacticModifier:()=>ba,hasSyntacticModifiers:()=>Zme,hasTSFileExtension:()=>KQ,hasTabstop:()=>oxe,hasTrailingDirectorySeparator:()=>v_,hasType:()=>XC,hasTypeArguments:()=>JUe,hasZeroOrOneAsteriskCharacter:()=>the,helperString:()=>fV,hostGetCanonicalFileName:()=>Dx,hostUsesCaseSensitiveFileNames:()=>UX,idText:()=>ao,identifierIsThisKeyword:()=>kme,identifierToKeywordKind:()=>VR,identity:()=>Bl,identitySourceMapConsumer:()=>e6e,ignoreSourceNewlines:()=>The,ignoredPaths:()=>vh,importDefaultHelper:()=>Gxe,importFromModuleSpecifier:()=>VX,importStarHelper:()=>xhe,indexOfAnyCharCode:()=>Xe,indexOfNode:()=>L3,indicesOf:()=>Yu,inferredTypesContainingFile:()=>lue,injectClassNamedEvaluationHelperBlockIfMissing:()=>Pke,injectClassThisAssignmentIfMissing:()=>nxt,insertImports:()=>cje,insertLeadingStatement:()=>XDr,insertSorted:()=>Gr,insertStatementAfterCustomPrologue:()=>bZ,insertStatementAfterStandardPrologue:()=>eme,insertStatementsAfterCustomPrologue:()=>E8,insertStatementsAfterStandardPrologue:()=>kS,intersperse:()=>pe,intrinsicTagNameToString:()=>bhe,introducesArgumentsExoticObject:()=>xRe,inverseJsxOptionMap:()=>jhe,isAbstractConstructorSymbol:()=>TDe,isAbstractModifier:()=>lY,isAccessExpression:()=>Cp,isAccessibilityModifier:()=>K7e,isAccessor:()=>jw,isAccessorModifier:()=>Yxe,isAliasSymbolDeclaration:()=>KUe,isAliasableExpression:()=>Iee,isAmbientModule:()=>Yf,isAmbientPropertyDeclaration:()=>M$,isAnonymousFunctionDefinition:()=>z8,isAnyDirectorySeparator:()=>Sp,isAnyImportOrBareOrAccessedRequire:()=>zae,isAnyImportOrReExport:()=>W3,isAnyImportOrRequireStatement:()=>qae,isAnyImportSyntax:()=>fG,isAnySupportedFileExtension:()=>EKe,isApplicableVersionedTypesKey:()=>o_e,isArgumentExpressionOfElementAccess:()=>V7e,isArray:()=>Ra,isArrayBindingElement:()=>R3,isArrayBindingOrAssignmentElement:()=>hX,isArrayBindingOrAssignmentPattern:()=>_$,isArrayBindingPattern:()=>Vu,isArrayLiteralExpression:()=>If,isArrayLiteralOrObjectLiteralDestructuringPattern:()=>VZ,isArrayTypeNode:()=>He,isArrowFunction:()=>fd,isAsExpression:()=>qS,isAssertClause:()=>HNt,isAssertEntry:()=>VDr,isAssertionExpression:()=>DE,isAssertsKeyword:()=>Fhe,isAssignmentDeclaration:()=>P8,isAssignmentExpression:()=>fm,isAssignmentOperator:()=>qR,isAssignmentPattern:()=>H9,isAssignmentTarget:()=>Rx,isAsteriskToken:()=>ste,isAsyncFunction:()=>K8,isAsyncModifier:()=>c4,isAutoAccessorPropertyDeclaration:()=>t_,isAwaitExpression:()=>Ob,isAwaitKeyword:()=>Dle,isBigIntLiteral:()=>K3,isBinaryExpression:()=>no,isBinaryOperatorToken:()=>hRt,isBindableObjectDefinePropertyCall:()=>M3,isBindableStaticAccessExpression:()=>$9,isBindableStaticElementAccessExpression:()=>pce,isBindableStaticNameExpression:()=>Q3,isBindingElement:()=>ml,isBindingElementOfBareOrAccessedRequire:()=>ORe,isBindingName:()=>mZ,isBindingOrAssignmentElement:()=>Fae,isBindingOrAssignmentPattern:()=>CQ,isBindingPattern:()=>pu,isBlock:()=>mc,isBlockLike:()=>Qte,isBlockOrCatchScoped:()=>L$,isBlockScope:()=>Q$,isBlockScopedContainerTopLevel:()=>w8,isBooleanLiteral:()=>IQ,isBreakOrContinueStatement:()=>T3,isBreakStatement:()=>eP,isBuild:()=>Okt,isBuildInfoFile:()=>kxt,isBuilderProgram:()=>mkt,isBundle:()=>UNt,isCallChain:()=>uG,isCallExpression:()=>cu,isCallExpressionTarget:()=>x7e,isCallLikeExpression:()=>AG,isCallLikeOrFunctionLikeExpression:()=>y$,isCallOrNewExpression:()=>BB,isCallOrNewExpressionTarget:()=>k7e,isCallSignatureDeclaration:()=>CV,isCallToHelper:()=>R6,isCaseBlock:()=>xle,isCaseClause:()=>cte,isCaseKeyword:()=>Lhe,isCaseOrDefaultClause:()=>vX,isCatchClause:()=>dY,isCatchClauseVariableDeclaration:()=>sxe,isCatchClauseVariableDeclarationOrBindingElement:()=>V$,isCheckJsEnabledForFile:()=>h6,isChildOfNodeWithKind:()=>WUe,isCircularBuildOrder:()=>J6,isClassDeclaration:()=>bc,isClassElement:()=>rC,isClassExpression:()=>tp,isClassInstanceProperty:()=>A8,isClassLike:()=>Sa,isClassMemberModifier:()=>C$,isClassNamedEvaluationHelperBlock:()=>Y6,isClassOrTypeElement:()=>d8,isClassStaticBlockDeclaration:()=>$p,isClassThisAssignmentBlock:()=>rue,isCollapsedRange:()=>zX,isColonToken:()=>Mxe,isCommaExpression:()=>Mhe,isCommaListExpression:()=>VE,isCommaSequence:()=>Vle,isCommaToken:()=>Oxe,isComment:()=>OGe,isCommonJsExportPropertyAssignment:()=>X$,isCommonJsExportedExpression:()=>RRe,isCompoundAssignment:()=>$le,isComputedNonLiteralName:()=>xX,isComputedPropertyName:()=>xg,isConciseBody:()=>QR,isConditionalExpression:()=>BN,isConditionalTypeNode:()=>Ei,isConstAssertion:()=>Bhe,isConstTypeReference:()=>E2,isConstructSignatureDeclaration:()=>A,isConstructorDeclaration:()=>Rf,isConstructorTypeNode:()=>H,isContextualKeyword:()=>hce,isContinueStatement:()=>RG,isCustomPrologue:()=>ZS,isDebuggerStatement:()=>$S,isDeclaration:()=>DC,isDeclarationBindingElement:()=>CX,isDeclarationFileName:()=>kh,isDeclarationName:()=>eT,isDeclarationNameOfEnumOrNamespace:()=>Xme,isDeclarationReadonly:()=>fu,isDeclarationStatement:()=>bX,isDeclarationWithTypeParameterChildren:()=>DX,isDeclarationWithTypeParameters:()=>Y$,isDecorator:()=>GC,isDecoratorTarget:()=>dGt,isDefaultClause:()=>Gle,isDefaultImport:()=>xQ,isDefaultModifier:()=>ate,isDefaultedExpandoInitializer:()=>MRe,isDeleteExpression:()=>q3,isDeleteTarget:()=>Ime,isDeprecatedDeclaration:()=>gFe,isDestructuringAssignment:()=>kv,isDiagnosticWithLocation:()=>Tje,isDiskPathRoot:()=>V0,isDoStatement:()=>kZ,isDocumentRegistryEntry:()=>e0e,isDotDotDotToken:()=>cY,isDottedName:()=>Nee,isDynamicName:()=>yce,isESSymbolIdentifier:()=>$Ue,isEffectiveExternalModule:()=>U9,isEffectiveModuleDeclaration:()=>jae,isEffectiveStrictModeSourceFile:()=>RX,isElementAccessChain:()=>dX,isElementAccessExpression:()=>hA,isEmittedFileOfProgram:()=>Wxt,isEmptyArrayLiteral:()=>Qme,isEmptyBindingElement:()=>Kc,isEmptyBindingPattern:()=>yo,isEmptyObjectLiteral:()=>xee,isEmptyStatement:()=>Fv,isEmptyStringLiteral:()=>cme,isEntityName:()=>w_,isEntityNameExpression:()=>cp,isEnumConst:()=>Ac,isEnumDeclaration:()=>tP,isEnumMember:()=>_V,isEqualityOperatorKind:()=>eFe,isEqualsGreaterThanToken:()=>Qxe,isExclamationToken:()=>ote,isExcludedFile:()=>zRt,isExclusivelyTypeOnlyImportOrExport:()=>N6e,isExpandoPropertyDeclaration:()=>qQ,isExportAssignment:()=>tf,isExportDeclaration:()=>mC,isExportModifier:()=>Fx,isExportName:()=>qxe,isExportNamespaceAsDefaultDeclaration:()=>BQ,isExportOrDefaultModifier:()=>Hhe,isExportSpecifier:()=>c0,isExportsIdentifier:()=>O3,isExportsOrModuleExportsOrAlias:()=>fY,isExpression:()=>tn,isExpressionNode:()=>NB,isExpressionOfExternalModuleImportEqualsDeclaration:()=>CGt,isExpressionOfOptionalChainRoot:()=>a8,isExpressionStatement:()=>Hf,isExpressionWithTypeArguments:()=>x_,isExpressionWithTypeArgumentsInClassExtendsClause:()=>kce,isExternalModule:()=>mm,isExternalModuleAugmentation:()=>XR,isExternalModuleImportEqualsDeclaration:()=>EZ,isExternalModuleIndicator:()=>D3,isExternalModuleNameRelative:()=>Jl,isExternalModuleReference:()=>DG,isExternalModuleSymbol:()=>G3,isExternalOrCommonJsModule:()=>ia,isFileLevelReservedGeneratedIdentifier:()=>fX,isFileLevelUniqueName:()=>EQ,isFileProbablyExternalModule:()=>Uhe,isFirstDeclarationOfSymbolParameter:()=>pje,isFixablePromiseHandler:()=>Kje,isForInOrOfStatement:()=>yZ,isForInStatement:()=>tD,isForInitializer:()=>P0,isForOfStatement:()=>W1,isForStatement:()=>kB,isFullSourceFile:()=>JR,isFunctionBlock:()=>j9,isFunctionBody:()=>_X,isFunctionDeclaration:()=>mp,isFunctionExpression:()=>WA,isFunctionExpressionOrArrowFunction:()=>vG,isFunctionLike:()=>$l,isFunctionLikeDeclaration:()=>dd,isFunctionLikeKind:()=>PR,isFunctionLikeOrClassStaticBlockDeclaration:()=>N3,isFunctionOrConstructorTypeNode:()=>IX,isFunctionOrModuleBlock:()=>m$,isFunctionSymbol:()=>YRe,isFunctionTypeNode:()=>Y,isFutureReservedKeyword:()=>jUe,isGeneratedIdentifier:()=>Ip,isGeneratedPrivateIdentifier:()=>CZ,isGetAccessor:()=>Nv,isGetAccessorDeclaration:()=>Pb,isGetOrSetAccessorDeclaration:()=>AX,isGlobalDeclaration:()=>PZr,isGlobalScopeAugmentation:()=>v2,isGlobalSourceFile:()=>bs,isGrammarError:()=>k$,isHeritageClause:()=>WE,isHoistedFunction:()=>gN,isHoistedVariableStatement:()=>rce,isIdentifier:()=>sr,isIdentifierANonContextualKeyword:()=>mee,isIdentifierName:()=>zRe,isIdentifierOrThisTypeNode:()=>fRt,isIdentifierPart:()=>h2,isIdentifierStart:()=>zy,isIdentifierText:()=>Ke,isIdentifierTypePredicate:()=>kRe,isIdentifierTypeReference:()=>exe,isIfStatement:()=>H0,isIgnoredFileFromWildCardWatching:()=>m_e,isImplicitGlob:()=>ohe,isImportAttribute:()=>XNt,isImportAttributeName:()=>I$,isImportAttributes:()=>l4,isImportCall:()=>pC,isImportClause:()=>sT,isImportDeclaration:()=>mI,isImportEqualsDeclaration:()=>Cm,isImportKeyword:()=>D6,isImportMeta:()=>Vb,isImportOrExportSpecifier:()=>M9,isImportOrExportSpecifierName:()=>YGt,isImportSpecifier:()=>_y,isImportTypeAssertionContainer:()=>LDr,isImportTypeNode:()=>Tu,isImportableFile:()=>Zje,isInComment:()=>LZ,isInCompoundLikeAssignment:()=>Cce,isInExpressionContext:()=>lce,isInJSDoc:()=>$$,isInJSFile:()=>so,isInJSXText:()=>BGt,isInJsonFile:()=>V8,isInNonReferenceComment:()=>DGt,isInReferenceComment:()=>RGt,isInRightSideOfInternalImportEqualsDeclaration:()=>TGe,isInString:()=>U6,isInTemplateString:()=>H7e,isInTopLevelContext:()=>ace,isInTypeQuery:()=>ZQ,isIncrementalCompilation:()=>d6,isIndexSignatureDeclaration:()=>_,isIndexedAccessTypeNode:()=>hs,isInferTypeNode:()=>bo,isInfinityOrNaNString:()=>b6,isInitializedProperty:()=>g_e,isInitializedVariable:()=>Gee,isInsideJsxElement:()=>WGe,isInsideJsxElementOrAttribute:()=>EGt,isInsideNodeModules:()=>j_e,isInsideTemplateLiteral:()=>W_e,isInstanceOfExpression:()=>r6,isInstantiatedModule:()=>J8e,isInterfaceDeclaration:()=>HI,isInternalDeclaration:()=>Oae,isInternalModuleImportEqualsDeclaration:()=>NQ,isInternalName:()=>UKe,isIntersectionTypeNode:()=>ji,isIntrinsicJsxName:()=>HX,isIterationStatement:()=>MR,isJSDoc:()=>aT,isJSDocAllType:()=>zNt,isJSDocAugmentsTag:()=>G6,isJSDocAuthorTag:()=>MDr,isJSDocCallbackTag:()=>ZKe,isJSDocClassTag:()=>$Nt,isJSDocCommentContainingNode:()=>pf,isJSDocConstructSignature:()=>PX,isJSDocDeprecatedTag:()=>OKe,isJSDocEnumTag:()=>Whe,isJSDocFunctionType:()=>ute,isJSDocImplementsTag:()=>Kxe,isJSDocImportTag:()=>RN,isJSDocIndexSignature:()=>eee,isJSDocLikeText:()=>n8e,isJSDocLink:()=>KNt,isJSDocLinkCode:()=>jNt,isJSDocLinkLike:()=>J9,isJSDocLinkPlain:()=>PDr,isJSDocMemberName:()=>nP,isJSDocNameReference:()=>Fle,isJSDocNamepathType:()=>ODr,isJSDocNamespaceBody:()=>Vae,isJSDocNode:()=>xS,isJSDocNonNullableType:()=>Hxe,isJSDocNullableType:()=>lte,isJSDocOptionalParameter:()=>ple,isJSDocOptionalType:()=>FKe,isJSDocOverloadTag:()=>gte,isJSDocOverrideTag:()=>Jxe,isJSDocParameterTag:()=>FB,isJSDocPrivateTag:()=>VKe,isJSDocPropertyLikeTag:()=>fZ,isJSDocPropertyTag:()=>eRt,isJSDocProtectedTag:()=>WKe,isJSDocPublicTag:()=>LKe,isJSDocReadonlyTag:()=>PKe,isJSDocReturnTag:()=>Uxe,isJSDocSatisfiesExpression:()=>_he,isJSDocSatisfiesTag:()=>jxe,isJSDocSeeTag:()=>QDr,isJSDocSignature:()=>xG,isJSDocTag:()=>X9,isJSDocTemplateTag:()=>Zv,isJSDocThisTag:()=>MKe,isJSDocThrowsTag:()=>HDr,isJSDocTypeAlias:()=>w2,isJSDocTypeAssertion:()=>f4,isJSDocTypeExpression:()=>rP,isJSDocTypeLiteral:()=>A4,isJSDocTypeTag:()=>Zle,isJSDocTypedefTag:()=>d4,isJSDocUnknownTag:()=>YDr,isJSDocUnknownType:()=>qNt,isJSDocVariadicType:()=>Xxe,isJSXTagName:()=>ZX,isJsonEqual:()=>lle,isJsonSourceFile:()=>Ia,isJsxAttribute:()=>NN,isJsxAttributeLike:()=>C8,isJsxAttributeName:()=>axe,isJsxAttributes:()=>AY,isJsxChild:()=>BX,isJsxClosingElement:()=>uY,isJsxClosingFragment:()=>JNt,isJsxElement:()=>Ox,isJsxExpression:()=>kle,isJsxFragment:()=>gY,isJsxNamespacedName:()=>oT,isJsxOpeningElement:()=>TN,isJsxOpeningFragment:()=>g4,isJsxOpeningLikeElement:()=>Jm,isJsxOpeningLikeElementTagName:()=>pGt,isJsxSelfClosingElement:()=>u4,isJsxSpreadAttribute:()=>k6,isJsxTagNameExpression:()=>k3,isJsxText:()=>sY,isJumpStatementTarget:()=>k_e,isKeyword:()=>i0,isKeywordOrPunctuation:()=>mce,isKnownSymbol:()=>_ee,isLabelName:()=>Z7e,isLabelOfLabeledStatement:()=>F7e,isLabeledStatement:()=>nC,isLateVisibilityPaintedStatement:()=>T8,isLeftHandSideExpression:()=>T_,isLeftHandSideOfAssignment:()=>WQ,isLet:()=>oI,isLineBreak:()=>HC,isLiteralComputedPropertyDeclarationName:()=>fee,isLiteralExpression:()=>Sv,isLiteralExpressionOfObject:()=>IZ,isLiteralImportTypeNode:()=>r_,isLiteralKind:()=>pQ,isLiteralLikeAccess:()=>dce,isLiteralLikeElementAccess:()=>iee,isLiteralNameOfPropertyDeclarationOrIndexAccess:()=>DGe,isLiteralTypeLikeExpression:()=>zDr,isLiteralTypeLiteral:()=>DS,isLiteralTypeNode:()=>id,isLocalName:()=>kG,isLogicalOperator:()=>mDe,isLogicalOrCoalescingAssignmentExpression:()=>Wme,isLogicalOrCoalescingAssignmentOperator:()=>e6,isLogicalOrCoalescingBinaryExpression:()=>Tee,isLogicalOrCoalescingBinaryOperator:()=>wee,isMappedTypeNode:()=>Sl,isMemberName:()=>$y,isMetaProperty:()=>vN,isMethodDeclaration:()=>cI,isMethodOrAccessor:()=>hZ,isMethodSignature:()=>jS,isMinusToken:()=>ite,isMissingDeclaration:()=>WDr,isMissingPackageJsonInfo:()=>lDt,isModifier:()=>gg,isModifierKind:()=>wv,isModifierLike:()=>Np,isModuleAugmentationExternal:()=>P$,isModuleBlock:()=>SN,isModuleBody:()=>O0,isModuleDeclaration:()=>CC,isModuleExportsAccessExpression:()=>AN,isModuleIdentifier:()=>M8,isModuleName:()=>mRt,isModuleOrEnumDeclaration:()=>yX,isModuleReference:()=>x3,isModuleSpecifierLike:()=>JGe,isModuleWithStringLiteralName:()=>SQ,isNameOfFunctionDeclaration:()=>P7e,isNameOfModuleDeclaration:()=>W7e,isNamedClassElement:()=>Gae,isNamedDeclaration:()=>Sf,isNamedEvaluation:()=>tb,isNamedEvaluationSource:()=>yme,isNamedExportBindings:()=>l8,isNamedExports:()=>GB,isNamedImportBindings:()=>E$,isNamedImports:()=>wN,isNamedImportsOrExports:()=>Qce,isNamedTupleMember:()=>At,isNamespaceBody:()=>eb,isNamespaceExport:()=>rD,isNamespaceExportDeclaration:()=>Vhe,isNamespaceImport:()=>Px,isNamespaceReexportDeclaration:()=>PRe,isNewExpression:()=>zS,isNewExpressionTarget:()=>fue,isNoSubstitutionTemplateLiteral:()=>oY,isNode:()=>YCe,isNodeArray:()=>gG,isNodeArrayMultiLine:()=>Hme,isNodeDescendantOf:()=>tV,isNodeKind:()=>pX,isNodeLikeSystem:()=>uy,isNodeModulesDirectory:()=>TS,isNodeWithPossibleHoistedDeclaration:()=>jRe,isNonContextualKeyword:()=>_me,isNonExportDefaultModifier:()=>$Dr,isNonGlobalAmbientModule:()=>W$,isNonGlobalDeclaration:()=>sFt,isNonNullAccess:()=>fle,isNonNullChain:()=>c8,isNonNullExpression:()=>iT,isNonStaticMethodOrAccessorWithPrivateName:()=>JDt,isNotEmittedOrPartiallyEmittedNode:()=>JCe,isNotEmittedStatement:()=>GKe,isNullishCoalesce:()=>p$,isNumber:()=>cm,isNumericLiteral:()=>du,isNumericLiteralName:()=>yN,isObjectBindingElementWithoutPropertyName:()=>Q_e,isObjectBindingOrAssignmentElement:()=>mX,isObjectBindingOrAssignmentPattern:()=>h$,isObjectBindingPattern:()=>Vg,isObjectLiteralElement:()=>hQ,isObjectLiteralElementLike:()=>EB,isObjectLiteralExpression:()=>tu,isObjectLiteralMethod:()=>TB,isObjectLiteralOrClassExpressionMethodOrAccessor:()=>J$,isObjectTypeDeclaration:()=>MQ,isOctalDigit:()=>lZ,isOmittedExpression:()=>ef,isOptionalChain:()=>km,isOptionalChainRoot:()=>dQ,isOptionalDeclaration:()=>QS,isOptionalJSDocPropertyLikeTag:()=>Jee,isOptionalTypeNode:()=>Ut,isOuterExpression:()=>$xe,isOutermostOptionalChain:()=>w3,isOverrideModifier:()=>Zhe,isPackageJsonInfo:()=>Bke,isPackedArrayLiteral:()=>mhe,isParameter:()=>Jc,isParameterPropertyDeclaration:()=>Zn,isParameterPropertyModifier:()=>fQ,isParenthesizedExpression:()=>FC,isParenthesizedTypeNode:()=>ro,isParseTreeNode:()=>dZ,isPartOfParameterDeclaration:()=>wZ,isPartOfTypeNode:()=>LS,isPartOfTypeQuery:()=>uce,isPartiallyEmittedExpression:()=>NG,isPatternMatch:()=>um,isPinnedComment:()=>B8,isPlainJsFile:()=>bQ,isPlusToken:()=>Ghe,isPossiblyTypeArgumentPosition:()=>V_e,isPostfixUnaryExpression:()=>Zx,isPrefixUnaryExpression:()=>xB,isPrimitiveLiteralValue:()=>Kee,isPrivateIdentifier:()=>kc,isPrivateIdentifierClassElementDeclaration:()=>Rh,isPrivateIdentifierPropertyAccessExpression:()=>Y9,isPrivateIdentifierSymbol:()=>eDe,isProgramBundleEmitBuildInfo:()=>nkt,isProgramUptoDate:()=>L6e,isPrologueDirective:()=>QI,isPropertyAccessChain:()=>AQ,isPropertyAccessEntityNameExpression:()=>Ree,isPropertyAccessExpression:()=>Io,isPropertyAccessOrQualifiedName:()=>mQ,isPropertyAccessOrQualifiedNameOrImportTypeNode:()=>Zae,isPropertyAssignment:()=>KC,isPropertyDeclaration:()=>Ql,isPropertyName:()=>NI,isPropertyNameLiteral:()=>VS,isPropertySignature:()=>n_,isProtoSetter:()=>tDe,isPrototypeAccess:()=>yG,isPrototypePropertyAssignment:()=>aee,isPunctuation:()=>hme,isPushOrUnshiftIdentifier:()=>bme,isQualifiedName:()=>a0,isQuestionDotToken:()=>a4,isQuestionOrExclamationToken:()=>pRt,isQuestionOrPlusOrMinusToken:()=>CRt,isQuestionToken:()=>wG,isRawSourceMap:()=>ODt,isReadonlyKeyword:()=>IV,isReadonlyKeywordOrPlusOrMinusToken:()=>IRt,isRecognizedTripleSlashComment:()=>G$,isReferenceFileLocation:()=>Tte,isReferencedFile:()=>gP,isRegularExpressionLiteral:()=>khe,isRequireCall:()=>Q0,isRequireVariableStatement:()=>W8,isRestParameter:()=>Rv,isRestTypeNode:()=>cn,isReturnStatement:()=>k_,isReturnStatementWithFixablePromiseHandler:()=>mFe,isRightSideOfAccessExpression:()=>Mme,isRightSideOfInstanceofExpression:()=>_De,isRightSideOfPropertyAccess:()=>kte,isRightSideOfQualifiedName:()=>IGt,isRightSideOfQualifiedNameOrPropertyAccess:()=>t6,isRightSideOfQualifiedNameOrPropertyAccessOrJSDocMemberName:()=>hDe,isRootedDiskPath:()=>yd,isSameEntityName:()=>LX,isSatisfiesExpression:()=>TG,isScopeMarker:()=>b$,isSemicolonClassElement:()=>Wx,isSetAccessor:()=>Dh,isSetAccessorDeclaration:()=>sb,isShebangTrivia:()=>uZ,isShiftOperatorOrHigher:()=>e8e,isShorthandAmbientModuleSymbol:()=>V3,isShorthandPropertyAssignment:()=>G_,isSignedNumericLiteral:()=>_ce,isSimpleCopiableExpression:()=>IY,isSimpleInlineableExpression:()=>DN,isSimpleParameter:()=>qDt,isSimpleParameterList:()=>A_e,isSingleOrDoubleQuote:()=>ree,isSourceFile:()=>Gc,isSourceFileFromLibrary:()=>Mte,isSourceFileJS:()=>n0,isSourceFileNotJS:()=>OUe,isSourceFileNotJson:()=>gce,isSourceMapping:()=>QDt,isSpecialPropertyDeclaration:()=>QRe,isSpreadAssignment:()=>Mx,isSpreadElement:()=>ph,isStatement:()=>Ic,isStatementButNotDeclaration:()=>EX,isStatementOrBlock:()=>zw,isStatementWithLocals:()=>Hae,isStatic:()=>$u,isStaticModifier:()=>nT,isString:()=>Xa,isStringAKeyword:()=>zUe,isStringANonContextualKeyword:()=>FQ,isStringAndEmptyAnonymousObjectIntersection:()=>NGt,isStringDoubleQuoted:()=>Ace,isStringLiteral:()=>bu,isStringLiteralLike:()=>XA,isStringLiteralOrJsxExpression:()=>Wae,isStringLiteralOrTemplate:()=>jGt,isStringOrNumericLiteralLike:()=>GE,isStringOrRegularExpressionOrTemplateLiteral:()=>U7e,isStringTextContainingNode:()=>g8,isSuperCall:()=>Nf,isSuperKeyword:()=>z3,isSuperOrSuperProperty:()=>PUe,isSuperProperty:()=>M0,isSupportedSourceFileName:()=>KDe,isSwitchStatement:()=>Ed,isSyntaxList:()=>Ate,isSyntheticExpression:()=>$3,isSyntheticReference:()=>x6,isTagName:()=>L7e,isTaggedTemplateExpression:()=>V1,isTaggedTemplateTag:()=>AGt,isTemplateExpression:()=>Lx,isTemplateHead:()=>aY,isTemplateLiteral:()=>x1,isTemplateLiteralKind:()=>RS,isTemplateLiteralToken:()=>xae,isTemplateLiteralTypeNode:()=>ep,isTemplateLiteralTypeSpan:()=>tg,isTemplateMiddle:()=>j3,isTemplateMiddleOrTemplateTail:()=>u8,isTemplateSpan:()=>Mb,isTemplateTail:()=>Rle,isTextWhiteSpaceLike:()=>FGt,isThis:()=>Gte,isThisContainerOrFunctionBlock:()=>LRe,isThisIdentifier:()=>_G,isThisInTypeQuery:()=>oV,isThisInitializedDeclaration:()=>cce,isThisInitializedObjectBindingExpression:()=>WRe,isThisProperty:()=>j$,isThisTypeNode:()=>ca,isThisTypeParameter:()=>E6,isThisTypePredicate:()=>GRe,isThrowStatement:()=>F2,isToken:()=>O9,isTokenKind:()=>f$,isTraceEnabled:()=>GG,isTransientSymbol:()=>vB,isTrivia:()=>QX,isTryStatement:()=>ob,isTupleTypeNode:()=>Ct,isTypeAlias:()=>uee,isTypeAliasDeclaration:()=>Wf,isTypeAssertionExpression:()=>mV,isTypeDeclaration:()=>zQ,isTypeElement:()=>Bx,isTypeKeyword:()=>mue,isTypeKeywordToken:()=>tje,isTypeKeywordTokenOrIdentifier:()=>YGe,isTypeLiteralNode:()=>Se,isTypeNode:()=>Ya,isTypeNodeKind:()=>Ume,isTypeOfExpression:()=>eD,isTypeOnlyExportDeclaration:()=>kae,isTypeOnlyImportDeclaration:()=>Q9,isTypeOnlyImportOrExportDeclaration:()=>Ex,isTypeOperatorNode:()=>as,isTypeParameterDeclaration:()=>qp,isTypePredicateNode:()=>S,isTypeQueryNode:()=>oe,isTypeReferenceNode:()=>F,isTypeReferenceType:()=>m8,isTypeUsableAsPropertyName:()=>x2,isUMDExportSymbol:()=>Oce,isUnaryExpression:()=>_Z,isUnaryExpressionWithWrite:()=>p8,isUnicodeIdentifierStart:()=>vg,isUnionTypeNode:()=>Is,isUrl:()=>eC,isValidBigIntString:()=>ule,isValidESSymbolDeclaration:()=>DRe,isValidTypeOnlyAliasUseSite:()=>DZ,isValueSignatureDeclaration:()=>GQ,isVarAwaitUsing:()=>Mg,isVarConst:()=>Qp,isVarConstLike:()=>Pd,isVarUsing:()=>pd,isVariableDeclaration:()=>zs,isVariableDeclarationInVariableStatement:()=>D8,isVariableDeclarationInitializedToBareOrAccessedRequire:()=>q9,isVariableDeclarationInitializedToRequire:()=>tee,isVariableDeclarationList:()=>yl,isVariableLike:()=>TQ,isVariableLikeOrAccessor:()=>nce,isVariableStatement:()=>Rp,isVoidExpression:()=>Cf,isWatchSet:()=>Jme,isWhileStatement:()=>GZ,isWhiteSpaceLike:()=>Xm,isWhiteSpaceSingleLine:()=>$_,isWithStatement:()=>hV,isWriteAccess:()=>OQ,isWriteOnlyAccess:()=>Wce,isYieldExpression:()=>Vx,jsxModeNeedsExplicitImport:()=>kje,keywordPart:()=>OE,last:()=>Na,lastOrUndefined:()=>qo,length:()=>O,libMap:()=>l8e,libs:()=>ake,lineBreakPart:()=>Wte,linkNamePart:()=>MGt,linkPart:()=>Ije,linkTextPart:()=>jGe,listFiles:()=>e7e,loadModuleFromGlobalCache:()=>EDt,loadWithModeAwareCache:()=>y_e,makeIdentifierFromModuleName:()=>Kae,makeImport:()=>NV,makeStringLiteral:()=>hue,mangleScopedPackageName:()=>bte,map:()=>Ot,mapAllOrFail:()=>Br,mapDefined:()=>tr,mapDefinedEntries:()=>Gn,mapDefinedIterator:()=>gn,mapEntries:()=>Qs,mapIterator:()=>dr,mapOneOrMany:()=>Rje,mapToDisplayParts:()=>RV,matchFiles:()=>che,matchPatternOrExact:()=>Ahe,matchedText:()=>_h,matchesExclude:()=>_ke,maybeBind:()=>Hi,maybeSetLocalizedDiagnosticMessages:()=>GDe,memoize:()=>iu,memoizeCached:()=>Jh,memoizeOne:()=>ii,memoizeWeak:()=>NC,metadataHelper:()=>wle,min:()=>uC,minAndMax:()=>qDe,missingFileModifiedTime:()=>EA,modifierToFlag:()=>VQ,modifiersToFlags:()=>xv,moduleOptionDeclaration:()=>NRt,moduleResolutionIsEqualTo:()=>D$,moduleResolutionNameAndModeGetter:()=>x6e,moduleResolutionOptionDeclarations:()=>g8e,moduleResolutionSupportsPackageJsonExportsAndImports:()=>UQ,moduleResolutionUsesNodeModules:()=>HGe,moduleSpecifierToValidIdentifier:()=>z_e,moduleSpecifiers:()=>uP,moduleSymbolToValidIdentifier:()=>wue,moveEmitHelpers:()=>xu,moveRangeEnd:()=>s6,moveRangePastDecorators:()=>$R,moveRangePastModifiers:()=>OS,moveRangePos:()=>TZ,moveSyntheticComments:()=>RI,mutateMap:()=>u6,mutateMapSkippingNewValues:()=>pN,needsParentheses:()=>qGe,needsScopeMarker:()=>f8,newCaseClauseTracker:()=>pFe,newPrivateEnvironment:()=>jDt,noEmitNotification:()=>p_e,noEmitSubstitution:()=>sue,noTransformers:()=>Dxt,noTruncationMaximumTruncationLength:()=>T$,nodeCanBeDecorated:()=>q$,nodeHasName:()=>vv,nodeIsDecorated:()=>FX,nodeIsMissing:()=>wf,nodeIsPresent:()=>xE,nodeIsSynthesized:()=>qd,nodeModuleNameResolver:()=>pDt,nodeModulesPathPart:()=>Qx,nodeNextJsonConfigResolver:()=>fDt,nodeOrChildIsDecorated:()=>F8,nodeOverlapsWithStartEnd:()=>xGe,nodePosToString:()=>Xae,nodeSeenTracker:()=>Zte,nodeStartsNewLexicalEnvironment:()=>Eme,nodeToDisplayParts:()=>FZr,noop:()=>oc,noopFileWatcher:()=>gue,normalizePath:()=>Mc,normalizeSlashes:()=>Af,not:()=>gm,notImplemented:()=>za,notImplementedResolver:()=>Fxt,nullNodeConverters:()=>gxe,nullParenthesizerRules:()=>jee,nullTransformationContext:()=>I_e,objectAllocator:()=>xC,operatorPart:()=>yue,optionDeclarations:()=>cT,optionMapToObject:()=>pke,optionsAffectingProgramStructure:()=>GRt,optionsForBuild:()=>d8e,optionsForWatch:()=>W6,optionsHaveChanges:()=>F3,optionsHaveModuleResolutionChanges:()=>Qae,or:()=>pg,orderedRemoveItem:()=>eA,orderedRemoveItemAt:()=>Nm,packageIdToPackageName:()=>yQ,packageIdToString:()=>YR,paramHelper:()=>Dhe,parameterIsThisKeyword:()=>sV,parameterNamePart:()=>VGt,parseBaseNodeFactory:()=>BRt,parseBigInt:()=>$De,parseBuildCommand:()=>YRt,parseCommandLine:()=>MRt,parseCommandLineWorker:()=>f8e,parseConfigFileTextToJson:()=>C8e,parseConfigFileWithSystem:()=>Ckt,parseConfigHostFromCompilerHostLike:()=>nGe,parseCustomTypeOption:()=>gke,parseIsolatedEntityName:()=>V6,parseIsolatedJSDocComment:()=>SRt,parseJSDocTypeExpressionForTests:()=>_xr,parseJsonConfigFileContent:()=>Kxr,parseJsonSourceFileConfigFileContent:()=>t_e,parseJsonText:()=>Khe,parseListTypeOption:()=>PRt,parseNodeFactory:()=>sP,parseNodeModuleFromPath:()=>i_e,parsePackageName:()=>s_e,parsePseudoBigInt:()=>r4,parseValidBigInt:()=>Ihe,pasteEdits:()=>kqe,patchWriteFileEnsuringDirectory:()=>L0,pathContainsNodeModules:()=>lP,pathIsAbsolute:()=>II,pathIsBareSpecifier:()=>W0,pathIsRelative:()=>Op,patternText:()=>R0,perfLogger:()=>Kl,performIncrementalCompilation:()=>hkt,performance:()=>ap,plainJSErrors:()=>V6e,positionBelongsToNode:()=>M7e,positionIsASICandidate:()=>rFe,positionIsSynthesized:()=>Gv,positionsAreOnSameLine:()=>Z1,preProcessFile:()=>nLr,probablyUsesSemicolons:()=>K_e,processCommentPragmas:()=>a8e,processPragmasIntoFields:()=>c8e,processTaggedTemplateExpression:()=>c6e,programContainsEsModules:()=>kGt,programContainsModules:()=>xGt,projectReferenceIsEqualTo:()=>y8,propKeyHelper:()=>Nxe,propertyNamePart:()=>WGt,pseudoBigIntToString:()=>gV,punctuationPart:()=>A0,pushIfUnique:()=>pa,quote:()=>Bue,quotePreferenceFromString:()=>sje,rangeContainsPosition:()=>G_e,rangeContainsPositionExclusive:()=>F_e,rangeContainsRange:()=>V2,rangeContainsRangeExclusive:()=>mGt,rangeContainsStartEnd:()=>Z_e,rangeEndIsOnSameLineAsRangeStart:()=>a6,rangeEndPositionsAreOnSameLine:()=>EDe,rangeEquals:()=>wi,rangeIsOnSingleLine:()=>NZ,rangeOfNode:()=>phe,rangeOfTypeParameters:()=>fhe,rangeOverlapsWithStartEnd:()=>Iue,rangeStartIsOnSameLineAsRangeEnd:()=>BDe,rangeStartPositionsAreOnSameLine:()=>o6,readBuilderProgram:()=>dGe,readConfigFile:()=>$he,readHelper:()=>wxe,readJson:()=>cV,readJsonConfigFile:()=>HRt,readJsonOrUndefined:()=>kee,reduceEachLeadingCommentRange:()=>Cx,reduceEachTrailingCommentRange:()=>gZ,reduceLeft:()=>Td,reduceLeftIterator:()=>ge,reducePathComponents:()=>tC,refactor:()=>$6,regExpEscape:()=>hKe,regularExpressionFlagToCharacter:()=>tc,relativeComplement:()=>Ji,removeAllComments:()=>tte,removeEmitHelper:()=>iY,removeExtension:()=>e4,removeFileExtension:()=>o0,removeIgnoredPath:()=>sGe,removeMinAndVersionNumbers:()=>fv,removeOptionality:()=>vGt,removePrefix:()=>b_,removeSuffix:()=>Qm,removeTrailingDirectorySeparator:()=>S_,repeatString:()=>O_e,replaceElement:()=>au,replaceFirstStar:()=>$Q,resolutionExtensionIsTSOrJson:()=>C6,resolveConfigFileProjectName:()=>p7e,resolveJSModule:()=>gDt,resolveLibrary:()=>Ske,resolveModuleName:()=>M6,resolveModuleNameFromCache:()=>vkr,resolvePackageNameToPackageJson:()=>N8e,resolvePath:()=>q_,resolveProjectReferencePath:()=>Nte,resolveTripleslashReference:()=>B6e,resolveTypeReferenceDirective:()=>aDt,resolvingEmptyArray:()=>w$,restHelper:()=>Exe,returnFalse:()=>TC,returnNoopFileWatcher:()=>Aue,returnTrue:()=>pI,returnUndefined:()=>SI,returnsPromise:()=>Uje,runInitializersHelper:()=>mxe,sameFlatMap:()=>In,sameMap:()=>Ar,sameMapping:()=>fGr,scanShebangTrivia:()=>oG,scanTokenAtPosition:()=>bn,scanner:()=>X0,screenStartingMessageCodes:()=>j6e,semanticDiagnosticsOptionDeclarations:()=>DRt,serializeCompilerOptions:()=>fke,server:()=>t5r,servicesVersion:()=>$9r,setCommentRange:()=>mA,setConfigFileInOptions:()=>E8e,setConstantValue:()=>dxe,setEachParent:()=>vKe,setEmitFlags:()=>co,setFunctionNameHelper:()=>Rxe,setGetSourceFileAsHashVersioned:()=>AGe,setIdentifierAutoGenerate:()=>pV,setIdentifierGeneratedImportReference:()=>nte,setIdentifierTypeArguments:()=>rT,setInternalEmitFlags:()=>rte,setLocalizedDiagnosticMessages:()=>Fee,setModuleDefaultHelper:()=>kxe,setNodeChildren:()=>tRt,setNodeFlags:()=>rxe,setObjectAllocator:()=>kDe,setOriginalNode:()=>Ho,setParent:()=>kA,setParentRecursive:()=>_N,setPrivateIdentifier:()=>C4,setSnippetElement:()=>Va,setSourceMapRange:()=>Qg,setStackTraceLimit:()=>nN,setStartsOnNewLine:()=>ble,setSyntheticLeadingComments:()=>US,setSyntheticTrailingComments:()=>rY,setSys:()=>Ev,setSysLog:()=>kb,setTextRange:()=>un,setTextRangeEnd:()=>n4,setTextRangePos:()=>_6,setTextRangePosEnd:()=>MS,setTextRangePosWidth:()=>Che,setTokenSourceMapRange:()=>Axe,setTypeNode:()=>pxe,setUILocale:()=>Ks,setValueDeclaration:()=>cee,shouldAllowImportingTsExtension:()=>Ete,shouldPreserveConstEnums:()=>uV,shouldUseUriStyleNodeCoreModules:()=>AFe,showModuleSpecifier:()=>RDe,signatureHasLiteralTypes:()=>U8e,signatureHasRestParameter:()=>u0,signatureToDisplayParts:()=>Cje,single:()=>Dg,singleElementArray:()=>Rm,singleIterator:()=>Za,singleOrMany:()=>hl,singleOrUndefined:()=>wu,skipAlias:()=>dh,skipAssertions:()=>UDr,skipConstraint:()=>rje,skipOuterExpressions:()=>ZC,skipParentheses:()=>jA,skipPartiallyEmittedExpressions:()=>D1,skipTrivia:()=>Ju,skipTypeChecking:()=>jQ,skipTypeParentheses:()=>H8,skipWhile:()=>hE,sliceAfter:()=>dhe,some:()=>lr,sort:()=>Cg,sortAndDeduplicate:()=>Ir,sortAndDeduplicateDiagnostics:()=>nA,sourceFileAffectingCompilerOptions:()=>A8e,sourceFileMayBeEmitted:()=>X3,sourceMapCommentRegExp:()=>j8e,sourceMapCommentRegExpDontCareLineStart:()=>WDt,spacePart:()=>DI,spanMap:()=>ka,spreadArrayHelper:()=>Txe,stableSort:()=>Cl,startEndContainsRange:()=>O7e,startEndOverlapsWithStartEnd:()=>kGe,startOnNewLine:()=>l0,startTracing:()=>bE,startsWith:()=>uc,startsWithDirectory:()=>Th,startsWithUnderscore:()=>xje,startsWithUseStrict:()=>cRt,stringContainsAt:()=>iFt,stringToToken:()=>Hn,stripQuotes:()=>N2,supportedDeclarationExtensions:()=>ole,supportedJSExtensions:()=>lhe,supportedJSExtensionsFlat:()=>$X,supportedLocaleDirectories:()=>S3,supportedTSExtensions:()=>f6,supportedTSExtensionsFlat:()=>Pee,supportedTSImplementationExtensions:()=>ale,suppressLeadingAndTrailingTrivia:()=>ME,suppressLeadingTrivia:()=>yje,suppressTrailingTrivia:()=>JGt,symbolEscapedNameNoDefault:()=>XGe,symbolName:()=>df,symbolNameNoDefault:()=>aje,symbolPart:()=>LGt,symbolToDisplayParts:()=>bue,syntaxMayBeASICandidate:()=>qGt,syntaxRequiresTrailingSemicolonOrASI:()=>tFe,sys:()=>_d,sysLog:()=>Uy,tagNamesAreEquivalent:()=>aP,takeWhile:()=>Zf,targetOptionDeclaration:()=>u8e,templateObjectHelper:()=>Sxe,testFormatSettings:()=>SZr,textChangeRangeIsUnchanged:()=>K,textChangeRangeNewSpan:()=>Ys,textChanges:()=>po,textOrKeywordPart:()=>fje,textPart:()=>P2,textRangeContainsPositionInclusive:()=>_2,textSpanContainsPosition:()=>Cy,textSpanContainsTextSpan:()=>y2,textSpanEnd:()=>Uu,textSpanIntersection:()=>AZ,textSpanIntersectsWith:()=>sI,textSpanIntersectsWithPosition:()=>my,textSpanIntersectsWithTextSpan:()=>pA,textSpanIsEmpty:()=>NE,textSpanOverlap:()=>B3,textSpanOverlapsWith:()=>LR,textSpansEqual:()=>Vte,textToKeywordObj:()=>k,timestamp:()=>ql,toArray:()=>ys,toBuilderFileEmit:()=>akt,toBuilderStateFileInfoForMultiEmit:()=>okt,toEditorSettings:()=>s0e,toFileNameLowerCase:()=>lf,toLowerCase:()=>il,toPath:()=>gA,toProgramEmitPending:()=>ckt,tokenIsIdentifierOrKeyword:()=>MI,tokenIsIdentifierOrKeywordOrGreaterThan:()=>FR,tokenToString:()=>vr,trace:()=>wl,tracing:()=>Mi,tracingEnabled:()=>Ay,transferSourceFileChildren:()=>rRt,transform:()=>lVr,transformClassFields:()=>lxt,transformDeclarations:()=>A6e,transformECMAScriptModule:()=>g6e,transformES2015:()=>Ext,transformES2016:()=>bxt,transformES2017:()=>dxt,transformES2018:()=>pxt,transformES2019:()=>fxt,transformES2020:()=>Ixt,transformES2021:()=>Cxt,transformESDecorators:()=>Axt,transformESNext:()=>mxt,transformGenerators:()=>Bxt,transformJsx:()=>yxt,transformLegacyDecorators:()=>gxt,transformModule:()=>u6e,transformNamedEvaluation:()=>PE,transformNodeModule:()=>Sxt,transformNodes:()=>f_e,transformSystemModule:()=>vxt,transformTypeScript:()=>cxt,transpile:()=>ALr,transpileDeclaration:()=>uLr,transpileModule:()=>SFt,transpileOptionValueCompilerOptions:()=>FRt,tryAddToSet:()=>Zi,tryAndIgnoreErrors:()=>sFe,tryCast:()=>eo,tryDirectoryExists:()=>iFe,tryExtractTSExtension:()=>Gce,tryFileExists:()=>Sue,tryGetClassExtendingExpressionWithTypeArguments:()=>Pme,tryGetClassImplementingOrExtendingExpressionWithTypeArguments:()=>Ome,tryGetDirectories:()=>nFe,tryGetExtensionFromPath:()=>hN,tryGetImportFromModuleSpecifier:()=>lee,tryGetJSDocSatisfiesTypeNode:()=>Ile,tryGetModuleNameFromFile:()=>Qhe,tryGetModuleSpecifierFromDeclaration:()=>Y8,tryGetNativePerformanceHooks:()=>U_,tryGetPropertyAccessOrIdentifierToString:()=>Dee,tryGetPropertyNameOfBindingOrAssignmentElement:()=>rke,tryGetSourceMappingURL:()=>PDt,tryGetTextOfPropertyName:()=>wQ,tryIOAndConsumeErrors:()=>oFe,tryParseJson:()=>Lce,tryParsePattern:()=>t4,tryParsePatterns:()=>Yee,tryParseRawSourceMap:()=>MDt,tryReadDirectory:()=>vje,tryReadFile:()=>Mle,tryRemoveDirectoryPrefix:()=>nhe,tryRemoveExtension:()=>zDe,tryRemovePrefix:()=>Sb,tryRemoveSuffix:()=>f1,typeAcquisitionDeclarations:()=>lke,typeAliasNamePart:()=>PGt,typeDirectiveIsEqualTo:()=>Yae,typeKeywords:()=>eje,typeParameterNamePart:()=>OGt,typeToDisplayParts:()=>H_e,unchangedPollThresholds:()=>Pp,unchangedTextChangeRange:()=>Ze,unescapeLeadingUnderscores:()=>Sc,unmangleScopedPackageName:()=>a_e,unorderedRemoveItem:()=>Oy,unorderedRemoveItemAt:()=>lh,unreachableCodeIsError:()=>LDe,unsetNodeChildren:()=>YKe,unusedLabelIsError:()=>VDe,unwrapInnermostStatementOfLabel:()=>ome,unwrapParenthesizedExpression:()=>mle,updateErrorForNoInputFiles:()=>hke,updateLanguageServiceSourceFile:()=>yze,updateMissingFilePathsWatch:()=>y6e,updateResolutionField:()=>mte,updateSharedExtendedConfigFileWatcher:()=>Kke,updateSourceFile:()=>i8e,updateWatchingWildcardDirectories:()=>C_e,usesExtensionsOnImports:()=>JDe,usingSingleLineStringWriter:()=>Z3,utf16EncodeAsString:()=>Ss,validateLocaleAndSetLanguage:()=>oQ,valuesHelper:()=>Dxe,version:()=>y,versionMajorMinor:()=>m,visitArray:()=>l_e,visitCommaListElements:()=>u_e,visitEachChild:()=>ns,visitFunctionBody:()=>L2,visitIterationBody:()=>yy,visitLexicalEnvironment:()=>K8e,visitNode:()=>xr,visitNodes:()=>ws,visitParameterList:()=>hI,walkUpBindingElementsAndPatterns:()=>fA,walkUpLexicalEnvironments:()=>KDt,walkUpOuterExpressions:()=>lRt,walkUpParenthesizedExpressions:()=>KR,walkUpParenthesizedTypes:()=>pee,walkUpParenthesizedTypesAndGetParentAndChild:()=>fme,whitespaceOrMapCommentRegExp:()=>z8e,writeCommentRange:()=>jX,writeFile:()=>vee,writeFileEnsuringDirectories:()=>Dme,zipWith:()=>fe}),e.exports=p(f);var m="5.5",y="5.5.4",B=(n=>(n[n.LessThan=-1]="LessThan",n[n.EqualTo=0]="EqualTo",n[n.GreaterThan=1]="GreaterThan",n))(B||{}),v=[],G=new Map,T=new Set;function O(n){return n?n.length:0}function X(n,c){if(n)for(let u=0;u=0;u--){let d=c(n[u],u);if(d)return d}}function le(n,c){if(n!==void 0)for(let u=0;u=0;d--){let I=n[d];if(c(I,d))return I}}function ke(n,c,u){if(n===void 0)return-1;for(let d=u??0;d=0;d--)if(c(n[d],d))return d;return-1}function et(n,c){for(let u=0;uu(d,c[I]))}function Xe(n,c,u){for(let d=u||0;d{let h=c(I,d);if(h!==void 0){let[b,R]=h;b!==void 0&&R!==void 0&&u.set(b,R)}}),u}function we(n,c,u){if(n.has(c))return n.get(c);let d=u();return n.set(c,d),d}function Zi(n,c){return n.has(c)?!1:(n.add(c),!0)}function*Za(n){yield n}function ka(n,c,u){let d;if(n){d=[];let I=n.length,h,b,R=0,N=0;for(;R{let[h,b]=c(I,d);u.set(h,b)}),u}function lr(n,c){if(n)if(c){for(let u of n)if(c(u))return!0}else return n.length>0;return!1}function ga(n,c,u){let d;for(let I=0;In[b])}function ud(n,c){let u=[];for(let d of n)pa(u,d,c);return u}function TA(n,c,u){return n.length===0?[]:n.length===1?n.slice():u?YA(n,c,u):ud(n,c)}function Ld(n,c){if(n.length===0)return v;let u=n[0],d=[u];for(let I=1;I0&&d(c,n[b-1]))return!1;if(b0&&w.assertGreaterThanOrEqual(u(c[h],c[h-1]),0);t:for(let b=I;Ib&&w.assertGreaterThanOrEqual(u(n[I],n[I-1]),0),u(c[h],n[I])){case-1:d.push(c[h]);continue e;case 0:continue e;case 1:continue t}}return d}function Hr(n,c){return c===void 0?n:n===void 0?[c]:(n.push(c),n)}function Ws(n,c){return n===void 0?c:c===void 0?n:Ra(n)?Ra(c)?vi(n,c):Hr(n,c):Ra(c)?Hr(c,n):[n,c]}function Ko(n,c){return c<0?n.length+c:c}function ai(n,c,u,d){if(c===void 0||c.length===0)return n;if(n===void 0)return c.slice(u,d);u=u===void 0?0:Ko(c,u),d=d===void 0?c.length:Ko(c,d);for(let I=u;Iu(n[d],n[I])||Xl(d,I))}function Cg(n,c){return n.length===0?n:n.slice().sort(c)}function*Zu(n){for(let c=n.length-1;c>=0;c--)yield n[c]}function Cl(n,c){let u=Yu(n);return Fu(n,u,c),u.map(d=>n[d])}function wi(n,c,u,d){for(;un?.at(c):(n,c)=>{if(n&&(c=Ko(n,c),c>1),N=u(n[R],R);switch(d(N,c)){case-1:h=R+1;break;case 0:return R;case 1:b=R-1;break}}return~h}function Td(n,c,u,d,I){if(n&&n.length>0){let h=n.length;if(h>0){let b=d===void 0||d<0?0:d,R=I===void 0||b+I>h-1?h-1:b+I,N;for(arguments.length<=2?(N=n[b],b++):N=u;b<=R;)N=c(N,n[b],b),b++;return N}}return u}var ei=Object.prototype.hasOwnProperty;function Qa(n,c){return ei.call(n,c)}function Rt(n,c){return ei.call(n,c)?n[c]:void 0}function kl(n){let c=[];for(let u in n)ei.call(n,u)&&c.push(u);return c}function Hu(n){let c=[];do{let u=Object.getOwnPropertyNames(n);for(let d of u)pa(c,d)}while(n=Object.getPrototypeOf(n));return c}function us(n){let c=[];for(let u in n)ei.call(n,u)&&c.push(n[u]);return c}function og(n,c){let u=new Array(n);for(let d=0;d100&&u>c.length>>1){let R=c.length-u;c.copyWithin(0,u),c.length=R,u=0}return b}return{enqueue:I,dequeue:h,isEmpty:d}}function Ud(n,c){let u=new Map,d=0;function*I(){for(let b of u.values())Ra(b)?yield*b:yield b}let h={has(b){let R=n(b);if(!u.has(R))return!1;let N=u.get(R);if(!Ra(N))return c(N,b);for(let V of N)if(c(V,b))return!0;return!1},add(b){let R=n(b);if(u.has(R)){let N=u.get(R);if(Ra(N))Ue(N,b,c)||(N.push(b),d++);else{let V=N;c(V,b)||(u.set(R,[V,b]),d++)}}else u.set(R,b),d++;return this},delete(b){let R=n(b);if(!u.has(R))return!1;let N=u.get(R);if(Ra(N)){for(let V=0;VI(),[Symbol.toStringTag]:u[Symbol.toStringTag]};return h}function Ra(n){return Array.isArray(n)}function ys(n){return Ra(n)?n:[n]}function Xa(n){return typeof n=="string"}function cm(n){return typeof n=="number"}function eo(n,c){return n!==void 0&&c(n)?n:void 0}function ps(n,c){return n!==void 0&&c(n)?n:w.fail(`Invalid cast. The supplied value ${n} did not pass the test '${w.getFunctionName(c)}'.`)}function oc(n){}function TC(){return!1}function pI(){return!0}function SI(){}function Bl(n){return n}function il(n){return n.toLowerCase()}var LA=/[^\u0130\u0131\u00DFa-z0-9\\/:\-_. ]+/g;function lf(n){return LA.test(n)?n.replace(LA,il):n}function za(){throw new Error("Not implemented")}function iu(n){let c;return()=>(n&&(c=n(),n=void 0),c)}function ii(n){let c=new Map;return u=>{let d=`${typeof u}:${u}`,I=c.get(d);return I===void 0&&!c.has(d)&&(I=n(u),c.set(d,I)),I}}function NC(n){let c=new WeakMap;return u=>{let d=c.get(u);return d===void 0&&!c.has(u)&&(d=n(u),c.set(u,d)),d}}function Jh(n,c){return(...u)=>{let d=c.get(u);return d===void 0&&!c.has(u)&&(d=n(...u),c.set(u,d)),d}}function Tm(n,c,u,d,I){if(I){let h=[];for(let b=0;bTd(h,(R,N)=>N(R),b)}else return d?h=>d(u(c(n(h)))):u?h=>u(c(n(h))):c?h=>c(n(h)):n?h=>n(h):h=>h}var _l=(n=>(n[n.None=0]="None",n[n.Normal=1]="Normal",n[n.Aggressive=2]="Aggressive",n[n.VeryAggressive=3]="VeryAggressive",n))(_l||{});function Og(n,c){return n===c}function sp(n,c){return n===c||n!==void 0&&c!==void 0&&n.toUpperCase()===c.toUpperCase()}function lm(n,c){return Og(n,c)}function ch(n,c){return n===c?0:n===void 0?-1:c===void 0?1:nc(u,d)===-1?u:d)}function fs(n,c){return n===c?0:n===void 0?-1:c===void 0?1:(n=n.toUpperCase(),c=c.toUpperCase(),nc?1:0)}function Ao(n,c){return n===c?0:n===void 0?-1:c===void 0?1:(n=n.toLowerCase(),c=c.toLowerCase(),nc?1:0)}function Do(n,c){return ch(n,c)}function zl(n){return n?fs:Do}var Nr=(()=>{return c;function n(u,d,I){if(u===d)return 0;if(u===void 0)return-1;if(d===void 0)return 1;let h=I(u,d);return h<0?-1:h>0?1:0}function c(u){let d=new Intl.Collator(u,{usage:"sort",sensitivity:"variant",numeric:!0}).compare;return(I,h)=>n(I,h,d)}})(),Nn,Di;function na(){return Di}function Ks(n){Di!==n&&(Di=n,Nn=void 0)}function Li(n,c){return(Nn||(Nn=Nr(Di)))(n,c)}function Zl(n,c,u,d){return n===c?0:n===void 0?-1:c===void 0?1:d(n[u],c[u])}function RA(n,c){return Xl(n?1:0,c?1:0)}function Nd(n,c,u){let d=Math.max(2,Math.floor(n.length*.34)),I=Math.floor(n.length*.4)+1,h;for(let b of c){let R=u(b);if(R!==void 0&&Math.abs(R.length-n.length)<=d){if(R===n||R.length<3&&R.toLowerCase()!==n.toLowerCase())continue;let N=WI(n,R,I-.1);if(N===void 0)continue;w.assert(Nu?R-u:1),P=Math.floor(c.length>u+R?u+R:c.length);I[0]=R;let M=R;for(let re=1;reu)return;let te=d;d=I,I=te}let b=d[c.length];return b>u?void 0:b}function pl(n,c,u){let d=n.length-c.length;return d>=0&&(u?sp(n.slice(d),c):n.indexOf(c,d)===d)}function Qm(n,c){return pl(n,c)?n.slice(0,n.length-c.length):n}function f1(n,c){return pl(n,c)?n.slice(0,n.length-c.length):void 0}function fv(n){let c=n.length;for(let u=c-1;u>0;u--){let d=n.charCodeAt(u);if(d>=48&&d<=57)do--u,d=n.charCodeAt(u);while(u>0&&d>=48&&d<=57);else if(u>4&&(d===110||d===78)){if(--u,d=n.charCodeAt(u),d!==105&&d!==73||(--u,d=n.charCodeAt(u),d!==109&&d!==77))break;--u,d=n.charCodeAt(u)}else break;if(d!==45&&d!==46)break;c=u}return c===n.length?n:n.slice(0,c)}function eA(n,c){for(let u=0;uu===c)}function vp(n,c){for(let u=0;uI&&(I=b.prefix.length,d=h)}return d}function uc(n,c,u){return u?sp(n.slice(0,c.length),c):n.lastIndexOf(c,0)===0}function b_(n,c){return uc(n,c)?n.substr(c.length):n}function Sb(n,c,u=Bl){return uc(u(n),u(c))?n.substring(c.length):void 0}function um({prefix:n,suffix:c},u){return u.length>=n.length+c.length&&uc(u,n)&&pl(u,c)}function uh(n,c){return u=>n(u)&&c(u)}function pg(...n){return(...c)=>{let u;for(let d of n)if(u=d(...c),u)return u;return u}}function gm(n){return(...c)=>!n(...c)}function wb(n){}function Rm(n){return n===void 0?void 0:[n]}function PI(n,c,u,d,I,h){h=h||oc;let b=0,R=0,N=n.length,V=c.length,P=!1;for(;b(n[n.Off=0]="Off",n[n.Error=1]="Error",n[n.Warning=2]="Warning",n[n.Info=3]="Info",n[n.Verbose=4]="Verbose",n))(ie||{}),w;(n=>{let c=0;n.currentLogLevel=2,n.isDebugging=!1;function u(ir){return n.currentLogLevel<=ir}n.shouldLog=u;function d(ir,ni){n.loggingHost&&u(ir)&&n.loggingHost.log(ir,ni)}function I(ir){d(3,ir)}n.log=I,(ir=>{function ni(nc){d(1,nc)}ir.error=ni;function gs(nc){d(2,nc)}ir.warn=gs;function Hs(nc){d(3,nc)}ir.log=Hs;function qa(nc){d(4,nc)}ir.trace=qa})(I=n.log||(n.log={}));let h={};function b(){return c}n.getAssertionLevel=b;function R(ir){let ni=c;if(c=ir,ir>ni)for(let gs of kl(h)){let Hs=h[gs];Hs!==void 0&&n[gs]!==Hs.assertion&&ir>=Hs.level&&(n[gs]=Hs,h[gs]=void 0)}}n.setAssertionLevel=R;function N(ir){return c>=ir}n.shouldAssert=N;function V(ir,ni){return N(ir)?!0:(h[ni]={level:ir,assertion:n[ni]},n[ni]=oc,!1)}function P(ir,ni){debugger;let gs=new Error(ir?`Debug Failure. ${ir}`:"Debug Failure.");throw Error.captureStackTrace&&Error.captureStackTrace(gs,ni||P),gs}n.fail=P;function M(ir,ni,gs){return P(`${ni||"Unexpected node."}\r -Node ${ht(ir.kind)} was unexpected.`,gs||M)}n.failBadSyntaxKind=M;function te(ir,ni,gs,Hs){ir||(ni=ni?`False expression: ${ni}`:"False expression.",gs&&(ni+=`\r -Verbose Debug Information: `+(typeof gs=="string"?gs:gs())),P(ni,Hs||te))}n.assert=te;function re(ir,ni,gs,Hs,qa){if(ir!==ni){let nc=gs?Hs?`${gs} ${Hs}`:gs:"";P(`Expected ${ir} === ${ni}. ${nc}`,qa||re)}}n.assertEqual=re;function ue(ir,ni,gs,Hs){ir>=ni&&P(`Expected ${ir} < ${ni}. ${gs||""}`,Hs||ue)}n.assertLessThan=ue;function Ae(ir,ni,gs){ir>ni&&P(`Expected ${ir} <= ${ni}`,gs||Ae)}n.assertLessThanOrEqual=Ae;function de(ir,ni,gs){ir= ${ni}`,gs||de)}n.assertGreaterThanOrEqual=de;function Be(ir,ni,gs){ir==null&&P(ni,gs||Be)}n.assertIsDefined=Be;function Fe(ir,ni,gs){return Be(ir,ni,gs||Fe),ir}n.checkDefined=Fe;function Ne(ir,ni,gs){for(let Hs of ir)Be(Hs,ni,gs||Ne)}n.assertEachIsDefined=Ne;function Qe(ir,ni,gs){return Ne(ir,ni,gs||Qe),ir}n.checkEachDefined=Qe;function De(ir,ni="Illegal value:",gs){let Hs=typeof ir=="object"&&Qa(ir,"kind")&&Qa(ir,"pos")?"SyntaxKind: "+ht(ir.kind):JSON.stringify(ir);return P(`${ni} ${Hs}`,gs||De)}n.assertNever=De;function lt(ir,ni,gs,Hs){V(1,"assertEachNode")&&te(ni===void 0||he(ir,ni),gs||"Unexpected node.",()=>`Node array did not pass test '${It(ni)}'.`,Hs||lt)}n.assertEachNode=lt;function Le(ir,ni,gs,Hs){V(1,"assertNode")&&te(ir!==void 0&&(ni===void 0||ni(ir)),gs||"Unexpected node.",()=>`Node ${ht(ir?.kind)} did not pass test '${It(ni)}'.`,Hs||Le)}n.assertNode=Le;function je(ir,ni,gs,Hs){V(1,"assertNotNode")&&te(ir===void 0||ni===void 0||!ni(ir),gs||"Unexpected node.",()=>`Node ${ht(ir.kind)} should not have passed test '${It(ni)}'.`,Hs||je)}n.assertNotNode=je;function st(ir,ni,gs,Hs){V(1,"assertOptionalNode")&&te(ni===void 0||ir===void 0||ni(ir),gs||"Unexpected node.",()=>`Node ${ht(ir?.kind)} did not pass test '${It(ni)}'.`,Hs||st)}n.assertOptionalNode=st;function nt(ir,ni,gs,Hs){V(1,"assertOptionalToken")&&te(ni===void 0||ir===void 0||ir.kind===ni,gs||"Unexpected node.",()=>`Node ${ht(ir?.kind)} was not a '${ht(ni)}' token.`,Hs||nt)}n.assertOptionalToken=nt;function qe(ir,ni,gs){V(1,"assertMissingNode")&&te(ir===void 0,ni||"Unexpected node.",()=>`Node ${ht(ir.kind)} was unexpected'.`,gs||qe)}n.assertMissingNode=qe;function it(ir){}n.type=it;function It(ir){if(typeof ir!="function")return"";if(Qa(ir,"name"))return ir.name;{let ni=Function.prototype.toString.call(ir),gs=/^function\s+([\w$]+)\s*\(/.exec(ni);return gs?gs[1]:""}}n.getFunctionName=It;function dt(ir){return`{ name: ${Sc(ir.escapedName)}; flags: ${jt(ir.flags)}; declarations: ${Ot(ir.declarations,ni=>ht(ni.kind))} }`}n.formatSymbol=dt;function wt(ir=0,ni,gs){let Hs=Ye(ni);if(ir===0)return Hs.length>0&&Hs[0][0]===0?Hs[0][1]:"0";if(gs){let qa=[],nc=ir;for(let[Nc,cg]of Hs){if(Nc>ir)break;Nc!==0&&Nc&ir&&(qa.push(cg),nc&=~Nc)}if(nc===0)return qa.join("|")}else for(let[qa,nc]of Hs)if(qa===ir)return nc;return ir.toString()}n.formatEnum=wt;let vt=new Map;function Ye(ir){let ni=vt.get(ir);if(ni)return ni;let gs=[];for(let qa in ir){let nc=ir[qa];typeof nc=="number"&&gs.push([nc,qa])}let Hs=Cl(gs,(qa,nc)=>Xl(qa[0],nc[0]));return vt.set(ir,Hs),Hs}function ht(ir){return wt(ir,g2,!1)}n.formatSyntaxKind=ht;function Et(ir){return wt(ir,Eh,!1)}n.formatSnippetKind=Et;function Kt(ir){return wt(ir,$T,!1)}n.formatScriptKind=Kt;function Tt(ir){return wt(ir,EE,!0)}n.formatNodeFlags=Tt;function Lt(ir){return wt(ir,VA,!0)}n.formatNodeCheckFlags=Lt;function kt(ir){return wt(ir,k0,!0)}n.formatModifierFlags=kt;function Zt(ir){return wt(ir,xb,!0)}n.formatTransformFlags=Zt;function Dr(ir){return wt(ir,y1,!0)}n.formatEmitFlags=Dr;function jt(ir){return wt(ir,A2,!0)}n.formatSymbolFlags=jt;function mr(ir){return wt(ir,Am,!0)}n.formatTypeFlags=mr;function Pt(ir){return wt(ir,Xy,!0)}n.formatSignatureFlags=Pt;function Vr(ir){return wt(ir,Vf,!0)}n.formatObjectFlags=Vr;function Yr(ir){return wt(ir,Wr,!0)}n.formatFlowFlags=Yr;function pr(ir){return wt(ir,I1,!0)}n.formatRelationComparisonResult=pr;function zr(ir){return wt(ir,Y8e,!0)}n.formatCheckMode=zr;function $n(ir){return wt(ir,H8e,!0)}n.formatSignatureCheckMode=$n;function bi(ir){return wt(ir,Q8e,!0)}n.formatTypeFacts=bi;let Pi=!1,Ns;function gi(ir){"__debugFlowFlags"in ir||Object.defineProperties(ir,{__tsDebuggerDisplay:{value(){let ni=this.flags&2?"FlowStart":this.flags&4?"FlowBranchLabel":this.flags&8?"FlowLoopLabel":this.flags&16?"FlowAssignment":this.flags&32?"FlowTrueCondition":this.flags&64?"FlowFalseCondition":this.flags&128?"FlowSwitchClause":this.flags&256?"FlowArrayMutation":this.flags&512?"FlowCall":this.flags&1024?"FlowReduceLabel":this.flags&1?"FlowUnreachable":"UnknownFlow",gs=this.flags&-2048;return`${ni}${gs?` (${Yr(gs)})`:""}`}},__debugFlowFlags:{get(){return wt(this.flags,Wr,!0)}},__debugToString:{value(){return Wu(this)}}})}function jn(ir){return Pi&&(typeof Object.setPrototypeOf=="function"?(Ns||(Ns=Object.create(Object.prototype),gi(Ns)),Object.setPrototypeOf(ir,Ns)):gi(ir)),ir}n.attachFlowNodeDebugInfo=jn;let xs;function Ec(ir){"__tsDebuggerDisplay"in ir||Object.defineProperties(ir,{__tsDebuggerDisplay:{value(ni){return ni=String(ni).replace(/(?:,[\s\w\d_]+:[^,]+)+\]$/,"]"),`NodeArray ${ni}`}}})}function xi(ir){Pi&&(typeof Object.setPrototypeOf=="function"?(xs||(xs=Object.create(Array.prototype),Ec(xs)),Object.setPrototypeOf(ir,xs)):Ec(ir))}n.attachNodeArrayDebugInfo=xi;function rc(){if(Pi)return;let ir=new WeakMap,ni=new WeakMap;Object.defineProperties(xC.getSymbolConstructor().prototype,{__tsDebuggerDisplay:{value(){let Hs=this.flags&33554432?"TransientSymbol":"Symbol",qa=this.flags&-33554433;return`${Hs} '${df(this)}'${qa?` (${jt(qa)})`:""}`}},__debugFlags:{get(){return jt(this.flags)}}}),Object.defineProperties(xC.getTypeConstructor().prototype,{__tsDebuggerDisplay:{value(){let Hs=this.flags&67359327?`IntrinsicType ${this.intrinsicName}${this.debugIntrinsicName?` (${this.debugIntrinsicName})`:""}`:this.flags&98304?"NullableType":this.flags&384?`LiteralType ${JSON.stringify(this.value)}`:this.flags&2048?`LiteralType ${this.value.negative?"-":""}${this.value.base10Value}n`:this.flags&8192?"UniqueESSymbolType":this.flags&32?"EnumType":this.flags&1048576?"UnionType":this.flags&2097152?"IntersectionType":this.flags&4194304?"IndexType":this.flags&8388608?"IndexedAccessType":this.flags&16777216?"ConditionalType":this.flags&33554432?"SubstitutionType":this.flags&262144?"TypeParameter":this.flags&524288?this.objectFlags&3?"InterfaceType":this.objectFlags&4?"TypeReference":this.objectFlags&8?"TupleType":this.objectFlags&16?"AnonymousType":this.objectFlags&32?"MappedType":this.objectFlags&1024?"ReverseMappedType":this.objectFlags&256?"EvolvingArrayType":"ObjectType":"Type",qa=this.flags&524288?this.objectFlags&-1344:0;return`${Hs}${this.symbol?` '${df(this.symbol)}'`:""}${qa?` (${Vr(qa)})`:""}`}},__debugFlags:{get(){return mr(this.flags)}},__debugObjectFlags:{get(){return this.flags&524288?Vr(this.objectFlags):""}},__debugTypeToString:{value(){let Hs=ir.get(this);return Hs===void 0&&(Hs=this.checker.typeToString(this),ir.set(this,Hs)),Hs}}}),Object.defineProperties(xC.getSignatureConstructor().prototype,{__debugFlags:{get(){return Pt(this.flags)}},__debugSignatureToString:{value(){var Hs;return(Hs=this.checker)==null?void 0:Hs.signatureToString(this)}}});let gs=[xC.getNodeConstructor(),xC.getIdentifierConstructor(),xC.getTokenConstructor(),xC.getSourceFileConstructor()];for(let Hs of gs)Qa(Hs.prototype,"__debugKind")||Object.defineProperties(Hs.prototype,{__tsDebuggerDisplay:{value(){return`${Ip(this)?"GeneratedIdentifier":sr(this)?`Identifier '${ao(this)}'`:kc(this)?`PrivateIdentifier '${ao(this)}'`:bu(this)?`StringLiteral ${JSON.stringify(this.text.length<10?this.text:this.text.slice(10)+"...")}`:du(this)?`NumericLiteral ${this.text}`:K3(this)?`BigIntLiteral ${this.text}n`:qp(this)?"TypeParameterDeclaration":Jc(this)?"ParameterDeclaration":Rf(this)?"ConstructorDeclaration":Pb(this)?"GetAccessorDeclaration":sb(this)?"SetAccessorDeclaration":CV(this)?"CallSignatureDeclaration":A(this)?"ConstructSignatureDeclaration":_(this)?"IndexSignatureDeclaration":S(this)?"TypePredicateNode":F(this)?"TypeReferenceNode":Y(this)?"FunctionTypeNode":H(this)?"ConstructorTypeNode":oe(this)?"TypeQueryNode":Se(this)?"TypeLiteralNode":He(this)?"ArrayTypeNode":Ct(this)?"TupleTypeNode":Ut(this)?"OptionalTypeNode":cn(this)?"RestTypeNode":Is(this)?"UnionTypeNode":ji(this)?"IntersectionTypeNode":Ei(this)?"ConditionalTypeNode":bo(this)?"InferTypeNode":ro(this)?"ParenthesizedTypeNode":ca(this)?"ThisTypeNode":as(this)?"TypeOperatorNode":hs(this)?"IndexedAccessTypeNode":Sl(this)?"MappedTypeNode":id(this)?"LiteralTypeNode":At(this)?"NamedTupleMember":Tu(this)?"ImportTypeNode":ht(this.kind)}${this.flags?` (${Tt(this.flags)})`:""}`}},__debugKind:{get(){return ht(this.kind)}},__debugNodeFlags:{get(){return Tt(this.flags)}},__debugModifierFlags:{get(){return kt(CDe(this))}},__debugTransformFlags:{get(){return Zt(this.transformFlags)}},__debugIsParseTreeNode:{get(){return dZ(this)}},__debugEmitFlags:{get(){return Dr(Sg(this))}},__debugGetText:{value(qa){if(qd(this))return"";let nc=ni.get(this);if(nc===void 0){let Nc=jc(this),cg=Nc&&ls(Nc);nc=cg?pG(cg,Nc,qa):"",ni.set(this,nc)}return nc}}});Pi=!0}n.enableDebugInfo=rc;function Vl(ir){let ni=ir&7,gs=ni===0?"in out":ni===3?"[bivariant]":ni===2?"in":ni===1?"out":ni===4?"[independent]":"";return ir&8?gs+=" (unmeasurable)":ir&16&&(gs+=" (unreliable)"),gs}n.formatVariance=Vl;class ul{__debugToString(){var ni;switch(this.kind){case 3:return((ni=this.debugInfo)==null?void 0:ni.call(this))||"(function mapper)";case 0:return`${this.source.__debugTypeToString()} -> ${this.target.__debugTypeToString()}`;case 1:return fe(this.sources,this.targets||Ot(this.sources,()=>"any"),(gs,Hs)=>`${gs.__debugTypeToString()} -> ${typeof Hs=="string"?Hs:Hs.__debugTypeToString()}`).join(", ");case 2:return fe(this.sources,this.targets,(gs,Hs)=>`${gs.__debugTypeToString()} -> ${Hs().__debugTypeToString()}`).join(", ");case 5:case 4:return`m1: ${this.mapper1.__debugToString().split(` +`)}var ZWn=class extends Error{constructor(e,t,r){super(KNo(r)),this.request=e,this.headers=t,this.response=r,this.name="GraphqlResponseError",this.errors=r.errors,this.data=r.data,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},jNo=["method","baseUrl","url","headers","request","query","mediaType"],zNo=["query","method","url"],GWn=/\/api\/v3\/?$/;function qNo(e,t,r){if(r){if(typeof t=="string"&&"query"in r)return Promise.reject(new Error('[@octokit/graphql] "query" cannot be used as variable name'));for(let g in r)if(zNo.includes(g))return Promise.reject(new Error(`[@octokit/graphql] "${g}" cannot be used as variable name`))}let s=typeof t=="string"?Object.assign({query:t},r):t,a=Object.keys(s).reduce((g,p)=>jNo.includes(p)?(g[p]=s[p],g):(g.variables||(g.variables={}),g.variables[p]=s[p],g),{}),o=s.baseUrl||e.endpoint.DEFAULTS.baseUrl;return GWn.test(o)&&(a.url=o.replace(GWn,"/api/graphql")),e(a).then(g=>{if(g.data.errors){let p={};for(let f of Object.keys(g.headers))p[f]=g.headers[f];throw new ZWn(a,p,g.data)}return g.data.data})}function Gnr(e,t){let r=e.defaults(t);return Object.assign((a,o)=>qNo(r,a,o),{defaults:Gnr.bind(null,r),endpoint:r.endpoint})}var $No=Gnr(XNo.request,{headers:{"user-agent":`octokit-graphql.js/${UNo} ${(0,JNo.getUserAgent)()}`},method:"POST",url:"/graphql"});function eRo(e){return Gnr(e,{method:"POST",url:"/graphql"})}});var OWn=z((tjc,PWn)=>{"use strict";var Fnr=Object.defineProperty,tRo=Object.getOwnPropertyDescriptor,rRo=Object.getOwnPropertyNames,nRo=Object.prototype.hasOwnProperty,iRo=(e,t)=>{for(var r in t)Fnr(e,r,{get:t[r],enumerable:!0})},sRo=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of rRo(t))!nRo.call(e,a)&&a!==r&&Fnr(e,a,{get:()=>t[a],enumerable:!(s=tRo(t,a))||s.enumerable});return e},oRo=e=>sRo(Fnr({},"__esModule",{value:!0}),e),WWn={};iRo(WWn,{createTokenAuth:()=>dRo});PWn.exports=oRo(WWn);var aRo=/^v1\./,cRo=/^ghs_/,lRo=/^ghu_/;async function uRo(e){let t=e.split(/\./).length===3,r=aRo.test(e)||cRo.test(e),s=lRo.test(e);return{type:"token",token:e,tokenType:t?"app":r?"installation":s?"user-to-server":"oauth"}}function gRo(e){return e.split(/\./).length===3?`bearer ${e}`:`token ${e}`}async function ARo(e,t,r,s){let a=t.endpoint.merge(r,s);return a.headers.authorization=gRo(e),t(a)}var dRo=function(t){if(!t)throw new Error("[@octokit/auth-token] No token passed to createTokenAuth");if(typeof t!="string")throw new Error("[@octokit/auth-token] Token passed to createTokenAuth is not a string");return t=t.replace(/^(token|bearer) +/i,""),Object.assign(uRo.bind(null,t),{hook:ARo.bind(null,t)})}});var UWn=z((rjc,JWn)=>{"use strict";var Znr=Object.defineProperty,pRo=Object.getOwnPropertyDescriptor,fRo=Object.getOwnPropertyNames,IRo=Object.prototype.hasOwnProperty,CRo=(e,t)=>{for(var r in t)Znr(e,r,{get:t[r],enumerable:!0})},mRo=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of fRo(t))!IRo.call(e,a)&&a!==r&&Znr(e,a,{get:()=>t[a],enumerable:!(s=pRo(t,a))||s.enumerable});return e},hRo=e=>mRo(Znr({},"__esModule",{value:!0}),e),YWn={};CRo(YWn,{Octokit:()=>SRo});JWn.exports=hRo(YWn);var _Ro=gOe(),yRo=pWn(),QWn=fOe(),bRo=VWn(),ERo=OWn(),XWn="5.2.0",MWn=()=>{},BRo=console.warn.bind(console),vRo=console.error.bind(console),HWn=`octokit-core.js/${XWn} ${(0,_Ro.getUserAgent)()}`,SRo=class{static{this.VERSION=XWn}static defaults(e){return class extends this{constructor(...r){let s=r[0]||{};if(typeof e=="function"){super(e(s));return}super(Object.assign({},e,s,s.userAgent&&e.userAgent?{userAgent:`${s.userAgent} ${e.userAgent}`}:null))}}}static{this.plugins=[]}static plugin(...e){let t=this.plugins;return class extends this{static{this.plugins=t.concat(e.filter(s=>!t.includes(s)))}}}constructor(e={}){let t=new yRo.Collection,r={baseUrl:QWn.request.endpoint.DEFAULTS.baseUrl,headers:{},request:Object.assign({},e.request,{hook:t.bind(null,"request")}),mediaType:{previews:[],format:""}};if(r.headers["user-agent"]=e.userAgent?`${e.userAgent} ${HWn}`:HWn,e.baseUrl&&(r.baseUrl=e.baseUrl),e.previews&&(r.mediaType.previews=e.previews),e.timeZone&&(r.headers["time-zone"]=e.timeZone),this.request=QWn.request.defaults(r),this.graphql=(0,bRo.withCustomRequest)(this.request).defaults(r),this.log=Object.assign({debug:MWn,info:MWn,warn:BRo,error:vRo},e.log),this.hook=t,e.authStrategy){let{authStrategy:a,...o}=e,g=a(Object.assign({request:this.request,log:this.log,octokit:this,octokitOptions:o},e.auth));t.wrap("request",g.hook),this.auth=g}else if(!e.auth)this.auth=async()=>({type:"unauthenticated"});else{let a=(0,ERo.createTokenAuth)(e.auth);t.wrap("request",a.hook),this.auth=a}let s=this.constructor;for(let a=0;a{"use strict";var Lnr=Object.defineProperty,wRo=Object.getOwnPropertyDescriptor,TRo=Object.getOwnPropertyNames,NRo=Object.prototype.hasOwnProperty,RRo=(e,t)=>{for(var r in t)Lnr(e,r,{get:t[r],enumerable:!0})},DRo=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of TRo(t))!NRo.call(e,a)&&a!==r&&Lnr(e,a,{get:()=>t[a],enumerable:!(s=wRo(t,a))||s.enumerable});return e},xRo=e=>DRo(Lnr({},"__esModule",{value:!0}),e),KWn={};RRo(KWn,{legacyRestEndpointMethods:()=>$Wn,restEndpointMethods:()=>qWn});e3n.exports=xRo(KWn);var jWn="10.4.1",kRo={actions:{addCustomLabelsToSelfHostedRunnerForOrg:["POST /orgs/{org}/actions/runners/{runner_id}/labels"],addCustomLabelsToSelfHostedRunnerForRepo:["POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],approveWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve"],cancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel"],createEnvironmentVariable:["POST /repositories/{repository_id}/environments/{environment_name}/variables"],createOrUpdateEnvironmentSecret:["PUT /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}"],createOrgVariable:["POST /orgs/{org}/actions/variables"],createRegistrationTokenForOrg:["POST /orgs/{org}/actions/runners/registration-token"],createRegistrationTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/registration-token"],createRemoveTokenForOrg:["POST /orgs/{org}/actions/runners/remove-token"],createRemoveTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/remove-token"],createRepoVariable:["POST /repos/{owner}/{repo}/actions/variables"],createWorkflowDispatch:["POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches"],deleteActionsCacheById:["DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}"],deleteActionsCacheByKey:["DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}"],deleteArtifact:["DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],deleteEnvironmentSecret:["DELETE /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],deleteEnvironmentVariable:["DELETE /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],deleteOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}"],deleteOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}"],deleteRepoVariable:["DELETE /repos/{owner}/{repo}/actions/variables/{name}"],deleteSelfHostedRunnerFromOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}"],deleteSelfHostedRunnerFromRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}"],deleteWorkflowRun:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}"],deleteWorkflowRunLogs:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],disableSelectedRepositoryGithubActionsOrganization:["DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}"],disableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable"],downloadArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}"],downloadJobLogsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs"],downloadWorkflowRunAttemptLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs"],downloadWorkflowRunLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],enableSelectedRepositoryGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories/{repository_id}"],enableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable"],forceCancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/force-cancel"],generateRunnerJitconfigForOrg:["POST /orgs/{org}/actions/runners/generate-jitconfig"],generateRunnerJitconfigForRepo:["POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig"],getActionsCacheList:["GET /repos/{owner}/{repo}/actions/caches"],getActionsCacheUsage:["GET /repos/{owner}/{repo}/actions/cache/usage"],getActionsCacheUsageByRepoForOrg:["GET /orgs/{org}/actions/cache/usage-by-repository"],getActionsCacheUsageForOrg:["GET /orgs/{org}/actions/cache/usage"],getAllowedActionsOrganization:["GET /orgs/{org}/actions/permissions/selected-actions"],getAllowedActionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/selected-actions"],getArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],getCustomOidcSubClaimForRepo:["GET /repos/{owner}/{repo}/actions/oidc/customization/sub"],getEnvironmentPublicKey:["GET /repositories/{repository_id}/environments/{environment_name}/secrets/public-key"],getEnvironmentSecret:["GET /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],getEnvironmentVariable:["GET /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],getGithubActionsDefaultWorkflowPermissionsOrganization:["GET /orgs/{org}/actions/permissions/workflow"],getGithubActionsDefaultWorkflowPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/workflow"],getGithubActionsPermissionsOrganization:["GET /orgs/{org}/actions/permissions"],getGithubActionsPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions"],getJobForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}"],getOrgPublicKey:["GET /orgs/{org}/actions/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}"],getOrgVariable:["GET /orgs/{org}/actions/variables/{name}"],getPendingDeploymentsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],getRepoPermissions:["GET /repos/{owner}/{repo}/actions/permissions",{},{renamed:["actions","getGithubActionsPermissionsRepository"]}],getRepoPublicKey:["GET /repos/{owner}/{repo}/actions/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/actions/secrets/{secret_name}"],getRepoVariable:["GET /repos/{owner}/{repo}/actions/variables/{name}"],getReviewsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals"],getSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}"],getSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}"],getWorkflow:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}"],getWorkflowAccessToRepository:["GET /repos/{owner}/{repo}/actions/permissions/access"],getWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}"],getWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}"],getWorkflowRunUsage:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing"],getWorkflowUsage:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing"],listArtifactsForRepo:["GET /repos/{owner}/{repo}/actions/artifacts"],listEnvironmentSecrets:["GET /repositories/{repository_id}/environments/{environment_name}/secrets"],listEnvironmentVariables:["GET /repositories/{repository_id}/environments/{environment_name}/variables"],listJobsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs"],listJobsForWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs"],listLabelsForSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}/labels"],listLabelsForSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],listOrgSecrets:["GET /orgs/{org}/actions/secrets"],listOrgVariables:["GET /orgs/{org}/actions/variables"],listRepoOrganizationSecrets:["GET /repos/{owner}/{repo}/actions/organization-secrets"],listRepoOrganizationVariables:["GET /repos/{owner}/{repo}/actions/organization-variables"],listRepoSecrets:["GET /repos/{owner}/{repo}/actions/secrets"],listRepoVariables:["GET /repos/{owner}/{repo}/actions/variables"],listRepoWorkflows:["GET /repos/{owner}/{repo}/actions/workflows"],listRunnerApplicationsForOrg:["GET /orgs/{org}/actions/runners/downloads"],listRunnerApplicationsForRepo:["GET /repos/{owner}/{repo}/actions/runners/downloads"],listSelectedReposForOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}/repositories"],listSelectedReposForOrgVariable:["GET /orgs/{org}/actions/variables/{name}/repositories"],listSelectedRepositoriesEnabledGithubActionsOrganization:["GET /orgs/{org}/actions/permissions/repositories"],listSelfHostedRunnersForOrg:["GET /orgs/{org}/actions/runners"],listSelfHostedRunnersForRepo:["GET /repos/{owner}/{repo}/actions/runners"],listWorkflowRunArtifacts:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts"],listWorkflowRuns:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs"],listWorkflowRunsForRepo:["GET /repos/{owner}/{repo}/actions/runs"],reRunJobForWorkflowRun:["POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun"],reRunWorkflow:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun"],reRunWorkflowFailedJobs:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs"],removeAllCustomLabelsFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels"],removeAllCustomLabelsFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],removeCustomLabelFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}"],removeCustomLabelFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],reviewCustomGatesForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule"],reviewPendingDeploymentsForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],setAllowedActionsOrganization:["PUT /orgs/{org}/actions/permissions/selected-actions"],setAllowedActionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/selected-actions"],setCustomLabelsForSelfHostedRunnerForOrg:["PUT /orgs/{org}/actions/runners/{runner_id}/labels"],setCustomLabelsForSelfHostedRunnerForRepo:["PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],setCustomOidcSubClaimForRepo:["PUT /repos/{owner}/{repo}/actions/oidc/customization/sub"],setGithubActionsDefaultWorkflowPermissionsOrganization:["PUT /orgs/{org}/actions/permissions/workflow"],setGithubActionsDefaultWorkflowPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/workflow"],setGithubActionsPermissionsOrganization:["PUT /orgs/{org}/actions/permissions"],setGithubActionsPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories"],setSelectedReposForOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories"],setSelectedRepositoriesEnabledGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories"],setWorkflowAccessToRepository:["PUT /repos/{owner}/{repo}/actions/permissions/access"],updateEnvironmentVariable:["PATCH /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],updateOrgVariable:["PATCH /orgs/{org}/actions/variables/{name}"],updateRepoVariable:["PATCH /repos/{owner}/{repo}/actions/variables/{name}"]},activity:{checkRepoIsStarredByAuthenticatedUser:["GET /user/starred/{owner}/{repo}"],deleteRepoSubscription:["DELETE /repos/{owner}/{repo}/subscription"],deleteThreadSubscription:["DELETE /notifications/threads/{thread_id}/subscription"],getFeeds:["GET /feeds"],getRepoSubscription:["GET /repos/{owner}/{repo}/subscription"],getThread:["GET /notifications/threads/{thread_id}"],getThreadSubscriptionForAuthenticatedUser:["GET /notifications/threads/{thread_id}/subscription"],listEventsForAuthenticatedUser:["GET /users/{username}/events"],listNotificationsForAuthenticatedUser:["GET /notifications"],listOrgEventsForAuthenticatedUser:["GET /users/{username}/events/orgs/{org}"],listPublicEvents:["GET /events"],listPublicEventsForRepoNetwork:["GET /networks/{owner}/{repo}/events"],listPublicEventsForUser:["GET /users/{username}/events/public"],listPublicOrgEvents:["GET /orgs/{org}/events"],listReceivedEventsForUser:["GET /users/{username}/received_events"],listReceivedPublicEventsForUser:["GET /users/{username}/received_events/public"],listRepoEvents:["GET /repos/{owner}/{repo}/events"],listRepoNotificationsForAuthenticatedUser:["GET /repos/{owner}/{repo}/notifications"],listReposStarredByAuthenticatedUser:["GET /user/starred"],listReposStarredByUser:["GET /users/{username}/starred"],listReposWatchedByUser:["GET /users/{username}/subscriptions"],listStargazersForRepo:["GET /repos/{owner}/{repo}/stargazers"],listWatchedReposForAuthenticatedUser:["GET /user/subscriptions"],listWatchersForRepo:["GET /repos/{owner}/{repo}/subscribers"],markNotificationsAsRead:["PUT /notifications"],markRepoNotificationsAsRead:["PUT /repos/{owner}/{repo}/notifications"],markThreadAsDone:["DELETE /notifications/threads/{thread_id}"],markThreadAsRead:["PATCH /notifications/threads/{thread_id}"],setRepoSubscription:["PUT /repos/{owner}/{repo}/subscription"],setThreadSubscription:["PUT /notifications/threads/{thread_id}/subscription"],starRepoForAuthenticatedUser:["PUT /user/starred/{owner}/{repo}"],unstarRepoForAuthenticatedUser:["DELETE /user/starred/{owner}/{repo}"]},apps:{addRepoToInstallation:["PUT /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","addRepoToInstallationForAuthenticatedUser"]}],addRepoToInstallationForAuthenticatedUser:["PUT /user/installations/{installation_id}/repositories/{repository_id}"],checkToken:["POST /applications/{client_id}/token"],createFromManifest:["POST /app-manifests/{code}/conversions"],createInstallationAccessToken:["POST /app/installations/{installation_id}/access_tokens"],deleteAuthorization:["DELETE /applications/{client_id}/grant"],deleteInstallation:["DELETE /app/installations/{installation_id}"],deleteToken:["DELETE /applications/{client_id}/token"],getAuthenticated:["GET /app"],getBySlug:["GET /apps/{app_slug}"],getInstallation:["GET /app/installations/{installation_id}"],getOrgInstallation:["GET /orgs/{org}/installation"],getRepoInstallation:["GET /repos/{owner}/{repo}/installation"],getSubscriptionPlanForAccount:["GET /marketplace_listing/accounts/{account_id}"],getSubscriptionPlanForAccountStubbed:["GET /marketplace_listing/stubbed/accounts/{account_id}"],getUserInstallation:["GET /users/{username}/installation"],getWebhookConfigForApp:["GET /app/hook/config"],getWebhookDelivery:["GET /app/hook/deliveries/{delivery_id}"],listAccountsForPlan:["GET /marketplace_listing/plans/{plan_id}/accounts"],listAccountsForPlanStubbed:["GET /marketplace_listing/stubbed/plans/{plan_id}/accounts"],listInstallationReposForAuthenticatedUser:["GET /user/installations/{installation_id}/repositories"],listInstallationRequestsForAuthenticatedApp:["GET /app/installation-requests"],listInstallations:["GET /app/installations"],listInstallationsForAuthenticatedUser:["GET /user/installations"],listPlans:["GET /marketplace_listing/plans"],listPlansStubbed:["GET /marketplace_listing/stubbed/plans"],listReposAccessibleToInstallation:["GET /installation/repositories"],listSubscriptionsForAuthenticatedUser:["GET /user/marketplace_purchases"],listSubscriptionsForAuthenticatedUserStubbed:["GET /user/marketplace_purchases/stubbed"],listWebhookDeliveries:["GET /app/hook/deliveries"],redeliverWebhookDelivery:["POST /app/hook/deliveries/{delivery_id}/attempts"],removeRepoFromInstallation:["DELETE /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","removeRepoFromInstallationForAuthenticatedUser"]}],removeRepoFromInstallationForAuthenticatedUser:["DELETE /user/installations/{installation_id}/repositories/{repository_id}"],resetToken:["PATCH /applications/{client_id}/token"],revokeInstallationAccessToken:["DELETE /installation/token"],scopeToken:["POST /applications/{client_id}/token/scoped"],suspendInstallation:["PUT /app/installations/{installation_id}/suspended"],unsuspendInstallation:["DELETE /app/installations/{installation_id}/suspended"],updateWebhookConfigForApp:["PATCH /app/hook/config"]},billing:{getGithubActionsBillingOrg:["GET /orgs/{org}/settings/billing/actions"],getGithubActionsBillingUser:["GET /users/{username}/settings/billing/actions"],getGithubPackagesBillingOrg:["GET /orgs/{org}/settings/billing/packages"],getGithubPackagesBillingUser:["GET /users/{username}/settings/billing/packages"],getSharedStorageBillingOrg:["GET /orgs/{org}/settings/billing/shared-storage"],getSharedStorageBillingUser:["GET /users/{username}/settings/billing/shared-storage"]},checks:{create:["POST /repos/{owner}/{repo}/check-runs"],createSuite:["POST /repos/{owner}/{repo}/check-suites"],get:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}"],getSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}"],listAnnotations:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations"],listForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-runs"],listForSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs"],listSuitesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-suites"],rerequestRun:["POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest"],rerequestSuite:["POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest"],setSuitesPreferences:["PATCH /repos/{owner}/{repo}/check-suites/preferences"],update:["PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}"]},codeScanning:{deleteAnalysis:["DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}"],getAlert:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}",{},{renamedParameters:{alert_id:"alert_number"}}],getAnalysis:["GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}"],getCodeqlDatabase:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}"],getDefaultSetup:["GET /repos/{owner}/{repo}/code-scanning/default-setup"],getSarif:["GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}"],listAlertInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances"],listAlertsForOrg:["GET /orgs/{org}/code-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/code-scanning/alerts"],listAlertsInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances",{},{renamed:["codeScanning","listAlertInstances"]}],listCodeqlDatabases:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases"],listRecentAnalyses:["GET /repos/{owner}/{repo}/code-scanning/analyses"],updateAlert:["PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}"],updateDefaultSetup:["PATCH /repos/{owner}/{repo}/code-scanning/default-setup"],uploadSarif:["POST /repos/{owner}/{repo}/code-scanning/sarifs"]},codesOfConduct:{getAllCodesOfConduct:["GET /codes_of_conduct"],getConductCode:["GET /codes_of_conduct/{key}"]},codespaces:{addRepositoryForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],checkPermissionsForDevcontainer:["GET /repos/{owner}/{repo}/codespaces/permissions_check"],codespaceMachinesForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/machines"],createForAuthenticatedUser:["POST /user/codespaces"],createOrUpdateOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],createOrUpdateSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}"],createWithPrForAuthenticatedUser:["POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces"],createWithRepoForAuthenticatedUser:["POST /repos/{owner}/{repo}/codespaces"],deleteForAuthenticatedUser:["DELETE /user/codespaces/{codespace_name}"],deleteFromOrganization:["DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}"],deleteOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],deleteSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}"],exportForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/exports"],getCodespacesForUserInOrg:["GET /orgs/{org}/members/{username}/codespaces"],getExportDetailsForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/exports/{export_id}"],getForAuthenticatedUser:["GET /user/codespaces/{codespace_name}"],getOrgPublicKey:["GET /orgs/{org}/codespaces/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}"],getPublicKeyForAuthenticatedUser:["GET /user/codespaces/secrets/public-key"],getRepoPublicKey:["GET /repos/{owner}/{repo}/codespaces/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],getSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}"],listDevcontainersInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/devcontainers"],listForAuthenticatedUser:["GET /user/codespaces"],listInOrganization:["GET /orgs/{org}/codespaces",{},{renamedParameters:{org_id:"org"}}],listInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces"],listOrgSecrets:["GET /orgs/{org}/codespaces/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/codespaces/secrets"],listRepositoriesForSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}/repositories"],listSecretsForAuthenticatedUser:["GET /user/codespaces/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],preFlightWithRepoForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/new"],publishForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/publish"],removeRepositoryForSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],repoMachinesForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/machines"],setRepositoriesForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],startForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/start"],stopForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/stop"],stopInOrganization:["POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop"],updateForAuthenticatedUser:["PATCH /user/codespaces/{codespace_name}"]},copilot:{addCopilotSeatsForTeams:["POST /orgs/{org}/copilot/billing/selected_teams"],addCopilotSeatsForUsers:["POST /orgs/{org}/copilot/billing/selected_users"],cancelCopilotSeatAssignmentForTeams:["DELETE /orgs/{org}/copilot/billing/selected_teams"],cancelCopilotSeatAssignmentForUsers:["DELETE /orgs/{org}/copilot/billing/selected_users"],getCopilotOrganizationDetails:["GET /orgs/{org}/copilot/billing"],getCopilotSeatDetailsForUser:["GET /orgs/{org}/members/{username}/copilot"],listCopilotSeats:["GET /orgs/{org}/copilot/billing/seats"]},dependabot:{addSelectedRepoToOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],deleteOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],getAlert:["GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"],getOrgPublicKey:["GET /orgs/{org}/dependabot/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}"],getRepoPublicKey:["GET /repos/{owner}/{repo}/dependabot/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/dependabot/alerts"],listAlertsForOrg:["GET /orgs/{org}/dependabot/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/dependabot/alerts"],listOrgSecrets:["GET /orgs/{org}/dependabot/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/dependabot/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],updateAlert:["PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"]},dependencyGraph:{createRepositorySnapshot:["POST /repos/{owner}/{repo}/dependency-graph/snapshots"],diffRange:["GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}"],exportSbom:["GET /repos/{owner}/{repo}/dependency-graph/sbom"]},emojis:{get:["GET /emojis"]},gists:{checkIsStarred:["GET /gists/{gist_id}/star"],create:["POST /gists"],createComment:["POST /gists/{gist_id}/comments"],delete:["DELETE /gists/{gist_id}"],deleteComment:["DELETE /gists/{gist_id}/comments/{comment_id}"],fork:["POST /gists/{gist_id}/forks"],get:["GET /gists/{gist_id}"],getComment:["GET /gists/{gist_id}/comments/{comment_id}"],getRevision:["GET /gists/{gist_id}/{sha}"],list:["GET /gists"],listComments:["GET /gists/{gist_id}/comments"],listCommits:["GET /gists/{gist_id}/commits"],listForUser:["GET /users/{username}/gists"],listForks:["GET /gists/{gist_id}/forks"],listPublic:["GET /gists/public"],listStarred:["GET /gists/starred"],star:["PUT /gists/{gist_id}/star"],unstar:["DELETE /gists/{gist_id}/star"],update:["PATCH /gists/{gist_id}"],updateComment:["PATCH /gists/{gist_id}/comments/{comment_id}"]},git:{createBlob:["POST /repos/{owner}/{repo}/git/blobs"],createCommit:["POST /repos/{owner}/{repo}/git/commits"],createRef:["POST /repos/{owner}/{repo}/git/refs"],createTag:["POST /repos/{owner}/{repo}/git/tags"],createTree:["POST /repos/{owner}/{repo}/git/trees"],deleteRef:["DELETE /repos/{owner}/{repo}/git/refs/{ref}"],getBlob:["GET /repos/{owner}/{repo}/git/blobs/{file_sha}"],getCommit:["GET /repos/{owner}/{repo}/git/commits/{commit_sha}"],getRef:["GET /repos/{owner}/{repo}/git/ref/{ref}"],getTag:["GET /repos/{owner}/{repo}/git/tags/{tag_sha}"],getTree:["GET /repos/{owner}/{repo}/git/trees/{tree_sha}"],listMatchingRefs:["GET /repos/{owner}/{repo}/git/matching-refs/{ref}"],updateRef:["PATCH /repos/{owner}/{repo}/git/refs/{ref}"]},gitignore:{getAllTemplates:["GET /gitignore/templates"],getTemplate:["GET /gitignore/templates/{name}"]},interactions:{getRestrictionsForAuthenticatedUser:["GET /user/interaction-limits"],getRestrictionsForOrg:["GET /orgs/{org}/interaction-limits"],getRestrictionsForRepo:["GET /repos/{owner}/{repo}/interaction-limits"],getRestrictionsForYourPublicRepos:["GET /user/interaction-limits",{},{renamed:["interactions","getRestrictionsForAuthenticatedUser"]}],removeRestrictionsForAuthenticatedUser:["DELETE /user/interaction-limits"],removeRestrictionsForOrg:["DELETE /orgs/{org}/interaction-limits"],removeRestrictionsForRepo:["DELETE /repos/{owner}/{repo}/interaction-limits"],removeRestrictionsForYourPublicRepos:["DELETE /user/interaction-limits",{},{renamed:["interactions","removeRestrictionsForAuthenticatedUser"]}],setRestrictionsForAuthenticatedUser:["PUT /user/interaction-limits"],setRestrictionsForOrg:["PUT /orgs/{org}/interaction-limits"],setRestrictionsForRepo:["PUT /repos/{owner}/{repo}/interaction-limits"],setRestrictionsForYourPublicRepos:["PUT /user/interaction-limits",{},{renamed:["interactions","setRestrictionsForAuthenticatedUser"]}]},issues:{addAssignees:["POST /repos/{owner}/{repo}/issues/{issue_number}/assignees"],addLabels:["POST /repos/{owner}/{repo}/issues/{issue_number}/labels"],checkUserCanBeAssigned:["GET /repos/{owner}/{repo}/assignees/{assignee}"],checkUserCanBeAssignedToIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee}"],create:["POST /repos/{owner}/{repo}/issues"],createComment:["POST /repos/{owner}/{repo}/issues/{issue_number}/comments"],createLabel:["POST /repos/{owner}/{repo}/labels"],createMilestone:["POST /repos/{owner}/{repo}/milestones"],deleteComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}"],deleteLabel:["DELETE /repos/{owner}/{repo}/labels/{name}"],deleteMilestone:["DELETE /repos/{owner}/{repo}/milestones/{milestone_number}"],get:["GET /repos/{owner}/{repo}/issues/{issue_number}"],getComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}"],getEvent:["GET /repos/{owner}/{repo}/issues/events/{event_id}"],getLabel:["GET /repos/{owner}/{repo}/labels/{name}"],getMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}"],list:["GET /issues"],listAssignees:["GET /repos/{owner}/{repo}/assignees"],listComments:["GET /repos/{owner}/{repo}/issues/{issue_number}/comments"],listCommentsForRepo:["GET /repos/{owner}/{repo}/issues/comments"],listEvents:["GET /repos/{owner}/{repo}/issues/{issue_number}/events"],listEventsForRepo:["GET /repos/{owner}/{repo}/issues/events"],listEventsForTimeline:["GET /repos/{owner}/{repo}/issues/{issue_number}/timeline"],listForAuthenticatedUser:["GET /user/issues"],listForOrg:["GET /orgs/{org}/issues"],listForRepo:["GET /repos/{owner}/{repo}/issues"],listLabelsForMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels"],listLabelsForRepo:["GET /repos/{owner}/{repo}/labels"],listLabelsOnIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/labels"],listMilestones:["GET /repos/{owner}/{repo}/milestones"],lock:["PUT /repos/{owner}/{repo}/issues/{issue_number}/lock"],removeAllLabels:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels"],removeAssignees:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees"],removeLabel:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}"],setLabels:["PUT /repos/{owner}/{repo}/issues/{issue_number}/labels"],unlock:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock"],update:["PATCH /repos/{owner}/{repo}/issues/{issue_number}"],updateComment:["PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}"],updateLabel:["PATCH /repos/{owner}/{repo}/labels/{name}"],updateMilestone:["PATCH /repos/{owner}/{repo}/milestones/{milestone_number}"]},licenses:{get:["GET /licenses/{license}"],getAllCommonlyUsed:["GET /licenses"],getForRepo:["GET /repos/{owner}/{repo}/license"]},markdown:{render:["POST /markdown"],renderRaw:["POST /markdown/raw",{headers:{"content-type":"text/plain; charset=utf-8"}}]},meta:{get:["GET /meta"],getAllVersions:["GET /versions"],getOctocat:["GET /octocat"],getZen:["GET /zen"],root:["GET /"]},migrations:{cancelImport:["DELETE /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.cancelImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#cancel-an-import"}],deleteArchiveForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/archive"],deleteArchiveForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/archive"],downloadArchiveForOrg:["GET /orgs/{org}/migrations/{migration_id}/archive"],getArchiveForAuthenticatedUser:["GET /user/migrations/{migration_id}/archive"],getCommitAuthors:["GET /repos/{owner}/{repo}/import/authors",{},{deprecated:"octokit.rest.migrations.getCommitAuthors() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-commit-authors"}],getImportStatus:["GET /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.getImportStatus() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-an-import-status"}],getLargeFiles:["GET /repos/{owner}/{repo}/import/large_files",{},{deprecated:"octokit.rest.migrations.getLargeFiles() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-large-files"}],getStatusForAuthenticatedUser:["GET /user/migrations/{migration_id}"],getStatusForOrg:["GET /orgs/{org}/migrations/{migration_id}"],listForAuthenticatedUser:["GET /user/migrations"],listForOrg:["GET /orgs/{org}/migrations"],listReposForAuthenticatedUser:["GET /user/migrations/{migration_id}/repositories"],listReposForOrg:["GET /orgs/{org}/migrations/{migration_id}/repositories"],listReposForUser:["GET /user/migrations/{migration_id}/repositories",{},{renamed:["migrations","listReposForAuthenticatedUser"]}],mapCommitAuthor:["PATCH /repos/{owner}/{repo}/import/authors/{author_id}",{},{deprecated:"octokit.rest.migrations.mapCommitAuthor() is deprecated, see https://docs.github.com/rest/migrations/source-imports#map-a-commit-author"}],setLfsPreference:["PATCH /repos/{owner}/{repo}/import/lfs",{},{deprecated:"octokit.rest.migrations.setLfsPreference() is deprecated, see https://docs.github.com/rest/migrations/source-imports#update-git-lfs-preference"}],startForAuthenticatedUser:["POST /user/migrations"],startForOrg:["POST /orgs/{org}/migrations"],startImport:["PUT /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.startImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#start-an-import"}],unlockRepoForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock"],unlockRepoForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock"],updateImport:["PATCH /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.updateImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#update-an-import"}]},oidc:{getOidcCustomSubTemplateForOrg:["GET /orgs/{org}/actions/oidc/customization/sub"],updateOidcCustomSubTemplateForOrg:["PUT /orgs/{org}/actions/oidc/customization/sub"]},orgs:{addSecurityManagerTeam:["PUT /orgs/{org}/security-managers/teams/{team_slug}"],assignTeamToOrgRole:["PUT /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],assignUserToOrgRole:["PUT /orgs/{org}/organization-roles/users/{username}/{role_id}"],blockUser:["PUT /orgs/{org}/blocks/{username}"],cancelInvitation:["DELETE /orgs/{org}/invitations/{invitation_id}"],checkBlockedUser:["GET /orgs/{org}/blocks/{username}"],checkMembershipForUser:["GET /orgs/{org}/members/{username}"],checkPublicMembershipForUser:["GET /orgs/{org}/public_members/{username}"],convertMemberToOutsideCollaborator:["PUT /orgs/{org}/outside_collaborators/{username}"],createCustomOrganizationRole:["POST /orgs/{org}/organization-roles"],createInvitation:["POST /orgs/{org}/invitations"],createOrUpdateCustomProperties:["PATCH /orgs/{org}/properties/schema"],createOrUpdateCustomPropertiesValuesForRepos:["PATCH /orgs/{org}/properties/values"],createOrUpdateCustomProperty:["PUT /orgs/{org}/properties/schema/{custom_property_name}"],createWebhook:["POST /orgs/{org}/hooks"],delete:["DELETE /orgs/{org}"],deleteCustomOrganizationRole:["DELETE /orgs/{org}/organization-roles/{role_id}"],deleteWebhook:["DELETE /orgs/{org}/hooks/{hook_id}"],enableOrDisableSecurityProductOnAllOrgRepos:["POST /orgs/{org}/{security_product}/{enablement}"],get:["GET /orgs/{org}"],getAllCustomProperties:["GET /orgs/{org}/properties/schema"],getCustomProperty:["GET /orgs/{org}/properties/schema/{custom_property_name}"],getMembershipForAuthenticatedUser:["GET /user/memberships/orgs/{org}"],getMembershipForUser:["GET /orgs/{org}/memberships/{username}"],getOrgRole:["GET /orgs/{org}/organization-roles/{role_id}"],getWebhook:["GET /orgs/{org}/hooks/{hook_id}"],getWebhookConfigForOrg:["GET /orgs/{org}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}"],list:["GET /organizations"],listAppInstallations:["GET /orgs/{org}/installations"],listBlockedUsers:["GET /orgs/{org}/blocks"],listCustomPropertiesValuesForRepos:["GET /orgs/{org}/properties/values"],listFailedInvitations:["GET /orgs/{org}/failed_invitations"],listForAuthenticatedUser:["GET /user/orgs"],listForUser:["GET /users/{username}/orgs"],listInvitationTeams:["GET /orgs/{org}/invitations/{invitation_id}/teams"],listMembers:["GET /orgs/{org}/members"],listMembershipsForAuthenticatedUser:["GET /user/memberships/orgs"],listOrgRoleTeams:["GET /orgs/{org}/organization-roles/{role_id}/teams"],listOrgRoleUsers:["GET /orgs/{org}/organization-roles/{role_id}/users"],listOrgRoles:["GET /orgs/{org}/organization-roles"],listOrganizationFineGrainedPermissions:["GET /orgs/{org}/organization-fine-grained-permissions"],listOutsideCollaborators:["GET /orgs/{org}/outside_collaborators"],listPatGrantRepositories:["GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories"],listPatGrantRequestRepositories:["GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories"],listPatGrantRequests:["GET /orgs/{org}/personal-access-token-requests"],listPatGrants:["GET /orgs/{org}/personal-access-tokens"],listPendingInvitations:["GET /orgs/{org}/invitations"],listPublicMembers:["GET /orgs/{org}/public_members"],listSecurityManagerTeams:["GET /orgs/{org}/security-managers"],listWebhookDeliveries:["GET /orgs/{org}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /orgs/{org}/hooks"],patchCustomOrganizationRole:["PATCH /orgs/{org}/organization-roles/{role_id}"],pingWebhook:["POST /orgs/{org}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeCustomProperty:["DELETE /orgs/{org}/properties/schema/{custom_property_name}"],removeMember:["DELETE /orgs/{org}/members/{username}"],removeMembershipForUser:["DELETE /orgs/{org}/memberships/{username}"],removeOutsideCollaborator:["DELETE /orgs/{org}/outside_collaborators/{username}"],removePublicMembershipForAuthenticatedUser:["DELETE /orgs/{org}/public_members/{username}"],removeSecurityManagerTeam:["DELETE /orgs/{org}/security-managers/teams/{team_slug}"],reviewPatGrantRequest:["POST /orgs/{org}/personal-access-token-requests/{pat_request_id}"],reviewPatGrantRequestsInBulk:["POST /orgs/{org}/personal-access-token-requests"],revokeAllOrgRolesTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}"],revokeAllOrgRolesUser:["DELETE /orgs/{org}/organization-roles/users/{username}"],revokeOrgRoleTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],revokeOrgRoleUser:["DELETE /orgs/{org}/organization-roles/users/{username}/{role_id}"],setMembershipForUser:["PUT /orgs/{org}/memberships/{username}"],setPublicMembershipForAuthenticatedUser:["PUT /orgs/{org}/public_members/{username}"],unblockUser:["DELETE /orgs/{org}/blocks/{username}"],update:["PATCH /orgs/{org}"],updateMembershipForAuthenticatedUser:["PATCH /user/memberships/orgs/{org}"],updatePatAccess:["POST /orgs/{org}/personal-access-tokens/{pat_id}"],updatePatAccesses:["POST /orgs/{org}/personal-access-tokens"],updateWebhook:["PATCH /orgs/{org}/hooks/{hook_id}"],updateWebhookConfigForOrg:["PATCH /orgs/{org}/hooks/{hook_id}/config"]},packages:{deletePackageForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}"],deletePackageForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}"],deletePackageForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}"],deletePackageVersionForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getAllPackageVersionsForAPackageOwnedByAnOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByOrg"]}],getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByAuthenticatedUser"]}],getAllPackageVersionsForPackageOwnedByAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions"],getPackageForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}"],getPackageForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}"],getPackageForUser:["GET /users/{username}/packages/{package_type}/{package_name}"],getPackageVersionForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],listDockerMigrationConflictingPackagesForAuthenticatedUser:["GET /user/docker/conflicts"],listDockerMigrationConflictingPackagesForOrganization:["GET /orgs/{org}/docker/conflicts"],listDockerMigrationConflictingPackagesForUser:["GET /users/{username}/docker/conflicts"],listPackagesForAuthenticatedUser:["GET /user/packages"],listPackagesForOrganization:["GET /orgs/{org}/packages"],listPackagesForUser:["GET /users/{username}/packages"],restorePackageForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForUser:["POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageVersionForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForUser:["POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"]},projects:{addCollaborator:["PUT /projects/{project_id}/collaborators/{username}"],createCard:["POST /projects/columns/{column_id}/cards"],createColumn:["POST /projects/{project_id}/columns"],createForAuthenticatedUser:["POST /user/projects"],createForOrg:["POST /orgs/{org}/projects"],createForRepo:["POST /repos/{owner}/{repo}/projects"],delete:["DELETE /projects/{project_id}"],deleteCard:["DELETE /projects/columns/cards/{card_id}"],deleteColumn:["DELETE /projects/columns/{column_id}"],get:["GET /projects/{project_id}"],getCard:["GET /projects/columns/cards/{card_id}"],getColumn:["GET /projects/columns/{column_id}"],getPermissionForUser:["GET /projects/{project_id}/collaborators/{username}/permission"],listCards:["GET /projects/columns/{column_id}/cards"],listCollaborators:["GET /projects/{project_id}/collaborators"],listColumns:["GET /projects/{project_id}/columns"],listForOrg:["GET /orgs/{org}/projects"],listForRepo:["GET /repos/{owner}/{repo}/projects"],listForUser:["GET /users/{username}/projects"],moveCard:["POST /projects/columns/cards/{card_id}/moves"],moveColumn:["POST /projects/columns/{column_id}/moves"],removeCollaborator:["DELETE /projects/{project_id}/collaborators/{username}"],update:["PATCH /projects/{project_id}"],updateCard:["PATCH /projects/columns/cards/{card_id}"],updateColumn:["PATCH /projects/columns/{column_id}"]},pulls:{checkIfMerged:["GET /repos/{owner}/{repo}/pulls/{pull_number}/merge"],create:["POST /repos/{owner}/{repo}/pulls"],createReplyForReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies"],createReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],createReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments"],deletePendingReview:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],deleteReviewComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}"],dismissReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals"],get:["GET /repos/{owner}/{repo}/pulls/{pull_number}"],getReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],getReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}"],list:["GET /repos/{owner}/{repo}/pulls"],listCommentsForReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments"],listCommits:["GET /repos/{owner}/{repo}/pulls/{pull_number}/commits"],listFiles:["GET /repos/{owner}/{repo}/pulls/{pull_number}/files"],listRequestedReviewers:["GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],listReviewComments:["GET /repos/{owner}/{repo}/pulls/{pull_number}/comments"],listReviewCommentsForRepo:["GET /repos/{owner}/{repo}/pulls/comments"],listReviews:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],merge:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge"],removeRequestedReviewers:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],requestReviewers:["POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],submitReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events"],update:["PATCH /repos/{owner}/{repo}/pulls/{pull_number}"],updateBranch:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch"],updateReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],updateReviewComment:["PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}"]},rateLimit:{get:["GET /rate_limit"]},reactions:{createForCommitComment:["POST /repos/{owner}/{repo}/comments/{comment_id}/reactions"],createForIssue:["POST /repos/{owner}/{repo}/issues/{issue_number}/reactions"],createForIssueComment:["POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],createForPullRequestReviewComment:["POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],createForRelease:["POST /repos/{owner}/{repo}/releases/{release_id}/reactions"],createForTeamDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],createForTeamDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"],deleteForCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}"],deleteForIssue:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}"],deleteForIssueComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}"],deleteForPullRequestComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}"],deleteForRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}"],deleteForTeamDiscussion:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}"],deleteForTeamDiscussionComment:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}"],listForCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}/reactions"],listForIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/reactions"],listForIssueComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],listForPullRequestReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],listForRelease:["GET /repos/{owner}/{repo}/releases/{release_id}/reactions"],listForTeamDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],listForTeamDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"]},repos:{acceptInvitation:["PATCH /user/repository_invitations/{invitation_id}",{},{renamed:["repos","acceptInvitationForAuthenticatedUser"]}],acceptInvitationForAuthenticatedUser:["PATCH /user/repository_invitations/{invitation_id}"],addAppAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],addCollaborator:["PUT /repos/{owner}/{repo}/collaborators/{username}"],addStatusCheckContexts:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],addTeamAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],addUserAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],cancelPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}/cancel"],checkAutomatedSecurityFixes:["GET /repos/{owner}/{repo}/automated-security-fixes"],checkCollaborator:["GET /repos/{owner}/{repo}/collaborators/{username}"],checkVulnerabilityAlerts:["GET /repos/{owner}/{repo}/vulnerability-alerts"],codeownersErrors:["GET /repos/{owner}/{repo}/codeowners/errors"],compareCommits:["GET /repos/{owner}/{repo}/compare/{base}...{head}"],compareCommitsWithBasehead:["GET /repos/{owner}/{repo}/compare/{basehead}"],createAutolink:["POST /repos/{owner}/{repo}/autolinks"],createCommitComment:["POST /repos/{owner}/{repo}/commits/{commit_sha}/comments"],createCommitSignatureProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],createCommitStatus:["POST /repos/{owner}/{repo}/statuses/{sha}"],createDeployKey:["POST /repos/{owner}/{repo}/keys"],createDeployment:["POST /repos/{owner}/{repo}/deployments"],createDeploymentBranchPolicy:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],createDeploymentProtectionRule:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],createDeploymentStatus:["POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],createDispatchEvent:["POST /repos/{owner}/{repo}/dispatches"],createForAuthenticatedUser:["POST /user/repos"],createFork:["POST /repos/{owner}/{repo}/forks"],createInOrg:["POST /orgs/{org}/repos"],createOrUpdateCustomPropertiesValues:["PATCH /repos/{owner}/{repo}/properties/values"],createOrUpdateEnvironment:["PUT /repos/{owner}/{repo}/environments/{environment_name}"],createOrUpdateFileContents:["PUT /repos/{owner}/{repo}/contents/{path}"],createOrgRuleset:["POST /orgs/{org}/rulesets"],createPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments"],createPagesSite:["POST /repos/{owner}/{repo}/pages"],createRelease:["POST /repos/{owner}/{repo}/releases"],createRepoRuleset:["POST /repos/{owner}/{repo}/rulesets"],createTagProtection:["POST /repos/{owner}/{repo}/tags/protection"],createUsingTemplate:["POST /repos/{template_owner}/{template_repo}/generate"],createWebhook:["POST /repos/{owner}/{repo}/hooks"],declineInvitation:["DELETE /user/repository_invitations/{invitation_id}",{},{renamed:["repos","declineInvitationForAuthenticatedUser"]}],declineInvitationForAuthenticatedUser:["DELETE /user/repository_invitations/{invitation_id}"],delete:["DELETE /repos/{owner}/{repo}"],deleteAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],deleteAdminBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],deleteAnEnvironment:["DELETE /repos/{owner}/{repo}/environments/{environment_name}"],deleteAutolink:["DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}"],deleteBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection"],deleteCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}"],deleteCommitSignatureProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],deleteDeployKey:["DELETE /repos/{owner}/{repo}/keys/{key_id}"],deleteDeployment:["DELETE /repos/{owner}/{repo}/deployments/{deployment_id}"],deleteDeploymentBranchPolicy:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],deleteFile:["DELETE /repos/{owner}/{repo}/contents/{path}"],deleteInvitation:["DELETE /repos/{owner}/{repo}/invitations/{invitation_id}"],deleteOrgRuleset:["DELETE /orgs/{org}/rulesets/{ruleset_id}"],deletePagesSite:["DELETE /repos/{owner}/{repo}/pages"],deletePullRequestReviewProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],deleteRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}"],deleteReleaseAsset:["DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}"],deleteRepoRuleset:["DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id}"],deleteTagProtection:["DELETE /repos/{owner}/{repo}/tags/protection/{tag_protection_id}"],deleteWebhook:["DELETE /repos/{owner}/{repo}/hooks/{hook_id}"],disableAutomatedSecurityFixes:["DELETE /repos/{owner}/{repo}/automated-security-fixes"],disableDeploymentProtectionRule:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],disablePrivateVulnerabilityReporting:["DELETE /repos/{owner}/{repo}/private-vulnerability-reporting"],disableVulnerabilityAlerts:["DELETE /repos/{owner}/{repo}/vulnerability-alerts"],downloadArchive:["GET /repos/{owner}/{repo}/zipball/{ref}",{},{renamed:["repos","downloadZipballArchive"]}],downloadTarballArchive:["GET /repos/{owner}/{repo}/tarball/{ref}"],downloadZipballArchive:["GET /repos/{owner}/{repo}/zipball/{ref}"],enableAutomatedSecurityFixes:["PUT /repos/{owner}/{repo}/automated-security-fixes"],enablePrivateVulnerabilityReporting:["PUT /repos/{owner}/{repo}/private-vulnerability-reporting"],enableVulnerabilityAlerts:["PUT /repos/{owner}/{repo}/vulnerability-alerts"],generateReleaseNotes:["POST /repos/{owner}/{repo}/releases/generate-notes"],get:["GET /repos/{owner}/{repo}"],getAccessRestrictions:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],getAdminBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],getAllDeploymentProtectionRules:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],getAllEnvironments:["GET /repos/{owner}/{repo}/environments"],getAllStatusCheckContexts:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"],getAllTopics:["GET /repos/{owner}/{repo}/topics"],getAppsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps"],getAutolink:["GET /repos/{owner}/{repo}/autolinks/{autolink_id}"],getBranch:["GET /repos/{owner}/{repo}/branches/{branch}"],getBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection"],getBranchRules:["GET /repos/{owner}/{repo}/rules/branches/{branch}"],getClones:["GET /repos/{owner}/{repo}/traffic/clones"],getCodeFrequencyStats:["GET /repos/{owner}/{repo}/stats/code_frequency"],getCollaboratorPermissionLevel:["GET /repos/{owner}/{repo}/collaborators/{username}/permission"],getCombinedStatusForRef:["GET /repos/{owner}/{repo}/commits/{ref}/status"],getCommit:["GET /repos/{owner}/{repo}/commits/{ref}"],getCommitActivityStats:["GET /repos/{owner}/{repo}/stats/commit_activity"],getCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}"],getCommitSignatureProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],getCommunityProfileMetrics:["GET /repos/{owner}/{repo}/community/profile"],getContent:["GET /repos/{owner}/{repo}/contents/{path}"],getContributorsStats:["GET /repos/{owner}/{repo}/stats/contributors"],getCustomDeploymentProtectionRule:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],getCustomPropertiesValues:["GET /repos/{owner}/{repo}/properties/values"],getDeployKey:["GET /repos/{owner}/{repo}/keys/{key_id}"],getDeployment:["GET /repos/{owner}/{repo}/deployments/{deployment_id}"],getDeploymentBranchPolicy:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],getDeploymentStatus:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}"],getEnvironment:["GET /repos/{owner}/{repo}/environments/{environment_name}"],getLatestPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/latest"],getLatestRelease:["GET /repos/{owner}/{repo}/releases/latest"],getOrgRuleSuite:["GET /orgs/{org}/rulesets/rule-suites/{rule_suite_id}"],getOrgRuleSuites:["GET /orgs/{org}/rulesets/rule-suites"],getOrgRuleset:["GET /orgs/{org}/rulesets/{ruleset_id}"],getOrgRulesets:["GET /orgs/{org}/rulesets"],getPages:["GET /repos/{owner}/{repo}/pages"],getPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/{build_id}"],getPagesDeployment:["GET /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}"],getPagesHealthCheck:["GET /repos/{owner}/{repo}/pages/health"],getParticipationStats:["GET /repos/{owner}/{repo}/stats/participation"],getPullRequestReviewProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],getPunchCardStats:["GET /repos/{owner}/{repo}/stats/punch_card"],getReadme:["GET /repos/{owner}/{repo}/readme"],getReadmeInDirectory:["GET /repos/{owner}/{repo}/readme/{dir}"],getRelease:["GET /repos/{owner}/{repo}/releases/{release_id}"],getReleaseAsset:["GET /repos/{owner}/{repo}/releases/assets/{asset_id}"],getReleaseByTag:["GET /repos/{owner}/{repo}/releases/tags/{tag}"],getRepoRuleSuite:["GET /repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}"],getRepoRuleSuites:["GET /repos/{owner}/{repo}/rulesets/rule-suites"],getRepoRuleset:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}"],getRepoRulesets:["GET /repos/{owner}/{repo}/rulesets"],getStatusChecksProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],getTeamsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"],getTopPaths:["GET /repos/{owner}/{repo}/traffic/popular/paths"],getTopReferrers:["GET /repos/{owner}/{repo}/traffic/popular/referrers"],getUsersWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"],getViews:["GET /repos/{owner}/{repo}/traffic/views"],getWebhook:["GET /repos/{owner}/{repo}/hooks/{hook_id}"],getWebhookConfigForRepo:["GET /repos/{owner}/{repo}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}"],listActivities:["GET /repos/{owner}/{repo}/activity"],listAutolinks:["GET /repos/{owner}/{repo}/autolinks"],listBranches:["GET /repos/{owner}/{repo}/branches"],listBranchesForHeadCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head"],listCollaborators:["GET /repos/{owner}/{repo}/collaborators"],listCommentsForCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/comments"],listCommitCommentsForRepo:["GET /repos/{owner}/{repo}/comments"],listCommitStatusesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/statuses"],listCommits:["GET /repos/{owner}/{repo}/commits"],listContributors:["GET /repos/{owner}/{repo}/contributors"],listCustomDeploymentRuleIntegrations:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps"],listDeployKeys:["GET /repos/{owner}/{repo}/keys"],listDeploymentBranchPolicies:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],listDeploymentStatuses:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],listDeployments:["GET /repos/{owner}/{repo}/deployments"],listForAuthenticatedUser:["GET /user/repos"],listForOrg:["GET /orgs/{org}/repos"],listForUser:["GET /users/{username}/repos"],listForks:["GET /repos/{owner}/{repo}/forks"],listInvitations:["GET /repos/{owner}/{repo}/invitations"],listInvitationsForAuthenticatedUser:["GET /user/repository_invitations"],listLanguages:["GET /repos/{owner}/{repo}/languages"],listPagesBuilds:["GET /repos/{owner}/{repo}/pages/builds"],listPublic:["GET /repositories"],listPullRequestsAssociatedWithCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls"],listReleaseAssets:["GET /repos/{owner}/{repo}/releases/{release_id}/assets"],listReleases:["GET /repos/{owner}/{repo}/releases"],listTagProtection:["GET /repos/{owner}/{repo}/tags/protection"],listTags:["GET /repos/{owner}/{repo}/tags"],listTeams:["GET /repos/{owner}/{repo}/teams"],listWebhookDeliveries:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /repos/{owner}/{repo}/hooks"],merge:["POST /repos/{owner}/{repo}/merges"],mergeUpstream:["POST /repos/{owner}/{repo}/merge-upstream"],pingWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeAppAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],removeCollaborator:["DELETE /repos/{owner}/{repo}/collaborators/{username}"],removeStatusCheckContexts:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],removeStatusCheckProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],removeTeamAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],removeUserAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],renameBranch:["POST /repos/{owner}/{repo}/branches/{branch}/rename"],replaceAllTopics:["PUT /repos/{owner}/{repo}/topics"],requestPagesBuild:["POST /repos/{owner}/{repo}/pages/builds"],setAdminBranchProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],setAppAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],setStatusCheckContexts:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],setTeamAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],setUserAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],testPushWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/tests"],transfer:["POST /repos/{owner}/{repo}/transfer"],update:["PATCH /repos/{owner}/{repo}"],updateBranchProtection:["PUT /repos/{owner}/{repo}/branches/{branch}/protection"],updateCommitComment:["PATCH /repos/{owner}/{repo}/comments/{comment_id}"],updateDeploymentBranchPolicy:["PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],updateInformationAboutPagesSite:["PUT /repos/{owner}/{repo}/pages"],updateInvitation:["PATCH /repos/{owner}/{repo}/invitations/{invitation_id}"],updateOrgRuleset:["PUT /orgs/{org}/rulesets/{ruleset_id}"],updatePullRequestReviewProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],updateRelease:["PATCH /repos/{owner}/{repo}/releases/{release_id}"],updateReleaseAsset:["PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}"],updateRepoRuleset:["PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}"],updateStatusCheckPotection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks",{},{renamed:["repos","updateStatusCheckProtection"]}],updateStatusCheckProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],updateWebhook:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}"],updateWebhookConfigForRepo:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config"],uploadReleaseAsset:["POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}",{baseUrl:"https://uploads.github.com"}]},search:{code:["GET /search/code"],commits:["GET /search/commits"],issuesAndPullRequests:["GET /search/issues"],labels:["GET /search/labels"],repos:["GET /search/repositories"],topics:["GET /search/topics"],users:["GET /search/users"]},secretScanning:{getAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/secret-scanning/alerts"],listAlertsForOrg:["GET /orgs/{org}/secret-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/secret-scanning/alerts"],listLocationsForAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations"],updateAlert:["PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"]},securityAdvisories:{createFork:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks"],createPrivateVulnerabilityReport:["POST /repos/{owner}/{repo}/security-advisories/reports"],createRepositoryAdvisory:["POST /repos/{owner}/{repo}/security-advisories"],createRepositoryAdvisoryCveRequest:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve"],getGlobalAdvisory:["GET /advisories/{ghsa_id}"],getRepositoryAdvisory:["GET /repos/{owner}/{repo}/security-advisories/{ghsa_id}"],listGlobalAdvisories:["GET /advisories"],listOrgRepositoryAdvisories:["GET /orgs/{org}/security-advisories"],listRepositoryAdvisories:["GET /repos/{owner}/{repo}/security-advisories"],updateRepositoryAdvisory:["PATCH /repos/{owner}/{repo}/security-advisories/{ghsa_id}"]},teams:{addOrUpdateMembershipForUserInOrg:["PUT /orgs/{org}/teams/{team_slug}/memberships/{username}"],addOrUpdateProjectPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}"],addOrUpdateRepoPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],checkPermissionsForProjectInOrg:["GET /orgs/{org}/teams/{team_slug}/projects/{project_id}"],checkPermissionsForRepoInOrg:["GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],create:["POST /orgs/{org}/teams"],createDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],createDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions"],deleteDiscussionCommentInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],deleteDiscussionInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],deleteInOrg:["DELETE /orgs/{org}/teams/{team_slug}"],getByName:["GET /orgs/{org}/teams/{team_slug}"],getDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],getDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],getMembershipForUserInOrg:["GET /orgs/{org}/teams/{team_slug}/memberships/{username}"],list:["GET /orgs/{org}/teams"],listChildInOrg:["GET /orgs/{org}/teams/{team_slug}/teams"],listDiscussionCommentsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],listDiscussionsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions"],listForAuthenticatedUser:["GET /user/teams"],listMembersInOrg:["GET /orgs/{org}/teams/{team_slug}/members"],listPendingInvitationsInOrg:["GET /orgs/{org}/teams/{team_slug}/invitations"],listProjectsInOrg:["GET /orgs/{org}/teams/{team_slug}/projects"],listReposInOrg:["GET /orgs/{org}/teams/{team_slug}/repos"],removeMembershipForUserInOrg:["DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}"],removeProjectInOrg:["DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}"],removeRepoInOrg:["DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],updateDiscussionCommentInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],updateDiscussionInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],updateInOrg:["PATCH /orgs/{org}/teams/{team_slug}"]},users:{addEmailForAuthenticated:["POST /user/emails",{},{renamed:["users","addEmailForAuthenticatedUser"]}],addEmailForAuthenticatedUser:["POST /user/emails"],addSocialAccountForAuthenticatedUser:["POST /user/social_accounts"],block:["PUT /user/blocks/{username}"],checkBlocked:["GET /user/blocks/{username}"],checkFollowingForUser:["GET /users/{username}/following/{target_user}"],checkPersonIsFollowedByAuthenticated:["GET /user/following/{username}"],createGpgKeyForAuthenticated:["POST /user/gpg_keys",{},{renamed:["users","createGpgKeyForAuthenticatedUser"]}],createGpgKeyForAuthenticatedUser:["POST /user/gpg_keys"],createPublicSshKeyForAuthenticated:["POST /user/keys",{},{renamed:["users","createPublicSshKeyForAuthenticatedUser"]}],createPublicSshKeyForAuthenticatedUser:["POST /user/keys"],createSshSigningKeyForAuthenticatedUser:["POST /user/ssh_signing_keys"],deleteEmailForAuthenticated:["DELETE /user/emails",{},{renamed:["users","deleteEmailForAuthenticatedUser"]}],deleteEmailForAuthenticatedUser:["DELETE /user/emails"],deleteGpgKeyForAuthenticated:["DELETE /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","deleteGpgKeyForAuthenticatedUser"]}],deleteGpgKeyForAuthenticatedUser:["DELETE /user/gpg_keys/{gpg_key_id}"],deletePublicSshKeyForAuthenticated:["DELETE /user/keys/{key_id}",{},{renamed:["users","deletePublicSshKeyForAuthenticatedUser"]}],deletePublicSshKeyForAuthenticatedUser:["DELETE /user/keys/{key_id}"],deleteSocialAccountForAuthenticatedUser:["DELETE /user/social_accounts"],deleteSshSigningKeyForAuthenticatedUser:["DELETE /user/ssh_signing_keys/{ssh_signing_key_id}"],follow:["PUT /user/following/{username}"],getAuthenticated:["GET /user"],getByUsername:["GET /users/{username}"],getContextForUser:["GET /users/{username}/hovercard"],getGpgKeyForAuthenticated:["GET /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","getGpgKeyForAuthenticatedUser"]}],getGpgKeyForAuthenticatedUser:["GET /user/gpg_keys/{gpg_key_id}"],getPublicSshKeyForAuthenticated:["GET /user/keys/{key_id}",{},{renamed:["users","getPublicSshKeyForAuthenticatedUser"]}],getPublicSshKeyForAuthenticatedUser:["GET /user/keys/{key_id}"],getSshSigningKeyForAuthenticatedUser:["GET /user/ssh_signing_keys/{ssh_signing_key_id}"],list:["GET /users"],listBlockedByAuthenticated:["GET /user/blocks",{},{renamed:["users","listBlockedByAuthenticatedUser"]}],listBlockedByAuthenticatedUser:["GET /user/blocks"],listEmailsForAuthenticated:["GET /user/emails",{},{renamed:["users","listEmailsForAuthenticatedUser"]}],listEmailsForAuthenticatedUser:["GET /user/emails"],listFollowedByAuthenticated:["GET /user/following",{},{renamed:["users","listFollowedByAuthenticatedUser"]}],listFollowedByAuthenticatedUser:["GET /user/following"],listFollowersForAuthenticatedUser:["GET /user/followers"],listFollowersForUser:["GET /users/{username}/followers"],listFollowingForUser:["GET /users/{username}/following"],listGpgKeysForAuthenticated:["GET /user/gpg_keys",{},{renamed:["users","listGpgKeysForAuthenticatedUser"]}],listGpgKeysForAuthenticatedUser:["GET /user/gpg_keys"],listGpgKeysForUser:["GET /users/{username}/gpg_keys"],listPublicEmailsForAuthenticated:["GET /user/public_emails",{},{renamed:["users","listPublicEmailsForAuthenticatedUser"]}],listPublicEmailsForAuthenticatedUser:["GET /user/public_emails"],listPublicKeysForUser:["GET /users/{username}/keys"],listPublicSshKeysForAuthenticated:["GET /user/keys",{},{renamed:["users","listPublicSshKeysForAuthenticatedUser"]}],listPublicSshKeysForAuthenticatedUser:["GET /user/keys"],listSocialAccountsForAuthenticatedUser:["GET /user/social_accounts"],listSocialAccountsForUser:["GET /users/{username}/social_accounts"],listSshSigningKeysForAuthenticatedUser:["GET /user/ssh_signing_keys"],listSshSigningKeysForUser:["GET /users/{username}/ssh_signing_keys"],setPrimaryEmailVisibilityForAuthenticated:["PATCH /user/email/visibility",{},{renamed:["users","setPrimaryEmailVisibilityForAuthenticatedUser"]}],setPrimaryEmailVisibilityForAuthenticatedUser:["PATCH /user/email/visibility"],unblock:["DELETE /user/blocks/{username}"],unfollow:["DELETE /user/following/{username}"],updateAuthenticated:["PATCH /user"]}},GRo=kRo,ipe=new Map;for(let[e,t]of Object.entries(GRo))for(let[r,s]of Object.entries(t)){let[a,o,g]=s,[p,f]=a.split(/ /),m=Object.assign({method:p,url:f},o);ipe.has(e)||ipe.set(e,new Map),ipe.get(e).set(r,{scope:e,methodName:r,endpointDefaults:m,decorations:g})}var FRo={has({scope:e},t){return ipe.get(e).has(t)},getOwnPropertyDescriptor(e,t){return{value:this.get(e,t),configurable:!0,writable:!0,enumerable:!0}},defineProperty(e,t,r){return Object.defineProperty(e.cache,t,r),!0},deleteProperty(e,t){return delete e.cache[t],!0},ownKeys({scope:e}){return[...ipe.get(e).keys()]},set(e,t,r){return e.cache[t]=r},get({octokit:e,scope:t,cache:r},s){if(r[s])return r[s];let a=ipe.get(t).get(s);if(!a)return;let{endpointDefaults:o,decorations:g}=a;return g?r[s]=ZRo(e,t,s,o,g):r[s]=e.request.defaults(o),r[s]}};function zWn(e){let t={};for(let r of ipe.keys())t[r]=new Proxy({octokit:e,scope:r,cache:{}},FRo);return t}function ZRo(e,t,r,s,a){let o=e.request.defaults(s);function g(...p){let f=o.endpoint.merge(...p);if(a.mapToData)return f=Object.assign({},f,{data:f[a.mapToData],[a.mapToData]:void 0}),o(f);if(a.renamed){let[m,y]=a.renamed;e.log.warn(`octokit.${t}.${r}() has been renamed to octokit.${m}.${y}()`)}if(a.deprecated&&e.log.warn(a.deprecated),a.renamedParameters){let m=o.endpoint.merge(...p);for(let[y,B]of Object.entries(a.renamedParameters))y in m&&(e.log.warn(`"${y}" parameter is deprecated for "octokit.${t}.${r}()". Use "${B}" instead`),B in m||(m[B]=m[y]),delete m[y]);return o(m)}return o(...p)}return Object.assign(g,o)}function qWn(e){return{rest:zWn(e)}}qWn.VERSION=jWn;function $Wn(e){let t=zWn(e);return{...t,rest:t}}$Wn.VERSION=jWn});var c3n=z((ajc,a3n)=>{"use strict";var Vnr=Object.defineProperty,LRo=Object.getOwnPropertyDescriptor,VRo=Object.getOwnPropertyNames,WRo=Object.prototype.hasOwnProperty,PRo=(e,t)=>{for(var r in t)Vnr(e,r,{get:t[r],enumerable:!0})},ORo=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of VRo(t))!WRo.call(e,a)&&a!==r&&Vnr(e,a,{get:()=>t[a],enumerable:!(s=LRo(t,a))||s.enumerable});return e},QRo=e=>ORo(Vnr({},"__esModule",{value:!0}),e),r3n={};PRo(r3n,{composePaginateRest:()=>YRo,isPaginatingEndpoint:()=>XRo,paginateRest:()=>o3n,paginatingEndpoints:()=>s3n});a3n.exports=QRo(r3n);var MRo="9.2.1";function HRo(e){if(!e.data)return{...e,data:[]};if(!("total_count"in e.data&&!("url"in e.data)))return e;let r=e.data.incomplete_results,s=e.data.repository_selection,a=e.data.total_count;delete e.data.incomplete_results,delete e.data.repository_selection,delete e.data.total_count;let o=Object.keys(e.data)[0],g=e.data[o];return e.data=g,typeof r<"u"&&(e.data.incomplete_results=r),typeof s<"u"&&(e.data.repository_selection=s),e.data.total_count=a,e}function Wnr(e,t,r){let s=typeof t=="function"?t.endpoint(r):e.request.endpoint(t,r),a=typeof t=="function"?t:e.request,o=s.method,g=s.headers,p=s.url;return{[Symbol.asyncIterator]:()=>({async next(){if(!p)return{done:!0};try{let f=await a({method:o,url:p,headers:g}),m=HRo(f);return p=((m.headers.link||"").match(/<([^>]+)>;\s*rel="next"/)||[])[1],{value:m}}catch(f){if(f.status!==409)throw f;return p="",{value:{status:200,headers:{},data:[]}}}}})}}function n3n(e,t,r,s){return typeof r=="function"&&(s=r,r=void 0),i3n(e,[],Wnr(e,t,r)[Symbol.asyncIterator](),s)}function i3n(e,t,r,s){return r.next().then(a=>{if(a.done)return t;let o=!1;function g(){o=!0}return t=t.concat(s?s(a.value,g):a.value.data),o?t:i3n(e,t,r,s)})}var YRo=Object.assign(n3n,{iterator:Wnr}),s3n=["GET /advisories","GET /app/hook/deliveries","GET /app/installation-requests","GET /app/installations","GET /assignments/{assignment_id}/accepted_assignments","GET /classrooms","GET /classrooms/{classroom_id}/assignments","GET /enterprises/{enterprise}/dependabot/alerts","GET /enterprises/{enterprise}/secret-scanning/alerts","GET /events","GET /gists","GET /gists/public","GET /gists/starred","GET /gists/{gist_id}/comments","GET /gists/{gist_id}/commits","GET /gists/{gist_id}/forks","GET /installation/repositories","GET /issues","GET /licenses","GET /marketplace_listing/plans","GET /marketplace_listing/plans/{plan_id}/accounts","GET /marketplace_listing/stubbed/plans","GET /marketplace_listing/stubbed/plans/{plan_id}/accounts","GET /networks/{owner}/{repo}/events","GET /notifications","GET /organizations","GET /orgs/{org}/actions/cache/usage-by-repository","GET /orgs/{org}/actions/permissions/repositories","GET /orgs/{org}/actions/runners","GET /orgs/{org}/actions/secrets","GET /orgs/{org}/actions/secrets/{secret_name}/repositories","GET /orgs/{org}/actions/variables","GET /orgs/{org}/actions/variables/{name}/repositories","GET /orgs/{org}/blocks","GET /orgs/{org}/code-scanning/alerts","GET /orgs/{org}/codespaces","GET /orgs/{org}/codespaces/secrets","GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories","GET /orgs/{org}/copilot/billing/seats","GET /orgs/{org}/dependabot/alerts","GET /orgs/{org}/dependabot/secrets","GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories","GET /orgs/{org}/events","GET /orgs/{org}/failed_invitations","GET /orgs/{org}/hooks","GET /orgs/{org}/hooks/{hook_id}/deliveries","GET /orgs/{org}/installations","GET /orgs/{org}/invitations","GET /orgs/{org}/invitations/{invitation_id}/teams","GET /orgs/{org}/issues","GET /orgs/{org}/members","GET /orgs/{org}/members/{username}/codespaces","GET /orgs/{org}/migrations","GET /orgs/{org}/migrations/{migration_id}/repositories","GET /orgs/{org}/organization-roles/{role_id}/teams","GET /orgs/{org}/organization-roles/{role_id}/users","GET /orgs/{org}/outside_collaborators","GET /orgs/{org}/packages","GET /orgs/{org}/packages/{package_type}/{package_name}/versions","GET /orgs/{org}/personal-access-token-requests","GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories","GET /orgs/{org}/personal-access-tokens","GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories","GET /orgs/{org}/projects","GET /orgs/{org}/properties/values","GET /orgs/{org}/public_members","GET /orgs/{org}/repos","GET /orgs/{org}/rulesets","GET /orgs/{org}/rulesets/rule-suites","GET /orgs/{org}/secret-scanning/alerts","GET /orgs/{org}/security-advisories","GET /orgs/{org}/teams","GET /orgs/{org}/teams/{team_slug}/discussions","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions","GET /orgs/{org}/teams/{team_slug}/invitations","GET /orgs/{org}/teams/{team_slug}/members","GET /orgs/{org}/teams/{team_slug}/projects","GET /orgs/{org}/teams/{team_slug}/repos","GET /orgs/{org}/teams/{team_slug}/teams","GET /projects/columns/{column_id}/cards","GET /projects/{project_id}/collaborators","GET /projects/{project_id}/columns","GET /repos/{owner}/{repo}/actions/artifacts","GET /repos/{owner}/{repo}/actions/caches","GET /repos/{owner}/{repo}/actions/organization-secrets","GET /repos/{owner}/{repo}/actions/organization-variables","GET /repos/{owner}/{repo}/actions/runners","GET /repos/{owner}/{repo}/actions/runs","GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts","GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs","GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs","GET /repos/{owner}/{repo}/actions/secrets","GET /repos/{owner}/{repo}/actions/variables","GET /repos/{owner}/{repo}/actions/workflows","GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs","GET /repos/{owner}/{repo}/activity","GET /repos/{owner}/{repo}/assignees","GET /repos/{owner}/{repo}/branches","GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations","GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs","GET /repos/{owner}/{repo}/code-scanning/alerts","GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances","GET /repos/{owner}/{repo}/code-scanning/analyses","GET /repos/{owner}/{repo}/codespaces","GET /repos/{owner}/{repo}/codespaces/devcontainers","GET /repos/{owner}/{repo}/codespaces/secrets","GET /repos/{owner}/{repo}/collaborators","GET /repos/{owner}/{repo}/comments","GET /repos/{owner}/{repo}/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/commits","GET /repos/{owner}/{repo}/commits/{commit_sha}/comments","GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls","GET /repos/{owner}/{repo}/commits/{ref}/check-runs","GET /repos/{owner}/{repo}/commits/{ref}/check-suites","GET /repos/{owner}/{repo}/commits/{ref}/status","GET /repos/{owner}/{repo}/commits/{ref}/statuses","GET /repos/{owner}/{repo}/contributors","GET /repos/{owner}/{repo}/dependabot/alerts","GET /repos/{owner}/{repo}/dependabot/secrets","GET /repos/{owner}/{repo}/deployments","GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses","GET /repos/{owner}/{repo}/environments","GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies","GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps","GET /repos/{owner}/{repo}/events","GET /repos/{owner}/{repo}/forks","GET /repos/{owner}/{repo}/hooks","GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries","GET /repos/{owner}/{repo}/invitations","GET /repos/{owner}/{repo}/issues","GET /repos/{owner}/{repo}/issues/comments","GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/issues/events","GET /repos/{owner}/{repo}/issues/{issue_number}/comments","GET /repos/{owner}/{repo}/issues/{issue_number}/events","GET /repos/{owner}/{repo}/issues/{issue_number}/labels","GET /repos/{owner}/{repo}/issues/{issue_number}/reactions","GET /repos/{owner}/{repo}/issues/{issue_number}/timeline","GET /repos/{owner}/{repo}/keys","GET /repos/{owner}/{repo}/labels","GET /repos/{owner}/{repo}/milestones","GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels","GET /repos/{owner}/{repo}/notifications","GET /repos/{owner}/{repo}/pages/builds","GET /repos/{owner}/{repo}/projects","GET /repos/{owner}/{repo}/pulls","GET /repos/{owner}/{repo}/pulls/comments","GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/pulls/{pull_number}/comments","GET /repos/{owner}/{repo}/pulls/{pull_number}/commits","GET /repos/{owner}/{repo}/pulls/{pull_number}/files","GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews","GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments","GET /repos/{owner}/{repo}/releases","GET /repos/{owner}/{repo}/releases/{release_id}/assets","GET /repos/{owner}/{repo}/releases/{release_id}/reactions","GET /repos/{owner}/{repo}/rules/branches/{branch}","GET /repos/{owner}/{repo}/rulesets","GET /repos/{owner}/{repo}/rulesets/rule-suites","GET /repos/{owner}/{repo}/secret-scanning/alerts","GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations","GET /repos/{owner}/{repo}/security-advisories","GET /repos/{owner}/{repo}/stargazers","GET /repos/{owner}/{repo}/subscribers","GET /repos/{owner}/{repo}/tags","GET /repos/{owner}/{repo}/teams","GET /repos/{owner}/{repo}/topics","GET /repositories","GET /repositories/{repository_id}/environments/{environment_name}/secrets","GET /repositories/{repository_id}/environments/{environment_name}/variables","GET /search/code","GET /search/commits","GET /search/issues","GET /search/labels","GET /search/repositories","GET /search/topics","GET /search/users","GET /teams/{team_id}/discussions","GET /teams/{team_id}/discussions/{discussion_number}/comments","GET /teams/{team_id}/discussions/{discussion_number}/comments/{comment_number}/reactions","GET /teams/{team_id}/discussions/{discussion_number}/reactions","GET /teams/{team_id}/invitations","GET /teams/{team_id}/members","GET /teams/{team_id}/projects","GET /teams/{team_id}/repos","GET /teams/{team_id}/teams","GET /user/blocks","GET /user/codespaces","GET /user/codespaces/secrets","GET /user/emails","GET /user/followers","GET /user/following","GET /user/gpg_keys","GET /user/installations","GET /user/installations/{installation_id}/repositories","GET /user/issues","GET /user/keys","GET /user/marketplace_purchases","GET /user/marketplace_purchases/stubbed","GET /user/memberships/orgs","GET /user/migrations","GET /user/migrations/{migration_id}/repositories","GET /user/orgs","GET /user/packages","GET /user/packages/{package_type}/{package_name}/versions","GET /user/public_emails","GET /user/repos","GET /user/repository_invitations","GET /user/social_accounts","GET /user/ssh_signing_keys","GET /user/starred","GET /user/subscriptions","GET /user/teams","GET /users","GET /users/{username}/events","GET /users/{username}/events/orgs/{org}","GET /users/{username}/events/public","GET /users/{username}/followers","GET /users/{username}/following","GET /users/{username}/gists","GET /users/{username}/gpg_keys","GET /users/{username}/keys","GET /users/{username}/orgs","GET /users/{username}/packages","GET /users/{username}/projects","GET /users/{username}/received_events","GET /users/{username}/received_events/public","GET /users/{username}/repos","GET /users/{username}/social_accounts","GET /users/{username}/ssh_signing_keys","GET /users/{username}/starred","GET /users/{username}/subscriptions"];function XRo(e){return typeof e=="string"?s3n.includes(e):!1}function o3n(e){return{paginate:Object.assign(n3n.bind(null,e),{iterator:Wnr.bind(null,e)})}}o3n.VERSION=MRo});var u3n=z(PD=>{"use strict";var JRo=PD&&PD.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),URo=PD&&PD.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),l3n=PD&&PD.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&JRo(t,e,r);return URo(t,e),t};Object.defineProperty(PD,"__esModule",{value:!0});PD.getOctokitOptions=PD.GitHub=PD.defaults=PD.context=void 0;var KRo=l3n(szt()),LAt=l3n(eWn()),jRo=UWn(),zRo=t3n(),qRo=c3n();PD.context=new KRo.Context;var Pnr=LAt.getApiBaseUrl();PD.defaults={baseUrl:Pnr,request:{agent:LAt.getProxyAgent(Pnr),fetch:LAt.getProxyFetch(Pnr)}};PD.GitHub=jRo.Octokit.plugin(zRo.restEndpointMethods,qRo.paginateRest).defaults(PD.defaults);function $Ro(e,t){let r=Object.assign({},t||{}),s=LAt.getAuthString(e,r);return s&&(r.auth=s),r}PD.getOctokitOptions=$Ro});var $2e=z(cQ=>{"use strict";var eDo=cQ&&cQ.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),tDo=cQ&&cQ.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),rDo=cQ&&cQ.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&eDo(t,e,r);return tDo(t,e),t};Object.defineProperty(cQ,"__esModule",{value:!0});cQ.getOctokit=cQ.context=void 0;var nDo=rDo(szt()),g3n=u3n();cQ.context=new nDo.Context;function iDo(e,t,...r){let s=g3n.GitHub.plugin(...r);return new s((0,g3n.getOctokitOptions)(e,t))}cQ.getOctokit=iDo});function Ynr({onlyFirst:e=!1}={}){let r=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(r,e?void 0:"g")}var y3n=cc(()=>{});function Az(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(oDo,"")}var oDo,COe=cc(()=>{y3n();oDo=Ynr()});var YAt=z((hzc,HAt)=>{var aPn={};(e=>{"use strict";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(n,c)=>{for(var u in c)t(n,u,{get:c[u],enumerable:!0})},g=(n,c,u,d)=>{if(c&&typeof c=="object"||typeof c=="function")for(let I of s(c))!a.call(n,I)&&I!==u&&t(n,I,{get:()=>c[I],enumerable:!(d=r(c,I))||d.enumerable});return n},p=n=>n,f={};o(f,{ANONYMOUS:()=>Sje,AccessFlags:()=>Xy,AssertionLevel:()=>yl,AssignmentDeclarationKind:()=>$T,AssignmentKind:()=>jRe,Associativity:()=>iDe,BreakpointResolver:()=>vze,BuilderFileEmit:()=>ekt,BuilderProgramKind:()=>akt,BuilderState:()=>gT,CallHierarchy:()=>o7,CharacterCodes:()=>lG,CheckFlags:()=>QI,CheckMode:()=>X8e,ClassificationType:()=>k7e,ClassificationTypeNames:()=>dGt,CommentDirectiveType:()=>vn,Comparison:()=>B,CompletionInfoFlags:()=>oGt,CompletionTriggerKind:()=>D7e,Completions:()=>A7,ContainerFlags:()=>NDt,ContextFlags:()=>mv,Debug:()=>w,DiagnosticCategory:()=>h1,Diagnostics:()=>Z,DocumentHighlights:()=>hFe,ElementFlags:()=>jh,EmitFlags:()=>b1,EmitHint:()=>Uy,EmitOnly:()=>hg,EndOfLineState:()=>lGt,ExitStatus:()=>nI,ExportKind:()=>uFt,Extension:()=>y1,ExternalEmitHelpers:()=>ES,FileIncludeKind:()=>So,FilePreprocessingDiagnosticsKind:()=>Ig,FileSystemEntryKind:()=>z_,FileWatcherEventKind:()=>Xw,FindAllReferences:()=>Yp,FlattenLevel:()=>rxt,FlowFlags:()=>Wr,ForegroundColorEscapeSequences:()=>Xxt,FunctionFlags:()=>tDe,GeneratedIdentifierFlags:()=>pc,GetLiteralTextFlags:()=>nce,GoToDefinition:()=>zte,HighlightSpanKind:()=>iGt,IdentifierNameMap:()=>Ste,IdentifierNameMultiMap:()=>KDt,ImportKind:()=>lFt,ImportsNotUsedAsValues:()=>Yw,IndentStyle:()=>sGt,IndexFlags:()=>fy,IndexKind:()=>SE,InferenceFlags:()=>_v,InferencePriority:()=>Mw,InlayHintKind:()=>nGt,InlayHints:()=>Iqe,InternalEmitFlags:()=>wE,InternalSymbolName:()=>gA,IntersectionFlags:()=>qT,InvalidatedProjectKind:()=>Dkt,JSDocParsingMode:()=>yx,JsDoc:()=>yP,JsTyping:()=>GN,JsxEmit:()=>pp,JsxFlags:()=>hS,JsxReferenceKind:()=>_S,LanguageFeatureMinimumTarget:()=>TE,LanguageServiceMode:()=>tGt,LanguageVariant:()=>tN,LexicalEnvironmentFlags:()=>rN,ListFormat:()=>yv,LogLevel:()=>ie,MapCode:()=>Cqe,MemberOverrideStatus:()=>AC,ModifierFlags:()=>G0,ModuleDetectionKind:()=>Hw,ModuleInstanceState:()=>wDt,ModuleKind:()=>qh,ModuleResolutionKind:()=>xb,ModuleSpecifierEnding:()=>UDe,NavigateTo:()=>xFt,NavigationBar:()=>GFt,NewLineKind:()=>bS,NodeBuilderFlags:()=>Ow,NodeCheckFlags:()=>WA,NodeFactoryFlags:()=>The,NodeFlags:()=>vE,NodeResolutionFeatures:()=>fDt,ObjectFlags:()=>Wf,OperationCanceledException:()=>os,OperatorPrecedence:()=>sDe,OrganizeImports:()=>bP,OrganizeImportsMode:()=>R7e,OuterExpressionKinds:()=>$h,OutliningElementsCollector:()=>_qe,OutliningSpanKind:()=>aGt,OutputFileType:()=>cGt,PackageJsonAutoImportPreference:()=>eGt,PackageJsonDependencyGroup:()=>$kt,PatternMatchKind:()=>Xje,PollingInterval:()=>Va,PollingWatchKind:()=>p2,PragmaKindFlags:()=>bv,PrivateIdentifierKind:()=>Dhe,ProcessLevel:()=>cxt,ProgramUpdateLevel:()=>Oxt,QuotePreference:()=>LGt,RegularExpressionFlags:()=>at,RelationComparisonResult:()=>C1,Rename:()=>iZe,ScriptElementKind:()=>gGt,ScriptElementKindModifier:()=>AGt,ScriptKind:()=>eN,ScriptSnapshot:()=>SGe,ScriptTarget:()=>kb,SemanticClassificationFormat:()=>rGt,SemanticMeaning:()=>pGt,SemicolonPreference:()=>x7e,SignatureCheckMode:()=>J8e,SignatureFlags:()=>Jy,SignatureHelp:()=>y0e,SignatureInfo:()=>$xt,SignatureKind:()=>yS,SmartSelectionRange:()=>Eqe,SnippetKind:()=>Bh,StatisticType:()=>Mkt,StructureIsReused:()=>Af,SymbolAccessibility:()=>j_,SymbolDisplay:()=>MZ,SymbolDisplayPartKind:()=>TGe,SymbolFlags:()=>d2,SymbolFormatFlags:()=>m1,SyntaxKind:()=>A2,SyntheticSymbolKind:()=>Qw,Ternary:()=>FR,ThrottledCancellationToken:()=>MZt,TokenClass:()=>uGt,TokenFlags:()=>$t,TransformFlags:()=>Gb,TypeFacts:()=>Y8e,TypeFlags:()=>dm,TypeFormatFlags:()=>Hy,TypeMapKind:()=>hv,TypePredicateKind:()=>zp,TypeReferenceSerializationKind:()=>py,UnionReduction:()=>Db,UpToDateStatusType:()=>Bkt,VarianceFlags:()=>Yy,Version:()=>Dn,VersionRange:()=>Jc,WatchDirectoryFlags:()=>F0,WatchDirectoryKind:()=>_1,WatchFileKind:()=>An,WatchLogLevel:()=>Mxt,WatchType:()=>_m,accessPrivateIdentifier:()=>ext,addDisposableResourceHelper:()=>Oxe,addEmitFlags:()=>JS,addEmitHelper:()=>sM,addEmitHelpers:()=>BN,addInternalEmitFlags:()=>rM,addNodeFactoryPatcher:()=>Nle,addObjectAllocatorPatcher:()=>IKe,addRange:()=>ai,addRelatedInfo:()=>tg,addSyntheticLeadingComment:()=>a4,addSyntheticTrailingComment:()=>xle,addToSeen:()=>D2,advancedAsyncSuperHelper:()=>jS,affectsDeclarationPathOptionDeclarations:()=>ZRt,affectsEmitOptionDeclarations:()=>FRt,allKeysStartWithDot:()=>Rke,altDirectorySeparator:()=>dC,and:()=>gh,append:()=>Yr,appendIfUnique:()=>og,arrayFrom:()=>on,arrayIsEqualTo:()=>Cn,arrayIsHomogeneous:()=>nxe,arrayIsSorted:()=>nn,arrayOf:()=>ag,arrayReverseIterator:()=>Lu,arrayToMap:()=>lA,arrayToMultiMap:()=>To,arrayToNumericMap:()=>XA,arraysEqual:()=>Je,assertType:()=>Nb,assign:()=>Eo,assignHelper:()=>yxe,asyncDelegator:()=>Exe,asyncGeneratorHelper:()=>bxe,asyncSuperHelper:()=>Vle,asyncValues:()=>Bxe,attachFileToDiagnostics:()=>DZ,awaitHelper:()=>F6,awaiterHelper:()=>Sxe,base64decode:()=>EDe,base64encode:()=>u6,binarySearch:()=>Vg,binarySearchKey:()=>lf,bindSourceFile:()=>RDt,breakIntoCharacterSpans:()=>BFt,breakIntoWordSpans:()=>vFt,buildLinkParts:()=>XGt,buildOpts:()=>$he,buildOverload:()=>mHr,bundlerModuleNameResolver:()=>IDt,canBeConvertedToAsync:()=>qje,canHaveDecorators:()=>IM,canHaveExportModifier:()=>Uee,canHaveFlowNode:()=>dee,canHaveIllegalDecorators:()=>t8e,canHaveIllegalModifiers:()=>IRt,canHaveIllegalType:()=>rxr,canHaveIllegalTypeParameters:()=>fRt,canHaveJSDoc:()=>pee,canHaveLocals:()=>Nv,canHaveModifiers:()=>tw,canHaveSymbol:()=>v2,canIncludeBindAndCheckDiagnsotics:()=>Jee,canJsonReportNoInputFiles:()=>qle,canProduceDiagnostics:()=>Hke,canUsePropertyAccess:()=>yhe,canWatchAffectingLocation:()=>fkt,canWatchAtTypes:()=>pkt,canWatchDirectoryOrFile:()=>cGe,cartesianProduct:()=>Bf,cast:()=>ps,chainBundle:()=>uT,chainDiagnosticMessages:()=>ou,changeAnyExtension:()=>w1,changeCompilerHostLikeToUseCache:()=>Cue,changeExtension:()=>NG,changeFullExtension:()=>Cy,changesAffectModuleResolution:()=>NB,changesAffectingProgramStructure:()=>D$,characterToRegularExpressionFlag:()=>pA,childIsDecorated:()=>Q8,classElementOrClassElementParameterIsDecorated:()=>lme,classHasClassThisAssignment:()=>c6e,classHasDeclaredOrExplicitlyAssignedName:()=>l6e,classHasExplicitlyAssignedName:()=>Oke,classOrConstructorParameterIsDecorated:()=>Gx,classPrivateFieldGetHelper:()=>Vxe,classPrivateFieldInHelper:()=>Pxe,classPrivateFieldSetHelper:()=>Wxe,classicNameResolver:()=>vDt,classifier:()=>JZt,cleanExtendedConfigCache:()=>qke,clear:()=>Ur,clearMap:()=>Y0,clearSharedExtendedConfigFileWatcher:()=>b6e,climbPastPropertyAccess:()=>DGe,climbPastPropertyOrElementAccess:()=>mGt,clone:()=>Wd,cloneCompilerOptions:()=>q7e,closeFileWatcher:()=>xB,closeFileWatcherOf:()=>VB,codefix:()=>p0,collapseTextChangeRangesAcrossMultipleVersions:()=>pt,collectExternalModuleInfo:()=>i6e,combine:()=>Vs,combinePaths:()=>Do,commandLineOptionOfCustomType:()=>ORt,commentPragmas:()=>nN,commonOptionsWithBuild:()=>uke,commonPackageFolders:()=>YDe,compact:()=>Vn,compareBooleans:()=>DA,compareDataObjects:()=>Kce,compareDiagnostics:()=>C6,compareDiagnosticsSkipRelatedInformation:()=>tle,compareEmitHelpers:()=>Fle,compareNumberOfDirectorySeparators:()=>Yee,comparePaths:()=>dh,comparePathsCaseInsensitive:()=>pC,comparePathsCaseSensitive:()=>Jw,comparePatternKeys:()=>O8e,compareProperties:()=>Ll,compareStringsCaseInsensitive:()=>fs,compareStringsCaseInsensitiveEslintCompatible:()=>go,compareStringsCaseSensitive:()=>Ro,compareStringsCaseSensitiveUI:()=>Li,compareTextSpans:()=>Pp,compareValues:()=>Jl,compileOnSaveCommandLineOption:()=>cke,compilerOptionsAffectDeclarationPath:()=>QDe,compilerOptionsAffectEmit:()=>ole,compilerOptionsAffectSemanticDiagnostics:()=>ODe,compilerOptionsDidYouMeanDiagnostics:()=>pke,compilerOptionsIndicateEsModules:()=>sje,compose:()=>Nm,computeCommonSourceDirectoryOfFilenames:()=>Hxt,computeLineAndCharacterOfPosition:()=>Mp,computeLineOfPosition:()=>zy,computeLineStarts:()=>fc,computePositionOfLineAndCharacter:()=>Vu,computeSignature:()=>ckt,computeSignatureWithDiagnostics:()=>H6e,computeSuggestionDiagnostics:()=>Kje,computedOptions:()=>GC,concatenate:()=>vi,concatenateDiagnosticMessageChains:()=>LDe,configDirTemplateSubstitutionOptions:()=>WRt,configDirTemplateSubstitutionWatchOptions:()=>PRt,consumesNodeCoreModules:()=>lFe,contains:()=>Ue,containsIgnoredPath:()=>w6,containsObjectRestOrSpread:()=>Khe,containsParseError:()=>UR,containsPath:()=>vg,convertCompilerOptionsForTelemetry:()=>nDt,convertCompilerOptionsFromJson:()=>Akr,convertJsonOption:()=>h4,convertToBase64:()=>Hce,convertToJson:()=>r_e,convertToObject:()=>jRt,convertToOptionsWithAbsolutePaths:()=>mke,convertToRelativePath:()=>RE,convertToTSConfig:()=>E8e,convertTypeAcquisitionFromJson:()=>dkr,copyComments:()=>v4,copyEntries:()=>S8,copyLeadingComments:()=>Qte,copyProperties:()=>Ps,copyTrailingAsLeadingComments:()=>j_e,copyTrailingComments:()=>xue,couldStartTrivia:()=>oN,countWhere:()=>ft,createAbstractBuilder:()=>IFr,createAccessorPropertyBackingField:()=>i8e,createAccessorPropertyGetRedirector:()=>BRt,createAccessorPropertySetRedirector:()=>vRt,createBaseNodeFactory:()=>gxe,createBinaryExpressionTrampoline:()=>ske,createBindingHelper:()=>Lle,createBuildInfo:()=>Uke,createBuilderProgram:()=>Y6e,createBuilderProgramUsingProgramBuildInfo:()=>Akt,createBuilderStatusReporter:()=>CGe,createCacheWithRedirects:()=>k8e,createCacheableExportInfoMap:()=>Lje,createCachedDirectoryStructureHost:()=>jke,createClassNamedEvaluationHelperBlock:()=>axt,createClassThisAssignmentBlock:()=>sxt,createClassifier:()=>KZr,createCommentDirectivesMap:()=>rce,createCompilerDiagnostic:()=>If,createCompilerDiagnosticForInvalidCustomType:()=>QRt,createCompilerDiagnosticFromMessageChain:()=>ele,createCompilerHost:()=>Yxt,createCompilerHostFromProgramHost:()=>g7e,createCompilerHostWorker:()=>$ke,createDetachedDiagnostic:()=>J5,createDiagnosticCollection:()=>BG,createDiagnosticForFileFromMessageChain:()=>ne,createDiagnosticForNode:()=>Js,createDiagnosticForNodeArray:()=>M3,createDiagnosticForNodeArrayFromMessageChain:()=>ZX,createDiagnosticForNodeFromMessageChain:()=>ZS,createDiagnosticForNodeInSourceFile:()=>Wb,createDiagnosticForRange:()=>ze,createDiagnosticMessageChainFromDiagnostic:()=>Ie,createDiagnosticReporter:()=>q6,createDocumentPositionMapper:()=>JDt,createDocumentRegistry:()=>dFt,createDocumentRegistryInternal:()=>Mje,createEmitAndSemanticDiagnosticsBuilderProgram:()=>K6e,createEmitHelperFactory:()=>xhe,createEmptyExports:()=>Qhe,createEvaluator:()=>vhe,createExpressionForJsxElement:()=>cRt,createExpressionForJsxFragment:()=>lRt,createExpressionForObjectLiteralElementLike:()=>uRt,createExpressionForPropertyName:()=>KKe,createExpressionFromEntityName:()=>Mhe,createExternalHelpersImportDeclarationIfNeeded:()=>qKe,createFileDiagnostic:()=>Cm,createFileDiagnosticFromMessageChain:()=>Z8,createFlowNode:()=>oD,createForOfBindingStatement:()=>UKe,createFutureSourceFile:()=>CFe,createGetCanonicalFileName:()=>rA,createGetIsolatedDeclarationErrors:()=>Dxt,createGetSourceFile:()=>w6e,createGetSymbolAccessibilityDiagnosticForNode:()=>ZZ,createGetSymbolAccessibilityDiagnosticForNodeName:()=>Rxt,createGetSymbolWalker:()=>DDt,createIncrementalCompilerHost:()=>IGe,createIncrementalProgram:()=>Ekt,createJsxFactoryExpression:()=>JKe,createLanguageService:()=>HZt,createLanguageServiceSourceFile:()=>FFe,createMemberAccessForPropertyName:()=>C4,createModeAwareCache:()=>yte,createModeAwareCacheKey:()=>rue,createModuleNotFoundChain:()=>RX,createModuleResolutionCache:()=>bte,createModuleResolutionLoader:()=>F6e,createModuleResolutionLoaderUsingGlobalCache:()=>hkt,createModuleSpecifierResolutionHost:()=>r7,createMultiMap:()=>ec,createNameResolver:()=>x6,createNodeConverters:()=>$ee,createNodeFactory:()=>pV,createOptionNameMap:()=>Ake,createOverload:()=>Zqe,createPackageJsonImportFilter:()=>Mte,createPackageJsonInfo:()=>Nje,createParenthesizerRules:()=>Axe,createPatternMatcher:()=>mFt,createPrinter:()=>wV,createPrinterWithDefaults:()=>Wxt,createPrinterWithRemoveComments:()=>b4,createPrinterWithRemoveCommentsNeverAsciiEscape:()=>Pxt,createPrinterWithRemoveCommentsOmitTrailingSemicolon:()=>Kke,createProgram:()=>v_e,createProgramHost:()=>A7e,createPropertyNameNodeForIdentifierOrLiteral:()=>yle,createQueue:()=>RA,createRange:()=>Z1,createRedirectedBuilderProgram:()=>U6e,createResolutionCache:()=>z6e,createRuntimeTypeSerializer:()=>dxt,createScanner:()=>Ft,createSemanticDiagnosticsBuilderProgram:()=>fFr,createSet:()=>Kd,createSolutionBuilder:()=>Tkt,createSolutionBuilderHost:()=>Skt,createSolutionBuilderWithWatch:()=>Nkt,createSolutionBuilderWithWatchHost:()=>wkt,createSortedArray:()=>jr,createSourceFile:()=>M6,createSourceMapGenerator:()=>ODt,createSourceMapSource:()=>kKe,createSuperAccessVariableStatement:()=>Mke,createSymbolTable:()=>xu,createSymlinkCache:()=>ihe,createSyntacticTypeNodeBuilder:()=>jkt,createSystemWatchFunctions:()=>wh,createTextChange:()=>Q_e,createTextChangeFromStartLength:()=>YGe,createTextChangeRange:()=>Ce,createTextRangeFromNode:()=>tje,createTextRangeFromSpan:()=>HGe,createTextSpan:()=>Ed,createTextSpanFromBounds:()=>Pd,createTextSpanFromNode:()=>By,createTextSpanFromRange:()=>NV,createTextSpanFromStringLiteralLikeContent:()=>eje,createTextWriter:()=>See,createTokenRange:()=>Jce,createTypeChecker:()=>WDt,createTypeReferenceDirectiveResolutionCache:()=>wke,createTypeReferenceResolutionLoader:()=>eGe,createWatchCompilerHost:()=>SFr,createWatchCompilerHostOfConfigFile:()=>d7e,createWatchCompilerHostOfFilesAndCompilerOptions:()=>p7e,createWatchFactory:()=>u7e,createWatchHost:()=>l7e,createWatchProgram:()=>f7e,createWatchStatusReporter:()=>$6e,createWriteFileMeasuringIO:()=>T6e,declarationNameToString:()=>kd,decodeMappings:()=>t6e,decodedTextSpanIntersectsWith:()=>t0,decorateHelper:()=>G6,deduplicate:()=>NA,defaultIncludeSpec:()=>S8e,defaultInitCompilerOptions:()=>I8e,defaultMaximumTruncationLength:()=>b5,diagnosticCategoryName:()=>zh,diagnosticToString:()=>vM,diagnosticsEqualityComparer:()=>rle,directoryProbablyExists:()=>G1,directorySeparator:()=>$u,displayPart:()=>Yb,displayPartsToString:()=>c0e,disposeEmitNodes:()=>Rle,disposeResourcesHelper:()=>Qxe,documentSpansEqual:()=>Aje,dumpTracingLegend:()=>gf,elementAt:()=>ts,elideNodes:()=>ERt,emitComments:()=>fDe,emitDetachedComments:()=>IDe,emitFiles:()=>_6e,emitFilesAndReportErrors:()=>AGe,emitFilesAndReportErrorsAndGetExitStatus:()=>c7e,emitModuleKindIsNonNodeESM:()=>ile,emitNewLineBeforeLeadingCommentOfPosition:()=>Zme,emitNewLineBeforeLeadingComments:()=>dDe,emitNewLineBeforeLeadingCommentsOfPosition:()=>pDe,emitResolverSkipsTypeChecking:()=>h6e,emitSkippedWithNoDiagnostics:()=>O6e,emptyArray:()=>v,emptyFileSystemEntries:()=>dhe,emptyMap:()=>k,emptyOptions:()=>Vv,emptySet:()=>T,endsWith:()=>fl,ensurePathIsNonModuleName:()=>jy,ensureScriptKind:()=>dle,ensureTrailingDirectorySeparator:()=>dA,entityNameToString:()=>r0,enumerateInsertsAndDeletes:()=>OI,equalOwnProperties:()=>eA,equateStringsCaseInsensitive:()=>op,equateStringsCaseSensitive:()=>um,equateValues:()=>Qg,esDecorateHelper:()=>hxe,escapeJsxAttributeString:()=>Rme,escapeLeadingUnderscores:()=>Dd,escapeNonAsciiString:()=>xce,escapeSnippetText:()=>dV,escapeString:()=>rT,escapeTemplateSubstitution:()=>Tme,evaluatorResult:()=>KC,every:()=>he,executeCommandLine:()=>aZr,expandPreOrPostfixIncrementOrDecrementExpression:()=>$xe,explainFiles:()=>n7e,explainIfFileIsRedirectAndImpliedFormat:()=>i7e,exportAssignmentIsAlias:()=>U3,exportStarHelper:()=>Lxe,expressionResultIsUnused:()=>sxe,extend:()=>EA,extendsHelper:()=>wxe,extensionFromPath:()=>B6,extensionIsTS:()=>Cle,extensionsNotSupportingExtensionlessResolution:()=>Mee,externalHelpersModuleNameText:()=>Dx,factory:()=>_e,fileExtensionIs:()=>Ad,fileExtensionIsOneOf:()=>fp,fileIncludeReasonToDiagnostics:()=>a7e,fileShouldUseJavaScriptRequire:()=>Zje,filter:()=>Gt,filterMutate:()=>er,filterSemanticDiagnostics:()=>iGe,find:()=>be,findAncestor:()=>Si,findBestPatternMatch:()=>uy,findChildOfKind:()=>Qd,findComputedPropertyNameCacheAssignment:()=>oke,findConfigFile:()=>v6e,findConstructorDeclaration:()=>jee,findContainingList:()=>ZGe,findDiagnosticForNode:()=>iFt,findFirstNonJsxWhitespaceToken:()=>EGt,findIndex:()=>ke,findLast:()=>Te,findLastIndex:()=>x,findListItemInfo:()=>bGt,findMap:()=>et,findModifier:()=>Wte,findNextToken:()=>EM,findPackageJson:()=>rFt,findPackageJsons:()=>Tje,findPrecedingMatchingToken:()=>QGe,findPrecedingToken:()=>ym,findSuperStatementIndexPath:()=>Vke,findTokenOnLeftOfPosition:()=>WGe,findUseStrictPrologue:()=>zKe,first:()=>qs,firstDefined:()=>le,firstDefinedIterator:()=>ae,firstIterator:()=>kl,firstOrOnly:()=>kje,firstOrUndefined:()=>$i,firstOrUndefinedIterator:()=>ka,fixupCompilerOptions:()=>$je,flatMap:()=>Fr,flatMapIterator:()=>Or,flatMapToMutable:()=>$r,flatten:()=>or,flattenCommaList:()=>SRt,flattenDestructuringAssignment:()=>y4,flattenDestructuringBinding:()=>hM,flattenDiagnosticMessageText:()=>kN,forEach:()=>X,forEachAncestor:()=>x$,forEachAncestorDirectory:()=>sI,forEachChild:()=>hu,forEachChildRecursively:()=>Q6,forEachEmittedFile:()=>f6e,forEachEnclosingBlockScopeContainer:()=>J$,forEachEntry:()=>UC,forEachExternalModuleToImportFrom:()=>Wje,forEachImportClauseDeclaration:()=>JRe,forEachKey:()=>eT,forEachLeadingCommentRange:()=>Sf,forEachNameInAccessChainWalkingLeft:()=>kDe,forEachNameOfDefaultExport:()=>Pje,forEachPropertyAssignment:()=>LX,forEachResolvedProjectReference:()=>L6e,forEachReturnStatement:()=>kx,forEachRight:()=>U,forEachTrailingCommentRange:()=>bx,forEachTsConfigPropArray:()=>j$,forEachUnique:()=>pje,forEachYieldExpression:()=>RRe,forSomeAncestorDirectory:()=>DDe,formatColorAndReset:()=>_M,formatDiagnostic:()=>N6e,formatDiagnostics:()=>JGr,formatDiagnosticsWithColorAndContext:()=>Kxt,formatGeneratedName:()=>aP,formatGeneratedNamePart:()=>Cte,formatLocation:()=>R6e,formatMessage:()=>U5,formatStringFromArgs:()=>IN,formatting:()=>zC,fullTripleSlashAMDReferencePathRegEx:()=>NRe,fullTripleSlashReferencePathRegEx:()=>TRe,generateDjb2Hash:()=>vh,generateTSConfig:()=>qRt,generatorHelper:()=>Gxe,getAdjustedReferenceLocation:()=>X7e,getAdjustedRenameLocation:()=>VGe,getAliasDeclarationFromName:()=>hme,getAllAccessorDeclarations:()=>Vx,getAllDecoratorsOfClass:()=>o6e,getAllDecoratorsOfClassElement:()=>Pke,getAllJSDocTags:()=>A8,getAllJSDocTagsOfKind:()=>YCe,getAllKeys:()=>Xu,getAllProjectOutputs:()=>Jke,getAllSuperTypeNodes:()=>$8,getAllowJSCompilerOption:()=>wG,getAllowSyntheticDefaultImports:()=>K5,getAncestor:()=>bG,getAnyExtensionFromPath:()=>NE,getAreDeclarationMapsEnabled:()=>nle,getAssignedExpandoInitializer:()=>x5,getAssignedName:()=>u5,getAssignedNameOfIdentifier:()=>Aue,getAssignmentDeclarationKind:()=>mI,getAssignmentDeclarationPropertyAccessKind:()=>cee,getAssignmentTargetKind:()=>Fx,getAutomaticTypeDirectiveNames:()=>vke,getBaseFileName:()=>kA,getBinaryOperatorPrecedence:()=>Bee,getBuildInfo:()=>y6e,getBuildInfoFileVersionMap:()=>J6e,getBuildInfoText:()=>Lxt,getBuildOrderFromAnyBuildOrder:()=>N_e,getBuilderCreationParameters:()=>oGe,getBuilderFileEmit:()=>TV,getCanonicalDiagnostic:()=>Qt,getCheckFlags:()=>cI,getClassExtendsHeritageElement:()=>nV,getClassLikeDeclarationOfSymbol:()=>kB,getCombinedLocalAndExportSymbolFlags:()=>Q5,getCombinedModifierFlags:()=>Rh,getCombinedNodeFlags:()=>$y,getCombinedNodeFlagsAlwaysIncludeJSDoc:()=>E2,getCommentRange:()=>US,getCommonSourceDirectory:()=>Iue,getCommonSourceDirectoryOfConfig:()=>z6,getCompilerOptionValue:()=>ale,getCompilerOptionsDiffValue:()=>zRt,getConditions:()=>BV,getConfigFileParsingDiagnostics:()=>yM,getConstantValue:()=>l4,getContainerFlags:()=>M8e,getContainerNode:()=>B4,getContainingClass:()=>Km,getContainingClassExcludingClassDecorators:()=>fce,getContainingClassStaticBlock:()=>VRe,getContainingFunction:()=>Ob,getContainingFunctionDeclaration:()=>pce,getContainingFunctionOrClassStaticBlock:()=>z$,getContainingNodeArray:()=>oxe,getContainingObjectLiteralElement:()=>l0e,getContextualTypeFromParent:()=>tFe,getContextualTypeFromParentOrAncestorTypeNode:()=>LGe,getCurrentTime:()=>T_e,getDeclarationDiagnostics:()=>xxt,getDeclarationEmitExtensionForPath:()=>Fce,getDeclarationEmitOutputFilePath:()=>lDe,getDeclarationEmitOutputFilePathWorker:()=>Gce,getDeclarationFileExtension:()=>c8e,getDeclarationFromName:()=>q8,getDeclarationModifierFlagsFromSymbol:()=>V1,getDeclarationOfKind:()=>qd,getDeclarationsOfKind:()=>zae,getDeclaredExpandoInitializer:()=>J8,getDecorators:()=>Kw,getDefaultCompilerOptions:()=>GFe,getDefaultFormatCodeSettings:()=>wGe,getDefaultLibFileName:()=>Cg,getDefaultLibFilePath:()=>YZt,getDefaultLikeExportInfo:()=>mFe,getDefaultLikeExportNameFromDeclaration:()=>gFe,getDiagnosticText:()=>lb,getDiagnosticsWithinSpan:()=>sFt,getDirectoryPath:()=>oa,getDirectoryToWatchFailedLookupLocation:()=>j6e,getDirectoryToWatchFailedLookupLocationFromTypeRoot:()=>Ckt,getDocumentPositionMapper:()=>Uje,getDocumentSpansEqualityComparer:()=>dje,getESModuleInterop:()=>CN,getEditsForFileRename:()=>fFt,getEffectiveBaseTypeNode:()=>xv,getEffectiveConstraintOfTypeParameter:()=>jw,getEffectiveContainerForJSDocTemplateTag:()=>vce,getEffectiveImplementsTypeNodes:()=>YX,getEffectiveInitializer:()=>see,getEffectiveJSDocHost:()=>wZ,getEffectiveModifierFlags:()=>R_,getEffectiveModifierFlagsAlwaysIncludeJSDoc:()=>Oce,getEffectiveModifierFlagsNoCache:()=>hDe,getEffectiveReturnTypeNode:()=>nb,getEffectiveSetAccessorTypeAnnotationNode:()=>ADe,getEffectiveTypeAnnotationNode:()=>IC,getEffectiveTypeParameterDeclarations:()=>D1,getEffectiveTypeRoots:()=>tue,getElementOrPropertyAccessArgumentExpressionOrName:()=>K8,getElementOrPropertyAccessName:()=>zR,getElementsOfBindingOrAssignmentPattern:()=>Ite,getEmitDeclarations:()=>WE,getEmitFlags:()=>wg,getEmitHelpers:()=>kle,getEmitModuleDetectionKind:()=>VDe,getEmitModuleKind:()=>D_,getEmitModuleResolutionKind:()=>o0,getEmitScriptTarget:()=>sA,getEmitStandardClassFields:()=>rhe,getEnclosingBlockScopeContainer:()=>w2,getEnclosingContainer:()=>F8,getEncodedSemanticClassifications:()=>Oje,getEncodedSyntacticClassifications:()=>Qje,getEndLinePosition:()=>DX,getEntityNameFromTypeNode:()=>$$,getEntrypointsFromPackageJsonInfo:()=>V8e,getErrorCountForSummary:()=>uGe,getErrorSpanForNode:()=>Mi,getErrorSummaryText:()=>t7e,getEscapedTextOfIdentifierOrLiteral:()=>r6,getEscapedTextOfJsxAttributeName:()=>R6,getEscapedTextOfJsxNamespacedName:()=>x2,getExpandoInitializer:()=>vZ,getExportAssignmentExpression:()=>_me,getExportInfoMap:()=>t0e,getExportNeedsImportStarHelper:()=>UDt,getExpressionAssociativity:()=>Sme,getExpressionPrecedence:()=>EG,getExternalHelpersModuleName:()=>rke,getExternalModuleImportEqualsDeclarationExpression:()=>M8,getExternalModuleName:()=>k5,getExternalModuleNameFromDeclaration:()=>aDe,getExternalModuleNameFromPath:()=>xme,getExternalModuleNameLiteral:()=>O6,getExternalModuleRequireArgument:()=>gme,getFallbackOptions:()=>y_e,getFileEmitOutput:()=>qxt,getFileMatcherPatterns:()=>Ale,getFileNamesFromConfigSpecs:()=>$le,getFileWatcherEventKind:()=>Ev,getFilesInErrorForSummary:()=>gGe,getFirstConstructorWithBody:()=>pN,getFirstIdentifier:()=>sb,getFirstNonSpaceCharacterPosition:()=>KGt,getFirstProjectOutput:()=>m6e,getFixableErrorSpanExpression:()=>Dje,getFormatCodeSettingsForWriting:()=>fFe,getFullWidth:()=>NX,getFunctionFlags:()=>YI,getHeritageClause:()=>hee,getHostSignatureFromJSDoc:()=>SZ,getIdentifierAutoGenerate:()=>mxe,getIdentifierGeneratedImportReference:()=>ep,getIdentifierTypeArguments:()=>kZ,getImmediatelyInvokedFunctionExpression:()=>q9,getImpliedNodeFormatForFile:()=>B_e,getImpliedNodeFormatForFileWorker:()=>nGe,getImportNeedsImportDefaultHelper:()=>n6e,getImportNeedsImportStarHelper:()=>Zke,getIndentSize:()=>jX,getIndentString:()=>KX,getInferredLibraryNameResolveFrom:()=>rGe,getInitializedVariables:()=>p6,getInitializerOfBinaryExpression:()=>Bce,getInitializerOfBindingOrAssignmentElement:()=>Xhe,getInterfaceBaseTypeNodes:()=>e6,getInternalEmitFlags:()=>FE,getInvokedExpression:()=>P8,getIsolatedModules:()=>VE,getJSDocAugmentsTag:()=>g8,getJSDocClassTag:()=>ss,getJSDocCommentRanges:()=>ome,getJSDocCommentsAndTags:()=>pme,getJSDocDeprecatedTag:()=>Vb,getJSDocDeprecatedTagNoCache:()=>BB,getJSDocEnumTag:()=>pG,getJSDocHost:()=>tV,getJSDocImplementsTags:()=>Bx,getJSDocOverloadTags:()=>Ime,getJSDocOverrideTagNoCache:()=>R1,getJSDocParameterTags:()=>MR,getJSDocParameterTagsNoCache:()=>c8,getJSDocPrivateTag:()=>Za,getJSDocPrivateTagNoCache:()=>gc,getJSDocProtectedTag:()=>CA,getJSDocProtectedTagNoCache:()=>xd,getJSDocPublicTag:()=>Ko,getJSDocPublicTagNoCache:()=>$o,getJSDocReadonlyTag:()=>fm,getJSDocReadonlyTagNoCache:()=>N1,getJSDocReturnTag:()=>O9,getJSDocReturnType:()=>dX,getJSDocRoot:()=>HX,getJSDocSatisfiesExpressionType:()=>Ehe,getJSDocSatisfiesTag:()=>f$,getJSDocTags:()=>Tx,getJSDocTagsNoCache:()=>HCe,getJSDocTemplateTag:()=>MCe,getJSDocThisTag:()=>vx,getJSDocType:()=>wx,getJSDocTypeAliasName:()=>e8e,getJSDocTypeAssertionType:()=>Ule,getJSDocTypeParameterDeclarations:()=>Tee,getJSDocTypeParameterTags:()=>u8,getJSDocTypeParameterTagsNoCache:()=>A5,getJSDocTypeTag:()=>Sx,getJSXImplicitImportBase:()=>cle,getJSXRuntimeImport:()=>lle,getJSXTransformEnabled:()=>Oee,getKeyForCompilerOptions:()=>x8e,getLanguageVariant:()=>Vee,getLastChild:()=>zce,getLeadingCommentRanges:()=>Zb,getLeadingCommentRangesOfNode:()=>sme,getLeftmostAccessExpression:()=>Y5,getLeftmostExpression:()=>X5,getLibraryNameFromLibFileName:()=>V6e,getLineAndCharacterOfPosition:()=>Vl,getLineInfo:()=>e6e,getLineOfLocalPosition:()=>i6,getLineOfLocalPositionFromLineMap:()=>j3,getLineStartPositionForPosition:()=>Wv,getLineStarts:()=>Dc,getLinesBetweenPositionAndNextNonWhitespaceCharacter:()=>NDe,getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter:()=>TDe,getLinesBetweenPositions:()=>vv,getLinesBetweenRangeEndAndRangeStart:()=>Xme,getLinesBetweenRangeEndPositions:()=>wDe,getLiteralText:()=>V$,getLocalNameForExternalImport:()=>fte,getLocalSymbolForExportDefault:()=>l6,getLocaleSpecificMessage:()=>tu,getLocaleTimeString:()=>w_e,getMappedContextSpan:()=>fje,getMappedDocumentSpan:()=>zGe,getMappedLocation:()=>Nue,getMatchedFileSpec:()=>s7e,getMatchedIncludeSpec:()=>o7e,getMeaningFromDeclaration:()=>NGe,getMeaningFromLocation:()=>E4,getMembersOfDeclaration:()=>DRe,getModeForFileReference:()=>b_e,getModeForResolutionAtIndex:()=>jxt,getModeForUsageLocation:()=>x6e,getModifiedTime:()=>_d,getModifiers:()=>uN,getModuleInstanceState:()=>PG,getModuleNameStringLiteralAt:()=>S_e,getModuleSpecifierEndingPreference:()=>jDe,getModuleSpecifierResolverHost:()=>oje,getNameForExportedSymbol:()=>uFe,getNameFromImportAttribute:()=>Sle,getNameFromIndexInfo:()=>lce,getNameFromPropertyName:()=>H_e,getNameOfAccessExpression:()=>zme,getNameOfCompilerOptionValue:()=>B8e,getNameOfDeclaration:()=>Sl,getNameOfExpando:()=>Ame,getNameOfJSDocTypedef:()=>lN,getNameOfScriptTarget:()=>Pee,getNameOrArgument:()=>aee,getNameTable:()=>Bze,getNamesForExportedSymbol:()=>oFt,getNamespaceDeclarationNode:()=>QX,getNewLineCharacter:()=>F1,getNewLineKind:()=>e0e,getNewLineOrDefaultFromHost:()=>PZ,getNewTargetContainer:()=>PRe,getNextJSDocCommentLocation:()=>fme,getNodeChildren:()=>YKe,getNodeForGeneratedName:()=>Uhe,getNodeId:()=>od,getNodeKind:()=>bM,getNodeModifiers:()=>Sue,getNodeModulePathParts:()=>ble,getNonAssignedNameOfDeclaration:()=>Uw,getNonAssignmentOperatorForCompoundAssignment:()=>lue,getNonAugmentationDeclaration:()=>M$,getNonDecoratorTokenPosOfNode:()=>L$,getNormalizedAbsolutePath:()=>Qc,getNormalizedAbsolutePathWithoutRoot:()=>wS,getNormalizedPathComponents:()=>Ah,getObjectFlags:()=>ia,getOperator:()=>Dce,getOperatorAssociativity:()=>wme,getOperatorPrecedence:()=>Eee,getOptionFromName:()=>m8e,getOptionsForLibraryResolution:()=>G8e,getOptionsNameMap:()=>hte,getOrCreateEmitNode:()=>kh,getOrCreateExternalHelpersModuleNameIfNeeded:()=>pRt,getOrUpdate:()=>we,getOriginalNode:()=>Np,getOriginalNodeId:()=>Ey,getOriginalSourceFile:()=>rKe,getOutputDeclarationFileName:()=>Tte,getOutputDeclarationFileNameWorker:()=>I6e,getOutputExtension:()=>Xke,getOutputFileNames:()=>YGr,getOutputJSFileNameWorker:()=>C6e,getOutputPathsFor:()=>fue,getOutputPathsForBundle:()=>Yke,getOwnEmitOutputFilePath:()=>cDe,getOwnKeys:()=>Gl,getOwnValues:()=>us,getPackageJsonInfo:()=>vV,getPackageJsonTypesVersionsPaths:()=>Bke,getPackageJsonsVisibleToFile:()=>nFt,getPackageNameFromTypesPackageName:()=>sue,getPackageScopeForPath:()=>iue,getParameterSymbolFromJSDoc:()=>fee,getParameterTypeNode:()=>TKe,getParentNodeInSpan:()=>X_e,getParseTreeNode:()=>zc,getParsedCommandLineOfConfigFile:()=>e_e,getPathComponents:()=>dd,getPathComponentsRelativeTo:()=>m2,getPathFromPathComponents:()=>Iy,getPathUpdater:()=>Yje,getPathsBasePath:()=>Zce,getPatternFromSpec:()=>JDe,getPendingEmitKind:()=>xte,getPositionOfLineAndCharacter:()=>Ju,getPossibleGenericSignatures:()=>U7e,getPossibleOriginalInputExtensionForExtension:()=>uDe,getPossibleTypeArgumentsInfo:()=>K7e,getPreEmitDiagnostics:()=>XGr,getPrecedingNonSpaceCharacterPosition:()=>$Ge,getPrivateIdentifier:()=>a6e,getProperties:()=>s6e,getProperty:()=>Dt,getPropertyArrayElementValue:()=>LRe,getPropertyAssignmentAliasLikeExpression:()=>eDe,getPropertyNameForPropertyNameNode:()=>iV,getPropertyNameForUniqueESSymbol:()=>eKe,getPropertyNameFromType:()=>G2,getPropertyNameOfBindingOrAssignmentElement:()=>$Ke,getPropertySymbolFromBindingElement:()=>jGe,getPropertySymbolsFromContextualType:()=>ZFe,getQuoteFromPreference:()=>cje,getQuotePreference:()=>P2,getRangesWhere:()=>ua,getRefactorContextSpan:()=>n7,getReferencedFileLocation:()=>hue,getRegexFromPattern:()=>TG,getRegularExpressionForWildcard:()=>_6,getRegularExpressionsForWildcards:()=>ule,getRelativePathFromDirectory:()=>Ip,getRelativePathFromFile:()=>T1,getRelativePathToDirectoryOrUrl:()=>km,getRenameLocation:()=>K_e,getReplacementSpanForContextToken:()=>$7e,getResolutionDiagnostic:()=>M6e,getResolutionModeOverride:()=>Nte,getResolveJsonModule:()=>uV,getResolvePackageJsonExports:()=>the,getResolvePackageJsonImports:()=>mN,getResolvedExternalModuleName:()=>kce,getRestIndicatorOfBindingOrAssignmentElement:()=>nke,getRestParameterElementType:()=>ame,getRightMostAssignedExpression:()=>yG,getRootDeclaration:()=>PS,getRootDirectoryOfResolutionCache:()=>mkt,getRootLength:()=>t_,getRootPathSplitLength:()=>_Fr,getScriptKind:()=>_je,getScriptKindFromFileName:()=>ple,getScriptTargetFeatures:()=>D8,getSelectedEffectiveModifierFlags:()=>W5,getSelectedSyntacticModifierFlags:()=>CDe,getSemanticClassifications:()=>gFt,getSemanticJsxChildren:()=>JX,getSetAccessorTypeAnnotationNode:()=>Gme,getSetAccessorValueParameter:()=>qX,getSetExternalModuleIndicator:()=>m6,getShebang:()=>AG,getSingleInitializerOfVariableStatementOrPropertyDeclaration:()=>dme,getSingleVariableOfVariableStatement:()=>J3,getSnapshotText:()=>t7,getSnippetElement:()=>Gle,getSourceFileOfModule:()=>T8,getSourceFileOfNode:()=>ls,getSourceFilePathInNewDir:()=>Vce,getSourceFilePathInNewDirWorker:()=>Wce,getSourceFileVersionAsHashFromText:()=>dGe,getSourceFilesToEmit:()=>Lce,getSourceMapRange:()=>Px,getSourceMapper:()=>wFt,getSourceTextOfNodeFromSourceFile:()=>hG,getSpanOfTokenAtPosition:()=>Rr,getSpellingSuggestion:()=>Rd,getStartPositionOfLine:()=>gN,getStartPositionOfRange:()=>t4,getStartsOnNewLine:()=>DG,getStaticPropertiesAndClassStaticBlock:()=>Wke,getStrictOptionValue:()=>x_,getStringComparer:()=>ql,getSubPatternFromSpec:()=>gle,getSuperCallFromStatement:()=>Lke,getSuperContainer:()=>W8,getSupportedCodeFixes:()=>bze,getSupportedExtensions:()=>b6,getSupportedExtensionsWithJsonIfResolveJsonModule:()=>Hee,getSwitchedType:()=>vje,getSymbolId:()=>Gg,getSymbolNameForPrivateIdentifier:()=>yee,getSymbolParentOrFail:()=>AFe,getSymbolTarget:()=>yje,getSyntacticClassifications:()=>AFt,getSyntacticModifierFlags:()=>eD,getSyntacticModifierFlagsNoCache:()=>Pme,getSynthesizedDeepClone:()=>vd,getSynthesizedDeepCloneWithReplacements:()=>U_e,getSynthesizedDeepClones:()=>BM,getSynthesizedDeepClonesWithReplacements:()=>bje,getSyntheticLeadingComments:()=>nM,getSyntheticTrailingComments:()=>c4,getTargetLabel:()=>xGe,getTargetOfBindingOrAssignmentElement:()=>bV,getTemporaryModuleResolutionState:()=>nue,getTextOfConstantValue:()=>x8,getTextOfIdentifierOrLiteral:()=>N2,getTextOfJSDocComment:()=>pX,getTextOfJsxAttributeName:()=>YS,getTextOfJsxNamespacedName:()=>D6,getTextOfNode:()=>Nf,getTextOfNodeFromSourceText:()=>w5,getTextOfPropertyName:()=>j9,getThisContainer:()=>n0,getThisParameter:()=>sV,getTokenAtPosition:()=>Hc,getTokenPosOfNode:()=>xx,getTokenSourceMapRange:()=>FKe,getTouchingPropertyName:()=>ub,getTouchingToken:()=>Lte,getTrailingCommentRanges:()=>h2,getTrailingSemicolonDeferringWriter:()=>Dme,getTransformFlagsSubtreeExclusions:()=>F2,getTransformers:()=>Fxt,getTsBuildInfoEmitOutputFilePath:()=>LZ,getTsConfigObjectLiteralExpression:()=>V8,getTsConfigPropArrayElementValue:()=>dce,getTypeAnnotationNode:()=>gDe,getTypeArgumentOrTypeParameterList:()=>DGt,getTypeKeywordOfTypeOnlyImport:()=>gje,getTypeNode:()=>Cxe,getTypeNodeIfAccessible:()=>Gue,getTypeParameterFromJsDoc:()=>KRe,getTypeParameterOwner:()=>hr,getTypesPackageName:()=>Dke,getUILocale:()=>ra,getUniqueName:()=>S4,getUniqueSymbolId:()=>UGt,getUseDefineForClassFields:()=>Wee,getWatchErrorSummaryDiagnosticMessage:()=>e7e,getWatchFactory:()=>B6e,group:()=>Xl,groupBy:()=>Zf,guessIndentation:()=>Kae,handleNoEmitOptions:()=>Q6e,handleWatchOptionsConfigDirTemplateSubstitution:()=>hke,hasAbstractModifier:()=>cV,hasAccessorModifier:()=>OS,hasAmbientModifier:()=>Wme,hasChangesInResolutions:()=>G$,hasChildOfKind:()=>W_e,hasContextSensitiveParameters:()=>_le,hasDecorators:()=>LE,hasDocComment:()=>NGt,hasDynamicName:()=>$R,hasEffectiveModifier:()=>ib,hasEffectiveModifiers:()=>Lme,hasEffectiveReadonlyModifier:()=>s6,hasExtension:()=>S1,hasIndexSignature:()=>Bje,hasInferredType:()=>Tle,hasInitializer:()=>$w,hasInvalidEscape:()=>Nme,hasJSDocNodes:()=>_y,hasJSDocParameterTags:()=>dG,hasJSFileExtension:()=>hN,hasJsonModuleEmitEnabled:()=>sle,hasOnlyExpressionInitializer:()=>mG,hasOverrideModifier:()=>Pce,hasPossibleExternalModuleReference:()=>cce,hasProperty:()=>Qa,hasPropertyAccessExpressionWithName:()=>G_e,hasQuestionToken:()=>F5,hasRecordedExternalHelpers:()=>dRt,hasResolutionModeOverride:()=>uxe,hasRestParameter:()=>T$,hasScopeMarker:()=>Xae,hasStaticModifier:()=>CC,hasSyntacticModifier:()=>ya,hasSyntacticModifiers:()=>Vme,hasTSFileExtension:()=>z5,hasTabstop:()=>cxe,hasTrailingDirectorySeparator:()=>S_,hasType:()=>JC,hasTypeArguments:()=>KUe,hasZeroOrOneAsteriskCharacter:()=>nhe,helperString:()=>IV,hostGetCanonicalFileName:()=>Lx,hostUsesCaseSensitiveFileNames:()=>zX,idText:()=>oo,identifierIsThisKeyword:()=>Fme,identifierToKeywordKind:()=>QR,identity:()=>vl,identitySourceMapConsumer:()=>r6e,ignoreSourceNewlines:()=>Rhe,ignoredPaths:()=>Sh,importDefaultHelper:()=>Zxe,importFromModuleSpecifier:()=>OX,importStarHelper:()=>Ghe,indexOfAnyCharCode:()=>Xe,indexOfNode:()=>P3,indicesOf:()=>Yu,inferredTypesContainingFile:()=>mue,injectClassNamedEvaluationHelperBlockIfMissing:()=>Qke,injectClassThisAssignmentIfMissing:()=>oxt,insertImports:()=>uje,insertLeadingStatement:()=>qDr,insertSorted:()=>Gr,insertStatementAfterCustomPrologue:()=>EZ,insertStatementAfterStandardPrologue:()=>rme,insertStatementsAfterCustomPrologue:()=>N8,insertStatementsAfterStandardPrologue:()=>GS,intersperse:()=>pe,intrinsicTagNameToString:()=>Bhe,introducesArgumentsExoticObject:()=>GRe,inverseJsxOptionMap:()=>qhe,isAbstractConstructorSymbol:()=>RDe,isAbstractModifier:()=>gM,isAccessExpression:()=>mp,isAccessibilityModifier:()=>z7e,isAccessor:()=>zw,isAccessorModifier:()=>Xxe,isAliasSymbolDeclaration:()=>zUe,isAliasableExpression:()=>mee,isAmbientModule:()=>Yf,isAmbientPropertyDeclaration:()=>H$,isAnonymousFunctionDefinition:()=>n6,isAnyDirectorySeparator:()=>wp,isAnyImportOrBareOrAccessedRequire:()=>oce,isAnyImportOrReExport:()=>Q3,isAnyImportOrRequireStatement:()=>ace,isAnyImportSyntax:()=>_G,isAnySupportedFileExtension:()=>vKe,isApplicableVersionedTypesKey:()=>c_e,isArgumentExpressionOfElementAccess:()=>P7e,isArray:()=>Na,isArrayBindingElement:()=>k3,isArrayBindingOrAssignmentElement:()=>bX,isArrayBindingOrAssignmentPattern:()=>b$,isArrayBindingPattern:()=>Wu,isArrayLiteralExpression:()=>Cf,isArrayLiteralOrObjectLiteralDestructuringPattern:()=>WZ,isArrayTypeNode:()=>Ye,isArrowFunction:()=>Id,isAsExpression:()=>$S,isAssertClause:()=>UNt,isAssertEntry:()=>HDr,isAssertionExpression:()=>kE,isAssertsKeyword:()=>Lhe,isAssignmentDeclaration:()=>X8,isAssignmentExpression:()=>Im,isAssignmentOperator:()=>tD,isAssignmentPattern:()=>X9,isAssignmentTarget:()=>Zx,isAsteriskToken:()=>ate,isAsyncFunction:()=>t6,isAsyncModifier:()=>g4,isAutoAccessorPropertyDeclaration:()=>r_,isAwaitExpression:()=>Mb,isAwaitKeyword:()=>Ple,isBigIntLiteral:()=>q3,isBinaryExpression:()=>ro,isBinaryOperatorToken:()=>bRt,isBindableObjectDefinePropertyCall:()=>Y3,isBindableStaticAccessExpression:()=>eV,isBindableStaticElementAccessExpression:()=>Ece,isBindableStaticNameExpression:()=>X3,isBindingElement:()=>hl,isBindingElementOfBareOrAccessedRequire:()=>MRe,isBindingName:()=>hZ,isBindingOrAssignmentElement:()=>Hae,isBindingOrAssignmentPattern:()=>h5,isBindingPattern:()=>fu,isBlock:()=>hc,isBlockLike:()=>Yte,isBlockOrCatchScoped:()=>W$,isBlockScope:()=>Y$,isBlockScopedContainerTopLevel:()=>k8,isBooleanLiteral:()=>m5,isBreakOrContinueStatement:()=>D3,isBreakStatement:()=>nP,isBuild:()=>Hkt,isBuildInfoFile:()=>Zxt,isBuilderProgram:()=>ykt,isBundle:()=>zNt,isCallChain:()=>fG,isCallExpression:()=>lu,isCallExpressionTarget:()=>G7e,isCallLikeExpression:()=>CG,isCallLikeOrFunctionLikeExpression:()=>E$,isCallOrNewExpression:()=>SB,isCallOrNewExpressionTarget:()=>F7e,isCallSignatureDeclaration:()=>mV,isCallToHelper:()=>Z6,isCaseBlock:()=>Ole,isCaseClause:()=>ute,isCaseKeyword:()=>Whe,isCaseOrDefaultClause:()=>TX,isCatchClause:()=>fM,isCatchClauseVariableDeclaration:()=>axe,isCatchClauseVariableDeclarationOrBindingElement:()=>P$,isCheckJsEnabledForFile:()=>v6,isChildOfNodeWithKind:()=>OUe,isCircularBuildOrder:()=>$6,isClassDeclaration:()=>Ec,isClassElement:()=>nC,isClassExpression:()=>rp,isClassInstanceProperty:()=>m8,isClassLike:()=>va,isClassMemberModifier:()=>h$,isClassNamedEvaluationHelperBlock:()=>j6,isClassOrTypeElement:()=>h8,isClassStaticBlockDeclaration:()=>ef,isClassThisAssignmentBlock:()=>gue,isCollapsedRange:()=>e4,isColonToken:()=>Hxe,isCommaExpression:()=>Hhe,isCommaListExpression:()=>PE,isCommaSequence:()=>Jle,isCommaToken:()=>Mxe,isComment:()=>MGe,isCommonJsExportPropertyAssignment:()=>U$,isCommonJsExportedExpression:()=>xRe,isCompoundAssignment:()=>cue,isComputedNonLiteralName:()=>FX,isComputedPropertyName:()=>kg,isConciseBody:()=>XR,isConditionalExpression:()=>vN,isConditionalTypeNode:()=>Ei,isConstAssertion:()=>She,isConstTypeReference:()=>B2,isConstructSignatureDeclaration:()=>A,isConstructorDeclaration:()=>Df,isConstructorTypeNode:()=>Y,isContextualKeyword:()=>Tce,isContinueStatement:()=>FG,isCustomPrologue:()=>LS,isDebuggerStatement:()=>ew,isDeclaration:()=>xC,isDeclarationBindingElement:()=>_X,isDeclarationFileName:()=>Gh,isDeclarationName:()=>tT,isDeclarationNameOfEnumOrNamespace:()=>Ume,isDeclarationReadonly:()=>Iu,isDeclarationStatement:()=>vX,isDeclarationWithTypeParameterChildren:()=>GX,isDeclarationWithTypeParameters:()=>X$,isDecorator:()=>FC,isDecoratorTarget:()=>IGt,isDefaultClause:()=>Mle,isDefaultImport:()=>G5,isDefaultModifier:()=>lte,isDefaultedExpandoInitializer:()=>HRe,isDeleteExpression:()=>tP,isDeleteTarget:()=>mme,isDeprecatedDeclaration:()=>dFe,isDestructuringAssignment:()=>Gv,isDiagnosticWithLocation:()=>Rje,isDiskPathRoot:()=>W0,isDoStatement:()=>GZ,isDocumentRegistryEntry:()=>r0e,isDotDotDotToken:()=>uM,isDottedName:()=>Dee,isDynamicName:()=>Rce,isESSymbolIdentifier:()=>tKe,isEffectiveExternalModule:()=>K9,isEffectiveModuleDeclaration:()=>sce,isEffectiveStrictModeSourceFile:()=>kX,isElementAccessChain:()=>IX,isElementAccessExpression:()=>_A,isEmittedFileOfProgram:()=>Qxt,isEmptyArrayLiteral:()=>Yme,isEmptyBindingElement:()=>jc,isEmptyBindingPattern:()=>_o,isEmptyObjectLiteral:()=>Gee,isEmptyStatement:()=>Zv,isEmptyStringLiteral:()=>ume,isEntityName:()=>T_,isEntityNameExpression:()=>lp,isEnumConst:()=>dc,isEnumDeclaration:()=>iP,isEnumMember:()=>yV,isEqualityOperatorKind:()=>rFe,isEqualsGreaterThanToken:()=>Yxe,isExclamationToken:()=>cte,isExcludedFile:()=>eDt,isExclusivelyTypeOnlyImportOrExport:()=>D6e,isExpandoPropertyDeclaration:()=>eM,isExportAssignment:()=>rf,isExportDeclaration:()=>hC,isExportModifier:()=>Ox,isExportName:()=>eke,isExportNamespaceAsDefaultDeclaration:()=>S5,isExportOrDefaultModifier:()=>Jhe,isExportSpecifier:()=>l0,isExportsIdentifier:()=>H3,isExportsOrModuleExportsOrAlias:()=>CM,isExpression:()=>tn,isExpressionNode:()=>DB,isExpressionOfExternalModuleImportEqualsDeclaration:()=>_Gt,isExpressionOfOptionalChainRoot:()=>d8,isExpressionStatement:()=>Xf,isExpressionWithTypeArguments:()=>k_,isExpressionWithTypeArgumentsInClassExtendsClause:()=>Qce,isExternalModule:()=>hm,isExternalModuleAugmentation:()=>KR,isExternalModuleImportEqualsDeclaration:()=>BZ,isExternalModuleIndicator:()=>G3,isExternalModuleNameRelative:()=>Ul,isExternalModuleReference:()=>ZG,isExternalModuleSymbol:()=>L3,isExternalOrCommonJsModule:()=>na,isFileLevelReservedGeneratedIdentifier:()=>mX,isFileLevelUniqueName:()=>v5,isFileProbablyExternalModule:()=>jhe,isFirstDeclarationOfSymbolParameter:()=>Ije,isFixablePromiseHandler:()=>zje,isForInOrOfStatement:()=>bZ,isForInStatement:()=>iD,isForInitializer:()=>O0,isForOfStatement:()=>P1,isForStatement:()=>FB,isFullSourceFile:()=>jR,isFunctionBlock:()=>z9,isFunctionBody:()=>EX,isFunctionDeclaration:()=>hp,isFunctionExpression:()=>PA,isFunctionExpressionOrArrowFunction:()=>RG,isFunctionLike:()=>eu,isFunctionLikeDeclaration:()=>pd,isFunctionLikeKind:()=>HR,isFunctionLikeOrClassStaticBlockDeclaration:()=>x3,isFunctionOrConstructorTypeNode:()=>hX,isFunctionOrModuleBlock:()=>_$,isFunctionSymbol:()=>XRe,isFunctionTypeNode:()=>H,isFutureReservedKeyword:()=>qUe,isGeneratedIdentifier:()=>Cp,isGeneratedPrivateIdentifier:()=>mZ,isGetAccessor:()=>Rv,isGetAccessorDeclaration:()=>Qb,isGetOrSetAccessorDeclaration:()=>fX,isGlobalDeclaration:()=>XZr,isGlobalScopeAugmentation:()=>S2,isGlobalSourceFile:()=>bs,isGrammarError:()=>F$,isHeritageClause:()=>OE,isHoistedFunction:()=>AN,isHoistedVariableStatement:()=>gce,isIdentifier:()=>sr,isIdentifierANonContextualKeyword:()=>_ee,isIdentifierName:()=>$Re,isIdentifierOrThisTypeNode:()=>mRt,isIdentifierPart:()=>_2,isIdentifierStart:()=>qy,isIdentifierText:()=>Ke,isIdentifierTypePredicate:()=>FRe,isIdentifierTypeReference:()=>rxe,isIfStatement:()=>X0,isIgnoredFileFromWildCardWatching:()=>__e,isImplicitGlob:()=>che,isImportAttribute:()=>KNt,isImportAttributeName:()=>m$,isImportAttributes:()=>A4,isImportCall:()=>fC,isImportClause:()=>oT,isImportDeclaration:()=>hI,isImportEqualsDeclaration:()=>mm,isImportKeyword:()=>L6,isImportMeta:()=>Pb,isImportOrExportSpecifier:()=>M9,isImportOrExportSpecifierName:()=>JGt,isImportSpecifier:()=>yy,isImportTypeAssertionContainer:()=>MDr,isImportTypeNode:()=>Nu,isImportableFile:()=>Vje,isInComment:()=>VZ,isInCompoundLikeAssignment:()=>Sce,isInExpressionContext:()=>mce,isInJSDoc:()=>tee,isInJSFile:()=>io,isInJSXText:()=>wGt,isInJsonFile:()=>H8,isInNonReferenceComment:()=>GGt,isInReferenceComment:()=>kGt,isInRightSideOfInternalImportEqualsDeclaration:()=>RGe,isInString:()=>e7,isInTemplateString:()=>J7e,isInTopLevelContext:()=>Ice,isInTypeQuery:()=>V5,isIncrementalCompilation:()=>h6,isIndexSignatureDeclaration:()=>_,isIndexedAccessTypeNode:()=>hs,isInferTypeNode:()=>yo,isInfinityOrNaNString:()=>T6,isInitializedProperty:()=>d_e,isInitializedVariable:()=>Zee,isInsideJsxElement:()=>OGe,isInsideJsxElementOrAttribute:()=>SGt,isInsideNodeModules:()=>q_e,isInsideTemplateLiteral:()=>O_e,isInstanceOfExpression:()=>c6,isInstantiatedModule:()=>K8e,isInterfaceDeclaration:()=>XI,isInternalDeclaration:()=>jae,isInternalModuleImportEqualsDeclaration:()=>D5,isInternalName:()=>jKe,isIntersectionTypeNode:()=>ji,isIntrinsicJsxName:()=>UX,isIterationStatement:()=>YR,isJSDoc:()=>cT,isJSDocAllType:()=>eRt,isJSDocAugmentsTag:()=>P6,isJSDocAuthorTag:()=>UDr,isJSDocCallbackTag:()=>VKe,isJSDocClassTag:()=>rRt,isJSDocCommentContainingNode:()=>ff,isJSDocConstructSignature:()=>MX,isJSDocDeprecatedTag:()=>MKe,isJSDocEnumTag:()=>Ohe,isJSDocFunctionType:()=>Ate,isJSDocImplementsTag:()=>zxe,isJSDocImportTag:()=>DN,isJSDocIndexSignature:()=>ree,isJSDocLikeText:()=>s8e,isJSDocLink:()=>qNt,isJSDocLinkCode:()=>$Nt,isJSDocLinkLike:()=>U9,isJSDocLinkPlain:()=>XDr,isJSDocMemberName:()=>oP,isJSDocNameReference:()=>Hle,isJSDocNamepathType:()=>JDr,isJSDocNamespaceBody:()=>Jae,isJSDocNode:()=>kS,isJSDocNonNullableType:()=>Jxe,isJSDocNullableType:()=>gte,isJSDocOptionalParameter:()=>Ele,isJSDocOptionalType:()=>LKe,isJSDocOverloadTag:()=>dte,isJSDocOverrideTag:()=>Kxe,isJSDocParameterTag:()=>LB,isJSDocPrivateTag:()=>PKe,isJSDocPropertyLikeTag:()=>IZ,isJSDocPropertyTag:()=>nRt,isJSDocProtectedTag:()=>OKe,isJSDocPublicTag:()=>WKe,isJSDocReadonlyTag:()=>QKe,isJSDocReturnTag:()=>jxe,isJSDocSatisfiesExpression:()=>bhe,isJSDocSatisfiesTag:()=>qxe,isJSDocSeeTag:()=>KDr,isJSDocSignature:()=>LG,isJSDocTag:()=>J9,isJSDocTemplateTag:()=>Lv,isJSDocThisTag:()=>HKe,isJSDocThrowsTag:()=>zDr,isJSDocTypeAlias:()=>T2,isJSDocTypeAssertion:()=>m4,isJSDocTypeExpression:()=>sP,isJSDocTypeLiteral:()=>f4,isJSDocTypeTag:()=>Yle,isJSDocTypedefTag:()=>I4,isJSDocUnknownTag:()=>jDr,isJSDocUnknownType:()=>tRt,isJSDocVariadicType:()=>Uxe,isJSXTagName:()=>WX,isJsonEqual:()=>mle,isJsonSourceFile:()=>fa,isJsxAttribute:()=>RN,isJsxAttributeLike:()=>E8,isJsxAttributeName:()=>lxe,isJsxAttributes:()=>pM,isJsxChild:()=>wX,isJsxClosingElement:()=>AM,isJsxClosingFragment:()=>jNt,isJsxElement:()=>Jx,isJsxExpression:()=>Qle,isJsxFragment:()=>dM,isJsxNamespacedName:()=>aT,isJsxOpeningElement:()=>NN,isJsxOpeningFragment:()=>p4,isJsxOpeningLikeElement:()=>Um,isJsxOpeningLikeElementTagName:()=>CGt,isJsxSelfClosingElement:()=>d4,isJsxSpreadAttribute:()=>W6,isJsxTagNameExpression:()=>Z3,isJsxText:()=>aM,isJumpStatementTarget:()=>F_e,isKeyword:()=>s0,isKeywordOrPunctuation:()=>wce,isKnownSymbol:()=>bee,isLabelName:()=>V7e,isLabelOfLabeledStatement:()=>L7e,isLabeledStatement:()=>iC,isLateVisibilityPaintedStatement:()=>G8,isLeftHandSideExpression:()=>N_,isLeftHandSideOfAssignment:()=>O5,isLet:()=>aI,isLineBreak:()=>XC,isLiteralComputedPropertyDeclarationName:()=>Cee,isLiteralExpression:()=>wv,isLiteralExpressionOfObject:()=>CZ,isLiteralImportTypeNode:()=>n_,isLiteralKind:()=>I5,isLiteralLikeAccess:()=>bce,isLiteralLikeElementAccess:()=>oee,isLiteralNameOfPropertyDeclarationOrIndexAccess:()=>kGe,isLiteralTypeLikeExpression:()=>nxr,isLiteralTypeLiteral:()=>xS,isLiteralTypeNode:()=>sd,isLocalName:()=>VG,isLogicalOperator:()=>_De,isLogicalOrCoalescingAssignmentExpression:()=>Ome,isLogicalOrCoalescingAssignmentOperator:()=>o6,isLogicalOrCoalescingBinaryExpression:()=>Ree,isLogicalOrCoalescingBinaryOperator:()=>Nee,isMappedTypeNode:()=>wl,isMemberName:()=>eb,isMetaProperty:()=>SN,isMethodDeclaration:()=>lI,isMethodOrAccessor:()=>_Z,isMethodSignature:()=>zS,isMinusToken:()=>ote,isMissingDeclaration:()=>YDr,isMissingPackageJsonInfo:()=>ADt,isModifier:()=>Ag,isModifierKind:()=>Tv,isModifierLike:()=>Rp,isModuleAugmentationExternal:()=>Q$,isModuleBlock:()=>wN,isModuleBody:()=>Q0,isModuleDeclaration:()=>mC,isModuleExportsAccessExpression:()=>dN,isModuleIdentifier:()=>U8,isModuleName:()=>yRt,isModuleOrEnumDeclaration:()=>BX,isModuleReference:()=>F3,isModuleSpecifierLike:()=>KGe,isModuleWithStringLiteralName:()=>T5,isNameOfFunctionDeclaration:()=>Q7e,isNameOfModuleDeclaration:()=>O7e,isNamedClassElement:()=>Mae,isNamedDeclaration:()=>wf,isNamedEvaluation:()=>rb,isNamedEvaluationSource:()=>Eme,isNamedExportBindings:()=>f8,isNamedExports:()=>ZB,isNamedImportBindings:()=>v$,isNamedImports:()=>TN,isNamedImportsOrExports:()=>qce,isNamedTupleMember:()=>At,isNamespaceBody:()=>tb,isNamespaceExport:()=>sD,isNamespaceExportDeclaration:()=>Phe,isNamespaceImport:()=>Xx,isNamespaceReexportDeclaration:()=>QRe,isNewExpression:()=>qS,isNewExpressionTarget:()=>Bue,isNoSubstitutionTemplateLiteral:()=>cM,isNode:()=>XCe,isNodeArray:()=>IG,isNodeArrayMultiLine:()=>Jme,isNodeDescendantOf:()=>rV,isNodeKind:()=>CX,isNodeLikeSystem:()=>gy,isNodeModulesDirectory:()=>NS,isNodeWithPossibleHoistedDeclaration:()=>qRe,isNonContextualKeyword:()=>bme,isNonExportDefaultModifier:()=>sxr,isNonGlobalAmbientModule:()=>O$,isNonGlobalDeclaration:()=>cFt,isNonNullAccess:()=>Ble,isNonNullChain:()=>p8,isNonNullExpression:()=>sT,isNonStaticMethodOrAccessorWithPrivateName:()=>jDt,isNotEmittedOrPartiallyEmittedNode:()=>KCe,isNotEmittedStatement:()=>ZKe,isNullishCoalesce:()=>I$,isNumber:()=>lm,isNumericLiteral:()=>pu,isNumericLiteralName:()=>bN,isObjectBindingElementWithoutPropertyName:()=>Y_e,isObjectBindingOrAssignmentElement:()=>yX,isObjectBindingOrAssignmentPattern:()=>y$,isObjectBindingPattern:()=>Wg,isObjectLiteralElement:()=>y5,isObjectLiteralElementLike:()=>vB,isObjectLiteralExpression:()=>ru,isObjectLiteralMethod:()=>RB,isObjectLiteralOrClassExpressionMethodOrAccessor:()=>K$,isObjectTypeDeclaration:()=>H5,isOctalDigit:()=>uZ,isOmittedExpression:()=>tf,isOptionalChain:()=>Gm,isOptionalChainRoot:()=>f5,isOptionalDeclaration:()=>HS,isOptionalJSDocPropertyLikeTag:()=>Kee,isOptionalTypeNode:()=>Ut,isOuterExpression:()=>tke,isOutermostOptionalChain:()=>R3,isOverrideModifier:()=>Vhe,isPackageJsonInfo:()=>Ske,isPackedArrayLiteral:()=>_he,isParameter:()=>Uc,isParameterPropertyDeclaration:()=>Zn,isParameterPropertyModifier:()=>C5,isParenthesizedExpression:()=>ZC,isParenthesizedTypeNode:()=>to,isParseTreeNode:()=>pZ,isPartOfParameterDeclaration:()=>TZ,isPartOfTypeNode:()=>VS,isPartOfTypeQuery:()=>hce,isPartiallyEmittedExpression:()=>GG,isPatternMatch:()=>gm,isPinnedComment:()=>R8,isPlainJsFile:()=>B5,isPlusToken:()=>Zhe,isPossiblyTypeArgumentPosition:()=>P_e,isPostfixUnaryExpression:()=>Qx,isPrefixUnaryExpression:()=>GB,isPrimitiveLiteralValue:()=>zee,isPrivateIdentifier:()=>Gc,isPrivateIdentifierClassElementDeclaration:()=>Dh,isPrivateIdentifierPropertyAccessExpression:()=>Y9,isPrivateIdentifierSymbol:()=>rDe,isProgramBundleEmitBuildInfo:()=>okt,isProgramUptoDate:()=>W6e,isPrologueDirective:()=>HI,isPropertyAccessChain:()=>p5,isPropertyAccessEntityNameExpression:()=>xee,isPropertyAccessExpression:()=>fo,isPropertyAccessOrQualifiedName:()=>_5,isPropertyAccessOrQualifiedNameOrImportTypeNode:()=>Yae,isPropertyAssignment:()=>jC,isPropertyDeclaration:()=>Hl,isPropertyName:()=>RI,isPropertyNameLiteral:()=>WS,isPropertySignature:()=>i_,isProtoSetter:()=>nDe,isPrototypeAccess:()=>SG,isPrototypePropertyAssignment:()=>lee,isPunctuation:()=>yme,isPushOrUnshiftIdentifier:()=>Bme,isQualifiedName:()=>c0,isQuestionDotToken:()=>u4,isQuestionOrExclamationToken:()=>CRt,isQuestionOrPlusOrMinusToken:()=>_Rt,isQuestionToken:()=>xG,isRawSourceMap:()=>HDt,isReadonlyKeyword:()=>CV,isReadonlyKeywordOrPlusOrMinusToken:()=>hRt,isRecognizedTripleSlashComment:()=>Z$,isReferenceFileLocation:()=>Rte,isReferencedFile:()=>pP,isRegularExpressionLiteral:()=>Fhe,isRequireCall:()=>H0,isRequireVariableStatement:()=>Y8,isRestParameter:()=>Dv,isRestTypeNode:()=>cn,isReturnStatement:()=>G_,isReturnStatementWithFixablePromiseHandler:()=>_Fe,isRightSideOfAccessExpression:()=>Hme,isRightSideOfInstanceofExpression:()=>bDe,isRightSideOfPropertyAccess:()=>Fte,isRightSideOfQualifiedName:()=>hGt,isRightSideOfQualifiedNameOrPropertyAccess:()=>a6,isRightSideOfQualifiedNameOrPropertyAccessOrJSDocMemberName:()=>yDe,isRootedDiskPath:()=>bd,isSameEntityName:()=>PX,isSatisfiesExpression:()=>kG,isScopeMarker:()=>B$,isSemicolonClassElement:()=>Yx,isSetAccessor:()=>xh,isSetAccessorDeclaration:()=>ob,isShebangTrivia:()=>gZ,isShiftOperatorOrHigher:()=>r8e,isShorthandAmbientModuleSymbol:()=>O3,isShorthandPropertyAssignment:()=>F_,isSignedNumericLiteral:()=>Nce,isSimpleCopiableExpression:()=>mM,isSimpleInlineableExpression:()=>xN,isSimpleParameter:()=>txt,isSimpleParameterList:()=>p_e,isSingleOrDoubleQuote:()=>iee,isSourceFile:()=>Fc,isSourceFileFromLibrary:()=>Hte,isSourceFileJS:()=>i0,isSourceFileNotJS:()=>MUe,isSourceFileNotJson:()=>_ce,isSourceMapping:()=>XDt,isSpecialPropertyDeclaration:()=>YRe,isSpreadAssignment:()=>Ux,isSpreadElement:()=>fh,isStatement:()=>Cc,isStatementButNotDeclaration:()=>SX,isStatementOrBlock:()=>qw,isStatementWithLocals:()=>ece,isStatic:()=>eg,isStaticModifier:()=>iT,isString:()=>Ya,isStringAKeyword:()=>$Ue,isStringANonContextualKeyword:()=>L5,isStringAndEmptyAnonymousObjectIntersection:()=>xGt,isStringDoubleQuoted:()=>yce,isStringLiteral:()=>Eu,isStringLiteralLike:()=>JA,isStringLiteralOrJsxExpression:()=>Uae,isStringLiteralOrTemplate:()=>$Gt,isStringOrNumericLiteralLike:()=>ZE,isStringOrRegularExpressionOrTemplateLiteral:()=>j7e,isStringTextContainingNode:()=>C8,isSuperCall:()=>Rf,isSuperKeyword:()=>eP,isSuperOrSuperProperty:()=>QUe,isSuperProperty:()=>M0,isSupportedSourceFileName:()=>zDe,isSwitchStatement:()=>Bd,isSyntaxList:()=>pte,isSyntheticExpression:()=>rP,isSyntheticReference:()=>V6,isTagName:()=>W7e,isTaggedTemplateExpression:()=>W1,isTaggedTemplateTag:()=>fGt,isTemplateExpression:()=>Mx,isTemplateHead:()=>lM,isTemplateLiteral:()=>k1,isTemplateLiteralKind:()=>DS,isTemplateLiteralToken:()=>Oae,isTemplateLiteralTypeNode:()=>tp,isTemplateLiteralTypeSpan:()=>rg,isTemplateMiddle:()=>$3,isTemplateMiddleOrTemplateTail:()=>I8,isTemplateSpan:()=>Hb,isTemplateTail:()=>Wle,isTextWhiteSpaceLike:()=>VGt,isThis:()=>Zte,isThisContainerOrFunctionBlock:()=>WRe,isThisIdentifier:()=>vG,isThisInTypeQuery:()=>aV,isThisInitializedDeclaration:()=>Cce,isThisInitializedObjectBindingExpression:()=>ORe,isThisProperty:()=>q$,isThisTypeNode:()=>aa,isThisTypeParameter:()=>N6,isThisTypePredicate:()=>ZRe,isThrowStatement:()=>Z2,isToken:()=>Q9,isTokenKind:()=>C$,isTraceEnabled:()=>WG,isTransientSymbol:()=>wB,isTrivia:()=>XX,isTryStatement:()=>ab,isTupleTypeNode:()=>Ct,isTypeAlias:()=>Aee,isTypeAliasDeclaration:()=>Pf,isTypeAssertionExpression:()=>hV,isTypeDeclaration:()=>$5,isTypeElement:()=>Rx,isTypeKeyword:()=>wue,isTypeKeywordToken:()=>nje,isTypeKeywordTokenOrIdentifier:()=>XGe,isTypeLiteralNode:()=>Se,isTypeNode:()=>Ma,isTypeNodeKind:()=>jme,isTypeOfExpression:()=>nD,isTypeOnlyExportDeclaration:()=>Qae,isTypeOnlyImportDeclaration:()=>H9,isTypeOnlyImportOrExportDeclaration:()=>Nx,isTypeOperatorNode:()=>as,isTypeParameterDeclaration:()=>$p,isTypePredicateNode:()=>S,isTypeQueryNode:()=>oe,isTypeReferenceNode:()=>F,isTypeReferenceType:()=>B8,isTypeUsableAsPropertyName:()=>k2,isUMDExportSymbol:()=>jce,isUnaryExpression:()=>yZ,isUnaryExpressionWithWrite:()=>_8,isUnicodeIdentifierStart:()=>Sg,isUnionTypeNode:()=>Is,isUrl:()=>tC,isValidBigIntString:()=>hle,isValidESSymbolDeclaration:()=>kRe,isValidTypeOnlyAliasUseSite:()=>xZ,isValueSignatureDeclaration:()=>Z5,isVarAwaitUsing:()=>Mg,isVarConst:()=>Hp,isVarConstLike:()=>Od,isVarUsing:()=>fd,isVariableDeclaration:()=>js,isVariableDeclarationInVariableStatement:()=>L8,isVariableDeclarationInitializedToBareOrAccessedRequire:()=>$9,isVariableDeclarationInitializedToRequire:()=>nee,isVariableDeclarationList:()=>bl,isVariableLike:()=>R5,isVariableLikeOrAccessor:()=>Ace,isVariableStatement:()=>Dp,isVoidExpression:()=>mf,isWatchSet:()=>Kme,isWhileStatement:()=>FZ,isWhiteSpaceLike:()=>Jm,isWhiteSpaceSingleLine:()=>e0,isWithStatement:()=>_V,isWriteAccess:()=>M5,isWriteOnlyAccess:()=>Uce,isYieldExpression:()=>Hx,jsxModeNeedsExplicitImport:()=>Fje,keywordPart:()=>ME,last:()=>Ta,lastOrUndefined:()=>zo,length:()=>O,libMap:()=>g8e,libs:()=>lke,lineBreakPart:()=>Ote,linkNamePart:()=>YGt,linkPart:()=>mje,linkTextPart:()=>qGe,listFiles:()=>r7e,loadModuleFromGlobalCache:()=>SDt,loadWithModeAwareCache:()=>E_e,makeIdentifierFromModuleName:()=>ice,makeImport:()=>RV,makeStringLiteral:()=>Tue,mangleScopedPackageName:()=>Bte,map:()=>Ot,mapAllOrFail:()=>Br,mapDefined:()=>tr,mapDefinedEntries:()=>Gn,mapDefinedIterator:()=>gn,mapEntries:()=>Qs,mapIterator:()=>dr,mapOneOrMany:()=>xje,mapToDisplayParts:()=>DV,matchFiles:()=>uhe,matchPatternOrExact:()=>phe,matchedText:()=>yh,matchesExclude:()=>bke,maybeBind:()=>Yi,maybeSetLocalizedDiagnosticMessages:()=>ZDe,memoize:()=>su,memoizeCached:()=>Uh,memoizeOne:()=>ii,memoizeWeak:()=>RC,metadataHelper:()=>Zle,min:()=>gC,minAndMax:()=>exe,missingFileModifiedTime:()=>BA,modifierToFlag:()=>P5,modifiersToFlags:()=>kv,moduleOptionDeclaration:()=>xRt,moduleResolutionIsEqualTo:()=>k$,moduleResolutionNameAndModeGetter:()=>G6e,moduleResolutionOptionDeclarations:()=>d8e,moduleResolutionSupportsPackageJsonExportsAndImports:()=>j5,moduleResolutionUsesNodeModules:()=>JGe,moduleSpecifierToValidIdentifier:()=>$_e,moduleSpecifiers:()=>dP,moduleSymbolToValidIdentifier:()=>Zue,moveEmitHelpers:()=>ku,moveRangeEnd:()=>g6,moveRangePastDecorators:()=>rD,moveRangePastModifiers:()=>QS,moveRangePos:()=>NZ,moveSyntheticComments:()=>DI,mutateMap:()=>I6,mutateMapSkippingNewValues:()=>fN,needsParentheses:()=>eFe,needsScopeMarker:()=>y8,newCaseClauseTracker:()=>IFe,newPrivateEnvironment:()=>$Dt,noEmitNotification:()=>I_e,noEmitSubstitution:()=>pue,noTransformers:()=>Gxt,noTruncationMaximumTruncationLength:()=>R$,nodeCanBeDecorated:()=>eee,nodeHasName:()=>Sv,nodeIsDecorated:()=>VX,nodeIsMissing:()=>Tf,nodeIsPresent:()=>GE,nodeIsSynthesized:()=>$d,nodeModuleNameResolver:()=>CDt,nodeModulesPathPart:()=>Kx,nodeNextJsonConfigResolver:()=>mDt,nodeOrChildIsDecorated:()=>O8,nodeOverlapsWithStartEnd:()=>GGe,nodePosToString:()=>tce,nodeSeenTracker:()=>Vte,nodeStartsNewLexicalEnvironment:()=>vme,nodeToDisplayParts:()=>OZr,noop:()=>oc,noopFileWatcher:()=>_ue,normalizePath:()=>Mc,normalizeSlashes:()=>df,not:()=>Am,notImplemented:()=>ja,notImplementedResolver:()=>Vxt,nullNodeConverters:()=>dxe,nullParenthesizerRules:()=>qee,nullTransformationContext:()=>m_e,objectAllocator:()=>kC,operatorPart:()=>Rue,optionDeclarations:()=>lT,optionMapToObject:()=>Ike,optionsAffectingProgramStructure:()=>LRt,optionsForBuild:()=>f8e,optionsForWatch:()=>Y6,optionsHaveChanges:()=>V3,optionsHaveModuleResolutionChanges:()=>qae,or:()=>fg,orderedRemoveItem:()=>tA,orderedRemoveItemAt:()=>Rm,packageIdToPackageName:()=>E5,packageIdToString:()=>JR,paramHelper:()=>khe,parameterIsThisKeyword:()=>oV,parameterNamePart:()=>OGt,parseBaseNodeFactory:()=>wRt,parseBigInt:()=>txe,parseBuildCommand:()=>JRt,parseCommandLine:()=>YRt,parseCommandLineWorker:()=>C8e,parseConfigFileTextToJson:()=>h8e,parseConfigFileWithSystem:()=>_kt,parseConfigHostFromCompilerHostLike:()=>sGe,parseCustomTypeOption:()=>dke,parseIsolatedEntityName:()=>H6,parseIsolatedJSDocComment:()=>NRt,parseJSDocTypeExpressionForTests:()=>Sxr,parseJsonConfigFileContent:()=>tkr,parseJsonSourceFileConfigFileContent:()=>n_e,parseJsonText:()=>zhe,parseListTypeOption:()=>MRt,parseNodeFactory:()=>cP,parseNodeModuleFromPath:()=>o_e,parsePackageName:()=>a_e,parsePseudoBigInt:()=>s4,parseValidBigInt:()=>mhe,pasteEdits:()=>Fqe,patchWriteFileEnsuringDirectory:()=>V0,pathContainsNodeModules:()=>AP,pathIsAbsolute:()=>CI,pathIsBareSpecifier:()=>P0,pathIsRelative:()=>Qp,patternText:()=>D0,perfLogger:()=>jl,performIncrementalCompilation:()=>bkt,performance:()=>cp,plainJSErrors:()=>P6e,positionBelongsToNode:()=>H7e,positionIsASICandidate:()=>iFe,positionIsSynthesized:()=>Fv,positionsAreOnSameLine:()=>L1,preProcessFile:()=>lLr,probablyUsesSemicolons:()=>z_e,processCommentPragmas:()=>l8e,processPragmasIntoFields:()=>u8e,processTaggedTemplateExpression:()=>u6e,programContainsEsModules:()=>ZGt,programContainsModules:()=>FGt,projectReferenceIsEqualTo:()=>w8,propKeyHelper:()=>Dxe,propertyNamePart:()=>QGt,pseudoBigIntToString:()=>AV,punctuationPart:()=>d0,pushIfUnique:()=>da,quote:()=>kue,quotePreferenceFromString:()=>aje,rangeContainsPosition:()=>Z_e,rangeContainsPositionExclusive:()=>L_e,rangeContainsRange:()=>W2,rangeContainsRangeExclusive:()=>yGt,rangeContainsStartEnd:()=>V_e,rangeEndIsOnSameLineAsRangeStart:()=>d6,rangeEndPositionsAreOnSameLine:()=>vDe,rangeEquals:()=>wi,rangeIsOnSingleLine:()=>RZ,rangeOfNode:()=>Ihe,rangeOfTypeParameters:()=>Che,rangeOverlapsWithStartEnd:()=>vue,rangeStartIsOnSameLineAsRangeEnd:()=>SDe,rangeStartPositionsAreOnSameLine:()=>A6,readBuilderProgram:()=>fGe,readConfigFile:()=>t_e,readHelper:()=>Nxe,readJson:()=>lV,readJsonConfigFile:()=>URt,readJsonOrUndefined:()=>Fee,reduceEachLeadingCommentRange:()=>Ex,reduceEachTrailingCommentRange:()=>AZ,reduceLeft:()=>Nd,reduceLeftIterator:()=>ge,reducePathComponents:()=>rC,refactor:()=>s7,regExpEscape:()=>yKe,regularExpressionFlagToCharacter:()=>tc,relativeComplement:()=>Ji,removeAllComments:()=>nte,removeEmitHelper:()=>oM,removeExtension:()=>n4,removeFileExtension:()=>a0,removeIgnoredPath:()=>aGe,removeMinAndVersionNumbers:()=>Iv,removeOptionality:()=>TGt,removePrefix:()=>E_,removeSuffix:()=>Hm,removeTrailingDirectorySeparator:()=>w_,repeatString:()=>M_e,replaceElement:()=>cu,replaceFirstStar:()=>tM,resolutionExtensionIsTSOrJson:()=>E6,resolveConfigFileProjectName:()=>I7e,resolveJSModule:()=>pDt,resolveLibrary:()=>Tke,resolveModuleName:()=>U6,resolveModuleNameFromCache:()=>Dkr,resolvePackageNameToPackageJson:()=>D8e,resolvePath:()=>$_,resolveProjectReferencePath:()=>Dte,resolveTripleslashReference:()=>S6e,resolveTypeReferenceDirective:()=>uDt,resolvingEmptyArray:()=>N$,restHelper:()=>vxe,returnFalse:()=>NC,returnNoopFileWatcher:()=>yue,returnTrue:()=>fI,returnUndefined:()=>wI,returnsPromise:()=>jje,runInitializersHelper:()=>_xe,sameFlatMap:()=>In,sameMap:()=>Ar,sameMapping:()=>yGr,scanShebangTrivia:()=>gG,scanTokenAtPosition:()=>bn,scanner:()=>J0,screenStartingMessageCodes:()=>q6e,semanticDiagnosticsOptionDeclarations:()=>GRt,serializeCompilerOptions:()=>Cke,server:()=>aYr,servicesVersion:()=>sVr,setCommentRange:()=>hA,setConfigFileInOptions:()=>v8e,setConstantValue:()=>fxe,setEachParent:()=>wKe,setEmitFlags:()=>ao,setFunctionNameHelper:()=>xxe,setGetSourceFileAsHashVersioned:()=>pGe,setIdentifierAutoGenerate:()=>fV,setIdentifierGeneratedImportReference:()=>ste,setIdentifierTypeArguments:()=>nT,setInternalEmitFlags:()=>ite,setLocalizedDiagnosticMessages:()=>Lee,setModuleDefaultHelper:()=>Fxe,setNodeChildren:()=>iRt,setNodeFlags:()=>ixe,setObjectAllocator:()=>FDe,setOriginalNode:()=>Ho,setParent:()=>GA,setParentRecursive:()=>yN,setPrivateIdentifier:()=>_4,setSnippetElement:()=>La,setSourceMapRange:()=>Hg,setStackTraceLimit:()=>iN,setStartsOnNewLine:()=>Dle,setSyntheticLeadingComments:()=>KS,setSyntheticTrailingComments:()=>iM,setSys:()=>Bv,setSysLog:()=>Fb,setTextRange:()=>un,setTextRangeEnd:()=>o4,setTextRangePos:()=>S6,setTextRangePosEnd:()=>MS,setTextRangePosWidth:()=>hhe,setTokenSourceMapRange:()=>pxe,setTypeNode:()=>Ixe,setUILocale:()=>Us,setValueDeclaration:()=>uee,shouldAllowImportingTsExtension:()=>vte,shouldPreserveConstEnums:()=>gV,shouldUseUriStyleNodeCoreModules:()=>pFe,showModuleSpecifier:()=>xDe,signatureHasLiteralTypes:()=>j8e,signatureHasRestParameter:()=>g0,signatureToDisplayParts:()=>hje,single:()=>xg,singleElementArray:()=>Dm,singleIterator:()=>Fa,singleOrMany:()=>_l,singleOrUndefined:()=>Tu,skipAlias:()=>ph,skipAssertions:()=>exr,skipConstraint:()=>ije,skipOuterExpressions:()=>LC,skipParentheses:()=>zA,skipPartiallyEmittedExpressions:()=>x1,skipTrivia:()=>Uu,skipTypeChecking:()=>q5,skipTypeParentheses:()=>z8,skipWhile:()=>yE,sliceAfter:()=>fhe,some:()=>lr,sort:()=>mg,sortAndDeduplicate:()=>Ir,sortAndDeduplicateDiagnostics:()=>iA,sourceFileAffectingCompilerOptions:()=>p8e,sourceFileMayBeEmitted:()=>K3,sourceMapCommentRegExp:()=>q8e,sourceMapCommentRegExpDontCareLineStart:()=>QDt,spacePart:()=>xI,spanMap:()=>xa,spreadArrayHelper:()=>Rxe,stableSort:()=>ml,startEndContainsRange:()=>M7e,startEndOverlapsWithStartEnd:()=>FGe,startOnNewLine:()=>u0,startTracing:()=>BE,startsWith:()=>uc,startsWithDirectory:()=>Nh,startsWithUnderscore:()=>Gje,startsWithUseStrict:()=>gRt,stringContainsAt:()=>aFt,stringToToken:()=>Yn,stripQuotes:()=>R2,supportedDeclarationExtensions:()=>fle,supportedJSExtensions:()=>ghe,supportedJSExtensionsFlat:()=>r4,supportedLocaleDirectories:()=>N3,supportedTSExtensions:()=>y6,supportedTSExtensionsFlat:()=>Qee,supportedTSImplementationExtensions:()=>Ile,suppressLeadingAndTrailingTrivia:()=>HE,suppressLeadingTrivia:()=>Eje,suppressTrailingTrivia:()=>jGt,symbolEscapedNameNoDefault:()=>UGe,symbolName:()=>pf,symbolNameNoDefault:()=>lje,symbolPart:()=>PGt,symbolToDisplayParts:()=>Due,syntaxMayBeASICandidate:()=>tFt,syntaxRequiresTrailingSemicolonOrASI:()=>nFe,sys:()=>yd,sysLog:()=>Ky,tagNamesAreEquivalent:()=>uP,takeWhile:()=>Lf,targetOptionDeclaration:()=>A8e,templateObjectHelper:()=>Txe,testFormatSettings:()=>xZr,textChangeRangeIsUnchanged:()=>K,textChangeRangeNewSpan:()=>Ms,textChanges:()=>Ao,textOrKeywordPart:()=>Cje,textPart:()=>O2,textRangeContainsPositionInclusive:()=>y2,textSpanContainsPosition:()=>my,textSpanContainsTextSpan:()=>b2,textSpanEnd:()=>Ku,textSpanIntersection:()=>dZ,textSpanIntersectsWith:()=>oI,textSpanIntersectsWithPosition:()=>hy,textSpanIntersectsWithTextSpan:()=>fA,textSpanIsEmpty:()=>DE,textSpanOverlap:()=>w3,textSpanOverlapsWith:()=>PR,textSpansEqual:()=>Pte,textToKeywordObj:()=>G,timestamp:()=>$l,toArray:()=>ys,toBuilderFileEmit:()=>ukt,toBuilderStateFileInfoForMultiEmit:()=>lkt,toEditorSettings:()=>a0e,toFileNameLowerCase:()=>uf,toLowerCase:()=>sl,toPath:()=>AA,toProgramEmitPending:()=>gkt,tokenIsIdentifierOrKeyword:()=>MI,tokenIsIdentifierOrKeywordOrGreaterThan:()=>VR,tokenToString:()=>vr,trace:()=>Tl,tracing:()=>Qi,tracingEnabled:()=>dy,transferSourceFileChildren:()=>sRt,transform:()=>fVr,transformClassFields:()=>Axt,transformDeclarations:()=>p6e,transformECMAScriptModule:()=>d6e,transformES2015:()=>Sxt,transformES2016:()=>vxt,transformES2017:()=>Ixt,transformES2018:()=>Cxt,transformES2019:()=>mxt,transformES2020:()=>hxt,transformES2021:()=>_xt,transformESDecorators:()=>fxt,transformESNext:()=>yxt,transformGenerators:()=>wxt,transformJsx:()=>Bxt,transformLegacyDecorators:()=>pxt,transformModule:()=>A6e,transformNamedEvaluation:()=>QE,transformNodeModule:()=>Nxt,transformNodes:()=>C_e,transformSystemModule:()=>Txt,transformTypeScript:()=>gxt,transpile:()=>mLr,transpileDeclaration:()=>ILr,transpileModule:()=>NFt,transpileOptionValueCompilerOptions:()=>VRt,tryAddToSet:()=>Zi,tryAndIgnoreErrors:()=>aFe,tryCast:()=>$s,tryDirectoryExists:()=>oFe,tryExtractTSExtension:()=>Mce,tryFileExists:()=>Fue,tryGetClassExtendingExpressionWithTypeArguments:()=>Qme,tryGetClassImplementingOrExtendingExpressionWithTypeArguments:()=>Mme,tryGetDirectories:()=>sFe,tryGetExtensionFromPath:()=>_N,tryGetImportFromModuleSpecifier:()=>gee,tryGetJSDocSatisfiesTypeNode:()=>vle,tryGetModuleNameFromFile:()=>Yhe,tryGetModuleSpecifierFromDeclaration:()=>j8,tryGetNativePerformanceHooks:()=>K_,tryGetPropertyAccessOrIdentifierToString:()=>kee,tryGetPropertyNameOfBindingOrAssignmentElement:()=>ike,tryGetSourceMappingURL:()=>MDt,tryGetTextOfPropertyName:()=>N5,tryIOAndConsumeErrors:()=>cFe,tryParseJson:()=>Xce,tryParsePattern:()=>i4,tryParsePatterns:()=>Xee,tryParseRawSourceMap:()=>YDt,tryReadDirectory:()=>wje,tryReadFile:()=>zle,tryRemoveDirectoryPrefix:()=>she,tryRemoveExtension:()=>$De,tryRemovePrefix:()=>Tb,tryRemoveSuffix:()=>I1,typeAcquisitionDeclarations:()=>gke,typeAliasNamePart:()=>MGt,typeDirectiveIsEqualTo:()=>$ae,typeKeywords:()=>rje,typeParameterNamePart:()=>HGt,typeToDisplayParts:()=>J_e,unchangedPollThresholds:()=>Op,unchangedTextChangeRange:()=>Ze,unescapeLeadingUnderscores:()=>wc,unmangleScopedPackageName:()=>l_e,unorderedRemoveItem:()=>Qy,unorderedRemoveItemAt:()=>uh,unreachableCodeIsError:()=>WDe,unsetNodeChildren:()=>XKe,unusedLabelIsError:()=>PDe,unwrapInnermostStatementOfLabel:()=>cme,unwrapParenthesizedExpression:()=>wle,updateErrorForNoInputFiles:()=>yke,updateLanguageServiceSourceFile:()=>Eze,updateMissingFilePathsWatch:()=>E6e,updateResolutionField:()=>_te,updateSharedExtendedConfigFileWatcher:()=>zke,updateSourceFile:()=>o8e,updateWatchingWildcardDirectories:()=>h_e,usesExtensionsOnImports:()=>KDe,usingSingleLineStringWriter:()=>W3,utf16EncodeAsString:()=>Ss,validateLocaleAndSetLanguage:()=>c5,valuesHelper:()=>kxe,version:()=>y,versionMajorMinor:()=>m,visitArray:()=>g_e,visitCommaListElements:()=>A_e,visitEachChild:()=>ns,visitFunctionBody:()=>V2,visitIterationBody:()=>by,visitLexicalEnvironment:()=>z8e,visitNode:()=>xr,visitNodes:()=>ws,visitParameterList:()=>_I,walkUpBindingElementsAndPatterns:()=>IA,walkUpLexicalEnvironments:()=>qDt,walkUpOuterExpressions:()=>ARt,walkUpParenthesizedExpressions:()=>qR,walkUpParenthesizedTypes:()=>Iee,walkUpParenthesizedTypesAndGetParentAndChild:()=>Cme,whitespaceOrMapCommentRegExp:()=>$8e,writeCommentRange:()=>$X,writeFile:()=>wee,writeFileEnsuringDirectories:()=>kme,zipWith:()=>fe}),e.exports=p(f);var m="5.5",y="5.5.4",B=(n=>(n[n.LessThan=-1]="LessThan",n[n.EqualTo=0]="EqualTo",n[n.GreaterThan=1]="GreaterThan",n))(B||{}),v=[],k=new Map,T=new Set;function O(n){return n?n.length:0}function X(n,c){if(n)for(let u=0;u=0;u--){let d=c(n[u],u);if(d)return d}}function le(n,c){if(n!==void 0)for(let u=0;u=0;d--){let I=n[d];if(c(I,d))return I}}function ke(n,c,u){if(n===void 0)return-1;for(let d=u??0;d=0;d--)if(c(n[d],d))return d;return-1}function et(n,c){for(let u=0;uu(d,c[I]))}function Xe(n,c,u){for(let d=u||0;d{let h=c(I,d);if(h!==void 0){let[b,R]=h;b!==void 0&&R!==void 0&&u.set(b,R)}}),u}function we(n,c,u){if(n.has(c))return n.get(c);let d=u();return n.set(c,d),d}function Zi(n,c){return n.has(c)?!1:(n.add(c),!0)}function*Fa(n){yield n}function xa(n,c,u){let d;if(n){d=[];let I=n.length,h,b,R=0,N=0;for(;R{let[h,b]=c(I,d);u.set(h,b)}),u}function lr(n,c){if(n)if(c){for(let u of n)if(c(u))return!0}else return n.length>0;return!1}function ua(n,c,u){let d;for(let I=0;In[b])}function gd(n,c){let u=[];for(let d of n)da(u,d,c);return u}function NA(n,c,u){return n.length===0?[]:n.length===1?n.slice():u?YA(n,c,u):gd(n,c)}function Vd(n,c){if(n.length===0)return v;let u=n[0],d=[u];for(let I=1;I0&&d(c,n[b-1]))return!1;if(b0&&w.assertGreaterThanOrEqual(u(c[h],c[h-1]),0);t:for(let b=I;Ib&&w.assertGreaterThanOrEqual(u(n[I],n[I-1]),0),u(c[h],n[I])){case-1:d.push(c[h]);continue e;case 0:continue e;case 1:continue t}}return d}function Yr(n,c){return c===void 0?n:n===void 0?[c]:(n.push(c),n)}function Vs(n,c){return n===void 0?c:c===void 0?n:Na(n)?Na(c)?vi(n,c):Yr(n,c):Na(c)?Yr(c,n):[n,c]}function Uo(n,c){return c<0?n.length+c:c}function ai(n,c,u,d){if(c===void 0||c.length===0)return n;if(n===void 0)return c.slice(u,d);u=u===void 0?0:Uo(c,u),d=d===void 0?c.length:Uo(c,d);for(let I=u;Iu(n[d],n[I])||Jl(d,I))}function mg(n,c){return n.length===0?n:n.slice().sort(c)}function*Lu(n){for(let c=n.length-1;c>=0;c--)yield n[c]}function ml(n,c){let u=Yu(n);return Zu(n,u,c),u.map(d=>n[d])}function wi(n,c,u,d){for(;un?.at(c):(n,c)=>{if(n&&(c=Uo(n,c),c>1),N=u(n[R],R);switch(d(N,c)){case-1:h=R+1;break;case 0:return R;case 1:b=R-1;break}}return~h}function Nd(n,c,u,d,I){if(n&&n.length>0){let h=n.length;if(h>0){let b=d===void 0||d<0?0:d,R=I===void 0||b+I>h-1?h-1:b+I,N;for(arguments.length<=2?(N=n[b],b++):N=u;b<=R;)N=c(N,n[b],b),b++;return N}}return u}var ei=Object.prototype.hasOwnProperty;function Qa(n,c){return ei.call(n,c)}function Dt(n,c){return ei.call(n,c)?n[c]:void 0}function Gl(n){let c=[];for(let u in n)ei.call(n,u)&&c.push(u);return c}function Xu(n){let c=[];do{let u=Object.getOwnPropertyNames(n);for(let d of u)da(c,d)}while(n=Object.getPrototypeOf(n));return c}function us(n){let c=[];for(let u in n)ei.call(n,u)&&c.push(n[u]);return c}function ag(n,c){let u=new Array(n);for(let d=0;d100&&u>c.length>>1){let R=c.length-u;c.copyWithin(0,u),c.length=R,u=0}return b}return{enqueue:I,dequeue:h,isEmpty:d}}function Kd(n,c){let u=new Map,d=0;function*I(){for(let b of u.values())Na(b)?yield*b:yield b}let h={has(b){let R=n(b);if(!u.has(R))return!1;let N=u.get(R);if(!Na(N))return c(N,b);for(let V of N)if(c(V,b))return!0;return!1},add(b){let R=n(b);if(u.has(R)){let N=u.get(R);if(Na(N))Ue(N,b,c)||(N.push(b),d++);else{let V=N;c(V,b)||(u.set(R,[V,b]),d++)}}else u.set(R,b),d++;return this},delete(b){let R=n(b);if(!u.has(R))return!1;let N=u.get(R);if(Na(N)){for(let V=0;VI(),[Symbol.toStringTag]:u[Symbol.toStringTag]};return h}function Na(n){return Array.isArray(n)}function ys(n){return Na(n)?n:[n]}function Ya(n){return typeof n=="string"}function lm(n){return typeof n=="number"}function $s(n,c){return n!==void 0&&c(n)?n:void 0}function ps(n,c){return n!==void 0&&c(n)?n:w.fail(`Invalid cast. The supplied value ${n} did not pass the test '${w.getFunctionName(c)}'.`)}function oc(n){}function NC(){return!1}function fI(){return!0}function wI(){}function vl(n){return n}function sl(n){return n.toLowerCase()}var VA=/[^\u0130\u0131\u00DFa-z0-9\\/:\-_. ]+/g;function uf(n){return VA.test(n)?n.replace(VA,sl):n}function ja(){throw new Error("Not implemented")}function su(n){let c;return()=>(n&&(c=n(),n=void 0),c)}function ii(n){let c=new Map;return u=>{let d=`${typeof u}:${u}`,I=c.get(d);return I===void 0&&!c.has(d)&&(I=n(u),c.set(d,I)),I}}function RC(n){let c=new WeakMap;return u=>{let d=c.get(u);return d===void 0&&!c.has(u)&&(d=n(u),c.set(u,d)),d}}function Uh(n,c){return(...u)=>{let d=c.get(u);return d===void 0&&!c.has(u)&&(d=n(...u),c.set(u,d)),d}}function Nm(n,c,u,d,I){if(I){let h=[];for(let b=0;bNd(h,(R,N)=>N(R),b)}else return d?h=>d(u(c(n(h)))):u?h=>u(c(n(h))):c?h=>c(n(h)):n?h=>n(h):h=>h}var yl=(n=>(n[n.None=0]="None",n[n.Normal=1]="Normal",n[n.Aggressive=2]="Aggressive",n[n.VeryAggressive=3]="VeryAggressive",n))(yl||{});function Qg(n,c){return n===c}function op(n,c){return n===c||n!==void 0&&c!==void 0&&n.toUpperCase()===c.toUpperCase()}function um(n,c){return Qg(n,c)}function lh(n,c){return n===c?0:n===void 0?-1:c===void 0?1:nc(u,d)===-1?u:d)}function fs(n,c){return n===c?0:n===void 0?-1:c===void 0?1:(n=n.toUpperCase(),c=c.toUpperCase(),nc?1:0)}function go(n,c){return n===c?0:n===void 0?-1:c===void 0?1:(n=n.toLowerCase(),c=c.toLowerCase(),nc?1:0)}function Ro(n,c){return lh(n,c)}function ql(n){return n?fs:Ro}var Nr=(()=>{return c;function n(u,d,I){if(u===d)return 0;if(u===void 0)return-1;if(d===void 0)return 1;let h=I(u,d);return h<0?-1:h>0?1:0}function c(u){let d=new Intl.Collator(u,{usage:"sort",sensitivity:"variant",numeric:!0}).compare;return(I,h)=>n(I,h,d)}})(),Nn,Di;function ra(){return Di}function Us(n){Di!==n&&(Di=n,Nn=void 0)}function Li(n,c){return(Nn||(Nn=Nr(Di)))(n,c)}function Ll(n,c,u,d){return n===c?0:n===void 0?-1:c===void 0?1:d(n[u],c[u])}function DA(n,c){return Jl(n?1:0,c?1:0)}function Rd(n,c,u){let d=Math.max(2,Math.floor(n.length*.34)),I=Math.floor(n.length*.4)+1,h;for(let b of c){let R=u(b);if(R!==void 0&&Math.abs(R.length-n.length)<=d){if(R===n||R.length<3&&R.toLowerCase()!==n.toLowerCase())continue;let N=PI(n,R,I-.1);if(N===void 0)continue;w.assert(Nu?R-u:1),P=Math.floor(c.length>u+R?u+R:c.length);I[0]=R;let Q=R;for(let re=1;reu)return;let te=d;d=I,I=te}let b=d[c.length];return b>u?void 0:b}function fl(n,c,u){let d=n.length-c.length;return d>=0&&(u?op(n.slice(d),c):n.indexOf(c,d)===d)}function Hm(n,c){return fl(n,c)?n.slice(0,n.length-c.length):n}function I1(n,c){return fl(n,c)?n.slice(0,n.length-c.length):void 0}function Iv(n){let c=n.length;for(let u=c-1;u>0;u--){let d=n.charCodeAt(u);if(d>=48&&d<=57)do--u,d=n.charCodeAt(u);while(u>0&&d>=48&&d<=57);else if(u>4&&(d===110||d===78)){if(--u,d=n.charCodeAt(u),d!==105&&d!==73||(--u,d=n.charCodeAt(u),d!==109&&d!==77))break;--u,d=n.charCodeAt(u)}else break;if(d!==45&&d!==46)break;c=u}return c===n.length?n:n.slice(0,c)}function tA(n,c){for(let u=0;uu===c)}function Sp(n,c){for(let u=0;uI&&(I=b.prefix.length,d=h)}return d}function uc(n,c,u){return u?op(n.slice(0,c.length),c):n.lastIndexOf(c,0)===0}function E_(n,c){return uc(n,c)?n.substr(c.length):n}function Tb(n,c,u=vl){return uc(u(n),u(c))?n.substring(c.length):void 0}function gm({prefix:n,suffix:c},u){return u.length>=n.length+c.length&&uc(u,n)&&fl(u,c)}function gh(n,c){return u=>n(u)&&c(u)}function fg(...n){return(...c)=>{let u;for(let d of n)if(u=d(...c),u)return u;return u}}function Am(n){return(...c)=>!n(...c)}function Nb(n){}function Dm(n){return n===void 0?void 0:[n]}function OI(n,c,u,d,I,h){h=h||oc;let b=0,R=0,N=n.length,V=c.length,P=!1;for(;b(n[n.Off=0]="Off",n[n.Error=1]="Error",n[n.Warning=2]="Warning",n[n.Info=3]="Info",n[n.Verbose=4]="Verbose",n))(ie||{}),w;(n=>{let c=0;n.currentLogLevel=2,n.isDebugging=!1;function u(ir){return n.currentLogLevel<=ir}n.shouldLog=u;function d(ir,ni){n.loggingHost&&u(ir)&&n.loggingHost.log(ir,ni)}function I(ir){d(3,ir)}n.log=I,(ir=>{function ni(nc){d(1,nc)}ir.error=ni;function gs(nc){d(2,nc)}ir.warn=gs;function Hs(nc){d(3,nc)}ir.log=Hs;function za(nc){d(4,nc)}ir.trace=za})(I=n.log||(n.log={}));let h={};function b(){return c}n.getAssertionLevel=b;function R(ir){let ni=c;if(c=ir,ir>ni)for(let gs of Gl(h)){let Hs=h[gs];Hs!==void 0&&n[gs]!==Hs.assertion&&ir>=Hs.level&&(n[gs]=Hs,h[gs]=void 0)}}n.setAssertionLevel=R;function N(ir){return c>=ir}n.shouldAssert=N;function V(ir,ni){return N(ir)?!0:(h[ni]={level:ir,assertion:n[ni]},n[ni]=oc,!1)}function P(ir,ni){debugger;let gs=new Error(ir?`Debug Failure. ${ir}`:"Debug Failure.");throw Error.captureStackTrace&&Error.captureStackTrace(gs,ni||P),gs}n.fail=P;function Q(ir,ni,gs){return P(`${ni||"Unexpected node."}\r +Node ${ht(ir.kind)} was unexpected.`,gs||Q)}n.failBadSyntaxKind=Q;function te(ir,ni,gs,Hs){ir||(ni=ni?`False expression: ${ni}`:"False expression.",gs&&(ni+=`\r +Verbose Debug Information: `+(typeof gs=="string"?gs:gs())),P(ni,Hs||te))}n.assert=te;function re(ir,ni,gs,Hs,za){if(ir!==ni){let nc=gs?Hs?`${gs} ${Hs}`:gs:"";P(`Expected ${ir} === ${ni}. ${nc}`,za||re)}}n.assertEqual=re;function ue(ir,ni,gs,Hs){ir>=ni&&P(`Expected ${ir} < ${ni}. ${gs||""}`,Hs||ue)}n.assertLessThan=ue;function Ae(ir,ni,gs){ir>ni&&P(`Expected ${ir} <= ${ni}`,gs||Ae)}n.assertLessThanOrEqual=Ae;function de(ir,ni,gs){ir= ${ni}`,gs||de)}n.assertGreaterThanOrEqual=de;function Be(ir,ni,gs){ir==null&&P(ni,gs||Be)}n.assertIsDefined=Be;function Fe(ir,ni,gs){return Be(ir,ni,gs||Fe),ir}n.checkDefined=Fe;function Ne(ir,ni,gs){for(let Hs of ir)Be(Hs,ni,gs||Ne)}n.assertEachIsDefined=Ne;function Me(ir,ni,gs){return Ne(ir,ni,gs||Me),ir}n.checkEachDefined=Me;function De(ir,ni="Illegal value:",gs){let Hs=typeof ir=="object"&&Qa(ir,"kind")&&Qa(ir,"pos")?"SyntaxKind: "+ht(ir.kind):JSON.stringify(ir);return P(`${ni} ${Hs}`,gs||De)}n.assertNever=De;function lt(ir,ni,gs,Hs){V(1,"assertEachNode")&&te(ni===void 0||he(ir,ni),gs||"Unexpected node.",()=>`Node array did not pass test '${It(ni)}'.`,Hs||lt)}n.assertEachNode=lt;function Le(ir,ni,gs,Hs){V(1,"assertNode")&&te(ir!==void 0&&(ni===void 0||ni(ir)),gs||"Unexpected node.",()=>`Node ${ht(ir?.kind)} did not pass test '${It(ni)}'.`,Hs||Le)}n.assertNode=Le;function je(ir,ni,gs,Hs){V(1,"assertNotNode")&&te(ir===void 0||ni===void 0||!ni(ir),gs||"Unexpected node.",()=>`Node ${ht(ir.kind)} should not have passed test '${It(ni)}'.`,Hs||je)}n.assertNotNode=je;function st(ir,ni,gs,Hs){V(1,"assertOptionalNode")&&te(ni===void 0||ir===void 0||ni(ir),gs||"Unexpected node.",()=>`Node ${ht(ir?.kind)} did not pass test '${It(ni)}'.`,Hs||st)}n.assertOptionalNode=st;function nt(ir,ni,gs,Hs){V(1,"assertOptionalToken")&&te(ni===void 0||ir===void 0||ir.kind===ni,gs||"Unexpected node.",()=>`Node ${ht(ir?.kind)} was not a '${ht(ni)}' token.`,Hs||nt)}n.assertOptionalToken=nt;function qe(ir,ni,gs){V(1,"assertMissingNode")&&te(ir===void 0,ni||"Unexpected node.",()=>`Node ${ht(ir.kind)} was unexpected'.`,gs||qe)}n.assertMissingNode=qe;function it(ir){}n.type=it;function It(ir){if(typeof ir!="function")return"";if(Qa(ir,"name"))return ir.name;{let ni=Function.prototype.toString.call(ir),gs=/^function\s+([\w$]+)\s*\(/.exec(ni);return gs?gs[1]:""}}n.getFunctionName=It;function dt(ir){return`{ name: ${wc(ir.escapedName)}; flags: ${jt(ir.flags)}; declarations: ${Ot(ir.declarations,ni=>ht(ni.kind))} }`}n.formatSymbol=dt;function Tt(ir=0,ni,gs){let Hs=He(ni);if(ir===0)return Hs.length>0&&Hs[0][0]===0?Hs[0][1]:"0";if(gs){let za=[],nc=ir;for(let[Rc,lg]of Hs){if(Rc>ir)break;Rc!==0&&Rc&ir&&(za.push(lg),nc&=~Rc)}if(nc===0)return za.join("|")}else for(let[za,nc]of Hs)if(za===ir)return nc;return ir.toString()}n.formatEnum=Tt;let St=new Map;function He(ir){let ni=St.get(ir);if(ni)return ni;let gs=[];for(let za in ir){let nc=ir[za];typeof nc=="number"&&gs.push([nc,za])}let Hs=ml(gs,(za,nc)=>Jl(za[0],nc[0]));return St.set(ir,Hs),Hs}function ht(ir){return Tt(ir,A2,!1)}n.formatSyntaxKind=ht;function Et(ir){return Tt(ir,Bh,!1)}n.formatSnippetKind=Et;function Kt(ir){return Tt(ir,eN,!1)}n.formatScriptKind=Kt;function Nt(ir){return Tt(ir,vE,!0)}n.formatNodeFlags=Nt;function Lt(ir){return Tt(ir,WA,!0)}n.formatNodeCheckFlags=Lt;function kt(ir){return Tt(ir,G0,!0)}n.formatModifierFlags=kt;function Zt(ir){return Tt(ir,Gb,!0)}n.formatTransformFlags=Zt;function Dr(ir){return Tt(ir,b1,!0)}n.formatEmitFlags=Dr;function jt(ir){return Tt(ir,d2,!0)}n.formatSymbolFlags=jt;function mr(ir){return Tt(ir,dm,!0)}n.formatTypeFlags=mr;function Pt(ir){return Tt(ir,Jy,!0)}n.formatSignatureFlags=Pt;function Vr(ir){return Tt(ir,Wf,!0)}n.formatObjectFlags=Vr;function Hr(ir){return Tt(ir,Wr,!0)}n.formatFlowFlags=Hr;function pr(ir){return Tt(ir,C1,!0)}n.formatRelationComparisonResult=pr;function zr(ir){return Tt(ir,X8e,!0)}n.formatCheckMode=zr;function $n(ir){return Tt(ir,J8e,!0)}n.formatSignatureCheckMode=$n;function bi(ir){return Tt(ir,Y8e,!0)}n.formatTypeFacts=bi;let Pi=!1,Ns;function gi(ir){"__debugFlowFlags"in ir||Object.defineProperties(ir,{__tsDebuggerDisplay:{value(){let ni=this.flags&2?"FlowStart":this.flags&4?"FlowBranchLabel":this.flags&8?"FlowLoopLabel":this.flags&16?"FlowAssignment":this.flags&32?"FlowTrueCondition":this.flags&64?"FlowFalseCondition":this.flags&128?"FlowSwitchClause":this.flags&256?"FlowArrayMutation":this.flags&512?"FlowCall":this.flags&1024?"FlowReduceLabel":this.flags&1?"FlowUnreachable":"UnknownFlow",gs=this.flags&-2048;return`${ni}${gs?` (${Hr(gs)})`:""}`}},__debugFlowFlags:{get(){return Tt(this.flags,Wr,!0)}},__debugToString:{value(){return Pu(this)}}})}function jn(ir){return Pi&&(typeof Object.setPrototypeOf=="function"?(Ns||(Ns=Object.create(Object.prototype),gi(Ns)),Object.setPrototypeOf(ir,Ns)):gi(ir)),ir}n.attachFlowNodeDebugInfo=jn;let xs;function Bc(ir){"__tsDebuggerDisplay"in ir||Object.defineProperties(ir,{__tsDebuggerDisplay:{value(ni){return ni=String(ni).replace(/(?:,[\s\w\d_]+:[^,]+)+\]$/,"]"),`NodeArray ${ni}`}}})}function xi(ir){Pi&&(typeof Object.setPrototypeOf=="function"?(xs||(xs=Object.create(Array.prototype),Bc(xs)),Object.setPrototypeOf(ir,xs)):Bc(ir))}n.attachNodeArrayDebugInfo=xi;function rc(){if(Pi)return;let ir=new WeakMap,ni=new WeakMap;Object.defineProperties(kC.getSymbolConstructor().prototype,{__tsDebuggerDisplay:{value(){let Hs=this.flags&33554432?"TransientSymbol":"Symbol",za=this.flags&-33554433;return`${Hs} '${pf(this)}'${za?` (${jt(za)})`:""}`}},__debugFlags:{get(){return jt(this.flags)}}}),Object.defineProperties(kC.getTypeConstructor().prototype,{__tsDebuggerDisplay:{value(){let Hs=this.flags&67359327?`IntrinsicType ${this.intrinsicName}${this.debugIntrinsicName?` (${this.debugIntrinsicName})`:""}`:this.flags&98304?"NullableType":this.flags&384?`LiteralType ${JSON.stringify(this.value)}`:this.flags&2048?`LiteralType ${this.value.negative?"-":""}${this.value.base10Value}n`:this.flags&8192?"UniqueESSymbolType":this.flags&32?"EnumType":this.flags&1048576?"UnionType":this.flags&2097152?"IntersectionType":this.flags&4194304?"IndexType":this.flags&8388608?"IndexedAccessType":this.flags&16777216?"ConditionalType":this.flags&33554432?"SubstitutionType":this.flags&262144?"TypeParameter":this.flags&524288?this.objectFlags&3?"InterfaceType":this.objectFlags&4?"TypeReference":this.objectFlags&8?"TupleType":this.objectFlags&16?"AnonymousType":this.objectFlags&32?"MappedType":this.objectFlags&1024?"ReverseMappedType":this.objectFlags&256?"EvolvingArrayType":"ObjectType":"Type",za=this.flags&524288?this.objectFlags&-1344:0;return`${Hs}${this.symbol?` '${pf(this.symbol)}'`:""}${za?` (${Vr(za)})`:""}`}},__debugFlags:{get(){return mr(this.flags)}},__debugObjectFlags:{get(){return this.flags&524288?Vr(this.objectFlags):""}},__debugTypeToString:{value(){let Hs=ir.get(this);return Hs===void 0&&(Hs=this.checker.typeToString(this),ir.set(this,Hs)),Hs}}}),Object.defineProperties(kC.getSignatureConstructor().prototype,{__debugFlags:{get(){return Pt(this.flags)}},__debugSignatureToString:{value(){var Hs;return(Hs=this.checker)==null?void 0:Hs.signatureToString(this)}}});let gs=[kC.getNodeConstructor(),kC.getIdentifierConstructor(),kC.getTokenConstructor(),kC.getSourceFileConstructor()];for(let Hs of gs)Qa(Hs.prototype,"__debugKind")||Object.defineProperties(Hs.prototype,{__tsDebuggerDisplay:{value(){return`${Cp(this)?"GeneratedIdentifier":sr(this)?`Identifier '${oo(this)}'`:Gc(this)?`PrivateIdentifier '${oo(this)}'`:Eu(this)?`StringLiteral ${JSON.stringify(this.text.length<10?this.text:this.text.slice(10)+"...")}`:pu(this)?`NumericLiteral ${this.text}`:q3(this)?`BigIntLiteral ${this.text}n`:$p(this)?"TypeParameterDeclaration":Uc(this)?"ParameterDeclaration":Df(this)?"ConstructorDeclaration":Qb(this)?"GetAccessorDeclaration":ob(this)?"SetAccessorDeclaration":mV(this)?"CallSignatureDeclaration":A(this)?"ConstructSignatureDeclaration":_(this)?"IndexSignatureDeclaration":S(this)?"TypePredicateNode":F(this)?"TypeReferenceNode":H(this)?"FunctionTypeNode":Y(this)?"ConstructorTypeNode":oe(this)?"TypeQueryNode":Se(this)?"TypeLiteralNode":Ye(this)?"ArrayTypeNode":Ct(this)?"TupleTypeNode":Ut(this)?"OptionalTypeNode":cn(this)?"RestTypeNode":Is(this)?"UnionTypeNode":ji(this)?"IntersectionTypeNode":Ei(this)?"ConditionalTypeNode":yo(this)?"InferTypeNode":to(this)?"ParenthesizedTypeNode":aa(this)?"ThisTypeNode":as(this)?"TypeOperatorNode":hs(this)?"IndexedAccessTypeNode":wl(this)?"MappedTypeNode":sd(this)?"LiteralTypeNode":At(this)?"NamedTupleMember":Nu(this)?"ImportTypeNode":ht(this.kind)}${this.flags?` (${Nt(this.flags)})`:""}`}},__debugKind:{get(){return ht(this.kind)}},__debugNodeFlags:{get(){return Nt(this.flags)}},__debugModifierFlags:{get(){return kt(hDe(this))}},__debugTransformFlags:{get(){return Zt(this.transformFlags)}},__debugIsParseTreeNode:{get(){return pZ(this)}},__debugEmitFlags:{get(){return Dr(wg(this))}},__debugGetText:{value(za){if($d(this))return"";let nc=ni.get(this);if(nc===void 0){let Rc=zc(this),lg=Rc&&ls(Rc);nc=lg?hG(lg,Rc,za):"",ni.set(this,nc)}return nc}}});Pi=!0}n.enableDebugInfo=rc;function Wl(ir){let ni=ir&7,gs=ni===0?"in out":ni===3?"[bivariant]":ni===2?"in":ni===1?"out":ni===4?"[independent]":"";return ir&8?gs+=" (unmeasurable)":ir&16&&(gs+=" (unreliable)"),gs}n.formatVariance=Wl;class gl{__debugToString(){var ni;switch(this.kind){case 3:return((ni=this.debugInfo)==null?void 0:ni.call(this))||"(function mapper)";case 0:return`${this.source.__debugTypeToString()} -> ${this.target.__debugTypeToString()}`;case 1:return fe(this.sources,this.targets||Ot(this.sources,()=>"any"),(gs,Hs)=>`${gs.__debugTypeToString()} -> ${typeof Hs=="string"?Hs:Hs.__debugTypeToString()}`).join(", ");case 2:return fe(this.sources,this.targets,(gs,Hs)=>`${gs.__debugTypeToString()} -> ${Hs().__debugTypeToString()}`).join(", ");case 5:case 4:return`m1: ${this.mapper1.__debugToString().split(` `).join(` `)} m2: ${this.mapper2.__debugToString().split(` `).join(` - `)}`;default:return De(this)}}}n.DebugTypeMapper=ul;function Cc(ir){return n.isDebugging?Object.setPrototypeOf(ir,ul.prototype):ir}n.attachDebugPrototypeIfDebug=Cc;function _s(ir){return console.log(Wu(ir))}n.printControlFlowGraph=_s;function Wu(ir){let ni=-1;function gs(Re){return Re.id||(Re.id=ni,ni--),Re.id}let Hs;(Re=>{Re.lr="\u2500",Re.ud="\u2502",Re.dr="\u256D",Re.dl="\u256E",Re.ul="\u256F",Re.ur="\u2570",Re.udr="\u251C",Re.udl="\u2524",Re.dlr="\u252C",Re.ulr="\u2534",Re.udlr="\u256B"})(Hs||(Hs={}));let qa;(Re=>{Re[Re.None=0]="None",Re[Re.Up=1]="Up",Re[Re.Down=2]="Down",Re[Re.Left=4]="Left",Re[Re.Right=8]="Right",Re[Re.UpDown=3]="UpDown",Re[Re.LeftRight=12]="LeftRight",Re[Re.UpLeft=5]="UpLeft",Re[Re.UpRight=9]="UpRight",Re[Re.DownLeft=6]="DownLeft",Re[Re.DownRight=10]="DownRight",Re[Re.UpDownLeft=7]="UpDownLeft",Re[Re.UpDownRight=11]="UpDownRight",Re[Re.UpLeftRight=13]="UpLeftRight",Re[Re.DownLeftRight=14]="DownLeftRight",Re[Re.UpDownLeftRight=15]="UpDownLeftRight",Re[Re.NoChildren=16]="NoChildren"})(qa||(qa={}));let nc=2032,Nc=882,cg=Object.create(null),Ku=[],Bi=[],BA=Pr(ir,new Set);for(let Re of Ku)Re.text=Pe(Re.flowNode,Re.circular),cr(Re);let kr=kn(BA),en=Pn(kr);return an(BA,0),ar();function ct(Re){return!!(Re.flags&128)}function rn(Re){return!!(Re.flags&12)&&!!Re.antecedent}function St(Re){return!!(Re.flags&nc)}function br(Re){return!!(Re.flags&Nc)}function Qt(Re){let Jt=[];for(let bt of Re.edges)bt.source===Re&&Jt.push(bt.target);return Jt}function _r(Re){let Jt=[];for(let bt of Re.edges)bt.target===Re&&Jt.push(bt.source);return Jt}function Pr(Re,Jt){let bt=gs(Re),Vt=cg[bt];if(Vt&&Jt.has(Re))return Vt.circular=!0,Vt={id:-1,flowNode:Re,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:"circularity"},Ku.push(Vt),Vt;if(Jt.add(Re),!Vt)if(cg[bt]=Vt={id:bt,flowNode:Re,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:!1},Ku.push(Vt),rn(Re))for(let dn of Re.antecedent)ti(Vt,dn,Jt);else St(Re)&&ti(Vt,Re.antecedent,Jt);return Jt.delete(Re),Vt}function ti(Re,Jt,bt){let Vt=Pr(Jt,bt),dn={source:Re,target:Vt};Bi.push(dn),Re.edges.push(dn),Vt.edges.push(dn)}function cr(Re){if(Re.level!==-1)return Re.level;let Jt=0;for(let bt of _r(Re))Jt=Math.max(Jt,cr(bt)+1);return Re.level=Jt}function kn(Re){let Jt=0;for(let bt of Qt(Re))Jt=Math.max(Jt,kn(bt));return Jt+1}function Pn(Re){let Jt=Me(Array(Re),0);for(let bt of Ku)Jt[bt.level]=Math.max(Jt[bt.level],bt.text.length);return Jt}function an(Re,Jt){if(Re.lane===-1){Re.lane=Jt,Re.endLane=Jt;let bt=Qt(Re);for(let Vt=0;Vt0&&Jt++;let dn=bt[Vt];an(dn,Jt),dn.endLane>Re.endLane&&(Jt=dn.endLane)}Re.endLane=Jt}}function Kr(Re){if(Re&2)return"Start";if(Re&4)return"Branch";if(Re&8)return"Loop";if(Re&16)return"Assignment";if(Re&32)return"True";if(Re&64)return"False";if(Re&128)return"SwitchClause";if(Re&256)return"ArrayMutation";if(Re&512)return"Call";if(Re&1024)return"ReduceLabel";if(Re&1)return"Unreachable";throw new Error}function wn(Re){let Jt=ls(Re);return pG(Jt,Re,!1)}function Pe(Re,Jt){let bt=Kr(Re.flags);if(Jt&&(bt=`${bt}#${gs(Re)}`),ct(Re)){let Vt=[],{switchStatement:dn,clauseStart:On,clauseEnd:Mn}=Re.node;for(let Ii=On;IiMath.max(Mn,Ii.lane),0)+1,bt=Me(Array(Jt),""),Vt=en.map(()=>Array(Jt)),dn=en.map(()=>Me(Array(Jt),0));for(let Mn of Ku){Vt[Mn.level][Mn.lane]=Mn;let Ii=Qt(Mn);for(let Es=0;Es0&&(Vi|=1),Es0&&(Vi|=1),Es0?dn[Mn-1][Ii]:0,Es=Ii>0?dn[Mn][Ii-1]:0,oo=dn[Mn][Ii];oo||(ds&8&&(oo|=12),Es&2&&(oo|=3),dn[Mn][Ii]=oo)}for(let Mn=0;Mn{Re.lr="\u2500",Re.ud="\u2502",Re.dr="\u256D",Re.dl="\u256E",Re.ul="\u256F",Re.ur="\u2570",Re.udr="\u251C",Re.udl="\u2524",Re.dlr="\u252C",Re.ulr="\u2534",Re.udlr="\u256B"})(Hs||(Hs={}));let za;(Re=>{Re[Re.None=0]="None",Re[Re.Up=1]="Up",Re[Re.Down=2]="Down",Re[Re.Left=4]="Left",Re[Re.Right=8]="Right",Re[Re.UpDown=3]="UpDown",Re[Re.LeftRight=12]="LeftRight",Re[Re.UpLeft=5]="UpLeft",Re[Re.UpRight=9]="UpRight",Re[Re.DownLeft=6]="DownLeft",Re[Re.DownRight=10]="DownRight",Re[Re.UpDownLeft=7]="UpDownLeft",Re[Re.UpDownRight=11]="UpDownRight",Re[Re.UpLeftRight=13]="UpLeftRight",Re[Re.DownLeftRight=14]="DownLeftRight",Re[Re.UpDownLeftRight=15]="UpDownLeftRight",Re[Re.NoChildren=16]="NoChildren"})(za||(za={}));let nc=2032,Rc=882,lg=Object.create(null),ju=[],Bi=[],vA=Pr(ir,new Set);for(let Re of ju)Re.text=Pe(Re.flowNode,Re.circular),cr(Re);let kr=kn(vA),en=Pn(kr);return an(vA,0),ar();function ct(Re){return!!(Re.flags&128)}function rn(Re){return!!(Re.flags&12)&&!!Re.antecedent}function wt(Re){return!!(Re.flags&nc)}function br(Re){return!!(Re.flags&Rc)}function Mt(Re){let Jt=[];for(let bt of Re.edges)bt.source===Re&&Jt.push(bt.target);return Jt}function _r(Re){let Jt=[];for(let bt of Re.edges)bt.target===Re&&Jt.push(bt.source);return Jt}function Pr(Re,Jt){let bt=gs(Re),Vt=lg[bt];if(Vt&&Jt.has(Re))return Vt.circular=!0,Vt={id:-1,flowNode:Re,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:"circularity"},ju.push(Vt),Vt;if(Jt.add(Re),!Vt)if(lg[bt]=Vt={id:bt,flowNode:Re,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:!1},ju.push(Vt),rn(Re))for(let dn of Re.antecedent)ti(Vt,dn,Jt);else wt(Re)&&ti(Vt,Re.antecedent,Jt);return Jt.delete(Re),Vt}function ti(Re,Jt,bt){let Vt=Pr(Jt,bt),dn={source:Re,target:Vt};Bi.push(dn),Re.edges.push(dn),Vt.edges.push(dn)}function cr(Re){if(Re.level!==-1)return Re.level;let Jt=0;for(let bt of _r(Re))Jt=Math.max(Jt,cr(bt)+1);return Re.level=Jt}function kn(Re){let Jt=0;for(let bt of Mt(Re))Jt=Math.max(Jt,kn(bt));return Jt+1}function Pn(Re){let Jt=Qe(Array(Re),0);for(let bt of ju)Jt[bt.level]=Math.max(Jt[bt.level],bt.text.length);return Jt}function an(Re,Jt){if(Re.lane===-1){Re.lane=Jt,Re.endLane=Jt;let bt=Mt(Re);for(let Vt=0;Vt0&&Jt++;let dn=bt[Vt];an(dn,Jt),dn.endLane>Re.endLane&&(Jt=dn.endLane)}Re.endLane=Jt}}function Kr(Re){if(Re&2)return"Start";if(Re&4)return"Branch";if(Re&8)return"Loop";if(Re&16)return"Assignment";if(Re&32)return"True";if(Re&64)return"False";if(Re&128)return"SwitchClause";if(Re&256)return"ArrayMutation";if(Re&512)return"Call";if(Re&1024)return"ReduceLabel";if(Re&1)return"Unreachable";throw new Error}function wn(Re){let Jt=ls(Re);return hG(Jt,Re,!1)}function Pe(Re,Jt){let bt=Kr(Re.flags);if(Jt&&(bt=`${bt}#${gs(Re)}`),ct(Re)){let Vt=[],{switchStatement:dn,clauseStart:On,clauseEnd:Qn}=Re.node;for(let Ii=On;IiMath.max(Qn,Ii.lane),0)+1,bt=Qe(Array(Jt),""),Vt=en.map(()=>Array(Jt)),dn=en.map(()=>Qe(Array(Jt),0));for(let Qn of ju){Vt[Qn.level][Qn.lane]=Qn;let Ii=Mt(Qn);for(let Es=0;Es0&&(Vi|=1),Es0&&(Vi|=1),Es0?dn[Qn-1][Ii]:0,Es=Ii>0?dn[Qn][Ii-1]:0,so=dn[Qn][Ii];so||(ds&8&&(so|=12),Es&2&&(so|=3),dn[Qn][Ii]=so)}for(let Qn=0;Qn0?Re.repeat(Jt):"";let bt="";for(;bt.length=0,"Invalid argument: major"),w.assert(u>=0,"Invalid argument: minor"),w.assert(d>=0,"Invalid argument: patch");let b=I?Ra(I)?I:I.split("."):v,R=h?Ra(h)?h:h.split("."):v;w.assert(he(b,N=>ut.test(N)),"Invalid argument: prerelease"),w.assert(he(R,N=>Zr.test(N)),"Invalid argument: build"),this.major=c,this.minor=u,this.patch=d,this.prerelease=b,this.build=R}static tryParse(c){let u=Po(c);if(!u)return;let{major:d,minor:I,patch:h,prerelease:b,build:R}=u;return new eBe(d,I,h,b,R)}compareTo(c){return this===c?0:c===void 0?1:Xl(this.major,c.major)||Xl(this.minor,c.minor)||Xl(this.patch,c.patch)||fc(this.prerelease,c.prerelease)}increment(c){switch(c){case"major":return new eBe(this.major+1,0,0);case"minor":return new eBe(this.major,this.minor+1,0);case"patch":return new eBe(this.major,this.minor,this.patch+1);default:return w.assertNever(c)}}with(c){let{major:u=this.major,minor:d=this.minor,patch:I=this.patch,prerelease:h=this.prerelease,build:b=this.build}=c;return new eBe(u,d,I,h,b)}toString(){let c=`${this.major}.${this.minor}.${this.patch}`;return lr(this.prerelease)&&(c+=`-${this.prerelease.join(".")}`),lr(this.build)&&(c+=`+${this.build.join(".")}`),c}};Yn.zero=new Yn(0,0,0,["0"]);var Dn=Yn;function Po(n){let c=J.exec(n);if(!c)return;let[,u,d="0",I="0",h="",b=""]=c;if(!(h&&!ye.test(h))&&!(b&&!zt.test(b)))return{major:parseInt(u,10),minor:parseInt(d,10),patch:parseInt(I,10),prerelease:h,build:b}}function fc(n,c){if(n===c)return 0;if(n.length===0)return c.length===0?0:1;if(c.length===0)return-1;let u=Math.min(n.length,c.length);for(let d=0;d|>=|=)?\s*([a-z0-9-+.*]+)$/i;function Kd(n){let c=[];for(let u of n.trim().split(Yo)){if(!u)continue;let d=[];u=u.trim();let I=lA.exec(u);if(I){if(!ya(I[1],I[2],d))return}else for(let h of u.split(yu)){let b=tI.exec(h.trim());if(!b||!md(b[1],b[2],d))return}c.push(d)}return c}function D0(n){let c=op.exec(n);if(!c)return;let[,u,d="*",I="*",h,b]=c;return{version:new Dn(fI(u)?0:parseInt(u,10),fI(u)||fI(d)?0:parseInt(d,10),fI(u)||fI(d)||fI(I)?0:parseInt(I,10),h,b),major:u,minor:d,patch:I}}function ya(n,c,u){let d=D0(n);if(!d)return!1;let I=D0(c);return I?(fI(d.major)||u.push(Bf(">=",d.version)),fI(I.major)||u.push(fI(I.minor)?Bf("<",I.version.increment("major")):fI(I.patch)?Bf("<",I.version.increment("minor")):Bf("<=",I.version)),!0):!1}function md(n,c,u){let d=D0(c);if(!d)return!1;let{version:I,major:h,minor:b,patch:R}=d;if(fI(h))(n==="<"||n===">")&&u.push(Bf("<",Dn.zero));else switch(n){case"~":u.push(Bf(">=",I)),u.push(Bf("<",I.increment(fI(b)?"major":"minor")));break;case"^":u.push(Bf(">=",I)),u.push(Bf("<",I.increment(I.major>0||fI(b)?"major":I.minor>0||fI(R)?"minor":"patch")));break;case"<":case">=":u.push(fI(b)||fI(R)?Bf(n,I.with({prerelease:"0"})):Bf(n,I));break;case"<=":case">":u.push(fI(b)?Bf(n==="<="?"<":">=",I.increment("major").with({prerelease:"0"})):fI(R)?Bf(n==="<="?"<":">=",I.increment("minor").with({prerelease:"0"})):Bf(n,I));break;case"=":case void 0:fI(b)||fI(R)?(u.push(Bf(">=",I.with({prerelease:"0"}))),u.push(Bf("<",I.increment(fI(b)?"major":"minor").with({prerelease:"0"})))):u.push(Bf("=",I));break;default:return!1}return!0}function fI(n){return n==="*"||n==="x"||n==="X"}function Bf(n,c){return{operator:n,operand:c}}function Uh(n,c){if(c.length===0)return!0;for(let u of c)if(Ym(n,u))return!0;return!1}function Ym(n,c){for(let u of c)if(!IS(n,u.operator,u.operand))return!1;return!0}function IS(n,c,u){let d=n.compareTo(u);switch(c){case"<":return d<0;case"<=":return d<=0;case">":return d>0;case">=":return d>=0;case"=":return d===0;default:return w.assertNever(c)}}function CS(n){return Ot(n,_E).join(" || ")||"*"}function _E(n){return Ot(n,x0).join(" ")}function x0(n){return`${n.operator}${n.operand}`}function yE(){if(uy())try{let{performance:n}=Dt("perf_hooks");if(n)return{shouldWriteNativeEvents:!1,performance:n}}catch{}if(typeof performance=="object")return{shouldWriteNativeEvents:!0,performance}}function CB(){let n=yE();if(!n)return;let{shouldWriteNativeEvents:c,performance:u}=n,d={shouldWriteNativeEvents:c,performance:void 0,performanceTime:void 0};return typeof u.timeOrigin=="number"&&typeof u.now=="function"&&(d.performanceTime=u),d.performanceTime&&typeof u.mark=="function"&&typeof u.measure=="function"&&typeof u.clearMarks=="function"&&typeof u.clearMeasures=="function"&&(d.performance=u),d}var J_=CB(),yh=J_?.performanceTime;function U_(){return J_}var ql=yh?()=>yh.now():Date.now,RC;try{let n=process.env.TS_ETW_MODULE_PATH??"./node_modules/@microsoft/typescript-etw";RC=Dt(n)}catch{RC=void 0}var Kl=RC?.logEvent?RC:void 0,ap={};o(ap,{clearMarks:()=>u2,clearMeasures:()=>bh,createTimer:()=>rA,createTimerIf:()=>Tb,disable:()=>E_,enable:()=>gy,forEachMark:()=>jd,forEachMeasure:()=>Lf,getCount:()=>Ml,getDuration:()=>DA,isEnabled:()=>Dm,mark:()=>rs,measure:()=>vc,nullTimer:()=>Iv});var ug,Hm;function Tb(n,c,u,d){return n?rA(c,u,d):Iv}function rA(n,c,u){let d=0;return{enter:I,exit:h};function I(){++d===1&&rs(c)}function h(){--d===0?(rs(u),vc(n,c,u)):d<0&&w.fail("enter/exit count does not match.")}}var Iv={enter:oc,exit:oc},My=!1,QC=ql(),wI=new Map,Fi=new Map,Lo=new Map;function rs(n){if(My){let c=Fi.get(n)??0;Fi.set(n,c+1),wI.set(n,ql()),Hm?.mark(n),typeof onProfilerEvent=="function"&&onProfilerEvent(n)}}function vc(n,c,u){if(My){let d=(u!==void 0?wI.get(u):void 0)??ql(),I=(c!==void 0?wI.get(c):void 0)??QC,h=Lo.get(n)||0;Lo.set(n,h+(d-I)),Hm?.measure(n,c,u)}}function Ml(n){return Fi.get(n)||0}function DA(n){return Lo.get(n)||0}function Lf(n){Lo.forEach((c,u)=>n(u,c))}function jd(n){wI.forEach((c,u)=>n(u))}function bh(n){n!==void 0?Lo.delete(n):Lo.clear(),Hm?.clearMeasures(n)}function u2(n){n!==void 0?(Fi.delete(n),wI.delete(n)):(Fi.clear(),wI.clear()),Hm?.clearMarks(n)}function Dm(){return My}function gy(n=_d){var c;return My||(My=!0,ug||(ug=U_()),ug?.performance&&(QC=ug.performance.timeOrigin,(ug.shouldWriteNativeEvents||(c=n?.cpuProfilingEnabled)!=null&&c.call(n)||n?.debugMode)&&(Hm=ug.performance))),!0}function E_(){My&&(wI.clear(),Fi.clear(),Lo.clear(),Hm=void 0,My=!1)}var Mi,Ay;(n=>{let c,u=0,d=0,I,h=[],b,R=[];function N(Le,je,st){if(w.assert(!Mi,"Tracing already started"),c===void 0)try{c=Dt("fs")}catch(dt){throw new Error(`tracing requires having fs -(original error: ${dt.message||dt})`)}I=Le,h.length=0,b===void 0&&(b=xo(je,"legend.json")),c.existsSync(je)||c.mkdirSync(je,{recursive:!0});let nt=I==="build"?`.${process.pid}-${++u}`:I==="server"?`.${process.pid}`:"",qe=xo(je,`trace${nt}.json`),it=xo(je,`types${nt}.json`);R.push({configFilePath:st,tracePath:qe,typesPath:it}),d=c.openSync(qe,"w"),Mi=n;let It={cat:"__metadata",ph:"M",ts:1e3*ql(),pid:1,tid:1};c.writeSync(d,`[ +`;function On(Qn,Ii){bt[Qn]+=Ii}}function sn(Re){switch(Re){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 Qe(Re,Jt){if(Re.fill)Re.fill(Jt);else for(let bt=0;bt0?Re.repeat(Jt):"";let bt="";for(;bt.length=0,"Invalid argument: major"),w.assert(u>=0,"Invalid argument: minor"),w.assert(d>=0,"Invalid argument: patch");let b=I?Na(I)?I:I.split("."):v,R=h?Na(h)?h:h.split("."):v;w.assert(he(b,N=>ut.test(N)),"Invalid argument: prerelease"),w.assert(he(R,N=>Zr.test(N)),"Invalid argument: build"),this.major=c,this.minor=u,this.patch=d,this.prerelease=b,this.build=R}static tryParse(c){let u=Wo(c);if(!u)return;let{major:d,minor:I,patch:h,prerelease:b,build:R}=u;return new rBe(d,I,h,b,R)}compareTo(c){return this===c?0:c===void 0?1:Jl(this.major,c.major)||Jl(this.minor,c.minor)||Jl(this.patch,c.patch)||Ic(this.prerelease,c.prerelease)}increment(c){switch(c){case"major":return new rBe(this.major+1,0,0);case"minor":return new rBe(this.major,this.minor+1,0);case"patch":return new rBe(this.major,this.minor,this.patch+1);default:return w.assertNever(c)}}with(c){let{major:u=this.major,minor:d=this.minor,patch:I=this.patch,prerelease:h=this.prerelease,build:b=this.build}=c;return new rBe(u,d,I,h,b)}toString(){let c=`${this.major}.${this.minor}.${this.patch}`;return lr(this.prerelease)&&(c+=`-${this.prerelease.join(".")}`),lr(this.build)&&(c+=`+${this.build.join(".")}`),c}};Hn.zero=new Hn(0,0,0,["0"]);var Dn=Hn;function Wo(n){let c=J.exec(n);if(!c)return;let[,u,d="0",I="0",h="",b=""]=c;if(!(h&&!ye.test(h))&&!(b&&!zt.test(b)))return{major:parseInt(u,10),minor:parseInt(d,10),patch:parseInt(I,10),prerelease:h,build:b}}function Ic(n,c){if(n===c)return 0;if(n.length===0)return c.length===0?0:1;if(c.length===0)return-1;let u=Math.min(n.length,c.length);for(let d=0;d|>=|=)?\s*([a-z0-9-+.*]+)$/i;function jd(n){let c=[];for(let u of n.trim().split(Mo)){if(!u)continue;let d=[];u=u.trim();let I=uA.exec(u);if(I){if(!ha(I[1],I[2],d))return}else for(let h of u.split(bu)){let b=rI.exec(h.trim());if(!b||!hd(b[1],b[2],d))return}c.push(d)}return c}function x0(n){let c=ap.exec(n);if(!c)return;let[,u,d="*",I="*",h,b]=c;return{version:new Dn(II(u)?0:parseInt(u,10),II(u)||II(d)?0:parseInt(d,10),II(u)||II(d)||II(I)?0:parseInt(I,10),h,b),major:u,minor:d,patch:I}}function ha(n,c,u){let d=x0(n);if(!d)return!1;let I=x0(c);return I?(II(d.major)||u.push(vf(">=",d.version)),II(I.major)||u.push(II(I.minor)?vf("<",I.version.increment("major")):II(I.patch)?vf("<",I.version.increment("minor")):vf("<=",I.version)),!0):!1}function hd(n,c,u){let d=x0(c);if(!d)return!1;let{version:I,major:h,minor:b,patch:R}=d;if(II(h))(n==="<"||n===">")&&u.push(vf("<",Dn.zero));else switch(n){case"~":u.push(vf(">=",I)),u.push(vf("<",I.increment(II(b)?"major":"minor")));break;case"^":u.push(vf(">=",I)),u.push(vf("<",I.increment(I.major>0||II(b)?"major":I.minor>0||II(R)?"minor":"patch")));break;case"<":case">=":u.push(II(b)||II(R)?vf(n,I.with({prerelease:"0"})):vf(n,I));break;case"<=":case">":u.push(II(b)?vf(n==="<="?"<":">=",I.increment("major").with({prerelease:"0"})):II(R)?vf(n==="<="?"<":">=",I.increment("minor").with({prerelease:"0"})):vf(n,I));break;case"=":case void 0:II(b)||II(R)?(u.push(vf(">=",I.with({prerelease:"0"}))),u.push(vf("<",I.increment(II(b)?"major":"minor").with({prerelease:"0"})))):u.push(vf("=",I));break;default:return!1}return!0}function II(n){return n==="*"||n==="x"||n==="X"}function vf(n,c){return{operator:n,operand:c}}function Kh(n,c){if(c.length===0)return!0;for(let u of c)if(Ym(n,u))return!0;return!1}function Ym(n,c){for(let u of c)if(!CS(n,u.operator,u.operand))return!1;return!0}function CS(n,c,u){let d=n.compareTo(u);switch(c){case"<":return d<0;case"<=":return d<=0;case">":return d>0;case">=":return d>=0;case"=":return d===0;default:return w.assertNever(c)}}function mS(n){return Ot(n,bE).join(" || ")||"*"}function bE(n){return Ot(n,k0).join(" ")}function k0(n){return`${n.operator}${n.operand}`}function EE(){if(gy())try{let{performance:n}=xt("perf_hooks");if(n)return{shouldWriteNativeEvents:!1,performance:n}}catch{}if(typeof performance=="object")return{shouldWriteNativeEvents:!0,performance}}function hB(){let n=EE();if(!n)return;let{shouldWriteNativeEvents:c,performance:u}=n,d={shouldWriteNativeEvents:c,performance:void 0,performanceTime:void 0};return typeof u.timeOrigin=="number"&&typeof u.now=="function"&&(d.performanceTime=u),d.performanceTime&&typeof u.mark=="function"&&typeof u.measure=="function"&&typeof u.clearMarks=="function"&&typeof u.clearMeasures=="function"&&(d.performance=u),d}var U_=hB(),bh=U_?.performanceTime;function K_(){return U_}var $l=bh?()=>bh.now():Date.now,DC;try{let n=process.env.TS_ETW_MODULE_PATH??"./node_modules/@microsoft/typescript-etw";DC=xt(n)}catch{DC=void 0}var jl=DC?.logEvent?DC:void 0,cp={};o(cp,{clearMarks:()=>g2,clearMeasures:()=>Eh,createTimer:()=>nA,createTimerIf:()=>Rb,disable:()=>B_,enable:()=>Ay,forEachMark:()=>zd,forEachMeasure:()=>Vf,getCount:()=>Ml,getDuration:()=>xA,isEnabled:()=>xm,mark:()=>rs,measure:()=>Sc,nullTimer:()=>Cv});var gg,Xm;function Rb(n,c,u,d){return n?nA(c,u,d):Cv}function nA(n,c,u){let d=0;return{enter:I,exit:h};function I(){++d===1&&rs(c)}function h(){--d===0?(rs(u),Sc(n,c,u)):d<0&&w.fail("enter/exit count does not match.")}}var Cv={enter:oc,exit:oc},My=!1,HC=$l(),TI=new Map,Fi=new Map,Zo=new Map;function rs(n){if(My){let c=Fi.get(n)??0;Fi.set(n,c+1),TI.set(n,$l()),Xm?.mark(n),typeof onProfilerEvent=="function"&&onProfilerEvent(n)}}function Sc(n,c,u){if(My){let d=(u!==void 0?TI.get(u):void 0)??$l(),I=(c!==void 0?TI.get(c):void 0)??HC,h=Zo.get(n)||0;Zo.set(n,h+(d-I)),Xm?.measure(n,c,u)}}function Ml(n){return Fi.get(n)||0}function xA(n){return Zo.get(n)||0}function Vf(n){Zo.forEach((c,u)=>n(u,c))}function zd(n){TI.forEach((c,u)=>n(u))}function Eh(n){n!==void 0?Zo.delete(n):Zo.clear(),Xm?.clearMeasures(n)}function g2(n){n!==void 0?(Fi.delete(n),TI.delete(n)):(Fi.clear(),TI.clear()),Xm?.clearMarks(n)}function xm(){return My}function Ay(n=yd){var c;return My||(My=!0,gg||(gg=K_()),gg?.performance&&(HC=gg.performance.timeOrigin,(gg.shouldWriteNativeEvents||(c=n?.cpuProfilingEnabled)!=null&&c.call(n)||n?.debugMode)&&(Xm=gg.performance))),!0}function B_(){My&&(TI.clear(),Fi.clear(),Zo.clear(),Xm=void 0,My=!1)}var Qi,dy;(n=>{let c,u=0,d=0,I,h=[],b,R=[];function N(Le,je,st){if(w.assert(!Qi,"Tracing already started"),c===void 0)try{c=xt("fs")}catch(dt){throw new Error(`tracing requires having fs +(original error: ${dt.message||dt})`)}I=Le,h.length=0,b===void 0&&(b=Do(je,"legend.json")),c.existsSync(je)||c.mkdirSync(je,{recursive:!0});let nt=I==="build"?`.${process.pid}-${++u}`:I==="server"?`.${process.pid}`:"",qe=Do(je,`trace${nt}.json`),it=Do(je,`types${nt}.json`);R.push({configFilePath:st,tracePath:qe,typesPath:it}),d=c.openSync(qe,"w"),Qi=n;let It={cat:"__metadata",ph:"M",ts:1e3*$l(),pid:1,tid:1};c.writeSync(d,`[ `+[{name:"process_name",args:{name:"tsc"},...It},{name:"thread_name",args:{name:"Main"},...It},{name:"TracingStartedInBrowser",...It,cat:"disabled-by-default-devtools.timeline"}].map(dt=>JSON.stringify(dt)).join(`, -`))}n.startTracing=N;function V(){w.assert(Mi,"Tracing is not in progress"),w.assert(!!h.length==(I!=="server")),c.writeSync(d,` +`))}n.startTracing=N;function V(){w.assert(Qi,"Tracing is not in progress"),w.assert(!!h.length==(I!=="server")),c.writeSync(d,` ] -`),c.closeSync(d),Mi=void 0,h.length?De(h):R[R.length-1].typesPath=void 0}n.stopTracing=V;function P(Le){I!=="server"&&h.push(Le)}n.recordType=P;let M;(Le=>{Le.Parse="parse",Le.Program="program",Le.Bind="bind",Le.Check="check",Le.CheckTypes="checkTypes",Le.Emit="emit",Le.Session="session"})(M=n.Phase||(n.Phase={}));function te(Le,je,st){Ne("I",Le,je,st,'"s":"g"')}n.instant=te;let re=[];function ue(Le,je,st,nt=!1){nt&&Ne("B",Le,je,st),re.push({phase:Le,name:je,args:st,time:1e3*ql(),separateBeginAndEnd:nt})}n.push=ue;function Ae(Le){w.assert(re.length>0),Fe(re.length-1,1e3*ql(),Le),re.length--}n.pop=Ae;function de(){let Le=1e3*ql();for(let je=re.length-1;je>=0;je--)Fe(je,Le);re.length=0}n.popAll=de;let Be=1e3*10;function Fe(Le,je,st){let{phase:nt,name:qe,args:it,time:It,separateBeginAndEnd:dt}=re[Le];dt?(w.assert(!st,"`results` are not supported for events with `separateBeginAndEnd`"),Ne("E",nt,qe,it,void 0,je)):Be-It%Be<=je-It&&Ne("X",nt,qe,{...it,results:st},`"dur":${je-It}`,It)}function Ne(Le,je,st,nt,qe,it=1e3*ql()){I==="server"&&je==="checkTypes"||(rs("beginTracing"),c.writeSync(d,`, -{"pid":1,"tid":1,"ph":"${Le}","cat":"${je}","ts":${it},"name":"${st}"`),qe&&c.writeSync(d,`,${qe}`),nt&&c.writeSync(d,`,"args":${JSON.stringify(nt)}`),c.writeSync(d,"}"),rs("endTracing"),vc("Tracing","beginTracing","endTracing"))}function Qe(Le){let je=ls(Le);return je?{path:je.path,start:st(Ll(je,Le.pos)),end:st(Ll(je,Le.end))}:void 0;function st(nt){return{line:nt.line+1,character:nt.character+1}}}function De(Le){var je,st,nt,qe,it,It,dt,wt,vt,Ye,ht,Et,Kt,Tt,Lt,kt,Zt,Dr,jt;rs("beginDumpTypes");let mr=R[R.length-1].typesPath,Pt=c.openSync(mr,"w"),Vr=new Map;c.writeSync(Pt,"[");let Yr=Le.length;for(let pr=0;pr_s.id),referenceLocation:Qe(Cc.node)}}let jn={};if(zr.flags&16777216){let Cc=zr;jn={conditionalCheckType:(It=Cc.checkType)==null?void 0:It.id,conditionalExtendsType:(dt=Cc.extendsType)==null?void 0:dt.id,conditionalTrueType:((wt=Cc.resolvedTrueType)==null?void 0:wt.id)??-1,conditionalFalseType:((vt=Cc.resolvedFalseType)==null?void 0:vt.id)??-1}}let xs={};if(zr.flags&33554432){let Cc=zr;xs={substitutionBaseType:(Ye=Cc.baseType)==null?void 0:Ye.id,constraintType:(ht=Cc.constraint)==null?void 0:ht.id}}let Ec={};if($n&1024){let Cc=zr;Ec={reverseMappedSourceType:(Et=Cc.source)==null?void 0:Et.id,reverseMappedMappedType:(Kt=Cc.mappedType)==null?void 0:Kt.id,reverseMappedConstraintType:(Tt=Cc.constraintType)==null?void 0:Tt.id}}let xi={};if($n&256){let Cc=zr;xi={evolvingArrayElementType:Cc.elementType.id,evolvingArrayFinalType:(Lt=Cc.finalArrayType)==null?void 0:Lt.id}}let rc,Vl=zr.checker.getRecursionIdentity(zr);Vl&&(rc=Vr.get(Vl),rc||(rc=Vr.size,Vr.set(Vl,rc)));let ul={id:zr.id,intrinsicName:zr.intrinsicName,symbolName:bi?.escapedName&&Sc(bi.escapedName),recursionId:rc,isTuple:$n&8?!0:void 0,unionTypes:zr.flags&1048576?(kt=zr.types)==null?void 0:kt.map(Cc=>Cc.id):void 0,intersectionTypes:zr.flags&2097152?zr.types.map(Cc=>Cc.id):void 0,aliasTypeArguments:(Zt=zr.aliasTypeArguments)==null?void 0:Zt.map(Cc=>Cc.id),keyofType:zr.flags&4194304?(Dr=zr.type)==null?void 0:Dr.id:void 0,...Ns,...gi,...jn,...xs,...Ec,...xi,destructuringPattern:Qe(zr.pattern),firstDeclaration:Qe((jt=bi?.declarations)==null?void 0:jt[0]),flags:w.formatTypeFlags(zr.flags).split("|"),display:Pi};c.writeSync(Pt,JSON.stringify(ul)),pr{Le.Parse="parse",Le.Program="program",Le.Bind="bind",Le.Check="check",Le.CheckTypes="checkTypes",Le.Emit="emit",Le.Session="session"})(Q=n.Phase||(n.Phase={}));function te(Le,je,st){Ne("I",Le,je,st,'"s":"g"')}n.instant=te;let re=[];function ue(Le,je,st,nt=!1){nt&&Ne("B",Le,je,st),re.push({phase:Le,name:je,args:st,time:1e3*$l(),separateBeginAndEnd:nt})}n.push=ue;function Ae(Le){w.assert(re.length>0),Fe(re.length-1,1e3*$l(),Le),re.length--}n.pop=Ae;function de(){let Le=1e3*$l();for(let je=re.length-1;je>=0;je--)Fe(je,Le);re.length=0}n.popAll=de;let Be=1e3*10;function Fe(Le,je,st){let{phase:nt,name:qe,args:it,time:It,separateBeginAndEnd:dt}=re[Le];dt?(w.assert(!st,"`results` are not supported for events with `separateBeginAndEnd`"),Ne("E",nt,qe,it,void 0,je)):Be-It%Be<=je-It&&Ne("X",nt,qe,{...it,results:st},`"dur":${je-It}`,It)}function Ne(Le,je,st,nt,qe,it=1e3*$l()){I==="server"&&je==="checkTypes"||(rs("beginTracing"),c.writeSync(d,`, +{"pid":1,"tid":1,"ph":"${Le}","cat":"${je}","ts":${it},"name":"${st}"`),qe&&c.writeSync(d,`,${qe}`),nt&&c.writeSync(d,`,"args":${JSON.stringify(nt)}`),c.writeSync(d,"}"),rs("endTracing"),Sc("Tracing","beginTracing","endTracing"))}function Me(Le){let je=ls(Le);return je?{path:je.path,start:st(Vl(je,Le.pos)),end:st(Vl(je,Le.end))}:void 0;function st(nt){return{line:nt.line+1,character:nt.character+1}}}function De(Le){var je,st,nt,qe,it,It,dt,Tt,St,He,ht,Et,Kt,Nt,Lt,kt,Zt,Dr,jt;rs("beginDumpTypes");let mr=R[R.length-1].typesPath,Pt=c.openSync(mr,"w"),Vr=new Map;c.writeSync(Pt,"[");let Hr=Le.length;for(let pr=0;pr_s.id),referenceLocation:Me(mc.node)}}let jn={};if(zr.flags&16777216){let mc=zr;jn={conditionalCheckType:(It=mc.checkType)==null?void 0:It.id,conditionalExtendsType:(dt=mc.extendsType)==null?void 0:dt.id,conditionalTrueType:((Tt=mc.resolvedTrueType)==null?void 0:Tt.id)??-1,conditionalFalseType:((St=mc.resolvedFalseType)==null?void 0:St.id)??-1}}let xs={};if(zr.flags&33554432){let mc=zr;xs={substitutionBaseType:(He=mc.baseType)==null?void 0:He.id,constraintType:(ht=mc.constraint)==null?void 0:ht.id}}let Bc={};if($n&1024){let mc=zr;Bc={reverseMappedSourceType:(Et=mc.source)==null?void 0:Et.id,reverseMappedMappedType:(Kt=mc.mappedType)==null?void 0:Kt.id,reverseMappedConstraintType:(Nt=mc.constraintType)==null?void 0:Nt.id}}let xi={};if($n&256){let mc=zr;xi={evolvingArrayElementType:mc.elementType.id,evolvingArrayFinalType:(Lt=mc.finalArrayType)==null?void 0:Lt.id}}let rc,Wl=zr.checker.getRecursionIdentity(zr);Wl&&(rc=Vr.get(Wl),rc||(rc=Vr.size,Vr.set(Wl,rc)));let gl={id:zr.id,intrinsicName:zr.intrinsicName,symbolName:bi?.escapedName&&wc(bi.escapedName),recursionId:rc,isTuple:$n&8?!0:void 0,unionTypes:zr.flags&1048576?(kt=zr.types)==null?void 0:kt.map(mc=>mc.id):void 0,intersectionTypes:zr.flags&2097152?zr.types.map(mc=>mc.id):void 0,aliasTypeArguments:(Zt=zr.aliasTypeArguments)==null?void 0:Zt.map(mc=>mc.id),keyofType:zr.flags&4194304?(Dr=zr.type)==null?void 0:Dr.id:void 0,...Ns,...gi,...jn,...xs,...Bc,...xi,destructuringPattern:Me(zr.pattern),firstDeclaration:Me((jt=bi?.declarations)==null?void 0:jt[0]),flags:w.formatTypeFlags(zr.flags).split("|"),display:Pi};c.writeSync(Pt,JSON.stringify(gl)),pr(n[n.Unknown=0]="Unknown",n[n.EndOfFileToken=1]="EndOfFileToken",n[n.SingleLineCommentTrivia=2]="SingleLineCommentTrivia",n[n.MultiLineCommentTrivia=3]="MultiLineCommentTrivia",n[n.NewLineTrivia=4]="NewLineTrivia",n[n.WhitespaceTrivia=5]="WhitespaceTrivia",n[n.ShebangTrivia=6]="ShebangTrivia",n[n.ConflictMarkerTrivia=7]="ConflictMarkerTrivia",n[n.NonTextFileMarkerTrivia=8]="NonTextFileMarkerTrivia",n[n.NumericLiteral=9]="NumericLiteral",n[n.BigIntLiteral=10]="BigIntLiteral",n[n.StringLiteral=11]="StringLiteral",n[n.JsxText=12]="JsxText",n[n.JsxTextAllWhiteSpaces=13]="JsxTextAllWhiteSpaces",n[n.RegularExpressionLiteral=14]="RegularExpressionLiteral",n[n.NoSubstitutionTemplateLiteral=15]="NoSubstitutionTemplateLiteral",n[n.TemplateHead=16]="TemplateHead",n[n.TemplateMiddle=17]="TemplateMiddle",n[n.TemplateTail=18]="TemplateTail",n[n.OpenBraceToken=19]="OpenBraceToken",n[n.CloseBraceToken=20]="CloseBraceToken",n[n.OpenParenToken=21]="OpenParenToken",n[n.CloseParenToken=22]="CloseParenToken",n[n.OpenBracketToken=23]="OpenBracketToken",n[n.CloseBracketToken=24]="CloseBracketToken",n[n.DotToken=25]="DotToken",n[n.DotDotDotToken=26]="DotDotDotToken",n[n.SemicolonToken=27]="SemicolonToken",n[n.CommaToken=28]="CommaToken",n[n.QuestionDotToken=29]="QuestionDotToken",n[n.LessThanToken=30]="LessThanToken",n[n.LessThanSlashToken=31]="LessThanSlashToken",n[n.GreaterThanToken=32]="GreaterThanToken",n[n.LessThanEqualsToken=33]="LessThanEqualsToken",n[n.GreaterThanEqualsToken=34]="GreaterThanEqualsToken",n[n.EqualsEqualsToken=35]="EqualsEqualsToken",n[n.ExclamationEqualsToken=36]="ExclamationEqualsToken",n[n.EqualsEqualsEqualsToken=37]="EqualsEqualsEqualsToken",n[n.ExclamationEqualsEqualsToken=38]="ExclamationEqualsEqualsToken",n[n.EqualsGreaterThanToken=39]="EqualsGreaterThanToken",n[n.PlusToken=40]="PlusToken",n[n.MinusToken=41]="MinusToken",n[n.AsteriskToken=42]="AsteriskToken",n[n.AsteriskAsteriskToken=43]="AsteriskAsteriskToken",n[n.SlashToken=44]="SlashToken",n[n.PercentToken=45]="PercentToken",n[n.PlusPlusToken=46]="PlusPlusToken",n[n.MinusMinusToken=47]="MinusMinusToken",n[n.LessThanLessThanToken=48]="LessThanLessThanToken",n[n.GreaterThanGreaterThanToken=49]="GreaterThanGreaterThanToken",n[n.GreaterThanGreaterThanGreaterThanToken=50]="GreaterThanGreaterThanGreaterThanToken",n[n.AmpersandToken=51]="AmpersandToken",n[n.BarToken=52]="BarToken",n[n.CaretToken=53]="CaretToken",n[n.ExclamationToken=54]="ExclamationToken",n[n.TildeToken=55]="TildeToken",n[n.AmpersandAmpersandToken=56]="AmpersandAmpersandToken",n[n.BarBarToken=57]="BarBarToken",n[n.QuestionToken=58]="QuestionToken",n[n.ColonToken=59]="ColonToken",n[n.AtToken=60]="AtToken",n[n.QuestionQuestionToken=61]="QuestionQuestionToken",n[n.BacktickToken=62]="BacktickToken",n[n.HashToken=63]="HashToken",n[n.EqualsToken=64]="EqualsToken",n[n.PlusEqualsToken=65]="PlusEqualsToken",n[n.MinusEqualsToken=66]="MinusEqualsToken",n[n.AsteriskEqualsToken=67]="AsteriskEqualsToken",n[n.AsteriskAsteriskEqualsToken=68]="AsteriskAsteriskEqualsToken",n[n.SlashEqualsToken=69]="SlashEqualsToken",n[n.PercentEqualsToken=70]="PercentEqualsToken",n[n.LessThanLessThanEqualsToken=71]="LessThanLessThanEqualsToken",n[n.GreaterThanGreaterThanEqualsToken=72]="GreaterThanGreaterThanEqualsToken",n[n.GreaterThanGreaterThanGreaterThanEqualsToken=73]="GreaterThanGreaterThanGreaterThanEqualsToken",n[n.AmpersandEqualsToken=74]="AmpersandEqualsToken",n[n.BarEqualsToken=75]="BarEqualsToken",n[n.BarBarEqualsToken=76]="BarBarEqualsToken",n[n.AmpersandAmpersandEqualsToken=77]="AmpersandAmpersandEqualsToken",n[n.QuestionQuestionEqualsToken=78]="QuestionQuestionEqualsToken",n[n.CaretEqualsToken=79]="CaretEqualsToken",n[n.Identifier=80]="Identifier",n[n.PrivateIdentifier=81]="PrivateIdentifier",n[n.JSDocCommentTextToken=82]="JSDocCommentTextToken",n[n.BreakKeyword=83]="BreakKeyword",n[n.CaseKeyword=84]="CaseKeyword",n[n.CatchKeyword=85]="CatchKeyword",n[n.ClassKeyword=86]="ClassKeyword",n[n.ConstKeyword=87]="ConstKeyword",n[n.ContinueKeyword=88]="ContinueKeyword",n[n.DebuggerKeyword=89]="DebuggerKeyword",n[n.DefaultKeyword=90]="DefaultKeyword",n[n.DeleteKeyword=91]="DeleteKeyword",n[n.DoKeyword=92]="DoKeyword",n[n.ElseKeyword=93]="ElseKeyword",n[n.EnumKeyword=94]="EnumKeyword",n[n.ExportKeyword=95]="ExportKeyword",n[n.ExtendsKeyword=96]="ExtendsKeyword",n[n.FalseKeyword=97]="FalseKeyword",n[n.FinallyKeyword=98]="FinallyKeyword",n[n.ForKeyword=99]="ForKeyword",n[n.FunctionKeyword=100]="FunctionKeyword",n[n.IfKeyword=101]="IfKeyword",n[n.ImportKeyword=102]="ImportKeyword",n[n.InKeyword=103]="InKeyword",n[n.InstanceOfKeyword=104]="InstanceOfKeyword",n[n.NewKeyword=105]="NewKeyword",n[n.NullKeyword=106]="NullKeyword",n[n.ReturnKeyword=107]="ReturnKeyword",n[n.SuperKeyword=108]="SuperKeyword",n[n.SwitchKeyword=109]="SwitchKeyword",n[n.ThisKeyword=110]="ThisKeyword",n[n.ThrowKeyword=111]="ThrowKeyword",n[n.TrueKeyword=112]="TrueKeyword",n[n.TryKeyword=113]="TryKeyword",n[n.TypeOfKeyword=114]="TypeOfKeyword",n[n.VarKeyword=115]="VarKeyword",n[n.VoidKeyword=116]="VoidKeyword",n[n.WhileKeyword=117]="WhileKeyword",n[n.WithKeyword=118]="WithKeyword",n[n.ImplementsKeyword=119]="ImplementsKeyword",n[n.InterfaceKeyword=120]="InterfaceKeyword",n[n.LetKeyword=121]="LetKeyword",n[n.PackageKeyword=122]="PackageKeyword",n[n.PrivateKeyword=123]="PrivateKeyword",n[n.ProtectedKeyword=124]="ProtectedKeyword",n[n.PublicKeyword=125]="PublicKeyword",n[n.StaticKeyword=126]="StaticKeyword",n[n.YieldKeyword=127]="YieldKeyword",n[n.AbstractKeyword=128]="AbstractKeyword",n[n.AccessorKeyword=129]="AccessorKeyword",n[n.AsKeyword=130]="AsKeyword",n[n.AssertsKeyword=131]="AssertsKeyword",n[n.AssertKeyword=132]="AssertKeyword",n[n.AnyKeyword=133]="AnyKeyword",n[n.AsyncKeyword=134]="AsyncKeyword",n[n.AwaitKeyword=135]="AwaitKeyword",n[n.BooleanKeyword=136]="BooleanKeyword",n[n.ConstructorKeyword=137]="ConstructorKeyword",n[n.DeclareKeyword=138]="DeclareKeyword",n[n.GetKeyword=139]="GetKeyword",n[n.InferKeyword=140]="InferKeyword",n[n.IntrinsicKeyword=141]="IntrinsicKeyword",n[n.IsKeyword=142]="IsKeyword",n[n.KeyOfKeyword=143]="KeyOfKeyword",n[n.ModuleKeyword=144]="ModuleKeyword",n[n.NamespaceKeyword=145]="NamespaceKeyword",n[n.NeverKeyword=146]="NeverKeyword",n[n.OutKeyword=147]="OutKeyword",n[n.ReadonlyKeyword=148]="ReadonlyKeyword",n[n.RequireKeyword=149]="RequireKeyword",n[n.NumberKeyword=150]="NumberKeyword",n[n.ObjectKeyword=151]="ObjectKeyword",n[n.SatisfiesKeyword=152]="SatisfiesKeyword",n[n.SetKeyword=153]="SetKeyword",n[n.StringKeyword=154]="StringKeyword",n[n.SymbolKeyword=155]="SymbolKeyword",n[n.TypeKeyword=156]="TypeKeyword",n[n.UndefinedKeyword=157]="UndefinedKeyword",n[n.UniqueKeyword=158]="UniqueKeyword",n[n.UnknownKeyword=159]="UnknownKeyword",n[n.UsingKeyword=160]="UsingKeyword",n[n.FromKeyword=161]="FromKeyword",n[n.GlobalKeyword=162]="GlobalKeyword",n[n.BigIntKeyword=163]="BigIntKeyword",n[n.OverrideKeyword=164]="OverrideKeyword",n[n.OfKeyword=165]="OfKeyword",n[n.QualifiedName=166]="QualifiedName",n[n.ComputedPropertyName=167]="ComputedPropertyName",n[n.TypeParameter=168]="TypeParameter",n[n.Parameter=169]="Parameter",n[n.Decorator=170]="Decorator",n[n.PropertySignature=171]="PropertySignature",n[n.PropertyDeclaration=172]="PropertyDeclaration",n[n.MethodSignature=173]="MethodSignature",n[n.MethodDeclaration=174]="MethodDeclaration",n[n.ClassStaticBlockDeclaration=175]="ClassStaticBlockDeclaration",n[n.Constructor=176]="Constructor",n[n.GetAccessor=177]="GetAccessor",n[n.SetAccessor=178]="SetAccessor",n[n.CallSignature=179]="CallSignature",n[n.ConstructSignature=180]="ConstructSignature",n[n.IndexSignature=181]="IndexSignature",n[n.TypePredicate=182]="TypePredicate",n[n.TypeReference=183]="TypeReference",n[n.FunctionType=184]="FunctionType",n[n.ConstructorType=185]="ConstructorType",n[n.TypeQuery=186]="TypeQuery",n[n.TypeLiteral=187]="TypeLiteral",n[n.ArrayType=188]="ArrayType",n[n.TupleType=189]="TupleType",n[n.OptionalType=190]="OptionalType",n[n.RestType=191]="RestType",n[n.UnionType=192]="UnionType",n[n.IntersectionType=193]="IntersectionType",n[n.ConditionalType=194]="ConditionalType",n[n.InferType=195]="InferType",n[n.ParenthesizedType=196]="ParenthesizedType",n[n.ThisType=197]="ThisType",n[n.TypeOperator=198]="TypeOperator",n[n.IndexedAccessType=199]="IndexedAccessType",n[n.MappedType=200]="MappedType",n[n.LiteralType=201]="LiteralType",n[n.NamedTupleMember=202]="NamedTupleMember",n[n.TemplateLiteralType=203]="TemplateLiteralType",n[n.TemplateLiteralTypeSpan=204]="TemplateLiteralTypeSpan",n[n.ImportType=205]="ImportType",n[n.ObjectBindingPattern=206]="ObjectBindingPattern",n[n.ArrayBindingPattern=207]="ArrayBindingPattern",n[n.BindingElement=208]="BindingElement",n[n.ArrayLiteralExpression=209]="ArrayLiteralExpression",n[n.ObjectLiteralExpression=210]="ObjectLiteralExpression",n[n.PropertyAccessExpression=211]="PropertyAccessExpression",n[n.ElementAccessExpression=212]="ElementAccessExpression",n[n.CallExpression=213]="CallExpression",n[n.NewExpression=214]="NewExpression",n[n.TaggedTemplateExpression=215]="TaggedTemplateExpression",n[n.TypeAssertionExpression=216]="TypeAssertionExpression",n[n.ParenthesizedExpression=217]="ParenthesizedExpression",n[n.FunctionExpression=218]="FunctionExpression",n[n.ArrowFunction=219]="ArrowFunction",n[n.DeleteExpression=220]="DeleteExpression",n[n.TypeOfExpression=221]="TypeOfExpression",n[n.VoidExpression=222]="VoidExpression",n[n.AwaitExpression=223]="AwaitExpression",n[n.PrefixUnaryExpression=224]="PrefixUnaryExpression",n[n.PostfixUnaryExpression=225]="PostfixUnaryExpression",n[n.BinaryExpression=226]="BinaryExpression",n[n.ConditionalExpression=227]="ConditionalExpression",n[n.TemplateExpression=228]="TemplateExpression",n[n.YieldExpression=229]="YieldExpression",n[n.SpreadElement=230]="SpreadElement",n[n.ClassExpression=231]="ClassExpression",n[n.OmittedExpression=232]="OmittedExpression",n[n.ExpressionWithTypeArguments=233]="ExpressionWithTypeArguments",n[n.AsExpression=234]="AsExpression",n[n.NonNullExpression=235]="NonNullExpression",n[n.MetaProperty=236]="MetaProperty",n[n.SyntheticExpression=237]="SyntheticExpression",n[n.SatisfiesExpression=238]="SatisfiesExpression",n[n.TemplateSpan=239]="TemplateSpan",n[n.SemicolonClassElement=240]="SemicolonClassElement",n[n.Block=241]="Block",n[n.EmptyStatement=242]="EmptyStatement",n[n.VariableStatement=243]="VariableStatement",n[n.ExpressionStatement=244]="ExpressionStatement",n[n.IfStatement=245]="IfStatement",n[n.DoStatement=246]="DoStatement",n[n.WhileStatement=247]="WhileStatement",n[n.ForStatement=248]="ForStatement",n[n.ForInStatement=249]="ForInStatement",n[n.ForOfStatement=250]="ForOfStatement",n[n.ContinueStatement=251]="ContinueStatement",n[n.BreakStatement=252]="BreakStatement",n[n.ReturnStatement=253]="ReturnStatement",n[n.WithStatement=254]="WithStatement",n[n.SwitchStatement=255]="SwitchStatement",n[n.LabeledStatement=256]="LabeledStatement",n[n.ThrowStatement=257]="ThrowStatement",n[n.TryStatement=258]="TryStatement",n[n.DebuggerStatement=259]="DebuggerStatement",n[n.VariableDeclaration=260]="VariableDeclaration",n[n.VariableDeclarationList=261]="VariableDeclarationList",n[n.FunctionDeclaration=262]="FunctionDeclaration",n[n.ClassDeclaration=263]="ClassDeclaration",n[n.InterfaceDeclaration=264]="InterfaceDeclaration",n[n.TypeAliasDeclaration=265]="TypeAliasDeclaration",n[n.EnumDeclaration=266]="EnumDeclaration",n[n.ModuleDeclaration=267]="ModuleDeclaration",n[n.ModuleBlock=268]="ModuleBlock",n[n.CaseBlock=269]="CaseBlock",n[n.NamespaceExportDeclaration=270]="NamespaceExportDeclaration",n[n.ImportEqualsDeclaration=271]="ImportEqualsDeclaration",n[n.ImportDeclaration=272]="ImportDeclaration",n[n.ImportClause=273]="ImportClause",n[n.NamespaceImport=274]="NamespaceImport",n[n.NamedImports=275]="NamedImports",n[n.ImportSpecifier=276]="ImportSpecifier",n[n.ExportAssignment=277]="ExportAssignment",n[n.ExportDeclaration=278]="ExportDeclaration",n[n.NamedExports=279]="NamedExports",n[n.NamespaceExport=280]="NamespaceExport",n[n.ExportSpecifier=281]="ExportSpecifier",n[n.MissingDeclaration=282]="MissingDeclaration",n[n.ExternalModuleReference=283]="ExternalModuleReference",n[n.JsxElement=284]="JsxElement",n[n.JsxSelfClosingElement=285]="JsxSelfClosingElement",n[n.JsxOpeningElement=286]="JsxOpeningElement",n[n.JsxClosingElement=287]="JsxClosingElement",n[n.JsxFragment=288]="JsxFragment",n[n.JsxOpeningFragment=289]="JsxOpeningFragment",n[n.JsxClosingFragment=290]="JsxClosingFragment",n[n.JsxAttribute=291]="JsxAttribute",n[n.JsxAttributes=292]="JsxAttributes",n[n.JsxSpreadAttribute=293]="JsxSpreadAttribute",n[n.JsxExpression=294]="JsxExpression",n[n.JsxNamespacedName=295]="JsxNamespacedName",n[n.CaseClause=296]="CaseClause",n[n.DefaultClause=297]="DefaultClause",n[n.HeritageClause=298]="HeritageClause",n[n.CatchClause=299]="CatchClause",n[n.ImportAttributes=300]="ImportAttributes",n[n.ImportAttribute=301]="ImportAttribute",n[n.AssertClause=300]="AssertClause",n[n.AssertEntry=301]="AssertEntry",n[n.ImportTypeAssertionContainer=302]="ImportTypeAssertionContainer",n[n.PropertyAssignment=303]="PropertyAssignment",n[n.ShorthandPropertyAssignment=304]="ShorthandPropertyAssignment",n[n.SpreadAssignment=305]="SpreadAssignment",n[n.EnumMember=306]="EnumMember",n[n.SourceFile=307]="SourceFile",n[n.Bundle=308]="Bundle",n[n.JSDocTypeExpression=309]="JSDocTypeExpression",n[n.JSDocNameReference=310]="JSDocNameReference",n[n.JSDocMemberName=311]="JSDocMemberName",n[n.JSDocAllType=312]="JSDocAllType",n[n.JSDocUnknownType=313]="JSDocUnknownType",n[n.JSDocNullableType=314]="JSDocNullableType",n[n.JSDocNonNullableType=315]="JSDocNonNullableType",n[n.JSDocOptionalType=316]="JSDocOptionalType",n[n.JSDocFunctionType=317]="JSDocFunctionType",n[n.JSDocVariadicType=318]="JSDocVariadicType",n[n.JSDocNamepathType=319]="JSDocNamepathType",n[n.JSDoc=320]="JSDoc",n[n.JSDocComment=320]="JSDocComment",n[n.JSDocText=321]="JSDocText",n[n.JSDocTypeLiteral=322]="JSDocTypeLiteral",n[n.JSDocSignature=323]="JSDocSignature",n[n.JSDocLink=324]="JSDocLink",n[n.JSDocLinkCode=325]="JSDocLinkCode",n[n.JSDocLinkPlain=326]="JSDocLinkPlain",n[n.JSDocTag=327]="JSDocTag",n[n.JSDocAugmentsTag=328]="JSDocAugmentsTag",n[n.JSDocImplementsTag=329]="JSDocImplementsTag",n[n.JSDocAuthorTag=330]="JSDocAuthorTag",n[n.JSDocDeprecatedTag=331]="JSDocDeprecatedTag",n[n.JSDocClassTag=332]="JSDocClassTag",n[n.JSDocPublicTag=333]="JSDocPublicTag",n[n.JSDocPrivateTag=334]="JSDocPrivateTag",n[n.JSDocProtectedTag=335]="JSDocProtectedTag",n[n.JSDocReadonlyTag=336]="JSDocReadonlyTag",n[n.JSDocOverrideTag=337]="JSDocOverrideTag",n[n.JSDocCallbackTag=338]="JSDocCallbackTag",n[n.JSDocOverloadTag=339]="JSDocOverloadTag",n[n.JSDocEnumTag=340]="JSDocEnumTag",n[n.JSDocParameterTag=341]="JSDocParameterTag",n[n.JSDocReturnTag=342]="JSDocReturnTag",n[n.JSDocThisTag=343]="JSDocThisTag",n[n.JSDocTypeTag=344]="JSDocTypeTag",n[n.JSDocTemplateTag=345]="JSDocTemplateTag",n[n.JSDocTypedefTag=346]="JSDocTypedefTag",n[n.JSDocSeeTag=347]="JSDocSeeTag",n[n.JSDocPropertyTag=348]="JSDocPropertyTag",n[n.JSDocThrowsTag=349]="JSDocThrowsTag",n[n.JSDocSatisfiesTag=350]="JSDocSatisfiesTag",n[n.JSDocImportTag=351]="JSDocImportTag",n[n.SyntaxList=352]="SyntaxList",n[n.NotEmittedStatement=353]="NotEmittedStatement",n[n.PartiallyEmittedExpression=354]="PartiallyEmittedExpression",n[n.CommaListExpression=355]="CommaListExpression",n[n.SyntheticReferenceExpression=356]="SyntheticReferenceExpression",n[n.Count=357]="Count",n[n.FirstAssignment=64]="FirstAssignment",n[n.LastAssignment=79]="LastAssignment",n[n.FirstCompoundAssignment=65]="FirstCompoundAssignment",n[n.LastCompoundAssignment=79]="LastCompoundAssignment",n[n.FirstReservedWord=83]="FirstReservedWord",n[n.LastReservedWord=118]="LastReservedWord",n[n.FirstKeyword=83]="FirstKeyword",n[n.LastKeyword=165]="LastKeyword",n[n.FirstFutureReservedWord=119]="FirstFutureReservedWord",n[n.LastFutureReservedWord=127]="LastFutureReservedWord",n[n.FirstTypeNode=182]="FirstTypeNode",n[n.LastTypeNode=205]="LastTypeNode",n[n.FirstPunctuation=19]="FirstPunctuation",n[n.LastPunctuation=79]="LastPunctuation",n[n.FirstToken=0]="FirstToken",n[n.LastToken=165]="LastToken",n[n.FirstTriviaToken=2]="FirstTriviaToken",n[n.LastTriviaToken=7]="LastTriviaToken",n[n.FirstLiteralToken=9]="FirstLiteralToken",n[n.LastLiteralToken=15]="LastLiteralToken",n[n.FirstTemplateToken=15]="FirstTemplateToken",n[n.LastTemplateToken=18]="LastTemplateToken",n[n.FirstBinaryOperator=30]="FirstBinaryOperator",n[n.LastBinaryOperator=79]="LastBinaryOperator",n[n.FirstStatement=243]="FirstStatement",n[n.LastStatement=259]="LastStatement",n[n.FirstNode=166]="FirstNode",n[n.FirstJSDocNode=309]="FirstJSDocNode",n[n.LastJSDocNode=351]="LastJSDocNode",n[n.FirstJSDocTagNode=327]="FirstJSDocTagNode",n[n.LastJSDocTagNode=351]="LastJSDocTagNode",n[n.FirstContextualKeyword=128]="FirstContextualKeyword",n[n.LastContextualKeyword=165]="LastContextualKeyword",n))(g2||{}),EE=(n=>(n[n.None=0]="None",n[n.Let=1]="Let",n[n.Const=2]="Const",n[n.Using=4]="Using",n[n.AwaitUsing=6]="AwaitUsing",n[n.NestedNamespace=8]="NestedNamespace",n[n.Synthesized=16]="Synthesized",n[n.Namespace=32]="Namespace",n[n.OptionalChain=64]="OptionalChain",n[n.ExportContext=128]="ExportContext",n[n.ContainsThis=256]="ContainsThis",n[n.HasImplicitReturn=512]="HasImplicitReturn",n[n.HasExplicitReturn=1024]="HasExplicitReturn",n[n.GlobalAugmentation=2048]="GlobalAugmentation",n[n.HasAsyncFunctions=4096]="HasAsyncFunctions",n[n.DisallowInContext=8192]="DisallowInContext",n[n.YieldContext=16384]="YieldContext",n[n.DecoratorContext=32768]="DecoratorContext",n[n.AwaitContext=65536]="AwaitContext",n[n.DisallowConditionalTypesContext=131072]="DisallowConditionalTypesContext",n[n.ThisNodeHasError=262144]="ThisNodeHasError",n[n.JavaScriptFile=524288]="JavaScriptFile",n[n.ThisNodeOrAnySubNodesHasError=1048576]="ThisNodeOrAnySubNodesHasError",n[n.HasAggregatedChildData=2097152]="HasAggregatedChildData",n[n.PossiblyContainsDynamicImport=4194304]="PossiblyContainsDynamicImport",n[n.PossiblyContainsImportMeta=8388608]="PossiblyContainsImportMeta",n[n.JSDoc=16777216]="JSDoc",n[n.Ambient=33554432]="Ambient",n[n.InWithStatement=67108864]="InWithStatement",n[n.JsonFile=134217728]="JsonFile",n[n.TypeCached=268435456]="TypeCached",n[n.Deprecated=536870912]="Deprecated",n[n.BlockScoped=7]="BlockScoped",n[n.Constant=6]="Constant",n[n.ReachabilityCheckFlags=1536]="ReachabilityCheckFlags",n[n.ReachabilityAndEmitFlags=5632]="ReachabilityAndEmitFlags",n[n.ContextFlags=101441536]="ContextFlags",n[n.TypeExcludesFlags=81920]="TypeExcludesFlags",n[n.PermanentlySetIncrementalFlags=12582912]="PermanentlySetIncrementalFlags",n[n.IdentifierHasExtendedUnicodeEscape=256]="IdentifierHasExtendedUnicodeEscape",n[n.IdentifierIsInJSDocNamespace=4096]="IdentifierIsInJSDocNamespace",n))(EE||{}),k0=(n=>(n[n.None=0]="None",n[n.Public=1]="Public",n[n.Private=2]="Private",n[n.Protected=4]="Protected",n[n.Readonly=8]="Readonly",n[n.Override=16]="Override",n[n.Export=32]="Export",n[n.Abstract=64]="Abstract",n[n.Ambient=128]="Ambient",n[n.Static=256]="Static",n[n.Accessor=512]="Accessor",n[n.Async=1024]="Async",n[n.Default=2048]="Default",n[n.Const=4096]="Const",n[n.In=8192]="In",n[n.Out=16384]="Out",n[n.Decorator=32768]="Decorator",n[n.Deprecated=65536]="Deprecated",n[n.JSDocPublic=8388608]="JSDocPublic",n[n.JSDocPrivate=16777216]="JSDocPrivate",n[n.JSDocProtected=33554432]="JSDocProtected",n[n.JSDocReadonly=67108864]="JSDocReadonly",n[n.JSDocOverride=134217728]="JSDocOverride",n[n.SyntacticOrJSDocModifiers=31]="SyntacticOrJSDocModifiers",n[n.SyntacticOnlyModifiers=65504]="SyntacticOnlyModifiers",n[n.SyntacticModifiers=65535]="SyntacticModifiers",n[n.JSDocCacheOnlyModifiers=260046848]="JSDocCacheOnlyModifiers",n[n.JSDocOnlyModifiers=65536]="JSDocOnlyModifiers",n[n.NonCacheOnlyModifiers=131071]="NonCacheOnlyModifiers",n[n.HasComputedJSDocModifiers=268435456]="HasComputedJSDocModifiers",n[n.HasComputedFlags=536870912]="HasComputedFlags",n[n.AccessibilityModifier=7]="AccessibilityModifier",n[n.ParameterPropertyModifier=31]="ParameterPropertyModifier",n[n.NonPublicAccessibilityModifier=6]="NonPublicAccessibilityModifier",n[n.TypeScriptModifier=28895]="TypeScriptModifier",n[n.ExportDefault=2080]="ExportDefault",n[n.All=131071]="All",n[n.Modifier=98303]="Modifier",n))(k0||{}),mS=(n=>(n[n.None=0]="None",n[n.IntrinsicNamedElement=1]="IntrinsicNamedElement",n[n.IntrinsicIndexedElement=2]="IntrinsicIndexedElement",n[n.IntrinsicElement=3]="IntrinsicElement",n))(mS||{}),I1=(n=>(n[n.None=0]="None",n[n.Succeeded=1]="Succeeded",n[n.Failed=2]="Failed",n[n.Reported=4]="Reported",n[n.ReportsUnmeasurable=8]="ReportsUnmeasurable",n[n.ReportsUnreliable=16]="ReportsUnreliable",n[n.ReportsMask=24]="ReportsMask",n))(I1||{}),dc=(n=>(n[n.None=0]="None",n[n.Auto=1]="Auto",n[n.Loop=2]="Loop",n[n.Unique=3]="Unique",n[n.Node=4]="Node",n[n.KindMask=7]="KindMask",n[n.ReservedInNestedScopes=8]="ReservedInNestedScopes",n[n.Optimistic=16]="Optimistic",n[n.FileLevel=32]="FileLevel",n[n.AllowNameSubstitution=64]="AllowNameSubstitution",n))(dc||{}),at=(n=>(n[n.None=0]="None",n[n.HasIndices=1]="HasIndices",n[n.Global=2]="Global",n[n.IgnoreCase=4]="IgnoreCase",n[n.Multiline=8]="Multiline",n[n.DotAll=16]="DotAll",n[n.Unicode=32]="Unicode",n[n.UnicodeSets=64]="UnicodeSets",n[n.Sticky=128]="Sticky",n[n.AnyUnicodeMode=96]="AnyUnicodeMode",n[n.Modifiers=28]="Modifiers",n))(at||{}),$t=(n=>(n[n.None=0]="None",n[n.PrecedingLineBreak=1]="PrecedingLineBreak",n[n.PrecedingJSDocComment=2]="PrecedingJSDocComment",n[n.Unterminated=4]="Unterminated",n[n.ExtendedUnicodeEscape=8]="ExtendedUnicodeEscape",n[n.Scientific=16]="Scientific",n[n.Octal=32]="Octal",n[n.HexSpecifier=64]="HexSpecifier",n[n.BinarySpecifier=128]="BinarySpecifier",n[n.OctalSpecifier=256]="OctalSpecifier",n[n.ContainsSeparator=512]="ContainsSeparator",n[n.UnicodeEscape=1024]="UnicodeEscape",n[n.ContainsInvalidEscape=2048]="ContainsInvalidEscape",n[n.HexEscape=4096]="HexEscape",n[n.ContainsLeadingZero=8192]="ContainsLeadingZero",n[n.ContainsInvalidSeparator=16384]="ContainsInvalidSeparator",n[n.BinaryOrOctalSpecifier=384]="BinaryOrOctalSpecifier",n[n.WithSpecifier=448]="WithSpecifier",n[n.StringLiteralFlags=7176]="StringLiteralFlags",n[n.NumericLiteralFlags=25584]="NumericLiteralFlags",n[n.TemplateLiteralLikeFlags=7176]="TemplateLiteralLikeFlags",n[n.IsInvalid=26656]="IsInvalid",n))($t||{}),Wr=(n=>(n[n.Unreachable=1]="Unreachable",n[n.Start=2]="Start",n[n.BranchLabel=4]="BranchLabel",n[n.LoopLabel=8]="LoopLabel",n[n.Assignment=16]="Assignment",n[n.TrueCondition=32]="TrueCondition",n[n.FalseCondition=64]="FalseCondition",n[n.SwitchClause=128]="SwitchClause",n[n.ArrayMutation=256]="ArrayMutation",n[n.Call=512]="Call",n[n.ReduceLabel=1024]="ReduceLabel",n[n.Referenced=2048]="Referenced",n[n.Shared=4096]="Shared",n[n.Label=12]="Label",n[n.Condition=96]="Condition",n))(Wr||{}),vn=(n=>(n[n.ExpectError=0]="ExpectError",n[n.Ignore=1]="Ignore",n))(vn||{}),os=class{},wo=(n=>(n[n.RootFile=0]="RootFile",n[n.SourceFromProjectReference=1]="SourceFromProjectReference",n[n.OutputFromProjectReference=2]="OutputFromProjectReference",n[n.Import=3]="Import",n[n.ReferenceFile=4]="ReferenceFile",n[n.TypeReferenceDirective=5]="TypeReferenceDirective",n[n.LibFile=6]="LibFile",n[n.LibReferenceDirective=7]="LibReferenceDirective",n[n.AutomaticTypeDirectiveFile=8]="AutomaticTypeDirectiveFile",n))(wo||{}),fg=(n=>(n[n.FilePreprocessingLibReferenceDiagnostic=0]="FilePreprocessingLibReferenceDiagnostic",n[n.FilePreprocessingFileExplainingDiagnostic=1]="FilePreprocessingFileExplainingDiagnostic",n[n.ResolutionDiagnostics=2]="ResolutionDiagnostics",n))(fg||{}),mg=(n=>(n[n.Js=0]="Js",n[n.Dts=1]="Dts",n[n.BuilderSignature=2]="BuilderSignature",n))(mg||{}),gf=(n=>(n[n.Not=0]="Not",n[n.SafeModules=1]="SafeModules",n[n.Completely=2]="Completely",n))(gf||{}),rI=(n=>(n[n.Success=0]="Success",n[n.DiagnosticsPresent_OutputsSkipped=1]="DiagnosticsPresent_OutputsSkipped",n[n.DiagnosticsPresent_OutputsGenerated=2]="DiagnosticsPresent_OutputsGenerated",n[n.InvalidProject_OutputsSkipped=3]="InvalidProject_OutputsSkipped",n[n.ProjectReferenceCycle_OutputsSkipped=4]="ProjectReferenceCycle_OutputsSkipped",n))(rI||{}),gC=(n=>(n[n.Ok=0]="Ok",n[n.NeedsOverride=1]="NeedsOverride",n[n.HasInvalidOverride=2]="HasInvalidOverride",n))(gC||{}),Nb=(n=>(n[n.None=0]="None",n[n.Literal=1]="Literal",n[n.Subtype=2]="Subtype",n))(Nb||{}),zT=(n=>(n[n.None=0]="None",n[n.NoSupertypeReduction=1]="NoSupertypeReduction",n[n.NoConstraintReduction=2]="NoConstraintReduction",n))(zT||{}),Cv=(n=>(n[n.None=0]="None",n[n.Signature=1]="Signature",n[n.NoConstraints=2]="NoConstraints",n[n.Completions=4]="Completions",n[n.SkipBindingPatterns=8]="SkipBindingPatterns",n))(Cv||{}),Pw=(n=>(n[n.None=0]="None",n[n.NoTruncation=1]="NoTruncation",n[n.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",n[n.GenerateNamesForShadowedTypeParams=4]="GenerateNamesForShadowedTypeParams",n[n.UseStructuralFallback=8]="UseStructuralFallback",n[n.ForbidIndexedAccessSymbolReferences=16]="ForbidIndexedAccessSymbolReferences",n[n.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",n[n.UseFullyQualifiedType=64]="UseFullyQualifiedType",n[n.UseOnlyExternalAliasing=128]="UseOnlyExternalAliasing",n[n.SuppressAnyReturnType=256]="SuppressAnyReturnType",n[n.WriteTypeParametersInQualifiedName=512]="WriteTypeParametersInQualifiedName",n[n.MultilineObjectLiterals=1024]="MultilineObjectLiterals",n[n.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",n[n.UseTypeOfFunction=4096]="UseTypeOfFunction",n[n.OmitParameterModifiers=8192]="OmitParameterModifiers",n[n.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",n[n.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",n[n.NoTypeReduction=536870912]="NoTypeReduction",n[n.OmitThisParameter=33554432]="OmitThisParameter",n[n.AllowThisInObjectLiteral=32768]="AllowThisInObjectLiteral",n[n.AllowQualifiedNameInPlaceOfIdentifier=65536]="AllowQualifiedNameInPlaceOfIdentifier",n[n.AllowAnonymousIdentifier=131072]="AllowAnonymousIdentifier",n[n.AllowEmptyUnionOrIntersection=262144]="AllowEmptyUnionOrIntersection",n[n.AllowEmptyTuple=524288]="AllowEmptyTuple",n[n.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",n[n.AllowEmptyIndexInfoType=2097152]="AllowEmptyIndexInfoType",n[n.WriteComputedProps=1073741824]="WriteComputedProps",n[n.NoSyntacticPrinter=-2147483648]="NoSyntacticPrinter",n[n.AllowNodeModulesRelativePaths=67108864]="AllowNodeModulesRelativePaths",n[n.DoNotIncludeSymbolChain=134217728]="DoNotIncludeSymbolChain",n[n.AllowUnresolvedNames=1]="AllowUnresolvedNames",n[n.IgnoreErrors=70221824]="IgnoreErrors",n[n.InObjectTypeLiteral=4194304]="InObjectTypeLiteral",n[n.InTypeAlias=8388608]="InTypeAlias",n[n.InInitialEntityName=16777216]="InInitialEntityName",n))(Pw||{}),Qy=(n=>(n[n.None=0]="None",n[n.NoTruncation=1]="NoTruncation",n[n.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",n[n.GenerateNamesForShadowedTypeParams=4]="GenerateNamesForShadowedTypeParams",n[n.UseStructuralFallback=8]="UseStructuralFallback",n[n.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",n[n.UseFullyQualifiedType=64]="UseFullyQualifiedType",n[n.SuppressAnyReturnType=256]="SuppressAnyReturnType",n[n.MultilineObjectLiterals=1024]="MultilineObjectLiterals",n[n.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",n[n.UseTypeOfFunction=4096]="UseTypeOfFunction",n[n.OmitParameterModifiers=8192]="OmitParameterModifiers",n[n.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",n[n.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",n[n.NoTypeReduction=536870912]="NoTypeReduction",n[n.OmitThisParameter=33554432]="OmitThisParameter",n[n.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",n[n.AddUndefined=131072]="AddUndefined",n[n.WriteArrowStyleSignature=262144]="WriteArrowStyleSignature",n[n.InArrayType=524288]="InArrayType",n[n.InElementType=2097152]="InElementType",n[n.InFirstTypeArgument=4194304]="InFirstTypeArgument",n[n.InTypeAlias=8388608]="InTypeAlias",n[n.NodeBuilderFlagsMask=848330095]="NodeBuilderFlagsMask",n))(Qy||{}),C1=(n=>(n[n.None=0]="None",n[n.WriteTypeParametersOrArguments=1]="WriteTypeParametersOrArguments",n[n.UseOnlyExternalAliasing=2]="UseOnlyExternalAliasing",n[n.AllowAnyNodeKind=4]="AllowAnyNodeKind",n[n.UseAliasDefinedOutsideCurrentScope=8]="UseAliasDefinedOutsideCurrentScope",n[n.WriteComputedProps=16]="WriteComputedProps",n[n.DoNotIncludeSymbolChain=32]="DoNotIncludeSymbolChain",n))(C1||{}),K_=(n=>(n[n.Accessible=0]="Accessible",n[n.NotAccessible=1]="NotAccessible",n[n.CannotBeNamed=2]="CannotBeNamed",n[n.NotResolved=3]="NotResolved",n))(K_||{}),Ow=(n=>(n[n.UnionOrIntersection=0]="UnionOrIntersection",n[n.Spread=1]="Spread",n))(Ow||{}),jp=(n=>(n[n.This=0]="This",n[n.Identifier=1]="Identifier",n[n.AssertsThis=2]="AssertsThis",n[n.AssertsIdentifier=3]="AssertsIdentifier",n))(jp||{}),dy=(n=>(n[n.Unknown=0]="Unknown",n[n.TypeWithConstructSignatureAndValue=1]="TypeWithConstructSignatureAndValue",n[n.VoidNullableOrNeverType=2]="VoidNullableOrNeverType",n[n.NumberLikeType=3]="NumberLikeType",n[n.BigIntLikeType=4]="BigIntLikeType",n[n.StringLikeType=5]="StringLikeType",n[n.BooleanType=6]="BooleanType",n[n.ArrayLikeType=7]="ArrayLikeType",n[n.ESSymbolType=8]="ESSymbolType",n[n.Promise=9]="Promise",n[n.TypeWithCallSignature=10]="TypeWithCallSignature",n[n.ObjectType=11]="ObjectType",n))(dy||{}),A2=(n=>(n[n.None=0]="None",n[n.FunctionScopedVariable=1]="FunctionScopedVariable",n[n.BlockScopedVariable=2]="BlockScopedVariable",n[n.Property=4]="Property",n[n.EnumMember=8]="EnumMember",n[n.Function=16]="Function",n[n.Class=32]="Class",n[n.Interface=64]="Interface",n[n.ConstEnum=128]="ConstEnum",n[n.RegularEnum=256]="RegularEnum",n[n.ValueModule=512]="ValueModule",n[n.NamespaceModule=1024]="NamespaceModule",n[n.TypeLiteral=2048]="TypeLiteral",n[n.ObjectLiteral=4096]="ObjectLiteral",n[n.Method=8192]="Method",n[n.Constructor=16384]="Constructor",n[n.GetAccessor=32768]="GetAccessor",n[n.SetAccessor=65536]="SetAccessor",n[n.Signature=131072]="Signature",n[n.TypeParameter=262144]="TypeParameter",n[n.TypeAlias=524288]="TypeAlias",n[n.ExportValue=1048576]="ExportValue",n[n.Alias=2097152]="Alias",n[n.Prototype=4194304]="Prototype",n[n.ExportStar=8388608]="ExportStar",n[n.Optional=16777216]="Optional",n[n.Transient=33554432]="Transient",n[n.Assignment=67108864]="Assignment",n[n.ModuleExports=134217728]="ModuleExports",n[n.All=-1]="All",n[n.Enum=384]="Enum",n[n.Variable=3]="Variable",n[n.Value=111551]="Value",n[n.Type=788968]="Type",n[n.Namespace=1920]="Namespace",n[n.Module=1536]="Module",n[n.Accessor=98304]="Accessor",n[n.FunctionScopedVariableExcludes=111550]="FunctionScopedVariableExcludes",n[n.BlockScopedVariableExcludes=111551]="BlockScopedVariableExcludes",n[n.ParameterExcludes=111551]="ParameterExcludes",n[n.PropertyExcludes=0]="PropertyExcludes",n[n.EnumMemberExcludes=900095]="EnumMemberExcludes",n[n.FunctionExcludes=110991]="FunctionExcludes",n[n.ClassExcludes=899503]="ClassExcludes",n[n.InterfaceExcludes=788872]="InterfaceExcludes",n[n.RegularEnumExcludes=899327]="RegularEnumExcludes",n[n.ConstEnumExcludes=899967]="ConstEnumExcludes",n[n.ValueModuleExcludes=110735]="ValueModuleExcludes",n[n.NamespaceModuleExcludes=0]="NamespaceModuleExcludes",n[n.MethodExcludes=103359]="MethodExcludes",n[n.GetAccessorExcludes=46015]="GetAccessorExcludes",n[n.SetAccessorExcludes=78783]="SetAccessorExcludes",n[n.AccessorExcludes=13247]="AccessorExcludes",n[n.TypeParameterExcludes=526824]="TypeParameterExcludes",n[n.TypeAliasExcludes=788968]="TypeAliasExcludes",n[n.AliasExcludes=2097152]="AliasExcludes",n[n.ModuleMember=2623475]="ModuleMember",n[n.ExportHasLocal=944]="ExportHasLocal",n[n.BlockScoped=418]="BlockScoped",n[n.PropertyOrAccessor=98308]="PropertyOrAccessor",n[n.ClassMember=106500]="ClassMember",n[n.ExportSupportsDefaultModifier=112]="ExportSupportsDefaultModifier",n[n.ExportDoesNotSupportDefaultModifier=-113]="ExportDoesNotSupportDefaultModifier",n[n.Classifiable=2885600]="Classifiable",n[n.LateBindingContainer=6256]="LateBindingContainer",n))(A2||{}),OI=(n=>(n[n.None=0]="None",n[n.Instantiated=1]="Instantiated",n[n.SyntheticProperty=2]="SyntheticProperty",n[n.SyntheticMethod=4]="SyntheticMethod",n[n.Readonly=8]="Readonly",n[n.ReadPartial=16]="ReadPartial",n[n.WritePartial=32]="WritePartial",n[n.HasNonUniformType=64]="HasNonUniformType",n[n.HasLiteralType=128]="HasLiteralType",n[n.ContainsPublic=256]="ContainsPublic",n[n.ContainsProtected=512]="ContainsProtected",n[n.ContainsPrivate=1024]="ContainsPrivate",n[n.ContainsStatic=2048]="ContainsStatic",n[n.Late=4096]="Late",n[n.ReverseMapped=8192]="ReverseMapped",n[n.OptionalParameter=16384]="OptionalParameter",n[n.RestParameter=32768]="RestParameter",n[n.DeferredType=65536]="DeferredType",n[n.HasNeverType=131072]="HasNeverType",n[n.Mapped=262144]="Mapped",n[n.StripOptional=524288]="StripOptional",n[n.Unresolved=1048576]="Unresolved",n[n.Synthetic=6]="Synthetic",n[n.Discriminant=192]="Discriminant",n[n.Partial=48]="Partial",n))(OI||{}),uA=(n=>(n.Call="__call",n.Constructor="__constructor",n.New="__new",n.Index="__index",n.ExportStar="__export",n.Global="__global",n.Missing="__missing",n.Type="__type",n.Object="__object",n.JSXAttributes="__jsxAttributes",n.Class="__class",n.Function="__function",n.Computed="__computed",n.Resolving="__resolving__",n.ExportEquals="export=",n.Default="default",n.This="this",n.InstantiationExpression="__instantiationExpression",n.ImportAttributes="__importAttributes",n))(uA||{}),VA=(n=>(n[n.None=0]="None",n[n.TypeChecked=1]="TypeChecked",n[n.LexicalThis=2]="LexicalThis",n[n.CaptureThis=4]="CaptureThis",n[n.CaptureNewTarget=8]="CaptureNewTarget",n[n.SuperInstance=16]="SuperInstance",n[n.SuperStatic=32]="SuperStatic",n[n.ContextChecked=64]="ContextChecked",n[n.MethodWithSuperPropertyAccessInAsync=128]="MethodWithSuperPropertyAccessInAsync",n[n.MethodWithSuperPropertyAssignmentInAsync=256]="MethodWithSuperPropertyAssignmentInAsync",n[n.CaptureArguments=512]="CaptureArguments",n[n.EnumValuesComputed=1024]="EnumValuesComputed",n[n.LexicalModuleMergesWithClass=2048]="LexicalModuleMergesWithClass",n[n.LoopWithCapturedBlockScopedBinding=4096]="LoopWithCapturedBlockScopedBinding",n[n.ContainsCapturedBlockScopeBinding=8192]="ContainsCapturedBlockScopeBinding",n[n.CapturedBlockScopedBinding=16384]="CapturedBlockScopedBinding",n[n.BlockScopedBindingInLoop=32768]="BlockScopedBindingInLoop",n[n.NeedsLoopOutParameter=65536]="NeedsLoopOutParameter",n[n.AssignmentsMarked=131072]="AssignmentsMarked",n[n.ContainsConstructorReference=262144]="ContainsConstructorReference",n[n.ConstructorReference=536870912]="ConstructorReference",n[n.ContainsClassWithPrivateIdentifiers=1048576]="ContainsClassWithPrivateIdentifiers",n[n.ContainsSuperPropertyInStaticInitializer=2097152]="ContainsSuperPropertyInStaticInitializer",n[n.InCheckIdentifier=4194304]="InCheckIdentifier",n[n.LazyFlags=539358128]="LazyFlags",n))(VA||{}),Am=(n=>(n[n.Any=1]="Any",n[n.Unknown=2]="Unknown",n[n.String=4]="String",n[n.Number=8]="Number",n[n.Boolean=16]="Boolean",n[n.Enum=32]="Enum",n[n.BigInt=64]="BigInt",n[n.StringLiteral=128]="StringLiteral",n[n.NumberLiteral=256]="NumberLiteral",n[n.BooleanLiteral=512]="BooleanLiteral",n[n.EnumLiteral=1024]="EnumLiteral",n[n.BigIntLiteral=2048]="BigIntLiteral",n[n.ESSymbol=4096]="ESSymbol",n[n.UniqueESSymbol=8192]="UniqueESSymbol",n[n.Void=16384]="Void",n[n.Undefined=32768]="Undefined",n[n.Null=65536]="Null",n[n.Never=131072]="Never",n[n.TypeParameter=262144]="TypeParameter",n[n.Object=524288]="Object",n[n.Union=1048576]="Union",n[n.Intersection=2097152]="Intersection",n[n.Index=4194304]="Index",n[n.IndexedAccess=8388608]="IndexedAccess",n[n.Conditional=16777216]="Conditional",n[n.Substitution=33554432]="Substitution",n[n.NonPrimitive=67108864]="NonPrimitive",n[n.TemplateLiteral=134217728]="TemplateLiteral",n[n.StringMapping=268435456]="StringMapping",n[n.Reserved1=536870912]="Reserved1",n[n.Reserved2=1073741824]="Reserved2",n[n.AnyOrUnknown=3]="AnyOrUnknown",n[n.Nullable=98304]="Nullable",n[n.Literal=2944]="Literal",n[n.Unit=109472]="Unit",n[n.Freshable=2976]="Freshable",n[n.StringOrNumberLiteral=384]="StringOrNumberLiteral",n[n.StringOrNumberLiteralOrUnique=8576]="StringOrNumberLiteralOrUnique",n[n.DefinitelyFalsy=117632]="DefinitelyFalsy",n[n.PossiblyFalsy=117724]="PossiblyFalsy",n[n.Intrinsic=67359327]="Intrinsic",n[n.StringLike=402653316]="StringLike",n[n.NumberLike=296]="NumberLike",n[n.BigIntLike=2112]="BigIntLike",n[n.BooleanLike=528]="BooleanLike",n[n.EnumLike=1056]="EnumLike",n[n.ESSymbolLike=12288]="ESSymbolLike",n[n.VoidLike=49152]="VoidLike",n[n.Primitive=402784252]="Primitive",n[n.DefinitelyNonNullable=470302716]="DefinitelyNonNullable",n[n.DisjointDomains=469892092]="DisjointDomains",n[n.UnionOrIntersection=3145728]="UnionOrIntersection",n[n.StructuredType=3670016]="StructuredType",n[n.TypeVariable=8650752]="TypeVariable",n[n.InstantiableNonPrimitive=58982400]="InstantiableNonPrimitive",n[n.InstantiablePrimitive=406847488]="InstantiablePrimitive",n[n.Instantiable=465829888]="Instantiable",n[n.StructuredOrInstantiable=469499904]="StructuredOrInstantiable",n[n.ObjectFlagsType=3899393]="ObjectFlagsType",n[n.Simplifiable=25165824]="Simplifiable",n[n.Singleton=67358815]="Singleton",n[n.Narrowable=536624127]="Narrowable",n[n.IncludesMask=473694207]="IncludesMask",n[n.IncludesMissingType=262144]="IncludesMissingType",n[n.IncludesNonWideningType=4194304]="IncludesNonWideningType",n[n.IncludesWildcard=8388608]="IncludesWildcard",n[n.IncludesEmptyObject=16777216]="IncludesEmptyObject",n[n.IncludesInstantiable=33554432]="IncludesInstantiable",n[n.IncludesConstrainedTypeVariable=536870912]="IncludesConstrainedTypeVariable",n[n.IncludesError=1073741824]="IncludesError",n[n.NotPrimitiveUnion=36323331]="NotPrimitiveUnion",n))(Am||{}),Vf=(n=>(n[n.None=0]="None",n[n.Class=1]="Class",n[n.Interface=2]="Interface",n[n.Reference=4]="Reference",n[n.Tuple=8]="Tuple",n[n.Anonymous=16]="Anonymous",n[n.Mapped=32]="Mapped",n[n.Instantiated=64]="Instantiated",n[n.ObjectLiteral=128]="ObjectLiteral",n[n.EvolvingArray=256]="EvolvingArray",n[n.ObjectLiteralPatternWithComputedProperties=512]="ObjectLiteralPatternWithComputedProperties",n[n.ReverseMapped=1024]="ReverseMapped",n[n.JsxAttributes=2048]="JsxAttributes",n[n.JSLiteral=4096]="JSLiteral",n[n.FreshLiteral=8192]="FreshLiteral",n[n.ArrayLiteral=16384]="ArrayLiteral",n[n.PrimitiveUnion=32768]="PrimitiveUnion",n[n.ContainsWideningType=65536]="ContainsWideningType",n[n.ContainsObjectOrArrayLiteral=131072]="ContainsObjectOrArrayLiteral",n[n.NonInferrableType=262144]="NonInferrableType",n[n.CouldContainTypeVariablesComputed=524288]="CouldContainTypeVariablesComputed",n[n.CouldContainTypeVariables=1048576]="CouldContainTypeVariables",n[n.ClassOrInterface=3]="ClassOrInterface",n[n.RequiresWidening=196608]="RequiresWidening",n[n.PropagatingFlags=458752]="PropagatingFlags",n[n.InstantiatedMapped=96]="InstantiatedMapped",n[n.ObjectTypeKindMask=1343]="ObjectTypeKindMask",n[n.ContainsSpread=2097152]="ContainsSpread",n[n.ObjectRestType=4194304]="ObjectRestType",n[n.InstantiationExpressionType=8388608]="InstantiationExpressionType",n[n.SingleSignatureType=134217728]="SingleSignatureType",n[n.IsClassInstanceClone=16777216]="IsClassInstanceClone",n[n.IdenticalBaseTypeCalculated=33554432]="IdenticalBaseTypeCalculated",n[n.IdenticalBaseTypeExists=67108864]="IdenticalBaseTypeExists",n[n.IsGenericTypeComputed=2097152]="IsGenericTypeComputed",n[n.IsGenericObjectType=4194304]="IsGenericObjectType",n[n.IsGenericIndexType=8388608]="IsGenericIndexType",n[n.IsGenericType=12582912]="IsGenericType",n[n.ContainsIntersections=16777216]="ContainsIntersections",n[n.IsUnknownLikeUnionComputed=33554432]="IsUnknownLikeUnionComputed",n[n.IsUnknownLikeUnion=67108864]="IsUnknownLikeUnion",n[n.IsNeverIntersectionComputed=16777216]="IsNeverIntersectionComputed",n[n.IsNeverIntersection=33554432]="IsNeverIntersection",n[n.IsConstrainedTypeVariable=67108864]="IsConstrainedTypeVariable",n))(Vf||{}),Yy=(n=>(n[n.Invariant=0]="Invariant",n[n.Covariant=1]="Covariant",n[n.Contravariant=2]="Contravariant",n[n.Bivariant=3]="Bivariant",n[n.Independent=4]="Independent",n[n.VarianceMask=7]="VarianceMask",n[n.Unmeasurable=8]="Unmeasurable",n[n.Unreliable=16]="Unreliable",n[n.AllowsStructuralFallback=24]="AllowsStructuralFallback",n))(Yy||{}),Kh=(n=>(n[n.Required=1]="Required",n[n.Optional=2]="Optional",n[n.Rest=4]="Rest",n[n.Variadic=8]="Variadic",n[n.Fixed=3]="Fixed",n[n.Variable=12]="Variable",n[n.NonRequired=14]="NonRequired",n[n.NonRest=11]="NonRest",n))(Kh||{}),Hy=(n=>(n[n.None=0]="None",n[n.IncludeUndefined=1]="IncludeUndefined",n[n.NoIndexSignatures=2]="NoIndexSignatures",n[n.Writing=4]="Writing",n[n.CacheSymbol=8]="CacheSymbol",n[n.NoTupleBoundsCheck=16]="NoTupleBoundsCheck",n[n.ExpressionPosition=32]="ExpressionPosition",n[n.ReportDeprecated=64]="ReportDeprecated",n[n.SuppressNoImplicitAnyError=128]="SuppressNoImplicitAnyError",n[n.Contextual=256]="Contextual",n[n.Persistent=1]="Persistent",n))(Hy||{}),py=(n=>(n[n.None=0]="None",n[n.StringsOnly=1]="StringsOnly",n[n.NoIndexSignatures=2]="NoIndexSignatures",n[n.NoReducibleCheck=4]="NoReducibleCheck",n))(py||{}),hS=(n=>(n[n.Component=0]="Component",n[n.Function=1]="Function",n[n.Mixed=2]="Mixed",n))(hS||{}),_S=(n=>(n[n.Call=0]="Call",n[n.Construct=1]="Construct",n))(_S||{}),Xy=(n=>(n[n.None=0]="None",n[n.HasRestParameter=1]="HasRestParameter",n[n.HasLiteralTypes=2]="HasLiteralTypes",n[n.Abstract=4]="Abstract",n[n.IsInnerCallChain=8]="IsInnerCallChain",n[n.IsOuterCallChain=16]="IsOuterCallChain",n[n.IsUntypedSignatureInJSFile=32]="IsUntypedSignatureInJSFile",n[n.IsNonInferrable=64]="IsNonInferrable",n[n.IsSignatureCandidateForOverloadFailure=128]="IsSignatureCandidateForOverloadFailure",n[n.PropagatingFlags=167]="PropagatingFlags",n[n.CallChainFlags=24]="CallChainFlags",n))(Xy||{}),BE=(n=>(n[n.String=0]="String",n[n.Number=1]="Number",n))(BE||{}),mv=(n=>(n[n.Simple=0]="Simple",n[n.Array=1]="Array",n[n.Deferred=2]="Deferred",n[n.Function=3]="Function",n[n.Composite=4]="Composite",n[n.Merged=5]="Merged",n))(mv||{}),Mw=(n=>(n[n.None=0]="None",n[n.NakedTypeVariable=1]="NakedTypeVariable",n[n.SpeculativeTuple=2]="SpeculativeTuple",n[n.SubstituteSource=4]="SubstituteSource",n[n.HomomorphicMappedType=8]="HomomorphicMappedType",n[n.PartialHomomorphicMappedType=16]="PartialHomomorphicMappedType",n[n.MappedTypeConstraint=32]="MappedTypeConstraint",n[n.ContravariantConditional=64]="ContravariantConditional",n[n.ReturnType=128]="ReturnType",n[n.LiteralKeyof=256]="LiteralKeyof",n[n.NoConstraints=512]="NoConstraints",n[n.AlwaysStrict=1024]="AlwaysStrict",n[n.MaxValue=2048]="MaxValue",n[n.PriorityImpliesCombination=416]="PriorityImpliesCombination",n[n.Circularity=-1]="Circularity",n))(Mw||{}),hv=(n=>(n[n.None=0]="None",n[n.NoDefault=1]="NoDefault",n[n.AnyDefault=2]="AnyDefault",n[n.SkippedGenericFunction=4]="SkippedGenericFunction",n))(hv||{}),xR=(n=>(n[n.False=0]="False",n[n.Unknown=1]="Unknown",n[n.Maybe=3]="Maybe",n[n.True=-1]="True",n))(xR||{}),qT=(n=>(n[n.None=0]="None",n[n.ExportsProperty=1]="ExportsProperty",n[n.ModuleExports=2]="ModuleExports",n[n.PrototypeProperty=3]="PrototypeProperty",n[n.ThisProperty=4]="ThisProperty",n[n.Property=5]="Property",n[n.Prototype=6]="Prototype",n[n.ObjectDefinePropertyValue=7]="ObjectDefinePropertyValue",n[n.ObjectDefinePropertyExports=8]="ObjectDefinePropertyExports",n[n.ObjectDefinePrototypeProperty=9]="ObjectDefinePrototypeProperty",n))(qT||{}),m1=(n=>(n[n.Warning=0]="Warning",n[n.Error=1]="Error",n[n.Suggestion=2]="Suggestion",n[n.Message=3]="Message",n))(m1||{});function jh(n,c=!0){let u=m1[n.category];return c?u.toLowerCase():u}var Rb=(n=>(n[n.Classic=1]="Classic",n[n.NodeJs=2]="NodeJs",n[n.Node10=2]="Node10",n[n.Node16=3]="Node16",n[n.NodeNext=99]="NodeNext",n[n.Bundler=100]="Bundler",n))(Rb||{}),Qw=(n=>(n[n.Legacy=1]="Legacy",n[n.Auto=2]="Auto",n[n.Force=3]="Force",n))(Qw||{}),An=(n=>(n[n.FixedPollingInterval=0]="FixedPollingInterval",n[n.PriorityPollingInterval=1]="PriorityPollingInterval",n[n.DynamicPriorityPolling=2]="DynamicPriorityPolling",n[n.FixedChunkSizePolling=3]="FixedChunkSizePolling",n[n.UseFsEvents=4]="UseFsEvents",n[n.UseFsEventsOnParentDirectory=5]="UseFsEventsOnParentDirectory",n))(An||{}),h1=(n=>(n[n.UseFsEvents=0]="UseFsEvents",n[n.FixedPollingInterval=1]="FixedPollingInterval",n[n.DynamicPriorityPolling=2]="DynamicPriorityPolling",n[n.FixedChunkSizePolling=3]="FixedChunkSizePolling",n))(h1||{}),d2=(n=>(n[n.FixedInterval=0]="FixedInterval",n[n.PriorityInterval=1]="PriorityInterval",n[n.DynamicPriority=2]="DynamicPriority",n[n.FixedChunkSize=3]="FixedChunkSize",n))(d2||{}),zh=(n=>(n[n.None=0]="None",n[n.CommonJS=1]="CommonJS",n[n.AMD=2]="AMD",n[n.UMD=3]="UMD",n[n.System=4]="System",n[n.ES2015=5]="ES2015",n[n.ES2020=6]="ES2020",n[n.ES2022=7]="ES2022",n[n.ESNext=99]="ESNext",n[n.Node16=100]="Node16",n[n.NodeNext=199]="NodeNext",n[n.Preserve=200]="Preserve",n))(zh||{}),dp=(n=>(n[n.None=0]="None",n[n.Preserve=1]="Preserve",n[n.React=2]="React",n[n.ReactNative=3]="ReactNative",n[n.ReactJSX=4]="ReactJSX",n[n.ReactJSXDev=5]="ReactJSXDev",n))(dp||{}),Yw=(n=>(n[n.Remove=0]="Remove",n[n.Preserve=1]="Preserve",n[n.Error=2]="Error",n))(Yw||{}),yS=(n=>(n[n.CarriageReturnLineFeed=0]="CarriageReturnLineFeed",n[n.LineFeed=1]="LineFeed",n))(yS||{}),$T=(n=>(n[n.Unknown=0]="Unknown",n[n.JS=1]="JS",n[n.JSX=2]="JSX",n[n.TS=3]="TS",n[n.TSX=4]="TSX",n[n.External=5]="External",n[n.JSON=6]="JSON",n[n.Deferred=7]="Deferred",n))($T||{}),Db=(n=>(n[n.ES3=0]="ES3",n[n.ES5=1]="ES5",n[n.ES2015=2]="ES2015",n[n.ES2016=3]="ES2016",n[n.ES2017=4]="ES2017",n[n.ES2018=5]="ES2018",n[n.ES2019=6]="ES2019",n[n.ES2020=7]="ES2020",n[n.ES2021=8]="ES2021",n[n.ES2022=9]="ES2022",n[n.ES2023=10]="ES2023",n[n.ESNext=99]="ESNext",n[n.JSON=100]="JSON",n[n.Latest=99]="Latest",n))(Db||{}),eN=(n=>(n[n.Standard=0]="Standard",n[n.JSX=1]="JSX",n))(eN||{}),G0=(n=>(n[n.None=0]="None",n[n.Recursive=1]="Recursive",n))(G0||{}),iG=(n=>(n[n.EOF=-1]="EOF",n[n.nullCharacter=0]="nullCharacter",n[n.maxAsciiCharacter=127]="maxAsciiCharacter",n[n.lineFeed=10]="lineFeed",n[n.carriageReturn=13]="carriageReturn",n[n.lineSeparator=8232]="lineSeparator",n[n.paragraphSeparator=8233]="paragraphSeparator",n[n.nextLine=133]="nextLine",n[n.space=32]="space",n[n.nonBreakingSpace=160]="nonBreakingSpace",n[n.enQuad=8192]="enQuad",n[n.emQuad=8193]="emQuad",n[n.enSpace=8194]="enSpace",n[n.emSpace=8195]="emSpace",n[n.threePerEmSpace=8196]="threePerEmSpace",n[n.fourPerEmSpace=8197]="fourPerEmSpace",n[n.sixPerEmSpace=8198]="sixPerEmSpace",n[n.figureSpace=8199]="figureSpace",n[n.punctuationSpace=8200]="punctuationSpace",n[n.thinSpace=8201]="thinSpace",n[n.hairSpace=8202]="hairSpace",n[n.zeroWidthSpace=8203]="zeroWidthSpace",n[n.narrowNoBreakSpace=8239]="narrowNoBreakSpace",n[n.ideographicSpace=12288]="ideographicSpace",n[n.mathematicalSpace=8287]="mathematicalSpace",n[n.ogham=5760]="ogham",n[n.replacementCharacter=65533]="replacementCharacter",n[n._=95]="_",n[n.$=36]="$",n[n._0=48]="_0",n[n._1=49]="_1",n[n._2=50]="_2",n[n._3=51]="_3",n[n._4=52]="_4",n[n._5=53]="_5",n[n._6=54]="_6",n[n._7=55]="_7",n[n._8=56]="_8",n[n._9=57]="_9",n[n.a=97]="a",n[n.b=98]="b",n[n.c=99]="c",n[n.d=100]="d",n[n.e=101]="e",n[n.f=102]="f",n[n.g=103]="g",n[n.h=104]="h",n[n.i=105]="i",n[n.j=106]="j",n[n.k=107]="k",n[n.l=108]="l",n[n.m=109]="m",n[n.n=110]="n",n[n.o=111]="o",n[n.p=112]="p",n[n.q=113]="q",n[n.r=114]="r",n[n.s=115]="s",n[n.t=116]="t",n[n.u=117]="u",n[n.v=118]="v",n[n.w=119]="w",n[n.x=120]="x",n[n.y=121]="y",n[n.z=122]="z",n[n.A=65]="A",n[n.B=66]="B",n[n.C=67]="C",n[n.D=68]="D",n[n.E=69]="E",n[n.F=70]="F",n[n.G=71]="G",n[n.H=72]="H",n[n.I=73]="I",n[n.J=74]="J",n[n.K=75]="K",n[n.L=76]="L",n[n.M=77]="M",n[n.N=78]="N",n[n.O=79]="O",n[n.P=80]="P",n[n.Q=81]="Q",n[n.R=82]="R",n[n.S=83]="S",n[n.T=84]="T",n[n.U=85]="U",n[n.V=86]="V",n[n.W=87]="W",n[n.X=88]="X",n[n.Y=89]="Y",n[n.Z=90]="Z",n[n.ampersand=38]="ampersand",n[n.asterisk=42]="asterisk",n[n.at=64]="at",n[n.backslash=92]="backslash",n[n.backtick=96]="backtick",n[n.bar=124]="bar",n[n.caret=94]="caret",n[n.closeBrace=125]="closeBrace",n[n.closeBracket=93]="closeBracket",n[n.closeParen=41]="closeParen",n[n.colon=58]="colon",n[n.comma=44]="comma",n[n.dot=46]="dot",n[n.doubleQuote=34]="doubleQuote",n[n.equals=61]="equals",n[n.exclamation=33]="exclamation",n[n.greaterThan=62]="greaterThan",n[n.hash=35]="hash",n[n.lessThan=60]="lessThan",n[n.minus=45]="minus",n[n.openBrace=123]="openBrace",n[n.openBracket=91]="openBracket",n[n.openParen=40]="openParen",n[n.percent=37]="percent",n[n.plus=43]="plus",n[n.question=63]="question",n[n.semicolon=59]="semicolon",n[n.singleQuote=39]="singleQuote",n[n.slash=47]="slash",n[n.tilde=126]="tilde",n[n.backspace=8]="backspace",n[n.formFeed=12]="formFeed",n[n.byteOrderMark=65279]="byteOrderMark",n[n.tab=9]="tab",n[n.verticalTab=11]="verticalTab",n))(iG||{}),_1=(n=>(n.Ts=".ts",n.Tsx=".tsx",n.Dts=".d.ts",n.Js=".js",n.Jsx=".jsx",n.Json=".json",n.TsBuildInfo=".tsbuildinfo",n.Mjs=".mjs",n.Mts=".mts",n.Dmts=".d.mts",n.Cjs=".cjs",n.Cts=".cts",n.Dcts=".d.cts",n))(_1||{}),xb=(n=>(n[n.None=0]="None",n[n.ContainsTypeScript=1]="ContainsTypeScript",n[n.ContainsJsx=2]="ContainsJsx",n[n.ContainsESNext=4]="ContainsESNext",n[n.ContainsES2022=8]="ContainsES2022",n[n.ContainsES2021=16]="ContainsES2021",n[n.ContainsES2020=32]="ContainsES2020",n[n.ContainsES2019=64]="ContainsES2019",n[n.ContainsES2018=128]="ContainsES2018",n[n.ContainsES2017=256]="ContainsES2017",n[n.ContainsES2016=512]="ContainsES2016",n[n.ContainsES2015=1024]="ContainsES2015",n[n.ContainsGenerator=2048]="ContainsGenerator",n[n.ContainsDestructuringAssignment=4096]="ContainsDestructuringAssignment",n[n.ContainsTypeScriptClassSyntax=8192]="ContainsTypeScriptClassSyntax",n[n.ContainsLexicalThis=16384]="ContainsLexicalThis",n[n.ContainsRestOrSpread=32768]="ContainsRestOrSpread",n[n.ContainsObjectRestOrSpread=65536]="ContainsObjectRestOrSpread",n[n.ContainsComputedPropertyName=131072]="ContainsComputedPropertyName",n[n.ContainsBlockScopedBinding=262144]="ContainsBlockScopedBinding",n[n.ContainsBindingPattern=524288]="ContainsBindingPattern",n[n.ContainsYield=1048576]="ContainsYield",n[n.ContainsAwait=2097152]="ContainsAwait",n[n.ContainsHoistedDeclarationOrCompletion=4194304]="ContainsHoistedDeclarationOrCompletion",n[n.ContainsDynamicImport=8388608]="ContainsDynamicImport",n[n.ContainsClassFields=16777216]="ContainsClassFields",n[n.ContainsDecorators=33554432]="ContainsDecorators",n[n.ContainsPossibleTopLevelAwait=67108864]="ContainsPossibleTopLevelAwait",n[n.ContainsLexicalSuper=134217728]="ContainsLexicalSuper",n[n.ContainsUpdateExpressionForIdentifier=268435456]="ContainsUpdateExpressionForIdentifier",n[n.ContainsPrivateIdentifierInExpression=536870912]="ContainsPrivateIdentifierInExpression",n[n.HasComputedFlags=-2147483648]="HasComputedFlags",n[n.AssertTypeScript=1]="AssertTypeScript",n[n.AssertJsx=2]="AssertJsx",n[n.AssertESNext=4]="AssertESNext",n[n.AssertES2022=8]="AssertES2022",n[n.AssertES2021=16]="AssertES2021",n[n.AssertES2020=32]="AssertES2020",n[n.AssertES2019=64]="AssertES2019",n[n.AssertES2018=128]="AssertES2018",n[n.AssertES2017=256]="AssertES2017",n[n.AssertES2016=512]="AssertES2016",n[n.AssertES2015=1024]="AssertES2015",n[n.AssertGenerator=2048]="AssertGenerator",n[n.AssertDestructuringAssignment=4096]="AssertDestructuringAssignment",n[n.OuterExpressionExcludes=-2147483648]="OuterExpressionExcludes",n[n.PropertyAccessExcludes=-2147483648]="PropertyAccessExcludes",n[n.NodeExcludes=-2147483648]="NodeExcludes",n[n.ArrowFunctionExcludes=-2072174592]="ArrowFunctionExcludes",n[n.FunctionExcludes=-1937940480]="FunctionExcludes",n[n.ConstructorExcludes=-1937948672]="ConstructorExcludes",n[n.MethodOrAccessorExcludes=-2005057536]="MethodOrAccessorExcludes",n[n.PropertyExcludes=-2013249536]="PropertyExcludes",n[n.ClassExcludes=-2147344384]="ClassExcludes",n[n.ModuleExcludes=-1941676032]="ModuleExcludes",n[n.TypeExcludes=-2]="TypeExcludes",n[n.ObjectLiteralExcludes=-2147278848]="ObjectLiteralExcludes",n[n.ArrayLiteralOrCallOrNewExcludes=-2147450880]="ArrayLiteralOrCallOrNewExcludes",n[n.VariableDeclarationListExcludes=-2146893824]="VariableDeclarationListExcludes",n[n.ParameterExcludes=-2147483648]="ParameterExcludes",n[n.CatchClauseExcludes=-2147418112]="CatchClauseExcludes",n[n.BindingPatternExcludes=-2147450880]="BindingPatternExcludes",n[n.ContainsLexicalThisOrSuper=134234112]="ContainsLexicalThisOrSuper",n[n.PropertyNamePropagatingFlags=134234112]="PropertyNamePropagatingFlags",n))(xb||{}),Eh=(n=>(n[n.TabStop=0]="TabStop",n[n.Placeholder=1]="Placeholder",n[n.Choice=2]="Choice",n[n.Variable=3]="Variable",n))(Eh||{}),y1=(n=>(n[n.None=0]="None",n[n.SingleLine=1]="SingleLine",n[n.MultiLine=2]="MultiLine",n[n.AdviseOnEmitNode=4]="AdviseOnEmitNode",n[n.NoSubstitution=8]="NoSubstitution",n[n.CapturesThis=16]="CapturesThis",n[n.NoLeadingSourceMap=32]="NoLeadingSourceMap",n[n.NoTrailingSourceMap=64]="NoTrailingSourceMap",n[n.NoSourceMap=96]="NoSourceMap",n[n.NoNestedSourceMaps=128]="NoNestedSourceMaps",n[n.NoTokenLeadingSourceMaps=256]="NoTokenLeadingSourceMaps",n[n.NoTokenTrailingSourceMaps=512]="NoTokenTrailingSourceMaps",n[n.NoTokenSourceMaps=768]="NoTokenSourceMaps",n[n.NoLeadingComments=1024]="NoLeadingComments",n[n.NoTrailingComments=2048]="NoTrailingComments",n[n.NoComments=3072]="NoComments",n[n.NoNestedComments=4096]="NoNestedComments",n[n.HelperName=8192]="HelperName",n[n.ExportName=16384]="ExportName",n[n.LocalName=32768]="LocalName",n[n.InternalName=65536]="InternalName",n[n.Indented=131072]="Indented",n[n.NoIndentation=262144]="NoIndentation",n[n.AsyncFunctionBody=524288]="AsyncFunctionBody",n[n.ReuseTempVariableScope=1048576]="ReuseTempVariableScope",n[n.CustomPrologue=2097152]="CustomPrologue",n[n.NoHoisting=4194304]="NoHoisting",n[n.Iterator=8388608]="Iterator",n[n.NoAsciiEscaping=16777216]="NoAsciiEscaping",n))(y1||{}),vE=(n=>(n[n.None=0]="None",n[n.TypeScriptClassWrapper=1]="TypeScriptClassWrapper",n[n.NeverApplyImportHelper=2]="NeverApplyImportHelper",n[n.IgnoreSourceNewlines=4]="IgnoreSourceNewlines",n[n.Immutable=8]="Immutable",n[n.IndirectCall=16]="IndirectCall",n[n.TransformPrivateStaticElements=32]="TransformPrivateStaticElements",n))(vE||{}),SE=(n=>(n[n.Classes=2]="Classes",n[n.ForOf=2]="ForOf",n[n.Generators=2]="Generators",n[n.Iteration=2]="Iteration",n[n.SpreadElements=2]="SpreadElements",n[n.RestElements=2]="RestElements",n[n.TaggedTemplates=2]="TaggedTemplates",n[n.DestructuringAssignment=2]="DestructuringAssignment",n[n.BindingPatterns=2]="BindingPatterns",n[n.ArrowFunctions=2]="ArrowFunctions",n[n.BlockScopedVariables=2]="BlockScopedVariables",n[n.ObjectAssign=2]="ObjectAssign",n[n.RegularExpressionFlagsUnicode=2]="RegularExpressionFlagsUnicode",n[n.RegularExpressionFlagsSticky=2]="RegularExpressionFlagsSticky",n[n.Exponentiation=3]="Exponentiation",n[n.AsyncFunctions=4]="AsyncFunctions",n[n.ForAwaitOf=5]="ForAwaitOf",n[n.AsyncGenerators=5]="AsyncGenerators",n[n.AsyncIteration=5]="AsyncIteration",n[n.ObjectSpreadRest=5]="ObjectSpreadRest",n[n.RegularExpressionFlagsDotAll=5]="RegularExpressionFlagsDotAll",n[n.BindinglessCatch=6]="BindinglessCatch",n[n.BigInt=7]="BigInt",n[n.NullishCoalesce=7]="NullishCoalesce",n[n.OptionalChaining=7]="OptionalChaining",n[n.LogicalAssignment=8]="LogicalAssignment",n[n.TopLevelAwait=9]="TopLevelAwait",n[n.ClassFields=9]="ClassFields",n[n.PrivateNamesAndClassStaticBlocks=9]="PrivateNamesAndClassStaticBlocks",n[n.RegularExpressionFlagsHasIndices=9]="RegularExpressionFlagsHasIndices",n[n.ShebangComments=99]="ShebangComments",n[n.UsingAndAwaitUsing=99]="UsingAndAwaitUsing",n[n.ClassAndClassElementDecorators=99]="ClassAndClassElementDecorators",n[n.RegularExpressionFlagsUnicodeSets=99]="RegularExpressionFlagsUnicodeSets",n))(SE||{}),bS=(n=>(n[n.Extends=1]="Extends",n[n.Assign=2]="Assign",n[n.Rest=4]="Rest",n[n.Decorate=8]="Decorate",n[n.ESDecorateAndRunInitializers=8]="ESDecorateAndRunInitializers",n[n.Metadata=16]="Metadata",n[n.Param=32]="Param",n[n.Awaiter=64]="Awaiter",n[n.Generator=128]="Generator",n[n.Values=256]="Values",n[n.Read=512]="Read",n[n.SpreadArray=1024]="SpreadArray",n[n.Await=2048]="Await",n[n.AsyncGenerator=4096]="AsyncGenerator",n[n.AsyncDelegator=8192]="AsyncDelegator",n[n.AsyncValues=16384]="AsyncValues",n[n.ExportStar=32768]="ExportStar",n[n.ImportStar=65536]="ImportStar",n[n.ImportDefault=131072]="ImportDefault",n[n.MakeTemplateObject=262144]="MakeTemplateObject",n[n.ClassPrivateFieldGet=524288]="ClassPrivateFieldGet",n[n.ClassPrivateFieldSet=1048576]="ClassPrivateFieldSet",n[n.ClassPrivateFieldIn=2097152]="ClassPrivateFieldIn",n[n.SetFunctionName=4194304]="SetFunctionName",n[n.PropKey=8388608]="PropKey",n[n.AddDisposableResourceAndDisposeResources=16777216]="AddDisposableResourceAndDisposeResources",n[n.FirstEmitHelper=1]="FirstEmitHelper",n[n.LastEmitHelper=16777216]="LastEmitHelper",n[n.ForOfIncludes=256]="ForOfIncludes",n[n.ForAwaitOfIncludes=16384]="ForAwaitOfIncludes",n[n.AsyncGeneratorIncludes=6144]="AsyncGeneratorIncludes",n[n.AsyncDelegatorIncludes=26624]="AsyncDelegatorIncludes",n[n.SpreadIncludes=1536]="SpreadIncludes",n))(bS||{}),Jy=(n=>(n[n.SourceFile=0]="SourceFile",n[n.Expression=1]="Expression",n[n.IdentifierName=2]="IdentifierName",n[n.MappedTypeParameter=3]="MappedTypeParameter",n[n.Unspecified=4]="Unspecified",n[n.EmbeddedStatement=5]="EmbeddedStatement",n[n.JsxAttributeValue=6]="JsxAttributeValue",n[n.ImportTypeNodeAttributes=7]="ImportTypeNodeAttributes",n))(Jy||{}),qh=(n=>(n[n.Parentheses=1]="Parentheses",n[n.TypeAssertions=2]="TypeAssertions",n[n.NonNullAssertions=4]="NonNullAssertions",n[n.PartiallyEmittedExpressions=8]="PartiallyEmittedExpressions",n[n.Assertions=6]="Assertions",n[n.All=15]="All",n[n.ExcludeJSDocTypeAssertion=16]="ExcludeJSDocTypeAssertion",n))(qh||{}),tN=(n=>(n[n.None=0]="None",n[n.InParameters=1]="InParameters",n[n.VariablesHoistedInParameters=2]="VariablesHoistedInParameters",n))(tN||{}),_v=(n=>(n[n.None=0]="None",n[n.SingleLine=0]="SingleLine",n[n.MultiLine=1]="MultiLine",n[n.PreserveLines=2]="PreserveLines",n[n.LinesMask=3]="LinesMask",n[n.NotDelimited=0]="NotDelimited",n[n.BarDelimited=4]="BarDelimited",n[n.AmpersandDelimited=8]="AmpersandDelimited",n[n.CommaDelimited=16]="CommaDelimited",n[n.AsteriskDelimited=32]="AsteriskDelimited",n[n.DelimitersMask=60]="DelimitersMask",n[n.AllowTrailingComma=64]="AllowTrailingComma",n[n.Indented=128]="Indented",n[n.SpaceBetweenBraces=256]="SpaceBetweenBraces",n[n.SpaceBetweenSiblings=512]="SpaceBetweenSiblings",n[n.Braces=1024]="Braces",n[n.Parenthesis=2048]="Parenthesis",n[n.AngleBrackets=4096]="AngleBrackets",n[n.SquareBrackets=8192]="SquareBrackets",n[n.BracketsMask=15360]="BracketsMask",n[n.OptionalIfUndefined=16384]="OptionalIfUndefined",n[n.OptionalIfEmpty=32768]="OptionalIfEmpty",n[n.Optional=49152]="Optional",n[n.PreferNewLine=65536]="PreferNewLine",n[n.NoTrailingNewLine=131072]="NoTrailingNewLine",n[n.NoInterveningComments=262144]="NoInterveningComments",n[n.NoSpaceIfEmpty=524288]="NoSpaceIfEmpty",n[n.SingleElement=1048576]="SingleElement",n[n.SpaceAfterList=2097152]="SpaceAfterList",n[n.Modifiers=2359808]="Modifiers",n[n.HeritageClauses=512]="HeritageClauses",n[n.SingleLineTypeLiteralMembers=768]="SingleLineTypeLiteralMembers",n[n.MultiLineTypeLiteralMembers=32897]="MultiLineTypeLiteralMembers",n[n.SingleLineTupleTypeElements=528]="SingleLineTupleTypeElements",n[n.MultiLineTupleTypeElements=657]="MultiLineTupleTypeElements",n[n.UnionTypeConstituents=516]="UnionTypeConstituents",n[n.IntersectionTypeConstituents=520]="IntersectionTypeConstituents",n[n.ObjectBindingPatternElements=525136]="ObjectBindingPatternElements",n[n.ArrayBindingPatternElements=524880]="ArrayBindingPatternElements",n[n.ObjectLiteralExpressionProperties=526226]="ObjectLiteralExpressionProperties",n[n.ImportAttributes=526226]="ImportAttributes",n[n.ImportClauseEntries=526226]="ImportClauseEntries",n[n.ArrayLiteralExpressionElements=8914]="ArrayLiteralExpressionElements",n[n.CommaListElements=528]="CommaListElements",n[n.CallExpressionArguments=2576]="CallExpressionArguments",n[n.NewExpressionArguments=18960]="NewExpressionArguments",n[n.TemplateExpressionSpans=262144]="TemplateExpressionSpans",n[n.SingleLineBlockStatements=768]="SingleLineBlockStatements",n[n.MultiLineBlockStatements=129]="MultiLineBlockStatements",n[n.VariableDeclarationList=528]="VariableDeclarationList",n[n.SingleLineFunctionBodyStatements=768]="SingleLineFunctionBodyStatements",n[n.MultiLineFunctionBodyStatements=1]="MultiLineFunctionBodyStatements",n[n.ClassHeritageClauses=0]="ClassHeritageClauses",n[n.ClassMembers=129]="ClassMembers",n[n.InterfaceMembers=129]="InterfaceMembers",n[n.EnumMembers=145]="EnumMembers",n[n.CaseBlockClauses=129]="CaseBlockClauses",n[n.NamedImportsOrExportsElements=525136]="NamedImportsOrExportsElements",n[n.JsxElementOrFragmentChildren=262144]="JsxElementOrFragmentChildren",n[n.JsxElementAttributes=262656]="JsxElementAttributes",n[n.CaseOrDefaultClauseStatements=163969]="CaseOrDefaultClauseStatements",n[n.HeritageClauseTypes=528]="HeritageClauseTypes",n[n.SourceFileStatements=131073]="SourceFileStatements",n[n.Decorators=2146305]="Decorators",n[n.TypeArguments=53776]="TypeArguments",n[n.TypeParameters=53776]="TypeParameters",n[n.Parameters=2576]="Parameters",n[n.IndexSignatureParameters=8848]="IndexSignatureParameters",n[n.JSDocComment=33]="JSDocComment",n))(_v||{}),yv=(n=>(n[n.None=0]="None",n[n.TripleSlashXML=1]="TripleSlashXML",n[n.SingleLine=2]="SingleLine",n[n.MultiLine=4]="MultiLine",n[n.All=7]="All",n[n.Default=7]="Default",n))(yv||{}),rN={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}},fx=(n=>(n[n.ParseAll=0]="ParseAll",n[n.ParseNone=1]="ParseNone",n[n.ParseForTypeErrors=2]="ParseForTypeErrors",n[n.ParseForTypeInfo=3]="ParseForTypeInfo",n))(fx||{});function Bh(n){let c=5381;for(let u=0;u(n[n.Created=0]="Created",n[n.Changed=1]="Changed",n[n.Deleted=2]="Deleted",n))(Hw||{}),Wa=(n=>(n[n.High=2e3]="High",n[n.Medium=500]="Medium",n[n.Low=250]="Low",n))(Wa||{}),EA=new Date(0);function hd(n,c){return n.getModifiedTime(c)||EA}function nI(n){return{250:n.Low,500:n.Medium,2e3:n.High}}var F0={Low:32,Medium:64,High:256},mB=nI(F0),Pp=nI(F0);function ES(n){if(!n.getEnvironmentVariable)return;let c=I("TSC_WATCH_POLLINGINTERVAL",Wa);mB=h("TSC_WATCH_POLLINGCHUNKSIZE",F0)||mB,Pp=h("TSC_WATCH_UNCHANGEDPOLLTHRESHOLDS",F0)||Pp;function u(b,R){return n.getEnvironmentVariable(`${b}_${R.toUpperCase()}`)}function d(b){let R;return N("Low"),N("Medium"),N("High"),R;function N(V){let P=u(b,V);P&&((R||(R={}))[V]=Number(P))}}function I(b,R){let N=d(b);if(N)return V("Low"),V("Medium"),V("High"),!0;return!1;function V(P){R[P]=N[P]||R[P]}}function h(b,R){let N=d(b);return(c||N)&&nI(N?{...R,...N}:R)}}function dm(n,c,u,d,I){let h=u;for(let R=c.length;d&&R;b(),R--){let N=c[u];if(N){if(N.isClosed){c[u]=void 0;continue}}else continue;d--;let V=BS(N,hd(n,N.fileName));if(N.isClosed){c[u]=void 0;continue}I?.(N,u,V),c[u]&&(h{Ne.isClosed=!0,Oy(c,Ne)}}}function R(de){let Be=[];return Be.pollingInterval=de,Be.pollIndex=0,Be.pollScheduled=!1,Be}function N(de,Be){Be.pollIndex=P(Be,Be.pollingInterval,Be.pollIndex,mB[Be.pollingInterval]),Be.length?Ae(Be.pollingInterval):(w.assert(Be.pollIndex===0),Be.pollScheduled=!1)}function V(de,Be){P(u,250,0,u.length),N(de,Be),!Be.pollScheduled&&u.length&&Ae(250)}function P(de,Be,Fe,Ne){return dm(n,de,Fe,Ne,Qe);function Qe(De,lt,Le){Le?(De.unchangedPolls=0,de!==u&&(de[lt]=void 0,re(De))):De.unchangedPolls!==Pp[Be]?De.unchangedPolls++:de===u?(De.unchangedPolls=1,de[lt]=void 0,te(De,250)):Be!==2e3&&(De.unchangedPolls++,de[lt]=void 0,te(De,Be===250?500:2e3))}}function M(de){switch(de){case 250:return d;case 500:return I;case 2e3:return h}}function te(de,Be){M(Be).push(de),ue(Be)}function re(de){u.push(de),ue(250)}function ue(de){M(de).pollScheduled||Ae(de)}function Ae(de){M(de).pollScheduled=n.setTimeout(de===250?V:N,de,de===250?"pollLowPollingIntervalQueue":"pollPollingIntervalQueue",M(de))}}function B_(n,c,u,d){let I=ec(),h=d?new Map:void 0,b=new Map,R=tA(c);return N;function N(P,M,te,re){let ue=R(P);I.add(ue,M).length===1&&h&&h.set(ue,u(P)||EA);let Ae=aa(ue)||".",de=b.get(Ae)||V(aa(P)||".",Ae,re);return de.referenceCount++,{close:()=>{de.referenceCount===1?(de.close(),b.delete(Ae)):de.referenceCount--,I.remove(ue,M)}}}function V(P,M,te){let re=n(P,1,(ue,Ae)=>{if(!Xa(Ae))return;let de=Oc(Ae,P),Be=R(de),Fe=de&&I.get(Be);if(Fe){let Ne,Qe=1;if(h){let De=h.get(Be);if(ue==="change"&&(Ne=u(de)||EA,Ne.getTime()===De.getTime()))return;Ne||(Ne=u(de)||EA),h.set(Be,Ne),De===EA?Qe=0:Ne===EA&&(Qe=2)}for(let De of Fe)De(de,Qe,Ne)}},!1,500,te);return re.referenceCount=0,b.set(M,re),re}}function p2(n){let c=[],u=0,d;return I;function I(R,N){let V={fileName:R,callback:N,mtime:hd(n,R)};return c.push(V),b(),{close:()=>{V.isClosed=!0,Oy(c,V)}}}function h(){d=void 0,u=dm(n,c,u,mB[250]),b()}function b(){!c.length||d||(d=n.setTimeout(h,2e3,"pollQueue"))}}function hB(n,c,u,d,I){let b=tA(c)(u),R=n.get(b);return R?R.callbacks.push(d):n.set(b,{watcher:I((N,V,P)=>{var M;return(M=n.get(b))==null?void 0:M.callbacks.slice().forEach(te=>te(N,V,P))}),callbacks:[d]}),{close:()=>{let N=n.get(b);N&&(!eA(N.callbacks,d)||N.callbacks.length||(n.delete(b),ZB(N)))}}}function BS(n,c){let u=n.mtime.getTime(),d=c.getTime();return u!==d?(n.mtime=c,n.callback(n.fileName,bv(u,d),c),!0):!1}function bv(n,c){return n===0?0:c===0?2:1}var vh=["/node_modules/.","/.git","/.#"],Oo=oc;function Uy(n){return Oo(n)}function kb(n){Oo=n}function TI({watchDirectory:n,useCaseSensitiveFileNames:c,getCurrentDirectory:u,getAccessibleSortedChildDirectories:d,fileSystemEntryExists:I,realpath:h,setTimeout:b,clearTimeout:R}){let N=new Map,V=ec(),P=new Map,M,te=zl(!c),re=tA(c);return(je,st,nt,qe)=>nt?ue(je,qe,st):n(je,st,nt,qe);function ue(je,st,nt,qe){let it=re(je),It=N.get(it);It?It.refCount++:(It={watcher:n(je,wt=>{var vt;lt(wt,st)||(st?.synchronousWatchDirectory?((vt=N.get(it))!=null&&vt.targetWatcher||Ae(je,it,wt),De(je,it,st)):de(je,it,wt,st))},!1,st),refCount:1,childWatches:v,targetWatcher:void 0,links:void 0},N.set(it,It),De(je,it,st)),qe&&(It.links??(It.links=new Set)).add(qe);let dt=nt&&{dirName:je,callback:nt};return dt&&V.add(it,dt),{dirName:je,close:()=>{var wt;let vt=w.checkDefined(N.get(it));dt&&V.remove(it,dt),qe&&((wt=vt.links)==null||wt.delete(qe)),vt.refCount--,!vt.refCount&&(N.delete(it),vt.links=void 0,ZB(vt),Qe(vt),vt.childWatches.forEach(RB))}}}function Ae(je,st,nt,qe){var it,It;let dt,wt;Xa(nt)?dt=nt:wt=nt,V.forEach((vt,Ye)=>{if(!(wt&&wt.get(Ye)===!0)&&(Ye===st||uc(st,Ye)&&st[Ye.length]===qu))if(wt)if(qe){let ht=wt.get(Ye);ht?ht.push(...qe):wt.set(Ye,qe.slice())}else wt.set(Ye,!0);else vt.forEach(({callback:ht})=>ht(dt))}),(It=(it=N.get(st))==null?void 0:it.links)==null||It.forEach(vt=>{let Ye=ht=>xo(vt,fp(je,ht,re));wt?Ae(vt,re(vt),wt,qe?.map(Ye)):Ae(vt,re(vt),Ye(dt))})}function de(je,st,nt,qe){let it=N.get(st);if(it&&I(je,1)){Be(je,st,nt,qe);return}Ae(je,st,nt),Qe(it),Ne(it)}function Be(je,st,nt,qe){let it=P.get(st);it?it.fileNames.push(nt):P.set(st,{dirName:je,options:qe,fileNames:[nt]}),M&&(R(M),M=void 0),M=b(Fe,1e3,"timerToUpdateChildWatches")}function Fe(){var je;M=void 0,Uy(`sysLog:: onTimerToUpdateChildWatches:: ${P.size}`);let st=ql(),nt=new Map;for(;!M&&P.size;){let it=P.entries().next();w.assert(!it.done);let{value:[It,{dirName:dt,options:wt,fileNames:vt}]}=it;P.delete(It);let Ye=De(dt,It,wt);(je=N.get(It))!=null&&je.targetWatcher||Ae(dt,It,nt,Ye?void 0:vt)}Uy(`sysLog:: invokingWatchers:: Elapsed:: ${ql()-st}ms:: ${P.size}`),V.forEach((it,It)=>{let dt=nt.get(It);dt&&it.forEach(({callback:wt,dirName:vt})=>{Ra(dt)?dt.forEach(wt):wt(vt)})});let qe=ql()-st;Uy(`sysLog:: Elapsed:: ${qe}ms:: onTimerToUpdateChildWatches:: ${P.size} ${M}`)}function Ne(je){if(!je)return;let st=je.childWatches;je.childWatches=v;for(let nt of st)nt.close(),Ne(N.get(re(nt.dirName)))}function Qe(je){je?.targetWatcher&&(je.targetWatcher.close(),je.targetWatcher=void 0)}function De(je,st,nt){let qe=N.get(st);if(!qe)return!1;let it=Mc(h(je)),It,dt;return te(it,je)===0?It=PI(I(je,1)?tr(d(je),Ye=>{let ht=Oc(Ye,je);return!lt(ht,nt)&&te(ht,Mc(h(ht)))===0?ht:void 0}):v,qe.childWatches,(Ye,ht)=>te(Ye,ht.dirName),wt,RB,vt):qe.targetWatcher&&te(it,qe.targetWatcher.dirName)===0?(It=!1,w.assert(qe.childWatches===v)):(Qe(qe),qe.targetWatcher=ue(it,nt,void 0,je),qe.childWatches.forEach(RB),It=!0),qe.childWatches=dt||v,It;function wt(Ye){let ht=ue(Ye,nt);vt(ht)}function vt(Ye){(dt||(dt=[])).push(Ye)}}function lt(je,st){return lr(vh,nt=>Le(je,nt))||E1(je,st,c,u)}function Le(je,st){return je.includes(st)?!0:c?!1:re(je).includes(st)}}var j_=(n=>(n[n.File=0]="File",n[n.Directory=1]="Directory",n))(j_||{});function f2(n){return(c,u,d)=>n(u===1?"change":"rename","",d)}function b1(n,c,u){return(d,I,h)=>{d==="rename"?(h||(h=u(n)||EA),c(n,h!==EA?0:2,h)):c(n,1,h)}}function E1(n,c,u,d){return(c?.excludeDirectories||c?.excludeFiles)&&(_ke(n,c?.excludeFiles,u,d())||_ke(n,c?.excludeDirectories,u,d()))}function Z0(n,c,u,d,I){return(h,b)=>{if(h==="rename"){let R=b?Mc(xo(n,b)):n;(!b||!E1(R,u,d,I))&&c(R)}}}function Sh({pollingWatchFileWorker:n,getModifiedTime:c,setTimeout:u,clearTimeout:d,fsWatchWorker:I,fileSystemEntryExists:h,useCaseSensitiveFileNames:b,getCurrentDirectory:R,fsSupportsRecursiveFsWatch:N,getAccessibleSortedChildDirectories:V,realpath:P,tscWatchFile:M,useNonPollingWatchers:te,tscWatchDirectory:re,inodeWatching:ue,fsWatchWithTimestamp:Ae,sysLog:de}){let Be=new Map,Fe=new Map,Ne=new Map,Qe,De,lt,Le,je=!1;return{watchFile:st,watchDirectory:dt};function st(Tt,Lt,kt,Zt){Zt=it(Zt,te);let Dr=w.checkDefined(Zt.watchFile);switch(Dr){case 0:return Ye(Tt,Lt,250,void 0);case 1:return Ye(Tt,Lt,kt,void 0);case 2:return nt()(Tt,Lt,kt,void 0);case 3:return qe()(Tt,Lt,void 0,void 0);case 4:return ht(Tt,0,b1(Tt,Lt,c),!1,kt,h_e(Zt));case 5:return lt||(lt=B_(ht,b,c,Ae)),lt(Tt,Lt,kt,h_e(Zt));default:w.assertNever(Dr)}}function nt(){return Qe||(Qe=$h({getModifiedTime:c,setTimeout:u}))}function qe(){return De||(De=p2({getModifiedTime:c,setTimeout:u}))}function it(Tt,Lt){if(Tt&&Tt.watchFile!==void 0)return Tt;switch(M){case"PriorityPollingInterval":return{watchFile:1};case"DynamicPriorityPolling":return{watchFile:2};case"UseFsEvents":return It(4,1,Tt);case"UseFsEventsWithFallbackDynamicPolling":return It(4,2,Tt);case"UseFsEventsOnParentDirectory":Lt=!0;default:return Lt?It(5,1,Tt):{watchFile:4}}}function It(Tt,Lt,kt){let Zt=kt?.fallbackPolling;return{watchFile:Tt,fallbackPolling:Zt===void 0?Lt:Zt}}function dt(Tt,Lt,kt,Zt){return N?ht(Tt,1,Z0(Tt,Lt,Zt,b,R),kt,500,h_e(Zt)):(Le||(Le=TI({useCaseSensitiveFileNames:b,getCurrentDirectory:R,fileSystemEntryExists:h,getAccessibleSortedChildDirectories:V,watchDirectory:wt,realpath:P,setTimeout:u,clearTimeout:d})),Le(Tt,Lt,kt,Zt))}function wt(Tt,Lt,kt,Zt){w.assert(!kt);let Dr=vt(Zt),jt=w.checkDefined(Dr.watchDirectory);switch(jt){case 1:return Ye(Tt,()=>Lt(Tt),500,void 0);case 2:return nt()(Tt,()=>Lt(Tt),500,void 0);case 3:return qe()(Tt,()=>Lt(Tt),void 0,void 0);case 0:return ht(Tt,1,Z0(Tt,Lt,Zt,b,R),kt,500,h_e(Dr));default:w.assertNever(jt)}}function vt(Tt){if(Tt&&Tt.watchDirectory!==void 0)return Tt;switch(re){case"RecursiveDirectoryUsingFsWatchFile":return{watchDirectory:1};case"RecursiveDirectoryUsingDynamicPriorityPolling":return{watchDirectory:2};default:let Lt=Tt?.fallbackPolling;return{watchDirectory:0,fallbackPolling:Lt!==void 0?Lt:void 0}}}function Ye(Tt,Lt,kt,Zt){return hB(Be,b,Tt,Lt,Dr=>n(Tt,Dr,kt,Zt))}function ht(Tt,Lt,kt,Zt,Dr,jt){return hB(Zt?Ne:Fe,b,Tt,kt,mr=>Et(Tt,Lt,mr,Zt,Dr,jt))}function Et(Tt,Lt,kt,Zt,Dr,jt){let mr,Pt;ue&&(mr=Tt.substring(Tt.lastIndexOf(qu)),Pt=mr.slice(qu.length));let Vr=h(Tt,Lt)?pr():bi();return{close:()=>{Vr&&(Vr.close(),Vr=void 0)}};function Yr(Pi){Vr&&(de(`sysLog:: ${Tt}:: Changing watcher to ${Pi===pr?"Present":"Missing"}FileSystemEntryWatcher`),Vr.close(),Vr=Pi())}function pr(){if(je)return de(`sysLog:: ${Tt}:: Defaulting to watchFile`),$n();try{let Pi=(Lt===1||!Ae?I:Kt)(Tt,Zt,ue?zr:kt);return Pi.on("error",()=>{kt("rename",""),Yr(bi)}),Pi}catch(Pi){return je||(je=Pi.code==="ENOSPC"),de(`sysLog:: ${Tt}:: Changing to watchFile`),$n()}}function zr(Pi,Ns){let gi;if(Ns&&pl(Ns,"~")&&(gi=Ns,Ns=Ns.slice(0,Ns.length-1)),Pi==="rename"&&(!Ns||Ns===Pt||pl(Ns,mr))){let jn=c(Tt)||EA;gi&&kt(Pi,gi,jn),kt(Pi,Ns,jn),ue?Yr(jn===EA?bi:pr):jn===EA&&Yr(bi)}else gi&&kt(Pi,gi),kt(Pi,Ns)}function $n(){return st(Tt,f2(kt),Dr,jt)}function bi(){return st(Tt,(Pi,Ns,gi)=>{Ns===0&&(gi||(gi=c(Tt)||EA),gi!==EA&&(kt("rename","",gi),Yr(pr)))},Dr,jt)}}function Kt(Tt,Lt,kt){let Zt=c(Tt)||EA;return I(Tt,Lt,(Dr,jt,mr)=>{Dr==="change"&&(mr||(mr=c(Tt)||EA),mr.getTime()===Zt.getTime())||(Zt=mr||c(Tt)||EA,kt(Dr,jt,Zt))})}}function L0(n){let c=n.writeFile;n.writeFile=(u,d,I)=>Dme(u,d,!!I,(h,b,R)=>c.call(n,h,b,R),h=>n.createDirectory(h),h=>n.directoryExists(h))}var _d=(()=>{let n="\uFEFF";function c(){let d=/^native |^\([^)]+\)$|^(internal[\\/]|[a-zA-Z0-9_\s]+(\.js)?$)/,I=Dt("fs"),h=Dt("path"),b=Dt("os"),R;try{R=Dt("crypto")}catch{R=void 0}let N,V="./profile.cpuprofile",P=process.platform==="darwin",M=process.platform==="linux"||P,te=b.platform(),re=st(),ue=I.realpathSync.native?process.platform==="win32"?Lt:I.realpathSync.native:I.realpathSync,Ae=__filename.endsWith("sys.js")?h.join(h.dirname(__dirname),"__fake__.js"):__filename,de=process.platform==="win32"||P,Be=iu(()=>process.cwd()),{watchFile:Fe,watchDirectory:Ne}=Sh({pollingWatchFileWorker:qe,getModifiedTime:Zt,setTimeout,clearTimeout,fsWatchWorker:it,useCaseSensitiveFileNames:re,getCurrentDirectory:Be,fileSystemEntryExists:ht,fsSupportsRecursiveFsWatch:de,getAccessibleSortedChildDirectories:Pt=>vt(Pt).directories,realpath:kt,tscWatchFile:process.env.TSC_WATCHFILE,useNonPollingWatchers:!!process.env.TSC_NONPOLLING_WATCHER,tscWatchDirectory:process.env.TSC_WATCHDIRECTORY,inodeWatching:M,fsWatchWithTimestamp:P,sysLog:Uy}),Qe={args:process.argv.slice(2),newLine:b.EOL,useCaseSensitiveFileNames:re,write(Pt){process.stdout.write(Pt)},getWidthOfTerminal(){return process.stdout.columns},writeOutputIsTTY(){return process.stdout.isTTY},readFile:dt,writeFile:wt,watchFile:Fe,watchDirectory:Ne,resolvePath:Pt=>h.resolve(Pt),fileExists:Et,directoryExists:Kt,getAccessibleFileSystemEntries:vt,createDirectory(Pt){if(!Qe.directoryExists(Pt))try{I.mkdirSync(Pt)}catch(Vr){if(Vr.code!=="EEXIST")throw Vr}},getExecutingFilePath(){return Ae},getCurrentDirectory:Be,getDirectories:Tt,getEnvironmentVariable(Pt){return process.env[Pt]||""},readDirectory:Ye,getModifiedTime:Zt,setModifiedTime:Dr,deleteFile:jt,createHash:R?mr:Bh,createSHA256Hash:R?mr:void 0,getMemoryUsage(){return global.gc&&global.gc(),process.memoryUsage().heapUsed},getFileSize(Pt){try{let Vr=De(Pt);if(Vr?.isFile())return Vr.size}catch{}return 0},exit(Pt){je(()=>process.exit(Pt))},enableCPUProfiler:lt,disableCPUProfiler:je,cpuProfilingEnabled:()=>!!N||Ue(process.execArgv,"--cpu-prof")||Ue(process.execArgv,"--prof"),realpath:kt,debugMode:!!process.env.NODE_INSPECTOR_IPC||!!process.env.VSCODE_INSPECTOR_OPTIONS||lr(process.execArgv,Pt=>/^--(inspect|debug)(-brk)?(=\d+)?$/i.test(Pt))||!!process.recordreplay,tryEnableSourceMapsForHost(){try{Dt("source-map-support").install()}catch{}},setTimeout,clearTimeout,clearScreen:()=>{process.stdout.write("\x1Bc")},setBlocking:()=>{var Pt;let Vr=(Pt=process.stdout)==null?void 0:Pt._handle;Vr&&Vr.setBlocking&&Vr.setBlocking(!0)},base64decode:Pt=>Buffer.from(Pt,"base64").toString("utf8"),base64encode:Pt=>Buffer.from(Pt).toString("base64"),require:(Pt,Vr)=>{try{let Yr=gDt(Vr,Pt,Qe);return{module:Dt(Yr),modulePath:Yr,error:void 0}}catch(Yr){return{module:void 0,modulePath:void 0,error:Yr}}}};return Qe;function De(Pt){return I.statSync(Pt,{throwIfNoEntry:!1})}function lt(Pt,Vr){if(N)return Vr(),!1;let Yr=Dt("inspector");if(!Yr||!Yr.Session)return Vr(),!1;let pr=new Yr.Session;return pr.connect(),pr.post("Profiler.enable",()=>{pr.post("Profiler.start",()=>{N=pr,V=Pt,Vr()})}),!0}function Le(Pt){let Vr=0,Yr=new Map,pr=Af(h.dirname(Ae)),zr=`file://${e_(pr)===1?"":"/"}${pr}`;for(let $n of Pt.nodes)if($n.callFrame.url){let bi=Af($n.callFrame.url);Bg(zr,bi,re)?$n.callFrame.url=xm(zr,bi,zr,tA(re),!0):d.test(bi)||($n.callFrame.url=(Yr.has(bi)?Yr:Yr.set(bi,`external${Vr}.js`)).get(bi),Vr++)}return Pt}function je(Pt){if(N&&N!=="stopping"){let Vr=N;return N.post("Profiler.stop",(Yr,{profile:pr})=>{var zr;if(!Yr){try{(zr=De(V))!=null&&zr.isDirectory()&&(V=h.join(V,`${new Date().toISOString().replace(/:/g,"-")}+P${process.pid}.cpuprofile`))}catch{}try{I.mkdirSync(h.dirname(V),{recursive:!0})}catch{}I.writeFileSync(V,JSON.stringify(Le(pr)))}N=void 0,Vr.disconnect(),Pt()}),N="stopping",!0}else return Pt(),!1}function st(){return typeof process.versions.pnp<"u"?!0:te==="win32"||te==="win64"?!1:!Et(nt(__filename))}function nt(Pt){return Pt.replace(/\w/g,Vr=>{let Yr=Vr.toUpperCase();return Vr===Yr?Vr.toLowerCase():Yr})}function qe(Pt,Vr,Yr){I.watchFile(Pt,{persistent:!0,interval:Yr},zr);let pr;return{close:()=>I.unwatchFile(Pt,zr)};function zr($n,bi){let Pi=+bi.mtime==0||pr===2;if(+$n.mtime==0){if(Pi)return;pr=2}else if(Pi)pr=0;else{if(+$n.mtime==+bi.mtime)return;pr=1}Vr(Pt,pr,$n.mtime)}}function it(Pt,Vr,Yr){return I.watch(Pt,de?{persistent:!0,recursive:!!Vr}:{persistent:!0},Yr)}function It(Pt,Vr){let Yr;try{Yr=I.readFileSync(Pt)}catch{return}let pr=Yr.length;if(pr>=2&&Yr[0]===254&&Yr[1]===255){pr&=-2;for(let zr=0;zr=2&&Yr[0]===255&&Yr[1]===254?Yr.toString("utf16le",2):pr>=3&&Yr[0]===239&&Yr[1]===187&&Yr[2]===191?Yr.toString("utf8",3):Yr.toString("utf8")}function dt(Pt,Vr){var Yr,pr;(Yr=Kl)==null||Yr.logStartReadFile(Pt);let zr=It(Pt,Vr);return(pr=Kl)==null||pr.logStopReadFile(),zr}function wt(Pt,Vr,Yr){var pr;(pr=Kl)==null||pr.logEvent("WriteFile: "+Pt),Yr&&(Vr=n+Vr);let zr;try{zr=I.openSync(Pt,"w"),I.writeSync(zr,Vr,void 0,"utf8")}finally{zr!==void 0&&I.closeSync(zr)}}function vt(Pt){var Vr;(Vr=Kl)==null||Vr.logEvent("ReadDir: "+(Pt||"."));try{let Yr=I.readdirSync(Pt||".",{withFileTypes:!0}),pr=[],zr=[];for(let $n of Yr){let bi=typeof $n=="string"?$n:$n.name;if(bi==="."||bi==="..")continue;let Pi;if(typeof $n=="string"||$n.isSymbolicLink()){let Ns=xo(Pt,bi);try{if(Pi=De(Ns),!Pi)continue}catch{continue}}else Pi=$n;Pi.isFile()?pr.push(bi):Pi.isDirectory()&&zr.push(bi)}return pr.sort(),zr.sort(),{files:pr,directories:zr}}catch{return ghe}}function Ye(Pt,Vr,Yr,pr,zr){return che(Pt,Vr,Yr,pr,re,process.cwd(),zr,vt,kt)}function ht(Pt,Vr){let Yr=Error.stackTraceLimit;Error.stackTraceLimit=0;try{let pr=De(Pt);if(!pr)return!1;switch(Vr){case 0:return pr.isFile();case 1:return pr.isDirectory();default:return!1}}catch{return!1}finally{Error.stackTraceLimit=Yr}}function Et(Pt){return ht(Pt,0)}function Kt(Pt){return ht(Pt,1)}function Tt(Pt){return vt(Pt).directories.slice()}function Lt(Pt){return Pt.length<260?I.realpathSync.native(Pt):I.realpathSync(Pt)}function kt(Pt){try{return ue(Pt)}catch{return Pt}}function Zt(Pt){var Vr;let Yr=Error.stackTraceLimit;Error.stackTraceLimit=0;try{return(Vr=De(Pt))==null?void 0:Vr.mtime}catch{return}finally{Error.stackTraceLimit=Yr}}function Dr(Pt,Vr){try{I.utimesSync(Pt,Vr,Vr)}catch{return}}function jt(Pt){try{return I.unlinkSync(Pt)}catch{return}}function mr(Pt){let Vr=R.createHash("sha256");return Vr.update(Pt),Vr.digest("hex")}}let u;return uy()&&(u=c()),u&&L0(u),u})();function Ev(n){_d=n}_d&&_d.getEnvironmentVariable&&(ES(_d),w.setAssertionLevel(/^development$/i.test(_d.getEnvironmentVariable("NODE_ENV"))?1:0)),_d&&_d.debugMode&&(w.isDebugging=!0);var qu="/",AC="\\",B1="://",I2=/\\/g;function Sp(n){return n===47||n===92}function eC(n){return z_(n)<0}function yd(n){return z_(n)>0}function V0(n){let c=z_(n);return c>0&&c===n.length}function II(n){return z_(n)!==0}function Op(n){return/^\.\.?($|[\\/])/.test(n)}function W0(n){return!II(n)&&!Op(n)}function v1(n){return xA(n).includes(".")}function gd(n,c){return n.length>c.length&&pl(n,c)}function pp(n,c){for(let u of c)if(gd(n,u))return!0;return!1}function v_(n){return n.length>0&&Sp(n.charCodeAt(n.length-1))}function vS(n){return n>=97&&n<=122||n>=65&&n<=90}function _B(n,c){let u=n.charCodeAt(c);if(u===58)return c+1;if(u===37&&n.charCodeAt(c+1)===51){let d=n.charCodeAt(c+2);if(d===97||d===65)return c+3}return-1}function z_(n){if(!n)return 0;let c=n.charCodeAt(0);if(c===47||c===92){if(n.charCodeAt(1)!==c)return 1;let d=n.indexOf(c===47?qu:AC,2);return d<0?n.length:d+1}if(vS(c)&&n.charCodeAt(1)===58){let d=n.charCodeAt(2);if(d===47||d===92)return 3;if(n.length===2)return 2}let u=n.indexOf(B1);if(u!==-1){let d=u+B1.length,I=n.indexOf(qu,d);if(I!==-1){let h=n.slice(0,u),b=n.slice(d,I);if(h==="file"&&(b===""||b==="localhost")&&vS(n.charCodeAt(I+1))){let R=_B(n,I+2);if(R!==-1){if(n.charCodeAt(R)===47)return~(R+1);if(R===n.length)return~R}}return~(I+1)}return~n.length}return 0}function e_(n){let c=z_(n);return c<0?~c:c}function aa(n){n=Af(n);let c=e_(n);return c===n.length?n:(n=S_(n),n.slice(0,Math.max(c,n.lastIndexOf(qu))))}function xA(n,c,u){if(n=Af(n),e_(n)===n.length)return"";n=S_(n);let I=n.slice(Math.max(e_(n),n.lastIndexOf(qu)+1)),h=c!==void 0&&u!==void 0?wE(I,c,u):void 0;return h?I.slice(0,I.length-h.length):I}function cZ(n,c,u){if(uc(c,".")||(c="."+c),n.length>=c.length&&n.charCodeAt(n.length-c.length)===46){let d=n.slice(n.length-c.length);if(u(d,c))return d}}function kR(n,c,u){if(typeof c=="string")return cZ(n,c,u)||"";for(let d of c){let I=cZ(n,d,u);if(I)return I}return""}function wE(n,c,u){if(c)return kR(S_(n),c,u?sp:lm);let d=xA(n),I=d.lastIndexOf(".");return I>=0?d.substring(I):""}function GR(n,c){let u=n.substring(0,c),d=n.substring(c).split(qu);return d.length&&!qo(d)&&d.pop(),[u,...d]}function Ad(n,c=""){return n=xo(c,n),GR(n,e_(n))}function fy(n,c){return n.length===0?"":(n[0]&&AA(n[0]))+n.slice(1,c).join(qu)}function Af(n){return n.includes("\\")?n.replace(I2,qu):n}function tC(n){if(!lr(n))return[];let c=[n[0]];for(let u=1;u1){if(c[c.length-1]!==".."){c.pop();continue}}else if(c[0])continue}c.push(d)}}return c}function xo(n,...c){n&&(n=Af(n));for(let u of c)u&&(u=Af(u),!n||e_(u)!==0?n=u:n=AA(n)+u);return n}function q_(n,...c){return Mc(lr(c)?xo(n,...c):Af(n))}function gh(n,c){return tC(Ad(n,c))}function Oc(n,c){return fy(gh(n,c))}function Mc(n){if(n=Af(n),!wh.test(n))return n;let c=n.replace(/\/\.\//g,"/").replace(/^\.\//,"");if(c!==n&&(n=c,!wh.test(n)))return n;let u=fy(tC(Ad(n)));return u&&v_(n)?AA(u):u}function iN(n){return n.length===0?"":n.slice(1).join(qu)}function SS(n,c){return iN(gh(n,c))}function gA(n,c,u){let d=yd(n)?Mc(n):Oc(n,c);return u(d)}function S_(n){return v_(n)?n.substr(0,n.length-1):n}function AA(n){return v_(n)?n:n+qu}function Ky(n){return!II(n)&&!Op(n)?"./"+n:n}function S1(n,c,u,d){let I=u!==void 0&&d!==void 0?wE(n,u,d):wE(n);return I?n.slice(0,n.length-I.length)+(uc(c,".")?c:"."+c):n}function Iy(n,c){let u=o8e(n);return u?n.slice(0,n.length-u.length)+(uc(c,".")?c:"."+c):S1(n,c)}var wh=/(?:\/\/)|(?:^|\/)\.\.?(?:$|\/)/;function wS(n,c,u){if(n===c)return 0;if(n===void 0)return-1;if(c===void 0)return 1;let d=n.substring(0,e_(n)),I=c.substring(0,e_(c)),h=fs(d,I);if(h!==0)return h;let b=n.substring(d.length),R=c.substring(I.length);if(!wh.test(b)&&!wh.test(R))return u(b,R);let N=tC(Ad(n)),V=tC(Ad(c)),P=Math.min(N.length,V.length);for(let M=1;M0==e_(c)>0,"Paths must either both be absolute or both be relative");let h=C2(n,c,(typeof u=="boolean"?u:!1)?sp:lm,typeof u=="function"?u:Bl);return fy(h)}function TE(n,c,u){return yd(n)?xm(c,n,c,u,!1):n}function w1(n,c,u){return Ky(fp(aa(n),c,u))}function xm(n,c,u,d,I){let h=C2(q_(u,n),q_(u,c),lm,d),b=h[0];if(I&&yd(b)){let R=b.charAt(0)===qu?"file://":"file:///";h[0]=R+b}return fy(h)}function iI(n,c){for(;;){let u=c(n);if(u!==void 0)return u;let d=aa(n);if(d===n)return;n=d}}function TS(n){return pl(n,"/node_modules")}function $(n,c,u,d,I,h,b){return{code:n,category:c,key:u,message:d,reportsUnnecessary:I,elidedInCompatabilityPyramid:h,reportsDeprecated:b}}var Z={Unterminated_string_literal:$(1002,1,"Unterminated_string_literal_1002","Unterminated string literal."),Identifier_expected:$(1003,1,"Identifier_expected_1003","Identifier expected."),_0_expected:$(1005,1,"_0_expected_1005","'{0}' expected."),A_file_cannot_have_a_reference_to_itself:$(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:$(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:$(1009,1,"Trailing_comma_not_allowed_1009","Trailing comma not allowed."),Asterisk_Slash_expected:$(1010,1,"Asterisk_Slash_expected_1010","'*/' expected."),An_element_access_expression_should_take_an_argument:$(1011,1,"An_element_access_expression_should_take_an_argument_1011","An element access expression should take an argument."),Unexpected_token:$(1012,1,"Unexpected_token_1012","Unexpected token."),A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1025,1,"An_index_signature_cannot_have_a_trailing_comma_1025","An index signature cannot have a trailing comma."),Accessibility_modifier_already_seen:$(1028,1,"Accessibility_modifier_already_seen_1028","Accessibility modifier already seen."),_0_modifier_must_precede_1_modifier:$(1029,1,"_0_modifier_must_precede_1_modifier_1029","'{0}' modifier must precede '{1}' modifier."),_0_modifier_already_seen:$(1030,1,"_0_modifier_already_seen_1030","'{0}' modifier already seen."),_0_modifier_cannot_appear_on_class_elements_of_this_kind:$(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:$(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:$(1035,1,"Only_ambient_modules_can_use_quoted_names_1035","Only ambient modules can use quoted names."),Statements_are_not_allowed_in_ambient_contexts:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1047,1,"A_rest_parameter_cannot_be_optional_1047","A rest parameter cannot be optional."),A_rest_parameter_cannot_have_an_initializer:$(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:$(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:$(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:$(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:$(1053,1,"A_set_accessor_cannot_have_rest_parameter_1053","A 'set' accessor cannot have rest parameter."),A_get_accessor_cannot_have_parameters:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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 type. Did you mean to write 'Promise<{0}>'?"),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type:$(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 type."),In_ambient_enum_declarations_member_initializer_must_be_constant_expression:$(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:$(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:$(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:$(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:$(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:$(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:$(1084,1,"Invalid_reference_directive_syntax_1084","Invalid 'reference' directive syntax."),_0_modifier_cannot_appear_on_a_constructor_declaration:$(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:$(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:$(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:$(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:$(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:$(1094,1,"An_accessor_cannot_have_type_parameters_1094","An accessor cannot have type parameters."),A_set_accessor_cannot_have_a_return_type_annotation:$(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:$(1096,1,"An_index_signature_must_have_exactly_one_parameter_1096","An index signature must have exactly one parameter."),_0_list_cannot_be_empty:$(1097,1,"_0_list_cannot_be_empty_1097","'{0}' list cannot be empty."),Type_parameter_list_cannot_be_empty:$(1098,1,"Type_parameter_list_cannot_be_empty_1098","Type parameter list cannot be empty."),Type_argument_list_cannot_be_empty:$(1099,1,"Type_argument_list_cannot_be_empty_1099","Type argument list cannot be empty."),Invalid_use_of_0_in_strict_mode:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1109,1,"Expression_expected_1109","Expression expected."),Type_expected:$(1110,1,"Type_expected_1110","Type expected."),Private_field_0_must_be_declared_in_an_enclosing_class:$(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:$(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:$(1114,1,"Duplicate_label_0_1114","Duplicate label '{0}'."),A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement:$(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:$(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:$(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:$(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:$(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:$(1120,1,"An_export_assignment_cannot_have_modifiers_1120","An export assignment cannot have modifiers."),Octal_literals_are_not_allowed_Use_the_syntax_0:$(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:$(1123,1,"Variable_declaration_list_cannot_be_empty_1123","Variable declaration list cannot be empty."),Digit_expected:$(1124,1,"Digit_expected_1124","Digit expected."),Hexadecimal_digit_expected:$(1125,1,"Hexadecimal_digit_expected_1125","Hexadecimal digit expected."),Unexpected_end_of_text:$(1126,1,"Unexpected_end_of_text_1126","Unexpected end of text."),Invalid_character:$(1127,1,"Invalid_character_1127","Invalid character."),Declaration_or_statement_expected:$(1128,1,"Declaration_or_statement_expected_1128","Declaration or statement expected."),Statement_expected:$(1129,1,"Statement_expected_1129","Statement expected."),case_or_default_expected:$(1130,1,"case_or_default_expected_1130","'case' or 'default' expected."),Property_or_signature_expected:$(1131,1,"Property_or_signature_expected_1131","Property or signature expected."),Enum_member_expected:$(1132,1,"Enum_member_expected_1132","Enum member expected."),Variable_declaration_expected:$(1134,1,"Variable_declaration_expected_1134","Variable declaration expected."),Argument_expression_expected:$(1135,1,"Argument_expression_expected_1135","Argument expression expected."),Property_assignment_expected:$(1136,1,"Property_assignment_expected_1136","Property assignment expected."),Expression_or_comma_expected:$(1137,1,"Expression_or_comma_expected_1137","Expression or comma expected."),Parameter_declaration_expected:$(1138,1,"Parameter_declaration_expected_1138","Parameter declaration expected."),Type_parameter_declaration_expected:$(1139,1,"Type_parameter_declaration_expected_1139","Type parameter declaration expected."),Type_argument_expected:$(1140,1,"Type_argument_expected_1140","Type argument expected."),String_literal_expected:$(1141,1,"String_literal_expected_1141","String literal expected."),Line_break_not_permitted_here:$(1142,1,"Line_break_not_permitted_here_1142","Line break not permitted here."),or_expected:$(1144,1,"or_expected_1144","'{' or ';' expected."),or_JSX_element_expected:$(1145,1,"or_JSX_element_expected_1145","'{' or JSX element expected."),Declaration_expected:$(1146,1,"Declaration_expected_1146","Declaration expected."),Import_declarations_in_a_namespace_cannot_reference_a_module:$(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:$(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:$(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:$(1155,1,"_0_declarations_must_be_initialized_1155","'{0}' declarations must be initialized."),_0_declarations_can_only_be_declared_inside_a_block:$(1156,1,"_0_declarations_can_only_be_declared_inside_a_block_1156","'{0}' declarations can only be declared inside a block."),Unterminated_template_literal:$(1160,1,"Unterminated_template_literal_1160","Unterminated template literal."),Unterminated_regular_expression_literal:$(1161,1,"Unterminated_regular_expression_literal_1161","Unterminated regular expression literal."),An_object_member_cannot_be_declared_optional:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1172,1,"extends_clause_already_seen_1172","'extends' clause already seen."),extends_clause_must_precede_implements_clause:$(1173,1,"extends_clause_must_precede_implements_clause_1173","'extends' clause must precede 'implements' clause."),Classes_can_only_extend_a_single_class:$(1174,1,"Classes_can_only_extend_a_single_class_1174","Classes can only extend a single class."),implements_clause_already_seen:$(1175,1,"implements_clause_already_seen_1175","'implements' clause already seen."),Interface_declaration_cannot_have_implements_clause:$(1176,1,"Interface_declaration_cannot_have_implements_clause_1176","Interface declaration cannot have 'implements' clause."),Binary_digit_expected:$(1177,1,"Binary_digit_expected_1177","Binary digit expected."),Octal_digit_expected:$(1178,1,"Octal_digit_expected_1178","Octal digit expected."),Unexpected_token_expected:$(1179,1,"Unexpected_token_expected_1179","Unexpected token. '{' expected."),Property_destructuring_pattern_expected:$(1180,1,"Property_destructuring_pattern_expected_1180","Property destructuring pattern expected."),Array_element_destructuring_pattern_expected:$(1181,1,"Array_element_destructuring_pattern_expected_1181","Array element destructuring pattern expected."),A_destructuring_declaration_must_have_an_initializer:$(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:$(1183,1,"An_implementation_cannot_be_declared_in_ambient_contexts_1183","An implementation cannot be declared in ambient contexts."),Modifiers_cannot_appear_here:$(1184,1,"Modifiers_cannot_appear_here_1184","Modifiers cannot appear here."),Merge_conflict_marker_encountered:$(1185,1,"Merge_conflict_marker_encountered_1185","Merge conflict marker encountered."),A_rest_element_cannot_have_an_initializer:$(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:$(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:$(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:$(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:$(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:$(1191,1,"An_import_declaration_cannot_have_modifiers_1191","An import declaration cannot have modifiers."),Module_0_has_no_default_export:$(1192,1,"Module_0_has_no_default_export_1192","Module '{0}' has no default export."),An_export_declaration_cannot_have_modifiers:$(1193,1,"An_export_declaration_cannot_have_modifiers_1193","An export declaration cannot have modifiers."),Export_declarations_are_not_permitted_in_a_namespace:$(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:$(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:$(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:$(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:$(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:$(1199,1,"Unterminated_Unicode_escape_sequence_1199","Unterminated Unicode escape sequence."),Line_terminator_not_permitted_before_arrow:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1223,1,"_0_tag_already_specified_1223","'{0}' tag already specified."),Signature_0_must_be_a_type_predicate:$(1224,1,"Signature_0_must_be_a_type_predicate_1224","Signature '{0}' must be a type predicate."),Cannot_find_parameter_0:$(1225,1,"Cannot_find_parameter_0_1225","Cannot find parameter '{0}'."),Type_predicate_0_is_not_assignable_to_1:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1348,1,"Non_simple_parameter_declared_here_1348","Non-simple parameter declared here."),use_strict_directive_used_here:$(1349,1,"use_strict_directive_used_here_1349","'use strict' directive used here."),Print_the_final_configuration_instead_of_building:$(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:$(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:$(1352,1,"A_bigint_literal_cannot_use_exponential_notation_1352","A bigint literal cannot use exponential notation."),A_bigint_literal_must_be_an_integer:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1364,3,"Convert_to_type_only_export_1364","Convert to type-only export"),Convert_all_re_exported_types_to_type_only_exports:$(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:$(1366,3,"Split_into_two_separate_import_declarations_1366","Split into two separate import declarations"),Split_all_invalid_type_only_imports:$(1367,3,"Split_all_invalid_type_only_imports_1367","Split all invalid type-only imports"),Class_constructor_may_not_be_a_generator:$(1368,1,"Class_constructor_may_not_be_a_generator_1368","Class constructor may not be a generator."),Did_you_mean_0:$(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:$(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:$(1376,3,"_0_was_imported_here_1376","'{0}' was imported here."),_0_was_exported_here:$(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:$(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:$(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:$(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:$(1381,1,"Unexpected_token_Did_you_mean_or_rbrace_1381","Unexpected token. Did you mean `{'}'}` or `}`?"),Unexpected_token_Did_you_mean_or_gt:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1392,1,"An_import_alias_cannot_use_import_type_1392","An import alias cannot use 'import type'"),Imported_via_0_from_file_1:$(1393,3,"Imported_via_0_from_file_1_1393","Imported via {0} from file '{1}'"),Imported_via_0_from_file_1_with_packageId_2:$(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:$(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:$(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:$(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:$(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:$(1399,3,"File_is_included_via_import_here_1399","File is included via import here."),Referenced_via_0_from_file_1:$(1400,3,"Referenced_via_0_from_file_1_1400","Referenced via '{0}' from file '{1}'"),File_is_included_via_reference_here:$(1401,3,"File_is_included_via_reference_here_1401","File is included via reference here."),Type_library_referenced_via_0_from_file_1:$(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:$(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:$(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:$(1405,3,"Library_referenced_via_0_from_file_1_1405","Library referenced via '{0}' from file '{1}'"),File_is_included_via_library_reference_here:$(1406,3,"File_is_included_via_library_reference_here_1406","File is included via library reference here."),Matched_by_include_pattern_0_in_1:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1422,3,"Library_0_specified_in_compilerOptions_1422","Library '{0}' specified in compilerOptions"),File_is_library_specified_here:$(1423,3,"File_is_library_specified_here_1423","File is library specified here."),Default_library:$(1424,3,"Default_library_1424","Default library"),Default_library_for_target_0:$(1425,3,"Default_library_for_target_0_1425","Default library for target '{0}'"),File_is_default_library_for_target_specified_here:$(1426,3,"File_is_default_library_for_target_specified_here_1426","File is default library for target specified here."),Root_file_specified_for_compilation:$(1427,3,"Root_file_specified_for_compilation_1427","Root file specified for compilation"),File_is_output_of_project_reference_source_0:$(1428,3,"File_is_output_of_project_reference_source_0_1428","File is output of project reference source '{0}'"),File_redirects_to_file_0:$(1429,3,"File_redirects_to_file_0_1429","File redirects to file '{0}'"),The_file_is_in_the_program_because_Colon:$(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:$(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:$(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:$(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:$(1434,1,"Unexpected_keyword_or_identifier_1434","Unexpected keyword or identifier."),Unknown_keyword_or_identifier_Did_you_mean_0:$(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:$(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:$(1437,1,"Namespace_must_be_given_a_name_1437","Namespace must be given a name."),Interface_must_be_given_a_name:$(1438,1,"Interface_must_be_given_a_name_1438","Interface must be given a name."),Type_alias_must_be_given_a_name:$(1439,1,"Type_alias_must_be_given_a_name_1439","Type alias must be given a name."),Variable_declaration_not_allowed_at_this_location:$(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:$(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:$(1442,1,"Expected_for_property_initializer_1442","Expected '=' for property initializer."),Module_declaration_names_may_only_use_or_quoted_strings:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1486,1,"Decorator_used_before_export_here_1486","Decorator used before 'export' here."),Octal_escape_sequences_are_not_allowed_Use_the_syntax_0:$(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:$(1488,1,"Escape_sequence_0_is_not_allowed_1488","Escape sequence '{0}' is not allowed."),Decimals_with_leading_zeros_are_not_allowed:$(1489,1,"Decimals_with_leading_zeros_are_not_allowed_1489","Decimals with leading zeros are not allowed."),File_appears_to_be_binary:$(1490,1,"File_appears_to_be_binary_1490","File appears to be binary."),_0_modifier_cannot_appear_on_a_using_declaration:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1498,1,"Invalid_syntax_in_decorator_1498","Invalid syntax in decorator."),Unknown_regular_expression_flag:$(1499,1,"Unknown_regular_expression_flag_1499","Unknown regular expression flag."),Duplicate_regular_expression_flag:$(1500,1,"Duplicate_regular_expression_flag_1500","Duplicate regular expression flag."),This_regular_expression_flag_is_only_available_when_targeting_0_or_later:$(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:$(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:$(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:$(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:$(1505,1,"Incomplete_quantifier_Digit_expected_1505","Incomplete quantifier. Digit expected."),Numbers_out_of_order_in_quantifier:$(1506,1,"Numbers_out_of_order_in_quantifier_1506","Numbers out of order in quantifier."),There_is_nothing_available_for_repetition:$(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:$(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:$(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:$(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:$(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:$(1512,1,"c_must_be_followed_by_an_ASCII_letter_1512","'\\c' must be followed by an ASCII letter."),Undetermined_character_escape:$(1513,1,"Undetermined_character_escape_1513","Undetermined character escape."),Expected_a_capturing_group_name:$(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:$(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:$(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:$(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:$(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:$(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:$(1520,1,"Expected_a_class_set_operand_1520","Expected a class set operand."),q_must_be_followed_by_string_alternatives_enclosed_in_braces:$(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:$(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:$(1523,1,"Expected_a_Unicode_property_name_1523","Expected a Unicode property name."),Unknown_Unicode_property_name:$(1524,1,"Unknown_Unicode_property_name_1524","Unknown Unicode property name."),Expected_a_Unicode_property_value:$(1525,1,"Expected_a_Unicode_property_value_1525","Expected a Unicode property value."),Unknown_Unicode_property_value:$(1526,1,"Unknown_Unicode_property_value_1526","Unknown Unicode property value."),Expected_a_Unicode_property_name_or_value:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2211,3,"Add_extends_constraint_2211","Add `extends` constraint."),Add_extends_constraint_to_all_type_parameters:$(2212,3,"Add_extends_constraint_to_all_type_parameters_2212","Add `extends` constraint to all type parameters"),Duplicate_identifier_0:$(2300,1,"Duplicate_identifier_0_2300","Duplicate identifier '{0}'."),Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:$(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:$(2302,1,"Static_members_cannot_reference_class_type_parameters_2302","Static members cannot reference class type parameters."),Circular_definition_of_import_alias_0:$(2303,1,"Circular_definition_of_import_alias_0_2303","Circular definition of import alias '{0}'."),Cannot_find_name_0:$(2304,1,"Cannot_find_name_0_2304","Cannot find name '{0}'."),Module_0_has_no_exported_member_1:$(2305,1,"Module_0_has_no_exported_member_1_2305","Module '{0}' has no exported member '{1}'."),File_0_is_not_a_module:$(2306,1,"File_0_is_not_a_module_2306","File '{0}' is not a module."),Cannot_find_module_0_or_its_corresponding_type_declarations:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2314,1,"Generic_type_0_requires_1_type_argument_s_2314","Generic type '{0}' requires {1} type argument(s)."),Type_0_is_not_generic:$(2315,1,"Type_0_is_not_generic_2315","Type '{0}' is not generic."),Global_type_0_must_be_a_class_or_interface_type:$(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:$(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:$(2318,1,"Cannot_find_global_type_0_2318","Cannot find global type '{0}'."),Named_property_0_of_types_1_and_2_are_not_identical:$(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:$(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:$(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:$(2322,1,"Type_0_is_not_assignable_to_type_1_2322","Type '{0}' is not assignable to type '{1}'."),Cannot_redeclare_exported_variable_0:$(2323,1,"Cannot_redeclare_exported_variable_0_2323","Cannot redeclare exported variable '{0}'."),Property_0_is_missing_in_type_1:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2349,1,"This_expression_is_not_callable_2349","This expression is not callable."),Only_a_void_function_can_be_called_with_the_new_keyword:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2372,1,"Parameter_0_cannot_reference_itself_2372","Parameter '{0}' cannot reference itself."),Parameter_0_cannot_reference_identifier_1_declared_after_it:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2386,1,"Overload_signatures_must_all_be_optional_or_required_2386","Overload signatures must all be optional or required."),Function_overload_must_be_static:$(2387,1,"Function_overload_must_be_static_2387","Function overload must be static."),Function_overload_must_not_be_static:$(2388,1,"Function_overload_must_not_be_static_2388","Function overload must not be static."),Function_implementation_name_must_be_0:$(2389,1,"Function_implementation_name_must_be_0_2389","Function implementation name must be '{0}'."),Constructor_implementation_is_missing:$(2390,1,"Constructor_implementation_is_missing_2390","Constructor implementation is missing."),Function_implementation_is_missing_or_not_immediately_following_the_declaration:$(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:$(2392,1,"Multiple_constructor_implementations_are_not_allowed_2392","Multiple constructor implementations are not allowed."),Duplicate_function_implementation:$(2393,1,"Duplicate_function_implementation_2393","Duplicate function implementation."),This_overload_signature_is_not_compatible_with_its_implementation_signature:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2414,1,"Class_name_cannot_be_0_2414","Class name cannot be '{0}'."),Class_0_incorrectly_extends_base_class_1:$(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:$(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:$(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:$(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:$(2419,1,"Types_of_construct_signatures_are_incompatible_2419","Types of construct signatures are incompatible."),Class_0_incorrectly_implements_interface_1:$(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:$(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:$(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:$(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:$(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:$(2427,1,"Interface_name_cannot_be_0_2427","Interface name cannot be '{0}'."),All_declarations_of_0_must_have_identical_type_parameters:$(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:$(2430,1,"Interface_0_incorrectly_extends_interface_1_2430","Interface '{0}' incorrectly extends interface '{1}'."),Enum_name_cannot_be_0:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2449,1,"Class_0_used_before_its_declaration_2449","Class '{0}' used before its declaration."),Enum_0_used_before_its_declaration:$(2450,1,"Enum_0_used_before_its_declaration_2450","Enum '{0}' used before its declaration."),Cannot_redeclare_block_scoped_variable_0:$(2451,1,"Cannot_redeclare_block_scoped_variable_0_2451","Cannot redeclare block-scoped variable '{0}'."),An_enum_member_cannot_have_a_numeric_name:$(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:$(2454,1,"Variable_0_is_used_before_being_assigned_2454","Variable '{0}' is used before being assigned."),Type_alias_0_circularly_references_itself:$(2456,1,"Type_alias_0_circularly_references_itself_2456","Type alias '{0}' circularly references itself."),Type_alias_name_cannot_be_0:$(2457,1,"Type_alias_name_cannot_be_0_2457","Type alias name cannot be '{0}'."),An_AMD_module_cannot_have_multiple_name_assignments:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2468,1,"Cannot_find_global_value_0_2468","Cannot find global value '{0}'."),The_0_operator_cannot_be_applied_to_type_symbol:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2503,1,"Cannot_find_namespace_0_2503","Cannot find namespace '{0}'."),Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2530,1,"Property_0_is_incompatible_with_index_signature_2530","Property '{0}' is incompatible with index signature."),Object_is_possibly_null:$(2531,1,"Object_is_possibly_null_2531","Object is possibly 'null'."),Object_is_possibly_undefined:$(2532,1,"Object_is_possibly_undefined_2532","Object is possibly 'undefined'."),Object_is_possibly_null_or_undefined:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2554,1,"Expected_0_arguments_but_got_1_2554","Expected {0} arguments, but got {1}."),Expected_at_least_0_arguments_but_got_1:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2571,1,"Object_is_of_type_unknown_2571","Object is of type 'unknown'."),A_rest_element_type_must_be_an_array_type:$(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:$(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:$(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:$(2577,1,"Return_type_annotation_circularly_references_itself_2577","Return type annotation circularly references itself."),Unused_ts_expect_error_directive:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2708,1,"Cannot_use_namespace_0_as_a_value_2708","Cannot use namespace '{0}' as a value."),Cannot_use_namespace_0_as_a_type:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2728,3,"_0_is_declared_here_2728","'{0}' is declared here."),Property_0_is_used_before_its_initialization:$(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:$(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:$(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:$(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:$(2733,1,"Property_0_was_also_declared_here_2733","Property '{0}' was also declared here."),Are_you_missing_a_semicolon:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2750,1,"The_implementation_signature_is_declared_here_2750","The implementation signature is declared here."),Circularity_originates_in_type_at_this_location:$(2751,1,"Circularity_originates_in_type_at_this_location_2751","Circularity originates in type at this location."),The_first_export_default_is_here:$(2752,1,"The_first_export_default_is_here_2752","The first export default is here."),Another_export_default_is_here:$(2753,1,"Another_export_default_is_here_2753","Another export default is here."),super_may_not_use_type_arguments:$(2754,1,"super_may_not_use_type_arguments_2754","'super' may not use type arguments."),No_constituent_of_type_0_is_callable:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2769,1,"No_overload_matches_this_call_2769","No overload matches this call."),The_last_overload_gave_the_following_error:$(2770,1,"The_last_overload_gave_the_following_error_2770","The last overload gave the following error."),The_last_overload_is_declared_here:$(2771,1,"The_last_overload_is_declared_here_2771","The last overload is declared here."),Overload_0_of_1_2_gave_the_following_error:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2785,1,"This_spread_always_overwrites_this_property_2785","This spread always overwrites this property."),_0_cannot_be_used_as_a_JSX_component:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(4109,1,"Type_arguments_for_0_circularly_reference_themselves_4109","Type arguments for '{0}' circularly reference themselves."),Tuple_type_arguments_circularly_reference_themselves:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(5012,1,"Cannot_read_file_0_Colon_1_5012","Cannot read file '{0}': {1}."),Failed_to_parse_file_0_Colon_1:$(5014,1,"Failed_to_parse_file_0_Colon_1_5014","Failed to parse file '{0}': {1}."),Unknown_compiler_option_0:$(5023,1,"Unknown_compiler_option_0_5023","Unknown compiler option '{0}'."),Compiler_option_0_requires_a_value_of_type_1:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(5072,1,"Unknown_build_option_0_5072","Unknown build option '{0}'."),Build_option_0_requires_a_value_of_type_1:$(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:$(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:$(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:$(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:$(5077,1,"Unknown_build_option_0_Did_you_mean_1_5077","Unknown build option '{0}'. Did you mean '{1}'?"),Unknown_watch_option_0:$(5078,1,"Unknown_watch_option_0_5078","Unknown watch option '{0}'."),Unknown_watch_option_0_Did_you_mean_1:$(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:$(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:$(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:$(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:$(5083,1,"Cannot_read_file_0_5083","Cannot read file '{0}'."),A_tuple_member_cannot_be_both_optional_and_rest:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(5103,1,"Invalid_value_for_ignoreDeprecations_5103","Invalid value for '--ignoreDeprecations'."),Option_0_is_redundant_and_cannot_be_specified_with_option_1:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6001,3,"Concatenate_and_emit_output_to_single_file_6001","Concatenate and emit output to single file."),Generates_corresponding_d_ts_file:$(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:$(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:$(6005,3,"Watch_input_files_6005","Watch input files."),Redirect_output_structure_to_the_directory:$(6006,3,"Redirect_output_structure_to_the_directory_6006","Redirect output structure to the directory."),Do_not_erase_const_enum_declarations_in_generated_code:$(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:$(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:$(6009,3,"Do_not_emit_comments_to_output_6009","Do not emit comments to output."),Do_not_emit_outputs:$(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:$(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:$(6012,3,"Skip_type_checking_of_declaration_files_6012","Skip type checking of declaration files."),Do_not_resolve_the_real_path_of_symlinks:$(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:$(6014,3,"Only_emit_d_ts_declaration_files_6014","Only emit '.d.ts' declaration files."),Specify_ECMAScript_target_version:$(6015,3,"Specify_ECMAScript_target_version_6015","Specify ECMAScript target version."),Specify_module_code_generation:$(6016,3,"Specify_module_code_generation_6016","Specify module code generation."),Print_this_message:$(6017,3,"Print_this_message_6017","Print this message."),Print_the_compiler_s_version:$(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:$(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:$(6023,3,"Syntax_Colon_0_6023","Syntax: {0}"),options:$(6024,3,"options_6024","options"),file:$(6025,3,"file_6025","file"),Examples_Colon_0:$(6026,3,"Examples_Colon_0_6026","Examples: {0}"),Options_Colon:$(6027,3,"Options_Colon_6027","Options:"),Version_0:$(6029,3,"Version_0_6029","Version {0}"),Insert_command_line_options_and_files_from_a_file:$(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:$(6031,3,"Starting_compilation_in_watch_mode_6031","Starting compilation in watch mode..."),File_change_detected_Starting_incremental_compilation:$(6032,3,"File_change_detected_Starting_incremental_compilation_6032","File change detected. Starting incremental compilation..."),KIND:$(6034,3,"KIND_6034","KIND"),FILE:$(6035,3,"FILE_6035","FILE"),VERSION:$(6036,3,"VERSION_6036","VERSION"),LOCATION:$(6037,3,"LOCATION_6037","LOCATION"),DIRECTORY:$(6038,3,"DIRECTORY_6038","DIRECTORY"),STRATEGY:$(6039,3,"STRATEGY_6039","STRATEGY"),FILE_OR_DIRECTORY:$(6040,3,"FILE_OR_DIRECTORY_6040","FILE OR DIRECTORY"),Errors_Files:$(6041,3,"Errors_Files_6041","Errors Files"),Generates_corresponding_map_file:$(6043,3,"Generates_corresponding_map_file_6043","Generates corresponding '.map' file."),Compiler_option_0_expects_an_argument:$(6044,1,"Compiler_option_0_expects_an_argument_6044","Compiler option '{0}' expects an argument."),Unterminated_quoted_string_in_response_file_0:$(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:$(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:$(6048,1,"Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1_6048","Locale must be of the form or -. For example '{0}' or '{1}'."),Unable_to_open_file_0:$(6050,1,"Unable_to_open_file_0_6050","Unable to open file '{0}'."),Corrupted_locale_file_0:$(6051,1,"Corrupted_locale_file_0_6051","Corrupted locale file {0}."),Raise_error_on_expressions_and_declarations_with_an_implied_any_type:$(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:$(6053,1,"File_0_not_found_6053","File '{0}' not found."),File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1:$(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:$(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:$(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:$(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:$(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:$(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:$(6061,3,"NEWLINE_6061","NEWLINE"),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line:$(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:$(6065,3,"Enables_experimental_support_for_ES7_decorators_6065","Enables experimental support for ES7 decorators."),Enables_experimental_support_for_emitting_type_metadata_for_decorators:$(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:$(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:$(6071,3,"Successfully_created_a_tsconfig_json_file_6071","Successfully created a tsconfig.json file."),Suppress_excess_property_checks_for_object_literals:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6080,3,"Specify_JSX_code_generation_6080","Specify JSX code generation."),Only_amd_and_system_modules_are_supported_alongside_0:$(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:$(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:$(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:$(6085,3,"Enable_tracing_of_the_name_resolution_process_6085","Enable tracing of the name resolution process."),Resolving_module_0_from_1:$(6086,3,"Resolving_module_0_from_1_6086","======== Resolving module '{0}' from '{1}'. ========"),Explicitly_specified_module_resolution_kind_Colon_0:$(6087,3,"Explicitly_specified_module_resolution_kind_Colon_0_6087","Explicitly specified module resolution kind: '{0}'."),Module_resolution_kind_is_not_specified_using_0:$(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:$(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:$(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:$(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:$(6092,3,"Module_name_0_matched_pattern_1_6092","Module name '{0}', matched pattern '{1}'."),Trying_substitution_0_candidate_module_location_Colon_1:$(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:$(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:$(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:$(6096,3,"File_0_does_not_exist_6096","File '{0}' does not exist."),File_0_exists_use_it_as_a_name_resolution_result:$(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:$(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:$(6099,3,"Found_package_json_at_0_6099","Found 'package.json' at '{0}'."),package_json_does_not_have_a_0_field:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6110,3,"Trying_other_entries_in_rootDirs_6110","Trying other entries in 'rootDirs'."),Module_resolution_using_rootDirs_has_failed:$(6111,3,"Module_resolution_using_rootDirs_has_failed_6111","Module resolution using 'rootDirs' has failed."),Do_not_emit_use_strict_directives_in_module_output:$(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:$(6113,3,"Enable_strict_null_checks_6113","Enable strict null checks."),Unknown_option_excludes_Did_you_mean_exclude:$(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:$(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:$(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:$(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:$(6120,3,"Type_reference_directive_0_was_not_resolved_6120","======== Type reference directive '{0}' was not resolved. ========"),Resolving_with_primary_search_path_0:$(6121,3,"Resolving_with_primary_search_path_0_6121","Resolving with primary search path '{0}'."),Root_directory_cannot_be_determined_skipping_primary_search_paths:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6134,3,"Report_errors_on_unused_locals_6134","Report errors on unused locals."),Report_errors_on_unused_parameters:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6149,3,"Show_diagnostic_information_6149","Show diagnostic information."),Show_verbose_diagnostic_information:$(6150,3,"Show_verbose_diagnostic_information_6150","Show verbose diagnostic information."),Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6162,3,"Disable_size_limitations_on_JavaScript_projects_6162","Disable size limitations on JavaScript projects."),The_character_set_of_the_input_files:$(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:$(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:$(6165,3,"Do_not_truncate_error_messages_6165","Do not truncate error messages."),Output_directory_for_generated_declaration_files:$(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:$(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:$(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:$(6169,3,"Show_all_compiler_options_6169","Show all compiler options."),Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file:$(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:$(6171,3,"Command_line_Options_6171","Command-line Options"),Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5:$(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:$(6180,3,"Enable_all_strict_type_checking_options_6180","Enable all strict type-checking options."),Scoped_package_detected_looking_in_0:$(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:$(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:$(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:$(6186,3,"Enable_strict_checking_of_function_types_6186","Enable strict checking of function types."),Enable_strict_checking_of_property_initialization_in_classes:$(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:$(6188,1,"Numeric_separators_are_not_allowed_here_6188","Numeric separators are not allowed here."),Multiple_consecutive_numeric_separators_are_not_permitted:$(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:$(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:$(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:$(6193,3,"Found_1_error_Watching_for_file_changes_6193","Found 1 error. Watching for file changes."),Found_0_errors_Watching_for_file_changes:$(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:$(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:$(6196,1,"_0_is_declared_but_never_used_6196","'{0}' is declared but never used.",!0),Include_modules_imported_with_json_extension:$(6197,3,"Include_modules_imported_with_json_extension_6197","Include modules imported with '.json' extension"),All_destructured_elements_are_unused:$(6198,1,"All_destructured_elements_are_unused_6198","All destructured elements are unused.",!0),All_variables_are_unused:$(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:$(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:$(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:$(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:$(6203,3,"_0_was_also_declared_here_6203","'{0}' was also declared here."),and_here:$(6204,3,"and_here_6204","and here."),All_type_parameters_are_unused:$(6205,1,"All_type_parameters_are_unused_6205","All type parameters are unused."),package_json_has_a_typesVersions_field_with_version_specific_path_mappings:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6215,3,"Using_compiler_options_of_project_reference_redirect_0_6215","Using compiler options of project reference redirect '{0}'."),Found_1_error:$(6216,3,"Found_1_error_6216","Found 1 error."),Found_0_errors:$(6217,3,"Found_0_errors_6217","Found {0} errors."),Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2:$(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:$(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:$(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:$(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:$(6222,3,"Emit_class_fields_with_Define_instead_of_Set_6222","Emit class fields with Define instead of Set."),Generates_a_CPU_profile:$(6223,3,"Generates_a_CPU_profile_6223","Generates a CPU profile."),Disable_solution_searching_for_this_project:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6235,3,"Disable_loading_referenced_projects_6235","Disable loading referenced projects."),Arguments_for_the_rest_parameter_0_were_not_provided:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6243,3,"Interpret_optional_property_types_as_written_rather_than_adding_undefined_6243","Interpret optional property types as written, rather than adding 'undefined'."),Modules:$(6244,3,"Modules_6244","Modules"),File_Management:$(6245,3,"File_Management_6245","File Management"),Emit:$(6246,3,"Emit_6246","Emit"),JavaScript_Support:$(6247,3,"JavaScript_Support_6247","JavaScript Support"),Type_Checking:$(6248,3,"Type_Checking_6248","Type Checking"),Editor_Support:$(6249,3,"Editor_Support_6249","Editor Support"),Watch_and_Build_Modes:$(6250,3,"Watch_and_Build_Modes_6250","Watch and Build Modes"),Compiler_Diagnostics:$(6251,3,"Compiler_Diagnostics_6251","Compiler Diagnostics"),Interop_Constraints:$(6252,3,"Interop_Constraints_6252","Interop Constraints"),Backwards_Compatibility:$(6253,3,"Backwards_Compatibility_6253","Backwards Compatibility"),Language_and_Environment:$(6254,3,"Language_and_Environment_6254","Language and Environment"),Projects:$(6255,3,"Projects_6255","Projects"),Output_Formatting:$(6256,3,"Output_Formatting_6256","Output Formatting"),Completeness:$(6257,3,"Completeness_6257","Completeness"),_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file:$(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:$(6259,3,"Found_1_error_in_0_6259","Found 1 error in {0}"),Found_0_errors_in_the_same_file_starting_at_Colon_1:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6281,3,"package_json_has_a_peerDependencies_field_6281","'package.json' has a 'peerDependencies' field."),Found_peerDependency_0_with_1_version:$(6282,3,"Found_peerDependency_0_with_1_version_6282","Found peerDependency '{0}' with '{1}' version."),Failed_to_find_peerDependency_0:$(6283,3,"Failed_to_find_peerDependency_0_6283","Failed to find peerDependency '{0}'."),Enable_project_compilation:$(6302,3,"Enable_project_compilation_6302","Enable project compilation"),Composite_projects_may_not_disable_declaration_emit:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6357,3,"A_non_dry_build_would_build_project_0_6357","A non-dry build would build project '{0}'"),Building_project_0:$(6358,3,"Building_project_0_6358","Building project '{0}'..."),Updating_output_timestamps_of_project_0:$(6359,3,"Updating_output_timestamps_of_project_0_6359","Updating output timestamps of project '{0}'..."),Project_0_is_up_to_date:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6370,1,"Options_0_and_1_cannot_be_combined_6370","Options '{0}' and '{1}' cannot be combined."),Updating_unchanged_output_timestamps_of_project_0:$(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:$(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:$(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:$(6379,1,"Composite_projects_may_not_disable_incremental_compilation_6379","Composite projects may not disable incremental compilation."),Specify_file_to_store_incremental_compilation_information:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6402,3,"Resolving_in_0_mode_with_conditions_1_6402","Resolving in {0} mode with conditions {1}."),Matched_0_condition_1:$(6403,3,"Matched_0_condition_1_6403","Matched '{0}' condition '{1}'."),Using_0_subpath_1_with_target_2:$(6404,3,"Using_0_subpath_1_with_target_2_6404","Using '{0}' subpath '{1}' with target '{2}'."),Saw_non_matching_condition_0:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6413,3,"Entering_conditional_exports_6413","Entering conditional exports."),Resolved_under_condition_0:$(6414,3,"Resolved_under_condition_0_6414","Resolved under condition '{0}'."),Failed_to_resolve_under_condition_0:$(6415,3,"Failed_to_resolve_under_condition_0_6415","Failed to resolve under condition '{0}'."),Exiting_conditional_exports:$(6416,3,"Exiting_conditional_exports_6416","Exiting conditional exports."),Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6602,3,"Allow_accessing_UMD_globals_from_modules_6602","Allow accessing UMD globals from modules."),Disable_error_reporting_for_unreachable_code:$(6603,3,"Disable_error_reporting_for_unreachable_code_6603","Disable error reporting for unreachable code."),Disable_error_reporting_for_unused_labels:$(6604,3,"Disable_error_reporting_for_unused_labels_6604","Disable error reporting for unused labels."),Ensure_use_strict_is_always_emitted:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6614,3,"Create_sourcemaps_for_d_ts_files_6614","Create sourcemaps for d.ts files."),Output_compiler_performance_information_after_building:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6627,3,"Filters_results_from_the_include_option_6627","Filters results from the `include` option."),Remove_a_list_of_directories_from_the_watch_process:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6659,3,"Set_the_newline_character_for_emitting_files_6659","Set the newline character for emitting files."),Disable_emitting_files_from_a_compilation:$(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:$(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:$(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:$(6663,3,"Disable_truncating_types_in_error_messages_6663","Disable truncating types in error messages."),Enable_error_reporting_for_fallthrough_cases_in_switch_statements:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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 ''s from expanding the number of files TypeScript should add to a project."),Disable_strict_checking_of_generic_signatures_in_function_types:$(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:$(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:$(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:$(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:$(6677,3,"Deprecated_setting_Use_outFile_instead_6677","Deprecated setting. Use 'outFile' instead."),Specify_an_output_folder_for_all_emitted_files:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6688,3,"Disable_emitting_comments_6688","Disable emitting comments."),Enable_importing_json_files:$(6689,3,"Enable_importing_json_files_6689","Enable importing .json files."),Specify_the_root_folder_within_your_source_files:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6712,3,"Emit_ECMAScript_standard_compliant_class_fields_6712","Emit ECMAScript-standard-compliant class fields."),Enable_verbose_logging:$(6713,3,"Enable_verbose_logging_6713","Enable verbose logging."),Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6900,3,"one_of_Colon_6900","one of:"),one_or_more_Colon:$(6901,3,"one_or_more_Colon_6901","one or more:"),type_Colon:$(6902,3,"type_Colon_6902","type:"),default_Colon:$(6903,3,"default_Colon_6903","default:"),module_system_or_esModuleInterop:$(6904,3,"module_system_or_esModuleInterop_6904",'module === "system" or esModuleInterop'),false_unless_strict_is_set:$(6905,3,"false_unless_strict_is_set_6905","`false`, unless `strict` is set"),false_unless_composite_is_set:$(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:$(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:$(6908,3,"if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk_6908",'`[]` if `files` is specified, otherwise `["**/*"]`'),true_if_composite_false_otherwise:$(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:$(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:$(6911,3,"Computed_from_the_list_of_input_files_6911","Computed from the list of input files"),Platform_specific:$(6912,3,"Platform_specific_6912","Platform specific"),You_can_learn_about_all_of_the_compiler_options_at_0:$(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:$(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:$(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:$(6916,3,"COMMON_COMMANDS_6916","COMMON COMMANDS"),ALL_COMPILER_OPTIONS:$(6917,3,"ALL_COMPILER_OPTIONS_6917","ALL COMPILER OPTIONS"),WATCH_OPTIONS:$(6918,3,"WATCH_OPTIONS_6918","WATCH OPTIONS"),BUILD_OPTIONS:$(6919,3,"BUILD_OPTIONS_6919","BUILD OPTIONS"),COMMON_COMPILER_OPTIONS:$(6920,3,"COMMON_COMPILER_OPTIONS_6920","COMMON COMPILER OPTIONS"),COMMAND_LINE_FLAGS:$(6921,3,"COMMAND_LINE_FLAGS_6921","COMMAND LINE FLAGS"),tsc_Colon_The_TypeScript_Compiler:$(6922,3,"tsc_Colon_The_TypeScript_Compiler_6922","tsc: The TypeScript Compiler"),Compiles_the_current_project_tsconfig_json_in_the_working_directory:$(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:$(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:$(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:$(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:$(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:$(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:$(6929,3,"Compiles_the_current_project_with_additional_settings_6929","Compiles the current project, with additional settings."),true_for_ES2022_and_above_including_ESNext:$(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:$(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:$(7005,1,"Variable_0_implicitly_has_an_1_type_7005","Variable '{0}' implicitly has an '{1}' type."),Parameter_0_implicitly_has_an_1_type:$(7006,1,"Parameter_0_implicitly_has_an_1_type_7006","Parameter '{0}' implicitly has an '{1}' type."),Member_0_implicitly_has_an_1_type:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(7027,1,"Unreachable_code_detected_7027","Unreachable code detected.",!0),Unused_label:$(7028,1,"Unused_label_7028","Unused label.",!0),Fallthrough_case_in_switch:$(7029,1,"Fallthrough_case_in_switch_7029","Fallthrough case in switch."),Not_all_code_paths_return_a_value:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(8019,3,"Report_errors_in_js_files_8019","Report errors in .js files."),JSDoc_types_can_only_be_used_inside_documentation_comments:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(17014,1,"JSX_fragment_has_no_corresponding_closing_tag_17014","JSX fragment has no corresponding closing tag."),Expected_corresponding_closing_tag_for_JSX_fragment:$(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:$(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:$(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:$(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:$(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:$(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:$(17021,1,"Unicode_escape_sequence_cannot_appear_here_17021","Unicode escape sequence cannot appear here."),Circularity_detected_while_resolving_configuration_Colon_0:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(80010,2,"JSDoc_typedefs_may_be_converted_to_TypeScript_types_80010","JSDoc typedefs may be converted to TypeScript types."),Add_missing_super_call:$(90001,3,"Add_missing_super_call_90001","Add missing 'super()' call"),Make_super_call_the_first_statement_in_the_constructor:$(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:$(90003,3,"Change_extends_to_implements_90003","Change 'extends' to 'implements'"),Remove_unused_declaration_for_Colon_0:$(90004,3,"Remove_unused_declaration_for_Colon_0_90004","Remove unused declaration for: '{0}'"),Remove_import_from_0:$(90005,3,"Remove_import_from_0_90005","Remove import from '{0}'"),Implement_interface_0:$(90006,3,"Implement_interface_0_90006","Implement interface '{0}'"),Implement_inherited_abstract_class:$(90007,3,"Implement_inherited_abstract_class_90007","Implement inherited abstract class"),Add_0_to_unresolved_variable:$(90008,3,"Add_0_to_unresolved_variable_90008","Add '{0}.' to unresolved variable"),Remove_variable_statement:$(90010,3,"Remove_variable_statement_90010","Remove variable statement"),Remove_template_tag:$(90011,3,"Remove_template_tag_90011","Remove template tag"),Remove_type_parameters:$(90012,3,"Remove_type_parameters_90012","Remove type parameters"),Import_0_from_1:$(90013,3,"Import_0_from_1_90013",`Import '{0}' from "{1}"`),Change_0_to_1:$(90014,3,"Change_0_to_1_90014","Change '{0}' to '{1}'"),Declare_property_0:$(90016,3,"Declare_property_0_90016","Declare property '{0}'"),Add_index_signature_for_property_0:$(90017,3,"Add_index_signature_for_property_0_90017","Add index signature for property '{0}'"),Disable_checking_for_this_file:$(90018,3,"Disable_checking_for_this_file_90018","Disable checking for this file"),Ignore_this_error_message:$(90019,3,"Ignore_this_error_message_90019","Ignore this error message"),Initialize_property_0_in_the_constructor:$(90020,3,"Initialize_property_0_in_the_constructor_90020","Initialize property '{0}' in the constructor"),Initialize_static_property_0:$(90021,3,"Initialize_static_property_0_90021","Initialize static property '{0}'"),Change_spelling_to_0:$(90022,3,"Change_spelling_to_0_90022","Change spelling to '{0}'"),Declare_method_0:$(90023,3,"Declare_method_0_90023","Declare method '{0}'"),Declare_static_method_0:$(90024,3,"Declare_static_method_0_90024","Declare static method '{0}'"),Prefix_0_with_an_underscore:$(90025,3,"Prefix_0_with_an_underscore_90025","Prefix '{0}' with an underscore"),Rewrite_as_the_indexed_access_type_0:$(90026,3,"Rewrite_as_the_indexed_access_type_0_90026","Rewrite as the indexed access type '{0}'"),Declare_static_property_0:$(90027,3,"Declare_static_property_0_90027","Declare static property '{0}'"),Call_decorator_expression:$(90028,3,"Call_decorator_expression_90028","Call decorator expression"),Add_async_modifier_to_containing_function:$(90029,3,"Add_async_modifier_to_containing_function_90029","Add async modifier to containing function"),Replace_infer_0_with_unknown:$(90030,3,"Replace_infer_0_with_unknown_90030","Replace 'infer {0}' with 'unknown'"),Replace_all_unused_infer_with_unknown:$(90031,3,"Replace_all_unused_infer_with_unknown_90031","Replace all unused 'infer' with 'unknown'"),Add_parameter_name:$(90034,3,"Add_parameter_name_90034","Add parameter name"),Declare_private_property_0:$(90035,3,"Declare_private_property_0_90035","Declare private property '{0}'"),Replace_0_with_Promise_1:$(90036,3,"Replace_0_with_Promise_1_90036","Replace '{0}' with 'Promise<{1}>'"),Fix_all_incorrect_return_type_of_an_async_functions:$(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:$(90038,3,"Declare_private_method_0_90038","Declare private method '{0}'"),Remove_unused_destructuring_declaration:$(90039,3,"Remove_unused_destructuring_declaration_90039","Remove unused destructuring declaration"),Remove_unused_declarations_for_Colon_0:$(90041,3,"Remove_unused_declarations_for_Colon_0_90041","Remove unused declarations for: '{0}'"),Declare_a_private_field_named_0:$(90053,3,"Declare_a_private_field_named_0_90053","Declare a private field named '{0}'."),Includes_imports_of_types_referenced_by_0:$(90054,3,"Includes_imports_of_types_referenced_by_0_90054","Includes imports of types referenced by '{0}'"),Remove_type_from_import_declaration_from_0:$(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:$(90056,3,"Remove_type_from_import_of_0_from_1_90056",`Remove 'type' from import of '{0}' from "{1}"`),Add_import_from_0:$(90057,3,"Add_import_from_0_90057",'Add import from "{0}"'),Update_import_from_0:$(90058,3,"Update_import_from_0_90058",'Update import from "{0}"'),Export_0_from_module_1:$(90059,3,"Export_0_from_module_1_90059","Export '{0}' from module '{1}'"),Export_all_referenced_locals:$(90060,3,"Export_all_referenced_locals_90060","Export all referenced locals"),Update_modifiers_of_0:$(90061,3,"Update_modifiers_of_0_90061","Update modifiers of '{0}'"),Add_annotation_of_type_0:$(90062,3,"Add_annotation_of_type_0_90062","Add annotation of type '{0}'"),Add_return_type_0:$(90063,3,"Add_return_type_0_90063","Add return type '{0}'"),Extract_base_class_to_variable:$(90064,3,"Extract_base_class_to_variable_90064","Extract base class to variable"),Extract_default_export_to_variable:$(90065,3,"Extract_default_export_to_variable_90065","Extract default export to variable"),Extract_binding_expressions_to_variable:$(90066,3,"Extract_binding_expressions_to_variable_90066","Extract binding expressions to variable"),Add_all_missing_type_annotations:$(90067,3,"Add_all_missing_type_annotations_90067","Add all missing type annotations"),Add_satisfies_and_an_inline_type_assertion_with_0:$(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:$(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:$(90070,3,"Mark_array_literal_as_const_90070","Mark array literal as const"),Annotate_types_of_properties_expando_function_in_a_namespace:$(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:$(95001,3,"Convert_function_to_an_ES2015_class_95001","Convert function to an ES2015 class"),Convert_0_to_1_in_0:$(95003,3,"Convert_0_to_1_in_0_95003","Convert '{0}' to '{1} in {0}'"),Extract_to_0_in_1:$(95004,3,"Extract_to_0_in_1_95004","Extract to {0} in {1}"),Extract_function:$(95005,3,"Extract_function_95005","Extract function"),Extract_constant:$(95006,3,"Extract_constant_95006","Extract constant"),Extract_to_0_in_enclosing_scope:$(95007,3,"Extract_to_0_in_enclosing_scope_95007","Extract to {0} in enclosing scope"),Extract_to_0_in_1_scope:$(95008,3,"Extract_to_0_in_1_scope_95008","Extract to {0} in {1} scope"),Annotate_with_type_from_JSDoc:$(95009,3,"Annotate_with_type_from_JSDoc_95009","Annotate with type from JSDoc"),Infer_type_of_0_from_usage:$(95011,3,"Infer_type_of_0_from_usage_95011","Infer type of '{0}' from usage"),Infer_parameter_types_from_usage:$(95012,3,"Infer_parameter_types_from_usage_95012","Infer parameter types from usage"),Convert_to_default_import:$(95013,3,"Convert_to_default_import_95013","Convert to default import"),Install_0:$(95014,3,"Install_0_95014","Install '{0}'"),Replace_import_with_0:$(95015,3,"Replace_import_with_0_95015","Replace import with '{0}'."),Use_synthetic_default_member:$(95016,3,"Use_synthetic_default_member_95016","Use synthetic 'default' member."),Convert_to_ES_module:$(95017,3,"Convert_to_ES_module_95017","Convert to ES module"),Add_undefined_type_to_property_0:$(95018,3,"Add_undefined_type_to_property_0_95018","Add 'undefined' type to property '{0}'"),Add_initializer_to_property_0:$(95019,3,"Add_initializer_to_property_0_95019","Add initializer to property '{0}'"),Add_definite_assignment_assertion_to_property_0:$(95020,3,"Add_definite_assignment_assertion_to_property_0_95020","Add definite assignment assertion to property '{0}'"),Convert_all_type_literals_to_mapped_type:$(95021,3,"Convert_all_type_literals_to_mapped_type_95021","Convert all type literals to mapped type"),Add_all_missing_members:$(95022,3,"Add_all_missing_members_95022","Add all missing members"),Infer_all_types_from_usage:$(95023,3,"Infer_all_types_from_usage_95023","Infer all types from usage"),Delete_all_unused_declarations:$(95024,3,"Delete_all_unused_declarations_95024","Delete all unused declarations"),Prefix_all_unused_declarations_with_where_possible:$(95025,3,"Prefix_all_unused_declarations_with_where_possible_95025","Prefix all unused declarations with '_' where possible"),Fix_all_detected_spelling_errors:$(95026,3,"Fix_all_detected_spelling_errors_95026","Fix all detected spelling errors"),Add_initializers_to_all_uninitialized_properties:$(95027,3,"Add_initializers_to_all_uninitialized_properties_95027","Add initializers to all uninitialized properties"),Add_definite_assignment_assertions_to_all_uninitialized_properties:$(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:$(95029,3,"Add_undefined_type_to_all_uninitialized_properties_95029","Add undefined type to all uninitialized properties"),Change_all_jsdoc_style_types_to_TypeScript:$(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:$(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:$(95032,3,"Implement_all_unimplemented_interfaces_95032","Implement all unimplemented interfaces"),Install_all_missing_types_packages:$(95033,3,"Install_all_missing_types_packages_95033","Install all missing types packages"),Rewrite_all_as_indexed_access_types:$(95034,3,"Rewrite_all_as_indexed_access_types_95034","Rewrite all as indexed access types"),Convert_all_to_default_imports:$(95035,3,"Convert_all_to_default_imports_95035","Convert all to default imports"),Make_all_super_calls_the_first_statement_in_their_constructor:$(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:$(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:$(95038,3,"Change_all_extended_interfaces_to_implements_95038","Change all extended interfaces to 'implements'"),Add_all_missing_super_calls:$(95039,3,"Add_all_missing_super_calls_95039","Add all missing super calls"),Implement_all_inherited_abstract_classes:$(95040,3,"Implement_all_inherited_abstract_classes_95040","Implement all inherited abstract classes"),Add_all_missing_async_modifiers:$(95041,3,"Add_all_missing_async_modifiers_95041","Add all missing 'async' modifiers"),Add_ts_ignore_to_all_error_messages:$(95042,3,"Add_ts_ignore_to_all_error_messages_95042","Add '@ts-ignore' to all error messages"),Annotate_everything_with_types_from_JSDoc:$(95043,3,"Annotate_everything_with_types_from_JSDoc_95043","Annotate everything with types from JSDoc"),Add_to_all_uncalled_decorators:$(95044,3,"Add_to_all_uncalled_decorators_95044","Add '()' to all uncalled decorators"),Convert_all_constructor_functions_to_classes:$(95045,3,"Convert_all_constructor_functions_to_classes_95045","Convert all constructor functions to classes"),Generate_get_and_set_accessors:$(95046,3,"Generate_get_and_set_accessors_95046","Generate 'get' and 'set' accessors"),Convert_require_to_import:$(95047,3,"Convert_require_to_import_95047","Convert 'require' to 'import'"),Convert_all_require_to_import:$(95048,3,"Convert_all_require_to_import_95048","Convert all 'require' to 'import'"),Move_to_a_new_file:$(95049,3,"Move_to_a_new_file_95049","Move to a new file"),Remove_unreachable_code:$(95050,3,"Remove_unreachable_code_95050","Remove unreachable code"),Remove_all_unreachable_code:$(95051,3,"Remove_all_unreachable_code_95051","Remove all unreachable code"),Add_missing_typeof:$(95052,3,"Add_missing_typeof_95052","Add missing 'typeof'"),Remove_unused_label:$(95053,3,"Remove_unused_label_95053","Remove unused label"),Remove_all_unused_labels:$(95054,3,"Remove_all_unused_labels_95054","Remove all unused labels"),Convert_0_to_mapped_object_type:$(95055,3,"Convert_0_to_mapped_object_type_95055","Convert '{0}' to mapped object type"),Convert_namespace_import_to_named_imports:$(95056,3,"Convert_namespace_import_to_named_imports_95056","Convert namespace import to named imports"),Convert_named_imports_to_namespace_import:$(95057,3,"Convert_named_imports_to_namespace_import_95057","Convert named imports to namespace import"),Add_or_remove_braces_in_an_arrow_function:$(95058,3,"Add_or_remove_braces_in_an_arrow_function_95058","Add or remove braces in an arrow function"),Add_braces_to_arrow_function:$(95059,3,"Add_braces_to_arrow_function_95059","Add braces to arrow function"),Remove_braces_from_arrow_function:$(95060,3,"Remove_braces_from_arrow_function_95060","Remove braces from arrow function"),Convert_default_export_to_named_export:$(95061,3,"Convert_default_export_to_named_export_95061","Convert default export to named export"),Convert_named_export_to_default_export:$(95062,3,"Convert_named_export_to_default_export_95062","Convert named export to default export"),Add_missing_enum_member_0:$(95063,3,"Add_missing_enum_member_0_95063","Add missing enum member '{0}'"),Add_all_missing_imports:$(95064,3,"Add_all_missing_imports_95064","Add all missing imports"),Convert_to_async_function:$(95065,3,"Convert_to_async_function_95065","Convert to async function"),Convert_all_to_async_functions:$(95066,3,"Convert_all_to_async_functions_95066","Convert all to async functions"),Add_missing_call_parentheses:$(95067,3,"Add_missing_call_parentheses_95067","Add missing call parentheses"),Add_all_missing_call_parentheses:$(95068,3,"Add_all_missing_call_parentheses_95068","Add all missing call parentheses"),Add_unknown_conversion_for_non_overlapping_types:$(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:$(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:$(95071,3,"Add_missing_new_operator_to_call_95071","Add missing 'new' operator to call"),Add_missing_new_operator_to_all_calls:$(95072,3,"Add_missing_new_operator_to_all_calls_95072","Add missing 'new' operator to all calls"),Add_names_to_all_parameters_without_names:$(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:$(95074,3,"Enable_the_experimentalDecorators_option_in_your_configuration_file_95074","Enable the 'experimentalDecorators' option in your configuration file"),Convert_parameters_to_destructured_object:$(95075,3,"Convert_parameters_to_destructured_object_95075","Convert parameters to destructured object"),Extract_type:$(95077,3,"Extract_type_95077","Extract type"),Extract_to_type_alias:$(95078,3,"Extract_to_type_alias_95078","Extract to type alias"),Extract_to_typedef:$(95079,3,"Extract_to_typedef_95079","Extract to typedef"),Infer_this_type_of_0_from_usage:$(95080,3,"Infer_this_type_of_0_from_usage_95080","Infer 'this' type of '{0}' from usage"),Add_const_to_unresolved_variable:$(95081,3,"Add_const_to_unresolved_variable_95081","Add 'const' to unresolved variable"),Add_const_to_all_unresolved_variables:$(95082,3,"Add_const_to_all_unresolved_variables_95082","Add 'const' to all unresolved variables"),Add_await:$(95083,3,"Add_await_95083","Add 'await'"),Add_await_to_initializer_for_0:$(95084,3,"Add_await_to_initializer_for_0_95084","Add 'await' to initializer for '{0}'"),Fix_all_expressions_possibly_missing_await:$(95085,3,"Fix_all_expressions_possibly_missing_await_95085","Fix all expressions possibly missing 'await'"),Remove_unnecessary_await:$(95086,3,"Remove_unnecessary_await_95086","Remove unnecessary 'await'"),Remove_all_unnecessary_uses_of_await:$(95087,3,"Remove_all_unnecessary_uses_of_await_95087","Remove all unnecessary uses of 'await'"),Enable_the_jsx_flag_in_your_configuration_file:$(95088,3,"Enable_the_jsx_flag_in_your_configuration_file_95088","Enable the '--jsx' flag in your configuration file"),Add_await_to_initializers:$(95089,3,"Add_await_to_initializers_95089","Add 'await' to initializers"),Extract_to_interface:$(95090,3,"Extract_to_interface_95090","Extract to interface"),Convert_to_a_bigint_numeric_literal:$(95091,3,"Convert_to_a_bigint_numeric_literal_95091","Convert to a bigint numeric literal"),Convert_all_to_bigint_numeric_literals:$(95092,3,"Convert_all_to_bigint_numeric_literals_95092","Convert all to bigint numeric literals"),Convert_const_to_let:$(95093,3,"Convert_const_to_let_95093","Convert 'const' to 'let'"),Prefix_with_declare:$(95094,3,"Prefix_with_declare_95094","Prefix with 'declare'"),Prefix_all_incorrect_property_declarations_with_declare:$(95095,3,"Prefix_all_incorrect_property_declarations_with_declare_95095","Prefix all incorrect property declarations with 'declare'"),Convert_to_template_string:$(95096,3,"Convert_to_template_string_95096","Convert to template string"),Add_export_to_make_this_file_into_a_module:$(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:$(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:$(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:$(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:$(95101,3,"Convert_all_invalid_characters_to_HTML_entity_code_95101","Convert all invalid characters to HTML entity code"),Convert_all_const_to_let:$(95102,3,"Convert_all_const_to_let_95102","Convert all 'const' to 'let'"),Convert_function_expression_0_to_arrow_function:$(95105,3,"Convert_function_expression_0_to_arrow_function_95105","Convert function expression '{0}' to arrow function"),Convert_function_declaration_0_to_arrow_function:$(95106,3,"Convert_function_declaration_0_to_arrow_function_95106","Convert function declaration '{0}' to arrow function"),Fix_all_implicit_this_errors:$(95107,3,"Fix_all_implicit_this_errors_95107","Fix all implicit-'this' errors"),Wrap_invalid_character_in_an_expression_container:$(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:$(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:$(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:$(95111,3,"Add_a_return_statement_95111","Add a return statement"),Remove_braces_from_arrow_function_body:$(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:$(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:$(95114,3,"Add_all_missing_return_statement_95114","Add all missing return statement"),Remove_braces_from_all_arrow_function_bodies_with_relevant_issues:$(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:$(95116,3,"Wrap_all_object_literal_with_parentheses_95116","Wrap all object literal with parentheses"),Move_labeled_tuple_element_modifiers_to_labels:$(95117,3,"Move_labeled_tuple_element_modifiers_to_labels_95117","Move labeled tuple element modifiers to labels"),Convert_overload_list_to_single_signature:$(95118,3,"Convert_overload_list_to_single_signature_95118","Convert overload list to single signature"),Generate_get_and_set_accessors_for_all_overriding_properties:$(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:$(95120,3,"Wrap_in_JSX_fragment_95120","Wrap in JSX fragment"),Wrap_all_unparented_JSX_in_JSX_fragment:$(95121,3,"Wrap_all_unparented_JSX_in_JSX_fragment_95121","Wrap all unparented JSX in JSX fragment"),Convert_arrow_function_or_function_expression:$(95122,3,"Convert_arrow_function_or_function_expression_95122","Convert arrow function or function expression"),Convert_to_anonymous_function:$(95123,3,"Convert_to_anonymous_function_95123","Convert to anonymous function"),Convert_to_named_function:$(95124,3,"Convert_to_named_function_95124","Convert to named function"),Convert_to_arrow_function:$(95125,3,"Convert_to_arrow_function_95125","Convert to arrow function"),Remove_parentheses:$(95126,3,"Remove_parentheses_95126","Remove parentheses"),Could_not_find_a_containing_arrow_function:$(95127,3,"Could_not_find_a_containing_arrow_function_95127","Could not find a containing arrow function"),Containing_function_is_not_an_arrow_function:$(95128,3,"Containing_function_is_not_an_arrow_function_95128","Containing function is not an arrow function"),Could_not_find_export_statement:$(95129,3,"Could_not_find_export_statement_95129","Could not find export statement"),This_file_already_has_a_default_export:$(95130,3,"This_file_already_has_a_default_export_95130","This file already has a default export"),Could_not_find_import_clause:$(95131,3,"Could_not_find_import_clause_95131","Could not find import clause"),Could_not_find_namespace_import_or_named_imports:$(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:$(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:$(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:$(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:$(95136,3,"Name_is_not_valid_95136","Name is not valid"),Can_only_convert_property_with_modifier:$(95137,3,"Can_only_convert_property_with_modifier_95137","Can only convert property with modifier"),Switch_each_misused_0_to_1:$(95138,3,"Switch_each_misused_0_to_1_95138","Switch each misused '{0}' to '{1}'"),Convert_to_optional_chain_expression:$(95139,3,"Convert_to_optional_chain_expression_95139","Convert to optional chain expression"),Could_not_find_convertible_access_expression:$(95140,3,"Could_not_find_convertible_access_expression_95140","Could not find convertible access expression"),Could_not_find_matching_access_expressions:$(95141,3,"Could_not_find_matching_access_expressions_95141","Could not find matching access expressions"),Can_only_convert_logical_AND_access_chains:$(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:$(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:$(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:$(95145,3,"Use_element_access_for_0_95145","Use element access for '{0}'"),Use_element_access_for_all_undeclared_properties:$(95146,3,"Use_element_access_for_all_undeclared_properties_95146","Use element access for all undeclared properties."),Delete_all_unused_imports:$(95147,3,"Delete_all_unused_imports_95147","Delete all unused imports"),Infer_function_return_type:$(95148,3,"Infer_function_return_type_95148","Infer function return type"),Return_type_must_be_inferred_from_a_function:$(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:$(95150,3,"Could_not_determine_function_return_type_95150","Could not determine function return type"),Could_not_convert_to_arrow_function:$(95151,3,"Could_not_convert_to_arrow_function_95151","Could not convert to arrow function"),Could_not_convert_to_named_function:$(95152,3,"Could_not_convert_to_named_function_95152","Could not convert to named function"),Could_not_convert_to_anonymous_function:$(95153,3,"Could_not_convert_to_anonymous_function_95153","Could not convert to anonymous function"),Can_only_convert_string_concatenations_and_string_literals:$(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:$(95155,3,"Selection_is_not_a_valid_statement_or_statements_95155","Selection is not a valid statement or statements"),Add_missing_function_declaration_0:$(95156,3,"Add_missing_function_declaration_0_95156","Add missing function declaration '{0}'"),Add_all_missing_function_declarations:$(95157,3,"Add_all_missing_function_declarations_95157","Add all missing function declarations"),Method_not_implemented:$(95158,3,"Method_not_implemented_95158","Method not implemented."),Function_not_implemented:$(95159,3,"Function_not_implemented_95159","Function not implemented."),Add_override_modifier:$(95160,3,"Add_override_modifier_95160","Add 'override' modifier"),Remove_override_modifier:$(95161,3,"Remove_override_modifier_95161","Remove 'override' modifier"),Add_all_missing_override_modifiers:$(95162,3,"Add_all_missing_override_modifiers_95162","Add all missing 'override' modifiers"),Remove_all_unnecessary_override_modifiers:$(95163,3,"Remove_all_unnecessary_override_modifiers_95163","Remove all unnecessary 'override' modifiers"),Can_only_convert_named_export:$(95164,3,"Can_only_convert_named_export_95164","Can only convert named export"),Add_missing_properties:$(95165,3,"Add_missing_properties_95165","Add missing properties"),Add_all_missing_properties:$(95166,3,"Add_all_missing_properties_95166","Add all missing properties"),Add_missing_attributes:$(95167,3,"Add_missing_attributes_95167","Add missing attributes"),Add_all_missing_attributes:$(95168,3,"Add_all_missing_attributes_95168","Add all missing attributes"),Add_undefined_to_optional_property_type:$(95169,3,"Add_undefined_to_optional_property_type_95169","Add 'undefined' to optional property type"),Convert_named_imports_to_default_import:$(95170,3,"Convert_named_imports_to_default_import_95170","Convert named imports to default import"),Delete_unused_param_tag_0:$(95171,3,"Delete_unused_param_tag_0_95171","Delete unused '@param' tag '{0}'"),Delete_all_unused_param_tags:$(95172,3,"Delete_all_unused_param_tags_95172","Delete all unused '@param' tags"),Rename_param_tag_name_0_to_1:$(95173,3,"Rename_param_tag_name_0_to_1_95173","Rename '@param' tag name '{0}' to '{1}'"),Use_0:$(95174,3,"Use_0_95174","Use `{0}`."),Use_Number_isNaN_in_all_conditions:$(95175,3,"Use_Number_isNaN_in_all_conditions_95175","Use `Number.isNaN` in all conditions."),Convert_typedef_to_TypeScript_type:$(95176,3,"Convert_typedef_to_TypeScript_type_95176","Convert typedef to TypeScript type."),Convert_all_typedef_to_TypeScript_types:$(95177,3,"Convert_all_typedef_to_TypeScript_types_95177","Convert all typedef to TypeScript types."),Move_to_file:$(95178,3,"Move_to_file_95178","Move to file"),Cannot_move_to_file_selected_file_is_invalid:$(95179,3,"Cannot_move_to_file_selected_file_is_invalid_95179","Cannot move to file, selected file is invalid"),Use_import_type:$(95180,3,"Use_import_type_95180","Use 'import type'"),Use_type_0:$(95181,3,"Use_type_0_95181","Use 'type {0}'"),Fix_all_with_type_only_imports:$(95182,3,"Fix_all_with_type_only_imports_95182","Fix all with type-only imports"),Cannot_move_statements_to_the_selected_file:$(95183,3,"Cannot_move_statements_to_the_selected_file_95183","Cannot move statements to the selected file"),Inline_variable:$(95184,3,"Inline_variable_95184","Inline variable"),Could_not_find_variable_to_inline:$(95185,3,"Could_not_find_variable_to_inline_95185","Could not find variable to inline."),Variables_with_multiple_declarations_cannot_be_inlined:$(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:$(95187,3,"Add_missing_comma_for_object_member_completion_0_95187","Add missing comma for object member completion '{0}'."),Add_missing_parameter_to_0:$(95188,3,"Add_missing_parameter_to_0_95188","Add missing parameter to '{0}'"),Add_missing_parameters_to_0:$(95189,3,"Add_missing_parameters_to_0_95189","Add missing parameters to '{0}'"),Add_all_missing_parameters:$(95190,3,"Add_all_missing_parameters_95190","Add all missing parameters"),Add_optional_parameter_to_0:$(95191,3,"Add_optional_parameter_to_0_95191","Add optional parameter to '{0}'"),Add_optional_parameters_to_0:$(95192,3,"Add_optional_parameters_to_0_95192","Add optional parameters to '{0}'"),Add_all_optional_parameters:$(95193,3,"Add_all_optional_parameters_95193","Add all optional parameters"),Wrap_in_parentheses:$(95194,3,"Wrap_in_parentheses_95194","Wrap in parentheses"),Wrap_all_invalid_decorator_expressions_in_parentheses:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(18046,1,"_0_is_of_type_unknown_18046","'{0}' is of type 'unknown'."),_0_is_possibly_null:$(18047,1,"_0_is_possibly_null_18047","'{0}' is possibly 'null'."),_0_is_possibly_undefined:$(18048,1,"_0_is_possibly_undefined_18048","'{0}' is possibly 'undefined'."),_0_is_possibly_null_or_undefined:$(18049,1,"_0_is_possibly_null_or_undefined_18049","'{0}' is possibly 'null' or 'undefined'."),The_value_0_cannot_be_used_here:$(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:$(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:$(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:$(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:$(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:$(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 MI(n){return n>=80}function FR(n){return n===32||MI(n)}var k={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},L=new Map(Object.entries(k)),ee=new Map(Object.entries({...k,"{":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,">":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})),ve=new Map(Object.entries({d:1,g:2,i:4,m:8,s:16,u:32,v:64,y:128})),xe=new Map([[1,9],[16,5],[32,2],[64,99],[128,2]]),gt=[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],nr=[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],Xr=[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],Kn=[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],to=/^\/\/\/?\s*@(ts-expect-error|ts-ignore)/,Fa=/^(?:\/|\*)*\s*@(ts-expect-error|ts-ignore)/,el=/@(?:see|link)/i;function Eo(n,c){if(n=2?Eo(n,Xr):Eo(n,gt)}function nd(n,c){return c>=2?Eo(n,Kn):Eo(n,nr)}function YC(n){let c=[];return n.forEach((u,d)=>{c[u]=d}),c}var Sn=YC(ee);function vr(n){return Sn[n]}function Hn(n){return ee.get(n)}var Fo=YC(ve);function tc(n){return Fo[n]}function dA(n){return ve.get(n)}function pc(n){let c=[],u=0,d=0;for(;u127&&HC(I)&&(c.push(d),d=u);break}}return c.push(d),c}function Xu(n,c,u,d){return n.getPositionOfLineAndCharacter?n.getPositionOfLineAndCharacter(c,u,d):Lu(Rc(n),c,u,n.text,d)}function Lu(n,c,u,d,I){(c<0||c>=n.length)&&(I?c=c<0?0:c>=n.length?n.length-1:c:w.fail(`Bad line number. Line: ${c}, lineStarts.length: ${n.length} , line map is correct? ${d!==void 0?Je(n,pc(d)):"unknown"}`));let h=n[c]+u;return I?h>n[c+1]?n[c+1]:typeof d=="string"&&h>d.length?d.length:h:(c=8192&&n<=8203||n===8239||n===8287||n===12288||n===65279}function HC(n){return n===10||n===13||n===8232||n===8233}function yB(n){return n>=48&&n<=57}function ZR(n){return yB(n)||n>=65&&n<=70||n>=97&&n<=102}function sG(n){return n>=65&&n<=90||n>=97&&n<=122}function E3(n){return sG(n)||yB(n)||n===95}function lZ(n){return n>=48&&n<=55}function sN(n,c){let u=n.charCodeAt(c);switch(u){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 c===0;default:return u>127}}function Ju(n,c,u,d,I){if(Gv(c))return c;let h=!1;for(;;){let b=n.charCodeAt(c);switch(b){case 13:n.charCodeAt(c+1)===10&&c++;case 10:if(c++,u)return c;h=!!I;continue;case 9:case 11:case 12:case 32:c++;continue;case 47:if(d)break;if(n.charCodeAt(c+1)===47){for(c+=2;c127&&Xm(b)){c++;continue}break}return c}}var W9=7;function oN(n,c){if(w.assert(c>=0),c===0||HC(n.charCodeAt(c-1))){let u=n.charCodeAt(c);if(c+W9=0&&u127&&Xm(ue)){M&&HC(ue)&&(P=!0),u++;continue}break e}}return M&&(re=I(R,N,V,P,h,re)),re}function vf(n,c,u,d){return NS(!1,n,c,!1,u,d)}function Ix(n,c,u,d){return NS(!1,n,c,!0,u,d)}function Cx(n,c,u,d,I){return NS(!0,n,c,!1,u,d,I)}function gZ(n,c,u,d,I){return NS(!0,n,c,!0,u,d,I)}function ag(n,c,u,d,I,h=[]){return h.push({kind:u,pos:n,end:c,hasTrailingNewLine:d}),h}function Gb(n,c){return Cx(n,c,ag,void 0,void 0)}function m2(n,c){return gZ(n,c,ag,void 0,void 0)}function aG(n){let c=aN.exec(n);if(c)return c[0]}function zy(n,c){return sG(n)||n===36||n===95||n>127&&vg(n,c)}function h2(n,c,u){return E3(n)||n===36||(u===1?n===45||n===58:!1)||n>127&&nd(n,c)}function Ke(n,c,u){let d=Er(n,0);if(!zy(d,c))return!1;for(let I=Jr(d);IP,getStartPos:()=>P,getTokenEnd:()=>N,getTextPos:()=>N,getToken:()=>te,getTokenStart:()=>M,getTokenPos:()=>M,getTokenText:()=>R.substring(M,N),getTokenValue:()=>re,hasUnicodeEscape:()=>(ue&1024)!==0,hasExtendedUnicodeEscape:()=>(ue&8)!==0,hasPrecedingLineBreak:()=>(ue&1)!==0,hasPrecedingJSDocComment:()=>(ue&2)!==0,isIdentifier:()=>te===80||te>118,isReservedWord:()=>te>=83&&te<=118,isUnterminated:()=>(ue&4)!==0,getCommentDirectives:()=>Ae,getNumericLiteralFlags:()=>ue&25584,getTokenFlags:()=>ue,reScanGreaterToken:pr,reScanAsteriskEqualsToken:zr,reScanSlashToken:$n,reScanTemplateToken:jn,reScanTemplateHeadOrNoSubstitutionTemplate:xs,scanJsxIdentifier:Cc,scanJsxAttributeValue:_s,reScanJsxAttributeValue:Wu,reScanJsxToken:Ec,reScanLessThanToken:xi,reScanHashToken:rc,reScanQuestionToken:Vl,reScanInvalidIdentifier:Vr,scanJsxToken:ul,scanJsDocToken:ni,scanJSDocCommentTextToken:ir,scan:mr,getText:Nc,clearCommentDirectives:cg,setText:Ku,setScriptTarget:BA,setLanguageVariant:kr,setScriptKind:en,setJSDocParsingMode:ct,setOnError:Bi,resetTokenState:rn,setTextPos:rn,setSkipJsDocLeadingAsterisks:St,hasLeadingAsterisks:br,tryScan:nc,lookAhead:qa,scanRange:Hs};return w.isDebugging&&Object.defineProperty(Qe,"__debugShowCurrentPositionInText",{get:()=>{let Qt=Qe.getText();return Qt.slice(0,Qe.getTokenFullStart())+"\u2551"+Qt.slice(Qe.getTokenFullStart())}}),Qe;function De(Qt){return Er(R,Qt)}function lt(Qt){return Qt>=0&&Qt=0&&Qt=65&&Pn<=70)Pn+=32;else if(!(Pn>=48&&Pn<=57||Pn>=97&&Pn<=102))break;ti.push(Pn),N++,kn=!1}return ti.length=V){Pr+=R.substring(ti,N),ue|=4,st(Z.Unterminated_string_literal);break}let cr=Le(N);if(cr===_r){Pr+=R.substring(ti,N),N++;break}if(cr===92&&!Qt){Pr+=R.substring(ti,N),Pr+=Et(3),ti=N;continue}if((cr===10||cr===13)&&!Qt){Pr+=R.substring(ti,N),ue|=4,st(Z.Unterminated_string_literal);break}N++}return Pr}function ht(Qt){let _r=Le(N)===96;N++;let Pr=N,ti="",cr;for(;;){if(N>=V){ti+=R.substring(Pr,N),ue|=4,st(Z.Unterminated_template_literal),cr=_r?15:18;break}let kn=Le(N);if(kn===96){ti+=R.substring(Pr,N),N++,cr=_r?15:18;break}if(kn===36&&N+1=V)return st(Z.Unexpected_end_of_text),"";let Pr=Le(N);switch(N++,Pr){case 48:if(N>=V||!yB(Le(N)))return"\0";case 49:case 50:case 51:N=55296&&ti<=56319&&N+6=56320&&an<=57343)return N=Pn,cr+String.fromCharCode(an)}return cr;case 120:for(;N<_r+4;N++)if(!(N1114111&&(Qt&&st(Z.An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive,Pr,N-Pr),kn=!0),N>=V?(Qt&&st(Z.Unexpected_end_of_text),kn=!0):Le(N)===125?N++:(Qt&&st(Z.Unterminated_Unicode_escape_sequence),kn=!0),kn?(ue|=2048,R.substring(_r,N)):(ue|=8,Ss(cr))}function Tt(){if(N+5=0&&h2(Pr,n)){Qt+=Kt(!0),_r=N;continue}if(Pr=Tt(),!(Pr>=0&&h2(Pr,n)))break;ue|=1024,Qt+=R.substring(_r,N),Qt+=Ss(Pr),N+=6,_r=N}else break}return Qt+=R.substring(_r,N),Qt}function Zt(){let Qt=re.length;if(Qt>=2&&Qt<=12){let _r=re.charCodeAt(0);if(_r>=97&&_r<=122){let Pr=L.get(re);if(Pr!==void 0)return te=Pr}}return te=80}function Dr(Qt){let _r="",Pr=!1,ti=!1;for(;;){let cr=Le(N);if(cr===95){ue|=512,Pr?(Pr=!1,ti=!0):st(ti?Z.Multiple_consecutive_numeric_separators_are_not_permitted:Z.Numeric_separators_are_not_allowed_here,N,1),N++;continue}if(Pr=!0,!yB(cr)||cr-48>=Qt)break;_r+=R[N],N++,ti=!1}return Le(N-1)===95&&st(Z.Numeric_separators_are_not_allowed_here,N-1,1),_r}function jt(){return Le(N)===110?(re+="n",ue&384&&(re=r4(re)+"n"),N++,10):(re=""+(ue&128?parseInt(re.slice(2),2):ue&256?parseInt(re.slice(2),8):+re),9)}function mr(){for(P=N,ue=0,Be=!1;;){if(M=N,N>=V)return te=1;let Qt=De(N);if(N===0&&Qt===35&&uZ(R,N)){if(N=oG(R,N),c)continue;return te=6}switch(Qt){case 10:case 13:if(ue|=1,c){N++;continue}else return Qt===13&&N+1=0&&zy(_r,n))return re=Kt(!0)+kt(),te=Zt();let Pr=Tt();return Pr>=0&&zy(Pr,n)?(N+=6,ue|=1024,re=String.fromCharCode(Pr)+kt(),te=Zt()):(st(Z.Invalid_character),N++,te=0);case 35:if(N!==0&&R[N+1]==="!")return st(Z.can_only_be_used_at_the_start_of_a_file,N,2),N++,te=0;let ti=De(N+1);if(ti===92){N++;let Pn=Lt();if(Pn>=0&&zy(Pn,n))return re="#"+Kt(!0)+kt(),te=81;let an=Tt();if(an>=0&&zy(an,n))return N+=6,ue|=1024,re="#"+String.fromCharCode(an)+kt(),te=81;N--}return zy(ti,n)?(N++,Yr(ti,n)):(re="#",st(Z.Invalid_character,N++,Jr(Qt))),te=81;case 65533:return st(Z.File_appears_to_be_binary,0,0),N=V,te=8;default:let cr=Yr(Qt,n);if(cr)return te=cr;if($_(Qt)){N+=Jr(Qt);continue}else if(HC(Qt)){ue|=1,N+=Jr(Qt);continue}let kn=Jr(Qt);return st(Z.Invalid_character,N,kn),N+=kn,te=0}}}function Pt(){switch(Ne){case 0:return!0;case 1:return!1}return Fe!==3&&Fe!==4?!0:Ne===3?!1:el.test(R.slice(P,N))}function Vr(){w.assert(te===0,"'reScanInvalidIdentifier' should only be called when the current token is 'SyntaxKind.Unknown'."),N=M=P,ue=0;let Qt=De(N),_r=Yr(Qt,99);return _r?te=_r:(N+=Jr(Qt),te)}function Yr(Qt,_r){let Pr=Qt;if(zy(Pr,_r)){for(N+=Jr(Pr);N=V)return te=1;let _r=Le(N);if(_r===60)return Le(N+1)===47?(N+=2,te=31):(N++,te=30);if(_r===123)return N++,te=19;let Pr=0;for(;N0)break;Xm(_r)||(Pr=N)}N++}return re=R.substring(P,N),Pr===-1?13:12}function Cc(){if(MI(te)){for(;N=V)return te=1;for(let _r=Le(N);N=0&&$_(Le(N-1))&&!(N+1=V)return te=1;let Qt=De(N);switch(N+=Jr(Qt),Qt){case 9:case 11:case 12:case 32:for(;N=0&&zy(_r,n))return re=Kt(!0)+kt(),te=Zt();let Pr=Tt();return Pr>=0&&zy(Pr,n)?(N+=6,ue|=1024,re=String.fromCharCode(Pr)+kt(),te=Zt()):(N++,te=0)}if(zy(Qt,n)){let _r=Qt;for(;N=0),N=Qt,P=Qt,M=Qt,te=0,re=void 0,ue=0}function St(Qt){de+=Qt?1:-1}function br(){return Be}}function Er(n,c){return n.codePointAt(c)}function Jr(n){return n>=65536?2:n===-1?0:1}function Un(n){if(w.assert(0<=n&&n<=1114111),n<=65535)return String.fromCharCode(n);let c=Math.floor((n-65536)/1024)+55296,u=(n-65536)%1024+56320;return String.fromCharCode(c,u)}var Ki=String.fromCodePoint?n=>String.fromCodePoint(n):Un;function Ss(n){return Ki(n)}var vo=new Map(Object.entries({General_Category:"General_Category",gc:"General_Category",Script:"Script",sc:"Script",Script_Extensions:"Script_Extensions",scx:"Script_Extensions"})),Pa=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"]),js=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"]),xc={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};xc.Script_Extensions=xc.Script;function Jl(n){return Op(n)||yd(n)}function nA(n){return Ir(n,g6,Jce)}function Ig(n){switch(iA(n)){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 Uu(n){return n.start+n.length}function NE(n){return n.length===0}function Cy(n,c){return c>=n.start&&c=n.pos&&c<=n.end}function y2(n,c){return c.start>=n.start&&Uu(c)<=Uu(n)}function LR(n,c){return B3(n,c)!==void 0}function B3(n,c){let u=AZ(n,c);return u&&u.length===0?void 0:u}function pA(n,c){return e0(n.start,n.length,c.start,c.length)}function sI(n,c,u){return e0(n.start,n.length,c,u)}function e0(n,c,u,d){let I=n+c,h=u+d;return u<=I&&h>=n}function my(n,c){return c<=Uu(n)&&c>=n.start}function AZ(n,c){let u=Math.max(n.start,c.start),d=Math.min(Uu(n),Uu(c));return u<=d?Wd(u,d):void 0}function bd(n,c){if(n<0)throw new Error("start < 0");if(c<0)throw new Error("length < 0");return{start:n,length:c}}function Wd(n,c){return bd(n,c-n)}function Ys(n){return bd(n.span.start,n.newLength)}function K(n){return NE(n.span)&&n.newLength===0}function Ce(n,c){if(c<0)throw new Error("newLength < 0");return{span:n,newLength:c}}var Ze=Ce(bd(0,0),0);function pt(n){if(n.length===0)return Ze;if(n.length===1)return n[0];let c=n[0],u=c.span.start,d=Uu(c.span),I=u+c.newLength;for(let h=1;h=2&&n.charCodeAt(0)===95&&n.charCodeAt(1)===95?"_"+n:n}function Sc(n){let c=n;return c.length>=3&&c.charCodeAt(0)===95&&c.charCodeAt(1)===95&&c.charCodeAt(2)===95?c.substr(1):c}function ao(n){return Sc(n.escapedText)}function VR(n){let c=Hn(n.escapedText);return c?eo(c,i0):void 0}function df(n){return n.valueDeclaration&&Rh(n.valueDeclaration)?ao(n.valueDeclaration.name):Sc(n.escapedName)}function pZ(n){let c=n.parent.parent;if(c){if(DC(c))return aQ(c);switch(c.kind){case 243:if(c.declarationList&&c.declarationList.declarations[0])return aQ(c.declarationList.declarations[0]);break;case 244:let u=c.expression;switch(u.kind===226&&u.operatorToken.kind===64&&(u=u.left),u.kind){case 211:return u.name;case 212:let d=u.argumentExpression;if(sr(d))return d}break;case 217:return aQ(c.expression);case 256:{if(DC(c.statement)||tn(c.statement))return aQ(c.statement);break}}}}function aQ(n){let c=vl(n);return c&&sr(c)?c:void 0}function vv(n,c){return!!(Sf(n)&&sr(n.name)&&ao(n.name)===ao(c)||Rp(n)&&lr(n.declarationList.declarations,u=>vv(u,c)))}function cN(n){return n.name||pZ(n)}function Sf(n){return!!n.name}function Jw(n){switch(n.kind){case 80:return n;case 348:case 341:{let{name:u}=n;if(u.kind===166)return u.right;break}case 213:case 226:{let u=n;switch(CI(u)){case 1:case 4:case 5:case 3:return Q8(u.left);case 7:case 8:case 9:return u.arguments[1];default:return}}case 346:return cN(n);case 340:return pZ(n);case 277:{let{expression:u}=n;return sr(u)?u:void 0}case 212:let c=n;if(pce(c))return c.argumentExpression}return n.name}function vl(n){if(n!==void 0)return Jw(n)||(WA(n)||fd(n)||tp(n)?cQ(n):void 0)}function cQ(n){if(n.parent){if(KC(n.parent)||ml(n.parent))return n.parent.name;if(no(n.parent)&&n===n.parent.right){if(sr(n.parent.left))return n.parent.left;if(Cp(n.parent.left))return Q8(n.parent.left)}else if(zs(n.parent)&&sr(n.parent.name))return n.parent.name}else return}function Uw(n){if(FE(n))return Gt(n.modifiers,GC)}function lN(n){if(ba(n,98303))return Gt(n.modifiers,gg)}function lQ(n,c){if(n.name)if(sr(n.name)){let u=n.name.escapedText;return gQ(n.parent,c).filter(d=>FB(d)&&sr(d.name)&&d.name.escapedText===u)}else{let u=n.parent.parameters.indexOf(n);w.assert(u>-1,"Parameters should always be in their parents' parameter list");let d=gQ(n.parent,c).filter(FB);if(uZv(d)&&d.typeParameters.some(I=>I.name.escapedText===u))}function i8(n){return n8(n,!1)}function uQ(n){return n8(n,!0)}function cG(n){return!!RE(n,FB)}function s8(n){return RE(n,G6)}function mx(n){return o8(n,Kxe)}function ss(n){return RE(n,$Nt)}function jo(n){return RE(n,LKe)}function ea(n){return RE(n,LKe,!0)}function La(n){return RE(n,VKe)}function gc(n){return RE(n,VKe,!0)}function IA(n){return RE(n,WKe)}function Dd(n){return RE(n,WKe,!0)}function pm(n){return RE(n,PKe)}function T1(n){return RE(n,PKe,!0)}function N1(n){return RE(n,Jxe,!0)}function Zb(n){return RE(n,OKe)}function bB(n){return RE(n,OKe,!0)}function lG(n){return RE(n,Whe)}function hx(n){return RE(n,MKe)}function P9(n){return RE(n,Uxe)}function OCe(n){return RE(n,Zv)}function d$(n){return RE(n,jxe)}function _x(n){let c=RE(n,Zle);if(c&&c.typeExpression&&c.typeExpression.type)return c}function yx(n){let c=RE(n,Zle);return!c&&Jc(n)&&(c=be(WR(n),u=>!!u.typeExpression)),c&&c.typeExpression&&c.typeExpression.type}function uX(n){let c=P9(n);if(c&&c.typeExpression)return c.typeExpression.type;let u=_x(n);if(u&&u.typeExpression){let d=u.typeExpression.type;if(Se(d)){let I=be(d.members,CV);return I&&I.type}if(Y(d)||ute(d))return d.type}}function gQ(n,c){var u;if(!Aee(n))return v;let d=(u=n.jsDoc)==null?void 0:u.jsDocCache;if(d===void 0||c){let I=Ame(n,c);w.assert(I.length<2||I[0]!==I[1]),d=Fr(I,h=>aT(h)?h.tags:h),c||(n.jsDoc??(n.jsDoc=[]),n.jsDoc.jsDocCache=d)}return d}function bx(n){return gQ(n,!1)}function MCe(n){return gQ(n,!0)}function RE(n,c,u){return be(gQ(n,u),c)}function o8(n,c){return bx(n).filter(c)}function QCe(n,c){return bx(n).filter(u=>u.kind===c)}function gX(n){return typeof n=="string"?n:n?.map(c=>c.kind===321?c.text:mRe(c)).join("")}function mRe(n){let c=n.kind===324?"link":n.kind===325?"linkcode":"linkplain",u=n.name?t0(n.name):"",d=n.name&&(n.text===""||n.text.startsWith("://"))?"":" ";return`{@${c} ${u}${d}${n.text}}`}function R1(n){if(xG(n)){if(gte(n.parent)){let c=OX(n.parent);if(c&&O(c.tags))return Fr(c.tags,u=>Zv(u)?u.typeParameters:void 0)}return v}if(w2(n))return w.assert(n.parent.kind===320),Fr(n.parent.tags,c=>Zv(c)?c.typeParameters:void 0);if(n.typeParameters||ARt(n)&&n.typeParameters)return n.typeParameters;if(so(n)){let c=See(n);if(c.length)return c;let u=yx(n);if(u&&Y(u)&&u.typeParameters)return u.typeParameters}return v}function Kw(n){return n.constraint?n.constraint:Zv(n.parent)&&n===n.parent.typeParameters[0]?n.parent.constraint:void 0}function $y(n){return n.kind===80||n.kind===81}function AX(n){return n.kind===178||n.kind===177}function AQ(n){return Io(n)&&!!(n.flags&64)}function dX(n){return hA(n)&&!!(n.flags&64)}function uG(n){return cu(n)&&!!(n.flags&64)}function km(n){let c=n.kind;return!!(n.flags&64)&&(c===211||c===212||c===213||c===235)}function dQ(n){return km(n)&&!iT(n)&&!!n.questionDotToken}function a8(n){return dQ(n.parent)&&n.parent.expression===n}function w3(n){return!km(n.parent)||dQ(n.parent)||n!==n.parent.expression}function p$(n){return n.kind===226&&n.operatorToken.kind===61}function E2(n){return F(n)&&sr(n.typeName)&&n.typeName.escapedText==="const"&&!n.typeArguments}function D1(n){return ZC(n,8)}function c8(n){return iT(n)&&!!(n.flags&64)}function T3(n){return n.kind===252||n.kind===251}function l8(n){return n.kind===280||n.kind===279}function fZ(n){return n.kind===348||n.kind===341}function YCe(n){return pX(n.kind)}function pX(n){return n>=166}function f$(n){return n>=0&&n<=165}function O9(n){return f$(n.kind)}function gG(n){return Qa(n,"pos")&&Qa(n,"end")}function pQ(n){return 9<=n&&n<=15}function Sv(n){return pQ(n.kind)}function IZ(n){switch(n.kind){case 210:case 209:case 14:case 218:case 231:return!0}return!1}function RS(n){return 15<=n&&n<=18}function xae(n){return RS(n.kind)}function u8(n){let c=n.kind;return c===17||c===18}function M9(n){return _y(n)||c0(n)}function Q9(n){switch(n.kind){case 276:return n.isTypeOnly||n.parent.parent.isTypeOnly;case 274:return n.parent.isTypeOnly;case 273:case 271:return n.isTypeOnly}return!1}function kae(n){switch(n.kind){case 281:return n.isTypeOnly||n.parent.parent.isTypeOnly;case 278:return n.isTypeOnly&&!!n.moduleSpecifier&&!n.exportClause;case 280:return n.parent.isTypeOnly}return!1}function Ex(n){return Q9(n)||kae(n)}function g8(n){return n.kind===11||RS(n.kind)}function I$(n){return bu(n)||sr(n)}function Ip(n){var c;return sr(n)&&((c=n.emitNode)==null?void 0:c.autoGenerate)!==void 0}function CZ(n){var c;return kc(n)&&((c=n.emitNode)==null?void 0:c.autoGenerate)!==void 0}function fX(n){let c=n.emitNode.autoGenerate.flags;return!!(c&32)&&!!(c&16)&&!!(c&8)}function Rh(n){return(Ql(n)||hZ(n))&&kc(n.name)}function Y9(n){return Io(n)&&kc(n.name)}function wv(n){switch(n){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 fQ(n){return!!(VQ(n)&31)}function C$(n){return fQ(n)||n===126||n===164||n===129}function gg(n){return wv(n.kind)}function w_(n){let c=n.kind;return c===166||c===80}function NI(n){let c=n.kind;return c===80||c===81||c===11||c===9||c===167}function mZ(n){let c=n.kind;return c===80||c===206||c===207}function $l(n){return!!n&&PR(n.kind)}function N3(n){return!!n&&(PR(n.kind)||$p(n))}function dd(n){return n&&HCe(n.kind)}function IQ(n){return n.kind===112||n.kind===97}function HCe(n){switch(n){case 262:case 174:case 176:case 177:case 178:case 218:case 219:return!0;default:return!1}}function PR(n){switch(n){case 173:case 179:case 323:case 180:case 181:case 184:case 317:case 185:return!0;default:return HCe(n)}}function m$(n){return Gc(n)||SN(n)||mc(n)&&$l(n.parent)}function rC(n){let c=n.kind;return c===176||c===172||c===174||c===177||c===178||c===181||c===175||c===240}function Sa(n){return n&&(n.kind===263||n.kind===231)}function jw(n){return n&&(n.kind===177||n.kind===178)}function t_(n){return Ql(n)&&PS(n)}function A8(n){return so(n)&&qQ(n)?(!$9(n)||!yG(n.expression))&&!Q3(n,!0):n.parent&&Sa(n.parent)&&Ql(n)&&!PS(n)}function hZ(n){switch(n.kind){case 174:case 177:case 178:return!0;default:return!1}}function Gae(n){switch(n.kind){case 174:case 177:case 178:case 172:return!0;default:return!1}}function Np(n){return gg(n)||GC(n)}function Bx(n){let c=n.kind;return c===180||c===179||c===171||c===173||c===181||c===177||c===178}function d8(n){return Bx(n)||rC(n)}function EB(n){let c=n.kind;return c===303||c===304||c===305||c===174||c===177||c===178}function Ya(n){return Ume(n.kind)}function IX(n){switch(n.kind){case 184:case 185:return!0}return!1}function pu(n){if(n){let c=n.kind;return c===207||c===206}return!1}function H9(n){let c=n.kind;return c===209||c===210}function R3(n){let c=n.kind;return c===208||c===232}function CX(n){switch(n.kind){case 260:case 169:case 208:return!0}return!1}function Fae(n){return zs(n)||Jc(n)||mX(n)||hX(n)}function CQ(n){return h$(n)||_$(n)}function h$(n){switch(n.kind){case 206:case 210:return!0}return!1}function mX(n){switch(n.kind){case 208:case 303:case 304:case 305:return!0}return!1}function _$(n){switch(n.kind){case 207:case 209:return!0}return!1}function hX(n){switch(n.kind){case 208:case 232:case 230:case 209:case 210:case 80:case 211:case 212:return!0}return fm(n,!0)}function Zae(n){let c=n.kind;return c===211||c===166||c===205}function mQ(n){let c=n.kind;return c===211||c===166}function y$(n){return AG(n)||vG(n)}function AG(n){switch(n.kind){case 286:case 285:case 213:case 214:case 215:case 170:return!0;default:return!1}}function BB(n){return n.kind===213||n.kind===214}function x1(n){let c=n.kind;return c===228||c===15}function T_(n){return XCe(D1(n).kind)}function XCe(n){switch(n){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 _Z(n){return zp(D1(n).kind)}function zp(n){switch(n){case 224:case 225:case 220:case 221:case 222:case 223:case 216:return!0;default:return XCe(n)}}function p8(n){switch(n.kind){case 225:return!0;case 224:return n.operator===46||n.operator===47;default:return!1}}function DS(n){switch(n.kind){case 106:case 112:case 97:case 224:return!0;default:return Sv(n)}}function tn(n){return hRe(D1(n).kind)}function hRe(n){switch(n){case 227:case 229:case 219:case 226:case 230:case 234:case 232:case 355:case 354:case 238:return!0;default:return zp(n)}}function DE(n){let c=n.kind;return c===216||c===234}function JCe(n){return GKe(n)||NG(n)}function MR(n,c){switch(n.kind){case 248:case 249:case 250:case 246:case 247:return!0;case 256:return c&&MR(n.statement,c)}return!1}function b$(n){return tf(n)||mC(n)}function Lae(n){return lr(n,b$)}function f8(n){return!W3(n)&&!tf(n)&&!ba(n,32)&&!Yf(n)}function D3(n){return W3(n)||tf(n)||ba(n,32)}function yZ(n){return n.kind===249||n.kind===250}function QR(n){return mc(n)||tn(n)}function _X(n){return mc(n)}function P0(n){return yl(n)||tn(n)}function O0(n){let c=n.kind;return c===268||c===267||c===80}function eb(n){let c=n.kind;return c===268||c===267}function Vae(n){let c=n.kind;return c===80||c===267}function E$(n){let c=n.kind;return c===275||c===274}function yX(n){return n.kind===267||n.kind===266}function B2(n){switch(n.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 Tv(n){switch(n.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 _Re(n){return n===219||n===208||n===263||n===231||n===175||n===176||n===266||n===306||n===281||n===262||n===218||n===177||n===273||n===271||n===276||n===264||n===291||n===174||n===173||n===267||n===270||n===274||n===280||n===169||n===303||n===172||n===171||n===178||n===304||n===265||n===168||n===260||n===346||n===338||n===348||n===202}function I8(n){return n===262||n===282||n===263||n===264||n===265||n===266||n===267||n===272||n===271||n===278||n===277||n===270}function B$(n){return n===252||n===251||n===259||n===246||n===244||n===242||n===249||n===250||n===248||n===245||n===256||n===253||n===255||n===257||n===258||n===243||n===247||n===254||n===353}function DC(n){return n.kind===168?n.parent&&n.parent.kind!==345||so(n):_Re(n.kind)}function bX(n){return I8(n.kind)}function EX(n){return B$(n.kind)}function Ic(n){let c=n.kind;return B$(c)||I8(c)||v$(n)}function v$(n){return n.kind!==241||n.parent!==void 0&&(n.parent.kind===258||n.parent.kind===299)?!1:!j9(n)}function zw(n){let c=n.kind;return B$(c)||I8(c)||c===241}function x3(n){let c=n.kind;return c===283||c===166||c===80}function k3(n){let c=n.kind;return c===110||c===80||c===211||c===295}function BX(n){let c=n.kind;return c===284||c===294||c===285||c===12||c===288}function C8(n){let c=n.kind;return c===291||c===293}function Wae(n){let c=n.kind;return c===11||c===294}function Jm(n){let c=n.kind;return c===286||c===285}function vX(n){let c=n.kind;return c===296||c===297}function xS(n){return n.kind>=309&&n.kind<=351}function pf(n){return n.kind===320||n.kind===319||n.kind===321||J9(n)||X9(n)||A4(n)||xG(n)}function X9(n){return n.kind>=327&&n.kind<=351}function Dh(n){return n.kind===178}function Nv(n){return n.kind===177}function hy(n){if(!Aee(n))return!1;let{jsDoc:c}=n;return!!c&&c.length>0}function XC(n){return!!n.type}function qw(n){return!!n.initializer}function dG(n){switch(n.kind){case 260:case 169:case 208:case 172:case 303:case 306:return!0;default:return!1}}function hQ(n){return n.kind===291||n.kind===293||EB(n)}function m8(n){return n.kind===183||n.kind===233}var UCe=1073741823;function Pae(n){let c=UCe;for(let u of n){if(!u.length)continue;let d=0;for(;d0?u.parent.parameters[I-1]:void 0,b=c.text,R=h?vi(m2(b,Ju(b,h.end+1,!1,!0)),Gb(b,n.pos)):m2(b,Ju(b,n.pos,!1,!0));return lr(R)&&KCe(Na(R),c)}let d=u&&nme(u,c);return!!X(d,I=>KCe(I,c))}var w$=[],vx="tslib",_Q=160,T$=1e6;function zd(n,c){let u=n.declarations;if(u){for(let d of u)if(d.kind===c)return d}}function Mae(n,c){return Gt(n.declarations||v,u=>u.kind===c)}function Du(n){let c=new Map;if(n)for(let u of n)c.set(u.escapedName,u);return c}function vB(n){return(n.flags&33554432)!==0}function G3(n){return!!(n.flags&1536)&&n.escapedName.charCodeAt(0)===34}var h8=SB();function SB(){var n="";let c=u=>n+=u;return{getText:()=>n,write:c,rawWrite:c,writeKeyword:c,writeOperator:c,writePunctuation:c,writeSpace:c,writeStringLiteral:c,writeLiteral:c,writeParameter:c,writeProperty:c,writeSymbol:(u,d)=>c(u),writeTrailingSemicolon:c,writeComment:c,getTextPos:()=>n.length,getLine:()=>0,getColumn:()=>0,getIndent:()=>0,isAtStartOfLine:()=>!1,hasTrailingComment:()=>!1,hasTrailingWhitespace:()=>!!n.length&&Xm(n.charCodeAt(n.length-1)),writeLine:()=>n+=" ",increaseIndent:oc,decreaseIndent:oc,clear:()=>n=""}}function wB(n,c){return n.configFilePath!==c.configFilePath||Qae(n,c)}function Qae(n,c){return F3(n,c,g8e)}function N$(n,c){return F3(n,c,GRt)}function F3(n,c,u){return n!==c&&u.some(d=>!lle(qce(n,d),qce(c,d)))}function R$(n,c){for(;;){let u=c(n);if(u==="quit")return;if(u!==void 0)return u;if(Gc(n))return;n=n.parent}}function JC(n,c){let u=n.entries();for(let[d,I]of u){let h=c(I,d);if(h)return h}}function $w(n,c){let u=n.keys();for(let d of u){let I=c(d);if(I)return I}}function _8(n,c){n.forEach((u,d)=>{c.set(d,u)})}function Z3(n){let c=h8.getText();try{return n(h8),h8.getText()}finally{h8.clear(),h8.writeKeyword(c)}}function SX(n){return n.end-n.pos}function y8(n,c){return n.path===c.path&&!n.prepend==!c.prepend&&!n.circular==!c.circular}function D$(n,c){return n===c||n.resolvedModule===c.resolvedModule||!!n.resolvedModule&&!!c.resolvedModule&&n.resolvedModule.isExternalLibraryImport===c.resolvedModule.isExternalLibraryImport&&n.resolvedModule.extension===c.resolvedModule.extension&&n.resolvedModule.resolvedFileName===c.resolvedModule.resolvedFileName&&n.resolvedModule.originalPath===c.resolvedModule.originalPath&&jCe(n.resolvedModule.packageId,c.resolvedModule.packageId)&&n.alternateResult===c.alternateResult}function wX(n,c,u,d,I){var h;let b=(h=c.getResolvedModule(n,u,d))==null?void 0:h.alternateResult,R=b&&(s0(c.getCompilerOptions())===2?[Z.There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setting_Consider_updating_to_node16_nodenext_or_bundler,[b]]:[Z.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,[b,b.includes(Qx+"@types/")?`@types/${bte(I)}`:I]]),N=R?su(void 0,R[0],...R[1]):c.typesPackageExists(I)?su(void 0,Z.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,bte(I)):c.packageBundlesTypes(I)?su(void 0,Z.If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_declare_module_1,I,u):su(void 0,Z.Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0,u,bte(I));return N&&(N.repopulateInfo=()=>({moduleReference:u,mode:d,packageName:I===u?void 0:I})),N}function jCe(n,c){return n===c||!!n&&!!c&&n.name===c.name&&n.subModuleName===c.subModuleName&&n.version===c.version&&n.peerDependencies===c.peerDependencies}function yQ({name:n,subModuleName:c}){return c?`${n}/${c}`:n}function YR(n){return`${yQ(n)}@${n.version}${n.peerDependencies??""}`}function Yae(n,c){return n===c||n.resolvedTypeReferenceDirective===c.resolvedTypeReferenceDirective||!!n.resolvedTypeReferenceDirective&&!!c.resolvedTypeReferenceDirective&&n.resolvedTypeReferenceDirective.resolvedFileName===c.resolvedTypeReferenceDirective.resolvedFileName&&!!n.resolvedTypeReferenceDirective.primary==!!c.resolvedTypeReferenceDirective.primary&&n.resolvedTypeReferenceDirective.originalPath===c.resolvedTypeReferenceDirective.originalPath}function x$(n,c,u,d){w.assert(n.length===c.length);for(let I=0;I=0),Rc(c)[n]}function Xae(n){let c=ls(n),u=Ll(c,n.pos);return`${c.fileName}(${u.line+1},${u.character+1})`}function TX(n,c){w.assert(n>=0);let u=Rc(c),d=n,I=c.text;if(d+1===u.length)return I.length-1;{let h=u[d],b=u[d+1]-1;for(w.assert(HC(I.charCodeAt(b)));h<=b&&HC(I.charCodeAt(b));)b--;return b}}function EQ(n,c,u){return!(u&&u(c))&&!n.identifiers.has(c)}function wf(n){return n===void 0?!0:n.pos===n.end&&n.pos>=0&&n.kind!==1}function xE(n){return!wf(n)}function k$(n,c){return qp(n)?c===n.expression:$p(n)?c===n.modifiers:n_(n)?c===n.initializer:Ql(n)?c===n.questionToken&&t_(n):KC(n)?c===n.modifiers||c===n.questionToken||c===n.exclamationToken||NX(n.modifiers,c,Np):G_(n)?c===n.equalsToken||c===n.modifiers||c===n.questionToken||c===n.exclamationToken||NX(n.modifiers,c,Np):cI(n)?c===n.exclamationToken:Rf(n)?c===n.typeParameters||c===n.type||NX(n.typeParameters,c,qp):Pb(n)?c===n.typeParameters||NX(n.typeParameters,c,qp):sb(n)?c===n.typeParameters||c===n.type||NX(n.typeParameters,c,qp):Vhe(n)?c===n.modifiers||NX(n.modifiers,c,Np):!1}function NX(n,c,u){return!n||Ra(c)||!u(c)?!1:Ue(n,c)}function zCe(n,c,u){if(c===void 0||c.length===0)return n;let d=0;for(;d[`${Ll(n,b.range.end).line}`,b])),d=new Map;return{getUnusedExpectations:I,markUsed:h};function I(){return on(u.entries()).filter(([b,R])=>R.type===0&&!d.get(b)).map(([b,R])=>R)}function h(b){return u.has(`${b}`)?(d.set(`${b}`,!0),!0):!1}}function Sx(n,c,u){if(wf(n))return n.pos;if(xS(n)||n.kind===12)return Ju((c??ls(n)).text,n.pos,!1,!0);if(u&&hy(n))return Sx(n.jsDoc[0],c);if(n.kind===352){c??(c=ls(n));let d=$i(QKe(n,c));if(d)return Sx(d,c,u)}return Ju((c??ls(n)).text,n.pos,!1,!1,$$(n))}function F$(n,c){let u=!wf(n)&&ew(n)?Te(n.modifiers,GC):void 0;return u?Ju((c||ls(n)).text,u.end):Sx(n,c)}function pG(n,c,u=!1){return vQ(n.text,c,u)}function bRe(n){return!!Si(n,rP)}function BQ(n){return!!(mC(n)&&n.exportClause&&rD(n.exportClause)&&n.exportClause.name.escapedText==="default")}function vQ(n,c,u=!1){if(wf(c))return"";let d=n.substring(u?c.pos:Ju(n,c.pos),c.end);return bRe(c)&&(d=d.split(/\r\n|\n|\r/).map(I=>I.replace(/^\s*\*/,"").trimStart()).join(` -`)),d}function Tf(n,c=!1){return pG(ls(n),n,c)}function tme(n){return n.pos}function L3(n,c){return Lg(n,c,tme,Xl)}function Sg(n){let c=n.emitNode;return c&&c.flags||0}function kE(n){let c=n.emitNode;return c&&c.internalFlags||0}var v8=iu(()=>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:v})),AsyncIterator:new Map(Object.entries({es2015:v})),Atomics:new Map(Object.entries({es2017:v})),SharedArrayBuffer:new Map(Object.entries({es2017:v})),AsyncIterable:new Map(Object.entries({es2018:v})),AsyncIterableIterator:new Map(Object.entries({es2018:v})),AsyncGenerator:new Map(Object.entries({es2018:v})),AsyncGeneratorFunction:new Map(Object.entries({es2018:v})),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:v,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:v})),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:v,es2022:["at"],es2023:["findLastIndex","findLast"]})),BigUint64Array:new Map(Object.entries({es2020:v,es2022:["at"],es2023:["findLastIndex","findLast"]})),Error:new Map(Object.entries({es2022:["cause"]}))}))),Uae=(n=>(n[n.None=0]="None",n[n.NeverAsciiEscape=1]="NeverAsciiEscape",n[n.JsxAttributeEscape=2]="JsxAttributeEscape",n[n.TerminateUnterminatedLiterals=4]="TerminateUnterminatedLiterals",n[n.AllowNumericSeparator=8]="AllowNumericSeparator",n))(Uae||{});function Z$(n,c,u){if(c&&ERe(n,u))return pG(c,n);switch(n.kind){case 11:{let d=u&2?Tme:u&1||Sg(n)&16777216?tT:Ece;return n.singleQuote?"'"+d(n.text,39)+"'":'"'+d(n.text,34)+'"'}case 15:case 16:case 17:case 18:{let d=u&1||Sg(n)&16777216?tT:Ece,I=n.rawText??Sme(d(n.text,96));switch(n.kind){case 15:return"`"+I+"`";case 16:return"`"+I+"${";case 17:return"}"+I+"${";case 18:return"}"+I+"`"}break}case 9:case 10:return n.text;case 14:return u&4&&n.isUnterminated?n.text+(n.text.charCodeAt(n.text.length-1)===92?" /":"/"):n.text}return w.fail(`Literal kind '${n.kind}' not accounted for.`)}function ERe(n,c){if(qd(n)||!n.parent||c&4&&n.isUnterminated)return!1;if(du(n)){if(n.numericLiteralFlags&26656)return!1;if(n.numericLiteralFlags&512)return!!(c&8)}return!K3(n)}function S8(n){return Xa(n)?`"${tT(n)}"`:""+n}function Kae(n){return xA(n).replace(/^(\d)/,"_$1").replace(/\W/g,"_")}function L$(n){return(qy(n)&7)!==0||V$(n)}function V$(n){let c=WS(n);return c.kind===260&&c.parent.kind===299}function Yf(n){return CC(n)&&(n.name.kind===11||v2(n))}function SQ(n){return CC(n)&&n.name.kind===11}function W$(n){return CC(n)&&bu(n.name)}function jae(n){return CC(n)||sr(n)}function V3(n){return BRe(n.valueDeclaration)}function BRe(n){return!!n&&n.kind===267&&!n.body}function w8(n){return n.kind===307||n.kind===267||N3(n)}function v2(n){return!!(n.flags&2048)}function XR(n){return Yf(n)&&P$(n)}function P$(n){switch(n.parent.kind){case 307:return mm(n.parent);case 268:return Yf(n.parent.parent)&&Gc(n.parent.parent.parent)&&!mm(n.parent.parent.parent)}return!1}function O$(n){var c;return(c=n.declarations)==null?void 0:c.find(u=>!XR(u)&&!(CC(u)&&v2(u)))}function vRe(n){return n===1||n===100||n===199}function U9(n,c){return mm(n)||vRe(R_(c))&&!!n.commonJsModuleIndicator}function RX(n,c){switch(n.scriptKind){case 1:case 3:case 2:case 4:break;default:return!1}return n.isDeclarationFile?!1:!!(D_(c,"alwaysStrict")||cRt(n.statements)||mm(n)||ZE(c))}function M$(n){return!!(n.flags&33554432)||ba(n,128)}function Q$(n,c){switch(n.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!N3(c)}return!1}function Y$(n){switch(w.type(n),n.kind){case 338:case 346:case 323:return!0;default:return DX(n)}}function DX(n){switch(w.type(n),n.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 fG(n){switch(n.kind){case 272:case 271:return!0;default:return!1}}function zae(n){return fG(n)||q9(n)}function qae(n){return fG(n)||W8(n)}function T8(n){switch(n.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 $ae(n){return W3(n)||CC(n)||Tu(n)||pC(n)}function W3(n){return fG(n)||mC(n)}function N8(n){return Si(n.parent,c=>!!(O8e(c)&1))}function S2(n){return Si(n.parent,c=>Q$(c,c.parent))}function H$(n,c){let u=S2(n);for(;u;)c(u),u=S2(u)}function xd(n){return!n||SX(n)===0?"(Missing)":Tf(n)}function ece(n){return n.declaration?xd(n.declaration.parameters[0].name):void 0}function xX(n){return n.kind===167&&!GE(n.expression)}function wQ(n){var c;switch(n.kind){case 80:case 81:return(c=n.emitNode)!=null&&c.autoGenerate?void 0:n.escapedText;case 11:case 9:case 15:return Rd(n.text);case 167:return GE(n.expression)?Rd(n.expression.text):void 0;case 295:return D2(n);default:return w.assertNever(n)}}function K9(n){return w.checkDefined(wQ(n))}function t0(n){switch(n.kind){case 110:return"this";case 81:case 80:return SX(n)===0?ao(n):Tf(n);case 166:return t0(n.left)+"."+t0(n.right);case 211:return sr(n.name)||kc(n.name)?t0(n.expression)+"."+t0(n.name):w.assertNever(n.name);case 311:return t0(n.left)+"#"+t0(n.right);case 295:return t0(n.namespace)+":"+t0(n.name);default:return w.assertNever(n)}}function Us(n,c,...u){let d=ls(n);return Lb(d,n,c,...u)}function P3(n,c,u,...d){let I=Ju(n.text,c.pos);return Im(n,I,c.end-I,u,...d)}function Lb(n,c,u,...d){let I=Qi(n,c);return Im(n,I.start,I.length,u,...d)}function GS(n,c,u,d){let I=Qi(n,c);return R8(n,I.start,I.length,u,d)}function kX(n,c,u,d){let I=Ju(n.text,c.pos);return R8(n,I,c.end-I,u,d)}function tce(n,c,u){w.assertGreaterThanOrEqual(c,0),w.assertGreaterThanOrEqual(u,0),w.assertLessThanOrEqual(c,n.length),w.assertLessThanOrEqual(c+u,n.length)}function R8(n,c,u,d,I){return tce(n.text,c,u),{file:n,start:c,length:u,code:d.code,category:d.category,messageText:d.next?d:d.messageText,relatedInformation:I,canonicalHead:d.canonicalHead}}function ne(n,c,u){return{file:n,start:0,length:0,code:c.code,category:c.category,messageText:c.next?c:c.messageText,relatedInformation:u}}function Ie(n){return typeof n.messageText=="string"?{code:n.code,category:n.category,messageText:n.messageText,next:n.next}:n.messageText}function ze(n,c,u){return{file:n,start:c.pos,length:c.end-c.pos,code:u.code,category:u.category,messageText:u.message}}function Mt(n,...c){return{code:n.code,messageText:XQ(n,...c)}}function Rr(n,c){let u=Ft(n.languageVersion,!0,n.languageVariant,n.text,void 0,c);u.scan();let d=u.getTokenStart();return Wd(d,u.getTokenEnd())}function bn(n,c){let u=Ft(n.languageVersion,!0,n.languageVariant,n.text,void 0,c);return u.scan(),u.getToken()}function Ci(n,c){let u=Ju(n.text,c.pos);if(c.body&&c.body.kind===241){let{line:d}=Ll(n,c.body.pos),{line:I}=Ll(n,c.body.end);if(d0?c.statements[0].pos:c.end;return Wd(h,b)}case 253:case 229:{let h=Ju(n.text,c.pos);return Rr(n,h)}case 238:{let h=Ju(n.text,c.expression.end);return Rr(n,h)}case 350:{let h=Ju(n.text,c.tagName.pos);return Rr(n,h)}case 176:{let h=c,b=Ju(n.text,h.pos),R=Ft(n.languageVersion,!0,n.languageVariant,n.text,void 0,b),N=R.scan();for(;N!==137&&N!==1;)N=R.scan();let V=R.getTokenEnd();return Wd(b,V)}}if(u===void 0)return Rr(n,c.pos);w.assert(!aT(u));let d=wf(u),I=d||sY(c)?u.pos:Ju(n.text,u.pos);return d?(w.assert(I===u.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),w.assert(I===u.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")):(w.assert(I>=u.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),w.assert(I<=u.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")),Wd(I,u.end)}function bs(n){return n.kind===307&&!ia(n)}function ia(n){return(n.externalModuleIndicator||n.commonJsModuleIndicator)!==void 0}function Ia(n){return n.scriptKind===6}function Ac(n){return!!(Nh(n)&4096)}function fu(n){return!!(Nh(n)&8&&!Zn(n,n.parent))}function Mg(n){return(qy(n)&7)===6}function pd(n){return(qy(n)&7)===4}function Qp(n){return(qy(n)&7)===2}function Pd(n){let c=qy(n)&7;return c===2||c===4||c===6}function oI(n){return(qy(n)&7)===1}function Nf(n){return n.kind===213&&n.expression.kind===108}function pC(n){return n.kind===213&&n.expression.kind===102}function Vb(n){return vN(n)&&n.keywordToken===102&&n.name.escapedText==="meta"}function r_(n){return Tu(n)&&id(n.argument)&&bu(n.argument.literal)}function QI(n){return n.kind===244&&n.expression.kind===11}function ZS(n){return!!(Sg(n)&2097152)}function gN(n){return ZS(n)&&mp(n)}function rme(n){return sr(n.name)&&!n.initializer}function rce(n){return ZS(n)&&Rp(n)&&he(n.declarationList.declarations,rme)}function nme(n,c){return n.kind!==12?Gb(c.text,n.pos):void 0}function ime(n,c){let u=n.kind===169||n.kind===168||n.kind===218||n.kind===219||n.kind===217||n.kind===260||n.kind===281?vi(m2(c,n.pos),Gb(c,n.pos)):Gb(c,n.pos);return Gt(u,d=>d.end<=n.end&&c.charCodeAt(d.pos+1)===42&&c.charCodeAt(d.pos+2)===42&&c.charCodeAt(d.pos+3)!==47)}var SRe=/^(\/\/\/\s*/,LUe=/^(\/\/\/\s*/,YTt=/^(\/\/\/\s*/,wRe=/^(\/\/\/\s*/,HTt=/^\/\/\/\s*/,XTt=/^(\/\/\/\s*/;function LS(n){if(182<=n.kind&&n.kind<=205)return!0;switch(n.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 n.parent.kind!==222;case 233:return VUe(n);case 168:return n.parent.kind===200||n.parent.kind===195;case 80:(n.parent.kind===166&&n.parent.right===n||n.parent.kind===211&&n.parent.name===n)&&(n=n.parent),w.assert(n.kind===80||n.kind===166||n.kind===211,"'node' was expected to be a qualified name, identifier or property access in 'isPartOfTypeNode'.");case 166:case 211:case 110:{let{parent:c}=n;if(c.kind===186)return!1;if(c.kind===205)return!c.isTypeOf;if(182<=c.kind&&c.kind<=205)return!0;switch(c.kind){case 233:return VUe(c);case 168:return n===c.constraint;case 345:return n===c.constraint;case 172:case 171:case 169:case 260:return n===c.type;case 262:case 218:case 219:case 176:case 174:case 173:case 177:case 178:return n===c.type;case 179:case 180:case 181:return n===c.type;case 216:return n===c.type;case 213:case 214:case 215:return Ue(c.typeArguments,n)}}}return!1}function VUe(n){return Kxe(n.parent)||G6(n.parent)||WE(n.parent)&&!kce(n)}function WUe(n,c){for(;n;){if(n.kind===c)return!0;n=n.parent}return!1}function wx(n,c){return u(n);function u(d){switch(d.kind){case 253:return c(d);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 mu(d,u)}}}function TRe(n,c){return u(n);function u(d){switch(d.kind){case 229:c(d);let I=d.expression;I&&u(I);return;case 266:case 264:case 267:case 265:return;default:if($l(d)){if(d.name&&d.name.kind===167){u(d.name.expression);return}}else LS(d)||mu(d,u)}}}function sme(n){return n&&n.kind===188?n.elementType:n&&n.kind===183?wu(n.typeArguments):void 0}function NRe(n){switch(n.kind){case 264:case 263:case 231:case 187:return n.members;case 210:return n.properties}}function TQ(n){if(n)switch(n.kind){case 208:case 306:case 169:case 303:case 172:case 171:case 304:case 260:return!0}return!1}function nce(n){return TQ(n)||jw(n)}function D8(n){return n.parent.kind===261&&n.parent.parent.kind===243}function RRe(n){return so(n)?tu(n.parent)&&no(n.parent.parent)&&CI(n.parent.parent)===2||X$(n.parent):!1}function X$(n){return so(n)?no(n)&&CI(n)===1:!1}function DRe(n){return(zs(n)?Qp(n)&&sr(n.name)&&D8(n):Ql(n)?$8(n)&&IC(n):n_(n)&&$8(n))||X$(n)}function xRe(n){switch(n.kind){case 174:case 173:case 176:case 177:case 178:case 262:case 218:return!0}return!1}function ome(n,c){for(;;){if(c&&c(n),n.statement.kind!==256)return n.statement;n=n.statement}}function j9(n){return n&&n.kind===241&&$l(n.parent)}function TB(n){return n&&n.kind===174&&n.parent.kind===210}function J$(n){return(n.kind===174||n.kind===177||n.kind===178)&&(n.parent.kind===210||n.parent.kind===231)}function kRe(n){return n&&n.kind===1}function GRe(n){return n&&n.kind===0}function GX(n,c,u,d){return X(n?.properties,I=>{if(!KC(I))return;let h=wQ(I.name);return c===h||d&&d===h?u(I):void 0})}function FRe(n,c,u){return GX(n,c,d=>If(d.initializer)?be(d.initializer.elements,I=>bu(I)&&I.text===u):void 0)}function x8(n){if(n&&n.statements.length){let c=n.statements[0].expression;return eo(c,tu)}}function ice(n,c,u){return U$(n,c,d=>If(d.initializer)?be(d.initializer.elements,I=>bu(I)&&I.text===u):void 0)}function U$(n,c,u){return GX(x8(n),c,u)}function Wb(n){return Si(n.parent,$l)}function sce(n){return Si(n.parent,dd)}function Um(n){return Si(n.parent,Sa)}function ZRe(n){return Si(n.parent,c=>Sa(c)||$l(c)?"quit":$p(c))}function K$(n){return Si(n.parent,N3)}function oce(n){let c=Si(n.parent,u=>Sa(u)?"quit":GC(u));return c&&Sa(c.parent)?Um(c.parent):Um(c??n)}function r0(n,c,u){for(w.assert(n.kind!==307);;){if(n=n.parent,!n)return w.fail();switch(n.kind){case 167:if(u&&Sa(n.parent.parent))return n;n=n.parent.parent;break;case 170:n.parent.kind===169&&rC(n.parent.parent)?n=n.parent.parent:rC(n.parent)&&(n=n.parent);break;case 219:if(!c)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 n}}}function LRe(n){switch(n.kind){case 219:case 262:case 218:case 172:return!0;case 241:switch(n.parent.kind){case 176:case 174:case 177:case 178:return!0;default:return!1}default:return!1}}function ace(n){sr(n)&&(bc(n.parent)||mp(n.parent))&&n.parent.name===n&&(n=n.parent);let c=r0(n,!0,!1);return Gc(c)}function VRe(n){let c=r0(n,!1,!1);if(c)switch(c.kind){case 176:case 262:case 218:return c}}function k8(n,c){for(;;){if(n=n.parent,!n)return;switch(n.kind){case 167:n=n.parent;break;case 262:case 218:case 219:if(!c)continue;case 172:case 171:case 174:case 173:case 176:case 177:case 178:case 175:return n;case 170:n.parent.kind===169&&rC(n.parent.parent)?n=n.parent.parent:rC(n.parent)&&(n=n.parent);break}}}function z9(n){if(n.kind===218||n.kind===219){let c=n,u=n.parent;for(;u.kind===217;)c=u,u=u.parent;if(u.kind===213&&u.expression===c)return u}}function PUe(n){return n.kind===108||M0(n)}function M0(n){let c=n.kind;return(c===211||c===212)&&n.expression.kind===108}function j$(n){let c=n.kind;return(c===211||c===212)&&n.expression.kind===110}function cce(n){var c;return!!n&&zs(n)&&((c=n.initializer)==null?void 0:c.kind)===110}function WRe(n){return!!n&&(G_(n)||KC(n))&&no(n.parent.parent)&&n.parent.parent.operatorToken.kind===64&&n.parent.parent.right.kind===110}function z$(n){switch(n.kind){case 183:return n.typeName;case 233:return cp(n.expression)?n.expression:void 0;case 80:case 166:return n}}function G8(n){switch(n.kind){case 215:return n.tag;case 286:case 285:return n.tagName;case 226:return n.right;default:return n.expression}}function q$(n,c,u,d){if(n&&Sf(c)&&kc(c.name))return!1;switch(c.kind){case 263:return!0;case 231:return!n;case 172:return u!==void 0&&(n?bc(u):Sa(u)&&!aV(c)&&!Lme(c));case 177:case 178:case 174:return c.body!==void 0&&u!==void 0&&(n?bc(u):Sa(u));case 169:return n?u!==void 0&&u.body!==void 0&&(u.kind===176||u.kind===174||u.kind===178)&&iV(u)!==c&&d!==void 0&&d.kind===263:!1}return!1}function FX(n,c,u,d){return FE(c)&&q$(n,c,u,d)}function F8(n,c,u,d){return FX(n,c,u,d)||Z8(n,c,u)}function Z8(n,c,u){switch(c.kind){case 263:return lr(c.members,d=>F8(n,d,c,u));case 231:return!n&&lr(c.members,d=>F8(n,d,c,u));case 174:case 178:case 176:return lr(c.parameters,d=>FX(n,d,c,u));default:return!1}}function Tx(n,c){if(FX(n,c))return!0;let u=dN(c);return!!u&&Z8(n,u,c)}function ame(n,c,u){let d;if(jw(c)){let{firstAccessor:I,secondAccessor:h,setAccessor:b}=xx(u.members,c),R=FE(I)?I:h&&FE(h)?h:void 0;if(!R||c!==R)return!1;d=b?.parameters}else cI(c)&&(d=c.parameters);if(FX(n,c,u))return!0;if(d){for(let I of d)if(!sV(I)&&FX(n,I,c,u))return!0}return!1}function cme(n){if(n.textSourceNode){switch(n.textSourceNode.kind){case 11:return cme(n.textSourceNode);case 15:return n.text===""}return!1}return n.text===""}function ZX(n){let{parent:c}=n;return c.kind===286||c.kind===285||c.kind===287?c.tagName===n:!1}function NB(n){switch(n.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!WE(n.parent)&&!G6(n.parent);case 166:for(;n.parent.kind===166;)n=n.parent;return n.parent.kind===186||J9(n.parent)||Fle(n.parent)||nP(n.parent)||ZX(n);case 311:for(;nP(n.parent);)n=n.parent;return n.parent.kind===186||J9(n.parent)||Fle(n.parent)||nP(n.parent)||ZX(n);case 81:return no(n.parent)&&n.parent.left===n&&n.parent.operatorToken.kind===103;case 80:if(n.parent.kind===186||J9(n.parent)||Fle(n.parent)||nP(n.parent)||ZX(n))return!0;case 9:case 10:case 11:case 15:case 110:return lce(n);default:return!1}}function lce(n){let{parent:c}=n;switch(c.kind){case 260:case 169:case 172:case 171:case 306:case 303:case 208:return c.initializer===n;case 244:case 245:case 246:case 247:case 253:case 254:case 255:case 296:case 257:return c.expression===n;case 248:let u=c;return u.initializer===n&&u.initializer.kind!==261||u.condition===n||u.incrementor===n;case 249:case 250:let d=c;return d.initializer===n&&d.initializer.kind!==261||d.expression===n;case 216:case 234:return n===c.expression;case 239:return n===c.expression;case 167:return n===c.expression;case 170:case 294:case 293:case 305:return!0;case 233:return c.expression===n&&!LS(c);case 304:return c.objectAssignmentInitializer===n;case 238:return n===c.expression;default:return NB(c)}}function uce(n){for(;n.kind===166||n.kind===80;)n=n.parent;return n.kind===186}function PRe(n){return rD(n)&&!!n.parent.moduleSpecifier}function EZ(n){return n.kind===271&&n.moduleReference.kind===283}function L8(n){return w.assert(EZ(n)),n.moduleReference.expression}function lme(n){return q9(n)&&QQ(n.initializer).arguments[0]}function NQ(n){return n.kind===271&&n.moduleReference.kind!==283}function JR(n){return n?.kind===307}function n0(n){return so(n)}function OUe(n){return!so(n)}function so(n){return!!n&&!!(n.flags&524288)}function V8(n){return!!n&&!!(n.flags&134217728)}function gce(n){return!Ia(n)}function $$(n){return!!n&&!!(n.flags&16777216)}function eee(n){return F(n)&&sr(n.typeName)&&n.typeName.escapedText==="Object"&&n.typeArguments&&n.typeArguments.length===2&&(n.typeArguments[0].kind===154||n.typeArguments[0].kind===150)}function Q0(n,c){if(n.kind!==213)return!1;let{expression:u,arguments:d}=n;if(u.kind!==80||u.escapedText!=="require"||d.length!==1)return!1;let I=d[0];return!c||XA(I)}function tee(n){return MUe(n,!1)}function q9(n){return MUe(n,!0)}function ORe(n){return ml(n)&&q9(n.parent.parent)}function MUe(n,c){return zs(n)&&!!n.initializer&&Q0(c?QQ(n.initializer):n.initializer,!0)}function W8(n){return Rp(n)&&n.declarationList.declarations.length>0&&he(n.declarationList.declarations,c=>tee(c))}function ree(n){return n===39||n===34}function Ace(n,c){return pG(c,n).charCodeAt(0)===34}function P8(n){return no(n)||Cp(n)||sr(n)||cu(n)}function nee(n){return so(n)&&n.initializer&&no(n.initializer)&&(n.initializer.operatorToken.kind===57||n.initializer.operatorToken.kind===61)&&n.name&&cp(n.name)&&LX(n.name,n.initializer.left)?n.initializer.right:n.initializer}function O8(n){let c=nee(n);return c&&BZ(c,yG(n.name))}function JTt(n,c){return X(n.properties,u=>KC(u)&&sr(u.name)&&u.name.escapedText==="value"&&u.initializer&&BZ(u.initializer,c))}function RQ(n){if(n&&n.parent&&no(n.parent)&&n.parent.operatorToken.kind===64){let c=yG(n.parent.left);return BZ(n.parent.right,c)||UTt(n.parent.left,n.parent.right,c)}if(n&&cu(n)&&M3(n)){let c=JTt(n.arguments[2],n.arguments[1].text==="prototype");if(c)return c}}function BZ(n,c){if(cu(n)){let u=jA(n.expression);return u.kind===218||u.kind===219?n:void 0}if(n.kind===218||n.kind===231||n.kind===219||tu(n)&&(n.properties.length===0||c))return n}function UTt(n,c,u){let d=no(c)&&(c.operatorToken.kind===57||c.operatorToken.kind===61)&&BZ(c.right,u);if(d&&LX(n,c.left))return d}function MRe(n){let c=zs(n.parent)?n.parent.name:no(n.parent)&&n.parent.operatorToken.kind===64?n.parent.left:void 0;return c&&BZ(n.right,yG(c))&&cp(c)&&LX(c,n.left)}function ume(n){if(no(n.parent)){let c=(n.parent.operatorToken.kind===57||n.parent.operatorToken.kind===61)&&no(n.parent.parent)?n.parent.parent:n.parent;if(c.operatorToken.kind===64&&sr(c.left))return c.left}else if(zs(n.parent))return n.parent.name}function LX(n,c){return VS(n)&&VS(c)?T2(n)===T2(c):$y(n)&&dce(c)&&(c.expression.kind===110||sr(c.expression)&&(c.expression.escapedText==="window"||c.expression.escapedText==="self"||c.expression.escapedText==="global"))?LX(n,see(c)):dce(n)&&dce(c)?UR(n)===UR(c)&&LX(n.expression,c.expression):!1}function IG(n){for(;fm(n,!0);)n=n.right;return n}function O3(n){return sr(n)&&n.escapedText==="exports"}function M8(n){return sr(n)&&n.escapedText==="module"}function AN(n){return(Io(n)||iee(n))&&M8(n.expression)&&UR(n)==="exports"}function CI(n){let c=KTt(n);return c===5||so(n)?c:0}function M3(n){return O(n.arguments)===3&&Io(n.expression)&&sr(n.expression.expression)&&ao(n.expression.expression)==="Object"&&ao(n.expression.name)==="defineProperty"&&GE(n.arguments[1])&&Q3(n.arguments[0],!0)}function dce(n){return Io(n)||iee(n)}function iee(n){return hA(n)&&GE(n.argumentExpression)}function $9(n,c){return Io(n)&&(!c&&n.expression.kind===110||sr(n.name)&&Q3(n.expression,!0))||pce(n,c)}function pce(n,c){return iee(n)&&(!c&&n.expression.kind===110||cp(n.expression)||$9(n.expression,!0))}function Q3(n,c){return cp(n)||$9(n,c)}function see(n){return Io(n)?n.name:n.argumentExpression}function KTt(n){if(cu(n)){if(!M3(n))return 0;let c=n.arguments[0];return O3(c)||AN(c)?8:$9(c)&&UR(c)==="prototype"?9:7}return n.operatorToken.kind!==64||!Cp(n.left)||jTt(IG(n))?0:Q3(n.left.expression,!0)&&UR(n.left)==="prototype"&&tu(fce(n))?6:oee(n.left)}function jTt(n){return Cf(n)&&du(n.expression)&&n.expression.text==="0"}function Q8(n){if(Io(n))return n.name;let c=jA(n.argumentExpression);return du(c)||XA(c)?c:n}function UR(n){let c=Q8(n);if(c){if(sr(c))return c.escapedText;if(XA(c)||du(c))return Rd(c.text)}}function oee(n){if(n.expression.kind===110)return 4;if(AN(n))return 2;if(Q3(n.expression,!0)){if(yG(n.expression))return 3;let c=n;for(;!sr(c.expression);)c=c.expression;let u=c.expression;if((u.escapedText==="exports"||u.escapedText==="module"&&UR(c)==="exports")&&$9(n))return 1;if(Q3(n,!0)||hA(n)&&yce(n))return 5}return 0}function fce(n){for(;no(n.right);)n=n.right;return n.right}function aee(n){return no(n)&&CI(n)===3}function QRe(n){return so(n)&&n.parent&&n.parent.kind===244&&(!hA(n)||iee(n))&&!!_x(n.parent)}function cee(n,c){let{valueDeclaration:u}=n;(!u||!(c.flags&33554432&&!so(c)&&!(u.flags&33554432))&&P8(u)&&!P8(c)||u.kind!==c.kind&&jae(u))&&(n.valueDeclaration=c)}function YRe(n){if(!n||!n.valueDeclaration)return!1;let c=n.valueDeclaration;return c.kind===262||zs(c)&&c.initializer&&$l(c.initializer)}function Y8(n){var c,u;switch(n.kind){case 260:case 208:return(c=Si(n.initializer,d=>Q0(d,!0)))==null?void 0:c.arguments[0];case 272:case 278:case 351:return eo(n.moduleSpecifier,XA);case 271:return eo((u=eo(n.moduleReference,DG))==null?void 0:u.expression,XA);case 273:case 280:return eo(n.parent.moduleSpecifier,XA);case 274:case 281:return eo(n.parent.parent.moduleSpecifier,XA);case 276:return eo(n.parent.parent.parent.moduleSpecifier,XA);case 205:return r_(n)?n.argument.literal:void 0;default:w.assertNever(n)}}function VX(n){return lee(n)||w.failBadSyntaxKind(n.parent)}function lee(n){switch(n.parent.kind){case 272:case 278:case 351:return n.parent;case 283:return n.parent.parent;case 213:return pC(n.parent)||Q0(n.parent,!1)?n.parent:void 0;case 201:return w.assert(bu(n)),eo(n.parent.parent,Tu);default:return}}function DQ(n){switch(n.kind){case 272:case 278:case 351:return n.moduleSpecifier;case 271:return n.moduleReference.kind===283?n.moduleReference.expression:void 0;case 205:return r_(n)?n.argument.literal:void 0;case 213:return n.arguments[0];case 267:return n.name.kind===11?n.name:void 0;default:return w.assertNever(n)}}function WX(n){switch(n.kind){case 272:return n.importClause&&eo(n.importClause.namedBindings,Px);case 271:return n;case 278:return n.exportClause&&eo(n.exportClause,rD);default:return w.assertNever(n)}}function xQ(n){return(n.kind===272||n.kind===351)&&!!n.importClause&&!!n.importClause.name}function HRe(n,c){if(n.name){let u=c(n);if(u)return u}if(n.namedBindings){let u=Px(n.namedBindings)?c(n.namedBindings):X(n.namedBindings.elements,c);if(u)return u}}function kQ(n){if(n)switch(n.kind){case 169:case 174:case 173:case 304:case 303:case 172:case 171:return n.questionToken!==void 0}return!1}function PX(n){let c=ute(n)?$i(n.parameters):void 0,u=eo(c&&c.name,sr);return!!u&&u.escapedText==="new"}function w2(n){return n.kind===346||n.kind===338||n.kind===340}function uee(n){return w2(n)||Wf(n)}function XRe(n){return Hf(n)&&no(n.expression)&&n.expression.operatorToken.kind===64?IG(n.expression):void 0}function QUe(n){return Hf(n)&&no(n.expression)&&CI(n.expression)!==0&&no(n.expression.right)&&(n.expression.right.operatorToken.kind===57||n.expression.right.operatorToken.kind===61)?n.expression.right.right:void 0}function gme(n){switch(n.kind){case 243:let c=Y3(n);return c&&c.initializer;case 172:return n.initializer;case 303:return n.initializer}}function Y3(n){return Rp(n)?$i(n.declarationList.declarations):void 0}function YUe(n){return CC(n)&&n.body&&n.body.kind===267?n.body:void 0}function gee(n){if(n.kind>=243&&n.kind<=259)return!0;switch(n.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 Aee(n){switch(n.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 Ame(n,c){let u;TQ(n)&&qw(n)&&hy(n.initializer)&&(u=ai(u,HUe(n,n.initializer.jsDoc)));let d=n;for(;d&&d.parent;){if(hy(d)&&(u=ai(u,HUe(n,d.jsDoc))),d.kind===169){u=ai(u,(c?r8:WR)(d));break}if(d.kind===168){u=ai(u,(c?uQ:i8)(d));break}d=dme(d)}return u||v}function HUe(n,c){let u=Na(c);return Fr(c,d=>{if(d===u){let I=Gt(d.tags,h=>XUe(n,h));return d.tags===I?[d]:I}else return Gt(d.tags,gte)})}function XUe(n,c){return!(Zle(c)||jxe(c))||!c.parent||!aT(c.parent)||!FC(c.parent.parent)||c.parent.parent===n}function dme(n){let c=n.parent;if(c.kind===303||c.kind===277||c.kind===172||c.kind===244&&n.kind===211||c.kind===253||YUe(c)||fm(n))return c;if(c.parent&&(Y3(c.parent)===n||fm(c)))return c.parent;if(c.parent&&c.parent.parent&&(Y3(c.parent.parent)||gme(c.parent.parent)===n||QUe(c.parent.parent)))return c.parent.parent}function dee(n){if(n.symbol)return n.symbol;if(!sr(n.name))return;let c=n.name.escapedText,u=vZ(n);if(!u)return;let d=be(u.parameters,I=>I.name.kind===80&&I.name.escapedText===c);return d&&d.symbol}function Ice(n){if(aT(n.parent)&&n.parent.tags){let c=be(n.parent.tags,w2);if(c)return c}return vZ(n)}function pme(n){return o8(n,gte)}function vZ(n){let c=SZ(n);if(c)return n_(c)&&c.type&&$l(c.type)?c.type:$l(c)?c:void 0}function SZ(n){let c=eV(n);if(c)return QUe(c)||XRe(c)||gme(c)||Y3(c)||YUe(c)||c}function eV(n){let c=OX(n);if(!c)return;let u=c.parent;if(u&&u.jsDoc&&c===qo(u.jsDoc))return u}function OX(n){return Si(n.parent,aT)}function JRe(n){let c=n.name.escapedText,{typeParameters:u}=n.parent.parent.parent;return u&&be(u,d=>d.name.escapedText===c)}function JUe(n){return!!n.typeArguments}var URe=(n=>(n[n.None=0]="None",n[n.Definite=1]="Definite",n[n.Compound=2]="Compound",n))(URe||{});function KRe(n){let c=n.parent;for(;;){switch(c.kind){case 226:let u=c,d=u.operatorToken.kind;return qR(d)&&u.left===n?u:void 0;case 224:case 225:let I=c,h=I.operator;return h===46||h===47?I:void 0;case 249:case 250:let b=c;return b.initializer===n?b:void 0;case 217:case 209:case 230:case 235:n=c;break;case 305:n=c.parent;break;case 304:if(c.name!==n)return;n=c.parent;break;case 303:if(c.name===n)return;n=c.parent;break;default:return}c=n.parent}}function Nx(n){let c=KRe(n);if(!c)return 0;switch(c.kind){case 226:let u=c.operatorToken.kind;return u===64||e6(u)?1:2;case 224:case 225:return 2;case 249:case 250:return 1}}function Rx(n){return!!KRe(n)}function zTt(n){let c=jA(n.right);return c.kind===226&&e8e(c.operatorToken.kind)}function Cce(n){let c=KRe(n);return!!c&&fm(c,!0)&&zTt(c)}function jRe(n){switch(n.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 GQ(n){return WA(n)||fd(n)||hZ(n)||mp(n)||Rf(n)}function UUe(n,c){for(;n&&n.kind===c;)n=n.parent;return n}function pee(n){return UUe(n,196)}function KR(n){return UUe(n,217)}function fme(n){let c;for(;n&&n.kind===196;)c=n,n=n.parent;return[c,n]}function H8(n){for(;ro(n);)n=n.type;return n}function jA(n,c){return ZC(n,c?17:1)}function Ime(n){return n.kind!==211&&n.kind!==212?!1:(n=KR(n.parent),n&&n.kind===220)}function tV(n,c){for(;n;){if(n===c)return!0;n=n.parent}return!1}function eT(n){return!Gc(n)&&!pu(n)&&DC(n.parent)&&n.parent.name===n}function X8(n){let c=n.parent;switch(n.kind){case 11:case 15:case 9:if(xg(c))return c.parent;case 80:if(DC(c))return c.name===n?c:void 0;if(a0(c)){let u=c.parent;return FB(u)&&u.name===c?u:void 0}else{let u=c.parent;return no(u)&&CI(u)!==0&&(u.left.symbol||u.symbol)&&vl(u)===n?u:void 0}case 81:return DC(c)&&c.name===n?c:void 0;default:return}}function fee(n){return GE(n)&&n.parent.kind===167&&DC(n.parent.parent)}function zRe(n){let c=n.parent;switch(c.kind){case 172:case 171:case 174:case 173:case 177:case 178:case 306:case 303:case 211:return c.name===n;case 166:return c.right===n;case 208:case 276:return c.propertyName===n;case 281:case 291:case 285:case 286:case 287:return!0}return!1}function KUe(n){return n.kind===271||n.kind===270||n.kind===273&&n.name||n.kind===274||n.kind===280||n.kind===276||n.kind===281||n.kind===277&&H3(n)?!0:so(n)&&(no(n)&&CI(n)===2&&H3(n)||Io(n)&&no(n.parent)&&n.parent.left===n&&n.parent.operatorToken.kind===64&&Iee(n.parent.right))}function Cme(n){switch(n.parent.kind){case 273:case 276:case 274:case 281:case 277:case 271:case 280:return n.parent;case 166:do n=n.parent;while(n.parent.kind===166);return Cme(n)}}function Iee(n){return cp(n)||tp(n)}function H3(n){let c=mme(n);return Iee(c)}function mme(n){return tf(n)?n.expression:n.right}function qRe(n){return n.kind===304?n.name:n.kind===303?n.initializer:n.parent.right}function Dv(n){let c=rV(n);if(c&&so(n)){let u=s8(n);if(u)return u.class}return c}function rV(n){let c=Cee(n.heritageClauses,96);return c&&c.types.length>0?c.types[0]:void 0}function MX(n){if(so(n))return mx(n).map(c=>c.class);{let c=Cee(n.heritageClauses,119);return c?.types}}function J8(n){return HI(n)?U8(n)||v:Sa(n)&&vi(Rm(Dv(n)),MX(n))||v}function U8(n){let c=Cee(n.heritageClauses,96);return c?c.types:void 0}function Cee(n,c){if(n){for(let u of n)if(u.token===c)return u}}function CG(n,c){for(;n;){if(n.kind===c)return n;n=n.parent}}function i0(n){return 83<=n&&n<=165}function hme(n){return 19<=n&&n<=79}function mce(n){return i0(n)||hme(n)}function hce(n){return 128<=n&&n<=165}function _me(n){return i0(n)&&!hce(n)}function jUe(n){return 119<=n&&n<=127}function FQ(n){let c=Hn(n);return c!==void 0&&_me(c)}function zUe(n){let c=Hn(n);return c!==void 0&&i0(c)}function mee(n){let c=VR(n);return!!c&&!hce(c)}function QX(n){return 2<=n&&n<=7}var $Re=(n=>(n[n.Normal=0]="Normal",n[n.Generator=1]="Generator",n[n.Async=2]="Async",n[n.Invalid=4]="Invalid",n[n.AsyncGenerator=3]="AsyncGenerator",n))($Re||{});function YI(n){if(!n)return 4;let c=0;switch(n.kind){case 262:case 218:case 174:n.asteriskToken&&(c|=1);case 219:ba(n,1024)&&(c|=2);break}return n.body||(c|=4),c}function K8(n){switch(n.kind){case 262:case 218:case 219:case 174:return n.body!==void 0&&n.asteriskToken===void 0&&ba(n,1024)}return!1}function GE(n){return XA(n)||du(n)}function _ce(n){return xB(n)&&(n.operator===40||n.operator===41)&&du(n.operand)}function jR(n){let c=vl(n);return!!c&&yce(c)}function yce(n){if(!(n.kind===167||n.kind===212))return!1;let c=hA(n)?jA(n.argumentExpression):n.expression;return!GE(c)&&!_ce(c)}function nV(n){switch(n.kind){case 80:case 81:return n.escapedText;case 11:case 15:case 9:return Rd(n.text);case 167:let c=n.expression;return GE(c)?Rd(c.text):_ce(c)?c.operator===41?vr(c.operator)+c.operand.text:c.operand.text:void 0;case 295:return D2(n);default:return w.assertNever(n)}}function VS(n){switch(n.kind){case 80:case 11:case 15:case 9:return!0;default:return!1}}function T2(n){return $y(n)?ao(n):oT(n)?v6(n):n.text}function j8(n){return $y(n)?n.escapedText:oT(n)?D2(n):Rd(n.text)}function qUe(n){return`__@${kg(n)}@${n.escapedName}`}function hee(n,c){return`__#${kg(n)}@${c}`}function _ee(n){return uc(n.escapedName,"__@")}function eDe(n){return uc(n.escapedName,"__#")}function $Ue(n){return n.kind===80&&n.escapedText==="Symbol"}function tDe(n){return sr(n)?ao(n)==="__proto__":bu(n)&&n.text==="__proto__"}function z8(n,c){switch(n=ZC(n),n.kind){case 231:if(a6e(n))return!1;break;case 218:if(n.name)return!1;break;case 219:break;default:return!1}return typeof c=="function"?c(n):!0}function yme(n){switch(n.kind){case 303:return!tDe(n.name);case 304:return!!n.objectAssignmentInitializer;case 260:return sr(n.name)&&!!n.initializer;case 169:return sr(n.name)&&!!n.initializer&&!n.dotDotDotToken;case 208:return sr(n.name)&&!!n.initializer&&!n.dotDotDotToken;case 172:return!!n.initializer;case 226:switch(n.operatorToken.kind){case 64:case 77:case 76:case 78:return sr(n.left)}break;case 277:return!0}return!1}function tb(n,c){if(!yme(n))return!1;switch(n.kind){case 303:return z8(n.initializer,c);case 304:return z8(n.objectAssignmentInitializer,c);case 260:case 169:case 208:case 172:return z8(n.initializer,c);case 226:return z8(n.right,c);case 277:return z8(n.expression,c)}}function bme(n){return n.escapedText==="push"||n.escapedText==="unshift"}function wZ(n){return WS(n).kind===169}function WS(n){for(;n.kind===208;)n=n.parent.parent;return n}function Eme(n){let c=n.kind;return c===176||c===218||c===262||c===219||c===174||c===177||c===178||c===267||c===307}function qd(n){return Gv(n.pos)||Gv(n.end)}function eKe(n){return jc(n,Gc)||n}var rDe=(n=>(n[n.Left=0]="Left",n[n.Right=1]="Right",n))(rDe||{});function Bme(n){let c=bce(n),u=n.kind===214&&n.arguments!==void 0;return vme(n.kind,c,u)}function vme(n,c,u){switch(n){case 214:return u?0:1;case 224:case 221:case 222:case 220:case 223:case 227:case 229:return 1;case 226:switch(c){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 mG(n){let c=bce(n),u=n.kind===214&&n.arguments!==void 0;return yee(n.kind,c,u)}function bce(n){return n.kind===226?n.operatorToken.kind:n.kind===224||n.kind===225?n.operator:n.kind}var nDe=(n=>(n[n.Comma=0]="Comma",n[n.Spread=1]="Spread",n[n.Yield=2]="Yield",n[n.Assignment=3]="Assignment",n[n.Conditional=4]="Conditional",n[n.Coalesce=4]="Coalesce",n[n.LogicalOR=5]="LogicalOR",n[n.LogicalAND=6]="LogicalAND",n[n.BitwiseOR=7]="BitwiseOR",n[n.BitwiseXOR=8]="BitwiseXOR",n[n.BitwiseAND=9]="BitwiseAND",n[n.Equality=10]="Equality",n[n.Relational=11]="Relational",n[n.Shift=12]="Shift",n[n.Additive=13]="Additive",n[n.Multiplicative=14]="Multiplicative",n[n.Exponentiation=15]="Exponentiation",n[n.Unary=16]="Unary",n[n.Update=17]="Update",n[n.LeftHandSide=18]="LeftHandSide",n[n.Member=19]="Member",n[n.Primary=20]="Primary",n[n.Highest=20]="Highest",n[n.Lowest=0]="Lowest",n[n.Invalid=-1]="Invalid",n))(nDe||{});function yee(n,c,u){switch(n){case 355:return 0;case 230:return 1;case 229:return 2;case 227:return 4;case 226:switch(c){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 bee(c)}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 u?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 bee(n){switch(n){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 YX(n){return Gt(n,c=>{switch(c.kind){case 294:return!!c.expression;case 12:return!c.containsOnlyTriviaWhiteSpaces;default:return!0}})}function hG(){let n=[],c=[],u=new Map,d=!1;return{add:h,lookup:I,getGlobalDiagnostics:b,getDiagnostics:R};function I(N){let V;if(N.file?V=u.get(N.file.fileName):V=n,!V)return;let P=Lg(V,N,Bl,Xce);if(P>=0)return V[P];if(~P>0&&Jce(N,V[~P-1]))return V[~P-1]}function h(N){let V;N.file?(V=u.get(N.file.fileName),V||(V=[],u.set(N.file.fileName,V),Gr(c,N.file.fileName,Do))):(d&&(d=!1,n=n.slice()),V=n),Gr(V,N,Xce,Jce)}function b(){return d=!0,n}function R(N){if(N)return u.get(N)||[];let V=$r(c,P=>u.get(P));return n.length&&V.unshift(...n),V}}var qTt=/\$\{/g;function Sme(n){return n.replace(qTt,"\\${")}function iDe(n){return!!((n.templateFlags||0)&2048)}function wme(n){return n&&!!(oY(n)?iDe(n):iDe(n.head)||lr(n.templateSpans,c=>iDe(c.literal)))}var $Tt=/[\\"\u0000-\u001f\t\v\f\b\r\n\u2028\u2029\u0085]/g,eNt=/[\\'\u0000-\u001f\t\v\f\b\r\n\u2028\u2029\u0085]/g,tKe=/\r\n|[\\`\u0000-\u001f\t\v\f\b\r\u2028\u2029\u0085]/g,tNt=new Map(Object.entries({" ":"\\t","\v":"\\v","\f":"\\f","\b":"\\b","\r":"\\r","\n":"\\n","\\":"\\\\",'"':'\\"',"'":"\\'","`":"\\`","\u2028":"\\u2028","\u2029":"\\u2029","\x85":"\\u0085","\r\n":"\\r\\n"}));function rKe(n){return"\\u"+("0000"+n.toString(16).toUpperCase()).slice(-4)}function rNt(n,c,u){if(n.charCodeAt(0)===0){let d=u.charCodeAt(c+n.length);return d>=48&&d<=57?"\\x00":"\\0"}return tNt.get(n)||rKe(n.charCodeAt(0))}function tT(n,c){let u=c===96?tKe:c===39?eNt:$Tt;return n.replace(u,rNt)}var nKe=/[^\u0000-\u007F]/g;function Ece(n,c){return n=tT(n,c),nKe.test(n)?n.replace(nKe,u=>rKe(u.charCodeAt(0))):n}var iKe=/["\u0000-\u001f\u2028\u2029\u0085]/g,nNt=/['\u0000-\u001f\u2028\u2029\u0085]/g,iNt=new Map(Object.entries({'"':""","'":"'"}));function sNt(n){return"&#x"+n.toString(16).toUpperCase()+";"}function oNt(n){return n.charCodeAt(0)===0?"�":iNt.get(n)||sNt(n.charCodeAt(0))}function Tme(n,c){let u=c===39?nNt:iKe;return n.replace(u,oNt)}function N2(n){let c=n.length;return c>=2&&n.charCodeAt(0)===n.charCodeAt(c-1)&&aNt(n.charCodeAt(0))?n.substring(1,c-1):n}function aNt(n){return n===39||n===34||n===96}function HX(n){let c=n.charCodeAt(0);return c>=97&&c<=122||n.includes("-")}var Eee=[""," "];function XX(n){let c=Eee[1];for(let u=Eee.length;u<=n;u++)Eee.push(Eee[u-1]+c);return Eee[n]}function JX(){return Eee[1].length}function Bee(n){var c,u,d,I,h,b=!1;function R(Ae){let de=pc(Ae);de.length>1?(I=I+de.length-1,h=c.length-Ae.length+Na(de),d=h-c.length===0):d=!1}function N(Ae){Ae&&Ae.length&&(d&&(Ae=XX(u)+Ae,d=!1),c+=Ae,R(Ae))}function V(Ae){Ae&&(b=!1),N(Ae)}function P(Ae){Ae&&(b=!0),N(Ae)}function M(){c="",u=0,d=!0,I=0,h=0,b=!1}function te(Ae){Ae!==void 0&&(c+=Ae,R(Ae),b=!1)}function re(Ae){Ae&&Ae.length&&V(Ae)}function ue(Ae){(!d||Ae)&&(c+=n,I++,h=c.length,d=!0,b=!1)}return M(),{write:V,rawWrite:te,writeLiteral:re,writeLine:ue,increaseIndent:()=>{u++},decreaseIndent:()=>{u--},getIndent:()=>u,getTextPos:()=>c.length,getLine:()=>I,getColumn:()=>d?u*JX():c.length-h,getText:()=>c,isAtStartOfLine:()=>d,hasTrailingComment:()=>b,hasTrailingWhitespace:()=>!!c.length&&Xm(c.charCodeAt(c.length-1)),clear:M,writeKeyword:V,writeOperator:V,writeParameter:V,writeProperty:V,writePunctuation:V,writeSpace:V,writeStringLiteral:V,writeSymbol:(Ae,de)=>V(Ae),writeTrailingSemicolon:V,writeComment:P}}function Nme(n){let c=!1;function u(){c&&(n.writeTrailingSemicolon(";"),c=!1)}return{...n,writeTrailingSemicolon(){c=!0},writeLiteral(d){u(),n.writeLiteral(d)},writeStringLiteral(d){u(),n.writeStringLiteral(d)},writeSymbol(d,I){u(),n.writeSymbol(d,I)},writePunctuation(d){u(),n.writePunctuation(d)},writeKeyword(d){u(),n.writeKeyword(d)},writeOperator(d){u(),n.writeOperator(d)},writeParameter(d){u(),n.writeParameter(d)},writeSpace(d){u(),n.writeSpace(d)},writeProperty(d){u(),n.writeProperty(d)},writeComment(d){u(),n.writeComment(d)},writeLine(){u(),n.writeLine()},increaseIndent(){u(),n.increaseIndent()},decreaseIndent(){u(),n.decreaseIndent()}}}function UX(n){return n.useCaseSensitiveFileNames?n.useCaseSensitiveFileNames():!1}function Dx(n){return tA(UX(n))}function Bce(n,c,u){return c.moduleName||Rme(n,c.fileName,u&&u.fileName)}function sKe(n,c){return n.getCanonicalFileName(Oc(c,n.getCurrentDirectory()))}function sDe(n,c,u){let d=c.getExternalModuleFileFromDeclaration(u);if(!d||d.isDeclarationFile)return;let I=DQ(u);if(!(I&&XA(I)&&!Op(I.text)&&!sKe(n,d.path).includes(sKe(n,AA(n.getCommonSourceDirectory())))))return Bce(n,d)}function Rme(n,c,u){let d=N=>n.getCanonicalFileName(N),I=gA(u?aa(u):n.getCommonSourceDirectory(),n.getCurrentDirectory(),d),h=Oc(c,n.getCurrentDirectory()),b=xm(I,h,I,d,!1),R=o0(b);return u?Ky(R):R}function oDe(n,c,u){let d=c.getCompilerOptions(),I;return d.outDir?I=o0(Nce(n,c,d.outDir)):I=o0(n),I+u}function aDe(n,c){return vce(n,c.getCompilerOptions(),c)}function vce(n,c,u){let d=c.declarationDir||c.outDir,I=d?Rce(n,d,u.getCurrentDirectory(),u.getCommonSourceDirectory(),b=>u.getCanonicalFileName(b)):n,h=Sce(I);return o0(I)+h}function Sce(n){return pp(n,[".mjs",".mts"])?".d.mts":pp(n,[".cjs",".cts"])?".d.cts":pp(n,[".json"])?".d.json.ts":".d.ts"}function cDe(n){return pp(n,[".d.mts",".mjs",".mts"])?[".mts",".mjs"]:pp(n,[".d.cts",".cjs",".cts"])?[".cts",".cjs"]:pp(n,[".d.json.ts"])?[".json"]:[".tsx",".ts",".jsx",".js"]}function wce(n,c){var u;if(n.paths)return n.baseUrl??w.checkDefined(n.pathsBasePath||((u=c.getCurrentDirectory)==null?void 0:u.call(c)),"Encountered 'paths' without a 'baseUrl', config file, or host 'getCurrentDirectory'.")}function Tce(n,c,u){let d=n.getCompilerOptions();if(d.outFile){let I=R_(d),h=d.emitDeclarationOnly||I===2||I===4;return Gt(n.getSourceFiles(),b=>(h||!mm(b))&&X3(b,n,u))}else{let I=c===void 0?n.getSourceFiles():[c];return Gt(I,h=>X3(h,n,u))}}function X3(n,c,u){let d=c.getCompilerOptions();if(d.noEmitForJsFiles&&n0(n)||n.isDeclarationFile||c.isSourceFileFromExternalLibrary(n))return!1;if(u)return!0;if(c.isSourceOfProjectReferenceRedirect(n.fileName))return!1;if(!Ia(n))return!0;if(c.getResolvedProjectReferenceToRedirect(n.fileName))return!1;if(d.outFile)return!0;if(!d.outDir)return!1;if(d.rootDir||d.composite&&d.configFilePath){let I=Oc(aue(d,()=>[],c.getCurrentDirectory(),c.getCanonicalFileName),c.getCurrentDirectory()),h=Rce(n.fileName,d.outDir,c.getCurrentDirectory(),I,c.getCanonicalFileName);if(Ah(n.fileName,h,c.getCurrentDirectory(),!c.useCaseSensitiveFileNames())===0)return!1}return!0}function Nce(n,c,u){return Rce(n,u,c.getCurrentDirectory(),c.getCommonSourceDirectory(),d=>c.getCanonicalFileName(d))}function Rce(n,c,u,d,I){let h=Oc(n,u);return h=I(h).indexOf(I(d))===0?h.substring(d.length):h,xo(c,h)}function vee(n,c,u,d,I,h,b){n.writeFile(u,d,I,R=>{c.add(ff(Z.Could_not_write_file_0_Colon_1,u,R))},h,b)}function oKe(n,c,u){if(n.length>e_(n)&&!u(n)){let d=aa(n);oKe(d,c,u),c(n)}}function Dme(n,c,u,d,I,h){try{d(n,c,u)}catch{oKe(aa(Mc(n)),I,h),d(n,c,u)}}function q8(n,c){let u=Rc(n);return jy(u,c)}function J3(n,c){return jy(n,c)}function dN(n){return be(n.members,c=>Rf(c)&&xE(c.body))}function KX(n){if(n&&n.parameters.length>0){let c=n.parameters.length===2&&sV(n.parameters[0]);return n.parameters[c?1:0]}}function xme(n){let c=KX(n);return c&&c.type}function iV(n){if(n.parameters.length&&!xG(n)){let c=n.parameters[0];if(sV(c))return c}}function sV(n){return _G(n.name)}function _G(n){return!!n&&n.kind===80&&kme(n)}function ZQ(n){return!!Si(n,c=>c.kind===186?!0:c.kind===80||c.kind===166?!1:"quit")}function oV(n){if(!_G(n))return!1;for(;a0(n.parent)&&n.parent.left===n;)n=n.parent;return n.parent.kind===186}function kme(n){return n.escapedText==="this"}function xx(n,c){let u,d,I,h;return jR(c)?(u=c,c.kind===177?I=c:c.kind===178?h=c:w.fail("Accessor has wrong kind")):X(n,b=>{if(jw(b)&&$u(b)===$u(c)){let R=nV(b.name),N=nV(c.name);R===N&&(u?d||(d=b):u=b,b.kind===177&&!I&&(I=b),b.kind===178&&!h&&(h=b))}}),{firstAccessor:u,secondAccessor:d,getAccessor:I,setAccessor:h}}function fC(n){if(!so(n)&&mp(n)||Wf(n))return;let c=n.type;return c||!so(n)?c:fZ(n)?n.typeExpression&&n.typeExpression.type:yx(n)}function lDe(n){return n.type}function rb(n){return xG(n)?n.type&&n.type.typeExpression&&n.type.typeExpression.type:n.type||(so(n)?uX(n):void 0)}function See(n){return Fr(bx(n),c=>cNt(c)?c.typeParameters:void 0)}function cNt(n){return Zv(n)&&!(n.parent.kind===320&&(n.parent.tags.some(w2)||n.parent.tags.some(gte)))}function uDe(n){let c=KX(n);return c&&fC(c)}function gDe(n,c,u,d){ADe(n,c,u.pos,d)}function ADe(n,c,u,d){d&&d.length&&u!==d[0].pos&&J3(n,u)!==J3(n,d[0].pos)&&c.writeLine()}function Gme(n,c,u,d){u!==d&&J3(n,u)!==J3(n,d)&&c.writeLine()}function dDe(n,c,u,d,I,h,b,R){if(d&&d.length>0){I&&u.writeSpace(" ");let N=!1;for(let V of d)N&&(u.writeSpace(" "),N=!1),R(n,c,u,V.pos,V.end,b),V.hasTrailingNewLine?u.writeLine():N=!0;N&&h&&u.writeSpace(" ")}}function pDe(n,c,u,d,I,h,b){let R,N;if(b?I.pos===0&&(R=Gt(Gb(n,I.pos),V)):R=Gb(n,I.pos),R){let P=[],M;for(let te of R){if(M){let re=J3(c,M.end);if(J3(c,te.pos)>=re+2)break}P.push(te),M=te}if(P.length){let te=J3(c,Na(P).end);J3(c,Ju(n,I.pos))>=te+2&&(gDe(c,u,I,R),dDe(n,c,u,P,!1,!0,h,d),N={nodePos:I.pos,detachedCommentEndPos:Na(P).end})}}return N;function V(P){return B8(n,P.pos)}}function jX(n,c,u,d,I,h){if(n.charCodeAt(d+1)===42){let b=Mp(c,d),R=c.length,N;for(let V=d,P=b.line;V0){let ue=re%JX(),Ae=XX((re-ue)/JX());for(u.rawWrite(Ae);ue;)u.rawWrite(" "),ue--}else u.rawWrite("")}lNt(n,I,u,h,V,M),V=M}}else u.writeComment(n.substring(d,I))}function lNt(n,c,u,d,I,h){let b=Math.min(c,h-1),R=n.substring(I,b).trim();R?(u.writeComment(R),b!==c&&u.writeLine()):u.rawWrite(d)}function aKe(n,c,u){let d=0;for(;c=0&&n.kind<=165?0:(n.modifierFlagsCache&536870912||(n.modifierFlagsCache=Vme(n)|536870912),u||c&&so(n)?(!(n.modifierFlagsCache&268435456)&&n.parent&&(n.modifierFlagsCache|=cKe(n)|268435456),lKe(n.modifierFlagsCache)):uNt(n.modifierFlagsCache))}function N_(n){return IDe(n,!0)}function xce(n){return IDe(n,!0,!0)}function zR(n){return IDe(n,!1)}function cKe(n){let c=0;return n.parent&&!Jc(n)&&(so(n)&&(ea(n)&&(c|=8388608),gc(n)&&(c|=16777216),Dd(n)&&(c|=33554432),T1(n)&&(c|=67108864),N1(n)&&(c|=134217728)),bB(n)&&(c|=65536)),c}function uNt(n){return n&65535}function lKe(n){return n&131071|(n&260046848)>>>23}function gNt(n){return lKe(cKe(n))}function CDe(n){return Vme(n)|gNt(n)}function Vme(n){let c=ew(n)?xv(n.modifiers):0;return(n.flags&8||n.kind===80&&n.flags&4096)&&(c|=32),c}function xv(n){let c=0;if(n)for(let u of n)c|=VQ(u.kind);return c}function VQ(n){switch(n){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 uKe(n){return n===57||n===56}function mDe(n){return uKe(n)||n===54}function e6(n){return n===76||n===77||n===78}function Wme(n){return no(n)&&e6(n.operatorToken.kind)}function wee(n){return uKe(n)||n===61}function Tee(n){return no(n)&&wee(n.operatorToken.kind)}function qR(n){return n>=64&&n<=79}function Pme(n){let c=Ome(n);return c&&!c.isImplements?c.class:void 0}function Ome(n){if(x_(n)){if(WE(n.parent)&&Sa(n.parent.parent))return{class:n.parent.parent,isImplements:n.parent.token===119};if(G6(n.parent)){let c=SZ(n.parent);if(c&&Sa(c))return{class:c,isImplements:!1}}}}function fm(n,c){return no(n)&&(c?n.operatorToken.kind===64:qR(n.operatorToken.kind))&&T_(n.left)}function WQ(n){return fm(n.parent)&&n.parent.left===n}function kv(n){if(fm(n,!0)){let c=n.left.kind;return c===210||c===209}return!1}function kce(n){return Pme(n)!==void 0}function cp(n){return n.kind===80||Ree(n)}function ib(n){switch(n.kind){case 80:return n;case 166:do n=n.left;while(n.kind!==80);return n;case 211:do n=n.expression;while(n.kind!==80);return n}}function Nee(n){return n.kind===80||n.kind===110||n.kind===108||n.kind===236||n.kind===211&&Nee(n.expression)||n.kind===217&&Nee(n.expression)}function Ree(n){return Io(n)&&sr(n.name)&&cp(n.expression)}function Dee(n){if(Io(n)){let c=Dee(n.expression);if(c!==void 0)return c+"."+t0(n.name)}else if(hA(n)){let c=Dee(n.expression);if(c!==void 0&&NI(n.argumentExpression))return c+"."+nV(n.argumentExpression)}else{if(sr(n))return Sc(n.escapedText);if(oT(n))return v6(n)}}function yG(n){return $9(n)&&UR(n)==="prototype"}function t6(n){return n.parent.kind===166&&n.parent.right===n||n.parent.kind===211&&n.parent.name===n||n.parent.kind===236&&n.parent.name===n}function Mme(n){return!!n.parent&&(Io(n.parent)&&n.parent.name===n||hA(n.parent)&&n.parent.argumentExpression===n)}function hDe(n){return a0(n.parent)&&n.parent.right===n||Io(n.parent)&&n.parent.name===n||nP(n.parent)&&n.parent.right===n}function r6(n){return no(n)&&n.operatorToken.kind===104}function _De(n){return r6(n.parent)&&n===n.parent.right}function xee(n){return n.kind===210&&n.properties.length===0}function Qme(n){return n.kind===209&&n.elements.length===0}function n6(n){if(!(!gKe(n)||!n.declarations)){for(let c of n.declarations)if(c.localSymbol)return c.localSymbol}}function gKe(n){return n&&O(n.declarations)>0&&ba(n.declarations[0],2048)}function Gce(n){return be(FNt,c=>gd(n,c))}function ANt(n){let c=[],u=n.length;for(let d=0;d>6|192),c.push(I&63|128)):I<65536?(c.push(I>>12|224),c.push(I>>6&63|128),c.push(I&63|128)):I<131072?(c.push(I>>18|240),c.push(I>>12&63|128),c.push(I>>6&63|128),c.push(I&63|128)):w.assert(!1,"Unexpected code point")}return c}var U3="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function Fce(n){let c="",u=ANt(n),d=0,I=u.length,h,b,R,N;for(;d>2,b=(u[d]&3)<<4|u[d+1]>>4,R=(u[d+1]&15)<<2|u[d+2]>>6,N=u[d+2]&63,d+1>=I?R=N=64:d+2>=I&&(N=64),c+=U3.charAt(h)+U3.charAt(b)+U3.charAt(R)+U3.charAt(N),d+=3;return c}function Zce(n){let c="",u=0,d=n.length;for(;u>4&3,P=(b&15)<<4|R>>2&15,M=(R&3)<<6|N&63;P===0&&R!==0?d.push(V):M===0&&N!==0?d.push(V,P):d.push(V,P,M),I+=4}return Zce(d)}function kee(n,c){let u=Xa(c)?c:c.readFile(n);if(!u)return;let d=C8e(n,u);return d.error?void 0:d.config}function cV(n,c){return kee(n,c)||{}}function Lce(n){try{return JSON.parse(n)}catch{return}}function k1(n,c){return!c.directoryExists||c.directoryExists(n)}var dNt=`\r -`,bDe=` -`;function G1(n){switch(n.newLine){case 0:return dNt;case 1:case void 0:return bDe}}function F1(n,c=n){return w.assert(c>=n||c===-1),{pos:n,end:c}}function s6(n,c){return F1(n.pos,c)}function TZ(n,c){return F1(c,n.end)}function $R(n){let c=ew(n)?Te(n.modifiers,GC):void 0;return c&&!Gv(c.end)?TZ(n,c.end):n}function OS(n){if(Ql(n)||cI(n))return TZ(n,n.name.pos);let c=ew(n)?qo(n.modifiers):void 0;return c&&!Gv(c.end)?TZ(n,c.end):$R(n)}function zX(n){return n.pos===n.end}function Vce(n,c){return F1(n,n+vr(c).length)}function NZ(n,c){return BDe(n,n,c)}function o6(n,c,u){return Z1(qX(n,u,!1),qX(c,u,!1),u)}function EDe(n,c,u){return Z1(n.end,c.end,u)}function BDe(n,c,u){return Z1(qX(n,u,!1),c.end,u)}function a6(n,c,u){return Z1(n.end,qX(c,u,!1),u)}function Yme(n,c,u,d){let I=qX(c,u,d);return Bv(u,n.end,I)}function vDe(n,c,u){return Bv(u,n.end,c.end)}function Hme(n,c){return!Z1(n.pos,n.end,c)}function Z1(n,c,u){return Bv(u,n,c)===0}function qX(n,c,u){return Gv(n.pos)?-1:Ju(c.text,n.pos,!1,u)}function SDe(n,c,u,d){let I=Ju(u.text,n,!1,d),h=pNt(I,c,u);return Bv(u,h??c,I)}function wDe(n,c,u,d){let I=Ju(u.text,n,!1,d);return Bv(u,n,Math.min(c,I))}function pNt(n,c=0,u){for(;n-- >c;)if(!Xm(u.text.charCodeAt(n)))return n}function Xme(n){let c=jc(n);if(c)switch(c.parent.kind){case 266:case 267:return c===c.parent.name}return!1}function c6(n){return Gt(n.declarations,Gee)}function Gee(n){return zs(n)&&n.initializer!==void 0}function Jme(n){return n.watch&&Qa(n,"watch")}function RB(n){n.close()}function aI(n){return n.flags&33554432?n.links.checkFlags:0}function L1(n,c=!1){if(n.valueDeclaration){let u=c&&n.declarations&&be(n.declarations,sb)||n.flags&32768&&be(n.declarations,Pb)||n.valueDeclaration,d=Nh(u);return n.parent&&n.parent.flags&32?d:d&-8}if(aI(n)&6){let u=n.links.checkFlags,d=u&1024?2:u&256?1:4,I=u&2048?256:0;return d|I}return n.flags&4194304?257:0}function dh(n,c){return n.flags&2097152?c.getAliasedSymbol(n):n}function PQ(n){return n.exportSymbol?n.exportSymbol.flags|n.flags:n.flags}function Wce(n){return l6(n)===1}function OQ(n){return l6(n)!==0}function l6(n){let{parent:c}=n;switch(c?.kind){case 217:return l6(c);case 225:case 224:let{operator:u}=c;return u===46||u===47?2:0;case 226:let{left:d,operatorToken:I}=c;return d===n&&qR(I.kind)?I.kind===64?1:2:0;case 211:return c.name!==n?0:l6(c);case 303:{let h=l6(c.parent);return n===c.name?AKe(h):h}case 304:return n===c.objectAssignmentInitializer?0:l6(c.parent);case 209:return l6(c);default:return 0}}function AKe(n){switch(n){case 0:return 1;case 1:return 0;case 2:return 2;default:return w.assertNever(n)}}function Pce(n,c){if(!n||!c||Object.keys(n).length!==Object.keys(c).length)return!1;for(let u in n)if(typeof n[u]=="object"){if(!Pce(n[u],c[u]))return!1}else if(typeof n[u]!="function"&&n[u]!==c[u])return!1;return!0}function Y0(n,c){n.forEach(c),n.clear()}function pN(n,c,u){let{onDeleteValue:d,onExistingValue:I}=u;n.forEach((h,b)=>{var R;c?.has(b)?I&&I(h,(R=c.get)==null?void 0:R.call(c,b),b):(n.delete(b),d(h,b))})}function u6(n,c,u){pN(n,c,u);let{createNewValue:d}=u;c?.forEach((I,h)=>{n.has(h)||n.set(h,d(h,I))})}function TDe(n){if(n.flags&32){let c=DB(n);return!!c&&ba(c,64)}return!1}function DB(n){var c;return(c=n.declarations)==null?void 0:c.find(Sa)}function sa(n){return n.flags&3899393?n.objectFlags:0}function NDe(n,c){return!!iI(n,u=>c(u)?!0:void 0)}function Oce(n){return!!n&&!!n.declarations&&!!n.declarations[0]&&Vhe(n.declarations[0])}function RDe({moduleSpecifier:n}){return bu(n)?n.text:Tf(n)}function Mce(n){let c;return mu(n,u=>{xE(u)&&(c=u)},u=>{for(let d=u.length-1;d>=0;d--)if(xE(u[d])){c=u[d];break}}),c}function R2(n,c,u=!0){return n.has(c)?!1:(n.set(c,u),!0)}function MQ(n){return Sa(n)||HI(n)||Se(n)}function Ume(n){return n>=182&&n<=205||n===133||n===159||n===150||n===163||n===151||n===136||n===154||n===155||n===116||n===157||n===146||n===141||n===233||n===312||n===313||n===314||n===315||n===316||n===317||n===318}function Cp(n){return n.kind===211||n.kind===212}function Kme(n){return n.kind===211?n.name:(w.assert(n.kind===212),n.argumentExpression)}function Qce(n){return n.kind===275||n.kind===279}function QQ(n){for(;Cp(n);)n=n.expression;return n}function DDe(n,c){if(Cp(n.parent)&&Mme(n))return u(n.parent);function u(d){if(d.kind===211){let I=c(d.name);if(I!==void 0)return I}else if(d.kind===212)if(sr(d.argumentExpression)||XA(d.argumentExpression)){let I=c(d.argumentExpression);if(I!==void 0)return I}else return;if(Cp(d.expression))return u(d.expression);if(sr(d.expression))return c(d.expression)}}function YQ(n,c){for(;;){switch(n.kind){case 225:n=n.operand;continue;case 226:n=n.left;continue;case 227:n=n.condition;continue;case 215:n=n.tag;continue;case 213:if(c)return n;case 234:case 212:case 211:case 235:case 354:case 238:n=n.expression;continue}return n}}function fNt(n,c){this.flags=n,this.escapedName=c,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 INt(n,c){this.flags=c,(w.isDebugging||Mi)&&(this.checker=n)}function CNt(n,c){this.flags=c,w.isDebugging&&(this.checker=n)}function xDe(n,c,u){this.pos=c,this.end=u,this.kind=n,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 mNt(n,c,u){this.pos=c,this.end=u,this.kind=n,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.emitNode=void 0}function hNt(n,c,u){this.pos=c,this.end=u,this.kind=n,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}function _Nt(n,c,u){this.fileName=n,this.text=c,this.skipTrivia=u||(d=>d)}var xC={getNodeConstructor:()=>xDe,getTokenConstructor:()=>mNt,getIdentifierConstructor:()=>hNt,getPrivateIdentifierConstructor:()=>xDe,getSourceFileConstructor:()=>xDe,getSymbolConstructor:()=>fNt,getTypeConstructor:()=>INt,getSignatureConstructor:()=>CNt,getSourceMapSourceConstructor:()=>_Nt},dKe=[];function pKe(n){dKe.push(n),n(xC)}function kDe(n){Object.assign(xC,n),X(dKe,c=>c(xC))}function fN(n,c){return n.replace(/{(\d+)}/g,(u,d)=>""+w.checkDefined(c[+d]))}var Yce;function Fee(n){Yce=n}function GDe(n){!Yce&&n&&(Yce=n())}function eu(n){return Yce&&Yce[n.key]||n.message}function HQ(n,c,u,d,I,...h){u+d>c.length&&(d=c.length-u),tce(c,u,d);let b=eu(I);return lr(h)&&(b=fN(b,h)),{file:void 0,start:u,length:d,messageText:b,category:I.category,code:I.code,reportsUnnecessary:I.reportsUnnecessary,fileName:n}}function yNt(n){return n.file===void 0&&n.start!==void 0&&n.length!==void 0&&typeof n.fileName=="string"}function fKe(n,c){let u=c.fileName||"",d=c.text.length;w.assertEqual(n.fileName,u),w.assertLessThanOrEqual(n.start,d),w.assertLessThanOrEqual(n.start+n.length,d);let I={file:c,start:n.start,length:n.length,messageText:n.messageText,category:n.category,code:n.code,reportsUnnecessary:n.reportsUnnecessary};if(n.relatedInformation){I.relatedInformation=[];for(let h of n.relatedInformation)yNt(h)&&h.fileName===u?(w.assertLessThanOrEqual(h.start,d),w.assertLessThanOrEqual(h.start+h.length,d),I.relatedInformation.push(fKe(h,c))):I.relatedInformation.push(h)}return I}function RZ(n,c){let u=[];for(let d of n)u.push(fKe(d,c));return u}function Im(n,c,u,d,...I){tce(n.text,c,u);let h=eu(d);return lr(I)&&(h=fN(h,I)),{file:n,start:c,length:u,messageText:h,category:d.category,code:d.code,reportsUnnecessary:d.reportsUnnecessary,reportsDeprecated:d.reportsDeprecated}}function XQ(n,...c){let u=eu(n);return lr(c)&&(u=fN(u,c)),u}function ff(n,...c){let u=eu(n);return lr(c)&&(u=fN(u,c)),{file:void 0,start:void 0,length:void 0,messageText:u,category:n.category,code:n.code,reportsUnnecessary:n.reportsUnnecessary,reportsDeprecated:n.reportsDeprecated}}function Hce(n,c){return{file:void 0,start:void 0,length:void 0,code:n.code,category:n.category,messageText:n.next?n:n.messageText,relatedInformation:c}}function su(n,c,...u){let d=eu(c);return lr(u)&&(d=fN(d,u)),{messageText:d,category:c.category,code:c.code,next:n===void 0||Array.isArray(n)?n:[n]}}function FDe(n,c){let u=n;for(;u.next;)u=u.next[0];u.next=[c]}function jme(n){return n.file?n.file.path:void 0}function g6(n,c){return Xce(n,c)||bNt(n,c)||0}function Xce(n,c){let u=zme(n),d=zme(c);return Do(jme(n),jme(c))||Xl(n.start,c.start)||Xl(n.length,c.length)||Xl(u,d)||ENt(n,c)||0}function bNt(n,c){return!n.relatedInformation&&!c.relatedInformation?0:n.relatedInformation&&c.relatedInformation?Xl(c.relatedInformation.length,n.relatedInformation.length)||X(n.relatedInformation,(u,d)=>{let I=c.relatedInformation[d];return g6(u,I)})||0:n.relatedInformation?-1:1}function ENt(n,c){let u=qme(n),d=qme(c);typeof u!="string"&&(u=u.messageText),typeof d!="string"&&(d=d.messageText);let I=typeof n.messageText!="string"?n.messageText.next:void 0,h=typeof c.messageText!="string"?c.messageText.next:void 0,b=Do(u,d);return b||(b=BNt(I,h),b)?b:n.canonicalHead&&!c.canonicalHead?-1:c.canonicalHead&&!n.canonicalHead?1:0}function BNt(n,c){return n===void 0&&c===void 0?0:n===void 0?1:c===void 0?-1:IKe(n,c)||CKe(n,c)}function IKe(n,c){if(n===void 0&&c===void 0)return 0;if(n===void 0)return 1;if(c===void 0)return-1;let u=Xl(c.length,n.length);if(u)return u;for(let d=0;d{I.externalModuleIndicator=Uhe(I)||!I.isDeclarationFile||void 0};case 1:return I=>{I.externalModuleIndicator=Uhe(I)};case 2:let c=[Uhe];(n.jsx===4||n.jsx===5)&&c.push(SNt),c.push(wNt);let u=pg(...c);return I=>void(I.externalModuleIndicator=u(I))}}function ZDr(n){return n}var kC={target:{dependencies:["module"],computeValue:n=>(n.target===0?void 0:n.target)??(n.module===100&&9||n.module===199&&99||1)},module:{dependencies:["target"],computeValue:n=>typeof n.module=="number"?n.module:kC.target.computeValue(n)>=2?5:1},moduleResolution:{dependencies:["module","target"],computeValue:n=>{let c=n.moduleResolution;if(c===void 0)switch(kC.module.computeValue(n)){case 1:c=2;break;case 100:c=3;break;case 199:c=99;break;case 200:c=100;break;default:c=1;break}return c}},moduleDetection:{dependencies:["module","target"],computeValue:n=>n.moduleDetection||(kC.module.computeValue(n)===100||kC.module.computeValue(n)===199?3:2)},isolatedModules:{dependencies:["verbatimModuleSyntax"],computeValue:n=>!!(n.isolatedModules||n.verbatimModuleSyntax)},esModuleInterop:{dependencies:["module","target"],computeValue:n=>{if(n.esModuleInterop!==void 0)return n.esModuleInterop;switch(kC.module.computeValue(n)){case 100:case 199:case 200:return!0}return!1}},allowSyntheticDefaultImports:{dependencies:["module","target","moduleResolution"],computeValue:n=>n.allowSyntheticDefaultImports!==void 0?n.allowSyntheticDefaultImports:kC.esModuleInterop.computeValue(n)||kC.module.computeValue(n)===4||kC.moduleResolution.computeValue(n)===100},resolvePackageJsonExports:{dependencies:["moduleResolution"],computeValue:n=>{let c=kC.moduleResolution.computeValue(n);if(!UQ(c))return!1;if(n.resolvePackageJsonExports!==void 0)return n.resolvePackageJsonExports;switch(c){case 3:case 99:case 100:return!0}return!1}},resolvePackageJsonImports:{dependencies:["moduleResolution","resolvePackageJsonExports"],computeValue:n=>{let c=kC.moduleResolution.computeValue(n);if(!UQ(c))return!1;if(n.resolvePackageJsonExports!==void 0)return n.resolvePackageJsonExports;switch(c){case 3:case 99:case 100:return!0}return!1}},resolveJsonModule:{dependencies:["moduleResolution","module","target"],computeValue:n=>n.resolveJsonModule!==void 0?n.resolveJsonModule:kC.moduleResolution.computeValue(n)===100},declaration:{dependencies:["composite"],computeValue:n=>!!(n.declaration||n.composite)},preserveConstEnums:{dependencies:["isolatedModules","verbatimModuleSyntax"],computeValue:n=>!!(n.preserveConstEnums||kC.isolatedModules.computeValue(n))},incremental:{dependencies:["composite"],computeValue:n=>!!(n.incremental||n.composite)},declarationMap:{dependencies:["declaration","composite"],computeValue:n=>!!(n.declarationMap&&kC.declaration.computeValue(n))},allowJs:{dependencies:["checkJs"],computeValue:n=>n.allowJs===void 0?!!n.checkJs:n.allowJs},useDefineForClassFields:{dependencies:["target","module"],computeValue:n=>n.useDefineForClassFields===void 0?kC.target.computeValue(n)>=9:n.useDefineForClassFields},noImplicitAny:{dependencies:["strict"],computeValue:n=>D_(n,"noImplicitAny")},noImplicitThis:{dependencies:["strict"],computeValue:n=>D_(n,"noImplicitThis")},strictNullChecks:{dependencies:["strict"],computeValue:n=>D_(n,"strictNullChecks")},strictFunctionTypes:{dependencies:["strict"],computeValue:n=>D_(n,"strictFunctionTypes")},strictBindCallApply:{dependencies:["strict"],computeValue:n=>D_(n,"strictBindCallApply")},strictPropertyInitialization:{dependencies:["strict"],computeValue:n=>D_(n,"strictPropertyInitialization")},alwaysStrict:{dependencies:["strict"],computeValue:n=>D_(n,"alwaysStrict")},useUnknownInCatchVariables:{dependencies:["strict"],computeValue:n=>D_(n,"useUnknownInCatchVariables")}},iA=kC.target.computeValue,R_=kC.module.computeValue,s0=kC.moduleResolution.computeValue,ZDe=kC.moduleDetection.computeValue,ZE=kC.isolatedModules.computeValue,IN=kC.esModuleInterop.computeValue,JQ=kC.allowSyntheticDefaultImports.computeValue,$me=kC.resolvePackageJsonExports.computeValue,CN=kC.resolvePackageJsonImports.computeValue,lV=kC.resolveJsonModule.computeValue,LE=kC.declaration.computeValue,uV=kC.preserveConstEnums.computeValue,d6=kC.incremental.computeValue,Uce=kC.declarationMap.computeValue,bG=kC.allowJs.computeValue,Lee=kC.useDefineForClassFields.computeValue;function Kce(n){return n>=5&&n<=99}function jce(n){switch(R_(n)){case 0:case 4:case 3:return!1}return!0}function LDe(n){return n.allowUnreachableCode===!1}function VDe(n){return n.allowUnusedLabels===!1}function UQ(n){return n>=3&&n<=99||n===100}function D_(n,c){return n[c]===void 0?!!n.strict:!!n[c]}function Vee(n){return JC(u8e.type,(c,u)=>c===n?u:void 0)}function ehe(n){return n.useDefineForClassFields!==!1&&iA(n)>=9}function WDe(n,c){return F3(c,n,DRt)}function zce(n,c){return F3(c,n,xRt)}function PDe(n,c){return F3(c,n,kRt)}function qce(n,c){return c.strictFlag?D_(n,c.name):c.allowJsFlag?bG(n):n[c.name]}function Wee(n){let c=n.jsx;return c===2||c===4||c===5}function $ce(n,c){let u=c?.pragmas.get("jsximportsource"),d=Ra(u)?u[u.length-1]:u;return n.jsx===4||n.jsx===5||n.jsxImportSource||d?d?.arguments.factory||n.jsxImportSource||"react":void 0}function ele(n,c){return n?`${n}/${c.jsx===5?"jsx-dev-runtime":"jsx-runtime"}`:void 0}function the(n){let c=!1;for(let u=0;uI,getSymlinkedDirectories:()=>u,getSymlinkedDirectoriesByRealpath:()=>d,setSymlinkedFile:(N,V)=>(I||(I=new Map)).set(N,V),setSymlinkedDirectory:(N,V)=>{let P=gA(N,n,c);y6(P)||(P=AA(P),V!==!1&&!u?.has(P)&&(d||(d=ec())).add(V.realPath,N),(u||(u=new Map)).set(P,V))},setSymlinksFromResolutions(N,V,P){w.assert(!h),h=!0,N(M=>R(this,M.resolvedModule)),V(M=>R(this,M.resolvedTypeReferenceDirective)),P.forEach(M=>R(this,M.resolvedTypeReferenceDirective))},hasProcessedResolutions:()=>h,setSymlinksFromResolution(N){R(this,N)},hasAnySymlinks:b};function b(){return!!I?.size||!!u&&!!JC(u,N=>!!N)}function R(N,V){if(!V||!V.originalPath||!V.resolvedFileName)return;let{resolvedFileName:P,originalPath:M}=V;N.setSymlinkedFile(gA(M,n,c),P);let[te,re]=TNt(P,M,n,c)||v;te&&re&&N.setSymlinkedDirectory(re,{real:AA(te),realPath:AA(gA(te,n,c))})}}function TNt(n,c,u,d){let I=Ad(Oc(n,u)),h=Ad(Oc(c,u)),b=!1;for(;I.length>=2&&h.length>=2&&!ODe(I[I.length-2],d)&&!ODe(h[h.length-2],d)&&d(I[I.length-1])===d(h[h.length-1]);)I.pop(),h.pop(),b=!0;return b?[fy(I),fy(h)]:void 0}function ODe(n,c){return n!==void 0&&(c(n)==="node_modules"||uc(n,"@"))}function NNt(n){return Sp(n.charCodeAt(0))?n.slice(1):void 0}function nhe(n,c,u){let d=Sb(n,c,u);return d===void 0?void 0:NNt(d)}var MDe=/[^\w\s/]/g;function hKe(n){return n.replace(MDe,RNt)}function RNt(n){return"\\"+n}var DNt=[42,63],QDe=["node_modules","bower_components","jspm_packages"],YDe=`(?!(${QDe.join("|")})(/|$))`,ihe={singleAsteriskRegexFragment:"([^./]|(\\.(?!min\\.js$))?)*",doubleAsteriskRegexFragment:`(/${YDe}[^/.][^/]*)*?`,replaceWildcardCharacter:n=>ahe(n,ihe.singleAsteriskRegexFragment)},_Ke={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:`(/${YDe}[^/.][^/]*)*?`,replaceWildcardCharacter:n=>ahe(n,_Ke.singleAsteriskRegexFragment)},yKe={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:"(/.+?)?",replaceWildcardCharacter:n=>ahe(n,yKe.singleAsteriskRegexFragment)},she={files:ihe,directories:_Ke,exclude:yKe};function p6(n,c,u){let d=tle(n,c,u);return!d||!d.length?void 0:`^(${d.map(b=>`(${b})`).join("|")})${u==="exclude"?"($|/)":"$"}`}function tle(n,c,u){if(!(n===void 0||n.length===0))return Fr(n,d=>d&&rle(d,c,u,she[u]))}function ohe(n){return!/[.*?]/.test(n)}function HDe(n,c,u){let d=n&&rle(n,c,u,she[u]);return d&&`^(${d})${u==="exclude"?"($|/)":"$"}`}function rle(n,c,u,{singleAsteriskRegexFragment:d,doubleAsteriskRegexFragment:I,replaceWildcardCharacter:h}=she[u]){let b="",R=!1,N=gh(n,c),V=Na(N);if(u!=="exclude"&&V==="**")return;N[0]=S_(N[0]),ohe(V)&&N.push("**","*");let P=0;for(let M of N){if(M==="**")b+=I;else if(u==="directories"&&(b+="(",P++),R&&(b+=qu),u!=="exclude"){let te="";M.charCodeAt(0)===42?(te+="([^./]"+d+")?",M=M.substr(1)):M.charCodeAt(0)===63&&(te+="[^./]",M=M.substr(1)),te+=M.replace(MDe,h),te!==M&&(b+=YDe),b+=te}else b+=M.replace(MDe,h);R=!0}for(;P>0;)b+=")?",P--;return b}function ahe(n,c){return n==="*"?c:n==="?"?"[^/]":"\\"+n}function nle(n,c,u,d,I){n=Mc(n),I=Mc(I);let h=xo(I,n);return{includeFilePatterns:Ot(tle(u,h,"files"),b=>`^${b}$`),includeFilePattern:p6(u,h,"files"),includeDirectoryPattern:p6(u,h,"directories"),excludePattern:p6(c,h,"exclude"),basePaths:xNt(n,u,d)}}function EG(n,c){return new RegExp(n,c?"":"i")}function che(n,c,u,d,I,h,b,R,N){n=Mc(n),h=Mc(h);let V=nle(n,u,d,I,h),P=V.includeFilePatterns&&V.includeFilePatterns.map(Be=>EG(Be,I)),M=V.includeDirectoryPattern&&EG(V.includeDirectoryPattern,I),te=V.excludePattern&&EG(V.excludePattern,I),re=P?P.map(()=>[]):[[]],ue=new Map,Ae=tA(I);for(let Be of V.basePaths)de(Be,xo(h,Be),b);return or(re);function de(Be,Fe,Ne){let Qe=Ae(N(Fe));if(ue.has(Qe))return;ue.set(Qe,!0);let{files:De,directories:lt}=R(Be);for(let Le of Cg(De,Do)){let je=xo(Be,Le),st=xo(Fe,Le);if(!(c&&!pp(je,c))&&!(te&&te.test(st)))if(!P)re[0].push(je);else{let nt=ke(P,qe=>qe.test(st));nt!==-1&&re[nt].push(je)}}if(!(Ne!==void 0&&(Ne--,Ne===0)))for(let Le of Cg(lt,Do)){let je=xo(Be,Le),st=xo(Fe,Le);(!M||M.test(st))&&(!te||!te.test(st))&&de(je,st,Ne)}}}function xNt(n,c,u){let d=[n];if(c){let I=[];for(let h of c){let b=yd(h)?h:Mc(xo(n,h));I.push(kNt(b))}I.sort(zl(!u));for(let h of I)he(d,b=>!Bg(b,h,n,!u))&&d.push(h)}return d}function kNt(n){let c=Xe(n,DNt);return c<0?v1(n)?S_(aa(n)):n:n.substring(0,n.lastIndexOf(qu,c))}function ile(n,c){return c||sle(n)||3}function sle(n){switch(n.substr(n.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 f6=[[".ts",".tsx",".d.ts"],[".cts",".d.cts"],[".mts",".d.mts"]],Pee=or(f6),GNt=[...f6,[".json"]],FNt=[".d.ts",".d.cts",".d.mts",".cts",".mts",".ts",".tsx"],lhe=[[".js",".jsx"],[".mjs"],[".cjs"]],$X=or(lhe),uhe=[[".ts",".tsx",".d.ts",".js",".jsx"],[".cts",".d.cts",".cjs"],[".mts",".d.mts",".mjs"]],ZNt=[...uhe,[".json"]],ole=[".d.ts",".d.cts",".d.mts"],ale=[".ts",".cts",".mts",".tsx"],Oee=[".mts",".d.mts",".mjs",".cts",".d.cts",".cjs"];function I6(n,c){let u=n&&bG(n);if(!c||c.length===0)return u?uhe:f6;let d=u?uhe:f6,I=or(d);return[...d,...tr(c,b=>b.scriptKind===7||u&&LNt(b.scriptKind)&&!I.includes(b.extension)?[b.extension]:void 0)]}function Mee(n,c){return!n||!lV(n)?c:c===uhe?ZNt:c===f6?GNt:[...c,[".json"]]}function LNt(n){return n===1||n===2}function mN(n){return lr($X,c=>gd(n,c))}function KQ(n){return lr(Pee,c=>gd(n,c))}var XDe=(n=>(n[n.Minimal=0]="Minimal",n[n.Index=1]="Index",n[n.JsExtension=2]="JsExtension",n[n.TsExtension=3]="TsExtension",n))(XDe||{});function JDe({imports:n},c=pg(mN,KQ)){return le(n,({text:u})=>Op(u)&&!pp(u,Oee)?c(u):void 0)||!1}function UDe(n,c,u,d){let I=s0(u),h=3<=I&&I<=99;if(n==="js"||c===99&&h)return Ete(u)&&b()!==2?3:2;if(n==="minimal")return 0;if(n==="index")return 1;if(!Ete(u))return d&&JDe(d)?2:0;return b();function b(){let R=!1,N=d?.imports.length?d.imports:d&&n0(d)?VNt(d).map(V=>V.arguments[0]):v;for(let V of N)if(Op(V.text)){if(h&&c===1&&R6e(d,V,u)===99||pp(V.text,Oee))continue;if(KQ(V.text))return 3;mN(V.text)&&(R=!0)}return R?2:0}}function VNt(n){let c=0,u;for(let d of n.statements){if(c>3)break;W8(d)?u=vi(u,d.declarationList.declarations.map(I=>I.initializer)):Hf(d)&&Q0(d.expression,!0)?u=Hr(u,d.expression):c++}return u||v}function KDe(n,c,u){if(!n)return!1;let d=I6(c,u);for(let I of or(Mee(c,d)))if(gd(n,I))return!0;return!1}function bKe(n){let c=n.match(/\//g);return c?c.length:0}function Qee(n,c){return Xl(bKe(n),bKe(c))}var jDe=[".d.ts",".d.mts",".d.cts",".mjs",".mts",".cjs",".cts",".ts",".js",".tsx",".jsx",".json"];function o0(n){for(let c of jDe){let u=zDe(n,c);if(u!==void 0)return u}return n}function zDe(n,c){return gd(n,c)?e4(n,c):void 0}function e4(n,c){return n.substring(0,n.length-c.length)}function BG(n,c){return S1(n,c,jDe,!1)}function t4(n){let c=n.indexOf("*");return c===-1?n:n.indexOf("*",c+1)!==-1?void 0:{prefix:n.substr(0,c),suffix:n.substr(c+1)}}function Yee(n){return tr(kl(n),c=>t4(c))}function Gv(n){return!(n>=0)}function cle(n){return n===".ts"||n===".tsx"||n===".d.ts"||n===".cts"||n===".mts"||n===".d.mts"||n===".d.cts"||uc(n,".d.")&&pl(n,".ts")}function C6(n){return cle(n)||n===".json"}function m6(n){let c=hN(n);return c!==void 0?c:w.fail(`File ${n} has unknown extension.`)}function EKe(n){return hN(n)!==void 0}function hN(n){return be(jDe,c=>gd(n,c))}function h6(n,c){return n.checkJsDirective?n.checkJsDirective.enabled:c.checkJs}var ghe={files:v,directories:v};function Ahe(n,c){let u=[];for(let d of n){if(d===c)return c;Xa(d)||u.push(d)}return ly(u,d=>d,c)}function dhe(n,c){let u=n.indexOf(c);return w.assert(u!==-1),n.slice(u)}function eg(n,...c){return c.length&&(n.relatedInformation||(n.relatedInformation=[]),w.assert(n.relatedInformation!==v,"Diagnostic had empty array singleton for related info, but is still being constructed!"),n.relatedInformation.push(...c)),n}function qDe(n,c){w.assert(n.length!==0);let u=c(n[0]),d=u;for(let I=1;Id&&(d=h)}return{min:u,max:d}}function phe(n){return{pos:Sx(n),end:n.end}}function fhe(n,c){let u=c.pos-1,d=Math.min(n.text.length,Ju(n.text,c.end)+1);return{pos:u,end:d}}function jQ(n,c,u){return c.skipLibCheck&&n.isDeclarationFile||c.skipDefaultLibCheck&&n.hasNoDefaultLib||c.noCheck||u.isSourceOfProjectReferenceRedirect(n.fileName)||!Hee(n,c)}function Hee(n,c){if(n.checkJsDirective&&n.checkJsDirective.enabled===!1)return!1;if(n.scriptKind===3||n.scriptKind===4||n.scriptKind===5)return!0;let d=(n.scriptKind===1||n.scriptKind===2)&&h6(n,c);return bQ(n,c.checkJs)||d||n.scriptKind===7}function lle(n,c){return n===c||typeof n=="object"&&n!==null&&typeof c=="object"&&c!==null&&$g(n,c,lle)}function r4(n){let c;switch(n.charCodeAt(1)){case 98:case 66:c=1;break;case 111:case 79:c=3;break;case 120:case 88:c=4;break;default:let V=n.length-1,P=0;for(;n.charCodeAt(P)===48;)P++;return n.slice(P,V)||"0"}let u=2,d=n.length-1,I=(d-u)*c,h=new Uint16Array((I>>>4)+(I&15?1:0));for(let V=d-1,P=0;V>=u;V--,P+=c){let M=P>>>4,te=n.charCodeAt(V),ue=(te<=57?te-48:10+te-(te<=70?65:97))<<(P&15);h[M]|=ue;let Ae=ue>>>16;Ae&&(h[M+1]|=Ae)}let b="",R=h.length-1,N=!0;for(;N;){let V=0;N=!1;for(let P=R;P>=0;P--){let M=V<<16|h[P],te=M/10|0;h[P]=te,V=M-te*10,te&&!N&&(R=P,N=!0)}b=V+b}return b}function gV({negative:n,base10Value:c}){return(n&&c!=="0"?"-":"")+c}function $De(n){if(ule(n,!1))return Ihe(n)}function Ihe(n){let c=n.startsWith("-"),u=r4(`${c?n.slice(1):n}n`);return{negative:c,base10Value:u}}function ule(n,c){if(n==="")return!1;let u=Ft(99,!1),d=!0;u.setOnError(()=>d=!1),u.setText(n+"n");let I=u.scan(),h=I===41;h&&(I=u.scan());let b=u.getTokenFlags();return d&&I===10&&u.getTokenEnd()===n.length+1&&!(b&512)&&(!c||n===gV({negative:h,base10Value:r4(u.getTokenValue())}))}function DZ(n){return!!(n.flags&33554432)||uce(n)||PNt(n)||WNt(n)||!(NB(n)||BKe(n))}function BKe(n){return sr(n)&&G_(n.parent)&&n.parent.name===n}function WNt(n){for(;n.kind===80||n.kind===211;)n=n.parent;if(n.kind!==167)return!1;if(ba(n.parent,64))return!0;let c=n.parent.parent.kind;return c===264||c===187}function PNt(n){if(n.kind!==80)return!1;let c=Si(n.parent,u=>{switch(u.kind){case 298:return!0;case 211:case 233:return!1;default:return"quit"}});return c?.token===119||c?.parent.kind===264}function exe(n){return F(n)&&sr(n.typeName)}function txe(n,c=Og){if(n.length<2)return!0;let u=n[0];for(let d=1,I=n.length;dn.includes(c))}function ixe(n){if(!n.parent)return;switch(n.kind){case 168:let{parent:u}=n;return u.kind===195?void 0:u.typeParameters;case 169:return n.parent.parameters;case 204:return n.parent.templateSpans;case 239:return n.parent.templateSpans;case 170:{let{parent:d}=n;return pY(d)?d.modifiers:void 0}case 298:return n.parent.heritageClauses}let{parent:c}=n;if(X9(n))return A4(n.parent)?void 0:n.parent.tags;switch(c.kind){case 187:case 264:return Bx(n)?c.members:void 0;case 192:case 193:return c.types;case 189:case 209:case 355:case 275:case 279:return c.elements;case 210:case 292:return c.properties;case 213:case 214:return Ya(n)?c.typeArguments:c.expression===n?void 0:c.arguments;case 284:case 288:return BX(n)?c.children:void 0;case 286:case 285:return Ya(n)?c.typeArguments:void 0;case 241:case 296:case 297:case 268:return c.statements;case 269:return c.clauses;case 263:case 231:return rC(n)?c.members:void 0;case 266:return _V(n)?c.members:void 0;case 307:return c.statements}}function gle(n){if(!n.typeParameters){if(lr(n.parameters,c=>!fC(c)))return!0;if(n.kind!==219){let c=$i(n.parameters);if(!(c&&sV(c)))return!0}}return!1}function b6(n){return n==="Infinity"||n==="-Infinity"||n==="NaN"}function sxe(n){return n.kind===260&&n.parent.kind===299}function vG(n){return n.kind===218||n.kind===219}function AV(n){return n.replace(/\$/gm,()=>"\\$")}function yN(n){return(+n).toString()===n}function Ale(n,c,u,d,I){let h=I&&n==="new";return!h&&Ke(n,c)?_e.createIdentifier(n):!d&&!h&&yN(n)&&+n>=0?_e.createNumericLiteral(+n):_e.createStringLiteral(n,!!u)}function E6(n){return!!(n.flags&262144&&n.isThisType)}function dle(n){let c=0,u=0,d=0,I=0,h;(V=>{V[V.BeforeNodeModules=0]="BeforeNodeModules",V[V.NodeModules=1]="NodeModules",V[V.Scope=2]="Scope",V[V.PackageContent=3]="PackageContent"})(h||(h={}));let b=0,R=0,N=0;for(;R>=0;)switch(b=R,R=n.indexOf("/",b+1),N){case 0:n.indexOf(Qx,b)===b&&(c=b,u=R,N=1);break;case 1:case 2:N===1&&n.charAt(b+1)==="@"?N=2:(d=R,N=3);break;case 3:n.indexOf(Qx,b)===b?N=1:N=3;break}return I=b,N>1?{topLevelNodeModulesIndex:c,topLevelPackageNameIndex:u,packageRootIndex:d,fileNameIndex:I}:void 0}function SKe(n){var c;return n.kind===341?(c=n.typeExpression)==null?void 0:c.type:n.type}function zQ(n){switch(n.kind){case 168:case 263:case 264:case 265:case 266:case 346:case 338:case 340:return!0;case 273:return n.isTypeOnly;case 276:case 281:return n.parent.parent.isTypeOnly;default:return!1}}function Xee(n){return tP(n)||Rp(n)||mp(n)||bc(n)||HI(n)||zQ(n)||CC(n)&&!XR(n)&&!v2(n)}function Jee(n){if(!fZ(n))return!1;let{isBracketed:c,typeExpression:u}=n;return c||!!u&&u.type.kind===316}function hhe(n,c){if(n.length===0)return!1;let u=n.charCodeAt(0);return u===35?n.length>1&&zy(n.charCodeAt(1),c):zy(u,c)}function oxe(n){var c;return((c=vle(n))==null?void 0:c.kind)===0}function ple(n){return so(n)&&(n.type&&n.type.kind===316||WR(n).some(Jee))}function QS(n){switch(n.kind){case 172:case 171:return!!n.questionToken;case 169:return!!n.questionToken||ple(n);case 348:case 341:return Jee(n);default:return!1}}function fle(n){let c=n.kind;return(c===211||c===212)&&iT(n.expression)}function _he(n){return so(n)&&FC(n)&&hy(n)&&!!d$(n)}function yhe(n){return w.checkDefined(Ile(n))}function Ile(n){let c=d$(n);return c&&c.typeExpression&&c.typeExpression.type}function B6(n){return sr(n)?n.escapedText:D2(n)}function YS(n){return sr(n)?ao(n):v6(n)}function axe(n){let c=n.kind;return c===80||c===295}function D2(n){return`${n.namespace.escapedText}:${ao(n.name)}`}function v6(n){return`${ao(n.namespace)}:${ao(n.name)}`}function bhe(n){return sr(n)?ao(n):v6(n)}function x2(n){return!!(n.flags&8576)}function k2(n){return n.flags&8192?n.escapedName:n.flags&384?Rd(""+n.value):w.fail()}function qQ(n){return!!n&&(Io(n)||hA(n)||no(n))}function cxe(n){return n===void 0?!1:!!wte(n.attributes)}var MNt=String.prototype.replace;function $Q(n,c){return MNt.call(n,"*",c)}function Cle(n){return sr(n.name)?n.name.escapedText:Rd(n.name.text)}function UC(n,c=!1,u=!1,d=!1){return{value:n,isSyntacticallyString:c,resolvedOtherFiles:u,hasExternalReferences:d}}function Ehe({evaluateElementAccessExpression:n,evaluateEntityNameExpression:c}){function u(I,h){let b=!1,R=!1,N=!1;switch(I=jA(I),I.kind){case 224:let V=u(I.operand,h);if(R=V.resolvedOtherFiles,N=V.hasExternalReferences,typeof V.value=="number")switch(I.operator){case 40:return UC(V.value,b,R,N);case 41:return UC(-V.value,b,R,N);case 55:return UC(~V.value,b,R,N)}break;case 226:{let P=u(I.left,h),M=u(I.right,h);if(b=(P.isSyntacticallyString||M.isSyntacticallyString)&&I.operatorToken.kind===40,R=P.resolvedOtherFiles||M.resolvedOtherFiles,N=P.hasExternalReferences||M.hasExternalReferences,typeof P.value=="number"&&typeof M.value=="number")switch(I.operatorToken.kind){case 52:return UC(P.value|M.value,b,R,N);case 51:return UC(P.value&M.value,b,R,N);case 49:return UC(P.value>>M.value,b,R,N);case 50:return UC(P.value>>>M.value,b,R,N);case 48:return UC(P.value<=2)break;case 174:case 176:case 177:case 178:case 262:if(lt&3&&Tt==="arguments"){dt=u;break e}break;case 218:if(lt&3&&Tt==="arguments"){dt=u;break e}if(lt&16){let Zt=Qe.name;if(Zt&&Tt===Zt.escapedText){dt=Qe.symbol;break e}}break;case 170:Qe.parent&&Qe.parent.kind===169&&(Qe=Qe.parent),Qe.parent&&(rC(Qe.parent)||Qe.parent.kind===263)&&(Qe=Qe.parent);break;case 346:case 338:case 340:case 351:let kt=OX(Qe);kt&&(Qe=kt.parent);break;case 169:wt&&(wt===Qe.initializer||wt===Qe.name&&pu(wt))&&(ht||(ht=Qe));break;case 208:wt&&(wt===Qe.initializer||wt===Qe.name&&pu(wt))&&wZ(Qe)&&!ht&&(ht=Qe);break;case 195:if(lt&262144){let Zt=Qe.typeParameter.name;if(Zt&&Tt===Zt.escapedText){dt=Qe.typeParameter.symbol;break e}}break;case 281:wt&&wt===Qe.propertyName&&Qe.parent.parent.moduleSpecifier&&(Qe=Qe.parent.parent.parent);break}Fe(Qe,wt)&&(vt=Qe),wt=Qe,Qe=Zv(Qe)?Ice(Qe)||Qe.parent:(FB(Qe)||Uxe(Qe))&&vZ(Qe)||Qe.parent}if(je&&dt&&(!vt||dt!==vt.symbol)&&(dt.isReferenced|=lt),!dt){if(wt&&(w.assertNode(wt,Gc),wt.commonJsModuleIndicator&&Tt==="exports"&<&wt.symbol.flags))return wt.symbol;st||(dt=b(h,Tt,lt))}if(!dt&&It&&so(It)&&It.parent&&Q0(It.parent,!1))return c;if(Le){if(Ye&&V(It,Tt,Ye,dt))return;dt?M(It,dt,lt,wt,ht,Et):P(It,De,lt,Le)}return dt}function de(Qe,De,lt){let Le=iA(n),je=De;if(Jc(lt)&&je.body&&Qe.valueDeclaration&&Qe.valueDeclaration.pos>=je.body.pos&&Qe.valueDeclaration.end<=je.body.end&&Le>=2){let qe=N(je);return qe===void 0&&(qe=X(je.parameters,st)||!1,R(je,qe)),!qe}return!1;function st(qe){return nt(qe.name)||!!qe.initializer&&nt(qe.initializer)}function nt(qe){switch(qe.kind){case 219:case 218:case 262:case 176:return!1;case 174:case 177:case 178:case 303:return nt(qe.name);case 172:return IC(qe)?!re:nt(qe.name);default:return p$(qe)||km(qe)?Le<7:ml(qe)&&qe.dotDotDotToken&&Vg(qe.parent)?Le<4:Ya(qe)?!1:mu(qe,nt)||!1}}}function Be(Qe,De){return Qe.kind!==219&&Qe.kind!==218?oe(Qe)||(dd(Qe)||Qe.kind===172&&!$u(Qe))&&(!De||De!==Qe.name):De&&De===Qe.name?!1:Qe.asteriskToken||ba(Qe,1024)?!0:!z9(Qe)}function Fe(Qe,De){switch(Qe.kind){case 169:return!!De&&De===Qe.name;case 262:case 263:case 264:case 266:case 265:case 267:return!0;default:return!1}}function Ne(Qe,De){if(Qe.declarations){for(let lt of Qe.declarations)if(lt.kind===168&&(Zv(lt.parent)?eV(lt.parent):lt.parent)===De)return!(Zv(lt.parent)&&be(lt.parent.parent.tags,w2))}return!1}}function Kee(n,c=!0){switch(w.type(n),n.kind){case 112:case 97:case 9:case 11:case 15:return!0;case 10:return c;case 224:return n.operator===41?du(n.operand)||c&&K3(n.operand):n.operator===40?du(n.operand):!1;default:return!1}}function mle(n){for(;n.kind===217;)n=n.expression;return n}function hle(n){switch(w.type(n),n.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 lxe(){let n,c,u,d,I;return{createBaseSourceFileNode:h,createBaseIdentifierNode:b,createBasePrivateIdentifierNode:R,createBaseTokenNode:N,createBaseNode:V};function h(P){return new(I||(I=xC.getSourceFileConstructor()))(P,-1,-1)}function b(P){return new(u||(u=xC.getIdentifierConstructor()))(P,-1,-1)}function R(P){return new(d||(d=xC.getPrivateIdentifierConstructor()))(P,-1,-1)}function N(P){return new(c||(c=xC.getTokenConstructor()))(P,-1,-1)}function V(P){return new(n||(n=xC.getNodeConstructor()))(P,-1,-1)}}function uxe(n){let c,u;return{getParenthesizeLeftSideOfBinaryForOperator:d,getParenthesizeRightSideOfBinaryForOperator:I,parenthesizeLeftSideOfBinary:V,parenthesizeRightSideOfBinary:P,parenthesizeExpressionOfComputedPropertyName:M,parenthesizeConditionOfConditionalExpression:te,parenthesizeBranchOfConditionalExpression:re,parenthesizeExpressionOfExportDefault:ue,parenthesizeExpressionOfNew:Ae,parenthesizeLeftSideOfAccess:de,parenthesizeOperandOfPostfixUnary:Be,parenthesizeOperandOfPrefixUnary:Fe,parenthesizeExpressionsOfCommaDelimitedList:Ne,parenthesizeExpressionForDisallowedComma:Qe,parenthesizeExpressionOfExpressionStatement:De,parenthesizeConciseBodyOfArrowFunction:lt,parenthesizeCheckTypeOfConditionalType:Le,parenthesizeExtendsTypeOfConditionalType:je,parenthesizeConstituentTypesOfUnionType:nt,parenthesizeConstituentTypeOfUnionType:st,parenthesizeConstituentTypesOfIntersectionType:it,parenthesizeConstituentTypeOfIntersectionType:qe,parenthesizeOperandOfTypeOperator:It,parenthesizeOperandOfReadonlyTypeOperator:dt,parenthesizeNonArrayTypeOfPostfixType:wt,parenthesizeElementTypesOfTupleType:vt,parenthesizeElementTypeOfTupleType:Ye,parenthesizeTypeOfOptionalType:Et,parenthesizeTypeArguments:Lt,parenthesizeLeadingTypeArgument:Kt};function d(kt){c||(c=new Map);let Zt=c.get(kt);return Zt||(Zt=Dr=>V(kt,Dr),c.set(kt,Zt)),Zt}function I(kt){u||(u=new Map);let Zt=u.get(kt);return Zt||(Zt=Dr=>P(kt,void 0,Dr),u.set(kt,Zt)),Zt}function h(kt,Zt,Dr,jt){let mr=yee(226,kt),Pt=vme(226,kt),Vr=D1(Zt);if(!Dr&&Zt.kind===219&&mr>3)return!0;let Yr=mG(Vr);switch(Xl(Yr,mr)){case-1:return!(!Dr&&Pt===1&&Zt.kind===229);case 1:return!1;case 0:if(Dr)return Pt===1;if(no(Vr)&&Vr.operatorToken.kind===kt){if(b(kt))return!1;if(kt===40){let zr=jt?R(jt):0;if(pQ(zr)&&zr===R(Vr))return!1}}return Bme(Vr)===0}}function b(kt){return kt===42||kt===52||kt===51||kt===53||kt===28}function R(kt){if(kt=D1(kt),pQ(kt.kind))return kt.kind;if(kt.kind===226&&kt.operatorToken.kind===40){if(kt.cachedLiteralKind!==void 0)return kt.cachedLiteralKind;let Zt=R(kt.left),Dr=pQ(Zt)&&Zt===R(kt.right)?Zt:0;return kt.cachedLiteralKind=Dr,Dr}return 0}function N(kt,Zt,Dr,jt){return D1(Zt).kind===217?Zt:h(kt,Zt,Dr,jt)?n.createParenthesizedExpression(Zt):Zt}function V(kt,Zt){return N(kt,Zt,!0)}function P(kt,Zt,Dr){return N(kt,Dr,!1,Zt)}function M(kt){return Vle(kt)?n.createParenthesizedExpression(kt):kt}function te(kt){let Zt=yee(227,58),Dr=D1(kt),jt=mG(Dr);return Xl(jt,Zt)!==1?n.createParenthesizedExpression(kt):kt}function re(kt){let Zt=D1(kt);return Vle(Zt)?n.createParenthesizedExpression(kt):kt}function ue(kt){let Zt=D1(kt),Dr=Vle(Zt);if(!Dr)switch(YQ(Zt,!1).kind){case 231:case 218:Dr=!0}return Dr?n.createParenthesizedExpression(kt):kt}function Ae(kt){let Zt=YQ(kt,!0);switch(Zt.kind){case 213:return n.createParenthesizedExpression(kt);case 214:return Zt.arguments?kt:n.createParenthesizedExpression(kt)}return de(kt)}function de(kt,Zt){let Dr=D1(kt);return T_(Dr)&&(Dr.kind!==214||Dr.arguments)&&(Zt||!km(Dr))?kt:un(n.createParenthesizedExpression(kt),kt)}function Be(kt){return T_(kt)?kt:un(n.createParenthesizedExpression(kt),kt)}function Fe(kt){return _Z(kt)?kt:un(n.createParenthesizedExpression(kt),kt)}function Ne(kt){let Zt=Ar(kt,Qe);return un(n.createNodeArray(Zt,kt.hasTrailingComma),kt)}function Qe(kt){let Zt=D1(kt),Dr=mG(Zt),jt=yee(226,28);return Dr>jt?kt:un(n.createParenthesizedExpression(kt),kt)}function De(kt){let Zt=D1(kt);if(cu(Zt)){let jt=Zt.expression,mr=D1(jt).kind;if(mr===218||mr===219){let Pt=n.updateCallExpression(Zt,un(n.createParenthesizedExpression(jt),jt),Zt.typeArguments,Zt.arguments);return n.restoreOuterExpressions(kt,Pt,8)}}let Dr=YQ(Zt,!1).kind;return Dr===210||Dr===218?un(n.createParenthesizedExpression(kt),kt):kt}function lt(kt){return!mc(kt)&&(Vle(kt)||YQ(kt,!1).kind===210)?un(n.createParenthesizedExpression(kt),kt):kt}function Le(kt){switch(kt.kind){case 184:case 185:case 194:return n.createParenthesizedType(kt)}return kt}function je(kt){switch(kt.kind){case 194:return n.createParenthesizedType(kt)}return kt}function st(kt){switch(kt.kind){case 192:case 193:return n.createParenthesizedType(kt)}return Le(kt)}function nt(kt){return n.createNodeArray(Ar(kt,st))}function qe(kt){switch(kt.kind){case 192:case 193:return n.createParenthesizedType(kt)}return st(kt)}function it(kt){return n.createNodeArray(Ar(kt,qe))}function It(kt){switch(kt.kind){case 193:return n.createParenthesizedType(kt)}return qe(kt)}function dt(kt){switch(kt.kind){case 198:return n.createParenthesizedType(kt)}return It(kt)}function wt(kt){switch(kt.kind){case 195:case 198:case 186:return n.createParenthesizedType(kt)}return It(kt)}function vt(kt){return n.createNodeArray(Ar(kt,Ye))}function Ye(kt){return ht(kt)?n.createParenthesizedType(kt):kt}function ht(kt){return lte(kt)?kt.postfix:At(kt)||Y(kt)||H(kt)||as(kt)?ht(kt.type):Ei(kt)?ht(kt.falseType):Is(kt)||ji(kt)?ht(Na(kt.types)):bo(kt)?!!kt.typeParameter.constraint&&ht(kt.typeParameter.constraint):!1}function Et(kt){return ht(kt)?n.createParenthesizedType(kt):wt(kt)}function Kt(kt){return IX(kt)&&kt.typeParameters?n.createParenthesizedType(kt):kt}function Tt(kt,Zt){return Zt===0?Kt(kt):kt}function Lt(kt){if(lr(kt))return n.createNodeArray(Ar(kt,Tt))}}var jee={getParenthesizeLeftSideOfBinaryForOperator:n=>Bl,getParenthesizeRightSideOfBinaryForOperator:n=>Bl,parenthesizeLeftSideOfBinary:(n,c)=>c,parenthesizeRightSideOfBinary:(n,c,u)=>u,parenthesizeExpressionOfComputedPropertyName:Bl,parenthesizeConditionOfConditionalExpression:Bl,parenthesizeBranchOfConditionalExpression:Bl,parenthesizeExpressionOfExportDefault:Bl,parenthesizeExpressionOfNew:n=>ps(n,T_),parenthesizeLeftSideOfAccess:n=>ps(n,T_),parenthesizeOperandOfPostfixUnary:n=>ps(n,T_),parenthesizeOperandOfPrefixUnary:n=>ps(n,_Z),parenthesizeExpressionsOfCommaDelimitedList:n=>ps(n,gG),parenthesizeExpressionForDisallowedComma:Bl,parenthesizeExpressionOfExpressionStatement:Bl,parenthesizeConciseBodyOfArrowFunction:Bl,parenthesizeCheckTypeOfConditionalType:Bl,parenthesizeExtendsTypeOfConditionalType:Bl,parenthesizeConstituentTypesOfUnionType:n=>ps(n,gG),parenthesizeConstituentTypeOfUnionType:Bl,parenthesizeConstituentTypesOfIntersectionType:n=>ps(n,gG),parenthesizeConstituentTypeOfIntersectionType:Bl,parenthesizeOperandOfTypeOperator:Bl,parenthesizeOperandOfReadonlyTypeOperator:Bl,parenthesizeNonArrayTypeOfPostfixType:Bl,parenthesizeElementTypesOfTupleType:n=>ps(n,gG),parenthesizeElementTypeOfTupleType:Bl,parenthesizeTypeOfOptionalType:Bl,parenthesizeTypeArguments:n=>n&&ps(n,gG),parenthesizeLeadingTypeArgument:Bl};function zee(n){return{convertToFunctionBlock:c,convertToFunctionExpression:u,convertToClassExpression:d,convertToArrayAssignmentElement:I,convertToObjectAssignmentElement:h,convertToAssignmentPattern:b,convertToObjectAssignmentPattern:R,convertToArrayAssignmentPattern:N,convertToAssignmentElementTarget:V};function c(P,M){if(mc(P))return P;let te=n.createReturnStatement(P);un(te,P);let re=n.createBlock([te],M);return un(re,P),re}function u(P){var M;if(!P.body)return w.fail("Cannot convert a FunctionDeclaration without a body");let te=n.createFunctionExpression((M=lN(P))==null?void 0:M.filter(re=>!Fx(re)&&!ate(re)),P.asteriskToken,P.name,P.typeParameters,P.parameters,P.type,P.body);return Ho(te,P),un(te,P),SG(P)&&ble(te,!0),te}function d(P){var M;let te=n.createClassExpression((M=P.modifiers)==null?void 0:M.filter(re=>!Fx(re)&&!ate(re)),P.name,P.typeParameters,P.heritageClauses,P.members);return Ho(te,P),un(te,P),SG(P)&&ble(te,!0),te}function I(P){if(ml(P)){if(P.dotDotDotToken)return w.assertNode(P.name,sr),Ho(un(n.createSpreadElement(P.name),P),P);let M=V(P.name);return P.initializer?Ho(un(n.createAssignment(M,P.initializer),P),P):M}return ps(P,tn)}function h(P){if(ml(P)){if(P.dotDotDotToken)return w.assertNode(P.name,sr),Ho(un(n.createSpreadAssignment(P.name),P),P);if(P.propertyName){let M=V(P.name);return Ho(un(n.createPropertyAssignment(P.propertyName,P.initializer?n.createAssignment(M,P.initializer):M),P),P)}return w.assertNode(P.name,sr),Ho(un(n.createShorthandPropertyAssignment(P.name,P.initializer),P),P)}return ps(P,EB)}function b(P){switch(P.kind){case 207:case 209:return N(P);case 206:case 210:return R(P)}}function R(P){return Vg(P)?Ho(un(n.createObjectLiteralExpression(Ot(P.elements,h)),P),P):ps(P,tu)}function N(P){return Vu(P)?Ho(un(n.createArrayLiteralExpression(Ot(P.elements,I)),P),P):ps(P,If)}function V(P){return pu(P)?b(P):ps(P,tn)}}var gxe={convertToFunctionBlock:za,convertToFunctionExpression:za,convertToClassExpression:za,convertToArrayAssignmentElement:za,convertToObjectAssignmentElement:za,convertToAssignmentPattern:za,convertToObjectAssignmentPattern:za,convertToArrayAssignmentPattern:za,convertToAssignmentElementTarget:za},vhe=0,She=(n=>(n[n.None=0]="None",n[n.NoParenthesizerRules=1]="NoParenthesizerRules",n[n.NoNodeConverters=2]="NoNodeConverters",n[n.NoIndentationOnFreshPropertyAccess=4]="NoIndentationOnFreshPropertyAccess",n[n.NoOriginalNode=8]="NoOriginalNode",n))(She||{}),wKe=[];function _le(n){wKe.push(n)}function dV(n,c){let u=n&8?Bl:Ho,d=iu(()=>n&1?jee:uxe(Be)),I=iu(()=>n&2?gxe:zee(Be)),h=ii(j=>(me,We)=>Ls(me,j,We)),b=ii(j=>me=>qr(j,me)),R=ii(j=>me=>Jn(me,j)),N=ii(j=>()=>lu(j)),V=ii(j=>me=>F4(j,me)),P=ii(j=>(me,We)=>uo(j,me,We)),M=ii(j=>(me,We)=>XG(j,me,We)),te=ii(j=>(me,We)=>YE(j,me,We)),re=ii(j=>(me,We)=>QN(j,me,We)),ue=ii(j=>(me,We,mt)=>FV(j,me,We,mt)),Ae=ii(j=>(me,We,mt)=>ure(j,me,We,mt)),de=ii(j=>(me,We,mt,yr)=>FI(j,me,We,mt,yr)),Be={get parenthesizer(){return d()},get converters(){return I()},baseFactory:c,flags:n,createNodeArray:Fe,createNumericLiteral:lt,createBigIntLiteral:Le,createStringLiteral:st,createStringLiteralFromNode:nt,createRegularExpressionLiteral:qe,createLiteralLikeNode:it,createIdentifier:wt,createTempVariable:vt,createLoopVariable:Ye,createUniqueName:ht,getGeneratedNameForNode:Et,createPrivateIdentifier:Tt,createUniquePrivateName:kt,getGeneratedPrivateNameForNode:Zt,createToken:jt,createSuper:mr,createThis:Pt,createNull:Vr,createTrue:Yr,createFalse:pr,createModifier:zr,createModifiersFromModifierFlags:$n,createQualifiedName:bi,updateQualifiedName:Pi,createComputedPropertyName:Ns,updateComputedPropertyName:gi,createTypeParameterDeclaration:jn,updateTypeParameterDeclaration:xs,createParameterDeclaration:Ec,updateParameterDeclaration:xi,createDecorator:rc,updateDecorator:Vl,createPropertySignature:ul,updatePropertySignature:Cc,createPropertyDeclaration:Wu,updatePropertyDeclaration:ir,createMethodSignature:ni,updateMethodSignature:gs,createMethodDeclaration:Hs,updateMethodDeclaration:qa,createConstructorDeclaration:Bi,updateConstructorDeclaration:BA,createGetAccessorDeclaration:en,updateGetAccessorDeclaration:ct,createSetAccessorDeclaration:St,updateSetAccessorDeclaration:br,createCallSignature:_r,updateCallSignature:Pr,createConstructSignature:ti,updateConstructSignature:cr,createIndexSignature:kn,updateIndexSignature:Pn,createClassStaticBlockDeclaration:Nc,updateClassStaticBlockDeclaration:cg,createTemplateLiteralTypeSpan:an,updateTemplateLiteralTypeSpan:Kr,createKeywordTypeNode:wn,createTypePredicateNode:Pe,updateTypePredicateNode:ar,createTypeReferenceNode:sn,updateTypeReferenceNode:Me,createFunctionTypeNode:ur,updateFunctionTypeNode:Re,createConstructorTypeNode:bt,updateConstructorTypeNode:On,createTypeQueryNode:ds,updateTypeQueryNode:Es,createTypeLiteralNode:oo,updateTypeLiteralNode:Vi,createArrayTypeNode:ko,updateArrayTypeNode:Yc,createTupleTypeNode:fl,updateTupleTypeNode:oa,createNamedTupleMember:Da,updateNamedTupleMember:ki,createOptionalTypeNode:Gs,updateOptionalTypeNode:ri,createRestTypeNode:hu,updateRestTypeNode:JA,createUnionTypeNode:Tl,updateUnionTypeNode:lg,createIntersectionTypeNode:mf,updateIntersectionTypeNode:zc,createConditionalTypeNode:Zc,updateConditionalTypeNode:Km,createInferTypeNode:Df,updateInferTypeNode:f0,createImportTypeNode:Jg,updateImportTypeNode:hf,createParenthesizedType:Yd,updateParenthesizedType:zA,createThisTypeNode:di,createTypeOperatorNode:lI,updateTypeOperatorNode:J0,createIndexedAccessTypeNode:U0,updateIndexedAccessTypeNode:Yb,createMappedTypeNode:rf,updateMappedTypeNode:kI,createLiteralTypeNode:yt,updateLiteralTypeNode:tt,createTemplateLiteralType:xI,updateTemplateLiteralType:s_,createObjectBindingPattern:gr,updateObjectBindingPattern:mn,createArrayBindingPattern:Ri,updateArrayBindingPattern:Xo,createBindingElement:fi,updateBindingElement:Jo,createArrayLiteralExpression:hc,updateArrayLiteralExpression:ic,createObjectLiteralExpression:Wg,updateObjectLiteralExpression:nf,createPropertyAccessExpression:n&4?(j,me)=>co(Xf(j,me),262144):Xf,updatePropertyAccessExpression:Gm,createPropertyAccessChain:n&4?(j,me,We)=>co(sf(j,me,We),262144):sf,updatePropertyAccessChain:Fm,createElementAccessExpression:GI,updateElementAccessExpression:qC,createElementAccessChain:Q2,updateElementAccessChain:qt,createCallExpression:Bs,updateCallExpression:Nl,createCallChain:vA,updateCallChain:PA,createNewExpression:XI,updateNewExpression:bm,createTaggedTemplateExpression:rp,updateTaggedTemplateExpression:Hd,createTypeAssertion:hC,updateTypeAssertion:Xb,createParenthesizedExpression:dT,updateParenthesizedExpression:Y2,createFunctionExpression:ub,updateFunctionExpression:LB,createArrowFunction:H2,updateArrowFunction:oD,createDeleteExpression:aD,updateDeleteExpression:gb,createTypeOfExpression:$C,updateTypeOfExpression:cD,createVoidExpression:Jb,updateVoidExpression:ZN,createAwaitExpression:X2,updateAwaitExpression:rt,createPrefixUnaryExpression:qr,updatePrefixUnaryExpression:Qn,createPostfixUnaryExpression:Jn,updatePostfixUnaryExpression:cs,createBinaryExpression:Ls,updateBinaryExpression:Ua,createConditionalExpression:Ge,updateConditionalExpression:Ht,createTemplateExpression:En,updateTemplateExpression:Rs,createTemplateHead:sA,createTemplateMiddle:uI,createTemplateTail:VB,createNoSubstitutionTemplateLiteral:rw,createTemplateLiteralLikeNode:od,createYieldExpression:lD,updateYieldExpression:Xx,createSpreadElement:YZ,updateSpreadElement:Jx,createClassExpression:WB,updateClassExpression:J2,createOmittedExpression:np,createExpressionWithTypeArguments:F_,updateExpressionWithTypeArguments:K0,createAsExpression:nw,updateAsExpression:HZ,createNonNullExpression:WG,updateNonNullExpression:xV,createSatisfiesExpression:Wv,updateSatisfiesExpression:kV,createNonNullChain:Pv,updateNonNullChain:_P,createMetaProperty:pT,updateMetaProperty:U2,createTemplateSpan:PG,updateTemplateSpan:rr,createSemicolonClassElement:Tr,createBlock:xn,updateBlock:ci,createVariableStatement:Wi,updateVariableStatement:qs,createEmptyStatement:zi,createExpressionStatement:ho,updateExpressionStatement:Bc,createIfStatement:Co,updateIfStatement:ac,createDoStatement:Ps,updateDoStatement:ru,createWhileStatement:Yg,updateWhileStatement:jm,createForStatement:I0,updateForStatement:Ov,createForInStatement:XZ,updateForInStatement:Mv,createForOfStatement:u7,updateForOfStatement:nre,createContinueStatement:g7,updateContinueStatement:NY,createBreakStatement:yP,updateBreakStatement:bP,createReturnStatement:EP,updateReturnStatement:T4,createWithStatement:JZ,updateWithStatement:RY,createSwitchStatement:Ux,updateSwitchStatement:DY,createLabeledStatement:UA,updateLabeledStatement:N4,createThrowStatement:R4,updateThrowStatement:BP,createTryStatement:OG,updateTryStatement:LN,createDebuggerStatement:PB,createVariableDeclaration:Ab,updateVariableDeclaration:QE,createVariableDeclarationList:Ub,updateVariableDeclarationList:UZ,createFunctionDeclaration:A7,updateFunctionDeclaration:d7,createClassDeclaration:KZ,updateClassDeclaration:SP,createInterfaceDeclaration:p7,updateInterfaceDeclaration:Em,createTypeAliasDeclaration:jZ,updateTypeAliasDeclaration:f7,createEnumDeclaration:fT,updateEnumDeclaration:D4,createModuleDeclaration:fr,updateModuleDeclaration:iw,createModuleBlock:zm,updateModuleBlock:wP,createCaseBlock:uD,updateCaseBlock:OB,createNamespaceExportDeclaration:VN,updateNamespaceExportDeclaration:MG,createImportEqualsDeclaration:SA,updateImportEqualsDeclaration:sw,createImportDeclaration:xY,updateImportDeclaration:x4,createImportClause:k4,updateImportClause:TP,createAssertClause:QG,updateAssertClause:YG,createAssertEntry:NP,updateAssertEntry:K2,createImportTypeAssertionContainer:M1,updateImportTypeAssertionContainer:zZ,createImportAttributes:qZ,updateImportAttributes:ol,createImportAttribute:Uo,updateImportAttribute:Z_,createNamespaceImport:ire,updateNamespaceImport:ow,createNamespaceExport:I7,updateNamespaceExport:gD,createNamedImports:$Z,updateNamedImports:HG,createImportSpecifier:sre,updateImportSpecifier:RP,createExportAssignment:Q1,updateExportAssignment:kY,createExportDeclaration:Dp,updateExportDeclaration:Kx,createNamedExports:G4,updateNamedExports:GY,createExportSpecifier:C7,updateExportSpecifier:Xue,createMissingDeclaration:are,createExternalModuleReference:Vo,updateExternalModuleReference:C0,get createJSDocAllType(){return N(312)},get createJSDocUnknownType(){return N(313)},get createJSDocNonNullableType(){return M(315)},get updateJSDocNonNullableType(){return te(315)},get createJSDocNullableType(){return M(314)},get updateJSDocNullableType(){return te(314)},get createJSDocOptionalType(){return V(316)},get updateJSDocOptionalType(){return P(316)},get createJSDocVariadicType(){return V(318)},get updateJSDocVariadicType(){return P(318)},get createJSDocNamepathType(){return V(319)},get updateJSDocNamepathType(){return P(319)},createJSDocFunctionType:m7,updateJSDocFunctionType:h7,createJSDocTypeLiteral:j0,updateJSDocTypeLiteral:aw,createJSDocTypeExpression:Qv,updateJSDocTypeExpression:eL,createJSDocSignature:FY,updateJSDocSignature:WN,createJSDocTemplateTag:jx,updateJSDocTemplateTag:DP,createJSDocTypedefTag:_7,updateJSDocTypedefTag:Z4,createJSDocParameterTag:ZY,updateJSDocParameterTag:cre,createJSDocPropertyTag:L4,updateJSDocPropertyTag:xP,createJSDocCallbackTag:cw,updateJSDocCallbackTag:lre,createJSDocOverloadTag:kP,updateJSDocOverloadTag:GV,createJSDocAugmentsTag:JG,updateJSDocAugmentsTag:tL,createJSDocImplementsTag:Yv,updateJSDocImplementsTag:b7,createJSDocSeeTag:rL,updateJSDocSeeTag:GP,createJSDocImportTag:z0,updateJSDocImportTag:V4,createJSDocNameReference:fh,updateJSDocNameReference:UG,createJSDocMemberName:ON,updateJSDocMemberName:JI,createJSDocLink:qm,updateJSDocLink:KG,createJSDocLinkCode:Kb,updateJSDocLinkCode:QB,createJSDocLinkPlain:y7,updateJSDocLinkPlain:MN,get createJSDocTypeTag(){return Ae(344)},get updateJSDocTypeTag(){return de(344)},get createJSDocReturnTag(){return Ae(342)},get updateJSDocReturnTag(){return de(342)},get createJSDocThisTag(){return Ae(343)},get updateJSDocThisTag(){return de(343)},get createJSDocAuthorTag(){return re(330)},get updateJSDocAuthorTag(){return ue(330)},get createJSDocClassTag(){return re(332)},get updateJSDocClassTag(){return ue(332)},get createJSDocPublicTag(){return re(333)},get updateJSDocPublicTag(){return ue(333)},get createJSDocPrivateTag(){return re(334)},get updateJSDocPrivateTag(){return ue(334)},get createJSDocProtectedTag(){return re(335)},get updateJSDocProtectedTag(){return ue(335)},get createJSDocReadonlyTag(){return re(336)},get updateJSDocReadonlyTag(){return ue(336)},get createJSDocOverrideTag(){return re(337)},get updateJSDocOverrideTag(){return ue(337)},get createJSDocDeprecatedTag(){return re(331)},get updateJSDocDeprecatedTag(){return ue(331)},get createJSDocThrowsTag(){return Ae(349)},get updateJSDocThrowsTag(){return de(349)},get createJSDocSatisfiesTag(){return Ae(350)},get updateJSDocSatisfiesTag(){return de(350)},createJSDocEnumTag:FP,updateJSDocEnumTag:Jue,createJSDocUnknownTag:gre,updateJSDocUnknownTag:Are,createJSDocText:LY,updateJSDocText:ZP,createJSDocComment:db,updateJSDocComment:Uue,createJsxElement:LP,updateJsxElement:dre,createJsxSelfClosingElement:VP,updateJsxSelfClosingElement:VY,createJsxOpeningElement:E7,updateJsxOpeningElement:W4,createJsxClosingElement:j2,updateJsxClosingElement:pre,createJsxFragment:ZV,createJsxText:IT,updateJsxText:P4,createJsxOpeningFragment:O4,createJsxJsxClosingFragment:GA,updateJsxFragment:Y1,createJsxAttribute:Mo,updateJsxAttribute:z2,createJsxAttributes:o_,updateJsxAttributes:fre,createJsxSpreadAttribute:Ire,updateJsxSpreadAttribute:WP,createJsxExpression:LV,updateJsxExpression:Cre,createJsxNamespacedName:VV,updateJsxNamespacedName:lw,createCaseClause:H1,updateCaseClause:AD,createDefaultClause:YN,updateDefaultClause:jG,createHeritageClause:M4,updateHeritageClause:LC,createCatchClause:uw,updateCatchClause:X1,createPropertyAssignment:nL,updatePropertyAssignment:q2,createShorthandPropertyAssignment:WV,updateShorthandPropertyAssignment:ce,createSpreadAssignment:pn,updateSpreadAssignment:qn,createEnumMember:Ka,updateEnumMember:Gl,createSourceFile:bl,updateSourceFile:WY,createRedirectedSourceFile:jl,createBundle:XE,updateBundle:CT,createSyntheticExpression:zG,createSyntaxList:PY,createNotEmittedStatement:mre,createPartiallyEmittedExpression:qG,updatePartiallyEmittedExpression:PP,createCommaListExpression:PV,updateCommaListExpression:qc,createSyntheticReferenceExpression:OV,updateSyntheticReferenceExpression:Xs,cloneNode:yre,get createComma(){return h(28)},get createAssignment(){return h(64)},get createLogicalOr(){return h(57)},get createLogicalAnd(){return h(56)},get createBitwiseOr(){return h(52)},get createBitwiseXor(){return h(53)},get createBitwiseAnd(){return h(51)},get createStrictEquality(){return h(37)},get createStrictInequality(){return h(38)},get createEquality(){return h(35)},get createInequality(){return h(36)},get createLessThan(){return h(30)},get createLessThanEquals(){return h(33)},get createGreaterThan(){return h(32)},get createGreaterThanEquals(){return h(34)},get createLeftShift(){return h(48)},get createRightShift(){return h(49)},get createUnsignedRightShift(){return h(50)},get createAdd(){return h(40)},get createSubtract(){return h(41)},get createMultiply(){return h(42)},get createDivide(){return h(44)},get createModulo(){return h(45)},get createExponent(){return h(43)},get createPrefixPlus(){return b(40)},get createPrefixMinus(){return b(41)},get createPrefixIncrement(){return b(46)},get createPrefixDecrement(){return b(47)},get createBitwiseNot(){return b(55)},get createLogicalNot(){return b(54)},get createPostfixIncrement(){return R(46)},get createPostfixDecrement(){return R(47)},createImmediatelyInvokedFunctionExpression:AZe,createImmediatelyInvokedArrowFunction:dZe,createVoidZero:dD,createExportDefault:L0e,createExternalModuleExport:jue,createTypeCheck:zue,createIsNotTypeCheck:V0e,createMethodCall:OP,createGlobalMethodCall:MY,createFunctionBindCall:W0e,createFunctionCallCall:OY,createFunctionApplyCall:$G,createArraySliceCall:Hv,createArrayConcatCall:bre,createObjectDefinePropertyCall:P0e,createObjectGetOwnPropertyDescriptorCall:pD,createReflectGetCall:Y4,createReflectSetCall:O0e,createPropertyDescriptor:que,createCallBinding:Yt,createAssignmentTargetWrapper:Sr,inlineExpressions:_n,getInternalName:es,getLocalName:Ca,getExportName:Hc,getDeclarationName:yc,getNamespaceMemberName:$a,getExternalModuleOrNamespaceExportName:Il,restoreOuterExpressions:v7,restoreEnclosingLabel:S7,createUseStrictPrologue:oA,copyPrologue:lp,copyStandardPrologue:$2,copyCustomPrologue:mT,ensureUseStrict:eF,liftToBlock:MV,mergeLexicalEnvironment:MP,replaceModifiers:$ue,replaceDecoratorsAndModifiers:Ere,replacePropertyName:M0e};return X(wKe,j=>j(Be)),Be;function Fe(j,me){if(j===void 0||j===v)j=[];else if(gG(j)){if(me===void 0||j.hasTrailingComma===me)return j.transformFlags===void 0&&RKe(j),w.attachNodeArrayDebugInfo(j),j;let yr=j.slice();return yr.pos=j.pos,yr.end=j.end,yr.hasTrailingComma=me,yr.transformFlags=j.transformFlags,w.attachNodeArrayDebugInfo(yr),yr}let We=j.length,mt=We>=1&&We<=4?j.slice():j;return mt.pos=-1,mt.end=-1,mt.hasTrailingComma=!!me,mt.transformFlags=0,RKe(mt),w.attachNodeArrayDebugInfo(mt),mt}function Ne(j){return c.createBaseNode(j)}function Qe(j){let me=Ne(j);return me.symbol=void 0,me.localSymbol=void 0,me}function De(j,me){return j!==me&&(j.typeArguments=me.typeArguments),go(j,me)}function lt(j,me=0){let We=typeof j=="number"?j+"":j;w.assert(We.charCodeAt(0)!==45,"Negative numbers should be created in combination with createPrefixUnaryExpression");let mt=Qe(9);return mt.text=We,mt.numericLiteralFlags=me,me&384&&(mt.transformFlags|=1024),mt}function Le(j){let me=Dr(10);return me.text=typeof j=="string"?j:gV(j)+"n",me.transformFlags|=32,me}function je(j,me){let We=Qe(11);return We.text=j,We.singleQuote=me,We}function st(j,me,We){let mt=je(j,me);return mt.hasExtendedUnicodeEscape=We,We&&(mt.transformFlags|=1024),mt}function nt(j){let me=je(T2(j),void 0);return me.textSourceNode=j,me}function qe(j){let me=Dr(14);return me.text=j,me}function it(j,me){switch(j){case 9:return lt(me,0);case 10:return Le(me);case 11:return st(me,void 0);case 12:return IT(me,!1);case 13:return IT(me,!0);case 14:return qe(me);case 15:return od(j,me,void 0,0)}}function It(j){let me=c.createBaseIdentifierNode(80);return me.escapedText=j,me.jsDoc=void 0,me.flowNode=void 0,me.symbol=void 0,me}function dt(j,me,We,mt){let yr=It(Rd(j));return pV(yr,{flags:me,id:vhe,prefix:We,suffix:mt}),vhe++,yr}function wt(j,me,We){me===void 0&&j&&(me=Hn(j)),me===80&&(me=void 0);let mt=It(Rd(j));return We&&(mt.flags|=256),mt.escapedText==="await"&&(mt.transformFlags|=67108864),mt.flags&256&&(mt.transformFlags|=1024),mt}function vt(j,me,We,mt){let yr=1;me&&(yr|=8);let zn=dt("",yr,We,mt);return j&&j(zn),zn}function Ye(j){let me=2;return j&&(me|=8),dt("",me,void 0,void 0)}function ht(j,me=0,We,mt){return w.assert(!(me&7),"Argument out of range: flags"),w.assert((me&48)!==32,"GeneratedIdentifierFlags.FileLevel cannot be set without also setting GeneratedIdentifierFlags.Optimistic"),dt(j,3|me,We,mt)}function Et(j,me=0,We,mt){w.assert(!(me&7),"Argument out of range: flags");let yr=j?$y(j)?iP(!1,We,j,mt,ao):`generated@${sd(j)}`:"";(We||mt)&&(me|=16);let zn=dt(yr,4|me,We,mt);return zn.original=j,zn}function Kt(j){let me=c.createBasePrivateIdentifierNode(81);return me.escapedText=j,me.transformFlags|=16777216,me}function Tt(j){return uc(j,"#")||w.fail("First character of private identifier must be #: "+j),Kt(Rd(j))}function Lt(j,me,We,mt){let yr=Kt(Rd(j));return pV(yr,{flags:me,id:vhe,prefix:We,suffix:mt}),vhe++,yr}function kt(j,me,We){j&&!uc(j,"#")&&w.fail("First character of private identifier must be #: "+j);let mt=8|(j?3:1);return Lt(j??"",mt,me,We)}function Zt(j,me,We){let mt=$y(j)?iP(!0,me,j,We,ao):`#generated@${sd(j)}`,zn=Lt(mt,4|(me||We?16:0),me,We);return zn.original=j,zn}function Dr(j){return c.createBaseTokenNode(j)}function jt(j){w.assert(j>=0&&j<=165,"Invalid token"),w.assert(j<=15||j>=18,"Invalid token. Use 'createTemplateLiteralLikeNode' to create template literals."),w.assert(j<=9||j>=15,"Invalid token. Use 'createLiteralLikeNode' to create literals."),w.assert(j!==80,"Invalid token. Use 'createIdentifier' to create identifiers");let me=Dr(j),We=0;switch(j){case 134:We=384;break;case 160:We=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:We=1;break;case 108:We=134218752,me.flowNode=void 0;break;case 126:We=1024;break;case 129:We=16777216;break;case 110:We=16384,me.flowNode=void 0;break}return We&&(me.transformFlags|=We),me}function mr(){return jt(108)}function Pt(){return jt(110)}function Vr(){return jt(106)}function Yr(){return jt(112)}function pr(){return jt(97)}function zr(j){return jt(j)}function $n(j){let me=[];return j&32&&me.push(zr(95)),j&128&&me.push(zr(138)),j&2048&&me.push(zr(90)),j&4096&&me.push(zr(87)),j&1&&me.push(zr(125)),j&2&&me.push(zr(123)),j&4&&me.push(zr(124)),j&64&&me.push(zr(128)),j&256&&me.push(zr(126)),j&16&&me.push(zr(164)),j&8&&me.push(zr(148)),j&512&&me.push(zr(129)),j&1024&&me.push(zr(134)),j&8192&&me.push(zr(103)),j&16384&&me.push(zr(147)),me.length?me:void 0}function bi(j,me){let We=Ne(166);return We.left=j,We.right=Bm(me),We.transformFlags|=To(We.left)|qee(We.right),We.flowNode=void 0,We}function Pi(j,me,We){return j.left!==me||j.right!==We?go(bi(me,We),j):j}function Ns(j){let me=Ne(167);return me.expression=d().parenthesizeExpressionOfComputedPropertyName(j),me.transformFlags|=To(me.expression)|1024|131072,me}function gi(j,me){return j.expression!==me?go(Ns(me),j):j}function jn(j,me,We,mt){let yr=Qe(168);return yr.modifiers=MA(j),yr.name=Bm(me),yr.constraint=We,yr.default=mt,yr.transformFlags=1,yr.expression=void 0,yr.jsDoc=void 0,yr}function xs(j,me,We,mt,yr){return j.modifiers!==me||j.name!==We||j.constraint!==mt||j.default!==yr?go(jn(me,We,mt,yr),j):j}function Ec(j,me,We,mt,yr,zn){let io=Qe(169);return io.modifiers=MA(j),io.dotDotDotToken=me,io.name=Bm(We),io.questionToken=mt,io.type=yr,io.initializer=hT(zn),_G(io.name)?io.transformFlags=1:io.transformFlags=CA(io.modifiers)|To(io.dotDotDotToken)|kx(io.name)|To(io.questionToken)|To(io.initializer)|(io.questionToken??io.type?1:0)|(io.dotDotDotToken??io.initializer?1024:0)|(xv(io.modifiers)&31?8192:0),io.jsDoc=void 0,io}function xi(j,me,We,mt,yr,zn,io){return j.modifiers!==me||j.dotDotDotToken!==We||j.name!==mt||j.questionToken!==yr||j.type!==zn||j.initializer!==io?go(Ec(me,We,mt,yr,zn,io),j):j}function rc(j){let me=Ne(170);return me.expression=d().parenthesizeLeftSideOfAccess(j,!1),me.transformFlags|=To(me.expression)|1|8192|33554432,me}function Vl(j,me){return j.expression!==me?go(rc(me),j):j}function ul(j,me,We,mt){let yr=Qe(171);return yr.modifiers=MA(j),yr.name=Bm(me),yr.type=mt,yr.questionToken=We,yr.transformFlags=1,yr.initializer=void 0,yr.jsDoc=void 0,yr}function Cc(j,me,We,mt,yr){return j.modifiers!==me||j.name!==We||j.questionToken!==mt||j.type!==yr?_s(ul(me,We,mt,yr),j):j}function _s(j,me){return j!==me&&(j.initializer=me.initializer),go(j,me)}function Wu(j,me,We,mt,yr){let zn=Qe(172);zn.modifiers=MA(j),zn.name=Bm(me),zn.questionToken=We&&wG(We)?We:void 0,zn.exclamationToken=We&&ote(We)?We:void 0,zn.type=mt,zn.initializer=hT(yr);let io=zn.flags&33554432||xv(zn.modifiers)&128;return zn.transformFlags=CA(zn.modifiers)|kx(zn.name)|To(zn.initializer)|(io||zn.questionToken||zn.exclamationToken||zn.type?1:0)|(xg(zn.name)||xv(zn.modifiers)&256&&zn.initializer?8192:0)|16777216,zn.jsDoc=void 0,zn}function ir(j,me,We,mt,yr,zn){return j.modifiers!==me||j.name!==We||j.questionToken!==(mt!==void 0&&wG(mt)?mt:void 0)||j.exclamationToken!==(mt!==void 0&&ote(mt)?mt:void 0)||j.type!==yr||j.initializer!==zn?go(Wu(me,We,mt,yr,zn),j):j}function ni(j,me,We,mt,yr,zn){let io=Qe(173);return io.modifiers=MA(j),io.name=Bm(me),io.questionToken=We,io.typeParameters=MA(mt),io.parameters=MA(yr),io.type=zn,io.transformFlags=1,io.jsDoc=void 0,io.locals=void 0,io.nextContainer=void 0,io.typeArguments=void 0,io}function gs(j,me,We,mt,yr,zn,io){return j.modifiers!==me||j.name!==We||j.questionToken!==mt||j.typeParameters!==yr||j.parameters!==zn||j.type!==io?De(ni(me,We,mt,yr,zn,io),j):j}function Hs(j,me,We,mt,yr,zn,io,Yl){let hp=Qe(174);if(hp.modifiers=MA(j),hp.asteriskToken=me,hp.name=Bm(We),hp.questionToken=mt,hp.exclamationToken=void 0,hp.typeParameters=MA(yr),hp.parameters=Fe(zn),hp.type=io,hp.body=Yl,!hp.body)hp.transformFlags=1;else{let gw=xv(hp.modifiers)&1024,Aw=!!hp.asteriskToken,fD=gw&&Aw;hp.transformFlags=CA(hp.modifiers)|To(hp.asteriskToken)|kx(hp.name)|To(hp.questionToken)|CA(hp.typeParameters)|CA(hp.parameters)|To(hp.type)|To(hp.body)&-67108865|(fD?128:gw?256:Aw?2048:0)|(hp.questionToken||hp.typeParameters||hp.type?1:0)|1024}return hp.typeArguments=void 0,hp.jsDoc=void 0,hp.locals=void 0,hp.nextContainer=void 0,hp.flowNode=void 0,hp.endFlowNode=void 0,hp.returnFlowNode=void 0,hp}function qa(j,me,We,mt,yr,zn,io,Yl,hp){return j.modifiers!==me||j.asteriskToken!==We||j.name!==mt||j.questionToken!==yr||j.typeParameters!==zn||j.parameters!==io||j.type!==Yl||j.body!==hp?nc(Hs(me,We,mt,yr,zn,io,Yl,hp),j):j}function nc(j,me){return j!==me&&(j.exclamationToken=me.exclamationToken),go(j,me)}function Nc(j){let me=Qe(175);return me.body=j,me.transformFlags=To(j)|16777216,me.modifiers=void 0,me.jsDoc=void 0,me.locals=void 0,me.nextContainer=void 0,me.endFlowNode=void 0,me.returnFlowNode=void 0,me}function cg(j,me){return j.body!==me?Ku(Nc(me),j):j}function Ku(j,me){return j!==me&&(j.modifiers=me.modifiers),go(j,me)}function Bi(j,me,We){let mt=Qe(176);return mt.modifiers=MA(j),mt.parameters=Fe(me),mt.body=We,mt.transformFlags=CA(mt.modifiers)|CA(mt.parameters)|To(mt.body)&-67108865|1024,mt.typeParameters=void 0,mt.type=void 0,mt.typeArguments=void 0,mt.jsDoc=void 0,mt.locals=void 0,mt.nextContainer=void 0,mt.endFlowNode=void 0,mt.returnFlowNode=void 0,mt}function BA(j,me,We,mt){return j.modifiers!==me||j.parameters!==We||j.body!==mt?kr(Bi(me,We,mt),j):j}function kr(j,me){return j!==me&&(j.typeParameters=me.typeParameters,j.type=me.type),De(j,me)}function en(j,me,We,mt,yr){let zn=Qe(177);return zn.modifiers=MA(j),zn.name=Bm(me),zn.parameters=Fe(We),zn.type=mt,zn.body=yr,zn.body?zn.transformFlags=CA(zn.modifiers)|kx(zn.name)|CA(zn.parameters)|To(zn.type)|To(zn.body)&-67108865|(zn.type?1:0):zn.transformFlags=1,zn.typeArguments=void 0,zn.typeParameters=void 0,zn.jsDoc=void 0,zn.locals=void 0,zn.nextContainer=void 0,zn.flowNode=void 0,zn.endFlowNode=void 0,zn.returnFlowNode=void 0,zn}function ct(j,me,We,mt,yr,zn){return j.modifiers!==me||j.name!==We||j.parameters!==mt||j.type!==yr||j.body!==zn?rn(en(me,We,mt,yr,zn),j):j}function rn(j,me){return j!==me&&(j.typeParameters=me.typeParameters),De(j,me)}function St(j,me,We,mt){let yr=Qe(178);return yr.modifiers=MA(j),yr.name=Bm(me),yr.parameters=Fe(We),yr.body=mt,yr.body?yr.transformFlags=CA(yr.modifiers)|kx(yr.name)|CA(yr.parameters)|To(yr.body)&-67108865|(yr.type?1:0):yr.transformFlags=1,yr.typeArguments=void 0,yr.typeParameters=void 0,yr.type=void 0,yr.jsDoc=void 0,yr.locals=void 0,yr.nextContainer=void 0,yr.flowNode=void 0,yr.endFlowNode=void 0,yr.returnFlowNode=void 0,yr}function br(j,me,We,mt,yr){return j.modifiers!==me||j.name!==We||j.parameters!==mt||j.body!==yr?Qt(St(me,We,mt,yr),j):j}function Qt(j,me){return j!==me&&(j.typeParameters=me.typeParameters,j.type=me.type),De(j,me)}function _r(j,me,We){let mt=Qe(179);return mt.typeParameters=MA(j),mt.parameters=MA(me),mt.type=We,mt.transformFlags=1,mt.jsDoc=void 0,mt.locals=void 0,mt.nextContainer=void 0,mt.typeArguments=void 0,mt}function Pr(j,me,We,mt){return j.typeParameters!==me||j.parameters!==We||j.type!==mt?De(_r(me,We,mt),j):j}function ti(j,me,We){let mt=Qe(180);return mt.typeParameters=MA(j),mt.parameters=MA(me),mt.type=We,mt.transformFlags=1,mt.jsDoc=void 0,mt.locals=void 0,mt.nextContainer=void 0,mt.typeArguments=void 0,mt}function cr(j,me,We,mt){return j.typeParameters!==me||j.parameters!==We||j.type!==mt?De(ti(me,We,mt),j):j}function kn(j,me,We){let mt=Qe(181);return mt.modifiers=MA(j),mt.parameters=MA(me),mt.type=We,mt.transformFlags=1,mt.jsDoc=void 0,mt.locals=void 0,mt.nextContainer=void 0,mt.typeArguments=void 0,mt}function Pn(j,me,We,mt){return j.parameters!==We||j.type!==mt||j.modifiers!==me?De(kn(me,We,mt),j):j}function an(j,me){let We=Ne(204);return We.type=j,We.literal=me,We.transformFlags=1,We}function Kr(j,me,We){return j.type!==me||j.literal!==We?go(an(me,We),j):j}function wn(j){return jt(j)}function Pe(j,me,We){let mt=Ne(182);return mt.assertsModifier=j,mt.parameterName=Bm(me),mt.type=We,mt.transformFlags=1,mt}function ar(j,me,We,mt){return j.assertsModifier!==me||j.parameterName!==We||j.type!==mt?go(Pe(me,We,mt),j):j}function sn(j,me){let We=Ne(183);return We.typeName=Bm(j),We.typeArguments=me&&d().parenthesizeTypeArguments(Fe(me)),We.transformFlags=1,We}function Me(j,me,We){return j.typeName!==me||j.typeArguments!==We?go(sn(me,We),j):j}function ur(j,me,We){let mt=Qe(184);return mt.typeParameters=MA(j),mt.parameters=MA(me),mt.type=We,mt.transformFlags=1,mt.modifiers=void 0,mt.jsDoc=void 0,mt.locals=void 0,mt.nextContainer=void 0,mt.typeArguments=void 0,mt}function Re(j,me,We,mt){return j.typeParameters!==me||j.parameters!==We||j.type!==mt?Jt(ur(me,We,mt),j):j}function Jt(j,me){return j!==me&&(j.modifiers=me.modifiers),De(j,me)}function bt(...j){return j.length===4?Vt(...j):j.length===3?dn(...j):w.fail("Incorrect number of arguments specified.")}function Vt(j,me,We,mt){let yr=Qe(185);return yr.modifiers=MA(j),yr.typeParameters=MA(me),yr.parameters=MA(We),yr.type=mt,yr.transformFlags=1,yr.jsDoc=void 0,yr.locals=void 0,yr.nextContainer=void 0,yr.typeArguments=void 0,yr}function dn(j,me,We){return Vt(void 0,j,me,We)}function On(...j){return j.length===5?Mn(...j):j.length===4?Ii(...j):w.fail("Incorrect number of arguments specified.")}function Mn(j,me,We,mt,yr){return j.modifiers!==me||j.typeParameters!==We||j.parameters!==mt||j.type!==yr?De(bt(me,We,mt,yr),j):j}function Ii(j,me,We,mt){return Mn(j,j.modifiers,me,We,mt)}function ds(j,me){let We=Ne(186);return We.exprName=j,We.typeArguments=me&&d().parenthesizeTypeArguments(me),We.transformFlags=1,We}function Es(j,me,We){return j.exprName!==me||j.typeArguments!==We?go(ds(me,We),j):j}function oo(j){let me=Qe(187);return me.members=Fe(j),me.transformFlags=1,me}function Vi(j,me){return j.members!==me?go(oo(me),j):j}function ko(j){let me=Ne(188);return me.elementType=d().parenthesizeNonArrayTypeOfPostfixType(j),me.transformFlags=1,me}function Yc(j,me){return j.elementType!==me?go(ko(me),j):j}function fl(j){let me=Ne(189);return me.elements=Fe(d().parenthesizeElementTypesOfTupleType(j)),me.transformFlags=1,me}function oa(j,me){return j.elements!==me?go(fl(me),j):j}function Da(j,me,We,mt){let yr=Qe(202);return yr.dotDotDotToken=j,yr.name=me,yr.questionToken=We,yr.type=mt,yr.transformFlags=1,yr.jsDoc=void 0,yr}function ki(j,me,We,mt,yr){return j.dotDotDotToken!==me||j.name!==We||j.questionToken!==mt||j.type!==yr?go(Da(me,We,mt,yr),j):j}function Gs(j){let me=Ne(190);return me.type=d().parenthesizeTypeOfOptionalType(j),me.transformFlags=1,me}function ri(j,me){return j.type!==me?go(Gs(me),j):j}function hu(j){let me=Ne(191);return me.type=j,me.transformFlags=1,me}function JA(j,me){return j.type!==me?go(hu(me),j):j}function Qd(j,me,We){let mt=Ne(j);return mt.types=Be.createNodeArray(We(me)),mt.transformFlags=1,mt}function kd(j,me,We){return j.types!==me?go(Qd(j.kind,me,We),j):j}function Tl(j){return Qd(192,j,d().parenthesizeConstituentTypesOfUnionType)}function lg(j,me){return kd(j,me,d().parenthesizeConstituentTypesOfUnionType)}function mf(j){return Qd(193,j,d().parenthesizeConstituentTypesOfIntersectionType)}function zc(j,me){return kd(j,me,d().parenthesizeConstituentTypesOfIntersectionType)}function Zc(j,me,We,mt){let yr=Ne(194);return yr.checkType=d().parenthesizeCheckTypeOfConditionalType(j),yr.extendsType=d().parenthesizeExtendsTypeOfConditionalType(me),yr.trueType=We,yr.falseType=mt,yr.transformFlags=1,yr.locals=void 0,yr.nextContainer=void 0,yr}function Km(j,me,We,mt,yr){return j.checkType!==me||j.extendsType!==We||j.trueType!==mt||j.falseType!==yr?go(Zc(me,We,mt,yr),j):j}function Df(j){let me=Ne(195);return me.typeParameter=j,me.transformFlags=1,me}function f0(j,me){return j.typeParameter!==me?go(Df(me),j):j}function xI(j,me){let We=Ne(203);return We.head=j,We.templateSpans=Fe(me),We.transformFlags=1,We}function s_(j,me,We){return j.head!==me||j.templateSpans!==We?go(xI(me,We),j):j}function Jg(j,me,We,mt,yr=!1){let zn=Ne(205);return zn.argument=j,zn.attributes=me,zn.assertions&&zn.assertions.assertClause&&zn.attributes&&(zn.assertions.assertClause=zn.attributes),zn.qualifier=We,zn.typeArguments=mt&&d().parenthesizeTypeArguments(mt),zn.isTypeOf=yr,zn.transformFlags=1,zn}function hf(j,me,We,mt,yr,zn=j.isTypeOf){return j.argument!==me||j.attributes!==We||j.qualifier!==mt||j.typeArguments!==yr||j.isTypeOf!==zn?go(Jg(me,We,mt,yr,zn),j):j}function Yd(j){let me=Ne(196);return me.type=j,me.transformFlags=1,me}function zA(j,me){return j.type!==me?go(Yd(me),j):j}function di(){let j=Ne(197);return j.transformFlags=1,j}function lI(j,me){let We=Ne(198);return We.operator=j,We.type=j===148?d().parenthesizeOperandOfReadonlyTypeOperator(me):d().parenthesizeOperandOfTypeOperator(me),We.transformFlags=1,We}function J0(j,me){return j.type!==me?go(lI(j.operator,me),j):j}function U0(j,me){let We=Ne(199);return We.objectType=d().parenthesizeNonArrayTypeOfPostfixType(j),We.indexType=me,We.transformFlags=1,We}function Yb(j,me,We){return j.objectType!==me||j.indexType!==We?go(U0(me,We),j):j}function rf(j,me,We,mt,yr,zn){let io=Qe(200);return io.readonlyToken=j,io.typeParameter=me,io.nameType=We,io.questionToken=mt,io.type=yr,io.members=zn&&Fe(zn),io.transformFlags=1,io.locals=void 0,io.nextContainer=void 0,io}function kI(j,me,We,mt,yr,zn,io){return j.readonlyToken!==me||j.typeParameter!==We||j.nameType!==mt||j.questionToken!==yr||j.type!==zn||j.members!==io?go(rf(me,We,mt,yr,zn,io),j):j}function yt(j){let me=Ne(201);return me.literal=j,me.transformFlags=1,me}function tt(j,me){return j.literal!==me?go(yt(me),j):j}function gr(j){let me=Ne(206);return me.elements=Fe(j),me.transformFlags|=CA(me.elements)|1024|524288,me.transformFlags&32768&&(me.transformFlags|=65664),me}function mn(j,me){return j.elements!==me?go(gr(me),j):j}function Ri(j){let me=Ne(207);return me.elements=Fe(j),me.transformFlags|=CA(me.elements)|1024|524288,me}function Xo(j,me){return j.elements!==me?go(Ri(me),j):j}function fi(j,me,We,mt){let yr=Qe(208);return yr.dotDotDotToken=j,yr.propertyName=Bm(me),yr.name=Bm(We),yr.initializer=hT(mt),yr.transformFlags|=To(yr.dotDotDotToken)|kx(yr.propertyName)|kx(yr.name)|To(yr.initializer)|(yr.dotDotDotToken?32768:0)|1024,yr.flowNode=void 0,yr}function Jo(j,me,We,mt,yr){return j.propertyName!==We||j.dotDotDotToken!==me||j.name!==mt||j.initializer!==yr?go(fi(me,We,mt,yr),j):j}function hc(j,me){let We=Ne(209),mt=j&&qo(j),yr=Fe(j,mt&&ef(mt)?!0:void 0);return We.elements=d().parenthesizeExpressionsOfCommaDelimitedList(yr),We.multiLine=me,We.transformFlags|=CA(We.elements),We}function ic(j,me){return j.elements!==me?go(hc(me,j.multiLine),j):j}function Wg(j,me){let We=Qe(210);return We.properties=Fe(j),We.multiLine=me,We.transformFlags|=CA(We.properties),We.jsDoc=void 0,We}function nf(j,me){return j.properties!==me?go(Wg(me,j.multiLine),j):j}function zC(j,me,We){let mt=Qe(211);return mt.expression=j,mt.questionDotToken=me,mt.name=We,mt.transformFlags=To(mt.expression)|To(mt.questionDotToken)|(sr(mt.name)?qee(mt.name):To(mt.name)|536870912),mt.jsDoc=void 0,mt.flowNode=void 0,mt}function Xf(j,me){let We=zC(d().parenthesizeLeftSideOfAccess(j,!1),void 0,Bm(me));return z3(j)&&(We.transformFlags|=384),We}function Gm(j,me,We){return AQ(j)?Fm(j,me,j.questionDotToken,ps(We,sr)):j.expression!==me||j.name!==We?go(Xf(me,We),j):j}function sf(j,me,We){let mt=zC(d().parenthesizeLeftSideOfAccess(j,!0),me,Bm(We));return mt.flags|=64,mt.transformFlags|=32,mt}function Fm(j,me,We,mt){return w.assert(!!(j.flags&64),"Cannot update a PropertyAccessExpression using updatePropertyAccessChain. Use updatePropertyAccess instead."),j.expression!==me||j.questionDotToken!==We||j.name!==mt?go(sf(me,We,mt),j):j}function Hb(j,me,We){let mt=Qe(212);return mt.expression=j,mt.questionDotToken=me,mt.argumentExpression=We,mt.transformFlags|=To(mt.expression)|To(mt.questionDotToken)|To(mt.argumentExpression),mt.jsDoc=void 0,mt.flowNode=void 0,mt}function GI(j,me){let We=Hb(d().parenthesizeLeftSideOfAccess(j,!1),void 0,QV(me));return z3(j)&&(We.transformFlags|=384),We}function qC(j,me,We){return dX(j)?qt(j,me,j.questionDotToken,We):j.expression!==me||j.argumentExpression!==We?go(GI(me,We),j):j}function Q2(j,me,We){let mt=Hb(d().parenthesizeLeftSideOfAccess(j,!0),me,QV(We));return mt.flags|=64,mt.transformFlags|=32,mt}function qt(j,me,We,mt){return w.assert(!!(j.flags&64),"Cannot update a ElementAccessExpression using updateElementAccessChain. Use updateElementAccess instead."),j.expression!==me||j.questionDotToken!==We||j.argumentExpression!==mt?go(Q2(me,We,mt),j):j}function Fn(j,me,We,mt){let yr=Qe(213);return yr.expression=j,yr.questionDotToken=me,yr.typeArguments=We,yr.arguments=mt,yr.transformFlags|=To(yr.expression)|To(yr.questionDotToken)|CA(yr.typeArguments)|CA(yr.arguments),yr.typeArguments&&(yr.transformFlags|=1),M0(yr.expression)&&(yr.transformFlags|=16384),yr}function Bs(j,me,We){let mt=Fn(d().parenthesizeLeftSideOfAccess(j,!1),void 0,MA(me),d().parenthesizeExpressionsOfCommaDelimitedList(Fe(We)));return D6(mt.expression)&&(mt.transformFlags|=8388608),mt}function Nl(j,me,We,mt){return uG(j)?PA(j,me,j.questionDotToken,We,mt):j.expression!==me||j.typeArguments!==We||j.arguments!==mt?go(Bs(me,We,mt),j):j}function vA(j,me,We,mt){let yr=Fn(d().parenthesizeLeftSideOfAccess(j,!0),me,MA(We),d().parenthesizeExpressionsOfCommaDelimitedList(Fe(mt)));return yr.flags|=64,yr.transformFlags|=32,yr}function PA(j,me,We,mt,yr){return w.assert(!!(j.flags&64),"Cannot update a CallExpression using updateCallChain. Use updateCall instead."),j.expression!==me||j.questionDotToken!==We||j.typeArguments!==mt||j.arguments!==yr?go(vA(me,We,mt,yr),j):j}function XI(j,me,We){let mt=Qe(214);return mt.expression=d().parenthesizeExpressionOfNew(j),mt.typeArguments=MA(me),mt.arguments=We?d().parenthesizeExpressionsOfCommaDelimitedList(We):void 0,mt.transformFlags|=To(mt.expression)|CA(mt.typeArguments)|CA(mt.arguments)|32,mt.typeArguments&&(mt.transformFlags|=1),mt}function bm(j,me,We,mt){return j.expression!==me||j.typeArguments!==We||j.arguments!==mt?go(XI(me,We,mt),j):j}function rp(j,me,We){let mt=Ne(215);return mt.tag=d().parenthesizeLeftSideOfAccess(j,!1),mt.typeArguments=MA(me),mt.template=We,mt.transformFlags|=To(mt.tag)|CA(mt.typeArguments)|To(mt.template)|1024,mt.typeArguments&&(mt.transformFlags|=1),wme(mt.template)&&(mt.transformFlags|=128),mt}function Hd(j,me,We,mt){return j.tag!==me||j.typeArguments!==We||j.template!==mt?go(rp(me,We,mt),j):j}function hC(j,me){let We=Ne(216);return We.expression=d().parenthesizeOperandOfPrefixUnary(me),We.type=j,We.transformFlags|=To(We.expression)|To(We.type)|1,We}function Xb(j,me,We){return j.type!==me||j.expression!==We?go(hC(me,We),j):j}function dT(j){let me=Ne(217);return me.expression=j,me.transformFlags=To(me.expression),me.jsDoc=void 0,me}function Y2(j,me){return j.expression!==me?go(dT(me),j):j}function ub(j,me,We,mt,yr,zn,io){let Yl=Qe(218);Yl.modifiers=MA(j),Yl.asteriskToken=me,Yl.name=Bm(We),Yl.typeParameters=MA(mt),Yl.parameters=Fe(yr),Yl.type=zn,Yl.body=io;let hp=xv(Yl.modifiers)&1024,gw=!!Yl.asteriskToken,Aw=hp&&gw;return Yl.transformFlags=CA(Yl.modifiers)|To(Yl.asteriskToken)|kx(Yl.name)|CA(Yl.typeParameters)|CA(Yl.parameters)|To(Yl.type)|To(Yl.body)&-67108865|(Aw?128:hp?256:gw?2048:0)|(Yl.typeParameters||Yl.type?1:0)|4194304,Yl.typeArguments=void 0,Yl.jsDoc=void 0,Yl.locals=void 0,Yl.nextContainer=void 0,Yl.flowNode=void 0,Yl.endFlowNode=void 0,Yl.returnFlowNode=void 0,Yl}function LB(j,me,We,mt,yr,zn,io,Yl){return j.name!==mt||j.modifiers!==me||j.asteriskToken!==We||j.typeParameters!==yr||j.parameters!==zn||j.type!==io||j.body!==Yl?De(ub(me,We,mt,yr,zn,io,Yl),j):j}function H2(j,me,We,mt,yr,zn){let io=Qe(219);io.modifiers=MA(j),io.typeParameters=MA(me),io.parameters=Fe(We),io.type=mt,io.equalsGreaterThanToken=yr??jt(39),io.body=d().parenthesizeConciseBodyOfArrowFunction(zn);let Yl=xv(io.modifiers)&1024;return io.transformFlags=CA(io.modifiers)|CA(io.typeParameters)|CA(io.parameters)|To(io.type)|To(io.equalsGreaterThanToken)|To(io.body)&-67108865|(io.typeParameters||io.type?1:0)|(Yl?16640:0)|1024,io.typeArguments=void 0,io.jsDoc=void 0,io.locals=void 0,io.nextContainer=void 0,io.flowNode=void 0,io.endFlowNode=void 0,io.returnFlowNode=void 0,io}function oD(j,me,We,mt,yr,zn,io){return j.modifiers!==me||j.typeParameters!==We||j.parameters!==mt||j.type!==yr||j.equalsGreaterThanToken!==zn||j.body!==io?De(H2(me,We,mt,yr,zn,io),j):j}function aD(j){let me=Ne(220);return me.expression=d().parenthesizeOperandOfPrefixUnary(j),me.transformFlags|=To(me.expression),me}function gb(j,me){return j.expression!==me?go(aD(me),j):j}function $C(j){let me=Ne(221);return me.expression=d().parenthesizeOperandOfPrefixUnary(j),me.transformFlags|=To(me.expression),me}function cD(j,me){return j.expression!==me?go($C(me),j):j}function Jb(j){let me=Ne(222);return me.expression=d().parenthesizeOperandOfPrefixUnary(j),me.transformFlags|=To(me.expression),me}function ZN(j,me){return j.expression!==me?go(Jb(me),j):j}function X2(j){let me=Ne(223);return me.expression=d().parenthesizeOperandOfPrefixUnary(j),me.transformFlags|=To(me.expression)|256|128|2097152,me}function rt(j,me){return j.expression!==me?go(X2(me),j):j}function qr(j,me){let We=Ne(224);return We.operator=j,We.operand=d().parenthesizeOperandOfPrefixUnary(me),We.transformFlags|=To(We.operand),(j===46||j===47)&&sr(We.operand)&&!Ip(We.operand)&&!kG(We.operand)&&(We.transformFlags|=268435456),We}function Qn(j,me){return j.operand!==me?go(qr(j.operator,me),j):j}function Jn(j,me){let We=Ne(225);return We.operator=me,We.operand=d().parenthesizeOperandOfPostfixUnary(j),We.transformFlags|=To(We.operand),sr(We.operand)&&!Ip(We.operand)&&!kG(We.operand)&&(We.transformFlags|=268435456),We}function cs(j,me){return j.operand!==me?go(Jn(me,j.operator),j):j}function Ls(j,me,We){let mt=Qe(226),yr=QP(me),zn=yr.kind;return mt.left=d().parenthesizeLeftSideOfBinary(zn,j),mt.operatorToken=yr,mt.right=d().parenthesizeRightSideOfBinary(zn,mt.left,We),mt.transformFlags|=To(mt.left)|To(mt.operatorToken)|To(mt.right),zn===61?mt.transformFlags|=32:zn===64?tu(mt.left)?mt.transformFlags|=5248|$o(mt.left):If(mt.left)&&(mt.transformFlags|=5120|$o(mt.left)):zn===43||zn===68?mt.transformFlags|=512:e6(zn)&&(mt.transformFlags|=16),zn===103&&kc(mt.left)&&(mt.transformFlags|=536870912),mt.jsDoc=void 0,mt}function $o(j){return Jhe(j)?65536:0}function Ua(j,me,We,mt){return j.left!==me||j.operatorToken!==We||j.right!==mt?go(Ls(me,We,mt),j):j}function Ge(j,me,We,mt,yr){let zn=Ne(227);return zn.condition=d().parenthesizeConditionOfConditionalExpression(j),zn.questionToken=me??jt(58),zn.whenTrue=d().parenthesizeBranchOfConditionalExpression(We),zn.colonToken=mt??jt(59),zn.whenFalse=d().parenthesizeBranchOfConditionalExpression(yr),zn.transformFlags|=To(zn.condition)|To(zn.questionToken)|To(zn.whenTrue)|To(zn.colonToken)|To(zn.whenFalse),zn}function Ht(j,me,We,mt,yr,zn){return j.condition!==me||j.questionToken!==We||j.whenTrue!==mt||j.colonToken!==yr||j.whenFalse!==zn?go(Ge(me,We,mt,yr,zn),j):j}function En(j,me){let We=Ne(228);return We.head=j,We.templateSpans=Fe(me),We.transformFlags|=To(We.head)|CA(We.templateSpans)|1024,We}function Rs(j,me,We){return j.head!==me||j.templateSpans!==We?go(En(me,We),j):j}function _c(j,me,We,mt=0){w.assert(!(mt&-7177),"Unsupported template flags.");let yr;if(We!==void 0&&We!==me&&(yr=QNt(j,We),typeof yr=="object"))return w.fail("Invalid raw text");if(me===void 0){if(yr===void 0)return w.fail("Arguments 'text' and 'rawText' may not both be undefined.");me=yr}else yr!==void 0&&w.assert(me===yr,"Expected argument 'text' to be the normalized (i.e. 'cooked') version of argument 'rawText'.");return me}function Iu(j){let me=1024;return j&&(me|=128),me}function Wl(j,me,We,mt){let yr=Dr(j);return yr.text=me,yr.rawText=We,yr.templateFlags=mt&7176,yr.transformFlags=Iu(yr.templateFlags),yr}function Eu(j,me,We,mt){let yr=Qe(j);return yr.text=me,yr.rawText=We,yr.templateFlags=mt&7176,yr.transformFlags=Iu(yr.templateFlags),yr}function od(j,me,We,mt){return j===15?Eu(j,me,We,mt):Wl(j,me,We,mt)}function sA(j,me,We){return j=_c(16,j,me,We),od(16,j,me,We)}function uI(j,me,We){return j=_c(16,j,me,We),od(17,j,me,We)}function VB(j,me,We){return j=_c(16,j,me,We),od(18,j,me,We)}function rw(j,me,We){return j=_c(16,j,me,We),Eu(15,j,me,We)}function lD(j,me){w.assert(!j||!!me,"A `YieldExpression` with an asteriskToken must have an expression.");let We=Ne(229);return We.expression=me&&d().parenthesizeExpressionForDisallowedComma(me),We.asteriskToken=j,We.transformFlags|=To(We.expression)|To(We.asteriskToken)|1024|128|1048576,We}function Xx(j,me,We){return j.expression!==We||j.asteriskToken!==me?go(lD(me,We),j):j}function YZ(j){let me=Ne(230);return me.expression=d().parenthesizeExpressionForDisallowedComma(j),me.transformFlags|=To(me.expression)|1024|32768,me}function Jx(j,me){return j.expression!==me?go(YZ(me),j):j}function WB(j,me,We,mt,yr){let zn=Qe(231);return zn.modifiers=MA(j),zn.name=Bm(me),zn.typeParameters=MA(We),zn.heritageClauses=MA(mt),zn.members=Fe(yr),zn.transformFlags|=CA(zn.modifiers)|kx(zn.name)|CA(zn.typeParameters)|CA(zn.heritageClauses)|CA(zn.members)|(zn.typeParameters?1:0)|1024,zn.jsDoc=void 0,zn}function J2(j,me,We,mt,yr,zn){return j.modifiers!==me||j.name!==We||j.typeParameters!==mt||j.heritageClauses!==yr||j.members!==zn?go(WB(me,We,mt,yr,zn),j):j}function np(){return Ne(232)}function F_(j,me){let We=Ne(233);return We.expression=d().parenthesizeLeftSideOfAccess(j,!1),We.typeArguments=me&&d().parenthesizeTypeArguments(me),We.transformFlags|=To(We.expression)|CA(We.typeArguments)|1024,We}function K0(j,me,We){return j.expression!==me||j.typeArguments!==We?go(F_(me,We),j):j}function nw(j,me){let We=Ne(234);return We.expression=j,We.type=me,We.transformFlags|=To(We.expression)|To(We.type)|1,We}function HZ(j,me,We){return j.expression!==me||j.type!==We?go(nw(me,We),j):j}function WG(j){let me=Ne(235);return me.expression=d().parenthesizeLeftSideOfAccess(j,!1),me.transformFlags|=To(me.expression)|1,me}function xV(j,me){return c8(j)?_P(j,me):j.expression!==me?go(WG(me),j):j}function Wv(j,me){let We=Ne(238);return We.expression=j,We.type=me,We.transformFlags|=To(We.expression)|To(We.type)|1,We}function kV(j,me,We){return j.expression!==me||j.type!==We?go(Wv(me,We),j):j}function Pv(j){let me=Ne(235);return me.flags|=64,me.expression=d().parenthesizeLeftSideOfAccess(j,!0),me.transformFlags|=To(me.expression)|1,me}function _P(j,me){return w.assert(!!(j.flags&64),"Cannot update a NonNullExpression using updateNonNullChain. Use updateNonNullExpression instead."),j.expression!==me?go(Pv(me),j):j}function pT(j,me){let We=Ne(236);switch(We.keywordToken=j,We.name=me,We.transformFlags|=To(We.name),j){case 105:We.transformFlags|=1024;break;case 102:We.transformFlags|=32;break;default:return w.assertNever(j)}return We.flowNode=void 0,We}function U2(j,me){return j.name!==me?go(pT(j.keywordToken,me),j):j}function PG(j,me){let We=Ne(239);return We.expression=j,We.literal=me,We.transformFlags|=To(We.expression)|To(We.literal)|1024,We}function rr(j,me,We){return j.expression!==me||j.literal!==We?go(PG(me,We),j):j}function Tr(){let j=Ne(240);return j.transformFlags|=1024,j}function xn(j,me){let We=Ne(241);return We.statements=Fe(j),We.multiLine=me,We.transformFlags|=CA(We.statements),We.jsDoc=void 0,We.locals=void 0,We.nextContainer=void 0,We}function ci(j,me){return j.statements!==me?go(xn(me,j.multiLine),j):j}function Wi(j,me){let We=Ne(243);return We.modifiers=MA(j),We.declarationList=Ra(me)?Ub(me):me,We.transformFlags|=CA(We.modifiers)|To(We.declarationList),xv(We.modifiers)&128&&(We.transformFlags=1),We.jsDoc=void 0,We.flowNode=void 0,We}function qs(j,me,We){return j.modifiers!==me||j.declarationList!==We?go(Wi(me,We),j):j}function zi(){let j=Ne(242);return j.jsDoc=void 0,j}function ho(j){let me=Ne(244);return me.expression=d().parenthesizeExpressionOfExpressionStatement(j),me.transformFlags|=To(me.expression),me.jsDoc=void 0,me.flowNode=void 0,me}function Bc(j,me){return j.expression!==me?go(ho(me),j):j}function Co(j,me,We){let mt=Ne(245);return mt.expression=j,mt.thenStatement=zx(me),mt.elseStatement=zx(We),mt.transformFlags|=To(mt.expression)|To(mt.thenStatement)|To(mt.elseStatement),mt.jsDoc=void 0,mt.flowNode=void 0,mt}function ac(j,me,We,mt){return j.expression!==me||j.thenStatement!==We||j.elseStatement!==mt?go(Co(me,We,mt),j):j}function Ps(j,me){let We=Ne(246);return We.statement=zx(j),We.expression=me,We.transformFlags|=To(We.statement)|To(We.expression),We.jsDoc=void 0,We.flowNode=void 0,We}function ru(j,me,We){return j.statement!==me||j.expression!==We?go(Ps(me,We),j):j}function Yg(j,me){let We=Ne(247);return We.expression=j,We.statement=zx(me),We.transformFlags|=To(We.expression)|To(We.statement),We.jsDoc=void 0,We.flowNode=void 0,We}function jm(j,me,We){return j.expression!==me||j.statement!==We?go(Yg(me,We),j):j}function I0(j,me,We,mt){let yr=Ne(248);return yr.initializer=j,yr.condition=me,yr.incrementor=We,yr.statement=zx(mt),yr.transformFlags|=To(yr.initializer)|To(yr.condition)|To(yr.incrementor)|To(yr.statement),yr.jsDoc=void 0,yr.locals=void 0,yr.nextContainer=void 0,yr.flowNode=void 0,yr}function Ov(j,me,We,mt,yr){return j.initializer!==me||j.condition!==We||j.incrementor!==mt||j.statement!==yr?go(I0(me,We,mt,yr),j):j}function XZ(j,me,We){let mt=Ne(249);return mt.initializer=j,mt.expression=me,mt.statement=zx(We),mt.transformFlags|=To(mt.initializer)|To(mt.expression)|To(mt.statement),mt.jsDoc=void 0,mt.locals=void 0,mt.nextContainer=void 0,mt.flowNode=void 0,mt}function Mv(j,me,We,mt){return j.initializer!==me||j.expression!==We||j.statement!==mt?go(XZ(me,We,mt),j):j}function u7(j,me,We,mt){let yr=Ne(250);return yr.awaitModifier=j,yr.initializer=me,yr.expression=d().parenthesizeExpressionForDisallowedComma(We),yr.statement=zx(mt),yr.transformFlags|=To(yr.awaitModifier)|To(yr.initializer)|To(yr.expression)|To(yr.statement)|1024,j&&(yr.transformFlags|=128),yr.jsDoc=void 0,yr.locals=void 0,yr.nextContainer=void 0,yr.flowNode=void 0,yr}function nre(j,me,We,mt,yr){return j.awaitModifier!==me||j.initializer!==We||j.expression!==mt||j.statement!==yr?go(u7(me,We,mt,yr),j):j}function g7(j){let me=Ne(251);return me.label=Bm(j),me.transformFlags|=To(me.label)|4194304,me.jsDoc=void 0,me.flowNode=void 0,me}function NY(j,me){return j.label!==me?go(g7(me),j):j}function yP(j){let me=Ne(252);return me.label=Bm(j),me.transformFlags|=To(me.label)|4194304,me.jsDoc=void 0,me.flowNode=void 0,me}function bP(j,me){return j.label!==me?go(yP(me),j):j}function EP(j){let me=Ne(253);return me.expression=j,me.transformFlags|=To(me.expression)|128|4194304,me.jsDoc=void 0,me.flowNode=void 0,me}function T4(j,me){return j.expression!==me?go(EP(me),j):j}function JZ(j,me){let We=Ne(254);return We.expression=j,We.statement=zx(me),We.transformFlags|=To(We.expression)|To(We.statement),We.jsDoc=void 0,We.flowNode=void 0,We}function RY(j,me,We){return j.expression!==me||j.statement!==We?go(JZ(me,We),j):j}function Ux(j,me){let We=Ne(255);return We.expression=d().parenthesizeExpressionForDisallowedComma(j),We.caseBlock=me,We.transformFlags|=To(We.expression)|To(We.caseBlock),We.jsDoc=void 0,We.flowNode=void 0,We.possiblyExhaustive=!1,We}function DY(j,me,We){return j.expression!==me||j.caseBlock!==We?go(Ux(me,We),j):j}function UA(j,me){let We=Ne(256);return We.label=Bm(j),We.statement=zx(me),We.transformFlags|=To(We.label)|To(We.statement),We.jsDoc=void 0,We.flowNode=void 0,We}function N4(j,me,We){return j.label!==me||j.statement!==We?go(UA(me,We),j):j}function R4(j){let me=Ne(257);return me.expression=j,me.transformFlags|=To(me.expression),me.jsDoc=void 0,me.flowNode=void 0,me}function BP(j,me){return j.expression!==me?go(R4(me),j):j}function OG(j,me,We){let mt=Ne(258);return mt.tryBlock=j,mt.catchClause=me,mt.finallyBlock=We,mt.transformFlags|=To(mt.tryBlock)|To(mt.catchClause)|To(mt.finallyBlock),mt.jsDoc=void 0,mt.flowNode=void 0,mt}function LN(j,me,We,mt){return j.tryBlock!==me||j.catchClause!==We||j.finallyBlock!==mt?go(OG(me,We,mt),j):j}function PB(){let j=Ne(259);return j.jsDoc=void 0,j.flowNode=void 0,j}function Ab(j,me,We,mt){let yr=Qe(260);return yr.name=Bm(j),yr.exclamationToken=me,yr.type=We,yr.initializer=hT(mt),yr.transformFlags|=kx(yr.name)|To(yr.initializer)|(yr.exclamationToken??yr.type?1:0),yr.jsDoc=void 0,yr}function QE(j,me,We,mt,yr){return j.name!==me||j.type!==mt||j.exclamationToken!==We||j.initializer!==yr?go(Ab(me,We,mt,yr),j):j}function Ub(j,me=0){let We=Ne(261);return We.flags|=me&7,We.declarations=Fe(j),We.transformFlags|=CA(We.declarations)|4194304,me&7&&(We.transformFlags|=263168),me&4&&(We.transformFlags|=4),We}function UZ(j,me){return j.declarations!==me?go(Ub(me,j.flags),j):j}function A7(j,me,We,mt,yr,zn,io){let Yl=Qe(262);if(Yl.modifiers=MA(j),Yl.asteriskToken=me,Yl.name=Bm(We),Yl.typeParameters=MA(mt),Yl.parameters=Fe(yr),Yl.type=zn,Yl.body=io,!Yl.body||xv(Yl.modifiers)&128)Yl.transformFlags=1;else{let hp=xv(Yl.modifiers)&1024,gw=!!Yl.asteriskToken,Aw=hp&&gw;Yl.transformFlags=CA(Yl.modifiers)|To(Yl.asteriskToken)|kx(Yl.name)|CA(Yl.typeParameters)|CA(Yl.parameters)|To(Yl.type)|To(Yl.body)&-67108865|(Aw?128:hp?256:gw?2048:0)|(Yl.typeParameters||Yl.type?1:0)|4194304}return Yl.typeArguments=void 0,Yl.jsDoc=void 0,Yl.locals=void 0,Yl.nextContainer=void 0,Yl.endFlowNode=void 0,Yl.returnFlowNode=void 0,Yl}function d7(j,me,We,mt,yr,zn,io,Yl){return j.modifiers!==me||j.asteriskToken!==We||j.name!==mt||j.typeParameters!==yr||j.parameters!==zn||j.type!==io||j.body!==Yl?vP(A7(me,We,mt,yr,zn,io,Yl),j):j}function vP(j,me){return j!==me&&j.modifiers===me.modifiers&&(j.modifiers=me.modifiers),De(j,me)}function KZ(j,me,We,mt,yr){let zn=Qe(263);return zn.modifiers=MA(j),zn.name=Bm(me),zn.typeParameters=MA(We),zn.heritageClauses=MA(mt),zn.members=Fe(yr),xv(zn.modifiers)&128?zn.transformFlags=1:(zn.transformFlags|=CA(zn.modifiers)|kx(zn.name)|CA(zn.typeParameters)|CA(zn.heritageClauses)|CA(zn.members)|(zn.typeParameters?1:0)|1024,zn.transformFlags&8192&&(zn.transformFlags|=1)),zn.jsDoc=void 0,zn}function SP(j,me,We,mt,yr,zn){return j.modifiers!==me||j.name!==We||j.typeParameters!==mt||j.heritageClauses!==yr||j.members!==zn?go(KZ(me,We,mt,yr,zn),j):j}function p7(j,me,We,mt,yr){let zn=Qe(264);return zn.modifiers=MA(j),zn.name=Bm(me),zn.typeParameters=MA(We),zn.heritageClauses=MA(mt),zn.members=Fe(yr),zn.transformFlags=1,zn.jsDoc=void 0,zn}function Em(j,me,We,mt,yr,zn){return j.modifiers!==me||j.name!==We||j.typeParameters!==mt||j.heritageClauses!==yr||j.members!==zn?go(p7(me,We,mt,yr,zn),j):j}function jZ(j,me,We,mt){let yr=Qe(265);return yr.modifiers=MA(j),yr.name=Bm(me),yr.typeParameters=MA(We),yr.type=mt,yr.transformFlags=1,yr.jsDoc=void 0,yr.locals=void 0,yr.nextContainer=void 0,yr}function f7(j,me,We,mt,yr){return j.modifiers!==me||j.name!==We||j.typeParameters!==mt||j.type!==yr?go(jZ(me,We,mt,yr),j):j}function fT(j,me,We){let mt=Qe(266);return mt.modifiers=MA(j),mt.name=Bm(me),mt.members=Fe(We),mt.transformFlags|=CA(mt.modifiers)|To(mt.name)|CA(mt.members)|1,mt.transformFlags&=-67108865,mt.jsDoc=void 0,mt}function D4(j,me,We,mt){return j.modifiers!==me||j.name!==We||j.members!==mt?go(fT(me,We,mt),j):j}function fr(j,me,We,mt=0){let yr=Qe(267);return yr.modifiers=MA(j),yr.flags|=mt&2088,yr.name=me,yr.body=We,xv(yr.modifiers)&128?yr.transformFlags=1:yr.transformFlags|=CA(yr.modifiers)|To(yr.name)|To(yr.body)|1,yr.transformFlags&=-67108865,yr.jsDoc=void 0,yr.locals=void 0,yr.nextContainer=void 0,yr}function iw(j,me,We,mt){return j.modifiers!==me||j.name!==We||j.body!==mt?go(fr(me,We,mt,j.flags),j):j}function zm(j){let me=Ne(268);return me.statements=Fe(j),me.transformFlags|=CA(me.statements),me.jsDoc=void 0,me}function wP(j,me){return j.statements!==me?go(zm(me),j):j}function uD(j){let me=Ne(269);return me.clauses=Fe(j),me.transformFlags|=CA(me.clauses),me.locals=void 0,me.nextContainer=void 0,me}function OB(j,me){return j.clauses!==me?go(uD(me),j):j}function VN(j){let me=Qe(270);return me.name=Bm(j),me.transformFlags|=qee(me.name)|1,me.modifiers=void 0,me.jsDoc=void 0,me}function MG(j,me){return j.name!==me?Hue(VN(me),j):j}function Hue(j,me){return j!==me&&(j.modifiers=me.modifiers),go(j,me)}function SA(j,me,We,mt){let yr=Qe(271);return yr.modifiers=MA(j),yr.name=Bm(We),yr.isTypeOnly=me,yr.moduleReference=mt,yr.transformFlags|=CA(yr.modifiers)|qee(yr.name)|To(yr.moduleReference),DG(yr.moduleReference)||(yr.transformFlags|=1),yr.transformFlags&=-67108865,yr.jsDoc=void 0,yr}function sw(j,me,We,mt,yr){return j.modifiers!==me||j.isTypeOnly!==We||j.name!==mt||j.moduleReference!==yr?go(SA(me,We,mt,yr),j):j}function xY(j,me,We,mt){let yr=Ne(272);return yr.modifiers=MA(j),yr.importClause=me,yr.moduleSpecifier=We,yr.attributes=yr.assertClause=mt,yr.transformFlags|=To(yr.importClause)|To(yr.moduleSpecifier),yr.transformFlags&=-67108865,yr.jsDoc=void 0,yr}function x4(j,me,We,mt,yr){return j.modifiers!==me||j.importClause!==We||j.moduleSpecifier!==mt||j.attributes!==yr?go(xY(me,We,mt,yr),j):j}function k4(j,me,We){let mt=Qe(273);return mt.isTypeOnly=j,mt.name=me,mt.namedBindings=We,mt.transformFlags|=To(mt.name)|To(mt.namedBindings),j&&(mt.transformFlags|=1),mt.transformFlags&=-67108865,mt}function TP(j,me,We,mt){return j.isTypeOnly!==me||j.name!==We||j.namedBindings!==mt?go(k4(me,We,mt),j):j}function QG(j,me){let We=Ne(300);return We.elements=Fe(j),We.multiLine=me,We.token=132,We.transformFlags|=4,We}function YG(j,me,We){return j.elements!==me||j.multiLine!==We?go(QG(me,We),j):j}function NP(j,me){let We=Ne(301);return We.name=j,We.value=me,We.transformFlags|=4,We}function K2(j,me,We){return j.name!==me||j.value!==We?go(NP(me,We),j):j}function M1(j,me){let We=Ne(302);return We.assertClause=j,We.multiLine=me,We}function zZ(j,me,We){return j.assertClause!==me||j.multiLine!==We?go(M1(me,We),j):j}function qZ(j,me,We){let mt=Ne(300);return mt.token=We??118,mt.elements=Fe(j),mt.multiLine=me,mt.transformFlags|=4,mt}function ol(j,me,We){return j.elements!==me||j.multiLine!==We?go(qZ(me,We,j.token),j):j}function Uo(j,me){let We=Ne(301);return We.name=j,We.value=me,We.transformFlags|=4,We}function Z_(j,me,We){return j.name!==me||j.value!==We?go(Uo(me,We),j):j}function ire(j){let me=Qe(274);return me.name=j,me.transformFlags|=To(me.name),me.transformFlags&=-67108865,me}function ow(j,me){return j.name!==me?go(ire(me),j):j}function I7(j){let me=Qe(280);return me.name=j,me.transformFlags|=To(me.name)|32,me.transformFlags&=-67108865,me}function gD(j,me){return j.name!==me?go(I7(me),j):j}function $Z(j){let me=Ne(275);return me.elements=Fe(j),me.transformFlags|=CA(me.elements),me.transformFlags&=-67108865,me}function HG(j,me){return j.elements!==me?go($Z(me),j):j}function sre(j,me,We){let mt=Qe(276);return mt.isTypeOnly=j,mt.propertyName=me,mt.name=We,mt.transformFlags|=To(mt.propertyName)|To(mt.name),mt.transformFlags&=-67108865,mt}function RP(j,me,We,mt){return j.isTypeOnly!==me||j.propertyName!==We||j.name!==mt?go(sre(me,We,mt),j):j}function Q1(j,me,We){let mt=Qe(277);return mt.modifiers=MA(j),mt.isExportEquals=me,mt.expression=me?d().parenthesizeRightSideOfBinary(64,void 0,We):d().parenthesizeExpressionOfExportDefault(We),mt.transformFlags|=CA(mt.modifiers)|To(mt.expression),mt.transformFlags&=-67108865,mt.jsDoc=void 0,mt}function kY(j,me,We){return j.modifiers!==me||j.expression!==We?go(Q1(me,j.isExportEquals,We),j):j}function Dp(j,me,We,mt,yr){let zn=Qe(278);return zn.modifiers=MA(j),zn.isTypeOnly=me,zn.exportClause=We,zn.moduleSpecifier=mt,zn.attributes=zn.assertClause=yr,zn.transformFlags|=CA(zn.modifiers)|To(zn.exportClause)|To(zn.moduleSpecifier),zn.transformFlags&=-67108865,zn.jsDoc=void 0,zn}function Kx(j,me,We,mt,yr,zn){return j.modifiers!==me||j.isTypeOnly!==We||j.exportClause!==mt||j.moduleSpecifier!==yr||j.attributes!==zn?ore(Dp(me,We,mt,yr,zn),j):j}function ore(j,me){return j!==me&&j.modifiers===me.modifiers&&(j.modifiers=me.modifiers),go(j,me)}function G4(j){let me=Ne(279);return me.elements=Fe(j),me.transformFlags|=CA(me.elements),me.transformFlags&=-67108865,me}function GY(j,me){return j.elements!==me?go(G4(me),j):j}function C7(j,me,We){let mt=Ne(281);return mt.isTypeOnly=j,mt.propertyName=Bm(me),mt.name=Bm(We),mt.transformFlags|=To(mt.propertyName)|To(mt.name),mt.transformFlags&=-67108865,mt.jsDoc=void 0,mt}function Xue(j,me,We,mt){return j.isTypeOnly!==me||j.propertyName!==We||j.name!==mt?go(C7(me,We,mt),j):j}function are(){let j=Qe(282);return j.jsDoc=void 0,j}function Vo(j){let me=Ne(283);return me.expression=j,me.transformFlags|=To(me.expression),me.transformFlags&=-67108865,me}function C0(j,me){return j.expression!==me?go(Vo(me),j):j}function lu(j){return Ne(j)}function XG(j,me,We=!1){let mt=F4(j,We?me&&d().parenthesizeNonArrayTypeOfPostfixType(me):me);return mt.postfix=We,mt}function F4(j,me){let We=Ne(j);return We.type=me,We}function YE(j,me,We){return me.type!==We?go(XG(j,We,me.postfix),me):me}function uo(j,me,We){return me.type!==We?go(F4(j,We),me):me}function m7(j,me){let We=Qe(317);return We.parameters=MA(j),We.type=me,We.transformFlags=CA(We.parameters)|(We.type?1:0),We.jsDoc=void 0,We.locals=void 0,We.nextContainer=void 0,We.typeArguments=void 0,We}function h7(j,me,We){return j.parameters!==me||j.type!==We?go(m7(me,We),j):j}function j0(j,me=!1){let We=Qe(322);return We.jsDocPropertyTags=MA(j),We.isArrayType=me,We}function aw(j,me,We){return j.jsDocPropertyTags!==me||j.isArrayType!==We?go(j0(me,We),j):j}function Qv(j){let me=Ne(309);return me.type=j,me}function eL(j,me){return j.type!==me?go(Qv(me),j):j}function FY(j,me,We){let mt=Qe(323);return mt.typeParameters=MA(j),mt.parameters=Fe(me),mt.type=We,mt.jsDoc=void 0,mt.locals=void 0,mt.nextContainer=void 0,mt}function WN(j,me,We,mt){return j.typeParameters!==me||j.parameters!==We||j.type!==mt?go(FY(me,We,mt),j):j}function HE(j){let me=whe(j.kind);return j.tagName.escapedText===Rd(me)?j.tagName:wt(me)}function PN(j,me,We){let mt=Ne(j);return mt.tagName=me,mt.comment=We,mt}function MB(j,me,We){let mt=Qe(j);return mt.tagName=me,mt.comment=We,mt}function jx(j,me,We,mt){let yr=PN(345,j??wt("template"),mt);return yr.constraint=me,yr.typeParameters=Fe(We),yr}function DP(j,me=HE(j),We,mt,yr){return j.tagName!==me||j.constraint!==We||j.typeParameters!==mt||j.comment!==yr?go(jx(me,We,mt,yr),j):j}function _7(j,me,We,mt){let yr=MB(346,j??wt("typedef"),mt);return yr.typeExpression=me,yr.fullName=We,yr.name=qKe(We),yr.locals=void 0,yr.nextContainer=void 0,yr}function Z4(j,me=HE(j),We,mt,yr){return j.tagName!==me||j.typeExpression!==We||j.fullName!==mt||j.comment!==yr?go(_7(me,We,mt,yr),j):j}function ZY(j,me,We,mt,yr,zn){let io=MB(341,j??wt("param"),zn);return io.typeExpression=mt,io.name=me,io.isNameFirst=!!yr,io.isBracketed=We,io}function cre(j,me=HE(j),We,mt,yr,zn,io){return j.tagName!==me||j.name!==We||j.isBracketed!==mt||j.typeExpression!==yr||j.isNameFirst!==zn||j.comment!==io?go(ZY(me,We,mt,yr,zn,io),j):j}function L4(j,me,We,mt,yr,zn){let io=MB(348,j??wt("prop"),zn);return io.typeExpression=mt,io.name=me,io.isNameFirst=!!yr,io.isBracketed=We,io}function xP(j,me=HE(j),We,mt,yr,zn,io){return j.tagName!==me||j.name!==We||j.isBracketed!==mt||j.typeExpression!==yr||j.isNameFirst!==zn||j.comment!==io?go(L4(me,We,mt,yr,zn,io),j):j}function cw(j,me,We,mt){let yr=MB(338,j??wt("callback"),mt);return yr.typeExpression=me,yr.fullName=We,yr.name=qKe(We),yr.locals=void 0,yr.nextContainer=void 0,yr}function lre(j,me=HE(j),We,mt,yr){return j.tagName!==me||j.typeExpression!==We||j.fullName!==mt||j.comment!==yr?go(cw(me,We,mt,yr),j):j}function kP(j,me,We){let mt=PN(339,j??wt("overload"),We);return mt.typeExpression=me,mt}function GV(j,me=HE(j),We,mt){return j.tagName!==me||j.typeExpression!==We||j.comment!==mt?go(kP(me,We,mt),j):j}function JG(j,me,We){let mt=PN(328,j??wt("augments"),We);return mt.class=me,mt}function tL(j,me=HE(j),We,mt){return j.tagName!==me||j.class!==We||j.comment!==mt?go(JG(me,We,mt),j):j}function Yv(j,me,We){let mt=PN(329,j??wt("implements"),We);return mt.class=me,mt}function rL(j,me,We){let mt=PN(347,j??wt("see"),We);return mt.name=me,mt}function GP(j,me,We,mt){return j.tagName!==me||j.name!==We||j.comment!==mt?go(rL(me,We,mt),j):j}function fh(j){let me=Ne(310);return me.name=j,me}function UG(j,me){return j.name!==me?go(fh(me),j):j}function ON(j,me){let We=Ne(311);return We.left=j,We.right=me,We.transformFlags|=To(We.left)|To(We.right),We}function JI(j,me,We){return j.left!==me||j.right!==We?go(ON(me,We),j):j}function qm(j,me){let We=Ne(324);return We.name=j,We.text=me,We}function KG(j,me,We){return j.name!==me?go(qm(me,We),j):j}function Kb(j,me){let We=Ne(325);return We.name=j,We.text=me,We}function QB(j,me,We){return j.name!==me?go(Kb(me,We),j):j}function y7(j,me){let We=Ne(326);return We.name=j,We.text=me,We}function MN(j,me,We){return j.name!==me?go(y7(me,We),j):j}function b7(j,me=HE(j),We,mt){return j.tagName!==me||j.class!==We||j.comment!==mt?go(Yv(me,We,mt),j):j}function QN(j,me,We){return PN(j,me??wt(whe(j)),We)}function FV(j,me,We=HE(me),mt){return me.tagName!==We||me.comment!==mt?go(QN(j,We,mt),me):me}function ure(j,me,We,mt){let yr=PN(j,me??wt(whe(j)),mt);return yr.typeExpression=We,yr}function FI(j,me,We=HE(me),mt,yr){return me.tagName!==We||me.typeExpression!==mt||me.comment!==yr?go(ure(j,We,mt,yr),me):me}function gre(j,me){return PN(327,j,me)}function Are(j,me,We){return j.tagName!==me||j.comment!==We?go(gre(me,We),j):j}function FP(j,me,We){let mt=MB(340,j??wt(whe(340)),We);return mt.typeExpression=me,mt.locals=void 0,mt.nextContainer=void 0,mt}function Jue(j,me=HE(j),We,mt){return j.tagName!==me||j.typeExpression!==We||j.comment!==mt?go(FP(me,We,mt),j):j}function z0(j,me,We,mt,yr){let zn=PN(351,j??wt("import"),yr);return zn.importClause=me,zn.moduleSpecifier=We,zn.attributes=mt,zn.comment=yr,zn}function V4(j,me,We,mt,yr,zn){return j.tagName!==me||j.comment!==zn||j.importClause!==We||j.moduleSpecifier!==mt||j.attributes!==yr?go(z0(me,We,mt,yr,zn),j):j}function LY(j){let me=Ne(321);return me.text=j,me}function ZP(j,me){return j.text!==me?go(LY(me),j):j}function db(j,me){let We=Ne(320);return We.comment=j,We.tags=MA(me),We}function Uue(j,me,We){return j.comment!==me||j.tags!==We?go(db(me,We),j):j}function LP(j,me,We){let mt=Ne(284);return mt.openingElement=j,mt.children=Fe(me),mt.closingElement=We,mt.transformFlags|=To(mt.openingElement)|CA(mt.children)|To(mt.closingElement)|2,mt}function dre(j,me,We,mt){return j.openingElement!==me||j.children!==We||j.closingElement!==mt?go(LP(me,We,mt),j):j}function VP(j,me,We){let mt=Ne(285);return mt.tagName=j,mt.typeArguments=MA(me),mt.attributes=We,mt.transformFlags|=To(mt.tagName)|CA(mt.typeArguments)|To(mt.attributes)|2,mt.typeArguments&&(mt.transformFlags|=1),mt}function VY(j,me,We,mt){return j.tagName!==me||j.typeArguments!==We||j.attributes!==mt?go(VP(me,We,mt),j):j}function E7(j,me,We){let mt=Ne(286);return mt.tagName=j,mt.typeArguments=MA(me),mt.attributes=We,mt.transformFlags|=To(mt.tagName)|CA(mt.typeArguments)|To(mt.attributes)|2,me&&(mt.transformFlags|=1),mt}function W4(j,me,We,mt){return j.tagName!==me||j.typeArguments!==We||j.attributes!==mt?go(E7(me,We,mt),j):j}function j2(j){let me=Ne(287);return me.tagName=j,me.transformFlags|=To(me.tagName)|2,me}function pre(j,me){return j.tagName!==me?go(j2(me),j):j}function ZV(j,me,We){let mt=Ne(288);return mt.openingFragment=j,mt.children=Fe(me),mt.closingFragment=We,mt.transformFlags|=To(mt.openingFragment)|CA(mt.children)|To(mt.closingFragment)|2,mt}function Y1(j,me,We,mt){return j.openingFragment!==me||j.children!==We||j.closingFragment!==mt?go(ZV(me,We,mt),j):j}function IT(j,me){let We=Ne(12);return We.text=j,We.containsOnlyTriviaWhiteSpaces=!!me,We.transformFlags|=2,We}function P4(j,me,We){return j.text!==me||j.containsOnlyTriviaWhiteSpaces!==We?go(IT(me,We),j):j}function O4(){let j=Ne(289);return j.transformFlags|=2,j}function GA(){let j=Ne(290);return j.transformFlags|=2,j}function Mo(j,me){let We=Qe(291);return We.name=j,We.initializer=me,We.transformFlags|=To(We.name)|To(We.initializer)|2,We}function z2(j,me,We){return j.name!==me||j.initializer!==We?go(Mo(me,We),j):j}function o_(j){let me=Qe(292);return me.properties=Fe(j),me.transformFlags|=CA(me.properties)|2,me}function fre(j,me){return j.properties!==me?go(o_(me),j):j}function Ire(j){let me=Ne(293);return me.expression=j,me.transformFlags|=To(me.expression)|2,me}function WP(j,me){return j.expression!==me?go(Ire(me),j):j}function LV(j,me){let We=Ne(294);return We.dotDotDotToken=j,We.expression=me,We.transformFlags|=To(We.dotDotDotToken)|To(We.expression)|2,We}function Cre(j,me){return j.expression!==me?go(LV(j.dotDotDotToken,me),j):j}function VV(j,me){let We=Ne(295);return We.namespace=j,We.name=me,We.transformFlags|=To(We.namespace)|To(We.name)|2,We}function lw(j,me,We){return j.namespace!==me||j.name!==We?go(VV(me,We),j):j}function H1(j,me){let We=Ne(296);return We.expression=d().parenthesizeExpressionForDisallowedComma(j),We.statements=Fe(me),We.transformFlags|=To(We.expression)|CA(We.statements),We.jsDoc=void 0,We}function AD(j,me,We){return j.expression!==me||j.statements!==We?go(H1(me,We),j):j}function YN(j){let me=Ne(297);return me.statements=Fe(j),me.transformFlags=CA(me.statements),me}function jG(j,me){return j.statements!==me?go(YN(me),j):j}function M4(j,me){let We=Ne(298);switch(We.token=j,We.types=Fe(me),We.transformFlags|=CA(We.types),j){case 96:We.transformFlags|=1024;break;case 119:We.transformFlags|=1;break;default:return w.assertNever(j)}return We}function LC(j,me){return j.types!==me?go(M4(j.token,me),j):j}function uw(j,me){let We=Ne(299);return We.variableDeclaration=YB(j),We.block=me,We.transformFlags|=To(We.variableDeclaration)|To(We.block)|(j?0:64),We.locals=void 0,We.nextContainer=void 0,We}function X1(j,me,We){return j.variableDeclaration!==me||j.block!==We?go(uw(me,We),j):j}function nL(j,me){let We=Qe(303);return We.name=Bm(j),We.initializer=d().parenthesizeExpressionForDisallowedComma(me),We.transformFlags|=kx(We.name)|To(We.initializer),We.modifiers=void 0,We.questionToken=void 0,We.exclamationToken=void 0,We.jsDoc=void 0,We}function q2(j,me,We){return j.name!==me||j.initializer!==We?Q4(nL(me,We),j):j}function Q4(j,me){return j!==me&&(j.modifiers=me.modifiers,j.questionToken=me.questionToken,j.exclamationToken=me.exclamationToken),go(j,me)}function WV(j,me){let We=Qe(304);return We.name=Bm(j),We.objectAssignmentInitializer=me&&d().parenthesizeExpressionForDisallowedComma(me),We.transformFlags|=qee(We.name)|To(We.objectAssignmentInitializer)|1024,We.equalsToken=void 0,We.modifiers=void 0,We.questionToken=void 0,We.exclamationToken=void 0,We.jsDoc=void 0,We}function ce(j,me,We){return j.name!==me||j.objectAssignmentInitializer!==We?_t(WV(me,We),j):j}function _t(j,me){return j!==me&&(j.modifiers=me.modifiers,j.questionToken=me.questionToken,j.exclamationToken=me.exclamationToken,j.equalsToken=me.equalsToken),go(j,me)}function pn(j){let me=Qe(305);return me.expression=d().parenthesizeExpressionForDisallowedComma(j),me.transformFlags|=To(me.expression)|128|65536,me.jsDoc=void 0,me}function qn(j,me){return j.expression!==me?go(pn(me),j):j}function Ka(j,me){let We=Qe(306);return We.name=Bm(j),We.initializer=me&&d().parenthesizeExpressionForDisallowedComma(me),We.transformFlags|=To(We.name)|To(We.initializer)|1,We.jsDoc=void 0,We}function Gl(j,me,We){return j.name!==me||j.initializer!==We?go(Ka(me,We),j):j}function bl(j,me,We){let mt=c.createBaseSourceFileNode(307);return mt.statements=Fe(j),mt.endOfFileToken=me,mt.flags|=We,mt.text="",mt.fileName="",mt.path="",mt.resolvedPath="",mt.originalFileName="",mt.languageVersion=1,mt.languageVariant=0,mt.scriptKind=0,mt.isDeclarationFile=!1,mt.hasNoDefaultLib=!1,mt.transformFlags|=CA(mt.statements)|To(mt.endOfFileToken),mt.locals=void 0,mt.nextContainer=void 0,mt.endFlowNode=void 0,mt.nodeCount=0,mt.identifierCount=0,mt.symbolCount=0,mt.parseDiagnostics=void 0,mt.bindDiagnostics=void 0,mt.bindSuggestionDiagnostics=void 0,mt.lineMap=void 0,mt.externalModuleIndicator=void 0,mt.setExternalModuleIndicator=void 0,mt.pragmas=void 0,mt.checkJsDirective=void 0,mt.referencedFiles=void 0,mt.typeReferenceDirectives=void 0,mt.libReferenceDirectives=void 0,mt.amdDependencies=void 0,mt.commentDirectives=void 0,mt.identifiers=void 0,mt.packageJsonLocations=void 0,mt.packageJsonScope=void 0,mt.imports=void 0,mt.moduleAugmentations=void 0,mt.ambientModuleNames=void 0,mt.classifiableNames=void 0,mt.impliedNodeFormat=void 0,mt}function jl(j){let me=Object.create(j.redirectTarget);return Object.defineProperties(me,{id:{get(){return this.redirectInfo.redirectTarget.id},set(We){this.redirectInfo.redirectTarget.id=We}},symbol:{get(){return this.redirectInfo.redirectTarget.symbol},set(We){this.redirectInfo.redirectTarget.symbol=We}}}),me.redirectInfo=j,me}function Hg(j){let me=jl(j.redirectInfo);return me.flags|=j.flags&-17,me.fileName=j.fileName,me.path=j.path,me.resolvedPath=j.resolvedPath,me.originalFileName=j.originalFileName,me.packageJsonLocations=j.packageJsonLocations,me.packageJsonScope=j.packageJsonScope,me.emitNode=void 0,me}function q0(j){let me=c.createBaseSourceFileNode(307);me.flags|=j.flags&-17;for(let We in j)if(!(Qa(me,We)||!Qa(j,We))){if(We==="emitNode"){me.emitNode=void 0;continue}me[We]=j[We]}return me}function m0(j){let me=j.redirectInfo?Hg(j):q0(j);return u(me,j),me}function iL(j,me,We,mt,yr,zn,io){let Yl=m0(j);return Yl.statements=Fe(me),Yl.isDeclarationFile=We,Yl.referencedFiles=mt,Yl.typeReferenceDirectives=yr,Yl.hasNoDefaultLib=zn,Yl.libReferenceDirectives=io,Yl.transformFlags=CA(Yl.statements)|To(Yl.endOfFileToken),Yl}function WY(j,me,We=j.isDeclarationFile,mt=j.referencedFiles,yr=j.typeReferenceDirectives,zn=j.hasNoDefaultLib,io=j.libReferenceDirectives){return j.statements!==me||j.isDeclarationFile!==We||j.referencedFiles!==mt||j.typeReferenceDirectives!==yr||j.hasNoDefaultLib!==zn||j.libReferenceDirectives!==io?go(iL(j,me,We,mt,yr,zn,io),j):j}function XE(j){let me=Ne(308);return me.sourceFiles=j,me.syntheticFileReferences=void 0,me.syntheticTypeReferences=void 0,me.syntheticLibReferences=void 0,me.hasNoDefaultLib=void 0,me}function CT(j,me){return j.sourceFiles!==me?go(XE(me),j):j}function zG(j,me=!1,We){let mt=Ne(237);return mt.type=j,mt.isSpread=me,mt.tupleNameSource=We,mt}function PY(j){let me=Ne(352);return me._children=j,me}function mre(j){let me=Ne(353);return me.original=j,un(me,j),me}function qG(j,me){let We=Ne(354);return We.expression=j,We.original=me,We.transformFlags|=To(We.expression)|1,un(We,me),We}function PP(j,me){return j.expression!==me?go(qG(me,j.original),j):j}function sL(j){if(qd(j)&&!dZ(j)&&!j.original&&!j.emitNode&&!j.id){if(VE(j))return j.elements;if(no(j)&&Oxe(j.operatorToken))return[j.left,j.right]}return j}function PV(j){let me=Ne(355);return me.elements=Fe(In(j,sL)),me.transformFlags|=CA(me.elements),me}function qc(j,me){return j.elements!==me?go(PV(me),j):j}function OV(j,me){let We=Ne(356);return We.expression=j,We.thisArg=me,We.transformFlags|=To(We.expression)|To(We.thisArg),We}function Xs(j,me,We){return j.expression!==me||j.thisArg!==We?go(OV(me,We),j):j}function Kue(j){let me=It(j.escapedText);return me.flags|=j.flags&-17,me.transformFlags=j.transformFlags,u(me,j),pV(me,{...j.emitNode.autoGenerate}),me}function hre(j){let me=It(j.escapedText);me.flags|=j.flags&-17,me.jsDoc=j.jsDoc,me.flowNode=j.flowNode,me.symbol=j.symbol,me.transformFlags=j.transformFlags,u(me,j);let We=xZ(j);return We&&rT(me,We),me}function B7(j){let me=Kt(j.escapedText);return me.flags|=j.flags&-17,me.transformFlags=j.transformFlags,u(me,j),pV(me,{...j.emitNode.autoGenerate}),me}function _re(j){let me=Kt(j.escapedText);return me.flags|=j.flags&-17,me.transformFlags=j.transformFlags,u(me,j),me}function yre(j){if(j===void 0)return j;if(Gc(j))return m0(j);if(Ip(j))return Kue(j);if(sr(j))return hre(j);if(CZ(j))return B7(j);if(kc(j))return _re(j);let me=pX(j.kind)?c.createBaseNode(j.kind):c.createBaseTokenNode(j.kind);me.flags|=j.flags&-17,me.transformFlags=j.transformFlags,u(me,j);for(let We in j)Qa(me,We)||!Qa(j,We)||(me[We]=j[We]);return me}function AZe(j,me,We){return Bs(ub(void 0,void 0,void 0,void 0,me?[me]:[],void 0,xn(j,!0)),void 0,We?[We]:[])}function dZe(j,me,We){return Bs(H2(void 0,void 0,me?[me]:[],void 0,void 0,xn(j,!0)),void 0,We?[We]:[])}function dD(){return Jb(lt("0"))}function L0e(j){return Q1(void 0,!1,j)}function jue(j){return Dp(void 0,!1,G4([C7(!1,void 0,j)]))}function zue(j,me){return me==="null"?Be.createStrictEquality(j,Vr()):me==="undefined"?Be.createStrictEquality(j,dD()):Be.createStrictEquality($C(j),st(me))}function V0e(j,me){return me==="null"?Be.createStrictInequality(j,Vr()):me==="undefined"?Be.createStrictInequality(j,dD()):Be.createStrictInequality($C(j),st(me))}function OP(j,me,We){return uG(j)?vA(sf(j,void 0,me),void 0,void 0,We):Bs(Xf(j,me),void 0,We)}function W0e(j,me,We){return OP(j,"bind",[me,...We])}function OY(j,me,We){return OP(j,"call",[me,...We])}function $G(j,me,We){return OP(j,"apply",[me,We])}function MY(j,me,We){return OP(wt(j),me,We)}function Hv(j,me){return OP(j,"slice",me===void 0?[]:[QV(me)])}function bre(j,me){return OP(j,"concat",me)}function P0e(j,me,We){return MY("Object","defineProperty",[j,QV(me),We])}function pD(j,me){return MY("Object","getOwnPropertyDescriptor",[j,QV(me)])}function Y4(j,me,We){return MY("Reflect","get",We?[j,me,We]:[j,me])}function O0e(j,me,We,mt){return MY("Reflect","set",mt?[j,me,We,mt]:[j,me,We])}function ZI(j,me,We){return We?(j.push(nL(me,We)),!0):!1}function que(j,me){let We=[];ZI(We,"enumerable",QV(j.enumerable)),ZI(We,"configurable",QV(j.configurable));let mt=ZI(We,"writable",QV(j.writable));mt=ZI(We,"value",j.value)||mt;let yr=ZI(We,"get",j.get);return yr=ZI(We,"set",j.set)||yr,w.assert(!(mt&&yr),"A PropertyDescriptor may not be both an accessor descriptor and a data descriptor."),Wg(We,!me)}function vd(j,me){switch(j.kind){case 217:return Y2(j,me);case 216:return Xb(j,j.type,me);case 234:return HZ(j,me,j.type);case 238:return kV(j,me,j.type);case 235:return xV(j,me);case 354:return PP(j,me)}}function OA(j){return FC(j)&&qd(j)&&qd(Gx(j))&&qd(JS(j))&&!lr(tY(j))&&!lr(s4(j))}function v7(j,me,We=15){return j&&$xe(j,We)&&!OA(j)?vd(j,v7(j.expression,me)):me}function S7(j,me,We){if(!me)return j;let mt=N4(me,me.label,nC(me.statement)?S7(j,me.statement):j);return We&&We(me),mt}function $e(j,me){let We=jA(j);switch(We.kind){case 80:return me;case 110:case 9:case 10:case 11:return!1;case 209:return We.elements.length!==0;case 210:return We.properties.length>0;default:return!0}}function Yt(j,me,We,mt=!1){let yr=ZC(j,15),zn,io;return M0(yr)?(zn=Pt(),io=yr):z3(yr)?(zn=Pt(),io=We!==void 0&&We<2?un(wt("_super"),yr):yr):Sg(yr)&8192?(zn=dD(),io=d().parenthesizeLeftSideOfAccess(yr,!1)):Io(yr)?$e(yr.expression,mt)?(zn=vt(me),io=Xf(un(Be.createAssignment(zn,yr.expression),yr.expression),yr.name),un(io,yr)):(zn=yr.expression,io=yr):hA(yr)?$e(yr.expression,mt)?(zn=vt(me),io=GI(un(Be.createAssignment(zn,yr.expression),yr.expression),yr.argumentExpression),un(io,yr)):(zn=yr.expression,io=yr):(zn=dD(),io=d().parenthesizeLeftSideOfAccess(j,!1)),{target:io,thisArg:zn}}function Sr(j,me){return Xf(dT(Wg([St(void 0,"value",[Ec(void 0,void 0,j,void 0,void 0,void 0)],xn([ho(me)]))])),"value")}function _n(j){return j.length>10?PV(j):Td(j,Be.createComma)}function Xn(j,me,We,mt=0,yr){let zn=yr?j&&Jw(j):vl(j);if(zn&&sr(zn)&&!Ip(zn)){let io=kA(un(yre(zn),zn),zn.parent);return mt|=Sg(zn),We||(mt|=96),me||(mt|=3072),mt&&co(io,mt),io}return Et(j)}function es(j,me,We){return Xn(j,me,We,98304)}function Ca(j,me,We,mt){return Xn(j,me,We,32768,mt)}function Hc(j,me,We){return Xn(j,me,We,16384)}function yc(j,me,We){return Xn(j,me,We)}function $a(j,me,We,mt){let yr=Xf(j,qd(me)?me:yre(me));un(yr,me);let zn=0;return mt||(zn|=96),We||(zn|=3072),zn&&co(yr,zn),yr}function Il(j,me,We,mt){return j&&ba(me,32)?$a(j,Xn(me),We,mt):Hc(me,We,mt)}function lp(j,me,We,mt){let yr=$2(j,me,0,We);return mT(j,me,yr,mt)}function hg(j){return bu(j.expression)&&j.expression.text==="use strict"}function oA(){return l0(ho(st("use strict")))}function $2(j,me,We=0,mt){w.assert(me.length===0,"Prologue directives should be at the first statement in the target statements array");let yr=!1,zn=j.length;for(;WeYl&&gw.splice(yr,0,...me.slice(Yl,hp)),Yl>io&&gw.splice(mt,0,...me.slice(io,Yl)),io>zn&&gw.splice(We,0,...me.slice(zn,io)),zn>0)if(We===0)gw.splice(0,0,...me.slice(0,zn));else{let Aw=new Map;for(let fD=0;fD=0;fD--){let w7=me[fD];Aw.has(w7.expression.text)||gw.unshift(w7)}}return gG(j)?un(Fe(gw,j.hasTrailingComma),j):j}function $ue(j,me){let We;return typeof me=="number"?We=$n(me):We=me,qp(j)?xs(j,We,j.name,j.constraint,j.default):Jc(j)?xi(j,We,j.dotDotDotToken,j.name,j.questionToken,j.type,j.initializer):H(j)?Mn(j,We,j.typeParameters,j.parameters,j.type):n_(j)?Cc(j,We,j.name,j.questionToken,j.type):Ql(j)?ir(j,We,j.name,j.questionToken??j.exclamationToken,j.type,j.initializer):jS(j)?gs(j,We,j.name,j.questionToken,j.typeParameters,j.parameters,j.type):cI(j)?qa(j,We,j.asteriskToken,j.name,j.questionToken,j.typeParameters,j.parameters,j.type,j.body):Rf(j)?BA(j,We,j.parameters,j.body):Pb(j)?ct(j,We,j.name,j.parameters,j.type,j.body):sb(j)?br(j,We,j.name,j.parameters,j.body):_(j)?Pn(j,We,j.parameters,j.type):WA(j)?LB(j,We,j.asteriskToken,j.name,j.typeParameters,j.parameters,j.type,j.body):fd(j)?oD(j,We,j.typeParameters,j.parameters,j.type,j.equalsGreaterThanToken,j.body):tp(j)?J2(j,We,j.name,j.typeParameters,j.heritageClauses,j.members):Rp(j)?qs(j,We,j.declarationList):mp(j)?d7(j,We,j.asteriskToken,j.name,j.typeParameters,j.parameters,j.type,j.body):bc(j)?SP(j,We,j.name,j.typeParameters,j.heritageClauses,j.members):HI(j)?Em(j,We,j.name,j.typeParameters,j.heritageClauses,j.members):Wf(j)?f7(j,We,j.name,j.typeParameters,j.type):tP(j)?D4(j,We,j.name,j.members):CC(j)?iw(j,We,j.name,j.body):Cm(j)?sw(j,We,j.isTypeOnly,j.name,j.moduleReference):mI(j)?x4(j,We,j.importClause,j.moduleSpecifier,j.attributes):tf(j)?kY(j,We,j.expression):mC(j)?Kx(j,We,j.isTypeOnly,j.exportClause,j.moduleSpecifier,j.attributes):w.assertNever(j)}function Ere(j,me){return Jc(j)?xi(j,me,j.dotDotDotToken,j.name,j.questionToken,j.type,j.initializer):Ql(j)?ir(j,me,j.name,j.questionToken??j.exclamationToken,j.type,j.initializer):cI(j)?qa(j,me,j.asteriskToken,j.name,j.questionToken,j.typeParameters,j.parameters,j.type,j.body):Pb(j)?ct(j,me,j.name,j.parameters,j.type,j.body):sb(j)?br(j,me,j.name,j.parameters,j.body):tp(j)?J2(j,me,j.name,j.typeParameters,j.heritageClauses,j.members):bc(j)?SP(j,me,j.name,j.typeParameters,j.heritageClauses,j.members):w.assertNever(j)}function M0e(j,me){switch(j.kind){case 177:return ct(j,j.modifiers,me,j.parameters,j.type,j.body);case 178:return br(j,j.modifiers,me,j.parameters,j.body);case 174:return qa(j,j.modifiers,j.asteriskToken,me,j.questionToken,j.typeParameters,j.parameters,j.type,j.body);case 173:return gs(j,j.modifiers,me,j.questionToken,j.typeParameters,j.parameters,j.type);case 172:return ir(j,j.modifiers,me,j.questionToken??j.exclamationToken,j.type,j.initializer);case 171:return Cc(j,j.modifiers,me,j.questionToken,j.type);case 303:return q2(j,me,j.initializer)}}function MA(j){return j?Fe(j):void 0}function Bm(j){return typeof j=="string"?wt(j):j}function QV(j){return typeof j=="string"?st(j):typeof j=="number"?lt(j):typeof j=="boolean"?j?Yr():pr():j}function hT(j){return j&&d().parenthesizeExpressionForDisallowedComma(j)}function QP(j){return typeof j=="number"?jt(j):j}function zx(j){return j&&GKe(j)?un(u(zi(),j),j):j}function YB(j){return typeof j=="string"||j&&!zs(j)?Ab(j,void 0,void 0,void 0):j}function go(j,me){return j!==me&&(u(j,me),un(j,me)),j}}function whe(n){switch(n){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 w.fail(`Unsupported kind: ${w.formatSyntaxKind(n)}`)}}var bN,TKe={};function QNt(n,c){switch(bN||(bN=Ft(99,!1,0)),n){case 15:bN.setText("`"+c+"`");break;case 16:bN.setText("`"+c+"${");break;case 17:bN.setText("}"+c+"${");break;case 18:bN.setText("}"+c+"`");break}let u=bN.scan();if(u===20&&(u=bN.reScanTemplateToken(!1)),bN.isUnterminated())return bN.setText(void 0),TKe;let d;switch(u){case 15:case 16:case 17:case 18:d=bN.getTokenValue();break}return d===void 0||bN.scan()!==1?(bN.setText(void 0),TKe):(bN.setText(void 0),d)}function kx(n){return n&&sr(n)?qee(n):To(n)}function qee(n){return To(n)&-67108865}function NKe(n,c){return c|n.transformFlags&134234112}function To(n){if(!n)return 0;let c=n.transformFlags&~G2(n.kind);return Sf(n)&&NI(n.name)?NKe(n.name,c):c}function CA(n){return n?n.transformFlags:0}function RKe(n){let c=0;for(let u of n)c|=To(u);n.transformFlags=c}function G2(n){if(n>=182&&n<=205)return-2;switch(n){case 213:case 214:case 209:return-2147450880;case 267:return-1941676032;case 169: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;case 206:case 207:return-2147450880;case 216:case 238:case 234:case 354:case 217:case 108:return-2147483648;case 211:case 212:return-2147483648;default:return-2147483648}}var $ee=lxe();function ete(n){return n.flags|=16,n}var YNt={createBaseSourceFileNode:n=>ete($ee.createBaseSourceFileNode(n)),createBaseIdentifierNode:n=>ete($ee.createBaseIdentifierNode(n)),createBasePrivateIdentifierNode:n=>ete($ee.createBasePrivateIdentifierNode(n)),createBaseTokenNode:n=>ete($ee.createBaseTokenNode(n)),createBaseNode:n=>ete($ee.createBaseNode(n))},_e=dV(4,YNt),w6;function DKe(n,c,u){return new(w6||(w6=xC.getSourceMapSourceConstructor()))(n,c,u)}function Ho(n,c){if(n.original!==c&&(n.original=c,c)){let u=c.emitNode;u&&(n.emitNode=HS(u,n.emitNode))}return n}function HS(n,c){let{flags:u,internalFlags:d,leadingComments:I,trailingComments:h,commentRange:b,sourceMapRange:R,tokenSourceMapRanges:N,constantValue:V,helpers:P,startsOnNewLine:M,snippetElement:te,classThis:re,assignedName:ue}=n;if(c||(c={}),u&&(c.flags=u),d&&(c.internalFlags=d&-9),I&&(c.leadingComments=ai(I.slice(),c.leadingComments)),h&&(c.trailingComments=ai(h.slice(),c.trailingComments)),b&&(c.commentRange=b),R&&(c.sourceMapRange=R),N&&(c.tokenSourceMapRanges=xKe(N,c.tokenSourceMapRanges)),V!==void 0&&(c.constantValue=V),P)for(let Ae of P)c.helpers=sg(c.helpers,Ae);return M!==void 0&&(c.startsOnNewLine=M),te!==void 0&&(c.snippetElement=te),re&&(c.classThis=re),ue&&(c.assignedName=ue),c}function xKe(n,c){c||(c=[]);for(let u in n)c[u]=n[u];return c}function xh(n){if(n.emitNode)w.assert(!(n.emitNode.internalFlags&8),"Invalid attempt to mutate an immutable node.");else{if(dZ(n)){if(n.kind===307)return n.emitNode={annotatedNodes:[n]};let c=ls(jc(ls(n)))??w.fail("Could not determine parsed source file.");xh(c).annotatedNodes.push(n)}n.emitNode={}}return n.emitNode}function yle(n){var c,u;let d=(u=(c=ls(jc(n)))==null?void 0:c.emitNode)==null?void 0:u.annotatedNodes;if(d)for(let I of d)I.emitNode=void 0}function tte(n){let c=xh(n);return c.flags|=3072,c.leadingComments=void 0,c.trailingComments=void 0,n}function co(n,c){return xh(n).flags=c,n}function XS(n,c){let u=xh(n);return u.flags=u.flags|c,n}function rte(n,c){return xh(n).internalFlags=c,n}function eY(n,c){let u=xh(n);return u.internalFlags=u.internalFlags|c,n}function Gx(n){var c;return((c=n.emitNode)==null?void 0:c.sourceMapRange)??n}function Qg(n,c){return xh(n).sourceMapRange=c,n}function kKe(n,c){var u,d;return(d=(u=n.emitNode)==null?void 0:u.tokenSourceMapRanges)==null?void 0:d[c]}function Axe(n,c,u){let d=xh(n),I=d.tokenSourceMapRanges??(d.tokenSourceMapRanges=[]);return I[c]=u,n}function SG(n){var c;return(c=n.emitNode)==null?void 0:c.startsOnNewLine}function ble(n,c){return xh(n).startsOnNewLine=c,n}function JS(n){var c;return((c=n.emitNode)==null?void 0:c.commentRange)??n}function mA(n,c){return xh(n).commentRange=c,n}function tY(n){var c;return(c=n.emitNode)==null?void 0:c.leadingComments}function US(n,c){return xh(n).leadingComments=c,n}function i4(n,c,u,d){return US(n,Hr(tY(n),{kind:c,pos:-1,end:-1,hasTrailingNewLine:d,text:u}))}function s4(n){var c;return(c=n.emitNode)==null?void 0:c.trailingComments}function rY(n,c){return xh(n).trailingComments=c,n}function Ele(n,c,u,d){return rY(n,Hr(s4(n),{kind:c,pos:-1,end:-1,hasTrailingNewLine:d,text:u}))}function RI(n,c){US(n,tY(c)),rY(n,s4(c));let u=xh(c);return u.leadingComments=void 0,u.trailingComments=void 0,n}function o4(n){var c;return(c=n.emitNode)==null?void 0:c.constantValue}function dxe(n,c){let u=xh(n);return u.constantValue=c,n}function nY(n,c){let u=xh(n);return u.helpers=Hr(u.helpers,c),n}function EN(n,c){if(lr(c)){let u=xh(n);for(let d of c)u.helpers=sg(u.helpers,d)}return n}function iY(n,c){var u;let d=(u=n.emitNode)==null?void 0:u.helpers;return d?eA(d,c):!1}function Ble(n){var c;return(c=n.emitNode)==null?void 0:c.helpers}function xu(n,c,u){let d=n.emitNode,I=d&&d.helpers;if(!lr(I))return;let h=xh(c),b=0;for(let R=0;R0&&(I[R-b]=N)}b>0&&(I.length-=b)}function vle(n){var c;return(c=n.emitNode)==null?void 0:c.snippetElement}function Va(n,c){let u=xh(n);return u.snippetElement=c,n}function The(n){return xh(n).internalFlags|=4,n}function pxe(n,c){let u=xh(n);return u.typeNode=c,n}function fxe(n){var c;return(c=n.emitNode)==null?void 0:c.typeNode}function rT(n,c){return xh(n).identifierTypeArguments=c,n}function xZ(n){var c;return(c=n.emitNode)==null?void 0:c.identifierTypeArguments}function pV(n,c){return xh(n).autoGenerate=c,n}function Ixe(n){var c;return(c=n.emitNode)==null?void 0:c.autoGenerate}function nte(n,c){return xh(n).generatedImportReference=c,n}function $d(n){var c;return(c=n.emitNode)==null?void 0:c.generatedImportReference}var Nhe=(n=>(n.Field="f",n.Method="m",n.Accessor="a",n))(Nhe||{});function Rhe(n){let c=n.factory,u=iu(()=>rte(c.createTrue(),8)),d=iu(()=>rte(c.createFalse(),8));return{getUnscopedHelperName:I,createDecorateHelper:h,createMetadataHelper:b,createParamHelper:R,createESDecorateHelper:Ae,createRunInitializersHelper:de,createAssignHelper:Be,createAwaitHelper:Fe,createAsyncGeneratorHelper:Ne,createAsyncDelegatorHelper:Qe,createAsyncValuesHelper:De,createRestHelper:lt,createAwaiterHelper:Le,createExtendsHelper:je,createTemplateObjectHelper:st,createSpreadArrayHelper:nt,createPropKeyHelper:qe,createSetFunctionNameHelper:it,createValuesHelper:It,createReadHelper:dt,createGeneratorHelper:wt,createImportStarHelper:vt,createImportStarCallbackHelper:Ye,createImportDefaultHelper:ht,createExportStarHelper:Et,createClassPrivateFieldGetHelper:Kt,createClassPrivateFieldSetHelper:Tt,createClassPrivateFieldInHelper:Lt,createAddDisposableResourceHelper:kt,createDisposeResourcesHelper:Zt};function I(Dr){return co(c.createIdentifier(Dr),8196)}function h(Dr,jt,mr,Pt){n.requestEmitHelper(T6);let Vr=[];return Vr.push(c.createArrayLiteralExpression(Dr,!0)),Vr.push(jt),mr&&(Vr.push(mr),Pt&&Vr.push(Pt)),c.createCallExpression(I("__decorate"),void 0,Vr)}function b(Dr,jt){return n.requestEmitHelper(wle),c.createCallExpression(I("__metadata"),void 0,[c.createStringLiteral(Dr),jt])}function R(Dr,jt,mr){return n.requestEmitHelper(Dhe),un(c.createCallExpression(I("__param"),void 0,[c.createNumericLiteral(jt+""),Dr]),mr)}function N(Dr){let jt=[c.createPropertyAssignment(c.createIdentifier("kind"),c.createStringLiteral("class")),c.createPropertyAssignment(c.createIdentifier("name"),Dr.name),c.createPropertyAssignment(c.createIdentifier("metadata"),Dr.metadata)];return c.createObjectLiteralExpression(jt)}function V(Dr){let jt=Dr.computed?c.createElementAccessExpression(c.createIdentifier("obj"),Dr.name):c.createPropertyAccessExpression(c.createIdentifier("obj"),Dr.name);return c.createPropertyAssignment("get",c.createArrowFunction(void 0,void 0,[c.createParameterDeclaration(void 0,void 0,c.createIdentifier("obj"))],void 0,void 0,jt))}function P(Dr){let jt=Dr.computed?c.createElementAccessExpression(c.createIdentifier("obj"),Dr.name):c.createPropertyAccessExpression(c.createIdentifier("obj"),Dr.name);return c.createPropertyAssignment("set",c.createArrowFunction(void 0,void 0,[c.createParameterDeclaration(void 0,void 0,c.createIdentifier("obj")),c.createParameterDeclaration(void 0,void 0,c.createIdentifier("value"))],void 0,void 0,c.createBlock([c.createExpressionStatement(c.createAssignment(jt,c.createIdentifier("value")))])))}function M(Dr){let jt=Dr.computed?Dr.name:sr(Dr.name)?c.createStringLiteralFromNode(Dr.name):Dr.name;return c.createPropertyAssignment("has",c.createArrowFunction(void 0,void 0,[c.createParameterDeclaration(void 0,void 0,c.createIdentifier("obj"))],void 0,void 0,c.createBinaryExpression(jt,103,c.createIdentifier("obj"))))}function te(Dr,jt){let mr=[];return mr.push(M(Dr)),jt.get&&mr.push(V(Dr)),jt.set&&mr.push(P(Dr)),c.createObjectLiteralExpression(mr)}function re(Dr){let jt=[c.createPropertyAssignment(c.createIdentifier("kind"),c.createStringLiteral(Dr.kind)),c.createPropertyAssignment(c.createIdentifier("name"),Dr.name.computed?Dr.name.name:c.createStringLiteralFromNode(Dr.name.name)),c.createPropertyAssignment(c.createIdentifier("static"),Dr.static?c.createTrue():c.createFalse()),c.createPropertyAssignment(c.createIdentifier("private"),Dr.private?c.createTrue():c.createFalse()),c.createPropertyAssignment(c.createIdentifier("access"),te(Dr.name,Dr.access)),c.createPropertyAssignment(c.createIdentifier("metadata"),Dr.metadata)];return c.createObjectLiteralExpression(jt)}function ue(Dr){return Dr.kind==="class"?N(Dr):re(Dr)}function Ae(Dr,jt,mr,Pt,Vr,Yr){return n.requestEmitHelper(Cxe),c.createCallExpression(I("__esDecorate"),void 0,[Dr??c.createNull(),jt??c.createNull(),mr,ue(Pt),Vr,Yr])}function de(Dr,jt,mr){return n.requestEmitHelper(mxe),c.createCallExpression(I("__runInitializers"),void 0,mr?[Dr,jt,mr]:[Dr,jt])}function Be(Dr){return iA(n.getCompilerOptions())>=2?c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("Object"),"assign"),void 0,Dr):(n.requestEmitHelper(hxe),c.createCallExpression(I("__assign"),void 0,Dr))}function Fe(Dr){return n.requestEmitHelper(N6),c.createCallExpression(I("__await"),void 0,[Dr])}function Ne(Dr,jt){return n.requestEmitHelper(N6),n.requestEmitHelper(_xe),(Dr.emitNode||(Dr.emitNode={})).flags|=1572864,c.createCallExpression(I("__asyncGenerator"),void 0,[jt?c.createThis():c.createVoidZero(),c.createIdentifier("arguments"),Dr])}function Qe(Dr){return n.requestEmitHelper(N6),n.requestEmitHelper(yxe),c.createCallExpression(I("__asyncDelegator"),void 0,[Dr])}function De(Dr){return n.requestEmitHelper(bxe),c.createCallExpression(I("__asyncValues"),void 0,[Dr])}function lt(Dr,jt,mr,Pt){n.requestEmitHelper(Exe);let Vr=[],Yr=0;for(let pr=0;pr{let d="";for(let I=0;I(n[n.Unknown=0]="Unknown",n[n.EndOfFileToken=1]="EndOfFileToken",n[n.SingleLineCommentTrivia=2]="SingleLineCommentTrivia",n[n.MultiLineCommentTrivia=3]="MultiLineCommentTrivia",n[n.NewLineTrivia=4]="NewLineTrivia",n[n.WhitespaceTrivia=5]="WhitespaceTrivia",n[n.ShebangTrivia=6]="ShebangTrivia",n[n.ConflictMarkerTrivia=7]="ConflictMarkerTrivia",n[n.NonTextFileMarkerTrivia=8]="NonTextFileMarkerTrivia",n[n.NumericLiteral=9]="NumericLiteral",n[n.BigIntLiteral=10]="BigIntLiteral",n[n.StringLiteral=11]="StringLiteral",n[n.JsxText=12]="JsxText",n[n.JsxTextAllWhiteSpaces=13]="JsxTextAllWhiteSpaces",n[n.RegularExpressionLiteral=14]="RegularExpressionLiteral",n[n.NoSubstitutionTemplateLiteral=15]="NoSubstitutionTemplateLiteral",n[n.TemplateHead=16]="TemplateHead",n[n.TemplateMiddle=17]="TemplateMiddle",n[n.TemplateTail=18]="TemplateTail",n[n.OpenBraceToken=19]="OpenBraceToken",n[n.CloseBraceToken=20]="CloseBraceToken",n[n.OpenParenToken=21]="OpenParenToken",n[n.CloseParenToken=22]="CloseParenToken",n[n.OpenBracketToken=23]="OpenBracketToken",n[n.CloseBracketToken=24]="CloseBracketToken",n[n.DotToken=25]="DotToken",n[n.DotDotDotToken=26]="DotDotDotToken",n[n.SemicolonToken=27]="SemicolonToken",n[n.CommaToken=28]="CommaToken",n[n.QuestionDotToken=29]="QuestionDotToken",n[n.LessThanToken=30]="LessThanToken",n[n.LessThanSlashToken=31]="LessThanSlashToken",n[n.GreaterThanToken=32]="GreaterThanToken",n[n.LessThanEqualsToken=33]="LessThanEqualsToken",n[n.GreaterThanEqualsToken=34]="GreaterThanEqualsToken",n[n.EqualsEqualsToken=35]="EqualsEqualsToken",n[n.ExclamationEqualsToken=36]="ExclamationEqualsToken",n[n.EqualsEqualsEqualsToken=37]="EqualsEqualsEqualsToken",n[n.ExclamationEqualsEqualsToken=38]="ExclamationEqualsEqualsToken",n[n.EqualsGreaterThanToken=39]="EqualsGreaterThanToken",n[n.PlusToken=40]="PlusToken",n[n.MinusToken=41]="MinusToken",n[n.AsteriskToken=42]="AsteriskToken",n[n.AsteriskAsteriskToken=43]="AsteriskAsteriskToken",n[n.SlashToken=44]="SlashToken",n[n.PercentToken=45]="PercentToken",n[n.PlusPlusToken=46]="PlusPlusToken",n[n.MinusMinusToken=47]="MinusMinusToken",n[n.LessThanLessThanToken=48]="LessThanLessThanToken",n[n.GreaterThanGreaterThanToken=49]="GreaterThanGreaterThanToken",n[n.GreaterThanGreaterThanGreaterThanToken=50]="GreaterThanGreaterThanGreaterThanToken",n[n.AmpersandToken=51]="AmpersandToken",n[n.BarToken=52]="BarToken",n[n.CaretToken=53]="CaretToken",n[n.ExclamationToken=54]="ExclamationToken",n[n.TildeToken=55]="TildeToken",n[n.AmpersandAmpersandToken=56]="AmpersandAmpersandToken",n[n.BarBarToken=57]="BarBarToken",n[n.QuestionToken=58]="QuestionToken",n[n.ColonToken=59]="ColonToken",n[n.AtToken=60]="AtToken",n[n.QuestionQuestionToken=61]="QuestionQuestionToken",n[n.BacktickToken=62]="BacktickToken",n[n.HashToken=63]="HashToken",n[n.EqualsToken=64]="EqualsToken",n[n.PlusEqualsToken=65]="PlusEqualsToken",n[n.MinusEqualsToken=66]="MinusEqualsToken",n[n.AsteriskEqualsToken=67]="AsteriskEqualsToken",n[n.AsteriskAsteriskEqualsToken=68]="AsteriskAsteriskEqualsToken",n[n.SlashEqualsToken=69]="SlashEqualsToken",n[n.PercentEqualsToken=70]="PercentEqualsToken",n[n.LessThanLessThanEqualsToken=71]="LessThanLessThanEqualsToken",n[n.GreaterThanGreaterThanEqualsToken=72]="GreaterThanGreaterThanEqualsToken",n[n.GreaterThanGreaterThanGreaterThanEqualsToken=73]="GreaterThanGreaterThanGreaterThanEqualsToken",n[n.AmpersandEqualsToken=74]="AmpersandEqualsToken",n[n.BarEqualsToken=75]="BarEqualsToken",n[n.BarBarEqualsToken=76]="BarBarEqualsToken",n[n.AmpersandAmpersandEqualsToken=77]="AmpersandAmpersandEqualsToken",n[n.QuestionQuestionEqualsToken=78]="QuestionQuestionEqualsToken",n[n.CaretEqualsToken=79]="CaretEqualsToken",n[n.Identifier=80]="Identifier",n[n.PrivateIdentifier=81]="PrivateIdentifier",n[n.JSDocCommentTextToken=82]="JSDocCommentTextToken",n[n.BreakKeyword=83]="BreakKeyword",n[n.CaseKeyword=84]="CaseKeyword",n[n.CatchKeyword=85]="CatchKeyword",n[n.ClassKeyword=86]="ClassKeyword",n[n.ConstKeyword=87]="ConstKeyword",n[n.ContinueKeyword=88]="ContinueKeyword",n[n.DebuggerKeyword=89]="DebuggerKeyword",n[n.DefaultKeyword=90]="DefaultKeyword",n[n.DeleteKeyword=91]="DeleteKeyword",n[n.DoKeyword=92]="DoKeyword",n[n.ElseKeyword=93]="ElseKeyword",n[n.EnumKeyword=94]="EnumKeyword",n[n.ExportKeyword=95]="ExportKeyword",n[n.ExtendsKeyword=96]="ExtendsKeyword",n[n.FalseKeyword=97]="FalseKeyword",n[n.FinallyKeyword=98]="FinallyKeyword",n[n.ForKeyword=99]="ForKeyword",n[n.FunctionKeyword=100]="FunctionKeyword",n[n.IfKeyword=101]="IfKeyword",n[n.ImportKeyword=102]="ImportKeyword",n[n.InKeyword=103]="InKeyword",n[n.InstanceOfKeyword=104]="InstanceOfKeyword",n[n.NewKeyword=105]="NewKeyword",n[n.NullKeyword=106]="NullKeyword",n[n.ReturnKeyword=107]="ReturnKeyword",n[n.SuperKeyword=108]="SuperKeyword",n[n.SwitchKeyword=109]="SwitchKeyword",n[n.ThisKeyword=110]="ThisKeyword",n[n.ThrowKeyword=111]="ThrowKeyword",n[n.TrueKeyword=112]="TrueKeyword",n[n.TryKeyword=113]="TryKeyword",n[n.TypeOfKeyword=114]="TypeOfKeyword",n[n.VarKeyword=115]="VarKeyword",n[n.VoidKeyword=116]="VoidKeyword",n[n.WhileKeyword=117]="WhileKeyword",n[n.WithKeyword=118]="WithKeyword",n[n.ImplementsKeyword=119]="ImplementsKeyword",n[n.InterfaceKeyword=120]="InterfaceKeyword",n[n.LetKeyword=121]="LetKeyword",n[n.PackageKeyword=122]="PackageKeyword",n[n.PrivateKeyword=123]="PrivateKeyword",n[n.ProtectedKeyword=124]="ProtectedKeyword",n[n.PublicKeyword=125]="PublicKeyword",n[n.StaticKeyword=126]="StaticKeyword",n[n.YieldKeyword=127]="YieldKeyword",n[n.AbstractKeyword=128]="AbstractKeyword",n[n.AccessorKeyword=129]="AccessorKeyword",n[n.AsKeyword=130]="AsKeyword",n[n.AssertsKeyword=131]="AssertsKeyword",n[n.AssertKeyword=132]="AssertKeyword",n[n.AnyKeyword=133]="AnyKeyword",n[n.AsyncKeyword=134]="AsyncKeyword",n[n.AwaitKeyword=135]="AwaitKeyword",n[n.BooleanKeyword=136]="BooleanKeyword",n[n.ConstructorKeyword=137]="ConstructorKeyword",n[n.DeclareKeyword=138]="DeclareKeyword",n[n.GetKeyword=139]="GetKeyword",n[n.InferKeyword=140]="InferKeyword",n[n.IntrinsicKeyword=141]="IntrinsicKeyword",n[n.IsKeyword=142]="IsKeyword",n[n.KeyOfKeyword=143]="KeyOfKeyword",n[n.ModuleKeyword=144]="ModuleKeyword",n[n.NamespaceKeyword=145]="NamespaceKeyword",n[n.NeverKeyword=146]="NeverKeyword",n[n.OutKeyword=147]="OutKeyword",n[n.ReadonlyKeyword=148]="ReadonlyKeyword",n[n.RequireKeyword=149]="RequireKeyword",n[n.NumberKeyword=150]="NumberKeyword",n[n.ObjectKeyword=151]="ObjectKeyword",n[n.SatisfiesKeyword=152]="SatisfiesKeyword",n[n.SetKeyword=153]="SetKeyword",n[n.StringKeyword=154]="StringKeyword",n[n.SymbolKeyword=155]="SymbolKeyword",n[n.TypeKeyword=156]="TypeKeyword",n[n.UndefinedKeyword=157]="UndefinedKeyword",n[n.UniqueKeyword=158]="UniqueKeyword",n[n.UnknownKeyword=159]="UnknownKeyword",n[n.UsingKeyword=160]="UsingKeyword",n[n.FromKeyword=161]="FromKeyword",n[n.GlobalKeyword=162]="GlobalKeyword",n[n.BigIntKeyword=163]="BigIntKeyword",n[n.OverrideKeyword=164]="OverrideKeyword",n[n.OfKeyword=165]="OfKeyword",n[n.QualifiedName=166]="QualifiedName",n[n.ComputedPropertyName=167]="ComputedPropertyName",n[n.TypeParameter=168]="TypeParameter",n[n.Parameter=169]="Parameter",n[n.Decorator=170]="Decorator",n[n.PropertySignature=171]="PropertySignature",n[n.PropertyDeclaration=172]="PropertyDeclaration",n[n.MethodSignature=173]="MethodSignature",n[n.MethodDeclaration=174]="MethodDeclaration",n[n.ClassStaticBlockDeclaration=175]="ClassStaticBlockDeclaration",n[n.Constructor=176]="Constructor",n[n.GetAccessor=177]="GetAccessor",n[n.SetAccessor=178]="SetAccessor",n[n.CallSignature=179]="CallSignature",n[n.ConstructSignature=180]="ConstructSignature",n[n.IndexSignature=181]="IndexSignature",n[n.TypePredicate=182]="TypePredicate",n[n.TypeReference=183]="TypeReference",n[n.FunctionType=184]="FunctionType",n[n.ConstructorType=185]="ConstructorType",n[n.TypeQuery=186]="TypeQuery",n[n.TypeLiteral=187]="TypeLiteral",n[n.ArrayType=188]="ArrayType",n[n.TupleType=189]="TupleType",n[n.OptionalType=190]="OptionalType",n[n.RestType=191]="RestType",n[n.UnionType=192]="UnionType",n[n.IntersectionType=193]="IntersectionType",n[n.ConditionalType=194]="ConditionalType",n[n.InferType=195]="InferType",n[n.ParenthesizedType=196]="ParenthesizedType",n[n.ThisType=197]="ThisType",n[n.TypeOperator=198]="TypeOperator",n[n.IndexedAccessType=199]="IndexedAccessType",n[n.MappedType=200]="MappedType",n[n.LiteralType=201]="LiteralType",n[n.NamedTupleMember=202]="NamedTupleMember",n[n.TemplateLiteralType=203]="TemplateLiteralType",n[n.TemplateLiteralTypeSpan=204]="TemplateLiteralTypeSpan",n[n.ImportType=205]="ImportType",n[n.ObjectBindingPattern=206]="ObjectBindingPattern",n[n.ArrayBindingPattern=207]="ArrayBindingPattern",n[n.BindingElement=208]="BindingElement",n[n.ArrayLiteralExpression=209]="ArrayLiteralExpression",n[n.ObjectLiteralExpression=210]="ObjectLiteralExpression",n[n.PropertyAccessExpression=211]="PropertyAccessExpression",n[n.ElementAccessExpression=212]="ElementAccessExpression",n[n.CallExpression=213]="CallExpression",n[n.NewExpression=214]="NewExpression",n[n.TaggedTemplateExpression=215]="TaggedTemplateExpression",n[n.TypeAssertionExpression=216]="TypeAssertionExpression",n[n.ParenthesizedExpression=217]="ParenthesizedExpression",n[n.FunctionExpression=218]="FunctionExpression",n[n.ArrowFunction=219]="ArrowFunction",n[n.DeleteExpression=220]="DeleteExpression",n[n.TypeOfExpression=221]="TypeOfExpression",n[n.VoidExpression=222]="VoidExpression",n[n.AwaitExpression=223]="AwaitExpression",n[n.PrefixUnaryExpression=224]="PrefixUnaryExpression",n[n.PostfixUnaryExpression=225]="PostfixUnaryExpression",n[n.BinaryExpression=226]="BinaryExpression",n[n.ConditionalExpression=227]="ConditionalExpression",n[n.TemplateExpression=228]="TemplateExpression",n[n.YieldExpression=229]="YieldExpression",n[n.SpreadElement=230]="SpreadElement",n[n.ClassExpression=231]="ClassExpression",n[n.OmittedExpression=232]="OmittedExpression",n[n.ExpressionWithTypeArguments=233]="ExpressionWithTypeArguments",n[n.AsExpression=234]="AsExpression",n[n.NonNullExpression=235]="NonNullExpression",n[n.MetaProperty=236]="MetaProperty",n[n.SyntheticExpression=237]="SyntheticExpression",n[n.SatisfiesExpression=238]="SatisfiesExpression",n[n.TemplateSpan=239]="TemplateSpan",n[n.SemicolonClassElement=240]="SemicolonClassElement",n[n.Block=241]="Block",n[n.EmptyStatement=242]="EmptyStatement",n[n.VariableStatement=243]="VariableStatement",n[n.ExpressionStatement=244]="ExpressionStatement",n[n.IfStatement=245]="IfStatement",n[n.DoStatement=246]="DoStatement",n[n.WhileStatement=247]="WhileStatement",n[n.ForStatement=248]="ForStatement",n[n.ForInStatement=249]="ForInStatement",n[n.ForOfStatement=250]="ForOfStatement",n[n.ContinueStatement=251]="ContinueStatement",n[n.BreakStatement=252]="BreakStatement",n[n.ReturnStatement=253]="ReturnStatement",n[n.WithStatement=254]="WithStatement",n[n.SwitchStatement=255]="SwitchStatement",n[n.LabeledStatement=256]="LabeledStatement",n[n.ThrowStatement=257]="ThrowStatement",n[n.TryStatement=258]="TryStatement",n[n.DebuggerStatement=259]="DebuggerStatement",n[n.VariableDeclaration=260]="VariableDeclaration",n[n.VariableDeclarationList=261]="VariableDeclarationList",n[n.FunctionDeclaration=262]="FunctionDeclaration",n[n.ClassDeclaration=263]="ClassDeclaration",n[n.InterfaceDeclaration=264]="InterfaceDeclaration",n[n.TypeAliasDeclaration=265]="TypeAliasDeclaration",n[n.EnumDeclaration=266]="EnumDeclaration",n[n.ModuleDeclaration=267]="ModuleDeclaration",n[n.ModuleBlock=268]="ModuleBlock",n[n.CaseBlock=269]="CaseBlock",n[n.NamespaceExportDeclaration=270]="NamespaceExportDeclaration",n[n.ImportEqualsDeclaration=271]="ImportEqualsDeclaration",n[n.ImportDeclaration=272]="ImportDeclaration",n[n.ImportClause=273]="ImportClause",n[n.NamespaceImport=274]="NamespaceImport",n[n.NamedImports=275]="NamedImports",n[n.ImportSpecifier=276]="ImportSpecifier",n[n.ExportAssignment=277]="ExportAssignment",n[n.ExportDeclaration=278]="ExportDeclaration",n[n.NamedExports=279]="NamedExports",n[n.NamespaceExport=280]="NamespaceExport",n[n.ExportSpecifier=281]="ExportSpecifier",n[n.MissingDeclaration=282]="MissingDeclaration",n[n.ExternalModuleReference=283]="ExternalModuleReference",n[n.JsxElement=284]="JsxElement",n[n.JsxSelfClosingElement=285]="JsxSelfClosingElement",n[n.JsxOpeningElement=286]="JsxOpeningElement",n[n.JsxClosingElement=287]="JsxClosingElement",n[n.JsxFragment=288]="JsxFragment",n[n.JsxOpeningFragment=289]="JsxOpeningFragment",n[n.JsxClosingFragment=290]="JsxClosingFragment",n[n.JsxAttribute=291]="JsxAttribute",n[n.JsxAttributes=292]="JsxAttributes",n[n.JsxSpreadAttribute=293]="JsxSpreadAttribute",n[n.JsxExpression=294]="JsxExpression",n[n.JsxNamespacedName=295]="JsxNamespacedName",n[n.CaseClause=296]="CaseClause",n[n.DefaultClause=297]="DefaultClause",n[n.HeritageClause=298]="HeritageClause",n[n.CatchClause=299]="CatchClause",n[n.ImportAttributes=300]="ImportAttributes",n[n.ImportAttribute=301]="ImportAttribute",n[n.AssertClause=300]="AssertClause",n[n.AssertEntry=301]="AssertEntry",n[n.ImportTypeAssertionContainer=302]="ImportTypeAssertionContainer",n[n.PropertyAssignment=303]="PropertyAssignment",n[n.ShorthandPropertyAssignment=304]="ShorthandPropertyAssignment",n[n.SpreadAssignment=305]="SpreadAssignment",n[n.EnumMember=306]="EnumMember",n[n.SourceFile=307]="SourceFile",n[n.Bundle=308]="Bundle",n[n.JSDocTypeExpression=309]="JSDocTypeExpression",n[n.JSDocNameReference=310]="JSDocNameReference",n[n.JSDocMemberName=311]="JSDocMemberName",n[n.JSDocAllType=312]="JSDocAllType",n[n.JSDocUnknownType=313]="JSDocUnknownType",n[n.JSDocNullableType=314]="JSDocNullableType",n[n.JSDocNonNullableType=315]="JSDocNonNullableType",n[n.JSDocOptionalType=316]="JSDocOptionalType",n[n.JSDocFunctionType=317]="JSDocFunctionType",n[n.JSDocVariadicType=318]="JSDocVariadicType",n[n.JSDocNamepathType=319]="JSDocNamepathType",n[n.JSDoc=320]="JSDoc",n[n.JSDocComment=320]="JSDocComment",n[n.JSDocText=321]="JSDocText",n[n.JSDocTypeLiteral=322]="JSDocTypeLiteral",n[n.JSDocSignature=323]="JSDocSignature",n[n.JSDocLink=324]="JSDocLink",n[n.JSDocLinkCode=325]="JSDocLinkCode",n[n.JSDocLinkPlain=326]="JSDocLinkPlain",n[n.JSDocTag=327]="JSDocTag",n[n.JSDocAugmentsTag=328]="JSDocAugmentsTag",n[n.JSDocImplementsTag=329]="JSDocImplementsTag",n[n.JSDocAuthorTag=330]="JSDocAuthorTag",n[n.JSDocDeprecatedTag=331]="JSDocDeprecatedTag",n[n.JSDocClassTag=332]="JSDocClassTag",n[n.JSDocPublicTag=333]="JSDocPublicTag",n[n.JSDocPrivateTag=334]="JSDocPrivateTag",n[n.JSDocProtectedTag=335]="JSDocProtectedTag",n[n.JSDocReadonlyTag=336]="JSDocReadonlyTag",n[n.JSDocOverrideTag=337]="JSDocOverrideTag",n[n.JSDocCallbackTag=338]="JSDocCallbackTag",n[n.JSDocOverloadTag=339]="JSDocOverloadTag",n[n.JSDocEnumTag=340]="JSDocEnumTag",n[n.JSDocParameterTag=341]="JSDocParameterTag",n[n.JSDocReturnTag=342]="JSDocReturnTag",n[n.JSDocThisTag=343]="JSDocThisTag",n[n.JSDocTypeTag=344]="JSDocTypeTag",n[n.JSDocTemplateTag=345]="JSDocTemplateTag",n[n.JSDocTypedefTag=346]="JSDocTypedefTag",n[n.JSDocSeeTag=347]="JSDocSeeTag",n[n.JSDocPropertyTag=348]="JSDocPropertyTag",n[n.JSDocThrowsTag=349]="JSDocThrowsTag",n[n.JSDocSatisfiesTag=350]="JSDocSatisfiesTag",n[n.JSDocImportTag=351]="JSDocImportTag",n[n.SyntaxList=352]="SyntaxList",n[n.NotEmittedStatement=353]="NotEmittedStatement",n[n.PartiallyEmittedExpression=354]="PartiallyEmittedExpression",n[n.CommaListExpression=355]="CommaListExpression",n[n.SyntheticReferenceExpression=356]="SyntheticReferenceExpression",n[n.Count=357]="Count",n[n.FirstAssignment=64]="FirstAssignment",n[n.LastAssignment=79]="LastAssignment",n[n.FirstCompoundAssignment=65]="FirstCompoundAssignment",n[n.LastCompoundAssignment=79]="LastCompoundAssignment",n[n.FirstReservedWord=83]="FirstReservedWord",n[n.LastReservedWord=118]="LastReservedWord",n[n.FirstKeyword=83]="FirstKeyword",n[n.LastKeyword=165]="LastKeyword",n[n.FirstFutureReservedWord=119]="FirstFutureReservedWord",n[n.LastFutureReservedWord=127]="LastFutureReservedWord",n[n.FirstTypeNode=182]="FirstTypeNode",n[n.LastTypeNode=205]="LastTypeNode",n[n.FirstPunctuation=19]="FirstPunctuation",n[n.LastPunctuation=79]="LastPunctuation",n[n.FirstToken=0]="FirstToken",n[n.LastToken=165]="LastToken",n[n.FirstTriviaToken=2]="FirstTriviaToken",n[n.LastTriviaToken=7]="LastTriviaToken",n[n.FirstLiteralToken=9]="FirstLiteralToken",n[n.LastLiteralToken=15]="LastLiteralToken",n[n.FirstTemplateToken=15]="FirstTemplateToken",n[n.LastTemplateToken=18]="LastTemplateToken",n[n.FirstBinaryOperator=30]="FirstBinaryOperator",n[n.LastBinaryOperator=79]="LastBinaryOperator",n[n.FirstStatement=243]="FirstStatement",n[n.LastStatement=259]="LastStatement",n[n.FirstNode=166]="FirstNode",n[n.FirstJSDocNode=309]="FirstJSDocNode",n[n.LastJSDocNode=351]="LastJSDocNode",n[n.FirstJSDocTagNode=327]="FirstJSDocTagNode",n[n.LastJSDocTagNode=351]="LastJSDocTagNode",n[n.FirstContextualKeyword=128]="FirstContextualKeyword",n[n.LastContextualKeyword=165]="LastContextualKeyword",n))(A2||{}),vE=(n=>(n[n.None=0]="None",n[n.Let=1]="Let",n[n.Const=2]="Const",n[n.Using=4]="Using",n[n.AwaitUsing=6]="AwaitUsing",n[n.NestedNamespace=8]="NestedNamespace",n[n.Synthesized=16]="Synthesized",n[n.Namespace=32]="Namespace",n[n.OptionalChain=64]="OptionalChain",n[n.ExportContext=128]="ExportContext",n[n.ContainsThis=256]="ContainsThis",n[n.HasImplicitReturn=512]="HasImplicitReturn",n[n.HasExplicitReturn=1024]="HasExplicitReturn",n[n.GlobalAugmentation=2048]="GlobalAugmentation",n[n.HasAsyncFunctions=4096]="HasAsyncFunctions",n[n.DisallowInContext=8192]="DisallowInContext",n[n.YieldContext=16384]="YieldContext",n[n.DecoratorContext=32768]="DecoratorContext",n[n.AwaitContext=65536]="AwaitContext",n[n.DisallowConditionalTypesContext=131072]="DisallowConditionalTypesContext",n[n.ThisNodeHasError=262144]="ThisNodeHasError",n[n.JavaScriptFile=524288]="JavaScriptFile",n[n.ThisNodeOrAnySubNodesHasError=1048576]="ThisNodeOrAnySubNodesHasError",n[n.HasAggregatedChildData=2097152]="HasAggregatedChildData",n[n.PossiblyContainsDynamicImport=4194304]="PossiblyContainsDynamicImport",n[n.PossiblyContainsImportMeta=8388608]="PossiblyContainsImportMeta",n[n.JSDoc=16777216]="JSDoc",n[n.Ambient=33554432]="Ambient",n[n.InWithStatement=67108864]="InWithStatement",n[n.JsonFile=134217728]="JsonFile",n[n.TypeCached=268435456]="TypeCached",n[n.Deprecated=536870912]="Deprecated",n[n.BlockScoped=7]="BlockScoped",n[n.Constant=6]="Constant",n[n.ReachabilityCheckFlags=1536]="ReachabilityCheckFlags",n[n.ReachabilityAndEmitFlags=5632]="ReachabilityAndEmitFlags",n[n.ContextFlags=101441536]="ContextFlags",n[n.TypeExcludesFlags=81920]="TypeExcludesFlags",n[n.PermanentlySetIncrementalFlags=12582912]="PermanentlySetIncrementalFlags",n[n.IdentifierHasExtendedUnicodeEscape=256]="IdentifierHasExtendedUnicodeEscape",n[n.IdentifierIsInJSDocNamespace=4096]="IdentifierIsInJSDocNamespace",n))(vE||{}),G0=(n=>(n[n.None=0]="None",n[n.Public=1]="Public",n[n.Private=2]="Private",n[n.Protected=4]="Protected",n[n.Readonly=8]="Readonly",n[n.Override=16]="Override",n[n.Export=32]="Export",n[n.Abstract=64]="Abstract",n[n.Ambient=128]="Ambient",n[n.Static=256]="Static",n[n.Accessor=512]="Accessor",n[n.Async=1024]="Async",n[n.Default=2048]="Default",n[n.Const=4096]="Const",n[n.In=8192]="In",n[n.Out=16384]="Out",n[n.Decorator=32768]="Decorator",n[n.Deprecated=65536]="Deprecated",n[n.JSDocPublic=8388608]="JSDocPublic",n[n.JSDocPrivate=16777216]="JSDocPrivate",n[n.JSDocProtected=33554432]="JSDocProtected",n[n.JSDocReadonly=67108864]="JSDocReadonly",n[n.JSDocOverride=134217728]="JSDocOverride",n[n.SyntacticOrJSDocModifiers=31]="SyntacticOrJSDocModifiers",n[n.SyntacticOnlyModifiers=65504]="SyntacticOnlyModifiers",n[n.SyntacticModifiers=65535]="SyntacticModifiers",n[n.JSDocCacheOnlyModifiers=260046848]="JSDocCacheOnlyModifiers",n[n.JSDocOnlyModifiers=65536]="JSDocOnlyModifiers",n[n.NonCacheOnlyModifiers=131071]="NonCacheOnlyModifiers",n[n.HasComputedJSDocModifiers=268435456]="HasComputedJSDocModifiers",n[n.HasComputedFlags=536870912]="HasComputedFlags",n[n.AccessibilityModifier=7]="AccessibilityModifier",n[n.ParameterPropertyModifier=31]="ParameterPropertyModifier",n[n.NonPublicAccessibilityModifier=6]="NonPublicAccessibilityModifier",n[n.TypeScriptModifier=28895]="TypeScriptModifier",n[n.ExportDefault=2080]="ExportDefault",n[n.All=131071]="All",n[n.Modifier=98303]="Modifier",n))(G0||{}),hS=(n=>(n[n.None=0]="None",n[n.IntrinsicNamedElement=1]="IntrinsicNamedElement",n[n.IntrinsicIndexedElement=2]="IntrinsicIndexedElement",n[n.IntrinsicElement=3]="IntrinsicElement",n))(hS||{}),C1=(n=>(n[n.None=0]="None",n[n.Succeeded=1]="Succeeded",n[n.Failed=2]="Failed",n[n.Reported=4]="Reported",n[n.ReportsUnmeasurable=8]="ReportsUnmeasurable",n[n.ReportsUnreliable=16]="ReportsUnreliable",n[n.ReportsMask=24]="ReportsMask",n))(C1||{}),pc=(n=>(n[n.None=0]="None",n[n.Auto=1]="Auto",n[n.Loop=2]="Loop",n[n.Unique=3]="Unique",n[n.Node=4]="Node",n[n.KindMask=7]="KindMask",n[n.ReservedInNestedScopes=8]="ReservedInNestedScopes",n[n.Optimistic=16]="Optimistic",n[n.FileLevel=32]="FileLevel",n[n.AllowNameSubstitution=64]="AllowNameSubstitution",n))(pc||{}),at=(n=>(n[n.None=0]="None",n[n.HasIndices=1]="HasIndices",n[n.Global=2]="Global",n[n.IgnoreCase=4]="IgnoreCase",n[n.Multiline=8]="Multiline",n[n.DotAll=16]="DotAll",n[n.Unicode=32]="Unicode",n[n.UnicodeSets=64]="UnicodeSets",n[n.Sticky=128]="Sticky",n[n.AnyUnicodeMode=96]="AnyUnicodeMode",n[n.Modifiers=28]="Modifiers",n))(at||{}),$t=(n=>(n[n.None=0]="None",n[n.PrecedingLineBreak=1]="PrecedingLineBreak",n[n.PrecedingJSDocComment=2]="PrecedingJSDocComment",n[n.Unterminated=4]="Unterminated",n[n.ExtendedUnicodeEscape=8]="ExtendedUnicodeEscape",n[n.Scientific=16]="Scientific",n[n.Octal=32]="Octal",n[n.HexSpecifier=64]="HexSpecifier",n[n.BinarySpecifier=128]="BinarySpecifier",n[n.OctalSpecifier=256]="OctalSpecifier",n[n.ContainsSeparator=512]="ContainsSeparator",n[n.UnicodeEscape=1024]="UnicodeEscape",n[n.ContainsInvalidEscape=2048]="ContainsInvalidEscape",n[n.HexEscape=4096]="HexEscape",n[n.ContainsLeadingZero=8192]="ContainsLeadingZero",n[n.ContainsInvalidSeparator=16384]="ContainsInvalidSeparator",n[n.BinaryOrOctalSpecifier=384]="BinaryOrOctalSpecifier",n[n.WithSpecifier=448]="WithSpecifier",n[n.StringLiteralFlags=7176]="StringLiteralFlags",n[n.NumericLiteralFlags=25584]="NumericLiteralFlags",n[n.TemplateLiteralLikeFlags=7176]="TemplateLiteralLikeFlags",n[n.IsInvalid=26656]="IsInvalid",n))($t||{}),Wr=(n=>(n[n.Unreachable=1]="Unreachable",n[n.Start=2]="Start",n[n.BranchLabel=4]="BranchLabel",n[n.LoopLabel=8]="LoopLabel",n[n.Assignment=16]="Assignment",n[n.TrueCondition=32]="TrueCondition",n[n.FalseCondition=64]="FalseCondition",n[n.SwitchClause=128]="SwitchClause",n[n.ArrayMutation=256]="ArrayMutation",n[n.Call=512]="Call",n[n.ReduceLabel=1024]="ReduceLabel",n[n.Referenced=2048]="Referenced",n[n.Shared=4096]="Shared",n[n.Label=12]="Label",n[n.Condition=96]="Condition",n))(Wr||{}),vn=(n=>(n[n.ExpectError=0]="ExpectError",n[n.Ignore=1]="Ignore",n))(vn||{}),os=class{},So=(n=>(n[n.RootFile=0]="RootFile",n[n.SourceFromProjectReference=1]="SourceFromProjectReference",n[n.OutputFromProjectReference=2]="OutputFromProjectReference",n[n.Import=3]="Import",n[n.ReferenceFile=4]="ReferenceFile",n[n.TypeReferenceDirective=5]="TypeReferenceDirective",n[n.LibFile=6]="LibFile",n[n.LibReferenceDirective=7]="LibReferenceDirective",n[n.AutomaticTypeDirectiveFile=8]="AutomaticTypeDirectiveFile",n))(So||{}),Ig=(n=>(n[n.FilePreprocessingLibReferenceDiagnostic=0]="FilePreprocessingLibReferenceDiagnostic",n[n.FilePreprocessingFileExplainingDiagnostic=1]="FilePreprocessingFileExplainingDiagnostic",n[n.ResolutionDiagnostics=2]="ResolutionDiagnostics",n))(Ig||{}),hg=(n=>(n[n.Js=0]="Js",n[n.Dts=1]="Dts",n[n.BuilderSignature=2]="BuilderSignature",n))(hg||{}),Af=(n=>(n[n.Not=0]="Not",n[n.SafeModules=1]="SafeModules",n[n.Completely=2]="Completely",n))(Af||{}),nI=(n=>(n[n.Success=0]="Success",n[n.DiagnosticsPresent_OutputsSkipped=1]="DiagnosticsPresent_OutputsSkipped",n[n.DiagnosticsPresent_OutputsGenerated=2]="DiagnosticsPresent_OutputsGenerated",n[n.InvalidProject_OutputsSkipped=3]="InvalidProject_OutputsSkipped",n[n.ProjectReferenceCycle_OutputsSkipped=4]="ProjectReferenceCycle_OutputsSkipped",n))(nI||{}),AC=(n=>(n[n.Ok=0]="Ok",n[n.NeedsOverride=1]="NeedsOverride",n[n.HasInvalidOverride=2]="HasInvalidOverride",n))(AC||{}),Db=(n=>(n[n.None=0]="None",n[n.Literal=1]="Literal",n[n.Subtype=2]="Subtype",n))(Db||{}),qT=(n=>(n[n.None=0]="None",n[n.NoSupertypeReduction=1]="NoSupertypeReduction",n[n.NoConstraintReduction=2]="NoConstraintReduction",n))(qT||{}),mv=(n=>(n[n.None=0]="None",n[n.Signature=1]="Signature",n[n.NoConstraints=2]="NoConstraints",n[n.Completions=4]="Completions",n[n.SkipBindingPatterns=8]="SkipBindingPatterns",n))(mv||{}),Ow=(n=>(n[n.None=0]="None",n[n.NoTruncation=1]="NoTruncation",n[n.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",n[n.GenerateNamesForShadowedTypeParams=4]="GenerateNamesForShadowedTypeParams",n[n.UseStructuralFallback=8]="UseStructuralFallback",n[n.ForbidIndexedAccessSymbolReferences=16]="ForbidIndexedAccessSymbolReferences",n[n.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",n[n.UseFullyQualifiedType=64]="UseFullyQualifiedType",n[n.UseOnlyExternalAliasing=128]="UseOnlyExternalAliasing",n[n.SuppressAnyReturnType=256]="SuppressAnyReturnType",n[n.WriteTypeParametersInQualifiedName=512]="WriteTypeParametersInQualifiedName",n[n.MultilineObjectLiterals=1024]="MultilineObjectLiterals",n[n.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",n[n.UseTypeOfFunction=4096]="UseTypeOfFunction",n[n.OmitParameterModifiers=8192]="OmitParameterModifiers",n[n.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",n[n.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",n[n.NoTypeReduction=536870912]="NoTypeReduction",n[n.OmitThisParameter=33554432]="OmitThisParameter",n[n.AllowThisInObjectLiteral=32768]="AllowThisInObjectLiteral",n[n.AllowQualifiedNameInPlaceOfIdentifier=65536]="AllowQualifiedNameInPlaceOfIdentifier",n[n.AllowAnonymousIdentifier=131072]="AllowAnonymousIdentifier",n[n.AllowEmptyUnionOrIntersection=262144]="AllowEmptyUnionOrIntersection",n[n.AllowEmptyTuple=524288]="AllowEmptyTuple",n[n.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",n[n.AllowEmptyIndexInfoType=2097152]="AllowEmptyIndexInfoType",n[n.WriteComputedProps=1073741824]="WriteComputedProps",n[n.NoSyntacticPrinter=-2147483648]="NoSyntacticPrinter",n[n.AllowNodeModulesRelativePaths=67108864]="AllowNodeModulesRelativePaths",n[n.DoNotIncludeSymbolChain=134217728]="DoNotIncludeSymbolChain",n[n.AllowUnresolvedNames=1]="AllowUnresolvedNames",n[n.IgnoreErrors=70221824]="IgnoreErrors",n[n.InObjectTypeLiteral=4194304]="InObjectTypeLiteral",n[n.InTypeAlias=8388608]="InTypeAlias",n[n.InInitialEntityName=16777216]="InInitialEntityName",n))(Ow||{}),Hy=(n=>(n[n.None=0]="None",n[n.NoTruncation=1]="NoTruncation",n[n.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",n[n.GenerateNamesForShadowedTypeParams=4]="GenerateNamesForShadowedTypeParams",n[n.UseStructuralFallback=8]="UseStructuralFallback",n[n.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",n[n.UseFullyQualifiedType=64]="UseFullyQualifiedType",n[n.SuppressAnyReturnType=256]="SuppressAnyReturnType",n[n.MultilineObjectLiterals=1024]="MultilineObjectLiterals",n[n.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",n[n.UseTypeOfFunction=4096]="UseTypeOfFunction",n[n.OmitParameterModifiers=8192]="OmitParameterModifiers",n[n.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",n[n.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",n[n.NoTypeReduction=536870912]="NoTypeReduction",n[n.OmitThisParameter=33554432]="OmitThisParameter",n[n.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",n[n.AddUndefined=131072]="AddUndefined",n[n.WriteArrowStyleSignature=262144]="WriteArrowStyleSignature",n[n.InArrayType=524288]="InArrayType",n[n.InElementType=2097152]="InElementType",n[n.InFirstTypeArgument=4194304]="InFirstTypeArgument",n[n.InTypeAlias=8388608]="InTypeAlias",n[n.NodeBuilderFlagsMask=848330095]="NodeBuilderFlagsMask",n))(Hy||{}),m1=(n=>(n[n.None=0]="None",n[n.WriteTypeParametersOrArguments=1]="WriteTypeParametersOrArguments",n[n.UseOnlyExternalAliasing=2]="UseOnlyExternalAliasing",n[n.AllowAnyNodeKind=4]="AllowAnyNodeKind",n[n.UseAliasDefinedOutsideCurrentScope=8]="UseAliasDefinedOutsideCurrentScope",n[n.WriteComputedProps=16]="WriteComputedProps",n[n.DoNotIncludeSymbolChain=32]="DoNotIncludeSymbolChain",n))(m1||{}),j_=(n=>(n[n.Accessible=0]="Accessible",n[n.NotAccessible=1]="NotAccessible",n[n.CannotBeNamed=2]="CannotBeNamed",n[n.NotResolved=3]="NotResolved",n))(j_||{}),Qw=(n=>(n[n.UnionOrIntersection=0]="UnionOrIntersection",n[n.Spread=1]="Spread",n))(Qw||{}),zp=(n=>(n[n.This=0]="This",n[n.Identifier=1]="Identifier",n[n.AssertsThis=2]="AssertsThis",n[n.AssertsIdentifier=3]="AssertsIdentifier",n))(zp||{}),py=(n=>(n[n.Unknown=0]="Unknown",n[n.TypeWithConstructSignatureAndValue=1]="TypeWithConstructSignatureAndValue",n[n.VoidNullableOrNeverType=2]="VoidNullableOrNeverType",n[n.NumberLikeType=3]="NumberLikeType",n[n.BigIntLikeType=4]="BigIntLikeType",n[n.StringLikeType=5]="StringLikeType",n[n.BooleanType=6]="BooleanType",n[n.ArrayLikeType=7]="ArrayLikeType",n[n.ESSymbolType=8]="ESSymbolType",n[n.Promise=9]="Promise",n[n.TypeWithCallSignature=10]="TypeWithCallSignature",n[n.ObjectType=11]="ObjectType",n))(py||{}),d2=(n=>(n[n.None=0]="None",n[n.FunctionScopedVariable=1]="FunctionScopedVariable",n[n.BlockScopedVariable=2]="BlockScopedVariable",n[n.Property=4]="Property",n[n.EnumMember=8]="EnumMember",n[n.Function=16]="Function",n[n.Class=32]="Class",n[n.Interface=64]="Interface",n[n.ConstEnum=128]="ConstEnum",n[n.RegularEnum=256]="RegularEnum",n[n.ValueModule=512]="ValueModule",n[n.NamespaceModule=1024]="NamespaceModule",n[n.TypeLiteral=2048]="TypeLiteral",n[n.ObjectLiteral=4096]="ObjectLiteral",n[n.Method=8192]="Method",n[n.Constructor=16384]="Constructor",n[n.GetAccessor=32768]="GetAccessor",n[n.SetAccessor=65536]="SetAccessor",n[n.Signature=131072]="Signature",n[n.TypeParameter=262144]="TypeParameter",n[n.TypeAlias=524288]="TypeAlias",n[n.ExportValue=1048576]="ExportValue",n[n.Alias=2097152]="Alias",n[n.Prototype=4194304]="Prototype",n[n.ExportStar=8388608]="ExportStar",n[n.Optional=16777216]="Optional",n[n.Transient=33554432]="Transient",n[n.Assignment=67108864]="Assignment",n[n.ModuleExports=134217728]="ModuleExports",n[n.All=-1]="All",n[n.Enum=384]="Enum",n[n.Variable=3]="Variable",n[n.Value=111551]="Value",n[n.Type=788968]="Type",n[n.Namespace=1920]="Namespace",n[n.Module=1536]="Module",n[n.Accessor=98304]="Accessor",n[n.FunctionScopedVariableExcludes=111550]="FunctionScopedVariableExcludes",n[n.BlockScopedVariableExcludes=111551]="BlockScopedVariableExcludes",n[n.ParameterExcludes=111551]="ParameterExcludes",n[n.PropertyExcludes=0]="PropertyExcludes",n[n.EnumMemberExcludes=900095]="EnumMemberExcludes",n[n.FunctionExcludes=110991]="FunctionExcludes",n[n.ClassExcludes=899503]="ClassExcludes",n[n.InterfaceExcludes=788872]="InterfaceExcludes",n[n.RegularEnumExcludes=899327]="RegularEnumExcludes",n[n.ConstEnumExcludes=899967]="ConstEnumExcludes",n[n.ValueModuleExcludes=110735]="ValueModuleExcludes",n[n.NamespaceModuleExcludes=0]="NamespaceModuleExcludes",n[n.MethodExcludes=103359]="MethodExcludes",n[n.GetAccessorExcludes=46015]="GetAccessorExcludes",n[n.SetAccessorExcludes=78783]="SetAccessorExcludes",n[n.AccessorExcludes=13247]="AccessorExcludes",n[n.TypeParameterExcludes=526824]="TypeParameterExcludes",n[n.TypeAliasExcludes=788968]="TypeAliasExcludes",n[n.AliasExcludes=2097152]="AliasExcludes",n[n.ModuleMember=2623475]="ModuleMember",n[n.ExportHasLocal=944]="ExportHasLocal",n[n.BlockScoped=418]="BlockScoped",n[n.PropertyOrAccessor=98308]="PropertyOrAccessor",n[n.ClassMember=106500]="ClassMember",n[n.ExportSupportsDefaultModifier=112]="ExportSupportsDefaultModifier",n[n.ExportDoesNotSupportDefaultModifier=-113]="ExportDoesNotSupportDefaultModifier",n[n.Classifiable=2885600]="Classifiable",n[n.LateBindingContainer=6256]="LateBindingContainer",n))(d2||{}),QI=(n=>(n[n.None=0]="None",n[n.Instantiated=1]="Instantiated",n[n.SyntheticProperty=2]="SyntheticProperty",n[n.SyntheticMethod=4]="SyntheticMethod",n[n.Readonly=8]="Readonly",n[n.ReadPartial=16]="ReadPartial",n[n.WritePartial=32]="WritePartial",n[n.HasNonUniformType=64]="HasNonUniformType",n[n.HasLiteralType=128]="HasLiteralType",n[n.ContainsPublic=256]="ContainsPublic",n[n.ContainsProtected=512]="ContainsProtected",n[n.ContainsPrivate=1024]="ContainsPrivate",n[n.ContainsStatic=2048]="ContainsStatic",n[n.Late=4096]="Late",n[n.ReverseMapped=8192]="ReverseMapped",n[n.OptionalParameter=16384]="OptionalParameter",n[n.RestParameter=32768]="RestParameter",n[n.DeferredType=65536]="DeferredType",n[n.HasNeverType=131072]="HasNeverType",n[n.Mapped=262144]="Mapped",n[n.StripOptional=524288]="StripOptional",n[n.Unresolved=1048576]="Unresolved",n[n.Synthetic=6]="Synthetic",n[n.Discriminant=192]="Discriminant",n[n.Partial=48]="Partial",n))(QI||{}),gA=(n=>(n.Call="__call",n.Constructor="__constructor",n.New="__new",n.Index="__index",n.ExportStar="__export",n.Global="__global",n.Missing="__missing",n.Type="__type",n.Object="__object",n.JSXAttributes="__jsxAttributes",n.Class="__class",n.Function="__function",n.Computed="__computed",n.Resolving="__resolving__",n.ExportEquals="export=",n.Default="default",n.This="this",n.InstantiationExpression="__instantiationExpression",n.ImportAttributes="__importAttributes",n))(gA||{}),WA=(n=>(n[n.None=0]="None",n[n.TypeChecked=1]="TypeChecked",n[n.LexicalThis=2]="LexicalThis",n[n.CaptureThis=4]="CaptureThis",n[n.CaptureNewTarget=8]="CaptureNewTarget",n[n.SuperInstance=16]="SuperInstance",n[n.SuperStatic=32]="SuperStatic",n[n.ContextChecked=64]="ContextChecked",n[n.MethodWithSuperPropertyAccessInAsync=128]="MethodWithSuperPropertyAccessInAsync",n[n.MethodWithSuperPropertyAssignmentInAsync=256]="MethodWithSuperPropertyAssignmentInAsync",n[n.CaptureArguments=512]="CaptureArguments",n[n.EnumValuesComputed=1024]="EnumValuesComputed",n[n.LexicalModuleMergesWithClass=2048]="LexicalModuleMergesWithClass",n[n.LoopWithCapturedBlockScopedBinding=4096]="LoopWithCapturedBlockScopedBinding",n[n.ContainsCapturedBlockScopeBinding=8192]="ContainsCapturedBlockScopeBinding",n[n.CapturedBlockScopedBinding=16384]="CapturedBlockScopedBinding",n[n.BlockScopedBindingInLoop=32768]="BlockScopedBindingInLoop",n[n.NeedsLoopOutParameter=65536]="NeedsLoopOutParameter",n[n.AssignmentsMarked=131072]="AssignmentsMarked",n[n.ContainsConstructorReference=262144]="ContainsConstructorReference",n[n.ConstructorReference=536870912]="ConstructorReference",n[n.ContainsClassWithPrivateIdentifiers=1048576]="ContainsClassWithPrivateIdentifiers",n[n.ContainsSuperPropertyInStaticInitializer=2097152]="ContainsSuperPropertyInStaticInitializer",n[n.InCheckIdentifier=4194304]="InCheckIdentifier",n[n.LazyFlags=539358128]="LazyFlags",n))(WA||{}),dm=(n=>(n[n.Any=1]="Any",n[n.Unknown=2]="Unknown",n[n.String=4]="String",n[n.Number=8]="Number",n[n.Boolean=16]="Boolean",n[n.Enum=32]="Enum",n[n.BigInt=64]="BigInt",n[n.StringLiteral=128]="StringLiteral",n[n.NumberLiteral=256]="NumberLiteral",n[n.BooleanLiteral=512]="BooleanLiteral",n[n.EnumLiteral=1024]="EnumLiteral",n[n.BigIntLiteral=2048]="BigIntLiteral",n[n.ESSymbol=4096]="ESSymbol",n[n.UniqueESSymbol=8192]="UniqueESSymbol",n[n.Void=16384]="Void",n[n.Undefined=32768]="Undefined",n[n.Null=65536]="Null",n[n.Never=131072]="Never",n[n.TypeParameter=262144]="TypeParameter",n[n.Object=524288]="Object",n[n.Union=1048576]="Union",n[n.Intersection=2097152]="Intersection",n[n.Index=4194304]="Index",n[n.IndexedAccess=8388608]="IndexedAccess",n[n.Conditional=16777216]="Conditional",n[n.Substitution=33554432]="Substitution",n[n.NonPrimitive=67108864]="NonPrimitive",n[n.TemplateLiteral=134217728]="TemplateLiteral",n[n.StringMapping=268435456]="StringMapping",n[n.Reserved1=536870912]="Reserved1",n[n.Reserved2=1073741824]="Reserved2",n[n.AnyOrUnknown=3]="AnyOrUnknown",n[n.Nullable=98304]="Nullable",n[n.Literal=2944]="Literal",n[n.Unit=109472]="Unit",n[n.Freshable=2976]="Freshable",n[n.StringOrNumberLiteral=384]="StringOrNumberLiteral",n[n.StringOrNumberLiteralOrUnique=8576]="StringOrNumberLiteralOrUnique",n[n.DefinitelyFalsy=117632]="DefinitelyFalsy",n[n.PossiblyFalsy=117724]="PossiblyFalsy",n[n.Intrinsic=67359327]="Intrinsic",n[n.StringLike=402653316]="StringLike",n[n.NumberLike=296]="NumberLike",n[n.BigIntLike=2112]="BigIntLike",n[n.BooleanLike=528]="BooleanLike",n[n.EnumLike=1056]="EnumLike",n[n.ESSymbolLike=12288]="ESSymbolLike",n[n.VoidLike=49152]="VoidLike",n[n.Primitive=402784252]="Primitive",n[n.DefinitelyNonNullable=470302716]="DefinitelyNonNullable",n[n.DisjointDomains=469892092]="DisjointDomains",n[n.UnionOrIntersection=3145728]="UnionOrIntersection",n[n.StructuredType=3670016]="StructuredType",n[n.TypeVariable=8650752]="TypeVariable",n[n.InstantiableNonPrimitive=58982400]="InstantiableNonPrimitive",n[n.InstantiablePrimitive=406847488]="InstantiablePrimitive",n[n.Instantiable=465829888]="Instantiable",n[n.StructuredOrInstantiable=469499904]="StructuredOrInstantiable",n[n.ObjectFlagsType=3899393]="ObjectFlagsType",n[n.Simplifiable=25165824]="Simplifiable",n[n.Singleton=67358815]="Singleton",n[n.Narrowable=536624127]="Narrowable",n[n.IncludesMask=473694207]="IncludesMask",n[n.IncludesMissingType=262144]="IncludesMissingType",n[n.IncludesNonWideningType=4194304]="IncludesNonWideningType",n[n.IncludesWildcard=8388608]="IncludesWildcard",n[n.IncludesEmptyObject=16777216]="IncludesEmptyObject",n[n.IncludesInstantiable=33554432]="IncludesInstantiable",n[n.IncludesConstrainedTypeVariable=536870912]="IncludesConstrainedTypeVariable",n[n.IncludesError=1073741824]="IncludesError",n[n.NotPrimitiveUnion=36323331]="NotPrimitiveUnion",n))(dm||{}),Wf=(n=>(n[n.None=0]="None",n[n.Class=1]="Class",n[n.Interface=2]="Interface",n[n.Reference=4]="Reference",n[n.Tuple=8]="Tuple",n[n.Anonymous=16]="Anonymous",n[n.Mapped=32]="Mapped",n[n.Instantiated=64]="Instantiated",n[n.ObjectLiteral=128]="ObjectLiteral",n[n.EvolvingArray=256]="EvolvingArray",n[n.ObjectLiteralPatternWithComputedProperties=512]="ObjectLiteralPatternWithComputedProperties",n[n.ReverseMapped=1024]="ReverseMapped",n[n.JsxAttributes=2048]="JsxAttributes",n[n.JSLiteral=4096]="JSLiteral",n[n.FreshLiteral=8192]="FreshLiteral",n[n.ArrayLiteral=16384]="ArrayLiteral",n[n.PrimitiveUnion=32768]="PrimitiveUnion",n[n.ContainsWideningType=65536]="ContainsWideningType",n[n.ContainsObjectOrArrayLiteral=131072]="ContainsObjectOrArrayLiteral",n[n.NonInferrableType=262144]="NonInferrableType",n[n.CouldContainTypeVariablesComputed=524288]="CouldContainTypeVariablesComputed",n[n.CouldContainTypeVariables=1048576]="CouldContainTypeVariables",n[n.ClassOrInterface=3]="ClassOrInterface",n[n.RequiresWidening=196608]="RequiresWidening",n[n.PropagatingFlags=458752]="PropagatingFlags",n[n.InstantiatedMapped=96]="InstantiatedMapped",n[n.ObjectTypeKindMask=1343]="ObjectTypeKindMask",n[n.ContainsSpread=2097152]="ContainsSpread",n[n.ObjectRestType=4194304]="ObjectRestType",n[n.InstantiationExpressionType=8388608]="InstantiationExpressionType",n[n.SingleSignatureType=134217728]="SingleSignatureType",n[n.IsClassInstanceClone=16777216]="IsClassInstanceClone",n[n.IdenticalBaseTypeCalculated=33554432]="IdenticalBaseTypeCalculated",n[n.IdenticalBaseTypeExists=67108864]="IdenticalBaseTypeExists",n[n.IsGenericTypeComputed=2097152]="IsGenericTypeComputed",n[n.IsGenericObjectType=4194304]="IsGenericObjectType",n[n.IsGenericIndexType=8388608]="IsGenericIndexType",n[n.IsGenericType=12582912]="IsGenericType",n[n.ContainsIntersections=16777216]="ContainsIntersections",n[n.IsUnknownLikeUnionComputed=33554432]="IsUnknownLikeUnionComputed",n[n.IsUnknownLikeUnion=67108864]="IsUnknownLikeUnion",n[n.IsNeverIntersectionComputed=16777216]="IsNeverIntersectionComputed",n[n.IsNeverIntersection=33554432]="IsNeverIntersection",n[n.IsConstrainedTypeVariable=67108864]="IsConstrainedTypeVariable",n))(Wf||{}),Yy=(n=>(n[n.Invariant=0]="Invariant",n[n.Covariant=1]="Covariant",n[n.Contravariant=2]="Contravariant",n[n.Bivariant=3]="Bivariant",n[n.Independent=4]="Independent",n[n.VarianceMask=7]="VarianceMask",n[n.Unmeasurable=8]="Unmeasurable",n[n.Unreliable=16]="Unreliable",n[n.AllowsStructuralFallback=24]="AllowsStructuralFallback",n))(Yy||{}),jh=(n=>(n[n.Required=1]="Required",n[n.Optional=2]="Optional",n[n.Rest=4]="Rest",n[n.Variadic=8]="Variadic",n[n.Fixed=3]="Fixed",n[n.Variable=12]="Variable",n[n.NonRequired=14]="NonRequired",n[n.NonRest=11]="NonRest",n))(jh||{}),Xy=(n=>(n[n.None=0]="None",n[n.IncludeUndefined=1]="IncludeUndefined",n[n.NoIndexSignatures=2]="NoIndexSignatures",n[n.Writing=4]="Writing",n[n.CacheSymbol=8]="CacheSymbol",n[n.NoTupleBoundsCheck=16]="NoTupleBoundsCheck",n[n.ExpressionPosition=32]="ExpressionPosition",n[n.ReportDeprecated=64]="ReportDeprecated",n[n.SuppressNoImplicitAnyError=128]="SuppressNoImplicitAnyError",n[n.Contextual=256]="Contextual",n[n.Persistent=1]="Persistent",n))(Xy||{}),fy=(n=>(n[n.None=0]="None",n[n.StringsOnly=1]="StringsOnly",n[n.NoIndexSignatures=2]="NoIndexSignatures",n[n.NoReducibleCheck=4]="NoReducibleCheck",n))(fy||{}),_S=(n=>(n[n.Component=0]="Component",n[n.Function=1]="Function",n[n.Mixed=2]="Mixed",n))(_S||{}),yS=(n=>(n[n.Call=0]="Call",n[n.Construct=1]="Construct",n))(yS||{}),Jy=(n=>(n[n.None=0]="None",n[n.HasRestParameter=1]="HasRestParameter",n[n.HasLiteralTypes=2]="HasLiteralTypes",n[n.Abstract=4]="Abstract",n[n.IsInnerCallChain=8]="IsInnerCallChain",n[n.IsOuterCallChain=16]="IsOuterCallChain",n[n.IsUntypedSignatureInJSFile=32]="IsUntypedSignatureInJSFile",n[n.IsNonInferrable=64]="IsNonInferrable",n[n.IsSignatureCandidateForOverloadFailure=128]="IsSignatureCandidateForOverloadFailure",n[n.PropagatingFlags=167]="PropagatingFlags",n[n.CallChainFlags=24]="CallChainFlags",n))(Jy||{}),SE=(n=>(n[n.String=0]="String",n[n.Number=1]="Number",n))(SE||{}),hv=(n=>(n[n.Simple=0]="Simple",n[n.Array=1]="Array",n[n.Deferred=2]="Deferred",n[n.Function=3]="Function",n[n.Composite=4]="Composite",n[n.Merged=5]="Merged",n))(hv||{}),Mw=(n=>(n[n.None=0]="None",n[n.NakedTypeVariable=1]="NakedTypeVariable",n[n.SpeculativeTuple=2]="SpeculativeTuple",n[n.SubstituteSource=4]="SubstituteSource",n[n.HomomorphicMappedType=8]="HomomorphicMappedType",n[n.PartialHomomorphicMappedType=16]="PartialHomomorphicMappedType",n[n.MappedTypeConstraint=32]="MappedTypeConstraint",n[n.ContravariantConditional=64]="ContravariantConditional",n[n.ReturnType=128]="ReturnType",n[n.LiteralKeyof=256]="LiteralKeyof",n[n.NoConstraints=512]="NoConstraints",n[n.AlwaysStrict=1024]="AlwaysStrict",n[n.MaxValue=2048]="MaxValue",n[n.PriorityImpliesCombination=416]="PriorityImpliesCombination",n[n.Circularity=-1]="Circularity",n))(Mw||{}),_v=(n=>(n[n.None=0]="None",n[n.NoDefault=1]="NoDefault",n[n.AnyDefault=2]="AnyDefault",n[n.SkippedGenericFunction=4]="SkippedGenericFunction",n))(_v||{}),FR=(n=>(n[n.False=0]="False",n[n.Unknown=1]="Unknown",n[n.Maybe=3]="Maybe",n[n.True=-1]="True",n))(FR||{}),$T=(n=>(n[n.None=0]="None",n[n.ExportsProperty=1]="ExportsProperty",n[n.ModuleExports=2]="ModuleExports",n[n.PrototypeProperty=3]="PrototypeProperty",n[n.ThisProperty=4]="ThisProperty",n[n.Property=5]="Property",n[n.Prototype=6]="Prototype",n[n.ObjectDefinePropertyValue=7]="ObjectDefinePropertyValue",n[n.ObjectDefinePropertyExports=8]="ObjectDefinePropertyExports",n[n.ObjectDefinePrototypeProperty=9]="ObjectDefinePrototypeProperty",n))($T||{}),h1=(n=>(n[n.Warning=0]="Warning",n[n.Error=1]="Error",n[n.Suggestion=2]="Suggestion",n[n.Message=3]="Message",n))(h1||{});function zh(n,c=!0){let u=h1[n.category];return c?u.toLowerCase():u}var xb=(n=>(n[n.Classic=1]="Classic",n[n.NodeJs=2]="NodeJs",n[n.Node10=2]="Node10",n[n.Node16=3]="Node16",n[n.NodeNext=99]="NodeNext",n[n.Bundler=100]="Bundler",n))(xb||{}),Hw=(n=>(n[n.Legacy=1]="Legacy",n[n.Auto=2]="Auto",n[n.Force=3]="Force",n))(Hw||{}),An=(n=>(n[n.FixedPollingInterval=0]="FixedPollingInterval",n[n.PriorityPollingInterval=1]="PriorityPollingInterval",n[n.DynamicPriorityPolling=2]="DynamicPriorityPolling",n[n.FixedChunkSizePolling=3]="FixedChunkSizePolling",n[n.UseFsEvents=4]="UseFsEvents",n[n.UseFsEventsOnParentDirectory=5]="UseFsEventsOnParentDirectory",n))(An||{}),_1=(n=>(n[n.UseFsEvents=0]="UseFsEvents",n[n.FixedPollingInterval=1]="FixedPollingInterval",n[n.DynamicPriorityPolling=2]="DynamicPriorityPolling",n[n.FixedChunkSizePolling=3]="FixedChunkSizePolling",n))(_1||{}),p2=(n=>(n[n.FixedInterval=0]="FixedInterval",n[n.PriorityInterval=1]="PriorityInterval",n[n.DynamicPriority=2]="DynamicPriority",n[n.FixedChunkSize=3]="FixedChunkSize",n))(p2||{}),qh=(n=>(n[n.None=0]="None",n[n.CommonJS=1]="CommonJS",n[n.AMD=2]="AMD",n[n.UMD=3]="UMD",n[n.System=4]="System",n[n.ES2015=5]="ES2015",n[n.ES2020=6]="ES2020",n[n.ES2022=7]="ES2022",n[n.ESNext=99]="ESNext",n[n.Node16=100]="Node16",n[n.NodeNext=199]="NodeNext",n[n.Preserve=200]="Preserve",n))(qh||{}),pp=(n=>(n[n.None=0]="None",n[n.Preserve=1]="Preserve",n[n.React=2]="React",n[n.ReactNative=3]="ReactNative",n[n.ReactJSX=4]="ReactJSX",n[n.ReactJSXDev=5]="ReactJSXDev",n))(pp||{}),Yw=(n=>(n[n.Remove=0]="Remove",n[n.Preserve=1]="Preserve",n[n.Error=2]="Error",n))(Yw||{}),bS=(n=>(n[n.CarriageReturnLineFeed=0]="CarriageReturnLineFeed",n[n.LineFeed=1]="LineFeed",n))(bS||{}),eN=(n=>(n[n.Unknown=0]="Unknown",n[n.JS=1]="JS",n[n.JSX=2]="JSX",n[n.TS=3]="TS",n[n.TSX=4]="TSX",n[n.External=5]="External",n[n.JSON=6]="JSON",n[n.Deferred=7]="Deferred",n))(eN||{}),kb=(n=>(n[n.ES3=0]="ES3",n[n.ES5=1]="ES5",n[n.ES2015=2]="ES2015",n[n.ES2016=3]="ES2016",n[n.ES2017=4]="ES2017",n[n.ES2018=5]="ES2018",n[n.ES2019=6]="ES2019",n[n.ES2020=7]="ES2020",n[n.ES2021=8]="ES2021",n[n.ES2022=9]="ES2022",n[n.ES2023=10]="ES2023",n[n.ESNext=99]="ESNext",n[n.JSON=100]="JSON",n[n.Latest=99]="Latest",n))(kb||{}),tN=(n=>(n[n.Standard=0]="Standard",n[n.JSX=1]="JSX",n))(tN||{}),F0=(n=>(n[n.None=0]="None",n[n.Recursive=1]="Recursive",n))(F0||{}),lG=(n=>(n[n.EOF=-1]="EOF",n[n.nullCharacter=0]="nullCharacter",n[n.maxAsciiCharacter=127]="maxAsciiCharacter",n[n.lineFeed=10]="lineFeed",n[n.carriageReturn=13]="carriageReturn",n[n.lineSeparator=8232]="lineSeparator",n[n.paragraphSeparator=8233]="paragraphSeparator",n[n.nextLine=133]="nextLine",n[n.space=32]="space",n[n.nonBreakingSpace=160]="nonBreakingSpace",n[n.enQuad=8192]="enQuad",n[n.emQuad=8193]="emQuad",n[n.enSpace=8194]="enSpace",n[n.emSpace=8195]="emSpace",n[n.threePerEmSpace=8196]="threePerEmSpace",n[n.fourPerEmSpace=8197]="fourPerEmSpace",n[n.sixPerEmSpace=8198]="sixPerEmSpace",n[n.figureSpace=8199]="figureSpace",n[n.punctuationSpace=8200]="punctuationSpace",n[n.thinSpace=8201]="thinSpace",n[n.hairSpace=8202]="hairSpace",n[n.zeroWidthSpace=8203]="zeroWidthSpace",n[n.narrowNoBreakSpace=8239]="narrowNoBreakSpace",n[n.ideographicSpace=12288]="ideographicSpace",n[n.mathematicalSpace=8287]="mathematicalSpace",n[n.ogham=5760]="ogham",n[n.replacementCharacter=65533]="replacementCharacter",n[n._=95]="_",n[n.$=36]="$",n[n._0=48]="_0",n[n._1=49]="_1",n[n._2=50]="_2",n[n._3=51]="_3",n[n._4=52]="_4",n[n._5=53]="_5",n[n._6=54]="_6",n[n._7=55]="_7",n[n._8=56]="_8",n[n._9=57]="_9",n[n.a=97]="a",n[n.b=98]="b",n[n.c=99]="c",n[n.d=100]="d",n[n.e=101]="e",n[n.f=102]="f",n[n.g=103]="g",n[n.h=104]="h",n[n.i=105]="i",n[n.j=106]="j",n[n.k=107]="k",n[n.l=108]="l",n[n.m=109]="m",n[n.n=110]="n",n[n.o=111]="o",n[n.p=112]="p",n[n.q=113]="q",n[n.r=114]="r",n[n.s=115]="s",n[n.t=116]="t",n[n.u=117]="u",n[n.v=118]="v",n[n.w=119]="w",n[n.x=120]="x",n[n.y=121]="y",n[n.z=122]="z",n[n.A=65]="A",n[n.B=66]="B",n[n.C=67]="C",n[n.D=68]="D",n[n.E=69]="E",n[n.F=70]="F",n[n.G=71]="G",n[n.H=72]="H",n[n.I=73]="I",n[n.J=74]="J",n[n.K=75]="K",n[n.L=76]="L",n[n.M=77]="M",n[n.N=78]="N",n[n.O=79]="O",n[n.P=80]="P",n[n.Q=81]="Q",n[n.R=82]="R",n[n.S=83]="S",n[n.T=84]="T",n[n.U=85]="U",n[n.V=86]="V",n[n.W=87]="W",n[n.X=88]="X",n[n.Y=89]="Y",n[n.Z=90]="Z",n[n.ampersand=38]="ampersand",n[n.asterisk=42]="asterisk",n[n.at=64]="at",n[n.backslash=92]="backslash",n[n.backtick=96]="backtick",n[n.bar=124]="bar",n[n.caret=94]="caret",n[n.closeBrace=125]="closeBrace",n[n.closeBracket=93]="closeBracket",n[n.closeParen=41]="closeParen",n[n.colon=58]="colon",n[n.comma=44]="comma",n[n.dot=46]="dot",n[n.doubleQuote=34]="doubleQuote",n[n.equals=61]="equals",n[n.exclamation=33]="exclamation",n[n.greaterThan=62]="greaterThan",n[n.hash=35]="hash",n[n.lessThan=60]="lessThan",n[n.minus=45]="minus",n[n.openBrace=123]="openBrace",n[n.openBracket=91]="openBracket",n[n.openParen=40]="openParen",n[n.percent=37]="percent",n[n.plus=43]="plus",n[n.question=63]="question",n[n.semicolon=59]="semicolon",n[n.singleQuote=39]="singleQuote",n[n.slash=47]="slash",n[n.tilde=126]="tilde",n[n.backspace=8]="backspace",n[n.formFeed=12]="formFeed",n[n.byteOrderMark=65279]="byteOrderMark",n[n.tab=9]="tab",n[n.verticalTab=11]="verticalTab",n))(lG||{}),y1=(n=>(n.Ts=".ts",n.Tsx=".tsx",n.Dts=".d.ts",n.Js=".js",n.Jsx=".jsx",n.Json=".json",n.TsBuildInfo=".tsbuildinfo",n.Mjs=".mjs",n.Mts=".mts",n.Dmts=".d.mts",n.Cjs=".cjs",n.Cts=".cts",n.Dcts=".d.cts",n))(y1||{}),Gb=(n=>(n[n.None=0]="None",n[n.ContainsTypeScript=1]="ContainsTypeScript",n[n.ContainsJsx=2]="ContainsJsx",n[n.ContainsESNext=4]="ContainsESNext",n[n.ContainsES2022=8]="ContainsES2022",n[n.ContainsES2021=16]="ContainsES2021",n[n.ContainsES2020=32]="ContainsES2020",n[n.ContainsES2019=64]="ContainsES2019",n[n.ContainsES2018=128]="ContainsES2018",n[n.ContainsES2017=256]="ContainsES2017",n[n.ContainsES2016=512]="ContainsES2016",n[n.ContainsES2015=1024]="ContainsES2015",n[n.ContainsGenerator=2048]="ContainsGenerator",n[n.ContainsDestructuringAssignment=4096]="ContainsDestructuringAssignment",n[n.ContainsTypeScriptClassSyntax=8192]="ContainsTypeScriptClassSyntax",n[n.ContainsLexicalThis=16384]="ContainsLexicalThis",n[n.ContainsRestOrSpread=32768]="ContainsRestOrSpread",n[n.ContainsObjectRestOrSpread=65536]="ContainsObjectRestOrSpread",n[n.ContainsComputedPropertyName=131072]="ContainsComputedPropertyName",n[n.ContainsBlockScopedBinding=262144]="ContainsBlockScopedBinding",n[n.ContainsBindingPattern=524288]="ContainsBindingPattern",n[n.ContainsYield=1048576]="ContainsYield",n[n.ContainsAwait=2097152]="ContainsAwait",n[n.ContainsHoistedDeclarationOrCompletion=4194304]="ContainsHoistedDeclarationOrCompletion",n[n.ContainsDynamicImport=8388608]="ContainsDynamicImport",n[n.ContainsClassFields=16777216]="ContainsClassFields",n[n.ContainsDecorators=33554432]="ContainsDecorators",n[n.ContainsPossibleTopLevelAwait=67108864]="ContainsPossibleTopLevelAwait",n[n.ContainsLexicalSuper=134217728]="ContainsLexicalSuper",n[n.ContainsUpdateExpressionForIdentifier=268435456]="ContainsUpdateExpressionForIdentifier",n[n.ContainsPrivateIdentifierInExpression=536870912]="ContainsPrivateIdentifierInExpression",n[n.HasComputedFlags=-2147483648]="HasComputedFlags",n[n.AssertTypeScript=1]="AssertTypeScript",n[n.AssertJsx=2]="AssertJsx",n[n.AssertESNext=4]="AssertESNext",n[n.AssertES2022=8]="AssertES2022",n[n.AssertES2021=16]="AssertES2021",n[n.AssertES2020=32]="AssertES2020",n[n.AssertES2019=64]="AssertES2019",n[n.AssertES2018=128]="AssertES2018",n[n.AssertES2017=256]="AssertES2017",n[n.AssertES2016=512]="AssertES2016",n[n.AssertES2015=1024]="AssertES2015",n[n.AssertGenerator=2048]="AssertGenerator",n[n.AssertDestructuringAssignment=4096]="AssertDestructuringAssignment",n[n.OuterExpressionExcludes=-2147483648]="OuterExpressionExcludes",n[n.PropertyAccessExcludes=-2147483648]="PropertyAccessExcludes",n[n.NodeExcludes=-2147483648]="NodeExcludes",n[n.ArrowFunctionExcludes=-2072174592]="ArrowFunctionExcludes",n[n.FunctionExcludes=-1937940480]="FunctionExcludes",n[n.ConstructorExcludes=-1937948672]="ConstructorExcludes",n[n.MethodOrAccessorExcludes=-2005057536]="MethodOrAccessorExcludes",n[n.PropertyExcludes=-2013249536]="PropertyExcludes",n[n.ClassExcludes=-2147344384]="ClassExcludes",n[n.ModuleExcludes=-1941676032]="ModuleExcludes",n[n.TypeExcludes=-2]="TypeExcludes",n[n.ObjectLiteralExcludes=-2147278848]="ObjectLiteralExcludes",n[n.ArrayLiteralOrCallOrNewExcludes=-2147450880]="ArrayLiteralOrCallOrNewExcludes",n[n.VariableDeclarationListExcludes=-2146893824]="VariableDeclarationListExcludes",n[n.ParameterExcludes=-2147483648]="ParameterExcludes",n[n.CatchClauseExcludes=-2147418112]="CatchClauseExcludes",n[n.BindingPatternExcludes=-2147450880]="BindingPatternExcludes",n[n.ContainsLexicalThisOrSuper=134234112]="ContainsLexicalThisOrSuper",n[n.PropertyNamePropagatingFlags=134234112]="PropertyNamePropagatingFlags",n))(Gb||{}),Bh=(n=>(n[n.TabStop=0]="TabStop",n[n.Placeholder=1]="Placeholder",n[n.Choice=2]="Choice",n[n.Variable=3]="Variable",n))(Bh||{}),b1=(n=>(n[n.None=0]="None",n[n.SingleLine=1]="SingleLine",n[n.MultiLine=2]="MultiLine",n[n.AdviseOnEmitNode=4]="AdviseOnEmitNode",n[n.NoSubstitution=8]="NoSubstitution",n[n.CapturesThis=16]="CapturesThis",n[n.NoLeadingSourceMap=32]="NoLeadingSourceMap",n[n.NoTrailingSourceMap=64]="NoTrailingSourceMap",n[n.NoSourceMap=96]="NoSourceMap",n[n.NoNestedSourceMaps=128]="NoNestedSourceMaps",n[n.NoTokenLeadingSourceMaps=256]="NoTokenLeadingSourceMaps",n[n.NoTokenTrailingSourceMaps=512]="NoTokenTrailingSourceMaps",n[n.NoTokenSourceMaps=768]="NoTokenSourceMaps",n[n.NoLeadingComments=1024]="NoLeadingComments",n[n.NoTrailingComments=2048]="NoTrailingComments",n[n.NoComments=3072]="NoComments",n[n.NoNestedComments=4096]="NoNestedComments",n[n.HelperName=8192]="HelperName",n[n.ExportName=16384]="ExportName",n[n.LocalName=32768]="LocalName",n[n.InternalName=65536]="InternalName",n[n.Indented=131072]="Indented",n[n.NoIndentation=262144]="NoIndentation",n[n.AsyncFunctionBody=524288]="AsyncFunctionBody",n[n.ReuseTempVariableScope=1048576]="ReuseTempVariableScope",n[n.CustomPrologue=2097152]="CustomPrologue",n[n.NoHoisting=4194304]="NoHoisting",n[n.Iterator=8388608]="Iterator",n[n.NoAsciiEscaping=16777216]="NoAsciiEscaping",n))(b1||{}),wE=(n=>(n[n.None=0]="None",n[n.TypeScriptClassWrapper=1]="TypeScriptClassWrapper",n[n.NeverApplyImportHelper=2]="NeverApplyImportHelper",n[n.IgnoreSourceNewlines=4]="IgnoreSourceNewlines",n[n.Immutable=8]="Immutable",n[n.IndirectCall=16]="IndirectCall",n[n.TransformPrivateStaticElements=32]="TransformPrivateStaticElements",n))(wE||{}),TE=(n=>(n[n.Classes=2]="Classes",n[n.ForOf=2]="ForOf",n[n.Generators=2]="Generators",n[n.Iteration=2]="Iteration",n[n.SpreadElements=2]="SpreadElements",n[n.RestElements=2]="RestElements",n[n.TaggedTemplates=2]="TaggedTemplates",n[n.DestructuringAssignment=2]="DestructuringAssignment",n[n.BindingPatterns=2]="BindingPatterns",n[n.ArrowFunctions=2]="ArrowFunctions",n[n.BlockScopedVariables=2]="BlockScopedVariables",n[n.ObjectAssign=2]="ObjectAssign",n[n.RegularExpressionFlagsUnicode=2]="RegularExpressionFlagsUnicode",n[n.RegularExpressionFlagsSticky=2]="RegularExpressionFlagsSticky",n[n.Exponentiation=3]="Exponentiation",n[n.AsyncFunctions=4]="AsyncFunctions",n[n.ForAwaitOf=5]="ForAwaitOf",n[n.AsyncGenerators=5]="AsyncGenerators",n[n.AsyncIteration=5]="AsyncIteration",n[n.ObjectSpreadRest=5]="ObjectSpreadRest",n[n.RegularExpressionFlagsDotAll=5]="RegularExpressionFlagsDotAll",n[n.BindinglessCatch=6]="BindinglessCatch",n[n.BigInt=7]="BigInt",n[n.NullishCoalesce=7]="NullishCoalesce",n[n.OptionalChaining=7]="OptionalChaining",n[n.LogicalAssignment=8]="LogicalAssignment",n[n.TopLevelAwait=9]="TopLevelAwait",n[n.ClassFields=9]="ClassFields",n[n.PrivateNamesAndClassStaticBlocks=9]="PrivateNamesAndClassStaticBlocks",n[n.RegularExpressionFlagsHasIndices=9]="RegularExpressionFlagsHasIndices",n[n.ShebangComments=99]="ShebangComments",n[n.UsingAndAwaitUsing=99]="UsingAndAwaitUsing",n[n.ClassAndClassElementDecorators=99]="ClassAndClassElementDecorators",n[n.RegularExpressionFlagsUnicodeSets=99]="RegularExpressionFlagsUnicodeSets",n))(TE||{}),ES=(n=>(n[n.Extends=1]="Extends",n[n.Assign=2]="Assign",n[n.Rest=4]="Rest",n[n.Decorate=8]="Decorate",n[n.ESDecorateAndRunInitializers=8]="ESDecorateAndRunInitializers",n[n.Metadata=16]="Metadata",n[n.Param=32]="Param",n[n.Awaiter=64]="Awaiter",n[n.Generator=128]="Generator",n[n.Values=256]="Values",n[n.Read=512]="Read",n[n.SpreadArray=1024]="SpreadArray",n[n.Await=2048]="Await",n[n.AsyncGenerator=4096]="AsyncGenerator",n[n.AsyncDelegator=8192]="AsyncDelegator",n[n.AsyncValues=16384]="AsyncValues",n[n.ExportStar=32768]="ExportStar",n[n.ImportStar=65536]="ImportStar",n[n.ImportDefault=131072]="ImportDefault",n[n.MakeTemplateObject=262144]="MakeTemplateObject",n[n.ClassPrivateFieldGet=524288]="ClassPrivateFieldGet",n[n.ClassPrivateFieldSet=1048576]="ClassPrivateFieldSet",n[n.ClassPrivateFieldIn=2097152]="ClassPrivateFieldIn",n[n.SetFunctionName=4194304]="SetFunctionName",n[n.PropKey=8388608]="PropKey",n[n.AddDisposableResourceAndDisposeResources=16777216]="AddDisposableResourceAndDisposeResources",n[n.FirstEmitHelper=1]="FirstEmitHelper",n[n.LastEmitHelper=16777216]="LastEmitHelper",n[n.ForOfIncludes=256]="ForOfIncludes",n[n.ForAwaitOfIncludes=16384]="ForAwaitOfIncludes",n[n.AsyncGeneratorIncludes=6144]="AsyncGeneratorIncludes",n[n.AsyncDelegatorIncludes=26624]="AsyncDelegatorIncludes",n[n.SpreadIncludes=1536]="SpreadIncludes",n))(ES||{}),Uy=(n=>(n[n.SourceFile=0]="SourceFile",n[n.Expression=1]="Expression",n[n.IdentifierName=2]="IdentifierName",n[n.MappedTypeParameter=3]="MappedTypeParameter",n[n.Unspecified=4]="Unspecified",n[n.EmbeddedStatement=5]="EmbeddedStatement",n[n.JsxAttributeValue=6]="JsxAttributeValue",n[n.ImportTypeNodeAttributes=7]="ImportTypeNodeAttributes",n))(Uy||{}),$h=(n=>(n[n.Parentheses=1]="Parentheses",n[n.TypeAssertions=2]="TypeAssertions",n[n.NonNullAssertions=4]="NonNullAssertions",n[n.PartiallyEmittedExpressions=8]="PartiallyEmittedExpressions",n[n.Assertions=6]="Assertions",n[n.All=15]="All",n[n.ExcludeJSDocTypeAssertion=16]="ExcludeJSDocTypeAssertion",n))($h||{}),rN=(n=>(n[n.None=0]="None",n[n.InParameters=1]="InParameters",n[n.VariablesHoistedInParameters=2]="VariablesHoistedInParameters",n))(rN||{}),yv=(n=>(n[n.None=0]="None",n[n.SingleLine=0]="SingleLine",n[n.MultiLine=1]="MultiLine",n[n.PreserveLines=2]="PreserveLines",n[n.LinesMask=3]="LinesMask",n[n.NotDelimited=0]="NotDelimited",n[n.BarDelimited=4]="BarDelimited",n[n.AmpersandDelimited=8]="AmpersandDelimited",n[n.CommaDelimited=16]="CommaDelimited",n[n.AsteriskDelimited=32]="AsteriskDelimited",n[n.DelimitersMask=60]="DelimitersMask",n[n.AllowTrailingComma=64]="AllowTrailingComma",n[n.Indented=128]="Indented",n[n.SpaceBetweenBraces=256]="SpaceBetweenBraces",n[n.SpaceBetweenSiblings=512]="SpaceBetweenSiblings",n[n.Braces=1024]="Braces",n[n.Parenthesis=2048]="Parenthesis",n[n.AngleBrackets=4096]="AngleBrackets",n[n.SquareBrackets=8192]="SquareBrackets",n[n.BracketsMask=15360]="BracketsMask",n[n.OptionalIfUndefined=16384]="OptionalIfUndefined",n[n.OptionalIfEmpty=32768]="OptionalIfEmpty",n[n.Optional=49152]="Optional",n[n.PreferNewLine=65536]="PreferNewLine",n[n.NoTrailingNewLine=131072]="NoTrailingNewLine",n[n.NoInterveningComments=262144]="NoInterveningComments",n[n.NoSpaceIfEmpty=524288]="NoSpaceIfEmpty",n[n.SingleElement=1048576]="SingleElement",n[n.SpaceAfterList=2097152]="SpaceAfterList",n[n.Modifiers=2359808]="Modifiers",n[n.HeritageClauses=512]="HeritageClauses",n[n.SingleLineTypeLiteralMembers=768]="SingleLineTypeLiteralMembers",n[n.MultiLineTypeLiteralMembers=32897]="MultiLineTypeLiteralMembers",n[n.SingleLineTupleTypeElements=528]="SingleLineTupleTypeElements",n[n.MultiLineTupleTypeElements=657]="MultiLineTupleTypeElements",n[n.UnionTypeConstituents=516]="UnionTypeConstituents",n[n.IntersectionTypeConstituents=520]="IntersectionTypeConstituents",n[n.ObjectBindingPatternElements=525136]="ObjectBindingPatternElements",n[n.ArrayBindingPatternElements=524880]="ArrayBindingPatternElements",n[n.ObjectLiteralExpressionProperties=526226]="ObjectLiteralExpressionProperties",n[n.ImportAttributes=526226]="ImportAttributes",n[n.ImportClauseEntries=526226]="ImportClauseEntries",n[n.ArrayLiteralExpressionElements=8914]="ArrayLiteralExpressionElements",n[n.CommaListElements=528]="CommaListElements",n[n.CallExpressionArguments=2576]="CallExpressionArguments",n[n.NewExpressionArguments=18960]="NewExpressionArguments",n[n.TemplateExpressionSpans=262144]="TemplateExpressionSpans",n[n.SingleLineBlockStatements=768]="SingleLineBlockStatements",n[n.MultiLineBlockStatements=129]="MultiLineBlockStatements",n[n.VariableDeclarationList=528]="VariableDeclarationList",n[n.SingleLineFunctionBodyStatements=768]="SingleLineFunctionBodyStatements",n[n.MultiLineFunctionBodyStatements=1]="MultiLineFunctionBodyStatements",n[n.ClassHeritageClauses=0]="ClassHeritageClauses",n[n.ClassMembers=129]="ClassMembers",n[n.InterfaceMembers=129]="InterfaceMembers",n[n.EnumMembers=145]="EnumMembers",n[n.CaseBlockClauses=129]="CaseBlockClauses",n[n.NamedImportsOrExportsElements=525136]="NamedImportsOrExportsElements",n[n.JsxElementOrFragmentChildren=262144]="JsxElementOrFragmentChildren",n[n.JsxElementAttributes=262656]="JsxElementAttributes",n[n.CaseOrDefaultClauseStatements=163969]="CaseOrDefaultClauseStatements",n[n.HeritageClauseTypes=528]="HeritageClauseTypes",n[n.SourceFileStatements=131073]="SourceFileStatements",n[n.Decorators=2146305]="Decorators",n[n.TypeArguments=53776]="TypeArguments",n[n.TypeParameters=53776]="TypeParameters",n[n.Parameters=2576]="Parameters",n[n.IndexSignatureParameters=8848]="IndexSignatureParameters",n[n.JSDocComment=33]="JSDocComment",n))(yv||{}),bv=(n=>(n[n.None=0]="None",n[n.TripleSlashXML=1]="TripleSlashXML",n[n.SingleLine=2]="SingleLine",n[n.MultiLine=4]="MultiLine",n[n.All=7]="All",n[n.Default=7]="Default",n))(bv||{}),nN={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}},yx=(n=>(n[n.ParseAll=0]="ParseAll",n[n.ParseNone=1]="ParseNone",n[n.ParseForTypeErrors=2]="ParseForTypeErrors",n[n.ParseForTypeInfo=3]="ParseForTypeInfo",n))(yx||{});function vh(n){let c=5381;for(let u=0;u(n[n.Created=0]="Created",n[n.Changed=1]="Changed",n[n.Deleted=2]="Deleted",n))(Xw||{}),Va=(n=>(n[n.High=2e3]="High",n[n.Medium=500]="Medium",n[n.Low=250]="Low",n))(Va||{}),BA=new Date(0);function _d(n,c){return n.getModifiedTime(c)||BA}function iI(n){return{250:n.Low,500:n.Medium,2e3:n.High}}var Z0={Low:32,Medium:64,High:256},_B=iI(Z0),Op=iI(Z0);function BS(n){if(!n.getEnvironmentVariable)return;let c=I("TSC_WATCH_POLLINGINTERVAL",Va);_B=h("TSC_WATCH_POLLINGCHUNKSIZE",Z0)||_B,Op=h("TSC_WATCH_UNCHANGEDPOLLTHRESHOLDS",Z0)||Op;function u(b,R){return n.getEnvironmentVariable(`${b}_${R.toUpperCase()}`)}function d(b){let R;return N("Low"),N("Medium"),N("High"),R;function N(V){let P=u(b,V);P&&((R||(R={}))[V]=Number(P))}}function I(b,R){let N=d(b);if(N)return V("Low"),V("Medium"),V("High"),!0;return!1;function V(P){R[P]=N[P]||R[P]}}function h(b,R){let N=d(b);return(c||N)&&iI(N?{...R,...N}:R)}}function pm(n,c,u,d,I){let h=u;for(let R=c.length;d&&R;b(),R--){let N=c[u];if(N){if(N.isClosed){c[u]=void 0;continue}}else continue;d--;let V=vS(N,_d(n,N.fileName));if(N.isClosed){c[u]=void 0;continue}I?.(N,u,V),c[u]&&(h{Ne.isClosed=!0,Qy(c,Ne)}}}function R(de){let Be=[];return Be.pollingInterval=de,Be.pollIndex=0,Be.pollScheduled=!1,Be}function N(de,Be){Be.pollIndex=P(Be,Be.pollingInterval,Be.pollIndex,_B[Be.pollingInterval]),Be.length?Ae(Be.pollingInterval):(w.assert(Be.pollIndex===0),Be.pollScheduled=!1)}function V(de,Be){P(u,250,0,u.length),N(de,Be),!Be.pollScheduled&&u.length&&Ae(250)}function P(de,Be,Fe,Ne){return pm(n,de,Fe,Ne,Me);function Me(De,lt,Le){Le?(De.unchangedPolls=0,de!==u&&(de[lt]=void 0,re(De))):De.unchangedPolls!==Op[Be]?De.unchangedPolls++:de===u?(De.unchangedPolls=1,de[lt]=void 0,te(De,250)):Be!==2e3&&(De.unchangedPolls++,de[lt]=void 0,te(De,Be===250?500:2e3))}}function Q(de){switch(de){case 250:return d;case 500:return I;case 2e3:return h}}function te(de,Be){Q(Be).push(de),ue(Be)}function re(de){u.push(de),ue(250)}function ue(de){Q(de).pollScheduled||Ae(de)}function Ae(de){Q(de).pollScheduled=n.setTimeout(de===250?V:N,de,de===250?"pollLowPollingIntervalQueue":"pollPollingIntervalQueue",Q(de))}}function v_(n,c,u,d){let I=ec(),h=d?new Map:void 0,b=new Map,R=rA(c);return N;function N(P,Q,te,re){let ue=R(P);I.add(ue,Q).length===1&&h&&h.set(ue,u(P)||BA);let Ae=oa(ue)||".",de=b.get(Ae)||V(oa(P)||".",Ae,re);return de.referenceCount++,{close:()=>{de.referenceCount===1?(de.close(),b.delete(Ae)):de.referenceCount--,I.remove(ue,Q)}}}function V(P,Q,te){let re=n(P,1,(ue,Ae)=>{if(!Ya(Ae))return;let de=Qc(Ae,P),Be=R(de),Fe=de&&I.get(Be);if(Fe){let Ne,Me=1;if(h){let De=h.get(Be);if(ue==="change"&&(Ne=u(de)||BA,Ne.getTime()===De.getTime()))return;Ne||(Ne=u(de)||BA),h.set(Be,Ne),De===BA?Me=0:Ne===BA&&(Me=2)}for(let De of Fe)De(de,Me,Ne)}},!1,500,te);return re.referenceCount=0,b.set(Q,re),re}}function f2(n){let c=[],u=0,d;return I;function I(R,N){let V={fileName:R,callback:N,mtime:_d(n,R)};return c.push(V),b(),{close:()=>{V.isClosed=!0,Qy(c,V)}}}function h(){d=void 0,u=pm(n,c,u,_B[250]),b()}function b(){!c.length||d||(d=n.setTimeout(h,2e3,"pollQueue"))}}function yB(n,c,u,d,I){let b=rA(c)(u),R=n.get(b);return R?R.callbacks.push(d):n.set(b,{watcher:I((N,V,P)=>{var Q;return(Q=n.get(b))==null?void 0:Q.callbacks.slice().forEach(te=>te(N,V,P))}),callbacks:[d]}),{close:()=>{let N=n.get(b);N&&(!tA(N.callbacks,d)||N.callbacks.length||(n.delete(b),VB(N)))}}}function vS(n,c){let u=n.mtime.getTime(),d=c.getTime();return u!==d?(n.mtime=c,n.callback(n.fileName,Ev(u,d),c),!0):!1}function Ev(n,c){return n===0?0:c===0?2:1}var Sh=["/node_modules/.","/.git","/.#"],Po=oc;function Ky(n){return Po(n)}function Fb(n){Po=n}function NI({watchDirectory:n,useCaseSensitiveFileNames:c,getCurrentDirectory:u,getAccessibleSortedChildDirectories:d,fileSystemEntryExists:I,realpath:h,setTimeout:b,clearTimeout:R}){let N=new Map,V=ec(),P=new Map,Q,te=ql(!c),re=rA(c);return(je,st,nt,qe)=>nt?ue(je,qe,st):n(je,st,nt,qe);function ue(je,st,nt,qe){let it=re(je),It=N.get(it);It?It.refCount++:(It={watcher:n(je,Tt=>{var St;lt(Tt,st)||(st?.synchronousWatchDirectory?((St=N.get(it))!=null&&St.targetWatcher||Ae(je,it,Tt),De(je,it,st)):de(je,it,Tt,st))},!1,st),refCount:1,childWatches:v,targetWatcher:void 0,links:void 0},N.set(it,It),De(je,it,st)),qe&&(It.links??(It.links=new Set)).add(qe);let dt=nt&&{dirName:je,callback:nt};return dt&&V.add(it,dt),{dirName:je,close:()=>{var Tt;let St=w.checkDefined(N.get(it));dt&&V.remove(it,dt),qe&&((Tt=St.links)==null||Tt.delete(qe)),St.refCount--,!St.refCount&&(N.delete(it),St.links=void 0,VB(St),Me(St),St.childWatches.forEach(xB))}}}function Ae(je,st,nt,qe){var it,It;let dt,Tt;Ya(nt)?dt=nt:Tt=nt,V.forEach((St,He)=>{if(!(Tt&&Tt.get(He)===!0)&&(He===st||uc(st,He)&&st[He.length]===$u))if(Tt)if(qe){let ht=Tt.get(He);ht?ht.push(...qe):Tt.set(He,qe.slice())}else Tt.set(He,!0);else St.forEach(({callback:ht})=>ht(dt))}),(It=(it=N.get(st))==null?void 0:it.links)==null||It.forEach(St=>{let He=ht=>Do(St,Ip(je,ht,re));Tt?Ae(St,re(St),Tt,qe?.map(He)):Ae(St,re(St),He(dt))})}function de(je,st,nt,qe){let it=N.get(st);if(it&&I(je,1)){Be(je,st,nt,qe);return}Ae(je,st,nt),Me(it),Ne(it)}function Be(je,st,nt,qe){let it=P.get(st);it?it.fileNames.push(nt):P.set(st,{dirName:je,options:qe,fileNames:[nt]}),Q&&(R(Q),Q=void 0),Q=b(Fe,1e3,"timerToUpdateChildWatches")}function Fe(){var je;Q=void 0,Ky(`sysLog:: onTimerToUpdateChildWatches:: ${P.size}`);let st=$l(),nt=new Map;for(;!Q&&P.size;){let it=P.entries().next();w.assert(!it.done);let{value:[It,{dirName:dt,options:Tt,fileNames:St}]}=it;P.delete(It);let He=De(dt,It,Tt);(je=N.get(It))!=null&&je.targetWatcher||Ae(dt,It,nt,He?void 0:St)}Ky(`sysLog:: invokingWatchers:: Elapsed:: ${$l()-st}ms:: ${P.size}`),V.forEach((it,It)=>{let dt=nt.get(It);dt&&it.forEach(({callback:Tt,dirName:St})=>{Na(dt)?dt.forEach(Tt):Tt(St)})});let qe=$l()-st;Ky(`sysLog:: Elapsed:: ${qe}ms:: onTimerToUpdateChildWatches:: ${P.size} ${Q}`)}function Ne(je){if(!je)return;let st=je.childWatches;je.childWatches=v;for(let nt of st)nt.close(),Ne(N.get(re(nt.dirName)))}function Me(je){je?.targetWatcher&&(je.targetWatcher.close(),je.targetWatcher=void 0)}function De(je,st,nt){let qe=N.get(st);if(!qe)return!1;let it=Mc(h(je)),It,dt;return te(it,je)===0?It=OI(I(je,1)?tr(d(je),He=>{let ht=Qc(He,je);return!lt(ht,nt)&&te(ht,Mc(h(ht)))===0?ht:void 0}):v,qe.childWatches,(He,ht)=>te(He,ht.dirName),Tt,xB,St):qe.targetWatcher&&te(it,qe.targetWatcher.dirName)===0?(It=!1,w.assert(qe.childWatches===v)):(Me(qe),qe.targetWatcher=ue(it,nt,void 0,je),qe.childWatches.forEach(xB),It=!0),qe.childWatches=dt||v,It;function Tt(He){let ht=ue(He,nt);St(ht)}function St(He){(dt||(dt=[])).push(He)}}function lt(je,st){return lr(Sh,nt=>Le(je,nt))||B1(je,st,c,u)}function Le(je,st){return je.includes(st)?!0:c?!1:re(je).includes(st)}}var z_=(n=>(n[n.File=0]="File",n[n.Directory=1]="Directory",n))(z_||{});function I2(n){return(c,u,d)=>n(u===1?"change":"rename","",d)}function E1(n,c,u){return(d,I,h)=>{d==="rename"?(h||(h=u(n)||BA),c(n,h!==BA?0:2,h)):c(n,1,h)}}function B1(n,c,u,d){return(c?.excludeDirectories||c?.excludeFiles)&&(bke(n,c?.excludeFiles,u,d())||bke(n,c?.excludeDirectories,u,d()))}function L0(n,c,u,d,I){return(h,b)=>{if(h==="rename"){let R=b?Mc(Do(n,b)):n;(!b||!B1(R,u,d,I))&&c(R)}}}function wh({pollingWatchFileWorker:n,getModifiedTime:c,setTimeout:u,clearTimeout:d,fsWatchWorker:I,fileSystemEntryExists:h,useCaseSensitiveFileNames:b,getCurrentDirectory:R,fsSupportsRecursiveFsWatch:N,getAccessibleSortedChildDirectories:V,realpath:P,tscWatchFile:Q,useNonPollingWatchers:te,tscWatchDirectory:re,inodeWatching:ue,fsWatchWithTimestamp:Ae,sysLog:de}){let Be=new Map,Fe=new Map,Ne=new Map,Me,De,lt,Le,je=!1;return{watchFile:st,watchDirectory:dt};function st(Nt,Lt,kt,Zt){Zt=it(Zt,te);let Dr=w.checkDefined(Zt.watchFile);switch(Dr){case 0:return He(Nt,Lt,250,void 0);case 1:return He(Nt,Lt,kt,void 0);case 2:return nt()(Nt,Lt,kt,void 0);case 3:return qe()(Nt,Lt,void 0,void 0);case 4:return ht(Nt,0,E1(Nt,Lt,c),!1,kt,y_e(Zt));case 5:return lt||(lt=v_(ht,b,c,Ae)),lt(Nt,Lt,kt,y_e(Zt));default:w.assertNever(Dr)}}function nt(){return Me||(Me=e_({getModifiedTime:c,setTimeout:u}))}function qe(){return De||(De=f2({getModifiedTime:c,setTimeout:u}))}function it(Nt,Lt){if(Nt&&Nt.watchFile!==void 0)return Nt;switch(Q){case"PriorityPollingInterval":return{watchFile:1};case"DynamicPriorityPolling":return{watchFile:2};case"UseFsEvents":return It(4,1,Nt);case"UseFsEventsWithFallbackDynamicPolling":return It(4,2,Nt);case"UseFsEventsOnParentDirectory":Lt=!0;default:return Lt?It(5,1,Nt):{watchFile:4}}}function It(Nt,Lt,kt){let Zt=kt?.fallbackPolling;return{watchFile:Nt,fallbackPolling:Zt===void 0?Lt:Zt}}function dt(Nt,Lt,kt,Zt){return N?ht(Nt,1,L0(Nt,Lt,Zt,b,R),kt,500,y_e(Zt)):(Le||(Le=NI({useCaseSensitiveFileNames:b,getCurrentDirectory:R,fileSystemEntryExists:h,getAccessibleSortedChildDirectories:V,watchDirectory:Tt,realpath:P,setTimeout:u,clearTimeout:d})),Le(Nt,Lt,kt,Zt))}function Tt(Nt,Lt,kt,Zt){w.assert(!kt);let Dr=St(Zt),jt=w.checkDefined(Dr.watchDirectory);switch(jt){case 1:return He(Nt,()=>Lt(Nt),500,void 0);case 2:return nt()(Nt,()=>Lt(Nt),500,void 0);case 3:return qe()(Nt,()=>Lt(Nt),void 0,void 0);case 0:return ht(Nt,1,L0(Nt,Lt,Zt,b,R),kt,500,y_e(Dr));default:w.assertNever(jt)}}function St(Nt){if(Nt&&Nt.watchDirectory!==void 0)return Nt;switch(re){case"RecursiveDirectoryUsingFsWatchFile":return{watchDirectory:1};case"RecursiveDirectoryUsingDynamicPriorityPolling":return{watchDirectory:2};default:let Lt=Nt?.fallbackPolling;return{watchDirectory:0,fallbackPolling:Lt!==void 0?Lt:void 0}}}function He(Nt,Lt,kt,Zt){return yB(Be,b,Nt,Lt,Dr=>n(Nt,Dr,kt,Zt))}function ht(Nt,Lt,kt,Zt,Dr,jt){return yB(Zt?Ne:Fe,b,Nt,kt,mr=>Et(Nt,Lt,mr,Zt,Dr,jt))}function Et(Nt,Lt,kt,Zt,Dr,jt){let mr,Pt;ue&&(mr=Nt.substring(Nt.lastIndexOf($u)),Pt=mr.slice($u.length));let Vr=h(Nt,Lt)?pr():bi();return{close:()=>{Vr&&(Vr.close(),Vr=void 0)}};function Hr(Pi){Vr&&(de(`sysLog:: ${Nt}:: Changing watcher to ${Pi===pr?"Present":"Missing"}FileSystemEntryWatcher`),Vr.close(),Vr=Pi())}function pr(){if(je)return de(`sysLog:: ${Nt}:: Defaulting to watchFile`),$n();try{let Pi=(Lt===1||!Ae?I:Kt)(Nt,Zt,ue?zr:kt);return Pi.on("error",()=>{kt("rename",""),Hr(bi)}),Pi}catch(Pi){return je||(je=Pi.code==="ENOSPC"),de(`sysLog:: ${Nt}:: Changing to watchFile`),$n()}}function zr(Pi,Ns){let gi;if(Ns&&fl(Ns,"~")&&(gi=Ns,Ns=Ns.slice(0,Ns.length-1)),Pi==="rename"&&(!Ns||Ns===Pt||fl(Ns,mr))){let jn=c(Nt)||BA;gi&&kt(Pi,gi,jn),kt(Pi,Ns,jn),ue?Hr(jn===BA?bi:pr):jn===BA&&Hr(bi)}else gi&&kt(Pi,gi),kt(Pi,Ns)}function $n(){return st(Nt,I2(kt),Dr,jt)}function bi(){return st(Nt,(Pi,Ns,gi)=>{Ns===0&&(gi||(gi=c(Nt)||BA),gi!==BA&&(kt("rename","",gi),Hr(pr)))},Dr,jt)}}function Kt(Nt,Lt,kt){let Zt=c(Nt)||BA;return I(Nt,Lt,(Dr,jt,mr)=>{Dr==="change"&&(mr||(mr=c(Nt)||BA),mr.getTime()===Zt.getTime())||(Zt=mr||c(Nt)||BA,kt(Dr,jt,Zt))})}}function V0(n){let c=n.writeFile;n.writeFile=(u,d,I)=>kme(u,d,!!I,(h,b,R)=>c.call(n,h,b,R),h=>n.createDirectory(h),h=>n.directoryExists(h))}var yd=(()=>{let n="\uFEFF";function c(){let d=/^native |^\([^)]+\)$|^(internal[\\/]|[a-zA-Z0-9_\s]+(\.js)?$)/,I=xt("fs"),h=xt("path"),b=xt("os"),R;try{R=xt("crypto")}catch{R=void 0}let N,V="./profile.cpuprofile",P=process.platform==="darwin",Q=process.platform==="linux"||P,te=b.platform(),re=st(),ue=I.realpathSync.native?process.platform==="win32"?Lt:I.realpathSync.native:I.realpathSync,Ae=__filename.endsWith("sys.js")?h.join(h.dirname(__dirname),"__fake__.js"):__filename,de=process.platform==="win32"||P,Be=su(()=>process.cwd()),{watchFile:Fe,watchDirectory:Ne}=wh({pollingWatchFileWorker:qe,getModifiedTime:Zt,setTimeout,clearTimeout,fsWatchWorker:it,useCaseSensitiveFileNames:re,getCurrentDirectory:Be,fileSystemEntryExists:ht,fsSupportsRecursiveFsWatch:de,getAccessibleSortedChildDirectories:Pt=>St(Pt).directories,realpath:kt,tscWatchFile:process.env.TSC_WATCHFILE,useNonPollingWatchers:!!process.env.TSC_NONPOLLING_WATCHER,tscWatchDirectory:process.env.TSC_WATCHDIRECTORY,inodeWatching:Q,fsWatchWithTimestamp:P,sysLog:Ky}),Me={args:process.argv.slice(2),newLine:b.EOL,useCaseSensitiveFileNames:re,write(Pt){process.stdout.write(Pt)},getWidthOfTerminal(){return process.stdout.columns},writeOutputIsTTY(){return process.stdout.isTTY},readFile:dt,writeFile:Tt,watchFile:Fe,watchDirectory:Ne,resolvePath:Pt=>h.resolve(Pt),fileExists:Et,directoryExists:Kt,getAccessibleFileSystemEntries:St,createDirectory(Pt){if(!Me.directoryExists(Pt))try{I.mkdirSync(Pt)}catch(Vr){if(Vr.code!=="EEXIST")throw Vr}},getExecutingFilePath(){return Ae},getCurrentDirectory:Be,getDirectories:Nt,getEnvironmentVariable(Pt){return process.env[Pt]||""},readDirectory:He,getModifiedTime:Zt,setModifiedTime:Dr,deleteFile:jt,createHash:R?mr:vh,createSHA256Hash:R?mr:void 0,getMemoryUsage(){return global.gc&&global.gc(),process.memoryUsage().heapUsed},getFileSize(Pt){try{let Vr=De(Pt);if(Vr?.isFile())return Vr.size}catch{}return 0},exit(Pt){je(()=>process.exit(Pt))},enableCPUProfiler:lt,disableCPUProfiler:je,cpuProfilingEnabled:()=>!!N||Ue(process.execArgv,"--cpu-prof")||Ue(process.execArgv,"--prof"),realpath:kt,debugMode:!!process.env.NODE_INSPECTOR_IPC||!!process.env.VSCODE_INSPECTOR_OPTIONS||lr(process.execArgv,Pt=>/^--(inspect|debug)(-brk)?(=\d+)?$/i.test(Pt))||!!process.recordreplay,tryEnableSourceMapsForHost(){try{xt("source-map-support").install()}catch{}},setTimeout,clearTimeout,clearScreen:()=>{process.stdout.write("\x1Bc")},setBlocking:()=>{var Pt;let Vr=(Pt=process.stdout)==null?void 0:Pt._handle;Vr&&Vr.setBlocking&&Vr.setBlocking(!0)},base64decode:Pt=>Buffer.from(Pt,"base64").toString("utf8"),base64encode:Pt=>Buffer.from(Pt).toString("base64"),require:(Pt,Vr)=>{try{let Hr=pDt(Vr,Pt,Me);return{module:xt(Hr),modulePath:Hr,error:void 0}}catch(Hr){return{module:void 0,modulePath:void 0,error:Hr}}}};return Me;function De(Pt){return I.statSync(Pt,{throwIfNoEntry:!1})}function lt(Pt,Vr){if(N)return Vr(),!1;let Hr=xt("inspector");if(!Hr||!Hr.Session)return Vr(),!1;let pr=new Hr.Session;return pr.connect(),pr.post("Profiler.enable",()=>{pr.post("Profiler.start",()=>{N=pr,V=Pt,Vr()})}),!0}function Le(Pt){let Vr=0,Hr=new Map,pr=df(h.dirname(Ae)),zr=`file://${t_(pr)===1?"":"/"}${pr}`;for(let $n of Pt.nodes)if($n.callFrame.url){let bi=df($n.callFrame.url);vg(zr,bi,re)?$n.callFrame.url=km(zr,bi,zr,rA(re),!0):d.test(bi)||($n.callFrame.url=(Hr.has(bi)?Hr:Hr.set(bi,`external${Vr}.js`)).get(bi),Vr++)}return Pt}function je(Pt){if(N&&N!=="stopping"){let Vr=N;return N.post("Profiler.stop",(Hr,{profile:pr})=>{var zr;if(!Hr){try{(zr=De(V))!=null&&zr.isDirectory()&&(V=h.join(V,`${new Date().toISOString().replace(/:/g,"-")}+P${process.pid}.cpuprofile`))}catch{}try{I.mkdirSync(h.dirname(V),{recursive:!0})}catch{}I.writeFileSync(V,JSON.stringify(Le(pr)))}N=void 0,Vr.disconnect(),Pt()}),N="stopping",!0}else return Pt(),!1}function st(){return typeof process.versions.pnp<"u"?!0:te==="win32"||te==="win64"?!1:!Et(nt(__filename))}function nt(Pt){return Pt.replace(/\w/g,Vr=>{let Hr=Vr.toUpperCase();return Vr===Hr?Vr.toLowerCase():Hr})}function qe(Pt,Vr,Hr){I.watchFile(Pt,{persistent:!0,interval:Hr},zr);let pr;return{close:()=>I.unwatchFile(Pt,zr)};function zr($n,bi){let Pi=+bi.mtime==0||pr===2;if(+$n.mtime==0){if(Pi)return;pr=2}else if(Pi)pr=0;else{if(+$n.mtime==+bi.mtime)return;pr=1}Vr(Pt,pr,$n.mtime)}}function it(Pt,Vr,Hr){return I.watch(Pt,de?{persistent:!0,recursive:!!Vr}:{persistent:!0},Hr)}function It(Pt,Vr){let Hr;try{Hr=I.readFileSync(Pt)}catch{return}let pr=Hr.length;if(pr>=2&&Hr[0]===254&&Hr[1]===255){pr&=-2;for(let zr=0;zr=2&&Hr[0]===255&&Hr[1]===254?Hr.toString("utf16le",2):pr>=3&&Hr[0]===239&&Hr[1]===187&&Hr[2]===191?Hr.toString("utf8",3):Hr.toString("utf8")}function dt(Pt,Vr){var Hr,pr;(Hr=jl)==null||Hr.logStartReadFile(Pt);let zr=It(Pt,Vr);return(pr=jl)==null||pr.logStopReadFile(),zr}function Tt(Pt,Vr,Hr){var pr;(pr=jl)==null||pr.logEvent("WriteFile: "+Pt),Hr&&(Vr=n+Vr);let zr;try{zr=I.openSync(Pt,"w"),I.writeSync(zr,Vr,void 0,"utf8")}finally{zr!==void 0&&I.closeSync(zr)}}function St(Pt){var Vr;(Vr=jl)==null||Vr.logEvent("ReadDir: "+(Pt||"."));try{let Hr=I.readdirSync(Pt||".",{withFileTypes:!0}),pr=[],zr=[];for(let $n of Hr){let bi=typeof $n=="string"?$n:$n.name;if(bi==="."||bi==="..")continue;let Pi;if(typeof $n=="string"||$n.isSymbolicLink()){let Ns=Do(Pt,bi);try{if(Pi=De(Ns),!Pi)continue}catch{continue}}else Pi=$n;Pi.isFile()?pr.push(bi):Pi.isDirectory()&&zr.push(bi)}return pr.sort(),zr.sort(),{files:pr,directories:zr}}catch{return dhe}}function He(Pt,Vr,Hr,pr,zr){return uhe(Pt,Vr,Hr,pr,re,process.cwd(),zr,St,kt)}function ht(Pt,Vr){let Hr=Error.stackTraceLimit;Error.stackTraceLimit=0;try{let pr=De(Pt);if(!pr)return!1;switch(Vr){case 0:return pr.isFile();case 1:return pr.isDirectory();default:return!1}}catch{return!1}finally{Error.stackTraceLimit=Hr}}function Et(Pt){return ht(Pt,0)}function Kt(Pt){return ht(Pt,1)}function Nt(Pt){return St(Pt).directories.slice()}function Lt(Pt){return Pt.length<260?I.realpathSync.native(Pt):I.realpathSync(Pt)}function kt(Pt){try{return ue(Pt)}catch{return Pt}}function Zt(Pt){var Vr;let Hr=Error.stackTraceLimit;Error.stackTraceLimit=0;try{return(Vr=De(Pt))==null?void 0:Vr.mtime}catch{return}finally{Error.stackTraceLimit=Hr}}function Dr(Pt,Vr){try{I.utimesSync(Pt,Vr,Vr)}catch{return}}function jt(Pt){try{return I.unlinkSync(Pt)}catch{return}}function mr(Pt){let Vr=R.createHash("sha256");return Vr.update(Pt),Vr.digest("hex")}}let u;return gy()&&(u=c()),u&&V0(u),u})();function Bv(n){yd=n}yd&&yd.getEnvironmentVariable&&(BS(yd),w.setAssertionLevel(/^development$/i.test(yd.getEnvironmentVariable("NODE_ENV"))?1:0)),yd&&yd.debugMode&&(w.isDebugging=!0);var $u="/",dC="\\",v1="://",C2=/\\/g;function wp(n){return n===47||n===92}function tC(n){return q_(n)<0}function bd(n){return q_(n)>0}function W0(n){let c=q_(n);return c>0&&c===n.length}function CI(n){return q_(n)!==0}function Qp(n){return/^\.\.?($|[\\/])/.test(n)}function P0(n){return!CI(n)&&!Qp(n)}function S1(n){return kA(n).includes(".")}function Ad(n,c){return n.length>c.length&&fl(n,c)}function fp(n,c){for(let u of c)if(Ad(n,u))return!0;return!1}function S_(n){return n.length>0&&wp(n.charCodeAt(n.length-1))}function SS(n){return n>=97&&n<=122||n>=65&&n<=90}function bB(n,c){let u=n.charCodeAt(c);if(u===58)return c+1;if(u===37&&n.charCodeAt(c+1)===51){let d=n.charCodeAt(c+2);if(d===97||d===65)return c+3}return-1}function q_(n){if(!n)return 0;let c=n.charCodeAt(0);if(c===47||c===92){if(n.charCodeAt(1)!==c)return 1;let d=n.indexOf(c===47?$u:dC,2);return d<0?n.length:d+1}if(SS(c)&&n.charCodeAt(1)===58){let d=n.charCodeAt(2);if(d===47||d===92)return 3;if(n.length===2)return 2}let u=n.indexOf(v1);if(u!==-1){let d=u+v1.length,I=n.indexOf($u,d);if(I!==-1){let h=n.slice(0,u),b=n.slice(d,I);if(h==="file"&&(b===""||b==="localhost")&&SS(n.charCodeAt(I+1))){let R=bB(n,I+2);if(R!==-1){if(n.charCodeAt(R)===47)return~(R+1);if(R===n.length)return~R}}return~(I+1)}return~n.length}return 0}function t_(n){let c=q_(n);return c<0?~c:c}function oa(n){n=df(n);let c=t_(n);return c===n.length?n:(n=w_(n),n.slice(0,Math.max(c,n.lastIndexOf($u))))}function kA(n,c,u){if(n=df(n),t_(n)===n.length)return"";n=w_(n);let I=n.slice(Math.max(t_(n),n.lastIndexOf($u)+1)),h=c!==void 0&&u!==void 0?NE(I,c,u):void 0;return h?I.slice(0,I.length-h.length):I}function lZ(n,c,u){if(uc(c,".")||(c="."+c),n.length>=c.length&&n.charCodeAt(n.length-c.length)===46){let d=n.slice(n.length-c.length);if(u(d,c))return d}}function ZR(n,c,u){if(typeof c=="string")return lZ(n,c,u)||"";for(let d of c){let I=lZ(n,d,u);if(I)return I}return""}function NE(n,c,u){if(c)return ZR(w_(n),c,u?op:um);let d=kA(n),I=d.lastIndexOf(".");return I>=0?d.substring(I):""}function LR(n,c){let u=n.substring(0,c),d=n.substring(c).split($u);return d.length&&!zo(d)&&d.pop(),[u,...d]}function dd(n,c=""){return n=Do(c,n),LR(n,t_(n))}function Iy(n,c){return n.length===0?"":(n[0]&&dA(n[0]))+n.slice(1,c).join($u)}function df(n){return n.includes("\\")?n.replace(C2,$u):n}function rC(n){if(!lr(n))return[];let c=[n[0]];for(let u=1;u1){if(c[c.length-1]!==".."){c.pop();continue}}else if(c[0])continue}c.push(d)}}return c}function Do(n,...c){n&&(n=df(n));for(let u of c)u&&(u=df(u),!n||t_(u)!==0?n=u:n=dA(n)+u);return n}function $_(n,...c){return Mc(lr(c)?Do(n,...c):df(n))}function Ah(n,c){return rC(dd(n,c))}function Qc(n,c){return Iy(Ah(n,c))}function Mc(n){if(n=df(n),!Th.test(n))return n;let c=n.replace(/\/\.\//g,"/").replace(/^\.\//,"");if(c!==n&&(n=c,!Th.test(n)))return n;let u=Iy(rC(dd(n)));return u&&S_(n)?dA(u):u}function sN(n){return n.length===0?"":n.slice(1).join($u)}function wS(n,c){return sN(Ah(n,c))}function AA(n,c,u){let d=bd(n)?Mc(n):Qc(n,c);return u(d)}function w_(n){return S_(n)?n.substr(0,n.length-1):n}function dA(n){return S_(n)?n:n+$u}function jy(n){return!CI(n)&&!Qp(n)?"./"+n:n}function w1(n,c,u,d){let I=u!==void 0&&d!==void 0?NE(n,u,d):NE(n);return I?n.slice(0,n.length-I.length)+(uc(c,".")?c:"."+c):n}function Cy(n,c){let u=c8e(n);return u?n.slice(0,n.length-u.length)+(uc(c,".")?c:"."+c):w1(n,c)}var Th=/(?:\/\/)|(?:^|\/)\.\.?(?:$|\/)/;function TS(n,c,u){if(n===c)return 0;if(n===void 0)return-1;if(c===void 0)return 1;let d=n.substring(0,t_(n)),I=c.substring(0,t_(c)),h=fs(d,I);if(h!==0)return h;let b=n.substring(d.length),R=c.substring(I.length);if(!Th.test(b)&&!Th.test(R))return u(b,R);let N=rC(dd(n)),V=rC(dd(c)),P=Math.min(N.length,V.length);for(let Q=1;Q0==t_(c)>0,"Paths must either both be absolute or both be relative");let h=m2(n,c,(typeof u=="boolean"?u:!1)?op:um,typeof u=="function"?u:vl);return Iy(h)}function RE(n,c,u){return bd(n)?km(c,n,c,u,!1):n}function T1(n,c,u){return jy(Ip(oa(n),c,u))}function km(n,c,u,d,I){let h=m2($_(u,n),$_(u,c),um,d),b=h[0];if(I&&bd(b)){let R=b.charAt(0)===$u?"file://":"file:///";h[0]=R+b}return Iy(h)}function sI(n,c){for(;;){let u=c(n);if(u!==void 0)return u;let d=oa(n);if(d===n)return;n=d}}function NS(n){return fl(n,"/node_modules")}function $(n,c,u,d,I,h,b){return{code:n,category:c,key:u,message:d,reportsUnnecessary:I,elidedInCompatabilityPyramid:h,reportsDeprecated:b}}var Z={Unterminated_string_literal:$(1002,1,"Unterminated_string_literal_1002","Unterminated string literal."),Identifier_expected:$(1003,1,"Identifier_expected_1003","Identifier expected."),_0_expected:$(1005,1,"_0_expected_1005","'{0}' expected."),A_file_cannot_have_a_reference_to_itself:$(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:$(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:$(1009,1,"Trailing_comma_not_allowed_1009","Trailing comma not allowed."),Asterisk_Slash_expected:$(1010,1,"Asterisk_Slash_expected_1010","'*/' expected."),An_element_access_expression_should_take_an_argument:$(1011,1,"An_element_access_expression_should_take_an_argument_1011","An element access expression should take an argument."),Unexpected_token:$(1012,1,"Unexpected_token_1012","Unexpected token."),A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1025,1,"An_index_signature_cannot_have_a_trailing_comma_1025","An index signature cannot have a trailing comma."),Accessibility_modifier_already_seen:$(1028,1,"Accessibility_modifier_already_seen_1028","Accessibility modifier already seen."),_0_modifier_must_precede_1_modifier:$(1029,1,"_0_modifier_must_precede_1_modifier_1029","'{0}' modifier must precede '{1}' modifier."),_0_modifier_already_seen:$(1030,1,"_0_modifier_already_seen_1030","'{0}' modifier already seen."),_0_modifier_cannot_appear_on_class_elements_of_this_kind:$(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:$(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:$(1035,1,"Only_ambient_modules_can_use_quoted_names_1035","Only ambient modules can use quoted names."),Statements_are_not_allowed_in_ambient_contexts:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1047,1,"A_rest_parameter_cannot_be_optional_1047","A rest parameter cannot be optional."),A_rest_parameter_cannot_have_an_initializer:$(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:$(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:$(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:$(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:$(1053,1,"A_set_accessor_cannot_have_rest_parameter_1053","A 'set' accessor cannot have rest parameter."),A_get_accessor_cannot_have_parameters:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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 type. Did you mean to write 'Promise<{0}>'?"),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type:$(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 type."),In_ambient_enum_declarations_member_initializer_must_be_constant_expression:$(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:$(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:$(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:$(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:$(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:$(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:$(1084,1,"Invalid_reference_directive_syntax_1084","Invalid 'reference' directive syntax."),_0_modifier_cannot_appear_on_a_constructor_declaration:$(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:$(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:$(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:$(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:$(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:$(1094,1,"An_accessor_cannot_have_type_parameters_1094","An accessor cannot have type parameters."),A_set_accessor_cannot_have_a_return_type_annotation:$(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:$(1096,1,"An_index_signature_must_have_exactly_one_parameter_1096","An index signature must have exactly one parameter."),_0_list_cannot_be_empty:$(1097,1,"_0_list_cannot_be_empty_1097","'{0}' list cannot be empty."),Type_parameter_list_cannot_be_empty:$(1098,1,"Type_parameter_list_cannot_be_empty_1098","Type parameter list cannot be empty."),Type_argument_list_cannot_be_empty:$(1099,1,"Type_argument_list_cannot_be_empty_1099","Type argument list cannot be empty."),Invalid_use_of_0_in_strict_mode:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1109,1,"Expression_expected_1109","Expression expected."),Type_expected:$(1110,1,"Type_expected_1110","Type expected."),Private_field_0_must_be_declared_in_an_enclosing_class:$(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:$(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:$(1114,1,"Duplicate_label_0_1114","Duplicate label '{0}'."),A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement:$(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:$(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:$(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:$(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:$(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:$(1120,1,"An_export_assignment_cannot_have_modifiers_1120","An export assignment cannot have modifiers."),Octal_literals_are_not_allowed_Use_the_syntax_0:$(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:$(1123,1,"Variable_declaration_list_cannot_be_empty_1123","Variable declaration list cannot be empty."),Digit_expected:$(1124,1,"Digit_expected_1124","Digit expected."),Hexadecimal_digit_expected:$(1125,1,"Hexadecimal_digit_expected_1125","Hexadecimal digit expected."),Unexpected_end_of_text:$(1126,1,"Unexpected_end_of_text_1126","Unexpected end of text."),Invalid_character:$(1127,1,"Invalid_character_1127","Invalid character."),Declaration_or_statement_expected:$(1128,1,"Declaration_or_statement_expected_1128","Declaration or statement expected."),Statement_expected:$(1129,1,"Statement_expected_1129","Statement expected."),case_or_default_expected:$(1130,1,"case_or_default_expected_1130","'case' or 'default' expected."),Property_or_signature_expected:$(1131,1,"Property_or_signature_expected_1131","Property or signature expected."),Enum_member_expected:$(1132,1,"Enum_member_expected_1132","Enum member expected."),Variable_declaration_expected:$(1134,1,"Variable_declaration_expected_1134","Variable declaration expected."),Argument_expression_expected:$(1135,1,"Argument_expression_expected_1135","Argument expression expected."),Property_assignment_expected:$(1136,1,"Property_assignment_expected_1136","Property assignment expected."),Expression_or_comma_expected:$(1137,1,"Expression_or_comma_expected_1137","Expression or comma expected."),Parameter_declaration_expected:$(1138,1,"Parameter_declaration_expected_1138","Parameter declaration expected."),Type_parameter_declaration_expected:$(1139,1,"Type_parameter_declaration_expected_1139","Type parameter declaration expected."),Type_argument_expected:$(1140,1,"Type_argument_expected_1140","Type argument expected."),String_literal_expected:$(1141,1,"String_literal_expected_1141","String literal expected."),Line_break_not_permitted_here:$(1142,1,"Line_break_not_permitted_here_1142","Line break not permitted here."),or_expected:$(1144,1,"or_expected_1144","'{' or ';' expected."),or_JSX_element_expected:$(1145,1,"or_JSX_element_expected_1145","'{' or JSX element expected."),Declaration_expected:$(1146,1,"Declaration_expected_1146","Declaration expected."),Import_declarations_in_a_namespace_cannot_reference_a_module:$(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:$(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:$(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:$(1155,1,"_0_declarations_must_be_initialized_1155","'{0}' declarations must be initialized."),_0_declarations_can_only_be_declared_inside_a_block:$(1156,1,"_0_declarations_can_only_be_declared_inside_a_block_1156","'{0}' declarations can only be declared inside a block."),Unterminated_template_literal:$(1160,1,"Unterminated_template_literal_1160","Unterminated template literal."),Unterminated_regular_expression_literal:$(1161,1,"Unterminated_regular_expression_literal_1161","Unterminated regular expression literal."),An_object_member_cannot_be_declared_optional:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1172,1,"extends_clause_already_seen_1172","'extends' clause already seen."),extends_clause_must_precede_implements_clause:$(1173,1,"extends_clause_must_precede_implements_clause_1173","'extends' clause must precede 'implements' clause."),Classes_can_only_extend_a_single_class:$(1174,1,"Classes_can_only_extend_a_single_class_1174","Classes can only extend a single class."),implements_clause_already_seen:$(1175,1,"implements_clause_already_seen_1175","'implements' clause already seen."),Interface_declaration_cannot_have_implements_clause:$(1176,1,"Interface_declaration_cannot_have_implements_clause_1176","Interface declaration cannot have 'implements' clause."),Binary_digit_expected:$(1177,1,"Binary_digit_expected_1177","Binary digit expected."),Octal_digit_expected:$(1178,1,"Octal_digit_expected_1178","Octal digit expected."),Unexpected_token_expected:$(1179,1,"Unexpected_token_expected_1179","Unexpected token. '{' expected."),Property_destructuring_pattern_expected:$(1180,1,"Property_destructuring_pattern_expected_1180","Property destructuring pattern expected."),Array_element_destructuring_pattern_expected:$(1181,1,"Array_element_destructuring_pattern_expected_1181","Array element destructuring pattern expected."),A_destructuring_declaration_must_have_an_initializer:$(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:$(1183,1,"An_implementation_cannot_be_declared_in_ambient_contexts_1183","An implementation cannot be declared in ambient contexts."),Modifiers_cannot_appear_here:$(1184,1,"Modifiers_cannot_appear_here_1184","Modifiers cannot appear here."),Merge_conflict_marker_encountered:$(1185,1,"Merge_conflict_marker_encountered_1185","Merge conflict marker encountered."),A_rest_element_cannot_have_an_initializer:$(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:$(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:$(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:$(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:$(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:$(1191,1,"An_import_declaration_cannot_have_modifiers_1191","An import declaration cannot have modifiers."),Module_0_has_no_default_export:$(1192,1,"Module_0_has_no_default_export_1192","Module '{0}' has no default export."),An_export_declaration_cannot_have_modifiers:$(1193,1,"An_export_declaration_cannot_have_modifiers_1193","An export declaration cannot have modifiers."),Export_declarations_are_not_permitted_in_a_namespace:$(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:$(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:$(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:$(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:$(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:$(1199,1,"Unterminated_Unicode_escape_sequence_1199","Unterminated Unicode escape sequence."),Line_terminator_not_permitted_before_arrow:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1223,1,"_0_tag_already_specified_1223","'{0}' tag already specified."),Signature_0_must_be_a_type_predicate:$(1224,1,"Signature_0_must_be_a_type_predicate_1224","Signature '{0}' must be a type predicate."),Cannot_find_parameter_0:$(1225,1,"Cannot_find_parameter_0_1225","Cannot find parameter '{0}'."),Type_predicate_0_is_not_assignable_to_1:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1348,1,"Non_simple_parameter_declared_here_1348","Non-simple parameter declared here."),use_strict_directive_used_here:$(1349,1,"use_strict_directive_used_here_1349","'use strict' directive used here."),Print_the_final_configuration_instead_of_building:$(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:$(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:$(1352,1,"A_bigint_literal_cannot_use_exponential_notation_1352","A bigint literal cannot use exponential notation."),A_bigint_literal_must_be_an_integer:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1364,3,"Convert_to_type_only_export_1364","Convert to type-only export"),Convert_all_re_exported_types_to_type_only_exports:$(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:$(1366,3,"Split_into_two_separate_import_declarations_1366","Split into two separate import declarations"),Split_all_invalid_type_only_imports:$(1367,3,"Split_all_invalid_type_only_imports_1367","Split all invalid type-only imports"),Class_constructor_may_not_be_a_generator:$(1368,1,"Class_constructor_may_not_be_a_generator_1368","Class constructor may not be a generator."),Did_you_mean_0:$(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:$(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:$(1376,3,"_0_was_imported_here_1376","'{0}' was imported here."),_0_was_exported_here:$(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:$(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:$(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:$(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:$(1381,1,"Unexpected_token_Did_you_mean_or_rbrace_1381","Unexpected token. Did you mean `{'}'}` or `}`?"),Unexpected_token_Did_you_mean_or_gt:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1392,1,"An_import_alias_cannot_use_import_type_1392","An import alias cannot use 'import type'"),Imported_via_0_from_file_1:$(1393,3,"Imported_via_0_from_file_1_1393","Imported via {0} from file '{1}'"),Imported_via_0_from_file_1_with_packageId_2:$(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:$(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:$(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:$(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:$(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:$(1399,3,"File_is_included_via_import_here_1399","File is included via import here."),Referenced_via_0_from_file_1:$(1400,3,"Referenced_via_0_from_file_1_1400","Referenced via '{0}' from file '{1}'"),File_is_included_via_reference_here:$(1401,3,"File_is_included_via_reference_here_1401","File is included via reference here."),Type_library_referenced_via_0_from_file_1:$(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:$(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:$(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:$(1405,3,"Library_referenced_via_0_from_file_1_1405","Library referenced via '{0}' from file '{1}'"),File_is_included_via_library_reference_here:$(1406,3,"File_is_included_via_library_reference_here_1406","File is included via library reference here."),Matched_by_include_pattern_0_in_1:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1422,3,"Library_0_specified_in_compilerOptions_1422","Library '{0}' specified in compilerOptions"),File_is_library_specified_here:$(1423,3,"File_is_library_specified_here_1423","File is library specified here."),Default_library:$(1424,3,"Default_library_1424","Default library"),Default_library_for_target_0:$(1425,3,"Default_library_for_target_0_1425","Default library for target '{0}'"),File_is_default_library_for_target_specified_here:$(1426,3,"File_is_default_library_for_target_specified_here_1426","File is default library for target specified here."),Root_file_specified_for_compilation:$(1427,3,"Root_file_specified_for_compilation_1427","Root file specified for compilation"),File_is_output_of_project_reference_source_0:$(1428,3,"File_is_output_of_project_reference_source_0_1428","File is output of project reference source '{0}'"),File_redirects_to_file_0:$(1429,3,"File_redirects_to_file_0_1429","File redirects to file '{0}'"),The_file_is_in_the_program_because_Colon:$(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:$(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:$(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:$(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:$(1434,1,"Unexpected_keyword_or_identifier_1434","Unexpected keyword or identifier."),Unknown_keyword_or_identifier_Did_you_mean_0:$(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:$(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:$(1437,1,"Namespace_must_be_given_a_name_1437","Namespace must be given a name."),Interface_must_be_given_a_name:$(1438,1,"Interface_must_be_given_a_name_1438","Interface must be given a name."),Type_alias_must_be_given_a_name:$(1439,1,"Type_alias_must_be_given_a_name_1439","Type alias must be given a name."),Variable_declaration_not_allowed_at_this_location:$(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:$(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:$(1442,1,"Expected_for_property_initializer_1442","Expected '=' for property initializer."),Module_declaration_names_may_only_use_or_quoted_strings:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1486,1,"Decorator_used_before_export_here_1486","Decorator used before 'export' here."),Octal_escape_sequences_are_not_allowed_Use_the_syntax_0:$(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:$(1488,1,"Escape_sequence_0_is_not_allowed_1488","Escape sequence '{0}' is not allowed."),Decimals_with_leading_zeros_are_not_allowed:$(1489,1,"Decimals_with_leading_zeros_are_not_allowed_1489","Decimals with leading zeros are not allowed."),File_appears_to_be_binary:$(1490,1,"File_appears_to_be_binary_1490","File appears to be binary."),_0_modifier_cannot_appear_on_a_using_declaration:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(1498,1,"Invalid_syntax_in_decorator_1498","Invalid syntax in decorator."),Unknown_regular_expression_flag:$(1499,1,"Unknown_regular_expression_flag_1499","Unknown regular expression flag."),Duplicate_regular_expression_flag:$(1500,1,"Duplicate_regular_expression_flag_1500","Duplicate regular expression flag."),This_regular_expression_flag_is_only_available_when_targeting_0_or_later:$(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:$(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:$(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:$(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:$(1505,1,"Incomplete_quantifier_Digit_expected_1505","Incomplete quantifier. Digit expected."),Numbers_out_of_order_in_quantifier:$(1506,1,"Numbers_out_of_order_in_quantifier_1506","Numbers out of order in quantifier."),There_is_nothing_available_for_repetition:$(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:$(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:$(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:$(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:$(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:$(1512,1,"c_must_be_followed_by_an_ASCII_letter_1512","'\\c' must be followed by an ASCII letter."),Undetermined_character_escape:$(1513,1,"Undetermined_character_escape_1513","Undetermined character escape."),Expected_a_capturing_group_name:$(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:$(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:$(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:$(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:$(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:$(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:$(1520,1,"Expected_a_class_set_operand_1520","Expected a class set operand."),q_must_be_followed_by_string_alternatives_enclosed_in_braces:$(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:$(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:$(1523,1,"Expected_a_Unicode_property_name_1523","Expected a Unicode property name."),Unknown_Unicode_property_name:$(1524,1,"Unknown_Unicode_property_name_1524","Unknown Unicode property name."),Expected_a_Unicode_property_value:$(1525,1,"Expected_a_Unicode_property_value_1525","Expected a Unicode property value."),Unknown_Unicode_property_value:$(1526,1,"Unknown_Unicode_property_value_1526","Unknown Unicode property value."),Expected_a_Unicode_property_name_or_value:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2211,3,"Add_extends_constraint_2211","Add `extends` constraint."),Add_extends_constraint_to_all_type_parameters:$(2212,3,"Add_extends_constraint_to_all_type_parameters_2212","Add `extends` constraint to all type parameters"),Duplicate_identifier_0:$(2300,1,"Duplicate_identifier_0_2300","Duplicate identifier '{0}'."),Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:$(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:$(2302,1,"Static_members_cannot_reference_class_type_parameters_2302","Static members cannot reference class type parameters."),Circular_definition_of_import_alias_0:$(2303,1,"Circular_definition_of_import_alias_0_2303","Circular definition of import alias '{0}'."),Cannot_find_name_0:$(2304,1,"Cannot_find_name_0_2304","Cannot find name '{0}'."),Module_0_has_no_exported_member_1:$(2305,1,"Module_0_has_no_exported_member_1_2305","Module '{0}' has no exported member '{1}'."),File_0_is_not_a_module:$(2306,1,"File_0_is_not_a_module_2306","File '{0}' is not a module."),Cannot_find_module_0_or_its_corresponding_type_declarations:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2314,1,"Generic_type_0_requires_1_type_argument_s_2314","Generic type '{0}' requires {1} type argument(s)."),Type_0_is_not_generic:$(2315,1,"Type_0_is_not_generic_2315","Type '{0}' is not generic."),Global_type_0_must_be_a_class_or_interface_type:$(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:$(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:$(2318,1,"Cannot_find_global_type_0_2318","Cannot find global type '{0}'."),Named_property_0_of_types_1_and_2_are_not_identical:$(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:$(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:$(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:$(2322,1,"Type_0_is_not_assignable_to_type_1_2322","Type '{0}' is not assignable to type '{1}'."),Cannot_redeclare_exported_variable_0:$(2323,1,"Cannot_redeclare_exported_variable_0_2323","Cannot redeclare exported variable '{0}'."),Property_0_is_missing_in_type_1:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2349,1,"This_expression_is_not_callable_2349","This expression is not callable."),Only_a_void_function_can_be_called_with_the_new_keyword:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2372,1,"Parameter_0_cannot_reference_itself_2372","Parameter '{0}' cannot reference itself."),Parameter_0_cannot_reference_identifier_1_declared_after_it:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2386,1,"Overload_signatures_must_all_be_optional_or_required_2386","Overload signatures must all be optional or required."),Function_overload_must_be_static:$(2387,1,"Function_overload_must_be_static_2387","Function overload must be static."),Function_overload_must_not_be_static:$(2388,1,"Function_overload_must_not_be_static_2388","Function overload must not be static."),Function_implementation_name_must_be_0:$(2389,1,"Function_implementation_name_must_be_0_2389","Function implementation name must be '{0}'."),Constructor_implementation_is_missing:$(2390,1,"Constructor_implementation_is_missing_2390","Constructor implementation is missing."),Function_implementation_is_missing_or_not_immediately_following_the_declaration:$(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:$(2392,1,"Multiple_constructor_implementations_are_not_allowed_2392","Multiple constructor implementations are not allowed."),Duplicate_function_implementation:$(2393,1,"Duplicate_function_implementation_2393","Duplicate function implementation."),This_overload_signature_is_not_compatible_with_its_implementation_signature:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2414,1,"Class_name_cannot_be_0_2414","Class name cannot be '{0}'."),Class_0_incorrectly_extends_base_class_1:$(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:$(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:$(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:$(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:$(2419,1,"Types_of_construct_signatures_are_incompatible_2419","Types of construct signatures are incompatible."),Class_0_incorrectly_implements_interface_1:$(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:$(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:$(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:$(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:$(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:$(2427,1,"Interface_name_cannot_be_0_2427","Interface name cannot be '{0}'."),All_declarations_of_0_must_have_identical_type_parameters:$(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:$(2430,1,"Interface_0_incorrectly_extends_interface_1_2430","Interface '{0}' incorrectly extends interface '{1}'."),Enum_name_cannot_be_0:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2449,1,"Class_0_used_before_its_declaration_2449","Class '{0}' used before its declaration."),Enum_0_used_before_its_declaration:$(2450,1,"Enum_0_used_before_its_declaration_2450","Enum '{0}' used before its declaration."),Cannot_redeclare_block_scoped_variable_0:$(2451,1,"Cannot_redeclare_block_scoped_variable_0_2451","Cannot redeclare block-scoped variable '{0}'."),An_enum_member_cannot_have_a_numeric_name:$(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:$(2454,1,"Variable_0_is_used_before_being_assigned_2454","Variable '{0}' is used before being assigned."),Type_alias_0_circularly_references_itself:$(2456,1,"Type_alias_0_circularly_references_itself_2456","Type alias '{0}' circularly references itself."),Type_alias_name_cannot_be_0:$(2457,1,"Type_alias_name_cannot_be_0_2457","Type alias name cannot be '{0}'."),An_AMD_module_cannot_have_multiple_name_assignments:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2468,1,"Cannot_find_global_value_0_2468","Cannot find global value '{0}'."),The_0_operator_cannot_be_applied_to_type_symbol:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2503,1,"Cannot_find_namespace_0_2503","Cannot find namespace '{0}'."),Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2530,1,"Property_0_is_incompatible_with_index_signature_2530","Property '{0}' is incompatible with index signature."),Object_is_possibly_null:$(2531,1,"Object_is_possibly_null_2531","Object is possibly 'null'."),Object_is_possibly_undefined:$(2532,1,"Object_is_possibly_undefined_2532","Object is possibly 'undefined'."),Object_is_possibly_null_or_undefined:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2554,1,"Expected_0_arguments_but_got_1_2554","Expected {0} arguments, but got {1}."),Expected_at_least_0_arguments_but_got_1:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2571,1,"Object_is_of_type_unknown_2571","Object is of type 'unknown'."),A_rest_element_type_must_be_an_array_type:$(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:$(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:$(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:$(2577,1,"Return_type_annotation_circularly_references_itself_2577","Return type annotation circularly references itself."),Unused_ts_expect_error_directive:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2708,1,"Cannot_use_namespace_0_as_a_value_2708","Cannot use namespace '{0}' as a value."),Cannot_use_namespace_0_as_a_type:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2728,3,"_0_is_declared_here_2728","'{0}' is declared here."),Property_0_is_used_before_its_initialization:$(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:$(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:$(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:$(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:$(2733,1,"Property_0_was_also_declared_here_2733","Property '{0}' was also declared here."),Are_you_missing_a_semicolon:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2750,1,"The_implementation_signature_is_declared_here_2750","The implementation signature is declared here."),Circularity_originates_in_type_at_this_location:$(2751,1,"Circularity_originates_in_type_at_this_location_2751","Circularity originates in type at this location."),The_first_export_default_is_here:$(2752,1,"The_first_export_default_is_here_2752","The first export default is here."),Another_export_default_is_here:$(2753,1,"Another_export_default_is_here_2753","Another export default is here."),super_may_not_use_type_arguments:$(2754,1,"super_may_not_use_type_arguments_2754","'super' may not use type arguments."),No_constituent_of_type_0_is_callable:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2769,1,"No_overload_matches_this_call_2769","No overload matches this call."),The_last_overload_gave_the_following_error:$(2770,1,"The_last_overload_gave_the_following_error_2770","The last overload gave the following error."),The_last_overload_is_declared_here:$(2771,1,"The_last_overload_is_declared_here_2771","The last overload is declared here."),Overload_0_of_1_2_gave_the_following_error:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(2785,1,"This_spread_always_overwrites_this_property_2785","This spread always overwrites this property."),_0_cannot_be_used_as_a_JSX_component:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(4109,1,"Type_arguments_for_0_circularly_reference_themselves_4109","Type arguments for '{0}' circularly reference themselves."),Tuple_type_arguments_circularly_reference_themselves:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(5012,1,"Cannot_read_file_0_Colon_1_5012","Cannot read file '{0}': {1}."),Failed_to_parse_file_0_Colon_1:$(5014,1,"Failed_to_parse_file_0_Colon_1_5014","Failed to parse file '{0}': {1}."),Unknown_compiler_option_0:$(5023,1,"Unknown_compiler_option_0_5023","Unknown compiler option '{0}'."),Compiler_option_0_requires_a_value_of_type_1:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(5072,1,"Unknown_build_option_0_5072","Unknown build option '{0}'."),Build_option_0_requires_a_value_of_type_1:$(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:$(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:$(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:$(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:$(5077,1,"Unknown_build_option_0_Did_you_mean_1_5077","Unknown build option '{0}'. Did you mean '{1}'?"),Unknown_watch_option_0:$(5078,1,"Unknown_watch_option_0_5078","Unknown watch option '{0}'."),Unknown_watch_option_0_Did_you_mean_1:$(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:$(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:$(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:$(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:$(5083,1,"Cannot_read_file_0_5083","Cannot read file '{0}'."),A_tuple_member_cannot_be_both_optional_and_rest:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(5103,1,"Invalid_value_for_ignoreDeprecations_5103","Invalid value for '--ignoreDeprecations'."),Option_0_is_redundant_and_cannot_be_specified_with_option_1:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6001,3,"Concatenate_and_emit_output_to_single_file_6001","Concatenate and emit output to single file."),Generates_corresponding_d_ts_file:$(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:$(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:$(6005,3,"Watch_input_files_6005","Watch input files."),Redirect_output_structure_to_the_directory:$(6006,3,"Redirect_output_structure_to_the_directory_6006","Redirect output structure to the directory."),Do_not_erase_const_enum_declarations_in_generated_code:$(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:$(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:$(6009,3,"Do_not_emit_comments_to_output_6009","Do not emit comments to output."),Do_not_emit_outputs:$(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:$(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:$(6012,3,"Skip_type_checking_of_declaration_files_6012","Skip type checking of declaration files."),Do_not_resolve_the_real_path_of_symlinks:$(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:$(6014,3,"Only_emit_d_ts_declaration_files_6014","Only emit '.d.ts' declaration files."),Specify_ECMAScript_target_version:$(6015,3,"Specify_ECMAScript_target_version_6015","Specify ECMAScript target version."),Specify_module_code_generation:$(6016,3,"Specify_module_code_generation_6016","Specify module code generation."),Print_this_message:$(6017,3,"Print_this_message_6017","Print this message."),Print_the_compiler_s_version:$(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:$(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:$(6023,3,"Syntax_Colon_0_6023","Syntax: {0}"),options:$(6024,3,"options_6024","options"),file:$(6025,3,"file_6025","file"),Examples_Colon_0:$(6026,3,"Examples_Colon_0_6026","Examples: {0}"),Options_Colon:$(6027,3,"Options_Colon_6027","Options:"),Version_0:$(6029,3,"Version_0_6029","Version {0}"),Insert_command_line_options_and_files_from_a_file:$(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:$(6031,3,"Starting_compilation_in_watch_mode_6031","Starting compilation in watch mode..."),File_change_detected_Starting_incremental_compilation:$(6032,3,"File_change_detected_Starting_incremental_compilation_6032","File change detected. Starting incremental compilation..."),KIND:$(6034,3,"KIND_6034","KIND"),FILE:$(6035,3,"FILE_6035","FILE"),VERSION:$(6036,3,"VERSION_6036","VERSION"),LOCATION:$(6037,3,"LOCATION_6037","LOCATION"),DIRECTORY:$(6038,3,"DIRECTORY_6038","DIRECTORY"),STRATEGY:$(6039,3,"STRATEGY_6039","STRATEGY"),FILE_OR_DIRECTORY:$(6040,3,"FILE_OR_DIRECTORY_6040","FILE OR DIRECTORY"),Errors_Files:$(6041,3,"Errors_Files_6041","Errors Files"),Generates_corresponding_map_file:$(6043,3,"Generates_corresponding_map_file_6043","Generates corresponding '.map' file."),Compiler_option_0_expects_an_argument:$(6044,1,"Compiler_option_0_expects_an_argument_6044","Compiler option '{0}' expects an argument."),Unterminated_quoted_string_in_response_file_0:$(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:$(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:$(6048,1,"Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1_6048","Locale must be of the form or -. For example '{0}' or '{1}'."),Unable_to_open_file_0:$(6050,1,"Unable_to_open_file_0_6050","Unable to open file '{0}'."),Corrupted_locale_file_0:$(6051,1,"Corrupted_locale_file_0_6051","Corrupted locale file {0}."),Raise_error_on_expressions_and_declarations_with_an_implied_any_type:$(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:$(6053,1,"File_0_not_found_6053","File '{0}' not found."),File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1:$(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:$(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:$(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:$(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:$(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:$(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:$(6061,3,"NEWLINE_6061","NEWLINE"),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line:$(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:$(6065,3,"Enables_experimental_support_for_ES7_decorators_6065","Enables experimental support for ES7 decorators."),Enables_experimental_support_for_emitting_type_metadata_for_decorators:$(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:$(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:$(6071,3,"Successfully_created_a_tsconfig_json_file_6071","Successfully created a tsconfig.json file."),Suppress_excess_property_checks_for_object_literals:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6080,3,"Specify_JSX_code_generation_6080","Specify JSX code generation."),Only_amd_and_system_modules_are_supported_alongside_0:$(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:$(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:$(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:$(6085,3,"Enable_tracing_of_the_name_resolution_process_6085","Enable tracing of the name resolution process."),Resolving_module_0_from_1:$(6086,3,"Resolving_module_0_from_1_6086","======== Resolving module '{0}' from '{1}'. ========"),Explicitly_specified_module_resolution_kind_Colon_0:$(6087,3,"Explicitly_specified_module_resolution_kind_Colon_0_6087","Explicitly specified module resolution kind: '{0}'."),Module_resolution_kind_is_not_specified_using_0:$(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:$(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:$(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:$(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:$(6092,3,"Module_name_0_matched_pattern_1_6092","Module name '{0}', matched pattern '{1}'."),Trying_substitution_0_candidate_module_location_Colon_1:$(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:$(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:$(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:$(6096,3,"File_0_does_not_exist_6096","File '{0}' does not exist."),File_0_exists_use_it_as_a_name_resolution_result:$(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:$(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:$(6099,3,"Found_package_json_at_0_6099","Found 'package.json' at '{0}'."),package_json_does_not_have_a_0_field:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6110,3,"Trying_other_entries_in_rootDirs_6110","Trying other entries in 'rootDirs'."),Module_resolution_using_rootDirs_has_failed:$(6111,3,"Module_resolution_using_rootDirs_has_failed_6111","Module resolution using 'rootDirs' has failed."),Do_not_emit_use_strict_directives_in_module_output:$(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:$(6113,3,"Enable_strict_null_checks_6113","Enable strict null checks."),Unknown_option_excludes_Did_you_mean_exclude:$(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:$(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:$(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:$(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:$(6120,3,"Type_reference_directive_0_was_not_resolved_6120","======== Type reference directive '{0}' was not resolved. ========"),Resolving_with_primary_search_path_0:$(6121,3,"Resolving_with_primary_search_path_0_6121","Resolving with primary search path '{0}'."),Root_directory_cannot_be_determined_skipping_primary_search_paths:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6134,3,"Report_errors_on_unused_locals_6134","Report errors on unused locals."),Report_errors_on_unused_parameters:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6149,3,"Show_diagnostic_information_6149","Show diagnostic information."),Show_verbose_diagnostic_information:$(6150,3,"Show_verbose_diagnostic_information_6150","Show verbose diagnostic information."),Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6162,3,"Disable_size_limitations_on_JavaScript_projects_6162","Disable size limitations on JavaScript projects."),The_character_set_of_the_input_files:$(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:$(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:$(6165,3,"Do_not_truncate_error_messages_6165","Do not truncate error messages."),Output_directory_for_generated_declaration_files:$(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:$(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:$(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:$(6169,3,"Show_all_compiler_options_6169","Show all compiler options."),Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file:$(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:$(6171,3,"Command_line_Options_6171","Command-line Options"),Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5:$(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:$(6180,3,"Enable_all_strict_type_checking_options_6180","Enable all strict type-checking options."),Scoped_package_detected_looking_in_0:$(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:$(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:$(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:$(6186,3,"Enable_strict_checking_of_function_types_6186","Enable strict checking of function types."),Enable_strict_checking_of_property_initialization_in_classes:$(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:$(6188,1,"Numeric_separators_are_not_allowed_here_6188","Numeric separators are not allowed here."),Multiple_consecutive_numeric_separators_are_not_permitted:$(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:$(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:$(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:$(6193,3,"Found_1_error_Watching_for_file_changes_6193","Found 1 error. Watching for file changes."),Found_0_errors_Watching_for_file_changes:$(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:$(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:$(6196,1,"_0_is_declared_but_never_used_6196","'{0}' is declared but never used.",!0),Include_modules_imported_with_json_extension:$(6197,3,"Include_modules_imported_with_json_extension_6197","Include modules imported with '.json' extension"),All_destructured_elements_are_unused:$(6198,1,"All_destructured_elements_are_unused_6198","All destructured elements are unused.",!0),All_variables_are_unused:$(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:$(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:$(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:$(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:$(6203,3,"_0_was_also_declared_here_6203","'{0}' was also declared here."),and_here:$(6204,3,"and_here_6204","and here."),All_type_parameters_are_unused:$(6205,1,"All_type_parameters_are_unused_6205","All type parameters are unused."),package_json_has_a_typesVersions_field_with_version_specific_path_mappings:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6215,3,"Using_compiler_options_of_project_reference_redirect_0_6215","Using compiler options of project reference redirect '{0}'."),Found_1_error:$(6216,3,"Found_1_error_6216","Found 1 error."),Found_0_errors:$(6217,3,"Found_0_errors_6217","Found {0} errors."),Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2:$(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:$(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:$(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:$(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:$(6222,3,"Emit_class_fields_with_Define_instead_of_Set_6222","Emit class fields with Define instead of Set."),Generates_a_CPU_profile:$(6223,3,"Generates_a_CPU_profile_6223","Generates a CPU profile."),Disable_solution_searching_for_this_project:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6235,3,"Disable_loading_referenced_projects_6235","Disable loading referenced projects."),Arguments_for_the_rest_parameter_0_were_not_provided:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6243,3,"Interpret_optional_property_types_as_written_rather_than_adding_undefined_6243","Interpret optional property types as written, rather than adding 'undefined'."),Modules:$(6244,3,"Modules_6244","Modules"),File_Management:$(6245,3,"File_Management_6245","File Management"),Emit:$(6246,3,"Emit_6246","Emit"),JavaScript_Support:$(6247,3,"JavaScript_Support_6247","JavaScript Support"),Type_Checking:$(6248,3,"Type_Checking_6248","Type Checking"),Editor_Support:$(6249,3,"Editor_Support_6249","Editor Support"),Watch_and_Build_Modes:$(6250,3,"Watch_and_Build_Modes_6250","Watch and Build Modes"),Compiler_Diagnostics:$(6251,3,"Compiler_Diagnostics_6251","Compiler Diagnostics"),Interop_Constraints:$(6252,3,"Interop_Constraints_6252","Interop Constraints"),Backwards_Compatibility:$(6253,3,"Backwards_Compatibility_6253","Backwards Compatibility"),Language_and_Environment:$(6254,3,"Language_and_Environment_6254","Language and Environment"),Projects:$(6255,3,"Projects_6255","Projects"),Output_Formatting:$(6256,3,"Output_Formatting_6256","Output Formatting"),Completeness:$(6257,3,"Completeness_6257","Completeness"),_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file:$(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:$(6259,3,"Found_1_error_in_0_6259","Found 1 error in {0}"),Found_0_errors_in_the_same_file_starting_at_Colon_1:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6281,3,"package_json_has_a_peerDependencies_field_6281","'package.json' has a 'peerDependencies' field."),Found_peerDependency_0_with_1_version:$(6282,3,"Found_peerDependency_0_with_1_version_6282","Found peerDependency '{0}' with '{1}' version."),Failed_to_find_peerDependency_0:$(6283,3,"Failed_to_find_peerDependency_0_6283","Failed to find peerDependency '{0}'."),Enable_project_compilation:$(6302,3,"Enable_project_compilation_6302","Enable project compilation"),Composite_projects_may_not_disable_declaration_emit:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6357,3,"A_non_dry_build_would_build_project_0_6357","A non-dry build would build project '{0}'"),Building_project_0:$(6358,3,"Building_project_0_6358","Building project '{0}'..."),Updating_output_timestamps_of_project_0:$(6359,3,"Updating_output_timestamps_of_project_0_6359","Updating output timestamps of project '{0}'..."),Project_0_is_up_to_date:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6370,1,"Options_0_and_1_cannot_be_combined_6370","Options '{0}' and '{1}' cannot be combined."),Updating_unchanged_output_timestamps_of_project_0:$(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:$(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:$(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:$(6379,1,"Composite_projects_may_not_disable_incremental_compilation_6379","Composite projects may not disable incremental compilation."),Specify_file_to_store_incremental_compilation_information:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6402,3,"Resolving_in_0_mode_with_conditions_1_6402","Resolving in {0} mode with conditions {1}."),Matched_0_condition_1:$(6403,3,"Matched_0_condition_1_6403","Matched '{0}' condition '{1}'."),Using_0_subpath_1_with_target_2:$(6404,3,"Using_0_subpath_1_with_target_2_6404","Using '{0}' subpath '{1}' with target '{2}'."),Saw_non_matching_condition_0:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6413,3,"Entering_conditional_exports_6413","Entering conditional exports."),Resolved_under_condition_0:$(6414,3,"Resolved_under_condition_0_6414","Resolved under condition '{0}'."),Failed_to_resolve_under_condition_0:$(6415,3,"Failed_to_resolve_under_condition_0_6415","Failed to resolve under condition '{0}'."),Exiting_conditional_exports:$(6416,3,"Exiting_conditional_exports_6416","Exiting conditional exports."),Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6602,3,"Allow_accessing_UMD_globals_from_modules_6602","Allow accessing UMD globals from modules."),Disable_error_reporting_for_unreachable_code:$(6603,3,"Disable_error_reporting_for_unreachable_code_6603","Disable error reporting for unreachable code."),Disable_error_reporting_for_unused_labels:$(6604,3,"Disable_error_reporting_for_unused_labels_6604","Disable error reporting for unused labels."),Ensure_use_strict_is_always_emitted:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6614,3,"Create_sourcemaps_for_d_ts_files_6614","Create sourcemaps for d.ts files."),Output_compiler_performance_information_after_building:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6627,3,"Filters_results_from_the_include_option_6627","Filters results from the `include` option."),Remove_a_list_of_directories_from_the_watch_process:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6659,3,"Set_the_newline_character_for_emitting_files_6659","Set the newline character for emitting files."),Disable_emitting_files_from_a_compilation:$(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:$(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:$(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:$(6663,3,"Disable_truncating_types_in_error_messages_6663","Disable truncating types in error messages."),Enable_error_reporting_for_fallthrough_cases_in_switch_statements:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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 ''s from expanding the number of files TypeScript should add to a project."),Disable_strict_checking_of_generic_signatures_in_function_types:$(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:$(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:$(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:$(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:$(6677,3,"Deprecated_setting_Use_outFile_instead_6677","Deprecated setting. Use 'outFile' instead."),Specify_an_output_folder_for_all_emitted_files:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6688,3,"Disable_emitting_comments_6688","Disable emitting comments."),Enable_importing_json_files:$(6689,3,"Enable_importing_json_files_6689","Enable importing .json files."),Specify_the_root_folder_within_your_source_files:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6712,3,"Emit_ECMAScript_standard_compliant_class_fields_6712","Emit ECMAScript-standard-compliant class fields."),Enable_verbose_logging:$(6713,3,"Enable_verbose_logging_6713","Enable verbose logging."),Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(6900,3,"one_of_Colon_6900","one of:"),one_or_more_Colon:$(6901,3,"one_or_more_Colon_6901","one or more:"),type_Colon:$(6902,3,"type_Colon_6902","type:"),default_Colon:$(6903,3,"default_Colon_6903","default:"),module_system_or_esModuleInterop:$(6904,3,"module_system_or_esModuleInterop_6904",'module === "system" or esModuleInterop'),false_unless_strict_is_set:$(6905,3,"false_unless_strict_is_set_6905","`false`, unless `strict` is set"),false_unless_composite_is_set:$(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:$(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:$(6908,3,"if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk_6908",'`[]` if `files` is specified, otherwise `["**/*"]`'),true_if_composite_false_otherwise:$(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:$(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:$(6911,3,"Computed_from_the_list_of_input_files_6911","Computed from the list of input files"),Platform_specific:$(6912,3,"Platform_specific_6912","Platform specific"),You_can_learn_about_all_of_the_compiler_options_at_0:$(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:$(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:$(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:$(6916,3,"COMMON_COMMANDS_6916","COMMON COMMANDS"),ALL_COMPILER_OPTIONS:$(6917,3,"ALL_COMPILER_OPTIONS_6917","ALL COMPILER OPTIONS"),WATCH_OPTIONS:$(6918,3,"WATCH_OPTIONS_6918","WATCH OPTIONS"),BUILD_OPTIONS:$(6919,3,"BUILD_OPTIONS_6919","BUILD OPTIONS"),COMMON_COMPILER_OPTIONS:$(6920,3,"COMMON_COMPILER_OPTIONS_6920","COMMON COMPILER OPTIONS"),COMMAND_LINE_FLAGS:$(6921,3,"COMMAND_LINE_FLAGS_6921","COMMAND LINE FLAGS"),tsc_Colon_The_TypeScript_Compiler:$(6922,3,"tsc_Colon_The_TypeScript_Compiler_6922","tsc: The TypeScript Compiler"),Compiles_the_current_project_tsconfig_json_in_the_working_directory:$(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:$(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:$(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:$(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:$(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:$(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:$(6929,3,"Compiles_the_current_project_with_additional_settings_6929","Compiles the current project, with additional settings."),true_for_ES2022_and_above_including_ESNext:$(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:$(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:$(7005,1,"Variable_0_implicitly_has_an_1_type_7005","Variable '{0}' implicitly has an '{1}' type."),Parameter_0_implicitly_has_an_1_type:$(7006,1,"Parameter_0_implicitly_has_an_1_type_7006","Parameter '{0}' implicitly has an '{1}' type."),Member_0_implicitly_has_an_1_type:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(7027,1,"Unreachable_code_detected_7027","Unreachable code detected.",!0),Unused_label:$(7028,1,"Unused_label_7028","Unused label.",!0),Fallthrough_case_in_switch:$(7029,1,"Fallthrough_case_in_switch_7029","Fallthrough case in switch."),Not_all_code_paths_return_a_value:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(8019,3,"Report_errors_in_js_files_8019","Report errors in .js files."),JSDoc_types_can_only_be_used_inside_documentation_comments:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(17014,1,"JSX_fragment_has_no_corresponding_closing_tag_17014","JSX fragment has no corresponding closing tag."),Expected_corresponding_closing_tag_for_JSX_fragment:$(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:$(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:$(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:$(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:$(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:$(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:$(17021,1,"Unicode_escape_sequence_cannot_appear_here_17021","Unicode escape sequence cannot appear here."),Circularity_detected_while_resolving_configuration_Colon_0:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(80010,2,"JSDoc_typedefs_may_be_converted_to_TypeScript_types_80010","JSDoc typedefs may be converted to TypeScript types."),Add_missing_super_call:$(90001,3,"Add_missing_super_call_90001","Add missing 'super()' call"),Make_super_call_the_first_statement_in_the_constructor:$(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:$(90003,3,"Change_extends_to_implements_90003","Change 'extends' to 'implements'"),Remove_unused_declaration_for_Colon_0:$(90004,3,"Remove_unused_declaration_for_Colon_0_90004","Remove unused declaration for: '{0}'"),Remove_import_from_0:$(90005,3,"Remove_import_from_0_90005","Remove import from '{0}'"),Implement_interface_0:$(90006,3,"Implement_interface_0_90006","Implement interface '{0}'"),Implement_inherited_abstract_class:$(90007,3,"Implement_inherited_abstract_class_90007","Implement inherited abstract class"),Add_0_to_unresolved_variable:$(90008,3,"Add_0_to_unresolved_variable_90008","Add '{0}.' to unresolved variable"),Remove_variable_statement:$(90010,3,"Remove_variable_statement_90010","Remove variable statement"),Remove_template_tag:$(90011,3,"Remove_template_tag_90011","Remove template tag"),Remove_type_parameters:$(90012,3,"Remove_type_parameters_90012","Remove type parameters"),Import_0_from_1:$(90013,3,"Import_0_from_1_90013",`Import '{0}' from "{1}"`),Change_0_to_1:$(90014,3,"Change_0_to_1_90014","Change '{0}' to '{1}'"),Declare_property_0:$(90016,3,"Declare_property_0_90016","Declare property '{0}'"),Add_index_signature_for_property_0:$(90017,3,"Add_index_signature_for_property_0_90017","Add index signature for property '{0}'"),Disable_checking_for_this_file:$(90018,3,"Disable_checking_for_this_file_90018","Disable checking for this file"),Ignore_this_error_message:$(90019,3,"Ignore_this_error_message_90019","Ignore this error message"),Initialize_property_0_in_the_constructor:$(90020,3,"Initialize_property_0_in_the_constructor_90020","Initialize property '{0}' in the constructor"),Initialize_static_property_0:$(90021,3,"Initialize_static_property_0_90021","Initialize static property '{0}'"),Change_spelling_to_0:$(90022,3,"Change_spelling_to_0_90022","Change spelling to '{0}'"),Declare_method_0:$(90023,3,"Declare_method_0_90023","Declare method '{0}'"),Declare_static_method_0:$(90024,3,"Declare_static_method_0_90024","Declare static method '{0}'"),Prefix_0_with_an_underscore:$(90025,3,"Prefix_0_with_an_underscore_90025","Prefix '{0}' with an underscore"),Rewrite_as_the_indexed_access_type_0:$(90026,3,"Rewrite_as_the_indexed_access_type_0_90026","Rewrite as the indexed access type '{0}'"),Declare_static_property_0:$(90027,3,"Declare_static_property_0_90027","Declare static property '{0}'"),Call_decorator_expression:$(90028,3,"Call_decorator_expression_90028","Call decorator expression"),Add_async_modifier_to_containing_function:$(90029,3,"Add_async_modifier_to_containing_function_90029","Add async modifier to containing function"),Replace_infer_0_with_unknown:$(90030,3,"Replace_infer_0_with_unknown_90030","Replace 'infer {0}' with 'unknown'"),Replace_all_unused_infer_with_unknown:$(90031,3,"Replace_all_unused_infer_with_unknown_90031","Replace all unused 'infer' with 'unknown'"),Add_parameter_name:$(90034,3,"Add_parameter_name_90034","Add parameter name"),Declare_private_property_0:$(90035,3,"Declare_private_property_0_90035","Declare private property '{0}'"),Replace_0_with_Promise_1:$(90036,3,"Replace_0_with_Promise_1_90036","Replace '{0}' with 'Promise<{1}>'"),Fix_all_incorrect_return_type_of_an_async_functions:$(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:$(90038,3,"Declare_private_method_0_90038","Declare private method '{0}'"),Remove_unused_destructuring_declaration:$(90039,3,"Remove_unused_destructuring_declaration_90039","Remove unused destructuring declaration"),Remove_unused_declarations_for_Colon_0:$(90041,3,"Remove_unused_declarations_for_Colon_0_90041","Remove unused declarations for: '{0}'"),Declare_a_private_field_named_0:$(90053,3,"Declare_a_private_field_named_0_90053","Declare a private field named '{0}'."),Includes_imports_of_types_referenced_by_0:$(90054,3,"Includes_imports_of_types_referenced_by_0_90054","Includes imports of types referenced by '{0}'"),Remove_type_from_import_declaration_from_0:$(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:$(90056,3,"Remove_type_from_import_of_0_from_1_90056",`Remove 'type' from import of '{0}' from "{1}"`),Add_import_from_0:$(90057,3,"Add_import_from_0_90057",'Add import from "{0}"'),Update_import_from_0:$(90058,3,"Update_import_from_0_90058",'Update import from "{0}"'),Export_0_from_module_1:$(90059,3,"Export_0_from_module_1_90059","Export '{0}' from module '{1}'"),Export_all_referenced_locals:$(90060,3,"Export_all_referenced_locals_90060","Export all referenced locals"),Update_modifiers_of_0:$(90061,3,"Update_modifiers_of_0_90061","Update modifiers of '{0}'"),Add_annotation_of_type_0:$(90062,3,"Add_annotation_of_type_0_90062","Add annotation of type '{0}'"),Add_return_type_0:$(90063,3,"Add_return_type_0_90063","Add return type '{0}'"),Extract_base_class_to_variable:$(90064,3,"Extract_base_class_to_variable_90064","Extract base class to variable"),Extract_default_export_to_variable:$(90065,3,"Extract_default_export_to_variable_90065","Extract default export to variable"),Extract_binding_expressions_to_variable:$(90066,3,"Extract_binding_expressions_to_variable_90066","Extract binding expressions to variable"),Add_all_missing_type_annotations:$(90067,3,"Add_all_missing_type_annotations_90067","Add all missing type annotations"),Add_satisfies_and_an_inline_type_assertion_with_0:$(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:$(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:$(90070,3,"Mark_array_literal_as_const_90070","Mark array literal as const"),Annotate_types_of_properties_expando_function_in_a_namespace:$(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:$(95001,3,"Convert_function_to_an_ES2015_class_95001","Convert function to an ES2015 class"),Convert_0_to_1_in_0:$(95003,3,"Convert_0_to_1_in_0_95003","Convert '{0}' to '{1} in {0}'"),Extract_to_0_in_1:$(95004,3,"Extract_to_0_in_1_95004","Extract to {0} in {1}"),Extract_function:$(95005,3,"Extract_function_95005","Extract function"),Extract_constant:$(95006,3,"Extract_constant_95006","Extract constant"),Extract_to_0_in_enclosing_scope:$(95007,3,"Extract_to_0_in_enclosing_scope_95007","Extract to {0} in enclosing scope"),Extract_to_0_in_1_scope:$(95008,3,"Extract_to_0_in_1_scope_95008","Extract to {0} in {1} scope"),Annotate_with_type_from_JSDoc:$(95009,3,"Annotate_with_type_from_JSDoc_95009","Annotate with type from JSDoc"),Infer_type_of_0_from_usage:$(95011,3,"Infer_type_of_0_from_usage_95011","Infer type of '{0}' from usage"),Infer_parameter_types_from_usage:$(95012,3,"Infer_parameter_types_from_usage_95012","Infer parameter types from usage"),Convert_to_default_import:$(95013,3,"Convert_to_default_import_95013","Convert to default import"),Install_0:$(95014,3,"Install_0_95014","Install '{0}'"),Replace_import_with_0:$(95015,3,"Replace_import_with_0_95015","Replace import with '{0}'."),Use_synthetic_default_member:$(95016,3,"Use_synthetic_default_member_95016","Use synthetic 'default' member."),Convert_to_ES_module:$(95017,3,"Convert_to_ES_module_95017","Convert to ES module"),Add_undefined_type_to_property_0:$(95018,3,"Add_undefined_type_to_property_0_95018","Add 'undefined' type to property '{0}'"),Add_initializer_to_property_0:$(95019,3,"Add_initializer_to_property_0_95019","Add initializer to property '{0}'"),Add_definite_assignment_assertion_to_property_0:$(95020,3,"Add_definite_assignment_assertion_to_property_0_95020","Add definite assignment assertion to property '{0}'"),Convert_all_type_literals_to_mapped_type:$(95021,3,"Convert_all_type_literals_to_mapped_type_95021","Convert all type literals to mapped type"),Add_all_missing_members:$(95022,3,"Add_all_missing_members_95022","Add all missing members"),Infer_all_types_from_usage:$(95023,3,"Infer_all_types_from_usage_95023","Infer all types from usage"),Delete_all_unused_declarations:$(95024,3,"Delete_all_unused_declarations_95024","Delete all unused declarations"),Prefix_all_unused_declarations_with_where_possible:$(95025,3,"Prefix_all_unused_declarations_with_where_possible_95025","Prefix all unused declarations with '_' where possible"),Fix_all_detected_spelling_errors:$(95026,3,"Fix_all_detected_spelling_errors_95026","Fix all detected spelling errors"),Add_initializers_to_all_uninitialized_properties:$(95027,3,"Add_initializers_to_all_uninitialized_properties_95027","Add initializers to all uninitialized properties"),Add_definite_assignment_assertions_to_all_uninitialized_properties:$(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:$(95029,3,"Add_undefined_type_to_all_uninitialized_properties_95029","Add undefined type to all uninitialized properties"),Change_all_jsdoc_style_types_to_TypeScript:$(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:$(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:$(95032,3,"Implement_all_unimplemented_interfaces_95032","Implement all unimplemented interfaces"),Install_all_missing_types_packages:$(95033,3,"Install_all_missing_types_packages_95033","Install all missing types packages"),Rewrite_all_as_indexed_access_types:$(95034,3,"Rewrite_all_as_indexed_access_types_95034","Rewrite all as indexed access types"),Convert_all_to_default_imports:$(95035,3,"Convert_all_to_default_imports_95035","Convert all to default imports"),Make_all_super_calls_the_first_statement_in_their_constructor:$(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:$(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:$(95038,3,"Change_all_extended_interfaces_to_implements_95038","Change all extended interfaces to 'implements'"),Add_all_missing_super_calls:$(95039,3,"Add_all_missing_super_calls_95039","Add all missing super calls"),Implement_all_inherited_abstract_classes:$(95040,3,"Implement_all_inherited_abstract_classes_95040","Implement all inherited abstract classes"),Add_all_missing_async_modifiers:$(95041,3,"Add_all_missing_async_modifiers_95041","Add all missing 'async' modifiers"),Add_ts_ignore_to_all_error_messages:$(95042,3,"Add_ts_ignore_to_all_error_messages_95042","Add '@ts-ignore' to all error messages"),Annotate_everything_with_types_from_JSDoc:$(95043,3,"Annotate_everything_with_types_from_JSDoc_95043","Annotate everything with types from JSDoc"),Add_to_all_uncalled_decorators:$(95044,3,"Add_to_all_uncalled_decorators_95044","Add '()' to all uncalled decorators"),Convert_all_constructor_functions_to_classes:$(95045,3,"Convert_all_constructor_functions_to_classes_95045","Convert all constructor functions to classes"),Generate_get_and_set_accessors:$(95046,3,"Generate_get_and_set_accessors_95046","Generate 'get' and 'set' accessors"),Convert_require_to_import:$(95047,3,"Convert_require_to_import_95047","Convert 'require' to 'import'"),Convert_all_require_to_import:$(95048,3,"Convert_all_require_to_import_95048","Convert all 'require' to 'import'"),Move_to_a_new_file:$(95049,3,"Move_to_a_new_file_95049","Move to a new file"),Remove_unreachable_code:$(95050,3,"Remove_unreachable_code_95050","Remove unreachable code"),Remove_all_unreachable_code:$(95051,3,"Remove_all_unreachable_code_95051","Remove all unreachable code"),Add_missing_typeof:$(95052,3,"Add_missing_typeof_95052","Add missing 'typeof'"),Remove_unused_label:$(95053,3,"Remove_unused_label_95053","Remove unused label"),Remove_all_unused_labels:$(95054,3,"Remove_all_unused_labels_95054","Remove all unused labels"),Convert_0_to_mapped_object_type:$(95055,3,"Convert_0_to_mapped_object_type_95055","Convert '{0}' to mapped object type"),Convert_namespace_import_to_named_imports:$(95056,3,"Convert_namespace_import_to_named_imports_95056","Convert namespace import to named imports"),Convert_named_imports_to_namespace_import:$(95057,3,"Convert_named_imports_to_namespace_import_95057","Convert named imports to namespace import"),Add_or_remove_braces_in_an_arrow_function:$(95058,3,"Add_or_remove_braces_in_an_arrow_function_95058","Add or remove braces in an arrow function"),Add_braces_to_arrow_function:$(95059,3,"Add_braces_to_arrow_function_95059","Add braces to arrow function"),Remove_braces_from_arrow_function:$(95060,3,"Remove_braces_from_arrow_function_95060","Remove braces from arrow function"),Convert_default_export_to_named_export:$(95061,3,"Convert_default_export_to_named_export_95061","Convert default export to named export"),Convert_named_export_to_default_export:$(95062,3,"Convert_named_export_to_default_export_95062","Convert named export to default export"),Add_missing_enum_member_0:$(95063,3,"Add_missing_enum_member_0_95063","Add missing enum member '{0}'"),Add_all_missing_imports:$(95064,3,"Add_all_missing_imports_95064","Add all missing imports"),Convert_to_async_function:$(95065,3,"Convert_to_async_function_95065","Convert to async function"),Convert_all_to_async_functions:$(95066,3,"Convert_all_to_async_functions_95066","Convert all to async functions"),Add_missing_call_parentheses:$(95067,3,"Add_missing_call_parentheses_95067","Add missing call parentheses"),Add_all_missing_call_parentheses:$(95068,3,"Add_all_missing_call_parentheses_95068","Add all missing call parentheses"),Add_unknown_conversion_for_non_overlapping_types:$(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:$(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:$(95071,3,"Add_missing_new_operator_to_call_95071","Add missing 'new' operator to call"),Add_missing_new_operator_to_all_calls:$(95072,3,"Add_missing_new_operator_to_all_calls_95072","Add missing 'new' operator to all calls"),Add_names_to_all_parameters_without_names:$(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:$(95074,3,"Enable_the_experimentalDecorators_option_in_your_configuration_file_95074","Enable the 'experimentalDecorators' option in your configuration file"),Convert_parameters_to_destructured_object:$(95075,3,"Convert_parameters_to_destructured_object_95075","Convert parameters to destructured object"),Extract_type:$(95077,3,"Extract_type_95077","Extract type"),Extract_to_type_alias:$(95078,3,"Extract_to_type_alias_95078","Extract to type alias"),Extract_to_typedef:$(95079,3,"Extract_to_typedef_95079","Extract to typedef"),Infer_this_type_of_0_from_usage:$(95080,3,"Infer_this_type_of_0_from_usage_95080","Infer 'this' type of '{0}' from usage"),Add_const_to_unresolved_variable:$(95081,3,"Add_const_to_unresolved_variable_95081","Add 'const' to unresolved variable"),Add_const_to_all_unresolved_variables:$(95082,3,"Add_const_to_all_unresolved_variables_95082","Add 'const' to all unresolved variables"),Add_await:$(95083,3,"Add_await_95083","Add 'await'"),Add_await_to_initializer_for_0:$(95084,3,"Add_await_to_initializer_for_0_95084","Add 'await' to initializer for '{0}'"),Fix_all_expressions_possibly_missing_await:$(95085,3,"Fix_all_expressions_possibly_missing_await_95085","Fix all expressions possibly missing 'await'"),Remove_unnecessary_await:$(95086,3,"Remove_unnecessary_await_95086","Remove unnecessary 'await'"),Remove_all_unnecessary_uses_of_await:$(95087,3,"Remove_all_unnecessary_uses_of_await_95087","Remove all unnecessary uses of 'await'"),Enable_the_jsx_flag_in_your_configuration_file:$(95088,3,"Enable_the_jsx_flag_in_your_configuration_file_95088","Enable the '--jsx' flag in your configuration file"),Add_await_to_initializers:$(95089,3,"Add_await_to_initializers_95089","Add 'await' to initializers"),Extract_to_interface:$(95090,3,"Extract_to_interface_95090","Extract to interface"),Convert_to_a_bigint_numeric_literal:$(95091,3,"Convert_to_a_bigint_numeric_literal_95091","Convert to a bigint numeric literal"),Convert_all_to_bigint_numeric_literals:$(95092,3,"Convert_all_to_bigint_numeric_literals_95092","Convert all to bigint numeric literals"),Convert_const_to_let:$(95093,3,"Convert_const_to_let_95093","Convert 'const' to 'let'"),Prefix_with_declare:$(95094,3,"Prefix_with_declare_95094","Prefix with 'declare'"),Prefix_all_incorrect_property_declarations_with_declare:$(95095,3,"Prefix_all_incorrect_property_declarations_with_declare_95095","Prefix all incorrect property declarations with 'declare'"),Convert_to_template_string:$(95096,3,"Convert_to_template_string_95096","Convert to template string"),Add_export_to_make_this_file_into_a_module:$(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:$(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:$(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:$(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:$(95101,3,"Convert_all_invalid_characters_to_HTML_entity_code_95101","Convert all invalid characters to HTML entity code"),Convert_all_const_to_let:$(95102,3,"Convert_all_const_to_let_95102","Convert all 'const' to 'let'"),Convert_function_expression_0_to_arrow_function:$(95105,3,"Convert_function_expression_0_to_arrow_function_95105","Convert function expression '{0}' to arrow function"),Convert_function_declaration_0_to_arrow_function:$(95106,3,"Convert_function_declaration_0_to_arrow_function_95106","Convert function declaration '{0}' to arrow function"),Fix_all_implicit_this_errors:$(95107,3,"Fix_all_implicit_this_errors_95107","Fix all implicit-'this' errors"),Wrap_invalid_character_in_an_expression_container:$(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:$(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:$(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:$(95111,3,"Add_a_return_statement_95111","Add a return statement"),Remove_braces_from_arrow_function_body:$(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:$(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:$(95114,3,"Add_all_missing_return_statement_95114","Add all missing return statement"),Remove_braces_from_all_arrow_function_bodies_with_relevant_issues:$(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:$(95116,3,"Wrap_all_object_literal_with_parentheses_95116","Wrap all object literal with parentheses"),Move_labeled_tuple_element_modifiers_to_labels:$(95117,3,"Move_labeled_tuple_element_modifiers_to_labels_95117","Move labeled tuple element modifiers to labels"),Convert_overload_list_to_single_signature:$(95118,3,"Convert_overload_list_to_single_signature_95118","Convert overload list to single signature"),Generate_get_and_set_accessors_for_all_overriding_properties:$(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:$(95120,3,"Wrap_in_JSX_fragment_95120","Wrap in JSX fragment"),Wrap_all_unparented_JSX_in_JSX_fragment:$(95121,3,"Wrap_all_unparented_JSX_in_JSX_fragment_95121","Wrap all unparented JSX in JSX fragment"),Convert_arrow_function_or_function_expression:$(95122,3,"Convert_arrow_function_or_function_expression_95122","Convert arrow function or function expression"),Convert_to_anonymous_function:$(95123,3,"Convert_to_anonymous_function_95123","Convert to anonymous function"),Convert_to_named_function:$(95124,3,"Convert_to_named_function_95124","Convert to named function"),Convert_to_arrow_function:$(95125,3,"Convert_to_arrow_function_95125","Convert to arrow function"),Remove_parentheses:$(95126,3,"Remove_parentheses_95126","Remove parentheses"),Could_not_find_a_containing_arrow_function:$(95127,3,"Could_not_find_a_containing_arrow_function_95127","Could not find a containing arrow function"),Containing_function_is_not_an_arrow_function:$(95128,3,"Containing_function_is_not_an_arrow_function_95128","Containing function is not an arrow function"),Could_not_find_export_statement:$(95129,3,"Could_not_find_export_statement_95129","Could not find export statement"),This_file_already_has_a_default_export:$(95130,3,"This_file_already_has_a_default_export_95130","This file already has a default export"),Could_not_find_import_clause:$(95131,3,"Could_not_find_import_clause_95131","Could not find import clause"),Could_not_find_namespace_import_or_named_imports:$(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:$(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:$(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:$(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:$(95136,3,"Name_is_not_valid_95136","Name is not valid"),Can_only_convert_property_with_modifier:$(95137,3,"Can_only_convert_property_with_modifier_95137","Can only convert property with modifier"),Switch_each_misused_0_to_1:$(95138,3,"Switch_each_misused_0_to_1_95138","Switch each misused '{0}' to '{1}'"),Convert_to_optional_chain_expression:$(95139,3,"Convert_to_optional_chain_expression_95139","Convert to optional chain expression"),Could_not_find_convertible_access_expression:$(95140,3,"Could_not_find_convertible_access_expression_95140","Could not find convertible access expression"),Could_not_find_matching_access_expressions:$(95141,3,"Could_not_find_matching_access_expressions_95141","Could not find matching access expressions"),Can_only_convert_logical_AND_access_chains:$(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:$(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:$(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:$(95145,3,"Use_element_access_for_0_95145","Use element access for '{0}'"),Use_element_access_for_all_undeclared_properties:$(95146,3,"Use_element_access_for_all_undeclared_properties_95146","Use element access for all undeclared properties."),Delete_all_unused_imports:$(95147,3,"Delete_all_unused_imports_95147","Delete all unused imports"),Infer_function_return_type:$(95148,3,"Infer_function_return_type_95148","Infer function return type"),Return_type_must_be_inferred_from_a_function:$(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:$(95150,3,"Could_not_determine_function_return_type_95150","Could not determine function return type"),Could_not_convert_to_arrow_function:$(95151,3,"Could_not_convert_to_arrow_function_95151","Could not convert to arrow function"),Could_not_convert_to_named_function:$(95152,3,"Could_not_convert_to_named_function_95152","Could not convert to named function"),Could_not_convert_to_anonymous_function:$(95153,3,"Could_not_convert_to_anonymous_function_95153","Could not convert to anonymous function"),Can_only_convert_string_concatenations_and_string_literals:$(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:$(95155,3,"Selection_is_not_a_valid_statement_or_statements_95155","Selection is not a valid statement or statements"),Add_missing_function_declaration_0:$(95156,3,"Add_missing_function_declaration_0_95156","Add missing function declaration '{0}'"),Add_all_missing_function_declarations:$(95157,3,"Add_all_missing_function_declarations_95157","Add all missing function declarations"),Method_not_implemented:$(95158,3,"Method_not_implemented_95158","Method not implemented."),Function_not_implemented:$(95159,3,"Function_not_implemented_95159","Function not implemented."),Add_override_modifier:$(95160,3,"Add_override_modifier_95160","Add 'override' modifier"),Remove_override_modifier:$(95161,3,"Remove_override_modifier_95161","Remove 'override' modifier"),Add_all_missing_override_modifiers:$(95162,3,"Add_all_missing_override_modifiers_95162","Add all missing 'override' modifiers"),Remove_all_unnecessary_override_modifiers:$(95163,3,"Remove_all_unnecessary_override_modifiers_95163","Remove all unnecessary 'override' modifiers"),Can_only_convert_named_export:$(95164,3,"Can_only_convert_named_export_95164","Can only convert named export"),Add_missing_properties:$(95165,3,"Add_missing_properties_95165","Add missing properties"),Add_all_missing_properties:$(95166,3,"Add_all_missing_properties_95166","Add all missing properties"),Add_missing_attributes:$(95167,3,"Add_missing_attributes_95167","Add missing attributes"),Add_all_missing_attributes:$(95168,3,"Add_all_missing_attributes_95168","Add all missing attributes"),Add_undefined_to_optional_property_type:$(95169,3,"Add_undefined_to_optional_property_type_95169","Add 'undefined' to optional property type"),Convert_named_imports_to_default_import:$(95170,3,"Convert_named_imports_to_default_import_95170","Convert named imports to default import"),Delete_unused_param_tag_0:$(95171,3,"Delete_unused_param_tag_0_95171","Delete unused '@param' tag '{0}'"),Delete_all_unused_param_tags:$(95172,3,"Delete_all_unused_param_tags_95172","Delete all unused '@param' tags"),Rename_param_tag_name_0_to_1:$(95173,3,"Rename_param_tag_name_0_to_1_95173","Rename '@param' tag name '{0}' to '{1}'"),Use_0:$(95174,3,"Use_0_95174","Use `{0}`."),Use_Number_isNaN_in_all_conditions:$(95175,3,"Use_Number_isNaN_in_all_conditions_95175","Use `Number.isNaN` in all conditions."),Convert_typedef_to_TypeScript_type:$(95176,3,"Convert_typedef_to_TypeScript_type_95176","Convert typedef to TypeScript type."),Convert_all_typedef_to_TypeScript_types:$(95177,3,"Convert_all_typedef_to_TypeScript_types_95177","Convert all typedef to TypeScript types."),Move_to_file:$(95178,3,"Move_to_file_95178","Move to file"),Cannot_move_to_file_selected_file_is_invalid:$(95179,3,"Cannot_move_to_file_selected_file_is_invalid_95179","Cannot move to file, selected file is invalid"),Use_import_type:$(95180,3,"Use_import_type_95180","Use 'import type'"),Use_type_0:$(95181,3,"Use_type_0_95181","Use 'type {0}'"),Fix_all_with_type_only_imports:$(95182,3,"Fix_all_with_type_only_imports_95182","Fix all with type-only imports"),Cannot_move_statements_to_the_selected_file:$(95183,3,"Cannot_move_statements_to_the_selected_file_95183","Cannot move statements to the selected file"),Inline_variable:$(95184,3,"Inline_variable_95184","Inline variable"),Could_not_find_variable_to_inline:$(95185,3,"Could_not_find_variable_to_inline_95185","Could not find variable to inline."),Variables_with_multiple_declarations_cannot_be_inlined:$(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:$(95187,3,"Add_missing_comma_for_object_member_completion_0_95187","Add missing comma for object member completion '{0}'."),Add_missing_parameter_to_0:$(95188,3,"Add_missing_parameter_to_0_95188","Add missing parameter to '{0}'"),Add_missing_parameters_to_0:$(95189,3,"Add_missing_parameters_to_0_95189","Add missing parameters to '{0}'"),Add_all_missing_parameters:$(95190,3,"Add_all_missing_parameters_95190","Add all missing parameters"),Add_optional_parameter_to_0:$(95191,3,"Add_optional_parameter_to_0_95191","Add optional parameter to '{0}'"),Add_optional_parameters_to_0:$(95192,3,"Add_optional_parameters_to_0_95192","Add optional parameters to '{0}'"),Add_all_optional_parameters:$(95193,3,"Add_all_optional_parameters_95193","Add all optional parameters"),Wrap_in_parentheses:$(95194,3,"Wrap_in_parentheses_95194","Wrap in parentheses"),Wrap_all_invalid_decorator_expressions_in_parentheses:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(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:$(18046,1,"_0_is_of_type_unknown_18046","'{0}' is of type 'unknown'."),_0_is_possibly_null:$(18047,1,"_0_is_possibly_null_18047","'{0}' is possibly 'null'."),_0_is_possibly_undefined:$(18048,1,"_0_is_possibly_undefined_18048","'{0}' is possibly 'undefined'."),_0_is_possibly_null_or_undefined:$(18049,1,"_0_is_possibly_null_or_undefined_18049","'{0}' is possibly 'null' or 'undefined'."),The_value_0_cannot_be_used_here:$(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:$(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:$(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:$(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:$(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:$(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 MI(n){return n>=80}function VR(n){return n===32||MI(n)}var G={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},L=new Map(Object.entries(G)),ee=new Map(Object.entries({...G,"{":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,">":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})),ve=new Map(Object.entries({d:1,g:2,i:4,m:8,s:16,u:32,v:64,y:128})),xe=new Map([[1,9],[16,5],[32,2],[64,99],[128,2]]),gt=[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],nr=[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],Xr=[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],Kn=[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],eo=/^\/\/\/?\s*@(ts-expect-error|ts-ignore)/,Ga=/^(?:\/|\*)*\s*@(ts-expect-error|ts-ignore)/,tl=/@(?:see|link)/i;function bo(n,c){if(n=2?bo(n,Xr):bo(n,gt)}function id(n,c){return c>=2?bo(n,Kn):bo(n,nr)}function YC(n){let c=[];return n.forEach((u,d)=>{c[u]=d}),c}var Sn=YC(ee);function vr(n){return Sn[n]}function Yn(n){return ee.get(n)}var Go=YC(ve);function tc(n){return Go[n]}function pA(n){return ve.get(n)}function fc(n){let c=[],u=0,d=0;for(;u127&&XC(I)&&(c.push(d),d=u);break}}return c.push(d),c}function Ju(n,c,u,d){return n.getPositionOfLineAndCharacter?n.getPositionOfLineAndCharacter(c,u,d):Vu(Dc(n),c,u,n.text,d)}function Vu(n,c,u,d,I){(c<0||c>=n.length)&&(I?c=c<0?0:c>=n.length?n.length-1:c:w.fail(`Bad line number. Line: ${c}, lineStarts.length: ${n.length} , line map is correct? ${d!==void 0?Je(n,fc(d)):"unknown"}`));let h=n[c]+u;return I?h>n[c+1]?n[c+1]:typeof d=="string"&&h>d.length?d.length:h:(c=8192&&n<=8203||n===8239||n===8287||n===12288||n===65279}function XC(n){return n===10||n===13||n===8232||n===8233}function EB(n){return n>=48&&n<=57}function WR(n){return EB(n)||n>=65&&n<=70||n>=97&&n<=102}function uG(n){return n>=65&&n<=90||n>=97&&n<=122}function S3(n){return uG(n)||EB(n)||n===95}function uZ(n){return n>=48&&n<=55}function oN(n,c){let u=n.charCodeAt(c);switch(u){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 c===0;default:return u>127}}function Uu(n,c,u,d,I){if(Fv(c))return c;let h=!1;for(;;){let b=n.charCodeAt(c);switch(b){case 13:n.charCodeAt(c+1)===10&&c++;case 10:if(c++,u)return c;h=!!I;continue;case 9:case 11:case 12:case 32:c++;continue;case 47:if(d)break;if(n.charCodeAt(c+1)===47){for(c+=2;c127&&Jm(b)){c++;continue}break}return c}}var P9=7;function aN(n,c){if(w.assert(c>=0),c===0||XC(n.charCodeAt(c-1))){let u=n.charCodeAt(c);if(c+P9=0&&u127&&Jm(ue)){Q&&XC(ue)&&(P=!0),u++;continue}break e}}return Q&&(re=I(R,N,V,P,h,re)),re}function Sf(n,c,u,d){return RS(!1,n,c,!1,u,d)}function bx(n,c,u,d){return RS(!1,n,c,!0,u,d)}function Ex(n,c,u,d,I){return RS(!0,n,c,!1,u,d,I)}function AZ(n,c,u,d,I){return RS(!0,n,c,!0,u,d,I)}function cg(n,c,u,d,I,h=[]){return h.push({kind:u,pos:n,end:c,hasTrailingNewLine:d}),h}function Zb(n,c){return Ex(n,c,cg,void 0,void 0)}function h2(n,c){return AZ(n,c,cg,void 0,void 0)}function AG(n){let c=cN.exec(n);if(c)return c[0]}function qy(n,c){return uG(n)||n===36||n===95||n>127&&Sg(n,c)}function _2(n,c,u){return S3(n)||n===36||(u===1?n===45||n===58:!1)||n>127&&id(n,c)}function Ke(n,c,u){let d=Er(n,0);if(!qy(d,c))return!1;for(let I=Jr(d);IP,getStartPos:()=>P,getTokenEnd:()=>N,getTextPos:()=>N,getToken:()=>te,getTokenStart:()=>Q,getTokenPos:()=>Q,getTokenText:()=>R.substring(Q,N),getTokenValue:()=>re,hasUnicodeEscape:()=>(ue&1024)!==0,hasExtendedUnicodeEscape:()=>(ue&8)!==0,hasPrecedingLineBreak:()=>(ue&1)!==0,hasPrecedingJSDocComment:()=>(ue&2)!==0,isIdentifier:()=>te===80||te>118,isReservedWord:()=>te>=83&&te<=118,isUnterminated:()=>(ue&4)!==0,getCommentDirectives:()=>Ae,getNumericLiteralFlags:()=>ue&25584,getTokenFlags:()=>ue,reScanGreaterToken:pr,reScanAsteriskEqualsToken:zr,reScanSlashToken:$n,reScanTemplateToken:jn,reScanTemplateHeadOrNoSubstitutionTemplate:xs,scanJsxIdentifier:mc,scanJsxAttributeValue:_s,reScanJsxAttributeValue:Pu,reScanJsxToken:Bc,reScanLessThanToken:xi,reScanHashToken:rc,reScanQuestionToken:Wl,reScanInvalidIdentifier:Vr,scanJsxToken:gl,scanJsDocToken:ni,scanJSDocCommentTextToken:ir,scan:mr,getText:Rc,clearCommentDirectives:lg,setText:ju,setScriptTarget:vA,setLanguageVariant:kr,setScriptKind:en,setJSDocParsingMode:ct,setOnError:Bi,resetTokenState:rn,setTextPos:rn,setSkipJsDocLeadingAsterisks:wt,hasLeadingAsterisks:br,tryScan:nc,lookAhead:za,scanRange:Hs};return w.isDebugging&&Object.defineProperty(Me,"__debugShowCurrentPositionInText",{get:()=>{let Mt=Me.getText();return Mt.slice(0,Me.getTokenFullStart())+"\u2551"+Mt.slice(Me.getTokenFullStart())}}),Me;function De(Mt){return Er(R,Mt)}function lt(Mt){return Mt>=0&&Mt=0&&Mt=65&&Pn<=70)Pn+=32;else if(!(Pn>=48&&Pn<=57||Pn>=97&&Pn<=102))break;ti.push(Pn),N++,kn=!1}return ti.length=V){Pr+=R.substring(ti,N),ue|=4,st(Z.Unterminated_string_literal);break}let cr=Le(N);if(cr===_r){Pr+=R.substring(ti,N),N++;break}if(cr===92&&!Mt){Pr+=R.substring(ti,N),Pr+=Et(3),ti=N;continue}if((cr===10||cr===13)&&!Mt){Pr+=R.substring(ti,N),ue|=4,st(Z.Unterminated_string_literal);break}N++}return Pr}function ht(Mt){let _r=Le(N)===96;N++;let Pr=N,ti="",cr;for(;;){if(N>=V){ti+=R.substring(Pr,N),ue|=4,st(Z.Unterminated_template_literal),cr=_r?15:18;break}let kn=Le(N);if(kn===96){ti+=R.substring(Pr,N),N++,cr=_r?15:18;break}if(kn===36&&N+1=V)return st(Z.Unexpected_end_of_text),"";let Pr=Le(N);switch(N++,Pr){case 48:if(N>=V||!EB(Le(N)))return"\0";case 49:case 50:case 51:N=55296&&ti<=56319&&N+6=56320&&an<=57343)return N=Pn,cr+String.fromCharCode(an)}return cr;case 120:for(;N<_r+4;N++)if(!(N1114111&&(Mt&&st(Z.An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive,Pr,N-Pr),kn=!0),N>=V?(Mt&&st(Z.Unexpected_end_of_text),kn=!0):Le(N)===125?N++:(Mt&&st(Z.Unterminated_Unicode_escape_sequence),kn=!0),kn?(ue|=2048,R.substring(_r,N)):(ue|=8,Ss(cr))}function Nt(){if(N+5=0&&_2(Pr,n)){Mt+=Kt(!0),_r=N;continue}if(Pr=Nt(),!(Pr>=0&&_2(Pr,n)))break;ue|=1024,Mt+=R.substring(_r,N),Mt+=Ss(Pr),N+=6,_r=N}else break}return Mt+=R.substring(_r,N),Mt}function Zt(){let Mt=re.length;if(Mt>=2&&Mt<=12){let _r=re.charCodeAt(0);if(_r>=97&&_r<=122){let Pr=L.get(re);if(Pr!==void 0)return te=Pr}}return te=80}function Dr(Mt){let _r="",Pr=!1,ti=!1;for(;;){let cr=Le(N);if(cr===95){ue|=512,Pr?(Pr=!1,ti=!0):st(ti?Z.Multiple_consecutive_numeric_separators_are_not_permitted:Z.Numeric_separators_are_not_allowed_here,N,1),N++;continue}if(Pr=!0,!EB(cr)||cr-48>=Mt)break;_r+=R[N],N++,ti=!1}return Le(N-1)===95&&st(Z.Numeric_separators_are_not_allowed_here,N-1,1),_r}function jt(){return Le(N)===110?(re+="n",ue&384&&(re=s4(re)+"n"),N++,10):(re=""+(ue&128?parseInt(re.slice(2),2):ue&256?parseInt(re.slice(2),8):+re),9)}function mr(){for(P=N,ue=0,Be=!1;;){if(Q=N,N>=V)return te=1;let Mt=De(N);if(N===0&&Mt===35&&gZ(R,N)){if(N=gG(R,N),c)continue;return te=6}switch(Mt){case 10:case 13:if(ue|=1,c){N++;continue}else return Mt===13&&N+1=0&&qy(_r,n))return re=Kt(!0)+kt(),te=Zt();let Pr=Nt();return Pr>=0&&qy(Pr,n)?(N+=6,ue|=1024,re=String.fromCharCode(Pr)+kt(),te=Zt()):(st(Z.Invalid_character),N++,te=0);case 35:if(N!==0&&R[N+1]==="!")return st(Z.can_only_be_used_at_the_start_of_a_file,N,2),N++,te=0;let ti=De(N+1);if(ti===92){N++;let Pn=Lt();if(Pn>=0&&qy(Pn,n))return re="#"+Kt(!0)+kt(),te=81;let an=Nt();if(an>=0&&qy(an,n))return N+=6,ue|=1024,re="#"+String.fromCharCode(an)+kt(),te=81;N--}return qy(ti,n)?(N++,Hr(ti,n)):(re="#",st(Z.Invalid_character,N++,Jr(Mt))),te=81;case 65533:return st(Z.File_appears_to_be_binary,0,0),N=V,te=8;default:let cr=Hr(Mt,n);if(cr)return te=cr;if(e0(Mt)){N+=Jr(Mt);continue}else if(XC(Mt)){ue|=1,N+=Jr(Mt);continue}let kn=Jr(Mt);return st(Z.Invalid_character,N,kn),N+=kn,te=0}}}function Pt(){switch(Ne){case 0:return!0;case 1:return!1}return Fe!==3&&Fe!==4?!0:Ne===3?!1:tl.test(R.slice(P,N))}function Vr(){w.assert(te===0,"'reScanInvalidIdentifier' should only be called when the current token is 'SyntaxKind.Unknown'."),N=Q=P,ue=0;let Mt=De(N),_r=Hr(Mt,99);return _r?te=_r:(N+=Jr(Mt),te)}function Hr(Mt,_r){let Pr=Mt;if(qy(Pr,_r)){for(N+=Jr(Pr);N=V)return te=1;let _r=Le(N);if(_r===60)return Le(N+1)===47?(N+=2,te=31):(N++,te=30);if(_r===123)return N++,te=19;let Pr=0;for(;N0)break;Jm(_r)||(Pr=N)}N++}return re=R.substring(P,N),Pr===-1?13:12}function mc(){if(MI(te)){for(;N=V)return te=1;for(let _r=Le(N);N=0&&e0(Le(N-1))&&!(N+1=V)return te=1;let Mt=De(N);switch(N+=Jr(Mt),Mt){case 9:case 11:case 12:case 32:for(;N=0&&qy(_r,n))return re=Kt(!0)+kt(),te=Zt();let Pr=Nt();return Pr>=0&&qy(Pr,n)?(N+=6,ue|=1024,re=String.fromCharCode(Pr)+kt(),te=Zt()):(N++,te=0)}if(qy(Mt,n)){let _r=Mt;for(;N=0),N=Mt,P=Mt,Q=Mt,te=0,re=void 0,ue=0}function wt(Mt){de+=Mt?1:-1}function br(){return Be}}function Er(n,c){return n.codePointAt(c)}function Jr(n){return n>=65536?2:n===-1?0:1}function Un(n){if(w.assert(0<=n&&n<=1114111),n<=65535)return String.fromCharCode(n);let c=Math.floor((n-65536)/1024)+55296,u=(n-65536)%1024+56320;return String.fromCharCode(c,u)}var Ki=String.fromCodePoint?n=>String.fromCodePoint(n):Un;function Ss(n){return Ki(n)}var Bo=new Map(Object.entries({General_Category:"General_Category",gc:"General_Category",Script:"Script",sc:"Script",Script_Extensions:"Script_Extensions",scx:"Script_Extensions"})),Wa=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"]),Ks=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"]),kc={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};kc.Script_Extensions=kc.Script;function Ul(n){return Qp(n)||bd(n)}function iA(n){return Ir(n,C6,rle)}function Cg(n){switch(sA(n)){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 Ku(n){return n.start+n.length}function DE(n){return n.length===0}function my(n,c){return c>=n.start&&c=n.pos&&c<=n.end}function b2(n,c){return c.start>=n.start&&Ku(c)<=Ku(n)}function PR(n,c){return w3(n,c)!==void 0}function w3(n,c){let u=dZ(n,c);return u&&u.length===0?void 0:u}function fA(n,c){return t0(n.start,n.length,c.start,c.length)}function oI(n,c,u){return t0(n.start,n.length,c,u)}function t0(n,c,u,d){let I=n+c,h=u+d;return u<=I&&h>=n}function hy(n,c){return c<=Ku(n)&&c>=n.start}function dZ(n,c){let u=Math.max(n.start,c.start),d=Math.min(Ku(n),Ku(c));return u<=d?Pd(u,d):void 0}function Ed(n,c){if(n<0)throw new Error("start < 0");if(c<0)throw new Error("length < 0");return{start:n,length:c}}function Pd(n,c){return Ed(n,c-n)}function Ms(n){return Ed(n.span.start,n.newLength)}function K(n){return DE(n.span)&&n.newLength===0}function Ce(n,c){if(c<0)throw new Error("newLength < 0");return{span:n,newLength:c}}var Ze=Ce(Ed(0,0),0);function pt(n){if(n.length===0)return Ze;if(n.length===1)return n[0];let c=n[0],u=c.span.start,d=Ku(c.span),I=u+c.newLength;for(let h=1;h=2&&n.charCodeAt(0)===95&&n.charCodeAt(1)===95?"_"+n:n}function wc(n){let c=n;return c.length>=3&&c.charCodeAt(0)===95&&c.charCodeAt(1)===95&&c.charCodeAt(2)===95?c.substr(1):c}function oo(n){return wc(n.escapedText)}function QR(n){let c=Yn(n.escapedText);return c?$s(c,s0):void 0}function pf(n){return n.valueDeclaration&&Dh(n.valueDeclaration)?oo(n.valueDeclaration.name):wc(n.escapedName)}function fZ(n){let c=n.parent.parent;if(c){if(xC(c))return l5(c);switch(c.kind){case 243:if(c.declarationList&&c.declarationList.declarations[0])return l5(c.declarationList.declarations[0]);break;case 244:let u=c.expression;switch(u.kind===226&&u.operatorToken.kind===64&&(u=u.left),u.kind){case 211:return u.name;case 212:let d=u.argumentExpression;if(sr(d))return d}break;case 217:return l5(c.expression);case 256:{if(xC(c.statement)||tn(c.statement))return l5(c.statement);break}}}}function l5(n){let c=Sl(n);return c&&sr(c)?c:void 0}function Sv(n,c){return!!(wf(n)&&sr(n.name)&&oo(n.name)===oo(c)||Dp(n)&&lr(n.declarationList.declarations,u=>Sv(u,c)))}function lN(n){return n.name||fZ(n)}function wf(n){return!!n.name}function Uw(n){switch(n.kind){case 80:return n;case 348:case 341:{let{name:u}=n;if(u.kind===166)return u.right;break}case 213:case 226:{let u=n;switch(mI(u)){case 1:case 4:case 5:case 3:return K8(u.left);case 7:case 8:case 9:return u.arguments[1];default:return}}case 346:return lN(n);case 340:return fZ(n);case 277:{let{expression:u}=n;return sr(u)?u:void 0}case 212:let c=n;if(Ece(c))return c.argumentExpression}return n.name}function Sl(n){if(n!==void 0)return Uw(n)||(PA(n)||Id(n)||rp(n)?u5(n):void 0)}function u5(n){if(n.parent){if(jC(n.parent)||hl(n.parent))return n.parent.name;if(ro(n.parent)&&n===n.parent.right){if(sr(n.parent.left))return n.parent.left;if(mp(n.parent.left))return K8(n.parent.left)}else if(js(n.parent)&&sr(n.parent.name))return n.parent.name}else return}function Kw(n){if(LE(n))return Gt(n.modifiers,FC)}function uN(n){if(ya(n,98303))return Gt(n.modifiers,Ag)}function g5(n,c){if(n.name)if(sr(n.name)){let u=n.name.escapedText;return d5(n.parent,c).filter(d=>LB(d)&&sr(d.name)&&d.name.escapedText===u)}else{let u=n.parent.parameters.indexOf(n);w.assert(u>-1,"Parameters should always be in their parents' parameter list");let d=d5(n.parent,c).filter(LB);if(uLv(d)&&d.typeParameters.some(I=>I.name.escapedText===u))}function u8(n){return l8(n,!1)}function A5(n){return l8(n,!0)}function dG(n){return!!xE(n,LB)}function g8(n){return xE(n,P6)}function Bx(n){return A8(n,zxe)}function ss(n){return xE(n,rRt)}function Ko(n){return xE(n,WKe)}function $o(n){return xE(n,WKe,!0)}function Za(n){return xE(n,PKe)}function gc(n){return xE(n,PKe,!0)}function CA(n){return xE(n,OKe)}function xd(n){return xE(n,OKe,!0)}function fm(n){return xE(n,QKe)}function N1(n){return xE(n,QKe,!0)}function R1(n){return xE(n,Kxe,!0)}function Vb(n){return xE(n,MKe)}function BB(n){return xE(n,MKe,!0)}function pG(n){return xE(n,Ohe)}function vx(n){return xE(n,HKe)}function O9(n){return xE(n,jxe)}function MCe(n){return xE(n,Lv)}function f$(n){return xE(n,qxe)}function Sx(n){let c=xE(n,Yle);if(c&&c.typeExpression&&c.typeExpression.type)return c}function wx(n){let c=xE(n,Yle);return!c&&Uc(n)&&(c=be(MR(n),u=>!!u.typeExpression)),c&&c.typeExpression&&c.typeExpression.type}function dX(n){let c=O9(n);if(c&&c.typeExpression)return c.typeExpression.type;let u=Sx(n);if(u&&u.typeExpression){let d=u.typeExpression.type;if(Se(d)){let I=be(d.members,mV);return I&&I.type}if(H(d)||Ate(d))return d.type}}function d5(n,c){var u;if(!pee(n))return v;let d=(u=n.jsDoc)==null?void 0:u.jsDocCache;if(d===void 0||c){let I=pme(n,c);w.assert(I.length<2||I[0]!==I[1]),d=Fr(I,h=>cT(h)?h.tags:h),c||(n.jsDoc??(n.jsDoc=[]),n.jsDoc.jsDocCache=d)}return d}function Tx(n){return d5(n,!1)}function HCe(n){return d5(n,!0)}function xE(n,c,u){return be(d5(n,u),c)}function A8(n,c){return Tx(n).filter(c)}function YCe(n,c){return Tx(n).filter(u=>u.kind===c)}function pX(n){return typeof n=="string"?n:n?.map(c=>c.kind===321?c.text:_Re(c)).join("")}function _Re(n){let c=n.kind===324?"link":n.kind===325?"linkcode":"linkplain",u=n.name?r0(n.name):"",d=n.name&&(n.text===""||n.text.startsWith("://"))?"":" ";return`{@${c} ${u}${d}${n.text}}`}function D1(n){if(LG(n)){if(dte(n.parent)){let c=HX(n.parent);if(c&&O(c.tags))return Fr(c.tags,u=>Lv(u)?u.typeParameters:void 0)}return v}if(T2(n))return w.assert(n.parent.kind===320),Fr(n.parent.tags,c=>Lv(c)?c.typeParameters:void 0);if(n.typeParameters||fRt(n)&&n.typeParameters)return n.typeParameters;if(io(n)){let c=Tee(n);if(c.length)return c;let u=wx(n);if(u&&H(u)&&u.typeParameters)return u.typeParameters}return v}function jw(n){return n.constraint?n.constraint:Lv(n.parent)&&n===n.parent.typeParameters[0]?n.parent.constraint:void 0}function eb(n){return n.kind===80||n.kind===81}function fX(n){return n.kind===178||n.kind===177}function p5(n){return fo(n)&&!!(n.flags&64)}function IX(n){return _A(n)&&!!(n.flags&64)}function fG(n){return lu(n)&&!!(n.flags&64)}function Gm(n){let c=n.kind;return!!(n.flags&64)&&(c===211||c===212||c===213||c===235)}function f5(n){return Gm(n)&&!sT(n)&&!!n.questionDotToken}function d8(n){return f5(n.parent)&&n.parent.expression===n}function R3(n){return!Gm(n.parent)||f5(n.parent)||n!==n.parent.expression}function I$(n){return n.kind===226&&n.operatorToken.kind===61}function B2(n){return F(n)&&sr(n.typeName)&&n.typeName.escapedText==="const"&&!n.typeArguments}function x1(n){return LC(n,8)}function p8(n){return sT(n)&&!!(n.flags&64)}function D3(n){return n.kind===252||n.kind===251}function f8(n){return n.kind===280||n.kind===279}function IZ(n){return n.kind===348||n.kind===341}function XCe(n){return CX(n.kind)}function CX(n){return n>=166}function C$(n){return n>=0&&n<=165}function Q9(n){return C$(n.kind)}function IG(n){return Qa(n,"pos")&&Qa(n,"end")}function I5(n){return 9<=n&&n<=15}function wv(n){return I5(n.kind)}function CZ(n){switch(n.kind){case 210:case 209:case 14:case 218:case 231:return!0}return!1}function DS(n){return 15<=n&&n<=18}function Oae(n){return DS(n.kind)}function I8(n){let c=n.kind;return c===17||c===18}function M9(n){return yy(n)||l0(n)}function H9(n){switch(n.kind){case 276:return n.isTypeOnly||n.parent.parent.isTypeOnly;case 274:return n.parent.isTypeOnly;case 273:case 271:return n.isTypeOnly}return!1}function Qae(n){switch(n.kind){case 281:return n.isTypeOnly||n.parent.parent.isTypeOnly;case 278:return n.isTypeOnly&&!!n.moduleSpecifier&&!n.exportClause;case 280:return n.parent.isTypeOnly}return!1}function Nx(n){return H9(n)||Qae(n)}function C8(n){return n.kind===11||DS(n.kind)}function m$(n){return Eu(n)||sr(n)}function Cp(n){var c;return sr(n)&&((c=n.emitNode)==null?void 0:c.autoGenerate)!==void 0}function mZ(n){var c;return Gc(n)&&((c=n.emitNode)==null?void 0:c.autoGenerate)!==void 0}function mX(n){let c=n.emitNode.autoGenerate.flags;return!!(c&32)&&!!(c&16)&&!!(c&8)}function Dh(n){return(Hl(n)||_Z(n))&&Gc(n.name)}function Y9(n){return fo(n)&&Gc(n.name)}function Tv(n){switch(n){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 C5(n){return!!(P5(n)&31)}function h$(n){return C5(n)||n===126||n===164||n===129}function Ag(n){return Tv(n.kind)}function T_(n){let c=n.kind;return c===166||c===80}function RI(n){let c=n.kind;return c===80||c===81||c===11||c===9||c===167}function hZ(n){let c=n.kind;return c===80||c===206||c===207}function eu(n){return!!n&&HR(n.kind)}function x3(n){return!!n&&(HR(n.kind)||ef(n))}function pd(n){return n&&JCe(n.kind)}function m5(n){return n.kind===112||n.kind===97}function JCe(n){switch(n){case 262:case 174:case 176:case 177:case 178:case 218:case 219:return!0;default:return!1}}function HR(n){switch(n){case 173:case 179:case 323:case 180:case 181:case 184:case 317:case 185:return!0;default:return JCe(n)}}function _$(n){return Fc(n)||wN(n)||hc(n)&&eu(n.parent)}function nC(n){let c=n.kind;return c===176||c===172||c===174||c===177||c===178||c===181||c===175||c===240}function va(n){return n&&(n.kind===263||n.kind===231)}function zw(n){return n&&(n.kind===177||n.kind===178)}function r_(n){return Hl(n)&&OS(n)}function m8(n){return io(n)&&eM(n)?(!eV(n)||!SG(n.expression))&&!X3(n,!0):n.parent&&va(n.parent)&&Hl(n)&&!OS(n)}function _Z(n){switch(n.kind){case 174:case 177:case 178:return!0;default:return!1}}function Mae(n){switch(n.kind){case 174:case 177:case 178:case 172:return!0;default:return!1}}function Rp(n){return Ag(n)||FC(n)}function Rx(n){let c=n.kind;return c===180||c===179||c===171||c===173||c===181||c===177||c===178}function h8(n){return Rx(n)||nC(n)}function vB(n){let c=n.kind;return c===303||c===304||c===305||c===174||c===177||c===178}function Ma(n){return jme(n.kind)}function hX(n){switch(n.kind){case 184:case 185:return!0}return!1}function fu(n){if(n){let c=n.kind;return c===207||c===206}return!1}function X9(n){let c=n.kind;return c===209||c===210}function k3(n){let c=n.kind;return c===208||c===232}function _X(n){switch(n.kind){case 260:case 169:case 208:return!0}return!1}function Hae(n){return js(n)||Uc(n)||yX(n)||bX(n)}function h5(n){return y$(n)||b$(n)}function y$(n){switch(n.kind){case 206:case 210:return!0}return!1}function yX(n){switch(n.kind){case 208:case 303:case 304:case 305:return!0}return!1}function b$(n){switch(n.kind){case 207:case 209:return!0}return!1}function bX(n){switch(n.kind){case 208:case 232:case 230:case 209:case 210:case 80:case 211:case 212:return!0}return Im(n,!0)}function Yae(n){let c=n.kind;return c===211||c===166||c===205}function _5(n){let c=n.kind;return c===211||c===166}function E$(n){return CG(n)||RG(n)}function CG(n){switch(n.kind){case 286:case 285:case 213:case 214:case 215:case 170:return!0;default:return!1}}function SB(n){return n.kind===213||n.kind===214}function k1(n){let c=n.kind;return c===228||c===15}function N_(n){return UCe(x1(n).kind)}function UCe(n){switch(n){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 yZ(n){return qp(x1(n).kind)}function qp(n){switch(n){case 224:case 225:case 220:case 221:case 222:case 223:case 216:return!0;default:return UCe(n)}}function _8(n){switch(n.kind){case 225:return!0;case 224:return n.operator===46||n.operator===47;default:return!1}}function xS(n){switch(n.kind){case 106:case 112:case 97:case 224:return!0;default:return wv(n)}}function tn(n){return yRe(x1(n).kind)}function yRe(n){switch(n){case 227:case 229:case 219:case 226:case 230:case 234:case 232:case 355:case 354:case 238:return!0;default:return qp(n)}}function kE(n){let c=n.kind;return c===216||c===234}function KCe(n){return ZKe(n)||GG(n)}function YR(n,c){switch(n.kind){case 248:case 249:case 250:case 246:case 247:return!0;case 256:return c&&YR(n.statement,c)}return!1}function B$(n){return rf(n)||hC(n)}function Xae(n){return lr(n,B$)}function y8(n){return!Q3(n)&&!rf(n)&&!ya(n,32)&&!Yf(n)}function G3(n){return Q3(n)||rf(n)||ya(n,32)}function bZ(n){return n.kind===249||n.kind===250}function XR(n){return hc(n)||tn(n)}function EX(n){return hc(n)}function O0(n){return bl(n)||tn(n)}function Q0(n){let c=n.kind;return c===268||c===267||c===80}function tb(n){let c=n.kind;return c===268||c===267}function Jae(n){let c=n.kind;return c===80||c===267}function v$(n){let c=n.kind;return c===275||c===274}function BX(n){return n.kind===267||n.kind===266}function v2(n){switch(n.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 Nv(n){switch(n.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 bRe(n){return n===219||n===208||n===263||n===231||n===175||n===176||n===266||n===306||n===281||n===262||n===218||n===177||n===273||n===271||n===276||n===264||n===291||n===174||n===173||n===267||n===270||n===274||n===280||n===169||n===303||n===172||n===171||n===178||n===304||n===265||n===168||n===260||n===346||n===338||n===348||n===202}function b8(n){return n===262||n===282||n===263||n===264||n===265||n===266||n===267||n===272||n===271||n===278||n===277||n===270}function S$(n){return n===252||n===251||n===259||n===246||n===244||n===242||n===249||n===250||n===248||n===245||n===256||n===253||n===255||n===257||n===258||n===243||n===247||n===254||n===353}function xC(n){return n.kind===168?n.parent&&n.parent.kind!==345||io(n):bRe(n.kind)}function vX(n){return b8(n.kind)}function SX(n){return S$(n.kind)}function Cc(n){let c=n.kind;return S$(c)||b8(c)||w$(n)}function w$(n){return n.kind!==241||n.parent!==void 0&&(n.parent.kind===258||n.parent.kind===299)?!1:!z9(n)}function qw(n){let c=n.kind;return S$(c)||b8(c)||c===241}function F3(n){let c=n.kind;return c===283||c===166||c===80}function Z3(n){let c=n.kind;return c===110||c===80||c===211||c===295}function wX(n){let c=n.kind;return c===284||c===294||c===285||c===12||c===288}function E8(n){let c=n.kind;return c===291||c===293}function Uae(n){let c=n.kind;return c===11||c===294}function Um(n){let c=n.kind;return c===286||c===285}function TX(n){let c=n.kind;return c===296||c===297}function kS(n){return n.kind>=309&&n.kind<=351}function ff(n){return n.kind===320||n.kind===319||n.kind===321||U9(n)||J9(n)||f4(n)||LG(n)}function J9(n){return n.kind>=327&&n.kind<=351}function xh(n){return n.kind===178}function Rv(n){return n.kind===177}function _y(n){if(!pee(n))return!1;let{jsDoc:c}=n;return!!c&&c.length>0}function JC(n){return!!n.type}function $w(n){return!!n.initializer}function mG(n){switch(n.kind){case 260:case 169:case 208:case 172:case 303:case 306:return!0;default:return!1}}function y5(n){return n.kind===291||n.kind===293||vB(n)}function B8(n){return n.kind===183||n.kind===233}var jCe=1073741823;function Kae(n){let c=jCe;for(let u of n){if(!u.length)continue;let d=0;for(;d0?u.parent.parameters[I-1]:void 0,b=c.text,R=h?vi(h2(b,Uu(b,h.end+1,!1,!0)),Zb(b,n.pos)):h2(b,Uu(b,n.pos,!1,!0));return lr(R)&&zCe(Ta(R),c)}let d=u&&sme(u,c);return!!X(d,I=>zCe(I,c))}var N$=[],Dx="tslib",b5=160,R$=1e6;function qd(n,c){let u=n.declarations;if(u){for(let d of u)if(d.kind===c)return d}}function zae(n,c){return Gt(n.declarations||v,u=>u.kind===c)}function xu(n){let c=new Map;if(n)for(let u of n)c.set(u.escapedName,u);return c}function wB(n){return(n.flags&33554432)!==0}function L3(n){return!!(n.flags&1536)&&n.escapedName.charCodeAt(0)===34}var v8=TB();function TB(){var n="";let c=u=>n+=u;return{getText:()=>n,write:c,rawWrite:c,writeKeyword:c,writeOperator:c,writePunctuation:c,writeSpace:c,writeStringLiteral:c,writeLiteral:c,writeParameter:c,writeProperty:c,writeSymbol:(u,d)=>c(u),writeTrailingSemicolon:c,writeComment:c,getTextPos:()=>n.length,getLine:()=>0,getColumn:()=>0,getIndent:()=>0,isAtStartOfLine:()=>!1,hasTrailingComment:()=>!1,hasTrailingWhitespace:()=>!!n.length&&Jm(n.charCodeAt(n.length-1)),writeLine:()=>n+=" ",increaseIndent:oc,decreaseIndent:oc,clear:()=>n=""}}function NB(n,c){return n.configFilePath!==c.configFilePath||qae(n,c)}function qae(n,c){return V3(n,c,d8e)}function D$(n,c){return V3(n,c,LRt)}function V3(n,c,u){return n!==c&&u.some(d=>!mle(ale(n,d),ale(c,d)))}function x$(n,c){for(;;){let u=c(n);if(u==="quit")return;if(u!==void 0)return u;if(Fc(n))return;n=n.parent}}function UC(n,c){let u=n.entries();for(let[d,I]of u){let h=c(I,d);if(h)return h}}function eT(n,c){let u=n.keys();for(let d of u){let I=c(d);if(I)return I}}function S8(n,c){n.forEach((u,d)=>{c.set(d,u)})}function W3(n){let c=v8.getText();try{return n(v8),v8.getText()}finally{v8.clear(),v8.writeKeyword(c)}}function NX(n){return n.end-n.pos}function w8(n,c){return n.path===c.path&&!n.prepend==!c.prepend&&!n.circular==!c.circular}function k$(n,c){return n===c||n.resolvedModule===c.resolvedModule||!!n.resolvedModule&&!!c.resolvedModule&&n.resolvedModule.isExternalLibraryImport===c.resolvedModule.isExternalLibraryImport&&n.resolvedModule.extension===c.resolvedModule.extension&&n.resolvedModule.resolvedFileName===c.resolvedModule.resolvedFileName&&n.resolvedModule.originalPath===c.resolvedModule.originalPath&&qCe(n.resolvedModule.packageId,c.resolvedModule.packageId)&&n.alternateResult===c.alternateResult}function RX(n,c,u,d,I){var h;let b=(h=c.getResolvedModule(n,u,d))==null?void 0:h.alternateResult,R=b&&(o0(c.getCompilerOptions())===2?[Z.There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setting_Consider_updating_to_node16_nodenext_or_bundler,[b]]:[Z.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,[b,b.includes(Kx+"@types/")?`@types/${Bte(I)}`:I]]),N=R?ou(void 0,R[0],...R[1]):c.typesPackageExists(I)?ou(void 0,Z.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,Bte(I)):c.packageBundlesTypes(I)?ou(void 0,Z.If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_declare_module_1,I,u):ou(void 0,Z.Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0,u,Bte(I));return N&&(N.repopulateInfo=()=>({moduleReference:u,mode:d,packageName:I===u?void 0:I})),N}function qCe(n,c){return n===c||!!n&&!!c&&n.name===c.name&&n.subModuleName===c.subModuleName&&n.version===c.version&&n.peerDependencies===c.peerDependencies}function E5({name:n,subModuleName:c}){return c?`${n}/${c}`:n}function JR(n){return`${E5(n)}@${n.version}${n.peerDependencies??""}`}function $ae(n,c){return n===c||n.resolvedTypeReferenceDirective===c.resolvedTypeReferenceDirective||!!n.resolvedTypeReferenceDirective&&!!c.resolvedTypeReferenceDirective&&n.resolvedTypeReferenceDirective.resolvedFileName===c.resolvedTypeReferenceDirective.resolvedFileName&&!!n.resolvedTypeReferenceDirective.primary==!!c.resolvedTypeReferenceDirective.primary&&n.resolvedTypeReferenceDirective.originalPath===c.resolvedTypeReferenceDirective.originalPath}function G$(n,c,u,d){w.assert(n.length===c.length);for(let I=0;I=0),Dc(c)[n]}function tce(n){let c=ls(n),u=Vl(c,n.pos);return`${c.fileName}(${u.line+1},${u.character+1})`}function DX(n,c){w.assert(n>=0);let u=Dc(c),d=n,I=c.text;if(d+1===u.length)return I.length-1;{let h=u[d],b=u[d+1]-1;for(w.assert(XC(I.charCodeAt(b)));h<=b&&XC(I.charCodeAt(b));)b--;return b}}function v5(n,c,u){return!(u&&u(c))&&!n.identifiers.has(c)}function Tf(n){return n===void 0?!0:n.pos===n.end&&n.pos>=0&&n.kind!==1}function GE(n){return!Tf(n)}function F$(n,c){return $p(n)?c===n.expression:ef(n)?c===n.modifiers:i_(n)?c===n.initializer:Hl(n)?c===n.questionToken&&r_(n):jC(n)?c===n.modifiers||c===n.questionToken||c===n.exclamationToken||xX(n.modifiers,c,Rp):F_(n)?c===n.equalsToken||c===n.modifiers||c===n.questionToken||c===n.exclamationToken||xX(n.modifiers,c,Rp):lI(n)?c===n.exclamationToken:Df(n)?c===n.typeParameters||c===n.type||xX(n.typeParameters,c,$p):Qb(n)?c===n.typeParameters||xX(n.typeParameters,c,$p):ob(n)?c===n.typeParameters||c===n.type||xX(n.typeParameters,c,$p):Phe(n)?c===n.modifiers||xX(n.modifiers,c,Rp):!1}function xX(n,c,u){return!n||Na(c)||!u(c)?!1:Ue(n,c)}function $Ce(n,c,u){if(c===void 0||c.length===0)return n;let d=0;for(;d[`${Vl(n,b.range.end).line}`,b])),d=new Map;return{getUnusedExpectations:I,markUsed:h};function I(){return on(u.entries()).filter(([b,R])=>R.type===0&&!d.get(b)).map(([b,R])=>R)}function h(b){return u.has(`${b}`)?(d.set(`${b}`,!0),!0):!1}}function xx(n,c,u){if(Tf(n))return n.pos;if(kS(n)||n.kind===12)return Uu((c??ls(n)).text,n.pos,!1,!0);if(u&&_y(n))return xx(n.jsDoc[0],c);if(n.kind===352){c??(c=ls(n));let d=$i(YKe(n,c));if(d)return xx(d,c,u)}return Uu((c??ls(n)).text,n.pos,!1,!1,tee(n))}function L$(n,c){let u=!Tf(n)&&tw(n)?Te(n.modifiers,FC):void 0;return u?Uu((c||ls(n)).text,u.end):xx(n,c)}function hG(n,c,u=!1){return w5(n.text,c,u)}function BRe(n){return!!Si(n,sP)}function S5(n){return!!(hC(n)&&n.exportClause&&sD(n.exportClause)&&n.exportClause.name.escapedText==="default")}function w5(n,c,u=!1){if(Tf(c))return"";let d=n.substring(u?c.pos:Uu(n,c.pos),c.end);return BRe(c)&&(d=d.split(/\r\n|\n|\r/).map(I=>I.replace(/^\s*\*/,"").trimStart()).join(` +`)),d}function Nf(n,c=!1){return hG(ls(n),n,c)}function nme(n){return n.pos}function P3(n,c){return Vg(n,c,nme,Jl)}function wg(n){let c=n.emitNode;return c&&c.flags||0}function FE(n){let c=n.emitNode;return c&&c.internalFlags||0}var D8=su(()=>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:v})),AsyncIterator:new Map(Object.entries({es2015:v})),Atomics:new Map(Object.entries({es2017:v})),SharedArrayBuffer:new Map(Object.entries({es2017:v})),AsyncIterable:new Map(Object.entries({es2018:v})),AsyncIterableIterator:new Map(Object.entries({es2018:v})),AsyncGenerator:new Map(Object.entries({es2018:v})),AsyncGeneratorFunction:new Map(Object.entries({es2018:v})),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:v,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:v})),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:v,es2022:["at"],es2023:["findLastIndex","findLast"]})),BigUint64Array:new Map(Object.entries({es2020:v,es2022:["at"],es2023:["findLastIndex","findLast"]})),Error:new Map(Object.entries({es2022:["cause"]}))}))),nce=(n=>(n[n.None=0]="None",n[n.NeverAsciiEscape=1]="NeverAsciiEscape",n[n.JsxAttributeEscape=2]="JsxAttributeEscape",n[n.TerminateUnterminatedLiterals=4]="TerminateUnterminatedLiterals",n[n.AllowNumericSeparator=8]="AllowNumericSeparator",n))(nce||{});function V$(n,c,u){if(c&&vRe(n,u))return hG(c,n);switch(n.kind){case 11:{let d=u&2?Rme:u&1||wg(n)&16777216?rT:xce;return n.singleQuote?"'"+d(n.text,39)+"'":'"'+d(n.text,34)+'"'}case 15:case 16:case 17:case 18:{let d=u&1||wg(n)&16777216?rT:xce,I=n.rawText??Tme(d(n.text,96));switch(n.kind){case 15:return"`"+I+"`";case 16:return"`"+I+"${";case 17:return"}"+I+"${";case 18:return"}"+I+"`"}break}case 9:case 10:return n.text;case 14:return u&4&&n.isUnterminated?n.text+(n.text.charCodeAt(n.text.length-1)===92?" /":"/"):n.text}return w.fail(`Literal kind '${n.kind}' not accounted for.`)}function vRe(n,c){if($d(n)||!n.parent||c&4&&n.isUnterminated)return!1;if(pu(n)){if(n.numericLiteralFlags&26656)return!1;if(n.numericLiteralFlags&512)return!!(c&8)}return!q3(n)}function x8(n){return Ya(n)?`"${rT(n)}"`:""+n}function ice(n){return kA(n).replace(/^(\d)/,"_$1").replace(/\W/g,"_")}function W$(n){return($y(n)&7)!==0||P$(n)}function P$(n){let c=PS(n);return c.kind===260&&c.parent.kind===299}function Yf(n){return mC(n)&&(n.name.kind===11||S2(n))}function T5(n){return mC(n)&&n.name.kind===11}function O$(n){return mC(n)&&Eu(n.name)}function sce(n){return mC(n)||sr(n)}function O3(n){return SRe(n.valueDeclaration)}function SRe(n){return!!n&&n.kind===267&&!n.body}function k8(n){return n.kind===307||n.kind===267||x3(n)}function S2(n){return!!(n.flags&2048)}function KR(n){return Yf(n)&&Q$(n)}function Q$(n){switch(n.parent.kind){case 307:return hm(n.parent);case 268:return Yf(n.parent.parent)&&Fc(n.parent.parent.parent)&&!hm(n.parent.parent.parent)}return!1}function M$(n){var c;return(c=n.declarations)==null?void 0:c.find(u=>!KR(u)&&!(mC(u)&&S2(u)))}function wRe(n){return n===1||n===100||n===199}function K9(n,c){return hm(n)||wRe(D_(c))&&!!n.commonJsModuleIndicator}function kX(n,c){switch(n.scriptKind){case 1:case 3:case 2:case 4:break;default:return!1}return n.isDeclarationFile?!1:!!(x_(c,"alwaysStrict")||gRt(n.statements)||hm(n)||VE(c))}function H$(n){return!!(n.flags&33554432)||ya(n,128)}function Y$(n,c){switch(n.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!x3(c)}return!1}function X$(n){switch(w.type(n),n.kind){case 338:case 346:case 323:return!0;default:return GX(n)}}function GX(n){switch(w.type(n),n.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 _G(n){switch(n.kind){case 272:case 271:return!0;default:return!1}}function oce(n){return _G(n)||$9(n)}function ace(n){return _G(n)||Y8(n)}function G8(n){switch(n.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 cce(n){return Q3(n)||mC(n)||Nu(n)||fC(n)}function Q3(n){return _G(n)||hC(n)}function F8(n){return Si(n.parent,c=>!!(M8e(c)&1))}function w2(n){return Si(n.parent,c=>Y$(c,c.parent))}function J$(n,c){let u=w2(n);for(;u;)c(u),u=w2(u)}function kd(n){return!n||NX(n)===0?"(Missing)":Nf(n)}function lce(n){return n.declaration?kd(n.declaration.parameters[0].name):void 0}function FX(n){return n.kind===167&&!ZE(n.expression)}function N5(n){var c;switch(n.kind){case 80:case 81:return(c=n.emitNode)!=null&&c.autoGenerate?void 0:n.escapedText;case 11:case 9:case 15:return Dd(n.text);case 167:return ZE(n.expression)?Dd(n.expression.text):void 0;case 295:return x2(n);default:return w.assertNever(n)}}function j9(n){return w.checkDefined(N5(n))}function r0(n){switch(n.kind){case 110:return"this";case 81:case 80:return NX(n)===0?oo(n):Nf(n);case 166:return r0(n.left)+"."+r0(n.right);case 211:return sr(n.name)||Gc(n.name)?r0(n.expression)+"."+r0(n.name):w.assertNever(n.name);case 311:return r0(n.left)+"#"+r0(n.right);case 295:return r0(n.namespace)+":"+r0(n.name);default:return w.assertNever(n)}}function Js(n,c,...u){let d=ls(n);return Wb(d,n,c,...u)}function M3(n,c,u,...d){let I=Uu(n.text,c.pos);return Cm(n,I,c.end-I,u,...d)}function Wb(n,c,u,...d){let I=Mi(n,c);return Cm(n,I.start,I.length,u,...d)}function ZS(n,c,u,d){let I=Mi(n,c);return Z8(n,I.start,I.length,u,d)}function ZX(n,c,u,d){let I=Uu(n.text,c.pos);return Z8(n,I,c.end-I,u,d)}function uce(n,c,u){w.assertGreaterThanOrEqual(c,0),w.assertGreaterThanOrEqual(u,0),w.assertLessThanOrEqual(c,n.length),w.assertLessThanOrEqual(c+u,n.length)}function Z8(n,c,u,d,I){return uce(n.text,c,u),{file:n,start:c,length:u,code:d.code,category:d.category,messageText:d.next?d:d.messageText,relatedInformation:I,canonicalHead:d.canonicalHead}}function ne(n,c,u){return{file:n,start:0,length:0,code:c.code,category:c.category,messageText:c.next?c:c.messageText,relatedInformation:u}}function Ie(n){return typeof n.messageText=="string"?{code:n.code,category:n.category,messageText:n.messageText,next:n.next}:n.messageText}function ze(n,c,u){return{file:n,start:c.pos,length:c.end-c.pos,code:u.code,category:u.category,messageText:u.message}}function Qt(n,...c){return{code:n.code,messageText:U5(n,...c)}}function Rr(n,c){let u=Ft(n.languageVersion,!0,n.languageVariant,n.text,void 0,c);u.scan();let d=u.getTokenStart();return Pd(d,u.getTokenEnd())}function bn(n,c){let u=Ft(n.languageVersion,!0,n.languageVariant,n.text,void 0,c);return u.scan(),u.getToken()}function Ci(n,c){let u=Uu(n.text,c.pos);if(c.body&&c.body.kind===241){let{line:d}=Vl(n,c.body.pos),{line:I}=Vl(n,c.body.end);if(d0?c.statements[0].pos:c.end;return Pd(h,b)}case 253:case 229:{let h=Uu(n.text,c.pos);return Rr(n,h)}case 238:{let h=Uu(n.text,c.expression.end);return Rr(n,h)}case 350:{let h=Uu(n.text,c.tagName.pos);return Rr(n,h)}case 176:{let h=c,b=Uu(n.text,h.pos),R=Ft(n.languageVersion,!0,n.languageVariant,n.text,void 0,b),N=R.scan();for(;N!==137&&N!==1;)N=R.scan();let V=R.getTokenEnd();return Pd(b,V)}}if(u===void 0)return Rr(n,c.pos);w.assert(!cT(u));let d=Tf(u),I=d||aM(c)?u.pos:Uu(n.text,u.pos);return d?(w.assert(I===u.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),w.assert(I===u.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")):(w.assert(I>=u.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),w.assert(I<=u.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")),Pd(I,u.end)}function bs(n){return n.kind===307&&!na(n)}function na(n){return(n.externalModuleIndicator||n.commonJsModuleIndicator)!==void 0}function fa(n){return n.scriptKind===6}function dc(n){return!!(Rh(n)&4096)}function Iu(n){return!!(Rh(n)&8&&!Zn(n,n.parent))}function Mg(n){return($y(n)&7)===6}function fd(n){return($y(n)&7)===4}function Hp(n){return($y(n)&7)===2}function Od(n){let c=$y(n)&7;return c===2||c===4||c===6}function aI(n){return($y(n)&7)===1}function Rf(n){return n.kind===213&&n.expression.kind===108}function fC(n){return n.kind===213&&n.expression.kind===102}function Pb(n){return SN(n)&&n.keywordToken===102&&n.name.escapedText==="meta"}function n_(n){return Nu(n)&&sd(n.argument)&&Eu(n.argument.literal)}function HI(n){return n.kind===244&&n.expression.kind===11}function LS(n){return!!(wg(n)&2097152)}function AN(n){return LS(n)&&hp(n)}function ime(n){return sr(n.name)&&!n.initializer}function gce(n){return LS(n)&&Dp(n)&&he(n.declarationList.declarations,ime)}function sme(n,c){return n.kind!==12?Zb(c.text,n.pos):void 0}function ome(n,c){let u=n.kind===169||n.kind===168||n.kind===218||n.kind===219||n.kind===217||n.kind===260||n.kind===281?vi(h2(c,n.pos),Zb(c,n.pos)):Zb(c,n.pos);return Gt(u,d=>d.end<=n.end&&c.charCodeAt(d.pos+1)===42&&c.charCodeAt(d.pos+2)===42&&c.charCodeAt(d.pos+3)!==47)}var TRe=/^(\/\/\/\s*/,WUe=/^(\/\/\/\s*/,JTt=/^(\/\/\/\s*/,NRe=/^(\/\/\/\s*/,UTt=/^\/\/\/\s*/,KTt=/^(\/\/\/\s*/;function VS(n){if(182<=n.kind&&n.kind<=205)return!0;switch(n.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 n.parent.kind!==222;case 233:return PUe(n);case 168:return n.parent.kind===200||n.parent.kind===195;case 80:(n.parent.kind===166&&n.parent.right===n||n.parent.kind===211&&n.parent.name===n)&&(n=n.parent),w.assert(n.kind===80||n.kind===166||n.kind===211,"'node' was expected to be a qualified name, identifier or property access in 'isPartOfTypeNode'.");case 166:case 211:case 110:{let{parent:c}=n;if(c.kind===186)return!1;if(c.kind===205)return!c.isTypeOf;if(182<=c.kind&&c.kind<=205)return!0;switch(c.kind){case 233:return PUe(c);case 168:return n===c.constraint;case 345:return n===c.constraint;case 172:case 171:case 169:case 260:return n===c.type;case 262:case 218:case 219:case 176:case 174:case 173:case 177:case 178:return n===c.type;case 179:case 180:case 181:return n===c.type;case 216:return n===c.type;case 213:case 214:case 215:return Ue(c.typeArguments,n)}}}return!1}function PUe(n){return zxe(n.parent)||P6(n.parent)||OE(n.parent)&&!Qce(n)}function OUe(n,c){for(;n;){if(n.kind===c)return!0;n=n.parent}return!1}function kx(n,c){return u(n);function u(d){switch(d.kind){case 253:return c(d);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 hu(d,u)}}}function RRe(n,c){return u(n);function u(d){switch(d.kind){case 229:c(d);let I=d.expression;I&&u(I);return;case 266:case 264:case 267:case 265:return;default:if(eu(d)){if(d.name&&d.name.kind===167){u(d.name.expression);return}}else VS(d)||hu(d,u)}}}function ame(n){return n&&n.kind===188?n.elementType:n&&n.kind===183?Tu(n.typeArguments):void 0}function DRe(n){switch(n.kind){case 264:case 263:case 231:case 187:return n.members;case 210:return n.properties}}function R5(n){if(n)switch(n.kind){case 208:case 306:case 169:case 303:case 172:case 171:case 304:case 260:return!0}return!1}function Ace(n){return R5(n)||zw(n)}function L8(n){return n.parent.kind===261&&n.parent.parent.kind===243}function xRe(n){return io(n)?ru(n.parent)&&ro(n.parent.parent)&&mI(n.parent.parent)===2||U$(n.parent):!1}function U$(n){return io(n)?ro(n)&&mI(n)===1:!1}function kRe(n){return(js(n)?Hp(n)&&sr(n.name)&&L8(n):Hl(n)?s6(n)&&CC(n):i_(n)&&s6(n))||U$(n)}function GRe(n){switch(n.kind){case 174:case 173:case 176:case 177:case 178:case 262:case 218:return!0}return!1}function cme(n,c){for(;;){if(c&&c(n),n.statement.kind!==256)return n.statement;n=n.statement}}function z9(n){return n&&n.kind===241&&eu(n.parent)}function RB(n){return n&&n.kind===174&&n.parent.kind===210}function K$(n){return(n.kind===174||n.kind===177||n.kind===178)&&(n.parent.kind===210||n.parent.kind===231)}function FRe(n){return n&&n.kind===1}function ZRe(n){return n&&n.kind===0}function LX(n,c,u,d){return X(n?.properties,I=>{if(!jC(I))return;let h=N5(I.name);return c===h||d&&d===h?u(I):void 0})}function LRe(n,c,u){return LX(n,c,d=>Cf(d.initializer)?be(d.initializer.elements,I=>Eu(I)&&I.text===u):void 0)}function V8(n){if(n&&n.statements.length){let c=n.statements[0].expression;return $s(c,ru)}}function dce(n,c,u){return j$(n,c,d=>Cf(d.initializer)?be(d.initializer.elements,I=>Eu(I)&&I.text===u):void 0)}function j$(n,c,u){return LX(V8(n),c,u)}function Ob(n){return Si(n.parent,eu)}function pce(n){return Si(n.parent,pd)}function Km(n){return Si(n.parent,va)}function VRe(n){return Si(n.parent,c=>va(c)||eu(c)?"quit":ef(c))}function z$(n){return Si(n.parent,x3)}function fce(n){let c=Si(n.parent,u=>va(u)?"quit":FC(u));return c&&va(c.parent)?Km(c.parent):Km(c??n)}function n0(n,c,u){for(w.assert(n.kind!==307);;){if(n=n.parent,!n)return w.fail();switch(n.kind){case 167:if(u&&va(n.parent.parent))return n;n=n.parent.parent;break;case 170:n.parent.kind===169&&nC(n.parent.parent)?n=n.parent.parent:nC(n.parent)&&(n=n.parent);break;case 219:if(!c)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 n}}}function WRe(n){switch(n.kind){case 219:case 262:case 218:case 172:return!0;case 241:switch(n.parent.kind){case 176:case 174:case 177:case 178:return!0;default:return!1}default:return!1}}function Ice(n){sr(n)&&(Ec(n.parent)||hp(n.parent))&&n.parent.name===n&&(n=n.parent);let c=n0(n,!0,!1);return Fc(c)}function PRe(n){let c=n0(n,!1,!1);if(c)switch(c.kind){case 176:case 262:case 218:return c}}function W8(n,c){for(;;){if(n=n.parent,!n)return;switch(n.kind){case 167:n=n.parent;break;case 262:case 218:case 219:if(!c)continue;case 172:case 171:case 174:case 173:case 176:case 177:case 178:case 175:return n;case 170:n.parent.kind===169&&nC(n.parent.parent)?n=n.parent.parent:nC(n.parent)&&(n=n.parent);break}}}function q9(n){if(n.kind===218||n.kind===219){let c=n,u=n.parent;for(;u.kind===217;)c=u,u=u.parent;if(u.kind===213&&u.expression===c)return u}}function QUe(n){return n.kind===108||M0(n)}function M0(n){let c=n.kind;return(c===211||c===212)&&n.expression.kind===108}function q$(n){let c=n.kind;return(c===211||c===212)&&n.expression.kind===110}function Cce(n){var c;return!!n&&js(n)&&((c=n.initializer)==null?void 0:c.kind)===110}function ORe(n){return!!n&&(F_(n)||jC(n))&&ro(n.parent.parent)&&n.parent.parent.operatorToken.kind===64&&n.parent.parent.right.kind===110}function $$(n){switch(n.kind){case 183:return n.typeName;case 233:return lp(n.expression)?n.expression:void 0;case 80:case 166:return n}}function P8(n){switch(n.kind){case 215:return n.tag;case 286:case 285:return n.tagName;case 226:return n.right;default:return n.expression}}function eee(n,c,u,d){if(n&&wf(c)&&Gc(c.name))return!1;switch(c.kind){case 263:return!0;case 231:return!n;case 172:return u!==void 0&&(n?Ec(u):va(u)&&!cV(c)&&!Wme(c));case 177:case 178:case 174:return c.body!==void 0&&u!==void 0&&(n?Ec(u):va(u));case 169:return n?u!==void 0&&u.body!==void 0&&(u.kind===176||u.kind===174||u.kind===178)&&sV(u)!==c&&d!==void 0&&d.kind===263:!1}return!1}function VX(n,c,u,d){return LE(c)&&eee(n,c,u,d)}function O8(n,c,u,d){return VX(n,c,u,d)||Q8(n,c,u)}function Q8(n,c,u){switch(c.kind){case 263:return lr(c.members,d=>O8(n,d,c,u));case 231:return!n&&lr(c.members,d=>O8(n,d,c,u));case 174:case 178:case 176:return lr(c.parameters,d=>VX(n,d,c,u));default:return!1}}function Gx(n,c){if(VX(n,c))return!0;let u=pN(c);return!!u&&Q8(n,u,c)}function lme(n,c,u){let d;if(zw(c)){let{firstAccessor:I,secondAccessor:h,setAccessor:b}=Vx(u.members,c),R=LE(I)?I:h&&LE(h)?h:void 0;if(!R||c!==R)return!1;d=b?.parameters}else lI(c)&&(d=c.parameters);if(VX(n,c,u))return!0;if(d){for(let I of d)if(!oV(I)&&VX(n,I,c,u))return!0}return!1}function ume(n){if(n.textSourceNode){switch(n.textSourceNode.kind){case 11:return ume(n.textSourceNode);case 15:return n.text===""}return!1}return n.text===""}function WX(n){let{parent:c}=n;return c.kind===286||c.kind===285||c.kind===287?c.tagName===n:!1}function DB(n){switch(n.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!OE(n.parent)&&!P6(n.parent);case 166:for(;n.parent.kind===166;)n=n.parent;return n.parent.kind===186||U9(n.parent)||Hle(n.parent)||oP(n.parent)||WX(n);case 311:for(;oP(n.parent);)n=n.parent;return n.parent.kind===186||U9(n.parent)||Hle(n.parent)||oP(n.parent)||WX(n);case 81:return ro(n.parent)&&n.parent.left===n&&n.parent.operatorToken.kind===103;case 80:if(n.parent.kind===186||U9(n.parent)||Hle(n.parent)||oP(n.parent)||WX(n))return!0;case 9:case 10:case 11:case 15:case 110:return mce(n);default:return!1}}function mce(n){let{parent:c}=n;switch(c.kind){case 260:case 169:case 172:case 171:case 306:case 303:case 208:return c.initializer===n;case 244:case 245:case 246:case 247:case 253:case 254:case 255:case 296:case 257:return c.expression===n;case 248:let u=c;return u.initializer===n&&u.initializer.kind!==261||u.condition===n||u.incrementor===n;case 249:case 250:let d=c;return d.initializer===n&&d.initializer.kind!==261||d.expression===n;case 216:case 234:return n===c.expression;case 239:return n===c.expression;case 167:return n===c.expression;case 170:case 294:case 293:case 305:return!0;case 233:return c.expression===n&&!VS(c);case 304:return c.objectAssignmentInitializer===n;case 238:return n===c.expression;default:return DB(c)}}function hce(n){for(;n.kind===166||n.kind===80;)n=n.parent;return n.kind===186}function QRe(n){return sD(n)&&!!n.parent.moduleSpecifier}function BZ(n){return n.kind===271&&n.moduleReference.kind===283}function M8(n){return w.assert(BZ(n)),n.moduleReference.expression}function gme(n){return $9(n)&&Y5(n.initializer).arguments[0]}function D5(n){return n.kind===271&&n.moduleReference.kind!==283}function jR(n){return n?.kind===307}function i0(n){return io(n)}function MUe(n){return!io(n)}function io(n){return!!n&&!!(n.flags&524288)}function H8(n){return!!n&&!!(n.flags&134217728)}function _ce(n){return!fa(n)}function tee(n){return!!n&&!!(n.flags&16777216)}function ree(n){return F(n)&&sr(n.typeName)&&n.typeName.escapedText==="Object"&&n.typeArguments&&n.typeArguments.length===2&&(n.typeArguments[0].kind===154||n.typeArguments[0].kind===150)}function H0(n,c){if(n.kind!==213)return!1;let{expression:u,arguments:d}=n;if(u.kind!==80||u.escapedText!=="require"||d.length!==1)return!1;let I=d[0];return!c||JA(I)}function nee(n){return HUe(n,!1)}function $9(n){return HUe(n,!0)}function MRe(n){return hl(n)&&$9(n.parent.parent)}function HUe(n,c){return js(n)&&!!n.initializer&&H0(c?Y5(n.initializer):n.initializer,!0)}function Y8(n){return Dp(n)&&n.declarationList.declarations.length>0&&he(n.declarationList.declarations,c=>nee(c))}function iee(n){return n===39||n===34}function yce(n,c){return hG(c,n).charCodeAt(0)===34}function X8(n){return ro(n)||mp(n)||sr(n)||lu(n)}function see(n){return io(n)&&n.initializer&&ro(n.initializer)&&(n.initializer.operatorToken.kind===57||n.initializer.operatorToken.kind===61)&&n.name&&lp(n.name)&&PX(n.name,n.initializer.left)?n.initializer.right:n.initializer}function J8(n){let c=see(n);return c&&vZ(c,SG(n.name))}function jTt(n,c){return X(n.properties,u=>jC(u)&&sr(u.name)&&u.name.escapedText==="value"&&u.initializer&&vZ(u.initializer,c))}function x5(n){if(n&&n.parent&&ro(n.parent)&&n.parent.operatorToken.kind===64){let c=SG(n.parent.left);return vZ(n.parent.right,c)||zTt(n.parent.left,n.parent.right,c)}if(n&&lu(n)&&Y3(n)){let c=jTt(n.arguments[2],n.arguments[1].text==="prototype");if(c)return c}}function vZ(n,c){if(lu(n)){let u=zA(n.expression);return u.kind===218||u.kind===219?n:void 0}if(n.kind===218||n.kind===231||n.kind===219||ru(n)&&(n.properties.length===0||c))return n}function zTt(n,c,u){let d=ro(c)&&(c.operatorToken.kind===57||c.operatorToken.kind===61)&&vZ(c.right,u);if(d&&PX(n,c.left))return d}function HRe(n){let c=js(n.parent)?n.parent.name:ro(n.parent)&&n.parent.operatorToken.kind===64?n.parent.left:void 0;return c&&vZ(n.right,SG(c))&&lp(c)&&PX(c,n.left)}function Ame(n){if(ro(n.parent)){let c=(n.parent.operatorToken.kind===57||n.parent.operatorToken.kind===61)&&ro(n.parent.parent)?n.parent.parent:n.parent;if(c.operatorToken.kind===64&&sr(c.left))return c.left}else if(js(n.parent))return n.parent.name}function PX(n,c){return WS(n)&&WS(c)?N2(n)===N2(c):eb(n)&&bce(c)&&(c.expression.kind===110||sr(c.expression)&&(c.expression.escapedText==="window"||c.expression.escapedText==="self"||c.expression.escapedText==="global"))?PX(n,aee(c)):bce(n)&&bce(c)?zR(n)===zR(c)&&PX(n.expression,c.expression):!1}function yG(n){for(;Im(n,!0);)n=n.right;return n}function H3(n){return sr(n)&&n.escapedText==="exports"}function U8(n){return sr(n)&&n.escapedText==="module"}function dN(n){return(fo(n)||oee(n))&&U8(n.expression)&&zR(n)==="exports"}function mI(n){let c=qTt(n);return c===5||io(n)?c:0}function Y3(n){return O(n.arguments)===3&&fo(n.expression)&&sr(n.expression.expression)&&oo(n.expression.expression)==="Object"&&oo(n.expression.name)==="defineProperty"&&ZE(n.arguments[1])&&X3(n.arguments[0],!0)}function bce(n){return fo(n)||oee(n)}function oee(n){return _A(n)&&ZE(n.argumentExpression)}function eV(n,c){return fo(n)&&(!c&&n.expression.kind===110||sr(n.name)&&X3(n.expression,!0))||Ece(n,c)}function Ece(n,c){return oee(n)&&(!c&&n.expression.kind===110||lp(n.expression)||eV(n.expression,!0))}function X3(n,c){return lp(n)||eV(n,c)}function aee(n){return fo(n)?n.name:n.argumentExpression}function qTt(n){if(lu(n)){if(!Y3(n))return 0;let c=n.arguments[0];return H3(c)||dN(c)?8:eV(c)&&zR(c)==="prototype"?9:7}return n.operatorToken.kind!==64||!mp(n.left)||$Tt(yG(n))?0:X3(n.left.expression,!0)&&zR(n.left)==="prototype"&&ru(Bce(n))?6:cee(n.left)}function $Tt(n){return mf(n)&&pu(n.expression)&&n.expression.text==="0"}function K8(n){if(fo(n))return n.name;let c=zA(n.argumentExpression);return pu(c)||JA(c)?c:n}function zR(n){let c=K8(n);if(c){if(sr(c))return c.escapedText;if(JA(c)||pu(c))return Dd(c.text)}}function cee(n){if(n.expression.kind===110)return 4;if(dN(n))return 2;if(X3(n.expression,!0)){if(SG(n.expression))return 3;let c=n;for(;!sr(c.expression);)c=c.expression;let u=c.expression;if((u.escapedText==="exports"||u.escapedText==="module"&&zR(c)==="exports")&&eV(n))return 1;if(X3(n,!0)||_A(n)&&Rce(n))return 5}return 0}function Bce(n){for(;ro(n.right);)n=n.right;return n.right}function lee(n){return ro(n)&&mI(n)===3}function YRe(n){return io(n)&&n.parent&&n.parent.kind===244&&(!_A(n)||oee(n))&&!!Sx(n.parent)}function uee(n,c){let{valueDeclaration:u}=n;(!u||!(c.flags&33554432&&!io(c)&&!(u.flags&33554432))&&X8(u)&&!X8(c)||u.kind!==c.kind&&sce(u))&&(n.valueDeclaration=c)}function XRe(n){if(!n||!n.valueDeclaration)return!1;let c=n.valueDeclaration;return c.kind===262||js(c)&&c.initializer&&eu(c.initializer)}function j8(n){var c,u;switch(n.kind){case 260:case 208:return(c=Si(n.initializer,d=>H0(d,!0)))==null?void 0:c.arguments[0];case 272:case 278:case 351:return $s(n.moduleSpecifier,JA);case 271:return $s((u=$s(n.moduleReference,ZG))==null?void 0:u.expression,JA);case 273:case 280:return $s(n.parent.moduleSpecifier,JA);case 274:case 281:return $s(n.parent.parent.moduleSpecifier,JA);case 276:return $s(n.parent.parent.parent.moduleSpecifier,JA);case 205:return n_(n)?n.argument.literal:void 0;default:w.assertNever(n)}}function OX(n){return gee(n)||w.failBadSyntaxKind(n.parent)}function gee(n){switch(n.parent.kind){case 272:case 278:case 351:return n.parent;case 283:return n.parent.parent;case 213:return fC(n.parent)||H0(n.parent,!1)?n.parent:void 0;case 201:return w.assert(Eu(n)),$s(n.parent.parent,Nu);default:return}}function k5(n){switch(n.kind){case 272:case 278:case 351:return n.moduleSpecifier;case 271:return n.moduleReference.kind===283?n.moduleReference.expression:void 0;case 205:return n_(n)?n.argument.literal:void 0;case 213:return n.arguments[0];case 267:return n.name.kind===11?n.name:void 0;default:return w.assertNever(n)}}function QX(n){switch(n.kind){case 272:return n.importClause&&$s(n.importClause.namedBindings,Xx);case 271:return n;case 278:return n.exportClause&&$s(n.exportClause,sD);default:return w.assertNever(n)}}function G5(n){return(n.kind===272||n.kind===351)&&!!n.importClause&&!!n.importClause.name}function JRe(n,c){if(n.name){let u=c(n);if(u)return u}if(n.namedBindings){let u=Xx(n.namedBindings)?c(n.namedBindings):X(n.namedBindings.elements,c);if(u)return u}}function F5(n){if(n)switch(n.kind){case 169:case 174:case 173:case 304:case 303:case 172:case 171:return n.questionToken!==void 0}return!1}function MX(n){let c=Ate(n)?$i(n.parameters):void 0,u=$s(c&&c.name,sr);return!!u&&u.escapedText==="new"}function T2(n){return n.kind===346||n.kind===338||n.kind===340}function Aee(n){return T2(n)||Pf(n)}function URe(n){return Xf(n)&&ro(n.expression)&&n.expression.operatorToken.kind===64?yG(n.expression):void 0}function YUe(n){return Xf(n)&&ro(n.expression)&&mI(n.expression)!==0&&ro(n.expression.right)&&(n.expression.right.operatorToken.kind===57||n.expression.right.operatorToken.kind===61)?n.expression.right.right:void 0}function dme(n){switch(n.kind){case 243:let c=J3(n);return c&&c.initializer;case 172:return n.initializer;case 303:return n.initializer}}function J3(n){return Dp(n)?$i(n.declarationList.declarations):void 0}function XUe(n){return mC(n)&&n.body&&n.body.kind===267?n.body:void 0}function dee(n){if(n.kind>=243&&n.kind<=259)return!0;switch(n.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 pee(n){switch(n.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 pme(n,c){let u;R5(n)&&$w(n)&&_y(n.initializer)&&(u=ai(u,JUe(n,n.initializer.jsDoc)));let d=n;for(;d&&d.parent;){if(_y(d)&&(u=ai(u,JUe(n,d.jsDoc))),d.kind===169){u=ai(u,(c?c8:MR)(d));break}if(d.kind===168){u=ai(u,(c?A5:u8)(d));break}d=fme(d)}return u||v}function JUe(n,c){let u=Ta(c);return Fr(c,d=>{if(d===u){let I=Gt(d.tags,h=>UUe(n,h));return d.tags===I?[d]:I}else return Gt(d.tags,dte)})}function UUe(n,c){return!(Yle(c)||qxe(c))||!c.parent||!cT(c.parent)||!ZC(c.parent.parent)||c.parent.parent===n}function fme(n){let c=n.parent;if(c.kind===303||c.kind===277||c.kind===172||c.kind===244&&n.kind===211||c.kind===253||XUe(c)||Im(n))return c;if(c.parent&&(J3(c.parent)===n||Im(c)))return c.parent;if(c.parent&&c.parent.parent&&(J3(c.parent.parent)||dme(c.parent.parent)===n||YUe(c.parent.parent)))return c.parent.parent}function fee(n){if(n.symbol)return n.symbol;if(!sr(n.name))return;let c=n.name.escapedText,u=SZ(n);if(!u)return;let d=be(u.parameters,I=>I.name.kind===80&&I.name.escapedText===c);return d&&d.symbol}function vce(n){if(cT(n.parent)&&n.parent.tags){let c=be(n.parent.tags,T2);if(c)return c}return SZ(n)}function Ime(n){return A8(n,dte)}function SZ(n){let c=wZ(n);if(c)return i_(c)&&c.type&&eu(c.type)?c.type:eu(c)?c:void 0}function wZ(n){let c=tV(n);if(c)return YUe(c)||URe(c)||dme(c)||J3(c)||XUe(c)||c}function tV(n){let c=HX(n);if(!c)return;let u=c.parent;if(u&&u.jsDoc&&c===zo(u.jsDoc))return u}function HX(n){return Si(n.parent,cT)}function KRe(n){let c=n.name.escapedText,{typeParameters:u}=n.parent.parent.parent;return u&&be(u,d=>d.name.escapedText===c)}function KUe(n){return!!n.typeArguments}var jRe=(n=>(n[n.None=0]="None",n[n.Definite=1]="Definite",n[n.Compound=2]="Compound",n))(jRe||{});function zRe(n){let c=n.parent;for(;;){switch(c.kind){case 226:let u=c,d=u.operatorToken.kind;return tD(d)&&u.left===n?u:void 0;case 224:case 225:let I=c,h=I.operator;return h===46||h===47?I:void 0;case 249:case 250:let b=c;return b.initializer===n?b:void 0;case 217:case 209:case 230:case 235:n=c;break;case 305:n=c.parent;break;case 304:if(c.name!==n)return;n=c.parent;break;case 303:if(c.name===n)return;n=c.parent;break;default:return}c=n.parent}}function Fx(n){let c=zRe(n);if(!c)return 0;switch(c.kind){case 226:let u=c.operatorToken.kind;return u===64||o6(u)?1:2;case 224:case 225:return 2;case 249:case 250:return 1}}function Zx(n){return!!zRe(n)}function eNt(n){let c=zA(n.right);return c.kind===226&&r8e(c.operatorToken.kind)}function Sce(n){let c=zRe(n);return!!c&&Im(c,!0)&&eNt(c)}function qRe(n){switch(n.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 Z5(n){return PA(n)||Id(n)||_Z(n)||hp(n)||Df(n)}function jUe(n,c){for(;n&&n.kind===c;)n=n.parent;return n}function Iee(n){return jUe(n,196)}function qR(n){return jUe(n,217)}function Cme(n){let c;for(;n&&n.kind===196;)c=n,n=n.parent;return[c,n]}function z8(n){for(;to(n);)n=n.type;return n}function zA(n,c){return LC(n,c?17:1)}function mme(n){return n.kind!==211&&n.kind!==212?!1:(n=qR(n.parent),n&&n.kind===220)}function rV(n,c){for(;n;){if(n===c)return!0;n=n.parent}return!1}function tT(n){return!Fc(n)&&!fu(n)&&xC(n.parent)&&n.parent.name===n}function q8(n){let c=n.parent;switch(n.kind){case 11:case 15:case 9:if(kg(c))return c.parent;case 80:if(xC(c))return c.name===n?c:void 0;if(c0(c)){let u=c.parent;return LB(u)&&u.name===c?u:void 0}else{let u=c.parent;return ro(u)&&mI(u)!==0&&(u.left.symbol||u.symbol)&&Sl(u)===n?u:void 0}case 81:return xC(c)&&c.name===n?c:void 0;default:return}}function Cee(n){return ZE(n)&&n.parent.kind===167&&xC(n.parent.parent)}function $Re(n){let c=n.parent;switch(c.kind){case 172:case 171:case 174:case 173:case 177:case 178:case 306:case 303:case 211:return c.name===n;case 166:return c.right===n;case 208:case 276:return c.propertyName===n;case 281:case 291:case 285:case 286:case 287:return!0}return!1}function zUe(n){return n.kind===271||n.kind===270||n.kind===273&&n.name||n.kind===274||n.kind===280||n.kind===276||n.kind===281||n.kind===277&&U3(n)?!0:io(n)&&(ro(n)&&mI(n)===2&&U3(n)||fo(n)&&ro(n.parent)&&n.parent.left===n&&n.parent.operatorToken.kind===64&&mee(n.parent.right))}function hme(n){switch(n.parent.kind){case 273:case 276:case 274:case 281:case 277:case 271:case 280:return n.parent;case 166:do n=n.parent;while(n.parent.kind===166);return hme(n)}}function mee(n){return lp(n)||rp(n)}function U3(n){let c=_me(n);return mee(c)}function _me(n){return rf(n)?n.expression:n.right}function eDe(n){return n.kind===304?n.name:n.kind===303?n.initializer:n.parent.right}function xv(n){let c=nV(n);if(c&&io(n)){let u=g8(n);if(u)return u.class}return c}function nV(n){let c=hee(n.heritageClauses,96);return c&&c.types.length>0?c.types[0]:void 0}function YX(n){if(io(n))return Bx(n).map(c=>c.class);{let c=hee(n.heritageClauses,119);return c?.types}}function $8(n){return XI(n)?e6(n)||v:va(n)&&vi(Dm(xv(n)),YX(n))||v}function e6(n){let c=hee(n.heritageClauses,96);return c?c.types:void 0}function hee(n,c){if(n){for(let u of n)if(u.token===c)return u}}function bG(n,c){for(;n;){if(n.kind===c)return n;n=n.parent}}function s0(n){return 83<=n&&n<=165}function yme(n){return 19<=n&&n<=79}function wce(n){return s0(n)||yme(n)}function Tce(n){return 128<=n&&n<=165}function bme(n){return s0(n)&&!Tce(n)}function qUe(n){return 119<=n&&n<=127}function L5(n){let c=Yn(n);return c!==void 0&&bme(c)}function $Ue(n){let c=Yn(n);return c!==void 0&&s0(c)}function _ee(n){let c=QR(n);return!!c&&!Tce(c)}function XX(n){return 2<=n&&n<=7}var tDe=(n=>(n[n.Normal=0]="Normal",n[n.Generator=1]="Generator",n[n.Async=2]="Async",n[n.Invalid=4]="Invalid",n[n.AsyncGenerator=3]="AsyncGenerator",n))(tDe||{});function YI(n){if(!n)return 4;let c=0;switch(n.kind){case 262:case 218:case 174:n.asteriskToken&&(c|=1);case 219:ya(n,1024)&&(c|=2);break}return n.body||(c|=4),c}function t6(n){switch(n.kind){case 262:case 218:case 219:case 174:return n.body!==void 0&&n.asteriskToken===void 0&&ya(n,1024)}return!1}function ZE(n){return JA(n)||pu(n)}function Nce(n){return GB(n)&&(n.operator===40||n.operator===41)&&pu(n.operand)}function $R(n){let c=Sl(n);return!!c&&Rce(c)}function Rce(n){if(!(n.kind===167||n.kind===212))return!1;let c=_A(n)?zA(n.argumentExpression):n.expression;return!ZE(c)&&!Nce(c)}function iV(n){switch(n.kind){case 80:case 81:return n.escapedText;case 11:case 15:case 9:return Dd(n.text);case 167:let c=n.expression;return ZE(c)?Dd(c.text):Nce(c)?c.operator===41?vr(c.operator)+c.operand.text:c.operand.text:void 0;case 295:return x2(n);default:return w.assertNever(n)}}function WS(n){switch(n.kind){case 80:case 11:case 15:case 9:return!0;default:return!1}}function N2(n){return eb(n)?oo(n):aT(n)?D6(n):n.text}function r6(n){return eb(n)?n.escapedText:aT(n)?x2(n):Dd(n.text)}function eKe(n){return`__@${Gg(n)}@${n.escapedName}`}function yee(n,c){return`__#${Gg(n)}@${c}`}function bee(n){return uc(n.escapedName,"__@")}function rDe(n){return uc(n.escapedName,"__#")}function tKe(n){return n.kind===80&&n.escapedText==="Symbol"}function nDe(n){return sr(n)?oo(n)==="__proto__":Eu(n)&&n.text==="__proto__"}function n6(n,c){switch(n=LC(n),n.kind){case 231:if(l6e(n))return!1;break;case 218:if(n.name)return!1;break;case 219:break;default:return!1}return typeof c=="function"?c(n):!0}function Eme(n){switch(n.kind){case 303:return!nDe(n.name);case 304:return!!n.objectAssignmentInitializer;case 260:return sr(n.name)&&!!n.initializer;case 169:return sr(n.name)&&!!n.initializer&&!n.dotDotDotToken;case 208:return sr(n.name)&&!!n.initializer&&!n.dotDotDotToken;case 172:return!!n.initializer;case 226:switch(n.operatorToken.kind){case 64:case 77:case 76:case 78:return sr(n.left)}break;case 277:return!0}return!1}function rb(n,c){if(!Eme(n))return!1;switch(n.kind){case 303:return n6(n.initializer,c);case 304:return n6(n.objectAssignmentInitializer,c);case 260:case 169:case 208:case 172:return n6(n.initializer,c);case 226:return n6(n.right,c);case 277:return n6(n.expression,c)}}function Bme(n){return n.escapedText==="push"||n.escapedText==="unshift"}function TZ(n){return PS(n).kind===169}function PS(n){for(;n.kind===208;)n=n.parent.parent;return n}function vme(n){let c=n.kind;return c===176||c===218||c===262||c===219||c===174||c===177||c===178||c===267||c===307}function $d(n){return Fv(n.pos)||Fv(n.end)}function rKe(n){return zc(n,Fc)||n}var iDe=(n=>(n[n.Left=0]="Left",n[n.Right=1]="Right",n))(iDe||{});function Sme(n){let c=Dce(n),u=n.kind===214&&n.arguments!==void 0;return wme(n.kind,c,u)}function wme(n,c,u){switch(n){case 214:return u?0:1;case 224:case 221:case 222:case 220:case 223:case 227:case 229:return 1;case 226:switch(c){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 EG(n){let c=Dce(n),u=n.kind===214&&n.arguments!==void 0;return Eee(n.kind,c,u)}function Dce(n){return n.kind===226?n.operatorToken.kind:n.kind===224||n.kind===225?n.operator:n.kind}var sDe=(n=>(n[n.Comma=0]="Comma",n[n.Spread=1]="Spread",n[n.Yield=2]="Yield",n[n.Assignment=3]="Assignment",n[n.Conditional=4]="Conditional",n[n.Coalesce=4]="Coalesce",n[n.LogicalOR=5]="LogicalOR",n[n.LogicalAND=6]="LogicalAND",n[n.BitwiseOR=7]="BitwiseOR",n[n.BitwiseXOR=8]="BitwiseXOR",n[n.BitwiseAND=9]="BitwiseAND",n[n.Equality=10]="Equality",n[n.Relational=11]="Relational",n[n.Shift=12]="Shift",n[n.Additive=13]="Additive",n[n.Multiplicative=14]="Multiplicative",n[n.Exponentiation=15]="Exponentiation",n[n.Unary=16]="Unary",n[n.Update=17]="Update",n[n.LeftHandSide=18]="LeftHandSide",n[n.Member=19]="Member",n[n.Primary=20]="Primary",n[n.Highest=20]="Highest",n[n.Lowest=0]="Lowest",n[n.Invalid=-1]="Invalid",n))(sDe||{});function Eee(n,c,u){switch(n){case 355:return 0;case 230:return 1;case 229:return 2;case 227:return 4;case 226:switch(c){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 Bee(c)}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 u?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 Bee(n){switch(n){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 JX(n){return Gt(n,c=>{switch(c.kind){case 294:return!!c.expression;case 12:return!c.containsOnlyTriviaWhiteSpaces;default:return!0}})}function BG(){let n=[],c=[],u=new Map,d=!1;return{add:h,lookup:I,getGlobalDiagnostics:b,getDiagnostics:R};function I(N){let V;if(N.file?V=u.get(N.file.fileName):V=n,!V)return;let P=Vg(V,N,vl,tle);if(P>=0)return V[P];if(~P>0&&rle(N,V[~P-1]))return V[~P-1]}function h(N){let V;N.file?(V=u.get(N.file.fileName),V||(V=[],u.set(N.file.fileName,V),Gr(c,N.file.fileName,Ro))):(d&&(d=!1,n=n.slice()),V=n),Gr(V,N,tle,rle)}function b(){return d=!0,n}function R(N){if(N)return u.get(N)||[];let V=$r(c,P=>u.get(P));return n.length&&V.unshift(...n),V}}var tNt=/\$\{/g;function Tme(n){return n.replace(tNt,"\\${")}function oDe(n){return!!((n.templateFlags||0)&2048)}function Nme(n){return n&&!!(cM(n)?oDe(n):oDe(n.head)||lr(n.templateSpans,c=>oDe(c.literal)))}var rNt=/[\\"\u0000-\u001f\t\v\f\b\r\n\u2028\u2029\u0085]/g,nNt=/[\\'\u0000-\u001f\t\v\f\b\r\n\u2028\u2029\u0085]/g,nKe=/\r\n|[\\`\u0000-\u001f\t\v\f\b\r\u2028\u2029\u0085]/g,iNt=new Map(Object.entries({" ":"\\t","\v":"\\v","\f":"\\f","\b":"\\b","\r":"\\r","\n":"\\n","\\":"\\\\",'"':'\\"',"'":"\\'","`":"\\`","\u2028":"\\u2028","\u2029":"\\u2029","\x85":"\\u0085","\r\n":"\\r\\n"}));function iKe(n){return"\\u"+("0000"+n.toString(16).toUpperCase()).slice(-4)}function sNt(n,c,u){if(n.charCodeAt(0)===0){let d=u.charCodeAt(c+n.length);return d>=48&&d<=57?"\\x00":"\\0"}return iNt.get(n)||iKe(n.charCodeAt(0))}function rT(n,c){let u=c===96?nKe:c===39?nNt:rNt;return n.replace(u,sNt)}var sKe=/[^\u0000-\u007F]/g;function xce(n,c){return n=rT(n,c),sKe.test(n)?n.replace(sKe,u=>iKe(u.charCodeAt(0))):n}var oKe=/["\u0000-\u001f\u2028\u2029\u0085]/g,oNt=/['\u0000-\u001f\u2028\u2029\u0085]/g,aNt=new Map(Object.entries({'"':""","'":"'"}));function cNt(n){return"&#x"+n.toString(16).toUpperCase()+";"}function lNt(n){return n.charCodeAt(0)===0?"�":aNt.get(n)||cNt(n.charCodeAt(0))}function Rme(n,c){let u=c===39?oNt:oKe;return n.replace(u,lNt)}function R2(n){let c=n.length;return c>=2&&n.charCodeAt(0)===n.charCodeAt(c-1)&&uNt(n.charCodeAt(0))?n.substring(1,c-1):n}function uNt(n){return n===39||n===34||n===96}function UX(n){let c=n.charCodeAt(0);return c>=97&&c<=122||n.includes("-")}var vee=[""," "];function KX(n){let c=vee[1];for(let u=vee.length;u<=n;u++)vee.push(vee[u-1]+c);return vee[n]}function jX(){return vee[1].length}function See(n){var c,u,d,I,h,b=!1;function R(Ae){let de=fc(Ae);de.length>1?(I=I+de.length-1,h=c.length-Ae.length+Ta(de),d=h-c.length===0):d=!1}function N(Ae){Ae&&Ae.length&&(d&&(Ae=KX(u)+Ae,d=!1),c+=Ae,R(Ae))}function V(Ae){Ae&&(b=!1),N(Ae)}function P(Ae){Ae&&(b=!0),N(Ae)}function Q(){c="",u=0,d=!0,I=0,h=0,b=!1}function te(Ae){Ae!==void 0&&(c+=Ae,R(Ae),b=!1)}function re(Ae){Ae&&Ae.length&&V(Ae)}function ue(Ae){(!d||Ae)&&(c+=n,I++,h=c.length,d=!0,b=!1)}return Q(),{write:V,rawWrite:te,writeLiteral:re,writeLine:ue,increaseIndent:()=>{u++},decreaseIndent:()=>{u--},getIndent:()=>u,getTextPos:()=>c.length,getLine:()=>I,getColumn:()=>d?u*jX():c.length-h,getText:()=>c,isAtStartOfLine:()=>d,hasTrailingComment:()=>b,hasTrailingWhitespace:()=>!!c.length&&Jm(c.charCodeAt(c.length-1)),clear:Q,writeKeyword:V,writeOperator:V,writeParameter:V,writeProperty:V,writePunctuation:V,writeSpace:V,writeStringLiteral:V,writeSymbol:(Ae,de)=>V(Ae),writeTrailingSemicolon:V,writeComment:P}}function Dme(n){let c=!1;function u(){c&&(n.writeTrailingSemicolon(";"),c=!1)}return{...n,writeTrailingSemicolon(){c=!0},writeLiteral(d){u(),n.writeLiteral(d)},writeStringLiteral(d){u(),n.writeStringLiteral(d)},writeSymbol(d,I){u(),n.writeSymbol(d,I)},writePunctuation(d){u(),n.writePunctuation(d)},writeKeyword(d){u(),n.writeKeyword(d)},writeOperator(d){u(),n.writeOperator(d)},writeParameter(d){u(),n.writeParameter(d)},writeSpace(d){u(),n.writeSpace(d)},writeProperty(d){u(),n.writeProperty(d)},writeComment(d){u(),n.writeComment(d)},writeLine(){u(),n.writeLine()},increaseIndent(){u(),n.increaseIndent()},decreaseIndent(){u(),n.decreaseIndent()}}}function zX(n){return n.useCaseSensitiveFileNames?n.useCaseSensitiveFileNames():!1}function Lx(n){return rA(zX(n))}function kce(n,c,u){return c.moduleName||xme(n,c.fileName,u&&u.fileName)}function aKe(n,c){return n.getCanonicalFileName(Qc(c,n.getCurrentDirectory()))}function aDe(n,c,u){let d=c.getExternalModuleFileFromDeclaration(u);if(!d||d.isDeclarationFile)return;let I=k5(u);if(!(I&&JA(I)&&!Qp(I.text)&&!aKe(n,d.path).includes(aKe(n,dA(n.getCommonSourceDirectory())))))return kce(n,d)}function xme(n,c,u){let d=N=>n.getCanonicalFileName(N),I=AA(u?oa(u):n.getCommonSourceDirectory(),n.getCurrentDirectory(),d),h=Qc(c,n.getCurrentDirectory()),b=km(I,h,I,d,!1),R=a0(b);return u?jy(R):R}function cDe(n,c,u){let d=c.getCompilerOptions(),I;return d.outDir?I=a0(Vce(n,c,d.outDir)):I=a0(n),I+u}function lDe(n,c){return Gce(n,c.getCompilerOptions(),c)}function Gce(n,c,u){let d=c.declarationDir||c.outDir,I=d?Wce(n,d,u.getCurrentDirectory(),u.getCommonSourceDirectory(),b=>u.getCanonicalFileName(b)):n,h=Fce(I);return a0(I)+h}function Fce(n){return fp(n,[".mjs",".mts"])?".d.mts":fp(n,[".cjs",".cts"])?".d.cts":fp(n,[".json"])?".d.json.ts":".d.ts"}function uDe(n){return fp(n,[".d.mts",".mjs",".mts"])?[".mts",".mjs"]:fp(n,[".d.cts",".cjs",".cts"])?[".cts",".cjs"]:fp(n,[".d.json.ts"])?[".json"]:[".tsx",".ts",".jsx",".js"]}function Zce(n,c){var u;if(n.paths)return n.baseUrl??w.checkDefined(n.pathsBasePath||((u=c.getCurrentDirectory)==null?void 0:u.call(c)),"Encountered 'paths' without a 'baseUrl', config file, or host 'getCurrentDirectory'.")}function Lce(n,c,u){let d=n.getCompilerOptions();if(d.outFile){let I=D_(d),h=d.emitDeclarationOnly||I===2||I===4;return Gt(n.getSourceFiles(),b=>(h||!hm(b))&&K3(b,n,u))}else{let I=c===void 0?n.getSourceFiles():[c];return Gt(I,h=>K3(h,n,u))}}function K3(n,c,u){let d=c.getCompilerOptions();if(d.noEmitForJsFiles&&i0(n)||n.isDeclarationFile||c.isSourceFileFromExternalLibrary(n))return!1;if(u)return!0;if(c.isSourceOfProjectReferenceRedirect(n.fileName))return!1;if(!fa(n))return!0;if(c.getResolvedProjectReferenceToRedirect(n.fileName))return!1;if(d.outFile)return!0;if(!d.outDir)return!1;if(d.rootDir||d.composite&&d.configFilePath){let I=Qc(Iue(d,()=>[],c.getCurrentDirectory(),c.getCanonicalFileName),c.getCurrentDirectory()),h=Wce(n.fileName,d.outDir,c.getCurrentDirectory(),I,c.getCanonicalFileName);if(dh(n.fileName,h,c.getCurrentDirectory(),!c.useCaseSensitiveFileNames())===0)return!1}return!0}function Vce(n,c,u){return Wce(n,u,c.getCurrentDirectory(),c.getCommonSourceDirectory(),d=>c.getCanonicalFileName(d))}function Wce(n,c,u,d,I){let h=Qc(n,u);return h=I(h).indexOf(I(d))===0?h.substring(d.length):h,Do(c,h)}function wee(n,c,u,d,I,h,b){n.writeFile(u,d,I,R=>{c.add(If(Z.Could_not_write_file_0_Colon_1,u,R))},h,b)}function cKe(n,c,u){if(n.length>t_(n)&&!u(n)){let d=oa(n);cKe(d,c,u),c(n)}}function kme(n,c,u,d,I,h){try{d(n,c,u)}catch{cKe(oa(Mc(n)),I,h),d(n,c,u)}}function i6(n,c){let u=Dc(n);return zy(u,c)}function j3(n,c){return zy(n,c)}function pN(n){return be(n.members,c=>Df(c)&&GE(c.body))}function qX(n){if(n&&n.parameters.length>0){let c=n.parameters.length===2&&oV(n.parameters[0]);return n.parameters[c?1:0]}}function Gme(n){let c=qX(n);return c&&c.type}function sV(n){if(n.parameters.length&&!LG(n)){let c=n.parameters[0];if(oV(c))return c}}function oV(n){return vG(n.name)}function vG(n){return!!n&&n.kind===80&&Fme(n)}function V5(n){return!!Si(n,c=>c.kind===186?!0:c.kind===80||c.kind===166?!1:"quit")}function aV(n){if(!vG(n))return!1;for(;c0(n.parent)&&n.parent.left===n;)n=n.parent;return n.parent.kind===186}function Fme(n){return n.escapedText==="this"}function Vx(n,c){let u,d,I,h;return $R(c)?(u=c,c.kind===177?I=c:c.kind===178?h=c:w.fail("Accessor has wrong kind")):X(n,b=>{if(zw(b)&&eg(b)===eg(c)){let R=iV(b.name),N=iV(c.name);R===N&&(u?d||(d=b):u=b,b.kind===177&&!I&&(I=b),b.kind===178&&!h&&(h=b))}}),{firstAccessor:u,secondAccessor:d,getAccessor:I,setAccessor:h}}function IC(n){if(!io(n)&&hp(n)||Pf(n))return;let c=n.type;return c||!io(n)?c:IZ(n)?n.typeExpression&&n.typeExpression.type:wx(n)}function gDe(n){return n.type}function nb(n){return LG(n)?n.type&&n.type.typeExpression&&n.type.typeExpression.type:n.type||(io(n)?dX(n):void 0)}function Tee(n){return Fr(Tx(n),c=>gNt(c)?c.typeParameters:void 0)}function gNt(n){return Lv(n)&&!(n.parent.kind===320&&(n.parent.tags.some(T2)||n.parent.tags.some(dte)))}function ADe(n){let c=qX(n);return c&&IC(c)}function dDe(n,c,u,d){pDe(n,c,u.pos,d)}function pDe(n,c,u,d){d&&d.length&&u!==d[0].pos&&j3(n,u)!==j3(n,d[0].pos)&&c.writeLine()}function Zme(n,c,u,d){u!==d&&j3(n,u)!==j3(n,d)&&c.writeLine()}function fDe(n,c,u,d,I,h,b,R){if(d&&d.length>0){I&&u.writeSpace(" ");let N=!1;for(let V of d)N&&(u.writeSpace(" "),N=!1),R(n,c,u,V.pos,V.end,b),V.hasTrailingNewLine?u.writeLine():N=!0;N&&h&&u.writeSpace(" ")}}function IDe(n,c,u,d,I,h,b){let R,N;if(b?I.pos===0&&(R=Gt(Zb(n,I.pos),V)):R=Zb(n,I.pos),R){let P=[],Q;for(let te of R){if(Q){let re=j3(c,Q.end);if(j3(c,te.pos)>=re+2)break}P.push(te),Q=te}if(P.length){let te=j3(c,Ta(P).end);j3(c,Uu(n,I.pos))>=te+2&&(dDe(c,u,I,R),fDe(n,c,u,P,!1,!0,h,d),N={nodePos:I.pos,detachedCommentEndPos:Ta(P).end})}}return N;function V(P){return R8(n,P.pos)}}function $X(n,c,u,d,I,h){if(n.charCodeAt(d+1)===42){let b=Mp(c,d),R=c.length,N;for(let V=d,P=b.line;V0){let ue=re%jX(),Ae=KX((re-ue)/jX());for(u.rawWrite(Ae);ue;)u.rawWrite(" "),ue--}else u.rawWrite("")}ANt(n,I,u,h,V,Q),V=Q}}else u.writeComment(n.substring(d,I))}function ANt(n,c,u,d,I,h){let b=Math.min(c,h-1),R=n.substring(I,b).trim();R?(u.writeComment(R),b!==c&&u.writeLine()):u.rawWrite(d)}function lKe(n,c,u){let d=0;for(;c=0&&n.kind<=165?0:(n.modifierFlagsCache&536870912||(n.modifierFlagsCache=Pme(n)|536870912),u||c&&io(n)?(!(n.modifierFlagsCache&268435456)&&n.parent&&(n.modifierFlagsCache|=uKe(n)|268435456),gKe(n.modifierFlagsCache)):dNt(n.modifierFlagsCache))}function R_(n){return mDe(n,!0)}function Oce(n){return mDe(n,!0,!0)}function eD(n){return mDe(n,!1)}function uKe(n){let c=0;return n.parent&&!Uc(n)&&(io(n)&&($o(n)&&(c|=8388608),gc(n)&&(c|=16777216),xd(n)&&(c|=33554432),N1(n)&&(c|=67108864),R1(n)&&(c|=134217728)),BB(n)&&(c|=65536)),c}function dNt(n){return n&65535}function gKe(n){return n&131071|(n&260046848)>>>23}function pNt(n){return gKe(uKe(n))}function hDe(n){return Pme(n)|pNt(n)}function Pme(n){let c=tw(n)?kv(n.modifiers):0;return(n.flags&8||n.kind===80&&n.flags&4096)&&(c|=32),c}function kv(n){let c=0;if(n)for(let u of n)c|=P5(u.kind);return c}function P5(n){switch(n){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 AKe(n){return n===57||n===56}function _De(n){return AKe(n)||n===54}function o6(n){return n===76||n===77||n===78}function Ome(n){return ro(n)&&o6(n.operatorToken.kind)}function Nee(n){return AKe(n)||n===61}function Ree(n){return ro(n)&&Nee(n.operatorToken.kind)}function tD(n){return n>=64&&n<=79}function Qme(n){let c=Mme(n);return c&&!c.isImplements?c.class:void 0}function Mme(n){if(k_(n)){if(OE(n.parent)&&va(n.parent.parent))return{class:n.parent.parent,isImplements:n.parent.token===119};if(P6(n.parent)){let c=wZ(n.parent);if(c&&va(c))return{class:c,isImplements:!1}}}}function Im(n,c){return ro(n)&&(c?n.operatorToken.kind===64:tD(n.operatorToken.kind))&&N_(n.left)}function O5(n){return Im(n.parent)&&n.parent.left===n}function Gv(n){if(Im(n,!0)){let c=n.left.kind;return c===210||c===209}return!1}function Qce(n){return Qme(n)!==void 0}function lp(n){return n.kind===80||xee(n)}function sb(n){switch(n.kind){case 80:return n;case 166:do n=n.left;while(n.kind!==80);return n;case 211:do n=n.expression;while(n.kind!==80);return n}}function Dee(n){return n.kind===80||n.kind===110||n.kind===108||n.kind===236||n.kind===211&&Dee(n.expression)||n.kind===217&&Dee(n.expression)}function xee(n){return fo(n)&&sr(n.name)&&lp(n.expression)}function kee(n){if(fo(n)){let c=kee(n.expression);if(c!==void 0)return c+"."+r0(n.name)}else if(_A(n)){let c=kee(n.expression);if(c!==void 0&&RI(n.argumentExpression))return c+"."+iV(n.argumentExpression)}else{if(sr(n))return wc(n.escapedText);if(aT(n))return D6(n)}}function SG(n){return eV(n)&&zR(n)==="prototype"}function a6(n){return n.parent.kind===166&&n.parent.right===n||n.parent.kind===211&&n.parent.name===n||n.parent.kind===236&&n.parent.name===n}function Hme(n){return!!n.parent&&(fo(n.parent)&&n.parent.name===n||_A(n.parent)&&n.parent.argumentExpression===n)}function yDe(n){return c0(n.parent)&&n.parent.right===n||fo(n.parent)&&n.parent.name===n||oP(n.parent)&&n.parent.right===n}function c6(n){return ro(n)&&n.operatorToken.kind===104}function bDe(n){return c6(n.parent)&&n===n.parent.right}function Gee(n){return n.kind===210&&n.properties.length===0}function Yme(n){return n.kind===209&&n.elements.length===0}function l6(n){if(!(!dKe(n)||!n.declarations)){for(let c of n.declarations)if(c.localSymbol)return c.localSymbol}}function dKe(n){return n&&O(n.declarations)>0&&ya(n.declarations[0],2048)}function Mce(n){return be(VNt,c=>Ad(n,c))}function fNt(n){let c=[],u=n.length;for(let d=0;d>6|192),c.push(I&63|128)):I<65536?(c.push(I>>12|224),c.push(I>>6&63|128),c.push(I&63|128)):I<131072?(c.push(I>>18|240),c.push(I>>12&63|128),c.push(I>>6&63|128),c.push(I&63|128)):w.assert(!1,"Unexpected code point")}return c}var z3="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function Hce(n){let c="",u=fNt(n),d=0,I=u.length,h,b,R,N;for(;d>2,b=(u[d]&3)<<4|u[d+1]>>4,R=(u[d+1]&15)<<2|u[d+2]>>6,N=u[d+2]&63,d+1>=I?R=N=64:d+2>=I&&(N=64),c+=z3.charAt(h)+z3.charAt(b)+z3.charAt(R)+z3.charAt(N),d+=3;return c}function Yce(n){let c="",u=0,d=n.length;for(;u>4&3,P=(b&15)<<4|R>>2&15,Q=(R&3)<<6|N&63;P===0&&R!==0?d.push(V):Q===0&&N!==0?d.push(V,P):d.push(V,P,Q),I+=4}return Yce(d)}function Fee(n,c){let u=Ya(c)?c:c.readFile(n);if(!u)return;let d=h8e(n,u);return d.error?void 0:d.config}function lV(n,c){return Fee(n,c)||{}}function Xce(n){try{return JSON.parse(n)}catch{return}}function G1(n,c){return!c.directoryExists||c.directoryExists(n)}var INt=`\r +`,BDe=` +`;function F1(n){switch(n.newLine){case 0:return INt;case 1:case void 0:return BDe}}function Z1(n,c=n){return w.assert(c>=n||c===-1),{pos:n,end:c}}function g6(n,c){return Z1(n.pos,c)}function NZ(n,c){return Z1(c,n.end)}function rD(n){let c=tw(n)?Te(n.modifiers,FC):void 0;return c&&!Fv(c.end)?NZ(n,c.end):n}function QS(n){if(Hl(n)||lI(n))return NZ(n,n.name.pos);let c=tw(n)?zo(n.modifiers):void 0;return c&&!Fv(c.end)?NZ(n,c.end):rD(n)}function e4(n){return n.pos===n.end}function Jce(n,c){return Z1(n,n+vr(c).length)}function RZ(n,c){return SDe(n,n,c)}function A6(n,c,u){return L1(t4(n,u,!1),t4(c,u,!1),u)}function vDe(n,c,u){return L1(n.end,c.end,u)}function SDe(n,c,u){return L1(t4(n,u,!1),c.end,u)}function d6(n,c,u){return L1(n.end,t4(c,u,!1),u)}function Xme(n,c,u,d){let I=t4(c,u,d);return vv(u,n.end,I)}function wDe(n,c,u){return vv(u,n.end,c.end)}function Jme(n,c){return!L1(n.pos,n.end,c)}function L1(n,c,u){return vv(u,n,c)===0}function t4(n,c,u){return Fv(n.pos)?-1:Uu(c.text,n.pos,!1,u)}function TDe(n,c,u,d){let I=Uu(u.text,n,!1,d),h=CNt(I,c,u);return vv(u,h??c,I)}function NDe(n,c,u,d){let I=Uu(u.text,n,!1,d);return vv(u,n,Math.min(c,I))}function CNt(n,c=0,u){for(;n-- >c;)if(!Jm(u.text.charCodeAt(n)))return n}function Ume(n){let c=zc(n);if(c)switch(c.parent.kind){case 266:case 267:return c===c.parent.name}return!1}function p6(n){return Gt(n.declarations,Zee)}function Zee(n){return js(n)&&n.initializer!==void 0}function Kme(n){return n.watch&&Qa(n,"watch")}function xB(n){n.close()}function cI(n){return n.flags&33554432?n.links.checkFlags:0}function V1(n,c=!1){if(n.valueDeclaration){let u=c&&n.declarations&&be(n.declarations,ob)||n.flags&32768&&be(n.declarations,Qb)||n.valueDeclaration,d=Rh(u);return n.parent&&n.parent.flags&32?d:d&-8}if(cI(n)&6){let u=n.links.checkFlags,d=u&1024?2:u&256?1:4,I=u&2048?256:0;return d|I}return n.flags&4194304?257:0}function ph(n,c){return n.flags&2097152?c.getAliasedSymbol(n):n}function Q5(n){return n.exportSymbol?n.exportSymbol.flags|n.flags:n.flags}function Uce(n){return f6(n)===1}function M5(n){return f6(n)!==0}function f6(n){let{parent:c}=n;switch(c?.kind){case 217:return f6(c);case 225:case 224:let{operator:u}=c;return u===46||u===47?2:0;case 226:let{left:d,operatorToken:I}=c;return d===n&&tD(I.kind)?I.kind===64?1:2:0;case 211:return c.name!==n?0:f6(c);case 303:{let h=f6(c.parent);return n===c.name?pKe(h):h}case 304:return n===c.objectAssignmentInitializer?0:f6(c.parent);case 209:return f6(c);default:return 0}}function pKe(n){switch(n){case 0:return 1;case 1:return 0;case 2:return 2;default:return w.assertNever(n)}}function Kce(n,c){if(!n||!c||Object.keys(n).length!==Object.keys(c).length)return!1;for(let u in n)if(typeof n[u]=="object"){if(!Kce(n[u],c[u]))return!1}else if(typeof n[u]!="function"&&n[u]!==c[u])return!1;return!0}function Y0(n,c){n.forEach(c),n.clear()}function fN(n,c,u){let{onDeleteValue:d,onExistingValue:I}=u;n.forEach((h,b)=>{var R;c?.has(b)?I&&I(h,(R=c.get)==null?void 0:R.call(c,b),b):(n.delete(b),d(h,b))})}function I6(n,c,u){fN(n,c,u);let{createNewValue:d}=u;c?.forEach((I,h)=>{n.has(h)||n.set(h,d(h,I))})}function RDe(n){if(n.flags&32){let c=kB(n);return!!c&&ya(c,64)}return!1}function kB(n){var c;return(c=n.declarations)==null?void 0:c.find(va)}function ia(n){return n.flags&3899393?n.objectFlags:0}function DDe(n,c){return!!sI(n,u=>c(u)?!0:void 0)}function jce(n){return!!n&&!!n.declarations&&!!n.declarations[0]&&Phe(n.declarations[0])}function xDe({moduleSpecifier:n}){return Eu(n)?n.text:Nf(n)}function zce(n){let c;return hu(n,u=>{GE(u)&&(c=u)},u=>{for(let d=u.length-1;d>=0;d--)if(GE(u[d])){c=u[d];break}}),c}function D2(n,c,u=!0){return n.has(c)?!1:(n.set(c,u),!0)}function H5(n){return va(n)||XI(n)||Se(n)}function jme(n){return n>=182&&n<=205||n===133||n===159||n===150||n===163||n===151||n===136||n===154||n===155||n===116||n===157||n===146||n===141||n===233||n===312||n===313||n===314||n===315||n===316||n===317||n===318}function mp(n){return n.kind===211||n.kind===212}function zme(n){return n.kind===211?n.name:(w.assert(n.kind===212),n.argumentExpression)}function qce(n){return n.kind===275||n.kind===279}function Y5(n){for(;mp(n);)n=n.expression;return n}function kDe(n,c){if(mp(n.parent)&&Hme(n))return u(n.parent);function u(d){if(d.kind===211){let I=c(d.name);if(I!==void 0)return I}else if(d.kind===212)if(sr(d.argumentExpression)||JA(d.argumentExpression)){let I=c(d.argumentExpression);if(I!==void 0)return I}else return;if(mp(d.expression))return u(d.expression);if(sr(d.expression))return c(d.expression)}}function X5(n,c){for(;;){switch(n.kind){case 225:n=n.operand;continue;case 226:n=n.left;continue;case 227:n=n.condition;continue;case 215:n=n.tag;continue;case 213:if(c)return n;case 234:case 212:case 211:case 235:case 354:case 238:n=n.expression;continue}return n}}function mNt(n,c){this.flags=n,this.escapedName=c,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 hNt(n,c){this.flags=c,(w.isDebugging||Qi)&&(this.checker=n)}function _Nt(n,c){this.flags=c,w.isDebugging&&(this.checker=n)}function GDe(n,c,u){this.pos=c,this.end=u,this.kind=n,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 yNt(n,c,u){this.pos=c,this.end=u,this.kind=n,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.emitNode=void 0}function bNt(n,c,u){this.pos=c,this.end=u,this.kind=n,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}function ENt(n,c,u){this.fileName=n,this.text=c,this.skipTrivia=u||(d=>d)}var kC={getNodeConstructor:()=>GDe,getTokenConstructor:()=>yNt,getIdentifierConstructor:()=>bNt,getPrivateIdentifierConstructor:()=>GDe,getSourceFileConstructor:()=>GDe,getSymbolConstructor:()=>mNt,getTypeConstructor:()=>hNt,getSignatureConstructor:()=>_Nt,getSourceMapSourceConstructor:()=>ENt},fKe=[];function IKe(n){fKe.push(n),n(kC)}function FDe(n){Object.assign(kC,n),X(fKe,c=>c(kC))}function IN(n,c){return n.replace(/{(\d+)}/g,(u,d)=>""+w.checkDefined(c[+d]))}var $ce;function Lee(n){$ce=n}function ZDe(n){!$ce&&n&&($ce=n())}function tu(n){return $ce&&$ce[n.key]||n.message}function J5(n,c,u,d,I,...h){u+d>c.length&&(d=c.length-u),uce(c,u,d);let b=tu(I);return lr(h)&&(b=IN(b,h)),{file:void 0,start:u,length:d,messageText:b,category:I.category,code:I.code,reportsUnnecessary:I.reportsUnnecessary,fileName:n}}function BNt(n){return n.file===void 0&&n.start!==void 0&&n.length!==void 0&&typeof n.fileName=="string"}function CKe(n,c){let u=c.fileName||"",d=c.text.length;w.assertEqual(n.fileName,u),w.assertLessThanOrEqual(n.start,d),w.assertLessThanOrEqual(n.start+n.length,d);let I={file:c,start:n.start,length:n.length,messageText:n.messageText,category:n.category,code:n.code,reportsUnnecessary:n.reportsUnnecessary};if(n.relatedInformation){I.relatedInformation=[];for(let h of n.relatedInformation)BNt(h)&&h.fileName===u?(w.assertLessThanOrEqual(h.start,d),w.assertLessThanOrEqual(h.start+h.length,d),I.relatedInformation.push(CKe(h,c))):I.relatedInformation.push(h)}return I}function DZ(n,c){let u=[];for(let d of n)u.push(CKe(d,c));return u}function Cm(n,c,u,d,...I){uce(n.text,c,u);let h=tu(d);return lr(I)&&(h=IN(h,I)),{file:n,start:c,length:u,messageText:h,category:d.category,code:d.code,reportsUnnecessary:d.reportsUnnecessary,reportsDeprecated:d.reportsDeprecated}}function U5(n,...c){let u=tu(n);return lr(c)&&(u=IN(u,c)),u}function If(n,...c){let u=tu(n);return lr(c)&&(u=IN(u,c)),{file:void 0,start:void 0,length:void 0,messageText:u,category:n.category,code:n.code,reportsUnnecessary:n.reportsUnnecessary,reportsDeprecated:n.reportsDeprecated}}function ele(n,c){return{file:void 0,start:void 0,length:void 0,code:n.code,category:n.category,messageText:n.next?n:n.messageText,relatedInformation:c}}function ou(n,c,...u){let d=tu(c);return lr(u)&&(d=IN(d,u)),{messageText:d,category:c.category,code:c.code,next:n===void 0||Array.isArray(n)?n:[n]}}function LDe(n,c){let u=n;for(;u.next;)u=u.next[0];u.next=[c]}function qme(n){return n.file?n.file.path:void 0}function C6(n,c){return tle(n,c)||vNt(n,c)||0}function tle(n,c){let u=$me(n),d=$me(c);return Ro(qme(n),qme(c))||Jl(n.start,c.start)||Jl(n.length,c.length)||Jl(u,d)||SNt(n,c)||0}function vNt(n,c){return!n.relatedInformation&&!c.relatedInformation?0:n.relatedInformation&&c.relatedInformation?Jl(c.relatedInformation.length,n.relatedInformation.length)||X(n.relatedInformation,(u,d)=>{let I=c.relatedInformation[d];return C6(u,I)})||0:n.relatedInformation?-1:1}function SNt(n,c){let u=ehe(n),d=ehe(c);typeof u!="string"&&(u=u.messageText),typeof d!="string"&&(d=d.messageText);let I=typeof n.messageText!="string"?n.messageText.next:void 0,h=typeof c.messageText!="string"?c.messageText.next:void 0,b=Ro(u,d);return b||(b=wNt(I,h),b)?b:n.canonicalHead&&!c.canonicalHead?-1:c.canonicalHead&&!n.canonicalHead?1:0}function wNt(n,c){return n===void 0&&c===void 0?0:n===void 0?1:c===void 0?-1:mKe(n,c)||hKe(n,c)}function mKe(n,c){if(n===void 0&&c===void 0)return 0;if(n===void 0)return 1;if(c===void 0)return-1;let u=Jl(c.length,n.length);if(u)return u;for(let d=0;d{I.externalModuleIndicator=jhe(I)||!I.isDeclarationFile||void 0};case 1:return I=>{I.externalModuleIndicator=jhe(I)};case 2:let c=[jhe];(n.jsx===4||n.jsx===5)&&c.push(NNt),c.push(RNt);let u=fg(...c);return I=>void(I.externalModuleIndicator=u(I))}}function QDr(n){return n}var GC={target:{dependencies:["module"],computeValue:n=>(n.target===0?void 0:n.target)??(n.module===100&&9||n.module===199&&99||1)},module:{dependencies:["target"],computeValue:n=>typeof n.module=="number"?n.module:GC.target.computeValue(n)>=2?5:1},moduleResolution:{dependencies:["module","target"],computeValue:n=>{let c=n.moduleResolution;if(c===void 0)switch(GC.module.computeValue(n)){case 1:c=2;break;case 100:c=3;break;case 199:c=99;break;case 200:c=100;break;default:c=1;break}return c}},moduleDetection:{dependencies:["module","target"],computeValue:n=>n.moduleDetection||(GC.module.computeValue(n)===100||GC.module.computeValue(n)===199?3:2)},isolatedModules:{dependencies:["verbatimModuleSyntax"],computeValue:n=>!!(n.isolatedModules||n.verbatimModuleSyntax)},esModuleInterop:{dependencies:["module","target"],computeValue:n=>{if(n.esModuleInterop!==void 0)return n.esModuleInterop;switch(GC.module.computeValue(n)){case 100:case 199:case 200:return!0}return!1}},allowSyntheticDefaultImports:{dependencies:["module","target","moduleResolution"],computeValue:n=>n.allowSyntheticDefaultImports!==void 0?n.allowSyntheticDefaultImports:GC.esModuleInterop.computeValue(n)||GC.module.computeValue(n)===4||GC.moduleResolution.computeValue(n)===100},resolvePackageJsonExports:{dependencies:["moduleResolution"],computeValue:n=>{let c=GC.moduleResolution.computeValue(n);if(!j5(c))return!1;if(n.resolvePackageJsonExports!==void 0)return n.resolvePackageJsonExports;switch(c){case 3:case 99:case 100:return!0}return!1}},resolvePackageJsonImports:{dependencies:["moduleResolution","resolvePackageJsonExports"],computeValue:n=>{let c=GC.moduleResolution.computeValue(n);if(!j5(c))return!1;if(n.resolvePackageJsonExports!==void 0)return n.resolvePackageJsonExports;switch(c){case 3:case 99:case 100:return!0}return!1}},resolveJsonModule:{dependencies:["moduleResolution","module","target"],computeValue:n=>n.resolveJsonModule!==void 0?n.resolveJsonModule:GC.moduleResolution.computeValue(n)===100},declaration:{dependencies:["composite"],computeValue:n=>!!(n.declaration||n.composite)},preserveConstEnums:{dependencies:["isolatedModules","verbatimModuleSyntax"],computeValue:n=>!!(n.preserveConstEnums||GC.isolatedModules.computeValue(n))},incremental:{dependencies:["composite"],computeValue:n=>!!(n.incremental||n.composite)},declarationMap:{dependencies:["declaration","composite"],computeValue:n=>!!(n.declarationMap&&GC.declaration.computeValue(n))},allowJs:{dependencies:["checkJs"],computeValue:n=>n.allowJs===void 0?!!n.checkJs:n.allowJs},useDefineForClassFields:{dependencies:["target","module"],computeValue:n=>n.useDefineForClassFields===void 0?GC.target.computeValue(n)>=9:n.useDefineForClassFields},noImplicitAny:{dependencies:["strict"],computeValue:n=>x_(n,"noImplicitAny")},noImplicitThis:{dependencies:["strict"],computeValue:n=>x_(n,"noImplicitThis")},strictNullChecks:{dependencies:["strict"],computeValue:n=>x_(n,"strictNullChecks")},strictFunctionTypes:{dependencies:["strict"],computeValue:n=>x_(n,"strictFunctionTypes")},strictBindCallApply:{dependencies:["strict"],computeValue:n=>x_(n,"strictBindCallApply")},strictPropertyInitialization:{dependencies:["strict"],computeValue:n=>x_(n,"strictPropertyInitialization")},alwaysStrict:{dependencies:["strict"],computeValue:n=>x_(n,"alwaysStrict")},useUnknownInCatchVariables:{dependencies:["strict"],computeValue:n=>x_(n,"useUnknownInCatchVariables")}},sA=GC.target.computeValue,D_=GC.module.computeValue,o0=GC.moduleResolution.computeValue,VDe=GC.moduleDetection.computeValue,VE=GC.isolatedModules.computeValue,CN=GC.esModuleInterop.computeValue,K5=GC.allowSyntheticDefaultImports.computeValue,the=GC.resolvePackageJsonExports.computeValue,mN=GC.resolvePackageJsonImports.computeValue,uV=GC.resolveJsonModule.computeValue,WE=GC.declaration.computeValue,gV=GC.preserveConstEnums.computeValue,h6=GC.incremental.computeValue,nle=GC.declarationMap.computeValue,wG=GC.allowJs.computeValue,Wee=GC.useDefineForClassFields.computeValue;function ile(n){return n>=5&&n<=99}function sle(n){switch(D_(n)){case 0:case 4:case 3:return!1}return!0}function WDe(n){return n.allowUnreachableCode===!1}function PDe(n){return n.allowUnusedLabels===!1}function j5(n){return n>=3&&n<=99||n===100}function x_(n,c){return n[c]===void 0?!!n.strict:!!n[c]}function Pee(n){return UC(A8e.type,(c,u)=>c===n?u:void 0)}function rhe(n){return n.useDefineForClassFields!==!1&&sA(n)>=9}function ODe(n,c){return V3(c,n,GRt)}function ole(n,c){return V3(c,n,FRt)}function QDe(n,c){return V3(c,n,ZRt)}function ale(n,c){return c.strictFlag?x_(n,c.name):c.allowJsFlag?wG(n):n[c.name]}function Oee(n){let c=n.jsx;return c===2||c===4||c===5}function cle(n,c){let u=c?.pragmas.get("jsximportsource"),d=Na(u)?u[u.length-1]:u;return n.jsx===4||n.jsx===5||n.jsxImportSource||d?d?.arguments.factory||n.jsxImportSource||"react":void 0}function lle(n,c){return n?`${n}/${c.jsx===5?"jsx-dev-runtime":"jsx-runtime"}`:void 0}function nhe(n){let c=!1;for(let u=0;uI,getSymlinkedDirectories:()=>u,getSymlinkedDirectoriesByRealpath:()=>d,setSymlinkedFile:(N,V)=>(I||(I=new Map)).set(N,V),setSymlinkedDirectory:(N,V)=>{let P=AA(N,n,c);w6(P)||(P=dA(P),V!==!1&&!u?.has(P)&&(d||(d=ec())).add(V.realPath,N),(u||(u=new Map)).set(P,V))},setSymlinksFromResolutions(N,V,P){w.assert(!h),h=!0,N(Q=>R(this,Q.resolvedModule)),V(Q=>R(this,Q.resolvedTypeReferenceDirective)),P.forEach(Q=>R(this,Q.resolvedTypeReferenceDirective))},hasProcessedResolutions:()=>h,setSymlinksFromResolution(N){R(this,N)},hasAnySymlinks:b};function b(){return!!I?.size||!!u&&!!UC(u,N=>!!N)}function R(N,V){if(!V||!V.originalPath||!V.resolvedFileName)return;let{resolvedFileName:P,originalPath:Q}=V;N.setSymlinkedFile(AA(Q,n,c),P);let[te,re]=DNt(P,Q,n,c)||v;te&&re&&N.setSymlinkedDirectory(re,{real:dA(te),realPath:dA(AA(te,n,c))})}}function DNt(n,c,u,d){let I=dd(Qc(n,u)),h=dd(Qc(c,u)),b=!1;for(;I.length>=2&&h.length>=2&&!MDe(I[I.length-2],d)&&!MDe(h[h.length-2],d)&&d(I[I.length-1])===d(h[h.length-1]);)I.pop(),h.pop(),b=!0;return b?[Iy(I),Iy(h)]:void 0}function MDe(n,c){return n!==void 0&&(c(n)==="node_modules"||uc(n,"@"))}function xNt(n){return wp(n.charCodeAt(0))?n.slice(1):void 0}function she(n,c,u){let d=Tb(n,c,u);return d===void 0?void 0:xNt(d)}var HDe=/[^\w\s/]/g;function yKe(n){return n.replace(HDe,kNt)}function kNt(n){return"\\"+n}var GNt=[42,63],YDe=["node_modules","bower_components","jspm_packages"],XDe=`(?!(${YDe.join("|")})(/|$))`,ohe={singleAsteriskRegexFragment:"([^./]|(\\.(?!min\\.js$))?)*",doubleAsteriskRegexFragment:`(/${XDe}[^/.][^/]*)*?`,replaceWildcardCharacter:n=>lhe(n,ohe.singleAsteriskRegexFragment)},bKe={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:`(/${XDe}[^/.][^/]*)*?`,replaceWildcardCharacter:n=>lhe(n,bKe.singleAsteriskRegexFragment)},EKe={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:"(/.+?)?",replaceWildcardCharacter:n=>lhe(n,EKe.singleAsteriskRegexFragment)},ahe={files:ohe,directories:bKe,exclude:EKe};function _6(n,c,u){let d=ule(n,c,u);return!d||!d.length?void 0:`^(${d.map(b=>`(${b})`).join("|")})${u==="exclude"?"($|/)":"$"}`}function ule(n,c,u){if(!(n===void 0||n.length===0))return Fr(n,d=>d&&gle(d,c,u,ahe[u]))}function che(n){return!/[.*?]/.test(n)}function JDe(n,c,u){let d=n&&gle(n,c,u,ahe[u]);return d&&`^(${d})${u==="exclude"?"($|/)":"$"}`}function gle(n,c,u,{singleAsteriskRegexFragment:d,doubleAsteriskRegexFragment:I,replaceWildcardCharacter:h}=ahe[u]){let b="",R=!1,N=Ah(n,c),V=Ta(N);if(u!=="exclude"&&V==="**")return;N[0]=w_(N[0]),che(V)&&N.push("**","*");let P=0;for(let Q of N){if(Q==="**")b+=I;else if(u==="directories"&&(b+="(",P++),R&&(b+=$u),u!=="exclude"){let te="";Q.charCodeAt(0)===42?(te+="([^./]"+d+")?",Q=Q.substr(1)):Q.charCodeAt(0)===63&&(te+="[^./]",Q=Q.substr(1)),te+=Q.replace(HDe,h),te!==Q&&(b+=XDe),b+=te}else b+=Q.replace(HDe,h);R=!0}for(;P>0;)b+=")?",P--;return b}function lhe(n,c){return n==="*"?c:n==="?"?"[^/]":"\\"+n}function Ale(n,c,u,d,I){n=Mc(n),I=Mc(I);let h=Do(I,n);return{includeFilePatterns:Ot(ule(u,h,"files"),b=>`^${b}$`),includeFilePattern:_6(u,h,"files"),includeDirectoryPattern:_6(u,h,"directories"),excludePattern:_6(c,h,"exclude"),basePaths:FNt(n,u,d)}}function TG(n,c){return new RegExp(n,c?"":"i")}function uhe(n,c,u,d,I,h,b,R,N){n=Mc(n),h=Mc(h);let V=Ale(n,u,d,I,h),P=V.includeFilePatterns&&V.includeFilePatterns.map(Be=>TG(Be,I)),Q=V.includeDirectoryPattern&&TG(V.includeDirectoryPattern,I),te=V.excludePattern&&TG(V.excludePattern,I),re=P?P.map(()=>[]):[[]],ue=new Map,Ae=rA(I);for(let Be of V.basePaths)de(Be,Do(h,Be),b);return or(re);function de(Be,Fe,Ne){let Me=Ae(N(Fe));if(ue.has(Me))return;ue.set(Me,!0);let{files:De,directories:lt}=R(Be);for(let Le of mg(De,Ro)){let je=Do(Be,Le),st=Do(Fe,Le);if(!(c&&!fp(je,c))&&!(te&&te.test(st)))if(!P)re[0].push(je);else{let nt=ke(P,qe=>qe.test(st));nt!==-1&&re[nt].push(je)}}if(!(Ne!==void 0&&(Ne--,Ne===0)))for(let Le of mg(lt,Ro)){let je=Do(Be,Le),st=Do(Fe,Le);(!Q||Q.test(st))&&(!te||!te.test(st))&&de(je,st,Ne)}}}function FNt(n,c,u){let d=[n];if(c){let I=[];for(let h of c){let b=bd(h)?h:Mc(Do(n,h));I.push(ZNt(b))}I.sort(ql(!u));for(let h of I)he(d,b=>!vg(b,h,n,!u))&&d.push(h)}return d}function ZNt(n){let c=Xe(n,GNt);return c<0?S1(n)?w_(oa(n)):n:n.substring(0,n.lastIndexOf($u,c))}function dle(n,c){return c||ple(n)||3}function ple(n){switch(n.substr(n.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 y6=[[".ts",".tsx",".d.ts"],[".cts",".d.cts"],[".mts",".d.mts"]],Qee=or(y6),LNt=[...y6,[".json"]],VNt=[".d.ts",".d.cts",".d.mts",".cts",".mts",".ts",".tsx"],ghe=[[".js",".jsx"],[".mjs"],[".cjs"]],r4=or(ghe),Ahe=[[".ts",".tsx",".d.ts",".js",".jsx"],[".cts",".d.cts",".cjs"],[".mts",".d.mts",".mjs"]],WNt=[...Ahe,[".json"]],fle=[".d.ts",".d.cts",".d.mts"],Ile=[".ts",".cts",".mts",".tsx"],Mee=[".mts",".d.mts",".mjs",".cts",".d.cts",".cjs"];function b6(n,c){let u=n&&wG(n);if(!c||c.length===0)return u?Ahe:y6;let d=u?Ahe:y6,I=or(d);return[...d,...tr(c,b=>b.scriptKind===7||u&&PNt(b.scriptKind)&&!I.includes(b.extension)?[b.extension]:void 0)]}function Hee(n,c){return!n||!uV(n)?c:c===Ahe?WNt:c===y6?LNt:[...c,[".json"]]}function PNt(n){return n===1||n===2}function hN(n){return lr(r4,c=>Ad(n,c))}function z5(n){return lr(Qee,c=>Ad(n,c))}var UDe=(n=>(n[n.Minimal=0]="Minimal",n[n.Index=1]="Index",n[n.JsExtension=2]="JsExtension",n[n.TsExtension=3]="TsExtension",n))(UDe||{});function KDe({imports:n},c=fg(hN,z5)){return le(n,({text:u})=>Qp(u)&&!fp(u,Mee)?c(u):void 0)||!1}function jDe(n,c,u,d){let I=o0(u),h=3<=I&&I<=99;if(n==="js"||c===99&&h)return vte(u)&&b()!==2?3:2;if(n==="minimal")return 0;if(n==="index")return 1;if(!vte(u))return d&&KDe(d)?2:0;return b();function b(){let R=!1,N=d?.imports.length?d.imports:d&&i0(d)?ONt(d).map(V=>V.arguments[0]):v;for(let V of N)if(Qp(V.text)){if(h&&c===1&&x6e(d,V,u)===99||fp(V.text,Mee))continue;if(z5(V.text))return 3;hN(V.text)&&(R=!0)}return R?2:0}}function ONt(n){let c=0,u;for(let d of n.statements){if(c>3)break;Y8(d)?u=vi(u,d.declarationList.declarations.map(I=>I.initializer)):Xf(d)&&H0(d.expression,!0)?u=Yr(u,d.expression):c++}return u||v}function zDe(n,c,u){if(!n)return!1;let d=b6(c,u);for(let I of or(Hee(c,d)))if(Ad(n,I))return!0;return!1}function BKe(n){let c=n.match(/\//g);return c?c.length:0}function Yee(n,c){return Jl(BKe(n),BKe(c))}var qDe=[".d.ts",".d.mts",".d.cts",".mjs",".mts",".cjs",".cts",".ts",".js",".tsx",".jsx",".json"];function a0(n){for(let c of qDe){let u=$De(n,c);if(u!==void 0)return u}return n}function $De(n,c){return Ad(n,c)?n4(n,c):void 0}function n4(n,c){return n.substring(0,n.length-c.length)}function NG(n,c){return w1(n,c,qDe,!1)}function i4(n){let c=n.indexOf("*");return c===-1?n:n.indexOf("*",c+1)!==-1?void 0:{prefix:n.substr(0,c),suffix:n.substr(c+1)}}function Xee(n){return tr(Gl(n),c=>i4(c))}function Fv(n){return!(n>=0)}function Cle(n){return n===".ts"||n===".tsx"||n===".d.ts"||n===".cts"||n===".mts"||n===".d.mts"||n===".d.cts"||uc(n,".d.")&&fl(n,".ts")}function E6(n){return Cle(n)||n===".json"}function B6(n){let c=_N(n);return c!==void 0?c:w.fail(`File ${n} has unknown extension.`)}function vKe(n){return _N(n)!==void 0}function _N(n){return be(qDe,c=>Ad(n,c))}function v6(n,c){return n.checkJsDirective?n.checkJsDirective.enabled:c.checkJs}var dhe={files:v,directories:v};function phe(n,c){let u=[];for(let d of n){if(d===c)return c;Ya(d)||u.push(d)}return uy(u,d=>d,c)}function fhe(n,c){let u=n.indexOf(c);return w.assert(u!==-1),n.slice(u)}function tg(n,...c){return c.length&&(n.relatedInformation||(n.relatedInformation=[]),w.assert(n.relatedInformation!==v,"Diagnostic had empty array singleton for related info, but is still being constructed!"),n.relatedInformation.push(...c)),n}function exe(n,c){w.assert(n.length!==0);let u=c(n[0]),d=u;for(let I=1;Id&&(d=h)}return{min:u,max:d}}function Ihe(n){return{pos:xx(n),end:n.end}}function Che(n,c){let u=c.pos-1,d=Math.min(n.text.length,Uu(n.text,c.end)+1);return{pos:u,end:d}}function q5(n,c,u){return c.skipLibCheck&&n.isDeclarationFile||c.skipDefaultLibCheck&&n.hasNoDefaultLib||c.noCheck||u.isSourceOfProjectReferenceRedirect(n.fileName)||!Jee(n,c)}function Jee(n,c){if(n.checkJsDirective&&n.checkJsDirective.enabled===!1)return!1;if(n.scriptKind===3||n.scriptKind===4||n.scriptKind===5)return!0;let d=(n.scriptKind===1||n.scriptKind===2)&&v6(n,c);return B5(n,c.checkJs)||d||n.scriptKind===7}function mle(n,c){return n===c||typeof n=="object"&&n!==null&&typeof c=="object"&&c!==null&&eA(n,c,mle)}function s4(n){let c;switch(n.charCodeAt(1)){case 98:case 66:c=1;break;case 111:case 79:c=3;break;case 120:case 88:c=4;break;default:let V=n.length-1,P=0;for(;n.charCodeAt(P)===48;)P++;return n.slice(P,V)||"0"}let u=2,d=n.length-1,I=(d-u)*c,h=new Uint16Array((I>>>4)+(I&15?1:0));for(let V=d-1,P=0;V>=u;V--,P+=c){let Q=P>>>4,te=n.charCodeAt(V),ue=(te<=57?te-48:10+te-(te<=70?65:97))<<(P&15);h[Q]|=ue;let Ae=ue>>>16;Ae&&(h[Q+1]|=Ae)}let b="",R=h.length-1,N=!0;for(;N;){let V=0;N=!1;for(let P=R;P>=0;P--){let Q=V<<16|h[P],te=Q/10|0;h[P]=te,V=Q-te*10,te&&!N&&(R=P,N=!0)}b=V+b}return b}function AV({negative:n,base10Value:c}){return(n&&c!=="0"?"-":"")+c}function txe(n){if(hle(n,!1))return mhe(n)}function mhe(n){let c=n.startsWith("-"),u=s4(`${c?n.slice(1):n}n`);return{negative:c,base10Value:u}}function hle(n,c){if(n==="")return!1;let u=Ft(99,!1),d=!0;u.setOnError(()=>d=!1),u.setText(n+"n");let I=u.scan(),h=I===41;h&&(I=u.scan());let b=u.getTokenFlags();return d&&I===10&&u.getTokenEnd()===n.length+1&&!(b&512)&&(!c||n===AV({negative:h,base10Value:s4(u.getTokenValue())}))}function xZ(n){return!!(n.flags&33554432)||hce(n)||MNt(n)||QNt(n)||!(DB(n)||SKe(n))}function SKe(n){return sr(n)&&F_(n.parent)&&n.parent.name===n}function QNt(n){for(;n.kind===80||n.kind===211;)n=n.parent;if(n.kind!==167)return!1;if(ya(n.parent,64))return!0;let c=n.parent.parent.kind;return c===264||c===187}function MNt(n){if(n.kind!==80)return!1;let c=Si(n.parent,u=>{switch(u.kind){case 298:return!0;case 211:case 233:return!1;default:return"quit"}});return c?.token===119||c?.parent.kind===264}function rxe(n){return F(n)&&sr(n.typeName)}function nxe(n,c=Qg){if(n.length<2)return!0;let u=n[0];for(let d=1,I=n.length;dn.includes(c))}function oxe(n){if(!n.parent)return;switch(n.kind){case 168:let{parent:u}=n;return u.kind===195?void 0:u.typeParameters;case 169:return n.parent.parameters;case 204:return n.parent.templateSpans;case 239:return n.parent.templateSpans;case 170:{let{parent:d}=n;return IM(d)?d.modifiers:void 0}case 298:return n.parent.heritageClauses}let{parent:c}=n;if(J9(n))return f4(n.parent)?void 0:n.parent.tags;switch(c.kind){case 187:case 264:return Rx(n)?c.members:void 0;case 192:case 193:return c.types;case 189:case 209:case 355:case 275:case 279:return c.elements;case 210:case 292:return c.properties;case 213:case 214:return Ma(n)?c.typeArguments:c.expression===n?void 0:c.arguments;case 284:case 288:return wX(n)?c.children:void 0;case 286:case 285:return Ma(n)?c.typeArguments:void 0;case 241:case 296:case 297:case 268:return c.statements;case 269:return c.clauses;case 263:case 231:return nC(n)?c.members:void 0;case 266:return yV(n)?c.members:void 0;case 307:return c.statements}}function _le(n){if(!n.typeParameters){if(lr(n.parameters,c=>!IC(c)))return!0;if(n.kind!==219){let c=$i(n.parameters);if(!(c&&oV(c)))return!0}}return!1}function T6(n){return n==="Infinity"||n==="-Infinity"||n==="NaN"}function axe(n){return n.kind===260&&n.parent.kind===299}function RG(n){return n.kind===218||n.kind===219}function dV(n){return n.replace(/\$/gm,()=>"\\$")}function bN(n){return(+n).toString()===n}function yle(n,c,u,d,I){let h=I&&n==="new";return!h&&Ke(n,c)?_e.createIdentifier(n):!d&&!h&&bN(n)&&+n>=0?_e.createNumericLiteral(+n):_e.createStringLiteral(n,!!u)}function N6(n){return!!(n.flags&262144&&n.isThisType)}function ble(n){let c=0,u=0,d=0,I=0,h;(V=>{V[V.BeforeNodeModules=0]="BeforeNodeModules",V[V.NodeModules=1]="NodeModules",V[V.Scope=2]="Scope",V[V.PackageContent=3]="PackageContent"})(h||(h={}));let b=0,R=0,N=0;for(;R>=0;)switch(b=R,R=n.indexOf("/",b+1),N){case 0:n.indexOf(Kx,b)===b&&(c=b,u=R,N=1);break;case 1:case 2:N===1&&n.charAt(b+1)==="@"?N=2:(d=R,N=3);break;case 3:n.indexOf(Kx,b)===b?N=1:N=3;break}return I=b,N>1?{topLevelNodeModulesIndex:c,topLevelPackageNameIndex:u,packageRootIndex:d,fileNameIndex:I}:void 0}function TKe(n){var c;return n.kind===341?(c=n.typeExpression)==null?void 0:c.type:n.type}function $5(n){switch(n.kind){case 168:case 263:case 264:case 265:case 266:case 346:case 338:case 340:return!0;case 273:return n.isTypeOnly;case 276:case 281:return n.parent.parent.isTypeOnly;default:return!1}}function Uee(n){return iP(n)||Dp(n)||hp(n)||Ec(n)||XI(n)||$5(n)||mC(n)&&!KR(n)&&!S2(n)}function Kee(n){if(!IZ(n))return!1;let{isBracketed:c,typeExpression:u}=n;return c||!!u&&u.type.kind===316}function yhe(n,c){if(n.length===0)return!1;let u=n.charCodeAt(0);return u===35?n.length>1&&qy(n.charCodeAt(1),c):qy(u,c)}function cxe(n){var c;return((c=Gle(n))==null?void 0:c.kind)===0}function Ele(n){return io(n)&&(n.type&&n.type.kind===316||MR(n).some(Kee))}function HS(n){switch(n.kind){case 172:case 171:return!!n.questionToken;case 169:return!!n.questionToken||Ele(n);case 348:case 341:return Kee(n);default:return!1}}function Ble(n){let c=n.kind;return(c===211||c===212)&&sT(n.expression)}function bhe(n){return io(n)&&ZC(n)&&_y(n)&&!!f$(n)}function Ehe(n){return w.checkDefined(vle(n))}function vle(n){let c=f$(n);return c&&c.typeExpression&&c.typeExpression.type}function R6(n){return sr(n)?n.escapedText:x2(n)}function YS(n){return sr(n)?oo(n):D6(n)}function lxe(n){let c=n.kind;return c===80||c===295}function x2(n){return`${n.namespace.escapedText}:${oo(n.name)}`}function D6(n){return`${oo(n.namespace)}:${oo(n.name)}`}function Bhe(n){return sr(n)?oo(n):D6(n)}function k2(n){return!!(n.flags&8576)}function G2(n){return n.flags&8192?n.escapedName:n.flags&384?Dd(""+n.value):w.fail()}function eM(n){return!!n&&(fo(n)||_A(n)||ro(n))}function uxe(n){return n===void 0?!1:!!Nte(n.attributes)}var YNt=String.prototype.replace;function tM(n,c){return YNt.call(n,"*",c)}function Sle(n){return sr(n.name)?n.name.escapedText:Dd(n.name.text)}function KC(n,c=!1,u=!1,d=!1){return{value:n,isSyntacticallyString:c,resolvedOtherFiles:u,hasExternalReferences:d}}function vhe({evaluateElementAccessExpression:n,evaluateEntityNameExpression:c}){function u(I,h){let b=!1,R=!1,N=!1;switch(I=zA(I),I.kind){case 224:let V=u(I.operand,h);if(R=V.resolvedOtherFiles,N=V.hasExternalReferences,typeof V.value=="number")switch(I.operator){case 40:return KC(V.value,b,R,N);case 41:return KC(-V.value,b,R,N);case 55:return KC(~V.value,b,R,N)}break;case 226:{let P=u(I.left,h),Q=u(I.right,h);if(b=(P.isSyntacticallyString||Q.isSyntacticallyString)&&I.operatorToken.kind===40,R=P.resolvedOtherFiles||Q.resolvedOtherFiles,N=P.hasExternalReferences||Q.hasExternalReferences,typeof P.value=="number"&&typeof Q.value=="number")switch(I.operatorToken.kind){case 52:return KC(P.value|Q.value,b,R,N);case 51:return KC(P.value&Q.value,b,R,N);case 49:return KC(P.value>>Q.value,b,R,N);case 50:return KC(P.value>>>Q.value,b,R,N);case 48:return KC(P.value<=2)break;case 174:case 176:case 177:case 178:case 262:if(lt&3&&Nt==="arguments"){dt=u;break e}break;case 218:if(lt&3&&Nt==="arguments"){dt=u;break e}if(lt&16){let Zt=Me.name;if(Zt&&Nt===Zt.escapedText){dt=Me.symbol;break e}}break;case 170:Me.parent&&Me.parent.kind===169&&(Me=Me.parent),Me.parent&&(nC(Me.parent)||Me.parent.kind===263)&&(Me=Me.parent);break;case 346:case 338:case 340:case 351:let kt=HX(Me);kt&&(Me=kt.parent);break;case 169:Tt&&(Tt===Me.initializer||Tt===Me.name&&fu(Tt))&&(ht||(ht=Me));break;case 208:Tt&&(Tt===Me.initializer||Tt===Me.name&&fu(Tt))&&TZ(Me)&&!ht&&(ht=Me);break;case 195:if(lt&262144){let Zt=Me.typeParameter.name;if(Zt&&Nt===Zt.escapedText){dt=Me.typeParameter.symbol;break e}}break;case 281:Tt&&Tt===Me.propertyName&&Me.parent.parent.moduleSpecifier&&(Me=Me.parent.parent.parent);break}Fe(Me,Tt)&&(St=Me),Tt=Me,Me=Lv(Me)?vce(Me)||Me.parent:(LB(Me)||jxe(Me))&&SZ(Me)||Me.parent}if(je&&dt&&(!St||dt!==St.symbol)&&(dt.isReferenced|=lt),!dt){if(Tt&&(w.assertNode(Tt,Fc),Tt.commonJsModuleIndicator&&Nt==="exports"&<&Tt.symbol.flags))return Tt.symbol;st||(dt=b(h,Nt,lt))}if(!dt&&It&&io(It)&&It.parent&&H0(It.parent,!1))return c;if(Le){if(He&&V(It,Nt,He,dt))return;dt?Q(It,dt,lt,Tt,ht,Et):P(It,De,lt,Le)}return dt}function de(Me,De,lt){let Le=sA(n),je=De;if(Uc(lt)&&je.body&&Me.valueDeclaration&&Me.valueDeclaration.pos>=je.body.pos&&Me.valueDeclaration.end<=je.body.end&&Le>=2){let qe=N(je);return qe===void 0&&(qe=X(je.parameters,st)||!1,R(je,qe)),!qe}return!1;function st(qe){return nt(qe.name)||!!qe.initializer&&nt(qe.initializer)}function nt(qe){switch(qe.kind){case 219:case 218:case 262:case 176:return!1;case 174:case 177:case 178:case 303:return nt(qe.name);case 172:return CC(qe)?!re:nt(qe.name);default:return I$(qe)||Gm(qe)?Le<7:hl(qe)&&qe.dotDotDotToken&&Wg(qe.parent)?Le<4:Ma(qe)?!1:hu(qe,nt)||!1}}}function Be(Me,De){return Me.kind!==219&&Me.kind!==218?oe(Me)||(pd(Me)||Me.kind===172&&!eg(Me))&&(!De||De!==Me.name):De&&De===Me.name?!1:Me.asteriskToken||ya(Me,1024)?!0:!q9(Me)}function Fe(Me,De){switch(Me.kind){case 169:return!!De&&De===Me.name;case 262:case 263:case 264:case 266:case 265:case 267:return!0;default:return!1}}function Ne(Me,De){if(Me.declarations){for(let lt of Me.declarations)if(lt.kind===168&&(Lv(lt.parent)?tV(lt.parent):lt.parent)===De)return!(Lv(lt.parent)&&be(lt.parent.parent.tags,T2))}return!1}}function zee(n,c=!0){switch(w.type(n),n.kind){case 112:case 97:case 9:case 11:case 15:return!0;case 10:return c;case 224:return n.operator===41?pu(n.operand)||c&&q3(n.operand):n.operator===40?pu(n.operand):!1;default:return!1}}function wle(n){for(;n.kind===217;)n=n.expression;return n}function Tle(n){switch(w.type(n),n.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 gxe(){let n,c,u,d,I;return{createBaseSourceFileNode:h,createBaseIdentifierNode:b,createBasePrivateIdentifierNode:R,createBaseTokenNode:N,createBaseNode:V};function h(P){return new(I||(I=kC.getSourceFileConstructor()))(P,-1,-1)}function b(P){return new(u||(u=kC.getIdentifierConstructor()))(P,-1,-1)}function R(P){return new(d||(d=kC.getPrivateIdentifierConstructor()))(P,-1,-1)}function N(P){return new(c||(c=kC.getTokenConstructor()))(P,-1,-1)}function V(P){return new(n||(n=kC.getNodeConstructor()))(P,-1,-1)}}function Axe(n){let c,u;return{getParenthesizeLeftSideOfBinaryForOperator:d,getParenthesizeRightSideOfBinaryForOperator:I,parenthesizeLeftSideOfBinary:V,parenthesizeRightSideOfBinary:P,parenthesizeExpressionOfComputedPropertyName:Q,parenthesizeConditionOfConditionalExpression:te,parenthesizeBranchOfConditionalExpression:re,parenthesizeExpressionOfExportDefault:ue,parenthesizeExpressionOfNew:Ae,parenthesizeLeftSideOfAccess:de,parenthesizeOperandOfPostfixUnary:Be,parenthesizeOperandOfPrefixUnary:Fe,parenthesizeExpressionsOfCommaDelimitedList:Ne,parenthesizeExpressionForDisallowedComma:Me,parenthesizeExpressionOfExpressionStatement:De,parenthesizeConciseBodyOfArrowFunction:lt,parenthesizeCheckTypeOfConditionalType:Le,parenthesizeExtendsTypeOfConditionalType:je,parenthesizeConstituentTypesOfUnionType:nt,parenthesizeConstituentTypeOfUnionType:st,parenthesizeConstituentTypesOfIntersectionType:it,parenthesizeConstituentTypeOfIntersectionType:qe,parenthesizeOperandOfTypeOperator:It,parenthesizeOperandOfReadonlyTypeOperator:dt,parenthesizeNonArrayTypeOfPostfixType:Tt,parenthesizeElementTypesOfTupleType:St,parenthesizeElementTypeOfTupleType:He,parenthesizeTypeOfOptionalType:Et,parenthesizeTypeArguments:Lt,parenthesizeLeadingTypeArgument:Kt};function d(kt){c||(c=new Map);let Zt=c.get(kt);return Zt||(Zt=Dr=>V(kt,Dr),c.set(kt,Zt)),Zt}function I(kt){u||(u=new Map);let Zt=u.get(kt);return Zt||(Zt=Dr=>P(kt,void 0,Dr),u.set(kt,Zt)),Zt}function h(kt,Zt,Dr,jt){let mr=Eee(226,kt),Pt=wme(226,kt),Vr=x1(Zt);if(!Dr&&Zt.kind===219&&mr>3)return!0;let Hr=EG(Vr);switch(Jl(Hr,mr)){case-1:return!(!Dr&&Pt===1&&Zt.kind===229);case 1:return!1;case 0:if(Dr)return Pt===1;if(ro(Vr)&&Vr.operatorToken.kind===kt){if(b(kt))return!1;if(kt===40){let zr=jt?R(jt):0;if(I5(zr)&&zr===R(Vr))return!1}}return Sme(Vr)===0}}function b(kt){return kt===42||kt===52||kt===51||kt===53||kt===28}function R(kt){if(kt=x1(kt),I5(kt.kind))return kt.kind;if(kt.kind===226&&kt.operatorToken.kind===40){if(kt.cachedLiteralKind!==void 0)return kt.cachedLiteralKind;let Zt=R(kt.left),Dr=I5(Zt)&&Zt===R(kt.right)?Zt:0;return kt.cachedLiteralKind=Dr,Dr}return 0}function N(kt,Zt,Dr,jt){return x1(Zt).kind===217?Zt:h(kt,Zt,Dr,jt)?n.createParenthesizedExpression(Zt):Zt}function V(kt,Zt){return N(kt,Zt,!0)}function P(kt,Zt,Dr){return N(kt,Dr,!1,Zt)}function Q(kt){return Jle(kt)?n.createParenthesizedExpression(kt):kt}function te(kt){let Zt=Eee(227,58),Dr=x1(kt),jt=EG(Dr);return Jl(jt,Zt)!==1?n.createParenthesizedExpression(kt):kt}function re(kt){let Zt=x1(kt);return Jle(Zt)?n.createParenthesizedExpression(kt):kt}function ue(kt){let Zt=x1(kt),Dr=Jle(Zt);if(!Dr)switch(X5(Zt,!1).kind){case 231:case 218:Dr=!0}return Dr?n.createParenthesizedExpression(kt):kt}function Ae(kt){let Zt=X5(kt,!0);switch(Zt.kind){case 213:return n.createParenthesizedExpression(kt);case 214:return Zt.arguments?kt:n.createParenthesizedExpression(kt)}return de(kt)}function de(kt,Zt){let Dr=x1(kt);return N_(Dr)&&(Dr.kind!==214||Dr.arguments)&&(Zt||!Gm(Dr))?kt:un(n.createParenthesizedExpression(kt),kt)}function Be(kt){return N_(kt)?kt:un(n.createParenthesizedExpression(kt),kt)}function Fe(kt){return yZ(kt)?kt:un(n.createParenthesizedExpression(kt),kt)}function Ne(kt){let Zt=Ar(kt,Me);return un(n.createNodeArray(Zt,kt.hasTrailingComma),kt)}function Me(kt){let Zt=x1(kt),Dr=EG(Zt),jt=Eee(226,28);return Dr>jt?kt:un(n.createParenthesizedExpression(kt),kt)}function De(kt){let Zt=x1(kt);if(lu(Zt)){let jt=Zt.expression,mr=x1(jt).kind;if(mr===218||mr===219){let Pt=n.updateCallExpression(Zt,un(n.createParenthesizedExpression(jt),jt),Zt.typeArguments,Zt.arguments);return n.restoreOuterExpressions(kt,Pt,8)}}let Dr=X5(Zt,!1).kind;return Dr===210||Dr===218?un(n.createParenthesizedExpression(kt),kt):kt}function lt(kt){return!hc(kt)&&(Jle(kt)||X5(kt,!1).kind===210)?un(n.createParenthesizedExpression(kt),kt):kt}function Le(kt){switch(kt.kind){case 184:case 185:case 194:return n.createParenthesizedType(kt)}return kt}function je(kt){switch(kt.kind){case 194:return n.createParenthesizedType(kt)}return kt}function st(kt){switch(kt.kind){case 192:case 193:return n.createParenthesizedType(kt)}return Le(kt)}function nt(kt){return n.createNodeArray(Ar(kt,st))}function qe(kt){switch(kt.kind){case 192:case 193:return n.createParenthesizedType(kt)}return st(kt)}function it(kt){return n.createNodeArray(Ar(kt,qe))}function It(kt){switch(kt.kind){case 193:return n.createParenthesizedType(kt)}return qe(kt)}function dt(kt){switch(kt.kind){case 198:return n.createParenthesizedType(kt)}return It(kt)}function Tt(kt){switch(kt.kind){case 195:case 198:case 186:return n.createParenthesizedType(kt)}return It(kt)}function St(kt){return n.createNodeArray(Ar(kt,He))}function He(kt){return ht(kt)?n.createParenthesizedType(kt):kt}function ht(kt){return gte(kt)?kt.postfix:At(kt)||H(kt)||Y(kt)||as(kt)?ht(kt.type):Ei(kt)?ht(kt.falseType):Is(kt)||ji(kt)?ht(Ta(kt.types)):yo(kt)?!!kt.typeParameter.constraint&&ht(kt.typeParameter.constraint):!1}function Et(kt){return ht(kt)?n.createParenthesizedType(kt):Tt(kt)}function Kt(kt){return hX(kt)&&kt.typeParameters?n.createParenthesizedType(kt):kt}function Nt(kt,Zt){return Zt===0?Kt(kt):kt}function Lt(kt){if(lr(kt))return n.createNodeArray(Ar(kt,Nt))}}var qee={getParenthesizeLeftSideOfBinaryForOperator:n=>vl,getParenthesizeRightSideOfBinaryForOperator:n=>vl,parenthesizeLeftSideOfBinary:(n,c)=>c,parenthesizeRightSideOfBinary:(n,c,u)=>u,parenthesizeExpressionOfComputedPropertyName:vl,parenthesizeConditionOfConditionalExpression:vl,parenthesizeBranchOfConditionalExpression:vl,parenthesizeExpressionOfExportDefault:vl,parenthesizeExpressionOfNew:n=>ps(n,N_),parenthesizeLeftSideOfAccess:n=>ps(n,N_),parenthesizeOperandOfPostfixUnary:n=>ps(n,N_),parenthesizeOperandOfPrefixUnary:n=>ps(n,yZ),parenthesizeExpressionsOfCommaDelimitedList:n=>ps(n,IG),parenthesizeExpressionForDisallowedComma:vl,parenthesizeExpressionOfExpressionStatement:vl,parenthesizeConciseBodyOfArrowFunction:vl,parenthesizeCheckTypeOfConditionalType:vl,parenthesizeExtendsTypeOfConditionalType:vl,parenthesizeConstituentTypesOfUnionType:n=>ps(n,IG),parenthesizeConstituentTypeOfUnionType:vl,parenthesizeConstituentTypesOfIntersectionType:n=>ps(n,IG),parenthesizeConstituentTypeOfIntersectionType:vl,parenthesizeOperandOfTypeOperator:vl,parenthesizeOperandOfReadonlyTypeOperator:vl,parenthesizeNonArrayTypeOfPostfixType:vl,parenthesizeElementTypesOfTupleType:n=>ps(n,IG),parenthesizeElementTypeOfTupleType:vl,parenthesizeTypeOfOptionalType:vl,parenthesizeTypeArguments:n=>n&&ps(n,IG),parenthesizeLeadingTypeArgument:vl};function $ee(n){return{convertToFunctionBlock:c,convertToFunctionExpression:u,convertToClassExpression:d,convertToArrayAssignmentElement:I,convertToObjectAssignmentElement:h,convertToAssignmentPattern:b,convertToObjectAssignmentPattern:R,convertToArrayAssignmentPattern:N,convertToAssignmentElementTarget:V};function c(P,Q){if(hc(P))return P;let te=n.createReturnStatement(P);un(te,P);let re=n.createBlock([te],Q);return un(re,P),re}function u(P){var Q;if(!P.body)return w.fail("Cannot convert a FunctionDeclaration without a body");let te=n.createFunctionExpression((Q=uN(P))==null?void 0:Q.filter(re=>!Ox(re)&&!lte(re)),P.asteriskToken,P.name,P.typeParameters,P.parameters,P.type,P.body);return Ho(te,P),un(te,P),DG(P)&&Dle(te,!0),te}function d(P){var Q;let te=n.createClassExpression((Q=P.modifiers)==null?void 0:Q.filter(re=>!Ox(re)&&!lte(re)),P.name,P.typeParameters,P.heritageClauses,P.members);return Ho(te,P),un(te,P),DG(P)&&Dle(te,!0),te}function I(P){if(hl(P)){if(P.dotDotDotToken)return w.assertNode(P.name,sr),Ho(un(n.createSpreadElement(P.name),P),P);let Q=V(P.name);return P.initializer?Ho(un(n.createAssignment(Q,P.initializer),P),P):Q}return ps(P,tn)}function h(P){if(hl(P)){if(P.dotDotDotToken)return w.assertNode(P.name,sr),Ho(un(n.createSpreadAssignment(P.name),P),P);if(P.propertyName){let Q=V(P.name);return Ho(un(n.createPropertyAssignment(P.propertyName,P.initializer?n.createAssignment(Q,P.initializer):Q),P),P)}return w.assertNode(P.name,sr),Ho(un(n.createShorthandPropertyAssignment(P.name,P.initializer),P),P)}return ps(P,vB)}function b(P){switch(P.kind){case 207:case 209:return N(P);case 206:case 210:return R(P)}}function R(P){return Wg(P)?Ho(un(n.createObjectLiteralExpression(Ot(P.elements,h)),P),P):ps(P,ru)}function N(P){return Wu(P)?Ho(un(n.createArrayLiteralExpression(Ot(P.elements,I)),P),P):ps(P,Cf)}function V(P){return fu(P)?b(P):ps(P,tn)}}var dxe={convertToFunctionBlock:ja,convertToFunctionExpression:ja,convertToClassExpression:ja,convertToArrayAssignmentElement:ja,convertToObjectAssignmentElement:ja,convertToAssignmentPattern:ja,convertToObjectAssignmentPattern:ja,convertToArrayAssignmentPattern:ja,convertToAssignmentElementTarget:ja},whe=0,The=(n=>(n[n.None=0]="None",n[n.NoParenthesizerRules=1]="NoParenthesizerRules",n[n.NoNodeConverters=2]="NoNodeConverters",n[n.NoIndentationOnFreshPropertyAccess=4]="NoIndentationOnFreshPropertyAccess",n[n.NoOriginalNode=8]="NoOriginalNode",n))(The||{}),NKe=[];function Nle(n){NKe.push(n)}function pV(n,c){let u=n&8?vl:Ho,d=su(()=>n&1?qee:Axe(Be)),I=su(()=>n&2?dxe:$ee(Be)),h=ii(j=>(me,We)=>Zs(me,j,We)),b=ii(j=>me=>qr(j,me)),R=ii(j=>me=>Jn(me,j)),N=ii(j=>()=>uu(j)),V=ii(j=>me=>V4(j,me)),P=ii(j=>(me,We)=>lo(j,me,We)),Q=ii(j=>(me,We)=>zG(j,me,We)),te=ii(j=>(me,We)=>XE(j,me,We)),re=ii(j=>(me,We)=>HN(j,me,We)),ue=ii(j=>(me,We,mt)=>ZV(j,me,We,mt)),Ae=ii(j=>(me,We,mt)=>Are(j,me,We,mt)),de=ii(j=>(me,We,mt,yr)=>ZI(j,me,We,mt,yr)),Be={get parenthesizer(){return d()},get converters(){return I()},baseFactory:c,flags:n,createNodeArray:Fe,createNumericLiteral:lt,createBigIntLiteral:Le,createStringLiteral:st,createStringLiteralFromNode:nt,createRegularExpressionLiteral:qe,createLiteralLikeNode:it,createIdentifier:Tt,createTempVariable:St,createLoopVariable:He,createUniqueName:ht,getGeneratedNameForNode:Et,createPrivateIdentifier:Nt,createUniquePrivateName:kt,getGeneratedPrivateNameForNode:Zt,createToken:jt,createSuper:mr,createThis:Pt,createNull:Vr,createTrue:Hr,createFalse:pr,createModifier:zr,createModifiersFromModifierFlags:$n,createQualifiedName:bi,updateQualifiedName:Pi,createComputedPropertyName:Ns,updateComputedPropertyName:gi,createTypeParameterDeclaration:jn,updateTypeParameterDeclaration:xs,createParameterDeclaration:Bc,updateParameterDeclaration:xi,createDecorator:rc,updateDecorator:Wl,createPropertySignature:gl,updatePropertySignature:mc,createPropertyDeclaration:Pu,updatePropertyDeclaration:ir,createMethodSignature:ni,updateMethodSignature:gs,createMethodDeclaration:Hs,updateMethodDeclaration:za,createConstructorDeclaration:Bi,updateConstructorDeclaration:vA,createGetAccessorDeclaration:en,updateGetAccessorDeclaration:ct,createSetAccessorDeclaration:wt,updateSetAccessorDeclaration:br,createCallSignature:_r,updateCallSignature:Pr,createConstructSignature:ti,updateConstructSignature:cr,createIndexSignature:kn,updateIndexSignature:Pn,createClassStaticBlockDeclaration:Rc,updateClassStaticBlockDeclaration:lg,createTemplateLiteralTypeSpan:an,updateTemplateLiteralTypeSpan:Kr,createKeywordTypeNode:wn,createTypePredicateNode:Pe,updateTypePredicateNode:ar,createTypeReferenceNode:sn,updateTypeReferenceNode:Qe,createFunctionTypeNode:ur,updateFunctionTypeNode:Re,createConstructorTypeNode:bt,updateConstructorTypeNode:On,createTypeQueryNode:ds,updateTypeQueryNode:Es,createTypeLiteralNode:so,updateTypeLiteralNode:Vi,createArrayTypeNode:xo,updateArrayTypeNode:Yc,createTupleTypeNode:Il,updateTupleTypeNode:sa,createNamedTupleMember:Ra,updateNamedTupleMember:ki,createOptionalTypeNode:Gs,updateOptionalTypeNode:ri,createRestTypeNode:_u,updateRestTypeNode:UA,createUnionTypeNode:Nl,updateUnionTypeNode:ug,createIntersectionTypeNode:hf,updateIntersectionTypeNode:qc,createConditionalTypeNode:Lc,updateConditionalTypeNode:jm,createInferTypeNode:xf,updateInferTypeNode:I0,createImportTypeNode:Ug,updateImportTypeNode:_f,createParenthesizedType:Yd,updateParenthesizedType:qA,createThisTypeNode:di,createTypeOperatorNode:uI,updateTypeOperatorNode:U0,createIndexedAccessTypeNode:K0,updateIndexedAccessTypeNode:Xb,createMappedTypeNode:nf,updateMappedTypeNode:GI,createLiteralTypeNode:yt,updateLiteralTypeNode:tt,createTemplateLiteralType:kI,updateTemplateLiteralType:o_,createObjectBindingPattern:gr,updateObjectBindingPattern:mn,createArrayBindingPattern:Ri,updateArrayBindingPattern:Yo,createBindingElement:fi,updateBindingElement:Xo,createArrayLiteralExpression:_c,updateArrayLiteralExpression:ic,createObjectLiteralExpression:Pg,updateObjectLiteralExpression:sf,createPropertyAccessExpression:n&4?(j,me)=>ao(Jf(j,me),262144):Jf,updatePropertyAccessExpression:Fm,createPropertyAccessChain:n&4?(j,me,We)=>ao(of(j,me,We),262144):of,updatePropertyAccessChain:Zm,createElementAccessExpression:FI,updateElementAccessExpression:$C,createElementAccessChain:H2,updateElementAccessChain:qt,createCallExpression:Bs,updateCallExpression:Rl,createCallChain:SA,updateCallChain:OA,createNewExpression:JI,updateNewExpression:Em,createTaggedTemplateExpression:np,updateTaggedTemplateExpression:Xd,createTypeAssertion:_C,updateTypeAssertion:Ub,createParenthesizedExpression:pT,updateParenthesizedExpression:Y2,createFunctionExpression:gb,updateFunctionExpression:WB,createArrowFunction:X2,updateArrowFunction:lD,createDeleteExpression:uD,updateDeleteExpression:Ab,createTypeOfExpression:em,updateTypeOfExpression:gD,createVoidExpression:Kb,updateVoidExpression:LN,createAwaitExpression:J2,updateAwaitExpression:rt,createPrefixUnaryExpression:qr,updatePrefixUnaryExpression:Mn,createPostfixUnaryExpression:Jn,updatePostfixUnaryExpression:cs,createBinaryExpression:Zs,updateBinaryExpression:Ja,createConditionalExpression:Ge,updateConditionalExpression:Yt,createTemplateExpression:En,updateTemplateExpression:Rs,createTemplateHead:oA,createTemplateMiddle:gI,createTemplateTail:PB,createNoSubstitutionTemplateLiteral:nw,createTemplateLiteralLikeNode:ad,createYieldExpression:AD,updateYieldExpression:qx,createSpreadElement:YZ,updateSpreadElement:$x,createClassExpression:OB,updateClassExpression:U2,createOmittedExpression:ip,createExpressionWithTypeArguments:Z_,updateExpressionWithTypeArguments:j0,createAsExpression:iw,updateAsExpression:XZ,createNonNullExpression:HG,updateNonNullExpression:kV,createSatisfiesExpression:Pv,updateSatisfiesExpression:GV,createNonNullChain:Ov,updateNonNullChain:EP,createMetaProperty:fT,updateMetaProperty:K2,createTemplateSpan:YG,updateTemplateSpan:rr,createSemicolonClassElement:Tr,createBlock:xn,updateBlock:ci,createVariableStatement:Wi,updateVariableStatement:zs,createEmptyStatement:zi,createExpressionStatement:mo,updateExpressionStatement:vc,createIfStatement:Io,updateIfStatement:ac,createDoStatement:Ws,updateDoStatement:nu,createWhileStatement:Yg,updateWhileStatement:zm,createForStatement:C0,updateForStatement:Qv,createForInStatement:JZ,updateForInStatement:Mv,createForOfStatement:I7,updateForOfStatement:sre,createContinueStatement:C7,updateContinueStatement:DM,createBreakStatement:BP,updateBreakStatement:vP,createReturnStatement:SP,updateReturnStatement:D4,createWithStatement:UZ,updateWithStatement:xM,createSwitchStatement:ek,updateSwitchStatement:kM,createLabeledStatement:KA,updateLabeledStatement:x4,createThrowStatement:k4,updateThrowStatement:wP,createTryStatement:XG,updateTryStatement:VN,createDebuggerStatement:QB,createVariableDeclaration:db,updateVariableDeclaration:YE,createVariableDeclarationList:jb,updateVariableDeclarationList:KZ,createFunctionDeclaration:m7,updateFunctionDeclaration:h7,createClassDeclaration:jZ,updateClassDeclaration:NP,createInterfaceDeclaration:_7,updateInterfaceDeclaration:Bm,createTypeAliasDeclaration:zZ,updateTypeAliasDeclaration:y7,createEnumDeclaration:IT,updateEnumDeclaration:G4,createModuleDeclaration:fr,updateModuleDeclaration:sw,createModuleBlock:qm,updateModuleBlock:RP,createCaseBlock:dD,updateCaseBlock:MB,createNamespaceExportDeclaration:WN,updateNamespaceExportDeclaration:JG,createImportEqualsDeclaration:wA,updateImportEqualsDeclaration:ow,createImportDeclaration:GM,updateImportDeclaration:F4,createImportClause:Z4,updateImportClause:DP,createAssertClause:UG,updateAssertClause:KG,createAssertEntry:xP,updateAssertEntry:j2,createImportTypeAssertionContainer:M1,updateImportTypeAssertionContainer:qZ,createImportAttributes:$Z,updateImportAttributes:al,createImportAttribute:Jo,updateImportAttribute:L_,createNamespaceImport:ore,updateNamespaceImport:aw,createNamespaceExport:b7,updateNamespaceExport:pD,createNamedImports:eL,updateNamedImports:jG,createImportSpecifier:are,updateImportSpecifier:kP,createExportAssignment:H1,updateExportAssignment:FM,createExportDeclaration:xp,updateExportDeclaration:tk,createNamedExports:L4,updateNamedExports:ZM,createExportSpecifier:E7,updateExportSpecifier:tge,createMissingDeclaration:lre,createExternalModuleReference:Lo,updateExternalModuleReference:m0,get createJSDocAllType(){return N(312)},get createJSDocUnknownType(){return N(313)},get createJSDocNonNullableType(){return Q(315)},get updateJSDocNonNullableType(){return te(315)},get createJSDocNullableType(){return Q(314)},get updateJSDocNullableType(){return te(314)},get createJSDocOptionalType(){return V(316)},get updateJSDocOptionalType(){return P(316)},get createJSDocVariadicType(){return V(318)},get updateJSDocVariadicType(){return P(318)},get createJSDocNamepathType(){return V(319)},get updateJSDocNamepathType(){return P(319)},createJSDocFunctionType:B7,updateJSDocFunctionType:v7,createJSDocTypeLiteral:z0,updateJSDocTypeLiteral:cw,createJSDocTypeExpression:Hv,updateJSDocTypeExpression:tL,createJSDocSignature:LM,updateJSDocSignature:PN,createJSDocTemplateTag:rk,updateJSDocTemplateTag:GP,createJSDocTypedefTag:S7,updateJSDocTypedefTag:W4,createJSDocParameterTag:VM,updateJSDocParameterTag:ure,createJSDocPropertyTag:P4,updateJSDocPropertyTag:FP,createJSDocCallbackTag:lw,updateJSDocCallbackTag:gre,createJSDocOverloadTag:ZP,updateJSDocOverloadTag:FV,createJSDocAugmentsTag:qG,updateJSDocAugmentsTag:rL,createJSDocImplementsTag:Yv,updateJSDocImplementsTag:T7,createJSDocSeeTag:nL,updateJSDocSeeTag:LP,createJSDocImportTag:q0,updateJSDocImportTag:O4,createJSDocNameReference:Ih,updateJSDocNameReference:$G,createJSDocMemberName:QN,updateJSDocMemberName:UI,createJSDocLink:$m,updateJSDocLink:eF,createJSDocLinkCode:zb,updateJSDocLinkCode:YB,createJSDocLinkPlain:w7,updateJSDocLinkPlain:MN,get createJSDocTypeTag(){return Ae(344)},get updateJSDocTypeTag(){return de(344)},get createJSDocReturnTag(){return Ae(342)},get updateJSDocReturnTag(){return de(342)},get createJSDocThisTag(){return Ae(343)},get updateJSDocThisTag(){return de(343)},get createJSDocAuthorTag(){return re(330)},get updateJSDocAuthorTag(){return ue(330)},get createJSDocClassTag(){return re(332)},get updateJSDocClassTag(){return ue(332)},get createJSDocPublicTag(){return re(333)},get updateJSDocPublicTag(){return ue(333)},get createJSDocPrivateTag(){return re(334)},get updateJSDocPrivateTag(){return ue(334)},get createJSDocProtectedTag(){return re(335)},get updateJSDocProtectedTag(){return ue(335)},get createJSDocReadonlyTag(){return re(336)},get updateJSDocReadonlyTag(){return ue(336)},get createJSDocOverrideTag(){return re(337)},get updateJSDocOverrideTag(){return ue(337)},get createJSDocDeprecatedTag(){return re(331)},get updateJSDocDeprecatedTag(){return ue(331)},get createJSDocThrowsTag(){return Ae(349)},get updateJSDocThrowsTag(){return de(349)},get createJSDocSatisfiesTag(){return Ae(350)},get updateJSDocSatisfiesTag(){return de(350)},createJSDocEnumTag:VP,updateJSDocEnumTag:rge,createJSDocUnknownTag:dre,updateJSDocUnknownTag:pre,createJSDocText:WM,updateJSDocText:WP,createJSDocComment:pb,updateJSDocComment:nge,createJsxElement:PP,updateJsxElement:fre,createJsxSelfClosingElement:OP,updateJsxSelfClosingElement:PM,createJsxOpeningElement:N7,updateJsxOpeningElement:Q4,createJsxClosingElement:z2,updateJsxClosingElement:Ire,createJsxFragment:LV,createJsxText:CT,updateJsxText:M4,createJsxOpeningFragment:H4,createJsxJsxClosingFragment:FA,updateJsxFragment:Y1,createJsxAttribute:Oo,updateJsxAttribute:q2,createJsxAttributes:a_,updateJsxAttributes:Cre,createJsxSpreadAttribute:mre,updateJsxSpreadAttribute:QP,createJsxExpression:VV,updateJsxExpression:hre,createJsxNamespacedName:WV,updateJsxNamespacedName:uw,createCaseClause:X1,updateCaseClause:fD,createDefaultClause:YN,updateDefaultClause:tF,createHeritageClause:Y4,updateHeritageClause:VC,createCatchClause:gw,updateCatchClause:J1,createPropertyAssignment:iL,updatePropertyAssignment:$2,createShorthandPropertyAssignment:PV,updateShorthandPropertyAssignment:ce,createSpreadAssignment:pn,updateSpreadAssignment:qn,createEnumMember:Ua,updateEnumMember:Fl,createSourceFile:El,updateSourceFile:OM,createRedirectedSourceFile:zl,createBundle:UE,updateBundle:mT,createSyntheticExpression:rF,createSyntaxList:QM,createNotEmittedStatement:_re,createPartiallyEmittedExpression:nF,updatePartiallyEmittedExpression:MP,createCommaListExpression:OV,updateCommaListExpression:$c,createSyntheticReferenceExpression:QV,updateSyntheticReferenceExpression:Ys,cloneNode:Ere,get createComma(){return h(28)},get createAssignment(){return h(64)},get createLogicalOr(){return h(57)},get createLogicalAnd(){return h(56)},get createBitwiseOr(){return h(52)},get createBitwiseXor(){return h(53)},get createBitwiseAnd(){return h(51)},get createStrictEquality(){return h(37)},get createStrictInequality(){return h(38)},get createEquality(){return h(35)},get createInequality(){return h(36)},get createLessThan(){return h(30)},get createLessThanEquals(){return h(33)},get createGreaterThan(){return h(32)},get createGreaterThanEquals(){return h(34)},get createLeftShift(){return h(48)},get createRightShift(){return h(49)},get createUnsignedRightShift(){return h(50)},get createAdd(){return h(40)},get createSubtract(){return h(41)},get createMultiply(){return h(42)},get createDivide(){return h(44)},get createModulo(){return h(45)},get createExponent(){return h(43)},get createPrefixPlus(){return b(40)},get createPrefixMinus(){return b(41)},get createPrefixIncrement(){return b(46)},get createPrefixDecrement(){return b(47)},get createBitwiseNot(){return b(55)},get createLogicalNot(){return b(54)},get createPostfixIncrement(){return R(46)},get createPostfixDecrement(){return R(47)},createImmediatelyInvokedFunctionExpression:pZe,createImmediatelyInvokedArrowFunction:fZe,createVoidZero:ID,createExportDefault:W0e,createExternalModuleExport:sge,createTypeCheck:oge,createIsNotTypeCheck:P0e,createMethodCall:HP,createGlobalMethodCall:HM,createFunctionBindCall:O0e,createFunctionCallCall:MM,createFunctionApplyCall:iF,createArraySliceCall:Xv,createArrayConcatCall:Bre,createObjectDefinePropertyCall:Q0e,createObjectGetOwnPropertyDescriptorCall:CD,createReflectGetCall:J4,createReflectSetCall:M0e,createPropertyDescriptor:age,createCallBinding:Ht,createAssignmentTargetWrapper:Sr,inlineExpressions:_n,getInternalName:es,getLocalName:Ia,getExportName:Xc,getDeclarationName:bc,getNamespaceMemberName:qa,getExternalModuleOrNamespaceExportName:Cl,restoreOuterExpressions:D7,restoreEnclosingLabel:x7,createUseStrictPrologue:aA,copyPrologue:up,copyStandardPrologue:eB,copyCustomPrologue:hT,ensureUseStrict:sF,liftToBlock:MV,mergeLexicalEnvironment:YP,replaceModifiers:cge,replaceDecoratorsAndModifiers:vre,replacePropertyName:H0e};return X(NKe,j=>j(Be)),Be;function Fe(j,me){if(j===void 0||j===v)j=[];else if(IG(j)){if(me===void 0||j.hasTrailingComma===me)return j.transformFlags===void 0&&xKe(j),w.attachNodeArrayDebugInfo(j),j;let yr=j.slice();return yr.pos=j.pos,yr.end=j.end,yr.hasTrailingComma=me,yr.transformFlags=j.transformFlags,w.attachNodeArrayDebugInfo(yr),yr}let We=j.length,mt=We>=1&&We<=4?j.slice():j;return mt.pos=-1,mt.end=-1,mt.hasTrailingComma=!!me,mt.transformFlags=0,xKe(mt),w.attachNodeArrayDebugInfo(mt),mt}function Ne(j){return c.createBaseNode(j)}function Me(j){let me=Ne(j);return me.symbol=void 0,me.localSymbol=void 0,me}function De(j,me){return j!==me&&(j.typeArguments=me.typeArguments),uo(j,me)}function lt(j,me=0){let We=typeof j=="number"?j+"":j;w.assert(We.charCodeAt(0)!==45,"Negative numbers should be created in combination with createPrefixUnaryExpression");let mt=Me(9);return mt.text=We,mt.numericLiteralFlags=me,me&384&&(mt.transformFlags|=1024),mt}function Le(j){let me=Dr(10);return me.text=typeof j=="string"?j:AV(j)+"n",me.transformFlags|=32,me}function je(j,me){let We=Me(11);return We.text=j,We.singleQuote=me,We}function st(j,me,We){let mt=je(j,me);return mt.hasExtendedUnicodeEscape=We,We&&(mt.transformFlags|=1024),mt}function nt(j){let me=je(N2(j),void 0);return me.textSourceNode=j,me}function qe(j){let me=Dr(14);return me.text=j,me}function it(j,me){switch(j){case 9:return lt(me,0);case 10:return Le(me);case 11:return st(me,void 0);case 12:return CT(me,!1);case 13:return CT(me,!0);case 14:return qe(me);case 15:return ad(j,me,void 0,0)}}function It(j){let me=c.createBaseIdentifierNode(80);return me.escapedText=j,me.jsDoc=void 0,me.flowNode=void 0,me.symbol=void 0,me}function dt(j,me,We,mt){let yr=It(Dd(j));return fV(yr,{flags:me,id:whe,prefix:We,suffix:mt}),whe++,yr}function Tt(j,me,We){me===void 0&&j&&(me=Yn(j)),me===80&&(me=void 0);let mt=It(Dd(j));return We&&(mt.flags|=256),mt.escapedText==="await"&&(mt.transformFlags|=67108864),mt.flags&256&&(mt.transformFlags|=1024),mt}function St(j,me,We,mt){let yr=1;me&&(yr|=8);let zn=dt("",yr,We,mt);return j&&j(zn),zn}function He(j){let me=2;return j&&(me|=8),dt("",me,void 0,void 0)}function ht(j,me=0,We,mt){return w.assert(!(me&7),"Argument out of range: flags"),w.assert((me&48)!==32,"GeneratedIdentifierFlags.FileLevel cannot be set without also setting GeneratedIdentifierFlags.Optimistic"),dt(j,3|me,We,mt)}function Et(j,me=0,We,mt){w.assert(!(me&7),"Argument out of range: flags");let yr=j?eb(j)?aP(!1,We,j,mt,oo):`generated@${od(j)}`:"";(We||mt)&&(me|=16);let zn=dt(yr,4|me,We,mt);return zn.original=j,zn}function Kt(j){let me=c.createBasePrivateIdentifierNode(81);return me.escapedText=j,me.transformFlags|=16777216,me}function Nt(j){return uc(j,"#")||w.fail("First character of private identifier must be #: "+j),Kt(Dd(j))}function Lt(j,me,We,mt){let yr=Kt(Dd(j));return fV(yr,{flags:me,id:whe,prefix:We,suffix:mt}),whe++,yr}function kt(j,me,We){j&&!uc(j,"#")&&w.fail("First character of private identifier must be #: "+j);let mt=8|(j?3:1);return Lt(j??"",mt,me,We)}function Zt(j,me,We){let mt=eb(j)?aP(!0,me,j,We,oo):`#generated@${od(j)}`,zn=Lt(mt,4|(me||We?16:0),me,We);return zn.original=j,zn}function Dr(j){return c.createBaseTokenNode(j)}function jt(j){w.assert(j>=0&&j<=165,"Invalid token"),w.assert(j<=15||j>=18,"Invalid token. Use 'createTemplateLiteralLikeNode' to create template literals."),w.assert(j<=9||j>=15,"Invalid token. Use 'createLiteralLikeNode' to create literals."),w.assert(j!==80,"Invalid token. Use 'createIdentifier' to create identifiers");let me=Dr(j),We=0;switch(j){case 134:We=384;break;case 160:We=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:We=1;break;case 108:We=134218752,me.flowNode=void 0;break;case 126:We=1024;break;case 129:We=16777216;break;case 110:We=16384,me.flowNode=void 0;break}return We&&(me.transformFlags|=We),me}function mr(){return jt(108)}function Pt(){return jt(110)}function Vr(){return jt(106)}function Hr(){return jt(112)}function pr(){return jt(97)}function zr(j){return jt(j)}function $n(j){let me=[];return j&32&&me.push(zr(95)),j&128&&me.push(zr(138)),j&2048&&me.push(zr(90)),j&4096&&me.push(zr(87)),j&1&&me.push(zr(125)),j&2&&me.push(zr(123)),j&4&&me.push(zr(124)),j&64&&me.push(zr(128)),j&256&&me.push(zr(126)),j&16&&me.push(zr(164)),j&8&&me.push(zr(148)),j&512&&me.push(zr(129)),j&1024&&me.push(zr(134)),j&8192&&me.push(zr(103)),j&16384&&me.push(zr(147)),me.length?me:void 0}function bi(j,me){let We=Ne(166);return We.left=j,We.right=vm(me),We.transformFlags|=wo(We.left)|ete(We.right),We.flowNode=void 0,We}function Pi(j,me,We){return j.left!==me||j.right!==We?uo(bi(me,We),j):j}function Ns(j){let me=Ne(167);return me.expression=d().parenthesizeExpressionOfComputedPropertyName(j),me.transformFlags|=wo(me.expression)|1024|131072,me}function gi(j,me){return j.expression!==me?uo(Ns(me),j):j}function jn(j,me,We,mt){let yr=Me(168);return yr.modifiers=MA(j),yr.name=vm(me),yr.constraint=We,yr.default=mt,yr.transformFlags=1,yr.expression=void 0,yr.jsDoc=void 0,yr}function xs(j,me,We,mt,yr){return j.modifiers!==me||j.name!==We||j.constraint!==mt||j.default!==yr?uo(jn(me,We,mt,yr),j):j}function Bc(j,me,We,mt,yr,zn){let no=Me(169);return no.modifiers=MA(j),no.dotDotDotToken=me,no.name=vm(We),no.questionToken=mt,no.type=yr,no.initializer=_T(zn),vG(no.name)?no.transformFlags=1:no.transformFlags=mA(no.modifiers)|wo(no.dotDotDotToken)|Wx(no.name)|wo(no.questionToken)|wo(no.initializer)|(no.questionToken??no.type?1:0)|(no.dotDotDotToken??no.initializer?1024:0)|(kv(no.modifiers)&31?8192:0),no.jsDoc=void 0,no}function xi(j,me,We,mt,yr,zn,no){return j.modifiers!==me||j.dotDotDotToken!==We||j.name!==mt||j.questionToken!==yr||j.type!==zn||j.initializer!==no?uo(Bc(me,We,mt,yr,zn,no),j):j}function rc(j){let me=Ne(170);return me.expression=d().parenthesizeLeftSideOfAccess(j,!1),me.transformFlags|=wo(me.expression)|1|8192|33554432,me}function Wl(j,me){return j.expression!==me?uo(rc(me),j):j}function gl(j,me,We,mt){let yr=Me(171);return yr.modifiers=MA(j),yr.name=vm(me),yr.type=mt,yr.questionToken=We,yr.transformFlags=1,yr.initializer=void 0,yr.jsDoc=void 0,yr}function mc(j,me,We,mt,yr){return j.modifiers!==me||j.name!==We||j.questionToken!==mt||j.type!==yr?_s(gl(me,We,mt,yr),j):j}function _s(j,me){return j!==me&&(j.initializer=me.initializer),uo(j,me)}function Pu(j,me,We,mt,yr){let zn=Me(172);zn.modifiers=MA(j),zn.name=vm(me),zn.questionToken=We&&xG(We)?We:void 0,zn.exclamationToken=We&&cte(We)?We:void 0,zn.type=mt,zn.initializer=_T(yr);let no=zn.flags&33554432||kv(zn.modifiers)&128;return zn.transformFlags=mA(zn.modifiers)|Wx(zn.name)|wo(zn.initializer)|(no||zn.questionToken||zn.exclamationToken||zn.type?1:0)|(kg(zn.name)||kv(zn.modifiers)&256&&zn.initializer?8192:0)|16777216,zn.jsDoc=void 0,zn}function ir(j,me,We,mt,yr,zn){return j.modifiers!==me||j.name!==We||j.questionToken!==(mt!==void 0&&xG(mt)?mt:void 0)||j.exclamationToken!==(mt!==void 0&&cte(mt)?mt:void 0)||j.type!==yr||j.initializer!==zn?uo(Pu(me,We,mt,yr,zn),j):j}function ni(j,me,We,mt,yr,zn){let no=Me(173);return no.modifiers=MA(j),no.name=vm(me),no.questionToken=We,no.typeParameters=MA(mt),no.parameters=MA(yr),no.type=zn,no.transformFlags=1,no.jsDoc=void 0,no.locals=void 0,no.nextContainer=void 0,no.typeArguments=void 0,no}function gs(j,me,We,mt,yr,zn,no){return j.modifiers!==me||j.name!==We||j.questionToken!==mt||j.typeParameters!==yr||j.parameters!==zn||j.type!==no?De(ni(me,We,mt,yr,zn,no),j):j}function Hs(j,me,We,mt,yr,zn,no,Yl){let _p=Me(174);if(_p.modifiers=MA(j),_p.asteriskToken=me,_p.name=vm(We),_p.questionToken=mt,_p.exclamationToken=void 0,_p.typeParameters=MA(yr),_p.parameters=Fe(zn),_p.type=no,_p.body=Yl,!_p.body)_p.transformFlags=1;else{let Aw=kv(_p.modifiers)&1024,dw=!!_p.asteriskToken,mD=Aw&&dw;_p.transformFlags=mA(_p.modifiers)|wo(_p.asteriskToken)|Wx(_p.name)|wo(_p.questionToken)|mA(_p.typeParameters)|mA(_p.parameters)|wo(_p.type)|wo(_p.body)&-67108865|(mD?128:Aw?256:dw?2048:0)|(_p.questionToken||_p.typeParameters||_p.type?1:0)|1024}return _p.typeArguments=void 0,_p.jsDoc=void 0,_p.locals=void 0,_p.nextContainer=void 0,_p.flowNode=void 0,_p.endFlowNode=void 0,_p.returnFlowNode=void 0,_p}function za(j,me,We,mt,yr,zn,no,Yl,_p){return j.modifiers!==me||j.asteriskToken!==We||j.name!==mt||j.questionToken!==yr||j.typeParameters!==zn||j.parameters!==no||j.type!==Yl||j.body!==_p?nc(Hs(me,We,mt,yr,zn,no,Yl,_p),j):j}function nc(j,me){return j!==me&&(j.exclamationToken=me.exclamationToken),uo(j,me)}function Rc(j){let me=Me(175);return me.body=j,me.transformFlags=wo(j)|16777216,me.modifiers=void 0,me.jsDoc=void 0,me.locals=void 0,me.nextContainer=void 0,me.endFlowNode=void 0,me.returnFlowNode=void 0,me}function lg(j,me){return j.body!==me?ju(Rc(me),j):j}function ju(j,me){return j!==me&&(j.modifiers=me.modifiers),uo(j,me)}function Bi(j,me,We){let mt=Me(176);return mt.modifiers=MA(j),mt.parameters=Fe(me),mt.body=We,mt.transformFlags=mA(mt.modifiers)|mA(mt.parameters)|wo(mt.body)&-67108865|1024,mt.typeParameters=void 0,mt.type=void 0,mt.typeArguments=void 0,mt.jsDoc=void 0,mt.locals=void 0,mt.nextContainer=void 0,mt.endFlowNode=void 0,mt.returnFlowNode=void 0,mt}function vA(j,me,We,mt){return j.modifiers!==me||j.parameters!==We||j.body!==mt?kr(Bi(me,We,mt),j):j}function kr(j,me){return j!==me&&(j.typeParameters=me.typeParameters,j.type=me.type),De(j,me)}function en(j,me,We,mt,yr){let zn=Me(177);return zn.modifiers=MA(j),zn.name=vm(me),zn.parameters=Fe(We),zn.type=mt,zn.body=yr,zn.body?zn.transformFlags=mA(zn.modifiers)|Wx(zn.name)|mA(zn.parameters)|wo(zn.type)|wo(zn.body)&-67108865|(zn.type?1:0):zn.transformFlags=1,zn.typeArguments=void 0,zn.typeParameters=void 0,zn.jsDoc=void 0,zn.locals=void 0,zn.nextContainer=void 0,zn.flowNode=void 0,zn.endFlowNode=void 0,zn.returnFlowNode=void 0,zn}function ct(j,me,We,mt,yr,zn){return j.modifiers!==me||j.name!==We||j.parameters!==mt||j.type!==yr||j.body!==zn?rn(en(me,We,mt,yr,zn),j):j}function rn(j,me){return j!==me&&(j.typeParameters=me.typeParameters),De(j,me)}function wt(j,me,We,mt){let yr=Me(178);return yr.modifiers=MA(j),yr.name=vm(me),yr.parameters=Fe(We),yr.body=mt,yr.body?yr.transformFlags=mA(yr.modifiers)|Wx(yr.name)|mA(yr.parameters)|wo(yr.body)&-67108865|(yr.type?1:0):yr.transformFlags=1,yr.typeArguments=void 0,yr.typeParameters=void 0,yr.type=void 0,yr.jsDoc=void 0,yr.locals=void 0,yr.nextContainer=void 0,yr.flowNode=void 0,yr.endFlowNode=void 0,yr.returnFlowNode=void 0,yr}function br(j,me,We,mt,yr){return j.modifiers!==me||j.name!==We||j.parameters!==mt||j.body!==yr?Mt(wt(me,We,mt,yr),j):j}function Mt(j,me){return j!==me&&(j.typeParameters=me.typeParameters,j.type=me.type),De(j,me)}function _r(j,me,We){let mt=Me(179);return mt.typeParameters=MA(j),mt.parameters=MA(me),mt.type=We,mt.transformFlags=1,mt.jsDoc=void 0,mt.locals=void 0,mt.nextContainer=void 0,mt.typeArguments=void 0,mt}function Pr(j,me,We,mt){return j.typeParameters!==me||j.parameters!==We||j.type!==mt?De(_r(me,We,mt),j):j}function ti(j,me,We){let mt=Me(180);return mt.typeParameters=MA(j),mt.parameters=MA(me),mt.type=We,mt.transformFlags=1,mt.jsDoc=void 0,mt.locals=void 0,mt.nextContainer=void 0,mt.typeArguments=void 0,mt}function cr(j,me,We,mt){return j.typeParameters!==me||j.parameters!==We||j.type!==mt?De(ti(me,We,mt),j):j}function kn(j,me,We){let mt=Me(181);return mt.modifiers=MA(j),mt.parameters=MA(me),mt.type=We,mt.transformFlags=1,mt.jsDoc=void 0,mt.locals=void 0,mt.nextContainer=void 0,mt.typeArguments=void 0,mt}function Pn(j,me,We,mt){return j.parameters!==We||j.type!==mt||j.modifiers!==me?De(kn(me,We,mt),j):j}function an(j,me){let We=Ne(204);return We.type=j,We.literal=me,We.transformFlags=1,We}function Kr(j,me,We){return j.type!==me||j.literal!==We?uo(an(me,We),j):j}function wn(j){return jt(j)}function Pe(j,me,We){let mt=Ne(182);return mt.assertsModifier=j,mt.parameterName=vm(me),mt.type=We,mt.transformFlags=1,mt}function ar(j,me,We,mt){return j.assertsModifier!==me||j.parameterName!==We||j.type!==mt?uo(Pe(me,We,mt),j):j}function sn(j,me){let We=Ne(183);return We.typeName=vm(j),We.typeArguments=me&&d().parenthesizeTypeArguments(Fe(me)),We.transformFlags=1,We}function Qe(j,me,We){return j.typeName!==me||j.typeArguments!==We?uo(sn(me,We),j):j}function ur(j,me,We){let mt=Me(184);return mt.typeParameters=MA(j),mt.parameters=MA(me),mt.type=We,mt.transformFlags=1,mt.modifiers=void 0,mt.jsDoc=void 0,mt.locals=void 0,mt.nextContainer=void 0,mt.typeArguments=void 0,mt}function Re(j,me,We,mt){return j.typeParameters!==me||j.parameters!==We||j.type!==mt?Jt(ur(me,We,mt),j):j}function Jt(j,me){return j!==me&&(j.modifiers=me.modifiers),De(j,me)}function bt(...j){return j.length===4?Vt(...j):j.length===3?dn(...j):w.fail("Incorrect number of arguments specified.")}function Vt(j,me,We,mt){let yr=Me(185);return yr.modifiers=MA(j),yr.typeParameters=MA(me),yr.parameters=MA(We),yr.type=mt,yr.transformFlags=1,yr.jsDoc=void 0,yr.locals=void 0,yr.nextContainer=void 0,yr.typeArguments=void 0,yr}function dn(j,me,We){return Vt(void 0,j,me,We)}function On(...j){return j.length===5?Qn(...j):j.length===4?Ii(...j):w.fail("Incorrect number of arguments specified.")}function Qn(j,me,We,mt,yr){return j.modifiers!==me||j.typeParameters!==We||j.parameters!==mt||j.type!==yr?De(bt(me,We,mt,yr),j):j}function Ii(j,me,We,mt){return Qn(j,j.modifiers,me,We,mt)}function ds(j,me){let We=Ne(186);return We.exprName=j,We.typeArguments=me&&d().parenthesizeTypeArguments(me),We.transformFlags=1,We}function Es(j,me,We){return j.exprName!==me||j.typeArguments!==We?uo(ds(me,We),j):j}function so(j){let me=Me(187);return me.members=Fe(j),me.transformFlags=1,me}function Vi(j,me){return j.members!==me?uo(so(me),j):j}function xo(j){let me=Ne(188);return me.elementType=d().parenthesizeNonArrayTypeOfPostfixType(j),me.transformFlags=1,me}function Yc(j,me){return j.elementType!==me?uo(xo(me),j):j}function Il(j){let me=Ne(189);return me.elements=Fe(d().parenthesizeElementTypesOfTupleType(j)),me.transformFlags=1,me}function sa(j,me){return j.elements!==me?uo(Il(me),j):j}function Ra(j,me,We,mt){let yr=Me(202);return yr.dotDotDotToken=j,yr.name=me,yr.questionToken=We,yr.type=mt,yr.transformFlags=1,yr.jsDoc=void 0,yr}function ki(j,me,We,mt,yr){return j.dotDotDotToken!==me||j.name!==We||j.questionToken!==mt||j.type!==yr?uo(Ra(me,We,mt,yr),j):j}function Gs(j){let me=Ne(190);return me.type=d().parenthesizeTypeOfOptionalType(j),me.transformFlags=1,me}function ri(j,me){return j.type!==me?uo(Gs(me),j):j}function _u(j){let me=Ne(191);return me.type=j,me.transformFlags=1,me}function UA(j,me){return j.type!==me?uo(_u(me),j):j}function Hd(j,me,We){let mt=Ne(j);return mt.types=Be.createNodeArray(We(me)),mt.transformFlags=1,mt}function Gd(j,me,We){return j.types!==me?uo(Hd(j.kind,me,We),j):j}function Nl(j){return Hd(192,j,d().parenthesizeConstituentTypesOfUnionType)}function ug(j,me){return Gd(j,me,d().parenthesizeConstituentTypesOfUnionType)}function hf(j){return Hd(193,j,d().parenthesizeConstituentTypesOfIntersectionType)}function qc(j,me){return Gd(j,me,d().parenthesizeConstituentTypesOfIntersectionType)}function Lc(j,me,We,mt){let yr=Ne(194);return yr.checkType=d().parenthesizeCheckTypeOfConditionalType(j),yr.extendsType=d().parenthesizeExtendsTypeOfConditionalType(me),yr.trueType=We,yr.falseType=mt,yr.transformFlags=1,yr.locals=void 0,yr.nextContainer=void 0,yr}function jm(j,me,We,mt,yr){return j.checkType!==me||j.extendsType!==We||j.trueType!==mt||j.falseType!==yr?uo(Lc(me,We,mt,yr),j):j}function xf(j){let me=Ne(195);return me.typeParameter=j,me.transformFlags=1,me}function I0(j,me){return j.typeParameter!==me?uo(xf(me),j):j}function kI(j,me){let We=Ne(203);return We.head=j,We.templateSpans=Fe(me),We.transformFlags=1,We}function o_(j,me,We){return j.head!==me||j.templateSpans!==We?uo(kI(me,We),j):j}function Ug(j,me,We,mt,yr=!1){let zn=Ne(205);return zn.argument=j,zn.attributes=me,zn.assertions&&zn.assertions.assertClause&&zn.attributes&&(zn.assertions.assertClause=zn.attributes),zn.qualifier=We,zn.typeArguments=mt&&d().parenthesizeTypeArguments(mt),zn.isTypeOf=yr,zn.transformFlags=1,zn}function _f(j,me,We,mt,yr,zn=j.isTypeOf){return j.argument!==me||j.attributes!==We||j.qualifier!==mt||j.typeArguments!==yr||j.isTypeOf!==zn?uo(Ug(me,We,mt,yr,zn),j):j}function Yd(j){let me=Ne(196);return me.type=j,me.transformFlags=1,me}function qA(j,me){return j.type!==me?uo(Yd(me),j):j}function di(){let j=Ne(197);return j.transformFlags=1,j}function uI(j,me){let We=Ne(198);return We.operator=j,We.type=j===148?d().parenthesizeOperandOfReadonlyTypeOperator(me):d().parenthesizeOperandOfTypeOperator(me),We.transformFlags=1,We}function U0(j,me){return j.type!==me?uo(uI(j.operator,me),j):j}function K0(j,me){let We=Ne(199);return We.objectType=d().parenthesizeNonArrayTypeOfPostfixType(j),We.indexType=me,We.transformFlags=1,We}function Xb(j,me,We){return j.objectType!==me||j.indexType!==We?uo(K0(me,We),j):j}function nf(j,me,We,mt,yr,zn){let no=Me(200);return no.readonlyToken=j,no.typeParameter=me,no.nameType=We,no.questionToken=mt,no.type=yr,no.members=zn&&Fe(zn),no.transformFlags=1,no.locals=void 0,no.nextContainer=void 0,no}function GI(j,me,We,mt,yr,zn,no){return j.readonlyToken!==me||j.typeParameter!==We||j.nameType!==mt||j.questionToken!==yr||j.type!==zn||j.members!==no?uo(nf(me,We,mt,yr,zn,no),j):j}function yt(j){let me=Ne(201);return me.literal=j,me.transformFlags=1,me}function tt(j,me){return j.literal!==me?uo(yt(me),j):j}function gr(j){let me=Ne(206);return me.elements=Fe(j),me.transformFlags|=mA(me.elements)|1024|524288,me.transformFlags&32768&&(me.transformFlags|=65664),me}function mn(j,me){return j.elements!==me?uo(gr(me),j):j}function Ri(j){let me=Ne(207);return me.elements=Fe(j),me.transformFlags|=mA(me.elements)|1024|524288,me}function Yo(j,me){return j.elements!==me?uo(Ri(me),j):j}function fi(j,me,We,mt){let yr=Me(208);return yr.dotDotDotToken=j,yr.propertyName=vm(me),yr.name=vm(We),yr.initializer=_T(mt),yr.transformFlags|=wo(yr.dotDotDotToken)|Wx(yr.propertyName)|Wx(yr.name)|wo(yr.initializer)|(yr.dotDotDotToken?32768:0)|1024,yr.flowNode=void 0,yr}function Xo(j,me,We,mt,yr){return j.propertyName!==We||j.dotDotDotToken!==me||j.name!==mt||j.initializer!==yr?uo(fi(me,We,mt,yr),j):j}function _c(j,me){let We=Ne(209),mt=j&&zo(j),yr=Fe(j,mt&&tf(mt)?!0:void 0);return We.elements=d().parenthesizeExpressionsOfCommaDelimitedList(yr),We.multiLine=me,We.transformFlags|=mA(We.elements),We}function ic(j,me){return j.elements!==me?uo(_c(me,j.multiLine),j):j}function Pg(j,me){let We=Me(210);return We.properties=Fe(j),We.multiLine=me,We.transformFlags|=mA(We.properties),We.jsDoc=void 0,We}function sf(j,me){return j.properties!==me?uo(Pg(me,j.multiLine),j):j}function qC(j,me,We){let mt=Me(211);return mt.expression=j,mt.questionDotToken=me,mt.name=We,mt.transformFlags=wo(mt.expression)|wo(mt.questionDotToken)|(sr(mt.name)?ete(mt.name):wo(mt.name)|536870912),mt.jsDoc=void 0,mt.flowNode=void 0,mt}function Jf(j,me){let We=qC(d().parenthesizeLeftSideOfAccess(j,!1),void 0,vm(me));return eP(j)&&(We.transformFlags|=384),We}function Fm(j,me,We){return p5(j)?Zm(j,me,j.questionDotToken,ps(We,sr)):j.expression!==me||j.name!==We?uo(Jf(me,We),j):j}function of(j,me,We){let mt=qC(d().parenthesizeLeftSideOfAccess(j,!0),me,vm(We));return mt.flags|=64,mt.transformFlags|=32,mt}function Zm(j,me,We,mt){return w.assert(!!(j.flags&64),"Cannot update a PropertyAccessExpression using updatePropertyAccessChain. Use updatePropertyAccess instead."),j.expression!==me||j.questionDotToken!==We||j.name!==mt?uo(of(me,We,mt),j):j}function Jb(j,me,We){let mt=Me(212);return mt.expression=j,mt.questionDotToken=me,mt.argumentExpression=We,mt.transformFlags|=wo(mt.expression)|wo(mt.questionDotToken)|wo(mt.argumentExpression),mt.jsDoc=void 0,mt.flowNode=void 0,mt}function FI(j,me){let We=Jb(d().parenthesizeLeftSideOfAccess(j,!1),void 0,HV(me));return eP(j)&&(We.transformFlags|=384),We}function $C(j,me,We){return IX(j)?qt(j,me,j.questionDotToken,We):j.expression!==me||j.argumentExpression!==We?uo(FI(me,We),j):j}function H2(j,me,We){let mt=Jb(d().parenthesizeLeftSideOfAccess(j,!0),me,HV(We));return mt.flags|=64,mt.transformFlags|=32,mt}function qt(j,me,We,mt){return w.assert(!!(j.flags&64),"Cannot update a ElementAccessExpression using updateElementAccessChain. Use updateElementAccess instead."),j.expression!==me||j.questionDotToken!==We||j.argumentExpression!==mt?uo(H2(me,We,mt),j):j}function Fn(j,me,We,mt){let yr=Me(213);return yr.expression=j,yr.questionDotToken=me,yr.typeArguments=We,yr.arguments=mt,yr.transformFlags|=wo(yr.expression)|wo(yr.questionDotToken)|mA(yr.typeArguments)|mA(yr.arguments),yr.typeArguments&&(yr.transformFlags|=1),M0(yr.expression)&&(yr.transformFlags|=16384),yr}function Bs(j,me,We){let mt=Fn(d().parenthesizeLeftSideOfAccess(j,!1),void 0,MA(me),d().parenthesizeExpressionsOfCommaDelimitedList(Fe(We)));return L6(mt.expression)&&(mt.transformFlags|=8388608),mt}function Rl(j,me,We,mt){return fG(j)?OA(j,me,j.questionDotToken,We,mt):j.expression!==me||j.typeArguments!==We||j.arguments!==mt?uo(Bs(me,We,mt),j):j}function SA(j,me,We,mt){let yr=Fn(d().parenthesizeLeftSideOfAccess(j,!0),me,MA(We),d().parenthesizeExpressionsOfCommaDelimitedList(Fe(mt)));return yr.flags|=64,yr.transformFlags|=32,yr}function OA(j,me,We,mt,yr){return w.assert(!!(j.flags&64),"Cannot update a CallExpression using updateCallChain. Use updateCall instead."),j.expression!==me||j.questionDotToken!==We||j.typeArguments!==mt||j.arguments!==yr?uo(SA(me,We,mt,yr),j):j}function JI(j,me,We){let mt=Me(214);return mt.expression=d().parenthesizeExpressionOfNew(j),mt.typeArguments=MA(me),mt.arguments=We?d().parenthesizeExpressionsOfCommaDelimitedList(We):void 0,mt.transformFlags|=wo(mt.expression)|mA(mt.typeArguments)|mA(mt.arguments)|32,mt.typeArguments&&(mt.transformFlags|=1),mt}function Em(j,me,We,mt){return j.expression!==me||j.typeArguments!==We||j.arguments!==mt?uo(JI(me,We,mt),j):j}function np(j,me,We){let mt=Ne(215);return mt.tag=d().parenthesizeLeftSideOfAccess(j,!1),mt.typeArguments=MA(me),mt.template=We,mt.transformFlags|=wo(mt.tag)|mA(mt.typeArguments)|wo(mt.template)|1024,mt.typeArguments&&(mt.transformFlags|=1),Nme(mt.template)&&(mt.transformFlags|=128),mt}function Xd(j,me,We,mt){return j.tag!==me||j.typeArguments!==We||j.template!==mt?uo(np(me,We,mt),j):j}function _C(j,me){let We=Ne(216);return We.expression=d().parenthesizeOperandOfPrefixUnary(me),We.type=j,We.transformFlags|=wo(We.expression)|wo(We.type)|1,We}function Ub(j,me,We){return j.type!==me||j.expression!==We?uo(_C(me,We),j):j}function pT(j){let me=Ne(217);return me.expression=j,me.transformFlags=wo(me.expression),me.jsDoc=void 0,me}function Y2(j,me){return j.expression!==me?uo(pT(me),j):j}function gb(j,me,We,mt,yr,zn,no){let Yl=Me(218);Yl.modifiers=MA(j),Yl.asteriskToken=me,Yl.name=vm(We),Yl.typeParameters=MA(mt),Yl.parameters=Fe(yr),Yl.type=zn,Yl.body=no;let _p=kv(Yl.modifiers)&1024,Aw=!!Yl.asteriskToken,dw=_p&&Aw;return Yl.transformFlags=mA(Yl.modifiers)|wo(Yl.asteriskToken)|Wx(Yl.name)|mA(Yl.typeParameters)|mA(Yl.parameters)|wo(Yl.type)|wo(Yl.body)&-67108865|(dw?128:_p?256:Aw?2048:0)|(Yl.typeParameters||Yl.type?1:0)|4194304,Yl.typeArguments=void 0,Yl.jsDoc=void 0,Yl.locals=void 0,Yl.nextContainer=void 0,Yl.flowNode=void 0,Yl.endFlowNode=void 0,Yl.returnFlowNode=void 0,Yl}function WB(j,me,We,mt,yr,zn,no,Yl){return j.name!==mt||j.modifiers!==me||j.asteriskToken!==We||j.typeParameters!==yr||j.parameters!==zn||j.type!==no||j.body!==Yl?De(gb(me,We,mt,yr,zn,no,Yl),j):j}function X2(j,me,We,mt,yr,zn){let no=Me(219);no.modifiers=MA(j),no.typeParameters=MA(me),no.parameters=Fe(We),no.type=mt,no.equalsGreaterThanToken=yr??jt(39),no.body=d().parenthesizeConciseBodyOfArrowFunction(zn);let Yl=kv(no.modifiers)&1024;return no.transformFlags=mA(no.modifiers)|mA(no.typeParameters)|mA(no.parameters)|wo(no.type)|wo(no.equalsGreaterThanToken)|wo(no.body)&-67108865|(no.typeParameters||no.type?1:0)|(Yl?16640:0)|1024,no.typeArguments=void 0,no.jsDoc=void 0,no.locals=void 0,no.nextContainer=void 0,no.flowNode=void 0,no.endFlowNode=void 0,no.returnFlowNode=void 0,no}function lD(j,me,We,mt,yr,zn,no){return j.modifiers!==me||j.typeParameters!==We||j.parameters!==mt||j.type!==yr||j.equalsGreaterThanToken!==zn||j.body!==no?De(X2(me,We,mt,yr,zn,no),j):j}function uD(j){let me=Ne(220);return me.expression=d().parenthesizeOperandOfPrefixUnary(j),me.transformFlags|=wo(me.expression),me}function Ab(j,me){return j.expression!==me?uo(uD(me),j):j}function em(j){let me=Ne(221);return me.expression=d().parenthesizeOperandOfPrefixUnary(j),me.transformFlags|=wo(me.expression),me}function gD(j,me){return j.expression!==me?uo(em(me),j):j}function Kb(j){let me=Ne(222);return me.expression=d().parenthesizeOperandOfPrefixUnary(j),me.transformFlags|=wo(me.expression),me}function LN(j,me){return j.expression!==me?uo(Kb(me),j):j}function J2(j){let me=Ne(223);return me.expression=d().parenthesizeOperandOfPrefixUnary(j),me.transformFlags|=wo(me.expression)|256|128|2097152,me}function rt(j,me){return j.expression!==me?uo(J2(me),j):j}function qr(j,me){let We=Ne(224);return We.operator=j,We.operand=d().parenthesizeOperandOfPrefixUnary(me),We.transformFlags|=wo(We.operand),(j===46||j===47)&&sr(We.operand)&&!Cp(We.operand)&&!VG(We.operand)&&(We.transformFlags|=268435456),We}function Mn(j,me){return j.operand!==me?uo(qr(j.operator,me),j):j}function Jn(j,me){let We=Ne(225);return We.operator=me,We.operand=d().parenthesizeOperandOfPostfixUnary(j),We.transformFlags|=wo(We.operand),sr(We.operand)&&!Cp(We.operand)&&!VG(We.operand)&&(We.transformFlags|=268435456),We}function cs(j,me){return j.operand!==me?uo(Jn(me,j.operator),j):j}function Zs(j,me,We){let mt=Me(226),yr=XP(me),zn=yr.kind;return mt.left=d().parenthesizeLeftSideOfBinary(zn,j),mt.operatorToken=yr,mt.right=d().parenthesizeRightSideOfBinary(zn,mt.left,We),mt.transformFlags|=wo(mt.left)|wo(mt.operatorToken)|wo(mt.right),zn===61?mt.transformFlags|=32:zn===64?ru(mt.left)?mt.transformFlags|=5248|qo(mt.left):Cf(mt.left)&&(mt.transformFlags|=5120|qo(mt.left)):zn===43||zn===68?mt.transformFlags|=512:o6(zn)&&(mt.transformFlags|=16),zn===103&&Gc(mt.left)&&(mt.transformFlags|=536870912),mt.jsDoc=void 0,mt}function qo(j){return Khe(j)?65536:0}function Ja(j,me,We,mt){return j.left!==me||j.operatorToken!==We||j.right!==mt?uo(Zs(me,We,mt),j):j}function Ge(j,me,We,mt,yr){let zn=Ne(227);return zn.condition=d().parenthesizeConditionOfConditionalExpression(j),zn.questionToken=me??jt(58),zn.whenTrue=d().parenthesizeBranchOfConditionalExpression(We),zn.colonToken=mt??jt(59),zn.whenFalse=d().parenthesizeBranchOfConditionalExpression(yr),zn.transformFlags|=wo(zn.condition)|wo(zn.questionToken)|wo(zn.whenTrue)|wo(zn.colonToken)|wo(zn.whenFalse),zn}function Yt(j,me,We,mt,yr,zn){return j.condition!==me||j.questionToken!==We||j.whenTrue!==mt||j.colonToken!==yr||j.whenFalse!==zn?uo(Ge(me,We,mt,yr,zn),j):j}function En(j,me){let We=Ne(228);return We.head=j,We.templateSpans=Fe(me),We.transformFlags|=wo(We.head)|mA(We.templateSpans)|1024,We}function Rs(j,me,We){return j.head!==me||j.templateSpans!==We?uo(En(me,We),j):j}function yc(j,me,We,mt=0){w.assert(!(mt&-7177),"Unsupported template flags.");let yr;if(We!==void 0&&We!==me&&(yr=XNt(j,We),typeof yr=="object"))return w.fail("Invalid raw text");if(me===void 0){if(yr===void 0)return w.fail("Arguments 'text' and 'rawText' may not both be undefined.");me=yr}else yr!==void 0&&w.assert(me===yr,"Expected argument 'text' to be the normalized (i.e. 'cooked') version of argument 'rawText'.");return me}function Cu(j){let me=1024;return j&&(me|=128),me}function Pl(j,me,We,mt){let yr=Dr(j);return yr.text=me,yr.rawText=We,yr.templateFlags=mt&7176,yr.transformFlags=Cu(yr.templateFlags),yr}function Bu(j,me,We,mt){let yr=Me(j);return yr.text=me,yr.rawText=We,yr.templateFlags=mt&7176,yr.transformFlags=Cu(yr.templateFlags),yr}function ad(j,me,We,mt){return j===15?Bu(j,me,We,mt):Pl(j,me,We,mt)}function oA(j,me,We){return j=yc(16,j,me,We),ad(16,j,me,We)}function gI(j,me,We){return j=yc(16,j,me,We),ad(17,j,me,We)}function PB(j,me,We){return j=yc(16,j,me,We),ad(18,j,me,We)}function nw(j,me,We){return j=yc(16,j,me,We),Bu(15,j,me,We)}function AD(j,me){w.assert(!j||!!me,"A `YieldExpression` with an asteriskToken must have an expression.");let We=Ne(229);return We.expression=me&&d().parenthesizeExpressionForDisallowedComma(me),We.asteriskToken=j,We.transformFlags|=wo(We.expression)|wo(We.asteriskToken)|1024|128|1048576,We}function qx(j,me,We){return j.expression!==We||j.asteriskToken!==me?uo(AD(me,We),j):j}function YZ(j){let me=Ne(230);return me.expression=d().parenthesizeExpressionForDisallowedComma(j),me.transformFlags|=wo(me.expression)|1024|32768,me}function $x(j,me){return j.expression!==me?uo(YZ(me),j):j}function OB(j,me,We,mt,yr){let zn=Me(231);return zn.modifiers=MA(j),zn.name=vm(me),zn.typeParameters=MA(We),zn.heritageClauses=MA(mt),zn.members=Fe(yr),zn.transformFlags|=mA(zn.modifiers)|Wx(zn.name)|mA(zn.typeParameters)|mA(zn.heritageClauses)|mA(zn.members)|(zn.typeParameters?1:0)|1024,zn.jsDoc=void 0,zn}function U2(j,me,We,mt,yr,zn){return j.modifiers!==me||j.name!==We||j.typeParameters!==mt||j.heritageClauses!==yr||j.members!==zn?uo(OB(me,We,mt,yr,zn),j):j}function ip(){return Ne(232)}function Z_(j,me){let We=Ne(233);return We.expression=d().parenthesizeLeftSideOfAccess(j,!1),We.typeArguments=me&&d().parenthesizeTypeArguments(me),We.transformFlags|=wo(We.expression)|mA(We.typeArguments)|1024,We}function j0(j,me,We){return j.expression!==me||j.typeArguments!==We?uo(Z_(me,We),j):j}function iw(j,me){let We=Ne(234);return We.expression=j,We.type=me,We.transformFlags|=wo(We.expression)|wo(We.type)|1,We}function XZ(j,me,We){return j.expression!==me||j.type!==We?uo(iw(me,We),j):j}function HG(j){let me=Ne(235);return me.expression=d().parenthesizeLeftSideOfAccess(j,!1),me.transformFlags|=wo(me.expression)|1,me}function kV(j,me){return p8(j)?EP(j,me):j.expression!==me?uo(HG(me),j):j}function Pv(j,me){let We=Ne(238);return We.expression=j,We.type=me,We.transformFlags|=wo(We.expression)|wo(We.type)|1,We}function GV(j,me,We){return j.expression!==me||j.type!==We?uo(Pv(me,We),j):j}function Ov(j){let me=Ne(235);return me.flags|=64,me.expression=d().parenthesizeLeftSideOfAccess(j,!0),me.transformFlags|=wo(me.expression)|1,me}function EP(j,me){return w.assert(!!(j.flags&64),"Cannot update a NonNullExpression using updateNonNullChain. Use updateNonNullExpression instead."),j.expression!==me?uo(Ov(me),j):j}function fT(j,me){let We=Ne(236);switch(We.keywordToken=j,We.name=me,We.transformFlags|=wo(We.name),j){case 105:We.transformFlags|=1024;break;case 102:We.transformFlags|=32;break;default:return w.assertNever(j)}return We.flowNode=void 0,We}function K2(j,me){return j.name!==me?uo(fT(j.keywordToken,me),j):j}function YG(j,me){let We=Ne(239);return We.expression=j,We.literal=me,We.transformFlags|=wo(We.expression)|wo(We.literal)|1024,We}function rr(j,me,We){return j.expression!==me||j.literal!==We?uo(YG(me,We),j):j}function Tr(){let j=Ne(240);return j.transformFlags|=1024,j}function xn(j,me){let We=Ne(241);return We.statements=Fe(j),We.multiLine=me,We.transformFlags|=mA(We.statements),We.jsDoc=void 0,We.locals=void 0,We.nextContainer=void 0,We}function ci(j,me){return j.statements!==me?uo(xn(me,j.multiLine),j):j}function Wi(j,me){let We=Ne(243);return We.modifiers=MA(j),We.declarationList=Na(me)?jb(me):me,We.transformFlags|=mA(We.modifiers)|wo(We.declarationList),kv(We.modifiers)&128&&(We.transformFlags=1),We.jsDoc=void 0,We.flowNode=void 0,We}function zs(j,me,We){return j.modifiers!==me||j.declarationList!==We?uo(Wi(me,We),j):j}function zi(){let j=Ne(242);return j.jsDoc=void 0,j}function mo(j){let me=Ne(244);return me.expression=d().parenthesizeExpressionOfExpressionStatement(j),me.transformFlags|=wo(me.expression),me.jsDoc=void 0,me.flowNode=void 0,me}function vc(j,me){return j.expression!==me?uo(mo(me),j):j}function Io(j,me,We){let mt=Ne(245);return mt.expression=j,mt.thenStatement=nk(me),mt.elseStatement=nk(We),mt.transformFlags|=wo(mt.expression)|wo(mt.thenStatement)|wo(mt.elseStatement),mt.jsDoc=void 0,mt.flowNode=void 0,mt}function ac(j,me,We,mt){return j.expression!==me||j.thenStatement!==We||j.elseStatement!==mt?uo(Io(me,We,mt),j):j}function Ws(j,me){let We=Ne(246);return We.statement=nk(j),We.expression=me,We.transformFlags|=wo(We.statement)|wo(We.expression),We.jsDoc=void 0,We.flowNode=void 0,We}function nu(j,me,We){return j.statement!==me||j.expression!==We?uo(Ws(me,We),j):j}function Yg(j,me){let We=Ne(247);return We.expression=j,We.statement=nk(me),We.transformFlags|=wo(We.expression)|wo(We.statement),We.jsDoc=void 0,We.flowNode=void 0,We}function zm(j,me,We){return j.expression!==me||j.statement!==We?uo(Yg(me,We),j):j}function C0(j,me,We,mt){let yr=Ne(248);return yr.initializer=j,yr.condition=me,yr.incrementor=We,yr.statement=nk(mt),yr.transformFlags|=wo(yr.initializer)|wo(yr.condition)|wo(yr.incrementor)|wo(yr.statement),yr.jsDoc=void 0,yr.locals=void 0,yr.nextContainer=void 0,yr.flowNode=void 0,yr}function Qv(j,me,We,mt,yr){return j.initializer!==me||j.condition!==We||j.incrementor!==mt||j.statement!==yr?uo(C0(me,We,mt,yr),j):j}function JZ(j,me,We){let mt=Ne(249);return mt.initializer=j,mt.expression=me,mt.statement=nk(We),mt.transformFlags|=wo(mt.initializer)|wo(mt.expression)|wo(mt.statement),mt.jsDoc=void 0,mt.locals=void 0,mt.nextContainer=void 0,mt.flowNode=void 0,mt}function Mv(j,me,We,mt){return j.initializer!==me||j.expression!==We||j.statement!==mt?uo(JZ(me,We,mt),j):j}function I7(j,me,We,mt){let yr=Ne(250);return yr.awaitModifier=j,yr.initializer=me,yr.expression=d().parenthesizeExpressionForDisallowedComma(We),yr.statement=nk(mt),yr.transformFlags|=wo(yr.awaitModifier)|wo(yr.initializer)|wo(yr.expression)|wo(yr.statement)|1024,j&&(yr.transformFlags|=128),yr.jsDoc=void 0,yr.locals=void 0,yr.nextContainer=void 0,yr.flowNode=void 0,yr}function sre(j,me,We,mt,yr){return j.awaitModifier!==me||j.initializer!==We||j.expression!==mt||j.statement!==yr?uo(I7(me,We,mt,yr),j):j}function C7(j){let me=Ne(251);return me.label=vm(j),me.transformFlags|=wo(me.label)|4194304,me.jsDoc=void 0,me.flowNode=void 0,me}function DM(j,me){return j.label!==me?uo(C7(me),j):j}function BP(j){let me=Ne(252);return me.label=vm(j),me.transformFlags|=wo(me.label)|4194304,me.jsDoc=void 0,me.flowNode=void 0,me}function vP(j,me){return j.label!==me?uo(BP(me),j):j}function SP(j){let me=Ne(253);return me.expression=j,me.transformFlags|=wo(me.expression)|128|4194304,me.jsDoc=void 0,me.flowNode=void 0,me}function D4(j,me){return j.expression!==me?uo(SP(me),j):j}function UZ(j,me){let We=Ne(254);return We.expression=j,We.statement=nk(me),We.transformFlags|=wo(We.expression)|wo(We.statement),We.jsDoc=void 0,We.flowNode=void 0,We}function xM(j,me,We){return j.expression!==me||j.statement!==We?uo(UZ(me,We),j):j}function ek(j,me){let We=Ne(255);return We.expression=d().parenthesizeExpressionForDisallowedComma(j),We.caseBlock=me,We.transformFlags|=wo(We.expression)|wo(We.caseBlock),We.jsDoc=void 0,We.flowNode=void 0,We.possiblyExhaustive=!1,We}function kM(j,me,We){return j.expression!==me||j.caseBlock!==We?uo(ek(me,We),j):j}function KA(j,me){let We=Ne(256);return We.label=vm(j),We.statement=nk(me),We.transformFlags|=wo(We.label)|wo(We.statement),We.jsDoc=void 0,We.flowNode=void 0,We}function x4(j,me,We){return j.label!==me||j.statement!==We?uo(KA(me,We),j):j}function k4(j){let me=Ne(257);return me.expression=j,me.transformFlags|=wo(me.expression),me.jsDoc=void 0,me.flowNode=void 0,me}function wP(j,me){return j.expression!==me?uo(k4(me),j):j}function XG(j,me,We){let mt=Ne(258);return mt.tryBlock=j,mt.catchClause=me,mt.finallyBlock=We,mt.transformFlags|=wo(mt.tryBlock)|wo(mt.catchClause)|wo(mt.finallyBlock),mt.jsDoc=void 0,mt.flowNode=void 0,mt}function VN(j,me,We,mt){return j.tryBlock!==me||j.catchClause!==We||j.finallyBlock!==mt?uo(XG(me,We,mt),j):j}function QB(){let j=Ne(259);return j.jsDoc=void 0,j.flowNode=void 0,j}function db(j,me,We,mt){let yr=Me(260);return yr.name=vm(j),yr.exclamationToken=me,yr.type=We,yr.initializer=_T(mt),yr.transformFlags|=Wx(yr.name)|wo(yr.initializer)|(yr.exclamationToken??yr.type?1:0),yr.jsDoc=void 0,yr}function YE(j,me,We,mt,yr){return j.name!==me||j.type!==mt||j.exclamationToken!==We||j.initializer!==yr?uo(db(me,We,mt,yr),j):j}function jb(j,me=0){let We=Ne(261);return We.flags|=me&7,We.declarations=Fe(j),We.transformFlags|=mA(We.declarations)|4194304,me&7&&(We.transformFlags|=263168),me&4&&(We.transformFlags|=4),We}function KZ(j,me){return j.declarations!==me?uo(jb(me,j.flags),j):j}function m7(j,me,We,mt,yr,zn,no){let Yl=Me(262);if(Yl.modifiers=MA(j),Yl.asteriskToken=me,Yl.name=vm(We),Yl.typeParameters=MA(mt),Yl.parameters=Fe(yr),Yl.type=zn,Yl.body=no,!Yl.body||kv(Yl.modifiers)&128)Yl.transformFlags=1;else{let _p=kv(Yl.modifiers)&1024,Aw=!!Yl.asteriskToken,dw=_p&&Aw;Yl.transformFlags=mA(Yl.modifiers)|wo(Yl.asteriskToken)|Wx(Yl.name)|mA(Yl.typeParameters)|mA(Yl.parameters)|wo(Yl.type)|wo(Yl.body)&-67108865|(dw?128:_p?256:Aw?2048:0)|(Yl.typeParameters||Yl.type?1:0)|4194304}return Yl.typeArguments=void 0,Yl.jsDoc=void 0,Yl.locals=void 0,Yl.nextContainer=void 0,Yl.endFlowNode=void 0,Yl.returnFlowNode=void 0,Yl}function h7(j,me,We,mt,yr,zn,no,Yl){return j.modifiers!==me||j.asteriskToken!==We||j.name!==mt||j.typeParameters!==yr||j.parameters!==zn||j.type!==no||j.body!==Yl?TP(m7(me,We,mt,yr,zn,no,Yl),j):j}function TP(j,me){return j!==me&&j.modifiers===me.modifiers&&(j.modifiers=me.modifiers),De(j,me)}function jZ(j,me,We,mt,yr){let zn=Me(263);return zn.modifiers=MA(j),zn.name=vm(me),zn.typeParameters=MA(We),zn.heritageClauses=MA(mt),zn.members=Fe(yr),kv(zn.modifiers)&128?zn.transformFlags=1:(zn.transformFlags|=mA(zn.modifiers)|Wx(zn.name)|mA(zn.typeParameters)|mA(zn.heritageClauses)|mA(zn.members)|(zn.typeParameters?1:0)|1024,zn.transformFlags&8192&&(zn.transformFlags|=1)),zn.jsDoc=void 0,zn}function NP(j,me,We,mt,yr,zn){return j.modifiers!==me||j.name!==We||j.typeParameters!==mt||j.heritageClauses!==yr||j.members!==zn?uo(jZ(me,We,mt,yr,zn),j):j}function _7(j,me,We,mt,yr){let zn=Me(264);return zn.modifiers=MA(j),zn.name=vm(me),zn.typeParameters=MA(We),zn.heritageClauses=MA(mt),zn.members=Fe(yr),zn.transformFlags=1,zn.jsDoc=void 0,zn}function Bm(j,me,We,mt,yr,zn){return j.modifiers!==me||j.name!==We||j.typeParameters!==mt||j.heritageClauses!==yr||j.members!==zn?uo(_7(me,We,mt,yr,zn),j):j}function zZ(j,me,We,mt){let yr=Me(265);return yr.modifiers=MA(j),yr.name=vm(me),yr.typeParameters=MA(We),yr.type=mt,yr.transformFlags=1,yr.jsDoc=void 0,yr.locals=void 0,yr.nextContainer=void 0,yr}function y7(j,me,We,mt,yr){return j.modifiers!==me||j.name!==We||j.typeParameters!==mt||j.type!==yr?uo(zZ(me,We,mt,yr),j):j}function IT(j,me,We){let mt=Me(266);return mt.modifiers=MA(j),mt.name=vm(me),mt.members=Fe(We),mt.transformFlags|=mA(mt.modifiers)|wo(mt.name)|mA(mt.members)|1,mt.transformFlags&=-67108865,mt.jsDoc=void 0,mt}function G4(j,me,We,mt){return j.modifiers!==me||j.name!==We||j.members!==mt?uo(IT(me,We,mt),j):j}function fr(j,me,We,mt=0){let yr=Me(267);return yr.modifiers=MA(j),yr.flags|=mt&2088,yr.name=me,yr.body=We,kv(yr.modifiers)&128?yr.transformFlags=1:yr.transformFlags|=mA(yr.modifiers)|wo(yr.name)|wo(yr.body)|1,yr.transformFlags&=-67108865,yr.jsDoc=void 0,yr.locals=void 0,yr.nextContainer=void 0,yr}function sw(j,me,We,mt){return j.modifiers!==me||j.name!==We||j.body!==mt?uo(fr(me,We,mt,j.flags),j):j}function qm(j){let me=Ne(268);return me.statements=Fe(j),me.transformFlags|=mA(me.statements),me.jsDoc=void 0,me}function RP(j,me){return j.statements!==me?uo(qm(me),j):j}function dD(j){let me=Ne(269);return me.clauses=Fe(j),me.transformFlags|=mA(me.clauses),me.locals=void 0,me.nextContainer=void 0,me}function MB(j,me){return j.clauses!==me?uo(dD(me),j):j}function WN(j){let me=Me(270);return me.name=vm(j),me.transformFlags|=ete(me.name)|1,me.modifiers=void 0,me.jsDoc=void 0,me}function JG(j,me){return j.name!==me?ege(WN(me),j):j}function ege(j,me){return j!==me&&(j.modifiers=me.modifiers),uo(j,me)}function wA(j,me,We,mt){let yr=Me(271);return yr.modifiers=MA(j),yr.name=vm(We),yr.isTypeOnly=me,yr.moduleReference=mt,yr.transformFlags|=mA(yr.modifiers)|ete(yr.name)|wo(yr.moduleReference),ZG(yr.moduleReference)||(yr.transformFlags|=1),yr.transformFlags&=-67108865,yr.jsDoc=void 0,yr}function ow(j,me,We,mt,yr){return j.modifiers!==me||j.isTypeOnly!==We||j.name!==mt||j.moduleReference!==yr?uo(wA(me,We,mt,yr),j):j}function GM(j,me,We,mt){let yr=Ne(272);return yr.modifiers=MA(j),yr.importClause=me,yr.moduleSpecifier=We,yr.attributes=yr.assertClause=mt,yr.transformFlags|=wo(yr.importClause)|wo(yr.moduleSpecifier),yr.transformFlags&=-67108865,yr.jsDoc=void 0,yr}function F4(j,me,We,mt,yr){return j.modifiers!==me||j.importClause!==We||j.moduleSpecifier!==mt||j.attributes!==yr?uo(GM(me,We,mt,yr),j):j}function Z4(j,me,We){let mt=Me(273);return mt.isTypeOnly=j,mt.name=me,mt.namedBindings=We,mt.transformFlags|=wo(mt.name)|wo(mt.namedBindings),j&&(mt.transformFlags|=1),mt.transformFlags&=-67108865,mt}function DP(j,me,We,mt){return j.isTypeOnly!==me||j.name!==We||j.namedBindings!==mt?uo(Z4(me,We,mt),j):j}function UG(j,me){let We=Ne(300);return We.elements=Fe(j),We.multiLine=me,We.token=132,We.transformFlags|=4,We}function KG(j,me,We){return j.elements!==me||j.multiLine!==We?uo(UG(me,We),j):j}function xP(j,me){let We=Ne(301);return We.name=j,We.value=me,We.transformFlags|=4,We}function j2(j,me,We){return j.name!==me||j.value!==We?uo(xP(me,We),j):j}function M1(j,me){let We=Ne(302);return We.assertClause=j,We.multiLine=me,We}function qZ(j,me,We){return j.assertClause!==me||j.multiLine!==We?uo(M1(me,We),j):j}function $Z(j,me,We){let mt=Ne(300);return mt.token=We??118,mt.elements=Fe(j),mt.multiLine=me,mt.transformFlags|=4,mt}function al(j,me,We){return j.elements!==me||j.multiLine!==We?uo($Z(me,We,j.token),j):j}function Jo(j,me){let We=Ne(301);return We.name=j,We.value=me,We.transformFlags|=4,We}function L_(j,me,We){return j.name!==me||j.value!==We?uo(Jo(me,We),j):j}function ore(j){let me=Me(274);return me.name=j,me.transformFlags|=wo(me.name),me.transformFlags&=-67108865,me}function aw(j,me){return j.name!==me?uo(ore(me),j):j}function b7(j){let me=Me(280);return me.name=j,me.transformFlags|=wo(me.name)|32,me.transformFlags&=-67108865,me}function pD(j,me){return j.name!==me?uo(b7(me),j):j}function eL(j){let me=Ne(275);return me.elements=Fe(j),me.transformFlags|=mA(me.elements),me.transformFlags&=-67108865,me}function jG(j,me){return j.elements!==me?uo(eL(me),j):j}function are(j,me,We){let mt=Me(276);return mt.isTypeOnly=j,mt.propertyName=me,mt.name=We,mt.transformFlags|=wo(mt.propertyName)|wo(mt.name),mt.transformFlags&=-67108865,mt}function kP(j,me,We,mt){return j.isTypeOnly!==me||j.propertyName!==We||j.name!==mt?uo(are(me,We,mt),j):j}function H1(j,me,We){let mt=Me(277);return mt.modifiers=MA(j),mt.isExportEquals=me,mt.expression=me?d().parenthesizeRightSideOfBinary(64,void 0,We):d().parenthesizeExpressionOfExportDefault(We),mt.transformFlags|=mA(mt.modifiers)|wo(mt.expression),mt.transformFlags&=-67108865,mt.jsDoc=void 0,mt}function FM(j,me,We){return j.modifiers!==me||j.expression!==We?uo(H1(me,j.isExportEquals,We),j):j}function xp(j,me,We,mt,yr){let zn=Me(278);return zn.modifiers=MA(j),zn.isTypeOnly=me,zn.exportClause=We,zn.moduleSpecifier=mt,zn.attributes=zn.assertClause=yr,zn.transformFlags|=mA(zn.modifiers)|wo(zn.exportClause)|wo(zn.moduleSpecifier),zn.transformFlags&=-67108865,zn.jsDoc=void 0,zn}function tk(j,me,We,mt,yr,zn){return j.modifiers!==me||j.isTypeOnly!==We||j.exportClause!==mt||j.moduleSpecifier!==yr||j.attributes!==zn?cre(xp(me,We,mt,yr,zn),j):j}function cre(j,me){return j!==me&&j.modifiers===me.modifiers&&(j.modifiers=me.modifiers),uo(j,me)}function L4(j){let me=Ne(279);return me.elements=Fe(j),me.transformFlags|=mA(me.elements),me.transformFlags&=-67108865,me}function ZM(j,me){return j.elements!==me?uo(L4(me),j):j}function E7(j,me,We){let mt=Ne(281);return mt.isTypeOnly=j,mt.propertyName=vm(me),mt.name=vm(We),mt.transformFlags|=wo(mt.propertyName)|wo(mt.name),mt.transformFlags&=-67108865,mt.jsDoc=void 0,mt}function tge(j,me,We,mt){return j.isTypeOnly!==me||j.propertyName!==We||j.name!==mt?uo(E7(me,We,mt),j):j}function lre(){let j=Me(282);return j.jsDoc=void 0,j}function Lo(j){let me=Ne(283);return me.expression=j,me.transformFlags|=wo(me.expression),me.transformFlags&=-67108865,me}function m0(j,me){return j.expression!==me?uo(Lo(me),j):j}function uu(j){return Ne(j)}function zG(j,me,We=!1){let mt=V4(j,We?me&&d().parenthesizeNonArrayTypeOfPostfixType(me):me);return mt.postfix=We,mt}function V4(j,me){let We=Ne(j);return We.type=me,We}function XE(j,me,We){return me.type!==We?uo(zG(j,We,me.postfix),me):me}function lo(j,me,We){return me.type!==We?uo(V4(j,We),me):me}function B7(j,me){let We=Me(317);return We.parameters=MA(j),We.type=me,We.transformFlags=mA(We.parameters)|(We.type?1:0),We.jsDoc=void 0,We.locals=void 0,We.nextContainer=void 0,We.typeArguments=void 0,We}function v7(j,me,We){return j.parameters!==me||j.type!==We?uo(B7(me,We),j):j}function z0(j,me=!1){let We=Me(322);return We.jsDocPropertyTags=MA(j),We.isArrayType=me,We}function cw(j,me,We){return j.jsDocPropertyTags!==me||j.isArrayType!==We?uo(z0(me,We),j):j}function Hv(j){let me=Ne(309);return me.type=j,me}function tL(j,me){return j.type!==me?uo(Hv(me),j):j}function LM(j,me,We){let mt=Me(323);return mt.typeParameters=MA(j),mt.parameters=Fe(me),mt.type=We,mt.jsDoc=void 0,mt.locals=void 0,mt.nextContainer=void 0,mt}function PN(j,me,We,mt){return j.typeParameters!==me||j.parameters!==We||j.type!==mt?uo(LM(me,We,mt),j):j}function JE(j){let me=Nhe(j.kind);return j.tagName.escapedText===Dd(me)?j.tagName:Tt(me)}function ON(j,me,We){let mt=Ne(j);return mt.tagName=me,mt.comment=We,mt}function HB(j,me,We){let mt=Me(j);return mt.tagName=me,mt.comment=We,mt}function rk(j,me,We,mt){let yr=ON(345,j??Tt("template"),mt);return yr.constraint=me,yr.typeParameters=Fe(We),yr}function GP(j,me=JE(j),We,mt,yr){return j.tagName!==me||j.constraint!==We||j.typeParameters!==mt||j.comment!==yr?uo(rk(me,We,mt,yr),j):j}function S7(j,me,We,mt){let yr=HB(346,j??Tt("typedef"),mt);return yr.typeExpression=me,yr.fullName=We,yr.name=e8e(We),yr.locals=void 0,yr.nextContainer=void 0,yr}function W4(j,me=JE(j),We,mt,yr){return j.tagName!==me||j.typeExpression!==We||j.fullName!==mt||j.comment!==yr?uo(S7(me,We,mt,yr),j):j}function VM(j,me,We,mt,yr,zn){let no=HB(341,j??Tt("param"),zn);return no.typeExpression=mt,no.name=me,no.isNameFirst=!!yr,no.isBracketed=We,no}function ure(j,me=JE(j),We,mt,yr,zn,no){return j.tagName!==me||j.name!==We||j.isBracketed!==mt||j.typeExpression!==yr||j.isNameFirst!==zn||j.comment!==no?uo(VM(me,We,mt,yr,zn,no),j):j}function P4(j,me,We,mt,yr,zn){let no=HB(348,j??Tt("prop"),zn);return no.typeExpression=mt,no.name=me,no.isNameFirst=!!yr,no.isBracketed=We,no}function FP(j,me=JE(j),We,mt,yr,zn,no){return j.tagName!==me||j.name!==We||j.isBracketed!==mt||j.typeExpression!==yr||j.isNameFirst!==zn||j.comment!==no?uo(P4(me,We,mt,yr,zn,no),j):j}function lw(j,me,We,mt){let yr=HB(338,j??Tt("callback"),mt);return yr.typeExpression=me,yr.fullName=We,yr.name=e8e(We),yr.locals=void 0,yr.nextContainer=void 0,yr}function gre(j,me=JE(j),We,mt,yr){return j.tagName!==me||j.typeExpression!==We||j.fullName!==mt||j.comment!==yr?uo(lw(me,We,mt,yr),j):j}function ZP(j,me,We){let mt=ON(339,j??Tt("overload"),We);return mt.typeExpression=me,mt}function FV(j,me=JE(j),We,mt){return j.tagName!==me||j.typeExpression!==We||j.comment!==mt?uo(ZP(me,We,mt),j):j}function qG(j,me,We){let mt=ON(328,j??Tt("augments"),We);return mt.class=me,mt}function rL(j,me=JE(j),We,mt){return j.tagName!==me||j.class!==We||j.comment!==mt?uo(qG(me,We,mt),j):j}function Yv(j,me,We){let mt=ON(329,j??Tt("implements"),We);return mt.class=me,mt}function nL(j,me,We){let mt=ON(347,j??Tt("see"),We);return mt.name=me,mt}function LP(j,me,We,mt){return j.tagName!==me||j.name!==We||j.comment!==mt?uo(nL(me,We,mt),j):j}function Ih(j){let me=Ne(310);return me.name=j,me}function $G(j,me){return j.name!==me?uo(Ih(me),j):j}function QN(j,me){let We=Ne(311);return We.left=j,We.right=me,We.transformFlags|=wo(We.left)|wo(We.right),We}function UI(j,me,We){return j.left!==me||j.right!==We?uo(QN(me,We),j):j}function $m(j,me){let We=Ne(324);return We.name=j,We.text=me,We}function eF(j,me,We){return j.name!==me?uo($m(me,We),j):j}function zb(j,me){let We=Ne(325);return We.name=j,We.text=me,We}function YB(j,me,We){return j.name!==me?uo(zb(me,We),j):j}function w7(j,me){let We=Ne(326);return We.name=j,We.text=me,We}function MN(j,me,We){return j.name!==me?uo(w7(me,We),j):j}function T7(j,me=JE(j),We,mt){return j.tagName!==me||j.class!==We||j.comment!==mt?uo(Yv(me,We,mt),j):j}function HN(j,me,We){return ON(j,me??Tt(Nhe(j)),We)}function ZV(j,me,We=JE(me),mt){return me.tagName!==We||me.comment!==mt?uo(HN(j,We,mt),me):me}function Are(j,me,We,mt){let yr=ON(j,me??Tt(Nhe(j)),mt);return yr.typeExpression=We,yr}function ZI(j,me,We=JE(me),mt,yr){return me.tagName!==We||me.typeExpression!==mt||me.comment!==yr?uo(Are(j,We,mt,yr),me):me}function dre(j,me){return ON(327,j,me)}function pre(j,me,We){return j.tagName!==me||j.comment!==We?uo(dre(me,We),j):j}function VP(j,me,We){let mt=HB(340,j??Tt(Nhe(340)),We);return mt.typeExpression=me,mt.locals=void 0,mt.nextContainer=void 0,mt}function rge(j,me=JE(j),We,mt){return j.tagName!==me||j.typeExpression!==We||j.comment!==mt?uo(VP(me,We,mt),j):j}function q0(j,me,We,mt,yr){let zn=ON(351,j??Tt("import"),yr);return zn.importClause=me,zn.moduleSpecifier=We,zn.attributes=mt,zn.comment=yr,zn}function O4(j,me,We,mt,yr,zn){return j.tagName!==me||j.comment!==zn||j.importClause!==We||j.moduleSpecifier!==mt||j.attributes!==yr?uo(q0(me,We,mt,yr,zn),j):j}function WM(j){let me=Ne(321);return me.text=j,me}function WP(j,me){return j.text!==me?uo(WM(me),j):j}function pb(j,me){let We=Ne(320);return We.comment=j,We.tags=MA(me),We}function nge(j,me,We){return j.comment!==me||j.tags!==We?uo(pb(me,We),j):j}function PP(j,me,We){let mt=Ne(284);return mt.openingElement=j,mt.children=Fe(me),mt.closingElement=We,mt.transformFlags|=wo(mt.openingElement)|mA(mt.children)|wo(mt.closingElement)|2,mt}function fre(j,me,We,mt){return j.openingElement!==me||j.children!==We||j.closingElement!==mt?uo(PP(me,We,mt),j):j}function OP(j,me,We){let mt=Ne(285);return mt.tagName=j,mt.typeArguments=MA(me),mt.attributes=We,mt.transformFlags|=wo(mt.tagName)|mA(mt.typeArguments)|wo(mt.attributes)|2,mt.typeArguments&&(mt.transformFlags|=1),mt}function PM(j,me,We,mt){return j.tagName!==me||j.typeArguments!==We||j.attributes!==mt?uo(OP(me,We,mt),j):j}function N7(j,me,We){let mt=Ne(286);return mt.tagName=j,mt.typeArguments=MA(me),mt.attributes=We,mt.transformFlags|=wo(mt.tagName)|mA(mt.typeArguments)|wo(mt.attributes)|2,me&&(mt.transformFlags|=1),mt}function Q4(j,me,We,mt){return j.tagName!==me||j.typeArguments!==We||j.attributes!==mt?uo(N7(me,We,mt),j):j}function z2(j){let me=Ne(287);return me.tagName=j,me.transformFlags|=wo(me.tagName)|2,me}function Ire(j,me){return j.tagName!==me?uo(z2(me),j):j}function LV(j,me,We){let mt=Ne(288);return mt.openingFragment=j,mt.children=Fe(me),mt.closingFragment=We,mt.transformFlags|=wo(mt.openingFragment)|mA(mt.children)|wo(mt.closingFragment)|2,mt}function Y1(j,me,We,mt){return j.openingFragment!==me||j.children!==We||j.closingFragment!==mt?uo(LV(me,We,mt),j):j}function CT(j,me){let We=Ne(12);return We.text=j,We.containsOnlyTriviaWhiteSpaces=!!me,We.transformFlags|=2,We}function M4(j,me,We){return j.text!==me||j.containsOnlyTriviaWhiteSpaces!==We?uo(CT(me,We),j):j}function H4(){let j=Ne(289);return j.transformFlags|=2,j}function FA(){let j=Ne(290);return j.transformFlags|=2,j}function Oo(j,me){let We=Me(291);return We.name=j,We.initializer=me,We.transformFlags|=wo(We.name)|wo(We.initializer)|2,We}function q2(j,me,We){return j.name!==me||j.initializer!==We?uo(Oo(me,We),j):j}function a_(j){let me=Me(292);return me.properties=Fe(j),me.transformFlags|=mA(me.properties)|2,me}function Cre(j,me){return j.properties!==me?uo(a_(me),j):j}function mre(j){let me=Ne(293);return me.expression=j,me.transformFlags|=wo(me.expression)|2,me}function QP(j,me){return j.expression!==me?uo(mre(me),j):j}function VV(j,me){let We=Ne(294);return We.dotDotDotToken=j,We.expression=me,We.transformFlags|=wo(We.dotDotDotToken)|wo(We.expression)|2,We}function hre(j,me){return j.expression!==me?uo(VV(j.dotDotDotToken,me),j):j}function WV(j,me){let We=Ne(295);return We.namespace=j,We.name=me,We.transformFlags|=wo(We.namespace)|wo(We.name)|2,We}function uw(j,me,We){return j.namespace!==me||j.name!==We?uo(WV(me,We),j):j}function X1(j,me){let We=Ne(296);return We.expression=d().parenthesizeExpressionForDisallowedComma(j),We.statements=Fe(me),We.transformFlags|=wo(We.expression)|mA(We.statements),We.jsDoc=void 0,We}function fD(j,me,We){return j.expression!==me||j.statements!==We?uo(X1(me,We),j):j}function YN(j){let me=Ne(297);return me.statements=Fe(j),me.transformFlags=mA(me.statements),me}function tF(j,me){return j.statements!==me?uo(YN(me),j):j}function Y4(j,me){let We=Ne(298);switch(We.token=j,We.types=Fe(me),We.transformFlags|=mA(We.types),j){case 96:We.transformFlags|=1024;break;case 119:We.transformFlags|=1;break;default:return w.assertNever(j)}return We}function VC(j,me){return j.types!==me?uo(Y4(j.token,me),j):j}function gw(j,me){let We=Ne(299);return We.variableDeclaration=XB(j),We.block=me,We.transformFlags|=wo(We.variableDeclaration)|wo(We.block)|(j?0:64),We.locals=void 0,We.nextContainer=void 0,We}function J1(j,me,We){return j.variableDeclaration!==me||j.block!==We?uo(gw(me,We),j):j}function iL(j,me){let We=Me(303);return We.name=vm(j),We.initializer=d().parenthesizeExpressionForDisallowedComma(me),We.transformFlags|=Wx(We.name)|wo(We.initializer),We.modifiers=void 0,We.questionToken=void 0,We.exclamationToken=void 0,We.jsDoc=void 0,We}function $2(j,me,We){return j.name!==me||j.initializer!==We?X4(iL(me,We),j):j}function X4(j,me){return j!==me&&(j.modifiers=me.modifiers,j.questionToken=me.questionToken,j.exclamationToken=me.exclamationToken),uo(j,me)}function PV(j,me){let We=Me(304);return We.name=vm(j),We.objectAssignmentInitializer=me&&d().parenthesizeExpressionForDisallowedComma(me),We.transformFlags|=ete(We.name)|wo(We.objectAssignmentInitializer)|1024,We.equalsToken=void 0,We.modifiers=void 0,We.questionToken=void 0,We.exclamationToken=void 0,We.jsDoc=void 0,We}function ce(j,me,We){return j.name!==me||j.objectAssignmentInitializer!==We?_t(PV(me,We),j):j}function _t(j,me){return j!==me&&(j.modifiers=me.modifiers,j.questionToken=me.questionToken,j.exclamationToken=me.exclamationToken,j.equalsToken=me.equalsToken),uo(j,me)}function pn(j){let me=Me(305);return me.expression=d().parenthesizeExpressionForDisallowedComma(j),me.transformFlags|=wo(me.expression)|128|65536,me.jsDoc=void 0,me}function qn(j,me){return j.expression!==me?uo(pn(me),j):j}function Ua(j,me){let We=Me(306);return We.name=vm(j),We.initializer=me&&d().parenthesizeExpressionForDisallowedComma(me),We.transformFlags|=wo(We.name)|wo(We.initializer)|1,We.jsDoc=void 0,We}function Fl(j,me,We){return j.name!==me||j.initializer!==We?uo(Ua(me,We),j):j}function El(j,me,We){let mt=c.createBaseSourceFileNode(307);return mt.statements=Fe(j),mt.endOfFileToken=me,mt.flags|=We,mt.text="",mt.fileName="",mt.path="",mt.resolvedPath="",mt.originalFileName="",mt.languageVersion=1,mt.languageVariant=0,mt.scriptKind=0,mt.isDeclarationFile=!1,mt.hasNoDefaultLib=!1,mt.transformFlags|=mA(mt.statements)|wo(mt.endOfFileToken),mt.locals=void 0,mt.nextContainer=void 0,mt.endFlowNode=void 0,mt.nodeCount=0,mt.identifierCount=0,mt.symbolCount=0,mt.parseDiagnostics=void 0,mt.bindDiagnostics=void 0,mt.bindSuggestionDiagnostics=void 0,mt.lineMap=void 0,mt.externalModuleIndicator=void 0,mt.setExternalModuleIndicator=void 0,mt.pragmas=void 0,mt.checkJsDirective=void 0,mt.referencedFiles=void 0,mt.typeReferenceDirectives=void 0,mt.libReferenceDirectives=void 0,mt.amdDependencies=void 0,mt.commentDirectives=void 0,mt.identifiers=void 0,mt.packageJsonLocations=void 0,mt.packageJsonScope=void 0,mt.imports=void 0,mt.moduleAugmentations=void 0,mt.ambientModuleNames=void 0,mt.classifiableNames=void 0,mt.impliedNodeFormat=void 0,mt}function zl(j){let me=Object.create(j.redirectTarget);return Object.defineProperties(me,{id:{get(){return this.redirectInfo.redirectTarget.id},set(We){this.redirectInfo.redirectTarget.id=We}},symbol:{get(){return this.redirectInfo.redirectTarget.symbol},set(We){this.redirectInfo.redirectTarget.symbol=We}}}),me.redirectInfo=j,me}function Xg(j){let me=zl(j.redirectInfo);return me.flags|=j.flags&-17,me.fileName=j.fileName,me.path=j.path,me.resolvedPath=j.resolvedPath,me.originalFileName=j.originalFileName,me.packageJsonLocations=j.packageJsonLocations,me.packageJsonScope=j.packageJsonScope,me.emitNode=void 0,me}function $0(j){let me=c.createBaseSourceFileNode(307);me.flags|=j.flags&-17;for(let We in j)if(!(Qa(me,We)||!Qa(j,We))){if(We==="emitNode"){me.emitNode=void 0;continue}me[We]=j[We]}return me}function h0(j){let me=j.redirectInfo?Xg(j):$0(j);return u(me,j),me}function sL(j,me,We,mt,yr,zn,no){let Yl=h0(j);return Yl.statements=Fe(me),Yl.isDeclarationFile=We,Yl.referencedFiles=mt,Yl.typeReferenceDirectives=yr,Yl.hasNoDefaultLib=zn,Yl.libReferenceDirectives=no,Yl.transformFlags=mA(Yl.statements)|wo(Yl.endOfFileToken),Yl}function OM(j,me,We=j.isDeclarationFile,mt=j.referencedFiles,yr=j.typeReferenceDirectives,zn=j.hasNoDefaultLib,no=j.libReferenceDirectives){return j.statements!==me||j.isDeclarationFile!==We||j.referencedFiles!==mt||j.typeReferenceDirectives!==yr||j.hasNoDefaultLib!==zn||j.libReferenceDirectives!==no?uo(sL(j,me,We,mt,yr,zn,no),j):j}function UE(j){let me=Ne(308);return me.sourceFiles=j,me.syntheticFileReferences=void 0,me.syntheticTypeReferences=void 0,me.syntheticLibReferences=void 0,me.hasNoDefaultLib=void 0,me}function mT(j,me){return j.sourceFiles!==me?uo(UE(me),j):j}function rF(j,me=!1,We){let mt=Ne(237);return mt.type=j,mt.isSpread=me,mt.tupleNameSource=We,mt}function QM(j){let me=Ne(352);return me._children=j,me}function _re(j){let me=Ne(353);return me.original=j,un(me,j),me}function nF(j,me){let We=Ne(354);return We.expression=j,We.original=me,We.transformFlags|=wo(We.expression)|1,un(We,me),We}function MP(j,me){return j.expression!==me?uo(nF(me,j.original),j):j}function oL(j){if($d(j)&&!pZ(j)&&!j.original&&!j.emitNode&&!j.id){if(PE(j))return j.elements;if(ro(j)&&Mxe(j.operatorToken))return[j.left,j.right]}return j}function OV(j){let me=Ne(355);return me.elements=Fe(In(j,oL)),me.transformFlags|=mA(me.elements),me}function $c(j,me){return j.elements!==me?uo(OV(me),j):j}function QV(j,me){let We=Ne(356);return We.expression=j,We.thisArg=me,We.transformFlags|=wo(We.expression)|wo(We.thisArg),We}function Ys(j,me,We){return j.expression!==me||j.thisArg!==We?uo(QV(me,We),j):j}function ige(j){let me=It(j.escapedText);return me.flags|=j.flags&-17,me.transformFlags=j.transformFlags,u(me,j),fV(me,{...j.emitNode.autoGenerate}),me}function yre(j){let me=It(j.escapedText);me.flags|=j.flags&-17,me.jsDoc=j.jsDoc,me.flowNode=j.flowNode,me.symbol=j.symbol,me.transformFlags=j.transformFlags,u(me,j);let We=kZ(j);return We&&nT(me,We),me}function R7(j){let me=Kt(j.escapedText);return me.flags|=j.flags&-17,me.transformFlags=j.transformFlags,u(me,j),fV(me,{...j.emitNode.autoGenerate}),me}function bre(j){let me=Kt(j.escapedText);return me.flags|=j.flags&-17,me.transformFlags=j.transformFlags,u(me,j),me}function Ere(j){if(j===void 0)return j;if(Fc(j))return h0(j);if(Cp(j))return ige(j);if(sr(j))return yre(j);if(mZ(j))return R7(j);if(Gc(j))return bre(j);let me=CX(j.kind)?c.createBaseNode(j.kind):c.createBaseTokenNode(j.kind);me.flags|=j.flags&-17,me.transformFlags=j.transformFlags,u(me,j);for(let We in j)Qa(me,We)||!Qa(j,We)||(me[We]=j[We]);return me}function pZe(j,me,We){return Bs(gb(void 0,void 0,void 0,void 0,me?[me]:[],void 0,xn(j,!0)),void 0,We?[We]:[])}function fZe(j,me,We){return Bs(X2(void 0,void 0,me?[me]:[],void 0,void 0,xn(j,!0)),void 0,We?[We]:[])}function ID(){return Kb(lt("0"))}function W0e(j){return H1(void 0,!1,j)}function sge(j){return xp(void 0,!1,L4([E7(!1,void 0,j)]))}function oge(j,me){return me==="null"?Be.createStrictEquality(j,Vr()):me==="undefined"?Be.createStrictEquality(j,ID()):Be.createStrictEquality(em(j),st(me))}function P0e(j,me){return me==="null"?Be.createStrictInequality(j,Vr()):me==="undefined"?Be.createStrictInequality(j,ID()):Be.createStrictInequality(em(j),st(me))}function HP(j,me,We){return fG(j)?SA(of(j,void 0,me),void 0,void 0,We):Bs(Jf(j,me),void 0,We)}function O0e(j,me,We){return HP(j,"bind",[me,...We])}function MM(j,me,We){return HP(j,"call",[me,...We])}function iF(j,me,We){return HP(j,"apply",[me,We])}function HM(j,me,We){return HP(Tt(j),me,We)}function Xv(j,me){return HP(j,"slice",me===void 0?[]:[HV(me)])}function Bre(j,me){return HP(j,"concat",me)}function Q0e(j,me,We){return HM("Object","defineProperty",[j,HV(me),We])}function CD(j,me){return HM("Object","getOwnPropertyDescriptor",[j,HV(me)])}function J4(j,me,We){return HM("Reflect","get",We?[j,me,We]:[j,me])}function M0e(j,me,We,mt){return HM("Reflect","set",mt?[j,me,We,mt]:[j,me,We])}function LI(j,me,We){return We?(j.push(iL(me,We)),!0):!1}function age(j,me){let We=[];LI(We,"enumerable",HV(j.enumerable)),LI(We,"configurable",HV(j.configurable));let mt=LI(We,"writable",HV(j.writable));mt=LI(We,"value",j.value)||mt;let yr=LI(We,"get",j.get);return yr=LI(We,"set",j.set)||yr,w.assert(!(mt&&yr),"A PropertyDescriptor may not be both an accessor descriptor and a data descriptor."),Pg(We,!me)}function Sd(j,me){switch(j.kind){case 217:return Y2(j,me);case 216:return Ub(j,j.type,me);case 234:return XZ(j,me,j.type);case 238:return GV(j,me,j.type);case 235:return kV(j,me);case 354:return MP(j,me)}}function QA(j){return ZC(j)&&$d(j)&&$d(Px(j))&&$d(US(j))&&!lr(nM(j))&&!lr(c4(j))}function D7(j,me,We=15){return j&&tke(j,We)&&!QA(j)?Sd(j,D7(j.expression,me)):me}function x7(j,me,We){if(!me)return j;let mt=x4(me,me.label,iC(me.statement)?x7(j,me.statement):j);return We&&We(me),mt}function $e(j,me){let We=zA(j);switch(We.kind){case 80:return me;case 110:case 9:case 10:case 11:return!1;case 209:return We.elements.length!==0;case 210:return We.properties.length>0;default:return!0}}function Ht(j,me,We,mt=!1){let yr=LC(j,15),zn,no;return M0(yr)?(zn=Pt(),no=yr):eP(yr)?(zn=Pt(),no=We!==void 0&&We<2?un(Tt("_super"),yr):yr):wg(yr)&8192?(zn=ID(),no=d().parenthesizeLeftSideOfAccess(yr,!1)):fo(yr)?$e(yr.expression,mt)?(zn=St(me),no=Jf(un(Be.createAssignment(zn,yr.expression),yr.expression),yr.name),un(no,yr)):(zn=yr.expression,no=yr):_A(yr)?$e(yr.expression,mt)?(zn=St(me),no=FI(un(Be.createAssignment(zn,yr.expression),yr.expression),yr.argumentExpression),un(no,yr)):(zn=yr.expression,no=yr):(zn=ID(),no=d().parenthesizeLeftSideOfAccess(j,!1)),{target:no,thisArg:zn}}function Sr(j,me){return Jf(pT(Pg([wt(void 0,"value",[Bc(void 0,void 0,j,void 0,void 0,void 0)],xn([mo(me)]))])),"value")}function _n(j){return j.length>10?OV(j):Nd(j,Be.createComma)}function Xn(j,me,We,mt=0,yr){let zn=yr?j&&Uw(j):Sl(j);if(zn&&sr(zn)&&!Cp(zn)){let no=GA(un(Ere(zn),zn),zn.parent);return mt|=wg(zn),We||(mt|=96),me||(mt|=3072),mt&&ao(no,mt),no}return Et(j)}function es(j,me,We){return Xn(j,me,We,98304)}function Ia(j,me,We,mt){return Xn(j,me,We,32768,mt)}function Xc(j,me,We){return Xn(j,me,We,16384)}function bc(j,me,We){return Xn(j,me,We)}function qa(j,me,We,mt){let yr=Jf(j,$d(me)?me:Ere(me));un(yr,me);let zn=0;return mt||(zn|=96),We||(zn|=3072),zn&&ao(yr,zn),yr}function Cl(j,me,We,mt){return j&&ya(me,32)?qa(j,Xn(me),We,mt):Xc(me,We,mt)}function up(j,me,We,mt){let yr=eB(j,me,0,We);return hT(j,me,yr,mt)}function _g(j){return Eu(j.expression)&&j.expression.text==="use strict"}function aA(){return u0(mo(st("use strict")))}function eB(j,me,We=0,mt){w.assert(me.length===0,"Prologue directives should be at the first statement in the target statements array");let yr=!1,zn=j.length;for(;WeYl&&Aw.splice(yr,0,...me.slice(Yl,_p)),Yl>no&&Aw.splice(mt,0,...me.slice(no,Yl)),no>zn&&Aw.splice(We,0,...me.slice(zn,no)),zn>0)if(We===0)Aw.splice(0,0,...me.slice(0,zn));else{let dw=new Map;for(let mD=0;mD=0;mD--){let k7=me[mD];dw.has(k7.expression.text)||Aw.unshift(k7)}}return IG(j)?un(Fe(Aw,j.hasTrailingComma),j):j}function cge(j,me){let We;return typeof me=="number"?We=$n(me):We=me,$p(j)?xs(j,We,j.name,j.constraint,j.default):Uc(j)?xi(j,We,j.dotDotDotToken,j.name,j.questionToken,j.type,j.initializer):Y(j)?Qn(j,We,j.typeParameters,j.parameters,j.type):i_(j)?mc(j,We,j.name,j.questionToken,j.type):Hl(j)?ir(j,We,j.name,j.questionToken??j.exclamationToken,j.type,j.initializer):zS(j)?gs(j,We,j.name,j.questionToken,j.typeParameters,j.parameters,j.type):lI(j)?za(j,We,j.asteriskToken,j.name,j.questionToken,j.typeParameters,j.parameters,j.type,j.body):Df(j)?vA(j,We,j.parameters,j.body):Qb(j)?ct(j,We,j.name,j.parameters,j.type,j.body):ob(j)?br(j,We,j.name,j.parameters,j.body):_(j)?Pn(j,We,j.parameters,j.type):PA(j)?WB(j,We,j.asteriskToken,j.name,j.typeParameters,j.parameters,j.type,j.body):Id(j)?lD(j,We,j.typeParameters,j.parameters,j.type,j.equalsGreaterThanToken,j.body):rp(j)?U2(j,We,j.name,j.typeParameters,j.heritageClauses,j.members):Dp(j)?zs(j,We,j.declarationList):hp(j)?h7(j,We,j.asteriskToken,j.name,j.typeParameters,j.parameters,j.type,j.body):Ec(j)?NP(j,We,j.name,j.typeParameters,j.heritageClauses,j.members):XI(j)?Bm(j,We,j.name,j.typeParameters,j.heritageClauses,j.members):Pf(j)?y7(j,We,j.name,j.typeParameters,j.type):iP(j)?G4(j,We,j.name,j.members):mC(j)?sw(j,We,j.name,j.body):mm(j)?ow(j,We,j.isTypeOnly,j.name,j.moduleReference):hI(j)?F4(j,We,j.importClause,j.moduleSpecifier,j.attributes):rf(j)?FM(j,We,j.expression):hC(j)?tk(j,We,j.isTypeOnly,j.exportClause,j.moduleSpecifier,j.attributes):w.assertNever(j)}function vre(j,me){return Uc(j)?xi(j,me,j.dotDotDotToken,j.name,j.questionToken,j.type,j.initializer):Hl(j)?ir(j,me,j.name,j.questionToken??j.exclamationToken,j.type,j.initializer):lI(j)?za(j,me,j.asteriskToken,j.name,j.questionToken,j.typeParameters,j.parameters,j.type,j.body):Qb(j)?ct(j,me,j.name,j.parameters,j.type,j.body):ob(j)?br(j,me,j.name,j.parameters,j.body):rp(j)?U2(j,me,j.name,j.typeParameters,j.heritageClauses,j.members):Ec(j)?NP(j,me,j.name,j.typeParameters,j.heritageClauses,j.members):w.assertNever(j)}function H0e(j,me){switch(j.kind){case 177:return ct(j,j.modifiers,me,j.parameters,j.type,j.body);case 178:return br(j,j.modifiers,me,j.parameters,j.body);case 174:return za(j,j.modifiers,j.asteriskToken,me,j.questionToken,j.typeParameters,j.parameters,j.type,j.body);case 173:return gs(j,j.modifiers,me,j.questionToken,j.typeParameters,j.parameters,j.type);case 172:return ir(j,j.modifiers,me,j.questionToken??j.exclamationToken,j.type,j.initializer);case 171:return mc(j,j.modifiers,me,j.questionToken,j.type);case 303:return $2(j,me,j.initializer)}}function MA(j){return j?Fe(j):void 0}function vm(j){return typeof j=="string"?Tt(j):j}function HV(j){return typeof j=="string"?st(j):typeof j=="number"?lt(j):typeof j=="boolean"?j?Hr():pr():j}function _T(j){return j&&d().parenthesizeExpressionForDisallowedComma(j)}function XP(j){return typeof j=="number"?jt(j):j}function nk(j){return j&&ZKe(j)?un(u(zi(),j),j):j}function XB(j){return typeof j=="string"||j&&!js(j)?db(j,void 0,void 0,void 0):j}function uo(j,me){return j!==me&&(u(j,me),un(j,me)),j}}function Nhe(n){switch(n){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 w.fail(`Unsupported kind: ${w.formatSyntaxKind(n)}`)}}var EN,RKe={};function XNt(n,c){switch(EN||(EN=Ft(99,!1,0)),n){case 15:EN.setText("`"+c+"`");break;case 16:EN.setText("`"+c+"${");break;case 17:EN.setText("}"+c+"${");break;case 18:EN.setText("}"+c+"`");break}let u=EN.scan();if(u===20&&(u=EN.reScanTemplateToken(!1)),EN.isUnterminated())return EN.setText(void 0),RKe;let d;switch(u){case 15:case 16:case 17:case 18:d=EN.getTokenValue();break}return d===void 0||EN.scan()!==1?(EN.setText(void 0),RKe):(EN.setText(void 0),d)}function Wx(n){return n&&sr(n)?ete(n):wo(n)}function ete(n){return wo(n)&-67108865}function DKe(n,c){return c|n.transformFlags&134234112}function wo(n){if(!n)return 0;let c=n.transformFlags&~F2(n.kind);return wf(n)&&RI(n.name)?DKe(n.name,c):c}function mA(n){return n?n.transformFlags:0}function xKe(n){let c=0;for(let u of n)c|=wo(u);n.transformFlags=c}function F2(n){if(n>=182&&n<=205)return-2;switch(n){case 213:case 214:case 209:return-2147450880;case 267:return-1941676032;case 169: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;case 206:case 207:return-2147450880;case 216:case 238:case 234:case 354:case 217:case 108:return-2147483648;case 211:case 212:return-2147483648;default:return-2147483648}}var tte=gxe();function rte(n){return n.flags|=16,n}var JNt={createBaseSourceFileNode:n=>rte(tte.createBaseSourceFileNode(n)),createBaseIdentifierNode:n=>rte(tte.createBaseIdentifierNode(n)),createBasePrivateIdentifierNode:n=>rte(tte.createBasePrivateIdentifierNode(n)),createBaseTokenNode:n=>rte(tte.createBaseTokenNode(n)),createBaseNode:n=>rte(tte.createBaseNode(n))},_e=pV(4,JNt),k6;function kKe(n,c,u){return new(k6||(k6=kC.getSourceMapSourceConstructor()))(n,c,u)}function Ho(n,c){if(n.original!==c&&(n.original=c,c)){let u=c.emitNode;u&&(n.emitNode=XS(u,n.emitNode))}return n}function XS(n,c){let{flags:u,internalFlags:d,leadingComments:I,trailingComments:h,commentRange:b,sourceMapRange:R,tokenSourceMapRanges:N,constantValue:V,helpers:P,startsOnNewLine:Q,snippetElement:te,classThis:re,assignedName:ue}=n;if(c||(c={}),u&&(c.flags=u),d&&(c.internalFlags=d&-9),I&&(c.leadingComments=ai(I.slice(),c.leadingComments)),h&&(c.trailingComments=ai(h.slice(),c.trailingComments)),b&&(c.commentRange=b),R&&(c.sourceMapRange=R),N&&(c.tokenSourceMapRanges=GKe(N,c.tokenSourceMapRanges)),V!==void 0&&(c.constantValue=V),P)for(let Ae of P)c.helpers=og(c.helpers,Ae);return Q!==void 0&&(c.startsOnNewLine=Q),te!==void 0&&(c.snippetElement=te),re&&(c.classThis=re),ue&&(c.assignedName=ue),c}function GKe(n,c){c||(c=[]);for(let u in n)c[u]=n[u];return c}function kh(n){if(n.emitNode)w.assert(!(n.emitNode.internalFlags&8),"Invalid attempt to mutate an immutable node.");else{if(pZ(n)){if(n.kind===307)return n.emitNode={annotatedNodes:[n]};let c=ls(zc(ls(n)))??w.fail("Could not determine parsed source file.");kh(c).annotatedNodes.push(n)}n.emitNode={}}return n.emitNode}function Rle(n){var c,u;let d=(u=(c=ls(zc(n)))==null?void 0:c.emitNode)==null?void 0:u.annotatedNodes;if(d)for(let I of d)I.emitNode=void 0}function nte(n){let c=kh(n);return c.flags|=3072,c.leadingComments=void 0,c.trailingComments=void 0,n}function ao(n,c){return kh(n).flags=c,n}function JS(n,c){let u=kh(n);return u.flags=u.flags|c,n}function ite(n,c){return kh(n).internalFlags=c,n}function rM(n,c){let u=kh(n);return u.internalFlags=u.internalFlags|c,n}function Px(n){var c;return((c=n.emitNode)==null?void 0:c.sourceMapRange)??n}function Hg(n,c){return kh(n).sourceMapRange=c,n}function FKe(n,c){var u,d;return(d=(u=n.emitNode)==null?void 0:u.tokenSourceMapRanges)==null?void 0:d[c]}function pxe(n,c,u){let d=kh(n),I=d.tokenSourceMapRanges??(d.tokenSourceMapRanges=[]);return I[c]=u,n}function DG(n){var c;return(c=n.emitNode)==null?void 0:c.startsOnNewLine}function Dle(n,c){return kh(n).startsOnNewLine=c,n}function US(n){var c;return((c=n.emitNode)==null?void 0:c.commentRange)??n}function hA(n,c){return kh(n).commentRange=c,n}function nM(n){var c;return(c=n.emitNode)==null?void 0:c.leadingComments}function KS(n,c){return kh(n).leadingComments=c,n}function a4(n,c,u,d){return KS(n,Yr(nM(n),{kind:c,pos:-1,end:-1,hasTrailingNewLine:d,text:u}))}function c4(n){var c;return(c=n.emitNode)==null?void 0:c.trailingComments}function iM(n,c){return kh(n).trailingComments=c,n}function xle(n,c,u,d){return iM(n,Yr(c4(n),{kind:c,pos:-1,end:-1,hasTrailingNewLine:d,text:u}))}function DI(n,c){KS(n,nM(c)),iM(n,c4(c));let u=kh(c);return u.leadingComments=void 0,u.trailingComments=void 0,n}function l4(n){var c;return(c=n.emitNode)==null?void 0:c.constantValue}function fxe(n,c){let u=kh(n);return u.constantValue=c,n}function sM(n,c){let u=kh(n);return u.helpers=Yr(u.helpers,c),n}function BN(n,c){if(lr(c)){let u=kh(n);for(let d of c)u.helpers=og(u.helpers,d)}return n}function oM(n,c){var u;let d=(u=n.emitNode)==null?void 0:u.helpers;return d?tA(d,c):!1}function kle(n){var c;return(c=n.emitNode)==null?void 0:c.helpers}function ku(n,c,u){let d=n.emitNode,I=d&&d.helpers;if(!lr(I))return;let h=kh(c),b=0;for(let R=0;R0&&(I[R-b]=N)}b>0&&(I.length-=b)}function Gle(n){var c;return(c=n.emitNode)==null?void 0:c.snippetElement}function La(n,c){let u=kh(n);return u.snippetElement=c,n}function Rhe(n){return kh(n).internalFlags|=4,n}function Ixe(n,c){let u=kh(n);return u.typeNode=c,n}function Cxe(n){var c;return(c=n.emitNode)==null?void 0:c.typeNode}function nT(n,c){return kh(n).identifierTypeArguments=c,n}function kZ(n){var c;return(c=n.emitNode)==null?void 0:c.identifierTypeArguments}function fV(n,c){return kh(n).autoGenerate=c,n}function mxe(n){var c;return(c=n.emitNode)==null?void 0:c.autoGenerate}function ste(n,c){return kh(n).generatedImportReference=c,n}function ep(n){var c;return(c=n.emitNode)==null?void 0:c.generatedImportReference}var Dhe=(n=>(n.Field="f",n.Method="m",n.Accessor="a",n))(Dhe||{});function xhe(n){let c=n.factory,u=su(()=>ite(c.createTrue(),8)),d=su(()=>ite(c.createFalse(),8));return{getUnscopedHelperName:I,createDecorateHelper:h,createMetadataHelper:b,createParamHelper:R,createESDecorateHelper:Ae,createRunInitializersHelper:de,createAssignHelper:Be,createAwaitHelper:Fe,createAsyncGeneratorHelper:Ne,createAsyncDelegatorHelper:Me,createAsyncValuesHelper:De,createRestHelper:lt,createAwaiterHelper:Le,createExtendsHelper:je,createTemplateObjectHelper:st,createSpreadArrayHelper:nt,createPropKeyHelper:qe,createSetFunctionNameHelper:it,createValuesHelper:It,createReadHelper:dt,createGeneratorHelper:Tt,createImportStarHelper:St,createImportStarCallbackHelper:He,createImportDefaultHelper:ht,createExportStarHelper:Et,createClassPrivateFieldGetHelper:Kt,createClassPrivateFieldSetHelper:Nt,createClassPrivateFieldInHelper:Lt,createAddDisposableResourceHelper:kt,createDisposeResourcesHelper:Zt};function I(Dr){return ao(c.createIdentifier(Dr),8196)}function h(Dr,jt,mr,Pt){n.requestEmitHelper(G6);let Vr=[];return Vr.push(c.createArrayLiteralExpression(Dr,!0)),Vr.push(jt),mr&&(Vr.push(mr),Pt&&Vr.push(Pt)),c.createCallExpression(I("__decorate"),void 0,Vr)}function b(Dr,jt){return n.requestEmitHelper(Zle),c.createCallExpression(I("__metadata"),void 0,[c.createStringLiteral(Dr),jt])}function R(Dr,jt,mr){return n.requestEmitHelper(khe),un(c.createCallExpression(I("__param"),void 0,[c.createNumericLiteral(jt+""),Dr]),mr)}function N(Dr){let jt=[c.createPropertyAssignment(c.createIdentifier("kind"),c.createStringLiteral("class")),c.createPropertyAssignment(c.createIdentifier("name"),Dr.name),c.createPropertyAssignment(c.createIdentifier("metadata"),Dr.metadata)];return c.createObjectLiteralExpression(jt)}function V(Dr){let jt=Dr.computed?c.createElementAccessExpression(c.createIdentifier("obj"),Dr.name):c.createPropertyAccessExpression(c.createIdentifier("obj"),Dr.name);return c.createPropertyAssignment("get",c.createArrowFunction(void 0,void 0,[c.createParameterDeclaration(void 0,void 0,c.createIdentifier("obj"))],void 0,void 0,jt))}function P(Dr){let jt=Dr.computed?c.createElementAccessExpression(c.createIdentifier("obj"),Dr.name):c.createPropertyAccessExpression(c.createIdentifier("obj"),Dr.name);return c.createPropertyAssignment("set",c.createArrowFunction(void 0,void 0,[c.createParameterDeclaration(void 0,void 0,c.createIdentifier("obj")),c.createParameterDeclaration(void 0,void 0,c.createIdentifier("value"))],void 0,void 0,c.createBlock([c.createExpressionStatement(c.createAssignment(jt,c.createIdentifier("value")))])))}function Q(Dr){let jt=Dr.computed?Dr.name:sr(Dr.name)?c.createStringLiteralFromNode(Dr.name):Dr.name;return c.createPropertyAssignment("has",c.createArrowFunction(void 0,void 0,[c.createParameterDeclaration(void 0,void 0,c.createIdentifier("obj"))],void 0,void 0,c.createBinaryExpression(jt,103,c.createIdentifier("obj"))))}function te(Dr,jt){let mr=[];return mr.push(Q(Dr)),jt.get&&mr.push(V(Dr)),jt.set&&mr.push(P(Dr)),c.createObjectLiteralExpression(mr)}function re(Dr){let jt=[c.createPropertyAssignment(c.createIdentifier("kind"),c.createStringLiteral(Dr.kind)),c.createPropertyAssignment(c.createIdentifier("name"),Dr.name.computed?Dr.name.name:c.createStringLiteralFromNode(Dr.name.name)),c.createPropertyAssignment(c.createIdentifier("static"),Dr.static?c.createTrue():c.createFalse()),c.createPropertyAssignment(c.createIdentifier("private"),Dr.private?c.createTrue():c.createFalse()),c.createPropertyAssignment(c.createIdentifier("access"),te(Dr.name,Dr.access)),c.createPropertyAssignment(c.createIdentifier("metadata"),Dr.metadata)];return c.createObjectLiteralExpression(jt)}function ue(Dr){return Dr.kind==="class"?N(Dr):re(Dr)}function Ae(Dr,jt,mr,Pt,Vr,Hr){return n.requestEmitHelper(hxe),c.createCallExpression(I("__esDecorate"),void 0,[Dr??c.createNull(),jt??c.createNull(),mr,ue(Pt),Vr,Hr])}function de(Dr,jt,mr){return n.requestEmitHelper(_xe),c.createCallExpression(I("__runInitializers"),void 0,mr?[Dr,jt,mr]:[Dr,jt])}function Be(Dr){return sA(n.getCompilerOptions())>=2?c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("Object"),"assign"),void 0,Dr):(n.requestEmitHelper(yxe),c.createCallExpression(I("__assign"),void 0,Dr))}function Fe(Dr){return n.requestEmitHelper(F6),c.createCallExpression(I("__await"),void 0,[Dr])}function Ne(Dr,jt){return n.requestEmitHelper(F6),n.requestEmitHelper(bxe),(Dr.emitNode||(Dr.emitNode={})).flags|=1572864,c.createCallExpression(I("__asyncGenerator"),void 0,[jt?c.createThis():c.createVoidZero(),c.createIdentifier("arguments"),Dr])}function Me(Dr){return n.requestEmitHelper(F6),n.requestEmitHelper(Exe),c.createCallExpression(I("__asyncDelegator"),void 0,[Dr])}function De(Dr){return n.requestEmitHelper(Bxe),c.createCallExpression(I("__asyncValues"),void 0,[Dr])}function lt(Dr,jt,mr,Pt){n.requestEmitHelper(vxe);let Vr=[],Hr=0;for(let pr=0;pr{let d="";for(let I=0;I= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; - };`},wle={name:"typescript:metadata",importName:"__metadata",scoped:!1,priority:3,text:` + };`},Zle={name:"typescript:metadata",importName:"__metadata",scoped:!1,priority:3,text:` var __metadata = (this && this.__metadata) || function (k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); - };`},Dhe={name:"typescript:param",importName:"__param",scoped:!1,priority:4,text:` + };`},khe={name:"typescript:param",importName:"__param",scoped:!1,priority:4,text:` var __param = (this && this.__param) || function (paramIndex, decorator) { return function (target, key) { decorator(target, key, paramIndex); } - };`},Cxe={name:"typescript:esDecorate",importName:"__esDecorate",scoped:!1,priority:2,text:` + };`},hxe={name:"typescript:esDecorate",importName:"__esDecorate",scoped:!1,priority:2,text:` var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) { function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; } var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value"; @@ -505,14 +505,14 @@ ${bt.join(` } if (target) Object.defineProperty(target, contextIn.name, descriptor); done = true; - };`},mxe={name:"typescript:runInitializers",importName:"__runInitializers",scoped:!1,priority:2,text:` + };`},_xe={name:"typescript:runInitializers",importName:"__runInitializers",scoped:!1,priority:2,text:` var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) { var useValue = arguments.length > 2; for (var i = 0; i < initializers.length; i++) { value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg); } return useValue ? value : void 0; - };`},hxe={name:"typescript:assign",importName:"__assign",scoped:!1,priority:1,text:` + };`},yxe={name:"typescript:assign",importName:"__assign",scoped:!1,priority:1,text:` var __assign = (this && this.__assign) || function () { __assign = Object.assign || function(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { @@ -523,8 +523,8 @@ ${bt.join(` return t; }; return __assign.apply(this, arguments); - };`},N6={name:"typescript:await",importName:"__await",scoped:!1,text:` - var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }`},_xe={name:"typescript:asyncGenerator",importName:"__asyncGenerator",scoped:!1,dependencies:[N6],text:` + };`},F6={name:"typescript:await",importName:"__await",scoped:!1,text:` + var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }`},bxe={name:"typescript:asyncGenerator",importName:"__asyncGenerator",scoped:!1,dependencies:[F6],text:` var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) { if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); var g = generator.apply(thisArg, _arguments || []), i, q = []; @@ -536,19 +536,19 @@ ${bt.join(` function fulfill(value) { resume("next", value); } function reject(value) { resume("throw", value); } function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); } - };`},yxe={name:"typescript:asyncDelegator",importName:"__asyncDelegator",scoped:!1,dependencies:[N6],text:` + };`},Exe={name:"typescript:asyncDelegator",importName:"__asyncDelegator",scoped:!1,dependencies:[F6],text:` var __asyncDelegator = (this && this.__asyncDelegator) || function (o) { var i, p; return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i; 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; } - };`},bxe={name:"typescript:asyncValues",importName:"__asyncValues",scoped:!1,text:` + };`},Bxe={name:"typescript:asyncValues",importName:"__asyncValues",scoped:!1,text:` var __asyncValues = (this && this.__asyncValues) || function (o) { if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); var m = o[Symbol.asyncIterator], i; 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); 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); }); }; } function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); } - };`},Exe={name:"typescript:rest",importName:"__rest",scoped:!1,text:` + };`},vxe={name:"typescript:rest",importName:"__rest",scoped:!1,text:` var __rest = (this && this.__rest) || function (s, e) { var t = {}; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) @@ -559,7 +559,7 @@ ${bt.join(` t[p[i]] = s[p[i]]; } return t; - };`},Bxe={name:"typescript:awaiter",importName:"__awaiter",scoped:!1,priority:5,text:` + };`},Sxe={name:"typescript:awaiter",importName:"__awaiter",scoped:!1,priority:5,text:` var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -568,7 +568,7 @@ ${bt.join(` function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); - };`},vxe={name:"typescript:extends",importName:"__extends",scoped:!1,priority:0,text:` + };`},wxe={name:"typescript:extends",importName:"__extends",scoped:!1,priority:0,text:` var __extends = (this && this.__extends) || (function () { var extendStatics = function (d, b) { extendStatics = Object.setPrototypeOf || @@ -584,11 +584,11 @@ ${bt.join(` function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; - })();`},Sxe={name:"typescript:makeTemplateObject",importName:"__makeTemplateObject",scoped:!1,priority:0,text:` + })();`},Txe={name:"typescript:makeTemplateObject",importName:"__makeTemplateObject",scoped:!1,priority:0,text:` var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) { if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; } return cooked; - };`},wxe={name:"typescript:read",importName:"__read",scoped:!1,text:` + };`},Nxe={name:"typescript:read",importName:"__read",scoped:!1,text:` var __read = (this && this.__read) || function (o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; @@ -604,7 +604,7 @@ ${bt.join(` finally { if (e) throw e.error; } } return ar; - };`},Txe={name:"typescript:spreadArray",importName:"__spreadArray",scoped:!1,text:` + };`},Rxe={name:"typescript:spreadArray",importName:"__spreadArray",scoped:!1,text:` var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { if (ar || !(i in from)) { @@ -613,14 +613,14 @@ ${bt.join(` } } return to.concat(ar || Array.prototype.slice.call(from)); - };`},Nxe={name:"typescript:propKey",importName:"__propKey",scoped:!1,text:` + };`},Dxe={name:"typescript:propKey",importName:"__propKey",scoped:!1,text:` var __propKey = (this && this.__propKey) || function (x) { return typeof x === "symbol" ? x : "".concat(x); - };`},Rxe={name:"typescript:setFunctionName",importName:"__setFunctionName",scoped:!1,text:` + };`},xxe={name:"typescript:setFunctionName",importName:"__setFunctionName",scoped:!1,text:` var __setFunctionName = (this && this.__setFunctionName) || function (f, name, prefix) { if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : ""; return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name }); - };`},Dxe={name:"typescript:values",importName:"__values",scoped:!1,text:` + };`},kxe={name:"typescript:values",importName:"__values",scoped:!1,text:` var __values = (this && this.__values) || function(o) { var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; if (m) return m.call(o); @@ -631,7 +631,7 @@ ${bt.join(` } }; throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); - };`},xxe={name:"typescript:generator",importName:"__generator",scoped:!1,priority:6,text:` + };`},Gxe={name:"typescript:generator",importName:"__generator",scoped:!1,priority:6,text:` var __generator = (this && this.__generator) || function (thisArg, body) { var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; @@ -658,7 +658,7 @@ ${bt.join(` } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; } - };`},Tle={name:"typescript:commonjscreatebinding",importName:"__createBinding",scoped:!1,priority:1,text:` + };`},Lle={name:"typescript:commonjscreatebinding",importName:"__createBinding",scoped:!1,priority:1,text:` var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); @@ -669,40 +669,40 @@ ${bt.join(` }) : (function(o, m, k, k2) { if (k2 === undefined) k2 = k; o[k2] = m[k]; - }));`},kxe={name:"typescript:commonjscreatevalue",importName:"__setModuleDefault",scoped:!1,priority:1,text:` + }));`},Fxe={name:"typescript:commonjscreatevalue",importName:"__setModuleDefault",scoped:!1,priority:1,text:` var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); }) : function(o, v) { o["default"] = v; - });`},xhe={name:"typescript:commonjsimportstar",importName:"__importStar",scoped:!1,dependencies:[Tle,kxe],priority:2,text:` + });`},Ghe={name:"typescript:commonjsimportstar",importName:"__importStar",scoped:!1,dependencies:[Lle,Fxe],priority:2,text:` var __importStar = (this && this.__importStar) || function (mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); __setModuleDefault(result, mod); return result; - };`},Gxe={name:"typescript:commonjsimportdefault",importName:"__importDefault",scoped:!1,text:` + };`},Zxe={name:"typescript:commonjsimportdefault",importName:"__importDefault",scoped:!1,text:` var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; - };`},Fxe={name:"typescript:export-star",importName:"__exportStar",scoped:!1,dependencies:[Tle],priority:2,text:` + };`},Lxe={name:"typescript:export-star",importName:"__exportStar",scoped:!1,dependencies:[Lle],priority:2,text:` var __exportStar = (this && this.__exportStar) || function(m, exports) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); - };`},Zxe={name:"typescript:classPrivateFieldGet",importName:"__classPrivateFieldGet",scoped:!1,text:` + };`},Vxe={name:"typescript:classPrivateFieldGet",importName:"__classPrivateFieldGet",scoped:!1,text:` var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) { if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter"); 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"); return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver); - };`},Lxe={name:"typescript:classPrivateFieldSet",importName:"__classPrivateFieldSet",scoped:!1,text:` + };`},Wxe={name:"typescript:classPrivateFieldSet",importName:"__classPrivateFieldSet",scoped:!1,text:` var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) { if (kind === "m") throw new TypeError("Private method is not writable"); if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter"); 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"); return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value; - };`},Vxe={name:"typescript:classPrivateFieldIn",importName:"__classPrivateFieldIn",scoped:!1,text:` + };`},Pxe={name:"typescript:classPrivateFieldIn",importName:"__classPrivateFieldIn",scoped:!1,text:` var __classPrivateFieldIn = (this && this.__classPrivateFieldIn) || function(state, receiver) { if (receiver === null || (typeof receiver !== "object" && typeof receiver !== "function")) throw new TypeError("Cannot use 'in' operator on non-object"); return typeof state === "function" ? receiver === state : state.has(receiver); - };`},Wxe={name:"typescript:addDisposableResource",importName:"__addDisposableResource",scoped:!1,text:` + };`},Oxe={name:"typescript:addDisposableResource",importName:"__addDisposableResource",scoped:!1,text:` var __addDisposableResource = (this && this.__addDisposableResource) || function (env, value, async) { if (value !== null && value !== void 0) { if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected."); @@ -724,7 +724,7 @@ ${bt.join(` env.stack.push({ async: true }); } return value; - };`},Pxe={name:"typescript:disposeResources",importName:"__disposeResources",scoped:!1,text:` + };`},Qxe={name:"typescript:disposeResources",importName:"__disposeResources",scoped:!1,text:` var __disposeResources = (this && this.__disposeResources) || (function (SuppressedError) { return function (env) { function fail(e) { @@ -749,42 +749,42 @@ ${bt.join(` })(typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) { var e = new Error(message); return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e; - });`},Nle={name:"typescript:async-super",scoped:!0,text:fV` - const ${"_superIndex"} = name => super[name];`},KS={name:"typescript:advanced-async-super",scoped:!0,text:fV` + });`},Vle={name:"typescript:async-super",scoped:!0,text:IV` + const ${"_superIndex"} = name => super[name];`},jS={name:"typescript:advanced-async-super",scoped:!0,text:IV` 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 R6(n,c){return cu(n)&&sr(n.expression)&&(Sg(n.expression)&8192)!==0&&n.expression.escapedText===c}function du(n){return n.kind===9}function K3(n){return n.kind===10}function bu(n){return n.kind===11}function sY(n){return n.kind===12}function khe(n){return n.kind===14}function oY(n){return n.kind===15}function aY(n){return n.kind===16}function j3(n){return n.kind===17}function Rle(n){return n.kind===18}function cY(n){return n.kind===26}function Oxe(n){return n.kind===28}function Ghe(n){return n.kind===40}function ite(n){return n.kind===41}function ste(n){return n.kind===42}function ote(n){return n.kind===54}function wG(n){return n.kind===58}function Mxe(n){return n.kind===59}function a4(n){return n.kind===29}function Qxe(n){return n.kind===39}function sr(n){return n.kind===80}function kc(n){return n.kind===81}function Fx(n){return n.kind===95}function ate(n){return n.kind===90}function c4(n){return n.kind===134}function Fhe(n){return n.kind===131}function Dle(n){return n.kind===135}function IV(n){return n.kind===148}function nT(n){return n.kind===126}function lY(n){return n.kind===128}function Zhe(n){return n.kind===164}function Yxe(n){return n.kind===129}function z3(n){return n.kind===108}function D6(n){return n.kind===102}function Lhe(n){return n.kind===84}function a0(n){return n.kind===166}function xg(n){return n.kind===167}function qp(n){return n.kind===168}function Jc(n){return n.kind===169}function GC(n){return n.kind===170}function n_(n){return n.kind===171}function Ql(n){return n.kind===172}function jS(n){return n.kind===173}function cI(n){return n.kind===174}function $p(n){return n.kind===175}function Rf(n){return n.kind===176}function Pb(n){return n.kind===177}function sb(n){return n.kind===178}function CV(n){return n.kind===179}function A(n){return n.kind===180}function _(n){return n.kind===181}function S(n){return n.kind===182}function F(n){return n.kind===183}function Y(n){return n.kind===184}function H(n){return n.kind===185}function oe(n){return n.kind===186}function Se(n){return n.kind===187}function He(n){return n.kind===188}function Ct(n){return n.kind===189}function At(n){return n.kind===202}function Ut(n){return n.kind===190}function cn(n){return n.kind===191}function Is(n){return n.kind===192}function ji(n){return n.kind===193}function Ei(n){return n.kind===194}function bo(n){return n.kind===195}function ro(n){return n.kind===196}function ca(n){return n.kind===197}function as(n){return n.kind===198}function hs(n){return n.kind===199}function Sl(n){return n.kind===200}function id(n){return n.kind===201}function Tu(n){return n.kind===205}function tg(n){return n.kind===204}function ep(n){return n.kind===203}function Vg(n){return n.kind===206}function Vu(n){return n.kind===207}function ml(n){return n.kind===208}function If(n){return n.kind===209}function tu(n){return n.kind===210}function Io(n){return n.kind===211}function hA(n){return n.kind===212}function cu(n){return n.kind===213}function zS(n){return n.kind===214}function V1(n){return n.kind===215}function mV(n){return n.kind===216}function FC(n){return n.kind===217}function WA(n){return n.kind===218}function fd(n){return n.kind===219}function q3(n){return n.kind===220}function eD(n){return n.kind===221}function Cf(n){return n.kind===222}function Ob(n){return n.kind===223}function xB(n){return n.kind===224}function Zx(n){return n.kind===225}function no(n){return n.kind===226}function BN(n){return n.kind===227}function Lx(n){return n.kind===228}function Vx(n){return n.kind===229}function ph(n){return n.kind===230}function tp(n){return n.kind===231}function ef(n){return n.kind===232}function x_(n){return n.kind===233}function qS(n){return n.kind===234}function TG(n){return n.kind===238}function iT(n){return n.kind===235}function vN(n){return n.kind===236}function $3(n){return n.kind===237}function NG(n){return n.kind===354}function VE(n){return n.kind===355}function Mb(n){return n.kind===239}function Wx(n){return n.kind===240}function mc(n){return n.kind===241}function Rp(n){return n.kind===243}function Fv(n){return n.kind===242}function Hf(n){return n.kind===244}function H0(n){return n.kind===245}function kZ(n){return n.kind===246}function GZ(n){return n.kind===247}function kB(n){return n.kind===248}function tD(n){return n.kind===249}function W1(n){return n.kind===250}function RG(n){return n.kind===251}function eP(n){return n.kind===252}function k_(n){return n.kind===253}function hV(n){return n.kind===254}function Ed(n){return n.kind===255}function nC(n){return n.kind===256}function F2(n){return n.kind===257}function ob(n){return n.kind===258}function $S(n){return n.kind===259}function zs(n){return n.kind===260}function yl(n){return n.kind===261}function mp(n){return n.kind===262}function bc(n){return n.kind===263}function HI(n){return n.kind===264}function Wf(n){return n.kind===265}function tP(n){return n.kind===266}function CC(n){return n.kind===267}function SN(n){return n.kind===268}function xle(n){return n.kind===269}function Vhe(n){return n.kind===270}function Cm(n){return n.kind===271}function mI(n){return n.kind===272}function sT(n){return n.kind===273}function LDr(n){return n.kind===302}function HNt(n){return n.kind===300}function VDr(n){return n.kind===301}function l4(n){return n.kind===300}function XNt(n){return n.kind===301}function Px(n){return n.kind===274}function rD(n){return n.kind===280}function wN(n){return n.kind===275}function _y(n){return n.kind===276}function tf(n){return n.kind===277}function mC(n){return n.kind===278}function GB(n){return n.kind===279}function c0(n){return n.kind===281}function WDr(n){return n.kind===282}function GKe(n){return n.kind===353}function x6(n){return n.kind===356}function DG(n){return n.kind===283}function Ox(n){return n.kind===284}function u4(n){return n.kind===285}function TN(n){return n.kind===286}function uY(n){return n.kind===287}function gY(n){return n.kind===288}function g4(n){return n.kind===289}function JNt(n){return n.kind===290}function NN(n){return n.kind===291}function AY(n){return n.kind===292}function k6(n){return n.kind===293}function kle(n){return n.kind===294}function oT(n){return n.kind===295}function cte(n){return n.kind===296}function Gle(n){return n.kind===297}function WE(n){return n.kind===298}function dY(n){return n.kind===299}function KC(n){return n.kind===303}function G_(n){return n.kind===304}function Mx(n){return n.kind===305}function _V(n){return n.kind===306}function Gc(n){return n.kind===307}function UNt(n){return n.kind===308}function rP(n){return n.kind===309}function Fle(n){return n.kind===310}function nP(n){return n.kind===311}function KNt(n){return n.kind===324}function jNt(n){return n.kind===325}function PDr(n){return n.kind===326}function zNt(n){return n.kind===312}function qNt(n){return n.kind===313}function lte(n){return n.kind===314}function Hxe(n){return n.kind===315}function FKe(n){return n.kind===316}function ute(n){return n.kind===317}function Xxe(n){return n.kind===318}function ODr(n){return n.kind===319}function aT(n){return n.kind===320}function A4(n){return n.kind===322}function xG(n){return n.kind===323}function G6(n){return n.kind===328}function MDr(n){return n.kind===330}function $Nt(n){return n.kind===332}function ZKe(n){return n.kind===338}function LKe(n){return n.kind===333}function VKe(n){return n.kind===334}function WKe(n){return n.kind===335}function PKe(n){return n.kind===336}function Jxe(n){return n.kind===337}function gte(n){return n.kind===339}function OKe(n){return n.kind===331}function QDr(n){return n.kind===347}function Whe(n){return n.kind===340}function FB(n){return n.kind===341}function Uxe(n){return n.kind===342}function MKe(n){return n.kind===343}function Zle(n){return n.kind===344}function Zv(n){return n.kind===345}function d4(n){return n.kind===346}function YDr(n){return n.kind===327}function eRt(n){return n.kind===348}function Kxe(n){return n.kind===329}function jxe(n){return n.kind===350}function HDr(n){return n.kind===349}function RN(n){return n.kind===351}function Ate(n){return n.kind===352}var Lle=new WeakMap;function QKe(n,c){var u;let d=n.kind;return pX(d)?d===352?n._children:(u=Lle.get(c))==null?void 0:u.get(n):v}function tRt(n,c,u){n.kind===352&&w.fail("Should not need to re-set the children of a SyntaxList.");let d=Lle.get(c);return d===void 0&&(d=new WeakMap,Lle.set(c,d)),d.set(n,u),u}function YKe(n,c){var u;n.kind===352&&w.fail("Did not expect to unset the children of a SyntaxList."),(u=Lle.get(c))==null||u.delete(n)}function rRt(n,c){let u=Lle.get(n);u!==void 0&&(Lle.delete(n),Lle.set(c,u))}function Phe(n){return n.createExportDeclaration(void 0,!1,n.createNamedExports([]),void 0)}function p4(n,c,u,d){if(xg(u))return un(n.createElementAccessExpression(c,u.expression),d);{let I=un($y(u)?n.createPropertyAccessExpression(c,u):n.createElementAccessExpression(c,u),u);return XS(I,128),I}}function nRt(n,c){let u=sP.createIdentifier(n||"React");return kA(u,jc(c)),u}function iRt(n,c,u){if(a0(c)){let d=iRt(n,c.left,u),I=n.createIdentifier(ao(c.right));return I.escapedText=c.right.escapedText,n.createPropertyAccessExpression(d,I)}else return nRt(ao(c),u)}function HKe(n,c,u,d){return c?iRt(n,c,d):n.createPropertyAccessExpression(nRt(u,d),"createElement")}function aKi(n,c,u,d){return c?iRt(n,c,d):n.createPropertyAccessExpression(nRt(u,d),"Fragment")}function sRt(n,c,u,d,I,h){let b=[u];if(d&&b.push(d),I&&I.length>0)if(d||b.push(n.createNull()),I.length>1)for(let R of I)l0(R),b.push(R);else b.push(I[0]);return un(n.createCallExpression(c,void 0,b),h)}function oRt(n,c,u,d,I,h,b){let N=[aKi(n,u,d,h),n.createNull()];if(I&&I.length>0)if(I.length>1)for(let V of I)l0(V),N.push(V);else N.push(I[0]);return un(n.createCallExpression(HKe(n,c,d,h),void 0,N),b)}function XKe(n,c,u){if(yl(c)){let d=$s(c.declarations),I=n.updateVariableDeclaration(d,d.name,void 0,void 0,u);return un(n.createVariableStatement(void 0,n.updateVariableDeclarationList(c,[I])),c)}else{let d=un(n.createAssignment(c,u),c);return un(n.createExpressionStatement(d),c)}}function XDr(n,c,u){return mc(c)?n.updateBlock(c,un(n.createNodeArray([u,...c.statements]),c.statements)):n.createBlock(n.createNodeArray([c,u]),!0)}function Ohe(n,c){if(a0(c)){let u=Ohe(n,c.left),d=kA(un(n.cloneNode(c.right),c.right),c.right.parent);return un(n.createPropertyAccessExpression(u,d),c)}else return kA(un(n.cloneNode(c),c),c.parent)}function JKe(n,c){return sr(c)?n.createStringLiteralFromNode(c):xg(c)?kA(un(n.cloneNode(c.expression),c.expression),c.expression.parent):kA(un(n.cloneNode(c),c),c.parent)}function cKi(n,c,u,d,I){let{firstAccessor:h,getAccessor:b,setAccessor:R}=xx(c,u);if(u===h)return un(n.createObjectDefinePropertyCall(d,JKe(n,u.name),n.createPropertyDescriptor({enumerable:n.createFalse(),configurable:!0,get:b&&un(Ho(n.createFunctionExpression(lN(b),void 0,void 0,void 0,b.parameters,void 0,b.body),b),b),set:R&&un(Ho(n.createFunctionExpression(lN(R),void 0,void 0,void 0,R.parameters,void 0,R.body),R),R)},!I)),h)}function lKi(n,c,u){return Ho(un(n.createAssignment(p4(n,u,c.name,c.name),c.initializer),c),c)}function uKi(n,c,u){return Ho(un(n.createAssignment(p4(n,u,c.name,c.name),n.cloneNode(c.name)),c),c)}function gKi(n,c,u){return Ho(un(n.createAssignment(p4(n,u,c.name,c.name),Ho(un(n.createFunctionExpression(lN(c),c.asteriskToken,void 0,void 0,c.parameters,void 0,c.body),c),c)),c),c)}function aRt(n,c,u,d){switch(u.name&&kc(u.name)&&w.failBadSyntaxKind(u.name,"Private identifiers are not allowed in object literals."),u.kind){case 177:case 178:return cKi(n,c.properties,u,d,!!c.multiLine);case 303:return lKi(n,u,d);case 304:return uKi(n,u,d);case 174:return gKi(n,u,d)}}function zxe(n,c,u,d,I){let h=c.operator;w.assert(h===46||h===47,"Expected 'node' to be a pre- or post-increment or pre- or post-decrement expression");let b=n.createTempVariable(d);u=n.createAssignment(b,u),un(u,c.operand);let R=xB(c)?n.createPrefixUnaryExpression(h,b):n.createPostfixUnaryExpression(b,h);return un(R,c),I&&(R=n.createAssignment(I,R),un(R,c)),u=n.createComma(u,R),un(u,c),Zx(c)&&(u=n.createComma(u,b),un(u,c)),u}function UKe(n){return(Sg(n)&65536)!==0}function kG(n){return(Sg(n)&32768)!==0}function qxe(n){return(Sg(n)&16384)!==0}function JDr(n){return bu(n.expression)&&n.expression.text==="use strict"}function KKe(n){for(let c of n)if(QI(c)){if(JDr(c))return c}else break}function cRt(n){let c=$i(n);return c!==void 0&&QI(c)&&JDr(c)}function Mhe(n){return n.kind===226&&n.operatorToken.kind===28}function Vle(n){return Mhe(n)||VE(n)}function f4(n){return FC(n)&&so(n)&&!!_x(n)}function Wle(n){let c=yx(n);return w.assertIsDefined(c),c}function $xe(n,c=15){switch(n.kind){case 217:return c&16&&f4(n)?!1:(c&1)!==0;case 216:case 234:case 233:case 238:return(c&2)!==0;case 235:return(c&4)!==0;case 354:return(c&8)!==0}return!1}function ZC(n,c=15){for(;$xe(n,c);)n=n.expression;return n}function lRt(n,c=15){let u=n.parent;for(;$xe(u,c);)u=u.parent,w.assert(u);return u}function UDr(n){return ZC(n,6)}function l0(n){return ble(n,!0)}function eke(n){let c=Tp(n,Gc),u=c&&c.emitNode;return u&&u.externalHelpersModuleName}function uRt(n){let c=Tp(n,Gc),u=c&&c.emitNode;return!!u&&(!!u.externalHelpersModuleName||!!u.externalHelpers)}function jKe(n,c,u,d,I,h,b){if(d.importHelpers&&U9(u,d)){let R,N=R_(d);if(N>=5&&N<=99||u.impliedNodeFormat===99){let V=Ble(u);if(V){let P=[];for(let M of V)if(!M.scoped){let te=M.importName;te&&pa(P,te)}if(lr(P)){P.sort(Do),R=n.createNamedImports(Ot(P,re=>EQ(u,re)?n.createImportSpecifier(!1,void 0,n.createIdentifier(re)):n.createImportSpecifier(!1,n.createIdentifier(re),c.getUnscopedHelperName(re))));let M=Tp(u,Gc),te=xh(M);te.externalHelpers=!0}}}else{let V=gRt(n,u,d,I,h||b);V&&(R=n.createNamespaceImport(V))}if(R){let V=n.createImportDeclaration(void 0,n.createImportClause(!1,void 0,R),n.createStringLiteral(vx),void 0);return eY(V,2),V}}}function gRt(n,c,u,d,I){if(u.importHelpers&&U9(c,u)){let h=eke(c);if(h)return h;let b=R_(u),R=(d||IN(u)&&I)&&b!==4&&(b<5||c.impliedNodeFormat===1);if(!R){let N=Ble(c);if(N){for(let V of N)if(!V.scoped){R=!0;break}}}if(R){let N=Tp(c,Gc),V=xh(N);return V.externalHelpersModuleName||(V.externalHelpersModuleName=n.createUniqueName(vx))}}}function dte(n,c,u){let d=WX(c);if(d&&!xQ(c)&&!BQ(c)){let I=d.name;return Ip(I)?I:n.createIdentifier(pG(u,I)||ao(I))}if(c.kind===272&&c.importClause||c.kind===278&&c.moduleSpecifier)return n.getGeneratedNameForNode(c)}function F6(n,c,u,d,I,h){let b=DQ(c);if(b&&bu(b))return dKi(c,d,n,I,h)||AKi(n,b,u)||n.cloneNode(b)}function AKi(n,c,u){let d=u.renamedDependencies&&u.renamedDependencies.get(c.text);return d?n.createStringLiteral(d):void 0}function Qhe(n,c,u,d){if(c){if(c.moduleName)return n.createStringLiteral(c.moduleName);if(!c.isDeclarationFile&&d.outFile)return n.createStringLiteral(Rme(u,c.fileName))}}function dKi(n,c,u,d,I){return Qhe(u,d.getExternalModuleFileFromDeclaration(n),c,I)}function Yhe(n){if(CX(n))return n.initializer;if(KC(n)){let c=n.initializer;return fm(c,!0)?c.right:void 0}if(G_(n))return n.objectAssignmentInitializer;if(fm(n,!0))return n.right;if(ph(n))return Yhe(n.expression)}function yV(n){if(CX(n))return n.name;if(EB(n)){switch(n.kind){case 303:return yV(n.initializer);case 304:return n.name;case 305:return yV(n.expression)}return}return fm(n,!0)?yV(n.left):ph(n)?yV(n.expression):n}function tke(n){switch(n.kind){case 169:case 208:return n.dotDotDotToken;case 230:case 305:return n}}function zKe(n){let c=rke(n);return w.assert(!!c||Mx(n),"Invalid property name for binding element."),c}function rke(n){switch(n.kind){case 208:if(n.propertyName){let u=n.propertyName;return kc(u)?w.failBadSyntaxKind(u):xg(u)&&KDr(u.expression)?u.expression:u}break;case 303:if(n.name){let u=n.name;return kc(u)?w.failBadSyntaxKind(u):xg(u)&&KDr(u.expression)?u.expression:u}break;case 305:return n.name&&kc(n.name)?w.failBadSyntaxKind(n.name):n.name}let c=yV(n);if(c&&NI(c))return c}function KDr(n){let c=n.kind;return c===11||c===9}function pte(n){switch(n.kind){case 206:case 207:case 209:return n.elements;case 210:return n.properties}}function qKe(n){if(n){let c=n;for(;;){if(sr(c)||!c.body)return sr(c)?c:c.name;c=c.body}}}function jDr(n){let c=n.kind;return c===176||c===178}function ARt(n){let c=n.kind;return c===176||c===177||c===178}function $Ke(n){let c=n.kind;return c===303||c===304||c===262||c===176||c===181||c===175||c===282||c===243||c===264||c===265||c===266||c===267||c===271||c===272||c===270||c===278||c===277}function dRt(n){let c=n.kind;return c===175||c===303||c===304||c===282||c===270}function pRt(n){return wG(n)||ote(n)}function fRt(n){return sr(n)||ca(n)}function IRt(n){return IV(n)||Ghe(n)||ite(n)}function CRt(n){return wG(n)||Ghe(n)||ite(n)}function mRt(n){return sr(n)||bu(n)}function zDr(n){let c=n.kind;return c===106||c===112||c===97||Sv(n)||xB(n)}function pKi(n){return n===43}function fKi(n){return n===42||n===44||n===45}function IKi(n){return pKi(n)||fKi(n)}function CKi(n){return n===40||n===41}function mKi(n){return CKi(n)||IKi(n)}function hKi(n){return n===48||n===49||n===50}function e8e(n){return hKi(n)||mKi(n)}function _Ki(n){return n===30||n===33||n===32||n===34||n===104||n===103}function yKi(n){return _Ki(n)||e8e(n)}function bKi(n){return n===35||n===37||n===36||n===38}function EKi(n){return bKi(n)||yKi(n)}function BKi(n){return n===51||n===52||n===53}function vKi(n){return BKi(n)||EKi(n)}function SKi(n){return n===56||n===57}function wKi(n){return SKi(n)||vKi(n)}function TKi(n){return n===61||wKi(n)||qR(n)}function NKi(n){return TKi(n)||n===28}function hRt(n){return NKi(n.kind)}var t8e;(n=>{function c(P,M,te,re,ue,Ae,de){let Be=M>0?ue[M-1]:void 0;return w.assertEqual(te[M],c),ue[M]=P.onEnter(re[M],Be,de),te[M]=R(P,c),M}n.enter=c;function u(P,M,te,re,ue,Ae,de){w.assertEqual(te[M],u),w.assertIsDefined(P.onLeft),te[M]=R(P,u);let Be=P.onLeft(re[M].left,ue[M],re[M]);return Be?(V(M,re,Be),N(M,te,re,ue,Be)):M}n.left=u;function d(P,M,te,re,ue,Ae,de){return w.assertEqual(te[M],d),w.assertIsDefined(P.onOperator),te[M]=R(P,d),P.onOperator(re[M].operatorToken,ue[M],re[M]),M}n.operator=d;function I(P,M,te,re,ue,Ae,de){w.assertEqual(te[M],I),w.assertIsDefined(P.onRight),te[M]=R(P,I);let Be=P.onRight(re[M].right,ue[M],re[M]);return Be?(V(M,re,Be),N(M,te,re,ue,Be)):M}n.right=I;function h(P,M,te,re,ue,Ae,de){w.assertEqual(te[M],h),te[M]=R(P,h);let Be=P.onExit(re[M],ue[M]);if(M>0){if(M--,P.foldState){let Fe=te[M]===h?"right":"left";ue[M]=P.foldState(ue[M],Be,Fe)}}else Ae.value=Be;return M}n.exit=h;function b(P,M,te,re,ue,Ae,de){return w.assertEqual(te[M],b),M}n.done=b;function R(P,M){switch(M){case c:if(P.onLeft)return u;case u:if(P.onOperator)return d;case d:if(P.onRight)return I;case I:return h;case h:return b;case b:return b;default:w.fail("Invalid state")}}n.nextState=R;function N(P,M,te,re,ue){return P++,M[P]=c,te[P]=ue,re[P]=void 0,P}function V(P,M,te){if(w.shouldAssert(2))for(;P>=0;)w.assert(M[P]!==te,"Circular traversal detected."),P--}})(t8e||(t8e={}));var RKi=class{constructor(n,c,u,d,I,h){this.onEnter=n,this.onLeft=c,this.onOperator=u,this.onRight=d,this.onExit=I,this.foldState=h}};function nke(n,c,u,d,I,h){let b=new RKi(n,c,u,d,I,h);return R;function R(N,V){let P={value:void 0},M=[t8e.enter],te=[N],re=[void 0],ue=0;for(;M[ue]!==t8e.done;)ue=M[ue](b,ue,M,te,re,P,V);return w.assertEqual(ue,0),P.value}}function qDr(n){return n===95||n===90}function Hhe(n){let c=n.kind;return qDr(c)}function $Dr(n){let c=n.kind;return wv(c)&&!qDr(c)}function _Rt(n,c){if(c!==void 0)return c.length===0?c:un(n.createNodeArray([],c.hasTrailingComma),c)}function Xhe(n){var c;let u=n.emitNode.autoGenerate;if(u.flags&4){let d=u.id,I=n,h=I.original;for(;h;){I=h;let b=(c=I.emitNode)==null?void 0:c.autoGenerate;if($y(I)&&(b===void 0||b.flags&4&&b.id!==d))break;h=I.original}return I}return n}function fte(n,c){return typeof n=="object"?iP(!1,n.prefix,n.node,n.suffix,c):typeof n=="string"?n.length>0&&n.charCodeAt(0)===35?n.slice(1):n:""}function DKi(n,c){return typeof n=="string"?n:xKi(n,w.checkDefined(c))}function xKi(n,c){return CZ(n)?c(n).slice(1):Ip(n)?c(n):kc(n)?n.escapedText.slice(1):ao(n)}function iP(n,c,u,d,I){return c=fte(c,I),d=fte(d,I),u=DKi(u,I),`${n?"#":""}${c}${u}${d}`}function r8e(n,c,u,d){return n.updatePropertyDeclaration(c,u,n.getGeneratedPrivateNameForNode(c.name,void 0,"_accessor_storage"),void 0,void 0,d)}function yRt(n,c,u,d,I=n.createThis()){return n.createGetAccessorDeclaration(u,d,[],void 0,n.createBlock([n.createReturnStatement(n.createPropertyAccessExpression(I,n.getGeneratedPrivateNameForNode(c.name,void 0,"_accessor_storage")))]))}function bRt(n,c,u,d,I=n.createThis()){return n.createSetAccessorDeclaration(u,d,[n.createParameterDeclaration(void 0,void 0,"value")],n.createBlock([n.createExpressionStatement(n.createAssignment(n.createPropertyAccessExpression(I,n.getGeneratedPrivateNameForNode(c.name,void 0,"_accessor_storage")),n.createIdentifier("value")))]))}function ike(n){let c=n.expression;for(;;){if(c=ZC(c),VE(c)){c=Na(c.elements);continue}if(Mhe(c)){c=c.right;continue}if(fm(c,!0)&&Ip(c.left))return c;break}}function kKi(n){return FC(n)&&qd(n)&&!n.emitNode}function ske(n,c){if(kKi(n))ske(n.expression,c);else if(Mhe(n))ske(n.left,c),ske(n.right,c);else if(VE(n))for(let u of n.elements)ske(u,c);else c.push(n)}function ERt(n){let c=[];return ske(n,c),c}function Jhe(n){if(n.transformFlags&65536)return!0;if(n.transformFlags&128)for(let c of pte(n)){let u=yV(c);if(u&&H9(u)&&(u.transformFlags&65536||u.transformFlags&128&&Jhe(u)))return!0}return!1}function un(n,c){return c?MS(n,c.pos,c.end):n}function ew(n){let c=n.kind;return c===168||c===169||c===171||c===172||c===173||c===174||c===176||c===177||c===178||c===181||c===185||c===218||c===219||c===231||c===243||c===262||c===263||c===264||c===265||c===266||c===267||c===271||c===272||c===277||c===278}function pY(n){let c=n.kind;return c===169||c===172||c===174||c===177||c===178||c===231||c===263}var exr,txr,rxr,nxr,ixr,BRt={createBaseSourceFileNode:n=>new(ixr||(ixr=xC.getSourceFileConstructor()))(n,-1,-1),createBaseIdentifierNode:n=>new(rxr||(rxr=xC.getIdentifierConstructor()))(n,-1,-1),createBasePrivateIdentifierNode:n=>new(nxr||(nxr=xC.getPrivateIdentifierConstructor()))(n,-1,-1),createBaseTokenNode:n=>new(txr||(txr=xC.getTokenConstructor()))(n,-1,-1),createBaseNode:n=>new(exr||(exr=xC.getNodeConstructor()))(n,-1,-1)},sP=dV(1,BRt);function si(n,c){return c&&n(c)}function Fc(n,c,u){if(u){if(c)return c(u);for(let d of u){let I=n(d);if(I)return I}}}function n8e(n,c){return n.charCodeAt(c+1)===42&&n.charCodeAt(c+2)===42&&n.charCodeAt(c+3)!==47}function Uhe(n){return X(n.statements,GKi)||FKi(n)}function GKi(n){return ew(n)&&ZKi(n,95)||Cm(n)&&DG(n.moduleReference)||mI(n)||tf(n)||mC(n)?n:void 0}function FKi(n){return n.flags&8388608?sxr(n):void 0}function sxr(n){return LKi(n)?n:mu(n,sxr)}function ZKi(n,c){return lr(n.modifiers,u=>u.kind===c)}function LKi(n){return vN(n)&&n.keywordToken===102&&n.name.escapedText==="meta"}var VKi={166:function(c,u,d){return si(u,c.left)||si(u,c.right)},168:function(c,u,d){return Fc(u,d,c.modifiers)||si(u,c.name)||si(u,c.constraint)||si(u,c.default)||si(u,c.expression)},304:function(c,u,d){return Fc(u,d,c.modifiers)||si(u,c.name)||si(u,c.questionToken)||si(u,c.exclamationToken)||si(u,c.equalsToken)||si(u,c.objectAssignmentInitializer)},305:function(c,u,d){return si(u,c.expression)},169:function(c,u,d){return Fc(u,d,c.modifiers)||si(u,c.dotDotDotToken)||si(u,c.name)||si(u,c.questionToken)||si(u,c.type)||si(u,c.initializer)},172:function(c,u,d){return Fc(u,d,c.modifiers)||si(u,c.name)||si(u,c.questionToken)||si(u,c.exclamationToken)||si(u,c.type)||si(u,c.initializer)},171:function(c,u,d){return Fc(u,d,c.modifiers)||si(u,c.name)||si(u,c.questionToken)||si(u,c.type)||si(u,c.initializer)},303:function(c,u,d){return Fc(u,d,c.modifiers)||si(u,c.name)||si(u,c.questionToken)||si(u,c.exclamationToken)||si(u,c.initializer)},260:function(c,u,d){return si(u,c.name)||si(u,c.exclamationToken)||si(u,c.type)||si(u,c.initializer)},208:function(c,u,d){return si(u,c.dotDotDotToken)||si(u,c.propertyName)||si(u,c.name)||si(u,c.initializer)},181:function(c,u,d){return Fc(u,d,c.modifiers)||Fc(u,d,c.typeParameters)||Fc(u,d,c.parameters)||si(u,c.type)},185:function(c,u,d){return Fc(u,d,c.modifiers)||Fc(u,d,c.typeParameters)||Fc(u,d,c.parameters)||si(u,c.type)},184:function(c,u,d){return Fc(u,d,c.modifiers)||Fc(u,d,c.typeParameters)||Fc(u,d,c.parameters)||si(u,c.type)},179:oxr,180:oxr,174:function(c,u,d){return Fc(u,d,c.modifiers)||si(u,c.asteriskToken)||si(u,c.name)||si(u,c.questionToken)||si(u,c.exclamationToken)||Fc(u,d,c.typeParameters)||Fc(u,d,c.parameters)||si(u,c.type)||si(u,c.body)},173:function(c,u,d){return Fc(u,d,c.modifiers)||si(u,c.name)||si(u,c.questionToken)||Fc(u,d,c.typeParameters)||Fc(u,d,c.parameters)||si(u,c.type)},176:function(c,u,d){return Fc(u,d,c.modifiers)||si(u,c.name)||Fc(u,d,c.typeParameters)||Fc(u,d,c.parameters)||si(u,c.type)||si(u,c.body)},177:function(c,u,d){return Fc(u,d,c.modifiers)||si(u,c.name)||Fc(u,d,c.typeParameters)||Fc(u,d,c.parameters)||si(u,c.type)||si(u,c.body)},178:function(c,u,d){return Fc(u,d,c.modifiers)||si(u,c.name)||Fc(u,d,c.typeParameters)||Fc(u,d,c.parameters)||si(u,c.type)||si(u,c.body)},262:function(c,u,d){return Fc(u,d,c.modifiers)||si(u,c.asteriskToken)||si(u,c.name)||Fc(u,d,c.typeParameters)||Fc(u,d,c.parameters)||si(u,c.type)||si(u,c.body)},218:function(c,u,d){return Fc(u,d,c.modifiers)||si(u,c.asteriskToken)||si(u,c.name)||Fc(u,d,c.typeParameters)||Fc(u,d,c.parameters)||si(u,c.type)||si(u,c.body)},219:function(c,u,d){return Fc(u,d,c.modifiers)||Fc(u,d,c.typeParameters)||Fc(u,d,c.parameters)||si(u,c.type)||si(u,c.equalsGreaterThanToken)||si(u,c.body)},175:function(c,u,d){return Fc(u,d,c.modifiers)||si(u,c.body)},183:function(c,u,d){return si(u,c.typeName)||Fc(u,d,c.typeArguments)},182:function(c,u,d){return si(u,c.assertsModifier)||si(u,c.parameterName)||si(u,c.type)},186:function(c,u,d){return si(u,c.exprName)||Fc(u,d,c.typeArguments)},187:function(c,u,d){return Fc(u,d,c.members)},188:function(c,u,d){return si(u,c.elementType)},189:function(c,u,d){return Fc(u,d,c.elements)},192:axr,193:axr,194:function(c,u,d){return si(u,c.checkType)||si(u,c.extendsType)||si(u,c.trueType)||si(u,c.falseType)},195:function(c,u,d){return si(u,c.typeParameter)},205:function(c,u,d){return si(u,c.argument)||si(u,c.attributes)||si(u,c.qualifier)||Fc(u,d,c.typeArguments)},302:function(c,u,d){return si(u,c.assertClause)},196:cxr,198:cxr,199:function(c,u,d){return si(u,c.objectType)||si(u,c.indexType)},200:function(c,u,d){return si(u,c.readonlyToken)||si(u,c.typeParameter)||si(u,c.nameType)||si(u,c.questionToken)||si(u,c.type)||Fc(u,d,c.members)},201:function(c,u,d){return si(u,c.literal)},202:function(c,u,d){return si(u,c.dotDotDotToken)||si(u,c.name)||si(u,c.questionToken)||si(u,c.type)},206:lxr,207:lxr,209:function(c,u,d){return Fc(u,d,c.elements)},210:function(c,u,d){return Fc(u,d,c.properties)},211:function(c,u,d){return si(u,c.expression)||si(u,c.questionDotToken)||si(u,c.name)},212:function(c,u,d){return si(u,c.expression)||si(u,c.questionDotToken)||si(u,c.argumentExpression)},213:uxr,214:uxr,215:function(c,u,d){return si(u,c.tag)||si(u,c.questionDotToken)||Fc(u,d,c.typeArguments)||si(u,c.template)},216:function(c,u,d){return si(u,c.type)||si(u,c.expression)},217:function(c,u,d){return si(u,c.expression)},220:function(c,u,d){return si(u,c.expression)},221:function(c,u,d){return si(u,c.expression)},222:function(c,u,d){return si(u,c.expression)},224:function(c,u,d){return si(u,c.operand)},229:function(c,u,d){return si(u,c.asteriskToken)||si(u,c.expression)},223:function(c,u,d){return si(u,c.expression)},225:function(c,u,d){return si(u,c.operand)},226:function(c,u,d){return si(u,c.left)||si(u,c.operatorToken)||si(u,c.right)},234:function(c,u,d){return si(u,c.expression)||si(u,c.type)},235:function(c,u,d){return si(u,c.expression)},238:function(c,u,d){return si(u,c.expression)||si(u,c.type)},236:function(c,u,d){return si(u,c.name)},227:function(c,u,d){return si(u,c.condition)||si(u,c.questionToken)||si(u,c.whenTrue)||si(u,c.colonToken)||si(u,c.whenFalse)},230:function(c,u,d){return si(u,c.expression)},241:gxr,268:gxr,307:function(c,u,d){return Fc(u,d,c.statements)||si(u,c.endOfFileToken)},243:function(c,u,d){return Fc(u,d,c.modifiers)||si(u,c.declarationList)},261:function(c,u,d){return Fc(u,d,c.declarations)},244:function(c,u,d){return si(u,c.expression)},245:function(c,u,d){return si(u,c.expression)||si(u,c.thenStatement)||si(u,c.elseStatement)},246:function(c,u,d){return si(u,c.statement)||si(u,c.expression)},247:function(c,u,d){return si(u,c.expression)||si(u,c.statement)},248:function(c,u,d){return si(u,c.initializer)||si(u,c.condition)||si(u,c.incrementor)||si(u,c.statement)},249:function(c,u,d){return si(u,c.initializer)||si(u,c.expression)||si(u,c.statement)},250:function(c,u,d){return si(u,c.awaitModifier)||si(u,c.initializer)||si(u,c.expression)||si(u,c.statement)},251:Axr,252:Axr,253:function(c,u,d){return si(u,c.expression)},254:function(c,u,d){return si(u,c.expression)||si(u,c.statement)},255:function(c,u,d){return si(u,c.expression)||si(u,c.caseBlock)},269:function(c,u,d){return Fc(u,d,c.clauses)},296:function(c,u,d){return si(u,c.expression)||Fc(u,d,c.statements)},297:function(c,u,d){return Fc(u,d,c.statements)},256:function(c,u,d){return si(u,c.label)||si(u,c.statement)},257:function(c,u,d){return si(u,c.expression)},258:function(c,u,d){return si(u,c.tryBlock)||si(u,c.catchClause)||si(u,c.finallyBlock)},299:function(c,u,d){return si(u,c.variableDeclaration)||si(u,c.block)},170:function(c,u,d){return si(u,c.expression)},263:dxr,231:dxr,264:function(c,u,d){return Fc(u,d,c.modifiers)||si(u,c.name)||Fc(u,d,c.typeParameters)||Fc(u,d,c.heritageClauses)||Fc(u,d,c.members)},265:function(c,u,d){return Fc(u,d,c.modifiers)||si(u,c.name)||Fc(u,d,c.typeParameters)||si(u,c.type)},266:function(c,u,d){return Fc(u,d,c.modifiers)||si(u,c.name)||Fc(u,d,c.members)},306:function(c,u,d){return si(u,c.name)||si(u,c.initializer)},267:function(c,u,d){return Fc(u,d,c.modifiers)||si(u,c.name)||si(u,c.body)},271:function(c,u,d){return Fc(u,d,c.modifiers)||si(u,c.name)||si(u,c.moduleReference)},272:function(c,u,d){return Fc(u,d,c.modifiers)||si(u,c.importClause)||si(u,c.moduleSpecifier)||si(u,c.attributes)},273:function(c,u,d){return si(u,c.name)||si(u,c.namedBindings)},300:function(c,u,d){return Fc(u,d,c.elements)},301:function(c,u,d){return si(u,c.name)||si(u,c.value)},270:function(c,u,d){return Fc(u,d,c.modifiers)||si(u,c.name)},274:function(c,u,d){return si(u,c.name)},280:function(c,u,d){return si(u,c.name)},275:pxr,279:pxr,278:function(c,u,d){return Fc(u,d,c.modifiers)||si(u,c.exportClause)||si(u,c.moduleSpecifier)||si(u,c.attributes)},276:fxr,281:fxr,277:function(c,u,d){return Fc(u,d,c.modifiers)||si(u,c.expression)},228:function(c,u,d){return si(u,c.head)||Fc(u,d,c.templateSpans)},239:function(c,u,d){return si(u,c.expression)||si(u,c.literal)},203:function(c,u,d){return si(u,c.head)||Fc(u,d,c.templateSpans)},204:function(c,u,d){return si(u,c.type)||si(u,c.literal)},167:function(c,u,d){return si(u,c.expression)},298:function(c,u,d){return Fc(u,d,c.types)},233:function(c,u,d){return si(u,c.expression)||Fc(u,d,c.typeArguments)},283:function(c,u,d){return si(u,c.expression)},282:function(c,u,d){return Fc(u,d,c.modifiers)},355:function(c,u,d){return Fc(u,d,c.elements)},284:function(c,u,d){return si(u,c.openingElement)||Fc(u,d,c.children)||si(u,c.closingElement)},288:function(c,u,d){return si(u,c.openingFragment)||Fc(u,d,c.children)||si(u,c.closingFragment)},285:Ixr,286:Ixr,292:function(c,u,d){return Fc(u,d,c.properties)},291:function(c,u,d){return si(u,c.name)||si(u,c.initializer)},293:function(c,u,d){return si(u,c.expression)},294:function(c,u,d){return si(u,c.dotDotDotToken)||si(u,c.expression)},287:function(c,u,d){return si(u,c.tagName)},295:function(c,u,d){return si(u,c.namespace)||si(u,c.name)},190:Ple,191:Ple,309:Ple,315:Ple,314:Ple,316:Ple,318:Ple,317:function(c,u,d){return Fc(u,d,c.parameters)||si(u,c.type)},320:function(c,u,d){return(typeof c.comment=="string"?void 0:Fc(u,d,c.comment))||Fc(u,d,c.tags)},347:function(c,u,d){return si(u,c.tagName)||si(u,c.name)||(typeof c.comment=="string"?void 0:Fc(u,d,c.comment))},310:function(c,u,d){return si(u,c.name)},311:function(c,u,d){return si(u,c.left)||si(u,c.right)},341:Cxr,348:Cxr,330:function(c,u,d){return si(u,c.tagName)||(typeof c.comment=="string"?void 0:Fc(u,d,c.comment))},329:function(c,u,d){return si(u,c.tagName)||si(u,c.class)||(typeof c.comment=="string"?void 0:Fc(u,d,c.comment))},328:function(c,u,d){return si(u,c.tagName)||si(u,c.class)||(typeof c.comment=="string"?void 0:Fc(u,d,c.comment))},345:function(c,u,d){return si(u,c.tagName)||si(u,c.constraint)||Fc(u,d,c.typeParameters)||(typeof c.comment=="string"?void 0:Fc(u,d,c.comment))},346:function(c,u,d){return si(u,c.tagName)||(c.typeExpression&&c.typeExpression.kind===309?si(u,c.typeExpression)||si(u,c.fullName)||(typeof c.comment=="string"?void 0:Fc(u,d,c.comment)):si(u,c.fullName)||si(u,c.typeExpression)||(typeof c.comment=="string"?void 0:Fc(u,d,c.comment)))},338:function(c,u,d){return si(u,c.tagName)||si(u,c.fullName)||si(u,c.typeExpression)||(typeof c.comment=="string"?void 0:Fc(u,d,c.comment))},342:Ole,344:Ole,343:Ole,340:Ole,350:Ole,349:Ole,339:Ole,323:function(c,u,d){return X(c.typeParameters,u)||X(c.parameters,u)||si(u,c.type)},324:vRt,325:vRt,326:vRt,322:function(c,u,d){return X(c.jsDocPropertyTags,u)},327:Ite,332:Ite,333:Ite,334:Ite,335:Ite,336:Ite,331:Ite,337:Ite,351:WKi,354:PKi};function oxr(n,c,u){return Fc(c,u,n.typeParameters)||Fc(c,u,n.parameters)||si(c,n.type)}function axr(n,c,u){return Fc(c,u,n.types)}function cxr(n,c,u){return si(c,n.type)}function lxr(n,c,u){return Fc(c,u,n.elements)}function uxr(n,c,u){return si(c,n.expression)||si(c,n.questionDotToken)||Fc(c,u,n.typeArguments)||Fc(c,u,n.arguments)}function gxr(n,c,u){return Fc(c,u,n.statements)}function Axr(n,c,u){return si(c,n.label)}function dxr(n,c,u){return Fc(c,u,n.modifiers)||si(c,n.name)||Fc(c,u,n.typeParameters)||Fc(c,u,n.heritageClauses)||Fc(c,u,n.members)}function pxr(n,c,u){return Fc(c,u,n.elements)}function fxr(n,c,u){return si(c,n.propertyName)||si(c,n.name)}function Ixr(n,c,u){return si(c,n.tagName)||Fc(c,u,n.typeArguments)||si(c,n.attributes)}function Ple(n,c,u){return si(c,n.type)}function Cxr(n,c,u){return si(c,n.tagName)||(n.isNameFirst?si(c,n.name)||si(c,n.typeExpression):si(c,n.typeExpression)||si(c,n.name))||(typeof n.comment=="string"?void 0:Fc(c,u,n.comment))}function Ole(n,c,u){return si(c,n.tagName)||si(c,n.typeExpression)||(typeof n.comment=="string"?void 0:Fc(c,u,n.comment))}function vRt(n,c,u){return si(c,n.name)}function Ite(n,c,u){return si(c,n.tagName)||(typeof n.comment=="string"?void 0:Fc(c,u,n.comment))}function WKi(n,c,u){return si(c,n.tagName)||si(c,n.importClause)||si(c,n.moduleSpecifier)||si(c,n.attributes)||(typeof n.comment=="string"?void 0:Fc(c,u,n.comment))}function PKi(n,c,u){return si(c,n.expression)}function mu(n,c,u){if(n===void 0||n.kind<=165)return;let d=VKi[n.kind];return d===void 0?void 0:d(n,c,u)}function Z6(n,c,u){let d=mxr(n),I=[];for(;I.length=0;--R)d.push(h[R]),I.push(b)}else{let R=c(h,b);if(R){if(R==="skip")continue;return R}if(h.kind>=166)for(let N of mxr(h))d.push(N),I.push(h)}}}function mxr(n){let c=[];return mu(n,u,u),c;function u(d){c.unshift(d)}}function hxr(n){n.externalModuleIndicator=Uhe(n)}function L6(n,c,u,d=!1,I){var h,b,R,N;(h=Mi)==null||h.push(Mi.Phase.Parse,"createSourceFile",{path:n},!0),rs("beforeParse");let V;(b=Kl)==null||b.logStartParseSourceFile(n);let{languageVersion:P,setExternalModuleIndicator:M,impliedNodeFormat:te,jsDocParsingMode:re}=typeof u=="object"?u:{languageVersion:u};if(P===100)V=oP.parseSourceFile(n,c,P,void 0,d,6,oc,re);else{let ue=te===void 0?M:Ae=>(Ae.impliedNodeFormat=te,(M||hxr)(Ae));V=oP.parseSourceFile(n,c,P,void 0,d,I,ue,re)}return(R=Kl)==null||R.logStopParseSourceFile(),rs("afterParse"),vc("Parse","beforeParse","afterParse"),(N=Mi)==null||N.pop(),V}function V6(n,c){return oP.parseIsolatedEntityName(n,c)}function Khe(n,c){return oP.parseJsonText(n,c)}function mm(n){return n.externalModuleIndicator!==void 0}function i8e(n,c,u,d=!1){let I=s8e.updateSourceFile(n,c,u,d);return I.flags|=n.flags&12582912,I}function SRt(n,c,u){let d=oP.JSDocParser.parseIsolatedJSDocComment(n,c,u);return d&&d.jsDoc&&oP.fixupParentReferences(d.jsDoc),d}function _xr(n,c,u){return oP.JSDocParser.parseJSDocTypeExpressionForTests(n,c,u)}var oP;(n=>{var c=Ft(99,!0),u=40960,d,I,h,b,R;function N($e){return pr++,$e}var V={createBaseSourceFileNode:$e=>N(new R($e,0,0)),createBaseIdentifierNode:$e=>N(new h($e,0,0)),createBasePrivateIdentifierNode:$e=>N(new b($e,0,0)),createBaseTokenNode:$e=>N(new I($e,0,0)),createBaseNode:$e=>N(new d($e,0,0))},P=dV(11,V),{createNodeArray:M,createNumericLiteral:te,createStringLiteral:re,createLiteralLikeNode:ue,createIdentifier:Ae,createPrivateIdentifier:de,createToken:Be,createArrayLiteralExpression:Fe,createObjectLiteralExpression:Ne,createPropertyAccessExpression:Qe,createPropertyAccessChain:De,createElementAccessExpression:lt,createElementAccessChain:Le,createCallExpression:je,createCallChain:st,createNewExpression:nt,createParenthesizedExpression:qe,createBlock:it,createVariableStatement:It,createExpressionStatement:dt,createIfStatement:wt,createWhileStatement:vt,createForStatement:Ye,createForOfStatement:ht,createVariableDeclaration:Et,createVariableDeclarationList:Kt}=P,Tt,Lt,kt,Zt,Dr,jt,mr,Pt,Vr,Yr,pr,zr,$n,bi,Pi,Ns,gi=!0,jn=!1;function xs($e,Yt,Sr,_n,Xn=!1,es,Ca,Hc=0){var yc;if(es=ile($e,es),es===6){let Il=xi($e,Yt,Sr,_n,Xn);return e_e(Il,(yc=Il.statements[0])==null?void 0:yc.expression,Il.parseDiagnostics,!1,void 0),Il.referencedFiles=v,Il.typeReferenceDirectives=v,Il.libReferenceDirectives=v,Il.amdDependencies=v,Il.hasNoDefaultLib=!1,Il.pragmas=G,Il}rc($e,Yt,Sr,_n,es,Hc);let $a=ul(Sr,Xn,es,Ca||hxr,Hc);return Vl(),$a}n.parseSourceFile=xs;function Ec($e,Yt){rc("",$e,Yt,void 0,1,0),Vt();let Sr=rt(!0),_n=Re()===1&&!mr.length;return Vl(),_n?Sr:void 0}n.parseIsolatedEntityName=Ec;function xi($e,Yt,Sr=2,_n,Xn=!1){rc($e,Yt,Sr,_n,6,0),Lt=Ns,Vt();let es=Me(),Ca,Hc;if(Re()===1)Ca=zA([],es,es),Hc=xI();else{let Il;for(;Re()!==1;){let oA;switch(Re()){case 23:oA=cw();break;case 112:case 97:case 106:oA=xI();break;case 41:oa(()=>Vt()===9&&Vt()!==59)?oA=Uo():oA=kP();break;case 9:case 11:if(oa(()=>Vt()!==59)){oA=En();break}default:oA=kP();break}Il&&Ra(Il)?Il.push(oA):Il?Il=[Il,oA]:(Il=oA,Re()!==1&&Kr(Z.Unexpected_token))}let lp=Ra(Il)?di(Fe(Il),es):w.checkDefined(Il),hg=dt(lp);di(hg,es),Ca=zA([hg],es),Hc=Df(1,Z.Unexpected_token)}let yc=ni($e,2,6,!1,Ca,Hc,Lt,oc);Xn&&ir(yc),yc.nodeCount=pr,yc.identifierCount=$n,yc.identifiers=zr,yc.parseDiagnostics=RZ(mr,yc),Pt&&(yc.jsDocDiagnostics=RZ(Pt,yc));let $a=yc;return Vl(),$a}n.parseJsonText=xi;function rc($e,Yt,Sr,_n,Xn,es){switch(d=xC.getNodeConstructor(),I=xC.getTokenConstructor(),h=xC.getIdentifierConstructor(),b=xC.getPrivateIdentifierConstructor(),R=xC.getSourceFileConstructor(),Tt=Mc($e),kt=Yt,Zt=Sr,Vr=_n,Dr=Xn,jt=Zee(Xn),mr=[],bi=0,zr=new Map,$n=0,pr=0,Lt=0,gi=!0,Dr){case 1:case 2:Ns=524288;break;case 6:Ns=134742016;break;default:Ns=0;break}jn=!1,c.setText(kt),c.setOnError(sn),c.setScriptTarget(Zt),c.setLanguageVariant(jt),c.setScriptKind(Dr),c.setJSDocParsingMode(es)}function Vl(){c.clearCommentDirectives(),c.setText(""),c.setOnError(void 0),c.setScriptKind(0),c.setJSDocParsingMode(0),kt=void 0,Zt=void 0,Vr=void 0,Dr=void 0,jt=void 0,Lt=0,mr=void 0,Pt=void 0,bi=0,zr=void 0,Pi=void 0,gi=!0}function ul($e,Yt,Sr,_n,Xn){let es=kh(Tt);es&&(Ns|=33554432),Lt=Ns,Vt();let Ca=PA(0,j2);w.assert(Re()===1);let Hc=ur(),yc=_s(xI(),Hc),$a=ni(Tt,$e,Sr,es,Ca,yc,Lt,_n);return a8e($a,kt),c8e($a,Il),$a.commentDirectives=c.getCommentDirectives(),$a.nodeCount=pr,$a.identifierCount=$n,$a.identifiers=zr,$a.parseDiagnostics=RZ(mr,$a),$a.jsDocParsingMode=Xn,Pt&&($a.jsDocDiagnostics=RZ(Pt,$a)),Yt&&ir($a),$a;function Il(lp,hg,oA){mr.push(HQ(Tt,kt,lp,hg,oA))}}let Cc=!1;function _s($e,Yt){if(!Yt)return $e;w.assert(!$e.jsDoc);let Sr=tr(ime($e,kt),_n=>S7.parseJSDocComment($e,_n.pos,_n.end-_n.pos));return Sr.length&&($e.jsDoc=Sr),Cc&&(Cc=!1,$e.flags|=536870912),$e}function Wu($e){let Yt=Vr,Sr=s8e.createSyntaxCursor($e);Vr={currentNode:Il};let _n=[],Xn=mr;mr=[];let es=0,Ca=yc($e.statements,0);for(;Ca!==-1;){let lp=$e.statements[es],hg=$e.statements[Ca];ai(_n,$e.statements,es,Ca),es=$a($e.statements,Ca);let oA=ke(Xn,mT=>mT.start>=lp.pos),$2=oA>=0?ke(Xn,mT=>mT.start>=hg.pos,oA):-1;oA>=0&&ai(mr,Xn,oA,$2>=0?$2:void 0),fl(()=>{let mT=Ns;for(Ns|=65536,c.resetTokenState(hg.pos),Vt();Re()!==1;){let eF=c.getTokenFullStart(),MV=XI(0,j2);if(_n.push(MV),eF===c.getTokenFullStart()&&Vt(),es>=0){let Xv=$e.statements[es];if(MV.end===Xv.pos)break;MV.end>Xv.pos&&(es=$a($e.statements,es+1))}}Ns=mT},2),Ca=es>=0?yc($e.statements,es):-1}if(es>=0){let lp=$e.statements[es];ai(_n,$e.statements,es);let hg=ke(Xn,oA=>oA.start>=lp.pos);hg>=0&&ai(mr,Xn,hg)}return Vr=Yt,P.updateSourceFile($e,un(M(_n),$e.statements));function Hc(lp){return!(lp.flags&65536)&&!!(lp.transformFlags&67108864)}function yc(lp,hg){for(let oA=hg;oA118}function Gs(){return Re()===80?!0:Re()===127&&ti()||Re()===135&&an()?!1:Re()>118}function ri($e,Yt,Sr=!0){return Re()===$e?(Sr&&Vt(),!0):(Yt?Kr(Yt):Kr(Z._0_expected,vr($e)),!1)}let hu=Object.keys(k).filter($e=>$e.length>2);function JA($e){if(V1($e)){Pe(Ju(kt,$e.template.pos),$e.template.end,Z.Module_declaration_names_may_only_use_or_quoted_strings);return}let Yt=sr($e)?ao($e):void 0;if(!Yt||!Ke(Yt,Zt)){Kr(Z._0_expected,vr(27));return}let Sr=Ju(kt,$e.pos);switch(Yt){case"const":case"let":case"var":Pe(Sr,$e.end,Z.Variable_declaration_not_allowed_at_this_location);return;case"declare":return;case"interface":Qd(Z.Interface_name_cannot_be_0,Z.Interface_must_be_given_a_name,19);return;case"is":Pe(Sr,c.getTokenStart(),Z.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return;case"module":case"namespace":Qd(Z.Namespace_name_cannot_be_0,Z.Namespace_must_be_given_a_name,19);return;case"type":Qd(Z.Type_alias_name_cannot_be_0,Z.Type_alias_must_be_given_a_name,64);return}let _n=Nd(Yt,hu,Bl)??kd(Yt);if(_n){Pe(Sr,$e.end,Z.Unknown_keyword_or_identifier_Did_you_mean_0,_n);return}Re()!==0&&Pe(Sr,$e.end,Z.Unexpected_keyword_or_identifier)}function Qd($e,Yt,Sr){Re()===Sr?Kr(Yt):Kr($e,c.getTokenValue())}function kd($e){for(let Yt of hu)if($e.length>Yt.length+2&&uc($e,Yt))return`${Yt} ${$e.slice(Yt.length)}`}function Tl($e,Yt,Sr){if(Re()===60&&!c.hasPrecedingLineBreak()){Kr(Z.Decorators_must_precede_the_name_and_all_keywords_of_property_declarations);return}if(Re()===21){Kr(Z.Cannot_start_a_function_call_in_a_type_annotation),Vt();return}if(Yt&&!Jg()){Sr?Kr(Z._0_expected,vr(27)):Kr(Z.Expected_for_property_initializer);return}if(!hf()){if(Sr){Kr(Z._0_expected,vr(27));return}JA($e)}}function lg($e){return Re()===$e?(dn(),!0):(w.assert(mce($e)),Kr(Z._0_expected,vr($e)),!1)}function mf($e,Yt,Sr,_n){if(Re()===Yt){Vt();return}let Xn=Kr(Z._0_expected,vr(Yt));Sr&&Xn&&eg(Xn,HQ(Tt,kt,_n,1,Z.The_parser_expected_to_find_a_1_to_match_the_0_token_here,vr($e),vr(Yt)))}function zc($e){return Re()===$e?(Vt(),!0):!1}function Zc($e){if(Re()===$e)return xI()}function Km($e){if(Re()===$e)return s_()}function Df($e,Yt,Sr){return Zc($e)||lI($e,!1,Yt||Z._0_expected,Sr||vr($e))}function f0($e){let Yt=Km($e);return Yt||(w.assert(mce($e)),lI($e,!1,Z._0_expected,vr($e)))}function xI(){let $e=Me(),Yt=Re();return Vt(),di(Be(Yt),$e)}function s_(){let $e=Me(),Yt=Re();return dn(),di(Be(Yt),$e)}function Jg(){return Re()===27?!0:Re()===20||Re()===1||c.hasPrecedingLineBreak()}function hf(){return Jg()?(Re()===27&&Vt(),!0):!1}function Yd(){return hf()||ri(27)}function zA($e,Yt,Sr,_n){let Xn=M($e,_n);return MS(Xn,Yt,Sr??c.getTokenFullStart()),Xn}function di($e,Yt,Sr){return MS($e,Yt,Sr??c.getTokenFullStart()),Ns&&($e.flags|=Ns),jn&&(jn=!1,$e.flags|=262144),$e}function lI($e,Yt,Sr,..._n){Yt?wn(c.getTokenFullStart(),0,Sr,..._n):Sr&&Kr(Sr,..._n);let Xn=Me(),es=$e===80?Ae("",void 0):RS($e)?P.createTemplateLiteralLikeNode($e,"","",void 0):$e===9?te("",void 0):$e===11?re("",void 0):$e===282?P.createMissingDeclaration():Be($e);return di(es,Xn)}function J0($e){let Yt=zr.get($e);return Yt===void 0&&zr.set($e,Yt=$e),Yt}function U0($e,Yt,Sr){if($e){$n++;let Hc=c.hasLeadingAsterisks()?c.getTokenStart():Me(),yc=Re(),$a=J0(c.getTokenValue()),Il=c.hasExtendedUnicodeEscape();return Jt(),di(Ae($a,yc,Il),Hc)}if(Re()===81)return Kr(Sr||Z.Private_identifiers_are_not_allowed_outside_class_bodies),U0(!0);if(Re()===0&&c.tryScan(()=>c.reScanInvalidIdentifier()===80))return U0(!0);$n++;let _n=Re()===1,Xn=c.isReservedWord(),es=c.getTokenText(),Ca=Xn?Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:Z.Identifier_expected;return lI(80,_n,Yt||Ca,es)}function Yb($e){return U0(ki(),void 0,$e)}function rf($e,Yt){return U0(Gs(),$e,Yt)}function kI($e){return U0(MI(Re()),$e)}function yt(){return(c.hasUnicodeEscape()||c.hasExtendedUnicodeEscape())&&Kr(Z.Unicode_escape_sequence_cannot_appear_here),U0(MI(Re()))}function tt(){return MI(Re())||Re()===11||Re()===9}function gr(){return MI(Re())||Re()===11}function mn($e){if(Re()===11||Re()===9){let Yt=En();return Yt.text=J0(Yt.text),Yt}return $e&&Re()===23?Xo():Re()===81?fi():kI()}function Ri(){return mn(!0)}function Xo(){let $e=Me();ri(23);let Yt=Bi(fr);return ri(24),di(P.createComputedPropertyName(Yt),$e)}function fi(){let $e=Me(),Yt=de(J0(c.getTokenValue()));return Vt(),di(Yt,$e)}function Jo($e){return Re()===$e&&Da(ic)}function hc(){return Vt(),c.hasPrecedingLineBreak()?!1:Xf()}function ic(){switch(Re()){case 87:return Vt()===94;case 95:return Vt(),Re()===90?oa(Gm):Re()===156?oa(nf):Wg();case 90:return Gm();case 126:case 139:case 153:return Vt(),Xf();default:return hc()}}function Wg(){return Re()===60||Re()!==42&&Re()!==130&&Re()!==19&&Xf()}function nf(){return Vt(),Wg()}function zC(){return wv(Re())&&Da(ic)}function Xf(){return Re()===23||Re()===19||Re()===42||Re()===26||tt()}function Gm(){return Vt(),Re()===86||Re()===100||Re()===120||Re()===60||Re()===128&&oa(Jue)||Re()===134&&oa(z0)}function sf($e,Yt){if(bm($e))return!0;switch($e){case 0:case 1:case 3:return!(Re()===27&&Yt)&&db();case 2:return Re()===84||Re()===90;case 4:return oa(qs);case 5:return oa(q2)||Re()===27&&!Yt;case 6:return Re()===23||tt();case 12:switch(Re()){case 23:case 42:case 26:case 25:return!0;default:return tt()}case 18:return tt();case 9:return Re()===23||Re()===26||tt();case 24:return gr();case 7:return Re()===19?oa(Fm):Yt?Gs()&&!Q2():f7()&&!Q2();case 8:return WP();case 10:return Re()===28||Re()===26||WP();case 19:return Re()===103||Re()===87||Gs();case 15:switch(Re()){case 28:case 25:return!0}case 11:return Re()===26||fT();case 16:return nw(!1);case 17:return nw(!0);case 20:case 21:return Re()===28||Ux();case 22:return PY();case 23:return Re()===161&&oa(P4)?!1:MI(Re());case 13:return MI(Re())||Re()===19;case 14:return!0;case 25:return!0;case 26:return w.fail("ParsingContext.Count used as a context");default:w.assertNever($e,"Non-exhaustive case in 'isListElement'.")}}function Fm(){if(w.assert(Re()===19),Vt()===20){let $e=Vt();return $e===28||$e===19||$e===96||$e===119}return!0}function Hb(){return Vt(),Gs()}function GI(){return Vt(),MI(Re())}function qC(){return Vt(),FR(Re())}function Q2(){return Re()===119||Re()===96?oa(qt):!1}function qt(){return Vt(),fT()}function Fn(){return Vt(),Ux()}function Bs($e){if(Re()===1)return!0;switch($e){case 1:case 2:case 4:case 5:case 6:case 12:case 9:case 23:case 24:return Re()===20;case 3:return Re()===20||Re()===84||Re()===90;case 7:return Re()===19||Re()===96||Re()===119;case 8:return Nl();case 19:return Re()===32||Re()===21||Re()===19||Re()===96||Re()===119;case 11:return Re()===22||Re()===27;case 15:case 21:case 10:return Re()===24;case 17:case 16:case 18:return Re()===22||Re()===24;case 20:return Re()!==28;case 22:return Re()===19||Re()===20;case 13:return Re()===32||Re()===44;case 14:return Re()===30&&oa(yre);default:return!1}}function Nl(){return!!(Jg()||NP(Re())||Re()===39)}function vA(){w.assert(bi,"Missing parsing context");for(let $e=0;$e<26;$e++)if(bi&1<<$e&&(sf($e,!0)||Bs($e)))return!0;return!1}function PA($e,Yt){let Sr=bi;bi|=1<<$e;let _n=[],Xn=Me();for(;!Bs($e);){if(sf($e,!1)){_n.push(XI($e,Yt));continue}if(aD($e))break}return bi=Sr,zA(_n,Xn)}function XI($e,Yt){let Sr=bm($e);return Sr?rp(Sr):Yt()}function bm($e,Yt){var Sr;if(!Vr||!Hd($e)||jn)return;let _n=Vr.currentNode(Yt??c.getTokenFullStart());if(!(wf(_n)||MKi(_n)||HR(_n)||(_n.flags&101441536)!==Ns)&&hC(_n,$e))return Aee(_n)&&((Sr=_n.jsDoc)!=null&&Sr.jsDocCache)&&(_n.jsDoc.jsDocCache=void 0),_n}function rp($e){return c.resetTokenState($e.end),Vt(),$e}function Hd($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}function hC($e,Yt){switch(Yt){case 5:return Xb($e);case 2:return dT($e);case 0:case 1:case 3:return Y2($e);case 6:return ub($e);case 4:return LB($e);case 8:return H2($e);case 17:case 16:return oD($e)}return!1}function Xb($e){if($e)switch($e.kind){case 176:case 181:case 177:case 178:case 172:case 240:return!0;case 174:let Yt=$e;return!(Yt.name.kind===80&&Yt.name.escapedText==="constructor")}return!1}function dT($e){if($e)switch($e.kind){case 296:case 297:return!0}return!1}function Y2($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}function ub($e){return $e.kind===306}function LB($e){if($e)switch($e.kind){case 180:case 173:case 181:case 171:case 179:return!0}return!1}function H2($e){return $e.kind!==260?!1:$e.initializer===void 0}function oD($e){return $e.kind!==169?!1:$e.initializer===void 0}function aD($e){return gb($e),vA()?!0:(Vt(),!1)}function gb($e){switch($e){case 0:return Re()===90?Kr(Z._0_expected,vr(95)):Kr(Z.Declaration_or_statement_expected);case 1:return Kr(Z.Declaration_or_statement_expected);case 2:return Kr(Z.case_or_default_expected);case 3:return Kr(Z.Statement_expected);case 18:case 4:return Kr(Z.Property_or_signature_expected);case 5:return Kr(Z.Unexpected_token_A_constructor_method_accessor_or_property_was_expected);case 6:return Kr(Z.Enum_member_expected);case 7:return Kr(Z.Expression_expected);case 8:return i0(Re())?Kr(Z._0_is_not_allowed_as_a_variable_declaration_name,vr(Re())):Kr(Z.Variable_declaration_expected);case 9:return Kr(Z.Property_destructuring_pattern_expected);case 10:return Kr(Z.Array_element_destructuring_pattern_expected);case 11:return Kr(Z.Argument_expression_expected);case 12:return Kr(Z.Property_assignment_expected);case 15:return Kr(Z.Expression_or_comma_expected);case 17:return Kr(Z.Parameter_declaration_expected);case 16:return i0(Re())?Kr(Z._0_is_not_allowed_as_a_parameter_name,vr(Re())):Kr(Z.Parameter_declaration_expected);case 19:return Kr(Z.Type_parameter_declaration_expected);case 20:return Kr(Z.Type_argument_expected);case 21:return Kr(Z.Type_expected);case 22:return Kr(Z.Unexpected_token_expected);case 23:return Re()===161?Kr(Z._0_expected,"}"):Kr(Z.Identifier_expected);case 13:return Kr(Z.Identifier_expected);case 14:return Kr(Z.Identifier_expected);case 24:return Kr(Z.Identifier_or_string_literal_expected);case 25:return Kr(Z.Identifier_expected);case 26:return w.fail("ParsingContext.Count used as a context");default:w.assertNever($e)}}function $C($e,Yt,Sr){let _n=bi;bi|=1<<$e;let Xn=[],es=Me(),Ca=-1;for(;;){if(sf($e,!1)){let Hc=c.getTokenFullStart(),yc=XI($e,Yt);if(!yc){bi=_n;return}if(Xn.push(yc),Ca=c.getTokenStart(),zc(28))continue;if(Ca=-1,Bs($e))break;ri(28,cD($e)),Sr&&Re()===27&&!c.hasPrecedingLineBreak()&&Vt(),Hc===c.getTokenFullStart()&&Vt();continue}if(Bs($e)||aD($e))break}return bi=_n,zA(Xn,es,void 0,Ca>=0)}function cD($e){return $e===6?Z.An_enum_member_name_must_be_followed_by_a_or:void 0}function Jb(){let $e=zA([],Me());return $e.isMissingList=!0,$e}function ZN($e){return!!$e.isMissingList}function X2($e,Yt,Sr,_n){if(ri(Sr)){let Xn=$C($e,Yt);return ri(_n),Xn}return Jb()}function rt($e,Yt){let Sr=Me(),_n=$e?kI(Yt):rf(Yt);for(;zc(25)&&Re()!==30;)_n=di(P.createQualifiedName(_n,Qn($e,!1,!0)),Sr);return _n}function qr($e,Yt){return di(P.createQualifiedName($e,Yt),$e.pos)}function Qn($e,Yt,Sr){if(c.hasPrecedingLineBreak()&&MI(Re())&&oa(FP))return lI(80,!0,Z.Identifier_expected);if(Re()===81){let _n=fi();return Yt?_n:lI(80,!0,Z.Identifier_expected)}return $e?Sr?kI():yt():rf()}function Jn($e){let Yt=Me(),Sr=[],_n;do _n=Ht($e),Sr.push(_n);while(_n.literal.kind===17);return zA(Sr,Yt)}function cs($e){let Yt=Me();return di(P.createTemplateExpression(Rs($e),Jn($e)),Yt)}function Ls(){let $e=Me();return di(P.createTemplateLiteralType(Rs(!1),$o()),$e)}function $o(){let $e=Me(),Yt=[],Sr;do Sr=Ua(),Yt.push(Sr);while(Sr.literal.kind===17);return zA(Yt,$e)}function Ua(){let $e=Me();return di(P.createTemplateLiteralTypeSpan(Em(),Ge(!1)),$e)}function Ge($e){return Re()===20?(ds($e),_c()):Df(18,Z._0_expected,vr(20))}function Ht($e){let Yt=Me();return di(P.createTemplateSpan(Bi(fr),Ge($e)),Yt)}function En(){return Wl(Re())}function Rs($e){!$e&&c.getTokenFlags()&26656&&ds(!1);let Yt=Wl(Re());return w.assert(Yt.kind===16,"Template head has wrong token kind"),Yt}function _c(){let $e=Wl(Re());return w.assert($e.kind===17||$e.kind===18,"Template fragment has wrong token kind"),$e}function Iu($e){let Yt=$e===15||$e===18,Sr=c.getTokenText();return Sr.substring(1,Sr.length-(c.isUnterminated()?0:Yt?1:2))}function Wl($e){let Yt=Me(),Sr=RS($e)?P.createTemplateLiteralLikeNode($e,c.getTokenValue(),Iu($e),c.getTokenFlags()&7176):$e===9?te(c.getTokenValue(),c.getNumericLiteralFlags()):$e===11?re(c.getTokenValue(),void 0,c.hasExtendedUnicodeEscape()):pQ($e)?ue($e,c.getTokenValue()):w.fail();return c.hasExtendedUnicodeEscape()&&(Sr.hasExtendedUnicodeEscape=!0),c.isUnterminated()&&(Sr.isUnterminated=!0),Vt(),di(Sr,Yt)}function Eu(){return rt(!0,Z.Type_expected)}function od(){if(!c.hasPrecedingLineBreak()&&Es()===30)return X2(20,Em,30,32)}function sA(){let $e=Me();return di(P.createTypeReferenceNode(Eu(),od()),$e)}function uI($e){switch($e.kind){case 183:return wf($e.typeName);case 184:case 185:{let{parameters:Yt,type:Sr}=$e;return ZN(Yt)||uI(Sr)}case 196:return uI($e.type);default:return!1}}function VB($e){return Vt(),di(P.createTypePredicateNode(void 0,$e,Em()),$e.pos)}function rw(){let $e=Me();return Vt(),di(P.createThisTypeNode(),$e)}function lD(){let $e=Me();return Vt(),di(P.createJSDocAllType(),$e)}function Xx(){let $e=Me();return Vt(),di(P.createJSDocNonNullableType(RY(),!1),$e)}function YZ(){let $e=Me();return Vt(),Re()===28||Re()===20||Re()===22||Re()===32||Re()===64||Re()===52?di(P.createJSDocUnknownType(),$e):di(P.createJSDocNullableType(Em(),!1),$e)}function Jx(){let $e=Me(),Yt=ur();if(Da(B7)){let Sr=U2(36),_n=Pv(59,!1);return _s(di(P.createJSDocFunctionType(Sr,_n),$e),Yt)}return di(P.createTypeReferenceNode(kI(),void 0),$e)}function WB(){let $e=Me(),Yt;return(Re()===110||Re()===105)&&(Yt=kI(),ri(59)),di(P.createParameterDeclaration(void 0,void 0,Yt,void 0,J2(),void 0),$e)}function J2(){c.setSkipJsDocLeadingAsterisks(!0);let $e=Me();if(zc(144)){let _n=P.createJSDocNamepathType(void 0);e:for(;;)switch(Re()){case 20:case 1:case 28:case 5:break e;default:dn()}return c.setSkipJsDocLeadingAsterisks(!1),di(_n,$e)}let Yt=zc(26),Sr=KZ();return c.setSkipJsDocLeadingAsterisks(!1),Yt&&(Sr=di(P.createJSDocVariadicType(Sr),$e)),Re()===64?(Vt(),di(P.createJSDocOptionalType(Sr),$e)):Sr}function np(){let $e=Me();ri(114);let Yt=rt(!0),Sr=c.hasPrecedingLineBreak()?void 0:zG();return di(P.createTypeQueryNode(Yt,Sr),$e)}function F_(){let $e=Me(),Yt=qn(!1,!0),Sr=rf(),_n,Xn;zc(96)&&(Ux()||!fT()?_n=Em():Xn=$Z());let es=zc(64)?Em():void 0,Ca=P.createTypeParameterDeclaration(Yt,Sr,_n,es);return Ca.expression=Xn,di(Ca,$e)}function K0(){if(Re()===30)return X2(19,F_,30,32)}function nw($e){return Re()===26||WP()||wv(Re())||Re()===60||Ux(!$e)}function HZ($e){let Yt=LV(Z.Private_identifiers_cannot_be_used_as_parameters);return SX(Yt)===0&&!lr($e)&&wv(Re())&&Vt(),Yt}function WG(){return ki()||Re()===23||Re()===19}function xV($e){return kV($e)}function Wv($e){return kV($e,!1)}function kV($e,Yt=!0){let Sr=Me(),_n=ur(),Xn=$e?St(()=>qn(!0)):br(()=>qn(!0));if(Re()===110){let yc=P.createParameterDeclaration(Xn,void 0,U0(!0),void 0,jZ(),void 0),$a=$i(Xn);return $a&&ar($a,Z.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters),_s(di(yc,Sr),_n)}let es=gi;gi=!1;let Ca=Zc(26);if(!Yt&&!WG())return;let Hc=_s(di(P.createParameterDeclaration(Xn,Ca,HZ(Xn),Zc(58),jZ(),iw()),Sr),_n);return gi=es,Hc}function Pv($e,Yt){if(_P($e,Yt))return kr(KZ)}function _P($e,Yt){return $e===39?(ri($e),!0):zc(59)?!0:Yt&&Re()===39?(Kr(Z._0_expected,vr(59)),Vt(),!0):!1}function pT($e,Yt){let Sr=ti(),_n=an();qa(!!($e&1)),Nc(!!($e&2));let Xn=$e&32?$C(17,WB):$C(16,()=>Yt?xV(_n):Wv(_n));return qa(Sr),Nc(_n),Xn}function U2($e){if(!ri(21))return Jb();let Yt=pT($e,!0);return ri(22),Yt}function PG(){zc(28)||Yd()}function rr($e){let Yt=Me(),Sr=ur();$e===180&&ri(105);let _n=K0(),Xn=U2(4),es=Pv(59,!0);PG();let Ca=$e===179?P.createCallSignature(_n,Xn,es):P.createConstructSignature(_n,Xn,es);return _s(di(Ca,Yt),Sr)}function Tr(){return Re()===23&&oa(xn)}function xn(){if(Vt(),Re()===26||Re()===24)return!0;if(wv(Re())){if(Vt(),Gs())return!0}else if(Gs())Vt();else return!1;return Re()===59||Re()===28?!0:Re()!==58?!1:(Vt(),Re()===59||Re()===28||Re()===24)}function ci($e,Yt,Sr){let _n=X2(16,()=>xV(!1),23,24),Xn=jZ();PG();let es=P.createIndexSignature(Sr,_n,Xn);return _s(di(es,$e),Yt)}function Wi($e,Yt,Sr){let _n=Ri(),Xn=Zc(58),es;if(Re()===21||Re()===30){let Ca=K0(),Hc=U2(4),yc=Pv(59,!0);es=P.createMethodSignature(Sr,_n,Xn,Ca,Hc,yc)}else{let Ca=jZ();es=P.createPropertySignature(Sr,_n,Xn,Ca),Re()===64&&(es.initializer=iw())}return PG(),_s(di(es,$e),Yt)}function qs(){if(Re()===21||Re()===30||Re()===139||Re()===153)return!0;let $e=!1;for(;wv(Re());)$e=!0,Vt();return Re()===23?!0:(tt()&&($e=!0,Vt()),$e?Re()===21||Re()===30||Re()===58||Re()===59||Re()===28||Jg():!1)}function zi(){if(Re()===21||Re()===30)return rr(179);if(Re()===105&&oa(ho))return rr(180);let $e=Me(),Yt=ur(),Sr=qn(!1);return Jo(139)?nL($e,Yt,Sr,177,4):Jo(153)?nL($e,Yt,Sr,178,4):Tr()?ci($e,Yt,Sr):Wi($e,Yt,Sr)}function ho(){return Vt(),Re()===21||Re()===30}function Bc(){return Vt()===25}function Co(){switch(Vt()){case 21:case 30:case 25:return!0}return!1}function ac(){let $e=Me();return di(P.createTypeLiteralNode(Ps()),$e)}function Ps(){let $e;return ri(19)?($e=PA(4,zi),ri(20)):$e=Jb(),$e}function ru(){return Vt(),Re()===40||Re()===41?Vt()===148:(Re()===148&&Vt(),Re()===23&&Hb()&&Vt()===103)}function Yg(){let $e=Me(),Yt=kI();ri(103);let Sr=Em();return di(P.createTypeParameterDeclaration(void 0,Yt,Sr,void 0),$e)}function jm(){let $e=Me();ri(19);let Yt;(Re()===148||Re()===40||Re()===41)&&(Yt=xI(),Yt.kind!==148&&ri(148)),ri(23);let Sr=Yg(),_n=zc(130)?Em():void 0;ri(24);let Xn;(Re()===58||Re()===40||Re()===41)&&(Xn=xI(),Xn.kind!==58&&ri(58));let es=jZ();Yd();let Ca=PA(4,zi);return ri(20),di(P.createMappedTypeNode(Yt,Sr,_n,Xn,es,Ca),$e)}function I0(){let $e=Me();if(zc(26))return di(P.createRestTypeNode(Em()),$e);let Yt=Em();if(lte(Yt)&&Yt.pos===Yt.type.pos){let Sr=P.createOptionalTypeNode(Yt.type);return un(Sr,Yt),Sr.flags=Yt.flags,Sr}return Yt}function Ov(){return Vt()===59||Re()===58&&Vt()===59}function XZ(){return Re()===26?MI(Vt())&&Ov():MI(Re())&&Ov()}function Mv(){if(oa(XZ)){let $e=Me(),Yt=ur(),Sr=Zc(26),_n=kI(),Xn=Zc(58);ri(59);let es=I0(),Ca=P.createNamedTupleMember(Sr,_n,Xn,es);return _s(di(Ca,$e),Yt)}return I0()}function u7(){let $e=Me();return di(P.createTupleTypeNode(X2(21,Mv,23,24)),$e)}function nre(){let $e=Me();ri(21);let Yt=Em();return ri(22),di(P.createParenthesizedType(Yt),$e)}function g7(){let $e;if(Re()===128){let Yt=Me();Vt();let Sr=di(Be(128),Yt);$e=zA([Sr],Yt)}return $e}function NY(){let $e=Me(),Yt=ur(),Sr=g7(),_n=zc(105);w.assert(!Sr||_n,"Per isStartOfFunctionOrConstructorType, a function type cannot have modifiers.");let Xn=K0(),es=U2(4),Ca=Pv(39,!1),Hc=_n?P.createConstructorTypeNode(Sr,Xn,es,Ca):P.createFunctionTypeNode(Xn,es,Ca);return _s(di(Hc,$e),Yt)}function yP(){let $e=xI();return Re()===25?void 0:$e}function bP($e){let Yt=Me();$e&&Vt();let Sr=Re()===112||Re()===97||Re()===106?xI():Wl(Re());return $e&&(Sr=di(P.createPrefixUnaryExpression(41,Sr),Yt)),di(P.createLiteralTypeNode(Sr),Yt)}function EP(){return Vt(),Re()===102}function T4(){Lt|=4194304;let $e=Me(),Yt=zc(114);ri(102),ri(21);let Sr=Em(),_n;if(zc(28)){let Ca=c.getTokenStart();ri(19);let Hc=Re();if(Hc===118||Hc===132?Vt():Kr(Z._0_expected,vr(118)),ri(59),_n=zue(Hc,!0),!ri(20)){let yc=qo(mr);yc&&yc.code===Z._0_expected.code&&eg(yc,HQ(Tt,kt,Ca,1,Z.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}}ri(22);let Xn=zc(25)?Eu():void 0,es=od();return di(P.createImportTypeNode(Sr,_n,Xn,es,Yt),$e)}function JZ(){return Vt(),Re()===9||Re()===10}function RY(){switch(Re()){case 133:case 159:case 154:case 150:case 163:case 155:case 136:case 157:case 146:case 151:return Da(yP)||sA();case 67:c.reScanAsteriskEqualsToken();case 42:return lD();case 61:c.reScanQuestionToken();case 58:return YZ();case 100:return Jx();case 54:return Xx();case 15:case 11:case 9:case 10:case 112:case 97:case 106:return bP();case 41:return oa(JZ)?bP(!0):sA();case 116:return xI();case 110:{let $e=rw();return Re()===142&&!c.hasPrecedingLineBreak()?VB($e):$e}case 114:return oa(EP)?T4():np();case 19:return oa(ru)?jm():ac();case 23:return u7();case 21:return nre();case 102:return T4();case 131:return oa(FP)?p7():sA();case 16:return Ls();default:return sA()}}function Ux($e){switch(Re()){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&&oa(JZ);case 21:return!$e&&oa(DY);default:return Gs()}}function DY(){return Vt(),Re()===22||nw(!1)||Ux()}function UA(){let $e=Me(),Yt=RY();for(;!c.hasPrecedingLineBreak();)switch(Re()){case 54:Vt(),Yt=di(P.createJSDocNonNullableType(Yt,!0),$e);break;case 58:if(oa(Fn))return Yt;Vt(),Yt=di(P.createJSDocNullableType(Yt,!0),$e);break;case 23:if(ri(23),Ux()){let Sr=Em();ri(24),Yt=di(P.createIndexedAccessTypeNode(Yt,Sr),$e)}else ri(24),Yt=di(P.createArrayTypeNode(Yt),$e);break;default:return Yt}return Yt}function N4($e){let Yt=Me();return ri($e),di(P.createTypeOperatorNode($e,LN()),Yt)}function R4(){if(zc(96)){let $e=en(Em);if(kn()||Re()!==58)return $e}}function BP(){let $e=Me(),Yt=rf(),Sr=Da(R4),_n=P.createTypeParameterDeclaration(void 0,Yt,Sr);return di(_n,$e)}function OG(){let $e=Me();return ri(140),di(P.createInferTypeNode(BP()),$e)}function LN(){let $e=Re();switch($e){case 143:case 158:case 148:return N4($e);case 140:return OG()}return kr(UA)}function PB($e){if(A7()){let Yt=NY(),Sr;return Y(Yt)?Sr=$e?Z.Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:Z.Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:Sr=$e?Z.Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:Z.Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type,ar(Yt,Sr),Yt}}function Ab($e,Yt,Sr){let _n=Me(),Xn=$e===52,es=zc($e),Ca=es&&PB(Xn)||Yt();if(Re()===$e||es){let Hc=[Ca];for(;zc($e);)Hc.push(PB(Xn)||Yt());Ca=di(Sr(zA(Hc,_n)),_n)}return Ca}function QE(){return Ab(51,LN,P.createIntersectionTypeNode)}function Ub(){return Ab(52,QE,P.createUnionTypeNode)}function UZ(){return Vt(),Re()===105}function A7(){return Re()===30||Re()===21&&oa(vP)?!0:Re()===105||Re()===128&&oa(UZ)}function d7(){if(wv(Re())&&qn(!1),Gs()||Re()===110)return Vt(),!0;if(Re()===23||Re()===19){let $e=mr.length;return LV(),$e===mr.length}return!1}function vP(){return Vt(),!!(Re()===22||Re()===26||d7()&&(Re()===59||Re()===28||Re()===58||Re()===64||Re()===22&&(Vt(),Re()===39)))}function KZ(){let $e=Me(),Yt=Gs()&&Da(SP),Sr=Em();return Yt?di(P.createTypePredicateNode(void 0,Yt,Sr),$e):Sr}function SP(){let $e=rf();if(Re()===142&&!c.hasPrecedingLineBreak())return Vt(),$e}function p7(){let $e=Me(),Yt=Df(131),Sr=Re()===110?rw():rf(),_n=zc(142)?Em():void 0;return di(P.createTypePredicateNode(Yt,Sr,_n),$e)}function Em(){if(Ns&81920)return cg(81920,Em);if(A7())return NY();let $e=Me(),Yt=Ub();if(!kn()&&!c.hasPrecedingLineBreak()&&zc(96)){let Sr=en(Em);ri(58);let _n=kr(Em);ri(59);let Xn=kr(Em);return di(P.createConditionalTypeNode(Yt,Sr,_n,Xn),$e)}return Yt}function jZ(){return zc(59)?Em():void 0}function f7(){switch(Re()){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 oa(Co);default:return Gs()}}function fT(){if(f7())return!0;switch(Re()){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 M1()?!0:Gs()}}function D4(){return Re()!==19&&Re()!==100&&Re()!==86&&Re()!==60&&fT()}function fr(){let $e=Pn();$e&&nc(!1);let Yt=Me(),Sr=zm(!0),_n;for(;_n=Zc(28);)Sr=qZ(Sr,_n,zm(!0),Yt);return $e&&nc(!0),Sr}function iw(){return zc(64)?zm(!0):void 0}function zm($e){if(wP())return OB();let Yt=MG($e)||xY($e);if(Yt)return Yt;let Sr=Me(),_n=ur(),Xn=YG(0);return Xn.kind===80&&Re()===39?VN(Sr,Xn,$e,_n,void 0):T_(Xn)&&qR(Mn())?qZ(Xn,xI(),zm($e),Sr):QG(Xn,Sr,$e)}function wP(){return Re()===127?ti()?!0:oa(V4):!1}function uD(){return Vt(),!c.hasPrecedingLineBreak()&&Gs()}function OB(){let $e=Me();return Vt(),!c.hasPrecedingLineBreak()&&(Re()===42||fT())?di(P.createYieldExpression(Zc(42),zm(!0)),$e):di(P.createYieldExpression(void 0,void 0),$e)}function VN($e,Yt,Sr,_n,Xn){w.assert(Re()===39,"parseSimpleArrowFunctionExpression should only have been called if we had a =>");let es=P.createParameterDeclaration(void 0,void 0,Yt,void 0,void 0,void 0);di(es,Yt.pos);let Ca=zA([es],es.pos,es.end),Hc=Df(39),yc=TP(!!Xn,Sr),$a=P.createArrowFunction(Xn,void 0,Ca,void 0,Hc,yc);return _s(di($a,$e),_n)}function MG($e){let Yt=Hue();if(Yt!==0)return Yt===1?k4(!0,!0):Da(()=>sw($e))}function Hue(){return Re()===21||Re()===30||Re()===134?oa(SA):Re()===39?1:0}function SA(){if(Re()===134&&(Vt(),c.hasPrecedingLineBreak()||Re()!==21&&Re()!==30))return 0;let $e=Re(),Yt=Vt();if($e===21){if(Yt===22)switch(Vt()){case 39:case 59:case 19:return 1;default:return 0}if(Yt===23||Yt===19)return 2;if(Yt===26)return 1;if(wv(Yt)&&Yt!==134&&oa(Hb))return Vt()===130?0:1;if(!Gs()&&Yt!==110)return 0;switch(Vt()){case 59:return 1;case 58:return Vt(),Re()===59||Re()===28||Re()===64||Re()===22?1:0;case 28:case 64:case 22:return 2}return 0}else return w.assert($e===30),!Gs()&&Re()!==87?0:jt===1?oa(()=>{zc(87);let _n=Vt();if(_n===96)switch(Vt()){case 64:case 32:case 44:return!1;default:return!0}else if(_n===28||_n===64)return!0;return!1})?1:0:2}function sw($e){let Yt=c.getTokenStart();if(Pi?.has(Yt))return;let Sr=k4(!1,$e);return Sr||(Pi||(Pi=new Set)).add(Yt),Sr}function xY($e){if(Re()===134&&oa(x4)===1){let Yt=Me(),Sr=ur(),_n=Ka(),Xn=YG(0);return VN(Yt,Xn,$e,Sr,_n)}}function x4(){if(Re()===134){if(Vt(),c.hasPrecedingLineBreak()||Re()===39)return 0;let $e=YG(0);if(!c.hasPrecedingLineBreak()&&$e.kind===80&&Re()===39)return 1}return 0}function k4($e,Yt){let Sr=Me(),_n=ur(),Xn=Ka(),es=lr(Xn,c4)?2:0,Ca=K0(),Hc;if(ri(21)){if($e)Hc=pT(es,$e);else{let eF=pT(es,$e);if(!eF)return;Hc=eF}if(!ri(22)&&!$e)return}else{if(!$e)return;Hc=Jb()}let yc=Re()===59,$a=Pv(59,!1);if($a&&!$e&&uI($a))return;let Il=$a;for(;Il?.kind===196;)Il=Il.type;let lp=Il&&ute(Il);if(!$e&&Re()!==39&&(lp||Re()!==19))return;let hg=Re(),oA=Df(39),$2=hg===39||hg===19?TP(lr(Xn,c4),Yt):rf();if(!Yt&&yc&&Re()!==59)return;let mT=P.createArrowFunction(Xn,Ca,Hc,$a,oA,$2);return _s(di(mT,Sr),_n)}function TP($e,Yt){if(Re()===19)return rL($e?2:0);if(Re()!==27&&Re()!==100&&Re()!==86&&db()&&!D4())return rL(16|($e?2:0));let Sr=gi;gi=!1;let _n=$e?St(()=>zm(Yt)):br(()=>zm(Yt));return gi=Sr,_n}function QG($e,Yt,Sr){let _n=Zc(58);if(!_n)return $e;let Xn;return di(P.createConditionalExpression($e,_n,cg(u,()=>zm(!1)),Xn=Df(59),xE(Xn)?zm(Sr):lI(80,!1,Z._0_expected,vr(59))),Yt)}function YG($e){let Yt=Me(),Sr=$Z();return K2($e,Sr,Yt)}function NP($e){return $e===103||$e===165}function K2($e,Yt,Sr){for(;;){Mn();let _n=bee(Re());if(!(Re()===43?_n>=$e:_n>$e)||Re()===103&&cr())break;if(Re()===130||Re()===152){if(c.hasPrecedingLineBreak())break;{let es=Re();Vt(),Yt=es===152?zZ(Yt,Em()):ol(Yt,Em())}}else Yt=qZ(Yt,xI(),YG(_n),Sr)}return Yt}function M1(){return cr()&&Re()===103?!1:bee(Re())>0}function zZ($e,Yt){return di(P.createSatisfiesExpression($e,Yt),$e.pos)}function qZ($e,Yt,Sr,_n){return di(P.createBinaryExpression($e,Yt,Sr),_n)}function ol($e,Yt){return di(P.createAsExpression($e,Yt),$e.pos)}function Uo(){let $e=Me();return di(P.createPrefixUnaryExpression(Re(),bt(HG)),$e)}function Z_(){let $e=Me();return di(P.createDeleteExpression(bt(HG)),$e)}function ire(){let $e=Me();return di(P.createTypeOfExpression(bt(HG)),$e)}function ow(){let $e=Me();return di(P.createVoidExpression(bt(HG)),$e)}function I7(){return Re()===135?an()?!0:oa(V4):!1}function gD(){let $e=Me();return di(P.createAwaitExpression(bt(HG)),$e)}function $Z(){if(sre()){let Sr=Me(),_n=RP();return Re()===43?K2(bee(Re()),_n,Sr):_n}let $e=Re(),Yt=HG();if(Re()===43){let Sr=Ju(kt,Yt.pos),{end:_n}=Yt;Yt.kind===216?Pe(Sr,_n,Z.A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses):(w.assert(mce($e)),Pe(Sr,_n,Z.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,vr($e)))}return Yt}function HG(){switch(Re()){case 40:case 41:case 55:case 54:return Uo();case 91:return Z_();case 114:return ire();case 116:return ow();case 30:return jt===1?Kx(!0,void 0,void 0,!0):h7();case 135:if(I7())return gD();default:return RP()}}function sre(){switch(Re()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 135:return!1;case 30:if(jt!==1)return!1;default:return!0}}function RP(){if(Re()===46||Re()===47){let Yt=Me();return di(P.createPrefixUnaryExpression(Re(),bt(Q1)),Yt)}else if(jt===1&&Re()===30&&oa(qC))return Kx(!0);let $e=Q1();if(w.assert(T_($e)),(Re()===46||Re()===47)&&!c.hasPrecedingLineBreak()){let Yt=Re();return Vt(),di(P.createPostfixUnaryExpression($e,Yt),$e.pos)}return $e}function Q1(){let $e=Me(),Yt;return Re()===102?oa(ho)?(Lt|=4194304,Yt=xI()):oa(Bc)?(Vt(),Vt(),Yt=di(P.createMetaProperty(102,kI()),$e),Lt|=8388608):Yt=kY():Yt=Re()===108?Dp():kY(),MB($e,Yt)}function kY(){let $e=Me(),Yt=Z4();return WN($e,Yt,!0)}function Dp(){let $e=Me(),Yt=xI();if(Re()===30){let Sr=Me(),_n=Da(DP);_n!==void 0&&(Pe(Sr,Me(),Z.super_may_not_use_type_arguments),HE()||(Yt=P.createExpressionWithTypeArguments(Yt,_n)))}return Re()===21||Re()===25||Re()===23?Yt:(Df(25,Z.super_must_be_followed_by_an_argument_list_or_member_access),di(Qe(Yt,Qn(!0,!0,!0)),$e))}function Kx($e,Yt,Sr,_n=!1){let Xn=Me(),es=Xue($e),Ca;if(es.kind===286){let Hc=GY(es),yc,$a=Hc[Hc.length-1];if($a?.kind===284&&!aP($a.openingElement.tagName,$a.closingElement.tagName)&&aP(es.tagName,$a.closingElement.tagName)){let Il=$a.children.end,lp=di(P.createJsxElement($a.openingElement,$a.children,di(P.createJsxClosingElement(di(Ae(""),Il,Il)),Il,Il)),$a.openingElement.pos,Il);Hc=zA([...Hc.slice(0,Hc.length-1),lp],Hc.pos,Il),yc=$a.closingElement}else yc=uo(es,$e),aP(es.tagName,yc.tagName)||(Sr&&TN(Sr)&&aP(yc.tagName,Sr.tagName)?ar(es.tagName,Z.JSX_element_0_has_no_corresponding_closing_tag,vQ(kt,es.tagName)):ar(yc.tagName,Z.Expected_corresponding_JSX_closing_tag_for_0,vQ(kt,es.tagName)));Ca=di(P.createJsxElement(es,Hc,yc),Xn)}else es.kind===289?Ca=di(P.createJsxFragment(es,GY(es),m7($e)),Xn):(w.assert(es.kind===285),Ca=es);if(!_n&&$e&&Re()===30){let Hc=typeof Yt>"u"?Ca.pos:Yt,yc=Da(()=>Kx(!0,Hc));if(yc){let $a=lI(28,!1);return Che($a,yc.pos,0),Pe(Ju(kt,Hc),yc.end,Z.JSX_expressions_must_have_one_parent_element),di(P.createBinaryExpression(Ca,$a,yc),Xn)}}return Ca}function ore(){let $e=Me(),Yt=P.createJsxText(c.getTokenValue(),Yr===13);return Yr=c.scanJsxToken(),di(Yt,$e)}function G4($e,Yt){switch(Yt){case 1:if(g4($e))ar($e,Z.JSX_fragment_has_no_corresponding_closing_tag);else{let Sr=$e.tagName,_n=Math.min(Ju(kt,Sr.pos),Sr.end);Pe(_n,Sr.end,Z.JSX_element_0_has_no_corresponding_closing_tag,vQ(kt,$e.tagName))}return;case 31:case 7:return;case 12:case 13:return ore();case 19:return C0(!1);case 30:return Kx(!1,void 0,$e);default:return w.assertNever(Yt)}}function GY($e){let Yt=[],Sr=Me(),_n=bi;for(bi|=16384;;){let Xn=G4($e,Yr=c.reScanJsxToken());if(!Xn||(Yt.push(Xn),TN($e)&&Xn?.kind===284&&!aP(Xn.openingElement.tagName,Xn.closingElement.tagName)&&aP($e.tagName,Xn.closingElement.tagName)))break}return bi=_n,zA(Yt,Sr)}function C7(){let $e=Me();return di(P.createJsxAttributes(PA(13,lu)),$e)}function Xue($e){let Yt=Me();if(ri(30),Re()===32)return ko(),di(P.createJsxOpeningFragment(),Yt);let Sr=are(),_n=Ns&524288?void 0:zG(),Xn=C7(),es;return Re()===32?(ko(),es=P.createJsxOpeningElement(Sr,_n,Xn)):(ri(44),ri(32,void 0,!1)&&($e?Vt():ko()),es=P.createJsxSelfClosingElement(Sr,_n,Xn)),di(es,Yt)}function are(){let $e=Me(),Yt=Vo();if(oT(Yt))return Yt;let Sr=Yt;for(;zc(25);)Sr=di(Qe(Sr,Qn(!0,!1,!1)),$e);return Sr}function Vo(){let $e=Me();Vi();let Yt=Re()===110,Sr=yt();return zc(59)?(Vi(),di(P.createJsxNamespacedName(Sr,yt()),$e)):Yt?di(P.createToken(110),$e):Sr}function C0($e){let Yt=Me();if(!ri(19))return;let Sr,_n;return Re()!==20&&($e||(Sr=Zc(26)),_n=fr()),$e?ri(20):ri(20,void 0,!1)&&ko(),di(P.createJsxExpression(Sr,_n),Yt)}function lu(){if(Re()===19)return YE();let $e=Me();return di(P.createJsxAttribute(F4(),XG()),$e)}function XG(){if(Re()===64){if(Yc()===11)return En();if(Re()===19)return C0(!0);if(Re()===30)return Kx(!0);Kr(Z.or_JSX_element_expected)}}function F4(){let $e=Me();Vi();let Yt=yt();return zc(59)?(Vi(),di(P.createJsxNamespacedName(Yt,yt()),$e)):Yt}function YE(){let $e=Me();ri(19),ri(26);let Yt=fr();return ri(20),di(P.createJsxSpreadAttribute(Yt),$e)}function uo($e,Yt){let Sr=Me();ri(31);let _n=are();return ri(32,void 0,!1)&&(Yt||!aP($e.tagName,_n)?Vt():ko()),di(P.createJsxClosingElement(_n),Sr)}function m7($e){let Yt=Me();return ri(31),ri(32,Z.Expected_corresponding_closing_tag_for_JSX_fragment,!1)&&($e?Vt():ko()),di(P.createJsxJsxClosingFragment(),Yt)}function h7(){w.assert(jt!==1,"Type assertions should never be parsed in JSX; they should be parsed as comparisons or JSX elements/fragments.");let $e=Me();ri(30);let Yt=Em();ri(32);let Sr=HG();return di(P.createTypeAssertion(Yt,Sr),$e)}function j0(){return Vt(),MI(Re())||Re()===23||HE()}function aw(){return Re()===29&&oa(j0)}function Qv($e){if($e.flags&64)return!0;if(iT($e)){let Yt=$e.expression;for(;iT(Yt)&&!(Yt.flags&64);)Yt=Yt.expression;if(Yt.flags&64){for(;iT($e);)$e.flags|=64,$e=$e.expression;return!0}}return!1}function eL($e,Yt,Sr){let _n=Qn(!0,!0,!0),Xn=Sr||Qv(Yt),es=Xn?De(Yt,Sr,_n):Qe(Yt,_n);if(Xn&&kc(es.name)&&ar(es.name,Z.An_optional_chain_cannot_contain_private_identifiers),x_(Yt)&&Yt.typeArguments){let Ca=Yt.typeArguments.pos-1,Hc=Ju(kt,Yt.typeArguments.end)+1;Pe(Ca,Hc,Z.An_instantiation_expression_cannot_be_followed_by_a_property_access)}return di(es,$e)}function FY($e,Yt,Sr){let _n;if(Re()===24)_n=lI(80,!0,Z.An_element_access_expression_should_take_an_argument);else{let es=Bi(fr);GE(es)&&(es.text=J0(es.text)),_n=es}ri(24);let Xn=Sr||Qv(Yt)?Le(Yt,Sr,_n):lt(Yt,_n);return di(Xn,$e)}function WN($e,Yt,Sr){for(;;){let _n,Xn=!1;if(Sr&&aw()?(_n=Df(29),Xn=MI(Re())):Xn=zc(25),Xn){Yt=eL($e,Yt,_n);continue}if((_n||!Pn())&&zc(23)){Yt=FY($e,Yt,_n);continue}if(HE()){Yt=!_n&&Yt.kind===233?PN($e,Yt.expression,_n,Yt.typeArguments):PN($e,Yt,_n,void 0);continue}if(!_n){if(Re()===54&&!c.hasPrecedingLineBreak()){Vt(),Yt=di(P.createNonNullExpression(Yt),$e);continue}let es=Da(DP);if(es){Yt=di(P.createExpressionWithTypeArguments(Yt,es),$e);continue}}return Yt}}function HE(){return Re()===15||Re()===16}function PN($e,Yt,Sr,_n){let Xn=P.createTaggedTemplateExpression(Yt,_n,Re()===15?(ds(!0),En()):cs(!0));return(Sr||Yt.flags&64)&&(Xn.flags|=64),Xn.questionDotToken=Sr,di(Xn,$e)}function MB($e,Yt){for(;;){Yt=WN($e,Yt,!0);let Sr,_n=Zc(29);if(_n&&(Sr=Da(DP),HE())){Yt=PN($e,Yt,_n,Sr);continue}if(Sr||Re()===21){!_n&&Yt.kind===233&&(Sr=Yt.typeArguments,Yt=Yt.expression);let Xn=jx(),es=_n||Qv(Yt)?st(Yt,_n,Sr,Xn):je(Yt,Sr,Xn);Yt=di(es,$e);continue}if(_n){let Xn=lI(80,!1,Z.Identifier_expected);Yt=di(De(Yt,_n,Xn),$e)}break}return Yt}function jx(){ri(21);let $e=$C(11,xP);return ri(22),$e}function DP(){if(Ns&524288||Es()!==30)return;Vt();let $e=$C(20,Em);if(Mn()===32)return Vt(),$e&&_7()?$e:void 0}function _7(){switch(Re()){case 21:case 15:case 16:return!0;case 30:case 32:case 40:case 41:return!1}return c.hasPrecedingLineBreak()||M1()||!fT()}function Z4(){switch(Re()){case 15:c.getTokenFlags()&26656&&ds(!1);case 9:case 10:case 11:return En();case 110:case 108:case 106:case 112:case 97:return xI();case 21:return ZY();case 23:return cw();case 19:return kP();case 134:if(!oa(z0))break;return GV();case 60:return bl();case 86:return jl();case 100:return GV();case 105:return tL();case 44:case 69:if(Ii()===14)return En();break;case 16:return cs(!1);case 81:return fi()}return rf(Z.Expression_expected)}function ZY(){let $e=Me(),Yt=ur();ri(21);let Sr=Bi(fr);return ri(22),_s(di(qe(Sr),$e),Yt)}function cre(){let $e=Me();ri(26);let Yt=zm(!0);return di(P.createSpreadElement(Yt),$e)}function L4(){return Re()===26?cre():Re()===28?di(P.createOmittedExpression(),Me()):zm(!0)}function xP(){return cg(u,L4)}function cw(){let $e=Me(),Yt=c.getTokenStart(),Sr=ri(23),_n=c.hasPrecedingLineBreak(),Xn=$C(15,L4);return mf(23,24,Sr,Yt),di(Fe(Xn,_n),$e)}function lre(){let $e=Me(),Yt=ur();if(Zc(26)){let Il=zm(!0);return _s(di(P.createSpreadAssignment(Il),$e),Yt)}let Sr=qn(!0);if(Jo(139))return nL($e,Yt,Sr,177,0);if(Jo(153))return nL($e,Yt,Sr,178,0);let _n=Zc(42),Xn=Gs(),es=Ri(),Ca=Zc(58),Hc=Zc(54);if(_n||Re()===21||Re()===30)return LC($e,Yt,Sr,_n,es,Ca,Hc);let yc;if(Xn&&Re()!==59){let Il=Zc(64),lp=Il?Bi(()=>zm(!0)):void 0;yc=P.createShorthandPropertyAssignment(es,lp),yc.equalsToken=Il}else{ri(59);let Il=Bi(()=>zm(!0));yc=P.createPropertyAssignment(es,Il)}return yc.modifiers=Sr,yc.questionToken=Ca,yc.exclamationToken=Hc,_s(di(yc,$e),Yt)}function kP(){let $e=Me(),Yt=c.getTokenStart(),Sr=ri(19),_n=c.hasPrecedingLineBreak(),Xn=$C(12,lre,!0);return mf(19,20,Sr,Yt),di(Ne(Xn,_n),$e)}function GV(){let $e=Pn();nc(!1);let Yt=Me(),Sr=ur(),_n=qn(!1);ri(100);let Xn=Zc(42),es=Xn?1:0,Ca=lr(_n,c4)?2:0,Hc=es&&Ca?Qt(JG):es?ct(JG):Ca?St(JG):JG(),yc=K0(),$a=U2(es|Ca),Il=Pv(59,!1),lp=rL(es|Ca);nc($e);let hg=P.createFunctionExpression(_n,Xn,Hc,yc,$a,Il,lp);return _s(di(hg,Yt),Sr)}function JG(){return ki()?Yb():void 0}function tL(){let $e=Me();if(ri(105),zc(25)){let es=kI();return di(P.createMetaProperty(105,es),$e)}let Yt=Me(),Sr=WN(Yt,Z4(),!1),_n;Sr.kind===233&&(_n=Sr.typeArguments,Sr=Sr.expression),Re()===29&&Kr(Z.Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0,vQ(kt,Sr));let Xn=Re()===21?jx():void 0;return di(nt(Sr,_n,Xn),$e)}function Yv($e,Yt){let Sr=Me(),_n=ur(),Xn=c.getTokenStart(),es=ri(19,Yt);if(es||$e){let Ca=c.hasPrecedingLineBreak(),Hc=PA(1,j2);mf(19,20,es,Xn);let yc=_s(di(it(Hc,Ca),Sr),_n);return Re()===64&&(Kr(Z.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),Vt()),yc}else{let Ca=Jb();return _s(di(it(Ca,void 0),Sr),_n)}}function rL($e,Yt){let Sr=ti();qa(!!($e&1));let _n=an();Nc(!!($e&2));let Xn=gi;gi=!1;let es=Pn();es&&nc(!1);let Ca=Yv(!!($e&16),Yt);return es&&nc(!0),gi=Xn,qa(Sr),Nc(_n),Ca}function GP(){let $e=Me(),Yt=ur();return ri(27),_s(di(P.createEmptyStatement(),$e),Yt)}function fh(){let $e=Me(),Yt=ur();ri(101);let Sr=c.getTokenStart(),_n=ri(21),Xn=Bi(fr);mf(21,22,_n,Sr);let es=j2(),Ca=zc(93)?j2():void 0;return _s(di(wt(Xn,es,Ca),$e),Yt)}function UG(){let $e=Me(),Yt=ur();ri(92);let Sr=j2();ri(117);let _n=c.getTokenStart(),Xn=ri(21),es=Bi(fr);return mf(21,22,Xn,_n),zc(27),_s(di(P.createDoStatement(Sr,es),$e),Yt)}function ON(){let $e=Me(),Yt=ur();ri(117);let Sr=c.getTokenStart(),_n=ri(21),Xn=Bi(fr);mf(21,22,_n,Sr);let es=j2();return _s(di(vt(Xn,es),$e),Yt)}function JI(){let $e=Me(),Yt=ur();ri(99);let Sr=Zc(135);ri(21);let _n;Re()!==27&&(Re()===115||Re()===121||Re()===87||Re()===160&&oa(dre)||Re()===135&&oa(E7)?_n=lw(!0):_n=BA(fr));let Xn;if(Sr?ri(165):zc(165)){let es=Bi(()=>zm(!0));ri(22),Xn=ht(Sr,_n,es,j2())}else if(zc(103)){let es=Bi(fr);ri(22),Xn=P.createForInStatement(_n,es,j2())}else{ri(27);let es=Re()!==27&&Re()!==22?Bi(fr):void 0;ri(27);let Ca=Re()!==22?Bi(fr):void 0;ri(22),Xn=Ye(_n,es,Ca,j2())}return _s(di(Xn,$e),Yt)}function qm($e){let Yt=Me(),Sr=ur();ri($e===252?83:88);let _n=Jg()?void 0:rf();Yd();let Xn=$e===252?P.createBreakStatement(_n):P.createContinueStatement(_n);return _s(di(Xn,Yt),Sr)}function KG(){let $e=Me(),Yt=ur();ri(107);let Sr=Jg()?void 0:Bi(fr);return Yd(),_s(di(P.createReturnStatement(Sr),$e),Yt)}function Kb(){let $e=Me(),Yt=ur();ri(118);let Sr=c.getTokenStart(),_n=ri(21),Xn=Bi(fr);mf(21,22,_n,Sr);let es=Ku(67108864,j2);return _s(di(P.createWithStatement(Xn,es),$e),Yt)}function QB(){let $e=Me(),Yt=ur();ri(84);let Sr=Bi(fr);ri(59);let _n=PA(3,j2);return _s(di(P.createCaseClause(Sr,_n),$e),Yt)}function y7(){let $e=Me();ri(90),ri(59);let Yt=PA(3,j2);return di(P.createDefaultClause(Yt),$e)}function MN(){return Re()===84?QB():y7()}function b7(){let $e=Me();ri(19);let Yt=PA(2,MN);return ri(20),di(P.createCaseBlock(Yt),$e)}function QN(){let $e=Me(),Yt=ur();ri(109),ri(21);let Sr=Bi(fr);ri(22);let _n=b7();return _s(di(P.createSwitchStatement(Sr,_n),$e),Yt)}function FV(){let $e=Me(),Yt=ur();ri(111);let Sr=c.hasPrecedingLineBreak()?void 0:Bi(fr);return Sr===void 0&&($n++,Sr=di(Ae(""),Me())),hf()||JA(Sr),_s(di(P.createThrowStatement(Sr),$e),Yt)}function ure(){let $e=Me(),Yt=ur();ri(113);let Sr=Yv(!1),_n=Re()===85?FI():void 0,Xn;return(!_n||Re()===98)&&(ri(98,Z.catch_or_finally_expected),Xn=Yv(!1)),_s(di(P.createTryStatement(Sr,_n,Xn),$e),Yt)}function FI(){let $e=Me();ri(85);let Yt;zc(21)?(Yt=VV(),ri(22)):Yt=void 0;let Sr=Yv(!1);return di(P.createCatchClause(Yt,Sr),$e)}function gre(){let $e=Me(),Yt=ur();return ri(89),Yd(),_s(di(P.createDebuggerStatement(),$e),Yt)}function Are(){let $e=Me(),Yt=ur(),Sr,_n=Re()===21,Xn=Bi(fr);return sr(Xn)&&zc(59)?Sr=P.createLabeledStatement(Xn,j2()):(hf()||JA(Xn),Sr=dt(Xn),_n&&(Yt=!1)),_s(di(Sr,$e),Yt)}function FP(){return Vt(),MI(Re())&&!c.hasPrecedingLineBreak()}function Jue(){return Vt(),Re()===86&&!c.hasPrecedingLineBreak()}function z0(){return Vt(),Re()===100&&!c.hasPrecedingLineBreak()}function V4(){return Vt(),(MI(Re())||Re()===9||Re()===10||Re()===11)&&!c.hasPrecedingLineBreak()}function LY(){for(;;)switch(Re()){case 115:case 121:case 87:case 100:case 86:case 94:return!0;case 160:return VY();case 135:return W4();case 120:case 156:return uD();case 144:case 145:return GA();case 128:case 129:case 134:case 138:case 123:case 124:case 125:case 148:let $e=Re();if(Vt(),c.hasPrecedingLineBreak())return!1;if($e===138&&Re()===156)return!0;continue;case 162:return Vt(),Re()===19||Re()===80||Re()===95;case 102:return Vt(),Re()===11||Re()===42||Re()===19||MI(Re());case 95:let Yt=Vt();if(Yt===156&&(Yt=oa(Vt)),Yt===64||Yt===42||Yt===19||Yt===90||Yt===130||Yt===60)return!0;continue;case 126:Vt();continue;default:return!1}}function ZP(){return oa(LY)}function db(){switch(Re()){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:return!0;case 102:return ZP()||oa(Co);case 87:case 95:return ZP();case 134:case 138:case 120:case 144:case 145:case 156:case 162:return!0;case 129:case 125:case 123:case 124:case 126:case 148:return ZP()||!oa(FP);default:return fT()}}function Uue(){return Vt(),ki()||Re()===19||Re()===23}function LP(){return oa(Uue)}function dre(){return VP(!0)}function VP($e){return Vt(),$e&&Re()===165?!1:(ki()||Re()===19)&&!c.hasPrecedingLineBreak()}function VY(){return oa(VP)}function E7($e){return Vt()===160?VP($e):!1}function W4(){return oa(E7)}function j2(){switch(Re()){case 27:return GP();case 19:return Yv(!1);case 115:return AD(Me(),ur(),void 0);case 121:if(LP())return AD(Me(),ur(),void 0);break;case 135:if(W4())return AD(Me(),ur(),void 0);break;case 160:if(VY())return AD(Me(),ur(),void 0);break;case 100:return YN(Me(),ur(),void 0);case 86:return Hg(Me(),ur(),void 0);case 101:return fh();case 92:return UG();case 117:return ON();case 99:return JI();case 88:return qm(251);case 83:return qm(252);case 107:return KG();case 118:return Kb();case 109:return QN();case 111:return FV();case 113:case 85:case 98:return ure();case 89:return gre();case 60:return ZV();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(ZP())return ZV();break}return Are()}function pre($e){return $e.kind===138}function ZV(){let $e=Me(),Yt=ur(),Sr=qn(!0);if(lr(Sr,pre)){let Xn=Y1($e);if(Xn)return Xn;for(let es of Sr)es.flags|=33554432;return Ku(33554432,()=>IT($e,Yt,Sr))}else return IT($e,Yt,Sr)}function Y1($e){return Ku(33554432,()=>{let Yt=bm(bi,$e);if(Yt)return rp(Yt)})}function IT($e,Yt,Sr){switch(Re()){case 115:case 121:case 87:case 160:case 135:return AD($e,Yt,Sr);case 100:return YN($e,Yt,Sr);case 86:return Hg($e,Yt,Sr);case 120:return qG($e,Yt,Sr);case 156:return PP($e,Yt,Sr);case 94:return PV($e,Yt,Sr);case 162:case 144:case 145:return Kue($e,Yt,Sr);case 102:return dZe($e,Yt,Sr);case 95:switch(Vt(),Re()){case 90:case 64:return vd($e,Yt,Sr);case 130:return AZe($e,Yt,Sr);default:return que($e,Yt,Sr)}default:if(Sr){let _n=lI(282,!0,Z.Declaration_expected);return _6(_n,$e),_n.modifiers=Sr,_n}return}}function P4(){return Vt()===11}function O4(){return Vt(),Re()===161||Re()===64}function GA(){return Vt(),!c.hasPrecedingLineBreak()&&(Gs()||Re()===11)}function Mo($e,Yt){if(Re()!==19){if($e&4){PG();return}if(Jg()){Yd();return}}return rL($e,Yt)}function z2(){let $e=Me();if(Re()===28)return di(P.createOmittedExpression(),$e);let Yt=Zc(26),Sr=LV(),_n=iw();return di(P.createBindingElement(Yt,void 0,Sr,_n),$e)}function o_(){let $e=Me(),Yt=Zc(26),Sr=ki(),_n=Ri(),Xn;Sr&&Re()!==59?(Xn=_n,_n=void 0):(ri(59),Xn=LV());let es=iw();return di(P.createBindingElement(Yt,_n,Xn,es),$e)}function fre(){let $e=Me();ri(19);let Yt=Bi(()=>$C(9,o_));return ri(20),di(P.createObjectBindingPattern(Yt),$e)}function Ire(){let $e=Me();ri(23);let Yt=Bi(()=>$C(10,z2));return ri(24),di(P.createArrayBindingPattern(Yt),$e)}function WP(){return Re()===19||Re()===23||Re()===81||ki()}function LV($e){return Re()===23?Ire():Re()===19?fre():Yb($e)}function Cre(){return VV(!0)}function VV($e){let Yt=Me(),Sr=ur(),_n=LV(Z.Private_identifiers_are_not_allowed_in_variable_declarations),Xn;$e&&_n.kind===80&&Re()===54&&!c.hasPrecedingLineBreak()&&(Xn=xI());let es=jZ(),Ca=NP(Re())?void 0:iw(),Hc=Et(_n,Xn,es,Ca);return _s(di(Hc,Yt),Sr)}function lw($e){let Yt=Me(),Sr=0;switch(Re()){case 115:break;case 121:Sr|=1;break;case 87:Sr|=2;break;case 160:Sr|=4;break;case 135:w.assert(W4()),Sr|=6,Vt();break;default:w.fail()}Vt();let _n;if(Re()===165&&oa(H1))_n=Jb();else{let Xn=cr();Hs($e),_n=$C(8,$e?VV:Cre),Hs(Xn)}return di(Kt(_n,Sr),Yt)}function H1(){return Hb()&&Vt()===22}function AD($e,Yt,Sr){let _n=lw(!1);Yd();let Xn=It(Sr,_n);return _s(di(Xn,$e),Yt)}function YN($e,Yt,Sr){let _n=an(),Xn=xv(Sr);ri(100);let es=Zc(42),Ca=Xn&2048?JG():Yb(),Hc=es?1:0,yc=Xn&1024?2:0,$a=K0();Xn&32&&Nc(!0);let Il=U2(Hc|yc),lp=Pv(59,!1),hg=Mo(Hc|yc,Z.or_expected);Nc(_n);let oA=P.createFunctionDeclaration(Sr,es,Ca,$a,Il,lp,hg);return _s(di(oA,$e),Yt)}function jG(){if(Re()===137)return ri(137);if(Re()===11&&oa(Vt)===21)return Da(()=>{let $e=En();return $e.text==="constructor"?$e:void 0})}function M4($e,Yt,Sr){return Da(()=>{if(jG()){let _n=K0(),Xn=U2(0),es=Pv(59,!1),Ca=Mo(0,Z.or_expected),Hc=P.createConstructorDeclaration(Sr,Xn,Ca);return Hc.typeParameters=_n,Hc.type=es,_s(di(Hc,$e),Yt)}})}function LC($e,Yt,Sr,_n,Xn,es,Ca,Hc){let yc=_n?1:0,$a=lr(Sr,c4)?2:0,Il=K0(),lp=U2(yc|$a),hg=Pv(59,!1),oA=Mo(yc|$a,Hc),$2=P.createMethodDeclaration(Sr,_n,Xn,es,Il,lp,hg,oA);return $2.exclamationToken=Ca,_s(di($2,$e),Yt)}function uw($e,Yt,Sr,_n,Xn){let es=!Xn&&!c.hasPrecedingLineBreak()?Zc(54):void 0,Ca=jZ(),Hc=cg(90112,iw);Tl(_n,Ca,Hc);let yc=P.createPropertyDeclaration(Sr,_n,Xn||es,Ca,Hc);return _s(di(yc,$e),Yt)}function X1($e,Yt,Sr){let _n=Zc(42),Xn=Ri(),es=Zc(58);return _n||Re()===21||Re()===30?LC($e,Yt,Sr,_n,Xn,es,void 0,Z.or_expected):uw($e,Yt,Sr,Xn,es)}function nL($e,Yt,Sr,_n,Xn){let es=Ri(),Ca=K0(),Hc=U2(0),yc=Pv(59,!1),$a=Mo(Xn),Il=_n===177?P.createGetAccessorDeclaration(Sr,es,Hc,yc,$a):P.createSetAccessorDeclaration(Sr,es,Hc,$a);return Il.typeParameters=Ca,sb(Il)&&(Il.type=yc),_s(di(Il,$e),Yt)}function q2(){let $e;if(Re()===60)return!0;for(;wv(Re());){if($e=Re(),C$($e))return!0;Vt()}if(Re()===42||(tt()&&($e=Re(),Vt()),Re()===23))return!0;if($e!==void 0){if(!i0($e)||$e===153||$e===139)return!0;switch(Re()){case 21:case 30:case 54:case 59:case 64:case 58:return!0;default:return Jg()}}return!1}function Q4($e,Yt,Sr){Df(126);let _n=WV(),Xn=_s(di(P.createClassStaticBlockDeclaration(_n),$e),Yt);return Xn.modifiers=Sr,Xn}function WV(){let $e=ti(),Yt=an();qa(!1),Nc(!0);let Sr=Yv(!1);return qa($e),Nc(Yt),Sr}function ce(){if(an()&&Re()===135){let $e=Me(),Yt=rf(Z.Expression_expected);Vt();let Sr=WN($e,Yt,!0);return MB($e,Sr)}return Q1()}function _t(){let $e=Me();if(!zc(60))return;let Yt=rn(ce);return di(P.createDecorator(Yt),$e)}function pn($e,Yt,Sr){let _n=Me(),Xn=Re();if(Re()===87&&Yt){if(!Da(hc))return}else{if(Sr&&Re()===126&&oa(_re))return;if($e&&Re()===126)return;if(!zC())return}return di(Be(Xn),_n)}function qn($e,Yt,Sr){let _n=Me(),Xn,es,Ca,Hc=!1,yc=!1,$a=!1;if($e&&Re()===60)for(;es=_t();)Xn=Hr(Xn,es);for(;Ca=pn(Hc,Yt,Sr);)Ca.kind===126&&(Hc=!0),Xn=Hr(Xn,Ca),yc=!0;if(yc&&$e&&Re()===60)for(;es=_t();)Xn=Hr(Xn,es),$a=!0;if($a)for(;Ca=pn(Hc,Yt,Sr);)Ca.kind===126&&(Hc=!0),Xn=Hr(Xn,Ca);return Xn&&zA(Xn,_n)}function Ka(){let $e;if(Re()===134){let Yt=Me();Vt();let Sr=di(Be(134),Yt);$e=zA([Sr],Yt)}return $e}function Gl(){let $e=Me(),Yt=ur();if(Re()===27)return Vt(),_s(di(P.createSemicolonClassElement(),$e),Yt);let Sr=qn(!0,!0,!0);if(Re()===126&&oa(_re))return Q4($e,Yt,Sr);if(Jo(139))return nL($e,Yt,Sr,177,0);if(Jo(153))return nL($e,Yt,Sr,178,0);if(Re()===137||Re()===11){let _n=M4($e,Yt,Sr);if(_n)return _n}if(Tr())return ci($e,Yt,Sr);if(MI(Re())||Re()===11||Re()===9||Re()===42||Re()===23)if(lr(Sr,pre)){for(let Xn of Sr)Xn.flags|=33554432;return Ku(33554432,()=>X1($e,Yt,Sr))}else return X1($e,Yt,Sr);if(Sr){let _n=lI(80,!0,Z.Declaration_expected);return uw($e,Yt,Sr,_n,void 0)}return w.fail("Should not have attempted to parse class member declaration.")}function bl(){let $e=Me(),Yt=ur(),Sr=qn(!0);if(Re()===86)return q0($e,Yt,Sr,231);let _n=lI(282,!0,Z.Expression_expected);return _6(_n,$e),_n.modifiers=Sr,_n}function jl(){return q0(Me(),ur(),void 0,231)}function Hg($e,Yt,Sr){return q0($e,Yt,Sr,263)}function q0($e,Yt,Sr,_n){let Xn=an();ri(86);let es=m0(),Ca=K0();lr(Sr,Fx)&&Nc(!0);let Hc=WY(),yc;ri(19)?(yc=mre(),ri(20)):yc=Jb(),Nc(Xn);let $a=_n===263?P.createClassDeclaration(Sr,es,Ca,Hc,yc):P.createClassExpression(Sr,es,Ca,Hc,yc);return _s(di($a,$e),Yt)}function m0(){return ki()&&!iL()?U0(ki()):void 0}function iL(){return Re()===119&&oa(GI)}function WY(){if(PY())return PA(22,XE)}function XE(){let $e=Me(),Yt=Re();w.assert(Yt===96||Yt===119),Vt();let Sr=$C(7,CT);return di(P.createHeritageClause(Yt,Sr),$e)}function CT(){let $e=Me(),Yt=Q1();if(Yt.kind===233)return Yt;let Sr=zG();return di(P.createExpressionWithTypeArguments(Yt,Sr),$e)}function zG(){return Re()===30?X2(20,Em,30,32):void 0}function PY(){return Re()===96||Re()===119}function mre(){return PA(5,Gl)}function qG($e,Yt,Sr){ri(120);let _n=rf(),Xn=K0(),es=WY(),Ca=Ps(),Hc=P.createInterfaceDeclaration(Sr,_n,Xn,es,Ca);return _s(di(Hc,$e),Yt)}function PP($e,Yt,Sr){ri(156),c.hasPrecedingLineBreak()&&Kr(Z.Line_break_not_permitted_here);let _n=rf(),Xn=K0();ri(64);let es=Re()===141&&Da(yP)||Em();Yd();let Ca=P.createTypeAliasDeclaration(Sr,_n,Xn,es);return _s(di(Ca,$e),Yt)}function sL(){let $e=Me(),Yt=ur(),Sr=Ri(),_n=Bi(iw);return _s(di(P.createEnumMember(Sr,_n),$e),Yt)}function PV($e,Yt,Sr){ri(94);let _n=rf(),Xn;ri(19)?(Xn=_r(()=>$C(6,sL)),ri(20)):Xn=Jb();let es=P.createEnumDeclaration(Sr,_n,Xn);return _s(di(es,$e),Yt)}function qc(){let $e=Me(),Yt;return ri(19)?(Yt=PA(1,j2),ri(20)):Yt=Jb(),di(P.createModuleBlock(Yt),$e)}function OV($e,Yt,Sr,_n){let Xn=_n&32,es=_n&8?kI():rf(),Ca=zc(25)?OV(Me(),!1,void 0,8|Xn):qc(),Hc=P.createModuleDeclaration(Sr,es,Ca,_n);return _s(di(Hc,$e),Yt)}function Xs($e,Yt,Sr){let _n=0,Xn;Re()===162?(Xn=rf(),_n|=2048):(Xn=En(),Xn.text=J0(Xn.text));let es;Re()===19?es=qc():Yd();let Ca=P.createModuleDeclaration(Sr,Xn,es,_n);return _s(di(Ca,$e),Yt)}function Kue($e,Yt,Sr){let _n=0;if(Re()===162)return Xs($e,Yt,Sr);if(zc(145))_n|=32;else if(ri(144),Re()===11)return Xs($e,Yt,Sr);return OV($e,Yt,Sr,_n)}function hre(){return Re()===149&&oa(B7)}function B7(){return Vt()===21}function _re(){return Vt()===19}function yre(){return Vt()===44}function AZe($e,Yt,Sr){ri(130),ri(145);let _n=rf();Yd();let Xn=P.createNamespaceExportDeclaration(_n);return Xn.modifiers=Sr,_s(di(Xn,$e),Yt)}function dZe($e,Yt,Sr){ri(102);let _n=c.getTokenFullStart(),Xn;Gs()&&(Xn=rf());let es=!1;if(Xn?.escapedText==="type"&&(Re()!==161||Gs()&&oa(O4))&&(Gs()||V0e())&&(es=!0,Xn=Gs()?rf():void 0),Xn&&!OP())return W0e($e,Yt,Sr,Xn,es);let Ca=dD(Xn,_n,es),Hc=Hv(),yc=L0e();Yd();let $a=P.createImportDeclaration(Sr,Ca,Hc,yc);return _s(di($a,$e),Yt)}function dD($e,Yt,Sr,_n=!1){let Xn;return($e||Re()===42||Re()===19)&&(Xn=OY($e,Yt,Sr,_n),ri(161)),Xn}function L0e(){let $e=Re();if(($e===118||$e===132)&&!c.hasPrecedingLineBreak())return zue($e)}function jue(){let $e=Me(),Yt=MI(Re())?kI():Wl(11);ri(59);let Sr=zm(!0);return di(P.createImportAttribute(Yt,Sr),$e)}function zue($e,Yt){let Sr=Me();Yt||ri($e);let _n=c.getTokenStart();if(ri(19)){let Xn=c.hasPrecedingLineBreak(),es=$C(24,jue,!0);if(!ri(20)){let Ca=qo(mr);Ca&&Ca.code===Z._0_expected.code&&eg(Ca,HQ(Tt,kt,_n,1,Z.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}return di(P.createImportAttributes(es,Xn,$e),Sr)}else{let Xn=zA([],Me(),void 0,!1);return di(P.createImportAttributes(Xn,!1,$e),Sr)}}function V0e(){return Re()===42||Re()===19}function OP(){return Re()===28||Re()===161}function W0e($e,Yt,Sr,_n,Xn){ri(64);let es=$G();Yd();let Ca=P.createImportEqualsDeclaration(Sr,Xn,_n,es);return _s(di(Ca,$e),Yt)}function OY($e,Yt,Sr,_n){let Xn;return(!$e||zc(28))&&(_n&&c.setSkipJsDocLeadingAsterisks(!0),Xn=Re()===42?bre():P0e(275),_n&&c.setSkipJsDocLeadingAsterisks(!1)),di(P.createImportClause(Sr,$e,Xn),Yt)}function $G(){return hre()?MY():rt(!1)}function MY(){let $e=Me();ri(149),ri(21);let Yt=Hv();return ri(22),di(P.createExternalModuleReference(Yt),$e)}function Hv(){if(Re()===11){let $e=En();return $e.text=J0($e.text),$e}else return fr()}function bre(){let $e=Me();ri(42),ri(130);let Yt=rf();return di(P.createNamespaceImport(Yt),$e)}function P0e($e){let Yt=Me(),Sr=$e===275?P.createNamedImports(X2(23,Y4,19,20)):P.createNamedExports(X2(23,pD,19,20));return di(Sr,Yt)}function pD(){let $e=ur();return _s(O0e(281),$e)}function Y4(){return O0e(276)}function O0e($e){let Yt=Me(),Sr=i0(Re())&&!Gs(),_n=c.getTokenStart(),Xn=c.getTokenEnd(),es=!1,Ca,Hc=!0,yc=kI();if(yc.escapedText==="type")if(Re()===130){let lp=kI();if(Re()===130){let hg=kI();MI(Re())?(es=!0,Ca=lp,yc=Il(),Hc=!1):(Ca=yc,yc=hg,Hc=!1)}else MI(Re())?(Ca=yc,Hc=!1,yc=Il()):(es=!0,yc=lp)}else MI(Re())&&(es=!0,yc=Il());Hc&&Re()===130&&(Ca=yc,ri(130),yc=Il()),$e===276&&Sr&&Pe(_n,Xn,Z.Identifier_expected);let $a=$e===276?P.createImportSpecifier(es,Ca,yc):P.createExportSpecifier(es,Ca,yc);return di($a,Yt);function Il(){return Sr=i0(Re())&&!Gs(),_n=c.getTokenStart(),Xn=c.getTokenEnd(),kI()}}function ZI($e){return di(P.createNamespaceExport(kI()),$e)}function que($e,Yt,Sr){let _n=an();Nc(!0);let Xn,es,Ca,Hc=zc(156),yc=Me();zc(42)?(zc(130)&&(Xn=ZI(yc)),ri(161),es=Hv()):(Xn=P0e(279),(Re()===161||Re()===11&&!c.hasPrecedingLineBreak())&&(ri(161),es=Hv()));let $a=Re();es&&($a===118||$a===132)&&!c.hasPrecedingLineBreak()&&(Ca=zue($a)),Yd(),Nc(_n);let Il=P.createExportDeclaration(Sr,Hc,Xn,es,Ca);return _s(di(Il,$e),Yt)}function vd($e,Yt,Sr){let _n=an();Nc(!0);let Xn;zc(64)?Xn=!0:ri(90);let es=zm(!0);Yd(),Nc(_n);let Ca=P.createExportAssignment(Sr,Xn,es);return _s(di(Ca,$e),Yt)}let OA;($e=>{$e[$e.SourceElements=0]="SourceElements",$e[$e.BlockStatements=1]="BlockStatements",$e[$e.SwitchClauses=2]="SwitchClauses",$e[$e.SwitchClauseStatements=3]="SwitchClauseStatements",$e[$e.TypeMembers=4]="TypeMembers",$e[$e.ClassMembers=5]="ClassMembers",$e[$e.EnumMembers=6]="EnumMembers",$e[$e.HeritageClauseElement=7]="HeritageClauseElement",$e[$e.VariableDeclarations=8]="VariableDeclarations",$e[$e.ObjectBindingElements=9]="ObjectBindingElements",$e[$e.ArrayBindingElements=10]="ArrayBindingElements",$e[$e.ArgumentExpressions=11]="ArgumentExpressions",$e[$e.ObjectLiteralMembers=12]="ObjectLiteralMembers",$e[$e.JsxAttributes=13]="JsxAttributes",$e[$e.JsxChildren=14]="JsxChildren",$e[$e.ArrayLiteralMembers=15]="ArrayLiteralMembers",$e[$e.Parameters=16]="Parameters",$e[$e.JSDocParameters=17]="JSDocParameters",$e[$e.RestProperties=18]="RestProperties",$e[$e.TypeParameters=19]="TypeParameters",$e[$e.TypeArguments=20]="TypeArguments",$e[$e.TupleElementTypes=21]="TupleElementTypes",$e[$e.HeritageClauses=22]="HeritageClauses",$e[$e.ImportOrExportSpecifiers=23]="ImportOrExportSpecifiers",$e[$e.ImportAttributes=24]="ImportAttributes",$e[$e.JSDocComment=25]="JSDocComment",$e[$e.Count=26]="Count"})(OA||(OA={}));let v7;($e=>{$e[$e.False=0]="False",$e[$e.True=1]="True",$e[$e.Unknown=2]="Unknown"})(v7||(v7={}));let S7;($e=>{function Yt($a,Il,lp){rc("file.js",$a,99,void 0,1,0),c.setText($a,Il,lp),Yr=c.scan();let hg=Sr(),oA=ni("file.js",99,1,!1,[],Be(1),0,oc),$2=RZ(mr,oA);return Pt&&(oA.jsDocDiagnostics=RZ(Pt,oA)),Vl(),hg?{jsDocTypeExpression:hg,diagnostics:$2}:void 0}$e.parseJSDocTypeExpressionForTests=Yt;function Sr($a){let Il=Me(),lp=($a?zc:ri)(19),hg=Ku(16777216,J2);(!$a||lp)&&lg(20);let oA=P.createJSDocTypeExpression(hg);return ir(oA),di(oA,Il)}$e.parseJSDocTypeExpression=Sr;function _n(){let $a=Me(),Il=zc(19),lp=Me(),hg=rt(!1);for(;Re()===81;)oo(),dn(),hg=di(P.createJSDocMemberName(hg,rf()),lp);Il&&lg(20);let oA=P.createJSDocNameReference(hg);return ir(oA),di(oA,$a)}$e.parseJSDocNameReference=_n;function Xn($a,Il,lp){rc("",$a,99,void 0,1,0);let hg=Ku(16777216,()=>yc(Il,lp)),$2=RZ(mr,{languageVariant:0,text:$a});return Vl(),hg?{jsDoc:hg,diagnostics:$2}:void 0}$e.parseIsolatedJSDocComment=Xn;function es($a,Il,lp){let hg=Yr,oA=mr.length,$2=jn,mT=Ku(16777216,()=>yc(Il,lp));return kA(mT,$a),Ns&524288&&(Pt||(Pt=[]),ai(Pt,mr,oA)),Yr=hg,mr.length=oA,jn=$2,mT}$e.parseJSDocComment=es;let Ca;($a=>{$a[$a.BeginningOfLine=0]="BeginningOfLine",$a[$a.SawAsterisk=1]="SawAsterisk",$a[$a.SavingComments=2]="SavingComments",$a[$a.SavingBackticks=3]="SavingBackticks"})(Ca||(Ca={}));let Hc;($a=>{$a[$a.Property=1]="Property",$a[$a.Parameter=2]="Parameter",$a[$a.CallbackParameter=4]="CallbackParameter"})(Hc||(Hc={}));function yc($a=0,Il){let lp=kt,hg=Il===void 0?lp.length:$a+Il;if(Il=hg-$a,w.assert($a>=0),w.assert($a<=hg),w.assert(hg<=lp.length),!n8e(lp,$a))return;let oA,$2,mT,eF,MV,Xv=[],MP=[],$ue=bi;bi|=1<<25;let Ere=c.scanRange($a+3,Il-5,M0e);return bi=$ue,Ere;function M0e(){let is=1,la,da=$a-(lp.lastIndexOf(` -`,$a)+1)+4;function wa(_p){la||(la=da),Xv.push(_p),da+=_p.length}for(dn();HP(5););HP(4)&&(is=0,da=0);e:for(;;){switch(Re()){case 60:Bm(Xv),MV||(MV=Me()),zn(zx(da)),is=0,la=void 0;break;case 4:Xv.push(c.getTokenText()),is=0,da=0;break;case 42:let _p=c.getTokenText();is===1?(is=2,wa(_p)):(w.assert(is===0),is=1,da+=_p.length);break;case 5:w.assert(is!==2,"whitespace shouldn't come from the scanner while saving top-level comment text");let $m=c.getTokenText();la!==void 0&&da+$m.length>la&&Xv.push($m.slice(la-da)),da+=$m.length;break;case 1:break e;case 82:is=2,wa(c.getTokenValue());break;case 19:is=2;let ID=c.getTokenFullStart(),HN=c.getTokenEnd()-1,_C=j(HN);if(_C){eF||MA(Xv),MP.push(di(P.createJSDocText(Xv.join("")),eF??$a,ID)),MP.push(_C),Xv=[],eF=c.getTokenEnd();break}default:is=2,wa(c.getTokenText());break}is===2?On(!1):dn()}let wc=Xv.join("").trimEnd();MP.length&&wc.length&&MP.push(di(P.createJSDocText(wc),eF??$a,MV)),MP.length&&oA&&w.assertIsDefined(MV,"having parsed tags implies that the end of the comment span should be set");let qA=oA&&zA(oA,$2,mT);return di(P.createJSDocComment(MP.length?zA(MP,$a,MV):wc.length?wc:void 0,qA),$a,hg)}function MA(is){for(;is.length&&(is[0]===` -`||is[0]==="\r");)is.shift()}function Bm(is){for(;is.length;){let la=is[is.length-1].trimEnd();if(la==="")is.pop();else if(la.length$m&&(wa.push(tF.slice($m-is)),_p=2),is+=tF.length;break;case 19:_p=2;let T7=c.getTokenFullStart(),N7=c.getTokenEnd()-1,tge=j(N7);tge?(wc.push(di(P.createJSDocText(wa.join("")),qA??da,T7)),wc.push(tge),wa=[],qA=c.getTokenEnd()):ID(c.getTokenText());break;case 62:_p===3?_p=2:_p=3,ID(c.getTokenText());break;case 82:_p!==3&&(_p=2),ID(c.getTokenValue());break;case 42:if(_p===0){_p=1,is+=1;break}default:_p!==3&&(_p=2),ID(c.getTokenText());break}_p===2||_p===3?HN=On(_p===3):HN=dn()}MA(wa);let _C=wa.join("").trimEnd();if(wc.length)return _C.length&&wc.push(di(P.createJSDocText(_C),qA??da)),zA(wc,da,c.getTokenEnd());if(_C.length)return _C}function j(is){let la=Da(We);if(!la)return;dn(),hT();let da=me(),wa=[];for(;Re()!==20&&Re()!==4&&Re()!==1;)wa.push(c.getTokenText()),dn();let wc=la==="link"?P.createJSDocLink:la==="linkcode"?P.createJSDocLinkCode:P.createJSDocLinkPlain;return di(wc(da,wa.join("")),is,c.getTokenEnd())}function me(){if(MI(Re())){let is=Me(),la=kI();for(;zc(25);)la=di(P.createQualifiedName(la,Re()===81?lI(80,!1):kI()),is);for(;Re()===81;)oo(),dn(),la=di(P.createJSDocMemberName(la,rf()),is);return la}}function We(){if(QP(),Re()===19&&dn()===60&&MI(dn())){let is=c.getTokenValue();if(mt(is))return is}}function mt(is){return is==="link"||is==="linkcode"||is==="linkplain"}function yr(is,la,da,wa){return di(P.createJSDocUnknownTag(la,YB(is,Me(),da,wa)),is)}function zn(is){is&&(oA?oA.push(is):(oA=[is],$2=is.pos),mT=is.end)}function io(){return QP(),Re()===19?Sr():void 0}function Yl(){let is=HP(23);is&&hT();let la=HP(62),da=g$e();return la&&f0(62),is&&(hT(),Zc(64)&&fr(),ri(24)),{name:da,isBracketed:is}}function hp(is){switch(is.kind){case 151:return!0;case 188:return hp(is.elementType);default:return F(is)&&sr(is.typeName)&&is.typeName.escapedText==="Object"&&!is.typeArguments}}function gw(is,la,da,wa){let wc=io(),qA=!wc;QP();let{name:_p,isBracketed:$m}=Yl(),ID=QP();qA&&!oa(We)&&(wc=io());let HN=YB(is,Me(),wa,ID),_C=Aw(wc,_p,da,wa);_C&&(wc=_C,qA=!0);let tF=da===1?P.createJSDocPropertyTag(la,_p,$m,wc,qA,HN):P.createJSDocParameterTag(la,_p,$m,wc,qA,HN);return di(tF,is)}function Aw(is,la,da,wa){if(is&&hp(is.type)){let wc=Me(),qA,_p;for(;qA=Da(()=>Y0e(da,wa,la));)qA.kind===341||qA.kind===348?_p=Hr(_p,qA):qA.kind===345&&ar(qA.tagName,Z.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);if(_p){let $m=di(P.createJSDocTypeLiteral(_p,is.type.kind===188),wc);return di(P.createJSDocTypeExpression($m),wc)}}}function fD(is,la,da,wa){lr(oA,Uxe)&&Pe(la.pos,c.getTokenStart(),Z._0_tag_already_specified,Sc(la.escapedText));let wc=io();return di(P.createJSDocReturnTag(la,wc,YB(is,Me(),da,wa)),is)}function w7(is,la,da,wa){lr(oA,Zle)&&Pe(la.pos,c.getTokenStart(),Z._0_tag_already_specified,Sc(la.escapedText));let wc=Sr(!0),qA=da!==void 0&&wa!==void 0?YB(is,Me(),da,wa):void 0;return di(P.createJSDocTypeTag(la,wc,qA),is)}function xWt(is,la,da,wa){let qA=Re()===23||oa(()=>dn()===60&&MI(dn())&&mt(c.getTokenValue()))?void 0:_n(),_p=da!==void 0&&wa!==void 0?YB(is,Me(),da,wa):void 0;return di(P.createJSDocSeeTag(la,qA,_p),is)}function Q0e(is,la,da,wa){let wc=io(),qA=YB(is,Me(),da,wa);return di(P.createJSDocThrowsTag(la,wc,qA),is)}function a$e(is,la,da,wa){let wc=Me(),qA=c$e(),_p=c.getTokenFullStart(),$m=YB(is,_p,da,wa);$m||(_p=c.getTokenFullStart());let ID=typeof $m!="string"?zA(vi([di(qA,wc,_p)],$m),wc):qA.text+$m;return di(P.createJSDocAuthorTag(la,ID),is)}function c$e(){let is=[],la=!1,da=c.getToken();for(;da!==1&&da!==4;){if(da===30)la=!0;else{if(da===60&&!la)break;if(da===32&&la){is.push(c.getTokenText()),c.resetTokenState(c.getTokenEnd());break}}is.push(c.getTokenText()),da=dn()}return P.createJSDocText(is.join(""))}function ege(is,la,da,wa){let wc=u$e();return di(P.createJSDocImplementsTag(la,wc,YB(is,Me(),da,wa)),is)}function kWt(is,la,da,wa){let wc=u$e();return di(P.createJSDocAugmentsTag(la,wc,YB(is,Me(),da,wa)),is)}function l$e(is,la,da,wa){let wc=Sr(!1),qA=da!==void 0&&wa!==void 0?YB(is,Me(),da,wa):void 0;return di(P.createJSDocSatisfiesTag(la,wc,qA),is)}function GWt(is,la,da,wa){let wc=c.getTokenFullStart(),qA;Gs()&&(qA=rf());let _p=dD(qA,wc,!0,!0),$m=Hv(),ID=L0e(),HN=da!==void 0&&wa!==void 0?YB(is,Me(),da,wa):void 0;return di(P.createJSDocImportTag(la,_p,$m,ID,HN),is)}function u$e(){let is=zc(19),la=Me(),da=FWt();c.setSkipJsDocLeadingAsterisks(!0);let wa=zG();c.setSkipJsDocLeadingAsterisks(!1);let wc=P.createExpressionWithTypeArguments(da,wa),qA=di(wc,la);return is&&ri(20),qA}function FWt(){let is=Me(),la=XP();for(;zc(25);){let da=XP();la=di(Qe(la,da),is)}return la}function oL(is,la,da,wa,wc){return di(la(da,YB(is,Me(),wa,wc)),is)}function pZe(is,la,da,wa){let wc=Sr(!0);return hT(),di(P.createJSDocThisTag(la,wc,YB(is,Me(),da,wa)),is)}function ZWt(is,la,da,wa){let wc=Sr(!0);return hT(),di(P.createJSDocEnumTag(la,wc,YB(is,Me(),da,wa)),is)}function YP(is,la,da,wa){let wc=io();QP();let qA=lo();hT();let _p=go(da),$m;if(!wc||hp(wc.type)){let HN,_C,tF,T7=!1;for(;(HN=Da(()=>Sre(da)))&&HN.kind!==345;)if(T7=!0,HN.kind===344)if(_C){let N7=Kr(Z.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);N7&&eg(N7,HQ(Tt,kt,0,0,Z.The_tag_was_first_specified_here));break}else _C=HN;else tF=Hr(tF,HN);if(T7){let N7=wc&&wc.type.kind===188,tge=P.createJSDocTypeLiteral(tF,N7);wc=_C&&_C.typeExpression&&!hp(_C.typeExpression.type)?_C.typeExpression:di(tge,is),$m=wc.end}}$m=$m||_p!==void 0?Me():(qA??wc??la).end,_p||(_p=YB(is,$m,da,wa));let ID=P.createJSDocTypedefTag(la,wc,qA,_p);return di(ID,is,$m)}function lo(is){let la=c.getTokenStart();if(!MI(Re()))return;let da=XP();if(zc(25)){let wa=lo(!0),wc=P.createModuleDeclaration(void 0,da,wa,is?8:void 0);return di(wc,la)}return is&&(da.flags|=4096),da}function YV(is){let la=Me(),da,wa;for(;da=Da(()=>Y0e(4,is));){if(da.kind===345){ar(da.tagName,Z.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);break}wa=Hr(wa,da)}return zA(wa||[],la)}function HV(is,la){let da=YV(la),wa=Da(()=>{if(HP(60)){let wc=zx(la);if(wc&&wc.kind===342)return wc}});return di(P.createJSDocSignature(void 0,da,wa),is)}function Bre(is,la,da,wa){let wc=lo();hT();let qA=go(da),_p=HV(is,da);qA||(qA=YB(is,Me(),da,wa));let $m=qA!==void 0?Me():_p.end;return di(P.createJSDocCallbackTag(la,_p,wc,qA),is,$m)}function vre(is,la,da,wa){hT();let wc=go(da),qA=HV(is,da);wc||(wc=YB(is,Me(),da,wa));let _p=wc!==void 0?Me():qA.end;return di(P.createJSDocOverloadTag(la,qA,wc),is,_p)}function fZe(is,la){for(;!sr(is)||!sr(la);)if(!sr(is)&&!sr(la)&&is.right.escapedText===la.right.escapedText)is=is.left,la=la.left;else return!1;return is.escapedText===la.escapedText}function Sre(is){return Y0e(1,is)}function Y0e(is,la,da){let wa=!0,wc=!1;for(;;)switch(dn()){case 60:if(wa){let qA=aL(is,la);return qA&&(qA.kind===341||qA.kind===348)&&da&&(sr(qA.name)||!fZe(da,qA.name.left))?!1:qA}wc=!1;break;case 4:wa=!0,wc=!1;break;case 42:wc&&(wa=!1),wc=!0;break;case 80:wa=!1;break;case 1:return!1}}function aL(is,la){w.assert(Re()===60);let da=c.getTokenFullStart();dn();let wa=XP(),wc=QP(),qA;switch(wa.escapedText){case"type":return is===1&&w7(da,wa);case"prop":case"property":qA=1;break;case"arg":case"argument":case"param":qA=6;break;case"template":return H0e(da,wa,la,wc);case"this":return pZe(da,wa,la,wc);default:return!1}return is&qA?gw(da,wa,is,la):!1}function LWt(){let is=Me(),la=HP(23);la&&hT();let da=qn(!1,!0),wa=XP(Z.Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces),wc;if(la&&(hT(),ri(64),wc=Ku(16777216,J2),ri(24)),!wf(wa))return di(P.createTypeParameterDeclaration(da,wa,void 0,wc),is)}function IZe(){let is=Me(),la=[];do{hT();let da=LWt();da!==void 0&&la.push(da),QP()}while(HP(28));return zA(la,is)}function H0e(is,la,da,wa){let wc=Re()===19?Sr():void 0,qA=IZe();return di(P.createJSDocTemplateTag(la,wc,qA,YB(is,Me(),da,wa)),is)}function HP(is){return Re()===is?(dn(),!0):!1}function g$e(){let is=XP();for(zc(23)&&ri(24);zc(25);){let la=XP();zc(23)&&ri(24),is=qr(is,la)}return is}function XP(is){if(!MI(Re()))return lI(80,!is,is||Z.Identifier_expected);$n++;let la=c.getTokenStart(),da=c.getTokenEnd(),wa=Re(),wc=J0(c.getTokenValue()),qA=di(Ae(wc,wa),la,da);return dn(),qA}}})(S7=n.JSDocParser||(n.JSDocParser={}))})(oP||(oP={}));var yxr=new WeakSet;function OKi(n){yxr.has(n)&&w.fail("Source file has already been incrementally parsed"),yxr.add(n)}var bxr=new WeakSet;function MKi(n){return bxr.has(n)}function wRt(n){bxr.add(n)}var s8e;(n=>{function c(re,ue,Ae,de){if(de=de||w.shouldAssert(2),P(re,ue,Ae,de),K(Ae))return re;if(re.statements.length===0)return oP.parseSourceFile(re.fileName,ue,re.languageVersion,void 0,!0,re.scriptKind,re.setExternalModuleIndicator,re.jsDocParsingMode);OKi(re),oP.fixupParentReferences(re);let Be=re.text,Fe=M(re),Ne=N(re,Ae);P(re,ue,Ne,de),w.assert(Ne.span.start<=Ae.span.start),w.assert(Uu(Ne.span)===Uu(Ae.span)),w.assert(Uu(Ys(Ne))===Uu(Ys(Ae)));let Qe=Ys(Ne).length-Ne.span.length;R(re,Ne.span.start,Uu(Ne.span),Uu(Ys(Ne)),Qe,Be,ue,de);let De=oP.parseSourceFile(re.fileName,ue,re.languageVersion,Fe,!0,re.scriptKind,re.setExternalModuleIndicator,re.jsDocParsingMode);return De.commentDirectives=u(re.commentDirectives,De.commentDirectives,Ne.span.start,Uu(Ne.span),Qe,Be,ue,de),De.impliedNodeFormat=re.impliedNodeFormat,rRt(re,De),De}n.updateSourceFile=c;function u(re,ue,Ae,de,Be,Fe,Ne,Qe){if(!re)return ue;let De,lt=!1;for(let je of re){let{range:st,type:nt}=je;if(st.endde){Le();let qe={range:{pos:st.pos+Be,end:st.end+Be},type:nt};De=Hr(De,qe),Qe&&w.assert(Fe.substring(st.pos,st.end)===Ne.substring(qe.range.pos,qe.range.end))}}return Le(),De;function Le(){lt||(lt=!0,De?ue&&De.push(...ue):De=ue)}}function d(re,ue,Ae,de,Be,Fe,Ne){Ae?De(re):Qe(re);return;function Qe(lt){let Le="";if(Ne&&I(lt)&&(Le=Be.substring(lt.pos,lt.end)),YKe(lt,ue),MS(lt,lt.pos+de,lt.end+de),Ne&&I(lt)&&w.assert(Le===Fe.substring(lt.pos,lt.end)),mu(lt,Qe,De),hy(lt))for(let je of lt.jsDoc)Qe(je);b(lt,Ne)}function De(lt){MS(lt,lt.pos+de,lt.end+de);for(let Le of lt)Qe(Le)}}function I(re){switch(re.kind){case 11:case 9:case 80:return!0}return!1}function h(re,ue,Ae,de,Be){w.assert(re.end>=ue,"Adjusting an element that was entirely before the change range"),w.assert(re.pos<=Ae,"Adjusting an element that was entirely after the change range"),w.assert(re.pos<=re.end);let Fe=Math.min(re.pos,de),Ne=re.end>=Ae?re.end+Be:Math.min(re.end,de);if(w.assert(Fe<=Ne),re.parent){let Qe=re.parent;w.assertGreaterThanOrEqual(Fe,Qe.pos),w.assertLessThanOrEqual(Ne,Qe.end)}MS(re,Fe,Ne)}function b(re,ue){if(ue){let Ae=re.pos,de=Be=>{w.assert(Be.pos>=Ae),Ae=Be.end};if(hy(re))for(let Be of re.jsDoc)de(Be);mu(re,de),w.assert(Ae<=re.end)}}function R(re,ue,Ae,de,Be,Fe,Ne,Qe){De(re);return;function De(Le){if(w.assert(Le.pos<=Le.end),Le.pos>Ae){d(Le,re,!1,Be,Fe,Ne,Qe);return}let je=Le.end;if(je>=ue){if(wRt(Le),YKe(Le,re),h(Le,ue,Ae,de,Be),mu(Le,De,lt),hy(Le))for(let st of Le.jsDoc)De(st);b(Le,Qe);return}w.assert(jeAe){d(Le,re,!0,Be,Fe,Ne,Qe);return}let je=Le.end;if(je>=ue){wRt(Le),h(Le,ue,Ae,de,Be);for(let st of Le)De(st);return}w.assert(je0&&Ne<=1;Ne++){let Qe=V(re,de);w.assert(Qe.pos<=de);let De=Qe.pos;de=Math.max(0,De-1)}let Be=Wd(de,Uu(ue.span)),Fe=ue.newLength+(ue.span.start-de);return Ce(Be,Fe)}function V(re,ue){let Ae=re,de;if(mu(re,Fe),de){let Ne=Be(de);Ne.pos>Ae.pos&&(Ae=Ne)}return Ae;function Be(Ne){for(;;){let Qe=Mce(Ne);if(Qe)Ne=Qe;else return Ne}}function Fe(Ne){if(!wf(Ne))if(Ne.pos<=ue){if(Ne.pos>=Ae.pos&&(Ae=Ne),ueue),!0}}function P(re,ue,Ae,de){let Be=re.text;if(Ae&&(w.assert(Be.length-Ae.span.length+Ae.newLength===ue.length),de||w.shouldAssert(3))){let Fe=Be.substr(0,Ae.span.start),Ne=ue.substr(0,Ae.span.start);w.assert(Fe===Ne);let Qe=Be.substring(Uu(Ae.span),Be.length),De=ue.substring(Uu(Ys(Ae)),ue.length);w.assert(Qe===De)}}function M(re){let ue=re.statements,Ae=0;w.assert(Ae=lt.pos&&Ne=lt.pos&&Ne{re[re.Value=-1]="Value"})(te||(te={}))})(s8e||(s8e={}));function kh(n){return o8e(n)!==void 0}function o8e(n){let c=wE(n,ole,!1);if(c)return c;if(gd(n,".ts")){let u=xA(n).lastIndexOf(".d.");if(u>=0)return n.substring(u)}}function QKi(n,c,u,d){if(n){if(n==="import")return 99;if(n==="require")return 1;d(c,u-c,Z.resolution_mode_should_be_either_require_or_import)}}function a8e(n,c){let u=[];for(let d of Gb(c,0)||v){let I=c.substring(d.pos,d.end);JKi(u,d,I)}n.pragmas=new Map;for(let d of u){if(n.pragmas.has(d.name)){let I=n.pragmas.get(d.name);I instanceof Array?I.push(d.args):n.pragmas.set(d.name,[I,d.args]);continue}n.pragmas.set(d.name,d.args)}}function c8e(n,c){n.checkJsDirective=void 0,n.referencedFiles=[],n.typeReferenceDirectives=[],n.libReferenceDirectives=[],n.amdDependencies=[],n.hasNoDefaultLib=!1,n.pragmas.forEach((u,d)=>{switch(d){case"reference":{let I=n.referencedFiles,h=n.typeReferenceDirectives,b=n.libReferenceDirectives;X(ys(u),R=>{let{types:N,lib:V,path:P,["resolution-mode"]:M,preserve:te}=R.arguments,re=te==="true"?!0:void 0;if(R.arguments["no-default-lib"]==="true")n.hasNoDefaultLib=!0;else if(N){let ue=QKi(M,N.pos,N.end,c);h.push({pos:N.pos,end:N.end,fileName:N.value,...ue?{resolutionMode:ue}:{},...re?{preserve:re}:{}})}else V?b.push({pos:V.pos,end:V.end,fileName:V.value,...re?{preserve:re}:{}}):P?I.push({pos:P.pos,end:P.end,fileName:P.value,...re?{preserve:re}:{}}):c(R.range.pos,R.range.end-R.range.pos,Z.Invalid_reference_directive_syntax)});break}case"amd-dependency":{n.amdDependencies=Ot(ys(u),I=>({name:I.arguments.name,path:I.arguments.path}));break}case"amd-module":{if(u instanceof Array)for(let I of u)n.moduleName&&c(I.range.pos,I.range.end-I.range.pos,Z.An_AMD_module_cannot_have_multiple_name_assignments),n.moduleName=I.arguments.name;else n.moduleName=u.arguments.name;break}case"ts-nocheck":case"ts-check":{X(ys(u),I=>{(!n.checkJsDirective||I.range.pos>n.checkJsDirective.pos)&&(n.checkJsDirective={enabled:d==="ts-check",end:I.range.end,pos:I.range.pos})});break}case"jsx":case"jsxfrag":case"jsximportsource":case"jsxruntime":return;default:w.fail("Unhandled pragma kind")}})}var TRt=new Map;function YKi(n){if(TRt.has(n))return TRt.get(n);let c=new RegExp(`(\\s${n}\\s*=\\s*)(?:(?:'([^']*)')|(?:"([^"]*)"))`,"im");return TRt.set(n,c),c}var HKi=/^\/\/\/\s*<(\S+)\s.*?\/>/im,XKi=/^\/\/\/?\s*@([^\s:]+)(.*)\s*$/im;function JKi(n,c,u){let d=c.kind===2&&HKi.exec(u);if(d){let h=d[1].toLowerCase(),b=rN[h];if(!b||!(b.kind&1))return;if(b.args){let R={};for(let N of b.args){let P=YKi(N.name).exec(u);if(!P&&!N.optional)return;if(P){let M=P[2]||P[3];if(N.captureSpan){let te=c.pos+P.index+P[1].length+1;R[N.name]={value:M,pos:te,end:te+M.length}}else R[N.name]=M}}n.push({name:h,args:{arguments:R,range:c}})}else n.push({name:h,args:{arguments:{},range:c}});return}let I=c.kind===2&&XKi.exec(u);if(I)return Exr(n,c,2,I);if(c.kind===3){let h=/@(\S+)(\s+.*)?$/gim,b;for(;b=h.exec(u);)Exr(n,c,4,b)}}function Exr(n,c,u,d){if(!d)return;let I=d[1].toLowerCase(),h=rN[I];if(!h||!(h.kind&u))return;let b=d[2],R=UKi(h,b);R!=="fail"&&n.push({name:I,args:{arguments:R,range:c}})}function UKi(n,c){if(!c)return{};if(!n.args)return{};let u=c.trim().split(/\s+/),d={};for(let I=0;I[""+c,n])),vxr=[["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"]],ake=vxr.map(n=>n[0]),l8e=new Map(vxr),W6=[{name:"watchFile",type:new Map(Object.entries({fixedpollinginterval:0,prioritypollinginterval:1,dynamicprioritypolling:2,fixedchunksizepolling:3,usefsevents:4,usefseventsonparentdirectory:5})),category:Z.Watch_and_Build_Modes,description:Z.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:Z.Watch_and_Build_Modes,description:Z.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:Z.Watch_and_Build_Modes,description:Z.Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers,defaultValueDescription:1},{name:"synchronousWatchDirectory",type:"boolean",category:Z.Watch_and_Build_Modes,description:Z.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:qRt},allowConfigDirTemplateSubstitution:!0,category:Z.Watch_and_Build_Modes,description:Z.Remove_a_list_of_directories_from_the_watch_process},{name:"excludeFiles",type:"list",element:{name:"excludeFile",type:"string",isFilePath:!0,extraValidation:qRt},allowConfigDirTemplateSubstitution:!0,category:Z.Watch_and_Build_Modes,description:Z.Remove_a_list_of_files_from_the_watch_mode_s_processing}],cke=[{name:"help",shortName:"h",type:"boolean",showInSimplifiedHelpView:!0,isCommandLineOnly:!0,category:Z.Command_line_Options,description:Z.Print_this_message,defaultValueDescription:!1},{name:"help",shortName:"?",type:"boolean",isCommandLineOnly:!0,category:Z.Command_line_Options,defaultValueDescription:!1},{name:"watch",shortName:"w",type:"boolean",showInSimplifiedHelpView:!0,isCommandLineOnly:!0,category:Z.Command_line_Options,description:Z.Watch_input_files,defaultValueDescription:!1},{name:"preserveWatchOutput",type:"boolean",showInSimplifiedHelpView:!1,category:Z.Output_Formatting,description:Z.Disable_wiping_the_console_in_watch_mode,defaultValueDescription:!1},{name:"listFiles",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Print_all_of_the_files_read_during_the_compilation,defaultValueDescription:!1},{name:"explainFiles",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Print_files_read_during_the_compilation_including_why_it_was_included,defaultValueDescription:!1},{name:"listEmittedFiles",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Print_the_names_of_emitted_files_after_a_compilation,defaultValueDescription:!1},{name:"pretty",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Output_Formatting,description:Z.Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read,defaultValueDescription:!0},{name:"traceResolution",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Log_paths_used_during_the_moduleResolution_process,defaultValueDescription:!1},{name:"diagnostics",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Output_compiler_performance_information_after_building,defaultValueDescription:!1},{name:"extendedDiagnostics",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Output_more_detailed_compiler_performance_information_after_building,defaultValueDescription:!1},{name:"generateCpuProfile",type:"string",isFilePath:!0,paramType:Z.FILE_OR_DIRECTORY,category:Z.Compiler_Diagnostics,description:Z.Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging,defaultValueDescription:"profile.cpuprofile"},{name:"generateTrace",type:"string",isFilePath:!0,isCommandLineOnly:!0,paramType:Z.DIRECTORY,category:Z.Compiler_Diagnostics,description:Z.Generates_an_event_trace_and_a_list_of_types},{name:"incremental",shortName:"i",type:"boolean",category:Z.Projects,description:Z.Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects,transpileOptionValue:void 0,defaultValueDescription:Z.false_unless_composite_is_set},{name:"declaration",shortName:"d",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,transpileOptionValue:void 0,description:Z.Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project,defaultValueDescription:Z.false_unless_composite_is_set},{name:"declarationMap",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,defaultValueDescription:!1,description:Z.Create_sourcemaps_for_d_ts_files},{name:"emitDeclarationOnly",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.Only_output_d_ts_files_and_not_JavaScript_files,transpileOptionValue:void 0,defaultValueDescription:!1},{name:"sourceMap",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,defaultValueDescription:!1,description:Z.Create_source_map_files_for_emitted_JavaScript_files},{name:"inlineSourceMap",type:"boolean",affectsBuildInfo:!0,category:Z.Emit,description:Z.Include_sourcemap_files_inside_the_emitted_JavaScript,defaultValueDescription:!1},{name:"assumeChangesOnlyAffectDirectDependencies",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:Z.Watch_and_Build_Modes,description:Z.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:Z.Command_line_Options,isCommandLineOnly:!0,description:Z.Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit,defaultValueDescription:Z.Platform_specific}],u8e={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:Z.VERSION,showInSimplifiedHelpView:!0,category:Z.Language_and_Environment,description:Z.Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declarations,defaultValueDescription:1},NRt={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:Z.KIND,showInSimplifiedHelpView:!0,category:Z.Modules,description:Z.Specify_what_module_code_is_generated,defaultValueDescription:void 0},RRt=[{name:"all",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,description:Z.Show_all_compiler_options,defaultValueDescription:!1},{name:"version",shortName:"v",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,description:Z.Print_the_compiler_s_version,defaultValueDescription:!1},{name:"init",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,description:Z.Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file,defaultValueDescription:!1},{name:"project",shortName:"p",type:"string",isFilePath:!0,showInSimplifiedHelpView:!0,category:Z.Command_line_Options,paramType:Z.FILE_OR_DIRECTORY,description:Z.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:Z.Command_line_Options,description:Z.Build_one_or_more_projects_and_their_dependencies_if_out_of_date,defaultValueDescription:!1},{name:"showConfig",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,isCommandLineOnly:!0,description:Z.Print_the_final_configuration_instead_of_building,defaultValueDescription:!1},{name:"listFilesOnly",type:"boolean",category:Z.Command_line_Options,isCommandLineOnly:!0,description:Z.Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing,defaultValueDescription:!1},u8e,NRt,{name:"lib",type:"list",element:{name:"lib",type:l8e,defaultValueDescription:void 0},affectsProgramStructure:!0,showInSimplifiedHelpView:!0,category:Z.Language_and_Environment,description:Z.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:Z.JavaScript_Support,description:Z.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:Z.JavaScript_Support,description:Z.Enable_error_reporting_in_type_checked_JavaScript_files,defaultValueDescription:!1},{name:"jsx",type:Bxr,affectsSourceFile:!0,affectsEmit:!0,affectsBuildInfo:!0,affectsModuleResolution:!0,affectsSemanticDiagnostics:!0,paramType:Z.KIND,showInSimplifiedHelpView:!0,category:Z.Language_and_Environment,description:Z.Specify_what_JSX_code_is_generated,defaultValueDescription:void 0},{name:"outFile",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:Z.FILE,showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.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:Z.DIRECTORY,showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.Specify_an_output_folder_for_all_emitted_files},{name:"rootDir",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:Z.LOCATION,category:Z.Modules,description:Z.Specify_the_root_folder_within_your_source_files,defaultValueDescription:Z.Computed_from_the_list_of_input_files},{name:"composite",type:"boolean",affectsBuildInfo:!0,isTSConfigOnly:!0,category:Z.Projects,transpileOptionValue:void 0,defaultValueDescription:!1,description:Z.Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references},{name:"tsBuildInfoFile",type:"string",affectsEmit:!0,affectsBuildInfo:!0,isFilePath:!0,paramType:Z.FILE,category:Z.Projects,transpileOptionValue:void 0,defaultValueDescription:".tsbuildinfo",description:Z.Specify_the_path_to_tsbuildinfo_incremental_compilation_file},{name:"removeComments",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,defaultValueDescription:!1,description:Z.Disable_emitting_comments},{name:"noCheck",type:"boolean",showInSimplifiedHelpView:!1,category:Z.Compiler_Diagnostics,description:Z.Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported,transpileOptionValue:!0,defaultValueDescription:!1,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,extraValidation(){return[Z.Unknown_compiler_option_0,"noCheck"]}},{name:"noEmit",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.Disable_emitting_files_from_a_compilation,transpileOptionValue:void 0,defaultValueDescription:!1},{name:"importHelpers",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,affectsSourceFile:!0,category:Z.Emit,description:Z.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:Z.Backwards_Compatibility,description:Z.Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types,defaultValueDescription:0},{name:"downlevelIteration",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration,defaultValueDescription:!1},{name:"isolatedModules",type:"boolean",category:Z.Interop_Constraints,description:Z.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:Z.Interop_Constraints,description:Z.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:Z.Interop_Constraints,description:Z.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:Z.Type_Checking,description:Z.Enable_all_strict_type_checking_options,defaultValueDescription:!1},{name:"noImplicitAny",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictNullChecks",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.When_type_checking_take_into_account_null_and_undefined,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictFunctionTypes",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictBindCallApply",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictPropertyInitialization",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor,defaultValueDescription:Z.false_unless_strict_is_set},{name:"noImplicitThis",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_when_this_is_given_the_type_any,defaultValueDescription:Z.false_unless_strict_is_set},{name:"useUnknownInCatchVariables",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Default_catch_clause_variables_as_unknown_instead_of_any,defaultValueDescription:Z.false_unless_strict_is_set},{name:"alwaysStrict",type:"boolean",affectsSourceFile:!0,affectsEmit:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Ensure_use_strict_is_always_emitted,defaultValueDescription:Z.false_unless_strict_is_set},{name:"noUnusedLocals",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_when_local_variables_aren_t_read,defaultValueDescription:!1},{name:"noUnusedParameters",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Raise_an_error_when_a_function_parameter_isn_t_read,defaultValueDescription:!1},{name:"exactOptionalPropertyTypes",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Interpret_optional_property_types_as_written_rather_than_adding_undefined,defaultValueDescription:!1},{name:"noImplicitReturns",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.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:Z.Type_Checking,description:Z.Enable_error_reporting_for_fallthrough_cases_in_switch_statements,defaultValueDescription:!1},{name:"noUncheckedIndexedAccess",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Add_undefined_to_a_type_when_accessed_using_an_index,defaultValueDescription:!1},{name:"noImplicitOverride",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.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:Z.Type_Checking,description:Z.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:Z.STRATEGY,category:Z.Modules,description:Z.Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier,defaultValueDescription:Z.module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node},{name:"baseUrl",type:"string",affectsModuleResolution:!0,isFilePath:!0,category:Z.Modules,description:Z.Specify_the_base_directory_to_resolve_non_relative_module_names},{name:"paths",type:"object",affectsModuleResolution:!0,allowConfigDirTemplateSubstitution:!0,isTSConfigOnly:!0,category:Z.Modules,description:Z.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:Z.Modules,description:Z.Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules,transpileOptionValue:void 0,defaultValueDescription:Z.Computed_from_the_list_of_input_files},{name:"typeRoots",type:"list",element:{name:"typeRoots",type:"string",isFilePath:!0},affectsModuleResolution:!0,allowConfigDirTemplateSubstitution:!0,category:Z.Modules,description:Z.Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types},{name:"types",type:"list",element:{name:"types",type:"string"},affectsProgramStructure:!0,showInSimplifiedHelpView:!0,category:Z.Modules,description:Z.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:Z.Interop_Constraints,description:Z.Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export,defaultValueDescription:Z.module_system_or_esModuleInterop},{name:"esModuleInterop",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Interop_Constraints,description:Z.Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheticDefaultImports_for_type_compatibility,defaultValueDescription:!1},{name:"preserveSymlinks",type:"boolean",category:Z.Interop_Constraints,description:Z.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:Z.Modules,description:Z.Allow_accessing_UMD_globals_from_modules,defaultValueDescription:!1},{name:"moduleSuffixes",type:"list",element:{name:"suffix",type:"string"},listPreserveFalsyValues:!0,affectsModuleResolution:!0,category:Z.Modules,description:Z.List_of_file_name_suffixes_to_search_when_resolving_a_module},{name:"allowImportingTsExtensions",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Modules,description:Z.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:Z.Modules,description:Z.Use_the_package_json_exports_field_when_resolving_package_imports,defaultValueDescription:Z.true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false},{name:"resolvePackageJsonImports",type:"boolean",affectsModuleResolution:!0,category:Z.Modules,description:Z.Use_the_package_json_imports_field_when_resolving_imports,defaultValueDescription:Z.true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false},{name:"customConditions",type:"list",element:{name:"condition",type:"string"},affectsModuleResolution:!0,category:Z.Modules,description:Z.Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports},{name:"sourceRoot",type:"string",affectsEmit:!0,affectsBuildInfo:!0,paramType:Z.LOCATION,category:Z.Emit,description:Z.Specify_the_root_path_for_debuggers_to_find_the_reference_source_code},{name:"mapRoot",type:"string",affectsEmit:!0,affectsBuildInfo:!0,paramType:Z.LOCATION,category:Z.Emit,description:Z.Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations},{name:"inlineSources",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript,defaultValueDescription:!1},{name:"experimentalDecorators",type:"boolean",affectsEmit:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Enable_experimental_support_for_legacy_experimental_decorators,defaultValueDescription:!1},{name:"emitDecoratorMetadata",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Emit_design_type_metadata_for_decorated_declarations_in_source_files,defaultValueDescription:!1},{name:"jsxFactory",type:"string",category:Z.Language_and_Environment,description:Z.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:Z.Language_and_Environment,description:Z.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:Z.Language_and_Environment,description:Z.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:Z.Modules,description:Z.Enable_importing_json_files,defaultValueDescription:!1},{name:"allowArbitraryExtensions",type:"boolean",affectsProgramStructure:!0,category:Z.Modules,description:Z.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:Z.Backwards_Compatibility,paramType:Z.FILE,transpileOptionValue:void 0,description:Z.Deprecated_setting_Use_outFile_instead},{name:"reactNamespace",type:"string",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit,defaultValueDescription:"`React`"},{name:"skipDefaultLibCheck",type:"boolean",affectsBuildInfo:!0,category:Z.Completeness,description:Z.Skip_type_checking_d_ts_files_that_are_included_with_TypeScript,defaultValueDescription:!1},{name:"charset",type:"string",category:Z.Backwards_Compatibility,description:Z.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:Z.Emit,description:Z.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:Z.NEWLINE,category:Z.Emit,description:Z.Set_the_newline_character_for_emitting_files,defaultValueDescription:"lf"},{name:"noErrorTruncation",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Output_Formatting,description:Z.Disable_truncating_types_in_error_messages,defaultValueDescription:!1},{name:"noLib",type:"boolean",category:Z.Language_and_Environment,affectsProgramStructure:!0,description:Z.Disable_including_any_library_files_including_the_default_lib_d_ts,transpileOptionValue:!0,defaultValueDescription:!1},{name:"noResolve",type:"boolean",affectsModuleResolution:!0,category:Z.Modules,description:Z.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:Z.Emit,description:Z.Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments,defaultValueDescription:!1},{name:"disableSizeLimit",type:"boolean",affectsProgramStructure:!0,category:Z.Editor_Support,description:Z.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:Z.Projects,description:Z.Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects,defaultValueDescription:!1},{name:"disableSolutionSearching",type:"boolean",isTSConfigOnly:!0,category:Z.Projects,description:Z.Opt_a_project_out_of_multi_project_reference_checking_when_editing,defaultValueDescription:!1},{name:"disableReferencedProjectLoad",type:"boolean",isTSConfigOnly:!0,category:Z.Projects,description:Z.Reduce_the_number_of_projects_loaded_automatically_by_TypeScript,defaultValueDescription:!1},{name:"noImplicitUseStrict",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Disable_adding_use_strict_directives_in_emitted_JavaScript_files,defaultValueDescription:!1},{name:"noEmitHelpers",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Disable_generating_custom_helper_functions_like_extends_in_compiled_output,defaultValueDescription:!1},{name:"noEmitOnError",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,transpileOptionValue:void 0,description:Z.Disable_emitting_files_if_any_type_checking_errors_are_reported,defaultValueDescription:!1},{name:"preserveConstEnums",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Disable_erasing_const_enum_declarations_in_generated_code,defaultValueDescription:!1},{name:"declarationDir",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:Z.DIRECTORY,category:Z.Emit,transpileOptionValue:void 0,description:Z.Specify_the_output_directory_for_generated_declaration_files},{name:"skipLibCheck",type:"boolean",affectsBuildInfo:!0,category:Z.Completeness,description:Z.Skip_type_checking_all_d_ts_files,defaultValueDescription:!1},{name:"allowUnusedLabels",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Disable_error_reporting_for_unused_labels,defaultValueDescription:void 0},{name:"allowUnreachableCode",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Disable_error_reporting_for_unreachable_code,defaultValueDescription:void 0},{name:"suppressExcessPropertyErrors",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals,defaultValueDescription:!1},{name:"suppressImplicitAnyIndexErrors",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures,defaultValueDescription:!1},{name:"forceConsistentCasingInFileNames",type:"boolean",affectsModuleResolution:!0,category:Z.Interop_Constraints,description:Z.Ensure_that_casing_is_correct_in_imports,defaultValueDescription:!0},{name:"maxNodeModuleJsDepth",type:"number",affectsModuleResolution:!0,category:Z.JavaScript_Support,description:Z.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:Z.Backwards_Compatibility,description:Z.Disable_strict_checking_of_generic_signatures_in_function_types,defaultValueDescription:!1},{name:"useDefineForClassFields",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Emit_ECMAScript_standard_compliant_class_fields,defaultValueDescription:Z.true_for_ES2022_and_above_including_ESNext},{name:"preserveValueImports",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed,defaultValueDescription:!1},{name:"keyofStringsOnly",type:"boolean",category:Z.Backwards_Compatibility,description:Z.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:Z.Specify_a_list_of_language_service_plugins_to_include,category:Z.Editor_Support},{name:"moduleDetection",type:new Map(Object.entries({auto:2,legacy:1,force:3})),affectsSourceFile:!0,affectsModuleResolution:!0,description:Z.Control_what_method_is_used_to_detect_module_format_JS_files,category:Z.Language_and_Environment,defaultValueDescription:Z.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}],cT=[...cke,...RRt],DRt=cT.filter(n=>!!n.affectsSemanticDiagnostics),xRt=cT.filter(n=>!!n.affectsEmit),kRt=cT.filter(n=>!!n.affectsDeclarationPath),g8e=cT.filter(n=>!!n.affectsModuleResolution),A8e=cT.filter(n=>!!n.affectsSourceFile||!!n.affectsBindDiagnostics),GRt=cT.filter(n=>!!n.affectsProgramStructure),FRt=cT.filter(n=>Qa(n,"transpileOptionValue")),ZRt=cT.filter(n=>n.allowConfigDirTemplateSubstitution||!n.isCommandLineOnly&&n.isFilePath),LRt=W6.filter(n=>n.allowConfigDirTemplateSubstitution||!n.isCommandLineOnly&&n.isFilePath),VRt=cT.filter(KKi);function KKi(n){return!Xa(n.type)}var d8e=[{name:"verbose",shortName:"v",category:Z.Command_line_Options,description:Z.Enable_verbose_logging,type:"boolean",defaultValueDescription:!1},{name:"dry",shortName:"d",category:Z.Command_line_Options,description:Z.Show_what_would_be_built_or_deleted_if_specified_with_clean,type:"boolean",defaultValueDescription:!1},{name:"force",shortName:"f",category:Z.Command_line_Options,description:Z.Build_all_projects_including_those_that_appear_to_be_up_to_date,type:"boolean",defaultValueDescription:!1},{name:"clean",category:Z.Command_line_Options,description:Z.Delete_the_outputs_of_all_projects,type:"boolean",defaultValueDescription:!1}],zhe=[...cke,...d8e],lke=[{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 uke(n){let c=new Map,u=new Map;return X(n,d=>{c.set(d.name.toLowerCase(),d),d.shortName&&u.set(d.shortName,d.name)}),{optionsNameMap:c,shortOptionNames:u}}var Sxr;function Cte(){return Sxr||(Sxr=uke(cT))}var jKi={diagnostic:Z.Compiler_option_0_may_only_be_used_with_build,getOptionsNameMap:Dxr},p8e={module:1,target:3,strict:!0,esModuleInterop:!0,forceConsistentCasingInFileNames:!0,skipLibCheck:!0};function WRt(n){return wxr(n,ff)}function wxr(n,c){let u=on(n.type.keys()),d=(n.deprecatedKeys?u.filter(I=>!n.deprecatedKeys.has(I)):u).map(I=>`'${I}'`).join(", ");return c(Z.Argument_for_0_option_must_be_Colon_1,`--${n.name}`,d)}function gke(n,c,u){return gkr(n,(c??"").trim(),u)}function PRt(n,c="",u){if(c=c.trim(),uc(c,"-"))return;if(n.type==="listOrElement"&&!c.includes(","))return P6(n,c,u);if(c==="")return[];let d=c.split(",");switch(n.element.type){case"number":return tr(d,I=>P6(n.element,parseInt(I),u));case"string":return tr(d,I=>P6(n.element,I||"",u));case"boolean":case"object":return w.fail(`List of ${n.element.type} is not yet supported.`);default:return tr(d,I=>gke(n.element,I,u))}}function Txr(n){return n.name}function ORt(n,c,u,d,I){var h;if((h=c.alternateMode)!=null&&h.getOptionsNameMap().optionsNameMap.has(n.toLowerCase()))return cP(I,d,c.alternateMode.diagnostic,n);let b=Nd(n,c.optionDeclarations,Txr);return b?cP(I,d,c.unknownDidYouMeanDiagnostic,u||n,b.name):cP(I,d,c.unknownOptionDiagnostic,u||n)}function f8e(n,c,u){let d={},I,h=[],b=[];return R(c),{options:d,watchOptions:I,fileNames:h,errors:b};function R(V){let P=0;for(;P_d.readFile(re)));if(!Xa(P)){b.push(P);return}let M=[],te=0;for(;;){for(;te=P.length)break;let re=te;if(P.charCodeAt(re)===34){for(te++;te32;)te++;M.push(P.substring(re,te))}}R(M)}}function Nxr(n,c,u,d,I,h){if(d.isTSConfigOnly){let b=n[c];b==="null"?(I[d.name]=void 0,c++):d.type==="boolean"?b==="false"?(I[d.name]=P6(d,!1,h),c++):(b==="true"&&c++,h.push(ff(Z.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line,d.name))):(h.push(ff(Z.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line,d.name)),b&&!uc(b,"-")&&c++)}else if(!n[c]&&d.type!=="boolean"&&h.push(ff(u.optionTypeMismatchDiagnostic,d.name,_8e(d))),n[c]!=="null")switch(d.type){case"number":I[d.name]=P6(d,parseInt(n[c]),h),c++;break;case"boolean":let b=n[c];I[d.name]=P6(d,b!=="false",h),(b==="false"||b==="true")&&c++;break;case"string":I[d.name]=P6(d,n[c]||"",h),c++;break;case"list":let R=PRt(d,n[c],h);I[d.name]=R||[],R&&c++;break;case"listOrElement":w.fail("listOrElement not supported here");break;default:I[d.name]=gke(d,n[c],h),c++;break}else I[d.name]=void 0,c++;return c}var Ake={alternateMode:jKi,getOptionsNameMap:Cte,optionDeclarations:cT,unknownOptionDiagnostic:Z.Unknown_compiler_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_compiler_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:Z.Compiler_option_0_expects_an_argument};function MRt(n,c){return f8e(Ake,n,c)}function I8e(n,c){return QRt(Cte,n,c)}function QRt(n,c,u=!1){c=c.toLowerCase();let{optionsNameMap:d,shortOptionNames:I}=n();if(u){let h=I.get(c);h!==void 0&&(c=h)}return d.get(c)}var Rxr;function Dxr(){return Rxr||(Rxr=uke(zhe))}var zKi={diagnostic:Z.Compiler_option_0_may_not_be_used_with_build,getOptionsNameMap:Cte},qKi={alternateMode:zKi,getOptionsNameMap:Dxr,optionDeclarations:zhe,unknownOptionDiagnostic:Z.Unknown_build_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_build_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:Z.Build_option_0_requires_a_value_of_type_1};function YRt(n){let{options:c,watchOptions:u,fileNames:d,errors:I}=f8e(qKi,n),h=c;return d.length===0&&d.push("."),h.clean&&h.force&&I.push(ff(Z.Options_0_and_1_cannot_be_combined,"clean","force")),h.clean&&h.verbose&&I.push(ff(Z.Options_0_and_1_cannot_be_combined,"clean","verbose")),h.clean&&h.watch&&I.push(ff(Z.Options_0_and_1_cannot_be_combined,"clean","watch")),h.watch&&h.dry&&I.push(ff(Z.Options_0_and_1_cannot_be_combined,"watch","dry")),{buildOptions:h,watchOptions:u,projects:d,errors:I}}function ab(n,...c){return ps(ff(n,...c).messageText,Xa)}function qhe(n,c,u,d,I,h){let b=Mle(n,V=>u.readFile(V));if(!Xa(b)){u.onUnRecoverableConfigFileDiagnostic(b);return}let R=Khe(n,b),N=u.getCurrentDirectory();return R.path=gA(n,N,tA(u.useCaseSensitiveFileNames)),R.resolvedPath=R.path,R.originalFileName=R.fileName,t_e(R,u,Oc(aa(n),N),c,Oc(n,N),void 0,h,d,I)}function $he(n,c){let u=Mle(n,c);return Xa(u)?C8e(n,u):{config:{},error:u}}function C8e(n,c){let u=Khe(n,c);return{config:Yxr(u,u.parseDiagnostics,void 0),error:u.parseDiagnostics.length?u.parseDiagnostics[0]:void 0}}function HRt(n,c){let u=Mle(n,c);return Xa(u)?Khe(n,u):{fileName:n,parseDiagnostics:[u]}}function Mle(n,c){let u;try{u=c(n)}catch(d){return ff(Z.Cannot_read_file_0_Colon_1,n,d.message)}return u===void 0?ff(Z.Cannot_read_file_0,n):u}function m8e(n){return cA(n,Txr)}var xxr={optionDeclarations:lke,unknownOptionDiagnostic:Z.Unknown_type_acquisition_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_type_acquisition_option_0_Did_you_mean_1},kxr;function Gxr(){return kxr||(kxr=uke(W6))}var h8e={getOptionsNameMap:Gxr,optionDeclarations:W6,unknownOptionDiagnostic:Z.Unknown_watch_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_watch_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:Z.Watch_option_0_requires_a_value_of_type_1},Fxr;function Zxr(){return Fxr||(Fxr=m8e(cT))}var Lxr;function Vxr(){return Lxr||(Lxr=m8e(W6))}var Wxr;function Pxr(){return Wxr||(Wxr=m8e(lke))}var dke={name:"extends",type:"listOrElement",element:{name:"extends",type:"string"},category:Z.File_Management,disallowNullOrUndefined:!0},Oxr={name:"compilerOptions",type:"object",elementOptions:Zxr(),extraKeyDiagnostics:Ake},Mxr={name:"watchOptions",type:"object",elementOptions:Vxr(),extraKeyDiagnostics:h8e},Qxr={name:"typeAcquisition",type:"object",elementOptions:Pxr(),extraKeyDiagnostics:xxr},XRt;function $Ki(){return XRt===void 0&&(XRt={name:void 0,type:"object",elementOptions:m8e([Oxr,Mxr,Qxr,dke,{name:"references",type:"list",element:{name:"references",type:"object"},category:Z.Projects},{name:"files",type:"list",element:{name:"files",type:"string"},category:Z.File_Management},{name:"include",type:"list",element:{name:"include",type:"string"},category:Z.File_Management,defaultValueDescription:Z.if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk},{name:"exclude",type:"list",element:{name:"exclude",type:"string"},category:Z.File_Management,defaultValueDescription:Z.node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified},oke])}),XRt}function Yxr(n,c,u){var d;let I=(d=n.statements[0])==null?void 0:d.expression;if(I&&I.kind!==210){if(c.push(Lb(n,I,Z.The_root_value_of_a_0_file_must_be_an_object,xA(n.fileName)==="jsconfig.json"?"jsconfig.json":"tsconfig.json")),If(I)){let h=be(I.elements,tu);if(h)return e_e(n,h,c,!0,u)}return{}}return e_e(n,I,c,!0,u)}function JRt(n,c){var u;return e_e(n,(u=n.statements[0])==null?void 0:u.expression,c,!0,void 0)}function e_e(n,c,u,d,I){if(!c)return d?{}:void 0;return R(c,I?.rootOptions);function h(V,P){var M;let te=d?{}:void 0;for(let re of V.properties){if(re.kind!==303){u.push(Lb(n,re,Z.Property_assignment_expected));continue}re.questionToken&&u.push(Lb(n,re.questionToken,Z.The_0_modifier_can_only_be_used_in_TypeScript_files,"?")),N(re.name)||u.push(Lb(n,re.name,Z.String_literal_with_double_quotes_expected));let ue=xX(re.name)?void 0:K9(re.name),Ae=ue&&Sc(ue),de=Ae?(M=P?.elementOptions)==null?void 0:M.get(Ae):void 0,Be=R(re.initializer,de);typeof Ae<"u"&&(d&&(te[Ae]=Be),I?.onPropertySet(Ae,Be,re,P,de))}return te}function b(V,P){if(!d){V.forEach(M=>R(M,P));return}return Gt(V.map(M=>R(M,P)),M=>M!==void 0)}function R(V,P){switch(V.kind){case 112:return!0;case 97:return!1;case 106:return null;case 11:return N(V)||u.push(Lb(n,V,Z.String_literal_with_double_quotes_expected)),V.text;case 9:return Number(V.text);case 224:if(V.operator!==41||V.operand.kind!==9)break;return-Number(V.operand.text);case 210:return h(V,P);case 209:return b(V.elements,P&&P.element)}P?u.push(Lb(n,V,Z.Compiler_option_0_requires_a_value_of_type_1,P.name,_8e(P))):u.push(Lb(n,V,Z.Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal))}function N(V){return bu(V)&&Ace(V,n)}}function _8e(n){return n.type==="listOrElement"?`${_8e(n.element)} or Array`:n.type==="list"?"Array":Xa(n.type)?n.type:"string"}function Hxr(n,c){if(n){if(r_e(c))return!n.disallowNullOrUndefined;if(n.type==="list")return Ra(c);if(n.type==="listOrElement")return Ra(c)||Hxr(n.element,c);let u=Xa(n.type)?n.type:"string";return typeof c===u}return!1}function y8e(n,c,u){var d,I,h;let b=tA(u.useCaseSensitiveFileNames),R=Ot(Gt(n.fileNames,(I=(d=n.options.configFile)==null?void 0:d.configFileSpecs)!=null&&I.validatedIncludeSpecs?t8i(c,n.options.configFile.configFileSpecs.validatedIncludeSpecs,n.options.configFile.configFileSpecs.validatedExcludeSpecs,u):pI),ue=>w1(Oc(c,u.getCurrentDirectory()),Oc(ue,u.getCurrentDirectory()),b)),N={configFilePath:Oc(c,u.getCurrentDirectory()),useCaseSensitiveFileNames:u.useCaseSensitiveFileNames},V=fke(n.options,N),P=n.watchOptions&&r8i(n.watchOptions),M={compilerOptions:{...pke(V),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:P&&pke(P),references:Ot(n.projectReferences,ue=>({...ue,path:ue.originalPath?ue.originalPath:"",originalPath:void 0})),files:O(R)?R:void 0,...(h=n.options.configFile)!=null&&h.configFileSpecs?{include:e8i(n.options.configFile.configFileSpecs.validatedIncludeSpecs),exclude:n.options.configFile.configFileSpecs.validatedExcludeSpecs}:{},compileOnSave:n.compileOnSave?!0:void 0},te=new Set(V.keys()),re={};for(let ue in kC)if(!te.has(ue)&&lr(kC[ue].dependencies,Ae=>te.has(Ae))){let Ae=kC[ue].computeValue(n.options),de=kC[ue].computeValue({});Ae!==de&&(re[ue]=kC[ue].computeValue(n.options))}return Bo(M.compilerOptions,pke(fke(re,N))),M}function pke(n){return{...on(n.entries()).reduce((c,u)=>({...c,[u[0]]:u[1]}),{})}}function e8i(n){if(O(n)){if(O(n)!==1)return n;if(n[0]!==B8e)return n}}function t8i(n,c,u,d){if(!c)return pI;let I=nle(n,u,c,d.useCaseSensitiveFileNames,d.getCurrentDirectory()),h=I.excludePattern&&EG(I.excludePattern,d.useCaseSensitiveFileNames),b=I.includeFilePattern&&EG(I.includeFilePattern,d.useCaseSensitiveFileNames);return b?h?R=>!(b.test(R)&&!h.test(R)):R=>!b.test(R):h?R=>h.test(R):pI}function Xxr(n){switch(n.type){case"string":case"number":case"boolean":case"object":return;case"list":case"listOrElement":return Xxr(n.element);default:return n.type}}function b8e(n,c){return JC(c,(u,d)=>{if(u===n)return d})}function fke(n,c){return Jxr(n,Cte(),c)}function r8i(n){return Jxr(n,Gxr())}function Jxr(n,{optionsNameMap:c},u){let d=new Map,I=u&&tA(u.useCaseSensitiveFileNames);for(let h in n)if(Qa(n,h)){if(c.has(h)&&(c.get(h).category===Z.Command_line_Options||c.get(h).category===Z.Output_Formatting))continue;let b=n[h],R=c.get(h.toLowerCase());if(R){w.assert(R.type!=="listOrElement");let N=Xxr(R);N?R.type==="list"?d.set(h,b.map(V=>b8e(V,N))):d.set(h,b8e(b,N)):u&&R.isFilePath?d.set(h,w1(u.configFilePath,Oc(b,aa(u.configFilePath)),I)):u&&R.type==="list"&&R.element.isFilePath?d.set(h,b.map(V=>w1(u.configFilePath,Oc(V,aa(u.configFilePath)),I))):d.set(h,b)}}return d}function URt(n,c){let u=Uxr(n);return I();function d(h){return Array(h+1).join(" ")}function I(){let h=[],b=d(2);return RRt.forEach(R=>{if(!u.has(R.name))return;let N=u.get(R.name),V=rDt(R);N!==V?h.push(`${b}${R.name}: ${N}`):Qa(p8e,R.name)&&h.push(`${b}${R.name}: ${V}`)}),h.join(c)+c}}function Uxr(n){let c=bA(n,p8e);return fke(c)}function KRt(n,c,u){let d=Uxr(n);return b();function I(R){return Array(R+1).join(" ")}function h({category:R,name:N,isCommandLineOnly:V}){let P=[Z.Command_line_Options,Z.Editor_Support,Z.Compiler_Diagnostics,Z.Backwards_Compatibility,Z.Watch_and_Build_Modes,Z.Output_Formatting];return!V&&R!==void 0&&(!P.includes(R)||d.has(N))}function b(){let R=new Map;R.set(Z.Projects,[]),R.set(Z.Language_and_Environment,[]),R.set(Z.Modules,[]),R.set(Z.JavaScript_Support,[]),R.set(Z.Emit,[]),R.set(Z.Interop_Constraints,[]),R.set(Z.Type_Checking,[]),R.set(Z.Completeness,[]);for(let re of cT)if(h(re)){let ue=R.get(re.category);ue||R.set(re.category,ue=[]),ue.push(re)}let N=0,V=0,P=[];R.forEach((re,ue)=>{P.length!==0&&P.push({value:""}),P.push({value:`/* ${eu(ue)} */`});for(let Ae of re){let de;d.has(Ae.name)?de=`"${Ae.name}": ${JSON.stringify(d.get(Ae.name))}${(V+=1)===d.size?"":","}`:de=`// "${Ae.name}": ${JSON.stringify(rDt(Ae))},`,P.push({value:de,description:`/* ${Ae.description&&eu(Ae.description)||Ae.name} */`}),N=Math.max(de.length,N)}});let M=I(2),te=[];te.push("{"),te.push(`${M}"compilerOptions": {`),te.push(`${M}${M}/* ${eu(Z.Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file)} */`),te.push("");for(let re of P){let{value:ue,description:Ae=""}=re;te.push(ue&&`${M}${M}${ue}${Ae&&I(N-ue.length+2)+Ae}`)}if(c.length){te.push(`${M}},`),te.push(`${M}"files": [`);for(let re=0;retypeof Kt=="object","object"),st=Qe(De("files"));if(st){let Kt=je==="no-prop"||Ra(je)&&je.length===0,Tt=Qa(te,"extends");if(st.length===0&&Kt&&!Tt)if(c){let Lt=b||"tsconfig.json",kt=Z.The_files_list_in_config_file_0_is_empty,Zt=U$(c,"files",jt=>jt.initializer),Dr=cP(c,Zt,kt,Lt);P.push(Dr)}else Le(Z.The_files_list_in_config_file_0_is_empty,b||"tsconfig.json")}let nt=Qe(De("include")),qe=De("exclude"),it=!1,It=Qe(qe);if(qe==="no-prop"){let Kt=re.outDir,Tt=re.declarationDir;(Kt||Tt)&&(It=Gt([Kt,Tt],Lt=>!!Lt))}st===void 0&&nt===void 0&&(nt=[B8e],it=!0);let dt,wt,vt,Ye;nt&&(dt=fkr(nt,P,!0,c,"include"),vt=mke(dt,Ae)||dt),It&&(wt=fkr(It,P,!1,c,"exclude"),Ye=mke(wt,Ae)||wt);let ht=Gt(st,Xa),Et=mke(ht,Ae)||ht;return{filesSpecs:st,includeSpecs:nt,excludeSpecs:It,validatedFilesSpec:Et,validatedIncludeSpecs:vt,validatedExcludeSpecs:Ye,validatedFilesSpecBeforeSubstitution:ht,validatedIncludeSpecsBeforeSubstitution:dt,validatedExcludeSpecsBeforeSubstitution:wt,pathPatterns:void 0,isDefaultIncludeSpec:it}}function Fe(je){let st=Yle(de,je,re,u,N);return rkr(st,Qle(te),R)&&P.push(tkr(de,b)),st}function Ne(je){let st,nt=lt("references",qe=>typeof qe=="object","object");if(Ra(nt))for(let qe of nt)typeof qe.path!="string"?Le(Z.Compiler_option_0_requires_a_value_of_type_1,"reference.path","string"):(st||(st=[])).push({path:Oc(qe.path,je),originalPath:qe.path,prepend:qe.prepend,circular:qe.circular});return st}function Qe(je){return Ra(je)?je:void 0}function De(je){return lt(je,Xa,"string")}function lt(je,st,nt){if(Qa(te,je)&&!r_e(te[je]))if(Ra(te[je])){let qe=te[je];return!c&&!he(qe,st)&&P.push(ff(Z.Compiler_option_0_requires_a_value_of_type_1,je,nt)),qe}else return Le(Z.Compiler_option_0_requires_a_value_of_type_1,je,"Array"),"not-array";return"no-prop"}function Le(je,...st){c||P.push(ff(je,...st))}}function Cke(n,c){return qxr(n,LRt,c)}function qxr(n,c,u){if(!n)return n;let d;for(let h of c)if(n[h.name]!==void 0){let b=n[h.name];switch(h.type){case"string":w.assert(h.isFilePath),v8e(b)&&I(h,ekr(b,u));break;case"list":w.assert(h.element.isFilePath);let R=mke(b,u);R&&I(h,R);break;case"object":w.assert(h.name==="paths");let N=i8i(b,u);N&&I(h,N);break;default:w.fail("option type not supported")}}return d||n;function I(h,b){(d??(d=Bo({},n)))[h.name]=b}}var $xr="${configDir}";function v8e(n){return Xa(n)&&uc(n,$xr,!0)}function ekr(n,c){return Oc(n.replace($xr,"./"),c)}function mke(n,c){if(!n)return n;let u;return n.forEach((d,I)=>{v8e(d)&&((u??(u=n.slice()))[I]=ekr(d,c))}),u}function i8i(n,c){let u;return kl(n).forEach(I=>{if(!Ra(n[I]))return;let h=mke(n[I],c);h&&((u??(u=Bo({},n)))[I]=h)}),u}function s8i(n){return n.code===Z.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2.code}function tkr({includeSpecs:n,excludeSpecs:c},u){return ff(Z.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2,u||"tsconfig.json",JSON.stringify(n||[]),JSON.stringify(c||[]))}function rkr(n,c,u){return n.length===0&&c&&(!u||u.length===0)}function Qle(n){return!Qa(n,"files")&&!Qa(n,"references")}function hke(n,c,u,d,I){let h=d.length;return rkr(n,I)?d.push(tkr(u,c)):er(d,b=>!s8i(b)),h!==d.length}function o8i(n){return!!n.options}function nkr(n,c,u,d,I,h,b,R){var N;d=Af(d);let V=Oc(I||"",d);if(h.includes(V))return b.push(ff(Z.Circularity_detected_while_resolving_configuration_Colon_0,[...h,V].join(" -> "))),{raw:n||JRt(c,b)};let P=n?a8i(n,u,d,I,b):c8i(c,u,d,I,b);if((N=P.options)!=null&&N.paths&&(P.options.pathsBasePath=d),P.extendedConfigPath){h=h.concat([V]);let te={options:{}};Xa(P.extendedConfigPath)?M(te,P.extendedConfigPath):P.extendedConfigPath.forEach(re=>M(te,re)),te.include&&(P.raw.include=te.include),te.exclude&&(P.raw.exclude=te.exclude),te.files&&(P.raw.files=te.files),P.raw.compileOnSave===void 0&&te.compileOnSave&&(P.raw.compileOnSave=te.compileOnSave),c&&te.extendedSourceFiles&&(c.extendedSourceFiles=on(te.extendedSourceFiles.keys())),P.options=Bo(te.options,P.options),P.watchOptions=P.watchOptions&&te.watchOptions?Bo(te.watchOptions,P.watchOptions):P.watchOptions||te.watchOptions}return P;function M(te,re){let ue=l8i(c,re,u,h,b,R,te);if(ue&&o8i(ue)){let Ae=ue.raw,de,Be=Fe=>{P.raw[Fe]||Ae[Fe]&&(te[Fe]=Ot(Ae[Fe],Ne=>v8e(Ne)||yd(Ne)?Ne:xo(de||(de=TE(aa(re),d,tA(u.useCaseSensitiveFileNames))),Ne)))};Be("include"),Be("exclude"),Be("files"),Ae.compileOnSave!==void 0&&(te.compileOnSave=Ae.compileOnSave),Bo(te.options,ue.options),te.watchOptions=te.watchOptions&&ue.watchOptions?Bo({},te.watchOptions,ue.watchOptions):te.watchOptions||ue.watchOptions}}}function a8i(n,c,u,d,I){Qa(n,"excludes")&&I.push(ff(Z.Unknown_option_excludes_Did_you_mean_exclude));let h=lkr(n.compilerOptions,u,I,d),b=ukr(n.typeAcquisition,u,I,d),R=g8i(n.watchOptions,u,I);n.compileOnSave=u8i(n,u,I);let N=n.extends||n.extends===""?ikr(n.extends,c,u,d,I):void 0;return{raw:n,options:h,watchOptions:R,typeAcquisition:b,extendedConfigPath:N}}function ikr(n,c,u,d,I,h,b,R){let N,V=d?jxr(d,u):u;if(Xa(n))N=skr(n,c,V,I,b,R);else if(Ra(n)){N=[];for(let P=0;PFe.name===re)&&(V=Hr(V,Ae.name))))}}function skr(n,c,u,d,I,h){if(n=Af(n),yd(n)||uc(n,"./")||uc(n,"../")){let R=Oc(n,u);if(!c.fileExists(R)&&!pl(R,".json")&&(R=`${R}.json`,!c.fileExists(R))){d.push(cP(h,I,Z.File_0_not_found,n));return}return R}let b=fDt(n,xo(u,"tsconfig.json"),c);if(b.resolvedModule)return b.resolvedModule.resolvedFileName;n===""?d.push(cP(h,I,Z.Compiler_option_0_cannot_be_given_an_empty_string,"extends")):d.push(cP(h,I,Z.File_0_not_found,n))}function l8i(n,c,u,d,I,h,b){let R=u.useCaseSensitiveFileNames?c:lf(c),N,V,P;if(h&&(N=h.get(R))?{extendedResult:V,extendedConfig:P}=N:(V=HRt(c,M=>u.readFile(M)),V.parseDiagnostics.length||(P=nkr(void 0,V,u,aa(c),xA(c),d,I,h)),h&&h.set(R,{extendedResult:V,extendedConfig:P})),n&&((b.extendedSourceFiles??(b.extendedSourceFiles=new Set)).add(V.fileName),V.extendedSourceFiles))for(let M of V.extendedSourceFiles)b.extendedSourceFiles.add(M);if(V.parseDiagnostics.length){I.push(...V.parseDiagnostics);return}return P}function u8i(n,c,u){if(!Qa(n,oke.name))return!1;let d=I4(oke,n.compileOnSave,c,u);return typeof d=="boolean"&&d}function okr(n,c,u){let d=[];return{options:lkr(n,c,d,u),errors:d}}function akr(n,c,u){let d=[];return{options:ukr(n,c,d,u),errors:d}}function ckr(n){return n&&xA(n)==="jsconfig.json"?{allowJs:!0,maxNodeModuleJsDepth:2,allowSyntheticDefaultImports:!0,skipLibCheck:!0,noEmit:!0}:{}}function lkr(n,c,u,d){let I=ckr(d);return jRt(Zxr(),n,c,I,Ake,u),d&&(I.configFilePath=Af(d)),I}function S8e(n){return{enable:!!n&&xA(n)==="jsconfig.json",include:[],exclude:[]}}function ukr(n,c,u,d){let I=S8e(d);return jRt(Pxr(),n,c,I,xxr,u),I}function g8i(n,c,u){return jRt(Vxr(),n,c,void 0,h8e,u)}function jRt(n,c,u,d,I,h){if(c){for(let b in c){let R=n.get(b);R?(d||(d={}))[R.name]=I4(R,c[b],u,h):h.push(ORt(b,I))}return d}}function cP(n,c,u,...d){return n&&c?Lb(n,c,u,...d):ff(u,...d)}function I4(n,c,u,d,I,h,b){if(n.isCommandLineOnly){d.push(cP(b,I?.name,Z.Option_0_can_only_be_specified_on_command_line,n.name));return}if(Hxr(n,c)){let R=n.type;if(R==="list"&&Ra(c))return Akr(n,c,u,d,I,h,b);if(R==="listOrElement")return Ra(c)?Akr(n,c,u,d,I,h,b):I4(n.element,c,u,d,I,h,b);if(!Xa(n.type))return gkr(n,c,d,h,b);let N=P6(n,c,d,h,b);return r_e(N)?N:A8i(n,u,N)}else d.push(cP(b,h,Z.Compiler_option_0_requires_a_value_of_type_1,n.name,_8e(n)))}function A8i(n,c,u){return n.isFilePath&&(u=Af(u),u=v8e(u)?u:Oc(u,c),u===""&&(u=".")),u}function P6(n,c,u,d,I){var h;if(r_e(c))return;let b=(h=n.extraValidation)==null?void 0:h.call(n,c);if(!b)return c;u.push(cP(I,d,...b))}function gkr(n,c,u,d,I){if(r_e(c))return;let h=c.toLowerCase(),b=n.type.get(h);if(b!==void 0)return P6(n,b,u,d,I);u.push(wxr(n,(R,...N)=>cP(I,d,R,...N)))}function Akr(n,c,u,d,I,h,b){return Gt(Ot(c,(R,N)=>I4(n.element,R,u,d,I,h?.elements[N],b)),R=>n.listPreserveFalsyValues?!0:!!R)}var d8i=/(^|\/)\*\*\/?$/,p8i=/^[^*?]*(?=\/[^/]*[*?])/;function Yle(n,c,u,d,I=v){c=Mc(c);let h=tA(d.useCaseSensitiveFileNames),b=new Map,R=new Map,N=new Map,{validatedFilesSpec:V,validatedIncludeSpecs:P,validatedExcludeSpecs:M}=n,te=I6(u,I),re=Mee(u,te);if(V)for(let Be of V){let Fe=Oc(Be,c);b.set(h(Fe),Fe)}let ue;if(P&&P.length>0)for(let Be of d.readDirectory(c,or(re),M,P,void 0)){if(gd(Be,".json")){if(!ue){let Qe=P.filter(lt=>pl(lt,".json")),De=Ot(tle(Qe,c,"files"),lt=>`^${lt}$`);ue=De?De.map(lt=>EG(lt,d.useCaseSensitiveFileNames)):v}if(ke(ue,Qe=>Qe.test(Be))!==-1){let Qe=h(Be);!b.has(Qe)&&!N.has(Qe)&&N.set(Qe,Be)}continue}if(C8i(Be,b,R,te,h))continue;m8i(Be,R,te,h);let Fe=h(Be);!b.has(Fe)&&!R.has(Fe)&&R.set(Fe,Be)}let Ae=on(b.values()),de=on(R.values());return Ae.concat(de,on(N.values()))}function zRt(n,c,u,d,I){let{validatedFilesSpec:h,validatedIncludeSpecs:b,validatedExcludeSpecs:R}=c;if(!O(b)||!O(R))return!1;u=Mc(u);let N=tA(d);if(h){for(let V of h)if(N(Oc(V,u))===n)return!1}return pkr(n,R,d,I,u)}function dkr(n){let c=uc(n,"**/")?0:n.indexOf("/**/");return c===-1?!1:(pl(n,"/..")?n.length:n.lastIndexOf("/../"))>c}function _ke(n,c,u,d){return pkr(n,Gt(c,I=>!dkr(I)),u,d)}function pkr(n,c,u,d,I){let h=p6(c,xo(Mc(d),I),"exclude"),b=h&&EG(h,u);return b?b.test(n)?!0:!v1(n)&&b.test(AA(n)):!1}function fkr(n,c,u,d,I){return n.filter(b=>{if(!Xa(b))return!1;let R=qRt(b,u);return R!==void 0&&c.push(h(...R)),R===void 0});function h(b,R){let N=ice(d,I,R);return cP(d,N,b,R)}}function qRt(n,c){if(w.assert(typeof n=="string"),c&&d8i.test(n))return[Z.File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,n];if(dkr(n))return[Z.File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,n]}function f8i({validatedIncludeSpecs:n,validatedExcludeSpecs:c},u,d){let I=p6(c,u,"exclude"),h=I&&new RegExp(I,d?"":"i"),b={},R=new Map;if(n!==void 0){let N=[];for(let V of n){let P=Mc(xo(u,V));if(h&&h.test(P))continue;let M=I8i(P,d);if(M){let{key:te,path:re,flags:ue}=M,Ae=R.get(te),de=Ae!==void 0?b[Ae]:void 0;(de===void 0||depp(n,b)?b:void 0);if(!h)return!1;for(let b of h){if(gd(n,b)&&(b!==".ts"||!gd(n,".d.ts")))return!1;let R=I(BG(n,b));if(c.has(R)||u.has(R)){if(b===".d.ts"&&(gd(n,".js")||gd(n,".jsx")))continue;return!0}}return!1}function m8i(n,c,u,d){let I=X(u,h=>pp(n,h)?h:void 0);if(I)for(let h=I.length-1;h>=0;h--){let b=I[h];if(gd(n,b))return;let R=d(BG(n,b));c.delete(R)}}function eDt(n){let c={};for(let u in n)if(Qa(n,u)){let d=I8e(u);d!==void 0&&(c[u]=tDt(n[u],d))}return c}function tDt(n,c){if(n===void 0)return n;switch(c.type){case"object":return"";case"string":return"";case"number":return typeof n=="number"?n:"";case"boolean":return typeof n=="boolean"?n:"";case"listOrElement":if(!Ra(n))return tDt(n,c.element);case"list":let u=c.element;return Ra(n)?tr(n,d=>tDt(d,u)):"";default:return JC(c.type,(d,I)=>{if(d===n)return I})}}function rDt(n){switch(n.type){case"number":return 1;case"boolean":return!0;case"string":let c=n.defaultValueDescription;return n.isFilePath?`./${c&&typeof c=="string"?c:""}`:"";case"list":return[];case"listOrElement":return rDt(n.element);case"object":return{};default:let u=Ga(n.type.keys());return u!==void 0?u:w.fail("Expected 'option.type' to have entries.")}}function bV(n){if(typeof process.versions.pnp>"u")return;let{findPnpApi:c}=Dt("module");if(c)return c(`${n}/`)}function Ikr(n){var c;return(c=bV(n))==null?void 0:c.resolveRequest("pnpapi",null)}function Ckr(n){let c=bV(n);if(!c)return[];n=q_(n);let u=c.findPackageLocator(`${n}/`);if(!u)return[];let{packageDependencies:d}=c.getPackageInformation(u),I=[];for(let[h,b]of Array.from(d.entries()))if(h.startsWith("@types/")&&b!==null){let R=c.getLocator(h,b),{packageLocation:N}=c.getPackageInformation(R);I.push(aa(N))}return I}function h8i(n,c){let u=bV(n),d=u.findPackageLocator(n),I=u.findPackageLocator(c);if(I===null)return!1;let h=u.getPackageInformation(d),b=h.packageDependencies.get(I.name);if(b)return b===I.reference;for(let R of h.packageDependencies.values())if(Array.isArray(R)&&R[0]===I.name&&R[1]===I.reference)return!0;return!1}function wl(n,c,...u){n.trace(XQ(c,...u))}function GG(n,c){return!!n.traceResolution&&c.trace!==void 0}function O6(n,c,u){let d;if(c&&n){let I=n.contents.packageJsonContent;typeof I.name=="string"&&typeof I.version=="string"&&(d={name:I.name,subModuleName:c.path.slice(n.packageDirectory.length+qu.length),version:I.version,peerDependencies:M8i(n,u)})}return c&&{path:c.path,extension:c.ext,packageId:d,resolvedUsingTsExtension:c.resolvedUsingTsExtension}}function w8e(n){return O6(void 0,n,void 0)}function mkr(n){if(n)return w.assert(n.packageId===void 0),{path:n.path,ext:n.extension,resolvedUsingTsExtension:n.resolvedUsingTsExtension}}function yke(n){let c=[];return n&1&&c.push("TypeScript"),n&2&&c.push("JavaScript"),n&4&&c.push("Declaration"),n&8&&c.push("JSON"),c.join(", ")}function _8i(n){let c=[];return n&1&&c.push(...ale),n&2&&c.push(...$X),n&4&&c.push(...ole),n&8&&c.push(".json"),c}function nDt(n){if(n)return w.assert(cle(n.extension)),{fileName:n.path,packageId:n.packageId}}function hkr(n,c,u,d,I,h,b,R,N){if(!b.resultFromCache&&!b.compilerOptions.preserveSymlinks&&c&&u&&!c.originalPath&&!Jl(n)){let{resolvedFileName:V,originalPath:P}=ykr(c.path,b.host,b.traceEnabled);P&&(c={...c,path:V,originalPath:P})}return _kr(c,u,d,I,h,b.resultFromCache,R,N)}function _kr(n,c,u,d,I,h,b,R){return h?b?.isReadonly?{...h,failedLookupLocations:iDt(h.failedLookupLocations,u),affectingLocations:iDt(h.affectingLocations,d),resolutionDiagnostics:iDt(h.resolutionDiagnostics,I)}:(h.failedLookupLocations=mte(h.failedLookupLocations,u),h.affectingLocations=mte(h.affectingLocations,d),h.resolutionDiagnostics=mte(h.resolutionDiagnostics,I),h):{resolvedModule:n&&{resolvedFileName:n.path,originalPath:n.originalPath===!0?void 0:n.originalPath,extension:n.extension,isExternalLibraryImport:c,packageId:n.packageId,resolvedUsingTsExtension:!!n.resolvedUsingTsExtension},failedLookupLocations:Hle(u),affectingLocations:Hle(d),resolutionDiagnostics:Hle(I),alternateResult:R}}function Hle(n){return n.length?n:void 0}function mte(n,c){return c?.length?n?.length?(n.push(...c),n):c:n}function iDt(n,c){return n?.length?c.length?[...n,...c]:n.slice():Hle(c)}function sDt(n,c,u,d){if(!Qa(n,c)){d.traceEnabled&&wl(d.host,Z.package_json_does_not_have_a_0_field,c);return}let I=n[c];if(typeof I!==u||I===null){d.traceEnabled&&wl(d.host,Z.Expected_type_of_0_field_in_package_json_to_be_1_got_2,c,u,I===null?"null":typeof I);return}return I}function T8e(n,c,u,d){let I=sDt(n,c,"string",d);if(I===void 0)return;if(!I){d.traceEnabled&&wl(d.host,Z.package_json_had_a_falsy_0_field,c);return}let h=Mc(xo(u,I));return d.traceEnabled&&wl(d.host,Z.package_json_has_0_field_1_that_references_2,c,I,h),h}function y8i(n,c,u){return T8e(n,"typings",c,u)||T8e(n,"types",c,u)}function b8i(n,c,u){return T8e(n,"tsconfig",c,u)}function E8i(n,c,u){return T8e(n,"main",c,u)}function B8i(n,c){let u=sDt(n,"typesVersions","object",c);if(u!==void 0)return c.traceEnabled&&wl(c.host,Z.package_json_has_a_typesVersions_field_with_version_specific_path_mappings),u}function v8i(n,c){let u=B8i(n,c);if(u===void 0)return;if(c.traceEnabled)for(let b in u)Qa(u,b)&&!Xc.tryParse(b)&&wl(c.host,Z.package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range,b);let d=bke(u);if(!d){c.traceEnabled&&wl(c.host,Z.package_json_does_not_have_a_typesVersions_entry_that_matches_version_0,m);return}let{version:I,paths:h}=d;if(typeof h!="object"){c.traceEnabled&&wl(c.host,Z.Expected_type_of_0_field_in_package_json_to_be_1_got_2,`typesVersions['${I}']`,"object",typeof h);return}return d}var oDt;function bke(n){oDt||(oDt=new Dn(y));for(let c in n){if(!Qa(n,c))continue;let u=Xc.tryParse(c);if(u!==void 0&&u.test(oDt))return{version:c,paths:n[c]}}}function Xle(n,c){if(n.typeRoots)return n.typeRoots;let u;if(n.configFilePath?u=aa(n.configFilePath):c.getCurrentDirectory&&(u=c.getCurrentDirectory()),u!==void 0)return N8i(u)}function S8i(n){let c;return iI(Mc(n),u=>{let d=xo(u,w8i);(c??(c=[])).push(d)}),c}var w8i=xo("node_modules","@types");function T8i(n,c,u){let d=typeof u.useCaseSensitiveFileNames=="function"?u.useCaseSensitiveFileNames():u.useCaseSensitiveFileNames;return Ah(n,c,!d)===0}function N8i(n){let c=S8i(n),u=Ckr(n);if(c?.length)return[...c,...u];if(u.length)return u}function ykr(n,c,u){let d=Nkr(n,c,u),I=T8i(n,d,c);return{resolvedFileName:I?n:d,originalPath:I?void 0:n}}function bkr(n,c,u){let d=pl(n,"/node_modules/@types")||pl(n,"/node_modules/@types/")?_Dt(c,u):c;return xo(n,d)}function aDt(n,c,u,d,I,h,b){w.assert(typeof n=="string","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.");let R=GG(u,d);I&&(u=I.commandLine.options);let N=c?aa(c):void 0,V=N?h?.getFromDirectoryCache(n,b,N,I):void 0;if(!V&&N&&!Jl(n)&&(V=h?.getFromNonRelativeNameCache(n,b,N,I)),V)return R&&(wl(d,Z.Resolving_type_reference_directive_0_containing_file_1,n,c),I&&wl(d,Z.Using_compiler_options_of_project_reference_redirect_0,I.sourceFile.fileName),wl(d,Z.Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1,n,N),De(V)),V;let P=Xle(u,d);R&&(c===void 0?P===void 0?wl(d,Z.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set,n):wl(d,Z.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1,n,P):P===void 0?wl(d,Z.Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set,n,c):wl(d,Z.Resolving_type_reference_directive_0_containing_file_1_root_directory_2,n,c,P),I&&wl(d,Z.Using_compiler_options_of_project_reference_redirect_0,I.sourceFile.fileName));let M=[],te=[],re=cDt(u);b!==void 0&&(re|=30);let ue=s0(u);b===99&&3<=ue&&ue<=99&&(re|=32);let Ae=re&8?EV(u,b):[],de=[],Be={compilerOptions:u,host:d,traceEnabled:R,failedLookupLocations:M,affectingLocations:te,packageJsonInfoCache:h,features:re,conditions:Ae,requestContainingDirectory:N,reportDiagnostic:je=>void de.push(je),isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1},Fe=lt(),Ne=!0;Fe||(Fe=Le(),Ne=!1);let Qe;if(Fe){let{fileName:je,packageId:st}=Fe,nt=je,qe;u.preserveSymlinks||({resolvedFileName:nt,originalPath:qe}=ykr(je,d,R)),Qe={primary:Ne,resolvedFileName:nt,originalPath:qe,packageId:st,isExternalLibraryImport:lP(je)}}return V={resolvedTypeReferenceDirective:Qe,failedLookupLocations:Hle(M),affectingLocations:Hle(te),resolutionDiagnostics:Hle(de)},N&&h&&!h.isReadonly&&(h.getOrCreateCacheForDirectory(N,I).set(n,b,V),Jl(n)||h.getOrCreateCacheForNonRelativeName(n,b,I).set(N,V)),R&&De(V),V;function De(je){var st;(st=je.resolvedTypeReferenceDirective)!=null&&st.resolvedFileName?je.resolvedTypeReferenceDirective.packageId?wl(d,Z.Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3,n,je.resolvedTypeReferenceDirective.resolvedFileName,YR(je.resolvedTypeReferenceDirective.packageId),je.resolvedTypeReferenceDirective.primary):wl(d,Z.Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2,n,je.resolvedTypeReferenceDirective.resolvedFileName,je.resolvedTypeReferenceDirective.primary):wl(d,Z.Type_reference_directive_0_was_not_resolved,n)}function lt(){if(P&&P.length)return R&&wl(d,Z.Resolving_with_primary_search_path_0,P.join(", ")),le(P,je=>{let st=bkr(je,n,Be),nt=k1(je,d);if(!nt&&R&&wl(d,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,je),u.typeRoots){let qe=yte(4,st,!nt,Be);if(qe){let it=i_e(qe.path),It=it?BV(it,!1,Be):void 0;return nDt(O6(It,qe,Be))}}return nDt(CDt(4,st,!nt,Be))});R&&wl(d,Z.Root_directory_cannot_be_determined_skipping_primary_search_paths)}function Le(){let je=c&&aa(c);if(je!==void 0){let st;if(!u.typeRoots||!pl(c,lue))if(R&&wl(d,Z.Looking_up_in_node_modules_folder_initial_location_0,je),Jl(n)){let{path:nt}=Tkr(je,n);st=k8e(4,nt,!1,Be,!0)}else{let nt=Lkr(4,n,je,Be,void 0,void 0);st=nt&&nt.value}else R&&wl(d,Z.Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_node_modules_folder);return nDt(st)}else R&&wl(d,Z.Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder)}}function cDt(n){let c=0;switch(s0(n)){case 3:c=30;break;case 99:c=30;break;case 100:c=30;break}return n.resolvePackageJsonExports?c|=8:n.resolvePackageJsonExports===!1&&(c&=-9),n.resolvePackageJsonImports?c|=2:n.resolvePackageJsonImports===!1&&(c&=-3),c}function EV(n,c){let u=s0(n);if(c===void 0){if(u===100)c=99;else if(u===2)return[]}let d=c===99?["import"]:["require"];return n.noDtsResolution||d.push("types"),u!==100&&d.push("node"),vi(d,n.customConditions)}function N8e(n,c,u,d,I){let h=Ule(I?.getPackageJsonInfoCache(),d,u),b=bV(c);if(b)try{let R=b.resolveToUnqualified(n,`${c}/`,{considerBuiltins:!1}),N=Af(R).replace(/\/$/,"");return BV(N,!1,h)}catch{return}return iI(c,R=>{if(xA(R)!=="node_modules"){let N=xo(R,"node_modules"),V=xo(N,n);return BV(V,!1,h)}})}function Eke(n,c){if(n.types)return n.types;let u=[];if(c.directoryExists&&c.getDirectories){let d=Xle(n,c);if(d){for(let I of d)if(c.directoryExists(I))for(let h of c.getDirectories(I)){let b=Mc(h),R=xo(I,b,"package.json");if(!(c.fileExists(R)&&cV(R,c).typings===null)){let V=xA(b);V.charCodeAt(0)!==46&&u.push(V)}}}}return u}function Bke(n){return!!n?.contents}function lDt(n){return!!n&&!n.contents}function uDt(n){var c;if(n===null||typeof n!="object")return""+n;if(Ra(n))return`[${(c=n.map(d=>uDt(d)))==null?void 0:c.join(",")}]`;let u="{";for(let d in n)Qa(n,d)&&(u+=`${d}: ${uDt(n[d])}`);return u+"}"}function R8e(n,c){return c.map(u=>uDt(qce(n,u))).join("|")+`|${n.pathsBasePath}`}function D8e(n,c){let u=new Map,d=new Map,I=new Map;return n&&u.set(n,I),{getMapOfCacheRedirects:h,getOrCreateMapOfCacheRedirects:b,update:R,clear:V,getOwnMap:()=>I};function h(M){return M?N(M.commandLine.options,!1):I}function b(M){return M?N(M.commandLine.options,!0):I}function R(M){n!==M&&(n?I=N(M,!0):u.set(M,I),n=M)}function N(M,te){let re=u.get(M);if(re)return re;let ue=P(M);if(re=d.get(ue),!re){if(n){let Ae=P(n);Ae===ue?re=I:d.has(Ae)||d.set(Ae,I)}te&&(re??(re=new Map)),re&&d.set(ue,re)}return re&&u.set(M,re),re}function V(){let M=n&&c.get(n);I.clear(),u.clear(),c.clear(),d.clear(),n&&(M&&c.set(n,M),u.set(n,I))}function P(M){let te=c.get(M);return te||c.set(M,te=R8e(M,g8e)),te}}function R8i(n,c){let u;return{getPackageJsonInfo:d,setPackageJsonInfo:I,clear:h,getInternalMap:b};function d(R){return u?.get(gA(R,n,c))}function I(R,N){(u||(u=new Map)).set(gA(R,n,c),N)}function h(){u=void 0}function b(){return u}}function Ekr(n,c,u,d){let I=n.getOrCreateMapOfCacheRedirects(c),h=I.get(u);return h||(h=d(),I.set(u,h)),h}function D8i(n,c,u,d){let I=D8e(u,d);return{getFromDirectoryCache:N,getOrCreateCacheForDirectory:R,clear:h,update:b,directoryToModuleNameMap:I};function h(){I.clear()}function b(V){I.update(V)}function R(V,P){let M=gA(V,n,c);return Ekr(I,P,M,()=>hte())}function N(V,P,M,te){var re,ue;let Ae=gA(M,n,c);return(ue=(re=I.getMapOfCacheRedirects(te))==null?void 0:re.get(Ae))==null?void 0:ue.get(V,P)}}function Jle(n,c){return c===void 0?n:`${c}|${n}`}function hte(){let n=new Map,c=new Map,u={get(I,h){return n.get(d(I,h))},set(I,h,b){return n.set(d(I,h),b),u},delete(I,h){return n.delete(d(I,h)),u},has(I,h){return n.has(d(I,h))},forEach(I){return n.forEach((h,b)=>{let[R,N]=c.get(b);return I(h,R,N)})},size(){return n.size}};return u;function d(I,h){let b=Jle(I,h);return c.set(b,[I,h]),b}}function x8i(n){return n.resolvedModule&&(n.resolvedModule.originalPath||n.resolvedModule.resolvedFileName)}function k8i(n){return n.resolvedTypeReferenceDirective&&(n.resolvedTypeReferenceDirective.originalPath||n.resolvedTypeReferenceDirective.resolvedFileName)}function G8i(n,c,u,d,I){let h=D8e(u,I);return{getFromNonRelativeNameCache:N,getOrCreateCacheForNonRelativeName:V,clear:b,update:R};function b(){h.clear()}function R(M){h.update(M)}function N(M,te,re,ue){var Ae,de;return w.assert(!Jl(M)),(de=(Ae=h.getMapOfCacheRedirects(ue))==null?void 0:Ae.get(Jle(M,te)))==null?void 0:de.get(re)}function V(M,te,re){return w.assert(!Jl(M)),Ekr(h,re,Jle(M,te),P)}function P(){let M=new Map;return{get:te,set:re};function te(Ae){return M.get(gA(Ae,n,c))}function re(Ae,de){let Be=gA(Ae,n,c);if(M.has(Be))return;M.set(Be,de);let Fe=d(de),Ne=Fe&&ue(Be,Fe),Qe=Be;for(;Qe!==Ne;){let De=aa(Qe);if(De===Qe||M.has(De))break;M.set(De,de),Qe=De}}function ue(Ae,de){let Be=gA(aa(de),n,c),Fe=0,Ne=Math.min(Ae.length,Be.length);for(;Fed,clearAllExceptPackageJsonInfoCache:V,optionsToRedirectsKey:h};function N(){V(),d.clear()}function V(){b.clear(),R.clear()}function P(M){b.update(M),R.update(M)}}function _te(n,c,u,d,I){let h=Bkr(n,c,u,d,x8i,I);return h.getOrCreateCacheForModuleName=(b,R,N)=>h.getOrCreateCacheForNonRelativeName(b,R,N),h}function vke(n,c,u,d,I){return Bkr(n,c,u,d,k8i,I)}function x8e(n){return{moduleResolution:2,traceResolution:n.traceResolution}}function Ske(n,c,u,d,I){return M6(n,c,x8e(u),d,I)}function vkr(n,c,u,d){let I=aa(c);return u.getFromDirectoryCache(n,d,I,void 0)}function M6(n,c,u,d,I,h,b){var R,N,V;let P=GG(u,d);h&&(u=h.commandLine.options),P&&(wl(d,Z.Resolving_module_0_from_1,n,c),h&&wl(d,Z.Using_compiler_options_of_project_reference_redirect_0,h.sourceFile.fileName));let M=aa(c),te=I?.getFromDirectoryCache(n,b,M,h);if(te)P&&wl(d,Z.Resolution_for_module_0_was_found_in_cache_from_location_1,n,M);else{let re=u.moduleResolution;switch(re===void 0?(re=s0(u),P&&wl(d,Z.Module_resolution_kind_is_not_specified_using_0,Rb[re])):P&&wl(d,Z.Explicitly_specified_module_resolution_kind_Colon_0,Rb[re]),(R=Kl)==null||R.logStartResolveModule(n),re){case 3:te=V8i(n,c,u,d,I,h,b);break;case 99:te=W8i(n,c,u,d,I,h,b);break;case 2:te=pDt(n,c,u,d,I,h,b?EV(u,b):void 0);break;case 1:te=bDt(n,c,u,d,I,h);break;case 100:te=dDt(n,c,u,d,I,h,b?EV(u,b):void 0);break;default:return w.fail(`Unexpected moduleResolution: ${re}`)}te&&te.resolvedModule&&((N=Kl)==null||N.logInfoEvent(`Module "${n}" resolved to "${te.resolvedModule.resolvedFileName}"`)),(V=Kl)==null||V.logStopResolveModule(te&&te.resolvedModule?""+te.resolvedModule.resolvedFileName:"null"),I&&!I.isReadonly&&(I.getOrCreateCacheForDirectory(M,h).set(n,b,te),Jl(n)||I.getOrCreateCacheForNonRelativeName(n,b,h).set(M,te))}return P&&(te.resolvedModule?te.resolvedModule.packageId?wl(d,Z.Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2,n,te.resolvedModule.resolvedFileName,YR(te.resolvedModule.packageId)):wl(d,Z.Module_name_0_was_successfully_resolved_to_1,n,te.resolvedModule.resolvedFileName):wl(d,Z.Module_name_0_was_not_resolved,n)),te}function Skr(n,c,u,d,I){let h=F8i(n,c,d,I);return h?h.value:Jl(c)?Z8i(n,c,u,d,I):L8i(n,c,d,I)}function F8i(n,c,u,d){var I;let{baseUrl:h,paths:b,configFile:R}=d.compilerOptions;if(b&&!Op(c)){d.traceEnabled&&(h&&wl(d.host,Z.baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1,h,c),wl(d.host,Z.paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0,c));let N=wce(d.compilerOptions,d.host),V=R?.configFileSpecs?(I=R.configFileSpecs).pathPatterns||(I.pathPatterns=Yee(b)):void 0;return mDt(n,c,N,b,V,u,!1,d)}}function Z8i(n,c,u,d,I){if(!I.compilerOptions.rootDirs)return;I.traceEnabled&&wl(I.host,Z.rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0,c);let h=Mc(xo(u,c)),b,R;for(let N of I.compilerOptions.rootDirs){let V=Mc(N);pl(V,qu)||(V+=qu);let P=uc(h,V)&&(R===void 0||R.length(n[n.None=0]="None",n[n.Imports=2]="Imports",n[n.SelfName=4]="SelfName",n[n.Exports=8]="Exports",n[n.ExportsPatternTrailers=16]="ExportsPatternTrailers",n[n.AllFeatures=30]="AllFeatures",n[n.Node16Default=30]="Node16Default",n[n.NodeNextDefault=30]="NodeNextDefault",n[n.BundlerDefault=30]="BundlerDefault",n[n.EsmMode=32]="EsmMode",n))(ADt||{});function V8i(n,c,u,d,I,h,b){return wkr(30,n,c,u,d,I,h,b)}function W8i(n,c,u,d,I,h,b){return wkr(30,n,c,u,d,I,h,b)}function wkr(n,c,u,d,I,h,b,R,N){let V=aa(u),P=R===99?32:0,M=d.noDtsResolution?3:7;return lV(d)&&(M|=8),n_e(n|P,c,V,d,I,h,M,!1,b,N)}function P8i(n,c,u){return n_e(0,n,c,{moduleResolution:2,allowJs:!0},u,void 0,2,!1,void 0,void 0)}function dDt(n,c,u,d,I,h,b){let R=aa(c),N=u.noDtsResolution?3:7;return lV(u)&&(N|=8),n_e(cDt(u),n,R,u,d,I,N,!1,h,b)}function pDt(n,c,u,d,I,h,b,R){let N;return R?N=8:u.noDtsResolution?(N=3,lV(u)&&(N|=8)):N=lV(u)?15:7,n_e(b?30:0,n,aa(c),u,d,I,N,!!R,h,b)}function fDt(n,c,u){return n_e(30,n,aa(c),{moduleResolution:99},u,void 0,8,!0,void 0,void 0)}function n_e(n,c,u,d,I,h,b,R,N,V){var P,M,te,re,ue;let Ae=GG(d,I),de=[],Be=[],Fe=s0(d);V??(V=EV(d,Fe===100||Fe===2?void 0:n&32?99:1));let Ne=[],Qe={compilerOptions:d,host:I,traceEnabled:Ae,failedLookupLocations:de,affectingLocations:Be,packageJsonInfoCache:h,features:n,conditions:V??v,requestContainingDirectory:u,reportDiagnostic:je=>void Ne.push(je),isConfigLookup:R,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1};Ae&&UQ(Fe)&&wl(I,Z.Resolving_in_0_mode_with_conditions_1,n&32?"ESM":"CJS",Qe.conditions.map(je=>`'${je}'`).join(", "));let De;if(Fe===2){let je=b&5,st=b&-6;De=je&&Le(je,Qe)||st&&Le(st,Qe)||void 0}else De=Le(b,Qe);let lt;if(Qe.resolvedPackageDirectory&&!R&&!Jl(c)){let je=De?.value&&b&5&&!Gkr(5,De.value.resolved.extension);if((P=De?.value)!=null&&P.isExternalLibraryImport&&je&&n&8&&V?.includes("import")){vV(Qe,Z.Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_if_npm_library_needs_configuration_update);let st={...Qe,features:Qe.features&-9,reportDiagnostic:oc},nt=Le(b&5,st);(M=nt?.value)!=null&&M.isExternalLibraryImport&&(lt=nt.value.resolved.path)}else if((!De?.value||je)&&Fe===2){vV(Qe,Z.Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_need_configuration_update);let st={...Qe.compilerOptions,moduleResolution:100},nt={...Qe,compilerOptions:st,features:30,conditions:EV(st),reportDiagnostic:oc},qe=Le(b&5,nt);(te=qe?.value)!=null&&te.isExternalLibraryImport&&(lt=qe.value.resolved.path)}}return hkr(c,(re=De?.value)==null?void 0:re.resolved,(ue=De?.value)==null?void 0:ue.isExternalLibraryImport,de,Be,Ne,Qe,h,lt);function Le(je,st){let qe=Skr(je,c,u,(it,It,dt,wt)=>k8e(it,It,dt,wt,!0),st);if(qe)return P1({resolved:qe,isExternalLibraryImport:lP(qe.path)});if(Jl(c)){let{path:it,parts:It}=Tkr(u,c),dt=k8e(je,it,!1,st,!0);return dt&&P1({resolved:dt,isExternalLibraryImport:Ue(It,"node_modules")})}else{let it;if(n&2&&uc(c,"#")&&(it=X8i(je,c,u,st,h,N)),!it&&n&4&&(it=H8i(je,c,u,st,h,N)),!it){if(c.includes(":")){Ae&&wl(I,Z.Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1,c,yke(je));return}Ae&&wl(I,Z.Loading_module_0_from_node_modules_folder_target_file_types_Colon_1,c,yke(je)),it=Lkr(je,c,u,st,h,N)}return je&4&&(it??(it=Mkr(c,st))),it&&{value:it.value&&{resolved:it.value,isExternalLibraryImport:!0}}}}}function Tkr(n,c){let u=xo(n,c),d=Ad(u),I=qo(d);return{path:I==="."||I===".."?AA(Mc(u)):Mc(u),parts:d}}function Nkr(n,c,u){if(!c.realpath)return n;let d=Mc(c.realpath(n));return u&&wl(c,Z.Resolving_real_path_for_0_result_1,n,d),d}function k8e(n,c,u,d,I){if(d.traceEnabled&&wl(d.host,Z.Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1,c,yke(n)),!v_(c)){if(!u){let b=aa(c);k1(b,d.host)||(d.traceEnabled&&wl(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,b),u=!0)}let h=yte(n,c,u,d);if(h){let b=I?i_e(h.path):void 0,R=b?BV(b,!1,d):void 0;return O6(R,h,d)}}if(u||k1(c,d.host)||(d.traceEnabled&&wl(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,c),u=!0),!(d.features&32))return CDt(n,c,u,d,I)}var Qx="/node_modules/";function lP(n){return n.includes(Qx)}function i_e(n,c){let u=Mc(n),d=u.lastIndexOf(Qx);if(d===-1)return;let I=d+Qx.length,h=Rkr(u,I,c);return u.charCodeAt(I)===64&&(h=Rkr(u,h,c)),u.slice(0,h)}function Rkr(n,c,u){let d=n.indexOf(qu,c+1);return d===-1?u?n.length:c:d}function IDt(n,c,u,d){return w8e(yte(n,c,u,d))}function yte(n,c,u,d){let I=Dkr(n,c,u,d);if(I)return I;if(!(d.features&32)){let h=xkr(c,n,"",u,d);if(h)return h}}function Dkr(n,c,u,d){if(!xA(c).includes("."))return;let h=o0(c);h===c&&(h=c.substring(0,c.lastIndexOf(".")));let b=c.substring(h.length);return d.traceEnabled&&wl(d.host,Z.File_name_0_has_a_1_extension_stripping_it,c,b),xkr(h,n,b,u,d)}function G8e(n,c,u,d){return n&1&&pp(c,ale)||n&4&&pp(c,ole)?F8e(c,u,d)!==void 0?{path:c,ext:Gce(c),resolvedUsingTsExtension:void 0}:void 0:d.isConfigLookup&&n===8&&gd(c,".json")?F8e(c,u,d)!==void 0?{path:c,ext:".json",resolvedUsingTsExtension:void 0}:void 0:Dkr(n,c,u,d)}function xkr(n,c,u,d,I){if(!d){let b=aa(n);b&&(d=!k1(b,I.host))}switch(u){case".mjs":case".mts":case".d.mts":return c&1&&h(".mts",u===".mts"||u===".d.mts")||c&4&&h(".d.mts",u===".mts"||u===".d.mts")||c&2&&h(".mjs")||void 0;case".cjs":case".cts":case".d.cts":return c&1&&h(".cts",u===".cts"||u===".d.cts")||c&4&&h(".d.cts",u===".cts"||u===".d.cts")||c&2&&h(".cjs")||void 0;case".json":return c&4&&h(".d.json.ts")||c&8&&h(".json")||void 0;case".tsx":case".jsx":return c&1&&(h(".tsx",u===".tsx")||h(".ts",u===".tsx"))||c&4&&h(".d.ts",u===".tsx")||c&2&&(h(".jsx")||h(".js"))||void 0;case".ts":case".d.ts":case".js":case"":return c&1&&(h(".ts",u===".ts"||u===".d.ts")||h(".tsx",u===".ts"||u===".d.ts"))||c&4&&h(".d.ts",u===".ts"||u===".d.ts")||c&2&&(h(".js")||h(".jsx"))||I.isConfigLookup&&h(".json")||void 0;default:return c&4&&!kh(n+u)&&h(`.d${u}.ts`)||void 0}function h(b,R){let N=F8e(n+b,d,I);return N===void 0?void 0:{path:N,ext:b,resolvedUsingTsExtension:!I.candidateIsFromPackageJsonField&&R}}}function F8e(n,c,u){var d;if(!((d=u.compilerOptions.moduleSuffixes)!=null&&d.length))return kkr(n,c,u);let I=hN(n)??"",h=I?e4(n,I):n;return X(u.compilerOptions.moduleSuffixes,b=>kkr(h+b+I,c,u))}function kkr(n,c,u){var d;if(!c){if(u.host.fileExists(n))return u.traceEnabled&&wl(u.host,Z.File_0_exists_use_it_as_a_name_resolution_result,n),n;u.traceEnabled&&wl(u.host,Z.File_0_does_not_exist,n)}(d=u.failedLookupLocations)==null||d.push(n)}function CDt(n,c,u,d,I=!0){let h=I?BV(c,u,d):void 0,b=h&&h.contents.packageJsonContent,R=h&&wke(h,d);return O6(h,L8e(n,c,u,d,b,R),d)}function Z8e(n,c,u,d,I){if(!I&&n.contents.resolvedEntrypoints!==void 0)return n.contents.resolvedEntrypoints;let h,b=5|(I?2:0),R=cDt(c),N=Ule(d?.getPackageJsonInfoCache(),u,c);N.conditions=EV(c),N.requestContainingDirectory=n.packageDirectory;let V=L8e(b,n.packageDirectory,!1,N,n.contents.packageJsonContent,wke(n,N));if(h=Hr(h,V?.path),R&8&&n.contents.packageJsonContent.exports){let P=TA([EV(c,99),EV(c,1)],Cn);for(let M of P){let te={...N,failedLookupLocations:[],conditions:M,host:u},re=O8i(n,n.contents.packageJsonContent.exports,te,b);if(re)for(let ue of re)h=sg(h,ue.path)}}return n.contents.resolvedEntrypoints=h||!1}function O8i(n,c,u,d){let I;if(Ra(c))for(let b of c)h(b);else if(typeof c=="object"&&c!==null&&Tke(c))for(let b in c)h(c[b]);else h(c);return I;function h(b){var R,N;if(typeof b=="string"&&uc(b,"./"))if(b.includes("*")&&u.host.readDirectory){if(b.indexOf("*")!==b.lastIndexOf("*"))return!1;u.host.readDirectory(n.packageDirectory,_8i(d),void 0,[Iy($Q(b,"**/*"),".*")]).forEach(V=>{I=sg(I,{path:V,ext:wE(V),resolvedUsingTsExtension:void 0})})}else{let V=Ad(b).slice(2);if(V.includes("..")||V.includes(".")||V.includes("node_modules"))return!1;let P=xo(n.packageDirectory,b),M=Oc(P,(N=(R=u.host).getCurrentDirectory)==null?void 0:N.call(R)),te=G8e(d,M,!1,u);if(te)return I=sg(I,te,(re,ue)=>re.path===ue.path),!0}else if(Array.isArray(b)){for(let V of b)if(h(V))return!0}else if(typeof b=="object"&&b!==null)return X(kl(b),V=>{if(V==="default"||Ue(u.conditions,V)||o_e(u.conditions,V))return h(b[V]),!0})}}function Ule(n,c,u){return{host:c,compilerOptions:u,traceEnabled:GG(u,c),failedLookupLocations:void 0,affectingLocations:void 0,packageJsonInfoCache:n,features:0,conditions:v,requestContainingDirectory:void 0,reportDiagnostic:oc,isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1}}function Kle(n,c){let u=Ad(n);for(u.pop();u.length>0;){let d=BV(fy(u),!1,c);if(d)return d;u.pop()}}function wke(n,c){return n.contents.versionPaths===void 0&&(n.contents.versionPaths=v8i(n.contents.packageJsonContent,c)||!1),n.contents.versionPaths||void 0}function M8i(n,c){return n.contents.peerDependencies===void 0&&(n.contents.peerDependencies=Q8i(n,c)||!1),n.contents.peerDependencies||void 0}function Q8i(n,c){let u=sDt(n.contents.packageJsonContent,"peerDependencies","object",c);if(u===void 0)return;c.traceEnabled&&wl(c.host,Z.package_json_has_a_peerDependencies_field);let d=Nkr(n.packageDirectory,c.host,c.traceEnabled),I=d.substring(0,d.lastIndexOf("node_modules")+12)+qu,h="";for(let b in u)if(Qa(u,b)){let R=BV(I+b,!1,c);if(R){let N=R.contents.packageJsonContent.version;h+=`+${b}@${N}`,c.traceEnabled&&wl(c.host,Z.Found_peerDependency_0_with_1_version,b,N)}else c.traceEnabled&&wl(c.host,Z.Failed_to_find_peerDependency_0,b)}return h}function BV(n,c,u){var d,I,h,b,R,N;let{host:V,traceEnabled:P}=u,M=xo(n,"package.json");if(c){(d=u.failedLookupLocations)==null||d.push(M);return}let te=(I=u.packageJsonInfoCache)==null?void 0:I.getPackageJsonInfo(M);if(te!==void 0){if(Bke(te))return P&&wl(V,Z.File_0_exists_according_to_earlier_cached_lookups,M),(h=u.affectingLocations)==null||h.push(M),te.packageDirectory===n?te:{packageDirectory:n,contents:te.contents};te.directoryExists&&P&&wl(V,Z.File_0_does_not_exist_according_to_earlier_cached_lookups,M),(b=u.failedLookupLocations)==null||b.push(M);return}let re=k1(n,V);if(re&&V.fileExists(M)){let ue=cV(M,V);P&&wl(V,Z.Found_package_json_at_0,M);let Ae={packageDirectory:n,contents:{packageJsonContent:ue,versionPaths:void 0,resolvedEntrypoints:void 0,peerDependencies:void 0}};return u.packageJsonInfoCache&&!u.packageJsonInfoCache.isReadonly&&u.packageJsonInfoCache.setPackageJsonInfo(M,Ae),(R=u.affectingLocations)==null||R.push(M),Ae}else re&&P&&wl(V,Z.File_0_does_not_exist,M),u.packageJsonInfoCache&&!u.packageJsonInfoCache.isReadonly&&u.packageJsonInfoCache.setPackageJsonInfo(M,{packageDirectory:n,directoryExists:re}),(N=u.failedLookupLocations)==null||N.push(M)}function L8e(n,c,u,d,I,h){let b;I&&(d.isConfigLookup?b=b8i(I,c,d):b=n&4&&y8i(I,c,d)||n&7&&E8i(I,c,d)||void 0);let R=(te,re,ue,Ae)=>{let de=G8e(te,re,ue,Ae);if(de)return w8e(de);let Be=te===4?5:te,Fe=Ae.features,Ne=Ae.candidateIsFromPackageJsonField;Ae.candidateIsFromPackageJsonField=!0,I?.type!=="module"&&(Ae.features&=-33);let Qe=k8e(Be,re,ue,Ae,!1);return Ae.features=Fe,Ae.candidateIsFromPackageJsonField=Ne,Qe},N=b?!k1(aa(b),d.host):void 0,V=u||!k1(c,d.host),P=xo(c,d.isConfigLookup?"tsconfig":"index");if(h&&(!b||Bg(c,b))){let te=fp(c,b||P,!1);d.traceEnabled&&wl(d.host,Z.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,h.version,y,te);let re=mDt(n,te,c,h.paths,void 0,R,N||V,d);if(re)return mkr(re.value)}let M=b&&mkr(R(n,b,N,d));if(M)return M;if(!(d.features&32))return yte(n,P,V,d)}function Gkr(n,c){return n&2&&(c===".js"||c===".jsx"||c===".mjs"||c===".cjs")||n&1&&(c===".ts"||c===".tsx"||c===".mts"||c===".cts")||n&4&&(c===".d.ts"||c===".d.mts"||c===".d.cts")||n&8&&c===".json"||!1}function s_e(n){let c=n.indexOf(qu);return n[0]==="@"&&(c=n.indexOf(qu,c+1)),c===-1?{packageName:n,rest:""}:{packageName:n.slice(0,c),rest:n.slice(c+1)}}function Tke(n){return he(kl(n),c=>uc(c,"."))}function Y8i(n){return!lr(kl(n),c=>uc(c,"."))}function H8i(n,c,u,d,I,h){var b,R;let N=Oc(xo(u,"dummy"),(R=(b=d.host).getCurrentDirectory)==null?void 0:R.call(b)),V=Kle(N,d);if(!V||!V.contents.packageJsonContent.exports||typeof V.contents.packageJsonContent.name!="string")return;let P=Ad(c),M=Ad(V.contents.packageJsonContent.name);if(!he(M,(de,Be)=>P[Be]===de))return;let te=P.slice(M.length),re=O(te)?`.${qu}${te.join(qu)}`:".";if(bG(d.compilerOptions)&&!lP(u))return V8e(V,n,re,d,I,h);let ue=n&5,Ae=n&-6;return V8e(V,ue,re,d,I,h)||V8e(V,Ae,re,d,I,h)}function V8e(n,c,u,d,I,h){if(n.contents.packageJsonContent.exports){if(u==="."){let b;if(typeof n.contents.packageJsonContent.exports=="string"||Array.isArray(n.contents.packageJsonContent.exports)||typeof n.contents.packageJsonContent.exports=="object"&&Y8i(n.contents.packageJsonContent.exports)?b=n.contents.packageJsonContent.exports:Qa(n.contents.packageJsonContent.exports,".")&&(b=n.contents.packageJsonContent.exports["."]),b)return Zkr(c,d,I,h,u,n,!1)(b,"",!1,".")}else if(Tke(n.contents.packageJsonContent.exports)){if(typeof n.contents.packageJsonContent.exports!="object")return d.traceEnabled&&wl(d.host,Z.Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1,u,n.packageDirectory),P1(void 0);let b=Fkr(c,d,I,h,u,n.contents.packageJsonContent.exports,n,!1);if(b)return b}return d.traceEnabled&&wl(d.host,Z.Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1,u,n.packageDirectory),P1(void 0)}}function X8i(n,c,u,d,I,h){var b,R;if(c==="#"||uc(c,"#/"))return d.traceEnabled&&wl(d.host,Z.Invalid_import_specifier_0_has_no_possible_resolutions,c),P1(void 0);let N=Oc(xo(u,"dummy"),(R=(b=d.host).getCurrentDirectory)==null?void 0:R.call(b)),V=Kle(N,d);if(!V)return d.traceEnabled&&wl(d.host,Z.Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve,N),P1(void 0);if(!V.contents.packageJsonContent.imports)return d.traceEnabled&&wl(d.host,Z.package_json_scope_0_has_no_imports_defined,V.packageDirectory),P1(void 0);let P=Fkr(n,d,I,h,c,V.contents.packageJsonContent.imports,V,!0);return P||(d.traceEnabled&&wl(d.host,Z.Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1,c,V.packageDirectory),P1(void 0))}function W8e(n,c){let u=n.indexOf("*"),d=c.indexOf("*"),I=u===-1?n.length:u+1,h=d===-1?c.length:d+1;return I>h?-1:h>I||u===-1?1:d===-1||n.length>c.length?-1:c.length>n.length?1:0}function Fkr(n,c,u,d,I,h,b,R){let N=Zkr(n,c,u,d,I,b,R);if(!pl(I,qu)&&!I.includes("*")&&Qa(h,I)){let M=h[I];return N(M,"",!1,I)}let V=Cg(Gt(kl(h),M=>J8i(M)||pl(M,"/")),W8e);for(let M of V)if(c.features&16&&P(M,I)){let te=h[M],re=M.indexOf("*"),ue=I.substring(M.substring(0,re).length,I.length-(M.length-1-re));return N(te,ue,!0,M)}else if(pl(M,"*")&&uc(I,M.substring(0,M.length-1))){let te=h[M],re=I.substring(M.length-1);return N(te,re,!0,M)}else if(uc(I,M)){let te=h[M],re=I.substring(M.length);return N(te,re,!1,M)}function P(M,te){if(pl(M,"*"))return!1;let re=M.indexOf("*");return re===-1?!1:uc(te,M.substring(0,re))&&pl(te,M.substring(re+1))}}function J8i(n){let c=n.indexOf("*");return c!==-1&&c===n.lastIndexOf("*")}function Zkr(n,c,u,d,I,h,b){return R;function R(N,V,P,M){if(typeof N=="string"){if(!P&&V.length>0&&!pl(N,"/"))return c.traceEnabled&&wl(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,h.packageDirectory,I),P1(void 0);if(!uc(N,"./")){if(b&&!uc(N,"../")&&!uc(N,"/")&&!yd(N)){let De=P?N.replace(/\*/g,V):N+V;vV(c,Z.Using_0_subpath_1_with_target_2,"imports",M,De),vV(c,Z.Resolving_module_0_from_1,De,h.packageDirectory+"/");let lt=n_e(c.features,De,h.packageDirectory+"/",c.compilerOptions,c.host,u,n,!1,d,c.conditions);return P1(lt.resolvedModule?{path:lt.resolvedModule.resolvedFileName,extension:lt.resolvedModule.extension,packageId:lt.resolvedModule.packageId,originalPath:lt.resolvedModule.originalPath,resolvedUsingTsExtension:lt.resolvedModule.resolvedUsingTsExtension}:void 0)}return c.traceEnabled&&wl(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,h.packageDirectory,I),P1(void 0)}let de=(Op(N)?Ad(N).slice(1):Ad(N)).slice(1);if(de.includes("..")||de.includes(".")||de.includes("node_modules"))return c.traceEnabled&&wl(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,h.packageDirectory,I),P1(void 0);let Be=xo(h.packageDirectory,N),Fe=Ad(V);if(Fe.includes("..")||Fe.includes(".")||Fe.includes("node_modules"))return c.traceEnabled&&wl(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,h.packageDirectory,I),P1(void 0);c.traceEnabled&&wl(c.host,Z.Using_0_subpath_1_with_target_2,b?"imports":"exports",M,P?N.replace(/\*/g,V):N+V);let Ne=te(P?Be.replace(/\*/g,V):Be+V),Qe=ue(Ne,V,xo(h.packageDirectory,"package.json"),b);return Qe||P1(O6(h,G8e(n,Ne,!1,c),c))}else if(typeof N=="object"&&N!==null)if(Array.isArray(N)){if(!O(N))return c.traceEnabled&&wl(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,h.packageDirectory,I),P1(void 0);for(let Ae of N){let de=R(Ae,V,P,M);if(de)return de}}else{vV(c,Z.Entering_conditional_exports);for(let Ae of kl(N))if(Ae==="default"||c.conditions.includes(Ae)||o_e(c.conditions,Ae)){vV(c,Z.Matched_0_condition_1,b?"imports":"exports",Ae);let de=N[Ae],Be=R(de,V,P,M);if(Be)return vV(c,Z.Resolved_under_condition_0,Ae),vV(c,Z.Exiting_conditional_exports),Be;vV(c,Z.Failed_to_resolve_under_condition_0,Ae)}else vV(c,Z.Saw_non_matching_condition_0,Ae);vV(c,Z.Exiting_conditional_exports);return}else if(N===null)return c.traceEnabled&&wl(c.host,Z.package_json_scope_0_explicitly_maps_specifier_1_to_null,h.packageDirectory,I),P1(void 0);return c.traceEnabled&&wl(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,h.packageDirectory,I),P1(void 0);function te(Ae){var de,Be;return Ae===void 0?Ae:Oc(Ae,(Be=(de=c.host).getCurrentDirectory)==null?void 0:Be.call(de))}function re(Ae,de){return AA(xo(Ae,de))}function ue(Ae,de,Be,Fe){var Ne,Qe,De,lt;if(!c.isConfigLookup&&(c.compilerOptions.declarationDir||c.compilerOptions.outDir)&&!Ae.includes("/node_modules/")&&(!c.compilerOptions.configFile||Bg(h.packageDirectory,te(c.compilerOptions.configFile.fileName),!P8e(c)))){let je=Dx({useCaseSensitiveFileNames:()=>P8e(c)}),st=[];if(c.compilerOptions.rootDir||c.compilerOptions.composite&&c.compilerOptions.configFilePath){let nt=te(aue(c.compilerOptions,()=>[],((Qe=(Ne=c.host).getCurrentDirectory)==null?void 0:Qe.call(Ne))||"",je));st.push(nt)}else if(c.requestContainingDirectory){let nt=te(xo(c.requestContainingDirectory,"index.ts")),qe=te(aue(c.compilerOptions,()=>[nt,te(Be)],((lt=(De=c.host).getCurrentDirectory)==null?void 0:lt.call(De))||"",je));st.push(qe);let it=AA(qe);for(;it&&it.length>1;){let It=Ad(it);It.pop();let dt=fy(It);st.unshift(dt),it=AA(dt)}}st.length>1&&c.reportDiagnostic(ff(Fe?Z.The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:Z.The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate,de===""?".":de,Be));for(let nt of st){let qe=Le(nt);for(let it of qe)if(Bg(it,Ae,!P8e(c))){let It=Ae.slice(it.length+1),dt=xo(nt,It),wt=[".mjs",".cjs",".js",".json",".d.mts",".d.cts",".d.ts"];for(let vt of wt)if(gd(dt,vt)){let Ye=cDe(dt);for(let ht of Ye){if(!Gkr(n,ht))continue;let Et=S1(dt,ht,vt,!P8e(c));if(c.host.fileExists(Et))return P1(O6(h,G8e(n,Et,!1,c),c))}}}}}return;function Le(je){var st,nt;let qe=c.compilerOptions.configFile?((nt=(st=c.host).getCurrentDirectory)==null?void 0:nt.call(st))||"":je,it=[];return c.compilerOptions.declarationDir&&it.push(te(re(qe,c.compilerOptions.declarationDir))),c.compilerOptions.outDir&&c.compilerOptions.outDir!==c.compilerOptions.declarationDir&&it.push(te(re(qe,c.compilerOptions.outDir))),it}}}}function o_e(n,c){if(!n.includes("types")||!uc(c,"types@"))return!1;let u=Xc.tryParse(c.substring(6));return u?u.test(y):!1}function Lkr(n,c,u,d,I,h){return Vkr(n,c,u,d,!1,I,h)}function U8i(n,c,u){return Vkr(4,n,c,u,!0,void 0,void 0)}function Vkr(n,c,u,d,I,h,b){let R=d.features===0?void 0:d.features&32?99:1,N=n&5,V=n&-6;if(N){vV(d,Z.Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0,yke(N));let M=P(N);if(M)return M}if(V&&!I)return vV(d,Z.Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0,yke(V)),P(V);function P(M){let te=Af(u);if(bV(te)){let re=yDt(h,c,R,te,b,d);return re||P1(K8i(M,c,te,d,I,h,b))}return iI(te,re=>{if(xA(re)!=="node_modules"){let ue=yDt(h,c,R,re,b,d);return ue||P1(Wkr(M,c,re,d,I,h,b))}})}}function Wkr(n,c,u,d,I,h,b){let R=xo(u,"node_modules"),N=k1(R,d.host);if(!N&&d.traceEnabled&&wl(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,R),!I){let V=Pkr(n,c,R,N,d,h,b);if(V)return V}if(n&4){let V=xo(R,"@types"),P=N;return N&&!k1(V,d.host)&&(d.traceEnabled&&wl(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,V),P=!1),Pkr(4,_Dt(c,d),V,P,d,h,b)}}function K8i(n,c,u,d,I,h,b){let R=Af(u);if(!I){let N=Qkr(n,c,R,d,h,b);if(N)return N}if(n&4)return Qkr(4,`@types/${_Dt(c,d)}`,R,d,h,b)}function Pkr(n,c,u,d,I,h,b){let R=Mc(xo(u,c)),{packageName:N,rest:V}=s_e(c),P=xo(u,N);return Okr(n,d,I,h,b,R,V,P)}function j8i(n,c,u,d,I,h){let b=Mc(xo(c,u));return Okr(n,!0,d,I,h,b,u,c)}function Okr(n,c,u,d,I,h,b,R){var N,V;let P,M=BV(h,!c,u);if(b!==""&&M&&(!(u.features&8)||!Qa(((N=P=BV(R,!c,u))==null?void 0:N.contents.packageJsonContent)??v,"exports"))){let ue=yte(n,h,!c,u);if(ue)return w8e(ue);let Ae=L8e(n,h,!c,u,M.contents.packageJsonContent,wke(M,u));return O6(M,Ae,u)}let te=(ue,Ae,de,Be)=>{let Fe=(b||!(Be.features&32))&&yte(ue,Ae,de,Be)||L8e(ue,Ae,de,Be,M&&M.contents.packageJsonContent,M&&wke(M,Be));return!Fe&&M&&(M.contents.packageJsonContent.exports===void 0||M.contents.packageJsonContent.exports===null)&&Be.features&32&&(Fe=yte(ue,xo(Ae,"index.js"),de,Be)),O6(M,Fe,Be)};if(b!==""&&(M=P??BV(R,!c,u)),M&&(u.resolvedPackageDirectory=!0),M&&M.contents.packageJsonContent.exports&&u.features&8)return(V=V8e(M,n,xo(".",b),u,d,I))==null?void 0:V.value;let re=b!==""&&M?wke(M,u):void 0;if(re){u.traceEnabled&&wl(u.host,Z.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,re.version,y,b);let ue=c&&k1(R,u.host),Ae=mDt(n,b,R,re.paths,void 0,te,!ue,u);if(Ae)return Ae.value}return te(n,h,!c,u)}function mDt(n,c,u,d,I,h,b,R){I||(I=Yee(d));let N=Ahe(I,c);if(N){let V=Xa(N)?void 0:_h(N,c),P=Xa(N)?N:R0(N);return R.traceEnabled&&wl(R.host,Z.Module_name_0_matched_pattern_1,c,P),{value:X(d[P],te=>{let re=V?$Q(te,V):te,ue=Mc(xo(u,re));R.traceEnabled&&wl(R.host,Z.Trying_substitution_0_candidate_module_location_Colon_1,te,re);let Ae=hN(te);if(Ae!==void 0){let de=F8e(ue,b,R);if(de!==void 0)return w8e({path:de,ext:Ae,resolvedUsingTsExtension:void 0})}return h(n,ue,b||!k1(aa(ue),R.host),R)})}}}var hDt="__";function _Dt(n,c){let u=bte(n);return c.traceEnabled&&u!==n&&wl(c.host,Z.Scoped_package_detected_looking_in_0,u),u}function Nke(n){return`@types/${bte(n)}`}function bte(n){if(uc(n,"@")){let c=n.replace(qu,hDt);if(c!==n)return c.slice(1)}return n}function jle(n){let c=b_(n,"@types/");return c!==n?a_e(c):n}function a_e(n){return n.includes(hDt)?"@"+n.replace(hDt,qu):n}function yDt(n,c,u,d,I,h){let b=n&&n.getFromNonRelativeNameCache(c,u,d,I);if(b)return h.traceEnabled&&wl(h.host,Z.Resolution_for_module_0_was_found_in_cache_from_location_1,c,d),h.resultFromCache=b,{value:b.resolvedModule&&{path:b.resolvedModule.resolvedFileName,originalPath:b.resolvedModule.originalPath||!0,extension:b.resolvedModule.extension,packageId:b.resolvedModule.packageId,resolvedUsingTsExtension:b.resolvedModule.resolvedUsingTsExtension}}}function bDt(n,c,u,d,I,h){let b=GG(u,d),R=[],N=[],V=aa(c),P=[],M={compilerOptions:u,host:d,traceEnabled:b,failedLookupLocations:R,affectingLocations:N,packageJsonInfoCache:I,features:0,conditions:[],requestContainingDirectory:V,reportDiagnostic:ue=>void P.push(ue),isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1},te=re(5)||re(2|(u.resolveJsonModule?8:0));return hkr(n,te&&te.value,te?.value&&lP(te.value.path),R,N,P,M,I);function re(ue){let Ae=Skr(ue,n,V,IDt,M);if(Ae)return{value:Ae};if(Jl(n)){let de=Mc(xo(V,n));return P1(IDt(ue,de,!1,M))}else{let de=iI(V,Be=>{let Fe=yDt(I,n,void 0,Be,h,M);if(Fe)return Fe;let Ne=Mc(xo(Be,n));return P1(IDt(ue,Ne,!1,M))});if(de)return de;if(ue&5){let Be=U8i(n,V,M);return ue&4&&(Be??(Be=Mkr(n,M))),Be}}}}function Mkr(n,c){if(c.compilerOptions.typeRoots)for(let u of c.compilerOptions.typeRoots){let d=bkr(u,n,c),I=k1(u,c.host);!I&&c.traceEnabled&&wl(c.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,u);let h=yte(4,d,!I,c);if(h){let R=i_e(h.path),N=R?BV(R,!1,c):void 0;return P1(O6(N,h,c))}let b=CDt(4,d,!I,c);if(b)return P1(b)}}function Ete(n,c){return!!n.allowImportingTsExtensions||c&&kh(c)}function EDt(n,c,u,d,I,h){let b=GG(u,d);b&&wl(d,Z.Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2,c,n,I);let R=[],N=[],V=[],P={compilerOptions:u,host:d,traceEnabled:b,failedLookupLocations:R,affectingLocations:N,packageJsonInfoCache:h,features:0,conditions:[],requestContainingDirectory:void 0,reportDiagnostic:te=>void V.push(te),isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1},M=Wkr(4,n,I,P,!1,void 0,void 0);return _kr(M,!0,R,N,V,P.resultFromCache,void 0)}function P1(n){return n!==void 0?{value:n}:void 0}function vV(n,c,...u){n.traceEnabled&&wl(n.host,c,...u)}function P8e(n){return n.host.useCaseSensitiveFileNames?typeof n.host.useCaseSensitiveFileNames=="boolean"?n.host.useCaseSensitiveFileNames:n.host.useCaseSensitiveFileNames():!0}function z8i(n,c){try{let u=bV(c).resolveToUnqualified(n,`${c}/`,{considerBuiltins:!1});return Af(u).replace(/\/$/,"")}catch{}}function Qkr(n,c,u,d,I,h){let{packageName:b,rest:R}=s_e(c),N=z8i(b,u);return N?j8i(n,N,R,d,I,h):void 0}var BDt=(n=>(n[n.NonInstantiated=0]="NonInstantiated",n[n.Instantiated=1]="Instantiated",n[n.ConstEnumOnly=2]="ConstEnumOnly",n))(BDt||{});function FG(n,c){return n.body&&!n.body.parent&&(kA(n.body,n),_N(n.body,!1)),n.body?vDt(n.body,c):1}function vDt(n,c=new Map){let u=sd(n);if(c.has(u))return c.get(u)||0;c.set(u,void 0);let d=q8i(n,c);return c.set(u,d),d}function q8i(n,c){switch(n.kind){case 264:case 265:return 0;case 266:if(Ac(n))return 2;break;case 272:case 271:if(!ba(n,32))return 0;break;case 278:let u=n;if(!u.moduleSpecifier&&u.exportClause&&u.exportClause.kind===279){let d=0;for(let I of u.exportClause.elements){let h=$8i(I,c);if(h>d&&(d=h),d===1)return d}return d}break;case 268:{let d=0;return mu(n,I=>{let h=vDt(I,c);switch(h){case 0:return;case 2:d=2;return;case 1:return d=1,!0;default:w.assertNever(h)}}),d}case 267:return FG(n,c);case 80:if(n.flags&4096)return 0}return 1}function $8i(n,c){let u=n.propertyName||n.name,d=n.parent;for(;d;){if(mc(d)||SN(d)||Gc(d)){let I=d.statements,h;for(let b of I)if(vv(b,u)){b.parent||(kA(b,d),_N(b,!1));let R=vDt(b,c);if((h===void 0||R>h)&&(h=R),h===1)return h;b.kind===271&&(h=1)}if(h!==void 0)return h}d=d.parent}return 1}var SDt=(n=>(n[n.None=0]="None",n[n.IsContainer=1]="IsContainer",n[n.IsBlockScopedContainer=2]="IsBlockScopedContainer",n[n.IsControlFlowContainer=4]="IsControlFlowContainer",n[n.IsFunctionLike=8]="IsFunctionLike",n[n.IsFunctionExpression=16]="IsFunctionExpression",n[n.HasLocals=32]="HasLocals",n[n.IsInterface=64]="IsInterface",n[n.IsObjectLiteralOrClassExpressionMethodOrAccessor=128]="IsObjectLiteralOrClassExpressionMethodOrAccessor",n))(SDt||{});function nD(n,c,u){return w.attachFlowNodeDebugInfo({flags:n,id:0,node:c,antecedent:u})}var e6i=t6i();function wDt(n,c){var u,d;rs("beforeBind"),(u=Kl)==null||u.logStartBindFile(""+n.fileName),e6i(n,c),(d=Kl)==null||d.logStopBindFile(),rs("afterBind"),vc("Bind","beforeBind","afterBind")}function t6i(){var n,c,u,d,I,h,b,R,N,V,P,M,te,re,ue,Ae,de,Be,Fe,Ne,Qe,De,lt,Le,je=!1,st=0,nt,qe,it=nD(1,void 0,void 0),It=nD(1,void 0,void 0),dt=sn();return vt;function wt(Ge,Ht,...En){return Lb(ls(Ge)||n,Ge,Ht,...En)}function vt(Ge,Ht){var En,Rs;n=Ge,c=Ht,u=iA(c),Le=Ye(n,Ht),qe=new Set,st=0,nt=xC.getSymbolConstructor(),w.attachFlowNodeDebugInfo(it),w.attachFlowNodeDebugInfo(It),n.locals||((En=Mi)==null||En.push(Mi.Phase.Bind,"bindSourceFile",{path:n.path},!0),fi(n),(Rs=Mi)==null||Rs.pop(),n.symbolCount=st,n.classifiableNames=qe,Km(),Df()),n=void 0,c=void 0,u=void 0,d=void 0,I=void 0,h=void 0,b=void 0,R=void 0,N=void 0,P=void 0,V=!1,M=void 0,te=void 0,re=void 0,ue=void 0,Ae=void 0,de=void 0,Be=void 0,Ne=void 0,Qe=!1,De=!1,je=!1,lt=0}function Ye(Ge,Ht){return D_(Ht,"alwaysStrict")&&!Ge.isDeclarationFile?!0:!!Ge.externalModuleIndicator}function ht(Ge,Ht){return st++,new nt(Ge,Ht)}function Et(Ge,Ht,En){Ge.flags|=En,Ht.symbol=Ge,Ge.declarations=sg(Ge.declarations,Ht),En&1955&&!Ge.exports&&(Ge.exports=Du()),En&6240&&!Ge.members&&(Ge.members=Du()),Ge.constEnumOnlyModule&&Ge.flags&304&&(Ge.constEnumOnlyModule=!1),En&111551&&cee(Ge,Ht)}function Kt(Ge){if(Ge.kind===277)return Ge.isExportEquals?"export=":"default";let Ht=vl(Ge);if(Ht){if(Yf(Ge)){let En=T2(Ht);return v2(Ge)?"__global":`"${En}"`}if(Ht.kind===167){let En=Ht.expression;if(GE(En))return Rd(En.text);if(_ce(En))return vr(En.operator)+En.operand.text;w.fail("Only computed properties with literal names have declaration names")}if(kc(Ht)){let En=Um(Ge);if(!En)return;let Rs=En.symbol;return hee(Rs,Ht.escapedText)}return oT(Ht)?D2(Ht):VS(Ht)?j8(Ht):void 0}switch(Ge.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(CI(Ge)===2)return"export=";w.fail("Unknown binary declaration kind");break;case 317:return PX(Ge)?"__new":"__call";case 169:return w.assert(Ge.parent.kind===317,"Impossible parameter parent kind",()=>`parent is: ${w.formatSyntaxKind(Ge.parent.kind)}, expected JSDocFunctionType`),"arg"+Ge.parent.parameters.indexOf(Ge)}}function Tt(Ge){return Sf(Ge)?xd(Ge.name):Sc(w.checkDefined(Kt(Ge)))}function Lt(Ge,Ht,En,Rs,_c,Iu,Wl){w.assert(Wl||!jR(En));let Eu=ba(En,2048)||c0(En)&&En.name.escapedText==="default",od=Wl?"__computed":Eu&&Ht?"default":Kt(En),sA;if(od===void 0)sA=ht(0,"__missing");else if(sA=Ge.get(od),Rs&2885600&&qe.add(od),!sA)Ge.set(od,sA=ht(0,od)),Iu&&(sA.isReplaceableByMethod=!0);else{if(Iu&&!sA.isReplaceableByMethod)return sA;if(sA.flags&_c){if(sA.isReplaceableByMethod)Ge.set(od,sA=ht(0,od));else if(!(Rs&3&&sA.flags&67108864)){Sf(En)&&kA(En.name,En);let uI=sA.flags&2?Z.Cannot_redeclare_block_scoped_variable_0:Z.Duplicate_identifier_0,VB=!0;(sA.flags&384||Rs&384)&&(uI=Z.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations,VB=!1);let rw=!1;O(sA.declarations)&&(Eu||sA.declarations&&sA.declarations.length&&En.kind===277&&!En.isExportEquals)&&(uI=Z.A_module_cannot_have_multiple_default_exports,VB=!1,rw=!0);let lD=[];Wf(En)&&wf(En.type)&&ba(En,32)&&sA.flags&2887656&&lD.push(wt(En,Z.Did_you_mean_0,`export type { ${Sc(En.name.escapedText)} }`));let Xx=vl(En)||En;X(sA.declarations,(Jx,WB)=>{let J2=vl(Jx)||Jx,np=VB?wt(J2,uI,Tt(Jx)):wt(J2,uI);n.bindDiagnostics.push(rw?eg(np,wt(Xx,WB===0?Z.Another_export_default_is_here:Z.and_here)):np),rw&&lD.push(wt(J2,Z.The_first_export_default_is_here))});let YZ=VB?wt(Xx,uI,Tt(En)):wt(Xx,uI);n.bindDiagnostics.push(eg(YZ,...lD)),sA=ht(0,od)}}}return Et(sA,En,Rs),sA.parent?w.assert(sA.parent===Ht,"Existing symbol parent should match new one"):sA.parent=Ht,sA}function kt(Ge,Ht,En){let Rs=!!(Nh(Ge)&32)||Zt(Ge);if(Ht&2097152)return Ge.kind===281||Ge.kind===271&&Rs?Lt(I.symbol.exports,I.symbol,Ge,Ht,En):(w.assertNode(I,Tv),Lt(I.locals,void 0,Ge,Ht,En));if(w2(Ge)&&w.assert(so(Ge)),!Yf(Ge)&&(Rs||I.flags&128)){if(!Tv(I)||!I.locals||ba(Ge,2048)&&!Kt(Ge))return Lt(I.symbol.exports,I.symbol,Ge,Ht,En);let _c=Ht&111551?1048576:0,Iu=Lt(I.locals,void 0,Ge,_c,En);return Iu.exportSymbol=Lt(I.symbol.exports,I.symbol,Ge,Ht,En),Ge.localSymbol=Iu,Iu}else return w.assertNode(I,Tv),Lt(I.locals,void 0,Ge,Ht,En)}function Zt(Ge){if(Ge.parent&&CC(Ge)&&(Ge=Ge.parent),!w2(Ge))return!1;if(!Whe(Ge)&&Ge.fullName)return!0;let Ht=vl(Ge);return Ht?!!(Ree(Ht.parent)&&LB(Ht.parent)||DC(Ht.parent)&&Nh(Ht.parent)&32):!1}function Dr(Ge,Ht){let En=I,Rs=h,_c=b;if(Ht&1?(Ge.kind!==219&&(h=I),I=b=Ge,Ht&32&&(I.locals=Du(),oa(I))):Ht&2&&(b=Ge,Ht&32&&(b.locals=void 0)),Ht&4){let Iu=M,Wl=te,Eu=re,od=ue,sA=Be,uI=Ne,VB=Qe,rw=Ht&16&&!ba(Ge,1024)&&!Ge.asteriskToken&&!!z9(Ge)||Ge.kind===175;rw||(M=nD(2,void 0,void 0),Ht&144&&(M.node=Ge)),ue=rw||Ge.kind===176||so(Ge)&&(Ge.kind===262||Ge.kind===218)?gi():void 0,Be=void 0,te=void 0,re=void 0,Ne=void 0,Qe=!1,Vr(Ge),Ge.flags&=-5633,!(M.flags&1)&&Ht&8&&xE(Ge.body)&&(Ge.flags|=512,Qe&&(Ge.flags|=1024),Ge.endFlowNode=M),Ge.kind===307&&(Ge.flags|=lt,Ge.endFlowNode=M),ue&&(xi(ue,M),M=_s(ue),(Ge.kind===176||Ge.kind===175||so(Ge)&&(Ge.kind===262||Ge.kind===218))&&(Ge.returnFlowNode=M)),rw||(M=Iu),te=Wl,re=Eu,ue=od,Be=sA,Ne=uI,Qe=VB}else Ht&64?(V=!1,Vr(Ge),w.assertNotNode(Ge,sr),Ge.flags=V?Ge.flags|256:Ge.flags&-257):Vr(Ge);I=En,h=Rs,b=_c}function jt(Ge){mr(Ge,Ht=>Ht.kind===262?fi(Ht):void 0),mr(Ge,Ht=>Ht.kind!==262?fi(Ht):void 0)}function mr(Ge,Ht=fi){Ge!==void 0&&X(Ge,Ht)}function Pt(Ge){mu(Ge,fi,mr)}function Vr(Ge){let Ht=je;if(je=!1,Ua(Ge)){Pt(Ge),Jo(Ge),je=Ht;return}switch(Ge.kind>=243&&Ge.kind<=259&&(!c.allowUnreachableCode||Ge.kind===253)&&(Ge.flowNode=M),Ge.kind){case 247:cg(Ge);break;case 246:Ku(Ge);break;case 248:Bi(Ge);break;case 249:case 250:BA(Ge);break;case 245:kr(Ge);break;case 253:case 257:en(Ge);break;case 252:case 251:St(Ge);break;case 258:br(Ge);break;case 255:Qt(Ge);break;case 269:_r(Ge);break;case 296:Pr(Ge);break;case 244:ti(Ge);break;case 256:kn(Ge);break;case 224:wn(Ge);break;case 225:Pe(Ge);break;case 226:if(kv(Ge)){je=Ht,ar(Ge);return}dt(Ge);break;case 220:Me(Ge);break;case 227:ur(Ge);break;case 260:Jt(Ge);break;case 211:case 212:Yc(Ge);break;case 213:fl(Ge);break;case 235:ko(Ge);break;case 346:case 338:case 340:On(Ge);break;case 351:Ii(Ge);break;case 307:{jt(Ge.statements),fi(Ge.endOfFileToken);break}case 241:case 268:jt(Ge.statements);break;case 208:bt(Ge);break;case 169:Vt(Ge);break;case 210:case 209:case 303:case 230:je=Ht;default:Pt(Ge);break}Jo(Ge),je=Ht}function Yr(Ge){switch(Ge.kind){case 80:case 110:return!0;case 211:case 212:return zr(Ge);case 213:return $n(Ge);case 217:if(f4(Ge))return!1;case 235:return Yr(Ge.expression);case 226:return Pi(Ge);case 224:return Ge.operator===54&&Yr(Ge.operand);case 221:return Yr(Ge.expression)}return!1}function pr(Ge){switch(Ge.kind){case 80:case 110:case 108:case 236:return!0;case 211:case 217:case 235:return pr(Ge.expression);case 212:return(GE(Ge.argumentExpression)||cp(Ge.argumentExpression))&&pr(Ge.expression);case 226:return Ge.operatorToken.kind===28&&pr(Ge.right)||qR(Ge.operatorToken.kind)&&T_(Ge.left)}return!1}function zr(Ge){return pr(Ge)||km(Ge)&&zr(Ge.expression)}function $n(Ge){if(Ge.arguments){for(let Ht of Ge.arguments)if(zr(Ht))return!0}return!!(Ge.expression.kind===211&&zr(Ge.expression.expression))}function bi(Ge,Ht){return eD(Ge)&&Ns(Ge.expression)&&XA(Ht)}function Pi(Ge){switch(Ge.operatorToken.kind){case 64:case 76:case 77:case 78:return zr(Ge.left);case 35:case 36:case 37:case 38:return Ns(Ge.left)||Ns(Ge.right)||bi(Ge.right,Ge.left)||bi(Ge.left,Ge.right)||IQ(Ge.right)&&Yr(Ge.left)||IQ(Ge.left)&&Yr(Ge.right);case 104:return Ns(Ge.left);case 103:return Yr(Ge.right);case 28:return Yr(Ge.right)}return!1}function Ns(Ge){switch(Ge.kind){case 217:return Ns(Ge.expression);case 226:switch(Ge.operatorToken.kind){case 64:return Ns(Ge.left);case 28:return Ns(Ge.right)}}return zr(Ge)}function gi(){return nD(4,void 0,void 0)}function jn(){return nD(8,void 0,void 0)}function xs(Ge,Ht,En){return nD(1024,{target:Ge,antecedents:Ht},En)}function Ec(Ge){Ge.flags|=Ge.flags&2048?4096:2048}function xi(Ge,Ht){!(Ht.flags&1)&&!Ue(Ge.antecedent,Ht)&&((Ge.antecedent||(Ge.antecedent=[])).push(Ht),Ec(Ht))}function rc(Ge,Ht,En){return Ht.flags&1?Ht:En?(En.kind===112&&Ge&64||En.kind===97&&Ge&32)&&!a8(En)&&!p$(En.parent)?it:Yr(En)?(Ec(Ht),nD(Ge,En,Ht)):Ht:Ge&32?Ht:it}function Vl(Ge,Ht,En,Rs){return Ec(Ge),nD(128,{switchStatement:Ht,clauseStart:En,clauseEnd:Rs},Ge)}function ul(Ge,Ht,En){Ec(Ht),De=!0;let Rs=nD(Ge,En,Ht);return Be&&xi(Be,Rs),Rs}function Cc(Ge,Ht){return Ec(Ge),De=!0,nD(512,Ht,Ge)}function _s(Ge){let Ht=Ge.antecedent;return Ht?Ht.length===1?Ht[0]:Ge:it}function Wu(Ge){let Ht=Ge.parent;switch(Ht.kind){case 245:case 247:case 246:return Ht.expression===Ge;case 248:case 227:return Ht.condition===Ge}return!1}function ir(Ge){for(;;)if(Ge.kind===217)Ge=Ge.expression;else if(Ge.kind===224&&Ge.operator===54)Ge=Ge.operand;else return Tee(Ge)}function ni(Ge){return Wme(jA(Ge))}function gs(Ge){for(;FC(Ge.parent)||xB(Ge.parent)&&Ge.parent.operator===54;)Ge=Ge.parent;return!Wu(Ge)&&!ir(Ge.parent)&&!(km(Ge.parent)&&Ge.parent.expression===Ge)}function Hs(Ge,Ht,En,Rs){let _c=Ae,Iu=de;Ae=En,de=Rs,Ge(Ht),Ae=_c,de=Iu}function qa(Ge,Ht,En){Hs(fi,Ge,Ht,En),(!Ge||!ni(Ge)&&!ir(Ge)&&!(km(Ge)&&w3(Ge)))&&(xi(Ht,rc(32,M,Ge)),xi(En,rc(64,M,Ge)))}function nc(Ge,Ht,En){let Rs=te,_c=re;te=Ht,re=En,fi(Ge),te=Rs,re=_c}function Nc(Ge,Ht){let En=Ne;for(;En&&Ge.parent.kind===256;)En.continueTarget=Ht,En=En.next,Ge=Ge.parent;return Ht}function cg(Ge){let Ht=Nc(Ge,jn()),En=gi(),Rs=gi();xi(Ht,M),M=Ht,qa(Ge.expression,En,Rs),M=_s(En),nc(Ge.statement,Rs,Ht),xi(Ht,M),M=_s(Rs)}function Ku(Ge){let Ht=jn(),En=Nc(Ge,gi()),Rs=gi();xi(Ht,M),M=Ht,nc(Ge.statement,Rs,En),xi(En,M),M=_s(En),qa(Ge.expression,Ht,Rs),M=_s(Rs)}function Bi(Ge){let Ht=Nc(Ge,jn()),En=gi(),Rs=gi();fi(Ge.initializer),xi(Ht,M),M=Ht,qa(Ge.condition,En,Rs),M=_s(En),nc(Ge.statement,Rs,Ht),fi(Ge.incrementor),xi(Ht,M),M=_s(Rs)}function BA(Ge){let Ht=Nc(Ge,jn()),En=gi();fi(Ge.expression),xi(Ht,M),M=Ht,Ge.kind===250&&fi(Ge.awaitModifier),xi(En,M),fi(Ge.initializer),Ge.initializer.kind!==261&&an(Ge.initializer),nc(Ge.statement,En,Ht),xi(Ht,M),M=_s(En)}function kr(Ge){let Ht=gi(),En=gi(),Rs=gi();qa(Ge.expression,Ht,En),M=_s(Ht),fi(Ge.thenStatement),xi(Rs,M),M=_s(En),fi(Ge.elseStatement),xi(Rs,M),M=_s(Rs)}function en(Ge){fi(Ge.expression),Ge.kind===253&&(Qe=!0,ue&&xi(ue,M)),M=it,De=!0}function ct(Ge){for(let Ht=Ne;Ht;Ht=Ht.next)if(Ht.name===Ge)return Ht}function rn(Ge,Ht,En){let Rs=Ge.kind===252?Ht:En;Rs&&(xi(Rs,M),M=it,De=!0)}function St(Ge){if(fi(Ge.label),Ge.label){let Ht=ct(Ge.label.escapedText);Ht&&(Ht.referenced=!0,rn(Ge,Ht.breakTarget,Ht.continueTarget))}else rn(Ge,te,re)}function br(Ge){let Ht=ue,En=Be,Rs=gi(),_c=gi(),Iu=gi();if(Ge.finallyBlock&&(ue=_c),xi(Iu,M),Be=Iu,fi(Ge.tryBlock),xi(Rs,M),Ge.catchClause&&(M=_s(Iu),Iu=gi(),xi(Iu,M),Be=Iu,fi(Ge.catchClause),xi(Rs,M)),ue=Ht,Be=En,Ge.finallyBlock){let Wl=gi();Wl.antecedent=vi(vi(Rs.antecedent,Iu.antecedent),_c.antecedent),M=Wl,fi(Ge.finallyBlock),M.flags&1?M=it:(ue&&_c.antecedent&&xi(ue,xs(Wl,_c.antecedent,M)),Be&&Iu.antecedent&&xi(Be,xs(Wl,Iu.antecedent,M)),M=Rs.antecedent?xs(Wl,Rs.antecedent,M):it)}else M=_s(Rs)}function Qt(Ge){let Ht=gi();fi(Ge.expression);let En=te,Rs=Fe;te=Ht,Fe=M,fi(Ge.caseBlock),xi(Ht,M);let _c=X(Ge.caseBlock.clauses,Iu=>Iu.kind===297);Ge.possiblyExhaustive=!_c&&!Ht.antecedent,_c||xi(Ht,Vl(Fe,Ge,0,0)),te=En,Fe=Rs,M=_s(Ht)}function _r(Ge){let Ht=Ge.clauses,En=Ge.parent.expression.kind===112||Yr(Ge.parent.expression),Rs=it;for(let _c=0;_cmC(En)||tf(En))}function hu(Ge){Ge.flags&33554432&&!ri(Ge)?Ge.flags|=128:Ge.flags&=-129}function JA(Ge){if(hu(Ge),Yf(Ge))if(ba(Ge,32)&&gr(Ge,Z.export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible),P$(Ge))Qd(Ge);else{let Ht;if(Ge.name.kind===11){let{text:Rs}=Ge.name;Ht=t4(Rs),Ht===void 0&&gr(Ge.name,Z.Pattern_0_can_have_at_most_one_Asterisk_character,Rs)}let En=Da(Ge,512,110735);n.patternAmbientModules=Hr(n.patternAmbientModules,Ht&&!Xa(Ht)?{pattern:Ht,symbol:En}:void 0)}else{let Ht=Qd(Ge);if(Ht!==0){let{symbol:En}=Ge;En.constEnumOnlyModule=!(En.flags&304)&&Ht===2&&En.constEnumOnlyModule!==!1}}}function Qd(Ge){let Ht=FG(Ge),En=Ht!==0;return Da(Ge,En?512:1024,En?110735:0),Ht}function kd(Ge){let Ht=ht(131072,Kt(Ge));Et(Ht,Ge,131072);let En=ht(2048,"__type");Et(En,Ge,2048),En.members=Du(),En.members.set(Ht.escapedName,Ht)}function Tl(Ge){return zc(Ge,4096,"__object")}function lg(Ge){return zc(Ge,4096,"__jsxAttributes")}function mf(Ge,Ht,En){return Da(Ge,Ht,En)}function zc(Ge,Ht,En){let Rs=ht(Ht,En);return Ht&106508&&(Rs.parent=I.symbol),Et(Rs,Ge,Ht),Rs}function Zc(Ge,Ht,En){switch(b.kind){case 267:kt(Ge,Ht,En);break;case 307:if(ia(I)){kt(Ge,Ht,En);break}default:w.assertNode(b,Tv),b.locals||(b.locals=Du(),oa(b)),Lt(b.locals,void 0,Ge,Ht,En)}}function Km(){if(!N)return;let Ge=I,Ht=R,En=b,Rs=d,_c=M;for(let Iu of N){let Wl=Iu.parent.parent;I=N8(Wl)||n,b=S2(Wl)||n,M=nD(2,void 0,void 0),d=Iu,fi(Iu.typeExpression);let Eu=vl(Iu);if((Whe(Iu)||!Iu.fullName)&&Eu&&Ree(Eu.parent)){let od=LB(Eu.parent);if(od){Y2(n.symbol,Eu.parent,od,!!Si(Eu,uI=>Io(uI)&&uI.name.escapedText==="prototype"),!1);let sA=I;switch(oee(Eu.parent)){case 1:case 2:ia(n)?I=n:I=void 0;break;case 4:I=Eu.parent.expression;break;case 3:I=Eu.parent.expression.name;break;case 5:I=fY(n,Eu.parent.expression)?n:Io(Eu.parent.expression)?Eu.parent.expression.name:Eu.parent.expression;break;case 0:return w.fail("Shouldn't have detected typedef or enum on non-assignment declaration")}I&&kt(Iu,524288,788968),I=sA}}else Whe(Iu)||!Iu.fullName||Iu.fullName.kind===80?(d=Iu.parent,Zc(Iu,524288,788968)):fi(Iu.fullName)}I=Ge,R=Ht,b=En,d=Rs,M=_c}function Df(){if(P===void 0)return;let Ge=I,Ht=R,En=b,Rs=d,_c=M;for(let Iu of P){let Wl=eV(Iu),Eu=Wl?N8(Wl):void 0,od=Wl?S2(Wl):void 0;I=Eu||n,b=od||n,M=nD(2,void 0,void 0),d=Iu,fi(Iu.importClause)}I=Ge,R=Ht,b=En,d=Rs,M=_c}function f0(Ge){if(!n.parseDiagnostics.length&&!(Ge.flags&33554432)&&!(Ge.flags&16777216)&&!zRe(Ge)){let Ht=VR(Ge);if(Ht===void 0)return;Le&&Ht>=119&&Ht<=127?n.bindDiagnostics.push(wt(Ge,xI(Ge),xd(Ge))):Ht===135?mm(n)&&ace(Ge)?n.bindDiagnostics.push(wt(Ge,Z.Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module,xd(Ge))):Ge.flags&65536&&n.bindDiagnostics.push(wt(Ge,Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,xd(Ge))):Ht===127&&Ge.flags&16384&&n.bindDiagnostics.push(wt(Ge,Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,xd(Ge)))}}function xI(Ge){return Um(Ge)?Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode:n.externalModuleIndicator?Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode:Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode}function s_(Ge){Ge.escapedText==="#constructor"&&(n.parseDiagnostics.length||n.bindDiagnostics.push(wt(Ge,Z.constructor_is_a_reserved_word,xd(Ge))))}function Jg(Ge){Le&&T_(Ge.left)&&qR(Ge.operatorToken.kind)&&di(Ge,Ge.left)}function hf(Ge){Le&&Ge.variableDeclaration&&di(Ge,Ge.variableDeclaration.name)}function Yd(Ge){if(Le&&Ge.expression.kind===80){let Ht=Qi(n,Ge.expression);n.bindDiagnostics.push(Im(n,Ht.start,Ht.length,Z.delete_cannot_be_called_on_an_identifier_in_strict_mode))}}function zA(Ge){return sr(Ge)&&(Ge.escapedText==="eval"||Ge.escapedText==="arguments")}function di(Ge,Ht){if(Ht&&Ht.kind===80){let En=Ht;if(zA(En)){let Rs=Qi(n,Ht);n.bindDiagnostics.push(Im(n,Rs.start,Rs.length,lI(Ge),ao(En)))}}}function lI(Ge){return Um(Ge)?Z.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:n.externalModuleIndicator?Z.Invalid_use_of_0_Modules_are_automatically_in_strict_mode:Z.Invalid_use_of_0_in_strict_mode}function J0(Ge){Le&&!(Ge.flags&33554432)&&di(Ge,Ge.name)}function U0(Ge){return Um(Ge)?Z.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definitions_are_automatically_in_strict_mode:n.externalModuleIndicator?Z.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_automatically_in_strict_mode:Z.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5}function Yb(Ge){if(u<2&&b.kind!==307&&b.kind!==267&&!N3(b)){let Ht=Qi(n,Ge);n.bindDiagnostics.push(Im(n,Ht.start,Ht.length,U0(Ge)))}}function rf(Ge){Le&&di(Ge,Ge.operand)}function kI(Ge){Le&&(Ge.operator===46||Ge.operator===47)&&di(Ge,Ge.operand)}function yt(Ge){Le&&gr(Ge,Z.with_statements_are_not_allowed_in_strict_mode)}function tt(Ge){Le&&iA(c)>=2&&(bX(Ge.statement)||Rp(Ge.statement))&&gr(Ge.label,Z.A_label_is_not_allowed_here)}function gr(Ge,Ht,...En){let Rs=Rr(n,Ge.pos);n.bindDiagnostics.push(Im(n,Rs.start,Rs.length,Ht,...En))}function mn(Ge,Ht,En){Ri(Ge,Ht,Ht,En)}function Ri(Ge,Ht,En,Rs){Xo(Ge,{pos:Sx(Ht,n),end:En.end},Rs)}function Xo(Ge,Ht,En){let Rs=Im(n,Ht.pos,Ht.end-Ht.pos,En);Ge?n.bindDiagnostics.push(Rs):n.bindSuggestionDiagnostics=Hr(n.bindSuggestionDiagnostics,{...Rs,category:2})}function fi(Ge){if(!Ge)return;kA(Ge,d),Mi&&(Ge.tracingPath=n.path);let Ht=Le;if(Wg(Ge),Ge.kind>165){let En=d;d=Ge;let Rs=O8e(Ge);Rs===0?Vr(Ge):Dr(Ge,Rs),d=En}else{let En=d;Ge.kind===1&&(d=Ge),Jo(Ge),d=En}Le=Ht}function Jo(Ge){if(hy(Ge))if(so(Ge))for(let Ht of Ge.jsDoc)fi(Ht);else for(let Ht of Ge.jsDoc)kA(Ht,Ge),_N(Ht,!1)}function hc(Ge){if(!Le)for(let Ht of Ge){if(!QI(Ht))return;if(ic(Ht)){Le=!0;return}}}function ic(Ge){let Ht=pG(n,Ge.expression);return Ht==='"use strict"'||Ht==="'use strict'"}function Wg(Ge){switch(Ge.kind){case 80:if(Ge.flags&4096){let Wl=Ge.parent;for(;Wl&&!w2(Wl);)Wl=Wl.parent;Zc(Wl,524288,788968);break}case 110:return M&&(tn(Ge)||d.kind===304)&&(Ge.flowNode=M),f0(Ge);case 166:M&&uce(Ge)&&(Ge.flowNode=M);break;case 236:case 108:Ge.flowNode=M;break;case 81:return s_(Ge);case 211:case 212:let Ht=Ge;M&&pr(Ht)&&(Ht.flowNode=M),QRe(Ht)&&XI(Ht),so(Ht)&&n.commonJsModuleIndicator&&AN(Ht)&&!Rke(b,"module")&&Lt(n.locals,void 0,Ht.expression,134217729,111550);break;case 226:switch(CI(Ge)){case 1:qt(Ge);break;case 2:Fn(Ge);break;case 3:Hd(Ge.left,Ge);break;case 6:bm(Ge);break;case 4:Nl(Ge);break;case 5:let Wl=Ge.left.expression;if(so(Ge)&&sr(Wl)){let Eu=Rke(b,Wl.escapedText);if(cce(Eu?.valueDeclaration)){Nl(Ge);break}}Xb(Ge);break;case 0:break;default:w.fail("Unknown binary expression special property assignment kind")}return Jg(Ge);case 299:return hf(Ge);case 220:return Yd(Ge);case 225:return rf(Ge);case 224:return kI(Ge);case 254:return yt(Ge);case 256:return tt(Ge);case 197:V=!0;return;case 182:break;case 168:return Ls(Ge);case 169:return rt(Ge);case 260:return X2(Ge);case 208:return Ge.flowNode=M,X2(Ge);case 172:case 171:return nf(Ge);case 303:case 304:return Jn(Ge,4,0);case 306:return Jn(Ge,8,900095);case 179:case 180:case 181:return Da(Ge,131072,0);case 174:case 173:return Jn(Ge,8192|(Ge.questionToken?16777216:0),TB(Ge)?0:103359);case 262:return qr(Ge);case 176:return Da(Ge,16384,0);case 177:return Jn(Ge,32768,46015);case 178:return Jn(Ge,65536,78783);case 184:case 317:case 323:case 185:return kd(Ge);case 187:case 322:case 200:return zC(Ge);case 332:return Mn(Ge);case 210:return Tl(Ge);case 218:case 219:return Qn(Ge);case 213:switch(CI(Ge)){case 7:return hC(Ge);case 8:return Q2(Ge);case 9:return rp(Ge);case 0:break;default:return w.fail("Unknown call expression assignment declaration kind")}so(Ge)&&cD(Ge);break;case 231:case 263:return Le=!0,Jb(Ge);case 264:return Zc(Ge,64,788872);case 265:return Zc(Ge,524288,788968);case 266:return ZN(Ge);case 267:return JA(Ge);case 292:return lg(Ge);case 291:return mf(Ge,4,0);case 271:case 274:case 276:case 281:return Da(Ge,2097152,2097152);case 270:return Fm(Ge);case 273:return GI(Ge);case 278:return Hb(Ge);case 277:return sf(Ge);case 307:return hc(Ge.statements),Xf();case 241:if(!N3(Ge.parent))return;case 268:return hc(Ge.statements);case 341:if(Ge.parent.kind===323)return rt(Ge);if(Ge.parent.kind!==322)break;case 348:let _c=Ge,Iu=_c.isBracketed||_c.typeExpression&&_c.typeExpression.type.kind===316?16777220:4;return Da(_c,Iu,0);case 346:case 338:case 340:return(N||(N=[])).push(Ge);case 339:return fi(Ge.typeExpression);case 351:return(P||(P=[])).push(Ge)}}function nf(Ge){let Ht=t_(Ge),En=Ht?98304:4,Rs=Ht?13247:0;return Jn(Ge,En|(Ge.questionToken?16777216:0),Rs)}function zC(Ge){return zc(Ge,2048,"__type")}function Xf(){if(hu(n),mm(n))Gm();else if(Ia(n)){Gm();let Ge=n.symbol;Lt(n.symbol.exports,n.symbol,n,4,-1),n.symbol=Ge}}function Gm(){zc(n,512,`"${o0(n.fileName)}"`)}function sf(Ge){if(!I.symbol||!I.symbol.exports)zc(Ge,111551,Kt(Ge));else{let Ht=H3(Ge)?2097152:4,En=Lt(I.symbol.exports,I.symbol,Ge,Ht,-1);Ge.isExportEquals&&cee(En,Ge)}}function Fm(Ge){lr(Ge.modifiers)&&n.bindDiagnostics.push(wt(Ge,Z.Modifiers_cannot_appear_here));let Ht=Gc(Ge.parent)?mm(Ge.parent)?Ge.parent.isDeclarationFile?void 0:Z.Global_module_exports_may_only_appear_in_declaration_files:Z.Global_module_exports_may_only_appear_in_module_files:Z.Global_module_exports_may_only_appear_at_top_level;Ht?n.bindDiagnostics.push(wt(Ge,Ht)):(n.symbol.globalExports=n.symbol.globalExports||Du(),Lt(n.symbol.globalExports,n.symbol,Ge,2097152,2097152))}function Hb(Ge){!I.symbol||!I.symbol.exports?zc(Ge,8388608,Kt(Ge)):Ge.exportClause?rD(Ge.exportClause)&&(kA(Ge.exportClause,Ge),Lt(I.symbol.exports,I.symbol,Ge.exportClause,2097152,2097152)):Lt(I.symbol.exports,I.symbol,Ge,8388608,0)}function GI(Ge){Ge.name&&Da(Ge,2097152,2097152)}function qC(Ge){return n.externalModuleIndicator&&n.externalModuleIndicator!==!0?!1:(n.commonJsModuleIndicator||(n.commonJsModuleIndicator=Ge,n.externalModuleIndicator||Gm()),!0)}function Q2(Ge){if(!qC(Ge))return;let Ht=$C(Ge.arguments[0],void 0,(En,Rs)=>(Rs&&Et(Rs,En,67110400),Rs));Ht&&Lt(Ht.exports,Ht,Ge,1048580,0)}function qt(Ge){if(!qC(Ge))return;let Ht=$C(Ge.left.expression,void 0,(En,Rs)=>(Rs&&Et(Rs,En,67110400),Rs));if(Ht){let Rs=Iee(Ge.right)&&(O3(Ge.left.expression)||AN(Ge.left.expression))?2097152:1048580;kA(Ge.left,Ge),Lt(Ht.exports,Ht,Ge.left,Rs,0)}}function Fn(Ge){if(!qC(Ge))return;let Ht=IG(Ge.right);if(xee(Ht)||I===n&&fY(n,Ht))return;if(tu(Ht)&&he(Ht.properties,G_)){X(Ht.properties,Bs);return}let En=H3(Ge)?2097152:1049092,Rs=Lt(n.symbol.exports,n.symbol,Ge,En|67108864,0);cee(Rs,Ge)}function Bs(Ge){Lt(n.symbol.exports,n.symbol,Ge,69206016,0)}function Nl(Ge){if(w.assert(so(Ge)),no(Ge)&&Io(Ge.left)&&kc(Ge.left.name)||Io(Ge)&&kc(Ge.name))return;let En=r0(Ge,!1,!1);switch(En.kind){case 262:case 218:let Rs=En.symbol;if(no(En.parent)&&En.parent.operatorToken.kind===64){let Wl=En.parent.left;$9(Wl)&&yG(Wl.expression)&&(Rs=gb(Wl.expression.expression,h))}Rs&&Rs.valueDeclaration&&(Rs.members=Rs.members||Du(),jR(Ge)?vA(Ge,Rs,Rs.members):Lt(Rs.members,Rs,Ge,67108868,0),Et(Rs,Rs.valueDeclaration,32));break;case 176:case 172:case 174:case 177:case 178:case 175:let _c=En.parent,Iu=$u(En)?_c.symbol.exports:_c.symbol.members;jR(Ge)?vA(Ge,_c.symbol,Iu):Lt(Iu,_c.symbol,Ge,67108868,0,!0);break;case 307:if(jR(Ge))break;En.commonJsModuleIndicator?Lt(En.symbol.exports,En.symbol,Ge,1048580,0):Da(Ge,1,111550);break;case 267:break;default:w.failBadSyntaxKind(En)}}function vA(Ge,Ht,En){Lt(En,Ht,Ge,4,0,!0,!0),PA(Ge,Ht)}function PA(Ge,Ht){Ht&&(Ht.assignmentDeclarationMembers||(Ht.assignmentDeclarationMembers=new Map)).set(sd(Ge),Ge)}function XI(Ge){Ge.expression.kind===110?Nl(Ge):$9(Ge)&&Ge.parent.parent.kind===307&&(yG(Ge.expression)?Hd(Ge,Ge.parent):dT(Ge))}function bm(Ge){kA(Ge.left,Ge),kA(Ge.right,Ge),H2(Ge.left.expression,Ge.left,!1,!0)}function rp(Ge){let Ht=gb(Ge.arguments[0].expression);Ht&&Ht.valueDeclaration&&Et(Ht,Ht.valueDeclaration,32),ub(Ge,Ht,!0)}function Hd(Ge,Ht){let En=Ge.expression,Rs=En.expression;kA(Rs,En),kA(En,Ge),kA(Ge,Ht),H2(Rs,Ge,!0,!0)}function hC(Ge){let Ht=gb(Ge.arguments[0]),En=Ge.parent.parent.kind===307;Ht=Y2(Ht,Ge.arguments[0],En,!1,!1),ub(Ge,Ht,!1)}function Xb(Ge){var Ht;let En=gb(Ge.left.expression,b)||gb(Ge.left.expression,I);if(!so(Ge)&&!YRe(En))return;let Rs=QQ(Ge.left);if(!(sr(Rs)&&((Ht=Rke(I,Rs.escapedText))==null?void 0:Ht.flags)&2097152))if(kA(Ge.left,Ge),kA(Ge.right,Ge),sr(Ge.left.expression)&&I===n&&fY(n,Ge.left.expression))qt(Ge);else if(jR(Ge)){zc(Ge,67108868,"__computed");let _c=Y2(En,Ge.left.expression,LB(Ge.left),!1,!1);PA(Ge,_c)}else dT(ps(Ge.left,Q3))}function dT(Ge){w.assert(!sr(Ge)),kA(Ge.expression,Ge),H2(Ge.expression,Ge,!1,!1)}function Y2(Ge,Ht,En,Rs,_c){return Ge?.flags&2097152||(En&&!Rs&&(Ge=$C(Ht,Ge,(Eu,od,sA)=>{if(od)return Et(od,Eu,67110400),od;{let uI=sA?sA.exports:n.jsGlobalAugmentations||(n.jsGlobalAugmentations=Du());return Lt(uI,sA,Eu,67110400,110735)}})),_c&&Ge&&Ge.valueDeclaration&&Et(Ge,Ge.valueDeclaration,32)),Ge}function ub(Ge,Ht,En){if(!Ht||!oD(Ht))return;let Rs=En?Ht.members||(Ht.members=Du()):Ht.exports||(Ht.exports=Du()),_c=0,Iu=0;dd(RQ(Ge))?(_c=8192,Iu=103359):cu(Ge)&&M3(Ge)&&(lr(Ge.arguments[2].properties,Wl=>{let Eu=vl(Wl);return!!Eu&&sr(Eu)&&ao(Eu)==="set"})&&(_c|=65540,Iu|=78783),lr(Ge.arguments[2].properties,Wl=>{let Eu=vl(Wl);return!!Eu&&sr(Eu)&&ao(Eu)==="get"})&&(_c|=32772,Iu|=46015)),_c===0&&(_c=4,Iu=0),Lt(Rs,Ht,Ge,_c|67108864,Iu&-67108865)}function LB(Ge){return no(Ge.parent)?aD(Ge.parent).parent.kind===307:Ge.parent.parent.kind===307}function H2(Ge,Ht,En,Rs){let _c=gb(Ge,b)||gb(Ge,I),Iu=LB(Ht);_c=Y2(_c,Ht.expression,Iu,En,Rs),ub(Ht,_c,En)}function oD(Ge){if(Ge.flags&1072)return!0;let Ht=Ge.valueDeclaration;if(Ht&&cu(Ht))return!!RQ(Ht);let En=Ht?zs(Ht)?Ht.initializer:no(Ht)?Ht.right:Io(Ht)&&no(Ht.parent)?Ht.parent.right:void 0:void 0;if(En=En&&IG(En),En){let Rs=yG(zs(Ht)?Ht.name:no(Ht)?Ht.left:Ht);return!!BZ(no(En)&&(En.operatorToken.kind===57||En.operatorToken.kind===61)?En.right:En,Rs)}return!1}function aD(Ge){for(;no(Ge.parent);)Ge=Ge.parent;return Ge.parent}function gb(Ge,Ht=I){if(sr(Ge))return Rke(Ht,Ge.escapedText);{let En=gb(Ge.expression);return En&&En.exports&&En.exports.get(UR(Ge))}}function $C(Ge,Ht,En){if(fY(n,Ge))return n.symbol;if(sr(Ge))return En(Ge,gb(Ge),Ht);{let Rs=$C(Ge.expression,Ht,En),_c=see(Ge);return kc(_c)&&w.fail("unexpected PrivateIdentifier"),En(_c,Rs&&Rs.exports&&Rs.exports.get(UR(Ge)),Rs)}}function cD(Ge){!n.commonJsModuleIndicator&&Q0(Ge,!1)&&qC(Ge)}function Jb(Ge){if(Ge.kind===263)Zc(Ge,32,899503);else{let _c=Ge.name?Ge.name.escapedText:"__class";zc(Ge,32,_c),Ge.name&&qe.add(Ge.name.escapedText)}let{symbol:Ht}=Ge,En=ht(4194308,"prototype"),Rs=Ht.exports.get(En.escapedName);Rs&&(Ge.name&&kA(Ge.name,Ge),n.bindDiagnostics.push(wt(Rs.declarations[0],Z.Duplicate_identifier_0,df(En)))),Ht.exports.set(En.escapedName,En),En.parent=Ht}function ZN(Ge){return Ac(Ge)?Zc(Ge,128,899967):Zc(Ge,256,899327)}function X2(Ge){if(Le&&di(Ge,Ge.name),!pu(Ge.name)){let Ht=Ge.kind===260?Ge:Ge.parent.parent;so(Ge)&&q9(Ht)&&!_x(Ge)&&!(Nh(Ge)&32)?Da(Ge,2097152,2097152):L$(Ge)?Zc(Ge,2,111551):wZ(Ge)?Da(Ge,1,111551):Da(Ge,1,111550)}}function rt(Ge){if(!(Ge.kind===341&&I.kind!==323)&&(Le&&!(Ge.flags&33554432)&&di(Ge,Ge.name),pu(Ge.name)?zc(Ge,1,"__"+Ge.parent.parameters.indexOf(Ge)):Da(Ge,1,111551),Zn(Ge,Ge.parent))){let Ht=Ge.parent.parent;Lt(Ht.symbol.members,Ht.symbol,Ge,4|(Ge.questionToken?16777216:0),0)}}function qr(Ge){!n.isDeclarationFile&&!(Ge.flags&33554432)&&K8(Ge)&&(lt|=4096),J0(Ge),Le?(Yb(Ge),Zc(Ge,16,110991)):Da(Ge,16,110991)}function Qn(Ge){!n.isDeclarationFile&&!(Ge.flags&33554432)&&K8(Ge)&&(lt|=4096),M&&(Ge.flowNode=M),J0(Ge);let Ht=Ge.name?Ge.name.escapedText:"__function";return zc(Ge,16,Ht)}function Jn(Ge,Ht,En){return!n.isDeclarationFile&&!(Ge.flags&33554432)&&K8(Ge)&&(lt|=4096),M&&J$(Ge)&&(Ge.flowNode=M),jR(Ge)?zc(Ge,Ht,"__computed"):Da(Ge,Ht,En)}function cs(Ge){let Ht=Si(Ge,En=>En.parent&&Ei(En.parent)&&En.parent.extendsType===En);return Ht&&Ht.parent}function Ls(Ge){if(Zv(Ge.parent)){let Ht=Ice(Ge.parent);Ht?(w.assertNode(Ht,Tv),Ht.locals??(Ht.locals=Du()),Lt(Ht.locals,void 0,Ge,262144,526824)):Da(Ge,262144,526824)}else if(Ge.parent.kind===195){let Ht=cs(Ge.parent);Ht?(w.assertNode(Ht,Tv),Ht.locals??(Ht.locals=Du()),Lt(Ht.locals,void 0,Ge,262144,526824)):zc(Ge,262144,Kt(Ge))}else Da(Ge,262144,526824)}function $o(Ge){let Ht=FG(Ge);return Ht===1||Ht===2&&uV(c)}function Ua(Ge){if(!(M.flags&1))return!1;if(M===it&&(EX(Ge)&&Ge.kind!==242||Ge.kind===263||Ge.kind===267&&$o(Ge))&&(M=It,!c.allowUnreachableCode)){let En=LDe(c)&&!(Ge.flags&33554432)&&(!Rp(Ge)||!!(qy(Ge.declarationList)&7)||Ge.declarationList.declarations.some(Rs=>!!Rs.initializer));r6i(Ge,(Rs,_c)=>Ri(En,Rs,_c,Z.Unreachable_code_detected))}return!0}}function r6i(n,c){if(Ic(n)&&Ykr(n)&&mc(n.parent)){let{statements:u}=n.parent,d=dhe(u,n);ga(d,Ykr,(I,h)=>c(d[I],d[h-1]))}else c(n,n)}function Ykr(n){return!mp(n)&&!n6i(n)&&!tP(n)&&!(Rp(n)&&!(qy(n)&7)&&n.declarationList.declarations.some(c=>!c.initializer))}function n6i(n){switch(n.kind){case 264:case 265:return!0;case 267:return FG(n)!==1;case 266:return ba(n,4096);default:return!1}}function fY(n,c){let u=0,d=NA();for(d.enqueue(c);!d.isEmpty()&&u<100;){if(u++,c=d.dequeue(),O3(c)||AN(c))return!0;if(sr(c)){let I=Rke(n,c.escapedText);if(I&&I.valueDeclaration&&zs(I.valueDeclaration)&&I.valueDeclaration.initializer){let h=I.valueDeclaration.initializer;d.enqueue(h),fm(h,!0)&&(d.enqueue(h.left),d.enqueue(h.right))}}}return!1}function O8e(n){switch(n.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(J$(n))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 n.initializer?4:0;case 299:case 248:case 249:case 250:case 269:return 34;case 241:return $l(n.parent)||$p(n.parent)?0:34}return 0}function Rke(n,c){var u,d,I,h;let b=(d=(u=eo(n,Tv))==null?void 0:u.locals)==null?void 0:d.get(c);if(b)return b.exportSymbol??b;if(Gc(n)&&n.jsGlobalAugmentations&&n.jsGlobalAugmentations.has(c))return n.jsGlobalAugmentations.get(c);if(B2(n))return(h=(I=n.symbol)==null?void 0:I.exports)==null?void 0:h.get(c)}function TDt(n,c,u,d,I,h,b,R,N,V){return P;function P(M=()=>!0){let te=[],re=[];return{walkType:st=>{try{return ue(st),{visitedTypes:us(te),visitedSymbols:us(re)}}finally{Ur(te),Ur(re)}},walkSymbol:st=>{try{return je(st),{visitedTypes:us(te),visitedSymbols:us(re)}}finally{Ur(te),Ur(re)}}};function ue(st){if(!(!st||te[st.id]||(te[st.id]=st,je(st.symbol)))){if(st.flags&524288){let qe=st,it=qe.objectFlags;it&4&&Ae(st),it&32&&Qe(st),it&3&<(st),it&24&&Le(qe)}st.flags&262144&&de(st),st.flags&3145728&&Be(st),st.flags&4194304&&Fe(st),st.flags&8388608&&Ne(st)}}function Ae(st){ue(st.target),X(V(st),ue)}function de(st){ue(R(st))}function Be(st){X(st.types,ue)}function Fe(st){ue(st.type)}function Ne(st){ue(st.objectType),ue(st.indexType),ue(st.constraint)}function Qe(st){ue(st.typeParameter),ue(st.constraintType),ue(st.templateType),ue(st.modifiersType)}function De(st){let nt=c(st);nt&&ue(nt.type),X(st.typeParameters,ue);for(let qe of st.parameters)je(qe);ue(n(st)),ue(u(st))}function lt(st){Le(st),X(st.typeParameters,ue),X(d(st),ue),ue(st.thisType)}function Le(st){let nt=I(st);for(let qe of nt.indexInfos)ue(qe.keyType),ue(qe.type);for(let qe of nt.callSignatures)De(qe);for(let qe of nt.constructSignatures)De(qe);for(let qe of nt.properties)je(qe)}function je(st){if(!st)return!1;let nt=kg(st);if(re[nt])return!1;if(re[nt]=st,!M(st))return!0;let qe=h(st);return ue(qe),st.exports&&st.exports.forEach(je),X(st.declarations,it=>{if(it.type&&it.type.kind===186){let It=it.type,dt=b(N(It.exprName));je(dt)}}),!1}}}var uP={};o(uP,{RelativePreference:()=>Hkr,countPathComponents:()=>xke,forEachFileNameOfModule:()=>qkr,getLocalModuleSpecifierBetweenFileNames:()=>a6i,getModuleSpecifier:()=>Xkr,getModuleSpecifierPreferences:()=>zle,getModuleSpecifiers:()=>Kkr,getModuleSpecifiersWithCacheInfo:()=>jkr,getNodeModulesPackageName:()=>s6i,tryGetJSExtensionForFile:()=>kDt,tryGetModuleSpecifiersFromCache:()=>o6i,tryGetRealFileNameForNonJsDeclarationFileName:()=>nGr,updateModuleSpecifier:()=>i6i});var Hkr=(n=>(n[n.Relative=0]="Relative",n[n.NonRelative=1]="NonRelative",n[n.Shortest=2]="Shortest",n[n.ExternalNonRelative=3]="ExternalNonRelative",n))(Hkr||{});function zle({importModuleSpecifierPreference:n,importModuleSpecifierEnding:c},u,d,I){let h=b();return{relativePreference:I!==void 0?Jl(I)?0:1:n==="relative"?0:n==="non-relative"?1:n==="project-relative"?3:2,getAllowedEndingsInPreferredOrder:R=>{let N=R!==d.impliedNodeFormat?b(R):h;if((R??d.impliedNodeFormat)===99)return Ete(u,d.fileName)?[3,2]:[2];if(s0(u)===1)return N===2?[2,1]:[1,2];let V=Ete(u,d.fileName);switch(N){case 2:return V?[2,3,0,1]:[2,0,1];case 3:return[3,0,2,1];case 1:return V?[1,0,3,2]:[1,0,2];case 0:return V?[0,1,3,2]:[0,1,2];default:w.assertNever(N)}}};function b(R){if(I!==void 0){if(mN(I))return 2;if(pl(I,"/index"))return 1}return UDe(c,R??d.impliedNodeFormat,u,JR(d)?d:void 0)}}function i6i(n,c,u,d,I,h,b={}){let R=Jkr(n,c,u,d,I,zle({},n,c,h),{},b);if(R!==h)return R}function Xkr(n,c,u,d,I,h={}){return Jkr(n,c,u,d,I,zle({},n,c),{},h)}function s6i(n,c,u,d,I,h={}){let b=Dke(c.fileName,d),R=$kr(b,u,d,I,n,h);return le(R,N=>DDt(N,b,c,d,n,I,!0,h.overrideImportMode))}function Jkr(n,c,u,d,I,h,b,R={}){let N=Dke(u,I),V=$kr(N,d,I,b,n,R);return le(V,P=>DDt(P,N,c,I,n,b,void 0,R.overrideImportMode))||NDt(d,N,n,I,R.overrideImportMode||c.impliedNodeFormat,h)}function o6i(n,c,u,d,I={}){let h=Ukr(n,c,u,d,I);return h[1]&&{kind:h[0],moduleSpecifiers:h[1],computedWithoutCache:!1}}function Ukr(n,c,u,d,I={}){var h;let b=b8(n);if(!b)return v;let R=(h=u.getModuleSpecifierCache)==null?void 0:h.call(u),N=R?.get(c.path,b.path,d,I);return[N?.kind,N?.moduleSpecifiers,b,N?.modulePaths,R]}function Kkr(n,c,u,d,I,h,b={}){return jkr(n,c,u,d,I,h,b,!1).moduleSpecifiers}function jkr(n,c,u,d,I,h,b={},R){let N=!1,V=A6i(n,c);if(V)return{kind:"ambient",moduleSpecifiers:[V],computedWithoutCache:N};let[P,M,te,re,ue]=Ukr(n,d,I,h,b);if(M)return{kind:P,moduleSpecifiers:M,computedWithoutCache:N};if(!te)return{kind:void 0,moduleSpecifiers:v,computedWithoutCache:N};N=!0,re||(re=eGr(Dke(d.fileName,I),te.originalFileName,I,u,b));let Ae=c6i(re,u,d,I,h,b,R);return ue?.set(d.path,te.path,h,b,Ae.kind,re,Ae.moduleSpecifiers),Ae}function a6i(n,c,u,d,I={}){let h=Dke(n.fileName,d),b=I.overrideImportMode??n.impliedNodeFormat;return NDt(c,h,u,d,b,zle({},u,n))}function c6i(n,c,u,d,I,h={},b){let R=Dke(u.fileName,d),N=zle(I,c,u),V=JR(u)&&X(n,Ae=>X(d.getFileIncludeReasons().get(gA(Ae.path,d.getCurrentDirectory(),R.getCanonicalFileName)),de=>{if(de.kind!==3||de.file!==u.path||u.impliedNodeFormat&&u.impliedNodeFormat!==Jxt(u,de.index,c))return;let Be=B_e(u,de.index).text;return N.relativePreference!==1||!Op(Be)?Be:void 0}));if(V)return{kind:void 0,moduleSpecifiers:[V],computedWithoutCache:!0};let P=lr(n,Ae=>Ae.isInNodeModules),M,te,re,ue;for(let Ae of n){let de=Ae.isInNodeModules?DDt(Ae,R,u,d,c,I,void 0,h.overrideImportMode):void 0;if(M=Hr(M,de),de&&Ae.isRedirect)return{kind:"node_modules",moduleSpecifiers:M,computedWithoutCache:!0};if(!de){let Be=NDt(Ae.path,R,c,d,h.overrideImportMode||u.impliedNodeFormat,N,Ae.isRedirect);if(!Be)continue;Ae.isRedirect?re=Hr(re,Be):W0(Be)?lP(Be)?ue=Hr(ue,Be):te=Hr(te,Be):(b||!P||Ae.isInNodeModules)&&(ue=Hr(ue,Be))}}return te?.length?{kind:"paths",moduleSpecifiers:te,computedWithoutCache:!0}:re?.length?{kind:"redirect",moduleSpecifiers:re,computedWithoutCache:!0}:M?.length?{kind:"node_modules",moduleSpecifiers:M,computedWithoutCache:!0}:{kind:"relative",moduleSpecifiers:w.checkDefined(ue),computedWithoutCache:!0}}function Dke(n,c){n=Oc(n,c.getCurrentDirectory());let u=tA(c.useCaseSensitiveFileNames?c.useCaseSensitiveFileNames():!0),d=aa(n);return{getCanonicalFileName:u,importingSourceFileName:n,sourceDirectory:d,canonicalSourceDirectory:u(d)}}function NDt(n,c,u,d,I,{getAllowedEndingsInPreferredOrder:h,relativePreference:b},R){let{baseUrl:N,paths:V,rootDirs:P}=u;if(R&&!V)return;let{sourceDirectory:M,canonicalSourceDirectory:te,getCanonicalFileName:re}=c,ue=h(I),Ae=P&&f6i(P,n,M,re,ue,u)||c_e(Ky(fp(M,n,re)),ue,u);if(!N&&!V&&!CN(u)||b===0)return R?void 0:Ae;let de=Oc(wce(u,d)||N,d.getCurrentDirectory()),Be=iGr(n,de,re);if(!Be)return R?void 0:Ae;let Fe=R?void 0:p6i(n,M,u,d,I),Ne=R||Fe===void 0?V&&tGr(Be,V,ue,d,u):void 0;if(R)return Ne;let Qe=Fe??(Ne===void 0&&N!==void 0?c_e(Be,ue,u):Ne);if(!Qe)return Ae;if(b===1&&!Op(Qe))return Qe;if(b===3&&!Op(Qe)){let De=u.configFilePath?gA(aa(u.configFilePath),d.getCurrentDirectory(),c.getCanonicalFileName):c.getCanonicalFileName(d.getCurrentDirectory()),lt=gA(n,De,re),Le=uc(te,De),je=uc(lt,De);if(Le&&!je||!Le&&je)return Qe;let st=RDt(d,aa(lt)),nt=RDt(d,M),qe=!UX(d);return l6i(st,nt,qe)?Ae:Qe}return sGr(Qe)||xke(Ae)n.fileExists(xo(u,"package.json"))?u:void 0)}function qkr(n,c,u,d,I){var h;let b=Dx(u),R=u.getCurrentDirectory(),N=u.isSourceOfProjectReferenceRedirect(c)?u.getProjectReferenceRedirect(c):void 0,V=gA(c,R,b),P=u.redirectTargetsMap.get(V)||v,te=[...N?[N]:v,c,...P].map(Be=>Oc(Be,R)),re=!he(te,y6);if(!d){let Be=X(te,Fe=>!(re&&y6(Fe))&&I(Fe,N===Fe));if(Be)return Be}let ue=(h=u.getSymlinkCache)==null?void 0:h.call(u).getSymlinkedDirectoriesByRealpath(),Ae=Oc(c,R);return ue&&iI(aa(Ae),Be=>{let Fe=ue.get(AA(gA(Be,R,b)));if(Fe)return Th(n,Be,b)?!1:X(te,Ne=>{if(!Th(Ne,Be,b))return;let Qe=fp(Be,Ne,b);for(let De of Fe){let lt=q_(De,Qe),Le=I(lt,Ne===N);if(re=!0,Le)return Le}})})||(d?X(te,Be=>re&&y6(Be)?void 0:I(Be,Be===N)):void 0)}function $kr(n,c,u,d,I,h={}){var b;let R=gA(n.importingSourceFileName,u.getCurrentDirectory(),Dx(u)),N=gA(c,u.getCurrentDirectory(),Dx(u)),V=(b=u.getModuleSpecifierCache)==null?void 0:b.call(u);if(V){let M=V.get(R,N,d,h);if(M?.modulePaths)return M.modulePaths}let P=eGr(n,c,u,I,h);return V&&V.setModulePaths(R,N,d,h,P),P}var u6i=["dependencies","peerDependencies","optionalDependencies"];function g6i(n){let c;for(let u of u6i){let d=n[u];d&&typeof d=="object"&&(c=vi(c,kl(d)))}return c}function eGr(n,c,u,d,I){var h,b;let R=(h=u.getModuleResolutionCache)==null?void 0:h.call(u),N=(b=u.getSymlinkCache)==null?void 0:b.call(u);if(R&&N&&u.readFile&&!lP(n.importingSourceFileName)){w.type(u);let te=Ule(R.getPackageJsonInfoCache(),u,{}),re=Kle(n.importingSourceFileName,te);if(re){let ue=g6i(re.contents.packageJsonContent);for(let Ae of ue||v){let de=M6(Ae,xo(re.packageDirectory,"package.json"),d,u,R,void 0,I.overrideImportMode);N.setSymlinksFromResolution(de.resolvedModule)}}}let V=new Map,P=!1;qkr(n.importingSourceFileName,c,u,!0,(te,re)=>{let ue=lP(te),Ae=bV(te);if(!ue&&Ae){let de=Ae.findPackageLocator(n.importingSourceFileName),Be=Ae.findPackageLocator(te);de&&Be&&de!==Be&&(ue=!0)}V.set(te,{path:n.getCanonicalFileName(te),isRedirect:re,isInNodeModules:ue}),P=P||ue});let M=[];for(let te=n.canonicalSourceDirectory;V.size!==0;){let re=AA(te),ue;V.forEach(({path:de,isRedirect:Be,isInNodeModules:Fe},Ne)=>{uc(de,re)&&((ue||(ue=[])).push({path:Ne,isRedirect:Be,isInNodeModules:Fe}),V.delete(Ne))}),ue&&(ue.length>1&&ue.sort(zkr),M.push(...ue));let Ae=aa(te);if(Ae===te)break;te=Ae}if(V.size){let te=on(V.entries(),([re,{isRedirect:ue,isInNodeModules:Ae}])=>({path:re,isRedirect:ue,isInNodeModules:Ae}));te.length>1&&te.sort(zkr),M.push(...te)}return M}function A6i(n,c){var u;let d=(u=n.declarations)==null?void 0:u.find(b=>W$(b)&&(!XR(b)||!Jl(T2(b.name))));if(d)return d.name.text;let h=tr(n.declarations,b=>{var R,N,V,P;if(!CC(b))return;let M=Ae(b);if(!((R=M?.parent)!=null&&R.parent&&SN(M.parent)&&Yf(M.parent.parent)&&Gc(M.parent.parent.parent)))return;let te=(P=(V=(N=M.parent.parent.symbol.exports)==null?void 0:N.get("export="))==null?void 0:V.valueDeclaration)==null?void 0:P.expression;if(!te)return;let re=c.getSymbolAtLocation(te);if(!re)return;if((re?.flags&2097152?c.getAliasedSymbol(re):re)===b.symbol)return M.parent.parent;function Ae(de){for(;de.flags&8;)de=de.parent;return de}})[0];if(h)return h.name.text}function tGr(n,c,u,d,I){for(let b in c)for(let R of c[b]){let N=Mc(R),V=N.indexOf("*"),P=u.map(M=>({ending:M,value:c_e(n,[M],I)}));if(hN(N)&&P.push({ending:void 0,value:n}),V!==-1){let M=N.substring(0,V),te=N.substring(V+1);for(let{ending:re,value:ue}of P)if(ue.length>=M.length+te.length&&uc(ue,M)&&pl(ue,te)&&h({ending:re,value:ue})){let Ae=ue.substring(M.length,ue.length-te.length);if(!Op(Ae))return $Q(b,Ae)}}else if(lr(P,M=>M.ending!==0&&N===M.value)||lr(P,M=>M.ending===0&&N===M.value&&h(M)))return b}function h({ending:b,value:R}){return b!==0||R===c_e(n,[b],I,d)}}function kke(n,c,u,d,I,h,b,R,N){if(typeof h=="string"){let V=!UX(c),P=()=>c.getCommonSourceDirectory(),M=N&&f6e(u,n,V,P),te=N&&p6e(u,n,V,P),re=Oc(xo(d,h),void 0),ue=KQ(u)?o0(u)+kDt(u,n):void 0;switch(R){case 0:if(ue&&Ah(ue,re,V)===0||Ah(u,re,V)===0||M&&Ah(M,re,V)===0||te&&Ah(te,re,V)===0)return{moduleFileToTry:I};break;case 1:if(ue&&Bg(re,ue,V)){let Fe=fp(re,ue,!1);return{moduleFileToTry:Oc(xo(xo(I,h),Fe),void 0)}}if(Bg(re,u,V)){let Fe=fp(re,u,!1);return{moduleFileToTry:Oc(xo(xo(I,h),Fe),void 0)}}if(M&&Bg(re,M,V)){let Fe=fp(re,M,!1);return{moduleFileToTry:xo(I,Fe)}}if(te&&Bg(re,te,V)){let Fe=fp(re,te,!1);return{moduleFileToTry:xo(I,Fe)}}break;case 2:let Ae=re.indexOf("*"),de=re.slice(0,Ae),Be=re.slice(Ae+1);if(ue&&uc(ue,de,V)&&pl(ue,Be,V)){let Fe=ue.slice(de.length,ue.length-Be.length);return{moduleFileToTry:$Q(I,Fe)}}if(uc(u,de,V)&&pl(u,Be,V)){let Fe=u.slice(de.length,u.length-Be.length);return{moduleFileToTry:$Q(I,Fe)}}if(M&&uc(M,de,V)&&pl(M,Be,V)){let Fe=M.slice(de.length,M.length-Be.length);return{moduleFileToTry:$Q(I,Fe)}}if(te&&uc(te,de,V)&&pl(te,Be,V)){let Fe=te.slice(de.length,te.length-Be.length);return{moduleFileToTry:$Q(I,Fe)}}break}}else{if(Array.isArray(h))return X(h,V=>kke(n,c,u,d,I,V,b,R,N));if(typeof h=="object"&&h!==null){for(let V of kl(h))if(V==="default"||b.indexOf(V)>=0||o_e(b,V)){let P=h[V],M=kke(n,c,u,d,I,P,b,R,N);if(M)return M}}}}function d6i(n,c,u,d,I,h,b){return typeof h=="object"&&h!==null&&!Array.isArray(h)&&Tke(h)?X(kl(h),R=>{let N=Oc(xo(I,R),void 0),V=pl(R,"/")?1:R.includes("*")?2:0;return kke(n,c,u,d,N,h[R],b,V,!1)}):kke(n,c,u,d,I,h,b,0,!1)}function p6i(n,c,u,d,I){var h,b,R;if(!d.readFile||!CN(u))return;let N=RDt(d,c);if(!N)return;let V=xo(N,"package.json"),P=(b=(h=d.getPackageJsonInfoCache)==null?void 0:h.call(d))==null?void 0:b.getPackageJsonInfo(V);if(lDt(P)||!d.fileExists(V))return;let M=P?.contents.packageJsonContent||Lce(d.readFile(V)),te=M?.imports;if(!te)return;let re=EV(u,I);return(R=X(kl(te),ue=>{if(!uc(ue,"#")||ue==="#"||uc(ue,"#/"))return;let Ae=pl(ue,"/")?1:ue.includes("*")?2:0;return kke(u,d,n,N,ue,te[ue],re,Ae,!0)}))==null?void 0:R.moduleFileToTry}function f6i(n,c,u,d,I,h){let b=rGr(c,n,d);if(b===void 0)return;let R=rGr(u,n,d),N=Fr(R,P=>Ot(b,M=>Ky(fp(P,M,d)))),V=uC(N,Qee);if(V)return c_e(V,I,h)}function DDt({path:n,isRedirect:c},{getCanonicalFileName:u,canonicalSourceDirectory:d},I,h,b,R,N,V){if(!h.fileExists||!h.readFile)return;let P=dle(n),M,te=bV(n);if(te){let Qe=te.findPackageLocator(I.fileName),De=te.findPackageLocator(n);if(Qe===De)return;if(Qe&&De){let lt=te.getPackageInformation(Qe);if(De.reference===lt.packageDependencies.get(De.name))M=De.name;else for(let[Le,je]of lt.packageDependencies)if(Array.isArray(je)&&je[0]===De.name&&je[1]===De.reference){M=Le;break}P||(P={topLevelNodeModulesIndex:void 0,topLevelPackageNameIndex:void 0,packageRootIndex:te.getPackageInformation(De).packageLocation.length-1,fileNameIndex:n.lastIndexOf("/")})}}if(!P)return;let ue=zle(R,b,I).getAllowedEndingsInPreferredOrder(),Ae=n,de=!1;if(!N){let Qe=P.packageRootIndex,De;for(;;){let{moduleFileToTry:lt,packageRootPath:Le,blockedByExports:je,verbatimFromExports:st}=Ne(Qe);if(s0(b)!==1){if(je)return;if(st)return lt}if(Le){Ae=Le,de=!0;break}if(De||(De=lt),Qe=n.indexOf(qu,Qe+1),Qe===-1){Ae=c_e(De,ue,b,h);break}}}if(c&&!de)return;if(typeof process.versions.pnp>"u"){let Qe=h.getGlobalTypingsCacheLocation&&h.getGlobalTypingsCacheLocation(),De=u(Ae.substring(0,P.topLevelNodeModulesIndex));if(!(uc(d,De)||Qe&&uc(u(Qe),De)))return}let Be=typeof M<"u"?M+Ae.substring(P.packageRootIndex):Ae.substring(P.topLevelPackageNameIndex+1),Fe=jle(Be);return s0(b)===1&&Fe===Be?void 0:Fe;function Ne(Qe){var De,lt;let Le=n.substring(0,Qe),je=xo(Le,"package.json"),st=n,nt=!1,qe=(lt=(De=h.getPackageJsonInfoCache)==null?void 0:De.call(h))==null?void 0:lt.getPackageJsonInfo(je);if(Bke(qe)||qe===void 0&&h.fileExists(je)){let it=qe?.contents.packageJsonContent||Lce(h.readFile(je)),It=V||I.impliedNodeFormat;if($me(b)){let vt=Le.substring(P.topLevelPackageNameIndex+1),Ye=jle(M||vt),ht=EV(b,It),Et=it?.exports?d6i(b,h,n,Le,Ye,it.exports,ht):void 0;if(Et)return{...Et,verbatimFromExports:!0};if(it?.exports)return{moduleFileToTry:n,blockedByExports:!0}}let dt=it?.typesVersions?bke(it.typesVersions):void 0;if(dt){let vt=n.slice(Le.length+1),Ye=tGr(vt,dt.paths,ue,h,b);Ye===void 0?nt=!0:st=xo(Le,Ye)}let wt=it?.typings||it?.types||it?.main||"index.js";if(Xa(wt)&&!(nt&&Ahe(Yee(dt.paths),wt))){let vt=gA(wt,Le,u),Ye=u(st);if(o0(vt)===o0(Ye))return{packageRootPath:Le,moduleFileToTry:st};if(it?.type!=="module"&&!pp(Ye,Oee)&&uc(Ye,vt)&&aa(Ye)===S_(vt)&&o0(xA(Ye))==="index")return{packageRootPath:Le,moduleFileToTry:st}}}else{let it=u(st.substring(P.packageRootIndex+1));if(it==="index.d.ts"||it==="index.js"||it==="index.ts"||it==="index.tsx")return{moduleFileToTry:st,packageRootPath:Le}}return{moduleFileToTry:st}}}function I6i(n,c){if(!n.fileExists)return;let u=or(I6({allowJs:!0},[{extension:"node",isMixedContent:!1},{extension:"json",isMixedContent:!1,scriptKind:6}]));for(let d of u){let I=c+d;if(n.fileExists(I))return I}}function rGr(n,c,u){return tr(c,d=>{let I=iGr(n,d,u);return I!==void 0&&sGr(I)?void 0:I})}function c_e(n,c,u,d){if(pp(n,[".json",".mjs",".cjs"]))return n;let I=o0(n);if(n===I)return n;let h=c.indexOf(2),b=c.indexOf(3);if(pp(n,[".mts",".cts"])&&b!==-1&&bV===0||V===1);return N!==-1&&N(n[n.None=0]="None",n[n.TypeofEQString=1]="TypeofEQString",n[n.TypeofEQNumber=2]="TypeofEQNumber",n[n.TypeofEQBigInt=4]="TypeofEQBigInt",n[n.TypeofEQBoolean=8]="TypeofEQBoolean",n[n.TypeofEQSymbol=16]="TypeofEQSymbol",n[n.TypeofEQObject=32]="TypeofEQObject",n[n.TypeofEQFunction=64]="TypeofEQFunction",n[n.TypeofEQHostObject=128]="TypeofEQHostObject",n[n.TypeofNEString=256]="TypeofNEString",n[n.TypeofNENumber=512]="TypeofNENumber",n[n.TypeofNEBigInt=1024]="TypeofNEBigInt",n[n.TypeofNEBoolean=2048]="TypeofNEBoolean",n[n.TypeofNESymbol=4096]="TypeofNESymbol",n[n.TypeofNEObject=8192]="TypeofNEObject",n[n.TypeofNEFunction=16384]="TypeofNEFunction",n[n.TypeofNEHostObject=32768]="TypeofNEHostObject",n[n.EQUndefined=65536]="EQUndefined",n[n.EQNull=131072]="EQNull",n[n.EQUndefinedOrNull=262144]="EQUndefinedOrNull",n[n.NEUndefined=524288]="NEUndefined",n[n.NENull=1048576]="NENull",n[n.NEUndefinedOrNull=2097152]="NEUndefinedOrNull",n[n.Truthy=4194304]="Truthy",n[n.Falsy=8388608]="Falsy",n[n.IsUndefined=16777216]="IsUndefined",n[n.IsNull=33554432]="IsNull",n[n.IsUndefinedOrNull=50331648]="IsUndefinedOrNull",n[n.All=134217727]="All",n[n.BaseStringStrictFacts=3735041]="BaseStringStrictFacts",n[n.BaseStringFacts=12582401]="BaseStringFacts",n[n.StringStrictFacts=16317953]="StringStrictFacts",n[n.StringFacts=16776705]="StringFacts",n[n.EmptyStringStrictFacts=12123649]="EmptyStringStrictFacts",n[n.EmptyStringFacts=12582401]="EmptyStringFacts",n[n.NonEmptyStringStrictFacts=7929345]="NonEmptyStringStrictFacts",n[n.NonEmptyStringFacts=16776705]="NonEmptyStringFacts",n[n.BaseNumberStrictFacts=3734786]="BaseNumberStrictFacts",n[n.BaseNumberFacts=12582146]="BaseNumberFacts",n[n.NumberStrictFacts=16317698]="NumberStrictFacts",n[n.NumberFacts=16776450]="NumberFacts",n[n.ZeroNumberStrictFacts=12123394]="ZeroNumberStrictFacts",n[n.ZeroNumberFacts=12582146]="ZeroNumberFacts",n[n.NonZeroNumberStrictFacts=7929090]="NonZeroNumberStrictFacts",n[n.NonZeroNumberFacts=16776450]="NonZeroNumberFacts",n[n.BaseBigIntStrictFacts=3734276]="BaseBigIntStrictFacts",n[n.BaseBigIntFacts=12581636]="BaseBigIntFacts",n[n.BigIntStrictFacts=16317188]="BigIntStrictFacts",n[n.BigIntFacts=16775940]="BigIntFacts",n[n.ZeroBigIntStrictFacts=12122884]="ZeroBigIntStrictFacts",n[n.ZeroBigIntFacts=12581636]="ZeroBigIntFacts",n[n.NonZeroBigIntStrictFacts=7928580]="NonZeroBigIntStrictFacts",n[n.NonZeroBigIntFacts=16775940]="NonZeroBigIntFacts",n[n.BaseBooleanStrictFacts=3733256]="BaseBooleanStrictFacts",n[n.BaseBooleanFacts=12580616]="BaseBooleanFacts",n[n.BooleanStrictFacts=16316168]="BooleanStrictFacts",n[n.BooleanFacts=16774920]="BooleanFacts",n[n.FalseStrictFacts=12121864]="FalseStrictFacts",n[n.FalseFacts=12580616]="FalseFacts",n[n.TrueStrictFacts=7927560]="TrueStrictFacts",n[n.TrueFacts=16774920]="TrueFacts",n[n.SymbolStrictFacts=7925520]="SymbolStrictFacts",n[n.SymbolFacts=16772880]="SymbolFacts",n[n.ObjectStrictFacts=7888800]="ObjectStrictFacts",n[n.ObjectFacts=16736160]="ObjectFacts",n[n.FunctionStrictFacts=7880640]="FunctionStrictFacts",n[n.FunctionFacts=16728e3]="FunctionFacts",n[n.VoidFacts=9830144]="VoidFacts",n[n.UndefinedFacts=26607360]="UndefinedFacts",n[n.NullFacts=42917664]="NullFacts",n[n.EmptyObjectStrictFacts=83427327]="EmptyObjectStrictFacts",n[n.EmptyObjectFacts=83886079]="EmptyObjectFacts",n[n.UnknownFacts=83886079]="UnknownFacts",n[n.AllTypeofNE=556800]="AllTypeofNE",n[n.OrFactsMask=8256]="OrFactsMask",n[n.AndFactsMask=134209471]="AndFactsMask",n))(Q8e||{}),FDt=new Map(Object.entries({string:256,number:512,bigint:1024,boolean:2048,symbol:4096,undefined:524288,object:8192,function:16384})),Y8e=(n=>(n[n.Normal=0]="Normal",n[n.Contextual=1]="Contextual",n[n.Inferential=2]="Inferential",n[n.SkipContextSensitive=4]="SkipContextSensitive",n[n.SkipGenericFunctions=8]="SkipGenericFunctions",n[n.IsForSignatureHelp=16]="IsForSignatureHelp",n[n.RestBindingElement=32]="RestBindingElement",n[n.TypeOnly=64]="TypeOnly",n))(Y8e||{}),H8e=(n=>(n[n.None=0]="None",n[n.BivariantCallback=1]="BivariantCallback",n[n.StrictCallback=2]="StrictCallback",n[n.IgnoreReturnTypes=4]="IgnoreReturnTypes",n[n.StrictArity=8]="StrictArity",n[n.StrictTopSignature=16]="StrictTopSignature",n[n.Callback=3]="Callback",n))(H8e||{}),C6i=uh(gGr,h6i),X8e=new Map(Object.entries({Uppercase:0,Lowercase:1,Capitalize:2,Uncapitalize:3,NoInfer:4})),uGr=class{};function m6i(){this.flags=0}function sd(n){return n.id||(n.id=aGr,aGr++),n.id}function kg(n){return n.id||(n.id=oGr,oGr++),n.id}function J8e(n,c){let u=FG(n);return u===1||c&&u===2}function ZDt(n){var c=[],u=l=>{c.push(l)},d,I,h=xC.getSymbolConstructor(),b=xC.getTypeConstructor(),R=xC.getSignatureConstructor(),N=0,V=0,P=0,M=0,te=0,re=0,ue,Ae,de=!1,Be=Du(),Fe=[1],Ne=n.getCompilerOptions(),Qe=iA(Ne),De=R_(Ne),lt=!!Ne.experimentalDecorators,Le=Lee(Ne),je=ehe(Ne),st=JQ(Ne),nt=D_(Ne,"strictNullChecks"),qe=D_(Ne,"strictFunctionTypes"),it=D_(Ne,"strictBindCallApply"),It=D_(Ne,"strictPropertyInitialization"),dt=D_(Ne,"noImplicitAny"),wt=D_(Ne,"noImplicitThis"),vt=D_(Ne,"useUnknownInCatchVariables"),Ye=Ne.exactOptionalPropertyTypes,ht=_ms(),Et=$0s(),Kt=dZe(),Tt=Jkt(Ne,{isEntityNameVisible:PV,isExpandoFunctionDeclaration:i8r,getAllAccessorDeclarations:LLe,requiresAddingImplicitUndefined:stt,isUndefinedIdentifierExpression(l){return w.assert(NB(l)),jv(l)===Zt},isDefinitelyReferenceToGlobalSymbolObject:d7}),Lt=Ehe({evaluateElementAccessExpression:M_s,evaluateEntityNameExpression:WKr}),kt=Du(),Zt=SA(4,"undefined");Zt.declarations=[];var Dr=SA(1536,"globalThis",8);Dr.exports=kt,Dr.declarations=[],kt.set(Dr.escapedName,Dr);var jt=SA(4,"arguments"),mr=SA(4,"require"),Pt=Ne.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules",Vr=!Ne.verbatimModuleSyntax,Yr,pr,zr=0,$n,bi=0,Pi=S6({compilerOptions:Ne,requireSymbol:mr,argumentsSymbol:jt,globals:kt,getSymbolOfDeclaration:Mo,error:fr,getRequiresScopeChangeCache:I7,setRequiresScopeChangeCache:gD,lookup:Z_,onPropertyWithInvalidInitializer:$Z,onFailedToResolveSymbol:HG,onSuccessfullyResolvedSymbol:sre}),Ns=S6({compilerOptions:Ne,requireSymbol:mr,argumentsSymbol:jt,globals:kt,getSymbolOfDeclaration:Mo,error:fr,getRequiresScopeChangeCache:I7,setRequiresScopeChangeCache:gD,lookup:OIs});let gi={getNodeCount:()=>Td(n.getSourceFiles(),(l,C)=>l+C.nodeCount,0),getIdentifierCount:()=>Td(n.getSourceFiles(),(l,C)=>l+C.identifierCount,0),getSymbolCount:()=>Td(n.getSourceFiles(),(l,C)=>l+C.symbolCount,V),getTypeCount:()=>N,getInstantiationCount:()=>P,getRelationCacheSizes:()=>({assignable:Ab.size,identity:Ub.size,subtype:LN.size,strictSubtype:PB.size}),isUndefinedSymbol:l=>l===Zt,isArgumentsSymbol:l=>l===jt,isUnknownSymbol:l=>l===en,getMergedSymbol:GA,symbolIsValue:AD,getDiagnostics:XKr,getGlobalDiagnostics:A0s,getRecursionIdentity:Y$e,getUnmatchedProperties:gPt,getTypeOfSymbolAtLocation:(l,C)=>{let E=jc(C);return E?nfs(l,E):cr},getTypeOfSymbol:lo,getSymbolsOfParameterPropertyDeclaration:(l,C)=>{let E=jc(l,Jc);return E===void 0?w.fail("Cannot get symbols of a synthetic parameter that cannot be resolved to a parse-tree node."):(w.assert(Zn(E,E.parent)),ire(E,Rd(C)))},getDeclaredTypeOfSymbol:xp,getPropertiesOfType:Id,getPropertyOfType:(l,C)=>_g(l,Rd(C)),getPrivateIdentifierPropertyOfType:(l,C,E)=>{let D=jc(E);if(!D)return;let W=Rd(C),Q=gLe(W,D);return Q?vet(l,Q):void 0},getTypeOfPropertyOfType:(l,C)=>ZI(l,Rd(C)),getIndexInfoOfType:(l,C)=>$x(l,C===0?Jt:bt),getIndexInfosOfType:ey,getIndexInfosOfIndexSymbol:o3t,getSignaturesOfType:Pu,getIndexTypeOfType:(l,C)=>JP(l,C===0?Jt:bt),getIndexType:l=>JN(l),getBaseTypes:wa,getBaseTypeOfLiteralType:oF,getWidenedType:$b,getWidenedLiteralType:$P,getTypeFromTypeNode:l=>{let C=jc(l,Ya);return C?Lc(C):cr},getParameterType:vT,getParameterIdentifierInfoAtPosition:FCs,getPromisedTypeOfPromise:wye,getAwaitedType:l=>gJ(l),getReturnTypeOfSignature:Sd,isNullableType:uLe,getNullableType:XZe,getNonNullableType:aF,getNonOptionalType:U$e,getTypeArguments:of,typeToTypeNode:Kt.typeToTypeNode,indexInfoToIndexSignatureDeclaration:Kt.indexInfoToIndexSignatureDeclaration,signatureToSignatureDeclaration:Kt.signatureToSignatureDeclaration,symbolToEntityName:Kt.symbolToEntityName,symbolToExpression:Kt.symbolToExpression,symbolToNode:Kt.symbolToNode,symbolToTypeParameterDeclarations:Kt.symbolToTypeParameterDeclarations,symbolToParameterDeclaration:Kt.symbolToParameterDeclaration,typeParameterToDeclaration:Kt.typeParameterToDeclaration,getSymbolsInScope:(l,C)=>{let E=jc(l);return E?d0s(E,C):[]},getSymbolAtLocation:l=>{let C=jc(l);return C?jv(C,!0):void 0},getIndexInfosAtLocation:l=>{let C=jc(l);return C?y0s(C):void 0},getShorthandAssignmentValueSymbol:l=>{let C=jc(l);return C?b0s(C):void 0},getExportSpecifierLocalTargetSymbol:l=>{let C=jc(l,c0);return C?E0s(C):void 0},getExportSymbolOfSymbol(l){return GA(l.exportSymbol||l)},getTypeAtLocation:l=>{let C=jc(l);return C?H7(C):cr},getTypeOfAssignmentPattern:l=>{let C=jc(l,H9);return C&&rtt(C)||cr},getPropertySymbolOfDestructuringAssignment:l=>{let C=jc(l,sr);return C?B0s(C):void 0},signatureToString:(l,C,E,D)=>OV(l,jc(C),E,D),typeToString:(l,C,E)=>Xs(l,jc(C),E),symbolToString:(l,C,E,D)=>qc(l,jc(C),E,D),typePredicateToString:(l,C,E)=>dD(l,jc(C),E),writeSignature:(l,C,E,D,W)=>OV(l,jc(C),E,D,W),writeType:(l,C,E,D)=>Xs(l,jc(C),E,D),writeSymbol:(l,C,E,D,W)=>qc(l,jc(C),E,D,W),writeTypePredicate:(l,C,E,D)=>dD(l,jc(C),E,D),getAugmentedPropertiesOfType:$Ot,getRootSymbols:$Kr,getSymbolOfExpando:xet,getContextualType:(l,C)=>{let E=jc(l,tn);if(E)return C&4?Ec(E,()=>Sy(E,C)):Sy(E,C)},getContextualTypeForObjectLiteralElement:l=>{let C=jc(l,EB);return C?LPt(C,void 0):void 0},getContextualTypeForArgumentAtIndex:(l,C)=>{let E=jc(l,AG);return E&&ZPt(E,C)},getContextualTypeForJsxAttribute:l=>{let C=jc(l,C8);return C&&hJr(C,void 0)},isContextSensitive:XB,getTypeOfPropertyOfContextualType:rO,getFullyQualifiedName:QN,getResolvedSignature:(l,C,E)=>xi(l,C,E,0),getCandidateSignaturesForStringLiteralCompletions:jn,getResolvedSignatureForSignatureHelp:(l,C,E)=>xs(l,()=>xi(l,C,E,16)),getExpandedParameters:g5r,hasEffectiveRestParameter:bD,containsArgumentsReference:n3t,getConstantValue:l=>{let C=jc(l,s8r);return C?tMt(C):void 0},isValidPropertyAccess:(l,C)=>{let E=jc(l,Zae);return!!E&&YIs(E,Rd(C))},isValidPropertyAccessForCompletions:(l,C,E)=>{let D=jc(l,Io);return!!D&&KJr(D,C,E)},getSignatureFromDeclaration:l=>{let C=jc(l,$l);return C?tB(C):void 0},isImplementationOfOverload:l=>{let C=jc(l,$l);return C?n8r(C):void 0},getImmediateAliasedSymbol:het,getAliasedSymbol:qm,getEmitResolver:jZ,requiresAddingImplicitUndefined:stt,getExportsOfModule:VY,getExportsAndPropertiesOfModule:E7,forEachExportAndPropertyOfModule:W4,getSymbolWalker:TDt(ygs,HB,Sd,wa,yT,lo,vy,By,ib,of),getAmbientModules:Mys,getJsxIntrinsicTagNamesAt:BIs,isOptionalParameter:l=>{let C=jc(l,Jc);return C?vZe(C):!1},tryGetMemberInModuleExports:(l,C)=>j2(Rd(l),C),tryGetMemberInModuleExportsAndProperties:(l,C)=>pre(Rd(l),C),tryFindAmbientModule:l=>t3t(l,!0),tryFindAmbientModuleWithoutAugmentations:l=>t3t(l,!1),getApparentType:$0,getUnionType:Ta,isTypeAssignableTo:yg,createAnonymousType:qn,createSignature:qx,createSymbol:SA,createIndexInfo:hD,getAnyType:()=>Qt,getStringType:()=>Jt,getStringLiteralType:pb,getNumberType:()=>bt,getNumberLiteralType:dw,getBigIntType:()=>Vt,createPromiseType:bLe,createArrayType:L_,getElementTypeOfArrayType:HZe,getBooleanType:()=>ds,getFalseType:l=>l?dn:On,getTrueType:l=>l?Mn:Ii,getVoidType:()=>oo,getUndefinedType:()=>wn,getNullType:()=>ur,getESSymbolType:()=>Es,getNeverType:()=>Vi,getOptionalType:()=>Me,getPromiseType:()=>NZe(!1),getPromiseLikeType:()=>q5r(!1),getAsyncIterableType:()=>{let l=v$e(!1);if(l!==Jg)return l},isSymbolAccessible:CT,isArrayType:UB,isTupleType:aA,isArrayLikeType:pL,isEmptyAnonymousObjectType:yD,isTypeInvalidDueToUnionDiscriminant:rgs,getExactOptionalProperties:xds,getAllPossiblePropertiesOfTypes:ngs,getSuggestedSymbolForNonexistentProperty:$Pt,getSuggestedSymbolForNonexistentJSXAttribute:HJr,getSuggestedSymbolForNonexistentSymbol:(l,C,E)=>JJr(l,Rd(C),E),getSuggestedSymbolForNonexistentModule:eOt,getSuggestedSymbolForNonexistentClassMember:YJr,getBaseConstraintOfType:a_,getDefaultFromTypeParameter:l=>l&&l.flags&262144?J4(l):void 0,resolveName(l,C,E,D){return Pi(C,Rd(l),E,void 0,!1,D)},getJsxNamespace:l=>Sc(SP(l)),getJsxFragmentFactory:l=>{let C=nMt(l);return C&&Sc(ib(C).escapedText)},getAccessibleSymbolChain:jl,getTypePredicateOfSignature:HB,resolveExternalModuleName:l=>{let C=jc(l,tn);return C&&z0(C,C,!0)},resolveExternalModuleSymbol:db,tryGetThisTypeAt:(l,C,E)=>{let D=jc(l);return D&&kPt(D,C,E)},getTypeArgumentConstraint:l=>{let C=jc(l,Ya);return C&&qms(C)},getSuggestionDiagnostics:(l,C)=>{let E=jc(l,Gc)||w.fail("Could not determine parsed source file.");if(jQ(E,Ne,n))return v;let D;try{return d=C,jOt(E),w.assert(!!(Uo(E).flags&1)),D=ai(D,N4.getDiagnostics(E.fileName)),uKr(HKr(E),(W,Q,se)=>{!HR(W)&&!YKr(Q,!!(W.flags&33554432))&&(D||(D=[])).push({...se,category:2})}),D||v}finally{d=void 0}},runWithCancellationToken:(l,C)=>{try{return d=l,C(gi)}finally{d=void 0}},getLocalTypeParametersOfClassOrInterfaceOrTypeAlias:aL,isDeclarationVisible:$G,isPropertyAccessible:rOt,getTypeOnlyAliasDeclaration:MN,getMemberOverrideModifierStatus:D_s,isTypeParameterPossiblyReferenced:ZZe,typeHasCallOrConstructSignatures:ntt,getSymbolFlags:Kb};function jn(l,C){let E=new Set,D=[];Ec(C,()=>xi(l,D,void 0,0));for(let W of D)E.add(W);D.length=0,xs(C,()=>xi(l,D,void 0,0));for(let W of D)E.add(W);return on(E)}function xs(l,C){if(l=Si(l,y$),l){let E=[],D=[];for(;l;){let Q=Uo(l);if(E.push([Q,Q.resolvedSignature]),Q.resolvedSignature=void 0,vG(l)){let se=ol(Mo(l)),Ee=se.type;D.push([se,Ee]),se.type=void 0}l=Si(l.parent,y$)}let W=C();for(let[Q,se]of E)Q.resolvedSignature=se;for(let[Q,se]of D)Q.type=se;return W}return C()}function Ec(l,C){let E=Si(l,AG);if(E){let W=l;do Uo(W).skipDirectInference=!0,W=W.parent;while(W&&W!==E)}de=!0;let D=xs(l,C);if(de=!1,E){let W=l;do Uo(W).skipDirectInference=void 0,W=W.parent;while(W&&W!==E)}return D}function xi(l,C,E,D){let W=jc(l,AG);Yr=E;let Q=W?Mre(W,C,D):void 0;return Yr=void 0,Q}var rc=new Map,Vl=new Map,ul=new Map,Cc=new Map,_s=new Map,Wu=new Map,ir=new Map,ni=new Map,gs=new Map,Hs=new Map,qa=new Map,nc=new Map,Nc=new Map,cg=new Map,Ku=new Map,Bi=[],BA=new Map,kr=new Set,en=SA(4,"unknown"),ct=SA(0,"__resolving__"),rn=new Map,St=new Map,br=new Set,Qt=LC(1,"any"),_r=LC(1,"any",262144,"auto"),Pr=LC(1,"any",void 0,"wildcard"),ti=LC(1,"any",void 0,"blocked string"),cr=LC(1,"error"),kn=LC(1,"unresolved"),Pn=LC(1,"any",65536,"non-inferrable"),an=LC(1,"intrinsic"),Kr=LC(2,"unknown"),wn=LC(32768,"undefined"),Pe=nt?wn:LC(32768,"undefined",65536,"widening"),ar=LC(32768,"undefined",void 0,"missing"),sn=Ye?ar:wn,Me=LC(32768,"undefined",void 0,"optional"),ur=LC(65536,"null"),Re=nt?ur:LC(65536,"null",65536,"widening"),Jt=LC(4,"string"),bt=LC(8,"number"),Vt=LC(64,"bigint"),dn=LC(512,"false",void 0,"fresh"),On=LC(512,"false"),Mn=LC(512,"true",void 0,"fresh"),Ii=LC(512,"true");Mn.regularType=Ii,Mn.freshType=Mn,Ii.regularType=Ii,Ii.freshType=Mn,dn.regularType=On,dn.freshType=dn,On.regularType=On,On.freshType=dn;var ds=Ta([On,Ii]),Es=LC(4096,"symbol"),oo=LC(16384,"void"),Vi=LC(131072,"never"),ko=LC(131072,"never",262144,"silent"),Yc=LC(131072,"never",void 0,"implicit"),fl=LC(131072,"never",void 0,"unreachable"),oa=LC(67108864,"object"),Da=Ta([Jt,bt]),ki=Ta([Jt,bt,Es]),Gs=Ta([bt,Vt]),ri=Ta([Jt,bt,ds,Vt,ur,wn]),hu=K4(["",""],[bt]),JA=FZe(l=>l.flags&262144?ids(l):l,()=>"(restrictive mapper)"),Qd=FZe(l=>l.flags&262144?Pr:l,()=>"(permissive mapper)"),kd=LC(131072,"never",void 0,"unique literal"),Tl=FZe(l=>l.flags&262144?kd:l,()=>"(unique literal mapper)"),lg,mf=FZe(l=>(lg&&(l===lI||l===J0||l===U0)&&lg(!0),l),()=>"(unmeasurable reporter)"),zc=FZe(l=>(lg&&(l===lI||l===J0||l===U0)&&lg(!1),l),()=>"(unreliable reporter)"),Zc=qn(void 0,Be,v,v,v),Km=qn(void 0,Be,v,v,v);Km.objectFlags|=2048;var Df=SA(2048,"__type");Df.members=Du();var f0=qn(Df,Be,v,v,v),xI=qn(void 0,Be,v,v,v),s_=nt?Ta([wn,ur,xI]):Kr,Jg=qn(void 0,Be,v,v,v);Jg.instantiations=new Map;var hf=qn(void 0,Be,v,v,v);hf.objectFlags|=262144;var Yd=qn(void 0,Be,v,v,v),zA=qn(void 0,Be,v,v,v),di=qn(void 0,Be,v,v,v),lI=q2(),J0=q2();J0.constraint=lI;var U0=q2(),Yb=q2(),rf=q2();rf.constraint=Yb;var kI=K0e(1,"<>",0,Qt),yt=qx(void 0,void 0,void 0,v,Qt,void 0,0,0),tt=qx(void 0,void 0,void 0,v,cr,void 0,0,0),gr=qx(void 0,void 0,void 0,v,Qt,void 0,0,0),mn=qx(void 0,void 0,void 0,v,ko,void 0,0,0),Ri=hD(bt,Jt,!0),Xo=new Map,fi={get yieldType(){return w.fail("Not supported")},get returnType(){return w.fail("Not supported")},get nextType(){return w.fail("Not supported")}},Jo=CL(Qt,Qt,Qt),hc=CL(Qt,Qt,Kr),ic=CL(Vi,Qt,wn),Wg={iterableCacheKey:"iterationTypesOfAsyncIterable",iteratorCacheKey:"iterationTypesOfAsyncIterator",iteratorSymbolName:"asyncIterator",getGlobalIteratorType:Vgs,getGlobalIterableType:v$e,getGlobalIterableIteratorType:Wgs,getGlobalGeneratorType:Pgs,resolveIterationType:(l,C)=>gJ(l,C,Z.Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member),mustHaveANextMethodDiagnostic:Z.An_async_iterator_must_have_a_next_method,mustBeAMethodDiagnostic:Z.The_0_property_of_an_async_iterator_must_be_a_method,mustHaveAValueDiagnostic:Z.The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property},nf={iterableCacheKey:"iterationTypesOfIterable",iteratorCacheKey:"iterationTypesOfIterator",iteratorSymbolName:"iterator",getGlobalIteratorType:Ogs,getGlobalIterableType:I3t,getGlobalIterableIteratorType:Mgs,getGlobalGeneratorType:Qgs,resolveIterationType:(l,C)=>l,mustHaveANextMethodDiagnostic:Z.An_iterator_must_have_a_next_method,mustBeAMethodDiagnostic:Z.The_0_property_of_an_iterator_must_be_a_method,mustHaveAValueDiagnostic:Z.The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property},zC,Xf=new Map,Gm=new Map,sf,Fm,Hb,GI,qC,Q2,qt,Fn,Bs,Nl,vA,PA,XI,bm,rp,Hd,hC,Xb,dT,Y2,ub,LB,H2,oD,aD,gb,$C,cD,Jb,ZN,X2,rt,qr,Qn,Jn,cs,Ls,$o,Ua,Ge,Ht,En,Rs,_c,Iu,Wl,Eu,od,sA,uI,VB,rw,lD,Xx,YZ,Jx,WB,J2=new Map,np=0,F_=0,K0=0,nw=!1,HZ=0,WG,xV,Wv,kV=[],Pv=[],_P=[],pT=0,U2=[],PG=[],rr=0,Tr=pb(""),xn=dw(0),ci=R$e({negative:!1,base10Value:"0"}),Wi=[],qs=[],zi=[],ho=0,Bc=!1,Co=0,ac=10,Ps=[],ru=[],Yg=[],jm=[],I0=[],Ov=[],XZ=[],Mv=[],u7=[],nre=[],g7=[],NY=[],yP=[],bP=[],EP=[],T4=[],JZ=[],RY=[],Ux=[],DY=0,UA=hG(),N4=hG(),R4=nL(),BP,OG,LN=new Map,PB=new Map,Ab=new Map,QE=new Map,Ub=new Map,UZ=new Map,A7=[[".mts",".mjs"],[".ts",".js"],[".cts",".cjs"],[".mjs",".mjs"],[".js",".js"],[".cjs",".cjs"],[".tsx",Ne.jsx===1?".jsx":".js"],[".jsx",".jsx"],[".json",".json"]];return eys(),gi;function d7(l){return!Io(l)||!sr(l.name)||!Io(l.expression)&&!sr(l.expression)?!1:sr(l.expression)?ao(l.expression)==="Symbol"&&vy(l.expression)===(kre("Symbol",1160127,void 0)||en):sr(l.expression.expression)?ao(l.expression.name)==="Symbol"&&ao(l.expression.expression)==="globalThis"&&vy(l.expression.expression)===Dr:!1}function vP(l){return l?Ku.get(l):void 0}function KZ(l,C){return l&&Ku.set(l,C),C}function SP(l){if(l){let C=ls(l);if(C)if(g4(l)){if(C.localJsxFragmentNamespace)return C.localJsxFragmentNamespace;let E=C.pragmas.get("jsxfrag");if(E){let W=Ra(E)?E[0]:E;if(C.localJsxFragmentFactory=V6(W.arguments.factory,Qe),xr(C.localJsxFragmentFactory,Em,w_),C.localJsxFragmentFactory)return C.localJsxFragmentNamespace=ib(C.localJsxFragmentFactory).escapedText}let D=nMt(l);if(D)return C.localJsxFragmentFactory=D,C.localJsxFragmentNamespace=ib(D).escapedText}else{let E=p7(C);if(E)return C.localJsxNamespace=E}}return BP||(BP="React",Ne.jsxFactory?(OG=V6(Ne.jsxFactory,Qe),xr(OG,Em),OG&&(BP=ib(OG).escapedText)):Ne.reactNamespace&&(BP=Rd(Ne.reactNamespace))),OG||(OG=_e.createQualifiedName(_e.createIdentifier(Sc(BP)),"createElement")),BP}function p7(l){if(l.localJsxNamespace)return l.localJsxNamespace;let C=l.pragmas.get("jsx");if(C){let E=Ra(C)?C[0]:C;if(l.localJsxFactory=V6(E.arguments.factory,Qe),xr(l.localJsxFactory,Em,w_),l.localJsxFactory)return l.localJsxNamespace=ib(l.localJsxFactory).escapedText}}function Em(l){return MS(l,-1,-1),ns(l,Em,void 0)}function jZ(l,C,E){return E||XKr(l,C),Et}function f7(l,C,...E){let D=l?Us(l,C,...E):ff(C,...E),W=UA.lookup(D);return W||(UA.add(D),D)}function fT(l,C,E,...D){let W=fr(C,E,...D);return W.skippedOn=l,W}function D4(l,C,...E){return l?Us(l,C,...E):ff(C,...E)}function fr(l,C,...E){let D=D4(l,C,...E);return UA.add(D),D}function iw(l,C){l?UA.add(C):N4.add({...C,category:2})}function zm(l,C,E,...D){if(C.pos<0||C.end<0){if(!l)return;let W=ls(C);iw(l,"message"in E?Im(W,0,0,E,...D):ne(W,E));return}iw(l,"message"in E?Us(C,E,...D):GS(ls(C),C,E))}function wP(l,C,E,...D){let W=fr(l,E,...D);if(C){let Q=Us(l,Z.Did_you_forget_to_use_await);eg(W,Q)}return W}function uD(l,C){let E=Array.isArray(l)?X(l,Zb):Zb(l);return E&&eg(C,Us(E,Z.The_declaration_was_marked_as_deprecated_here)),N4.add(C),C}function OB(l){let C=o_(l);return C&&O(l.declarations)>1?C.flags&64?lr(l.declarations,VN):he(l.declarations,VN):!!l.valueDeclaration&&VN(l.valueDeclaration)||O(l.declarations)&&he(l.declarations,VN)}function VN(l){return!!(sH(l)&536870912)}function MG(l,C,E){let D=Us(l,Z._0_is_deprecated,E);return uD(C,D)}function Hue(l,C,E,D){let W=E?Us(l,Z.The_signature_0_of_1_is_deprecated,D,E):Us(l,Z._0_is_deprecated,D);return uD(C,W)}function SA(l,C,E){V++;let D=new h(l|33554432,C);return D.links=new uGr,D.links.checkFlags=E||0,D}function sw(l,C){let E=SA(1,l);return E.links.type=C,E}function xY(l,C){let E=SA(4,l);return E.links.type=C,E}function x4(l){let C=0;return l&2&&(C|=111551),l&1&&(C|=111550),l&4&&(C|=0),l&8&&(C|=900095),l&16&&(C|=110991),l&32&&(C|=899503),l&64&&(C|=788872),l&256&&(C|=899327),l&128&&(C|=899967),l&512&&(C|=110735),l&8192&&(C|=103359),l&32768&&(C|=46015),l&65536&&(C|=78783),l&262144&&(C|=526824),l&524288&&(C|=788968),l&2097152&&(C|=2097152),C}function k4(l,C){C.mergeId||(C.mergeId=cGr,cGr++),Ps[C.mergeId]=l}function TP(l){let C=SA(l.flags,l.escapedName);return C.declarations=l.declarations?l.declarations.slice():[],C.parent=l.parent,l.valueDeclaration&&(C.valueDeclaration=l.valueDeclaration),l.constEnumOnlyModule&&(C.constEnumOnlyModule=!0),l.members&&(C.members=new Map(l.members)),l.exports&&(C.exports=new Map(l.exports)),k4(C,l),C}function QG(l,C,E=!1){if(!(l.flags&x4(C.flags))||(C.flags|l.flags)&67108864){if(C===l)return l;if(!(l.flags&33554432)){let Q=JI(l);if(Q===en)return C;if(!(Q.flags&x4(C.flags))||(C.flags|Q.flags)&67108864)l=TP(Q);else return D(l,C),C}C.flags&512&&l.flags&512&&l.constEnumOnlyModule&&!C.constEnumOnlyModule&&(l.constEnumOnlyModule=!1),l.flags|=C.flags,C.valueDeclaration&&cee(l,C.valueDeclaration),ai(l.declarations,C.declarations),C.members&&(l.members||(l.members=Du()),M1(l.members,C.members,E)),C.exports&&(l.exports||(l.exports=Du()),M1(l.exports,C.exports,E)),E||k4(l,C)}else l.flags&1024?l!==Dr&&fr(C.declarations&&vl(C.declarations[0]),Z.Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity,qc(l)):D(l,C);return l;function D(Q,se){let Ee=!!(Q.flags&384||se.flags&384),Ve=!!(Q.flags&2||se.flags&2),Oe=Ee?Z.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:Ve?Z.Cannot_redeclare_block_scoped_variable_0:Z.Duplicate_identifier_0,ot=se.declarations&&ls(se.declarations[0]),Wt=Q.declarations&&ls(Q.declarations[0]),Nt=bQ(ot,Ne.checkJs),Mr=bQ(Wt,Ne.checkJs),ln=qc(se);if(ot&&Wt&&zC&&!Ee&&ot!==Wt){let hn=Ah(ot.path,Wt.path)===-1?ot:Wt,mi=hn===ot?Wt:ot,Ti=we(zC,`${hn.path}|${mi.path}`,()=>({firstFile:hn,secondFile:mi,conflictingSymbols:new Map})),ks=we(Ti.conflictingSymbols,ln,()=>({isBlockScoped:Ve,firstFileLocations:[],secondFileLocations:[]}));Nt||W(ks.firstFileLocations,se),Mr||W(ks.secondFileLocations,Q)}else Nt||YG(se,Oe,ln,Q),Mr||YG(Q,Oe,ln,se)}function W(Q,se){if(se.declarations)for(let Ee of se.declarations)pa(Q,Ee)}}function YG(l,C,E,D){X(l.declarations,W=>{NP(W,C,E,D.declarations)})}function NP(l,C,E,D){let W=(BZ(l,!1)?ume(l):vl(l))||l,Q=f7(W,C,E);for(let se of D||v){let Ee=(BZ(se,!1)?ume(se):vl(se))||se;if(Ee===W)continue;Q.relatedInformation=Q.relatedInformation||[];let Ve=Us(Ee,Z._0_was_also_declared_here,E),Oe=Us(Ee,Z.and_here);O(Q.relatedInformation)>=5||lr(Q.relatedInformation,ot=>g6(ot,Oe)===0||g6(ot,Ve)===0)||eg(Q,O(Q.relatedInformation)?Oe:Ve)}}function K2(l,C){if(!l?.size)return C;if(!C?.size)return l;let E=Du();return M1(E,l),M1(E,C),E}function M1(l,C,E=!1){C.forEach((D,W)=>{let Q=l.get(W);l.set(W,Q?QG(Q,D,E):GA(D))})}function zZ(l){var C,E,D;let W=l.parent;if(((C=W.symbol.declarations)==null?void 0:C[0])!==W){w.assert(W.symbol.declarations.length>1);return}if(v2(W))M1(kt,W.symbol.exports);else{let Q=l.parent.parent.flags&33554432?void 0:Z.Invalid_module_name_in_augmentation_module_0_cannot_be_found,se=V4(l,l,Q,!0);if(!se)return;if(se=db(se),se.flags&1920)if(lr(Fm,Ee=>se===Ee.symbol)){let Ee=QG(W.symbol,se,!0);Hb||(Hb=new Map),Hb.set(l.text,Ee)}else{if((E=se.exports)!=null&&E.get("__export")&&((D=W.symbol.exports)!=null&&D.size)){let Ee=WWt(se,"resolvedExports");for(let[Ve,Oe]of on(W.symbol.exports.entries()))Ee.has(Ve)&&!se.exports.has(Ve)&&QG(Ee.get(Ve),Oe)}QG(se,W.symbol)}else fr(l,Z.Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity,l.text)}}function qZ(){let l=Zt.escapedName,C=kt.get(l);C?X(C.declarations,E=>{zQ(E)||UA.add(Us(E,Z.Declaration_name_conflicts_with_built_in_global_identifier_0,Sc(l)))}):kt.set(l,Zt)}function ol(l){if(l.flags&33554432)return l.links;let C=kg(l);return ru[C]??(ru[C]=new uGr)}function Uo(l){let C=sd(l);return Yg[C]||(Yg[C]=new m6i)}function Z_(l,C,E){if(E){let D=GA(l.get(C));if(D&&(D.flags&E||D.flags&2097152&&Kb(D)&E))return D}}function ire(l,C){let E=l.parent,D=l.parent.parent,W=Z_(E.locals,C,111551),Q=Z_(XV(D.symbol),C,111551);return W&&Q?[W,Q]:w.fail("There should exist two symbols, one as property declaration and one as parameter declaration")}function ow(l,C){let E=ls(l),D=ls(C),W=S2(l);if(E!==D){if(De&&(E.externalModuleIndicator||D.externalModuleIndicator)||!Ne.outFile||ZQ(C)||l.flags&33554432||se(C,l))return!0;let Ve=n.getSourceFiles();return Ve.indexOf(E)<=Ve.indexOf(D)}if(C.flags&16777216||ZQ(C)||mPt(C))return!0;if(l.pos<=C.pos&&!(Ql(l)&&j$(C.parent)&&!l.initializer&&!l.exclamationToken)){if(l.kind===208){let Ve=CG(C,208);return Ve?Si(Ve,ml)!==Si(l,ml)||l.posOe===l?"quit":xg(Oe)?Oe.parent.parent===l:!lt&&GC(Oe)&&(Oe.parent===l||cI(Oe.parent)&&Oe.parent.parent===l||AX(Oe.parent)&&Oe.parent.parent===l||Ql(Oe.parent)&&Oe.parent.parent===l||Jc(Oe.parent)&&Oe.parent.parent.parent===l));return Ve?!lt&&GC(Ve)?!!Si(C,Oe=>Oe===Ve?"quit":$l(Oe)&&!z9(Oe)):!1:!0}else{if(Ql(l))return!Ee(l,C,!1);if(Zn(l,l.parent))return!(je&&Um(l)===Um(C)&&se(C,l))}}return!0}if(C.parent.kind===281||C.parent.kind===277&&C.parent.isExportEquals||C.kind===277&&C.isExportEquals)return!0;if(se(C,l))return je&&Um(l)&&(Ql(l)||Zn(l,l.parent))?!Ee(l,C,!0):!0;return!1;function Q(Ve,Oe){switch(Ve.parent.parent.kind){case 243:case 248:case 250:if(XG(Oe,Ve,W))return!0;break}let ot=Ve.parent.parent;return yZ(ot)&&XG(Oe,ot.expression,W)}function se(Ve,Oe){return!!Si(Ve,ot=>{if(ot===W)return"quit";if($l(ot))return!0;if($p(ot))return Oe.posVe.end?!1:Si(Oe,Nt=>{if(Nt===Ve)return"quit";switch(Nt.kind){case 219:return!0;case 172:return ot&&(Ql(Ve)&&Nt.parent===Ve.parent||Zn(Ve,Ve.parent)&&Nt.parent===Ve.parent.parent)?"quit":!0;case 241:switch(Nt.parent.kind){case 177:case 174:case 178:return!0;default:return!1}default:return!1}})===void 0}}function I7(l){return Uo(l).declarationRequiresScopeChange}function gD(l,C){Uo(l).declarationRequiresScopeChange=C}function $Z(l,C,E,D){return je?!1:(l&&!D&&kY(l,C,C)||fr(l,l&&E.type&&_2(E.type,l.pos)?Z.Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:Z.Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor,xd(E.name),Q1(C)),!0)}function HG(l,C,E,D){let W=Xa(C)?C:C.escapedText;u(()=>{if(!l||l.parent.kind!==324&&!kY(l,W,C)&&!Dp(l)&&!ore(l,W,E)&&!C7(l,W)&&!C0(l,W,E)&&!Xue(l,W,E)&&!G4(l,W,E)){let Q,se;if(C&&(se=WIs(C),se&&fr(l,D,Q1(C),se)),!se&&Co{var se;let Ee=C.escapedName,Ve=D&&Gc(D)&&ia(D);if(l&&(E&2||(E&32||E&384)&&(E&111551)===111551)){let Oe=H1(C);(Oe.flags&2||Oe.flags&32||Oe.flags&384)&&lu(Oe,l)}if(Ve&&(E&111551)===111551&&!(l.flags&16777216)){let Oe=GA(C);O(Oe.declarations)&&he(Oe.declarations,ot=>Vhe(ot)||Gc(ot)&&!!ot.symbol.globalExports)&&zm(!Ne.allowUmdGlobalAccess,l,Z._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead,Sc(Ee))}if(W&&!Q&&(E&111551)===111551){let Oe=GA(d$e(C)),ot=WS(W);Oe===Mo(W)?fr(l,Z.Parameter_0_cannot_reference_itself,xd(W.name)):Oe.valueDeclaration&&Oe.valueDeclaration.pos>W.pos&&ot.parent.locals&&Z_(ot.parent.locals,Oe.escapedName,E)===Oe&&fr(l,Z.Parameter_0_cannot_reference_identifier_1_declared_after_it,xd(W.name),xd(l))}if(l&&E&111551&&C.flags&2097152&&!(C.flags&111551)&&!DZ(l)){let Oe=MN(C,111551);if(Oe){let ot=Oe.kind===281||Oe.kind===278||Oe.kind===280?Z._0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:Z._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type,Wt=Sc(Ee);RP(fr(l,ot,Wt),Oe,Wt)}}if(Ne.isolatedModules&&C&&Ve&&(E&111551)===111551){let ot=Z_(kt,Ee,E)===C&&Gc(D)&&D.locals&&Z_(D.locals,Ee,-111552);if(ot){let Wt=(se=ot.declarations)==null?void 0:se.find(Nt=>Nt.kind===276||Nt.kind===273||Nt.kind===274||Nt.kind===271);Wt&&!Q9(Wt)&&fr(Wt,Z.Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled,Sc(Ee))}}})}function RP(l,C,E){return C?eg(l,Us(C,C.kind===281||C.kind===278||C.kind===280?Z._0_was_exported_here:Z._0_was_imported_here,E)):l}function Q1(l){return Xa(l)?Sc(l):xd(l)}function kY(l,C,E){if(!sr(l)||l.escapedText!==C||JKr(l)||ZQ(l))return!1;let D=r0(l,!1,!1),W=D;for(;W;){if(Sa(W.parent)){let Q=Mo(W.parent);if(!Q)break;let se=lo(Q);if(_g(se,C))return fr(l,Z.Cannot_find_name_0_Did_you_mean_the_static_member_1_0,Q1(E),qc(Q)),!0;if(W===D&&!$u(W)){let Ee=xp(Q).thisType;if(_g(Ee,C))return fr(l,Z.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0,Q1(E)),!0}}W=W.parent}return!1}function Dp(l){let C=Kx(l);return C&&FI(C,64,!0)?(fr(l,Z.Cannot_extend_an_interface_0_Did_you_mean_implements,Tf(C)),!0):!1}function Kx(l){switch(l.kind){case 80:case 211:return l.parent?Kx(l.parent):void 0;case 233:if(cp(l.expression))return l.expression;default:return}}function ore(l,C,E){let D=1920|(so(l)?111551:0);if(E===D){let W=JI(Pi(l,C,788968&~D,void 0,!1)),Q=l.parent;if(W){if(a0(Q)){w.assert(Q.left===l,"Should only be resolving left side of qualified name as a namespace");let se=Q.right.escapedText;if(_g(xp(W),se))return fr(Q,Z.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,Sc(C),Sc(se)),!0}return fr(l,Z._0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here,Sc(C)),!0}}return!1}function G4(l,C,E){if(E&788584){let D=JI(Pi(l,C,111127,void 0,!1));if(D&&!(D.flags&1920))return fr(l,Z._0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0,Sc(C)),!0}return!1}function GY(l){return l==="any"||l==="string"||l==="number"||l==="boolean"||l==="never"||l==="unknown"}function C7(l,C){return GY(C)&&l.parent.kind===281?(fr(l,Z.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module,C),!0):!1}function Xue(l,C,E){if(E&111551){if(GY(C)){let Q=l.parent.parent;if(Q&&Q.parent&&WE(Q)){let se=Q.token,Ee=Q.parent.kind;Ee===264&&se===96?fr(l,Z.An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types,Sc(C)):Ee===263&&se===96?fr(l,Z.A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values,Sc(C)):Ee===263&&se===119&&fr(l,Z.A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types,Sc(C))}else fr(l,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,Sc(C));return!0}let D=JI(Pi(l,C,788544,void 0,!1)),W=D&&Kb(D);if(D&&W!==void 0&&!(W&111551)){let Q=Sc(C);return Vo(C)?fr(l,Z._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,Q):are(l,D)?fr(l,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0,Q,Q==="K"?"P":"K"):fr(l,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,Q),!0}}return!1}function are(l,C){let E=Si(l.parent,D=>xg(D)||n_(D)?!1:Se(D)||"quit");if(E&&E.members.length===1){let D=xp(C);return!!(D.flags&1048576)&&Bye(D,384,!0)}return!1}function Vo(l){switch(l){case"Promise":case"Symbol":case"Map":case"WeakMap":case"Set":case"WeakSet":return!0}return!1}function C0(l,C,E){if(E&111127){if(JI(Pi(l,C,1024,void 0,!1)))return fr(l,Z.Cannot_use_namespace_0_as_a_value,Sc(C)),!0}else if(E&788544&&JI(Pi(l,C,1536,void 0,!1)))return fr(l,Z.Cannot_use_namespace_0_as_a_type,Sc(C)),!0;return!1}function lu(l,C){var E;if(w.assert(!!(l.flags&2||l.flags&32||l.flags&384)),l.flags&67108881&&l.flags&32)return;let D=(E=l.declarations)==null?void 0:E.find(W=>L$(W)||Sa(W)||W.kind===266);if(D===void 0)return w.fail("checkResolvedBlockScopedVariable could not find block-scoped declaration");if(!(D.flags&33554432)&&!ow(D,C)){let W,Q=xd(vl(D));l.flags&2?W=fr(C,Z.Block_scoped_variable_0_used_before_its_declaration,Q):l.flags&32?W=fr(C,Z.Class_0_used_before_its_declaration,Q):l.flags&256?W=fr(C,Z.Enum_0_used_before_its_declaration,Q):(w.assert(!!(l.flags&128)),ZE(Ne)&&(W=fr(C,Z.Enum_0_used_before_its_declaration,Q))),W&&eg(W,Us(D,Z._0_is_declared_here,Q))}}function XG(l,C,E){return!!C&&!!Si(l,D=>D===C||(D===E||$l(D)&&(!z9(D)||YI(D)&3)?"quit":!1))}function F4(l){switch(l.kind){case 271:return l;case 273:return l.parent;case 274:return l.parent.parent;case 276:return l.parent.parent.parent;default:return}}function YE(l){return l.declarations&&Te(l.declarations,uo)}function uo(l){return l.kind===271||l.kind===270||l.kind===273&&!!l.name||l.kind===274||l.kind===280||l.kind===276||l.kind===281||l.kind===277&&H3(l)||no(l)&&CI(l)===2&&H3(l)||Cp(l)&&no(l.parent)&&l.parent.left===l&&l.parent.operatorToken.kind===64&&m7(l.parent.right)||l.kind===304||l.kind===303&&m7(l.initializer)||l.kind===260&&q9(l)||l.kind===208&&q9(l.parent.parent)}function m7(l){return Iee(l)||WA(l)&&qN(l)}function h7(l,C){let E=JG(l);if(E){let W=QQ(E.expression).arguments[0];return sr(E.name)?JI(_g(D5r(W),E.name.escapedText)):void 0}if(zs(l)||l.moduleReference.kind===283){let W=z0(l,lme(l)||L8(l)),Q=db(W);return QB(l,W,Q,!1),Q}let D=b7(l.moduleReference,C);return j0(l,D),D}function j0(l,C){if(QB(l,void 0,C,!1)&&!l.isTypeOnly){let E=MN(Mo(l)),D=E.kind===281||E.kind===278,W=D?Z.An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:Z.An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type,Q=D?Z._0_was_exported_here:Z._0_was_imported_here,se=E.kind===278?"*":Sc(E.name.escapedText);eg(fr(l.moduleReference,W),Us(E,Q,se))}}function aw(l,C,E,D){let W=l.exports.get("export="),Q=W?_g(lo(W),C,!0):l.exports.get(C),se=JI(Q,D);return QB(E,Q,se,!1),se}function Qv(l){return tf(l)&&!l.isExportEquals||ba(l,2048)||c0(l)||rD(l)}function eL(l){return XA(l)?n.getModeForUsageLocation(ls(l),l):void 0}function FY(l,C){return l===99&&C===1}function WN(l){return eL(l)===99&&pl(l.text,".json")}function HE(l,C,E,D){let W=l&&eL(D);if(l&&W!==void 0&&100<=De&&De<=199){let Q=FY(W,l.impliedNodeFormat);if(W===99||Q)return Q}if(!st)return!1;if(!l||l.isDeclarationFile){let Q=aw(C,"default",void 0,!0);return!(Q&&lr(Q.declarations,Qv)||aw(C,Rd("__esModule"),void 0,E))}return n0(l)?typeof l.externalModuleIndicator!="object"&&!aw(C,Rd("__esModule"),void 0,E):VP(C)}function PN(l,C){let E=z0(l,l.parent.moduleSpecifier);if(E)return MB(E,l,C)}function MB(l,C,E){var D;let W;V3(l)?W=l:W=aw(l,"default",C,E);let Q=(D=l.declarations)==null?void 0:D.find(Gc),se=jx(C);if(!se)return W;let Ee=WN(se),Ve=HE(Q,l,E,se);if(!W&&!Ve&&!Ee)if(VP(l)&&!st){let Oe=De>=5?"allowSyntheticDefaultImports":"esModuleInterop",Wt=l.exports.get("export=").valueDeclaration,Nt=fr(C.name,Z.Module_0_can_only_be_default_imported_using_the_1_flag,qc(l),Oe);Wt&&eg(Nt,Us(Wt,Z.This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag,Oe))}else sT(C)?DP(l,C):cw(l,l,C,M9(C)&&C.propertyName||C.name);else if(Ve||Ee){let Oe=db(l,E)||JI(l,E);return QB(C,l,Oe,!1),Oe}return QB(C,W,void 0,!1),W}function jx(l){switch(l.kind){case 273:return l.parent.moduleSpecifier;case 271:return DG(l.moduleReference)?l.moduleReference.expression:void 0;case 274:return l.parent.parent.moduleSpecifier;case 276:return l.parent.parent.parent.moduleSpecifier;case 281:return l.parent.parent.moduleSpecifier;default:return w.assertNever(l)}}function DP(l,C){var E,D,W;if((E=l.exports)!=null&&E.has(C.symbol.escapedName))fr(C.name,Z.Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead,qc(l),qc(C.symbol));else{let Q=fr(C.name,Z.Module_0_has_no_default_export,qc(l)),se=(D=l.exports)==null?void 0:D.get("__export");if(se){let Ee=(W=se.declarations)==null?void 0:W.find(Ve=>{var Oe,ot;return!!(mC(Ve)&&Ve.moduleSpecifier&&((ot=(Oe=z0(Ve,Ve.moduleSpecifier))==null?void 0:Oe.exports)!=null&&ot.has("default")))});Ee&&eg(Q,Us(Ee,Z.export_Asterisk_does_not_re_export_a_default))}}}function _7(l,C){let E=l.parent.parent.moduleSpecifier,D=z0(l,E),W=LP(D,E,C,!1);return QB(l,D,W,!1),W}function Z4(l,C){let E=l.parent.moduleSpecifier,D=E&&z0(l,E),W=E&&LP(D,E,C,!1);return QB(l,D,W,!1),W}function ZY(l,C){if(l===en&&C===en)return en;if(l.flags&790504)return l;let E=SA(l.flags|C.flags,l.escapedName);return w.assert(l.declarations||C.declarations),E.declarations=TA(vi(l.declarations,C.declarations),Og),E.parent=l.parent||C.parent,l.valueDeclaration&&(E.valueDeclaration=l.valueDeclaration),C.members&&(E.members=new Map(C.members)),l.exports&&(E.exports=new Map(l.exports)),E}function cre(l,C,E,D){var W;if(l.flags&1536){let Q=Y1(l).get(C.escapedText),se=JI(Q,D),Ee=(W=ol(l).typeOnlyExportStarMap)==null?void 0:W.get(C.escapedText);return QB(E,Q,se,!1,Ee,C.escapedText),se}}function L4(l,C){if(l.flags&3){let E=l.valueDeclaration.type;if(E)return JI(_g(Lc(E),C))}}function xP(l,C,E=!1){var D;let W=lme(l)||l.moduleSpecifier,Q=z0(l,W),se=!Io(C)&&C.propertyName||C.name;if(!sr(se))return;let Ee=se.escapedText==="default"&&st,Ve=LP(Q,W,!1,Ee);if(Ve&&se.escapedText){if(V3(Q))return Q;let Oe;Q&&Q.exports&&Q.exports.get("export=")?Oe=_g(lo(Ve),se.escapedText,!0):Oe=L4(Ve,se.escapedText),Oe=JI(Oe,E);let ot=cre(Ve,se,C,E);if(ot===void 0&&se.escapedText==="default"){let Nt=(D=Q.declarations)==null?void 0:D.find(Gc);(WN(W)||HE(Nt,Q,E,W))&&(ot=db(Q,E)||JI(Q,E))}let Wt=ot&&Oe&&ot!==Oe?ZY(Oe,ot):ot||Oe;return Wt||cw(Q,Ve,l,se),Wt}}function cw(l,C,E,D){var W;let Q=QN(l,E),se=xd(D),Ee=eOt(D,C);if(Ee!==void 0){let Ve=qc(Ee),Oe=fr(D,Z._0_has_no_exported_member_named_1_Did_you_mean_2,Q,se,Ve);Ee.valueDeclaration&&eg(Oe,Us(Ee.valueDeclaration,Z._0_is_declared_here,Ve))}else(W=l.exports)!=null&&W.has("default")?fr(D,Z.Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead,Q,se):lre(E,D,se,l,Q)}function lre(l,C,E,D,W){var Q,se;let Ee=(se=(Q=eo(D.valueDeclaration,Tv))==null?void 0:Q.locals)==null?void 0:se.get(C.escapedText),Ve=D.exports;if(Ee){let Oe=Ve?.get("export=");if(Oe)lw(Oe,Ee)?kP(l,C,E,W):fr(C,Z.Module_0_has_no_exported_member_1,W,E);else{let ot=Ve?be(e3t(Ve),Nt=>!!lw(Nt,Ee)):void 0,Wt=ot?fr(C,Z.Module_0_declares_1_locally_but_it_is_exported_as_2,W,E,qc(ot)):fr(C,Z.Module_0_declares_1_locally_but_it_is_not_exported,W,E);Ee.declarations&&eg(Wt,...Ot(Ee.declarations,(Nt,Mr)=>Us(Nt,Mr===0?Z._0_is_declared_here:Z.and_here,E)))}}else fr(C,Z.Module_0_has_no_exported_member_1,W,E)}function kP(l,C,E,D){if(De>=5){let W=IN(Ne)?Z._0_can_only_be_imported_by_using_a_default_import:Z._0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;fr(C,W,E)}else if(so(l)){let W=IN(Ne)?Z._0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:Z._0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;fr(C,W,E)}else{let W=IN(Ne)?Z._0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:Z._0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;fr(C,W,E,E,D)}}function GV(l,C){if(_y(l)&&ao(l.propertyName||l.name)==="default"){let se=jx(l),Ee=se&&z0(l,se);if(Ee)return MB(Ee,l,C)}let E=ml(l)?WS(l):l.parent.parent.parent,D=JG(E),W=xP(E,D||l,C),Q=l.propertyName||l.name;return D&&W&&sr(Q)?JI(_g(lo(W),Q.escapedText),C):(QB(l,void 0,W,!1),W)}function JG(l){if(zs(l)&&l.initializer&&Io(l.initializer))return l.initializer}function tL(l,C){if(B2(l.parent)){let E=db(l.parent.symbol,C);return QB(l,void 0,E,!1),E}}function Yv(l,C,E){if(ao(l.propertyName||l.name)==="default"){let W=jx(l),Q=W&&z0(l,W);if(Q)return MB(Q,l,!!E)}let D=l.parent.parent.moduleSpecifier?xP(l.parent.parent,l,E):FI(l.propertyName||l.name,C,!1,E);return QB(l,void 0,D,!1),D}function rL(l,C){let E=tf(l)?l.expression:l.right,D=GP(E,C);return QB(l,void 0,D,!1),D}function GP(l,C){if(tp(l))return iC(l).symbol;if(!w_(l)&&!cp(l))return;let E=FI(l,901119,!0,C);return E||(iC(l),Uo(l).resolvedSymbol)}function fh(l,C){if(no(l.parent)&&l.parent.left===l&&l.parent.operatorToken.kind===64)return GP(l.parent.right,C)}function UG(l,C=!1){switch(l.kind){case 271:case 260:return h7(l,C);case 273:return PN(l,C);case 274:return _7(l,C);case 280:return Z4(l,C);case 276:case 208:return GV(l,C);case 281:return Yv(l,901119,C);case 277:case 226:return rL(l,C);case 270:return tL(l,C);case 304:return FI(l.name,901119,!0,C);case 303:return GP(l.initializer,C);case 212:case 211:return fh(l,C);default:return w.fail()}}function ON(l,C=901119){return l?(l.flags&(2097152|C))===2097152||!!(l.flags&2097152&&l.flags&67108864):!1}function JI(l,C){return!C&&ON(l)?qm(l):l}function qm(l){w.assert((l.flags&2097152)!==0,"Should only get Alias here.");let C=ol(l);if(C.aliasTarget)C.aliasTarget===ct&&(C.aliasTarget=en);else{C.aliasTarget=ct;let E=YE(l);if(!E)return w.fail();let D=UG(E);C.aliasTarget===ct?C.aliasTarget=D||en:fr(E,Z.Circular_definition_of_import_alias_0,qc(l))}return C.aliasTarget}function KG(l){if(ol(l).aliasTarget!==ct)return qm(l)}function Kb(l,C,E){let D=C&&MN(l),W=D&&mC(D),Q=D&&(W?z0(D.moduleSpecifier,D.moduleSpecifier,!0):qm(D.symbol)),se=W&&Q?IT(Q):void 0,Ee=E?0:l.flags,Ve;for(;l.flags&2097152;){let Oe=H1(qm(l));if(!W&&Oe===Q||se?.get(Oe.escapedName)===Oe)break;if(Oe===en)return-1;if(Oe===l||Ve?.has(Oe))break;Oe.flags&2097152&&(Ve?Ve.add(Oe):Ve=new Set([l,Oe])),Ee|=Oe.flags,l=Oe}return Ee}function QB(l,C,E,D,W,Q){if(!l||Io(l))return!1;let se=Mo(l);if(Ex(l)){let Ve=ol(se);return Ve.typeOnlyDeclaration=l,!0}if(W){let Ve=ol(se);return Ve.typeOnlyDeclaration=W,se.escapedName!==Q&&(Ve.typeOnlyExportStarName=Q),!0}let Ee=ol(se);return y7(Ee,C,D)||y7(Ee,E,D)}function y7(l,C,E){var D;if(C&&(l.typeOnlyDeclaration===void 0||E&&l.typeOnlyDeclaration===!1)){let W=((D=C.exports)==null?void 0:D.get("export="))??C,Q=W.declarations&&be(W.declarations,Ex);l.typeOnlyDeclaration=Q??ol(W).typeOnlyDeclaration??!1}return!!l.typeOnlyDeclaration}function MN(l,C){var E;if(!(l.flags&2097152))return;let D=ol(l);if(D.typeOnlyDeclaration===void 0){D.typeOnlyDeclaration=!1;let W=JI(l);QB((E=l.declarations)==null?void 0:E[0],YE(l)&&het(l),W,!0)}if(C===void 0)return D.typeOnlyDeclaration||void 0;if(D.typeOnlyDeclaration){let W=D.typeOnlyDeclaration.kind===278?JI(IT(D.typeOnlyDeclaration.symbol.parent).get(D.typeOnlyExportStarName||l.escapedName)):qm(D.typeOnlyDeclaration.symbol);return Kb(W)&C?D.typeOnlyDeclaration:void 0}}function b7(l,C){return l.kind===80&&t6(l)&&(l=l.parent),l.kind===80||l.parent.kind===166?FI(l,1920,!1,C):(w.assert(l.parent.kind===271),FI(l,901119,!1,C))}function QN(l,C){return l.parent?QN(l.parent,C)+"."+qc(l):qc(l,C,void 0,36)}function FV(l){for(;a0(l.parent);)l=l.parent;return l}function ure(l){let C=ib(l),E=Pi(C,C,111551,void 0,!0);if(E){for(;a0(C.parent);){let D=lo(E);if(E=_g(D,C.parent.right.escapedText),!E)return;C=C.parent}return E}}function FI(l,C,E,D,W){if(wf(l))return;let Q=1920|(so(l)?C&111551:0),se;if(l.kind===80){let Ee=C===Q||qd(l)?Z.Cannot_find_namespace_0:v4r(ib(l)),Ve=so(l)&&!qd(l)?gre(l,C):void 0;if(se=GA(Pi(W||l,l,C,E||Ve?void 0:Ee,!0,!1)),!se)return GA(Ve)}else if(l.kind===166||l.kind===211){let Ee=l.kind===166?l.left:l.expression,Ve=l.kind===166?l.right:l.name,Oe=FI(Ee,Q,E,!1,W);if(!Oe||wf(Ve))return;if(Oe===en)return Oe;if(Oe.valueDeclaration&&so(Oe.valueDeclaration)&&s0(Ne)!==100&&zs(Oe.valueDeclaration)&&Oe.valueDeclaration.initializer&&CUr(Oe.valueDeclaration.initializer)){let ot=Oe.valueDeclaration.initializer.arguments[0],Wt=z0(ot,ot);if(Wt){let Nt=db(Wt);Nt&&(Oe=Nt)}}if(se=GA(Z_(Y1(Oe),Ve.escapedText,C)),!se&&Oe.flags&2097152&&(se=GA(Z_(Y1(qm(Oe)),Ve.escapedText,C))),!se){if(!E){let ot=QN(Oe),Wt=xd(Ve),Nt=eOt(Ve,Oe);if(Nt){fr(Ve,Z._0_has_no_exported_member_named_1_Did_you_mean_2,ot,Wt,qc(Nt));return}let Mr=a0(l)&&FV(l);if(GI&&C&788968&&Mr&&!eD(Mr.parent)&&ure(Mr)){fr(Mr,Z._0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0,t0(Mr));return}if(C&1920&&a0(l.parent)){let hn=GA(Z_(Y1(Oe),Ve.escapedText,788968));if(hn){fr(l.parent.right,Z.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,qc(hn),Sc(l.parent.right.escapedText));return}}fr(Ve,Z.Namespace_0_has_no_exported_member_1,ot,Wt)}return}}else w.assertNever(l,"Unknown entity name kind.");return!qd(l)&&w_(l)&&(se.flags&2097152||l.parent.kind===277)&&QB(Cme(l),se,void 0,!0),se.flags&C||D?se:qm(se)}function gre(l,C){if(E$e(l.parent)){let E=Are(l.parent);if(E)return Pi(E,l,C,void 0,!0)}}function Are(l){if(Si(l,W=>xS(W)||W.flags&16777216?w2(W):"quit"))return;let E=eV(l);if(E&&Hf(E)&&aee(E.expression)){let W=Mo(E.expression.left);if(W)return FP(W)}if(E&&WA(E)&&aee(E.parent)&&Hf(E.parent.parent)){let W=Mo(E.parent.left);if(W)return FP(W)}if(E&&(TB(E)||KC(E))&&no(E.parent.parent)&&CI(E.parent.parent)===6){let W=Mo(E.parent.parent.left);if(W)return FP(W)}let D=SZ(l);if(D&&$l(D)){let W=Mo(D);return W&&W.valueDeclaration}}function FP(l){let C=l.parent.valueDeclaration;return C?(P8(C)?RQ(C):dG(C)?O8(C):void 0)||C:void 0}function Jue(l){let C=l.valueDeclaration;if(!C||!so(C)||l.flags&524288||BZ(C,!1))return;let E=zs(C)?O8(C):RQ(C);if(E){let D=z2(E);if(D)return uOt(D,l)}}function z0(l,C,E){let W=s0(Ne)===1?Z.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:Z.Cannot_find_module_0_or_its_corresponding_type_declarations;return V4(l,C,E?void 0:W)}function V4(l,C,E,D=!1){return XA(C)?LY(l,C.text,E,C,D):void 0}function LY(l,C,E,D,W=!1){var Q,se,Ee,Ve,Oe,ot,Wt,Nt,Mr,ln,hn;if(uc(C,"@types/")){let ha=Z.Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1,Tg=b_(C,"@types/");fr(D,ha,Tg,C)}let mi=t3t(C,!0);if(mi)return mi;let Ti=ls(l),ks=XA(l)?l:((Q=CC(l)?l:l.parent&&CC(l.parent)&&l.parent.name===l?l.parent:void 0)==null?void 0:Q.name)||((se=r_(l)?l:void 0)==null?void 0:se.argument.literal)||(so(l)&&RN(l)?l.moduleSpecifier:void 0)||(zs(l)&&l.initializer&&Q0(l.initializer,!0)?l.initializer.arguments[0]:void 0)||((Ee=Si(l,pC))==null?void 0:Ee.arguments[0])||((Ve=Si(l,mI))==null?void 0:Ve.moduleSpecifier)||((Oe=Si(l,EZ))==null?void 0:Oe.moduleReference.expression)||((ot=Si(l,mC))==null?void 0:ot.moduleSpecifier),Wo=ks&&XA(ks)?n.getModeForUsageLocation(Ti,ks):Ti.impliedNodeFormat,Yi=s0(Ne),Cs=(Wt=n.getResolvedModule(Ti,C,Wo))==null?void 0:Wt.resolvedModule,Ds=Cs&&O6e(Ne,Cs,Ti),zo=Cs&&(!Ds||Ds===Z.Module_0_was_resolved_to_1_but_jsx_is_not_set)&&n.getSourceFile(Cs.resolvedFileName);if(zo){if(Ds&&fr(D,Ds,C,Cs.resolvedFileName),Cs.resolvedUsingTsExtension&&kh(C)){let ha=((Nt=Si(l,mI))==null?void 0:Nt.importClause)||Si(l,pg(Cm,mC));(ha&&!ha.isTypeOnly||Si(l,pC))&&fr(D,Z.A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_file_0_instead,ma(w.checkDefined(Gce(C))))}else if(Cs.resolvedUsingTsExtension&&!Ete(Ne,Ti.fileName)){let ha=((Mr=Si(l,mI))==null?void 0:Mr.importClause)||Si(l,pg(Cm,mC));if(!(ha?.isTypeOnly||Si(l,Tu))){let Tg=w.checkDefined(Gce(C));fr(D,Z.An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled,Tg)}}if(zo.symbol){if(Cs.isExternalLibraryImport&&!C6(Cs.extension)&&ZP(!1,D,Ti,Wo,Cs,C),Yi===3||Yi===99){let ha=Ti.impliedNodeFormat===1&&!Si(l,pC)||!!Si(l,Cm),Tg=Si(l,Ou=>Tu(Ou)||mC(Ou)||mI(Ou)||RN(Ou));if(ha&&zo.impliedNodeFormat===99&&!cxe(Tg))if(Si(l,Cm))fr(D,Z.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,C);else{let Ou,FA=hN(Ti.fileName);if(FA===".ts"||FA===".js"||FA===".tsx"||FA===".jsx"){let ou=Ti.packageJsonScope,Jf=FA===".ts"?".mts":FA===".js"?".mjs":void 0;ou&&!ou.contents.packageJsonContent.type?Jf?Ou=su(void 0,Z.To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Colon_module_to_1,Jf,xo(ou.packageDirectory,"package.json")):Ou=su(void 0,Z.To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0,xo(ou.packageDirectory,"package.json")):Jf?Ou=su(void 0,Z.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,Jf):Ou=su(void 0,Z.To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module)}UA.add(GS(ls(D),D,su(Ou,Z.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,C)))}}return GA(zo.symbol)}E&&fr(D,Z.File_0_is_not_a_module,zo.fileName);return}if(Fm){let ha=ly(Fm,Tg=>Tg.pattern,C);if(ha){let Tg=Hb&&Hb.get(C);return GA(Tg||ha.symbol)}}if(Cs&&!C6(Cs.extension)&&Ds===void 0||Ds===Z.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type){if(W){let ha=Z.Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented;fr(D,ha,C,Cs.resolvedFileName)}else ZP(dt&&!!E,D,Ti,Wo,Cs,C);return}if(E){if(Cs){let ha=n.getProjectReferenceRedirect(Cs.resolvedFileName);if(ha){fr(D,Z.Output_file_0_has_not_been_built_from_source_file_1,ha,Cs.resolvedFileName);return}}if(Ds)fr(D,Ds,C,Cs.resolvedFileName);else{let ha=Op(C)&&!v1(C),Tg=Yi===3||Yi===99;if(!lV(Ne)&&gd(C,".json")&&Yi!==1&&jce(Ne))fr(D,Z.Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension,C);else if(Wo===99&&Tg&&ha){let Ou=Oc(C,aa(Ti.path)),FA=(ln=A7.find(([ou,Jf])=>n.fileExists(Ou+ou)))==null?void 0:ln[1];FA?fr(D,Z.Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Did_you_mean_0,C+FA):fr(D,Z.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((hn=n.getResolvedModule(Ti,C,Wo))!=null&&hn.alternateResult){let Ou=wX(Ti,n,C,Wo,C);zm(!0,D,su(Ou,E,C))}else fr(D,E,C)}}return;function ma(ha){let Tg=e4(C,ha);if(Kce(De)||Wo===99){let Ou=kh(C)&&Ete(Ne);return Tg+(ha===".mts"||ha===".d.mts"?Ou?".mts":".mjs":ha===".cts"||ha===".d.mts"?Ou?".cts":".cjs":Ou?".ts":".js")}return Tg}}function ZP(l,C,E,D,{packageId:W,resolvedFileName:Q},se){let Ee;!Jl(se)&&W&&(Ee=wX(E,n,se,D,W.name)),zm(l,C,su(Ee,Z.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type,se,Q))}function db(l,C){if(l?.exports){let E=JI(l.exports.get("export="),C),D=Uue(GA(E),GA(l));return GA(D)||l}}function Uue(l,C){if(!l||l===en||l===C||C.exports.size===1||l.flags&2097152)return l;let E=ol(l);if(E.cjsExportMerged)return E.cjsExportMerged;let D=l.flags&33554432?l:TP(l);return D.flags=D.flags|512,D.exports===void 0&&(D.exports=Du()),C.exports.forEach((W,Q)=>{Q!=="export="&&D.exports.set(Q,D.exports.has(Q)?QG(D.exports.get(Q),W):W)}),D===l&&(ol(D).resolvedExports=void 0,ol(D).resolvedMembers=void 0),ol(D).cjsExportMerged=D,E.cjsExportMerged=D}function LP(l,C,E,D){var W;let Q=db(l,E);if(!E&&Q){if(!D&&!(Q.flags&1539)&&!zd(Q,307)){let Ee=De>=5?"allowSyntheticDefaultImports":"esModuleInterop";return fr(C,Z.This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export,Ee),Q}let se=C.parent;if(mI(se)&&WX(se)||pC(se)){let Ee=pC(se)?se.arguments[0]:se.moduleSpecifier,Ve=lo(Q),Oe=fUr(Ve,Q,l,Ee);if(Oe)return dre(Q,Oe,se);let ot=(W=l?.declarations)==null?void 0:W.find(Gc),Wt=ot&&FY(eL(Ee),ot.impliedNodeFormat);if(IN(Ne)||Wt){let Nt=BZe(Ve,0);if((!Nt||!Nt.length)&&(Nt=BZe(Ve,1)),Nt&&Nt.length||_g(Ve,"default",!0)||Wt){let Mr=Ve.flags&3670016?IUr(Ve,Q,l,Ee):gOt(Q,Q.parent);return dre(Q,Mr,se)}}}}return Q}function dre(l,C,E){let D=SA(l.flags,l.escapedName);D.declarations=l.declarations?l.declarations.slice():[],D.parent=l.parent,D.links.target=l,D.links.originatingImport=E,l.valueDeclaration&&(D.valueDeclaration=l.valueDeclaration),l.constEnumOnlyModule&&(D.constEnumOnlyModule=!0),l.members&&(D.members=new Map(l.members)),l.exports&&(D.exports=new Map(l.exports));let W=yT(C);return D.links.type=qn(D,W.members,v,v,W.indexInfos),D}function VP(l){return l.exports.get("export=")!==void 0}function VY(l){return e3t(IT(l))}function E7(l){let C=VY(l),E=db(l);if(E!==l){let D=lo(E);ZV(D)&&ai(C,Id(D))}return C}function W4(l,C){IT(l).forEach((W,Q)=>{Q4(Q)||C(W,Q)});let D=db(l);if(D!==l){let W=lo(D);ZV(W)&&tgs(W,(Q,se)=>{C(Q,se)})}}function j2(l,C){let E=IT(C);if(E)return E.get(l)}function pre(l,C){let E=j2(l,C);if(E)return E;let D=db(C);if(D===C)return;let W=lo(D);return ZV(W)?_g(W,l):void 0}function ZV(l){return!(l.flags&402784252||sa(l)&1||UB(l)||aA(l))}function Y1(l){return l.flags&6256?WWt(l,"resolvedExports"):l.flags&1536?IT(l):l.exports||Be}function IT(l){let C=ol(l);if(!C.resolvedExports){let{exports:E,typeOnlyExportStarMap:D}=O4(l);C.resolvedExports=E,C.typeOnlyExportStarMap=D}return C.resolvedExports}function P4(l,C,E,D){C&&C.forEach((W,Q)=>{if(Q==="default")return;let se=l.get(Q);if(!se)l.set(Q,W),E&&D&&E.set(Q,{specifierText:Tf(D.moduleSpecifier)});else if(E&&D&&se&&JI(se)!==JI(W)){let Ee=E.get(Q);Ee.exportsWithDuplicate?Ee.exportsWithDuplicate.push(D):Ee.exportsWithDuplicate=[D]}})}function O4(l){let C=[],E,D=new Set;l=db(l);let W=Q(l)||Be;return E&&D.forEach(se=>E.delete(se)),{exports:W,typeOnlyExportStarMap:E};function Q(se,Ee,Ve){if(!Ve&&se?.exports&&se.exports.forEach((Wt,Nt)=>D.add(Nt)),!(se&&se.exports&&pa(C,se)))return;let Oe=new Map(se.exports),ot=se.exports.get("__export");if(ot){let Wt=Du(),Nt=new Map;if(ot.declarations)for(let Mr of ot.declarations){let ln=z0(Mr,Mr.moduleSpecifier),hn=Q(ln,Mr,Ve||Mr.isTypeOnly);P4(Wt,hn,Nt,Mr)}Nt.forEach(({exportsWithDuplicate:Mr},ln)=>{if(!(ln==="export="||!(Mr&&Mr.length)||Oe.has(ln)))for(let hn of Mr)UA.add(Us(hn,Z.Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity,Nt.get(ln).specifierText,Sc(ln)))}),P4(Oe,Wt)}return Ee?.isTypeOnly&&(E??(E=new Map),Oe.forEach((Wt,Nt)=>E.set(Nt,Ee))),Oe}}function GA(l){let C;return l&&l.mergeId&&(C=Ps[l.mergeId])?C:l}function Mo(l){return GA(l.symbol&&d$e(l.symbol))}function z2(l){return B2(l)?Mo(l):void 0}function o_(l){return GA(l.parent&&d$e(l.parent))}function fre(l){var C,E;return(((C=l.valueDeclaration)==null?void 0:C.kind)===219||((E=l.valueDeclaration)==null?void 0:E.kind)===218)&&z2(l.valueDeclaration.parent)||l}function Ire(l,C){let E=ls(C),D=sd(E),W=ol(l),Q;if(W.extendedContainersByFile&&(Q=W.extendedContainersByFile.get(D)))return Q;if(E&&E.imports){for(let Ee of E.imports){if(qd(Ee))continue;let Ve=z0(C,Ee,!0);!Ve||!VV(Ve,l)||(Q=Hr(Q,Ve))}if(O(Q))return(W.extendedContainersByFile||(W.extendedContainersByFile=new Map)).set(D,Q),Q}if(W.extendedContainers)return W.extendedContainers;let se=n.getSourceFiles();for(let Ee of se){if(!mm(Ee))continue;let Ve=Mo(Ee);VV(Ve,l)&&(Q=Hr(Q,Ve))}return W.extendedContainers=Q||v}function WP(l,C,E){let D=o_(l);if(D&&!(l.flags&262144))return Ve(D);let W=tr(l.declarations,ot=>{if(!Yf(ot)&&ot.parent){if(qG(ot.parent))return Mo(ot.parent);if(SN(ot.parent)&&ot.parent.parent&&db(Mo(ot.parent.parent))===l)return Mo(ot.parent.parent)}if(tp(ot)&&no(ot.parent)&&ot.parent.operatorToken.kind===64&&Cp(ot.parent.left)&&cp(ot.parent.left.expression))return AN(ot.parent.left)||O3(ot.parent.left.expression)?Mo(ls(ot)):(iC(ot.parent.left.expression),Uo(ot.parent.left.expression).resolvedSymbol)});if(!O(W))return;let Q=tr(W,ot=>VV(ot,l)?ot:void 0),se=[],Ee=[];for(let ot of Q){let[Wt,...Nt]=Ve(ot);se=Hr(se,Wt),Ee=ai(Ee,Nt)}return vi(se,Ee);function Ve(ot){let Wt=tr(ot.declarations,Oe),Nt=C&&Ire(l,C),Mr=LV(ot,E);if(C&&ot.flags&bl(E)&&jl(ot,C,1920,!1))return Hr(vi(vi([ot],Wt),Nt),Mr);let ln=!(ot.flags&bl(E))&&ot.flags&788968&&xp(ot).flags&524288&&E===111551?Gl(C,mi=>JC(mi,Ti=>{if(Ti.flags&bl(E)&&lo(Ti)===xp(ot))return Ti})):void 0,hn=ln?[ln,...Wt,ot]:[...Wt,ot];return hn=Hr(hn,Mr),hn=ai(hn,Nt),hn}function Oe(ot){return D&&Cre(ot,D)}}function LV(l,C){let E=!!O(l.declarations)&&$s(l.declarations);if(C&111551&&E&&E.parent&&zs(E.parent)&&(tu(E)&&E===E.parent.initializer||Se(E)&&E===E.parent.type))return Mo(E.parent)}function Cre(l,C){let E=PY(l),D=E&&E.exports&&E.exports.get("export=");return D&&lw(D,C)?E:void 0}function VV(l,C){if(l===o_(C))return C;let E=l.exports&&l.exports.get("export=");if(E&&lw(E,C))return l;let D=Y1(l),W=D.get(C.escapedName);return W&&lw(W,C)?W:JC(D,Q=>{if(lw(Q,C))return Q})}function lw(l,C){if(GA(JI(GA(l)))===GA(JI(GA(C))))return l}function H1(l){return GA(l&&(l.flags&1048576)!==0&&l.exportSymbol||l)}function AD(l,C){return!!(l.flags&111551||l.flags&2097152&&Kb(l,!C)&111551)}function YN(l){var C;let E=new b(gi,l);return N++,E.id=N,(C=Mi)==null||C.recordType(E),E}function jG(l,C){let E=YN(l);return E.symbol=C,E}function M4(l){return new b(gi,l)}function LC(l,C,E=0,D){uw(C,D);let W=YN(l);return W.intrinsicName=C,W.debugIntrinsicName=D,W.objectFlags=E|524288|2097152|33554432|16777216,W}function uw(l,C){let E=`${l},${C??""}`;br.has(E)&&w.fail(`Duplicate intrinsic type name ${l}${C?` (${C})`:""}; you may need to pass a name to createIntrinsicType.`),br.add(E)}function X1(l,C){let E=jG(524288,C);return E.objectFlags=l,E.members=void 0,E.properties=void 0,E.callSignatures=void 0,E.constructSignatures=void 0,E.indexInfos=void 0,E}function nL(){return Ta(on(FDt.keys(),pb))}function q2(l){return jG(262144,l)}function Q4(l){return l.charCodeAt(0)===95&&l.charCodeAt(1)===95&&l.charCodeAt(2)!==95&&l.charCodeAt(2)!==64&&l.charCodeAt(2)!==35}function WV(l){let C;return l.forEach((E,D)=>{ce(E,D)&&(C||(C=[])).push(E)}),C||v}function ce(l,C){return!Q4(C)&&AD(l)}function _t(l){let C=WV(l),E=m$e(l);return E?vi(C,[E]):C}function pn(l,C,E,D,W){let Q=l;return Q.members=C,Q.properties=v,Q.callSignatures=E,Q.constructSignatures=D,Q.indexInfos=W,C!==Be&&(Q.properties=WV(C)),Q}function qn(l,C,E,D,W){return pn(X1(16,l),C,E,D,W)}function Ka(l){if(l.constructSignatures.length===0)return l;if(l.objectTypeWithoutAbstractConstructSignatures)return l.objectTypeWithoutAbstractConstructSignatures;let C=Gt(l.constructSignatures,D=>!(D.flags&4));if(l.constructSignatures===C)return l;let E=qn(l.symbol,l.members,l.callSignatures,lr(C)?C:v,l.indexInfos);return l.objectTypeWithoutAbstractConstructSignatures=E,E.objectTypeWithoutAbstractConstructSignatures=E,E}function Gl(l,C){let E;for(let D=l;D;D=D.parent){if(Tv(D)&&D.locals&&!bs(D)&&(E=C(D.locals,void 0,!0,D)))return E;switch(D.kind){case 307:if(!ia(D))break;case 267:let W=Mo(D);if(E=C(W?.exports||Be,void 0,!0,D))return E;break;case 263:case 231:case 264:let Q;if((Mo(D).members||Be).forEach((se,Ee)=>{se.flags&788968&&(Q||(Q=Du())).set(Ee,se)}),Q&&(E=C(Q,void 0,!1,D)))return E;break}}return C(kt,void 0,!0)}function bl(l){return l===111551?111551:1920}function jl(l,C,E,D,W=new Map){if(!(l&&!q0(l)))return;let Q=ol(l),se=Q.accessibleChainCache||(Q.accessibleChainCache=new Map),Ee=Gl(C,(Ti,ks,Wo,Yi)=>Yi),Ve=`${D?0:1}|${Ee&&sd(Ee)}|${E}`;if(se.has(Ve))return se.get(Ve);let Oe=kg(l),ot=W.get(Oe);ot||W.set(Oe,ot=[]);let Wt=Gl(C,Nt);return se.set(Ve,Wt),Wt;function Nt(Ti,ks,Wo){if(!pa(ot,Ti))return;let Yi=hn(Ti,ks,Wo);return ot.pop(),Yi}function Mr(Ti,ks){return!Hg(Ti,C,ks)||!!jl(Ti.parent,C,bl(ks),D,W)}function ln(Ti,ks,Wo){return(l===(ks||Ti)||GA(l)===GA(ks||Ti))&&!lr(Ti.declarations,qG)&&(Wo||Mr(GA(Ti),E))}function hn(Ti,ks,Wo){return ln(Ti.get(l.escapedName),void 0,ks)?[l]:JC(Ti,Cs=>{if(Cs.flags&2097152&&Cs.escapedName!=="export="&&Cs.escapedName!=="default"&&!(Oce(Cs)&&C&&mm(ls(C)))&&(!D||lr(Cs.declarations,EZ))&&(!Wo||!lr(Cs.declarations,PRe))&&(ks||!zd(Cs,281))){let Ds=qm(Cs),zo=mi(Cs,Ds,ks);if(zo)return zo}if(Cs.escapedName===l.escapedName&&Cs.exportSymbol&&ln(GA(Cs.exportSymbol),void 0,ks))return[l]})||(Ti===kt?mi(Dr,Dr,ks):void 0)}function mi(Ti,ks,Wo){if(ln(Ti,ks,Wo))return[Ti];let Yi=Y1(ks),Cs=Yi&&Nt(Yi,!0);if(Cs&&Mr(Ti,bl(E)))return[Ti].concat(Cs)}}function Hg(l,C,E){let D=!1;return Gl(C,W=>{let Q=GA(W.get(l.escapedName));if(!Q)return!1;if(Q===l)return!0;let se=Q.flags&2097152&&!zd(Q,281);return Q=se?qm(Q):Q,(se?Kb(Q):Q.flags)&E?(D=!0,!0):!1}),D}function q0(l){if(l.declarations&&l.declarations.length){for(let C of l.declarations)switch(C.kind){case 172:case 174:case 177:case 178:continue;default:return!1}return!0}return!1}function m0(l,C){return zG(l,C,788968,!1,!0).accessibility===0}function iL(l,C){return zG(l,C,111551,!1,!0).accessibility===0}function WY(l,C,E){return zG(l,C,E,!1,!1).accessibility===0}function XE(l,C,E,D,W,Q){if(!O(l))return;let se,Ee=!1;for(let Ve of l){let Oe=jl(Ve,C,D,!1);if(Oe){se=Ve;let Nt=PP(Oe[0],W);if(Nt)return Nt}if(Q&&lr(Ve.declarations,qG)){if(W){Ee=!0;continue}return{accessibility:0}}let ot=WP(Ve,C,D),Wt=XE(ot,C,E,E===Ve?bl(D):D,W,Q);if(Wt)return Wt}if(Ee)return{accessibility:0};if(se)return{accessibility:1,errorSymbolName:qc(E,C,D),errorModuleName:se!==E?qc(se,C,1920):void 0}}function CT(l,C,E,D){return zG(l,C,E,D,!0)}function zG(l,C,E,D,W){if(l&&C){let Q=XE([l],C,l,E,D,W);if(Q)return Q;let se=X(l.declarations,PY);if(se){let Ee=PY(C);if(se!==Ee)return{accessibility:2,errorSymbolName:qc(l,C,E),errorModuleName:qc(se),errorNode:so(C)?C:void 0}}return{accessibility:1,errorSymbolName:qc(l,C,E)}}return{accessibility:0}}function PY(l){let C=Si(l,mre);return C&&Mo(C)}function mre(l){return Yf(l)||l.kind===307&&ia(l)}function qG(l){return SQ(l)||l.kind===307&&ia(l)}function PP(l,C){let E;if(!he(Gt(l.declarations,Q=>Q.kind!==80),D))return;return{accessibility:0,aliasesToMakeVisible:E};function D(Q){var se,Ee;if(!$G(Q)){let Ve=F4(Q);if(Ve&&!ba(Ve,32)&&$G(Ve.parent))return W(Q,Ve);if(zs(Q)&&Rp(Q.parent.parent)&&!ba(Q.parent.parent,32)&&$G(Q.parent.parent.parent))return W(Q,Q.parent.parent);if(T8(Q)&&!ba(Q,32)&&$G(Q.parent))return W(Q,Q);if(ml(Q)){if(l.flags&2097152&&so(Q)&&((se=Q.parent)!=null&&se.parent)&&zs(Q.parent.parent)&&((Ee=Q.parent.parent.parent)!=null&&Ee.parent)&&Rp(Q.parent.parent.parent.parent)&&!ba(Q.parent.parent.parent.parent,32)&&Q.parent.parent.parent.parent.parent&&$G(Q.parent.parent.parent.parent.parent))return W(Q,Q.parent.parent.parent.parent);if(l.flags&2){let Oe=Si(Q,Rp);return ba(Oe,32)?!0:$G(Oe.parent)?W(Q,Oe):!1}}return!1}return!0}function W(Q,se){return C&&(Uo(Q).isVisible=!0,E=sg(E,se)),!0}}function sL(l){let C;return l.parent.kind===186||l.parent.kind===233&&!LS(l.parent)||l.parent.kind===167||l.parent.kind===182&&l.parent.parameterName===l?C=1160127:l.kind===166||l.kind===211||l.parent.kind===271||l.parent.kind===166&&l.parent.left===l||l.parent.kind===211&&l.parent.expression===l||l.parent.kind===212&&l.parent.expression===l?C=1920:C=788968,C}function PV(l,C,E=!0){let D=sL(l),W=ib(l),Q=Pi(C,W.escapedText,D,void 0,!1);return Q&&Q.flags&262144&&D&788968?{accessibility:0}:!Q&&_G(W)&&CT(Mo(r0(W,!1,!1)),W,D,!1).accessibility===0?{accessibility:0}:Q?PP(Q,E)||{accessibility:1,errorSymbolName:Tf(W),errorNode:W}:{accessibility:3,errorSymbolName:Tf(W),errorNode:W}}function qc(l,C,E,D=4,W){let Q=70221824;D&2&&(Q|=128),D&1&&(Q|=512),D&8&&(Q|=16384),D&32&&(Q|=134217728),D&16&&(Q|=1073741824);let se=D&4?Kt.symbolToNode:Kt.symbolToEntityName;return W?Ee(W).getText():Z3(Ee);function Ee(Ve){let Oe=se(l,E,C,Q),ot=C?.kind===307?Lxt():h4(),Wt=C&&ls(C);return ot.writeNode(4,Oe,Wt,Ve),Ve}}function OV(l,C,E=0,D,W){return W?Q(W).getText():Z3(Q);function Q(se){let Ee;E&262144?Ee=D===1?185:184:Ee=D===1?180:179;let Ve=Kt.signatureToSignatureDeclaration(l,Ee,C,_re(E)|70221824|512),Oe=Jke(),ot=C&&ls(C);return Oe.writeNode(4,Ve,ot,Nme(se)),se}}function Xs(l,C,E=1064960,D=Bee("")){let W=Ne.noErrorTruncation||E&1,Q=Kt.typeToTypeNode(l,C,_re(E)|70221824|(W?1:0));if(Q===void 0)return w.fail("should always get typenode");let se=l!==kn?h4():Zxt(),Ee=C&&ls(C);se.writeNode(4,Q,Ee,D);let Ve=D.getText(),Oe=W?T$*2:_Q*2;return Oe&&Ve&&Ve.length>=Oe?Ve.substr(0,Oe-3)+"...":Ve}function Kue(l,C){let E=B7(l.symbol)?Xs(l,l.symbol.valueDeclaration):Xs(l),D=B7(C.symbol)?Xs(C,C.symbol.valueDeclaration):Xs(C);return E===D&&(E=hre(l),D=hre(C)),[E,D]}function hre(l){return Xs(l,void 0,64)}function B7(l){return l&&!!l.valueDeclaration&&tn(l.valueDeclaration)&&!XB(l.valueDeclaration)}function _re(l=0){return l&848330095}function yre(l){return!!l.symbol&&!!(l.symbol.flags&32)&&(l===_C(l.symbol)||!!(l.flags&524288)&&!!(sa(l)&16777216))}function AZe(l){return Lc(l)}function dZe(){return{typeToTypeNode:(Xt,Bt,li,Xi)=>Ee(Bt,li,Xi,mo=>Oe(Xt,mo)),typePredicateToTypePredicateNode:(Xt,Bt,li,Xi)=>Ee(Bt,li,Xi,mo=>Ou(Xt,mo)),expressionOrTypeToTypeNode:(Xt,Bt,li,Xi,mo,fo)=>Ee(Xi,mo,fo,Go=>E(Go,Xt,Bt,li)),serializeTypeForDeclaration:(Xt,Bt,li,Xi,mo,fo)=>Ee(Xi,mo,fo,Go=>W_(Go,Xt,Bt,li)),serializeReturnTypeForSignature:(Xt,Bt,li,Xi)=>Ee(Bt,li,Xi,mo=>Ln(mo,Xt)),indexInfoToIndexSignatureDeclaration:(Xt,Bt,li,Xi)=>Ee(Bt,li,Xi,mo=>Ti(Xt,mo,void 0)),signatureToSignatureDeclaration:(Xt,Bt,li,Xi,mo)=>Ee(li,Xi,mo,fo=>ks(Xt,Bt,fo)),symbolToEntityName:(Xt,Bt,li,Xi,mo)=>Ee(li,Xi,mo,fo=>_0(Xt,fo,Bt,!1)),symbolToExpression:(Xt,Bt,li,Xi,mo)=>Ee(li,Xi,mo,fo=>Uf(Xt,fo,Bt)),symbolToTypeParameterDeclarations:(Xt,Bt,li,Xi)=>Ee(Bt,li,Xi,mo=>Zs(Xt,mo)),symbolToParameterDeclaration:(Xt,Bt,li,Xi)=>Ee(Bt,li,Xi,mo=>ou(Xt,mo)),typeParameterToDeclaration:(Xt,Bt,li,Xi)=>Ee(Bt,li,Xi,mo=>Tg(Xt,mo)),symbolTableToDeclarationStatements:(Xt,Bt,li,Xi)=>Ee(Bt,li,Xi,mo=>Xg(Xt,mo)),symbolToNode:(Xt,Bt,li,Xi,mo)=>Ee(li,Xi,mo,fo=>se(Xt,fo,Bt))};function l(Xt,Bt,li){let Xi=AZe(Bt);if(!Xt.mapper)return Xi;let mo=al(Xi,Xt.mapper);return li&&mo!==Xi?void 0:mo}function C(Xt,Bt,li){return(!qd(Bt)||!(Bt.flags&16)||!Xt.enclosingFile||Xt.enclosingFile!==ls(Tp(Bt)))&&(Bt=_e.cloneNode(Bt)),Bt===li||!li?Bt:!Xt.enclosingFile||Xt.enclosingFile!==ls(Tp(li))?Ho(Bt,li):un(Ho(Bt,li),li)}function E(Xt,Bt,li,Xi){let mo=Xt.flags;Bt&&!(Xt.flags&-2147483648)&&Tt.serializeTypeOfExpression(Bt,Xt,Xi),Xt.flags|=-2147483648;let fo=D(Xt,Bt,li,Xi);return Xt.flags=mo,fo}function D(Xt,Bt,li,Xi){if(Bt){let mo=DE(Bt)?Bt.type:f4(Bt)?Wle(Bt):void 0;if(mo&&!E2(mo)){let fo=W(Xt,mo,li,Bt.parent,Xi);if(fo)return fo}}return Xi&&(li=tW(li)),Oe(li,Xt)}function W(Xt,Bt,li,Xi,mo){let fo=li;mo&&(li=tW(li,!Jc(Xi)));let Go=Q(Xt,Bt,li,Xi);if(Go)return mo&&UXr(li)&&!Kv(l(Xt,Bt),Wc=>!!(Wc.flags&32768))?_e.createUnionTypeNode([Go,_e.createKeywordTypeNode(157)]):Go;if(mo&&fo!==li){let Wc=Q(Xt,Bt,fo,Xi);if(Wc)return _e.createUnionTypeNode([Wc,_e.createKeywordTypeNode(157)])}}function Q(Xt,Bt,li,Xi=Xt.enclosingDeclaration,mo=l(Xt,Bt,!0)){if(mo&&WLe(Xi,li,mo)&&vge(Bt,li)){let fo=Gg(Xt,Bt);if(fo)return fo}}function se(Xt,Bt,li){if(Bt.flags&1073741824){if(Xt.valueDeclaration){let mo=vl(Xt.valueDeclaration);if(mo&&xg(mo))return mo}let Xi=ol(Xt).nameType;if(Xi&&Xi.flags&9216)return Bt.enclosingDeclaration=Xi.symbol.valueDeclaration,_e.createComputedPropertyName(Uf(Xi.symbol,Bt,li))}return Uf(Xt,Bt,li)}function Ee(Xt,Bt,li,Xi){let mo=li?.trackSymbol?li.moduleResolverHost:Bt&134217728?_6i(n):void 0,fo={enclosingDeclaration:Xt,enclosingFile:Xt&&ls(Xt),flags:Bt||0,tracker:void 0,encounteredError:!1,reportedDiagnostic:!1,visitedTypes:void 0,symbolDepth:void 0,inferTypeParameters:void 0,approximateLength:0,trackedSymbols:void 0,bundled:!!Ne.outFile&&!!Xt&&ia(ls(Xt)),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};fo.tracker=new LDt(fo,li,mo);let Go=Xi(fo);return fo.truncating&&fo.flags&1&&fo.tracker.reportTruncationError(),fo.encounteredError?void 0:Go}function Ve(Xt){return Xt.truncating?Xt.truncating:Xt.truncating=Xt.approximateLength>(Xt.flags&1?T$:_Q)}function Oe(Xt,Bt){let li=Bt.flags,Xi=ot(Xt,Bt);return Bt.flags=li,Xi}function ot(Xt,Bt){var li,Xi;d&&d.throwIfCancellationRequested&&d.throwIfCancellationRequested();let mo=Bt.flags&8388608;if(Bt.flags&=-8388609,!Xt){if(!(Bt.flags&262144)){Bt.encounteredError=!0;return}return Bt.approximateLength+=3,_e.createKeywordTypeNode(133)}if(Bt.flags&536870912||(Xt=bT(Xt)),Xt.flags&1)return Xt.aliasSymbol?_e.createTypeReferenceNode(Cd(Xt.aliasSymbol),hn(Xt.aliasTypeArguments,Bt)):Xt===kn?i4(_e.createKeywordTypeNode(133),3,"unresolved"):(Bt.approximateLength+=3,_e.createKeywordTypeNode(Xt===an?141:133));if(Xt.flags&2)return _e.createKeywordTypeNode(159);if(Xt.flags&4)return Bt.approximateLength+=6,_e.createKeywordTypeNode(154);if(Xt.flags&8)return Bt.approximateLength+=6,_e.createKeywordTypeNode(150);if(Xt.flags&64)return Bt.approximateLength+=6,_e.createKeywordTypeNode(163);if(Xt.flags&16&&!Xt.aliasSymbol)return Bt.approximateLength+=7,_e.createKeywordTypeNode(136);if(Xt.flags&1056){if(Xt.symbol.flags&8){let yn=o_(Xt.symbol),hi=$A(yn,Bt,788968);if(xp(yn)===Xt)return hi;let vs=df(Xt.symbol);return Ke(vs,1)?Lr(hi,_e.createTypeReferenceNode(vs,void 0)):Tu(hi)?(hi.isTypeOf=!0,_e.createIndexedAccessTypeNode(hi,_e.createLiteralTypeNode(_e.createStringLiteral(vs)))):F(hi)?_e.createIndexedAccessTypeNode(_e.createTypeQueryNode(hi.typeName),_e.createLiteralTypeNode(_e.createStringLiteral(vs))):w.fail("Unhandled type node kind returned from `symbolToTypeNode`.")}return $A(Xt.symbol,Bt,788968)}if(Xt.flags&128)return Bt.approximateLength+=Xt.value.length+2,_e.createLiteralTypeNode(co(_e.createStringLiteral(Xt.value,!!(Bt.flags&268435456)),16777216));if(Xt.flags&256){let yn=Xt.value;return Bt.approximateLength+=(""+yn).length,_e.createLiteralTypeNode(yn<0?_e.createPrefixUnaryExpression(41,_e.createNumericLiteral(-yn)):_e.createNumericLiteral(yn))}if(Xt.flags&2048)return Bt.approximateLength+=gV(Xt.value).length+1,_e.createLiteralTypeNode(_e.createBigIntLiteral(Xt.value));if(Xt.flags&512)return Bt.approximateLength+=Xt.intrinsicName.length,_e.createLiteralTypeNode(Xt.intrinsicName==="true"?_e.createTrue():_e.createFalse());if(Xt.flags&8192){if(!(Bt.flags&1048576)){if(iL(Xt.symbol,Bt.enclosingDeclaration))return Bt.approximateLength+=6,$A(Xt.symbol,Bt,111551);Bt.tracker.reportInaccessibleUniqueSymbolError&&Bt.tracker.reportInaccessibleUniqueSymbolError()}return Bt.approximateLength+=13,_e.createTypeOperatorNode(158,_e.createKeywordTypeNode(155))}if(Xt.flags&16384)return Bt.approximateLength+=4,_e.createKeywordTypeNode(116);if(Xt.flags&32768)return Bt.approximateLength+=9,_e.createKeywordTypeNode(157);if(Xt.flags&65536)return Bt.approximateLength+=4,_e.createLiteralTypeNode(_e.createNull());if(Xt.flags&131072)return Bt.approximateLength+=5,_e.createKeywordTypeNode(146);if(Xt.flags&4096)return Bt.approximateLength+=6,_e.createKeywordTypeNode(155);if(Xt.flags&67108864)return Bt.approximateLength+=6,_e.createKeywordTypeNode(151);if(E6(Xt))return Bt.flags&4194304&&(!Bt.encounteredError&&!(Bt.flags&32768)&&(Bt.encounteredError=!0),(Xi=(li=Bt.tracker).reportInaccessibleThisError)==null||Xi.call(li)),Bt.approximateLength+=4,_e.createThisTypeNode();if(!mo&&Xt.aliasSymbol&&(Bt.flags&16384||m0(Xt.aliasSymbol,Bt.enclosingDeclaration))){let yn=hn(Xt.aliasTypeArguments,Bt);return Q4(Xt.aliasSymbol.escapedName)&&!(Xt.aliasSymbol.flags&32)?_e.createTypeReferenceNode(_e.createIdentifier(""),yn):O(yn)===1&&Xt.aliasSymbol===Fn.symbol?_e.createArrayTypeNode(yn[0]):$A(Xt.aliasSymbol,Bt,788968,yn)}let fo=sa(Xt);if(fo&4)return w.assert(!!(Xt.flags&524288)),Xt.node?Cr(Xt,Wn):Wn(Xt);if(Xt.flags&262144||fo&3){if(Xt.flags&262144&&Ue(Bt.inferTypeParameters,Xt)){Bt.approximateLength+=df(Xt.symbol).length+6;let hi,vs=By(Xt);if(vs){let pi=F5r(Xt,!0);pi&&iF(vs,pi)||(Bt.approximateLength+=9,hi=vs&&Oe(vs,Bt))}return _e.createInferTypeNode(ma(Xt,Bt,hi))}if(Bt.flags&4&&Xt.flags&262144){let hi=bg(Xt,Bt);return Bt.approximateLength+=ao(hi).length,_e.createTypeReferenceNode(_e.createIdentifier(ao(hi)),void 0)}if(Xt.symbol)return $A(Xt.symbol,Bt,788968);let yn=(Xt===Yb||Xt===rf)&&Ae&&Ae.symbol?(Xt===rf?"sub-":"super-")+df(Ae.symbol):"?";return _e.createTypeReferenceNode(_e.createIdentifier(yn),void 0)}if(Xt.flags&1048576&&Xt.origin&&(Xt=Xt.origin),Xt.flags&3145728){let yn=Xt.flags&1048576?L0e(Xt.types):Xt.types;if(O(yn)===1)return Oe(yn[0],Bt);let hi=hn(yn,Bt,!0);if(hi&&hi.length>0)return Xt.flags&1048576?_e.createUnionTypeNode(hi):_e.createIntersectionTypeNode(hi);!Bt.encounteredError&&!(Bt.flags&262144)&&(Bt.encounteredError=!0);return}if(fo&48)return w.assert(!!(Xt.flags&524288)),up(Xt);if(Xt.flags&4194304){let yn=Xt.type;Bt.approximateLength+=6;let hi=Oe(yn,Bt);return _e.createTypeOperatorNode(143,hi)}if(Xt.flags&134217728){let yn=Xt.texts,hi=Xt.types,vs=_e.createTemplateHead(yn[0]),pi=_e.createNodeArray(Ot(hi,(Js,ta)=>_e.createTemplateLiteralTypeSpan(Oe(Js,Bt),(taGo(yn));if(Xt.flags&33554432){let yn=Oe(Xt.baseType,Bt),hi=xre(Xt)&&d3t("NoInfer",!1);return hi?$A(hi,Bt,788968,[yn]):yn}return w.fail("Should be unreachable.");function Go(yn){let hi=Oe(yn.checkType,Bt);if(Bt.approximateLength+=15,Bt.flags&4&&yn.root.isDistributive&&!(yn.checkType.flags&262144)){let Vs=q2(SA(262144,"T")),va=bg(Vs,Bt),fa=_e.createTypeReferenceNode(va);Bt.approximateLength+=37;let ng=$4(yn.root.checkType,Vs,yn.mapper),Eg=Bt.inferTypeParameters;Bt.inferTypeParameters=yn.root.inferTypeParameters;let Hp=Oe(al(yn.root.extendsType,ng),Bt);Bt.inferTypeParameters=Eg;let wy=Wc(al(l(Bt,yn.root.node.trueType),ng)),UE=Wc(al(l(Bt,yn.root.node.falseType),ng));return _e.createConditionalTypeNode(hi,_e.createInferTypeNode(_e.createTypeParameterDeclaration(void 0,_e.cloneNode(fa.typeName))),_e.createConditionalTypeNode(_e.createTypeReferenceNode(_e.cloneNode(va)),Oe(yn.checkType,Bt),_e.createConditionalTypeNode(fa,Hp,wy,UE),_e.createKeywordTypeNode(146)),_e.createKeywordTypeNode(146))}let vs=Bt.inferTypeParameters;Bt.inferTypeParameters=yn.root.inferTypeParameters;let pi=Oe(yn.extendsType,Bt);Bt.inferTypeParameters=vs;let Js=Wc(KP(yn)),ta=Wc(jP(yn));return _e.createConditionalTypeNode(hi,pi,Js,ta)}function Wc(yn){var hi,vs,pi;return yn.flags&1048576?(hi=Bt.visitedTypes)!=null&&hi.has(Gh(yn))?(Bt.flags&131072||(Bt.encounteredError=!0,(pi=(vs=Bt.tracker)==null?void 0:vs.reportCyclicStructureError)==null||pi.call(vs)),Wt(Bt)):Cr(yn,Js=>Oe(Js,Bt)):Oe(yn,Bt)}function gl(yn){return!!nye(yn)}function nu(yn){return!!yn.target&&gl(yn.target)&&!gl(yn)}function Bu(yn){var hi;w.assert(!!(yn.flags&524288));let vs=yn.declaration.readonlyToken?_e.createToken(yn.declaration.readonlyToken.kind):void 0,pi=yn.declaration.questionToken?_e.createToken(yn.declaration.questionToken.kind):void 0,Js,ta,Vs=!Tre(yn)&&!(YY(yn).flags&2)&&Bt.flags&4&&!(eB(yn).flags&262144&&((hi=By(eB(yn)))==null?void 0:hi.flags)&4194304);if(Tre(yn)){if(nu(yn)&&Bt.flags&4){let wy=q2(SA(262144,"T")),UE=bg(wy,Bt);ta=_e.createTypeReferenceNode(UE)}Js=_e.createTypeOperatorNode(143,ta||Oe(YY(yn),Bt))}else if(Vs){let wy=q2(SA(262144,"T")),UE=bg(wy,Bt);ta=_e.createTypeReferenceNode(UE),Js=ta}else Js=Oe(eB(yn),Bt);let va=ma(_T(yn),Bt,Js),fa=yn.declaration.nameType?Oe(cL(yn),Bt):void 0,ng=Oe(cF(rF(yn),!!(CD(yn)&4)),Bt),Eg=_e.createMappedTypeNode(vs,va,fa,pi,ng,void 0);Bt.approximateLength+=10;let Hp=co(Eg,1);if(nu(yn)&&Bt.flags&4){let wy=al(By(l(Bt,yn.declaration.typeParameter.constraint.type))||Kr,yn.mapper);return _e.createConditionalTypeNode(Oe(YY(yn),Bt),_e.createInferTypeNode(_e.createTypeParameterDeclaration(void 0,_e.cloneNode(ta.typeName),wy.flags&2?void 0:Oe(wy,Bt))),Hp,_e.createKeywordTypeNode(146))}else if(Vs)return _e.createConditionalTypeNode(Oe(eB(yn),Bt),_e.createInferTypeNode(_e.createTypeParameterDeclaration(void 0,_e.cloneNode(ta.typeName),_e.createTypeOperatorNode(143,Oe(YY(yn),Bt)))),Hp,_e.createKeywordTypeNode(146));return Hp}function up(yn){var hi,vs;let pi=yn.id,Js=yn.symbol;if(Js){if(!!(sa(yn)&8388608)){let ng=yn.node;if(oe(ng)){let Eg=Q(Bt,ng,yn);if(Eg)return Eg}return(hi=Bt.visitedTypes)!=null&&hi.has(pi)?Wt(Bt):Cr(yn,Qr)}let va=yre(yn)?788968:111551;if(qN(Js.valueDeclaration))return $A(Js,Bt,va);if(Js.flags&32&&!c$e(Js)&&!(Js.valueDeclaration&&Sa(Js.valueDeclaration)&&Bt.flags&2048&&(!bc(Js.valueDeclaration)||CT(Js,Bt.enclosingDeclaration,va,!1).accessibility!==0))||Js.flags&896||ta())return $A(Js,Bt,va);if((vs=Bt.visitedTypes)!=null&&vs.has(pi)){let fa=zue(yn);return fa?$A(fa,Bt,788968):Wt(Bt)}else return Cr(yn,Qr)}else return Qr(yn);function ta(){var Vs;let va=!!(Js.flags&8192)&&lr(Js.declarations,ng=>$u(ng)),fa=!!(Js.flags&16)&&(Js.parent||X(Js.declarations,ng=>ng.parent.kind===307||ng.parent.kind===268));if(va||fa)return(!!(Bt.flags&4096)||((Vs=Bt.visitedTypes)==null?void 0:Vs.has(pi)))&&(!(Bt.flags&8)||iL(Js,Bt.enclosingDeclaration))}}function Cr(yn,hi){var vs,pi,Js;let ta=yn.id,Vs=sa(yn)&16&&yn.symbol&&yn.symbol.flags&32,va=sa(yn)&4&&yn.node?"N"+sd(yn.node):yn.flags&16777216?"N"+sd(yn.root.node):yn.symbol?(Vs?"+":"")+kg(yn.symbol):void 0;Bt.visitedTypes||(Bt.visitedTypes=new Set),va&&!Bt.symbolDepth&&(Bt.symbolDepth=new Map);let fa=Bt.enclosingDeclaration&&Uo(Bt.enclosingDeclaration),ng=`${Gh(yn)}|${Bt.flags}`;fa&&(fa.serializedTypes||(fa.serializedTypes=new Map));let Eg=(vs=fa?.serializedTypes)==null?void 0:vs.get(ng);if(Eg)return(pi=Eg.trackedSymbols)==null||pi.forEach(([rE,Ure,oW])=>Bt.tracker.trackSymbol(rE,Ure,oW)),Eg.truncating&&(Bt.truncating=!0),Bt.approximateLength+=Eg.addedLength,oH(Eg.node);let Hp;if(va){if(Hp=Bt.symbolDepth.get(va)||0,Hp>10)return Wt(Bt);Bt.symbolDepth.set(va,Hp+1)}Bt.visitedTypes.add(ta);let wy=Bt.trackedSymbols;Bt.trackedSymbols=void 0;let UE=Bt.approximateLength,sW=hi(yn),iO=Bt.approximateLength-UE;return!Bt.reportedDiagnostic&&!Bt.encounteredError&&((Js=fa?.serializedTypes)==null||Js.set(ng,{node:sW,truncating:Bt.truncating,addedLength:iO,trackedSymbols:Bt.trackedSymbols})),Bt.visitedTypes.delete(ta),va&&Bt.symbolDepth.set(va,Hp),Bt.trackedSymbols=wy,sW;function oH(rE){return!qd(rE)&&jc(rE)===rE?rE:C(Bt,_e.cloneNode(ns(rE,oH,void 0,eR,oH)),rE)}function eR(rE,Ure,oW,aH,Lye){return rE&&rE.length===0?un(_e.createNodeArray(void 0,rE.hasTrailingComma),rE):ws(rE,Ure,oW,aH,Lye)}}function Qr(yn){if(jb(yn)||yn.containsError)return Bu(yn);let hi=yT(yn);if(!hi.properties.length&&!hi.indexInfos.length){if(!hi.callSignatures.length&&!hi.constructSignatures.length)return Bt.approximateLength+=2,co(_e.createTypeLiteralNode(void 0),1);if(hi.callSignatures.length===1&&!hi.constructSignatures.length){let Vs=hi.callSignatures[0];return ks(Vs,184,Bt)}if(hi.constructSignatures.length===1&&!hi.callSignatures.length){let Vs=hi.constructSignatures[0];return ks(Vs,185,Bt)}}let vs=Gt(hi.constructSignatures,Vs=>!!(Vs.flags&4));if(lr(vs)){let Vs=Ot(vs,fa=>U4(fa));return hi.callSignatures.length+(hi.constructSignatures.length-vs.length)+hi.indexInfos.length+(Bt.flags&2048?ft(hi.properties,fa=>!(fa.flags&4194304)):O(hi.properties))&&Vs.push(Ka(hi)),Oe(Pg(Vs),Bt)}let pi=Bt.flags;Bt.flags|=4194304;let Js=ui(hi);Bt.flags=pi;let ta=_e.createTypeLiteralNode(Js);return Bt.approximateLength+=2,co(ta,Bt.flags&1024?0:1),ta}function Wn(yn){let hi=of(yn);if(yn.target===Fn||yn.target===Bs){if(Bt.flags&2){let Js=Oe(hi[0],Bt);return _e.createTypeReferenceNode(yn.target===Fn?"Array":"ReadonlyArray",[Js])}let vs=Oe(hi[0],Bt),pi=_e.createArrayTypeNode(vs);return yn.target===Fn?pi:_e.createTypeOperatorNode(148,pi)}else if(yn.target.objectFlags&8){if(hi=Ar(hi,(vs,pi)=>cF(vs,!!(yn.target.elementFlags[pi]&2))),hi.length>0){let vs=uL(yn),pi=hn(hi.slice(0,vs),Bt);if(pi){let{labeledElementDeclarations:Js}=yn.target;for(let Vs=0;Vs0){let fa=(yn.target.typeParameters||v).length;ta=hn(hi.slice(pi,fa),Bt)}let Vs=Bt.flags;Bt.flags|=16;let va=$A(yn.symbol,Bt,788968,ta);return Bt.flags=Vs,Js?Lr(Js,va):va}}}function Lr(yn,hi){if(Tu(yn)){let vs=yn.typeArguments,pi=yn.qualifier;pi&&(sr(pi)?vs!==xZ(pi)&&(pi=rT(_e.cloneNode(pi),vs)):vs!==xZ(pi.right)&&(pi=_e.updateQualifiedName(pi,pi.left,rT(_e.cloneNode(pi.right),vs)))),vs=hi.typeArguments;let Js=_i(hi);for(let ta of Js)pi=pi?_e.createQualifiedName(pi,ta):ta;return _e.updateImportTypeNode(yn,yn.argument,yn.attributes,pi,vs,yn.isTypeOf)}else{let vs=yn.typeArguments,pi=yn.typeName;sr(pi)?vs!==xZ(pi)&&(pi=rT(_e.cloneNode(pi),vs)):vs!==xZ(pi.right)&&(pi=_e.updateQualifiedName(pi,pi.left,rT(_e.cloneNode(pi.right),vs))),vs=hi.typeArguments;let Js=_i(hi);for(let ta of Js)pi=_e.createQualifiedName(pi,ta);return _e.updateTypeReferenceNode(yn,pi,vs)}}function _i(yn){let hi=yn.typeName,vs=[];for(;!sr(hi);)vs.unshift(hi.right),hi=hi.left;return vs.unshift(hi),vs}function ui(yn){if(Ve(Bt))return[_e.createPropertySignature(void 0,"...",void 0,void 0)];let hi=[];for(let Js of yn.callSignatures)hi.push(ks(Js,179,Bt));for(let Js of yn.constructSignatures)Js.flags&4||hi.push(ks(Js,180,Bt));for(let Js of yn.indexInfos)hi.push(Ti(Js,Bt,yn.objectFlags&1024?Wt(Bt):void 0));let vs=yn.properties;if(!vs)return hi;let pi=0;for(let Js of vs){if(pi++,Bt.flags&2048){if(Js.flags&4194304)continue;L1(Js)&6&&Bt.tracker.reportPrivateInBaseOfClassExpression&&Bt.tracker.reportPrivateInBaseOfClassExpression(Sc(Js.escapedName))}if(Ve(Bt)&&pi+2!(Wn.flags&32768)),0);for(let Wn of Qr){let Lr=ks(Wn,173,Bt,{name:Wc,questionToken:gl});li.push(Cr(Lr))}if(Qr.length||!gl)return}let nu;Nt(Xt,Bt)?nu=Wt(Bt):(mo&&(Bt.reverseMappedStack||(Bt.reverseMappedStack=[]),Bt.reverseMappedStack.push(Xt)),nu=fo?W_(Bt,void 0,fo,Xt):_e.createKeywordTypeNode(133),mo&&Bt.reverseMappedStack.pop());let Bu=ST(Xt)?[_e.createToken(148)]:void 0;Bu&&(Bt.approximateLength+=9);let up=_e.createPropertySignature(Bu,Wc,gl,nu);li.push(Cr(up));function Cr(Qr){var Wn;let Lr=(Wn=Xt.declarations)==null?void 0:Wn.find(_i=>_i.kind===348);if(Lr){let _i=gX(Lr.comment);_i&&US(Qr,[{kind:3,text:`* + })(name => super[name], (name, value) => super[name] = value);`};function Z6(n,c){return lu(n)&&sr(n.expression)&&(wg(n.expression)&8192)!==0&&n.expression.escapedText===c}function pu(n){return n.kind===9}function q3(n){return n.kind===10}function Eu(n){return n.kind===11}function aM(n){return n.kind===12}function Fhe(n){return n.kind===14}function cM(n){return n.kind===15}function lM(n){return n.kind===16}function $3(n){return n.kind===17}function Wle(n){return n.kind===18}function uM(n){return n.kind===26}function Mxe(n){return n.kind===28}function Zhe(n){return n.kind===40}function ote(n){return n.kind===41}function ate(n){return n.kind===42}function cte(n){return n.kind===54}function xG(n){return n.kind===58}function Hxe(n){return n.kind===59}function u4(n){return n.kind===29}function Yxe(n){return n.kind===39}function sr(n){return n.kind===80}function Gc(n){return n.kind===81}function Ox(n){return n.kind===95}function lte(n){return n.kind===90}function g4(n){return n.kind===134}function Lhe(n){return n.kind===131}function Ple(n){return n.kind===135}function CV(n){return n.kind===148}function iT(n){return n.kind===126}function gM(n){return n.kind===128}function Vhe(n){return n.kind===164}function Xxe(n){return n.kind===129}function eP(n){return n.kind===108}function L6(n){return n.kind===102}function Whe(n){return n.kind===84}function c0(n){return n.kind===166}function kg(n){return n.kind===167}function $p(n){return n.kind===168}function Uc(n){return n.kind===169}function FC(n){return n.kind===170}function i_(n){return n.kind===171}function Hl(n){return n.kind===172}function zS(n){return n.kind===173}function lI(n){return n.kind===174}function ef(n){return n.kind===175}function Df(n){return n.kind===176}function Qb(n){return n.kind===177}function ob(n){return n.kind===178}function mV(n){return n.kind===179}function A(n){return n.kind===180}function _(n){return n.kind===181}function S(n){return n.kind===182}function F(n){return n.kind===183}function H(n){return n.kind===184}function Y(n){return n.kind===185}function oe(n){return n.kind===186}function Se(n){return n.kind===187}function Ye(n){return n.kind===188}function Ct(n){return n.kind===189}function At(n){return n.kind===202}function Ut(n){return n.kind===190}function cn(n){return n.kind===191}function Is(n){return n.kind===192}function ji(n){return n.kind===193}function Ei(n){return n.kind===194}function yo(n){return n.kind===195}function to(n){return n.kind===196}function aa(n){return n.kind===197}function as(n){return n.kind===198}function hs(n){return n.kind===199}function wl(n){return n.kind===200}function sd(n){return n.kind===201}function Nu(n){return n.kind===205}function rg(n){return n.kind===204}function tp(n){return n.kind===203}function Wg(n){return n.kind===206}function Wu(n){return n.kind===207}function hl(n){return n.kind===208}function Cf(n){return n.kind===209}function ru(n){return n.kind===210}function fo(n){return n.kind===211}function _A(n){return n.kind===212}function lu(n){return n.kind===213}function qS(n){return n.kind===214}function W1(n){return n.kind===215}function hV(n){return n.kind===216}function ZC(n){return n.kind===217}function PA(n){return n.kind===218}function Id(n){return n.kind===219}function tP(n){return n.kind===220}function nD(n){return n.kind===221}function mf(n){return n.kind===222}function Mb(n){return n.kind===223}function GB(n){return n.kind===224}function Qx(n){return n.kind===225}function ro(n){return n.kind===226}function vN(n){return n.kind===227}function Mx(n){return n.kind===228}function Hx(n){return n.kind===229}function fh(n){return n.kind===230}function rp(n){return n.kind===231}function tf(n){return n.kind===232}function k_(n){return n.kind===233}function $S(n){return n.kind===234}function kG(n){return n.kind===238}function sT(n){return n.kind===235}function SN(n){return n.kind===236}function rP(n){return n.kind===237}function GG(n){return n.kind===354}function PE(n){return n.kind===355}function Hb(n){return n.kind===239}function Yx(n){return n.kind===240}function hc(n){return n.kind===241}function Dp(n){return n.kind===243}function Zv(n){return n.kind===242}function Xf(n){return n.kind===244}function X0(n){return n.kind===245}function GZ(n){return n.kind===246}function FZ(n){return n.kind===247}function FB(n){return n.kind===248}function iD(n){return n.kind===249}function P1(n){return n.kind===250}function FG(n){return n.kind===251}function nP(n){return n.kind===252}function G_(n){return n.kind===253}function _V(n){return n.kind===254}function Bd(n){return n.kind===255}function iC(n){return n.kind===256}function Z2(n){return n.kind===257}function ab(n){return n.kind===258}function ew(n){return n.kind===259}function js(n){return n.kind===260}function bl(n){return n.kind===261}function hp(n){return n.kind===262}function Ec(n){return n.kind===263}function XI(n){return n.kind===264}function Pf(n){return n.kind===265}function iP(n){return n.kind===266}function mC(n){return n.kind===267}function wN(n){return n.kind===268}function Ole(n){return n.kind===269}function Phe(n){return n.kind===270}function mm(n){return n.kind===271}function hI(n){return n.kind===272}function oT(n){return n.kind===273}function MDr(n){return n.kind===302}function UNt(n){return n.kind===300}function HDr(n){return n.kind===301}function A4(n){return n.kind===300}function KNt(n){return n.kind===301}function Xx(n){return n.kind===274}function sD(n){return n.kind===280}function TN(n){return n.kind===275}function yy(n){return n.kind===276}function rf(n){return n.kind===277}function hC(n){return n.kind===278}function ZB(n){return n.kind===279}function l0(n){return n.kind===281}function YDr(n){return n.kind===282}function ZKe(n){return n.kind===353}function V6(n){return n.kind===356}function ZG(n){return n.kind===283}function Jx(n){return n.kind===284}function d4(n){return n.kind===285}function NN(n){return n.kind===286}function AM(n){return n.kind===287}function dM(n){return n.kind===288}function p4(n){return n.kind===289}function jNt(n){return n.kind===290}function RN(n){return n.kind===291}function pM(n){return n.kind===292}function W6(n){return n.kind===293}function Qle(n){return n.kind===294}function aT(n){return n.kind===295}function ute(n){return n.kind===296}function Mle(n){return n.kind===297}function OE(n){return n.kind===298}function fM(n){return n.kind===299}function jC(n){return n.kind===303}function F_(n){return n.kind===304}function Ux(n){return n.kind===305}function yV(n){return n.kind===306}function Fc(n){return n.kind===307}function zNt(n){return n.kind===308}function sP(n){return n.kind===309}function Hle(n){return n.kind===310}function oP(n){return n.kind===311}function qNt(n){return n.kind===324}function $Nt(n){return n.kind===325}function XDr(n){return n.kind===326}function eRt(n){return n.kind===312}function tRt(n){return n.kind===313}function gte(n){return n.kind===314}function Jxe(n){return n.kind===315}function LKe(n){return n.kind===316}function Ate(n){return n.kind===317}function Uxe(n){return n.kind===318}function JDr(n){return n.kind===319}function cT(n){return n.kind===320}function f4(n){return n.kind===322}function LG(n){return n.kind===323}function P6(n){return n.kind===328}function UDr(n){return n.kind===330}function rRt(n){return n.kind===332}function VKe(n){return n.kind===338}function WKe(n){return n.kind===333}function PKe(n){return n.kind===334}function OKe(n){return n.kind===335}function QKe(n){return n.kind===336}function Kxe(n){return n.kind===337}function dte(n){return n.kind===339}function MKe(n){return n.kind===331}function KDr(n){return n.kind===347}function Ohe(n){return n.kind===340}function LB(n){return n.kind===341}function jxe(n){return n.kind===342}function HKe(n){return n.kind===343}function Yle(n){return n.kind===344}function Lv(n){return n.kind===345}function I4(n){return n.kind===346}function jDr(n){return n.kind===327}function nRt(n){return n.kind===348}function zxe(n){return n.kind===329}function qxe(n){return n.kind===350}function zDr(n){return n.kind===349}function DN(n){return n.kind===351}function pte(n){return n.kind===352}var Xle=new WeakMap;function YKe(n,c){var u;let d=n.kind;return CX(d)?d===352?n._children:(u=Xle.get(c))==null?void 0:u.get(n):v}function iRt(n,c,u){n.kind===352&&w.fail("Should not need to re-set the children of a SyntaxList.");let d=Xle.get(c);return d===void 0&&(d=new WeakMap,Xle.set(c,d)),d.set(n,u),u}function XKe(n,c){var u;n.kind===352&&w.fail("Did not expect to unset the children of a SyntaxList."),(u=Xle.get(c))==null||u.delete(n)}function sRt(n,c){let u=Xle.get(n);u!==void 0&&(Xle.delete(n),Xle.set(c,u))}function Qhe(n){return n.createExportDeclaration(void 0,!1,n.createNamedExports([]),void 0)}function C4(n,c,u,d){if(kg(u))return un(n.createElementAccessExpression(c,u.expression),d);{let I=un(eb(u)?n.createPropertyAccessExpression(c,u):n.createElementAccessExpression(c,u),u);return JS(I,128),I}}function oRt(n,c){let u=cP.createIdentifier(n||"React");return GA(u,zc(c)),u}function aRt(n,c,u){if(c0(c)){let d=aRt(n,c.left,u),I=n.createIdentifier(oo(c.right));return I.escapedText=c.right.escapedText,n.createPropertyAccessExpression(d,I)}else return oRt(oo(c),u)}function JKe(n,c,u,d){return c?aRt(n,c,d):n.createPropertyAccessExpression(oRt(u,d),"createElement")}function pKi(n,c,u,d){return c?aRt(n,c,d):n.createPropertyAccessExpression(oRt(u,d),"Fragment")}function cRt(n,c,u,d,I,h){let b=[u];if(d&&b.push(d),I&&I.length>0)if(d||b.push(n.createNull()),I.length>1)for(let R of I)u0(R),b.push(R);else b.push(I[0]);return un(n.createCallExpression(c,void 0,b),h)}function lRt(n,c,u,d,I,h,b){let N=[pKi(n,u,d,h),n.createNull()];if(I&&I.length>0)if(I.length>1)for(let V of I)u0(V),N.push(V);else N.push(I[0]);return un(n.createCallExpression(JKe(n,c,d,h),void 0,N),b)}function UKe(n,c,u){if(bl(c)){let d=qs(c.declarations),I=n.updateVariableDeclaration(d,d.name,void 0,void 0,u);return un(n.createVariableStatement(void 0,n.updateVariableDeclarationList(c,[I])),c)}else{let d=un(n.createAssignment(c,u),c);return un(n.createExpressionStatement(d),c)}}function qDr(n,c,u){return hc(c)?n.updateBlock(c,un(n.createNodeArray([u,...c.statements]),c.statements)):n.createBlock(n.createNodeArray([c,u]),!0)}function Mhe(n,c){if(c0(c)){let u=Mhe(n,c.left),d=GA(un(n.cloneNode(c.right),c.right),c.right.parent);return un(n.createPropertyAccessExpression(u,d),c)}else return GA(un(n.cloneNode(c),c),c.parent)}function KKe(n,c){return sr(c)?n.createStringLiteralFromNode(c):kg(c)?GA(un(n.cloneNode(c.expression),c.expression),c.expression.parent):GA(un(n.cloneNode(c),c),c.parent)}function fKi(n,c,u,d,I){let{firstAccessor:h,getAccessor:b,setAccessor:R}=Vx(c,u);if(u===h)return un(n.createObjectDefinePropertyCall(d,KKe(n,u.name),n.createPropertyDescriptor({enumerable:n.createFalse(),configurable:!0,get:b&&un(Ho(n.createFunctionExpression(uN(b),void 0,void 0,void 0,b.parameters,void 0,b.body),b),b),set:R&&un(Ho(n.createFunctionExpression(uN(R),void 0,void 0,void 0,R.parameters,void 0,R.body),R),R)},!I)),h)}function IKi(n,c,u){return Ho(un(n.createAssignment(C4(n,u,c.name,c.name),c.initializer),c),c)}function CKi(n,c,u){return Ho(un(n.createAssignment(C4(n,u,c.name,c.name),n.cloneNode(c.name)),c),c)}function mKi(n,c,u){return Ho(un(n.createAssignment(C4(n,u,c.name,c.name),Ho(un(n.createFunctionExpression(uN(c),c.asteriskToken,void 0,void 0,c.parameters,void 0,c.body),c),c)),c),c)}function uRt(n,c,u,d){switch(u.name&&Gc(u.name)&&w.failBadSyntaxKind(u.name,"Private identifiers are not allowed in object literals."),u.kind){case 177:case 178:return fKi(n,c.properties,u,d,!!c.multiLine);case 303:return IKi(n,u,d);case 304:return CKi(n,u,d);case 174:return mKi(n,u,d)}}function $xe(n,c,u,d,I){let h=c.operator;w.assert(h===46||h===47,"Expected 'node' to be a pre- or post-increment or pre- or post-decrement expression");let b=n.createTempVariable(d);u=n.createAssignment(b,u),un(u,c.operand);let R=GB(c)?n.createPrefixUnaryExpression(h,b):n.createPostfixUnaryExpression(b,h);return un(R,c),I&&(R=n.createAssignment(I,R),un(R,c)),u=n.createComma(u,R),un(u,c),Qx(c)&&(u=n.createComma(u,b),un(u,c)),u}function jKe(n){return(wg(n)&65536)!==0}function VG(n){return(wg(n)&32768)!==0}function eke(n){return(wg(n)&16384)!==0}function $Dr(n){return Eu(n.expression)&&n.expression.text==="use strict"}function zKe(n){for(let c of n)if(HI(c)){if($Dr(c))return c}else break}function gRt(n){let c=$i(n);return c!==void 0&&HI(c)&&$Dr(c)}function Hhe(n){return n.kind===226&&n.operatorToken.kind===28}function Jle(n){return Hhe(n)||PE(n)}function m4(n){return ZC(n)&&io(n)&&!!Sx(n)}function Ule(n){let c=wx(n);return w.assertIsDefined(c),c}function tke(n,c=15){switch(n.kind){case 217:return c&16&&m4(n)?!1:(c&1)!==0;case 216:case 234:case 233:case 238:return(c&2)!==0;case 235:return(c&4)!==0;case 354:return(c&8)!==0}return!1}function LC(n,c=15){for(;tke(n,c);)n=n.expression;return n}function ARt(n,c=15){let u=n.parent;for(;tke(u,c);)u=u.parent,w.assert(u);return u}function exr(n){return LC(n,6)}function u0(n){return Dle(n,!0)}function rke(n){let c=Np(n,Fc),u=c&&c.emitNode;return u&&u.externalHelpersModuleName}function dRt(n){let c=Np(n,Fc),u=c&&c.emitNode;return!!u&&(!!u.externalHelpersModuleName||!!u.externalHelpers)}function qKe(n,c,u,d,I,h,b){if(d.importHelpers&&K9(u,d)){let R,N=D_(d);if(N>=5&&N<=99||u.impliedNodeFormat===99){let V=kle(u);if(V){let P=[];for(let Q of V)if(!Q.scoped){let te=Q.importName;te&&da(P,te)}if(lr(P)){P.sort(Ro),R=n.createNamedImports(Ot(P,re=>v5(u,re)?n.createImportSpecifier(!1,void 0,n.createIdentifier(re)):n.createImportSpecifier(!1,n.createIdentifier(re),c.getUnscopedHelperName(re))));let Q=Np(u,Fc),te=kh(Q);te.externalHelpers=!0}}}else{let V=pRt(n,u,d,I,h||b);V&&(R=n.createNamespaceImport(V))}if(R){let V=n.createImportDeclaration(void 0,n.createImportClause(!1,void 0,R),n.createStringLiteral(Dx),void 0);return rM(V,2),V}}}function pRt(n,c,u,d,I){if(u.importHelpers&&K9(c,u)){let h=rke(c);if(h)return h;let b=D_(u),R=(d||CN(u)&&I)&&b!==4&&(b<5||c.impliedNodeFormat===1);if(!R){let N=kle(c);if(N){for(let V of N)if(!V.scoped){R=!0;break}}}if(R){let N=Np(c,Fc),V=kh(N);return V.externalHelpersModuleName||(V.externalHelpersModuleName=n.createUniqueName(Dx))}}}function fte(n,c,u){let d=QX(c);if(d&&!G5(c)&&!S5(c)){let I=d.name;return Cp(I)?I:n.createIdentifier(hG(u,I)||oo(I))}if(c.kind===272&&c.importClause||c.kind===278&&c.moduleSpecifier)return n.getGeneratedNameForNode(c)}function O6(n,c,u,d,I,h){let b=k5(c);if(b&&Eu(b))return _Ki(c,d,n,I,h)||hKi(n,b,u)||n.cloneNode(b)}function hKi(n,c,u){let d=u.renamedDependencies&&u.renamedDependencies.get(c.text);return d?n.createStringLiteral(d):void 0}function Yhe(n,c,u,d){if(c){if(c.moduleName)return n.createStringLiteral(c.moduleName);if(!c.isDeclarationFile&&d.outFile)return n.createStringLiteral(xme(u,c.fileName))}}function _Ki(n,c,u,d,I){return Yhe(u,d.getExternalModuleFileFromDeclaration(n),c,I)}function Xhe(n){if(_X(n))return n.initializer;if(jC(n)){let c=n.initializer;return Im(c,!0)?c.right:void 0}if(F_(n))return n.objectAssignmentInitializer;if(Im(n,!0))return n.right;if(fh(n))return Xhe(n.expression)}function bV(n){if(_X(n))return n.name;if(vB(n)){switch(n.kind){case 303:return bV(n.initializer);case 304:return n.name;case 305:return bV(n.expression)}return}return Im(n,!0)?bV(n.left):fh(n)?bV(n.expression):n}function nke(n){switch(n.kind){case 169:case 208:return n.dotDotDotToken;case 230:case 305:return n}}function $Ke(n){let c=ike(n);return w.assert(!!c||Ux(n),"Invalid property name for binding element."),c}function ike(n){switch(n.kind){case 208:if(n.propertyName){let u=n.propertyName;return Gc(u)?w.failBadSyntaxKind(u):kg(u)&&txr(u.expression)?u.expression:u}break;case 303:if(n.name){let u=n.name;return Gc(u)?w.failBadSyntaxKind(u):kg(u)&&txr(u.expression)?u.expression:u}break;case 305:return n.name&&Gc(n.name)?w.failBadSyntaxKind(n.name):n.name}let c=bV(n);if(c&&RI(c))return c}function txr(n){let c=n.kind;return c===11||c===9}function Ite(n){switch(n.kind){case 206:case 207:case 209:return n.elements;case 210:return n.properties}}function e8e(n){if(n){let c=n;for(;;){if(sr(c)||!c.body)return sr(c)?c:c.name;c=c.body}}}function rxr(n){let c=n.kind;return c===176||c===178}function fRt(n){let c=n.kind;return c===176||c===177||c===178}function t8e(n){let c=n.kind;return c===303||c===304||c===262||c===176||c===181||c===175||c===282||c===243||c===264||c===265||c===266||c===267||c===271||c===272||c===270||c===278||c===277}function IRt(n){let c=n.kind;return c===175||c===303||c===304||c===282||c===270}function CRt(n){return xG(n)||cte(n)}function mRt(n){return sr(n)||aa(n)}function hRt(n){return CV(n)||Zhe(n)||ote(n)}function _Rt(n){return xG(n)||Zhe(n)||ote(n)}function yRt(n){return sr(n)||Eu(n)}function nxr(n){let c=n.kind;return c===106||c===112||c===97||wv(n)||GB(n)}function yKi(n){return n===43}function bKi(n){return n===42||n===44||n===45}function EKi(n){return yKi(n)||bKi(n)}function BKi(n){return n===40||n===41}function vKi(n){return BKi(n)||EKi(n)}function SKi(n){return n===48||n===49||n===50}function r8e(n){return SKi(n)||vKi(n)}function wKi(n){return n===30||n===33||n===32||n===34||n===104||n===103}function TKi(n){return wKi(n)||r8e(n)}function NKi(n){return n===35||n===37||n===36||n===38}function RKi(n){return NKi(n)||TKi(n)}function DKi(n){return n===51||n===52||n===53}function xKi(n){return DKi(n)||RKi(n)}function kKi(n){return n===56||n===57}function GKi(n){return kKi(n)||xKi(n)}function FKi(n){return n===61||GKi(n)||tD(n)}function ZKi(n){return FKi(n)||n===28}function bRt(n){return ZKi(n.kind)}var n8e;(n=>{function c(P,Q,te,re,ue,Ae,de){let Be=Q>0?ue[Q-1]:void 0;return w.assertEqual(te[Q],c),ue[Q]=P.onEnter(re[Q],Be,de),te[Q]=R(P,c),Q}n.enter=c;function u(P,Q,te,re,ue,Ae,de){w.assertEqual(te[Q],u),w.assertIsDefined(P.onLeft),te[Q]=R(P,u);let Be=P.onLeft(re[Q].left,ue[Q],re[Q]);return Be?(V(Q,re,Be),N(Q,te,re,ue,Be)):Q}n.left=u;function d(P,Q,te,re,ue,Ae,de){return w.assertEqual(te[Q],d),w.assertIsDefined(P.onOperator),te[Q]=R(P,d),P.onOperator(re[Q].operatorToken,ue[Q],re[Q]),Q}n.operator=d;function I(P,Q,te,re,ue,Ae,de){w.assertEqual(te[Q],I),w.assertIsDefined(P.onRight),te[Q]=R(P,I);let Be=P.onRight(re[Q].right,ue[Q],re[Q]);return Be?(V(Q,re,Be),N(Q,te,re,ue,Be)):Q}n.right=I;function h(P,Q,te,re,ue,Ae,de){w.assertEqual(te[Q],h),te[Q]=R(P,h);let Be=P.onExit(re[Q],ue[Q]);if(Q>0){if(Q--,P.foldState){let Fe=te[Q]===h?"right":"left";ue[Q]=P.foldState(ue[Q],Be,Fe)}}else Ae.value=Be;return Q}n.exit=h;function b(P,Q,te,re,ue,Ae,de){return w.assertEqual(te[Q],b),Q}n.done=b;function R(P,Q){switch(Q){case c:if(P.onLeft)return u;case u:if(P.onOperator)return d;case d:if(P.onRight)return I;case I:return h;case h:return b;case b:return b;default:w.fail("Invalid state")}}n.nextState=R;function N(P,Q,te,re,ue){return P++,Q[P]=c,te[P]=ue,re[P]=void 0,P}function V(P,Q,te){if(w.shouldAssert(2))for(;P>=0;)w.assert(Q[P]!==te,"Circular traversal detected."),P--}})(n8e||(n8e={}));var LKi=class{constructor(n,c,u,d,I,h){this.onEnter=n,this.onLeft=c,this.onOperator=u,this.onRight=d,this.onExit=I,this.foldState=h}};function ske(n,c,u,d,I,h){let b=new LKi(n,c,u,d,I,h);return R;function R(N,V){let P={value:void 0},Q=[n8e.enter],te=[N],re=[void 0],ue=0;for(;Q[ue]!==n8e.done;)ue=Q[ue](b,ue,Q,te,re,P,V);return w.assertEqual(ue,0),P.value}}function ixr(n){return n===95||n===90}function Jhe(n){let c=n.kind;return ixr(c)}function sxr(n){let c=n.kind;return Tv(c)&&!ixr(c)}function ERt(n,c){if(c!==void 0)return c.length===0?c:un(n.createNodeArray([],c.hasTrailingComma),c)}function Uhe(n){var c;let u=n.emitNode.autoGenerate;if(u.flags&4){let d=u.id,I=n,h=I.original;for(;h;){I=h;let b=(c=I.emitNode)==null?void 0:c.autoGenerate;if(eb(I)&&(b===void 0||b.flags&4&&b.id!==d))break;h=I.original}return I}return n}function Cte(n,c){return typeof n=="object"?aP(!1,n.prefix,n.node,n.suffix,c):typeof n=="string"?n.length>0&&n.charCodeAt(0)===35?n.slice(1):n:""}function VKi(n,c){return typeof n=="string"?n:WKi(n,w.checkDefined(c))}function WKi(n,c){return mZ(n)?c(n).slice(1):Cp(n)?c(n):Gc(n)?n.escapedText.slice(1):oo(n)}function aP(n,c,u,d,I){return c=Cte(c,I),d=Cte(d,I),u=VKi(u,I),`${n?"#":""}${c}${u}${d}`}function i8e(n,c,u,d){return n.updatePropertyDeclaration(c,u,n.getGeneratedPrivateNameForNode(c.name,void 0,"_accessor_storage"),void 0,void 0,d)}function BRt(n,c,u,d,I=n.createThis()){return n.createGetAccessorDeclaration(u,d,[],void 0,n.createBlock([n.createReturnStatement(n.createPropertyAccessExpression(I,n.getGeneratedPrivateNameForNode(c.name,void 0,"_accessor_storage")))]))}function vRt(n,c,u,d,I=n.createThis()){return n.createSetAccessorDeclaration(u,d,[n.createParameterDeclaration(void 0,void 0,"value")],n.createBlock([n.createExpressionStatement(n.createAssignment(n.createPropertyAccessExpression(I,n.getGeneratedPrivateNameForNode(c.name,void 0,"_accessor_storage")),n.createIdentifier("value")))]))}function oke(n){let c=n.expression;for(;;){if(c=LC(c),PE(c)){c=Ta(c.elements);continue}if(Hhe(c)){c=c.right;continue}if(Im(c,!0)&&Cp(c.left))return c;break}}function PKi(n){return ZC(n)&&$d(n)&&!n.emitNode}function ake(n,c){if(PKi(n))ake(n.expression,c);else if(Hhe(n))ake(n.left,c),ake(n.right,c);else if(PE(n))for(let u of n.elements)ake(u,c);else c.push(n)}function SRt(n){let c=[];return ake(n,c),c}function Khe(n){if(n.transformFlags&65536)return!0;if(n.transformFlags&128)for(let c of Ite(n)){let u=bV(c);if(u&&X9(u)&&(u.transformFlags&65536||u.transformFlags&128&&Khe(u)))return!0}return!1}function un(n,c){return c?MS(n,c.pos,c.end):n}function tw(n){let c=n.kind;return c===168||c===169||c===171||c===172||c===173||c===174||c===176||c===177||c===178||c===181||c===185||c===218||c===219||c===231||c===243||c===262||c===263||c===264||c===265||c===266||c===267||c===271||c===272||c===277||c===278}function IM(n){let c=n.kind;return c===169||c===172||c===174||c===177||c===178||c===231||c===263}var oxr,axr,cxr,lxr,uxr,wRt={createBaseSourceFileNode:n=>new(uxr||(uxr=kC.getSourceFileConstructor()))(n,-1,-1),createBaseIdentifierNode:n=>new(cxr||(cxr=kC.getIdentifierConstructor()))(n,-1,-1),createBasePrivateIdentifierNode:n=>new(lxr||(lxr=kC.getPrivateIdentifierConstructor()))(n,-1,-1),createBaseTokenNode:n=>new(axr||(axr=kC.getTokenConstructor()))(n,-1,-1),createBaseNode:n=>new(oxr||(oxr=kC.getNodeConstructor()))(n,-1,-1)},cP=pV(1,wRt);function si(n,c){return c&&n(c)}function Zc(n,c,u){if(u){if(c)return c(u);for(let d of u){let I=n(d);if(I)return I}}}function s8e(n,c){return n.charCodeAt(c+1)===42&&n.charCodeAt(c+2)===42&&n.charCodeAt(c+3)!==47}function jhe(n){return X(n.statements,OKi)||QKi(n)}function OKi(n){return tw(n)&&MKi(n,95)||mm(n)&&ZG(n.moduleReference)||hI(n)||rf(n)||hC(n)?n:void 0}function QKi(n){return n.flags&8388608?gxr(n):void 0}function gxr(n){return HKi(n)?n:hu(n,gxr)}function MKi(n,c){return lr(n.modifiers,u=>u.kind===c)}function HKi(n){return SN(n)&&n.keywordToken===102&&n.name.escapedText==="meta"}var YKi={166:function(c,u,d){return si(u,c.left)||si(u,c.right)},168:function(c,u,d){return Zc(u,d,c.modifiers)||si(u,c.name)||si(u,c.constraint)||si(u,c.default)||si(u,c.expression)},304:function(c,u,d){return Zc(u,d,c.modifiers)||si(u,c.name)||si(u,c.questionToken)||si(u,c.exclamationToken)||si(u,c.equalsToken)||si(u,c.objectAssignmentInitializer)},305:function(c,u,d){return si(u,c.expression)},169:function(c,u,d){return Zc(u,d,c.modifiers)||si(u,c.dotDotDotToken)||si(u,c.name)||si(u,c.questionToken)||si(u,c.type)||si(u,c.initializer)},172:function(c,u,d){return Zc(u,d,c.modifiers)||si(u,c.name)||si(u,c.questionToken)||si(u,c.exclamationToken)||si(u,c.type)||si(u,c.initializer)},171:function(c,u,d){return Zc(u,d,c.modifiers)||si(u,c.name)||si(u,c.questionToken)||si(u,c.type)||si(u,c.initializer)},303:function(c,u,d){return Zc(u,d,c.modifiers)||si(u,c.name)||si(u,c.questionToken)||si(u,c.exclamationToken)||si(u,c.initializer)},260:function(c,u,d){return si(u,c.name)||si(u,c.exclamationToken)||si(u,c.type)||si(u,c.initializer)},208:function(c,u,d){return si(u,c.dotDotDotToken)||si(u,c.propertyName)||si(u,c.name)||si(u,c.initializer)},181:function(c,u,d){return Zc(u,d,c.modifiers)||Zc(u,d,c.typeParameters)||Zc(u,d,c.parameters)||si(u,c.type)},185:function(c,u,d){return Zc(u,d,c.modifiers)||Zc(u,d,c.typeParameters)||Zc(u,d,c.parameters)||si(u,c.type)},184:function(c,u,d){return Zc(u,d,c.modifiers)||Zc(u,d,c.typeParameters)||Zc(u,d,c.parameters)||si(u,c.type)},179:Axr,180:Axr,174:function(c,u,d){return Zc(u,d,c.modifiers)||si(u,c.asteriskToken)||si(u,c.name)||si(u,c.questionToken)||si(u,c.exclamationToken)||Zc(u,d,c.typeParameters)||Zc(u,d,c.parameters)||si(u,c.type)||si(u,c.body)},173:function(c,u,d){return Zc(u,d,c.modifiers)||si(u,c.name)||si(u,c.questionToken)||Zc(u,d,c.typeParameters)||Zc(u,d,c.parameters)||si(u,c.type)},176:function(c,u,d){return Zc(u,d,c.modifiers)||si(u,c.name)||Zc(u,d,c.typeParameters)||Zc(u,d,c.parameters)||si(u,c.type)||si(u,c.body)},177:function(c,u,d){return Zc(u,d,c.modifiers)||si(u,c.name)||Zc(u,d,c.typeParameters)||Zc(u,d,c.parameters)||si(u,c.type)||si(u,c.body)},178:function(c,u,d){return Zc(u,d,c.modifiers)||si(u,c.name)||Zc(u,d,c.typeParameters)||Zc(u,d,c.parameters)||si(u,c.type)||si(u,c.body)},262:function(c,u,d){return Zc(u,d,c.modifiers)||si(u,c.asteriskToken)||si(u,c.name)||Zc(u,d,c.typeParameters)||Zc(u,d,c.parameters)||si(u,c.type)||si(u,c.body)},218:function(c,u,d){return Zc(u,d,c.modifiers)||si(u,c.asteriskToken)||si(u,c.name)||Zc(u,d,c.typeParameters)||Zc(u,d,c.parameters)||si(u,c.type)||si(u,c.body)},219:function(c,u,d){return Zc(u,d,c.modifiers)||Zc(u,d,c.typeParameters)||Zc(u,d,c.parameters)||si(u,c.type)||si(u,c.equalsGreaterThanToken)||si(u,c.body)},175:function(c,u,d){return Zc(u,d,c.modifiers)||si(u,c.body)},183:function(c,u,d){return si(u,c.typeName)||Zc(u,d,c.typeArguments)},182:function(c,u,d){return si(u,c.assertsModifier)||si(u,c.parameterName)||si(u,c.type)},186:function(c,u,d){return si(u,c.exprName)||Zc(u,d,c.typeArguments)},187:function(c,u,d){return Zc(u,d,c.members)},188:function(c,u,d){return si(u,c.elementType)},189:function(c,u,d){return Zc(u,d,c.elements)},192:dxr,193:dxr,194:function(c,u,d){return si(u,c.checkType)||si(u,c.extendsType)||si(u,c.trueType)||si(u,c.falseType)},195:function(c,u,d){return si(u,c.typeParameter)},205:function(c,u,d){return si(u,c.argument)||si(u,c.attributes)||si(u,c.qualifier)||Zc(u,d,c.typeArguments)},302:function(c,u,d){return si(u,c.assertClause)},196:pxr,198:pxr,199:function(c,u,d){return si(u,c.objectType)||si(u,c.indexType)},200:function(c,u,d){return si(u,c.readonlyToken)||si(u,c.typeParameter)||si(u,c.nameType)||si(u,c.questionToken)||si(u,c.type)||Zc(u,d,c.members)},201:function(c,u,d){return si(u,c.literal)},202:function(c,u,d){return si(u,c.dotDotDotToken)||si(u,c.name)||si(u,c.questionToken)||si(u,c.type)},206:fxr,207:fxr,209:function(c,u,d){return Zc(u,d,c.elements)},210:function(c,u,d){return Zc(u,d,c.properties)},211:function(c,u,d){return si(u,c.expression)||si(u,c.questionDotToken)||si(u,c.name)},212:function(c,u,d){return si(u,c.expression)||si(u,c.questionDotToken)||si(u,c.argumentExpression)},213:Ixr,214:Ixr,215:function(c,u,d){return si(u,c.tag)||si(u,c.questionDotToken)||Zc(u,d,c.typeArguments)||si(u,c.template)},216:function(c,u,d){return si(u,c.type)||si(u,c.expression)},217:function(c,u,d){return si(u,c.expression)},220:function(c,u,d){return si(u,c.expression)},221:function(c,u,d){return si(u,c.expression)},222:function(c,u,d){return si(u,c.expression)},224:function(c,u,d){return si(u,c.operand)},229:function(c,u,d){return si(u,c.asteriskToken)||si(u,c.expression)},223:function(c,u,d){return si(u,c.expression)},225:function(c,u,d){return si(u,c.operand)},226:function(c,u,d){return si(u,c.left)||si(u,c.operatorToken)||si(u,c.right)},234:function(c,u,d){return si(u,c.expression)||si(u,c.type)},235:function(c,u,d){return si(u,c.expression)},238:function(c,u,d){return si(u,c.expression)||si(u,c.type)},236:function(c,u,d){return si(u,c.name)},227:function(c,u,d){return si(u,c.condition)||si(u,c.questionToken)||si(u,c.whenTrue)||si(u,c.colonToken)||si(u,c.whenFalse)},230:function(c,u,d){return si(u,c.expression)},241:Cxr,268:Cxr,307:function(c,u,d){return Zc(u,d,c.statements)||si(u,c.endOfFileToken)},243:function(c,u,d){return Zc(u,d,c.modifiers)||si(u,c.declarationList)},261:function(c,u,d){return Zc(u,d,c.declarations)},244:function(c,u,d){return si(u,c.expression)},245:function(c,u,d){return si(u,c.expression)||si(u,c.thenStatement)||si(u,c.elseStatement)},246:function(c,u,d){return si(u,c.statement)||si(u,c.expression)},247:function(c,u,d){return si(u,c.expression)||si(u,c.statement)},248:function(c,u,d){return si(u,c.initializer)||si(u,c.condition)||si(u,c.incrementor)||si(u,c.statement)},249:function(c,u,d){return si(u,c.initializer)||si(u,c.expression)||si(u,c.statement)},250:function(c,u,d){return si(u,c.awaitModifier)||si(u,c.initializer)||si(u,c.expression)||si(u,c.statement)},251:mxr,252:mxr,253:function(c,u,d){return si(u,c.expression)},254:function(c,u,d){return si(u,c.expression)||si(u,c.statement)},255:function(c,u,d){return si(u,c.expression)||si(u,c.caseBlock)},269:function(c,u,d){return Zc(u,d,c.clauses)},296:function(c,u,d){return si(u,c.expression)||Zc(u,d,c.statements)},297:function(c,u,d){return Zc(u,d,c.statements)},256:function(c,u,d){return si(u,c.label)||si(u,c.statement)},257:function(c,u,d){return si(u,c.expression)},258:function(c,u,d){return si(u,c.tryBlock)||si(u,c.catchClause)||si(u,c.finallyBlock)},299:function(c,u,d){return si(u,c.variableDeclaration)||si(u,c.block)},170:function(c,u,d){return si(u,c.expression)},263:hxr,231:hxr,264:function(c,u,d){return Zc(u,d,c.modifiers)||si(u,c.name)||Zc(u,d,c.typeParameters)||Zc(u,d,c.heritageClauses)||Zc(u,d,c.members)},265:function(c,u,d){return Zc(u,d,c.modifiers)||si(u,c.name)||Zc(u,d,c.typeParameters)||si(u,c.type)},266:function(c,u,d){return Zc(u,d,c.modifiers)||si(u,c.name)||Zc(u,d,c.members)},306:function(c,u,d){return si(u,c.name)||si(u,c.initializer)},267:function(c,u,d){return Zc(u,d,c.modifiers)||si(u,c.name)||si(u,c.body)},271:function(c,u,d){return Zc(u,d,c.modifiers)||si(u,c.name)||si(u,c.moduleReference)},272:function(c,u,d){return Zc(u,d,c.modifiers)||si(u,c.importClause)||si(u,c.moduleSpecifier)||si(u,c.attributes)},273:function(c,u,d){return si(u,c.name)||si(u,c.namedBindings)},300:function(c,u,d){return Zc(u,d,c.elements)},301:function(c,u,d){return si(u,c.name)||si(u,c.value)},270:function(c,u,d){return Zc(u,d,c.modifiers)||si(u,c.name)},274:function(c,u,d){return si(u,c.name)},280:function(c,u,d){return si(u,c.name)},275:_xr,279:_xr,278:function(c,u,d){return Zc(u,d,c.modifiers)||si(u,c.exportClause)||si(u,c.moduleSpecifier)||si(u,c.attributes)},276:yxr,281:yxr,277:function(c,u,d){return Zc(u,d,c.modifiers)||si(u,c.expression)},228:function(c,u,d){return si(u,c.head)||Zc(u,d,c.templateSpans)},239:function(c,u,d){return si(u,c.expression)||si(u,c.literal)},203:function(c,u,d){return si(u,c.head)||Zc(u,d,c.templateSpans)},204:function(c,u,d){return si(u,c.type)||si(u,c.literal)},167:function(c,u,d){return si(u,c.expression)},298:function(c,u,d){return Zc(u,d,c.types)},233:function(c,u,d){return si(u,c.expression)||Zc(u,d,c.typeArguments)},283:function(c,u,d){return si(u,c.expression)},282:function(c,u,d){return Zc(u,d,c.modifiers)},355:function(c,u,d){return Zc(u,d,c.elements)},284:function(c,u,d){return si(u,c.openingElement)||Zc(u,d,c.children)||si(u,c.closingElement)},288:function(c,u,d){return si(u,c.openingFragment)||Zc(u,d,c.children)||si(u,c.closingFragment)},285:bxr,286:bxr,292:function(c,u,d){return Zc(u,d,c.properties)},291:function(c,u,d){return si(u,c.name)||si(u,c.initializer)},293:function(c,u,d){return si(u,c.expression)},294:function(c,u,d){return si(u,c.dotDotDotToken)||si(u,c.expression)},287:function(c,u,d){return si(u,c.tagName)},295:function(c,u,d){return si(u,c.namespace)||si(u,c.name)},190:Kle,191:Kle,309:Kle,315:Kle,314:Kle,316:Kle,318:Kle,317:function(c,u,d){return Zc(u,d,c.parameters)||si(u,c.type)},320:function(c,u,d){return(typeof c.comment=="string"?void 0:Zc(u,d,c.comment))||Zc(u,d,c.tags)},347:function(c,u,d){return si(u,c.tagName)||si(u,c.name)||(typeof c.comment=="string"?void 0:Zc(u,d,c.comment))},310:function(c,u,d){return si(u,c.name)},311:function(c,u,d){return si(u,c.left)||si(u,c.right)},341:Exr,348:Exr,330:function(c,u,d){return si(u,c.tagName)||(typeof c.comment=="string"?void 0:Zc(u,d,c.comment))},329:function(c,u,d){return si(u,c.tagName)||si(u,c.class)||(typeof c.comment=="string"?void 0:Zc(u,d,c.comment))},328:function(c,u,d){return si(u,c.tagName)||si(u,c.class)||(typeof c.comment=="string"?void 0:Zc(u,d,c.comment))},345:function(c,u,d){return si(u,c.tagName)||si(u,c.constraint)||Zc(u,d,c.typeParameters)||(typeof c.comment=="string"?void 0:Zc(u,d,c.comment))},346:function(c,u,d){return si(u,c.tagName)||(c.typeExpression&&c.typeExpression.kind===309?si(u,c.typeExpression)||si(u,c.fullName)||(typeof c.comment=="string"?void 0:Zc(u,d,c.comment)):si(u,c.fullName)||si(u,c.typeExpression)||(typeof c.comment=="string"?void 0:Zc(u,d,c.comment)))},338:function(c,u,d){return si(u,c.tagName)||si(u,c.fullName)||si(u,c.typeExpression)||(typeof c.comment=="string"?void 0:Zc(u,d,c.comment))},342:jle,344:jle,343:jle,340:jle,350:jle,349:jle,339:jle,323:function(c,u,d){return X(c.typeParameters,u)||X(c.parameters,u)||si(u,c.type)},324:TRt,325:TRt,326:TRt,322:function(c,u,d){return X(c.jsDocPropertyTags,u)},327:mte,332:mte,333:mte,334:mte,335:mte,336:mte,331:mte,337:mte,351:XKi,354:JKi};function Axr(n,c,u){return Zc(c,u,n.typeParameters)||Zc(c,u,n.parameters)||si(c,n.type)}function dxr(n,c,u){return Zc(c,u,n.types)}function pxr(n,c,u){return si(c,n.type)}function fxr(n,c,u){return Zc(c,u,n.elements)}function Ixr(n,c,u){return si(c,n.expression)||si(c,n.questionDotToken)||Zc(c,u,n.typeArguments)||Zc(c,u,n.arguments)}function Cxr(n,c,u){return Zc(c,u,n.statements)}function mxr(n,c,u){return si(c,n.label)}function hxr(n,c,u){return Zc(c,u,n.modifiers)||si(c,n.name)||Zc(c,u,n.typeParameters)||Zc(c,u,n.heritageClauses)||Zc(c,u,n.members)}function _xr(n,c,u){return Zc(c,u,n.elements)}function yxr(n,c,u){return si(c,n.propertyName)||si(c,n.name)}function bxr(n,c,u){return si(c,n.tagName)||Zc(c,u,n.typeArguments)||si(c,n.attributes)}function Kle(n,c,u){return si(c,n.type)}function Exr(n,c,u){return si(c,n.tagName)||(n.isNameFirst?si(c,n.name)||si(c,n.typeExpression):si(c,n.typeExpression)||si(c,n.name))||(typeof n.comment=="string"?void 0:Zc(c,u,n.comment))}function jle(n,c,u){return si(c,n.tagName)||si(c,n.typeExpression)||(typeof n.comment=="string"?void 0:Zc(c,u,n.comment))}function TRt(n,c,u){return si(c,n.name)}function mte(n,c,u){return si(c,n.tagName)||(typeof n.comment=="string"?void 0:Zc(c,u,n.comment))}function XKi(n,c,u){return si(c,n.tagName)||si(c,n.importClause)||si(c,n.moduleSpecifier)||si(c,n.attributes)||(typeof n.comment=="string"?void 0:Zc(c,u,n.comment))}function JKi(n,c,u){return si(c,n.expression)}function hu(n,c,u){if(n===void 0||n.kind<=165)return;let d=YKi[n.kind];return d===void 0?void 0:d(n,c,u)}function Q6(n,c,u){let d=Bxr(n),I=[];for(;I.length=0;--R)d.push(h[R]),I.push(b)}else{let R=c(h,b);if(R){if(R==="skip")continue;return R}if(h.kind>=166)for(let N of Bxr(h))d.push(N),I.push(h)}}}function Bxr(n){let c=[];return hu(n,u,u),c;function u(d){c.unshift(d)}}function vxr(n){n.externalModuleIndicator=jhe(n)}function M6(n,c,u,d=!1,I){var h,b,R,N;(h=Qi)==null||h.push(Qi.Phase.Parse,"createSourceFile",{path:n},!0),rs("beforeParse");let V;(b=jl)==null||b.logStartParseSourceFile(n);let{languageVersion:P,setExternalModuleIndicator:Q,impliedNodeFormat:te,jsDocParsingMode:re}=typeof u=="object"?u:{languageVersion:u};if(P===100)V=lP.parseSourceFile(n,c,P,void 0,d,6,oc,re);else{let ue=te===void 0?Q:Ae=>(Ae.impliedNodeFormat=te,(Q||vxr)(Ae));V=lP.parseSourceFile(n,c,P,void 0,d,I,ue,re)}return(R=jl)==null||R.logStopParseSourceFile(),rs("afterParse"),Sc("Parse","beforeParse","afterParse"),(N=Qi)==null||N.pop(),V}function H6(n,c){return lP.parseIsolatedEntityName(n,c)}function zhe(n,c){return lP.parseJsonText(n,c)}function hm(n){return n.externalModuleIndicator!==void 0}function o8e(n,c,u,d=!1){let I=a8e.updateSourceFile(n,c,u,d);return I.flags|=n.flags&12582912,I}function NRt(n,c,u){let d=lP.JSDocParser.parseIsolatedJSDocComment(n,c,u);return d&&d.jsDoc&&lP.fixupParentReferences(d.jsDoc),d}function Sxr(n,c,u){return lP.JSDocParser.parseJSDocTypeExpressionForTests(n,c,u)}var lP;(n=>{var c=Ft(99,!0),u=40960,d,I,h,b,R;function N($e){return pr++,$e}var V={createBaseSourceFileNode:$e=>N(new R($e,0,0)),createBaseIdentifierNode:$e=>N(new h($e,0,0)),createBasePrivateIdentifierNode:$e=>N(new b($e,0,0)),createBaseTokenNode:$e=>N(new I($e,0,0)),createBaseNode:$e=>N(new d($e,0,0))},P=pV(11,V),{createNodeArray:Q,createNumericLiteral:te,createStringLiteral:re,createLiteralLikeNode:ue,createIdentifier:Ae,createPrivateIdentifier:de,createToken:Be,createArrayLiteralExpression:Fe,createObjectLiteralExpression:Ne,createPropertyAccessExpression:Me,createPropertyAccessChain:De,createElementAccessExpression:lt,createElementAccessChain:Le,createCallExpression:je,createCallChain:st,createNewExpression:nt,createParenthesizedExpression:qe,createBlock:it,createVariableStatement:It,createExpressionStatement:dt,createIfStatement:Tt,createWhileStatement:St,createForStatement:He,createForOfStatement:ht,createVariableDeclaration:Et,createVariableDeclarationList:Kt}=P,Nt,Lt,kt,Zt,Dr,jt,mr,Pt,Vr,Hr,pr,zr,$n,bi,Pi,Ns,gi=!0,jn=!1;function xs($e,Ht,Sr,_n,Xn=!1,es,Ia,Xc=0){var bc;if(es=dle($e,es),es===6){let Cl=xi($e,Ht,Sr,_n,Xn);return r_e(Cl,(bc=Cl.statements[0])==null?void 0:bc.expression,Cl.parseDiagnostics,!1,void 0),Cl.referencedFiles=v,Cl.typeReferenceDirectives=v,Cl.libReferenceDirectives=v,Cl.amdDependencies=v,Cl.hasNoDefaultLib=!1,Cl.pragmas=k,Cl}rc($e,Ht,Sr,_n,es,Xc);let qa=gl(Sr,Xn,es,Ia||vxr,Xc);return Wl(),qa}n.parseSourceFile=xs;function Bc($e,Ht){rc("",$e,Ht,void 0,1,0),Vt();let Sr=rt(!0),_n=Re()===1&&!mr.length;return Wl(),_n?Sr:void 0}n.parseIsolatedEntityName=Bc;function xi($e,Ht,Sr=2,_n,Xn=!1){rc($e,Ht,Sr,_n,6,0),Lt=Ns,Vt();let es=Qe(),Ia,Xc;if(Re()===1)Ia=qA([],es,es),Xc=kI();else{let Cl;for(;Re()!==1;){let aA;switch(Re()){case 23:aA=lw();break;case 112:case 97:case 106:aA=kI();break;case 41:sa(()=>Vt()===9&&Vt()!==59)?aA=Jo():aA=ZP();break;case 9:case 11:if(sa(()=>Vt()!==59)){aA=En();break}default:aA=ZP();break}Cl&&Na(Cl)?Cl.push(aA):Cl?Cl=[Cl,aA]:(Cl=aA,Re()!==1&&Kr(Z.Unexpected_token))}let up=Na(Cl)?di(Fe(Cl),es):w.checkDefined(Cl),_g=dt(up);di(_g,es),Ia=qA([_g],es),Xc=xf(1,Z.Unexpected_token)}let bc=ni($e,2,6,!1,Ia,Xc,Lt,oc);Xn&&ir(bc),bc.nodeCount=pr,bc.identifierCount=$n,bc.identifiers=zr,bc.parseDiagnostics=DZ(mr,bc),Pt&&(bc.jsDocDiagnostics=DZ(Pt,bc));let qa=bc;return Wl(),qa}n.parseJsonText=xi;function rc($e,Ht,Sr,_n,Xn,es){switch(d=kC.getNodeConstructor(),I=kC.getTokenConstructor(),h=kC.getIdentifierConstructor(),b=kC.getPrivateIdentifierConstructor(),R=kC.getSourceFileConstructor(),Nt=Mc($e),kt=Ht,Zt=Sr,Vr=_n,Dr=Xn,jt=Vee(Xn),mr=[],bi=0,zr=new Map,$n=0,pr=0,Lt=0,gi=!0,Dr){case 1:case 2:Ns=524288;break;case 6:Ns=134742016;break;default:Ns=0;break}jn=!1,c.setText(kt),c.setOnError(sn),c.setScriptTarget(Zt),c.setLanguageVariant(jt),c.setScriptKind(Dr),c.setJSDocParsingMode(es)}function Wl(){c.clearCommentDirectives(),c.setText(""),c.setOnError(void 0),c.setScriptKind(0),c.setJSDocParsingMode(0),kt=void 0,Zt=void 0,Vr=void 0,Dr=void 0,jt=void 0,Lt=0,mr=void 0,Pt=void 0,bi=0,zr=void 0,Pi=void 0,gi=!0}function gl($e,Ht,Sr,_n,Xn){let es=Gh(Nt);es&&(Ns|=33554432),Lt=Ns,Vt();let Ia=OA(0,z2);w.assert(Re()===1);let Xc=ur(),bc=_s(kI(),Xc),qa=ni(Nt,$e,Sr,es,Ia,bc,Lt,_n);return l8e(qa,kt),u8e(qa,Cl),qa.commentDirectives=c.getCommentDirectives(),qa.nodeCount=pr,qa.identifierCount=$n,qa.identifiers=zr,qa.parseDiagnostics=DZ(mr,qa),qa.jsDocParsingMode=Xn,Pt&&(qa.jsDocDiagnostics=DZ(Pt,qa)),Ht&&ir(qa),qa;function Cl(up,_g,aA){mr.push(J5(Nt,kt,up,_g,aA))}}let mc=!1;function _s($e,Ht){if(!Ht)return $e;w.assert(!$e.jsDoc);let Sr=tr(ome($e,kt),_n=>x7.parseJSDocComment($e,_n.pos,_n.end-_n.pos));return Sr.length&&($e.jsDoc=Sr),mc&&(mc=!1,$e.flags|=536870912),$e}function Pu($e){let Ht=Vr,Sr=a8e.createSyntaxCursor($e);Vr={currentNode:Cl};let _n=[],Xn=mr;mr=[];let es=0,Ia=bc($e.statements,0);for(;Ia!==-1;){let up=$e.statements[es],_g=$e.statements[Ia];ai(_n,$e.statements,es,Ia),es=qa($e.statements,Ia);let aA=ke(Xn,hT=>hT.start>=up.pos),eB=aA>=0?ke(Xn,hT=>hT.start>=_g.pos,aA):-1;aA>=0&&ai(mr,Xn,aA,eB>=0?eB:void 0),Il(()=>{let hT=Ns;for(Ns|=65536,c.resetTokenState(_g.pos),Vt();Re()!==1;){let sF=c.getTokenFullStart(),MV=JI(0,z2);if(_n.push(MV),sF===c.getTokenFullStart()&&Vt(),es>=0){let Jv=$e.statements[es];if(MV.end===Jv.pos)break;MV.end>Jv.pos&&(es=qa($e.statements,es+1))}}Ns=hT},2),Ia=es>=0?bc($e.statements,es):-1}if(es>=0){let up=$e.statements[es];ai(_n,$e.statements,es);let _g=ke(Xn,aA=>aA.start>=up.pos);_g>=0&&ai(mr,Xn,_g)}return Vr=Ht,P.updateSourceFile($e,un(Q(_n),$e.statements));function Xc(up){return!(up.flags&65536)&&!!(up.transformFlags&67108864)}function bc(up,_g){for(let aA=_g;aA118}function Gs(){return Re()===80?!0:Re()===127&&ti()||Re()===135&&an()?!1:Re()>118}function ri($e,Ht,Sr=!0){return Re()===$e?(Sr&&Vt(),!0):(Ht?Kr(Ht):Kr(Z._0_expected,vr($e)),!1)}let _u=Object.keys(G).filter($e=>$e.length>2);function UA($e){if(W1($e)){Pe(Uu(kt,$e.template.pos),$e.template.end,Z.Module_declaration_names_may_only_use_or_quoted_strings);return}let Ht=sr($e)?oo($e):void 0;if(!Ht||!Ke(Ht,Zt)){Kr(Z._0_expected,vr(27));return}let Sr=Uu(kt,$e.pos);switch(Ht){case"const":case"let":case"var":Pe(Sr,$e.end,Z.Variable_declaration_not_allowed_at_this_location);return;case"declare":return;case"interface":Hd(Z.Interface_name_cannot_be_0,Z.Interface_must_be_given_a_name,19);return;case"is":Pe(Sr,c.getTokenStart(),Z.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return;case"module":case"namespace":Hd(Z.Namespace_name_cannot_be_0,Z.Namespace_must_be_given_a_name,19);return;case"type":Hd(Z.Type_alias_name_cannot_be_0,Z.Type_alias_must_be_given_a_name,64);return}let _n=Rd(Ht,_u,vl)??Gd(Ht);if(_n){Pe(Sr,$e.end,Z.Unknown_keyword_or_identifier_Did_you_mean_0,_n);return}Re()!==0&&Pe(Sr,$e.end,Z.Unexpected_keyword_or_identifier)}function Hd($e,Ht,Sr){Re()===Sr?Kr(Ht):Kr($e,c.getTokenValue())}function Gd($e){for(let Ht of _u)if($e.length>Ht.length+2&&uc($e,Ht))return`${Ht} ${$e.slice(Ht.length)}`}function Nl($e,Ht,Sr){if(Re()===60&&!c.hasPrecedingLineBreak()){Kr(Z.Decorators_must_precede_the_name_and_all_keywords_of_property_declarations);return}if(Re()===21){Kr(Z.Cannot_start_a_function_call_in_a_type_annotation),Vt();return}if(Ht&&!Ug()){Sr?Kr(Z._0_expected,vr(27)):Kr(Z.Expected_for_property_initializer);return}if(!_f()){if(Sr){Kr(Z._0_expected,vr(27));return}UA($e)}}function ug($e){return Re()===$e?(dn(),!0):(w.assert(wce($e)),Kr(Z._0_expected,vr($e)),!1)}function hf($e,Ht,Sr,_n){if(Re()===Ht){Vt();return}let Xn=Kr(Z._0_expected,vr(Ht));Sr&&Xn&&tg(Xn,J5(Nt,kt,_n,1,Z.The_parser_expected_to_find_a_1_to_match_the_0_token_here,vr($e),vr(Ht)))}function qc($e){return Re()===$e?(Vt(),!0):!1}function Lc($e){if(Re()===$e)return kI()}function jm($e){if(Re()===$e)return o_()}function xf($e,Ht,Sr){return Lc($e)||uI($e,!1,Ht||Z._0_expected,Sr||vr($e))}function I0($e){let Ht=jm($e);return Ht||(w.assert(wce($e)),uI($e,!1,Z._0_expected,vr($e)))}function kI(){let $e=Qe(),Ht=Re();return Vt(),di(Be(Ht),$e)}function o_(){let $e=Qe(),Ht=Re();return dn(),di(Be(Ht),$e)}function Ug(){return Re()===27?!0:Re()===20||Re()===1||c.hasPrecedingLineBreak()}function _f(){return Ug()?(Re()===27&&Vt(),!0):!1}function Yd(){return _f()||ri(27)}function qA($e,Ht,Sr,_n){let Xn=Q($e,_n);return MS(Xn,Ht,Sr??c.getTokenFullStart()),Xn}function di($e,Ht,Sr){return MS($e,Ht,Sr??c.getTokenFullStart()),Ns&&($e.flags|=Ns),jn&&(jn=!1,$e.flags|=262144),$e}function uI($e,Ht,Sr,..._n){Ht?wn(c.getTokenFullStart(),0,Sr,..._n):Sr&&Kr(Sr,..._n);let Xn=Qe(),es=$e===80?Ae("",void 0):DS($e)?P.createTemplateLiteralLikeNode($e,"","",void 0):$e===9?te("",void 0):$e===11?re("",void 0):$e===282?P.createMissingDeclaration():Be($e);return di(es,Xn)}function U0($e){let Ht=zr.get($e);return Ht===void 0&&zr.set($e,Ht=$e),Ht}function K0($e,Ht,Sr){if($e){$n++;let Xc=c.hasLeadingAsterisks()?c.getTokenStart():Qe(),bc=Re(),qa=U0(c.getTokenValue()),Cl=c.hasExtendedUnicodeEscape();return Jt(),di(Ae(qa,bc,Cl),Xc)}if(Re()===81)return Kr(Sr||Z.Private_identifiers_are_not_allowed_outside_class_bodies),K0(!0);if(Re()===0&&c.tryScan(()=>c.reScanInvalidIdentifier()===80))return K0(!0);$n++;let _n=Re()===1,Xn=c.isReservedWord(),es=c.getTokenText(),Ia=Xn?Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:Z.Identifier_expected;return uI(80,_n,Ht||Ia,es)}function Xb($e){return K0(ki(),void 0,$e)}function nf($e,Ht){return K0(Gs(),$e,Ht)}function GI($e){return K0(MI(Re()),$e)}function yt(){return(c.hasUnicodeEscape()||c.hasExtendedUnicodeEscape())&&Kr(Z.Unicode_escape_sequence_cannot_appear_here),K0(MI(Re()))}function tt(){return MI(Re())||Re()===11||Re()===9}function gr(){return MI(Re())||Re()===11}function mn($e){if(Re()===11||Re()===9){let Ht=En();return Ht.text=U0(Ht.text),Ht}return $e&&Re()===23?Yo():Re()===81?fi():GI()}function Ri(){return mn(!0)}function Yo(){let $e=Qe();ri(23);let Ht=Bi(fr);return ri(24),di(P.createComputedPropertyName(Ht),$e)}function fi(){let $e=Qe(),Ht=de(U0(c.getTokenValue()));return Vt(),di(Ht,$e)}function Xo($e){return Re()===$e&&Ra(ic)}function _c(){return Vt(),c.hasPrecedingLineBreak()?!1:Jf()}function ic(){switch(Re()){case 87:return Vt()===94;case 95:return Vt(),Re()===90?sa(Fm):Re()===156?sa(sf):Pg();case 90:return Fm();case 126:case 139:case 153:return Vt(),Jf();default:return _c()}}function Pg(){return Re()===60||Re()!==42&&Re()!==130&&Re()!==19&&Jf()}function sf(){return Vt(),Pg()}function qC(){return Tv(Re())&&Ra(ic)}function Jf(){return Re()===23||Re()===19||Re()===42||Re()===26||tt()}function Fm(){return Vt(),Re()===86||Re()===100||Re()===120||Re()===60||Re()===128&&sa(rge)||Re()===134&&sa(q0)}function of($e,Ht){if(Em($e))return!0;switch($e){case 0:case 1:case 3:return!(Re()===27&&Ht)&&pb();case 2:return Re()===84||Re()===90;case 4:return sa(zs);case 5:return sa($2)||Re()===27&&!Ht;case 6:return Re()===23||tt();case 12:switch(Re()){case 23:case 42:case 26:case 25:return!0;default:return tt()}case 18:return tt();case 9:return Re()===23||Re()===26||tt();case 24:return gr();case 7:return Re()===19?sa(Zm):Ht?Gs()&&!H2():y7()&&!H2();case 8:return QP();case 10:return Re()===28||Re()===26||QP();case 19:return Re()===103||Re()===87||Gs();case 15:switch(Re()){case 28:case 25:return!0}case 11:return Re()===26||IT();case 16:return iw(!1);case 17:return iw(!0);case 20:case 21:return Re()===28||ek();case 22:return QM();case 23:return Re()===161&&sa(M4)?!1:MI(Re());case 13:return MI(Re())||Re()===19;case 14:return!0;case 25:return!0;case 26:return w.fail("ParsingContext.Count used as a context");default:w.assertNever($e,"Non-exhaustive case in 'isListElement'.")}}function Zm(){if(w.assert(Re()===19),Vt()===20){let $e=Vt();return $e===28||$e===19||$e===96||$e===119}return!0}function Jb(){return Vt(),Gs()}function FI(){return Vt(),MI(Re())}function $C(){return Vt(),VR(Re())}function H2(){return Re()===119||Re()===96?sa(qt):!1}function qt(){return Vt(),IT()}function Fn(){return Vt(),ek()}function Bs($e){if(Re()===1)return!0;switch($e){case 1:case 2:case 4:case 5:case 6:case 12:case 9:case 23:case 24:return Re()===20;case 3:return Re()===20||Re()===84||Re()===90;case 7:return Re()===19||Re()===96||Re()===119;case 8:return Rl();case 19:return Re()===32||Re()===21||Re()===19||Re()===96||Re()===119;case 11:return Re()===22||Re()===27;case 15:case 21:case 10:return Re()===24;case 17:case 16:case 18:return Re()===22||Re()===24;case 20:return Re()!==28;case 22:return Re()===19||Re()===20;case 13:return Re()===32||Re()===44;case 14:return Re()===30&&sa(Ere);default:return!1}}function Rl(){return!!(Ug()||xP(Re())||Re()===39)}function SA(){w.assert(bi,"Missing parsing context");for(let $e=0;$e<26;$e++)if(bi&1<<$e&&(of($e,!0)||Bs($e)))return!0;return!1}function OA($e,Ht){let Sr=bi;bi|=1<<$e;let _n=[],Xn=Qe();for(;!Bs($e);){if(of($e,!1)){_n.push(JI($e,Ht));continue}if(uD($e))break}return bi=Sr,qA(_n,Xn)}function JI($e,Ht){let Sr=Em($e);return Sr?np(Sr):Ht()}function Em($e,Ht){var Sr;if(!Vr||!Xd($e)||jn)return;let _n=Vr.currentNode(Ht??c.getTokenFullStart());if(!(Tf(_n)||KKi(_n)||UR(_n)||(_n.flags&101441536)!==Ns)&&_C(_n,$e))return pee(_n)&&((Sr=_n.jsDoc)!=null&&Sr.jsDocCache)&&(_n.jsDoc.jsDocCache=void 0),_n}function np($e){return c.resetTokenState($e.end),Vt(),$e}function Xd($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}function _C($e,Ht){switch(Ht){case 5:return Ub($e);case 2:return pT($e);case 0:case 1:case 3:return Y2($e);case 6:return gb($e);case 4:return WB($e);case 8:return X2($e);case 17:case 16:return lD($e)}return!1}function Ub($e){if($e)switch($e.kind){case 176:case 181:case 177:case 178:case 172:case 240:return!0;case 174:let Ht=$e;return!(Ht.name.kind===80&&Ht.name.escapedText==="constructor")}return!1}function pT($e){if($e)switch($e.kind){case 296:case 297:return!0}return!1}function Y2($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}function gb($e){return $e.kind===306}function WB($e){if($e)switch($e.kind){case 180:case 173:case 181:case 171:case 179:return!0}return!1}function X2($e){return $e.kind!==260?!1:$e.initializer===void 0}function lD($e){return $e.kind!==169?!1:$e.initializer===void 0}function uD($e){return Ab($e),SA()?!0:(Vt(),!1)}function Ab($e){switch($e){case 0:return Re()===90?Kr(Z._0_expected,vr(95)):Kr(Z.Declaration_or_statement_expected);case 1:return Kr(Z.Declaration_or_statement_expected);case 2:return Kr(Z.case_or_default_expected);case 3:return Kr(Z.Statement_expected);case 18:case 4:return Kr(Z.Property_or_signature_expected);case 5:return Kr(Z.Unexpected_token_A_constructor_method_accessor_or_property_was_expected);case 6:return Kr(Z.Enum_member_expected);case 7:return Kr(Z.Expression_expected);case 8:return s0(Re())?Kr(Z._0_is_not_allowed_as_a_variable_declaration_name,vr(Re())):Kr(Z.Variable_declaration_expected);case 9:return Kr(Z.Property_destructuring_pattern_expected);case 10:return Kr(Z.Array_element_destructuring_pattern_expected);case 11:return Kr(Z.Argument_expression_expected);case 12:return Kr(Z.Property_assignment_expected);case 15:return Kr(Z.Expression_or_comma_expected);case 17:return Kr(Z.Parameter_declaration_expected);case 16:return s0(Re())?Kr(Z._0_is_not_allowed_as_a_parameter_name,vr(Re())):Kr(Z.Parameter_declaration_expected);case 19:return Kr(Z.Type_parameter_declaration_expected);case 20:return Kr(Z.Type_argument_expected);case 21:return Kr(Z.Type_expected);case 22:return Kr(Z.Unexpected_token_expected);case 23:return Re()===161?Kr(Z._0_expected,"}"):Kr(Z.Identifier_expected);case 13:return Kr(Z.Identifier_expected);case 14:return Kr(Z.Identifier_expected);case 24:return Kr(Z.Identifier_or_string_literal_expected);case 25:return Kr(Z.Identifier_expected);case 26:return w.fail("ParsingContext.Count used as a context");default:w.assertNever($e)}}function em($e,Ht,Sr){let _n=bi;bi|=1<<$e;let Xn=[],es=Qe(),Ia=-1;for(;;){if(of($e,!1)){let Xc=c.getTokenFullStart(),bc=JI($e,Ht);if(!bc){bi=_n;return}if(Xn.push(bc),Ia=c.getTokenStart(),qc(28))continue;if(Ia=-1,Bs($e))break;ri(28,gD($e)),Sr&&Re()===27&&!c.hasPrecedingLineBreak()&&Vt(),Xc===c.getTokenFullStart()&&Vt();continue}if(Bs($e)||uD($e))break}return bi=_n,qA(Xn,es,void 0,Ia>=0)}function gD($e){return $e===6?Z.An_enum_member_name_must_be_followed_by_a_or:void 0}function Kb(){let $e=qA([],Qe());return $e.isMissingList=!0,$e}function LN($e){return!!$e.isMissingList}function J2($e,Ht,Sr,_n){if(ri(Sr)){let Xn=em($e,Ht);return ri(_n),Xn}return Kb()}function rt($e,Ht){let Sr=Qe(),_n=$e?GI(Ht):nf(Ht);for(;qc(25)&&Re()!==30;)_n=di(P.createQualifiedName(_n,Mn($e,!1,!0)),Sr);return _n}function qr($e,Ht){return di(P.createQualifiedName($e,Ht),$e.pos)}function Mn($e,Ht,Sr){if(c.hasPrecedingLineBreak()&&MI(Re())&&sa(VP))return uI(80,!0,Z.Identifier_expected);if(Re()===81){let _n=fi();return Ht?_n:uI(80,!0,Z.Identifier_expected)}return $e?Sr?GI():yt():nf()}function Jn($e){let Ht=Qe(),Sr=[],_n;do _n=Yt($e),Sr.push(_n);while(_n.literal.kind===17);return qA(Sr,Ht)}function cs($e){let Ht=Qe();return di(P.createTemplateExpression(Rs($e),Jn($e)),Ht)}function Zs(){let $e=Qe();return di(P.createTemplateLiteralType(Rs(!1),qo()),$e)}function qo(){let $e=Qe(),Ht=[],Sr;do Sr=Ja(),Ht.push(Sr);while(Sr.literal.kind===17);return qA(Ht,$e)}function Ja(){let $e=Qe();return di(P.createTemplateLiteralTypeSpan(Bm(),Ge(!1)),$e)}function Ge($e){return Re()===20?(ds($e),yc()):xf(18,Z._0_expected,vr(20))}function Yt($e){let Ht=Qe();return di(P.createTemplateSpan(Bi(fr),Ge($e)),Ht)}function En(){return Pl(Re())}function Rs($e){!$e&&c.getTokenFlags()&26656&&ds(!1);let Ht=Pl(Re());return w.assert(Ht.kind===16,"Template head has wrong token kind"),Ht}function yc(){let $e=Pl(Re());return w.assert($e.kind===17||$e.kind===18,"Template fragment has wrong token kind"),$e}function Cu($e){let Ht=$e===15||$e===18,Sr=c.getTokenText();return Sr.substring(1,Sr.length-(c.isUnterminated()?0:Ht?1:2))}function Pl($e){let Ht=Qe(),Sr=DS($e)?P.createTemplateLiteralLikeNode($e,c.getTokenValue(),Cu($e),c.getTokenFlags()&7176):$e===9?te(c.getTokenValue(),c.getNumericLiteralFlags()):$e===11?re(c.getTokenValue(),void 0,c.hasExtendedUnicodeEscape()):I5($e)?ue($e,c.getTokenValue()):w.fail();return c.hasExtendedUnicodeEscape()&&(Sr.hasExtendedUnicodeEscape=!0),c.isUnterminated()&&(Sr.isUnterminated=!0),Vt(),di(Sr,Ht)}function Bu(){return rt(!0,Z.Type_expected)}function ad(){if(!c.hasPrecedingLineBreak()&&Es()===30)return J2(20,Bm,30,32)}function oA(){let $e=Qe();return di(P.createTypeReferenceNode(Bu(),ad()),$e)}function gI($e){switch($e.kind){case 183:return Tf($e.typeName);case 184:case 185:{let{parameters:Ht,type:Sr}=$e;return LN(Ht)||gI(Sr)}case 196:return gI($e.type);default:return!1}}function PB($e){return Vt(),di(P.createTypePredicateNode(void 0,$e,Bm()),$e.pos)}function nw(){let $e=Qe();return Vt(),di(P.createThisTypeNode(),$e)}function AD(){let $e=Qe();return Vt(),di(P.createJSDocAllType(),$e)}function qx(){let $e=Qe();return Vt(),di(P.createJSDocNonNullableType(xM(),!1),$e)}function YZ(){let $e=Qe();return Vt(),Re()===28||Re()===20||Re()===22||Re()===32||Re()===64||Re()===52?di(P.createJSDocUnknownType(),$e):di(P.createJSDocNullableType(Bm(),!1),$e)}function $x(){let $e=Qe(),Ht=ur();if(Ra(R7)){let Sr=K2(36),_n=Ov(59,!1);return _s(di(P.createJSDocFunctionType(Sr,_n),$e),Ht)}return di(P.createTypeReferenceNode(GI(),void 0),$e)}function OB(){let $e=Qe(),Ht;return(Re()===110||Re()===105)&&(Ht=GI(),ri(59)),di(P.createParameterDeclaration(void 0,void 0,Ht,void 0,U2(),void 0),$e)}function U2(){c.setSkipJsDocLeadingAsterisks(!0);let $e=Qe();if(qc(144)){let _n=P.createJSDocNamepathType(void 0);e:for(;;)switch(Re()){case 20:case 1:case 28:case 5:break e;default:dn()}return c.setSkipJsDocLeadingAsterisks(!1),di(_n,$e)}let Ht=qc(26),Sr=jZ();return c.setSkipJsDocLeadingAsterisks(!1),Ht&&(Sr=di(P.createJSDocVariadicType(Sr),$e)),Re()===64?(Vt(),di(P.createJSDocOptionalType(Sr),$e)):Sr}function ip(){let $e=Qe();ri(114);let Ht=rt(!0),Sr=c.hasPrecedingLineBreak()?void 0:rF();return di(P.createTypeQueryNode(Ht,Sr),$e)}function Z_(){let $e=Qe(),Ht=qn(!1,!0),Sr=nf(),_n,Xn;qc(96)&&(ek()||!IT()?_n=Bm():Xn=eL());let es=qc(64)?Bm():void 0,Ia=P.createTypeParameterDeclaration(Ht,Sr,_n,es);return Ia.expression=Xn,di(Ia,$e)}function j0(){if(Re()===30)return J2(19,Z_,30,32)}function iw($e){return Re()===26||QP()||Tv(Re())||Re()===60||ek(!$e)}function XZ($e){let Ht=VV(Z.Private_identifiers_cannot_be_used_as_parameters);return NX(Ht)===0&&!lr($e)&&Tv(Re())&&Vt(),Ht}function HG(){return ki()||Re()===23||Re()===19}function kV($e){return GV($e)}function Pv($e){return GV($e,!1)}function GV($e,Ht=!0){let Sr=Qe(),_n=ur(),Xn=$e?wt(()=>qn(!0)):br(()=>qn(!0));if(Re()===110){let bc=P.createParameterDeclaration(Xn,void 0,K0(!0),void 0,zZ(),void 0),qa=$i(Xn);return qa&&ar(qa,Z.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters),_s(di(bc,Sr),_n)}let es=gi;gi=!1;let Ia=Lc(26);if(!Ht&&!HG())return;let Xc=_s(di(P.createParameterDeclaration(Xn,Ia,XZ(Xn),Lc(58),zZ(),sw()),Sr),_n);return gi=es,Xc}function Ov($e,Ht){if(EP($e,Ht))return kr(jZ)}function EP($e,Ht){return $e===39?(ri($e),!0):qc(59)?!0:Ht&&Re()===39?(Kr(Z._0_expected,vr(59)),Vt(),!0):!1}function fT($e,Ht){let Sr=ti(),_n=an();za(!!($e&1)),Rc(!!($e&2));let Xn=$e&32?em(17,OB):em(16,()=>Ht?kV(_n):Pv(_n));return za(Sr),Rc(_n),Xn}function K2($e){if(!ri(21))return Kb();let Ht=fT($e,!0);return ri(22),Ht}function YG(){qc(28)||Yd()}function rr($e){let Ht=Qe(),Sr=ur();$e===180&&ri(105);let _n=j0(),Xn=K2(4),es=Ov(59,!0);YG();let Ia=$e===179?P.createCallSignature(_n,Xn,es):P.createConstructSignature(_n,Xn,es);return _s(di(Ia,Ht),Sr)}function Tr(){return Re()===23&&sa(xn)}function xn(){if(Vt(),Re()===26||Re()===24)return!0;if(Tv(Re())){if(Vt(),Gs())return!0}else if(Gs())Vt();else return!1;return Re()===59||Re()===28?!0:Re()!==58?!1:(Vt(),Re()===59||Re()===28||Re()===24)}function ci($e,Ht,Sr){let _n=J2(16,()=>kV(!1),23,24),Xn=zZ();YG();let es=P.createIndexSignature(Sr,_n,Xn);return _s(di(es,$e),Ht)}function Wi($e,Ht,Sr){let _n=Ri(),Xn=Lc(58),es;if(Re()===21||Re()===30){let Ia=j0(),Xc=K2(4),bc=Ov(59,!0);es=P.createMethodSignature(Sr,_n,Xn,Ia,Xc,bc)}else{let Ia=zZ();es=P.createPropertySignature(Sr,_n,Xn,Ia),Re()===64&&(es.initializer=sw())}return YG(),_s(di(es,$e),Ht)}function zs(){if(Re()===21||Re()===30||Re()===139||Re()===153)return!0;let $e=!1;for(;Tv(Re());)$e=!0,Vt();return Re()===23?!0:(tt()&&($e=!0,Vt()),$e?Re()===21||Re()===30||Re()===58||Re()===59||Re()===28||Ug():!1)}function zi(){if(Re()===21||Re()===30)return rr(179);if(Re()===105&&sa(mo))return rr(180);let $e=Qe(),Ht=ur(),Sr=qn(!1);return Xo(139)?iL($e,Ht,Sr,177,4):Xo(153)?iL($e,Ht,Sr,178,4):Tr()?ci($e,Ht,Sr):Wi($e,Ht,Sr)}function mo(){return Vt(),Re()===21||Re()===30}function vc(){return Vt()===25}function Io(){switch(Vt()){case 21:case 30:case 25:return!0}return!1}function ac(){let $e=Qe();return di(P.createTypeLiteralNode(Ws()),$e)}function Ws(){let $e;return ri(19)?($e=OA(4,zi),ri(20)):$e=Kb(),$e}function nu(){return Vt(),Re()===40||Re()===41?Vt()===148:(Re()===148&&Vt(),Re()===23&&Jb()&&Vt()===103)}function Yg(){let $e=Qe(),Ht=GI();ri(103);let Sr=Bm();return di(P.createTypeParameterDeclaration(void 0,Ht,Sr,void 0),$e)}function zm(){let $e=Qe();ri(19);let Ht;(Re()===148||Re()===40||Re()===41)&&(Ht=kI(),Ht.kind!==148&&ri(148)),ri(23);let Sr=Yg(),_n=qc(130)?Bm():void 0;ri(24);let Xn;(Re()===58||Re()===40||Re()===41)&&(Xn=kI(),Xn.kind!==58&&ri(58));let es=zZ();Yd();let Ia=OA(4,zi);return ri(20),di(P.createMappedTypeNode(Ht,Sr,_n,Xn,es,Ia),$e)}function C0(){let $e=Qe();if(qc(26))return di(P.createRestTypeNode(Bm()),$e);let Ht=Bm();if(gte(Ht)&&Ht.pos===Ht.type.pos){let Sr=P.createOptionalTypeNode(Ht.type);return un(Sr,Ht),Sr.flags=Ht.flags,Sr}return Ht}function Qv(){return Vt()===59||Re()===58&&Vt()===59}function JZ(){return Re()===26?MI(Vt())&&Qv():MI(Re())&&Qv()}function Mv(){if(sa(JZ)){let $e=Qe(),Ht=ur(),Sr=Lc(26),_n=GI(),Xn=Lc(58);ri(59);let es=C0(),Ia=P.createNamedTupleMember(Sr,_n,Xn,es);return _s(di(Ia,$e),Ht)}return C0()}function I7(){let $e=Qe();return di(P.createTupleTypeNode(J2(21,Mv,23,24)),$e)}function sre(){let $e=Qe();ri(21);let Ht=Bm();return ri(22),di(P.createParenthesizedType(Ht),$e)}function C7(){let $e;if(Re()===128){let Ht=Qe();Vt();let Sr=di(Be(128),Ht);$e=qA([Sr],Ht)}return $e}function DM(){let $e=Qe(),Ht=ur(),Sr=C7(),_n=qc(105);w.assert(!Sr||_n,"Per isStartOfFunctionOrConstructorType, a function type cannot have modifiers.");let Xn=j0(),es=K2(4),Ia=Ov(39,!1),Xc=_n?P.createConstructorTypeNode(Sr,Xn,es,Ia):P.createFunctionTypeNode(Xn,es,Ia);return _s(di(Xc,$e),Ht)}function BP(){let $e=kI();return Re()===25?void 0:$e}function vP($e){let Ht=Qe();$e&&Vt();let Sr=Re()===112||Re()===97||Re()===106?kI():Pl(Re());return $e&&(Sr=di(P.createPrefixUnaryExpression(41,Sr),Ht)),di(P.createLiteralTypeNode(Sr),Ht)}function SP(){return Vt(),Re()===102}function D4(){Lt|=4194304;let $e=Qe(),Ht=qc(114);ri(102),ri(21);let Sr=Bm(),_n;if(qc(28)){let Ia=c.getTokenStart();ri(19);let Xc=Re();if(Xc===118||Xc===132?Vt():Kr(Z._0_expected,vr(118)),ri(59),_n=oge(Xc,!0),!ri(20)){let bc=zo(mr);bc&&bc.code===Z._0_expected.code&&tg(bc,J5(Nt,kt,Ia,1,Z.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}}ri(22);let Xn=qc(25)?Bu():void 0,es=ad();return di(P.createImportTypeNode(Sr,_n,Xn,es,Ht),$e)}function UZ(){return Vt(),Re()===9||Re()===10}function xM(){switch(Re()){case 133:case 159:case 154:case 150:case 163:case 155:case 136:case 157:case 146:case 151:return Ra(BP)||oA();case 67:c.reScanAsteriskEqualsToken();case 42:return AD();case 61:c.reScanQuestionToken();case 58:return YZ();case 100:return $x();case 54:return qx();case 15:case 11:case 9:case 10:case 112:case 97:case 106:return vP();case 41:return sa(UZ)?vP(!0):oA();case 116:return kI();case 110:{let $e=nw();return Re()===142&&!c.hasPrecedingLineBreak()?PB($e):$e}case 114:return sa(SP)?D4():ip();case 19:return sa(nu)?zm():ac();case 23:return I7();case 21:return sre();case 102:return D4();case 131:return sa(VP)?_7():oA();case 16:return Zs();default:return oA()}}function ek($e){switch(Re()){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&&sa(UZ);case 21:return!$e&&sa(kM);default:return Gs()}}function kM(){return Vt(),Re()===22||iw(!1)||ek()}function KA(){let $e=Qe(),Ht=xM();for(;!c.hasPrecedingLineBreak();)switch(Re()){case 54:Vt(),Ht=di(P.createJSDocNonNullableType(Ht,!0),$e);break;case 58:if(sa(Fn))return Ht;Vt(),Ht=di(P.createJSDocNullableType(Ht,!0),$e);break;case 23:if(ri(23),ek()){let Sr=Bm();ri(24),Ht=di(P.createIndexedAccessTypeNode(Ht,Sr),$e)}else ri(24),Ht=di(P.createArrayTypeNode(Ht),$e);break;default:return Ht}return Ht}function x4($e){let Ht=Qe();return ri($e),di(P.createTypeOperatorNode($e,VN()),Ht)}function k4(){if(qc(96)){let $e=en(Bm);if(kn()||Re()!==58)return $e}}function wP(){let $e=Qe(),Ht=nf(),Sr=Ra(k4),_n=P.createTypeParameterDeclaration(void 0,Ht,Sr);return di(_n,$e)}function XG(){let $e=Qe();return ri(140),di(P.createInferTypeNode(wP()),$e)}function VN(){let $e=Re();switch($e){case 143:case 158:case 148:return x4($e);case 140:return XG()}return kr(KA)}function QB($e){if(m7()){let Ht=DM(),Sr;return H(Ht)?Sr=$e?Z.Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:Z.Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:Sr=$e?Z.Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:Z.Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type,ar(Ht,Sr),Ht}}function db($e,Ht,Sr){let _n=Qe(),Xn=$e===52,es=qc($e),Ia=es&&QB(Xn)||Ht();if(Re()===$e||es){let Xc=[Ia];for(;qc($e);)Xc.push(QB(Xn)||Ht());Ia=di(Sr(qA(Xc,_n)),_n)}return Ia}function YE(){return db(51,VN,P.createIntersectionTypeNode)}function jb(){return db(52,YE,P.createUnionTypeNode)}function KZ(){return Vt(),Re()===105}function m7(){return Re()===30||Re()===21&&sa(TP)?!0:Re()===105||Re()===128&&sa(KZ)}function h7(){if(Tv(Re())&&qn(!1),Gs()||Re()===110)return Vt(),!0;if(Re()===23||Re()===19){let $e=mr.length;return VV(),$e===mr.length}return!1}function TP(){return Vt(),!!(Re()===22||Re()===26||h7()&&(Re()===59||Re()===28||Re()===58||Re()===64||Re()===22&&(Vt(),Re()===39)))}function jZ(){let $e=Qe(),Ht=Gs()&&Ra(NP),Sr=Bm();return Ht?di(P.createTypePredicateNode(void 0,Ht,Sr),$e):Sr}function NP(){let $e=nf();if(Re()===142&&!c.hasPrecedingLineBreak())return Vt(),$e}function _7(){let $e=Qe(),Ht=xf(131),Sr=Re()===110?nw():nf(),_n=qc(142)?Bm():void 0;return di(P.createTypePredicateNode(Ht,Sr,_n),$e)}function Bm(){if(Ns&81920)return lg(81920,Bm);if(m7())return DM();let $e=Qe(),Ht=jb();if(!kn()&&!c.hasPrecedingLineBreak()&&qc(96)){let Sr=en(Bm);ri(58);let _n=kr(Bm);ri(59);let Xn=kr(Bm);return di(P.createConditionalTypeNode(Ht,Sr,_n,Xn),$e)}return Ht}function zZ(){return qc(59)?Bm():void 0}function y7(){switch(Re()){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 sa(Io);default:return Gs()}}function IT(){if(y7())return!0;switch(Re()){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 M1()?!0:Gs()}}function G4(){return Re()!==19&&Re()!==100&&Re()!==86&&Re()!==60&&IT()}function fr(){let $e=Pn();$e&&nc(!1);let Ht=Qe(),Sr=qm(!0),_n;for(;_n=Lc(28);)Sr=$Z(Sr,_n,qm(!0),Ht);return $e&&nc(!0),Sr}function sw(){return qc(64)?qm(!0):void 0}function qm($e){if(RP())return MB();let Ht=JG($e)||GM($e);if(Ht)return Ht;let Sr=Qe(),_n=ur(),Xn=KG(0);return Xn.kind===80&&Re()===39?WN(Sr,Xn,$e,_n,void 0):N_(Xn)&&tD(Qn())?$Z(Xn,kI(),qm($e),Sr):UG(Xn,Sr,$e)}function RP(){return Re()===127?ti()?!0:sa(O4):!1}function dD(){return Vt(),!c.hasPrecedingLineBreak()&&Gs()}function MB(){let $e=Qe();return Vt(),!c.hasPrecedingLineBreak()&&(Re()===42||IT())?di(P.createYieldExpression(Lc(42),qm(!0)),$e):di(P.createYieldExpression(void 0,void 0),$e)}function WN($e,Ht,Sr,_n,Xn){w.assert(Re()===39,"parseSimpleArrowFunctionExpression should only have been called if we had a =>");let es=P.createParameterDeclaration(void 0,void 0,Ht,void 0,void 0,void 0);di(es,Ht.pos);let Ia=qA([es],es.pos,es.end),Xc=xf(39),bc=DP(!!Xn,Sr),qa=P.createArrowFunction(Xn,void 0,Ia,void 0,Xc,bc);return _s(di(qa,$e),_n)}function JG($e){let Ht=ege();if(Ht!==0)return Ht===1?Z4(!0,!0):Ra(()=>ow($e))}function ege(){return Re()===21||Re()===30||Re()===134?sa(wA):Re()===39?1:0}function wA(){if(Re()===134&&(Vt(),c.hasPrecedingLineBreak()||Re()!==21&&Re()!==30))return 0;let $e=Re(),Ht=Vt();if($e===21){if(Ht===22)switch(Vt()){case 39:case 59:case 19:return 1;default:return 0}if(Ht===23||Ht===19)return 2;if(Ht===26)return 1;if(Tv(Ht)&&Ht!==134&&sa(Jb))return Vt()===130?0:1;if(!Gs()&&Ht!==110)return 0;switch(Vt()){case 59:return 1;case 58:return Vt(),Re()===59||Re()===28||Re()===64||Re()===22?1:0;case 28:case 64:case 22:return 2}return 0}else return w.assert($e===30),!Gs()&&Re()!==87?0:jt===1?sa(()=>{qc(87);let _n=Vt();if(_n===96)switch(Vt()){case 64:case 32:case 44:return!1;default:return!0}else if(_n===28||_n===64)return!0;return!1})?1:0:2}function ow($e){let Ht=c.getTokenStart();if(Pi?.has(Ht))return;let Sr=Z4(!1,$e);return Sr||(Pi||(Pi=new Set)).add(Ht),Sr}function GM($e){if(Re()===134&&sa(F4)===1){let Ht=Qe(),Sr=ur(),_n=Ua(),Xn=KG(0);return WN(Ht,Xn,$e,Sr,_n)}}function F4(){if(Re()===134){if(Vt(),c.hasPrecedingLineBreak()||Re()===39)return 0;let $e=KG(0);if(!c.hasPrecedingLineBreak()&&$e.kind===80&&Re()===39)return 1}return 0}function Z4($e,Ht){let Sr=Qe(),_n=ur(),Xn=Ua(),es=lr(Xn,g4)?2:0,Ia=j0(),Xc;if(ri(21)){if($e)Xc=fT(es,$e);else{let sF=fT(es,$e);if(!sF)return;Xc=sF}if(!ri(22)&&!$e)return}else{if(!$e)return;Xc=Kb()}let bc=Re()===59,qa=Ov(59,!1);if(qa&&!$e&&gI(qa))return;let Cl=qa;for(;Cl?.kind===196;)Cl=Cl.type;let up=Cl&&Ate(Cl);if(!$e&&Re()!==39&&(up||Re()!==19))return;let _g=Re(),aA=xf(39),eB=_g===39||_g===19?DP(lr(Xn,g4),Ht):nf();if(!Ht&&bc&&Re()!==59)return;let hT=P.createArrowFunction(Xn,Ia,Xc,qa,aA,eB);return _s(di(hT,Sr),_n)}function DP($e,Ht){if(Re()===19)return nL($e?2:0);if(Re()!==27&&Re()!==100&&Re()!==86&&pb()&&!G4())return nL(16|($e?2:0));let Sr=gi;gi=!1;let _n=$e?wt(()=>qm(Ht)):br(()=>qm(Ht));return gi=Sr,_n}function UG($e,Ht,Sr){let _n=Lc(58);if(!_n)return $e;let Xn;return di(P.createConditionalExpression($e,_n,lg(u,()=>qm(!1)),Xn=xf(59),GE(Xn)?qm(Sr):uI(80,!1,Z._0_expected,vr(59))),Ht)}function KG($e){let Ht=Qe(),Sr=eL();return j2($e,Sr,Ht)}function xP($e){return $e===103||$e===165}function j2($e,Ht,Sr){for(;;){Qn();let _n=Bee(Re());if(!(Re()===43?_n>=$e:_n>$e)||Re()===103&&cr())break;if(Re()===130||Re()===152){if(c.hasPrecedingLineBreak())break;{let es=Re();Vt(),Ht=es===152?qZ(Ht,Bm()):al(Ht,Bm())}}else Ht=$Z(Ht,kI(),KG(_n),Sr)}return Ht}function M1(){return cr()&&Re()===103?!1:Bee(Re())>0}function qZ($e,Ht){return di(P.createSatisfiesExpression($e,Ht),$e.pos)}function $Z($e,Ht,Sr,_n){return di(P.createBinaryExpression($e,Ht,Sr),_n)}function al($e,Ht){return di(P.createAsExpression($e,Ht),$e.pos)}function Jo(){let $e=Qe();return di(P.createPrefixUnaryExpression(Re(),bt(jG)),$e)}function L_(){let $e=Qe();return di(P.createDeleteExpression(bt(jG)),$e)}function ore(){let $e=Qe();return di(P.createTypeOfExpression(bt(jG)),$e)}function aw(){let $e=Qe();return di(P.createVoidExpression(bt(jG)),$e)}function b7(){return Re()===135?an()?!0:sa(O4):!1}function pD(){let $e=Qe();return di(P.createAwaitExpression(bt(jG)),$e)}function eL(){if(are()){let Sr=Qe(),_n=kP();return Re()===43?j2(Bee(Re()),_n,Sr):_n}let $e=Re(),Ht=jG();if(Re()===43){let Sr=Uu(kt,Ht.pos),{end:_n}=Ht;Ht.kind===216?Pe(Sr,_n,Z.A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses):(w.assert(wce($e)),Pe(Sr,_n,Z.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,vr($e)))}return Ht}function jG(){switch(Re()){case 40:case 41:case 55:case 54:return Jo();case 91:return L_();case 114:return ore();case 116:return aw();case 30:return jt===1?tk(!0,void 0,void 0,!0):v7();case 135:if(b7())return pD();default:return kP()}}function are(){switch(Re()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 135:return!1;case 30:if(jt!==1)return!1;default:return!0}}function kP(){if(Re()===46||Re()===47){let Ht=Qe();return di(P.createPrefixUnaryExpression(Re(),bt(H1)),Ht)}else if(jt===1&&Re()===30&&sa($C))return tk(!0);let $e=H1();if(w.assert(N_($e)),(Re()===46||Re()===47)&&!c.hasPrecedingLineBreak()){let Ht=Re();return Vt(),di(P.createPostfixUnaryExpression($e,Ht),$e.pos)}return $e}function H1(){let $e=Qe(),Ht;return Re()===102?sa(mo)?(Lt|=4194304,Ht=kI()):sa(vc)?(Vt(),Vt(),Ht=di(P.createMetaProperty(102,GI()),$e),Lt|=8388608):Ht=FM():Ht=Re()===108?xp():FM(),HB($e,Ht)}function FM(){let $e=Qe(),Ht=W4();return PN($e,Ht,!0)}function xp(){let $e=Qe(),Ht=kI();if(Re()===30){let Sr=Qe(),_n=Ra(GP);_n!==void 0&&(Pe(Sr,Qe(),Z.super_may_not_use_type_arguments),JE()||(Ht=P.createExpressionWithTypeArguments(Ht,_n)))}return Re()===21||Re()===25||Re()===23?Ht:(xf(25,Z.super_must_be_followed_by_an_argument_list_or_member_access),di(Me(Ht,Mn(!0,!0,!0)),$e))}function tk($e,Ht,Sr,_n=!1){let Xn=Qe(),es=tge($e),Ia;if(es.kind===286){let Xc=ZM(es),bc,qa=Xc[Xc.length-1];if(qa?.kind===284&&!uP(qa.openingElement.tagName,qa.closingElement.tagName)&&uP(es.tagName,qa.closingElement.tagName)){let Cl=qa.children.end,up=di(P.createJsxElement(qa.openingElement,qa.children,di(P.createJsxClosingElement(di(Ae(""),Cl,Cl)),Cl,Cl)),qa.openingElement.pos,Cl);Xc=qA([...Xc.slice(0,Xc.length-1),up],Xc.pos,Cl),bc=qa.closingElement}else bc=lo(es,$e),uP(es.tagName,bc.tagName)||(Sr&&NN(Sr)&&uP(bc.tagName,Sr.tagName)?ar(es.tagName,Z.JSX_element_0_has_no_corresponding_closing_tag,w5(kt,es.tagName)):ar(bc.tagName,Z.Expected_corresponding_JSX_closing_tag_for_0,w5(kt,es.tagName)));Ia=di(P.createJsxElement(es,Xc,bc),Xn)}else es.kind===289?Ia=di(P.createJsxFragment(es,ZM(es),B7($e)),Xn):(w.assert(es.kind===285),Ia=es);if(!_n&&$e&&Re()===30){let Xc=typeof Ht>"u"?Ia.pos:Ht,bc=Ra(()=>tk(!0,Xc));if(bc){let qa=uI(28,!1);return hhe(qa,bc.pos,0),Pe(Uu(kt,Xc),bc.end,Z.JSX_expressions_must_have_one_parent_element),di(P.createBinaryExpression(Ia,qa,bc),Xn)}}return Ia}function cre(){let $e=Qe(),Ht=P.createJsxText(c.getTokenValue(),Hr===13);return Hr=c.scanJsxToken(),di(Ht,$e)}function L4($e,Ht){switch(Ht){case 1:if(p4($e))ar($e,Z.JSX_fragment_has_no_corresponding_closing_tag);else{let Sr=$e.tagName,_n=Math.min(Uu(kt,Sr.pos),Sr.end);Pe(_n,Sr.end,Z.JSX_element_0_has_no_corresponding_closing_tag,w5(kt,$e.tagName))}return;case 31:case 7:return;case 12:case 13:return cre();case 19:return m0(!1);case 30:return tk(!1,void 0,$e);default:return w.assertNever(Ht)}}function ZM($e){let Ht=[],Sr=Qe(),_n=bi;for(bi|=16384;;){let Xn=L4($e,Hr=c.reScanJsxToken());if(!Xn||(Ht.push(Xn),NN($e)&&Xn?.kind===284&&!uP(Xn.openingElement.tagName,Xn.closingElement.tagName)&&uP($e.tagName,Xn.closingElement.tagName)))break}return bi=_n,qA(Ht,Sr)}function E7(){let $e=Qe();return di(P.createJsxAttributes(OA(13,uu)),$e)}function tge($e){let Ht=Qe();if(ri(30),Re()===32)return xo(),di(P.createJsxOpeningFragment(),Ht);let Sr=lre(),_n=Ns&524288?void 0:rF(),Xn=E7(),es;return Re()===32?(xo(),es=P.createJsxOpeningElement(Sr,_n,Xn)):(ri(44),ri(32,void 0,!1)&&($e?Vt():xo()),es=P.createJsxSelfClosingElement(Sr,_n,Xn)),di(es,Ht)}function lre(){let $e=Qe(),Ht=Lo();if(aT(Ht))return Ht;let Sr=Ht;for(;qc(25);)Sr=di(Me(Sr,Mn(!0,!1,!1)),$e);return Sr}function Lo(){let $e=Qe();Vi();let Ht=Re()===110,Sr=yt();return qc(59)?(Vi(),di(P.createJsxNamespacedName(Sr,yt()),$e)):Ht?di(P.createToken(110),$e):Sr}function m0($e){let Ht=Qe();if(!ri(19))return;let Sr,_n;return Re()!==20&&($e||(Sr=Lc(26)),_n=fr()),$e?ri(20):ri(20,void 0,!1)&&xo(),di(P.createJsxExpression(Sr,_n),Ht)}function uu(){if(Re()===19)return XE();let $e=Qe();return di(P.createJsxAttribute(V4(),zG()),$e)}function zG(){if(Re()===64){if(Yc()===11)return En();if(Re()===19)return m0(!0);if(Re()===30)return tk(!0);Kr(Z.or_JSX_element_expected)}}function V4(){let $e=Qe();Vi();let Ht=yt();return qc(59)?(Vi(),di(P.createJsxNamespacedName(Ht,yt()),$e)):Ht}function XE(){let $e=Qe();ri(19),ri(26);let Ht=fr();return ri(20),di(P.createJsxSpreadAttribute(Ht),$e)}function lo($e,Ht){let Sr=Qe();ri(31);let _n=lre();return ri(32,void 0,!1)&&(Ht||!uP($e.tagName,_n)?Vt():xo()),di(P.createJsxClosingElement(_n),Sr)}function B7($e){let Ht=Qe();return ri(31),ri(32,Z.Expected_corresponding_closing_tag_for_JSX_fragment,!1)&&($e?Vt():xo()),di(P.createJsxJsxClosingFragment(),Ht)}function v7(){w.assert(jt!==1,"Type assertions should never be parsed in JSX; they should be parsed as comparisons or JSX elements/fragments.");let $e=Qe();ri(30);let Ht=Bm();ri(32);let Sr=jG();return di(P.createTypeAssertion(Ht,Sr),$e)}function z0(){return Vt(),MI(Re())||Re()===23||JE()}function cw(){return Re()===29&&sa(z0)}function Hv($e){if($e.flags&64)return!0;if(sT($e)){let Ht=$e.expression;for(;sT(Ht)&&!(Ht.flags&64);)Ht=Ht.expression;if(Ht.flags&64){for(;sT($e);)$e.flags|=64,$e=$e.expression;return!0}}return!1}function tL($e,Ht,Sr){let _n=Mn(!0,!0,!0),Xn=Sr||Hv(Ht),es=Xn?De(Ht,Sr,_n):Me(Ht,_n);if(Xn&&Gc(es.name)&&ar(es.name,Z.An_optional_chain_cannot_contain_private_identifiers),k_(Ht)&&Ht.typeArguments){let Ia=Ht.typeArguments.pos-1,Xc=Uu(kt,Ht.typeArguments.end)+1;Pe(Ia,Xc,Z.An_instantiation_expression_cannot_be_followed_by_a_property_access)}return di(es,$e)}function LM($e,Ht,Sr){let _n;if(Re()===24)_n=uI(80,!0,Z.An_element_access_expression_should_take_an_argument);else{let es=Bi(fr);ZE(es)&&(es.text=U0(es.text)),_n=es}ri(24);let Xn=Sr||Hv(Ht)?Le(Ht,Sr,_n):lt(Ht,_n);return di(Xn,$e)}function PN($e,Ht,Sr){for(;;){let _n,Xn=!1;if(Sr&&cw()?(_n=xf(29),Xn=MI(Re())):Xn=qc(25),Xn){Ht=tL($e,Ht,_n);continue}if((_n||!Pn())&&qc(23)){Ht=LM($e,Ht,_n);continue}if(JE()){Ht=!_n&&Ht.kind===233?ON($e,Ht.expression,_n,Ht.typeArguments):ON($e,Ht,_n,void 0);continue}if(!_n){if(Re()===54&&!c.hasPrecedingLineBreak()){Vt(),Ht=di(P.createNonNullExpression(Ht),$e);continue}let es=Ra(GP);if(es){Ht=di(P.createExpressionWithTypeArguments(Ht,es),$e);continue}}return Ht}}function JE(){return Re()===15||Re()===16}function ON($e,Ht,Sr,_n){let Xn=P.createTaggedTemplateExpression(Ht,_n,Re()===15?(ds(!0),En()):cs(!0));return(Sr||Ht.flags&64)&&(Xn.flags|=64),Xn.questionDotToken=Sr,di(Xn,$e)}function HB($e,Ht){for(;;){Ht=PN($e,Ht,!0);let Sr,_n=Lc(29);if(_n&&(Sr=Ra(GP),JE())){Ht=ON($e,Ht,_n,Sr);continue}if(Sr||Re()===21){!_n&&Ht.kind===233&&(Sr=Ht.typeArguments,Ht=Ht.expression);let Xn=rk(),es=_n||Hv(Ht)?st(Ht,_n,Sr,Xn):je(Ht,Sr,Xn);Ht=di(es,$e);continue}if(_n){let Xn=uI(80,!1,Z.Identifier_expected);Ht=di(De(Ht,_n,Xn),$e)}break}return Ht}function rk(){ri(21);let $e=em(11,FP);return ri(22),$e}function GP(){if(Ns&524288||Es()!==30)return;Vt();let $e=em(20,Bm);if(Qn()===32)return Vt(),$e&&S7()?$e:void 0}function S7(){switch(Re()){case 21:case 15:case 16:return!0;case 30:case 32:case 40:case 41:return!1}return c.hasPrecedingLineBreak()||M1()||!IT()}function W4(){switch(Re()){case 15:c.getTokenFlags()&26656&&ds(!1);case 9:case 10:case 11:return En();case 110:case 108:case 106:case 112:case 97:return kI();case 21:return VM();case 23:return lw();case 19:return ZP();case 134:if(!sa(q0))break;return FV();case 60:return El();case 86:return zl();case 100:return FV();case 105:return rL();case 44:case 69:if(Ii()===14)return En();break;case 16:return cs(!1);case 81:return fi()}return nf(Z.Expression_expected)}function VM(){let $e=Qe(),Ht=ur();ri(21);let Sr=Bi(fr);return ri(22),_s(di(qe(Sr),$e),Ht)}function ure(){let $e=Qe();ri(26);let Ht=qm(!0);return di(P.createSpreadElement(Ht),$e)}function P4(){return Re()===26?ure():Re()===28?di(P.createOmittedExpression(),Qe()):qm(!0)}function FP(){return lg(u,P4)}function lw(){let $e=Qe(),Ht=c.getTokenStart(),Sr=ri(23),_n=c.hasPrecedingLineBreak(),Xn=em(15,P4);return hf(23,24,Sr,Ht),di(Fe(Xn,_n),$e)}function gre(){let $e=Qe(),Ht=ur();if(Lc(26)){let Cl=qm(!0);return _s(di(P.createSpreadAssignment(Cl),$e),Ht)}let Sr=qn(!0);if(Xo(139))return iL($e,Ht,Sr,177,0);if(Xo(153))return iL($e,Ht,Sr,178,0);let _n=Lc(42),Xn=Gs(),es=Ri(),Ia=Lc(58),Xc=Lc(54);if(_n||Re()===21||Re()===30)return VC($e,Ht,Sr,_n,es,Ia,Xc);let bc;if(Xn&&Re()!==59){let Cl=Lc(64),up=Cl?Bi(()=>qm(!0)):void 0;bc=P.createShorthandPropertyAssignment(es,up),bc.equalsToken=Cl}else{ri(59);let Cl=Bi(()=>qm(!0));bc=P.createPropertyAssignment(es,Cl)}return bc.modifiers=Sr,bc.questionToken=Ia,bc.exclamationToken=Xc,_s(di(bc,$e),Ht)}function ZP(){let $e=Qe(),Ht=c.getTokenStart(),Sr=ri(19),_n=c.hasPrecedingLineBreak(),Xn=em(12,gre,!0);return hf(19,20,Sr,Ht),di(Ne(Xn,_n),$e)}function FV(){let $e=Pn();nc(!1);let Ht=Qe(),Sr=ur(),_n=qn(!1);ri(100);let Xn=Lc(42),es=Xn?1:0,Ia=lr(_n,g4)?2:0,Xc=es&&Ia?Mt(qG):es?ct(qG):Ia?wt(qG):qG(),bc=j0(),qa=K2(es|Ia),Cl=Ov(59,!1),up=nL(es|Ia);nc($e);let _g=P.createFunctionExpression(_n,Xn,Xc,bc,qa,Cl,up);return _s(di(_g,Ht),Sr)}function qG(){return ki()?Xb():void 0}function rL(){let $e=Qe();if(ri(105),qc(25)){let es=GI();return di(P.createMetaProperty(105,es),$e)}let Ht=Qe(),Sr=PN(Ht,W4(),!1),_n;Sr.kind===233&&(_n=Sr.typeArguments,Sr=Sr.expression),Re()===29&&Kr(Z.Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0,w5(kt,Sr));let Xn=Re()===21?rk():void 0;return di(nt(Sr,_n,Xn),$e)}function Yv($e,Ht){let Sr=Qe(),_n=ur(),Xn=c.getTokenStart(),es=ri(19,Ht);if(es||$e){let Ia=c.hasPrecedingLineBreak(),Xc=OA(1,z2);hf(19,20,es,Xn);let bc=_s(di(it(Xc,Ia),Sr),_n);return Re()===64&&(Kr(Z.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),Vt()),bc}else{let Ia=Kb();return _s(di(it(Ia,void 0),Sr),_n)}}function nL($e,Ht){let Sr=ti();za(!!($e&1));let _n=an();Rc(!!($e&2));let Xn=gi;gi=!1;let es=Pn();es&&nc(!1);let Ia=Yv(!!($e&16),Ht);return es&&nc(!0),gi=Xn,za(Sr),Rc(_n),Ia}function LP(){let $e=Qe(),Ht=ur();return ri(27),_s(di(P.createEmptyStatement(),$e),Ht)}function Ih(){let $e=Qe(),Ht=ur();ri(101);let Sr=c.getTokenStart(),_n=ri(21),Xn=Bi(fr);hf(21,22,_n,Sr);let es=z2(),Ia=qc(93)?z2():void 0;return _s(di(Tt(Xn,es,Ia),$e),Ht)}function $G(){let $e=Qe(),Ht=ur();ri(92);let Sr=z2();ri(117);let _n=c.getTokenStart(),Xn=ri(21),es=Bi(fr);return hf(21,22,Xn,_n),qc(27),_s(di(P.createDoStatement(Sr,es),$e),Ht)}function QN(){let $e=Qe(),Ht=ur();ri(117);let Sr=c.getTokenStart(),_n=ri(21),Xn=Bi(fr);hf(21,22,_n,Sr);let es=z2();return _s(di(St(Xn,es),$e),Ht)}function UI(){let $e=Qe(),Ht=ur();ri(99);let Sr=Lc(135);ri(21);let _n;Re()!==27&&(Re()===115||Re()===121||Re()===87||Re()===160&&sa(fre)||Re()===135&&sa(N7)?_n=uw(!0):_n=vA(fr));let Xn;if(Sr?ri(165):qc(165)){let es=Bi(()=>qm(!0));ri(22),Xn=ht(Sr,_n,es,z2())}else if(qc(103)){let es=Bi(fr);ri(22),Xn=P.createForInStatement(_n,es,z2())}else{ri(27);let es=Re()!==27&&Re()!==22?Bi(fr):void 0;ri(27);let Ia=Re()!==22?Bi(fr):void 0;ri(22),Xn=He(_n,es,Ia,z2())}return _s(di(Xn,$e),Ht)}function $m($e){let Ht=Qe(),Sr=ur();ri($e===252?83:88);let _n=Ug()?void 0:nf();Yd();let Xn=$e===252?P.createBreakStatement(_n):P.createContinueStatement(_n);return _s(di(Xn,Ht),Sr)}function eF(){let $e=Qe(),Ht=ur();ri(107);let Sr=Ug()?void 0:Bi(fr);return Yd(),_s(di(P.createReturnStatement(Sr),$e),Ht)}function zb(){let $e=Qe(),Ht=ur();ri(118);let Sr=c.getTokenStart(),_n=ri(21),Xn=Bi(fr);hf(21,22,_n,Sr);let es=ju(67108864,z2);return _s(di(P.createWithStatement(Xn,es),$e),Ht)}function YB(){let $e=Qe(),Ht=ur();ri(84);let Sr=Bi(fr);ri(59);let _n=OA(3,z2);return _s(di(P.createCaseClause(Sr,_n),$e),Ht)}function w7(){let $e=Qe();ri(90),ri(59);let Ht=OA(3,z2);return di(P.createDefaultClause(Ht),$e)}function MN(){return Re()===84?YB():w7()}function T7(){let $e=Qe();ri(19);let Ht=OA(2,MN);return ri(20),di(P.createCaseBlock(Ht),$e)}function HN(){let $e=Qe(),Ht=ur();ri(109),ri(21);let Sr=Bi(fr);ri(22);let _n=T7();return _s(di(P.createSwitchStatement(Sr,_n),$e),Ht)}function ZV(){let $e=Qe(),Ht=ur();ri(111);let Sr=c.hasPrecedingLineBreak()?void 0:Bi(fr);return Sr===void 0&&($n++,Sr=di(Ae(""),Qe())),_f()||UA(Sr),_s(di(P.createThrowStatement(Sr),$e),Ht)}function Are(){let $e=Qe(),Ht=ur();ri(113);let Sr=Yv(!1),_n=Re()===85?ZI():void 0,Xn;return(!_n||Re()===98)&&(ri(98,Z.catch_or_finally_expected),Xn=Yv(!1)),_s(di(P.createTryStatement(Sr,_n,Xn),$e),Ht)}function ZI(){let $e=Qe();ri(85);let Ht;qc(21)?(Ht=WV(),ri(22)):Ht=void 0;let Sr=Yv(!1);return di(P.createCatchClause(Ht,Sr),$e)}function dre(){let $e=Qe(),Ht=ur();return ri(89),Yd(),_s(di(P.createDebuggerStatement(),$e),Ht)}function pre(){let $e=Qe(),Ht=ur(),Sr,_n=Re()===21,Xn=Bi(fr);return sr(Xn)&&qc(59)?Sr=P.createLabeledStatement(Xn,z2()):(_f()||UA(Xn),Sr=dt(Xn),_n&&(Ht=!1)),_s(di(Sr,$e),Ht)}function VP(){return Vt(),MI(Re())&&!c.hasPrecedingLineBreak()}function rge(){return Vt(),Re()===86&&!c.hasPrecedingLineBreak()}function q0(){return Vt(),Re()===100&&!c.hasPrecedingLineBreak()}function O4(){return Vt(),(MI(Re())||Re()===9||Re()===10||Re()===11)&&!c.hasPrecedingLineBreak()}function WM(){for(;;)switch(Re()){case 115:case 121:case 87:case 100:case 86:case 94:return!0;case 160:return PM();case 135:return Q4();case 120:case 156:return dD();case 144:case 145:return FA();case 128:case 129:case 134:case 138:case 123:case 124:case 125:case 148:let $e=Re();if(Vt(),c.hasPrecedingLineBreak())return!1;if($e===138&&Re()===156)return!0;continue;case 162:return Vt(),Re()===19||Re()===80||Re()===95;case 102:return Vt(),Re()===11||Re()===42||Re()===19||MI(Re());case 95:let Ht=Vt();if(Ht===156&&(Ht=sa(Vt)),Ht===64||Ht===42||Ht===19||Ht===90||Ht===130||Ht===60)return!0;continue;case 126:Vt();continue;default:return!1}}function WP(){return sa(WM)}function pb(){switch(Re()){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:return!0;case 102:return WP()||sa(Io);case 87:case 95:return WP();case 134:case 138:case 120:case 144:case 145:case 156:case 162:return!0;case 129:case 125:case 123:case 124:case 126:case 148:return WP()||!sa(VP);default:return IT()}}function nge(){return Vt(),ki()||Re()===19||Re()===23}function PP(){return sa(nge)}function fre(){return OP(!0)}function OP($e){return Vt(),$e&&Re()===165?!1:(ki()||Re()===19)&&!c.hasPrecedingLineBreak()}function PM(){return sa(OP)}function N7($e){return Vt()===160?OP($e):!1}function Q4(){return sa(N7)}function z2(){switch(Re()){case 27:return LP();case 19:return Yv(!1);case 115:return fD(Qe(),ur(),void 0);case 121:if(PP())return fD(Qe(),ur(),void 0);break;case 135:if(Q4())return fD(Qe(),ur(),void 0);break;case 160:if(PM())return fD(Qe(),ur(),void 0);break;case 100:return YN(Qe(),ur(),void 0);case 86:return Xg(Qe(),ur(),void 0);case 101:return Ih();case 92:return $G();case 117:return QN();case 99:return UI();case 88:return $m(251);case 83:return $m(252);case 107:return eF();case 118:return zb();case 109:return HN();case 111:return ZV();case 113:case 85:case 98:return Are();case 89:return dre();case 60:return LV();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(WP())return LV();break}return pre()}function Ire($e){return $e.kind===138}function LV(){let $e=Qe(),Ht=ur(),Sr=qn(!0);if(lr(Sr,Ire)){let Xn=Y1($e);if(Xn)return Xn;for(let es of Sr)es.flags|=33554432;return ju(33554432,()=>CT($e,Ht,Sr))}else return CT($e,Ht,Sr)}function Y1($e){return ju(33554432,()=>{let Ht=Em(bi,$e);if(Ht)return np(Ht)})}function CT($e,Ht,Sr){switch(Re()){case 115:case 121:case 87:case 160:case 135:return fD($e,Ht,Sr);case 100:return YN($e,Ht,Sr);case 86:return Xg($e,Ht,Sr);case 120:return nF($e,Ht,Sr);case 156:return MP($e,Ht,Sr);case 94:return OV($e,Ht,Sr);case 162:case 144:case 145:return ige($e,Ht,Sr);case 102:return fZe($e,Ht,Sr);case 95:switch(Vt(),Re()){case 90:case 64:return Sd($e,Ht,Sr);case 130:return pZe($e,Ht,Sr);default:return age($e,Ht,Sr)}default:if(Sr){let _n=uI(282,!0,Z.Declaration_expected);return S6(_n,$e),_n.modifiers=Sr,_n}return}}function M4(){return Vt()===11}function H4(){return Vt(),Re()===161||Re()===64}function FA(){return Vt(),!c.hasPrecedingLineBreak()&&(Gs()||Re()===11)}function Oo($e,Ht){if(Re()!==19){if($e&4){YG();return}if(Ug()){Yd();return}}return nL($e,Ht)}function q2(){let $e=Qe();if(Re()===28)return di(P.createOmittedExpression(),$e);let Ht=Lc(26),Sr=VV(),_n=sw();return di(P.createBindingElement(Ht,void 0,Sr,_n),$e)}function a_(){let $e=Qe(),Ht=Lc(26),Sr=ki(),_n=Ri(),Xn;Sr&&Re()!==59?(Xn=_n,_n=void 0):(ri(59),Xn=VV());let es=sw();return di(P.createBindingElement(Ht,_n,Xn,es),$e)}function Cre(){let $e=Qe();ri(19);let Ht=Bi(()=>em(9,a_));return ri(20),di(P.createObjectBindingPattern(Ht),$e)}function mre(){let $e=Qe();ri(23);let Ht=Bi(()=>em(10,q2));return ri(24),di(P.createArrayBindingPattern(Ht),$e)}function QP(){return Re()===19||Re()===23||Re()===81||ki()}function VV($e){return Re()===23?mre():Re()===19?Cre():Xb($e)}function hre(){return WV(!0)}function WV($e){let Ht=Qe(),Sr=ur(),_n=VV(Z.Private_identifiers_are_not_allowed_in_variable_declarations),Xn;$e&&_n.kind===80&&Re()===54&&!c.hasPrecedingLineBreak()&&(Xn=kI());let es=zZ(),Ia=xP(Re())?void 0:sw(),Xc=Et(_n,Xn,es,Ia);return _s(di(Xc,Ht),Sr)}function uw($e){let Ht=Qe(),Sr=0;switch(Re()){case 115:break;case 121:Sr|=1;break;case 87:Sr|=2;break;case 160:Sr|=4;break;case 135:w.assert(Q4()),Sr|=6,Vt();break;default:w.fail()}Vt();let _n;if(Re()===165&&sa(X1))_n=Kb();else{let Xn=cr();Hs($e),_n=em(8,$e?WV:hre),Hs(Xn)}return di(Kt(_n,Sr),Ht)}function X1(){return Jb()&&Vt()===22}function fD($e,Ht,Sr){let _n=uw(!1);Yd();let Xn=It(Sr,_n);return _s(di(Xn,$e),Ht)}function YN($e,Ht,Sr){let _n=an(),Xn=kv(Sr);ri(100);let es=Lc(42),Ia=Xn&2048?qG():Xb(),Xc=es?1:0,bc=Xn&1024?2:0,qa=j0();Xn&32&&Rc(!0);let Cl=K2(Xc|bc),up=Ov(59,!1),_g=Oo(Xc|bc,Z.or_expected);Rc(_n);let aA=P.createFunctionDeclaration(Sr,es,Ia,qa,Cl,up,_g);return _s(di(aA,$e),Ht)}function tF(){if(Re()===137)return ri(137);if(Re()===11&&sa(Vt)===21)return Ra(()=>{let $e=En();return $e.text==="constructor"?$e:void 0})}function Y4($e,Ht,Sr){return Ra(()=>{if(tF()){let _n=j0(),Xn=K2(0),es=Ov(59,!1),Ia=Oo(0,Z.or_expected),Xc=P.createConstructorDeclaration(Sr,Xn,Ia);return Xc.typeParameters=_n,Xc.type=es,_s(di(Xc,$e),Ht)}})}function VC($e,Ht,Sr,_n,Xn,es,Ia,Xc){let bc=_n?1:0,qa=lr(Sr,g4)?2:0,Cl=j0(),up=K2(bc|qa),_g=Ov(59,!1),aA=Oo(bc|qa,Xc),eB=P.createMethodDeclaration(Sr,_n,Xn,es,Cl,up,_g,aA);return eB.exclamationToken=Ia,_s(di(eB,$e),Ht)}function gw($e,Ht,Sr,_n,Xn){let es=!Xn&&!c.hasPrecedingLineBreak()?Lc(54):void 0,Ia=zZ(),Xc=lg(90112,sw);Nl(_n,Ia,Xc);let bc=P.createPropertyDeclaration(Sr,_n,Xn||es,Ia,Xc);return _s(di(bc,$e),Ht)}function J1($e,Ht,Sr){let _n=Lc(42),Xn=Ri(),es=Lc(58);return _n||Re()===21||Re()===30?VC($e,Ht,Sr,_n,Xn,es,void 0,Z.or_expected):gw($e,Ht,Sr,Xn,es)}function iL($e,Ht,Sr,_n,Xn){let es=Ri(),Ia=j0(),Xc=K2(0),bc=Ov(59,!1),qa=Oo(Xn),Cl=_n===177?P.createGetAccessorDeclaration(Sr,es,Xc,bc,qa):P.createSetAccessorDeclaration(Sr,es,Xc,qa);return Cl.typeParameters=Ia,ob(Cl)&&(Cl.type=bc),_s(di(Cl,$e),Ht)}function $2(){let $e;if(Re()===60)return!0;for(;Tv(Re());){if($e=Re(),h$($e))return!0;Vt()}if(Re()===42||(tt()&&($e=Re(),Vt()),Re()===23))return!0;if($e!==void 0){if(!s0($e)||$e===153||$e===139)return!0;switch(Re()){case 21:case 30:case 54:case 59:case 64:case 58:return!0;default:return Ug()}}return!1}function X4($e,Ht,Sr){xf(126);let _n=PV(),Xn=_s(di(P.createClassStaticBlockDeclaration(_n),$e),Ht);return Xn.modifiers=Sr,Xn}function PV(){let $e=ti(),Ht=an();za(!1),Rc(!0);let Sr=Yv(!1);return za($e),Rc(Ht),Sr}function ce(){if(an()&&Re()===135){let $e=Qe(),Ht=nf(Z.Expression_expected);Vt();let Sr=PN($e,Ht,!0);return HB($e,Sr)}return H1()}function _t(){let $e=Qe();if(!qc(60))return;let Ht=rn(ce);return di(P.createDecorator(Ht),$e)}function pn($e,Ht,Sr){let _n=Qe(),Xn=Re();if(Re()===87&&Ht){if(!Ra(_c))return}else{if(Sr&&Re()===126&&sa(bre))return;if($e&&Re()===126)return;if(!qC())return}return di(Be(Xn),_n)}function qn($e,Ht,Sr){let _n=Qe(),Xn,es,Ia,Xc=!1,bc=!1,qa=!1;if($e&&Re()===60)for(;es=_t();)Xn=Yr(Xn,es);for(;Ia=pn(Xc,Ht,Sr);)Ia.kind===126&&(Xc=!0),Xn=Yr(Xn,Ia),bc=!0;if(bc&&$e&&Re()===60)for(;es=_t();)Xn=Yr(Xn,es),qa=!0;if(qa)for(;Ia=pn(Xc,Ht,Sr);)Ia.kind===126&&(Xc=!0),Xn=Yr(Xn,Ia);return Xn&&qA(Xn,_n)}function Ua(){let $e;if(Re()===134){let Ht=Qe();Vt();let Sr=di(Be(134),Ht);$e=qA([Sr],Ht)}return $e}function Fl(){let $e=Qe(),Ht=ur();if(Re()===27)return Vt(),_s(di(P.createSemicolonClassElement(),$e),Ht);let Sr=qn(!0,!0,!0);if(Re()===126&&sa(bre))return X4($e,Ht,Sr);if(Xo(139))return iL($e,Ht,Sr,177,0);if(Xo(153))return iL($e,Ht,Sr,178,0);if(Re()===137||Re()===11){let _n=Y4($e,Ht,Sr);if(_n)return _n}if(Tr())return ci($e,Ht,Sr);if(MI(Re())||Re()===11||Re()===9||Re()===42||Re()===23)if(lr(Sr,Ire)){for(let Xn of Sr)Xn.flags|=33554432;return ju(33554432,()=>J1($e,Ht,Sr))}else return J1($e,Ht,Sr);if(Sr){let _n=uI(80,!0,Z.Declaration_expected);return gw($e,Ht,Sr,_n,void 0)}return w.fail("Should not have attempted to parse class member declaration.")}function El(){let $e=Qe(),Ht=ur(),Sr=qn(!0);if(Re()===86)return $0($e,Ht,Sr,231);let _n=uI(282,!0,Z.Expression_expected);return S6(_n,$e),_n.modifiers=Sr,_n}function zl(){return $0(Qe(),ur(),void 0,231)}function Xg($e,Ht,Sr){return $0($e,Ht,Sr,263)}function $0($e,Ht,Sr,_n){let Xn=an();ri(86);let es=h0(),Ia=j0();lr(Sr,Ox)&&Rc(!0);let Xc=OM(),bc;ri(19)?(bc=_re(),ri(20)):bc=Kb(),Rc(Xn);let qa=_n===263?P.createClassDeclaration(Sr,es,Ia,Xc,bc):P.createClassExpression(Sr,es,Ia,Xc,bc);return _s(di(qa,$e),Ht)}function h0(){return ki()&&!sL()?K0(ki()):void 0}function sL(){return Re()===119&&sa(FI)}function OM(){if(QM())return OA(22,UE)}function UE(){let $e=Qe(),Ht=Re();w.assert(Ht===96||Ht===119),Vt();let Sr=em(7,mT);return di(P.createHeritageClause(Ht,Sr),$e)}function mT(){let $e=Qe(),Ht=H1();if(Ht.kind===233)return Ht;let Sr=rF();return di(P.createExpressionWithTypeArguments(Ht,Sr),$e)}function rF(){return Re()===30?J2(20,Bm,30,32):void 0}function QM(){return Re()===96||Re()===119}function _re(){return OA(5,Fl)}function nF($e,Ht,Sr){ri(120);let _n=nf(),Xn=j0(),es=OM(),Ia=Ws(),Xc=P.createInterfaceDeclaration(Sr,_n,Xn,es,Ia);return _s(di(Xc,$e),Ht)}function MP($e,Ht,Sr){ri(156),c.hasPrecedingLineBreak()&&Kr(Z.Line_break_not_permitted_here);let _n=nf(),Xn=j0();ri(64);let es=Re()===141&&Ra(BP)||Bm();Yd();let Ia=P.createTypeAliasDeclaration(Sr,_n,Xn,es);return _s(di(Ia,$e),Ht)}function oL(){let $e=Qe(),Ht=ur(),Sr=Ri(),_n=Bi(sw);return _s(di(P.createEnumMember(Sr,_n),$e),Ht)}function OV($e,Ht,Sr){ri(94);let _n=nf(),Xn;ri(19)?(Xn=_r(()=>em(6,oL)),ri(20)):Xn=Kb();let es=P.createEnumDeclaration(Sr,_n,Xn);return _s(di(es,$e),Ht)}function $c(){let $e=Qe(),Ht;return ri(19)?(Ht=OA(1,z2),ri(20)):Ht=Kb(),di(P.createModuleBlock(Ht),$e)}function QV($e,Ht,Sr,_n){let Xn=_n&32,es=_n&8?GI():nf(),Ia=qc(25)?QV(Qe(),!1,void 0,8|Xn):$c(),Xc=P.createModuleDeclaration(Sr,es,Ia,_n);return _s(di(Xc,$e),Ht)}function Ys($e,Ht,Sr){let _n=0,Xn;Re()===162?(Xn=nf(),_n|=2048):(Xn=En(),Xn.text=U0(Xn.text));let es;Re()===19?es=$c():Yd();let Ia=P.createModuleDeclaration(Sr,Xn,es,_n);return _s(di(Ia,$e),Ht)}function ige($e,Ht,Sr){let _n=0;if(Re()===162)return Ys($e,Ht,Sr);if(qc(145))_n|=32;else if(ri(144),Re()===11)return Ys($e,Ht,Sr);return QV($e,Ht,Sr,_n)}function yre(){return Re()===149&&sa(R7)}function R7(){return Vt()===21}function bre(){return Vt()===19}function Ere(){return Vt()===44}function pZe($e,Ht,Sr){ri(130),ri(145);let _n=nf();Yd();let Xn=P.createNamespaceExportDeclaration(_n);return Xn.modifiers=Sr,_s(di(Xn,$e),Ht)}function fZe($e,Ht,Sr){ri(102);let _n=c.getTokenFullStart(),Xn;Gs()&&(Xn=nf());let es=!1;if(Xn?.escapedText==="type"&&(Re()!==161||Gs()&&sa(H4))&&(Gs()||P0e())&&(es=!0,Xn=Gs()?nf():void 0),Xn&&!HP())return O0e($e,Ht,Sr,Xn,es);let Ia=ID(Xn,_n,es),Xc=Xv(),bc=W0e();Yd();let qa=P.createImportDeclaration(Sr,Ia,Xc,bc);return _s(di(qa,$e),Ht)}function ID($e,Ht,Sr,_n=!1){let Xn;return($e||Re()===42||Re()===19)&&(Xn=MM($e,Ht,Sr,_n),ri(161)),Xn}function W0e(){let $e=Re();if(($e===118||$e===132)&&!c.hasPrecedingLineBreak())return oge($e)}function sge(){let $e=Qe(),Ht=MI(Re())?GI():Pl(11);ri(59);let Sr=qm(!0);return di(P.createImportAttribute(Ht,Sr),$e)}function oge($e,Ht){let Sr=Qe();Ht||ri($e);let _n=c.getTokenStart();if(ri(19)){let Xn=c.hasPrecedingLineBreak(),es=em(24,sge,!0);if(!ri(20)){let Ia=zo(mr);Ia&&Ia.code===Z._0_expected.code&&tg(Ia,J5(Nt,kt,_n,1,Z.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}return di(P.createImportAttributes(es,Xn,$e),Sr)}else{let Xn=qA([],Qe(),void 0,!1);return di(P.createImportAttributes(Xn,!1,$e),Sr)}}function P0e(){return Re()===42||Re()===19}function HP(){return Re()===28||Re()===161}function O0e($e,Ht,Sr,_n,Xn){ri(64);let es=iF();Yd();let Ia=P.createImportEqualsDeclaration(Sr,Xn,_n,es);return _s(di(Ia,$e),Ht)}function MM($e,Ht,Sr,_n){let Xn;return(!$e||qc(28))&&(_n&&c.setSkipJsDocLeadingAsterisks(!0),Xn=Re()===42?Bre():Q0e(275),_n&&c.setSkipJsDocLeadingAsterisks(!1)),di(P.createImportClause(Sr,$e,Xn),Ht)}function iF(){return yre()?HM():rt(!1)}function HM(){let $e=Qe();ri(149),ri(21);let Ht=Xv();return ri(22),di(P.createExternalModuleReference(Ht),$e)}function Xv(){if(Re()===11){let $e=En();return $e.text=U0($e.text),$e}else return fr()}function Bre(){let $e=Qe();ri(42),ri(130);let Ht=nf();return di(P.createNamespaceImport(Ht),$e)}function Q0e($e){let Ht=Qe(),Sr=$e===275?P.createNamedImports(J2(23,J4,19,20)):P.createNamedExports(J2(23,CD,19,20));return di(Sr,Ht)}function CD(){let $e=ur();return _s(M0e(281),$e)}function J4(){return M0e(276)}function M0e($e){let Ht=Qe(),Sr=s0(Re())&&!Gs(),_n=c.getTokenStart(),Xn=c.getTokenEnd(),es=!1,Ia,Xc=!0,bc=GI();if(bc.escapedText==="type")if(Re()===130){let up=GI();if(Re()===130){let _g=GI();MI(Re())?(es=!0,Ia=up,bc=Cl(),Xc=!1):(Ia=bc,bc=_g,Xc=!1)}else MI(Re())?(Ia=bc,Xc=!1,bc=Cl()):(es=!0,bc=up)}else MI(Re())&&(es=!0,bc=Cl());Xc&&Re()===130&&(Ia=bc,ri(130),bc=Cl()),$e===276&&Sr&&Pe(_n,Xn,Z.Identifier_expected);let qa=$e===276?P.createImportSpecifier(es,Ia,bc):P.createExportSpecifier(es,Ia,bc);return di(qa,Ht);function Cl(){return Sr=s0(Re())&&!Gs(),_n=c.getTokenStart(),Xn=c.getTokenEnd(),GI()}}function LI($e){return di(P.createNamespaceExport(GI()),$e)}function age($e,Ht,Sr){let _n=an();Rc(!0);let Xn,es,Ia,Xc=qc(156),bc=Qe();qc(42)?(qc(130)&&(Xn=LI(bc)),ri(161),es=Xv()):(Xn=Q0e(279),(Re()===161||Re()===11&&!c.hasPrecedingLineBreak())&&(ri(161),es=Xv()));let qa=Re();es&&(qa===118||qa===132)&&!c.hasPrecedingLineBreak()&&(Ia=oge(qa)),Yd(),Rc(_n);let Cl=P.createExportDeclaration(Sr,Xc,Xn,es,Ia);return _s(di(Cl,$e),Ht)}function Sd($e,Ht,Sr){let _n=an();Rc(!0);let Xn;qc(64)?Xn=!0:ri(90);let es=qm(!0);Yd(),Rc(_n);let Ia=P.createExportAssignment(Sr,Xn,es);return _s(di(Ia,$e),Ht)}let QA;($e=>{$e[$e.SourceElements=0]="SourceElements",$e[$e.BlockStatements=1]="BlockStatements",$e[$e.SwitchClauses=2]="SwitchClauses",$e[$e.SwitchClauseStatements=3]="SwitchClauseStatements",$e[$e.TypeMembers=4]="TypeMembers",$e[$e.ClassMembers=5]="ClassMembers",$e[$e.EnumMembers=6]="EnumMembers",$e[$e.HeritageClauseElement=7]="HeritageClauseElement",$e[$e.VariableDeclarations=8]="VariableDeclarations",$e[$e.ObjectBindingElements=9]="ObjectBindingElements",$e[$e.ArrayBindingElements=10]="ArrayBindingElements",$e[$e.ArgumentExpressions=11]="ArgumentExpressions",$e[$e.ObjectLiteralMembers=12]="ObjectLiteralMembers",$e[$e.JsxAttributes=13]="JsxAttributes",$e[$e.JsxChildren=14]="JsxChildren",$e[$e.ArrayLiteralMembers=15]="ArrayLiteralMembers",$e[$e.Parameters=16]="Parameters",$e[$e.JSDocParameters=17]="JSDocParameters",$e[$e.RestProperties=18]="RestProperties",$e[$e.TypeParameters=19]="TypeParameters",$e[$e.TypeArguments=20]="TypeArguments",$e[$e.TupleElementTypes=21]="TupleElementTypes",$e[$e.HeritageClauses=22]="HeritageClauses",$e[$e.ImportOrExportSpecifiers=23]="ImportOrExportSpecifiers",$e[$e.ImportAttributes=24]="ImportAttributes",$e[$e.JSDocComment=25]="JSDocComment",$e[$e.Count=26]="Count"})(QA||(QA={}));let D7;($e=>{$e[$e.False=0]="False",$e[$e.True=1]="True",$e[$e.Unknown=2]="Unknown"})(D7||(D7={}));let x7;($e=>{function Ht(qa,Cl,up){rc("file.js",qa,99,void 0,1,0),c.setText(qa,Cl,up),Hr=c.scan();let _g=Sr(),aA=ni("file.js",99,1,!1,[],Be(1),0,oc),eB=DZ(mr,aA);return Pt&&(aA.jsDocDiagnostics=DZ(Pt,aA)),Wl(),_g?{jsDocTypeExpression:_g,diagnostics:eB}:void 0}$e.parseJSDocTypeExpressionForTests=Ht;function Sr(qa){let Cl=Qe(),up=(qa?qc:ri)(19),_g=ju(16777216,U2);(!qa||up)&&ug(20);let aA=P.createJSDocTypeExpression(_g);return ir(aA),di(aA,Cl)}$e.parseJSDocTypeExpression=Sr;function _n(){let qa=Qe(),Cl=qc(19),up=Qe(),_g=rt(!1);for(;Re()===81;)so(),dn(),_g=di(P.createJSDocMemberName(_g,nf()),up);Cl&&ug(20);let aA=P.createJSDocNameReference(_g);return ir(aA),di(aA,qa)}$e.parseJSDocNameReference=_n;function Xn(qa,Cl,up){rc("",qa,99,void 0,1,0);let _g=ju(16777216,()=>bc(Cl,up)),eB=DZ(mr,{languageVariant:0,text:qa});return Wl(),_g?{jsDoc:_g,diagnostics:eB}:void 0}$e.parseIsolatedJSDocComment=Xn;function es(qa,Cl,up){let _g=Hr,aA=mr.length,eB=jn,hT=ju(16777216,()=>bc(Cl,up));return GA(hT,qa),Ns&524288&&(Pt||(Pt=[]),ai(Pt,mr,aA)),Hr=_g,mr.length=aA,jn=eB,hT}$e.parseJSDocComment=es;let Ia;(qa=>{qa[qa.BeginningOfLine=0]="BeginningOfLine",qa[qa.SawAsterisk=1]="SawAsterisk",qa[qa.SavingComments=2]="SavingComments",qa[qa.SavingBackticks=3]="SavingBackticks"})(Ia||(Ia={}));let Xc;(qa=>{qa[qa.Property=1]="Property",qa[qa.Parameter=2]="Parameter",qa[qa.CallbackParameter=4]="CallbackParameter"})(Xc||(Xc={}));function bc(qa=0,Cl){let up=kt,_g=Cl===void 0?up.length:qa+Cl;if(Cl=_g-qa,w.assert(qa>=0),w.assert(qa<=_g),w.assert(_g<=up.length),!s8e(up,qa))return;let aA,eB,hT,sF,MV,Jv=[],YP=[],cge=bi;bi|=1<<25;let vre=c.scanRange(qa+3,Cl-5,H0e);return bi=cge,vre;function H0e(){let is=1,ca,Aa=qa-(up.lastIndexOf(` +`,qa)+1)+4;function Sa(yp){ca||(ca=Aa),Jv.push(yp),Aa+=yp.length}for(dn();UP(5););UP(4)&&(is=0,Aa=0);e:for(;;){switch(Re()){case 60:vm(Jv),MV||(MV=Qe()),zn(nk(Aa)),is=0,ca=void 0;break;case 4:Jv.push(c.getTokenText()),is=0,Aa=0;break;case 42:let yp=c.getTokenText();is===1?(is=2,Sa(yp)):(w.assert(is===0),is=1,Aa+=yp.length);break;case 5:w.assert(is!==2,"whitespace shouldn't come from the scanner while saving top-level comment text");let eh=c.getTokenText();ca!==void 0&&Aa+eh.length>ca&&Jv.push(eh.slice(ca-Aa)),Aa+=eh.length;break;case 1:break e;case 82:is=2,Sa(c.getTokenValue());break;case 19:is=2;let hD=c.getTokenFullStart(),XN=c.getTokenEnd()-1,yC=j(XN);if(yC){sF||MA(Jv),YP.push(di(P.createJSDocText(Jv.join("")),sF??qa,hD)),YP.push(yC),Jv=[],sF=c.getTokenEnd();break}default:is=2,Sa(c.getTokenText());break}is===2?On(!1):dn()}let Tc=Jv.join("").trimEnd();YP.length&&Tc.length&&YP.push(di(P.createJSDocText(Tc),sF??qa,MV)),YP.length&&aA&&w.assertIsDefined(MV,"having parsed tags implies that the end of the comment span should be set");let $A=aA&&qA(aA,eB,hT);return di(P.createJSDocComment(YP.length?qA(YP,qa,MV):Tc.length?Tc:void 0,$A),qa,_g)}function MA(is){for(;is.length&&(is[0]===` +`||is[0]==="\r");)is.shift()}function vm(is){for(;is.length;){let ca=is[is.length-1].trimEnd();if(ca==="")is.pop();else if(ca.lengtheh&&(Sa.push(oF.slice(eh-is)),yp=2),is+=oF.length;break;case 19:yp=2;let G7=c.getTokenFullStart(),F7=c.getTokenEnd()-1,uge=j(F7);uge?(Tc.push(di(P.createJSDocText(Sa.join("")),$A??Aa,G7)),Tc.push(uge),Sa=[],$A=c.getTokenEnd()):hD(c.getTokenText());break;case 62:yp===3?yp=2:yp=3,hD(c.getTokenText());break;case 82:yp!==3&&(yp=2),hD(c.getTokenValue());break;case 42:if(yp===0){yp=1,is+=1;break}default:yp!==3&&(yp=2),hD(c.getTokenText());break}yp===2||yp===3?XN=On(yp===3):XN=dn()}MA(Sa);let yC=Sa.join("").trimEnd();if(Tc.length)return yC.length&&Tc.push(di(P.createJSDocText(yC),$A??Aa)),qA(Tc,Aa,c.getTokenEnd());if(yC.length)return yC}function j(is){let ca=Ra(We);if(!ca)return;dn(),_T();let Aa=me(),Sa=[];for(;Re()!==20&&Re()!==4&&Re()!==1;)Sa.push(c.getTokenText()),dn();let Tc=ca==="link"?P.createJSDocLink:ca==="linkcode"?P.createJSDocLinkCode:P.createJSDocLinkPlain;return di(Tc(Aa,Sa.join("")),is,c.getTokenEnd())}function me(){if(MI(Re())){let is=Qe(),ca=GI();for(;qc(25);)ca=di(P.createQualifiedName(ca,Re()===81?uI(80,!1):GI()),is);for(;Re()===81;)so(),dn(),ca=di(P.createJSDocMemberName(ca,nf()),is);return ca}}function We(){if(XP(),Re()===19&&dn()===60&&MI(dn())){let is=c.getTokenValue();if(mt(is))return is}}function mt(is){return is==="link"||is==="linkcode"||is==="linkplain"}function yr(is,ca,Aa,Sa){return di(P.createJSDocUnknownTag(ca,XB(is,Qe(),Aa,Sa)),is)}function zn(is){is&&(aA?aA.push(is):(aA=[is],eB=is.pos),hT=is.end)}function no(){return XP(),Re()===19?Sr():void 0}function Yl(){let is=UP(23);is&&_T();let ca=UP(62),Aa=d$e();return ca&&I0(62),is&&(_T(),Lc(64)&&fr(),ri(24)),{name:Aa,isBracketed:is}}function _p(is){switch(is.kind){case 151:return!0;case 188:return _p(is.elementType);default:return F(is)&&sr(is.typeName)&&is.typeName.escapedText==="Object"&&!is.typeArguments}}function Aw(is,ca,Aa,Sa){let Tc=no(),$A=!Tc;XP();let{name:yp,isBracketed:eh}=Yl(),hD=XP();$A&&!sa(We)&&(Tc=no());let XN=XB(is,Qe(),Sa,hD),yC=dw(Tc,yp,Aa,Sa);yC&&(Tc=yC,$A=!0);let oF=Aa===1?P.createJSDocPropertyTag(ca,yp,eh,Tc,$A,XN):P.createJSDocParameterTag(ca,yp,eh,Tc,$A,XN);return di(oF,is)}function dw(is,ca,Aa,Sa){if(is&&_p(is.type)){let Tc=Qe(),$A,yp;for(;$A=Ra(()=>X0e(Aa,Sa,ca));)$A.kind===341||$A.kind===348?yp=Yr(yp,$A):$A.kind===345&&ar($A.tagName,Z.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);if(yp){let eh=di(P.createJSDocTypeLiteral(yp,is.type.kind===188),Tc);return di(P.createJSDocTypeExpression(eh),Tc)}}}function mD(is,ca,Aa,Sa){lr(aA,jxe)&&Pe(ca.pos,c.getTokenStart(),Z._0_tag_already_specified,wc(ca.escapedText));let Tc=no();return di(P.createJSDocReturnTag(ca,Tc,XB(is,Qe(),Aa,Sa)),is)}function k7(is,ca,Aa,Sa){lr(aA,Yle)&&Pe(ca.pos,c.getTokenStart(),Z._0_tag_already_specified,wc(ca.escapedText));let Tc=Sr(!0),$A=Aa!==void 0&&Sa!==void 0?XB(is,Qe(),Aa,Sa):void 0;return di(P.createJSDocTypeTag(ca,Tc,$A),is)}function FWt(is,ca,Aa,Sa){let $A=Re()===23||sa(()=>dn()===60&&MI(dn())&&mt(c.getTokenValue()))?void 0:_n(),yp=Aa!==void 0&&Sa!==void 0?XB(is,Qe(),Aa,Sa):void 0;return di(P.createJSDocSeeTag(ca,$A,yp),is)}function Y0e(is,ca,Aa,Sa){let Tc=no(),$A=XB(is,Qe(),Aa,Sa);return di(P.createJSDocThrowsTag(ca,Tc,$A),is)}function l$e(is,ca,Aa,Sa){let Tc=Qe(),$A=u$e(),yp=c.getTokenFullStart(),eh=XB(is,yp,Aa,Sa);eh||(yp=c.getTokenFullStart());let hD=typeof eh!="string"?qA(vi([di($A,Tc,yp)],eh),Tc):$A.text+eh;return di(P.createJSDocAuthorTag(ca,hD),is)}function u$e(){let is=[],ca=!1,Aa=c.getToken();for(;Aa!==1&&Aa!==4;){if(Aa===30)ca=!0;else{if(Aa===60&&!ca)break;if(Aa===32&&ca){is.push(c.getTokenText()),c.resetTokenState(c.getTokenEnd());break}}is.push(c.getTokenText()),Aa=dn()}return P.createJSDocText(is.join(""))}function lge(is,ca,Aa,Sa){let Tc=A$e();return di(P.createJSDocImplementsTag(ca,Tc,XB(is,Qe(),Aa,Sa)),is)}function ZWt(is,ca,Aa,Sa){let Tc=A$e();return di(P.createJSDocAugmentsTag(ca,Tc,XB(is,Qe(),Aa,Sa)),is)}function g$e(is,ca,Aa,Sa){let Tc=Sr(!1),$A=Aa!==void 0&&Sa!==void 0?XB(is,Qe(),Aa,Sa):void 0;return di(P.createJSDocSatisfiesTag(ca,Tc,$A),is)}function LWt(is,ca,Aa,Sa){let Tc=c.getTokenFullStart(),$A;Gs()&&($A=nf());let yp=ID($A,Tc,!0,!0),eh=Xv(),hD=W0e(),XN=Aa!==void 0&&Sa!==void 0?XB(is,Qe(),Aa,Sa):void 0;return di(P.createJSDocImportTag(ca,yp,eh,hD,XN),is)}function A$e(){let is=qc(19),ca=Qe(),Aa=VWt();c.setSkipJsDocLeadingAsterisks(!0);let Sa=rF();c.setSkipJsDocLeadingAsterisks(!1);let Tc=P.createExpressionWithTypeArguments(Aa,Sa),$A=di(Tc,ca);return is&&ri(20),$A}function VWt(){let is=Qe(),ca=KP();for(;qc(25);){let Aa=KP();ca=di(Me(ca,Aa),is)}return ca}function aL(is,ca,Aa,Sa,Tc){return di(ca(Aa,XB(is,Qe(),Sa,Tc)),is)}function IZe(is,ca,Aa,Sa){let Tc=Sr(!0);return _T(),di(P.createJSDocThisTag(ca,Tc,XB(is,Qe(),Aa,Sa)),is)}function WWt(is,ca,Aa,Sa){let Tc=Sr(!0);return _T(),di(P.createJSDocEnumTag(ca,Tc,XB(is,Qe(),Aa,Sa)),is)}function JP(is,ca,Aa,Sa){let Tc=no();XP();let $A=co();_T();let yp=uo(Aa),eh;if(!Tc||_p(Tc.type)){let XN,yC,oF,G7=!1;for(;(XN=Ra(()=>Tre(Aa)))&&XN.kind!==345;)if(G7=!0,XN.kind===344)if(yC){let F7=Kr(Z.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);F7&&tg(F7,J5(Nt,kt,0,0,Z.The_tag_was_first_specified_here));break}else yC=XN;else oF=Yr(oF,XN);if(G7){let F7=Tc&&Tc.type.kind===188,uge=P.createJSDocTypeLiteral(oF,F7);Tc=yC&&yC.typeExpression&&!_p(yC.typeExpression.type)?yC.typeExpression:di(uge,is),eh=Tc.end}}eh=eh||yp!==void 0?Qe():($A??Tc??ca).end,yp||(yp=XB(is,eh,Aa,Sa));let hD=P.createJSDocTypedefTag(ca,Tc,$A,yp);return di(hD,is,eh)}function co(is){let ca=c.getTokenStart();if(!MI(Re()))return;let Aa=KP();if(qc(25)){let Sa=co(!0),Tc=P.createModuleDeclaration(void 0,Aa,Sa,is?8:void 0);return di(Tc,ca)}return is&&(Aa.flags|=4096),Aa}function YV(is){let ca=Qe(),Aa,Sa;for(;Aa=Ra(()=>X0e(4,is));){if(Aa.kind===345){ar(Aa.tagName,Z.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);break}Sa=Yr(Sa,Aa)}return qA(Sa||[],ca)}function XV(is,ca){let Aa=YV(ca),Sa=Ra(()=>{if(UP(60)){let Tc=nk(ca);if(Tc&&Tc.kind===342)return Tc}});return di(P.createJSDocSignature(void 0,Aa,Sa),is)}function Sre(is,ca,Aa,Sa){let Tc=co();_T();let $A=uo(Aa),yp=XV(is,Aa);$A||($A=XB(is,Qe(),Aa,Sa));let eh=$A!==void 0?Qe():yp.end;return di(P.createJSDocCallbackTag(ca,yp,Tc,$A),is,eh)}function wre(is,ca,Aa,Sa){_T();let Tc=uo(Aa),$A=XV(is,Aa);Tc||(Tc=XB(is,Qe(),Aa,Sa));let yp=Tc!==void 0?Qe():$A.end;return di(P.createJSDocOverloadTag(ca,$A,Tc),is,yp)}function CZe(is,ca){for(;!sr(is)||!sr(ca);)if(!sr(is)&&!sr(ca)&&is.right.escapedText===ca.right.escapedText)is=is.left,ca=ca.left;else return!1;return is.escapedText===ca.escapedText}function Tre(is){return X0e(1,is)}function X0e(is,ca,Aa){let Sa=!0,Tc=!1;for(;;)switch(dn()){case 60:if(Sa){let $A=cL(is,ca);return $A&&($A.kind===341||$A.kind===348)&&Aa&&(sr($A.name)||!CZe(Aa,$A.name.left))?!1:$A}Tc=!1;break;case 4:Sa=!0,Tc=!1;break;case 42:Tc&&(Sa=!1),Tc=!0;break;case 80:Sa=!1;break;case 1:return!1}}function cL(is,ca){w.assert(Re()===60);let Aa=c.getTokenFullStart();dn();let Sa=KP(),Tc=XP(),$A;switch(Sa.escapedText){case"type":return is===1&&k7(Aa,Sa);case"prop":case"property":$A=1;break;case"arg":case"argument":case"param":$A=6;break;case"template":return J0e(Aa,Sa,ca,Tc);case"this":return IZe(Aa,Sa,ca,Tc);default:return!1}return is&$A?Aw(Aa,Sa,is,ca):!1}function PWt(){let is=Qe(),ca=UP(23);ca&&_T();let Aa=qn(!1,!0),Sa=KP(Z.Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces),Tc;if(ca&&(_T(),ri(64),Tc=ju(16777216,U2),ri(24)),!Tf(Sa))return di(P.createTypeParameterDeclaration(Aa,Sa,void 0,Tc),is)}function mZe(){let is=Qe(),ca=[];do{_T();let Aa=PWt();Aa!==void 0&&ca.push(Aa),XP()}while(UP(28));return qA(ca,is)}function J0e(is,ca,Aa,Sa){let Tc=Re()===19?Sr():void 0,$A=mZe();return di(P.createJSDocTemplateTag(ca,Tc,$A,XB(is,Qe(),Aa,Sa)),is)}function UP(is){return Re()===is?(dn(),!0):!1}function d$e(){let is=KP();for(qc(23)&&ri(24);qc(25);){let ca=KP();qc(23)&&ri(24),is=qr(is,ca)}return is}function KP(is){if(!MI(Re()))return uI(80,!is,is||Z.Identifier_expected);$n++;let ca=c.getTokenStart(),Aa=c.getTokenEnd(),Sa=Re(),Tc=U0(c.getTokenValue()),$A=di(Ae(Tc,Sa),ca,Aa);return dn(),$A}}})(x7=n.JSDocParser||(n.JSDocParser={}))})(lP||(lP={}));var wxr=new WeakSet;function UKi(n){wxr.has(n)&&w.fail("Source file has already been incrementally parsed"),wxr.add(n)}var Txr=new WeakSet;function KKi(n){return Txr.has(n)}function RRt(n){Txr.add(n)}var a8e;(n=>{function c(re,ue,Ae,de){if(de=de||w.shouldAssert(2),P(re,ue,Ae,de),K(Ae))return re;if(re.statements.length===0)return lP.parseSourceFile(re.fileName,ue,re.languageVersion,void 0,!0,re.scriptKind,re.setExternalModuleIndicator,re.jsDocParsingMode);UKi(re),lP.fixupParentReferences(re);let Be=re.text,Fe=Q(re),Ne=N(re,Ae);P(re,ue,Ne,de),w.assert(Ne.span.start<=Ae.span.start),w.assert(Ku(Ne.span)===Ku(Ae.span)),w.assert(Ku(Ms(Ne))===Ku(Ms(Ae)));let Me=Ms(Ne).length-Ne.span.length;R(re,Ne.span.start,Ku(Ne.span),Ku(Ms(Ne)),Me,Be,ue,de);let De=lP.parseSourceFile(re.fileName,ue,re.languageVersion,Fe,!0,re.scriptKind,re.setExternalModuleIndicator,re.jsDocParsingMode);return De.commentDirectives=u(re.commentDirectives,De.commentDirectives,Ne.span.start,Ku(Ne.span),Me,Be,ue,de),De.impliedNodeFormat=re.impliedNodeFormat,sRt(re,De),De}n.updateSourceFile=c;function u(re,ue,Ae,de,Be,Fe,Ne,Me){if(!re)return ue;let De,lt=!1;for(let je of re){let{range:st,type:nt}=je;if(st.endde){Le();let qe={range:{pos:st.pos+Be,end:st.end+Be},type:nt};De=Yr(De,qe),Me&&w.assert(Fe.substring(st.pos,st.end)===Ne.substring(qe.range.pos,qe.range.end))}}return Le(),De;function Le(){lt||(lt=!0,De?ue&&De.push(...ue):De=ue)}}function d(re,ue,Ae,de,Be,Fe,Ne){Ae?De(re):Me(re);return;function Me(lt){let Le="";if(Ne&&I(lt)&&(Le=Be.substring(lt.pos,lt.end)),XKe(lt,ue),MS(lt,lt.pos+de,lt.end+de),Ne&&I(lt)&&w.assert(Le===Fe.substring(lt.pos,lt.end)),hu(lt,Me,De),_y(lt))for(let je of lt.jsDoc)Me(je);b(lt,Ne)}function De(lt){MS(lt,lt.pos+de,lt.end+de);for(let Le of lt)Me(Le)}}function I(re){switch(re.kind){case 11:case 9:case 80:return!0}return!1}function h(re,ue,Ae,de,Be){w.assert(re.end>=ue,"Adjusting an element that was entirely before the change range"),w.assert(re.pos<=Ae,"Adjusting an element that was entirely after the change range"),w.assert(re.pos<=re.end);let Fe=Math.min(re.pos,de),Ne=re.end>=Ae?re.end+Be:Math.min(re.end,de);if(w.assert(Fe<=Ne),re.parent){let Me=re.parent;w.assertGreaterThanOrEqual(Fe,Me.pos),w.assertLessThanOrEqual(Ne,Me.end)}MS(re,Fe,Ne)}function b(re,ue){if(ue){let Ae=re.pos,de=Be=>{w.assert(Be.pos>=Ae),Ae=Be.end};if(_y(re))for(let Be of re.jsDoc)de(Be);hu(re,de),w.assert(Ae<=re.end)}}function R(re,ue,Ae,de,Be,Fe,Ne,Me){De(re);return;function De(Le){if(w.assert(Le.pos<=Le.end),Le.pos>Ae){d(Le,re,!1,Be,Fe,Ne,Me);return}let je=Le.end;if(je>=ue){if(RRt(Le),XKe(Le,re),h(Le,ue,Ae,de,Be),hu(Le,De,lt),_y(Le))for(let st of Le.jsDoc)De(st);b(Le,Me);return}w.assert(jeAe){d(Le,re,!0,Be,Fe,Ne,Me);return}let je=Le.end;if(je>=ue){RRt(Le),h(Le,ue,Ae,de,Be);for(let st of Le)De(st);return}w.assert(je0&&Ne<=1;Ne++){let Me=V(re,de);w.assert(Me.pos<=de);let De=Me.pos;de=Math.max(0,De-1)}let Be=Pd(de,Ku(ue.span)),Fe=ue.newLength+(ue.span.start-de);return Ce(Be,Fe)}function V(re,ue){let Ae=re,de;if(hu(re,Fe),de){let Ne=Be(de);Ne.pos>Ae.pos&&(Ae=Ne)}return Ae;function Be(Ne){for(;;){let Me=zce(Ne);if(Me)Ne=Me;else return Ne}}function Fe(Ne){if(!Tf(Ne))if(Ne.pos<=ue){if(Ne.pos>=Ae.pos&&(Ae=Ne),ueue),!0}}function P(re,ue,Ae,de){let Be=re.text;if(Ae&&(w.assert(Be.length-Ae.span.length+Ae.newLength===ue.length),de||w.shouldAssert(3))){let Fe=Be.substr(0,Ae.span.start),Ne=ue.substr(0,Ae.span.start);w.assert(Fe===Ne);let Me=Be.substring(Ku(Ae.span),Be.length),De=ue.substring(Ku(Ms(Ae)),ue.length);w.assert(Me===De)}}function Q(re){let ue=re.statements,Ae=0;w.assert(Ae=lt.pos&&Ne=lt.pos&&Ne{re[re.Value=-1]="Value"})(te||(te={}))})(a8e||(a8e={}));function Gh(n){return c8e(n)!==void 0}function c8e(n){let c=NE(n,fle,!1);if(c)return c;if(Ad(n,".ts")){let u=kA(n).lastIndexOf(".d.");if(u>=0)return n.substring(u)}}function jKi(n,c,u,d){if(n){if(n==="import")return 99;if(n==="require")return 1;d(c,u-c,Z.resolution_mode_should_be_either_require_or_import)}}function l8e(n,c){let u=[];for(let d of Zb(c,0)||v){let I=c.substring(d.pos,d.end);e8i(u,d,I)}n.pragmas=new Map;for(let d of u){if(n.pragmas.has(d.name)){let I=n.pragmas.get(d.name);I instanceof Array?I.push(d.args):n.pragmas.set(d.name,[I,d.args]);continue}n.pragmas.set(d.name,d.args)}}function u8e(n,c){n.checkJsDirective=void 0,n.referencedFiles=[],n.typeReferenceDirectives=[],n.libReferenceDirectives=[],n.amdDependencies=[],n.hasNoDefaultLib=!1,n.pragmas.forEach((u,d)=>{switch(d){case"reference":{let I=n.referencedFiles,h=n.typeReferenceDirectives,b=n.libReferenceDirectives;X(ys(u),R=>{let{types:N,lib:V,path:P,["resolution-mode"]:Q,preserve:te}=R.arguments,re=te==="true"?!0:void 0;if(R.arguments["no-default-lib"]==="true")n.hasNoDefaultLib=!0;else if(N){let ue=jKi(Q,N.pos,N.end,c);h.push({pos:N.pos,end:N.end,fileName:N.value,...ue?{resolutionMode:ue}:{},...re?{preserve:re}:{}})}else V?b.push({pos:V.pos,end:V.end,fileName:V.value,...re?{preserve:re}:{}}):P?I.push({pos:P.pos,end:P.end,fileName:P.value,...re?{preserve:re}:{}}):c(R.range.pos,R.range.end-R.range.pos,Z.Invalid_reference_directive_syntax)});break}case"amd-dependency":{n.amdDependencies=Ot(ys(u),I=>({name:I.arguments.name,path:I.arguments.path}));break}case"amd-module":{if(u instanceof Array)for(let I of u)n.moduleName&&c(I.range.pos,I.range.end-I.range.pos,Z.An_AMD_module_cannot_have_multiple_name_assignments),n.moduleName=I.arguments.name;else n.moduleName=u.arguments.name;break}case"ts-nocheck":case"ts-check":{X(ys(u),I=>{(!n.checkJsDirective||I.range.pos>n.checkJsDirective.pos)&&(n.checkJsDirective={enabled:d==="ts-check",end:I.range.end,pos:I.range.pos})});break}case"jsx":case"jsxfrag":case"jsximportsource":case"jsxruntime":return;default:w.fail("Unhandled pragma kind")}})}var DRt=new Map;function zKi(n){if(DRt.has(n))return DRt.get(n);let c=new RegExp(`(\\s${n}\\s*=\\s*)(?:(?:'([^']*)')|(?:"([^"]*)"))`,"im");return DRt.set(n,c),c}var qKi=/^\/\/\/\s*<(\S+)\s.*?\/>/im,$Ki=/^\/\/\/?\s*@([^\s:]+)(.*)\s*$/im;function e8i(n,c,u){let d=c.kind===2&&qKi.exec(u);if(d){let h=d[1].toLowerCase(),b=nN[h];if(!b||!(b.kind&1))return;if(b.args){let R={};for(let N of b.args){let P=zKi(N.name).exec(u);if(!P&&!N.optional)return;if(P){let Q=P[2]||P[3];if(N.captureSpan){let te=c.pos+P.index+P[1].length+1;R[N.name]={value:Q,pos:te,end:te+Q.length}}else R[N.name]=Q}}n.push({name:h,args:{arguments:R,range:c}})}else n.push({name:h,args:{arguments:{},range:c}});return}let I=c.kind===2&&$Ki.exec(u);if(I)return Nxr(n,c,2,I);if(c.kind===3){let h=/@(\S+)(\s+.*)?$/gim,b;for(;b=h.exec(u);)Nxr(n,c,4,b)}}function Nxr(n,c,u,d){if(!d)return;let I=d[1].toLowerCase(),h=nN[I];if(!h||!(h.kind&u))return;let b=d[2],R=t8i(h,b);R!=="fail"&&n.push({name:I,args:{arguments:R,range:c}})}function t8i(n,c){if(!c)return{};if(!n.args)return{};let u=c.trim().split(/\s+/),d={};for(let I=0;I[""+c,n])),Dxr=[["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"]],lke=Dxr.map(n=>n[0]),g8e=new Map(Dxr),Y6=[{name:"watchFile",type:new Map(Object.entries({fixedpollinginterval:0,prioritypollinginterval:1,dynamicprioritypolling:2,fixedchunksizepolling:3,usefsevents:4,usefseventsonparentdirectory:5})),category:Z.Watch_and_Build_Modes,description:Z.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:Z.Watch_and_Build_Modes,description:Z.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:Z.Watch_and_Build_Modes,description:Z.Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers,defaultValueDescription:1},{name:"synchronousWatchDirectory",type:"boolean",category:Z.Watch_and_Build_Modes,description:Z.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:tDt},allowConfigDirTemplateSubstitution:!0,category:Z.Watch_and_Build_Modes,description:Z.Remove_a_list_of_directories_from_the_watch_process},{name:"excludeFiles",type:"list",element:{name:"excludeFile",type:"string",isFilePath:!0,extraValidation:tDt},allowConfigDirTemplateSubstitution:!0,category:Z.Watch_and_Build_Modes,description:Z.Remove_a_list_of_files_from_the_watch_mode_s_processing}],uke=[{name:"help",shortName:"h",type:"boolean",showInSimplifiedHelpView:!0,isCommandLineOnly:!0,category:Z.Command_line_Options,description:Z.Print_this_message,defaultValueDescription:!1},{name:"help",shortName:"?",type:"boolean",isCommandLineOnly:!0,category:Z.Command_line_Options,defaultValueDescription:!1},{name:"watch",shortName:"w",type:"boolean",showInSimplifiedHelpView:!0,isCommandLineOnly:!0,category:Z.Command_line_Options,description:Z.Watch_input_files,defaultValueDescription:!1},{name:"preserveWatchOutput",type:"boolean",showInSimplifiedHelpView:!1,category:Z.Output_Formatting,description:Z.Disable_wiping_the_console_in_watch_mode,defaultValueDescription:!1},{name:"listFiles",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Print_all_of_the_files_read_during_the_compilation,defaultValueDescription:!1},{name:"explainFiles",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Print_files_read_during_the_compilation_including_why_it_was_included,defaultValueDescription:!1},{name:"listEmittedFiles",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Print_the_names_of_emitted_files_after_a_compilation,defaultValueDescription:!1},{name:"pretty",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Output_Formatting,description:Z.Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read,defaultValueDescription:!0},{name:"traceResolution",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Log_paths_used_during_the_moduleResolution_process,defaultValueDescription:!1},{name:"diagnostics",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Output_compiler_performance_information_after_building,defaultValueDescription:!1},{name:"extendedDiagnostics",type:"boolean",category:Z.Compiler_Diagnostics,description:Z.Output_more_detailed_compiler_performance_information_after_building,defaultValueDescription:!1},{name:"generateCpuProfile",type:"string",isFilePath:!0,paramType:Z.FILE_OR_DIRECTORY,category:Z.Compiler_Diagnostics,description:Z.Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging,defaultValueDescription:"profile.cpuprofile"},{name:"generateTrace",type:"string",isFilePath:!0,isCommandLineOnly:!0,paramType:Z.DIRECTORY,category:Z.Compiler_Diagnostics,description:Z.Generates_an_event_trace_and_a_list_of_types},{name:"incremental",shortName:"i",type:"boolean",category:Z.Projects,description:Z.Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects,transpileOptionValue:void 0,defaultValueDescription:Z.false_unless_composite_is_set},{name:"declaration",shortName:"d",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,transpileOptionValue:void 0,description:Z.Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project,defaultValueDescription:Z.false_unless_composite_is_set},{name:"declarationMap",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,defaultValueDescription:!1,description:Z.Create_sourcemaps_for_d_ts_files},{name:"emitDeclarationOnly",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.Only_output_d_ts_files_and_not_JavaScript_files,transpileOptionValue:void 0,defaultValueDescription:!1},{name:"sourceMap",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,defaultValueDescription:!1,description:Z.Create_source_map_files_for_emitted_JavaScript_files},{name:"inlineSourceMap",type:"boolean",affectsBuildInfo:!0,category:Z.Emit,description:Z.Include_sourcemap_files_inside_the_emitted_JavaScript,defaultValueDescription:!1},{name:"assumeChangesOnlyAffectDirectDependencies",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:Z.Watch_and_Build_Modes,description:Z.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:Z.Command_line_Options,isCommandLineOnly:!0,description:Z.Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit,defaultValueDescription:Z.Platform_specific}],A8e={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:Z.VERSION,showInSimplifiedHelpView:!0,category:Z.Language_and_Environment,description:Z.Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declarations,defaultValueDescription:1},xRt={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:Z.KIND,showInSimplifiedHelpView:!0,category:Z.Modules,description:Z.Specify_what_module_code_is_generated,defaultValueDescription:void 0},kRt=[{name:"all",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,description:Z.Show_all_compiler_options,defaultValueDescription:!1},{name:"version",shortName:"v",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,description:Z.Print_the_compiler_s_version,defaultValueDescription:!1},{name:"init",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,description:Z.Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file,defaultValueDescription:!1},{name:"project",shortName:"p",type:"string",isFilePath:!0,showInSimplifiedHelpView:!0,category:Z.Command_line_Options,paramType:Z.FILE_OR_DIRECTORY,description:Z.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:Z.Command_line_Options,description:Z.Build_one_or_more_projects_and_their_dependencies_if_out_of_date,defaultValueDescription:!1},{name:"showConfig",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Command_line_Options,isCommandLineOnly:!0,description:Z.Print_the_final_configuration_instead_of_building,defaultValueDescription:!1},{name:"listFilesOnly",type:"boolean",category:Z.Command_line_Options,isCommandLineOnly:!0,description:Z.Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing,defaultValueDescription:!1},A8e,xRt,{name:"lib",type:"list",element:{name:"lib",type:g8e,defaultValueDescription:void 0},affectsProgramStructure:!0,showInSimplifiedHelpView:!0,category:Z.Language_and_Environment,description:Z.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:Z.JavaScript_Support,description:Z.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:Z.JavaScript_Support,description:Z.Enable_error_reporting_in_type_checked_JavaScript_files,defaultValueDescription:!1},{name:"jsx",type:Rxr,affectsSourceFile:!0,affectsEmit:!0,affectsBuildInfo:!0,affectsModuleResolution:!0,affectsSemanticDiagnostics:!0,paramType:Z.KIND,showInSimplifiedHelpView:!0,category:Z.Language_and_Environment,description:Z.Specify_what_JSX_code_is_generated,defaultValueDescription:void 0},{name:"outFile",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:Z.FILE,showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.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:Z.DIRECTORY,showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.Specify_an_output_folder_for_all_emitted_files},{name:"rootDir",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:Z.LOCATION,category:Z.Modules,description:Z.Specify_the_root_folder_within_your_source_files,defaultValueDescription:Z.Computed_from_the_list_of_input_files},{name:"composite",type:"boolean",affectsBuildInfo:!0,isTSConfigOnly:!0,category:Z.Projects,transpileOptionValue:void 0,defaultValueDescription:!1,description:Z.Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references},{name:"tsBuildInfoFile",type:"string",affectsEmit:!0,affectsBuildInfo:!0,isFilePath:!0,paramType:Z.FILE,category:Z.Projects,transpileOptionValue:void 0,defaultValueDescription:".tsbuildinfo",description:Z.Specify_the_path_to_tsbuildinfo_incremental_compilation_file},{name:"removeComments",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Emit,defaultValueDescription:!1,description:Z.Disable_emitting_comments},{name:"noCheck",type:"boolean",showInSimplifiedHelpView:!1,category:Z.Compiler_Diagnostics,description:Z.Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported,transpileOptionValue:!0,defaultValueDescription:!1,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,extraValidation(){return[Z.Unknown_compiler_option_0,"noCheck"]}},{name:"noEmit",type:"boolean",showInSimplifiedHelpView:!0,category:Z.Emit,description:Z.Disable_emitting_files_from_a_compilation,transpileOptionValue:void 0,defaultValueDescription:!1},{name:"importHelpers",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,affectsSourceFile:!0,category:Z.Emit,description:Z.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:Z.Backwards_Compatibility,description:Z.Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types,defaultValueDescription:0},{name:"downlevelIteration",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration,defaultValueDescription:!1},{name:"isolatedModules",type:"boolean",category:Z.Interop_Constraints,description:Z.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:Z.Interop_Constraints,description:Z.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:Z.Interop_Constraints,description:Z.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:Z.Type_Checking,description:Z.Enable_all_strict_type_checking_options,defaultValueDescription:!1},{name:"noImplicitAny",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictNullChecks",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.When_type_checking_take_into_account_null_and_undefined,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictFunctionTypes",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictBindCallApply",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function,defaultValueDescription:Z.false_unless_strict_is_set},{name:"strictPropertyInitialization",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor,defaultValueDescription:Z.false_unless_strict_is_set},{name:"noImplicitThis",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_when_this_is_given_the_type_any,defaultValueDescription:Z.false_unless_strict_is_set},{name:"useUnknownInCatchVariables",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Default_catch_clause_variables_as_unknown_instead_of_any,defaultValueDescription:Z.false_unless_strict_is_set},{name:"alwaysStrict",type:"boolean",affectsSourceFile:!0,affectsEmit:!0,affectsBuildInfo:!0,strictFlag:!0,category:Z.Type_Checking,description:Z.Ensure_use_strict_is_always_emitted,defaultValueDescription:Z.false_unless_strict_is_set},{name:"noUnusedLocals",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Enable_error_reporting_when_local_variables_aren_t_read,defaultValueDescription:!1},{name:"noUnusedParameters",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Raise_an_error_when_a_function_parameter_isn_t_read,defaultValueDescription:!1},{name:"exactOptionalPropertyTypes",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Interpret_optional_property_types_as_written_rather_than_adding_undefined,defaultValueDescription:!1},{name:"noImplicitReturns",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.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:Z.Type_Checking,description:Z.Enable_error_reporting_for_fallthrough_cases_in_switch_statements,defaultValueDescription:!1},{name:"noUncheckedIndexedAccess",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Add_undefined_to_a_type_when_accessed_using_an_index,defaultValueDescription:!1},{name:"noImplicitOverride",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.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:Z.Type_Checking,description:Z.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:Z.STRATEGY,category:Z.Modules,description:Z.Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier,defaultValueDescription:Z.module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node},{name:"baseUrl",type:"string",affectsModuleResolution:!0,isFilePath:!0,category:Z.Modules,description:Z.Specify_the_base_directory_to_resolve_non_relative_module_names},{name:"paths",type:"object",affectsModuleResolution:!0,allowConfigDirTemplateSubstitution:!0,isTSConfigOnly:!0,category:Z.Modules,description:Z.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:Z.Modules,description:Z.Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules,transpileOptionValue:void 0,defaultValueDescription:Z.Computed_from_the_list_of_input_files},{name:"typeRoots",type:"list",element:{name:"typeRoots",type:"string",isFilePath:!0},affectsModuleResolution:!0,allowConfigDirTemplateSubstitution:!0,category:Z.Modules,description:Z.Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types},{name:"types",type:"list",element:{name:"types",type:"string"},affectsProgramStructure:!0,showInSimplifiedHelpView:!0,category:Z.Modules,description:Z.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:Z.Interop_Constraints,description:Z.Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export,defaultValueDescription:Z.module_system_or_esModuleInterop},{name:"esModuleInterop",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:Z.Interop_Constraints,description:Z.Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheticDefaultImports_for_type_compatibility,defaultValueDescription:!1},{name:"preserveSymlinks",type:"boolean",category:Z.Interop_Constraints,description:Z.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:Z.Modules,description:Z.Allow_accessing_UMD_globals_from_modules,defaultValueDescription:!1},{name:"moduleSuffixes",type:"list",element:{name:"suffix",type:"string"},listPreserveFalsyValues:!0,affectsModuleResolution:!0,category:Z.Modules,description:Z.List_of_file_name_suffixes_to_search_when_resolving_a_module},{name:"allowImportingTsExtensions",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Modules,description:Z.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:Z.Modules,description:Z.Use_the_package_json_exports_field_when_resolving_package_imports,defaultValueDescription:Z.true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false},{name:"resolvePackageJsonImports",type:"boolean",affectsModuleResolution:!0,category:Z.Modules,description:Z.Use_the_package_json_imports_field_when_resolving_imports,defaultValueDescription:Z.true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false},{name:"customConditions",type:"list",element:{name:"condition",type:"string"},affectsModuleResolution:!0,category:Z.Modules,description:Z.Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports},{name:"sourceRoot",type:"string",affectsEmit:!0,affectsBuildInfo:!0,paramType:Z.LOCATION,category:Z.Emit,description:Z.Specify_the_root_path_for_debuggers_to_find_the_reference_source_code},{name:"mapRoot",type:"string",affectsEmit:!0,affectsBuildInfo:!0,paramType:Z.LOCATION,category:Z.Emit,description:Z.Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations},{name:"inlineSources",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript,defaultValueDescription:!1},{name:"experimentalDecorators",type:"boolean",affectsEmit:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Enable_experimental_support_for_legacy_experimental_decorators,defaultValueDescription:!1},{name:"emitDecoratorMetadata",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Emit_design_type_metadata_for_decorated_declarations_in_source_files,defaultValueDescription:!1},{name:"jsxFactory",type:"string",category:Z.Language_and_Environment,description:Z.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:Z.Language_and_Environment,description:Z.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:Z.Language_and_Environment,description:Z.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:Z.Modules,description:Z.Enable_importing_json_files,defaultValueDescription:!1},{name:"allowArbitraryExtensions",type:"boolean",affectsProgramStructure:!0,category:Z.Modules,description:Z.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:Z.Backwards_Compatibility,paramType:Z.FILE,transpileOptionValue:void 0,description:Z.Deprecated_setting_Use_outFile_instead},{name:"reactNamespace",type:"string",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit,defaultValueDescription:"`React`"},{name:"skipDefaultLibCheck",type:"boolean",affectsBuildInfo:!0,category:Z.Completeness,description:Z.Skip_type_checking_d_ts_files_that_are_included_with_TypeScript,defaultValueDescription:!1},{name:"charset",type:"string",category:Z.Backwards_Compatibility,description:Z.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:Z.Emit,description:Z.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:Z.NEWLINE,category:Z.Emit,description:Z.Set_the_newline_character_for_emitting_files,defaultValueDescription:"lf"},{name:"noErrorTruncation",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Output_Formatting,description:Z.Disable_truncating_types_in_error_messages,defaultValueDescription:!1},{name:"noLib",type:"boolean",category:Z.Language_and_Environment,affectsProgramStructure:!0,description:Z.Disable_including_any_library_files_including_the_default_lib_d_ts,transpileOptionValue:!0,defaultValueDescription:!1},{name:"noResolve",type:"boolean",affectsModuleResolution:!0,category:Z.Modules,description:Z.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:Z.Emit,description:Z.Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments,defaultValueDescription:!1},{name:"disableSizeLimit",type:"boolean",affectsProgramStructure:!0,category:Z.Editor_Support,description:Z.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:Z.Projects,description:Z.Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects,defaultValueDescription:!1},{name:"disableSolutionSearching",type:"boolean",isTSConfigOnly:!0,category:Z.Projects,description:Z.Opt_a_project_out_of_multi_project_reference_checking_when_editing,defaultValueDescription:!1},{name:"disableReferencedProjectLoad",type:"boolean",isTSConfigOnly:!0,category:Z.Projects,description:Z.Reduce_the_number_of_projects_loaded_automatically_by_TypeScript,defaultValueDescription:!1},{name:"noImplicitUseStrict",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Disable_adding_use_strict_directives_in_emitted_JavaScript_files,defaultValueDescription:!1},{name:"noEmitHelpers",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Disable_generating_custom_helper_functions_like_extends_in_compiled_output,defaultValueDescription:!1},{name:"noEmitOnError",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,transpileOptionValue:void 0,description:Z.Disable_emitting_files_if_any_type_checking_errors_are_reported,defaultValueDescription:!1},{name:"preserveConstEnums",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Emit,description:Z.Disable_erasing_const_enum_declarations_in_generated_code,defaultValueDescription:!1},{name:"declarationDir",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:Z.DIRECTORY,category:Z.Emit,transpileOptionValue:void 0,description:Z.Specify_the_output_directory_for_generated_declaration_files},{name:"skipLibCheck",type:"boolean",affectsBuildInfo:!0,category:Z.Completeness,description:Z.Skip_type_checking_all_d_ts_files,defaultValueDescription:!1},{name:"allowUnusedLabels",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Disable_error_reporting_for_unused_labels,defaultValueDescription:void 0},{name:"allowUnreachableCode",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Type_Checking,description:Z.Disable_error_reporting_for_unreachable_code,defaultValueDescription:void 0},{name:"suppressExcessPropertyErrors",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals,defaultValueDescription:!1},{name:"suppressImplicitAnyIndexErrors",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures,defaultValueDescription:!1},{name:"forceConsistentCasingInFileNames",type:"boolean",affectsModuleResolution:!0,category:Z.Interop_Constraints,description:Z.Ensure_that_casing_is_correct_in_imports,defaultValueDescription:!0},{name:"maxNodeModuleJsDepth",type:"number",affectsModuleResolution:!0,category:Z.JavaScript_Support,description:Z.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:Z.Backwards_Compatibility,description:Z.Disable_strict_checking_of_generic_signatures_in_function_types,defaultValueDescription:!1},{name:"useDefineForClassFields",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:Z.Language_and_Environment,description:Z.Emit_ECMAScript_standard_compliant_class_fields,defaultValueDescription:Z.true_for_ES2022_and_above_including_ESNext},{name:"preserveValueImports",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:Z.Backwards_Compatibility,description:Z.Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed,defaultValueDescription:!1},{name:"keyofStringsOnly",type:"boolean",category:Z.Backwards_Compatibility,description:Z.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:Z.Specify_a_list_of_language_service_plugins_to_include,category:Z.Editor_Support},{name:"moduleDetection",type:new Map(Object.entries({auto:2,legacy:1,force:3})),affectsSourceFile:!0,affectsModuleResolution:!0,description:Z.Control_what_method_is_used_to_detect_module_format_JS_files,category:Z.Language_and_Environment,defaultValueDescription:Z.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}],lT=[...uke,...kRt],GRt=lT.filter(n=>!!n.affectsSemanticDiagnostics),FRt=lT.filter(n=>!!n.affectsEmit),ZRt=lT.filter(n=>!!n.affectsDeclarationPath),d8e=lT.filter(n=>!!n.affectsModuleResolution),p8e=lT.filter(n=>!!n.affectsSourceFile||!!n.affectsBindDiagnostics),LRt=lT.filter(n=>!!n.affectsProgramStructure),VRt=lT.filter(n=>Qa(n,"transpileOptionValue")),WRt=lT.filter(n=>n.allowConfigDirTemplateSubstitution||!n.isCommandLineOnly&&n.isFilePath),PRt=Y6.filter(n=>n.allowConfigDirTemplateSubstitution||!n.isCommandLineOnly&&n.isFilePath),ORt=lT.filter(r8i);function r8i(n){return!Ya(n.type)}var f8e=[{name:"verbose",shortName:"v",category:Z.Command_line_Options,description:Z.Enable_verbose_logging,type:"boolean",defaultValueDescription:!1},{name:"dry",shortName:"d",category:Z.Command_line_Options,description:Z.Show_what_would_be_built_or_deleted_if_specified_with_clean,type:"boolean",defaultValueDescription:!1},{name:"force",shortName:"f",category:Z.Command_line_Options,description:Z.Build_all_projects_including_those_that_appear_to_be_up_to_date,type:"boolean",defaultValueDescription:!1},{name:"clean",category:Z.Command_line_Options,description:Z.Delete_the_outputs_of_all_projects,type:"boolean",defaultValueDescription:!1}],$he=[...uke,...f8e],gke=[{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 Ake(n){let c=new Map,u=new Map;return X(n,d=>{c.set(d.name.toLowerCase(),d),d.shortName&&u.set(d.shortName,d.name)}),{optionsNameMap:c,shortOptionNames:u}}var xxr;function hte(){return xxr||(xxr=Ake(lT))}var n8i={diagnostic:Z.Compiler_option_0_may_only_be_used_with_build,getOptionsNameMap:Lxr},I8e={module:1,target:3,strict:!0,esModuleInterop:!0,forceConsistentCasingInFileNames:!0,skipLibCheck:!0};function QRt(n){return kxr(n,If)}function kxr(n,c){let u=on(n.type.keys()),d=(n.deprecatedKeys?u.filter(I=>!n.deprecatedKeys.has(I)):u).map(I=>`'${I}'`).join(", ");return c(Z.Argument_for_0_option_must_be_Colon_1,`--${n.name}`,d)}function dke(n,c,u){return Ckr(n,(c??"").trim(),u)}function MRt(n,c="",u){if(c=c.trim(),uc(c,"-"))return;if(n.type==="listOrElement"&&!c.includes(","))return X6(n,c,u);if(c==="")return[];let d=c.split(",");switch(n.element.type){case"number":return tr(d,I=>X6(n.element,parseInt(I),u));case"string":return tr(d,I=>X6(n.element,I||"",u));case"boolean":case"object":return w.fail(`List of ${n.element.type} is not yet supported.`);default:return tr(d,I=>dke(n.element,I,u))}}function Gxr(n){return n.name}function HRt(n,c,u,d,I){var h;if((h=c.alternateMode)!=null&&h.getOptionsNameMap().optionsNameMap.has(n.toLowerCase()))return gP(I,d,c.alternateMode.diagnostic,n);let b=Rd(n,c.optionDeclarations,Gxr);return b?gP(I,d,c.unknownDidYouMeanDiagnostic,u||n,b.name):gP(I,d,c.unknownOptionDiagnostic,u||n)}function C8e(n,c,u){let d={},I,h=[],b=[];return R(c),{options:d,watchOptions:I,fileNames:h,errors:b};function R(V){let P=0;for(;Pyd.readFile(re)));if(!Ya(P)){b.push(P);return}let Q=[],te=0;for(;;){for(;te=P.length)break;let re=te;if(P.charCodeAt(re)===34){for(te++;te32;)te++;Q.push(P.substring(re,te))}}R(Q)}}function Fxr(n,c,u,d,I,h){if(d.isTSConfigOnly){let b=n[c];b==="null"?(I[d.name]=void 0,c++):d.type==="boolean"?b==="false"?(I[d.name]=X6(d,!1,h),c++):(b==="true"&&c++,h.push(If(Z.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line,d.name))):(h.push(If(Z.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line,d.name)),b&&!uc(b,"-")&&c++)}else if(!n[c]&&d.type!=="boolean"&&h.push(If(u.optionTypeMismatchDiagnostic,d.name,b8e(d))),n[c]!=="null")switch(d.type){case"number":I[d.name]=X6(d,parseInt(n[c]),h),c++;break;case"boolean":let b=n[c];I[d.name]=X6(d,b!=="false",h),(b==="false"||b==="true")&&c++;break;case"string":I[d.name]=X6(d,n[c]||"",h),c++;break;case"list":let R=MRt(d,n[c],h);I[d.name]=R||[],R&&c++;break;case"listOrElement":w.fail("listOrElement not supported here");break;default:I[d.name]=dke(d,n[c],h),c++;break}else I[d.name]=void 0,c++;return c}var pke={alternateMode:n8i,getOptionsNameMap:hte,optionDeclarations:lT,unknownOptionDiagnostic:Z.Unknown_compiler_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_compiler_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:Z.Compiler_option_0_expects_an_argument};function YRt(n,c){return C8e(pke,n,c)}function m8e(n,c){return XRt(hte,n,c)}function XRt(n,c,u=!1){c=c.toLowerCase();let{optionsNameMap:d,shortOptionNames:I}=n();if(u){let h=I.get(c);h!==void 0&&(c=h)}return d.get(c)}var Zxr;function Lxr(){return Zxr||(Zxr=Ake($he))}var i8i={diagnostic:Z.Compiler_option_0_may_not_be_used_with_build,getOptionsNameMap:hte},s8i={alternateMode:i8i,getOptionsNameMap:Lxr,optionDeclarations:$he,unknownOptionDiagnostic:Z.Unknown_build_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_build_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:Z.Build_option_0_requires_a_value_of_type_1};function JRt(n){let{options:c,watchOptions:u,fileNames:d,errors:I}=C8e(s8i,n),h=c;return d.length===0&&d.push("."),h.clean&&h.force&&I.push(If(Z.Options_0_and_1_cannot_be_combined,"clean","force")),h.clean&&h.verbose&&I.push(If(Z.Options_0_and_1_cannot_be_combined,"clean","verbose")),h.clean&&h.watch&&I.push(If(Z.Options_0_and_1_cannot_be_combined,"clean","watch")),h.watch&&h.dry&&I.push(If(Z.Options_0_and_1_cannot_be_combined,"watch","dry")),{buildOptions:h,watchOptions:u,projects:d,errors:I}}function lb(n,...c){return ps(If(n,...c).messageText,Ya)}function e_e(n,c,u,d,I,h){let b=zle(n,V=>u.readFile(V));if(!Ya(b)){u.onUnRecoverableConfigFileDiagnostic(b);return}let R=zhe(n,b),N=u.getCurrentDirectory();return R.path=AA(n,N,rA(u.useCaseSensitiveFileNames)),R.resolvedPath=R.path,R.originalFileName=R.fileName,n_e(R,u,Qc(oa(n),N),c,Qc(n,N),void 0,h,d,I)}function t_e(n,c){let u=zle(n,c);return Ya(u)?h8e(n,u):{config:{},error:u}}function h8e(n,c){let u=zhe(n,c);return{config:jxr(u,u.parseDiagnostics,void 0),error:u.parseDiagnostics.length?u.parseDiagnostics[0]:void 0}}function URt(n,c){let u=zle(n,c);return Ya(u)?zhe(n,u):{fileName:n,parseDiagnostics:[u]}}function zle(n,c){let u;try{u=c(n)}catch(d){return If(Z.Cannot_read_file_0_Colon_1,n,d.message)}return u===void 0?If(Z.Cannot_read_file_0,n):u}function _8e(n){return lA(n,Gxr)}var Vxr={optionDeclarations:gke,unknownOptionDiagnostic:Z.Unknown_type_acquisition_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_type_acquisition_option_0_Did_you_mean_1},Wxr;function Pxr(){return Wxr||(Wxr=Ake(Y6))}var y8e={getOptionsNameMap:Pxr,optionDeclarations:Y6,unknownOptionDiagnostic:Z.Unknown_watch_option_0,unknownDidYouMeanDiagnostic:Z.Unknown_watch_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:Z.Watch_option_0_requires_a_value_of_type_1},Oxr;function Qxr(){return Oxr||(Oxr=_8e(lT))}var Mxr;function Hxr(){return Mxr||(Mxr=_8e(Y6))}var Yxr;function Xxr(){return Yxr||(Yxr=_8e(gke))}var fke={name:"extends",type:"listOrElement",element:{name:"extends",type:"string"},category:Z.File_Management,disallowNullOrUndefined:!0},Jxr={name:"compilerOptions",type:"object",elementOptions:Qxr(),extraKeyDiagnostics:pke},Uxr={name:"watchOptions",type:"object",elementOptions:Hxr(),extraKeyDiagnostics:y8e},Kxr={name:"typeAcquisition",type:"object",elementOptions:Xxr(),extraKeyDiagnostics:Vxr},KRt;function o8i(){return KRt===void 0&&(KRt={name:void 0,type:"object",elementOptions:_8e([Jxr,Uxr,Kxr,fke,{name:"references",type:"list",element:{name:"references",type:"object"},category:Z.Projects},{name:"files",type:"list",element:{name:"files",type:"string"},category:Z.File_Management},{name:"include",type:"list",element:{name:"include",type:"string"},category:Z.File_Management,defaultValueDescription:Z.if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk},{name:"exclude",type:"list",element:{name:"exclude",type:"string"},category:Z.File_Management,defaultValueDescription:Z.node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified},cke])}),KRt}function jxr(n,c,u){var d;let I=(d=n.statements[0])==null?void 0:d.expression;if(I&&I.kind!==210){if(c.push(Wb(n,I,Z.The_root_value_of_a_0_file_must_be_an_object,kA(n.fileName)==="jsconfig.json"?"jsconfig.json":"tsconfig.json")),Cf(I)){let h=be(I.elements,ru);if(h)return r_e(n,h,c,!0,u)}return{}}return r_e(n,I,c,!0,u)}function jRt(n,c){var u;return r_e(n,(u=n.statements[0])==null?void 0:u.expression,c,!0,void 0)}function r_e(n,c,u,d,I){if(!c)return d?{}:void 0;return R(c,I?.rootOptions);function h(V,P){var Q;let te=d?{}:void 0;for(let re of V.properties){if(re.kind!==303){u.push(Wb(n,re,Z.Property_assignment_expected));continue}re.questionToken&&u.push(Wb(n,re.questionToken,Z.The_0_modifier_can_only_be_used_in_TypeScript_files,"?")),N(re.name)||u.push(Wb(n,re.name,Z.String_literal_with_double_quotes_expected));let ue=FX(re.name)?void 0:j9(re.name),Ae=ue&&wc(ue),de=Ae?(Q=P?.elementOptions)==null?void 0:Q.get(Ae):void 0,Be=R(re.initializer,de);typeof Ae<"u"&&(d&&(te[Ae]=Be),I?.onPropertySet(Ae,Be,re,P,de))}return te}function b(V,P){if(!d){V.forEach(Q=>R(Q,P));return}return Gt(V.map(Q=>R(Q,P)),Q=>Q!==void 0)}function R(V,P){switch(V.kind){case 112:return!0;case 97:return!1;case 106:return null;case 11:return N(V)||u.push(Wb(n,V,Z.String_literal_with_double_quotes_expected)),V.text;case 9:return Number(V.text);case 224:if(V.operator!==41||V.operand.kind!==9)break;return-Number(V.operand.text);case 210:return h(V,P);case 209:return b(V.elements,P&&P.element)}P?u.push(Wb(n,V,Z.Compiler_option_0_requires_a_value_of_type_1,P.name,b8e(P))):u.push(Wb(n,V,Z.Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal))}function N(V){return Eu(V)&&yce(V,n)}}function b8e(n){return n.type==="listOrElement"?`${b8e(n.element)} or Array`:n.type==="list"?"Array":Ya(n.type)?n.type:"string"}function zxr(n,c){if(n){if(i_e(c))return!n.disallowNullOrUndefined;if(n.type==="list")return Na(c);if(n.type==="listOrElement")return Na(c)||zxr(n.element,c);let u=Ya(n.type)?n.type:"string";return typeof c===u}return!1}function E8e(n,c,u){var d,I,h;let b=rA(u.useCaseSensitiveFileNames),R=Ot(Gt(n.fileNames,(I=(d=n.options.configFile)==null?void 0:d.configFileSpecs)!=null&&I.validatedIncludeSpecs?c8i(c,n.options.configFile.configFileSpecs.validatedIncludeSpecs,n.options.configFile.configFileSpecs.validatedExcludeSpecs,u):fI),ue=>T1(Qc(c,u.getCurrentDirectory()),Qc(ue,u.getCurrentDirectory()),b)),N={configFilePath:Qc(c,u.getCurrentDirectory()),useCaseSensitiveFileNames:u.useCaseSensitiveFileNames},V=Cke(n.options,N),P=n.watchOptions&&l8i(n.watchOptions),Q={compilerOptions:{...Ike(V),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:P&&Ike(P),references:Ot(n.projectReferences,ue=>({...ue,path:ue.originalPath?ue.originalPath:"",originalPath:void 0})),files:O(R)?R:void 0,...(h=n.options.configFile)!=null&&h.configFileSpecs?{include:a8i(n.options.configFile.configFileSpecs.validatedIncludeSpecs),exclude:n.options.configFile.configFileSpecs.validatedExcludeSpecs}:{},compileOnSave:n.compileOnSave?!0:void 0},te=new Set(V.keys()),re={};for(let ue in GC)if(!te.has(ue)&&lr(GC[ue].dependencies,Ae=>te.has(Ae))){let Ae=GC[ue].computeValue(n.options),de=GC[ue].computeValue({});Ae!==de&&(re[ue]=GC[ue].computeValue(n.options))}return Eo(Q.compilerOptions,Ike(Cke(re,N))),Q}function Ike(n){return{...on(n.entries()).reduce((c,u)=>({...c,[u[0]]:u[1]}),{})}}function a8i(n){if(O(n)){if(O(n)!==1)return n;if(n[0]!==S8e)return n}}function c8i(n,c,u,d){if(!c)return fI;let I=Ale(n,u,c,d.useCaseSensitiveFileNames,d.getCurrentDirectory()),h=I.excludePattern&&TG(I.excludePattern,d.useCaseSensitiveFileNames),b=I.includeFilePattern&&TG(I.includeFilePattern,d.useCaseSensitiveFileNames);return b?h?R=>!(b.test(R)&&!h.test(R)):R=>!b.test(R):h?R=>h.test(R):fI}function qxr(n){switch(n.type){case"string":case"number":case"boolean":case"object":return;case"list":case"listOrElement":return qxr(n.element);default:return n.type}}function B8e(n,c){return UC(c,(u,d)=>{if(u===n)return d})}function Cke(n,c){return $xr(n,hte(),c)}function l8i(n){return $xr(n,Pxr())}function $xr(n,{optionsNameMap:c},u){let d=new Map,I=u&&rA(u.useCaseSensitiveFileNames);for(let h in n)if(Qa(n,h)){if(c.has(h)&&(c.get(h).category===Z.Command_line_Options||c.get(h).category===Z.Output_Formatting))continue;let b=n[h],R=c.get(h.toLowerCase());if(R){w.assert(R.type!=="listOrElement");let N=qxr(R);N?R.type==="list"?d.set(h,b.map(V=>B8e(V,N))):d.set(h,B8e(b,N)):u&&R.isFilePath?d.set(h,T1(u.configFilePath,Qc(b,oa(u.configFilePath)),I)):u&&R.type==="list"&&R.element.isFilePath?d.set(h,b.map(V=>T1(u.configFilePath,Qc(V,oa(u.configFilePath)),I))):d.set(h,b)}}return d}function zRt(n,c){let u=ekr(n);return I();function d(h){return Array(h+1).join(" ")}function I(){let h=[],b=d(2);return kRt.forEach(R=>{if(!u.has(R.name))return;let N=u.get(R.name),V=sDt(R);N!==V?h.push(`${b}${R.name}: ${N}`):Qa(I8e,R.name)&&h.push(`${b}${R.name}: ${V}`)}),h.join(c)+c}}function ekr(n){let c=EA(n,I8e);return Cke(c)}function qRt(n,c,u){let d=ekr(n);return b();function I(R){return Array(R+1).join(" ")}function h({category:R,name:N,isCommandLineOnly:V}){let P=[Z.Command_line_Options,Z.Editor_Support,Z.Compiler_Diagnostics,Z.Backwards_Compatibility,Z.Watch_and_Build_Modes,Z.Output_Formatting];return!V&&R!==void 0&&(!P.includes(R)||d.has(N))}function b(){let R=new Map;R.set(Z.Projects,[]),R.set(Z.Language_and_Environment,[]),R.set(Z.Modules,[]),R.set(Z.JavaScript_Support,[]),R.set(Z.Emit,[]),R.set(Z.Interop_Constraints,[]),R.set(Z.Type_Checking,[]),R.set(Z.Completeness,[]);for(let re of lT)if(h(re)){let ue=R.get(re.category);ue||R.set(re.category,ue=[]),ue.push(re)}let N=0,V=0,P=[];R.forEach((re,ue)=>{P.length!==0&&P.push({value:""}),P.push({value:`/* ${tu(ue)} */`});for(let Ae of re){let de;d.has(Ae.name)?de=`"${Ae.name}": ${JSON.stringify(d.get(Ae.name))}${(V+=1)===d.size?"":","}`:de=`// "${Ae.name}": ${JSON.stringify(sDt(Ae))},`,P.push({value:de,description:`/* ${Ae.description&&tu(Ae.description)||Ae.name} */`}),N=Math.max(de.length,N)}});let Q=I(2),te=[];te.push("{"),te.push(`${Q}"compilerOptions": {`),te.push(`${Q}${Q}/* ${tu(Z.Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file)} */`),te.push("");for(let re of P){let{value:ue,description:Ae=""}=re;te.push(ue&&`${Q}${Q}${ue}${Ae&&I(N-ue.length+2)+Ae}`)}if(c.length){te.push(`${Q}},`),te.push(`${Q}"files": [`);for(let re=0;retypeof Kt=="object","object"),st=Me(De("files"));if(st){let Kt=je==="no-prop"||Na(je)&&je.length===0,Nt=Qa(te,"extends");if(st.length===0&&Kt&&!Nt)if(c){let Lt=b||"tsconfig.json",kt=Z.The_files_list_in_config_file_0_is_empty,Zt=j$(c,"files",jt=>jt.initializer),Dr=gP(c,Zt,kt,Lt);P.push(Dr)}else Le(Z.The_files_list_in_config_file_0_is_empty,b||"tsconfig.json")}let nt=Me(De("include")),qe=De("exclude"),it=!1,It=Me(qe);if(qe==="no-prop"){let Kt=re.outDir,Nt=re.declarationDir;(Kt||Nt)&&(It=Gt([Kt,Nt],Lt=>!!Lt))}st===void 0&&nt===void 0&&(nt=[S8e],it=!0);let dt,Tt,St,He;nt&&(dt=ykr(nt,P,!0,c,"include"),St=_ke(dt,Ae)||dt),It&&(Tt=ykr(It,P,!1,c,"exclude"),He=_ke(Tt,Ae)||Tt);let ht=Gt(st,Ya),Et=_ke(ht,Ae)||ht;return{filesSpecs:st,includeSpecs:nt,excludeSpecs:It,validatedFilesSpec:Et,validatedIncludeSpecs:St,validatedExcludeSpecs:He,validatedFilesSpecBeforeSubstitution:ht,validatedIncludeSpecsBeforeSubstitution:dt,validatedExcludeSpecsBeforeSubstitution:Tt,pathPatterns:void 0,isDefaultIncludeSpec:it}}function Fe(je){let st=$le(de,je,re,u,N);return ckr(st,qle(te),R)&&P.push(akr(de,b)),st}function Ne(je){let st,nt=lt("references",qe=>typeof qe=="object","object");if(Na(nt))for(let qe of nt)typeof qe.path!="string"?Le(Z.Compiler_option_0_requires_a_value_of_type_1,"reference.path","string"):(st||(st=[])).push({path:Qc(qe.path,je),originalPath:qe.path,prepend:qe.prepend,circular:qe.circular});return st}function Me(je){return Na(je)?je:void 0}function De(je){return lt(je,Ya,"string")}function lt(je,st,nt){if(Qa(te,je)&&!i_e(te[je]))if(Na(te[je])){let qe=te[je];return!c&&!he(qe,st)&&P.push(If(Z.Compiler_option_0_requires_a_value_of_type_1,je,nt)),qe}else return Le(Z.Compiler_option_0_requires_a_value_of_type_1,je,"Array"),"not-array";return"no-prop"}function Le(je,...st){c||P.push(If(je,...st))}}function hke(n,c){return ikr(n,PRt,c)}function ikr(n,c,u){if(!n)return n;let d;for(let h of c)if(n[h.name]!==void 0){let b=n[h.name];switch(h.type){case"string":w.assert(h.isFilePath),w8e(b)&&I(h,okr(b,u));break;case"list":w.assert(h.element.isFilePath);let R=_ke(b,u);R&&I(h,R);break;case"object":w.assert(h.name==="paths");let N=g8i(b,u);N&&I(h,N);break;default:w.fail("option type not supported")}}return d||n;function I(h,b){(d??(d=Eo({},n)))[h.name]=b}}var skr="${configDir}";function w8e(n){return Ya(n)&&uc(n,skr,!0)}function okr(n,c){return Qc(n.replace(skr,"./"),c)}function _ke(n,c){if(!n)return n;let u;return n.forEach((d,I)=>{w8e(d)&&((u??(u=n.slice()))[I]=okr(d,c))}),u}function g8i(n,c){let u;return Gl(n).forEach(I=>{if(!Na(n[I]))return;let h=_ke(n[I],c);h&&((u??(u=Eo({},n)))[I]=h)}),u}function A8i(n){return n.code===Z.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2.code}function akr({includeSpecs:n,excludeSpecs:c},u){return If(Z.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2,u||"tsconfig.json",JSON.stringify(n||[]),JSON.stringify(c||[]))}function ckr(n,c,u){return n.length===0&&c&&(!u||u.length===0)}function qle(n){return!Qa(n,"files")&&!Qa(n,"references")}function yke(n,c,u,d,I){let h=d.length;return ckr(n,I)?d.push(akr(u,c)):er(d,b=>!A8i(b)),h!==d.length}function d8i(n){return!!n.options}function lkr(n,c,u,d,I,h,b,R){var N;d=df(d);let V=Qc(I||"",d);if(h.includes(V))return b.push(If(Z.Circularity_detected_while_resolving_configuration_Colon_0,[...h,V].join(" -> "))),{raw:n||jRt(c,b)};let P=n?p8i(n,u,d,I,b):f8i(c,u,d,I,b);if((N=P.options)!=null&&N.paths&&(P.options.pathsBasePath=d),P.extendedConfigPath){h=h.concat([V]);let te={options:{}};Ya(P.extendedConfigPath)?Q(te,P.extendedConfigPath):P.extendedConfigPath.forEach(re=>Q(te,re)),te.include&&(P.raw.include=te.include),te.exclude&&(P.raw.exclude=te.exclude),te.files&&(P.raw.files=te.files),P.raw.compileOnSave===void 0&&te.compileOnSave&&(P.raw.compileOnSave=te.compileOnSave),c&&te.extendedSourceFiles&&(c.extendedSourceFiles=on(te.extendedSourceFiles.keys())),P.options=Eo(te.options,P.options),P.watchOptions=P.watchOptions&&te.watchOptions?Eo(te.watchOptions,P.watchOptions):P.watchOptions||te.watchOptions}return P;function Q(te,re){let ue=I8i(c,re,u,h,b,R,te);if(ue&&d8i(ue)){let Ae=ue.raw,de,Be=Fe=>{P.raw[Fe]||Ae[Fe]&&(te[Fe]=Ot(Ae[Fe],Ne=>w8e(Ne)||bd(Ne)?Ne:Do(de||(de=RE(oa(re),d,rA(u.useCaseSensitiveFileNames))),Ne)))};Be("include"),Be("exclude"),Be("files"),Ae.compileOnSave!==void 0&&(te.compileOnSave=Ae.compileOnSave),Eo(te.options,ue.options),te.watchOptions=te.watchOptions&&ue.watchOptions?Eo({},te.watchOptions,ue.watchOptions):te.watchOptions||ue.watchOptions}}}function p8i(n,c,u,d,I){Qa(n,"excludes")&&I.push(If(Z.Unknown_option_excludes_Did_you_mean_exclude));let h=fkr(n.compilerOptions,u,I,d),b=Ikr(n.typeAcquisition,u,I,d),R=m8i(n.watchOptions,u,I);n.compileOnSave=C8i(n,u,I);let N=n.extends||n.extends===""?ukr(n.extends,c,u,d,I):void 0;return{raw:n,options:h,watchOptions:R,typeAcquisition:b,extendedConfigPath:N}}function ukr(n,c,u,d,I,h,b,R){let N,V=d?rkr(d,u):u;if(Ya(n))N=gkr(n,c,V,I,b,R);else if(Na(n)){N=[];for(let P=0;PFe.name===re)&&(V=Yr(V,Ae.name))))}}function gkr(n,c,u,d,I,h){if(n=df(n),bd(n)||uc(n,"./")||uc(n,"../")){let R=Qc(n,u);if(!c.fileExists(R)&&!fl(R,".json")&&(R=`${R}.json`,!c.fileExists(R))){d.push(gP(h,I,Z.File_0_not_found,n));return}return R}let b=mDt(n,Do(u,"tsconfig.json"),c);if(b.resolvedModule)return b.resolvedModule.resolvedFileName;n===""?d.push(gP(h,I,Z.Compiler_option_0_cannot_be_given_an_empty_string,"extends")):d.push(gP(h,I,Z.File_0_not_found,n))}function I8i(n,c,u,d,I,h,b){let R=u.useCaseSensitiveFileNames?c:uf(c),N,V,P;if(h&&(N=h.get(R))?{extendedResult:V,extendedConfig:P}=N:(V=URt(c,Q=>u.readFile(Q)),V.parseDiagnostics.length||(P=lkr(void 0,V,u,oa(c),kA(c),d,I,h)),h&&h.set(R,{extendedResult:V,extendedConfig:P})),n&&((b.extendedSourceFiles??(b.extendedSourceFiles=new Set)).add(V.fileName),V.extendedSourceFiles))for(let Q of V.extendedSourceFiles)b.extendedSourceFiles.add(Q);if(V.parseDiagnostics.length){I.push(...V.parseDiagnostics);return}return P}function C8i(n,c,u){if(!Qa(n,cke.name))return!1;let d=h4(cke,n.compileOnSave,c,u);return typeof d=="boolean"&&d}function Akr(n,c,u){let d=[];return{options:fkr(n,c,d,u),errors:d}}function dkr(n,c,u){let d=[];return{options:Ikr(n,c,d,u),errors:d}}function pkr(n){return n&&kA(n)==="jsconfig.json"?{allowJs:!0,maxNodeModuleJsDepth:2,allowSyntheticDefaultImports:!0,skipLibCheck:!0,noEmit:!0}:{}}function fkr(n,c,u,d){let I=pkr(d);return $Rt(Qxr(),n,c,I,pke,u),d&&(I.configFilePath=df(d)),I}function T8e(n){return{enable:!!n&&kA(n)==="jsconfig.json",include:[],exclude:[]}}function Ikr(n,c,u,d){let I=T8e(d);return $Rt(Xxr(),n,c,I,Vxr,u),I}function m8i(n,c,u){return $Rt(Hxr(),n,c,void 0,y8e,u)}function $Rt(n,c,u,d,I,h){if(c){for(let b in c){let R=n.get(b);R?(d||(d={}))[R.name]=h4(R,c[b],u,h):h.push(HRt(b,I))}return d}}function gP(n,c,u,...d){return n&&c?Wb(n,c,u,...d):If(u,...d)}function h4(n,c,u,d,I,h,b){if(n.isCommandLineOnly){d.push(gP(b,I?.name,Z.Option_0_can_only_be_specified_on_command_line,n.name));return}if(zxr(n,c)){let R=n.type;if(R==="list"&&Na(c))return mkr(n,c,u,d,I,h,b);if(R==="listOrElement")return Na(c)?mkr(n,c,u,d,I,h,b):h4(n.element,c,u,d,I,h,b);if(!Ya(n.type))return Ckr(n,c,d,h,b);let N=X6(n,c,d,h,b);return i_e(N)?N:h8i(n,u,N)}else d.push(gP(b,h,Z.Compiler_option_0_requires_a_value_of_type_1,n.name,b8e(n)))}function h8i(n,c,u){return n.isFilePath&&(u=df(u),u=w8e(u)?u:Qc(u,c),u===""&&(u=".")),u}function X6(n,c,u,d,I){var h;if(i_e(c))return;let b=(h=n.extraValidation)==null?void 0:h.call(n,c);if(!b)return c;u.push(gP(I,d,...b))}function Ckr(n,c,u,d,I){if(i_e(c))return;let h=c.toLowerCase(),b=n.type.get(h);if(b!==void 0)return X6(n,b,u,d,I);u.push(kxr(n,(R,...N)=>gP(I,d,R,...N)))}function mkr(n,c,u,d,I,h,b){return Gt(Ot(c,(R,N)=>h4(n.element,R,u,d,I,h?.elements[N],b)),R=>n.listPreserveFalsyValues?!0:!!R)}var _8i=/(^|\/)\*\*\/?$/,y8i=/^[^*?]*(?=\/[^/]*[*?])/;function $le(n,c,u,d,I=v){c=Mc(c);let h=rA(d.useCaseSensitiveFileNames),b=new Map,R=new Map,N=new Map,{validatedFilesSpec:V,validatedIncludeSpecs:P,validatedExcludeSpecs:Q}=n,te=b6(u,I),re=Hee(u,te);if(V)for(let Be of V){let Fe=Qc(Be,c);b.set(h(Fe),Fe)}let ue;if(P&&P.length>0)for(let Be of d.readDirectory(c,or(re),Q,P,void 0)){if(Ad(Be,".json")){if(!ue){let Me=P.filter(lt=>fl(lt,".json")),De=Ot(ule(Me,c,"files"),lt=>`^${lt}$`);ue=De?De.map(lt=>TG(lt,d.useCaseSensitiveFileNames)):v}if(ke(ue,Me=>Me.test(Be))!==-1){let Me=h(Be);!b.has(Me)&&!N.has(Me)&&N.set(Me,Be)}continue}if(B8i(Be,b,R,te,h))continue;v8i(Be,R,te,h);let Fe=h(Be);!b.has(Fe)&&!R.has(Fe)&&R.set(Fe,Be)}let Ae=on(b.values()),de=on(R.values());return Ae.concat(de,on(N.values()))}function eDt(n,c,u,d,I){let{validatedFilesSpec:h,validatedIncludeSpecs:b,validatedExcludeSpecs:R}=c;if(!O(b)||!O(R))return!1;u=Mc(u);let N=rA(d);if(h){for(let V of h)if(N(Qc(V,u))===n)return!1}return _kr(n,R,d,I,u)}function hkr(n){let c=uc(n,"**/")?0:n.indexOf("/**/");return c===-1?!1:(fl(n,"/..")?n.length:n.lastIndexOf("/../"))>c}function bke(n,c,u,d){return _kr(n,Gt(c,I=>!hkr(I)),u,d)}function _kr(n,c,u,d,I){let h=_6(c,Do(Mc(d),I),"exclude"),b=h&&TG(h,u);return b?b.test(n)?!0:!S1(n)&&b.test(dA(n)):!1}function ykr(n,c,u,d,I){return n.filter(b=>{if(!Ya(b))return!1;let R=tDt(b,u);return R!==void 0&&c.push(h(...R)),R===void 0});function h(b,R){let N=dce(d,I,R);return gP(d,N,b,R)}}function tDt(n,c){if(w.assert(typeof n=="string"),c&&_8i.test(n))return[Z.File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,n];if(hkr(n))return[Z.File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,n]}function b8i({validatedIncludeSpecs:n,validatedExcludeSpecs:c},u,d){let I=_6(c,u,"exclude"),h=I&&new RegExp(I,d?"":"i"),b={},R=new Map;if(n!==void 0){let N=[];for(let V of n){let P=Mc(Do(u,V));if(h&&h.test(P))continue;let Q=E8i(P,d);if(Q){let{key:te,path:re,flags:ue}=Q,Ae=R.get(te),de=Ae!==void 0?b[Ae]:void 0;(de===void 0||defp(n,b)?b:void 0);if(!h)return!1;for(let b of h){if(Ad(n,b)&&(b!==".ts"||!Ad(n,".d.ts")))return!1;let R=I(NG(n,b));if(c.has(R)||u.has(R)){if(b===".d.ts"&&(Ad(n,".js")||Ad(n,".jsx")))continue;return!0}}return!1}function v8i(n,c,u,d){let I=X(u,h=>fp(n,h)?h:void 0);if(I)for(let h=I.length-1;h>=0;h--){let b=I[h];if(Ad(n,b))return;let R=d(NG(n,b));c.delete(R)}}function nDt(n){let c={};for(let u in n)if(Qa(n,u)){let d=m8e(u);d!==void 0&&(c[u]=iDt(n[u],d))}return c}function iDt(n,c){if(n===void 0)return n;switch(c.type){case"object":return"";case"string":return"";case"number":return typeof n=="number"?n:"";case"boolean":return typeof n=="boolean"?n:"";case"listOrElement":if(!Na(n))return iDt(n,c.element);case"list":let u=c.element;return Na(n)?tr(n,d=>iDt(d,u)):"";default:return UC(c.type,(d,I)=>{if(d===n)return I})}}function sDt(n){switch(n.type){case"number":return 1;case"boolean":return!0;case"string":let c=n.defaultValueDescription;return n.isFilePath?`./${c&&typeof c=="string"?c:""}`:"";case"list":return[];case"listOrElement":return sDt(n.element);case"object":return{};default:let u=ka(n.type.keys());return u!==void 0?u:w.fail("Expected 'option.type' to have entries.")}}function EV(n){if(typeof process.versions.pnp>"u")return;let{findPnpApi:c}=xt("module");if(c)return c(`${n}/`)}function bkr(n){var c;return(c=EV(n))==null?void 0:c.resolveRequest("pnpapi",null)}function Ekr(n){let c=EV(n);if(!c)return[];n=$_(n);let u=c.findPackageLocator(`${n}/`);if(!u)return[];let{packageDependencies:d}=c.getPackageInformation(u),I=[];for(let[h,b]of Array.from(d.entries()))if(h.startsWith("@types/")&&b!==null){let R=c.getLocator(h,b),{packageLocation:N}=c.getPackageInformation(R);I.push(oa(N))}return I}function S8i(n,c){let u=EV(n),d=u.findPackageLocator(n),I=u.findPackageLocator(c);if(I===null)return!1;let h=u.getPackageInformation(d),b=h.packageDependencies.get(I.name);if(b)return b===I.reference;for(let R of h.packageDependencies.values())if(Array.isArray(R)&&R[0]===I.name&&R[1]===I.reference)return!0;return!1}function Tl(n,c,...u){n.trace(U5(c,...u))}function WG(n,c){return!!n.traceResolution&&c.trace!==void 0}function J6(n,c,u){let d;if(c&&n){let I=n.contents.packageJsonContent;typeof I.name=="string"&&typeof I.version=="string"&&(d={name:I.name,subModuleName:c.path.slice(n.packageDirectory.length+$u.length),version:I.version,peerDependencies:K8i(n,u)})}return c&&{path:c.path,extension:c.ext,packageId:d,resolvedUsingTsExtension:c.resolvedUsingTsExtension}}function N8e(n){return J6(void 0,n,void 0)}function Bkr(n){if(n)return w.assert(n.packageId===void 0),{path:n.path,ext:n.extension,resolvedUsingTsExtension:n.resolvedUsingTsExtension}}function Eke(n){let c=[];return n&1&&c.push("TypeScript"),n&2&&c.push("JavaScript"),n&4&&c.push("Declaration"),n&8&&c.push("JSON"),c.join(", ")}function w8i(n){let c=[];return n&1&&c.push(...Ile),n&2&&c.push(...r4),n&4&&c.push(...fle),n&8&&c.push(".json"),c}function oDt(n){if(n)return w.assert(Cle(n.extension)),{fileName:n.path,packageId:n.packageId}}function vkr(n,c,u,d,I,h,b,R,N){if(!b.resultFromCache&&!b.compilerOptions.preserveSymlinks&&c&&u&&!c.originalPath&&!Ul(n)){let{resolvedFileName:V,originalPath:P}=wkr(c.path,b.host,b.traceEnabled);P&&(c={...c,path:V,originalPath:P})}return Skr(c,u,d,I,h,b.resultFromCache,R,N)}function Skr(n,c,u,d,I,h,b,R){return h?b?.isReadonly?{...h,failedLookupLocations:aDt(h.failedLookupLocations,u),affectingLocations:aDt(h.affectingLocations,d),resolutionDiagnostics:aDt(h.resolutionDiagnostics,I)}:(h.failedLookupLocations=_te(h.failedLookupLocations,u),h.affectingLocations=_te(h.affectingLocations,d),h.resolutionDiagnostics=_te(h.resolutionDiagnostics,I),h):{resolvedModule:n&&{resolvedFileName:n.path,originalPath:n.originalPath===!0?void 0:n.originalPath,extension:n.extension,isExternalLibraryImport:c,packageId:n.packageId,resolvedUsingTsExtension:!!n.resolvedUsingTsExtension},failedLookupLocations:eue(u),affectingLocations:eue(d),resolutionDiagnostics:eue(I),alternateResult:R}}function eue(n){return n.length?n:void 0}function _te(n,c){return c?.length?n?.length?(n.push(...c),n):c:n}function aDt(n,c){return n?.length?c.length?[...n,...c]:n.slice():eue(c)}function cDt(n,c,u,d){if(!Qa(n,c)){d.traceEnabled&&Tl(d.host,Z.package_json_does_not_have_a_0_field,c);return}let I=n[c];if(typeof I!==u||I===null){d.traceEnabled&&Tl(d.host,Z.Expected_type_of_0_field_in_package_json_to_be_1_got_2,c,u,I===null?"null":typeof I);return}return I}function R8e(n,c,u,d){let I=cDt(n,c,"string",d);if(I===void 0)return;if(!I){d.traceEnabled&&Tl(d.host,Z.package_json_had_a_falsy_0_field,c);return}let h=Mc(Do(u,I));return d.traceEnabled&&Tl(d.host,Z.package_json_has_0_field_1_that_references_2,c,I,h),h}function T8i(n,c,u){return R8e(n,"typings",c,u)||R8e(n,"types",c,u)}function N8i(n,c,u){return R8e(n,"tsconfig",c,u)}function R8i(n,c,u){return R8e(n,"main",c,u)}function D8i(n,c){let u=cDt(n,"typesVersions","object",c);if(u!==void 0)return c.traceEnabled&&Tl(c.host,Z.package_json_has_a_typesVersions_field_with_version_specific_path_mappings),u}function x8i(n,c){let u=D8i(n,c);if(u===void 0)return;if(c.traceEnabled)for(let b in u)Qa(u,b)&&!Jc.tryParse(b)&&Tl(c.host,Z.package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range,b);let d=Bke(u);if(!d){c.traceEnabled&&Tl(c.host,Z.package_json_does_not_have_a_typesVersions_entry_that_matches_version_0,m);return}let{version:I,paths:h}=d;if(typeof h!="object"){c.traceEnabled&&Tl(c.host,Z.Expected_type_of_0_field_in_package_json_to_be_1_got_2,`typesVersions['${I}']`,"object",typeof h);return}return d}var lDt;function Bke(n){lDt||(lDt=new Dn(y));for(let c in n){if(!Qa(n,c))continue;let u=Jc.tryParse(c);if(u!==void 0&&u.test(lDt))return{version:c,paths:n[c]}}}function tue(n,c){if(n.typeRoots)return n.typeRoots;let u;if(n.configFilePath?u=oa(n.configFilePath):c.getCurrentDirectory&&(u=c.getCurrentDirectory()),u!==void 0)return Z8i(u)}function k8i(n){let c;return sI(Mc(n),u=>{let d=Do(u,G8i);(c??(c=[])).push(d)}),c}var G8i=Do("node_modules","@types");function F8i(n,c,u){let d=typeof u.useCaseSensitiveFileNames=="function"?u.useCaseSensitiveFileNames():u.useCaseSensitiveFileNames;return dh(n,c,!d)===0}function Z8i(n){let c=k8i(n),u=Ekr(n);if(c?.length)return[...c,...u];if(u.length)return u}function wkr(n,c,u){let d=Fkr(n,c,u),I=F8i(n,d,c);return{resolvedFileName:I?n:d,originalPath:I?void 0:n}}function Tkr(n,c,u){let d=fl(n,"/node_modules/@types")||fl(n,"/node_modules/@types/")?EDt(c,u):c;return Do(n,d)}function uDt(n,c,u,d,I,h,b){w.assert(typeof n=="string","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.");let R=WG(u,d);I&&(u=I.commandLine.options);let N=c?oa(c):void 0,V=N?h?.getFromDirectoryCache(n,b,N,I):void 0;if(!V&&N&&!Ul(n)&&(V=h?.getFromNonRelativeNameCache(n,b,N,I)),V)return R&&(Tl(d,Z.Resolving_type_reference_directive_0_containing_file_1,n,c),I&&Tl(d,Z.Using_compiler_options_of_project_reference_redirect_0,I.sourceFile.fileName),Tl(d,Z.Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1,n,N),De(V)),V;let P=tue(u,d);R&&(c===void 0?P===void 0?Tl(d,Z.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set,n):Tl(d,Z.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1,n,P):P===void 0?Tl(d,Z.Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set,n,c):Tl(d,Z.Resolving_type_reference_directive_0_containing_file_1_root_directory_2,n,c,P),I&&Tl(d,Z.Using_compiler_options_of_project_reference_redirect_0,I.sourceFile.fileName));let Q=[],te=[],re=gDt(u);b!==void 0&&(re|=30);let ue=o0(u);b===99&&3<=ue&&ue<=99&&(re|=32);let Ae=re&8?BV(u,b):[],de=[],Be={compilerOptions:u,host:d,traceEnabled:R,failedLookupLocations:Q,affectingLocations:te,packageJsonInfoCache:h,features:re,conditions:Ae,requestContainingDirectory:N,reportDiagnostic:je=>void de.push(je),isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1},Fe=lt(),Ne=!0;Fe||(Fe=Le(),Ne=!1);let Me;if(Fe){let{fileName:je,packageId:st}=Fe,nt=je,qe;u.preserveSymlinks||({resolvedFileName:nt,originalPath:qe}=wkr(je,d,R)),Me={primary:Ne,resolvedFileName:nt,originalPath:qe,packageId:st,isExternalLibraryImport:AP(je)}}return V={resolvedTypeReferenceDirective:Me,failedLookupLocations:eue(Q),affectingLocations:eue(te),resolutionDiagnostics:eue(de)},N&&h&&!h.isReadonly&&(h.getOrCreateCacheForDirectory(N,I).set(n,b,V),Ul(n)||h.getOrCreateCacheForNonRelativeName(n,b,I).set(N,V)),R&&De(V),V;function De(je){var st;(st=je.resolvedTypeReferenceDirective)!=null&&st.resolvedFileName?je.resolvedTypeReferenceDirective.packageId?Tl(d,Z.Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3,n,je.resolvedTypeReferenceDirective.resolvedFileName,JR(je.resolvedTypeReferenceDirective.packageId),je.resolvedTypeReferenceDirective.primary):Tl(d,Z.Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2,n,je.resolvedTypeReferenceDirective.resolvedFileName,je.resolvedTypeReferenceDirective.primary):Tl(d,Z.Type_reference_directive_0_was_not_resolved,n)}function lt(){if(P&&P.length)return R&&Tl(d,Z.Resolving_with_primary_search_path_0,P.join(", ")),le(P,je=>{let st=Tkr(je,n,Be),nt=G1(je,d);if(!nt&&R&&Tl(d,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,je),u.typeRoots){let qe=Ete(4,st,!nt,Be);if(qe){let it=o_e(qe.path),It=it?vV(it,!1,Be):void 0;return oDt(J6(It,qe,Be))}}return oDt(_Dt(4,st,!nt,Be))});R&&Tl(d,Z.Root_directory_cannot_be_determined_skipping_primary_search_paths)}function Le(){let je=c&&oa(c);if(je!==void 0){let st;if(!u.typeRoots||!fl(c,mue))if(R&&Tl(d,Z.Looking_up_in_node_modules_folder_initial_location_0,je),Ul(n)){let{path:nt}=Gkr(je,n);st=F8e(4,nt,!1,Be,!0)}else{let nt=Mkr(4,n,je,Be,void 0,void 0);st=nt&&nt.value}else R&&Tl(d,Z.Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_node_modules_folder);return oDt(st)}else R&&Tl(d,Z.Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder)}}function gDt(n){let c=0;switch(o0(n)){case 3:c=30;break;case 99:c=30;break;case 100:c=30;break}return n.resolvePackageJsonExports?c|=8:n.resolvePackageJsonExports===!1&&(c&=-9),n.resolvePackageJsonImports?c|=2:n.resolvePackageJsonImports===!1&&(c&=-3),c}function BV(n,c){let u=o0(n);if(c===void 0){if(u===100)c=99;else if(u===2)return[]}let d=c===99?["import"]:["require"];return n.noDtsResolution||d.push("types"),u!==100&&d.push("node"),vi(d,n.customConditions)}function D8e(n,c,u,d,I){let h=nue(I?.getPackageJsonInfoCache(),d,u),b=EV(c);if(b)try{let R=b.resolveToUnqualified(n,`${c}/`,{considerBuiltins:!1}),N=df(R).replace(/\/$/,"");return vV(N,!1,h)}catch{return}return sI(c,R=>{if(kA(R)!=="node_modules"){let N=Do(R,"node_modules"),V=Do(N,n);return vV(V,!1,h)}})}function vke(n,c){if(n.types)return n.types;let u=[];if(c.directoryExists&&c.getDirectories){let d=tue(n,c);if(d){for(let I of d)if(c.directoryExists(I))for(let h of c.getDirectories(I)){let b=Mc(h),R=Do(I,b,"package.json");if(!(c.fileExists(R)&&lV(R,c).typings===null)){let V=kA(b);V.charCodeAt(0)!==46&&u.push(V)}}}}return u}function Ske(n){return!!n?.contents}function ADt(n){return!!n&&!n.contents}function dDt(n){var c;if(n===null||typeof n!="object")return""+n;if(Na(n))return`[${(c=n.map(d=>dDt(d)))==null?void 0:c.join(",")}]`;let u="{";for(let d in n)Qa(n,d)&&(u+=`${d}: ${dDt(n[d])}`);return u+"}"}function x8e(n,c){return c.map(u=>dDt(ale(n,u))).join("|")+`|${n.pathsBasePath}`}function k8e(n,c){let u=new Map,d=new Map,I=new Map;return n&&u.set(n,I),{getMapOfCacheRedirects:h,getOrCreateMapOfCacheRedirects:b,update:R,clear:V,getOwnMap:()=>I};function h(Q){return Q?N(Q.commandLine.options,!1):I}function b(Q){return Q?N(Q.commandLine.options,!0):I}function R(Q){n!==Q&&(n?I=N(Q,!0):u.set(Q,I),n=Q)}function N(Q,te){let re=u.get(Q);if(re)return re;let ue=P(Q);if(re=d.get(ue),!re){if(n){let Ae=P(n);Ae===ue?re=I:d.has(Ae)||d.set(Ae,I)}te&&(re??(re=new Map)),re&&d.set(ue,re)}return re&&u.set(Q,re),re}function V(){let Q=n&&c.get(n);I.clear(),u.clear(),c.clear(),d.clear(),n&&(Q&&c.set(n,Q),u.set(n,I))}function P(Q){let te=c.get(Q);return te||c.set(Q,te=x8e(Q,d8e)),te}}function L8i(n,c){let u;return{getPackageJsonInfo:d,setPackageJsonInfo:I,clear:h,getInternalMap:b};function d(R){return u?.get(AA(R,n,c))}function I(R,N){(u||(u=new Map)).set(AA(R,n,c),N)}function h(){u=void 0}function b(){return u}}function Nkr(n,c,u,d){let I=n.getOrCreateMapOfCacheRedirects(c),h=I.get(u);return h||(h=d(),I.set(u,h)),h}function V8i(n,c,u,d){let I=k8e(u,d);return{getFromDirectoryCache:N,getOrCreateCacheForDirectory:R,clear:h,update:b,directoryToModuleNameMap:I};function h(){I.clear()}function b(V){I.update(V)}function R(V,P){let Q=AA(V,n,c);return Nkr(I,P,Q,()=>yte())}function N(V,P,Q,te){var re,ue;let Ae=AA(Q,n,c);return(ue=(re=I.getMapOfCacheRedirects(te))==null?void 0:re.get(Ae))==null?void 0:ue.get(V,P)}}function rue(n,c){return c===void 0?n:`${c}|${n}`}function yte(){let n=new Map,c=new Map,u={get(I,h){return n.get(d(I,h))},set(I,h,b){return n.set(d(I,h),b),u},delete(I,h){return n.delete(d(I,h)),u},has(I,h){return n.has(d(I,h))},forEach(I){return n.forEach((h,b)=>{let[R,N]=c.get(b);return I(h,R,N)})},size(){return n.size}};return u;function d(I,h){let b=rue(I,h);return c.set(b,[I,h]),b}}function W8i(n){return n.resolvedModule&&(n.resolvedModule.originalPath||n.resolvedModule.resolvedFileName)}function P8i(n){return n.resolvedTypeReferenceDirective&&(n.resolvedTypeReferenceDirective.originalPath||n.resolvedTypeReferenceDirective.resolvedFileName)}function O8i(n,c,u,d,I){let h=k8e(u,I);return{getFromNonRelativeNameCache:N,getOrCreateCacheForNonRelativeName:V,clear:b,update:R};function b(){h.clear()}function R(Q){h.update(Q)}function N(Q,te,re,ue){var Ae,de;return w.assert(!Ul(Q)),(de=(Ae=h.getMapOfCacheRedirects(ue))==null?void 0:Ae.get(rue(Q,te)))==null?void 0:de.get(re)}function V(Q,te,re){return w.assert(!Ul(Q)),Nkr(h,re,rue(Q,te),P)}function P(){let Q=new Map;return{get:te,set:re};function te(Ae){return Q.get(AA(Ae,n,c))}function re(Ae,de){let Be=AA(Ae,n,c);if(Q.has(Be))return;Q.set(Be,de);let Fe=d(de),Ne=Fe&&ue(Be,Fe),Me=Be;for(;Me!==Ne;){let De=oa(Me);if(De===Me||Q.has(De))break;Q.set(De,de),Me=De}}function ue(Ae,de){let Be=AA(oa(de),n,c),Fe=0,Ne=Math.min(Ae.length,Be.length);for(;Fed,clearAllExceptPackageJsonInfoCache:V,optionsToRedirectsKey:h};function N(){V(),d.clear()}function V(){b.clear(),R.clear()}function P(Q){b.update(Q),R.update(Q)}}function bte(n,c,u,d,I){let h=Rkr(n,c,u,d,W8i,I);return h.getOrCreateCacheForModuleName=(b,R,N)=>h.getOrCreateCacheForNonRelativeName(b,R,N),h}function wke(n,c,u,d,I){return Rkr(n,c,u,d,P8i,I)}function G8e(n){return{moduleResolution:2,traceResolution:n.traceResolution}}function Tke(n,c,u,d,I){return U6(n,c,G8e(u),d,I)}function Dkr(n,c,u,d){let I=oa(c);return u.getFromDirectoryCache(n,d,I,void 0)}function U6(n,c,u,d,I,h,b){var R,N,V;let P=WG(u,d);h&&(u=h.commandLine.options),P&&(Tl(d,Z.Resolving_module_0_from_1,n,c),h&&Tl(d,Z.Using_compiler_options_of_project_reference_redirect_0,h.sourceFile.fileName));let Q=oa(c),te=I?.getFromDirectoryCache(n,b,Q,h);if(te)P&&Tl(d,Z.Resolution_for_module_0_was_found_in_cache_from_location_1,n,Q);else{let re=u.moduleResolution;switch(re===void 0?(re=o0(u),P&&Tl(d,Z.Module_resolution_kind_is_not_specified_using_0,xb[re])):P&&Tl(d,Z.Explicitly_specified_module_resolution_kind_Colon_0,xb[re]),(R=jl)==null||R.logStartResolveModule(n),re){case 3:te=Y8i(n,c,u,d,I,h,b);break;case 99:te=X8i(n,c,u,d,I,h,b);break;case 2:te=CDt(n,c,u,d,I,h,b?BV(u,b):void 0);break;case 1:te=vDt(n,c,u,d,I,h);break;case 100:te=IDt(n,c,u,d,I,h,b?BV(u,b):void 0);break;default:return w.fail(`Unexpected moduleResolution: ${re}`)}te&&te.resolvedModule&&((N=jl)==null||N.logInfoEvent(`Module "${n}" resolved to "${te.resolvedModule.resolvedFileName}"`)),(V=jl)==null||V.logStopResolveModule(te&&te.resolvedModule?""+te.resolvedModule.resolvedFileName:"null"),I&&!I.isReadonly&&(I.getOrCreateCacheForDirectory(Q,h).set(n,b,te),Ul(n)||I.getOrCreateCacheForNonRelativeName(n,b,h).set(Q,te))}return P&&(te.resolvedModule?te.resolvedModule.packageId?Tl(d,Z.Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2,n,te.resolvedModule.resolvedFileName,JR(te.resolvedModule.packageId)):Tl(d,Z.Module_name_0_was_successfully_resolved_to_1,n,te.resolvedModule.resolvedFileName):Tl(d,Z.Module_name_0_was_not_resolved,n)),te}function xkr(n,c,u,d,I){let h=Q8i(n,c,d,I);return h?h.value:Ul(c)?M8i(n,c,u,d,I):H8i(n,c,d,I)}function Q8i(n,c,u,d){var I;let{baseUrl:h,paths:b,configFile:R}=d.compilerOptions;if(b&&!Qp(c)){d.traceEnabled&&(h&&Tl(d.host,Z.baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1,h,c),Tl(d.host,Z.paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0,c));let N=Zce(d.compilerOptions,d.host),V=R?.configFileSpecs?(I=R.configFileSpecs).pathPatterns||(I.pathPatterns=Xee(b)):void 0;return yDt(n,c,N,b,V,u,!1,d)}}function M8i(n,c,u,d,I){if(!I.compilerOptions.rootDirs)return;I.traceEnabled&&Tl(I.host,Z.rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0,c);let h=Mc(Do(u,c)),b,R;for(let N of I.compilerOptions.rootDirs){let V=Mc(N);fl(V,$u)||(V+=$u);let P=uc(h,V)&&(R===void 0||R.length(n[n.None=0]="None",n[n.Imports=2]="Imports",n[n.SelfName=4]="SelfName",n[n.Exports=8]="Exports",n[n.ExportsPatternTrailers=16]="ExportsPatternTrailers",n[n.AllFeatures=30]="AllFeatures",n[n.Node16Default=30]="Node16Default",n[n.NodeNextDefault=30]="NodeNextDefault",n[n.BundlerDefault=30]="BundlerDefault",n[n.EsmMode=32]="EsmMode",n))(fDt||{});function Y8i(n,c,u,d,I,h,b){return kkr(30,n,c,u,d,I,h,b)}function X8i(n,c,u,d,I,h,b){return kkr(30,n,c,u,d,I,h,b)}function kkr(n,c,u,d,I,h,b,R,N){let V=oa(u),P=R===99?32:0,Q=d.noDtsResolution?3:7;return uV(d)&&(Q|=8),s_e(n|P,c,V,d,I,h,Q,!1,b,N)}function J8i(n,c,u){return s_e(0,n,c,{moduleResolution:2,allowJs:!0},u,void 0,2,!1,void 0,void 0)}function IDt(n,c,u,d,I,h,b){let R=oa(c),N=u.noDtsResolution?3:7;return uV(u)&&(N|=8),s_e(gDt(u),n,R,u,d,I,N,!1,h,b)}function CDt(n,c,u,d,I,h,b,R){let N;return R?N=8:u.noDtsResolution?(N=3,uV(u)&&(N|=8)):N=uV(u)?15:7,s_e(b?30:0,n,oa(c),u,d,I,N,!!R,h,b)}function mDt(n,c,u){return s_e(30,n,oa(c),{moduleResolution:99},u,void 0,8,!0,void 0,void 0)}function s_e(n,c,u,d,I,h,b,R,N,V){var P,Q,te,re,ue;let Ae=WG(d,I),de=[],Be=[],Fe=o0(d);V??(V=BV(d,Fe===100||Fe===2?void 0:n&32?99:1));let Ne=[],Me={compilerOptions:d,host:I,traceEnabled:Ae,failedLookupLocations:de,affectingLocations:Be,packageJsonInfoCache:h,features:n,conditions:V??v,requestContainingDirectory:u,reportDiagnostic:je=>void Ne.push(je),isConfigLookup:R,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1};Ae&&j5(Fe)&&Tl(I,Z.Resolving_in_0_mode_with_conditions_1,n&32?"ESM":"CJS",Me.conditions.map(je=>`'${je}'`).join(", "));let De;if(Fe===2){let je=b&5,st=b&-6;De=je&&Le(je,Me)||st&&Le(st,Me)||void 0}else De=Le(b,Me);let lt;if(Me.resolvedPackageDirectory&&!R&&!Ul(c)){let je=De?.value&&b&5&&!Pkr(5,De.value.resolved.extension);if((P=De?.value)!=null&&P.isExternalLibraryImport&&je&&n&8&&V?.includes("import")){SV(Me,Z.Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_if_npm_library_needs_configuration_update);let st={...Me,features:Me.features&-9,reportDiagnostic:oc},nt=Le(b&5,st);(Q=nt?.value)!=null&&Q.isExternalLibraryImport&&(lt=nt.value.resolved.path)}else if((!De?.value||je)&&Fe===2){SV(Me,Z.Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_need_configuration_update);let st={...Me.compilerOptions,moduleResolution:100},nt={...Me,compilerOptions:st,features:30,conditions:BV(st),reportDiagnostic:oc},qe=Le(b&5,nt);(te=qe?.value)!=null&&te.isExternalLibraryImport&&(lt=qe.value.resolved.path)}}return vkr(c,(re=De?.value)==null?void 0:re.resolved,(ue=De?.value)==null?void 0:ue.isExternalLibraryImport,de,Be,Ne,Me,h,lt);function Le(je,st){let qe=xkr(je,c,u,(it,It,dt,Tt)=>F8e(it,It,dt,Tt,!0),st);if(qe)return O1({resolved:qe,isExternalLibraryImport:AP(qe.path)});if(Ul(c)){let{path:it,parts:It}=Gkr(u,c),dt=F8e(je,it,!1,st,!0);return dt&&O1({resolved:dt,isExternalLibraryImport:Ue(It,"node_modules")})}else{let it;if(n&2&&uc(c,"#")&&(it=$8i(je,c,u,st,h,N)),!it&&n&4&&(it=q8i(je,c,u,st,h,N)),!it){if(c.includes(":")){Ae&&Tl(I,Z.Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1,c,Eke(je));return}Ae&&Tl(I,Z.Loading_module_0_from_node_modules_folder_target_file_types_Colon_1,c,Eke(je)),it=Mkr(je,c,u,st,h,N)}return je&4&&(it??(it=Ukr(c,st))),it&&{value:it.value&&{resolved:it.value,isExternalLibraryImport:!0}}}}}function Gkr(n,c){let u=Do(n,c),d=dd(u),I=zo(d);return{path:I==="."||I===".."?dA(Mc(u)):Mc(u),parts:d}}function Fkr(n,c,u){if(!c.realpath)return n;let d=Mc(c.realpath(n));return u&&Tl(c,Z.Resolving_real_path_for_0_result_1,n,d),d}function F8e(n,c,u,d,I){if(d.traceEnabled&&Tl(d.host,Z.Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1,c,Eke(n)),!S_(c)){if(!u){let b=oa(c);G1(b,d.host)||(d.traceEnabled&&Tl(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,b),u=!0)}let h=Ete(n,c,u,d);if(h){let b=I?o_e(h.path):void 0,R=b?vV(b,!1,d):void 0;return J6(R,h,d)}}if(u||G1(c,d.host)||(d.traceEnabled&&Tl(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,c),u=!0),!(d.features&32))return _Dt(n,c,u,d,I)}var Kx="/node_modules/";function AP(n){return n.includes(Kx)}function o_e(n,c){let u=Mc(n),d=u.lastIndexOf(Kx);if(d===-1)return;let I=d+Kx.length,h=Zkr(u,I,c);return u.charCodeAt(I)===64&&(h=Zkr(u,h,c)),u.slice(0,h)}function Zkr(n,c,u){let d=n.indexOf($u,c+1);return d===-1?u?n.length:c:d}function hDt(n,c,u,d){return N8e(Ete(n,c,u,d))}function Ete(n,c,u,d){let I=Lkr(n,c,u,d);if(I)return I;if(!(d.features&32)){let h=Vkr(c,n,"",u,d);if(h)return h}}function Lkr(n,c,u,d){if(!kA(c).includes("."))return;let h=a0(c);h===c&&(h=c.substring(0,c.lastIndexOf(".")));let b=c.substring(h.length);return d.traceEnabled&&Tl(d.host,Z.File_name_0_has_a_1_extension_stripping_it,c,b),Vkr(h,n,b,u,d)}function Z8e(n,c,u,d){return n&1&&fp(c,Ile)||n&4&&fp(c,fle)?L8e(c,u,d)!==void 0?{path:c,ext:Mce(c),resolvedUsingTsExtension:void 0}:void 0:d.isConfigLookup&&n===8&&Ad(c,".json")?L8e(c,u,d)!==void 0?{path:c,ext:".json",resolvedUsingTsExtension:void 0}:void 0:Lkr(n,c,u,d)}function Vkr(n,c,u,d,I){if(!d){let b=oa(n);b&&(d=!G1(b,I.host))}switch(u){case".mjs":case".mts":case".d.mts":return c&1&&h(".mts",u===".mts"||u===".d.mts")||c&4&&h(".d.mts",u===".mts"||u===".d.mts")||c&2&&h(".mjs")||void 0;case".cjs":case".cts":case".d.cts":return c&1&&h(".cts",u===".cts"||u===".d.cts")||c&4&&h(".d.cts",u===".cts"||u===".d.cts")||c&2&&h(".cjs")||void 0;case".json":return c&4&&h(".d.json.ts")||c&8&&h(".json")||void 0;case".tsx":case".jsx":return c&1&&(h(".tsx",u===".tsx")||h(".ts",u===".tsx"))||c&4&&h(".d.ts",u===".tsx")||c&2&&(h(".jsx")||h(".js"))||void 0;case".ts":case".d.ts":case".js":case"":return c&1&&(h(".ts",u===".ts"||u===".d.ts")||h(".tsx",u===".ts"||u===".d.ts"))||c&4&&h(".d.ts",u===".ts"||u===".d.ts")||c&2&&(h(".js")||h(".jsx"))||I.isConfigLookup&&h(".json")||void 0;default:return c&4&&!Gh(n+u)&&h(`.d${u}.ts`)||void 0}function h(b,R){let N=L8e(n+b,d,I);return N===void 0?void 0:{path:N,ext:b,resolvedUsingTsExtension:!I.candidateIsFromPackageJsonField&&R}}}function L8e(n,c,u){var d;if(!((d=u.compilerOptions.moduleSuffixes)!=null&&d.length))return Wkr(n,c,u);let I=_N(n)??"",h=I?n4(n,I):n;return X(u.compilerOptions.moduleSuffixes,b=>Wkr(h+b+I,c,u))}function Wkr(n,c,u){var d;if(!c){if(u.host.fileExists(n))return u.traceEnabled&&Tl(u.host,Z.File_0_exists_use_it_as_a_name_resolution_result,n),n;u.traceEnabled&&Tl(u.host,Z.File_0_does_not_exist,n)}(d=u.failedLookupLocations)==null||d.push(n)}function _Dt(n,c,u,d,I=!0){let h=I?vV(c,u,d):void 0,b=h&&h.contents.packageJsonContent,R=h&&Nke(h,d);return J6(h,W8e(n,c,u,d,b,R),d)}function V8e(n,c,u,d,I){if(!I&&n.contents.resolvedEntrypoints!==void 0)return n.contents.resolvedEntrypoints;let h,b=5|(I?2:0),R=gDt(c),N=nue(d?.getPackageJsonInfoCache(),u,c);N.conditions=BV(c),N.requestContainingDirectory=n.packageDirectory;let V=W8e(b,n.packageDirectory,!1,N,n.contents.packageJsonContent,Nke(n,N));if(h=Yr(h,V?.path),R&8&&n.contents.packageJsonContent.exports){let P=NA([BV(c,99),BV(c,1)],Cn);for(let Q of P){let te={...N,failedLookupLocations:[],conditions:Q,host:u},re=U8i(n,n.contents.packageJsonContent.exports,te,b);if(re)for(let ue of re)h=og(h,ue.path)}}return n.contents.resolvedEntrypoints=h||!1}function U8i(n,c,u,d){let I;if(Na(c))for(let b of c)h(b);else if(typeof c=="object"&&c!==null&&Rke(c))for(let b in c)h(c[b]);else h(c);return I;function h(b){var R,N;if(typeof b=="string"&&uc(b,"./"))if(b.includes("*")&&u.host.readDirectory){if(b.indexOf("*")!==b.lastIndexOf("*"))return!1;u.host.readDirectory(n.packageDirectory,w8i(d),void 0,[Cy(tM(b,"**/*"),".*")]).forEach(V=>{I=og(I,{path:V,ext:NE(V),resolvedUsingTsExtension:void 0})})}else{let V=dd(b).slice(2);if(V.includes("..")||V.includes(".")||V.includes("node_modules"))return!1;let P=Do(n.packageDirectory,b),Q=Qc(P,(N=(R=u.host).getCurrentDirectory)==null?void 0:N.call(R)),te=Z8e(d,Q,!1,u);if(te)return I=og(I,te,(re,ue)=>re.path===ue.path),!0}else if(Array.isArray(b)){for(let V of b)if(h(V))return!0}else if(typeof b=="object"&&b!==null)return X(Gl(b),V=>{if(V==="default"||Ue(u.conditions,V)||c_e(u.conditions,V))return h(b[V]),!0})}}function nue(n,c,u){return{host:c,compilerOptions:u,traceEnabled:WG(u,c),failedLookupLocations:void 0,affectingLocations:void 0,packageJsonInfoCache:n,features:0,conditions:v,requestContainingDirectory:void 0,reportDiagnostic:oc,isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1}}function iue(n,c){let u=dd(n);for(u.pop();u.length>0;){let d=vV(Iy(u),!1,c);if(d)return d;u.pop()}}function Nke(n,c){return n.contents.versionPaths===void 0&&(n.contents.versionPaths=x8i(n.contents.packageJsonContent,c)||!1),n.contents.versionPaths||void 0}function K8i(n,c){return n.contents.peerDependencies===void 0&&(n.contents.peerDependencies=j8i(n,c)||!1),n.contents.peerDependencies||void 0}function j8i(n,c){let u=cDt(n.contents.packageJsonContent,"peerDependencies","object",c);if(u===void 0)return;c.traceEnabled&&Tl(c.host,Z.package_json_has_a_peerDependencies_field);let d=Fkr(n.packageDirectory,c.host,c.traceEnabled),I=d.substring(0,d.lastIndexOf("node_modules")+12)+$u,h="";for(let b in u)if(Qa(u,b)){let R=vV(I+b,!1,c);if(R){let N=R.contents.packageJsonContent.version;h+=`+${b}@${N}`,c.traceEnabled&&Tl(c.host,Z.Found_peerDependency_0_with_1_version,b,N)}else c.traceEnabled&&Tl(c.host,Z.Failed_to_find_peerDependency_0,b)}return h}function vV(n,c,u){var d,I,h,b,R,N;let{host:V,traceEnabled:P}=u,Q=Do(n,"package.json");if(c){(d=u.failedLookupLocations)==null||d.push(Q);return}let te=(I=u.packageJsonInfoCache)==null?void 0:I.getPackageJsonInfo(Q);if(te!==void 0){if(Ske(te))return P&&Tl(V,Z.File_0_exists_according_to_earlier_cached_lookups,Q),(h=u.affectingLocations)==null||h.push(Q),te.packageDirectory===n?te:{packageDirectory:n,contents:te.contents};te.directoryExists&&P&&Tl(V,Z.File_0_does_not_exist_according_to_earlier_cached_lookups,Q),(b=u.failedLookupLocations)==null||b.push(Q);return}let re=G1(n,V);if(re&&V.fileExists(Q)){let ue=lV(Q,V);P&&Tl(V,Z.Found_package_json_at_0,Q);let Ae={packageDirectory:n,contents:{packageJsonContent:ue,versionPaths:void 0,resolvedEntrypoints:void 0,peerDependencies:void 0}};return u.packageJsonInfoCache&&!u.packageJsonInfoCache.isReadonly&&u.packageJsonInfoCache.setPackageJsonInfo(Q,Ae),(R=u.affectingLocations)==null||R.push(Q),Ae}else re&&P&&Tl(V,Z.File_0_does_not_exist,Q),u.packageJsonInfoCache&&!u.packageJsonInfoCache.isReadonly&&u.packageJsonInfoCache.setPackageJsonInfo(Q,{packageDirectory:n,directoryExists:re}),(N=u.failedLookupLocations)==null||N.push(Q)}function W8e(n,c,u,d,I,h){let b;I&&(d.isConfigLookup?b=N8i(I,c,d):b=n&4&&T8i(I,c,d)||n&7&&R8i(I,c,d)||void 0);let R=(te,re,ue,Ae)=>{let de=Z8e(te,re,ue,Ae);if(de)return N8e(de);let Be=te===4?5:te,Fe=Ae.features,Ne=Ae.candidateIsFromPackageJsonField;Ae.candidateIsFromPackageJsonField=!0,I?.type!=="module"&&(Ae.features&=-33);let Me=F8e(Be,re,ue,Ae,!1);return Ae.features=Fe,Ae.candidateIsFromPackageJsonField=Ne,Me},N=b?!G1(oa(b),d.host):void 0,V=u||!G1(c,d.host),P=Do(c,d.isConfigLookup?"tsconfig":"index");if(h&&(!b||vg(c,b))){let te=Ip(c,b||P,!1);d.traceEnabled&&Tl(d.host,Z.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,h.version,y,te);let re=yDt(n,te,c,h.paths,void 0,R,N||V,d);if(re)return Bkr(re.value)}let Q=b&&Bkr(R(n,b,N,d));if(Q)return Q;if(!(d.features&32))return Ete(n,P,V,d)}function Pkr(n,c){return n&2&&(c===".js"||c===".jsx"||c===".mjs"||c===".cjs")||n&1&&(c===".ts"||c===".tsx"||c===".mts"||c===".cts")||n&4&&(c===".d.ts"||c===".d.mts"||c===".d.cts")||n&8&&c===".json"||!1}function a_e(n){let c=n.indexOf($u);return n[0]==="@"&&(c=n.indexOf($u,c+1)),c===-1?{packageName:n,rest:""}:{packageName:n.slice(0,c),rest:n.slice(c+1)}}function Rke(n){return he(Gl(n),c=>uc(c,"."))}function z8i(n){return!lr(Gl(n),c=>uc(c,"."))}function q8i(n,c,u,d,I,h){var b,R;let N=Qc(Do(u,"dummy"),(R=(b=d.host).getCurrentDirectory)==null?void 0:R.call(b)),V=iue(N,d);if(!V||!V.contents.packageJsonContent.exports||typeof V.contents.packageJsonContent.name!="string")return;let P=dd(c),Q=dd(V.contents.packageJsonContent.name);if(!he(Q,(de,Be)=>P[Be]===de))return;let te=P.slice(Q.length),re=O(te)?`.${$u}${te.join($u)}`:".";if(wG(d.compilerOptions)&&!AP(u))return P8e(V,n,re,d,I,h);let ue=n&5,Ae=n&-6;return P8e(V,ue,re,d,I,h)||P8e(V,Ae,re,d,I,h)}function P8e(n,c,u,d,I,h){if(n.contents.packageJsonContent.exports){if(u==="."){let b;if(typeof n.contents.packageJsonContent.exports=="string"||Array.isArray(n.contents.packageJsonContent.exports)||typeof n.contents.packageJsonContent.exports=="object"&&z8i(n.contents.packageJsonContent.exports)?b=n.contents.packageJsonContent.exports:Qa(n.contents.packageJsonContent.exports,".")&&(b=n.contents.packageJsonContent.exports["."]),b)return Qkr(c,d,I,h,u,n,!1)(b,"",!1,".")}else if(Rke(n.contents.packageJsonContent.exports)){if(typeof n.contents.packageJsonContent.exports!="object")return d.traceEnabled&&Tl(d.host,Z.Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1,u,n.packageDirectory),O1(void 0);let b=Okr(c,d,I,h,u,n.contents.packageJsonContent.exports,n,!1);if(b)return b}return d.traceEnabled&&Tl(d.host,Z.Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1,u,n.packageDirectory),O1(void 0)}}function $8i(n,c,u,d,I,h){var b,R;if(c==="#"||uc(c,"#/"))return d.traceEnabled&&Tl(d.host,Z.Invalid_import_specifier_0_has_no_possible_resolutions,c),O1(void 0);let N=Qc(Do(u,"dummy"),(R=(b=d.host).getCurrentDirectory)==null?void 0:R.call(b)),V=iue(N,d);if(!V)return d.traceEnabled&&Tl(d.host,Z.Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve,N),O1(void 0);if(!V.contents.packageJsonContent.imports)return d.traceEnabled&&Tl(d.host,Z.package_json_scope_0_has_no_imports_defined,V.packageDirectory),O1(void 0);let P=Okr(n,d,I,h,c,V.contents.packageJsonContent.imports,V,!0);return P||(d.traceEnabled&&Tl(d.host,Z.Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1,c,V.packageDirectory),O1(void 0))}function O8e(n,c){let u=n.indexOf("*"),d=c.indexOf("*"),I=u===-1?n.length:u+1,h=d===-1?c.length:d+1;return I>h?-1:h>I||u===-1?1:d===-1||n.length>c.length?-1:c.length>n.length?1:0}function Okr(n,c,u,d,I,h,b,R){let N=Qkr(n,c,u,d,I,b,R);if(!fl(I,$u)&&!I.includes("*")&&Qa(h,I)){let Q=h[I];return N(Q,"",!1,I)}let V=mg(Gt(Gl(h),Q=>e6i(Q)||fl(Q,"/")),O8e);for(let Q of V)if(c.features&16&&P(Q,I)){let te=h[Q],re=Q.indexOf("*"),ue=I.substring(Q.substring(0,re).length,I.length-(Q.length-1-re));return N(te,ue,!0,Q)}else if(fl(Q,"*")&&uc(I,Q.substring(0,Q.length-1))){let te=h[Q],re=I.substring(Q.length-1);return N(te,re,!0,Q)}else if(uc(I,Q)){let te=h[Q],re=I.substring(Q.length);return N(te,re,!1,Q)}function P(Q,te){if(fl(Q,"*"))return!1;let re=Q.indexOf("*");return re===-1?!1:uc(te,Q.substring(0,re))&&fl(te,Q.substring(re+1))}}function e6i(n){let c=n.indexOf("*");return c!==-1&&c===n.lastIndexOf("*")}function Qkr(n,c,u,d,I,h,b){return R;function R(N,V,P,Q){if(typeof N=="string"){if(!P&&V.length>0&&!fl(N,"/"))return c.traceEnabled&&Tl(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,h.packageDirectory,I),O1(void 0);if(!uc(N,"./")){if(b&&!uc(N,"../")&&!uc(N,"/")&&!bd(N)){let De=P?N.replace(/\*/g,V):N+V;SV(c,Z.Using_0_subpath_1_with_target_2,"imports",Q,De),SV(c,Z.Resolving_module_0_from_1,De,h.packageDirectory+"/");let lt=s_e(c.features,De,h.packageDirectory+"/",c.compilerOptions,c.host,u,n,!1,d,c.conditions);return O1(lt.resolvedModule?{path:lt.resolvedModule.resolvedFileName,extension:lt.resolvedModule.extension,packageId:lt.resolvedModule.packageId,originalPath:lt.resolvedModule.originalPath,resolvedUsingTsExtension:lt.resolvedModule.resolvedUsingTsExtension}:void 0)}return c.traceEnabled&&Tl(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,h.packageDirectory,I),O1(void 0)}let de=(Qp(N)?dd(N).slice(1):dd(N)).slice(1);if(de.includes("..")||de.includes(".")||de.includes("node_modules"))return c.traceEnabled&&Tl(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,h.packageDirectory,I),O1(void 0);let Be=Do(h.packageDirectory,N),Fe=dd(V);if(Fe.includes("..")||Fe.includes(".")||Fe.includes("node_modules"))return c.traceEnabled&&Tl(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,h.packageDirectory,I),O1(void 0);c.traceEnabled&&Tl(c.host,Z.Using_0_subpath_1_with_target_2,b?"imports":"exports",Q,P?N.replace(/\*/g,V):N+V);let Ne=te(P?Be.replace(/\*/g,V):Be+V),Me=ue(Ne,V,Do(h.packageDirectory,"package.json"),b);return Me||O1(J6(h,Z8e(n,Ne,!1,c),c))}else if(typeof N=="object"&&N!==null)if(Array.isArray(N)){if(!O(N))return c.traceEnabled&&Tl(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,h.packageDirectory,I),O1(void 0);for(let Ae of N){let de=R(Ae,V,P,Q);if(de)return de}}else{SV(c,Z.Entering_conditional_exports);for(let Ae of Gl(N))if(Ae==="default"||c.conditions.includes(Ae)||c_e(c.conditions,Ae)){SV(c,Z.Matched_0_condition_1,b?"imports":"exports",Ae);let de=N[Ae],Be=R(de,V,P,Q);if(Be)return SV(c,Z.Resolved_under_condition_0,Ae),SV(c,Z.Exiting_conditional_exports),Be;SV(c,Z.Failed_to_resolve_under_condition_0,Ae)}else SV(c,Z.Saw_non_matching_condition_0,Ae);SV(c,Z.Exiting_conditional_exports);return}else if(N===null)return c.traceEnabled&&Tl(c.host,Z.package_json_scope_0_explicitly_maps_specifier_1_to_null,h.packageDirectory,I),O1(void 0);return c.traceEnabled&&Tl(c.host,Z.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,h.packageDirectory,I),O1(void 0);function te(Ae){var de,Be;return Ae===void 0?Ae:Qc(Ae,(Be=(de=c.host).getCurrentDirectory)==null?void 0:Be.call(de))}function re(Ae,de){return dA(Do(Ae,de))}function ue(Ae,de,Be,Fe){var Ne,Me,De,lt;if(!c.isConfigLookup&&(c.compilerOptions.declarationDir||c.compilerOptions.outDir)&&!Ae.includes("/node_modules/")&&(!c.compilerOptions.configFile||vg(h.packageDirectory,te(c.compilerOptions.configFile.fileName),!Q8e(c)))){let je=Lx({useCaseSensitiveFileNames:()=>Q8e(c)}),st=[];if(c.compilerOptions.rootDir||c.compilerOptions.composite&&c.compilerOptions.configFilePath){let nt=te(Iue(c.compilerOptions,()=>[],((Me=(Ne=c.host).getCurrentDirectory)==null?void 0:Me.call(Ne))||"",je));st.push(nt)}else if(c.requestContainingDirectory){let nt=te(Do(c.requestContainingDirectory,"index.ts")),qe=te(Iue(c.compilerOptions,()=>[nt,te(Be)],((lt=(De=c.host).getCurrentDirectory)==null?void 0:lt.call(De))||"",je));st.push(qe);let it=dA(qe);for(;it&&it.length>1;){let It=dd(it);It.pop();let dt=Iy(It);st.unshift(dt),it=dA(dt)}}st.length>1&&c.reportDiagnostic(If(Fe?Z.The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:Z.The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate,de===""?".":de,Be));for(let nt of st){let qe=Le(nt);for(let it of qe)if(vg(it,Ae,!Q8e(c))){let It=Ae.slice(it.length+1),dt=Do(nt,It),Tt=[".mjs",".cjs",".js",".json",".d.mts",".d.cts",".d.ts"];for(let St of Tt)if(Ad(dt,St)){let He=uDe(dt);for(let ht of He){if(!Pkr(n,ht))continue;let Et=w1(dt,ht,St,!Q8e(c));if(c.host.fileExists(Et))return O1(J6(h,Z8e(n,Et,!1,c),c))}}}}}return;function Le(je){var st,nt;let qe=c.compilerOptions.configFile?((nt=(st=c.host).getCurrentDirectory)==null?void 0:nt.call(st))||"":je,it=[];return c.compilerOptions.declarationDir&&it.push(te(re(qe,c.compilerOptions.declarationDir))),c.compilerOptions.outDir&&c.compilerOptions.outDir!==c.compilerOptions.declarationDir&&it.push(te(re(qe,c.compilerOptions.outDir))),it}}}}function c_e(n,c){if(!n.includes("types")||!uc(c,"types@"))return!1;let u=Jc.tryParse(c.substring(6));return u?u.test(y):!1}function Mkr(n,c,u,d,I,h){return Hkr(n,c,u,d,!1,I,h)}function t6i(n,c,u){return Hkr(4,n,c,u,!0,void 0,void 0)}function Hkr(n,c,u,d,I,h,b){let R=d.features===0?void 0:d.features&32?99:1,N=n&5,V=n&-6;if(N){SV(d,Z.Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0,Eke(N));let Q=P(N);if(Q)return Q}if(V&&!I)return SV(d,Z.Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0,Eke(V)),P(V);function P(Q){let te=df(u);if(EV(te)){let re=BDt(h,c,R,te,b,d);return re||O1(r6i(Q,c,te,d,I,h,b))}return sI(te,re=>{if(kA(re)!=="node_modules"){let ue=BDt(h,c,R,re,b,d);return ue||O1(Ykr(Q,c,re,d,I,h,b))}})}}function Ykr(n,c,u,d,I,h,b){let R=Do(u,"node_modules"),N=G1(R,d.host);if(!N&&d.traceEnabled&&Tl(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,R),!I){let V=Xkr(n,c,R,N,d,h,b);if(V)return V}if(n&4){let V=Do(R,"@types"),P=N;return N&&!G1(V,d.host)&&(d.traceEnabled&&Tl(d.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,V),P=!1),Xkr(4,EDt(c,d),V,P,d,h,b)}}function r6i(n,c,u,d,I,h,b){let R=df(u);if(!I){let N=Kkr(n,c,R,d,h,b);if(N)return N}if(n&4)return Kkr(4,`@types/${EDt(c,d)}`,R,d,h,b)}function Xkr(n,c,u,d,I,h,b){let R=Mc(Do(u,c)),{packageName:N,rest:V}=a_e(c),P=Do(u,N);return Jkr(n,d,I,h,b,R,V,P)}function n6i(n,c,u,d,I,h){let b=Mc(Do(c,u));return Jkr(n,!0,d,I,h,b,u,c)}function Jkr(n,c,u,d,I,h,b,R){var N,V;let P,Q=vV(h,!c,u);if(b!==""&&Q&&(!(u.features&8)||!Qa(((N=P=vV(R,!c,u))==null?void 0:N.contents.packageJsonContent)??v,"exports"))){let ue=Ete(n,h,!c,u);if(ue)return N8e(ue);let Ae=W8e(n,h,!c,u,Q.contents.packageJsonContent,Nke(Q,u));return J6(Q,Ae,u)}let te=(ue,Ae,de,Be)=>{let Fe=(b||!(Be.features&32))&&Ete(ue,Ae,de,Be)||W8e(ue,Ae,de,Be,Q&&Q.contents.packageJsonContent,Q&&Nke(Q,Be));return!Fe&&Q&&(Q.contents.packageJsonContent.exports===void 0||Q.contents.packageJsonContent.exports===null)&&Be.features&32&&(Fe=Ete(ue,Do(Ae,"index.js"),de,Be)),J6(Q,Fe,Be)};if(b!==""&&(Q=P??vV(R,!c,u)),Q&&(u.resolvedPackageDirectory=!0),Q&&Q.contents.packageJsonContent.exports&&u.features&8)return(V=P8e(Q,n,Do(".",b),u,d,I))==null?void 0:V.value;let re=b!==""&&Q?Nke(Q,u):void 0;if(re){u.traceEnabled&&Tl(u.host,Z.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,re.version,y,b);let ue=c&&G1(R,u.host),Ae=yDt(n,b,R,re.paths,void 0,te,!ue,u);if(Ae)return Ae.value}return te(n,h,!c,u)}function yDt(n,c,u,d,I,h,b,R){I||(I=Xee(d));let N=phe(I,c);if(N){let V=Ya(N)?void 0:yh(N,c),P=Ya(N)?N:D0(N);return R.traceEnabled&&Tl(R.host,Z.Module_name_0_matched_pattern_1,c,P),{value:X(d[P],te=>{let re=V?tM(te,V):te,ue=Mc(Do(u,re));R.traceEnabled&&Tl(R.host,Z.Trying_substitution_0_candidate_module_location_Colon_1,te,re);let Ae=_N(te);if(Ae!==void 0){let de=L8e(ue,b,R);if(de!==void 0)return N8e({path:de,ext:Ae,resolvedUsingTsExtension:void 0})}return h(n,ue,b||!G1(oa(ue),R.host),R)})}}}var bDt="__";function EDt(n,c){let u=Bte(n);return c.traceEnabled&&u!==n&&Tl(c.host,Z.Scoped_package_detected_looking_in_0,u),u}function Dke(n){return`@types/${Bte(n)}`}function Bte(n){if(uc(n,"@")){let c=n.replace($u,bDt);if(c!==n)return c.slice(1)}return n}function sue(n){let c=E_(n,"@types/");return c!==n?l_e(c):n}function l_e(n){return n.includes(bDt)?"@"+n.replace(bDt,$u):n}function BDt(n,c,u,d,I,h){let b=n&&n.getFromNonRelativeNameCache(c,u,d,I);if(b)return h.traceEnabled&&Tl(h.host,Z.Resolution_for_module_0_was_found_in_cache_from_location_1,c,d),h.resultFromCache=b,{value:b.resolvedModule&&{path:b.resolvedModule.resolvedFileName,originalPath:b.resolvedModule.originalPath||!0,extension:b.resolvedModule.extension,packageId:b.resolvedModule.packageId,resolvedUsingTsExtension:b.resolvedModule.resolvedUsingTsExtension}}}function vDt(n,c,u,d,I,h){let b=WG(u,d),R=[],N=[],V=oa(c),P=[],Q={compilerOptions:u,host:d,traceEnabled:b,failedLookupLocations:R,affectingLocations:N,packageJsonInfoCache:I,features:0,conditions:[],requestContainingDirectory:V,reportDiagnostic:ue=>void P.push(ue),isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1},te=re(5)||re(2|(u.resolveJsonModule?8:0));return vkr(n,te&&te.value,te?.value&&AP(te.value.path),R,N,P,Q,I);function re(ue){let Ae=xkr(ue,n,V,hDt,Q);if(Ae)return{value:Ae};if(Ul(n)){let de=Mc(Do(V,n));return O1(hDt(ue,de,!1,Q))}else{let de=sI(V,Be=>{let Fe=BDt(I,n,void 0,Be,h,Q);if(Fe)return Fe;let Ne=Mc(Do(Be,n));return O1(hDt(ue,Ne,!1,Q))});if(de)return de;if(ue&5){let Be=t6i(n,V,Q);return ue&4&&(Be??(Be=Ukr(n,Q))),Be}}}}function Ukr(n,c){if(c.compilerOptions.typeRoots)for(let u of c.compilerOptions.typeRoots){let d=Tkr(u,n,c),I=G1(u,c.host);!I&&c.traceEnabled&&Tl(c.host,Z.Directory_0_does_not_exist_skipping_all_lookups_in_it,u);let h=Ete(4,d,!I,c);if(h){let R=o_e(h.path),N=R?vV(R,!1,c):void 0;return O1(J6(N,h,c))}let b=_Dt(4,d,!I,c);if(b)return O1(b)}}function vte(n,c){return!!n.allowImportingTsExtensions||c&&Gh(c)}function SDt(n,c,u,d,I,h){let b=WG(u,d);b&&Tl(d,Z.Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2,c,n,I);let R=[],N=[],V=[],P={compilerOptions:u,host:d,traceEnabled:b,failedLookupLocations:R,affectingLocations:N,packageJsonInfoCache:h,features:0,conditions:[],requestContainingDirectory:void 0,reportDiagnostic:te=>void V.push(te),isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1},Q=Ykr(4,n,I,P,!1,void 0,void 0);return Skr(Q,!0,R,N,V,P.resultFromCache,void 0)}function O1(n){return n!==void 0?{value:n}:void 0}function SV(n,c,...u){n.traceEnabled&&Tl(n.host,c,...u)}function Q8e(n){return n.host.useCaseSensitiveFileNames?typeof n.host.useCaseSensitiveFileNames=="boolean"?n.host.useCaseSensitiveFileNames:n.host.useCaseSensitiveFileNames():!0}function i6i(n,c){try{let u=EV(c).resolveToUnqualified(n,`${c}/`,{considerBuiltins:!1});return df(u).replace(/\/$/,"")}catch{}}function Kkr(n,c,u,d,I,h){let{packageName:b,rest:R}=a_e(c),N=i6i(b,u);return N?n6i(n,N,R,d,I,h):void 0}var wDt=(n=>(n[n.NonInstantiated=0]="NonInstantiated",n[n.Instantiated=1]="Instantiated",n[n.ConstEnumOnly=2]="ConstEnumOnly",n))(wDt||{});function PG(n,c){return n.body&&!n.body.parent&&(GA(n.body,n),yN(n.body,!1)),n.body?TDt(n.body,c):1}function TDt(n,c=new Map){let u=od(n);if(c.has(u))return c.get(u)||0;c.set(u,void 0);let d=s6i(n,c);return c.set(u,d),d}function s6i(n,c){switch(n.kind){case 264:case 265:return 0;case 266:if(dc(n))return 2;break;case 272:case 271:if(!ya(n,32))return 0;break;case 278:let u=n;if(!u.moduleSpecifier&&u.exportClause&&u.exportClause.kind===279){let d=0;for(let I of u.exportClause.elements){let h=o6i(I,c);if(h>d&&(d=h),d===1)return d}return d}break;case 268:{let d=0;return hu(n,I=>{let h=TDt(I,c);switch(h){case 0:return;case 2:d=2;return;case 1:return d=1,!0;default:w.assertNever(h)}}),d}case 267:return PG(n,c);case 80:if(n.flags&4096)return 0}return 1}function o6i(n,c){let u=n.propertyName||n.name,d=n.parent;for(;d;){if(hc(d)||wN(d)||Fc(d)){let I=d.statements,h;for(let b of I)if(Sv(b,u)){b.parent||(GA(b,d),yN(b,!1));let R=TDt(b,c);if((h===void 0||R>h)&&(h=R),h===1)return h;b.kind===271&&(h=1)}if(h!==void 0)return h}d=d.parent}return 1}var NDt=(n=>(n[n.None=0]="None",n[n.IsContainer=1]="IsContainer",n[n.IsBlockScopedContainer=2]="IsBlockScopedContainer",n[n.IsControlFlowContainer=4]="IsControlFlowContainer",n[n.IsFunctionLike=8]="IsFunctionLike",n[n.IsFunctionExpression=16]="IsFunctionExpression",n[n.HasLocals=32]="HasLocals",n[n.IsInterface=64]="IsInterface",n[n.IsObjectLiteralOrClassExpressionMethodOrAccessor=128]="IsObjectLiteralOrClassExpressionMethodOrAccessor",n))(NDt||{});function oD(n,c,u){return w.attachFlowNodeDebugInfo({flags:n,id:0,node:c,antecedent:u})}var a6i=c6i();function RDt(n,c){var u,d;rs("beforeBind"),(u=jl)==null||u.logStartBindFile(""+n.fileName),a6i(n,c),(d=jl)==null||d.logStopBindFile(),rs("afterBind"),Sc("Bind","beforeBind","afterBind")}function c6i(){var n,c,u,d,I,h,b,R,N,V,P,Q,te,re,ue,Ae,de,Be,Fe,Ne,Me,De,lt,Le,je=!1,st=0,nt,qe,it=oD(1,void 0,void 0),It=oD(1,void 0,void 0),dt=sn();return St;function Tt(Ge,Yt,...En){return Wb(ls(Ge)||n,Ge,Yt,...En)}function St(Ge,Yt){var En,Rs;n=Ge,c=Yt,u=sA(c),Le=He(n,Yt),qe=new Set,st=0,nt=kC.getSymbolConstructor(),w.attachFlowNodeDebugInfo(it),w.attachFlowNodeDebugInfo(It),n.locals||((En=Qi)==null||En.push(Qi.Phase.Bind,"bindSourceFile",{path:n.path},!0),fi(n),(Rs=Qi)==null||Rs.pop(),n.symbolCount=st,n.classifiableNames=qe,jm(),xf()),n=void 0,c=void 0,u=void 0,d=void 0,I=void 0,h=void 0,b=void 0,R=void 0,N=void 0,P=void 0,V=!1,Q=void 0,te=void 0,re=void 0,ue=void 0,Ae=void 0,de=void 0,Be=void 0,Ne=void 0,Me=!1,De=!1,je=!1,lt=0}function He(Ge,Yt){return x_(Yt,"alwaysStrict")&&!Ge.isDeclarationFile?!0:!!Ge.externalModuleIndicator}function ht(Ge,Yt){return st++,new nt(Ge,Yt)}function Et(Ge,Yt,En){Ge.flags|=En,Yt.symbol=Ge,Ge.declarations=og(Ge.declarations,Yt),En&1955&&!Ge.exports&&(Ge.exports=xu()),En&6240&&!Ge.members&&(Ge.members=xu()),Ge.constEnumOnlyModule&&Ge.flags&304&&(Ge.constEnumOnlyModule=!1),En&111551&&uee(Ge,Yt)}function Kt(Ge){if(Ge.kind===277)return Ge.isExportEquals?"export=":"default";let Yt=Sl(Ge);if(Yt){if(Yf(Ge)){let En=N2(Yt);return S2(Ge)?"__global":`"${En}"`}if(Yt.kind===167){let En=Yt.expression;if(ZE(En))return Dd(En.text);if(Nce(En))return vr(En.operator)+En.operand.text;w.fail("Only computed properties with literal names have declaration names")}if(Gc(Yt)){let En=Km(Ge);if(!En)return;let Rs=En.symbol;return yee(Rs,Yt.escapedText)}return aT(Yt)?x2(Yt):WS(Yt)?r6(Yt):void 0}switch(Ge.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(mI(Ge)===2)return"export=";w.fail("Unknown binary declaration kind");break;case 317:return MX(Ge)?"__new":"__call";case 169:return w.assert(Ge.parent.kind===317,"Impossible parameter parent kind",()=>`parent is: ${w.formatSyntaxKind(Ge.parent.kind)}, expected JSDocFunctionType`),"arg"+Ge.parent.parameters.indexOf(Ge)}}function Nt(Ge){return wf(Ge)?kd(Ge.name):wc(w.checkDefined(Kt(Ge)))}function Lt(Ge,Yt,En,Rs,yc,Cu,Pl){w.assert(Pl||!$R(En));let Bu=ya(En,2048)||l0(En)&&En.name.escapedText==="default",ad=Pl?"__computed":Bu&&Yt?"default":Kt(En),oA;if(ad===void 0)oA=ht(0,"__missing");else if(oA=Ge.get(ad),Rs&2885600&&qe.add(ad),!oA)Ge.set(ad,oA=ht(0,ad)),Cu&&(oA.isReplaceableByMethod=!0);else{if(Cu&&!oA.isReplaceableByMethod)return oA;if(oA.flags&yc){if(oA.isReplaceableByMethod)Ge.set(ad,oA=ht(0,ad));else if(!(Rs&3&&oA.flags&67108864)){wf(En)&&GA(En.name,En);let gI=oA.flags&2?Z.Cannot_redeclare_block_scoped_variable_0:Z.Duplicate_identifier_0,PB=!0;(oA.flags&384||Rs&384)&&(gI=Z.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations,PB=!1);let nw=!1;O(oA.declarations)&&(Bu||oA.declarations&&oA.declarations.length&&En.kind===277&&!En.isExportEquals)&&(gI=Z.A_module_cannot_have_multiple_default_exports,PB=!1,nw=!0);let AD=[];Pf(En)&&Tf(En.type)&&ya(En,32)&&oA.flags&2887656&&AD.push(Tt(En,Z.Did_you_mean_0,`export type { ${wc(En.name.escapedText)} }`));let qx=Sl(En)||En;X(oA.declarations,($x,OB)=>{let U2=Sl($x)||$x,ip=PB?Tt(U2,gI,Nt($x)):Tt(U2,gI);n.bindDiagnostics.push(nw?tg(ip,Tt(qx,OB===0?Z.Another_export_default_is_here:Z.and_here)):ip),nw&&AD.push(Tt(U2,Z.The_first_export_default_is_here))});let YZ=PB?Tt(qx,gI,Nt(En)):Tt(qx,gI);n.bindDiagnostics.push(tg(YZ,...AD)),oA=ht(0,ad)}}}return Et(oA,En,Rs),oA.parent?w.assert(oA.parent===Yt,"Existing symbol parent should match new one"):oA.parent=Yt,oA}function kt(Ge,Yt,En){let Rs=!!(Rh(Ge)&32)||Zt(Ge);if(Yt&2097152)return Ge.kind===281||Ge.kind===271&&Rs?Lt(I.symbol.exports,I.symbol,Ge,Yt,En):(w.assertNode(I,Nv),Lt(I.locals,void 0,Ge,Yt,En));if(T2(Ge)&&w.assert(io(Ge)),!Yf(Ge)&&(Rs||I.flags&128)){if(!Nv(I)||!I.locals||ya(Ge,2048)&&!Kt(Ge))return Lt(I.symbol.exports,I.symbol,Ge,Yt,En);let yc=Yt&111551?1048576:0,Cu=Lt(I.locals,void 0,Ge,yc,En);return Cu.exportSymbol=Lt(I.symbol.exports,I.symbol,Ge,Yt,En),Ge.localSymbol=Cu,Cu}else return w.assertNode(I,Nv),Lt(I.locals,void 0,Ge,Yt,En)}function Zt(Ge){if(Ge.parent&&mC(Ge)&&(Ge=Ge.parent),!T2(Ge))return!1;if(!Ohe(Ge)&&Ge.fullName)return!0;let Yt=Sl(Ge);return Yt?!!(xee(Yt.parent)&&WB(Yt.parent)||xC(Yt.parent)&&Rh(Yt.parent)&32):!1}function Dr(Ge,Yt){let En=I,Rs=h,yc=b;if(Yt&1?(Ge.kind!==219&&(h=I),I=b=Ge,Yt&32&&(I.locals=xu(),sa(I))):Yt&2&&(b=Ge,Yt&32&&(b.locals=void 0)),Yt&4){let Cu=Q,Pl=te,Bu=re,ad=ue,oA=Be,gI=Ne,PB=Me,nw=Yt&16&&!ya(Ge,1024)&&!Ge.asteriskToken&&!!q9(Ge)||Ge.kind===175;nw||(Q=oD(2,void 0,void 0),Yt&144&&(Q.node=Ge)),ue=nw||Ge.kind===176||io(Ge)&&(Ge.kind===262||Ge.kind===218)?gi():void 0,Be=void 0,te=void 0,re=void 0,Ne=void 0,Me=!1,Vr(Ge),Ge.flags&=-5633,!(Q.flags&1)&&Yt&8&&GE(Ge.body)&&(Ge.flags|=512,Me&&(Ge.flags|=1024),Ge.endFlowNode=Q),Ge.kind===307&&(Ge.flags|=lt,Ge.endFlowNode=Q),ue&&(xi(ue,Q),Q=_s(ue),(Ge.kind===176||Ge.kind===175||io(Ge)&&(Ge.kind===262||Ge.kind===218))&&(Ge.returnFlowNode=Q)),nw||(Q=Cu),te=Pl,re=Bu,ue=ad,Be=oA,Ne=gI,Me=PB}else Yt&64?(V=!1,Vr(Ge),w.assertNotNode(Ge,sr),Ge.flags=V?Ge.flags|256:Ge.flags&-257):Vr(Ge);I=En,h=Rs,b=yc}function jt(Ge){mr(Ge,Yt=>Yt.kind===262?fi(Yt):void 0),mr(Ge,Yt=>Yt.kind!==262?fi(Yt):void 0)}function mr(Ge,Yt=fi){Ge!==void 0&&X(Ge,Yt)}function Pt(Ge){hu(Ge,fi,mr)}function Vr(Ge){let Yt=je;if(je=!1,Ja(Ge)){Pt(Ge),Xo(Ge),je=Yt;return}switch(Ge.kind>=243&&Ge.kind<=259&&(!c.allowUnreachableCode||Ge.kind===253)&&(Ge.flowNode=Q),Ge.kind){case 247:lg(Ge);break;case 246:ju(Ge);break;case 248:Bi(Ge);break;case 249:case 250:vA(Ge);break;case 245:kr(Ge);break;case 253:case 257:en(Ge);break;case 252:case 251:wt(Ge);break;case 258:br(Ge);break;case 255:Mt(Ge);break;case 269:_r(Ge);break;case 296:Pr(Ge);break;case 244:ti(Ge);break;case 256:kn(Ge);break;case 224:wn(Ge);break;case 225:Pe(Ge);break;case 226:if(Gv(Ge)){je=Yt,ar(Ge);return}dt(Ge);break;case 220:Qe(Ge);break;case 227:ur(Ge);break;case 260:Jt(Ge);break;case 211:case 212:Yc(Ge);break;case 213:Il(Ge);break;case 235:xo(Ge);break;case 346:case 338:case 340:On(Ge);break;case 351:Ii(Ge);break;case 307:{jt(Ge.statements),fi(Ge.endOfFileToken);break}case 241:case 268:jt(Ge.statements);break;case 208:bt(Ge);break;case 169:Vt(Ge);break;case 210:case 209:case 303:case 230:je=Yt;default:Pt(Ge);break}Xo(Ge),je=Yt}function Hr(Ge){switch(Ge.kind){case 80:case 110:return!0;case 211:case 212:return zr(Ge);case 213:return $n(Ge);case 217:if(m4(Ge))return!1;case 235:return Hr(Ge.expression);case 226:return Pi(Ge);case 224:return Ge.operator===54&&Hr(Ge.operand);case 221:return Hr(Ge.expression)}return!1}function pr(Ge){switch(Ge.kind){case 80:case 110:case 108:case 236:return!0;case 211:case 217:case 235:return pr(Ge.expression);case 212:return(ZE(Ge.argumentExpression)||lp(Ge.argumentExpression))&&pr(Ge.expression);case 226:return Ge.operatorToken.kind===28&&pr(Ge.right)||tD(Ge.operatorToken.kind)&&N_(Ge.left)}return!1}function zr(Ge){return pr(Ge)||Gm(Ge)&&zr(Ge.expression)}function $n(Ge){if(Ge.arguments){for(let Yt of Ge.arguments)if(zr(Yt))return!0}return!!(Ge.expression.kind===211&&zr(Ge.expression.expression))}function bi(Ge,Yt){return nD(Ge)&&Ns(Ge.expression)&&JA(Yt)}function Pi(Ge){switch(Ge.operatorToken.kind){case 64:case 76:case 77:case 78:return zr(Ge.left);case 35:case 36:case 37:case 38:return Ns(Ge.left)||Ns(Ge.right)||bi(Ge.right,Ge.left)||bi(Ge.left,Ge.right)||m5(Ge.right)&&Hr(Ge.left)||m5(Ge.left)&&Hr(Ge.right);case 104:return Ns(Ge.left);case 103:return Hr(Ge.right);case 28:return Hr(Ge.right)}return!1}function Ns(Ge){switch(Ge.kind){case 217:return Ns(Ge.expression);case 226:switch(Ge.operatorToken.kind){case 64:return Ns(Ge.left);case 28:return Ns(Ge.right)}}return zr(Ge)}function gi(){return oD(4,void 0,void 0)}function jn(){return oD(8,void 0,void 0)}function xs(Ge,Yt,En){return oD(1024,{target:Ge,antecedents:Yt},En)}function Bc(Ge){Ge.flags|=Ge.flags&2048?4096:2048}function xi(Ge,Yt){!(Yt.flags&1)&&!Ue(Ge.antecedent,Yt)&&((Ge.antecedent||(Ge.antecedent=[])).push(Yt),Bc(Yt))}function rc(Ge,Yt,En){return Yt.flags&1?Yt:En?(En.kind===112&&Ge&64||En.kind===97&&Ge&32)&&!d8(En)&&!I$(En.parent)?it:Hr(En)?(Bc(Yt),oD(Ge,En,Yt)):Yt:Ge&32?Yt:it}function Wl(Ge,Yt,En,Rs){return Bc(Ge),oD(128,{switchStatement:Yt,clauseStart:En,clauseEnd:Rs},Ge)}function gl(Ge,Yt,En){Bc(Yt),De=!0;let Rs=oD(Ge,En,Yt);return Be&&xi(Be,Rs),Rs}function mc(Ge,Yt){return Bc(Ge),De=!0,oD(512,Yt,Ge)}function _s(Ge){let Yt=Ge.antecedent;return Yt?Yt.length===1?Yt[0]:Ge:it}function Pu(Ge){let Yt=Ge.parent;switch(Yt.kind){case 245:case 247:case 246:return Yt.expression===Ge;case 248:case 227:return Yt.condition===Ge}return!1}function ir(Ge){for(;;)if(Ge.kind===217)Ge=Ge.expression;else if(Ge.kind===224&&Ge.operator===54)Ge=Ge.operand;else return Ree(Ge)}function ni(Ge){return Ome(zA(Ge))}function gs(Ge){for(;ZC(Ge.parent)||GB(Ge.parent)&&Ge.parent.operator===54;)Ge=Ge.parent;return!Pu(Ge)&&!ir(Ge.parent)&&!(Gm(Ge.parent)&&Ge.parent.expression===Ge)}function Hs(Ge,Yt,En,Rs){let yc=Ae,Cu=de;Ae=En,de=Rs,Ge(Yt),Ae=yc,de=Cu}function za(Ge,Yt,En){Hs(fi,Ge,Yt,En),(!Ge||!ni(Ge)&&!ir(Ge)&&!(Gm(Ge)&&R3(Ge)))&&(xi(Yt,rc(32,Q,Ge)),xi(En,rc(64,Q,Ge)))}function nc(Ge,Yt,En){let Rs=te,yc=re;te=Yt,re=En,fi(Ge),te=Rs,re=yc}function Rc(Ge,Yt){let En=Ne;for(;En&&Ge.parent.kind===256;)En.continueTarget=Yt,En=En.next,Ge=Ge.parent;return Yt}function lg(Ge){let Yt=Rc(Ge,jn()),En=gi(),Rs=gi();xi(Yt,Q),Q=Yt,za(Ge.expression,En,Rs),Q=_s(En),nc(Ge.statement,Rs,Yt),xi(Yt,Q),Q=_s(Rs)}function ju(Ge){let Yt=jn(),En=Rc(Ge,gi()),Rs=gi();xi(Yt,Q),Q=Yt,nc(Ge.statement,Rs,En),xi(En,Q),Q=_s(En),za(Ge.expression,Yt,Rs),Q=_s(Rs)}function Bi(Ge){let Yt=Rc(Ge,jn()),En=gi(),Rs=gi();fi(Ge.initializer),xi(Yt,Q),Q=Yt,za(Ge.condition,En,Rs),Q=_s(En),nc(Ge.statement,Rs,Yt),fi(Ge.incrementor),xi(Yt,Q),Q=_s(Rs)}function vA(Ge){let Yt=Rc(Ge,jn()),En=gi();fi(Ge.expression),xi(Yt,Q),Q=Yt,Ge.kind===250&&fi(Ge.awaitModifier),xi(En,Q),fi(Ge.initializer),Ge.initializer.kind!==261&&an(Ge.initializer),nc(Ge.statement,En,Yt),xi(Yt,Q),Q=_s(En)}function kr(Ge){let Yt=gi(),En=gi(),Rs=gi();za(Ge.expression,Yt,En),Q=_s(Yt),fi(Ge.thenStatement),xi(Rs,Q),Q=_s(En),fi(Ge.elseStatement),xi(Rs,Q),Q=_s(Rs)}function en(Ge){fi(Ge.expression),Ge.kind===253&&(Me=!0,ue&&xi(ue,Q)),Q=it,De=!0}function ct(Ge){for(let Yt=Ne;Yt;Yt=Yt.next)if(Yt.name===Ge)return Yt}function rn(Ge,Yt,En){let Rs=Ge.kind===252?Yt:En;Rs&&(xi(Rs,Q),Q=it,De=!0)}function wt(Ge){if(fi(Ge.label),Ge.label){let Yt=ct(Ge.label.escapedText);Yt&&(Yt.referenced=!0,rn(Ge,Yt.breakTarget,Yt.continueTarget))}else rn(Ge,te,re)}function br(Ge){let Yt=ue,En=Be,Rs=gi(),yc=gi(),Cu=gi();if(Ge.finallyBlock&&(ue=yc),xi(Cu,Q),Be=Cu,fi(Ge.tryBlock),xi(Rs,Q),Ge.catchClause&&(Q=_s(Cu),Cu=gi(),xi(Cu,Q),Be=Cu,fi(Ge.catchClause),xi(Rs,Q)),ue=Yt,Be=En,Ge.finallyBlock){let Pl=gi();Pl.antecedent=vi(vi(Rs.antecedent,Cu.antecedent),yc.antecedent),Q=Pl,fi(Ge.finallyBlock),Q.flags&1?Q=it:(ue&&yc.antecedent&&xi(ue,xs(Pl,yc.antecedent,Q)),Be&&Cu.antecedent&&xi(Be,xs(Pl,Cu.antecedent,Q)),Q=Rs.antecedent?xs(Pl,Rs.antecedent,Q):it)}else Q=_s(Rs)}function Mt(Ge){let Yt=gi();fi(Ge.expression);let En=te,Rs=Fe;te=Yt,Fe=Q,fi(Ge.caseBlock),xi(Yt,Q);let yc=X(Ge.caseBlock.clauses,Cu=>Cu.kind===297);Ge.possiblyExhaustive=!yc&&!Yt.antecedent,yc||xi(Yt,Wl(Fe,Ge,0,0)),te=En,Fe=Rs,Q=_s(Yt)}function _r(Ge){let Yt=Ge.clauses,En=Ge.parent.expression.kind===112||Hr(Ge.parent.expression),Rs=it;for(let yc=0;ychC(En)||rf(En))}function _u(Ge){Ge.flags&33554432&&!ri(Ge)?Ge.flags|=128:Ge.flags&=-129}function UA(Ge){if(_u(Ge),Yf(Ge))if(ya(Ge,32)&&gr(Ge,Z.export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible),Q$(Ge))Hd(Ge);else{let Yt;if(Ge.name.kind===11){let{text:Rs}=Ge.name;Yt=i4(Rs),Yt===void 0&&gr(Ge.name,Z.Pattern_0_can_have_at_most_one_Asterisk_character,Rs)}let En=Ra(Ge,512,110735);n.patternAmbientModules=Yr(n.patternAmbientModules,Yt&&!Ya(Yt)?{pattern:Yt,symbol:En}:void 0)}else{let Yt=Hd(Ge);if(Yt!==0){let{symbol:En}=Ge;En.constEnumOnlyModule=!(En.flags&304)&&Yt===2&&En.constEnumOnlyModule!==!1}}}function Hd(Ge){let Yt=PG(Ge),En=Yt!==0;return Ra(Ge,En?512:1024,En?110735:0),Yt}function Gd(Ge){let Yt=ht(131072,Kt(Ge));Et(Yt,Ge,131072);let En=ht(2048,"__type");Et(En,Ge,2048),En.members=xu(),En.members.set(Yt.escapedName,Yt)}function Nl(Ge){return qc(Ge,4096,"__object")}function ug(Ge){return qc(Ge,4096,"__jsxAttributes")}function hf(Ge,Yt,En){return Ra(Ge,Yt,En)}function qc(Ge,Yt,En){let Rs=ht(Yt,En);return Yt&106508&&(Rs.parent=I.symbol),Et(Rs,Ge,Yt),Rs}function Lc(Ge,Yt,En){switch(b.kind){case 267:kt(Ge,Yt,En);break;case 307:if(na(I)){kt(Ge,Yt,En);break}default:w.assertNode(b,Nv),b.locals||(b.locals=xu(),sa(b)),Lt(b.locals,void 0,Ge,Yt,En)}}function jm(){if(!N)return;let Ge=I,Yt=R,En=b,Rs=d,yc=Q;for(let Cu of N){let Pl=Cu.parent.parent;I=F8(Pl)||n,b=w2(Pl)||n,Q=oD(2,void 0,void 0),d=Cu,fi(Cu.typeExpression);let Bu=Sl(Cu);if((Ohe(Cu)||!Cu.fullName)&&Bu&&xee(Bu.parent)){let ad=WB(Bu.parent);if(ad){Y2(n.symbol,Bu.parent,ad,!!Si(Bu,gI=>fo(gI)&&gI.name.escapedText==="prototype"),!1);let oA=I;switch(cee(Bu.parent)){case 1:case 2:na(n)?I=n:I=void 0;break;case 4:I=Bu.parent.expression;break;case 3:I=Bu.parent.expression.name;break;case 5:I=CM(n,Bu.parent.expression)?n:fo(Bu.parent.expression)?Bu.parent.expression.name:Bu.parent.expression;break;case 0:return w.fail("Shouldn't have detected typedef or enum on non-assignment declaration")}I&&kt(Cu,524288,788968),I=oA}}else Ohe(Cu)||!Cu.fullName||Cu.fullName.kind===80?(d=Cu.parent,Lc(Cu,524288,788968)):fi(Cu.fullName)}I=Ge,R=Yt,b=En,d=Rs,Q=yc}function xf(){if(P===void 0)return;let Ge=I,Yt=R,En=b,Rs=d,yc=Q;for(let Cu of P){let Pl=tV(Cu),Bu=Pl?F8(Pl):void 0,ad=Pl?w2(Pl):void 0;I=Bu||n,b=ad||n,Q=oD(2,void 0,void 0),d=Cu,fi(Cu.importClause)}I=Ge,R=Yt,b=En,d=Rs,Q=yc}function I0(Ge){if(!n.parseDiagnostics.length&&!(Ge.flags&33554432)&&!(Ge.flags&16777216)&&!$Re(Ge)){let Yt=QR(Ge);if(Yt===void 0)return;Le&&Yt>=119&&Yt<=127?n.bindDiagnostics.push(Tt(Ge,kI(Ge),kd(Ge))):Yt===135?hm(n)&&Ice(Ge)?n.bindDiagnostics.push(Tt(Ge,Z.Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module,kd(Ge))):Ge.flags&65536&&n.bindDiagnostics.push(Tt(Ge,Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,kd(Ge))):Yt===127&&Ge.flags&16384&&n.bindDiagnostics.push(Tt(Ge,Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,kd(Ge)))}}function kI(Ge){return Km(Ge)?Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode:n.externalModuleIndicator?Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode:Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode}function o_(Ge){Ge.escapedText==="#constructor"&&(n.parseDiagnostics.length||n.bindDiagnostics.push(Tt(Ge,Z.constructor_is_a_reserved_word,kd(Ge))))}function Ug(Ge){Le&&N_(Ge.left)&&tD(Ge.operatorToken.kind)&&di(Ge,Ge.left)}function _f(Ge){Le&&Ge.variableDeclaration&&di(Ge,Ge.variableDeclaration.name)}function Yd(Ge){if(Le&&Ge.expression.kind===80){let Yt=Mi(n,Ge.expression);n.bindDiagnostics.push(Cm(n,Yt.start,Yt.length,Z.delete_cannot_be_called_on_an_identifier_in_strict_mode))}}function qA(Ge){return sr(Ge)&&(Ge.escapedText==="eval"||Ge.escapedText==="arguments")}function di(Ge,Yt){if(Yt&&Yt.kind===80){let En=Yt;if(qA(En)){let Rs=Mi(n,Yt);n.bindDiagnostics.push(Cm(n,Rs.start,Rs.length,uI(Ge),oo(En)))}}}function uI(Ge){return Km(Ge)?Z.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:n.externalModuleIndicator?Z.Invalid_use_of_0_Modules_are_automatically_in_strict_mode:Z.Invalid_use_of_0_in_strict_mode}function U0(Ge){Le&&!(Ge.flags&33554432)&&di(Ge,Ge.name)}function K0(Ge){return Km(Ge)?Z.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definitions_are_automatically_in_strict_mode:n.externalModuleIndicator?Z.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_automatically_in_strict_mode:Z.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5}function Xb(Ge){if(u<2&&b.kind!==307&&b.kind!==267&&!x3(b)){let Yt=Mi(n,Ge);n.bindDiagnostics.push(Cm(n,Yt.start,Yt.length,K0(Ge)))}}function nf(Ge){Le&&di(Ge,Ge.operand)}function GI(Ge){Le&&(Ge.operator===46||Ge.operator===47)&&di(Ge,Ge.operand)}function yt(Ge){Le&&gr(Ge,Z.with_statements_are_not_allowed_in_strict_mode)}function tt(Ge){Le&&sA(c)>=2&&(vX(Ge.statement)||Dp(Ge.statement))&&gr(Ge.label,Z.A_label_is_not_allowed_here)}function gr(Ge,Yt,...En){let Rs=Rr(n,Ge.pos);n.bindDiagnostics.push(Cm(n,Rs.start,Rs.length,Yt,...En))}function mn(Ge,Yt,En){Ri(Ge,Yt,Yt,En)}function Ri(Ge,Yt,En,Rs){Yo(Ge,{pos:xx(Yt,n),end:En.end},Rs)}function Yo(Ge,Yt,En){let Rs=Cm(n,Yt.pos,Yt.end-Yt.pos,En);Ge?n.bindDiagnostics.push(Rs):n.bindSuggestionDiagnostics=Yr(n.bindSuggestionDiagnostics,{...Rs,category:2})}function fi(Ge){if(!Ge)return;GA(Ge,d),Qi&&(Ge.tracingPath=n.path);let Yt=Le;if(Pg(Ge),Ge.kind>165){let En=d;d=Ge;let Rs=M8e(Ge);Rs===0?Vr(Ge):Dr(Ge,Rs),d=En}else{let En=d;Ge.kind===1&&(d=Ge),Xo(Ge),d=En}Le=Yt}function Xo(Ge){if(_y(Ge))if(io(Ge))for(let Yt of Ge.jsDoc)fi(Yt);else for(let Yt of Ge.jsDoc)GA(Yt,Ge),yN(Yt,!1)}function _c(Ge){if(!Le)for(let Yt of Ge){if(!HI(Yt))return;if(ic(Yt)){Le=!0;return}}}function ic(Ge){let Yt=hG(n,Ge.expression);return Yt==='"use strict"'||Yt==="'use strict'"}function Pg(Ge){switch(Ge.kind){case 80:if(Ge.flags&4096){let Pl=Ge.parent;for(;Pl&&!T2(Pl);)Pl=Pl.parent;Lc(Pl,524288,788968);break}case 110:return Q&&(tn(Ge)||d.kind===304)&&(Ge.flowNode=Q),I0(Ge);case 166:Q&&hce(Ge)&&(Ge.flowNode=Q);break;case 236:case 108:Ge.flowNode=Q;break;case 81:return o_(Ge);case 211:case 212:let Yt=Ge;Q&&pr(Yt)&&(Yt.flowNode=Q),YRe(Yt)&&JI(Yt),io(Yt)&&n.commonJsModuleIndicator&&dN(Yt)&&!xke(b,"module")&&Lt(n.locals,void 0,Yt.expression,134217729,111550);break;case 226:switch(mI(Ge)){case 1:qt(Ge);break;case 2:Fn(Ge);break;case 3:Xd(Ge.left,Ge);break;case 6:Em(Ge);break;case 4:Rl(Ge);break;case 5:let Pl=Ge.left.expression;if(io(Ge)&&sr(Pl)){let Bu=xke(b,Pl.escapedText);if(Cce(Bu?.valueDeclaration)){Rl(Ge);break}}Ub(Ge);break;case 0:break;default:w.fail("Unknown binary expression special property assignment kind")}return Ug(Ge);case 299:return _f(Ge);case 220:return Yd(Ge);case 225:return nf(Ge);case 224:return GI(Ge);case 254:return yt(Ge);case 256:return tt(Ge);case 197:V=!0;return;case 182:break;case 168:return Zs(Ge);case 169:return rt(Ge);case 260:return J2(Ge);case 208:return Ge.flowNode=Q,J2(Ge);case 172:case 171:return sf(Ge);case 303:case 304:return Jn(Ge,4,0);case 306:return Jn(Ge,8,900095);case 179:case 180:case 181:return Ra(Ge,131072,0);case 174:case 173:return Jn(Ge,8192|(Ge.questionToken?16777216:0),RB(Ge)?0:103359);case 262:return qr(Ge);case 176:return Ra(Ge,16384,0);case 177:return Jn(Ge,32768,46015);case 178:return Jn(Ge,65536,78783);case 184:case 317:case 323:case 185:return Gd(Ge);case 187:case 322:case 200:return qC(Ge);case 332:return Qn(Ge);case 210:return Nl(Ge);case 218:case 219:return Mn(Ge);case 213:switch(mI(Ge)){case 7:return _C(Ge);case 8:return H2(Ge);case 9:return np(Ge);case 0:break;default:return w.fail("Unknown call expression assignment declaration kind")}io(Ge)&&gD(Ge);break;case 231:case 263:return Le=!0,Kb(Ge);case 264:return Lc(Ge,64,788872);case 265:return Lc(Ge,524288,788968);case 266:return LN(Ge);case 267:return UA(Ge);case 292:return ug(Ge);case 291:return hf(Ge,4,0);case 271:case 274:case 276:case 281:return Ra(Ge,2097152,2097152);case 270:return Zm(Ge);case 273:return FI(Ge);case 278:return Jb(Ge);case 277:return of(Ge);case 307:return _c(Ge.statements),Jf();case 241:if(!x3(Ge.parent))return;case 268:return _c(Ge.statements);case 341:if(Ge.parent.kind===323)return rt(Ge);if(Ge.parent.kind!==322)break;case 348:let yc=Ge,Cu=yc.isBracketed||yc.typeExpression&&yc.typeExpression.type.kind===316?16777220:4;return Ra(yc,Cu,0);case 346:case 338:case 340:return(N||(N=[])).push(Ge);case 339:return fi(Ge.typeExpression);case 351:return(P||(P=[])).push(Ge)}}function sf(Ge){let Yt=r_(Ge),En=Yt?98304:4,Rs=Yt?13247:0;return Jn(Ge,En|(Ge.questionToken?16777216:0),Rs)}function qC(Ge){return qc(Ge,2048,"__type")}function Jf(){if(_u(n),hm(n))Fm();else if(fa(n)){Fm();let Ge=n.symbol;Lt(n.symbol.exports,n.symbol,n,4,-1),n.symbol=Ge}}function Fm(){qc(n,512,`"${a0(n.fileName)}"`)}function of(Ge){if(!I.symbol||!I.symbol.exports)qc(Ge,111551,Kt(Ge));else{let Yt=U3(Ge)?2097152:4,En=Lt(I.symbol.exports,I.symbol,Ge,Yt,-1);Ge.isExportEquals&&uee(En,Ge)}}function Zm(Ge){lr(Ge.modifiers)&&n.bindDiagnostics.push(Tt(Ge,Z.Modifiers_cannot_appear_here));let Yt=Fc(Ge.parent)?hm(Ge.parent)?Ge.parent.isDeclarationFile?void 0:Z.Global_module_exports_may_only_appear_in_declaration_files:Z.Global_module_exports_may_only_appear_in_module_files:Z.Global_module_exports_may_only_appear_at_top_level;Yt?n.bindDiagnostics.push(Tt(Ge,Yt)):(n.symbol.globalExports=n.symbol.globalExports||xu(),Lt(n.symbol.globalExports,n.symbol,Ge,2097152,2097152))}function Jb(Ge){!I.symbol||!I.symbol.exports?qc(Ge,8388608,Kt(Ge)):Ge.exportClause?sD(Ge.exportClause)&&(GA(Ge.exportClause,Ge),Lt(I.symbol.exports,I.symbol,Ge.exportClause,2097152,2097152)):Lt(I.symbol.exports,I.symbol,Ge,8388608,0)}function FI(Ge){Ge.name&&Ra(Ge,2097152,2097152)}function $C(Ge){return n.externalModuleIndicator&&n.externalModuleIndicator!==!0?!1:(n.commonJsModuleIndicator||(n.commonJsModuleIndicator=Ge,n.externalModuleIndicator||Fm()),!0)}function H2(Ge){if(!$C(Ge))return;let Yt=em(Ge.arguments[0],void 0,(En,Rs)=>(Rs&&Et(Rs,En,67110400),Rs));Yt&&Lt(Yt.exports,Yt,Ge,1048580,0)}function qt(Ge){if(!$C(Ge))return;let Yt=em(Ge.left.expression,void 0,(En,Rs)=>(Rs&&Et(Rs,En,67110400),Rs));if(Yt){let Rs=mee(Ge.right)&&(H3(Ge.left.expression)||dN(Ge.left.expression))?2097152:1048580;GA(Ge.left,Ge),Lt(Yt.exports,Yt,Ge.left,Rs,0)}}function Fn(Ge){if(!$C(Ge))return;let Yt=yG(Ge.right);if(Gee(Yt)||I===n&&CM(n,Yt))return;if(ru(Yt)&&he(Yt.properties,F_)){X(Yt.properties,Bs);return}let En=U3(Ge)?2097152:1049092,Rs=Lt(n.symbol.exports,n.symbol,Ge,En|67108864,0);uee(Rs,Ge)}function Bs(Ge){Lt(n.symbol.exports,n.symbol,Ge,69206016,0)}function Rl(Ge){if(w.assert(io(Ge)),ro(Ge)&&fo(Ge.left)&&Gc(Ge.left.name)||fo(Ge)&&Gc(Ge.name))return;let En=n0(Ge,!1,!1);switch(En.kind){case 262:case 218:let Rs=En.symbol;if(ro(En.parent)&&En.parent.operatorToken.kind===64){let Pl=En.parent.left;eV(Pl)&&SG(Pl.expression)&&(Rs=Ab(Pl.expression.expression,h))}Rs&&Rs.valueDeclaration&&(Rs.members=Rs.members||xu(),$R(Ge)?SA(Ge,Rs,Rs.members):Lt(Rs.members,Rs,Ge,67108868,0),Et(Rs,Rs.valueDeclaration,32));break;case 176:case 172:case 174:case 177:case 178:case 175:let yc=En.parent,Cu=eg(En)?yc.symbol.exports:yc.symbol.members;$R(Ge)?SA(Ge,yc.symbol,Cu):Lt(Cu,yc.symbol,Ge,67108868,0,!0);break;case 307:if($R(Ge))break;En.commonJsModuleIndicator?Lt(En.symbol.exports,En.symbol,Ge,1048580,0):Ra(Ge,1,111550);break;case 267:break;default:w.failBadSyntaxKind(En)}}function SA(Ge,Yt,En){Lt(En,Yt,Ge,4,0,!0,!0),OA(Ge,Yt)}function OA(Ge,Yt){Yt&&(Yt.assignmentDeclarationMembers||(Yt.assignmentDeclarationMembers=new Map)).set(od(Ge),Ge)}function JI(Ge){Ge.expression.kind===110?Rl(Ge):eV(Ge)&&Ge.parent.parent.kind===307&&(SG(Ge.expression)?Xd(Ge,Ge.parent):pT(Ge))}function Em(Ge){GA(Ge.left,Ge),GA(Ge.right,Ge),X2(Ge.left.expression,Ge.left,!1,!0)}function np(Ge){let Yt=Ab(Ge.arguments[0].expression);Yt&&Yt.valueDeclaration&&Et(Yt,Yt.valueDeclaration,32),gb(Ge,Yt,!0)}function Xd(Ge,Yt){let En=Ge.expression,Rs=En.expression;GA(Rs,En),GA(En,Ge),GA(Ge,Yt),X2(Rs,Ge,!0,!0)}function _C(Ge){let Yt=Ab(Ge.arguments[0]),En=Ge.parent.parent.kind===307;Yt=Y2(Yt,Ge.arguments[0],En,!1,!1),gb(Ge,Yt,!1)}function Ub(Ge){var Yt;let En=Ab(Ge.left.expression,b)||Ab(Ge.left.expression,I);if(!io(Ge)&&!XRe(En))return;let Rs=Y5(Ge.left);if(!(sr(Rs)&&((Yt=xke(I,Rs.escapedText))==null?void 0:Yt.flags)&2097152))if(GA(Ge.left,Ge),GA(Ge.right,Ge),sr(Ge.left.expression)&&I===n&&CM(n,Ge.left.expression))qt(Ge);else if($R(Ge)){qc(Ge,67108868,"__computed");let yc=Y2(En,Ge.left.expression,WB(Ge.left),!1,!1);OA(Ge,yc)}else pT(ps(Ge.left,X3))}function pT(Ge){w.assert(!sr(Ge)),GA(Ge.expression,Ge),X2(Ge.expression,Ge,!1,!1)}function Y2(Ge,Yt,En,Rs,yc){return Ge?.flags&2097152||(En&&!Rs&&(Ge=em(Yt,Ge,(Bu,ad,oA)=>{if(ad)return Et(ad,Bu,67110400),ad;{let gI=oA?oA.exports:n.jsGlobalAugmentations||(n.jsGlobalAugmentations=xu());return Lt(gI,oA,Bu,67110400,110735)}})),yc&&Ge&&Ge.valueDeclaration&&Et(Ge,Ge.valueDeclaration,32)),Ge}function gb(Ge,Yt,En){if(!Yt||!lD(Yt))return;let Rs=En?Yt.members||(Yt.members=xu()):Yt.exports||(Yt.exports=xu()),yc=0,Cu=0;pd(x5(Ge))?(yc=8192,Cu=103359):lu(Ge)&&Y3(Ge)&&(lr(Ge.arguments[2].properties,Pl=>{let Bu=Sl(Pl);return!!Bu&&sr(Bu)&&oo(Bu)==="set"})&&(yc|=65540,Cu|=78783),lr(Ge.arguments[2].properties,Pl=>{let Bu=Sl(Pl);return!!Bu&&sr(Bu)&&oo(Bu)==="get"})&&(yc|=32772,Cu|=46015)),yc===0&&(yc=4,Cu=0),Lt(Rs,Yt,Ge,yc|67108864,Cu&-67108865)}function WB(Ge){return ro(Ge.parent)?uD(Ge.parent).parent.kind===307:Ge.parent.parent.kind===307}function X2(Ge,Yt,En,Rs){let yc=Ab(Ge,b)||Ab(Ge,I),Cu=WB(Yt);yc=Y2(yc,Yt.expression,Cu,En,Rs),gb(Yt,yc,En)}function lD(Ge){if(Ge.flags&1072)return!0;let Yt=Ge.valueDeclaration;if(Yt&&lu(Yt))return!!x5(Yt);let En=Yt?js(Yt)?Yt.initializer:ro(Yt)?Yt.right:fo(Yt)&&ro(Yt.parent)?Yt.parent.right:void 0:void 0;if(En=En&&yG(En),En){let Rs=SG(js(Yt)?Yt.name:ro(Yt)?Yt.left:Yt);return!!vZ(ro(En)&&(En.operatorToken.kind===57||En.operatorToken.kind===61)?En.right:En,Rs)}return!1}function uD(Ge){for(;ro(Ge.parent);)Ge=Ge.parent;return Ge.parent}function Ab(Ge,Yt=I){if(sr(Ge))return xke(Yt,Ge.escapedText);{let En=Ab(Ge.expression);return En&&En.exports&&En.exports.get(zR(Ge))}}function em(Ge,Yt,En){if(CM(n,Ge))return n.symbol;if(sr(Ge))return En(Ge,Ab(Ge),Yt);{let Rs=em(Ge.expression,Yt,En),yc=aee(Ge);return Gc(yc)&&w.fail("unexpected PrivateIdentifier"),En(yc,Rs&&Rs.exports&&Rs.exports.get(zR(Ge)),Rs)}}function gD(Ge){!n.commonJsModuleIndicator&&H0(Ge,!1)&&$C(Ge)}function Kb(Ge){if(Ge.kind===263)Lc(Ge,32,899503);else{let yc=Ge.name?Ge.name.escapedText:"__class";qc(Ge,32,yc),Ge.name&&qe.add(Ge.name.escapedText)}let{symbol:Yt}=Ge,En=ht(4194308,"prototype"),Rs=Yt.exports.get(En.escapedName);Rs&&(Ge.name&&GA(Ge.name,Ge),n.bindDiagnostics.push(Tt(Rs.declarations[0],Z.Duplicate_identifier_0,pf(En)))),Yt.exports.set(En.escapedName,En),En.parent=Yt}function LN(Ge){return dc(Ge)?Lc(Ge,128,899967):Lc(Ge,256,899327)}function J2(Ge){if(Le&&di(Ge,Ge.name),!fu(Ge.name)){let Yt=Ge.kind===260?Ge:Ge.parent.parent;io(Ge)&&$9(Yt)&&!Sx(Ge)&&!(Rh(Ge)&32)?Ra(Ge,2097152,2097152):W$(Ge)?Lc(Ge,2,111551):TZ(Ge)?Ra(Ge,1,111551):Ra(Ge,1,111550)}}function rt(Ge){if(!(Ge.kind===341&&I.kind!==323)&&(Le&&!(Ge.flags&33554432)&&di(Ge,Ge.name),fu(Ge.name)?qc(Ge,1,"__"+Ge.parent.parameters.indexOf(Ge)):Ra(Ge,1,111551),Zn(Ge,Ge.parent))){let Yt=Ge.parent.parent;Lt(Yt.symbol.members,Yt.symbol,Ge,4|(Ge.questionToken?16777216:0),0)}}function qr(Ge){!n.isDeclarationFile&&!(Ge.flags&33554432)&&t6(Ge)&&(lt|=4096),U0(Ge),Le?(Xb(Ge),Lc(Ge,16,110991)):Ra(Ge,16,110991)}function Mn(Ge){!n.isDeclarationFile&&!(Ge.flags&33554432)&&t6(Ge)&&(lt|=4096),Q&&(Ge.flowNode=Q),U0(Ge);let Yt=Ge.name?Ge.name.escapedText:"__function";return qc(Ge,16,Yt)}function Jn(Ge,Yt,En){return!n.isDeclarationFile&&!(Ge.flags&33554432)&&t6(Ge)&&(lt|=4096),Q&&K$(Ge)&&(Ge.flowNode=Q),$R(Ge)?qc(Ge,Yt,"__computed"):Ra(Ge,Yt,En)}function cs(Ge){let Yt=Si(Ge,En=>En.parent&&Ei(En.parent)&&En.parent.extendsType===En);return Yt&&Yt.parent}function Zs(Ge){if(Lv(Ge.parent)){let Yt=vce(Ge.parent);Yt?(w.assertNode(Yt,Nv),Yt.locals??(Yt.locals=xu()),Lt(Yt.locals,void 0,Ge,262144,526824)):Ra(Ge,262144,526824)}else if(Ge.parent.kind===195){let Yt=cs(Ge.parent);Yt?(w.assertNode(Yt,Nv),Yt.locals??(Yt.locals=xu()),Lt(Yt.locals,void 0,Ge,262144,526824)):qc(Ge,262144,Kt(Ge))}else Ra(Ge,262144,526824)}function qo(Ge){let Yt=PG(Ge);return Yt===1||Yt===2&&gV(c)}function Ja(Ge){if(!(Q.flags&1))return!1;if(Q===it&&(SX(Ge)&&Ge.kind!==242||Ge.kind===263||Ge.kind===267&&qo(Ge))&&(Q=It,!c.allowUnreachableCode)){let En=WDe(c)&&!(Ge.flags&33554432)&&(!Dp(Ge)||!!($y(Ge.declarationList)&7)||Ge.declarationList.declarations.some(Rs=>!!Rs.initializer));l6i(Ge,(Rs,yc)=>Ri(En,Rs,yc,Z.Unreachable_code_detected))}return!0}}function l6i(n,c){if(Cc(n)&&jkr(n)&&hc(n.parent)){let{statements:u}=n.parent,d=fhe(u,n);ua(d,jkr,(I,h)=>c(d[I],d[h-1]))}else c(n,n)}function jkr(n){return!hp(n)&&!u6i(n)&&!iP(n)&&!(Dp(n)&&!($y(n)&7)&&n.declarationList.declarations.some(c=>!c.initializer))}function u6i(n){switch(n.kind){case 264:case 265:return!0;case 267:return PG(n)!==1;case 266:return ya(n,4096);default:return!1}}function CM(n,c){let u=0,d=RA();for(d.enqueue(c);!d.isEmpty()&&u<100;){if(u++,c=d.dequeue(),H3(c)||dN(c))return!0;if(sr(c)){let I=xke(n,c.escapedText);if(I&&I.valueDeclaration&&js(I.valueDeclaration)&&I.valueDeclaration.initializer){let h=I.valueDeclaration.initializer;d.enqueue(h),Im(h,!0)&&(d.enqueue(h.left),d.enqueue(h.right))}}}return!1}function M8e(n){switch(n.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(K$(n))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 n.initializer?4:0;case 299:case 248:case 249:case 250:case 269:return 34;case 241:return eu(n.parent)||ef(n.parent)?0:34}return 0}function xke(n,c){var u,d,I,h;let b=(d=(u=$s(n,Nv))==null?void 0:u.locals)==null?void 0:d.get(c);if(b)return b.exportSymbol??b;if(Fc(n)&&n.jsGlobalAugmentations&&n.jsGlobalAugmentations.has(c))return n.jsGlobalAugmentations.get(c);if(v2(n))return(h=(I=n.symbol)==null?void 0:I.exports)==null?void 0:h.get(c)}function DDt(n,c,u,d,I,h,b,R,N,V){return P;function P(Q=()=>!0){let te=[],re=[];return{walkType:st=>{try{return ue(st),{visitedTypes:us(te),visitedSymbols:us(re)}}finally{Ur(te),Ur(re)}},walkSymbol:st=>{try{return je(st),{visitedTypes:us(te),visitedSymbols:us(re)}}finally{Ur(te),Ur(re)}}};function ue(st){if(!(!st||te[st.id]||(te[st.id]=st,je(st.symbol)))){if(st.flags&524288){let qe=st,it=qe.objectFlags;it&4&&Ae(st),it&32&&Me(st),it&3&<(st),it&24&&Le(qe)}st.flags&262144&&de(st),st.flags&3145728&&Be(st),st.flags&4194304&&Fe(st),st.flags&8388608&&Ne(st)}}function Ae(st){ue(st.target),X(V(st),ue)}function de(st){ue(R(st))}function Be(st){X(st.types,ue)}function Fe(st){ue(st.type)}function Ne(st){ue(st.objectType),ue(st.indexType),ue(st.constraint)}function Me(st){ue(st.typeParameter),ue(st.constraintType),ue(st.templateType),ue(st.modifiersType)}function De(st){let nt=c(st);nt&&ue(nt.type),X(st.typeParameters,ue);for(let qe of st.parameters)je(qe);ue(n(st)),ue(u(st))}function lt(st){Le(st),X(st.typeParameters,ue),X(d(st),ue),ue(st.thisType)}function Le(st){let nt=I(st);for(let qe of nt.indexInfos)ue(qe.keyType),ue(qe.type);for(let qe of nt.callSignatures)De(qe);for(let qe of nt.constructSignatures)De(qe);for(let qe of nt.properties)je(qe)}function je(st){if(!st)return!1;let nt=Gg(st);if(re[nt])return!1;if(re[nt]=st,!Q(st))return!0;let qe=h(st);return ue(qe),st.exports&&st.exports.forEach(je),X(st.declarations,it=>{if(it.type&&it.type.kind===186){let It=it.type,dt=b(N(It.exprName));je(dt)}}),!1}}}var dP={};o(dP,{RelativePreference:()=>zkr,countPathComponents:()=>Gke,forEachFileNameOfModule:()=>iGr,getLocalModuleSpecifierBetweenFileNames:()=>p6i,getModuleSpecifier:()=>qkr,getModuleSpecifierPreferences:()=>oue,getModuleSpecifiers:()=>tGr,getModuleSpecifiersWithCacheInfo:()=>rGr,getNodeModulesPackageName:()=>A6i,tryGetJSExtensionForFile:()=>ZDt,tryGetModuleSpecifiersFromCache:()=>d6i,tryGetRealFileNameForNonJsDeclarationFileName:()=>lGr,updateModuleSpecifier:()=>g6i});var zkr=(n=>(n[n.Relative=0]="Relative",n[n.NonRelative=1]="NonRelative",n[n.Shortest=2]="Shortest",n[n.ExternalNonRelative=3]="ExternalNonRelative",n))(zkr||{});function oue({importModuleSpecifierPreference:n,importModuleSpecifierEnding:c},u,d,I){let h=b();return{relativePreference:I!==void 0?Ul(I)?0:1:n==="relative"?0:n==="non-relative"?1:n==="project-relative"?3:2,getAllowedEndingsInPreferredOrder:R=>{let N=R!==d.impliedNodeFormat?b(R):h;if((R??d.impliedNodeFormat)===99)return vte(u,d.fileName)?[3,2]:[2];if(o0(u)===1)return N===2?[2,1]:[1,2];let V=vte(u,d.fileName);switch(N){case 2:return V?[2,3,0,1]:[2,0,1];case 3:return[3,0,2,1];case 1:return V?[1,0,3,2]:[1,0,2];case 0:return V?[0,1,3,2]:[0,1,2];default:w.assertNever(N)}}};function b(R){if(I!==void 0){if(hN(I))return 2;if(fl(I,"/index"))return 1}return jDe(c,R??d.impliedNodeFormat,u,jR(d)?d:void 0)}}function g6i(n,c,u,d,I,h,b={}){let R=$kr(n,c,u,d,I,oue({},n,c,h),{},b);if(R!==h)return R}function qkr(n,c,u,d,I,h={}){return $kr(n,c,u,d,I,oue({},n,c),{},h)}function A6i(n,c,u,d,I,h={}){let b=kke(c.fileName,d),R=sGr(b,u,d,I,n,h);return le(R,N=>GDt(N,b,c,d,n,I,!0,h.overrideImportMode))}function $kr(n,c,u,d,I,h,b,R={}){let N=kke(u,I),V=sGr(N,d,I,b,n,R);return le(V,P=>GDt(P,N,c,I,n,b,void 0,R.overrideImportMode))||xDt(d,N,n,I,R.overrideImportMode||c.impliedNodeFormat,h)}function d6i(n,c,u,d,I={}){let h=eGr(n,c,u,d,I);return h[1]&&{kind:h[0],moduleSpecifiers:h[1],computedWithoutCache:!1}}function eGr(n,c,u,d,I={}){var h;let b=T8(n);if(!b)return v;let R=(h=u.getModuleSpecifierCache)==null?void 0:h.call(u),N=R?.get(c.path,b.path,d,I);return[N?.kind,N?.moduleSpecifiers,b,N?.modulePaths,R]}function tGr(n,c,u,d,I,h,b={}){return rGr(n,c,u,d,I,h,b,!1).moduleSpecifiers}function rGr(n,c,u,d,I,h,b={},R){let N=!1,V=h6i(n,c);if(V)return{kind:"ambient",moduleSpecifiers:[V],computedWithoutCache:N};let[P,Q,te,re,ue]=eGr(n,d,I,h,b);if(Q)return{kind:P,moduleSpecifiers:Q,computedWithoutCache:N};if(!te)return{kind:void 0,moduleSpecifiers:v,computedWithoutCache:N};N=!0,re||(re=oGr(kke(d.fileName,I),te.originalFileName,I,u,b));let Ae=f6i(re,u,d,I,h,b,R);return ue?.set(d.path,te.path,h,b,Ae.kind,re,Ae.moduleSpecifiers),Ae}function p6i(n,c,u,d,I={}){let h=kke(n.fileName,d),b=I.overrideImportMode??n.impliedNodeFormat;return xDt(c,h,u,d,b,oue({},u,n))}function f6i(n,c,u,d,I,h={},b){let R=kke(u.fileName,d),N=oue(I,c,u),V=jR(u)&&X(n,Ae=>X(d.getFileIncludeReasons().get(AA(Ae.path,d.getCurrentDirectory(),R.getCanonicalFileName)),de=>{if(de.kind!==3||de.file!==u.path||u.impliedNodeFormat&&u.impliedNodeFormat!==jxt(u,de.index,c))return;let Be=S_e(u,de.index).text;return N.relativePreference!==1||!Qp(Be)?Be:void 0}));if(V)return{kind:void 0,moduleSpecifiers:[V],computedWithoutCache:!0};let P=lr(n,Ae=>Ae.isInNodeModules),Q,te,re,ue;for(let Ae of n){let de=Ae.isInNodeModules?GDt(Ae,R,u,d,c,I,void 0,h.overrideImportMode):void 0;if(Q=Yr(Q,de),de&&Ae.isRedirect)return{kind:"node_modules",moduleSpecifiers:Q,computedWithoutCache:!0};if(!de){let Be=xDt(Ae.path,R,c,d,h.overrideImportMode||u.impliedNodeFormat,N,Ae.isRedirect);if(!Be)continue;Ae.isRedirect?re=Yr(re,Be):P0(Be)?AP(Be)?ue=Yr(ue,Be):te=Yr(te,Be):(b||!P||Ae.isInNodeModules)&&(ue=Yr(ue,Be))}}return te?.length?{kind:"paths",moduleSpecifiers:te,computedWithoutCache:!0}:re?.length?{kind:"redirect",moduleSpecifiers:re,computedWithoutCache:!0}:Q?.length?{kind:"node_modules",moduleSpecifiers:Q,computedWithoutCache:!0}:{kind:"relative",moduleSpecifiers:w.checkDefined(ue),computedWithoutCache:!0}}function kke(n,c){n=Qc(n,c.getCurrentDirectory());let u=rA(c.useCaseSensitiveFileNames?c.useCaseSensitiveFileNames():!0),d=oa(n);return{getCanonicalFileName:u,importingSourceFileName:n,sourceDirectory:d,canonicalSourceDirectory:u(d)}}function xDt(n,c,u,d,I,{getAllowedEndingsInPreferredOrder:h,relativePreference:b},R){let{baseUrl:N,paths:V,rootDirs:P}=u;if(R&&!V)return;let{sourceDirectory:Q,canonicalSourceDirectory:te,getCanonicalFileName:re}=c,ue=h(I),Ae=P&&b6i(P,n,Q,re,ue,u)||u_e(jy(Ip(Q,n,re)),ue,u);if(!N&&!V&&!mN(u)||b===0)return R?void 0:Ae;let de=Qc(Zce(u,d)||N,d.getCurrentDirectory()),Be=uGr(n,de,re);if(!Be)return R?void 0:Ae;let Fe=R?void 0:y6i(n,Q,u,d,I),Ne=R||Fe===void 0?V&&aGr(Be,V,ue,d,u):void 0;if(R)return Ne;let Me=Fe??(Ne===void 0&&N!==void 0?u_e(Be,ue,u):Ne);if(!Me)return Ae;if(b===1&&!Qp(Me))return Me;if(b===3&&!Qp(Me)){let De=u.configFilePath?AA(oa(u.configFilePath),d.getCurrentDirectory(),c.getCanonicalFileName):c.getCanonicalFileName(d.getCurrentDirectory()),lt=AA(n,De,re),Le=uc(te,De),je=uc(lt,De);if(Le&&!je||!Le&&je)return Me;let st=kDt(d,oa(lt)),nt=kDt(d,Q),qe=!zX(d);return I6i(st,nt,qe)?Ae:Me}return gGr(Me)||Gke(Ae)n.fileExists(Do(u,"package.json"))?u:void 0)}function iGr(n,c,u,d,I){var h;let b=Lx(u),R=u.getCurrentDirectory(),N=u.isSourceOfProjectReferenceRedirect(c)?u.getProjectReferenceRedirect(c):void 0,V=AA(c,R,b),P=u.redirectTargetsMap.get(V)||v,te=[...N?[N]:v,c,...P].map(Be=>Qc(Be,R)),re=!he(te,w6);if(!d){let Be=X(te,Fe=>!(re&&w6(Fe))&&I(Fe,N===Fe));if(Be)return Be}let ue=(h=u.getSymlinkCache)==null?void 0:h.call(u).getSymlinkedDirectoriesByRealpath(),Ae=Qc(c,R);return ue&&sI(oa(Ae),Be=>{let Fe=ue.get(dA(AA(Be,R,b)));if(Fe)return Nh(n,Be,b)?!1:X(te,Ne=>{if(!Nh(Ne,Be,b))return;let Me=Ip(Be,Ne,b);for(let De of Fe){let lt=$_(De,Me),Le=I(lt,Ne===N);if(re=!0,Le)return Le}})})||(d?X(te,Be=>re&&w6(Be)?void 0:I(Be,Be===N)):void 0)}function sGr(n,c,u,d,I,h={}){var b;let R=AA(n.importingSourceFileName,u.getCurrentDirectory(),Lx(u)),N=AA(c,u.getCurrentDirectory(),Lx(u)),V=(b=u.getModuleSpecifierCache)==null?void 0:b.call(u);if(V){let Q=V.get(R,N,d,h);if(Q?.modulePaths)return Q.modulePaths}let P=oGr(n,c,u,I,h);return V&&V.setModulePaths(R,N,d,h,P),P}var C6i=["dependencies","peerDependencies","optionalDependencies"];function m6i(n){let c;for(let u of C6i){let d=n[u];d&&typeof d=="object"&&(c=vi(c,Gl(d)))}return c}function oGr(n,c,u,d,I){var h,b;let R=(h=u.getModuleResolutionCache)==null?void 0:h.call(u),N=(b=u.getSymlinkCache)==null?void 0:b.call(u);if(R&&N&&u.readFile&&!AP(n.importingSourceFileName)){w.type(u);let te=nue(R.getPackageJsonInfoCache(),u,{}),re=iue(n.importingSourceFileName,te);if(re){let ue=m6i(re.contents.packageJsonContent);for(let Ae of ue||v){let de=U6(Ae,Do(re.packageDirectory,"package.json"),d,u,R,void 0,I.overrideImportMode);N.setSymlinksFromResolution(de.resolvedModule)}}}let V=new Map,P=!1;iGr(n.importingSourceFileName,c,u,!0,(te,re)=>{let ue=AP(te),Ae=EV(te);if(!ue&&Ae){let de=Ae.findPackageLocator(n.importingSourceFileName),Be=Ae.findPackageLocator(te);de&&Be&&de!==Be&&(ue=!0)}V.set(te,{path:n.getCanonicalFileName(te),isRedirect:re,isInNodeModules:ue}),P=P||ue});let Q=[];for(let te=n.canonicalSourceDirectory;V.size!==0;){let re=dA(te),ue;V.forEach(({path:de,isRedirect:Be,isInNodeModules:Fe},Ne)=>{uc(de,re)&&((ue||(ue=[])).push({path:Ne,isRedirect:Be,isInNodeModules:Fe}),V.delete(Ne))}),ue&&(ue.length>1&&ue.sort(nGr),Q.push(...ue));let Ae=oa(te);if(Ae===te)break;te=Ae}if(V.size){let te=on(V.entries(),([re,{isRedirect:ue,isInNodeModules:Ae}])=>({path:re,isRedirect:ue,isInNodeModules:Ae}));te.length>1&&te.sort(nGr),Q.push(...te)}return Q}function h6i(n,c){var u;let d=(u=n.declarations)==null?void 0:u.find(b=>O$(b)&&(!KR(b)||!Ul(N2(b.name))));if(d)return d.name.text;let h=tr(n.declarations,b=>{var R,N,V,P;if(!mC(b))return;let Q=Ae(b);if(!((R=Q?.parent)!=null&&R.parent&&wN(Q.parent)&&Yf(Q.parent.parent)&&Fc(Q.parent.parent.parent)))return;let te=(P=(V=(N=Q.parent.parent.symbol.exports)==null?void 0:N.get("export="))==null?void 0:V.valueDeclaration)==null?void 0:P.expression;if(!te)return;let re=c.getSymbolAtLocation(te);if(!re)return;if((re?.flags&2097152?c.getAliasedSymbol(re):re)===b.symbol)return Q.parent.parent;function Ae(de){for(;de.flags&8;)de=de.parent;return de}})[0];if(h)return h.name.text}function aGr(n,c,u,d,I){for(let b in c)for(let R of c[b]){let N=Mc(R),V=N.indexOf("*"),P=u.map(Q=>({ending:Q,value:u_e(n,[Q],I)}));if(_N(N)&&P.push({ending:void 0,value:n}),V!==-1){let Q=N.substring(0,V),te=N.substring(V+1);for(let{ending:re,value:ue}of P)if(ue.length>=Q.length+te.length&&uc(ue,Q)&&fl(ue,te)&&h({ending:re,value:ue})){let Ae=ue.substring(Q.length,ue.length-te.length);if(!Qp(Ae))return tM(b,Ae)}}else if(lr(P,Q=>Q.ending!==0&&N===Q.value)||lr(P,Q=>Q.ending===0&&N===Q.value&&h(Q)))return b}function h({ending:b,value:R}){return b!==0||R===u_e(n,[b],I,d)}}function Fke(n,c,u,d,I,h,b,R,N){if(typeof h=="string"){let V=!zX(c),P=()=>c.getCommonSourceDirectory(),Q=N&&C6e(u,n,V,P),te=N&&I6e(u,n,V,P),re=Qc(Do(d,h),void 0),ue=z5(u)?a0(u)+ZDt(u,n):void 0;switch(R){case 0:if(ue&&dh(ue,re,V)===0||dh(u,re,V)===0||Q&&dh(Q,re,V)===0||te&&dh(te,re,V)===0)return{moduleFileToTry:I};break;case 1:if(ue&&vg(re,ue,V)){let Fe=Ip(re,ue,!1);return{moduleFileToTry:Qc(Do(Do(I,h),Fe),void 0)}}if(vg(re,u,V)){let Fe=Ip(re,u,!1);return{moduleFileToTry:Qc(Do(Do(I,h),Fe),void 0)}}if(Q&&vg(re,Q,V)){let Fe=Ip(re,Q,!1);return{moduleFileToTry:Do(I,Fe)}}if(te&&vg(re,te,V)){let Fe=Ip(re,te,!1);return{moduleFileToTry:Do(I,Fe)}}break;case 2:let Ae=re.indexOf("*"),de=re.slice(0,Ae),Be=re.slice(Ae+1);if(ue&&uc(ue,de,V)&&fl(ue,Be,V)){let Fe=ue.slice(de.length,ue.length-Be.length);return{moduleFileToTry:tM(I,Fe)}}if(uc(u,de,V)&&fl(u,Be,V)){let Fe=u.slice(de.length,u.length-Be.length);return{moduleFileToTry:tM(I,Fe)}}if(Q&&uc(Q,de,V)&&fl(Q,Be,V)){let Fe=Q.slice(de.length,Q.length-Be.length);return{moduleFileToTry:tM(I,Fe)}}if(te&&uc(te,de,V)&&fl(te,Be,V)){let Fe=te.slice(de.length,te.length-Be.length);return{moduleFileToTry:tM(I,Fe)}}break}}else{if(Array.isArray(h))return X(h,V=>Fke(n,c,u,d,I,V,b,R,N));if(typeof h=="object"&&h!==null){for(let V of Gl(h))if(V==="default"||b.indexOf(V)>=0||c_e(b,V)){let P=h[V],Q=Fke(n,c,u,d,I,P,b,R,N);if(Q)return Q}}}}function _6i(n,c,u,d,I,h,b){return typeof h=="object"&&h!==null&&!Array.isArray(h)&&Rke(h)?X(Gl(h),R=>{let N=Qc(Do(I,R),void 0),V=fl(R,"/")?1:R.includes("*")?2:0;return Fke(n,c,u,d,N,h[R],b,V,!1)}):Fke(n,c,u,d,I,h,b,0,!1)}function y6i(n,c,u,d,I){var h,b,R;if(!d.readFile||!mN(u))return;let N=kDt(d,c);if(!N)return;let V=Do(N,"package.json"),P=(b=(h=d.getPackageJsonInfoCache)==null?void 0:h.call(d))==null?void 0:b.getPackageJsonInfo(V);if(ADt(P)||!d.fileExists(V))return;let Q=P?.contents.packageJsonContent||Xce(d.readFile(V)),te=Q?.imports;if(!te)return;let re=BV(u,I);return(R=X(Gl(te),ue=>{if(!uc(ue,"#")||ue==="#"||uc(ue,"#/"))return;let Ae=fl(ue,"/")?1:ue.includes("*")?2:0;return Fke(u,d,n,N,ue,te[ue],re,Ae,!0)}))==null?void 0:R.moduleFileToTry}function b6i(n,c,u,d,I,h){let b=cGr(c,n,d);if(b===void 0)return;let R=cGr(u,n,d),N=Fr(R,P=>Ot(b,Q=>jy(Ip(P,Q,d)))),V=gC(N,Yee);if(V)return u_e(V,I,h)}function GDt({path:n,isRedirect:c},{getCanonicalFileName:u,canonicalSourceDirectory:d},I,h,b,R,N,V){if(!h.fileExists||!h.readFile)return;let P=ble(n),Q,te=EV(n);if(te){let Me=te.findPackageLocator(I.fileName),De=te.findPackageLocator(n);if(Me===De)return;if(Me&&De){let lt=te.getPackageInformation(Me);if(De.reference===lt.packageDependencies.get(De.name))Q=De.name;else for(let[Le,je]of lt.packageDependencies)if(Array.isArray(je)&&je[0]===De.name&&je[1]===De.reference){Q=Le;break}P||(P={topLevelNodeModulesIndex:void 0,topLevelPackageNameIndex:void 0,packageRootIndex:te.getPackageInformation(De).packageLocation.length-1,fileNameIndex:n.lastIndexOf("/")})}}if(!P)return;let ue=oue(R,b,I).getAllowedEndingsInPreferredOrder(),Ae=n,de=!1;if(!N){let Me=P.packageRootIndex,De;for(;;){let{moduleFileToTry:lt,packageRootPath:Le,blockedByExports:je,verbatimFromExports:st}=Ne(Me);if(o0(b)!==1){if(je)return;if(st)return lt}if(Le){Ae=Le,de=!0;break}if(De||(De=lt),Me=n.indexOf($u,Me+1),Me===-1){Ae=u_e(De,ue,b,h);break}}}if(c&&!de)return;if(typeof process.versions.pnp>"u"){let Me=h.getGlobalTypingsCacheLocation&&h.getGlobalTypingsCacheLocation(),De=u(Ae.substring(0,P.topLevelNodeModulesIndex));if(!(uc(d,De)||Me&&uc(u(Me),De)))return}let Be=typeof Q<"u"?Q+Ae.substring(P.packageRootIndex):Ae.substring(P.topLevelPackageNameIndex+1),Fe=sue(Be);return o0(b)===1&&Fe===Be?void 0:Fe;function Ne(Me){var De,lt;let Le=n.substring(0,Me),je=Do(Le,"package.json"),st=n,nt=!1,qe=(lt=(De=h.getPackageJsonInfoCache)==null?void 0:De.call(h))==null?void 0:lt.getPackageJsonInfo(je);if(Ske(qe)||qe===void 0&&h.fileExists(je)){let it=qe?.contents.packageJsonContent||Xce(h.readFile(je)),It=V||I.impliedNodeFormat;if(the(b)){let St=Le.substring(P.topLevelPackageNameIndex+1),He=sue(Q||St),ht=BV(b,It),Et=it?.exports?_6i(b,h,n,Le,He,it.exports,ht):void 0;if(Et)return{...Et,verbatimFromExports:!0};if(it?.exports)return{moduleFileToTry:n,blockedByExports:!0}}let dt=it?.typesVersions?Bke(it.typesVersions):void 0;if(dt){let St=n.slice(Le.length+1),He=aGr(St,dt.paths,ue,h,b);He===void 0?nt=!0:st=Do(Le,He)}let Tt=it?.typings||it?.types||it?.main||"index.js";if(Ya(Tt)&&!(nt&&phe(Xee(dt.paths),Tt))){let St=AA(Tt,Le,u),He=u(st);if(a0(St)===a0(He))return{packageRootPath:Le,moduleFileToTry:st};if(it?.type!=="module"&&!fp(He,Mee)&&uc(He,St)&&oa(He)===w_(St)&&a0(kA(He))==="index")return{packageRootPath:Le,moduleFileToTry:st}}}else{let it=u(st.substring(P.packageRootIndex+1));if(it==="index.d.ts"||it==="index.js"||it==="index.ts"||it==="index.tsx")return{moduleFileToTry:st,packageRootPath:Le}}return{moduleFileToTry:st}}}function E6i(n,c){if(!n.fileExists)return;let u=or(b6({allowJs:!0},[{extension:"node",isMixedContent:!1},{extension:"json",isMixedContent:!1,scriptKind:6}]));for(let d of u){let I=c+d;if(n.fileExists(I))return I}}function cGr(n,c,u){return tr(c,d=>{let I=uGr(n,d,u);return I!==void 0&&gGr(I)?void 0:I})}function u_e(n,c,u,d){if(fp(n,[".json",".mjs",".cjs"]))return n;let I=a0(n);if(n===I)return n;let h=c.indexOf(2),b=c.indexOf(3);if(fp(n,[".mts",".cts"])&&b!==-1&&bV===0||V===1);return N!==-1&&N(n[n.None=0]="None",n[n.TypeofEQString=1]="TypeofEQString",n[n.TypeofEQNumber=2]="TypeofEQNumber",n[n.TypeofEQBigInt=4]="TypeofEQBigInt",n[n.TypeofEQBoolean=8]="TypeofEQBoolean",n[n.TypeofEQSymbol=16]="TypeofEQSymbol",n[n.TypeofEQObject=32]="TypeofEQObject",n[n.TypeofEQFunction=64]="TypeofEQFunction",n[n.TypeofEQHostObject=128]="TypeofEQHostObject",n[n.TypeofNEString=256]="TypeofNEString",n[n.TypeofNENumber=512]="TypeofNENumber",n[n.TypeofNEBigInt=1024]="TypeofNEBigInt",n[n.TypeofNEBoolean=2048]="TypeofNEBoolean",n[n.TypeofNESymbol=4096]="TypeofNESymbol",n[n.TypeofNEObject=8192]="TypeofNEObject",n[n.TypeofNEFunction=16384]="TypeofNEFunction",n[n.TypeofNEHostObject=32768]="TypeofNEHostObject",n[n.EQUndefined=65536]="EQUndefined",n[n.EQNull=131072]="EQNull",n[n.EQUndefinedOrNull=262144]="EQUndefinedOrNull",n[n.NEUndefined=524288]="NEUndefined",n[n.NENull=1048576]="NENull",n[n.NEUndefinedOrNull=2097152]="NEUndefinedOrNull",n[n.Truthy=4194304]="Truthy",n[n.Falsy=8388608]="Falsy",n[n.IsUndefined=16777216]="IsUndefined",n[n.IsNull=33554432]="IsNull",n[n.IsUndefinedOrNull=50331648]="IsUndefinedOrNull",n[n.All=134217727]="All",n[n.BaseStringStrictFacts=3735041]="BaseStringStrictFacts",n[n.BaseStringFacts=12582401]="BaseStringFacts",n[n.StringStrictFacts=16317953]="StringStrictFacts",n[n.StringFacts=16776705]="StringFacts",n[n.EmptyStringStrictFacts=12123649]="EmptyStringStrictFacts",n[n.EmptyStringFacts=12582401]="EmptyStringFacts",n[n.NonEmptyStringStrictFacts=7929345]="NonEmptyStringStrictFacts",n[n.NonEmptyStringFacts=16776705]="NonEmptyStringFacts",n[n.BaseNumberStrictFacts=3734786]="BaseNumberStrictFacts",n[n.BaseNumberFacts=12582146]="BaseNumberFacts",n[n.NumberStrictFacts=16317698]="NumberStrictFacts",n[n.NumberFacts=16776450]="NumberFacts",n[n.ZeroNumberStrictFacts=12123394]="ZeroNumberStrictFacts",n[n.ZeroNumberFacts=12582146]="ZeroNumberFacts",n[n.NonZeroNumberStrictFacts=7929090]="NonZeroNumberStrictFacts",n[n.NonZeroNumberFacts=16776450]="NonZeroNumberFacts",n[n.BaseBigIntStrictFacts=3734276]="BaseBigIntStrictFacts",n[n.BaseBigIntFacts=12581636]="BaseBigIntFacts",n[n.BigIntStrictFacts=16317188]="BigIntStrictFacts",n[n.BigIntFacts=16775940]="BigIntFacts",n[n.ZeroBigIntStrictFacts=12122884]="ZeroBigIntStrictFacts",n[n.ZeroBigIntFacts=12581636]="ZeroBigIntFacts",n[n.NonZeroBigIntStrictFacts=7928580]="NonZeroBigIntStrictFacts",n[n.NonZeroBigIntFacts=16775940]="NonZeroBigIntFacts",n[n.BaseBooleanStrictFacts=3733256]="BaseBooleanStrictFacts",n[n.BaseBooleanFacts=12580616]="BaseBooleanFacts",n[n.BooleanStrictFacts=16316168]="BooleanStrictFacts",n[n.BooleanFacts=16774920]="BooleanFacts",n[n.FalseStrictFacts=12121864]="FalseStrictFacts",n[n.FalseFacts=12580616]="FalseFacts",n[n.TrueStrictFacts=7927560]="TrueStrictFacts",n[n.TrueFacts=16774920]="TrueFacts",n[n.SymbolStrictFacts=7925520]="SymbolStrictFacts",n[n.SymbolFacts=16772880]="SymbolFacts",n[n.ObjectStrictFacts=7888800]="ObjectStrictFacts",n[n.ObjectFacts=16736160]="ObjectFacts",n[n.FunctionStrictFacts=7880640]="FunctionStrictFacts",n[n.FunctionFacts=16728e3]="FunctionFacts",n[n.VoidFacts=9830144]="VoidFacts",n[n.UndefinedFacts=26607360]="UndefinedFacts",n[n.NullFacts=42917664]="NullFacts",n[n.EmptyObjectStrictFacts=83427327]="EmptyObjectStrictFacts",n[n.EmptyObjectFacts=83886079]="EmptyObjectFacts",n[n.UnknownFacts=83886079]="UnknownFacts",n[n.AllTypeofNE=556800]="AllTypeofNE",n[n.OrFactsMask=8256]="OrFactsMask",n[n.AndFactsMask=134209471]="AndFactsMask",n))(Y8e||{}),VDt=new Map(Object.entries({string:256,number:512,bigint:1024,boolean:2048,symbol:4096,undefined:524288,object:8192,function:16384})),X8e=(n=>(n[n.Normal=0]="Normal",n[n.Contextual=1]="Contextual",n[n.Inferential=2]="Inferential",n[n.SkipContextSensitive=4]="SkipContextSensitive",n[n.SkipGenericFunctions=8]="SkipGenericFunctions",n[n.IsForSignatureHelp=16]="IsForSignatureHelp",n[n.RestBindingElement=32]="RestBindingElement",n[n.TypeOnly=64]="TypeOnly",n))(X8e||{}),J8e=(n=>(n[n.None=0]="None",n[n.BivariantCallback=1]="BivariantCallback",n[n.StrictCallback=2]="StrictCallback",n[n.IgnoreReturnTypes=4]="IgnoreReturnTypes",n[n.StrictArity=8]="StrictArity",n[n.StrictTopSignature=16]="StrictTopSignature",n[n.Callback=3]="Callback",n))(J8e||{}),B6i=gh(CGr,S6i),U8e=new Map(Object.entries({Uppercase:0,Lowercase:1,Capitalize:2,Uncapitalize:3,NoInfer:4})),IGr=class{};function v6i(){this.flags=0}function od(n){return n.id||(n.id=dGr,dGr++),n.id}function Gg(n){return n.id||(n.id=AGr,AGr++),n.id}function K8e(n,c){let u=PG(n);return u===1||c&&u===2}function WDt(n){var c=[],u=l=>{c.push(l)},d,I,h=kC.getSymbolConstructor(),b=kC.getTypeConstructor(),R=kC.getSignatureConstructor(),N=0,V=0,P=0,Q=0,te=0,re=0,ue,Ae,de=!1,Be=xu(),Fe=[1],Ne=n.getCompilerOptions(),Me=sA(Ne),De=D_(Ne),lt=!!Ne.experimentalDecorators,Le=Wee(Ne),je=rhe(Ne),st=K5(Ne),nt=x_(Ne,"strictNullChecks"),qe=x_(Ne,"strictFunctionTypes"),it=x_(Ne,"strictBindCallApply"),It=x_(Ne,"strictPropertyInitialization"),dt=x_(Ne,"noImplicitAny"),Tt=x_(Ne,"noImplicitThis"),St=x_(Ne,"useUnknownInCatchVariables"),He=Ne.exactOptionalPropertyTypes,ht=wms(),Et=oys(),Kt=fZe(),Nt=jkt(Ne,{isEntityNameVisible:OV,isExpandoFunctionDeclaration:u8r,getAllAccessorDeclarations:WLe,requiresAddingImplicitUndefined:att,isUndefinedIdentifierExpression(l){return w.assert(DB(l)),zv(l)===Zt},isDefinitelyReferenceToGlobalSymbolObject:h7}),Lt=vhe({evaluateElementAccessExpression:K_s,evaluateEntityNameExpression:YKr}),kt=xu(),Zt=wA(4,"undefined");Zt.declarations=[];var Dr=wA(1536,"globalThis",8);Dr.exports=kt,Dr.declarations=[],kt.set(Dr.escapedName,Dr);var jt=wA(4,"arguments"),mr=wA(4,"require"),Pt=Ne.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules",Vr=!Ne.verbatimModuleSyntax,Hr,pr,zr=0,$n,bi=0,Pi=x6({compilerOptions:Ne,requireSymbol:mr,argumentsSymbol:jt,globals:kt,getSymbolOfDeclaration:Oo,error:fr,getRequiresScopeChangeCache:b7,setRequiresScopeChangeCache:pD,lookup:L_,onPropertyWithInvalidInitializer:eL,onFailedToResolveSymbol:jG,onSuccessfullyResolvedSymbol:are}),Ns=x6({compilerOptions:Ne,requireSymbol:mr,argumentsSymbol:jt,globals:kt,getSymbolOfDeclaration:Oo,error:fr,getRequiresScopeChangeCache:b7,setRequiresScopeChangeCache:pD,lookup:UIs});let gi={getNodeCount:()=>Nd(n.getSourceFiles(),(l,C)=>l+C.nodeCount,0),getIdentifierCount:()=>Nd(n.getSourceFiles(),(l,C)=>l+C.identifierCount,0),getSymbolCount:()=>Nd(n.getSourceFiles(),(l,C)=>l+C.symbolCount,V),getTypeCount:()=>N,getInstantiationCount:()=>P,getRelationCacheSizes:()=>({assignable:db.size,identity:jb.size,subtype:VN.size,strictSubtype:QB.size}),isUndefinedSymbol:l=>l===Zt,isArgumentsSymbol:l=>l===jt,isUnknownSymbol:l=>l===en,getMergedSymbol:FA,symbolIsValue:fD,getDiagnostics:qKr,getGlobalDiagnostics:h0s,getRecursionIdentity:X$e,getUnmatchedProperties:pPt,getTypeOfSymbolAtLocation:(l,C)=>{let E=zc(C);return E?ufs(l,E):cr},getTypeOfSymbol:co,getSymbolsOfParameterPropertyDeclaration:(l,C)=>{let E=zc(l,Uc);return E===void 0?w.fail("Cannot get symbols of a synthetic parameter that cannot be resolved to a parse-tree node."):(w.assert(Zn(E,E.parent)),ore(E,Dd(C)))},getDeclaredTypeOfSymbol:kp,getPropertiesOfType:Cd,getPropertyOfType:(l,C)=>yg(l,Dd(C)),getPrivateIdentifierPropertyOfType:(l,C,E)=>{let D=zc(E);if(!D)return;let W=Dd(C),M=dLe(W,D);return M?Tet(l,M):void 0},getTypeOfPropertyOfType:(l,C)=>LI(l,Dd(C)),getIndexInfoOfType:(l,C)=>sk(l,C===0?Jt:bt),getIndexInfosOfType:ty,getIndexInfosOfIndexSymbol:l3t,getSignaturesOfType:Ou,getIndexTypeOfType:(l,C)=>jP(l,C===0?Jt:bt),getIndexType:l=>UN(l),getBaseTypes:Sa,getBaseTypeOfLiteralType:gF,getWidenedType:tE,getWidenedLiteralType:rO,getTypeFromTypeNode:l=>{let C=zc(l,Ma);return C?Vc(C):cr},getParameterType:ST,getParameterIdentifierInfoAtPosition:QCs,getPromisedTypeOfPromise:Nye,getAwaitedType:l=>pJ(l),getReturnTypeOfSignature:wd,isNullableType:ALe,getNullableType:UZe,getNonNullableType:AF,getNonOptionalType:j$e,getTypeArguments:af,typeToTypeNode:Kt.typeToTypeNode,indexInfoToIndexSignatureDeclaration:Kt.indexInfoToIndexSignatureDeclaration,signatureToSignatureDeclaration:Kt.signatureToSignatureDeclaration,symbolToEntityName:Kt.symbolToEntityName,symbolToExpression:Kt.symbolToExpression,symbolToNode:Kt.symbolToNode,symbolToTypeParameterDeclarations:Kt.symbolToTypeParameterDeclarations,symbolToParameterDeclaration:Kt.symbolToParameterDeclaration,typeParameterToDeclaration:Kt.typeParameterToDeclaration,getSymbolsInScope:(l,C)=>{let E=zc(l);return E?_0s(E,C):[]},getSymbolAtLocation:l=>{let C=zc(l);return C?zv(C,!0):void 0},getIndexInfosAtLocation:l=>{let C=zc(l);return C?T0s(C):void 0},getShorthandAssignmentValueSymbol:l=>{let C=zc(l);return C?N0s(C):void 0},getExportSpecifierLocalTargetSymbol:l=>{let C=zc(l,l0);return C?R0s(C):void 0},getExportSymbolOfSymbol(l){return FA(l.exportSymbol||l)},getTypeAtLocation:l=>{let C=zc(l);return C?z7(C):cr},getTypeOfAssignmentPattern:l=>{let C=zc(l,X9);return C&&itt(C)||cr},getPropertySymbolOfDestructuringAssignment:l=>{let C=zc(l,sr);return C?D0s(C):void 0},signatureToString:(l,C,E,D)=>QV(l,zc(C),E,D),typeToString:(l,C,E)=>Ys(l,zc(C),E),symbolToString:(l,C,E,D)=>$c(l,zc(C),E,D),typePredicateToString:(l,C,E)=>ID(l,zc(C),E),writeSignature:(l,C,E,D,W)=>QV(l,zc(C),E,D,W),writeType:(l,C,E,D)=>Ys(l,zc(C),E,D),writeSymbol:(l,C,E,D,W)=>$c(l,zc(C),E,D,W),writeTypePredicate:(l,C,E,D)=>ID(l,zc(C),E,D),getAugmentedPropertiesOfType:rQt,getRootSymbols:s8r,getSymbolOfExpando:Get,getContextualType:(l,C)=>{let E=zc(l,tn);if(E)return C&4?Bc(E,()=>wy(E,C)):wy(E,C)},getContextualTypeForObjectLiteralElement:l=>{let C=zc(l,vB);return C?PPt(C,void 0):void 0},getContextualTypeForArgumentAtIndex:(l,C)=>{let E=zc(l,CG);return E&&WPt(E,C)},getContextualTypeForJsxAttribute:l=>{let C=zc(l,E8);return C&&vJr(C,void 0)},isContextSensitive:UB,getTypeOfPropertyOfContextualType:sO,getFullyQualifiedName:HN,getResolvedSignature:(l,C,E)=>xi(l,C,E,0),getCandidateSignaturesForStringLiteralCompletions:jn,getResolvedSignatureForSignatureHelp:(l,C,E)=>xs(l,()=>xi(l,C,E,16)),getExpandedParameters:CYr,hasEffectiveRestParameter:vD,containsArgumentsReference:o3t,getConstantValue:l=>{let C=zc(l,g8r);return C?iQt(C):void 0},isValidPropertyAccess:(l,C)=>{let E=zc(l,Yae);return!!E&&zIs(E,Dd(C))},isValidPropertyAccessForCompletions:(l,C,E)=>{let D=zc(l,fo);return!!D&&tUr(D,C,E)},getSignatureFromDeclaration:l=>{let C=zc(l,eu);return C?rB(C):void 0},isImplementationOfOverload:l=>{let C=zc(l,eu);return C?l8r(C):void 0},getImmediateAliasedSymbol:yet,getAliasedSymbol:$m,getEmitResolver:zZ,requiresAddingImplicitUndefined:att,getExportsOfModule:PM,getExportsAndPropertiesOfModule:N7,forEachExportAndPropertyOfModule:Q4,getSymbolWalker:DDt(Tgs,JB,wd,Sa,bT,co,Sy,vy,sb,af),getAmbientModules:Kys,getJsxIntrinsicTagNamesAt:DIs,isOptionalParameter:l=>{let C=zc(l,Uc);return C?wZe(C):!1},tryGetMemberInModuleExports:(l,C)=>z2(Dd(l),C),tryGetMemberInModuleExportsAndProperties:(l,C)=>Ire(Dd(l),C),tryFindAmbientModule:l=>i3t(l,!0),tryFindAmbientModuleWithoutAugmentations:l=>i3t(l,!1),getApparentType:ey,getUnionType:wa,isTypeAssignableTo:bg,createAnonymousType:qn,createSignature:ik,createSymbol:wA,createIndexInfo:bD,getAnyType:()=>Mt,getStringType:()=>Jt,getStringLiteralType:fb,getNumberType:()=>bt,getNumberLiteralType:pw,getBigIntType:()=>Vt,createPromiseType:BLe,createArrayType:V_,getElementTypeOfArrayType:JZe,getBooleanType:()=>ds,getFalseType:l=>l?dn:On,getTrueType:l=>l?Qn:Ii,getVoidType:()=>so,getUndefinedType:()=>wn,getNullType:()=>ur,getESSymbolType:()=>Es,getNeverType:()=>Vi,getOptionalType:()=>Qe,getPromiseType:()=>DZe(!1),getPromiseLikeType:()=>iXr(!1),getAsyncIterableType:()=>{let l=w$e(!1);if(l!==Ug)return l},isSymbolAccessible:mT,isArrayType:jB,isTupleType:cA,isArrayLikeType:fL,isEmptyAnonymousObjectType:BD,isTypeInvalidDueToUnionDiscriminant:lgs,getExactOptionalProperties:Wds,getAllPossiblePropertiesOfTypes:ugs,getSuggestedSymbolForNonexistentProperty:rOt,getSuggestedSymbolForNonexistentJSXAttribute:zJr,getSuggestedSymbolForNonexistentSymbol:(l,C,E)=>$Jr(l,Dd(C),E),getSuggestedSymbolForNonexistentModule:nOt,getSuggestedSymbolForNonexistentClassMember:jJr,getBaseConstraintOfType:c_,getDefaultFromTypeParameter:l=>l&&l.flags&262144?j4(l):void 0,resolveName(l,C,E,D){return Pi(C,Dd(l),E,void 0,!1,D)},getJsxNamespace:l=>wc(NP(l)),getJsxFragmentFactory:l=>{let C=oQt(l);return C&&wc(sb(C).escapedText)},getAccessibleSymbolChain:zl,getTypePredicateOfSignature:JB,resolveExternalModuleName:l=>{let C=zc(l,tn);return C&&q0(C,C,!0)},resolveExternalModuleSymbol:pb,tryGetThisTypeAt:(l,C,E)=>{let D=zc(l);return D&&ZPt(D,C,E)},getTypeArgumentConstraint:l=>{let C=zc(l,Ma);return C&&shs(C)},getSuggestionDiagnostics:(l,C)=>{let E=zc(l,Fc)||w.fail("Could not determine parsed source file.");if(q5(E,Ne,n))return v;let D;try{return d=C,$Ot(E),w.assert(!!(Jo(E).flags&1)),D=ai(D,x4.getDiagnostics(E.fileName)),IKr(zKr(E),(W,M,se)=>{!UR(W)&&!jKr(M,!!(W.flags&33554432))&&(D||(D=[])).push({...se,category:2})}),D||v}finally{d=void 0}},runWithCancellationToken:(l,C)=>{try{return d=l,C(gi)}finally{d=void 0}},getLocalTypeParametersOfClassOrInterfaceOrTypeAlias:cL,isDeclarationVisible:iF,isPropertyAccessible:sOt,getTypeOnlyAliasDeclaration:MN,getMemberOverrideModifierStatus:V_s,isTypeParameterPossiblyReferenced:VZe,typeHasCallOrConstructSignatures:stt,getSymbolFlags:zb};function jn(l,C){let E=new Set,D=[];Bc(C,()=>xi(l,D,void 0,0));for(let W of D)E.add(W);D.length=0,xs(C,()=>xi(l,D,void 0,0));for(let W of D)E.add(W);return on(E)}function xs(l,C){if(l=Si(l,E$),l){let E=[],D=[];for(;l;){let M=Jo(l);if(E.push([M,M.resolvedSignature]),M.resolvedSignature=void 0,RG(l)){let se=al(Oo(l)),Ee=se.type;D.push([se,Ee]),se.type=void 0}l=Si(l.parent,E$)}let W=C();for(let[M,se]of E)M.resolvedSignature=se;for(let[M,se]of D)M.type=se;return W}return C()}function Bc(l,C){let E=Si(l,CG);if(E){let W=l;do Jo(W).skipDirectInference=!0,W=W.parent;while(W&&W!==E)}de=!0;let D=xs(l,C);if(de=!1,E){let W=l;do Jo(W).skipDirectInference=void 0,W=W.parent;while(W&&W!==E)}return D}function xi(l,C,E,D){let W=zc(l,CG);Hr=E;let M=W?Hre(W,C,D):void 0;return Hr=void 0,M}var rc=new Map,Wl=new Map,gl=new Map,mc=new Map,_s=new Map,Pu=new Map,ir=new Map,ni=new Map,gs=new Map,Hs=new Map,za=new Map,nc=new Map,Rc=new Map,lg=new Map,ju=new Map,Bi=[],vA=new Map,kr=new Set,en=wA(4,"unknown"),ct=wA(0,"__resolving__"),rn=new Map,wt=new Map,br=new Set,Mt=VC(1,"any"),_r=VC(1,"any",262144,"auto"),Pr=VC(1,"any",void 0,"wildcard"),ti=VC(1,"any",void 0,"blocked string"),cr=VC(1,"error"),kn=VC(1,"unresolved"),Pn=VC(1,"any",65536,"non-inferrable"),an=VC(1,"intrinsic"),Kr=VC(2,"unknown"),wn=VC(32768,"undefined"),Pe=nt?wn:VC(32768,"undefined",65536,"widening"),ar=VC(32768,"undefined",void 0,"missing"),sn=He?ar:wn,Qe=VC(32768,"undefined",void 0,"optional"),ur=VC(65536,"null"),Re=nt?ur:VC(65536,"null",65536,"widening"),Jt=VC(4,"string"),bt=VC(8,"number"),Vt=VC(64,"bigint"),dn=VC(512,"false",void 0,"fresh"),On=VC(512,"false"),Qn=VC(512,"true",void 0,"fresh"),Ii=VC(512,"true");Qn.regularType=Ii,Qn.freshType=Qn,Ii.regularType=Ii,Ii.freshType=Qn,dn.regularType=On,dn.freshType=dn,On.regularType=On,On.freshType=dn;var ds=wa([On,Ii]),Es=VC(4096,"symbol"),so=VC(16384,"void"),Vi=VC(131072,"never"),xo=VC(131072,"never",262144,"silent"),Yc=VC(131072,"never",void 0,"implicit"),Il=VC(131072,"never",void 0,"unreachable"),sa=VC(67108864,"object"),Ra=wa([Jt,bt]),ki=wa([Jt,bt,Es]),Gs=wa([bt,Vt]),ri=wa([Jt,bt,ds,Vt,ur,wn]),_u=q4(["",""],[bt]),UA=LZe(l=>l.flags&262144?gds(l):l,()=>"(restrictive mapper)"),Hd=LZe(l=>l.flags&262144?Pr:l,()=>"(permissive mapper)"),Gd=VC(131072,"never",void 0,"unique literal"),Nl=LZe(l=>l.flags&262144?Gd:l,()=>"(unique literal mapper)"),ug,hf=LZe(l=>(ug&&(l===uI||l===U0||l===K0)&&ug(!0),l),()=>"(unmeasurable reporter)"),qc=LZe(l=>(ug&&(l===uI||l===U0||l===K0)&&ug(!1),l),()=>"(unreliable reporter)"),Lc=qn(void 0,Be,v,v,v),jm=qn(void 0,Be,v,v,v);jm.objectFlags|=2048;var xf=wA(2048,"__type");xf.members=xu();var I0=qn(xf,Be,v,v,v),kI=qn(void 0,Be,v,v,v),o_=nt?wa([wn,ur,kI]):Kr,Ug=qn(void 0,Be,v,v,v);Ug.instantiations=new Map;var _f=qn(void 0,Be,v,v,v);_f.objectFlags|=262144;var Yd=qn(void 0,Be,v,v,v),qA=qn(void 0,Be,v,v,v),di=qn(void 0,Be,v,v,v),uI=$2(),U0=$2();U0.constraint=uI;var K0=$2(),Xb=$2(),nf=$2();nf.constraint=Xb;var GI=z0e(1,"<>",0,Mt),yt=ik(void 0,void 0,void 0,v,Mt,void 0,0,0),tt=ik(void 0,void 0,void 0,v,cr,void 0,0,0),gr=ik(void 0,void 0,void 0,v,Mt,void 0,0,0),mn=ik(void 0,void 0,void 0,v,xo,void 0,0,0),Ri=bD(bt,Jt,!0),Yo=new Map,fi={get yieldType(){return w.fail("Not supported")},get returnType(){return w.fail("Not supported")},get nextType(){return w.fail("Not supported")}},Xo=mL(Mt,Mt,Mt),_c=mL(Mt,Mt,Kr),ic=mL(Vi,Mt,wn),Pg={iterableCacheKey:"iterationTypesOfAsyncIterable",iteratorCacheKey:"iterationTypesOfAsyncIterator",iteratorSymbolName:"asyncIterator",getGlobalIteratorType:Ygs,getGlobalIterableType:w$e,getGlobalIterableIteratorType:Xgs,getGlobalGeneratorType:Jgs,resolveIterationType:(l,C)=>pJ(l,C,Z.Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member),mustHaveANextMethodDiagnostic:Z.An_async_iterator_must_have_a_next_method,mustBeAMethodDiagnostic:Z.The_0_property_of_an_async_iterator_must_be_a_method,mustHaveAValueDiagnostic:Z.The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property},sf={iterableCacheKey:"iterationTypesOfIterable",iteratorCacheKey:"iterationTypesOfIterator",iteratorSymbolName:"iterator",getGlobalIteratorType:Ugs,getGlobalIterableType:h3t,getGlobalIterableIteratorType:Kgs,getGlobalGeneratorType:jgs,resolveIterationType:(l,C)=>l,mustHaveANextMethodDiagnostic:Z.An_iterator_must_have_a_next_method,mustBeAMethodDiagnostic:Z.The_0_property_of_an_iterator_must_be_a_method,mustHaveAValueDiagnostic:Z.The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property},qC,Jf=new Map,Fm=new Map,of,Zm,Jb,FI,$C,H2,qt,Fn,Bs,Rl,SA,OA,JI,Em,np,Xd,_C,Ub,pT,Y2,gb,WB,X2,lD,uD,Ab,em,gD,Kb,LN,J2,rt,qr,Mn,Jn,cs,Zs,qo,Ja,Ge,Yt,En,Rs,yc,Cu,Pl,Bu,ad,oA,gI,PB,nw,AD,qx,YZ,$x,OB,U2=new Map,ip=0,Z_=0,j0=0,iw=!1,XZ=0,HG,kV,Pv,GV=[],Ov=[],EP=[],fT=0,K2=[],YG=[],rr=0,Tr=fb(""),xn=pw(0),ci=x$e({negative:!1,base10Value:"0"}),Wi=[],zs=[],zi=[],mo=0,vc=!1,Io=0,ac=10,Ws=[],nu=[],Yg=[],zm=[],C0=[],Qv=[],JZ=[],Mv=[],I7=[],sre=[],C7=[],DM=[],BP=[],vP=[],SP=[],D4=[],UZ=[],xM=[],ek=[],kM=0,KA=BG(),x4=BG(),k4=iL(),wP,XG,VN=new Map,QB=new Map,db=new Map,YE=new Map,jb=new Map,KZ=new Map,m7=[[".mts",".mjs"],[".ts",".js"],[".cts",".cjs"],[".mjs",".mjs"],[".js",".js"],[".cjs",".cjs"],[".tsx",Ne.jsx===1?".jsx":".js"],[".jsx",".jsx"],[".json",".json"]];return ays(),gi;function h7(l){return!fo(l)||!sr(l.name)||!fo(l.expression)&&!sr(l.expression)?!1:sr(l.expression)?oo(l.expression)==="Symbol"&&Sy(l.expression)===(Fre("Symbol",1160127,void 0)||en):sr(l.expression.expression)?oo(l.expression.name)==="Symbol"&&oo(l.expression.expression)==="globalThis"&&Sy(l.expression.expression)===Dr:!1}function TP(l){return l?ju.get(l):void 0}function jZ(l,C){return l&&ju.set(l,C),C}function NP(l){if(l){let C=ls(l);if(C)if(p4(l)){if(C.localJsxFragmentNamespace)return C.localJsxFragmentNamespace;let E=C.pragmas.get("jsxfrag");if(E){let W=Na(E)?E[0]:E;if(C.localJsxFragmentFactory=H6(W.arguments.factory,Me),xr(C.localJsxFragmentFactory,Bm,T_),C.localJsxFragmentFactory)return C.localJsxFragmentNamespace=sb(C.localJsxFragmentFactory).escapedText}let D=oQt(l);if(D)return C.localJsxFragmentFactory=D,C.localJsxFragmentNamespace=sb(D).escapedText}else{let E=_7(C);if(E)return C.localJsxNamespace=E}}return wP||(wP="React",Ne.jsxFactory?(XG=H6(Ne.jsxFactory,Me),xr(XG,Bm),XG&&(wP=sb(XG).escapedText)):Ne.reactNamespace&&(wP=Dd(Ne.reactNamespace))),XG||(XG=_e.createQualifiedName(_e.createIdentifier(wc(wP)),"createElement")),wP}function _7(l){if(l.localJsxNamespace)return l.localJsxNamespace;let C=l.pragmas.get("jsx");if(C){let E=Na(C)?C[0]:C;if(l.localJsxFactory=H6(E.arguments.factory,Me),xr(l.localJsxFactory,Bm,T_),l.localJsxFactory)return l.localJsxNamespace=sb(l.localJsxFactory).escapedText}}function Bm(l){return MS(l,-1,-1),ns(l,Bm,void 0)}function zZ(l,C,E){return E||qKr(l,C),Et}function y7(l,C,...E){let D=l?Js(l,C,...E):If(C,...E),W=KA.lookup(D);return W||(KA.add(D),D)}function IT(l,C,E,...D){let W=fr(C,E,...D);return W.skippedOn=l,W}function G4(l,C,...E){return l?Js(l,C,...E):If(C,...E)}function fr(l,C,...E){let D=G4(l,C,...E);return KA.add(D),D}function sw(l,C){l?KA.add(C):x4.add({...C,category:2})}function qm(l,C,E,...D){if(C.pos<0||C.end<0){if(!l)return;let W=ls(C);sw(l,"message"in E?Cm(W,0,0,E,...D):ne(W,E));return}sw(l,"message"in E?Js(C,E,...D):ZS(ls(C),C,E))}function RP(l,C,E,...D){let W=fr(l,E,...D);if(C){let M=Js(l,Z.Did_you_forget_to_use_await);tg(W,M)}return W}function dD(l,C){let E=Array.isArray(l)?X(l,Vb):Vb(l);return E&&tg(C,Js(E,Z.The_declaration_was_marked_as_deprecated_here)),x4.add(C),C}function MB(l){let C=a_(l);return C&&O(l.declarations)>1?C.flags&64?lr(l.declarations,WN):he(l.declarations,WN):!!l.valueDeclaration&&WN(l.valueDeclaration)||O(l.declarations)&&he(l.declarations,WN)}function WN(l){return!!(aH(l)&536870912)}function JG(l,C,E){let D=Js(l,Z._0_is_deprecated,E);return dD(C,D)}function ege(l,C,E,D){let W=E?Js(l,Z.The_signature_0_of_1_is_deprecated,D,E):Js(l,Z._0_is_deprecated,D);return dD(C,W)}function wA(l,C,E){V++;let D=new h(l|33554432,C);return D.links=new IGr,D.links.checkFlags=E||0,D}function ow(l,C){let E=wA(1,l);return E.links.type=C,E}function GM(l,C){let E=wA(4,l);return E.links.type=C,E}function F4(l){let C=0;return l&2&&(C|=111551),l&1&&(C|=111550),l&4&&(C|=0),l&8&&(C|=900095),l&16&&(C|=110991),l&32&&(C|=899503),l&64&&(C|=788872),l&256&&(C|=899327),l&128&&(C|=899967),l&512&&(C|=110735),l&8192&&(C|=103359),l&32768&&(C|=46015),l&65536&&(C|=78783),l&262144&&(C|=526824),l&524288&&(C|=788968),l&2097152&&(C|=2097152),C}function Z4(l,C){C.mergeId||(C.mergeId=pGr,pGr++),Ws[C.mergeId]=l}function DP(l){let C=wA(l.flags,l.escapedName);return C.declarations=l.declarations?l.declarations.slice():[],C.parent=l.parent,l.valueDeclaration&&(C.valueDeclaration=l.valueDeclaration),l.constEnumOnlyModule&&(C.constEnumOnlyModule=!0),l.members&&(C.members=new Map(l.members)),l.exports&&(C.exports=new Map(l.exports)),Z4(C,l),C}function UG(l,C,E=!1){if(!(l.flags&F4(C.flags))||(C.flags|l.flags)&67108864){if(C===l)return l;if(!(l.flags&33554432)){let M=UI(l);if(M===en)return C;if(!(M.flags&F4(C.flags))||(C.flags|M.flags)&67108864)l=DP(M);else return D(l,C),C}C.flags&512&&l.flags&512&&l.constEnumOnlyModule&&!C.constEnumOnlyModule&&(l.constEnumOnlyModule=!1),l.flags|=C.flags,C.valueDeclaration&&uee(l,C.valueDeclaration),ai(l.declarations,C.declarations),C.members&&(l.members||(l.members=xu()),M1(l.members,C.members,E)),C.exports&&(l.exports||(l.exports=xu()),M1(l.exports,C.exports,E)),E||Z4(l,C)}else l.flags&1024?l!==Dr&&fr(C.declarations&&Sl(C.declarations[0]),Z.Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity,$c(l)):D(l,C);return l;function D(M,se){let Ee=!!(M.flags&384||se.flags&384),Ve=!!(M.flags&2||se.flags&2),Oe=Ee?Z.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:Ve?Z.Cannot_redeclare_block_scoped_variable_0:Z.Duplicate_identifier_0,ot=se.declarations&&ls(se.declarations[0]),Wt=M.declarations&&ls(M.declarations[0]),Rt=B5(ot,Ne.checkJs),Qr=B5(Wt,Ne.checkJs),ln=$c(se);if(ot&&Wt&&qC&&!Ee&&ot!==Wt){let hn=dh(ot.path,Wt.path)===-1?ot:Wt,mi=hn===ot?Wt:ot,Ti=we(qC,`${hn.path}|${mi.path}`,()=>({firstFile:hn,secondFile:mi,conflictingSymbols:new Map})),ks=we(Ti.conflictingSymbols,ln,()=>({isBlockScoped:Ve,firstFileLocations:[],secondFileLocations:[]}));Rt||W(ks.firstFileLocations,se),Qr||W(ks.secondFileLocations,M)}else Rt||KG(se,Oe,ln,M),Qr||KG(M,Oe,ln,se)}function W(M,se){if(se.declarations)for(let Ee of se.declarations)da(M,Ee)}}function KG(l,C,E,D){X(l.declarations,W=>{xP(W,C,E,D.declarations)})}function xP(l,C,E,D){let W=(vZ(l,!1)?Ame(l):Sl(l))||l,M=y7(W,C,E);for(let se of D||v){let Ee=(vZ(se,!1)?Ame(se):Sl(se))||se;if(Ee===W)continue;M.relatedInformation=M.relatedInformation||[];let Ve=Js(Ee,Z._0_was_also_declared_here,E),Oe=Js(Ee,Z.and_here);O(M.relatedInformation)>=5||lr(M.relatedInformation,ot=>C6(ot,Oe)===0||C6(ot,Ve)===0)||tg(M,O(M.relatedInformation)?Oe:Ve)}}function j2(l,C){if(!l?.size)return C;if(!C?.size)return l;let E=xu();return M1(E,l),M1(E,C),E}function M1(l,C,E=!1){C.forEach((D,W)=>{let M=l.get(W);l.set(W,M?UG(M,D,E):FA(D))})}function qZ(l){var C,E,D;let W=l.parent;if(((C=W.symbol.declarations)==null?void 0:C[0])!==W){w.assert(W.symbol.declarations.length>1);return}if(S2(W))M1(kt,W.symbol.exports);else{let M=l.parent.parent.flags&33554432?void 0:Z.Invalid_module_name_in_augmentation_module_0_cannot_be_found,se=O4(l,l,M,!0);if(!se)return;if(se=pb(se),se.flags&1920)if(lr(Zm,Ee=>se===Ee.symbol)){let Ee=UG(W.symbol,se,!0);Jb||(Jb=new Map),Jb.set(l.text,Ee)}else{if((E=se.exports)!=null&&E.get("__export")&&((D=W.symbol.exports)!=null&&D.size)){let Ee=QWt(se,"resolvedExports");for(let[Ve,Oe]of on(W.symbol.exports.entries()))Ee.has(Ve)&&!se.exports.has(Ve)&&UG(Ee.get(Ve),Oe)}UG(se,W.symbol)}else fr(l,Z.Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity,l.text)}}function $Z(){let l=Zt.escapedName,C=kt.get(l);C?X(C.declarations,E=>{$5(E)||KA.add(Js(E,Z.Declaration_name_conflicts_with_built_in_global_identifier_0,wc(l)))}):kt.set(l,Zt)}function al(l){if(l.flags&33554432)return l.links;let C=Gg(l);return nu[C]??(nu[C]=new IGr)}function Jo(l){let C=od(l);return Yg[C]||(Yg[C]=new v6i)}function L_(l,C,E){if(E){let D=FA(l.get(C));if(D&&(D.flags&E||D.flags&2097152&&zb(D)&E))return D}}function ore(l,C){let E=l.parent,D=l.parent.parent,W=L_(E.locals,C,111551),M=L_(JV(D.symbol),C,111551);return W&&M?[W,M]:w.fail("There should exist two symbols, one as property declaration and one as parameter declaration")}function aw(l,C){let E=ls(l),D=ls(C),W=w2(l);if(E!==D){if(De&&(E.externalModuleIndicator||D.externalModuleIndicator)||!Ne.outFile||V5(C)||l.flags&33554432||se(C,l))return!0;let Ve=n.getSourceFiles();return Ve.indexOf(E)<=Ve.indexOf(D)}if(C.flags&16777216||V5(C)||yPt(C))return!0;if(l.pos<=C.pos&&!(Hl(l)&&q$(C.parent)&&!l.initializer&&!l.exclamationToken)){if(l.kind===208){let Ve=bG(C,208);return Ve?Si(Ve,hl)!==Si(l,hl)||l.posOe===l?"quit":kg(Oe)?Oe.parent.parent===l:!lt&&FC(Oe)&&(Oe.parent===l||lI(Oe.parent)&&Oe.parent.parent===l||fX(Oe.parent)&&Oe.parent.parent===l||Hl(Oe.parent)&&Oe.parent.parent===l||Uc(Oe.parent)&&Oe.parent.parent.parent===l));return Ve?!lt&&FC(Ve)?!!Si(C,Oe=>Oe===Ve?"quit":eu(Oe)&&!q9(Oe)):!1:!0}else{if(Hl(l))return!Ee(l,C,!1);if(Zn(l,l.parent))return!(je&&Km(l)===Km(C)&&se(C,l))}}return!0}if(C.parent.kind===281||C.parent.kind===277&&C.parent.isExportEquals||C.kind===277&&C.isExportEquals)return!0;if(se(C,l))return je&&Km(l)&&(Hl(l)||Zn(l,l.parent))?!Ee(l,C,!0):!0;return!1;function M(Ve,Oe){switch(Ve.parent.parent.kind){case 243:case 248:case 250:if(zG(Oe,Ve,W))return!0;break}let ot=Ve.parent.parent;return bZ(ot)&&zG(Oe,ot.expression,W)}function se(Ve,Oe){return!!Si(Ve,ot=>{if(ot===W)return"quit";if(eu(ot))return!0;if(ef(ot))return Oe.posVe.end?!1:Si(Oe,Rt=>{if(Rt===Ve)return"quit";switch(Rt.kind){case 219:return!0;case 172:return ot&&(Hl(Ve)&&Rt.parent===Ve.parent||Zn(Ve,Ve.parent)&&Rt.parent===Ve.parent.parent)?"quit":!0;case 241:switch(Rt.parent.kind){case 177:case 174:case 178:return!0;default:return!1}default:return!1}})===void 0}}function b7(l){return Jo(l).declarationRequiresScopeChange}function pD(l,C){Jo(l).declarationRequiresScopeChange=C}function eL(l,C,E,D){return je?!1:(l&&!D&&FM(l,C,C)||fr(l,l&&E.type&&y2(E.type,l.pos)?Z.Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:Z.Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor,kd(E.name),H1(C)),!0)}function jG(l,C,E,D){let W=Ya(C)?C:C.escapedText;u(()=>{if(!l||l.parent.kind!==324&&!FM(l,W,C)&&!xp(l)&&!cre(l,W,E)&&!E7(l,W)&&!m0(l,W,E)&&!tge(l,W,E)&&!L4(l,W,E)){let M,se;if(C&&(se=XIs(C),se&&fr(l,D,H1(C),se)),!se&&Io{var se;let Ee=C.escapedName,Ve=D&&Fc(D)&&na(D);if(l&&(E&2||(E&32||E&384)&&(E&111551)===111551)){let Oe=X1(C);(Oe.flags&2||Oe.flags&32||Oe.flags&384)&&uu(Oe,l)}if(Ve&&(E&111551)===111551&&!(l.flags&16777216)){let Oe=FA(C);O(Oe.declarations)&&he(Oe.declarations,ot=>Phe(ot)||Fc(ot)&&!!ot.symbol.globalExports)&&qm(!Ne.allowUmdGlobalAccess,l,Z._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead,wc(Ee))}if(W&&!M&&(E&111551)===111551){let Oe=FA(f$e(C)),ot=PS(W);Oe===Oo(W)?fr(l,Z.Parameter_0_cannot_reference_itself,kd(W.name)):Oe.valueDeclaration&&Oe.valueDeclaration.pos>W.pos&&ot.parent.locals&&L_(ot.parent.locals,Oe.escapedName,E)===Oe&&fr(l,Z.Parameter_0_cannot_reference_identifier_1_declared_after_it,kd(W.name),kd(l))}if(l&&E&111551&&C.flags&2097152&&!(C.flags&111551)&&!xZ(l)){let Oe=MN(C,111551);if(Oe){let ot=Oe.kind===281||Oe.kind===278||Oe.kind===280?Z._0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:Z._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type,Wt=wc(Ee);kP(fr(l,ot,Wt),Oe,Wt)}}if(Ne.isolatedModules&&C&&Ve&&(E&111551)===111551){let ot=L_(kt,Ee,E)===C&&Fc(D)&&D.locals&&L_(D.locals,Ee,-111552);if(ot){let Wt=(se=ot.declarations)==null?void 0:se.find(Rt=>Rt.kind===276||Rt.kind===273||Rt.kind===274||Rt.kind===271);Wt&&!H9(Wt)&&fr(Wt,Z.Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled,wc(Ee))}}})}function kP(l,C,E){return C?tg(l,Js(C,C.kind===281||C.kind===278||C.kind===280?Z._0_was_exported_here:Z._0_was_imported_here,E)):l}function H1(l){return Ya(l)?wc(l):kd(l)}function FM(l,C,E){if(!sr(l)||l.escapedText!==C||$Kr(l)||V5(l))return!1;let D=n0(l,!1,!1),W=D;for(;W;){if(va(W.parent)){let M=Oo(W.parent);if(!M)break;let se=co(M);if(yg(se,C))return fr(l,Z.Cannot_find_name_0_Did_you_mean_the_static_member_1_0,H1(E),$c(M)),!0;if(W===D&&!eg(W)){let Ee=kp(M).thisType;if(yg(Ee,C))return fr(l,Z.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0,H1(E)),!0}}W=W.parent}return!1}function xp(l){let C=tk(l);return C&&ZI(C,64,!0)?(fr(l,Z.Cannot_extend_an_interface_0_Did_you_mean_implements,Nf(C)),!0):!1}function tk(l){switch(l.kind){case 80:case 211:return l.parent?tk(l.parent):void 0;case 233:if(lp(l.expression))return l.expression;default:return}}function cre(l,C,E){let D=1920|(io(l)?111551:0);if(E===D){let W=UI(Pi(l,C,788968&~D,void 0,!1)),M=l.parent;if(W){if(c0(M)){w.assert(M.left===l,"Should only be resolving left side of qualified name as a namespace");let se=M.right.escapedText;if(yg(kp(W),se))return fr(M,Z.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(C),wc(se)),!0}return fr(l,Z._0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here,wc(C)),!0}}return!1}function L4(l,C,E){if(E&788584){let D=UI(Pi(l,C,111127,void 0,!1));if(D&&!(D.flags&1920))return fr(l,Z._0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0,wc(C)),!0}return!1}function ZM(l){return l==="any"||l==="string"||l==="number"||l==="boolean"||l==="never"||l==="unknown"}function E7(l,C){return ZM(C)&&l.parent.kind===281?(fr(l,Z.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module,C),!0):!1}function tge(l,C,E){if(E&111551){if(ZM(C)){let M=l.parent.parent;if(M&&M.parent&&OE(M)){let se=M.token,Ee=M.parent.kind;Ee===264&&se===96?fr(l,Z.An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types,wc(C)):Ee===263&&se===96?fr(l,Z.A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values,wc(C)):Ee===263&&se===119&&fr(l,Z.A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types,wc(C))}else fr(l,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,wc(C));return!0}let D=UI(Pi(l,C,788544,void 0,!1)),W=D&&zb(D);if(D&&W!==void 0&&!(W&111551)){let M=wc(C);return Lo(C)?fr(l,Z._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,M):lre(l,D)?fr(l,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0,M,M==="K"?"P":"K"):fr(l,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,M),!0}}return!1}function lre(l,C){let E=Si(l.parent,D=>kg(D)||i_(D)?!1:Se(D)||"quit");if(E&&E.members.length===1){let D=kp(C);return!!(D.flags&1048576)&&Sye(D,384,!0)}return!1}function Lo(l){switch(l){case"Promise":case"Symbol":case"Map":case"WeakMap":case"Set":case"WeakSet":return!0}return!1}function m0(l,C,E){if(E&111127){if(UI(Pi(l,C,1024,void 0,!1)))return fr(l,Z.Cannot_use_namespace_0_as_a_value,wc(C)),!0}else if(E&788544&&UI(Pi(l,C,1536,void 0,!1)))return fr(l,Z.Cannot_use_namespace_0_as_a_type,wc(C)),!0;return!1}function uu(l,C){var E;if(w.assert(!!(l.flags&2||l.flags&32||l.flags&384)),l.flags&67108881&&l.flags&32)return;let D=(E=l.declarations)==null?void 0:E.find(W=>W$(W)||va(W)||W.kind===266);if(D===void 0)return w.fail("checkResolvedBlockScopedVariable could not find block-scoped declaration");if(!(D.flags&33554432)&&!aw(D,C)){let W,M=kd(Sl(D));l.flags&2?W=fr(C,Z.Block_scoped_variable_0_used_before_its_declaration,M):l.flags&32?W=fr(C,Z.Class_0_used_before_its_declaration,M):l.flags&256?W=fr(C,Z.Enum_0_used_before_its_declaration,M):(w.assert(!!(l.flags&128)),VE(Ne)&&(W=fr(C,Z.Enum_0_used_before_its_declaration,M))),W&&tg(W,Js(D,Z._0_is_declared_here,M))}}function zG(l,C,E){return!!C&&!!Si(l,D=>D===C||(D===E||eu(D)&&(!q9(D)||YI(D)&3)?"quit":!1))}function V4(l){switch(l.kind){case 271:return l;case 273:return l.parent;case 274:return l.parent.parent;case 276:return l.parent.parent.parent;default:return}}function XE(l){return l.declarations&&Te(l.declarations,lo)}function lo(l){return l.kind===271||l.kind===270||l.kind===273&&!!l.name||l.kind===274||l.kind===280||l.kind===276||l.kind===281||l.kind===277&&U3(l)||ro(l)&&mI(l)===2&&U3(l)||mp(l)&&ro(l.parent)&&l.parent.left===l&&l.parent.operatorToken.kind===64&&B7(l.parent.right)||l.kind===304||l.kind===303&&B7(l.initializer)||l.kind===260&&$9(l)||l.kind===208&&$9(l.parent.parent)}function B7(l){return mee(l)||PA(l)&&$N(l)}function v7(l,C){let E=qG(l);if(E){let W=Y5(E.expression).arguments[0];return sr(E.name)?UI(yg(LYr(W),E.name.escapedText)):void 0}if(js(l)||l.moduleReference.kind===283){let W=q0(l,gme(l)||M8(l)),M=pb(W);return YB(l,W,M,!1),M}let D=T7(l.moduleReference,C);return z0(l,D),D}function z0(l,C){if(YB(l,void 0,C,!1)&&!l.isTypeOnly){let E=MN(Oo(l)),D=E.kind===281||E.kind===278,W=D?Z.An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:Z.An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type,M=D?Z._0_was_exported_here:Z._0_was_imported_here,se=E.kind===278?"*":wc(E.name.escapedText);tg(fr(l.moduleReference,W),Js(E,M,se))}}function cw(l,C,E,D){let W=l.exports.get("export="),M=W?yg(co(W),C,!0):l.exports.get(C),se=UI(M,D);return YB(E,M,se,!1),se}function Hv(l){return rf(l)&&!l.isExportEquals||ya(l,2048)||l0(l)||sD(l)}function tL(l){return JA(l)?n.getModeForUsageLocation(ls(l),l):void 0}function LM(l,C){return l===99&&C===1}function PN(l){return tL(l)===99&&fl(l.text,".json")}function JE(l,C,E,D){let W=l&&tL(D);if(l&&W!==void 0&&100<=De&&De<=199){let M=LM(W,l.impliedNodeFormat);if(W===99||M)return M}if(!st)return!1;if(!l||l.isDeclarationFile){let M=cw(C,"default",void 0,!0);return!(M&&lr(M.declarations,Hv)||cw(C,Dd("__esModule"),void 0,E))}return i0(l)?typeof l.externalModuleIndicator!="object"&&!cw(C,Dd("__esModule"),void 0,E):OP(C)}function ON(l,C){let E=q0(l,l.parent.moduleSpecifier);if(E)return HB(E,l,C)}function HB(l,C,E){var D;let W;O3(l)?W=l:W=cw(l,"default",C,E);let M=(D=l.declarations)==null?void 0:D.find(Fc),se=rk(C);if(!se)return W;let Ee=PN(se),Ve=JE(M,l,E,se);if(!W&&!Ve&&!Ee)if(OP(l)&&!st){let Oe=De>=5?"allowSyntheticDefaultImports":"esModuleInterop",Wt=l.exports.get("export=").valueDeclaration,Rt=fr(C.name,Z.Module_0_can_only_be_default_imported_using_the_1_flag,$c(l),Oe);Wt&&tg(Rt,Js(Wt,Z.This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag,Oe))}else oT(C)?GP(l,C):lw(l,l,C,M9(C)&&C.propertyName||C.name);else if(Ve||Ee){let Oe=pb(l,E)||UI(l,E);return YB(C,l,Oe,!1),Oe}return YB(C,W,void 0,!1),W}function rk(l){switch(l.kind){case 273:return l.parent.moduleSpecifier;case 271:return ZG(l.moduleReference)?l.moduleReference.expression:void 0;case 274:return l.parent.parent.moduleSpecifier;case 276:return l.parent.parent.parent.moduleSpecifier;case 281:return l.parent.parent.moduleSpecifier;default:return w.assertNever(l)}}function GP(l,C){var E,D,W;if((E=l.exports)!=null&&E.has(C.symbol.escapedName))fr(C.name,Z.Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead,$c(l),$c(C.symbol));else{let M=fr(C.name,Z.Module_0_has_no_default_export,$c(l)),se=(D=l.exports)==null?void 0:D.get("__export");if(se){let Ee=(W=se.declarations)==null?void 0:W.find(Ve=>{var Oe,ot;return!!(hC(Ve)&&Ve.moduleSpecifier&&((ot=(Oe=q0(Ve,Ve.moduleSpecifier))==null?void 0:Oe.exports)!=null&&ot.has("default")))});Ee&&tg(M,Js(Ee,Z.export_Asterisk_does_not_re_export_a_default))}}}function S7(l,C){let E=l.parent.parent.moduleSpecifier,D=q0(l,E),W=PP(D,E,C,!1);return YB(l,D,W,!1),W}function W4(l,C){let E=l.parent.moduleSpecifier,D=E&&q0(l,E),W=E&&PP(D,E,C,!1);return YB(l,D,W,!1),W}function VM(l,C){if(l===en&&C===en)return en;if(l.flags&790504)return l;let E=wA(l.flags|C.flags,l.escapedName);return w.assert(l.declarations||C.declarations),E.declarations=NA(vi(l.declarations,C.declarations),Qg),E.parent=l.parent||C.parent,l.valueDeclaration&&(E.valueDeclaration=l.valueDeclaration),C.members&&(E.members=new Map(C.members)),l.exports&&(E.exports=new Map(l.exports)),E}function ure(l,C,E,D){var W;if(l.flags&1536){let M=Y1(l).get(C.escapedText),se=UI(M,D),Ee=(W=al(l).typeOnlyExportStarMap)==null?void 0:W.get(C.escapedText);return YB(E,M,se,!1,Ee,C.escapedText),se}}function P4(l,C){if(l.flags&3){let E=l.valueDeclaration.type;if(E)return UI(yg(Vc(E),C))}}function FP(l,C,E=!1){var D;let W=gme(l)||l.moduleSpecifier,M=q0(l,W),se=!fo(C)&&C.propertyName||C.name;if(!sr(se))return;let Ee=se.escapedText==="default"&&st,Ve=PP(M,W,!1,Ee);if(Ve&&se.escapedText){if(O3(M))return M;let Oe;M&&M.exports&&M.exports.get("export=")?Oe=yg(co(Ve),se.escapedText,!0):Oe=P4(Ve,se.escapedText),Oe=UI(Oe,E);let ot=ure(Ve,se,C,E);if(ot===void 0&&se.escapedText==="default"){let Rt=(D=M.declarations)==null?void 0:D.find(Fc);(PN(W)||JE(Rt,M,E,W))&&(ot=pb(M,E)||UI(M,E))}let Wt=ot&&Oe&&ot!==Oe?VM(Oe,ot):ot||Oe;return Wt||lw(M,Ve,l,se),Wt}}function lw(l,C,E,D){var W;let M=HN(l,E),se=kd(D),Ee=nOt(D,C);if(Ee!==void 0){let Ve=$c(Ee),Oe=fr(D,Z._0_has_no_exported_member_named_1_Did_you_mean_2,M,se,Ve);Ee.valueDeclaration&&tg(Oe,Js(Ee.valueDeclaration,Z._0_is_declared_here,Ve))}else(W=l.exports)!=null&&W.has("default")?fr(D,Z.Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead,M,se):gre(E,D,se,l,M)}function gre(l,C,E,D,W){var M,se;let Ee=(se=(M=$s(D.valueDeclaration,Nv))==null?void 0:M.locals)==null?void 0:se.get(C.escapedText),Ve=D.exports;if(Ee){let Oe=Ve?.get("export=");if(Oe)uw(Oe,Ee)?ZP(l,C,E,W):fr(C,Z.Module_0_has_no_exported_member_1,W,E);else{let ot=Ve?be(n3t(Ve),Rt=>!!uw(Rt,Ee)):void 0,Wt=ot?fr(C,Z.Module_0_declares_1_locally_but_it_is_exported_as_2,W,E,$c(ot)):fr(C,Z.Module_0_declares_1_locally_but_it_is_not_exported,W,E);Ee.declarations&&tg(Wt,...Ot(Ee.declarations,(Rt,Qr)=>Js(Rt,Qr===0?Z._0_is_declared_here:Z.and_here,E)))}}else fr(C,Z.Module_0_has_no_exported_member_1,W,E)}function ZP(l,C,E,D){if(De>=5){let W=CN(Ne)?Z._0_can_only_be_imported_by_using_a_default_import:Z._0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;fr(C,W,E)}else if(io(l)){let W=CN(Ne)?Z._0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:Z._0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;fr(C,W,E)}else{let W=CN(Ne)?Z._0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:Z._0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;fr(C,W,E,E,D)}}function FV(l,C){if(yy(l)&&oo(l.propertyName||l.name)==="default"){let se=rk(l),Ee=se&&q0(l,se);if(Ee)return HB(Ee,l,C)}let E=hl(l)?PS(l):l.parent.parent.parent,D=qG(E),W=FP(E,D||l,C),M=l.propertyName||l.name;return D&&W&&sr(M)?UI(yg(co(W),M.escapedText),C):(YB(l,void 0,W,!1),W)}function qG(l){if(js(l)&&l.initializer&&fo(l.initializer))return l.initializer}function rL(l,C){if(v2(l.parent)){let E=pb(l.parent.symbol,C);return YB(l,void 0,E,!1),E}}function Yv(l,C,E){if(oo(l.propertyName||l.name)==="default"){let W=rk(l),M=W&&q0(l,W);if(M)return HB(M,l,!!E)}let D=l.parent.parent.moduleSpecifier?FP(l.parent.parent,l,E):ZI(l.propertyName||l.name,C,!1,E);return YB(l,void 0,D,!1),D}function nL(l,C){let E=rf(l)?l.expression:l.right,D=LP(E,C);return YB(l,void 0,D,!1),D}function LP(l,C){if(rp(l))return sC(l).symbol;if(!T_(l)&&!lp(l))return;let E=ZI(l,901119,!0,C);return E||(sC(l),Jo(l).resolvedSymbol)}function Ih(l,C){if(ro(l.parent)&&l.parent.left===l&&l.parent.operatorToken.kind===64)return LP(l.parent.right,C)}function $G(l,C=!1){switch(l.kind){case 271:case 260:return v7(l,C);case 273:return ON(l,C);case 274:return S7(l,C);case 280:return W4(l,C);case 276:case 208:return FV(l,C);case 281:return Yv(l,901119,C);case 277:case 226:return nL(l,C);case 270:return rL(l,C);case 304:return ZI(l.name,901119,!0,C);case 303:return LP(l.initializer,C);case 212:case 211:return Ih(l,C);default:return w.fail()}}function QN(l,C=901119){return l?(l.flags&(2097152|C))===2097152||!!(l.flags&2097152&&l.flags&67108864):!1}function UI(l,C){return!C&&QN(l)?$m(l):l}function $m(l){w.assert((l.flags&2097152)!==0,"Should only get Alias here.");let C=al(l);if(C.aliasTarget)C.aliasTarget===ct&&(C.aliasTarget=en);else{C.aliasTarget=ct;let E=XE(l);if(!E)return w.fail();let D=$G(E);C.aliasTarget===ct?C.aliasTarget=D||en:fr(E,Z.Circular_definition_of_import_alias_0,$c(l))}return C.aliasTarget}function eF(l){if(al(l).aliasTarget!==ct)return $m(l)}function zb(l,C,E){let D=C&&MN(l),W=D&&hC(D),M=D&&(W?q0(D.moduleSpecifier,D.moduleSpecifier,!0):$m(D.symbol)),se=W&&M?CT(M):void 0,Ee=E?0:l.flags,Ve;for(;l.flags&2097152;){let Oe=X1($m(l));if(!W&&Oe===M||se?.get(Oe.escapedName)===Oe)break;if(Oe===en)return-1;if(Oe===l||Ve?.has(Oe))break;Oe.flags&2097152&&(Ve?Ve.add(Oe):Ve=new Set([l,Oe])),Ee|=Oe.flags,l=Oe}return Ee}function YB(l,C,E,D,W,M){if(!l||fo(l))return!1;let se=Oo(l);if(Nx(l)){let Ve=al(se);return Ve.typeOnlyDeclaration=l,!0}if(W){let Ve=al(se);return Ve.typeOnlyDeclaration=W,se.escapedName!==M&&(Ve.typeOnlyExportStarName=M),!0}let Ee=al(se);return w7(Ee,C,D)||w7(Ee,E,D)}function w7(l,C,E){var D;if(C&&(l.typeOnlyDeclaration===void 0||E&&l.typeOnlyDeclaration===!1)){let W=((D=C.exports)==null?void 0:D.get("export="))??C,M=W.declarations&&be(W.declarations,Nx);l.typeOnlyDeclaration=M??al(W).typeOnlyDeclaration??!1}return!!l.typeOnlyDeclaration}function MN(l,C){var E;if(!(l.flags&2097152))return;let D=al(l);if(D.typeOnlyDeclaration===void 0){D.typeOnlyDeclaration=!1;let W=UI(l);YB((E=l.declarations)==null?void 0:E[0],XE(l)&&yet(l),W,!0)}if(C===void 0)return D.typeOnlyDeclaration||void 0;if(D.typeOnlyDeclaration){let W=D.typeOnlyDeclaration.kind===278?UI(CT(D.typeOnlyDeclaration.symbol.parent).get(D.typeOnlyExportStarName||l.escapedName)):$m(D.typeOnlyDeclaration.symbol);return zb(W)&C?D.typeOnlyDeclaration:void 0}}function T7(l,C){return l.kind===80&&a6(l)&&(l=l.parent),l.kind===80||l.parent.kind===166?ZI(l,1920,!1,C):(w.assert(l.parent.kind===271),ZI(l,901119,!1,C))}function HN(l,C){return l.parent?HN(l.parent,C)+"."+$c(l):$c(l,C,void 0,36)}function ZV(l){for(;c0(l.parent);)l=l.parent;return l}function Are(l){let C=sb(l),E=Pi(C,C,111551,void 0,!0);if(E){for(;c0(C.parent);){let D=co(E);if(E=yg(D,C.parent.right.escapedText),!E)return;C=C.parent}return E}}function ZI(l,C,E,D,W){if(Tf(l))return;let M=1920|(io(l)?C&111551:0),se;if(l.kind===80){let Ee=C===M||$d(l)?Z.Cannot_find_namespace_0:D4r(sb(l)),Ve=io(l)&&!$d(l)?dre(l,C):void 0;if(se=FA(Pi(W||l,l,C,E||Ve?void 0:Ee,!0,!1)),!se)return FA(Ve)}else if(l.kind===166||l.kind===211){let Ee=l.kind===166?l.left:l.expression,Ve=l.kind===166?l.right:l.name,Oe=ZI(Ee,M,E,!1,W);if(!Oe||Tf(Ve))return;if(Oe===en)return Oe;if(Oe.valueDeclaration&&io(Oe.valueDeclaration)&&o0(Ne)!==100&&js(Oe.valueDeclaration)&&Oe.valueDeclaration.initializer&&EUr(Oe.valueDeclaration.initializer)){let ot=Oe.valueDeclaration.initializer.arguments[0],Wt=q0(ot,ot);if(Wt){let Rt=pb(Wt);Rt&&(Oe=Rt)}}if(se=FA(L_(Y1(Oe),Ve.escapedText,C)),!se&&Oe.flags&2097152&&(se=FA(L_(Y1($m(Oe)),Ve.escapedText,C))),!se){if(!E){let ot=HN(Oe),Wt=kd(Ve),Rt=nOt(Ve,Oe);if(Rt){fr(Ve,Z._0_has_no_exported_member_named_1_Did_you_mean_2,ot,Wt,$c(Rt));return}let Qr=c0(l)&&ZV(l);if(FI&&C&788968&&Qr&&!nD(Qr.parent)&&Are(Qr)){fr(Qr,Z._0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0,r0(Qr));return}if(C&1920&&c0(l.parent)){let hn=FA(L_(Y1(Oe),Ve.escapedText,788968));if(hn){fr(l.parent.right,Z.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,$c(hn),wc(l.parent.right.escapedText));return}}fr(Ve,Z.Namespace_0_has_no_exported_member_1,ot,Wt)}return}}else w.assertNever(l,"Unknown entity name kind.");return!$d(l)&&T_(l)&&(se.flags&2097152||l.parent.kind===277)&&YB(hme(l),se,void 0,!0),se.flags&C||D?se:$m(se)}function dre(l,C){if(v$e(l.parent)){let E=pre(l.parent);if(E)return Pi(E,l,C,void 0,!0)}}function pre(l){if(Si(l,W=>kS(W)||W.flags&16777216?T2(W):"quit"))return;let E=tV(l);if(E&&Xf(E)&&lee(E.expression)){let W=Oo(E.expression.left);if(W)return VP(W)}if(E&&PA(E)&&lee(E.parent)&&Xf(E.parent.parent)){let W=Oo(E.parent.left);if(W)return VP(W)}if(E&&(RB(E)||jC(E))&&ro(E.parent.parent)&&mI(E.parent.parent)===6){let W=Oo(E.parent.parent.left);if(W)return VP(W)}let D=wZ(l);if(D&&eu(D)){let W=Oo(D);return W&&W.valueDeclaration}}function VP(l){let C=l.parent.valueDeclaration;return C?(X8(C)?x5(C):mG(C)?J8(C):void 0)||C:void 0}function rge(l){let C=l.valueDeclaration;if(!C||!io(C)||l.flags&524288||vZ(C,!1))return;let E=js(C)?J8(C):x5(C);if(E){let D=q2(E);if(D)return dOt(D,l)}}function q0(l,C,E){let W=o0(Ne)===1?Z.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:Z.Cannot_find_module_0_or_its_corresponding_type_declarations;return O4(l,C,E?void 0:W)}function O4(l,C,E,D=!1){return JA(C)?WM(l,C.text,E,C,D):void 0}function WM(l,C,E,D,W=!1){var M,se,Ee,Ve,Oe,ot,Wt,Rt,Qr,ln,hn;if(uc(C,"@types/")){let ma=Z.Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1,Ng=E_(C,"@types/");fr(D,ma,Ng,C)}let mi=i3t(C,!0);if(mi)return mi;let Ti=ls(l),ks=JA(l)?l:((M=mC(l)?l:l.parent&&mC(l.parent)&&l.parent.name===l?l.parent:void 0)==null?void 0:M.name)||((se=n_(l)?l:void 0)==null?void 0:se.argument.literal)||(io(l)&&DN(l)?l.moduleSpecifier:void 0)||(js(l)&&l.initializer&&H0(l.initializer,!0)?l.initializer.arguments[0]:void 0)||((Ee=Si(l,fC))==null?void 0:Ee.arguments[0])||((Ve=Si(l,hI))==null?void 0:Ve.moduleSpecifier)||((Oe=Si(l,BZ))==null?void 0:Oe.moduleReference.expression)||((ot=Si(l,hC))==null?void 0:ot.moduleSpecifier),Vo=ks&&JA(ks)?n.getModeForUsageLocation(Ti,ks):Ti.impliedNodeFormat,Hi=o0(Ne),Cs=(Wt=n.getResolvedModule(Ti,C,Vo))==null?void 0:Wt.resolvedModule,Ds=Cs&&M6e(Ne,Cs,Ti),jo=Cs&&(!Ds||Ds===Z.Module_0_was_resolved_to_1_but_jsx_is_not_set)&&n.getSourceFile(Cs.resolvedFileName);if(jo){if(Ds&&fr(D,Ds,C,Cs.resolvedFileName),Cs.resolvedUsingTsExtension&&Gh(C)){let ma=((Rt=Si(l,hI))==null?void 0:Rt.importClause)||Si(l,fg(mm,hC));(ma&&!ma.isTypeOnly||Si(l,fC))&&fr(D,Z.A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_file_0_instead,Ca(w.checkDefined(Mce(C))))}else if(Cs.resolvedUsingTsExtension&&!vte(Ne,Ti.fileName)){let ma=((Qr=Si(l,hI))==null?void 0:Qr.importClause)||Si(l,fg(mm,hC));if(!(ma?.isTypeOnly||Si(l,Nu))){let Ng=w.checkDefined(Mce(C));fr(D,Z.An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled,Ng)}}if(jo.symbol){if(Cs.isExternalLibraryImport&&!E6(Cs.extension)&&WP(!1,D,Ti,Vo,Cs,C),Hi===3||Hi===99){let ma=Ti.impliedNodeFormat===1&&!Si(l,fC)||!!Si(l,mm),Ng=Si(l,Qu=>Nu(Qu)||hC(Qu)||hI(Qu)||DN(Qu));if(ma&&jo.impliedNodeFormat===99&&!uxe(Ng))if(Si(l,mm))fr(D,Z.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,C);else{let Qu,ZA=_N(Ti.fileName);if(ZA===".ts"||ZA===".js"||ZA===".tsx"||ZA===".jsx"){let au=Ti.packageJsonScope,Uf=ZA===".ts"?".mts":ZA===".js"?".mjs":void 0;au&&!au.contents.packageJsonContent.type?Uf?Qu=ou(void 0,Z.To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Colon_module_to_1,Uf,Do(au.packageDirectory,"package.json")):Qu=ou(void 0,Z.To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0,Do(au.packageDirectory,"package.json")):Uf?Qu=ou(void 0,Z.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,Uf):Qu=ou(void 0,Z.To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module)}KA.add(ZS(ls(D),D,ou(Qu,Z.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,C)))}}return FA(jo.symbol)}E&&fr(D,Z.File_0_is_not_a_module,jo.fileName);return}if(Zm){let ma=uy(Zm,Ng=>Ng.pattern,C);if(ma){let Ng=Jb&&Jb.get(C);return FA(Ng||ma.symbol)}}if(Cs&&!E6(Cs.extension)&&Ds===void 0||Ds===Z.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type){if(W){let ma=Z.Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented;fr(D,ma,C,Cs.resolvedFileName)}else WP(dt&&!!E,D,Ti,Vo,Cs,C);return}if(E){if(Cs){let ma=n.getProjectReferenceRedirect(Cs.resolvedFileName);if(ma){fr(D,Z.Output_file_0_has_not_been_built_from_source_file_1,ma,Cs.resolvedFileName);return}}if(Ds)fr(D,Ds,C,Cs.resolvedFileName);else{let ma=Qp(C)&&!S1(C),Ng=Hi===3||Hi===99;if(!uV(Ne)&&Ad(C,".json")&&Hi!==1&&sle(Ne))fr(D,Z.Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension,C);else if(Vo===99&&Ng&&ma){let Qu=Qc(C,oa(Ti.path)),ZA=(ln=m7.find(([au,Uf])=>n.fileExists(Qu+au)))==null?void 0:ln[1];ZA?fr(D,Z.Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Did_you_mean_0,C+ZA):fr(D,Z.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((hn=n.getResolvedModule(Ti,C,Vo))!=null&&hn.alternateResult){let Qu=RX(Ti,n,C,Vo,C);qm(!0,D,ou(Qu,E,C))}else fr(D,E,C)}}return;function Ca(ma){let Ng=n4(C,ma);if(ile(De)||Vo===99){let Qu=Gh(C)&&vte(Ne);return Ng+(ma===".mts"||ma===".d.mts"?Qu?".mts":".mjs":ma===".cts"||ma===".d.mts"?Qu?".cts":".cjs":Qu?".ts":".js")}return Ng}}function WP(l,C,E,D,{packageId:W,resolvedFileName:M},se){let Ee;!Ul(se)&&W&&(Ee=RX(E,n,se,D,W.name)),qm(l,C,ou(Ee,Z.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type,se,M))}function pb(l,C){if(l?.exports){let E=UI(l.exports.get("export="),C),D=nge(FA(E),FA(l));return FA(D)||l}}function nge(l,C){if(!l||l===en||l===C||C.exports.size===1||l.flags&2097152)return l;let E=al(l);if(E.cjsExportMerged)return E.cjsExportMerged;let D=l.flags&33554432?l:DP(l);return D.flags=D.flags|512,D.exports===void 0&&(D.exports=xu()),C.exports.forEach((W,M)=>{M!=="export="&&D.exports.set(M,D.exports.has(M)?UG(D.exports.get(M),W):W)}),D===l&&(al(D).resolvedExports=void 0,al(D).resolvedMembers=void 0),al(D).cjsExportMerged=D,E.cjsExportMerged=D}function PP(l,C,E,D){var W;let M=pb(l,E);if(!E&&M){if(!D&&!(M.flags&1539)&&!qd(M,307)){let Ee=De>=5?"allowSyntheticDefaultImports":"esModuleInterop";return fr(C,Z.This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export,Ee),M}let se=C.parent;if(hI(se)&&QX(se)||fC(se)){let Ee=fC(se)?se.arguments[0]:se.moduleSpecifier,Ve=co(M),Oe=yUr(Ve,M,l,Ee);if(Oe)return fre(M,Oe,se);let ot=(W=l?.declarations)==null?void 0:W.find(Fc),Wt=ot&&LM(tL(Ee),ot.impliedNodeFormat);if(CN(Ne)||Wt){let Rt=SZe(Ve,0);if((!Rt||!Rt.length)&&(Rt=SZe(Ve,1)),Rt&&Rt.length||yg(Ve,"default",!0)||Wt){let Qr=Ve.flags&3670016?bUr(Ve,M,l,Ee):pOt(M,M.parent);return fre(M,Qr,se)}}}}return M}function fre(l,C,E){let D=wA(l.flags,l.escapedName);D.declarations=l.declarations?l.declarations.slice():[],D.parent=l.parent,D.links.target=l,D.links.originatingImport=E,l.valueDeclaration&&(D.valueDeclaration=l.valueDeclaration),l.constEnumOnlyModule&&(D.constEnumOnlyModule=!0),l.members&&(D.members=new Map(l.members)),l.exports&&(D.exports=new Map(l.exports));let W=bT(C);return D.links.type=qn(D,W.members,v,v,W.indexInfos),D}function OP(l){return l.exports.get("export=")!==void 0}function PM(l){return n3t(CT(l))}function N7(l){let C=PM(l),E=pb(l);if(E!==l){let D=co(E);LV(D)&&ai(C,Cd(D))}return C}function Q4(l,C){CT(l).forEach((W,M)=>{X4(M)||C(W,M)});let D=pb(l);if(D!==l){let W=co(D);LV(W)&&cgs(W,(M,se)=>{C(M,se)})}}function z2(l,C){let E=CT(C);if(E)return E.get(l)}function Ire(l,C){let E=z2(l,C);if(E)return E;let D=pb(C);if(D===C)return;let W=co(D);return LV(W)?yg(W,l):void 0}function LV(l){return!(l.flags&402784252||ia(l)&1||jB(l)||cA(l))}function Y1(l){return l.flags&6256?QWt(l,"resolvedExports"):l.flags&1536?CT(l):l.exports||Be}function CT(l){let C=al(l);if(!C.resolvedExports){let{exports:E,typeOnlyExportStarMap:D}=H4(l);C.resolvedExports=E,C.typeOnlyExportStarMap=D}return C.resolvedExports}function M4(l,C,E,D){C&&C.forEach((W,M)=>{if(M==="default")return;let se=l.get(M);if(!se)l.set(M,W),E&&D&&E.set(M,{specifierText:Nf(D.moduleSpecifier)});else if(E&&D&&se&&UI(se)!==UI(W)){let Ee=E.get(M);Ee.exportsWithDuplicate?Ee.exportsWithDuplicate.push(D):Ee.exportsWithDuplicate=[D]}})}function H4(l){let C=[],E,D=new Set;l=pb(l);let W=M(l)||Be;return E&&D.forEach(se=>E.delete(se)),{exports:W,typeOnlyExportStarMap:E};function M(se,Ee,Ve){if(!Ve&&se?.exports&&se.exports.forEach((Wt,Rt)=>D.add(Rt)),!(se&&se.exports&&da(C,se)))return;let Oe=new Map(se.exports),ot=se.exports.get("__export");if(ot){let Wt=xu(),Rt=new Map;if(ot.declarations)for(let Qr of ot.declarations){let ln=q0(Qr,Qr.moduleSpecifier),hn=M(ln,Qr,Ve||Qr.isTypeOnly);M4(Wt,hn,Rt,Qr)}Rt.forEach(({exportsWithDuplicate:Qr},ln)=>{if(!(ln==="export="||!(Qr&&Qr.length)||Oe.has(ln)))for(let hn of Qr)KA.add(Js(hn,Z.Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity,Rt.get(ln).specifierText,wc(ln)))}),M4(Oe,Wt)}return Ee?.isTypeOnly&&(E??(E=new Map),Oe.forEach((Wt,Rt)=>E.set(Rt,Ee))),Oe}}function FA(l){let C;return l&&l.mergeId&&(C=Ws[l.mergeId])?C:l}function Oo(l){return FA(l.symbol&&f$e(l.symbol))}function q2(l){return v2(l)?Oo(l):void 0}function a_(l){return FA(l.parent&&f$e(l.parent))}function Cre(l){var C,E;return(((C=l.valueDeclaration)==null?void 0:C.kind)===219||((E=l.valueDeclaration)==null?void 0:E.kind)===218)&&q2(l.valueDeclaration.parent)||l}function mre(l,C){let E=ls(C),D=od(E),W=al(l),M;if(W.extendedContainersByFile&&(M=W.extendedContainersByFile.get(D)))return M;if(E&&E.imports){for(let Ee of E.imports){if($d(Ee))continue;let Ve=q0(C,Ee,!0);!Ve||!WV(Ve,l)||(M=Yr(M,Ve))}if(O(M))return(W.extendedContainersByFile||(W.extendedContainersByFile=new Map)).set(D,M),M}if(W.extendedContainers)return W.extendedContainers;let se=n.getSourceFiles();for(let Ee of se){if(!hm(Ee))continue;let Ve=Oo(Ee);WV(Ve,l)&&(M=Yr(M,Ve))}return W.extendedContainers=M||v}function QP(l,C,E){let D=a_(l);if(D&&!(l.flags&262144))return Ve(D);let W=tr(l.declarations,ot=>{if(!Yf(ot)&&ot.parent){if(nF(ot.parent))return Oo(ot.parent);if(wN(ot.parent)&&ot.parent.parent&&pb(Oo(ot.parent.parent))===l)return Oo(ot.parent.parent)}if(rp(ot)&&ro(ot.parent)&&ot.parent.operatorToken.kind===64&&mp(ot.parent.left)&&lp(ot.parent.left.expression))return dN(ot.parent.left)||H3(ot.parent.left.expression)?Oo(ls(ot)):(sC(ot.parent.left.expression),Jo(ot.parent.left.expression).resolvedSymbol)});if(!O(W))return;let M=tr(W,ot=>WV(ot,l)?ot:void 0),se=[],Ee=[];for(let ot of M){let[Wt,...Rt]=Ve(ot);se=Yr(se,Wt),Ee=ai(Ee,Rt)}return vi(se,Ee);function Ve(ot){let Wt=tr(ot.declarations,Oe),Rt=C&&mre(l,C),Qr=VV(ot,E);if(C&&ot.flags&El(E)&&zl(ot,C,1920,!1))return Yr(vi(vi([ot],Wt),Rt),Qr);let ln=!(ot.flags&El(E))&&ot.flags&788968&&kp(ot).flags&524288&&E===111551?Fl(C,mi=>UC(mi,Ti=>{if(Ti.flags&El(E)&&co(Ti)===kp(ot))return Ti})):void 0,hn=ln?[ln,...Wt,ot]:[...Wt,ot];return hn=Yr(hn,Qr),hn=ai(hn,Rt),hn}function Oe(ot){return D&&hre(ot,D)}}function VV(l,C){let E=!!O(l.declarations)&&qs(l.declarations);if(C&111551&&E&&E.parent&&js(E.parent)&&(ru(E)&&E===E.parent.initializer||Se(E)&&E===E.parent.type))return Oo(E.parent)}function hre(l,C){let E=QM(l),D=E&&E.exports&&E.exports.get("export=");return D&&uw(D,C)?E:void 0}function WV(l,C){if(l===a_(C))return C;let E=l.exports&&l.exports.get("export=");if(E&&uw(E,C))return l;let D=Y1(l),W=D.get(C.escapedName);return W&&uw(W,C)?W:UC(D,M=>{if(uw(M,C))return M})}function uw(l,C){if(FA(UI(FA(l)))===FA(UI(FA(C))))return l}function X1(l){return FA(l&&(l.flags&1048576)!==0&&l.exportSymbol||l)}function fD(l,C){return!!(l.flags&111551||l.flags&2097152&&zb(l,!C)&111551)}function YN(l){var C;let E=new b(gi,l);return N++,E.id=N,(C=Qi)==null||C.recordType(E),E}function tF(l,C){let E=YN(l);return E.symbol=C,E}function Y4(l){return new b(gi,l)}function VC(l,C,E=0,D){gw(C,D);let W=YN(l);return W.intrinsicName=C,W.debugIntrinsicName=D,W.objectFlags=E|524288|2097152|33554432|16777216,W}function gw(l,C){let E=`${l},${C??""}`;br.has(E)&&w.fail(`Duplicate intrinsic type name ${l}${C?` (${C})`:""}; you may need to pass a name to createIntrinsicType.`),br.add(E)}function J1(l,C){let E=tF(524288,C);return E.objectFlags=l,E.members=void 0,E.properties=void 0,E.callSignatures=void 0,E.constructSignatures=void 0,E.indexInfos=void 0,E}function iL(){return wa(on(VDt.keys(),fb))}function $2(l){return tF(262144,l)}function X4(l){return l.charCodeAt(0)===95&&l.charCodeAt(1)===95&&l.charCodeAt(2)!==95&&l.charCodeAt(2)!==64&&l.charCodeAt(2)!==35}function PV(l){let C;return l.forEach((E,D)=>{ce(E,D)&&(C||(C=[])).push(E)}),C||v}function ce(l,C){return!X4(C)&&fD(l)}function _t(l){let C=PV(l),E=_$e(l);return E?vi(C,[E]):C}function pn(l,C,E,D,W){let M=l;return M.members=C,M.properties=v,M.callSignatures=E,M.constructSignatures=D,M.indexInfos=W,C!==Be&&(M.properties=PV(C)),M}function qn(l,C,E,D,W){return pn(J1(16,l),C,E,D,W)}function Ua(l){if(l.constructSignatures.length===0)return l;if(l.objectTypeWithoutAbstractConstructSignatures)return l.objectTypeWithoutAbstractConstructSignatures;let C=Gt(l.constructSignatures,D=>!(D.flags&4));if(l.constructSignatures===C)return l;let E=qn(l.symbol,l.members,l.callSignatures,lr(C)?C:v,l.indexInfos);return l.objectTypeWithoutAbstractConstructSignatures=E,E.objectTypeWithoutAbstractConstructSignatures=E,E}function Fl(l,C){let E;for(let D=l;D;D=D.parent){if(Nv(D)&&D.locals&&!bs(D)&&(E=C(D.locals,void 0,!0,D)))return E;switch(D.kind){case 307:if(!na(D))break;case 267:let W=Oo(D);if(E=C(W?.exports||Be,void 0,!0,D))return E;break;case 263:case 231:case 264:let M;if((Oo(D).members||Be).forEach((se,Ee)=>{se.flags&788968&&(M||(M=xu())).set(Ee,se)}),M&&(E=C(M,void 0,!1,D)))return E;break}}return C(kt,void 0,!0)}function El(l){return l===111551?111551:1920}function zl(l,C,E,D,W=new Map){if(!(l&&!$0(l)))return;let M=al(l),se=M.accessibleChainCache||(M.accessibleChainCache=new Map),Ee=Fl(C,(Ti,ks,Vo,Hi)=>Hi),Ve=`${D?0:1}|${Ee&&od(Ee)}|${E}`;if(se.has(Ve))return se.get(Ve);let Oe=Gg(l),ot=W.get(Oe);ot||W.set(Oe,ot=[]);let Wt=Fl(C,Rt);return se.set(Ve,Wt),Wt;function Rt(Ti,ks,Vo){if(!da(ot,Ti))return;let Hi=hn(Ti,ks,Vo);return ot.pop(),Hi}function Qr(Ti,ks){return!Xg(Ti,C,ks)||!!zl(Ti.parent,C,El(ks),D,W)}function ln(Ti,ks,Vo){return(l===(ks||Ti)||FA(l)===FA(ks||Ti))&&!lr(Ti.declarations,nF)&&(Vo||Qr(FA(Ti),E))}function hn(Ti,ks,Vo){return ln(Ti.get(l.escapedName),void 0,ks)?[l]:UC(Ti,Cs=>{if(Cs.flags&2097152&&Cs.escapedName!=="export="&&Cs.escapedName!=="default"&&!(jce(Cs)&&C&&hm(ls(C)))&&(!D||lr(Cs.declarations,BZ))&&(!Vo||!lr(Cs.declarations,QRe))&&(ks||!qd(Cs,281))){let Ds=$m(Cs),jo=mi(Cs,Ds,ks);if(jo)return jo}if(Cs.escapedName===l.escapedName&&Cs.exportSymbol&&ln(FA(Cs.exportSymbol),void 0,ks))return[l]})||(Ti===kt?mi(Dr,Dr,ks):void 0)}function mi(Ti,ks,Vo){if(ln(Ti,ks,Vo))return[Ti];let Hi=Y1(ks),Cs=Hi&&Rt(Hi,!0);if(Cs&&Qr(Ti,El(E)))return[Ti].concat(Cs)}}function Xg(l,C,E){let D=!1;return Fl(C,W=>{let M=FA(W.get(l.escapedName));if(!M)return!1;if(M===l)return!0;let se=M.flags&2097152&&!qd(M,281);return M=se?$m(M):M,(se?zb(M):M.flags)&E?(D=!0,!0):!1}),D}function $0(l){if(l.declarations&&l.declarations.length){for(let C of l.declarations)switch(C.kind){case 172:case 174:case 177:case 178:continue;default:return!1}return!0}return!1}function h0(l,C){return rF(l,C,788968,!1,!0).accessibility===0}function sL(l,C){return rF(l,C,111551,!1,!0).accessibility===0}function OM(l,C,E){return rF(l,C,E,!1,!1).accessibility===0}function UE(l,C,E,D,W,M){if(!O(l))return;let se,Ee=!1;for(let Ve of l){let Oe=zl(Ve,C,D,!1);if(Oe){se=Ve;let Rt=MP(Oe[0],W);if(Rt)return Rt}if(M&&lr(Ve.declarations,nF)){if(W){Ee=!0;continue}return{accessibility:0}}let ot=QP(Ve,C,D),Wt=UE(ot,C,E,E===Ve?El(D):D,W,M);if(Wt)return Wt}if(Ee)return{accessibility:0};if(se)return{accessibility:1,errorSymbolName:$c(E,C,D),errorModuleName:se!==E?$c(se,C,1920):void 0}}function mT(l,C,E,D){return rF(l,C,E,D,!0)}function rF(l,C,E,D,W){if(l&&C){let M=UE([l],C,l,E,D,W);if(M)return M;let se=X(l.declarations,QM);if(se){let Ee=QM(C);if(se!==Ee)return{accessibility:2,errorSymbolName:$c(l,C,E),errorModuleName:$c(se),errorNode:io(C)?C:void 0}}return{accessibility:1,errorSymbolName:$c(l,C,E)}}return{accessibility:0}}function QM(l){let C=Si(l,_re);return C&&Oo(C)}function _re(l){return Yf(l)||l.kind===307&&na(l)}function nF(l){return T5(l)||l.kind===307&&na(l)}function MP(l,C){let E;if(!he(Gt(l.declarations,M=>M.kind!==80),D))return;return{accessibility:0,aliasesToMakeVisible:E};function D(M){var se,Ee;if(!iF(M)){let Ve=V4(M);if(Ve&&!ya(Ve,32)&&iF(Ve.parent))return W(M,Ve);if(js(M)&&Dp(M.parent.parent)&&!ya(M.parent.parent,32)&&iF(M.parent.parent.parent))return W(M,M.parent.parent);if(G8(M)&&!ya(M,32)&&iF(M.parent))return W(M,M);if(hl(M)){if(l.flags&2097152&&io(M)&&((se=M.parent)!=null&&se.parent)&&js(M.parent.parent)&&((Ee=M.parent.parent.parent)!=null&&Ee.parent)&&Dp(M.parent.parent.parent.parent)&&!ya(M.parent.parent.parent.parent,32)&&M.parent.parent.parent.parent.parent&&iF(M.parent.parent.parent.parent.parent))return W(M,M.parent.parent.parent.parent);if(l.flags&2){let Oe=Si(M,Dp);return ya(Oe,32)?!0:iF(Oe.parent)?W(M,Oe):!1}}return!1}return!0}function W(M,se){return C&&(Jo(M).isVisible=!0,E=og(E,se)),!0}}function oL(l){let C;return l.parent.kind===186||l.parent.kind===233&&!VS(l.parent)||l.parent.kind===167||l.parent.kind===182&&l.parent.parameterName===l?C=1160127:l.kind===166||l.kind===211||l.parent.kind===271||l.parent.kind===166&&l.parent.left===l||l.parent.kind===211&&l.parent.expression===l||l.parent.kind===212&&l.parent.expression===l?C=1920:C=788968,C}function OV(l,C,E=!0){let D=oL(l),W=sb(l),M=Pi(C,W.escapedText,D,void 0,!1);return M&&M.flags&262144&&D&788968?{accessibility:0}:!M&&vG(W)&&mT(Oo(n0(W,!1,!1)),W,D,!1).accessibility===0?{accessibility:0}:M?MP(M,E)||{accessibility:1,errorSymbolName:Nf(W),errorNode:W}:{accessibility:3,errorSymbolName:Nf(W),errorNode:W}}function $c(l,C,E,D=4,W){let M=70221824;D&2&&(M|=128),D&1&&(M|=512),D&8&&(M|=16384),D&32&&(M|=134217728),D&16&&(M|=1073741824);let se=D&4?Kt.symbolToNode:Kt.symbolToEntityName;return W?Ee(W).getText():W3(Ee);function Ee(Ve){let Oe=se(l,E,C,M),ot=C?.kind===307?Pxt():b4(),Wt=C&&ls(C);return ot.writeNode(4,Oe,Wt,Ve),Ve}}function QV(l,C,E=0,D,W){return W?M(W).getText():W3(M);function M(se){let Ee;E&262144?Ee=D===1?185:184:Ee=D===1?180:179;let Ve=Kt.signatureToSignatureDeclaration(l,Ee,C,bre(E)|70221824|512),Oe=Kke(),ot=C&&ls(C);return Oe.writeNode(4,Ve,ot,Dme(se)),se}}function Ys(l,C,E=1064960,D=See("")){let W=Ne.noErrorTruncation||E&1,M=Kt.typeToTypeNode(l,C,bre(E)|70221824|(W?1:0));if(M===void 0)return w.fail("should always get typenode");let se=l!==kn?b4():Wxt(),Ee=C&&ls(C);se.writeNode(4,M,Ee,D);let Ve=D.getText(),Oe=W?R$*2:b5*2;return Oe&&Ve&&Ve.length>=Oe?Ve.substr(0,Oe-3)+"...":Ve}function ige(l,C){let E=R7(l.symbol)?Ys(l,l.symbol.valueDeclaration):Ys(l),D=R7(C.symbol)?Ys(C,C.symbol.valueDeclaration):Ys(C);return E===D&&(E=yre(l),D=yre(C)),[E,D]}function yre(l){return Ys(l,void 0,64)}function R7(l){return l&&!!l.valueDeclaration&&tn(l.valueDeclaration)&&!UB(l.valueDeclaration)}function bre(l=0){return l&848330095}function Ere(l){return!!l.symbol&&!!(l.symbol.flags&32)&&(l===yC(l.symbol)||!!(l.flags&524288)&&!!(ia(l)&16777216))}function pZe(l){return Vc(l)}function fZe(){return{typeToTypeNode:(Xt,Bt,li,Xi)=>Ee(Bt,li,Xi,Co=>Oe(Xt,Co)),typePredicateToTypePredicateNode:(Xt,Bt,li,Xi)=>Ee(Bt,li,Xi,Co=>Qu(Xt,Co)),expressionOrTypeToTypeNode:(Xt,Bt,li,Xi,Co,po)=>Ee(Xi,Co,po,ko=>E(ko,Xt,Bt,li)),serializeTypeForDeclaration:(Xt,Bt,li,Xi,Co,po)=>Ee(Xi,Co,po,ko=>P_(ko,Xt,Bt,li)),serializeReturnTypeForSignature:(Xt,Bt,li,Xi)=>Ee(Bt,li,Xi,Co=>Ln(Co,Xt)),indexInfoToIndexSignatureDeclaration:(Xt,Bt,li,Xi)=>Ee(Bt,li,Xi,Co=>Ti(Xt,Co,void 0)),signatureToSignatureDeclaration:(Xt,Bt,li,Xi,Co)=>Ee(li,Xi,Co,po=>ks(Xt,Bt,po)),symbolToEntityName:(Xt,Bt,li,Xi,Co)=>Ee(li,Xi,Co,po=>y0(Xt,po,Bt,!1)),symbolToExpression:(Xt,Bt,li,Xi,Co)=>Ee(li,Xi,Co,po=>Kf(Xt,po,Bt)),symbolToTypeParameterDeclarations:(Xt,Bt,li,Xi)=>Ee(Bt,li,Xi,Co=>Fs(Xt,Co)),symbolToParameterDeclaration:(Xt,Bt,li,Xi)=>Ee(Bt,li,Xi,Co=>au(Xt,Co)),typeParameterToDeclaration:(Xt,Bt,li,Xi)=>Ee(Bt,li,Xi,Co=>Ng(Xt,Co)),symbolTableToDeclarationStatements:(Xt,Bt,li,Xi)=>Ee(Bt,li,Xi,Co=>Jg(Xt,Co)),symbolToNode:(Xt,Bt,li,Xi,Co)=>Ee(li,Xi,Co,po=>se(Xt,po,Bt))};function l(Xt,Bt,li){let Xi=pZe(Bt);if(!Xt.mapper)return Xi;let Co=cl(Xi,Xt.mapper);return li&&Co!==Xi?void 0:Co}function C(Xt,Bt,li){return(!$d(Bt)||!(Bt.flags&16)||!Xt.enclosingFile||Xt.enclosingFile!==ls(Np(Bt)))&&(Bt=_e.cloneNode(Bt)),Bt===li||!li?Bt:!Xt.enclosingFile||Xt.enclosingFile!==ls(Np(li))?Ho(Bt,li):un(Ho(Bt,li),li)}function E(Xt,Bt,li,Xi){let Co=Xt.flags;Bt&&!(Xt.flags&-2147483648)&&Nt.serializeTypeOfExpression(Bt,Xt,Xi),Xt.flags|=-2147483648;let po=D(Xt,Bt,li,Xi);return Xt.flags=Co,po}function D(Xt,Bt,li,Xi){if(Bt){let Co=kE(Bt)?Bt.type:m4(Bt)?Ule(Bt):void 0;if(Co&&!B2(Co)){let po=W(Xt,Co,li,Bt.parent,Xi);if(po)return po}}return Xi&&(li=rW(li)),Oe(li,Xt)}function W(Xt,Bt,li,Xi,Co){let po=li;Co&&(li=rW(li,!Uc(Xi)));let ko=M(Xt,Bt,li,Xi);if(ko)return Co&&e4r(li)&&!jv(l(Xt,Bt),Pc=>!!(Pc.flags&32768))?_e.createUnionTypeNode([ko,_e.createKeywordTypeNode(157)]):ko;if(Co&&po!==li){let Pc=M(Xt,Bt,po,Xi);if(Pc)return _e.createUnionTypeNode([Pc,_e.createKeywordTypeNode(157)])}}function M(Xt,Bt,li,Xi=Xt.enclosingDeclaration,Co=l(Xt,Bt,!0)){if(Co&&OLe(Xi,li,Co)&&Gge(Bt,li)){let po=Fg(Xt,Bt);if(po)return po}}function se(Xt,Bt,li){if(Bt.flags&1073741824){if(Xt.valueDeclaration){let Co=Sl(Xt.valueDeclaration);if(Co&&kg(Co))return Co}let Xi=al(Xt).nameType;if(Xi&&Xi.flags&9216)return Bt.enclosingDeclaration=Xi.symbol.valueDeclaration,_e.createComputedPropertyName(Kf(Xi.symbol,Bt,li))}return Kf(Xt,Bt,li)}function Ee(Xt,Bt,li,Xi){let Co=li?.trackSymbol?li.moduleResolverHost:Bt&134217728?w6i(n):void 0,po={enclosingDeclaration:Xt,enclosingFile:Xt&&ls(Xt),flags:Bt||0,tracker:void 0,encounteredError:!1,reportedDiagnostic:!1,visitedTypes:void 0,symbolDepth:void 0,inferTypeParameters:void 0,approximateLength:0,trackedSymbols:void 0,bundled:!!Ne.outFile&&!!Xt&&na(ls(Xt)),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};po.tracker=new PDt(po,li,Co);let ko=Xi(po);return po.truncating&&po.flags&1&&po.tracker.reportTruncationError(),po.encounteredError?void 0:ko}function Ve(Xt){return Xt.truncating?Xt.truncating:Xt.truncating=Xt.approximateLength>(Xt.flags&1?R$:b5)}function Oe(Xt,Bt){let li=Bt.flags,Xi=ot(Xt,Bt);return Bt.flags=li,Xi}function ot(Xt,Bt){var li,Xi;d&&d.throwIfCancellationRequested&&d.throwIfCancellationRequested();let Co=Bt.flags&8388608;if(Bt.flags&=-8388609,!Xt){if(!(Bt.flags&262144)){Bt.encounteredError=!0;return}return Bt.approximateLength+=3,_e.createKeywordTypeNode(133)}if(Bt.flags&536870912||(Xt=ET(Xt)),Xt.flags&1)return Xt.aliasSymbol?_e.createTypeReferenceNode(md(Xt.aliasSymbol),hn(Xt.aliasTypeArguments,Bt)):Xt===kn?a4(_e.createKeywordTypeNode(133),3,"unresolved"):(Bt.approximateLength+=3,_e.createKeywordTypeNode(Xt===an?141:133));if(Xt.flags&2)return _e.createKeywordTypeNode(159);if(Xt.flags&4)return Bt.approximateLength+=6,_e.createKeywordTypeNode(154);if(Xt.flags&8)return Bt.approximateLength+=6,_e.createKeywordTypeNode(150);if(Xt.flags&64)return Bt.approximateLength+=6,_e.createKeywordTypeNode(163);if(Xt.flags&16&&!Xt.aliasSymbol)return Bt.approximateLength+=7,_e.createKeywordTypeNode(136);if(Xt.flags&1056){if(Xt.symbol.flags&8){let yn=a_(Xt.symbol),hi=ed(yn,Bt,788968);if(kp(yn)===Xt)return hi;let vs=pf(Xt.symbol);return Ke(vs,1)?Lr(hi,_e.createTypeReferenceNode(vs,void 0)):Nu(hi)?(hi.isTypeOf=!0,_e.createIndexedAccessTypeNode(hi,_e.createLiteralTypeNode(_e.createStringLiteral(vs)))):F(hi)?_e.createIndexedAccessTypeNode(_e.createTypeQueryNode(hi.typeName),_e.createLiteralTypeNode(_e.createStringLiteral(vs))):w.fail("Unhandled type node kind returned from `symbolToTypeNode`.")}return ed(Xt.symbol,Bt,788968)}if(Xt.flags&128)return Bt.approximateLength+=Xt.value.length+2,_e.createLiteralTypeNode(ao(_e.createStringLiteral(Xt.value,!!(Bt.flags&268435456)),16777216));if(Xt.flags&256){let yn=Xt.value;return Bt.approximateLength+=(""+yn).length,_e.createLiteralTypeNode(yn<0?_e.createPrefixUnaryExpression(41,_e.createNumericLiteral(-yn)):_e.createNumericLiteral(yn))}if(Xt.flags&2048)return Bt.approximateLength+=AV(Xt.value).length+1,_e.createLiteralTypeNode(_e.createBigIntLiteral(Xt.value));if(Xt.flags&512)return Bt.approximateLength+=Xt.intrinsicName.length,_e.createLiteralTypeNode(Xt.intrinsicName==="true"?_e.createTrue():_e.createFalse());if(Xt.flags&8192){if(!(Bt.flags&1048576)){if(sL(Xt.symbol,Bt.enclosingDeclaration))return Bt.approximateLength+=6,ed(Xt.symbol,Bt,111551);Bt.tracker.reportInaccessibleUniqueSymbolError&&Bt.tracker.reportInaccessibleUniqueSymbolError()}return Bt.approximateLength+=13,_e.createTypeOperatorNode(158,_e.createKeywordTypeNode(155))}if(Xt.flags&16384)return Bt.approximateLength+=4,_e.createKeywordTypeNode(116);if(Xt.flags&32768)return Bt.approximateLength+=9,_e.createKeywordTypeNode(157);if(Xt.flags&65536)return Bt.approximateLength+=4,_e.createLiteralTypeNode(_e.createNull());if(Xt.flags&131072)return Bt.approximateLength+=5,_e.createKeywordTypeNode(146);if(Xt.flags&4096)return Bt.approximateLength+=6,_e.createKeywordTypeNode(155);if(Xt.flags&67108864)return Bt.approximateLength+=6,_e.createKeywordTypeNode(151);if(N6(Xt))return Bt.flags&4194304&&(!Bt.encounteredError&&!(Bt.flags&32768)&&(Bt.encounteredError=!0),(Xi=(li=Bt.tracker).reportInaccessibleThisError)==null||Xi.call(li)),Bt.approximateLength+=4,_e.createThisTypeNode();if(!Co&&Xt.aliasSymbol&&(Bt.flags&16384||h0(Xt.aliasSymbol,Bt.enclosingDeclaration))){let yn=hn(Xt.aliasTypeArguments,Bt);return X4(Xt.aliasSymbol.escapedName)&&!(Xt.aliasSymbol.flags&32)?_e.createTypeReferenceNode(_e.createIdentifier(""),yn):O(yn)===1&&Xt.aliasSymbol===Fn.symbol?_e.createArrayTypeNode(yn[0]):ed(Xt.aliasSymbol,Bt,788968,yn)}let po=ia(Xt);if(po&4)return w.assert(!!(Xt.flags&524288)),Xt.node?Cr(Xt,Wn):Wn(Xt);if(Xt.flags&262144||po&3){if(Xt.flags&262144&&Ue(Bt.inferTypeParameters,Xt)){Bt.approximateLength+=pf(Xt.symbol).length+6;let hi,vs=vy(Xt);if(vs){let pi=OYr(Xt,!0);pi&&lF(vs,pi)||(Bt.approximateLength+=9,hi=vs&&Oe(vs,Bt))}return _e.createInferTypeNode(Ca(Xt,Bt,hi))}if(Bt.flags&4&&Xt.flags&262144){let hi=Eg(Xt,Bt);return Bt.approximateLength+=oo(hi).length,_e.createTypeReferenceNode(_e.createIdentifier(oo(hi)),void 0)}if(Xt.symbol)return ed(Xt.symbol,Bt,788968);let yn=(Xt===Xb||Xt===nf)&&Ae&&Ae.symbol?(Xt===nf?"sub-":"super-")+pf(Ae.symbol):"?";return _e.createTypeReferenceNode(_e.createIdentifier(yn),void 0)}if(Xt.flags&1048576&&Xt.origin&&(Xt=Xt.origin),Xt.flags&3145728){let yn=Xt.flags&1048576?W0e(Xt.types):Xt.types;if(O(yn)===1)return Oe(yn[0],Bt);let hi=hn(yn,Bt,!0);if(hi&&hi.length>0)return Xt.flags&1048576?_e.createUnionTypeNode(hi):_e.createIntersectionTypeNode(hi);!Bt.encounteredError&&!(Bt.flags&262144)&&(Bt.encounteredError=!0);return}if(po&48)return w.assert(!!(Xt.flags&524288)),gp(Xt);if(Xt.flags&4194304){let yn=Xt.type;Bt.approximateLength+=6;let hi=Oe(yn,Bt);return _e.createTypeOperatorNode(143,hi)}if(Xt.flags&134217728){let yn=Xt.texts,hi=Xt.types,vs=_e.createTemplateHead(yn[0]),pi=_e.createNodeArray(Ot(hi,(Xs,ea)=>_e.createTemplateLiteralTypeSpan(Oe(Xs,Bt),(eako(yn));if(Xt.flags&33554432){let yn=Oe(Xt.baseType,Bt),hi=Gre(Xt)&&I3t("NoInfer",!1);return hi?ed(hi,Bt,788968,[yn]):yn}return w.fail("Should be unreachable.");function ko(yn){let hi=Oe(yn.checkType,Bt);if(Bt.approximateLength+=15,Bt.flags&4&&yn.root.isDistributive&&!(yn.checkType.flags&262144)){let Ls=$2(wA(262144,"T")),Ba=Eg(Ls,Bt),pa=_e.createTypeReferenceNode(Ba);Bt.approximateLength+=37;let ig=rJ(yn.root.checkType,Ls,yn.mapper),Bg=Bt.inferTypeParameters;Bt.inferTypeParameters=yn.root.inferTypeParameters;let Xp=Oe(cl(yn.root.extendsType,ig),Bt);Bt.inferTypeParameters=Bg;let Ty=Pc(cl(l(Bt,yn.root.node.trueType),ig)),jE=Pc(cl(l(Bt,yn.root.node.falseType),ig));return _e.createConditionalTypeNode(hi,_e.createInferTypeNode(_e.createTypeParameterDeclaration(void 0,_e.cloneNode(pa.typeName))),_e.createConditionalTypeNode(_e.createTypeReferenceNode(_e.cloneNode(Ba)),Oe(yn.checkType,Bt),_e.createConditionalTypeNode(pa,Xp,Ty,jE),_e.createKeywordTypeNode(146)),_e.createKeywordTypeNode(146))}let vs=Bt.inferTypeParameters;Bt.inferTypeParameters=yn.root.inferTypeParameters;let pi=Oe(yn.extendsType,Bt);Bt.inferTypeParameters=vs;let Xs=Pc(qP(yn)),ea=Pc($P(yn));return _e.createConditionalTypeNode(hi,pi,Xs,ea)}function Pc(yn){var hi,vs,pi;return yn.flags&1048576?(hi=Bt.visitedTypes)!=null&&hi.has(Fh(yn))?(Bt.flags&131072||(Bt.encounteredError=!0,(pi=(vs=Bt.tracker)==null?void 0:vs.reportCyclicStructureError)==null||pi.call(vs)),Wt(Bt)):Cr(yn,Xs=>Oe(Xs,Bt)):Oe(yn,Bt)}function Al(yn){return!!sye(yn)}function iu(yn){return!!yn.target&&Al(yn.target)&&!Al(yn)}function vu(yn){var hi;w.assert(!!(yn.flags&524288));let vs=yn.declaration.readonlyToken?_e.createToken(yn.declaration.readonlyToken.kind):void 0,pi=yn.declaration.questionToken?_e.createToken(yn.declaration.questionToken.kind):void 0,Xs,ea,Ls=!Rre(yn)&&!(XM(yn).flags&2)&&Bt.flags&4&&!(tB(yn).flags&262144&&((hi=vy(tB(yn)))==null?void 0:hi.flags)&4194304);if(Rre(yn)){if(iu(yn)&&Bt.flags&4){let Ty=$2(wA(262144,"T")),jE=Eg(Ty,Bt);ea=_e.createTypeReferenceNode(jE)}Xs=_e.createTypeOperatorNode(143,ea||Oe(XM(yn),Bt))}else if(Ls){let Ty=$2(wA(262144,"T")),jE=Eg(Ty,Bt);ea=_e.createTypeReferenceNode(jE),Xs=ea}else Xs=Oe(tB(yn),Bt);let Ba=Ca(yT(yn),Bt,Xs),pa=yn.declaration.nameType?Oe(lL(yn),Bt):void 0,ig=Oe(dF(aF(yn),!!(_D(yn)&4)),Bt),Bg=_e.createMappedTypeNode(vs,Ba,pa,pi,ig,void 0);Bt.approximateLength+=10;let Xp=ao(Bg,1);if(iu(yn)&&Bt.flags&4){let Ty=cl(vy(l(Bt,yn.declaration.typeParameter.constraint.type))||Kr,yn.mapper);return _e.createConditionalTypeNode(Oe(XM(yn),Bt),_e.createInferTypeNode(_e.createTypeParameterDeclaration(void 0,_e.cloneNode(ea.typeName),Ty.flags&2?void 0:Oe(Ty,Bt))),Xp,_e.createKeywordTypeNode(146))}else if(Ls)return _e.createConditionalTypeNode(Oe(tB(yn),Bt),_e.createInferTypeNode(_e.createTypeParameterDeclaration(void 0,_e.cloneNode(ea.typeName),_e.createTypeOperatorNode(143,Oe(XM(yn),Bt)))),Xp,_e.createKeywordTypeNode(146));return Xp}function gp(yn){var hi,vs;let pi=yn.id,Xs=yn.symbol;if(Xs){if(!!(ia(yn)&8388608)){let ig=yn.node;if(oe(ig)){let Bg=M(Bt,ig,yn);if(Bg)return Bg}return(hi=Bt.visitedTypes)!=null&&hi.has(pi)?Wt(Bt):Cr(yn,Mr)}let Ba=Ere(yn)?788968:111551;if($N(Xs.valueDeclaration))return ed(Xs,Bt,Ba);if(Xs.flags&32&&!u$e(Xs)&&!(Xs.valueDeclaration&&va(Xs.valueDeclaration)&&Bt.flags&2048&&(!Ec(Xs.valueDeclaration)||mT(Xs,Bt.enclosingDeclaration,Ba,!1).accessibility!==0))||Xs.flags&896||ea())return ed(Xs,Bt,Ba);if((vs=Bt.visitedTypes)!=null&&vs.has(pi)){let pa=oge(yn);return pa?ed(pa,Bt,788968):Wt(Bt)}else return Cr(yn,Mr)}else return Mr(yn);function ea(){var Ls;let Ba=!!(Xs.flags&8192)&&lr(Xs.declarations,ig=>eg(ig)),pa=!!(Xs.flags&16)&&(Xs.parent||X(Xs.declarations,ig=>ig.parent.kind===307||ig.parent.kind===268));if(Ba||pa)return(!!(Bt.flags&4096)||((Ls=Bt.visitedTypes)==null?void 0:Ls.has(pi)))&&(!(Bt.flags&8)||sL(Xs,Bt.enclosingDeclaration))}}function Cr(yn,hi){var vs,pi,Xs;let ea=yn.id,Ls=ia(yn)&16&&yn.symbol&&yn.symbol.flags&32,Ba=ia(yn)&4&&yn.node?"N"+od(yn.node):yn.flags&16777216?"N"+od(yn.root.node):yn.symbol?(Ls?"+":"")+Gg(yn.symbol):void 0;Bt.visitedTypes||(Bt.visitedTypes=new Set),Ba&&!Bt.symbolDepth&&(Bt.symbolDepth=new Map);let pa=Bt.enclosingDeclaration&&Jo(Bt.enclosingDeclaration),ig=`${Fh(yn)}|${Bt.flags}`;pa&&(pa.serializedTypes||(pa.serializedTypes=new Map));let Bg=(vs=pa?.serializedTypes)==null?void 0:vs.get(ig);if(Bg)return(pi=Bg.trackedSymbols)==null||pi.forEach(([iE,jre,aW])=>Bt.tracker.trackSymbol(iE,jre,aW)),Bg.truncating&&(Bt.truncating=!0),Bt.approximateLength+=Bg.addedLength,cH(Bg.node);let Xp;if(Ba){if(Xp=Bt.symbolDepth.get(Ba)||0,Xp>10)return Wt(Bt);Bt.symbolDepth.set(Ba,Xp+1)}Bt.visitedTypes.add(ea);let Ty=Bt.trackedSymbols;Bt.trackedSymbols=void 0;let jE=Bt.approximateLength,oW=hi(yn),aO=Bt.approximateLength-jE;return!Bt.reportedDiagnostic&&!Bt.encounteredError&&((Xs=pa?.serializedTypes)==null||Xs.set(ig,{node:oW,truncating:Bt.truncating,addedLength:aO,trackedSymbols:Bt.trackedSymbols})),Bt.visitedTypes.delete(ea),Ba&&Bt.symbolDepth.set(Ba,Xp),Bt.trackedSymbols=Ty,oW;function cH(iE){return!$d(iE)&&zc(iE)===iE?iE:C(Bt,_e.cloneNode(ns(iE,cH,void 0,tR,cH)),iE)}function tR(iE,jre,aW,lH,Wye){return iE&&iE.length===0?un(_e.createNodeArray(void 0,iE.hasTrailingComma),iE):ws(iE,jre,aW,lH,Wye)}}function Mr(yn){if(qb(yn)||yn.containsError)return vu(yn);let hi=bT(yn);if(!hi.properties.length&&!hi.indexInfos.length){if(!hi.callSignatures.length&&!hi.constructSignatures.length)return Bt.approximateLength+=2,ao(_e.createTypeLiteralNode(void 0),1);if(hi.callSignatures.length===1&&!hi.constructSignatures.length){let Ls=hi.callSignatures[0];return ks(Ls,184,Bt)}if(hi.constructSignatures.length===1&&!hi.callSignatures.length){let Ls=hi.constructSignatures[0];return ks(Ls,185,Bt)}}let vs=Gt(hi.constructSignatures,Ls=>!!(Ls.flags&4));if(lr(vs)){let Ls=Ot(vs,pa=>z4(pa));return hi.callSignatures.length+(hi.constructSignatures.length-vs.length)+hi.indexInfos.length+(Bt.flags&2048?ft(hi.properties,pa=>!(pa.flags&4194304)):O(hi.properties))&&Ls.push(Ua(hi)),Oe(Og(Ls),Bt)}let pi=Bt.flags;Bt.flags|=4194304;let Xs=ui(hi);Bt.flags=pi;let ea=_e.createTypeLiteralNode(Xs);return Bt.approximateLength+=2,ao(ea,Bt.flags&1024?0:1),ea}function Wn(yn){let hi=af(yn);if(yn.target===Fn||yn.target===Bs){if(Bt.flags&2){let Xs=Oe(hi[0],Bt);return _e.createTypeReferenceNode(yn.target===Fn?"Array":"ReadonlyArray",[Xs])}let vs=Oe(hi[0],Bt),pi=_e.createArrayTypeNode(vs);return yn.target===Fn?pi:_e.createTypeOperatorNode(148,pi)}else if(yn.target.objectFlags&8){if(hi=Ar(hi,(vs,pi)=>dF(vs,!!(yn.target.elementFlags[pi]&2))),hi.length>0){let vs=gL(yn),pi=hn(hi.slice(0,vs),Bt);if(pi){let{labeledElementDeclarations:Xs}=yn.target;for(let Ls=0;Ls0){let pa=(yn.target.typeParameters||v).length;ea=hn(hi.slice(pi,pa),Bt)}let Ls=Bt.flags;Bt.flags|=16;let Ba=ed(yn.symbol,Bt,788968,ea);return Bt.flags=Ls,Xs?Lr(Xs,Ba):Ba}}}function Lr(yn,hi){if(Nu(yn)){let vs=yn.typeArguments,pi=yn.qualifier;pi&&(sr(pi)?vs!==kZ(pi)&&(pi=nT(_e.cloneNode(pi),vs)):vs!==kZ(pi.right)&&(pi=_e.updateQualifiedName(pi,pi.left,nT(_e.cloneNode(pi.right),vs)))),vs=hi.typeArguments;let Xs=_i(hi);for(let ea of Xs)pi=pi?_e.createQualifiedName(pi,ea):ea;return _e.updateImportTypeNode(yn,yn.argument,yn.attributes,pi,vs,yn.isTypeOf)}else{let vs=yn.typeArguments,pi=yn.typeName;sr(pi)?vs!==kZ(pi)&&(pi=nT(_e.cloneNode(pi),vs)):vs!==kZ(pi.right)&&(pi=_e.updateQualifiedName(pi,pi.left,nT(_e.cloneNode(pi.right),vs))),vs=hi.typeArguments;let Xs=_i(hi);for(let ea of Xs)pi=_e.createQualifiedName(pi,ea);return _e.updateTypeReferenceNode(yn,pi,vs)}}function _i(yn){let hi=yn.typeName,vs=[];for(;!sr(hi);)vs.unshift(hi.right),hi=hi.left;return vs.unshift(hi),vs}function ui(yn){if(Ve(Bt))return[_e.createPropertySignature(void 0,"...",void 0,void 0)];let hi=[];for(let Xs of yn.callSignatures)hi.push(ks(Xs,179,Bt));for(let Xs of yn.constructSignatures)Xs.flags&4||hi.push(ks(Xs,180,Bt));for(let Xs of yn.indexInfos)hi.push(Ti(Xs,Bt,yn.objectFlags&1024?Wt(Bt):void 0));let vs=yn.properties;if(!vs)return hi;let pi=0;for(let Xs of vs){if(pi++,Bt.flags&2048){if(Xs.flags&4194304)continue;V1(Xs)&6&&Bt.tracker.reportPrivateInBaseOfClassExpression&&Bt.tracker.reportPrivateInBaseOfClassExpression(wc(Xs.escapedName))}if(Ve(Bt)&&pi+2!(Wn.flags&32768)),0);for(let Wn of Mr){let Lr=ks(Wn,173,Bt,{name:Pc,questionToken:Al});li.push(Cr(Lr))}if(Mr.length||!Al)return}let iu;Rt(Xt,Bt)?iu=Wt(Bt):(Co&&(Bt.reverseMappedStack||(Bt.reverseMappedStack=[]),Bt.reverseMappedStack.push(Xt)),iu=po?P_(Bt,void 0,po,Xt):_e.createKeywordTypeNode(133),Co&&Bt.reverseMappedStack.pop());let vu=wT(Xt)?[_e.createToken(148)]:void 0;vu&&(Bt.approximateLength+=9);let gp=_e.createPropertySignature(vu,Pc,Al,iu);li.push(Cr(gp));function Cr(Mr){var Wn;let Lr=(Wn=Xt.declarations)==null?void 0:Wn.find(_i=>_i.kind===348);if(Lr){let _i=pX(Lr.comment);_i&&KS(Mr,[{kind:3,text:`* * `+_i.replace(/\n/g,` * `)+` - `,pos:-1,end:-1,hasTrailingNewLine:!0}])}else Xt.valueDeclaration&&ln(Bt,Qr,Xt.valueDeclaration);return Qr}}function ln(Xt,Bt,li){return Xt.enclosingFile&&Xt.enclosingFile===ls(li)?mA(Bt,li):Bt}function hn(Xt,Bt,li){if(lr(Xt)){if(Ve(Bt))if(li){if(Xt.length>2)return[Oe(Xt[0],Bt),_e.createTypeReferenceNode(`... ${Xt.length-2} more ...`,void 0),Oe(Xt[Xt.length-1],Bt)]}else return[_e.createTypeReferenceNode("...",void 0)];let mo=!(Bt.flags&64)?ec():void 0,fo=[],Go=0;for(let Wc of Xt){if(Go++,Ve(Bt)&&Go+2{if(!txe(gl,([nu],[Bu])=>mi(nu,Bu)))for(let[nu,Bu]of gl)fo[Bu]=Oe(nu,Bt)}),Bt.flags=Wc}return fo}}function mi(Xt,Bt){return Xt===Bt||!!Xt.symbol&&Xt.symbol===Bt.symbol||!!Xt.aliasSymbol&&Xt.aliasSymbol===Bt.aliasSymbol}function Ti(Xt,Bt,li){let Xi=ece(Xt)||"x",mo=Oe(Xt.keyType,Bt),fo=_e.createParameterDeclaration(void 0,void 0,Xi,void 0,mo,void 0);return li||(li=Oe(Xt.type||Qt,Bt)),!Xt.type&&!(Bt.flags&2097152)&&(Bt.encounteredError=!0),Bt.approximateLength+=Xi.length+4,_e.createIndexSignature(Xt.isReadonly?[_e.createToken(148)]:void 0,[fo],li)}function ks(Xt,Bt,li,Xi){var mo;let fo,Go,Wc=g5r(Xt,!0)[0],gl=Ds(li,Xt.declaration,Wc,Xt.typeParameters,Xt.parameters,Xt.mapper);li.approximateLength+=3,li.flags&32&&Xt.target&&Xt.mapper&&Xt.target.typeParameters?Go=Xt.target.typeParameters.map(Lr=>Oe(al(Lr,Xt.mapper),li)):fo=Xt.typeParameters&&Xt.typeParameters.map(Lr=>Tg(Lr,li));let nu=li.flags;li.flags&=-257;let Bu=(lr(Wc,Lr=>Lr!==Wc[Wc.length-1]&&!!(aI(Lr)&32768))?Xt.parameters:Wc).map(Lr=>ou(Lr,li,Bt===176)),up=li.flags&33554432?void 0:zo(Xt,li);up&&Bu.unshift(up),li.flags=nu;let Cr=Ln(li,Xt),Qr=Xi?.modifiers;if(Bt===185&&Xt.flags&4){let Lr=xv(Qr);Qr=_e.createModifiersFromModifierFlags(Lr|64)}let Wn=Bt===179?_e.createCallSignature(fo,Bu,Cr):Bt===180?_e.createConstructSignature(fo,Bu,Cr):Bt===173?_e.createMethodSignature(Qr,Xi?.name??_e.createIdentifier(""),Xi?.questionToken,fo,Bu,Cr):Bt===174?_e.createMethodDeclaration(Qr,void 0,Xi?.name??_e.createIdentifier(""),void 0,fo,Bu,Cr,void 0):Bt===176?_e.createConstructorDeclaration(Qr,Bu,void 0):Bt===177?_e.createGetAccessorDeclaration(Qr,Xi?.name??_e.createIdentifier(""),Bu,Cr,void 0):Bt===178?_e.createSetAccessorDeclaration(Qr,Xi?.name??_e.createIdentifier(""),Bu,void 0):Bt===181?_e.createIndexSignature(Qr,Bu,Cr):Bt===317?_e.createJSDocFunctionType(Bu,Cr):Bt===184?_e.createFunctionTypeNode(fo,Bu,Cr??_e.createTypeReferenceNode(_e.createIdentifier(""))):Bt===185?_e.createConstructorTypeNode(Qr,fo,Bu,Cr??_e.createTypeReferenceNode(_e.createIdentifier(""))):Bt===262?_e.createFunctionDeclaration(Qr,void 0,Xi?.name?ps(Xi.name,sr):_e.createIdentifier(""),fo,Bu,Cr,void 0):Bt===218?_e.createFunctionExpression(Qr,void 0,Xi?.name?ps(Xi.name,sr):_e.createIdentifier(""),fo,Bu,Cr,_e.createBlock([])):Bt===219?_e.createArrowFunction(Qr,fo,Bu,Cr,void 0,_e.createBlock([])):w.assertNever(Bt);if(Go&&(Wn.typeArguments=_e.createNodeArray(Go)),((mo=Xt.declaration)==null?void 0:mo.kind)===323&&Xt.declaration.parent.kind===339){let Lr=Tf(Xt.declaration.parent.parent,!0).slice(2,-2).split(/\r\n|\n|\r/).map(_i=>_i.replace(/^\s+/," ")).join(` -`);i4(Wn,3,Lr,!0)}return gl?.(),Wn}function Wo(Xt){return $l(Xt)||xG(Xt)||Sl(Xt)}function Yi(Xt){return $l(Xt)||xG(Xt)?tB(Xt).typeParameters:Ei(Xt)?x3t(Xt):[QY(Mo(Xt.typeParameter))]}function Cs(Xt){return $l(Xt)||xG(Xt)?tB(Xt).parameters:void 0}function Ds(Xt,Bt,li,Xi,mo,fo){let Go=AF(Xt),Wc,gl,nu=Xt.enclosingDeclaration,Bu=Xt.mapper;if(fo&&(Xt.mapper=fo),Xt.enclosingDeclaration&&Bt){let Cr=function(Qr,Wn){w.assert(Xt.enclosingDeclaration);let Lr;Uo(Xt.enclosingDeclaration).fakeScopeForSignatureDeclaration===Qr?Lr=Xt.enclosingDeclaration:Xt.enclosingDeclaration.parent&&Uo(Xt.enclosingDeclaration.parent).fakeScopeForSignatureDeclaration===Qr&&(Lr=Xt.enclosingDeclaration.parent),w.assertOptionalNode(Lr,mc);let _i=Lr?.locals??Du(),ui,yn;if(Wn((hi,vs)=>{if(Lr){let pi=_i.get(hi);pi?yn=Hr(yn,{name:hi,oldSymbol:pi}):ui=Hr(ui,hi)}_i.set(hi,vs)}),Lr)return function(){X(ui,vs=>_i.delete(vs)),X(yn,vs=>_i.set(vs.name,vs.oldSymbol))};{let hi=_e.createBlock(v);Uo(hi).fakeScopeForSignatureDeclaration=Qr,hi.locals=_i,kA(hi,Xt.enclosingDeclaration),Xt.enclosingDeclaration=hi}};var up=Cr;Wc=lr(li)?Cr("params",Qr=>{if(li)for(let Wn=0;Wn{if(Jc(ui)&&pu(ui.name))return yn(ui.name),!0;return;function yn(vs){X(vs.elements,pi=>{switch(pi.kind){case 232:return;case 208:return hi(pi);default:return w.assertNever(pi)}})}function hi(vs){if(pu(vs.name))return yn(vs.name);let pi=Mo(vs);Qr(pi.escapedName,pi)}})||Qr(Lr.escapedName,Lr)}}):void 0,Xt.flags&4&&lr(Xi)&&(gl=Cr("typeParams",Qr=>{for(let Wn of Xi??v){let Lr=bg(Wn,Xt).escapedText;Qr(Lr,Wn.symbol)}}))}return()=>{Wc?.(),gl?.(),Go(),Xt.enclosingDeclaration=nu,Xt.mapper=Bu}}function zo(Xt,Bt){if(Xt.thisParameter)return ou(Xt.thisParameter,Bt);if(Xt.declaration&&so(Xt.declaration)){let li=hx(Xt.declaration);if(li&&li.typeExpression)return _e.createParameterDeclaration(void 0,void 0,"this",void 0,Oe(l(Bt,li.typeExpression),Bt))}}function ma(Xt,Bt,li){let Xi=Bt.flags;Bt.flags&=-513;let mo=_e.createModifiersFromModifierFlags(j3t(Xt)),fo=bg(Xt,Bt),Go=J4(Xt),Wc=Go&&Oe(Go,Bt);return Bt.flags=Xi,_e.createTypeParameterDeclaration(mo,fo,li,Wc)}function ha(Xt,Bt,li){return Bt&&Q(li,Bt,Xt)||Oe(Xt,li)}function Tg(Xt,Bt,li=By(Xt)){let Xi=li&&ha(li,_$e(Xt),Bt);return ma(Xt,Bt,Xi)}function Ou(Xt,Bt){let li=Xt.kind===2||Xt.kind===3?_e.createToken(131):void 0,Xi=Xt.kind===1||Xt.kind===3?co(_e.createIdentifier(Xt.parameterName),16777216):_e.createThisTypeNode(),mo=Xt.type&&Oe(Xt.type,Bt);return _e.createTypePredicateNode(li,Xi,mo)}function FA(Xt){let Bt=zd(Xt,169);if(Bt)return Bt;if(!vB(Xt))return zd(Xt,341)}function ou(Xt,Bt,li){let Xi=FA(Xt),mo=lo(Xt),fo=W_(Bt,Xi,mo,Xt),Go=!(Bt.flags&8192)&&li&&Xi&&ew(Xi)?Ot(lN(Xi),_e.cloneNode):void 0,gl=Xi&&Rv(Xi)||aI(Xt)&32768?_e.createToken(26):void 0,nu=Jf(Xt,Xi,Bt),up=Xi&&vZe(Xi)||aI(Xt)&16384?_e.createToken(58):void 0,Cr=_e.createParameterDeclaration(Go,gl,nu,up,fo,void 0);return Bt.approximateLength+=df(Xt).length+3,Cr}function Jf(Xt,Bt,li){return Bt&&Bt.name?Bt.name.kind===80?co(_e.cloneNode(Bt.name),16777216):Bt.name.kind===166?co(_e.cloneNode(Bt.name.right),16777216):Xi(Bt.name):df(Xt);function Xi(mo){return fo(mo);function fo(Go){li.tracker.canTrackSymbol&&xg(Go)&&A$e(Go)&&u_(Go.expression,li.enclosingDeclaration,li);let Wc=ns(Go,fo,void 0,void 0,fo);return ml(Wc)&&(Wc=_e.updateBindingElement(Wc,Wc.dotDotDotToken,Wc.propertyName,Wc.name,void 0)),qd(Wc)||(Wc=_e.cloneNode(Wc)),co(Wc,16777217)}}}function u_(Xt,Bt,li){if(!li.tracker.canTrackSymbol)return;let Xi=ib(Xt),mo=Pi(Xi,Xi.escapedText,1160127,void 0,!0);mo&&li.tracker.trackSymbol(mo,Bt,111551)}function LI(Xt,Bt,li,Xi){return Bt.tracker.trackSymbol(Xt,Bt.enclosingDeclaration,li),As(Xt,Bt,li,Xi)}function As(Xt,Bt,li,Xi){let mo;return!(Xt.flags&262144)&&(Bt.enclosingDeclaration||Bt.flags&64)&&!(Bt.flags&134217728)?(mo=w.checkDefined(Go(Xt,li,!0)),w.assert(mo&&mo.length>0)):mo=[Xt],mo;function Go(Wc,gl,nu){let Bu=jl(Wc,Bt.enclosingDeclaration,gl,!!(Bt.flags&128)),up;if(!Bu||Hg(Bu[0],Bt.enclosingDeclaration,Bu.length===1?gl:bl(gl))){let Qr=WP(Bu?Bu[0]:Wc,Bt.enclosingDeclaration,gl);if(O(Qr)){up=Qr.map(_i=>lr(_i.declarations,qG)?tl(_i,Bt):void 0);let Wn=Qr.map((_i,ui)=>ui);Wn.sort(Cr);let Lr=Wn.map(_i=>Qr[_i]);for(let _i of Lr){let ui=Go(_i,bl(gl),!1);if(ui){if(_i.exports&&_i.exports.get("export=")&&lw(_i.exports.get("export="),Wc)){Bu=ui;break}Bu=ui.concat(Bu||[VV(_i,Wc)||Wc]);break}}}}if(Bu)return Bu;if(nu||!(Wc.flags&6144))return!nu&&!Xi&&X(Wc.declarations,qG)?void 0:[Wc];function Cr(Qr,Wn){let Lr=up[Qr],_i=up[Wn];if(Lr&&_i){let ui=Op(_i);return Op(Lr)===ui?xke(Lr)-xke(_i):ui?-1:1}return 0}}}function Zs(Xt,Bt){let li;return Hre(Xt).flags&524384&&(li=_e.createNodeArray(Ot(aL(Xt),mo=>Tg(mo,Bt)))),li}function Vc(Xt,Bt,li){var Xi;w.assert(Xt&&0<=Bt&&BtdL(Bu,gl.links.mapper)),li)}else Go=Zs(mo,li)}return Go}function So(Xt){return hs(Xt.objectType)?So(Xt.objectType):Xt}function tl(Xt,Bt,li){let Xi=zd(Xt,307);if(!Xi){let nu=le(Xt.declarations,Bu=>Cre(Bu,Xt));nu&&(Xi=zd(nu,307))}if(Xi&&Xi.moduleName!==void 0)return Xi.moduleName;if(!Xi&&GDt.test(Xt.escapedName))return Xt.escapedName.substring(1,Xt.escapedName.length-1);if(!Bt.enclosingFile||!Bt.tracker.moduleResolverHost)return GDt.test(Xt.escapedName)?Xt.escapedName.substring(1,Xt.escapedName.length-1):ls(O$(Xt)).fileName;let mo=Bt.enclosingFile,fo=li||mo?.impliedNodeFormat,Go=Jle(mo.path,fo),Wc=ol(Xt),gl=Wc.specifierCache&&Wc.specifierCache.get(Go);if(!gl){let nu=!!Ne.outFile,{moduleResolverHost:Bu}=Bt.tracker,up=nu?{...Ne,baseUrl:Bu.getCommonSourceDirectory()}:Ne;gl=$s(Kkr(Xt,gi,up,mo,Bu,{importModuleSpecifierPreference:nu?"non-relative":"project-relative",importModuleSpecifierEnding:nu?"minimal":fo===99?"js":void 0},{overrideImportMode:li})),Wc.specifierCache??(Wc.specifierCache=new Map),Wc.specifierCache.set(Go,gl)}return gl}function Cd(Xt){let Bt=_e.createIdentifier(Sc(Xt.escapedName));return Xt.parent?_e.createQualifiedName(Cd(Xt.parent),Bt):Bt}function $A(Xt,Bt,li,Xi){let mo=LI(Xt,Bt,li,!(Bt.flags&16384)),fo=li===111551;if(lr(mo[0].declarations,qG)){let gl=mo.length>1?Wc(mo,mo.length-1,1):void 0,nu=Xi||Vc(mo,0,Bt),Bu=ls(Tp(Bt.enclosingDeclaration)),up=b8(mo[0]),Cr,Qr;if((s0(Ne)===3||s0(Ne)===99)&&up?.impliedNodeFormat===99&&up.impliedNodeFormat!==Bu?.impliedNodeFormat&&(Cr=tl(mo[0],Bt,99),Qr=_e.createImportAttributes(_e.createNodeArray([_e.createImportAttribute(_e.createStringLiteral("resolution-mode"),_e.createStringLiteral("import"))]))),Cr||(Cr=tl(mo[0],Bt)),!(Bt.flags&67108864)&&s0(Ne)!==1&&Cr.includes("/node_modules/")){let Lr=Cr;if(s0(Ne)===3||s0(Ne)===99){let _i=Bu?.impliedNodeFormat===99?1:99;Cr=tl(mo[0],Bt,_i),Cr.includes("/node_modules/")?Cr=Lr:Qr=_e.createImportAttributes(_e.createNodeArray([_e.createImportAttribute(_e.createStringLiteral("resolution-mode"),_e.createStringLiteral(_i===99?"import":"require"))]))}Qr||(Bt.encounteredError=!0,Bt.tracker.reportLikelyUnsafeImportRequiredError&&Bt.tracker.reportLikelyUnsafeImportRequiredError(Lr))}let Wn=_e.createLiteralTypeNode(_e.createStringLiteral(Cr));if(Bt.approximateLength+=Cr.length+10,!gl||w_(gl)){if(gl){let Lr=sr(gl)?gl:gl.right;rT(Lr,void 0)}return _e.createImportTypeNode(Wn,Qr,gl,nu,fo)}else{let Lr=So(gl),_i=Lr.objectType.typeName;return _e.createIndexedAccessTypeNode(_e.createImportTypeNode(Wn,Qr,_i,nu,fo),Lr.indexType)}}let Go=Wc(mo,mo.length-1,0);if(hs(Go))return Go;if(fo)return _e.createTypeQueryNode(Go);{let gl=sr(Go)?Go:Go.right,nu=xZ(gl);return rT(gl,void 0),_e.createTypeReferenceNode(Go,nu)}function Wc(gl,nu,Bu){let up=nu===gl.length-1?Xi:Vc(gl,nu,Bt),Cr=gl[nu],Qr=gl[nu-1],Wn;if(nu===0)Bt.flags|=16777216,Wn=OY(Cr,Bt),Bt.approximateLength+=(Wn?Wn.length:0)+1,Bt.flags^=16777216;else if(Qr&&Y1(Qr)){let _i=Y1(Qr);JC(_i,(ui,yn)=>{if(lw(ui,Cr)&&!X0e(yn)&&yn!=="export=")return Wn=Sc(yn),!0})}if(Wn===void 0){let _i=le(Cr.declarations,vl);if(_i&&xg(_i)&&w_(_i.expression)){let ui=Wc(gl,nu-1,Bu);return w_(ui)?_e.createIndexedAccessTypeNode(_e.createParenthesizedType(_e.createTypeQueryNode(ui)),_e.createTypeQueryNode(_i.expression)):ui}Wn=OY(Cr,Bt)}if(Bt.approximateLength+=Wn.length+1,!(Bt.flags&16)&&Qr&&XV(Qr)&&XV(Qr).get(Cr.escapedName)&&lw(XV(Qr).get(Cr.escapedName),Cr)){let _i=Wc(gl,nu-1,Bu);return hs(_i)?_e.createIndexedAccessTypeNode(_i,_e.createLiteralTypeNode(_e.createStringLiteral(Wn))):_e.createIndexedAccessTypeNode(_e.createTypeReferenceNode(_i,up),_e.createLiteralTypeNode(_e.createStringLiteral(Wn)))}let Lr=co(_e.createIdentifier(Wn),16777216);if(up&&rT(Lr,_e.createNodeArray(up)),Lr.symbol=Cr,nu>Bu){let _i=Wc(gl,nu-1,Bu);return w_(_i)?_e.createQualifiedName(_i,Lr):w.fail("Impossible construct - an export of an indexed access cannot be reachable")}return Lr}}function V_(Xt,Bt,li){let Xi=Pi(Bt.enclosingDeclaration,Xt,788968,void 0,!1);return Xi&&Xi.flags&262144?Xi!==li.symbol:!1}function bg(Xt,Bt){var li,Xi,mo,fo;if(Bt.flags&4&&Bt.typeParameterNames){let gl=Bt.typeParameterNames.get(Gh(Xt));if(gl)return gl}let Go=_0(Xt.symbol,Bt,788968,!0);if(!(Go.kind&80))return _e.createIdentifier("(Missing type parameter)");let Wc=(Xi=(li=Xt.symbol)==null?void 0:li.declarations)==null?void 0:Xi[0];if(Wc&&qp(Wc)&&(Go=C(Bt,Go,Wc.name)),Bt.flags&4){let gl=Go.escapedText,nu=((mo=Bt.typeParameterNamesByTextNextNameCount)==null?void 0:mo.get(gl))||0,Bu=gl;for(;(fo=Bt.typeParameterNamesByText)!=null&&fo.has(Bu)||V_(Bu,Bt,Xt);)nu++,Bu=`${gl}_${nu}`;if(Bu!==gl){let up=xZ(Go);Go=_e.createIdentifier(Bu),rT(Go,up)}Bt.mustCreateTypeParametersNamesLookups&&(Bt.mustCreateTypeParametersNamesLookups=!1,Bt.typeParameterNames=new Map(Bt.typeParameterNames),Bt.typeParameterNamesByTextNextNameCount=new Map(Bt.typeParameterNamesByTextNextNameCount),Bt.typeParameterNamesByText=new Set(Bt.typeParameterNamesByText)),Bt.typeParameterNamesByTextNextNameCount.set(gl,nu),Bt.typeParameterNames.set(Gh(Xt),Go),Bt.typeParameterNamesByText.add(Bu)}return Go}function _0(Xt,Bt,li,Xi){let mo=LI(Xt,Bt,li);return Xi&&mo.length!==1&&!Bt.encounteredError&&!(Bt.flags&65536)&&(Bt.encounteredError=!0),fo(mo,mo.length-1);function fo(Go,Wc){let gl=Vc(Go,Wc,Bt),nu=Go[Wc];Wc===0&&(Bt.flags|=16777216);let Bu=OY(nu,Bt);Wc===0&&(Bt.flags^=16777216);let up=co(_e.createIdentifier(Bu),16777216);return gl&&rT(up,_e.createNodeArray(gl)),up.symbol=nu,Wc>0?_e.createQualifiedName(fo(Go,Wc-1),up):up}}function Uf(Xt,Bt,li){let Xi=LI(Xt,Bt,li);return mo(Xi,Xi.length-1);function mo(fo,Go){let Wc=Vc(fo,Go,Bt),gl=fo[Go];Go===0&&(Bt.flags|=16777216);let nu=OY(gl,Bt);Go===0&&(Bt.flags^=16777216);let Bu=nu.charCodeAt(0);if(ree(Bu)&&lr(gl.declarations,qG))return _e.createStringLiteral(tl(gl,Bt));if(Go===0||hhe(nu,Qe)){let up=co(_e.createIdentifier(nu),16777216);return Wc&&rT(up,_e.createNodeArray(Wc)),up.symbol=gl,Go>0?_e.createPropertyAccessExpression(mo(fo,Go-1),up):up}else{Bu===91&&(nu=nu.substring(1,nu.length-1),Bu=nu.charCodeAt(0));let up;if(ree(Bu)&&!(gl.flags&8)?up=_e.createStringLiteral(N2(nu).replace(/\\./g,Cr=>Cr.substring(1)),Bu===39):""+ +nu===nu&&(up=_e.createNumericLiteral(+nu)),!up){let Cr=co(_e.createIdentifier(nu),16777216);Wc&&rT(Cr,_e.createNodeArray(Wc)),Cr.symbol=gl,up=Cr}return _e.createElementAccessExpression(mo(fo,Go-1),up)}}}function Kf(Xt){let Bt=vl(Xt);return Bt?xg(Bt)?!!(Rl(Bt.expression).flags&402653316):hA(Bt)?!!(Rl(Bt.argumentExpression).flags&402653316):bu(Bt):!1}function rB(Xt){let Bt=vl(Xt);return!!(Bt&&bu(Bt)&&(Bt.singleQuote||!qd(Bt)&&uc(Tf(Bt,!1),"'")))}function KI(Xt,Bt){let li=!!O(Xt.declarations)&&he(Xt.declarations,Kf),Xi=!!O(Xt.declarations)&&he(Xt.declarations,rB),mo=!!(Xt.flags&8192),fo=WC(Xt,Bt,Xi,li,mo);if(fo)return fo;let Go=Sc(Xt.escapedName);return Ale(Go,iA(Ne),Xi,li,mo)}function WC(Xt,Bt,li,Xi,mo){let fo=ol(Xt).nameType;if(fo){if(fo.flags&384){let Go=""+fo.value;return!Ke(Go,iA(Ne))&&(Xi||!yN(Go))?_e.createStringLiteral(Go,!!li):yN(Go)&&uc(Go,"-")?_e.createComputedPropertyName(_e.createPrefixUnaryExpression(41,_e.createNumericLiteral(-Go))):Ale(Go,iA(Ne),li,Xi,mo)}if(fo.flags&8192)return _e.createComputedPropertyName(Uf(fo.symbol,Bt,111551))}}function AF(Xt){let Bt=Xt.mustCreateTypeParameterSymbolList,li=Xt.mustCreateTypeParametersNamesLookups;Xt.mustCreateTypeParameterSymbolList=!0,Xt.mustCreateTypeParametersNamesLookups=!0;let Xi=Xt.typeParameterNames,mo=Xt.typeParameterNamesByText,fo=Xt.typeParameterNamesByTextNextNameCount,Go=Xt.typeParameterSymbolList;return()=>{Xt.typeParameterNames=Xi,Xt.typeParameterNamesByText=mo,Xt.typeParameterNamesByTextNextNameCount=fo,Xt.typeParameterSymbolList=Go,Xt.mustCreateTypeParameterSymbolList=Bt,Xt.mustCreateTypeParametersNamesLookups=li}}function Jre(Xt,Bt){return Xt.declarations&&be(Xt.declarations,li=>!!ott(li)&&(!Bt||!!Si(li,Xi=>Xi===Bt)))}function vge(Xt,Bt){if(!(sa(Bt)&4)||!F(Xt))return!0;wZe(Xt);let li=Uo(Xt).resolvedSymbol,Xi=li&&xp(li);return!Xi||Xi!==Bt.target?!0:O(Xt.typeArguments)>=XN(Bt.target.typeParameters)}function Zye(Xt){for(;Uo(Xt).fakeScopeForSignatureDeclaration;)Xt=Xt.parent;return Xt}function W_(Xt,Bt,li,Xi){var mo,fo;let Go=Bt&&(Jc(Bt)||FB(Bt))&&stt(Bt),Wc=Xt.enclosingDeclaration,gl=Xt.flags;if(Bt&&hle(Bt)&&!(Xt.flags&-2147483648)&&Tt.serializeTypeOfDeclaration(Bt,Xt),Xt.flags|=-2147483648,Wc&&(!OA(li)||Xt.flags&1)){let Cr=Bt&&ott(Bt)?Bt:Jre(Xi);if(Cr&&!dd(Cr)&&!Pb(Cr)){let Qr=ott(Cr),Wn=Go||!!(Xi.flags&4&&Xi.flags&16777216&&QS(Cr)&&((mo=Xi.links)!=null&&mo.mappedType)&&UXr(li)),Lr=!S(Qr)&&W(Xt,Qr,li,Cr,Wn);if(Lr)return Xt.flags=gl,Lr}}li.flags&8192&&li.symbol===Xi&&(!Xt.enclosingDeclaration||lr(Xi.declarations,Cr=>ls(Cr)===ls(Xt.enclosingDeclaration)))&&(Xt.flags|=1048576);let nu=Bt??Xi.valueDeclaration??((fo=Xi.declarations)==null?void 0:fo[0]),Bu=nu&&M0s(nu)?o8r(nu):void 0,up=E(Xt,Bu,li,Go);return Xt.flags=gl,up}function WLe(Xt,Bt,li){return li===Bt?!0:Xt&&(Jc(Xt)||n_(Xt)||Ql(Xt))&&Xt.questionToken?Uv(Bt,524288)===li:!1}function Ln(Xt,Bt){let li=Xt.flags&256,Xi=Xt.flags;li&&(Xt.flags&=-257);let mo,fo=Sd(Bt);return fo&&!(li&&vd(fo))?(Bt.declaration&&!(Xt.flags&-2147483648)&&Tt.serializeReturnTypeForSignature(Bt.declaration,Xt),Xt.flags|=-2147483648,mo=Oi(Xt,Bt)):li||(mo=_e.createKeywordTypeNode(133)),Xt.flags=Xi,mo}function Oi(Xt,Bt){let li=HB(Bt),Xi=Sd(Bt);if(Xt.enclosingDeclaration&&(!OA(Xi)||Xt.flags&1)&&Bt.declaration&&!qd(Bt.declaration)){let fo=q0s(Bt.declaration);if(fo){let Go=W(Xt,fo,Xi,Xt.enclosingDeclaration);if(Go)return Go}}if(li)return Ou(li,Xt);let mo=Bt.declaration&&o8r(Bt.declaration);return E(Xt,mo,Xi)}function ms(Xt,Bt){let li=!1,Xi=ib(Xt);if(so(Xt)&&(O3(Xi)||AN(Xi.parent)||a0(Xi.parent)&&M8(Xi.parent.left)&&O3(Xi.parent.right)))return li=!0,{introducesError:li,node:Xt};let mo=sL(Xt),fo;if(_G(Xi))return fo=Mo(r0(Xi,!1,!1)),CT(fo,Xi,mo,!1).accessibility!==0&&(li=!0,Bt.tracker.reportInaccessibleThisError()),{introducesError:li,node:Go(Xt)};if(fo=FI(Xi,mo,!0,!0),Bt.enclosingDeclaration&&!(fo&&fo.flags&262144)){fo=H1(fo);let Wc=FI(Xi,mo,!0,!0,Bt.enclosingDeclaration);if(Wc===en||Wc===void 0&&fo!==void 0||Wc&&fo&&!lw(H1(Wc),fo))return Wc!==en&&Bt.tracker.reportInferenceFallback(Xt),li=!0,{introducesError:li,node:Xt,sym:fo}}if(fo)return fo.flags&1&&fo.valueDeclaration&&(wZ(fo.valueDeclaration)||FB(fo.valueDeclaration))?{introducesError:li,node:Go(Xt)}:(!(fo.flags&262144)&&!eT(Xt)&&CT(fo,Bt.enclosingDeclaration,mo,!1).accessibility!==0?(Bt.tracker.reportInferenceFallback(Xt),li=!0):Bt.tracker.trackSymbol(fo,Bt.enclosingDeclaration,mo),{introducesError:li,node:Go(Xt)});return{introducesError:li,node:Xt};function Go(Wc){if(Wc===Xi){let nu=xp(fo),Bu=fo.flags&262144?bg(nu,Bt):_e.cloneNode(Wc);return Bu.symbol=fo,C(Bt,co(Bu,16777216),Wc)}let gl=ns(Wc,nu=>Go(nu),void 0);return gl!==Wc&&C(Bt,gl,Wc),gl}}function Ms(Xt,Bt,li,Xi){let mo=li?111551:788968,fo=FI(Bt,mo,!0);if(!fo)return;let Go=fo.flags&2097152?qm(fo):fo;if(CT(fo,Xt.enclosingDeclaration,mo,!1).accessibility===0)return $A(Go,Xt,mo,Xi)}function Qo(Xt,Bt){if(so(Bt)&&r_(Bt)){RXr(Bt);let li=Uo(Bt).resolvedSymbol;return!li||!(!Bt.isTypeOf&&!(li.flags&788968)||!(O(Bt.typeArguments)>=XN(aL(li))))}if(ca(Bt))return Xt.mapper===void 0?!0:!!l(Xt,Bt,!0);if(F(Bt)){if(E2(Bt))return!1;let li=wZe(Bt),Xi=Uo(Bt).resolvedSymbol;if(!Xi)return!1;if(Xi.flags&262144){let mo=xp(Xi);if(Xt.mapper&&dL(mo,Xt.mapper)!==mo)return!1}if($$(Bt))return vge(Bt,li)&&!Y5r(Bt)&&Xi.flags&788968}if(as(Bt)&&Bt.operator===158&&Bt.type.kind===155){let li=Xt.enclosingDeclaration&&Zye(Xt.enclosingDeclaration);return!!Si(Bt,Xi=>Xi===li)}return!0}function Ha(Xt,Bt){let li=l(Xt,Bt);return Oe(li,Xt)}function Gg(Xt,Bt){d&&d.throwIfCancellationRequested&&d.throwIfCancellationRequested();let li=!1,{finalizeBoundary:Xi,startRecoveryScope:mo}=Wc(),fo=xr(Bt,Go,Ya);if(!Xi())return;return Xt.approximateLength+=Bt.end-Bt.pos,fo;function Go(Lr){if(li)return Lr;let _i=mo(),ui=Wo(Lr)?gl(Lr):void 0,yn=Wn(Lr);return ui?.(),li?Ya(Lr)&&!S(Lr)?(_i(),Ha(Xt,Lr)):Lr:yn?C(Xt,yn,Lr):void 0}function Wc(){let Lr,_i,ui=Xt.tracker,yn=Xt.trackedSymbols;Xt.trackedSymbols=void 0;let hi=Xt.encounteredError;return Xt.tracker=new LDt(Xt,{...ui.inner,reportCyclicStructureError(){vs(()=>ui.reportCyclicStructureError())},reportInaccessibleThisError(){vs(()=>ui.reportInaccessibleThisError())},reportInaccessibleUniqueSymbolError(){vs(()=>ui.reportInaccessibleUniqueSymbolError())},reportLikelyUnsafeImportRequiredError(ta){vs(()=>ui.reportLikelyUnsafeImportRequiredError(ta))},reportNonSerializableProperty(ta){vs(()=>ui.reportNonSerializableProperty(ta))},trackSymbol(ta,Vs,va){return(Lr??(Lr=[])).push([ta,Vs,va]),!1},moduleResolverHost:Xt.tracker.moduleResolverHost},Xt.tracker.moduleResolverHost),{startRecoveryScope:pi,finalizeBoundary:Js};function vs(ta){li=!0,(_i??(_i=[])).push(ta)}function pi(){let ta=Lr?.length??0,Vs=_i?.length??0;return()=>{li=!1,Lr&&(Lr.length=ta),_i&&(_i.length=Vs)}}function Js(){return Xt.tracker=ui,Xt.trackedSymbols=yn,Xt.encounteredError=hi,_i?.forEach(ta=>ta()),li?!1:(Lr?.forEach(([ta,Vs,va])=>Xt.tracker.trackSymbol(ta,Vs,va)),!0)}}function gl(Lr){return Ds(Xt,Lr,Cs(Lr),Yi(Lr))}function nu(Lr){let _i=H8(Lr);switch(_i.kind){case 183:return Qr(_i);case 186:return Cr(_i);case 199:return Bu(_i);case 198:let ui=_i;if(ui.operator===143)return up(ui)}return xr(Lr,Go,Ya)}function Bu(Lr){let _i=nu(Lr.objectType);if(_i!==void 0)return _e.updateIndexedAccessTypeNode(Lr,_i,xr(Lr.indexType,Go,Ya))}function up(Lr){w.assertEqual(Lr.operator,143);let _i=nu(Lr.type);if(_i!==void 0)return _e.updateTypeOperatorNode(Lr,_i)}function Cr(Lr){let{introducesError:_i,node:ui}=ms(Lr.exprName,Xt);if(!_i)return _e.updateTypeQueryNode(Lr,ui,ws(Lr.typeArguments,Go,Ya));let yn=Ms(Xt,Lr.exprName,!0);if(yn)return C(Xt,yn,Lr.exprName)}function Qr(Lr){if(Qo(Xt,Lr)){let{introducesError:_i,node:ui}=ms(Lr.typeName,Xt),yn=ws(Lr.typeArguments,Go,Ya);if(_i){let hi=Ms(Xt,Lr.typeName,!1,yn);if(hi)return C(Xt,hi,Lr.typeName)}else{let hi=_e.updateTypeReferenceNode(Lr,ui,yn);return C(Xt,hi,Lr)}}}function Wn(Lr){if(rP(Lr))return xr(Lr.type,Go,Ya);if(zNt(Lr)||Lr.kind===319)return _e.createKeywordTypeNode(133);if(qNt(Lr))return _e.createKeywordTypeNode(159);if(lte(Lr))return _e.createUnionTypeNode([xr(Lr.type,Go,Ya),_e.createLiteralTypeNode(_e.createNull())]);if(FKe(Lr))return _e.createUnionTypeNode([xr(Lr.type,Go,Ya),_e.createKeywordTypeNode(157)]);if(Hxe(Lr))return xr(Lr.type,Go);if(Xxe(Lr))return _e.createArrayTypeNode(xr(Lr.type,Go,Ya));if(A4(Lr))return _e.createTypeLiteralNode(Ot(Lr.jsDocPropertyTags,pi=>{let Js=xr(sr(pi.name)?pi.name:pi.name.right,Go,sr),ta=ZI(l(Xt,Lr),Js.escapedText),Vs=ta&&pi.typeExpression&&l(Xt,pi.typeExpression.type)!==ta?Oe(ta,Xt):void 0;return _e.createPropertySignature(void 0,Js,pi.isBracketed||pi.typeExpression&&FKe(pi.typeExpression.type)?_e.createToken(58):void 0,Vs||pi.typeExpression&&xr(pi.typeExpression.type,Go,Ya)||_e.createKeywordTypeNode(133))}));if(F(Lr)&&sr(Lr.typeName)&&Lr.typeName.escapedText==="")return Ho(_e.createKeywordTypeNode(133),Lr);if((x_(Lr)||F(Lr))&&eee(Lr))return _e.createTypeLiteralNode([_e.createIndexSignature(void 0,[_e.createParameterDeclaration(void 0,void 0,"x",void 0,xr(Lr.typeArguments[0],Go,Ya))],xr(Lr.typeArguments[1],Go,Ya))]);if(ute(Lr))if(PX(Lr)){let pi;return _e.createConstructorTypeNode(void 0,ws(Lr.typeParameters,Go,qp),tr(Lr.parameters,(Js,ta)=>Js.name&&sr(Js.name)&&Js.name.escapedText==="new"?(pi=Js.type,void 0):_e.createParameterDeclaration(void 0,yn(Js),C(Xt,_e.createIdentifier(hi(Js,ta)),Js),_e.cloneNode(Js.questionToken),xr(Js.type,Go,Ya),void 0)),xr(pi||Lr.type,Go,Ya)||_e.createKeywordTypeNode(133))}else return _e.createFunctionTypeNode(ws(Lr.typeParameters,Go,qp),Ot(Lr.parameters,(pi,Js)=>_e.createParameterDeclaration(void 0,yn(pi),C(Xt,_e.createIdentifier(hi(pi,Js)),pi),_e.cloneNode(pi.questionToken),xr(pi.type,Go,Ya),void 0)),xr(Lr.type,Go,Ya)||_e.createKeywordTypeNode(133));if(ca(Lr))return Qo(Xt,Lr)||(li=!0),Lr;if(qp(Lr))return _e.updateTypeParameterDeclaration(Lr,ws(Lr.modifiers,Go,gg),C(Xt,bg(xp(Mo(Lr)),Xt),Lr),xr(Lr.constraint,Go,Ya),xr(Lr.default,Go,Ya));if(hs(Lr)){let pi=Bu(Lr);return pi||(li=!0,Lr)}if(F(Lr)){let pi=Qr(Lr);return pi||(li=!0,Lr)}if(r_(Lr)){let pi=Uo(Lr).resolvedSymbol;return $$(Lr)&&pi&&(!Lr.isTypeOf&&!(pi.flags&788968)||!(O(Lr.typeArguments)>=XN(aL(pi))))?C(Xt,Oe(l(Xt,Lr),Xt),Lr):_e.updateImportTypeNode(Lr,_e.updateLiteralTypeNode(Lr.argument,vs(Lr,Lr.argument.literal)),xr(Lr.attributes,Go,l4),xr(Lr.qualifier,Go,w_),ws(Lr.typeArguments,Go,Ya),Lr.isTypeOf)}if(Sf(Lr)&&Lr.name.kind===167&&!A$e(Lr.name)){if(!jR(Lr))return _i(Lr,Go);if(!(Xt.flags&1&&cp(Lr.name.expression)&&KN(Lr.name).flags&1))return}if($l(Lr)&&!Lr.type||Ql(Lr)&&!Lr.type&&!Lr.initializer||n_(Lr)&&!Lr.type&&!Lr.initializer||Jc(Lr)&&!Lr.type&&!Lr.initializer){let pi=_i(Lr,Go);return pi===Lr&&(pi=C(Xt,_e.cloneNode(Lr),Lr)),pi.type=_e.createKeywordTypeNode(133),Jc(Lr)&&(pi.modifiers=void 0),pi}if(oe(Lr)){let pi=Cr(Lr);return pi||(li=!0,Lr)}if(xg(Lr)&&cp(Lr.expression)){let{node:pi,introducesError:Js}=ms(Lr.expression,Xt);if(Js){let ta=$b(qOt(Lr.expression)),Vs=Oe(ta,Xt),va;if(id(Vs))va=Vs.literal;else{let fa=WKr(Lr.expression),ng=typeof fa.value=="string"?_e.createStringLiteral(fa.value,void 0):typeof fa.value=="number"?_e.createNumericLiteral(fa.value,0):void 0;if(!ng)return Tu(Vs)&&u_(Lr.expression,Xt.enclosingDeclaration,Xt),Lr;va=ng}return va.kind===11&&Ke(va.text,iA(Ne))?_e.createIdentifier(va.text):va.kind===9&&!va.text.startsWith("-")?va:_e.updateComputedPropertyName(Lr,va)}else return _e.updateComputedPropertyName(Lr,pi)}if(S(Lr)){let pi;if(sr(Lr.parameterName)){let{node:Js,introducesError:ta}=ms(Lr.parameterName,Xt);li=li||ta,pi=Js}else pi=_e.cloneNode(Lr.parameterName);return _e.updateTypePredicateNode(Lr,_e.cloneNode(Lr.assertsModifier),pi,xr(Lr.type,Go,Ya))}if(Ct(Lr)||Se(Lr)||Sl(Lr)){let pi=_i(Lr,Go),Js=C(Xt,pi===Lr?_e.cloneNode(Lr):pi,Lr),ta=Sg(Js);return co(Js,ta|(Xt.flags&1024&&Se(Lr)?0:1)),Js}if(bu(Lr)&&Xt.flags&268435456&&!Lr.singleQuote){let pi=_e.cloneNode(Lr);return pi.singleQuote=!0,pi}if(Ei(Lr)){let pi=xr(Lr.checkType,Go,Ya),Js=gl(Lr),ta=xr(Lr.extendsType,Go,Ya),Vs=xr(Lr.trueType,Go,Ya);Js();let va=xr(Lr.falseType,Go,Ya);return _e.updateConditionalTypeNode(Lr,pi,ta,Vs,va)}if(as(Lr)){if(Lr.operator===158&&Lr.type.kind===155){if(!Qo(Xt,Lr))return li=!0,Lr}else if(Lr.operator===143){let pi=up(Lr);return pi||(li=!0,Lr)}}return _i(Lr,Go);function _i(pi,Js){let ta=!Xt.enclosingFile||Xt.enclosingFile!==ls(pi);return ns(pi,Js,void 0,ta?ui:void 0)}function ui(pi,Js,ta,Vs,va){let fa=ws(pi,Js,ta,Vs,va);return fa&&(fa.pos!==-1||fa.end!==-1)&&(fa===pi&&(fa=_e.createNodeArray(pi.slice(),pi.hasTrailingComma)),MS(fa,-1,-1)),fa}function yn(pi){return pi.dotDotDotToken||(pi.type&&Xxe(pi.type)?_e.createToken(26):void 0)}function hi(pi,Js){return pi.name&&sr(pi.name)&&pi.name.escapedText==="this"?"this":yn(pi)?"args":`arg${Js}`}function vs(pi,Js){if(Xt.bundled||Xt.enclosingFile!==ls(Js)){let ta=Js.text,Vs=Uo(Lr).resolvedSymbol,va=pi.isTypeOf?111551:788968,fa=Vs&&CT(Vs,Xt.enclosingDeclaration,va,!1).accessibility===0&&LI(Vs,Xt,va,!0)[0];if(fa&&G3(fa))ta=tl(fa,Xt);else{let ng=iMt(pi);ng&&(ta=tl(ng.symbol,Xt))}if(ta.includes("/node_modules/")&&(Xt.encounteredError=!0,Xt.tracker.reportLikelyUnsafeImportRequiredError&&Xt.tracker.reportLikelyUnsafeImportRequiredError(ta)),ta!==Js.text)return Ho(_e.createStringLiteral(ta),Js)}return xr(Js,Go,bu)}}}function Xg(Xt,Bt){var li;let Xi=E8r(_e.createPropertyDeclaration,174,!0),mo=E8r((Rn,ua,sc,ja)=>_e.createPropertySignature(Rn,ua,sc,ja),173,!1),fo=Bt.enclosingDeclaration,Go=[],Wc=new Set,gl=[],nu=Bt;Bt={...nu,usedSymbolNames:new Set(nu.usedSymbolNames),remappedSymbolNames:new Map,remappedSymbolReferences:new Map((li=nu.remappedSymbolReferences)==null?void 0:li.entries()),tracker:void 0};let Bu={...nu.tracker.inner,trackSymbol:(Rn,ua,sc)=>{var ja,Ba;if((ja=Bt.remappedSymbolNames)!=null&&ja.has(kg(Rn)))return!1;if(CT(Rn,ua,sc,!1).accessibility===0){let Ag=As(Rn,Bt,sc);if(!(Rn.flags&4)){let vu=Ag[0],Xp=ls(nu.enclosingDeclaration);lr(vu.declarations,KA=>ls(KA)===Xp)&&Vs(vu)}}else if((Ba=nu.tracker.inner)!=null&&Ba.trackSymbol)return nu.tracker.inner.trackSymbol(Rn,ua,sc);return!1}};Bt.tracker=new LDt(Bt,Bu,nu.tracker.moduleResolverHost),JC(Xt,(Rn,ua)=>{let sc=Sc(ua);ED(Rn,sc)});let up=!Bt.bundled,Cr=Xt.get("export=");return Cr&&Xt.size>1&&Cr.flags&2098688&&(Xt=Du(),Xt.set("export=",Cr)),pi(Xt),yn(Go);function Qr(Rn){return!!Rn&&Rn.kind===80}function Wn(Rn){return Rp(Rn)?Gt(Ot(Rn.declarationList.declarations,vl),Qr):Gt([vl(Rn)],Qr)}function Lr(Rn){let ua=be(Rn,tf),sc=ke(Rn,CC),ja=sc!==-1?Rn[sc]:void 0;if(ja&&ua&&ua.isExportEquals&&sr(ua.expression)&&sr(ja.name)&&ao(ja.name)===ao(ua.expression)&&ja.body&&SN(ja.body)){let Ba=Gt(Rn,vu=>!!(N_(vu)&32)),Gd=ja.name,Ag=ja.body;if(O(Ba)&&(ja=_e.updateModuleDeclaration(ja,ja.modifiers,ja.name,Ag=_e.updateModuleBlock(Ag,_e.createNodeArray([...ja.body.statements,_e.createExportDeclaration(void 0,!1,_e.createNamedExports(Ot(Fr(Ba,vu=>Wn(vu)),vu=>_e.createExportSpecifier(!1,void 0,vu))),void 0)]))),Rn=[...Rn.slice(0,sc),ja,...Rn.slice(sc+1)]),!be(Rn,vu=>vu!==ja&&vv(vu,Gd))){Go=[];let vu=!lr(Ag.statements,Xp=>ba(Xp,32)||tf(Xp)||mC(Xp));X(Ag.statements,Xp=>{fa(Xp,vu?32:0)}),Rn=[...Gt(Rn,Xp=>Xp!==ja&&Xp!==ua),...Go]}}return Rn}function _i(Rn){let ua=Gt(Rn,ja=>mC(ja)&&!ja.moduleSpecifier&&!!ja.exportClause&&GB(ja.exportClause));O(ua)>1&&(Rn=[...Gt(Rn,Ba=>!mC(Ba)||!!Ba.moduleSpecifier||!Ba.exportClause),_e.createExportDeclaration(void 0,!1,_e.createNamedExports(Fr(ua,Ba=>ps(Ba.exportClause,GB).elements)),void 0)]);let sc=Gt(Rn,ja=>mC(ja)&&!!ja.moduleSpecifier&&!!ja.exportClause&&GB(ja.exportClause));if(O(sc)>1){let ja=Hl(sc,Ba=>bu(Ba.moduleSpecifier)?">"+Ba.moduleSpecifier.text:">");if(ja.length!==sc.length)for(let Ba of ja)Ba.length>1&&(Rn=[...Gt(Rn,Gd=>!Ba.includes(Gd)),_e.createExportDeclaration(void 0,!1,_e.createNamedExports(Fr(Ba,Gd=>ps(Gd.exportClause,GB).elements)),Ba[0].moduleSpecifier)])}return Rn}function ui(Rn){let ua=ke(Rn,sc=>mC(sc)&&!sc.moduleSpecifier&&!sc.attributes&&!!sc.exportClause&&GB(sc.exportClause));if(ua>=0){let sc=Rn[ua],ja=tr(sc.exportClause.elements,Ba=>{if(!Ba.propertyName){let Gd=Yu(Rn),Ag=Gt(Gd,vu=>vv(Rn[vu],Ba.name));if(O(Ag)&&he(Ag,vu=>Xee(Rn[vu]))){for(let vu of Ag)Rn[vu]=hi(Rn[vu]);return}}return Ba});O(ja)?Rn[ua]=_e.updateExportDeclaration(sc,sc.modifiers,sc.isTypeOnly,_e.updateNamedExports(sc.exportClause,ja),sc.moduleSpecifier,sc.attributes):Nm(Rn,ua)}return Rn}function yn(Rn){return Rn=Lr(Rn),Rn=_i(Rn),Rn=ui(Rn),fo&&(Gc(fo)&&ia(fo)||CC(fo))&&(!lr(Rn,D3)||!Lae(Rn)&&lr(Rn,f8))&&Rn.push(Phe(_e)),Rn}function hi(Rn){let ua=(N_(Rn)|32)&-129;return _e.replaceModifiers(Rn,ua)}function vs(Rn){let ua=N_(Rn)&-33;return _e.replaceModifiers(Rn,ua)}function pi(Rn,ua,sc){ua||gl.push(new Map),Rn.forEach(ja=>{Js(ja,!1,!!sc)}),ua||(gl[gl.length-1].forEach(ja=>{Js(ja,!0,!!sc)}),gl.pop())}function Js(Rn,ua,sc){Id(lo(Rn));let ja=GA(Rn);if(Wc.has(kg(ja)))return;if(Wc.add(kg(ja)),!ua||O(Rn.declarations)&&lr(Rn.declarations,Gd=>!!Si(Gd,Ag=>Ag===fo))){let Gd=AF(Bt);ta(Rn,ua,sc),Gd()}}function ta(Rn,ua,sc,ja=Rn.escapedName){var Ba,Gd,Ag,vu,Xp,KA;let _A=Sc(ja),g_=ja==="default";if(ua&&!(Bt.flags&131072)&&FQ(_A)&&!g_){Bt.encounteredError=!0;return}let A_=g_&&!!(Rn.flags&-113||Rn.flags&16&&O(Id(lo(Rn))))&&!(Rn.flags&2097152),ry=!A_&&!ua&&FQ(_A)&&!g_;(A_||ry)&&(ua=!0);let sC=(ua?0:32)|(g_&&!A_?2048:0),d_=Rn.flags&1536&&Rn.flags&7&&ja!=="export=",fb=d_&&Vye(lo(Rn),Rn);if((Rn.flags&8208||fb)&&iO(lo(Rn),Rn,ED(Rn,_A),sC),Rn.flags&524288&&ng(Rn,_A,sC),Rn.flags&98311&&ja!=="export="&&!(Rn.flags&4194304)&&!(Rn.flags&32)&&!(Rn.flags&8192)&&!fb)if(sc)Sge(Rn)&&(ry=!1,A_=!1);else{let bC=lo(Rn),Ib=ED(Rn,_A);if(bC.symbol&&bC.symbol!==Rn&&bC.symbol.flags&16&&lr(bC.symbol.declarations,vG)&&((Ba=bC.symbol.members)!=null&&Ba.size||(Gd=bC.symbol.exports)!=null&&Gd.size))Bt.remappedSymbolReferences||(Bt.remappedSymbolReferences=new Map),Bt.remappedSymbolReferences.set(kg(bC.symbol),Rn),ta(bC.symbol,ua,sc,ja),Bt.remappedSymbolReferences.delete(kg(bC.symbol));else if(!(Rn.flags&16)&&Vye(bC,Rn))iO(bC,Rn,Ib,sC);else{let J7=Rn.flags&2?O7(Rn)?2:1:(Ag=Rn.parent)!=null&&Ag.valueDeclaration&&Gc((vu=Rn.parent)==null?void 0:vu.valueDeclaration)?2:void 0,tR=A_||!(Rn.flags&4)?Ib:PLe(Ib,Rn),aW=Rn.declarations&&be(Rn.declarations,Wye=>zs(Wye));aW&&yl(aW.parent)&&aW.parent.declarations.length===1&&(aW=aW.parent.parent);let cW=(Xp=Rn.declarations)==null?void 0:Xp.find(Io);if(cW&&no(cW.parent)&&sr(cW.parent.right)&&((KA=bC.symbol)!=null&&KA.valueDeclaration)&&Gc(bC.symbol.valueDeclaration)){let Wye=Ib===cW.parent.right.escapedText?void 0:cW.parent.right;fa(_e.createExportDeclaration(void 0,!1,_e.createNamedExports([_e.createExportSpecifier(!1,Wye,Ib)])),0),Bt.tracker.trackSymbol(bC.symbol,Bt.enclosingDeclaration,111551)}else{let Wye=C(Bt,_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(tR,void 0,W_(Bt,void 0,bC,Rn))],J7)),aW);fa(Wye,tR!==Ib?sC&-33:sC),tR!==Ib&&!ua&&(fa(_e.createExportDeclaration(void 0,!1,_e.createNamedExports([_e.createExportSpecifier(!1,tR,Ib)])),0),ry=!1,A_=!1)}}}if(Rn.flags&384&&sW(Rn,_A,sC),Rn.flags&32&&(Rn.flags&4&&Rn.valueDeclaration&&no(Rn.valueDeclaration.parent)&&tp(Rn.valueDeclaration.parent.right)?Lye(Rn,ED(Rn,_A),sC):oW(Rn,ED(Rn,_A),sC)),(Rn.flags&1536&&(!d_||wy(Rn))||fb)&&UE(Rn,_A,sC),Rn.flags&64&&!(Rn.flags&32)&&Eg(Rn,_A,sC),Rn.flags&2097152&&Lye(Rn,ED(Rn,_A),sC),Rn.flags&4&&Rn.escapedName==="export="&&Sge(Rn),Rn.flags&8388608&&Rn.declarations)for(let bC of Rn.declarations){let Ib=z0(bC,bC.moduleSpecifier);Ib&&fa(_e.createExportDeclaration(void 0,bC.isTypeOnly,void 0,_e.createStringLiteral(tl(Ib,Bt))),0)}A_?fa(_e.createExportAssignment(void 0,!1,_e.createIdentifier(ED(Rn,_A))),0):ry&&fa(_e.createExportDeclaration(void 0,!1,_e.createNamedExports([_e.createExportSpecifier(!1,ED(Rn,_A),_A)])),0)}function Vs(Rn){if(lr(Rn.declarations,wZ))return;w.assertIsDefined(gl[gl.length-1]),PLe(Sc(Rn.escapedName),Rn);let ua=!!(Rn.flags&2097152)&&!lr(Rn.declarations,sc=>!!Si(sc,mC)||rD(sc)||Cm(sc)&&!DG(sc.moduleReference));gl[ua?0:gl.length-1].set(kg(Rn),Rn)}function va(Rn){return Gc(Rn)&&(ia(Rn)||Ia(Rn))||Yf(Rn)&&!v2(Rn)}function fa(Rn,ua){if(ew(Rn)){let sc=0,ja=Bt.enclosingDeclaration&&(w2(Bt.enclosingDeclaration)?ls(Bt.enclosingDeclaration):Bt.enclosingDeclaration);ua&32&&ja&&(va(ja)||CC(ja))&&Xee(Rn)&&(sc|=32),up&&!(sc&32)&&(!ja||!(ja.flags&33554432))&&(tP(Rn)||Rp(Rn)||mp(Rn)||bc(Rn)||CC(Rn))&&(sc|=128),ua&2048&&(bc(Rn)||HI(Rn)||mp(Rn))&&(sc|=2048),sc&&(Rn=_e.replaceModifiers(Rn,sc|N_(Rn)))}Go.push(Rn)}function ng(Rn,ua,sc){var ja;let Ba=tF(Rn),Gd=ol(Rn).typeParameters,Ag=Ot(Gd,A_=>Tg(A_,Bt)),vu=(ja=Rn.declarations)==null?void 0:ja.find(w2),Xp=gX(vu?vu.comment||vu.parent.comment:void 0),KA=Bt.flags;Bt.flags|=8388608;let _A=Bt.enclosingDeclaration;Bt.enclosingDeclaration=vu;let g_=vu&&vu.typeExpression&&rP(vu.typeExpression)&&Q(Bt,vu.typeExpression.type,Ba,void 0)||Oe(Ba,Bt);fa(US(_e.createTypeAliasDeclaration(void 0,ED(Rn,ua),Ag,g_),Xp?[{kind:3,text:`* - * `+Xp.replace(/\n/g,` + `,pos:-1,end:-1,hasTrailingNewLine:!0}])}else Xt.valueDeclaration&&ln(Bt,Mr,Xt.valueDeclaration);return Mr}}function ln(Xt,Bt,li){return Xt.enclosingFile&&Xt.enclosingFile===ls(li)?hA(Bt,li):Bt}function hn(Xt,Bt,li){if(lr(Xt)){if(Ve(Bt))if(li){if(Xt.length>2)return[Oe(Xt[0],Bt),_e.createTypeReferenceNode(`... ${Xt.length-2} more ...`,void 0),Oe(Xt[Xt.length-1],Bt)]}else return[_e.createTypeReferenceNode("...",void 0)];let Co=!(Bt.flags&64)?ec():void 0,po=[],ko=0;for(let Pc of Xt){if(ko++,Ve(Bt)&&ko+2{if(!nxe(Al,([iu],[vu])=>mi(iu,vu)))for(let[iu,vu]of Al)po[vu]=Oe(iu,Bt)}),Bt.flags=Pc}return po}}function mi(Xt,Bt){return Xt===Bt||!!Xt.symbol&&Xt.symbol===Bt.symbol||!!Xt.aliasSymbol&&Xt.aliasSymbol===Bt.aliasSymbol}function Ti(Xt,Bt,li){let Xi=lce(Xt)||"x",Co=Oe(Xt.keyType,Bt),po=_e.createParameterDeclaration(void 0,void 0,Xi,void 0,Co,void 0);return li||(li=Oe(Xt.type||Mt,Bt)),!Xt.type&&!(Bt.flags&2097152)&&(Bt.encounteredError=!0),Bt.approximateLength+=Xi.length+4,_e.createIndexSignature(Xt.isReadonly?[_e.createToken(148)]:void 0,[po],li)}function ks(Xt,Bt,li,Xi){var Co;let po,ko,Pc=CYr(Xt,!0)[0],Al=Ds(li,Xt.declaration,Pc,Xt.typeParameters,Xt.parameters,Xt.mapper);li.approximateLength+=3,li.flags&32&&Xt.target&&Xt.mapper&&Xt.target.typeParameters?ko=Xt.target.typeParameters.map(Lr=>Oe(cl(Lr,Xt.mapper),li)):po=Xt.typeParameters&&Xt.typeParameters.map(Lr=>Ng(Lr,li));let iu=li.flags;li.flags&=-257;let vu=(lr(Pc,Lr=>Lr!==Pc[Pc.length-1]&&!!(cI(Lr)&32768))?Xt.parameters:Pc).map(Lr=>au(Lr,li,Bt===176)),gp=li.flags&33554432?void 0:jo(Xt,li);gp&&vu.unshift(gp),li.flags=iu;let Cr=Ln(li,Xt),Mr=Xi?.modifiers;if(Bt===185&&Xt.flags&4){let Lr=kv(Mr);Mr=_e.createModifiersFromModifierFlags(Lr|64)}let Wn=Bt===179?_e.createCallSignature(po,vu,Cr):Bt===180?_e.createConstructSignature(po,vu,Cr):Bt===173?_e.createMethodSignature(Mr,Xi?.name??_e.createIdentifier(""),Xi?.questionToken,po,vu,Cr):Bt===174?_e.createMethodDeclaration(Mr,void 0,Xi?.name??_e.createIdentifier(""),void 0,po,vu,Cr,void 0):Bt===176?_e.createConstructorDeclaration(Mr,vu,void 0):Bt===177?_e.createGetAccessorDeclaration(Mr,Xi?.name??_e.createIdentifier(""),vu,Cr,void 0):Bt===178?_e.createSetAccessorDeclaration(Mr,Xi?.name??_e.createIdentifier(""),vu,void 0):Bt===181?_e.createIndexSignature(Mr,vu,Cr):Bt===317?_e.createJSDocFunctionType(vu,Cr):Bt===184?_e.createFunctionTypeNode(po,vu,Cr??_e.createTypeReferenceNode(_e.createIdentifier(""))):Bt===185?_e.createConstructorTypeNode(Mr,po,vu,Cr??_e.createTypeReferenceNode(_e.createIdentifier(""))):Bt===262?_e.createFunctionDeclaration(Mr,void 0,Xi?.name?ps(Xi.name,sr):_e.createIdentifier(""),po,vu,Cr,void 0):Bt===218?_e.createFunctionExpression(Mr,void 0,Xi?.name?ps(Xi.name,sr):_e.createIdentifier(""),po,vu,Cr,_e.createBlock([])):Bt===219?_e.createArrowFunction(Mr,po,vu,Cr,void 0,_e.createBlock([])):w.assertNever(Bt);if(ko&&(Wn.typeArguments=_e.createNodeArray(ko)),((Co=Xt.declaration)==null?void 0:Co.kind)===323&&Xt.declaration.parent.kind===339){let Lr=Nf(Xt.declaration.parent.parent,!0).slice(2,-2).split(/\r\n|\n|\r/).map(_i=>_i.replace(/^\s+/," ")).join(` +`);a4(Wn,3,Lr,!0)}return Al?.(),Wn}function Vo(Xt){return eu(Xt)||LG(Xt)||wl(Xt)}function Hi(Xt){return eu(Xt)||LG(Xt)?rB(Xt).typeParameters:Ei(Xt)?F3t(Xt):[YM(Oo(Xt.typeParameter))]}function Cs(Xt){return eu(Xt)||LG(Xt)?rB(Xt).parameters:void 0}function Ds(Xt,Bt,li,Xi,Co,po){let ko=CF(Xt),Pc,Al,iu=Xt.enclosingDeclaration,vu=Xt.mapper;if(po&&(Xt.mapper=po),Xt.enclosingDeclaration&&Bt){let Cr=function(Mr,Wn){w.assert(Xt.enclosingDeclaration);let Lr;Jo(Xt.enclosingDeclaration).fakeScopeForSignatureDeclaration===Mr?Lr=Xt.enclosingDeclaration:Xt.enclosingDeclaration.parent&&Jo(Xt.enclosingDeclaration.parent).fakeScopeForSignatureDeclaration===Mr&&(Lr=Xt.enclosingDeclaration.parent),w.assertOptionalNode(Lr,hc);let _i=Lr?.locals??xu(),ui,yn;if(Wn((hi,vs)=>{if(Lr){let pi=_i.get(hi);pi?yn=Yr(yn,{name:hi,oldSymbol:pi}):ui=Yr(ui,hi)}_i.set(hi,vs)}),Lr)return function(){X(ui,vs=>_i.delete(vs)),X(yn,vs=>_i.set(vs.name,vs.oldSymbol))};{let hi=_e.createBlock(v);Jo(hi).fakeScopeForSignatureDeclaration=Mr,hi.locals=_i,GA(hi,Xt.enclosingDeclaration),Xt.enclosingDeclaration=hi}};var gp=Cr;Pc=lr(li)?Cr("params",Mr=>{if(li)for(let Wn=0;Wn{if(Uc(ui)&&fu(ui.name))return yn(ui.name),!0;return;function yn(vs){X(vs.elements,pi=>{switch(pi.kind){case 232:return;case 208:return hi(pi);default:return w.assertNever(pi)}})}function hi(vs){if(fu(vs.name))return yn(vs.name);let pi=Oo(vs);Mr(pi.escapedName,pi)}})||Mr(Lr.escapedName,Lr)}}):void 0,Xt.flags&4&&lr(Xi)&&(Al=Cr("typeParams",Mr=>{for(let Wn of Xi??v){let Lr=Eg(Wn,Xt).escapedText;Mr(Lr,Wn.symbol)}}))}return()=>{Pc?.(),Al?.(),ko(),Xt.enclosingDeclaration=iu,Xt.mapper=vu}}function jo(Xt,Bt){if(Xt.thisParameter)return au(Xt.thisParameter,Bt);if(Xt.declaration&&io(Xt.declaration)){let li=vx(Xt.declaration);if(li&&li.typeExpression)return _e.createParameterDeclaration(void 0,void 0,"this",void 0,Oe(l(Bt,li.typeExpression),Bt))}}function Ca(Xt,Bt,li){let Xi=Bt.flags;Bt.flags&=-513;let Co=_e.createModifiersFromModifierFlags($3t(Xt)),po=Eg(Xt,Bt),ko=j4(Xt),Pc=ko&&Oe(ko,Bt);return Bt.flags=Xi,_e.createTypeParameterDeclaration(Co,po,li,Pc)}function ma(Xt,Bt,li){return Bt&&M(li,Bt,Xt)||Oe(Xt,li)}function Ng(Xt,Bt,li=vy(Xt)){let Xi=li&&ma(li,b$e(Xt),Bt);return Ca(Xt,Bt,Xi)}function Qu(Xt,Bt){let li=Xt.kind===2||Xt.kind===3?_e.createToken(131):void 0,Xi=Xt.kind===1||Xt.kind===3?ao(_e.createIdentifier(Xt.parameterName),16777216):_e.createThisTypeNode(),Co=Xt.type&&Oe(Xt.type,Bt);return _e.createTypePredicateNode(li,Xi,Co)}function ZA(Xt){let Bt=qd(Xt,169);if(Bt)return Bt;if(!wB(Xt))return qd(Xt,341)}function au(Xt,Bt,li){let Xi=ZA(Xt),Co=co(Xt),po=P_(Bt,Xi,Co,Xt),ko=!(Bt.flags&8192)&&li&&Xi&&tw(Xi)?Ot(uN(Xi),_e.cloneNode):void 0,Al=Xi&&Dv(Xi)||cI(Xt)&32768?_e.createToken(26):void 0,iu=Uf(Xt,Xi,Bt),gp=Xi&&wZe(Xi)||cI(Xt)&16384?_e.createToken(58):void 0,Cr=_e.createParameterDeclaration(ko,Al,iu,gp,po,void 0);return Bt.approximateLength+=pf(Xt).length+3,Cr}function Uf(Xt,Bt,li){return Bt&&Bt.name?Bt.name.kind===80?ao(_e.cloneNode(Bt.name),16777216):Bt.name.kind===166?ao(_e.cloneNode(Bt.name.right),16777216):Xi(Bt.name):pf(Xt);function Xi(Co){return po(Co);function po(ko){li.tracker.canTrackSymbol&&kg(ko)&&p$e(ko)&&g_(ko.expression,li.enclosingDeclaration,li);let Pc=ns(ko,po,void 0,void 0,po);return hl(Pc)&&(Pc=_e.updateBindingElement(Pc,Pc.dotDotDotToken,Pc.propertyName,Pc.name,void 0)),$d(Pc)||(Pc=_e.cloneNode(Pc)),ao(Pc,16777217)}}}function g_(Xt,Bt,li){if(!li.tracker.canTrackSymbol)return;let Xi=sb(Xt),Co=Pi(Xi,Xi.escapedText,1160127,void 0,!0);Co&&li.tracker.trackSymbol(Co,Bt,111551)}function VI(Xt,Bt,li,Xi){return Bt.tracker.trackSymbol(Xt,Bt.enclosingDeclaration,li),As(Xt,Bt,li,Xi)}function As(Xt,Bt,li,Xi){let Co;return!(Xt.flags&262144)&&(Bt.enclosingDeclaration||Bt.flags&64)&&!(Bt.flags&134217728)?(Co=w.checkDefined(ko(Xt,li,!0)),w.assert(Co&&Co.length>0)):Co=[Xt],Co;function ko(Pc,Al,iu){let vu=zl(Pc,Bt.enclosingDeclaration,Al,!!(Bt.flags&128)),gp;if(!vu||Xg(vu[0],Bt.enclosingDeclaration,vu.length===1?Al:El(Al))){let Mr=QP(vu?vu[0]:Pc,Bt.enclosingDeclaration,Al);if(O(Mr)){gp=Mr.map(_i=>lr(_i.declarations,nF)?rl(_i,Bt):void 0);let Wn=Mr.map((_i,ui)=>ui);Wn.sort(Cr);let Lr=Wn.map(_i=>Mr[_i]);for(let _i of Lr){let ui=ko(_i,El(Al),!1);if(ui){if(_i.exports&&_i.exports.get("export=")&&uw(_i.exports.get("export="),Pc)){vu=ui;break}vu=ui.concat(vu||[WV(_i,Pc)||Pc]);break}}}}if(vu)return vu;if(iu||!(Pc.flags&6144))return!iu&&!Xi&&X(Pc.declarations,nF)?void 0:[Pc];function Cr(Mr,Wn){let Lr=gp[Mr],_i=gp[Wn];if(Lr&&_i){let ui=Qp(_i);return Qp(Lr)===ui?Gke(Lr)-Gke(_i):ui?-1:1}return 0}}}function Fs(Xt,Bt){let li;return Jre(Xt).flags&524384&&(li=_e.createNodeArray(Ot(cL(Xt),Co=>Ng(Co,Bt)))),li}function Wc(Xt,Bt,li){var Xi;w.assert(Xt&&0<=Bt&&BtpL(vu,Al.links.mapper)),li)}else ko=Fs(Co,li)}return ko}function vo(Xt){return hs(Xt.objectType)?vo(Xt.objectType):Xt}function rl(Xt,Bt,li){let Xi=qd(Xt,307);if(!Xi){let iu=le(Xt.declarations,vu=>hre(vu,Xt));iu&&(Xi=qd(iu,307))}if(Xi&&Xi.moduleName!==void 0)return Xi.moduleName;if(!Xi&&LDt.test(Xt.escapedName))return Xt.escapedName.substring(1,Xt.escapedName.length-1);if(!Bt.enclosingFile||!Bt.tracker.moduleResolverHost)return LDt.test(Xt.escapedName)?Xt.escapedName.substring(1,Xt.escapedName.length-1):ls(M$(Xt)).fileName;let Co=Bt.enclosingFile,po=li||Co?.impliedNodeFormat,ko=rue(Co.path,po),Pc=al(Xt),Al=Pc.specifierCache&&Pc.specifierCache.get(ko);if(!Al){let iu=!!Ne.outFile,{moduleResolverHost:vu}=Bt.tracker,gp=iu?{...Ne,baseUrl:vu.getCommonSourceDirectory()}:Ne;Al=qs(tGr(Xt,gi,gp,Co,vu,{importModuleSpecifierPreference:iu?"non-relative":"project-relative",importModuleSpecifierEnding:iu?"minimal":po===99?"js":void 0},{overrideImportMode:li})),Pc.specifierCache??(Pc.specifierCache=new Map),Pc.specifierCache.set(ko,Al)}return Al}function md(Xt){let Bt=_e.createIdentifier(wc(Xt.escapedName));return Xt.parent?_e.createQualifiedName(md(Xt.parent),Bt):Bt}function ed(Xt,Bt,li,Xi){let Co=VI(Xt,Bt,li,!(Bt.flags&16384)),po=li===111551;if(lr(Co[0].declarations,nF)){let Al=Co.length>1?Pc(Co,Co.length-1,1):void 0,iu=Xi||Wc(Co,0,Bt),vu=ls(Np(Bt.enclosingDeclaration)),gp=T8(Co[0]),Cr,Mr;if((o0(Ne)===3||o0(Ne)===99)&&gp?.impliedNodeFormat===99&&gp.impliedNodeFormat!==vu?.impliedNodeFormat&&(Cr=rl(Co[0],Bt,99),Mr=_e.createImportAttributes(_e.createNodeArray([_e.createImportAttribute(_e.createStringLiteral("resolution-mode"),_e.createStringLiteral("import"))]))),Cr||(Cr=rl(Co[0],Bt)),!(Bt.flags&67108864)&&o0(Ne)!==1&&Cr.includes("/node_modules/")){let Lr=Cr;if(o0(Ne)===3||o0(Ne)===99){let _i=vu?.impliedNodeFormat===99?1:99;Cr=rl(Co[0],Bt,_i),Cr.includes("/node_modules/")?Cr=Lr:Mr=_e.createImportAttributes(_e.createNodeArray([_e.createImportAttribute(_e.createStringLiteral("resolution-mode"),_e.createStringLiteral(_i===99?"import":"require"))]))}Mr||(Bt.encounteredError=!0,Bt.tracker.reportLikelyUnsafeImportRequiredError&&Bt.tracker.reportLikelyUnsafeImportRequiredError(Lr))}let Wn=_e.createLiteralTypeNode(_e.createStringLiteral(Cr));if(Bt.approximateLength+=Cr.length+10,!Al||T_(Al)){if(Al){let Lr=sr(Al)?Al:Al.right;nT(Lr,void 0)}return _e.createImportTypeNode(Wn,Mr,Al,iu,po)}else{let Lr=vo(Al),_i=Lr.objectType.typeName;return _e.createIndexedAccessTypeNode(_e.createImportTypeNode(Wn,Mr,_i,iu,po),Lr.indexType)}}let ko=Pc(Co,Co.length-1,0);if(hs(ko))return ko;if(po)return _e.createTypeQueryNode(ko);{let Al=sr(ko)?ko:ko.right,iu=kZ(Al);return nT(Al,void 0),_e.createTypeReferenceNode(ko,iu)}function Pc(Al,iu,vu){let gp=iu===Al.length-1?Xi:Wc(Al,iu,Bt),Cr=Al[iu],Mr=Al[iu-1],Wn;if(iu===0)Bt.flags|=16777216,Wn=MM(Cr,Bt),Bt.approximateLength+=(Wn?Wn.length:0)+1,Bt.flags^=16777216;else if(Mr&&Y1(Mr)){let _i=Y1(Mr);UC(_i,(ui,yn)=>{if(uw(ui,Cr)&&!U0e(yn)&&yn!=="export=")return Wn=wc(yn),!0})}if(Wn===void 0){let _i=le(Cr.declarations,Sl);if(_i&&kg(_i)&&T_(_i.expression)){let ui=Pc(Al,iu-1,vu);return T_(ui)?_e.createIndexedAccessTypeNode(_e.createParenthesizedType(_e.createTypeQueryNode(ui)),_e.createTypeQueryNode(_i.expression)):ui}Wn=MM(Cr,Bt)}if(Bt.approximateLength+=Wn.length+1,!(Bt.flags&16)&&Mr&&JV(Mr)&&JV(Mr).get(Cr.escapedName)&&uw(JV(Mr).get(Cr.escapedName),Cr)){let _i=Pc(Al,iu-1,vu);return hs(_i)?_e.createIndexedAccessTypeNode(_i,_e.createLiteralTypeNode(_e.createStringLiteral(Wn))):_e.createIndexedAccessTypeNode(_e.createTypeReferenceNode(_i,gp),_e.createLiteralTypeNode(_e.createStringLiteral(Wn)))}let Lr=ao(_e.createIdentifier(Wn),16777216);if(gp&&nT(Lr,_e.createNodeArray(gp)),Lr.symbol=Cr,iu>vu){let _i=Pc(Al,iu-1,vu);return T_(_i)?_e.createQualifiedName(_i,Lr):w.fail("Impossible construct - an export of an indexed access cannot be reachable")}return Lr}}function W_(Xt,Bt,li){let Xi=Pi(Bt.enclosingDeclaration,Xt,788968,void 0,!1);return Xi&&Xi.flags&262144?Xi!==li.symbol:!1}function Eg(Xt,Bt){var li,Xi,Co,po;if(Bt.flags&4&&Bt.typeParameterNames){let Al=Bt.typeParameterNames.get(Fh(Xt));if(Al)return Al}let ko=y0(Xt.symbol,Bt,788968,!0);if(!(ko.kind&80))return _e.createIdentifier("(Missing type parameter)");let Pc=(Xi=(li=Xt.symbol)==null?void 0:li.declarations)==null?void 0:Xi[0];if(Pc&&$p(Pc)&&(ko=C(Bt,ko,Pc.name)),Bt.flags&4){let Al=ko.escapedText,iu=((Co=Bt.typeParameterNamesByTextNextNameCount)==null?void 0:Co.get(Al))||0,vu=Al;for(;(po=Bt.typeParameterNamesByText)!=null&&po.has(vu)||W_(vu,Bt,Xt);)iu++,vu=`${Al}_${iu}`;if(vu!==Al){let gp=kZ(ko);ko=_e.createIdentifier(vu),nT(ko,gp)}Bt.mustCreateTypeParametersNamesLookups&&(Bt.mustCreateTypeParametersNamesLookups=!1,Bt.typeParameterNames=new Map(Bt.typeParameterNames),Bt.typeParameterNamesByTextNextNameCount=new Map(Bt.typeParameterNamesByTextNextNameCount),Bt.typeParameterNamesByText=new Set(Bt.typeParameterNamesByText)),Bt.typeParameterNamesByTextNextNameCount.set(Al,iu),Bt.typeParameterNames.set(Fh(Xt),ko),Bt.typeParameterNamesByText.add(vu)}return ko}function y0(Xt,Bt,li,Xi){let Co=VI(Xt,Bt,li);return Xi&&Co.length!==1&&!Bt.encounteredError&&!(Bt.flags&65536)&&(Bt.encounteredError=!0),po(Co,Co.length-1);function po(ko,Pc){let Al=Wc(ko,Pc,Bt),iu=ko[Pc];Pc===0&&(Bt.flags|=16777216);let vu=MM(iu,Bt);Pc===0&&(Bt.flags^=16777216);let gp=ao(_e.createIdentifier(vu),16777216);return Al&&nT(gp,_e.createNodeArray(Al)),gp.symbol=iu,Pc>0?_e.createQualifiedName(po(ko,Pc-1),gp):gp}}function Kf(Xt,Bt,li){let Xi=VI(Xt,Bt,li);return Co(Xi,Xi.length-1);function Co(po,ko){let Pc=Wc(po,ko,Bt),Al=po[ko];ko===0&&(Bt.flags|=16777216);let iu=MM(Al,Bt);ko===0&&(Bt.flags^=16777216);let vu=iu.charCodeAt(0);if(iee(vu)&&lr(Al.declarations,nF))return _e.createStringLiteral(rl(Al,Bt));if(ko===0||yhe(iu,Me)){let gp=ao(_e.createIdentifier(iu),16777216);return Pc&&nT(gp,_e.createNodeArray(Pc)),gp.symbol=Al,ko>0?_e.createPropertyAccessExpression(Co(po,ko-1),gp):gp}else{vu===91&&(iu=iu.substring(1,iu.length-1),vu=iu.charCodeAt(0));let gp;if(iee(vu)&&!(Al.flags&8)?gp=_e.createStringLiteral(R2(iu).replace(/\\./g,Cr=>Cr.substring(1)),vu===39):""+ +iu===iu&&(gp=_e.createNumericLiteral(+iu)),!gp){let Cr=ao(_e.createIdentifier(iu),16777216);Pc&&nT(Cr,_e.createNodeArray(Pc)),Cr.symbol=Al,gp=Cr}return _e.createElementAccessExpression(Co(po,ko-1),gp)}}}function jf(Xt){let Bt=Sl(Xt);return Bt?kg(Bt)?!!(Dl(Bt.expression).flags&402653316):_A(Bt)?!!(Dl(Bt.argumentExpression).flags&402653316):Eu(Bt):!1}function nB(Xt){let Bt=Sl(Xt);return!!(Bt&&Eu(Bt)&&(Bt.singleQuote||!$d(Bt)&&uc(Nf(Bt,!1),"'")))}function jI(Xt,Bt){let li=!!O(Xt.declarations)&&he(Xt.declarations,jf),Xi=!!O(Xt.declarations)&&he(Xt.declarations,nB),Co=!!(Xt.flags&8192),po=PC(Xt,Bt,Xi,li,Co);if(po)return po;let ko=wc(Xt.escapedName);return yle(ko,sA(Ne),Xi,li,Co)}function PC(Xt,Bt,li,Xi,Co){let po=al(Xt).nameType;if(po){if(po.flags&384){let ko=""+po.value;return!Ke(ko,sA(Ne))&&(Xi||!bN(ko))?_e.createStringLiteral(ko,!!li):bN(ko)&&uc(ko,"-")?_e.createComputedPropertyName(_e.createPrefixUnaryExpression(41,_e.createNumericLiteral(-ko))):yle(ko,sA(Ne),li,Xi,Co)}if(po.flags&8192)return _e.createComputedPropertyName(Kf(po.symbol,Bt,111551))}}function CF(Xt){let Bt=Xt.mustCreateTypeParameterSymbolList,li=Xt.mustCreateTypeParametersNamesLookups;Xt.mustCreateTypeParameterSymbolList=!0,Xt.mustCreateTypeParametersNamesLookups=!0;let Xi=Xt.typeParameterNames,Co=Xt.typeParameterNamesByText,po=Xt.typeParameterNamesByTextNextNameCount,ko=Xt.typeParameterSymbolList;return()=>{Xt.typeParameterNames=Xi,Xt.typeParameterNamesByText=Co,Xt.typeParameterNamesByTextNextNameCount=po,Xt.typeParameterSymbolList=ko,Xt.mustCreateTypeParameterSymbolList=Bt,Xt.mustCreateTypeParametersNamesLookups=li}}function Kre(Xt,Bt){return Xt.declarations&&be(Xt.declarations,li=>!!ctt(li)&&(!Bt||!!Si(li,Xi=>Xi===Bt)))}function Gge(Xt,Bt){if(!(ia(Bt)&4)||!F(Xt))return!0;NZe(Xt);let li=Jo(Xt).resolvedSymbol,Xi=li&&kp(li);return!Xi||Xi!==Bt.target?!0:O(Xt.typeArguments)>=JN(Bt.target.typeParameters)}function Vye(Xt){for(;Jo(Xt).fakeScopeForSignatureDeclaration;)Xt=Xt.parent;return Xt}function P_(Xt,Bt,li,Xi){var Co,po;let ko=Bt&&(Uc(Bt)||LB(Bt))&&att(Bt),Pc=Xt.enclosingDeclaration,Al=Xt.flags;if(Bt&&Tle(Bt)&&!(Xt.flags&-2147483648)&&Nt.serializeTypeOfDeclaration(Bt,Xt),Xt.flags|=-2147483648,Pc&&(!QA(li)||Xt.flags&1)){let Cr=Bt&&ctt(Bt)?Bt:Kre(Xi);if(Cr&&!pd(Cr)&&!Qb(Cr)){let Mr=ctt(Cr),Wn=ko||!!(Xi.flags&4&&Xi.flags&16777216&&HS(Cr)&&((Co=Xi.links)!=null&&Co.mappedType)&&e4r(li)),Lr=!S(Mr)&&W(Xt,Mr,li,Cr,Wn);if(Lr)return Xt.flags=Al,Lr}}li.flags&8192&&li.symbol===Xi&&(!Xt.enclosingDeclaration||lr(Xi.declarations,Cr=>ls(Cr)===ls(Xt.enclosingDeclaration)))&&(Xt.flags|=1048576);let iu=Bt??Xi.valueDeclaration??((po=Xi.declarations)==null?void 0:po[0]),vu=iu&&K0s(iu)?A8r(iu):void 0,gp=E(Xt,vu,li,ko);return Xt.flags=Al,gp}function OLe(Xt,Bt,li){return li===Bt?!0:Xt&&(Uc(Xt)||i_(Xt)||Hl(Xt))&&Xt.questionToken?Kv(Bt,524288)===li:!1}function Ln(Xt,Bt){let li=Xt.flags&256,Xi=Xt.flags;li&&(Xt.flags&=-257);let Co,po=wd(Bt);return po&&!(li&&Sd(po))?(Bt.declaration&&!(Xt.flags&-2147483648)&&Nt.serializeReturnTypeForSignature(Bt.declaration,Xt),Xt.flags|=-2147483648,Co=Oi(Xt,Bt)):li||(Co=_e.createKeywordTypeNode(133)),Xt.flags=Xi,Co}function Oi(Xt,Bt){let li=JB(Bt),Xi=wd(Bt);if(Xt.enclosingDeclaration&&(!QA(Xi)||Xt.flags&1)&&Bt.declaration&&!$d(Bt.declaration)){let po=sys(Bt.declaration);if(po){let ko=W(Xt,po,Xi,Xt.enclosingDeclaration);if(ko)return ko}}if(li)return Qu(li,Xt);let Co=Bt.declaration&&A8r(Bt.declaration);return E(Xt,Co,Xi)}function ms(Xt,Bt){let li=!1,Xi=sb(Xt);if(io(Xt)&&(H3(Xi)||dN(Xi.parent)||c0(Xi.parent)&&U8(Xi.parent.left)&&H3(Xi.parent.right)))return li=!0,{introducesError:li,node:Xt};let Co=oL(Xt),po;if(vG(Xi))return po=Oo(n0(Xi,!1,!1)),mT(po,Xi,Co,!1).accessibility!==0&&(li=!0,Bt.tracker.reportInaccessibleThisError()),{introducesError:li,node:ko(Xt)};if(po=ZI(Xi,Co,!0,!0),Bt.enclosingDeclaration&&!(po&&po.flags&262144)){po=X1(po);let Pc=ZI(Xi,Co,!0,!0,Bt.enclosingDeclaration);if(Pc===en||Pc===void 0&&po!==void 0||Pc&&po&&!uw(X1(Pc),po))return Pc!==en&&Bt.tracker.reportInferenceFallback(Xt),li=!0,{introducesError:li,node:Xt,sym:po}}if(po)return po.flags&1&&po.valueDeclaration&&(TZ(po.valueDeclaration)||LB(po.valueDeclaration))?{introducesError:li,node:ko(Xt)}:(!(po.flags&262144)&&!tT(Xt)&&mT(po,Bt.enclosingDeclaration,Co,!1).accessibility!==0?(Bt.tracker.reportInferenceFallback(Xt),li=!0):Bt.tracker.trackSymbol(po,Bt.enclosingDeclaration,Co),{introducesError:li,node:ko(Xt)});return{introducesError:li,node:Xt};function ko(Pc){if(Pc===Xi){let iu=kp(po),vu=po.flags&262144?Eg(iu,Bt):_e.cloneNode(Pc);return vu.symbol=po,C(Bt,ao(vu,16777216),Pc)}let Al=ns(Pc,iu=>ko(iu),void 0);return Al!==Pc&&C(Bt,Al,Pc),Al}}function Os(Xt,Bt,li,Xi){let Co=li?111551:788968,po=ZI(Bt,Co,!0);if(!po)return;let ko=po.flags&2097152?$m(po):po;if(mT(po,Xt.enclosingDeclaration,Co,!1).accessibility===0)return ed(ko,Xt,Co,Xi)}function Qo(Xt,Bt){if(io(Bt)&&n_(Bt)){ZXr(Bt);let li=Jo(Bt).resolvedSymbol;return!li||!(!Bt.isTypeOf&&!(li.flags&788968)||!(O(Bt.typeArguments)>=JN(cL(li))))}if(aa(Bt))return Xt.mapper===void 0?!0:!!l(Xt,Bt,!0);if(F(Bt)){if(B2(Bt))return!1;let li=NZe(Bt),Xi=Jo(Bt).resolvedSymbol;if(!Xi)return!1;if(Xi.flags&262144){let Co=kp(Xi);if(Xt.mapper&&pL(Co,Xt.mapper)!==Co)return!1}if(tee(Bt))return Gge(Bt,li)&&!jYr(Bt)&&Xi.flags&788968}if(as(Bt)&&Bt.operator===158&&Bt.type.kind===155){let li=Xt.enclosingDeclaration&&Vye(Xt.enclosingDeclaration);return!!Si(Bt,Xi=>Xi===li)}return!0}function Ha(Xt,Bt){let li=l(Xt,Bt);return Oe(li,Xt)}function Fg(Xt,Bt){d&&d.throwIfCancellationRequested&&d.throwIfCancellationRequested();let li=!1,{finalizeBoundary:Xi,startRecoveryScope:Co}=Pc(),po=xr(Bt,ko,Ma);if(!Xi())return;return Xt.approximateLength+=Bt.end-Bt.pos,po;function ko(Lr){if(li)return Lr;let _i=Co(),ui=Vo(Lr)?Al(Lr):void 0,yn=Wn(Lr);return ui?.(),li?Ma(Lr)&&!S(Lr)?(_i(),Ha(Xt,Lr)):Lr:yn?C(Xt,yn,Lr):void 0}function Pc(){let Lr,_i,ui=Xt.tracker,yn=Xt.trackedSymbols;Xt.trackedSymbols=void 0;let hi=Xt.encounteredError;return Xt.tracker=new PDt(Xt,{...ui.inner,reportCyclicStructureError(){vs(()=>ui.reportCyclicStructureError())},reportInaccessibleThisError(){vs(()=>ui.reportInaccessibleThisError())},reportInaccessibleUniqueSymbolError(){vs(()=>ui.reportInaccessibleUniqueSymbolError())},reportLikelyUnsafeImportRequiredError(ea){vs(()=>ui.reportLikelyUnsafeImportRequiredError(ea))},reportNonSerializableProperty(ea){vs(()=>ui.reportNonSerializableProperty(ea))},trackSymbol(ea,Ls,Ba){return(Lr??(Lr=[])).push([ea,Ls,Ba]),!1},moduleResolverHost:Xt.tracker.moduleResolverHost},Xt.tracker.moduleResolverHost),{startRecoveryScope:pi,finalizeBoundary:Xs};function vs(ea){li=!0,(_i??(_i=[])).push(ea)}function pi(){let ea=Lr?.length??0,Ls=_i?.length??0;return()=>{li=!1,Lr&&(Lr.length=ea),_i&&(_i.length=Ls)}}function Xs(){return Xt.tracker=ui,Xt.trackedSymbols=yn,Xt.encounteredError=hi,_i?.forEach(ea=>ea()),li?!1:(Lr?.forEach(([ea,Ls,Ba])=>Xt.tracker.trackSymbol(ea,Ls,Ba)),!0)}}function Al(Lr){return Ds(Xt,Lr,Cs(Lr),Hi(Lr))}function iu(Lr){let _i=z8(Lr);switch(_i.kind){case 183:return Mr(_i);case 186:return Cr(_i);case 199:return vu(_i);case 198:let ui=_i;if(ui.operator===143)return gp(ui)}return xr(Lr,ko,Ma)}function vu(Lr){let _i=iu(Lr.objectType);if(_i!==void 0)return _e.updateIndexedAccessTypeNode(Lr,_i,xr(Lr.indexType,ko,Ma))}function gp(Lr){w.assertEqual(Lr.operator,143);let _i=iu(Lr.type);if(_i!==void 0)return _e.updateTypeOperatorNode(Lr,_i)}function Cr(Lr){let{introducesError:_i,node:ui}=ms(Lr.exprName,Xt);if(!_i)return _e.updateTypeQueryNode(Lr,ui,ws(Lr.typeArguments,ko,Ma));let yn=Os(Xt,Lr.exprName,!0);if(yn)return C(Xt,yn,Lr.exprName)}function Mr(Lr){if(Qo(Xt,Lr)){let{introducesError:_i,node:ui}=ms(Lr.typeName,Xt),yn=ws(Lr.typeArguments,ko,Ma);if(_i){let hi=Os(Xt,Lr.typeName,!1,yn);if(hi)return C(Xt,hi,Lr.typeName)}else{let hi=_e.updateTypeReferenceNode(Lr,ui,yn);return C(Xt,hi,Lr)}}}function Wn(Lr){if(sP(Lr))return xr(Lr.type,ko,Ma);if(eRt(Lr)||Lr.kind===319)return _e.createKeywordTypeNode(133);if(tRt(Lr))return _e.createKeywordTypeNode(159);if(gte(Lr))return _e.createUnionTypeNode([xr(Lr.type,ko,Ma),_e.createLiteralTypeNode(_e.createNull())]);if(LKe(Lr))return _e.createUnionTypeNode([xr(Lr.type,ko,Ma),_e.createKeywordTypeNode(157)]);if(Jxe(Lr))return xr(Lr.type,ko);if(Uxe(Lr))return _e.createArrayTypeNode(xr(Lr.type,ko,Ma));if(f4(Lr))return _e.createTypeLiteralNode(Ot(Lr.jsDocPropertyTags,pi=>{let Xs=xr(sr(pi.name)?pi.name:pi.name.right,ko,sr),ea=LI(l(Xt,Lr),Xs.escapedText),Ls=ea&&pi.typeExpression&&l(Xt,pi.typeExpression.type)!==ea?Oe(ea,Xt):void 0;return _e.createPropertySignature(void 0,Xs,pi.isBracketed||pi.typeExpression&&LKe(pi.typeExpression.type)?_e.createToken(58):void 0,Ls||pi.typeExpression&&xr(pi.typeExpression.type,ko,Ma)||_e.createKeywordTypeNode(133))}));if(F(Lr)&&sr(Lr.typeName)&&Lr.typeName.escapedText==="")return Ho(_e.createKeywordTypeNode(133),Lr);if((k_(Lr)||F(Lr))&&ree(Lr))return _e.createTypeLiteralNode([_e.createIndexSignature(void 0,[_e.createParameterDeclaration(void 0,void 0,"x",void 0,xr(Lr.typeArguments[0],ko,Ma))],xr(Lr.typeArguments[1],ko,Ma))]);if(Ate(Lr))if(MX(Lr)){let pi;return _e.createConstructorTypeNode(void 0,ws(Lr.typeParameters,ko,$p),tr(Lr.parameters,(Xs,ea)=>Xs.name&&sr(Xs.name)&&Xs.name.escapedText==="new"?(pi=Xs.type,void 0):_e.createParameterDeclaration(void 0,yn(Xs),C(Xt,_e.createIdentifier(hi(Xs,ea)),Xs),_e.cloneNode(Xs.questionToken),xr(Xs.type,ko,Ma),void 0)),xr(pi||Lr.type,ko,Ma)||_e.createKeywordTypeNode(133))}else return _e.createFunctionTypeNode(ws(Lr.typeParameters,ko,$p),Ot(Lr.parameters,(pi,Xs)=>_e.createParameterDeclaration(void 0,yn(pi),C(Xt,_e.createIdentifier(hi(pi,Xs)),pi),_e.cloneNode(pi.questionToken),xr(pi.type,ko,Ma),void 0)),xr(Lr.type,ko,Ma)||_e.createKeywordTypeNode(133));if(aa(Lr))return Qo(Xt,Lr)||(li=!0),Lr;if($p(Lr))return _e.updateTypeParameterDeclaration(Lr,ws(Lr.modifiers,ko,Ag),C(Xt,Eg(kp(Oo(Lr)),Xt),Lr),xr(Lr.constraint,ko,Ma),xr(Lr.default,ko,Ma));if(hs(Lr)){let pi=vu(Lr);return pi||(li=!0,Lr)}if(F(Lr)){let pi=Mr(Lr);return pi||(li=!0,Lr)}if(n_(Lr)){let pi=Jo(Lr).resolvedSymbol;return tee(Lr)&&pi&&(!Lr.isTypeOf&&!(pi.flags&788968)||!(O(Lr.typeArguments)>=JN(cL(pi))))?C(Xt,Oe(l(Xt,Lr),Xt),Lr):_e.updateImportTypeNode(Lr,_e.updateLiteralTypeNode(Lr.argument,vs(Lr,Lr.argument.literal)),xr(Lr.attributes,ko,A4),xr(Lr.qualifier,ko,T_),ws(Lr.typeArguments,ko,Ma),Lr.isTypeOf)}if(wf(Lr)&&Lr.name.kind===167&&!p$e(Lr.name)){if(!$R(Lr))return _i(Lr,ko);if(!(Xt.flags&1&&lp(Lr.name.expression)&&jN(Lr.name).flags&1))return}if(eu(Lr)&&!Lr.type||Hl(Lr)&&!Lr.type&&!Lr.initializer||i_(Lr)&&!Lr.type&&!Lr.initializer||Uc(Lr)&&!Lr.type&&!Lr.initializer){let pi=_i(Lr,ko);return pi===Lr&&(pi=C(Xt,_e.cloneNode(Lr),Lr)),pi.type=_e.createKeywordTypeNode(133),Uc(Lr)&&(pi.modifiers=void 0),pi}if(oe(Lr)){let pi=Cr(Lr);return pi||(li=!0,Lr)}if(kg(Lr)&&lp(Lr.expression)){let{node:pi,introducesError:Xs}=ms(Lr.expression,Xt);if(Xs){let ea=tE(tQt(Lr.expression)),Ls=Oe(ea,Xt),Ba;if(sd(Ls))Ba=Ls.literal;else{let pa=YKr(Lr.expression),ig=typeof pa.value=="string"?_e.createStringLiteral(pa.value,void 0):typeof pa.value=="number"?_e.createNumericLiteral(pa.value,0):void 0;if(!ig)return Nu(Ls)&&g_(Lr.expression,Xt.enclosingDeclaration,Xt),Lr;Ba=ig}return Ba.kind===11&&Ke(Ba.text,sA(Ne))?_e.createIdentifier(Ba.text):Ba.kind===9&&!Ba.text.startsWith("-")?Ba:_e.updateComputedPropertyName(Lr,Ba)}else return _e.updateComputedPropertyName(Lr,pi)}if(S(Lr)){let pi;if(sr(Lr.parameterName)){let{node:Xs,introducesError:ea}=ms(Lr.parameterName,Xt);li=li||ea,pi=Xs}else pi=_e.cloneNode(Lr.parameterName);return _e.updateTypePredicateNode(Lr,_e.cloneNode(Lr.assertsModifier),pi,xr(Lr.type,ko,Ma))}if(Ct(Lr)||Se(Lr)||wl(Lr)){let pi=_i(Lr,ko),Xs=C(Xt,pi===Lr?_e.cloneNode(Lr):pi,Lr),ea=wg(Xs);return ao(Xs,ea|(Xt.flags&1024&&Se(Lr)?0:1)),Xs}if(Eu(Lr)&&Xt.flags&268435456&&!Lr.singleQuote){let pi=_e.cloneNode(Lr);return pi.singleQuote=!0,pi}if(Ei(Lr)){let pi=xr(Lr.checkType,ko,Ma),Xs=Al(Lr),ea=xr(Lr.extendsType,ko,Ma),Ls=xr(Lr.trueType,ko,Ma);Xs();let Ba=xr(Lr.falseType,ko,Ma);return _e.updateConditionalTypeNode(Lr,pi,ea,Ls,Ba)}if(as(Lr)){if(Lr.operator===158&&Lr.type.kind===155){if(!Qo(Xt,Lr))return li=!0,Lr}else if(Lr.operator===143){let pi=gp(Lr);return pi||(li=!0,Lr)}}return _i(Lr,ko);function _i(pi,Xs){let ea=!Xt.enclosingFile||Xt.enclosingFile!==ls(pi);return ns(pi,Xs,void 0,ea?ui:void 0)}function ui(pi,Xs,ea,Ls,Ba){let pa=ws(pi,Xs,ea,Ls,Ba);return pa&&(pa.pos!==-1||pa.end!==-1)&&(pa===pi&&(pa=_e.createNodeArray(pi.slice(),pi.hasTrailingComma)),MS(pa,-1,-1)),pa}function yn(pi){return pi.dotDotDotToken||(pi.type&&Uxe(pi.type)?_e.createToken(26):void 0)}function hi(pi,Xs){return pi.name&&sr(pi.name)&&pi.name.escapedText==="this"?"this":yn(pi)?"args":`arg${Xs}`}function vs(pi,Xs){if(Xt.bundled||Xt.enclosingFile!==ls(Xs)){let ea=Xs.text,Ls=Jo(Lr).resolvedSymbol,Ba=pi.isTypeOf?111551:788968,pa=Ls&&mT(Ls,Xt.enclosingDeclaration,Ba,!1).accessibility===0&&VI(Ls,Xt,Ba,!0)[0];if(pa&&L3(pa))ea=rl(pa,Xt);else{let ig=aQt(pi);ig&&(ea=rl(ig.symbol,Xt))}if(ea.includes("/node_modules/")&&(Xt.encounteredError=!0,Xt.tracker.reportLikelyUnsafeImportRequiredError&&Xt.tracker.reportLikelyUnsafeImportRequiredError(ea)),ea!==Xs.text)return Ho(_e.createStringLiteral(ea),Xs)}return xr(Xs,ko,Eu)}}}function Jg(Xt,Bt){var li;let Xi=N8r(_e.createPropertyDeclaration,174,!0),Co=N8r((Rn,la,sc,Ka)=>_e.createPropertySignature(Rn,la,sc,Ka),173,!1),po=Bt.enclosingDeclaration,ko=[],Pc=new Set,Al=[],iu=Bt;Bt={...iu,usedSymbolNames:new Set(iu.usedSymbolNames),remappedSymbolNames:new Map,remappedSymbolReferences:new Map((li=iu.remappedSymbolReferences)==null?void 0:li.entries()),tracker:void 0};let vu={...iu.tracker.inner,trackSymbol:(Rn,la,sc)=>{var Ka,Ea;if((Ka=Bt.remappedSymbolNames)!=null&&Ka.has(Gg(Rn)))return!1;if(mT(Rn,la,sc,!1).accessibility===0){let dg=As(Rn,Bt,sc);if(!(Rn.flags&4)){let Su=dg[0],Jp=ls(iu.enclosingDeclaration);lr(Su.declarations,jA=>ls(jA)===Jp)&&Ls(Su)}}else if((Ea=iu.tracker.inner)!=null&&Ea.trackSymbol)return iu.tracker.inner.trackSymbol(Rn,la,sc);return!1}};Bt.tracker=new PDt(Bt,vu,iu.tracker.moduleResolverHost),UC(Xt,(Rn,la)=>{let sc=wc(la);SD(Rn,sc)});let gp=!Bt.bundled,Cr=Xt.get("export=");return Cr&&Xt.size>1&&Cr.flags&2098688&&(Xt=xu(),Xt.set("export=",Cr)),pi(Xt),yn(ko);function Mr(Rn){return!!Rn&&Rn.kind===80}function Wn(Rn){return Dp(Rn)?Gt(Ot(Rn.declarationList.declarations,Sl),Mr):Gt([Sl(Rn)],Mr)}function Lr(Rn){let la=be(Rn,rf),sc=ke(Rn,mC),Ka=sc!==-1?Rn[sc]:void 0;if(Ka&&la&&la.isExportEquals&&sr(la.expression)&&sr(Ka.name)&&oo(Ka.name)===oo(la.expression)&&Ka.body&&wN(Ka.body)){let Ea=Gt(Rn,Su=>!!(R_(Su)&32)),Fd=Ka.name,dg=Ka.body;if(O(Ea)&&(Ka=_e.updateModuleDeclaration(Ka,Ka.modifiers,Ka.name,dg=_e.updateModuleBlock(dg,_e.createNodeArray([...Ka.body.statements,_e.createExportDeclaration(void 0,!1,_e.createNamedExports(Ot(Fr(Ea,Su=>Wn(Su)),Su=>_e.createExportSpecifier(!1,void 0,Su))),void 0)]))),Rn=[...Rn.slice(0,sc),Ka,...Rn.slice(sc+1)]),!be(Rn,Su=>Su!==Ka&&Sv(Su,Fd))){ko=[];let Su=!lr(dg.statements,Jp=>ya(Jp,32)||rf(Jp)||hC(Jp));X(dg.statements,Jp=>{pa(Jp,Su?32:0)}),Rn=[...Gt(Rn,Jp=>Jp!==Ka&&Jp!==la),...ko]}}return Rn}function _i(Rn){let la=Gt(Rn,Ka=>hC(Ka)&&!Ka.moduleSpecifier&&!!Ka.exportClause&&ZB(Ka.exportClause));O(la)>1&&(Rn=[...Gt(Rn,Ea=>!hC(Ea)||!!Ea.moduleSpecifier||!Ea.exportClause),_e.createExportDeclaration(void 0,!1,_e.createNamedExports(Fr(la,Ea=>ps(Ea.exportClause,ZB).elements)),void 0)]);let sc=Gt(Rn,Ka=>hC(Ka)&&!!Ka.moduleSpecifier&&!!Ka.exportClause&&ZB(Ka.exportClause));if(O(sc)>1){let Ka=Xl(sc,Ea=>Eu(Ea.moduleSpecifier)?">"+Ea.moduleSpecifier.text:">");if(Ka.length!==sc.length)for(let Ea of Ka)Ea.length>1&&(Rn=[...Gt(Rn,Fd=>!Ea.includes(Fd)),_e.createExportDeclaration(void 0,!1,_e.createNamedExports(Fr(Ea,Fd=>ps(Fd.exportClause,ZB).elements)),Ea[0].moduleSpecifier)])}return Rn}function ui(Rn){let la=ke(Rn,sc=>hC(sc)&&!sc.moduleSpecifier&&!sc.attributes&&!!sc.exportClause&&ZB(sc.exportClause));if(la>=0){let sc=Rn[la],Ka=tr(sc.exportClause.elements,Ea=>{if(!Ea.propertyName){let Fd=Yu(Rn),dg=Gt(Fd,Su=>Sv(Rn[Su],Ea.name));if(O(dg)&&he(dg,Su=>Uee(Rn[Su]))){for(let Su of dg)Rn[Su]=hi(Rn[Su]);return}}return Ea});O(Ka)?Rn[la]=_e.updateExportDeclaration(sc,sc.modifiers,sc.isTypeOnly,_e.updateNamedExports(sc.exportClause,Ka),sc.moduleSpecifier,sc.attributes):Rm(Rn,la)}return Rn}function yn(Rn){return Rn=Lr(Rn),Rn=_i(Rn),Rn=ui(Rn),po&&(Fc(po)&&na(po)||mC(po))&&(!lr(Rn,G3)||!Xae(Rn)&&lr(Rn,y8))&&Rn.push(Qhe(_e)),Rn}function hi(Rn){let la=(R_(Rn)|32)&-129;return _e.replaceModifiers(Rn,la)}function vs(Rn){let la=R_(Rn)&-33;return _e.replaceModifiers(Rn,la)}function pi(Rn,la,sc){la||Al.push(new Map),Rn.forEach(Ka=>{Xs(Ka,!1,!!sc)}),la||(Al[Al.length-1].forEach(Ka=>{Xs(Ka,!0,!!sc)}),Al.pop())}function Xs(Rn,la,sc){Cd(co(Rn));let Ka=FA(Rn);if(Pc.has(Gg(Ka)))return;if(Pc.add(Gg(Ka)),!la||O(Rn.declarations)&&lr(Rn.declarations,Fd=>!!Si(Fd,dg=>dg===po))){let Fd=CF(Bt);ea(Rn,la,sc),Fd()}}function ea(Rn,la,sc,Ka=Rn.escapedName){var Ea,Fd,dg,Su,Jp,jA;let yA=wc(Ka),A_=Ka==="default";if(la&&!(Bt.flags&131072)&&L5(yA)&&!A_){Bt.encounteredError=!0;return}let d_=A_&&!!(Rn.flags&-113||Rn.flags&16&&O(Cd(co(Rn))))&&!(Rn.flags&2097152),ny=!d_&&!la&&L5(yA)&&!A_;(d_||ny)&&(la=!0);let oC=(la?0:32)|(A_&&!d_?2048:0),p_=Rn.flags&1536&&Rn.flags&7&&Ka!=="export=",Ib=p_&&Pye(co(Rn),Rn);if((Rn.flags&8208||Ib)&&aO(co(Rn),Rn,SD(Rn,yA),oC),Rn.flags&524288&&ig(Rn,yA,oC),Rn.flags&98311&&Ka!=="export="&&!(Rn.flags&4194304)&&!(Rn.flags&32)&&!(Rn.flags&8192)&&!Ib)if(sc)Fge(Rn)&&(ny=!1,d_=!1);else{let EC=co(Rn),Cb=SD(Rn,yA);if(EC.symbol&&EC.symbol!==Rn&&EC.symbol.flags&16&&lr(EC.symbol.declarations,RG)&&((Ea=EC.symbol.members)!=null&&Ea.size||(Fd=EC.symbol.exports)!=null&&Fd.size))Bt.remappedSymbolReferences||(Bt.remappedSymbolReferences=new Map),Bt.remappedSymbolReferences.set(Gg(EC.symbol),Rn),ea(EC.symbol,la,sc,Ka),Bt.remappedSymbolReferences.delete(Gg(EC.symbol));else if(!(Rn.flags&16)&&Pye(EC,Rn))aO(EC,Rn,Cb,oC);else{let $7=Rn.flags&2?J7(Rn)?2:1:(dg=Rn.parent)!=null&&dg.valueDeclaration&&Fc((Su=Rn.parent)==null?void 0:Su.valueDeclaration)?2:void 0,rR=d_||!(Rn.flags&4)?Cb:QLe(Cb,Rn),cW=Rn.declarations&&be(Rn.declarations,Oye=>js(Oye));cW&&bl(cW.parent)&&cW.parent.declarations.length===1&&(cW=cW.parent.parent);let lW=(Jp=Rn.declarations)==null?void 0:Jp.find(fo);if(lW&&ro(lW.parent)&&sr(lW.parent.right)&&((jA=EC.symbol)!=null&&jA.valueDeclaration)&&Fc(EC.symbol.valueDeclaration)){let Oye=Cb===lW.parent.right.escapedText?void 0:lW.parent.right;pa(_e.createExportDeclaration(void 0,!1,_e.createNamedExports([_e.createExportSpecifier(!1,Oye,Cb)])),0),Bt.tracker.trackSymbol(EC.symbol,Bt.enclosingDeclaration,111551)}else{let Oye=C(Bt,_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(rR,void 0,P_(Bt,void 0,EC,Rn))],$7)),cW);pa(Oye,rR!==Cb?oC&-33:oC),rR!==Cb&&!la&&(pa(_e.createExportDeclaration(void 0,!1,_e.createNamedExports([_e.createExportSpecifier(!1,rR,Cb)])),0),ny=!1,d_=!1)}}}if(Rn.flags&384&&oW(Rn,yA,oC),Rn.flags&32&&(Rn.flags&4&&Rn.valueDeclaration&&ro(Rn.valueDeclaration.parent)&&rp(Rn.valueDeclaration.parent.right)?Wye(Rn,SD(Rn,yA),oC):aW(Rn,SD(Rn,yA),oC)),(Rn.flags&1536&&(!p_||Ty(Rn))||Ib)&&jE(Rn,yA,oC),Rn.flags&64&&!(Rn.flags&32)&&Bg(Rn,yA,oC),Rn.flags&2097152&&Wye(Rn,SD(Rn,yA),oC),Rn.flags&4&&Rn.escapedName==="export="&&Fge(Rn),Rn.flags&8388608&&Rn.declarations)for(let EC of Rn.declarations){let Cb=q0(EC,EC.moduleSpecifier);Cb&&pa(_e.createExportDeclaration(void 0,EC.isTypeOnly,void 0,_e.createStringLiteral(rl(Cb,Bt))),0)}d_?pa(_e.createExportAssignment(void 0,!1,_e.createIdentifier(SD(Rn,yA))),0):ny&&pa(_e.createExportDeclaration(void 0,!1,_e.createNamedExports([_e.createExportSpecifier(!1,SD(Rn,yA),yA)])),0)}function Ls(Rn){if(lr(Rn.declarations,TZ))return;w.assertIsDefined(Al[Al.length-1]),QLe(wc(Rn.escapedName),Rn);let la=!!(Rn.flags&2097152)&&!lr(Rn.declarations,sc=>!!Si(sc,hC)||sD(sc)||mm(sc)&&!ZG(sc.moduleReference));Al[la?0:Al.length-1].set(Gg(Rn),Rn)}function Ba(Rn){return Fc(Rn)&&(na(Rn)||fa(Rn))||Yf(Rn)&&!S2(Rn)}function pa(Rn,la){if(tw(Rn)){let sc=0,Ka=Bt.enclosingDeclaration&&(T2(Bt.enclosingDeclaration)?ls(Bt.enclosingDeclaration):Bt.enclosingDeclaration);la&32&&Ka&&(Ba(Ka)||mC(Ka))&&Uee(Rn)&&(sc|=32),gp&&!(sc&32)&&(!Ka||!(Ka.flags&33554432))&&(iP(Rn)||Dp(Rn)||hp(Rn)||Ec(Rn)||mC(Rn))&&(sc|=128),la&2048&&(Ec(Rn)||XI(Rn)||hp(Rn))&&(sc|=2048),sc&&(Rn=_e.replaceModifiers(Rn,sc|R_(Rn)))}ko.push(Rn)}function ig(Rn,la,sc){var Ka;let Ea=oF(Rn),Fd=al(Rn).typeParameters,dg=Ot(Fd,d_=>Ng(d_,Bt)),Su=(Ka=Rn.declarations)==null?void 0:Ka.find(T2),Jp=pX(Su?Su.comment||Su.parent.comment:void 0),jA=Bt.flags;Bt.flags|=8388608;let yA=Bt.enclosingDeclaration;Bt.enclosingDeclaration=Su;let A_=Su&&Su.typeExpression&&sP(Su.typeExpression)&&M(Bt,Su.typeExpression.type,Ea,void 0)||Oe(Ea,Bt);pa(KS(_e.createTypeAliasDeclaration(void 0,SD(Rn,la),dg,A_),Jp?[{kind:3,text:`* + * `+Jp.replace(/\n/g,` * `)+` - `,pos:-1,end:-1,hasTrailingNewLine:!0}]:[]),sc),Bt.flags=KA,Bt.enclosingDeclaration=_A}function Eg(Rn,ua,sc){let ja=_C(Rn),Ba=aL(Rn),Gd=Ot(Ba,ry=>Tg(ry,Bt)),Ag=wa(ja),vu=O(Ag)?Pg(Ag):void 0,Xp=Fr(Id(ja),ry=>qys(ry,vu)),KA=uMt(0,ja,vu,179),_A=uMt(1,ja,vu,180),g_=B8r(ja,vu),A_=O(Ag)?[_e.createHeritageClause(96,tr(Ag,ry=>gMt(ry,111551)))]:void 0;fa(_e.createInterfaceDeclaration(void 0,ED(Rn,ua),Gd,A_,[...g_,..._A,...KA,...Xp]),sc)}function Hp(Rn){let ua=on(Y1(Rn).values()),sc=GA(Rn);if(sc!==Rn){let ja=new Set(ua);for(let Ba of Y1(sc).values())Kb(JI(Ba))&111551||ja.add(Ba);ua=on(ja)}return Gt(ua,ja=>rE(ja)&&Ke(ja.escapedName,99))}function wy(Rn){return he(Hp(Rn),ua=>!(Kb(JI(ua))&111551))}function UE(Rn,ua,sc){let ja=Hp(Rn),Ba=No(ja,vu=>vu.parent&&vu.parent===Rn?"real":"merged"),Gd=Ba.get("real")||v,Ag=Ba.get("merged")||v;if(O(Gd)){let vu=ED(Rn,ua);eR(Gd,vu,sc,!!(Rn.flags&67108880))}if(O(Ag)){let vu=ls(Bt.enclosingDeclaration),Xp=ED(Rn,ua),KA=_e.createModuleBlock([_e.createExportDeclaration(void 0,!1,_e.createNamedExports(tr(Gt(Ag,_A=>_A.escapedName!=="export="),_A=>{var g_,A_;let ry=Sc(_A.escapedName),sC=ED(_A,ry),d_=_A.declarations&&YE(_A);if(vu&&(d_?vu!==ls(d_):!lr(_A.declarations,Ib=>ls(Ib)===vu))){(A_=(g_=Bt.tracker)==null?void 0:g_.reportNonlocalAugmentation)==null||A_.call(g_,vu,Rn,_A);return}let fb=d_&&UG(d_,!0);Vs(fb||_A);let bC=fb?ED(fb,Sc(fb.escapedName)):sC;return _e.createExportSpecifier(!1,ry===bC?void 0:bC,ry)})))]);fa(_e.createModuleDeclaration(void 0,_e.createIdentifier(Xp),KA,32),0)}}function sW(Rn,ua,sc){fa(_e.createEnumDeclaration(_e.createModifiersFromModifierFlags(EOt(Rn)?4096:0),ED(Rn,ua),Ot(Gt(Id(lo(Rn)),ja=>!!(ja.flags&8)),ja=>{let Ba=ja.declarations&&ja.declarations[0]&&_V(ja.declarations[0])?tMt(ja.declarations[0]):void 0;return _e.createEnumMember(Sc(ja.escapedName),Ba===void 0?void 0:typeof Ba=="string"?_e.createStringLiteral(Ba):_e.createNumericLiteral(Ba))})),sc)}function iO(Rn,ua,sc,ja){let Ba=Pu(Rn,0);for(let Gd of Ba){let Ag=ks(Gd,262,Bt,{name:_e.createIdentifier(sc)});fa(C(Bt,Ag,oH(Gd)),ja)}if(!(ua.flags&1536&&ua.exports&&ua.exports.size)){let Gd=Gt(Id(Rn),rE);eR(Gd,sc,ja,!0)}}function oH(Rn){if(Rn.declaration&&Rn.declaration.parent){if(no(Rn.declaration.parent)&&CI(Rn.declaration.parent)===5)return Rn.declaration.parent;if(zs(Rn.declaration.parent)&&Rn.declaration.parent.parent)return Rn.declaration.parent.parent}return Rn.declaration}function eR(Rn,ua,sc,ja){if(O(Rn)){let Gd=No(Rn,sC=>!O(sC.declarations)||lr(sC.declarations,d_=>ls(d_)===ls(Bt.enclosingDeclaration))?"local":"remote").get("local")||v,Ag=sP.createModuleDeclaration(void 0,_e.createIdentifier(ua),_e.createModuleBlock([]),32);kA(Ag,fo),Ag.locals=Du(Rn),Ag.symbol=Rn[0].parent;let vu=Go;Go=[];let Xp=up;up=!1;let KA={...Bt,enclosingDeclaration:Ag},_A=Bt;Bt=KA,pi(Du(Gd),ja,!0),Bt=_A,up=Xp;let g_=Go;Go=vu;let A_=Ot(g_,sC=>tf(sC)&&!sC.isExportEquals&&sr(sC.expression)?_e.createExportDeclaration(void 0,!1,_e.createNamedExports([_e.createExportSpecifier(!1,sC.expression,_e.createIdentifier("default"))])):sC),ry=he(A_,sC=>ba(sC,32))?Ot(A_,vs):A_;Ag=_e.updateModuleDeclaration(Ag,Ag.modifiers,Ag.name,_e.createModuleBlock(ry)),fa(Ag,sc)}}function rE(Rn){return!!(Rn.flags&2887656)||!(Rn.flags&4194304||Rn.escapedName==="prototype"||Rn.valueDeclaration&&$u(Rn.valueDeclaration)&&Sa(Rn.valueDeclaration.parent))}function Ure(Rn){let ua=tr(Rn,sc=>{let ja=Bt.enclosingDeclaration;Bt.enclosingDeclaration=sc;let Ba=sc.expression;if(cp(Ba)){if(sr(Ba)&&ao(Ba)==="")return Gd(void 0);let Ag;if({introducesError:Ag,node:Ba}=ms(Ba,Bt),Ag)return Gd(void 0)}return Gd(_e.createExpressionWithTypeArguments(Ba,Ot(sc.typeArguments,Ag=>Q(Bt,Ag,l(Bt,Ag))||Oe(l(Bt,Ag),Bt))));function Gd(Ag){return Bt.enclosingDeclaration=ja,Ag}});if(ua.length===Rn.length)return ua}function oW(Rn,ua,sc){var ja,Ba;let Gd=(ja=Rn.declarations)==null?void 0:ja.find(Sa),Ag=Bt.enclosingDeclaration;Bt.enclosingDeclaration=Gd||Ag;let vu=aL(Rn),Xp=Ot(vu,rR=>Tg(rR,Bt)),KA=JE(_C(Rn)),_A=wa(KA),g_=Gd&&MX(Gd),A_=g_&&Ure(g_)||tr(la(KA),ebs),ry=lo(Rn),sC=!!((Ba=ry.symbol)!=null&&Ba.valueDeclaration)&&Sa(ry.symbol.valueDeclaration),d_=sC?is(ry):Qt,fb=[...O(_A)?[_e.createHeritageClause(96,Ot(_A,rR=>$ys(rR,d_,ua)))]:[],...O(A_)?[_e.createHeritageClause(119,A_)]:[]],bC=G_s(KA,_A,Id(KA)),Ib=Gt(bC,rR=>{let wge=rR.valueDeclaration;return!!wge&&!(Sf(wge)&&kc(wge.name))}),tR=lr(bC,rR=>{let wge=rR.valueDeclaration;return!!wge&&Sf(wge)&&kc(wge.name)})?[_e.createPropertyDeclaration(void 0,_e.createPrivateIdentifier("#private"),void 0,void 0,void 0)]:v,aW=Fr(Ib,rR=>Xi(rR,!1,_A[0])),cW=Fr(Gt(Id(ry),rR=>!(rR.flags&4194304)&&rR.escapedName!=="prototype"&&!rE(rR)),rR=>Xi(rR,!0,d_)),tbs=!sC&&!!Rn.valueDeclaration&&so(Rn.valueDeclaration)&&!lr(Pu(ry,1))?[_e.createConstructorDeclaration(_e.createModifiersFromModifierFlags(2),[],void 0)]:uMt(1,ry,d_,176),rbs=B8r(KA,_A[0]);Bt.enclosingDeclaration=Ag,fa(C(Bt,_e.createClassDeclaration(void 0,ua,Xp,fb,[...rbs,...cW,...tbs,...aW,...tR]),Rn.declarations&&Gt(Rn.declarations,rR=>bc(rR)||tp(rR))[0]),sc)}function aH(Rn){return le(Rn,ua=>{if(_y(ua)||c0(ua))return ao(ua.propertyName||ua.name);if(no(ua)||tf(ua)){let sc=tf(ua)?ua.expression:ua.right;if(Io(sc))return ao(sc.name)}if(uo(ua)){let sc=vl(ua);if(sc&&sr(sc))return ao(sc)}})}function Lye(Rn,ua,sc){var ja,Ba,Gd,Ag,vu,Xp;let KA=YE(Rn);if(!KA)return w.fail();let _A=GA(UG(KA,!0));if(!_A)return;let g_=V3(_A)&&aH(Rn.declarations)||Sc(_A.escapedName);g_==="export="&&st&&(g_="default");let A_=ED(_A,g_);switch(Vs(_A),KA.kind){case 208:if(((Ba=(ja=KA.parent)==null?void 0:ja.parent)==null?void 0:Ba.kind)===260){let d_=tl(_A.parent||_A,Bt),{propertyName:fb}=KA;fa(_e.createImportDeclaration(void 0,_e.createImportClause(!1,void 0,_e.createNamedImports([_e.createImportSpecifier(!1,fb&&sr(fb)?_e.createIdentifier(ao(fb)):void 0,_e.createIdentifier(ua))])),_e.createStringLiteral(d_),void 0),0);break}w.failBadSyntaxKind(((Gd=KA.parent)==null?void 0:Gd.parent)||KA,"Unhandled binding element grandparent kind in declaration serialization");break;case 304:((vu=(Ag=KA.parent)==null?void 0:Ag.parent)==null?void 0:vu.kind)===226&&dJ(Sc(Rn.escapedName),A_);break;case 260:if(Io(KA.initializer)){let d_=KA.initializer,fb=_e.createUniqueName(ua),bC=tl(_A.parent||_A,Bt);fa(_e.createImportEqualsDeclaration(void 0,!1,fb,_e.createExternalModuleReference(_e.createStringLiteral(bC))),0),fa(_e.createImportEqualsDeclaration(void 0,!1,_e.createIdentifier(ua),_e.createQualifiedName(fb,d_.name)),sc);break}case 271:if(_A.escapedName==="export="&&lr(_A.declarations,d_=>Gc(d_)&&Ia(d_))){Sge(Rn);break}let ry=!(_A.flags&512)&&!zs(KA);fa(_e.createImportEqualsDeclaration(void 0,!1,_e.createIdentifier(ua),ry?_0(_A,Bt,-1,!1):_e.createExternalModuleReference(_e.createStringLiteral(tl(_A,Bt)))),ry?sc:0);break;case 270:fa(_e.createNamespaceExportDeclaration(ao(KA.name)),0);break;case 273:{let d_=tl(_A.parent||_A,Bt),fb=Bt.bundled?_e.createStringLiteral(d_):KA.parent.moduleSpecifier,bC=mI(KA.parent)?KA.parent.attributes:void 0,Ib=RN(KA.parent);fa(_e.createImportDeclaration(void 0,_e.createImportClause(Ib,_e.createIdentifier(ua),void 0),fb,bC),0);break}case 274:{let d_=tl(_A.parent||_A,Bt),fb=Bt.bundled?_e.createStringLiteral(d_):KA.parent.parent.moduleSpecifier,bC=RN(KA.parent.parent);fa(_e.createImportDeclaration(void 0,_e.createImportClause(bC,void 0,_e.createNamespaceImport(_e.createIdentifier(ua))),fb,KA.parent.attributes),0);break}case 280:fa(_e.createExportDeclaration(void 0,!1,_e.createNamespaceExport(_e.createIdentifier(ua)),_e.createStringLiteral(tl(_A,Bt))),0);break;case 276:{let d_=tl(_A.parent||_A,Bt),fb=Bt.bundled?_e.createStringLiteral(d_):KA.parent.parent.parent.moduleSpecifier,bC=RN(KA.parent.parent.parent);fa(_e.createImportDeclaration(void 0,_e.createImportClause(bC,void 0,_e.createNamedImports([_e.createImportSpecifier(!1,ua!==g_?_e.createIdentifier(g_):void 0,_e.createIdentifier(ua))])),fb,KA.parent.parent.parent.attributes),0);break}case 281:let sC=KA.parent.parent.moduleSpecifier;sC&&((Xp=KA.propertyName)==null?void 0:Xp.escapedText)==="default"&&(g_="default"),dJ(Sc(Rn.escapedName),sC?g_:A_,sC&&XA(sC)?_e.createStringLiteral(sC.text):void 0);break;case 277:Sge(Rn);break;case 226:case 211:case 212:Rn.escapedName==="default"||Rn.escapedName==="export="?Sge(Rn):dJ(ua,A_);break;default:return w.failBadSyntaxKind(KA,"Unhandled alias declaration kind in symbol serializer!")}}function dJ(Rn,ua,sc){fa(_e.createExportDeclaration(void 0,!1,_e.createNamedExports([_e.createExportSpecifier(!1,Rn!==ua?ua:void 0,Rn)]),sc),0)}function Sge(Rn){var ua;if(Rn.flags&4194304)return!1;let sc=Sc(Rn.escapedName),ja=sc==="export=",Gd=ja||sc==="default",Ag=Rn.declarations&&YE(Rn),vu=Ag&&UG(Ag,!0);if(vu&&O(vu.declarations)&&lr(vu.declarations,Xp=>ls(Xp)===ls(fo))){let Xp=Ag&&(tf(Ag)||no(Ag)?mme(Ag):qRe(Ag)),KA=Xp&&cp(Xp)?K_s(Xp):void 0,_A=KA&&FI(KA,-1,!0,!0,fo);(_A||vu)&&Vs(_A||vu);let g_=Bt.tracker.disableTrackSymbol;if(Bt.tracker.disableTrackSymbol=!0,Gd)Go.push(_e.createExportAssignment(void 0,ja,Uf(vu,Bt,-1)));else if(KA===Xp&&KA)dJ(sc,ao(KA));else if(Xp&&tp(Xp))dJ(sc,ED(vu,df(vu)));else{let A_=PLe(sc,Rn);fa(_e.createImportEqualsDeclaration(void 0,!1,_e.createIdentifier(A_),_0(vu,Bt,-1,!1)),0),dJ(sc,A_)}return Bt.tracker.disableTrackSymbol=g_,!0}else{let Xp=PLe(sc,Rn),KA=$b(lo(GA(Rn)));if(Vye(KA,Rn))iO(KA,Rn,Xp,Gd?0:32);else{let _A=((ua=Bt.enclosingDeclaration)==null?void 0:ua.kind)===267&&(!(Rn.flags&98304)||Rn.flags&65536)?1:2,g_=_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(Xp,void 0,W_(Bt,void 0,KA,Rn))],_A));fa(g_,vu&&vu.flags&4&&vu.escapedName==="export="?128:sc===Xp?32:0)}return Gd?(Go.push(_e.createExportAssignment(void 0,ja,_e.createIdentifier(Xp))),!0):sc!==Xp?(dJ(sc,Xp),!0):!1}}function Vye(Rn,ua){var sc;let ja=ls(Bt.enclosingDeclaration);return sa(Rn)&48&&!lr((sc=Rn.symbol)==null?void 0:sc.declarations,Ya)&&!O(ey(Rn))&&!yre(Rn)&&!!(O(Gt(Id(Rn),rE))||O(Pu(Rn,0)))&&!O(Pu(Rn,1))&&!Jre(ua,fo)&&!(Rn.symbol&&lr(Rn.symbol.declarations,Ba=>ls(Ba)!==ja))&&!lr(Id(Rn),Ba=>X0e(Ba.escapedName))&&!lr(Id(Rn),Ba=>lr(Ba.declarations,Gd=>ls(Gd)!==ja))&&he(Id(Rn),Ba=>Ke(df(Ba),Qe)?Ba.flags&98304?YV(Ba)===YP(Ba):!0:!1)}function E8r(Rn,ua,sc){return function(Ba,Gd,Ag){var vu,Xp,KA,_A,g_;let A_=L1(Ba),ry=!!(A_&2);if(Gd&&Ba.flags&2887656)return[];if(Ba.flags&4194304||Ba.escapedName==="constructor"||Ag&&_g(Ag,Ba.escapedName)&&ST(_g(Ag,Ba.escapedName))===ST(Ba)&&(Ba.flags&16777216)===(_g(Ag,Ba.escapedName).flags&16777216)&&iF(lo(Ba),ZI(Ag,Ba.escapedName)))return[];let sC=A_&-1025|(Gd?256:0),d_=KI(Ba,Bt),fb=(vu=Ba.declarations)==null?void 0:vu.find(pg(Ql,jw,zs,n_,no,Io));if(Ba.flags&98304&&sc){let bC=[];if(Ba.flags&65536){let Ib=Ba.declarations&&X(Ba.declarations,tR=>{if(tR.kind===178)return tR;if(cu(tR)&&M3(tR))return X(tR.arguments[2].properties,aW=>{let cW=vl(aW);if(cW&&sr(cW)&&ao(cW)==="set")return aW})});w.assert(!!Ib);let J7=dd(Ib)?tB(Ib).parameters[0]:void 0;bC.push(C(Bt,_e.createSetAccessorDeclaration(_e.createModifiersFromModifierFlags(sC),d_,[_e.createParameterDeclaration(void 0,void 0,J7?Jf(J7,FA(J7),Bt):"value",void 0,ry?void 0:W_(Bt,void 0,YP(Ba),Ba))],void 0),((Xp=Ba.declarations)==null?void 0:Xp.find(Dh))||fb))}if(Ba.flags&32768){let Ib=A_&2;bC.push(C(Bt,_e.createGetAccessorDeclaration(_e.createModifiersFromModifierFlags(sC),d_,[],Ib?void 0:W_(Bt,void 0,lo(Ba),Ba),void 0),((KA=Ba.declarations)==null?void 0:KA.find(Nv))||fb))}return bC}else if(Ba.flags&98311)return C(Bt,Rn(_e.createModifiersFromModifierFlags((ST(Ba)?8:0)|sC),d_,Ba.flags&16777216?_e.createToken(58):void 0,ry?void 0:W_(Bt,void 0,YP(Ba),Ba),void 0),((_A=Ba.declarations)==null?void 0:_A.find(pg(Ql,zs)))||fb);if(Ba.flags&8208){let bC=lo(Ba),Ib=Pu(bC,0);if(sC&2)return C(Bt,Rn(_e.createModifiersFromModifierFlags((ST(Ba)?8:0)|sC),d_,Ba.flags&16777216?_e.createToken(58):void 0,void 0,void 0),((g_=Ba.declarations)==null?void 0:g_.find(dd))||Ib[0]&&Ib[0].declaration||Ba.declarations&&Ba.declarations[0]);let J7=[];for(let tR of Ib){let aW=ks(tR,ua,Bt,{name:d_,questionToken:Ba.flags&16777216?_e.createToken(58):void 0,modifiers:sC?_e.createModifiersFromModifierFlags(sC):void 0}),cW=tR.declaration&&aee(tR.declaration.parent)?tR.declaration.parent:tR.declaration;J7.push(C(Bt,aW,cW))}return J7}return w.fail(`Unhandled class member kind! ${Ba.__debugFlags||Ba.flags}`)}}function qys(Rn,ua){return mo(Rn,!1,ua)}function uMt(Rn,ua,sc,ja){let Ba=Pu(ua,Rn);if(Rn===1){if(!sc&&he(Ba,vu=>O(vu.parameters)===0))return[];if(sc){let vu=Pu(sc,1);if(!O(vu)&&he(Ba,Xp=>O(Xp.parameters)===0))return[];if(vu.length===Ba.length){let Xp=!1;for(let KA=0;KAOe(Ba,Bt)),ja=Uf(Rn.target.symbol,Bt,788968)):Rn.symbol&&WY(Rn.symbol,fo,ua)&&(ja=Uf(Rn.symbol,Bt,788968)),ja)return _e.createExpressionWithTypeArguments(ja,sc)}function ebs(Rn){let ua=gMt(Rn,788968);if(ua)return ua;if(Rn.symbol)return _e.createExpressionWithTypeArguments(Uf(Rn.symbol,Bt,788968),void 0)}function PLe(Rn,ua){var sc,ja;let Ba=ua?kg(ua):void 0;if(Ba&&Bt.remappedSymbolNames.has(Ba))return Bt.remappedSymbolNames.get(Ba);ua&&(Rn=v8r(ua,Rn));let Gd=0,Ag=Rn;for(;(sc=Bt.usedSymbolNames)!=null&&sc.has(Rn);)Gd++,Rn=`${Ag}_${Gd}`;return(ja=Bt.usedSymbolNames)==null||ja.add(Rn),Ba&&Bt.remappedSymbolNames.set(Ba,Rn),Rn}function v8r(Rn,ua){if(ua==="default"||ua==="__class"||ua==="__function"){let sc=Bt.flags;Bt.flags|=16777216;let ja=OY(Rn,Bt);Bt.flags=sc,ua=ja.length>0&&ree(ja.charCodeAt(0))?N2(ja):ja}return ua==="default"?ua="_default":ua==="export="&&(ua="_exports"),ua=Ke(ua,Qe)&&!FQ(ua)?ua:"_"+ua.replace(/[^a-zA-Z0-9]/g,"_"),ua}function ED(Rn,ua){let sc=kg(Rn);return Bt.remappedSymbolNames.has(sc)?Bt.remappedSymbolNames.get(sc):(ua=v8r(Rn,ua),Bt.remappedSymbolNames.set(sc,ua),ua)}}}function dD(l,C,E=16384,D){return D?W(D).getText():Z3(W);function W(Q){let se=_re(E)|70221824|512,Ee=Kt.typePredicateToTypePredicateNode(l,C,se),Ve=h4(),Oe=C&&ls(C);return Ve.writeNode(4,Ee,Oe,Q),Q}}function L0e(l){let C=[],E=0;for(let D=0;Dvl(se)?se:void 0),Q=W&&vl(W);if(W&&Q){if(cu(W)&&M3(W))return df(l);if(xg(Q)&&!(aI(l)&4096)){let se=ol(l).nameType;if(se&&se.flags&384){let Ee=W0e(l,C);if(Ee!==void 0)return Ee}}return xd(Q)}if(W||(W=l.declarations[0]),W.parent&&W.parent.kind===260)return xd(W.parent.name);switch(W.kind){case 231:case 218:case 219:return C&&!C.encounteredError&&!(C.flags&131072)&&(C.encounteredError=!0),W.kind===231?"(Anonymous class)":"(Anonymous function)"}}let D=W0e(l,C);return D!==void 0?D:df(l)}function $G(l){if(l){let E=Uo(l);return E.isVisible===void 0&&(E.isVisible=!!C()),E.isVisible}return!1;function C(){switch(l.kind){case 338:case 346:case 340:return!!(l.parent&&l.parent.parent&&l.parent.parent.parent&&Gc(l.parent.parent.parent));case 208:return $G(l.parent.parent);case 260:if(pu(l.name)&&!l.name.elements.length)return!1;case 267:case 263:case 264:case 265:case 262:case 266:case 271:if(XR(l))return!0;let E=Y4(l);return!(utt(l)&32)&&!(l.kind!==271&&E.kind!==307&&E.flags&33554432)?bs(E):$G(E);case 172:case 171:case 177:case 178:case 174:case 173:if(nb(l,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 $G(l.parent);case 273:case 274:case 276:return!1;case 168:case 307:case 270:return!0;case 277:return!1;default:return!1}}}function MY(l,C){let E;l.parent&&l.parent.kind===277?E=Pi(l,l,2998271,void 0,!1):l.parent.kind===281&&(E=Yv(l.parent,2998271));let D,W;return E&&(W=new Set,W.add(kg(E)),Q(E.declarations)),D;function Q(se){X(se,Ee=>{let Ve=F4(Ee)||Ee;if(C?Uo(Ee).isVisible=!0:(D=D||[],pa(D,Ve)),NQ(Ee)){let Oe=Ee.moduleReference,ot=ib(Oe),Wt=Pi(Ee,ot.escapedText,901119,void 0,!1);Wt&&W&&Zi(W,kg(Wt))&&Q(Wt.declarations)}})}}function Hv(l,C){let E=bre(l,C);if(E>=0){let{length:D}=Wi;for(let W=E;W=ho;E--){if(P0e(Wi[E],zi[E]))return-1;if(Wi[E]===l&&zi[E]===C)return E}return-1}function P0e(l,C){switch(C){case 0:return!!ol(l).type;case 2:return!!ol(l).declaredType;case 1:return!!l.resolvedBaseConstructorType;case 3:return!!l.resolvedReturnType;case 4:return!!l.immediateBaseConstraint;case 5:return!!l.resolvedTypeArguments;case 6:return!!l.baseTypesResolved;case 7:return!!ol(l).writeType;case 8:return Uo(l).parameterInitializerContainsUndefined!==void 0}return w.assertNever(C)}function pD(){return Wi.pop(),zi.pop(),qs.pop()}function Y4(l){return Si(WS(l),C=>{switch(C.kind){case 260:case 261:case 276:case 275:case 274:case 273:return!1;default:return!0}}).parent}function O0e(l){let C=xp(o_(l));return C.typeParameters?lL(C,Ot(C.typeParameters,E=>Qt)):C}function ZI(l,C){let E=_g(l,C);return E?lo(E):void 0}function que(l,C){var E;let D;return ZI(l,C)||(D=(E=D7(l,C))==null?void 0:E.type)&&hg(D,!0,!0)}function vd(l){return l&&(l.flags&1)!==0}function OA(l){return l===cr||!!(l.flags&1&&l.aliasSymbol)}function v7(l,C){if(C!==0)return oA(l,!1,C);let E=Mo(l);return E&&ol(E).type||oA(l,!1,C)}function S7(l,C,E){if(l=VC(l,Ve=>!(Ve.flags&98304)),l.flags&131072)return Zc;if(l.flags&1048576)return Of(l,Ve=>S7(Ve,C,E));let D=Ta(Ot(C,AL)),W=[],Q=[];for(let Ve of Id(l)){let Oe=k7(Ve,8576);!yg(Oe,D)&&!(L1(Ve)&6)&&N$e(Ve)?W.push(Ve):Q.push(Oe)}if(z4(l)||q4(D)){if(Q.length&&(D=Ta([D,...Q])),D.flags&131072)return l;let Ve=Ugs();return Ve?Dre(Ve,[l,D]):cr}let se=Du();for(let Ve of W)se.set(Ve.escapedName,F3t(Ve,!1));let Ee=qn(E,se,v,v,ey(l));return Ee.objectFlags|=4194304,Ee}function $e(l){return!!(l.flags&465829888)&&UI(a_(l)||Kr,32768)}function Yt(l){let C=Kv(l,$e)?Of(l,E=>E.flags&465829888?mD(E):E):l;return Uv(C,524288)}function Sr(l,C){let E=_n(l);return E?uF(E,C):C}function _n(l){let C=Xn(l);if(C&&gee(C)&&C.flowNode){let E=es(l);if(E){let D=un(sP.createStringLiteral(E),l),W=T_(C)?C:sP.createParenthesizedExpression(C),Q=un(sP.createElementAccessExpression(W,D),l);return kA(D,Q),kA(Q,l),W!==C&&kA(W,Q),Q.flowNode=C.flowNode,Q}}}function Xn(l){let C=l.parent.parent;switch(C.kind){case 208:case 303:return _n(C);case 209:return _n(l.parent);case 260:return C.initializer;case 226:return C.right}}function es(l){let C=l.parent;return l.kind===208&&C.kind===206?Ca(l.propertyName||l.name):l.kind===303||l.kind===304?Ca(l.name):""+C.elements.indexOf(l)}function Ca(l){let C=AL(l);return C.flags&384?""+C.value:void 0}function Hc(l){let C=l.dotDotDotToken?32:0,E=v7(l.parent.parent,C);return E&&yc(l,E,!1)}function yc(l,C,E){if(vd(C))return C;let D=l.parent;nt&&l.flags&33554432&&wZ(l)?C=aF(C):nt&&D.parent.initializer&&!BT(L4r(D.parent.initializer),65536)&&(C=Uv(C,524288));let W;if(D.kind===206)if(l.dotDotDotToken){if(C=bT(C),C.flags&2||!aLe(C))return fr(l,Z.Rest_types_may_only_be_created_from_object_types),cr;let Q=[];for(let se of D.elements)se.dotDotDotToken||Q.push(se.propertyName||se.name);W=S7(C,Q,l.symbol)}else{let Q=l.propertyName||l.name,se=AL(Q),Ee=zb(C,se,32,Q);W=Sr(l,Ee)}else{let Q=IL(65|(l.dotDotDotToken?0:128),C,wn,D),se=D.elements.indexOf(l);if(l.dotDotDotToken){let Ee=Of(C,Ve=>Ve.flags&58982400?mD(Ve):Ve);W=eE(Ee,aA)?Of(Ee,Ve=>age(Ve,se)):L_(Q)}else if(pL(C)){let Ee=dw(se),Ve=32|(E||pge(l)?16:0),Oe=jV(C,Ee,Ve,l.name)||cr;W=Sr(l,Oe)}else W=Q}return l.initializer?fC(fA(l))?nt&&!BT(Ige(l,0),16777216)?Yt(W):W:Vet(l,Ta([Yt(W),Ige(l,0)],2)):W}function $a(l){let C=yx(l);if(C)return Lc(C)}function Il(l){let C=jA(l,!0);return C.kind===106||C.kind===80&&vy(C)===Zt}function lp(l){let C=jA(l,!0);return C.kind===209&&C.elements.length===0}function hg(l,C=!1,E=!0){return nt&&E?tW(l,C):l}function oA(l,C,E){if(zs(l)&&l.parent.parent.kind===249){let se=JN(UPt(Rl(l.parent.parent.expression,E)));return se.flags&4456448?mXr(se):Jt}if(zs(l)&&l.parent.parent.kind===250){let se=l.parent.parent;return xLe(se)||Qt}if(pu(l.parent))return Hc(l);let D=Ql(l)&&!PS(l)||n_(l)||eRt(l),W=C&&QS(l),Q=io(l);if(V$(l))return Q?vd(Q)||Q===Kr?Q:cr:vt?Kr:Qt;if(Q)return hg(Q,D,W);if((dt||so(l))&&zs(l)&&!pu(l.name)&&!(utt(l)&32)&&!(l.flags&33554432)){if(!(sH(l)&6)&&(!l.initializer||Il(l.initializer)))return _r;if(l.initializer&&lp(l.initializer))return Hd}if(Jc(l)){if(!l.symbol)return;let se=l.parent;if(se.kind===178&&wre(se)){let Oe=zd(Mo(l.parent),177);if(Oe){let ot=tB(Oe),Wt=aMt(se);return Wt&&l===Wt?(w.assert(!Wt.type),lo(ot.thisParameter)):Sd(ot)}}let Ee=mgs(se,l);if(Ee)return Ee;let Ve=l.symbol.escapedName==="this"?dJr(se):pJr(l);if(Ve)return hg(Ve,!1,W)}if(dG(l)&&l.initializer){if(so(l)&&!Jc(l)){let Ee=M0e(l,Mo(l),O8(l));if(Ee)return Ee}let se=Vet(l,Ige(l,E));return hg(se,D,W)}if(Ql(l)&&(dt||so(l)))if(IC(l)){let se=Gt(l.parent.members,$p),Ee=se.length?Xv(l.symbol,se):N_(l)&128?Q$e(l.symbol):void 0;return Ee&&hg(Ee,!0,W)}else{let se=Uee(l.parent),Ee=se?MP(l.symbol,se):N_(l)&128?Q$e(l.symbol):void 0;return Ee&&hg(Ee,!0,W)}if(NN(l))return Mn;if(pu(l.name))return j(l.name,!1,!0)}function $2(l){if(l.valueDeclaration&&no(l.valueDeclaration)){let C=ol(l);return C.isConstructorDeclaredProperty===void 0&&(C.isConstructorDeclaredProperty=!1,C.isConstructorDeclaredProperty=!!eF(l)&&he(l.declarations,E=>no(E)&&fet(E)&&(E.left.kind!==212||GE(E.left.argumentExpression))&&!MA(void 0,E,l,E))),C.isConstructorDeclaredProperty}return!1}function mT(l){let C=l.valueDeclaration;return C&&Ql(C)&&!fC(C)&&!C.initializer&&(dt||so(C))}function eF(l){if(l.declarations)for(let C of l.declarations){let E=r0(C,!1,!1);if(E&&(E.kind===176||qN(E)))return E}}function MV(l){let C=ls(l.declarations[0]),E=Sc(l.escapedName),D=l.declarations.every(Q=>so(Q)&&Cp(Q)&&AN(Q.expression)),W=D?_e.createPropertyAccessExpression(_e.createPropertyAccessExpression(_e.createIdentifier("module"),_e.createIdentifier("exports")),E):_e.createPropertyAccessExpression(_e.createIdentifier("exports"),E);return D&&kA(W.expression.expression,W.expression),kA(W.expression,W),kA(W,C),W.flowNode=C.endFlowNode,uF(W,_r,wn)}function Xv(l,C){let E=uc(l.escapedName,"__#")?_e.createPrivateIdentifier(l.escapedName.split("@")[1]):Sc(l.escapedName);for(let D of C){let W=_e.createPropertyAccessExpression(_e.createThis(),E);kA(W.expression,W),kA(W,D),W.flowNode=D.returnFlowNode;let Q=$ue(W,l);if(dt&&(Q===_r||Q===Hd)&&fr(l.valueDeclaration,Z.Member_0_implicitly_has_an_1_type,qc(l),Xs(Q)),!eE(Q,uLe))return xye(Q)}}function MP(l,C){let E=uc(l.escapedName,"__#")?_e.createPrivateIdentifier(l.escapedName.split("@")[1]):Sc(l.escapedName),D=_e.createPropertyAccessExpression(_e.createThis(),E);kA(D.expression,D),kA(D,C),D.flowNode=C.returnFlowNode;let W=$ue(D,l);return dt&&(W===_r||W===Hd)&&fr(l.valueDeclaration,Z.Member_0_implicitly_has_an_1_type,qc(l),Xs(W)),eE(W,uLe)?void 0:xye(W)}function $ue(l,C){let E=C?.valueDeclaration&&(!mT(C)||N_(C.valueDeclaration)&128)&&Q$e(C)||wn;return uF(l,_r,E)}function Ere(l,C){let E=RQ(l.valueDeclaration);if(E){let Ee=so(E)?_x(E):void 0;return Ee&&Ee.typeExpression?Lc(Ee.typeExpression):l.valueDeclaration&&M0e(l.valueDeclaration,l,E)||$P(iC(E))}let D,W=!1,Q=!1;if($2(l)&&(D=MP(l,eF(l))),!D){let Ee;if(l.declarations){let Ve;for(let Oe of l.declarations){let ot=no(Oe)||cu(Oe)?Oe:Cp(Oe)?no(Oe.parent)?Oe.parent:Oe:void 0;if(!ot)continue;let Wt=Cp(ot)?oee(ot):CI(ot);(Wt===4||no(ot)&&fet(ot,Wt))&&(hT(ot)?W=!0:Q=!0),cu(ot)||(Ve=MA(Ve,ot,l,Oe)),Ve||(Ee||(Ee=[])).push(no(ot)||cu(ot)?Bm(l,C,ot,Wt):Vi)}D=Ve}if(!D){if(!O(Ee))return cr;let Ve=W&&l.declarations?QP(Ee,l.declarations):void 0;if(Q){let ot=Q$e(l);ot&&((Ve||(Ve=[])).push(ot),W=!0)}let Oe=lr(Ve,ot=>!!(ot.flags&-98305))?Ve:Ee;D=Ta(Oe)}}let se=$b(hg(D,!1,Q&&!W));return l.valueDeclaration&&so(l.valueDeclaration)&&VC(se,Ee=>!!(Ee.flags&-98305))===Vi?(eO(l.valueDeclaration,Qt),Qt):se}function M0e(l,C,E){var D,W;if(!so(l)||!E||!tu(E)||E.properties.length)return;let Q=Du();for(;no(l)||Io(l);){let Ve=z2(l);(D=Ve?.exports)!=null&&D.size&&M1(Q,Ve.exports),l=no(l)?l.parent:l.parent.parent}let se=z2(l);(W=se?.exports)!=null&&W.size&&M1(Q,se.exports);let Ee=qn(C,Q,v,v,v);return Ee.objectFlags|=4096,Ee}function MA(l,C,E,D){var W;let Q=fC(C.parent);if(Q){let se=$b(Lc(Q));if(l)!OA(l)&&!OA(se)&&!iF(l,se)&&fKr(void 0,l,D,se);else return se}if((W=E.parent)!=null&&W.valueDeclaration){let se=fre(E.parent);if(se.valueDeclaration){let Ee=fC(se.valueDeclaration);if(Ee){let Ve=_g(Lc(Ee),E.escapedName);if(Ve)return YV(Ve)}}}return l}function Bm(l,C,E,D){if(cu(E)){if(C)return lo(C);let se=iC(E.arguments[2]),Ee=ZI(se,"value");if(Ee)return Ee;let Ve=ZI(se,"get");if(Ve){let ot=lJ(Ve);if(ot)return Sd(ot)}let Oe=ZI(se,"set");if(Oe){let ot=lJ(Oe);if(ot)return IOt(ot)}return Qt}if(QV(E.left,E.right))return Qt;let W=D===1&&(Io(E.left)||hA(E.left))&&(AN(E.left.expression)||sr(E.left.expression)&&O3(E.left.expression)),Q=C?lo(C):W?ty(iC(E.right)):$P(iC(E.right));if(Q.flags&524288&&D===2&&l.escapedName==="export="){let se=yT(Q),Ee=Du();_8(se.members,Ee);let Ve=Ee.size;C&&!C.exports&&(C.exports=Du()),(C||l).exports.forEach((ot,Wt)=>{var Nt;let Mr=Ee.get(Wt);if(Mr&&Mr!==ot&&!(ot.flags&2097152))if(ot.flags&111551&&Mr.flags&111551){if(ot.valueDeclaration&&Mr.valueDeclaration&&ls(ot.valueDeclaration)!==ls(Mr.valueDeclaration)){let hn=Sc(ot.escapedName),mi=((Nt=eo(Mr.valueDeclaration,Sf))==null?void 0:Nt.name)||Mr.valueDeclaration;eg(fr(ot.valueDeclaration,Z.Duplicate_identifier_0,hn),Us(mi,Z._0_was_also_declared_here,hn)),eg(fr(mi,Z.Duplicate_identifier_0,hn),Us(ot.valueDeclaration,Z._0_was_also_declared_here,hn))}let ln=SA(ot.flags|Mr.flags,Wt);ln.links.type=Ta([lo(ot),lo(Mr)]),ln.valueDeclaration=Mr.valueDeclaration,ln.declarations=vi(Mr.declarations,ot.declarations),Ee.set(Wt,ln)}else Ee.set(Wt,QG(ot,Mr));else Ee.set(Wt,ot)});let Oe=qn(Ve!==Ee.size?void 0:se.symbol,Ee,se.callSignatures,se.constructSignatures,se.indexInfos);if(Ve===Ee.size&&(Q.aliasSymbol&&(Oe.aliasSymbol=Q.aliasSymbol,Oe.aliasTypeArguments=Q.aliasTypeArguments),sa(Q)&4)){Oe.aliasSymbol=Q.symbol;let ot=of(Q);Oe.aliasTypeArguments=O(ot)?ot:void 0}return Oe.objectFlags|=SZe([Q])|sa(Q)&20608,Oe.symbol&&Oe.symbol.flags&32&&Q===_C(Oe.symbol)&&(Oe.objectFlags|=16777216),Oe}return H$e(Q)?(eO(E,rp),rp):Q}function QV(l,C){return Io(l)&&l.expression.kind===110&&Z6(C,E=>Fh(l,E))}function hT(l){let C=r0(l,!1,!1);return C.kind===176||C.kind===262||C.kind===218&&!aee(C.parent)}function QP(l,C){return w.assert(l.length===C.length),l.filter((E,D)=>{let W=C[D],Q=no(W)?W:no(W.parent)?W.parent:void 0;return Q&&hT(Q)})}function zx(l,C,E){if(l.initializer){let D=pu(l.name)?j(l.name,!0,!1):Kr;return hg(Vet(l,Ige(l,E?0:1,D)))}return pu(l.name)?j(l.name,C,E):(E&&!zn(l)&&eO(l,Qt),C?Pn:Qt)}function YB(l,C,E){let D=Du(),W,Q=131200;X(l.elements,Ee=>{let Ve=Ee.propertyName||Ee.name;if(Ee.dotDotDotToken){W=hD(Jt,Qt,!1);return}let Oe=AL(Ve);if(!x2(Oe)){Q|=512;return}let ot=k2(Oe),Wt=4|(Ee.initializer?16777216:0),Nt=SA(Wt,ot);Nt.links.type=zx(Ee,C,E),Nt.links.bindingElement=Ee,D.set(Nt.escapedName,Nt)});let se=qn(void 0,D,v,v,W?[W]:v);return se.objectFlags|=Q,C&&(se.pattern=l,se.objectFlags|=131072),se}function go(l,C,E){let D=l.elements,W=qo(D),Q=W&&W.kind===208&&W.dotDotDotToken?W:void 0;if(D.length===0||D.length===1&&Q)return Qe>=2?rXr(Qt):rp;let se=Ot(D,ot=>ef(ot)?Qt:zx(ot,C,E)),Ee=x(D,ot=>!(ot===Q||ef(ot)||pge(ot)),D.length-1)+1,Ve=Ot(D,(ot,Wt)=>ot===Q?4:Wt>=Ee?2:1),Oe=_D(se,Ve);return C&&(Oe=L5r(Oe),Oe.pattern=l,Oe.objectFlags|=131072),Oe}function j(l,C=!1,E=!1){return l.kind===206?YB(l,C,E):go(l,C,E)}function me(l,C){return yr(oA(l,!0,0),l,C)}function We(l){let C=Uo(l);if(!C.resolvedType){let E=SA(4096,"__importAttributes"),D=Du();X(l.elements,Q=>{let se=SA(4,Cle(Q));se.parent=E,se.links.type=j_s(Q),se.links.target=se,D.set(se.escapedName,se)});let W=qn(E,D,v,v,v);W.objectFlags|=262272,C.resolvedType=W}return C.resolvedType}function mt(l){let C=z2(l),E=Zgs(!1);return E&&C&&C===E}function yr(l,C,E){return l?(l.flags&4096&&mt(C.parent)&&(l=Z3t(C)),E&&$$e(C,l),l.flags&8192&&(ml(C)||!C.type)&&l.symbol!==Mo(C)&&(l=Es),$b(l)):(l=Jc(C)&&C.dotDotDotToken?rp:Qt,E&&(zn(C)||eO(C,l)),l)}function zn(l){let C=WS(l),E=C.kind===169?C.parent:C;return wLe(E)}function io(l){let C=fC(l);if(C)return Lc(C)}function Yl(l){let C=l.valueDeclaration;return C?(ml(C)&&(C=fA(C)),Jc(C)?Z$e(C.parent):!1):!1}function hp(l,C){let E=ol(l);if(!E.type){let D=gw(l,C);return!E.type&&!Yl(l)&&!C&&(E.type=D),D}return E.type}function gw(l,C){if(l.flags&4194304)return O0e(l);if(l===mr)return Qt;if(l.flags&134217728&&l.valueDeclaration){let W=Mo(ls(l.valueDeclaration)),Q=SA(W.flags,"exports");Q.declarations=W.declarations?W.declarations.slice():[],Q.parent=l,Q.links.target=W,W.valueDeclaration&&(Q.valueDeclaration=W.valueDeclaration),W.members&&(Q.members=new Map(W.members)),W.exports&&(Q.exports=new Map(W.exports));let se=Du();return se.set("exports",Q),qn(l,se,v,v,v)}w.assertIsDefined(l.valueDeclaration);let E=l.valueDeclaration;if(Gc(E)&&Ia(E))return E.statements.length?$b($P(Rl(E.statements[0].expression))):Zc;if(jw(E))return Q0e(l);if(!Hv(l,0))return l.flags&512&&!(l.flags&67108864)?ege(l):ml(E)&&C===1?cr:oL(l);let D;if(E.kind===277)D=yr(io(E)||iC(E.expression),E);else if(no(E)||so(E)&&(cu(E)||(Io(E)||pce(E))&&no(E.parent)))D=Ere(l);else if(Io(E)||hA(E)||sr(E)||XA(E)||du(E)||bc(E)||mp(E)||cI(E)&&!TB(E)||jS(E)||Gc(E)){if(l.flags&9136)return ege(l);D=no(E.parent)?Ere(l):io(E)||Qt}else if(KC(E))D=io(E)||MUr(E);else if(NN(E))D=io(E)||SJr(E);else if(G_(E))D=io(E)||mge(E.name,0);else if(TB(E))D=io(E)||QUr(E,0);else if(Jc(E)||Ql(E)||n_(E)||zs(E)||ml(E)||fZ(E))D=me(E,!0);else if(tP(E))D=ege(l);else if(_V(E))D=l$e(l);else return w.fail("Unhandled declaration kind! "+w.formatSyntaxKind(E.kind)+" for "+w.formatSymbol(l));return pD()?D:l.flags&512&&!(l.flags&67108864)?ege(l):ml(E)&&C===1?D:oL(l)}function Aw(l){if(l)switch(l.kind){case 177:return rb(l);case 178:return uDe(l);case 172:return w.assert(PS(l)),fC(l)}}function fD(l){let C=Aw(l);return C&&Lc(C)}function w7(l){let C=aMt(l);return C&&C.symbol}function xWt(l){return UP(tB(l))}function Q0e(l){let C=ol(l);if(!C.type){if(!Hv(l,0))return cr;let E=zd(l,177),D=zd(l,178),W=eo(zd(l,172),t_),Q=E&&so(E)&&$a(E)||fD(E)||fD(D)||fD(W)||E&&E.body&&Get(E)||W&&W.initializer&&me(W,!0);Q||(D&&!wLe(D)?zm(dt,D,Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation,qc(l)):E&&!wLe(E)?zm(dt,E,Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation,qc(l)):W&&!wLe(W)&&zm(dt,W,Z.Member_0_implicitly_has_an_1_type,qc(l),"any"),Q=Qt),pD()||(Aw(E)?fr(E,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,qc(l)):Aw(D)||Aw(W)?fr(D,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,qc(l)):E&&dt&&fr(E,Z._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,qc(l)),Q=Qt),C.type??(C.type=Q)}return C.type}function a$e(l){let C=ol(l);if(!C.writeType){if(!Hv(l,7))return cr;let E=zd(l,178)??eo(zd(l,172),t_),D=fD(E);pD()||(Aw(E)&&fr(E,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,qc(l)),D=Qt),C.writeType??(C.writeType=D||Q0e(l))}return C.writeType}function c$e(l){let C=is(_C(l));return C.flags&8650752?C:C.flags&2097152?be(C.types,E=>!!(E.flags&8650752)):void 0}function ege(l){let C=ol(l),E=C;if(!C.type){let D=l.valueDeclaration&&xet(l.valueDeclaration,!1);if(D){let W=uOt(l,D);W&&(l=W,C=W.links)}E.type=C.type=kWt(l)}return C.type}function kWt(l){let C=l.valueDeclaration;if(l.flags&1536&&V3(l))return Qt;if(C&&(C.kind===226||Cp(C)&&C.parent.kind===226))return Ere(l);if(l.flags&512&&C&&Gc(C)&&C.commonJsModuleIndicator){let D=db(l);if(D!==l){if(!Hv(l,0))return cr;let W=GA(l.exports.get("export=")),Q=Ere(W,W===D?void 0:D);return pD()?Q:oL(l)}}let E=X1(16,l);if(l.flags&32){let D=c$e(l);return D?Pg([E,D]):E}else return nt&&l.flags&16777216?tW(E,!0):E}function l$e(l){let C=ol(l);return C.type||(C.type=r5r(l))}function GWt(l){let C=ol(l);if(!C.type){if(!Hv(l,0))return cr;let E=qm(l),D=l.declarations&&UG(YE(l),!0),W=le(D?.declarations,Q=>tf(Q)?io(Q):void 0);if(C.type??(C.type=D?.declarations&&ett(D.declarations)&&l.declarations.length?MV(D):ett(l.declarations)?_r:W||(Kb(E)&111551?lo(E):cr)),!pD())return oL(D??l),C.type??(C.type=cr)}return C.type}function u$e(l){let C=ol(l);return C.type||(C.type=al(lo(C.target),C.mapper))}function FWt(l){let C=ol(l);return C.writeType||(C.writeType=al(YP(C.target),C.mapper))}function oL(l){let C=l.valueDeclaration;if(C){if(fC(C))return fr(l.valueDeclaration,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,qc(l)),cr;dt&&(C.kind!==169||C.initializer)&&fr(l.valueDeclaration,Z._0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer,qc(l))}else if(l.flags&2097152){let E=YE(l);E&&fr(E,Z.Circular_definition_of_import_alias_0,qc(l))}return Qt}function pZe(l){let C=ol(l);return C.type||(w.assertIsDefined(C.deferralParent),w.assertIsDefined(C.deferralConstituents),C.type=C.deferralParent.flags&1048576?Ta(C.deferralConstituents):Pg(C.deferralConstituents)),C.type}function ZWt(l){let C=ol(l);return!C.writeType&&C.deferralWriteConstituents&&(w.assertIsDefined(C.deferralParent),w.assertIsDefined(C.deferralConstituents),C.writeType=C.deferralParent.flags&1048576?Ta(C.deferralWriteConstituents):Pg(C.deferralWriteConstituents)),C.writeType}function YP(l){let C=aI(l);return l.flags&4?C&2?C&65536?ZWt(l)||pZe(l):l.links.writeType||l.links.type:cF(lo(l),!!(l.flags&16777216)):l.flags&98304?C&1?FWt(l):a$e(l):lo(l)}function lo(l,C){let E=aI(l);return E&65536?pZe(l):E&1?u$e(l):E&262144?$us(l):E&8192?fps(l):l.flags&7?hp(l,C):l.flags&9136?ege(l):l.flags&8?l$e(l):l.flags&98304?Q0e(l):l.flags&2097152?GWt(l):cr}function YV(l){return cF(lo(l),!!(l.flags&16777216))}function HV(l,C){return l!==void 0&&C!==void 0&&(sa(l)&4)!==0&&l.target===C}function Bre(l){return sa(l)&4?l.target:l}function vre(l,C){return E(l);function E(D){if(sa(D)&7){let W=Bre(D);return W===C||lr(wa(W),E)}else if(D.flags&2097152)return lr(D.types,E);return!1}}function fZe(l,C){for(let E of C)l=sg(l,QY(Mo(E)));return l}function Sre(l,C){for(;;){if(l=l.parent,l&&no(l)){let E=CI(l);if(E===6||E===3){let D=Mo(l.left);D&&D.parent&&!Si(D.parent.valueDeclaration,W=>l===W)&&(l=D.parent.valueDeclaration)}}if(!l)return;switch(l.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:{let D=Sre(l,C);if(l.kind===200)return Hr(D,QY(Mo(l.typeParameter)));if(l.kind===194)return vi(D,x3t(l));let W=fZe(D,R1(l)),Q=C&&(l.kind===263||l.kind===231||l.kind===264||qN(l))&&_C(Mo(l)).thisType;return Q?Hr(W,Q):W}case 341:let E=dee(l);E&&(l=E.valueDeclaration);break;case 320:{let D=Sre(l,C);return l.tags?fZe(D,Fr(l.tags,W=>Zv(W)?W.typeParameters:void 0)):D}}}}function Y0e(l){var C;let E=l.flags&32||l.flags&16?l.valueDeclaration:(C=l.declarations)==null?void 0:C.find(D=>{if(D.kind===264)return!0;if(D.kind!==260)return!1;let W=D.initializer;return!!W&&(W.kind===218||W.kind===219)});return w.assert(!!E,"Class was missing valueDeclaration -OR- non-class had no interface declarations"),Sre(E)}function aL(l){if(!l.declarations)return;let C;for(let E of l.declarations)(E.kind===264||E.kind===263||E.kind===231||qN(E)||uee(E))&&(C=fZe(C,R1(E)));return C}function LWt(l){return vi(Y0e(l),aL(l))}function IZe(l){let C=Pu(l,1);if(C.length===1){let E=C[0];if(!E.typeParameters&&E.parameters.length===1&&u0(E)){let D=hLe(E.parameters[0]);return vd(D)||HZe(D)===Qt}}return!1}function H0e(l){if(Pu(l,1).length>0)return!0;if(l.flags&8650752){let C=a_(l);return!!C&&IZe(C)}return!1}function HP(l){let C=DB(l.symbol);return C&&Dv(C)}function g$e(l,C,E){let D=O(C),W=so(E);return Gt(Pu(l,1),Q=>(W||D>=XN(Q.typeParameters))&&D<=O(Q.typeParameters))}function XP(l,C,E){let D=g$e(l,C,E),W=Ot(C,Lc);return Ar(D,Q=>lr(Q.typeParameters)?j0e(Q,W,so(E)):Q)}function is(l){if(!l.resolvedBaseConstructorType){let C=DB(l.symbol),E=C&&Dv(C),D=HP(l);if(!D)return l.resolvedBaseConstructorType=wn;if(!Hv(l,1))return cr;let W=Rl(D.expression);if(E&&D!==E&&(w.assert(!E.typeArguments),Rl(E.expression)),W.flags&2621440&&yT(W),!pD())return fr(l.symbol.valueDeclaration,Z._0_is_referenced_directly_or_indirectly_in_its_own_base_expression,qc(l.symbol)),l.resolvedBaseConstructorType??(l.resolvedBaseConstructorType=cr);if(!(W.flags&1)&&W!==Re&&!H0e(W)){let Q=fr(D.expression,Z.Type_0_is_not_a_constructor_function_type,Xs(W));if(W.flags&262144){let se=sge(W),Ee=Kr;if(se){let Ve=Pu(se,1);Ve[0]&&(Ee=Sd(Ve[0]))}W.symbol.declarations&&eg(Q,Us(W.symbol.declarations[0],Z.Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1,qc(W.symbol),Xs(Ee)))}return l.resolvedBaseConstructorType??(l.resolvedBaseConstructorType=cr)}l.resolvedBaseConstructorType??(l.resolvedBaseConstructorType=W)}return l.resolvedBaseConstructorType}function la(l){let C=v;if(l.symbol.declarations)for(let E of l.symbol.declarations){let D=MX(E);if(D)for(let W of D){let Q=Lc(W);OA(Q)||(C===v?C=[Q]:C.push(Q))}}return C}function da(l,C){fr(l,Z.Type_0_recursively_references_itself_as_a_base_type,Xs(C,void 0,2))}function wa(l){if(!l.baseTypesResolved){if(Hv(l,6)&&(l.objectFlags&8?l.resolvedBaseTypes=[wc(l)]:l.symbol.flags&96?(l.symbol.flags&32&&qA(l),l.symbol.flags&64&&ID(l)):w.fail("type must be class or interface"),!pD()&&l.symbol.declarations))for(let C of l.symbol.declarations)(C.kind===263||C.kind===264)&&da(C,l);l.baseTypesResolved=!0}return l.resolvedBaseTypes}function wc(l){let C=Ar(l.typeParameters,(E,D)=>l.elementFlags[D]&8?zb(E,bt):E);return L_(Ta(C||v),l.readonly)}function qA(l){l.resolvedBaseTypes=w$;let C=$0(is(l));if(!(C.flags&2621441))return l.resolvedBaseTypes=v;let E=HP(l),D,W=C.symbol?xp(C.symbol):void 0;if(C.symbol&&C.symbol.flags&32&&_p(W))D=V5r(E,C.symbol);else if(C.flags&1)D=C;else{let se=XP(C,E.typeArguments,E);if(!se.length)return fr(E.expression,Z.No_base_constructor_has_the_specified_number_of_type_arguments),l.resolvedBaseTypes=v;D=Sd(se[0])}if(OA(D))return l.resolvedBaseTypes=v;let Q=bT(D);if(!$m(Q)){let se=KWt(void 0,D),Ee=su(se,Z.Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members,Xs(Q));return UA.add(GS(ls(E.expression),E.expression,Ee)),l.resolvedBaseTypes=v}return l===Q||vre(Q,l)?(fr(l.symbol.valueDeclaration,Z.Type_0_recursively_references_itself_as_a_base_type,Xs(l,void 0,2)),l.resolvedBaseTypes=v):(l.resolvedBaseTypes===w$&&(l.members=void 0),l.resolvedBaseTypes=[Q])}function _p(l){let C=l.outerTypeParameters;if(C){let E=C.length-1,D=of(l);return C[E].symbol!==D[E].symbol}return!0}function $m(l){if(l.flags&262144){let C=a_(l);if(C)return $m(C)}return!!(l.flags&67633153&&!jb(l)||l.flags&2097152&&he(l.types,$m))}function ID(l){if(l.resolvedBaseTypes=l.resolvedBaseTypes||v,l.symbol.declarations){for(let C of l.symbol.declarations)if(C.kind===264&&U8(C))for(let E of U8(C)){let D=bT(Lc(E));OA(D)||($m(D)?l!==D&&!vre(D,l)?l.resolvedBaseTypes===v?l.resolvedBaseTypes=[D]:l.resolvedBaseTypes.push(D):da(C,l):fr(E,Z.An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members))}}}function HN(l){if(!l.declarations)return!0;for(let C of l.declarations)if(C.kind===264){if(C.flags&256)return!1;let E=U8(C);if(E){for(let D of E)if(cp(D.expression)){let W=FI(D.expression,788968,!0);if(!W||!(W.flags&64)||_C(W).thisType)return!1}}}return!0}function _C(l){let C=ol(l),E=C;if(!C.declaredType){let D=l.flags&32?1:2,W=uOt(l,l.valueDeclaration&&ECs(l.valueDeclaration));W&&(l=W,C=W.links);let Q=E.declaredType=C.declaredType=X1(D,l),se=Y0e(l),Ee=aL(l);(se||Ee||D===1||!HN(l))&&(Q.objectFlags|=4,Q.typeParameters=vi(se,Ee),Q.outerTypeParameters=se,Q.localTypeParameters=Ee,Q.instantiations=new Map,Q.instantiations.set(Jv(Q.typeParameters),Q),Q.target=Q,Q.resolvedTypeArguments=Q.typeParameters,Q.thisType=q2(l),Q.thisType.isThisType=!0,Q.thisType.constraint=Q)}return C.declaredType}function tF(l){var C;let E=ol(l);if(!E.declaredType){if(!Hv(l,2))return cr;let D=w.checkDefined((C=l.declarations)==null?void 0:C.find(uee),"Type alias symbol with no valid declaration found"),W=w2(D)?D.typeExpression:D.type,Q=W?Lc(W):cr;if(pD()){let se=aL(l);se&&(E.typeParameters=se,E.instantiations=new Map,E.instantiations.set(Jv(se),Q))}else Q=cr,D.kind===340?fr(D.typeExpression.type,Z.Type_alias_0_circularly_references_itself,qc(l)):fr(Sf(D)&&D.name||D,Z.Type_alias_0_circularly_references_itself,qc(l));E.declaredType??(E.declaredType=Q)}return E.declaredType}function T7(l){return l.flags&1056&&l.symbol.flags&8?xp(o_(l.symbol)):l}function N7(l){let C=ol(l);if(!C.declaredType){let E=[];if(l.declarations){for(let W of l.declarations)if(W.kind===266){for(let Q of W.members)if(wre(Q)){let se=Mo(Q),Ee=AJ(Q).value,Ve=L7(Ee!==void 0?jAs(Ee,kg(l),se):tge(se));ol(se).declaredType=Ve,E.push(ty(Ve))}}}let D=E.length?Ta(E,1,l,void 0):tge(l);D.flags&1048576&&(D.flags|=1024,D.symbol=l),C.declaredType=D}return C.declaredType}function tge(l){let C=jG(32,l),E=jG(32,l);return C.regularType=C,C.freshType=E,E.regularType=C,E.freshType=E,C}function r5r(l){let C=ol(l);if(!C.declaredType){let E=N7(o_(l));C.declaredType||(C.declaredType=E)}return C.declaredType}function QY(l){let C=ol(l);return C.declaredType||(C.declaredType=q2(l))}function Rus(l){let C=ol(l);return C.declaredType||(C.declaredType=xp(qm(l)))}function xp(l){return n5r(l)||cr}function n5r(l){if(l.flags&96)return _C(l);if(l.flags&524288)return tF(l);if(l.flags&262144)return QY(l);if(l.flags&384)return N7(l);if(l.flags&8)return r5r(l);if(l.flags&2097152)return Rus(l)}function CZe(l){switch(l.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 CZe(l.elementType);case 183:return!l.typeArguments||l.typeArguments.every(CZe)}return!1}function Dus(l){let C=Kw(l);return!C||CZe(C)}function i5r(l){let C=fC(l);return C?CZe(C):!qw(l)}function xus(l){let C=rb(l),E=R1(l);return(l.kind===176||!!C&&CZe(C))&&l.parameters.every(i5r)&&E.every(Dus)}function kus(l){if(l.declarations&&l.declarations.length===1){let C=l.declarations[0];if(C)switch(C.kind){case 172:case 171:return i5r(C);case 174:case 173:case 176:case 177:case 178:return xus(C)}}return!1}function s5r(l,C,E){let D=Du();for(let W of l)D.set(W.escapedName,E&&kus(W)?W:W3t(W,C));return D}function o5r(l,C){for(let E of C){if(a5r(E))continue;let D=l.get(E.escapedName);(!D||D.valueDeclaration&&no(D.valueDeclaration)&&!$2(D)&&!ZRe(D.valueDeclaration))&&(l.set(E.escapedName,E),l.set(E.escapedName,E))}}function a5r(l){return!!l.valueDeclaration&&Rh(l.valueDeclaration)&&$u(l.valueDeclaration)}function VWt(l){if(!l.declaredProperties){let C=l.symbol,E=XV(C);l.declaredProperties=WV(E),l.declaredCallSignatures=v,l.declaredConstructSignatures=v,l.declaredIndexInfos=v,l.declaredCallSignatures=XY(E.get("__call")),l.declaredConstructSignatures=XY(E.get("__new")),l.declaredIndexInfos=G5r(C)}return l}function A$e(l){if(!xg(l)&&!hA(l))return!1;let C=xg(l)?l.expression:l.argumentExpression;return cp(C)&&x2(xg(l)?KN(l):iC(C))}function X0e(l){return l.charCodeAt(0)===95&&l.charCodeAt(1)===95&&l.charCodeAt(2)===64}function mZe(l){let C=vl(l);return!!C&&A$e(C)}function wre(l){return!jR(l)||mZe(l)}function Gus(l){return yce(l)&&!A$e(l)}function Fus(l,C,E){w.assert(!!(aI(l)&4096),"Expected a late-bound symbol."),l.flags|=E,ol(C.symbol).lateSymbol=l,l.declarations?C.symbol.isReplaceableByMethod||l.declarations.push(C):l.declarations=[C],E&111551&&(!l.valueDeclaration||l.valueDeclaration.kind!==C.kind)&&(l.valueDeclaration=C)}function c5r(l,C,E,D){w.assert(!!D.symbol,"The member is expected to have a symbol.");let W=Uo(D);if(!W.resolvedSymbol){W.resolvedSymbol=D.symbol;let Q=no(D)?D.left:D.name,se=hA(Q)?iC(Q.argumentExpression):KN(Q);if(x2(se)){let Ee=k2(se),Ve=D.symbol.flags,Oe=E.get(Ee);Oe||E.set(Ee,Oe=SA(0,Ee,4096));let ot=C&&C.get(Ee);if(!(l.flags&32)&&Oe.flags&x4(Ve)){let Wt=ot?vi(ot.declarations,Oe.declarations):Oe.declarations,Nt=!(se.flags&8192)&&Sc(Ee)||xd(Q);X(Wt,Mr=>fr(vl(Mr)||Mr,Z.Property_0_was_also_declared_here,Nt)),fr(Q||D,Z.Duplicate_property_0,Nt),Oe=SA(0,Ee,4096)}return Oe.links.nameType=se,Fus(Oe,D,Ve),Oe.parent?w.assert(Oe.parent===l,"Existing symbol parent should match new one"):Oe.parent=l,W.resolvedSymbol=Oe}}return W.resolvedSymbol}function WWt(l,C){let E=ol(l);if(!E[C]){let D=C==="resolvedExports",W=D?l.flags&1536?O4(l).exports:l.exports:l.members;E[C]=W||Be;let Q=Du();for(let Ve of l.declarations||v){let Oe=NRe(Ve);if(Oe)for(let ot of Oe)D===IC(ot)&&mZe(ot)&&c5r(l,W,Q,ot)}let se=fre(l).assignmentDeclarationMembers;if(se){let Ve=on(se.values());for(let Oe of Ve){let ot=CI(Oe),Wt=ot===3||no(Oe)&&fet(Oe,ot)||ot===9||ot===6;D===!Wt&&mZe(Oe)&&c5r(l,W,Q,Oe)}}let Ee=K2(W,Q);if(l.flags&33554432&&E.cjsExportMerged&&l.declarations)for(let Ve of l.declarations){let Oe=ol(Ve.symbol)[C];if(!Ee){Ee=Oe;continue}Oe&&Oe.forEach((ot,Wt)=>{let Nt=Ee.get(Wt);if(!Nt)Ee.set(Wt,ot);else{if(Nt===ot)return;Ee.set(Wt,QG(Nt,ot))}})}E[C]=Ee||Be}return E[C]}function XV(l){return l.flags&6256?WWt(l,"resolvedMembers"):l.members||Be}function d$e(l){if(l.flags&106500&&l.escapedName==="__computed"){let C=ol(l);if(!C.lateSymbol&&lr(l.declarations,mZe)){let E=GA(l.parent);lr(l.declarations,IC)?Y1(E):XV(E)}return C.lateSymbol||(C.lateSymbol=l)}return l}function JE(l,C,E){if(sa(l)&4){let D=l.target,W=of(l);return O(D.typeParameters)===O(W)?lL(D,vi(W,[C||D.thisType])):l}else if(l.flags&2097152){let D=Ar(l.types,W=>JE(W,C,E));return D!==l.types?Pg(D):l}return E?$0(l):l}function l5r(l,C,E,D){let W,Q,se,Ee,Ve;wi(E,D,0,E.length)?(Q=C.symbol?XV(C.symbol):Du(C.declaredProperties),se=C.declaredCallSignatures,Ee=C.declaredConstructSignatures,Ve=C.declaredIndexInfos):(W=qb(E,D),Q=s5r(C.declaredProperties,W,E.length===1),se=k$e(C.declaredCallSignatures,W),Ee=k$e(C.declaredConstructSignatures,W),Ve=FXr(C.declaredIndexInfos,W));let Oe=wa(C);if(Oe.length){if(C.symbol&&Q===XV(C.symbol)){let Wt=Du(C.declaredProperties),Nt=s3t(C.symbol);Nt&&Wt.set("__index",Nt),Q=Wt}pn(l,Q,se,Ee,Ve);let ot=qo(D);for(let Wt of Oe){let Nt=ot?JE(al(Wt,W),ot):Wt;o5r(Q,Id(Nt)),se=vi(se,Pu(Nt,0)),Ee=vi(Ee,Pu(Nt,1));let Mr=Nt!==Qt?ey(Nt):[hD(Jt,Qt,!1)];Ve=vi(Ve,Gt(Mr,ln=>!jWt(Ve,ln.keyType)))}}pn(l,Q,se,Ee,Ve)}function Zus(l){l5r(l,VWt(l),v,v)}function Lus(l){let C=VWt(l.target),E=vi(C.typeParameters,[C.thisType]),D=of(l),W=D.length===E.length?D:vi(D,[l]);l5r(l,C,E,W)}function qx(l,C,E,D,W,Q,se,Ee){let Ve=new R(gi,Ee);return Ve.declaration=l,Ve.typeParameters=C,Ve.parameters=D,Ve.thisParameter=E,Ve.resolvedReturnType=W,Ve.resolvedTypePredicate=Q,Ve.minArgumentCount=se,Ve.resolvedMinArgumentCount=void 0,Ve.target=void 0,Ve.mapper=void 0,Ve.compositeSignatures=void 0,Ve.compositeKind=void 0,Ve}function J0e(l){let C=qx(l.declaration,l.typeParameters,l.thisParameter,l.parameters,void 0,void 0,l.minArgumentCount,l.flags&167);return C.target=l.target,C.mapper=l.mapper,C.compositeSignatures=l.compositeSignatures,C.compositeKind=l.compositeKind,C}function u5r(l,C){let E=J0e(l);return E.compositeSignatures=C,E.compositeKind=1048576,E.target=void 0,E.mapper=void 0,E}function Vus(l,C){if((l.flags&24)===C)return l;l.optionalCallSignatureCache||(l.optionalCallSignatureCache={});let E=C===8?"inner":"outer";return l.optionalCallSignatureCache[E]||(l.optionalCallSignatureCache[E]=Wus(l,C))}function Wus(l,C){w.assert(C===8||C===16,"An optional call signature can either be for an inner call chain or an outer call chain, but not both.");let E=J0e(l);return E.flags|=C,E}function g5r(l,C){if(u0(l)){let W=l.parameters.length-1,Q=l.parameters[W].escapedName,se=lo(l.parameters[W]);if(aA(se))return[E(se,W,Q)];if(!C&&se.flags&1048576&&he(se.types,aA))return Ot(se.types,Ee=>E(Ee,W,Q))}return[l.parameters];function E(W,Q,se){let Ee=of(W),Ve=D(W,se),Oe=Ot(Ee,(ot,Wt)=>{let Nt=Ve&&Ve[Wt]?Ve[Wt]:fge(l,Q+Wt,W),Mr=W.target.elementFlags[Wt],ln=Mr&12?32768:Mr&2?16384:0,hn=SA(1,Nt,ln);return hn.links.type=Mr&4?L_(ot):ot,hn});return vi(l.parameters.slice(0,Q),Oe)}function D(W,Q){let se=new Map;return Ot(W.target.labeledElementDeclarations,(Ee,Ve)=>{let Oe=fOt(Ee,Ve,Q),ot=se.get(Oe);return ot===void 0?(se.set(Oe,1),Oe):(se.set(Oe,ot+1),`${Oe}_${ot}`)})}}function Pus(l){let C=is(l),E=Pu(C,1),D=DB(l.symbol),W=!!D&&ba(D,64);if(E.length===0)return[qx(void 0,l.localTypeParameters,void 0,v,l,void 0,0,W?4:0)];let Q=HP(l),se=so(Q),Ee=TZe(Q),Ve=O(Ee),Oe=[];for(let ot of E){let Wt=XN(ot.typeParameters),Nt=O(ot.typeParameters);if(se||Ve>=Wt&&Ve<=Nt){let Mr=Nt?C$e(ot,UV(Ee,ot.typeParameters,Wt,se)):J0e(ot);Mr.typeParameters=l.localTypeParameters,Mr.resolvedReturnType=l,Mr.flags=W?Mr.flags|4:Mr.flags&-5,Oe.push(Mr)}}return Oe}function p$e(l,C,E,D,W){for(let Q of l)if(QZe(Q,C,E,D,W,E?fds:sye))return Q}function Ous(l,C,E){if(C.typeParameters){if(E>0)return;for(let W=1;W1&&(E=E===void 0?D:-1);for(let W of l[D])if(!C||!p$e(C,W,!1,!1,!0)){let Q=Ous(l,W,D);if(Q){let se=W;if(Q.length>1){let Ee=W.thisParameter,Ve=X(Q,Oe=>Oe.thisParameter);if(Ve){let Oe=Pg(tr(Q,ot=>ot.thisParameter&&lo(ot.thisParameter)));Ee=tJ(Ve,Oe)}se=u5r(W,Q),se.thisParameter=Ee}(C||(C=[])).push(se)}}}if(!O(C)&&E!==-1){let D=l[E!==void 0?E:0],W=D.slice();for(let Q of l)if(Q!==D){let se=Q[0];if(w.assert(!!se,"getUnionSignatures bails early on empty signature lists and should not have empty lists on second pass"),W=se.typeParameters&&lr(W,Ee=>!!Ee.typeParameters&&!A5r(se.typeParameters,Ee.typeParameters))?void 0:Ot(W,Ee=>Yus(Ee,se)),!W)break}C=W}return C||v}function A5r(l,C){if(O(l)!==O(C))return!1;if(!l||!C)return!0;let E=qb(C,l);for(let D=0;D=W?l:C,se=Q===l?C:l,Ee=Q===l?D:W,Ve=bD(l)||bD(C),Oe=Ve&&!bD(Q),ot=new Array(Ee+(Oe?1:0));for(let Wt=0;Wt=$N(Q)&&Wt>=$N(se),Ti=Wt>=D?void 0:fge(l,Wt),ks=Wt>=W?void 0:fge(C,Wt),Wo=Ti===ks?Ti:Ti?ks?void 0:Ti:ks,Yi=SA(1|(mi&&!hn?16777216:0),Wo||`arg${Wt}`,hn?32768:mi?16384:0);Yi.links.type=hn?L_(ln):ln,ot[Wt]=Yi}if(Oe){let Wt=SA(1,"args",32768);Wt.links.type=L_(vT(se,Ee)),se===C&&(Wt.links.type=al(Wt.links.type,E)),ot[Ee]=Wt}return ot}function Yus(l,C){let E=l.typeParameters||C.typeParameters,D;l.typeParameters&&C.typeParameters&&(D=qb(C.typeParameters,l.typeParameters));let W=l.declaration,Q=Qus(l,C,D),se=Mus(l.thisParameter,C.thisParameter,D),Ee=Math.max(l.minArgumentCount,C.minArgumentCount),Ve=qx(W,E,se,Q,void 0,void 0,Ee,(l.flags|C.flags)&167);return Ve.compositeKind=1048576,Ve.compositeSignatures=vi(l.compositeKind!==2097152&&l.compositeSignatures||[l],[C]),D?Ve.mapper=l.compositeKind!==2097152&&l.mapper&&l.compositeSignatures?qY(l.mapper,D):D:l.compositeKind!==2097152&&l.mapper&&l.compositeSignatures&&(Ve.mapper=l.mapper),Ve}function d5r(l){let C=ey(l[0]);if(C){let E=[];for(let D of C){let W=D.keyType;he(l,Q=>!!$x(Q,W))&&E.push(hD(W,Ta(Ot(l,Q=>JP(Q,W))),lr(l,Q=>$x(Q,W).isReadonly)))}return E}return v}function Hus(l){let C=PWt(Ot(l.types,W=>W===qC?[tt]:Pu(W,0))),E=PWt(Ot(l.types,W=>Pu(W,1))),D=d5r(l.types);pn(l,Be,C,E,D)}function hZe(l,C){return l?C?Pg([l,C]):l:C}function p5r(l){let C=ft(l,D=>Pu(D,1).length>0),E=Ot(l,IZe);if(C>0&&C===ft(E,D=>D)){let D=E.indexOf(!0);E[D]=!1}return E}function Xus(l,C,E,D){let W=[];for(let Q=0;QEe);for(let Ee=0;Ee0&&(Oe=Ot(Oe,ot=>{let Wt=J0e(ot);return Wt.resolvedReturnType=Xus(Sd(ot),W,Q,Ee),Wt})),E=f5r(E,Oe)}C=f5r(C,Pu(Ve,0)),D=Td(ey(Ve),(Oe,ot)=>I5r(Oe,ot,!1),D)}pn(l,Be,C||v,E||v,D||v)}function f5r(l,C){for(let E of C)(!l||he(l,D=>!QZe(D,E,!1,!1,!1,sye)))&&(l=Hr(l,E));return l}function I5r(l,C,E){if(l)for(let D=0;D{var Ve;!(Ee.flags&418)&&!(Ee.flags&512&&((Ve=Ee.declarations)!=null&&Ve.length)&&he(Ee.declarations,Yf))&&se.set(Ee.escapedName,Ee)}),E=se}let W;if(pn(l,E,v,v,v),C.flags&32){let se=_C(C),Ee=is(se);Ee.flags&11272192?(E=Du(_t(E)),o5r(E,Id(Ee))):Ee===Qt&&(W=hD(Jt,Qt,!1))}let Q=m$e(E);if(Q?D=o3t(Q):(W&&(D=Hr(D,W)),C.flags&384&&(xp(C).flags&32||lr(l.properties,se=>!!(lo(se).flags&296)))&&(D=Hr(D,Ri))),pn(l,E,v,v,D||v),C.flags&8208&&(l.callSignatures=XY(C)),C.flags&32){let se=_C(C),Ee=C.members?XY(C.members.get("__constructor")):v;C.flags&16&&(Ee=ai(Ee.slice(),tr(l.callSignatures,Ve=>qN(Ve.declaration)?qx(Ve.declaration,Ve.typeParameters,Ve.thisParameter,Ve.parameters,se,void 0,Ve.minArgumentCount,Ve.flags&167):void 0))),Ee.length||(Ee=Pus(se)),l.constructSignatures=Ee}}function Kus(l,C,E){return al(l,qb([C.indexType,C.objectType],[dw(0),_D([E])]))}function jus(l){let C=eB(l.mappedType);if(!(C.flags&1048576||C.flags&2097152))return;let E=C.flags&1048576?C.origin:C;if(!E||!(E.flags&2097152))return;let D=Pg(E.types.filter(W=>W!==l.constraintType));return D!==Vi?D:void 0}function zus(l){let C=$x(l.source,Jt),E=CD(l.mappedType),D=!(E&1),W=E&4?0:16777216,Q=C?[hD(Jt,tet(C.type,l.mappedType,l.constraintType)||Kr,D&&C.isReadonly)]:v,se=Du(),Ee=jus(l);for(let Ve of Id(l.source)){if(Ee){let Wt=k7(Ve,8576);if(!yg(Wt,Ee))continue}let Oe=8192|(D&&ST(Ve)?8:0),ot=SA(4|Ve.flags&W,Ve.escapedName,Oe);if(ot.declarations=Ve.declarations,ot.links.nameType=ol(Ve).nameType,ot.links.propertyType=lo(Ve),l.constraintType.type.flags&8388608&&l.constraintType.type.objectType.flags&262144&&l.constraintType.type.indexType.flags&262144){let Wt=l.constraintType.type.objectType,Nt=Kus(l.mappedType,l.constraintType.type,Wt);ot.links.mappedType=Nt,ot.links.constraintType=JN(Wt)}else ot.links.mappedType=l.mappedType,ot.links.constraintType=l.constraintType;se.set(Ve.escapedName,ot)}pn(l,se,v,v,Q)}function _Ze(l){if(l.flags&4194304){let C=$0(l.type);return eW(C)?oXr(C):JN(C)}if(l.flags&16777216){if(l.root.isDistributive){let C=l.checkType,E=_Ze(C);if(E!==C)return P3t(l,$4(l.root.checkType,E,l.mapper),!1)}return l}if(l.flags&1048576)return Of(l,_Ze,!0);if(l.flags&2097152){let C=l.types;return C.length===2&&C[0].flags&76&&C[1]===f0?l:Pg(Ar(l.types,_Ze))}return l}function OWt(l){return aI(l)&4096}function MWt(l,C,E,D){for(let W of Id(l))D(k7(W,C));if(l.flags&1)D(Jt);else for(let W of ey(l))(!E||W.keyType.flags&134217732)&&D(W.keyType)}function qus(l){let C=Du(),E;pn(l,Be,v,v,v);let D=_T(l),W=eB(l),Q=l.target||l,se=cL(Q),Ee=f$e(Q)!==2,Ve=rF(Q),Oe=$0(YY(l)),ot=CD(l);Tre(l)?MWt(Oe,8576,!1,Nt):sJ(_Ze(W),Nt),pn(l,C,v,v,E||v);function Nt(ln){let hn=se?al(se,rye(l.mapper,D,ln)):ln;sJ(hn,mi=>Mr(ln,mi))}function Mr(ln,hn){if(x2(hn)){let mi=k2(hn),Ti=C.get(mi);if(Ti)Ti.links.nameType=Ta([Ti.links.nameType,hn]),Ti.links.keyType=Ta([Ti.links.keyType,ln]);else{let ks=x2(ln)?_g(Oe,k2(ln)):void 0,Wo=!!(ot&4||!(ot&8)&&ks&&ks.flags&16777216),Yi=!!(ot&1||!(ot&2)&&ks&&ST(ks)),Cs=nt&&!Wo&&ks&&ks.flags&16777216,Ds=ks?OWt(ks):0,zo=SA(4|(Wo?16777216:0),mi,Ds|262144|(Yi?8:0)|(Cs?524288:0));zo.links.mappedType=l,zo.links.nameType=hn,zo.links.keyType=ln,ks&&(zo.links.syntheticOrigin=ks,zo.declarations=Ee?ks.declarations:void 0),C.set(mi,zo)}}else if(h$e(hn)||hn.flags&33){let mi=hn.flags&5?Jt:hn.flags&40?bt:hn,Ti=al(Ve,rye(l.mapper,D,ln)),ks=U0e(Oe,hn),Wo=!!(ot&1||!(ot&2)&&ks?.isReadonly),Yi=hD(mi,Ti,Wo);E=I5r(E,Yi,!0)}}}function $us(l){var C;if(!l.links.type){let E=l.links.mappedType;if(!Hv(l,0))return E.containsError=!0,cr;let D=rF(E.target||E),W=rye(E.mapper,_T(E),l.links.keyType),Q=al(D,W),se=nt&&l.flags&16777216&&!UI(Q,49152)?tW(Q,!0):l.links.checkFlags&524288?j$e(Q):Q;pD()||(fr(ue,Z.Type_of_property_0_circularly_references_itself_in_mapped_type_1,qc(l),Xs(E)),se=cr),(C=l.links).type??(C.type=se)}return l.links.type}function _T(l){return l.typeParameter||(l.typeParameter=QY(Mo(l.declaration.typeParameter)))}function eB(l){return l.constraintType||(l.constraintType=By(_T(l))||cr)}function cL(l){return l.declaration.nameType?l.nameType||(l.nameType=al(Lc(l.declaration.nameType),l.mapper)):void 0}function rF(l){return l.templateType||(l.templateType=l.declaration.type?al(hg(Lc(l.declaration.type),!0,!!(CD(l)&4)),l.mapper):cr)}function C5r(l){return Kw(l.declaration.typeParameter)}function Tre(l){let C=C5r(l);return C.kind===198&&C.operator===143}function YY(l){if(!l.modifiersType)if(Tre(l))l.modifiersType=al(Lc(C5r(l).type),l.mapper);else{let C=R3t(l.declaration),E=eB(C),D=E&&E.flags&262144?By(E):E;l.modifiersType=D&&D.flags&4194304?al(D.type,l.mapper):Kr}return l.modifiersType}function CD(l){let C=l.declaration;return(C.readonlyToken?C.readonlyToken.kind===41?2:1:0)|(C.questionToken?C.questionToken.kind===41?8:4:0)}function m5r(l){let C=CD(l);return C&8?-1:C&4?1:0}function rge(l){if(sa(l)&32)return m5r(l)||rge(YY(l));if(l.flags&2097152){let C=rge(l.types[0]);return he(l.types,(E,D)=>D===0||rge(E)===C)?C:0}return 0}function egs(l){return!!(sa(l)&32&&CD(l)&4)}function jb(l){if(sa(l)&32){let C=eB(l);if(q4(C))return!0;let E=cL(l);if(E&&q4(al(E,zY(_T(l),C))))return!0}return!1}function f$e(l){let C=cL(l);return C?yg(C,_T(l))?1:2:0}function yT(l){return l.members||(l.flags&524288?l.objectFlags&4?Lus(l):l.objectFlags&3?Zus(l):l.objectFlags&1024?zus(l):l.objectFlags&16?Uus(l):l.objectFlags&32?qus(l):w.fail("Unhandled object type "+w.formatObjectFlags(l.objectFlags)):l.flags&1048576?Hus(l):l.flags&2097152?Jus(l):w.fail("Unhandled type "+w.formatTypeFlags(l.flags))),l}function JV(l){return l.flags&524288?yT(l).properties:v}function HY(l,C){if(l.flags&524288){let D=yT(l).members.get(C);if(D&&AD(D))return D}}function yZe(l){if(!l.resolvedProperties){let C=Du();for(let E of l.types){for(let D of Id(E))if(!C.has(D.escapedName)){let W=EZe(l,D.escapedName,!!(l.flags&2097152));W&&C.set(D.escapedName,W)}if(l.flags&1048576&&ey(E).length===0)break}l.resolvedProperties=WV(C)}return l.resolvedProperties}function Id(l){return l=nge(l),l.flags&3145728?yZe(l):JV(l)}function tgs(l,C){l=nge(l),l.flags&3670016&&yT(l).members.forEach((E,D)=>{ce(E,D)&&C(E,D)})}function rgs(l,C){return C.properties.some(D=>{let W=D.name&&(oT(D.name)?pb(YS(D.name)):AL(D.name)),Q=W&&x2(W)?k2(W):void 0,se=Q===void 0?void 0:ZI(l,Q);return!!se&&cye(se)&&!yg(H7(D),se)})}function ngs(l){let C=Ta(l);if(!(C.flags&1048576))return $Ot(C);let E=Du();for(let D of l)for(let{escapedName:W}of $Ot(D))if(!E.has(W)){let Q=v5r(C,W);Q&&E.set(W,Q)}return on(E.values())}function H4(l){return l.flags&262144?By(l):l.flags&8388608?sgs(l):l.flags&16777216?y5r(l):a_(l)}function By(l){return bZe(l)?sge(l):void 0}function igs(l,C){let E=nye(l);return!!E&&X4(E,C)}function X4(l,C=0){var E;return C<5&&!!(l&&(l.flags&262144&&lr((E=l.symbol)==null?void 0:E.declarations,D=>ba(D,4096))||l.flags&3145728&&lr(l.types,D=>X4(D,C))||l.flags&8388608&&X4(l.objectType,C+1)||l.flags&16777216&&X4(y5r(l),C+1)||l.flags&33554432&&X4(l.baseType,C)||sa(l)&32&&igs(l,C)||eW(l)&&ke(UY(l),(D,W)=>!!(l.target.elementFlags[W]&8)&&X4(D,C))>=0))}function sgs(l){return bZe(l)?ogs(l):void 0}function QWt(l){let C=nF(l,!1);return C!==l?C:H4(l)}function ogs(l){if(JWt(l))return w$e(l.objectType,l.indexType);let C=QWt(l.indexType);if(C&&C!==l.indexType){let D=jV(l.objectType,C,l.accessFlags);if(D)return D}let E=QWt(l.objectType);if(E&&E!==l.objectType)return jV(E,l.indexType,l.accessFlags)}function YWt(l){if(!l.resolvedDefaultConstraint){let C=HAs(l),E=jP(l);l.resolvedDefaultConstraint=vd(C)?E:vd(E)?C:Ta([C,E])}return l.resolvedDefaultConstraint}function h5r(l){if(l.resolvedConstraintOfDistributive!==void 0)return l.resolvedConstraintOfDistributive||void 0;if(l.root.isDistributive&&l.restrictiveInstantiation!==l){let C=nF(l.checkType,!1),E=C===l.checkType?H4(C):C;if(E&&E!==l.checkType){let D=P3t(l,$4(l.root.checkType,E,l.mapper),!0);if(!(D.flags&131072))return l.resolvedConstraintOfDistributive=D,D}}l.resolvedConstraintOfDistributive=!1}function _5r(l){return h5r(l)||YWt(l)}function y5r(l){return bZe(l)?_5r(l):void 0}function ags(l,C){let E,D=!1;for(let W of l)if(W.flags&465829888){let Q=H4(W);for(;Q&&Q.flags&21233664;)Q=H4(Q);Q&&(E=Hr(E,Q),C&&(E=Hr(E,W)))}else(W.flags&469892092||yD(W))&&(D=!0);if(E&&(C||D)){if(D)for(let W of l)(W.flags&469892092||yD(W))&&(E=Hr(E,W));return PZe(Pg(E,2),!1)}}function a_(l){if(l.flags&464781312||eW(l)){let C=HWt(l);return C!==Yd&&C!==zA?C:void 0}return l.flags&4194304?ki:void 0}function mD(l){return a_(l)||l}function bZe(l){return HWt(l)!==zA}function HWt(l){if(l.resolvedBaseConstraint)return l.resolvedBaseConstraint;let C=[];return l.resolvedBaseConstraint=E(l);function E(Q){if(!Q.immediateBaseConstraint){if(!Hv(Q,4))return zA;let se,Ee=Y$e(Q);if((C.length<10||C.length<50&&!Ue(C,Ee))&&(C.push(Ee),se=W(nF(Q,!1)),C.pop()),!pD()){if(Q.flags&262144){let Ve=_$e(Q);if(Ve){let Oe=fr(Ve,Z.Type_parameter_0_has_a_circular_constraint,Xs(Q));ue&&!tV(Ve,ue)&&!tV(ue,Ve)&&eg(Oe,Us(ue,Z.Circularity_originates_in_type_at_this_location))}}se=zA}Q.immediateBaseConstraint??(Q.immediateBaseConstraint=se||Yd)}return Q.immediateBaseConstraint}function D(Q){let se=E(Q);return se!==Yd&&se!==zA?se:void 0}function W(Q){if(Q.flags&262144){let se=sge(Q);return Q.isThisType||!se?se:D(se)}if(Q.flags&3145728){let se=Q.types,Ee=[],Ve=!1;for(let Oe of se){let ot=D(Oe);ot?(ot!==Oe&&(Ve=!0),Ee.push(ot)):Ve=!0}return Ve?Q.flags&1048576&&Ee.length===se.length?Ta(Ee):Q.flags&2097152&&Ee.length?Pg(Ee):void 0:Q}if(Q.flags&4194304)return ki;if(Q.flags&134217728){let se=Q.types,Ee=tr(se,D);return Ee.length===se.length?K4(Q.texts,Ee):Jt}if(Q.flags&268435456){let se=D(Q.type);return se&&se!==Q.type?G7(Q.symbol,se):Jt}if(Q.flags&8388608){if(JWt(Q))return D(w$e(Q.objectType,Q.indexType));let se=D(Q.objectType),Ee=D(Q.indexType),Ve=se&&Ee&&jV(se,Ee,Q.accessFlags);return Ve&&D(Ve)}if(Q.flags&16777216){let se=_5r(Q);return se&&D(se)}if(Q.flags&33554432)return D(g3t(Q));if(eW(Q)){let se=Ot(UY(Q),(Ee,Ve)=>{let Oe=Ee.flags&262144&&Q.target.elementFlags[Ve]&8&&D(Ee)||Ee;return Oe!==Ee&&eE(Oe,ot=>qP(ot)&&!eW(ot))?Oe:Ee});return _D(se,Q.target.elementFlags,Q.target.readonly,Q.target.labeledElementDeclarations)}return Q}}function cgs(l,C){if(l===C)return l.resolvedApparentType||(l.resolvedApparentType=JE(l,C,!0));let E=`I${Gh(l)},${Gh(C)}`;return vP(E)??KZ(E,JE(l,C,!0))}function XWt(l){if(l.default)l.default===di&&(l.default=zA);else if(l.target){let C=XWt(l.target);l.default=C?al(C,l.mapper):Yd}else{l.default=di;let C=l.symbol&&X(l.symbol.declarations,D=>qp(D)&&D.default),E=C?Lc(C):Yd;l.default===di&&(l.default=E)}return l.default}function J4(l){let C=XWt(l);return C!==Yd&&C!==zA?C:void 0}function lgs(l){return XWt(l)!==zA}function b5r(l){return!!(l.symbol&&X(l.symbol.declarations,C=>qp(C)&&C.default))}function E5r(l){return l.resolvedApparentType||(l.resolvedApparentType=ugs(l))}function ugs(l){let C=l.target??l,E=nye(C);if(E&&!C.declaration.nameType){let D=YY(l),W=jb(D)?E5r(D):a_(D);if(W&&eE(W,Q=>qP(Q)||B5r(Q)))return al(C,$4(E,W,l.mapper))}return l}function B5r(l){return!!(l.flags&2097152)&&he(l.types,qP)}function JWt(l){let C;return!!(l.flags&8388608&&sa(C=l.objectType)&32&&!jb(C)&&q4(l.indexType)&&!(CD(C)&8)&&!C.declaration.nameType)}function $0(l){let C=l.flags&465829888?a_(l)||Kr:l,E=sa(C);return E&32?E5r(C):E&4&&C!==l?JE(C,l):C.flags&2097152?cgs(C,l):C.flags&402653316?Nl:C.flags&296?vA:C.flags&2112?Kgs():C.flags&528?PA:C.flags&12288?z5r():C.flags&67108864?Zc:C.flags&4194304?ki:C.flags&2&&!nt?Zc:C}function nge(l){return bT($0(bT(l)))}function v5r(l,C,E){var D,W,Q;let se,Ee,Ve,Oe=l.flags&1048576,ot,Wt=4,Nt=Oe?0:8,Mr=!1;for(let zo of l.types){let ma=$0(zo);if(!(OA(ma)||ma.flags&131072)){let ha=_g(ma,C,E),Tg=ha?L1(ha):0;if(ha){if(ha.flags&106500&&(ot??(ot=Oe?0:16777216),Oe?ot|=ha.flags&16777216:ot&=ha.flags),!se)se=ha;else if(ha!==se)if((Hre(ha)||ha)===(Hre(se)||se)&&z3t(se,ha,(FA,ou)=>FA===ou?-1:0)===-1)Mr=!!se.parent&&!!O(aL(se.parent));else{Ee||(Ee=new Map,Ee.set(kg(se),se));let FA=kg(ha);Ee.has(FA)||Ee.set(FA,ha)}Oe&&ST(ha)?Nt|=8:!Oe&&!ST(ha)&&(Nt&=-9),Nt|=(Tg&6?0:256)|(Tg&4?512:0)|(Tg&2?1024:0)|(Tg&256?2048:0),XPt(ha)||(Wt=2)}else if(Oe){let Ou=!X0e(C)&&D7(ma,C);Ou?(Nt|=32|(Ou.isReadonly?8:0),Ve=Hr(Ve,aA(ma)?J$e(ma)||wn:Ou.type)):tO(ma)&&!(sa(ma)&2097152)?(Nt|=32,Ve=Hr(Ve,wn)):Nt|=16}}}if(!se||Oe&&(Ee||Nt&48)&&Nt&1536&&!(Ee&&ggs(Ee.values())))return;if(!Ee&&!(Nt&16)&&!Ve)if(Mr){let zo=(D=eo(se,vB))==null?void 0:D.links,ma=tJ(se,zo?.type);return ma.parent=(Q=(W=se.valueDeclaration)==null?void 0:W.symbol)==null?void 0:Q.parent,ma.links.containingType=l,ma.links.mapper=zo?.mapper,ma.links.writeType=YP(se),ma}else return se;let ln=Ee?on(Ee.values()):[se],hn,mi,Ti,ks=[],Wo,Yi,Cs=!1;for(let zo of ln){Yi?zo.valueDeclaration&&zo.valueDeclaration!==Yi&&(Cs=!0):Yi=zo.valueDeclaration,hn=ai(hn,zo.declarations);let ma=lo(zo);mi||(mi=ma,Ti=ol(zo).nameType);let ha=YP(zo);(Wo||ha!==ma)&&(Wo=Hr(Wo||ks.slice(),ha)),ma!==mi&&(Nt|=64),(cye(ma)||j4(ma))&&(Nt|=128),ma.flags&131072&&ma!==kd&&(Nt|=131072),ks.push(ma)}ai(ks,Ve);let Ds=SA(4|(ot??0),C,Wt|Nt);return Ds.links.containingType=l,!Cs&&Yi&&(Ds.valueDeclaration=Yi,Yi.symbol.parent&&(Ds.parent=Yi.symbol.parent)),Ds.declarations=hn,Ds.links.nameType=Ti,ks.length>2?(Ds.links.checkFlags|=65536,Ds.links.deferralParent=l,Ds.links.deferralConstituents=ks,Ds.links.deferralWriteConstituents=Wo):(Ds.links.type=Oe?Ta(ks):Pg(ks),Wo&&(Ds.links.writeType=Oe?Ta(Wo):Pg(Wo))),Ds}function S5r(l,C,E){var D,W,Q;let se=E?(D=l.propertyCacheWithoutObjectFunctionPropertyAugment)==null?void 0:D.get(C):(W=l.propertyCache)==null?void 0:W.get(C);return se||(se=v5r(l,C,E),se&&((E?l.propertyCacheWithoutObjectFunctionPropertyAugment||(l.propertyCacheWithoutObjectFunctionPropertyAugment=Du()):l.propertyCache||(l.propertyCache=Du())).set(C,se),E&&!(aI(se)&48)&&!((Q=l.propertyCache)!=null&&Q.get(C))&&(l.propertyCache||(l.propertyCache=Du())).set(C,se))),se}function ggs(l){let C;for(let E of l){if(!E.declarations)return;if(!C){C=new Set(E.declarations);continue}if(C.forEach(D=>{Ue(E.declarations,D)||C.delete(D)}),C.size===0)return}return C}function EZe(l,C,E){let D=S5r(l,C,E);return D&&!(aI(D)&16)?D:void 0}function bT(l){return l.flags&1048576&&l.objectFlags&16777216?l.resolvedReducedType||(l.resolvedReducedType=Ags(l)):l.flags&2097152?(l.objectFlags&16777216||(l.objectFlags|=16777216|(lr(yZe(l),dgs)?33554432:0)),l.objectFlags&33554432?Vi:l):l}function Ags(l){let C=Ar(l.types,bT);if(C===l.types)return l;let E=Ta(C);return E.flags&1048576&&(E.resolvedReducedType=E),E}function dgs(l){return w5r(l)||T5r(l)}function w5r(l){return!(l.flags&16777216)&&(aI(l)&131264)===192&&!!(lo(l).flags&131072)}function T5r(l){return!l.valueDeclaration&&!!(aI(l)&1024)}function UWt(l){return!!(l.flags&1048576&&l.objectFlags&16777216&&lr(l.types,UWt)||l.flags&2097152&&pgs(l))}function pgs(l){let C=l.uniqueLiteralFilledInstantiation||(l.uniqueLiteralFilledInstantiation=al(l,Tl));return bT(C)!==C}function KWt(l,C){if(C.flags&2097152&&sa(C)&33554432){let E=be(yZe(C),w5r);if(E)return su(l,Z.The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents,Xs(C,void 0,536870912),qc(E));let D=be(yZe(C),T5r);if(D)return su(l,Z.The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some,Xs(C,void 0,536870912),qc(D))}return l}function _g(l,C,E,D){var W,Q;if(l=nge(l),l.flags&524288){let se=yT(l),Ee=se.members.get(C);if(Ee&&!D&&((W=l.symbol)==null?void 0:W.flags)&512&&((Q=ol(l.symbol).typeOnlyExportStarMap)!=null&&Q.has(C)))return;if(Ee&&AD(Ee,D))return Ee;if(E)return;let Ve=se===hf?qC:se.callSignatures.length?Q2:se.constructSignatures.length?qt:void 0;if(Ve){let Oe=HY(Ve,C);if(Oe)return Oe}return HY(GI,C)}if(l.flags&2097152){let se=EZe(l,C,!0);return se||(E?void 0:EZe(l,C,E))}if(l.flags&1048576)return EZe(l,C,E)}function BZe(l,C){if(l.flags&3670016){let E=yT(l);return C===0?E.callSignatures:E.constructSignatures}return v}function Pu(l,C){let E=BZe(nge(l),C);if(C===0&&!O(E)&&l.flags&1048576){if(l.arrayFallbackSignatures)return l.arrayFallbackSignatures;let D;if(eE(l,W=>{var Q;return!!((Q=W.symbol)!=null&&Q.parent)&&fgs(W.symbol.parent)&&(D?D===W.symbol.escapedName:(D=W.symbol.escapedName,!0))})){let W=Of(l,se=>dL((N5r(se.symbol.parent)?Bs:Fn).typeParameters[0],se.mapper)),Q=L_(W,Kv(l,se=>N5r(se.symbol.parent)));return l.arrayFallbackSignatures=Pu(ZI(Q,D),C)}l.arrayFallbackSignatures=E}return E}function fgs(l){return!l||!Fn.symbol||!Bs.symbol?!1:!!lw(l,Fn.symbol)||!!lw(l,Bs.symbol)}function N5r(l){return!l||!Bs.symbol?!1:!!lw(l,Bs.symbol)}function jWt(l,C){return be(l,E=>E.keyType===C)}function zWt(l,C){let E,D,W;for(let Q of l)Q.keyType===Jt?E=Q:R7(C,Q.keyType)&&(D?(W||(W=[D])).push(Q):D=Q);return W?hD(Kr,Pg(Ot(W,Q=>Q.type)),Td(W,(Q,se)=>Q&&se.isReadonly,!0)):D||(E&&R7(C,Jt)?E:void 0)}function R7(l,C){return yg(l,C)||C===Jt&&yg(l,bt)||C===bt&&(l===hu||!!(l.flags&128)&&yN(l.value))}function qWt(l){return l.flags&3670016?yT(l).indexInfos:v}function ey(l){return qWt(nge(l))}function $x(l,C){return jWt(ey(l),C)}function JP(l,C){var E;return(E=$x(l,C))==null?void 0:E.type}function $Wt(l,C){return ey(l).filter(E=>R7(C,E.keyType))}function U0e(l,C){return zWt(ey(l),C)}function D7(l,C){return U0e(l,X0e(C)?Es:pb(Sc(C)))}function R5r(l){var C;let E;for(let D of R1(l))E=sg(E,QY(D.symbol));return E?.length?E:mp(l)?(C=ige(l))==null?void 0:C.typeParameters:void 0}function e3t(l){let C=[];return l.forEach((E,D)=>{Q4(D)||C.push(E)}),C}function t3t(l,C){if(Jl(l))return;let E=Z_(kt,'"'+l+'"',512);return E&&C?GA(E):E}function r3t(l){return kQ(l)||Jee(l)||Jc(l)&&ple(l)}function vZe(l){if(r3t(l))return!0;if(!Jc(l))return!1;if(l.initializer){let E=tB(l.parent),D=l.parent.parameters.indexOf(l);return w.assert(D>=0),D>=$N(E,3)}let C=z9(l.parent);return C?!l.type&&!l.dotDotDotToken&&l.parent.parameters.indexOf(l)>=Ret(C).length:!1}function Igs(l){return Ql(l)&&!PS(l)&&l.questionToken}function K0e(l,C,E,D){return{kind:l,parameterName:C,parameterIndex:E,type:D}}function XN(l){let C=0;if(l)for(let E=0;E=E&&Q<=W){let se=l?l.slice():[];for(let Ve=Q;VeVe.arguments.length&&!Ti||(W=E.length)}if((l.kind===177||l.kind===178)&&wre(l)&&(!Ee||!Q)){let ln=l.kind===177?178:177,hn=zd(Mo(l),ln);hn&&(Q=w7(hn))}se&&se.typeExpression&&(Q=tJ(SA(1,"this"),Lc(se.typeExpression)));let Wt=xG(l)?SZ(l):l,Nt=Wt&&Rf(Wt)?_C(GA(Wt.parent.symbol)):void 0,Mr=Nt?Nt.localTypeParameters:R5r(l);(S$(l)||so(l)&&Cgs(l,E))&&(D|=1),(H(l)&&ba(l,64)||Rf(l)&&ba(l.parent,64))&&(D|=4),C.resolvedSignature=qx(l,Mr,Q,E,void 0,void 0,W,D)}return C.resolvedSignature}function Cgs(l,C){if(xG(l)||!n3t(l))return!1;let E=qo(l.parameters),D=E?WR(E):bx(l).filter(FB),W=le(D,se=>se.typeExpression&&Xxe(se.typeExpression.type)?se.typeExpression.type:void 0),Q=SA(3,"args",32768);return W?Q.links.type=L_(Lc(W.type)):(Q.links.checkFlags|=65536,Q.links.deferralParent=Vi,Q.links.deferralConstituents=[rp],Q.links.deferralWriteConstituents=[rp]),W&&C.pop(),C.push(Q),!0}function ige(l){if(!(so(l)&&dd(l)))return;let C=_x(l);return C?.typeExpression&&lJ(Lc(C.typeExpression))}function mgs(l,C){let E=ige(l);if(!E)return;let D=l.parameters.indexOf(C);return C.dotDotDotToken?_Le(E,D):vT(E,D)}function hgs(l){let C=ige(l);return C&&Sd(C)}function n3t(l){let C=Uo(l);return C.containsArgumentsReference===void 0&&(C.flags&512?C.containsArgumentsReference=!0:C.containsArgumentsReference=E(l.body)),C.containsArgumentsReference;function E(D){if(!D)return!1;switch(D.kind){case 80:return D.escapedText===jt.escapedName&&Gye(D)===jt;case 172:case 174:case 177:case 178:return D.name.kind===167&&E(D.name);case 211:case 212:return E(D.expression);case 303:return E(D.initializer);default:return!Eme(D)&&!LS(D)&&!!mu(D,E)}}}function XY(l){if(!l||!l.declarations)return v;let C=[];for(let E=0;E0&&D.body){let W=l.declarations[E-1];if(D.parent===W.parent&&D.kind===W.kind&&D.pos===W.end)continue}if(so(D)&&D.jsDoc){let W=pme(D);if(O(W)){for(let Q of W){let se=Q.typeExpression;se.type===void 0&&!Rf(D)&&eO(se,Qt),C.push(tB(se))}continue}}C.push(!vG(D)&&!TB(D)&&ige(D)||tB(D))}}return C}function D5r(l){let C=z0(l,l);if(C){let E=db(C);if(E)return lo(E)}return Qt}function UP(l){if(l.thisParameter)return lo(l.thisParameter)}function HB(l){if(!l.resolvedTypePredicate){if(l.target){let C=HB(l.target);l.resolvedTypePredicate=C?sds(C,l.mapper):kI}else if(l.compositeSignatures)l.resolvedTypePredicate=_As(l.compositeSignatures,l.compositeKind)||kI;else{let C=l.declaration&&rb(l.declaration),E;if(!C){let D=ige(l.declaration);D&&l!==D&&(E=HB(D))}if(C||E)l.resolvedTypePredicate=C&&S(C)?_gs(C,l):E||kI;else if(l.declaration&&dd(l.declaration)&&(!l.resolvedReturnType||l.resolvedReturnType.flags&16)&&tE(l)>0){let{declaration:D}=l;l.resolvedTypePredicate=kI,l.resolvedTypePredicate=tms(D)||kI}else l.resolvedTypePredicate=kI}w.assert(!!l.resolvedTypePredicate)}return l.resolvedTypePredicate===kI?void 0:l.resolvedTypePredicate}function _gs(l,C){let E=l.parameterName,D=l.type&&Lc(l.type);return E.kind===197?K0e(l.assertsModifier?2:0,void 0,void 0,D):K0e(l.assertsModifier?3:1,E.escapedText,ke(C.parameters,W=>W.escapedName===E.escapedText),D)}function x5r(l,C,E){return C!==2097152?Ta(l,E):Pg(l)}function Sd(l){if(!l.resolvedReturnType){if(!Hv(l,3))return cr;let C=l.target?al(Sd(l.target),l.mapper):l.compositeSignatures?al(x5r(Ot(l.compositeSignatures,Sd),l.compositeKind,2),l.mapper):Nre(l.declaration)||(wf(l.declaration.body)?Qt:Get(l.declaration));if(l.flags&8?C=d4r(C):l.flags&16&&(C=tW(C)),!pD()){if(l.declaration){let E=rb(l.declaration);if(E)fr(E,Z.Return_type_annotation_circularly_references_itself);else if(dt){let D=l.declaration,W=vl(D);W?fr(W,Z._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,xd(W)):fr(D,Z.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)}}C=Qt}l.resolvedReturnType??(l.resolvedReturnType=C)}return l.resolvedReturnType}function Nre(l){if(l.kind===176)return _C(GA(l.parent.symbol));let C=rb(l);if(xG(l)){let E=OX(l);if(E&&Rf(E.parent)&&!C)return _C(GA(E.parent.parent.symbol))}if(PX(l))return Lc(l.parameters[0].type);if(C)return Lc(C);if(l.kind===177&&wre(l)){let E=so(l)&&$a(l);if(E)return E;let D=zd(Mo(l),178),W=fD(D);if(W)return W}return hgs(l)}function I$e(l){return l.compositeSignatures&&lr(l.compositeSignatures,I$e)||!l.resolvedReturnType&&bre(l,3)>=0}function ygs(l){return k5r(l)||Qt}function k5r(l){if(u0(l)){let C=lo(l.parameters[l.parameters.length-1]),E=aA(C)?J$e(C):C;return E&&JP(E,bt)}}function j0e(l,C,E,D){let W=i3t(l,UV(C,l.typeParameters,XN(l.typeParameters),E));if(D){let Q=eUr(Sd(W));if(Q){let se=J0e(Q);se.typeParameters=D;let Ee=J0e(W);return Ee.resolvedReturnType=U4(se),Ee}}return W}function i3t(l,C){let E=l.instantiations||(l.instantiations=new Map),D=Jv(C),W=E.get(D);return W||E.set(D,W=C$e(l,C)),W}function C$e(l,C){return V7(l,bgs(l,C),!0)}function bgs(l,C){return qb(Ar(l.typeParameters,E=>E.mapper?al(E,E.mapper):E),C)}function z0e(l){return l.typeParameters?l.erasedSignatureCache||(l.erasedSignatureCache=Egs(l)):l}function Egs(l){return V7(l,ZXr(l.typeParameters),!0)}function Bgs(l){return l.typeParameters?l.canonicalSignatureCache||(l.canonicalSignatureCache=vgs(l)):l}function vgs(l){return j0e(l,Ot(l.typeParameters,C=>C.target&&!By(C.target)?C.target:C),so(l.declaration))}function Sgs(l){return l.typeParameters?l.implementationSignatureCache||(l.implementationSignatureCache=wgs(l)):l}function wgs(l){return l.typeParameters?V7(l,qb([],[])):l}function Tgs(l){let C=l.typeParameters;if(C){if(l.baseSignatureCache)return l.baseSignatureCache;let E=ZXr(C),D=qb(C,Ot(C,Q=>By(Q)||Kr)),W=Ot(C,Q=>al(Q,D)||Kr);for(let Q=0;Q{h$e(W)&&!jWt(C,W)&&C.push(hD(W,E.type?Lc(E.type):Qt,nb(E,8),E))})}return C}return v}function h$e(l){return!!(l.flags&4108)||j4(l)||!!(l.flags&2097152)&&!F7(l)&&lr(l.types,h$e)}function _$e(l){return tr(Gt(l.symbol&&l.symbol.declarations,qp),Kw)[0]}function F5r(l,C){var E;let D;if((E=l.symbol)!=null&&E.declarations){for(let W of l.symbol.declarations)if(W.parent.kind===195){let[Q=W.parent,se]=fme(W.parent.parent);if(se.kind===183&&!C){let Ee=se,Ve=ROt(Ee);if(Ve){let Oe=Ee.typeArguments.indexOf(Q);if(Oe()=>jms(Ee,Ve,ln))),Nt=al(ot,Wt);Nt!==l&&(D=Hr(D,Nt))}}}}else if(se.kind===169&&se.dotDotDotToken||se.kind===191||se.kind===202&&se.dotDotDotToken)D=Hr(D,L_(Kr));else if(se.kind===204)D=Hr(D,Jt);else if(se.kind===168&&se.parent.kind===200)D=Hr(D,ki);else if(se.kind===200&&se.type&&jA(se.type)===W.parent&&se.parent.kind===194&&se.parent.extendsType===se&&se.parent.checkType.kind===200&&se.parent.checkType.type){let Ee=se.parent.checkType,Ve=Lc(Ee.type);D=Hr(D,al(Ve,zY(QY(Mo(Ee.typeParameter)),Ee.typeParameter.constraint?Lc(Ee.typeParameter.constraint):ki)))}}}return D&&Pg(D)}function sge(l){if(!l.constraint)if(l.target){let C=By(l.target);l.constraint=C?al(C,l.mapper):Yd}else{let C=_$e(l);if(!C)l.constraint=F5r(l)||Yd;else{let E=Lc(C);E.flags&1&&!OA(E)&&(E=C.parent.parent.kind===200?ki:Kr),l.constraint=E}}return l.constraint===Yd?void 0:l.constraint}function Z5r(l){let C=zd(l.symbol,168),E=Zv(C.parent)?Ice(C.parent):C.parent;return E&&z2(E)}function Jv(l){let C="";if(l){let E=l.length,D=0;for(;D1&&(C+=":"+Q),D+=Q}}return C}function x7(l,C){return l?`@${kg(l)}`+(C?`:${Jv(C)}`:""):""}function SZe(l,C){let E=0;for(let D of l)(C===void 0||!(D.flags&C))&&(E|=sa(D));return E&458752}function Rre(l,C){return lr(C)&&l===Jg?Kr:lL(l,C)}function lL(l,C){let E=Jv(C),D=l.instantiations.get(E);return D||(D=X1(4,l.symbol),l.instantiations.set(E,D),D.objectFlags|=C?SZe(C):0,D.target=l,D.resolvedTypeArguments=C),D}function L5r(l){let C=jG(l.flags,l.symbol);return C.objectFlags=l.objectFlags,C.target=l.target,C.resolvedTypeArguments=l.resolvedTypeArguments,C}function a3t(l,C,E,D,W){if(!D){D=Z7(C);let se=Gre(D);W=E?ek(se,E):se}let Q=X1(4,l.symbol);return Q.target=l,Q.node=C,Q.mapper=E,Q.aliasSymbol=D,Q.aliasTypeArguments=W,Q}function of(l){var C,E;if(!l.resolvedTypeArguments){if(!Hv(l,5))return((C=l.target.localTypeParameters)==null?void 0:C.map(()=>cr))||v;let D=l.node,W=D?D.kind===183?vi(l.target.outerTypeParameters,Oet(D,l.target.localTypeParameters)):D.kind===188?[Lc(D.elementType)]:Ot(D.elements,Lc):v;pD()?l.resolvedTypeArguments??(l.resolvedTypeArguments=l.mapper?ek(W,l.mapper):W):(l.resolvedTypeArguments??(l.resolvedTypeArguments=((E=l.target.localTypeParameters)==null?void 0:E.map(()=>cr))||v),fr(l.node||ue,l.target.symbol?Z.Type_arguments_for_0_circularly_reference_themselves:Z.Tuple_type_arguments_circularly_reference_themselves,l.target.symbol&&qc(l.target.symbol)))}return l.resolvedTypeArguments}function uL(l){return O(l.target.typeParameters)}function V5r(l,C){let E=xp(GA(C)),D=E.localTypeParameters;if(D){let W=O(l.typeArguments),Q=XN(D),se=so(l);if(!(!dt&&se)&&(WD.length)){let Oe=se&&x_(l)&&!G6(l.parent),ot=Q===D.length?Oe?Z.Expected_0_type_arguments_provide_these_with_an_extends_tag:Z.Generic_type_0_requires_1_type_argument_s:Oe?Z.Expected_0_1_type_arguments_provide_these_with_an_extends_tag:Z.Generic_type_0_requires_between_1_and_2_type_arguments,Wt=Xs(E,void 0,2);if(fr(l,ot,Wt,Q,D.length),!se)return cr}if(l.kind===183&&iXr(l,O(l.typeArguments)!==D.length))return a3t(E,l,void 0);let Ve=vi(E.outerTypeParameters,UV(TZe(l),D,Q,se));return lL(E,Ve)}return JY(l,C)?E:cr}function Dre(l,C,E,D){let W=xp(l);if(W===an){let Oe=X8e.get(l.escapedName);if(Oe!==void 0&&C&&C.length===1)return Oe===4?c3t(C[0]):G7(l,C[0])}let Q=ol(l),se=Q.typeParameters,Ee=Jv(C)+x7(E,D),Ve=Q.instantiations.get(Ee);return Ve||Q.instantiations.set(Ee,Ve=WXr(W,qb(se,UV(C,se,XN(se),so(l.valueDeclaration))),E,D)),Ve}function Ngs(l,C){if(aI(C)&1048576){let W=TZe(l),Q=x7(C,W),se=St.get(Q);return se||(se=LC(1,"error",void 0,`alias ${Q}`),se.aliasSymbol=C,se.aliasTypeArguments=W,St.set(Q,se)),se}let E=xp(C),D=ol(C).typeParameters;if(D){let W=O(l.typeArguments),Q=XN(D);if(WD.length)return fr(l,Q===D.length?Z.Generic_type_0_requires_1_type_argument_s:Z.Generic_type_0_requires_between_1_and_2_type_arguments,qc(C),Q,D.length),cr;let se=Z7(l),Ee=se&&(W5r(C)||!W5r(se))?se:void 0,Ve;if(Ee)Ve=Gre(Ee);else if(m8(l)){let Oe=oge(l,2097152,!0);if(Oe&&Oe!==en){let ot=qm(Oe);ot&&ot.flags&524288&&(Ee=ot,Ve=TZe(l)||(D?[]:void 0))}}return Dre(C,TZe(l),Ee,Ve)}return JY(l,C)?E:cr}function W5r(l){var C;let E=(C=l.declarations)==null?void 0:C.find(uee);return!!(E&&Wb(E))}function Rgs(l){switch(l.kind){case 183:return l.typeName;case 233:let C=l.expression;if(cp(C))return C}}function P5r(l){return l.parent?`${P5r(l.parent)}.${l.escapedName}`:l.escapedName}function y$e(l){let E=(l.kind===166?l.right:l.kind===211?l.name:l).escapedText;if(E){let D=l.kind===166?y$e(l.left):l.kind===211?y$e(l.expression):void 0,W=D?`${P5r(D)}.${E}`:E,Q=rn.get(W);return Q||(rn.set(W,Q=SA(524288,E,1048576)),Q.parent=D,Q.links.declaredType=kn),Q}return en}function oge(l,C,E){let D=Rgs(l);if(!D)return en;let W=FI(D,C,E);return W&&W!==en?W:E?en:y$e(D)}function b$e(l,C){if(C===en)return cr;if(C=Jue(C)||C,C.flags&96)return V5r(l,C);if(C.flags&524288)return Ngs(l,C);let E=n5r(C);if(E)return JY(l,C)?ty(E):cr;if(C.flags&111551&&E$e(l)){let D=Dgs(l,C);return D||(oge(l,788968),lo(C))}return cr}function Dgs(l,C){let E=Uo(l);if(!E.resolvedJSDocType){let D=lo(C),W=D;if(C.valueDeclaration){let Q=l.kind===205&&l.qualifier;D.symbol&&D.symbol!==C&&Q&&(W=b$e(l,D.symbol))}E.resolvedJSDocType=W}return E.resolvedJSDocType}function c3t(l){return l3t(l)?O5r(l,Kr):l}function l3t(l){return!!(l.flags&3145728&&lr(l.types,l3t)||l.flags&33554432&&!xre(l)&&l3t(l.baseType)||l.flags&524288&&!yD(l)||l.flags&432275456&&!j4(l))}function xre(l){return!!(l.flags&33554432&&l.constraint.flags&2)}function u3t(l,C){return C.flags&3||C===l||l.flags&1?l:O5r(l,C)}function O5r(l,C){let E=`${Gh(l)}>${Gh(C)}`,D=nc.get(E);if(D)return D;let W=YN(33554432);return W.baseType=l,W.constraint=C,nc.set(E,W),W}function g3t(l){return xre(l)?l.baseType:Pg([l.constraint,l.baseType])}function M5r(l){return l.kind===189&&l.elements.length===1}function Q5r(l,C,E){return M5r(C)&&M5r(E)?Q5r(l,C.elements[0],E.elements[0]):zV(Lc(C))===zV(l)?Lc(E):void 0}function xgs(l,C){let E,D=!0;for(;C&&!Ic(C)&&C.kind!==320;){let W=C.parent;if(W.kind===169&&(D=!D),(D||l.flags&8650752)&&W.kind===194&&C===W.trueType){let Q=Q5r(l,W.checkType,W.extendsType);Q&&(E=Hr(E,Q))}else if(l.flags&262144&&W.kind===200&&!W.nameType&&C===W.type){let Q=Lc(W);if(_T(Q)===zV(l)){let se=nye(Q);if(se){let Ee=By(se);Ee&&eE(Ee,qP)&&(E=Hr(E,Ta([bt,hu])))}}}C=W}return E?u3t(l,Pg(E)):l}function E$e(l){return!!(l.flags&16777216)&&(l.kind===183||l.kind===205)}function JY(l,C){return l.typeArguments?(fr(l,Z.Type_0_is_not_generic,C?qc(C):l.typeName?xd(l.typeName):M8e),!1):!0}function Y5r(l){if(sr(l.typeName)){let C=l.typeArguments;switch(l.typeName.escapedText){case"String":return JY(l),Jt;case"Number":return JY(l),bt;case"Boolean":return JY(l),ds;case"Void":return JY(l),oo;case"Undefined":return JY(l),wn;case"Null":return JY(l),ur;case"Function":case"function":return JY(l),qC;case"array":return(!C||!C.length)&&!dt?rp:void 0;case"promise":return(!C||!C.length)&&!dt?bLe(Qt):void 0;case"Object":if(C&&C.length===2){if(eee(l)){let E=Lc(C[0]),D=Lc(C[1]),W=E===Jt||E===bt?[hD(E,D,!1)]:v;return qn(void 0,Be,v,v,W)}return Qt}return JY(l),dt?void 0:Qt}}}function kgs(l){let C=Lc(l.type);return nt?XZe(C,65536):C}function wZe(l){let C=Uo(l);if(!C.resolvedType){if(E2(l)&&DE(l.parent))return C.resolvedSymbol=en,C.resolvedType=iC(l.parent.expression);let E,D,W=788968;E$e(l)&&(D=Y5r(l),D||(E=oge(l,W,!0),E===en?E=oge(l,W|111551):oge(l,W),D=b$e(l,E))),D||(E=oge(l,W),D=b$e(l,E)),C.resolvedSymbol=E,C.resolvedType=D}return C.resolvedType}function TZe(l){return Ot(l.typeArguments,Lc)}function H5r(l){let C=Uo(l);if(!C.resolvedType){let E=_Ur(l);C.resolvedType=ty($b(E))}return C.resolvedType}function X5r(l,C){function E(W){let Q=W.declarations;if(Q)for(let se of Q)switch(se.kind){case 263:case 264:case 266:return se}}if(!l)return C?Jg:Zc;let D=xp(l);return D.flags&524288?O(D.typeParameters)!==C?(fr(E(l),Z.Global_type_0_must_have_1_type_parameter_s,df(l),C),C?Jg:Zc):D:(fr(E(l),Z.Global_type_0_must_be_a_class_or_interface_type,df(l)),C?Jg:Zc)}function A3t(l,C){return kre(l,111551,C?Z.Cannot_find_global_value_0:void 0)}function d3t(l,C){return kre(l,788968,C?Z.Cannot_find_global_type_0:void 0)}function B$e(l,C,E){let D=kre(l,788968,E?Z.Cannot_find_global_type_0:void 0);if(D&&(xp(D),O(ol(D).typeParameters)!==C)){let W=D.declarations&&be(D.declarations,Wf);fr(W,Z.Global_type_0_must_have_1_type_parameter_s,df(D),C);return}return D}function kre(l,C,E){return Pi(void 0,l,C,E,!1,!1)}function yC(l,C,E){let D=d3t(l,E);return D||E?X5r(D,C):void 0}function Ggs(){return LB||(LB=yC("TypedPropertyDescriptor",1,!0)||Jg)}function Fgs(){return Ls||(Ls=yC("TemplateStringsArray",0,!0)||Zc)}function J5r(){return $o||($o=yC("ImportMeta",0,!0)||Zc)}function U5r(){if(!Ua){let l=SA(0,"ImportMetaExpression"),C=J5r(),E=SA(4,"meta",8);E.parent=l,E.links.type=C;let D=Du([E]);l.members=D,Ua=qn(l,D,v,v,v)}return Ua}function K5r(l){return Ge||(Ge=yC("ImportCallOptions",0,l))||Zc}function p3t(l){return Ht||(Ht=yC("ImportAttributes",0,l))||Zc}function j5r(l){return dT||(dT=A3t("Symbol",l))}function Zgs(l){return Y2||(Y2=d3t("SymbolConstructor",l))}function z5r(){return ub||(ub=yC("Symbol",0,!1))||Zc}function NZe(l){return H2||(H2=yC("Promise",1,l))||Jg}function q5r(l){return oD||(oD=yC("PromiseLike",1,l))||Jg}function f3t(l){return aD||(aD=A3t("Promise",l))}function Lgs(l){return gb||(gb=yC("PromiseConstructorLike",0,l))||Zc}function v$e(l){return qr||(qr=yC("AsyncIterable",1,l))||Jg}function Vgs(l){return Qn||(Qn=yC("AsyncIterator",3,l))||Jg}function Wgs(l){return Jn||(Jn=yC("AsyncIterableIterator",1,l))||Jg}function Pgs(l){return cs||(cs=yC("AsyncGenerator",3,l))||Jg}function I3t(l){return $C||($C=yC("Iterable",1,l))||Jg}function Ogs(l){return cD||(cD=yC("Iterator",3,l))||Jg}function Mgs(l){return Jb||(Jb=yC("IterableIterator",1,l))||Jg}function Qgs(l){return ZN||(ZN=yC("Generator",3,l))||Jg}function Ygs(l){return X2||(X2=yC("IteratorYieldResult",1,l))||Jg}function Hgs(l){return rt||(rt=yC("IteratorReturnResult",1,l))||Jg}function $5r(l){return En||(En=yC("Disposable",0,l))||Zc}function Xgs(l){return Rs||(Rs=yC("AsyncDisposable",0,l))||Zc}function eXr(l,C=0){let E=kre(l,788968,void 0);return E&&X5r(E,C)}function Jgs(){return _c||(_c=B$e("Extract",2,!0)||en),_c===en?void 0:_c}function Ugs(){return Iu||(Iu=B$e("Omit",2,!0)||en),Iu===en?void 0:Iu}function C3t(l){return Wl||(Wl=B$e("Awaited",1,l)||(l?en:void 0)),Wl===en?void 0:Wl}function Kgs(){return Eu||(Eu=yC("BigInt",0,!1))||Zc}function jgs(l){return uI??(uI=yC("ClassDecoratorContext",1,l))??Jg}function zgs(l){return VB??(VB=yC("ClassMethodDecoratorContext",2,l))??Jg}function qgs(l){return rw??(rw=yC("ClassGetterDecoratorContext",2,l))??Jg}function $gs(l){return lD??(lD=yC("ClassSetterDecoratorContext",2,l))??Jg}function eAs(l){return Xx??(Xx=yC("ClassAccessorDecoratorContext",2,l))??Jg}function tAs(l){return YZ??(YZ=yC("ClassAccessorDecoratorTarget",2,l))??Jg}function rAs(l){return Jx??(Jx=yC("ClassAccessorDecoratorResult",2,l))??Jg}function nAs(l){return WB??(WB=yC("ClassFieldDecoratorContext",2,l))??Jg}function iAs(){return od||(od=A3t("NaN",!1))}function sAs(){return sA||(sA=B$e("Record",2,!0)||en),sA===en?void 0:sA}function q0e(l,C){return l!==Jg?lL(l,C):Zc}function tXr(l){return q0e(Ggs(),[l])}function rXr(l){return q0e(I3t(!0),[l])}function L_(l,C){return q0e(C?Bs:Fn,[l])}function m3t(l){switch(l.kind){case 190:return 2;case 191:return nXr(l);case 202:return l.questionToken?2:l.dotDotDotToken?nXr(l):1;default:return 1}}function nXr(l){return GZe(l.type)?4:8}function oAs(l){let C=lAs(l.parent);if(GZe(l))return C?Bs:Fn;let D=Ot(l.elements,m3t);return h3t(D,C,Ot(l.elements,aAs))}function aAs(l){return At(l)||Jc(l)?l:void 0}function iXr(l,C){return!!Z7(l)||sXr(l)&&(l.kind===188?KV(l.elementType):l.kind===189?lr(l.elements,KV):C||lr(l.typeArguments,KV))}function sXr(l){let C=l.parent;switch(C.kind){case 196:case 202:case 183:case 192:case 193:case 199:case 194:case 198:case 188:case 189:return sXr(C);case 265:return!0}return!1}function KV(l){switch(l.kind){case 183:return E$e(l)||!!(oge(l,788968).flags&524288);case 186:return!0;case 198:return l.operator!==158&&KV(l.type);case 196:case 190:case 202:case 316:case 314:case 315:case 309:return KV(l.type);case 191:return l.type.kind!==188||KV(l.type.elementType);case 192:case 193:return lr(l.types,KV);case 199:return KV(l.objectType)||KV(l.indexType);case 194:return KV(l.checkType)||KV(l.extendsType)||KV(l.trueType)||KV(l.falseType)}return!1}function cAs(l){let C=Uo(l);if(!C.resolvedType){let E=oAs(l);if(E===Jg)C.resolvedType=Zc;else if(!(l.kind===189&&lr(l.elements,D=>!!(m3t(D)&8)))&&iXr(l))C.resolvedType=l.kind===189&&l.elements.length===0?E:a3t(E,l,void 0);else{let D=l.kind===188?[Lc(l.elementType)]:Ot(l.elements,Lc);C.resolvedType=_3t(E,D)}}return C.resolvedType}function lAs(l){return as(l)&&l.operator===148}function _D(l,C,E=!1,D=[]){let W=h3t(C||Ot(l,Q=>1),E,D);return W===Jg?Zc:l.length?_3t(W,l):W}function h3t(l,C,E){if(l.length===1&&l[0]&4)return C?Bs:Fn;let D=Ot(l,Q=>Q&1?"#":Q&2?"?":Q&4?".":"*").join()+(C?"R":"")+(lr(E,Q=>!!Q)?","+Ot(E,Q=>Q?sd(Q):"_").join(","):""),W=rc.get(D);return W||rc.set(D,W=uAs(l,C,E)),W}function uAs(l,C,E){let D=l.length,W=ft(l,Wt=>!!(Wt&9)),Q,se=[],Ee=0;if(D){Q=new Array(D);for(let Wt=0;Wt!!(l.elementFlags[mi]&8&&hn.flags&1179648));if(ln>=0)return DZe(Ot(C,(hn,mi)=>l.elementFlags[mi]&8?hn:Kr))?Of(C[ln],hn=>y3t(l,au(C,ln,hn))):cr}let se=[],Ee=[],Ve=[],Oe=-1,ot=-1,Wt=-1;for(let ln=0;ln=1e4)return fr(ue,LS(ue)?Z.Type_produces_a_tuple_type_that_is_too_large_to_represent:Z.Expression_produces_a_tuple_type_that_is_too_large_to_represent),cr;X(Ti,(ks,Wo)=>{var Yi;return Mr(ks,hn.target.elementFlags[Wo],(Yi=hn.target.labeledElementDeclarations)==null?void 0:Yi[Wo])})}else Mr(pL(hn)&&JP(hn,bt)||cr,4,(W=l.labeledElementDeclarations)==null?void 0:W[ln]);else Mr(hn,mi,(Q=l.labeledElementDeclarations)==null?void 0:Q[ln])}for(let ln=0;ln=0&&otEe[ot+hn]&8?zb(ln,bt):ln)),se.splice(ot+1,Wt-ot),Ee.splice(ot+1,Wt-ot),Ve.splice(ot+1,Wt-ot));let Nt=h3t(Ee,l.readonly,Ve);return Nt===Jg?Zc:Ee.length?lL(Nt,se):Nt;function Mr(ln,hn,mi){hn&1&&(Oe=Ee.length),hn&4&&ot<0&&(ot=Ee.length),hn&6&&(Wt=Ee.length),se.push(hn&2?hg(ln,!0):ln),Ee.push(hn),Ve.push(mi)}}function age(l,C,E=0){let D=l.target,W=uL(l)-E;return C>D.fixedLength?jds(l)||_D(v):_D(of(l).slice(C,W),D.elementFlags.slice(C,W),!1,D.labeledElementDeclarations&&D.labeledElementDeclarations.slice(C,W))}function oXr(l){return Ta(Hr(og(l.target.fixedLength,C=>pb(""+C)),JN(l.target.readonly?Bs:Fn)))}function gAs(l,C){let E=ke(l.elementFlags,D=>!(D&C));return E>=0?E:l.elementFlags.length}function $0e(l,C){return l.elementFlags.length-x(l.elementFlags,E=>!(E&C))-1}function b3t(l){return l.fixedLength+$0e(l,3)}function UY(l){let C=of(l),E=uL(l);return C.length===E?C:C.slice(0,E)}function AAs(l){return hg(Lc(l.type),!0)}function Gh(l){return l.id}function gL(l,C){return Lg(l,C,Gh,Xl)>=0}function RZe(l,C){let E=Lg(l,C,Gh,Xl);return E<0?(l.splice(~E,0,C),!0):!1}function dAs(l,C,E){let D=E.flags;if(!(D&131072))if(C|=D&473694207,D&465829888&&(C|=33554432),D&2097152&&sa(E)&67108864&&(C|=536870912),E===Pr&&(C|=8388608),OA(E)&&(C|=1073741824),!nt&&D&98304)sa(E)&65536||(C|=4194304);else{let W=l.length,Q=W&&E.id>l[W-1].id?~W:Lg(l,E,Gh,Xl);Q<0&&l.splice(~Q,0,E)}return C}function aXr(l,C,E){let D;for(let W of E)W!==D&&(C=W.flags&1048576?aXr(l,C|(hAs(W)?1048576:0),W.types):dAs(l,C,W),D=W);return C}function pAs(l,C){var E;if(l.length<2)return l;let D=Jv(l),W=Nc.get(D);if(W)return W;let Q=C&&lr(l,Oe=>!!(Oe.flags&524288)&&!jb(Oe)&&Y3t(yT(Oe))),se=l.length,Ee=se,Ve=0;for(;Ee>0;){Ee--;let Oe=l[Ee];if(Q||Oe.flags&469499904){if(Oe.flags&262144&&mD(Oe).flags&1048576){UN(Oe,Ta(Ot(l,Nt=>Nt===Oe?Vi:Nt)),PB)&&Nm(l,Ee);continue}let ot=Oe.flags&61603840?be(Id(Oe),Nt=>ET(lo(Nt))):void 0,Wt=ot&&ty(lo(ot));for(let Nt of l)if(Oe!==Nt){if(Ve===1e5&&Ve/(se-Ee)*se>1e6){(E=Mi)==null||E.instant(Mi.Phase.CheckTypes,"removeSubtypes_DepthLimit",{typeIds:l.map(ln=>ln.id)}),fr(ue,Z.Expression_produces_a_union_type_that_is_too_complex_to_represent);return}if(Ve++,ot&&Nt.flags&61603840){let Mr=ZI(Nt,ot.escapedName);if(Mr&&ET(Mr)&&ty(Mr)!==Wt)continue}if(UN(Oe,Nt,PB)&&(!(sa(Bre(Oe))&1)||!(sa(Bre(Nt))&1)||zP(Oe,Nt))){Nm(l,Ee);break}}}}return Nc.set(D,l),l}function fAs(l,C,E){let D=l.length;for(;D>0;){D--;let W=l[D],Q=W.flags;(Q&402653312&&C&4||Q&256&&C&8||Q&2048&&C&64||Q&8192&&C&4096||E&&Q&32768&&C&16384||jY(W)&&gL(l,W.regularType))&&Nm(l,D)}}function IAs(l){let C=Gt(l,j4);if(C.length){let E=l.length;for(;E>0;){E--;let D=l[E];D.flags&128&&lr(C,W=>CAs(D,W))&&Nm(l,E)}}}function CAs(l,C){return C.flags&134217728?net(l,C):ret(l,C)}function mAs(l){let C=[];for(let E of l)if(E.flags&2097152&&sa(E)&67108864){let D=E.types[0].flags&8650752?0:1;pa(C,E.types[D])}for(let E of C){let D=[];for(let Q of l)if(Q.flags&2097152&&sa(Q)&67108864){let se=Q.types[0].flags&8650752?0:1;Q.types[se]===E&&RZe(D,Q.types[1-se])}let W=a_(E);if(eE(W,Q=>gL(D,Q))){let Q=l.length;for(;Q>0;){Q--;let se=l[Q];if(se.flags&2097152&&sa(se)&67108864){let Ee=se.types[0].flags&8650752?0:1;se.types[Ee]===E&&gL(D,se.types[1-Ee])&&Nm(l,Q)}}RZe(l,E)}}}function hAs(l){return!!(l.flags&1048576&&(l.aliasSymbol||l.origin))}function cXr(l,C){for(let E of C)if(E.flags&1048576){let D=E.origin;E.aliasSymbol||D&&!(D.flags&1048576)?pa(l,E):D&&D.flags&1048576&&cXr(l,D.types)}}function E3t(l,C){let E=M4(l);return E.types=C,E}function Ta(l,C=1,E,D,W){if(l.length===0)return Vi;if(l.length===1)return l[0];if(l.length===2&&!W&&(l[0].flags&1048576||l[1].flags&1048576)){let Q=C===0?"N":C===2?"S":"L",se=l[0].id=2&&Q[0]===wn&&Q[1]===ar&&Nm(Q,1),(se&402664352||se&16384&&se&32768)&&fAs(Q,se,!!(C&2)),se&128&&se&402653184&&IAs(Q),se&536870912&&mAs(Q),C===2&&(Q=pAs(Q,!!(se&524288)),!Q))return cr;if(Q.length===0)return se&65536?se&4194304?ur:Re:se&32768?se&4194304?wn:Pe:Vi}if(!W&&se&1048576){let Ve=[];cXr(Ve,l);let Oe=[];for(let Wt of Q)lr(Ve,Nt=>gL(Nt.types,Wt))||Oe.push(Wt);if(!E&&Ve.length===1&&Oe.length===0)return Ve[0];if(Td(Ve,(Wt,Nt)=>Wt+Nt.types.length,0)+Oe.length===Q.length){for(let Wt of Ve)RZe(Oe,Wt);W=E3t(1048576,Oe)}}let Ee=(se&36323331?0:32768)|(se&2097152?16777216:0);return v3t(Q,Ee,E,D,W)}function _As(l,C){let E,D=[];for(let Q of l){let se=HB(Q);if(se){if(se.kind!==0&&se.kind!==1||E&&!B3t(E,se))return;E=se,D.push(se.type)}else{let Ee=C!==2097152?Sd(Q):void 0;if(Ee!==dn&&Ee!==On)return}}if(!E)return;let W=x5r(D,C);return K0e(E.kind,E.parameterName,E.parameterIndex,W)}function B3t(l,C){return l.kind===C.kind&&l.parameterIndex===C.parameterIndex}function v3t(l,C,E,D,W){if(l.length===0)return Vi;if(l.length===1)return l[0];let se=(W?W.flags&1048576?`|${Jv(W.types)}`:W.flags&2097152?`&${Jv(W.types)}`:`#${W.type.id}|${Jv(l)}`:Jv(l))+x7(E,D),Ee=Vl.get(se);return Ee||(Ee=YN(1048576),Ee.objectFlags=C|SZe(l,98304),Ee.types=l,Ee.origin=W,Ee.aliasSymbol=E,Ee.aliasTypeArguments=D,l.length===2&&l[0].flags&512&&l[1].flags&512&&(Ee.flags|=16,Ee.intrinsicName="boolean"),Vl.set(se,Ee)),Ee}function yAs(l){let C=Uo(l);if(!C.resolvedType){let E=Z7(l);C.resolvedType=Ta(Ot(l.types,Lc),1,E,Gre(E))}return C.resolvedType}function bAs(l,C,E){let D=E.flags;return D&2097152?uXr(l,C,E.types):(yD(E)?C&16777216||(C|=16777216,l.set(E.id.toString(),E)):(D&3?(E===Pr&&(C|=8388608),OA(E)&&(C|=1073741824)):(nt||!(D&98304))&&(E===ar&&(C|=262144,E=wn),l.has(E.id.toString())||(E.flags&109472&&C&109472&&(C|=67108864),l.set(E.id.toString(),E))),C|=D&473694207),C)}function uXr(l,C,E){for(let D of E)C=bAs(l,C,ty(D));return C}function EAs(l,C){let E=l.length;for(;E>0;){E--;let D=l[E];(D.flags&4&&C&402653312||D.flags&8&&C&256||D.flags&64&&C&2048||D.flags&4096&&C&8192||D.flags&16384&&C&32768||yD(D)&&C&470302716)&&Nm(l,E)}}function BAs(l,C){for(let E of l)if(!gL(E.types,C)){let D=C.flags&128?Jt:C.flags&288?bt:C.flags&2048?Vt:C.flags&8192?Es:void 0;if(!D||!gL(E.types,D))return!1}return!0}function vAs(l){let C=l.length,E=Gt(l,D=>!!(D.flags&128));for(;C>0;){C--;let D=l[C];if(D.flags&402653184){for(let W of E)if(qV(W,D)){Nm(l,C);break}else if(j4(D))return!0}}return!1}function gXr(l,C){for(let E=0;E!(D.flags&C))}function SAs(l){let C,E=ke(l,se=>!!(sa(se)&32768));if(E<0)return!1;let D=E+1;for(;D!!(ln.flags&469893116)||yD(ln))){if(LZe(Mr,Nt))return Wt;if(!(Mr.flags&1048576&&Kv(Mr,ln=>LZe(ln,Nt)))&&!LZe(Nt,Mr))return Vi;Ee=67108864}}}let Ve=Jv(se)+(C&2?"*":x7(E,D)),Oe=Cc.get(Ve);if(!Oe){if(Q&1048576)if(SAs(se))Oe=Pg(se,C,E,D);else if(he(se,ot=>!!(ot.flags&1048576&&ot.types[0].flags&32768))){let ot=lr(se,uye)?ar:wn;gXr(se,32768),Oe=Ta([Pg(se,C),ot],1,E,D)}else if(he(se,ot=>!!(ot.flags&1048576&&(ot.types[0].flags&65536||ot.types[1].flags&65536))))gXr(se,65536),Oe=Ta([Pg(se,C),ur],1,E,D);else if(se.length>=4){let ot=Math.floor(se.length/2);Oe=Pg([Pg(se.slice(0,ot),C),Pg(se.slice(ot),C)],C,E,D)}else{if(!DZe(se))return cr;let ot=TAs(se,C),Wt=lr(ot,Nt=>!!(Nt.flags&2097152))&&S3t(ot)>S3t(se)?E3t(2097152,se):void 0;Oe=Ta(ot,1,E,D,Wt)}else Oe=wAs(se,Ee,E,D);Cc.set(Ve,Oe)}return Oe}function AXr(l){return Td(l,(C,E)=>E.flags&1048576?C*E.types.length:E.flags&131072?0:C,1)}function DZe(l){var C;let E=AXr(l);return E>=1e5?((C=Mi)==null||C.instant(Mi.Phase.CheckTypes,"checkCrossProductUnion_DepthLimit",{typeIds:l.map(D=>D.id),size:E}),fr(ue,Z.Expression_produces_a_union_type_that_is_too_complex_to_represent),!1):!0}function TAs(l,C){let E=AXr(l),D=[];for(let W=0;W=0;Ve--)if(l[Ve].flags&1048576){let Oe=l[Ve].types,ot=Oe.length;Q[Ve]=Oe[se%ot],se=Math.floor(se/ot)}let Ee=Pg(Q,C);Ee.flags&131072||D.push(Ee)}return D}function dXr(l){return!(l.flags&3145728)||l.aliasSymbol?1:l.flags&1048576&&l.origin?dXr(l.origin):S3t(l.types)}function S3t(l){return Td(l,(C,E)=>C+dXr(E),0)}function NAs(l){let C=Uo(l);if(!C.resolvedType){let E=Z7(l),D=Ot(l.types,Lc),W=D.length===2?D.indexOf(f0):-1,Q=W>=0?D[1-W]:Kr,se=!!(Q.flags&76||Q.flags&134217728&&j4(Q));C.resolvedType=Pg(D,se?1:0,E,Gre(E))}return C.resolvedType}function pXr(l,C){let E=YN(4194304);return E.type=l,E.indexFlags=C,E}function RAs(l){let C=M4(4194304);return C.type=l,C}function fXr(l,C){return C&1?l.resolvedStringIndexType||(l.resolvedStringIndexType=pXr(l,1)):l.resolvedIndexType||(l.resolvedIndexType=pXr(l,0))}function IXr(l,C){let E=_T(l),D=eB(l),W=cL(l.target||l);if(!W&&!(C&2))return D;let Q=[];if(q4(D)){if(Tre(l))return fXr(l,C);sJ(D,Ee)}else if(Tre(l)){let Ve=$0(YY(l));MWt(Ve,8576,!!(C&1),Ee)}else sJ(_Ze(D),Ee);let se=C&2?VC(Ta(Q),Ve=>!(Ve.flags&5)):Ta(Q);if(se.flags&1048576&&D.flags&1048576&&Jv(se.types)===Jv(D.types))return D;return se;function Ee(Ve){let Oe=W?al(W,rye(l.mapper,E,Ve)):Ve;Q.push(Oe===Jt?Da:Oe)}}function DAs(l){let C=_T(l);return E(cL(l)||C);function E(D){return D.flags&470810623?!0:D.flags&16777216?D.root.isDistributive&&D.checkType===C:D.flags&137363456?he(D.types,E):D.flags&8388608?E(D.objectType)&&E(D.indexType):D.flags&33554432?E(D.baseType)&&E(D.constraint):D.flags&268435456?E(D.type):!1}}function AL(l){if(kc(l))return Vi;if(du(l))return ty(Rl(l));if(xg(l))return ty(KN(l));let C=nV(l);return C!==void 0?pb(Sc(C)):tn(l)?ty(Rl(l)):Vi}function k7(l,C,E){if(E||!(L1(l)&6)){let D=ol(d$e(l)).nameType;if(!D){let W=vl(l.valueDeclaration);D=l.escapedName==="default"?pb("default"):W&&AL(W)||(_ee(l)?void 0:pb(df(l)))}if(D&&D.flags&C)return D}return Vi}function CXr(l,C){return!!(l.flags&C||l.flags&2097152&&lr(l.types,E=>CXr(E,C)))}function xAs(l,C,E){let D=E&&(sa(l)&7||l.aliasSymbol)?RAs(l):void 0,W=Ot(Id(l),se=>k7(se,C)),Q=Ot(ey(l),se=>se!==Ri&&CXr(se.keyType,C)?se.keyType===Jt&&C&8?Da:se.keyType:Vi);return Ta(vi(W,Q),1,void 0,void 0,D)}function w3t(l,C=0){return!!(l.flags&58982400||eW(l)||jb(l)&&(!DAs(l)||f$e(l)===2)||l.flags&1048576&&!(C&4)&&UWt(l)||l.flags&2097152&&UI(l,465829888)&&lr(l.types,yD))}function JN(l,C=0){return l=bT(l),xre(l)?c3t(JN(l.baseType,C)):w3t(l,C)?fXr(l,C):l.flags&1048576?Pg(Ot(l.types,E=>JN(E,C))):l.flags&2097152?Ta(Ot(l.types,E=>JN(E,C))):sa(l)&32?IXr(l,C):l===Pr?Pr:l.flags&2?Vi:l.flags&131073?ki:xAs(l,(C&2?128:402653316)|(C&1?0:12584),C===0)}function mXr(l){let C=Jgs();return C?Dre(C,[l,Jt]):Jt}function kAs(l){let C=mXr(JN(l));return C.flags&131072?Jt:C}function GAs(l){let C=Uo(l);if(!C.resolvedType)switch(l.operator){case 143:C.resolvedType=JN(Lc(l.type));break;case 158:C.resolvedType=l.type.kind===155?Z3t(pee(l.parent)):cr;break;case 148:C.resolvedType=Lc(l.type);break;default:w.assertNever(l.operator)}return C.resolvedType}function FAs(l){let C=Uo(l);return C.resolvedType||(C.resolvedType=K4([l.head.text,...Ot(l.templateSpans,E=>E.literal.text)],Ot(l.templateSpans,E=>Lc(E.type)))),C.resolvedType}function K4(l,C){let E=ke(C,Oe=>!!(Oe.flags&1179648));if(E>=0)return DZe(C)?Of(C[E],Oe=>K4(l,au(C,E,Oe))):cr;if(Ue(C,Pr))return Pr;let D=[],W=[],Q=l[0];if(!Ve(l,C))return Jt;if(D.length===0)return pb(Q);if(W.push(Q),he(W,Oe=>Oe==="")){if(he(D,Oe=>!!(Oe.flags&4)))return Jt;if(D.length===1&&j4(D[0]))return D[0]}let se=`${Jv(D)}|${Ot(W,Oe=>Oe.length).join(",")}|${W.join("")}`,Ee=Hs.get(se);return Ee||Hs.set(se,Ee=LAs(W,D)),Ee;function Ve(Oe,ot){for(let Wt=0;WtG7(l,E)):C.flags&128?pb(hXr(l,C.value)):C.flags&134217728?K4(...VAs(l,C.texts,C.types)):C.flags&268435456&&l===C.symbol?C:C.flags&268435461||q4(C)?_Xr(l,C):xZe(C)?_Xr(l,K4(["",""],[C])):C}function hXr(l,C){switch(X8e.get(l.escapedName)){case 0:return C.toUpperCase();case 1:return C.toLowerCase();case 2:return C.charAt(0).toUpperCase()+C.slice(1);case 3:return C.charAt(0).toLowerCase()+C.slice(1)}return C}function VAs(l,C,E){switch(X8e.get(l.escapedName)){case 0:return[C.map(D=>D.toUpperCase()),E.map(D=>G7(l,D))];case 1:return[C.map(D=>D.toLowerCase()),E.map(D=>G7(l,D))];case 2:return[C[0]===""?C:[C[0].charAt(0).toUpperCase()+C[0].slice(1),...C.slice(1)],C[0]===""?[G7(l,E[0]),...E.slice(1)]:E];case 3:return[C[0]===""?C:[C[0].charAt(0).toLowerCase()+C[0].slice(1),...C.slice(1)],C[0]===""?[G7(l,E[0]),...E.slice(1)]:E]}return[C,E]}function _Xr(l,C){let E=`${kg(l)},${Gh(C)}`,D=qa.get(E);return D||qa.set(E,D=WAs(l,C)),D}function WAs(l,C){let E=jG(268435456,l);return E.type=C,E}function PAs(l,C,E,D,W){let Q=YN(8388608);return Q.objectType=l,Q.indexType=C,Q.accessFlags=E,Q.aliasSymbol=D,Q.aliasTypeArguments=W,Q}function eye(l){if(dt)return!1;if(sa(l)&4096)return!0;if(l.flags&1048576)return he(l.types,eye);if(l.flags&2097152)return lr(l.types,eye);if(l.flags&465829888){let C=HWt(l);return C!==l&&eye(C)}return!1}function S$e(l,C){return x2(l)?k2(l):C&&NI(C)?nV(C):void 0}function T3t(l,C){if(C.flags&8208){let E=Si(l.parent,D=>!Cp(D))||l.parent;return AG(E)?BB(E)&&sr(l)&&R4r(E,l):he(C.declarations,D=>!$l(D)||VN(D))}return!0}function yXr(l,C,E,D,W,Q){let se=W&&W.kind===212?W:void 0,Ee=W&&kc(W)?void 0:S$e(E,W);if(Ee!==void 0){if(Q&256)return rO(C,Ee)||Qt;let Oe=_g(C,Ee);if(Oe){if(Q&64&&W&&Oe.declarations&&OB(Oe)&&T3t(W,Oe)){let Wt=se?.argumentExpression??(hs(W)?W.indexType:W);MG(Wt,Oe.declarations,Ee)}if(se){if(dLe(Oe,se,UJr(se.expression,C.symbol)),FUr(se,Oe,Nx(se))){fr(se.argumentExpression,Z.Cannot_assign_to_0_because_it_is_a_read_only_property,qc(Oe));return}if(Q&8&&(Uo(W).resolvedSymbol=Oe),PJr(se,Oe))return _r}let ot=Q&4?YP(Oe):lo(Oe);return se&&Nx(se)!==1?uF(se,ot):W&&hs(W)&&uye(ot)?Ta([ot,wn]):ot}if(eE(C,aA)&&yN(Ee)){let ot=+Ee;if(W&&eE(C,Wt=>!Wt.target.hasRestElement)&&!(Q&16)){let Wt=N3t(W);if(aA(C)){if(ot<0)return fr(Wt,Z.A_tuple_type_cannot_be_indexed_with_a_negative_value),wn;fr(Wt,Z.Tuple_type_0_of_length_1_has_no_element_at_index_2,Xs(C),uL(C),Sc(Ee))}else fr(Wt,Z.Property_0_does_not_exist_on_type_1,Sc(Ee),Xs(C))}if(ot>=0)return Ve($x(C,bt)),u4r(C,ot,Q&1?ar:void 0)}}if(!(E.flags&98304)&&c_(E,402665900)){if(C.flags&131073)return C;let Oe=U0e(C,E)||$x(C,Jt);if(Oe){if(Q&2&&Oe.keyType!==bt){se&&(Q&4?fr(se,Z.Type_0_is_generic_and_can_only_be_indexed_for_reading,Xs(l)):fr(se,Z.Type_0_cannot_be_used_to_index_type_1,Xs(E),Xs(l)));return}if(W&&Oe.keyType===Jt&&!c_(E,12)){let ot=N3t(W);return fr(ot,Z.Type_0_cannot_be_used_as_an_index_type,Xs(E)),Q&1?Ta([Oe.type,ar]):Oe.type}return Ve(Oe),Q&1&&!(C.symbol&&C.symbol.flags&384&&E.symbol&&E.flags&1024&&o_(E.symbol)===C.symbol)?Ta([Oe.type,ar]):Oe.type}if(E.flags&131072)return Vi;if(eye(C))return Qt;if(se&&!Let(C)){if(tO(C)){if(dt&&E.flags&384)return UA.add(Us(se,Z.Property_0_does_not_exist_on_type_1,E.value,Xs(C))),wn;if(E.flags&12){let ot=Ot(C.properties,Wt=>lo(Wt));return Ta(Hr(ot,wn))}}if(C.symbol===Dr&&Ee!==void 0&&Dr.exports.has(Ee)&&Dr.exports.get(Ee).flags&418)fr(se,Z.Property_0_does_not_exist_on_type_1,Sc(Ee),Xs(C));else if(dt&&!(Q&128))if(Ee!==void 0&&QJr(Ee,C)){let ot=Xs(C);fr(se,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead,Ee,ot,ot+"["+Tf(se.argumentExpression)+"]")}else if(JP(C,bt))fr(se.argumentExpression,Z.Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number);else{let ot;if(Ee!==void 0&&(ot=XJr(Ee,C)))ot!==void 0&&fr(se.argumentExpression,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2,Ee,Xs(C),ot);else{let Wt=MIs(C,se,E);if(Wt!==void 0)fr(se,Z.Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1,Xs(C),Wt);else{let Nt;if(E.flags&1024)Nt=su(void 0,Z.Property_0_does_not_exist_on_type_1,"["+Xs(E)+"]",Xs(C));else if(E.flags&8192){let Mr=QN(E.symbol,se);Nt=su(void 0,Z.Property_0_does_not_exist_on_type_1,"["+Mr+"]",Xs(C))}else E.flags&128||E.flags&256?Nt=su(void 0,Z.Property_0_does_not_exist_on_type_1,E.value,Xs(C)):E.flags&12&&(Nt=su(void 0,Z.No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1,Xs(E),Xs(C)));Nt=su(Nt,Z.Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1,Xs(D),Xs(C)),UA.add(GS(ls(se),se,Nt))}}}return}}if(eye(C))return Qt;if(W){let Oe=N3t(W);E.flags&384?fr(Oe,Z.Property_0_does_not_exist_on_type_1,""+E.value,Xs(C)):E.flags&12?fr(Oe,Z.Type_0_has_no_matching_index_signature_for_type_1,Xs(C),Xs(E)):fr(Oe,Z.Type_0_cannot_be_used_as_an_index_type,Xs(E))}if(vd(E))return E;return;function Ve(Oe){Oe&&Oe.isReadonly&&se&&(Rx(se)||Ime(se))&&fr(se,Z.Index_signature_in_type_0_only_permits_reading,Xs(C))}}function N3t(l){return l.kind===212?l.argumentExpression:l.kind===199?l.indexType:l.kind===167?l.expression:l}function xZe(l){if(l.flags&2097152){let C=!1;for(let E of l.types)if(E.flags&101248||xZe(E))C=!0;else if(!(E.flags&524288))return!1;return C}return!!(l.flags&77)||j4(l)}function j4(l){return!!(l.flags&134217728)&&he(l.types,xZe)||!!(l.flags&268435456)&&xZe(l.type)}function bXr(l){return!!(l.flags&402653184)&&!j4(l)}function F7(l){return!!tye(l)}function z4(l){return!!(tye(l)&4194304)}function q4(l){return!!(tye(l)&8388608)}function tye(l){return l.flags&3145728?(l.objectFlags&2097152||(l.objectFlags|=2097152|Td(l.types,(C,E)=>C|tye(E),0)),l.objectFlags&12582912):l.flags&33554432?(l.objectFlags&2097152||(l.objectFlags|=2097152|tye(l.baseType)|tye(l.constraint)),l.objectFlags&12582912):(l.flags&58982400||jb(l)||eW(l)?4194304:0)|(l.flags&63176704||bXr(l)?8388608:0)}function nF(l,C){return l.flags&8388608?MAs(l,C):l.flags&16777216?QAs(l,C):l}function EXr(l,C,E){if(l.flags&1048576||l.flags&2097152&&!w3t(l)){let D=Ot(l.types,W=>nF(zb(W,C),E));return l.flags&2097152||E?Pg(D):Ta(D)}}function OAs(l,C,E){if(C.flags&1048576){let D=Ot(C.types,W=>nF(zb(l,W),E));return E?Pg(D):Ta(D)}}function MAs(l,C){let E=C?"simplifiedForWriting":"simplifiedForReading";if(l[E])return l[E]===zA?l:l[E];l[E]=zA;let D=nF(l.objectType,C),W=nF(l.indexType,C),Q=OAs(D,W,C);if(Q)return l[E]=Q;if(!(W.flags&465829888)){let se=EXr(D,W,C);if(se)return l[E]=se}if(eW(D)&&W.flags&296){let se=uge(D,W.flags&8?0:D.target.fixedLength,0,C);if(se)return l[E]=se}return jb(D)&&f$e(D)!==2?l[E]=Of(w$e(D,l.indexType),se=>nF(se,C)):l[E]=l}function QAs(l,C){let E=l.checkType,D=l.extendsType,W=KP(l),Q=jP(l);if(Q.flags&131072&&zV(W)===zV(E)){if(E.flags&1||yg(eJ(E),eJ(D)))return nF(W,C);if(BXr(E,D))return Vi}else if(W.flags&131072&&zV(Q)===zV(E)){if(!(E.flags&1)&&yg(eJ(E),eJ(D)))return Vi;if(E.flags&1||BXr(E,D))return nF(Q,C)}return l}function BXr(l,C){return!!(Ta([hZe(l,C),Vi]).flags&131072)}function w$e(l,C){let E=qb([_T(l)],[C]),D=qY(l.mapper,E),W=al(rF(l.target||l),D),Q=m5r(l)>0||(F7(l)?rge(YY(l))>0:YAs(l,C));return hg(W,!0,Q)}function YAs(l,C){let E=a_(C);return!!E&&lr(Id(l),D=>!!(D.flags&16777216)&&yg(k7(D,8576),E))}function zb(l,C,E=0,D,W,Q){return jV(l,C,E,D,W,Q)||(D?cr:Kr)}function vXr(l,C){return eE(l,E=>{if(E.flags&384){let D=k2(E);if(yN(D)){let W=+D;return W>=0&&W0&&!lr(l.elements,C=>Ut(C)||cn(C)||At(C)&&!!(C.questionToken||C.dotDotDotToken))}function TXr(l,C){return F7(l)||C&&aA(l)&&lr(UY(l),F7)}function D3t(l,C,E,D,W){let Q,se,Ee=0;for(;;){if(Ee===1e3)return fr(ue,Z.Type_instantiation_is_excessively_deep_and_possibly_infinite),cr;let Oe=al(zV(l.checkType),C),ot=al(l.extendsType,C);if(Oe===cr||ot===cr)return cr;if(Oe===Pr||ot===Pr)return Pr;let Wt=H8(l.node.checkType),Nt=H8(l.node.extendsType),Mr=wXr(Wt)&&wXr(Nt)&&O(Wt.elements)===O(Nt.elements),ln=TXr(Oe,Mr),hn;if(l.inferTypeParameters){let Ti=Aye(l.inferTypeParameters,void 0,0);C&&(Ti.nonFixingMapper=qY(Ti.nonFixingMapper,C)),ln||lF(Ti.inferences,Oe,ot,1536),hn=C?qY(Ti.mapper,C):Ti.mapper}let mi=hn?al(l.extendsType,hn):ot;if(!ln&&!TXr(mi,Mr)){if(!(mi.flags&3)&&(Oe.flags&1||!yg(iye(Oe),iye(mi)))){(Oe.flags&1||E&&!(mi.flags&131072)&&Kv(iye(mi),ks=>yg(ks,iye(Oe))))&&(se||(se=[])).push(al(Lc(l.node.trueType),hn||C));let Ti=Lc(l.node.falseType);if(Ti.flags&16777216){let ks=Ti.root;if(ks.node.parent===l.node&&(!ks.isDistributive||ks.checkType===l.checkType)){l=ks;continue}if(Ve(Ti,C))continue}Q=al(Ti,C);break}if(mi.flags&3||yg(eJ(Oe),eJ(mi))){let Ti=Lc(l.node.trueType),ks=hn||C;if(Ve(Ti,ks))continue;Q=al(Ti,ks);break}}Q=YN(16777216),Q.root=l,Q.checkType=al(l.checkType,C),Q.extendsType=al(l.extendsType,C),Q.mapper=C,Q.combinedMapper=hn,Q.aliasSymbol=D||l.aliasSymbol,Q.aliasTypeArguments=D?W:ek(l.aliasTypeArguments,C);break}return se?Ta(Hr(se,Q)):Q;function Ve(Oe,ot){if(Oe.flags&16777216&&ot){let Wt=Oe.root;if(Wt.outerTypeParameters){let Nt=qY(Oe.mapper,ot),Mr=Ot(Wt.outerTypeParameters,mi=>dL(mi,Nt)),ln=qb(Wt.outerTypeParameters,Mr),hn=Wt.isDistributive?dL(Wt.checkType,ln):void 0;if(!hn||hn===Wt.checkType||!(hn.flags&1179648))return l=Wt,C=ln,D=void 0,W=void 0,Wt.aliasSymbol&&Ee++,!0}}return!1}}function KP(l){return l.resolvedTrueType||(l.resolvedTrueType=al(Lc(l.root.node.trueType),l.mapper))}function jP(l){return l.resolvedFalseType||(l.resolvedFalseType=al(Lc(l.root.node.falseType),l.mapper))}function HAs(l){return l.resolvedInferredTrueType||(l.resolvedInferredTrueType=l.combinedMapper?al(Lc(l.root.node.trueType),l.combinedMapper):KP(l))}function x3t(l){let C;return l.locals&&l.locals.forEach(E=>{E.flags&262144&&(C=Hr(C,xp(E)))}),C}function XAs(l){return l.isDistributive&&(ZZe(l.checkType,l.node.trueType)||ZZe(l.checkType,l.node.falseType))}function JAs(l){let C=Uo(l);if(!C.resolvedType){let E=Lc(l.checkType),D=Z7(l),W=Gre(D),Q=Sre(l,!0),se=W?Q:Gt(Q,Ve=>ZZe(Ve,l)),Ee={node:l,checkType:E,extendsType:Lc(l.extendsType),isDistributive:!!(E.flags&262144),inferTypeParameters:x3t(l),outerTypeParameters:se,instantiations:void 0,aliasSymbol:D,aliasTypeArguments:W};C.resolvedType=D3t(Ee,void 0,!1),se&&(Ee.instantiations=new Map,Ee.instantiations.set(Jv(se),C.resolvedType))}return C.resolvedType}function UAs(l){let C=Uo(l);return C.resolvedType||(C.resolvedType=QY(Mo(l.typeParameter))),C.resolvedType}function NXr(l){return sr(l)?[l]:Hr(NXr(l.left),l.right)}function RXr(l){var C;let E=Uo(l);if(!E.resolvedType){if(!r_(l))return fr(l.argument,Z.String_literal_expected),E.resolvedSymbol=en,E.resolvedType=cr;let D=l.isTypeOf?111551:l.flags&16777216?900095:788968,W=z0(l,l.argument.literal);if(!W)return E.resolvedSymbol=en,E.resolvedType=cr;let Q=!!((C=W.exports)!=null&&C.get("export=")),se=db(W,!1);if(wf(l.qualifier))if(se.flags&D)E.resolvedType=DXr(l,E,se,D);else{let Ee=D===111551?Z.Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:Z.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0;fr(l,Ee,l.argument.literal.text),E.resolvedSymbol=en,E.resolvedType=cr}else{let Ee=NXr(l.qualifier),Ve=se,Oe;for(;Oe=Ee.shift();){let ot=Ee.length?1920:D,Wt=GA(JI(Ve)),Nt=l.isTypeOf||so(l)&&Q?_g(lo(Wt),Oe.escapedText,!1,!0):void 0,ln=(l.isTypeOf?void 0:Z_(Y1(Wt),Oe.escapedText,ot))??Nt;if(!ln)return fr(Oe,Z.Namespace_0_has_no_exported_member_1,QN(Ve),xd(Oe)),E.resolvedType=cr;Uo(Oe).resolvedSymbol=ln,Uo(Oe.parent).resolvedSymbol=ln,Ve=ln}E.resolvedType=DXr(l,E,Ve,D)}}return E.resolvedType}function DXr(l,C,E,D){let W=JI(E);return C.resolvedSymbol=W,D===111551?yUr(lo(E),l):b$e(l,W)}function xXr(l){let C=Uo(l);if(!C.resolvedType){let E=Z7(l);if(XV(l.symbol).size===0&&!E)C.resolvedType=f0;else{let D=X1(16,l.symbol);D.aliasSymbol=E,D.aliasTypeArguments=Gre(E),A4(l)&&l.isArrayType&&(D=L_(D)),C.resolvedType=D}}return C.resolvedType}function Z7(l){let C=l.parent;for(;ro(C)||rP(C)||as(C)&&C.operator===148;)C=C.parent;return uee(C)?Mo(C):void 0}function Gre(l){return l?aL(l):void 0}function T$e(l){return!!(l.flags&524288)&&!jb(l)}function k3t(l){return sF(l)||!!(l.flags&474058748)}function G3t(l,C){if(!(l.flags&1048576))return l;if(he(l.types,k3t))return be(l.types,sF)||Zc;let E=be(l.types,Q=>!k3t(Q));if(!E||be(l.types,Q=>Q!==E&&!k3t(Q)))return l;return W(E);function W(Q){let se=Du();for(let Ve of Id(Q))if(!(L1(Ve)&6)){if(N$e(Ve)){let Oe=Ve.flags&65536&&!(Ve.flags&32768),Wt=SA(16777220,Ve.escapedName,OWt(Ve)|(C?8:0));Wt.links.type=Oe?wn:hg(lo(Ve),!0),Wt.declarations=Ve.declarations,Wt.links.nameType=ol(Ve).nameType,Wt.links.syntheticOrigin=Ve,se.set(Ve.escapedName,Wt)}}let Ee=qn(Q.symbol,se,v,v,ey(Q));return Ee.objectFlags|=131200,Ee}}function KY(l,C,E,D,W){if(l.flags&1||C.flags&1)return Qt;if(l.flags&2||C.flags&2)return Kr;if(l.flags&131072)return C;if(C.flags&131072)return l;if(l=G3t(l,W),l.flags&1048576)return DZe([l,C])?Of(l,Oe=>KY(Oe,C,E,D,W)):cr;if(C=G3t(C,W),C.flags&1048576)return DZe([l,C])?Of(C,Oe=>KY(l,Oe,E,D,W)):cr;if(C.flags&473960444)return l;if(z4(l)||z4(C)){if(sF(l))return C;if(l.flags&2097152){let Oe=l.types,ot=Oe[Oe.length-1];if(T$e(ot)&&T$e(C))return Pg(vi(Oe.slice(0,Oe.length-1),[KY(ot,C,E,D,W)]))}return Pg([l,C])}let Q=Du(),se=new Set,Ee=l===Zc?ey(C):d5r([l,C]);for(let Oe of Id(C))L1(Oe)&6?se.add(Oe.escapedName):N$e(Oe)&&Q.set(Oe.escapedName,F3t(Oe,W));for(let Oe of Id(l))if(!(se.has(Oe.escapedName)||!N$e(Oe)))if(Q.has(Oe.escapedName)){let ot=Q.get(Oe.escapedName),Wt=lo(ot);if(ot.flags&16777216){let Nt=vi(Oe.declarations,ot.declarations),Mr=4|Oe.flags&16777216,ln=SA(Mr,Oe.escapedName),hn=lo(Oe),mi=j$e(hn),Ti=j$e(Wt);ln.links.type=mi===Ti?hn:Ta([hn,Ti],2),ln.links.leftSpread=Oe,ln.links.rightSpread=ot,ln.declarations=Nt,ln.links.nameType=ol(Oe).nameType,Q.set(Oe.escapedName,ln)}}else Q.set(Oe.escapedName,F3t(Oe,W));let Ve=qn(E,Q,v,v,Ar(Ee,Oe=>KAs(Oe,W)));return Ve.objectFlags|=2228352|D,Ve}function N$e(l){var C;return!lr(l.declarations,Rh)&&(!(l.flags&106496)||!((C=l.declarations)!=null&&C.some(E=>Sa(E.parent))))}function F3t(l,C){let E=l.flags&65536&&!(l.flags&32768);if(!E&&C===ST(l))return l;let D=4|l.flags&16777216,W=SA(D,l.escapedName,OWt(l)|(C?8:0));return W.links.type=E?wn:lo(l),W.declarations=l.declarations,W.links.nameType=ol(l).nameType,W.links.syntheticOrigin=l,W}function KAs(l,C){return l.isReadonly!==C?hD(l.keyType,l.type,C,l.declaration):l}function kZe(l,C,E,D){let W=jG(l,E);return W.value=C,W.regularType=D||W,W}function L7(l){if(l.flags&2976){if(!l.freshType){let C=kZe(l.flags,l.value,l.symbol,l);C.freshType=C,l.freshType=C}return l.freshType}return l}function ty(l){return l.flags&2976?l.regularType:l.flags&1048576?l.regularType||(l.regularType=Of(l,ty)):l}function jY(l){return!!(l.flags&2976)&&l.freshType===l}function pb(l){let C;return _s.get(l)||(_s.set(l,C=kZe(128,l)),C)}function dw(l){let C;return Wu.get(l)||(Wu.set(l,C=kZe(256,l)),C)}function R$e(l){let C,E=gV(l);return ir.get(E)||(ir.set(E,C=kZe(2048,l)),C)}function jAs(l,C,E){let D,W=`${C}${typeof l=="string"?"@":"#"}${l}`,Q=1024|(typeof l=="string"?128:256);return ni.get(W)||(ni.set(W,D=kZe(Q,l,E)),D)}function zAs(l){if(l.literal.kind===106)return ur;let C=Uo(l);return C.resolvedType||(C.resolvedType=ty(Rl(l.literal))),C.resolvedType}function qAs(l){let C=jG(8192,l);return C.escapedName=`__@${C.symbol.escapedName}@${kg(C.symbol)}`,C}function Z3t(l){if(so(l)&&rP(l)){let C=eV(l);C&&(l=Y3(C)||C)}if(DRe(l)){let C=X$(l)?z2(l.left):z2(l);if(C){let E=ol(C);return E.uniqueESSymbolType||(E.uniqueESSymbolType=qAs(C))}}return Es}function $As(l){let C=r0(l,!1,!1),E=C&&C.parent;if(E&&(Sa(E)||E.kind===264)&&!$u(C)&&(!Rf(C)||tV(l,C.body)))return _C(Mo(E)).thisType;if(E&&tu(E)&&no(E.parent)&&CI(E.parent)===6)return _C(z2(E.parent.left).parent).thisType;let D=l.flags&16777216?vZ(l):void 0;return D&&WA(D)&&no(D.parent)&&CI(D.parent)===3?_C(z2(D.parent.left).parent).thisType:qN(C)&&tV(l,C.body)?_C(Mo(C)).thisType:(fr(l,Z.A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface),cr)}function D$e(l){let C=Uo(l);return C.resolvedType||(C.resolvedType=$As(l)),C.resolvedType}function kXr(l){return Lc(GZe(l.type)||l.type)}function GZe(l){switch(l.kind){case 196:return GZe(l.type);case 189:if(l.elements.length===1&&(l=l.elements[0],l.kind===191||l.kind===202&&l.dotDotDotToken))return GZe(l.type);break;case 188:return l.elementType}}function eds(l){let C=Uo(l);return C.resolvedType||(C.resolvedType=l.dotDotDotToken?kXr(l):hg(Lc(l.type),!0,!!l.questionToken))}function Lc(l){return xgs(GXr(l),l)}function GXr(l){switch(l.kind){case 133:case 312:case 313:return Qt;case 159:return Kr;case 154:return Jt;case 150:return bt;case 163:return Vt;case 136:return ds;case 155:return Es;case 116:return oo;case 157:return wn;case 106:return ur;case 146:return Vi;case 151:return l.flags&524288&&!dt?Qt:oa;case 141:return an;case 197:case 110:return D$e(l);case 201:return zAs(l);case 183:return wZe(l);case 182:return l.assertsModifier?oo:ds;case 233:return wZe(l);case 186:return H5r(l);case 188:case 189:return cAs(l);case 190:return AAs(l);case 192:return yAs(l);case 193:return NAs(l);case 314:return kgs(l);case 316:return hg(Lc(l.type));case 202:return eds(l);case 196:case 315:case 309:return Lc(l.type);case 191:return kXr(l);case 318:return o0s(l);case 184:case 185:case 187:case 322:case 317:case 323:return xXr(l);case 198:return GAs(l);case 199:return SXr(l);case 200:return R3t(l);case 194:return JAs(l);case 195:return UAs(l);case 203:return FAs(l);case 205:return RXr(l);case 80:case 166:case 211:let C=jv(l);return C?xp(C):cr;default:return cr}}function x$e(l,C,E){if(l&&l.length)for(let D=0;DD.typeParameter),Ot(E,()=>Kr))}function qY(l,C){return l?G$e(4,l,C):C}function nds(l,C){return l?G$e(5,l,C):C}function $4(l,C,E){return E?G$e(5,zY(l,C),E):zY(l,C)}function rye(l,C,E){return l?G$e(5,l,zY(C,E)):zY(C,E)}function ids(l){return!l.constraint&&!_$e(l)||l.constraint===Yd?l:l.restrictiveInstantiation||(l.restrictiveInstantiation=q2(l.symbol),l.restrictiveInstantiation.constraint=Yd,l.restrictiveInstantiation)}function V3t(l){let C=q2(l.symbol);return C.target=l,C}function sds(l,C){return K0e(l.kind,l.parameterName,l.parameterIndex,al(l.type,C))}function V7(l,C,E){let D;if(l.typeParameters&&!E){D=Ot(l.typeParameters,V3t),C=qY(qb(l.typeParameters,D),C);for(let Q of D)Q.mapper=C}let W=qx(l.declaration,D,l.thisParameter&&W3t(l.thisParameter,C),x$e(l.parameters,C,W3t),void 0,void 0,l.minArgumentCount,l.flags&167);return W.target=l,W.mapper=C,W}function W3t(l,C){let E=ol(l);if(E.type&&!rW(E.type)&&(!(l.flags&65536)||E.writeType&&!rW(E.writeType)))return l;aI(l)&1&&(l=E.target,C=qY(E.mapper,C));let D=SA(l.flags,l.escapedName,1|aI(l)&53256);return D.declarations=l.declarations,D.parent=l.parent,D.links.target=l,D.links.mapper=C,l.valueDeclaration&&(D.valueDeclaration=l.valueDeclaration),E.nameType&&(D.links.nameType=E.nameType),D}function ods(l,C,E,D){let W=l.objectFlags&4||l.objectFlags&8388608?l.node:l.symbol.declarations[0],Q=Uo(W),se=l.objectFlags&4?Q.resolvedType:l.objectFlags&64?l.target:l,Ee=l.objectFlags&134217728?l.outerTypeParameters:Q.outerTypeParameters;if(!Ee){let Ve=Sre(W,!0);if(qN(W)){let ot=R5r(W);Ve=ai(Ve,ot)}Ee=Ve||v;let Oe=l.objectFlags&8388612?[W]:l.symbol.declarations;Ee=(se.objectFlags&8388612||se.symbol.flags&8192||se.symbol.flags&2048)&&!se.aliasTypeArguments?Gt(Ee,ot=>lr(Oe,Wt=>ZZe(ot,Wt))):Ee,Q.outerTypeParameters=Ee}if(Ee.length){let Ve=qY(l.mapper,C),Oe=Ot(Ee,ln=>dL(ln,Ve)),ot=E||l.aliasSymbol,Wt=E?D:ek(l.aliasTypeArguments,C),Nt=(l.objectFlags&134217728?"S":"")+Jv(Oe)+x7(ot,Wt);se.instantiations||(se.instantiations=new Map,se.instantiations.set(Jv(Ee)+x7(se.aliasSymbol,se.aliasTypeArguments),se));let Mr=se.instantiations.get(Nt);if(!Mr){if(l.objectFlags&134217728)return Mr=F$e(l,C),se.instantiations.set(Nt,Mr),Mr;let ln=qb(Ee,Oe);Mr=se.objectFlags&4?a3t(l.target,l.node,ln,ot,Wt):se.objectFlags&32?cds(se,ln,ot,Wt):F$e(se,ln,ot,Wt),se.instantiations.set(Nt,Mr);let hn=sa(Mr);if(Mr.flags&3899393&&!(hn&524288)){let mi=lr(Oe,rW);sa(Mr)&524288||(hn&52?Mr.objectFlags|=524288|(mi?1048576:0):Mr.objectFlags|=mi?0:524288)}}return Mr}return l}function ads(l){return!(l.parent.kind===183&&l.parent.typeArguments&&l===l.parent.typeName||l.parent.kind===205&&l.parent.typeArguments&&l===l.parent.qualifier)}function ZZe(l,C){if(l.symbol&&l.symbol.declarations&&l.symbol.declarations.length===1){let D=l.symbol.declarations[0].parent;for(let W=C;W!==D;W=W.parent)if(!W||W.kind===241||W.kind===194&&mu(W.extendsType,E))return!0;return E(C)}return!0;function E(D){switch(D.kind){case 197:return!!l.isThisType;case 80:return!l.isThisType&&LS(D)&&ads(D)&&GXr(D)===l;case 186:let W=D.exprName,Q=ib(W);if(!_G(Q)){let se=vy(Q),Ee=l.symbol.declarations[0],Ve=Ee.kind===168?Ee.parent:l.isThisType?Ee:void 0;if(se.declarations&&Ve)return lr(se.declarations,Oe=>tV(Oe,Ve))||lr(D.typeArguments,E)}return!0;case 174:case 173:return!D.type&&!!D.body||lr(D.typeParameters,E)||lr(D.parameters,E)||!!D.type&&E(D.type)}return!!mu(D,E)}}function nye(l){let C=eB(l);if(C.flags&4194304){let E=zV(C.type);if(E.flags&262144)return E}}function cds(l,C,E,D){let W=nye(l);if(W){let se=al(W,C);if(W!==se)return O4r(bT(se),Q,E,D)}return al(eB(l),C)===Pr?Pr:F$e(l,C,E,D);function Q(se){if(se.flags&61603843&&se!==Pr&&!OA(se)){if(!l.declaration.nameType){let Ee;if(UB(se)||se.flags&1&&bre(W,4)<0&&(Ee=By(W))&&eE(Ee,qP))return uds(se,l,$4(W,se,C));if(aA(se))return lds(se,l,W,C);if(B5r(se))return Pg(Ot(se.types,Q))}return F$e(l,$4(W,se,C))}return se}}function LXr(l,C){return C&1?!0:C&2?!1:l}function lds(l,C,E,D){let W=l.target.elementFlags,Q=l.target.fixedLength,se=Q?$4(E,l,D):D,Ee=Ot(UY(l),(Wt,Nt)=>{let Mr=W[Nt];return NtWt&1?2:Wt):Ve&8?Ot(W,Wt=>Wt&2?1:Wt):W,ot=LXr(l.target.readonly,CD(C));return Ue(Ee,cr)?cr:_D(Ee,Oe,ot,l.target.labeledElementDeclarations)}function uds(l,C,E){let D=VXr(C,bt,!0,E);return OA(D)?cr:L_(D,LXr(cge(l),CD(C)))}function VXr(l,C,E,D){let W=rye(D,_T(l),C),Q=al(rF(l.target||l),W),se=CD(l);return nt&&se&4&&!UI(Q,49152)?tW(Q,!0):nt&&se&8&&E?Uv(Q,524288):Q}function F$e(l,C,E,D){w.assert(l.symbol,"anonymous type must have symbol to be instantiated");let W=X1(l.objectFlags&-1572865|64,l.symbol);if(l.objectFlags&32){W.declaration=l.declaration;let Q=_T(l),se=V3t(Q);W.typeParameter=se,C=qY(zY(Q,se),C),se.mapper=C}return l.objectFlags&8388608&&(W.node=l.node),l.objectFlags&134217728&&(W.outerTypeParameters=l.outerTypeParameters),W.target=l,W.mapper=C,W.aliasSymbol=E||l.aliasSymbol,W.aliasTypeArguments=E?D:ek(l.aliasTypeArguments,C),W.objectFlags|=W.aliasTypeArguments?SZe(W.aliasTypeArguments):0,W}function P3t(l,C,E,D,W){let Q=l.root;if(Q.outerTypeParameters){let se=Ot(Q.outerTypeParameters,Oe=>dL(Oe,C)),Ee=(E?"C":"")+Jv(se)+x7(D,W),Ve=Q.instantiations.get(Ee);if(!Ve){let Oe=qb(Q.outerTypeParameters,se),ot=Q.checkType,Wt=Q.isDistributive?bT(dL(ot,Oe)):void 0;Ve=Wt&&ot!==Wt&&Wt.flags&1179648?O4r(Wt,Nt=>D3t(Q,$4(ot,Nt,Oe),E),D,W):D3t(Q,Oe,E,D,W),Q.instantiations.set(Ee,Ve)}return Ve}return l}function al(l,C){return l&&C?WXr(l,C,void 0,void 0):l}function WXr(l,C,E,D){var W;if(!rW(l))return l;if(te===100||M>=5e6)return(W=Mi)==null||W.instant(Mi.Phase.CheckTypes,"instantiateType_DepthLimit",{typeId:l.id,instantiationDepth:te,instantiationCount:M}),fr(ue,Z.Type_instantiation_is_excessively_deep_and_possibly_infinite),cr;P++,M++,te++;let Q=gds(l,C,E,D);return te--,Q}function gds(l,C,E,D){let W=l.flags;if(W&262144)return dL(l,C);if(W&524288){let Q=l.objectFlags;if(Q&52){if(Q&4&&!l.node){let se=l.resolvedTypeArguments,Ee=ek(se,C);return Ee!==se?_3t(l.target,Ee):l}return Q&1024?Ads(l,C):ods(l,C,E,D)}return l}if(W&3145728){let Q=l.flags&1048576?l.origin:void 0,se=Q&&Q.flags&3145728?Q.types:l.types,Ee=ek(se,C);if(Ee===se&&E===l.aliasSymbol)return l;let Ve=E||l.aliasSymbol,Oe=E?D:ek(l.aliasTypeArguments,C);return W&2097152||Q&&Q.flags&2097152?Pg(Ee,0,Ve,Oe):Ta(Ee,1,Ve,Oe)}if(W&4194304)return JN(al(l.type,C));if(W&134217728)return K4(l.texts,ek(l.types,C));if(W&268435456)return G7(l.symbol,al(l.type,C));if(W&8388608){let Q=E||l.aliasSymbol,se=E?D:ek(l.aliasTypeArguments,C);return zb(al(l.objectType,C),al(l.indexType,C),l.accessFlags,void 0,Q,se)}if(W&16777216)return P3t(l,qY(l.mapper,C),!1,E,D);if(W&33554432){let Q=al(l.baseType,C);if(xre(l))return c3t(Q);let se=al(l.constraint,C);return Q.flags&8650752&&F7(se)?u3t(Q,se):se.flags&3||yg(eJ(Q),eJ(se))?Q:Q.flags&8650752?u3t(Q,se):Pg([se,Q])}return l}function Ads(l,C){let E=al(l.mappedType,C);if(!(sa(E)&32))return l;let D=al(l.constraintType,C);if(!(D.flags&4194304))return l;let W=m4r(al(l.source,C),E,D);return W||l}function iye(l){return l.flags&402915327?l:l.permissiveInstantiation||(l.permissiveInstantiation=al(l,Qd))}function eJ(l){return l.flags&402915327?l:(l.restrictiveInstantiation||(l.restrictiveInstantiation=al(l,JA),l.restrictiveInstantiation.restrictiveInstantiation=l.restrictiveInstantiation),l.restrictiveInstantiation)}function dds(l,C){return hD(l.keyType,al(l.type,C),l.isReadonly,l.declaration)}function XB(l){switch(w.assert(l.kind!==174||TB(l)),l.kind){case 218:case 219:case 174:case 262:return PXr(l);case 210:return lr(l.properties,XB);case 209:return lr(l.elements,XB);case 227:return XB(l.whenTrue)||XB(l.whenFalse);case 226:return(l.operatorToken.kind===57||l.operatorToken.kind===61)&&(XB(l.left)||XB(l.right));case 303:return XB(l.initializer);case 217:return XB(l.expression);case 292:return lr(l.properties,XB)||TN(l.parent)&&lr(l.parent.parent.children,XB);case 291:{let{initializer:C}=l;return!!C&&XB(C)}case 294:{let{expression:C}=l;return!!C&&XB(C)}}return!1}function PXr(l){return gle(l)||pds(l)}function pds(l){return l.typeParameters||rb(l)||!l.body?!1:l.body.kind!==241?XB(l.body):!!wx(l.body,C=>!!C.expression&&XB(C.expression))}function Z$e(l){return(vG(l)||TB(l))&&PXr(l)}function OXr(l){if(l.flags&524288){let C=yT(l);if(C.constructSignatures.length||C.callSignatures.length){let E=X1(16,l.symbol);return E.members=C.members,E.properties=C.properties,E.callSignatures=v,E.constructSignatures=v,E.indexInfos=v,E}}else if(l.flags&2097152)return Pg(Ot(l.types,OXr));return l}function iF(l,C){return UN(l,C,Ub)}function sye(l,C){return UN(l,C,Ub)?-1:0}function O3t(l,C){return UN(l,C,Ab)?-1:0}function fds(l,C){return UN(l,C,LN)?-1:0}function qV(l,C){return UN(l,C,LN)}function LZe(l,C){return UN(l,C,PB)}function yg(l,C){return UN(l,C,Ab)}function zP(l,C){return l.flags&1048576?he(l.types,E=>zP(E,C)):C.flags&1048576?lr(C.types,E=>zP(l,E)):l.flags&2097152?lr(l.types,E=>zP(E,C)):l.flags&58982400?zP(a_(l)||Kr,C):yD(C)?!!(l.flags&67633152):C===GI?!!(l.flags&67633152)&&!yD(l):C===qC?!!(l.flags&524288)&&yPt(l):vre(l,Bre(C))||UB(C)&&!cge(C)&&zP(l,Bs)}function L$e(l,C){return UN(l,C,QE)}function VZe(l,C){return L$e(l,C)||L$e(C,l)}function h0(l,C,E,D,W,Q){return JB(l,C,Ab,E,D,W,Q)}function $V(l,C,E,D,W,Q){return M3t(l,C,Ab,E,D,W,Q,void 0)}function M3t(l,C,E,D,W,Q,se,Ee){return UN(l,C,E)?!0:!D||!oye(W,l,C,E,Q,se,Ee)?JB(l,C,E,D,Q,se,Ee):!1}function MXr(l){return!!(l.flags&16777216||l.flags&2097152&&lr(l.types,MXr))}function oye(l,C,E,D,W,Q,se){if(!l||MXr(E))return!1;if(!JB(C,E,D,void 0)&&Ids(l,C,E,D,W,Q,se))return!0;switch(l.kind){case 234:if(!Bhe(l))break;case 294:case 217:return oye(l.expression,C,E,D,W,Q,se);case 226:switch(l.operatorToken.kind){case 64:case 28:return oye(l.right,C,E,D,W,Q,se)}break;case 210:return Bds(l,C,E,D,Q,se);case 209:return bds(l,C,E,D,Q,se);case 292:return yds(l,C,E,D,Q,se);case 219:return Cds(l,C,E,D,Q,se)}return!1}function Ids(l,C,E,D,W,Q,se){let Ee=Pu(C,0),Ve=Pu(C,1);for(let Oe of[Ve,Ee])if(lr(Oe,ot=>{let Wt=Sd(ot);return!(Wt.flags&131073)&&JB(Wt,E,D,void 0)})){let ot=se||{};h0(C,E,l,W,Q,ot);let Wt=ot.errors[ot.errors.length-1];return eg(Wt,Us(l,Oe===Ve?Z.Did_you_mean_to_use_new_with_this_expression:Z.Did_you_mean_to_call_this_expression)),!0}return!1}function Cds(l,C,E,D,W,Q){if(mc(l.body)||lr(l.parameters,XC))return!1;let se=lJ(C);if(!se)return!1;let Ee=Pu(E,0);if(!O(Ee))return!1;let Ve=l.body,Oe=Sd(se),ot=Ta(Ot(Ee,Sd));if(!JB(Oe,ot,D,void 0)){let Wt=Ve&&oye(Ve,Oe,ot,D,void 0,W,Q);if(Wt)return Wt;let Nt=Q||{};if(JB(Oe,ot,D,Ve,void 0,W,Nt),Nt.errors)return E.symbol&&O(E.symbol.declarations)&&eg(Nt.errors[Nt.errors.length-1],Us(E.symbol.declarations[0],Z.The_expected_type_comes_from_the_return_type_of_this_signature)),!(YI(l)&2)&&!ZI(Oe,"then")&&JB(bLe(Oe),ot,D,void 0)&&eg(Nt.errors[Nt.errors.length-1],Us(l,Z.Did_you_mean_to_mark_this_function_as_async)),!0}return!1}function QXr(l,C,E){let D=jV(C,E);if(D)return D;if(C.flags&1048576){let W=qXr(l,C);if(W)return jV(W,E)}}function YXr(l,C){oLe(l,C,!1);let E=mge(l,1);return Cye(),E}function WZe(l,C,E,D,W,Q){let se=!1;for(let Ee of l){let{errorNode:Ve,innerExpression:Oe,nameType:ot,errorMessage:Wt}=Ee,Nt=QXr(C,E,ot);if(!Nt||Nt.flags&8388608)continue;let Mr=jV(C,ot);if(!Mr)continue;let ln=S$e(ot,void 0);if(!JB(Mr,Nt,D,void 0)){let hn=Oe&&oye(Oe,Mr,Nt,D,void 0,W,Q);if(se=!0,!hn){let mi=Q||{},Ti=Oe?YXr(Oe,Mr):Mr;if(Ye&&W$e(Ti,Nt)){let ks=Us(Ve,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target,Xs(Ti),Xs(Nt));UA.add(ks),mi.errors=[ks]}else{let ks=!!(ln&&(_g(E,ln)||en).flags&16777216),Wo=!!(ln&&(_g(C,ln)||en).flags&16777216);Nt=cF(Nt,ks),Mr=cF(Mr,ks&&Wo),JB(Ti,Nt,D,Ve,Wt,W,mi)&&Ti!==Mr&&JB(Mr,Nt,D,Ve,Wt,W,mi)}if(mi.errors){let ks=mi.errors[mi.errors.length-1],Wo=x2(ot)?k2(ot):void 0,Yi=Wo!==void 0?_g(E,Wo):void 0,Cs=!1;if(!Yi){let Ds=U0e(E,ot);Ds&&Ds.declaration&&!ls(Ds.declaration).hasNoDefaultLib&&(Cs=!0,eg(ks,Us(Ds.declaration,Z.The_expected_type_comes_from_this_index_signature)))}if(!Cs&&(Yi&&O(Yi.declarations)||E.symbol&&O(E.symbol.declarations))){let Ds=Yi&&O(Yi.declarations)?Yi.declarations[0]:E.symbol.declarations[0];ls(Ds).hasNoDefaultLib||eg(ks,Us(Ds,Z.The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1,Wo&&!(ot.flags&8192)?Sc(Wo):Xs(ot),Xs(E)))}}}}}return se}function mds(l,C,E,D,W,Q){let se=VC(E,X$e),Ee=VC(E,ot=>!X$e(ot)),Ve=Ee!==Vi?WOt(13,0,Ee,void 0):void 0,Oe=!1;for(let ot=l.next();!ot.done;ot=l.next()){let{errorNode:Wt,innerExpression:Nt,nameType:Mr,errorMessage:ln}=ot.value,hn=Ve,mi=se!==Vi?QXr(C,se,Mr):void 0;if(mi&&!(mi.flags&8388608)&&(hn=Ve?Ta([Ve,mi]):mi),!hn)continue;let Ti=jV(C,Mr);if(!Ti)continue;let ks=S$e(Mr,void 0);if(!JB(Ti,hn,D,void 0)){let Wo=Nt&&oye(Nt,Ti,hn,D,void 0,W,Q);if(Oe=!0,!Wo){let Yi=Q||{},Cs=Nt?YXr(Nt,Ti):Ti;if(Ye&&W$e(Cs,hn)){let Ds=Us(Wt,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target,Xs(Cs),Xs(hn));UA.add(Ds),Yi.errors=[Ds]}else{let Ds=!!(ks&&(_g(se,ks)||en).flags&16777216),zo=!!(ks&&(_g(C,ks)||en).flags&16777216);hn=cF(hn,Ds),Ti=cF(Ti,Ds&&zo),JB(Cs,hn,D,Wt,ln,W,Yi)&&Cs!==Ti&&JB(Ti,hn,D,Wt,ln,W,Yi)}}}}return Oe}function*hds(l){if(O(l.properties))for(let C of l.properties)k6(C)||MPt(YS(C.name))||(yield{errorNode:C.name,innerExpression:C.initializer,nameType:pb(YS(C.name))})}function*_ds(l,C){if(!O(l.children))return;let E=0;for(let D=0;D1,mi,Ti;if(I3t(!1)!==Jg){let Wo=rXr(Qt);mi=VC(Mr,Yi=>yg(Yi,Wo)),Ti=VC(Mr,Yi=>!yg(Yi,Wo))}else mi=VC(Mr,X$e),Ti=VC(Mr,Wo=>!X$e(Wo));if(hn){if(mi!==Vi){let Wo=_D(_et(Oe,0)),Yi=_ds(Oe,Ve);se=mds(Yi,Wo,mi,D,W,Q)||se}else if(!UN(zb(C,Nt),Mr,D)){se=!0;let Wo=fr(Oe.openingElement.tagName,Z.This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided,Wt,Xs(Mr));Q&&Q.skipLogging&&(Q.errors||(Q.errors=[])).push(Wo)}}else if(Ti!==Vi){let Wo=ln[0],Yi=HXr(Wo,Nt,Ve);Yi&&(se=WZe(function*(){yield Yi}(),C,E,D,W,Q)||se)}else if(!UN(zb(C,Nt),Mr,D)){se=!0;let Wo=fr(Oe.openingElement.tagName,Z.This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided,Wt,Xs(Mr));Q&&Q.skipLogging&&(Q.errors||(Q.errors=[])).push(Wo)}}return se;function Ve(){if(!Ee){let Oe=Tf(l.parent.tagName),ot=cLe(aJ(l)),Wt=ot===void 0?"children":Sc(ot),Nt=zb(E,pb(Wt)),Mr=Z._0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2;Ee={...Mr,key:"!!ALREADY FORMATTED!!",message:XQ(Mr,Oe,Wt,Xs(Nt))}}return Ee}}function*XXr(l,C){let E=O(l.elements);if(E)for(let D=0;DVe:$N(l)>Ve))return D&&!(E&8)&&W(Z.Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1,$N(l),Ve),0;l.typeParameters&&l.typeParameters!==C.typeParameters&&(C=Bgs(C),l=tUr(l,C,void 0,se));let ot=tE(l),Wt=bye(l),Nt=bye(C);(Wt||Nt)&&al(Wt||Nt,Ee);let Mr=C.declaration?C.declaration.kind:0,ln=!(E&3)&&qe&&Mr!==174&&Mr!==173&&Mr!==176,hn=-1,mi=UP(l);if(mi&&mi!==oo){let Wo=UP(C);if(Wo){let Yi=!ln&&se(mi,Wo,!1)||se(Wo,mi,D);if(!Yi)return D&&W(Z.The_this_types_of_each_signature_are_incompatible),0;hn&=Yi}}let Ti=Wt||Nt?Math.min(ot,Ve):Math.max(ot,Ve),ks=Wt||Nt?Ti-1:-1;for(let Wo=0;Wo=$N(l)&&Wo<$N(C)&&se(Yi,Cs,!1)&&(ha=0),!ha)return D&&W(Z.Types_of_parameters_0_and_1_are_incompatible,Sc(fge(l,Wo)),Sc(fge(C,Wo))),0;hn&=ha}}if(!(E&4)){let Wo=I$e(C)?Qt:C.declaration&&qN(C.declaration)?_C(GA(C.declaration.symbol)):Sd(C);if(Wo===oo||Wo===Qt)return hn;let Yi=I$e(l)?Qt:l.declaration&&qN(l.declaration)?_C(GA(l.declaration.symbol)):Sd(l),Cs=HB(C);if(Cs){let Ds=HB(l);if(Ds)hn&=Sds(Ds,Cs,D,W,se);else if(kRe(Cs)||GRe(Cs))return D&&W(Z.Signature_0_must_be_a_type_predicate,OV(l)),0}else hn&=E&1&&se(Wo,Yi,!1)||se(Yi,Wo,D),!hn&&D&&Q&&Q(Yi,Wo)}return hn}function Sds(l,C,E,D,W){if(l.kind!==C.kind)return E&&(D(Z.A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard),D(Z.Type_predicate_0_is_not_assignable_to_1,dD(l),dD(C))),0;if((l.kind===1||l.kind===3)&&l.parameterIndex!==C.parameterIndex)return E&&(D(Z.Parameter_0_is_not_in_the_same_position_as_parameter_1,l.parameterName,C.parameterName),D(Z.Type_predicate_0_is_not_assignable_to_1,dD(l),dD(C))),0;let Q=l.type===C.type?-1:l.type&&C.type?W(l.type,C.type,E):0;return Q===0&&E&&D(Z.Type_predicate_0_is_not_assignable_to_1,dD(l),dD(C)),Q}function wds(l,C){let E=z0e(l),D=z0e(C),W=Sd(E),Q=Sd(D);return Q===oo||UN(Q,W,Ab)||UN(W,Q,Ab)?vds(E,D,!0):!1}function Y3t(l){return l!==hf&&l.properties.length===0&&l.callSignatures.length===0&&l.constructSignatures.length===0&&l.indexInfos.length===0}function sF(l){return l.flags&524288?!jb(l)&&Y3t(yT(l)):l.flags&67108864?!0:l.flags&1048576?lr(l.types,sF):l.flags&2097152?he(l.types,sF):!1}function yD(l){return!!(sa(l)&16&&(l.members&&Y3t(l)||l.symbol&&l.symbol.flags&2048&&XV(l.symbol).size===0))}function Tds(l){if(nt&&l.flags&1048576){if(!(l.objectFlags&33554432)){let C=l.types;l.objectFlags|=33554432|(C.length>=3&&C[0].flags&32768&&C[1].flags&65536&&lr(C,yD)?67108864:0)}return!!(l.objectFlags&67108864)}return!1}function Fre(l){return!!((l.flags&1048576?l.types[0]:l).flags&32768)}function UXr(l){let C=l.flags&1048576?l.types[0]:l;return!!(C.flags&32768)&&C!==ar}function KXr(l){return l.flags&524288&&!jb(l)&&Id(l).length===0&&ey(l).length===1&&!!$x(l,Jt)||l.flags&3145728&&he(l.types,KXr)||!1}function H3t(l,C,E){let D=l.flags&8?o_(l):l,W=C.flags&8?o_(C):C;if(D===W)return!0;if(D.escapedName!==W.escapedName||!(D.flags&256)||!(W.flags&256))return!1;let Q=kg(D)+","+kg(W),se=UZ.get(Q);if(se!==void 0&&!(!(se&4)&&se&2&&E))return!!(se&1);let Ee=lo(W);for(let Ve of Id(lo(D)))if(Ve.flags&8){let Oe=_g(Ee,Ve.escapedName);if(!Oe||!(Oe.flags&8))return E?(E(Z.Property_0_is_missing_in_type_1,df(Ve),Xs(xp(W),void 0,64)),UZ.set(Q,6)):UZ.set(Q,2),!1;let ot=AJ(zd(Ve,306)).value,Wt=AJ(zd(Oe,306)).value;if(ot!==Wt){let Nt=typeof ot=="string",Mr=typeof Wt=="string";if(ot!==void 0&&Wt!==void 0){if(!E)UZ.set(Q,2);else{let ln=Nt?`"${tT(ot)}"`:ot,hn=Mr?`"${tT(Wt)}"`:Wt;E(Z.Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given,df(W),df(Oe),hn,ln),UZ.set(Q,6)}return!1}if(Nt||Mr){if(!E)UZ.set(Q,2);else{let ln=ot??Wt;w.assert(typeof ln=="string");let hn=`"${tT(ln)}"`;E(Z.One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value,df(W),df(Oe),hn),UZ.set(Q,6)}return!1}}}return UZ.set(Q,1),!0}function aye(l,C,E,D){let W=l.flags,Q=C.flags;return Q&1||W&131072||l===Pr||Q&2&&!(E===PB&&W&1)?!0:Q&131072?!1:!!(W&402653316&&Q&4||W&128&&W&1024&&Q&128&&!(Q&1024)&&l.value===C.value||W&296&&Q&8||W&256&&W&1024&&Q&256&&!(Q&1024)&&l.value===C.value||W&2112&&Q&64||W&528&&Q&16||W&12288&&Q&4096||W&32&&Q&32&&l.symbol.escapedName===C.symbol.escapedName&&H3t(l.symbol,C.symbol,D)||W&1024&&Q&1024&&(W&1048576&&Q&1048576&&H3t(l.symbol,C.symbol,D)||W&2944&&Q&2944&&l.value===C.value&&H3t(l.symbol,C.symbol,D))||W&32768&&(!nt&&!(Q&3145728)||Q&49152)||W&65536&&(!nt&&!(Q&3145728)||Q&65536)||W&524288&&Q&67108864&&!(E===PB&&yD(l)&&!(sa(l)&8192))||(E===Ab||E===QE)&&(W&1||W&8&&(Q&32||Q&256&&Q&1024)||W&256&&!(W&1024)&&(Q&32||Q&256&&Q&1024&&l.value===C.value)||Tds(C)))}function UN(l,C,E){if(jY(l)&&(l=l.regularType),jY(C)&&(C=C.regularType),l===C)return!0;if(E!==Ub){if(E===QE&&!(C.flags&131072)&&aye(C,l,E)||aye(l,C,E))return!0}else if(!((l.flags|C.flags)&61865984)){if(l.flags!==C.flags)return!1;if(l.flags&67358815)return!0}if(l.flags&524288&&C.flags&524288){let D=E.get(M$e(l,C,0,E,!1));if(D!==void 0)return!!(D&1)}return l.flags&469499904||C.flags&469499904?JB(l,C,E,void 0):!1}function jXr(l,C){return sa(l)&2048&&MPt(C.escapedName)}function PZe(l,C){for(;;){let E=jY(l)?l.regularType:eW(l)?Dds(l,C):sa(l)&4?l.node?lL(l.target,of(l)):$3t(l)||l:l.flags&3145728?Nds(l,C):l.flags&33554432?C?l.baseType:g3t(l):l.flags&25165824?nF(l,C):l;if(E===l)return E;l=E}}function Nds(l,C){let E=bT(l);if(E!==l)return E;if(l.flags&2097152&&Rds(l)){let D=Ar(l.types,W=>PZe(W,C));if(D!==l.types)return Pg(D)}return l}function Rds(l){let C=!1,E=!1;for(let D of l.types)if(C||(C=!!(D.flags&465829888)),E||(E=!!(D.flags&98304)||yD(D)),C&&E)return!0;return!1}function Dds(l,C){let E=UY(l),D=Ar(E,W=>W.flags&25165824?nF(W,C):W);return E!==D?y3t(l.target,D):l}function JB(l,C,E,D,W,Q,se){var Ee;let Ve,Oe,ot,Wt,Nt,Mr,ln=0,hn=0,mi=0,Ti=0,ks=!1,Wo=0,Yi=0,Cs,Ds,zo=16e6-E.size>>3;w.assert(E!==Ub||!D,"no error reporting in identity checking");let ma=So(l,C,3,!!D,W);if(Ds&&FA(),ks){let Cr=M$e(l,C,0,E,!1);E.set(Cr,6),(Ee=Mi)==null||Ee.instant(Mi.Phase.CheckTypes,"checkTypeRelatedTo_DepthLimit",{sourceId:l.id,targetId:C.id,depth:hn,targetDepth:mi});let Qr=zo<=0?Z.Excessive_complexity_comparing_types_0_and_1:Z.Excessive_stack_depth_comparing_types_0_and_1,Wn=fr(D||ue,Qr,Xs(l),Xs(C));se&&(se.errors||(se.errors=[])).push(Wn)}else if(Ve){if(Q){let Wn=Q();Wn&&(FDe(Wn,Ve),Ve=Wn)}let Cr;if(W&&D&&!ma&&l.symbol){let Wn=ol(l.symbol);if(Wn.originatingImport&&!pC(Wn.originatingImport)&&JB(lo(Wn.target),C,E,void 0)){let _i=Us(Wn.originatingImport,Z.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);Cr=Hr(Cr,_i)}}let Qr=GS(ls(D),D,Ve,Cr);Oe&&eg(Qr,...Oe),se&&(se.errors||(se.errors=[])).push(Qr),(!se||!se.skipLogging)&&UA.add(Qr)}return D&&se&&se.skipLogging&&ma===0&&w.assert(!!se.errors,"missed opportunity to interact with error."),ma!==0;function ha(Cr){Ve=Cr.errorInfo,Cs=Cr.lastSkippedInfo,Ds=Cr.incompatibleStack,Wo=Cr.overrideNextErrorInfo,Yi=Cr.skipParentCounter,Oe=Cr.relatedInfo}function Tg(){return{errorInfo:Ve,lastSkippedInfo:Cs,incompatibleStack:Ds?.slice(),overrideNextErrorInfo:Wo,skipParentCounter:Yi,relatedInfo:Oe?.slice()}}function Ou(Cr,...Qr){Wo++,Cs=void 0,(Ds||(Ds=[])).push([Cr,...Qr])}function FA(){let Cr=Ds||[];Ds=void 0;let Qr=Cs;if(Cs=void 0,Cr.length===1){ou(...Cr[0]),Qr&&LI(void 0,...Qr);return}let Wn="",Lr=[];for(;Cr.length;){let[_i,...ui]=Cr.pop();switch(_i.code){case Z.Types_of_property_0_are_incompatible.code:{Wn.indexOf("new ")===0&&(Wn=`(${Wn})`);let yn=""+ui[0];Wn.length===0?Wn=`${yn}`:Ke(yn,iA(Ne))?Wn=`${Wn}.${yn}`:yn[0]==="["&&yn[yn.length-1]==="]"?Wn=`${Wn}${yn}`:Wn=`${Wn}[${yn}]`;break}case Z.Call_signature_return_types_0_and_1_are_incompatible.code:case Z.Construct_signature_return_types_0_and_1_are_incompatible.code:case Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:case Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:{if(Wn.length===0){let yn=_i;_i.code===Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?yn=Z.Call_signature_return_types_0_and_1_are_incompatible:_i.code===Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code&&(yn=Z.Construct_signature_return_types_0_and_1_are_incompatible),Lr.unshift([yn,ui[0],ui[1]])}else{let yn=_i.code===Z.Construct_signature_return_types_0_and_1_are_incompatible.code||_i.code===Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?"new ":"",hi=_i.code===Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code||_i.code===Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?"":"...";Wn=`${yn}${Wn}(${hi})`}break}case Z.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target.code:{Lr.unshift([Z.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target,ui[0],ui[1]]);break}case Z.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target.code:{Lr.unshift([Z.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target,ui[0],ui[1],ui[2]]);break}default:return w.fail(`Unhandled Diagnostic: ${_i.code}`)}}Wn?ou(Wn[Wn.length-1]===")"?Z.The_types_returned_by_0_are_incompatible_between_these_types:Z.The_types_of_0_are_incompatible_between_these_types,Wn):Lr.shift();for(let[_i,...ui]of Lr){let yn=_i.elidedInCompatabilityPyramid;_i.elidedInCompatabilityPyramid=!1,ou(_i,...ui),_i.elidedInCompatabilityPyramid=yn}Qr&&LI(void 0,...Qr)}function ou(Cr,...Qr){w.assert(!!D),Ds&&FA(),!Cr.elidedInCompatabilityPyramid&&(Yi===0?Ve=su(Ve,Cr,...Qr):Yi--)}function Jf(Cr,...Qr){ou(Cr,...Qr),Yi++}function u_(Cr){w.assert(!!Ve),Oe?Oe.push(Cr):Oe=[Cr]}function LI(Cr,Qr,Wn){Ds&&FA();let[Lr,_i]=Kue(Qr,Wn),ui=Qr,yn=Lr;if(cye(Qr)&&!X3t(Wn)&&(ui=oF(Qr),w.assert(!yg(ui,Wn),"generalized source shouldn't be assignable"),yn=hre(ui)),(Wn.flags&8388608&&!(Qr.flags&8388608)?Wn.objectType.flags:Wn.flags)&262144&&Wn!==Yb&&Wn!==rf){let vs=a_(Wn),pi;vs&&(yg(ui,vs)||(pi=yg(Qr,vs)))?ou(Z._0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2,pi?Lr:yn,_i,Xs(vs)):(Ve=void 0,ou(Z._0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1,_i,yn))}if(Cr)Cr===Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1&&Ye&&zXr(Qr,Wn).length&&(Cr=Z.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(E===QE)Cr=Z.Type_0_is_not_comparable_to_type_1;else if(Lr===_i)Cr=Z.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated;else if(Ye&&zXr(Qr,Wn).length)Cr=Z.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(Qr.flags&128&&Wn.flags&1048576){let vs=QIs(Qr,Wn);if(vs){ou(Z.Type_0_is_not_assignable_to_type_1_Did_you_mean_2,yn,_i,Xs(vs));return}}Cr=Z.Type_0_is_not_assignable_to_type_1}ou(Cr,yn,_i)}function As(Cr,Qr){let Wn=B7(Cr.symbol)?Xs(Cr,Cr.symbol.valueDeclaration):Xs(Cr),Lr=B7(Qr.symbol)?Xs(Qr,Qr.symbol.valueDeclaration):Xs(Qr);(Nl===Cr&&Jt===Qr||vA===Cr&&bt===Qr||PA===Cr&&ds===Qr||z5r()===Cr&&Es===Qr)&&ou(Z._0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible,Lr,Wn)}function Zs(Cr,Qr,Wn){return aA(Cr)?Cr.target.readonly&&YZe(Qr)?(Wn&&ou(Z.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1,Xs(Cr),Xs(Qr)),!1):qP(Qr):cge(Cr)&&YZe(Qr)?(Wn&&ou(Z.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1,Xs(Cr),Xs(Qr)),!1):aA(Qr)?UB(Cr):!0}function Vc(Cr,Qr,Wn){return So(Cr,Qr,3,Wn)}function So(Cr,Qr,Wn=3,Lr=!1,_i,ui=0){if(Cr===Qr)return-1;if(Cr.flags&524288&&Qr.flags&402784252)return E===QE&&!(Qr.flags&131072)&&aye(Qr,Cr,E)||aye(Cr,Qr,E,Lr?ou:void 0)?-1:(Lr&&tl(Cr,Qr,Cr,Qr,_i),0);let yn=PZe(Cr,!1),hi=PZe(Qr,!0);if(yn===hi)return-1;if(E===Ub)return yn.flags!==hi.flags?0:yn.flags&67358815?-1:(Cd(yn,hi),vge(yn,hi,!1,0,Wn));if(yn.flags&262144&&H4(yn)===hi)return-1;if(yn.flags&470302716&&hi.flags&1048576){let vs=hi.types,pi=vs.length===2&&vs[0].flags&98304?vs[1]:vs.length===3&&vs[0].flags&98304&&vs[1].flags&98304?vs[2]:void 0;if(pi&&!(pi.flags&98304)&&(hi=PZe(pi,!0),yn===hi))return-1}if(E===QE&&!(hi.flags&131072)&&aye(hi,yn,E)||aye(yn,hi,E,Lr?ou:void 0))return-1;if(yn.flags&469499904||hi.flags&469499904){if(!(ui&2)&&tO(yn)&&sa(yn)&8192&&V_(yn,hi,Lr))return Lr&&LI(_i,yn,Qr.aliasSymbol?Qr:hi),0;let pi=(E!==QE||ET(yn))&&!(ui&2)&&yn.flags&405405692&&yn!==GI&&hi.flags&2621440&&U3t(hi)&&(Id(yn).length>0||ntt(yn)),Js=!!(sa(yn)&2048);if(pi&&!kds(yn,hi,Js)){if(Lr){let va=Xs(Cr.aliasSymbol?Cr:yn),fa=Xs(Qr.aliasSymbol?Qr:hi),ng=Pu(yn,0),Eg=Pu(yn,1);ng.length>0&&So(Sd(ng[0]),hi,1,!1)||Eg.length>0&&So(Sd(Eg[0]),hi,1,!1)?ou(Z.Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it,va,fa):ou(Z.Type_0_has_no_properties_in_common_with_type_1,va,fa)}return 0}Cd(yn,hi);let Vs=yn.flags&1048576&&yn.types.length<4&&!(hi.flags&1048576)||hi.flags&1048576&&hi.types.length<4&&!(yn.flags&469499904)?_0(yn,hi,Lr,ui):vge(yn,hi,Lr,ui,Wn);if(Vs)return Vs}return Lr&&tl(Cr,Qr,yn,hi,_i),0}function tl(Cr,Qr,Wn,Lr,_i){var ui,yn;let hi=!!$3t(Cr),vs=!!$3t(Qr);Wn=Cr.aliasSymbol||hi?Cr:Wn,Lr=Qr.aliasSymbol||vs?Qr:Lr;let pi=Wo>0;if(pi&&Wo--,Wn.flags&524288&&Lr.flags&524288){let Js=Ve;Zs(Wn,Lr,!0),Ve!==Js&&(pi=!!Ve)}if(Wn.flags&524288&&Lr.flags&402784252)As(Wn,Lr);else if(Wn.symbol&&Wn.flags&524288&&GI===Wn)ou(Z.The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead);else if(sa(Wn)&2048&&Lr.flags&2097152){let Js=Lr.types,ta=tH(Z2.IntrinsicAttributes,D),Vs=tH(Z2.IntrinsicClassAttributes,D);if(!OA(ta)&&!OA(Vs)&&(Ue(Js,ta)||Ue(Js,Vs)))return}else Ve=KWt(Ve,Qr);if(!_i&&pi){let Js=Tg();LI(_i,Wn,Lr);let ta;Ve&&Ve!==Js.errorInfo&&(ta={code:Ve.code,messageText:Ve.messageText}),ha(Js),ta&&Ve&&(Ve.canonicalHead=ta),Cs=[Wn,Lr];return}if(LI(_i,Wn,Lr),Wn.flags&262144&&((yn=(ui=Wn.symbol)==null?void 0:ui.declarations)!=null&&yn[0])&&!H4(Wn)){let Js=V3t(Wn);if(Js.constraint=al(Lr,zY(Wn,Js)),bZe(Js)){let ta=Xs(Lr,Wn.symbol.declarations[0]);u_(Us(Wn.symbol.declarations[0],Z.This_type_parameter_might_need_an_extends_0_constraint,ta))}}}function Cd(Cr,Qr){if(Mi&&Cr.flags&3145728&&Qr.flags&3145728){let Wn=Cr,Lr=Qr;if(Wn.objectFlags&Lr.objectFlags&32768)return;let _i=Wn.types.length,ui=Lr.types.length;_i*ui>1e6&&Mi.instant(Mi.Phase.CheckTypes,"traceUnionsOrIntersectionsTooLarge_DepthLimit",{sourceId:Cr.id,sourceSize:_i,targetId:Qr.id,targetSize:ui,pos:D?.pos,end:D?.end})}}function $A(Cr,Qr){return Ta(Td(Cr,(Lr,_i)=>{var ui;_i=$0(_i);let yn=_i.flags&3145728?EZe(_i,Qr):HY(_i,Qr),hi=yn&&lo(yn)||((ui=D7(_i,Qr))==null?void 0:ui.type)||wn;return Hr(Lr,hi)},void 0)||v)}function V_(Cr,Qr,Wn){var Lr;if(!hye(Qr)||!dt&&sa(Qr)&4096)return!1;let _i=!!(sa(Cr)&2048);if((E===Ab||E===QE)&&(Age(GI,Qr)||!_i&&sF(Qr)))return!1;let ui=Qr,yn;Qr.flags&1048576&&(ui=b8r(Cr,Qr,So)||Kys(Qr),yn=ui.flags&1048576?ui.types:[ui]);for(let hi of Id(Cr))if(bg(hi,Cr.symbol)&&!jXr(Cr,hi)){if(!bet(ui,hi.escapedName,_i)){if(Wn){let vs=VC(ui,hye);if(!D)return w.fail();if(AY(D)||Jm(D)||Jm(D.parent)){hi.valueDeclaration&&NN(hi.valueDeclaration)&&ls(D)===ls(hi.valueDeclaration.name)&&(D=hi.valueDeclaration.name);let pi=qc(hi),Js=HJr(pi,vs),ta=Js?qc(Js):void 0;ta?ou(Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2,pi,Xs(vs),ta):ou(Z.Property_0_does_not_exist_on_type_1,pi,Xs(vs))}else{let pi=((Lr=Cr.symbol)==null?void 0:Lr.declarations)&&$i(Cr.symbol.declarations),Js;if(hi.valueDeclaration&&Si(hi.valueDeclaration,ta=>ta===pi)&&ls(pi)===ls(D)){let ta=hi.valueDeclaration;w.assertNode(ta,EB);let Vs=ta.name;D=Vs,sr(Vs)&&(Js=XJr(Vs,vs))}Js!==void 0?Jf(Z.Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2,qc(hi),Xs(vs),Js):Jf(Z.Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1,qc(hi),Xs(vs))}}return!0}if(yn&&!So(lo(hi),$A(yn,hi.escapedName),3,Wn))return Wn&&Ou(Z.Types_of_property_0_are_incompatible,qc(hi)),!0}return!1}function bg(Cr,Qr){return Cr.valueDeclaration&&Qr.valueDeclaration&&Cr.valueDeclaration.parent===Qr.valueDeclaration}function _0(Cr,Qr,Wn,Lr){if(Cr.flags&1048576){if(Qr.flags&1048576){let _i=Cr.origin;if(_i&&_i.flags&2097152&&Qr.aliasSymbol&&Ue(_i.types,Qr))return-1;let ui=Qr.origin;if(ui&&ui.flags&1048576&&Cr.aliasSymbol&&Ue(ui.types,Cr))return-1}return E===QE?KI(Cr,Qr,Wn&&!(Cr.flags&402784252),Lr):AF(Cr,Qr,Wn&&!(Cr.flags&402784252),Lr)}if(Qr.flags&1048576)return Kf(gye(Cr),Qr,Wn&&!(Cr.flags&402784252)&&!(Qr.flags&402784252),Lr);if(Qr.flags&2097152)return rB(Cr,Qr,Wn,2);if(E===QE&&Qr.flags&402784252){let _i=Ar(Cr.types,ui=>ui.flags&465829888?a_(ui)||Kr:ui);if(_i!==Cr.types){if(Cr=Pg(_i),Cr.flags&131072)return 0;if(!(Cr.flags&2097152))return So(Cr,Qr,1,!1)||So(Qr,Cr,1,!1)}}return KI(Cr,Qr,!1,1)}function Uf(Cr,Qr){let Wn=-1,Lr=Cr.types;for(let _i of Lr){let ui=Kf(_i,Qr,!1,0);if(!ui)return 0;Wn&=ui}return Wn}function Kf(Cr,Qr,Wn,Lr){let _i=Qr.types;if(Qr.flags&1048576){if(gL(_i,Cr))return-1;if(E!==QE&&sa(Qr)&32768&&!(Cr.flags&1024)&&(Cr.flags&2688||(E===LN||E===PB)&&Cr.flags&256)){let yn=Cr===Cr.regularType?Cr.freshType:Cr.regularType,hi=Cr.flags&128?Jt:Cr.flags&256?bt:Cr.flags&2048?Vt:void 0;return hi&&gL(_i,hi)||yn&&gL(_i,yn)?-1:0}let ui=T4r(Qr,Cr);if(ui){let yn=So(Cr,ui,2,!1,void 0,Lr);if(yn)return yn}}for(let ui of _i){let yn=So(Cr,ui,2,!1,void 0,Lr);if(yn)return yn}if(Wn){let ui=qXr(Cr,Qr,So);ui&&So(Cr,ui,2,!0,void 0,Lr)}return 0}function rB(Cr,Qr,Wn,Lr){let _i=-1,ui=Qr.types;for(let yn of ui){let hi=So(Cr,yn,2,Wn,void 0,Lr);if(!hi)return 0;_i&=hi}return _i}function KI(Cr,Qr,Wn,Lr){let _i=Cr.types;if(Cr.flags&1048576&&gL(_i,Qr))return-1;let ui=_i.length;for(let yn=0;yn=yn.types.length&&ui.length%yn.types.length===0){let Js=So(vs,yn.types[hi%yn.types.length],3,!1,void 0,Lr);if(Js){_i&=Js;continue}}let pi=So(vs,Qr,1,Wn,void 0,Lr);if(!pi)return 0;_i&=pi}return _i}function Jre(Cr=v,Qr=v,Wn=v,Lr,_i){if(Cr.length!==Qr.length&&E===Ub)return 0;let ui=Cr.length<=Qr.length?Cr.length:Qr.length,yn=-1;for(let hi=0;hi(va|=Eg?16:8,Vs(Eg)));let fa;return Ti===3?((ui=Mi)==null||ui.instant(Mi.Phase.CheckTypes,"recursiveTypeRelatedTo_DepthLimit",{sourceId:Cr.id,sourceIdStack:Nt.map(Eg=>Eg.id),targetId:Qr.id,targetIdStack:Mr.map(Eg=>Eg.id),depth:hn,targetDepth:mi}),fa=3):((yn=Mi)==null||yn.push(Mi.Phase.CheckTypes,"structuredTypeRelatedTo",{sourceId:Cr.id,targetId:Qr.id}),fa=Zye(Cr,Qr,Wn,Lr),(hi=Mi)==null||hi.pop()),lg&&(lg=Vs),_i&1&&hn--,_i&2&&mi--,Ti=ta,fa?(fa===-1||hn===0&&mi===0)&&ng(fa===-1||fa===3):(E.set(vs,(Wn?4:0)|2|va),zo--,ng(!1)),fa;function ng(Eg){for(let Hp=Js;Hphi!==Cr)&&(ui=So(yn,Qr,1,!1,void 0,Lr))}ui&&!(Lr&2)&&Qr.flags&2097152&&!z4(Qr)&&Cr.flags&2621440?(ui&=Gg(Cr,Qr,Wn,void 0,!1,0),ui&&tO(Cr)&&sa(Cr)&8192&&(ui&=gl(Cr,Qr,!1,Wn,0))):ui&&T$e(Qr)&&!qP(Qr)&&Cr.flags&2097152&&$0(Cr).flags&3670016&&!lr(Cr.types,yn=>yn===Qr||!!(sa(yn)&262144))&&(ui&=Gg(Cr,Qr,Wn,void 0,!0,Lr))}return ui&&ha(_i),ui}function W_(Cr,Qr){let Wn=$0(YY(Qr)),Lr=[];return MWt(Wn,8576,!1,_i=>void Lr.push(al(Cr,rye(Qr.mapper,_T(Qr),_i)))),Ta(Lr)}function WLe(Cr,Qr,Wn,Lr,_i){let ui,yn,hi=!1,vs=Cr.flags,pi=Qr.flags;if(E===Ub){if(vs&3145728){let Vs=Uf(Cr,Qr);return Vs&&(Vs&=Uf(Qr,Cr)),Vs}if(vs&4194304)return So(Cr.type,Qr.type,3,!1);if(vs&8388608&&(ui=So(Cr.objectType,Qr.objectType,3,!1))&&(ui&=So(Cr.indexType,Qr.indexType,3,!1))||vs&16777216&&Cr.root.isDistributive===Qr.root.isDistributive&&(ui=So(Cr.checkType,Qr.checkType,3,!1))&&(ui&=So(Cr.extendsType,Qr.extendsType,3,!1))&&(ui&=So(KP(Cr),KP(Qr),3,!1))&&(ui&=So(jP(Cr),jP(Qr),3,!1))||vs&33554432&&(ui=So(Cr.baseType,Qr.baseType,3,!1))&&(ui&=So(Cr.constraint,Qr.constraint,3,!1)))return ui;if(!(vs&524288))return 0}else if(vs&3145728||pi&3145728){if(ui=_0(Cr,Qr,Wn,Lr))return ui;if(!(vs&465829888||vs&524288&&pi&1048576||vs&2097152&&pi&467402752))return 0}if(vs&17301504&&Cr.aliasSymbol&&Cr.aliasTypeArguments&&Cr.aliasSymbol===Qr.aliasSymbol&&!(P$e(Cr)||P$e(Qr))){let Vs=$Xr(Cr.aliasSymbol);if(Vs===v)return 1;let va=ol(Cr.aliasSymbol).typeParameters,fa=XN(va),ng=UV(Cr.aliasTypeArguments,va,fa,so(Cr.aliasSymbol.valueDeclaration)),Eg=UV(Qr.aliasTypeArguments,va,fa,so(Cr.aliasSymbol.valueDeclaration)),Hp=ta(ng,Eg,Vs,Lr);if(Hp!==void 0)return Hp}if(l4r(Cr)&&!Cr.target.readonly&&(ui=So(of(Cr)[0],Qr,1))||l4r(Qr)&&(Qr.target.readonly||YZe(a_(Cr)||Cr))&&(ui=So(Cr,of(Qr)[0],2)))return ui;if(pi&262144){if(sa(Cr)&32&&!Cr.declaration.nameType&&So(JN(Qr),eB(Cr),3)&&!(CD(Cr)&4)){let Vs=rF(Cr),va=zb(Qr,_T(Cr));if(ui=So(Vs,va,3,Wn))return ui}if(E===QE&&vs&262144){let Vs=By(Cr);if(Vs)for(;Vs&&Kv(Vs,va=>!!(va.flags&262144));){if(ui=So(Vs,Qr,1,!1))return ui;Vs=By(Vs)}return 0}}else if(pi&4194304){let Vs=Qr.type;if(vs&4194304&&(ui=So(Vs,Cr.type,3,!1)))return ui;if(aA(Vs)){if(ui=So(Cr,oXr(Vs),2,Wn))return ui}else{let va=QWt(Vs);if(va){if(So(Cr,JN(va,Qr.indexFlags|4),2,Wn)===-1)return-1}else if(jb(Vs)){let fa=cL(Vs),ng=eB(Vs),Eg;if(fa&&Tre(Vs)){let Hp=W_(fa,Vs);Eg=Ta([Hp,fa])}else Eg=fa||ng;if(So(Cr,Eg,2,Wn)===-1)return-1}}}else if(pi&8388608){if(vs&8388608){if((ui=So(Cr.objectType,Qr.objectType,3,Wn))&&(ui&=So(Cr.indexType,Qr.indexType,3,Wn)),ui)return ui;Wn&&(yn=Ve)}if(E===Ab||E===QE){let Vs=Qr.objectType,va=Qr.indexType,fa=a_(Vs)||Vs,ng=a_(va)||va;if(!z4(fa)&&!q4(ng)){let Eg=4|(fa!==Vs?2:0),Hp=jV(fa,ng,Eg);if(Hp){if(Wn&&yn&&ha(_i),ui=So(Cr,Hp,2,Wn,void 0,Lr))return ui;Wn&&yn&&Ve&&(Ve=Js([yn])<=Js([Ve])?yn:Ve)}}}Wn&&(yn=void 0)}else if(jb(Qr)&&E!==Ub){let Vs=!!Qr.declaration.nameType,va=rF(Qr),fa=CD(Qr);if(!(fa&8)){if(!Vs&&va.flags&8388608&&va.objectType===Cr&&va.indexType===_T(Qr))return-1;if(!jb(Cr)){let ng=Vs?cL(Qr):eB(Qr),Eg=JN(Cr,2),Hp=fa&4,wy=Hp?hZe(ng,Eg):void 0;if(Hp?!(wy.flags&131072):So(ng,Eg,3)){let UE=rF(Qr),sW=_T(Qr),iO=dge(UE,-98305);if(!Vs&&iO.flags&8388608&&iO.indexType===sW){if(ui=So(Cr,iO.objectType,2,Wn))return ui}else{let oH=Vs?wy||ng:wy?Pg([wy,sW]):sW,eR=zb(Cr,oH);if(ui=So(eR,UE,3,Wn))return ui}}yn=Ve,ha(_i)}}}else if(pi&16777216){if(P7(Qr,Mr,mi,10))return 3;let Vs=Qr;if(!Vs.root.inferTypeParameters&&!XAs(Vs.root)&&!(Cr.flags&16777216&&Cr.root===Vs.root)){let va=!yg(iye(Vs.checkType),iye(Vs.extendsType)),fa=!va&&yg(eJ(Vs.checkType),eJ(Vs.extendsType));if((ui=va?-1:So(Cr,KP(Vs),2,!1,void 0,Lr))&&(ui&=fa?-1:So(Cr,jP(Vs),2,!1,void 0,Lr),ui))return ui}}else if(pi&134217728){if(vs&134217728){if(E===QE)return hps(Cr,Qr)?0:-1;al(Cr,mf)}if(net(Cr,Qr))return-1}else if(Qr.flags&268435456&&!(Cr.flags&268435456)&&ret(Cr,Qr))return-1;if(vs&8650752){if(!(vs&8388608&&pi&8388608)){let Vs=H4(Cr)||Kr;if(ui=So(Vs,Qr,1,!1,void 0,Lr))return ui;if(ui=So(JE(Vs,Cr),Qr,1,Wn&&Vs!==Kr&&!(pi&vs&262144),void 0,Lr))return ui;if(JWt(Cr)){let va=H4(Cr.indexType);if(va&&(ui=So(zb(Cr.objectType,va),Qr,1,Wn)))return ui}}}else if(vs&4194304){let Vs=w3t(Cr.type,Cr.indexFlags)&&sa(Cr.type)&32;if(ui=So(ki,Qr,1,Wn&&!Vs))return ui;if(Vs){let va=Cr.type,fa=cL(va),ng=fa&&Tre(va)?W_(fa,va):fa||eB(va);if(ui=So(ng,Qr,1,Wn))return ui}}else if(vs&134217728&&!(pi&524288)){if(!(pi&134217728)){let Vs=a_(Cr);if(Vs&&Vs!==Cr&&(ui=So(Vs,Qr,1,Wn)))return ui}}else if(vs&268435456)if(pi&268435456){if(Cr.symbol!==Qr.symbol)return 0;if(ui=So(Cr.type,Qr.type,3,Wn))return ui}else{let Vs=a_(Cr);if(Vs&&(ui=So(Vs,Qr,1,Wn)))return ui}else if(vs&16777216){if(P7(Cr,Nt,hn,10))return 3;if(pi&16777216){let fa=Cr.root.inferTypeParameters,ng=Cr.extendsType,Eg;if(fa){let Hp=Aye(fa,void 0,0,Vc);lF(Hp.inferences,Qr.extendsType,ng,1536),ng=al(ng,Hp.mapper),Eg=Hp.mapper}if(iF(ng,Qr.extendsType)&&(So(Cr.checkType,Qr.checkType,3)||So(Qr.checkType,Cr.checkType,3))&&((ui=So(al(KP(Cr),Eg),KP(Qr),3,Wn))&&(ui&=So(jP(Cr),jP(Qr),3,Wn)),ui))return ui}let Vs=YWt(Cr);if(Vs&&(ui=So(Vs,Qr,1,Wn)))return ui;let va=!(pi&16777216)&&bZe(Cr)?h5r(Cr):void 0;if(va&&(ha(_i),ui=So(va,Qr,1,Wn)))return ui}else{if(E!==LN&&E!==PB&&egs(Qr)&&sF(Cr))return-1;if(jb(Qr))return jb(Cr)&&(ui=Ln(Cr,Qr,Wn))?ui:0;let Vs=!!(vs&402784252);if(E!==Ub)Cr=$0(Cr),vs=Cr.flags;else if(jb(Cr))return 0;if(sa(Cr)&4&&sa(Qr)&4&&Cr.target===Qr.target&&!aA(Cr)&&!(P$e(Cr)||P$e(Qr))){if(H$e(Cr))return-1;let va=K3t(Cr.target);if(va===v)return 1;let fa=ta(of(Cr),of(Qr),va,Lr);if(fa!==void 0)return fa}else{if(cge(Qr)?eE(Cr,qP):UB(Qr)&&eE(Cr,va=>aA(va)&&!va.target.readonly))return E!==Ub?So(JP(Cr,bt)||Qt,JP(Qr,bt)||Qt,3,Wn):0;if(eW(Cr)&&aA(Qr)&&!eW(Qr)){let va=mD(Cr);if(va!==Cr)return So(va,Qr,1,Wn)}else if((E===LN||E===PB)&&sF(Qr)&&sa(Qr)&8192&&!sF(Cr))return 0}if(vs&2621440&&pi&524288){let va=Wn&&Ve===_i.errorInfo&&!Vs;if(ui=Gg(Cr,Qr,va,void 0,!1,Lr),ui&&(ui&=Xt(Cr,Qr,0,va,Lr),ui&&(ui&=Xt(Cr,Qr,1,va,Lr),ui&&(ui&=gl(Cr,Qr,Vs,va,Lr)))),hi&&ui)Ve=yn||Ve||_i.errorInfo;else if(ui)return ui}if(vs&2621440&&pi&1048576){let va=dge(Qr,36175872);if(va.flags&1048576){let fa=Oi(Cr,va);if(fa)return fa}}}return 0;function Js(Vs){return Vs?Td(Vs,(va,fa)=>va+1+Js(fa.next),0):0}function ta(Vs,va,fa,ng){if(ui=Jre(Vs,va,fa,Wn,ng))return ui;if(lr(fa,Hp=>!!(Hp&24))){yn=void 0,ha(_i);return}let Eg=va&&Gds(va,fa);if(hi=!Eg,fa!==v&&!Eg){if(hi&&!(Wn&&lr(fa,Hp=>(Hp&7)===0)))return 0;yn=Ve,ha(_i)}}}function Ln(Cr,Qr,Wn){if(E===QE||(E===Ub?CD(Cr)===CD(Qr):rge(Cr)<=rge(Qr))){let _i,ui=eB(Qr),yn=al(eB(Cr),rge(Cr)<0?zc:mf);if(_i=So(ui,yn,3,Wn)){let hi=qb([_T(Cr)],[_T(Qr)]);if(al(cL(Cr),hi)===al(cL(Qr),hi))return _i&So(al(rF(Cr),hi),rF(Qr),3,Wn)}}return 0}function Oi(Cr,Qr){var Wn;let Lr=Id(Cr),_i=w4r(Lr,Qr);if(!_i)return 0;let ui=1;for(let ta of _i)if(ui*=Ups(YV(ta)),ui>25)return(Wn=Mi)==null||Wn.instant(Mi.Phase.CheckTypes,"typeRelatedToDiscriminatedType_DepthLimit",{sourceId:Cr.id,targetId:Qr.id,numCombinations:ui}),0;let yn=new Array(_i.length),hi=new Set;for(let ta=0;ta<_i.length;ta++){let Vs=_i[ta],va=YV(Vs);yn[ta]=va.flags&1048576?va.types:[va],hi.add(Vs.escapedName)}let vs=Ef(yn),pi=[];for(let ta of vs){let Vs=!1;e:for(let va of Qr.types){for(let fa=0;fa<_i.length;fa++){let ng=_i[fa],Eg=_g(va,ng.escapedName);if(!Eg)continue e;if(ng===Eg)continue;if(!Qo(Cr,Qr,ng,Eg,wy=>ta[fa],!1,0,nt||E===QE))continue e}pa(pi,va,Og),Vs=!0}if(!Vs)return 0}let Js=-1;for(let ta of pi)if(Js&=Gg(Cr,ta,!1,hi,!1,0),Js&&(Js&=Xt(Cr,ta,0,!1,0),Js&&(Js&=Xt(Cr,ta,1,!1,0),Js&&!(aA(Cr)&&aA(ta))&&(Js&=gl(Cr,ta,!1,!1,0)))),!Js)return Js;return Js}function ms(Cr,Qr){if(!Qr||Cr.length===0)return Cr;let Wn;for(let Lr=0;Lr5?ou(Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more,Xs(Cr),Xs(Qr),Ot(ui.slice(0,4),yn=>qc(yn)).join(", "),ui.length-4):ou(Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2,Xs(Cr),Xs(Qr),Ot(ui,yn=>qc(yn)).join(", ")),_i&&Ve&&Wo++)}function Gg(Cr,Qr,Wn,Lr,_i,ui){if(E===Ub)return Xg(Cr,Qr,Lr);let yn=-1;if(aA(Qr)){if(qP(Cr)){if(!Qr.target.readonly&&(cge(Cr)||aA(Cr)&&Cr.target.readonly))return 0;let ta=uL(Cr),Vs=uL(Qr),va=aA(Cr)?Cr.target.combinedFlags&4:4,fa=Qr.target.combinedFlags&4,ng=aA(Cr)?Cr.target.minLength:0,Eg=Qr.target.minLength;if(!va&&ta=UE?Vs-1-Math.min(Ure,sW):eR,aH=Qr.target.elementFlags[oW];if(aH&8&&!(rE&8))return Wn&&ou(Z.Source_provides_no_match_for_variadic_element_at_position_0_in_target,oW),0;if(rE&8&&!(aH&12))return Wn&&ou(Z.Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target,eR,oW),0;if(aH&1&&!(rE&1))return Wn&&ou(Z.Source_provides_no_match_for_required_element_at_position_0_in_target,oW),0;if(oH&&((rE&12||aH&12)&&(oH=!1),oH&&Lr?.has(""+eR)))continue;let Lye=cF(Hp[eR],!!(rE&aH&2)),dJ=wy[oW],Sge=rE&8&&aH&4?L_(dJ):cF(dJ,!!(aH&2)),Vye=So(Lye,Sge,3,Wn,void 0,ui);if(!Vye)return Wn&&(Vs>1||ta>1)&&(iO&&eR>=UE&&Ure>=sW&&UE!==ta-sW-1?Ou(Z.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target,UE,ta-sW-1,oW):Ou(Z.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target,eR,oW)),0;yn&=Vye}return yn}if(Qr.target.combinedFlags&12)return 0}let hi=(E===LN||E===PB)&&!tO(Cr)&&!H$e(Cr)&&!aA(Cr),vs=APt(Cr,Qr,hi,!1);if(vs)return Wn&&Bt(Cr,Qr)&&Ha(Cr,Qr,vs,hi),0;if(tO(Qr)){for(let ta of ms(Id(Cr),Lr))if(!HY(Qr,ta.escapedName)&&!(lo(ta).flags&32768))return Wn&&ou(Z.Property_0_does_not_exist_on_type_1,qc(ta),Xs(Qr)),0}let pi=Id(Qr),Js=aA(Cr)&&aA(Qr);for(let ta of ms(pi,Lr)){let Vs=ta.escapedName;if(!(ta.flags&4194304)&&(!Js||yN(Vs)||Vs==="length")&&(!_i||ta.flags&16777216)){let va=_g(Cr,Vs);if(va&&va!==ta){let fa=Qo(Cr,Qr,va,ta,YV,Wn,ui,E===QE);if(!fa)return 0;yn&=fa}}}return yn}function Xg(Cr,Qr,Wn){if(!(Cr.flags&524288&&Qr.flags&524288))return 0;let Lr=ms(JV(Cr),Wn),_i=ms(JV(Qr),Wn);if(Lr.length!==_i.length)return 0;let ui=-1;for(let yn of Lr){let hi=HY(Qr,yn.escapedName);if(!hi)return 0;let vs=z3t(yn,hi,So);if(!vs)return 0;ui&=vs}return ui}function Xt(Cr,Qr,Wn,Lr,_i){var ui,yn;if(E===Ub)return fo(Cr,Qr,Wn);if(Qr===hf||Cr===hf)return-1;let hi=Cr.symbol&&qN(Cr.symbol.valueDeclaration),vs=Qr.symbol&&qN(Qr.symbol.valueDeclaration),pi=Pu(Cr,hi&&Wn===1?0:Wn),Js=Pu(Qr,vs&&Wn===1?0:Wn);if(Wn===1&&pi.length&&Js.length){let ng=!!(pi[0].flags&4),Eg=!!(Js[0].flags&4);if(ng&&!Eg)return Lr&&ou(Z.Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type),0;if(!up(pi[0],Js[0],Lr))return 0}let ta=-1,Vs=Wn===1?Xi:li,va=sa(Cr),fa=sa(Qr);if(va&64&&fa&64&&Cr.symbol===Qr.symbol||va&4&&fa&4&&Cr.target===Qr.target){w.assertEqual(pi.length,Js.length);for(let ng=0;ngOV(UE,void 0,262144,Wn);return ou(Z.Type_0_is_not_assignable_to_type_1,wy(Eg),wy(Hp)),ou(Z.Types_of_construct_signatures_are_incompatible),ta}}else e:for(let ng of Js){let Eg=Tg(),Hp=Lr;for(let wy of pi){let UE=mo(wy,ng,!0,Hp,_i,Vs(wy,ng));if(UE){ta&=UE,ha(Eg);continue e}Hp=!1}return Hp&&ou(Z.Type_0_provides_no_match_for_the_signature_1,Xs(Cr),OV(ng,void 0,void 0,Wn)),0}return ta}function Bt(Cr,Qr){let Wn=BZe(Cr,0),Lr=BZe(Cr,1),_i=JV(Cr);return(Wn.length||Lr.length)&&!_i.length?!!(Pu(Qr,0).length&&Wn.length||Pu(Qr,1).length&&Lr.length):!0}function li(Cr,Qr){return Cr.parameters.length===0&&Qr.parameters.length===0?(Wn,Lr)=>Ou(Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1,Xs(Wn),Xs(Lr)):(Wn,Lr)=>Ou(Z.Call_signature_return_types_0_and_1_are_incompatible,Xs(Wn),Xs(Lr))}function Xi(Cr,Qr){return Cr.parameters.length===0&&Qr.parameters.length===0?(Wn,Lr)=>Ou(Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1,Xs(Wn),Xs(Lr)):(Wn,Lr)=>Ou(Z.Construct_signature_return_types_0_and_1_are_incompatible,Xs(Wn),Xs(Lr))}function mo(Cr,Qr,Wn,Lr,_i,ui){let yn=E===LN?16:E===PB?24:0;return Q3t(Wn?z0e(Cr):Cr,Wn?z0e(Qr):Qr,yn,Lr,ou,ui,hi,mf);function hi(vs,pi,Js){return So(vs,pi,3,Js,void 0,_i)}}function fo(Cr,Qr,Wn){let Lr=Pu(Cr,Wn),_i=Pu(Qr,Wn);if(Lr.length!==_i.length)return 0;let ui=-1;for(let yn=0;ynvs.keyType===Jt),hi=-1;for(let vs of ui){let pi=E!==PB&&!Wn&&yn&&vs.type.flags&1?-1:jb(Cr)&&yn?So(rF(Cr),vs.type,3,Lr):nu(Cr,vs,Lr,_i);if(!pi)return 0;hi&=pi}return hi}function nu(Cr,Qr,Wn,Lr){let _i=U0e(Cr,Qr.keyType);return _i?Wc(_i,Qr,Wn,Lr):!(Lr&1)&&(E!==PB||sa(Cr)&8192)&&z$e(Cr)?Go(Cr,Qr,Wn,Lr):(Wn&&ou(Z.Index_signature_for_type_0_is_missing_in_type_1,Xs(Qr.keyType),Xs(Cr)),0)}function Bu(Cr,Qr){let Wn=ey(Cr),Lr=ey(Qr);if(Wn.length!==Lr.length)return 0;for(let _i of Lr){let ui=$x(Cr,_i.keyType);if(!(ui&&So(ui.type,_i.type,3)&&ui.isReadonly===_i.isReadonly))return 0}return-1}function up(Cr,Qr,Wn){if(!Cr.declaration||!Qr.declaration)return!0;let Lr=LQ(Cr.declaration,6),_i=LQ(Qr.declaration,6);return _i===2||_i===4&&Lr!==2||_i!==4&&!Lr?!0:(Wn&&ou(Z.Cannot_assign_a_0_constructor_type_to_a_1_constructor_type,jue(Lr),jue(_i)),!1)}}function X3t(l){if(l.flags&16)return!1;if(l.flags&3145728)return!!X(l.types,X3t);if(l.flags&465829888){let C=H4(l);if(C&&C!==l)return X3t(C)}return ET(l)||!!(l.flags&134217728)||!!(l.flags&268435456)}function zXr(l,C){return aA(l)&&aA(C)?v:Id(C).filter(E=>W$e(ZI(l,E.escapedName),lo(E)))}function W$e(l,C){return!!l&&!!C&&UI(l,32768)&&!!uye(C)}function xds(l){return Id(l).filter(C=>uye(lo(C)))}function qXr(l,C,E=O3t){return b8r(l,C,E)||Hys(l,C)||Xys(l,C)||Jys(l,C)||Uys(l,C)}function J3t(l,C,E){let D=l.types,W=D.map(se=>se.flags&402784252?0:-1);for(let[se,Ee]of C){let Ve=!1;for(let Oe=0;OeW[Ee]),0):l;return Q.flags&131072?l:Q}function U3t(l){if(l.flags&524288){let C=yT(l);return C.callSignatures.length===0&&C.constructSignatures.length===0&&C.indexInfos.length===0&&C.properties.length>0&&he(C.properties,E=>!!(E.flags&16777216))}return l.flags&33554432?U3t(l.baseType):l.flags&2097152?he(l.types,U3t):!1}function kds(l,C,E){for(let D of Id(l))if(bet(C,D.escapedName,E))return!0;return!1}function K3t(l){return l===Fn||l===Bs||l.objectFlags&8?Fe:e4r(l.symbol,l.typeParameters)}function $Xr(l){return e4r(l,ol(l).typeParameters)}function e4r(l,C=v){var E,D;let W=ol(l);if(!W.variances){(E=Mi)==null||E.push(Mi.Phase.CheckTypes,"getVariancesWorker",{arity:C.length,id:Gh(xp(l))});let Q=Bc,se=ho;Bc||(Bc=!0,ho=Wi.length),W.variances=v;let Ee=[];for(let Ve of C){let Oe=j3t(Ve),ot=Oe&16384?Oe&8192?0:1:Oe&8192?2:void 0;if(ot===void 0){let Wt=!1,Nt=!1,Mr=lg;lg=mi=>mi?Nt=!0:Wt=!0;let ln=OZe(l,Ve,lI),hn=OZe(l,Ve,J0);ot=(yg(hn,ln)?1:0)|(yg(ln,hn)?2:0),ot===3&&yg(OZe(l,Ve,U0),ln)&&(ot=4),lg=Mr,(Wt||Nt)&&(Wt&&(ot|=8),Nt&&(ot|=16))}Ee.push(ot)}Q||(Bc=!1,ho=se),W.variances=Ee,(D=Mi)==null||D.pop({variances:Ee.map(w.formatVariance)})}return W.variances}function OZe(l,C,E){let D=zY(C,E),W=xp(l);if(OA(W))return W;let Q=l.flags&524288?Dre(l,ek(ol(l).typeParameters,D)):lL(W,ek(W.typeParameters,D));return kr.add(Gh(Q)),Q}function P$e(l){return kr.has(Gh(l))}function j3t(l){var C;return Td((C=l.symbol)==null?void 0:C.declarations,(E,D)=>E|N_(D),0)&28672}function Gds(l,C){for(let E=0;E!!(C.flags&262144)||O$e(C))}function Lds(l,C,E,D){let W=[],Q="",se=Ve(l,0),Ee=Ve(C,0);return`${Q}${se},${Ee}${E}`;function Ve(Oe,ot=0){let Wt=""+Oe.target.id;for(let Nt of of(Oe)){if(Nt.flags&262144){if(D||Fds(Nt)){let Mr=W.indexOf(Nt);Mr<0&&(Mr=W.length,W.push(Nt)),Wt+="="+Mr;continue}Q="*"}else if(ot<4&&O$e(Nt)){Wt+="<"+Ve(Nt,ot+1)+">";continue}Wt+="-"+Nt.id}return Wt}}function M$e(l,C,E,D,W){if(D===Ub&&l.id>C.id){let se=l;l=C,C=se}let Q=E?":"+E:"";return O$e(l)&&O$e(C)?Lds(l,C,Q,W):`${l.id},${C.id}${Q}`}function MZe(l,C){if(aI(l)&6){for(let E of l.links.containingType.types){let D=_g(E,l.escapedName),W=D&&MZe(D,C);if(W)return W}return}return C(l)}function W7(l){return l.parent&&l.parent.flags&32?xp(o_(l)):void 0}function Q$e(l){let C=W7(l),E=C&&wa(C)[0];return E&&ZI(E,l.escapedName)}function Vds(l,C){return MZe(l,E=>{let D=W7(E);return D?vre(D,C):!1})}function Wds(l,C){return!MZe(C,E=>L1(E)&4?!Vds(l,W7(E)):!1)}function t4r(l,C,E){return MZe(C,D=>L1(D,E)&4?!vre(l,W7(D)):!1)?void 0:l}function P7(l,C,E,D=3){if(E>=D){if((sa(l)&96)===96&&(l=r4r(l)),l.flags&2097152)return lr(l.types,Ee=>P7(Ee,C,E,D));let W=Y$e(l),Q=0,se=0;for(let Ee=0;Ee=se&&(Q++,Q>=D))return!0;se=Ve.id}}}return!1}function r4r(l){let C;for(;(sa(l)&96)===96&&(C=YY(l))&&(C.symbol||C.flags&2097152&&lr(C.types,E=>!!E.symbol));)l=C;return l}function n4r(l,C){return(sa(l)&96)===96&&(l=r4r(l)),l.flags&2097152?lr(l.types,E=>n4r(E,C)):Y$e(l)===C}function Y$e(l){if(l.flags&524288&&!pPt(l)){if(sa(l)&4&&l.node)return l.node;if(l.symbol&&!(sa(l)&16&&l.symbol.flags&32))return l.symbol;if(aA(l))return l.target}if(l.flags&262144)return l.symbol;if(l.flags&8388608){do l=l.objectType;while(l.flags&8388608);return l}return l.flags&16777216?l.root:l}function Pds(l,C){return z3t(l,C,sye)!==0}function z3t(l,C,E){if(l===C)return-1;let D=L1(l)&6,W=L1(C)&6;if(D!==W)return 0;if(D){if(Hre(l)!==Hre(C))return 0}else if((l.flags&16777216)!==(C.flags&16777216))return 0;return ST(l)!==ST(C)?0:E(lo(l),lo(C))}function Ods(l,C,E){let D=tE(l),W=tE(C),Q=$N(l),se=$N(C),Ee=bD(l),Ve=bD(C);return!!(D===W&&Q===se&&Ee===Ve||E&&Q<=se)}function QZe(l,C,E,D,W,Q){if(l===C)return-1;if(!Ods(l,C,E)||O(l.typeParameters)!==O(C.typeParameters))return 0;if(C.typeParameters){let Ve=qb(l.typeParameters,C.typeParameters);for(let Oe=0;OeC|(E.flags&1048576?i4r(E.types):E.flags),0)}function Yds(l){if(l.length===1)return l[0];let C=nt?Ar(l,D=>VC(D,W=>!(W.flags&98304))):l,E=Qds(C)?Ta(C):Td(C,(D,W)=>qV(D,W)?W:D);return C===l?E:XZe(E,i4r(l)&98304)}function Hds(l){return Td(l,(C,E)=>qV(E,C)?E:C)}function UB(l){return!!(sa(l)&4)&&(l.target===Fn||l.target===Bs)}function cge(l){return!!(sa(l)&4)&&l.target===Bs}function qP(l){return UB(l)||aA(l)}function YZe(l){return UB(l)&&!cge(l)||aA(l)&&!l.target.readonly}function HZe(l){return UB(l)?of(l)[0]:void 0}function pL(l){return UB(l)||!(l.flags&98304)&&yg(l,hC)}function q3t(l){return YZe(l)||!(l.flags&98305)&&yg(l,rp)}function $3t(l){if(!(sa(l)&4)||!(sa(l.target)&3))return;if(sa(l)&33554432)return sa(l)&67108864?l.cachedEquivalentBaseType:void 0;l.objectFlags|=33554432;let C=l.target;if(sa(C)&1){let W=HP(C);if(W&&W.expression.kind!==80&&W.expression.kind!==211)return}let E=wa(C);if(E.length!==1||XV(l.symbol).size)return;let D=O(C.typeParameters)?al(E[0],qb(C.typeParameters,of(l).slice(0,C.typeParameters.length))):E[0];return O(of(l))>O(C.typeParameters)&&(D=JE(D,Na(of(l)))),l.objectFlags|=67108864,l.cachedEquivalentBaseType=D}function s4r(l){return nt?l===Yc:l===Pe}function H$e(l){let C=HZe(l);return!!C&&s4r(C)}function lge(l){let C;return aA(l)||!!_g(l,"0")||pL(l)&&!!(C=ZI(l,"length"))&&eE(C,E=>!!(E.flags&256))}function X$e(l){return pL(l)||lge(l)}function o4r(l,C){let E=ZI(l,""+C);if(E)return E;if(eE(l,aA))return u4r(l,C,Ne.noUncheckedIndexedAccess?wn:void 0)}function Xds(l){return!(l.flags&240544)}function ET(l){return!!(l.flags&109472)}function a4r(l){let C=mD(l);return C.flags&2097152?lr(C.types,ET):ET(C)}function Jds(l){return l.flags&2097152&&be(l.types,ET)||l}function cye(l){return l.flags&16?!0:l.flags&1048576?l.flags&1024?!0:he(l.types,ET):ET(l)}function oF(l){return l.flags&1056?T7(l):l.flags&402653312?Jt:l.flags&256?bt:l.flags&2048?Vt:l.flags&512?ds:l.flags&1048576?Uds(l):l}function Uds(l){let C=`B${Gh(l)}`;return vP(C)??KZ(C,Of(l,oF))}function ePt(l){return l.flags&402653312?Jt:l.flags&288?bt:l.flags&2048?Vt:l.flags&512?ds:l.flags&1048576?Of(l,ePt):l}function $P(l){return l.flags&1056&&jY(l)?T7(l):l.flags&128&&jY(l)?Jt:l.flags&256&&jY(l)?bt:l.flags&2048&&jY(l)?Vt:l.flags&512&&jY(l)?ds:l.flags&1048576?Of(l,$P):l}function c4r(l){return l.flags&8192?Es:l.flags&1048576?Of(l,c4r):l}function tPt(l,C){return Wet(l,C)||(l=c4r($P(l))),ty(l)}function Kds(l,C,E){if(l&&ET(l)){let D=C?E?wye(C):C:void 0;l=tPt(l,D)}return l}function rPt(l,C,E,D){if(l&&ET(l)){let W=C?nH(E,C,D):void 0;l=tPt(l,W)}return l}function aA(l){return!!(sa(l)&4&&l.target.objectFlags&8)}function eW(l){return aA(l)&&!!(l.target.combinedFlags&8)}function l4r(l){return eW(l)&&l.target.elementFlags.length===1}function J$e(l){return uge(l,l.target.fixedLength)}function u4r(l,C,E){return Of(l,D=>{let W=D,Q=J$e(W);return Q?E&&C>=b3t(W.target)?Ta([Q,E]):Q:wn})}function jds(l){let C=J$e(l);return C&&L_(C)}function uge(l,C,E=0,D=!1,W=!1){let Q=uL(l)-E;if(C(E&12)===(C.target.elementFlags[D]&12))}function g4r({value:l}){return l.base10Value==="0"}function A4r(l){return VC(l,C=>BT(C,4194304))}function qds(l){return Of(l,$ds)}function $ds(l){return l.flags&4?Tr:l.flags&8?xn:l.flags&64?ci:l===On||l===dn||l.flags&114691||l.flags&128&&l.value===""||l.flags&256&&l.value===0||l.flags&2048&&g4r(l)?l:Vi}function XZe(l,C){let E=C&~l.flags&98304;return E===0?l:Ta(E===32768?[l,wn]:E===65536?[l,ur]:[l,wn,ur])}function tW(l,C=!1){w.assert(nt);let E=C?sn:wn;return l===E||l.flags&1048576&&l.types[0]===E?l:Ta([l,E])}function eps(l){return Xb||(Xb=kre("NonNullable",524288,void 0)||en),Xb!==en?Dre(Xb,[l]):Pg([l,Zc])}function aF(l){return nt?iJ(l,2097152):l}function d4r(l){return nt?Ta([l,Me]):l}function U$e(l){return nt?set(l,Me):l}function K$e(l,C,E){return E?w3(C)?tW(l):d4r(l):l}function lye(l,C){return a8(C)?aF(l):km(C)?U$e(l):l}function cF(l,C){return Ye&&C?set(l,ar):l}function uye(l){return l===ar||!!(l.flags&1048576)&&l.types[0]===ar}function j$e(l){return Ye?set(l,ar):Uv(l,524288)}function tps(l,C){return(l.flags&524)!==0&&(C.flags&28)!==0}function z$e(l){let C=sa(l);return l.flags&2097152?he(l.types,z$e):!!(l.symbol&&l.symbol.flags&7040&&!(l.symbol.flags&32)&&!ntt(l))||!!(C&4194304)||!!(C&1024&&z$e(l.source))}function tJ(l,C){let E=SA(l.flags,l.escapedName,aI(l)&8);E.declarations=l.declarations,E.parent=l.parent,E.links.type=C,E.links.target=l,l.valueDeclaration&&(E.valueDeclaration=l.valueDeclaration);let D=ol(l).nameType;return D&&(E.links.nameType=D),E}function rps(l,C){let E=Du();for(let D of JV(l)){let W=lo(D),Q=C(W);E.set(D.escapedName,Q===W?D:tJ(D,Q))}return E}function gye(l){if(!(tO(l)&&sa(l)&8192))return l;let C=l.regularType;if(C)return C;let E=l,D=rps(l,gye),W=qn(E.symbol,D,E.callSignatures,E.constructSignatures,E.indexInfos);return W.flags=E.flags,W.objectFlags|=E.objectFlags&-8193,l.regularType=W,W}function p4r(l,C,E){return{parent:l,propertyName:C,siblings:E,resolvedProperties:void 0}}function f4r(l){if(!l.siblings){let C=[];for(let E of f4r(l.parent))if(tO(E)){let D=HY(E,l.propertyName);D&&sJ(lo(D),W=>{C.push(W)})}l.siblings=C}return l.siblings}function nps(l){if(!l.resolvedProperties){let C=new Map;for(let E of f4r(l))if(tO(E)&&!(sa(E)&2097152))for(let D of Id(E))C.set(D.escapedName,D);l.resolvedProperties=on(C.values())}return l.resolvedProperties}function ips(l,C){if(!(l.flags&4))return l;let E=lo(l),D=C&&p4r(C,l.escapedName,void 0),W=nPt(E,D);return W===E?l:tJ(l,W)}function sps(l){let C=BA.get(l.escapedName);if(C)return C;let E=tJ(l,sn);return E.flags|=16777216,BA.set(l.escapedName,E),E}function ops(l,C){let E=Du();for(let W of JV(l))E.set(W.escapedName,ips(W,C));if(C)for(let W of nps(C))E.has(W.escapedName)||E.set(W.escapedName,sps(W));let D=qn(l.symbol,E,v,v,Ar(ey(l),W=>hD(W.keyType,$b(W.type),W.isReadonly)));return D.objectFlags|=sa(l)&266240,D}function $b(l){return nPt(l,void 0)}function nPt(l,C){if(sa(l)&196608){if(C===void 0&&l.widened)return l.widened;let E;if(l.flags&98305)E=Qt;else if(tO(l))E=ops(l,C);else if(l.flags&1048576){let D=C||p4r(void 0,void 0,l.types),W=Ar(l.types,Q=>Q.flags&98304?Q:nPt(Q,D));E=Ta(W,lr(W,sF)?2:1)}else l.flags&2097152?E=Pg(Ar(l.types,$b)):qP(l)&&(E=lL(l.target,Ar(of(l),$b)));return E&&C===void 0&&(l.widened=E),E||l}return l}function q$e(l){let C=!1;if(sa(l)&65536){if(l.flags&1048576)if(lr(l.types,sF))C=!0;else for(let E of l.types)q$e(E)&&(C=!0);if(qP(l))for(let E of of(l))q$e(E)&&(C=!0);if(tO(l))for(let E of JV(l)){let D=lo(E);sa(D)&65536&&(q$e(D)||fr(E.valueDeclaration,Z.Object_literal_s_property_0_implicitly_has_an_1_type,qc(E),Xs($b(D))),C=!0)}}return C}function eO(l,C,E){let D=Xs($b(C));if(so(l)&&!h6(ls(l),Ne))return;let W;switch(l.kind){case 226:case 172:case 171:W=dt?Z.Member_0_implicitly_has_an_1_type:Z.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 169:let Q=l;if(sr(Q.name)){let se=VR(Q.name);if((CV(Q.parent)||jS(Q.parent)||Y(Q.parent))&&Q.parent.parameters.includes(Q)&&(Pi(Q,Q.name.escapedText,788968,void 0,!0)||se&&Ume(se))){let Ee="arg"+Q.parent.parameters.indexOf(Q),Ve=xd(Q.name)+(Q.dotDotDotToken?"[]":"");zm(dt,l,Z.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1,Ee,Ve);return}}W=l.dotDotDotToken?dt?Z.Rest_parameter_0_implicitly_has_an_any_type:Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:dt?Z.Parameter_0_implicitly_has_an_1_type:Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 208:if(W=Z.Binding_element_0_implicitly_has_an_1_type,!dt)return;break;case 317:fr(l,Z.Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,D);return;case 323:dt&>e(l.parent)&&fr(l.parent.tagName,Z.This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation,D);return;case 262:case 174:case 173:case 177:case 178:case 218:case 219:if(dt&&!l.name){E===3?fr(l,Z.Generator_implicitly_has_yield_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_return_type_annotation,D):fr(l,Z.Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,D);return}W=dt?E===3?Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:Z._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage;break;case 200:dt&&fr(l,Z.Mapped_object_type_implicitly_has_an_any_template_type);return;default:W=dt?Z.Variable_0_implicitly_has_an_1_type:Z.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage}zm(dt,l,W,xd(vl(l)),D)}function $$e(l,C,E){u(()=>{dt&&sa(C)&65536&&(!E||!PPt(l))&&(q$e(C)||eO(l,C,E))})}function iPt(l,C,E){let D=tE(l),W=tE(C),Q=yye(l),se=yye(C),Ee=se?W-1:W,Ve=Q?Ee:Math.min(D,Ee),Oe=UP(l);if(Oe){let ot=UP(C);ot&&E(Oe,ot)}for(let ot=0;otC.typeParameter),Ot(l.inferences,(C,E)=>()=>(C.isFixed||(ups(l),eet(l.inferences),C.isFixed=!0),fPt(l,E))))}function lps(l){return L3t(Ot(l.inferences,C=>C.typeParameter),Ot(l.inferences,(C,E)=>()=>fPt(l,E)))}function eet(l){for(let C of l)C.isFixed||(C.inferredType=void 0)}function aPt(l,C,E){(l.intraExpressionInferenceSites??(l.intraExpressionInferenceSites=[])).push({node:C,type:E})}function ups(l){if(l.intraExpressionInferenceSites){for(let{node:C,type:E}of l.intraExpressionInferenceSites){let D=C.kind===174?mJr(C,2):Sy(C,2);D&&lF(l.inferences,E,D)}l.intraExpressionInferenceSites=void 0}}function cPt(l){return{typeParameter:l,candidates:void 0,contraCandidates:void 0,inferredType:void 0,priority:void 0,topLevel:!0,isFixed:!1,impliedArity:void 0}}function I4r(l){return{typeParameter:l.typeParameter,candidates:l.candidates&&l.candidates.slice(),contraCandidates:l.contraCandidates&&l.contraCandidates.slice(),inferredType:l.inferredType,priority:l.priority,topLevel:l.topLevel,isFixed:l.isFixed,impliedArity:l.impliedArity}}function gps(l){let C=Gt(l.inferences,Yre);return C.length?oPt(Ot(C,I4r),l.signature,l.flags,l.compareTypes):void 0}function lPt(l){return l&&l.mapper}function rW(l){let C=sa(l);if(C&524288)return!!(C&1048576);let E=!!(l.flags&465829888||l.flags&524288&&!C4r(l)&&(C&4&&(l.node||lr(of(l),rW))||C&134217728&&O(l.outerTypeParameters)||C&16&&l.symbol&&l.symbol.flags&14384&&l.symbol.declarations||C&12583968)||l.flags&3145728&&!(l.flags&1024)&&!C4r(l)&&lr(l.types,rW));return l.flags&3899393&&(l.objectFlags|=524288|(E?1048576:0)),E}function C4r(l){if(l.aliasSymbol&&!l.aliasTypeArguments){let C=zd(l.aliasSymbol,265);return!!(C&&Si(C.parent,E=>E.kind===307?!0:E.kind===267?!1:"quit"))}return!1}function dye(l,C,E=0){return!!(l===C||l.flags&3145728&&lr(l.types,D=>dye(D,C,E))||E<3&&l.flags&16777216&&(dye(KP(l),C,E+1)||dye(jP(l),C,E+1)))}function Aps(l,C){let E=HB(l);return E?!!E.type&&dye(E.type,C):dye(Sd(l),C)}function dps(l){let C=Du();sJ(l,D=>{if(!(D.flags&128))return;let W=Rd(D.value),Q=SA(4,W);Q.links.type=Qt,D.symbol&&(Q.declarations=D.symbol.declarations,Q.valueDeclaration=D.symbol.valueDeclaration),C.set(W,Q)});let E=l.flags&4?[hD(Jt,Zc,!1)]:v;return qn(void 0,C,v,v,E)}function m4r(l,C,E){let D=l.id+","+C.id+","+E.id;if(Gm.has(D))return Gm.get(D);let W=pps(l,C,E);return Gm.set(D,W),W}function uPt(l){return!(sa(l)&262144)||tO(l)&&lr(Id(l),C=>uPt(lo(C)))||aA(l)&&lr(UY(l),uPt)}function pps(l,C,E){if(!($x(l,Jt)||Id(l).length!==0&&uPt(l)))return;if(UB(l)){let W=tet(of(l)[0],C,E);return W?L_(W,cge(l)):void 0}if(aA(l)){let W=Ot(UY(l),se=>tet(se,C,E));if(!he(W,se=>!!se))return;let Q=CD(C)&4?Ar(l.target.elementFlags,se=>se&2?1:se):l.target.elementFlags;return _D(W,Q,l.target.readonly,l.target.labeledElementDeclarations)}let D=X1(1040,void 0);return D.source=l,D.mappedType=C,D.constraintType=E,D}function fps(l){let C=ol(l);return C.type||(C.type=tet(l.links.propertyType,l.links.mappedType,l.links.constraintType)||Kr),C.type}function Ips(l,C,E){let D=zb(E.type,_T(C)),W=rF(C),Q=cPt(D);return lF([Q],l,W),h4r(Q)||Kr}function tet(l,C,E){let D=l.id+","+C.id+","+E.id;if(Xf.has(D))return Xf.get(D)||Kr;RY.push(l),Ux.push(C);let W=DY;P7(l,RY,RY.length,2)&&(DY|=1),P7(C,Ux,Ux.length,2)&&(DY|=2);let Q;return DY!==3&&(Q=Ips(l,C,E)),RY.pop(),Ux.pop(),DY=W,Xf.set(D,Q),Q}function*gPt(l,C,E,D){let W=Id(C);for(let Q of W)if(!a5r(Q)&&(E||!(Q.flags&16777216||aI(Q)&48))){let se=_g(l,Q.escapedName);if(!se)yield Q;else if(D){let Ee=lo(Q);if(Ee.flags&109472){let Ve=lo(se);Ve.flags&1||ty(Ve)===ty(Ee)||(yield Q)}}}}function APt(l,C,E,D){return Ga(gPt(l,C,E,D))}function Cps(l,C){return!(C.target.combinedFlags&8)&&C.target.minLength>l.target.minLength||!C.target.hasRestElement&&(l.target.hasRestElement||C.target.fixedLengthG7(Q,W),l)===l&&ret(l,C)}return!1}function b4r(l,C){if(C.flags&2097152)return he(C.types,E=>E===f0||b4r(l,E));if(C.flags&4||yg(l,C))return!0;if(l.flags&128){let E=l.value;return!!(C.flags&8&&y4r(E,!1)||C.flags&64&&ule(E,!1)||C.flags&98816&&E===C.intrinsicName||C.flags&268435456&&ret(pb(E),C)||C.flags&134217728&&net(l,C))}if(l.flags&134217728){let E=l.texts;return E.length===2&&E[0]===""&&E[1]===""&&yg(l.types[0],C)}return!1}function E4r(l,C){return l.flags&128?B4r([l.value],v,C):l.flags&134217728?Je(l.texts,C.texts)?Ot(l.types,(E,D)=>yg(mD(E),mD(C.types[D]))?E:yps(E)):B4r(l.texts,l.types,C):void 0}function net(l,C){let E=E4r(l,C);return!!E&&he(E,(D,W)=>b4r(D,C.types[W]))}function yps(l){return l.flags&402653317?l:K4(["",""],[l])}function B4r(l,C,E){let D=l.length-1,W=l[0],Q=l[D],se=E.texts,Ee=se.length-1,Ve=se[0],Oe=se[Ee];if(D===0&&W.length0){let ks=Nt,Wo=Mr;for(;Wo=ln(ks).indexOf(Ti,Wo),!(Wo>=0);){if(ks++,ks===l.length)return;Wo=0}hn(ks,Wo),Mr+=Ti.length}else if(Mr!Ue(So,Cd)):As,tl?Gt(Zs,Cd=>!Ue(tl,Cd)):Zs]}function ks(As,Zs,Vc){let So=As.length!!Cs(tl));if(!So||Zs&&So!==Zs)return;Zs=So}return Zs}function zo(As,Zs,Vc){let So=0;if(Vc&1048576){let tl,Cd=As.flags&1048576?As.types:[As],$A=new Array(Cd.length),V_=!1;for(let bg of Zs)if(Cs(bg))tl=bg,So++;else for(let _0=0;_0$A[Uf]?void 0:_0);if(bg.length){Nt(Ta(bg),tl);return}}}else for(let tl of Zs)Cs(tl)?So++:Nt(As,tl);if(Vc&2097152?So===1:So>0)for(let tl of Zs)Cs(tl)&&Mr(As,tl,1)}function ma(As,Zs,Vc){if(Vc.flags&1048576||Vc.flags&2097152){let So=!1;for(let tl of Vc.types)So=ma(As,Zs,tl)||So;return So}if(Vc.flags&4194304){let So=Cs(Vc.type);if(So&&!So.isFixed&&!_4r(As)){let tl=m4r(As,Zs,Vc);tl&&Mr(tl,So.typeParameter,sa(As)&262144?16:8)}return!0}if(Vc.flags&262144){Mr(JN(As,As.pattern?2:0),Vc,32);let So=H4(Vc);if(So&&ma(As,Zs,So))return!0;let tl=Ot(Id(As),lo),Cd=Ot(ey(As),$A=>$A!==Ri?$A.type:Vi);return Nt(Ta(vi(tl,Cd)),rF(Zs)),!0}return!1}function ha(As,Zs){if(As.flags&16777216)Nt(As.checkType,Zs.checkType),Nt(As.extendsType,Zs.extendsType),Nt(KP(As),KP(Zs)),Nt(jP(As),jP(Zs));else{let Vc=[KP(Zs),jP(Zs)];hn(As,Vc,Zs.flags,W?64:0)}}function Tg(As,Zs){let Vc=E4r(As,Zs),So=Zs.types;if(Vc||he(Zs.texts,tl=>tl.length===0))for(let tl=0;tlKf|rB.flags,0);if(!(Uf&4)){let Kf=Cd.value;Uf&296&&!y4r(Kf,!0)&&(Uf&=-297),Uf&2112&&!ule(Kf,!0)&&(Uf&=-2113);let rB=Td(_0,(KI,WC)=>WC.flags&Uf?KI.flags&4?KI:WC.flags&4?Cd:KI.flags&134217728?KI:WC.flags&134217728&&net(Cd,WC)?Cd:KI.flags&268435456?KI:WC.flags&268435456&&Kf===hXr(WC.symbol,Kf)?Cd:KI.flags&128?KI:WC.flags&128&&WC.value===Kf?WC:KI.flags&8?KI:WC.flags&8?dw(+Kf):KI.flags&32?KI:WC.flags&32?dw(+Kf):KI.flags&256?KI:WC.flags&256&&WC.value===+Kf?WC:KI.flags&64?KI:WC.flags&64?_ps(Kf):KI.flags&2048?KI:WC.flags&2048&&gV(WC.value)===Kf?WC:KI.flags&16?KI:WC.flags&16?Kf==="true"?Mn:Kf==="false"?dn:ds:KI.flags&512?KI:WC.flags&512&&WC.intrinsicName===Kf?WC:KI.flags&32768?KI:WC.flags&32768&&WC.intrinsicName===Kf?WC:KI.flags&65536?KI:WC.flags&65536&&WC.intrinsicName===Kf?WC:KI:KI,Vi);if(!(rB.flags&131072)){Nt(rB,$A);continue}}}}Nt(Cd,$A)}}function Ou(As,Zs){Nt(eB(As),eB(Zs)),Nt(rF(As),rF(Zs));let Vc=cL(As),So=cL(Zs);Vc&&So&&Nt(Vc,So)}function FA(As,Zs){var Vc,So;if(sa(As)&4&&sa(Zs)&4&&(As.target===Zs.target||UB(As)&&UB(Zs))){ks(of(As),of(Zs),K3t(As.target));return}if(jb(As)&&jb(Zs)&&Ou(As,Zs),sa(Zs)&32&&!Zs.declaration.nameType){let tl=eB(Zs);if(ma(As,Zs,tl))return}if(!mps(As,Zs)){if(qP(As)){if(aA(Zs)){let tl=uL(As),Cd=uL(Zs),$A=of(Zs),V_=Zs.target.elementFlags;if(aA(As)&&zds(As,Zs)){for(let Uf=0;Uf0){let Cd=Pu(Zs,Vc),$A=Cd.length;for(let V_=0;V_<$A;V_++){let bg=Math.max(tl-$A+V_,0);u_(Tgs(So[bg]),z0e(Cd[V_]))}}}function u_(As,Zs){if(!(As.flags&64)){let Vc=Q,So=Zs.declaration?Zs.declaration.kind:0;Q=Q||So===174||So===173||So===176,iPt(As,Zs,Yi),Q=Vc}sPt(As,Zs,Nt)}function LI(As,Zs){let Vc=sa(As)&sa(Zs)&32?8:0,So=ey(Zs);if(z$e(As))for(let tl of So){let Cd=[];for(let $A of Id(As))if(R7(k7($A,8576),tl.keyType)){let V_=lo($A);Cd.push($A.flags&16777216?j$e(V_):V_)}for(let $A of ey(As))R7($A.keyType,tl.keyType)&&Cd.push($A.type);Cd.length&&Mr(Ta(Cd),tl.type,Vc)}for(let tl of So){let Cd=U0e(As,tl.keyType);Cd&&Mr(Cd.type,tl.type,Vc)}}}function Eps(l,C){return C===ar?l===C:iF(l,C)||!!(C.flags&4&&l.flags&128||C.flags&8&&l.flags&256)}function Bps(l,C){return!!(l.flags&524288&&C.flags&524288&&l.symbol&&l.symbol===C.symbol||l.aliasSymbol&&l.aliasTypeArguments&&l.aliasSymbol===C.aliasSymbol)}function vps(l){let C=By(l);return!!C&&UI(C.flags&16777216?YWt(C):C,406978556)}function tO(l){return!!(sa(l)&128)}function pPt(l){return!!(sa(l)&16512)}function Sps(l){if(l.length>1){let C=Gt(l,pPt);if(C.length){let E=Ta(C,2);return vi(Gt(l,D=>!pPt(D)),[E])}}return l}function wps(l){return l.priority&416?Pg(l.contraCandidates):Hds(l.contraCandidates)}function Tps(l,C){let E=Sps(l.candidates),D=vps(l.typeParameter)||X4(l.typeParameter),W=!D&&l.topLevel&&(l.isFixed||!Aps(C,l.typeParameter)),Q=D?Ar(E,ty):W?Ar(E,$P):E,se=l.priority&416?Ta(Q,2):Yds(Q);return $b(se)}function fPt(l,C){let E=l.inferences[C];if(!E.inferredType){let D,W;if(l.signature){let se=E.candidates?Tps(E,l.signature):void 0,Ee=E.contraCandidates?wps(E):void 0;if(se||Ee){let Ve=se&&(!Ee||!(se.flags&131072)&&lr(E.contraCandidates,Oe=>qV(se,Oe))&&he(l.inferences,Oe=>Oe!==E&&By(Oe.typeParameter)!==E.typeParameter||he(Oe.candidates,ot=>qV(ot,se))));D=Ve?se:Ee,W=Ve?Ee:se}else if(l.flags&1)D=ko;else{let Ve=J4(E.typeParameter);Ve&&(D=al(Ve,nds(rds(l,C),l.nonFixingMapper)))}}else D=h4r(E);E.inferredType=D||IPt(!!(l.flags&2));let Q=By(E.typeParameter);if(Q){let se=al(Q,l.nonFixingMapper);(!D||!l.compareTypes(D,JE(se,D)))&&(E.inferredType=W&&l.compareTypes(W,JE(se,W))?W:se)}}return E.inferredType}function IPt(l){return l?Qt:Kr}function CPt(l){let C=[];for(let E=0;EHI(C)||Wf(C)||Se(C)))}function JZe(l,C,E,D){switch(l.kind){case 80:if(!oV(l)){let se=vy(l);return se!==en?`${D?sd(D):"-1"}|${Gh(C)}|${Gh(E)}|${kg(se)}`:void 0}case 110:return`0|${D?sd(D):"-1"}|${Gh(C)}|${Gh(E)}`;case 235:case 217:return JZe(l.expression,C,E,D);case 166:let W=JZe(l.left,C,E,D);return W&&`${W}.${l.right.escapedText}`;case 211:case 212:let Q=rJ(l);if(Q!==void 0){let se=JZe(l.expression,C,E,D);return se&&`${se}.${Q}`}if(hA(l)&&sr(l.argumentExpression)){let se=vy(l.argumentExpression);if(O7(se)||Iye(se)&&!rLe(se)){let Ee=JZe(l.expression,C,E,D);return Ee&&`${Ee}.@${kg(se)}`}}break;case 206:case 207:case 262:case 218:case 219:case 174:return`${sd(l)}#${Gh(C)}`}}function Fh(l,C){switch(C.kind){case 217:case 235:return Fh(l,C.expression);case 226:return fm(C)&&Fh(l,C.left)||no(C)&&C.operatorToken.kind===28&&Fh(l,C.right)}switch(l.kind){case 236:return C.kind===236&&l.keywordToken===C.keywordToken&&l.name.escapedText===C.name.escapedText;case 80:case 81:return oV(l)?C.kind===110:C.kind===80&&vy(l)===vy(C)||(zs(C)||ml(C))&&H1(vy(l))===Mo(C);case 110:return C.kind===110;case 108:return C.kind===108;case 235:case 217:return Fh(l.expression,C);case 211:case 212:let E=rJ(l);if(E!==void 0){let D=Cp(C)?rJ(C):void 0;if(D!==void 0)return D===E&&Fh(l.expression,C.expression)}if(hA(l)&&hA(C)&&sr(l.argumentExpression)&&sr(C.argumentExpression)){let D=vy(l.argumentExpression);if(D===vy(C.argumentExpression)&&(O7(D)||Iye(D)&&!rLe(D)))return Fh(l.expression,C.expression)}break;case 166:return Cp(C)&&l.right.escapedText===rJ(C)&&Fh(l.left,C.expression);case 226:return no(l)&&l.operatorToken.kind===28&&Fh(l.right,C)}return!1}function rJ(l){if(Io(l))return l.name.escapedText;if(hA(l))return Nps(l);if(ml(l)){let C=es(l);return C?Rd(C):void 0}if(Jc(l))return""+l.parent.parameters.indexOf(l)}function hPt(l){return l.flags&8192?l.escapedName:l.flags&384?Rd(""+l.value):void 0}function Nps(l){return GE(l.argumentExpression)?Rd(l.argumentExpression.text):cp(l.argumentExpression)?Rps(l.argumentExpression):void 0}function Rps(l){let C=FI(l,111551,!0);if(!C||!(O7(C)||C.flags&8))return;let E=C.valueDeclaration;if(E===void 0)return;let D=io(E);if(D){let W=hPt(D);if(W!==void 0)return W}if(dG(E)&&ow(E,l)){let W=nee(E);if(W){let Q=pu(E.parent)?Hc(E):l_(W);return Q&&hPt(Q)}if(_V(E))return K9(E.name)}}function S4r(l,C){for(;Cp(l);)if(l=l.expression,Fh(l,C))return!0;return!1}function nJ(l,C){for(;km(l);)if(l=l.expression,Fh(l,C))return!0;return!1}function gge(l,C){if(l&&l.flags&1048576){let E=S5r(l,C);if(E&&aI(E)&2)return E.links.isDiscriminantProperty===void 0&&(E.links.isDiscriminantProperty=(E.links.checkFlags&192)===192&&!F7(lo(E))),!!E.links.isDiscriminantProperty}return!1}function w4r(l,C){let E;for(let D of l)if(gge(C,D.escapedName)){if(E){E.push(D);continue}E=[D]}return E}function Dps(l,C){let E=new Map,D=0;for(let W of l)if(W.flags&61603840){let Q=ZI(W,C);if(Q){if(!cye(Q))return;let se=!1;sJ(Q,Ee=>{let Ve=Gh(ty(Ee)),Oe=E.get(Ve);Oe?Oe!==Kr&&(E.set(Ve,Kr),se=!0):E.set(Ve,W)}),se||D++}}return D>=10&&D*2>=l.length?E:void 0}function UZe(l){let C=l.types;if(!(C.length<10||sa(l)&32768||ft(C,E=>!!(E.flags&59506688))<10)){if(l.keyPropertyName===void 0){let E=X(C,W=>W.flags&59506688?X(Id(W),Q=>ET(lo(Q))?Q.escapedName:void 0):void 0),D=E&&Dps(C,E);l.keyPropertyName=D?E:"",l.constituentMap=D}return l.keyPropertyName.length?l.keyPropertyName:void 0}}function KZe(l,C){var E;let D=(E=l.constituentMap)==null?void 0:E.get(Gh(ty(C)));return D!==Kr?D:void 0}function T4r(l,C){let E=UZe(l),D=E&&ZI(C,E);return D&&KZe(l,D)}function xps(l,C){let E=UZe(l),D=E&&be(C.properties,Q=>Q.symbol&&Q.kind===303&&Q.symbol.escapedName===E&&sLe(Q.initializer)),W=D&&SLe(D.initializer);return W&&KZe(l,W)}function N4r(l,C){return Fh(l,C)||S4r(l,C)}function R4r(l,C){if(l.arguments){for(let E of l.arguments)if(N4r(C,E)||nJ(E,C))return!0}return!!(l.expression.kind===211&&N4r(C,l.expression.expression))}function _Pt(l){return l.id<=0&&(l.id=lGr,lGr++),l.id}function kps(l,C){if(!(l.flags&1048576))return yg(l,C);for(let E of l.types)if(yg(E,C))return!0;return!1}function Gps(l,C){if(l===C)return l;if(C.flags&131072)return C;let E=`A${Gh(l)},${Gh(C)}`;return vP(E)??KZ(E,Fps(l,C))}function Fps(l,C){let E=VC(l,W=>kps(C,W)),D=C.flags&512&&jY(C)?Of(E,L7):E;return yg(C,D)?D:l}function yPt(l){let C=yT(l);return!!(C.callSignatures.length||C.constructSignatures.length||C.members.get("bind")&&qV(l,qC))}function Zre(l,C){return bPt(l,C)&C}function BT(l,C){return Zre(l,C)!==0}function bPt(l,C){l.flags&467927040&&(l=a_(l)||Kr);let E=l.flags;if(E&268435460)return nt?16317953:16776705;if(E&134217856){let D=E&128&&l.value==="";return nt?D?12123649:7929345:D?12582401:16776705}if(E&40)return nt?16317698:16776450;if(E&256){let D=l.value===0;return nt?D?12123394:7929090:D?12582146:16776450}if(E&64)return nt?16317188:16775940;if(E&2048){let D=g4r(l);return nt?D?12122884:7928580:D?12581636:16775940}return E&16?nt?16316168:16774920:E&528?nt?l===dn||l===On?12121864:7927560:l===dn||l===On?12580616:16774920:E&524288?C&(nt?83427327:83886079)?sa(l)&16&&sF(l)?nt?83427327:83886079:yPt(l)?nt?7880640:16728e3:nt?7888800:16736160:0:E&16384?9830144:E&32768?26607360:E&65536?42917664:E&12288?nt?7925520:16772880:E&67108864?nt?7888800:16736160:E&131072?0:E&1048576?Td(l.types,(D,W)=>D|bPt(W,C),0):E&2097152?Zps(l,C):83886079}function Zps(l,C){let E=UI(l,402784252),D=0,W=134217727;for(let Q of l.types)if(!(E&&Q.flags&524288)){let se=bPt(Q,C);D|=se,W&=se}return D&8256|W&134209471}function Uv(l,C){return VC(l,E=>BT(E,C))}function iJ(l,C){let E=x4r(Uv(nt&&l.flags&2?s_:l,C));if(nt)switch(C){case 524288:return D4r(E,65536,131072,33554432,ur);case 1048576:return D4r(E,131072,65536,16777216,wn);case 2097152:case 4194304:return Of(E,D=>BT(D,262144)?eps(D):D)}return E}function D4r(l,C,E,D,W){let Q=Zre(l,50528256);if(!(Q&C))return l;let se=Ta([Zc,W]);return Of(l,Ee=>BT(Ee,C)?Pg([Ee,!(Q&D)&&BT(Ee,E)?se:Zc]):Ee)}function x4r(l){return l===s_?Kr:l}function EPt(l,C){return C?Ta([Yt(l),l_(C)]):l}function k4r(l,C){var E;let D=AL(C);if(!x2(D))return cr;let W=k2(D);return ZI(l,W)||pye((E=D7(l,W))==null?void 0:E.type)||cr}function G4r(l,C){return eE(l,lge)&&o4r(l,C)||pye(IL(65,l,wn,void 0))||cr}function pye(l){return l&&(Ne.noUncheckedIndexedAccess?Ta([l,ar]):l)}function F4r(l){return L_(IL(65,l,wn,void 0)||cr)}function Lps(l){return l.parent.kind===209&&BPt(l.parent)||l.parent.kind===303&&BPt(l.parent.parent)?EPt(jZe(l),l.right):l_(l.right)}function BPt(l){return l.parent.kind===226&&l.parent.left===l||l.parent.kind===250&&l.parent.initializer===l}function Vps(l,C){return G4r(jZe(l),l.elements.indexOf(C))}function Wps(l){return F4r(jZe(l.parent))}function Z4r(l){return k4r(jZe(l.parent),l.name)}function Pps(l){return EPt(Z4r(l),l.objectAssignmentInitializer)}function jZe(l){let{parent:C}=l;switch(C.kind){case 249:return Jt;case 250:return xLe(C)||cr;case 226:return Lps(C);case 220:return wn;case 209:return Vps(C,l);case 230:return Wps(C);case 303:return Z4r(C);case 304:return Pps(C)}return cr}function Ops(l){let C=l.parent,E=V4r(C.parent),D=C.kind===206?k4r(E,l.propertyName||l.name):l.dotDotDotToken?F4r(E):G4r(E,C.elements.indexOf(l));return EPt(D,l.initializer)}function L4r(l){return Uo(l).resolvedType||l_(l)}function Mps(l){return l.initializer?L4r(l.initializer):l.parent.parent.kind===249?Jt:l.parent.parent.kind===250&&xLe(l.parent.parent)||cr}function V4r(l){return l.kind===260?Mps(l):Ops(l)}function Qps(l){return l.kind===260&&l.initializer&&lp(l.initializer)||l.kind!==208&&l.parent.kind===226&&lp(l.parent.right)}function $Y(l){switch(l.kind){case 217:return $Y(l.expression);case 226:switch(l.operatorToken.kind){case 64:case 76:case 77:case 78:return $Y(l.left);case 28:return $Y(l.right)}}return l}function W4r(l){let{parent:C}=l;return C.kind===217||C.kind===226&&C.operatorToken.kind===64&&C.left===l||C.kind===226&&C.operatorToken.kind===28&&C.right===l?W4r(C):l}function Yps(l){return l.kind===296?ty(l_(l.expression)):Vi}function iet(l){let C=Uo(l);if(!C.switchTypes){C.switchTypes=[];for(let E of l.caseBlock.clauses)C.switchTypes.push(Yps(E))}return C.switchTypes}function P4r(l){if(lr(l.caseBlock.clauses,E=>E.kind===296&&!XA(E.expression)))return;let C=[];for(let E of l.caseBlock.clauses){let D=E.kind===296?E.expression.text:void 0;C.push(D&&!Ue(C,D)?D:void 0)}return C}function Hps(l,C){return l.flags&1048576?!X(l.types,E=>!Ue(C,E)):Ue(C,l)}function Age(l,C){return!!(l===C||l.flags&131072||C.flags&1048576&&Xps(l,C))}function Xps(l,C){if(l.flags&1048576){for(let E of l.types)if(!gL(C.types,E))return!1;return!0}return l.flags&1056&&T7(l)===C?!0:gL(C.types,l)}function sJ(l,C){return l.flags&1048576?X(l.types,C):C(l)}function Kv(l,C){return l.flags&1048576?lr(l.types,C):C(l)}function eE(l,C){return l.flags&1048576?he(l.types,C):C(l)}function Jps(l,C){return l.flags&3145728?he(l.types,C):C(l)}function VC(l,C){if(l.flags&1048576){let E=l.types,D=Gt(E,C);if(D===E)return l;let W=l.origin,Q;if(W&&W.flags&1048576){let se=W.types,Ee=Gt(se,Ve=>!!(Ve.flags&1048576)||C(Ve));if(se.length-Ee.length===E.length-D.length){if(Ee.length===1)return Ee[0];Q=E3t(1048576,Ee)}}return v3t(D,l.objectFlags&16809984,void 0,void 0,Q)}return l.flags&131072||C(l)?l:Vi}function set(l,C){return VC(l,E=>E!==C)}function Ups(l){return l.flags&1048576?l.types.length:1}function Of(l,C,E){if(l.flags&131072)return l;if(!(l.flags&1048576))return C(l);let D=l.origin,W=D&&D.flags&1048576?D.types:l.types,Q,se=!1;for(let Ee of W){let Ve=Ee.flags&1048576?Of(Ee,C,E):C(Ee);se||(se=Ee!==Ve),Ve&&(Q?Q.push(Ve):Q=[Ve])}return se?Q&&Ta(Q,E?0:1):l}function O4r(l,C,E,D){return l.flags&1048576&&E?Ta(Ot(l.types,C),1,E,D):Of(l,C)}function dge(l,C){return VC(l,E=>(E.flags&C)!==0)}function M4r(l,C){return UI(l,134217804)&&UI(C,402655616)?Of(l,E=>E.flags&4?dge(C,402653316):j4(E)&&!UI(C,402653188)?dge(C,128):E.flags&8?dge(C,264):E.flags&64?dge(C,2112):E):l}function Lre(l){return l.flags===0}function oJ(l){return l.flags===0?l.type:l}function Vre(l,C){return C?{flags:0,type:l.flags&131072?ko:l}:l}function Kps(l){let C=X1(256);return C.elementType=l,C}function vPt(l){return Bi[l.id]||(Bi[l.id]=Kps(l))}function Q4r(l,C){let E=gye(oF(SLe(C)));return Age(E,l.elementType)?l:vPt(Ta([l.elementType,E]))}function jps(l){return l.flags&131072?Hd:L_(l.flags&1048576?Ta(l.types,2):l)}function zps(l){return l.finalArrayType||(l.finalArrayType=jps(l.elementType))}function zZe(l){return sa(l)&256?zps(l):l}function qps(l){return sa(l)&256?l.elementType:Vi}function $ps(l){let C=!1;for(let E of l)if(!(E.flags&131072)){if(!(sa(E)&256))return!1;C=!0}return C}function Y4r(l){let C=W4r(l),E=C.parent,D=Io(E)&&(E.name.escapedText==="length"||E.parent.kind===213&&sr(E.name)&&bme(E.name)),W=E.kind===212&&E.expression===C&&E.parent.kind===226&&E.parent.operatorToken.kind===64&&E.parent.left===E&&!Rx(E.parent)&&c_(l_(E.argumentExpression),296);return D||W}function efs(l){return(zs(l)||Ql(l)||n_(l)||Jc(l))&&!!(fC(l)||so(l)&&qw(l)&&l.initializer&&vG(l.initializer)&&rb(l.initializer))}function oet(l,C){if(l=JI(l),l.flags&8752)return lo(l);if(l.flags&7){if(aI(l)&262144){let D=l.links.syntheticOrigin;if(D&&oet(D))return lo(l)}let E=l.valueDeclaration;if(E){if(efs(E))return lo(l);if(zs(E)&&E.parent.parent.kind===250){let D=E.parent.parent,W=qZe(D.expression,void 0);if(W){let Q=D.awaitModifier?15:13;return IL(Q,W,wn,void 0)}}C&&eg(C,Us(E,Z._0_needs_an_explicit_type_annotation,qc(l)))}}}function qZe(l,C){if(!(l.flags&67108864))switch(l.kind){case 80:let E=H1(vy(l));return oet(E,C);case 110:return yfs(l);case 108:return det(l);case 211:{let D=qZe(l.expression,C);if(D){let W=l.name,Q;if(kc(W)){if(!D.symbol)return;Q=_g(D,hee(D.symbol,W.escapedText))}else Q=_g(D,W.escapedText);return Q&&oet(Q,C)}return}case 217:return qZe(l.expression,C)}}function $Ze(l){let C=Uo(l),E=C.effectsSignature;if(E===void 0){let D;if(no(l)){let se=Pre(l.right);D=BOt(se)}else l.parent.kind===244?D=qZe(l.expression,void 0):l.expression.kind!==108&&(km(l)?D=jN(lye(Rl(l.expression),l.expression),l.expression):D=Pre(l.expression));let W=Pu(D&&$0(D)||Kr,0),Q=W.length===1&&!W[0].typeParameters?W[0]:lr(W,H4r)?Mre(l):void 0;E=C.effectsSignature=Q&&H4r(Q)?Q:tt}return E===tt?void 0:E}function H4r(l){return!!(HB(l)||l.declaration&&(Nre(l.declaration)||Kr).flags&131072)}function tfs(l,C){if(l.kind===1||l.kind===3)return C.arguments[l.parameterIndex];let E=jA(C.expression);return Cp(E)?jA(E.expression):void 0}function rfs(l){let C=Si(l,m$),E=ls(l),D=Rr(E,C.statements.pos);UA.add(Im(E,D.start,D.length,Z.The_containing_function_or_module_body_is_too_large_for_control_flow_analysis))}function eLe(l){let C=aet(l,!1);return WG=l,xV=C,C}function tLe(l){let C=jA(l,!0);return C.kind===97||C.kind===226&&(C.operatorToken.kind===56&&(tLe(C.left)||tLe(C.right))||C.operatorToken.kind===57&&tLe(C.left)&&tLe(C.right))}function aet(l,C){for(;;){if(l===WG)return xV;let E=l.flags;if(E&4096){if(!C){let D=_Pt(l),W=nre[D];return W!==void 0?W:nre[D]=aet(l,!0)}C=!1}if(E&368)l=l.antecedent;else if(E&512){let D=$Ze(l.node);if(D){let W=HB(D);if(W&&W.kind===3&&!W.type){let Q=l.node.arguments[W.parameterIndex];if(Q&&tLe(Q))return!1}if(Sd(D).flags&131072)return!1}l=l.antecedent}else{if(E&4)return lr(l.antecedent,D=>aet(D,!1));if(E&8){let D=l.antecedent;if(D===void 0||D.length===0)return!1;l=D[0]}else if(E&128){let D=l.node;if(D.clauseStart===D.clauseEnd&&xUr(D.switchStatement))return!1;l=l.antecedent}else if(E&1024){WG=void 0;let D=l.node.target,W=D.antecedent;D.antecedent=l.node.antecedents;let Q=aet(l.antecedent,!1);return D.antecedent=W,Q}else return!(E&1)}}}function cet(l,C){for(;;){let E=l.flags;if(E&4096){if(!C){let D=_Pt(l),W=g7[D];return W!==void 0?W:g7[D]=cet(l,!0)}C=!1}if(E&496)l=l.antecedent;else if(E&512){if(l.node.expression.kind===108)return!0;l=l.antecedent}else{if(E&4)return he(l.antecedent,D=>cet(D,!1));if(E&8)l=l.antecedent[0];else if(E&1024){let D=l.node.target,W=D.antecedent;D.antecedent=l.node.antecedents;let Q=cet(l.antecedent,!1);return D.antecedent=W,Q}else return!!(E&1)}}}function SPt(l){switch(l.kind){case 110:return!0;case 80:if(!oV(l)){let E=vy(l);return O7(E)||Iye(E)&&!rLe(E)||!!E.valueDeclaration&&WA(E.valueDeclaration)}break;case 211:case 212:return SPt(l.expression)&&ST(Uo(l).resolvedSymbol||en);case 206:case 207:let C=WS(l.parent);return Jc(C)||sxe(C)?!wPt(C):zs(C)&&Fye(C)}return!1}function uF(l,C,E=C,D,W=(Q=>(Q=eo(l,gee))==null?void 0:Q.flowNode)()){let Q,se=!1,Ee=0;if(nw)return cr;if(!W)return C;HZ++;let Ve=K0,Oe=oJ(Nt(W));K0=Ve;let ot=sa(Oe)&256&&Y4r(l)?Hd:zZe(Oe);if(ot===fl||l.parent&&l.parent.kind===235&&!(ot.flags&131072)&&Uv(ot,2097152).flags&131072)return C;return ot;function Wt(){return se?Q:(se=!0,Q=JZe(l,C,E,D))}function Nt(Ln){var Oi;if(Ee===2e3)return(Oi=Mi)==null||Oi.instant(Mi.Phase.CheckTypes,"getTypeAtFlowNode_DepthLimit",{flowId:Ln.id}),nw=!0,rfs(l),cr;Ee++;let ms;for(;;){let Ms=Ln.flags;if(Ms&4096){for(let Ha=Ve;Ha=0&&ms.parameterIndex!(Ha.flags&163840)):Oi.kind===221&&nJ(Oi.expression,l)&&(Ms=Cd(Ms,Ln.node,Ha=>!(Ha.flags&131072||Ha.flags&128&&Ha.value==="undefined"))));let Qo=ma(Oi,Ms);Qo&&(Ms=Ou(Ms,Qo,Ln.node))}return Vre(Ms,Lre(ms))}function Yi(Ln){let Oi=[],ms=!1,Ms=!1,Qo;for(let Ha of Ln.antecedent){if(!Qo&&Ha.flags&128&&Ha.node.clauseStart===Ha.node.clauseEnd){Qo=Ha;continue}let Gg=Nt(Ha),Xg=oJ(Gg);if(Xg===C&&C===E)return Xg;pa(Oi,Xg),Age(Xg,E)||(ms=!0),Lre(Gg)&&(Ms=!0)}if(Qo){let Ha=Nt(Qo),Gg=oJ(Ha);if(!(Gg.flags&131072)&&!Ue(Oi,Gg)&&!xUr(Qo.node.switchStatement)){if(Gg===C&&C===E)return Gg;Oi.push(Gg),Age(Gg,E)||(ms=!0),Lre(Ha)&&(Ms=!0)}}return Vre(Ds(Oi,ms?2:1),Ms)}function Cs(Ln){let Oi=_Pt(Ln),ms=jm[Oi]||(jm[Oi]=new Map),Ms=Wt();if(!Ms)return C;let Qo=ms.get(Ms);if(Qo)return Qo;for(let Bt=np;Bt{let Bt=que(Xt,Ms)||Kr;return!(Bt.flags&131072)&&!(Xg.flags&131072)&&VZe(Xg,Bt)})}function Tg(Ln,Oi,ms,Ms,Qo){if((ms===37||ms===38)&&Ln.flags&1048576){let Ha=UZe(Ln);if(Ha&&Ha===rJ(Oi)){let Gg=KZe(Ln,l_(Ms));if(Gg)return ms===(Qo?37:38)?Gg:ET(ZI(Gg,Ha)||Kr)?set(Ln,Gg):Ln}}return ha(Ln,Oi,Ha=>Vc(Ha,ms,Ms,Qo))}function Ou(Ln,Oi,ms){if(ms.clauseStartKZe(Ln,Ha)||Kr));if(Qo!==Kr)return Qo}return ha(Ln,Oi,Ms=>$A(Ms,ms))}function FA(Ln,Oi,ms){if(Fh(l,Oi))return iJ(Ln,ms?4194304:8388608);nt&&ms&&nJ(Oi,l)&&(Ln=iJ(Ln,2097152));let Ms=ma(Oi,Ln);return Ms?ha(Ln,Ms,Qo=>Uv(Qo,ms?4194304:8388608)):Ln}function ou(Ln,Oi,ms){let Ms=_g(Ln,Oi);return Ms?!!(Ms.flags&16777216||aI(Ms)&48)||ms:!!D7(Ln,Oi)||!ms}function Jf(Ln,Oi,ms){let Ms=k2(Oi);if(Kv(Ln,Ha=>ou(Ha,Ms,!0)))return VC(Ln,Ha=>ou(Ha,Ms,ms));if(ms){let Ha=sAs();if(Ha)return Pg([Ln,Dre(Ha,[Oi,Kr])])}return Ln}function u_(Ln,Oi,ms,Ms,Qo){return Qo=Qo!==(ms.kind===112)!=(Ms!==38&&Ms!==36),W_(Ln,Oi,Qo)}function LI(Ln,Oi,ms){switch(Oi.operatorToken.kind){case 64:case 76:case 77:case 78:return FA(W_(Ln,Oi.right,ms),Oi.left,ms);case 35:case 36:case 37:case 38:let Ms=Oi.operatorToken.kind,Qo=$Y(Oi.left),Ha=$Y(Oi.right);if(Qo.kind===221&&XA(Ha))return So(Ln,Qo,Ms,Ha,ms);if(Ha.kind===221&&XA(Qo))return So(Ln,Ha,Ms,Qo,ms);if(Fh(l,Qo))return Vc(Ln,Ms,Ha,ms);if(Fh(l,Ha))return Vc(Ln,Ms,Qo,ms);nt&&(nJ(Qo,l)?Ln=Zs(Ln,Ms,Ha,ms):nJ(Ha,l)&&(Ln=Zs(Ln,Ms,Qo,ms)));let Gg=ma(Qo,Ln);if(Gg)return Tg(Ln,Gg,Ms,Ha,ms);let Xg=ma(Ha,Ln);if(Xg)return Tg(Ln,Xg,Ms,Qo,ms);if(Kf(Qo))return rB(Ln,Ms,Ha,ms);if(Kf(Ha))return rB(Ln,Ms,Qo,ms);if(IQ(Ha)&&!Cp(Qo))return u_(Ln,Qo,Ha,Ms,ms);if(IQ(Qo)&&!Cp(Ha))return u_(Ln,Ha,Qo,Ms,ms);break;case 104:return KI(Ln,Oi,ms);case 103:if(kc(Oi.left))return As(Ln,Oi,ms);let Xt=$Y(Oi.right);if(uye(Ln)&&Cp(l)&&Fh(l.expression,Xt)){let Bt=l_(Oi.left);if(x2(Bt)&&rJ(l)===k2(Bt))return Uv(Ln,ms?524288:65536)}if(Fh(l,Xt)){let Bt=l_(Oi.left);if(x2(Bt))return Jf(Ln,Bt,ms)}break;case 28:return W_(Ln,Oi.right,ms);case 56:return ms?W_(W_(Ln,Oi.left,!0),Oi.right,!0):Ta([W_(Ln,Oi.left,!1),W_(Ln,Oi.right,!1)]);case 57:return ms?Ta([W_(Ln,Oi.left,!0),W_(Ln,Oi.right,!0)]):W_(W_(Ln,Oi.left,!1),Oi.right,!1)}return Ln}function As(Ln,Oi,ms){let Ms=$Y(Oi.right);if(!Fh(l,Ms))return Ln;w.assertNode(Oi.left,kc);let Qo=Bet(Oi.left);if(Qo===void 0)return Ln;let Ha=Qo.parent,Gg=IC(w.checkDefined(Qo.valueDeclaration,"should always have a declaration"))?lo(Ha):xp(Ha);return AF(Ln,Gg,ms,!0)}function Zs(Ln,Oi,ms,Ms){let Qo=Oi===35||Oi===37,Ha=Oi===35||Oi===36?98304:32768,Gg=l_(ms);return Qo!==Ms&&eE(Gg,Xt=>!!(Xt.flags&Ha))||Qo===Ms&&eE(Gg,Xt=>!(Xt.flags&(3|Ha)))?iJ(Ln,2097152):Ln}function Vc(Ln,Oi,ms,Ms){if(Ln.flags&1)return Ln;(Oi===36||Oi===38)&&(Ms=!Ms);let Qo=l_(ms),Ha=Oi===35||Oi===36;if(Qo.flags&98304){if(!nt)return Ln;let Gg=Ha?Ms?262144:2097152:Qo.flags&65536?Ms?131072:1048576:Ms?65536:524288;return iJ(Ln,Gg)}if(Ms){if(!Ha&&(Ln.flags&2||Kv(Ln,yD))){if(Qo.flags&469893116||yD(Qo))return Qo;if(Qo.flags&524288)return oa}let Gg=VC(Ln,Xg=>VZe(Xg,Qo)||Ha&&tps(Xg,Qo));return M4r(Gg,Qo)}return ET(Qo)?VC(Ln,Gg=>!(a4r(Gg)&&VZe(Gg,Qo))):Ln}function So(Ln,Oi,ms,Ms,Qo){(ms===36||ms===38)&&(Qo=!Qo);let Ha=$Y(Oi.expression);if(!Fh(l,Ha)){nt&&nJ(Ha,l)&&Qo===(Ms.text!=="undefined")&&(Ln=iJ(Ln,2097152));let Gg=ma(Ha,Ln);return Gg?ha(Ln,Gg,Xg=>tl(Xg,Ms,Qo)):Ln}return tl(Ln,Ms,Qo)}function tl(Ln,Oi,ms){return ms?V_(Ln,Oi.text):iJ(Ln,FDt.get(Oi.text)||32768)}function Cd(Ln,{switchStatement:Oi,clauseStart:ms,clauseEnd:Ms},Qo){return ms!==Ms&&he(iet(Oi).slice(ms,Ms),Qo)?Uv(Ln,2097152):Ln}function $A(Ln,{switchStatement:Oi,clauseStart:ms,clauseEnd:Ms}){let Qo=iet(Oi);if(!Qo.length)return Ln;let Ha=Qo.slice(ms,Ms),Gg=ms===Ms||Ue(Ha,Vi);if(Ln.flags&2&&!Gg){let li;for(let Xi=0;XiVZe(Xg,li)),Xg);if(!Gg)return Xt;let Bt=VC(Ln,li=>!(a4r(li)&&Ue(Qo,li.flags&32768?wn:ty(Jds(li)))));return Xt.flags&131072?Bt:Ta([Xt,Bt])}function V_(Ln,Oi){switch(Oi){case"string":return bg(Ln,Jt,1);case"number":return bg(Ln,bt,2);case"bigint":return bg(Ln,Vt,4);case"boolean":return bg(Ln,ds,8);case"symbol":return bg(Ln,Es,16);case"object":return Ln.flags&1?Ln:Ta([bg(Ln,oa,32),bg(Ln,ur,131072)]);case"function":return Ln.flags&1?Ln:bg(Ln,qC,64);case"undefined":return bg(Ln,wn,65536)}return bg(Ln,oa,128)}function bg(Ln,Oi,ms){return Of(Ln,Ms=>UN(Ms,Oi,PB)?BT(Ms,ms)?Ms:Vi:qV(Oi,Ms)?Oi:BT(Ms,ms)?Pg([Ms,Oi]):Vi)}function _0(Ln,{switchStatement:Oi,clauseStart:ms,clauseEnd:Ms}){let Qo=P4r(Oi);if(!Qo)return Ln;let Ha=ke(Oi.caseBlock.clauses,Xt=>Xt.kind===297);if(ms===Ms||Ha>=ms&&HaZre(Bt,Xt)===Xt)}let Xg=Qo.slice(ms,Ms);return Ta(Ot(Xg,Xt=>Xt?V_(Ln,Xt):Vi))}function Uf(Ln,{switchStatement:Oi,clauseStart:ms,clauseEnd:Ms}){let Qo=ke(Oi.caseBlock.clauses,Xg=>Xg.kind===297),Ha=ms===Ms||Qo>=ms&&QoXg.kind===296?W_(Ln,Xg.expression,!0):Vi))}function Kf(Ln){return(Io(Ln)&&ao(Ln.name)==="constructor"||hA(Ln)&&XA(Ln.argumentExpression)&&Ln.argumentExpression.text==="constructor")&&Fh(l,Ln.expression)}function rB(Ln,Oi,ms,Ms){if(Ms?Oi!==35&&Oi!==37:Oi!==36&&Oi!==38)return Ln;let Qo=l_(ms);if(!rMt(Qo)&&!H0e(Qo))return Ln;let Ha=_g(Qo,"prototype");if(!Ha)return Ln;let Gg=lo(Ha),Xg=vd(Gg)?void 0:Gg;if(!Xg||Xg===GI||Xg===qC)return Ln;if(vd(Ln))return Xg;return VC(Ln,Bt=>Xt(Bt,Xg));function Xt(Bt,li){return Bt.flags&524288&&sa(Bt)&1||li.flags&524288&&sa(li)&1?Bt.symbol===li.symbol:qV(Bt,li)}}function KI(Ln,Oi,ms){let Ms=$Y(Oi.left);if(!Fh(l,Ms))return ms&&nt&&nJ(Ms,l)?iJ(Ln,2097152):Ln;let Qo=Oi.right,Ha=l_(Qo);if(!zP(Ha,GI))return Ln;let Gg=$Ze(Oi),Xg=Gg&&HB(Gg);if(Xg&&Xg.kind===1&&Xg.parameterIndex===0)return AF(Ln,Xg.type,ms,!0);if(!zP(Ha,qC))return Ln;let Xt=Of(Ha,WC);return vd(Ln)&&(Xt===GI||Xt===qC)||!ms&&!(Xt.flags&524288&&!yD(Xt))?Ln:AF(Ln,Xt,ms,!0)}function WC(Ln){let Oi=ZI(Ln,"prototype");if(Oi&&!vd(Oi))return Oi;let ms=Pu(Ln,1);return ms.length?Ta(Ot(ms,Ms=>Sd(z0e(Ms)))):Zc}function AF(Ln,Oi,ms,Ms){let Qo=Ln.flags&1048576?`N${Gh(Ln)},${Gh(Oi)},${(ms?1:0)|(Ms?2:0)}`:void 0;return vP(Qo)??KZ(Qo,Jre(Ln,Oi,ms,Ms))}function Jre(Ln,Oi,ms,Ms){if(!ms){if(Ln===Oi)return Vi;if(Ms)return VC(Ln,Xt=>!zP(Xt,Oi));let Xg=AF(Ln,Oi,!0,!1);return VC(Ln,Xt=>!Age(Xt,Xg))}if(Ln.flags&3||Ln===Oi)return Oi;let Qo=Ms?zP:qV,Ha=Ln.flags&1048576?UZe(Ln):void 0,Gg=Of(Oi,Xg=>{let Xt=Ha&&ZI(Xg,Ha),Bt=Xt&&KZe(Ln,Xt),li=Of(Bt||Ln,Ms?Xi=>zP(Xi,Xg)?Xi:zP(Xg,Xi)?Xg:Vi:Xi=>LZe(Xi,Xg)?Xi:LZe(Xg,Xi)?Xg:qV(Xi,Xg)?Xi:qV(Xg,Xi)?Xg:Vi);return li.flags&131072?Of(Ln,Xi=>UI(Xi,465829888)&&Qo(Xg,a_(Xi)||Kr)?Pg([Xi,Xg]):Vi):li});return Gg.flags&131072?qV(Oi,Ln)?Oi:yg(Ln,Oi)?Ln:yg(Oi,Ln)?Oi:Pg([Ln,Oi]):Gg}function vge(Ln,Oi,ms){if(R4r(Oi,l)){let Ms=ms||!uG(Oi)?$Ze(Oi):void 0,Qo=Ms&&HB(Ms);if(Qo&&(Qo.kind===0||Qo.kind===1))return Zye(Ln,Qo,Oi,ms)}if(uye(Ln)&&Cp(l)&&Io(Oi.expression)){let Ms=Oi.expression;if(Fh(l.expression,$Y(Ms.expression))&&sr(Ms.name)&&Ms.name.escapedText==="hasOwnProperty"&&Oi.arguments.length===1){let Qo=Oi.arguments[0];if(XA(Qo)&&rJ(l)===Rd(Qo.text))return Uv(Ln,ms?524288:65536)}}return Ln}function Zye(Ln,Oi,ms,Ms){if(Oi.type&&!(vd(Ln)&&(Oi.type===GI||Oi.type===qC))){let Qo=tfs(Oi,ms);if(Qo){if(Fh(l,Qo))return AF(Ln,Oi.type,Ms,!1);nt&&nJ(Qo,l)&&(Ms&&!BT(Oi.type,65536)||!Ms&&eE(Oi.type,uLe))&&(Ln=iJ(Ln,2097152));let Ha=ma(Qo,Ln);if(Ha)return ha(Ln,Ha,Gg=>AF(Gg,Oi.type,Ms,!1))}}return Ln}function W_(Ln,Oi,ms){if(a8(Oi)||no(Oi.parent)&&(Oi.parent.operatorToken.kind===61||Oi.parent.operatorToken.kind===78)&&Oi.parent.left===Oi)return WLe(Ln,Oi,ms);switch(Oi.kind){case 80:if(!Fh(l,Oi)&&re<5){let Ms=vy(Oi);if(O7(Ms)){let Qo=Ms.valueDeclaration;if(Qo&&zs(Qo)&&!Qo.type&&Qo.initializer&&SPt(l)){re++;let Ha=W_(Ln,Qo.initializer,ms);return re--,Ha}}}case 110:case 108:case 211:case 212:return FA(Ln,Oi,ms);case 213:return vge(Ln,Oi,ms);case 217:case 235:return W_(Ln,Oi.expression,ms);case 226:return LI(Ln,Oi,ms);case 224:if(Oi.operator===54)return W_(Ln,Oi.operand,!ms);break}return Ln}function WLe(Ln,Oi,ms){if(Fh(l,Oi))return iJ(Ln,ms?2097152:262144);let Ms=ma(Oi,Ln);return Ms?ha(Ln,Ms,Qo=>Uv(Qo,ms?2097152:262144)):Ln}}function nfs(l,C){if(l=H1(l),(C.kind===80||C.kind===81)&&(t6(C)&&(C=C.parent),NB(C)&&(!Rx(C)||OQ(C)))){let E=U$e(OQ(C)&&C.kind===211?Eet(C,void 0,!0):l_(C));if(H1(Uo(C).resolvedSymbol)===l)return E}return eT(C)&&Dh(C.parent)&&Aw(C.parent)?a$e(C.parent.symbol):Mme(C)&&OQ(C.parent)?YP(l):YV(l)}function fye(l){return Si(l.parent,C=>$l(C)&&!z9(C)||C.kind===268||C.kind===307||C.kind===172)}function rLe(l){return!X4r(l,void 0)}function X4r(l,C){let E=Si(l.valueDeclaration,uet);if(!E)return!1;let D=Uo(E);return D.flags&131072||(D.flags|=131072,ifs(E)||U4r(E)),!l.lastAssignmentPos||C&&l.lastAssignmentPosC.kind!==232&&J4r(C.name))}function ifs(l){return!!Si(l.parent,C=>uet(C)&&!!(Uo(C).flags&131072))}function uet(l){return dd(l)||Gc(l)}function U4r(l){switch(l.kind){case 80:if(Rx(l)){let E=vy(l);if(Iye(E)&&E.lastAssignmentPos!==Number.MAX_VALUE){let D=Si(l,uet),W=Si(E.valueDeclaration,uet);E.lastAssignmentPos=D===W?sfs(l,E.valueDeclaration):Number.MAX_VALUE}}return;case 281:let C=l.parent.parent;if(!l.isTypeOnly&&!C.isTypeOnly&&!C.moduleSpecifier){let E=FI(l.propertyName||l.name,111551,!0,!0);E&&Iye(E)&&(E.lastAssignmentPos=Number.MAX_VALUE)}return;case 264:case 265:case 266:return}Ya(l)||mu(l,U4r)}function sfs(l,C){let E=l.pos;for(;l&&l.pos>C.pos;){switch(l.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:E=l.end}l=l.parent}return E}function O7(l){return l.flags&3&&(HPt(l)&6)!==0}function Iye(l){let C=l.valueDeclaration&&WS(l.valueDeclaration);return!!C&&(Jc(C)||zs(C)&&(dY(C.parent)||ofs(C)))}function ofs(l){return!!(l.parent.flags&1)&&!(Nh(l)&32||l.parent.parent.kind===243&&bs(l.parent.parent.parent))}function afs(l){let C=Uo(l);if(C.parameterInitializerContainsUndefined===void 0){if(!Hv(l,8))return oL(l.symbol),!0;let E=!!BT(Ige(l,0),16777216);if(!pD())return oL(l.symbol),!0;C.parameterInitializerContainsUndefined??(C.parameterInitializerContainsUndefined=E)}return C.parameterInitializerContainsUndefined}function cfs(l,C){return nt&&C.kind===169&&C.initializer&&BT(l,16777216)&&!afs(C)?Uv(l,524288):l}function lfs(l,C){let E=C.parent;return E.kind===211||E.kind===166||E.kind===213&&E.expression===C||E.kind===214&&E.expression===C||E.kind===212&&E.expression===C&&!(Kv(l,j4r)&&q4(l_(E.argumentExpression)))}function K4r(l){return l.flags&2097152?lr(l.types,K4r):!!(l.flags&465829888&&mD(l).flags&1146880)}function j4r(l){return l.flags&2097152?lr(l.types,j4r):!!(l.flags&465829888&&!UI(mD(l),98304))}function ufs(l,C){let E=(sr(l)||Io(l)||hA(l))&&!((TN(l.parent)||u4(l.parent))&&l.parent.tagName===l)&&(C&&C&32?Sy(l,8):Sy(l,void 0));return E&&!F7(E)}function TPt(l,C,E){return xre(l)&&(l=l.baseType),!(E&&E&2)&&Kv(l,K4r)&&(lfs(l,C)||ufs(C,E))?Of(l,mD):l}function z4r(l){return!!Si(l,C=>{let E=C.parent;return E===void 0?"quit":tf(E)?E.expression===C&&cp(C):c0(E)?E.name===C||E.propertyName===C:!1})}function M7(l,C,E,D){if(Vr&&!(l.flags&33554432&&!n_(l)&&!Ql(l)))switch(C){case 1:return get(l);case 2:return q4r(l,E,D);case 3:return $4r(l);case 4:return NPt(l);case 5:return eJr(l);case 6:return tJr(l);case 7:return rJr(l);case 8:return nJr(l);case 0:{if(sr(l)&&(NB(l)||G_(l.parent)||Cm(l.parent)&&l.parent.moduleReference===l)&&aJr(l)){if(mQ(l.parent)&&(Io(l.parent)?l.parent.expression:l.parent.left)!==l)return;get(l);return}if(mQ(l)){let W=l;for(;mQ(W);){if(LS(W))return;W=W.parent}return q4r(l)}return tf(l)?$4r(l):Jm(l)||g4(l)?NPt(l):Cm(l)?NQ(l)||zet(l)?tJr(l):void 0:c0(l)?rJr(l):((dd(l)||jS(l))&&eJr(l),!Ne.emitDecoratorMetadata||!pY(l)||!FE(l)||!l.modifiers||!q$(lt,l,l.parent,l.parent.parent)?void 0:nJr(l))}default:w.assertNever(C,`Unhandled reference hint: ${C}`)}}function get(l){let C=vy(l);C&&C!==jt&&C!==en&&!oV(l)&&nLe(C,l)}function q4r(l,C,E){let D=Io(l)?l.expression:l.left;if(_G(D)||!sr(D))return;let W=vy(D);if(!W||W===en)return;if(ZE(Ne)||uV(Ne)&&z4r(l)){nLe(W,l);return}let Q=E||iC(D);if(vd(Q)||Q===ko){nLe(W,l);return}let se=C;if(!se&&!E){let Ee=Io(l)?l.name:l.right,Ve=kc(Ee)&&gLe(Ee.escapedText,Ee),Oe=Nx(l),ot=$0(Oe!==0||KPt(l)?$b(Q):Q);se=kc(Ee)?Ve&&vet(ot,Ve)||void 0:_g(ot,Ee.escapedText)}se&&(kye(se)||se.flags&8&&l.parent.kind===306)||nLe(W,l)}function $4r(l){if(sr(l.expression)){let C=l.expression,E=H1(FI(C,-1,!0,!0,l));E&&nLe(E,C)}}function NPt(l){if(!QPt(l)){let C=UA&&Ne.jsx===2?Z.Cannot_find_name_0:void 0,E=SP(l),D=Jm(l)?l.tagName:l,W;if(g4(l)&&E==="null"||(W=Pi(D,E,111551,C,!0)),W&&(W.isReferenced=-1,Vr&&W.flags&2097152&&!MN(W)&&Aet(W)),g4(l)){let Q=ls(l),se=p7(Q);se&&Pi(D,se,111551,C,!0)}}}function eJr(l){if(Qe<2&&YI(l)&2){let C=rb(l);gfs(C)}}function tJr(l){ba(l,32)&&iJr(l)}function rJr(l){if(!l.parent.parent.moduleSpecifier&&!l.isTypeOnly&&!l.parent.parent.isTypeOnly){let C=l.propertyName||l.name,E=Pi(C,C.escapedText,2998271,void 0,!0);if(!(E&&(E===Zt||E===Dr||E.declarations&&bs(Y4(E.declarations[0]))))){let D=E&&(E.flags&2097152?qm(E):E);(!D||Kb(D)&111551)&&(iJr(l),get(l.propertyName||l.name))}return}}function nJr(l){if(Ne.emitDecoratorMetadata){let C=be(l.modifiers,GC);if(!C)return;switch(Zm(C,16),l.kind){case 263:let E=dN(l);if(E)for(let se of E.parameters)Wre(Het(se));break;case 177:case 178:let D=l.kind===177?178:177,W=zd(Mo(l),D);Wre(Aw(l)||W&&Aw(W));break;case 174:for(let se of l.parameters)Wre(Het(se));Wre(rb(l));break;case 172:Wre(fC(l));break;case 169:Wre(Het(l));let Q=l.parent;for(let se of Q.parameters)Wre(Het(se));Wre(rb(Q));break}}}function nLe(l,C){if(Vr&&ON(l,111551)&&!ZQ(C)){let E=qm(l);Kb(l,!0)&1160127&&(ZE(Ne)||uV(Ne)&&z4r(C)||!kye(H1(E)))&&Aet(l)}}function Aet(l){w.assert(Vr);let C=ol(l);if(!C.referenced){C.referenced=!0;let E=YE(l);if(!E)return w.fail();if(NQ(E)&&Kb(JI(l))&111551){let D=ib(E.moduleReference);get(D)}}}function iJr(l){let C=Mo(l),E=qm(C);E&&(E===en||Kb(C,!0)&111551&&!kye(E))&&Aet(C)}function sJr(l,C){if(!l)return;let E=ib(l),D=(l.kind===80?788968:1920)|2097152,W=Pi(E,E.escapedText,D,void 0,!0);if(W&&W.flags&2097152){if(Vr&&AD(W)&&!kye(qm(W))&&!MN(W))Aet(W);else if(C&&ZE(Ne)&&R_(Ne)>=5&&!AD(W)&&!lr(W.declarations,Ex)){let Q=fr(l,Z.A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled),se=be(W.declarations||v,uo);se&&eg(Q,Us(se,Z._0_was_imported_here,ao(E)))}}}function gfs(l){sJr(l&&z$(l),!1)}function Wre(l){let C=kOt(l);C&&w_(C)&&sJr(C,!0)}function Afs(l,C,E){var D;let W=lo(l,E),Q=l.valueDeclaration;if(Q){if(ml(Q)&&!Q.initializer&&!Q.dotDotDotToken&&Q.parent.elements.length>=2){let se=Q.parent.parent,Ee=WS(se);if(Ee.kind===260&&sH(Ee)&6||Ee.kind===169){let Ve=Uo(se);if(!(Ve.flags&4194304)){Ve.flags|=4194304;let Oe=v7(se,0),ot=Oe&&Of(Oe,mD);if(Ve.flags&=-4194305,ot&&ot.flags&1048576&&!(Ee.kind===169&&wPt(Ee))){let Wt=Q.parent,Nt=uF(Wt,ot,ot,void 0,C.flowNode);return Nt.flags&131072?Vi:yc(Q,Nt,!0)}}}}if(Jc(Q)&&!Q.type&&!Q.initializer&&!Q.dotDotDotToken){let se=Q.parent;if(se.parameters.length>=2&&Z$e(se)){let Ee=mye(se);if(Ee&&Ee.parameters.length===1&&u0(Ee)){let Ve=nge(al(lo(Ee.parameters[0]),(D=eH(se))==null?void 0:D.nonFixingMapper));if(Ve.flags&1048576&&eE(Ve,aA)&&!lr(se.parameters,wPt)){let Oe=uF(se,Ve,Ve,void 0,C.flowNode),ot=se.parameters.indexOf(Q)-(iV(se)?1:0);return zb(Oe,dw(ot))}}}}}return W}function oJr(l,C){if(oV(l))return;if(C===jt){if(qPt(l)){fr(l,Z.arguments_cannot_be_referenced_in_property_initializers);return}let Q=Wb(l);if(Q)for(Qe<2&&(Q.kind===219?fr(l,Z.The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_function_expression):ba(Q,1024)&&fr(l,Z.The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_standard_function_or_method)),Uo(Q).flags|=512;Q&&fd(Q);)Q=Wb(Q),Q&&(Uo(Q).flags|=512);return}let E=H1(C),D=JOt(E,l);OB(D)&&T3t(l,D)&&D.declarations&&MG(l,D.declarations,l.escapedText);let W=E.valueDeclaration;if(W&&E.flags&32&&Sa(W)&&W.name!==l){let Q=r0(l,!1,!1);for(;Q.kind!==307&&Q.parent!==W;)Q=r0(Q,!1,!1);Q.kind!==307&&(Uo(W).flags|=262144,Uo(Q).flags|=262144,Uo(l).flags|=536870912)}Cfs(l,C)}function dfs(l,C){if(oV(l))return iLe(l);let E=vy(l);if(E===en)return cr;if(oJr(l,E),E===jt)return qPt(l)?cr:lo(E);aJr(l)&&M7(l,1);let D=H1(E),W=D.valueDeclaration,Q=Afs(D,l,C),se=Nx(l);if(se){if(!(D.flags&3)&&!(so(l)&&D.flags&512)){let Wo=D.flags&384?Z.Cannot_assign_to_0_because_it_is_an_enum:D.flags&32?Z.Cannot_assign_to_0_because_it_is_a_class:D.flags&1536?Z.Cannot_assign_to_0_because_it_is_a_namespace:D.flags&16?Z.Cannot_assign_to_0_because_it_is_a_function:D.flags&2097152?Z.Cannot_assign_to_0_because_it_is_an_import:Z.Cannot_assign_to_0_because_it_is_not_a_variable;return fr(l,Wo,qc(E)),cr}if(ST(D))return D.flags&3?fr(l,Z.Cannot_assign_to_0_because_it_is_a_constant,qc(E)):fr(l,Z.Cannot_assign_to_0_because_it_is_a_read_only_property,qc(E)),cr}let Ee=D.flags&2097152;if(D.flags&3){if(se===1)return Cce(l)?oF(Q):Q}else if(Ee)W=YE(E);else return Q;if(!W)return Q;Q=TPt(Q,l,C);let Ve=WS(W).kind===169,Oe=fye(W),ot=fye(l),Wt=ot!==Oe,Nt=l.parent&&l.parent.parent&&Mx(l.parent)&&BPt(l.parent.parent),Mr=E.flags&134217728,ln=Q===_r||Q===Hd,hn=ln&&l.parent.kind===235;for(;ot!==Oe&&(ot.kind===218||ot.kind===219||J$(ot))&&(O7(D)&&Q!==Hd||Iye(D)&&X4r(D,l));)ot=fye(ot);let mi=Ve||Ee||Wt||Nt||Mr||pfs(l,W)||Q!==_r&&Q!==Hd&&(!nt||(Q.flags&16387)!==0||ZQ(l)||mPt(l)||l.parent.kind===281)||l.parent.kind===235||W.kind===260&&W.exclamationToken||W.flags&33554432,Ti=hn?wn:mi?Ve?cfs(Q,W):Q:ln?wn:tW(Q),ks=hn?aF(uF(l,Q,Ti,ot)):uF(l,Q,Ti,ot);if(!Y4r(l)&&(Q===_r||Q===Hd)){if(ks===_r||ks===Hd)return dt&&(fr(vl(W),Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined,qc(E),Xs(ks)),fr(l,Z.Variable_0_implicitly_has_an_1_type,qc(E),Xs(ks))),xye(ks)}else if(!mi&&!Fre(Q)&&Fre(ks))return fr(l,Z.Variable_0_is_used_before_being_assigned,qc(E)),Q;return se?oF(ks):ks}function pfs(l,C){if(ml(C)){let E=Si(l,ml);return E&&WS(E)===WS(C)}}function aJr(l){var C;let E=l.parent;if(E){if(Io(E)&&E.expression===l||c0(E)&&E.isTypeOnly)return!1;let D=(C=E.parent)==null?void 0:C.parent;if(D&&mC(D)&&D.isTypeOnly)return!1}return!0}function ffs(l,C){return!!Si(l,E=>E===C?"quit":$l(E)||E.parent&&Ql(E.parent)&&!IC(E.parent)&&E.parent.initializer===E)}function Ifs(l,C){return Si(l,E=>E===C?"quit":E===C.initializer||E===C.condition||E===C.incrementor||E===C.statement)}function RPt(l){return Si(l,C=>!C||Eme(C)?"quit":MR(C,!1))}function Cfs(l,C){if(Qe>=2||!(C.flags&34)||!C.valueDeclaration||Gc(C.valueDeclaration)||C.valueDeclaration.parent.kind===299)return;let E=S2(C.valueDeclaration),D=ffs(l,E),W=RPt(E);if(W){if(D){let Q=!0;if(kB(E)){let se=CG(C.valueDeclaration,261);if(se&&se.parent===E){let Ee=Ifs(l.parent,E);if(Ee){let Ve=Uo(Ee);Ve.flags|=8192;let Oe=Ve.capturedBlockScopeBindings||(Ve.capturedBlockScopeBindings=[]);pa(Oe,C),Ee===E.initializer&&(Q=!1)}}}Q&&(Uo(W).flags|=4096)}if(kB(E)){let Q=CG(C.valueDeclaration,261);Q&&Q.parent===E&&hfs(l,E)&&(Uo(C.valueDeclaration).flags|=65536)}Uo(C.valueDeclaration).flags|=32768}D&&(Uo(C.valueDeclaration).flags|=16384)}function mfs(l,C){let E=Uo(l);return!!E&&Ue(E.capturedBlockScopeBindings,Mo(C))}function hfs(l,C){let E=l;for(;E.parent.kind===217;)E=E.parent;let D=!1;if(Rx(E))D=!0;else if(E.parent.kind===224||E.parent.kind===225){let W=E.parent;D=W.operator===46||W.operator===47}return D?!!Si(E,W=>W===C?"quit":W===C.statement):!1}function DPt(l,C){if(Uo(l).flags|=2,C.kind===172||C.kind===176){let E=C.parent;Uo(E).flags|=4}else Uo(C).flags|=4}function cJr(l){return Nf(l)?l:$l(l)?void 0:mu(l,cJr)}function xPt(l){let C=Mo(l),E=xp(C);return is(E)===Re}function lJr(l,C,E){let D=C.parent;rV(D)&&!xPt(D)&&gee(l)&&l.flowNode&&!cet(l.flowNode,!1)&&fr(l,E)}function _fs(l,C){Ql(C)&&IC(C)&<&&C.initializer&&_2(C.initializer,l.pos)&&FE(C.parent)&&fr(l,Z.Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class)}function iLe(l){let C=ZQ(l),E=r0(l,!0,!0),D=!1,W=!1;for(E.kind===176&&lJr(l,E,Z.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class);;){if(E.kind===219&&(E=r0(E,!1,!W),D=!0),E.kind===167){E=r0(E,!D,!1),W=!0;continue}break}if(_fs(l,E),W)fr(l,Z.this_cannot_be_referenced_in_a_computed_property_name);else switch(E.kind){case 267:fr(l,Z.this_cannot_be_referenced_in_a_module_or_namespace_body);break;case 266:fr(l,Z.this_cannot_be_referenced_in_current_location);break}!C&&D&&Qe<2&&DPt(l,E);let Q=kPt(l,!0,E);if(wt){let se=lo(Dr);if(Q===se&&D)fr(l,Z.The_containing_arrow_function_captures_the_global_value_of_this);else if(!Q){let Ee=fr(l,Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation);if(!Gc(E)){let Ve=kPt(E);Ve&&Ve!==se&&eg(Ee,Us(E,Z.An_outer_value_of_this_is_shadowed_by_this_container))}}}return Q||Qt}function kPt(l,C=!0,E=r0(l,!1,!1)){let D=so(l);if($l(E)&&(!FPt(l)||iV(E))){let W=xWt(E)||D&&Efs(E);if(!W){let Q=bfs(E);if(D&&Q){let se=Rl(Q).symbol;se&&se.members&&se.flags&16&&(W=xp(se).thisType)}else qN(E)&&(W=xp(GA(E.symbol)).thisType);W||(W=dJr(E))}if(W)return uF(l,W)}if(Sa(E.parent)){let W=Mo(E.parent),Q=$u(E)?lo(W):xp(W).thisType;return uF(l,Q)}if(Gc(E))if(E.commonJsModuleIndicator){let W=Mo(E);return W&&lo(W)}else{if(E.externalModuleIndicator)return wn;if(C)return lo(Dr)}}function yfs(l){let C=r0(l,!1,!1);if($l(C)){let E=tB(C);if(E.thisParameter)return oet(E.thisParameter)}if(Sa(C.parent)){let E=Mo(C.parent);return $u(C)?lo(E):xp(E).thisType}}function bfs(l){if(l.kind===218&&no(l.parent)&&CI(l.parent)===3)return l.parent.left.expression.expression;if(l.kind===174&&l.parent.kind===210&&no(l.parent.parent)&&CI(l.parent.parent)===6)return l.parent.parent.left.expression;if(l.kind===218&&l.parent.kind===303&&l.parent.parent.kind===210&&no(l.parent.parent.parent)&&CI(l.parent.parent.parent)===6)return l.parent.parent.parent.left.expression;if(l.kind===218&&KC(l.parent)&&sr(l.parent.name)&&(l.parent.name.escapedText==="value"||l.parent.name.escapedText==="get"||l.parent.name.escapedText==="set")&&tu(l.parent.parent)&&cu(l.parent.parent.parent)&&l.parent.parent.parent.arguments[2]===l.parent.parent&&CI(l.parent.parent.parent)===9)return l.parent.parent.parent.arguments[0].expression;if(cI(l)&&sr(l.name)&&(l.name.escapedText==="value"||l.name.escapedText==="get"||l.name.escapedText==="set")&&tu(l.parent)&&cu(l.parent.parent)&&l.parent.parent.arguments[2]===l.parent&&CI(l.parent.parent)===9)return l.parent.parent.arguments[0].expression}function Efs(l){let C=hx(l);if(C&&C.typeExpression)return Lc(C.typeExpression);let E=ige(l);if(E)return UP(E)}function Bfs(l,C){return!!Si(l,E=>dd(E)?"quit":E.kind===169&&E.parent===C)}function det(l){let C=l.parent.kind===213&&l.parent.expression===l,E=k8(l,!0),D=E,W=!1,Q=!1;if(!C){for(;D&&D.kind===219;)ba(D,1024)&&(Q=!0),D=k8(D,!0),W=Qe<2;D&&ba(D,1024)&&(Q=!0)}let se=0;if(!D||!ot(D)){let Wt=Si(l,Nt=>Nt===D?"quit":Nt.kind===167);return Wt&&Wt.kind===167?fr(l,Z.super_cannot_be_referenced_in_a_computed_property_name):C?fr(l,Z.Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors):!D||!D.parent||!(Sa(D.parent)||D.parent.kind===210)?fr(l,Z.super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions):fr(l,Z.super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class),cr}if(!C&&E.kind===176&&lJr(l,D,Z.super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class),$u(D)||C?(se=32,!C&&Qe>=2&&Qe<=8&&(Ql(D)||$p(D))&&H$(l.parent,Wt=>{(!Gc(Wt)||ia(Wt))&&(Uo(Wt).flags|=2097152)})):se=16,Uo(l).flags|=se,D.kind===174&&Q&&(M0(l.parent)&&Rx(l.parent)?Uo(D).flags|=256:Uo(D).flags|=128),W&&DPt(l.parent,D),D.parent.kind===210)return Qe<2?(fr(l,Z.super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher),cr):Qt;let Ee=D.parent;if(!rV(Ee))return fr(l,Z.super_can_only_be_referenced_in_a_derived_class),cr;if(xPt(Ee))return C?cr:Re;let Ve=xp(Mo(Ee)),Oe=Ve&&wa(Ve)[0];if(!Oe)return cr;if(D.kind===176&&Bfs(l,D))return fr(l,Z.super_cannot_be_referenced_in_constructor_arguments),cr;return se===32?is(Ve):JE(Oe,Ve.thisType);function ot(Wt){return C?Wt.kind===176:Sa(Wt.parent)||Wt.parent.kind===210?$u(Wt)?Wt.kind===174||Wt.kind===173||Wt.kind===177||Wt.kind===178||Wt.kind===172||Wt.kind===175:Wt.kind===174||Wt.kind===173||Wt.kind===177||Wt.kind===178||Wt.kind===172||Wt.kind===171||Wt.kind===176:!1}}function uJr(l){return(l.kind===174||l.kind===177||l.kind===178)&&l.parent.kind===210?l.parent:l.kind===218&&l.parent.kind===303?l.parent.parent:void 0}function gJr(l){return sa(l)&4&&l.target===bm?of(l)[0]:void 0}function vfs(l){return Of(l,C=>C.flags&2097152?X(C.types,gJr):gJr(C))}function AJr(l,C){let E=l,D=C;for(;D;){let W=vfs(D);if(W)return W;if(E.parent.kind!==303)break;E=E.parent.parent,D=nO(E,void 0)}}function dJr(l){if(l.kind===219)return;if(Z$e(l)){let E=mye(l);if(E){let D=E.thisParameter;if(D)return lo(D)}}let C=so(l);if(wt||C){let E=uJr(l);if(E){let W=nO(E,void 0),Q=AJr(E,W);return Q?al(Q,lPt(eH(E))):$b(W?aF(W):iC(E))}let D=KR(l.parent);if(fm(D)){let W=D.left;if(Cp(W)){let{expression:Q}=W;if(C&&sr(Q)){let se=ls(D);if(se.commonJsModuleIndicator&&vy(Q)===se.symbol)return}return $b(iC(Q))}}}}function pJr(l){let C=l.parent;if(!Z$e(C))return;let E=z9(C);if(E&&E.arguments){let W=Ret(E),Q=C.parameters.indexOf(l);if(l.dotDotDotToken)return oOt(W,Q,W.length,Qt,void 0,0);let se=Uo(E),Ee=se.resolvedSignature;se.resolvedSignature=yt;let Ve=Q0)return j(E.name,!0,!1)}}function Nfs(l,C){let E=Wb(l);if(E){let D=pet(E,C);if(D){let W=YI(E);if(W&1){let Q=(W&2)!==0;D.flags&1048576&&(D=VC(D,Ee=>!!nH(1,Ee,Q)));let se=nH(1,D,(W&2)!==0);if(!se)return;D=se}if(W&2){let Q=Of(D,fL);return Q&&Ta([Q,NUr(Q)])}return D}}}function Rfs(l,C){let E=Sy(l,C);if(E){let D=fL(E);return D&&Ta([D,NUr(D)])}}function Dfs(l,C){let E=Wb(l);if(E){let D=YI(E),W=pet(E,C);if(W){let Q=(D&2)!==0;if(!l.asteriskToken&&W.flags&1048576&&(W=VC(W,se=>!!nH(1,se,Q))),l.asteriskToken){let se=HOt(W,Q),Ee=se?.yieldType??ko,Ve=Sy(l,C)??ko,Oe=se?.nextType??Kr,ot=Fet(Ee,Ve,Oe,!1);if(Q){let Wt=Fet(Ee,Ve,Oe,!0);return Ta([ot,Wt])}return ot}return nH(0,W,Q)}}}function FPt(l){let C=!1;for(;l.parent&&!$l(l.parent);){if(Jc(l.parent)&&(C||l.parent.initializer===l))return!0;ml(l.parent)&&l.parent.initializer===l&&(C=!0),l=l.parent}return!1}function fJr(l,C){let E=!!(YI(C)&2),D=pet(C,void 0);if(D)return nH(l,D,E)||void 0}function pet(l,C){let E=Nre(l);if(E)return E;let D=PPt(l);if(D&&!I$e(D)){let Q=Sd(D),se=YI(l);return se&1?VC(Q,Ee=>!!(Ee.flags&58998787)||TOt(Ee,se,void 0)):se&2?VC(Q,Ee=>!!(Ee.flags&58998787)||!!hge(Ee)):Q}let W=z9(l);if(W)return Sy(W,C)}function IJr(l,C){let D=Ret(l).indexOf(C);return D===-1?void 0:ZPt(l,D)}function ZPt(l,C){if(pC(l))return C===0?Jt:C===1?K5r(!1):Qt;let E=Uo(l).resolvedSignature===gr?gr:Mre(l);if(Jm(l)&&C===0)return met(E,l);let D=E.parameters.length-1;return u0(E)&&C>=D?zb(lo(E.parameters[D]),dw(C-D),256):vT(E,C)}function xfs(l){let C=hOt(l);return C?U4(C):void 0}function kfs(l,C){if(l.parent.kind===215)return IJr(l.parent,C)}function Gfs(l,C){let E=l.parent,{left:D,operatorToken:W,right:Q}=E;switch(W.kind){case 64:case 77:case 76:case 78:return l===Q?Zfs(E):void 0;case 57:case 61:let se=Sy(E,C);return l===Q&&(se&&se.pattern||!se&&!MRe(E))?l_(D):se;case 56:case 28:return l===Q?Sy(E,C):void 0;default:return}}function Ffs(l){if(B2(l)&&l.symbol)return l.symbol;if(sr(l))return vy(l);if(Io(l)){let E=l_(l.expression);return kc(l.name)?C(E,l.name):_g(E,l.name.escapedText)}if(hA(l)){let E=iC(l.argumentExpression);if(!x2(E))return;let D=l_(l.expression);return _g(D,k2(E))}return;function C(E,D){let W=gLe(D.escapedText,D);return W&&vet(E,W)}}function Zfs(l){var C,E;let D=CI(l);switch(D){case 0:case 4:let W=Ffs(l.left),Q=W&&W.valueDeclaration;if(Q&&(Ql(Q)||n_(Q))){let Ve=fC(Q);return Ve&&al(Lc(Ve),ol(W).mapper)||(Ql(Q)?Q.initializer&&l_(l.left):void 0)}return D===0?l_(l.left):CJr(l);case 5:if(fet(l,D))return CJr(l);if(!B2(l.left)||!l.left.symbol)return l_(l.left);{let Ve=l.left.symbol.valueDeclaration;if(!Ve)return;let Oe=ps(l.left,Cp),ot=fC(Ve);if(ot)return Lc(ot);if(sr(Oe.expression)){let Wt=Oe.expression,Nt=Pi(Wt,Wt.escapedText,111551,void 0,!0);if(Nt){let Mr=Nt.valueDeclaration&&fC(Nt.valueDeclaration);if(Mr){let ln=UR(Oe);if(ln!==void 0)return rO(Lc(Mr),ln)}return}}return so(Ve)||Ve===l.left?void 0:l_(l.left)}case 1:case 6:case 3:case 2:let se;D!==2&&(se=B2(l.left)?(C=l.left.symbol)==null?void 0:C.valueDeclaration:void 0),se||(se=(E=l.symbol)==null?void 0:E.valueDeclaration);let Ee=se&&fC(se);return Ee?Lc(Ee):void 0;case 7:case 8:case 9:return w.fail("Does not apply");default:return w.assertNever(D)}}function fet(l,C=CI(l)){if(C===4)return!0;if(!so(l)||C!==5||!sr(l.left.expression))return!1;let E=l.left.expression.escapedText,D=Pi(l.left,E,111551,void 0,!0,!0);return cce(D?.valueDeclaration)}function CJr(l){if(!l.symbol)return l_(l.left);if(l.symbol.valueDeclaration){let W=fC(l.symbol.valueDeclaration);if(W){let Q=Lc(W);if(Q)return Q}}let C=ps(l.left,Cp);if(!TB(r0(C.expression,!1,!1)))return;let E=iLe(C.expression),D=UR(C);return D!==void 0&&rO(E,D)||void 0}function Lfs(l){return!!(aI(l)&262144&&!l.links.type&&bre(l,0)>=0)}function rO(l,C,E){return Of(l,D=>{var W;if(jb(D)&&!D.declaration.nameType){let Q=eB(D),se=a_(Q)||Q,Ee=E||pb(Sc(C));if(yg(Ee,se))return w$e(D,Ee)}else if(D.flags&3670016){let Q=_g(D,C);if(Q)return Lfs(Q)?void 0:cF(lo(Q),!!(Q.flags&16777216));if(aA(D)&&yN(C)&&+C>=0){let se=uge(D,D.target.fixedLength,0,!1,!0);if(se)return se}return(W=zWt(qWt(D),E||pb(Sc(C))))==null?void 0:W.type}},!0)}function mJr(l,C){if(w.assert(TB(l)),!(l.flags&67108864))return LPt(l,C)}function LPt(l,C){let E=l.parent,D=KC(l)&&GPt(l,C);if(D)return D;let W=nO(E,C);if(W){if(wre(l)){let Q=Mo(l);return rO(W,Q.escapedName,ol(Q).nameType)}if(jR(l)){let Q=vl(l);if(Q&&xg(Q)){let se=Rl(Q.expression),Ee=x2(se)&&rO(W,k2(se));if(Ee)return Ee}}if(l.name){let Q=AL(l.name);return Of(W,se=>{var Ee;return(Ee=zWt(qWt(se),Q))==null?void 0:Ee.type},!0)}}}function Vfs(l){let C,E;for(let D=0;D{if(aA(Q)){if((D===void 0||CW)?E-C:0,Ee=se>0&&Q.target.hasRestElement?$0e(Q.target,3):0;return se>0&&se<=Ee?of(Q)[uL(Q)-se]:uge(Q,D===void 0?Q.target.fixedLength:Math.min(Q.target.fixedLength,D),E===void 0||W===void 0?Ee:Math.min(Ee,E-W),!1,!0)}return(!D||CpL(Ve)?zb(Ve,dw(se)):Ve,!0))}function Ofs(l,C){let E=l.parent;return C8(E)?Sy(l,C):Ox(E)?Pfs(E,l,C):void 0}function hJr(l,C){if(NN(l)){let E=nO(l.parent,C);return!E||vd(E)?void 0:rO(E,B6(l.name))}else return Sy(l.parent,C)}function sLe(l){switch(l.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 sLe(l.expression);case 294:return!l.expression||sLe(l.expression)}return!1}function Mfs(l,C){let E=`D${sd(l)},${Gh(C)}`;return vP(E)??KZ(E,xps(C,l)??J3t(C,vi(Ot(Gt(l.properties,D=>D.symbol?D.kind===303?sLe(D.initializer)&&gge(C,D.symbol.escapedName):D.kind===304?gge(C,D.symbol.escapedName):!1:!1),D=>[()=>SLe(D.kind===303?D.initializer:D.name),D.symbol.escapedName]),Ot(Gt(Id(C),D=>{var W;return!!(D.flags&16777216)&&!!((W=l?.symbol)!=null&&W.members)&&!l.symbol.members.has(D.escapedName)&&gge(C,D.escapedName)}),D=>[()=>wn,D.escapedName])),yg))}function Qfs(l,C){let E=`D${sd(l)},${Gh(C)}`,D=vP(E);if(D)return D;let W=cLe(aJ(l));return KZ(E,J3t(C,vi(Ot(Gt(l.properties,Q=>!!Q.symbol&&Q.kind===291&&gge(C,Q.symbol.escapedName)&&(!Q.initializer||sLe(Q.initializer))),Q=>[Q.initializer?()=>SLe(Q.initializer):()=>Mn,Q.symbol.escapedName]),Ot(Gt(Id(C),Q=>{var se;if(!(Q.flags&16777216)||!((se=l?.symbol)!=null&&se.members))return!1;let Ee=l.parent.parent;return Q.escapedName===W&&Ox(Ee)&&YX(Ee.children).length?!1:!l.symbol.members.has(Q.escapedName)&&gge(C,Q.escapedName)}),Q=>[()=>wn,Q.escapedName])),yg))}function nO(l,C){let E=TB(l)?mJr(l,C):Sy(l,C),D=Iet(E,l,C);if(D&&!(C&&C&2&&D.flags&8650752)){let W=Of(D,Q=>sa(Q)&32?Q:$0(Q),!0);return W.flags&1048576&&tu(l)?Mfs(l,W):W.flags&1048576&&AY(l)?Qfs(l,W):W}}function Iet(l,C,E){if(l&&UI(l,465829888)){let D=eH(C);if(D&&E&1&&lr(D.inferences,Rms))return Cet(l,D.nonFixingMapper);if(D?.returnMapper){let W=Cet(l,D.returnMapper);return W.flags&1048576&&gL(W.types,On)&&gL(W.types,Ii)?VC(W,Q=>Q!==On&&Q!==Ii):W}}return l}function Cet(l,C){return l.flags&465829888?al(l,C):l.flags&1048576?Ta(Ot(l.types,E=>Cet(E,C)),0):l.flags&2097152?Pg(Ot(l.types,E=>Cet(E,C))):l}function Sy(l,C){var E;if(l.flags&67108864)return;let D=yJr(l,!C);if(D>=0)return Pv[D];let{parent:W}=l;switch(W.kind){case 260:case 169:case 172:case 171:case 208:return Tfs(l,C);case 219:case 253:return Nfs(l,C);case 229:return Dfs(W,C);case 223:return Rfs(W,C);case 213:case 214:return IJr(W,l);case 170:return xfs(W);case 216:case 234:return E2(W.type)?Sy(W,C):Lc(W.type);case 226:return Gfs(l,C);case 303:case 304:return LPt(W,C);case 305:return Sy(W.parent,C);case 209:{let Q=W,se=nO(Q,C),Ee=L3(Q.elements,l),Ve=(E=Uo(Q)).spreadIndices??(E.spreadIndices=Vfs(Q.elements));return VPt(se,Ee,Q.elements.length,Ve.first,Ve.last)}case 227:return Wfs(l,C);case 239:return w.assert(W.parent.kind===228),kfs(W.parent,l);case 217:{if(so(W)){if(_he(W))return Lc(yhe(W));let Q=_x(W);if(Q&&!E2(Q.typeExpression.type))return Lc(Q.typeExpression.type)}return Sy(W,C)}case 235:return Sy(W,C);case 238:return Lc(W.type);case 277:return io(W);case 294:return Ofs(W,C);case 291:case 293:return hJr(W,C);case 286:case 285:return Jfs(W,C);case 301:return Xfs(W)}}function _Jr(l){oLe(l,Sy(l,void 0),!0)}function oLe(l,C,E){kV[pT]=l,Pv[pT]=C,_P[pT]=E,pT++}function Cye(){pT--}function yJr(l,C){for(let E=pT-1;E>=0;E--)if(l===kV[E]&&(C||!_P[E]))return E;return-1}function Yfs(l,C){U2[rr]=l,PG[rr]=C,rr++}function Hfs(){rr--}function eH(l){for(let C=rr-1;C>=0;C--)if(tV(l,U2[C]))return PG[C]}function Xfs(l){return rO(p3t(!1),Cle(l))}function Jfs(l,C){if(TN(l)&&C!==4){let E=yJr(l.parent,!C);if(E>=0)return Pv[E]}return ZPt(l,0)}function met(l,C){return iUr(C)!==0?Ufs(l,C):zfs(l,C)}function Ufs(l,C){let E=COt(l,Kr);E=bJr(C,aJ(C),E);let D=tH(Z2.IntrinsicAttributes,C);return OA(D)||(E=hZe(D,E)),E}function Kfs(l,C){if(l.compositeSignatures){let D=[];for(let W of l.compositeSignatures){let Q=Sd(W);if(vd(Q))return Q;let se=ZI(Q,C);if(!se)return;D.push(se)}return Pg(D)}let E=Sd(l);return vd(E)?E:ZI(E,C)}function jfs(l){if(Q7(l.tagName)){let E=DJr(l),D=Det(l,E);return U4(D)}let C=iC(l.tagName);if(C.flags&128){let E=RJr(C,l);if(!E)return cr;let D=Det(l,E);return U4(D)}return C}function bJr(l,C,E){let D=hIs(C);if(D){let W=jfs(l),Q=GJr(D,so(l),W,E);if(Q)return Q}return E}function zfs(l,C){let E=aJ(C),D=yIs(E),W=D===void 0?COt(l,Kr):D===""?Sd(l):Kfs(l,D);if(!W)return D&&O(C.attributes.properties)&&fr(C,Z.JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property,Sc(D)),Kr;if(W=bJr(C,E,W),vd(W))return W;{let Q=W,se=tH(Z2.IntrinsicClassAttributes,C);if(!OA(se)){let Ve=aL(se.symbol),Oe=Sd(l),ot;if(Ve){let Wt=UV([Oe],Ve,XN(Ve),so(C));ot=al(se,qb(Ve,Wt))}else ot=se;Q=hZe(ot,Q)}let Ee=tH(Z2.IntrinsicAttributes,C);return OA(Ee)||(Q=hZe(Ee,Q)),Q}}function qfs(l){return D_(Ne,"noImplicitAny")?Td(l,(C,E)=>C===E||!C?C:A5r(C.typeParameters,E.typeParameters)?tIs(C,E):void 0):void 0}function $fs(l,C,E){if(!l||!C)return l||C;let D=Ta([lo(l),al(lo(C),E)]);return tJ(l,D)}function eIs(l,C,E){let D=tE(l),W=tE(C),Q=D>=W?l:C,se=Q===l?C:l,Ee=Q===l?D:W,Ve=bD(l)||bD(C),Oe=Ve&&!bD(Q),ot=new Array(Ee+(Oe?1:0));for(let Wt=0;Wt=$N(Q)&&Wt>=$N(se),Ti=Wt>=D?void 0:fge(l,Wt),ks=Wt>=W?void 0:fge(C,Wt),Wo=Ti===ks?Ti:Ti?ks?void 0:Ti:ks,Yi=SA(1|(mi&&!hn?16777216:0),Wo||`arg${Wt}`);Yi.links.type=hn?L_(ln):ln,ot[Wt]=Yi}if(Oe){let Wt=SA(1,"args");Wt.links.type=L_(vT(se,Ee)),se===C&&(Wt.links.type=al(Wt.links.type,E)),ot[Ee]=Wt}return ot}function tIs(l,C){let E=l.typeParameters||C.typeParameters,D;l.typeParameters&&C.typeParameters&&(D=qb(C.typeParameters,l.typeParameters));let W=l.declaration,Q=eIs(l,C,D),se=$fs(l.thisParameter,C.thisParameter,D),Ee=Math.max(l.minArgumentCount,C.minArgumentCount),Ve=qx(W,E,se,Q,void 0,void 0,Ee,(l.flags|C.flags)&167);return Ve.compositeKind=2097152,Ve.compositeSignatures=vi(l.compositeKind===2097152&&l.compositeSignatures||[l],[C]),D&&(Ve.mapper=l.compositeKind===2097152&&l.mapper&&l.compositeSignatures?qY(l.mapper,D):D),Ve}function WPt(l,C){let E=Pu(l,0),D=Gt(E,W=>!rIs(W,C));return D.length===1?D[0]:qfs(D)}function rIs(l,C){let E=0;for(;E{let se=I.getTokenEnd();if(D.category===3&&E&&se===E.start&&W===E.length){let Ee=HQ(C.fileName,C.text,se,W,D,Q);eg(E,Ee)}else(!E||se!==E.start)&&(E=Im(C,se,W,D,Q),UA.add(E))}),I.setText(C.text,l.pos,l.end-l.pos);try{return I.scan(),w.assert(I.reScanSlashToken(!0)===14,"Expected scanner to rescan RegularExpressionLiteral"),!!E}finally{I.setText(""),I.setOnError(void 0)}}return!1}function iIs(l){let C=Uo(l);return C.flags&1||(C.flags|=1,u(()=>nIs(l))),XI}function sIs(l,C){Qe<2&&Zm(l,Ne.downlevelIteration?1536:1024);let E=Rl(l.expression,C);return IL(33,E,wn,l.expression)}function oIs(l){return l.isSpread?zb(l.type,bt):l.type}function pge(l){return l.kind===208&&!!l.initializer||l.kind===226&&l.operatorToken.kind===64}function aIs(l){let C=KR(l.parent);return ph(C)&&BB(C.parent)}function EJr(l,C,E){let D=l.elements,W=D.length,Q=[],se=[];_Jr(l);let Ee=Rx(l),Ve=Cge(l),Oe=nO(l,void 0),ot=aIs(l)||!!Oe&&Kv(Oe,Nt=>lge(Nt)||jb(Nt)&&!Nt.nameType&&!!nye(Nt.target||Nt)),Wt=!1;for(let Nt=0;Ntse[Mr]&8?jV(Nt,bt)||Qt:Nt),2):nt?Yc:Pe,Ve))}function BJr(l){if(!(sa(l)&4))return l;let C=l.literalType;return C||(C=l.literalType=L5r(l),C.objectFlags|=147456),C}function cIs(l){switch(l.kind){case 167:return lIs(l);case 80:return yN(l.escapedText);case 9:case 11:return yN(l.text);default:return!1}}function lIs(l){return c_(KN(l),296)}function KN(l){let C=Uo(l.expression);if(!C.resolvedType){if((Se(l.parent.parent)||Sa(l.parent.parent)||HI(l.parent.parent))&&no(l.expression)&&l.expression.operatorToken.kind===103&&l.parent.kind!==177&&l.parent.kind!==178)return C.resolvedType=cr;if(C.resolvedType=Rl(l.expression),Ql(l.parent)&&!IC(l.parent)&&tp(l.parent.parent)){let E=S2(l.parent.parent),D=RPt(E);D&&(Uo(D).flags|=4096,Uo(l).flags|=32768,Uo(l.parent.parent).flags|=32768)}(C.resolvedType.flags&98304||!c_(C.resolvedType,402665900)&&!yg(C.resolvedType,ki))&&fr(l,Z.A_computed_property_name_must_be_of_type_string_number_symbol_or_any)}return C.resolvedType}function uIs(l){var C;let E=(C=l.declarations)==null?void 0:C[0];return yN(l.escapedName)||E&&Sf(E)&&cIs(E.name)}function vJr(l){var C;let E=(C=l.declarations)==null?void 0:C[0];return _ee(l)||E&&Sf(E)&&xg(E.name)&&c_(KN(E.name),4096)}function OPt(l,C,E,D){let W=[];for(let se=C;se0&&(Ee=KY(Ee,Cs(),l.symbol,hn,ot),se=[],Q=Du(),Ti=!1,ks=!1,Wo=!1);let ha=bT(Rl(Ds.expression,C&2));if(aLe(ha)){let Tg=G3t(ha,ot);if(W&&wJr(Tg,W,Ds),Yi=se.length,OA(Ee))continue;Ee=KY(Ee,Tg,l.symbol,hn,ot)}else fr(Ds,Z.Spread_types_may_only_be_created_from_object_types),Ee=cr;continue}else w.assert(Ds.kind===177||Ds.kind===178),Y7(Ds);ma&&!(ma.flags&8576)?yg(ma,ki)&&(yg(ma,bt)?ks=!0:yg(ma,Es)?Wo=!0:Ti=!0,D&&(mi=!0)):Q.set(zo.escapedName,zo),se.push(zo)}if(Cye(),Oe){let Ds=Si(Ve.pattern.parent,ma=>ma.kind===260||ma.kind===226||ma.kind===169);if(Si(l,ma=>ma===Ds||ma.kind===305).kind!==305)for(let ma of Id(Ve))!Q.get(ma.escapedName)&&!_g(Ee,ma.escapedName)&&(ma.flags&16777216||fr(ma.valueDeclaration||((E=eo(ma,vB))==null?void 0:E.links.bindingElement),Z.Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value),Q.set(ma.escapedName,ma),se.push(ma))}if(OA(Ee))return cr;if(Ee!==Zc)return se.length>0&&(Ee=KY(Ee,Cs(),l.symbol,hn,ot),se=[],Q=Du(),Ti=!1,ks=!1),Of(Ee,Ds=>Ds===Zc?Cs():Ds);return Cs();function Cs(){let Ds=[];Ti&&Ds.push(OPt(l,Yi,se,Jt)),ks&&Ds.push(OPt(l,Yi,se,bt)),Wo&&Ds.push(OPt(l,Yi,se,Es));let zo=qn(l.symbol,Q,v,v,Ds);return zo.objectFlags|=hn|128|131072,ln&&(zo.objectFlags|=4096),mi&&(zo.objectFlags|=512),D&&(zo.pattern=l),zo}}function aLe(l){let C=A4r(Of(l,mD));return!!(C.flags&126615553||C.flags&3145728&&he(C.types,aLe))}function AIs(l){YPt(l)}function dIs(l,C){return Y7(l),lLe(l)||Qt}function pIs(l){YPt(l.openingElement),Q7(l.closingElement.tagName)?yet(l.closingElement):Rl(l.closingElement.tagName),_et(l)}function fIs(l,C){return Y7(l),lLe(l)||Qt}function IIs(l){YPt(l.openingFragment);let C=ls(l);return Wee(Ne)&&(Ne.jsxFactory||C.pragmas.has("jsx"))&&!Ne.jsxFragmentFactory&&!C.pragmas.has("jsxfrag")&&fr(l,Ne.jsxFactory?Z.The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:Z.An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments),_et(l),lLe(l)||Qt}function MPt(l){return l.includes("-")}function Q7(l){return sr(l)&&HX(l.escapedText)||oT(l)}function SJr(l,C){return l.initializer?mge(l.initializer,C):Mn}function CIs(l,C=0){let E=l.attributes,D=Sy(E,0),W=nt?Du():void 0,Q=Du(),se=Km,Ee=!1,Ve,Oe=!1,ot=2048,Wt=cLe(aJ(l));for(let ln of E.properties){let hn=ln.symbol;if(NN(ln)){let mi=SJr(ln,C);ot|=sa(mi)&458752;let Ti=SA(4|hn.flags,hn.escapedName);if(Ti.declarations=hn.declarations,Ti.parent=hn.parent,hn.valueDeclaration&&(Ti.valueDeclaration=hn.valueDeclaration),Ti.links.type=mi,Ti.links.target=hn,Q.set(Ti.escapedName,Ti),W?.set(Ti.escapedName,Ti),B6(ln.name)===Wt&&(Oe=!0),D){let ks=_g(D,hn.escapedName);ks&&ks.declarations&&OB(ks)&&sr(ln.name)&&MG(ln.name,ks.declarations,ln.name.escapedText)}if(D&&C&2&&!(C&4)&&XB(ln)){let ks=eH(E);w.assert(ks);let Wo=ln.initializer.expression;aPt(ks,Wo,mi)}}else{w.assert(ln.kind===293),Q.size>0&&(se=KY(se,Mr(),E.symbol,ot,!1),Q=Du());let mi=bT(Rl(ln.expression,C&2));vd(mi)&&(Ee=!0),aLe(mi)?(se=KY(se,mi,E.symbol,ot,!1),W&&wJr(mi,W,ln)):(fr(ln.expression,Z.Spread_types_may_only_be_created_from_object_types),Ve=Ve?Pg([Ve,mi]):mi)}}Ee||Q.size>0&&(se=KY(se,Mr(),E.symbol,ot,!1));let Nt=l.parent.kind===284?l.parent:void 0;if(Nt&&Nt.openingElement===l&&YX(Nt.children).length>0){let ln=_et(Nt,C);if(!Ee&&Wt&&Wt!==""){Oe&&fr(E,Z._0_are_specified_twice_The_attribute_named_0_will_be_overwritten,Sc(Wt));let hn=nO(l.attributes,void 0),mi=hn&&rO(hn,Wt),Ti=SA(4,Wt);Ti.links.type=ln.length===1?ln[0]:mi&&Kv(mi,lge)?_D(ln):L_(Ta(ln)),Ti.valueDeclaration=_e.createPropertySignature(void 0,Sc(Wt),void 0,void 0),kA(Ti.valueDeclaration,E),Ti.valueDeclaration.symbol=Ti;let ks=Du();ks.set(Wt,Ti),se=KY(se,qn(E.symbol,ks,v,v,v),E.symbol,ot,!1)}}if(Ee)return Qt;if(Ve&&se!==Km)return Pg([Ve,se]);return Ve||(se===Km?Mr():se);function Mr(){ot|=8192;let ln=qn(E.symbol,Q,v,v,v);return ln.objectFlags|=ot|128|131072,ln}}function _et(l,C){let E=[];for(let D of l.children)if(D.kind===12)D.containsOnlyTriviaWhiteSpaces||E.push(Jt);else{if(D.kind===294&&!D.expression)continue;E.push(mge(D,C))}return E}function wJr(l,C,E){for(let D of Id(l))if(!(D.flags&16777216)){let W=C.get(D.escapedName);if(W){let Q=fr(W.valueDeclaration,Z._0_is_specified_more_than_once_so_this_usage_will_be_overwritten,Sc(W.escapedName));eg(Q,Us(E,Z.This_spread_always_overwrites_this_property))}}}function mIs(l,C){return CIs(l.parent,C)}function tH(l,C){let E=aJ(C),D=E&&Y1(E),W=D&&Z_(D,l,788968);return W?xp(W):cr}function yet(l){let C=Uo(l);if(!C.resolvedSymbol){let E=tH(Z2.IntrinsicElements,l);if(OA(E))return dt&&fr(l,Z.JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists,Sc(Z2.IntrinsicElements)),C.resolvedSymbol=en;{if(!sr(l.tagName)&&!oT(l.tagName))return w.fail();let D=oT(l.tagName)?D2(l.tagName):l.tagName.escapedText,W=_g(E,D);if(W)return C.jsxFlags|=1,C.resolvedSymbol=W;let Q=jKr(E,pb(Sc(D)));return Q?(C.jsxFlags|=2,C.resolvedSymbol=Q):que(E,D)?(C.jsxFlags|=2,C.resolvedSymbol=E.symbol):(fr(l,Z.Property_0_does_not_exist_on_type_1,bhe(l.tagName),"JSX."+Z2.IntrinsicElements),C.resolvedSymbol=en)}}return C.resolvedSymbol}function QPt(l){let C=l&&ls(l),E=C&&Uo(C);if(E&&E.jsxImplicitImportContainer===!1)return;if(E&&E.jsxImplicitImportContainer)return E.jsxImplicitImportContainer;let D=ele($ce(Ne,C),Ne);if(!D)return;let Q=s0(Ne)===1?Z.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:Z.Cannot_find_module_0_or_its_corresponding_type_declarations,se=jys(C,D),Ee=LY(se||l,D,Q,l),Ve=Ee&&Ee!==en?GA(JI(Ee)):void 0;return E&&(E.jsxImplicitImportContainer=Ve||!1),Ve}function aJ(l){let C=l&&Uo(l);if(C&&C.jsxNamespace)return C.jsxNamespace;if(!C||C.jsxNamespace!==!1){let D=QPt(l);if(!D||D===en){let W=SP(l);D=Pi(l,W,1920,void 0,!1)}if(D){let W=JI(Z_(Y1(JI(D)),Z2.JSX,1920));if(W&&W!==en)return C&&(C.jsxNamespace=W),W}C&&(C.jsxNamespace=!1)}let E=JI(kre(Z2.JSX,1920,void 0));if(E!==en)return E}function TJr(l,C){let E=C&&Z_(C.exports,l,788968),D=E&&xp(E),W=D&&Id(D);if(W){if(W.length===0)return"";if(W.length===1)return W[0].escapedName;W.length>1&&E.declarations&&fr(E.declarations[0],Z.The_global_type_JSX_0_may_not_have_more_than_one_property,Sc(l))}}function hIs(l){return l&&Z_(l.exports,Z2.LibraryManagedAttributes,788968)}function _Is(l){return l&&Z_(l.exports,Z2.ElementType,788968)}function yIs(l){return TJr(Z2.ElementAttributesPropertyNameContainer,l)}function cLe(l){return TJr(Z2.ElementChildrenAttributeNameContainer,l)}function NJr(l,C){if(l.flags&4)return[yt];if(l.flags&128){let W=RJr(l,C);return W?[Det(C,W)]:(fr(C,Z.Property_0_does_not_exist_on_type_1,l.value,"JSX."+Z2.IntrinsicElements),v)}let E=$0(l),D=Pu(E,1);return D.length===0&&(D=Pu(E,0)),D.length===0&&E.flags&1048576&&(D=PWt(Ot(E.types,W=>NJr(W,C)))),D}function RJr(l,C){let E=tH(Z2.IntrinsicElements,C);if(!OA(E)){let D=l.value,W=_g(E,Rd(D));if(W)return lo(W);let Q=JP(E,Jt);return Q||void 0}return Qt}function bIs(l,C,E){if(l===1){let W=kJr(E);W&&JB(C,W,Ab,E.tagName,Z.Its_return_type_0_is_not_a_valid_JSX_element,D)}else if(l===0){let W=xJr(E);W&&JB(C,W,Ab,E.tagName,Z.Its_instance_type_0_is_not_a_valid_JSX_element,D)}else{let W=kJr(E),Q=xJr(E);if(!W||!Q)return;let se=Ta([W,Q]);JB(C,se,Ab,E.tagName,Z.Its_element_type_0_is_not_a_valid_JSX_element,D)}function D(){let W=Tf(E.tagName);return su(void 0,Z._0_cannot_be_used_as_a_JSX_component,W)}}function DJr(l){var C;w.assert(Q7(l.tagName));let E=Uo(l);if(!E.resolvedJsxElementAttributesType){let D=yet(l);if(E.jsxFlags&1)return E.resolvedJsxElementAttributesType=lo(D)||cr;if(E.jsxFlags&2){let W=oT(l.tagName)?D2(l.tagName):l.tagName.escapedText;return E.resolvedJsxElementAttributesType=((C=D7(tH(Z2.IntrinsicElements,l),W))==null?void 0:C.type)||cr}else return E.resolvedJsxElementAttributesType=cr}return E.resolvedJsxElementAttributesType}function xJr(l){let C=tH(Z2.ElementClass,l);if(!OA(C))return C}function lLe(l){return tH(Z2.Element,l)}function kJr(l){let C=lLe(l);if(C)return Ta([C,ur])}function EIs(l){let C=aJ(l);if(!C)return;let E=_Is(C);if(!E)return;let D=GJr(E,so(l));if(!(!D||OA(D)))return D}function GJr(l,C,...E){let D=xp(l);if(l.flags&524288){let W=ol(l).typeParameters;if(O(W)>=E.length){let Q=UV(E,W,E.length,C);return O(Q)===0?D:Dre(l,Q)}}if(O(D.typeParameters)>=E.length){let W=UV(E,D.typeParameters,E.length,C);return lL(D,W)}}function BIs(l){let C=tH(Z2.IntrinsicElements,l);return C?Id(C):v}function vIs(l){(Ne.jsx||0)===0&&fr(l,Z.Cannot_use_JSX_unless_the_jsx_flag_is_provided),lLe(l)===void 0&&dt&&fr(l,Z.JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist)}function YPt(l){let C=Jm(l);if(C&&_ys(l),vIs(l),NPt(l),C){let E=l,D=Mre(E);ket(D,l);let W=EIs(E);if(W!==void 0){let Q=E.tagName,se=Q7(Q)?pb(bhe(Q)):Rl(Q);JB(se,W,Ab,Q,Z.Its_type_0_is_not_a_valid_JSX_element_type,()=>{let Ee=Tf(Q);return su(void 0,Z._0_cannot_be_used_as_a_JSX_component,Ee)})}else bIs(iUr(E),Sd(D),E)}}function bet(l,C,E){if(l.flags&524288&&(HY(l,C)||D7(l,C)||X0e(C)&&$x(l,Jt)||E&&MPt(C)))return!0;if(l.flags&33554432)return bet(l.baseType,C,E);if(l.flags&3145728&&hye(l)){for(let D of l.types)if(bet(D,C,E))return!0}return!1}function hye(l){return!!(l.flags&524288&&!(sa(l)&512)||l.flags&67108864||l.flags&33554432&&hye(l.baseType)||l.flags&1048576&&lr(l.types,hye)||l.flags&2097152&&he(l.types,hye))}function SIs(l,C){if(bys(l),l.expression){let E=Rl(l.expression,C);return l.dotDotDotToken&&E!==Qt&&!UB(E)&&fr(l,Z.JSX_spread_child_must_be_an_array_type),E}else return cr}function HPt(l){return l.valueDeclaration?sH(l.valueDeclaration):0}function XPt(l){if(l.flags&8192||aI(l)&4)return!0;if(so(l.valueDeclaration)){let C=l.valueDeclaration.parent;return C&&no(C)&&CI(C)===3}}function JPt(l,C,E,D,W,Q=!0){let se=Q?l.kind===166?l.right:l.kind===205?l:l.kind===208&&l.propertyName?l.propertyName:l.name:void 0;return FJr(l,C,E,D,W,se)}function FJr(l,C,E,D,W,Q){var se;let Ee=L1(W,E);if(C){if(Qe<2&&ZJr(W))return Q&&fr(Q,Z.Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword),!1;if(Ee&64)return Q&&fr(Q,Z.Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression,qc(W),Xs(W7(W))),!1;if(!(Ee&256)&&((se=W.declarations)!=null&&se.some(A8)))return Q&&fr(Q,Z.Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super,qc(W)),!1}if(Ee&64&&ZJr(W)&&(j$(l)||WRe(l)||Vg(l.parent)&&cce(l.parent.parent))){let Oe=DB(o_(W));if(Oe&&I0s(l))return Q&&fr(Q,Z.Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor,qc(W),T2(Oe.name)),!1}if(!(Ee&6))return!0;if(Ee&2){let Oe=DB(o_(W));return zOt(l,Oe)?!0:(Q&&fr(Q,Z.Property_0_is_private_and_only_accessible_within_class_1,qc(W),Xs(W7(W))),!1)}if(C)return!0;let Ve=UKr(l,Oe=>{let ot=xp(Mo(Oe));return t4r(ot,W,E)});return!Ve&&(Ve=wIs(l),Ve=Ve&&t4r(Ve,W,E),Ee&256||!Ve)?(Q&&fr(Q,Z.Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses,qc(W),Xs(W7(W)||D)),!1):Ee&256?!0:(D.flags&262144&&(D=D.isThisType?By(D):a_(D)),!D||!vre(D,Ve)?(Q&&fr(Q,Z.Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_class_2,qc(W),Xs(Ve),Xs(D)),!1):!0)}function wIs(l){let C=TIs(l),E=C?.type&&Lc(C.type);if(E&&E.flags&262144&&(E=By(E)),E&&sa(E)&7)return Bre(E)}function TIs(l){let C=r0(l,!1,!1);return C&&$l(C)?iV(C):void 0}function ZJr(l){return!!MZe(l,C=>!(C.flags&8192))}function Pre(l){return jN(Rl(l),l)}function uLe(l){return BT(l,50331648)}function UPt(l){return uLe(l)?aF(l):l}function NIs(l,C){let E=cp(l)?t0(l):void 0;if(l.kind===106){fr(l,Z.The_value_0_cannot_be_used_here,"null");return}if(E!==void 0&&E.length<100){if(sr(l)&&E==="undefined"){fr(l,Z.The_value_0_cannot_be_used_here,"undefined");return}fr(l,C&16777216?C&33554432?Z._0_is_possibly_null_or_undefined:Z._0_is_possibly_undefined:Z._0_is_possibly_null,E)}else fr(l,C&16777216?C&33554432?Z.Object_is_possibly_null_or_undefined:Z.Object_is_possibly_undefined:Z.Object_is_possibly_null)}function RIs(l,C){fr(l,C&16777216?C&33554432?Z.Cannot_invoke_an_object_which_is_possibly_null_or_undefined:Z.Cannot_invoke_an_object_which_is_possibly_undefined:Z.Cannot_invoke_an_object_which_is_possibly_null)}function LJr(l,C,E){if(nt&&l.flags&2){if(cp(C)){let W=t0(C);if(W.length<100)return fr(C,Z._0_is_of_type_unknown,W),cr}return fr(C,Z.Object_is_of_type_unknown),cr}let D=Zre(l,50331648);if(D&50331648){E(C,D);let W=aF(l);return W.flags&229376?cr:W}return l}function jN(l,C){return LJr(l,C,NIs)}function VJr(l,C){let E=jN(l,C);if(E.flags&16384){if(cp(C)){let D=t0(C);if(sr(C)&&D==="undefined")return fr(C,Z.The_value_0_cannot_be_used_here,D),E;if(D.length<100)return fr(C,Z._0_is_possibly_undefined,D),E}fr(C,Z.Object_is_possibly_undefined)}return E}function Eet(l,C,E){return l.flags&64?DIs(l,C):jPt(l,l.expression,Pre(l.expression),l.name,C,E)}function DIs(l,C){let E=Rl(l.expression),D=lye(E,l.expression);return K$e(jPt(l,l.expression,jN(D,l.expression),l.name,C),l,D!==E)}function WJr(l,C){let E=uce(l)&&_G(l.left)?jN(iLe(l.left),l.left):Pre(l.left);return jPt(l,l.left,E,l.right,C)}function KPt(l){for(;l.parent.kind===217;)l=l.parent;return BB(l.parent)&&l.parent.expression===l}function gLe(l,C){for(let E=oce(C);E;E=Um(E)){let{symbol:D}=E,W=hee(D,l),Q=D.members&&D.members.get(W)||D.exports&&D.exports.get(W);if(Q)return Q}}function xIs(l){if(!Um(l))return qi(l,Z.Private_identifiers_are_not_allowed_outside_class_bodies);if(!tD(l.parent)){if(!NB(l))return qi(l,Z.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);let C=no(l.parent)&&l.parent.operatorToken.kind===103;if(!Bet(l)&&!C)return qi(l,Z.Cannot_find_name_0,ao(l))}return!1}function kIs(l){xIs(l);let C=Bet(l);return C&&dLe(C,void 0,!1),Qt}function Bet(l){if(!NB(l))return;let C=Uo(l);return C.resolvedSymbol===void 0&&(C.resolvedSymbol=gLe(l.escapedText,l)),C.resolvedSymbol}function vet(l,C){return _g(l,C.escapedName)}function GIs(l,C,E){let D,W=Id(l);W&&X(W,se=>{let Ee=se.valueDeclaration;if(Ee&&Sf(Ee)&&kc(Ee.name)&&Ee.name.escapedText===C.escapedText)return D=se,!0});let Q=Q1(C);if(D){let se=w.checkDefined(D.valueDeclaration),Ee=w.checkDefined(Um(se));if(E?.valueDeclaration){let Ve=E.valueDeclaration,Oe=Um(Ve);if(w.assert(!!Oe),Si(Oe,ot=>Ee===ot)){let ot=fr(C,Z.The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling,Q,Xs(l));return eg(ot,Us(Ve,Z.The_shadowing_declaration_of_0_is_defined_here,Q),Us(se,Z.The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here,Q)),!0}}return fr(C,Z.Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier,Q,Q1(Ee.name||M8e)),!0}return!1}function PJr(l,C){return($2(C)||j$(l)&&mT(C))&&r0(l,!0,!1)===eF(C)}function jPt(l,C,E,D,W,Q){let se=Uo(C).resolvedSymbol,Ee=Nx(l),Ve=$0(Ee!==0||KPt(l)?$b(E):E),Oe=vd(Ve)||Ve===ko,ot;if(kc(D)){(Qe<9||Qe<99||!Le)&&(Ee!==0&&Zm(l,1048576),Ee!==1&&Zm(l,524288));let Nt=gLe(D.escapedText,D);if(Ee&&Nt&&Nt.valueDeclaration&&cI(Nt.valueDeclaration)&&qi(D,Z.Cannot_assign_to_private_method_0_Private_methods_are_not_writable,ao(D)),Oe){if(Nt)return OA(Ve)?cr:Ve;if(oce(D)===void 0)return qi(D,Z.Private_identifiers_are_not_allowed_outside_class_bodies),Qt}if(ot=Nt&&vet(E,Nt),ot===void 0){if(GIs(E,D,Nt))return cr;let Mr=oce(D);Mr&&bQ(ls(Mr),Ne.checkJs)&&qi(D,Z.Private_field_0_must_be_declared_in_an_enclosing_class,ao(D))}else ot.flags&65536&&!(ot.flags&32768)&&Ee!==1&&fr(l,Z.Private_accessor_was_defined_without_a_getter)}else{if(Oe)return sr(C)&&se&&M7(l,2,void 0,E),OA(Ve)?cr:Ve;ot=_g(Ve,D.escapedText,Let(Ve),l.kind===166)}M7(l,2,ot,E);let Wt;if(ot){let Nt=JOt(ot,D);if(OB(Nt)&&T3t(l,Nt)&&Nt.declarations&&MG(D,Nt.declarations,D.escapedText),FIs(ot,l,D),dLe(ot,l,UJr(C,se)),Uo(l).resolvedSymbol=ot,JPt(l,C.kind===108,OQ(l),Ve,ot),FUr(l,ot,Ee))return fr(D,Z.Cannot_assign_to_0_because_it_is_a_read_only_property,ao(D)),cr;Wt=PJr(l,ot)?_r:Q||Wce(l)?YP(ot):lo(ot)}else{let Nt=!kc(D)&&(Ee===0||!z4(E)||E6(E))?D7(Ve,D.escapedText):void 0;if(!(Nt&&Nt.type)){let Mr=zPt(l,E.symbol,!0);return!Mr&&eye(E)?Qt:E.symbol===Dr?(Dr.exports.has(D.escapedText)&&Dr.exports.get(D.escapedText).flags&418?fr(D,Z.Property_0_does_not_exist_on_type_1,Sc(D.escapedText),Xs(E)):dt&&fr(D,Z.Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature,Xs(E)),Qt):(D.escapedText&&!Dp(l)&&MJr(D,E6(E)?Ve:E,Mr),cr)}Nt.isReadonly&&(Rx(l)||Ime(l))&&fr(l,Z.Index_signature_in_type_0_only_permits_reading,Xs(Ve)),Wt=Nt.type,Ne.noUncheckedIndexedAccess&&Nx(l)!==1&&(Wt=Ta([Wt,ar])),Ne.noPropertyAccessFromIndexSignature&&Io(l)&&fr(D,Z.Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0,Sc(D.escapedText)),Nt.declaration&&VN(Nt.declaration)&&MG(D,[Nt.declaration],D.escapedText)}return OJr(l,ot,Wt,D,W)}function zPt(l,C,E){var D;let W=ls(l);if(W&&Ne.checkJs===void 0&&W.checkJsDirective===void 0&&(W.scriptKind===1||W.scriptKind===2)){let Q=X(C?.declarations,ls),se=!C?.valueDeclaration||!Sa(C.valueDeclaration)||((D=C.valueDeclaration.heritageClauses)==null?void 0:D.length)||Tx(!1,C.valueDeclaration);return!(W!==Q&&Q&&bs(Q))&&!(E&&C&&C.flags&32&&se)&&!(l&&E&&Io(l)&&l.expression.kind===110&&se)}return!1}function OJr(l,C,E,D,W){let Q=Nx(l);if(Q===1)return cF(E,!!(C&&C.flags&16777216));if(C&&!(C.flags&98311)&&!(C.flags&8192&&E.flags&1048576)&&!ett(C.declarations))return E;if(E===_r)return $ue(l,C);E=TPt(E,l,W);let se=!1;if(nt&&It&&Cp(l)&&l.expression.kind===110){let Ve=C&&C.valueDeclaration;if(Ve&&ZKr(Ve)&&!$u(Ve)){let Oe=fye(l);Oe.kind===176&&Oe.parent===Ve.parent&&!(Ve.flags&33554432)&&(se=!0)}}else nt&&C&&C.valueDeclaration&&Io(C.valueDeclaration)&&oee(C.valueDeclaration)&&fye(l)===fye(C.valueDeclaration)&&(se=!0);let Ee=uF(l,E,se?tW(E):E);return se&&!Fre(E)&&Fre(Ee)?(fr(D,Z.Property_0_is_used_before_being_assigned,qc(C)),E):Q?oF(Ee):Ee}function FIs(l,C,E){let{valueDeclaration:D}=l;if(!D||ls(C).isDeclarationFile)return;let W,Q=ao(E);qPt(C)&&!Igs(D)&&!(Cp(C)&&Cp(C.expression))&&!ow(D,E)&&!(cI(D)&&utt(D)&256)&&(Le||!ZIs(l))?W=fr(E,Z.Property_0_is_used_before_its_initialization,Q):D.kind===263&&C.parent.kind!==183&&!(D.flags&33554432)&&!ow(D,E)&&(W=fr(E,Z.Class_0_used_before_its_declaration,Q)),W&&eg(W,Us(D,Z._0_is_declared_here,Q))}function qPt(l){return!!Si(l,C=>{switch(C.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 mc(C.parent)&&$p(C.parent.parent)?!0:"quit";default:return NB(C)?!1:"quit"}})}function ZIs(l){if(!(l.parent.flags&32))return!1;let C=lo(l.parent);for(;;){if(C=C.symbol&&LIs(C),!C)return!1;let E=_g(C,l.escapedName);if(E&&E.valueDeclaration)return!0}}function LIs(l){let C=wa(l);if(C.length!==0)return Pg(C)}function MJr(l,C,E){let D,W;if(!kc(l)&&C.flags&1048576&&!(C.flags&402784252)){for(let se of C.types)if(!_g(se,l.escapedText)&&!D7(se,l.escapedText)){D=su(D,Z.Property_0_does_not_exist_on_type_1,xd(l),Xs(se));break}}if(QJr(l.escapedText,C)){let se=xd(l),Ee=Xs(C);D=su(D,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead,se,Ee,Ee+"."+se)}else{let se=wye(C);if(se&&_g(se,l.escapedText))D=su(D,Z.Property_0_does_not_exist_on_type_1,xd(l),Xs(C)),W=Us(l,Z.Did_you_forget_to_use_await);else{let Ee=xd(l),Ve=Xs(C),Oe=PIs(Ee,C);if(Oe!==void 0)D=su(D,Z.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,Ee,Ve,Oe);else{let ot=$Pt(l,C);if(ot!==void 0){let Wt=df(ot),Nt=E?Z.Property_0_may_not_exist_on_type_1_Did_you_mean_2:Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2;D=su(D,Nt,Ee,Ve,Wt),W=ot.valueDeclaration&&Us(ot.valueDeclaration,Z._0_is_declared_here,Wt)}else{let Wt=VIs(C)?Z.Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom:Z.Property_0_does_not_exist_on_type_1;D=su(KWt(D,C),Wt,Ee,Ve)}}}}let Q=GS(ls(l),l,D);W&&eg(Q,W),iw(!E||D.code!==Z.Property_0_may_not_exist_on_type_1_Did_you_mean_2.code,Q)}function VIs(l){return Ne.lib&&!Ne.lib.includes("dom")&&Jps(l,C=>C.symbol&&/^(EventTarget|Node|((HTML[a-zA-Z]*)?Element))$/.test(Sc(C.symbol.escapedName)))&&sF(l)}function QJr(l,C){let E=C.symbol&&_g(lo(C.symbol),l);return E!==void 0&&!!E.valueDeclaration&&$u(E.valueDeclaration)}function WIs(l){let C=Q1(l),D=v8().get(C);return D&&xl(D.keys())}function PIs(l,C){let E=$0(C).symbol;if(!E)return;let D=df(E),Q=v8().get(D);if(Q){for(let[se,Ee]of Q)if(Ue(Ee,l))return se}}function YJr(l,C){return ALe(l,Id(C),106500)}function $Pt(l,C){let E=Id(C);if(typeof l!="string"){let D=l.parent;Io(D)&&(E=Gt(E,W=>KJr(D,C,W))),l=ao(l)}return ALe(l,E,111551)}function HJr(l,C){let E=Xa(l)?l:ao(l),D=Id(C);return(E==="for"?be(D,Q=>df(Q)==="htmlFor"):E==="class"?be(D,Q=>df(Q)==="className"):void 0)??ALe(E,D,111551)}function XJr(l,C){let E=$Pt(l,C);return E&&df(E)}function OIs(l,C,E){let D=Z_(l,C,E);if(D)return D;let W;return l===kt?W=tr(["string","number","boolean","object","bigint","symbol"],se=>l.has(se.charAt(0).toUpperCase()+se.slice(1))?SA(524288,se):void 0).concat(on(l.values())):W=on(l.values()),ALe(Sc(C),W,E)}function JJr(l,C,E){return w.assert(C!==void 0,"outername should always be defined"),Ns(l,C,E,void 0,!1,!1)}function eOt(l,C){return C.exports&&ALe(ao(l),VY(C),2623475)}function MIs(l,C,E){function D(se){let Ee=HY(l,se);if(Ee){let Ve=lJ(lo(Ee));return!!Ve&&$N(Ve)>=1&&yg(E,vT(Ve,0))}return!1}let W=Rx(C)?"set":"get";if(!D(W))return;let Q=Dee(C.expression);return Q===void 0?Q=W:Q+="."+W,Q}function QIs(l,C){let E=C.types.filter(D=>!!(D.flags&128));return Nd(l.value,E,D=>D.value)}function ALe(l,C,E){return Nd(l,C,D);function D(W){let Q=df(W);if(!uc(Q,'"')){if(W.flags&E)return Q;if(W.flags&2097152){let se=KG(W);if(se&&se.flags&E)return Q}}}}function dLe(l,C,E){let D=l&&l.flags&106500&&l.valueDeclaration;if(!D)return;let W=nb(D,2),Q=l.valueDeclaration&&Sf(l.valueDeclaration)&&kc(l.valueDeclaration.name);if(!(!W&&!Q)&&!(C&&Wce(C)&&!(l.flags&65536))){if(E){let se=Si(C,dd);if(se&&se.symbol===l)return}(aI(l)&1?ol(l).target:l).isReferenced=-1}}function UJr(l,C){return l.kind===110||!!C&&cp(l)&&C===vy(ib(l))}function YIs(l,C){switch(l.kind){case 211:return tOt(l,l.expression.kind===108,C,$b(Rl(l.expression)));case 166:return tOt(l,!1,C,$b(Rl(l.left)));case 205:return tOt(l,!1,C,Lc(l))}}function KJr(l,C,E){return rOt(l,l.kind===211&&l.expression.kind===108,!1,C,E)}function tOt(l,C,E,D){if(vd(D))return!0;let W=_g(D,E);return!!W&&rOt(l,C,!1,D,W)}function rOt(l,C,E,D,W){if(vd(D))return!0;if(W.valueDeclaration&&Rh(W.valueDeclaration)){let Q=Um(W.valueDeclaration);return!km(l)&&!!Si(l,se=>se===Q)}return FJr(l,C,E,D,W)}function HIs(l){let C=l.initializer;if(C.kind===261){let E=C.declarations[0];if(E&&!pu(E.name))return Mo(E)}else if(C.kind===80)return vy(C)}function XIs(l){return ey(l).length===1&&!!$x(l,bt)}function JIs(l){let C=jA(l);if(C.kind===80){let E=vy(C);if(E.flags&3){let D=l,W=l.parent;for(;W;){if(W.kind===249&&D===W.statement&&HIs(W)===E&&XIs(l_(W.expression)))return!0;D=W,W=W.parent}}}return!1}function UIs(l,C){return l.flags&64?KIs(l,C):jJr(l,Pre(l.expression),C)}function KIs(l,C){let E=Rl(l.expression),D=lye(E,l.expression);return K$e(jJr(l,jN(D,l.expression),C),l,D!==E)}function jJr(l,C,E){let D=Nx(l)!==0||KPt(l)?$b(C):C,W=l.argumentExpression,Q=Rl(W);if(OA(D)||D===ko)return D;if(Let(D)&&!XA(W))return fr(W,Z.A_const_enum_member_can_only_be_accessed_using_a_string_literal),cr;let se=JIs(W)?bt:Q,Ee=Nx(l),Ve;Ee===0?Ve=32:(Ve=4|(z4(D)&&!E6(D)?2:0),Ee===2&&(Ve|=32));let Oe=jV(D,se,Ve,l)||cr;return rKr(OJr(l,Uo(l).resolvedSymbol,Oe,W,E),l)}function zJr(l){return BB(l)||V1(l)||Jm(l)}function cJ(l){return zJr(l)&&X(l.typeArguments,Ug),l.kind===215?Rl(l.template):Jm(l)?Rl(l.attributes):no(l)?Rl(l.left):BB(l)&&X(l.arguments,C=>{Rl(C)}),yt}function zN(l){return cJ(l),tt}function jIs(l,C,E){let D,W,Q=0,se,Ee=-1,Ve;w.assert(!C.length);for(let Oe of l){let ot=Oe.declaration&&Mo(Oe.declaration),Wt=Oe.declaration&&Oe.declaration.parent;!W||ot===W?D&&Wt===D?se=se+1:(D=Wt,se=Q):(se=Q=C.length,D=Wt),W=ot,U8e(Oe)?(Ee++,Ve=Ee,Q++):Ve=se,C.splice(Ve,0,E?Vus(Oe,E):Oe)}}function wet(l){return!!l&&(l.kind===230||l.kind===237&&l.isSpread)}function nOt(l){return ke(l,wet)}function qJr(l){return!!(l.flags&16384)}function zIs(l){return!!(l.flags&49155)}function Tet(l,C,E,D=!1){let W,Q=!1,se=tE(E),Ee=$N(E);if(l.kind===215)if(W=C.length,l.template.kind===228){let Ve=Na(l.template.templateSpans);Q=wf(Ve.literal)||!!Ve.literal.isUnterminated}else{let Ve=l.template;w.assert(Ve.kind===15),Q=!!Ve.isUnterminated}else if(l.kind===170)W=oUr(l,E);else if(l.kind===226)W=1;else if(Jm(l)){if(Q=l.attributes.end===l.end,Q)return!0;W=Ee===0?C.length:1,se=C.length===0?se:1,Ee=Math.min(Ee,1)}else if(l.arguments){W=D?C.length+1:C.length,Q=l.arguments.end===l.end;let Ve=nOt(C);if(Ve>=0)return Ve>=$N(E)&&(bD(E)||Vese)return!1;if(Q||W>=Ee)return!0;for(let Ve=W;Ve=D&&C.length<=E}function $Jr(l,C){let E;return!!(l.target&&(E=rH(l.target,C))&&F7(E))}function lJ(l){return _ye(l,0,!1)}function eUr(l){return _ye(l,0,!1)||_ye(l,1,!1)}function _ye(l,C,E){if(l.flags&524288){let D=yT(l);if(E||D.properties.length===0&&D.indexInfos.length===0){if(C===0&&D.callSignatures.length===1&&D.constructSignatures.length===0)return D.callSignatures[0];if(C===1&&D.constructSignatures.length===1&&D.callSignatures.length===0)return D.constructSignatures[0]}}}function tUr(l,C,E,D){let W=Aye(l.typeParameters,l,0,D),Q=yye(C),se=E&&(Q&&Q.flags&262144?E.nonFixingMapper:E.mapper),Ee=se?V7(C,se):C;return iPt(Ee,l,(Ve,Oe)=>{lF(W.inferences,Ve,Oe)}),E||sPt(C,l,(Ve,Oe)=>{lF(W.inferences,Ve,Oe,128)}),j0e(l,CPt(W),so(C.declaration))}function qIs(l,C,E,D){let W=met(C,l),Q=Qre(l.attributes,W,D,E);return lF(D.inferences,Q,W),CPt(D)}function rUr(l){if(!l)return oo;let C=Rl(l);return _De(l)?C:dQ(l.parent)?aF(C):km(l.parent)?U$e(C):C}function sOt(l,C,E,D,W){if(Jm(l))return qIs(l,C,D,W);if(l.kind!==170&&l.kind!==226){let Ve=he(C.typeParameters,ot=>!!J4(ot)),Oe=Sy(l,Ve?8:0);if(Oe){let ot=Sd(C);if(rW(ot)){let Wt=eH(l);if(!(!Ve&&Sy(l,8)!==Oe)){let hn=lPt(aps(Wt,1)),mi=al(Oe,hn),Ti=lJ(mi),ks=Ti&&Ti.typeParameters?U4(i3t(Ti,Ti.typeParameters)):mi;lF(W.inferences,ks,ot,128)}let Mr=Aye(C.typeParameters,C,W.flags),ln=al(Oe,Wt&&Wt.returnMapper);lF(Mr.inferences,ln,ot),W.returnMapper=lr(Mr.inferences,Yre)?lPt(gps(Mr)):void 0}}}let Q=bye(C),se=Q?Math.min(tE(C)-1,E.length):E.length;if(Q&&Q.flags&262144){let Ve=be(W.inferences,Oe=>Oe.typeParameter===Q);Ve&&(Ve.impliedArity=ke(E,wet,se)<0?E.length-se:void 0)}let Ee=UP(C);if(Ee&&rW(Ee)){let Ve=sUr(l);lF(W.inferences,rUr(Ve),Ee)}for(let Ve=0;Ve=E-1){let ot=l[E-1];if(wet(ot)){let Wt=ot.kind===237?ot.type:Qre(ot.expression,D,W,Q);return pL(Wt)?nUr(Wt):L_(IL(33,Wt,wn,ot.kind===230?ot.expression:ot),se)}}let Ee=[],Ve=[],Oe=[];for(let ot=C;otsu(void 0,Z.Type_0_does_not_satisfy_the_constraint_1):void 0,Wt=D||Z.Type_0_does_not_satisfy_the_constraint_1;Ee||(Ee=qb(Q,se));let Nt=se[Ve];if(!h0(Nt,JE(al(Oe,Ee),Nt),E?C[Ve]:void 0,Wt,ot))return}}return se}function iUr(l){if(Q7(l.tagName))return 2;let C=$0(Rl(l.tagName));return O(Pu(C,1))?0:O(Pu(C,0))?1:2}function $Is(l,C,E,D,W,Q,se){let Ee=met(C,l),Ve=Qre(l.attributes,Ee,void 0,D),Oe=D&4?gye(Ve):Ve;return ot()&&M3t(Oe,Ee,E,W?l.tagName:void 0,l.attributes,void 0,Q,se);function ot(){var Wt;if(QPt(l))return!0;let Nt=(TN(l)||u4(l))&&!(Q7(l.tagName)||oT(l.tagName))?Rl(l.tagName):void 0;if(!Nt)return!0;let Mr=Pu(Nt,0);if(!O(Mr))return!0;let ln=c8r(l);if(!ln)return!0;let hn=FI(ln,111551,!0,!1,l);if(!hn)return!0;let mi=lo(hn),Ti=Pu(mi,0);if(!O(Ti))return!0;let ks=!1,Wo=0;for(let Cs of Ti){let Ds=vT(Cs,0),zo=Pu(Ds,0);if(O(zo))for(let ma of zo){if(ks=!0,bD(ma))return!0;let ha=tE(ma);ha>Wo&&(Wo=ha)}}if(!ks)return!0;let Yi=1/0;for(let Cs of Mr){let Ds=$N(Cs);Ds{W.push(Q.expression)}),W}if(l.kind===170)return eCs(l);if(l.kind===226)return[l.left];if(Jm(l))return l.attributes.properties.length>0||TN(l)&&l.parent.children.length>0?[l.attributes]:v;let C=l.arguments||v,E=nOt(C);if(E>=0){let D=C.slice(0,E);for(let W=E;W{var Oe;let ot=se.target.elementFlags[Ve],Wt=fLe(Q,ot&4?L_(Ee):Ee,!!(ot&12),(Oe=se.target.labeledElementDeclarations)==null?void 0:Oe[Ve]);D.push(Wt)}):D.push(Q)}return D}return C}function eCs(l){let C=l.expression,E=hOt(l);if(E){let D=[];for(let W of E.parameters){let Q=lo(W);D.push(fLe(C,Q))}return D}return w.fail()}function oUr(l,C){return Ne.experimentalDecorators?tCs(l,C):Math.min(Math.max(tE(C),1),2)}function tCs(l,C){switch(l.parent.kind){case 263:case 231:return 1;case 172:return PS(l.parent)?3:2;case 174:case 177:case 178:return C.parameters.length<=2?2:3;case 169:return 3;default:return w.fail()}}function aUr(l){let C=ls(l),{start:E,length:D}=Qi(C,Io(l.expression)?l.expression.name:l.expression);return{start:E,length:D,sourceFile:C}}function ILe(l,C,...E){if(cu(l)){let{sourceFile:D,start:W,length:Q}=aUr(l);return"message"in C?Im(D,W,Q,C,...E):ne(D,C)}else return"message"in C?Us(l,C,...E):GS(ls(l),l,C)}function rCs(l){return BB(l)?Io(l.expression)?l.expression.name:l.expression:V1(l)?Io(l.tag)?l.tag.name:l.tag:Jm(l)?l.tagName:l}function nCs(l){if(!cu(l)||!sr(l.expression))return!1;let C=Pi(l.expression,l.expression.escapedText,111551,void 0,!1),E=C?.valueDeclaration;if(!E||!Jc(E)||!vG(E.parent)||!zS(E.parent.parent)||!sr(E.parent.parent.expression))return!1;let D=f3t(!1);return D?jv(E.parent.parent.expression,!0)===D:!1}function cUr(l,C,E,D){var W;let Q=nOt(E);if(Q>-1)return Us(E[Q],Z.A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter);let se=Number.POSITIVE_INFINITY,Ee=Number.NEGATIVE_INFINITY,Ve=Number.NEGATIVE_INFINITY,Oe=Number.POSITIVE_INFINITY,ot;for(let hn of C){let mi=$N(hn),Ti=tE(hn);miVe&&(Ve=mi),E.lengthW?se=Math.min(se,Ve):Oe1&&(Wo=Ds(Nt,LN,ln,Yi)),Wo||(Wo=Ds(Nt,Ab,ln,Yi)),Wo)return Wo;if(Wo=sCs(l,Nt,Mr,!!E,D),Uo(l).resolvedSignature=Wo,ot)if(!Q&&Oe&&(Q=Z.The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_hand_side_s_Symbol_hasInstance_method),mi)if(mi.length===1||mi.length>3){let zo=mi[mi.length-1],ma;mi.length>3&&(ma=su(ma,Z.The_last_overload_gave_the_following_error),ma=su(ma,Z.No_overload_matches_this_call)),Q&&(ma=su(ma,Q));let ha=pLe(l,Mr,zo,Ab,0,!0,()=>ma,void 0);if(ha)for(let Tg of ha)zo.declaration&&mi.length>3&&eg(Tg,Us(zo.declaration,Z.The_last_overload_is_declared_here)),Cs(zo,Tg),UA.add(Tg);else w.fail("No error for last overload signature")}else{let zo=[],ma=0,ha=Number.MAX_VALUE,Tg=0,Ou=0;for(let LI of mi){let Zs=pLe(l,Mr,LI,Ab,0,!0,()=>su(void 0,Z.Overload_0_of_1_2_gave_the_following_error,Ou+1,Nt.length,OV(LI)),void 0);Zs?(Zs.length<=ha&&(ha=Zs.length,Tg=Ou),ma=Math.max(ma,Zs.length),zo.push(Zs)):w.fail("No error for 3 or fewer overload signatures"),Ou++}let FA=ma>1?zo[Tg]:or(zo);w.assert(FA.length>0,"No errors reported for 3 or fewer overload signatures");let ou=su(Ot(FA,Ie),Z.No_overload_matches_this_call);Q&&(ou=su(ou,Q));let Jf=[...Fr(FA,LI=>LI.relatedInformation)],u_;if(he(FA,LI=>LI.start===FA[0].start&&LI.length===FA[0].length&&LI.file===FA[0].file)){let{file:LI,start:As,length:Zs}=FA[0];u_={file:LI,start:As,length:Zs,code:ou.code,category:ou.category,messageText:ou,relatedInformation:Jf}}else u_=GS(ls(l),rCs(l),ou,Jf);Cs(mi[0],u_),UA.add(u_)}else if(Ti)UA.add(cUr(l,[Ti],Mr,Q));else if(ks)aOt(ks,l.typeArguments,!0,Q);else{let zo=Gt(C,ma=>iOt(ma,Wt));zo.length===0?UA.add(iCs(l,C,Wt,Q)):UA.add(cUr(l,zo,Mr,Q))}return Wo;function Cs(zo,ma){var ha,Tg;let Ou=mi,FA=Ti,ou=ks,Jf=((Tg=(ha=zo.declaration)==null?void 0:ha.symbol)==null?void 0:Tg.declarations)||v,LI=Jf.length>1?be(Jf,As=>dd(As)&&xE(As.body)):void 0;if(LI){let As=tB(LI),Zs=!As.typeParameters;Ds([As],Ab,Zs)&&eg(ma,Us(LI,Z.The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible))}mi=Ou,Ti=FA,ks=ou}function Ds(zo,ma,ha,Tg=!1){var Ou,FA;if(mi=void 0,Ti=void 0,ks=void 0,ha){let ou=zo[0];if(lr(Wt)||!Tet(l,Mr,ou,Tg))return;if(pLe(l,Mr,ou,ma,0,!1,void 0,void 0)){mi=[ou];return}return ou}for(let ou=0;ouSo===Zs)&&(Jf=Sgs(Jf));let Vc;if(lr(Wt)){if(Vc=aOt(Jf,Wt,!1),!Vc){ks=Jf;continue}}else LI=Aye(Jf.typeParameters,Jf,so(l)?2:0),Vc=ek(sOt(l,Jf,Mr,hn|8,LI),LI.nonFixingMapper),hn|=LI.flags&4?8:0;if(u_=j0e(Jf,Vc,so(Jf.declaration),LI&&LI.inferredTypeParameters),bye(Jf)&&!Tet(l,Mr,u_,Tg)){Ti=u_;continue}}else u_=Jf;if(pLe(l,Mr,u_,ma,hn,!1,void 0,LI)){(mi||(mi=[])).push(u_);continue}if(hn){if(hn=0,LI){let As=ek(sOt(l,Jf,Mr,hn,LI),LI.mapper);if(u_=j0e(Jf,As,so(Jf.declaration),LI.inferredTypeParameters),bye(Jf)&&!Tet(l,Mr,u_,Tg)){Ti=u_;continue}}if(pLe(l,Mr,u_,ma,hn,!1,void 0,LI)){(mi||(mi=[])).push(u_);continue}}return zo[ou]=u_,u_}}}function sCs(l,C,E,D,W){return w.assert(C.length>0),Y7(l),D||C.length===1||C.some(Q=>!!Q.typeParameters)?cCs(l,C,E,W):oCs(C)}function oCs(l){let C=tr(l,Ve=>Ve.thisParameter),E;C.length&&(E=lUr(C,C.map(hLe)));let{min:D,max:W}=qDe(l,aCs),Q=[];for(let Ve=0;Veu0(ot)?VerH(ot,Ve))))}let se=tr(l,Ve=>u0(Ve)?Na(Ve.parameters):void 0),Ee=128;if(se.length!==0){let Ve=L_(Ta(tr(l,k5r),2));Q.push(uUr(se,Ve)),Ee|=1}return l.some(U8e)&&(Ee|=2),qx(l[0].declaration,void 0,E,Q,Pg(l.map(Sd)),void 0,D,Ee)}function aCs(l){let C=l.parameters.length;return u0(l)?C-1:C}function lUr(l,C){return uUr(l,Ta(C,2))}function uUr(l,C){return tJ($s(l),C)}function cCs(l,C,E,D){let W=gCs(C,Yr===void 0?E.length:Yr),Q=C[W],{typeParameters:se}=Q;if(!se)return Q;let Ee=zJr(l)?l.typeArguments:void 0,Ve=Ee?C$e(Q,lCs(Ee,se,so(l))):uCs(l,se,Q,E,D);return C[W]=Ve,Ve}function lCs(l,C,E){let D=l.map(H7);for(;D.length>C.length;)D.pop();for(;D.length=C)return W;se>D&&(D=se,E=W)}return E}function ACs(l,C,E){if(l.expression.kind===108){let Ve=det(l.expression);if(vd(Ve)){for(let Oe of l.arguments)Rl(Oe);return yt}if(!OA(Ve)){let Oe=Dv(Um(l));if(Oe){let ot=XP(Ve,Oe.typeArguments,Oe);return Ore(l,ot,C,E,0)}}return cJ(l)}let D,W=Rl(l.expression);if(uG(l)){let Ve=lye(W,l.expression);D=Ve===W?0:w3(l)?16:8,W=Ve}else D=0;if(W=LJr(W,l.expression,RIs),W===ko)return mn;let Q=$0(W);if(OA(Q))return zN(l);let se=Pu(Q,0),Ee=Pu(Q,1).length;if(CLe(W,Q,se.length,Ee))return!OA(W)&&l.typeArguments&&fr(l,Z.Untyped_function_calls_may_not_accept_type_arguments),cJ(l);if(!se.length){if(Ee)fr(l,Z.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,Xs(W));else{let Ve;if(l.arguments.length===1){let Oe=ls(l).text;HC(Oe.charCodeAt(Ju(Oe,l.expression.end,!0)-1))&&(Ve=Us(l.expression,Z.Are_you_missing_a_semicolon))}lOt(l.expression,Q,0,Ve)}return zN(l)}return E&8&&!l.typeArguments&&se.some(dCs)?(HUr(l,E),gr):se.some(Ve=>so(Ve.declaration)&&!!ss(Ve.declaration))?(fr(l,Z.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,Xs(W)),zN(l)):Ore(l,se,C,E,D)}function dCs(l){return!!(l.typeParameters&&rMt(Sd(l)))}function CLe(l,C,E,D){return vd(l)||vd(C)&&!!(l.flags&262144)||!E&&!D&&!(C.flags&1048576)&&!(bT(C).flags&131072)&&yg(l,qC)}function pCs(l,C,E){let D=Pre(l.expression);if(D===ko)return mn;if(D=$0(D),OA(D))return zN(l);if(vd(D))return l.typeArguments&&fr(l,Z.Untyped_function_calls_may_not_accept_type_arguments),cJ(l);let W=Pu(D,1);if(W.length){if(!fCs(l,W[0]))return zN(l);if(gUr(W,Ee=>!!(Ee.flags&4)))return fr(l,Z.Cannot_create_an_instance_of_an_abstract_class),zN(l);let se=D.symbol&&DB(D.symbol);return se&&ba(se,64)?(fr(l,Z.Cannot_create_an_instance_of_an_abstract_class),zN(l)):Ore(l,W,C,E,0)}let Q=Pu(D,0);if(Q.length){let se=Ore(l,Q,C,E,0);return dt||(se.declaration&&!qN(se.declaration)&&Sd(se)!==oo&&fr(l,Z.Only_a_void_function_can_be_called_with_the_new_keyword),UP(se)===oo&&fr(l,Z.A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void)),se}return lOt(l.expression,D,1),zN(l)}function gUr(l,C){return Ra(l)?lr(l,E=>gUr(E,C)):l.compositeKind===1048576?lr(l.compositeSignatures,C):C(l)}function cOt(l,C){let E=wa(C);if(!O(E))return!1;let D=E[0];if(D.flags&2097152){let W=D.types,Q=p5r(W),se=0;for(let Ee of D.types){if(!Q[se]&&sa(Ee)&3&&(Ee.symbol===l||cOt(l,Ee)))return!0;se++}return!1}return D.symbol===l?!0:cOt(l,D)}function fCs(l,C){if(!C||!C.declaration)return!0;let E=C.declaration,D=LQ(E,6);if(!D||E.kind!==176)return!0;let W=DB(E.parent.symbol),Q=xp(E.parent.symbol);if(!zOt(l,W)){let se=Um(l);if(se&&D&4){let Ee=H7(se);if(cOt(E.parent.symbol,Ee))return!0}return D&2&&fr(l,Z.Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration,Xs(Q)),D&4&&fr(l,Z.Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration,Xs(Q)),!1}return!0}function AUr(l,C,E){let D,W=E===0,Q=gJ(C),se=Q&&Pu(Q,E).length>0;if(C.flags&1048576){let Ve=C.types,Oe=!1;for(let ot of Ve)if(Pu(ot,E).length!==0){if(Oe=!0,D)break}else if(D||(D=su(D,W?Z.Type_0_has_no_call_signatures:Z.Type_0_has_no_construct_signatures,Xs(ot)),D=su(D,W?Z.Not_all_constituents_of_type_0_are_callable:Z.Not_all_constituents_of_type_0_are_constructable,Xs(C))),Oe)break;Oe||(D=su(void 0,W?Z.No_constituent_of_type_0_is_callable:Z.No_constituent_of_type_0_is_constructable,Xs(C))),D||(D=su(D,W?Z.Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:Z.Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other,Xs(C)))}else D=su(D,W?Z.Type_0_has_no_call_signatures:Z.Type_0_has_no_construct_signatures,Xs(C));let Ee=W?Z.This_expression_is_not_callable:Z.This_expression_is_not_constructable;if(cu(l.parent)&&l.parent.arguments.length===0){let{resolvedSymbol:Ve}=Uo(l);Ve&&Ve.flags&32768&&(Ee=Z.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without)}return{messageChain:su(D,Ee),relatedMessage:se?Z.Did_you_forget_to_use_await:void 0}}function lOt(l,C,E,D){let{messageChain:W,relatedMessage:Q}=AUr(l,C,E),se=GS(ls(l),l,W);if(Q&&eg(se,Us(l,Q)),cu(l.parent)){let{start:Ee,length:Ve}=aUr(l.parent);se.start=Ee,se.length=Ve}UA.add(se),dUr(C,E,D?eg(se,D):se)}function dUr(l,C,E){if(!l.symbol)return;let D=ol(l.symbol).originatingImport;if(D&&!pC(D)){let W=Pu(lo(ol(l.symbol).target),C);if(!W||!W.length)return;eg(E,Us(D,Z.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 ICs(l,C,E){let D=Rl(l.tag),W=$0(D);if(OA(W))return zN(l);let Q=Pu(W,0),se=Pu(W,1).length;if(CLe(D,W,Q.length,se))return cJ(l);if(!Q.length){if(If(l.parent)){let Ee=Us(l.tag,Z.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 UA.add(Ee),zN(l)}return lOt(l.tag,W,0),zN(l)}return Ore(l,Q,C,E,0)}function CCs(l){switch(l.parent.kind){case 263:case 231:return Z.Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression;case 169:return Z.Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression;case 172:return Z.Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression;case 174:case 177:case 178:return Z.Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression;default:return w.fail()}}function mCs(l,C,E){let D=Rl(l.expression),W=$0(D);if(OA(W))return zN(l);let Q=Pu(W,0),se=Pu(W,1).length;if(CLe(D,W,Q.length,se))return cJ(l);if(yCs(l,Q)&&!FC(l.expression)){let Ve=Tf(l.expression,!1);return fr(l,Z._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0,Ve),zN(l)}let Ee=CCs(l);if(!Q.length){let Ve=AUr(l.expression,W,0),Oe=su(Ve.messageChain,Ee),ot=GS(ls(l.expression),l.expression,Oe);return Ve.relatedMessage&&eg(ot,Us(l.expression,Ve.relatedMessage)),UA.add(ot),dUr(W,0,ot),zN(l)}return Ore(l,Q,C,E,0,Ee)}function Det(l,C){let E=aJ(l),D=E&&Y1(E),W=D&&Z_(D,Z2.Element,788968),Q=W&&Kt.symbolToEntityName(W,788968,l),se=_e.createFunctionTypeNode(void 0,[_e.createParameterDeclaration(void 0,void 0,"props",void 0,Kt.typeToTypeNode(C,l))],Q?_e.createTypeReferenceNode(Q,void 0):_e.createKeywordTypeNode(133)),Ee=SA(1,"props");return Ee.links.type=C,qx(se,void 0,void 0,[Ee],W?xp(W):cr,void 0,1,0)}function hCs(l,C,E){if(Q7(l.tagName)){let se=DJr(l),Ee=Det(l,se);return $V(Qre(l.attributes,met(Ee,l),void 0,0),se,l.tagName,l.attributes),O(l.typeArguments)&&(X(l.typeArguments,Ug),UA.add(P3(ls(l),l.typeArguments,Z.Expected_0_type_arguments_but_got_1,0,O(l.typeArguments)))),Ee}let D=Rl(l.tagName),W=$0(D);if(OA(W))return zN(l);let Q=NJr(D,l);return CLe(D,W,Q.length,0)?cJ(l):Q.length===0?(fr(l.tagName,Z.JSX_element_type_0_does_not_have_any_construct_or_call_signatures,Tf(l.tagName)),zN(l)):Ore(l,Q,C,E,0)}function _Cs(l,C,E){let D=Rl(l.right);if(!vd(D)){let W=BOt(D);if(W){let Q=$0(W);if(OA(Q))return zN(l);let se=Pu(Q,0),Ee=Pu(Q,1);if(CLe(W,Q,se.length,Ee.length))return cJ(l);if(se.length)return Ore(l,se,C,E,0)}else if(!(ntt(D)||qV(D,qC)))return fr(l.right,Z.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),zN(l)}return yt}function yCs(l,C){return C.length&&he(C,E=>E.minArgumentCount===0&&!u0(E)&&E.parameters.length1?iC(l.arguments[1]):void 0;for(let Q=2;Q{let se=$b(W);L$e(Q,se)||JXr(W,Q,E,Z.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)})}function RCs(l){let C=Rl(l.expression),E=lye(C,l.expression);return K$e(aF(E),l,E!==C)}function DCs(l){return l.flags&64?RCs(l):aF(Rl(l.expression))}function _Ur(l){if(g8r(l),X(l.typeArguments,Ug),l.kind===233){let E=KR(l.parent);E.kind===226&&E.operatorToken.kind===104&&tV(l,E.right)&&fr(l,Z.The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression)}let C=l.kind===233?Rl(l.expression):_G(l.exprName)?iLe(l.exprName):Rl(l.exprName);return yUr(C,l)}function yUr(l,C){let E=C.typeArguments;if(l===ko||OA(l)||!lr(E))return l;let D=!1,W,Q=Ee(l),se=D?W:l;return se&&UA.add(P3(ls(C),E,Z.Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable,Xs(se))),Q;function Ee(Oe){let ot=!1,Wt=!1,Nt=Mr(Oe);return D||(D=Wt),ot&&!Wt&&(W??(W=Oe)),Nt;function Mr(ln){if(ln.flags&524288){let hn=yT(ln),mi=Ve(hn.callSignatures),Ti=Ve(hn.constructSignatures);if(ot||(ot=hn.callSignatures.length!==0||hn.constructSignatures.length!==0),Wt||(Wt=mi.length!==0||Ti.length!==0),mi!==hn.callSignatures||Ti!==hn.constructSignatures){let ks=qn(SA(0,"__instantiationExpression"),hn.members,mi,Ti,hn.indexInfos);return ks.objectFlags|=8388608,ks.node=C,ks}}else if(ln.flags&58982400){let hn=a_(ln);if(hn){let mi=Mr(hn);if(mi!==hn)return mi}}else{if(ln.flags&1048576)return Of(ln,Ee);if(ln.flags&2097152)return Pg(Ar(ln.types,Mr))}return ln}}function Ve(Oe){let ot=Gt(Oe,Wt=>!!Wt.typeParameters&&iOt(Wt,E));return Ar(ot,Wt=>{let Nt=aOt(Wt,E,!0);return Nt?j0e(Wt,Nt,so(Wt.declaration)):Wt})}}function xCs(l){return Ug(l.type),dOt(l.expression,l.type)}function dOt(l,C,E){let D=Rl(l,E),W=Lc(C);if(OA(W))return W;let Q=Si(C.parent,se=>se.kind===238||se.kind===350);return $V(D,W,Q,l,Z.Type_0_does_not_satisfy_the_expected_type_1),D}function kCs(l){return xys(l),l.keywordToken===105?pOt(l):l.keywordToken===102?GCs(l):w.assertNever(l.keywordToken)}function bUr(l){switch(l.keywordToken){case 102:return U5r();case 105:let C=pOt(l);return OA(C)?cr:zCs(C);default:w.assertNever(l.keywordToken)}}function pOt(l){let C=VRe(l);if(C)if(C.kind===176){let E=Mo(C.parent);return lo(E)}else{let E=Mo(C);return lo(E)}else return fr(l,Z.Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor,"new.target"),cr}function GCs(l){De===100||De===199?ls(l).impliedNodeFormat!==99&&fr(l,Z.The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output):De<6&&De!==4&&fr(l,Z.The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system_node16_or_nodenext);let C=ls(l);return w.assert(!!(C.flags&8388608),"Containing file is missing import meta node flag."),l.name.escapedText==="meta"?J5r():cr}function hLe(l){let C=l.valueDeclaration;return hg(lo(l),!1,!!C&&(qw(C)||QS(C)))}function fOt(l,C,E="arg"){return l?(w.assert(sr(l.name)),l.name.escapedText):`${E}_${C}`}function fge(l,C,E){let D=l.parameters.length-(u0(l)?1:0);if(C=D-1)return C===D-1?Q:L_(zb(Q,bt));let se=[],Ee=[],Ve=[];for(let Oe=C;Oe!(Ve&1)),Ee=se<0?Q.target.fixedLength:se;Ee>0&&(W=l.parameters.length-1+Ee)}}if(W===void 0){if(!E&&l.flags&32)return 0;W=l.minArgumentCount}if(D)return W;for(let Q=W-1;Q>=0;Q--){let se=vT(l,Q);if(VC(se,qJr).flags&131072)break;W=Q}l.resolvedMinArgumentCount=W}return l.resolvedMinArgumentCount}function bD(l){if(u0(l)){let C=lo(l.parameters[l.parameters.length-1]);return!aA(C)||C.target.hasRestElement}return!1}function yye(l){if(u0(l)){let C=lo(l.parameters[l.parameters.length-1]);if(!aA(C))return vd(C)?rp:C;if(C.target.hasRestElement)return age(C,C.target.fixedLength)}}function bye(l){let C=yye(l);return C&&!UB(C)&&!vd(C)?C:void 0}function IOt(l){return COt(l,Vi)}function COt(l,C){return l.parameters.length>0?vT(l,0):C}function SUr(l,C,E){let D=l.parameters.length-(u0(l)?1:0);for(let W=0;W=0);let Q=Rf(D.parent)?lo(Mo(D.parent.parent)):zKr(D.parent),se=Rf(D.parent)?wn:qKr(D.parent),Ee=dw(W),Ve=sw("target",Q),Oe=sw("propertyKey",se),ot=sw("parameterIndex",Ee);E.decoratorSignature=Nye(void 0,void 0,[Ve,Oe,ot],oo);break}case 174:case 177:case 178:case 172:{let D=C;if(!Sa(D.parent))break;let W=zKr(D),Q=sw("target",W),se=qKr(D),Ee=sw("propertyKey",se),Ve=Ql(D)?oo:tXr(H7(D));if(!Ql(C)||PS(C)){let ot=tXr(H7(D)),Wt=sw("descriptor",ot);E.decoratorSignature=Nye(void 0,void 0,[Q,Ee,Wt],Ta([Ve,oo]))}else E.decoratorSignature=Nye(void 0,void 0,[Q,Ee],Ta([Ve,oo]));break}}return E.decoratorSignature===yt?void 0:E.decoratorSignature}function hOt(l){return lt?jCs(l):KCs(l)}function bLe(l){let C=NZe(!0);return C!==Jg?(l=fL(_ge(l))||Kr,lL(C,[l])):Kr}function NUr(l){let C=q5r(!0);return C!==Jg?(l=fL(_ge(l))||Kr,lL(C,[l])):Kr}function ELe(l,C){let E=bLe(C);return E===Kr?(fr(l,pC(l)?Z.A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:Z.An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option),cr):(f3t(!0)||fr(l,pC(l)?Z.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:Z.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),E)}function zCs(l){let C=SA(0,"NewTargetExpression"),E=SA(4,"target",8);E.parent=C,E.links.type=l;let D=Du([E]);return C.members=D,qn(C,D,v,v,v)}function Get(l,C){if(!l.body)return cr;let E=YI(l),D=(E&2)!==0,W=(E&1)!==0,Q,se,Ee,Ve=oo;if(l.body.kind!==241)Q=iC(l.body,C&&C&-9),D&&(Q=_ge(Tye(Q,!1,l,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member)));else if(W){let Oe=kUr(l,C);Oe?Oe.length>0&&(Q=Ta(Oe,2)):Ve=Vi;let{yieldTypes:ot,nextTypes:Wt}=qCs(l,C);se=lr(ot)?Ta(ot,2):void 0,Ee=lr(Wt)?Pg(Wt):void 0}else{let Oe=kUr(l,C);if(!Oe)return E&2?ELe(l,Vi):Vi;if(Oe.length===0){let ot=pet(l,void 0),Wt=ot&&(kLe(ot,E)||oo).flags&32768?wn:oo;return E&2?ELe(l,Wt):Wt}Q=Ta(Oe,2)}if(Q||se||Ee){if(se&&$$e(l,se,3),Q&&$$e(l,Q,1),Ee&&$$e(l,Ee,2),Q&&ET(Q)||se&&ET(se)||Ee&&ET(Ee)){let Oe=PPt(l),ot=Oe?Oe===tB(l)?W?void 0:Q:Iet(Sd(Oe),l,void 0):void 0;W?(se=rPt(se,ot,0,D),Q=rPt(Q,ot,1,D),Ee=rPt(Ee,ot,2,D)):Q=Kds(Q,ot,D)}se&&(se=$b(se)),Q&&(Q=$b(Q)),Ee&&(Ee=$b(Ee))}return W?Fet(se||Vi,Q||Ve,Ee||fJr(2,l)||Kr,D):D?bLe(Q||Ve):Q||Ve}function Fet(l,C,E,D){let W=D?Wg:nf,Q=W.getGlobalGeneratorType(!1);if(l=W.resolveIterationType(l,void 0)||Kr,C=W.resolveIterationType(C,void 0)||Kr,E=W.resolveIterationType(E,void 0)||Kr,Q===Jg){let se=W.getGlobalIterableIteratorType(!1),Ee=se!==Jg?hKr(se,W):void 0,Ve=Ee?Ee.returnType:Qt,Oe=Ee?Ee.nextType:wn;return yg(C,Ve)&&yg(Oe,E)?se!==Jg?q0e(se,[l]):(W.getGlobalIterableIteratorType(!0),Zc):(W.getGlobalGeneratorType(!0),Zc)}return q0e(Q,[l,C,E])}function qCs(l,C){let E=[],D=[],W=(YI(l)&2)!==0;return TRe(l.body,Q=>{let se=Q.expression?Rl(Q.expression,C):Pe;pa(E,RUr(Q,se,Qt,W));let Ee;if(Q.asteriskToken){let Ve=Ket(se,W?19:17,Q.expression);Ee=Ve&&Ve.nextType}else Ee=Sy(Q,void 0);Ee&&pa(D,Ee)}),{yieldTypes:E,nextTypes:D}}function RUr(l,C,E,D){let W=l.expression||l,Q=l.asteriskToken?IL(D?19:17,C,E,W):C;return D?gJ(Q,W,l.asteriskToken?Z.Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:Z.Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):Q}function DUr(l,C,E){let D=0;for(let W=0;W=C?E[W]:void 0;D|=Q!==void 0?FDt.get(Q)||32768:0}return D}function xUr(l){let C=Uo(l);if(C.isExhaustive===void 0){C.isExhaustive=0;let E=$Cs(l);C.isExhaustive===0&&(C.isExhaustive=E)}else C.isExhaustive===0&&(C.isExhaustive=!1);return C.isExhaustive}function $Cs(l){if(l.expression.kind===221){let D=P4r(l);if(!D)return!1;let W=mD(iC(l.expression.expression)),Q=DUr(0,0,D);return W.flags&3?(556800&Q)===556800:!Kv(W,se=>Zre(se,Q)===Q)}let C=iC(l.expression);if(!cye(C))return!1;let E=iet(l);return!E.length||lr(E,Xds)?!1:Hps(Of(C,ty),E)}function _Ot(l){return l.endFlowNode&&eLe(l.endFlowNode)}function kUr(l,C){let E=YI(l),D=[],W=_Ot(l),Q=!1;if(wx(l.body,se=>{let Ee=se.expression;if(Ee){if(Ee=jA(Ee,!0),E&2&&Ee.kind===223&&(Ee=jA(Ee.expression,!0)),Ee.kind===213&&Ee.expression.kind===80&&iC(Ee.expression).symbol===GA(l.symbol)&&(!vG(l.symbol.valueDeclaration)||SPt(Ee.expression))){Q=!0;return}let Ve=iC(Ee,C&&C&-9);E&2&&(Ve=_ge(Tye(Ve,!1,l,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member))),Ve.flags&131072&&(Q=!0),pa(D,Ve)}else W=!0}),!(D.length===0&&!W&&(Q||ems(l))))return nt&&D.length&&W&&!(qN(l)&&D.some(se=>se.symbol===l.symbol))&&pa(D,wn),D}function ems(l){switch(l.kind){case 218:case 219:return!0;case 174:return l.parent.kind===210;default:return!1}}function tms(l){switch(l.kind){case 176:case 177:case 178:return}if(YI(l)!==0)return;let E;if(l.body&&l.body.kind!==241)E=l.body;else if(wx(l.body,W=>{if(E||!W.expression)return!0;E=W.expression})||!E||_Ot(l))return;return rms(l,E)}function rms(l,C){if(C=jA(C,!0),!!(iC(C).flags&16))return X(l.parameters,(D,W)=>{let Q=lo(D.symbol);if(!Q||Q.flags&16||!sr(D.name)||rLe(D.symbol)||Rv(D))return;let se=nms(l,C,D,Q);if(se)return K0e(1,Sc(D.name.escapedText),W,se)})}function nms(l,C,E,D){let W=C.flowNode||C.parent.kind===253&&C.parent.flowNode||nD(2,void 0,void 0),Q=nD(32,C,W),se=uF(E.name,D,D,l,Q);if(se===D)return;let Ee=nD(64,C,W);return uF(E.name,D,se,l,Ee).flags&131072?se:void 0}function yOt(l,C){u(E);return;function E(){let D=YI(l),W=C&&kLe(C,D);if(W&&(UI(W,16384)||W.flags&32769)||l.kind===173||wf(l.body)||l.body.kind!==241||!_Ot(l))return;let Q=l.flags&1024,se=rb(l)||l;if(W&&W.flags&131072)fr(se,Z.A_function_returning_never_cannot_have_a_reachable_end_point);else if(W&&!Q)fr(se,Z.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value);else if(W&&nt&&!yg(wn,W))fr(se,Z.Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined);else if(Ne.noImplicitReturns){if(!W){if(!Q)return;let Ee=Sd(tB(l));if(SKr(l,Ee))return}fr(se,Z.Not_all_code_paths_return_a_value)}}}function GUr(l,C){if(w.assert(l.kind!==174||TB(l)),Y7(l),WA(l)&&yge(l,l.name),C&&C&4&&XB(l)){if(!rb(l)&&!gle(l)){let D=mye(l);if(D&&rW(Sd(D))){let W=Uo(l);if(W.contextFreeType)return W.contextFreeType;let Q=Get(l,C),se=qx(void 0,void 0,void 0,v,Q,void 0,0,64),Ee=qn(l.symbol,Be,[se],v,v);return Ee.objectFlags|=262144,W.contextFreeType=Ee}}return hf}return!ctt(l)&&l.kind===218&&sMt(l),ims(l,C),lo(Mo(l))}function ims(l,C){let E=Uo(l);if(!(E.flags&64)){let D=mye(l);if(!(E.flags&64)){E.flags|=64;let W=$i(Pu(lo(Mo(l)),0));if(!W)return;if(XB(l))if(D){let Q=eH(l),se;if(C&&C&2){SUr(W,D,Q);let Ee=yye(D);Ee&&Ee.flags&262144&&(se=V7(D,Q.nonFixingMapper))}se||(se=Q?V7(D,Q.mapper):D),LCs(W,se)}else VCs(W);else if(D&&!l.typeParameters&&D.parameters.length>l.parameters.length){let Q=eH(l);C&&C&2&&SUr(W,D,Q)}if(D&&!Nre(l)&&!W.resolvedReturnType){let Q=Get(l,C);W.resolvedReturnType||(W.resolvedReturnType=Q)}vye(l)}}}function sms(l){w.assert(l.kind!==174||TB(l));let C=YI(l),E=Nre(l);if(yOt(l,E),l.body)if(rb(l)||Sd(tB(l)),l.body.kind===241)Ug(l.body);else{let D=Rl(l.body),W=E&&kLe(E,C);if(W){let Q=Net(l.body);if((C&3)===2){let se=Tye(D,!1,Q,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);$V(se,W,Q,Q)}else $V(D,W,Q,Q)}}}function Zet(l,C,E,D=!1){if(!yg(C,Gs)){let W=D&&hge(C);return wP(l,!!W&&yg(W,Gs),E),!1}return!0}function oms(l){if(!cu(l)||!M3(l))return!1;let C=iC(l.arguments[2]);if(ZI(C,"value")){let W=_g(C,"writable"),Q=W&&lo(W);if(!Q||Q===dn||Q===On)return!0;if(W&&W.valueDeclaration&&KC(W.valueDeclaration)){let se=W.valueDeclaration.initializer,Ee=Rl(se);if(Ee===dn||Ee===On)return!0}return!1}return!_g(C,"set")}function ST(l){return!!(aI(l)&8||l.flags&4&&L1(l)&8||l.flags&3&&HPt(l)&6||l.flags&98304&&!(l.flags&65536)||l.flags&8||lr(l.declarations,oms))}function FUr(l,C,E){var D,W;if(E===0)return!1;if(ST(C)){if(C.flags&4&&Cp(l)&&l.expression.kind===110){let Q=Wb(l);if(!(Q&&(Q.kind===176||qN(Q))))return!0;if(C.valueDeclaration){let se=no(C.valueDeclaration),Ee=Q.parent===C.valueDeclaration.parent,Ve=Q===C.valueDeclaration.parent,Oe=se&&((D=C.parent)==null?void 0:D.valueDeclaration)===Q.parent,ot=se&&((W=C.parent)==null?void 0:W.valueDeclaration)===Q;return!(Ee||Ve||Oe||ot)}}return!0}if(Cp(l)){let Q=jA(l.expression);if(Q.kind===80){let se=Uo(Q).resolvedSymbol;if(se.flags&2097152){let Ee=YE(se);return!!Ee&&Ee.kind===274}}}return!1}function Eye(l,C,E){let D=ZC(l,7);return D.kind!==80&&!Cp(D)?(fr(l,C),!1):D.flags&64?(fr(l,E),!1):!0}function ams(l){Rl(l.expression);let C=jA(l.expression);if(!Cp(C))return fr(C,Z.The_operand_of_a_delete_operator_must_be_a_property_reference),ds;Io(C)&&kc(C.name)&&fr(C,Z.The_operand_of_a_delete_operator_cannot_be_a_private_identifier);let E=Uo(C),D=H1(E.resolvedSymbol);return D&&(ST(D)?fr(C,Z.The_operand_of_a_delete_operator_cannot_be_a_read_only_property):cms(C,D)),ds}function cms(l,C){let E=lo(C);nt&&!(E.flags&131075)&&!(Ye?C.flags&16777216:BT(E,16777216))&&fr(l,Z.The_operand_of_a_delete_operator_must_be_optional)}function lms(l){return Rl(l.expression),R4}function ums(l){return Y7(l),Pe}function ZUr(l){let C=!1,E=K$(l);if(E&&$p(E)){let D=Ob(l)?Z.await_expression_cannot_be_used_inside_a_class_static_block:Z.await_using_statements_cannot_be_used_inside_a_class_static_block;fr(l,D),C=!0}else if(!(l.flags&65536))if(ace(l)){let D=ls(l);if(!iW(D)){let W;if(!U9(D,Ne)){W??(W=Rr(D,l.pos));let Q=Ob(l)?Z.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:Z.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,se=Im(D,W.start,W.length,Q);UA.add(se),C=!0}switch(De){case 100:case 199:if(D.impliedNodeFormat===1){W??(W=Rr(D,l.pos)),UA.add(Im(D,W.start,W.length,Z.The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level)),C=!0;break}case 7:case 99:case 200:case 4:if(Qe>=4)break;default:W??(W=Rr(D,l.pos));let Q=Ob(l)?Z.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:Z.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;UA.add(Im(D,W.start,W.length,Q)),C=!0;break}}}else{let D=ls(l);if(!iW(D)){let W=Rr(D,l.pos),Q=Ob(l)?Z.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:Z.await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules,se=Im(D,W.start,W.length,Q);if(E&&E.kind!==176&&!(YI(E)&2)){let Ee=Us(E,Z.Did_you_mean_to_mark_this_function_as_async);eg(se,Ee)}UA.add(se),C=!0}}return Ob(l)&&FPt(l)&&(fr(l,Z.await_expressions_cannot_be_used_in_a_parameter_initializer),C=!0),C}function gms(l){u(()=>ZUr(l));let C=Rl(l.expression),E=Tye(C,!0,l,Z.Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);return E===C&&!OA(E)&&!(C.flags&3)&&iw(!1,Us(l,Z.await_has_no_effect_on_the_type_of_this_expression)),E}function Ams(l){let C=Rl(l.operand);if(C===ko)return ko;switch(l.operand.kind){case 9:switch(l.operator){case 41:return L7(dw(-l.operand.text));case 40:return L7(dw(+l.operand.text))}break;case 10:if(l.operator===41)return L7(R$e({negative:!0,base10Value:r4(l.operand.text)}))}switch(l.operator){case 40:case 41:case 55:return jN(C,l.operand),BLe(C,12288)&&fr(l.operand,Z.The_0_operator_cannot_be_applied_to_type_symbol,vr(l.operator)),l.operator===40?(BLe(C,2112)&&fr(l.operand,Z.Operator_0_cannot_be_applied_to_type_1,vr(l.operator),Xs(oF(C))),bt):bOt(C);case 54:LOt(C,l.operand);let E=Zre(C,12582912);return E===4194304?dn:E===8388608?Mn:ds;case 46:case 47:return Zet(l.operand,jN(C,l.operand),Z.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type)&&Eye(l.operand,Z.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,Z.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),bOt(C)}return cr}function dms(l){let C=Rl(l.operand);return C===ko?ko:(Zet(l.operand,jN(C,l.operand),Z.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type)&&Eye(l.operand,Z.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,Z.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),bOt(C))}function bOt(l){return UI(l,2112)?c_(l,3)||UI(l,296)?Gs:Vt:bt}function BLe(l,C){if(UI(l,C))return!0;let E=mD(l);return!!E&&UI(E,C)}function UI(l,C){if(l.flags&C)return!0;if(l.flags&3145728){let E=l.types;for(let D of E)if(UI(D,C))return!0}return!1}function c_(l,C,E){return l.flags&C?!0:E&&l.flags&114691?!1:!!(C&296)&&yg(l,bt)||!!(C&2112)&&yg(l,Vt)||!!(C&402653316)&&yg(l,Jt)||!!(C&528)&&yg(l,ds)||!!(C&16384)&&yg(l,oo)||!!(C&131072)&&yg(l,Vi)||!!(C&65536)&&yg(l,ur)||!!(C&32768)&&yg(l,wn)||!!(C&4096)&&yg(l,Es)||!!(C&67108864)&&yg(l,oa)}function Bye(l,C,E){return l.flags&1048576?he(l.types,D=>Bye(D,C,E)):c_(l,C,E)}function Let(l){return!!(sa(l)&16)&&!!l.symbol&&EOt(l.symbol)}function EOt(l){return(l.flags&128)!==0}function BOt(l){let C=yKr("hasInstance");if(Bye(l,67108864)){let E=_g(l,C);if(E){let D=lo(E);if(D&&Pu(D,0).length!==0)return D}}}function pms(l,C,E,D,W){if(E===ko||D===ko)return ko;!vd(E)&&Bye(E,402784252)&&fr(l,Z.The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter),w.assert(r6(l.parent));let Q=Mre(l.parent,void 0,W);if(Q===gr)return ko;let se=Sd(Q);return h0(se,ds,C,Z.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),ds}function fms(l){return Kv(l,C=>C===xI||!!(C.flags&2097152)&&yD(mD(C)))}function Ims(l,C,E,D){if(E===ko||D===ko)return ko;if(kc(l)){if((Qe<9||Qe<99||!Le)&&Zm(l,2097152),!Uo(l).resolvedSymbol&&Um(l)){let W=zPt(l,D.symbol,!0);MJr(l,D,W)}}else h0(jN(E,l),ki,l);return h0(jN(D,C),oa,C)&&fms(D)&&fr(C,Z.Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operator,Xs(D)),ds}function Cms(l,C,E){let D=l.properties;if(nt&&D.length===0)return jN(C,l);for(let W=0;Wage(Oe,E)):L_(D);return uJ(Ee,Ve,W)}}}}function uJ(l,C,E,D){let W;if(l.kind===304){let Q=l;Q.objectAssignmentInitializer&&(nt&&!BT(Rl(Q.objectAssignmentInitializer),16777216)&&(C=Uv(C,524288)),bms(Q.name,Q.equalsToken,Q.objectAssignmentInitializer,E)),W=l.name}else W=l;return W.kind===226&&W.operatorToken.kind===64&&(ht(W,E),W=W.left,nt&&(C=Uv(C,524288))),W.kind===210?Cms(W,C,D):W.kind===209?mms(W,C,E):hms(W,C,E)}function hms(l,C,E){let D=Rl(l,E),W=l.parent.kind===305?Z.The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:Z.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access,Q=l.parent.kind===305?Z.The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access:Z.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access;return Eye(l,W,Q)&&$V(C,D,l,l),Y9(l)&&Zm(l.parent,1048576),C}function vLe(l){switch(l=jA(l),l.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 vLe(l.whenTrue)&&vLe(l.whenFalse);case 226:return qR(l.operatorToken.kind)?!1:vLe(l.left)&&vLe(l.right);case 224:case 225:switch(l.operator){case 54:case 40:case 41:case 55:return!0}return!1;case 222:case 216:case 234:default:return!1}}function vOt(l,C){return(C.flags&98304)!==0||L$e(l,C)}function _ms(){let l=nke(C,E,D,W,Q,se);return(Nt,Mr)=>{let ln=l(Nt,Mr);return w.assertIsDefined(ln),ln};function C(Nt,Mr,ln){return Mr?(Mr.stackIndex++,Mr.skip=!1,Oe(Mr,void 0),Wt(Mr,void 0)):Mr={checkMode:ln,skip:!1,stackIndex:0,typeStack:[void 0,void 0]},so(Nt)&&RQ(Nt)?(Mr.skip=!0,Wt(Mr,Rl(Nt.right,ln)),Mr):(yms(Nt),Nt.operatorToken.kind===64&&(Nt.left.kind===210||Nt.left.kind===209)&&(Mr.skip=!0,Wt(Mr,uJ(Nt.left,Rl(Nt.right,ln),ln,Nt.right.kind===110))),Mr)}function E(Nt,Mr,ln){if(!Mr.skip)return Ee(Mr,Nt)}function D(Nt,Mr,ln){if(!Mr.skip){let hn=ot(Mr);w.assertIsDefined(hn),Oe(Mr,hn),Wt(Mr,void 0);let mi=Nt.kind;if(wee(mi)){let Ti=ln.parent;for(;Ti.kind===217||Tee(Ti);)Ti=Ti.parent;(mi===56||H0(Ti))&&ZOt(ln.left,hn,H0(Ti)?Ti.thenStatement:void 0),LOt(hn,ln.left)}}}function W(Nt,Mr,ln){if(!Mr.skip)return Ee(Mr,Nt)}function Q(Nt,Mr){let ln;if(Mr.skip)ln=ot(Mr);else{let hn=Ve(Mr);w.assertIsDefined(hn);let mi=ot(Mr);w.assertIsDefined(mi),ln=WUr(Nt.left,Nt.operatorToken,Nt.right,hn,mi,Mr.checkMode,Nt)}return Mr.skip=!1,Oe(Mr,void 0),Wt(Mr,void 0),Mr.stackIndex--,ln}function se(Nt,Mr,ln){return Wt(Nt,Mr),Nt}function Ee(Nt,Mr){if(no(Mr))return Mr;Wt(Nt,Rl(Mr,Nt.checkMode))}function Ve(Nt){return Nt.typeStack[Nt.stackIndex]}function Oe(Nt,Mr){Nt.typeStack[Nt.stackIndex]=Mr}function ot(Nt){return Nt.typeStack[Nt.stackIndex+1]}function Wt(Nt,Mr){Nt.typeStack[Nt.stackIndex+1]=Mr}}function yms(l){let{left:C,operatorToken:E,right:D}=l;E.kind===61&&(no(C)&&(C.operatorToken.kind===57||C.operatorToken.kind===56)&&qi(C,Z._0_and_1_operations_cannot_be_mixed_without_parentheses,vr(C.operatorToken.kind),vr(E.kind)),no(D)&&(D.operatorToken.kind===57||D.operatorToken.kind===56)&&qi(D,Z._0_and_1_operations_cannot_be_mixed_without_parentheses,vr(D.operatorToken.kind),vr(E.kind)))}function bms(l,C,E,D,W){let Q=C.kind;if(Q===64&&(l.kind===210||l.kind===209))return uJ(l,Rl(E,D),D,E.kind===110);let se;wee(Q)?se=bge(l,D):se=Rl(l,D);let Ee=Rl(E,D);return WUr(l,C,E,se,Ee,D,W)}function WUr(l,C,E,D,W,Q,se){let Ee=C.kind;switch(Ee){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(D===ko||W===ko)return ko;D=jN(D,l),W=jN(W,E);let Yi;if(D.flags&528&&W.flags&528&&(Yi=Nt(C.kind))!==void 0)return fr(se||C,Z.The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead,vr(C.kind),vr(Yi)),bt;{let zo=Zet(l,D,Z.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type,!0),ma=Zet(E,W,Z.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type,!0),ha;if(c_(D,3)&&c_(W,3)||!(UI(D,2112)||UI(W,2112)))ha=bt;else if(Ve(D,W)){switch(Ee){case 50:case 73:mi();break;case 43:case 68:Qe<3&&fr(se,Z.Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later)}ha=Vt}else mi(Ve),ha=cr;return zo&&ma&&Mr(ha),ha}case 40:case 65:if(D===ko||W===ko)return ko;!c_(D,402653316)&&!c_(W,402653316)&&(D=jN(D,l),W=jN(W,E));let Cs;return c_(D,296,!0)&&c_(W,296,!0)?Cs=bt:c_(D,2112,!0)&&c_(W,2112,!0)?Cs=Vt:c_(D,402653316,!0)||c_(W,402653316,!0)?Cs=Jt:(vd(D)||vd(W))&&(Cs=OA(D)||OA(W)?cr:Qt),Cs&&!Wt(Ee)?Cs:Cs?(Ee===65&&Mr(Cs),Cs):(mi((ma,ha)=>c_(ma,402655727)&&c_(ha,402655727)),Qt);case 30:case 32:case 33:case 34:return Wt(Ee)&&(D=ePt(jN(D,l)),W=ePt(jN(W,E)),hn((zo,ma)=>{if(vd(zo)||vd(ma))return!0;let ha=yg(zo,Gs),Tg=yg(ma,Gs);return ha&&Tg||!ha&&!Tg&&VZe(zo,ma)})),ds;case 35:case 36:case 37:case 38:if(!(Q&&Q&64)){if((IZ(l)||IZ(E))&&(!so(l)||Ee===37||Ee===38)){let zo=Ee===35||Ee===37;fr(se,Z.This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value,zo?"false":"true")}ks(se,Ee,l,E),hn((zo,ma)=>vOt(zo,ma)||vOt(ma,zo))}return ds;case 104:return pms(l,E,D,W,Q);case 103:return Ims(l,E,D,W);case 56:case 77:{let zo=BT(D,4194304)?Ta([qds(nt?D:oF(W)),W]):D;return Ee===77&&Mr(W),zo}case 57:case 76:{let zo=BT(D,8388608)?Ta([aF(A4r(D)),W],2):D;return Ee===76&&Mr(W),zo}case 61:case 78:{let zo=BT(D,262144)?Ta([aF(D),W],2):D;return Ee===78&&Mr(W),zo}case 64:let Ds=no(l.parent)?CI(l.parent):0;return Oe(Ds,W),ln(Ds)?((!(W.flags&524288)||Ds!==2&&Ds!==6&&!sF(W)&&!yPt(W)&&!(sa(W)&1))&&Mr(W),D):(Mr(W),W);case 28:if(!Ne.allowUnreachableCode&&vLe(l)&&!ot(l.parent)){let zo=ls(l),ma=zo.text,ha=Ju(ma,l.pos);zo.parseDiagnostics.some(Ou=>Ou.code!==Z.JSX_expressions_must_have_one_parent_element.code?!1:Cy(Ou,ha))||fr(l,Z.Left_side_of_comma_operator_is_unused_and_has_no_side_effects)}return W;default:return w.fail()}function Ve(Yi,Cs){return c_(Yi,2112)&&c_(Cs,2112)}function Oe(Yi,Cs){if(Yi===2)for(let Ds of JV(Cs)){let zo=lo(Ds);if(zo.symbol&&zo.symbol.flags&32){let ma=Ds.escapedName,ha=Pi(Ds.valueDeclaration,ma,788968,void 0,!1);ha?.declarations&&ha.declarations.some(d4)&&(YG(ha,Z.Duplicate_identifier_0,Sc(ma),Ds),YG(Ds,Z.Duplicate_identifier_0,Sc(ma),ha))}}}function ot(Yi){return Yi.parent.kind===217&&du(Yi.left)&&Yi.left.text==="0"&&(cu(Yi.parent.parent)&&Yi.parent.parent.expression===Yi.parent||Yi.parent.parent.kind===215)&&(Cp(Yi.right)||sr(Yi.right)&&Yi.right.escapedText==="eval")}function Wt(Yi){let Cs=BLe(D,12288)?l:BLe(W,12288)?E:void 0;return Cs?(fr(Cs,Z.The_0_operator_cannot_be_applied_to_type_symbol,vr(Yi)),!1):!0}function Nt(Yi){switch(Yi){case 52:case 75:return 57;case 53:case 79:return 38;case 51:case 74:return 56;default:return}}function Mr(Yi){qR(Ee)&&u(Cs);function Cs(){let Ds=D;if($le(C.kind)&&l.kind===211&&(Ds=Eet(l,void 0,!0)),Eye(l,Z.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access,Z.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access)){let zo;if(Ye&&Io(l)&&UI(Yi,32768)){let ma=ZI(l_(l.expression),l.name.escapedText);W$e(Yi,ma)&&(zo=Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target)}$V(Yi,Ds,l,E,zo)}}}function ln(Yi){var Cs;switch(Yi){case 2:return!0;case 1:case 5:case 6:case 3:case 4:let Ds=z2(l),zo=RQ(E);return!!zo&&tu(zo)&&!!((Cs=Ds?.exports)!=null&&Cs.size);default:return!1}}function hn(Yi){return Yi(D,W)?!1:(mi(Yi),!0)}function mi(Yi){let Cs=!1,Ds=se||C;if(Yi){let Ou=fL(D),FA=fL(W);Cs=!(Ou===D&&FA===W)&&!!(Ou&&FA)&&Yi(Ou,FA)}let zo=D,ma=W;!Cs&&Yi&&([zo,ma]=Ems(D,W,Yi));let[ha,Tg]=Kue(zo,ma);Ti(Ds,Cs,ha,Tg)||wP(Ds,Cs,Z.Operator_0_cannot_be_applied_to_types_1_and_2,vr(C.kind),ha,Tg)}function Ti(Yi,Cs,Ds,zo){switch(C.kind){case 37:case 35:case 38:case 36:return wP(Yi,Cs,Z.This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap,Ds,zo);default:return}}function ks(Yi,Cs,Ds,zo){let ma=Wo(jA(Ds)),ha=Wo(jA(zo));if(ma||ha){let Tg=fr(Yi,Z.This_condition_will_always_return_0,vr(Cs===37||Cs===35?97:112));if(ma&&ha)return;let Ou=Cs===38||Cs===36?vr(54):"",FA=ma?zo:Ds,ou=jA(FA);eg(Tg,Us(FA,Z.Did_you_mean_0,`${Ou}Number.isNaN(${cp(ou)?t0(ou):"..."})`))}}function Wo(Yi){if(sr(Yi)&&Yi.escapedText==="NaN"){let Cs=iAs();return!!Cs&&Cs===vy(Yi)}return!1}}function Ems(l,C,E){let D=l,W=C,Q=oF(l),se=oF(C);return E(Q,se)||(D=Q,W=se),[D,W]}function Bms(l){u(Nt);let C=Wb(l);if(!C)return Qt;let E=YI(C);if(!(E&1))return Qt;let D=(E&2)!==0;l.asteriskToken&&(D&&Qe<5&&Zm(l,26624),!D&&Qe<2&&Ne.downlevelIteration&&Zm(l,256));let W=Nre(C);W&&W.flags&1048576&&(W=VC(W,Mr=>TOt(Mr,E,void 0)));let Q=W&&HOt(W,D),se=Q&&Q.yieldType||Qt,Ee=Q&&Q.nextType||Qt,Ve=D?gJ(Ee)||Qt:Ee,Oe=l.expression?Rl(l.expression):Pe,ot=RUr(l,Oe,Ve,D);if(W&&ot&&$V(ot,se,l.expression||l,l.expression),l.asteriskToken)return WOt(D?19:17,1,Oe,l.expression)||Qt;if(W)return nH(2,W,D)||Qt;let Wt=fJr(2,C);return Wt||(Wt=Qt,u(()=>{if(dt&&!nxe(l)){let Mr=Sy(l,void 0);(!Mr||vd(Mr))&&fr(l,Z.yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation)}})),Wt;function Nt(){l.flags&16384||Zh(l,Z.A_yield_expression_is_only_allowed_in_a_generator_body),FPt(l)&&fr(l,Z.yield_expressions_cannot_be_used_in_a_parameter_initializer)}}function vms(l,C){let E=bge(l.condition,C);ZOt(l.condition,E,l.whenTrue);let D=Rl(l.whenTrue,C),W=Rl(l.whenFalse,C);return Ta([D,W],2)}function PUr(l){let C=l.parent;return FC(C)&&PUr(C)||hA(C)&&C.argumentExpression===l}function Sms(l){let C=[l.head.text],E=[];for(let W of l.templateSpans){let Q=Rl(W.expression);BLe(Q,12288)&&fr(W.expression,Z.Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String),C.push(W.literal.text),E.push(yg(Q,ri)?Q:Jt)}let D=l.parent.kind!==215&&Lt(l).value;return D?L7(pb(D)):Cge(l)||PUr(l)||Kv(Sy(l,void 0)||Kr,wms)?K4(C,E):Jt}function wms(l){return!!(l.flags&134217856||l.flags&58982400&&UI(a_(l)||Kr,402653316))}function Tms(l){return AY(l)&&!u4(l.parent)?l.parent.parent:l}function Qre(l,C,E,D){let W=Tms(l);oLe(W,C,!1),Yfs(W,E);let Q=Rl(l,D|1|(E?2:0));E&&E.intraExpressionInferenceSites&&(E.intraExpressionInferenceSites=void 0);let se=UI(Q,2944)&&Wet(Q,Iet(C,l,void 0))?ty(Q):Q;return Hfs(),Cye(),se}function iC(l,C){if(C)return Rl(l,C);let E=Uo(l);if(!E.resolvedType){let D=np,W=Wv;np=F_,Wv=void 0,E.resolvedType=Rl(l,C),Wv=W,np=D}return E.resolvedType}function OUr(l){return l=jA(l,!0),l.kind===216||l.kind===234||f4(l)}function Ige(l,C,E){let D=nee(l);if(so(l)){let Q=Ile(l);if(Q)return dOt(D,Q,C)}let W=wOt(D)||(E?Qre(D,E,void 0,C||0):iC(D,C));return Jc(l)&&l.name.kind===207&&aA(W)&&!W.target.hasRestElement&&uL(W)Wet(l,D))}if(C.flags&58982400){let E=a_(C)||Kr;return UI(E,4)&&UI(l,128)||UI(E,8)&&UI(l,256)||UI(E,64)&&UI(l,2048)||UI(E,4096)&&UI(l,8192)||Wet(l,E)}return!!(C.flags&406847616&&UI(l,128)||C.flags&256&&UI(l,256)||C.flags&2048&&UI(l,2048)||C.flags&512&&UI(l,512)||C.flags&8192&&UI(l,8192))}return!1}function Cge(l){let C=l.parent;return DE(C)&&E2(C.type)||f4(C)&&E2(Wle(C))||AOt(l)&&X4(Sy(l,0))||(FC(C)||If(C)||ph(C))&&Cge(C)||(KC(C)||G_(C)||Mb(C))&&Cge(C.parent)}function mge(l,C,E){let D=Rl(l,C,E);return Cge(l)||RRe(l)?ty(D):OUr(l)?D:tPt(D,Iet(Sy(l,void 0),l,void 0))}function MUr(l,C){return l.name.kind===167&&KN(l.name),mge(l.initializer,C)}function QUr(l,C){p8r(l),l.name.kind===167&&KN(l.name);let E=GUr(l,C);return YUr(l,E,C)}function YUr(l,C,E){if(E&&E&10){let D=_ye(C,0,!0),W=_ye(C,1,!0),Q=D||W;if(Q&&Q.typeParameters){let se=nO(l,2);if(se){let Ee=_ye(aF(se),D?0:1,!1);if(Ee&&!Ee.typeParameters){if(E&8)return HUr(l,E),hf;let Ve=eH(l),Oe=Ve.signature&&Sd(Ve.signature),ot=Oe&&eUr(Oe);if(ot&&!ot.typeParameters&&!he(Ve.inferences,Yre)){let Wt=kms(Ve,Q.typeParameters),Nt=i3t(Q,Wt),Mr=Ot(Ve.inferences,ln=>cPt(ln.typeParameter));if(iPt(Nt,Ee,(ln,hn)=>{lF(Mr,ln,hn,0,!0)}),lr(Mr,Yre)&&(sPt(Nt,Ee,(ln,hn)=>{lF(Mr,ln,hn)}),!Dms(Ve.inferences,Mr)))return xms(Ve.inferences,Mr),Ve.inferredTypeParameters=vi(Ve.inferredTypeParameters,Wt),U4(Nt)}return U4(tUr(Q,Ee,Ve),Fr(PG,Wt=>Wt&&Ot(Wt.inferences,Nt=>Nt.typeParameter)).slice())}}}}return C}function HUr(l,C){if(C&2){let E=eH(l);E.flags|=4}}function Yre(l){return!!(l.candidates||l.contraCandidates)}function Rms(l){return!!(l.candidates||l.contraCandidates||b5r(l.typeParameter))}function Dms(l,C){for(let E=0;EE.symbol.escapedName===C)}function Gms(l,C){let E=C.length;for(;E>1&&C.charCodeAt(E-1)>=48&&C.charCodeAt(E-1)<=57;)E--;let D=C.slice(0,E);for(let W=1;;W++){let Q=D+W;if(!SOt(l,Q))return Q}}function XUr(l){let C=lJ(l);if(C&&!C.typeParameters)return Sd(C)}function Fms(l){let C=Rl(l.expression),E=lye(C,l.expression),D=XUr(C);return D&&K$e(D,l,E!==C)}function l_(l){let C=wOt(l);if(C)return C;if(l.flags&268435456&&Wv){let W=Wv[sd(l)];if(W)return W}let E=HZ,D=Rl(l,64);if(HZ!==E){let W=Wv||(Wv=[]);W[sd(l)]=D,rxe(l,l.flags|268435456)}return D}function wOt(l){let C=jA(l,!0);if(f4(C)){let E=Wle(C);if(!E2(E))return Lc(E)}if(C=jA(l),Ob(C)){let E=wOt(C.expression);return E?gJ(E):void 0}if(cu(C)&&C.expression.kind!==108&&!Q0(C,!0)&&!pUr(C))return uG(C)?Fms(C):XUr(Pre(C.expression));if(DE(C)&&!E2(C.type))return Lc(C.type);if(Sv(l)||IQ(l))return Rl(l)}function SLe(l){let C=Uo(l);if(C.contextFreeType)return C.contextFreeType;oLe(l,Qt,!1);let E=C.contextFreeType=Rl(l,4);return Cye(),E}function Rl(l,C,E){var D,W;(D=Mi)==null||D.push(Mi.Phase.Check,"checkExpression",{kind:l.kind,pos:l.pos,end:l.end,path:l.tracingPath});let Q=ue;ue=l,M=0;let se=Vms(l,C,E),Ee=YUr(l,se,C);return Let(Ee)&&Zms(l,Ee),ue=Q,(W=Mi)==null||W.pop(),Ee}function Zms(l,C){if(l.parent.kind===211&&l.parent.expression===l||l.parent.kind===212&&l.parent.expression===l||(l.kind===80||l.kind===166)&&ttt(l)||l.parent.kind===186&&l.parent.exprName===l||l.parent.kind===281||fr(l,Z.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),ZE(Ne)){w.assert(!!(C.symbol.flags&128));let D=C.symbol.valueDeclaration,W=n.getRedirectReferenceForResolutionFromSourceOfProject(ls(D).resolvedPath);D.flags&33554432&&!DZ(l)&&(!W||!uV(W.commandLine.options))&&fr(l,Z.Cannot_access_ambient_const_enums_when_0_is_enabled,Pt)}}function Lms(l,C){if(hy(l)){if(_he(l))return dOt(l.expression,yhe(l),C);if(f4(l))return mUr(l,C)}return Rl(l.expression,C)}function Vms(l,C,E){let D=l.kind;if(d)switch(D){case 231:case 218:case 219:d.throwIfCancellationRequested()}switch(D){case 80:return dfs(l,C);case 81:return kIs(l);case 110:return iLe(l);case 108:return det(l);case 106:return Re;case 15:case 11:return dPt(l)?ti:L7(pb(l.text));case 9:return _8r(l),L7(dw(+l.text));case 10:return Pys(l),L7(R$e({negative:!1,base10Value:r4(l.text)}));case 112:return Mn;case 97:return dn;case 228:return Sms(l);case 14:return iIs(l);case 209:return EJr(l,C,E);case 210:return gIs(l,C);case 211:return Eet(l,C);case 166:return WJr(l,C);case 212:return UIs(l,C);case 213:if(l.expression.kind===102)return SCs(l);case 214:return vCs(l,C);case 215:return wCs(l);case 217:return Lms(l,C);case 231:return S_s(l);case 218:case 219:return GUr(l,C);case 221:return lms(l);case 216:case 234:return TCs(l,C);case 235:return DCs(l);case 233:return _Ur(l);case 238:return xCs(l);case 236:return kCs(l);case 220:return ams(l);case 222:return ums(l);case 223:return gms(l);case 224:return Ams(l);case 225:return dms(l);case 226:return ht(l,C);case 227:return vms(l,C);case 230:return sIs(l,C);case 232:return Pe;case 229:return Bms(l);case 237:return oIs(l);case 294:return SIs(l,C);case 284:return fIs(l,C);case 285:return dIs(l,C);case 288:return IIs(l);case 292:return mIs(l,C);case 286:w.fail("Shouldn't ever directly check a JsxOpeningElement")}return cr}function JUr(l){rk(l),l.expression&&Zh(l.expression,Z.Type_expected),Ug(l.constraint),Ug(l.default);let C=QY(Mo(l));a_(C),lgs(C)||fr(l.default,Z.Type_parameter_0_has_a_circular_default,Xs(C));let E=By(C),D=J4(C);E&&D&&h0(D,JE(al(E,zY(C,D)),D),l.default,Z.Type_0_does_not_satisfy_the_constraint_1),Y7(l),u(()=>Ege(l.name,Z.Type_parameter_name_cannot_be_0))}function Wms(l){var C,E;if(HI(l.parent)||Sa(l.parent)||Wf(l.parent)){let D=QY(Mo(l)),W=j3t(D)&24576;if(W){let Q=Mo(l.parent);if(Wf(l.parent)&&!(sa(xp(Q))&52))fr(l,Z.Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_types);else if(W===8192||W===16384){(C=Mi)==null||C.push(Mi.Phase.CheckTypes,"checkTypeParameterDeferred",{parent:Gh(xp(Q)),id:Gh(D)});let se=OZe(Q,D,W===16384?rf:Yb),Ee=OZe(Q,D,W===16384?Yb:rf),Ve=D;Ae=D,h0(se,Ee,l,Z.Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation),Ae=Ve,(E=Mi)==null||E.pop()}}}}function UUr(l){rk(l),DLe(l);let C=Wb(l);ba(l,31)&&(C.kind===176&&xE(C.body)||fr(l,Z.A_parameter_property_is_only_allowed_in_a_constructor_implementation),C.kind===176&&sr(l.name)&&l.name.escapedText==="constructor"&&fr(l.name,Z.constructor_cannot_be_used_as_a_parameter_property_name)),!l.initializer&&QS(l)&&pu(l.name)&&C.body&&fr(l,Z.A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature),l.name&&sr(l.name)&&(l.name.escapedText==="this"||l.name.escapedText==="new")&&(C.parameters.indexOf(l)!==0&&fr(l,Z.A_0_parameter_must_be_the_first_parameter,l.name.escapedText),(C.kind===176||C.kind===180||C.kind===185)&&fr(l,Z.A_constructor_cannot_have_a_this_parameter),C.kind===219&&fr(l,Z.An_arrow_function_cannot_have_a_this_parameter),(C.kind===177||C.kind===178)&&fr(l,Z.get_and_set_accessors_cannot_declare_this_parameters)),l.dotDotDotToken&&!pu(l.name)&&!yg(bT(lo(l.symbol)),hC)&&fr(l,Z.A_rest_parameter_must_be_of_an_array_type)}function Pms(l){let C=Oms(l);if(!C){fr(l,Z.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return}let E=tB(C),D=HB(E);if(!D)return;Ug(l.type);let{parameterName:W}=l;if(D.kind===0||D.kind===2)D$e(W);else if(D.parameterIndex>=0){if(u0(E)&&D.parameterIndex===E.parameters.length-1)fr(W,Z.A_type_predicate_cannot_reference_a_rest_parameter);else if(D.type){let Q=()=>su(void 0,Z.A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type);h0(D.type,lo(E.parameters[D.parameterIndex]),l.type,void 0,Q)}}else if(W){let Q=!1;for(let{name:se}of C.parameters)if(pu(se)&&KUr(se,W,D.parameterName)){Q=!0;break}Q||fr(l.parameterName,Z.Cannot_find_parameter_0,D.parameterName)}}function Oms(l){switch(l.parent.kind){case 219:case 179:case 262:case 218:case 184:case 174:case 173:let C=l.parent;if(l===C.type)return C}}function KUr(l,C,E){for(let D of l.elements){if(ef(D))continue;let W=D.name;if(W.kind===80&&W.escapedText===E)return fr(C,Z.A_type_predicate_cannot_reference_element_0_in_a_binding_pattern,E),!0;if((W.kind===207||W.kind===206)&&KUr(W,C,E))return!0}}function vye(l){l.kind===181?pys(l):(l.kind===184||l.kind===262||l.kind===185||l.kind===179||l.kind===176||l.kind===180)&&ctt(l);let C=YI(l);C&4||((C&3)===3&&Qe<5&&Zm(l,6144),(C&3)===2&&Qe<4&&Zm(l,64),C&3&&Qe<2&&Zm(l,128)),GLe(R1(l)),E_s(l),X(l.parameters,UUr),l.type&&Ug(l.type),u(E);function E(){Phs(l);let D=rb(l),W=D;if(so(l)){let Q=_x(l);if(Q&&Q.typeExpression&&F(Q.typeExpression.type)){let se=lJ(Lc(Q.typeExpression));se&&se.declaration&&(D=rb(se.declaration),W=Q.typeExpression.type)}}if(dt&&!D)switch(l.kind){case 180:fr(l,Z.Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type);break;case 179:fr(l,Z.Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type);break}if(D&&W){let Q=YI(l);if((Q&5)===1){let se=Lc(D);se===oo?fr(W,Z.A_generator_cannot_have_a_void_type_annotation):TOt(se,Q,W)}else(Q&3)===2&&mhs(l,D,W)}l.kind!==181&&l.kind!==317&&nW(l)}}function TOt(l,C,E){let D=nH(0,l,(C&2)!==0)||Qt,W=nH(1,l,(C&2)!==0)||D,Q=nH(2,l,(C&2)!==0)||Kr,se=Fet(D,W,Q,!!(C&2));return h0(se,l,E)}function Mms(l){let C=new Map,E=new Map,D=new Map;for(let Q of l.members)if(Q.kind===176)for(let se of Q.parameters)Zn(se,Q)&&!pu(se.name)&&W(C,se.name,se.name.escapedText,3);else{let se=$u(Q),Ee=Q.name;if(!Ee)continue;let Ve=kc(Ee),Oe=Ve&&se?16:0,ot=Ve?D:se?E:C,Wt=Ee&&lMt(Ee);if(Wt)switch(Q.kind){case 177:W(ot,Ee,Wt,1|Oe);break;case 178:W(ot,Ee,Wt,2|Oe);break;case 172:W(ot,Ee,Wt,3|Oe);break;case 174:W(ot,Ee,Wt,8|Oe);break}}function W(Q,se,Ee,Ve){let Oe=Q.get(Ee);if(Oe)if((Oe&16)!==(Ve&16))fr(se,Z.Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name,Tf(se));else{let ot=!!(Oe&8),Wt=!!(Ve&8);ot||Wt?ot!==Wt&&fr(se,Z.Duplicate_identifier_0,Tf(se)):Oe&Ve&-17?fr(se,Z.Duplicate_identifier_0,Tf(se)):Q.set(Ee,Oe|Ve)}else Q.set(Ee,Ve)}}function Qms(l){for(let C of l.members){let E=C.name;if($u(C)&&E){let W=lMt(E);switch(W){case"name":case"length":case"caller":case"arguments":if(Le)break;case"prototype":let Q=Z.Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1,se=OY(Mo(l));fr(E,Q,W,se);break}}}}function jUr(l){let C=new Map;for(let E of l.members)if(E.kind===171){let D,W=E.name;switch(W.kind){case 11:case 9:D=W.text;break;case 80:D=ao(W);break;default:continue}C.get(D)?(fr(vl(E.symbol.valueDeclaration),Z.Duplicate_identifier_0,D),fr(E.name,Z.Duplicate_identifier_0,D)):C.set(D,!0)}}function NOt(l){if(l.kind===264){let E=Mo(l);if(E.declarations&&E.declarations.length>0&&E.declarations[0]!==l)return}let C=s3t(Mo(l));if(C?.declarations){let E=new Map;for(let D of C.declarations)D.parameters.length===1&&D.parameters[0].type&&sJ(Lc(D.parameters[0].type),W=>{let Q=E.get(Gh(W));Q?Q.declarations.push(D):E.set(Gh(W),{type:W,declarations:[D]})});E.forEach(D=>{if(D.declarations.length>1)for(let W of D.declarations)fr(W,Z.Duplicate_index_signature_for_type_0,Xs(D.type))})}}function zUr(l){!rk(l)&&!Zys(l)&<t(l.name),DLe(l),Pet(l),ba(l,64)&&l.kind===172&&l.initializer&&fr(l,Z.Property_0_cannot_have_an_initializer_because_it_is_marked_abstract,xd(l.name))}function Yms(l){return kc(l.name)&&fr(l,Z.Private_identifiers_are_not_allowed_outside_class_bodies),zUr(l)}function Hms(l){p8r(l)||ltt(l.name),cI(l)&&l.asteriskToken&&sr(l.name)&&ao(l.name)==="constructor"&&fr(l.name,Z.Class_constructor_may_not_be_a_generator),lKr(l),ba(l,64)&&l.kind===174&&l.body&&fr(l,Z.Method_0_cannot_have_an_implementation_because_it_is_marked_abstract,xd(l.name)),kc(l.name)&&!Um(l)&&fr(l,Z.Private_identifiers_are_not_allowed_outside_class_bodies),Pet(l)}function Pet(l){if(kc(l.name)&&(Qe<9||Qe<99||!Le)){for(let C=S2(l);C;C=S2(C))Uo(C).flags|=1048576;if(tp(l.parent)){let C=RPt(l.parent);C&&(Uo(l.name).flags|=32768,Uo(C).flags|=4096)}}}function Xms(l){rk(l),mu(l,Ug)}function Jms(l){vye(l),Gys(l)||Fys(l),Ug(l.body);let C=Mo(l),E=zd(C,l.kind);if(l===E&&Qet(C),wf(l.body))return;u(W);return;function D(Q){return Rh(Q)?!0:Q.kind===172&&!$u(Q)&&!!Q.initializer}function W(){let Q=l.parent;if(rV(Q)){DPt(l.parent,Q);let se=xPt(Q),Ee=cJr(l.body);if(Ee){if(se&&fr(Ee,Z.A_constructor_cannot_contain_a_super_call_when_its_class_extends_null),!je&&(lr(l.parent.members,D)||lr(l.parameters,Oe=>ba(Oe,31))))if(!Ums(Ee,l.body))fr(Ee,Z.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{let Oe;for(let ot of l.body.statements){if(Hf(ot)&&Nf(ZC(ot.expression))){Oe=ot;break}if(qUr(ot))break}Oe===void 0&&fr(l,Z.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 se||fr(l,Z.Constructors_for_derived_classes_must_contain_a_super_call)}}}function Ums(l,C){let E=KR(l.parent);return Hf(E)&&E.parent===C}function qUr(l){return l.kind===108||l.kind===110?!0:LRe(l)?!1:!!mu(l,qUr)}function $Ur(l){sr(l.name)&&ao(l.name)==="constructor"&&Sa(l.parent)&&fr(l.name,Z.Class_constructor_may_not_be_an_accessor),u(C),Ug(l.body),Pet(l);function C(){if(!ctt(l)&&!Eys(l)&<t(l.name),TLe(l),vye(l),l.kind===177&&!(l.flags&33554432)&&xE(l.body)&&l.flags&512&&(l.flags&1024||fr(l.name,Z.A_get_accessor_must_return_a_value)),l.name.kind===167&&KN(l.name),wre(l)){let D=Mo(l),W=zd(D,177),Q=zd(D,178);if(W&&Q&&!(Xre(W)&1)){Uo(W).flags|=1;let se=N_(W),Ee=N_(Q);(se&64)!==(Ee&64)&&(fr(W.name,Z.Accessors_must_both_be_abstract_or_non_abstract),fr(Q.name,Z.Accessors_must_both_be_abstract_or_non_abstract)),(se&4&&!(Ee&6)||se&2&&!(Ee&2))&&(fr(W.name,Z.A_get_accessor_must_be_at_least_as_accessible_as_the_setter),fr(Q.name,Z.A_get_accessor_must_be_at_least_as_accessible_as_the_setter))}}let E=Q0e(Mo(l));l.kind===177&&yOt(l,E)}}function Kms(l){TLe(l)}function jms(l,C,E){return l.typeArguments&&E{let D=ROt(l);D&&eKr(l,D)});let E=Uo(l).resolvedSymbol;E&&lr(E.declarations,D=>zQ(D)&&!!(D.flags&536870912))&&MG(mLe(l),E.declarations,E.escapedName)}}function qms(l){let C=eo(l.parent,m8);if(!C)return;let E=ROt(C);if(!E)return;let D=By(E[C.typeArguments.indexOf(l)]);return D&&al(D,qb(E,Oet(C,E)))}function $ms(l){H5r(l)}function ehs(l){X(l.members,Ug),u(C);function C(){let E=xXr(l);jet(E,E.symbol),NOt(l),jUr(l)}}function ths(l){Ug(l.elementType)}function rhs(l){let C=!1,E=!1;for(let D of l.elements){let W=m3t(D);if(W&8){let Q=Lc(D.type);if(!pL(Q)){fr(D,Z.A_rest_element_type_must_be_an_array_type);break}(UB(Q)||aA(Q)&&Q.target.combinedFlags&4)&&(W|=4)}if(W&4){if(E){qi(D,Z.A_rest_element_cannot_follow_another_rest_element);break}E=!0}else if(W&2){if(E){qi(D,Z.An_optional_element_cannot_follow_a_rest_element);break}C=!0}else if(W&1&&C){qi(D,Z.A_required_element_cannot_follow_an_optional_element);break}}X(l.elements,Ug),Lc(l)}function nhs(l){X(l.types,Ug),Lc(l)}function rKr(l,C){if(!(l.flags&8388608))return l;let E=l.objectType,D=l.indexType,W=jb(E)&&f$e(E)===2?IXr(E,0):JN(E,0),Q=!!$x(E,bt);if(eE(D,se=>yg(se,W)||Q&&R7(se,bt)))return C.kind===212&&Rx(C)&&sa(E)&32&&CD(E)&1&&fr(C,Z.Index_signature_in_type_0_only_permits_reading,Xs(E)),l;if(z4(E)){let se=S$e(D,C);if(se){let Ee=sJ($0(E),Ve=>_g(Ve,se));if(Ee&&L1(Ee)&6)return fr(C,Z.Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter,Sc(se)),cr}}return fr(C,Z.Type_0_cannot_be_used_to_index_type_1,Xs(D),Xs(E)),cr}function ihs(l){Ug(l.objectType),Ug(l.indexType),rKr(SXr(l),l)}function shs(l){ohs(l),Ug(l.typeParameter),Ug(l.nameType),Ug(l.type),l.type||eO(l,Qt);let C=R3t(l),E=cL(C);if(E)h0(E,ki,l.nameType);else{let D=eB(C);h0(D,ki,Kw(l.typeParameter))}}function ohs(l){var C;if((C=l.members)!=null&&C.length)return qi(l.members[0],Z.A_mapped_type_may_not_declare_properties_or_methods)}function ahs(l){D$e(l)}function chs(l){vys(l),Ug(l.type)}function lhs(l){mu(l,Ug)}function uhs(l){Si(l,E=>E.parent&&E.parent.kind===194&&E.parent.extendsType===E)||qi(l,Z.infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type),Ug(l.typeParameter);let C=Mo(l.typeParameter);if(C.declarations&&C.declarations.length>1){let E=ol(C);if(!E.typeParametersChecked){E.typeParametersChecked=!0;let D=QY(C),W=Mae(C,168);if(!NKr(W,[D],Q=>[Q])){let Q=qc(C);for(let se of W)fr(se.name,Z.All_declarations_of_0_must_have_identical_constraints,Q)}}}nW(l)}function ghs(l){for(let C of l.templateSpans){Ug(C.type);let E=Lc(C.type);h0(E,ri,C.type)}Lc(l)}function Ahs(l){Ug(l.argument),l.attributes&&wte(l.attributes,qi),tKr(l)}function dhs(l){l.dotDotDotToken&&l.questionToken&&qi(l,Z.A_tuple_member_cannot_be_both_optional_and_rest),l.type.kind===190&&qi(l.type,Z.A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type),l.type.kind===191&&qi(l.type,Z.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type),Ug(l.type),Lc(l)}function wLe(l){return(nb(l,2)||Rh(l))&&!!(l.flags&33554432)}function Met(l,C){let E=utt(l);if(l.parent.kind!==264&&l.parent.kind!==263&&l.parent.kind!==231&&l.flags&33554432){let D=N8(l);D&&D.flags&128&&!(E&128)&&!(SN(l.parent)&&CC(l.parent.parent)&&v2(l.parent.parent))&&(E|=32),E|=128}return E&C}function Qet(l){u(()=>phs(l))}function phs(l){function C(Yi,Cs){return Cs!==void 0&&Cs.parent===Yi[0].parent?Cs:Yi[0]}function E(Yi,Cs,Ds,zo,ma){if((zo^ma)!==0){let Tg=Met(C(Yi,Cs),Ds);X(Yi,Ou=>{let FA=Met(Ou,Ds)^Tg;FA&32?fr(vl(Ou),Z.Overload_signatures_must_all_be_exported_or_non_exported):FA&128?fr(vl(Ou),Z.Overload_signatures_must_all_be_ambient_or_non_ambient):FA&6?fr(vl(Ou)||Ou,Z.Overload_signatures_must_all_be_public_private_or_protected):FA&64&&fr(vl(Ou),Z.Overload_signatures_must_all_be_abstract_or_non_abstract)})}}function D(Yi,Cs,Ds,zo){if(Ds!==zo){let ma=kQ(C(Yi,Cs));X(Yi,ha=>{kQ(ha)!==ma&&fr(vl(ha),Z.Overload_signatures_must_all_be_optional_or_required)})}}let W=230,Q=0,se=W,Ee=!1,Ve=!0,Oe=!1,ot,Wt,Nt,Mr=l.declarations,ln=(l.flags&16384)!==0;function hn(Yi){if(Yi.name&&wf(Yi.name))return;let Cs=!1,Ds=mu(Yi.parent,ma=>{if(Cs)return ma;Cs=ma===Yi});if(Ds&&Ds.pos===Yi.end&&Ds.kind===Yi.kind){let ma=Ds.name||Ds,ha=Ds.name;if(Yi.name&&ha&&(kc(Yi.name)&&kc(ha)&&Yi.name.escapedText===ha.escapedText||xg(Yi.name)&&xg(ha)&&iF(KN(Yi.name),KN(ha))||VS(Yi.name)&&VS(ha)&&j8(Yi.name)===j8(ha))){if((Yi.kind===174||Yi.kind===173)&&$u(Yi)!==$u(Ds)){let Ou=$u(Yi)?Z.Function_overload_must_be_static:Z.Function_overload_must_not_be_static;fr(ma,Ou)}return}if(xE(Ds.body)){fr(ma,Z.Function_implementation_name_must_be_0,xd(Yi.name));return}}let zo=Yi.name||Yi;ln?fr(zo,Z.Constructor_implementation_is_missing):ba(Yi,64)?fr(zo,Z.All_declarations_of_an_abstract_method_must_be_consecutive):fr(zo,Z.Function_implementation_is_missing_or_not_immediately_following_the_declaration)}let mi=!1,Ti=!1,ks=!1,Wo=[];if(Mr)for(let Yi of Mr){let Cs=Yi,Ds=Cs.flags&33554432,zo=Cs.parent&&(Cs.parent.kind===264||Cs.parent.kind===187)||Ds;if(zo&&(Nt=void 0),(Cs.kind===263||Cs.kind===231)&&!Ds&&(ks=!0),Cs.kind===262||Cs.kind===174||Cs.kind===173||Cs.kind===176){Wo.push(Cs);let ma=Met(Cs,W);Q|=ma,se&=ma,Ee=Ee||kQ(Cs),Ve=Ve&&kQ(Cs);let ha=xE(Cs.body);ha&&ot?ln?Ti=!0:mi=!0:Nt?.parent===Cs.parent&&Nt.end!==Cs.pos&&hn(Nt),ha?ot||(ot=Cs):Oe=!0,Nt=Cs,zo||(Wt=Cs)}so(Yi)&&$l(Yi)&&Yi.jsDoc&&(Oe=O(pme(Yi))>0)}if(Ti&&X(Wo,Yi=>{fr(Yi,Z.Multiple_constructor_implementations_are_not_allowed)}),mi&&X(Wo,Yi=>{fr(vl(Yi)||Yi,Z.Duplicate_function_implementation)}),ks&&!ln&&l.flags&16&&Mr){let Yi=Gt(Mr,Cs=>Cs.kind===263).map(Cs=>Us(Cs,Z.Consider_adding_a_declare_modifier_to_this_class));X(Mr,Cs=>{let Ds=Cs.kind===263?Z.Class_declaration_cannot_implement_overload_list_for_0:Cs.kind===262?Z.Function_with_bodies_can_only_merge_with_classes_that_are_ambient:void 0;Ds&&eg(fr(vl(Cs)||Cs,Ds,df(l)),...Yi)})}if(Wt&&!Wt.body&&!ba(Wt,64)&&!Wt.questionToken&&hn(Wt),Oe&&(Mr&&(E(Mr,ot,W,Q,se),D(Mr,ot,Ee,Ve)),ot)){let Yi=XY(l),Cs=tB(ot);for(let Ds of Yi)if(!wds(Cs,Ds)){let zo=Ds.declaration&&xG(Ds.declaration)?Ds.declaration.parent.tagName:Ds.declaration;eg(fr(zo,Z.This_overload_signature_is_not_compatible_with_its_implementation_signature),Us(ot,Z.The_implementation_signature_is_declared_here));break}}}function Sye(l){u(()=>fhs(l))}function fhs(l){let C=l.localSymbol;if(!C&&(C=Mo(l),!C.exportSymbol)||zd(C,l.kind)!==l)return;let E=0,D=0,W=0;for(let Oe of C.declarations){let ot=Ve(Oe),Wt=Met(Oe,2080);Wt&32?Wt&2048?W|=ot:E|=ot:D|=ot}let Q=E|D,se=E&D,Ee=W&Q;if(se||Ee)for(let Oe of C.declarations){let ot=Ve(Oe),Wt=vl(Oe);ot&Ee?fr(Wt,Z.Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead,xd(Wt)):ot&se&&fr(Wt,Z.Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local,xd(Wt))}function Ve(Oe){let ot=Oe;switch(ot.kind){case 264:case 265:case 346:case 338:case 340:return 2;case 267:return Yf(ot)||FG(ot)!==0?5:4;case 263:case 266:case 306:return 3;case 307:return 7;case 277:case 226:let Wt=ot,Nt=tf(Wt)?Wt.expression:Wt.right;if(!cp(Nt))return 1;ot=Nt;case 271:case 274:case 273:let Mr=0,ln=qm(Mo(ot));return X(ln.declarations,hn=>{Mr|=Ve(hn)}),Mr;case 260:case 208:case 262:case 276:case 80:return 1;case 173:case 171:return 2;default:return w.failBadSyntaxKind(ot)}}}function hge(l,C,E,...D){let W=wye(l,C);return W&&gJ(W,C,E,...D)}function wye(l,C,E){if(vd(l))return;let D=l;if(D.promisedTypeOfPromise)return D.promisedTypeOfPromise;if(HV(l,NZe(!1)))return D.promisedTypeOfPromise=of(l)[0];if(Bye(mD(l),402915324))return;let W=ZI(l,"then");if(vd(W))return;let Q=W?Pu(W,0):v;if(Q.length===0){C&&fr(C,Z.A_promise_must_have_a_then_method);return}let se,Ee;for(let ot of Q){let Wt=UP(ot);Wt&&Wt!==oo&&!UN(l,Wt,LN)?se=Wt:Ee=Hr(Ee,ot)}if(!Ee){w.assertIsDefined(se),E&&(E.value=se),C&&fr(C,Z.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1,Xs(l),Xs(se));return}let Ve=Uv(Ta(Ot(Ee,IOt)),2097152);if(vd(Ve))return;let Oe=Pu(Ve,0);if(Oe.length===0){C&&fr(C,Z.The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback);return}return D.promisedTypeOfPromise=Ta(Ot(Oe,IOt),2)}function Tye(l,C,E,D,...W){return(C?gJ(l,E,D,...W):fL(l,E,D,...W))||cr}function nKr(l){if(Bye(mD(l),402915324))return!1;let C=ZI(l,"then");return!!C&&Pu(Uv(C,2097152),0).length>0}function Yet(l){var C;if(l.flags&16777216){let E=C3t(!1);return!!E&&l.aliasSymbol===E&&((C=l.aliasTypeArguments)==null?void 0:C.length)===1}return!1}function _ge(l){return l.flags&1048576?Of(l,_ge):Yet(l)?l.aliasTypeArguments[0]:l}function iKr(l){if(vd(l)||Yet(l))return!1;if(z4(l)){let C=a_(l);if(C?C.flags&3||sF(C)||Kv(C,nKr):UI(l,8650752))return!0}return!1}function Ihs(l){let C=C3t(!0);if(C)return Dre(C,[_ge(l)])}function Chs(l){return iKr(l)?Ihs(l)??l:(w.assert(Yet(l)||wye(l)===void 0,"type provided should not be a non-generic 'promise'-like."),l)}function gJ(l,C,E,...D){let W=fL(l,C,E,...D);return W&&Chs(W)}function fL(l,C,E,...D){if(vd(l)||Yet(l))return l;let W=l;if(W.awaitedTypeOfType)return W.awaitedTypeOfType;if(l.flags&1048576){if(JZ.lastIndexOf(l.id)>=0){C&&fr(C,Z.Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method);return}let Ee=C?Oe=>fL(Oe,C,E,...D):fL;JZ.push(l.id);let Ve=Of(l,Ee);return JZ.pop(),W.awaitedTypeOfType=Ve}if(iKr(l))return W.awaitedTypeOfType=l;let Q={value:void 0},se=wye(l,void 0,Q);if(se){if(l.id===se.id||JZ.lastIndexOf(se.id)>=0){C&&fr(C,Z.Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method);return}JZ.push(l.id);let Ee=fL(se,C,E,...D);return JZ.pop(),Ee?W.awaitedTypeOfType=Ee:void 0}if(nKr(l)){if(C){w.assertIsDefined(E);let Ee;Q.value&&(Ee=su(Ee,Z.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1,Xs(l),Xs(Q.value))),Ee=su(Ee,E,...D),UA.add(GS(ls(C),C,Ee))}return}return W.awaitedTypeOfType=l}function mhs(l,C,E){let D=Lc(C);if(Qe>=2){if(OA(D))return;let Q=NZe(!0);if(Q!==Jg&&!HV(D,Q)){W(Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0,C,E,Xs(fL(D)||oo));return}}else{if(M7(l,5),OA(D))return;let Q=z$(C);if(Q===void 0){W(Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,C,E,Xs(D));return}let se=FI(Q,111551,!0),Ee=se?lo(se):cr;if(OA(Ee)){Q.kind===80&&Q.escapedText==="Promise"&&Bre(D)===NZe(!1)?fr(E,Z.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):W(Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,C,E,t0(Q));return}let Ve=Lgs(!0);if(Ve===Zc){W(Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,C,E,t0(Q));return}let Oe=Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value;if(!h0(Ee,Ve,E,Oe,()=>C===E?void 0:su(void 0,Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type)))return;let Wt=Q&&ib(Q),Nt=Z_(l.locals,Wt.escapedText,111551);if(Nt){fr(Nt.valueDeclaration,Z.Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions,ao(Wt),t0(Q));return}}Tye(D,!1,l,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);function W(Q,se,Ee,Ve){if(se===Ee)fr(Ee,Q,Ve);else{let Oe=fr(Ee,Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type);eg(Oe,Us(se,Q,Ve))}}}function hhs(l){let C=ls(l);if(!iW(C)){let E=l.expression;if(FC(E))return!1;let D=!0,W;for(;;){if(x_(E)||iT(E)){E=E.expression;continue}if(cu(E)){D||(W=E),E.questionDotToken&&(W=E.questionDotToken),E=E.expression,D=!1;continue}if(Io(E)){E.questionDotToken&&(W=E.questionDotToken),E=E.expression,D=!1;continue}sr(E)||(W=E);break}if(W)return eg(fr(l.expression,Z.Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator),Us(W,Z.Invalid_syntax_in_decorator)),!0}return!1}function _hs(l){hhs(l);let C=Mre(l);ket(C,l);let E=Sd(C);if(E.flags&1)return;let D=hOt(l);if(!D?.resolvedReturnType)return;let W,Q=D.resolvedReturnType;switch(l.parent.kind){case 263:case 231:W=Z.Decorator_function_return_type_0_is_not_assignable_to_type_1;break;case 172:if(!lt){W=Z.Decorator_function_return_type_0_is_not_assignable_to_type_1;break}case 169:W=Z.Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any;break;case 174:case 177:case 178:W=Z.Decorator_function_return_type_0_is_not_assignable_to_type_1;break;default:return w.failBadSyntaxKind(l.parent)}h0(E,Q,l.expression,W)}function Nye(l,C,E,D,W,Q=E.length,se=0){let Ee=_e.createFunctionTypeNode(void 0,v,_e.createKeywordTypeNode(133));return qx(Ee,l,C,E,D,W,Q,se)}function xOt(l,C,E,D,W,Q,se){let Ee=Nye(l,C,E,D,W,Q,se);return U4(Ee)}function sKr(l){return xOt(void 0,void 0,v,l)}function oKr(l){let C=sw("value",l);return xOt(void 0,void 0,[C],oo)}function kOt(l){if(l)switch(l.kind){case 193:case 192:return aKr(l.types);case 194:return aKr([l.trueType,l.falseType]);case 196:case 202:return kOt(l.type);case 183:return l.typeName}}function aKr(l){let C;for(let E of l){for(;E.kind===196||E.kind===202;)E=E.type;if(E.kind===146||!nt&&(E.kind===201&&E.literal.kind===106||E.kind===157))continue;let D=kOt(E);if(!D)return;if(C){if(!sr(C)||!sr(D)||C.escapedText!==D.escapedText)return}else C=D}return C}function Het(l){let C=fC(l);return Rv(l)?sme(C):C}function TLe(l){if(!pY(l)||!FE(l)||!l.modifiers||!q$(lt,l,l.parent,l.parent.parent))return;let C=be(l.modifiers,GC);if(C){lt?(Zm(C,8),l.kind===169&&Zm(C,32)):Qe<99&&(Zm(C,8),bc(l)?l.name?RKr(l)&&Zm(C,4194304):Zm(C,4194304):tp(l)||(kc(l.name)&&(cI(l)||jw(l)||t_(l))&&Zm(C,4194304),xg(l.name)&&Zm(C,8388608))),M7(l,8);for(let E of l.modifiers)GC(E)&&_hs(E)}}function yhs(l){u(C);function C(){lKr(l),sMt(l),yge(l,l.name)}}function bhs(l){l.typeExpression||fr(l.name,Z.JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags),l.name&&Ege(l.name,Z.Type_alias_name_cannot_be_0),Ug(l.typeExpression),GLe(R1(l))}function Ehs(l){Ug(l.constraint);for(let C of l.typeParameters)Ug(C)}function Bhs(l){Ug(l.typeExpression)}function vhs(l){Ug(l.typeExpression);let C=SZ(l);if(C){let E=o8(C,jxe);if(O(E)>1)for(let D=1;D0),E.length>1&&fr(E[1],Z.Class_declarations_cannot_have_more_than_one_augments_or_extends_tag);let D=cKr(l.class.expression),W=rV(C);if(W){let Q=cKr(W.expression);Q&&D.escapedText!==Q.escapedText&&fr(D,Z.JSDoc_0_1_does_not_match_the_extends_2_clause,ao(l.tagName),ao(D),ao(Q))}}function Ghs(l){let C=eV(l);C&&Rh(C)&&fr(l,Z.An_accessibility_modifier_cannot_be_used_with_a_private_identifier)}function cKr(l){switch(l.kind){case 80:return l;case 211:return l.name;default:return}}function lKr(l){var C;TLe(l),vye(l);let E=YI(l);if(l.name&&l.name.kind===167&&KN(l.name),wre(l)){let Q=Mo(l),se=l.localSymbol||Q,Ee=(C=se.declarations)==null?void 0:C.find(Ve=>Ve.kind===l.kind&&!(Ve.flags&524288));l===Ee&&Qet(se),Q.parent&&Qet(Q)}let D=l.kind===173?void 0:l.body;if(Ug(D),yOt(l,Nre(l)),u(W),so(l)){let Q=_x(l);Q&&Q.typeExpression&&!WPt(Lc(Q.typeExpression),l)&&fr(Q.typeExpression.type,Z.The_type_of_a_function_declaration_must_match_the_function_s_signature)}function W(){rb(l)||(wf(D)&&!wLe(l)&&eO(l,Qt),E&1&&xE(D)&&Sd(tB(l)))}}function nW(l){u(C);function C(){let E=ls(l),D=J2.get(E.path);D||(D=[],J2.set(E.path,D)),D.push(l)}}function uKr(l,C){for(let E of l)switch(E.kind){case 263:case 231:Fhs(E,C),GOt(E,C);break;case 307:case 267:case 241:case 269:case 248:case 249:case 250:dKr(E,C);break;case 176:case 218:case 262:case 219:case 174:case 177:case 178:E.body&&dKr(E,C),GOt(E,C);break;case 173:case 179:case 180:case 184:case 185:case 265:case 264:GOt(E,C);break;case 195:Zhs(E,C);break;default:w.assertNever(E,"Node should not have been registered for unused identifiers check")}}function gKr(l,C,E){let D=vl(l)||l,W=zQ(l)?Z._0_is_declared_but_never_used:Z._0_is_declared_but_its_value_is_never_read;E(l,0,Us(D,W,C))}function Rye(l){return sr(l)&&ao(l).charCodeAt(0)===95}function Fhs(l,C){for(let E of l.members)switch(E.kind){case 174:case 172:case 177:case 178:if(E.kind===178&&E.symbol.flags&32768)break;let D=Mo(E);!D.isReferenced&&(nb(E,2)||Sf(E)&&kc(E.name))&&!(E.flags&33554432)&&C(E,0,Us(E.name,Z._0_is_declared_but_its_value_is_never_read,qc(D)));break;case 176:for(let W of E.parameters)!W.symbol.isReferenced&&ba(W,2)&&C(W,0,Us(W.name,Z.Property_0_is_declared_but_its_value_is_never_read,df(W.symbol)));break;case 181:case 240:case 175:break;default:w.fail("Unexpected class member")}}function Zhs(l,C){let{typeParameter:E}=l;FOt(E)&&C(l,1,Us(l,Z._0_is_declared_but_its_value_is_never_read,ao(E.name)))}function GOt(l,C){let E=Mo(l).declarations;if(!E||Na(E)!==l)return;let D=R1(l),W=new Set;for(let Q of D){if(!FOt(Q))continue;let se=ao(Q.name),{parent:Ee}=Q;if(Ee.kind!==195&&Ee.typeParameters.every(FOt)){if(Zi(W,Ee)){let Ve=ls(Ee),Oe=Zv(Ee)?phe(Ee):fhe(Ve,Ee.typeParameters),Wt=Ee.typeParameters.length===1?[Z._0_is_declared_but_its_value_is_never_read,se]:[Z.All_type_parameters_are_unused];C(Q,1,Im(Ve,Oe.pos,Oe.end-Oe.pos,...Wt))}}else C(Q,1,Us(Q,Z._0_is_declared_but_its_value_is_never_read,se))}}function FOt(l){return!(GA(l.symbol).isReferenced&262144)&&!Rye(l.name)}function NLe(l,C,E,D){let W=String(D(C)),Q=l.get(W);Q?Q[1].push(E):l.set(W,[C,[E]])}function AKr(l){return eo(WS(l),Jc)}function Lhs(l){return ml(l)?Vg(l.parent)?!!(l.propertyName&&Rye(l.name)):Rye(l.name):Yf(l)||(zs(l)&&yZ(l.parent.parent)||pKr(l))&&Rye(l.name)}function dKr(l,C){let E=new Map,D=new Map,W=new Map;l.locals.forEach(Q=>{if(!(Q.flags&262144?!(Q.flags&3&&!(Q.isReferenced&3)):Q.isReferenced||Q.exportSymbol)&&Q.declarations){for(let se of Q.declarations)if(!Lhs(se))if(pKr(se))NLe(E,Whs(se),se,sd);else if(ml(se)&&Vg(se.parent)){let Ee=Na(se.parent.elements);(se===Ee||!Na(se.parent.elements).dotDotDotToken)&&NLe(D,se.parent,se,sd)}else if(zs(se)){let Ee=sH(se)&7,Ve=vl(se);(Ee!==4&&Ee!==6||!Ve||!Rye(Ve))&&NLe(W,se.parent,se,sd)}else{let Ee=Q.valueDeclaration&&AKr(Q.valueDeclaration),Ve=Q.valueDeclaration&&vl(Q.valueDeclaration);Ee&&Ve?!Zn(Ee,Ee.parent)&&!sV(Ee)&&!Rye(Ve)&&(ml(se)&&Vu(se.parent)?NLe(D,se.parent,se,sd):C(Ee,1,Us(Ve,Z._0_is_declared_but_its_value_is_never_read,df(Q)))):gKr(se,df(Q),C)}}}),E.forEach(([Q,se])=>{let Ee=Q.parent;if((Q.name?1:0)+(Q.namedBindings?Q.namedBindings.kind===274?1:Q.namedBindings.elements.length:0)===se.length)C(Ee,0,se.length===1?Us(Ee,Z._0_is_declared_but_its_value_is_never_read,ao($s(se).name)):Us(Ee,Z.All_imports_in_import_declaration_are_unused));else for(let Oe of se)gKr(Oe,ao(Oe.name),C)}),D.forEach(([Q,se])=>{let Ee=AKr(Q.parent)?1:0;if(Q.elements.length===se.length)se.length===1&&Q.parent.kind===260&&Q.parent.parent.kind===261?NLe(W,Q.parent.parent,Q.parent,sd):C(Q,Ee,se.length===1?Us(Q,Z._0_is_declared_but_its_value_is_never_read,RLe($s(se).name)):Us(Q,Z.All_destructured_elements_are_unused));else for(let Ve of se)C(Ve,Ee,Us(Ve,Z._0_is_declared_but_its_value_is_never_read,RLe(Ve.name)))}),W.forEach(([Q,se])=>{if(Q.declarations.length===se.length)C(Q,0,se.length===1?Us($s(se).name,Z._0_is_declared_but_its_value_is_never_read,RLe($s(se).name)):Us(Q.parent.kind===243?Q.parent:Q,Z.All_variables_are_unused));else for(let Ee of se)C(Ee,0,Us(Ee,Z._0_is_declared_but_its_value_is_never_read,RLe(Ee.name)))})}function Vhs(){var l;for(let C of T4)if(!((l=Mo(C))!=null&&l.isReferenced)){let E=fA(C);w.assert(wZ(E),"Only parameter declaration should be checked here");let D=Us(C.name,Z._0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation,xd(C.name),xd(C.propertyName));E.type||eg(D,Im(ls(E),E.end,1,Z.We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here,xd(C.propertyName))),UA.add(D)}}function RLe(l){switch(l.kind){case 80:return ao(l);case 207:case 206:return RLe(ps($s(l.elements),ml).name);default:return w.assertNever(l)}}function pKr(l){return l.kind===273||l.kind===276||l.kind===274}function Whs(l){return l.kind===273?l:l.kind===274?l.parent:l.parent.parent}function Xet(l){if(l.kind===241&&gF(l),m$(l)){let C=nw;X(l.statements,Ug),nw=C}else X(l.statements,Ug);l.locals&&nW(l)}function Phs(l){Qe>=2||!S$(l)||l.flags&33554432||wf(l.body)||X(l.parameters,C=>{C.name&&!pu(C.name)&&C.name.escapedText===jt.escapedName&&fT("noEmit",C,Z.Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters)})}function Dye(l,C,E){if(C?.escapedText!==E||l.kind===172||l.kind===171||l.kind===174||l.kind===173||l.kind===177||l.kind===178||l.kind===303||l.flags&33554432||(sT(l)||Cm(l)||_y(l))&&Ex(l))return!1;let D=WS(l);return!(Jc(D)&&wf(D.parent.body))}function Ohs(l){Si(l,C=>Xre(C)&4?(l.kind!==80?fr(vl(l),Z.Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference):fr(l,Z.Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference),!0):!1)}function Mhs(l){Si(l,C=>Xre(C)&8?(l.kind!==80?fr(vl(l),Z.Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference):fr(l,Z.Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference),!0):!1)}function Qhs(l,C){if(De>=5&&!(De>=100&&ls(l).impliedNodeFormat===1)||!C||!Dye(l,C,"require")&&!Dye(l,C,"exports")||CC(l)&&FG(l)!==1)return;let E=Y4(l);E.kind===307&&ia(E)&&fT("noEmit",C,Z.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module,xd(C),xd(C))}function Yhs(l,C){if(!C||Qe>=4||!Dye(l,C,"Promise")||CC(l)&&FG(l)!==1)return;let E=Y4(l);E.kind===307&&ia(E)&&E.flags&4096&&fT("noEmit",C,Z.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions,xd(C),xd(C))}function Hhs(l,C){Qe<=8&&(Dye(l,C,"WeakMap")||Dye(l,C,"WeakSet"))&&bP.push(l)}function Xhs(l){let C=S2(l);Xre(C)&1048576&&(w.assert(Sf(l)&&sr(l.name)&&typeof l.name.escapedText=="string","The target of a WeakMap/WeakSet collision check should be an identifier"),fT("noEmit",l,Z.Compiler_reserves_name_0_when_emitting_private_identifier_downlevel,l.name.escapedText))}function Jhs(l,C){C&&Qe>=2&&Qe<=8&&Dye(l,C,"Reflect")&&EP.push(l)}function Uhs(l){let C=!1;if(tp(l)){for(let E of l.members)if(Xre(E)&2097152){C=!0;break}}else if(WA(l))Xre(l)&2097152&&(C=!0);else{let E=S2(l);E&&Xre(E)&2097152&&(C=!0)}C&&(w.assert(Sf(l)&&sr(l.name),"The target of a Reflect collision check should be an identifier"),fT("noEmit",l,Z.Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializers,xd(l.name),"Reflect"))}function yge(l,C){C&&(Qhs(l,C),Yhs(l,C),Hhs(l,C),Jhs(l,C),Sa(l)?(Ege(C,Z.Class_name_cannot_be_0),l.flags&33554432||b_s(C)):tP(l)&&Ege(C,Z.Enum_name_cannot_be_0))}function Khs(l){if(sH(l)&7||wZ(l))return;let C=Mo(l);if(C.flags&1){if(!sr(l.name))return w.fail();let E=Pi(l,l.name.escapedText,3,void 0,!1);if(E&&E!==C&&E.flags&2&&HPt(E)&7){let D=CG(E.valueDeclaration,261),W=D.parent.kind===243&&D.parent.parent?D.parent.parent:void 0;if(!(W&&(W.kind===241&&$l(W.parent)||W.kind===268||W.kind===267||W.kind===307))){let se=qc(E);fr(l,Z.Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1,se,se)}}}}function xye(l){return l===_r?Qt:l===Hd?rp:l}function DLe(l){var C;if(TLe(l),ml(l)||Ug(l.type),!l.name)return;if(l.name.kind===167&&(KN(l.name),dG(l)&&l.initializer&&iC(l.initializer)),ml(l)){if(l.propertyName&&sr(l.name)&&wZ(l)&&wf(Wb(l).body)){T4.push(l);return}Vg(l.parent)&&l.dotDotDotToken&&Qe<5&&Zm(l,4),l.propertyName&&l.propertyName.kind===167&&KN(l.propertyName);let W=l.parent.parent,Q=l.dotDotDotToken?32:0,se=v7(W,Q),Ee=l.propertyName||l.name;if(se&&!pu(Ee)){let Ve=AL(Ee);if(x2(Ve)){let Oe=k2(Ve),ot=_g(se,Oe);ot&&(dLe(ot,void 0,!1),JPt(l,!!W.initializer&&W.initializer.kind===108,!1,se,ot))}}}if(pu(l.name)&&(l.name.kind===207&&Qe<2&&Ne.downlevelIteration&&Zm(l,512),X(l.name.elements,Ug)),l.initializer&&wZ(l)&&wf(Wb(l).body)){fr(l,Z.A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation);return}if(pu(l.name)){if(mPt(l))return;let W=dG(l)&&l.initializer&&l.parent.parent.kind!==249,Q=!lr(l.name.elements,gm(ef));if(W||Q){let se=me(l);if(W){let Ee=iC(l.initializer);nt&&Q?VJr(Ee,l):$V(Ee,me(l),l,l.initializer)}Q&&(Vu(l.name)?IL(65,se,wn,l):nt&&VJr(se,l))}return}let E=Mo(l);if(E.flags&2097152&&(q9(l)||ORe(l))){qet(l);return}let D=xye(lo(E));if(l===E.valueDeclaration){let W=dG(l)&&nee(l);if(W&&!(so(l)&&tu(W)&&(W.properties.length===0||yG(l.name))&&!!((C=E.exports)!=null&&C.size))&&l.parent.parent.kind!==249){let se=iC(W);$V(se,D,l,W,void 0);let Ee=sH(l)&7;if(Ee===6){let Ve=Xgs(!0),Oe=$5r(!0);if(Ve!==Zc&&Oe!==Zc){let ot=Ta([Ve,Oe,ur,wn]);h0(se,ot,W,Z.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(Ee===4){let Ve=$5r(!0);if(Ve!==Zc){let Oe=Ta([Ve,ur,wn]);h0(se,Oe,W,Z.The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_null_or_undefined)}}}E.declarations&&E.declarations.length>1&&lr(E.declarations,Q=>Q!==l&&TQ(Q)&&!IKr(Q,l))&&fr(l.name,Z.All_declarations_of_0_must_have_identical_modifiers,xd(l.name))}else{let W=xye(me(l));!OA(D)&&!OA(W)&&!iF(D,W)&&!(E.flags&67108864)&&fKr(E.valueDeclaration,D,l,W),dG(l)&&l.initializer&&$V(iC(l.initializer),W,l,l.initializer,void 0),E.valueDeclaration&&!IKr(l,E.valueDeclaration)&&fr(l.name,Z.All_declarations_of_0_must_have_identical_modifiers,xd(l.name))}l.kind!==172&&l.kind!==171&&(Sye(l),(l.kind===260||l.kind===208)&&Khs(l),yge(l,l.name))}function fKr(l,C,E,D){let W=vl(E),Q=E.kind===172||E.kind===171?Z.Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:Z.Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2,se=xd(W),Ee=fr(W,Q,se,Xs(C),Xs(D));l&&eg(Ee,Us(l,Z._0_was_also_declared_here,se))}function IKr(l,C){if(l.kind===169&&C.kind===260||l.kind===260&&C.kind===169)return!0;if(kQ(l)!==kQ(C))return!1;let E=1358;return LQ(l,E)===LQ(C,E)}function jhs(l){var C,E;(C=Mi)==null||C.push(Mi.Phase.Check,"checkVariableDeclaration",{kind:l.kind,pos:l.pos,end:l.end,path:l.tracingPath}),Rys(l),DLe(l),(E=Mi)==null||E.pop()}function zhs(l){return wys(l),DLe(l)}function Jet(l){let C=qy(l)&7;(C===4||C===6)&&Qe<99&&Zm(l,16777216),X(l.declarations,Ug)}function qhs(l){!rk(l)&&!cMt(l.declarationList)&&Dys(l),Jet(l.declarationList)}function $hs(l){gF(l),Rl(l.expression)}function e_s(l){gF(l);let C=bge(l.expression);ZOt(l.expression,C,l.thenStatement),Ug(l.thenStatement),l.thenStatement.kind===242&&fr(l.thenStatement,Z.The_body_of_an_if_statement_cannot_be_the_empty_statement),Ug(l.elseStatement)}function ZOt(l,C,E){if(!nt)return;D(l,E);function D(Q,se){for(Q=jA(Q),W(Q,se);no(Q)&&(Q.operatorToken.kind===57||Q.operatorToken.kind===61);)Q=jA(Q.left),W(Q,se)}function W(Q,se){let Ee=Tee(Q)?jA(Q.right):Q;if(AN(Ee))return;if(Tee(Ee)){D(Ee,se);return}let Ve=Ee===Q?C:bge(Ee);if(Ve.flags&1024&&Io(Ee)&&(Uo(Ee.expression).resolvedSymbol??en).flags&384){fr(Ee,Z.This_condition_will_always_return_0,Ve.value?"true":"false");return}let Oe=Io(Ee)&&OUr(Ee.expression);if(!BT(Ve,4194304)||Oe)return;let ot=Pu(Ve,0),Wt=!!hge(Ve);if(ot.length===0&&!Wt)return;let Nt=sr(Ee)?Ee:Io(Ee)?Ee.name:void 0,Mr=Nt&&jv(Nt);if(!Mr&&!Wt)return;Mr&&no(Q.parent)&&r_s(Q.parent,Mr)||Mr&&se&&t_s(Q,se,Nt,Mr)||(Wt?wP(Ee,!0,Z.This_condition_will_always_return_true_since_this_0_is_always_defined,hre(Ve)):fr(Ee,Z.This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead))}}function t_s(l,C,E,D){return!!mu(C,function W(Q){if(sr(Q)){let se=jv(Q);if(se&&se===D){if(sr(l)||sr(E)&&no(E.parent))return!0;let Ee=E.parent,Ve=Q.parent;for(;Ee&&Ve;){if(sr(Ee)&&sr(Ve)||Ee.kind===110&&Ve.kind===110)return jv(Ee)===jv(Ve);if(Io(Ee)&&Io(Ve)){if(jv(Ee.name)!==jv(Ve.name))return!1;Ve=Ve.expression,Ee=Ee.expression}else if(cu(Ee)&&cu(Ve))Ve=Ve.expression,Ee=Ee.expression;else return!1}}}return mu(Q,W)})}function r_s(l,C){for(;no(l)&&l.operatorToken.kind===56;){if(mu(l.right,function D(W){if(sr(W)){let Q=jv(W);if(Q&&Q===C)return!0}return mu(W,D)}))return!0;l=l.parent}return!1}function n_s(l){gF(l),Ug(l.statement),bge(l.expression)}function i_s(l){gF(l),bge(l.expression),Ug(l.statement)}function LOt(l,C){return l.flags&16384&&fr(C,Z.An_expression_of_type_void_cannot_be_tested_for_truthiness),l}function bge(l,C){return LOt(Rl(l,C),l)}function s_s(l){gF(l)||l.initializer&&l.initializer.kind===261&&cMt(l.initializer),l.initializer&&(l.initializer.kind===261?Jet(l.initializer):Rl(l.initializer)),l.condition&&bge(l.condition),l.incrementor&&Rl(l.incrementor),Ug(l.statement),l.locals&&nW(l)}function o_s(l){d8r(l);let C=K$(l);if(l.awaitModifier?C&&$p(C)?qi(l.awaitModifier,Z.for_await_loops_cannot_be_used_inside_a_class_static_block):(YI(C)&6)===2&&Qe<5&&Zm(l,16384):Ne.downlevelIteration&&Qe<2&&Zm(l,256),l.initializer.kind===261)Jet(l.initializer);else{let E=l.initializer,D=xLe(l);if(E.kind===209||E.kind===210)uJ(E,D||cr);else{let W=Rl(E);Eye(E,Z.The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access,Z.The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access),D&&$V(D,W,E,l.expression)}}Ug(l.statement),l.locals&&nW(l)}function a_s(l){d8r(l);let C=UPt(Rl(l.expression));if(l.initializer.kind===261){let E=l.initializer.declarations[0];E&&pu(E.name)&&fr(E.name,Z.The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern),Jet(l.initializer)}else{let E=l.initializer,D=Rl(E);E.kind===209||E.kind===210?fr(E,Z.The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern):yg(kAs(C),D)?Eye(E,Z.The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access,Z.The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access):fr(E,Z.The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any)}(C===Vi||!c_(C,126091264))&&fr(l.expression,Z.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,Xs(C)),Ug(l.statement),l.locals&&nW(l)}function xLe(l){let C=l.awaitModifier?15:13;return IL(C,Pre(l.expression),wn,l.expression)}function IL(l,C,E,D){return vd(C)?C:VOt(l,C,E,D,!0)||Qt}function VOt(l,C,E,D,W){let Q=(l&2)!==0;if(C===Vi){D&&QOt(D,C,Q);return}let se=Qe>=2,Ee=!se&&Ne.downlevelIteration,Ve=Ne.noUncheckedIndexedAccess&&!!(l&128);if(se||Ee||Q){let Mr=Ket(C,l,se?D:void 0);if(W&&Mr){let ln=l&8?Z.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:l&32?Z.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:l&64?Z.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:l&16?Z.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;ln&&h0(E,Mr.nextType,D,ln)}if(Mr||se)return Ve?pye(Mr&&Mr.yieldType):Mr&&Mr.yieldType}let Oe=C,ot=!1;if(l&4){if(Oe.flags&1048576){let Mr=C.types,ln=Gt(Mr,hn=>!(hn.flags&402653316));ln!==Mr&&(Oe=Ta(ln,2))}else Oe.flags&402653316&&(Oe=Vi);if(ot=Oe!==C,ot&&Oe.flags&131072)return Ve?pye(Jt):Jt}if(!pL(Oe)){if(D){let Mr=!!(l&4)&&!ot,[ln,hn]=Nt(Mr,Ee);wP(D,hn&&!!hge(Oe),ln,Xs(Oe))}return ot?Ve?pye(Jt):Jt:void 0}let Wt=JP(Oe,bt);if(ot&&Wt)return Wt.flags&402653316&&!Ne.noUncheckedIndexedAccess?Jt:Ta(Ve?[Wt,Jt,wn]:[Wt,Jt],2);return l&128?pye(Wt):Wt;function Nt(Mr,ln){var hn;return ln?Mr?[Z.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0]:[Z.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0]:WOt(l,0,C,void 0)?[Z.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher,!1]:c_s((hn=C.symbol)==null?void 0:hn.escapedName)?[Z.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher,!0]:Mr?[Z.Type_0_is_not_an_array_type_or_a_string_type,!0]:[Z.Type_0_is_not_an_array_type,!0]}}function c_s(l){switch(l){case"Float32Array":case"Float64Array":case"Int16Array":case"Int32Array":case"Int8Array":case"NodeList":case"Uint16Array":case"Uint32Array":case"Uint8Array":case"Uint8ClampedArray":return!0}return!1}function WOt(l,C,E,D){if(vd(E))return;let W=Ket(E,l,D);return W&&W[dGr(C)]}function CL(l=Vi,C=Vi,E=Kr){if(l.flags&67359327&&C.flags&180227&&E.flags&180227){let D=Jv([l,C,E]),W=Xo.get(D);return W||(W={yieldType:l,returnType:C,nextType:E},Xo.set(D,W)),W}return{yieldType:l,returnType:C,nextType:E}}function CKr(l){let C,E,D;for(let W of l)if(!(W===void 0||W===fi)){if(W===Jo)return Jo;C=Hr(C,W.yieldType),E=Hr(E,W.returnType),D=Hr(D,W.nextType)}return C||E||D?CL(C&&Ta(C),E&&Ta(E),D&&Pg(D)):fi}function Uet(l,C){return l[C]}function tk(l,C,E){return l[C]=E}function Ket(l,C,E){var D,W;if(vd(l))return Jo;if(!(l.flags&1048576)){let Oe=E?{errors:void 0}:void 0,ot=mKr(l,C,E,Oe);if(ot===fi){if(E){let Wt=QOt(E,l,!!(C&2));Oe?.errors&&eg(Wt,...Oe.errors)}return}else if((D=Oe?.errors)!=null&&D.length)for(let Wt of Oe.errors)UA.add(Wt);return ot}let Q=C&2?"iterationTypesOfAsyncIterable":"iterationTypesOfIterable",se=Uet(l,Q);if(se)return se===fi?void 0:se;let Ee;for(let Oe of l.types){let ot=E?{errors:void 0}:void 0,Wt=mKr(Oe,C,E,ot);if(Wt===fi){if(E){let Nt=QOt(E,l,!!(C&2));ot?.errors&&eg(Nt,...ot.errors)}tk(l,Q,fi);return}else if((W=ot?.errors)!=null&&W.length)for(let Nt of ot.errors)UA.add(Nt);Ee=Hr(Ee,Wt)}let Ve=Ee?CKr(Ee):fi;return tk(l,Q,Ve),Ve===fi?void 0:Ve}function POt(l,C){if(l===fi)return fi;if(l===Jo)return Jo;let{yieldType:E,returnType:D,nextType:W}=l;return C&&C3t(!0),CL(gJ(E,C)||Qt,gJ(D,C)||Qt,W)}function mKr(l,C,E,D){if(vd(l))return Jo;let W=!1;if(C&2){let Q=OOt(l,Wg)||_Kr(l,Wg);if(Q)if(Q===fi&&E)W=!0;else return C&8?POt(Q,E):Q}if(C&1){let Q=OOt(l,nf)||_Kr(l,nf);if(Q)if(Q===fi&&E)W=!0;else if(C&2){if(Q!==fi)return Q=POt(Q,E),W?Q:tk(l,"iterationTypesOfAsyncIterable",Q)}else return Q}if(C&2){let Q=MOt(l,Wg,E,D,W);if(Q!==fi)return Q}if(C&1){let Q=MOt(l,nf,E,D,W);if(Q!==fi)return C&2?(Q=POt(Q,E),W?Q:tk(l,"iterationTypesOfAsyncIterable",Q)):Q}return fi}function OOt(l,C){return Uet(l,C.iterableCacheKey)}function hKr(l,C){let E=OOt(l,C)||MOt(l,C,void 0,void 0,!1);return E===fi?ic:E}function _Kr(l,C){let E;if(HV(l,E=C.getGlobalIterableType(!1))||HV(l,E=C.getGlobalIterableIteratorType(!1))){let[D]=of(l),{returnType:W,nextType:Q}=hKr(E,C);return tk(l,C.iterableCacheKey,CL(C.resolveIterationType(D,void 0)||D,C.resolveIterationType(W,void 0)||W,Q))}if(HV(l,C.getGlobalGeneratorType(!1))){let[D,W,Q]=of(l);return tk(l,C.iterableCacheKey,CL(C.resolveIterationType(D,void 0)||D,C.resolveIterationType(W,void 0)||W,Q))}}function yKr(l){let C=j5r(!1),E=C&&ZI(lo(C),Rd(l));return E&&x2(E)?k2(E):`__@${l}`}function MOt(l,C,E,D,W){let Q=_g(l,yKr(C.iteratorSymbolName)),se=Q&&!(Q.flags&16777216)?lo(Q):void 0;if(vd(se))return W?Jo:tk(l,C.iterableCacheKey,Jo);let Ee=se?Pu(se,0):void 0;if(!lr(Ee))return W?fi:tk(l,C.iterableCacheKey,fi);let Ve=Pg(Ot(Ee,Sd)),Oe=bKr(Ve,C,E,D,W)??fi;return W?Oe:tk(l,C.iterableCacheKey,Oe)}function QOt(l,C,E){let D=E?Z.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:Z.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator,W=!!hge(C)||!E&&W1(l.parent)&&l.parent.expression===l&&v$e(!1)!==Jg&&yg(C,v$e(!1));return wP(l,W,D,Xs(C))}function l_s(l,C,E,D){return bKr(l,C,E,D,!1)}function bKr(l,C,E,D,W){if(vd(l))return Jo;let Q=EKr(l,C)||u_s(l,C);return Q===fi&&E&&(Q=void 0,W=!0),Q??(Q=vKr(l,C,E,D,W)),Q===fi?void 0:Q}function EKr(l,C){return Uet(l,C.iteratorCacheKey)}function u_s(l,C){let E=C.getGlobalIterableIteratorType(!1);if(HV(l,E)){let[D]=of(l),W=EKr(E,C)||vKr(E,C,void 0,void 0,!1),{returnType:Q,nextType:se}=W===fi?ic:W;return tk(l,C.iteratorCacheKey,CL(D,Q,se))}if(HV(l,C.getGlobalIteratorType(!1))||HV(l,C.getGlobalGeneratorType(!1))){let[D,W,Q]=of(l);return tk(l,C.iteratorCacheKey,CL(D,W,Q))}}function BKr(l,C){let E=ZI(l,"done")||dn;return yg(C===0?dn:Mn,E)}function g_s(l){return BKr(l,0)}function A_s(l){return BKr(l,1)}function d_s(l){if(vd(l))return Jo;let C=Uet(l,"iterationTypesOfIteratorResult");if(C)return C;if(HV(l,Ygs(!1))){let se=of(l)[0];return tk(l,"iterationTypesOfIteratorResult",CL(se,void 0,void 0))}if(HV(l,Hgs(!1))){let se=of(l)[0];return tk(l,"iterationTypesOfIteratorResult",CL(void 0,se,void 0))}let E=VC(l,g_s),D=E!==Vi?ZI(E,"value"):void 0,W=VC(l,A_s),Q=W!==Vi?ZI(W,"value"):void 0;return!D&&!Q?tk(l,"iterationTypesOfIteratorResult",fi):tk(l,"iterationTypesOfIteratorResult",CL(D,Q||oo,void 0))}function YOt(l,C,E,D,W){var Q,se,Ee,Ve;let Oe=_g(l,E);if(!Oe&&E!=="next")return;let ot=Oe&&!(E==="next"&&Oe.flags&16777216)?E==="next"?lo(Oe):Uv(lo(Oe),2097152):void 0;if(vd(ot))return E==="next"?Jo:hc;let Wt=ot?Pu(ot,0):v;if(Wt.length===0){if(D){let Yi=E==="next"?C.mustHaveANextMethodDiagnostic:C.mustBeAMethodDiagnostic;W?(W.errors??(W.errors=[]),W.errors.push(Us(D,Yi,E))):fr(D,Yi,E)}return E==="next"?fi:void 0}if(ot?.symbol&&Wt.length===1){let Yi=C.getGlobalGeneratorType(!1),Cs=C.getGlobalIteratorType(!1),Ds=((se=(Q=Yi.symbol)==null?void 0:Q.members)==null?void 0:se.get(E))===ot.symbol,zo=!Ds&&((Ve=(Ee=Cs.symbol)==null?void 0:Ee.members)==null?void 0:Ve.get(E))===ot.symbol;if(Ds||zo){let ma=Ds?Yi:Cs,{mapper:ha}=ot;return CL(dL(ma.typeParameters[0],ha),dL(ma.typeParameters[1],ha),E==="next"?dL(ma.typeParameters[2],ha):void 0)}}let Nt,Mr;for(let Yi of Wt)E!=="throw"&&lr(Yi.parameters)&&(Nt=Hr(Nt,vT(Yi,0))),Mr=Hr(Mr,Sd(Yi));let ln,hn;if(E!=="throw"){let Yi=Nt?Ta(Nt):Kr;if(E==="next")hn=Yi;else if(E==="return"){let Cs=C.resolveIterationType(Yi,D)||Qt;ln=Hr(ln,Cs)}}let mi,Ti=Mr?Pg(Mr):Vi,ks=C.resolveIterationType(Ti,D)||Qt,Wo=d_s(ks);return Wo===fi?(D&&(W?(W.errors??(W.errors=[]),W.errors.push(Us(D,C.mustHaveAValueDiagnostic,E))):fr(D,C.mustHaveAValueDiagnostic,E)),mi=Qt,ln=Hr(ln,Qt)):(mi=Wo.yieldType,ln=Hr(ln,Wo.returnType)),CL(mi,Ta(ln),hn)}function vKr(l,C,E,D,W){let Q=CKr([YOt(l,C,"next",E,D),YOt(l,C,"return",E,D),YOt(l,C,"throw",E,D)]);return W?Q:tk(l,C.iteratorCacheKey,Q)}function nH(l,C,E){if(vd(C))return;let D=HOt(C,E);return D&&D[dGr(l)]}function HOt(l,C){if(vd(l))return Jo;let E=C?2:1,D=C?Wg:nf;return Ket(l,E,void 0)||l_s(l,D,void 0,void 0)}function p_s(l){gF(l)||Sys(l)}function kLe(l,C){let E=!!(C&1),D=!!(C&2);if(E){let W=nH(1,l,D);return W?D?fL(_ge(W)):W:cr}return D?fL(l)||cr:l}function SKr(l,C){let E=kLe(C,YI(l));return!!(E&&(UI(E,16384)||E.flags&32769))}function f_s(l){if(gF(l))return;let C=K$(l);if(C&&$p(C)){Zh(l,Z.A_return_statement_cannot_be_used_inside_a_class_static_block);return}if(!C){Zh(l,Z.A_return_statement_can_only_be_used_within_a_function_body);return}let E=tB(C),D=Sd(E),W=YI(C);if(nt||l.expression||D.flags&131072){let Q=l.expression?iC(l.expression):wn;if(C.kind===178)l.expression&&fr(l,Z.Setters_cannot_return_a_value);else if(C.kind===176)l.expression&&!$V(Q,D,l,l.expression)&&fr(l,Z.Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class);else if(Nre(C)){let se=kLe(D,W)??D,Ee=W&2?Tye(Q,!1,l,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):Q;se&&$V(Ee,se,l,l.expression)}}else C.kind!==176&&Ne.noImplicitReturns&&!SKr(C,D)&&fr(l,Z.Not_all_code_paths_return_a_value)}function I_s(l){gF(l)||l.flags&65536&&Zh(l,Z.with_statements_are_not_allowed_in_an_async_function_block),Rl(l.expression);let C=ls(l);if(!iW(C)){let E=Rr(C,l.pos).start,D=l.statement.pos;iH(C,E,D-E,Z.The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any)}}function C_s(l){gF(l);let C,E=!1,D=Rl(l.expression);X(l.caseBlock.clauses,W=>{W.kind===297&&!E&&(C===void 0?C=W:(qi(W,Z.A_default_clause_cannot_appear_more_than_once_in_a_switch_statement),E=!0)),W.kind===296&&u(Q(W)),X(W.statements,Ug),Ne.noFallthroughCasesInSwitch&&W.fallthroughFlowNode&&eLe(W.fallthroughFlowNode)&&fr(W,Z.Fallthrough_case_in_switch);function Q(se){return()=>{let Ee=Rl(se.expression);vOt(D,Ee)||JXr(Ee,D,se.expression,void 0)}}}),l.caseBlock.locals&&nW(l.caseBlock)}function m_s(l){gF(l)||Si(l.parent,C=>$l(C)?"quit":C.kind===256&&C.label.escapedText===l.label.escapedText?(qi(l.label,Z.Duplicate_label_0,Tf(l.label)),!0):!1),Ug(l.statement)}function h_s(l){gF(l)||sr(l.expression)&&!l.expression.escapedText&&Oys(l,Z.Line_break_not_permitted_here),l.expression&&Rl(l.expression)}function __s(l){gF(l),Xet(l.tryBlock);let C=l.catchClause;if(C){if(C.variableDeclaration){let E=C.variableDeclaration;DLe(E);let D=fC(E);if(D){let W=Lc(D);W&&!(W.flags&3)&&Zh(D,Z.Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified)}else if(E.initializer)Zh(E.initializer,Z.Catch_clause_variable_cannot_have_an_initializer);else{let W=C.block.locals;W&&$w(C.locals,Q=>{let se=W.get(Q);se?.valueDeclaration&&se.flags&2&&qi(se.valueDeclaration,Z.Cannot_redeclare_identifier_0_in_catch_clause,Sc(Q))})}}Xet(C.block)}l.finallyBlock&&Xet(l.finallyBlock)}function jet(l,C,E){let D=ey(l);if(D.length===0)return;for(let Q of JV(l))E&&Q.flags&4194304||wKr(l,Q,k7(Q,8576,!0),YV(Q));let W=C.valueDeclaration;if(W&&Sa(W)){for(let Q of W.members)if(!$u(Q)&&!wre(Q)){let se=Mo(Q);wKr(l,se,l_(Q.name.expression),YV(se))}}if(D.length>1)for(let Q of D)y_s(l,Q)}function wKr(l,C,E,D){let W=C.valueDeclaration,Q=vl(W);if(Q&&kc(Q))return;let se=$Wt(l,E),Ee=sa(l)&2?zd(l.symbol,264):void 0,Ve=W&&W.kind===226||Q&&Q.kind===167?W:void 0,Oe=o_(C)===l.symbol?W:void 0;for(let ot of se){let Wt=ot.declaration&&o_(Mo(ot.declaration))===l.symbol?ot.declaration:void 0,Nt=Oe||Wt||(Ee&&!lr(wa(l),Mr=>!!HY(Mr,C.escapedName)&&!!JP(Mr,ot.keyType))?Ee:void 0);if(Nt&&!yg(D,ot.type)){let Mr=D4(Nt,Z.Property_0_of_type_1_is_not_assignable_to_2_index_type_3,qc(C),Xs(D),Xs(ot.keyType),Xs(ot.type));Ve&&Nt!==Ve&&eg(Mr,Us(Ve,Z._0_is_declared_here,qc(C))),UA.add(Mr)}}}function y_s(l,C){let E=C.declaration,D=$Wt(l,C.keyType),W=sa(l)&2?zd(l.symbol,264):void 0,Q=E&&o_(Mo(E))===l.symbol?E:void 0;for(let se of D){if(se===C)continue;let Ee=se.declaration&&o_(Mo(se.declaration))===l.symbol?se.declaration:void 0,Ve=Q||Ee||(W&&!lr(wa(l),Oe=>!!$x(Oe,C.keyType)&&!!JP(Oe,se.keyType))?W:void 0);Ve&&!yg(C.type,se.type)&&fr(Ve,Z._0_index_type_1_is_not_assignable_to_2_index_type_3,Xs(C.keyType),Xs(C.type),Xs(se.keyType),Xs(se.type))}}function Ege(l,C){switch(l.escapedText){case"any":case"unknown":case"never":case"number":case"bigint":case"boolean":case"string":case"symbol":case"void":case"object":case"undefined":fr(l,C,l.escapedText)}}function b_s(l){Qe>=1&&l.escapedText==="Object"&&(De<5||ls(l).impliedNodeFormat===1)&&fr(l,Z.Class_name_cannot_be_Object_when_targeting_ES5_with_module_0,zh[De])}function E_s(l){let C=Gt(bx(l),FB);if(!O(C))return;let E=so(l),D=new Set,W=new Set;if(X(l.parameters,({name:se},Ee)=>{sr(se)&&D.add(se.escapedText),pu(se)&&W.add(Ee)}),n3t(l)){let se=C.length-1,Ee=C[se];E&&Ee&&sr(Ee.name)&&Ee.typeExpression&&Ee.typeExpression.type&&!D.has(Ee.name.escapedText)&&!W.has(se)&&!UB(Lc(Ee.typeExpression.type))&&fr(Ee.name,Z.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type,ao(Ee.name))}else X(C,({name:se,isNameFirst:Ee},Ve)=>{W.has(Ve)||sr(se)&&D.has(se.escapedText)||(a0(se)?E&&fr(se,Z.Qualified_name_0_is_not_allowed_without_a_leading_param_object_1,t0(se),t0(se.left)):Ee||zm(E,se,Z.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name,ao(se)))})}function GLe(l){let C=!1;if(l)for(let D=0;D{D.default?(C=!0,B_s(D.default,l,W)):C&&fr(D,Z.Required_type_parameters_may_not_follow_optional_type_parameters);for(let Q=0;QD)return!1;for(let Ve=0;VeIC(E)&&Rh(E))&&qi(C,Z.Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator),!l.name&&!ba(l,2048)&&Zh(l,Z.A_class_declaration_without_the_default_modifier_must_have_a_name),DKr(l),X(l.members,Ug),nW(l)}function DKr(l){gys(l),TLe(l),yge(l,l.name),GLe(R1(l)),Sye(l);let C=Mo(l),E=xp(C),D=JE(E),W=lo(C);TKr(C),Qet(C),Mms(l),!!(l.flags&33554432)||Qms(l);let se=Dv(l);if(se){X(se.typeArguments,Ug),Qe<2&&Zm(se.parent,1);let Oe=rV(l);Oe&&Oe!==se&&Rl(Oe.expression);let ot=wa(E);ot.length&&u(()=>{let Wt=ot[0],Nt=is(E),Mr=$0(Nt);if(R_s(Mr,se),Ug(se.expression),lr(se.typeArguments)){X(se.typeArguments,Ug);for(let hn of g$e(Mr,se.typeArguments,se))if(!eKr(se,hn.typeParameters))break}let ln=JE(Wt,E.thisType);if(h0(D,ln,void 0)?h0(W,OXr(Mr),l.name||l,Z.Class_static_side_0_incorrectly_extends_base_class_static_side_1):GKr(l,D,ln,Z.Class_0_incorrectly_extends_base_class_1),Nt.flags&8650752&&(IZe(W)?Pu(Nt,1).some(mi=>mi.flags&4)&&!ba(l,64)&&fr(l.name||l,Z.A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract):fr(l.name||l,Z.A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any)),!(Mr.symbol&&Mr.symbol.flags&32)&&!(Nt.flags&8650752)){let hn=XP(Mr,se.typeArguments,se);X(hn,mi=>!qN(mi.declaration)&&!iF(Sd(mi),Wt))&&fr(se.expression,Z.Base_constructors_must_all_have_the_same_return_type)}k_s(E,Wt)})}N_s(l,E,D,W);let Ee=MX(l);if(Ee)for(let Oe of Ee)(!cp(Oe.expression)||km(Oe.expression))&&fr(Oe.expression,Z.A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments),DOt(Oe),u(Ve(Oe));u(()=>{jet(E,C),jet(W,C,!0),NOt(l),Z_s(l)});function Ve(Oe){return()=>{let ot=bT(Lc(Oe));if(!OA(ot))if($m(ot)){let Wt=ot.symbol&&ot.symbol.flags&32?Z.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:Z.Class_0_incorrectly_implements_interface_1,Nt=JE(ot,E.thisType);h0(D,Nt,void 0)||GKr(l,D,Nt,Wt)}else fr(Oe,Z.A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members)}}}function N_s(l,C,E,D){let Q=Dv(l)&&wa(C),se=Q?.length?JE($s(Q),C.thisType):void 0,Ee=is(C);for(let Ve of l.members)Lme(Ve)||(Rf(Ve)&&X(Ve.parameters,Oe=>{Zn(Oe,Ve)&&xKr(l,D,Ee,se,C,E,Oe,!0)}),xKr(l,D,Ee,se,C,E,Ve,!1))}function xKr(l,C,E,D,W,Q,se,Ee,Ve=!0){let Oe=se.name&&jv(se.name)||jv(se);return Oe?kKr(l,C,E,D,W,Q,Dce(se),aV(se),$u(se),Ee,df(Oe),Ve?se:void 0):0}function kKr(l,C,E,D,W,Q,se,Ee,Ve,Oe,ot,Wt){let Nt=so(l),Mr=!!(l.flags&33554432);if(D&&(se||Ne.noImplicitOverride)){let ln=Rd(ot),hn=Ve?C:Q,mi=Ve?E:D,Ti=_g(hn,ln),ks=_g(mi,ln),Wo=Xs(D);if(Ti&&!ks&&se){if(Wt){let Yi=YJr(ot,mi);Yi?fr(Wt,Nt?Z.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:Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1,Wo,qc(Yi)):fr(Wt,Nt?Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0:Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0,Wo)}return 2}else if(Ti&&ks?.declarations&&Ne.noImplicitOverride&&!Mr){let Yi=lr(ks.declarations,aV);if(se)return 0;if(Yi){if(Ee&&Yi)return Wt&&fr(Wt,Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0,Wo),1}else{if(Wt){let Cs=Oe?Nt?Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0:Nt?Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0;fr(Wt,Cs,Wo)}return 1}}}else if(se){if(Wt){let ln=Xs(W);fr(Wt,Nt?Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class:Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class,ln)}return 2}return 0}function GKr(l,C,E,D){let W=!1;for(let Q of l.members){if($u(Q))continue;let se=Q.name&&jv(Q.name)||jv(Q);if(se){let Ee=_g(C,se.escapedName),Ve=_g(E,se.escapedName);if(Ee&&Ve){let Oe=()=>su(void 0,Z.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2,qc(se),Xs(C),Xs(E));h0(lo(Ee),lo(Ve),Q.name||Q,void 0,Oe)||(W=!0)}}}W||h0(C,E,l.name||l,D)}function R_s(l,C){let E=Pu(l,1);if(E.length){let D=E[0].declaration;if(D&&nb(D,2)){let W=DB(l.symbol);zOt(C,W)||fr(C,Z.Cannot_extend_a_class_0_Class_constructor_is_marked_as_private,QN(l.symbol))}}}function D_s(l,C,E){if(!C.name)return 0;let D=Mo(l),W=xp(D),Q=JE(W),se=lo(D),Ve=Dv(l)&&wa(W),Oe=Ve?.length?JE($s(Ve),W.thisType):void 0,ot=is(W),Wt=C.parent?Dce(C):ba(C,16);return kKr(l,se,ot,Oe,W,Q,Wt,aV(C),$u(C),!1,df(E))}function Hre(l){return aI(l)&1?l.links.target:l}function x_s(l){return Gt(l.declarations,C=>C.kind===263||C.kind===264)}function k_s(l,C){var E,D,W,Q,se;let Ee=Id(C),Ve=new Map;e:for(let Oe of Ee){let ot=Hre(Oe);if(ot.flags&4194304)continue;let Wt=HY(l,ot.escapedName);if(!Wt)continue;let Nt=Hre(Wt),Mr=L1(ot);if(w.assert(!!Nt,"derived should point to something, even if it is the base class' declaration."),Nt===ot){let ln=DB(l.symbol);if(Mr&64&&(!ln||!ba(ln,64))){for(let Wo of wa(l)){if(Wo===C)continue;let Yi=HY(Wo,ot.escapedName),Cs=Yi&&Hre(Yi);if(Cs&&Cs!==ot)continue e}let hn=Xs(C),mi=Xs(l),Ti=qc(Oe),ks=Hr((E=Ve.get(ln))==null?void 0:E.missedProperties,Ti);Ve.set(ln,{baseTypeName:hn,typeName:mi,missedProperties:ks})}}else{let ln=L1(Nt);if(Mr&2||ln&2)continue;let hn,mi=ot.flags&98308,Ti=Nt.flags&98308;if(mi&&Ti){if((aI(ot)&6?(D=ot.declarations)!=null&&D.some(Yi=>FKr(Yi,Mr)):(W=ot.declarations)!=null&&W.every(Yi=>FKr(Yi,Mr)))||aI(ot)&262144||Nt.valueDeclaration&&no(Nt.valueDeclaration))continue;let ks=mi!==4&&Ti===4;if(ks||mi===4&&Ti!==4){let Yi=ks?Z._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property:Z._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor;fr(vl(Nt.valueDeclaration)||Nt.valueDeclaration,Yi,qc(ot),Xs(C),Xs(l))}else if(Le){let Yi=(Q=Nt.declarations)==null?void 0:Q.find(Cs=>Cs.kind===172&&!Cs.initializer);if(Yi&&!(Nt.flags&33554432)&&!(Mr&64)&&!(ln&64)&&!((se=Nt.declarations)!=null&&se.some(Cs=>!!(Cs.flags&33554432)))){let Cs=Uee(DB(l.symbol)),Ds=Yi.name;if(Yi.exclamationToken||!Cs||!sr(Ds)||!nt||!LKr(Ds,l,Cs)){let zo=Z.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;fr(vl(Nt.valueDeclaration)||Nt.valueDeclaration,zo,qc(ot),Xs(C))}}}continue}else if(XPt(ot)){if(XPt(Nt)||Nt.flags&4)continue;w.assert(!!(Nt.flags&98304)),hn=Z.Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor}else ot.flags&98304?hn=Z.Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:hn=Z.Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function;fr(vl(Nt.valueDeclaration)||Nt.valueDeclaration,hn,Xs(C),qc(ot),Xs(l))}}for(let[Oe,ot]of Ve)if(O(ot.missedProperties)===1)tp(Oe)?fr(Oe,Z.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1,$s(ot.missedProperties),ot.baseTypeName):fr(Oe,Z.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2,ot.typeName,$s(ot.missedProperties),ot.baseTypeName);else if(O(ot.missedProperties)>5){let Wt=Ot(ot.missedProperties.slice(0,4),Mr=>`'${Mr}'`).join(", "),Nt=O(ot.missedProperties)-4;tp(Oe)?fr(Oe,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more,ot.baseTypeName,Wt,Nt):fr(Oe,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more,ot.typeName,ot.baseTypeName,Wt,Nt)}else{let Wt=Ot(ot.missedProperties,Nt=>`'${Nt}'`).join(", ");tp(Oe)?fr(Oe,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1,ot.baseTypeName,Wt):fr(Oe,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2,ot.typeName,ot.baseTypeName,Wt)}}function FKr(l,C){return C&64&&(!Ql(l)||!l.initializer)||HI(l.parent)}function G_s(l,C,E){if(!O(C))return E;let D=new Map;X(E,W=>{D.set(W.escapedName,W)});for(let W of C){let Q=Id(JE(W,l.thisType));for(let se of Q){let Ee=D.get(se.escapedName);Ee&&se.parent===Ee.parent&&D.delete(se.escapedName)}}return on(D.values())}function F_s(l,C){let E=wa(l);if(E.length<2)return!0;let D=new Map;X(VWt(l).declaredProperties,Q=>{D.set(Q.escapedName,{prop:Q,containingType:l})});let W=!0;for(let Q of E){let se=Id(JE(Q,l.thisType));for(let Ee of se){let Ve=D.get(Ee.escapedName);if(!Ve)D.set(Ee.escapedName,{prop:Ee,containingType:Q});else if(Ve.containingType!==l&&!Pds(Ve.prop,Ee)){W=!1;let ot=Xs(Ve.containingType),Wt=Xs(Q),Nt=su(void 0,Z.Named_property_0_of_types_1_and_2_are_not_identical,qc(Ee),ot,Wt);Nt=su(Nt,Z.Interface_0_cannot_simultaneously_extend_types_1_and_2,Xs(l),ot,Wt),UA.add(GS(ls(C),C,Nt))}}}return W}function Z_s(l){if(!nt||!It||l.flags&33554432)return;let C=Uee(l);for(let E of l.members)if(!(N_(E)&128)&&!$u(E)&&ZKr(E)){let D=E.name;if(sr(D)||kc(D)||xg(D)){let W=lo(Mo(E));W.flags&3||Fre(W)||(!C||!LKr(D,W,C))&&fr(E.name,Z.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor,xd(D))}}}function ZKr(l){return l.kind===172&&!aV(l)&&!l.exclamationToken&&!l.initializer}function L_s(l,C,E,D,W){for(let Q of E)if(Q.pos>=D&&Q.pos<=W){let se=_e.createPropertyAccessExpression(_e.createThis(),l);kA(se.expression,se),kA(se,Q),se.flowNode=Q.returnFlowNode;let Ee=uF(se,C,tW(C));if(!Fre(Ee))return!0}return!1}function LKr(l,C,E){let D=xg(l)?_e.createElementAccessExpression(_e.createThis(),l.expression):_e.createPropertyAccessExpression(_e.createThis(),l);kA(D.expression,D),kA(D,E),D.flowNode=E.returnFlowNode;let W=uF(D,C,tW(C));return!Fre(W)}function V_s(l){rk(l)||mys(l),GLe(l.typeParameters),u(()=>{Ege(l.name,Z.Interface_name_cannot_be_0),Sye(l);let C=Mo(l);TKr(C);let E=zd(C,264);if(l===E){let D=xp(C),W=JE(D);if(F_s(D,l.name)){for(let Q of wa(D))h0(W,JE(Q,D.thisType),l.name,Z.Interface_0_incorrectly_extends_interface_1);jet(D,C)}}jUr(l)}),X(U8(l),C=>{(!cp(C.expression)||km(C.expression))&&fr(C.expression,Z.An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments),DOt(C)}),X(l.members,Ug),u(()=>{NOt(l),nW(l)})}function W_s(l){rk(l),Ege(l.name,Z.Type_alias_name_cannot_be_0),Sye(l),GLe(l.typeParameters),l.type.kind===141?(!X8e.has(l.name.escapedText)||O(l.typeParameters)!==1)&&fr(l.type,Z.The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types):(Ug(l.type),nW(l))}function VKr(l){let C=Uo(l);if(!(C.flags&1024)){C.flags|=1024;let E=0,D;for(let W of l.members){let Q=P_s(W,E,D);Uo(W).enumMemberValue=Q,E=typeof Q.value=="number"?Q.value+1:void 0,D=W}}}function P_s(l,C,E){if(xX(l.name))fr(l.name,Z.Computed_property_names_are_not_allowed_in_enums);else{let D=K9(l.name);yN(D)&&!b6(D)&&fr(l.name,Z.An_enum_member_cannot_have_a_numeric_name)}if(l.initializer)return O_s(l);if(l.parent.flags&33554432&&!Ac(l.parent))return UC(void 0);if(C===void 0)return fr(l.name,Z.Enum_member_must_have_initializer),UC(void 0);if(ZE(Ne)&&E?.initializer){let D=AJ(E);typeof D.value=="number"&&!D.resolvedOtherFiles||fr(l.name,Z.Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is_enabled)}return UC(C)}function O_s(l){let C=Ac(l.parent),E=l.initializer,D=Lt(E,l);return D.value!==void 0?C&&typeof D.value=="number"&&!isFinite(D.value)?fr(E,isNaN(D.value)?Z.const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:Z.const_enum_member_initializer_was_evaluated_to_a_non_finite_value):ZE(Ne)&&typeof D.value=="string"&&!D.isSyntacticallyString&&fr(E,Z._0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is_enabled,`${ao(l.parent.name)}.${K9(l.name)}`):C?fr(E,Z.const_enum_member_initializers_must_be_constant_expressions):l.parent.flags&33554432?fr(E,Z.In_ambient_enum_declarations_member_initializer_must_be_constant_expression):h0(Rl(E),bt,E,Z.Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values),D}function WKr(l,C){let E=FI(l,111551,!0);if(!E)return UC(void 0);if(l.kind===80){let D=l;if(b6(D.escapedText)&&E===kre(D.escapedText,111551,void 0))return UC(+D.escapedText,!1)}if(E.flags&8)return C?PKr(l,E,C):AJ(E.valueDeclaration);if(O7(E)){let D=E.valueDeclaration;if(D&&zs(D)&&!D.type&&D.initializer&&(!C||D!==C&&ow(D,C))){let W=Lt(D.initializer,D);return C&&ls(C)!==ls(D)?UC(W.value,!1,!0,!0):UC(W.value,W.isSyntacticallyString,W.resolvedOtherFiles,!0)}}return UC(void 0)}function M_s(l,C){let E=l.expression;if(cp(E)&&XA(l.argumentExpression)){let D=FI(E,111551,!0);if(D&&D.flags&384){let W=Rd(l.argumentExpression.text),Q=D.exports.get(W);if(Q)return w.assert(ls(Q.valueDeclaration)===ls(D.valueDeclaration)),C?PKr(l,Q,C):AJ(Q.valueDeclaration)}}return UC(void 0)}function PKr(l,C,E){let D=C.valueDeclaration;if(!D||D===E)return fr(l,Z.Property_0_is_used_before_being_assigned,qc(C)),UC(void 0);if(!ow(D,E))return fr(l,Z.A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums),UC(0);let W=AJ(D);return E.parent!==D.parent?UC(W.value,W.isSyntacticallyString,W.resolvedOtherFiles,!0):W}function Q_s(l){u(()=>Y_s(l))}function Y_s(l){rk(l),yge(l,l.name),Sye(l),l.members.forEach(H_s),VKr(l);let C=Mo(l),E=zd(C,l.kind);if(l===E){if(C.declarations&&C.declarations.length>1){let W=Ac(l);X(C.declarations,Q=>{tP(Q)&&Ac(Q)!==W&&fr(vl(Q),Z.Enum_declarations_must_all_be_const_or_non_const)})}let D=!1;X(C.declarations,W=>{if(W.kind!==266)return!1;let Q=W;if(!Q.members.length)return!1;let se=Q.members[0];se.initializer||(D?fr(se.name,Z.In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element):D=!0)})}}function H_s(l){kc(l.name)&&fr(l,Z.An_enum_member_cannot_be_named_with_a_private_identifier),l.initializer&&Rl(l.initializer)}function X_s(l){let C=l.declarations;if(C){for(let E of C)if((E.kind===263||E.kind===262&&xE(E.body))&&!(E.flags&33554432))return E}}function J_s(l,C){let E=S2(l),D=S2(C);return bs(E)?bs(D):bs(D)?!1:E===D}function U_s(l){l.body&&(Ug(l.body),v2(l)||nW(l)),u(C);function C(){var E,D;let W=v2(l),Q=l.flags&33554432;W&&!Q&&fr(l.name,Z.Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context);let se=Yf(l),Ee=se?Z.An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:Z.A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module;if(FLe(l,Ee))return;rk(l)||!Q&&l.name.kind===11&&qi(l.name,Z.Only_ambient_modules_can_use_quoted_names),sr(l.name)&&yge(l,l.name),Sye(l);let Ve=Mo(l);if(Ve.flags&512&&!Q&&J8e(l,uV(Ne))){if(ZE(Ne)&&!ls(l).externalModuleIndicator&&fr(l.name,Z.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,Pt),((E=Ve.declarations)==null?void 0:E.length)>1){let Oe=X_s(Ve);Oe&&(ls(l)!==ls(Oe)?fr(l.name,Z.A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged):l.posot.kind===95);Oe&&fr(Oe,Z.A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled)}}if(se)if(XR(l)){if((W||Mo(l).flags&33554432)&&l.body)for(let ot of l.body.statements)XOt(ot,W)}else bs(l.parent)?W?fr(l.name,Z.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations):Jl(T2(l.name))&&fr(l.name,Z.Ambient_module_declaration_cannot_specify_relative_module_name):W?fr(l.name,Z.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations):fr(l.name,Z.Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces)}}function XOt(l,C){switch(l.kind){case 243:for(let D of l.declarationList.declarations)XOt(D,C);break;case 277:case 278:Zh(l,Z.Exports_and_export_assignments_are_not_permitted_in_module_augmentations);break;case 271:case 272:Zh(l,Z.Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module);break;case 208:case 260:let E=l.name;if(pu(E)){for(let D of E.elements)XOt(D,C);break}case 263:case 266:case 262:case 264:case 267:case 265:if(C)return;break}}function K_s(l){switch(l.kind){case 80:return l;case 166:do l=l.left;while(l.kind!==80);return l;case 211:do{if(AN(l.expression)&&!kc(l.name))return l.name;l=l.expression}while(l.kind!==80);return l}}function zet(l){let C=DQ(l);if(!C||wf(C))return!1;if(!bu(C))return fr(C,Z.String_literal_expected),!1;let E=l.parent.kind===268&&Yf(l.parent.parent);if(l.parent.kind!==307&&!E)return fr(C,l.kind===278?Z.Export_declarations_are_not_permitted_in_a_namespace:Z.Import_declarations_in_a_namespace_cannot_reference_a_module),!1;if(E&&Jl(C.text)&&!V0e(l))return fr(l,Z.Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name),!1;if(!Cm(l)&&l.attributes){let D=l.attributes.token===118?Z.Import_attribute_values_must_be_string_literal_expressions:Z.Import_assertion_values_must_be_string_literal_expressions,W=!1;for(let Q of l.attributes.elements)bu(Q.value)||(W=!0,fr(Q.value,D));return!W}return!0}function qet(l){var C,E,D,W;let Q=Mo(l),se=qm(Q);if(se!==en){if(Q=GA(Q.exportSymbol||Q),so(l)&&!(se.flags&111551)&&!Ex(l)){let Oe=M9(l)?l.propertyName||l.name:Sf(l)?l.name:l;if(w.assert(l.kind!==280),l.kind===281){let ot=fr(Oe,Z.Types_cannot_appear_in_export_declarations_in_JavaScript_files),Wt=(E=(C=ls(l).symbol)==null?void 0:C.exports)==null?void 0:E.get((l.propertyName||l.name).escapedText);if(Wt===se){let Nt=(D=Wt.declarations)==null?void 0:D.find(xS);Nt&&eg(ot,Us(Nt,Z._0_is_automatically_exported_here,Sc(Wt.escapedName)))}}else{w.assert(l.kind!==260);let ot=Si(l,pg(mI,Cm)),Wt=(ot&&((W=Y8(ot))==null?void 0:W.text))??"...",Nt=Sc(sr(Oe)?Oe.escapedText:Q.escapedName);fr(Oe,Z._0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation,Nt,`import("${Wt}").${Nt}`)}return}let Ee=Kb(se),Ve=(Q.flags&1160127?111551:0)|(Q.flags&788968?788968:0)|(Q.flags&1920?1920:0);if(Ee&Ve){let Oe=l.kind===281?Z.Export_declaration_conflicts_with_exported_declaration_of_0:Z.Import_declaration_conflicts_with_local_declaration_of_0;fr(l,Oe,qc(Q))}else l.kind!==281&&Ne.isolatedModules&&!Si(l,Ex)&&Q.flags&1160127&&fr(l,Z.Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled,qc(Q),Pt);if(ZE(Ne)&&!Ex(l)&&!(l.flags&33554432)){let Oe=MN(Q),ot=!(Ee&111551);if(ot||Oe)switch(l.kind){case 273:case 276:case 271:{if(Ne.verbatimModuleSyntax){w.assertIsDefined(l.name,"An ImportClause with a symbol should have a name");let Wt=Ne.verbatimModuleSyntax&&NQ(l)?Z.An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabled:ot?Z._0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:Z._0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled,Nt=ao(l.kind===276&&l.propertyName||l.name);RP(fr(l,Wt,Nt),ot?void 0:Oe,Nt)}ot&&l.kind===271&&nb(l,32)&&fr(l,Z.Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled,Pt);break}case 281:if(Ne.verbatimModuleSyntax||ls(Oe)!==ls(l)){let Wt=ao(l.propertyName||l.name),Nt=ot?fr(l,Z.Re_exporting_a_type_when_0_is_enabled_requires_using_export_type,Pt):fr(l,Z._0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_enabled,Wt,Pt);RP(Nt,ot?void 0:Oe,Wt);break}}Ne.verbatimModuleSyntax&&l.kind!==271&&!so(l)&&(De===1||ls(l).impliedNodeFormat===1)&&fr(l,Z.ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled)}if(_y(l)){let Oe=JOt(Q,l);OB(Oe)&&Oe.declarations&&MG(l,Oe.declarations,Oe.escapedName)}}}function JOt(l,C){if(!(l.flags&2097152)||OB(l)||!YE(l))return l;let E=qm(l);if(E===en)return E;for(;l.flags&2097152;){let D=het(l);if(D){if(D===E)break;if(D.declarations&&O(D.declarations))if(OB(D)){MG(C,D.declarations,D.escapedName);break}else{if(l===E)break;l=D}}else break}return E}function $et(l){yge(l,l.name),qet(l),l.kind===276&&ao(l.propertyName||l.name)==="default"&&IN(Ne)&&De!==4&&(De<5||ls(l).impliedNodeFormat===1)&&Zm(l,131072)}function UOt(l){var C;let E=l.attributes;if(E){let D=p3t(!0);D!==Zc&&h0(We(E),XZe(D,32768),E);let W=N6e(l),Q=wte(E,W?qi:void 0),se=l.attributes.token===118;if(W&&Q)return;if((De===199&&l.moduleSpecifier&&eL(l.moduleSpecifier))!==99&&De!==99&&De!==200){let Oe=se?De===199?Z.Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:Z.Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve:De===199?Z.Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:Z.Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve;return qi(E,Oe)}if(RN(l)||(mI(l)?(C=l.importClause)==null?void 0:C.isTypeOnly:l.isTypeOnly))return qi(E,se?Z.Import_attributes_cannot_be_used_with_type_only_imports_or_exports:Z.Import_assertions_cannot_be_used_with_type_only_imports_or_exports);if(Q)return qi(E,Z.resolution_mode_can_only_be_set_for_type_only_imports)}}function j_s(l){return ty(iC(l.value))}function z_s(l){if(!FLe(l,so(l)?Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)){if(!rk(l)&&l.modifiers&&Zh(l,Z.An_import_declaration_cannot_have_modifiers),zet(l)){let C=l.importClause;C&&!Qys(C)&&(C.name&&$et(C),C.namedBindings&&(C.namedBindings.kind===274?($et(C.namedBindings),De!==4&&(De<5||ls(l).impliedNodeFormat===1)&&IN(Ne)&&Zm(l,65536)):z0(l,l.moduleSpecifier)&&X(C.namedBindings.elements,$et)))}UOt(l)}}function q_s(l){if(!FLe(l,so(l)?Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)&&(rk(l),NQ(l)||zet(l)))if($et(l),M7(l,6),l.moduleReference.kind!==283){let C=qm(Mo(l));if(C!==en){let E=Kb(C);if(E&111551){let D=ib(l.moduleReference);FI(D,112575).flags&1920||fr(D,Z.Module_0_is_hidden_by_a_local_declaration_with_the_same_name,xd(D))}E&788968&&Ege(l.name,Z.Import_name_cannot_be_0)}l.isTypeOnly&&qi(l,Z.An_import_alias_cannot_use_import_type)}else De>=5&&De!==200&&ls(l).impliedNodeFormat===void 0&&!l.isTypeOnly&&!(l.flags&33554432)&&qi(l,Z.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)}function $_s(l){if(!FLe(l,so(l)?Z.An_export_declaration_can_only_be_used_at_the_top_level_of_a_module:Z.An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)){if(!rk(l)&&Zme(l)&&Zh(l,Z.An_export_declaration_cannot_have_modifiers),e0s(l),!l.moduleSpecifier||zet(l))if(l.exportClause&&!rD(l.exportClause)){X(l.exportClause.elements,t0s);let C=l.parent.kind===268&&Yf(l.parent.parent),E=!C&&l.parent.kind===268&&!l.moduleSpecifier&&l.flags&33554432;l.parent.kind!==307&&!C&&!E&&fr(l,Z.Export_declarations_are_not_permitted_in_a_namespace)}else{let C=z0(l,l.moduleSpecifier);C&&VP(C)?fr(l.moduleSpecifier,Z.Module_0_uses_export_and_cannot_be_used_with_export_Asterisk,qc(C)):l.exportClause&&qet(l.exportClause),De!==4&&(De<5||ls(l).impliedNodeFormat===1)&&(l.exportClause?IN(Ne)&&Zm(l,65536):Zm(l,32768))}UOt(l)}}function e0s(l){var C;return l.isTypeOnly&&((C=l.exportClause)==null?void 0:C.kind)===279?y8r(l.exportClause):!1}function FLe(l,C){let E=l.parent.kind===307||l.parent.kind===268||l.parent.kind===267;return E||Zh(l,C),!E}function t0s(l){if(qet(l),LE(Ne)&&MY(l.propertyName||l.name,!0),l.parent.parent.moduleSpecifier)IN(Ne)&&De!==4&&(De<5||ls(l).impliedNodeFormat===1)&&ao(l.propertyName||l.name)==="default"&&Zm(l,131072);else{let C=l.propertyName||l.name,E=Pi(C,C.escapedText,2998271,void 0,!0);E&&(E===Zt||E===Dr||E.declarations&&bs(Y4(E.declarations[0])))?fr(C,Z.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module,ao(C)):M7(l,7)}}function r0s(l){let C=l.isExportEquals?Z.An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration:Z.A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration;if(FLe(l,C))return;let E=l.parent.kind===307?l.parent:l.parent.parent;if(E.kind===267&&!Yf(E)){l.isExportEquals?fr(l,Z.An_export_assignment_cannot_be_used_in_a_namespace):fr(l,Z.A_default_export_can_only_be_used_in_an_ECMAScript_style_module);return}!rk(l)&&Fme(l)&&Zh(l,Z.An_export_assignment_cannot_have_modifiers);let D=fC(l);D&&h0(iC(l.expression),Lc(D),l.expression);let W=!l.isExportEquals&&!(l.flags&33554432)&&Ne.verbatimModuleSyntax&&(De===1||ls(l).impliedNodeFormat===1);if(l.expression.kind===80){let Q=l.expression,se=H1(FI(Q,-1,!0,!0,l));if(se){M7(l,3);let Ee=MN(se,111551);if(Kb(se)&111551?(iC(Q),!W&&!(l.flags&33554432)&&Ne.verbatimModuleSyntax&&Ee&&fr(Q,l.isExportEquals?Z.An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:Z.An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration,ao(Q))):!W&&!(l.flags&33554432)&&Ne.verbatimModuleSyntax&&fr(Q,l.isExportEquals?Z.An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:Z.An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type,ao(Q)),!W&&!(l.flags&33554432)&&ZE(Ne)&&!(se.flags&111551)){let Ve=Kb(se,!1,!0);se.flags&2097152&&Ve&788968&&!(Ve&111551)&&(!Ee||ls(Ee)!==ls(l))?fr(Q,l.isExportEquals?Z._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:Z._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,ao(Q),Pt):Ee&&ls(Ee)!==ls(l)&&RP(fr(Q,l.isExportEquals?Z._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:Z._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,ao(Q),Pt),Ee,ao(Q))}}else iC(Q);LE(Ne)&&MY(Q,!0)}else iC(l.expression);W&&fr(l,Z.ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled),OKr(E),l.flags&33554432&&!cp(l.expression)&&qi(l.expression,Z.The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context),l.isExportEquals&&(De>=5&&De!==200&&(l.flags&33554432&&ls(l).impliedNodeFormat===99||!(l.flags&33554432)&&ls(l).impliedNodeFormat!==1)?qi(l,Z.Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead):De===4&&!(l.flags&33554432)&&qi(l,Z.Export_assignment_is_not_supported_when_module_flag_is_system))}function n0s(l){return JC(l.exports,(C,E)=>E!=="export=")}function OKr(l){let C=Mo(l),E=ol(C);if(!E.exportsChecked){let D=C.exports.get("export=");if(D&&n0s(C)){let Q=YE(D)||D.valueDeclaration;Q&&!V0e(Q)&&!so(Q)&&fr(Q,Z.An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements)}let W=IT(C);W&&W.forEach(({declarations:Q,flags:se},Ee)=>{if(Ee==="__export"||se&1920)return;let Ve=ft(Q,uh(C6i,gm(HI)));if(!(se&524288&&Ve<=2)&&Ve>1&&!ett(Q))for(let Oe of Q)gGr(Oe)&&UA.add(Us(Oe,Z.Cannot_redeclare_exported_variable_0,Sc(Ee)))}),E.exportsChecked=!0}}function ett(l){return l&&l.length>1&&l.every(C=>so(C)&&Cp(C)&&(O3(C.expression)||AN(C.expression)))}function Ug(l){if(l){let C=ue;ue=l,M=0,i0s(l),ue=C}}function i0s(l){Aee(l)&&X(l.jsDoc,({comment:E,tags:D})=>{MKr(E),X(D,W=>{MKr(W.comment),so(l)&&Ug(W)})});let C=l.kind;if(d)switch(C){case 267:case 263:case 264:case 262:d.throwIfCancellationRequested()}switch(C>=243&&C<=259&&gee(l)&&l.flowNode&&!eLe(l.flowNode)&&zm(Ne.allowUnreachableCode===!1,l,Z.Unreachable_code_detected),C){case 168:return JUr(l);case 169:return UUr(l);case 172:return zUr(l);case 171:return Yms(l);case 185:case 184:case 179:case 180:case 181:return vye(l);case 174:case 173:return Hms(l);case 175:return Xms(l);case 176:return Jms(l);case 177:case 178:return $Ur(l);case 183:return DOt(l);case 182:return Pms(l);case 186:return $ms(l);case 187:return ehs(l);case 188:return ths(l);case 189:return rhs(l);case 192:case 193:return nhs(l);case 196:case 190:case 191:return Ug(l.type);case 197:return ahs(l);case 198:return chs(l);case 194:return lhs(l);case 195:return uhs(l);case 203:return ghs(l);case 205:return Ahs(l);case 202:return dhs(l);case 328:return khs(l);case 329:return xhs(l);case 346:case 338:case 340:return bhs(l);case 345:return Ehs(l);case 344:return Bhs(l);case 324:case 325:case 326:return Shs(l);case 341:return whs(l);case 348:return Ths(l);case 317:Nhs(l);case 315:case 314:case 312:case 313:case 322:QKr(l),mu(l,Ug);return;case 318:s0s(l);return;case 309:return Ug(l.type);case 333:case 335:case 334:return Ghs(l);case 350:return vhs(l);case 343:return Rhs(l);case 351:return Dhs(l);case 199:return ihs(l);case 200:return shs(l);case 262:return yhs(l);case 241:case 268:return Xet(l);case 243:return qhs(l);case 244:return $hs(l);case 245:return e_s(l);case 246:return n_s(l);case 247:return i_s(l);case 248:return s_s(l);case 249:return a_s(l);case 250:return o_s(l);case 251:case 252:return p_s(l);case 253:return f_s(l);case 254:return I_s(l);case 255:return C_s(l);case 256:return m_s(l);case 257:return h_s(l);case 258:return __s(l);case 260:return jhs(l);case 208:return zhs(l);case 263:return T_s(l);case 264:return V_s(l);case 265:return W_s(l);case 266:return Q_s(l);case 267:return U_s(l);case 272:return z_s(l);case 271:return q_s(l);case 278:return $_s(l);case 277:return r0s(l);case 242:case 259:gF(l);return;case 282:return Kms(l)}}function MKr(l){Ra(l)&&X(l,C=>{J9(C)&&Ug(C)})}function QKr(l){if(!so(l))if(Hxe(l)||lte(l)){let C=vr(Hxe(l)?54:58),E=l.postfix?Z._0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:Z._0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1,D=l.type,W=Lc(D);qi(l,E,C,Xs(lte(l)&&!(W===Vi||W===oo)?Ta(Hr([W,wn],l.postfix?void 0:ur)):W))}else qi(l,Z.JSDoc_types_can_only_be_used_inside_documentation_comments)}function s0s(l){QKr(l),Ug(l.type);let{parent:C}=l;if(Jc(C)&&ute(C.parent)){Na(C.parent.parameters)!==C&&fr(l,Z.A_rest_parameter_must_be_last_in_a_parameter_list);return}rP(C)||fr(l,Z.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);let E=l.parent.parent;if(!FB(E)){fr(l,Z.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);return}let D=dee(E);if(!D)return;let W=vZ(E);(!W||Na(W.parameters).symbol!==D)&&fr(l,Z.A_rest_parameter_must_be_last_in_a_parameter_list)}function o0s(l){let C=Lc(l.type),{parent:E}=l,D=l.parent.parent;if(rP(l.parent)&&FB(D)){let W=vZ(D),Q=ZKe(D.parent.parent);if(W||Q){let se=qo(Q?D.parent.parent.typeExpression.parameters:W.parameters),Ee=dee(D);if(!se||Ee&&se.symbol===Ee&&Rv(se))return L_(C)}}return Jc(E)&&ute(E.parent)?L_(C):hg(C)}function Y7(l){let C=ls(l),E=Uo(C);E.flags&1?w.assert(!E.deferredNodes,"A type-checked file should have no deferred nodes."):(E.deferredNodes||(E.deferredNodes=new Set),E.deferredNodes.add(l))}function a0s(l){let C=Uo(l);C.deferredNodes&&C.deferredNodes.forEach(c0s),C.deferredNodes=void 0}function c0s(l){var C,E;(C=Mi)==null||C.push(Mi.Phase.Check,"checkDeferredNode",{kind:l.kind,pos:l.pos,end:l.end,path:l.tracingPath});let D=ue;switch(ue=l,M=0,l.kind){case 213:case 214:case 215:case 170:case 286:cJ(l);break;case 218:case 219:case 174:case 173:sms(l);break;case 177:case 178:$Ur(l);break;case 231:w_s(l);break;case 168:Wms(l);break;case 285:AIs(l);break;case 284:pIs(l);break;case 216:case 234:case 217:NCs(l);break;case 222:Rl(l.expression);break;case 226:r6(l)&&cJ(l);break}ue=D,(E=Mi)==null||E.pop()}function l0s(l){var C,E;(C=Mi)==null||C.push(Mi.Phase.Check,"checkSourceFile",{path:l.path},!0),rs("beforeCheck"),u0s(l),rs("afterCheck"),vc("Check","beforeCheck","afterCheck"),(E=Mi)==null||E.pop()}function YKr(l,C){if(C)return!1;switch(l){case 0:return!!Ne.noUnusedLocals;case 1:return!!Ne.noUnusedParameters;default:return w.assertNever(l)}}function HKr(l){return J2.get(l.path)||v}function u0s(l){let C=Uo(l);if(!(C.flags&1)){if(jQ(l,Ne,n))return;Wys(l),Ur(NY),Ur(yP),Ur(bP),Ur(EP),Ur(T4),X(l.statements,Ug),Ug(l.endOfFileToken),a0s(l),ia(l)&&nW(l),u(()=>{!l.isDeclarationFile&&(Ne.noUnusedLocals||Ne.noUnusedParameters)&&uKr(HKr(l),(E,D,W)=>{!HR(E)&&YKr(D,!!(E.flags&33554432))&&UA.add(W)}),l.isDeclarationFile||Vhs()}),ia(l)&&OKr(l),NY.length&&(X(NY,Ohs),Ur(NY)),yP.length&&(X(yP,Mhs),Ur(yP)),bP.length&&(X(bP,Xhs),Ur(bP)),EP.length&&(X(EP,Uhs),Ur(EP)),C.flags|=1}}function XKr(l,C){try{return d=C,g0s(l)}finally{d=void 0}}function KOt(){for(let l of c)l();c=[]}function jOt(l){KOt();let C=u;u=E=>E(),l0s(l),u=C}function g0s(l){if(l){KOt();let C=UA.getGlobalDiagnostics(),E=C.length;jOt(l);let D=UA.getDiagnostics(l.fileName),W=UA.getGlobalDiagnostics();if(W!==C){let Q=Ji(C,W,g6);return vi(Q,D)}else if(E===0&&W.length>0)return vi(W,D);return D}return X(n.getSourceFiles(),jOt),UA.getDiagnostics()}function A0s(){return KOt(),UA.getGlobalDiagnostics()}function d0s(l,C){if(l.flags&67108864)return[];let E=Du(),D=!1;return W(),E.delete("this"),e3t(E);function W(){for(;l;){switch(Tv(l)&&l.locals&&!bs(l)&&se(l.locals,C),l.kind){case 307:if(!mm(l))break;case 267:Ee(Mo(l).exports,C&2623475);break;case 266:se(Mo(l).exports,C&8);break;case 231:l.name&&Q(l.symbol,C);case 263:case 264:D||se(XV(Mo(l)),C&788968);break;case 218:l.name&&Q(l.symbol,C);break}xRe(l)&&Q(jt,C),D=$u(l),l=l.parent}se(kt,C)}function Q(Ve,Oe){if(PQ(Ve)&Oe){let ot=Ve.escapedName;E.has(ot)||E.set(ot,Ve)}}function se(Ve,Oe){Oe&&Ve.forEach(ot=>{Q(ot,Oe)})}function Ee(Ve,Oe){Oe&&Ve.forEach(ot=>{!zd(ot,281)&&!zd(ot,280)&&ot.escapedName!=="default"&&Q(ot,Oe)})}}function p0s(l){return l.kind===80&&zQ(l.parent)&&vl(l.parent)===l}function JKr(l){for(;l.parent.kind===166;)l=l.parent;return l.parent.kind===183}function f0s(l){for(;l.parent.kind===211;)l=l.parent;return l.parent.kind===233}function UKr(l,C){let E,D=Um(l);for(;D&&!(E=C(D));)D=Um(D);return E}function I0s(l){return!!Si(l,C=>Rf(C)&&xE(C.body)||Ql(C)?!0:Sa(C)||dd(C)?"quit":!1)}function zOt(l,C){return!!UKr(l,E=>E===C)}function C0s(l){for(;l.parent.kind===166;)l=l.parent;if(l.parent.kind===271)return l.parent.moduleReference===l?l.parent:void 0;if(l.parent.kind===277)return l.parent.expression===l?l.parent:void 0}function ttt(l){return C0s(l)!==void 0}function m0s(l){switch(CI(l.parent.parent)){case 1:case 3:return z2(l.parent);case 5:if(Io(l.parent)&&QQ(l.parent)===l)return;case 4:case 2:return Mo(l.parent.parent)}}function h0s(l){let C=l.parent;for(;a0(C);)l=C,C=C.parent;if(C&&C.kind===205&&C.qualifier===l)return C}function _0s(l){if(l.expression.kind===110){let C=r0(l,!1,!1);if($l(C)){let E=uJr(C);if(E){let D=nO(E,void 0),W=AJr(E,D);return W&&!vd(W)}}}}function KKr(l){if(eT(l))return z2(l.parent);if(so(l)&&l.parent.kind===211&&l.parent===l.parent.parent.left&&!kc(l)&&!nP(l)&&!_0s(l.parent)){let C=m0s(l);if(C)return C}if(l.parent.kind===277&&cp(l)){let C=FI(l,2998271,!0);if(C&&C!==en)return C}else if(w_(l)&&ttt(l)){let C=CG(l,271);return w.assert(C!==void 0),b7(l,!0)}if(w_(l)){let C=h0s(l);if(C){Lc(C);let E=Uo(l).resolvedSymbol;return E===en?void 0:E}}for(;hDe(l);)l=l.parent;if(f0s(l)){let C=0;l.parent.kind===233?(C=LS(l)?788968:111551,kce(l.parent)&&(C|=111551)):C=1920,C|=2097152;let E=cp(l)?FI(l,C,!0):void 0;if(E)return E}if(l.parent.kind===341)return dee(l.parent);if(l.parent.kind===168&&l.parent.parent.kind===345){w.assert(!so(l));let C=JRe(l.parent);return C&&C.symbol}if(NB(l)){if(wf(l))return;let C=Si(l,pg(J9,Fle,nP)),E=C?901119:111551;if(l.kind===80){if(ZX(l)&&Q7(l)){let W=yet(l.parent);return W===en?void 0:W}let D=FI(l,E,!0,!0,vZ(l));if(!D&&C){let W=Si(l,pg(Sa,HI));if(W)return ZLe(l,!0,Mo(W))}if(D&&C){let W=eV(l);if(W&&_V(W)&&W===D.valueDeclaration)return FI(l,E,!0,!0,ls(W))||D}return D}else{if(kc(l))return Bet(l);if(l.kind===211||l.kind===166){let D=Uo(l);return D.resolvedSymbol?D.resolvedSymbol:(l.kind===211?(Eet(l,0),D.resolvedSymbol||(D.resolvedSymbol=jKr(iC(l.expression),AL(l.name)))):WJr(l,0),!D.resolvedSymbol&&C&&a0(l)?ZLe(l):D.resolvedSymbol)}else if(nP(l))return ZLe(l)}}else if(JKr(l)){let C=l.parent.kind===183?788968:1920,E=FI(l,C,!1,!0);return E&&E!==en?E:y$e(l)}if(l.parent.kind===182)return FI(l,1)}function jKr(l,C){let E=$Wt(l,C);if(E.length&&l.members){let D=m$e(yT(l).members);if(E===ey(l))return D;if(D){let W=ol(D),Q=tr(E,Ee=>Ee.declaration),se=Ot(Q,sd).join(",");if(W.filteredIndexSymbolCache||(W.filteredIndexSymbolCache=new Map),W.filteredIndexSymbolCache.has(se))return W.filteredIndexSymbolCache.get(se);{let Ee=SA(131072,"__index");return Ee.declarations=tr(E,Ve=>Ve.declaration),Ee.parent=l.aliasSymbol?l.aliasSymbol:l.symbol?l.symbol:jv(Ee.declarations[0].parent),W.filteredIndexSymbolCache.set(se,Ee),Ee}}}}function ZLe(l,C,E){if(w_(l)){let se=FI(l,901119,C,!0,vZ(l));if(!se&&sr(l)&&E&&(se=GA(Z_(Y1(E),l.escapedText,901119))),se)return se}let D=sr(l)?E:ZLe(l.left,C,E),W=sr(l)?l.escapedText:l.right.escapedText;if(D){let Q=D.flags&111551&&_g(lo(D),"prototype"),se=Q?lo(Q):xp(D);return _g(se,W)}}function jv(l,C){if(Gc(l))return mm(l)?GA(l.symbol):void 0;let{parent:E}=l,D=E.parent;if(!(l.flags&67108864)){if(AGr(l)){let W=Mo(E);return M9(l.parent)&&l.parent.propertyName===l?het(W):W}else if(fee(l))return Mo(E.parent);if(l.kind===80){if(ttt(l))return KKr(l);if(E.kind===208&&D.kind===206&&l===E.propertyName){let W=H7(D),Q=_g(W,l.escapedText);if(Q)return Q}else if(vN(E)&&E.name===l)return E.keywordToken===105&&ao(l)==="target"?pOt(E).symbol:E.keywordToken===102&&ao(l)==="meta"?U5r().members.get("meta"):void 0}switch(l.kind){case 80:case 81:case 211:case 166:if(!oV(l))return KKr(l);case 110:let W=r0(l,!1,!1);if($l(W)){let Ee=tB(W);if(Ee.thisParameter)return Ee.thisParameter}if(lce(l))return Rl(l).symbol;case 197:return D$e(l).symbol;case 108:return Rl(l).symbol;case 137:let Q=l.parent;return Q&&Q.kind===176?Q.parent.symbol:void 0;case 11:case 15:if(EZ(l.parent.parent)&&L8(l.parent.parent)===l||(l.parent.kind===272||l.parent.kind===278)&&l.parent.moduleSpecifier===l||so(l)&&RN(l.parent)&&l.parent.moduleSpecifier===l||so(l)&&Q0(l.parent,!1)||pC(l.parent)||id(l.parent)&&r_(l.parent.parent)&&l.parent.parent.argument===l.parent)return z0(l,l,C);if(cu(E)&&M3(E)&&E.arguments[1]===l)return Mo(E);case 9:let se=hA(E)?E.argumentExpression===l?l_(E.expression):void 0:id(E)&&hs(D)?Lc(D.objectType):void 0;return se&&_g(se,Rd(l.text));case 90:case 100:case 39:case 86:return z2(l.parent);case 205:return r_(l)?jv(l.argument.literal,C):void 0;case 95:return tf(l.parent)?w.checkDefined(l.parent.symbol):void 0;case 102:case 105:return vN(l.parent)?bUr(l.parent).symbol:void 0;case 104:if(no(l.parent)){let Ee=l_(l.parent.right),Ve=BOt(Ee);return Ve?.symbol??Ee.symbol}return;case 236:return Rl(l).symbol;case 295:if(ZX(l)&&Q7(l)){let Ee=yet(l.parent);return Ee===en?void 0:Ee}default:return}}}function y0s(l){if(sr(l)&&Io(l.parent)&&l.parent.name===l){let C=AL(l),E=l_(l.parent.expression),D=E.flags&1048576?E.types:[E];return Fr(D,W=>Gt(ey(W),Q=>R7(C,Q.keyType)))}}function b0s(l){if(l&&l.kind===304)return FI(l.name,2208703)}function E0s(l){return c0(l)?l.parent.parent.moduleSpecifier?xP(l.parent.parent,l):FI(l.propertyName||l.name,2998271):FI(l,2998271)}function H7(l){if(Gc(l)&&!mm(l)||l.flags&67108864)return cr;let C=Ome(l),E=C&&_C(Mo(C.class));if(LS(l)){let D=Lc(l);return E?JE(D,E.thisType):D}if(NB(l))return qOt(l);if(E&&!C.isImplements){let D=$i(wa(E));return D?JE(D,E.thisType):cr}if(zQ(l)){let D=Mo(l);return xp(D)}if(p0s(l)){let D=jv(l);return D?xp(D):cr}if(ml(l))return oA(l,!0,0)||cr;if(DC(l)){let D=Mo(l);return D?lo(D):cr}if(AGr(l)){let D=jv(l);return D?lo(D):cr}if(pu(l))return oA(l.parent,!0,0)||cr;if(ttt(l)){let D=jv(l);if(D){let W=xp(D);return OA(W)?lo(D):W}}return vN(l.parent)&&l.parent.keywordToken===l.kind?bUr(l.parent):l4(l)?p3t(!1):cr}function rtt(l){if(w.assert(l.kind===210||l.kind===209),l.parent.kind===250){let W=xLe(l.parent);return uJ(l,W||cr)}if(l.parent.kind===226){let W=l_(l.parent.right);return uJ(l,W||cr)}if(l.parent.kind===303){let W=ps(l.parent.parent,tu),Q=rtt(W)||cr,se=L3(W.properties,l.parent);return LUr(W,Q,se)}let C=ps(l.parent,If),E=rtt(C)||cr,D=IL(65,E,wn,l.parent)||cr;return VUr(C,E,C.elements.indexOf(l),D)}function B0s(l){let C=rtt(ps(l.parent.parent,H9));return C&&_g(C,l.escapedText)}function qOt(l){return t6(l)&&(l=l.parent),ty(l_(l))}function zKr(l){let C=z2(l.parent);return $u(l)?lo(C):xp(C)}function qKr(l){let C=l.name;switch(C.kind){case 80:return pb(ao(C));case 9:case 11:return pb(C.text);case 167:let E=KN(C);return c_(E,12288)?E:Jt;default:return w.fail("Unsupported property name.")}}function $Ot(l){l=$0(l);let C=Du(Id(l)),E=Pu(l,0).length?Q2:Pu(l,1).length?qt:void 0;return E&&X(Id(E),D=>{C.has(D.escapedName)||C.set(D.escapedName,D)}),WV(C)}function ntt(l){return Pu(l,0).length!==0||Pu(l,1).length!==0}function $Kr(l){let C=v0s(l);return C?Fr(C,$Kr):[l]}function v0s(l){if(aI(l)&6)return tr(ol(l).containingType.types,C=>_g(C,l.escapedName));if(l.flags&33554432){let{links:{leftSpread:C,rightSpread:E,syntheticOrigin:D}}=l;return C?[C,E]:D?[D]:Rm(S0s(l))}}function S0s(l){let C,E=l;for(;E=ol(E).target;)C=E;return C}function w0s(l){if(Ip(l))return!1;let C=jc(l,sr);if(!C)return!1;let E=C.parent;return E?!((Io(E)||KC(E))&&E.name===C)&&Gye(C)===jt:!1}function T0s(l){return yX(l.parent)&&l===l.parent.name}function N0s(l,C){var E;let D=jc(l,sr);if(D){let W=Gye(D,T0s(D));if(W){if(W.flags&1048576){let se=GA(W.exportSymbol);if(!C&&se.flags&944&&!(se.flags&3))return;W=se}let Q=o_(W);if(Q){if(Q.flags&512&&((E=Q.valueDeclaration)==null?void 0:E.kind)===307){let se=Q.valueDeclaration,Ee=ls(D);return se!==Ee?void 0:se}return Si(D.parent,se=>yX(se)&&Mo(se)===Q)}}}}function R0s(l){let C=$d(l);if(C)return C;let E=jc(l,sr);if(E){let D=X0s(E);if(ON(D,111551)&&!MN(D,111551))return YE(D)}}function D0s(l){return l.valueDeclaration&&ml(l.valueDeclaration)&&fA(l.valueDeclaration).parent.kind===299}function e8r(l){if(l.flags&418&&l.valueDeclaration&&!Gc(l.valueDeclaration)){let C=ol(l);if(C.isDeclarationWithCollidingName===void 0){let E=S2(l.valueDeclaration);if(Hae(E)||D0s(l))if(Pi(E.parent,l.escapedName,111551,void 0,!1))C.isDeclarationWithCollidingName=!0;else if(eMt(l.valueDeclaration,16384)){let D=eMt(l.valueDeclaration,32768),W=MR(E,!1),Q=E.kind===241&&MR(E.parent,!1);C.isDeclarationWithCollidingName=!w8(E)&&(!D||!W&&!Q)}else C.isDeclarationWithCollidingName=!1}return C.isDeclarationWithCollidingName}return!1}function x0s(l){if(!Ip(l)){let C=jc(l,sr);if(C){let E=Gye(C);if(E&&e8r(E))return E.valueDeclaration}}}function k0s(l){let C=jc(l,DC);if(C){let E=Mo(C);if(E)return e8r(E)}return!1}function t8r(l){switch(w.assert(Vr),l.kind){case 271:return itt(Mo(l));case 273:case 274:case 276:case 281:let C=Mo(l);return!!C&&itt(C,!0);case 278:let E=l.exportClause;return!!E&&(rD(E)||lr(E.elements,t8r));case 277:return l.expression&&l.expression.kind===80?itt(Mo(l),!0):!0}return!1}function G0s(l){let C=jc(l,Cm);return C===void 0||C.parent.kind!==307||!NQ(C)?!1:itt(Mo(C))&&C.moduleReference&&!wf(C.moduleReference)}function itt(l,C){if(!l)return!1;let E=ls(l.valueDeclaration),D=E&&Mo(E);db(D);let W=H1(qm(l));return W===en?!C||!MN(l):!!(Kb(l,C,!0)&111551)&&(uV(Ne)||!kye(W))}function kye(l){return EOt(l)||!!l.constEnumOnlyModule}function r8r(l,C){if(w.assert(Vr),uo(l)){let E=Mo(l),D=E&&ol(E);if(D?.referenced)return!0;let W=ol(E).aliasTarget;if(W&&N_(l)&32&&Kb(W)&111551&&(uV(Ne)||!kye(W)))return!0}return C?!!mu(l,E=>r8r(E,C)):!1}function n8r(l){if(xE(l.body)){if(Nv(l)||Dh(l))return!1;let C=Mo(l),E=XY(C);return E.length>1||E.length===1&&E[0].declaration!==l}return!1}function F0s(l){let C=ott(l);if(!C)return!1;let E=Lc(C);return Fre(E)}function stt(l){return(Z0s(l)||L0s(l))&&!F0s(l)}function Z0s(l){return!!nt&&!vZe(l)&&!FB(l)&&!!l.initializer&&!ba(l,31)}function L0s(l){return nt&&vZe(l)&&(FB(l)||!l.initializer)&&ba(l,31)}function i8r(l){let C=jc(l,D=>mp(D)||zs(D));if(!C)return!1;let E;if(zs(C)){if(C.type||!so(C)&&!Fye(C))return!1;let D=O8(C);if(!D||!B2(D))return!1;E=Mo(D)}else E=Mo(C);return!E||!(E.flags&16|3)?!1:!!JC(Y1(E),D=>D.flags&111551&&qQ(D.valueDeclaration))}function V0s(l){let C=jc(l,mp);if(!C)return v;let E=Mo(C);return E&&Id(lo(E))||v}function Xre(l){var C;let E=l.id||0;return E<0||E>=Yg.length?0:((C=Yg[E])==null?void 0:C.flags)||0}function eMt(l,C){return W0s(l,C),!!(Xre(l)&C)}function W0s(l,C){if(!Ne.noCheck&&Hee(ls(l),Ne)||Uo(l).calculatedFlags&C)return;switch(C){case 16:case 32:return se(l);case 128:case 256:case 2097152:return Q(l);case 512:case 8192:case 65536:case 262144:return Ve(l);case 536870912:return ot(l);case 4096:case 32768:case 16384:return Nt(l);default:return w.assertNever(C,`Unhandled node check flag calculation: ${w.formatNodeCheckFlags(C)}`)}function D(ln,hn){let mi=hn(ln,ln.parent);if(mi!=="skip")return mi||Z6(ln,hn)}function W(ln){let hn=Uo(ln);if(hn.calculatedFlags&C)return"skip";hn.calculatedFlags|=2097536,se(ln)}function Q(ln){D(ln,W)}function se(ln){let hn=Uo(ln);hn.calculatedFlags|=48,ln.kind===108&&det(ln)}function Ee(ln){let hn=Uo(ln);if(hn.calculatedFlags&C)return"skip";hn.calculatedFlags|=336384,ot(ln)}function Ve(ln){D(ln,Ee)}function Oe(ln){return NB(ln)||G_(ln.parent)&&(ln.parent.objectAssignmentInitializer??ln.parent.name)===ln}function ot(ln){let hn=Uo(ln);if(hn.calculatedFlags|=536920064,sr(ln)&&Oe(ln)&&!(Io(ln.parent)&&ln.parent.name===ln)){let mi=vy(ln);mi&&mi!==en&&oJr(ln,mi)}}function Wt(ln){let hn=Uo(ln);if(hn.calculatedFlags&C)return"skip";hn.calculatedFlags|=53248,Mr(ln)}function Nt(ln){let hn=S2(eT(ln)?ln.parent:ln);D(hn,Wt)}function Mr(ln){ot(ln),xg(ln)&&KN(ln),kc(ln)&&rC(ln.parent)&&Pet(ln.parent)}}function AJ(l){return VKr(l.parent),Uo(l).enumMemberValue??UC(void 0)}function s8r(l){switch(l.kind){case 306:case 211:case 212:return!0}return!1}function tMt(l){if(l.kind===306)return AJ(l).value;Uo(l).resolvedSymbol||iC(l);let C=Uo(l).resolvedSymbol||(cp(l)?FI(l,111551,!0):void 0);if(C&&C.flags&8){let E=C.valueDeclaration;if(Ac(E.parent))return AJ(E).value}}function rMt(l){return!!(l.flags&524288)&&Pu(l,0).length>0}function P0s(l,C){var E;let D=jc(l,w_);if(!D||C&&(C=jc(C),!C))return 0;let W=!1;if(a0(D)){let ot=FI(ib(D),111551,!0,!0,C);W=!!((E=ot?.declarations)!=null&&E.every(Ex))}let Q=FI(D,111551,!0,!0,C),se=Q&&Q.flags&2097152?qm(Q):Q;W||(W=!!(Q&&MN(Q,111551)));let Ee=FI(D,788968,!0,!0,C),Ve=Ee&&Ee.flags&2097152?qm(Ee):Ee;if(Q||W||(W=!!(Ee&&MN(Ee,788968))),se&&se===Ve){let ot=f3t(!1);if(ot&&se===ot)return 9;let Wt=lo(se);if(Wt&&H0e(Wt))return W?10:1}if(!Ve)return W?11:0;let Oe=xp(Ve);return OA(Oe)?W?11:0:Oe.flags&3?11:c_(Oe,245760)?2:c_(Oe,528)?6:c_(Oe,296)?3:c_(Oe,2112)?4:c_(Oe,402653316)?5:aA(Oe)?7:c_(Oe,12288)?8:rMt(Oe)?10:UB(Oe)?7:11}function O0s(l,C,E,D){let W=jc(l,nce);if(!W)return _e.createToken(133);let Q=Mo(W),se=Q&&!(Q.flags&133120)?$P(lo(Q)):cr;return Kt.serializeTypeForDeclaration(W,se,Q,C,E|1024,D)}function M0s(l){return $l(l)||tf(l)||TQ(l)}function LLe(l){l=jc(l,AX);let C=l.kind===178?177:178,E=zd(Mo(l),C),D=E&&E.pos{if(!C)C=D.expression;else return C=void 0,!0}):C=E}return C}function Q0s(l,C,E,D){let W=jc(l,$l);return W?Kt.serializeReturnTypeForSignature(tB(W),C,E|1024,D):_e.createToken(133)}function Y0s(l,C,E,D){let W=jc(l,tn);if(!W)return _e.createToken(133);let Q=$b(qOt(W));return Kt.expressionOrTypeToTypeNode(W,Q,void 0,C,E|1024,D)}function H0s(l){return kt.has(Rd(l))}function Gye(l,C){let E=Uo(l).resolvedSymbol;if(E)return E;let D=l;if(C){let W=l.parent;DC(W)&&l===W.name&&(D=Y4(W))}return Pi(D,l.escapedText,3257279,void 0,!0)}function X0s(l){let C=Uo(l).resolvedSymbol;return C&&C!==en?C:Pi(l,l.escapedText,3257279,void 0,!0,void 0)}function J0s(l){if(!Ip(l)){let C=jc(l,sr);if(C){let E=Gye(C);if(E)return H1(E).valueDeclaration}}}function U0s(l){if(!Ip(l)){let C=jc(l,sr);if(C){let E=Gye(C);if(E)return Gt(H1(E).declarations,D=>{switch(D.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 K0s(l){return fu(l)||zs(l)&&Fye(l)?jY(lo(Mo(l))):!1}function j0s(l,C,E){let D=l.flags&1056?Kt.symbolToExpression(l.symbol,111551,C,void 0,E):l===Mn?_e.createTrue():l===dn&&_e.createFalse();if(D)return D;let W=l.value;return typeof W=="object"?_e.createBigIntLiteral(W):typeof W=="string"?_e.createStringLiteral(W):W<0?_e.createPrefixUnaryExpression(41,_e.createNumericLiteral(-W)):_e.createNumericLiteral(W)}function z0s(l,C){let E=lo(Mo(l));return j0s(E,l,C)}function c8r(l){return l?(SP(l),ls(l).localJsxFactory||OG):OG}function nMt(l){if(l){let C=ls(l);if(C){if(C.localJsxFragmentFactory)return C.localJsxFragmentFactory;let E=C.pragmas.get("jsxfrag"),D=Ra(E)?E[0]:E;if(D)return C.localJsxFragmentFactory=V6(D.arguments.factory,Qe),C.localJsxFragmentFactory}}if(Ne.jsxFragmentFactory)return V6(Ne.jsxFragmentFactory,Qe)}function ott(l){let C=fC(l);if(C)return C;if(l.kind===169&&l.parent.kind===178){let E=LLe(l.parent).getAccessor;if(E)return rb(E)}}function q0s(l){let C=rb(l);if(C)return C;if(l.kind===177){let E=LLe(l).setAccessor;if(E){let D=KX(E);if(D)return fC(D)}}}function $0s(){return{getReferencedExportContainer:N0s,getReferencedImportDeclaration:R0s,getReferencedDeclarationWithCollidingName:x0s,isDeclarationWithCollidingName:k0s,isValueAliasDeclaration:C=>{let E=jc(C);return E&&Vr?t8r(E):!0},hasGlobalName:H0s,isReferencedAliasDeclaration:(C,E)=>{let D=jc(C);return D&&Vr?r8r(D,E):!0},hasNodeCheckFlag:(C,E)=>{let D=jc(C);return D?eMt(D,E):!1},isTopLevelValueImportEqualsWithEntityName:G0s,isDeclarationVisible:$G,isImplementationOfOverload:n8r,requiresAddingImplicitUndefined:stt,isExpandoFunctionDeclaration:i8r,getPropertiesOfContainerFunction:V0s,createTypeOfDeclaration:O0s,createReturnTypeOfSignatureDeclaration:Q0s,createTypeOfExpression:Y0s,createLiteralConstValue:z0s,isSymbolAccessible:CT,isEntityNameVisible:PV,getConstantValue:C=>{let E=jc(C,s8r);return E?tMt(E):void 0},getEnumMemberValue:C=>{let E=jc(C,_V);return E?AJ(E):void 0},collectLinkedAliases:MY,markLinkedReferences:C=>{let E=jc(C);return E&&M7(E,0)},getReferencedValueDeclaration:J0s,getReferencedValueDeclarations:U0s,getTypeReferenceSerializationKind:P0s,isOptionalParameter:vZe,isArgumentsLocalBinding:w0s,getExternalModuleFileFromDeclaration:C=>{let E=jc(C,$ae);return E&&iMt(E)},isLiteralConstDeclaration:K0s,isLateBound:C=>{let E=jc(C,DC),D=E&&Mo(E);return!!(D&&aI(D)&4096)},getJsxFactoryEntity:c8r,getJsxFragmentFactoryEntity:nMt,isBindingCapturedByNode:(C,E)=>{let D=jc(C),W=jc(E);return!!D&&!!W&&(zs(W)||ml(W))&&mfs(D,W)},getDeclarationStatementsForSourceFile:(C,E,D)=>{let W=jc(C);w.assert(W&&W.kind===307,"Non-sourcefile node passed into getDeclarationsForSourceFile");let Q=Mo(C);return Q?(db(Q),Q.exports?Kt.symbolTableToDeclarationStatements(Q.exports,C,E,D):[]):C.locals?Kt.symbolTableToDeclarationStatements(C.locals,C,E,D):[]},isImportRequiredByAugmentation:l,isDefinitelyReferenceToGlobalSymbolObject:d7};function l(C){let E=ls(C);if(!E.symbol)return!1;let D=iMt(C);if(!D||D===E)return!1;let W=IT(E.symbol);for(let Q of on(W.values()))if(Q.mergeId){let se=GA(Q);if(se.declarations){for(let Ee of se.declarations)if(ls(Ee)===D)return!0}}return!1}}function iMt(l){let C=l.kind===267?eo(l.name,bu):DQ(l),E=V4(C,C,void 0);if(E)return zd(E,307)}function eys(){for(let C of n.getSourceFiles())wDt(C,Ne);zC=new Map;let l;for(let C of n.getSourceFiles())if(!C.redirectInfo){if(!ia(C)){let E=C.locals.get("globalThis");if(E?.declarations)for(let D of E.declarations)UA.add(Us(D,Z.Declaration_name_conflicts_with_built_in_global_identifier_0,"globalThis"));M1(kt,C.locals)}C.jsGlobalAugmentations&&M1(kt,C.jsGlobalAugmentations),C.patternAmbientModules&&C.patternAmbientModules.length&&(Fm=vi(Fm,C.patternAmbientModules)),C.moduleAugmentations.length&&(l||(l=[])).push(C.moduleAugmentations),C.symbol&&C.symbol.globalExports&&C.symbol.globalExports.forEach((D,W)=>{kt.has(W)||kt.set(W,D)})}if(l)for(let C of l)for(let E of C)v2(E.parent)&&zZ(E);if(qZ(),ol(Zt).type=Pe,ol(jt).type=yC("IArguments",0,!0),ol(en).type=cr,ol(Dr).type=X1(16,Dr),Fn=yC("Array",1,!0),GI=yC("Object",0,!0),qC=yC("Function",0,!0),Q2=it&&yC("CallableFunction",0,!0)||qC,qt=it&&yC("NewableFunction",0,!0)||qC,Nl=yC("String",0,!0),vA=yC("Number",0,!0),PA=yC("Boolean",0,!0),XI=yC("RegExp",0,!0),rp=L_(Qt),Hd=L_(_r),Hd===Zc&&(Hd=qn(void 0,Be,v,v,v)),Bs=eXr("ReadonlyArray",1)||Fn,hC=Bs?q0e(Bs,[Qt]):rp,bm=eXr("ThisType",1),l)for(let C of l)for(let E of C)v2(E.parent)||zZ(E);zC.forEach(({firstFile:C,secondFile:E,conflictingSymbols:D})=>{if(D.size<8)D.forEach(({isBlockScoped:W,firstFileLocations:Q,secondFileLocations:se},Ee)=>{let Ve=W?Z.Cannot_redeclare_block_scoped_variable_0:Z.Duplicate_identifier_0;for(let Oe of Q)NP(Oe,Ve,Ee,se);for(let Oe of se)NP(Oe,Ve,Ee,Q)});else{let W=on(D.keys()).join(", ");UA.add(eg(Us(C,Z.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0,W),Us(E,Z.Conflicts_are_in_this_file))),UA.add(eg(Us(E,Z.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0,W),Us(C,Z.Conflicts_are_in_this_file)))}}),zC=void 0}function Zm(l,C){if(Ne.importHelpers){let E=ls(l);if(U9(E,Ne)&&!(l.flags&33554432)){let D=rys(E,l);if(D!==en){let W=ol(D);if(W.requestedExternalEmitHelpers??(W.requestedExternalEmitHelpers=0),(W.requestedExternalEmitHelpers&C)!==C){let Q=C&~W.requestedExternalEmitHelpers;for(let se=1;se<=16777216;se<<=1)if(Q&se)for(let Ee of tys(se)){let Ve=JI(Z_(IT(D),Rd(Ee),111551));Ve?se&524288?lr(XY(Ve),Oe=>tE(Oe)>3)||fr(l,Z.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,vx,Ee,4):se&1048576?lr(XY(Ve),Oe=>tE(Oe)>4)||fr(l,Z.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,vx,Ee,5):se&1024&&(lr(XY(Ve),Oe=>tE(Oe)>2)||fr(l,Z.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,vx,Ee,3)):fr(l,Z.This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0,vx,Ee)}}W.requestedExternalEmitHelpers|=C}}}}function tys(l){switch(l){case 1:return["__extends"];case 2:return["__assign"];case 4:return["__rest"];case 8:return lt?["__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 w.fail("Unrecognized helper")}}function rys(l,C){let E=Uo(l);return E.externalHelpersModule||(E.externalHelpersModule=LY(zys(l),vx,Z.This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found,C)||en),E.externalHelpersModule}function rk(l){var C;let E=sys(l)||nys(l);if(E!==void 0)return E;if(Jc(l)&&sV(l))return Zh(l,Z.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters);let D=Rp(l)?l.declarationList.flags&7:0,W,Q,se,Ee,Ve,Oe=0,ot=!1,Wt=!1;for(let Nt of l.modifiers)if(GC(Nt)){if(q$(lt,l,l.parent,l.parent.parent)){if(lt&&(l.kind===177||l.kind===178)){let Mr=LLe(l);if(FE(Mr.firstAccessor)&&l===Mr.secondAccessor)return Zh(l,Z.Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name)}}else return l.kind===174&&!xE(l.body)?Zh(l,Z.A_decorator_can_only_decorate_a_method_implementation_not_an_overload):Zh(l,Z.Decorators_are_not_valid_here);if(Oe&-34849)return qi(Nt,Z.Decorators_are_not_valid_here);if(Wt&&Oe&98303){w.assertIsDefined(Ve);let Mr=ls(Nt);return iW(Mr)?!1:(eg(fr(Nt,Z.Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export),Us(Ve,Z.Decorator_used_before_export_here)),!0)}Oe|=32768,Oe&98303?Oe&32&&(ot=!0):Wt=!0,Ve??(Ve=Nt)}else{if(Nt.kind!==148){if(l.kind===171||l.kind===173)return qi(Nt,Z._0_modifier_cannot_appear_on_a_type_member,vr(Nt.kind));if(l.kind===181&&(Nt.kind!==126||!Sa(l.parent)))return qi(Nt,Z._0_modifier_cannot_appear_on_an_index_signature,vr(Nt.kind))}if(Nt.kind!==103&&Nt.kind!==147&&Nt.kind!==87&&l.kind===168)return qi(Nt,Z._0_modifier_cannot_appear_on_a_type_parameter,vr(Nt.kind));switch(Nt.kind){case 87:{if(l.kind!==266&&l.kind!==168)return qi(l,Z.A_class_member_cannot_have_the_0_keyword,vr(87));let hn=Zv(l.parent)&&SZ(l.parent)||l.parent;if(l.kind===168&&!(dd(hn)||Sa(hn)||Y(hn)||H(hn)||CV(hn)||A(hn)||jS(hn)))return qi(Nt,Z._0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class,vr(Nt.kind));break}case 164:if(Oe&16)return qi(Nt,Z._0_modifier_already_seen,"override");if(Oe&128)return qi(Nt,Z._0_modifier_cannot_be_used_with_1_modifier,"override","declare");if(Oe&8)return qi(Nt,Z._0_modifier_must_precede_1_modifier,"override","readonly");if(Oe&512)return qi(Nt,Z._0_modifier_must_precede_1_modifier,"override","accessor");if(Oe&1024)return qi(Nt,Z._0_modifier_must_precede_1_modifier,"override","async");Oe|=16,Ee=Nt;break;case 125:case 124:case 123:let Mr=jue(VQ(Nt.kind));if(Oe&7)return qi(Nt,Z.Accessibility_modifier_already_seen);if(Oe&16)return qi(Nt,Z._0_modifier_must_precede_1_modifier,Mr,"override");if(Oe&256)return qi(Nt,Z._0_modifier_must_precede_1_modifier,Mr,"static");if(Oe&512)return qi(Nt,Z._0_modifier_must_precede_1_modifier,Mr,"accessor");if(Oe&8)return qi(Nt,Z._0_modifier_must_precede_1_modifier,Mr,"readonly");if(Oe&1024)return qi(Nt,Z._0_modifier_must_precede_1_modifier,Mr,"async");if(l.parent.kind===268||l.parent.kind===307)return qi(Nt,Z._0_modifier_cannot_appear_on_a_module_or_namespace_element,Mr);if(Oe&64)return Nt.kind===123?qi(Nt,Z._0_modifier_cannot_be_used_with_1_modifier,Mr,"abstract"):qi(Nt,Z._0_modifier_must_precede_1_modifier,Mr,"abstract");if(Rh(l))return qi(Nt,Z.An_accessibility_modifier_cannot_be_used_with_a_private_identifier);Oe|=VQ(Nt.kind);break;case 126:if(Oe&256)return qi(Nt,Z._0_modifier_already_seen,"static");if(Oe&8)return qi(Nt,Z._0_modifier_must_precede_1_modifier,"static","readonly");if(Oe&1024)return qi(Nt,Z._0_modifier_must_precede_1_modifier,"static","async");if(Oe&512)return qi(Nt,Z._0_modifier_must_precede_1_modifier,"static","accessor");if(l.parent.kind===268||l.parent.kind===307)return qi(Nt,Z._0_modifier_cannot_appear_on_a_module_or_namespace_element,"static");if(l.kind===169)return qi(Nt,Z._0_modifier_cannot_appear_on_a_parameter,"static");if(Oe&64)return qi(Nt,Z._0_modifier_cannot_be_used_with_1_modifier,"static","abstract");if(Oe&16)return qi(Nt,Z._0_modifier_must_precede_1_modifier,"static","override");Oe|=256,W=Nt;break;case 129:if(Oe&512)return qi(Nt,Z._0_modifier_already_seen,"accessor");if(Oe&8)return qi(Nt,Z._0_modifier_cannot_be_used_with_1_modifier,"accessor","readonly");if(Oe&128)return qi(Nt,Z._0_modifier_cannot_be_used_with_1_modifier,"accessor","declare");if(l.kind!==172)return qi(Nt,Z.accessor_modifier_can_only_appear_on_a_property_declaration);Oe|=512;break;case 148:if(Oe&8)return qi(Nt,Z._0_modifier_already_seen,"readonly");if(l.kind!==172&&l.kind!==171&&l.kind!==181&&l.kind!==169)return qi(Nt,Z.readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature);if(Oe&512)return qi(Nt,Z._0_modifier_cannot_be_used_with_1_modifier,"readonly","accessor");Oe|=8;break;case 95:if(Ne.verbatimModuleSyntax&&!(l.flags&33554432)&&l.kind!==265&&l.kind!==264&&l.kind!==267&&l.parent.kind===307&&(De===1||ls(l).impliedNodeFormat===1))return qi(Nt,Z.A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled);if(Oe&32)return qi(Nt,Z._0_modifier_already_seen,"export");if(Oe&128)return qi(Nt,Z._0_modifier_must_precede_1_modifier,"export","declare");if(Oe&64)return qi(Nt,Z._0_modifier_must_precede_1_modifier,"export","abstract");if(Oe&1024)return qi(Nt,Z._0_modifier_must_precede_1_modifier,"export","async");if(Sa(l.parent))return qi(Nt,Z._0_modifier_cannot_appear_on_class_elements_of_this_kind,"export");if(l.kind===169)return qi(Nt,Z._0_modifier_cannot_appear_on_a_parameter,"export");if(D===4)return qi(Nt,Z._0_modifier_cannot_appear_on_a_using_declaration,"export");if(D===6)return qi(Nt,Z._0_modifier_cannot_appear_on_an_await_using_declaration,"export");Oe|=32;break;case 90:let ln=l.parent.kind===307?l.parent:l.parent.parent;if(ln.kind===267&&!Yf(ln))return qi(Nt,Z.A_default_export_can_only_be_used_in_an_ECMAScript_style_module);if(D===4)return qi(Nt,Z._0_modifier_cannot_appear_on_a_using_declaration,"default");if(D===6)return qi(Nt,Z._0_modifier_cannot_appear_on_an_await_using_declaration,"default");if(Oe&32){if(ot)return qi(Ve,Z.Decorators_are_not_valid_here)}else return qi(Nt,Z._0_modifier_must_precede_1_modifier,"export","default");Oe|=2048;break;case 138:if(Oe&128)return qi(Nt,Z._0_modifier_already_seen,"declare");if(Oe&1024)return qi(Nt,Z._0_modifier_cannot_be_used_in_an_ambient_context,"async");if(Oe&16)return qi(Nt,Z._0_modifier_cannot_be_used_in_an_ambient_context,"override");if(Sa(l.parent)&&!Ql(l))return qi(Nt,Z._0_modifier_cannot_appear_on_class_elements_of_this_kind,"declare");if(l.kind===169)return qi(Nt,Z._0_modifier_cannot_appear_on_a_parameter,"declare");if(D===4)return qi(Nt,Z._0_modifier_cannot_appear_on_a_using_declaration,"declare");if(D===6)return qi(Nt,Z._0_modifier_cannot_appear_on_an_await_using_declaration,"declare");if(l.parent.flags&33554432&&l.parent.kind===268)return qi(Nt,Z.A_declare_modifier_cannot_be_used_in_an_already_ambient_context);if(Rh(l))return qi(Nt,Z._0_modifier_cannot_be_used_with_a_private_identifier,"declare");if(Oe&512)return qi(Nt,Z._0_modifier_cannot_be_used_with_1_modifier,"declare","accessor");Oe|=128,Q=Nt;break;case 128:if(Oe&64)return qi(Nt,Z._0_modifier_already_seen,"abstract");if(l.kind!==263&&l.kind!==185){if(l.kind!==174&&l.kind!==172&&l.kind!==177&&l.kind!==178)return qi(Nt,Z.abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration);if(!(l.parent.kind===263&&ba(l.parent,64))){let hn=l.kind===172?Z.Abstract_properties_can_only_appear_within_an_abstract_class:Z.Abstract_methods_can_only_appear_within_an_abstract_class;return qi(Nt,hn)}if(Oe&256)return qi(Nt,Z._0_modifier_cannot_be_used_with_1_modifier,"static","abstract");if(Oe&2)return qi(Nt,Z._0_modifier_cannot_be_used_with_1_modifier,"private","abstract");if(Oe&1024&&se)return qi(se,Z._0_modifier_cannot_be_used_with_1_modifier,"async","abstract");if(Oe&16)return qi(Nt,Z._0_modifier_must_precede_1_modifier,"abstract","override");if(Oe&512)return qi(Nt,Z._0_modifier_must_precede_1_modifier,"abstract","accessor")}if(Sf(l)&&l.name.kind===81)return qi(Nt,Z._0_modifier_cannot_be_used_with_a_private_identifier,"abstract");Oe|=64;break;case 134:if(Oe&1024)return qi(Nt,Z._0_modifier_already_seen,"async");if(Oe&128||l.parent.flags&33554432)return qi(Nt,Z._0_modifier_cannot_be_used_in_an_ambient_context,"async");if(l.kind===169)return qi(Nt,Z._0_modifier_cannot_appear_on_a_parameter,"async");if(Oe&64)return qi(Nt,Z._0_modifier_cannot_be_used_with_1_modifier,"async","abstract");Oe|=1024,se=Nt;break;case 103:case 147:{let hn=Nt.kind===103?8192:16384,mi=Nt.kind===103?"in":"out",Ti=Zv(l.parent)&&(SZ(l.parent)||be((C=OX(l.parent))==null?void 0:C.tags,d4))||l.parent;if(l.kind!==168||Ti&&!(HI(Ti)||Sa(Ti)||Wf(Ti)||d4(Ti)))return qi(Nt,Z._0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias,mi);if(Oe&hn)return qi(Nt,Z._0_modifier_already_seen,mi);if(hn&8192&&Oe&16384)return qi(Nt,Z._0_modifier_must_precede_1_modifier,"in","out");Oe|=hn;break}}}return l.kind===176?Oe&256?qi(W,Z._0_modifier_cannot_appear_on_a_constructor_declaration,"static"):Oe&16?qi(Ee,Z._0_modifier_cannot_appear_on_a_constructor_declaration,"override"):Oe&1024?qi(se,Z._0_modifier_cannot_appear_on_a_constructor_declaration,"async"):!1:(l.kind===272||l.kind===271)&&Oe&128?qi(Q,Z.A_0_modifier_cannot_be_used_with_an_import_declaration,"declare"):l.kind===169&&Oe&31&&pu(l.name)?qi(l,Z.A_parameter_property_may_not_be_declared_using_a_binding_pattern):l.kind===169&&Oe&31&&l.dotDotDotToken?qi(l,Z.A_parameter_property_cannot_be_declared_using_a_rest_parameter):Oe&1024?ays(l,se):!1}function nys(l){if(!l.modifiers)return!1;let C=iys(l);return C&&Zh(C,Z.Modifiers_cannot_appear_here)}function att(l,C){let E=be(l.modifiers,gg);return E&&E.kind!==C?E:void 0}function iys(l){switch(l.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 be(l.modifiers,gg);default:if(l.parent.kind===268||l.parent.kind===307)return;switch(l.kind){case 262:return att(l,134);case 263:case 185:return att(l,128);case 231:case 264:case 265:return be(l.modifiers,gg);case 243:return l.declarationList.flags&4?att(l,135):be(l.modifiers,gg);case 266:return att(l,87);default:w.assertNever(l)}}}function sys(l){let C=oys(l);return C&&Zh(C,Z.Decorators_are_not_valid_here)}function oys(l){return $Ke(l)?be(l.modifiers,GC):void 0}function ays(l,C){switch(l.kind){case 174:case 262:case 218:case 219:return!1}return qi(C,Z._0_modifier_cannot_be_used_here,"async")}function X7(l,C=Z.Trailing_comma_not_allowed){return l&&l.hasTrailingComma?iH(l[0],l.end-1,1,C):!1}function l8r(l,C){if(l&&l.length===0){let E=l.pos-1,D=Ju(C.text,l.end)+1;return iH(C,E,D-E,Z.Type_parameter_list_cannot_be_empty)}return!1}function cys(l){let C=!1,E=l.length;for(let D=0;D!!C.initializer||pu(C.name)||Rv(C))}function uys(l){if(Qe>=3){let C=l.body&&mc(l.body)&&KKe(l.body.statements);if(C){let E=lys(l.parameters);if(O(E)){X(E,W=>{eg(fr(W,Z.This_parameter_is_not_allowed_with_use_strict_directive),Us(C,Z.use_strict_directive_used_here))});let D=E.map((W,Q)=>Q===0?Us(W,Z.Non_simple_parameter_declared_here):Us(W,Z.and_here));return eg(fr(C,Z.use_strict_directive_cannot_be_used_with_non_simple_parameter_list),...D),!0}}}return!1}function ctt(l){let C=ls(l);return rk(l)||l8r(l.typeParameters,C)||cys(l.parameters)||Ays(l,C)||dd(l)&&uys(l)}function gys(l){let C=ls(l);return Cys(l)||l8r(l.typeParameters,C)}function Ays(l,C){if(!fd(l))return!1;l.typeParameters&&!(O(l.typeParameters)>1||l.typeParameters.hasTrailingComma||l.typeParameters[0].constraint)&&C&&pp(C.fileName,[".mts",".cts"])&&qi(l.typeParameters[0],Z.This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_constraint);let{equalsGreaterThanToken:E}=l,D=Ll(C,E.pos).line,W=Ll(C,E.end).line;return D!==W&&qi(E,Z.Line_terminator_not_permitted_before_arrow)}function dys(l){let C=l.parameters[0];if(l.parameters.length!==1)return qi(C?C.name:l,Z.An_index_signature_must_have_exactly_one_parameter);if(X7(l.parameters,Z.An_index_signature_cannot_have_a_trailing_comma),C.dotDotDotToken)return qi(C.dotDotDotToken,Z.An_index_signature_cannot_have_a_rest_parameter);if(Fme(C))return qi(C.name,Z.An_index_signature_parameter_cannot_have_an_accessibility_modifier);if(C.questionToken)return qi(C.questionToken,Z.An_index_signature_parameter_cannot_have_a_question_mark);if(C.initializer)return qi(C.name,Z.An_index_signature_parameter_cannot_have_an_initializer);if(!C.type)return qi(C.name,Z.An_index_signature_parameter_must_have_a_type_annotation);let E=Lc(C.type);return Kv(E,D=>!!(D.flags&8576))||F7(E)?qi(C.name,Z.An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead):eE(E,h$e)?l.type?!1:qi(l,Z.An_index_signature_must_have_a_type_annotation):qi(C.name,Z.An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type)}function pys(l){return rk(l)||dys(l)}function fys(l,C){if(C&&C.length===0){let E=ls(l),D=C.pos-1,W=Ju(E.text,C.end)+1;return iH(E,D,W-D,Z.Type_argument_list_cannot_be_empty)}return!1}function VLe(l,C){return X7(C)||fys(l,C)}function Iys(l){return l.questionDotToken||l.flags&64?qi(l.template,Z.Tagged_template_expressions_are_not_permitted_in_an_optional_chain):!1}function u8r(l){let C=l.types;if(X7(C))return!0;if(C&&C.length===0){let E=vr(l.token);return iH(l,C.pos,0,Z._0_list_cannot_be_empty,E)}return lr(C,g8r)}function g8r(l){return x_(l)&&D6(l.expression)&&l.typeArguments?qi(l,Z.This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments):VLe(l,l.typeArguments)}function Cys(l){let C=!1,E=!1;if(!rk(l)&&l.heritageClauses)for(let D of l.heritageClauses){if(D.token===96){if(C)return Zh(D,Z.extends_clause_already_seen);if(E)return Zh(D,Z.extends_clause_must_precede_implements_clause);if(D.types.length>1)return Zh(D.types[1],Z.Classes_can_only_extend_a_single_class);C=!0}else{if(w.assert(D.token===119),E)return Zh(D,Z.implements_clause_already_seen);E=!0}u8r(D)}}function mys(l){let C=!1;if(l.heritageClauses)for(let E of l.heritageClauses){if(E.token===96){if(C)return Zh(E,Z.extends_clause_already_seen);C=!0}else return w.assert(E.token===119),Zh(E,Z.Interface_declaration_cannot_have_implements_clause);u8r(E)}return!1}function ltt(l){if(l.kind!==167)return!1;let C=l;return C.expression.kind===226&&C.expression.operatorToken.kind===28?qi(C.expression,Z.A_comma_expression_is_not_allowed_in_a_computed_property_name):!1}function sMt(l){if(l.asteriskToken){if(w.assert(l.kind===262||l.kind===218||l.kind===174),l.flags&33554432)return qi(l.asteriskToken,Z.Generators_are_not_allowed_in_an_ambient_context);if(!l.body)return qi(l.asteriskToken,Z.An_overload_signature_cannot_be_declared_as_a_generator)}}function oMt(l,C){return!!l&&qi(l,C)}function A8r(l,C){return!!l&&qi(l,C)}function hys(l,C){let E=new Map;for(let D of l.properties){if(D.kind===305){if(C){let se=jA(D.expression);if(If(se)||tu(se))return qi(D.expression,Z.A_rest_element_cannot_contain_a_binding_pattern)}continue}let W=D.name;if(W.kind===167&<t(W),D.kind===304&&!C&&D.objectAssignmentInitializer&&qi(D.equalsToken,Z.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),W.kind===81&&qi(W,Z.Private_identifiers_are_not_allowed_outside_class_bodies),ew(D)&&D.modifiers)for(let se of D.modifiers)gg(se)&&(se.kind!==134||D.kind!==174)&&qi(se,Z._0_modifier_cannot_be_used_here,Tf(se));else if(dRt(D)&&D.modifiers)for(let se of D.modifiers)gg(se)&&qi(se,Z._0_modifier_cannot_be_used_here,Tf(se));let Q;switch(D.kind){case 304:case 303:A8r(D.exclamationToken,Z.A_definite_assignment_assertion_is_not_permitted_in_this_context),oMt(D.questionToken,Z.An_object_member_cannot_be_declared_optional),W.kind===9&&_8r(W),Q=4;break;case 174:Q=8;break;case 177:Q=1;break;case 178:Q=2;break;default:w.assertNever(D,"Unexpected syntax kind:"+D.kind)}if(!C){let se=lMt(W);if(se===void 0)continue;let Ee=E.get(se);if(!Ee)E.set(se,Q);else if(Q&8&&Ee&8)qi(W,Z.Duplicate_identifier_0,Tf(W));else if(Q&4&&Ee&4)qi(W,Z.An_object_literal_cannot_have_multiple_properties_with_the_same_name,Tf(W));else if(Q&3&&Ee&3)if(Ee!==3&&Q!==Ee)E.set(se,Q|Ee);else return qi(W,Z.An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name);else return qi(W,Z.An_object_literal_cannot_have_property_and_accessor_with_the_same_name)}}}function _ys(l){yys(l.tagName),VLe(l,l.typeArguments);let C=new Map;for(let E of l.attributes.properties){if(E.kind===293)continue;let{name:D,initializer:W}=E,Q=B6(D);if(!C.get(Q))C.set(Q,!0);else return qi(D,Z.JSX_elements_cannot_have_multiple_attributes_with_the_same_name);if(W&&W.kind===294&&!W.expression)return qi(W,Z.JSX_attributes_must_only_be_assigned_a_non_empty_expression)}}function yys(l){if(Io(l)&&oT(l.expression))return qi(l.expression,Z.JSX_property_access_expressions_cannot_include_JSX_namespace_names);if(oT(l)&&Wee(Ne)&&!HX(l.namespace.escapedText))return qi(l,Z.React_components_cannot_include_JSX_namespace_names)}function bys(l){if(l.expression&&Vle(l.expression))return qi(l.expression,Z.JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array)}function d8r(l){if(gF(l))return!0;if(l.kind===250&&l.awaitModifier&&!(l.flags&65536)){let C=ls(l);if(ace(l)){if(!iW(C))switch(U9(C,Ne)||UA.add(Us(l.awaitModifier,Z.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)),De){case 100:case 199:if(C.impliedNodeFormat===1){UA.add(Us(l.awaitModifier,Z.The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level));break}case 7:case 99:case 4:if(Qe>=4)break;default:UA.add(Us(l.awaitModifier,Z.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));break}}else if(!iW(C)){let E=Us(l.awaitModifier,Z.for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules),D=Wb(l);if(D&&D.kind!==176){w.assert((YI(D)&2)===0,"Enclosing function should never be an async function.");let W=Us(D,Z.Did_you_mean_to_mark_this_function_as_async);eg(E,W)}return UA.add(E),!0}}if(W1(l)&&!(l.flags&65536)&&sr(l.initializer)&&l.initializer.escapedText==="async")return qi(l.initializer,Z.The_left_hand_side_of_a_for_of_statement_may_not_be_async),!1;if(l.initializer.kind===261){let C=l.initializer;if(!cMt(C)){let E=C.declarations;if(!E.length)return!1;if(E.length>1){let W=l.kind===249?Z.Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:Z.Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement;return Zh(C.declarations[1],W)}let D=E[0];if(D.initializer){let W=l.kind===249?Z.The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:Z.The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer;return qi(D.name,W)}if(D.type){let W=l.kind===249?Z.The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:Z.The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation;return qi(D,W)}}}return!1}function Eys(l){if(!(l.flags&33554432)&&l.parent.kind!==187&&l.parent.kind!==264){if(Qe<2&&kc(l.name))return qi(l.name,Z.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(l.body===void 0&&!ba(l,64))return iH(l,l.end-1,1,Z._0_expected,"{")}if(l.body){if(ba(l,64))return qi(l,Z.An_abstract_accessor_cannot_have_an_implementation);if(l.parent.kind===187||l.parent.kind===264)return qi(l.body,Z.An_implementation_cannot_be_declared_in_ambient_contexts)}if(l.typeParameters)return qi(l.name,Z.An_accessor_cannot_have_type_parameters);if(!Bys(l))return qi(l.name,l.kind===177?Z.A_get_accessor_cannot_have_parameters:Z.A_set_accessor_must_have_exactly_one_parameter);if(l.kind===178){if(l.type)return qi(l.name,Z.A_set_accessor_cannot_have_a_return_type_annotation);let C=w.checkDefined(KX(l),"Return value does not match parameter count assertion.");if(C.dotDotDotToken)return qi(C.dotDotDotToken,Z.A_set_accessor_cannot_have_rest_parameter);if(C.questionToken)return qi(C.questionToken,Z.A_set_accessor_cannot_have_an_optional_parameter);if(C.initializer)return qi(l.name,Z.A_set_accessor_parameter_cannot_have_an_initializer)}return!1}function Bys(l){return aMt(l)||l.parameters.length===(l.kind===177?0:1)}function aMt(l){if(l.parameters.length===(l.kind===177?1:2))return iV(l)}function vys(l){if(l.operator===158){if(l.type.kind!==155)return qi(l.type,Z._0_expected,vr(155));let C=pee(l.parent);if(so(C)&&rP(C)){let E=eV(C);E&&(C=Y3(E)||E)}switch(C.kind){case 260:let E=C;if(E.name.kind!==80)return qi(l,Z.unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name);if(!D8(E))return qi(l,Z.unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement);if(!(E.parent.flags&2))return qi(C.name,Z.A_variable_whose_type_is_a_unique_symbol_type_must_be_const);break;case 172:if(!$u(C)||!$8(C))return qi(C.name,Z.A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly);break;case 171:if(!ba(C,8))return qi(C.name,Z.A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly);break;default:return qi(l,Z.unique_symbol_types_are_not_allowed_here)}}else if(l.operator===148&&l.type.kind!==188&&l.type.kind!==189)return Zh(l,Z.readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types,vr(155))}function Bge(l,C){if(Gus(l))return qi(l,C)}function p8r(l){if(ctt(l))return!0;if(l.kind===174){if(l.parent.kind===210){if(l.modifiers&&!(l.modifiers.length===1&&$s(l.modifiers).kind===134))return Zh(l,Z.Modifiers_cannot_appear_here);if(oMt(l.questionToken,Z.An_object_member_cannot_be_declared_optional))return!0;if(A8r(l.exclamationToken,Z.A_definite_assignment_assertion_is_not_permitted_in_this_context))return!0;if(l.body===void 0)return iH(l,l.end-1,1,Z._0_expected,"{")}if(sMt(l))return!0}if(Sa(l.parent)){if(Qe<2&&kc(l.name))return qi(l.name,Z.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(l.flags&33554432)return Bge(l.name,Z.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(l.kind===174&&!l.body)return Bge(l.name,Z.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(l.parent.kind===264)return Bge(l.name,Z.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);if(l.parent.kind===187)return Bge(l.name,Z.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 Sys(l){let C=l;for(;C;){if(N3(C))return qi(l,Z.Jump_target_cannot_cross_function_boundary);switch(C.kind){case 256:if(l.label&&C.label.escapedText===l.label.escapedText)return l.kind===251&&!MR(C.statement,!0)?qi(l,Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement):!1;break;case 255:if(l.kind===252&&!l.label)return!1;break;default:if(MR(C,!1)&&!l.label)return!1;break}C=C.parent}if(l.label){let E=l.kind===252?Z.A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement;return qi(l,E)}else{let E=l.kind===252?Z.A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:Z.A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement;return qi(l,E)}}function wys(l){if(l.dotDotDotToken){let C=l.parent.elements;if(l!==Na(C))return qi(l,Z.A_rest_element_must_be_last_in_a_destructuring_pattern);if(X7(C,Z.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),l.propertyName)return qi(l.name,Z.A_rest_element_cannot_have_a_property_name)}if(l.dotDotDotToken&&l.initializer)return iH(l,l.initializer.pos-1,1,Z.A_rest_element_cannot_have_an_initializer)}function f8r(l){return GE(l)||l.kind===224&&l.operator===41&&l.operand.kind===9}function Tys(l){return l.kind===10||l.kind===224&&l.operator===41&&l.operand.kind===10}function Nys(l){if((Io(l)||hA(l)&&f8r(l.argumentExpression))&&cp(l.expression))return!!(iC(l).flags&1056)}function I8r(l){let C=l.initializer;if(C){let E=!(f8r(C)||Nys(C)||C.kind===112||C.kind===97||Tys(C));if((fu(l)||zs(l)&&Fye(l))&&!l.type){if(E)return qi(C,Z.A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference)}else return qi(C,Z.Initializers_are_not_allowed_in_ambient_contexts)}}function Rys(l){let C=sH(l),E=C&7;if(pu(l.name))switch(E){case 6:return qi(l,Z._0_declarations_may_not_have_binding_patterns,"await using");case 4:return qi(l,Z._0_declarations_may_not_have_binding_patterns,"using")}if(l.parent.parent.kind!==249&&l.parent.parent.kind!==250){if(C&33554432)I8r(l);else if(!l.initializer){if(pu(l.name)&&!pu(l.parent))return qi(l,Z.A_destructuring_declaration_must_have_an_initializer);switch(E){case 6:return qi(l,Z._0_declarations_must_be_initialized,"await using");case 4:return qi(l,Z._0_declarations_must_be_initialized,"using");case 2:return qi(l,Z._0_declarations_must_be_initialized,"const")}}}if(l.exclamationToken&&(l.parent.parent.kind!==243||!l.type||l.initializer||C&33554432)){let D=l.initializer?Z.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:l.type?Z.A_definite_assignment_assertion_is_not_permitted_in_this_context:Z.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;return qi(l.exclamationToken,D)}return(De<5||ls(l).impliedNodeFormat===1)&&De!==4&&!(l.parent.parent.flags&33554432)&&ba(l.parent.parent,32)&&C8r(l.name),!!E&&m8r(l.name)}function C8r(l){if(l.kind===80){if(ao(l)==="__esModule")return kys("noEmit",l,Z.Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules)}else{let C=l.elements;for(let E of C)if(!ef(E))return C8r(E.name)}return!1}function m8r(l){if(l.kind===80){if(l.escapedText==="let")return qi(l,Z.let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations)}else{let C=l.elements;for(let E of C)ef(E)||m8r(E.name)}return!1}function cMt(l){let C=l.declarations;if(X7(l.declarations))return!0;if(!l.declarations.length)return iH(l,C.pos,C.end-C.pos,Z.Variable_declaration_list_cannot_be_empty);let E=l.flags&7;return(E===4||E===6)&&tD(l.parent)?qi(l,E===4?Z.The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration:Z.The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration):E===6?ZUr(l):!1}function h8r(l){switch(l.kind){case 245:case 246:case 247:case 254:case 248:case 249:case 250:return!1;case 256:return h8r(l.parent)}return!0}function Dys(l){if(!h8r(l.parent)){let C=sH(l.declarationList)&7;if(C){let E=C===1?"let":C===2?"const":C===4?"using":C===6?"await using":w.fail("Unknown BlockScope flag");return qi(l,Z._0_declarations_can_only_be_declared_inside_a_block,E)}}}function xys(l){let C=l.name.escapedText;switch(l.keywordToken){case 105:if(C!=="target")return qi(l.name,Z._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2,Sc(l.name.escapedText),vr(l.keywordToken),"target");break;case 102:if(C!=="meta")return qi(l.name,Z._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2,Sc(l.name.escapedText),vr(l.keywordToken),"meta");break}}function iW(l){return l.parseDiagnostics.length>0}function Zh(l,C,...E){let D=ls(l);if(!iW(D)){let W=Rr(D,l.pos);return UA.add(Im(D,W.start,W.length,C,...E)),!0}return!1}function iH(l,C,E,D,...W){let Q=ls(l);return iW(Q)?!1:(UA.add(Im(Q,C,E,D,...W)),!0)}function kys(l,C,E,...D){let W=ls(C);return iW(W)?!1:(fT(l,C,E,...D),!0)}function qi(l,C,...E){let D=ls(l);return iW(D)?!1:(UA.add(Us(l,C,...E)),!0)}function Gys(l){let C=so(l)?See(l):void 0,E=l.typeParameters||C&&$i(C);if(E){let D=E.pos===E.end?E.pos:Ju(ls(l).text,E.pos);return iH(l,D,E.end-D,Z.Type_parameters_cannot_appear_on_a_constructor_declaration)}}function Fys(l){let C=l.type||rb(l);if(C)return qi(C,Z.Type_annotation_cannot_appear_on_a_constructor_declaration)}function Zys(l){if(xg(l.name)&&no(l.name.expression)&&l.name.expression.operatorToken.kind===103)return qi(l.parent.members[0],Z.A_mapped_type_may_not_declare_properties_or_methods);if(Sa(l.parent)){if(bu(l.name)&&l.name.text==="constructor")return qi(l.name,Z.Classes_may_not_have_a_field_named_constructor);if(Bge(l.name,Z.A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_symbol_type))return!0;if(Qe<2&&kc(l.name))return qi(l.name,Z.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(Qe<2&&t_(l))return qi(l.name,Z.Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(t_(l)&&oMt(l.questionToken,Z.An_accessor_property_cannot_be_declared_optional))return!0}else if(l.parent.kind===264){if(Bge(l.name,Z.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(w.assertNode(l,n_),l.initializer)return qi(l.initializer,Z.An_interface_property_cannot_have_an_initializer)}else if(Se(l.parent)){if(Bge(l.name,Z.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(w.assertNode(l,n_),l.initializer)return qi(l.initializer,Z.A_type_literal_property_cannot_have_an_initializer)}if(l.flags&33554432&&I8r(l),Ql(l)&&l.exclamationToken&&(!Sa(l.parent)||!l.type||l.initializer||l.flags&33554432||$u(l)||aV(l))){let C=l.initializer?Z.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:l.type?Z.A_definite_assignment_assertion_is_not_permitted_in_this_context:Z.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;return qi(l.exclamationToken,C)}}function Lys(l){return l.kind===264||l.kind===265||l.kind===272||l.kind===271||l.kind===278||l.kind===277||l.kind===270||ba(l,2208)?!1:Zh(l,Z.Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier)}function Vys(l){for(let C of l.statements)if((DC(C)||C.kind===243)&&Lys(C))return!0;return!1}function Wys(l){return!!(l.flags&33554432)&&Vys(l)}function gF(l){if(l.flags&33554432){if(!Uo(l).hasReportedStatementInAmbientContext&&($l(l.parent)||jw(l.parent)))return Uo(l).hasReportedStatementInAmbientContext=Zh(l,Z.An_implementation_cannot_be_declared_in_ambient_contexts);if(l.parent.kind===241||l.parent.kind===268||l.parent.kind===307){let E=Uo(l.parent);if(!E.hasReportedStatementInAmbientContext)return E.hasReportedStatementInAmbientContext=Zh(l,Z.Statements_are_not_allowed_in_ambient_contexts)}}return!1}function _8r(l){let C=Tf(l).includes("."),E=l.numericLiteralFlags&16;C||E||+l.text<=2**53-1||iw(!1,Us(l,Z.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers))}function Pys(l){return!!(!(id(l.parent)||xB(l.parent)&&id(l.parent.parent))&&Qe<7&&qi(l,Z.BigInt_literals_are_not_available_when_targeting_lower_than_ES2020))}function Oys(l,C,...E){let D=ls(l);if(!iW(D)){let W=Rr(D,l.pos);return UA.add(Im(D,Uu(W),0,C,...E)),!0}return!1}function Mys(){return sf||(sf=[],kt.forEach((l,C)=>{GDt.test(C)&&sf.push(l)})),sf}function Qys(l){var C;return l.isTypeOnly&&l.name&&l.namedBindings?qi(l,Z.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both):l.isTypeOnly&&((C=l.namedBindings)==null?void 0:C.kind)===275?y8r(l.namedBindings):!1}function y8r(l){return!!X(l.elements,C=>{if(C.isTypeOnly)return Zh(C,C.kind===276?Z.The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement:Z.The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement)})}function Yys(l){if(Ne.verbatimModuleSyntax&&De===1)return qi(l,Z.ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled);if(De===5)return qi(l,Z.Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd_system_umd_node16_or_nodenext);if(l.typeArguments)return qi(l,Z.This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments);let C=l.arguments;if(De!==99&&De!==199&&De!==100&&(X7(C),C.length>1)){let D=C[1];return qi(D,Z.Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_or_nodenext)}if(C.length===0||C.length>2)return qi(l,Z.Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments);let E=be(C,ph);return E?qi(E,Z.Argument_of_dynamic_import_cannot_be_spread_element):!1}function Hys(l,C){let E=sa(l);if(E&20&&C.flags&1048576)return be(C.types,D=>{if(D.flags&524288){let W=E&sa(D);if(W&4)return l.target===D.target;if(W&16)return!!l.aliasSymbol&&l.aliasSymbol===D.aliasSymbol}return!1})}function Xys(l,C){if(sa(l)&128&&Kv(C,pL))return be(C.types,E=>!pL(E))}function Jys(l,C){let E=0;if(Pu(l,E).length>0||(E=1,Pu(l,E).length>0))return be(C.types,W=>Pu(W,E).length>0)}function Uys(l,C){let E;if(!(l.flags&406978556)){let D=0;for(let W of C.types)if(!(W.flags&406978556)){let Q=Pg([JN(l),JN(W)]);if(Q.flags&4194304)return W;if(ET(Q)||Q.flags&1048576){let se=Q.flags&1048576?ft(Q.types,ET):1;se>=D&&(E=W,D=se)}}}return E}function Kys(l){if(UI(l,67108864)){let C=VC(l,E=>!(E.flags&402784252));if(!(C.flags&131072))return C}return l}function b8r(l,C,E){if(C.flags&1048576&&l.flags&2621440){let D=T4r(C,l);if(D)return D;let W=Id(l);if(W){let Q=w4r(W,C);if(Q){let se=J3t(C,Ot(Q,Ee=>[()=>lo(Ee),Ee.escapedName]),E);if(se!==C)return se}}}}function lMt(l){let C=nV(l);return C||(xg(l)?hPt(l_(l.expression)):void 0)}function utt(l){return $n===l||($n=l,bi=Nh(l)),bi}function sH(l){return pr===l||(pr=l,zr=qy(l)),zr}function Fye(l){let C=sH(l)&7;return C===2||C===4||C===6}function jys(l,C){let E=Ne.importHelpers?1:0,D=l?.imports[E];return D&&w.assert(qd(D)&&D.text===C,`Expected sourceFile.imports[${E}] to be the synthesized JSX runtime import`),D}function zys(l){w.assert(Ne.importHelpers,"Expected importHelpers to be enabled");let C=l.imports[0];return w.assert(C&&qd(C)&&C.text==="tslib","Expected sourceFile.imports[0] to be the synthesized tslib import"),C}}function h6i(n){return!jw(n)}function gGr(n){return n.kind!==262&&n.kind!==174||!!n.body}function AGr(n){switch(n.parent.kind){case 276:case 281:return sr(n);default:return eT(n)}}var Z2;(n=>{n.JSX="JSX",n.IntrinsicElements="IntrinsicElements",n.ElementClass="ElementClass",n.ElementAttributesPropertyNameContainer="ElementAttributesProperty",n.ElementChildrenAttributeNameContainer="ElementChildrenAttribute",n.Element="Element",n.ElementType="ElementType",n.IntrinsicAttributes="IntrinsicAttributes",n.IntrinsicClassAttributes="IntrinsicClassAttributes",n.LibraryManagedAttributes="LibraryManagedAttributes"})(Z2||(Z2={}));function dGr(n){switch(n){case 0:return"yieldType";case 1:return"returnType";case 2:return"nextType"}}function u0(n){return!!(n.flags&1)}function U8e(n){return!!(n.flags&2)}function _6i(n){return{getCommonSourceDirectory:n.getCommonSourceDirectory?()=>n.getCommonSourceDirectory():()=>"",getCurrentDirectory:()=>n.getCurrentDirectory(),getSymlinkCache:Hi(n,n.getSymlinkCache),getPackageJsonInfoCache:()=>{var c;return(c=n.getPackageJsonInfoCache)==null?void 0:c.call(n)},useCaseSensitiveFileNames:Hi(n,n.useCaseSensitiveFileNames),redirectTargetsMap:n.redirectTargetsMap,getProjectReferenceRedirect:c=>n.getProjectReferenceRedirect(c),isSourceOfProjectReferenceRedirect:c=>n.isSourceOfProjectReferenceRedirect(c),fileExists:c=>n.fileExists(c),getFileIncludeReasons:()=>n.getFileIncludeReasons(),readFile:n.readFile?c=>n.readFile(c):void 0}}var LDt=class tPn{constructor(c,u,d){this.moduleResolverHost=void 0,this.inner=void 0,this.disableTrackSymbol=!1;for(var I;u instanceof tPn;)u=u.inner;this.inner=u,this.moduleResolverHost=d,this.context=c,this.canTrackSymbol=!!((I=this.inner)!=null&&I.trackSymbol)}trackSymbol(c,u,d){var I,h;if((I=this.inner)!=null&&I.trackSymbol&&!this.disableTrackSymbol){if(this.inner.trackSymbol(c,u,d))return this.onDiagnosticReported(),!0;c.flags&262144||((h=this.context).trackedSymbols??(h.trackedSymbols=[])).push([c,u,d])}return!1}reportInaccessibleThisError(){var c;(c=this.inner)!=null&&c.reportInaccessibleThisError&&(this.onDiagnosticReported(),this.inner.reportInaccessibleThisError())}reportPrivateInBaseOfClassExpression(c){var u;(u=this.inner)!=null&&u.reportPrivateInBaseOfClassExpression&&(this.onDiagnosticReported(),this.inner.reportPrivateInBaseOfClassExpression(c))}reportInaccessibleUniqueSymbolError(){var c;(c=this.inner)!=null&&c.reportInaccessibleUniqueSymbolError&&(this.onDiagnosticReported(),this.inner.reportInaccessibleUniqueSymbolError())}reportCyclicStructureError(){var c;(c=this.inner)!=null&&c.reportCyclicStructureError&&(this.onDiagnosticReported(),this.inner.reportCyclicStructureError())}reportLikelyUnsafeImportRequiredError(c){var u;(u=this.inner)!=null&&u.reportLikelyUnsafeImportRequiredError&&(this.onDiagnosticReported(),this.inner.reportLikelyUnsafeImportRequiredError(c))}reportTruncationError(){var c;(c=this.inner)!=null&&c.reportTruncationError&&(this.onDiagnosticReported(),this.inner.reportTruncationError())}reportNonlocalAugmentation(c,u,d){var I;(I=this.inner)!=null&&I.reportNonlocalAugmentation&&(this.onDiagnosticReported(),this.inner.reportNonlocalAugmentation(c,u,d))}reportNonSerializableProperty(c){var u;(u=this.inner)!=null&&u.reportNonSerializableProperty&&(this.onDiagnosticReported(),this.inner.reportNonSerializableProperty(c))}onDiagnosticReported(){this.context.reportedDiagnostic=!0}reportInferenceFallback(c){var u;(u=this.inner)!=null&&u.reportInferenceFallback&&this.inner.reportInferenceFallback(c)}};function xr(n,c,u,d){if(n===void 0)return n;let I=c(n),h;if(I!==void 0)return Ra(I)?h=(d||S6i)(I):h=I,w.assertNode(h,u),h}function ws(n,c,u,d,I){if(n===void 0)return n;let h=n.length;(d===void 0||d<0)&&(d=0),(I===void 0||I>h-d)&&(I=h-d);let b,R=-1,N=-1;d>0||Ih-d)&&(I=h-d),pGr(n,c,u,d,I)}function pGr(n,c,u,d,I){let h,b=n.length;(d>0||I=2&&(I=y6i(I,u)),u.setLexicalEnvironmentFlags(1,!1)),u.suspendLexicalEnvironment(),I}function y6i(n,c){let u;for(let d=0;d{let b=dR,addSource:wt,setSourceContent:vt,addName:Ye,addMapping:Kt,appendSourceMap:Tt,toJSON:jt,toString:()=>JSON.stringify(jt())};function wt(Pt){h();let Vr=xm(d,Pt,n.getCurrentDirectory(),n.getCanonicalFileName,!0),Yr=V.get(Vr);return Yr===void 0&&(Yr=N.length,N.push(Vr),R.push(Pt),V.set(Vr,Yr)),b(),Yr}function vt(Pt,Vr){if(h(),Vr!==null){for(P||(P=[]);P.lengthVr||st===Vr&&nt>Yr)}function Kt(Pt,Vr,Yr,pr,zr,$n){w.assert(Pt>=lt,"generatedLine cannot backtrack"),w.assert(Vr>=0,"generatedCharacter cannot be negative"),w.assert(Yr===void 0||Yr>=0,"sourceIndex cannot be negative"),w.assert(pr===void 0||pr>=0,"sourceLine cannot be negative"),w.assert(zr===void 0||zr>=0,"sourceCharacter cannot be negative"),h(),(ht(Pt,Vr)||Et(Yr,pr,zr))&&(Zt(),lt=Pt,Le=Vr,It=!1,dt=!1,it=!0),Yr!==void 0&&pr!==void 0&&zr!==void 0&&(je=Yr,st=pr,nt=zr,It=!0,$n!==void 0&&(qe=$n,dt=!0)),b()}function Tt(Pt,Vr,Yr,pr,zr,$n){w.assert(Pt>=lt,"generatedLine cannot backtrack"),w.assert(Vr>=0,"generatedCharacter cannot be negative"),h();let bi=[],Pi,Ns=$8e(Yr.mappings);for(let gi of Ns){if($n&&(gi.generatedLine>$n.line||gi.generatedLine===$n.line&&gi.generatedCharacter>$n.character))break;if(zr&&(gi.generatedLine=1024&&Dr()}function Zt(){if(!(!it||!Lt())){if(h(),Ae0&&(ue+=String.fromCharCode.apply(void 0,re),re.length=0)}function jt(){return Zt(),Dr(),{version:3,file:c,sourceRoot:u,sources:N,names:M,mappings:ue,sourcesContent:P}}function mr(Pt){Pt<0?Pt=(-Pt<<1)+1:Pt=Pt<<1;do{let Vr=Pt&31;Pt=Pt>>5,Pt>0&&(Vr=Vr|32),kt(T6i(Vr))}while(Pt>0)}}var WDt=/\/\/[@#] source[M]appingURL=(.+)\r?\n?$/,j8e=/^\/\/[@#] source[M]appingURL=(.+)\r?\n?$/,z8e=/^\s*(\/\/[@#] .*)?$/;function q8e(n,c){return{getLineCount:()=>c.length,getLineText:u=>n.substring(c[u],c[u+1])}}function PDt(n){for(let c=n.getLineCount()-1;c>=0;c--){let u=n.getLineText(c),d=j8e.exec(u);if(d)return d[1].trimEnd();if(!u.match(z8e))break}}function w6i(n){return typeof n=="string"||n===null}function ODt(n){return n!==null&&typeof n=="object"&&n.version===3&&typeof n.file=="string"&&typeof n.mappings=="string"&&Ra(n.sources)&&he(n.sources,Xa)&&(n.sourceRoot===void 0||n.sourceRoot===null||typeof n.sourceRoot=="string")&&(n.sourcesContent===void 0||n.sourcesContent===null||Ra(n.sourcesContent)&&he(n.sourcesContent,w6i))&&(n.names===void 0||n.names===null||Ra(n.names)&&he(n.names,Xa))}function MDt(n){try{let c=JSON.parse(n);if(ODt(c))return c}catch{}}function $8e(n){let c=!1,u=0,d=0,I=0,h=0,b=0,R=0,N=0,V;return{get pos(){return u},get error(){return V},get state(){return P(!0,!0)},next(){for(;!c&&u=n.length)return te("Error in decoding base64VLQFormatDecode, past the mapping string"),-1;let Qe=N6i(n.charCodeAt(u));if(Qe===-1)return te("Invalid character in VLQ"),-1;Be=(Qe&32)!==0,Ne=Ne|(Qe&31)<>1,Ne=-Ne):Ne=Ne>>1,Ne}}function fGr(n,c){return n===c||n.generatedLine===c.generatedLine&&n.generatedCharacter===c.generatedCharacter&&n.sourceIndex===c.sourceIndex&&n.sourceLine===c.sourceLine&&n.sourceCharacter===c.sourceCharacter&&n.nameIndex===c.nameIndex}function QDt(n){return n.sourceIndex!==void 0&&n.sourceLine!==void 0&&n.sourceCharacter!==void 0}function T6i(n){return n>=0&&n<26?65+n:n>=26&&n<52?97+n-26:n>=52&&n<62?48+n-52:n===62?43:n===63?47:w.fail(`${n}: not a base64 value`)}function N6i(n){return n>=65&&n<=90?n-65:n>=97&&n<=122?n-97+26:n>=48&&n<=57?n-48+52:n===43?62:n===47?63:-1}function IGr(n){return n.sourceIndex!==void 0&&n.sourcePosition!==void 0}function CGr(n,c){return n.generatedPosition===c.generatedPosition&&n.sourceIndex===c.sourceIndex&&n.sourcePosition===c.sourcePosition}function R6i(n,c){return w.assert(n.sourceIndex===c.sourceIndex),Xl(n.sourcePosition,c.sourcePosition)}function D6i(n,c){return Xl(n.generatedPosition,c.generatedPosition)}function x6i(n){return n.sourcePosition}function k6i(n){return n.generatedPosition}function YDt(n,c,u){let d=aa(u),I=c.sourceRoot?Oc(c.sourceRoot,d):d,h=Oc(c.file,d),b=n.getSourceFileLike(h),R=c.sources.map(Fe=>Oc(Fe,I)),N=new Map(R.map((Fe,Ne)=>[n.getCanonicalFileName(Fe),Ne])),V,P,M;return{getSourcePosition:Be,getGeneratedPosition:de};function te(Fe){let Ne=b!==void 0?Xu(b,Fe.generatedLine,Fe.generatedCharacter,!0):-1,Qe,De;if(QDt(Fe)){let lt=n.getSourceFileLike(R[Fe.sourceIndex]);Qe=c.sources[Fe.sourceIndex],De=lt!==void 0?Xu(lt,Fe.sourceLine,Fe.sourceCharacter,!0):-1}return{generatedPosition:Ne,source:Qe,sourceIndex:Fe.sourceIndex,sourcePosition:De,nameIndex:Fe.nameIndex}}function re(){if(V===void 0){let Fe=$8e(c.mappings),Ne=on(Fe,te);Fe.error!==void 0?(n.log&&n.log(`Encountered error while decoding sourcemap: ${Fe.error}`),V=v):V=Ne}return V}function ue(Fe){if(M===void 0){let Ne=[];for(let Qe of re()){if(!IGr(Qe))continue;let De=Ne[Qe.sourceIndex];De||(Ne[Qe.sourceIndex]=De=[]),De.push(Qe)}M=Ne.map(Qe=>Ir(Qe,R6i,CGr))}return M[Fe]}function Ae(){if(P===void 0){let Fe=[];for(let Ne of re())Fe.push(Ne);P=Ir(Fe,D6i,CGr)}return P}function de(Fe){let Ne=N.get(n.getCanonicalFileName(Fe.fileName));if(Ne===void 0)return Fe;let Qe=ue(Ne);if(!lr(Qe))return Fe;let De=cf(Qe,Fe.pos,x6i,Xl);De<0&&(De=~De);let lt=Qe[De];return lt===void 0||lt.sourceIndex!==Ne?Fe:{fileName:h,pos:lt.generatedPosition}}function Be(Fe){let Ne=Ae();if(!lr(Ne))return Fe;let Qe=cf(Ne,Fe.pos,k6i,Xl);Qe<0&&(Qe=~Qe);let De=Ne[Qe];return De===void 0||!IGr(De)?Fe:{fileName:R[De.sourceIndex],pos:De.sourcePosition}}}var e6e={getSourcePosition:Bl,getGeneratedPosition:Bl};function by(n){return n=Tp(n),n?sd(n):0}function mGr(n){return!n||!wN(n)&&!GB(n)?!1:lr(n.elements,hGr)}function hGr(n){return n.propertyName!==void 0?n.propertyName.escapedText==="default":n.name.escapedText==="default"}function lT(n,c){return u;function u(I){return I.kind===307?c(I):d(I)}function d(I){return n.factory.createBundle(Ot(I.sourceFiles,c))}}function HDt(n){return!!WX(n)}function Gke(n){if(WX(n))return!0;let c=n.importClause&&n.importClause.namedBindings;if(!c||!wN(c))return!1;let u=0;for(let d of c.elements)hGr(d)&&u++;return u>0&&u!==c.elements.length||!!(c.elements.length-u)&&xQ(n)}function t6e(n){return!Gke(n)&&(xQ(n)||!!n.importClause&&wN(n.importClause.namedBindings)&&mGr(n.importClause.namedBindings))}function r6e(n,c){let u=n.getEmitResolver(),d=n.getCompilerOptions(),I=[],h=new XDt,b=[],R=new Map,N=new Set,V,P=!1,M,te=!1,re=!1,ue=!1;for(let Fe of c.statements)switch(Fe.kind){case 272:I.push(Fe),!re&&Gke(Fe)&&(re=!0),!ue&&t6e(Fe)&&(ue=!0);break;case 271:Fe.moduleReference.kind===283&&I.push(Fe);break;case 278:if(Fe.moduleSpecifier)if(!Fe.exportClause)I.push(Fe),te=!0;else if(I.push(Fe),GB(Fe.exportClause))de(Fe),ue||(ue=mGr(Fe.exportClause));else{let Ne=Fe.exportClause.name;R.get(ao(Ne))||(qle(b,by(Fe),Ne),R.set(ao(Ne),!0),V=Hr(V,Ne)),re=!0}else de(Fe);break;case 277:Fe.isExportEquals&&!M&&(M=Fe);break;case 243:if(ba(Fe,32))for(let Ne of Fe.declarationList.declarations)V=_Gr(Ne,R,V,b);break;case 262:ba(Fe,32)&&Be(Fe,void 0,ba(Fe,2048));break;case 263:if(ba(Fe,32))if(ba(Fe,2048))P||(qle(b,by(Fe),n.factory.getDeclarationName(Fe)),P=!0);else{let Ne=Fe.name;Ne&&!R.get(ao(Ne))&&(qle(b,by(Fe),Ne),R.set(ao(Ne),!0),V=Hr(V,Ne))}break}let Ae=jKe(n.factory,n.getEmitHelperFactory(),c,d,te,re,ue);return Ae&&I.unshift(Ae),{externalImports:I,exportSpecifiers:h,exportEquals:M,hasExportStarsToExportValues:te,exportedBindings:b,exportedNames:V,exportedFunctions:N,externalHelpersImportDeclaration:Ae};function de(Fe){for(let Ne of ps(Fe.exportClause,GB).elements)if(!R.get(ao(Ne.name))){let Qe=Ne.propertyName||Ne.name;Fe.moduleSpecifier||h.add(Qe,Ne);let De=u.getReferencedImportDeclaration(Qe)||u.getReferencedValueDeclaration(Qe);if(De){if(De.kind===262){Be(De,Ne.name,Ne.name.escapedText==="default");continue}qle(b,by(De),Ne.name)}R.set(ao(Ne.name),!0),V=Hr(V,Ne.name)}}function Be(Fe,Ne,Qe){N.add(Fe),Qe?P||(qle(b,by(Fe),Ne??n.factory.getDeclarationName(Fe)),P=!0):(Ne??(Ne=Fe.name),R.get(ao(Ne))||(qle(b,by(Fe),Ne),R.set(ao(Ne),!0)))}}function _Gr(n,c,u,d){if(pu(n.name))for(let I of n.name.elements)ef(I)||(u=_Gr(I,c,u,d));else if(!Ip(n.name)){let I=ao(n.name);c.get(I)||(c.set(I,!0),u=Hr(u,n.name),kG(n.name)&&qle(d,by(n),n.name))}return u}function qle(n,c,u){let d=n[c];return d?d.push(u):n[c]=d=[u],d}var Bte=class Die{constructor(){this._map=new Map}get size(){return this._map.size}has(c){return this._map.has(Die.toKey(c))}get(c){return this._map.get(Die.toKey(c))}set(c,u){return this._map.set(Die.toKey(c),u),this}delete(c){var u;return((u=this._map)==null?void 0:u.delete(Die.toKey(c)))??!1}clear(){this._map.clear()}values(){return this._map.values()}static toKey(c){if(CZ(c)||Ip(c)){let u=c.emitNode.autoGenerate;if((u.flags&7)===4){let d=Xhe(c),I=$y(d)&&d!==c?Die.toKey(d):`(generated@${sd(d)})`;return iP(!1,u.prefix,I,u.suffix,Die.toKey)}else{let d=`(auto@${u.id})`;return iP(!1,u.prefix,d,u.suffix,Die.toKey)}}return kc(c)?ao(c).slice(1):ao(c)}},XDt=class extends Bte{add(n,c){let u=this.get(n);return u?u.push(c):this.set(n,u=[c]),u}remove(n,c){let u=this.get(n);u&&(Oy(u,c),u.length||this.delete(n))}};function IY(n){return XA(n)||n.kind===9||i0(n.kind)||sr(n)}function DN(n){return!sr(n)&&IY(n)}function $le(n){return n>=65&&n<=79}function eue(n){switch(n){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 Fke(n){if(!Hf(n))return;let c=jA(n.expression);return Nf(c)?c:void 0}function yGr(n,c,u){for(let d=c;dF6i(d,c,u))}function G6i(n){return Z6i(n)||$p(n)}function Lke(n){return Gt(n.members,G6i)}function F6i(n,c,u){return Ql(n)&&(!!n.initializer||!c)&&IC(n)===u}function Z6i(n){return Ql(n)&&IC(n)}function g_e(n){return n.kind===172&&n.initializer!==void 0}function JDt(n){return!$u(n)&&(hZ(n)||t_(n))&&kc(n.name)}function UDt(n){let c;if(n){let u=n.parameters,d=u.length>0&&sV(u[0]),I=d?1:0,h=d?u.length-1:u.length;for(let b=0;bs6e(u.privateEnv,c))}function qDt(n){return!n.initializer&&sr(n.name)}function A_e(n){return he(n,qDt)}var $Dt=(n=>(n[n.All=0]="All",n[n.ObjectRest=1]="ObjectRest",n))($Dt||{});function m4(n,c,u,d,I,h){let b=n,R;if(kv(n))for(R=n.right;Qme(n.left)||xee(n.left);)if(kv(R))b=n=R,R=n.right;else return w.checkDefined(xr(R,c,tn));let N,V={context:u,level:d,downlevelIteration:!!u.getCompilerOptions().downlevelIteration,hoistTempVariables:!0,emitExpression:P,emitBindingOrAssignment:M,createArrayBindingOrAssignmentPattern:te=>X6i(u.factory,te),createObjectBindingOrAssignmentPattern:te=>U6i(u.factory,te),createArrayBindingOrAssignmentElement:j6i,visitor:c};if(R&&(R=xr(R,c,tn),w.assert(R),sr(R)&&ext(n,R.escapedText)||txt(n)?R=Q6(V,R,!1,b):I?R=Q6(V,R,!0,b):qd(n)&&(b=R)),tue(V,n,R,b,kv(n)),R&&I){if(!lr(N))return R;N.push(R)}return u.factory.inlineExpressions(N)||u.factory.createOmittedExpression();function P(te){N=Hr(N,te)}function M(te,re,ue,Ae){w.assertNode(te,h?sr:tn);let de=h?h(te,re,ue):un(u.factory.createAssignment(w.checkDefined(xr(te,c,tn)),re),ue);de.original=Ae,P(de)}}function ext(n,c){let u=yV(n);return CQ(u)?W6i(u,c):sr(u)?u.escapedText===c:!1}function W6i(n,c){let u=pte(n);for(let d of u)if(ext(d,c))return!0;return!1}function txt(n){let c=rke(n);if(c&&xg(c)&&!Sv(c.expression))return!0;let u=yV(n);return!!u&&CQ(u)&&P6i(u)}function P6i(n){return!!X(pte(n),txt)}function CY(n,c,u,d,I,h=!1,b){let R,N=[],V=[],P={context:u,level:d,downlevelIteration:!!u.getCompilerOptions().downlevelIteration,hoistTempVariables:h,emitExpression:M,emitBindingOrAssignment:te,createArrayBindingOrAssignmentPattern:re=>H6i(u.factory,re),createObjectBindingOrAssignmentPattern:re=>J6i(u.factory,re),createArrayBindingOrAssignmentElement:re=>K6i(u.factory,re),visitor:c};if(zs(n)){let re=Yhe(n);re&&(sr(re)&&ext(n,re.escapedText)||txt(n))&&(re=Q6(P,w.checkDefined(xr(re,P.visitor,tn)),!1,re),n=u.factory.updateVariableDeclaration(n,n.name,void 0,void 0,re))}if(tue(P,n,I,n,b),R){let re=u.factory.createTempVariable(void 0);if(h){let ue=u.factory.inlineExpressions(R);R=void 0,te(re,ue,void 0,void 0)}else{u.hoistVariableDeclaration(re);let ue=Na(N);ue.pendingExpressions=Hr(ue.pendingExpressions,u.factory.createAssignment(re,ue.value)),ai(ue.pendingExpressions,R),ue.value=re}}for(let{pendingExpressions:re,name:ue,value:Ae,location:de,original:Be}of N){let Fe=u.factory.createVariableDeclaration(ue,void 0,void 0,re?u.factory.inlineExpressions(Hr(re,Ae)):Ae);Fe.original=Be,un(Fe,de),V.push(Fe)}return V;function M(re){R=Hr(R,re)}function te(re,ue,Ae,de){w.assertNode(re,mZ),R&&(ue=u.factory.inlineExpressions(Hr(R,ue)),R=void 0),N.push({pendingExpressions:R,name:re,value:ue,location:Ae,original:de})}}function tue(n,c,u,d,I){let h=yV(c);if(!I){let b=xr(Yhe(c),n.visitor,tn);b?u?(u=Q6i(n,u,b,d),!DN(b)&&CQ(h)&&(u=Q6(n,u,!0,d))):u=b:u||(u=n.context.factory.createVoidZero())}h$(h)?O6i(n,c,h,u,d):_$(h)?M6i(n,c,h,u,d):n.emitBindingOrAssignment(h,u,d,c)}function O6i(n,c,u,d,I){let h=pte(u),b=h.length;if(b!==1){let V=!CX(c)||b!==0;d=Q6(n,d,V,I)}let R,N;for(let V=0;V=1&&!(P.transformFlags&98304)&&!(yV(P).transformFlags&98304)&&!xg(M))R=Hr(R,xr(P,n.visitor,Fae));else{R&&(n.emitBindingOrAssignment(n.createObjectBindingOrAssignmentPattern(R),d,I,u),R=void 0);let te=Y6i(n,d,M);xg(M)&&(N=Hr(N,te.argumentExpression)),tue(n,P,te,P)}}}R&&n.emitBindingOrAssignment(n.createObjectBindingOrAssignmentPattern(R),d,I,u)}function M6i(n,c,u,d,I){let h=pte(u),b=h.length;if(n.level<1&&n.downlevelIteration)d=Q6(n,un(n.context.getEmitHelperFactory().createReadHelper(d,b>0&&tke(h[b-1])?void 0:b),I),!1,I);else if(b!==1&&(n.level<1||b===0)||he(h,ef)){let V=!CX(c)||b!==0;d=Q6(n,d,V,I)}let R,N;for(let V=0;V=1)if(P.transformFlags&65536||n.hasTransformedPriorElement&&!EGr(P)){n.hasTransformedPriorElement=!0;let M=n.context.factory.createTempVariable(void 0);n.hoistTempVariables&&n.context.hoistVariableDeclaration(M),N=Hr(N,[M,P]),R=Hr(R,n.createArrayBindingOrAssignmentElement(M))}else R=Hr(R,P);else{if(ef(P))continue;if(tke(P)){if(V===b-1){let M=n.context.factory.createArraySliceCall(d,V);tue(n,P,M,P)}}else{let M=n.context.factory.createElementAccessExpression(d,V);tue(n,P,M,P)}}}if(R&&n.emitBindingOrAssignment(n.createArrayBindingOrAssignmentPattern(R),d,I,u),N)for(let[V,P]of N)tue(n,P,V,P)}function EGr(n){let c=yV(n);if(!c||ef(c))return!0;let u=rke(n);if(u&&!VS(u))return!1;let d=Yhe(n);return d&&!DN(d)?!1:CQ(c)?he(pte(c),EGr):sr(c)}function Q6i(n,c,u,d){return c=Q6(n,c,!0,d),n.context.factory.createConditionalExpression(n.context.factory.createTypeCheck(c,"undefined"),void 0,u,void 0,c)}function Y6i(n,c,u){let{factory:d}=n.context;if(xg(u)){let I=Q6(n,w.checkDefined(xr(u.expression,n.visitor,tn)),!1,u);return n.context.factory.createElementAccessExpression(c,I)}else if(GE(u)){let I=d.cloneNode(u);return n.context.factory.createElementAccessExpression(c,I)}else{let I=n.context.factory.createIdentifier(ao(u));return n.context.factory.createPropertyAccessExpression(c,I)}}function Q6(n,c,u,d){if(sr(c)&&u)return c;{let I=n.context.factory.createTempVariable(void 0);return n.hoistTempVariables?(n.context.hoistVariableDeclaration(I),n.emitExpression(un(n.context.factory.createAssignment(I,c),d))):n.emitBindingOrAssignment(I,c,d,void 0),I}}function H6i(n,c){return w.assertEachNode(c,R3),n.createArrayBindingPattern(c)}function X6i(n,c){return w.assertEachNode(c,hX),n.createArrayLiteralExpression(Ot(c,n.converters.convertToArrayAssignmentElement))}function J6i(n,c){return w.assertEachNode(c,ml),n.createObjectBindingPattern(c)}function U6i(n,c){return w.assertEachNode(c,mX),n.createObjectLiteralExpression(Ot(c,n.converters.convertToObjectAssignmentElement))}function K6i(n,c){return n.createBindingElement(void 0,void 0,c)}function j6i(n){return n}function rxt(n,c,u=n.createThis()){let d=n.createAssignment(c,u),I=n.createExpressionStatement(d),h=n.createBlock([I],!1),b=n.createClassStaticBlockDeclaration(h);return xh(b).classThis=c,b}function rue(n){var c;if(!$p(n)||n.body.statements.length!==1)return!1;let u=n.body.statements[0];return Hf(u)&&fm(u.expression,!0)&&sr(u.expression.left)&&((c=n.emitNode)==null?void 0:c.classThis)===u.expression.left&&u.expression.right.kind===110}function o6e(n){var c;return!!((c=n.emitNode)!=null&&c.classThis)&&lr(n.members,rue)}function nxt(n,c,u,d){if(o6e(c))return c;let I=rxt(n,u,d);c.name&&Qg(I.body.statements[0],c.name);let h=n.createNodeArray([I,...c.members]);un(h,c.members);let b=bc(c)?n.updateClassDeclaration(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,h):n.updateClassExpression(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,h);return xh(b).classThis=u,b}function nue(n,c,u){let d=Tp(ZC(u));return(bc(d)||mp(d))&&!d.name&&ba(d,2048)?n.createStringLiteral("default"):n.createStringLiteralFromNode(c)}function BGr(n,c,u){let{factory:d}=n;if(u!==void 0)return{assignedName:d.createStringLiteral(u),name:c};if(VS(c)||kc(c))return{assignedName:d.createStringLiteralFromNode(c),name:c};if(VS(c.expression)&&!sr(c.expression))return{assignedName:d.createStringLiteralFromNode(c.expression),name:c};let I=d.getGeneratedNameForNode(c);n.hoistVariableDeclaration(I);let h=n.getEmitHelperFactory().createPropKeyHelper(c.expression),b=d.createAssignment(I,h),R=d.updateComputedPropertyName(c,b);return{assignedName:I,name:R}}function ixt(n,c,u=n.factory.createThis()){let{factory:d}=n,I=n.getEmitHelperFactory().createSetFunctionNameHelper(u,c),h=d.createExpressionStatement(I),b=d.createBlock([h],!1),R=d.createClassStaticBlockDeclaration(b);return xh(R).assignedName=c,R}function Y6(n){var c;if(!$p(n)||n.body.statements.length!==1)return!1;let u=n.body.statements[0];return Hf(u)&&R6(u.expression,"___setFunctionName")&&u.expression.arguments.length>=2&&u.expression.arguments[1]===((c=n.emitNode)==null?void 0:c.assignedName)}function Wke(n){var c;return!!((c=n.emitNode)!=null&&c.assignedName)&&lr(n.members,Y6)}function a6e(n){return!!n.name||Wke(n)}function Pke(n,c,u,d){if(Wke(c))return c;let{factory:I}=n,h=ixt(n,u,d);c.name&&Qg(h.body.statements[0],c.name);let b=ke(c.members,rue)+1,R=c.members.slice(0,b),N=c.members.slice(b),V=I.createNodeArray([...R,h,...N]);return un(V,c.members),c=bc(c)?I.updateClassDeclaration(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,V):I.updateClassExpression(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,V),xh(c).assignedName=u,c}function vte(n,c,u,d){if(d&&bu(u)&&cme(u))return c;let{factory:I}=n,h=ZC(c),b=tp(h)?ps(Pke(n,h,u),tp):n.getEmitHelperFactory().createSetFunctionNameHelper(h,u);return I.restoreOuterExpressions(c,b)}function z6i(n,c,u,d){let{factory:I}=n,{assignedName:h,name:b}=BGr(n,c.name,d),R=vte(n,c.initializer,h,u);return I.updatePropertyAssignment(c,b,R)}function q6i(n,c,u,d){let{factory:I}=n,h=d!==void 0?I.createStringLiteral(d):nue(I,c.name,c.objectAssignmentInitializer),b=vte(n,c.objectAssignmentInitializer,h,u);return I.updateShorthandPropertyAssignment(c,c.name,b)}function $6i(n,c,u,d){let{factory:I}=n,h=d!==void 0?I.createStringLiteral(d):nue(I,c.name,c.initializer),b=vte(n,c.initializer,h,u);return I.updateVariableDeclaration(c,c.name,c.exclamationToken,c.type,b)}function e7i(n,c,u,d){let{factory:I}=n,h=d!==void 0?I.createStringLiteral(d):nue(I,c.name,c.initializer),b=vte(n,c.initializer,h,u);return I.updateParameterDeclaration(c,c.modifiers,c.dotDotDotToken,c.name,c.questionToken,c.type,b)}function t7i(n,c,u,d){let{factory:I}=n,h=d!==void 0?I.createStringLiteral(d):nue(I,c.name,c.initializer),b=vte(n,c.initializer,h,u);return I.updateBindingElement(c,c.dotDotDotToken,c.propertyName,c.name,b)}function r7i(n,c,u,d){let{factory:I}=n,{assignedName:h,name:b}=BGr(n,c.name,d),R=vte(n,c.initializer,h,u);return I.updatePropertyDeclaration(c,c.modifiers,b,c.questionToken??c.exclamationToken,c.type,R)}function n7i(n,c,u,d){let{factory:I}=n,h=d!==void 0?I.createStringLiteral(d):nue(I,c.left,c.right),b=vte(n,c.right,h,u);return I.updateBinaryExpression(c,c.left,c.operatorToken,b)}function i7i(n,c,u,d){let{factory:I}=n,h=d!==void 0?I.createStringLiteral(d):I.createStringLiteral(c.isExportEquals?"":"default"),b=vte(n,c.expression,h,u);return I.updateExportAssignment(c,c.modifiers,b)}function PE(n,c,u,d){switch(c.kind){case 303:return z6i(n,c,u,d);case 304:return q6i(n,c,u,d);case 260:return $6i(n,c,u,d);case 169:return e7i(n,c,u,d);case 208:return t7i(n,c,u,d);case 172:return r7i(n,c,u,d);case 226:return n7i(n,c,u,d);case 277:return i7i(n,c,u,d)}}var sxt=(n=>(n[n.LiftRestriction=0]="LiftRestriction",n[n.All=1]="All",n))(sxt||{});function c6e(n,c,u,d,I,h){let b=xr(c.tag,u,tn);w.assert(b);let R=[void 0],N=[],V=[],P=c.template;if(h===0&&!wme(P))return ns(c,u,n);let{factory:M}=n;if(oY(P))N.push(oxt(M,P)),V.push(axt(M,P,d));else{N.push(oxt(M,P.head)),V.push(axt(M,P.head,d));for(let re of P.templateSpans)N.push(oxt(M,re.literal)),V.push(axt(M,re.literal,d)),R.push(w.checkDefined(xr(re.expression,u,tn)))}let te=n.getEmitHelperFactory().createTemplateObjectHelper(M.createArrayLiteralExpression(N),M.createArrayLiteralExpression(V));if(mm(d)){let re=M.createUniqueName("templateObject");I(re),R[0]=M.createLogicalOr(re,M.createAssignment(re,te))}else R[0]=te;return M.createCallExpression(b,void 0,R)}function oxt(n,c){return c.templateFlags&26656?n.createVoidZero():n.createStringLiteral(c.text)}function axt(n,c,u){let d=c.rawText;if(d===void 0){w.assertIsDefined(u,"Template literal node is missing 'rawText' and does not have a source file. Possibly bad transform."),d=pG(u,c);let I=c.kind===15||c.kind===18;d=d.substring(1,d.length-(I?1:2))}return d=d.replace(/\r\n?/g,` -`),un(n.createStringLiteral(d),c)}var s7i=!1;function cxt(n){let{factory:c,getEmitHelperFactory:u,startLexicalEnvironment:d,resumeLexicalEnvironment:I,endLexicalEnvironment:h,hoistVariableDeclaration:b}=n,R=n.getEmitResolver(),N=n.getCompilerOptions(),V=iA(N),P=R_(N),M=!!N.experimentalDecorators,te=N.emitDecoratorMetadata?uxt(n):void 0,re=n.onEmitNode,ue=n.onSubstituteNode;n.onEmitNode=Jg,n.onSubstituteNode=hf,n.enableSubstitution(211),n.enableSubstitution(212);let Ae,de,Be,Fe,Ne,Qe,De,lt;return Le;function Le(tt){return tt.kind===308?je(tt):st(tt)}function je(tt){return c.createBundle(tt.sourceFiles.map(st))}function st(tt){if(tt.isDeclarationFile)return tt;Ae=tt;let gr=nt(tt,Pt);return EN(gr,n.readEmitHelpers()),Ae=void 0,gr}function nt(tt,gr){let mn=Fe,Ri=Ne,Xo=Qe;qe(tt);let fi=gr(tt);return Fe!==mn&&(Ne=Ri),Fe=mn,Qe=Xo,fi}function qe(tt){switch(tt.kind){case 307:case 269:case 268:case 241:Fe=tt,Ne=void 0;break;case 263:case 262:if(ba(tt,128))break;tt.name?Re(tt):w.assert(tt.kind===263||ba(tt,2048));break}}function it(tt){return nt(tt,It)}function It(tt){return tt.transformFlags&1?mr(tt):tt}function dt(tt){return nt(tt,wt)}function wt(tt){switch(tt.kind){case 272:case 271:case 277:case 278:return Ye(tt);default:return It(tt)}}function vt(tt){let gr=jc(tt);if(gr===tt||tf(tt))return!1;if(!gr||gr.kind!==tt.kind)return!0;switch(tt.kind){case 272:if(w.assertNode(gr,mI),tt.importClause!==gr.importClause||tt.attributes!==gr.attributes)return!0;break;case 271:if(w.assertNode(gr,Cm),tt.name!==gr.name||tt.isTypeOnly!==gr.isTypeOnly||tt.moduleReference!==gr.moduleReference&&(w_(tt.moduleReference)||w_(gr.moduleReference)))return!0;break;case 278:if(w.assertNode(gr,mC),tt.exportClause!==gr.exportClause||tt.attributes!==gr.attributes)return!0;break}return!1}function Ye(tt){if(vt(tt))return tt.transformFlags&1?ns(tt,it,n):tt;switch(tt.kind){case 272:return Ii(tt);case 271:return Gs(tt);case 277:return Vi(tt);case 278:return ko(tt);default:w.fail("Unhandled ellided statement")}}function ht(tt){return nt(tt,Et)}function Et(tt){if(!(tt.kind===278||tt.kind===272||tt.kind===273||tt.kind===271&&tt.moduleReference.kind===283))return tt.transformFlags&1||ba(tt,32)?mr(tt):tt}function Kt(tt){return gr=>nt(gr,mn=>Tt(mn,tt))}function Tt(tt,gr){switch(tt.kind){case 176:return gs(tt);case 172:return ni(tt,gr);case 177:return Ku(tt,gr);case 178:return Bi(tt,gr);case 174:return Nc(tt,gr);case 175:return ns(tt,it,n);case 240:return tt;case 181:return;default:return w.failBadSyntaxKind(tt)}}function Lt(tt){return gr=>nt(gr,mn=>kt(mn,tt))}function kt(tt,gr){switch(tt.kind){case 303:case 304:case 305:return it(tt);case 177:return Ku(tt,gr);case 178:return Bi(tt,gr);case 174:return Nc(tt,gr);default:return w.failBadSyntaxKind(tt)}}function Zt(tt){return GC(tt)?void 0:it(tt)}function Dr(tt){return gg(tt)?void 0:it(tt)}function jt(tt){if(!GC(tt)&&!(VQ(tt.kind)&28895)&&!(de&&tt.kind===95))return tt}function mr(tt){if(Ic(tt)&&ba(tt,128))return c.createNotEmittedStatement(tt);switch(tt.kind){case 95:case 90:return de?void 0:tt;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:return;case 265:return c.createNotEmittedStatement(tt);case 270:return;case 264:return c.createNotEmittedStatement(tt);case 263:return $n(tt);case 231:return bi(tt);case 298:return _s(tt);case 233:return Wu(tt);case 210:return Vr(tt);case 176:case 172:case 174:case 177:case 178:case 175:return w.fail("Class and object literal elements must be visited with their respective visitors");case 262:return BA(tt);case 218:return kr(tt);case 219:return en(tt);case 169:return ct(tt);case 217:return Qt(tt);case 216:case 234:return _r(tt);case 238:return ti(tt);case 213:return cr(tt);case 214:return kn(tt);case 215:return Pn(tt);case 235:return Pr(tt);case 266:return Pe(tt);case 243:return rn(tt);case 260:return br(tt);case 267:return dn(tt);case 271:return Gs(tt);case 285:return an(tt);case 286:return Kr(tt);default:return ns(tt,it,n)}}function Pt(tt){let gr=D_(N,"alwaysStrict")&&!(mm(tt)&&P>=5)&&!Ia(tt);return c.updateSourceFile(tt,K8e(tt.statements,dt,n,0,gr))}function Vr(tt){return c.updateObjectLiteralExpression(tt,ws(tt.properties,Lt(tt),EB))}function Yr(tt){let gr=0;lr(n6e(tt,!0,!0))&&(gr|=1);let mn=Dv(tt);return mn&&ZC(mn.expression).kind!==106&&(gr|=64),Tx(M,tt)&&(gr|=2),Z8(M,tt)&&(gr|=4),ri(tt)?gr|=8:Qd(tt)?gr|=32:JA(tt)&&(gr|=16),gr}function pr(tt){return!!(tt.transformFlags&8192)}function zr(tt){return FE(tt)||lr(tt.typeParameters)||lr(tt.heritageClauses,pr)||lr(tt.members,pr)}function $n(tt){let gr=Yr(tt),mn=V<=1&&!!(gr&7);if(!zr(tt)&&!Tx(M,tt)&&!ri(tt))return c.updateClassDeclaration(tt,ws(tt.modifiers,jt,gg),tt.name,void 0,ws(tt.heritageClauses,it,WE),ws(tt.members,Kt(tt),rC));mn&&n.startLexicalEnvironment();let Ri=mn||gr&8,Xo=Ri?ws(tt.modifiers,Dr,Np):ws(tt.modifiers,it,Np);gr&2&&(Xo=Ns(Xo,tt));let Jo=Ri&&!tt.name||gr&4||gr&1?tt.name??c.getGeneratedNameForNode(tt):tt.name,hc=c.updateClassDeclaration(tt,Xo,Jo,void 0,ws(tt.heritageClauses,it,WE),Pi(tt)),ic=Sg(tt);gr&1&&(ic|=64),co(hc,ic);let Wg;if(mn){let nf=[hc],zC=Vce(Ju(Ae.text,tt.members.end),20),Xf=c.getInternalName(tt),Gm=c.createPartiallyEmittedExpression(Xf);n4(Gm,zC.end),co(Gm,3072);let sf=c.createReturnStatement(Gm);_6(sf,zC.pos),co(sf,3840),nf.push(sf),kS(nf,n.endLexicalEnvironment());let Fm=c.createImmediatelyInvokedArrowFunction(nf);rte(Fm,1);let Hb=c.createVariableDeclaration(c.getLocalName(tt,!1,!1),void 0,void 0,Fm);Ho(Hb,tt);let GI=c.createVariableStatement(void 0,c.createVariableDeclarationList([Hb],1));Ho(GI,tt),mA(GI,tt),Qg(GI,$R(tt)),l0(GI),Wg=GI}else Wg=hc;if(Ri){if(gr&8)return[Wg,kd(tt)];if(gr&32)return[Wg,c.createExportDefault(c.getLocalName(tt,!1,!0))];if(gr&16)return[Wg,c.createExternalModuleExport(c.getDeclarationName(tt,!1,!0))]}return Wg}function bi(tt){let gr=ws(tt.modifiers,Dr,Np);return Tx(M,tt)&&(gr=Ns(gr,tt)),c.updateClassExpression(tt,gr,tt.name,void 0,ws(tt.heritageClauses,it,WE),Pi(tt))}function Pi(tt){let gr=ws(tt.members,Kt(tt),rC),mn,Ri=dN(tt),Xo=Ri&&Gt(Ri.parameters,fi=>Zn(fi,Ri));if(Xo)for(let fi of Xo){let Jo=c.createPropertyDeclaration(void 0,fi.name,void 0,void 0,void 0);Ho(Jo,fi),mn=Hr(mn,Jo)}return mn?(mn=ai(mn,gr),un(c.createNodeArray(mn),tt.members)):gr}function Ns(tt,gr){let mn=jn(gr,gr);if(lr(mn)){let Ri=[];ai(Ri,Zf(tt,Hhe)),ai(Ri,Gt(tt,GC)),ai(Ri,mn),ai(Ri,Gt(hE(tt,Hhe),gg)),tt=un(c.createNodeArray(Ri),tt)}return tt}function gi(tt,gr,mn){if(Sa(mn)&&ame(M,gr,mn)){let Ri=jn(gr,mn);if(lr(Ri)){let Xo=[];ai(Xo,Gt(tt,GC)),ai(Xo,Ri),ai(Xo,Gt(tt,gg)),tt=un(c.createNodeArray(Xo),tt)}}return tt}function jn(tt,gr){if(M)return s7i?Ec(tt,gr):xs(tt,gr)}function xs(tt,gr){if(te){let mn;if(xi(tt)){let Ri=u().createMetadataHelper("design:type",te.serializeTypeOfNode({currentLexicalScope:Fe,currentNameScope:gr},tt,gr));mn=Hr(mn,c.createDecorator(Ri))}if(Vl(tt)){let Ri=u().createMetadataHelper("design:paramtypes",te.serializeParameterTypesOfNode({currentLexicalScope:Fe,currentNameScope:gr},tt,gr));mn=Hr(mn,c.createDecorator(Ri))}if(rc(tt)){let Ri=u().createMetadataHelper("design:returntype",te.serializeReturnTypeOfNode({currentLexicalScope:Fe,currentNameScope:gr},tt));mn=Hr(mn,c.createDecorator(Ri))}return mn}}function Ec(tt,gr){if(te){let mn;if(xi(tt)){let Ri=c.createPropertyAssignment("type",c.createArrowFunction(void 0,void 0,[],void 0,c.createToken(39),te.serializeTypeOfNode({currentLexicalScope:Fe,currentNameScope:gr},tt,gr)));mn=Hr(mn,Ri)}if(Vl(tt)){let Ri=c.createPropertyAssignment("paramTypes",c.createArrowFunction(void 0,void 0,[],void 0,c.createToken(39),te.serializeParameterTypesOfNode({currentLexicalScope:Fe,currentNameScope:gr},tt,gr)));mn=Hr(mn,Ri)}if(rc(tt)){let Ri=c.createPropertyAssignment("returnType",c.createArrowFunction(void 0,void 0,[],void 0,c.createToken(39),te.serializeReturnTypeOfNode({currentLexicalScope:Fe,currentNameScope:gr},tt)));mn=Hr(mn,Ri)}if(mn){let Ri=u().createMetadataHelper("design:typeinfo",c.createObjectLiteralExpression(mn,!0));return[c.createDecorator(Ri)]}}}function xi(tt){let gr=tt.kind;return gr===174||gr===177||gr===178||gr===172}function rc(tt){return tt.kind===174}function Vl(tt){switch(tt.kind){case 263:case 231:return dN(tt)!==void 0;case 174:case 177:case 178:return!0}return!1}function ul(tt,gr){let mn=tt.name;return kc(mn)?c.createIdentifier(""):xg(mn)?gr&&!DN(mn.expression)?c.getGeneratedNameForNode(mn):mn.expression:sr(mn)?c.createStringLiteral(ao(mn)):c.cloneNode(mn)}function Cc(tt){let gr=tt.name;if(xg(gr)&&(!IC(tt)&&Qe||FE(tt)&&M)){let mn=xr(gr.expression,it,tn);w.assert(mn);let Ri=D1(mn);if(!DN(Ri)){let Xo=c.getGeneratedNameForNode(gr);return b(Xo),c.updateComputedPropertyName(gr,c.createAssignment(Xo,mn))}}return w.checkDefined(xr(gr,it,NI))}function _s(tt){if(tt.token!==119)return ns(tt,it,n)}function Wu(tt){return c.updateExpressionWithTypeArguments(tt,w.checkDefined(xr(tt.expression,it,T_)),void 0)}function ir(tt){return!wf(tt.body)}function ni(tt,gr){let mn=tt.flags&33554432||ba(tt,64);if(mn&&!(M&&FE(tt)))return;let Ri=Sa(gr)?mn?ws(tt.modifiers,Dr,Np):ws(tt.modifiers,it,Np):ws(tt.modifiers,Zt,Np);return Ri=gi(Ri,tt,gr),mn?c.updatePropertyDeclaration(tt,vi(Ri,c.createModifiersFromModifierFlags(128)),w.checkDefined(xr(tt.name,it,NI)),void 0,void 0,void 0):c.updatePropertyDeclaration(tt,Ri,Cc(tt),void 0,void 0,xr(tt.initializer,it,tn))}function gs(tt){if(ir(tt))return c.updateConstructorDeclaration(tt,void 0,hI(tt.parameters,it,n),qa(tt.body,tt))}function Hs(tt,gr,mn,Ri,Xo,fi){let Jo=Ri[Xo],hc=gr[Jo];if(ai(tt,ws(gr,it,Ic,mn,Jo-mn)),ob(hc)){let ic=[];Hs(ic,hc.tryBlock.statements,0,Ri,Xo+1,fi);let Wg=c.createNodeArray(ic);un(Wg,hc.tryBlock.statements),tt.push(c.updateTryStatement(hc,c.updateBlock(hc.tryBlock,ic),xr(hc.catchClause,it,dY),xr(hc.finallyBlock,it,mc)))}else ai(tt,ws(gr,it,Ic,Jo,1)),ai(tt,fi);ai(tt,ws(gr,it,Ic,Jo+1))}function qa(tt,gr){let mn=gr&&Gt(gr.parameters,ic=>Zn(ic,gr));if(!lr(mn))return L2(tt,it,n);let Ri=[];I();let Xo=c.copyPrologue(tt.statements,Ri,!1,it),fi=Zke(tt.statements,Xo),Jo=tr(mn,nc);fi.length?Hs(Ri,tt.statements,Xo,fi,0,Jo):(ai(Ri,Jo),ai(Ri,ws(tt.statements,it,Ic,Xo))),Ri=c.mergeLexicalEnvironment(Ri,h());let hc=c.createBlock(un(c.createNodeArray(Ri),tt.statements),!0);return un(hc,tt),Ho(hc,tt),hc}function nc(tt){let gr=tt.name;if(!sr(gr))return;let mn=kA(un(c.cloneNode(gr),gr),gr.parent);co(mn,3168);let Ri=kA(un(c.cloneNode(gr),gr),gr.parent);return co(Ri,3072),l0(tte(un(Ho(c.createExpressionStatement(c.createAssignment(un(c.createPropertyAccessExpression(c.createThis(),mn),tt.name),Ri)),tt),TZ(tt,-1))))}function Nc(tt,gr){if(!(tt.transformFlags&1))return tt;if(!ir(tt))return;let mn=Sa(gr)?ws(tt.modifiers,it,Np):ws(tt.modifiers,Zt,Np);return mn=gi(mn,tt,gr),c.updateMethodDeclaration(tt,mn,tt.asteriskToken,Cc(tt),void 0,void 0,hI(tt.parameters,it,n),void 0,L2(tt.body,it,n))}function cg(tt){return!(wf(tt.body)&&ba(tt,64))}function Ku(tt,gr){if(!(tt.transformFlags&1))return tt;if(!cg(tt))return;let mn=Sa(gr)?ws(tt.modifiers,it,Np):ws(tt.modifiers,Zt,Np);return mn=gi(mn,tt,gr),c.updateGetAccessorDeclaration(tt,mn,Cc(tt),hI(tt.parameters,it,n),void 0,L2(tt.body,it,n)||c.createBlock([]))}function Bi(tt,gr){if(!(tt.transformFlags&1))return tt;if(!cg(tt))return;let mn=Sa(gr)?ws(tt.modifiers,it,Np):ws(tt.modifiers,Zt,Np);return mn=gi(mn,tt,gr),c.updateSetAccessorDeclaration(tt,mn,Cc(tt),hI(tt.parameters,it,n),L2(tt.body,it,n)||c.createBlock([]))}function BA(tt){if(!ir(tt))return c.createNotEmittedStatement(tt);let gr=c.updateFunctionDeclaration(tt,ws(tt.modifiers,jt,gg),tt.asteriskToken,tt.name,void 0,hI(tt.parameters,it,n),void 0,L2(tt.body,it,n)||c.createBlock([]));if(ri(tt)){let mn=[gr];return Tl(mn,tt),mn}return gr}function kr(tt){return ir(tt)?c.updateFunctionExpression(tt,ws(tt.modifiers,jt,gg),tt.asteriskToken,tt.name,void 0,hI(tt.parameters,it,n),void 0,L2(tt.body,it,n)||c.createBlock([])):c.createOmittedExpression()}function en(tt){return c.updateArrowFunction(tt,ws(tt.modifiers,jt,gg),void 0,hI(tt.parameters,it,n),void 0,tt.equalsGreaterThanToken,L2(tt.body,it,n))}function ct(tt){if(sV(tt))return;let gr=c.updateParameterDeclaration(tt,ws(tt.modifiers,mn=>GC(mn)?it(mn):void 0,Np),tt.dotDotDotToken,w.checkDefined(xr(tt.name,it,mZ)),void 0,void 0,xr(tt.initializer,it,tn));return gr!==tt&&(mA(gr,tt),un(gr,OS(tt)),Qg(gr,OS(tt)),co(gr.name,64)),gr}function rn(tt){if(ri(tt)){let gr=c6(tt.declarationList);return gr.length===0?void 0:un(c.createExpressionStatement(c.inlineExpressions(Ot(gr,St))),tt)}else return ns(tt,it,n)}function St(tt){let gr=tt.name;return pu(gr)?m4(tt,it,n,0,!1,mf):un(c.createAssignment(zc(gr),w.checkDefined(xr(tt.initializer,it,tn))),tt)}function br(tt){let gr=c.updateVariableDeclaration(tt,w.checkDefined(xr(tt.name,it,mZ)),void 0,void 0,xr(tt.initializer,it,tn));return tt.type&&pxe(gr.name,tt.type),gr}function Qt(tt){let gr=ZC(tt.expression,-7);if(DE(gr)||TG(gr)){let mn=xr(tt.expression,it,tn);return w.assert(mn),c.createPartiallyEmittedExpression(mn,tt)}return ns(tt,it,n)}function _r(tt){let gr=xr(tt.expression,it,tn);return w.assert(gr),c.createPartiallyEmittedExpression(gr,tt)}function Pr(tt){let gr=xr(tt.expression,it,T_);return w.assert(gr),c.createPartiallyEmittedExpression(gr,tt)}function ti(tt){let gr=xr(tt.expression,it,tn);return w.assert(gr),c.createPartiallyEmittedExpression(gr,tt)}function cr(tt){return c.updateCallExpression(tt,w.checkDefined(xr(tt.expression,it,tn)),void 0,ws(tt.arguments,it,tn))}function kn(tt){return c.updateNewExpression(tt,w.checkDefined(xr(tt.expression,it,tn)),void 0,ws(tt.arguments,it,tn))}function Pn(tt){return c.updateTaggedTemplateExpression(tt,w.checkDefined(xr(tt.tag,it,tn)),void 0,w.checkDefined(xr(tt.template,it,x1)))}function an(tt){return c.updateJsxSelfClosingElement(tt,w.checkDefined(xr(tt.tagName,it,k3)),void 0,w.checkDefined(xr(tt.attributes,it,AY)))}function Kr(tt){return c.updateJsxOpeningElement(tt,w.checkDefined(xr(tt.tagName,it,k3)),void 0,w.checkDefined(xr(tt.attributes,it,AY)))}function wn(tt){return!Ac(tt)||uV(N)}function Pe(tt){if(!wn(tt))return c.createNotEmittedStatement(tt);let gr=[],mn=4,Ri=Vt(gr,tt);Ri&&(P!==4||Fe!==Ae)&&(mn|=1024);let Xo=Zc(tt),fi=Km(tt),Jo=ri(tt)?c.getExternalModuleOrNamespaceExportName(Be,tt,!1,!0):c.getDeclarationName(tt,!1,!0),hc=c.createLogicalOr(Jo,c.createAssignment(Jo,c.createObjectLiteralExpression()));if(ri(tt)){let Wg=c.getLocalName(tt,!1,!0);hc=c.createAssignment(Wg,hc)}let ic=c.createExpressionStatement(c.createCallExpression(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,Xo)],void 0,ar(tt,fi)),void 0,[hc]));return Ho(ic,tt),Ri&&(US(ic,void 0),rY(ic,void 0)),un(ic,tt),XS(ic,mn),gr.push(ic),gr}function ar(tt,gr){let mn=Be;Be=gr;let Ri=[];d();let Xo=Ot(tt.members,sn);return kS(Ri,h()),ai(Ri,Xo),Be=mn,c.createBlock(un(c.createNodeArray(Ri),tt.members),!0)}function sn(tt){let gr=ul(tt,!1),mn=R.getEnumMemberValue(tt),Ri=Me(tt,mn?.value),Xo=c.createAssignment(c.createElementAccessExpression(Be,gr),Ri),fi=typeof mn?.value=="string"||mn?.isSyntacticallyString?Xo:c.createAssignment(c.createElementAccessExpression(Be,Xo),gr);return un(c.createExpressionStatement(un(fi,tt)),tt)}function Me(tt,gr){return gr!==void 0?typeof gr=="string"?c.createStringLiteral(gr):gr<0?c.createPrefixUnaryExpression(41,c.createNumericLiteral(-gr)):c.createNumericLiteral(gr):(Df(),tt.initializer?w.checkDefined(xr(tt.initializer,it,tn)):c.createVoidZero())}function ur(tt){let gr=jc(tt,CC);return gr?J8e(gr,uV(N)):!0}function Re(tt){Ne||(Ne=new Map);let gr=bt(tt);Ne.has(gr)||Ne.set(gr,tt)}function Jt(tt){if(Ne){let gr=bt(tt);return Ne.get(gr)===tt}return!0}function bt(tt){return w.assertNode(tt.name,sr),tt.name.escapedText}function Vt(tt,gr){let mn=c.createVariableDeclaration(c.getLocalName(gr,!1,!0)),Ri=Fe.kind===307?0:1,Xo=c.createVariableStatement(ws(gr.modifiers,jt,gg),c.createVariableDeclarationList([mn],Ri));return Ho(mn,gr),US(mn,void 0),rY(mn,void 0),Ho(Xo,gr),Re(gr),Jt(gr)?(gr.kind===266?Qg(Xo.declarationList,gr):Qg(Xo,gr),mA(Xo,gr),XS(Xo,2048),tt.push(Xo),!0):!1}function dn(tt){if(!ur(tt))return c.createNotEmittedStatement(tt);w.assertNode(tt.name,sr,"A TypeScript namespace should have an Identifier name."),f0();let gr=[],mn=4,Ri=Vt(gr,tt);Ri&&(P!==4||Fe!==Ae)&&(mn|=1024);let Xo=Zc(tt),fi=Km(tt),Jo=ri(tt)?c.getExternalModuleOrNamespaceExportName(Be,tt,!1,!0):c.getDeclarationName(tt,!1,!0),hc=c.createLogicalOr(Jo,c.createAssignment(Jo,c.createObjectLiteralExpression()));if(ri(tt)){let Wg=c.getLocalName(tt,!1,!0);hc=c.createAssignment(Wg,hc)}let ic=c.createExpressionStatement(c.createCallExpression(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,Xo)],void 0,On(tt,fi)),void 0,[hc]));return Ho(ic,tt),Ri&&(US(ic,void 0),rY(ic,void 0)),un(ic,tt),XS(ic,mn),gr.push(ic),gr}function On(tt,gr){let mn=Be,Ri=de,Xo=Ne;Be=gr,de=tt,Ne=void 0;let fi=[];d();let Jo,hc;if(tt.body)if(tt.body.kind===268)nt(tt.body,Wg=>ai(fi,ws(Wg.statements,ht,Ic))),Jo=tt.body.statements,hc=tt.body;else{let Wg=dn(tt.body);Wg&&(Ra(Wg)?ai(fi,Wg):fi.push(Wg));let nf=Mn(tt).body;Jo=TZ(nf.statements,-1)}kS(fi,h()),Be=mn,de=Ri,Ne=Xo;let ic=c.createBlock(un(c.createNodeArray(fi),Jo),!0);return un(ic,hc),(!tt.body||tt.body.kind!==268)&&co(ic,Sg(ic)|3072),ic}function Mn(tt){if(tt.body.kind===267)return Mn(tt.body)||tt.body}function Ii(tt){if(!tt.importClause)return tt;if(tt.importClause.isTypeOnly)return;let gr=xr(tt.importClause,ds,sT);return gr?c.updateImportDeclaration(tt,void 0,gr,tt.moduleSpecifier,tt.attributes):void 0}function ds(tt){w.assert(!tt.isTypeOnly);let gr=yt(tt)?tt.name:void 0,mn=xr(tt.namedBindings,Es,E$);return gr||mn?c.updateImportClause(tt,!1,gr,mn):void 0}function Es(tt){if(tt.kind===274)return yt(tt)?tt:void 0;{let gr=N.verbatimModuleSyntax,mn=ws(tt.elements,oo,_y);return gr||lr(mn)?c.updateNamedImports(tt,mn):void 0}}function oo(tt){return!tt.isTypeOnly&&yt(tt)?tt:void 0}function Vi(tt){return N.verbatimModuleSyntax||R.isValueAliasDeclaration(tt)?ns(tt,it,n):void 0}function ko(tt){if(tt.isTypeOnly)return;if(!tt.exportClause||rD(tt.exportClause))return tt;let gr=!!N.verbatimModuleSyntax,mn=xr(tt.exportClause,Ri=>oa(Ri,gr),l8);return mn?c.updateExportDeclaration(tt,void 0,tt.isTypeOnly,mn,tt.moduleSpecifier,tt.attributes):void 0}function Yc(tt,gr){let mn=ws(tt.elements,Da,c0);return gr||lr(mn)?c.updateNamedExports(tt,mn):void 0}function fl(tt){return c.updateNamespaceExport(tt,w.checkDefined(xr(tt.name,it,sr)))}function oa(tt,gr){return rD(tt)?fl(tt):Yc(tt,gr)}function Da(tt){return!tt.isTypeOnly&&(N.verbatimModuleSyntax||R.isValueAliasDeclaration(tt))?tt:void 0}function ki(tt){return yt(tt)||!mm(Ae)&&R.isTopLevelValueImportEqualsWithEntityName(tt)}function Gs(tt){if(tt.isTypeOnly)return;if(EZ(tt))return yt(tt)?ns(tt,it,n):void 0;if(!ki(tt))return;let gr=Ohe(c,tt.moduleReference);return co(gr,7168),JA(tt)||!ri(tt)?Ho(un(c.createVariableStatement(ws(tt.modifiers,jt,gg),c.createVariableDeclarationList([Ho(c.createVariableDeclaration(tt.name,void 0,void 0,gr),tt)])),tt),tt):Ho(lg(tt.name,gr,tt),tt)}function ri(tt){return de!==void 0&&ba(tt,32)}function hu(tt){return de===void 0&&ba(tt,32)}function JA(tt){return hu(tt)&&!ba(tt,2048)}function Qd(tt){return hu(tt)&&ba(tt,2048)}function kd(tt){let gr=c.createAssignment(c.getExternalModuleOrNamespaceExportName(Be,tt,!1,!0),c.getLocalName(tt));Qg(gr,F1(tt.name?tt.name.pos:tt.pos,tt.end));let mn=c.createExpressionStatement(gr);return Qg(mn,F1(-1,tt.end)),mn}function Tl(tt,gr){tt.push(kd(gr))}function lg(tt,gr,mn){return un(c.createExpressionStatement(c.createAssignment(c.getNamespaceMemberName(Be,tt,!1,!0),gr)),mn)}function mf(tt,gr,mn){return un(c.createAssignment(zc(tt),gr),mn)}function zc(tt){return c.getNamespaceMemberName(Be,tt,!1,!0)}function Zc(tt){let gr=c.getGeneratedNameForNode(tt);return Qg(gr,tt.name),gr}function Km(tt){return c.getGeneratedNameForNode(tt)}function Df(){De&8||(De|=8,n.enableSubstitution(80))}function f0(){De&2||(De|=2,n.enableSubstitution(80),n.enableSubstitution(304),n.enableEmitNotification(267))}function xI(tt){return Tp(tt).kind===267}function s_(tt){return Tp(tt).kind===266}function Jg(tt,gr,mn){let Ri=lt,Xo=Ae;Gc(gr)&&(Ae=gr),De&2&&xI(gr)&&(lt|=2),De&8&&s_(gr)&&(lt|=8),re(tt,gr,mn),lt=Ri,Ae=Xo}function hf(tt,gr){return gr=ue(tt,gr),tt===1?zA(gr):G_(gr)?Yd(gr):gr}function Yd(tt){if(De&2){let gr=tt.name,mn=lI(gr);if(mn){if(tt.objectAssignmentInitializer){let Ri=c.createAssignment(mn,tt.objectAssignmentInitializer);return un(c.createPropertyAssignment(gr,Ri),tt)}return un(c.createPropertyAssignment(gr,mn),tt)}}return tt}function zA(tt){switch(tt.kind){case 80:return di(tt);case 211:return J0(tt);case 212:return U0(tt)}return tt}function di(tt){return lI(tt)||tt}function lI(tt){if(De<&&!Ip(tt)&&!kG(tt)){let gr=R.getReferencedExportContainer(tt,!1);if(gr&&gr.kind!==307&&(lt&2&&gr.kind===267||lt&8&&gr.kind===266))return un(c.createPropertyAccessExpression(c.getGeneratedNameForNode(gr),tt),tt)}}function J0(tt){return rf(tt)}function U0(tt){return rf(tt)}function Yb(tt){return tt.replace(/\*\//g,"*_/")}function rf(tt){let gr=kI(tt);if(gr!==void 0){dxe(tt,gr);let mn=typeof gr=="string"?c.createStringLiteral(gr):gr<0?c.createPrefixUnaryExpression(41,c.createNumericLiteral(-gr)):c.createNumericLiteral(gr);if(!N.removeComments){let Ri=Tp(tt,Cp);Ele(mn,3,` ${Yb(Tf(Ri))} `)}return mn}return tt}function kI(tt){if(!ZE(N))return Io(tt)||hA(tt)?R.getConstantValue(tt):void 0}function yt(tt){return N.verbatimModuleSyntax||so(tt)||R.isReferencedAliasDeclaration(tt)}}function lxt(n){let{factory:c,getEmitHelperFactory:u,hoistVariableDeclaration:d,endLexicalEnvironment:I,startLexicalEnvironment:h,resumeLexicalEnvironment:b,addBlockScopedVariable:R}=n,N=n.getEmitResolver(),V=n.getCompilerOptions(),P=iA(V),M=Lee(V),te=!!V.experimentalDecorators,re=!M,ue=M&&P<9,Ae=re||ue,de=P<9,Be=P<99?-1:M?0:3,Fe=P<9,Ne=Fe&&P>=2,Qe=Ae||de||Be===-1,De=n.onSubstituteNode;n.onSubstituteNode=J0;let lt=n.onEmitNode;n.onEmitNode=lI;let Le=!1,je,st,nt,qe,it,It=new Map,dt=new Set,wt,vt,Ye=!1,ht=!1;return lT(n,Et);function Et(yt){if(yt.isDeclarationFile||(it=void 0,Le=!!(kE(yt)&32),!Qe&&!Le))return yt;let tt=ns(yt,Tt,n);return EN(tt,n.readEmitHelpers()),tt}function Kt(yt){switch(yt.kind){case 129:return ni()?void 0:yt;default:return eo(yt,gg)}}function Tt(yt){if(!(yt.transformFlags&16777216)&&!(yt.transformFlags&134234112))return yt;switch(yt.kind){case 129:return w.fail("Use `modifierVisitor` instead.");case 263:return Kr(yt);case 231:return Pe(yt);case 175:case 172:return w.fail("Use `classElementVisitor` instead.");case 303:return pr(yt);case 243:return zr(yt);case 260:return $n(yt);case 169:return bi(yt);case 208:return Pi(yt);case 277:return Ns(yt);case 81:return Vr(yt);case 211:return cg(yt);case 212:return Ku(yt);case 224:case 225:return Bi(yt,!1);case 226:return Qt(yt,!1);case 217:return Pr(yt,!1);case 213:return ct(yt);case 244:return kr(yt);case 215:return rn(yt);case 248:return BA(yt);case 110:return Me(yt);case 262:case 218:return rc(void 0,Lt,yt);case 176:case 174:case 177:case 178:return rc(yt,Lt,yt);default:return Lt(yt)}}function Lt(yt){return ns(yt,Tt,n)}function kt(yt){switch(yt.kind){case 224:case 225:return Bi(yt,!0);case 226:return Qt(yt,!0);case 355:return _r(yt,!0);case 217:return Pr(yt,!0);default:return Tt(yt)}}function Zt(yt){switch(yt.kind){case 298:return ns(yt,Zt,n);case 233:return Pn(yt);default:return Tt(yt)}}function Dr(yt){switch(yt.kind){case 210:case 209:return di(yt);default:return Tt(yt)}}function jt(yt){switch(yt.kind){case 176:return rc(yt,xs,yt);case 177:case 178:case 174:return rc(yt,xi,yt);case 172:return rc(yt,gs,yt);case 175:return rc(yt,sn,yt);case 167:return jn(yt);case 240:return yt;default:return Np(yt)?Kt(yt):Tt(yt)}}function mr(yt){switch(yt.kind){case 167:return jn(yt);default:return Tt(yt)}}function Pt(yt){switch(yt.kind){case 172:return ir(yt);case 177:case 178:return jt(yt);default:w.assertMissingNode(yt,"Expected node to either be a PropertyDeclaration, GetAccessorDeclaration, or SetAccessorDeclaration");break}}function Vr(yt){return!de||Ic(yt.parent)?yt:Ho(c.createIdentifier(""),yt)}function Yr(yt){let tt=Zc(yt.left);if(tt){let gr=xr(yt.right,Tt,tn);return Ho(u().createClassPrivateFieldInHelper(tt.brandCheckIdentifier,gr),yt)}return ns(yt,Tt,n)}function pr(yt){return tb(yt,br)&&(yt=PE(n,yt)),ns(yt,Tt,n)}function zr(yt){let tt=qe;qe=[];let gr=ns(yt,Tt,n),mn=lr(qe)?[gr,...qe]:gr;return qe=tt,mn}function $n(yt){return tb(yt,br)&&(yt=PE(n,yt)),ns(yt,Tt,n)}function bi(yt){return tb(yt,br)&&(yt=PE(n,yt)),ns(yt,Tt,n)}function Pi(yt){return tb(yt,br)&&(yt=PE(n,yt)),ns(yt,Tt,n)}function Ns(yt){return tb(yt,br)&&(yt=PE(n,yt,!0,yt.isExportEquals?"":"default")),ns(yt,Tt,n)}function gi(yt){return lr(nt)&&(FC(yt)?(nt.push(yt.expression),yt=c.updateParenthesizedExpression(yt,c.inlineExpressions(nt))):(nt.push(yt),yt=c.inlineExpressions(nt)),nt=void 0),yt}function jn(yt){let tt=xr(yt.expression,Tt,tn);return c.updateComputedPropertyName(yt,gi(tt))}function xs(yt){return wt?Jt(yt,wt):Lt(yt)}function Ec(yt){return!!(de||IC(yt)&&kE(yt)&32)}function xi(yt){if(w.assert(!FE(yt)),!Rh(yt)||!Ec(yt))return ns(yt,jt,n);let tt=Zc(yt.name);if(w.assert(tt,"Undeclared private name for property declaration."),!tt.isValid)return yt;let gr=Vl(yt);gr&&Gs().push(c.createAssignment(gr,c.createFunctionExpression(Gt(yt.modifiers,mn=>gg(mn)&&!nT(mn)&&!Yxe(mn)),yt.asteriskToken,gr,void 0,hI(yt.parameters,Tt,n),void 0,L2(yt.body,Tt,n))))}function rc(yt,tt,gr){if(yt!==vt){let mn=vt;vt=yt;let Ri=tt(gr);return vt=mn,Ri}return tt(gr)}function Vl(yt){w.assert(kc(yt.name));let tt=Zc(yt.name);if(w.assert(tt,"Undeclared private name for property declaration."),tt.kind==="m")return tt.methodName;if(tt.kind==="a"){if(Nv(yt))return tt.getterName;if(Dh(yt))return tt.setterName}}function ul(){let yt=Da();return yt.classThis??yt.classConstructor??wt?.name}function Cc(yt){let tt=JS(yt),gr=Gx(yt),mn=yt.name,Ri=mn,Xo=mn;if(xg(mn)&&!DN(mn.expression)){let zC=ike(mn);if(zC)Ri=c.updateComputedPropertyName(mn,xr(mn.expression,Tt,tn)),Xo=c.updateComputedPropertyName(mn,zC.left);else{let Xf=c.createTempVariable(d);Qg(Xf,mn.expression);let Gm=xr(mn.expression,Tt,tn),sf=c.createAssignment(Xf,Gm);Qg(sf,mn.expression),Ri=c.updateComputedPropertyName(mn,sf),Xo=c.updateComputedPropertyName(mn,Xf)}}let fi=ws(yt.modifiers,Kt,gg),Jo=r8e(c,yt,fi,yt.initializer);Ho(Jo,yt),co(Jo,3072),Qg(Jo,gr);let hc=$u(yt)?ul()??c.createThis():c.createThis(),ic=yRt(c,yt,fi,Ri,hc);Ho(ic,yt),mA(ic,tt),Qg(ic,gr);let Wg=c.createModifiersFromModifierFlags(xv(fi)),nf=bRt(c,yt,Wg,Xo,hc);return Ho(nf,yt),co(nf,3072),Qg(nf,gr),l_e([Jo,ic,nf],Pt,rC)}function _s(yt){if(Ec(yt)){let tt=Zc(yt.name);if(w.assert(tt,"Undeclared private name for property declaration."),!tt.isValid)return yt;if(tt.isStatic&&!de){let gr=On(yt,c.createThis());if(gr)return c.createClassStaticBlockDeclaration(c.createBlock([gr],!0))}return}return re&&!$u(yt)&&it?.data&&it.data.facts&16?c.updatePropertyDeclaration(yt,ws(yt.modifiers,Tt,Np),yt.name,void 0,void 0,void 0):(tb(yt,br)&&(yt=PE(n,yt)),c.updatePropertyDeclaration(yt,ws(yt.modifiers,Kt,gg),xr(yt.name,mr,NI),void 0,void 0,xr(yt.initializer,Tt,tn)))}function Wu(yt){if(Ae&&!t_(yt)){let tt=Yc(yt.name,!!yt.initializer||M);if(tt&&Gs().push(...ERt(tt)),$u(yt)&&!de){let gr=On(yt,c.createThis());if(gr){let mn=c.createClassStaticBlockDeclaration(c.createBlock([gr]));return Ho(mn,yt),mA(mn,yt),mA(gr,{pos:-1,end:-1}),US(gr,void 0),rY(gr,void 0),mn}}return}return c.updatePropertyDeclaration(yt,ws(yt.modifiers,Kt,gg),xr(yt.name,mr,NI),void 0,void 0,xr(yt.initializer,Tt,tn))}function ir(yt){return w.assert(!FE(yt),"Decorators should already have been transformed and elided."),Rh(yt)?_s(yt):Wu(yt)}function ni(){return Be===-1||Be===3&&!!it?.data&&!!(it.data.facts&16)}function gs(yt){return t_(yt)&&(ni()||IC(yt)&&kE(yt)&32)?Cc(yt):ir(yt)}function Hs(){return!!vt&&IC(vt)&&jw(vt)&&t_(Tp(vt))}function qa(yt){if(Hs()){let tt=ZC(yt);tt.kind===110&&dt.add(tt)}}function nc(yt,tt){return tt=xr(tt,Tt,tn),qa(tt),Nc(yt,tt)}function Nc(yt,tt){switch(mA(tt,TZ(tt,-1)),yt.kind){case"a":return u().createClassPrivateFieldGetHelper(tt,yt.brandCheckIdentifier,yt.kind,yt.getterName);case"m":return u().createClassPrivateFieldGetHelper(tt,yt.brandCheckIdentifier,yt.kind,yt.methodName);case"f":return u().createClassPrivateFieldGetHelper(tt,yt.brandCheckIdentifier,yt.kind,yt.isStatic?yt.variableName:void 0);case"untransformed":return w.fail("Access helpers should not be created for untransformed private elements");default:w.assertNever(yt,"Unknown private element type")}}function cg(yt){if(kc(yt.name)){let tt=Zc(yt.name);if(tt)return un(Ho(nc(tt,yt.expression),yt),yt)}if(Ne&&vt&&M0(yt)&&sr(yt.name)&&iue(vt)&&it?.data){let{classConstructor:tt,superClassReference:gr,facts:mn}=it.data;if(mn&1)return ko(yt);if(tt&&gr){let Ri=c.createReflectGetCall(gr,c.createStringLiteralFromNode(yt.name),tt);return Ho(Ri,yt.expression),un(Ri,yt.expression),Ri}}return ns(yt,Tt,n)}function Ku(yt){if(Ne&&vt&&M0(yt)&&iue(vt)&&it?.data){let{classConstructor:tt,superClassReference:gr,facts:mn}=it.data;if(mn&1)return ko(yt);if(tt&&gr){let Ri=c.createReflectGetCall(gr,xr(yt.argumentExpression,Tt,tn),tt);return Ho(Ri,yt.expression),un(Ri,yt.expression),Ri}}return ns(yt,Tt,n)}function Bi(yt,tt){if(yt.operator===46||yt.operator===47){let gr=jA(yt.operand);if(Y9(gr)){let mn;if(mn=Zc(gr.name)){let Ri=xr(gr.expression,Tt,tn);qa(Ri);let{readExpression:Xo,initializeExpression:fi}=en(Ri),Jo=nc(mn,Xo),hc=xB(yt)||tt?void 0:c.createTempVariable(d);return Jo=zxe(c,yt,Jo,d,hc),Jo=ti(mn,fi||Xo,Jo,64),Ho(Jo,yt),un(Jo,yt),hc&&(Jo=c.createComma(Jo,hc),un(Jo,yt)),Jo}}else if(Ne&&vt&&M0(gr)&&iue(vt)&&it?.data){let{classConstructor:mn,superClassReference:Ri,facts:Xo}=it.data;if(Xo&1){let fi=ko(gr);return xB(yt)?c.updatePrefixUnaryExpression(yt,fi):c.updatePostfixUnaryExpression(yt,fi)}if(mn&&Ri){let fi,Jo;if(Io(gr)?sr(gr.name)&&(Jo=fi=c.createStringLiteralFromNode(gr.name)):DN(gr.argumentExpression)?Jo=fi=gr.argumentExpression:(Jo=c.createTempVariable(d),fi=c.createAssignment(Jo,xr(gr.argumentExpression,Tt,tn))),fi&&Jo){let hc=c.createReflectGetCall(Ri,Jo,mn);un(hc,gr);let ic=tt?void 0:c.createTempVariable(d);return hc=zxe(c,yt,hc,d,ic),hc=c.createReflectSetCall(Ri,fi,hc,mn),Ho(hc,yt),un(hc,yt),ic&&(hc=c.createComma(hc,ic),un(hc,yt)),hc}}}}return ns(yt,Tt,n)}function BA(yt){return c.updateForStatement(yt,xr(yt.initializer,kt,P0),xr(yt.condition,Tt,tn),xr(yt.incrementor,kt,tn),yy(yt.statement,Tt,n))}function kr(yt){return c.updateExpressionStatement(yt,xr(yt.expression,kt,tn))}function en(yt){let tt=qd(yt)?yt:c.cloneNode(yt);if(yt.kind===110&&dt.has(yt)&&dt.add(tt),DN(yt))return{readExpression:tt,initializeExpression:void 0};let gr=c.createTempVariable(d),mn=c.createAssignment(gr,tt);return{readExpression:gr,initializeExpression:mn}}function ct(yt){var tt;if(Y9(yt.expression)&&Zc(yt.expression.name)){let{thisArg:gr,target:mn}=c.createCallBinding(yt.expression,d,P);return uG(yt)?c.updateCallChain(yt,c.createPropertyAccessChain(xr(mn,Tt,tn),yt.questionDotToken,"call"),void 0,void 0,[xr(gr,Tt,tn),...ws(yt.arguments,Tt,tn)]):c.updateCallExpression(yt,c.createPropertyAccessExpression(xr(mn,Tt,tn),"call"),void 0,[xr(gr,Tt,tn),...ws(yt.arguments,Tt,tn)])}if(Ne&&vt&&M0(yt.expression)&&iue(vt)&&((tt=it?.data)!=null&&tt.classConstructor)){let gr=c.createFunctionCallCall(xr(yt.expression,Tt,tn),it.data.classConstructor,ws(yt.arguments,Tt,tn));return Ho(gr,yt),un(gr,yt),gr}return ns(yt,Tt,n)}function rn(yt){var tt;if(Y9(yt.tag)&&Zc(yt.tag.name)){let{thisArg:gr,target:mn}=c.createCallBinding(yt.tag,d,P);return c.updateTaggedTemplateExpression(yt,c.createCallExpression(c.createPropertyAccessExpression(xr(mn,Tt,tn),"bind"),void 0,[xr(gr,Tt,tn)]),void 0,xr(yt.template,Tt,x1))}if(Ne&&vt&&M0(yt.tag)&&iue(vt)&&((tt=it?.data)!=null&&tt.classConstructor)){let gr=c.createFunctionBindCall(xr(yt.tag,Tt,tn),it.data.classConstructor,[]);return Ho(gr,yt),un(gr,yt),c.updateTaggedTemplateExpression(yt,gr,void 0,xr(yt.template,Tt,x1))}return ns(yt,Tt,n)}function St(yt){if(it&&It.set(Tp(yt),it),de){if(rue(yt)){let mn=xr(yt.body.statements[0].expression,Tt,tn);return fm(mn,!0)&&mn.left===mn.right?void 0:mn}if(Y6(yt))return xr(yt.body.statements[0].expression,Tt,tn);h();let tt=rc(yt,mn=>ws(mn,Tt,Ic),yt.body.statements);tt=c.mergeLexicalEnvironment(tt,I());let gr=c.createImmediatelyInvokedArrowFunction(tt);return Ho(jA(gr.expression),yt),XS(jA(gr.expression),4),Ho(gr,yt),un(gr,yt),gr}}function br(yt){if(tp(yt)&&!yt.name){let tt=Lke(yt);return lr(tt,Y6)?!1:(de||!!kE(yt))&&lr(tt,mn=>$p(mn)||Rh(mn)||Ae&&g_e(mn))}return!1}function Qt(yt,tt){if(kv(yt)){let gr=nt;nt=void 0,yt=c.updateBinaryExpression(yt,xr(yt.left,Dr,tn),yt.operatorToken,xr(yt.right,Tt,tn));let mn=lr(nt)?c.inlineExpressions(Vn([...nt,yt])):yt;return nt=gr,mn}if(fm(yt)){tb(yt,br)&&(yt=PE(n,yt),w.assertNode(yt,fm));let gr=ZC(yt.left,9);if(Y9(gr)){let mn=Zc(gr.name);if(mn)return un(Ho(ti(mn,gr.expression,yt.right,yt.operatorToken.kind),yt),yt)}else if(Ne&&vt&&M0(yt.left)&&iue(vt)&&it?.data){let{classConstructor:mn,superClassReference:Ri,facts:Xo}=it.data;if(Xo&1)return c.updateBinaryExpression(yt,ko(yt.left),yt.operatorToken,xr(yt.right,Tt,tn));if(mn&&Ri){let fi=hA(yt.left)?xr(yt.left.argumentExpression,Tt,tn):sr(yt.left.name)?c.createStringLiteralFromNode(yt.left.name):void 0;if(fi){let Jo=xr(yt.right,Tt,tn);if($le(yt.operatorToken.kind)){let ic=fi;DN(fi)||(ic=c.createTempVariable(d),fi=c.createAssignment(ic,fi));let Wg=c.createReflectGetCall(Ri,ic,mn);Ho(Wg,yt.left),un(Wg,yt.left),Jo=c.createBinaryExpression(Wg,eue(yt.operatorToken.kind),Jo),un(Jo,yt)}let hc=tt?void 0:c.createTempVariable(d);return hc&&(Jo=c.createAssignment(hc,Jo),un(hc,yt)),Jo=c.createReflectSetCall(Ri,fi,Jo,mn),Ho(Jo,yt),un(Jo,yt),hc&&(Jo=c.createComma(Jo,hc),un(Jo,yt)),Jo}}}}return u7i(yt)?Yr(yt):ns(yt,Tt,n)}function _r(yt,tt){let gr=tt?u_e(yt.elements,kt):u_e(yt.elements,Tt,kt);return c.updateCommaListExpression(yt,gr)}function Pr(yt,tt){let gr=tt?kt:Tt,mn=xr(yt.expression,gr,tn);return c.updateParenthesizedExpression(yt,mn)}function ti(yt,tt,gr,mn){if(tt=xr(tt,Tt,tn),gr=xr(gr,Tt,tn),qa(tt),$le(mn)){let{readExpression:Ri,initializeExpression:Xo}=en(tt);tt=Xo||Ri,gr=c.createBinaryExpression(Nc(yt,Ri),eue(mn),gr)}switch(mA(tt,TZ(tt,-1)),yt.kind){case"a":return u().createClassPrivateFieldSetHelper(tt,yt.brandCheckIdentifier,gr,yt.kind,yt.setterName);case"m":return u().createClassPrivateFieldSetHelper(tt,yt.brandCheckIdentifier,gr,yt.kind,void 0);case"f":return u().createClassPrivateFieldSetHelper(tt,yt.brandCheckIdentifier,gr,yt.kind,yt.isStatic?yt.variableName:void 0);case"untransformed":return w.fail("Access helpers should not be created for untransformed private elements");default:w.assertNever(yt,"Unknown private element type")}}function cr(yt){return Gt(yt.members,JDt)}function kn(yt){var tt;let gr=0,mn=Tp(yt);Sa(mn)&&Tx(te,mn)&&(gr|=1),de&&(o6e(yt)||Wke(yt))&&(gr|=2);let Ri=!1,Xo=!1,fi=!1,Jo=!1;for(let ic of yt.members)$u(ic)?((ic.name&&(kc(ic.name)||t_(ic))&&de||t_(ic)&&Be===-1&&!yt.name&&!((tt=yt.emitNode)!=null&&tt.classThis))&&(gr|=2),(Ql(ic)||$p(ic))&&(Fe&&ic.transformFlags&16384&&(gr|=8,gr&1||(gr|=2)),Ne&&ic.transformFlags&134217728&&(gr&1||(gr|=6)))):aV(Tp(ic))||(t_(ic)?(Jo=!0,fi||(fi=Rh(ic))):Rh(ic)?(fi=!0,N.hasNodeCheckFlag(ic,262144)&&(gr|=2)):Ql(ic)&&(Ri=!0,Xo||(Xo=!!ic.initializer)));return(ue&&Ri||re&&Xo||de&&fi||de&&Jo&&Be===-1)&&(gr|=16),gr}function Pn(yt){var tt;if((((tt=it?.data)==null?void 0:tt.facts)||0)&4){let mn=c.createTempVariable(d,!0);return Da().superClassReference=mn,c.updateExpressionWithTypeArguments(yt,c.createAssignment(mn,xr(yt.expression,Tt,tn)),void 0)}return ns(yt,Tt,n)}function an(yt,tt){var gr;let mn=wt,Ri=nt,Xo=it;wt=yt,nt=void 0,fl();let fi=kE(yt)&32;if(de||fi){let ic=vl(yt);if(ic&&sr(ic))ki().data.className=ic;else if((gr=yt.emitNode)!=null&&gr.assignedName&&bu(yt.emitNode.assignedName)){if(yt.emitNode.assignedName.textSourceNode&&sr(yt.emitNode.assignedName.textSourceNode))ki().data.className=yt.emitNode.assignedName.textSourceNode;else if(Ke(yt.emitNode.assignedName.text,P)){let Wg=c.createIdentifier(yt.emitNode.assignedName.text);ki().data.className=Wg}}}if(de){let ic=cr(yt);lr(ic)&&(ki().data.weakSetName=mf("instances",ic[0].name))}let Jo=kn(yt);Jo&&(Da().facts=Jo),Jo&8&&oo();let hc=tt(yt,Jo);return oa(),w.assert(it===Xo),wt=mn,nt=Ri,hc}function Kr(yt){return an(yt,wn)}function wn(yt,tt){var gr,mn;let Ri;if(tt&2)if(de&&((gr=yt.emitNode)!=null&&gr.classThis))Da().classConstructor=yt.emitNode.classThis,Ri=c.createAssignment(yt.emitNode.classThis,c.getInternalName(yt));else{let sf=c.createTempVariable(d,!0);Da().classConstructor=c.cloneNode(sf),Ri=c.createAssignment(sf,c.getInternalName(yt))}(mn=yt.emitNode)!=null&&mn.classThis&&(Da().classThis=yt.emitNode.classThis);let Xo=N.hasNodeCheckFlag(yt,262144),fi=ba(yt,32),Jo=ba(yt,2048),hc=ws(yt.modifiers,Kt,gg),ic=ws(yt.heritageClauses,Zt,WE),{members:Wg,prologue:nf}=ur(yt),zC=[];if(Ri&&Gs().unshift(Ri),lr(nt)&&zC.push(c.createExpressionStatement(c.inlineExpressions(nt))),re||de||kE(yt)&32){let sf=Lke(yt);lr(sf)&&dn(zC,sf,c.getInternalName(yt))}zC.length>0&&fi&&Jo&&(hc=ws(hc,sf=>Hhe(sf)?void 0:sf,gg),zC.push(c.createExportAssignment(void 0,!1,c.getLocalName(yt,!1,!0))));let Xf=Da().classConstructor;Xo&&Xf&&(Es(),st[by(yt)]=Xf);let Gm=c.updateClassDeclaration(yt,hc,yt.name,void 0,ic,Wg);return zC.unshift(Gm),nf&&zC.unshift(c.createExpressionStatement(nf)),zC}function Pe(yt){return an(yt,ar)}function ar(yt,tt){var gr,mn,Ri;let Xo=!!(tt&1),fi=Lke(yt),Jo=N.hasNodeCheckFlag(yt,262144),hc=N.hasNodeCheckFlag(yt,32768),ic;function Wg(){var GI;if(de&&((GI=yt.emitNode)!=null&&GI.classThis))return Da().classConstructor=yt.emitNode.classThis;let qC=c.createTempVariable(hc?R:d,!0);return Da().classConstructor=c.cloneNode(qC),qC}(gr=yt.emitNode)!=null&&gr.classThis&&(Da().classThis=yt.emitNode.classThis),tt&2&&(ic??(ic=Wg()));let nf=ws(yt.modifiers,Kt,gg),zC=ws(yt.heritageClauses,Zt,WE),{members:Xf,prologue:Gm}=ur(yt),sf=c.updateClassExpression(yt,nf,yt.name,void 0,zC,Xf),Fm=[];if(Gm&&Fm.push(Gm),(de||kE(yt)&32)&&lr(fi,GI=>$p(GI)||Rh(GI)||Ae&&g_e(GI))||lr(nt))if(Xo)w.assertIsDefined(qe,"Decorated classes transformed by TypeScript are expected to be within a variable declaration."),lr(nt)&&ai(qe,Ot(nt,c.createExpressionStatement)),lr(fi)&&dn(qe,fi,((mn=yt.emitNode)==null?void 0:mn.classThis)??c.getInternalName(yt)),ic?Fm.push(c.createAssignment(ic,sf)):de&&((Ri=yt.emitNode)!=null&&Ri.classThis)?Fm.push(c.createAssignment(yt.emitNode.classThis,sf)):Fm.push(sf);else{if(ic??(ic=Wg()),Jo){Es();let GI=c.cloneNode(ic);GI.emitNode.autoGenerate.flags&=-9,st[by(yt)]=GI}Fm.push(c.createAssignment(ic,sf)),ai(Fm,nt),ai(Fm,Mn(fi,ic)),Fm.push(c.cloneNode(ic))}else Fm.push(sf);return Fm.length>1&&(XS(sf,131072),Fm.forEach(l0)),c.inlineExpressions(Fm)}function sn(yt){if(!de)return ns(yt,Tt,n)}function Me(yt){if(Fe&&vt&&$p(vt)&&it?.data){let{classThis:tt,classConstructor:gr}=it.data;return tt??gr??yt}return yt}function ur(yt){let tt=!!(kE(yt)&32);if(de||Le){for(let fi of yt.members)if(Rh(fi))if(Ec(fi))lg(fi,fi.name,ri);else{let Jo=ki();C4(Jo,fi.name,{kind:"untransformed"})}if(de&&lr(cr(yt))&&Re(),ni()){for(let fi of yt.members)if(t_(fi)){let Jo=c.getGeneratedPrivateNameForNode(fi.name,void 0,"_accessor_storage");if(de||tt&&IC(fi))lg(fi,Jo,hu);else{let hc=ki();C4(hc,Jo,{kind:"untransformed"})}}}}let gr=ws(yt.members,jt,rC),mn;lr(gr,Rf)||(mn=Jt(void 0,yt));let Ri,Xo;if(!de&&lr(nt)){let fi=c.createExpressionStatement(c.inlineExpressions(nt));if(fi.transformFlags&134234112){let hc=c.createTempVariable(d),ic=c.createArrowFunction(void 0,void 0,[],void 0,void 0,c.createBlock([fi]));Ri=c.createAssignment(hc,ic),fi=c.createExpressionStatement(c.createCallExpression(hc,void 0,[]))}let Jo=c.createBlock([fi]);Xo=c.createClassStaticBlockDeclaration(Jo),nt=void 0}if(mn||Xo){let fi,Jo=be(gr,rue),hc=be(gr,Y6);fi=Hr(fi,Jo),fi=Hr(fi,hc),fi=Hr(fi,mn),fi=Hr(fi,Xo);let ic=Jo||hc?Gt(gr,Wg=>Wg!==Jo&&Wg!==hc):gr;fi=ai(fi,ic),gr=un(c.createNodeArray(fi),yt.members)}return{members:gr,prologue:Ri}}function Re(){let{weakSetName:yt}=ki().data;w.assert(yt,"weakSetName should be set in private identifier environment"),Gs().push(c.createAssignment(yt,c.createNewExpression(c.createIdentifier("WeakSet"),void 0,[])))}function Jt(yt,tt){if(yt=xr(yt,Tt,Rf),!it?.data||!(it.data.facts&16))return yt;let gr=Dv(tt),mn=!!(gr&&ZC(gr.expression).kind!==106),Ri=hI(yt?yt.parameters:void 0,Tt,n),Xo=Vt(tt,yt,mn);return Xo?yt?(w.assert(Ri),c.updateConstructorDeclaration(yt,void 0,Ri,Xo)):l0(Ho(un(c.createConstructorDeclaration(void 0,Ri??[],Xo),yt||tt),yt)):yt}function bt(yt,tt,gr,mn,Ri,Xo,fi){let Jo=mn[Ri],hc=tt[Jo];if(ai(yt,ws(tt,Tt,Ic,gr,Jo-gr)),gr=Jo+1,ob(hc)){let ic=[];bt(ic,hc.tryBlock.statements,0,mn,Ri+1,Xo,fi);let Wg=c.createNodeArray(ic);un(Wg,hc.tryBlock.statements),yt.push(c.updateTryStatement(hc,c.updateBlock(hc.tryBlock,ic),xr(hc.catchClause,Tt,dY),xr(hc.finallyBlock,Tt,mc)))}else{for(ai(yt,ws(tt,Tt,Ic,Jo,1));gr!!Xf.initializer||kc(Xf.name)||PS(Xf)));let Xo=cr(yt),fi=lr(Ri)||lr(Xo);if(!tt&&!fi)return L2(void 0,Tt,n);b();let Jo=!tt&&gr,hc=0,ic=[],Wg=[],nf=c.createThis();if(Vi(Wg,Xo,nf),tt){let Xf=Gt(mn,sf=>Zn(Tp(sf),tt)),Gm=Gt(Ri,sf=>!Zn(Tp(sf),tt));dn(Wg,Xf,nf),dn(Wg,Gm,nf)}else dn(Wg,Ri,nf);if(tt?.body){hc=c.copyPrologue(tt.body.statements,ic,!1,Tt);let Xf=Zke(tt.body.statements,hc);if(Xf.length)bt(ic,tt.body.statements,hc,Xf,0,Wg,tt);else{for(;hc=ic.length?tt.body.multiLine??ic.length>0:ic.length>0;return un(c.createBlock(un(c.createNodeArray(ic),tt?tt.body.statements:yt.members),zC),tt?tt.body:void 0)}function dn(yt,tt,gr){for(let mn of tt){if($u(mn)&&!de)continue;let Ri=On(mn,gr);Ri&&yt.push(Ri)}}function On(yt,tt){let gr=$p(yt)?rc(yt,St,yt):Ii(yt,tt);if(!gr)return;let mn=c.createExpressionStatement(gr);Ho(mn,yt),XS(mn,Sg(yt)&3072),mA(mn,yt);let Ri=Tp(yt);return Jc(Ri)?(Qg(mn,Ri),tte(mn)):Qg(mn,OS(yt)),US(gr,void 0),rY(gr,void 0),PS(Ri)&&XS(mn,3072),mn}function Mn(yt,tt){let gr=[];for(let mn of yt){let Ri=$p(mn)?rc(mn,St,mn):rc(mn,()=>Ii(mn,tt),void 0);Ri&&(l0(Ri),Ho(Ri,mn),XS(Ri,Sg(mn)&3072),Qg(Ri,OS(mn)),mA(Ri,mn),gr.push(Ri))}return gr}function Ii(yt,tt){var gr;let mn=vt,Ri=ds(yt,tt);return Ri&&IC(yt)&&((gr=it?.data)!=null&&gr.facts)&&(Ho(Ri,yt),XS(Ri,4),Qg(Ri,Gx(yt.name)),It.set(Tp(yt),it)),vt=mn,Ri}function ds(yt,tt){let gr=!M;tb(yt,br)&&(yt=PE(n,yt));let mn=PS(yt)?c.getGeneratedPrivateNameForNode(yt.name):xg(yt.name)&&!DN(yt.name.expression)?c.updateComputedPropertyName(yt.name,c.getGeneratedNameForNode(yt.name)):yt.name;if(IC(yt)&&(vt=yt),kc(mn)&&Ec(yt)){let fi=Zc(mn);if(fi)return fi.kind==="f"?fi.isStatic?o7i(c,fi.variableName,xr(yt.initializer,Tt,tn)):a7i(c,tt,xr(yt.initializer,Tt,tn),fi.brandCheckIdentifier):void 0;w.fail("Undeclared private name for property declaration.")}if((kc(mn)||IC(yt))&&!yt.initializer)return;let Ri=Tp(yt);if(ba(Ri,64))return;let Xo=xr(yt.initializer,Tt,tn);if(Zn(Ri,Ri.parent)&&sr(mn)){let fi=c.cloneNode(mn);Xo?(FC(Xo)&&Mhe(Xo.expression)&&R6(Xo.expression.left,"___runInitializers")&&Cf(Xo.expression.right)&&du(Xo.expression.right.expression)&&(Xo=Xo.expression.left),Xo=c.inlineExpressions([Xo,fi])):Xo=fi,co(mn,3168),Qg(fi,Ri.name),co(fi,3072)}else Xo??(Xo=c.createVoidZero());if(gr||kc(mn)){let fi=p4(c,tt,mn,mn);return XS(fi,1024),c.createAssignment(fi,Xo)}else{let fi=xg(mn)?mn.expression:sr(mn)?c.createStringLiteral(Sc(mn.escapedText)):mn,Jo=c.createPropertyDescriptor({value:Xo,configurable:!0,writable:!0,enumerable:!0});return c.createObjectDefinePropertyCall(tt,fi,Jo)}}function Es(){je&1||(je|=1,n.enableSubstitution(80),st=[])}function oo(){je&2||(je|=2,n.enableSubstitution(110),n.enableEmitNotification(262),n.enableEmitNotification(218),n.enableEmitNotification(176),n.enableEmitNotification(177),n.enableEmitNotification(178),n.enableEmitNotification(174),n.enableEmitNotification(172),n.enableEmitNotification(167))}function Vi(yt,tt,gr){if(!de||!lr(tt))return;let{weakSetName:mn}=ki().data;w.assert(mn,"weakSetName should be set in private identifier environment"),yt.push(c.createExpressionStatement(c7i(c,gr,mn)))}function ko(yt){return Io(yt)?c.updatePropertyAccessExpression(yt,c.createVoidZero(),yt.name):c.updateElementAccessExpression(yt,c.createVoidZero(),xr(yt.argumentExpression,Tt,tn))}function Yc(yt,tt){if(xg(yt)){let gr=ike(yt),mn=xr(yt.expression,Tt,tn),Ri=D1(mn),Xo=DN(Ri);if(!(!!gr||fm(Ri)&&Ip(Ri.left))&&!Xo&&tt){let Jo=c.getGeneratedNameForNode(yt);return N.hasNodeCheckFlag(yt,32768)?R(Jo):d(Jo),c.createAssignment(Jo,mn)}return Xo||sr(Ri)?void 0:mn}}function fl(){it={previous:it,data:void 0}}function oa(){it=it?.previous}function Da(){return w.assert(it),it.data??(it.data={facts:0,classConstructor:void 0,classThis:void 0,superClassReference:void 0})}function ki(){return w.assert(it),it.privateEnv??(it.privateEnv=jDt({className:void 0,weakSetName:void 0}))}function Gs(){return nt??(nt=[])}function ri(yt,tt,gr,mn,Ri,Xo,fi){t_(yt)?Tl(yt,tt,gr,mn,Ri,Xo,fi):Ql(yt)?hu(yt,tt,gr,mn,Ri,Xo,fi):cI(yt)?JA(yt,tt,gr,mn,Ri,Xo,fi):Pb(yt)?Qd(yt,tt,gr,mn,Ri,Xo,fi):sb(yt)&&kd(yt,tt,gr,mn,Ri,Xo,fi)}function hu(yt,tt,gr,mn,Ri,Xo,fi){if(Ri){let Jo=w.checkDefined(gr.classThis??gr.classConstructor,"classConstructor should be set in private identifier environment"),hc=zc(tt);C4(mn,tt,{kind:"f",isStatic:!0,brandCheckIdentifier:Jo,variableName:hc,isValid:Xo})}else{let Jo=zc(tt);C4(mn,tt,{kind:"f",isStatic:!1,brandCheckIdentifier:Jo,isValid:Xo}),Gs().push(c.createAssignment(Jo,c.createNewExpression(c.createIdentifier("WeakMap"),void 0,[])))}}function JA(yt,tt,gr,mn,Ri,Xo,fi){let Jo=zc(tt),hc=Ri?w.checkDefined(gr.classThis??gr.classConstructor,"classConstructor should be set in private identifier environment"):w.checkDefined(mn.data.weakSetName,"weakSetName should be set in private identifier environment");C4(mn,tt,{kind:"m",methodName:Jo,brandCheckIdentifier:hc,isStatic:Ri,isValid:Xo})}function Qd(yt,tt,gr,mn,Ri,Xo,fi){let Jo=zc(tt,"_get"),hc=Ri?w.checkDefined(gr.classThis??gr.classConstructor,"classConstructor should be set in private identifier environment"):w.checkDefined(mn.data.weakSetName,"weakSetName should be set in private identifier environment");fi?.kind==="a"&&fi.isStatic===Ri&&!fi.getterName?fi.getterName=Jo:C4(mn,tt,{kind:"a",getterName:Jo,setterName:void 0,brandCheckIdentifier:hc,isStatic:Ri,isValid:Xo})}function kd(yt,tt,gr,mn,Ri,Xo,fi){let Jo=zc(tt,"_set"),hc=Ri?w.checkDefined(gr.classThis??gr.classConstructor,"classConstructor should be set in private identifier environment"):w.checkDefined(mn.data.weakSetName,"weakSetName should be set in private identifier environment");fi?.kind==="a"&&fi.isStatic===Ri&&!fi.setterName?fi.setterName=Jo:C4(mn,tt,{kind:"a",getterName:void 0,setterName:Jo,brandCheckIdentifier:hc,isStatic:Ri,isValid:Xo})}function Tl(yt,tt,gr,mn,Ri,Xo,fi){let Jo=zc(tt,"_get"),hc=zc(tt,"_set"),ic=Ri?w.checkDefined(gr.classThis??gr.classConstructor,"classConstructor should be set in private identifier environment"):w.checkDefined(mn.data.weakSetName,"weakSetName should be set in private identifier environment");C4(mn,tt,{kind:"a",getterName:Jo,setterName:hc,brandCheckIdentifier:ic,isStatic:Ri,isValid:Xo})}function lg(yt,tt,gr){let mn=Da(),Ri=ki(),Xo=s6e(Ri,tt),fi=IC(yt),Jo=!l7i(tt)&&Xo===void 0;gr(yt,tt,mn,Ri,fi,Jo,Xo)}function mf(yt,tt,gr){let{className:mn}=ki().data,Ri=mn?{prefix:"_",node:mn,suffix:"_"}:"_",Xo=typeof yt=="object"?c.getGeneratedNameForNode(yt,24,Ri,gr):typeof yt=="string"?c.createUniqueName(yt,16,Ri,gr):c.createTempVariable(void 0,!0,Ri,gr);return N.hasNodeCheckFlag(tt,32768)?R(Xo):d(Xo),Xo}function zc(yt,tt){let gr=wQ(yt);return mf(gr?.substring(1)??yt,yt,tt)}function Zc(yt){let tt=zDt(it,yt);return tt?.kind==="untransformed"?void 0:tt}function Km(yt){let tt=c.getGeneratedNameForNode(yt),gr=Zc(yt.name);if(!gr)return ns(yt,Tt,n);let mn=yt.expression;return(j$(yt)||M0(yt)||!IY(yt.expression))&&(mn=c.createTempVariable(d,!0),Gs().push(c.createBinaryExpression(mn,64,xr(yt.expression,Tt,tn)))),c.createAssignmentTargetWrapper(tt,ti(gr,mn,tt,64))}function Df(yt){if(tu(yt)||If(yt))return di(yt);if(Y9(yt))return Km(yt);if(Ne&&vt&&M0(yt)&&iue(vt)&&it?.data){let{classConstructor:tt,superClassReference:gr,facts:mn}=it.data;if(mn&1)return ko(yt);if(tt&&gr){let Ri=hA(yt)?xr(yt.argumentExpression,Tt,tn):sr(yt.name)?c.createStringLiteralFromNode(yt.name):void 0;if(Ri){let Xo=c.createTempVariable(void 0);return c.createAssignmentTargetWrapper(Xo,c.createReflectSetCall(gr,Ri,Xo,tt))}}}return ns(yt,Tt,n)}function f0(yt){if(tb(yt,br)&&(yt=PE(n,yt)),fm(yt,!0)){let tt=Df(yt.left),gr=xr(yt.right,Tt,tn);return c.updateBinaryExpression(yt,tt,yt.operatorToken,gr)}return Df(yt)}function xI(yt){if(T_(yt.expression)){let tt=Df(yt.expression);return c.updateSpreadElement(yt,tt)}return ns(yt,Tt,n)}function s_(yt){if(hX(yt)){if(ph(yt))return xI(yt);if(!ef(yt))return f0(yt)}return ns(yt,Tt,n)}function Jg(yt){let tt=xr(yt.name,Tt,NI);if(fm(yt.initializer,!0)){let gr=f0(yt.initializer);return c.updatePropertyAssignment(yt,tt,gr)}if(T_(yt.initializer)){let gr=Df(yt.initializer);return c.updatePropertyAssignment(yt,tt,gr)}return ns(yt,Tt,n)}function hf(yt){return tb(yt,br)&&(yt=PE(n,yt)),ns(yt,Tt,n)}function Yd(yt){if(T_(yt.expression)){let tt=Df(yt.expression);return c.updateSpreadAssignment(yt,tt)}return ns(yt,Tt,n)}function zA(yt){return w.assertNode(yt,mX),Mx(yt)?Yd(yt):G_(yt)?hf(yt):KC(yt)?Jg(yt):ns(yt,Tt,n)}function di(yt){return If(yt)?c.updateArrayLiteralExpression(yt,ws(yt.elements,s_,tn)):c.updateObjectLiteralExpression(yt,ws(yt.properties,zA,EB))}function lI(yt,tt,gr){let mn=Tp(tt),Ri=It.get(mn);if(Ri){let Xo=it,fi=ht;it=Ri,ht=Ye,Ye=!$p(mn)||!(kE(mn)&32),lt(yt,tt,gr),Ye=ht,ht=fi,it=Xo;return}switch(tt.kind){case 218:if(fd(mn)||Sg(tt)&524288)break;case 262:case 176:case 177:case 178:case 174:case 172:{let Xo=it,fi=ht;it=void 0,ht=Ye,Ye=!1,lt(yt,tt,gr),Ye=ht,ht=fi,it=Xo;return}case 167:{let Xo=it,fi=Ye;it=it?.previous,Ye=ht,lt(yt,tt,gr),Ye=fi,it=Xo;return}}lt(yt,tt,gr)}function J0(yt,tt){return tt=De(yt,tt),yt===1?U0(tt):tt}function U0(yt){switch(yt.kind){case 80:return rf(yt);case 110:return Yb(yt)}return yt}function Yb(yt){if(je&2&&it?.data&&!dt.has(yt)){let{facts:tt,classConstructor:gr,classThis:mn}=it.data,Ri=Ye?mn??gr:gr;if(Ri)return un(Ho(c.cloneNode(Ri),yt),yt);if(tt&1&&te)return c.createParenthesizedExpression(c.createVoidZero())}return yt}function rf(yt){return kI(yt)||yt}function kI(yt){if(je&1&&N.hasNodeCheckFlag(yt,536870912)){let tt=N.getReferencedValueDeclaration(yt);if(tt){let gr=st[tt.id];if(gr){let mn=c.cloneNode(gr);return Qg(mn,yt),mA(mn,yt),mn}}}}}function o7i(n,c,u){return n.createAssignment(c,n.createObjectLiteralExpression([n.createPropertyAssignment("value",u||n.createVoidZero())]))}function a7i(n,c,u,d){return n.createCallExpression(n.createPropertyAccessExpression(d,"set"),void 0,[c,u||n.createVoidZero()])}function c7i(n,c,u){return n.createCallExpression(n.createPropertyAccessExpression(u,"add"),void 0,[c])}function l7i(n){return!CZ(n)&&n.escapedText==="#constructor"}function u7i(n){return kc(n.left)&&n.operatorToken.kind===103}function g7i(n){return Ql(n)&&IC(n)}function iue(n){return $p(n)||g7i(n)}function uxt(n){let{factory:c,hoistVariableDeclaration:u}=n,d=n.getEmitResolver(),I=n.getCompilerOptions(),h=iA(I),b=D_(I,"strictNullChecks"),R,N;return{serializeTypeNode:(nt,qe)=>V(nt,Ae,qe),serializeTypeOfNode:(nt,qe,it)=>V(nt,M,qe,it),serializeParameterTypesOfNode:(nt,qe,it)=>V(nt,te,qe,it),serializeReturnTypeOfNode:(nt,qe)=>V(nt,ue,qe)};function V(nt,qe,it,It){let dt=R,wt=N;R=nt.currentLexicalScope,N=nt.currentNameScope;let vt=It===void 0?qe(it):qe(it,It);return R=dt,N=wt,vt}function P(nt,qe){let it=xx(qe.members,nt);return it.setAccessor&&xme(it.setAccessor)||it.getAccessor&&rb(it.getAccessor)}function M(nt,qe){switch(nt.kind){case 172:case 169:return Ae(nt.type);case 178:case 177:return Ae(P(nt,qe));case 263:case 231:case 174:return c.createIdentifier("Function");default:return c.createVoidZero()}}function te(nt,qe){let it=Sa(nt)?dN(nt):$l(nt)&&xE(nt.body)?nt:void 0,It=[];if(it){let dt=re(it,qe),wt=dt.length;for(let vt=0;vtdt.parent&&Ei(dt.parent)&&(dt.parent.trueType===dt||dt.parent.falseType===dt)))return c.createIdentifier("Object");let it=De(nt.typeName),It=c.createTempVariable(u);return c.createConditionalExpression(c.createTypeCheck(c.createAssignment(It,it),"function"),void 0,It,void 0,c.createIdentifier("Object"));case 1:return lt(nt.typeName);case 2:return c.createVoidZero();case 4:return st("BigInt",7);case 6:return c.createIdentifier("Boolean");case 3:return c.createIdentifier("Number");case 5:return c.createIdentifier("String");case 7:return c.createIdentifier("Array");case 8:return st("Symbol",2);case 10:return c.createIdentifier("Function");case 9:return c.createIdentifier("Promise");case 11:return c.createIdentifier("Object");default:return w.assertNever(qe)}}function Qe(nt,qe){return c.createLogicalAnd(c.createStrictInequality(c.createTypeOfExpression(nt),c.createStringLiteral("undefined")),qe)}function De(nt){if(nt.kind===80){let It=lt(nt);return Qe(It,It)}if(nt.left.kind===80)return Qe(lt(nt.left),lt(nt));let qe=De(nt.left),it=c.createTempVariable(u);return c.createLogicalAnd(c.createLogicalAnd(qe.left,c.createStrictInequality(c.createAssignment(it,qe.right),c.createVoidZero())),c.createPropertyAccessExpression(it,nt.right))}function lt(nt){switch(nt.kind){case 80:let qe=kA(un(sP.cloneNode(nt),nt),nt.parent);return qe.original=void 0,kA(qe,jc(R)),qe;case 166:return Le(nt)}}function Le(nt){return c.createPropertyAccessExpression(lt(nt.left),nt.right)}function je(nt){return c.createConditionalExpression(c.createTypeCheck(c.createIdentifier(nt),"function"),void 0,c.createIdentifier(nt),void 0,c.createIdentifier("Object"))}function st(nt,qe){return hHhe(ni)||GC(ni)?void 0:ni,Np),Ns=OS(pr),gi=Zt(pr),jn=b<2?c.getInternalName(pr,!1,!0):c.getLocalName(pr,!1,!0),xs=ws(pr.heritageClauses,M,WE),Ec=ws(pr.members,M,rC),xi=[];({members:Ec,decorationStatements:xi}=de(pr,Ec));let rc=b>=9&&!!gi&&lr(Ec,ni=>Ql(ni)&&ba(ni,256)||$p(ni));rc&&(Ec=un(c.createNodeArray([c.createClassStaticBlockDeclaration(c.createBlock([c.createExpressionStatement(c.createAssignment(gi,c.createThis()))])),...Ec]),Ec));let Vl=c.createClassExpression(Pi,zr&&Ip(zr)?void 0:zr,void 0,xs,Ec);Ho(Vl,pr),un(Vl,Ns);let ul=gi&&!rc?c.createAssignment(gi,Vl):Vl,Cc=c.createVariableDeclaration(jn,void 0,void 0,ul);Ho(Cc,pr);let _s=c.createVariableDeclarationList([Cc],1),Wu=c.createVariableStatement(void 0,_s);Ho(Wu,pr),un(Wu,Ns),mA(Wu,pr);let ir=[Wu];if(ai(ir,xi),ht(ir,pr),$n)if(bi){let ni=c.createExportDefault(jn);ir.push(ni)}else{let ni=c.createExternalModuleExport(c.getDeclarationName(pr));ir.push(ni)}return ir}function Ne(pr){return c.updateClassExpression(pr,ws(pr.modifiers,P,gg),pr.name,void 0,ws(pr.heritageClauses,M,WE),ws(pr.members,M,rC))}function Qe(pr){return c.updateConstructorDeclaration(pr,ws(pr.modifiers,P,gg),ws(pr.parameters,M,Jc),xr(pr.body,M,mc))}function De(pr,zr){return pr!==zr&&(mA(pr,zr),Qg(pr,OS(zr))),pr}function lt(pr){return De(c.updateMethodDeclaration(pr,ws(pr.modifiers,P,gg),pr.asteriskToken,w.checkDefined(xr(pr.name,M,NI)),void 0,void 0,ws(pr.parameters,M,Jc),void 0,xr(pr.body,M,mc)),pr)}function Le(pr){return De(c.updateGetAccessorDeclaration(pr,ws(pr.modifiers,P,gg),w.checkDefined(xr(pr.name,M,NI)),ws(pr.parameters,M,Jc),void 0,xr(pr.body,M,mc)),pr)}function je(pr){return De(c.updateSetAccessorDeclaration(pr,ws(pr.modifiers,P,gg),w.checkDefined(xr(pr.name,M,NI)),ws(pr.parameters,M,Jc),xr(pr.body,M,mc)),pr)}function st(pr){if(!(pr.flags&33554432||ba(pr,128)))return De(c.updatePropertyDeclaration(pr,ws(pr.modifiers,P,gg),w.checkDefined(xr(pr.name,M,NI)),void 0,void 0,xr(pr.initializer,M,tn)),pr)}function nt(pr){let zr=c.updateParameterDeclaration(pr,_Rt(c,pr.modifiers),pr.dotDotDotToken,w.checkDefined(xr(pr.name,M,mZ)),void 0,void 0,xr(pr.initializer,M,tn));return zr!==pr&&(mA(zr,pr),un(zr,OS(pr)),Qg(zr,OS(pr)),co(zr.name,64)),zr}function qe(pr){return R6(pr.expression,"___metadata")}function it(pr){if(!pr)return;let{false:zr,true:$n}=Ff(pr.decorators,qe),bi=[];return ai(bi,Ot(zr,Kt)),ai(bi,Fr(pr.parameters,Tt)),ai(bi,Ot($n,Kt)),bi}function It(pr,zr,$n){ai(pr,Ot(vt(zr,$n),bi=>c.createExpressionStatement(bi)))}function dt(pr,zr,$n){return F8(!0,pr,$n)&&zr===$u(pr)}function wt(pr,zr){return Gt(pr.members,$n=>dt($n,zr,pr))}function vt(pr,zr){let $n=wt(pr,zr),bi;for(let Pi of $n)bi=Hr(bi,Ye(pr,Pi));return bi}function Ye(pr,zr){let $n=Vke(zr,pr,!0),bi=it($n);if(!bi)return;let Pi=jt(pr,zr),Ns=Lt(zr,!ba(zr,128)),gi=Ql(zr)&&!PS(zr)?c.createVoidZero():c.createNull(),jn=u().createDecorateHelper(bi,Pi,Ns,gi);return co(jn,3072),Qg(jn,OS(zr)),jn}function ht(pr,zr){let $n=Et(zr);$n&&pr.push(Ho(c.createExpressionStatement($n),zr))}function Et(pr){let zr=i6e(pr),$n=it(zr);if(!$n)return;let bi=N&&N[by(pr)],Pi=b<2?c.getInternalName(pr,!1,!0):c.getDeclarationName(pr,!1,!0),Ns=u().createDecorateHelper($n,Pi),gi=c.createAssignment(Pi,bi?c.createAssignment(bi,Ns):Ns);return co(gi,3072),Qg(gi,OS(pr)),gi}function Kt(pr){return w.checkDefined(xr(pr.expression,M,tn))}function Tt(pr,zr){let $n;if(pr){$n=[];for(let bi of pr){let Pi=u().createParamHelper(Kt(bi),zr);un(Pi,bi.expression),co(Pi,3072),$n.push(Pi)}}return $n}function Lt(pr,zr){let $n=pr.name;return kc($n)?c.createIdentifier(""):xg($n)?zr&&!DN($n.expression)?c.getGeneratedNameForNode($n):$n.expression:sr($n)?c.createStringLiteral(ao($n)):c.cloneNode($n)}function kt(){N||(n.enableSubstitution(80),N=[])}function Zt(pr){if(I.hasNodeCheckFlag(pr,262144)){kt();let zr=c.createUniqueName(pr.name&&!Ip(pr.name)?ao(pr.name):"default");return N[by(pr)]=zr,d(zr),zr}}function Dr(pr){return c.createPropertyAccessExpression(c.getDeclarationName(pr),"prototype")}function jt(pr,zr){return $u(zr)?c.getDeclarationName(pr):Dr(pr)}function mr(pr,zr){return zr=R(pr,zr),pr===1?Pt(zr):zr}function Pt(pr){switch(pr.kind){case 80:return Vr(pr)}return pr}function Vr(pr){return Yr(pr)??pr}function Yr(pr){if(N&&I.hasNodeCheckFlag(pr,536870912)){let zr=I.getReferencedValueDeclaration(pr);if(zr){let $n=N[zr.id];if($n){let bi=c.cloneNode($n);return Qg(bi,pr),mA(bi,pr),bi}}}}}function Axt(n){let{factory:c,getEmitHelperFactory:u,startLexicalEnvironment:d,endLexicalEnvironment:I,hoistVariableDeclaration:h}=n,b=iA(n.getCompilerOptions()),R,N,V,P,M,te;return lT(n,re);function re(Me){R=void 0,te=!1;let ur=ns(Me,je,n);return EN(ur,n.readEmitHelpers()),te&&(eY(ur,32),te=!1),ur}function ue(){switch(N=void 0,V=void 0,P=void 0,R?.kind){case"class":N=R.classInfo;break;case"class-element":N=R.next.classInfo,V=R.classThis,P=R.classSuper;break;case"name":let Me=R.next.next.next;Me?.kind==="class-element"&&(N=Me.next.classInfo,V=Me.classThis,P=Me.classSuper);break}}function Ae(Me){R={kind:"class",next:R,classInfo:Me,savedPendingExpressions:M},M=void 0,ue()}function de(){w.assert(R?.kind==="class","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class' but got '${R?.kind}' instead.`),M=R.savedPendingExpressions,R=R.next,ue()}function Be(Me){var ur,Re;w.assert(R?.kind==="class","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class' but got '${R?.kind}' instead.`),R={kind:"class-element",next:R},($p(Me)||Ql(Me)&&IC(Me))&&(R.classThis=(ur=R.next.classInfo)==null?void 0:ur.classThis,R.classSuper=(Re=R.next.classInfo)==null?void 0:Re.classSuper),ue()}function Fe(){var Me;w.assert(R?.kind==="class-element","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class-element' but got '${R?.kind}' instead.`),w.assert(((Me=R.next)==null?void 0:Me.kind)==="class","Incorrect value for top.next.kind.",()=>{var ur;return`Expected top.next.kind to be 'class' but got '${(ur=R.next)==null?void 0:ur.kind}' instead.`}),R=R.next,ue()}function Ne(){w.assert(R?.kind==="class-element","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class-element' but got '${R?.kind}' instead.`),R={kind:"name",next:R},ue()}function Qe(){w.assert(R?.kind==="name","Incorrect value for top.kind.",()=>`Expected top.kind to be 'name' but got '${R?.kind}' instead.`),R=R.next,ue()}function De(){R?.kind==="other"?(w.assert(!M),R.depth++):(R={kind:"other",next:R,depth:0,savedPendingExpressions:M},M=void 0,ue())}function lt(){w.assert(R?.kind==="other","Incorrect value for top.kind.",()=>`Expected top.kind to be 'other' but got '${R?.kind}' instead.`),R.depth>0?(w.assert(!M),R.depth--):(M=R.savedPendingExpressions,R=R.next,ue())}function Le(Me){return!!(Me.transformFlags&33554432)||!!V&&!!(Me.transformFlags&16384)||!!V&&!!P&&!!(Me.transformFlags&134217728)}function je(Me){if(!Le(Me))return Me;switch(Me.kind){case 170:return w.fail("Use `modifierVisitor` instead.");case 263:return Et(Me);case 231:return Kt(Me);case 176:case 172:case 175:return w.fail("Not supported outside of a class. Use 'classElementVisitor' instead.");case 169:return Ns(Me);case 226:return xi(Me,!1);case 303:return Wu(Me);case 260:return ir(Me);case 208:return ni(Me);case 277:return kr(Me);case 110:return pr(Me);case 248:return xs(Me);case 244:return Ec(Me);case 355:return Vl(Me,!1);case 217:return en(Me,!1);case 354:return ct(Me,!1);case 213:return zr(Me);case 215:return $n(Me);case 224:case 225:return rc(Me,!1);case 211:return bi(Me);case 212:return Pi(Me);case 167:return _s(Me);case 174:case 178:case 177:case 218:case 262:{De();let ur=ns(Me,st,n);return lt(),ur}default:return ns(Me,st,n)}}function st(Me){switch(Me.kind){case 170:return;default:return je(Me)}}function nt(Me){switch(Me.kind){case 170:return;default:return Me}}function qe(Me){switch(Me.kind){case 176:return kt(Me);case 174:return jt(Me);case 177:return mr(Me);case 178:return Pt(Me);case 172:return Yr(Me);case 175:return Vr(Me);default:return je(Me)}}function it(Me){switch(Me.kind){case 224:case 225:return rc(Me,!0);case 226:return xi(Me,!0);case 355:return Vl(Me,!0);case 217:return en(Me,!0);default:return je(Me)}}function It(Me){let ur=Me.name&&sr(Me.name)&&!Ip(Me.name)?ao(Me.name):Me.name&&kc(Me.name)&&!Ip(Me.name)?ao(Me.name).slice(1):Me.name&&bu(Me.name)&&Ke(Me.name.text,99)?Me.name.text:Sa(Me)?"class":"member";return Nv(Me)&&(ur=`get_${ur}`),Dh(Me)&&(ur=`set_${ur}`),Me.name&&kc(Me.name)&&(ur=`private_${ur}`),$u(Me)&&(ur=`static_${ur}`),"_"+ur}function dt(Me,ur){return c.createUniqueName(`${It(Me)}_${ur}`,24)}function wt(Me,ur){return c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(Me,void 0,void 0,ur)],1))}function vt(Me){let ur=c.createUniqueName("_metadata",48),Re,Jt,bt=!1,Vt=!1,dn=!1,On,Mn,Ii;if(FX(!1,Me)){let ds=lr(Me.members,Es=>(Rh(Es)||t_(Es))&&IC(Es));On=c.createUniqueName("_classThis",ds?24:48)}for(let ds of Me.members){if(hZ(ds)&&F8(!1,ds,Me))if(IC(ds)){if(!Jt){Jt=c.createUniqueName("_staticExtraInitializers",48);let Es=u().createRunInitializersHelper(On??c.createThis(),Jt);Qg(Es,Me.name??$R(Me)),Mn??(Mn=[]),Mn.push(Es)}}else{if(!Re){Re=c.createUniqueName("_instanceExtraInitializers",48);let Es=u().createRunInitializersHelper(c.createThis(),Re);Qg(Es,Me.name??$R(Me)),Ii??(Ii=[]),Ii.push(Es)}Re??(Re=c.createUniqueName("_instanceExtraInitializers",48))}if($p(ds)?Y6(ds)||(bt=!0):Ql(ds)&&(IC(ds)?bt||(bt=!!ds.initializer||FE(ds)):Vt||(Vt=!M$(ds))),(Rh(ds)||t_(ds))&&IC(ds)&&(dn=!0),Jt&&Re&&bt&&Vt&&dn)break}return{class:Me,classThis:On,metadataReference:ur,instanceMethodExtraInitializersName:Re,staticMethodExtraInitializersName:Jt,hasStaticInitializers:bt,hasNonAmbientInstanceFields:Vt,hasStaticPrivateClassElements:dn,pendingStaticInitializers:Mn,pendingInstanceInitializers:Ii}}function Ye(Me){d(),!a6e(Me)&&Tx(!1,Me)&&(Me=Pke(n,Me,c.createStringLiteral("")));let ur=c.getLocalName(Me,!1,!1,!0),Re=vt(Me),Jt=[],bt,Vt,dn,On,Mn=!1,Ii=Qt(i6e(Me));Ii&&(Re.classDecoratorsName=c.createUniqueName("_classDecorators",48),Re.classDescriptorName=c.createUniqueName("_classDescriptor",48),Re.classExtraInitializersName=c.createUniqueName("_classExtraInitializers",48),w.assertIsDefined(Re.classThis),Jt.push(wt(Re.classDecoratorsName,c.createArrayLiteralExpression(Ii)),wt(Re.classDescriptorName),wt(Re.classExtraInitializersName,c.createArrayLiteralExpression()),wt(Re.classThis)),Re.hasStaticPrivateClassElements&&(Mn=!0,te=!0));let ds=Cee(Me.heritageClauses,96),Es=ds&&$i(ds.types),oo=Es&&xr(Es.expression,je,tn);if(oo){Re.classSuper=c.createUniqueName("_classSuper",48);let ki=ZC(oo),Gs=tp(ki)&&!ki.name||WA(ki)&&!ki.name||fd(ki)?c.createComma(c.createNumericLiteral(0),oo):oo;Jt.push(wt(Re.classSuper,Gs));let ri=c.updateExpressionWithTypeArguments(Es,Re.classSuper,void 0),hu=c.updateHeritageClause(ds,[ri]);On=c.createNodeArray([hu])}let Vi=Re.classThis??c.createThis();Ae(Re),bt=Hr(bt,Pe(Re.metadataReference,Re.classSuper));let ko=Me.members;if(ko=ws(ko,ki=>Rf(ki)?ki:qe(ki),rC),ko=ws(ko,ki=>Rf(ki)?qe(ki):ki,rC),M){let ki;for(let Gs of M){Gs=xr(Gs,function hu(JA){if(!(JA.transformFlags&16384))return JA;switch(JA.kind){case 110:return ki||(ki=c.createUniqueName("_outerThis",16),Jt.unshift(wt(ki,c.createThis()))),ki;default:return ns(JA,hu,n)}},tn);let ri=c.createExpressionStatement(Gs);bt=Hr(bt,ri)}M=void 0}if(de(),lr(Re.pendingInstanceInitializers)&&!dN(Me)){let ki=Tt(Me,Re);if(ki){let Gs=Dv(Me),ri=!!(Gs&&ZC(Gs.expression).kind!==106),hu=[];if(ri){let Qd=c.createSpreadElement(c.createIdentifier("arguments")),kd=c.createCallExpression(c.createSuper(),void 0,[Qd]);hu.push(c.createExpressionStatement(kd))}ai(hu,ki);let JA=c.createBlock(hu,!0);dn=c.createConstructorDeclaration(void 0,[],JA)}}if(Re.staticMethodExtraInitializersName&&Jt.push(wt(Re.staticMethodExtraInitializersName,c.createArrayLiteralExpression())),Re.instanceMethodExtraInitializersName&&Jt.push(wt(Re.instanceMethodExtraInitializersName,c.createArrayLiteralExpression())),Re.memberInfos&&JC(Re.memberInfos,(ki,Gs)=>{$u(Gs)&&(Jt.push(wt(ki.memberDecoratorsName)),ki.memberInitializersName&&Jt.push(wt(ki.memberInitializersName,c.createArrayLiteralExpression())),ki.memberExtraInitializersName&&Jt.push(wt(ki.memberExtraInitializersName,c.createArrayLiteralExpression())),ki.memberDescriptorName&&Jt.push(wt(ki.memberDescriptorName)))}),Re.memberInfos&&JC(Re.memberInfos,(ki,Gs)=>{$u(Gs)||(Jt.push(wt(ki.memberDecoratorsName)),ki.memberInitializersName&&Jt.push(wt(ki.memberInitializersName,c.createArrayLiteralExpression())),ki.memberExtraInitializersName&&Jt.push(wt(ki.memberExtraInitializersName,c.createArrayLiteralExpression())),ki.memberDescriptorName&&Jt.push(wt(ki.memberDescriptorName)))}),bt=ai(bt,Re.staticNonFieldDecorationStatements),bt=ai(bt,Re.nonStaticNonFieldDecorationStatements),bt=ai(bt,Re.staticFieldDecorationStatements),bt=ai(bt,Re.nonStaticFieldDecorationStatements),Re.classDescriptorName&&Re.classDecoratorsName&&Re.classExtraInitializersName&&Re.classThis){bt??(bt=[]);let ki=c.createPropertyAssignment("value",Vi),Gs=c.createObjectLiteralExpression([ki]),ri=c.createAssignment(Re.classDescriptorName,Gs),hu=c.createPropertyAccessExpression(Vi,"name"),JA=u().createESDecorateHelper(c.createNull(),ri,Re.classDecoratorsName,{kind:"class",name:hu,metadata:Re.metadataReference},c.createNull(),Re.classExtraInitializersName),Qd=c.createExpressionStatement(JA);Qg(Qd,$R(Me)),bt.push(Qd);let kd=c.createPropertyAccessExpression(Re.classDescriptorName,"value"),Tl=c.createAssignment(Re.classThis,kd),lg=c.createAssignment(ur,Tl);bt.push(c.createExpressionStatement(lg))}if(bt.push(ar(Vi,Re.metadataReference)),lr(Re.pendingStaticInitializers)){for(let ki of Re.pendingStaticInitializers){let Gs=c.createExpressionStatement(ki);Qg(Gs,Gx(ki)),Vt=Hr(Vt,Gs)}Re.pendingStaticInitializers=void 0}if(Re.classExtraInitializersName){let ki=u().createRunInitializersHelper(Vi,Re.classExtraInitializersName),Gs=c.createExpressionStatement(ki);Qg(Gs,Me.name??$R(Me)),Vt=Hr(Vt,Gs)}bt&&Vt&&!Re.hasStaticInitializers&&(ai(bt,Vt),Vt=void 0);let Yc=bt&&c.createClassStaticBlockDeclaration(c.createBlock(bt,!0));Yc&&Mn&&rte(Yc,32);let fl=Vt&&c.createClassStaticBlockDeclaration(c.createBlock(Vt,!0));if(Yc||dn||fl){let ki=[],Gs=ko.findIndex(Y6);Yc?(ai(ki,ko,0,Gs+1),ki.push(Yc),ai(ki,ko,Gs+1)):ai(ki,ko),dn&&ki.push(dn),fl&&ki.push(fl),ko=un(c.createNodeArray(ki),ko)}let oa=I(),Da;if(Ii){Da=c.createClassExpression(void 0,void 0,void 0,On,ko),Re.classThis&&(Da=nxt(c,Da,Re.classThis));let ki=c.createVariableDeclaration(ur,void 0,void 0,Da),Gs=c.createVariableDeclarationList([ki]),ri=Re.classThis?c.createAssignment(ur,Re.classThis):ur;Jt.push(c.createVariableStatement(void 0,Gs),c.createReturnStatement(ri))}else Da=c.createClassExpression(void 0,Me.name,void 0,On,ko),Jt.push(c.createReturnStatement(Da));if(Mn){eY(Da,32);for(let ki of Da.members)(Rh(ki)||t_(ki))&&IC(ki)&&eY(ki,32)}return Ho(Da,Me),c.createImmediatelyInvokedArrowFunction(c.mergeLexicalEnvironment(Jt,oa))}function ht(Me){return Tx(!1,Me)||Z8(!1,Me)}function Et(Me){if(ht(Me)){let ur=[],Re=Tp(Me,Sa)??Me,Jt=Re.name?c.createStringLiteralFromNode(Re.name):c.createStringLiteral("default"),bt=ba(Me,32),Vt=ba(Me,2048);if(Me.name||(Me=Pke(n,Me,Jt)),bt&&Vt){let dn=Ye(Me);if(Me.name){let On=c.createVariableDeclaration(c.getLocalName(Me),void 0,void 0,dn);Ho(On,Me);let Mn=c.createVariableDeclarationList([On],1),Ii=c.createVariableStatement(void 0,Mn);ur.push(Ii);let ds=c.createExportDefault(c.getDeclarationName(Me));Ho(ds,Me),mA(ds,JS(Me)),Qg(ds,$R(Me)),ur.push(ds)}else{let On=c.createExportDefault(dn);Ho(On,Me),mA(On,JS(Me)),Qg(On,$R(Me)),ur.push(On)}}else{w.assertIsDefined(Me.name,"A class declaration that is not a default export must have a name.");let dn=Ye(Me),On=bt?Vi=>Fx(Vi)?void 0:nt(Vi):nt,Mn=ws(Me.modifiers,On,gg),Ii=c.getLocalName(Me,!1,!0),ds=c.createVariableDeclaration(Ii,void 0,void 0,dn);Ho(ds,Me);let Es=c.createVariableDeclarationList([ds],1),oo=c.createVariableStatement(Mn,Es);if(Ho(oo,Me),mA(oo,JS(Me)),ur.push(oo),bt){let Vi=c.createExternalModuleExport(Ii);Ho(Vi,Me),ur.push(Vi)}}return hl(ur)}else{let ur=ws(Me.modifiers,nt,gg),Re=ws(Me.heritageClauses,je,WE);Ae(void 0);let Jt=ws(Me.members,qe,rC);return de(),c.updateClassDeclaration(Me,ur,Me.name,void 0,Re,Jt)}}function Kt(Me){if(ht(Me)){let ur=Ye(Me);return Ho(ur,Me),ur}else{let ur=ws(Me.modifiers,nt,gg),Re=ws(Me.heritageClauses,je,WE);Ae(void 0);let Jt=ws(Me.members,qe,rC);return de(),c.updateClassExpression(Me,ur,Me.name,void 0,Re,Jt)}}function Tt(Me,ur){if(lr(ur.pendingInstanceInitializers)){let Re=[];return Re.push(c.createExpressionStatement(c.inlineExpressions(ur.pendingInstanceInitializers))),ur.pendingInstanceInitializers=void 0,Re}}function Lt(Me,ur,Re,Jt,bt,Vt){let dn=Jt[bt],On=ur[dn];if(ai(Me,ws(ur,je,Ic,Re,dn-Re)),ob(On)){let Mn=[];Lt(Mn,On.tryBlock.statements,0,Jt,bt+1,Vt);let Ii=c.createNodeArray(Mn);un(Ii,On.tryBlock.statements),Me.push(c.updateTryStatement(On,c.updateBlock(On.tryBlock,Mn),xr(On.catchClause,je,dY),xr(On.finallyBlock,je,mc)))}else ai(Me,ws(ur,je,Ic,dn,1)),ai(Me,Vt);ai(Me,ws(ur,je,Ic,dn+1))}function kt(Me){Be(Me);let ur=ws(Me.modifiers,nt,gg),Re=ws(Me.parameters,je,Jc),Jt;if(Me.body&&N){let bt=Tt(N.class,N);if(bt){let Vt=[],dn=c.copyPrologue(Me.body.statements,Vt,!1,je),On=Zke(Me.body.statements,dn);On.length>0?Lt(Vt,Me.body.statements,dn,On,0,bt):(ai(Vt,bt),ai(Vt,ws(Me.body.statements,je,Ic))),Jt=c.createBlock(Vt,!0),Ho(Jt,Me.body),un(Jt,Me.body)}}return Jt??(Jt=xr(Me.body,je,mc)),Fe(),c.updateConstructorDeclaration(Me,ur,Re,Jt)}function Zt(Me,ur){return Me!==ur&&(mA(Me,ur),Qg(Me,$R(ur))),Me}function Dr(Me,ur,Re){let Jt,bt,Vt,dn,On,Mn;if(!ur){let Es=ws(Me.modifiers,nt,gg);return Ne(),bt=Cc(Me.name),Qe(),{modifiers:Es,referencedName:Jt,name:bt,initializersName:Vt,descriptorName:Mn,thisArg:On}}let Ii=Qt(Vke(Me,ur.class,!1)),ds=ws(Me.modifiers,nt,gg);if(Ii){let Es=dt(Me,"decorators"),oo=c.createArrayLiteralExpression(Ii),Vi=c.createAssignment(Es,oo),ko={memberDecoratorsName:Es};ur.memberInfos??(ur.memberInfos=new Map),ur.memberInfos.set(Me,ko),M??(M=[]),M.push(Vi);let Yc=hZ(Me)||t_(Me)?$u(Me)?ur.staticNonFieldDecorationStatements??(ur.staticNonFieldDecorationStatements=[]):ur.nonStaticNonFieldDecorationStatements??(ur.nonStaticNonFieldDecorationStatements=[]):Ql(Me)&&!t_(Me)?$u(Me)?ur.staticFieldDecorationStatements??(ur.staticFieldDecorationStatements=[]):ur.nonStaticFieldDecorationStatements??(ur.nonStaticFieldDecorationStatements=[]):w.fail(),fl=Pb(Me)?"getter":sb(Me)?"setter":cI(Me)?"method":t_(Me)?"accessor":Ql(Me)?"field":w.fail(),oa;if(sr(Me.name)||kc(Me.name))oa={computed:!1,name:Me.name};else if(VS(Me.name))oa={computed:!0,name:c.createStringLiteralFromNode(Me.name)};else{let ki=Me.name.expression;VS(ki)&&!sr(ki)?oa={computed:!0,name:c.createStringLiteralFromNode(ki)}:(Ne(),{referencedName:Jt,name:bt}=ul(Me.name),oa={computed:!0,name:Jt},Qe())}let Da={kind:fl,name:oa,static:$u(Me),private:kc(Me.name),access:{get:Ql(Me)||Pb(Me)||cI(Me),set:Ql(Me)||sb(Me)},metadata:ur.metadataReference};if(hZ(Me)){let ki=$u(Me)?ur.staticMethodExtraInitializersName:ur.instanceMethodExtraInitializersName;w.assertIsDefined(ki);let Gs;Rh(Me)&&Re&&(Gs=Re(Me,ws(ds,JA=>eo(JA,c4),gg)),ko.memberDescriptorName=Mn=dt(Me,"descriptor"),Gs=c.createAssignment(Mn,Gs));let ri=u().createESDecorateHelper(c.createThis(),Gs??c.createNull(),Es,Da,c.createNull(),ki),hu=c.createExpressionStatement(ri);Qg(hu,$R(Me)),Yc.push(hu)}else if(Ql(Me)){Vt=ko.memberInitializersName??(ko.memberInitializersName=dt(Me,"initializers")),dn=ko.memberExtraInitializersName??(ko.memberExtraInitializersName=dt(Me,"extraInitializers")),$u(Me)&&(On=ur.classThis);let ki;Rh(Me)&&PS(Me)&&Re&&(ki=Re(Me,void 0),ko.memberDescriptorName=Mn=dt(Me,"descriptor"),ki=c.createAssignment(Mn,ki));let Gs=u().createESDecorateHelper(t_(Me)?c.createThis():c.createNull(),ki??c.createNull(),Es,Da,Vt,dn),ri=c.createExpressionStatement(Gs);Qg(ri,$R(Me)),Yc.push(ri)}}return bt===void 0&&(Ne(),bt=Cc(Me.name),Qe()),!lr(ds)&&(cI(Me)||Ql(Me))&&co(bt,1024),{modifiers:ds,referencedName:Jt,name:bt,initializersName:Vt,extraInitializersName:dn,descriptorName:Mn,thisArg:On}}function jt(Me){Be(Me);let{modifiers:ur,name:Re,descriptorName:Jt}=Dr(Me,N,ti);if(Jt)return Fe(),Zt(an(ur,Re,Jt),Me);{let bt=ws(Me.parameters,je,Jc),Vt=xr(Me.body,je,mc);return Fe(),Zt(c.updateMethodDeclaration(Me,ur,Me.asteriskToken,Re,void 0,void 0,bt,void 0,Vt),Me)}}function mr(Me){Be(Me);let{modifiers:ur,name:Re,descriptorName:Jt}=Dr(Me,N,cr);if(Jt)return Fe(),Zt(Kr(ur,Re,Jt),Me);{let bt=ws(Me.parameters,je,Jc),Vt=xr(Me.body,je,mc);return Fe(),Zt(c.updateGetAccessorDeclaration(Me,ur,Re,bt,void 0,Vt),Me)}}function Pt(Me){Be(Me);let{modifiers:ur,name:Re,descriptorName:Jt}=Dr(Me,N,kn);if(Jt)return Fe(),Zt(wn(ur,Re,Jt),Me);{let bt=ws(Me.parameters,je,Jc),Vt=xr(Me.body,je,mc);return Fe(),Zt(c.updateSetAccessorDeclaration(Me,ur,Re,bt,Vt),Me)}}function Vr(Me){Be(Me);let ur;if(Y6(Me))ur=ns(Me,je,n);else if(rue(Me)){let Re=V;V=void 0,ur=ns(Me,je,n),V=Re}else if(Me=ns(Me,je,n),ur=Me,N&&(N.hasStaticInitializers=!0,lr(N.pendingStaticInitializers))){let Re=[];for(let Vt of N.pendingStaticInitializers){let dn=c.createExpressionStatement(Vt);Qg(dn,Gx(Vt)),Re.push(dn)}let Jt=c.createBlock(Re,!0);ur=[c.createClassStaticBlockDeclaration(Jt),ur],N.pendingStaticInitializers=void 0}return Fe(),ur}function Yr(Me){tb(Me,gi)&&(Me=PE(n,Me,jn(Me.initializer))),Be(Me),w.assert(!M$(Me),"Not yet implemented.");let{modifiers:ur,name:Re,initializersName:Jt,extraInitializersName:bt,descriptorName:Vt,thisArg:dn}=Dr(Me,N,PS(Me)?Pn:void 0);d();let On=xr(Me.initializer,je,tn);Jt&&(On=u().createRunInitializersHelper(dn??c.createThis(),Jt,On??c.createVoidZero())),$u(Me)&&N&&On&&(N.hasStaticInitializers=!0);let Mn=I();if(lr(Mn)&&(On=c.createImmediatelyInvokedArrowFunction([...Mn,c.createReturnStatement(On)])),N&&($u(Me)?(On=br(N,!0,On),bt&&(N.pendingStaticInitializers??(N.pendingStaticInitializers=[]),N.pendingStaticInitializers.push(u().createRunInitializersHelper(N.classThis??c.createThis(),bt)))):(On=br(N,!1,On),bt&&(N.pendingInstanceInitializers??(N.pendingInstanceInitializers=[]),N.pendingInstanceInitializers.push(u().createRunInitializersHelper(c.createThis(),bt))))),Fe(),PS(Me)&&Vt){let Ii=JS(Me),ds=Gx(Me),Es=Me.name,oo=Es,Vi=Es;if(xg(Es)&&!DN(Es.expression)){let Da=ike(Es);if(Da)oo=c.updateComputedPropertyName(Es,xr(Es.expression,je,tn)),Vi=c.updateComputedPropertyName(Es,Da.left);else{let ki=c.createTempVariable(h);Qg(ki,Es.expression);let Gs=xr(Es.expression,je,tn),ri=c.createAssignment(ki,Gs);Qg(ri,Es.expression),oo=c.updateComputedPropertyName(Es,ri),Vi=c.updateComputedPropertyName(Es,ki)}}let ko=ws(ur,Da=>Da.kind!==129?Da:void 0,gg),Yc=r8e(c,Me,ko,On);Ho(Yc,Me),co(Yc,3072),Qg(Yc,ds),Qg(Yc.name,Me.name);let fl=Kr(ko,oo,Vt);Ho(fl,Me),mA(fl,Ii),Qg(fl,ds);let oa=wn(ko,Vi,Vt);return Ho(oa,Me),co(oa,3072),Qg(oa,ds),[Yc,fl,oa]}return Zt(c.updatePropertyDeclaration(Me,ur,Re,void 0,void 0,On),Me)}function pr(Me){return V??Me}function zr(Me){if(M0(Me.expression)&&V){let ur=xr(Me.expression,je,tn),Re=ws(Me.arguments,je,tn),Jt=c.createFunctionCallCall(ur,V,Re);return Ho(Jt,Me),un(Jt,Me),Jt}return ns(Me,je,n)}function $n(Me){if(M0(Me.tag)&&V){let ur=xr(Me.tag,je,tn),Re=c.createFunctionBindCall(ur,V,[]);Ho(Re,Me),un(Re,Me);let Jt=xr(Me.template,je,x1);return c.updateTaggedTemplateExpression(Me,Re,void 0,Jt)}return ns(Me,je,n)}function bi(Me){if(M0(Me)&&sr(Me.name)&&V&&P){let ur=c.createStringLiteralFromNode(Me.name),Re=c.createReflectGetCall(P,ur,V);return Ho(Re,Me.expression),un(Re,Me.expression),Re}return ns(Me,je,n)}function Pi(Me){if(M0(Me)&&V&&P){let ur=xr(Me.argumentExpression,je,tn),Re=c.createReflectGetCall(P,ur,V);return Ho(Re,Me.expression),un(Re,Me.expression),Re}return ns(Me,je,n)}function Ns(Me){tb(Me,gi)&&(Me=PE(n,Me,jn(Me.initializer)));let ur=c.updateParameterDeclaration(Me,void 0,Me.dotDotDotToken,xr(Me.name,je,mZ),void 0,void 0,xr(Me.initializer,je,tn));return ur!==Me&&(mA(ur,Me),un(ur,OS(Me)),Qg(ur,OS(Me)),co(ur.name,64)),ur}function gi(Me){return tp(Me)&&!Me.name&&ht(Me)}function jn(Me){let ur=ZC(Me);return tp(ur)&&!ur.name&&!Tx(!1,ur)}function xs(Me){return c.updateForStatement(Me,xr(Me.initializer,it,P0),xr(Me.condition,je,tn),xr(Me.incrementor,it,tn),yy(Me.statement,je,n))}function Ec(Me){return ns(Me,it,n)}function xi(Me,ur){if(kv(Me)){let Re=BA(Me.left),Jt=xr(Me.right,je,tn);return c.updateBinaryExpression(Me,Re,Me.operatorToken,Jt)}if(fm(Me)){if(tb(Me,gi))return Me=PE(n,Me,jn(Me.right)),ns(Me,je,n);if(M0(Me.left)&&V&&P){let Re=hA(Me.left)?xr(Me.left.argumentExpression,je,tn):sr(Me.left.name)?c.createStringLiteralFromNode(Me.left.name):void 0;if(Re){let Jt=xr(Me.right,je,tn);if($le(Me.operatorToken.kind)){let Vt=Re;DN(Re)||(Vt=c.createTempVariable(h),Re=c.createAssignment(Vt,Re));let dn=c.createReflectGetCall(P,Vt,V);Ho(dn,Me.left),un(dn,Me.left),Jt=c.createBinaryExpression(dn,eue(Me.operatorToken.kind),Jt),un(Jt,Me)}let bt=ur?void 0:c.createTempVariable(h);return bt&&(Jt=c.createAssignment(bt,Jt),un(bt,Me)),Jt=c.createReflectSetCall(P,Re,Jt,V),Ho(Jt,Me),un(Jt,Me),bt&&(Jt=c.createComma(Jt,bt),un(Jt,Me)),Jt}}}if(Me.operatorToken.kind===28){let Re=xr(Me.left,it,tn),Jt=xr(Me.right,ur?it:je,tn);return c.updateBinaryExpression(Me,Re,Me.operatorToken,Jt)}return ns(Me,je,n)}function rc(Me,ur){if(Me.operator===46||Me.operator===47){let Re=jA(Me.operand);if(M0(Re)&&V&&P){let Jt=hA(Re)?xr(Re.argumentExpression,je,tn):sr(Re.name)?c.createStringLiteralFromNode(Re.name):void 0;if(Jt){let bt=Jt;DN(Jt)||(bt=c.createTempVariable(h),Jt=c.createAssignment(bt,Jt));let Vt=c.createReflectGetCall(P,bt,V);Ho(Vt,Me),un(Vt,Me);let dn=ur?void 0:c.createTempVariable(h);return Vt=zxe(c,Me,Vt,h,dn),Vt=c.createReflectSetCall(P,Jt,Vt,V),Ho(Vt,Me),un(Vt,Me),dn&&(Vt=c.createComma(Vt,dn),un(Vt,Me)),Vt}}}return ns(Me,je,n)}function Vl(Me,ur){let Re=ur?u_e(Me.elements,it):u_e(Me.elements,je,it);return c.updateCommaListExpression(Me,Re)}function ul(Me){if(VS(Me)||kc(Me)){let Vt=c.createStringLiteralFromNode(Me),dn=xr(Me,je,NI);return{referencedName:Vt,name:dn}}if(VS(Me.expression)&&!sr(Me.expression)){let Vt=c.createStringLiteralFromNode(Me.expression),dn=xr(Me,je,NI);return{referencedName:Vt,name:dn}}let ur=c.getGeneratedNameForNode(Me);h(ur);let Re=u().createPropKeyHelper(xr(Me.expression,je,tn)),Jt=c.createAssignment(ur,Re),bt=c.updateComputedPropertyName(Me,St(Jt));return{referencedName:ur,name:bt}}function Cc(Me){return xg(Me)?_s(Me):xr(Me,je,NI)}function _s(Me){let ur=xr(Me.expression,je,tn);return DN(ur)||(ur=St(ur)),c.updateComputedPropertyName(Me,ur)}function Wu(Me){return tb(Me,gi)&&(Me=PE(n,Me,jn(Me.initializer))),ns(Me,je,n)}function ir(Me){return tb(Me,gi)&&(Me=PE(n,Me,jn(Me.initializer))),ns(Me,je,n)}function ni(Me){return tb(Me,gi)&&(Me=PE(n,Me,jn(Me.initializer))),ns(Me,je,n)}function gs(Me){if(tu(Me)||If(Me))return BA(Me);if(M0(Me)&&V&&P){let ur=hA(Me)?xr(Me.argumentExpression,je,tn):sr(Me.name)?c.createStringLiteralFromNode(Me.name):void 0;if(ur){let Re=c.createTempVariable(void 0),Jt=c.createAssignmentTargetWrapper(Re,c.createReflectSetCall(P,ur,Re,V));return Ho(Jt,Me),un(Jt,Me),Jt}}return ns(Me,je,n)}function Hs(Me){if(fm(Me,!0)){tb(Me,gi)&&(Me=PE(n,Me,jn(Me.right)));let ur=gs(Me.left),Re=xr(Me.right,je,tn);return c.updateBinaryExpression(Me,ur,Me.operatorToken,Re)}else return gs(Me)}function qa(Me){if(T_(Me.expression)){let ur=gs(Me.expression);return c.updateSpreadElement(Me,ur)}return ns(Me,je,n)}function nc(Me){return w.assertNode(Me,hX),ph(Me)?qa(Me):ef(Me)?ns(Me,je,n):Hs(Me)}function Nc(Me){let ur=xr(Me.name,je,NI);if(fm(Me.initializer,!0)){let Re=Hs(Me.initializer);return c.updatePropertyAssignment(Me,ur,Re)}if(T_(Me.initializer)){let Re=gs(Me.initializer);return c.updatePropertyAssignment(Me,ur,Re)}return ns(Me,je,n)}function cg(Me){return tb(Me,gi)&&(Me=PE(n,Me,jn(Me.objectAssignmentInitializer))),ns(Me,je,n)}function Ku(Me){if(T_(Me.expression)){let ur=gs(Me.expression);return c.updateSpreadAssignment(Me,ur)}return ns(Me,je,n)}function Bi(Me){return w.assertNode(Me,mX),Mx(Me)?Ku(Me):G_(Me)?cg(Me):KC(Me)?Nc(Me):ns(Me,je,n)}function BA(Me){if(If(Me)){let ur=ws(Me.elements,nc,tn);return c.updateArrayLiteralExpression(Me,ur)}else{let ur=ws(Me.properties,Bi,EB);return c.updateObjectLiteralExpression(Me,ur)}}function kr(Me){return tb(Me,gi)&&(Me=PE(n,Me,jn(Me.expression))),ns(Me,je,n)}function en(Me,ur){let Re=ur?it:je,Jt=xr(Me.expression,Re,tn);return c.updateParenthesizedExpression(Me,Jt)}function ct(Me,ur){let Re=ur?it:je,Jt=xr(Me.expression,Re,tn);return c.updatePartiallyEmittedExpression(Me,Jt)}function rn(Me,ur){return lr(Me)&&(ur?FC(ur)?(Me.push(ur.expression),ur=c.updateParenthesizedExpression(ur,c.inlineExpressions(Me))):(Me.push(ur),ur=c.inlineExpressions(Me)):ur=c.inlineExpressions(Me)),ur}function St(Me){let ur=rn(M,Me);return w.assertIsDefined(ur),ur!==Me&&(M=void 0),ur}function br(Me,ur,Re){let Jt=rn(ur?Me.pendingStaticInitializers:Me.pendingInstanceInitializers,Re);return Jt!==Re&&(ur?Me.pendingStaticInitializers=void 0:Me.pendingInstanceInitializers=void 0),Jt}function Qt(Me){if(!Me)return;let ur=[];return ai(ur,Ot(Me.decorators,_r)),ur}function _r(Me){let ur=xr(Me.expression,je,tn);co(ur,3072);let Re=ZC(ur);if(Cp(Re)){let{target:Jt,thisArg:bt}=c.createCallBinding(ur,h,b,!0);return c.restoreOuterExpressions(ur,c.createFunctionBindCall(Jt,bt,[]))}return ur}function Pr(Me,ur,Re,Jt,bt,Vt,dn){let On=c.createFunctionExpression(Re,Jt,void 0,void 0,Vt,void 0,dn??c.createBlock([]));Ho(On,Me),Qg(On,$R(Me)),co(On,3072);let Mn=bt==="get"||bt==="set"?bt:void 0,Ii=c.createStringLiteralFromNode(ur,void 0),ds=u().createSetFunctionNameHelper(On,Ii,Mn),Es=c.createPropertyAssignment(c.createIdentifier(bt),ds);return Ho(Es,Me),Qg(Es,$R(Me)),co(Es,3072),Es}function ti(Me,ur){return c.createObjectLiteralExpression([Pr(Me,Me.name,ur,Me.asteriskToken,"value",ws(Me.parameters,je,Jc),xr(Me.body,je,mc))])}function cr(Me,ur){return c.createObjectLiteralExpression([Pr(Me,Me.name,ur,void 0,"get",[],xr(Me.body,je,mc))])}function kn(Me,ur){return c.createObjectLiteralExpression([Pr(Me,Me.name,ur,void 0,"set",ws(Me.parameters,je,Jc),xr(Me.body,je,mc))])}function Pn(Me,ur){return c.createObjectLiteralExpression([Pr(Me,Me.name,ur,void 0,"get",[],c.createBlock([c.createReturnStatement(c.createPropertyAccessExpression(c.createThis(),c.getGeneratedPrivateNameForNode(Me.name)))])),Pr(Me,Me.name,ur,void 0,"set",[c.createParameterDeclaration(void 0,void 0,"value")],c.createBlock([c.createExpressionStatement(c.createAssignment(c.createPropertyAccessExpression(c.createThis(),c.getGeneratedPrivateNameForNode(Me.name)),c.createIdentifier("value")))]))])}function an(Me,ur,Re){return Me=ws(Me,Jt=>nT(Jt)?Jt:void 0,gg),c.createGetAccessorDeclaration(Me,ur,[],void 0,c.createBlock([c.createReturnStatement(c.createPropertyAccessExpression(Re,c.createIdentifier("value")))]))}function Kr(Me,ur,Re){return Me=ws(Me,Jt=>nT(Jt)?Jt:void 0,gg),c.createGetAccessorDeclaration(Me,ur,[],void 0,c.createBlock([c.createReturnStatement(c.createFunctionCallCall(c.createPropertyAccessExpression(Re,c.createIdentifier("get")),c.createThis(),[]))]))}function wn(Me,ur,Re){return Me=ws(Me,Jt=>nT(Jt)?Jt:void 0,gg),c.createSetAccessorDeclaration(Me,ur,[c.createParameterDeclaration(void 0,void 0,"value")],c.createBlock([c.createReturnStatement(c.createFunctionCallCall(c.createPropertyAccessExpression(Re,c.createIdentifier("set")),c.createThis(),[c.createIdentifier("value")]))]))}function Pe(Me,ur){let Re=c.createVariableDeclaration(Me,void 0,void 0,c.createConditionalExpression(c.createLogicalAnd(c.createTypeCheck(c.createIdentifier("Symbol"),"function"),c.createPropertyAccessExpression(c.createIdentifier("Symbol"),"metadata")),c.createToken(58),c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("Object"),"create"),void 0,[ur?sn(ur):c.createNull()]),c.createToken(59),c.createVoidZero()));return c.createVariableStatement(void 0,c.createVariableDeclarationList([Re],2))}function ar(Me,ur){let Re=c.createObjectDefinePropertyCall(Me,c.createPropertyAccessExpression(c.createIdentifier("Symbol"),"metadata"),c.createPropertyDescriptor({configurable:!0,writable:!0,enumerable:!0,value:ur},!0));return co(c.createIfStatement(ur,c.createExpressionStatement(Re)),1)}function sn(Me){return c.createBinaryExpression(c.createElementAccessExpression(Me,c.createPropertyAccessExpression(c.createIdentifier("Symbol"),"metadata")),61,c.createNull())}}function dxt(n){let{factory:c,getEmitHelperFactory:u,resumeLexicalEnvironment:d,endLexicalEnvironment:I,hoistVariableDeclaration:h}=n,b=n.getEmitResolver(),R=n.getCompilerOptions(),N=iA(R),V,P=0,M,te,re,ue,Ae=[],de=0,Be=n.onEmitNode,Fe=n.onSubstituteNode;return n.onEmitNode=Ec,n.onSubstituteNode=xi,lT(n,Ne);function Ne(ir){if(ir.isDeclarationFile)return ir;Qe(1,!1),Qe(2,!RX(ir,R));let ni=ns(ir,qe,n);return EN(ni,n.readEmitHelpers()),ni}function Qe(ir,ni){de=ni?de|ir:de&~ir}function De(ir){return(de&ir)!==0}function lt(){return!De(1)}function Le(){return De(2)}function je(ir,ni,gs){let Hs=ir&~de;if(Hs){Qe(Hs,!0);let qa=ni(gs);return Qe(Hs,!1),qa}return ni(gs)}function st(ir){return ns(ir,qe,n)}function nt(ir){switch(ir.kind){case 218:case 262:case 174:case 177:case 178:case 176:return ir;case 169:case 208:case 260:break;case 80:if(ue&&b.isArgumentsLocalBinding(ir))return ue;break}return ns(ir,nt,n)}function qe(ir){if(!(ir.transformFlags&256))return ue?nt(ir):ir;switch(ir.kind){case 134:return;case 223:return ht(ir);case 174:return je(3,Kt,ir);case 262:return je(3,kt,ir);case 218:return je(3,Zt,ir);case 219:return je(1,Dr,ir);case 211:return te&&Io(ir)&&ir.expression.kind===108&&te.add(ir.name.escapedText),ns(ir,qe,n);case 212:return te&&ir.expression.kind===108&&(re=!0),ns(ir,qe,n);case 177:return je(3,Tt,ir);case 178:return je(3,Lt,ir);case 176:return je(3,Et,ir);case 263:case 231:return je(3,st,ir);default:return ns(ir,qe,n)}}function it(ir){if(jRe(ir))switch(ir.kind){case 243:return dt(ir);case 248:return Ye(ir);case 249:return wt(ir);case 250:return vt(ir);case 299:return It(ir);case 241:case 255:case 269:case 296:case 297:case 258:case 246:case 247:case 245:case 254:case 256:return ns(ir,it,n);default:return w.assertNever(ir,"Unhandled node.")}return qe(ir)}function It(ir){let ni=new Set;jt(ir.variableDeclaration,ni);let gs;if(ni.forEach((Hs,qa)=>{M.has(qa)&&(gs||(gs=new Set(M)),gs.delete(qa))}),gs){let Hs=M;M=gs;let qa=ns(ir,it,n);return M=Hs,qa}else return ns(ir,it,n)}function dt(ir){if(mr(ir.declarationList)){let ni=Pt(ir.declarationList,!1);return ni?c.createExpressionStatement(ni):void 0}return ns(ir,qe,n)}function wt(ir){return c.updateForInStatement(ir,mr(ir.initializer)?Pt(ir.initializer,!0):w.checkDefined(xr(ir.initializer,qe,P0)),w.checkDefined(xr(ir.expression,qe,tn)),yy(ir.statement,it,n))}function vt(ir){return c.updateForOfStatement(ir,xr(ir.awaitModifier,qe,Dle),mr(ir.initializer)?Pt(ir.initializer,!0):w.checkDefined(xr(ir.initializer,qe,P0)),w.checkDefined(xr(ir.expression,qe,tn)),yy(ir.statement,it,n))}function Ye(ir){let ni=ir.initializer;return c.updateForStatement(ir,mr(ni)?Pt(ni,!1):xr(ir.initializer,qe,P0),xr(ir.condition,qe,tn),xr(ir.incrementor,qe,tn),yy(ir.statement,it,n))}function ht(ir){return lt()?ns(ir,qe,n):Ho(un(c.createYieldExpression(void 0,xr(ir.expression,qe,tn)),ir),ir)}function Et(ir){let ni=ue;ue=void 0;let gs=c.updateConstructorDeclaration(ir,ws(ir.modifiers,qe,gg),hI(ir.parameters,qe,n),$n(ir));return ue=ni,gs}function Kt(ir){let ni,gs=YI(ir),Hs=ue;ue=void 0;let qa=c.updateMethodDeclaration(ir,ws(ir.modifiers,qe,Np),ir.asteriskToken,ir.name,void 0,void 0,ni=gs&2?Pi(ir):hI(ir.parameters,qe,n),void 0,gs&2?Ns(ir,ni):$n(ir));return ue=Hs,qa}function Tt(ir){let ni=ue;ue=void 0;let gs=c.updateGetAccessorDeclaration(ir,ws(ir.modifiers,qe,Np),ir.name,hI(ir.parameters,qe,n),void 0,$n(ir));return ue=ni,gs}function Lt(ir){let ni=ue;ue=void 0;let gs=c.updateSetAccessorDeclaration(ir,ws(ir.modifiers,qe,Np),ir.name,hI(ir.parameters,qe,n),$n(ir));return ue=ni,gs}function kt(ir){let ni,gs=ue;ue=void 0;let Hs=YI(ir),qa=c.updateFunctionDeclaration(ir,ws(ir.modifiers,qe,Np),ir.asteriskToken,ir.name,void 0,ni=Hs&2?Pi(ir):hI(ir.parameters,qe,n),void 0,Hs&2?Ns(ir,ni):L2(ir.body,qe,n));return ue=gs,qa}function Zt(ir){let ni,gs=ue;ue=void 0;let Hs=YI(ir),qa=c.updateFunctionExpression(ir,ws(ir.modifiers,qe,gg),ir.asteriskToken,ir.name,void 0,ni=Hs&2?Pi(ir):hI(ir.parameters,qe,n),void 0,Hs&2?Ns(ir,ni):L2(ir.body,qe,n));return ue=gs,qa}function Dr(ir){let ni,gs=YI(ir);return c.updateArrowFunction(ir,ws(ir.modifiers,qe,gg),void 0,ni=gs&2?Pi(ir):hI(ir.parameters,qe,n),void 0,ir.equalsGreaterThanToken,gs&2?Ns(ir,ni):L2(ir.body,qe,n))}function jt({name:ir},ni){if(sr(ir))ni.add(ir.escapedText);else for(let gs of ir.elements)ef(gs)||jt(gs,ni)}function mr(ir){return!!ir&&yl(ir)&&!(ir.flags&7)&&ir.declarations.some(zr)}function Pt(ir,ni){Vr(ir);let gs=c6(ir);return gs.length===0?ni?xr(c.converters.convertToAssignmentElementTarget(ir.declarations[0].name),qe,tn):void 0:c.inlineExpressions(Ot(gs,pr))}function Vr(ir){X(ir.declarations,Yr)}function Yr({name:ir}){if(sr(ir))h(ir);else for(let ni of ir.elements)ef(ni)||Yr(ni)}function pr(ir){let ni=Qg(c.createAssignment(c.converters.convertToAssignmentElementTarget(ir.name),ir.initializer),ir);return w.checkDefined(xr(ni,qe,tn))}function zr({name:ir}){if(sr(ir))return M.has(ir.escapedText);for(let ni of ir.elements)if(!ef(ni)&&zr(ni))return!0;return!1}function $n(ir){w.assertIsDefined(ir.body);let ni=te,gs=re;te=new Set,re=!1;let Hs=L2(ir.body,qe,n),qa=Tp(ir,dd);if(N>=2&&(b.hasNodeCheckFlag(ir,256)||b.hasNodeCheckFlag(ir,128))&&(YI(qa)&3)!==3){if(xs(),te.size){let Nc=Oke(c,b,ir,te);Ae[sd(Nc)]=!0;let cg=Hs.statements.slice();kS(cg,[Nc]),Hs=c.updateBlock(Hs,cg)}re&&(b.hasNodeCheckFlag(ir,256)?nY(Hs,KS):b.hasNodeCheckFlag(ir,128)&&nY(Hs,Nle))}return te=ni,re=gs,Hs}function bi(){w.assert(ue);let ir=c.createVariableDeclaration(ue,void 0,void 0,c.createIdentifier("arguments")),ni=c.createVariableStatement(void 0,[ir]);return l0(ni),XS(ni,2097152),ni}function Pi(ir){if(A_e(ir.parameters))return hI(ir.parameters,qe,n);let ni=[];for(let Hs of ir.parameters){if(Hs.initializer||Hs.dotDotDotToken){if(ir.kind===219){let nc=c.createParameterDeclaration(void 0,c.createToken(26),c.createUniqueName("args",8));ni.push(nc)}break}let qa=c.createParameterDeclaration(void 0,void 0,c.getGeneratedNameForNode(Hs.name,8));ni.push(qa)}let gs=c.createNodeArray(ni);return un(gs,ir.parameters),gs}function Ns(ir,ni){let gs=A_e(ir.parameters)?void 0:hI(ir.parameters,qe,n);d();let qa=Tp(ir,$l).type,nc=N<2?jn(qa):void 0,Nc=ir.kind===219,cg=ue,Bi=b.hasNodeCheckFlag(ir,512)&&!ue;Bi&&(ue=c.createUniqueName("arguments"));let BA;if(gs)if(Nc){let Qt=[];w.assert(ni.length<=ir.parameters.length);for(let _r=0;_r=2&&(b.hasNodeCheckFlag(ir,256)||b.hasNodeCheckFlag(ir,128));if(_r&&(xs(),te.size)){let ti=Oke(c,b,ir,te);Ae[sd(ti)]=!0,kS(Qt,[ti])}Bi&&kS(Qt,[bi()]);let Pr=c.createBlock(Qt,!0);un(Pr,ir.body),_r&&re&&(b.hasNodeCheckFlag(ir,256)?nY(Pr,KS):b.hasNodeCheckFlag(ir,128)&&nY(Pr,Nle)),br=Pr}return M=kr,Nc||(te=en,re=ct,ue=cg),br}function gi(ir,ni){return mc(ir)?c.updateBlock(ir,ws(ir.statements,it,Ic,ni)):c.converters.convertToFunctionBlock(w.checkDefined(xr(ir,it,QR)))}function jn(ir){let ni=ir&&z$(ir);if(ni&&w_(ni)){let gs=b.getTypeReferenceSerializationKind(ni);if(gs===1||gs===0)return ni}}function xs(){V&1||(V|=1,n.enableSubstitution(213),n.enableSubstitution(211),n.enableSubstitution(212),n.enableEmitNotification(263),n.enableEmitNotification(174),n.enableEmitNotification(177),n.enableEmitNotification(178),n.enableEmitNotification(176),n.enableEmitNotification(243))}function Ec(ir,ni,gs){if(V&1&&_s(ni)){let Hs=(b.hasNodeCheckFlag(ni,128)?128:0)|(b.hasNodeCheckFlag(ni,256)?256:0);if(Hs!==P){let qa=P;P=Hs,Be(ir,ni,gs),P=qa;return}}else if(V&&Ae[sd(ni)]){let Hs=P;P=0,Be(ir,ni,gs),P=Hs;return}Be(ir,ni,gs)}function xi(ir,ni){return ni=Fe(ir,ni),ir===1&&P?rc(ni):ni}function rc(ir){switch(ir.kind){case 211:return Vl(ir);case 212:return ul(ir);case 213:return Cc(ir)}return ir}function Vl(ir){return ir.expression.kind===108?un(c.createPropertyAccessExpression(c.createUniqueName("_super",48),ir.name),ir):ir}function ul(ir){return ir.expression.kind===108?Wu(ir.argumentExpression,ir):ir}function Cc(ir){let ni=ir.expression;if(M0(ni)){let gs=Io(ni)?Vl(ni):ul(ni);return c.createCallExpression(c.createPropertyAccessExpression(gs,"call"),void 0,[c.createThis(),...ir.arguments])}return ir}function _s(ir){let ni=ir.kind;return ni===263||ni===176||ni===174||ni===177||ni===178}function Wu(ir,ni){return P&256?un(c.createPropertyAccessExpression(c.createCallExpression(c.createUniqueName("_superIndex",48),void 0,[ir]),"value"),ni):un(c.createCallExpression(c.createUniqueName("_superIndex",48),void 0,[ir]),ni)}}function Oke(n,c,u,d){let I=c.hasNodeCheckFlag(u,256),h=[];return d.forEach((b,R)=>{let N=Sc(R),V=[];V.push(n.createPropertyAssignment("get",n.createArrowFunction(void 0,void 0,[],void 0,void 0,co(n.createPropertyAccessExpression(co(n.createSuper(),8),N),8)))),I&&V.push(n.createPropertyAssignment("set",n.createArrowFunction(void 0,void 0,[n.createParameterDeclaration(void 0,void 0,"v",void 0,void 0,void 0)],void 0,void 0,n.createAssignment(co(n.createPropertyAccessExpression(co(n.createSuper(),8),N),8),n.createIdentifier("v"))))),h.push(n.createPropertyAssignment(N,n.createObjectLiteralExpression(V)))}),n.createVariableStatement(void 0,n.createVariableDeclarationList([n.createVariableDeclaration(n.createUniqueName("_super",48),void 0,void 0,n.createCallExpression(n.createPropertyAccessExpression(n.createIdentifier("Object"),"create"),void 0,[n.createNull(),n.createObjectLiteralExpression(h,!0)]))],2))}function pxt(n){let{factory:c,getEmitHelperFactory:u,resumeLexicalEnvironment:d,endLexicalEnvironment:I,hoistVariableDeclaration:h}=n,b=n.getEmitResolver(),R=n.getCompilerOptions(),N=iA(R),V=n.onEmitNode;n.onEmitNode=cg;let P=n.onSubstituteNode;n.onSubstituteNode=Ku;let M=!1,te,re,ue,Ae=0,de=0,Be,Fe,Ne,Qe,De=[];return lT(n,nt);function lt(St,br){return de!==(de&~St|br)}function Le(St,br){let Qt=de;return de=(de&~St|br)&3,Qt}function je(St){de=St}function st(St){Fe=Hr(Fe,c.createVariableDeclaration(St))}function nt(St){if(St.isDeclarationFile)return St;Be=St;let br=Dr(St);return EN(br,n.readEmitHelpers()),Be=void 0,Fe=void 0,br}function qe(St){return vt(St,!1)}function it(St){return vt(St,!0)}function It(St){if(St.kind!==134)return St}function dt(St,br,Qt,_r){if(lt(Qt,_r)){let Pr=Le(Qt,_r),ti=St(br);return je(Pr),ti}return St(br)}function wt(St){return ns(St,qe,n)}function vt(St,br){if(!(St.transformFlags&128))return St;switch(St.kind){case 223:return Ye(St);case 229:return ht(St);case 253:return Et(St);case 256:return Kt(St);case 210:return Lt(St);case 226:return mr(St,br);case 355:return Pt(St,br);case 299:return Vr(St);case 243:return Yr(St);case 260:return pr(St);case 246:case 247:case 249:return dt(wt,St,0,2);case 250:return Pi(St,void 0);case 248:return dt($n,St,0,2);case 222:return bi(St);case 176:return dt(Vl,St,2,1);case 174:return dt(_s,St,2,1);case 177:return dt(ul,St,2,1);case 178:return dt(Cc,St,2,1);case 262:return dt(Wu,St,2,1);case 218:return dt(ni,St,2,1);case 219:return dt(ir,St,2,0);case 169:return xi(St);case 244:return kt(St);case 217:return Zt(St,br);case 215:return jt(St);case 211:return Ne&&Io(St)&&St.expression.kind===108&&Ne.add(St.name.escapedText),ns(St,qe,n);case 212:return Ne&&St.expression.kind===108&&(Qe=!0),ns(St,qe,n);case 263:case 231:return dt(wt,St,2,1);default:return ns(St,qe,n)}}function Ye(St){return re&2&&re&1?Ho(un(c.createYieldExpression(void 0,u().createAwaitHelper(xr(St.expression,qe,tn))),St),St):ns(St,qe,n)}function ht(St){if(re&2&&re&1){if(St.asteriskToken){let br=xr(w.checkDefined(St.expression),qe,tn);return Ho(un(c.createYieldExpression(void 0,u().createAwaitHelper(c.updateYieldExpression(St,St.asteriskToken,un(u().createAsyncDelegatorHelper(un(u().createAsyncValuesHelper(br),br)),br)))),St),St)}return Ho(un(c.createYieldExpression(void 0,jn(St.expression?xr(St.expression,qe,tn):c.createVoidZero())),St),St)}return ns(St,qe,n)}function Et(St){return re&2&&re&1?c.updateReturnStatement(St,jn(St.expression?xr(St.expression,qe,tn):c.createVoidZero())):ns(St,qe,n)}function Kt(St){if(re&2){let br=ome(St);return br.kind===250&&br.awaitModifier?Pi(br,St):c.restoreEnclosingLabel(xr(br,qe,Ic,c.liftToBlock),St)}return ns(St,qe,n)}function Tt(St){let br,Qt=[];for(let _r of St)if(_r.kind===305){br&&(Qt.push(c.createObjectLiteralExpression(br)),br=void 0);let Pr=_r.expression;Qt.push(xr(Pr,qe,tn))}else br=Hr(br,_r.kind===303?c.createPropertyAssignment(_r.name,xr(_r.initializer,qe,tn)):xr(_r,qe,EB));return br&&Qt.push(c.createObjectLiteralExpression(br)),Qt}function Lt(St){if(St.transformFlags&65536){let br=Tt(St.properties);br.length&&br[0].kind!==210&&br.unshift(c.createObjectLiteralExpression());let Qt=br[0];if(br.length>1){for(let _r=1;_r=2&&(b.hasNodeCheckFlag(St,256)||b.hasNodeCheckFlag(St,128));if(kn){Nc();let an=Oke(c,b,St,Ne);De[sd(an)]=!0,kS(Pr,[an])}Pr.push(cr);let Pn=c.updateBlock(St.body,Pr);return kn&&Qe&&(b.hasNodeCheckFlag(St,256)?nY(Pn,KS):b.hasNodeCheckFlag(St,128)&&nY(Pn,Nle)),Ne=Qt,Qe=_r,Pn}function qa(St){d();let br=0,Qt=[],_r=xr(St.body,qe,QR)??c.createBlock([]);mc(_r)&&(br=c.copyPrologue(_r.statements,Qt,!1,qe)),ai(Qt,nc(void 0,St));let Pr=I();if(br>0||lr(Qt)||lr(Pr)){let ti=c.converters.convertToFunctionBlock(_r,!0);return kS(Qt,Pr),ai(Qt,ti.statements.slice(br)),c.updateBlock(ti,un(c.createNodeArray(Qt),ti.statements))}return _r}function nc(St,br){let Qt=!1;for(let _r of br.parameters)if(Qt){if(pu(_r.name)){if(_r.name.elements.length>0){let Pr=CY(_r,qe,n,0,c.getGeneratedNameForNode(_r));if(lr(Pr)){let ti=c.createVariableDeclarationList(Pr),cr=c.createVariableStatement(void 0,ti);co(cr,2097152),St=Hr(St,cr)}}else if(_r.initializer){let Pr=c.getGeneratedNameForNode(_r),ti=xr(_r.initializer,qe,tn),cr=c.createAssignment(Pr,ti),kn=c.createExpressionStatement(cr);co(kn,2097152),St=Hr(St,kn)}}else if(_r.initializer){let Pr=c.cloneNode(_r.name);un(Pr,_r.name),co(Pr,96);let ti=xr(_r.initializer,qe,tn);XS(ti,3168);let cr=c.createAssignment(Pr,ti);un(cr,_r),co(cr,3072);let kn=c.createBlock([c.createExpressionStatement(cr)]);un(kn,_r),co(kn,3905);let Pn=c.createTypeCheck(c.cloneNode(_r.name),"undefined"),an=c.createIfStatement(Pn,kn);l0(an),un(an,_r),co(an,2101056),St=Hr(St,an)}}else if(_r.transformFlags&65536){Qt=!0;let Pr=CY(_r,qe,n,1,c.getGeneratedNameForNode(_r),!1,!0);if(lr(Pr)){let ti=c.createVariableDeclarationList(Pr),cr=c.createVariableStatement(void 0,ti);co(cr,2097152),St=Hr(St,cr)}}return St}function Nc(){te&1||(te|=1,n.enableSubstitution(213),n.enableSubstitution(211),n.enableSubstitution(212),n.enableEmitNotification(263),n.enableEmitNotification(174),n.enableEmitNotification(177),n.enableEmitNotification(178),n.enableEmitNotification(176),n.enableEmitNotification(243))}function cg(St,br,Qt){if(te&1&&ct(br)){let _r=(b.hasNodeCheckFlag(br,128)?128:0)|(b.hasNodeCheckFlag(br,256)?256:0);if(_r!==Ae){let Pr=Ae;Ae=_r,V(St,br,Qt),Ae=Pr;return}}else if(te&&De[sd(br)]){let _r=Ae;Ae=0,V(St,br,Qt),Ae=_r;return}V(St,br,Qt)}function Ku(St,br){return br=P(St,br),St===1&&Ae?Bi(br):br}function Bi(St){switch(St.kind){case 211:return BA(St);case 212:return kr(St);case 213:return en(St)}return St}function BA(St){return St.expression.kind===108?un(c.createPropertyAccessExpression(c.createUniqueName("_super",48),St.name),St):St}function kr(St){return St.expression.kind===108?rn(St.argumentExpression,St):St}function en(St){let br=St.expression;if(M0(br)){let Qt=Io(br)?BA(br):kr(br);return c.createCallExpression(c.createPropertyAccessExpression(Qt,"call"),void 0,[c.createThis(),...St.arguments])}return St}function ct(St){let br=St.kind;return br===263||br===176||br===174||br===177||br===178}function rn(St,br){return Ae&256?un(c.createPropertyAccessExpression(c.createCallExpression(c.createIdentifier("_superIndex"),void 0,[St]),"value"),br):un(c.createCallExpression(c.createIdentifier("_superIndex"),void 0,[St]),br)}}function fxt(n){let c=n.factory;return lT(n,u);function u(h){return h.isDeclarationFile?h:ns(h,d,n)}function d(h){if(!(h.transformFlags&64))return h;switch(h.kind){case 299:return I(h);default:return ns(h,d,n)}}function I(h){return h.variableDeclaration?ns(h,d,n):c.updateCatchClause(h,c.createVariableDeclaration(c.createTempVariable(void 0)),xr(h.block,d,mc))}}function Ixt(n){let{factory:c,hoistVariableDeclaration:u}=n;return lT(n,d);function d(ue){return ue.isDeclarationFile?ue:ns(ue,I,n)}function I(ue){if(!(ue.transformFlags&32))return ue;switch(ue.kind){case 213:{let Ae=N(ue,!1);return w.assertNotNode(Ae,x6),Ae}case 211:case 212:if(km(ue)){let Ae=P(ue,!1,!1);return w.assertNotNode(Ae,x6),Ae}return ns(ue,I,n);case 226:return ue.operatorToken.kind===61?te(ue):ns(ue,I,n);case 220:return re(ue);default:return ns(ue,I,n)}}function h(ue){w.assertNotNode(ue,c8);let Ae=[ue];for(;!ue.questionDotToken&&!V1(ue);)ue=ps(D1(ue.expression),km),w.assertNotNode(ue,c8),Ae.unshift(ue);return{expression:ue.expression,chain:Ae}}function b(ue,Ae,de){let Be=V(ue.expression,Ae,de);return x6(Be)?c.createSyntheticReferenceExpression(c.updateParenthesizedExpression(ue,Be.expression),Be.thisArg):c.updateParenthesizedExpression(ue,Be)}function R(ue,Ae,de){if(km(ue))return P(ue,Ae,de);let Be=xr(ue.expression,I,tn);w.assertNotNode(Be,x6);let Fe;return Ae&&(IY(Be)?Fe=Be:(Fe=c.createTempVariable(u),Be=c.createAssignment(Fe,Be))),Be=ue.kind===211?c.updatePropertyAccessExpression(ue,Be,xr(ue.name,I,sr)):c.updateElementAccessExpression(ue,Be,xr(ue.argumentExpression,I,tn)),Fe?c.createSyntheticReferenceExpression(Be,Fe):Be}function N(ue,Ae){if(km(ue))return P(ue,Ae,!1);if(FC(ue.expression)&&km(jA(ue.expression))){let de=b(ue.expression,!0,!1),Be=ws(ue.arguments,I,tn);return x6(de)?un(c.createFunctionCallCall(de.expression,de.thisArg,Be),ue):c.updateCallExpression(ue,de,void 0,Be)}return ns(ue,I,n)}function V(ue,Ae,de){switch(ue.kind){case 217:return b(ue,Ae,de);case 211:case 212:return R(ue,Ae,de);case 213:return N(ue,Ae);default:return xr(ue,I,tn)}}function P(ue,Ae,de){let{expression:Be,chain:Fe}=h(ue),Ne=V(D1(Be),uG(Fe[0]),!1),Qe=x6(Ne)?Ne.thisArg:void 0,De=x6(Ne)?Ne.expression:Ne,lt=c.restoreOuterExpressions(Be,De,8);IY(De)||(De=c.createTempVariable(u),lt=c.createAssignment(De,lt));let Le=De,je;for(let nt=0;ntvt&&ai(Ye,ws(dt.statements,M,Ic,vt,ht-vt));break}ht++}w.assert(htde(Ye,vt))))],vt,wt===2)}return ns(dt,M,n)}function Fe(dt,wt,vt,Ye,ht){let Et=[];for(let Lt=wt;Ltc&&(c=d)}return c}function d7i(n){let c=0;for(let u of n){let d=l6e(u.statements);if(d===2)return 2;d>c&&(c=d)}return c}function yxt(n){let{factory:c,getEmitHelperFactory:u}=n,d=n.getCompilerOptions(),I,h;return lT(n,M);function b(){if(h.filenameDeclaration)return h.filenameDeclaration.name;let jt=c.createVariableDeclaration(c.createUniqueName("_jsxFileName",48),void 0,void 0,c.createStringLiteral(I.fileName));return h.filenameDeclaration=jt,h.filenameDeclaration.name}function R(jt){return d.jsx===5?"jsxDEV":jt?"jsxs":"jsx"}function N(jt){let mr=R(jt);return P(mr)}function V(){return P("Fragment")}function P(jt){var mr,Pt;let Vr=jt==="createElement"?h.importSpecifier:ele(h.importSpecifier,d),Yr=(Pt=(mr=h.utilizedImplicitRuntimeImports)==null?void 0:mr.get(Vr))==null?void 0:Pt.get(jt);if(Yr)return Yr.name;h.utilizedImplicitRuntimeImports||(h.utilizedImplicitRuntimeImports=new Map);let pr=h.utilizedImplicitRuntimeImports.get(Vr);pr||(pr=new Map,h.utilizedImplicitRuntimeImports.set(Vr,pr));let zr=c.createUniqueName(`_${jt}`,112),$n=c.createImportSpecifier(!1,c.createIdentifier(jt),zr);return nte(zr,$n),pr.set(jt,$n),zr}function M(jt){if(jt.isDeclarationFile)return jt;I=jt,h={},h.importSpecifier=$ce(d,jt);let mr=ns(jt,te,n);EN(mr,n.readEmitHelpers());let Pt=mr.statements;if(h.filenameDeclaration&&(Pt=bZ(Pt.slice(),c.createVariableStatement(void 0,c.createVariableDeclarationList([h.filenameDeclaration],2)))),h.utilizedImplicitRuntimeImports){for(let[Vr,Yr]of on(h.utilizedImplicitRuntimeImports.entries()))if(mm(jt)){let pr=c.createImportDeclaration(void 0,c.createImportClause(!1,void 0,c.createNamedImports(on(Yr.values()))),c.createStringLiteral(Vr),void 0);_N(pr,!1),Pt=bZ(Pt.slice(),pr)}else if(ia(jt)){let pr=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(c.createObjectBindingPattern(on(Yr.values(),zr=>c.createBindingElement(void 0,zr.propertyName,zr.name))),void 0,void 0,c.createCallExpression(c.createIdentifier("require"),void 0,[c.createStringLiteral(Vr)]))],2));_N(pr,!1),Pt=bZ(Pt.slice(),pr)}}return Pt!==mr.statements&&(mr=c.updateSourceFile(mr,Pt)),h=void 0,mr}function te(jt){return jt.transformFlags&2?re(jt):jt}function re(jt){switch(jt.kind){case 284:return Fe(jt,!1);case 285:return Ne(jt,!1);case 288:return Qe(jt,!1);case 294:return Dr(jt);default:return ns(jt,te,n)}}function ue(jt){switch(jt.kind){case 12:return ht(jt);case 294:return Dr(jt);case 284:return Fe(jt,!0);case 285:return Ne(jt,!0);case 288:return Qe(jt,!0);default:return w.failBadSyntaxKind(jt)}}function Ae(jt){return jt.properties.some(mr=>KC(mr)&&(sr(mr.name)&&ao(mr.name)==="__proto__"||bu(mr.name)&&mr.name.text==="__proto__"))}function de(jt){let mr=!1;for(let Pt of jt.attributes.properties)if(k6(Pt)&&(!tu(Pt.expression)||Pt.expression.properties.some(Mx)))mr=!0;else if(mr&&NN(Pt)&&sr(Pt.name)&&Pt.name.escapedText==="key")return!0;return!1}function Be(jt){return h.importSpecifier===void 0||de(jt)}function Fe(jt,mr){return(Be(jt.openingElement)?st:Le)(jt.openingElement,jt.children,mr,jt)}function Ne(jt,mr){return(Be(jt)?st:Le)(jt,void 0,mr,jt)}function Qe(jt,mr){return(h.importSpecifier===void 0?qe:nt)(jt.openingFragment,jt.children,mr,jt)}function De(jt){let mr=lt(jt);return mr&&c.createObjectLiteralExpression([mr])}function lt(jt){let mr=YX(jt);if(O(mr)===1&&!mr[0].dotDotDotToken){let Vr=ue(mr[0]);return Vr&&c.createPropertyAssignment("children",Vr)}let Pt=tr(jt,ue);return O(Pt)?c.createPropertyAssignment("children",c.createArrayLiteralExpression(Pt)):void 0}function Le(jt,mr,Pt,Vr){let Yr=kt(jt),pr=mr&&mr.length?lt(mr):void 0,zr=be(jt.attributes.properties,Pi=>!!Pi.name&&sr(Pi.name)&&Pi.name.escapedText==="key"),$n=zr?Gt(jt.attributes.properties,Pi=>Pi!==zr):jt.attributes.properties,bi=O($n)?It($n,pr):c.createObjectLiteralExpression(pr?[pr]:v);return je(Yr,bi,zr,mr||v,Pt,Vr)}function je(jt,mr,Pt,Vr,Yr,pr){var zr;let $n=YX(Vr),bi=O($n)>1||!!((zr=$n[0])!=null&&zr.dotDotDotToken),Pi=[jt,mr];if(Pt&&Pi.push(Ye(Pt.initializer)),d.jsx===5){let gi=Tp(I);if(gi&&Gc(gi)){Pt===void 0&&Pi.push(c.createVoidZero()),Pi.push(bi?c.createTrue():c.createFalse());let jn=Ll(gi,pr.pos);Pi.push(c.createObjectLiteralExpression([c.createPropertyAssignment("fileName",b()),c.createPropertyAssignment("lineNumber",c.createNumericLiteral(jn.line+1)),c.createPropertyAssignment("columnNumber",c.createNumericLiteral(jn.character+1))])),Pi.push(c.createThis())}}let Ns=un(c.createCallExpression(N(bi),void 0,Pi),pr);return Yr&&l0(Ns),Ns}function st(jt,mr,Pt,Vr){let Yr=kt(jt),pr=jt.attributes.properties,zr=O(pr)?It(pr):c.createNull(),$n=h.importSpecifier===void 0?HKe(c,n.getEmitResolver().getJsxFactoryEntity(I),d.reactNamespace,jt):P("createElement"),bi=sRt(c,$n,Yr,zr,tr(mr,ue),Vr);return Pt&&l0(bi),bi}function nt(jt,mr,Pt,Vr){let Yr;if(mr&&mr.length){let pr=De(mr);pr&&(Yr=pr)}return je(V(),Yr||c.createObjectLiteralExpression([]),void 0,mr,Pt,Vr)}function qe(jt,mr,Pt,Vr){let Yr=oRt(c,n.getEmitResolver().getJsxFactoryEntity(I),n.getEmitResolver().getJsxFragmentFactoryEntity(I),d.reactNamespace,tr(mr,ue),jt,Vr);return Pt&&l0(Yr),Yr}function it(jt){return tu(jt.expression)&&!Ae(jt.expression)?Ar(jt.expression.properties,mr=>w.checkDefined(xr(mr,te,EB))):c.createSpreadAssignment(w.checkDefined(xr(jt.expression,te,tn)))}function It(jt,mr){let Pt=iA(d);return Pt&&Pt>=5?c.createObjectLiteralExpression(dt(jt,mr)):wt(jt,mr)}function dt(jt,mr){let Pt=or(ka(jt,k6,(Vr,Yr)=>or(Ot(Vr,pr=>Yr?it(pr):vt(pr)))));return mr&&Pt.push(mr),Pt}function wt(jt,mr){let Pt=[],Vr=[];for(let pr of jt){if(k6(pr)){if(tu(pr.expression)&&!Ae(pr.expression)){for(let zr of pr.expression.properties){if(Mx(zr)){Yr(),Pt.push(w.checkDefined(xr(zr.expression,te,tn)));continue}Vr.push(w.checkDefined(xr(zr,te)))}continue}Yr(),Pt.push(w.checkDefined(xr(pr.expression,te,tn)));continue}Vr.push(vt(pr))}return mr&&Vr.push(mr),Yr(),Pt.length&&!tu(Pt[0])&&Pt.unshift(c.createObjectLiteralExpression()),wu(Pt)||u().createAssignHelper(Pt);function Yr(){Vr.length&&(Pt.push(c.createObjectLiteralExpression(Vr)),Vr=[])}}function vt(jt){let mr=Zt(jt),Pt=Ye(jt.initializer);return c.createPropertyAssignment(mr,Pt)}function Ye(jt){if(jt===void 0)return c.createTrue();if(jt.kind===11){let mr=jt.singleQuote!==void 0?jt.singleQuote:!Ace(jt,I),Pt=c.createStringLiteral(Lt(jt.text)||jt.text,mr);return un(Pt,jt)}return jt.kind===294?jt.expression===void 0?c.createTrue():w.checkDefined(xr(jt.expression,te,tn)):Ox(jt)?Fe(jt,!1):u4(jt)?Ne(jt,!1):gY(jt)?Qe(jt,!1):w.failBadSyntaxKind(jt)}function ht(jt){let mr=Et(jt.text);return mr===void 0?void 0:c.createStringLiteral(mr)}function Et(jt){let mr,Pt=0,Vr=-1;for(let Yr=0;Yr{if(pr)return Ss(parseInt(pr,10));if(zr)return Ss(parseInt(zr,16));{let bi=p7i.get($n);return bi?Ss(bi):mr}})}function Lt(jt){let mr=Tt(jt);return mr===jt?void 0:mr}function kt(jt){if(jt.kind===284)return kt(jt.openingElement);{let mr=jt.tagName;return sr(mr)&&HX(mr.escapedText)?c.createStringLiteral(ao(mr)):oT(mr)?c.createStringLiteral(ao(mr.namespace)+":"+ao(mr.name)):Ohe(c,mr)}}function Zt(jt){let mr=jt.name;if(sr(mr)){let Pt=ao(mr);return/^[A-Za-z_]\w*$/.test(Pt)?mr:c.createStringLiteral(Pt)}return c.createStringLiteral(ao(mr.namespace)+":"+ao(mr.name))}function Dr(jt){let mr=xr(jt.expression,te,tn);return jt.dotDotDotToken?c.createSpreadElement(mr):mr}}var p7i=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 bxt(n){let{factory:c,hoistVariableDeclaration:u}=n;return lT(n,d);function d(N){return N.isDeclarationFile?N:ns(N,I,n)}function I(N){if(!(N.transformFlags&512))return N;switch(N.kind){case 226:return h(N);default:return ns(N,I,n)}}function h(N){switch(N.operatorToken.kind){case 68:return b(N);case 43:return R(N);default:return ns(N,I,n)}}function b(N){let V,P,M=xr(N.left,I,tn),te=xr(N.right,I,tn);if(hA(M)){let re=c.createTempVariable(u),ue=c.createTempVariable(u);V=un(c.createElementAccessExpression(un(c.createAssignment(re,M.expression),M.expression),un(c.createAssignment(ue,M.argumentExpression),M.argumentExpression)),M),P=un(c.createElementAccessExpression(re,ue),M)}else if(Io(M)){let re=c.createTempVariable(u);V=un(c.createPropertyAccessExpression(un(c.createAssignment(re,M.expression),M.expression),M.name),M),P=un(c.createPropertyAccessExpression(re,M.name),M)}else V=M,P=M;return un(c.createAssignment(V,un(c.createGlobalMethodCall("Math","pow",[P,te]),N)),N)}function R(N){let V=xr(N.left,I,tn),P=xr(N.right,I,tn);return un(c.createGlobalMethodCall("Math","pow",[V,P]),N)}}function wGr(n,c){return{kind:n,expression:c}}function Ext(n){let{factory:c,getEmitHelperFactory:u,startLexicalEnvironment:d,resumeLexicalEnvironment:I,endLexicalEnvironment:h,hoistVariableDeclaration:b}=n,R=n.getCompilerOptions(),N=n.getEmitResolver(),V=n.onSubstituteNode,P=n.onEmitNode;n.onEmitNode=Y2,n.onSubstituteNode=H2;let M,te,re,ue;function Ae(rt){ue=Hr(ue,c.createVariableDeclaration(rt))}let de,Be;return lT(n,Fe);function Fe(rt){if(rt.isDeclarationFile)return rt;M=rt,te=rt.text;let qr=It(rt);return EN(qr,n.readEmitHelpers()),M=void 0,te=void 0,ue=void 0,re=0,qr}function Ne(rt,qr){let Qn=re;return re=(re&~rt|qr)&32767,Qn}function Qe(rt,qr,Qn){re=(re&~qr|Qn)&-32768|rt}function De(rt){return(re&8192)!==0&&rt.kind===253&&!rt.expression}function lt(rt){return rt.transformFlags&4194304&&(k_(rt)||H0(rt)||hV(rt)||Ed(rt)||xle(rt)||cte(rt)||Gle(rt)||ob(rt)||dY(rt)||nC(rt)||MR(rt,!1)||mc(rt))}function Le(rt){return(rt.transformFlags&1024)!==0||de!==void 0||re&8192&<(rt)||MR(rt,!1)&&zc(rt)||(kE(rt)&1)!==0}function je(rt){return Le(rt)?it(rt,!1):rt}function st(rt){return Le(rt)?it(rt,!0):rt}function nt(rt){if(Le(rt)){let qr=Tp(rt);if(Ql(qr)&&IC(qr)){let Qn=Ne(32670,16449),Jn=it(rt,!1);return Qe(Qn,229376,0),Jn}return it(rt,!1)}return rt}function qe(rt){return rt.kind===108?Xb(rt,!0):je(rt)}function it(rt,qr){switch(rt.kind){case 126:return;case 263:return kt(rt);case 231:return Zt(rt);case 169:return Ku(rt);case 262:return Kr(rt);case 219:return Pn(rt);case 218:return an(rt);case 260:return Ii(rt);case 80:return Tt(rt);case 261:return Vt(rt);case 255:return dt(rt);case 269:return wt(rt);case 241:return ar(rt,!1);case 252:case 251:return Lt(rt);case 256:return oo(rt);case 246:case 247:return Yc(rt,void 0);case 248:return fl(rt,void 0);case 249:return Da(rt,void 0);case 250:return ki(rt,void 0);case 244:return sn(rt);case 210:return Qd(rt);case 299:return hc(rt);case 304:return zC(rt);case 167:return Xf(rt);case 209:return sf(rt);case 213:return Fm(rt);case 214:return qC(rt);case 217:return Me(rt,qr);case 226:return ur(rt,qr);case 355:return Re(rt,qr);case 15:case 16:case 17:case 18:return PA(rt);case 11:return XI(rt);case 9:return bm(rt);case 215:return rp(rt);case 228:return Hd(rt);case 229:return Gm(rt);case 230:return vA(rt);case 108:return Xb(rt,!1);case 110:return Et(rt);case 236:return dT(rt);case 174:return Wg(rt);case 177:case 178:return nf(rt);case 243:return bt(rt);case 253:return ht(rt);case 222:return Kt(rt);default:return ns(rt,je,n)}}function It(rt){let qr=Ne(8064,64),Qn=[],Jn=[];d();let cs=c.copyPrologue(rt.statements,Qn,!1,je);return ai(Jn,ws(rt.statements,je,Ic,cs)),ue&&Jn.push(c.createVariableStatement(void 0,c.createVariableDeclarationList(ue))),c.mergeLexicalEnvironment(Qn,h()),St(Qn,rt),Qe(qr,0,0),c.updateSourceFile(rt,un(c.createNodeArray(vi(Qn,Jn)),rt.statements))}function dt(rt){if(de!==void 0){let qr=de.allowedNonLabeledJumps;de.allowedNonLabeledJumps|=2;let Qn=ns(rt,je,n);return de.allowedNonLabeledJumps=qr,Qn}return ns(rt,je,n)}function wt(rt){let qr=Ne(7104,0),Qn=ns(rt,je,n);return Qe(qr,0,0),Qn}function vt(rt){return Ho(c.createReturnStatement(Ye()),rt)}function Ye(){return c.createUniqueName("_this",48)}function ht(rt){return de?(de.nonLocalJumps|=8,De(rt)&&(rt=vt(rt)),c.createReturnStatement(c.createObjectLiteralExpression([c.createPropertyAssignment(c.createIdentifier("value"),rt.expression?w.checkDefined(xr(rt.expression,je,tn)):c.createVoidZero())]))):De(rt)?vt(rt):ns(rt,je,n)}function Et(rt){return re|=65536,re&2&&!(re&16384)&&(re|=131072),de?re&2?(de.containsLexicalThis=!0,rt):de.thisName||(de.thisName=c.createUniqueName("this")):rt}function Kt(rt){return ns(rt,st,n)}function Tt(rt){return de&&N.isArgumentsLocalBinding(rt)?de.argumentsName||(de.argumentsName=c.createUniqueName("arguments")):rt.flags&256?Ho(un(c.createIdentifier(Sc(rt.escapedText)),rt),rt):rt}function Lt(rt){if(de){let qr=rt.kind===252?2:4;if(!(rt.label&&de.labels&&de.labels.get(ao(rt.label))||!rt.label&&de.allowedNonLabeledJumps&qr)){let Jn,cs=rt.label;cs?rt.kind===252?(Jn=`break-${cs.escapedText}`,tt(de,!0,ao(cs),Jn)):(Jn=`continue-${cs.escapedText}`,tt(de,!1,ao(cs),Jn)):rt.kind===252?(de.nonLocalJumps|=2,Jn="break"):(de.nonLocalJumps|=4,Jn="continue");let Ls=c.createStringLiteral(Jn);if(de.loopOutParameters.length){let $o=de.loopOutParameters,Ua;for(let Ge=0;Ge<$o.length;Ge++){let Ht=Yb($o[Ge],1);Ge===0?Ua=Ht:Ua=c.createBinaryExpression(Ua,28,Ht)}Ls=c.createBinaryExpression(Ua,28,Ls)}return c.createReturnStatement(Ls)}}return ns(rt,je,n)}function kt(rt){let qr=c.createVariableDeclaration(c.getLocalName(rt,!0),void 0,void 0,Dr(rt));Ho(qr,rt);let Qn=[],Jn=c.createVariableStatement(void 0,c.createVariableDeclarationList([qr]));if(Ho(Jn,rt),un(Jn,rt),l0(Jn),Qn.push(Jn),ba(rt,32)){let cs=ba(rt,2048)?c.createExportDefault(c.getLocalName(rt)):c.createExternalModuleExport(c.getLocalName(rt));Ho(cs,Jn),Qn.push(cs)}return hl(Qn)}function Zt(rt){return Dr(rt)}function Dr(rt){rt.name&&ub();let qr=rV(rt),Qn=c.createFunctionExpression(void 0,void 0,void 0,void 0,qr?[c.createParameterDeclaration(void 0,void 0,hC())]:[],void 0,jt(rt,qr));co(Qn,Sg(rt)&131072|1048576);let Jn=c.createPartiallyEmittedExpression(Qn);n4(Jn,rt.end),co(Jn,3072);let cs=c.createPartiallyEmittedExpression(Jn);n4(cs,Ju(te,rt.pos)),co(cs,3072);let Ls=c.createParenthesizedExpression(c.createCallExpression(cs,void 0,qr?[w.checkDefined(xr(qr.expression,je,tn))]:[]));return i4(Ls,3,"* @class "),Ls}function jt(rt,qr){let Qn=[],Jn=c.getInternalName(rt),cs=mee(Jn)?c.getGeneratedNameForNode(Jn):Jn;d(),mr(Qn,rt,qr),Pt(Qn,rt,cs,qr),_r(Qn,rt);let Ls=Vce(Ju(te,rt.members.end),20),$o=c.createPartiallyEmittedExpression(cs);n4($o,Ls.end),co($o,3072);let Ua=c.createReturnStatement($o);_6(Ua,Ls.pos),co(Ua,3840),Qn.push(Ua),kS(Qn,h());let Ge=c.createBlock(un(c.createNodeArray(Qn),rt.members),!0);return co(Ge,3072),Ge}function mr(rt,qr,Qn){Qn&&rt.push(un(c.createExpressionStatement(u().createExtendsHelper(c.getInternalName(qr))),Qn))}function Pt(rt,qr,Qn,Jn){let cs=de;de=void 0;let Ls=Ne(32662,73),$o=dN(qr),Ua=X2($o,Jn!==void 0),Ge=c.createFunctionDeclaration(void 0,void 0,Qn,void 0,Vr($o,Ua),void 0,$n($o,qr,Jn,Ua));un(Ge,$o||qr),Jn&&co(Ge,16),rt.push(Ge),Qe(Ls,229376,0),de=cs}function Vr(rt,qr){return hI(rt&&!qr?rt.parameters:void 0,je,n)||[]}function Yr(rt,qr){let Qn=[];I(),c.mergeLexicalEnvironment(Qn,h()),qr&&Qn.push(c.createReturnStatement(cg()));let Jn=c.createNodeArray(Qn);un(Jn,rt.members);let cs=c.createBlock(Jn,!0);return un(cs,rt),co(cs,3072),cs}function pr(rt){return Rp(rt)&&he(rt.declarationList.declarations,qr=>sr(qr.name)&&!qr.initializer)}function zr(rt){if(Nf(rt))return!0;if(!(rt.transformFlags&134217728))return!1;switch(rt.kind){case 219:case 218:case 262:case 176:case 175:return!1;case 177:case 178:case 174:case 172:{let qr=rt;return xg(qr.name)?!!mu(qr.name,zr):!1}}return!!mu(rt,zr)}function $n(rt,qr,Qn,Jn){let cs=!!Qn&&ZC(Qn.expression).kind!==106;if(!rt)return Yr(qr,cs);let Ls=[],$o=[];I();let Ua=c.copyStandardPrologue(rt.body.statements,Ls,0);(Jn||zr(rt.body))&&(re|=8192),ai($o,ws(rt.body.statements,je,Ic,Ua));let Ge=cs||re&8192;BA(Ls,rt),rn(Ls,rt,Jn),Qt(Ls,rt),Ge?br(Ls,rt,Nc()):St(Ls,rt),c.mergeLexicalEnvironment(Ls,h()),Ge&&!nc(rt.body)&&$o.push(c.createReturnStatement(Ye()));let Ht=c.createBlock(un(c.createNodeArray([...Ls,...$o]),rt.body.statements),!0);return un(Ht,rt.body),qa(Ht,rt.body,Jn)}function bi(rt){return Ip(rt)&&ao(rt)==="_this"}function Pi(rt){return Ip(rt)&&ao(rt)==="_super"}function Ns(rt){return Rp(rt)&&rt.declarationList.declarations.length===1&&gi(rt.declarationList.declarations[0])}function gi(rt){return zs(rt)&&bi(rt.name)&&!!rt.initializer}function jn(rt){return fm(rt,!0)&&bi(rt.left)}function xs(rt){return cu(rt)&&Io(rt.expression)&&Pi(rt.expression.expression)&&sr(rt.expression.name)&&(ao(rt.expression.name)==="call"||ao(rt.expression.name)==="apply")&&rt.arguments.length>=1&&rt.arguments[0].kind===110}function Ec(rt){return no(rt)&&rt.operatorToken.kind===57&&rt.right.kind===110&&xs(rt.left)}function xi(rt){return no(rt)&&rt.operatorToken.kind===56&&no(rt.left)&&rt.left.operatorToken.kind===38&&Pi(rt.left.left)&&rt.left.right.kind===106&&xs(rt.right)&&ao(rt.right.expression.name)==="apply"}function rc(rt){return no(rt)&&rt.operatorToken.kind===57&&rt.right.kind===110&&xi(rt.left)}function Vl(rt){return jn(rt)&&Ec(rt.right)}function ul(rt){return jn(rt)&&rc(rt.right)}function Cc(rt){return xs(rt)||Ec(rt)||Vl(rt)||xi(rt)||rc(rt)||ul(rt)}function _s(rt){for(let qr=0;qr0;Jn--){let cs=rt.statements[Jn];if(k_(cs)&&cs.expression&&bi(cs.expression)){let Ls=rt.statements[Jn-1],$o;if(Hf(Ls)&&Vl(ZC(Ls.expression)))$o=Ls.expression;else if(Qn&&Ns(Ls)){let Ht=Ls.declarationList.declarations[0];Cc(ZC(Ht.initializer))&&($o=c.createAssignment(Ye(),Ht.initializer))}if(!$o)break;let Ua=c.createReturnStatement($o);Ho(Ua,Ls),un(Ua,Ls);let Ge=c.createNodeArray([...rt.statements.slice(0,Jn-1),Ua,...rt.statements.slice(Jn+1)]);return un(Ge,rt.statements),c.updateBlock(rt,Ge)}}return rt}function ir(rt){if(Ns(rt)){if(rt.declarationList.declarations[0].initializer.kind===110)return}else if(jn(rt))return c.createPartiallyEmittedExpression(rt.right,rt);switch(rt.kind){case 219:case 218:case 262:case 176:case 175:return rt;case 177:case 178:case 174:case 172:{let qr=rt;return xg(qr.name)?c.replacePropertyName(qr,ns(qr.name,ir,void 0)):rt}}return ns(rt,ir,void 0)}function ni(rt,qr){if(qr.transformFlags&16384||re&65536||re&131072)return rt;for(let Qn of qr.statements)if(Qn.transformFlags&134217728&&!Fke(Qn))return rt;return c.updateBlock(rt,ws(rt.statements,ir,Ic))}function gs(rt){if(xs(rt)&&rt.arguments.length===2&&sr(rt.arguments[1])&&ao(rt.arguments[1])==="arguments")return c.createLogicalAnd(c.createStrictInequality(hC(),c.createNull()),rt);switch(rt.kind){case 219:case 218:case 262:case 176:case 175:return rt;case 177:case 178:case 174:case 172:{let qr=rt;return xg(qr.name)?c.replacePropertyName(qr,ns(qr.name,gs,void 0)):rt}}return ns(rt,gs,void 0)}function Hs(rt){return c.updateBlock(rt,ws(rt.statements,gs,Ic))}function qa(rt,qr,Qn){let Jn=rt;return rt=_s(rt),rt=Wu(rt,qr),rt!==Jn&&(rt=ni(rt,qr)),Qn&&(rt=Hs(rt)),rt}function nc(rt){if(rt.kind===253)return!0;if(rt.kind===245){let qr=rt;if(qr.elseStatement)return nc(qr.thenStatement)&&nc(qr.elseStatement)}else if(rt.kind===241){let qr=qo(rt.statements);if(qr&&nc(qr))return!0}return!1}function Nc(){return co(c.createThis(),8)}function cg(){return c.createLogicalOr(c.createLogicalAnd(c.createStrictInequality(hC(),c.createNull()),c.createFunctionApplyCall(hC(),Nc(),c.createIdentifier("arguments"))),Nc())}function Ku(rt){if(!rt.dotDotDotToken)return pu(rt.name)?Ho(un(c.createParameterDeclaration(void 0,void 0,c.getGeneratedNameForNode(rt),void 0,void 0,void 0),rt),rt):rt.initializer?Ho(un(c.createParameterDeclaration(void 0,void 0,rt.name,void 0,void 0,void 0),rt),rt):rt}function Bi(rt){return rt.initializer!==void 0||pu(rt.name)}function BA(rt,qr){if(!lr(qr.parameters,Bi))return!1;let Qn=!1;for(let Jn of qr.parameters){let{name:cs,initializer:Ls,dotDotDotToken:$o}=Jn;$o||(pu(cs)?Qn=kr(rt,Jn,cs,Ls)||Qn:Ls&&(en(rt,Jn,cs,Ls),Qn=!0))}return Qn}function kr(rt,qr,Qn,Jn){return Qn.elements.length>0?(bZ(rt,co(c.createVariableStatement(void 0,c.createVariableDeclarationList(CY(qr,je,n,0,c.getGeneratedNameForNode(qr)))),2097152)),!0):Jn?(bZ(rt,co(c.createExpressionStatement(c.createAssignment(c.getGeneratedNameForNode(qr),w.checkDefined(xr(Jn,je,tn)))),2097152)),!0):!1}function en(rt,qr,Qn,Jn){Jn=w.checkDefined(xr(Jn,je,tn));let cs=c.createIfStatement(c.createTypeCheck(c.cloneNode(Qn),"undefined"),co(un(c.createBlock([c.createExpressionStatement(co(un(c.createAssignment(co(kA(un(c.cloneNode(Qn),Qn),Qn.parent),96),co(Jn,96|Sg(Jn)|3072)),qr),3072))]),qr),3905));l0(cs),un(cs,qr),co(cs,2101056),bZ(rt,cs)}function ct(rt,qr){return!!(rt&&rt.dotDotDotToken&&!qr)}function rn(rt,qr,Qn){let Jn=[],cs=qo(qr.parameters);if(!ct(cs,Qn))return!1;let Ls=cs.name.kind===80?kA(un(c.cloneNode(cs.name),cs.name),cs.name.parent):c.createTempVariable(void 0);co(Ls,96);let $o=cs.name.kind===80?c.cloneNode(cs.name):Ls,Ua=qr.parameters.length-1,Ge=c.createLoopVariable();Jn.push(co(un(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(Ls,void 0,void 0,c.createArrayLiteralExpression([]))])),cs),2097152));let Ht=c.createForStatement(un(c.createVariableDeclarationList([c.createVariableDeclaration(Ge,void 0,void 0,c.createNumericLiteral(Ua))]),cs),un(c.createLessThan(Ge,c.createPropertyAccessExpression(c.createIdentifier("arguments"),"length")),cs),un(c.createPostfixIncrement(Ge),cs),c.createBlock([l0(un(c.createExpressionStatement(c.createAssignment(c.createElementAccessExpression($o,Ua===0?Ge:c.createSubtract(Ge,c.createNumericLiteral(Ua))),c.createElementAccessExpression(c.createIdentifier("arguments"),Ge))),cs))]));return co(Ht,2097152),l0(Ht),Jn.push(Ht),cs.name.kind!==80&&Jn.push(co(un(c.createVariableStatement(void 0,c.createVariableDeclarationList(CY(cs,je,n,0,$o))),cs),2097152)),E8(rt,Jn),!0}function St(rt,qr){return re&131072&&qr.kind!==219?(br(rt,qr,c.createThis()),!0):!1}function br(rt,qr,Qn){LB();let Jn=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(Ye(),void 0,void 0,Qn)]));co(Jn,2100224),Qg(Jn,qr),bZ(rt,Jn)}function Qt(rt,qr){if(re&32768){let Qn;switch(qr.kind){case 219:return rt;case 174:case 177:case 178:Qn=c.createVoidZero();break;case 176:Qn=c.createPropertyAccessExpression(co(c.createThis(),8),"constructor");break;case 262:case 218:Qn=c.createConditionalExpression(c.createLogicalAnd(co(c.createThis(),8),c.createBinaryExpression(co(c.createThis(),8),104,c.getLocalName(qr))),void 0,c.createPropertyAccessExpression(co(c.createThis(),8),"constructor"),void 0,c.createVoidZero());break;default:return w.failBadSyntaxKind(qr)}let Jn=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(c.createUniqueName("_newTarget",48),void 0,void 0,Qn)]));co(Jn,2100224),bZ(rt,Jn)}return rt}function _r(rt,qr){for(let Qn of qr.members)switch(Qn.kind){case 240:rt.push(Pr(Qn));break;case 174:rt.push(ti(ZN(qr,Qn),Qn,qr));break;case 177:case 178:let Jn=xx(qr.members,Qn);Qn===Jn.firstAccessor&&rt.push(cr(ZN(qr,Qn),Jn,qr));break;case 176:case 175:break;default:w.failBadSyntaxKind(Qn,M&&M.fileName);break}}function Pr(rt){return un(c.createEmptyStatement(),rt)}function ti(rt,qr,Qn){let Jn=JS(qr),cs=Gx(qr),Ls=wn(qr,qr,void 0,Qn),$o=xr(qr.name,je,NI);w.assert($o);let Ua;if(!kc($o)&&Lee(n.getCompilerOptions())){let Ht=xg($o)?$o.expression:sr($o)?c.createStringLiteral(Sc($o.escapedText)):$o;Ua=c.createObjectDefinePropertyCall(rt,Ht,c.createPropertyDescriptor({value:Ls,enumerable:!1,writable:!0,configurable:!0}))}else{let Ht=p4(c,rt,$o,qr.name);Ua=c.createAssignment(Ht,Ls)}co(Ls,3072),Qg(Ls,cs);let Ge=un(c.createExpressionStatement(Ua),qr);return Ho(Ge,qr),mA(Ge,Jn),co(Ge,96),Ge}function cr(rt,qr,Qn){let Jn=c.createExpressionStatement(kn(rt,qr,Qn,!1));return co(Jn,3072),Qg(Jn,Gx(qr.firstAccessor)),Jn}function kn(rt,{firstAccessor:qr,getAccessor:Qn,setAccessor:Jn},cs,Ls){let $o=kA(un(c.cloneNode(rt),rt),rt.parent);co($o,3136),Qg($o,qr.name);let Ua=xr(qr.name,je,NI);if(w.assert(Ua),kc(Ua))return w.failBadSyntaxKind(Ua,"Encountered unhandled private identifier while transforming ES2015.");let Ge=JKe(c,Ua);co(Ge,3104),Qg(Ge,qr.name);let Ht=[];if(Qn){let Rs=wn(Qn,void 0,void 0,cs);Qg(Rs,Gx(Qn)),co(Rs,1024);let _c=c.createPropertyAssignment("get",Rs);mA(_c,JS(Qn)),Ht.push(_c)}if(Jn){let Rs=wn(Jn,void 0,void 0,cs);Qg(Rs,Gx(Jn)),co(Rs,1024);let _c=c.createPropertyAssignment("set",Rs);mA(_c,JS(Jn)),Ht.push(_c)}Ht.push(c.createPropertyAssignment("enumerable",Qn||Jn?c.createFalse():c.createTrue()),c.createPropertyAssignment("configurable",c.createTrue()));let En=c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("Object"),"defineProperty"),void 0,[$o,Ge,c.createObjectLiteralExpression(Ht,!0)]);return Ls&&l0(En),En}function Pn(rt){rt.transformFlags&16384&&!(re&16384)&&(re|=131072);let qr=de;de=void 0;let Qn=Ne(15232,66),Jn=c.createFunctionExpression(void 0,void 0,void 0,void 0,hI(rt.parameters,je,n),void 0,Pe(rt));return un(Jn,rt),Ho(Jn,rt),co(Jn,16),Qe(Qn,0,0),de=qr,Jn}function an(rt){let qr=Sg(rt)&524288?Ne(32662,69):Ne(32670,65),Qn=de;de=void 0;let Jn=hI(rt.parameters,je,n),cs=Pe(rt),Ls=re&32768?c.getLocalName(rt):rt.name;return Qe(qr,229376,0),de=Qn,c.updateFunctionExpression(rt,void 0,rt.asteriskToken,Ls,void 0,Jn,void 0,cs)}function Kr(rt){let qr=de;de=void 0;let Qn=Ne(32670,65),Jn=hI(rt.parameters,je,n),cs=Pe(rt),Ls=re&32768?c.getLocalName(rt):rt.name;return Qe(Qn,229376,0),de=qr,c.updateFunctionDeclaration(rt,ws(rt.modifiers,je,gg),rt.asteriskToken,Ls,void 0,Jn,void 0,cs)}function wn(rt,qr,Qn,Jn){let cs=de;de=void 0;let Ls=Jn&&Sa(Jn)&&!$u(rt)?Ne(32670,73):Ne(32670,65),$o=hI(rt.parameters,je,n),Ua=Pe(rt);return re&32768&&!Qn&&(rt.kind===262||rt.kind===218)&&(Qn=c.getGeneratedNameForNode(rt)),Qe(Ls,229376,0),de=cs,Ho(un(c.createFunctionExpression(void 0,rt.asteriskToken,Qn,void 0,$o,void 0,Ua),qr),rt)}function Pe(rt){let qr=!1,Qn=!1,Jn,cs,Ls=[],$o=[],Ua=rt.body,Ge;if(I(),mc(Ua)&&(Ge=c.copyStandardPrologue(Ua.statements,Ls,0,!1),Ge=c.copyCustomPrologue(Ua.statements,$o,Ge,je,gN),Ge=c.copyCustomPrologue(Ua.statements,$o,Ge,je,rce)),qr=BA($o,rt)||qr,qr=rn($o,rt,!1)||qr,mc(Ua))Ge=c.copyCustomPrologue(Ua.statements,$o,Ge,je),Jn=Ua.statements,ai($o,ws(Ua.statements,je,Ic,Ge)),!qr&&Ua.multiLine&&(qr=!0);else{w.assert(rt.kind===219),Jn=s6(Ua,-1);let En=rt.equalsGreaterThanToken;!qd(En)&&!qd(Ua)&&(a6(En,Ua,M)?Qn=!0:qr=!0);let Rs=xr(Ua,je,tn),_c=c.createReturnStatement(Rs);un(_c,Ua),RI(_c,Ua),co(_c,2880),$o.push(_c),cs=Ua}if(c.mergeLexicalEnvironment(Ls,h()),Qt(Ls,rt),St(Ls,rt),lr(Ls)&&(qr=!0),$o.unshift(...Ls),mc(Ua)&&Cn($o,Ua.statements))return Ua;let Ht=c.createBlock(un(c.createNodeArray($o),Jn),qr);return un(Ht,rt.body),!qr&&Qn&&co(Ht,1),cs&&Axe(Ht,20,cs),Ho(Ht,rt.body),Ht}function ar(rt,qr){if(qr)return ns(rt,je,n);let Qn=re&256?Ne(7104,512):Ne(6976,128),Jn=ns(rt,je,n);return Qe(Qn,0,0),Jn}function sn(rt){return ns(rt,st,n)}function Me(rt,qr){return ns(rt,qr?st:je,n)}function ur(rt,qr){return kv(rt)?m4(rt,je,n,0,!qr):rt.operatorToken.kind===28?c.updateBinaryExpression(rt,w.checkDefined(xr(rt.left,st,tn)),rt.operatorToken,w.checkDefined(xr(rt.right,qr?st:je,tn))):ns(rt,je,n)}function Re(rt,qr){if(qr)return ns(rt,st,n);let Qn;for(let cs=0;csGe.name)),Ua=Jn?c.createYieldExpression(c.createToken(42),co($o,8388608)):$o;if(Ls)cs.push(c.createExpressionStatement(Ua)),rf(qr.loopOutParameters,1,0,cs);else{let Ge=c.createUniqueName("state"),Ht=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(Ge,void 0,void 0,Ua)]));if(cs.push(Ht),rf(qr.loopOutParameters,1,0,cs),qr.nonLocalJumps&8){let En;Qn?(Qn.nonLocalJumps|=8,En=c.createReturnStatement(Ge)):En=c.createReturnStatement(c.createPropertyAccessExpression(Ge,"value")),cs.push(c.createIfStatement(c.createTypeCheck(Ge,"object"),En))}if(qr.nonLocalJumps&2&&cs.push(c.createIfStatement(c.createStrictEquality(Ge,c.createStringLiteral("break")),c.createBreakStatement())),qr.labeledNonLocalBreaks||qr.labeledNonLocalContinues){let En=[];gr(qr.labeledNonLocalBreaks,!0,Ge,Qn,En),gr(qr.labeledNonLocalContinues,!1,Ge,Qn,En),cs.push(c.createSwitchStatement(Ge,c.createCaseBlock(En)))}}return cs}function tt(rt,qr,Qn,Jn){qr?(rt.labeledNonLocalBreaks||(rt.labeledNonLocalBreaks=new Map),rt.labeledNonLocalBreaks.set(Qn,Jn)):(rt.labeledNonLocalContinues||(rt.labeledNonLocalContinues=new Map),rt.labeledNonLocalContinues.set(Qn,Jn))}function gr(rt,qr,Qn,Jn,cs){rt&&rt.forEach((Ls,$o)=>{let Ua=[];if(!Jn||Jn.labels&&Jn.labels.get($o)){let Ge=c.createIdentifier($o);Ua.push(qr?c.createBreakStatement(Ge):c.createContinueStatement(Ge))}else tt(Jn,qr,$o,Ls),Ua.push(c.createReturnStatement(Qn));cs.push(c.createCaseClause(c.createStringLiteral(Ls),Ua))})}function mn(rt,qr,Qn,Jn,cs){let Ls=qr.name;if(pu(Ls))for(let $o of Ls.elements)ef($o)||mn(rt,$o,Qn,Jn,cs);else{Qn.push(c.createParameterDeclaration(void 0,void 0,Ls));let $o=N.hasNodeCheckFlag(qr,65536);if($o||cs){let Ua=c.createUniqueName("out_"+ao(Ls)),Ge=0;$o&&(Ge|=1),kB(rt)&&(rt.initializer&&N.isBindingCapturedByNode(rt.initializer,qr)&&(Ge|=2),(rt.condition&&N.isBindingCapturedByNode(rt.condition,qr)||rt.incrementor&&N.isBindingCapturedByNode(rt.incrementor,qr))&&(Ge|=1)),Jn.push({flags:Ge,originalName:Ls,outParamName:Ua})}}}function Ri(rt,qr,Qn,Jn){let cs=qr.properties,Ls=cs.length;for(let $o=Jn;$oRp(uI)&&!!$s(uI.declarationList.declarations).initializer,Jn=de;de=void 0;let cs=ws(qr.statements,nt,Ic);de=Jn;let Ls=Gt(cs,Qn),$o=Gt(cs,uI=>!Qn(uI)),Ge=ps($s(Ls),Rp).declarationList.declarations[0],Ht=ZC(Ge.initializer),En=eo(Ht,fm);!En&&no(Ht)&&Ht.operatorToken.kind===28&&(En=eo(Ht.left,fm));let Rs=ps(En?ZC(En.right):Ht,cu),_c=ps(ZC(Rs.expression),WA),Iu=_c.body.statements,Wl=0,Eu=-1,od=[];if(En){let uI=eo(Iu[Wl],Hf);uI&&(od.push(uI),Wl++),od.push(Iu[Wl]),Wl++,od.push(c.createExpressionStatement(c.createAssignment(En.left,ps(Ge.name,sr))))}for(;!k_(ts(Iu,Eu));)Eu--;ai(od,Iu,Wl,Eu),Eu<-1&&ai(od,Iu,Eu+1);let sA=eo(ts(Iu,Eu),k_);for(let uI of $o)k_(uI)&&sA?.expression&&!sr(sA.expression)?od.push(sA):od.push(uI);return ai(od,Ls,1),c.restoreOuterExpressions(rt.expression,c.restoreOuterExpressions(Ge.initializer,c.restoreOuterExpressions(En&&En.right,c.updateCallExpression(Rs,c.restoreOuterExpressions(Rs.expression,c.updateFunctionExpression(_c,void 0,void 0,void 0,void 0,_c.parameters,void 0,c.updateBlock(_c.body,od))),void 0,Rs.arguments))))}function GI(rt,qr){if(rt.transformFlags&32768||rt.expression.kind===108||M0(ZC(rt.expression))){let{target:Qn,thisArg:Jn}=c.createCallBinding(rt.expression,b);rt.expression.kind===108&&co(Jn,8);let cs;if(rt.transformFlags&32768?cs=c.createFunctionApplyCall(w.checkDefined(xr(Qn,qe,tn)),rt.expression.kind===108?Jn:w.checkDefined(xr(Jn,je,tn)),Q2(rt.arguments,!0,!1,!1)):cs=un(c.createFunctionCallCall(w.checkDefined(xr(Qn,qe,tn)),rt.expression.kind===108?Jn:w.checkDefined(xr(Jn,je,tn)),ws(rt.arguments,je,tn)),rt),rt.expression.kind===108){let Ls=c.createLogicalOr(cs,Nc());cs=qr?c.createAssignment(Ye(),Ls):Ls}return Ho(cs,rt)}return Nf(rt)&&(re|=131072),ns(rt,je,n)}function qC(rt){if(lr(rt.arguments,ph)){let{target:qr,thisArg:Qn}=c.createCallBinding(c.createPropertyAccessExpression(rt.expression,"bind"),b);return c.createNewExpression(c.createFunctionApplyCall(w.checkDefined(xr(qr,je,tn)),Qn,Q2(c.createNodeArray([c.createVoidZero(),...rt.arguments]),!0,!1,!1)),void 0,[])}return ns(rt,je,n)}function Q2(rt,qr,Qn,Jn){let cs=rt.length,Ls=or(ka(rt,qt,(Ht,En,Rs,_c)=>En(Ht,Qn,Jn&&_c===cs)));if(Ls.length===1){let Ht=Ls[0];if(qr&&!R.downlevelIteration||mhe(Ht.expression)||R6(Ht.expression,"___spreadArray"))return Ht.expression}let $o=u(),Ua=Ls[0].kind!==0,Ge=Ua?c.createArrayLiteralExpression():Ls[0].expression;for(let Ht=Ua?0:1;Ht0&&Jn.push(c.createStringLiteral(Qn.literal.text)),qr=c.createCallExpression(c.createPropertyAccessExpression(qr,"concat"),void 0,Jn)}return un(qr,rt)}function hC(){return c.createUniqueName("_super",48)}function Xb(rt,qr){let Qn=re&8&&!qr?c.createPropertyAccessExpression(Ho(hC(),rt),"prototype"):hC();return Ho(Qn,rt),mA(Qn,rt),Qg(Qn,rt),Qn}function dT(rt){return rt.keywordToken===105&&rt.name.escapedText==="target"?(re|=32768,c.createUniqueName("_newTarget",48)):rt}function Y2(rt,qr,Qn){if(Be&1&&$l(qr)){let Jn=Ne(32670,Sg(qr)&16?81:65);P(rt,qr,Qn),Qe(Jn,0,0);return}P(rt,qr,Qn)}function ub(){Be&2||(Be|=2,n.enableSubstitution(80))}function LB(){Be&1||(Be|=1,n.enableSubstitution(110),n.enableEmitNotification(176),n.enableEmitNotification(174),n.enableEmitNotification(177),n.enableEmitNotification(178),n.enableEmitNotification(219),n.enableEmitNotification(218),n.enableEmitNotification(262))}function H2(rt,qr){return qr=V(rt,qr),rt===1?gb(qr):sr(qr)?oD(qr):qr}function oD(rt){if(Be&2&&!UKe(rt)){let qr=jc(rt,sr);if(qr&&aD(qr))return un(c.getGeneratedNameForNode(qr),rt)}return rt}function aD(rt){switch(rt.parent.kind){case 208:case 263:case 266:case 260:return rt.parent.name===rt&&N.isDeclarationWithCollidingName(rt.parent)}return!1}function gb(rt){switch(rt.kind){case 80:return $C(rt);case 110:return Jb(rt)}return rt}function $C(rt){if(Be&2&&!UKe(rt)){let qr=N.getReferencedDeclarationWithCollidingName(rt);if(qr&&!(Sa(qr)&&cD(qr,rt)))return un(c.getGeneratedNameForNode(vl(qr)),rt)}return rt}function cD(rt,qr){let Qn=jc(qr);if(!Qn||Qn===rt||Qn.end<=rt.pos||Qn.pos>=rt.end)return!1;let Jn=S2(rt);for(;Qn;){if(Qn===Jn||Qn===rt)return!1;if(rC(Qn)&&Qn.parent===rt)return!0;Qn=Qn.parent}return!1}function Jb(rt){return Be&1&&re&16?un(Ye(),rt):rt}function ZN(rt,qr){return $u(qr)?c.getInternalName(rt):c.createPropertyAccessExpression(c.getInternalName(rt),"prototype")}function X2(rt,qr){if(!rt||!qr||lr(rt.parameters))return!1;let Qn=$i(rt.body.statements);if(!Qn||!qd(Qn)||Qn.kind!==244)return!1;let Jn=Qn.expression;if(!qd(Jn)||Jn.kind!==213)return!1;let cs=Jn.expression;if(!qd(cs)||cs.kind!==108)return!1;let Ls=wu(Jn.arguments);if(!Ls||!qd(Ls)||Ls.kind!==230)return!1;let $o=Ls.expression;return sr($o)&&$o.escapedText==="arguments"}}function f7i(n){switch(n){case 2:return"return";case 3:return"break";case 4:return"yield";case 5:return"yield*";case 7:return"endfinally";default:return}}function Bxt(n){let{factory:c,getEmitHelperFactory:u,resumeLexicalEnvironment:d,endLexicalEnvironment:I,hoistFunctionDeclaration:h,hoistVariableDeclaration:b}=n,R=n.getCompilerOptions(),N=iA(R),V=n.getEmitResolver(),P=n.onSubstituteNode;n.onSubstituteNode=sn;let M,te,re,ue,Ae,de,Be,Fe,Ne,Qe,De=1,lt,Le,je,st,nt=0,qe=0,it,It,dt,wt,vt,Ye,ht,Et;return lT(n,Kt);function Kt(qt){if(qt.isDeclarationFile||!(qt.transformFlags&2048))return qt;let Fn=ns(qt,Tt,n);return EN(Fn,n.readEmitHelpers()),Fn}function Tt(qt){let Fn=qt.transformFlags;return ue?Lt(qt):re?kt(qt):dd(qt)&&qt.asteriskToken?Dr(qt):Fn&2048?ns(qt,Tt,n):qt}function Lt(qt){switch(qt.kind){case 246:return cg(qt);case 247:return Bi(qt);case 255:return kn(qt);case 256:return an(qt);default:return kt(qt)}}function kt(qt){switch(qt.kind){case 262:return jt(qt);case 218:return mr(qt);case 177:case 178:return Pt(qt);case 243:return Yr(qt);case 248:return kr(qt);case 249:return ct(qt);case 252:return Qt(qt);case 251:return St(qt);case 253:return Pr(qt);default:return qt.transformFlags&1048576?Zt(qt):qt.transformFlags&4196352?ns(qt,Tt,n):qt}}function Zt(qt){switch(qt.kind){case 226:return pr(qt);case 355:return Pi(qt);case 227:return gi(qt);case 229:return jn(qt);case 209:return xs(qt);case 210:return xi(qt);case 212:return rc(qt);case 213:return Vl(qt);case 214:return ul(qt);default:return ns(qt,Tt,n)}}function Dr(qt){switch(qt.kind){case 262:return jt(qt);case 218:return mr(qt);default:return w.failBadSyntaxKind(qt)}}function jt(qt){if(qt.asteriskToken)qt=Ho(un(c.createFunctionDeclaration(qt.modifiers,void 0,qt.name,void 0,hI(qt.parameters,Tt,n),void 0,Vr(qt.body)),qt),qt);else{let Fn=re,Bs=ue;re=!1,ue=!1,qt=ns(qt,Tt,n),re=Fn,ue=Bs}if(re){h(qt);return}else return qt}function mr(qt){if(qt.asteriskToken)qt=Ho(un(c.createFunctionExpression(void 0,void 0,qt.name,void 0,hI(qt.parameters,Tt,n),void 0,Vr(qt.body)),qt),qt);else{let Fn=re,Bs=ue;re=!1,ue=!1,qt=ns(qt,Tt,n),re=Fn,ue=Bs}return qt}function Pt(qt){let Fn=re,Bs=ue;return re=!1,ue=!1,qt=ns(qt,Tt,n),re=Fn,ue=Bs,qt}function Vr(qt){let Fn=[],Bs=re,Nl=ue,vA=Ae,PA=de,XI=Be,bm=Fe,rp=Ne,Hd=Qe,hC=De,Xb=lt,dT=Le,Y2=je,ub=st;re=!0,ue=!1,Ae=void 0,de=void 0,Be=void 0,Fe=void 0,Ne=void 0,Qe=void 0,De=1,lt=void 0,Le=void 0,je=void 0,st=c.createTempVariable(void 0),d();let LB=c.copyPrologue(qt.statements,Fn,!1,Tt);Cc(qt.statements,LB);let H2=tt();return kS(Fn,I()),Fn.push(c.createReturnStatement(H2)),re=Bs,ue=Nl,Ae=vA,de=PA,Be=XI,Fe=bm,Ne=rp,Qe=Hd,De=hC,lt=Xb,Le=dT,je=Y2,st=ub,un(c.createBlock(Fn,qt.multiLine),qt)}function Yr(qt){if(qt.transformFlags&1048576){Hs(qt.declarationList);return}else{if(Sg(qt)&2097152)return qt;for(let Bs of qt.declarationList.declarations)b(Bs.name);let Fn=c6(qt.declarationList);return Fn.length===0?void 0:Qg(c.createExpressionStatement(c.inlineExpressions(Ot(Fn,qa))),qt)}}function pr(qt){let Fn=Bme(qt);switch(Fn){case 0:return $n(qt);case 1:return zr(qt);default:return w.assertNever(Fn)}}function zr(qt){let{left:Fn,right:Bs}=qt;if(Pe(Bs)){let Nl;switch(Fn.kind){case 211:Nl=c.updatePropertyAccessExpression(Fn,Re(w.checkDefined(xr(Fn.expression,Tt,T_))),Fn.name);break;case 212:Nl=c.updateElementAccessExpression(Fn,Re(w.checkDefined(xr(Fn.expression,Tt,T_))),Re(w.checkDefined(xr(Fn.argumentExpression,Tt,tn))));break;default:Nl=w.checkDefined(xr(Fn,Tt,tn));break}let vA=qt.operatorToken.kind;return $le(vA)?un(c.createAssignment(Nl,un(c.createBinaryExpression(Re(Nl),eue(vA),w.checkDefined(xr(Bs,Tt,tn))),qt)),qt):c.updateBinaryExpression(qt,Nl,qt.operatorToken,w.checkDefined(xr(Bs,Tt,tn)))}return ns(qt,Tt,n)}function $n(qt){return Pe(qt.right)?mDe(qt.operatorToken.kind)?Ns(qt):qt.operatorToken.kind===28?bi(qt):c.updateBinaryExpression(qt,Re(w.checkDefined(xr(qt.left,Tt,tn))),qt.operatorToken,w.checkDefined(xr(qt.right,Tt,tn))):ns(qt,Tt,n)}function bi(qt){let Fn=[];return Bs(qt.left),Bs(qt.right),c.inlineExpressions(Fn);function Bs(Nl){no(Nl)&&Nl.operatorToken.kind===28?(Bs(Nl.left),Bs(Nl.right)):(Pe(Nl)&&Fn.length>0&&(yt(1,[c.createExpressionStatement(c.inlineExpressions(Fn))]),Fn=[]),Fn.push(w.checkDefined(xr(Nl,Tt,tn))))}}function Pi(qt){let Fn=[];for(let Bs of qt.elements)no(Bs)&&Bs.operatorToken.kind===28?Fn.push(bi(Bs)):(Pe(Bs)&&Fn.length>0&&(yt(1,[c.createExpressionStatement(c.inlineExpressions(Fn))]),Fn=[]),Fn.push(w.checkDefined(xr(Bs,Tt,tn))));return c.inlineExpressions(Fn)}function Ns(qt){let Fn=bt(),Bs=Jt();return Yd(Bs,w.checkDefined(xr(qt.left,Tt,tn)),qt.left),qt.operatorToken.kind===56?lI(Fn,Bs,qt.left):di(Fn,Bs,qt.left),Yd(Bs,w.checkDefined(xr(qt.right,Tt,tn)),qt.right),Vt(Fn),Bs}function gi(qt){if(Pe(qt.whenTrue)||Pe(qt.whenFalse)){let Fn=bt(),Bs=bt(),Nl=Jt();return lI(Fn,w.checkDefined(xr(qt.condition,Tt,tn)),qt.condition),Yd(Nl,w.checkDefined(xr(qt.whenTrue,Tt,tn)),qt.whenTrue),zA(Bs),Vt(Fn),Yd(Nl,w.checkDefined(xr(qt.whenFalse,Tt,tn)),qt.whenFalse),Vt(Bs),Nl}return ns(qt,Tt,n)}function jn(qt){let Fn=bt(),Bs=xr(qt.expression,Tt,tn);if(qt.asteriskToken){let Nl=Sg(qt.expression)&8388608?Bs:un(u().createValuesHelper(Bs),qt);J0(Nl,qt)}else U0(Bs,qt);return Vt(Fn),s_(qt)}function xs(qt){return Ec(qt.elements,void 0,void 0,qt.multiLine)}function Ec(qt,Fn,Bs,Nl){let vA=ar(qt),PA;if(vA>0){PA=Jt();let rp=ws(qt,Tt,tn,0,vA);Yd(PA,c.createArrayLiteralExpression(Fn?[Fn,...rp]:rp)),Fn=void 0}let XI=Td(qt,bm,[],vA);return PA?c.createArrayConcatCall(PA,[c.createArrayLiteralExpression(XI,Nl)]):un(c.createArrayLiteralExpression(Fn?[Fn,...XI]:XI,Nl),Bs);function bm(rp,Hd){if(Pe(Hd)&&rp.length>0){let hC=PA!==void 0;PA||(PA=Jt()),Yd(PA,hC?c.createArrayConcatCall(PA,[c.createArrayLiteralExpression(rp,Nl)]):c.createArrayLiteralExpression(Fn?[Fn,...rp]:rp,Nl)),Fn=void 0,rp=[]}return rp.push(w.checkDefined(xr(Hd,Tt,tn))),rp}}function xi(qt){let Fn=qt.properties,Bs=qt.multiLine,Nl=ar(Fn),vA=Jt();Yd(vA,c.createObjectLiteralExpression(ws(Fn,Tt,EB,0,Nl),Bs));let PA=Td(Fn,XI,[],Nl);return PA.push(Bs?l0(kA(un(c.cloneNode(vA),vA),vA.parent)):vA),c.inlineExpressions(PA);function XI(bm,rp){Pe(rp)&&bm.length>0&&(hf(c.createExpressionStatement(c.inlineExpressions(bm))),bm=[]);let Hd=aRt(c,qt,rp,vA),hC=xr(Hd,Tt,tn);return hC&&(Bs&&l0(hC),bm.push(hC)),bm}}function rc(qt){return Pe(qt.argumentExpression)?c.updateElementAccessExpression(qt,Re(w.checkDefined(xr(qt.expression,Tt,T_))),w.checkDefined(xr(qt.argumentExpression,Tt,tn))):ns(qt,Tt,n)}function Vl(qt){if(!pC(qt)&&X(qt.arguments,Pe)){let{target:Fn,thisArg:Bs}=c.createCallBinding(qt.expression,b,N,!0);return Ho(un(c.createFunctionApplyCall(Re(w.checkDefined(xr(Fn,Tt,T_))),Bs,Ec(qt.arguments)),qt),qt)}return ns(qt,Tt,n)}function ul(qt){if(X(qt.arguments,Pe)){let{target:Fn,thisArg:Bs}=c.createCallBinding(c.createPropertyAccessExpression(qt.expression,"bind"),b);return Ho(un(c.createNewExpression(c.createFunctionApplyCall(Re(w.checkDefined(xr(Fn,Tt,tn))),Bs,Ec(qt.arguments,c.createVoidZero())),void 0,[]),qt),qt)}return ns(qt,Tt,n)}function Cc(qt,Fn=0){let Bs=qt.length;for(let Nl=Fn;Nl0)break;vA.push(qa(XI))}vA.length&&(hf(c.createExpressionStatement(c.inlineExpressions(vA))),Nl+=vA.length,vA=[])}}function qa(qt){return Qg(c.createAssignment(Qg(c.cloneNode(qt.name),qt.name),w.checkDefined(xr(qt.initializer,Tt,tn))),qt)}function nc(qt){if(Pe(qt))if(Pe(qt.thenStatement)||Pe(qt.elseStatement)){let Fn=bt(),Bs=qt.elseStatement?bt():void 0;lI(qt.elseStatement?Bs:Fn,w.checkDefined(xr(qt.expression,Tt,tn)),qt.expression),_s(qt.thenStatement),qt.elseStatement&&(zA(Fn),Vt(Bs),_s(qt.elseStatement)),Vt(Fn)}else hf(xr(qt,Tt,Ic));else hf(xr(qt,Tt,Ic))}function Nc(qt){if(Pe(qt)){let Fn=bt(),Bs=bt();oa(Fn),Vt(Bs),_s(qt.statement),Vt(Fn),di(Bs,w.checkDefined(xr(qt.expression,Tt,tn))),Da()}else hf(xr(qt,Tt,Ic))}function cg(qt){return ue?(fl(),qt=ns(qt,Tt,n),Da(),qt):ns(qt,Tt,n)}function Ku(qt){if(Pe(qt)){let Fn=bt(),Bs=oa(Fn);Vt(Fn),lI(Bs,w.checkDefined(xr(qt.expression,Tt,tn))),_s(qt.statement),zA(Fn),Da()}else hf(xr(qt,Tt,Ic))}function Bi(qt){return ue?(fl(),qt=ns(qt,Tt,n),Da(),qt):ns(qt,Tt,n)}function BA(qt){if(Pe(qt)){let Fn=bt(),Bs=bt(),Nl=oa(Bs);if(qt.initializer){let vA=qt.initializer;yl(vA)?Hs(vA):hf(un(c.createExpressionStatement(w.checkDefined(xr(vA,Tt,tn))),vA))}Vt(Fn),qt.condition&&lI(Nl,w.checkDefined(xr(qt.condition,Tt,tn))),_s(qt.statement),Vt(Bs),qt.incrementor&&hf(un(c.createExpressionStatement(w.checkDefined(xr(qt.incrementor,Tt,tn))),qt.incrementor)),zA(Fn),Da()}else hf(xr(qt,Tt,Ic))}function kr(qt){ue&&fl();let Fn=qt.initializer;if(Fn&&yl(Fn)){for(let Nl of Fn.declarations)b(Nl.name);let Bs=c6(Fn);qt=c.updateForStatement(qt,Bs.length>0?c.inlineExpressions(Ot(Bs,qa)):void 0,xr(qt.condition,Tt,tn),xr(qt.incrementor,Tt,tn),yy(qt.statement,Tt,n))}else qt=ns(qt,Tt,n);return ue&&Da(),qt}function en(qt){if(Pe(qt)){let Fn=Jt(),Bs=Jt(),Nl=Jt(),vA=c.createLoopVariable(),PA=qt.initializer;b(vA),Yd(Fn,w.checkDefined(xr(qt.expression,Tt,tn))),Yd(Bs,c.createArrayLiteralExpression()),hf(c.createForInStatement(Nl,Fn,c.createExpressionStatement(c.createCallExpression(c.createPropertyAccessExpression(Bs,"push"),void 0,[Nl])))),Yd(vA,c.createNumericLiteral(0));let XI=bt(),bm=bt(),rp=oa(bm);Vt(XI),lI(rp,c.createLessThan(vA,c.createPropertyAccessExpression(Bs,"length"))),Yd(Nl,c.createElementAccessExpression(Bs,vA)),lI(bm,c.createBinaryExpression(Nl,103,Fn));let Hd;if(yl(PA)){for(let hC of PA.declarations)b(hC.name);Hd=c.cloneNode(PA.declarations[0].name)}else Hd=w.checkDefined(xr(PA,Tt,tn)),w.assert(T_(Hd));Yd(Hd,Nl),_s(qt.statement),Vt(bm),hf(c.createExpressionStatement(c.createPostfixIncrement(vA))),zA(XI),Da()}else hf(xr(qt,Tt,Ic))}function ct(qt){ue&&fl();let Fn=qt.initializer;if(yl(Fn)){for(let Bs of Fn.declarations)b(Bs.name);qt=c.updateForInStatement(qt,Fn.declarations[0].name,w.checkDefined(xr(qt.expression,Tt,tn)),w.checkDefined(xr(qt.statement,Tt,Ic,c.liftToBlock)))}else qt=ns(qt,Tt,n);return ue&&Da(),qt}function rn(qt){let Fn=Zc(qt.label?ao(qt.label):void 0);Fn>0?zA(Fn,qt):hf(qt)}function St(qt){if(ue){let Fn=Zc(qt.label&&ao(qt.label));if(Fn>0)return f0(Fn,qt)}return ns(qt,Tt,n)}function br(qt){let Fn=zc(qt.label?ao(qt.label):void 0);Fn>0?zA(Fn,qt):hf(qt)}function Qt(qt){if(ue){let Fn=zc(qt.label&&ao(qt.label));if(Fn>0)return f0(Fn,qt)}return ns(qt,Tt,n)}function _r(qt){Yb(xr(qt.expression,Tt,tn),qt)}function Pr(qt){return xI(xr(qt.expression,Tt,tn),qt)}function ti(qt){Pe(qt)?(ds(Re(w.checkDefined(xr(qt.expression,Tt,tn)))),_s(qt.statement),Es()):hf(xr(qt,Tt,Ic))}function cr(qt){if(Pe(qt.caseBlock)){let Fn=qt.caseBlock,Bs=Fn.clauses.length,Nl=Gs(),vA=Re(w.checkDefined(xr(qt.expression,Tt,tn))),PA=[],XI=-1;for(let Hd=0;Hd0)break;rp.push(c.createCaseClause(w.checkDefined(xr(Xb.expression,Tt,tn)),[f0(PA[hC],Xb.expression)]))}else Hd++}rp.length&&(hf(c.createSwitchStatement(vA,c.createCaseBlock(rp))),bm+=rp.length,rp=[]),Hd>0&&(bm+=Hd,Hd=0)}XI>=0?zA(PA[XI]):zA(Nl);for(let Hd=0;Hd=0;Bs--){let Nl=Fe[Bs];if(Tl(Nl)){if(Nl.labelText===qt)return!0}else break}return!1}function zc(qt){if(Fe)if(qt)for(let Fn=Fe.length-1;Fn>=0;Fn--){let Bs=Fe[Fn];if(Tl(Bs)&&Bs.labelText===qt)return Bs.breakLabel;if(kd(Bs)&&mf(qt,Fn-1))return Bs.breakLabel}else for(let Fn=Fe.length-1;Fn>=0;Fn--){let Bs=Fe[Fn];if(kd(Bs))return Bs.breakLabel}return 0}function Zc(qt){if(Fe)if(qt)for(let Fn=Fe.length-1;Fn>=0;Fn--){let Bs=Fe[Fn];if(lg(Bs)&&mf(qt,Fn-1))return Bs.continueLabel}else for(let Fn=Fe.length-1;Fn>=0;Fn--){let Bs=Fe[Fn];if(lg(Bs))return Bs.continueLabel}return 0}function Km(qt){if(qt!==void 0&&qt>0){Qe===void 0&&(Qe=[]);let Fn=c.createNumericLiteral(Number.MAX_SAFE_INTEGER);return Qe[qt]===void 0?Qe[qt]=[Fn]:Qe[qt].push(Fn),Fn}return c.createOmittedExpression()}function Df(qt){let Fn=c.createNumericLiteral(qt);return Ele(Fn,3,f7i(qt)),Fn}function f0(qt,Fn){return w.assertLessThan(0,qt,"Invalid label"),un(c.createReturnStatement(c.createArrayLiteralExpression([Df(3),Km(qt)])),Fn)}function xI(qt,Fn){return un(c.createReturnStatement(c.createArrayLiteralExpression(qt?[Df(2),qt]:[Df(2)])),Fn)}function s_(qt){return un(c.createCallExpression(c.createPropertyAccessExpression(st,"sent"),void 0,[]),qt)}function Jg(){yt(0)}function hf(qt){qt?yt(1,[qt]):Jg()}function Yd(qt,Fn,Bs){yt(2,[qt,Fn],Bs)}function zA(qt,Fn){yt(3,[qt],Fn)}function di(qt,Fn,Bs){yt(4,[qt,Fn],Bs)}function lI(qt,Fn,Bs){yt(5,[qt,Fn],Bs)}function J0(qt,Fn){yt(7,[qt],Fn)}function U0(qt,Fn){yt(6,[qt],Fn)}function Yb(qt,Fn){yt(8,[qt],Fn)}function rf(qt,Fn){yt(9,[qt],Fn)}function kI(){yt(10)}function yt(qt,Fn,Bs){lt===void 0&&(lt=[],Le=[],je=[]),Ne===void 0&&Vt(bt());let Nl=lt.length;lt[Nl]=qt,Le[Nl]=Fn,je[Nl]=Bs}function tt(){nt=0,qe=0,it=void 0,It=!1,dt=!1,wt=void 0,vt=void 0,Ye=void 0,ht=void 0,Et=void 0;let qt=gr();return u().createGeneratorHelper(co(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,st)],void 0,c.createBlock(qt,qt.length>0)),1048576))}function gr(){if(lt){for(let qt=0;qt=0;Fn--){let Bs=Et[Fn];vt=[c.createWithStatement(Bs.expression,c.createBlock(vt))]}if(ht){let{startLabel:Fn,catchLabel:Bs,finallyLabel:Nl,endLabel:vA}=ht;vt.unshift(c.createExpressionStatement(c.createCallExpression(c.createPropertyAccessExpression(c.createPropertyAccessExpression(st,"trys"),"push"),void 0,[c.createArrayLiteralExpression([Km(Fn),Km(Bs),Km(Nl),Km(vA)])]))),ht=void 0}qt&&vt.push(c.createExpressionStatement(c.createAssignment(c.createPropertyAccessExpression(st,"label"),c.createNumericLiteral(qe+1))))}wt.push(c.createCaseClause(c.createNumericLiteral(qe),vt||[])),vt=void 0}function Jo(qt){if(Ne)for(let Fn=0;Fnu.createAssignment(u.createPropertyAccessExpression(u.createIdentifier("exports"),u.createIdentifier(ao(Vt))),bt),u.createVoidZero())));for(let Re of de.exportedFunctions)kr(ar,Re);Hr(ar,xr(de.externalHelpersImportDeclaration,it,Ic)),ai(ar,ws(Pe.statements,it,Ic,Me)),qe(ar,!1),kS(ar,h());let ur=u.updateSourceFile(Pe,un(u.createNodeArray(ar),Pe.statements));return EN(ur,n.readEmitHelpers()),ur}function lt(Pe){let ar=u.createIdentifier("define"),sn=Qhe(u,Pe,V,R),Me=Ia(Pe)&&Pe,{aliasedModuleNames:ur,unaliasedModuleNames:Re,importAliasNames:Jt}=je(Pe,!0),bt=u.updateSourceFile(Pe,un(u.createNodeArray([u.createExpressionStatement(u.createCallExpression(ar,void 0,[...sn?[sn]:[],u.createArrayLiteralExpression(Me?v:[u.createStringLiteral("require"),u.createStringLiteral("exports"),...ur,...Re]),Me?Me.statements.length?Me.statements[0].expression:u.createObjectLiteralExpression():u.createFunctionExpression(void 0,void 0,void 0,void 0,[u.createParameterDeclaration(void 0,void 0,"require"),u.createParameterDeclaration(void 0,void 0,"exports"),...Jt],void 0,nt(Pe))]))]),Pe.statements));return EN(bt,n.readEmitHelpers()),bt}function Le(Pe){let{aliasedModuleNames:ar,unaliasedModuleNames:sn,importAliasNames:Me}=je(Pe,!1),ur=Qhe(u,Pe,V,R),Re=u.createFunctionExpression(void 0,void 0,void 0,void 0,[u.createParameterDeclaration(void 0,void 0,"factory")],void 0,un(u.createBlock([u.createIfStatement(u.createLogicalAnd(u.createTypeCheck(u.createIdentifier("module"),"object"),u.createTypeCheck(u.createPropertyAccessExpression(u.createIdentifier("module"),"exports"),"object")),u.createBlock([u.createVariableStatement(void 0,[u.createVariableDeclaration("v",void 0,void 0,u.createCallExpression(u.createIdentifier("factory"),void 0,[u.createIdentifier("require"),u.createIdentifier("exports")]))]),co(u.createIfStatement(u.createStrictInequality(u.createIdentifier("v"),u.createIdentifier("undefined")),u.createExpressionStatement(u.createAssignment(u.createPropertyAccessExpression(u.createIdentifier("module"),"exports"),u.createIdentifier("v")))),1)]),u.createIfStatement(u.createLogicalAnd(u.createTypeCheck(u.createIdentifier("define"),"function"),u.createPropertyAccessExpression(u.createIdentifier("define"),"amd")),u.createBlock([u.createExpressionStatement(u.createCallExpression(u.createIdentifier("define"),void 0,[...ur?[ur]:[],u.createArrayLiteralExpression([u.createStringLiteral("require"),u.createStringLiteral("exports"),...ar,...sn]),u.createIdentifier("factory")]))])))],!0),void 0)),Jt=u.updateSourceFile(Pe,un(u.createNodeArray([u.createExpressionStatement(u.createCallExpression(Re,void 0,[u.createFunctionExpression(void 0,void 0,void 0,void 0,[u.createParameterDeclaration(void 0,void 0,"require"),u.createParameterDeclaration(void 0,void 0,"exports"),...Me],void 0,nt(Pe))]))]),Pe.statements));return EN(Jt,n.readEmitHelpers()),Jt}function je(Pe,ar){let sn=[],Me=[],ur=[];for(let Re of Pe.amdDependencies)Re.name?(sn.push(u.createStringLiteral(Re.path)),ur.push(u.createParameterDeclaration(void 0,void 0,Re.name))):Me.push(u.createStringLiteral(Re.path));for(let Re of de.externalImports){let Jt=F6(u,Re,Ae,V,N,R),bt=dte(u,Re,Ae);Jt&&(ar&&bt?(co(bt,8),sn.push(Jt),ur.push(u.createParameterDeclaration(void 0,void 0,bt))):Me.push(Jt))}return{aliasedModuleNames:sn,unaliasedModuleNames:Me,importAliasNames:ur}}function st(Pe){if(Cm(Pe)||mC(Pe)||!F6(u,Pe,Ae,V,N,R))return;let ar=dte(u,Pe,Ae),sn=Vl(Pe,ar);if(sn!==ar)return u.createExpressionStatement(u.createAssignment(ar,sn))}function nt(Pe){I();let ar=[],sn=u.copyPrologue(Pe.statements,ar,!0,it);Qe()&&Hr(ar,rn()),lr(de.exportedNames)&&Hr(ar,u.createExpressionStatement(Td(de.exportedNames,(ur,Re)=>u.createAssignment(u.createPropertyAccessExpression(u.createIdentifier("exports"),u.createIdentifier(ao(Re))),ur),u.createVoidZero())));for(let ur of de.exportedFunctions)kr(ar,ur);Hr(ar,xr(de.externalHelpersImportDeclaration,it,Ic)),M===2&&ai(ar,tr(de.externalImports,st)),ai(ar,ws(Pe.statements,it,Ic,sn)),qe(ar,!0),kS(ar,h());let Me=u.createBlock(ar,!0);return Fe&&nY(Me,I7i),Me}function qe(Pe,ar){if(de.exportEquals){let sn=xr(de.exportEquals.expression,wt,tn);if(sn)if(ar){let Me=u.createReturnStatement(sn);un(Me,de.exportEquals),co(Me,3840),Pe.push(Me)}else{let Me=u.createExpressionStatement(u.createAssignment(u.createPropertyAccessExpression(u.createIdentifier("module"),"exports"),sn));un(Me,de.exportEquals),co(Me,3072),Pe.push(Me)}}}function it(Pe){switch(Pe.kind){case 272:return ul(Pe);case 271:return _s(Pe);case 278:return Wu(Pe);case 277:return ir(Pe);default:return It(Pe)}}function It(Pe){switch(Pe.kind){case 243:return Hs(Pe);case 262:return ni(Pe);case 263:return gs(Pe);case 248:return Et(Pe,!0);case 249:return Kt(Pe);case 250:return Tt(Pe);case 246:return Lt(Pe);case 247:return kt(Pe);case 256:return Zt(Pe);case 254:return Dr(Pe);case 245:return jt(Pe);case 255:return mr(Pe);case 269:return Pt(Pe);case 296:return Vr(Pe);case 297:return Yr(Pe);case 258:return pr(Pe);case 299:return zr(Pe);case 241:return $n(Pe);default:return wt(Pe)}}function dt(Pe,ar){if(!(Pe.transformFlags&276828160))return Pe;switch(Pe.kind){case 248:return Et(Pe,!1);case 244:return bi(Pe);case 217:return Pi(Pe,ar);case 354:return Ns(Pe,ar);case 213:if(pC(Pe)&&Ae.impliedNodeFormat===void 0)return jn(Pe);break;case 226:if(kv(Pe))return ht(Pe,ar);break;case 224:case 225:return gi(Pe,ar)}return ns(Pe,wt,n)}function wt(Pe){return dt(Pe,!1)}function vt(Pe){return dt(Pe,!0)}function Ye(Pe){if(tu(Pe))for(let ar of Pe.properties)switch(ar.kind){case 303:if(Ye(ar.initializer))return!0;break;case 304:if(Ye(ar.name))return!0;break;case 305:if(Ye(ar.expression))return!0;break;case 174:case 177:case 178:return!1;default:w.assertNever(ar,"Unhandled object member kind")}else if(If(Pe)){for(let ar of Pe.elements)if(ph(ar)){if(Ye(ar.expression))return!0}else if(Ye(ar))return!0}else if(sr(Pe))return O(wn(Pe))>(qxe(Pe)?1:0);return!1}function ht(Pe,ar){return Ye(Pe.left)?m4(Pe,wt,n,0,!ar,qa):ns(Pe,wt,n)}function Et(Pe,ar){if(ar&&Pe.initializer&&yl(Pe.initializer)&&!(Pe.initializer.flags&7)){let sn=Bi(void 0,Pe.initializer,!1);if(sn){let Me=[],ur=xr(Pe.initializer,vt,yl),Re=u.createVariableStatement(void 0,ur);Me.push(Re),ai(Me,sn);let Jt=xr(Pe.condition,wt,tn),bt=xr(Pe.incrementor,vt,tn),Vt=yy(Pe.statement,ar?It:wt,n);return Me.push(u.updateForStatement(Pe,void 0,Jt,bt,Vt)),Me}}return u.updateForStatement(Pe,xr(Pe.initializer,vt,P0),xr(Pe.condition,wt,tn),xr(Pe.incrementor,vt,tn),yy(Pe.statement,ar?It:wt,n))}function Kt(Pe){if(yl(Pe.initializer)&&!(Pe.initializer.flags&7)){let ar=Bi(void 0,Pe.initializer,!0);if(lr(ar)){let sn=xr(Pe.initializer,vt,P0),Me=xr(Pe.expression,wt,tn),ur=yy(Pe.statement,It,n),Re=mc(ur)?u.updateBlock(ur,[...ar,...ur.statements]):u.createBlock([...ar,ur],!0);return u.updateForInStatement(Pe,sn,Me,Re)}}return u.updateForInStatement(Pe,xr(Pe.initializer,vt,P0),xr(Pe.expression,wt,tn),yy(Pe.statement,It,n))}function Tt(Pe){if(yl(Pe.initializer)&&!(Pe.initializer.flags&7)){let ar=Bi(void 0,Pe.initializer,!0),sn=xr(Pe.initializer,vt,P0),Me=xr(Pe.expression,wt,tn),ur=yy(Pe.statement,It,n);return lr(ar)&&(ur=mc(ur)?u.updateBlock(ur,[...ar,...ur.statements]):u.createBlock([...ar,ur],!0)),u.updateForOfStatement(Pe,Pe.awaitModifier,sn,Me,ur)}return u.updateForOfStatement(Pe,Pe.awaitModifier,xr(Pe.initializer,vt,P0),xr(Pe.expression,wt,tn),yy(Pe.statement,It,n))}function Lt(Pe){return u.updateDoStatement(Pe,yy(Pe.statement,It,n),xr(Pe.expression,wt,tn))}function kt(Pe){return u.updateWhileStatement(Pe,xr(Pe.expression,wt,tn),yy(Pe.statement,It,n))}function Zt(Pe){return u.updateLabeledStatement(Pe,Pe.label,w.checkDefined(xr(Pe.statement,It,Ic,u.liftToBlock)))}function Dr(Pe){return u.updateWithStatement(Pe,xr(Pe.expression,wt,tn),w.checkDefined(xr(Pe.statement,It,Ic,u.liftToBlock)))}function jt(Pe){return u.updateIfStatement(Pe,xr(Pe.expression,wt,tn),w.checkDefined(xr(Pe.thenStatement,It,Ic,u.liftToBlock)),xr(Pe.elseStatement,It,Ic,u.liftToBlock))}function mr(Pe){return u.updateSwitchStatement(Pe,xr(Pe.expression,wt,tn),w.checkDefined(xr(Pe.caseBlock,It,xle)))}function Pt(Pe){return u.updateCaseBlock(Pe,ws(Pe.clauses,It,vX))}function Vr(Pe){return u.updateCaseClause(Pe,xr(Pe.expression,wt,tn),ws(Pe.statements,It,Ic))}function Yr(Pe){return ns(Pe,It,n)}function pr(Pe){return ns(Pe,It,n)}function zr(Pe){return u.updateCatchClause(Pe,Pe.variableDeclaration,w.checkDefined(xr(Pe.block,It,mc)))}function $n(Pe){return Pe=ns(Pe,It,n),Pe}function bi(Pe){return u.updateExpressionStatement(Pe,xr(Pe.expression,vt,tn))}function Pi(Pe,ar){return u.updateParenthesizedExpression(Pe,xr(Pe.expression,ar?vt:wt,tn))}function Ns(Pe,ar){return u.updatePartiallyEmittedExpression(Pe,xr(Pe.expression,ar?vt:wt,tn))}function gi(Pe,ar){if((Pe.operator===46||Pe.operator===47)&&sr(Pe.operand)&&!Ip(Pe.operand)&&!kG(Pe.operand)&&!Xme(Pe.operand)){let sn=wn(Pe.operand);if(sn){let Me,ur=xr(Pe.operand,wt,tn);xB(Pe)?ur=u.updatePrefixUnaryExpression(Pe,ur):(ur=u.updatePostfixUnaryExpression(Pe,ur),ar||(Me=u.createTempVariable(b),ur=u.createAssignment(Me,ur),un(ur,Pe)),ur=u.createComma(ur,u.cloneNode(Pe.operand)),un(ur,Pe));for(let Re of sn)Be[sd(ur)]=!0,ur=br(Re,ur),un(ur,Pe);return Me&&(Be[sd(ur)]=!0,ur=u.createComma(ur,Me),un(ur,Pe)),ur}}return ns(Pe,wt,n)}function jn(Pe){if(M===0&&P>=7)return ns(Pe,wt,n);let ar=F6(u,Pe,Ae,V,N,R),sn=xr($i(Pe.arguments),wt,tn),Me=ar&&(!sn||!bu(sn)||sn.text!==ar.text)?ar:sn,ur=!!(Pe.transformFlags&16384);switch(R.module){case 2:return Ec(Me,ur);case 3:return xs(Me??u.createVoidZero(),ur);case 1:default:return xi(Me)}}function xs(Pe,ar){if(Fe=!0,IY(Pe)){let sn=Ip(Pe)?Pe:bu(Pe)?u.createStringLiteralFromNode(Pe):co(un(u.cloneNode(Pe),Pe),3072);return u.createConditionalExpression(u.createIdentifier("__syncRequire"),void 0,xi(Pe),void 0,Ec(sn,ar))}else{let sn=u.createTempVariable(b);return u.createComma(u.createAssignment(sn,Pe),u.createConditionalExpression(u.createIdentifier("__syncRequire"),void 0,xi(sn,!0),void 0,Ec(sn,ar)))}}function Ec(Pe,ar){let sn=u.createUniqueName("resolve"),Me=u.createUniqueName("reject"),ur=[u.createParameterDeclaration(void 0,void 0,sn),u.createParameterDeclaration(void 0,void 0,Me)],Re=u.createBlock([u.createExpressionStatement(u.createCallExpression(u.createIdentifier("require"),void 0,[u.createArrayLiteralExpression([Pe||u.createOmittedExpression()]),sn,Me]))]),Jt;P>=2?Jt=u.createArrowFunction(void 0,void 0,ur,void 0,void 0,Re):(Jt=u.createFunctionExpression(void 0,void 0,void 0,void 0,ur,void 0,Re),ar&&co(Jt,16));let bt=u.createNewExpression(u.createIdentifier("Promise"),void 0,[Jt]);return IN(R)?u.createCallExpression(u.createPropertyAccessExpression(bt,u.createIdentifier("then")),void 0,[d().createImportStarCallbackHelper()]):bt}function xi(Pe,ar){let sn=Pe&&!DN(Pe)&&!ar,Me=u.createCallExpression(u.createPropertyAccessExpression(u.createIdentifier("Promise"),"resolve"),void 0,sn?P>=2?[u.createTemplateExpression(u.createTemplateHead(""),[u.createTemplateSpan(Pe,u.createTemplateTail(""))])]:[u.createCallExpression(u.createPropertyAccessExpression(u.createStringLiteral(""),"concat"),void 0,[Pe])]:[]),ur=u.createCallExpression(u.createIdentifier("require"),void 0,sn?[u.createIdentifier("s")]:Pe?[Pe]:[]);IN(R)&&(ur=d().createImportStarHelper(ur));let Re=sn?[u.createParameterDeclaration(void 0,void 0,"s")]:[],Jt;return P>=2?Jt=u.createArrowFunction(void 0,void 0,Re,void 0,void 0,ur):Jt=u.createFunctionExpression(void 0,void 0,void 0,void 0,Re,void 0,u.createBlock([u.createReturnStatement(ur)])),u.createCallExpression(u.createPropertyAccessExpression(Me,"then"),void 0,[Jt])}function rc(Pe,ar){return!IN(R)||kE(Pe)&2?ar:HDt(Pe)?d().createImportStarHelper(ar):ar}function Vl(Pe,ar){return!IN(R)||kE(Pe)&2?ar:Gke(Pe)?d().createImportStarHelper(ar):t6e(Pe)?d().createImportDefaultHelper(ar):ar}function ul(Pe){let ar,sn=WX(Pe);if(M!==2)if(Pe.importClause){let Me=[];sn&&!xQ(Pe)?Me.push(u.createVariableDeclaration(u.cloneNode(sn.name),void 0,void 0,Vl(Pe,Cc(Pe)))):(Me.push(u.createVariableDeclaration(u.getGeneratedNameForNode(Pe),void 0,void 0,Vl(Pe,Cc(Pe)))),sn&&xQ(Pe)&&Me.push(u.createVariableDeclaration(u.cloneNode(sn.name),void 0,void 0,u.getGeneratedNameForNode(Pe)))),ar=Hr(ar,Ho(un(u.createVariableStatement(void 0,u.createVariableDeclarationList(Me,P>=2?2:0)),Pe),Pe))}else return Ho(un(u.createExpressionStatement(Cc(Pe)),Pe),Pe);else sn&&xQ(Pe)&&(ar=Hr(ar,u.createVariableStatement(void 0,u.createVariableDeclarationList([Ho(un(u.createVariableDeclaration(u.cloneNode(sn.name),void 0,void 0,u.getGeneratedNameForNode(Pe)),Pe),Pe)],P>=2?2:0))));return ar=Nc(ar,Pe),hl(ar)}function Cc(Pe){let ar=F6(u,Pe,Ae,V,N,R),sn=[];return ar&&sn.push(ar),u.createCallExpression(u.createIdentifier("require"),void 0,sn)}function _s(Pe){w.assert(EZ(Pe),"import= for internal module references should be handled in an earlier transformer.");let ar;return M!==2?ba(Pe,32)?ar=Hr(ar,Ho(un(u.createExpressionStatement(br(Pe.name,Cc(Pe))),Pe),Pe)):ar=Hr(ar,Ho(un(u.createVariableStatement(void 0,u.createVariableDeclarationList([u.createVariableDeclaration(u.cloneNode(Pe.name),void 0,void 0,Cc(Pe))],P>=2?2:0)),Pe),Pe)):ba(Pe,32)&&(ar=Hr(ar,Ho(un(u.createExpressionStatement(br(u.getExportName(Pe),u.getLocalName(Pe))),Pe),Pe))),ar=cg(ar,Pe),hl(ar)}function Wu(Pe){if(!Pe.moduleSpecifier)return;let ar=u.getGeneratedNameForNode(Pe);if(Pe.exportClause&&GB(Pe.exportClause)){let sn=[];M!==2&&sn.push(Ho(un(u.createVariableStatement(void 0,u.createVariableDeclarationList([u.createVariableDeclaration(ar,void 0,void 0,Cc(Pe))])),Pe),Pe));for(let Me of Pe.exportClause.elements){let ur=!!IN(R)&&!(kE(Pe)&2)&&ao(Me.propertyName||Me.name)==="default",Re=u.createPropertyAccessExpression(ur?d().createImportDefaultHelper(ar):ar,Me.propertyName||Me.name);sn.push(Ho(un(u.createExpressionStatement(br(u.getExportName(Me),Re,void 0,!0)),Me),Me))}return hl(sn)}else if(Pe.exportClause){let sn=[];return sn.push(Ho(un(u.createExpressionStatement(br(u.cloneNode(Pe.exportClause.name),rc(Pe,M!==2?Cc(Pe):BQ(Pe)?ar:u.createIdentifier(ao(Pe.exportClause.name))))),Pe),Pe)),hl(sn)}else return Ho(un(u.createExpressionStatement(d().createExportStarHelper(M!==2?Cc(Pe):ar)),Pe),Pe)}function ir(Pe){if(!Pe.isExportEquals)return St(u.createIdentifier("default"),xr(Pe.expression,wt,tn),Pe,!0)}function ni(Pe){let ar;return ba(Pe,32)?ar=Hr(ar,Ho(un(u.createFunctionDeclaration(ws(Pe.modifiers,Qt,gg),Pe.asteriskToken,u.getDeclarationName(Pe,!0,!0),void 0,ws(Pe.parameters,wt,Jc),void 0,ns(Pe.body,wt,n)),Pe),Pe)):ar=Hr(ar,ns(Pe,wt,n)),hl(ar)}function gs(Pe){let ar;return ba(Pe,32)?ar=Hr(ar,Ho(un(u.createClassDeclaration(ws(Pe.modifiers,Qt,Np),u.getDeclarationName(Pe,!0,!0),void 0,ws(Pe.heritageClauses,wt,WE),ws(Pe.members,wt,rC)),Pe),Pe)):ar=Hr(ar,ns(Pe,wt,n)),ar=kr(ar,Pe),hl(ar)}function Hs(Pe){let ar,sn,Me;if(ba(Pe,32)){let ur,Re=!1;for(let Jt of Pe.declarationList.declarations)if(sr(Jt.name)&&kG(Jt.name))if(ur||(ur=ws(Pe.modifiers,Qt,gg)),Jt.initializer){let bt=u.updateVariableDeclaration(Jt,Jt.name,void 0,void 0,br(Jt.name,xr(Jt.initializer,wt,tn)));sn=Hr(sn,bt)}else sn=Hr(sn,Jt);else if(Jt.initializer)if(!pu(Jt.name)&&(fd(Jt.initializer)||WA(Jt.initializer)||tp(Jt.initializer))){let bt=u.createAssignment(un(u.createPropertyAccessExpression(u.createIdentifier("exports"),Jt.name),Jt.name),u.createIdentifier(T2(Jt.name))),Vt=u.createVariableDeclaration(Jt.name,Jt.exclamationToken,Jt.type,xr(Jt.initializer,wt,tn));sn=Hr(sn,Vt),Me=Hr(Me,bt),Re=!0}else Me=Hr(Me,nc(Jt));if(sn&&(ar=Hr(ar,u.updateVariableStatement(Pe,ur,u.updateVariableDeclarationList(Pe.declarationList,sn)))),Me){let Jt=Ho(un(u.createExpressionStatement(u.inlineExpressions(Me)),Pe),Pe);Re&&tte(Jt),ar=Hr(ar,Jt)}}else ar=Hr(ar,ns(Pe,wt,n));return ar=Ku(ar,Pe),hl(ar)}function qa(Pe,ar,sn){let Me=wn(Pe);if(Me){let ur=qxe(Pe)?ar:u.createAssignment(Pe,ar);for(let Re of Me)co(ur,8),ur=br(Re,ur,sn);return ur}return u.createAssignment(Pe,ar)}function nc(Pe){return pu(Pe.name)?m4(xr(Pe,wt,Gee),wt,n,0,!1,qa):u.createAssignment(un(u.createPropertyAccessExpression(u.createIdentifier("exports"),Pe.name),Pe.name),Pe.initializer?xr(Pe.initializer,wt,tn):u.createVoidZero())}function Nc(Pe,ar){if(de.exportEquals)return Pe;let sn=ar.importClause;if(!sn)return Pe;let Me=new Bte;sn.name&&(Pe=en(Pe,Me,sn));let ur=sn.namedBindings;if(ur)switch(ur.kind){case 274:Pe=en(Pe,Me,ur);break;case 275:for(let Re of ur.elements)Pe=en(Pe,Me,Re,!0);break}return Pe}function cg(Pe,ar){return de.exportEquals?Pe:en(Pe,new Bte,ar)}function Ku(Pe,ar){return Bi(Pe,ar.declarationList,!1)}function Bi(Pe,ar,sn){if(de.exportEquals)return Pe;for(let Me of ar.declarations)Pe=BA(Pe,Me,sn);return Pe}function BA(Pe,ar,sn){if(de.exportEquals)return Pe;if(pu(ar.name))for(let Me of ar.name.elements)ef(Me)||(Pe=BA(Pe,Me,sn));else!Ip(ar.name)&&(!zs(ar)||ar.initializer||sn)&&(Pe=en(Pe,new Bte,ar));return Pe}function kr(Pe,ar){if(de.exportEquals)return Pe;let sn=new Bte;if(ba(ar,32)){let Me=ba(ar,2048)?u.createIdentifier("default"):u.getDeclarationName(ar);Pe=ct(Pe,sn,Me,u.getLocalName(ar),ar)}return ar.name&&(Pe=en(Pe,sn,ar)),Pe}function en(Pe,ar,sn,Me){let ur=u.getDeclarationName(sn),Re=de.exportSpecifiers.get(ur);if(Re)for(let Jt of Re)Pe=ct(Pe,ar,Jt.name,ur,Jt.name,void 0,Me);return Pe}function ct(Pe,ar,sn,Me,ur,Re,Jt){return ar.has(sn)||(ar.set(sn,!0),Pe=Hr(Pe,St(sn,Me,ur,Re,Jt))),Pe}function rn(){let Pe=u.createExpressionStatement(u.createCallExpression(u.createPropertyAccessExpression(u.createIdentifier("Object"),"defineProperty"),void 0,[u.createIdentifier("exports"),u.createStringLiteral("__esModule"),u.createObjectLiteralExpression([u.createPropertyAssignment("value",u.createTrue())])]));return co(Pe,2097152),Pe}function St(Pe,ar,sn,Me,ur){let Re=un(u.createExpressionStatement(br(Pe,ar,void 0,ur)),sn);return l0(Re),Me||co(Re,3072),Re}function br(Pe,ar,sn,Me){return un(Me?u.createCallExpression(u.createPropertyAccessExpression(u.createIdentifier("Object"),"defineProperty"),void 0,[u.createIdentifier("exports"),u.createStringLiteralFromNode(Pe),u.createObjectLiteralExpression([u.createPropertyAssignment("enumerable",u.createTrue()),u.createPropertyAssignment("get",u.createFunctionExpression(void 0,void 0,void 0,void 0,[],void 0,u.createBlock([u.createReturnStatement(ar)])))])]):u.createAssignment(u.createPropertyAccessExpression(u.createIdentifier("exports"),u.cloneNode(Pe)),ar),sn)}function Qt(Pe){switch(Pe.kind){case 95:case 90:return}return Pe}function _r(Pe,ar,sn){ar.kind===307?(Ae=ar,de=ue[by(Ae)],re(Pe,ar,sn),Ae=void 0,de=void 0):re(Pe,ar,sn)}function Pr(Pe,ar){return ar=te(Pe,ar),ar.id&&Be[ar.id]?ar:Pe===1?cr(ar):G_(ar)?ti(ar):ar}function ti(Pe){let ar=Pe.name,sn=an(ar);if(sn!==ar){if(Pe.objectAssignmentInitializer){let Me=u.createAssignment(sn,Pe.objectAssignmentInitializer);return un(u.createPropertyAssignment(ar,Me),Pe)}return un(u.createPropertyAssignment(ar,sn),Pe)}return Pe}function cr(Pe){switch(Pe.kind){case 80:return an(Pe);case 213:return kn(Pe);case 215:return Pn(Pe);case 226:return Kr(Pe)}return Pe}function kn(Pe){if(sr(Pe.expression)){let ar=an(Pe.expression);if(Be[sd(ar)]=!0,!sr(ar)&&!(Sg(Pe.expression)&8192))return eY(u.updateCallExpression(Pe,ar,void 0,Pe.arguments),16)}return Pe}function Pn(Pe){if(sr(Pe.tag)){let ar=an(Pe.tag);if(Be[sd(ar)]=!0,!sr(ar)&&!(Sg(Pe.tag)&8192))return eY(u.updateTaggedTemplateExpression(Pe,ar,void 0,Pe.template),16)}return Pe}function an(Pe){var ar,sn;if(Sg(Pe)&8192){let Me=eke(Ae);return Me?u.createPropertyAccessExpression(Me,Pe):Pe}else if(!(Ip(Pe)&&!(Pe.emitNode.autoGenerate.flags&64))&&!kG(Pe)){let Me=N.getReferencedExportContainer(Pe,qxe(Pe));if(Me&&Me.kind===307)return un(u.createPropertyAccessExpression(u.createIdentifier("exports"),u.cloneNode(Pe)),Pe);let ur=N.getReferencedImportDeclaration(Pe);if(ur){if(sT(ur))return un(u.createPropertyAccessExpression(u.getGeneratedNameForNode(ur.parent),u.createIdentifier("default")),Pe);if(_y(ur)){let Re=ur.propertyName||ur.name;return un(u.createPropertyAccessExpression(u.getGeneratedNameForNode(((sn=(ar=ur.parent)==null?void 0:ar.parent)==null?void 0:sn.parent)||ur),u.cloneNode(Re)),Pe)}}}return Pe}function Kr(Pe){if(qR(Pe.operatorToken.kind)&&sr(Pe.left)&&(!Ip(Pe.left)||fX(Pe.left))&&!kG(Pe.left)){let ar=wn(Pe.left);if(ar){let sn=Pe;for(let Me of ar)Be[sd(sn)]=!0,sn=br(Me,sn,Pe);return sn}}return Pe}function wn(Pe){if(Ip(Pe)){if(fX(Pe)){let ar=de?.exportSpecifiers.get(Pe);if(ar){let sn=[];for(let Me of ar)sn.push(Me.name);return sn}}}else{let ar=N.getReferencedImportDeclaration(Pe);if(ar)return de?.exportedBindings[by(ar)];let sn=new Set,Me=N.getReferencedValueDeclarations(Pe);if(Me){for(let ur of Me){let Re=de?.exportedBindings[by(ur)];if(Re)for(let Jt of Re)sn.add(Jt)}if(sn.size)return on(sn)}}}}var I7i={name:"typescript:dynamicimport-sync-require",scoped:!0,text:` - var __syncRequire = typeof module === "object" && typeof module.exports === "object";`};function vxt(n){let{factory:c,startLexicalEnvironment:u,endLexicalEnvironment:d,hoistVariableDeclaration:I}=n,h=n.getCompilerOptions(),b=n.getEmitResolver(),R=n.getEmitHost(),N=n.onSubstituteNode,V=n.onEmitNode;n.onSubstituteNode=br,n.onEmitNode=St,n.enableSubstitution(80),n.enableSubstitution(304),n.enableSubstitution(226),n.enableSubstitution(236),n.enableEmitNotification(307);let P=[],M=[],te=[],re=[],ue,Ae,de,Be,Fe,Ne,Qe;return lT(n,De);function De(Pe){if(Pe.isDeclarationFile||!(U9(Pe,h)||Pe.transformFlags&8388608))return Pe;let ar=by(Pe);ue=Pe,Ne=Pe,Ae=P[ar]=r6e(n,Pe),de=c.createUniqueName("exports"),M[ar]=de,Be=re[ar]=c.createUniqueName("context");let sn=lt(Ae.externalImports),Me=Le(Pe,sn),ur=c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,de),c.createParameterDeclaration(void 0,void 0,Be)],void 0,Me),Re=Qhe(c,Pe,R,h),Jt=c.createArrayLiteralExpression(Ot(sn,Vt=>Vt.name)),bt=co(c.updateSourceFile(Pe,un(c.createNodeArray([c.createExpressionStatement(c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("System"),"register"),void 0,Re?[Re,Jt,ur]:[Jt,ur]))]),Pe.statements)),2048);return h.outFile||xu(bt,Me,Vt=>!Vt.scoped),Qe&&(te[ar]=Qe,Qe=void 0),ue=void 0,Ae=void 0,de=void 0,Be=void 0,Fe=void 0,Ne=void 0,bt}function lt(Pe){let ar=new Map,sn=[];for(let Me of Pe){let ur=F6(c,Me,ue,R,b,h);if(ur){let Re=ur.text,Jt=ar.get(Re);Jt!==void 0?sn[Jt].externalImports.push(Me):(ar.set(Re,sn.length),sn.push({name:ur,externalImports:[Me]}))}}return sn}function Le(Pe,ar){let sn=[];u();let Me=D_(h,"alwaysStrict")||mm(ue),ur=c.copyPrologue(Pe.statements,sn,Me,qe);sn.push(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration("__moduleName",void 0,void 0,c.createLogicalAnd(Be,c.createPropertyAccessExpression(Be,"id")))]))),xr(Ae.externalHelpersImportDeclaration,qe,Ic);let Re=ws(Pe.statements,qe,Ic,ur);ai(sn,Fe),kS(sn,d());let Jt=je(sn),bt=Pe.transformFlags&2097152?c.createModifiersFromModifierFlags(1024):void 0,Vt=c.createObjectLiteralExpression([c.createPropertyAssignment("setters",nt(Jt,ar)),c.createPropertyAssignment("execute",c.createFunctionExpression(bt,void 0,void 0,void 0,[],void 0,c.createBlock(Re,!0)))],!0);return sn.push(c.createReturnStatement(Vt)),c.createBlock(sn,!0)}function je(Pe){if(!Ae.hasExportStarsToExportValues)return;if(!lr(Ae.exportedNames)&&Ae.exportedFunctions.size===0&&Ae.exportSpecifiers.size===0){let ur=!1;for(let Re of Ae.externalImports)if(Re.kind===278&&Re.exportClause){ur=!0;break}if(!ur){let Re=st(void 0);return Pe.push(Re),Re.name}}let ar=[];if(Ae.exportedNames)for(let ur of Ae.exportedNames)ur.escapedText!=="default"&&ar.push(c.createPropertyAssignment(c.createStringLiteralFromNode(ur),c.createTrue()));for(let ur of Ae.exportedFunctions)ba(ur,2048)||(w.assert(!!ur.name),ar.push(c.createPropertyAssignment(c.createStringLiteralFromNode(ur.name),c.createTrue())));let sn=c.createUniqueName("exportedNames");Pe.push(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(sn,void 0,void 0,c.createObjectLiteralExpression(ar,!0))])));let Me=st(sn);return Pe.push(Me),Me.name}function st(Pe){let ar=c.createUniqueName("exportStar"),sn=c.createIdentifier("m"),Me=c.createIdentifier("n"),ur=c.createIdentifier("exports"),Re=c.createStrictInequality(Me,c.createStringLiteral("default"));return Pe&&(Re=c.createLogicalAnd(Re,c.createLogicalNot(c.createCallExpression(c.createPropertyAccessExpression(Pe,"hasOwnProperty"),void 0,[Me])))),c.createFunctionDeclaration(void 0,void 0,ar,void 0,[c.createParameterDeclaration(void 0,void 0,sn)],void 0,c.createBlock([c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(ur,void 0,void 0,c.createObjectLiteralExpression([]))])),c.createForInStatement(c.createVariableDeclarationList([c.createVariableDeclaration(Me)]),sn,c.createBlock([co(c.createIfStatement(Re,c.createExpressionStatement(c.createAssignment(c.createElementAccessExpression(ur,Me),c.createElementAccessExpression(sn,Me)))),1)])),c.createExpressionStatement(c.createCallExpression(de,void 0,[ur]))],!0))}function nt(Pe,ar){let sn=[];for(let Me of ar){let ur=X(Me.externalImports,bt=>dte(c,bt,ue)),Re=ur?c.getGeneratedNameForNode(ur):c.createUniqueName(""),Jt=[];for(let bt of Me.externalImports){let Vt=dte(c,bt,ue);switch(bt.kind){case 272:if(!bt.importClause)break;case 271:w.assert(Vt!==void 0),Jt.push(c.createExpressionStatement(c.createAssignment(Vt,Re))),ba(bt,32)&&Jt.push(c.createExpressionStatement(c.createCallExpression(de,void 0,[c.createStringLiteral(ao(Vt)),Re])));break;case 278:if(w.assert(Vt!==void 0),bt.exportClause)if(GB(bt.exportClause)){let dn=[];for(let On of bt.exportClause.elements)dn.push(c.createPropertyAssignment(c.createStringLiteral(ao(On.name)),c.createElementAccessExpression(Re,c.createStringLiteral(ao(On.propertyName||On.name)))));Jt.push(c.createExpressionStatement(c.createCallExpression(de,void 0,[c.createObjectLiteralExpression(dn,!0)])))}else Jt.push(c.createExpressionStatement(c.createCallExpression(de,void 0,[c.createStringLiteral(ao(bt.exportClause.name)),Re])));else Jt.push(c.createExpressionStatement(c.createCallExpression(Pe,void 0,[Re])));break}}sn.push(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,Re)],void 0,c.createBlock(Jt,!0)))}return c.createArrayLiteralExpression(sn,!0)}function qe(Pe){switch(Pe.kind){case 272:return it(Pe);case 271:return dt(Pe);case 278:return It(Pe);case 277:return wt(Pe);default:return bi(Pe)}}function it(Pe){let ar;return Pe.importClause&&I(dte(c,Pe,ue)),hl(Dr(ar,Pe))}function It(Pe){w.assertIsDefined(Pe)}function dt(Pe){w.assert(EZ(Pe),"import= for internal module references should be handled in an earlier transformer.");let ar;return I(dte(c,Pe,ue)),hl(jt(ar,Pe))}function wt(Pe){if(Pe.isExportEquals)return;let ar=xr(Pe.expression,nc,tn);return zr(c.createIdentifier("default"),ar,!0)}function vt(Pe){ba(Pe,32)?Fe=Hr(Fe,c.updateFunctionDeclaration(Pe,ws(Pe.modifiers,rn,Np),Pe.asteriskToken,c.getDeclarationName(Pe,!0,!0),void 0,ws(Pe.parameters,nc,Jc),void 0,xr(Pe.body,nc,mc))):Fe=Hr(Fe,ns(Pe,nc,n)),Fe=Vr(Fe,Pe)}function Ye(Pe){let ar,sn=c.getLocalName(Pe);return I(sn),ar=Hr(ar,un(c.createExpressionStatement(c.createAssignment(sn,un(c.createClassExpression(ws(Pe.modifiers,rn,Np),Pe.name,void 0,ws(Pe.heritageClauses,nc,WE),ws(Pe.members,nc,rC)),Pe))),Pe)),ar=Vr(ar,Pe),hl(ar)}function ht(Pe){if(!Kt(Pe.declarationList))return xr(Pe,nc,Ic);let ar;if(pd(Pe.declarationList)||Mg(Pe.declarationList)){let sn=ws(Pe.modifiers,rn,Np),Me=[];for(let Re of Pe.declarationList.declarations)Me.push(c.updateVariableDeclaration(Re,c.getGeneratedNameForNode(Re.name),void 0,void 0,Tt(Re,!1)));let ur=c.updateVariableDeclarationList(Pe.declarationList,Me);ar=Hr(ar,c.updateVariableStatement(Pe,sn,ur))}else{let sn,Me=ba(Pe,32);for(let ur of Pe.declarationList.declarations)ur.initializer?sn=Hr(sn,Tt(ur,Me)):Et(ur);sn&&(ar=Hr(ar,un(c.createExpressionStatement(c.inlineExpressions(sn)),Pe)))}return ar=mr(ar,Pe,!1),hl(ar)}function Et(Pe){if(pu(Pe.name))for(let ar of Pe.name.elements)ef(ar)||Et(ar);else I(c.cloneNode(Pe.name))}function Kt(Pe){return(Sg(Pe)&4194304)===0&&(Ne.kind===307||(Tp(Pe).flags&7)===0)}function Tt(Pe,ar){let sn=ar?Lt:kt;return pu(Pe.name)?m4(Pe,nc,n,0,!1,sn):Pe.initializer?sn(Pe.name,xr(Pe.initializer,nc,tn)):Pe.name}function Lt(Pe,ar,sn){return Zt(Pe,ar,sn,!0)}function kt(Pe,ar,sn){return Zt(Pe,ar,sn,!1)}function Zt(Pe,ar,sn,Me){return I(c.cloneNode(Pe)),Me?$n(Pe,Kr(un(c.createAssignment(Pe,ar),sn))):Kr(un(c.createAssignment(Pe,ar),sn))}function Dr(Pe,ar){if(Ae.exportEquals)return Pe;let sn=ar.importClause;if(!sn)return Pe;sn.name&&(Pe=Yr(Pe,sn));let Me=sn.namedBindings;if(Me)switch(Me.kind){case 274:Pe=Yr(Pe,Me);break;case 275:for(let ur of Me.elements)Pe=Yr(Pe,ur);break}return Pe}function jt(Pe,ar){return Ae.exportEquals?Pe:Yr(Pe,ar)}function mr(Pe,ar,sn){if(Ae.exportEquals)return Pe;for(let Me of ar.declarationList.declarations)(Me.initializer||sn)&&(Pe=Pt(Pe,Me,sn));return Pe}function Pt(Pe,ar,sn){if(Ae.exportEquals)return Pe;if(pu(ar.name))for(let Me of ar.name.elements)ef(Me)||(Pe=Pt(Pe,Me,sn));else if(!Ip(ar.name)){let Me;sn&&(Pe=pr(Pe,ar.name,c.getLocalName(ar)),Me=ao(ar.name)),Pe=Yr(Pe,ar,Me)}return Pe}function Vr(Pe,ar){if(Ae.exportEquals)return Pe;let sn;if(ba(ar,32)){let Me=ba(ar,2048)?c.createStringLiteral("default"):ar.name;Pe=pr(Pe,Me,c.getLocalName(ar)),sn=T2(Me)}return ar.name&&(Pe=Yr(Pe,ar,sn)),Pe}function Yr(Pe,ar,sn){if(Ae.exportEquals)return Pe;let Me=c.getDeclarationName(ar),ur=Ae.exportSpecifiers.get(Me);if(ur)for(let Re of ur)Re.name.escapedText!==sn&&(Pe=pr(Pe,Re.name,Me));return Pe}function pr(Pe,ar,sn,Me){return Pe=Hr(Pe,zr(ar,sn,Me)),Pe}function zr(Pe,ar,sn){let Me=c.createExpressionStatement($n(Pe,ar));return l0(Me),sn||co(Me,3072),Me}function $n(Pe,ar){let sn=sr(Pe)?c.createStringLiteralFromNode(Pe):Pe;return co(ar,Sg(ar)|3072),mA(c.createCallExpression(de,void 0,[sn,ar]),ar)}function bi(Pe){switch(Pe.kind){case 243:return ht(Pe);case 262:return vt(Pe);case 263:return Ye(Pe);case 248:return Pi(Pe,!0);case 249:return Ns(Pe);case 250:return gi(Pe);case 246:return Ec(Pe);case 247:return xi(Pe);case 256:return rc(Pe);case 254:return Vl(Pe);case 245:return ul(Pe);case 255:return Cc(Pe);case 269:return _s(Pe);case 296:return Wu(Pe);case 297:return ir(Pe);case 258:return ni(Pe);case 299:return gs(Pe);case 241:return Hs(Pe);default:return nc(Pe)}}function Pi(Pe,ar){let sn=Ne;return Ne=Pe,Pe=c.updateForStatement(Pe,xr(Pe.initializer,ar?xs:Nc,P0),xr(Pe.condition,nc,tn),xr(Pe.incrementor,Nc,tn),yy(Pe.statement,ar?bi:nc,n)),Ne=sn,Pe}function Ns(Pe){let ar=Ne;return Ne=Pe,Pe=c.updateForInStatement(Pe,xs(Pe.initializer),xr(Pe.expression,nc,tn),yy(Pe.statement,bi,n)),Ne=ar,Pe}function gi(Pe){let ar=Ne;return Ne=Pe,Pe=c.updateForOfStatement(Pe,Pe.awaitModifier,xs(Pe.initializer),xr(Pe.expression,nc,tn),yy(Pe.statement,bi,n)),Ne=ar,Pe}function jn(Pe){return yl(Pe)&&Kt(Pe)}function xs(Pe){if(jn(Pe)){let ar;for(let sn of Pe.declarations)ar=Hr(ar,Tt(sn,!1)),sn.initializer||Et(sn);return ar?c.inlineExpressions(ar):c.createOmittedExpression()}else return xr(Pe,Nc,P0)}function Ec(Pe){return c.updateDoStatement(Pe,yy(Pe.statement,bi,n),xr(Pe.expression,nc,tn))}function xi(Pe){return c.updateWhileStatement(Pe,xr(Pe.expression,nc,tn),yy(Pe.statement,bi,n))}function rc(Pe){return c.updateLabeledStatement(Pe,Pe.label,w.checkDefined(xr(Pe.statement,bi,Ic,c.liftToBlock)))}function Vl(Pe){return c.updateWithStatement(Pe,xr(Pe.expression,nc,tn),w.checkDefined(xr(Pe.statement,bi,Ic,c.liftToBlock)))}function ul(Pe){return c.updateIfStatement(Pe,xr(Pe.expression,nc,tn),w.checkDefined(xr(Pe.thenStatement,bi,Ic,c.liftToBlock)),xr(Pe.elseStatement,bi,Ic,c.liftToBlock))}function Cc(Pe){return c.updateSwitchStatement(Pe,xr(Pe.expression,nc,tn),w.checkDefined(xr(Pe.caseBlock,bi,xle)))}function _s(Pe){let ar=Ne;return Ne=Pe,Pe=c.updateCaseBlock(Pe,ws(Pe.clauses,bi,vX)),Ne=ar,Pe}function Wu(Pe){return c.updateCaseClause(Pe,xr(Pe.expression,nc,tn),ws(Pe.statements,bi,Ic))}function ir(Pe){return ns(Pe,bi,n)}function ni(Pe){return ns(Pe,bi,n)}function gs(Pe){let ar=Ne;return Ne=Pe,Pe=c.updateCatchClause(Pe,Pe.variableDeclaration,w.checkDefined(xr(Pe.block,bi,mc))),Ne=ar,Pe}function Hs(Pe){let ar=Ne;return Ne=Pe,Pe=ns(Pe,bi,n),Ne=ar,Pe}function qa(Pe,ar){if(!(Pe.transformFlags&276828160))return Pe;switch(Pe.kind){case 248:return Pi(Pe,!1);case 244:return cg(Pe);case 217:return Ku(Pe,ar);case 354:return Bi(Pe,ar);case 226:if(kv(Pe))return kr(Pe,ar);break;case 213:if(pC(Pe))return BA(Pe);break;case 224:case 225:return ct(Pe,ar)}return ns(Pe,nc,n)}function nc(Pe){return qa(Pe,!1)}function Nc(Pe){return qa(Pe,!0)}function cg(Pe){return c.updateExpressionStatement(Pe,xr(Pe.expression,Nc,tn))}function Ku(Pe,ar){return c.updateParenthesizedExpression(Pe,xr(Pe.expression,ar?Nc:nc,tn))}function Bi(Pe,ar){return c.updatePartiallyEmittedExpression(Pe,xr(Pe.expression,ar?Nc:nc,tn))}function BA(Pe){let ar=F6(c,Pe,ue,R,b,h),sn=xr($i(Pe.arguments),nc,tn),Me=ar&&(!sn||!bu(sn)||sn.text!==ar.text)?ar:sn;return c.createCallExpression(c.createPropertyAccessExpression(Be,c.createIdentifier("import")),void 0,Me?[Me]:[])}function kr(Pe,ar){return en(Pe.left)?m4(Pe,nc,n,0,!ar):ns(Pe,nc,n)}function en(Pe){if(fm(Pe,!0))return en(Pe.left);if(ph(Pe))return en(Pe.expression);if(tu(Pe))return lr(Pe.properties,en);if(If(Pe))return lr(Pe.elements,en);if(G_(Pe))return en(Pe.name);if(KC(Pe))return en(Pe.initializer);if(sr(Pe)){let ar=b.getReferencedExportContainer(Pe);return ar!==void 0&&ar.kind===307}else return!1}function ct(Pe,ar){if((Pe.operator===46||Pe.operator===47)&&sr(Pe.operand)&&!Ip(Pe.operand)&&!kG(Pe.operand)&&!Xme(Pe.operand)){let sn=Pn(Pe.operand);if(sn){let Me,ur=xr(Pe.operand,nc,tn);xB(Pe)?ur=c.updatePrefixUnaryExpression(Pe,ur):(ur=c.updatePostfixUnaryExpression(Pe,ur),ar||(Me=c.createTempVariable(I),ur=c.createAssignment(Me,ur),un(ur,Pe)),ur=c.createComma(ur,c.cloneNode(Pe.operand)),un(ur,Pe));for(let Re of sn)ur=$n(Re,Kr(ur));return Me&&(ur=c.createComma(ur,Me),un(ur,Pe)),ur}}return ns(Pe,nc,n)}function rn(Pe){switch(Pe.kind){case 95:case 90:return}return Pe}function St(Pe,ar,sn){if(ar.kind===307){let Me=by(ar);ue=ar,Ae=P[Me],de=M[Me],Qe=te[Me],Be=re[Me],Qe&&delete te[Me],V(Pe,ar,sn),ue=void 0,Ae=void 0,de=void 0,Be=void 0,Qe=void 0}else V(Pe,ar,sn)}function br(Pe,ar){return ar=N(Pe,ar),wn(ar)?ar:Pe===1?Pr(ar):Pe===4?Qt(ar):ar}function Qt(Pe){switch(Pe.kind){case 304:return _r(Pe)}return Pe}function _r(Pe){var ar,sn;let Me=Pe.name;if(!Ip(Me)&&!kG(Me)){let ur=b.getReferencedImportDeclaration(Me);if(ur){if(sT(ur))return un(c.createPropertyAssignment(c.cloneNode(Me),c.createPropertyAccessExpression(c.getGeneratedNameForNode(ur.parent),c.createIdentifier("default"))),Pe);if(_y(ur))return un(c.createPropertyAssignment(c.cloneNode(Me),c.createPropertyAccessExpression(c.getGeneratedNameForNode(((sn=(ar=ur.parent)==null?void 0:ar.parent)==null?void 0:sn.parent)||ur),c.cloneNode(ur.propertyName||ur.name))),Pe)}}return Pe}function Pr(Pe){switch(Pe.kind){case 80:return ti(Pe);case 226:return cr(Pe);case 236:return kn(Pe)}return Pe}function ti(Pe){var ar,sn;if(Sg(Pe)&8192){let Me=eke(ue);return Me?c.createPropertyAccessExpression(Me,Pe):Pe}if(!Ip(Pe)&&!kG(Pe)){let Me=b.getReferencedImportDeclaration(Pe);if(Me){if(sT(Me))return un(c.createPropertyAccessExpression(c.getGeneratedNameForNode(Me.parent),c.createIdentifier("default")),Pe);if(_y(Me))return un(c.createPropertyAccessExpression(c.getGeneratedNameForNode(((sn=(ar=Me.parent)==null?void 0:ar.parent)==null?void 0:sn.parent)||Me),c.cloneNode(Me.propertyName||Me.name)),Pe)}}return Pe}function cr(Pe){if(qR(Pe.operatorToken.kind)&&sr(Pe.left)&&(!Ip(Pe.left)||fX(Pe.left))&&!kG(Pe.left)){let ar=Pn(Pe.left);if(ar){let sn=Pe;for(let Me of ar)sn=$n(Me,Kr(sn));return sn}}return Pe}function kn(Pe){return Vb(Pe)?c.createPropertyAccessExpression(Be,c.createIdentifier("meta")):Pe}function Pn(Pe){let ar,sn=an(Pe);if(sn){let Me=b.getReferencedExportContainer(Pe,!1);Me&&Me.kind===307&&(ar=Hr(ar,c.getDeclarationName(sn))),ar=ai(ar,Ae?.exportedBindings[by(sn)])}else if(Ip(Pe)&&fX(Pe)){let Me=Ae?.exportSpecifiers.get(Pe);if(Me){let ur=[];for(let Re of Me)ur.push(Re.name);return ur}}return ar}function an(Pe){if(!Ip(Pe)){let ar=b.getReferencedImportDeclaration(Pe);if(ar)return ar;let sn=b.getReferencedValueDeclaration(Pe);if(sn&&Ae?.exportedBindings[by(sn)])return sn;let Me=b.getReferencedValueDeclarations(Pe);if(Me){for(let ur of Me)if(ur!==sn&&Ae?.exportedBindings[by(ur)])return ur}return sn}}function Kr(Pe){return Qe===void 0&&(Qe=[]),Qe[sd(Pe)]=!0,Pe}function wn(Pe){return Qe&&Pe.id&&Qe[Pe.id]}}function g6e(n){let{factory:c,getEmitHelperFactory:u}=n,d=n.getEmitHost(),I=n.getEmitResolver(),h=n.getCompilerOptions(),b=iA(h),R=n.onEmitNode,N=n.onSubstituteNode;n.onEmitNode=Qe,n.onSubstituteNode=De,n.enableEmitNotification(307),n.enableSubstitution(80);let V,P,M;return lT(n,te);function te(Le){if(Le.isDeclarationFile)return Le;if(mm(Le)||ZE(h)){P=Le,M=void 0;let je=re(Le);return P=void 0,M&&(je=c.updateSourceFile(je,un(c.createNodeArray(E8(je.statements.slice(),M)),je.statements))),!mm(Le)||R_(h)===200||lr(je.statements,D3)?je:c.updateSourceFile(je,un(c.createNodeArray([...je.statements,Phe(c)]),je.statements))}return Le}function re(Le){let je=jKe(c,u(),Le,h);if(je){let st=[],nt=c.copyPrologue(Le.statements,st);return Hr(st,je),ai(st,ws(Le.statements,ue,Ic,nt)),c.updateSourceFile(Le,un(c.createNodeArray(st),Le.statements))}else return ns(Le,ue,n)}function ue(Le){switch(Le.kind){case 271:return R_(h)>=100?de(Le):void 0;case 277:return Fe(Le);case 278:return Ne(Le)}return Le}function Ae(Le){let je=F6(c,Le,w.checkDefined(P),d,I,h),st=[];if(je&&st.push(je),R_(h)===200)return c.createCallExpression(c.createIdentifier("require"),void 0,st);if(!M){let qe=c.createUniqueName("_createRequire",48),it=c.createImportDeclaration(void 0,c.createImportClause(!1,void 0,c.createNamedImports([c.createImportSpecifier(!1,c.createIdentifier("createRequire"),qe)])),c.createStringLiteral("module"),void 0),It=c.createUniqueName("__require",48),dt=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(It,void 0,void 0,c.createCallExpression(c.cloneNode(qe),void 0,[c.createPropertyAccessExpression(c.createMetaProperty(102,c.createIdentifier("meta")),c.createIdentifier("url"))]))],b>=2?2:0));M=[it,dt]}let nt=M[1].declarationList.declarations[0].name;return w.assertNode(nt,sr),c.createCallExpression(c.cloneNode(nt),void 0,st)}function de(Le){w.assert(EZ(Le),"import= for internal module references should be handled in an earlier transformer.");let je;return je=Hr(je,Ho(un(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(c.cloneNode(Le.name),void 0,void 0,Ae(Le))],b>=2?2:0)),Le),Le)),je=Be(je,Le),hl(je)}function Be(Le,je){return ba(je,32)&&(Le=Hr(Le,c.createExportDeclaration(void 0,je.isTypeOnly,c.createNamedExports([c.createExportSpecifier(!1,void 0,ao(je.name))])))),Le}function Fe(Le){return Le.isExportEquals?R_(h)===200?Ho(c.createExpressionStatement(c.createAssignment(c.createPropertyAccessExpression(c.createIdentifier("module"),"exports"),Le.expression)),Le):void 0:Le}function Ne(Le){if(h.module!==void 0&&h.module>5||!Le.exportClause||!rD(Le.exportClause)||!Le.moduleSpecifier)return Le;let je=Le.exportClause.name,st=c.getGeneratedNameForNode(je),nt=c.createImportDeclaration(void 0,c.createImportClause(!1,void 0,c.createNamespaceImport(st)),Le.moduleSpecifier,Le.attributes);Ho(nt,Le.exportClause);let qe=BQ(Le)?c.createExportDefault(st):c.createExportDeclaration(void 0,!1,c.createNamedExports([c.createExportSpecifier(!1,st,je)]));return Ho(qe,Le),[nt,qe]}function Qe(Le,je,st){Gc(je)?((mm(je)||ZE(h))&&h.importHelpers&&(V=new Map),R(Le,je,st),V=void 0):R(Le,je,st)}function De(Le,je){return je=N(Le,je),V&&sr(je)&&Sg(je)&8192?lt(je):je}function lt(Le){let je=ao(Le),st=V.get(je);return st||V.set(je,st=c.createUniqueName(je,48)),st}}function Sxt(n){let c=n.onSubstituteNode,u=n.onEmitNode,d=g6e(n),I=n.onSubstituteNode,h=n.onEmitNode;n.onSubstituteNode=c,n.onEmitNode=u;let b=u6e(n),R=n.onSubstituteNode,N=n.onEmitNode;n.onSubstituteNode=P,n.onEmitNode=M,n.enableSubstitution(307),n.enableEmitNotification(307);let V;return ue;function P(de,Be){return Gc(Be)?(V=Be,c(de,Be)):V?V.impliedNodeFormat===99?I(de,Be):R(de,Be):c(de,Be)}function M(de,Be,Fe){return Gc(Be)&&(V=Be),V?V.impliedNodeFormat===99?h(de,Be,Fe):N(de,Be,Fe):u(de,Be,Fe)}function te(de){return de.impliedNodeFormat===99?d:b}function re(de){if(de.isDeclarationFile)return de;V=de;let Be=te(de)(de);return V=void 0,w.assert(Gc(Be)),Be}function ue(de){return de.kind===307?re(de):Ae(de)}function Ae(de){return n.factory.createBundle(Ot(de.sourceFiles,re))}}function Mke(n){return zs(n)||Ql(n)||n_(n)||ml(n)||Dh(n)||Nv(n)||A(n)||CV(n)||cI(n)||jS(n)||mp(n)||Jc(n)||qp(n)||x_(n)||Cm(n)||Wf(n)||Rf(n)||_(n)||Io(n)||hA(n)||no(n)||w2(n)}function wxt(n){if(Dh(n)||Nv(n))return c;return jS(n)||cI(n)?d:FZ(n);function c(h){let b=u(h);return b!==void 0?{diagnosticMessage:b,errorNode:n,typeName:n.name}:void 0}function u(h){return $u(n)?h.errorModuleName?h.accessibility===2?Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:n.parent.kind===263?h.errorModuleName?h.accessibility===2?Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_property_0_of_exported_class_has_or_is_using_private_name_1:h.errorModuleName?Z.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Property_0_of_exported_interface_has_or_is_using_private_name_1}function d(h){let b=I(h);return b!==void 0?{diagnosticMessage:b,errorNode:n,typeName:n.name}:void 0}function I(h){return $u(n)?h.errorModuleName?h.accessibility===2?Z.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:n.parent.kind===263?h.errorModuleName?h.accessibility===2?Z.Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_method_0_of_exported_class_has_or_is_using_private_name_1:h.errorModuleName?Z.Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Method_0_of_exported_interface_has_or_is_using_private_name_1}}function FZ(n){if(zs(n)||Ql(n)||n_(n)||Io(n)||hA(n)||no(n)||ml(n)||Rf(n))return u;return Dh(n)||Nv(n)?d:A(n)||CV(n)||cI(n)||jS(n)||mp(n)||_(n)?I:Jc(n)?Zn(n,n.parent)&&ba(n.parent,2)?u:h:qp(n)?R:x_(n)?N:Cm(n)?V:Wf(n)||w2(n)?P:w.assertNever(n,`Attempted to set a declaration diagnostic context for unhandled node kind: ${w.formatSyntaxKind(n.kind)}`);function c(M){if(n.kind===260||n.kind===208)return M.errorModuleName?M.accessibility===2?Z.Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Exported_variable_0_has_or_is_using_name_1_from_private_module_2:Z.Exported_variable_0_has_or_is_using_private_name_1;if(n.kind===172||n.kind===211||n.kind===212||n.kind===226||n.kind===171||n.kind===169&&ba(n.parent,2))return $u(n)?M.errorModuleName?M.accessibility===2?Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:n.parent.kind===263||n.kind===169?M.errorModuleName?M.accessibility===2?Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_property_0_of_exported_class_has_or_is_using_private_name_1:M.errorModuleName?Z.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Property_0_of_exported_interface_has_or_is_using_private_name_1}function u(M){let te=c(M);return te!==void 0?{diagnosticMessage:te,errorNode:n,typeName:n.name}:void 0}function d(M){let te;return n.kind===178?$u(n)?te=M.errorModuleName?Z.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:te=M.errorModuleName?Z.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:$u(n)?te=M.errorModuleName?M.accessibility===2?Z.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:te=M.errorModuleName?M.accessibility===2?Z.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1,{diagnosticMessage:te,errorNode:n.name,typeName:n.name}}function I(M){let te;switch(n.kind){case 180:te=M.errorModuleName?Z.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 179:te=M.errorModuleName?Z.Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 181:te=M.errorModuleName?Z.Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 174:case 173:$u(n)?te=M.errorModuleName?M.accessibility===2?Z.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:Z.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:n.parent.kind===263?te=M.errorModuleName?M.accessibility===2?Z.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:Z.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:te=M.errorModuleName?Z.Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0;break;case 262:te=M.errorModuleName?M.accessibility===2?Z.Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:Z.Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_exported_function_has_or_is_using_private_name_0;break;default:return w.fail("This is unknown kind for signature: "+n.kind)}return{diagnosticMessage:te,errorNode:n.name||n}}function h(M){let te=b(M);return te!==void 0?{diagnosticMessage:te,errorNode:n,typeName:n.name}:void 0}function b(M){switch(n.parent.kind){case 176:return M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1;case 180:case 185:return M.errorModuleName?Z.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;case 179:return M.errorModuleName?Z.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;case 181:return M.errorModuleName?Z.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1;case 174:case 173:return $u(n.parent)?M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:n.parent.parent.kind===263?M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:M.errorModuleName?Z.Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;case 262:case 184:return M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_exported_function_has_or_is_using_private_name_1;case 178:case 177:return M.errorModuleName?M.accessibility===2?Z.Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_accessor_has_or_is_using_private_name_1;default:return w.fail(`Unknown parent for parameter: ${w.formatSyntaxKind(n.parent.kind)}`)}}function R(){let M;switch(n.parent.kind){case 263:M=Z.Type_parameter_0_of_exported_class_has_or_is_using_private_name_1;break;case 264:M=Z.Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1;break;case 200:M=Z.Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1;break;case 185:case 180:M=Z.Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 179:M=Z.Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 174:case 173:$u(n.parent)?M=Z.Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:n.parent.parent.kind===263?M=Z.Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:M=Z.Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;break;case 184:case 262:M=Z.Type_parameter_0_of_exported_function_has_or_is_using_private_name_1;break;case 195:M=Z.Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1;break;case 265:M=Z.Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1;break;default:return w.fail("This is unknown parent for type parameter: "+n.parent.kind)}return{diagnosticMessage:M,errorNode:n,typeName:n.name}}function N(){let M;return bc(n.parent.parent)?M=WE(n.parent)&&n.parent.token===119?Z.Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:n.parent.parent.name?Z.extends_clause_of_exported_class_0_has_or_is_using_private_name_1:Z.extends_clause_of_exported_class_has_or_is_using_private_name_0:M=Z.extends_clause_of_exported_interface_0_has_or_is_using_private_name_1,{diagnosticMessage:M,errorNode:n,typeName:vl(n.parent.parent)}}function V(){return{diagnosticMessage:Z.Import_declaration_0_is_using_private_name_1,errorNode:n,typeName:n.name}}function P(M){return{diagnosticMessage:M.errorModuleName?Z.Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:Z.Exported_type_alias_0_has_or_is_using_private_name_1,errorNode:w2(n)?w.checkDefined(n.typeExpression):n.type,typeName:w2(n)?vl(n):n.name}}}function Txt(n){let c={219:Z.Add_a_return_type_to_the_function_expression,218:Z.Add_a_return_type_to_the_function_expression,174:Z.Add_a_return_type_to_the_method,177:Z.Add_a_return_type_to_the_get_accessor_declaration,178:Z.Add_a_type_to_parameter_of_the_set_accessor_declaration,262:Z.Add_a_return_type_to_the_function_declaration,180:Z.Add_a_return_type_to_the_function_declaration,169:Z.Add_a_type_annotation_to_the_parameter_0,260:Z.Add_a_type_annotation_to_the_variable_0,172:Z.Add_a_type_annotation_to_the_property_0,171:Z.Add_a_type_annotation_to_the_property_0,277:Z.Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it},u={218:Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,262:Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,219:Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,174:Z.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,180:Z.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,177:Z.At_least_one_accessor_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,178:Z.At_least_one_accessor_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,169:Z.Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations,260:Z.Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations,172:Z.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations,171:Z.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations,167:Z.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations,305:Z.Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations,304:Z.Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations,209:Z.Only_const_arrays_can_be_inferred_with_isolatedDeclarations,277:Z.Default_exports_can_t_be_inferred_with_isolatedDeclarations,230:Z.Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations};return d;function d(de){if(Si(de,WE))return Us(de,Z.Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations);if((LS(de)||oe(de.parent))&&(w_(de)||cp(de)))return ue(de);switch(w.type(de),de.kind){case 177:case 178:return h(de);case 167:case 304:case 305:return R(de);case 209:case 230:return N(de);case 174:case 180:case 218:case 219:case 262:return V(de);case 208:return P(de);case 172:case 260:return M(de);case 169:return te(de);case 303:return Ae(de.initializer);case 231:return re(de);default:return Ae(de)}}function I(de){let Be=Si(de,Fe=>tf(Fe)||Ic(Fe)||zs(Fe)||Ql(Fe)||Jc(Fe));if(Be)return tf(Be)?Be:k_(Be)?Si(Be,Fe=>dd(Fe)&&!Rf(Fe)):Ic(Be)?void 0:Be}function h(de){let{getAccessor:Be,setAccessor:Fe}=xx(de.symbol.declarations,de),Ne=(Dh(de)?de.parameters[0]:de)??de,Qe=Us(Ne,u[de.kind]);return Fe&&eg(Qe,Us(Fe,c[Fe.kind])),Be&&eg(Qe,Us(Be,c[Be.kind])),Qe}function b(de,Be){let Fe=I(de);if(Fe){let Ne=tf(Fe)||!Fe.name?"":Tf(Fe.name,!1);eg(Be,Us(Fe,c[Fe.kind],Ne))}return Be}function R(de){let Be=Us(de,u[de.kind]);return b(de,Be),Be}function N(de){let Be=Us(de,u[de.kind]);return b(de,Be),Be}function V(de){let Be=Us(de,u[de.kind]);return b(de,Be),eg(Be,Us(de,c[de.kind])),Be}function P(de){return Us(de,Z.Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations)}function M(de){let Be=Us(de,u[de.kind]),Fe=Tf(de.name,!1);return eg(Be,Us(de,c[de.kind],Fe)),Be}function te(de){if(Dh(de.parent))return h(de.parent);let Be=n.requiresAddingImplicitUndefined(de);if(!Be&&de.initializer)return Ae(de.initializer);let Fe=Be?Z.Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_it_s_type_This_is_not_supported_with_isolatedDeclarations:u[de.kind],Ne=Us(de,Fe),Qe=Tf(de.name,!1);return eg(Ne,Us(de,c[de.kind],Qe)),Ne}function re(de){return Ae(de,Z.Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations)}function ue(de){let Be=Us(de,Z.Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations,Tf(de,!1));return b(de,Be),Be}function Ae(de,Be){let Fe=I(de),Ne;if(Fe){let Qe=tf(Fe)||!Fe.name?"":Tf(Fe.name,!1),De=Si(de.parent,lt=>tf(lt)||(Ic(lt)?"quit":!FC(lt)&&!mV(lt)&&!qS(lt)));Fe===De?(Ne=Us(de,Be??u[Fe.kind]),eg(Ne,Us(Fe,c[Fe.kind],Qe))):(Ne=Us(de,Be??Z.Expression_type_can_t_be_inferred_with_isolatedDeclarations),eg(Ne,Us(Fe,c[Fe.kind],Qe)),eg(Ne,Us(de,Z.Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit)))}else Ne=Us(de,Be??Z.Expression_type_can_t_be_inferred_with_isolatedDeclarations);return Ne}}function Nxt(n,c,u){let d=n.getCompilerOptions(),I=Gt(Tce(n,u),gce);return f_e(c,n,_e,d,u?Ue(I,u)?[u]:v:I,[A6e],!1).diagnostics}var d_e=531469;function A6e(n){let c=()=>w.fail("Diagnostic emitted without context"),u=c,d=!0,I=!1,h=!1,b=!1,R=!1,N,V,P,M,{factory:te}=n,re=n.getEmitHost(),ue={trackSymbol:It,reportInaccessibleThisError:ht,reportInaccessibleUniqueSymbolError:vt,reportCyclicStructureError:Ye,reportPrivateInBaseOfClassExpression:dt,reportLikelyUnsafeImportRequiredError:Et,reportTruncationError:Kt,moduleResolverHost:re,reportNonlocalAugmentation:Tt,reportNonSerializableProperty:Lt,reportInferenceFallback:qe},Ae,de,Be,Fe,Ne,Qe,De=n.getEmitResolver(),lt=n.getCompilerOptions(),Le=Txt(De),{stripInternal:je,isolatedDeclarations:st}=lt;return Zt;function nt(ct){De.getPropertiesOfContainerFunction(ct).forEach(rn=>{if(qQ(rn.valueDeclaration)){let St=no(rn.valueDeclaration)?rn.valueDeclaration.left:rn.valueDeclaration;n.addDiagnostic(Us(St,Z.Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function))}})}function qe(ct){!st||n0(Be)||ls(ct)===Be&&(zs(ct)&&De.isExpandoFunctionDeclaration(ct)?nt(ct):n.addDiagnostic(Le(ct)))}function it(ct){if(ct.accessibility===0){if(ct.aliasesToMakeVisible)if(!V)V=ct.aliasesToMakeVisible;else for(let rn of ct.aliasesToMakeVisible)pa(V,rn)}else if(ct.accessibility!==3){let rn=u(ct);if(rn)return rn.typeName?n.addDiagnostic(Us(ct.errorNode||rn.errorNode,rn.diagnosticMessage,Tf(rn.typeName),ct.errorSymbolName,ct.errorModuleName)):n.addDiagnostic(Us(ct.errorNode||rn.errorNode,rn.diagnosticMessage,ct.errorSymbolName,ct.errorModuleName)),!0}return!1}function It(ct,rn,St){return ct.flags&262144?!1:it(De.isSymbolAccessible(ct,rn,St,!0))}function dt(ct){(Ae||de)&&n.addDiagnostic(Us(Ae||de,Z.Property_0_of_exported_class_expression_may_not_be_private_or_protected,ct))}function wt(){return Ae?xd(Ae):de&&vl(de)?xd(vl(de)):de&&tf(de)?de.isExportEquals?"export=":"default":"(Missing)"}function vt(){(Ae||de)&&n.addDiagnostic(Us(Ae||de,Z.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary,wt(),"unique symbol"))}function Ye(){(Ae||de)&&n.addDiagnostic(Us(Ae||de,Z.The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary,wt()))}function ht(){(Ae||de)&&n.addDiagnostic(Us(Ae||de,Z.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary,wt(),"this"))}function Et(ct){(Ae||de)&&n.addDiagnostic(Us(Ae||de,Z.The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary,wt(),ct))}function Kt(){(Ae||de)&&n.addDiagnostic(Us(Ae||de,Z.The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed))}function Tt(ct,rn,St){var br;let Qt=(br=rn.declarations)==null?void 0:br.find(Pr=>ls(Pr)===ct),_r=Gt(St.declarations,Pr=>ls(Pr)!==ct);if(Qt&&_r)for(let Pr of _r)n.addDiagnostic(eg(Us(Pr,Z.Declaration_augments_declaration_in_another_file_This_cannot_be_serialized),Us(Qt,Z.This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file)))}function Lt(ct){(Ae||de)&&n.addDiagnostic(Us(Ae||de,Z.The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized,ct))}function kt(ct){let rn=u;u=br=>br.errorNode&&Mke(br.errorNode)?FZ(br.errorNode)(br):{diagnosticMessage:br.errorModuleName?Z.Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit:Z.Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit,errorNode:br.errorNode||ct};let St=De.getDeclarationStatementsForSourceFile(ct,d_e,ue);return u=rn,St}function Zt(ct){if(ct.kind===307&&ct.isDeclarationFile)return ct;if(ct.kind===308){I=!0,Fe=[],Ne=[],Qe=[];let cr=!1,kn=te.createBundle(Ot(ct.sourceFiles,an=>{if(an.isDeclarationFile)return;if(cr=cr||an.hasNoDefaultLib,Be=an,N=an,V=void 0,M=!1,P=new Map,u=c,b=!1,R=!1,br(an),ia(an)||Ia(an)){h=!1,d=!1;let wn=n0(an)?te.createNodeArray(kt(an)):ws(an.statements,_s,Ic);return te.updateSourceFile(an,[te.createModuleDeclaration([te.createModifier(138)],te.createStringLiteral(Bce(n.getEmitHost(),an)),te.createModuleBlock(un(te.createNodeArray(Vl(wn)),an.statements)))],!0,[],[],!1,[])}d=!0;let Kr=n0(an)?te.createNodeArray(kt(an)):ws(an.statements,_s,Ic);return te.updateSourceFile(an,Vl(Kr),!0,[],[],!1,[])})),Pn=aa(Af(oue(ct,re,!0).declarationFilePath));return kn.syntheticFileReferences=ti(Pn),kn.syntheticTypeReferences=_r(),kn.syntheticLibReferences=Pr(),kn.hasNoDefaultLib=cr,kn}d=!0,b=!1,R=!1,N=ct,Be=ct,u=c,I=!1,h=!1,M=!1,V=void 0,P=new Map,Fe=[],Ne=[],Qe=[],br(Be);let rn;if(n0(Be))rn=te.createNodeArray(kt(ct));else{let cr=ws(ct.statements,_s,Ic);rn=un(te.createNodeArray(Vl(cr)),ct.statements),mm(ct)&&(!h||b&&!R)&&(rn=un(te.createNodeArray([...rn,Phe(te)]),rn))}let St=aa(Af(oue(ct,re,!0).declarationFilePath));return te.updateSourceFile(ct,rn,!0,ti(St),_r(),ct.hasNoDefaultLib,Pr());function br(cr){Fe=vi(Fe,Ot(cr.referencedFiles,kn=>[cr,kn])),Ne=vi(Ne,cr.typeReferenceDirectives),Qe=vi(Qe,cr.libReferenceDirectives)}function Qt(cr){let kn={...cr};return kn.pos=-1,kn.end=-1,kn}function _r(){return tr(Ne,cr=>{if(cr.preserve)return Qt(cr)})}function Pr(){return tr(Qe,cr=>{if(cr.preserve)return Qt(cr)})}function ti(cr){return tr(Fe,([kn,Pn])=>{if(!Pn.preserve)return;let an=re.getSourceFileFromReference(kn,Pn);if(!an)return;let Kr;if(an.isDeclarationFile)Kr=an.fileName;else{if(I&&Ue(ct.sourceFiles,an))return;let ar=oue(an,re,!0);Kr=ar.declarationFilePath||ar.jsFilePath||an.fileName}if(!Kr)return;let wn=xm(cr,Kr,re.getCurrentDirectory(),re.getCanonicalFileName,!1),Pe=Qt(Pn);return Pe.fileName=wn,Pe})}}function Dr(ct){if(ct.kind===80)return ct;return ct.kind===207?te.updateArrayBindingPattern(ct,ws(ct.elements,rn,R3)):te.updateObjectBindingPattern(ct,ws(ct.elements,rn,ml));function rn(St){return St.kind===232?St:(St.propertyName&&xg(St.propertyName)&&cp(St.propertyName.expression)&&gi(St.propertyName.expression,N),te.updateBindingElement(St,St.dotDotDotToken,St.propertyName,Dr(St.name),void 0))}}function jt(ct,rn,St){let br;M||(br=u,u=FZ(ct));let Qt=te.updateParameterDeclaration(ct,m7i(te,ct,rn),ct.dotDotDotToken,Dr(ct.name),De.isOptionalParameter(ct)?ct.questionToken||te.createToken(58):void 0,Vr(ct,St||ct.type,!0),Pt(ct));return M||(u=br),Qt}function mr(ct){return NGr(ct)&&!!ct.initializer&&De.isLiteralConstDeclaration(jc(ct))}function Pt(ct){if(mr(ct)){let rn=mle(ct.initializer);return Kee(rn)||qe(ct),De.createLiteralConstValue(jc(ct,NGr),ue)}}function Vr(ct,rn,St){if(!St&&nb(ct,2)||mr(ct))return;let br=ct.kind===169&&De.requiresAddingImplicitUndefined(ct);if(rn&&!br)return xr(rn,ul,Ya);Ae=ct.name;let Qt;M||(Qt=u,u=FZ(ct));let _r;switch(ct.kind){case 169:case 171:case 172:case 208:case 260:_r=De.createTypeOfDeclaration(ct,N,d_e,ue);break;case 262:case 180:case 173:case 174:case 177:case 179:_r=De.createReturnTypeOfSignatureDeclaration(ct,N,d_e,ue);break;default:w.assertNever(ct)}return Ae=void 0,M||(u=Qt),_r??te.createKeywordTypeNode(133)}function Yr(ct){switch(ct=jc(ct),ct.kind){case 262:case 267:case 264:case 263:case 265:case 266:return!De.isDeclarationVisible(ct);case 260:return!zr(ct);case 271:case 272:case 278:case 277:return!1;case 175:return!0}return!1}function pr(ct){var rn;if(ct.body)return!0;let St=(rn=ct.symbol.declarations)==null?void 0:rn.filter(br=>mp(br)&&!br.body);return!St||St.indexOf(ct)===St.length-1}function zr(ct){return ef(ct)?!1:pu(ct.name)?lr(ct.name.elements,zr):De.isDeclarationVisible(ct)}function $n(ct,rn,St){if(nb(ct,2))return te.createNodeArray();let br=Ot(rn,Qt=>jt(Qt,St));return br?te.createNodeArray(br,rn.hasTrailingComma):te.createNodeArray()}function bi(ct,rn){let St;if(!rn){let br=iV(ct);br&&(St=[jt(br)])}if(sb(ct)){let br;if(!rn){let Qt=KX(ct);if(Qt){let _r=kr(ct,xx(tu(ct.parent)?ct.parent.properties:ct.parent.members,ct));br=jt(Qt,void 0,_r)}}br||(br=te.createParameterDeclaration(void 0,void 0,"value")),St=Hr(St,br)}return te.createNodeArray(St||v)}function Pi(ct,rn){return nb(ct,2)?void 0:ws(rn,ul,qp)}function Ns(ct){return Gc(ct)||Wf(ct)||CC(ct)||bc(ct)||HI(ct)||$l(ct)||_(ct)||Sl(ct)}function gi(ct,rn){let St=De.isEntityNameVisible(ct,rn);it(St)}function jn(ct,rn){return hy(ct)&&hy(rn)&&(ct.jsDoc=rn.jsDoc),mA(ct,JS(rn))}function xs(ct,rn){if(rn){if(h=h||ct.kind!==267&&ct.kind!==205,XA(rn)&&I){let St=sDe(n.getEmitHost(),De,ct);if(St)return te.createStringLiteral(St)}return rn}}function Ec(ct){if(De.isDeclarationVisible(ct))if(ct.moduleReference.kind===283){let rn=L8(ct);return te.updateImportEqualsDeclaration(ct,ct.modifiers,ct.isTypeOnly,ct.name,te.updateExternalModuleReference(ct.moduleReference,xs(ct,rn)))}else{let rn=u;return u=FZ(ct),gi(ct.moduleReference,N),u=rn,ct}}function xi(ct){if(!ct.importClause)return te.updateImportDeclaration(ct,ct.modifiers,ct.importClause,xs(ct,ct.moduleSpecifier),rc(ct.attributes));let rn=ct.importClause&&ct.importClause.name&&De.isDeclarationVisible(ct.importClause)?ct.importClause.name:void 0;if(!ct.importClause.namedBindings)return rn&&te.updateImportDeclaration(ct,ct.modifiers,te.updateImportClause(ct.importClause,ct.importClause.isTypeOnly,rn,void 0),xs(ct,ct.moduleSpecifier),rc(ct.attributes));if(ct.importClause.namedBindings.kind===274){let br=De.isDeclarationVisible(ct.importClause.namedBindings)?ct.importClause.namedBindings:void 0;return rn||br?te.updateImportDeclaration(ct,ct.modifiers,te.updateImportClause(ct.importClause,ct.importClause.isTypeOnly,rn,br),xs(ct,ct.moduleSpecifier),rc(ct.attributes)):void 0}let St=tr(ct.importClause.namedBindings.elements,br=>De.isDeclarationVisible(br)?br:void 0);if(St&&St.length||rn)return te.updateImportDeclaration(ct,ct.modifiers,te.updateImportClause(ct.importClause,ct.importClause.isTypeOnly,rn,St&&St.length?te.updateNamedImports(ct.importClause.namedBindings,St):void 0),xs(ct,ct.moduleSpecifier),rc(ct.attributes));if(De.isImportRequiredByAugmentation(ct))return st&&n.addDiagnostic(Us(ct,Z.Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_supported_with_isolatedDeclarations)),te.updateImportDeclaration(ct,ct.modifiers,void 0,xs(ct,ct.moduleSpecifier),rc(ct.attributes))}function rc(ct){let rn=wte(ct);return ct&&rn!==void 0?ct:void 0}function Vl(ct){for(;O(V);){let St=V.shift();if(!T8(St))return w.fail(`Late replaced statement was found which is not handled by the declaration transformer!: ${w.formatSyntaxKind(St.kind)}`);let br=d;d=St.parent&&Gc(St.parent)&&!(mm(St.parent)&&I);let Qt=ni(St);d=br,P.set(by(St),Qt)}return ws(ct,rn,Ic);function rn(St){if(T8(St)){let br=by(St);if(P.has(br)){let Qt=P.get(br);return P.delete(br),Qt&&((Ra(Qt)?lr(Qt,f8):f8(Qt))&&(b=!0),Gc(St.parent)&&(Ra(Qt)?lr(Qt,D3):D3(Qt))&&(h=!0)),Qt}}return St}}function ul(ct){if(Nc(ct))return;if(DC(ct)){if(Yr(ct))return;if(jR(ct)){if(st){if(!De.isDefinitelyReferenceToGlobalSymbolObject(ct.name.expression)){if(bc(ct.parent)||tu(ct.parent)){n.addDiagnostic(Us(ct,Z.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations));return}else if((HI(ct.parent)||Se(ct.parent))&&!cp(ct.name.expression)){n.addDiagnostic(Us(ct,Z.Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations));return}}}else if(!De.isLateBound(jc(ct))||!cp(ct.name.expression))return}}if($l(ct)&&De.isImplementationOfOverload(ct)||Wx(ct))return;let rn;Ns(ct)&&(rn=N,N=ct);let St=u,br=Mke(ct),Qt=M,_r=(ct.kind===187||ct.kind===200)&&ct.parent.kind!==265;if((cI(ct)||jS(ct))&&nb(ct,2))return ct.symbol&&ct.symbol.declarations&&ct.symbol.declarations[0]!==ct?void 0:Pr(te.createPropertyDeclaration(Bi(ct),ct.name,void 0,void 0,void 0));if(br&&!M&&(u=FZ(ct)),oe(ct)&&gi(ct.exprName,N),_r&&(M=!0),_7i(ct))switch(ct.kind){case 233:{(w_(ct.expression)||cp(ct.expression))&&gi(ct.expression,N);let ti=ns(ct,ul,n);return Pr(te.updateExpressionWithTypeArguments(ti,ti.expression,ti.typeArguments))}case 183:{gi(ct.typeName,N);let ti=ns(ct,ul,n);return Pr(te.updateTypeReferenceNode(ti,ti.typeName,ti.typeArguments))}case 180:return Pr(te.updateConstructSignature(ct,Pi(ct,ct.typeParameters),$n(ct,ct.parameters),Vr(ct,ct.type)));case 176:{let ti=te.createConstructorDeclaration(Bi(ct),$n(ct,ct.parameters,0),void 0);return Pr(ti)}case 174:{if(kc(ct.name))return Pr(void 0);let ti=te.createMethodDeclaration(Bi(ct),void 0,ct.name,ct.questionToken,Pi(ct,ct.typeParameters),$n(ct,ct.parameters),Vr(ct,ct.type),void 0);return Pr(ti)}case 177:{if(kc(ct.name))return Pr(void 0);let ti=kr(ct,xx(tu(ct.parent)?ct.parent.properties:ct.parent.members,ct));return Pr(te.updateGetAccessorDeclaration(ct,Bi(ct),ct.name,bi(ct,nb(ct,2)),Vr(ct,ti),void 0))}case 178:return kc(ct.name)?Pr(void 0):Pr(te.updateSetAccessorDeclaration(ct,Bi(ct),ct.name,bi(ct,nb(ct,2)),void 0));case 172:return kc(ct.name)?Pr(void 0):Pr(te.updatePropertyDeclaration(ct,Bi(ct),ct.name,ct.questionToken,Vr(ct,ct.type),Pt(ct)));case 171:return kc(ct.name)?Pr(void 0):Pr(te.updatePropertySignature(ct,Bi(ct),ct.name,ct.questionToken,Vr(ct,ct.type)));case 173:return kc(ct.name)?Pr(void 0):Pr(te.updateMethodSignature(ct,Bi(ct),ct.name,ct.questionToken,Pi(ct,ct.typeParameters),$n(ct,ct.parameters),Vr(ct,ct.type)));case 179:return Pr(te.updateCallSignature(ct,Pi(ct,ct.typeParameters),$n(ct,ct.parameters),Vr(ct,ct.type)));case 181:return Pr(te.updateIndexSignature(ct,Bi(ct),$n(ct,ct.parameters),xr(ct.type,ul,Ya)||te.createKeywordTypeNode(133)));case 260:return pu(ct.name)?Hs(ct.name):(_r=!0,M=!0,Pr(te.updateVariableDeclaration(ct,ct.name,void 0,Vr(ct,ct.type),Pt(ct))));case 168:return Cc(ct)&&(ct.default||ct.constraint)?Pr(te.updateTypeParameterDeclaration(ct,ct.modifiers,ct.name,void 0,void 0)):Pr(ns(ct,ul,n));case 194:{let ti=xr(ct.checkType,ul,Ya),cr=xr(ct.extendsType,ul,Ya),kn=N;N=ct.trueType;let Pn=xr(ct.trueType,ul,Ya);N=kn;let an=xr(ct.falseType,ul,Ya);return w.assert(ti),w.assert(cr),w.assert(Pn),w.assert(an),Pr(te.updateConditionalTypeNode(ct,ti,cr,Pn,an))}case 184:return Pr(te.updateFunctionTypeNode(ct,ws(ct.typeParameters,ul,qp),$n(ct,ct.parameters),w.checkDefined(xr(ct.type,ul,Ya))));case 185:return Pr(te.updateConstructorTypeNode(ct,Bi(ct),ws(ct.typeParameters,ul,qp),$n(ct,ct.parameters),w.checkDefined(xr(ct.type,ul,Ya))));case 205:return r_(ct)?Pr(te.updateImportTypeNode(ct,te.updateLiteralTypeNode(ct.argument,xs(ct,ct.argument.literal)),ct.attributes,ct.qualifier,ws(ct.typeArguments,ul,Ya),ct.isTypeOf)):Pr(ct);default:w.assertNever(ct,`Attempted to process unhandled node kind: ${w.formatSyntaxKind(ct.kind)}`)}return Ct(ct)&&Ll(Be,ct.pos).line===Ll(Be,ct.end).line&&co(ct,1),Pr(ns(ct,ul,n));function Pr(ti){return ti&&br&&jR(ct)&&nc(ct),Ns(ct)&&(N=rn),br&&!M&&(u=St),_r&&(M=Qt),ti===ct?ti:ti&&Ho(jn(ti,ct),ct)}}function Cc(ct){return ct.parent.kind===174&&nb(ct.parent,2)}function _s(ct){if(!h7i(ct)||Nc(ct))return;switch(ct.kind){case 278:return Gc(ct.parent)&&(h=!0),R=!0,te.updateExportDeclaration(ct,ct.modifiers,ct.isTypeOnly,ct.exportClause,xs(ct,ct.moduleSpecifier),rc(ct.attributes));case 277:{if(Gc(ct.parent)&&(h=!0),R=!0,ct.expression.kind===80)return ct;{let St=te.createUniqueName("_default",16);u=()=>({diagnosticMessage:Z.Default_export_of_the_module_has_or_is_using_private_name_0,errorNode:ct}),de=ct;let br=te.createVariableDeclaration(St,void 0,De.createTypeOfExpression(ct.expression,ct,d_e,ue),void 0);de=void 0;let Qt=te.createVariableStatement(d?[te.createModifier(138)]:[],te.createVariableDeclarationList([br],2));return jn(Qt,ct),tte(ct),[Qt,te.updateExportAssignment(ct,ct.modifiers,St)]}}}let rn=ni(ct);return P.set(by(ct),rn),ct}function Wu(ct){if(Cm(ct)||nb(ct,2048)||!ew(ct))return ct;let rn=te.createModifiersFromModifierFlags(N_(ct)&131039);return te.replaceModifiers(ct,rn)}function ir(ct,rn,St,br){let Qt=te.updateModuleDeclaration(ct,rn,St,br);if(Yf(Qt)||Qt.flags&32)return Qt;let _r=te.createModuleDeclaration(Qt.modifiers,Qt.name,Qt.body,Qt.flags|32);return Ho(_r,Qt),un(_r,Qt),_r}function ni(ct){if(V)for(;eA(V,ct););if(Nc(ct))return;switch(ct.kind){case 271:return Ec(ct);case 272:return xi(ct)}if(DC(ct)&&Yr(ct)||RN(ct)||$l(ct)&&De.isImplementationOfOverload(ct))return;let rn;Ns(ct)&&(rn=N,N=ct);let St=Mke(ct),br=u;St&&(u=FZ(ct));let Qt=d;switch(ct.kind){case 265:{d=!1;let Pr=_r(te.updateTypeAliasDeclaration(ct,Bi(ct),ct.name,ws(ct.typeParameters,ul,qp),w.checkDefined(xr(ct.type,ul,Ya))));return d=Qt,Pr}case 264:return _r(te.updateInterfaceDeclaration(ct,Bi(ct),ct.name,Pi(ct,ct.typeParameters),en(ct.heritageClauses),ws(ct.members,ul,Bx)));case 262:{let Pr=_r(te.updateFunctionDeclaration(ct,Bi(ct),void 0,ct.name,Pi(ct,ct.typeParameters),$n(ct,ct.parameters),Vr(ct,ct.type),void 0));if(Pr&&De.isExpandoFunctionDeclaration(ct)&&pr(ct)){let ti=De.getPropertiesOfContainerFunction(ct);st&&nt(ct);let cr=sP.createModuleDeclaration(void 0,Pr.name||te.createIdentifier("_default"),te.createModuleBlock([]),32);kA(cr,N),cr.locals=Du(ti),cr.symbol=ti[0].parent;let kn=[],Pn=tr(ti,sn=>{if(!qQ(sn.valueDeclaration))return;let Me=Sc(sn.escapedName);if(!Ke(Me,99))return;u=FZ(sn.valueDeclaration);let ur=De.createTypeOfDeclaration(sn.valueDeclaration,cr,d_e|-2147483648,ue);u=br;let Re=FQ(Me),Jt=Re?te.getGeneratedNameForNode(sn.valueDeclaration):te.createIdentifier(Me);Re&&kn.push([Jt,Me]);let bt=te.createVariableDeclaration(Jt,void 0,ur,void 0);return te.createVariableStatement(Re?void 0:[te.createToken(95)],te.createVariableDeclarationList([bt]))});kn.length?Pn.push(te.createExportDeclaration(void 0,!1,te.createNamedExports(Ot(kn,([sn,Me])=>te.createExportSpecifier(!1,sn,Me))))):Pn=tr(Pn,sn=>te.replaceModifiers(sn,0));let an=te.createModuleDeclaration(Bi(ct),ct.name,te.createModuleBlock(Pn),32);if(!nb(Pr,2048))return[Pr,an];let Kr=te.createModifiersFromModifierFlags(N_(Pr)&-2081|128),wn=te.updateFunctionDeclaration(Pr,Kr,void 0,Pr.name,Pr.typeParameters,Pr.parameters,Pr.type,void 0),Pe=te.updateModuleDeclaration(an,Kr,an.name,an.body),ar=te.createExportAssignment(void 0,!1,an.name);return Gc(ct.parent)&&(h=!0),R=!0,[wn,Pe,ar]}else return Pr}case 267:{d=!1;let Pr=ct.body;if(Pr&&Pr.kind===268){let ti=b,cr=R;R=!1,b=!1;let kn=ws(Pr.statements,_s,Ic),Pn=Vl(kn);ct.flags&33554432&&(b=!1),!v2(ct)&&!Ku(Pn)&&!R&&(b?Pn=te.createNodeArray([...Pn,Phe(te)]):Pn=ws(Pn,Wu,Ic));let an=te.updateModuleBlock(Pr,Pn);d=Qt,b=ti,R=cr;let Kr=Bi(ct);return _r(ir(ct,Kr,XR(ct)?xs(ct,ct.name):ct.name,an))}else{d=Qt;let ti=Bi(ct);d=!1,xr(Pr,_s);let cr=by(Pr),kn=P.get(cr);return P.delete(cr),_r(ir(ct,ti,ct.name,kn))}}case 263:{Ae=ct.name,de=ct;let Pr=te.createNodeArray(Bi(ct)),ti=Pi(ct,ct.typeParameters),cr=dN(ct),kn;if(cr){let ar=u;kn=Vn(Fr(cr.parameters,sn=>{if(!ba(sn,31)||Nc(sn))return;if(u=FZ(sn),sn.name.kind===80)return jn(te.createPropertyDeclaration(Bi(sn),sn.name,sn.questionToken,Vr(sn,sn.type),Pt(sn)),sn);return Me(sn.name);function Me(ur){let Re;for(let Jt of ur.elements)ef(Jt)||(pu(Jt.name)&&(Re=vi(Re,Me(Jt.name))),Re=Re||[],Re.push(te.createPropertyDeclaration(Bi(sn),Jt.name,void 0,Vr(Jt,void 0),void 0)));return Re}})),u=ar}let an=lr(ct.members,ar=>!!ar.name&&kc(ar.name))?[te.createPropertyDeclaration(void 0,te.createPrivateIdentifier("#private"),void 0,void 0,void 0)]:void 0,Kr=vi(vi(an,kn),ws(ct.members,ul,rC)),wn=te.createNodeArray(Kr),Pe=Dv(ct);if(Pe&&!cp(Pe.expression)&&Pe.expression.kind!==106){let ar=ct.name?Sc(ct.name.escapedText):"default",sn=te.createUniqueName(`${ar}_base`,16);u=()=>({diagnosticMessage:Z.extends_clause_of_exported_class_0_has_or_is_using_private_name_1,errorNode:Pe,typeName:ct.name});let Me=te.createVariableDeclaration(sn,void 0,De.createTypeOfExpression(Pe.expression,ct,d_e,ue),void 0),ur=te.createVariableStatement(d?[te.createModifier(138)]:[],te.createVariableDeclarationList([Me],2)),Re=te.createNodeArray(Ot(ct.heritageClauses,Jt=>{if(Jt.token===96){let bt=u;u=FZ(Jt.types[0]);let Vt=te.updateHeritageClause(Jt,Ot(Jt.types,dn=>te.updateExpressionWithTypeArguments(dn,sn,ws(dn.typeArguments,ul,Ya))));return u=bt,Vt}return te.updateHeritageClause(Jt,ws(te.createNodeArray(Gt(Jt.types,bt=>cp(bt.expression)||bt.expression.kind===106)),ul,x_))}));return[ur,_r(te.updateClassDeclaration(ct,Pr,ct.name,ti,Re,wn))]}else{let ar=en(ct.heritageClauses);return _r(te.updateClassDeclaration(ct,Pr,ct.name,ti,ar,wn))}}case 243:return _r(gs(ct));case 266:return _r(te.updateEnumDeclaration(ct,te.createNodeArray(Bi(ct)),ct.name,te.createNodeArray(tr(ct.members,Pr=>{if(Nc(Pr))return;let ti=De.getEnumMemberValue(Pr),cr=ti?.value;st&&Pr.initializer&&ti?.hasExternalReferences&&!xg(Pr.name)&&n.addDiagnostic(Us(Pr,Z.Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations));let kn=cr===void 0?void 0:typeof cr=="string"?te.createStringLiteral(cr):cr<0?te.createPrefixUnaryExpression(41,te.createNumericLiteral(-cr)):te.createNumericLiteral(cr);return jn(te.updateEnumMember(Pr,Pr.name,kn),Pr)}))))}return w.assertNever(ct,`Unhandled top-level node in declaration emit: ${w.formatSyntaxKind(ct.kind)}`);function _r(Pr){return Ns(ct)&&(N=rn),St&&(u=br),ct.kind===267&&(d=Qt),Pr===ct?Pr:(de=void 0,Ae=void 0,Pr&&Ho(jn(Pr,ct),ct))}}function gs(ct){if(!X(ct.declarationList.declarations,zr))return;let rn=ws(ct.declarationList.declarations,ul,zs);if(!O(rn))return;let St=te.createNodeArray(Bi(ct)),br;return pd(ct.declarationList)||Mg(ct.declarationList)?(br=te.createVariableDeclarationList(rn,2),Ho(br,ct.declarationList),un(br,ct.declarationList),mA(br,ct.declarationList)):br=te.updateVariableDeclarationList(ct.declarationList,rn),te.updateVariableStatement(ct,St,br)}function Hs(ct){return or(tr(ct.elements,rn=>qa(rn)))}function qa(ct){if(ct.kind!==232&&ct.name)return zr(ct)?pu(ct.name)?Hs(ct.name):te.createVariableDeclaration(ct.name,void 0,Vr(ct,void 0),void 0):void 0}function nc(ct){let rn;M||(rn=u,u=wxt(ct)),Ae=ct.name,w.assert(jR(ct));let br=ct.name.expression;gi(br,N),M||(u=rn),Ae=void 0}function Nc(ct){return!!je&&!!ct&&Oae(ct,Be)}function cg(ct){return tf(ct)||mC(ct)}function Ku(ct){return lr(ct,cg)}function Bi(ct){let rn=N_(ct),St=BA(ct);return rn===St?l_e(ct.modifiers,br=>eo(br,gg),gg):te.createModifiersFromModifierFlags(St)}function BA(ct){let rn=130030,St=d&&!C7i(ct)?128:0,br=ct.parent.kind===307;return(!br||I&&br&&mm(ct.parent))&&(rn^=128,St=0),TGr(ct,rn,St)}function kr(ct,rn){let St=Rxt(ct);return!St&&ct!==rn.firstAccessor&&(St=Rxt(rn.firstAccessor),u=FZ(rn.firstAccessor)),!St&&rn.secondAccessor&&ct!==rn.secondAccessor&&(St=Rxt(rn.secondAccessor),u=FZ(rn.secondAccessor)),St}function en(ct){return te.createNodeArray(Gt(Ot(ct,rn=>te.updateHeritageClause(rn,ws(te.createNodeArray(Gt(rn.types,St=>cp(St.expression)||rn.token===96&&St.expression.kind===106)),ul,x_))),rn=>rn.types&&!!rn.types.length))}}function C7i(n){return n.kind===264}function m7i(n,c,u,d){return n.createModifiersFromModifierFlags(TGr(c,u,d))}function TGr(n,c=131070,u=0){let d=N_(n)&c|u;return d&2048&&!(d&32)&&(d^=32),d&2048&&d&128&&(d^=128),d}function Rxt(n){if(n)return n.kind===177?n.type:n.parameters.length>0?n.parameters[0].type:void 0}function NGr(n){switch(n.kind){case 172:case 171:return!nb(n,2);case 169:case 260:return!0}return!1}function h7i(n){switch(n.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}function _7i(n){switch(n.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}function y7i(n){switch(n){case 99:case 7:case 6:case 5:case 200:return g6e;case 4:return vxt;case 100:case 199:return Sxt;default:return u6e}}var Dxt={scriptTransformers:v,declarationTransformers:v};function xxt(n,c,u){return{scriptTransformers:b7i(n,c,u),declarationTransformers:E7i(c)}}function b7i(n,c,u){if(u)return v;let d=iA(n),I=R_(n),h=Lee(n),b=[];return ai(b,c&&Ot(c.before,DGr)),b.push(cxt),n.experimentalDecorators&&b.push(gxt),Wee(n)&&b.push(yxt),d<99&&b.push(mxt),!n.experimentalDecorators&&(d<99||!h)&&b.push(Axt),b.push(lxt),d<8&&b.push(Cxt),d<7&&b.push(Ixt),d<6&&b.push(fxt),d<5&&b.push(pxt),d<4&&b.push(dxt),d<3&&b.push(bxt),d<2&&(b.push(Ext),b.push(Bxt)),b.push(y7i(I)),ai(b,c&&Ot(c.after,DGr)),b}function E7i(n){let c=[];return c.push(A6e),ai(c,n&&Ot(n.afterDeclarations,v7i)),c}function B7i(n){return c=>UNt(c)?n.transformBundle(c):n.transformSourceFile(c)}function RGr(n,c){return u=>{let d=n(u);return typeof d=="function"?c(u,d):B7i(d)}}function DGr(n){return RGr(n,lT)}function v7i(n){return RGr(n,(c,u)=>u)}function sue(n,c){return c}function p_e(n,c,u){u(n,c)}function f_e(n,c,u,d,I,h,b){var R,N;let V=new Array(357),P,M,te,re=0,ue=[],Ae=[],de=[],Be=[],Fe=0,Ne=!1,Qe=[],De=0,lt,Le,je=sue,st=p_e,nt=0,qe=[],it={factory:u,getCompilerOptions:()=>d,getEmitResolver:()=>n,getEmitHost:()=>c,getEmitHelperFactory:iu(()=>Rhe(it)),startLexicalEnvironment:jt,suspendLexicalEnvironment:mr,resumeLexicalEnvironment:Pt,endLexicalEnvironment:Vr,setLexicalEnvironmentFlags:Yr,getLexicalEnvironmentFlags:pr,hoistVariableDeclaration:kt,hoistFunctionDeclaration:Zt,addInitializationStatement:Dr,startBlockScope:zr,endBlockScope:$n,addBlockScopedVariable:bi,requestEmitHelper:Pi,readEmitHelpers:Ns,enableSubstitution:Ye,enableEmitNotification:Kt,isSubstitutionEnabled:ht,isEmitNotificationEnabled:Tt,get onSubstituteNode(){return je},set onSubstituteNode(jn){w.assert(nt<1,"Cannot modify transformation hooks after initialization has completed."),w.assert(jn!==void 0,"Value must not be 'undefined'"),je=jn},get onEmitNode(){return st},set onEmitNode(jn){w.assert(nt<1,"Cannot modify transformation hooks after initialization has completed."),w.assert(jn!==void 0,"Value must not be 'undefined'"),st=jn},addDiagnostic(jn){qe.push(jn)}};for(let jn of I)yle(ls(jc(jn)));rs("beforeTransform");let It=h.map(jn=>jn(it)),dt=jn=>{for(let xs of It)jn=xs(jn);return jn};nt=1;let wt=[];for(let jn of I)(R=Mi)==null||R.push(Mi.Phase.Emit,"transformNodes",jn.kind===307?{path:jn.path}:{kind:jn.kind,pos:jn.pos,end:jn.end}),wt.push((b?dt:vt)(jn)),(N=Mi)==null||N.pop();return nt=2,rs("afterTransform"),vc("transformTime","beforeTransform","afterTransform"),{transformed:wt,substituteNode:Et,emitNodeWithNotification:Lt,isEmitNotificationEnabled:Tt,dispose:gi,diagnostics:qe};function vt(jn){return jn&&(!Gc(jn)||!jn.isDeclarationFile)?dt(jn):jn}function Ye(jn){w.assert(nt<2,"Cannot modify the transformation context after transformation has completed."),V[jn]|=1}function ht(jn){return(V[jn.kind]&1)!==0&&(Sg(jn)&8)===0}function Et(jn,xs){return w.assert(nt<3,"Cannot substitute a node after the result is disposed."),xs&&ht(xs)&&je(jn,xs)||xs}function Kt(jn){w.assert(nt<2,"Cannot modify the transformation context after transformation has completed."),V[jn]|=2}function Tt(jn){return(V[jn.kind]&2)!==0||(Sg(jn)&4)!==0}function Lt(jn,xs,Ec){w.assert(nt<3,"Cannot invoke TransformationResult callbacks after the result is disposed."),xs&&(Tt(xs)?st(jn,xs,Ec):Ec(jn,xs))}function kt(jn){w.assert(nt>0,"Cannot modify the lexical environment during initialization."),w.assert(nt<2,"Cannot modify the lexical environment after transformation has completed.");let xs=co(u.createVariableDeclaration(jn),128);P?P.push(xs):P=[xs],re&1&&(re|=2)}function Zt(jn){w.assert(nt>0,"Cannot modify the lexical environment during initialization."),w.assert(nt<2,"Cannot modify the lexical environment after transformation has completed."),co(jn,2097152),M?M.push(jn):M=[jn]}function Dr(jn){w.assert(nt>0,"Cannot modify the lexical environment during initialization."),w.assert(nt<2,"Cannot modify the lexical environment after transformation has completed."),co(jn,2097152),te?te.push(jn):te=[jn]}function jt(){w.assert(nt>0,"Cannot modify the lexical environment during initialization."),w.assert(nt<2,"Cannot modify the lexical environment after transformation has completed."),w.assert(!Ne,"Lexical environment is suspended."),ue[Fe]=P,Ae[Fe]=M,de[Fe]=te,Be[Fe]=re,Fe++,P=void 0,M=void 0,te=void 0,re=0}function mr(){w.assert(nt>0,"Cannot modify the lexical environment during initialization."),w.assert(nt<2,"Cannot modify the lexical environment after transformation has completed."),w.assert(!Ne,"Lexical environment is already suspended."),Ne=!0}function Pt(){w.assert(nt>0,"Cannot modify the lexical environment during initialization."),w.assert(nt<2,"Cannot modify the lexical environment after transformation has completed."),w.assert(Ne,"Lexical environment is not suspended."),Ne=!1}function Vr(){w.assert(nt>0,"Cannot modify the lexical environment during initialization."),w.assert(nt<2,"Cannot modify the lexical environment after transformation has completed."),w.assert(!Ne,"Lexical environment is suspended.");let jn;if(P||M||te){if(M&&(jn=[...M]),P){let xs=u.createVariableStatement(void 0,u.createVariableDeclarationList(P));co(xs,2097152),jn?jn.push(xs):jn=[xs]}te&&(jn?jn=[...jn,...te]:jn=[...te])}return Fe--,P=ue[Fe],M=Ae[Fe],te=de[Fe],re=Be[Fe],Fe===0&&(ue=[],Ae=[],de=[],Be=[]),jn}function Yr(jn,xs){re=xs?re|jn:re&~jn}function pr(){return re}function zr(){w.assert(nt>0,"Cannot start a block scope during initialization."),w.assert(nt<2,"Cannot start a block scope after transformation has completed."),Qe[De]=lt,De++,lt=void 0}function $n(){w.assert(nt>0,"Cannot end a block scope during initialization."),w.assert(nt<2,"Cannot end a block scope after transformation has completed.");let jn=lr(lt)?[u.createVariableStatement(void 0,u.createVariableDeclarationList(lt.map(xs=>u.createVariableDeclaration(xs)),1))]:void 0;return De--,lt=Qe[De],De===0&&(Qe=[]),jn}function bi(jn){w.assert(De>0,"Cannot add a block scoped variable outside of an iteration body."),(lt||(lt=[])).push(jn)}function Pi(jn){if(w.assert(nt>0,"Cannot modify the transformation context during initialization."),w.assert(nt<2,"Cannot modify the transformation context after transformation has completed."),w.assert(!jn.scoped,"Cannot request a scoped emit helper."),jn.dependencies)for(let xs of jn.dependencies)Pi(xs);Le=Hr(Le,jn)}function Ns(){w.assert(nt>0,"Cannot modify the transformation context during initialization."),w.assert(nt<2,"Cannot modify the transformation context after transformation has completed.");let jn=Le;return Le=void 0,jn}function gi(){if(nt<3){for(let jn of I)yle(ls(jc(jn)));P=void 0,ue=void 0,M=void 0,Ae=void 0,je=void 0,st=void 0,Le=void 0,nt=3}}}var I_e={factory:_e,getCompilerOptions:()=>({}),getEmitResolver:za,getEmitHost:za,getEmitHelperFactory:za,startLexicalEnvironment:oc,resumeLexicalEnvironment:oc,suspendLexicalEnvironment:oc,endLexicalEnvironment:SI,setLexicalEnvironmentFlags:oc,getLexicalEnvironmentFlags:()=>0,hoistVariableDeclaration:oc,hoistFunctionDeclaration:oc,addInitializationStatement:oc,startBlockScope:oc,endBlockScope:SI,addBlockScopedVariable:oc,requestEmitHelper:oc,readEmitHelpers:za,enableSubstitution:oc,enableEmitNotification:oc,isSubstitutionEnabled:za,isEmitNotificationEnabled:za,onSubstituteNode:sue,onEmitNode:p_e,addDiagnostic:oc},xGr=S7i();function kxt(n){return gd(n,".tsbuildinfo")}function d6e(n,c,u,d=!1,I,h){let b=Ra(u)?u:Tce(n,u,d),R=n.getCompilerOptions();if(R.outFile){if(b.length){let N=_e.createBundle(b),V=c(oue(N,n,d),N);if(V)return V}}else{if(!I)for(let N of b){let V=c(oue(N,n,d),N);if(V)return V}if(h){let N=ZZ(R);if(N)return c({buildInfoPath:N},void 0)}}}function ZZ(n){let c=n.configFilePath;if(!d6(n))return;if(n.tsBuildInfoFile)return n.tsBuildInfoFile;let u=n.outFile,d;if(u)d=o0(u);else{if(!c)return;let I=o0(c);d=n.outDir?n.rootDir?q_(n.outDir,fp(n.rootDir,I,!0)):xo(n.outDir,xA(I)):I}return d+".tsbuildinfo"}function Qke(n,c){let u=n.outFile,d=n.emitDeclarationOnly?void 0:u,I=d&&kGr(d,n),h=c||LE(n)?o0(u)+".d.ts":void 0,b=h&&Uce(n)?h+".map":void 0,R=ZZ(n);return{jsFilePath:d,sourceMapFilePath:I,declarationFilePath:h,declarationMapPath:b,buildInfoPath:R}}function oue(n,c,u){let d=c.getCompilerOptions();if(n.kind===308)return Qke(d,u);{let I=oDe(n.fileName,c,Yke(n.fileName,d)),h=Ia(n),b=h&&Ah(n.fileName,I,c.getCurrentDirectory(),!c.useCaseSensitiveFileNames())===0,R=d.emitDeclarationOnly||b?void 0:I,N=!R||Ia(n)?void 0:kGr(R,d),V=u||LE(d)&&!h?aDe(n.fileName,c):void 0,P=V&&Uce(d)?V+".map":void 0;return{jsFilePath:R,sourceMapFilePath:N,declarationFilePath:V,declarationMapPath:P,buildInfoPath:void 0}}}function kGr(n,c){return c.sourceMap&&!c.inlineSourceMap?n+".map":void 0}function Yke(n,c){return gd(n,".json")?".json":c.jsx===1&&pp(n,[".jsx",".tsx"])?".jsx":pp(n,[".mts",".mjs"])?".mjs":pp(n,[".cts",".cjs"])?".cjs":".js"}function GGr(n,c,u,d){return u?q_(u,fp(d(),n,c)):n}function Ste(n,c,u,d=()=>H6(c,u)){return p6e(n,c.options,u,d)}function p6e(n,c,u,d){return BG(GGr(n,u,c.declarationDir||c.outDir,d),Sce(n))}function FGr(n,c,u,d=()=>H6(c,u)){if(c.options.emitDeclarationOnly)return;let I=gd(n,".json"),h=f6e(n,c.options,u,d);return!I||Ah(n,h,w.checkDefined(c.options.configFilePath),u)!==0?h:void 0}function f6e(n,c,u,d){return BG(GGr(n,u,c.outDir,d),Yke(n,c))}function ZGr(){let n;return{addOutput:c,getOutputs:u};function c(d){d&&(n||(n=[])).push(d)}function u(){return n||v}}function LGr(n,c){let{jsFilePath:u,sourceMapFilePath:d,declarationFilePath:I,declarationMapPath:h,buildInfoPath:b}=Qke(n.options,!1);c(u),c(d),c(I),c(h),c(b)}function VGr(n,c,u,d,I){if(kh(c))return;let h=FGr(c,n,u,I);if(d(h),!gd(c,".json")&&(h&&n.options.sourceMap&&d(`${h}.map`),LE(n.options))){let b=Ste(c,n,u,I);d(b),n.options.declarationMap&&d(`${b}.map`)}}function aue(n,c,u,d,I){let h;return n.rootDir?(h=Oc(n.rootDir,u),I?.(n.rootDir)):n.composite&&n.configFilePath?(h=aa(Af(n.configFilePath)),I?.(h)):h=Oxt(c(),u,d),h&&h[h.length-1]!==qu&&(h+=qu),h}function H6({options:n,fileNames:c},u){return aue(n,()=>Gt(c,d=>!(n.noEmitForJsFiles&&pp(d,$X))&&!kh(d)),aa(Af(w.checkDefined(n.configFilePath))),tA(!u))}function Hke(n,c){let{addOutput:u,getOutputs:d}=ZGr();if(n.options.outFile)LGr(n,u);else{let I=iu(()=>H6(n,c));for(let h of n.fileNames)VGr(n,h,c,u,I);u(ZZ(n.options))}return d()}function WGr(n,c,u){c=Mc(c),w.assert(Ue(n.fileNames,c),"Expected fileName to be present in command line");let{addOutput:d,getOutputs:I}=ZGr();return n.options.outFile?LGr(n,d):VGr(n,c,u,d),I()}function I6e(n,c){if(n.options.outFile){let{jsFilePath:I,declarationFilePath:h}=Qke(n.options,!1);return w.checkDefined(I||h,`project ${n.options.configFilePath} expected to have at least one output`)}let u=iu(()=>H6(n,c));for(let I of n.fileNames){if(kh(I))continue;let h=FGr(I,n,c,u);if(h)return h;if(!gd(I,".json")&&LE(n.options))return Ste(I,n,c,u)}let d=ZZ(n.options);return d||w.fail(`project ${n.options.configFilePath} expected to have at least one output`)}function C6e(n,c){return!!c&&!!n}function m6e(n,c,u,{scriptTransformers:d,declarationTransformers:I},h,b,R){var N=c.getCompilerOptions(),V=N.sourceMap||N.inlineSourceMap||Uce(N)?[]:void 0,P=N.listEmittedFiles?[]:void 0,M=hG(),te=G1(N),re=Bee(te),{enter:ue,exit:Ae}=rA("printTime","beforePrint","afterPrint"),de=!1;return ue(),d6e(c,Be,Tce(c,u,R),R,b,!u),Ae(),{emitSkipped:de,diagnostics:M.getDiagnostics(),emittedFiles:P,sourceMaps:V};function Be({jsFilePath:it,sourceMapFilePath:It,declarationFilePath:dt,declarationMapPath:wt,buildInfoPath:vt},Ye){var ht,Et,Kt,Tt,Lt,kt;(ht=Mi)==null||ht.push(Mi.Phase.Emit,"emitJsFileOrBundle",{jsFilePath:it}),Ne(Ye,it,It),(Et=Mi)==null||Et.pop(),(Kt=Mi)==null||Kt.push(Mi.Phase.Emit,"emitDeclarationFileOrBundle",{declarationFilePath:dt}),Qe(Ye,dt,wt),(Tt=Mi)==null||Tt.pop(),(Lt=Mi)==null||Lt.push(Mi.Phase.Emit,"emitBuildInfo",{buildInfoPath:vt}),Fe(vt),(kt=Mi)==null||kt.pop()}function Fe(it){if(!it||u||de)return;if(c.isEmitBlocked(it)){de=!0;return}let It=c.getBuildInfo()||Xke(void 0);vee(c,M,it,Gxt(It),!1,void 0,{buildInfo:It}),P?.push(it)}function Ne(it,It,dt){if(!it||h||!It)return;if(c.isEmitBlocked(It)||N.noEmit){de=!0;return}(Gc(it)?[it]:Gt(it.sourceFiles,gce)).forEach(ht=>{(N.noCheck||!Hee(ht,N))&<(ht)});let wt=f_e(n,c,_e,N,[it],d,!1),vt={removeComments:N.removeComments,newLine:N.newLine,noEmitHelpers:N.noEmitHelpers,module:R_(N),target:iA(N),sourceMap:N.sourceMap,inlineSourceMap:N.inlineSourceMap,inlineSources:N.inlineSources,extendedDiagnostics:N.extendedDiagnostics},Ye=SV(vt,{hasGlobalName:n.hasGlobalName,onEmitNode:wt.emitNodeWithNotification,isEmitNotificationEnabled:wt.isEmitNotificationEnabled,substituteNode:wt.substituteNode});w.assert(wt.transformed.length===1,"Should only see one output from the transform"),Le(It,dt,wt,Ye,N),wt.dispose(),P&&(P.push(It),dt&&P.push(dt))}function Qe(it,It,dt){if(!it||h===0)return;if(!It){(h||N.emitDeclarationOnly)&&(de=!0);return}let wt=Gc(it)?[it]:it.sourceFiles,vt=R?wt:Gt(wt,gce),Ye=N.outFile?[_e.createBundle(vt)]:vt;vt.forEach(Kt=>{(h&&!LE(N)||N.noCheck||C6e(h,R)||!Hee(Kt,N))&&De(Kt)});let ht=f_e(n,c,_e,N,Ye,I,!1);if(O(ht.diagnostics))for(let Kt of ht.diagnostics)M.add(Kt);let Et=!!ht.diagnostics&&!!ht.diagnostics.length||!!c.isEmitBlocked(It)||!!N.noEmit;if(de=de||Et,!Et||R){w.assert(ht.transformed.length===1,"Should only see one output from the decl transform");let Kt={removeComments:N.removeComments,newLine:N.newLine,noEmitHelpers:!0,module:N.module,target:N.target,sourceMap:h!==2&&N.declarationMap,inlineSourceMap:N.inlineSourceMap,extendedDiagnostics:N.extendedDiagnostics,onlyPrintJsDocStyle:!0,omitBraceSourceMapPositions:!0},Tt=SV(Kt,{hasGlobalName:n.hasGlobalName,onEmitNode:ht.emitNodeWithNotification,isEmitNotificationEnabled:ht.isEmitNotificationEnabled,substituteNode:ht.substituteNode});Le(It,dt,ht,Tt,{sourceMap:Kt.sourceMap,sourceRoot:N.sourceRoot,mapRoot:N.mapRoot,extendedDiagnostics:N.extendedDiagnostics}),P&&(P.push(It),dt&&P.push(dt))}ht.dispose()}function De(it){if(tf(it)){it.expression.kind===80&&n.collectLinkedAliases(it.expression,!0);return}else if(c0(it)){n.collectLinkedAliases(it.propertyName||it.name,!0);return}mu(it,De)}function lt(it){Z6(it,It=>{if(Cm(It)&&!(zR(It)&32)||mI(It))return"skip";n.markLinkedReferences(It)})}function Le(it,It,dt,wt,vt){let Ye=dt.transformed[0],ht=Ye.kind===308?Ye:void 0,Et=Ye.kind===307?Ye:void 0,Kt=ht?ht.sourceFiles:[Et],Tt;je(vt,Ye)&&(Tt=VDt(c,xA(Af(it)),st(vt),nt(vt,it,Et),vt)),ht?wt.writeBundle(ht,re,Tt):wt.writeFile(Et,re,Tt);let Lt;if(Tt){V&&V.push({inputSourceFileNames:Tt.getSources(),sourceMap:Tt.toJSON()});let Zt=qe(vt,Tt,it,It,Et);if(Zt&&(re.isAtStartOfLine()||re.rawWrite(te),Lt=re.getTextPos(),re.writeComment(`//# sourceMappingURL=${Zt}`)),It){let Dr=Tt.toString();vee(c,M,It,Dr,!1,Kt)}}else re.writeLine();let kt=re.getText();vee(c,M,it,kt,!!N.emitBOM,Kt,{sourceMapUrlPos:Lt,diagnostics:dt.diagnostics}),re.clear()}function je(it,It){return(it.sourceMap||it.inlineSourceMap)&&(It.kind!==307||!gd(It.fileName,".json"))}function st(it){let It=Af(it.sourceRoot||"");return It&&AA(It)}function nt(it,It,dt){if(it.sourceRoot)return c.getCommonSourceDirectory();if(it.mapRoot){let wt=Af(it.mapRoot);return dt&&(wt=aa(Nce(dt.fileName,c,wt))),e_(wt)===0&&(wt=xo(c.getCommonSourceDirectory(),wt)),wt}return aa(Mc(It))}function qe(it,It,dt,wt,vt){if(it.inlineSourceMap){let ht=It.toString();return`data:application/json;base64,${i6(_d,ht)}`}let Ye=xA(Af(w.checkDefined(wt)));if(it.mapRoot){let ht=Af(it.mapRoot);return vt&&(ht=aa(Nce(vt.fileName,c,ht))),e_(ht)===0?(ht=xo(c.getCommonSourceDirectory(),ht),encodeURI(xm(aa(Mc(dt)),xo(ht,Ye),c.getCurrentDirectory(),c.getCanonicalFileName,!0))):encodeURI(xo(ht,Ye))}return encodeURI(Ye)}}function Xke(n){return{program:n,version:y}}function Gxt(n){return JSON.stringify(n)}function h6e(n,c){return kee(n,c)}var Fxt={hasGlobalName:za,getReferencedExportContainer:za,getReferencedImportDeclaration:za,getReferencedDeclarationWithCollidingName:za,isDeclarationWithCollidingName:za,isValueAliasDeclaration:za,isReferencedAliasDeclaration:za,isTopLevelValueImportEqualsWithEntityName:za,hasNodeCheckFlag:za,isDeclarationVisible:za,isLateBound:n=>!1,collectLinkedAliases:za,markLinkedReferences:za,isImplementationOfOverload:za,requiresAddingImplicitUndefined:za,isExpandoFunctionDeclaration:za,getPropertiesOfContainerFunction:za,createTypeOfDeclaration:za,createReturnTypeOfSignatureDeclaration:za,createTypeOfExpression:za,createLiteralConstValue:za,isSymbolAccessible:za,isEntityNameVisible:za,getConstantValue:za,getEnumMemberValue:za,getReferencedValueDeclaration:za,getReferencedValueDeclarations:za,getTypeReferenceSerializationKind:za,isOptionalParameter:za,isArgumentsLocalBinding:za,getExternalModuleFileFromDeclaration:za,isLiteralConstDeclaration:za,getJsxFactoryEntity:za,getJsxFragmentFactoryEntity:za,isBindingCapturedByNode:za,getDeclarationStatementsForSourceFile:za,isImportRequiredByAugmentation:za,isDefinitelyReferenceToGlobalSymbolObject:za},Zxt=iu(()=>SV({})),h4=iu(()=>SV({removeComments:!0})),Lxt=iu(()=>SV({removeComments:!0,neverAsciiEscape:!0})),Jke=iu(()=>SV({removeComments:!0,omitTrailingSemicolon:!0}));function SV(n={},c={}){var{hasGlobalName:u,onEmitNode:d=p_e,isEmitNotificationEnabled:I,substituteNode:h=sue,onBeforeEmitNode:b,onAfterEmitNode:R,onBeforeEmitNodeArray:N,onAfterEmitNodeArray:V,onBeforeEmitToken:P,onAfterEmitToken:M}=c,te=!!n.extendedDiagnostics,re=!!n.omitBraceSourceMapPositions,ue=G1(n),Ae=R_(n),de=new Map,Be,Fe,Ne,Qe,De,lt,Le,je,st,nt,qe,it,It,dt,wt,vt=n.preserveSourceNewlines,Ye,ht,Et,Kt=Xue,Tt,Lt=!0,kt,Zt,Dr=-1,jt,mr=-1,Pt=-1,Vr=-1,Yr=-1,pr,zr,$n=!1,bi=!!n.removeComments,Pi,Ns,{enter:gi,exit:jn}=Tb(te,"commentTime","beforeComment","afterComment"),xs=_e.parenthesizer,Ec={select:ce=>ce===0?xs.parenthesizeLeadingTypeArgument:void 0},xi=bm();return cg(),{printNode:rc,printList:Vl,printFile:Cc,printBundle:ul,writeNode:_s,writeList:Wu,writeFile:ni,writeBundle:ir};function rc(ce,_t,pn){switch(ce){case 0:w.assert(Gc(_t),"Expected a SourceFile node.");break;case 2:w.assert(sr(_t),"Expected an Identifier node.");break;case 1:w.assert(tn(_t),"Expected an Expression node.");break}switch(_t.kind){case 307:return Cc(_t);case 308:return ul(_t)}return _s(ce,_t,pn,gs()),Hs()}function Vl(ce,_t,pn){return Wu(ce,_t,pn,gs()),Hs()}function ul(ce){return ir(ce,gs(),void 0),Hs()}function Cc(ce){return ni(ce,gs(),void 0),Hs()}function _s(ce,_t,pn,qn){let Ka=ht;Nc(qn,void 0),qa(ce,_t,pn),cg(),ht=Ka}function Wu(ce,_t,pn,qn){let Ka=ht;Nc(qn,void 0),pn&&nc(pn),Dp(void 0,_t,ce),cg(),ht=Ka}function ir(ce,_t,pn){Tt=!1;let qn=ht;Nc(_t,pn),YG(ce),QG(ce),Kr(ce),Hue(ce);for(let Ka of ce.sourceFiles)qa(0,Ka,Ka);cg(),ht=qn}function ni(ce,_t,pn){Tt=!0;let qn=ht;Nc(_t,pn),YG(ce),QG(ce),qa(0,ce,ce),cg(),ht=qn}function gs(){return Et||(Et=Bee(ue))}function Hs(){let ce=Et.getText();return Et.clear(),ce}function qa(ce,_t,pn){pn&&nc(pn),St(ce,_t,void 0)}function nc(ce){Be=ce,pr=void 0,zr=void 0,ce&&q2(ce)}function Nc(ce,_t){ce&&n.omitTrailingSemicolon&&(ce=Nme(ce)),ht=ce,kt=_t,Lt=!ht||!kt}function cg(){Fe=[],Ne=[],Qe=[],De=new Set,lt=[],Le=new Map,je=[],st=0,nt=[],qe=0,it=[],It=void 0,dt=[],wt=void 0,Be=void 0,pr=void 0,zr=void 0,Nc(void 0,void 0)}function Ku(){return pr||(pr=Rc(w.checkDefined(Be)))}function Bi(ce,_t){ce!==void 0&&St(4,ce,_t)}function BA(ce){ce!==void 0&&St(2,ce,void 0)}function kr(ce,_t){ce!==void 0&&St(1,ce,_t)}function en(ce){St(bu(ce)?6:4,ce)}function ct(ce){vt&&kE(ce)&4&&(vt=!1)}function rn(ce){vt=ce}function St(ce,_t,pn){Ns=pn,_r(0,ce,_t)(ce,_t),Ns=void 0}function br(ce){return!bi&&!Gc(ce)}function Qt(ce){return!Lt&&!Gc(ce)&&!V8(ce)}function _r(ce,_t,pn){switch(ce){case 0:if(d!==p_e&&(!I||I(pn)))return ti;case 1:if(h!==sue&&(Pi=h(_t,pn)||pn)!==pn)return Ns&&(Pi=Ns(Pi)),an;case 2:if(br(pn))return LY;case 3:if(Qt(pn))return YN;case 4:return cr;default:return w.assertNever(ce)}}function Pr(ce,_t,pn){return _r(ce+1,_t,pn)}function ti(ce,_t){let pn=Pr(0,ce,_t);d(ce,_t,pn)}function cr(ce,_t){if(b?.(_t),vt){let pn=vt;ct(_t),kn(ce,_t),rn(pn)}else kn(ce,_t);R?.(_t),Ns=void 0}function kn(ce,_t,pn=!0){if(pn){let qn=vle(_t);if(qn)return sn(ce,_t,qn)}if(ce===0)return MG(ps(_t,Gc));if(ce===2)return Re(ps(_t,sr));if(ce===6)return ar(ps(_t,bu),!0);if(ce===3)return Pn(ps(_t,qp));if(ce===7)return Co(ps(_t,l4));if(ce===5)return w.assertNode(_t,Fv),Jb(!0);if(ce===4){switch(_t.kind){case 16:case 17:case 18:return ar(_t,!1);case 80:return Re(_t);case 81:return Jt(_t);case 166:return bt(_t);case 167:return dn(_t);case 168:return On(_t);case 169:return Mn(_t);case 170:return Ii(_t);case 171:return ds(_t);case 172:return Es(_t);case 173:return oo(_t);case 174:return Vi(_t);case 175:return ko(_t);case 176:return Yc(_t);case 177:case 178:return fl(_t);case 179:return oa(_t);case 180:return Da(_t);case 181:return ki(_t);case 182:return hu(_t);case 183:return JA(_t);case 184:return Qd(_t);case 185:return Km(_t);case 186:return Df(_t);case 187:return f0(_t);case 188:return xI(_t);case 189:return Jg(_t);case 190:return Yd(_t);case 192:return zA(_t);case 193:return di(_t);case 194:return lI(_t);case 195:return J0(_t);case 196:return U0(_t);case 233:return Y2(_t);case 197:return Yb();case 198:return rf(_t);case 199:return kI(_t);case 200:return yt(_t);case 201:return tt(_t);case 202:return hf(_t);case 203:return gr(_t);case 204:return Gs(_t);case 205:return mn(_t);case 206:return Ri(_t);case 207:return Xo(_t);case 208:return fi(_t);case 239:return aD(_t);case 240:return ri();case 241:return gb(_t);case 243:return cD(_t);case 242:return Jb(!1);case 244:return ZN(_t);case 245:return X2(_t);case 246:return qr(_t);case 247:return Qn(_t);case 248:return Jn(_t);case 249:return cs(_t);case 250:return Ls(_t);case 251:return Ua(_t);case 252:return Ge(_t);case 253:return Wl(_t);case 254:return Eu(_t);case 255:return od(_t);case 256:return sA(_t);case 257:return uI(_t);case 258:return VB(_t);case 259:return rw(_t);case 260:return lD(_t);case 261:return Xx(_t);case 262:return YZ(_t);case 263:return xV(_t);case 264:return kV(_t);case 265:return Pv(_t);case 266:return _P(_t);case 267:return pT(_t);case 268:return U2(_t);case 269:return PG(_t);case 270:return ru(_t);case 271:return rr(_t);case 272:return xn(_t);case 273:return ci(_t);case 274:return Wi(_t);case 280:return Yg(_t);case 275:return qs(_t);case 276:return zi(_t);case 277:return ho(_t);case 278:return Bc(_t);case 279:return jm(_t);case 281:return I0(_t);case 300:return ac(_t);case 301:return Ps(_t);case 282:return;case 283:return Mv(_t);case 12:return yP(_t);case 286:case 289:return NY(_t);case 287:case 290:return bP(_t);case 291:return T4(_t);case 292:return EP(_t);case 293:return JZ(_t);case 294:return UA(_t);case 295:return N4(_t);case 296:return BP(_t);case 297:return OG(_t);case 298:return PB(_t);case 299:return Ab(_t);case 303:return QE(_t);case 304:return Ub(_t);case 305:return UZ(_t);case 306:return A7(_t);case 307:return MG(_t);case 308:return w.fail("Bundles should be printed using printBundle");case 309:return VN(_t);case 310:return p7(_t);case 312:return Vo("*");case 313:return Vo("?");case 314:return mf(_t);case 315:return zc(_t);case 316:return Zc(_t);case 317:return lg(_t);case 191:case 318:return s_(_t);case 319:return;case 320:return d7(_t);case 322:return iw(_t);case 323:return zm(_t);case 327:case 332:case 337:return fr(_t);case 328:case 329:return Em(_t);case 330:case 331:return;case 333:case 334:case 335:case 336:return;case 338:return fT(_t);case 339:return D4(_t);case 341:case 348:return wP(_t);case 340:case 342:case 343:case 344:case 349:case 350:return vP(_t);case 345:return jZ(_t);case 346:return f7(_t);case 347:return KZ(_t);case 351:return SP(_t);case 353:return}if(tn(_t)&&(ce=1,h!==sue)){let qn=h(ce,_t)||_t;qn!==_t&&(_t=qn,Ns&&(_t=Ns(_t)))}}if(ce===1)switch(_t.kind){case 9:case 10:return Pe(_t);case 11:case 14:case 15:return ar(_t,!1);case 80:return Re(_t);case 81:return Jt(_t);case 209:return Jo(_t);case 210:return hc(_t);case 211:return ic(_t);case 212:return nf(_t);case 213:return zC(_t);case 214:return Xf(_t);case 215:return Gm(_t);case 216:return sf(_t);case 217:return Fm(_t);case 218:return Hb(_t);case 219:return GI(_t);case 220:return qt(_t);case 221:return Fn(_t);case 222:return Bs(_t);case 223:return Nl(_t);case 224:return vA(_t);case 225:return XI(_t);case 226:return xi(_t);case 227:return rp(_t);case 228:return Hd(_t);case 229:return hC(_t);case 230:return Xb(_t);case 231:return dT(_t);case 232:return;case 234:return ub(_t);case 235:return LB(_t);case 233:return Y2(_t);case 238:return H2(_t);case 236:return oD(_t);case 237:return w.fail("SyntheticExpression should never be printed.");case 282:return;case 284:return u7(_t);case 285:return nre(_t);case 288:return g7(_t);case 352:return w.fail("SyntaxList should not be printed");case 353:return;case 354:return x4(_t);case 355:return k4(_t);case 356:return w.fail("SyntheticReferenceExpression should not be printed")}if(i0(_t.kind))return FY(_t,lu);if(f$(_t.kind))return FY(_t,Vo);w.fail(`Unhandled SyntaxKind: ${w.formatSyntaxKind(_t.kind)}.`)}function Pn(ce){Bi(ce.name),uo(),lu("in"),uo(),Bi(ce.constraint)}function an(ce,_t){let pn=Pr(1,ce,_t);w.assertIsDefined(Pi),_t=Pi,Pi=void 0,pn(ce,_t)}function Kr(ce){let _t=!1,pn=ce.kind===308?ce:void 0;if(pn&&Ae===0)return;let qn=pn?pn.sourceFiles.length:1;for(let Ka=0;Ka")}function Tl(ce){uo(),Bi(ce.type)}function lg(ce){lu("function"),HG(ce,ce.parameters),Vo(":"),Bi(ce.type)}function mf(ce){Vo("?"),Bi(ce.type)}function zc(ce){Vo("!"),Bi(ce.type)}function Zc(ce){Bi(ce.type),Vo("=")}function Km(ce){M1(ce,ce.modifiers),lu("new"),uo(),WB(ce,kd,Tl)}function Df(ce){lu("typeof"),uo(),Bi(ce.exprName),gD(ce,ce.typeArguments)}function f0(ce){tL(ce),X(ce.members,UG),Vo("{");let _t=Sg(ce)&1?768:32897;Dp(ce,ce.members,_t|524288),Vo("}"),Yv(ce)}function xI(ce){Bi(ce.elementType,xs.parenthesizeNonArrayTypeOfPostfixType),Vo("["),Vo("]")}function s_(ce){Vo("..."),Bi(ce.type)}function Jg(ce){Ht(23,ce.pos,Vo,ce);let _t=Sg(ce)&1?528:657;Dp(ce,ce.elements,_t|524288,xs.parenthesizeElementTypeOfTupleType),Ht(24,ce.elements.end,Vo,ce)}function hf(ce){Bi(ce.dotDotDotToken),Bi(ce.name),Bi(ce.questionToken),Ht(59,ce.name.end,Vo,ce),uo(),Bi(ce.type)}function Yd(ce){Bi(ce.type,xs.parenthesizeTypeOfOptionalType),Vo("?")}function zA(ce){Dp(ce,ce.types,516,xs.parenthesizeConstituentTypeOfUnionType)}function di(ce){Dp(ce,ce.types,520,xs.parenthesizeConstituentTypeOfIntersectionType)}function lI(ce){Bi(ce.checkType,xs.parenthesizeCheckTypeOfConditionalType),uo(),lu("extends"),uo(),Bi(ce.extendsType,xs.parenthesizeExtendsTypeOfConditionalType),uo(),Vo("?"),uo(),Bi(ce.trueType),uo(),Vo(":"),uo(),Bi(ce.falseType)}function J0(ce){lu("infer"),uo(),Bi(ce.typeParameter)}function U0(ce){Vo("("),Bi(ce.type),Vo(")")}function Yb(){lu("this")}function rf(ce){WN(ce.operator,lu),uo();let _t=ce.operator===148?xs.parenthesizeOperandOfReadonlyTypeOperator:xs.parenthesizeOperandOfTypeOperator;Bi(ce.type,_t)}function kI(ce){Bi(ce.objectType,xs.parenthesizeNonArrayTypeOfPostfixType),Vo("["),Bi(ce.indexType),Vo("]")}function yt(ce){let _t=Sg(ce);Vo("{"),_t&1?uo():(j0(),aw()),ce.readonlyToken&&(Bi(ce.readonlyToken),ce.readonlyToken.kind!==148&&lu("readonly"),uo()),Vo("["),St(3,ce.typeParameter),ce.nameType&&(uo(),lu("as"),uo(),Bi(ce.nameType)),Vo("]"),ce.questionToken&&(Bi(ce.questionToken),ce.questionToken.kind!==58&&Vo("?")),Vo(":"),uo(),Bi(ce.type),C0(),_t&1?uo():(j0(),Qv()),Dp(ce,ce.members,2),Vo("}")}function tt(ce){kr(ce.literal)}function gr(ce){Bi(ce.head),Dp(ce,ce.templateSpans,262144)}function mn(ce){ce.isTypeOf&&(lu("typeof"),uo()),lu("import"),Vo("("),Bi(ce.argument),ce.attributes&&(Vo(","),uo(),St(7,ce.attributes)),Vo(")"),ce.qualifier&&(Vo("."),Bi(ce.qualifier)),gD(ce,ce.typeArguments)}function Ri(ce){Vo("{"),Dp(ce,ce.elements,525136),Vo("}")}function Xo(ce){Vo("["),Dp(ce,ce.elements,524880),Vo("]")}function fi(ce){Bi(ce.dotDotDotToken),ce.propertyName&&(Bi(ce.propertyName),Vo(":"),uo()),Bi(ce.name),qZ(ce.initializer,ce.name.end,ce,xs.parenthesizeExpressionForDisallowedComma)}function Jo(ce){let _t=ce.elements,pn=ce.multiLine?65536:0;Kx(ce,_t,8914|pn,xs.parenthesizeExpressionForDisallowedComma)}function hc(ce){tL(ce),X(ce.properties,UG);let _t=Sg(ce)&131072;_t&&aw();let pn=ce.multiLine?65536:0,qn=Be&&Be.languageVersion>=1&&!Ia(Be)?64:0;Dp(ce,ce.properties,526226|qn|pn),_t&&Qv(),Yv(ce)}function ic(ce){kr(ce.expression,xs.parenthesizeLeftSideOfAccess);let _t=ce.questionDotToken||MS(_e.createToken(25),ce.expression.end,ce.name.pos),pn=cw(ce,ce.expression,_t),qn=cw(ce,_t,ce.name);MB(pn,!1),_t.kind!==29&&Wg(ce.expression)&&!ht.hasTrailingComment()&&!ht.hasTrailingWhitespace()&&Vo("."),ce.questionDotToken?Bi(_t):Ht(_t.kind,ce.expression.end,Vo,ce),MB(qn,!1),Bi(ce.name),jx(pn,qn)}function Wg(ce){if(ce=D1(ce),du(ce)){let _t=JG(ce,!0,!1);return!(ce.numericLiteralFlags&448)&&!_t.includes(vr(25))&&!_t.includes("E")&&!_t.includes("e")}else if(Cp(ce)){let _t=o4(ce);return typeof _t=="number"&&isFinite(_t)&&_t>=0&&Math.floor(_t)===_t}}function nf(ce){kr(ce.expression,xs.parenthesizeLeftSideOfAccess),Bi(ce.questionDotToken),Ht(23,ce.expression.end,Vo,ce),kr(ce.argumentExpression),Ht(24,ce.argumentExpression.end,Vo,ce)}function zC(ce){let _t=kE(ce)&16;_t&&(Vo("("),GY("0"),Vo(","),uo()),kr(ce.expression,xs.parenthesizeLeftSideOfAccess),_t&&Vo(")"),Bi(ce.questionDotToken),gD(ce,ce.typeArguments),Kx(ce,ce.arguments,2576,xs.parenthesizeExpressionForDisallowedComma)}function Xf(ce){Ht(105,ce.pos,lu,ce),uo(),kr(ce.expression,xs.parenthesizeExpressionOfNew),gD(ce,ce.typeArguments),Kx(ce,ce.arguments,18960,xs.parenthesizeExpressionForDisallowedComma)}function Gm(ce){let _t=kE(ce)&16;_t&&(Vo("("),GY("0"),Vo(","),uo()),kr(ce.tag,xs.parenthesizeLeftSideOfAccess),_t&&Vo(")"),gD(ce,ce.typeArguments),uo(),kr(ce.template)}function sf(ce){Vo("<"),Bi(ce.type),Vo(">"),kr(ce.expression,xs.parenthesizeOperandOfPrefixUnary)}function Fm(ce){let _t=Ht(21,ce.pos,Vo,ce),pn=cre(ce.expression,ce);kr(ce.expression,void 0),L4(ce.expression,ce),jx(pn),Ht(22,ce.expression?ce.expression.end:_t,Vo,ce)}function Hb(ce){ON(ce.name),Jx(ce)}function GI(ce){M1(ce,ce.modifiers),WB(ce,qC,Q2)}function qC(ce){$Z(ce,ce.typeParameters),RP(ce,ce.parameters),zZ(ce.type),uo(),Bi(ce.equalsGreaterThanToken)}function Q2(ce){mc(ce.body)?nw(ce.body):(uo(),kr(ce.body,xs.parenthesizeConciseBodyOfArrowFunction))}function qt(ce){Ht(91,ce.pos,lu,ce),uo(),kr(ce.expression,xs.parenthesizeOperandOfPrefixUnary)}function Fn(ce){Ht(114,ce.pos,lu,ce),uo(),kr(ce.expression,xs.parenthesizeOperandOfPrefixUnary)}function Bs(ce){Ht(116,ce.pos,lu,ce),uo(),kr(ce.expression,xs.parenthesizeOperandOfPrefixUnary)}function Nl(ce){Ht(135,ce.pos,lu,ce),uo(),kr(ce.expression,xs.parenthesizeOperandOfPrefixUnary)}function vA(ce){WN(ce.operator,XG),PA(ce)&&uo(),kr(ce.operand,xs.parenthesizeOperandOfPrefixUnary)}function PA(ce){let _t=ce.operand;return _t.kind===224&&(ce.operator===40&&(_t.operator===40||_t.operator===46)||ce.operator===41&&(_t.operator===41||_t.operator===47))}function XI(ce){kr(ce.operand,xs.parenthesizeOperandOfPostfixUnary),WN(ce.operator,XG)}function bm(){return nke(ce,_t,pn,qn,Ka,void 0);function ce(bl,jl){if(jl){jl.stackIndex++,jl.preserveSourceNewlinesStack[jl.stackIndex]=vt,jl.containerPosStack[jl.stackIndex]=Pt,jl.containerEndStack[jl.stackIndex]=Vr,jl.declarationListContainerEndStack[jl.stackIndex]=Yr;let Hg=jl.shouldEmitCommentsStack[jl.stackIndex]=br(bl),q0=jl.shouldEmitSourceMapsStack[jl.stackIndex]=Qt(bl);b?.(bl),Hg&&ZP(bl),q0&&jG(bl),ct(bl)}else jl={stackIndex:0,preserveSourceNewlinesStack:[void 0],containerPosStack:[-1],containerEndStack:[-1],declarationListContainerEndStack:[-1],shouldEmitCommentsStack:[!1],shouldEmitSourceMapsStack:[!1]};return jl}function _t(bl,jl,Hg){return Gl(bl,Hg,"left")}function pn(bl,jl,Hg){let q0=bl.kind!==28,m0=cw(Hg,Hg.left,bl),iL=cw(Hg,bl,Hg.right);MB(m0,q0),GA(bl.pos),FY(bl,bl.kind===103?lu:XG),o_(bl.end,!0),MB(iL,!0)}function qn(bl,jl,Hg){return Gl(bl,Hg,"right")}function Ka(bl,jl){let Hg=cw(bl,bl.left,bl.operatorToken),q0=cw(bl,bl.operatorToken,bl.right);if(jx(Hg,q0),jl.stackIndex>0){let m0=jl.preserveSourceNewlinesStack[jl.stackIndex],iL=jl.containerPosStack[jl.stackIndex],WY=jl.containerEndStack[jl.stackIndex],XE=jl.declarationListContainerEndStack[jl.stackIndex],CT=jl.shouldEmitCommentsStack[jl.stackIndex],zG=jl.shouldEmitSourceMapsStack[jl.stackIndex];rn(m0),zG&&M4(bl),CT&&db(bl,iL,WY,XE),R?.(bl),jl.stackIndex--}}function Gl(bl,jl,Hg){let q0=Hg==="left"?xs.getParenthesizeLeftSideOfBinaryForOperator(jl.operatorToken.kind):xs.getParenthesizeRightSideOfBinaryForOperator(jl.operatorToken.kind),m0=_r(0,1,bl);if(m0===an&&(w.assertIsDefined(Pi),bl=q0(ps(Pi,tn)),m0=Pr(1,1,bl),Pi=void 0),(m0===LY||m0===YN||m0===cr)&&no(bl))return bl;Ns=q0,m0(1,bl)}}function rp(ce){let _t=cw(ce,ce.condition,ce.questionToken),pn=cw(ce,ce.questionToken,ce.whenTrue),qn=cw(ce,ce.whenTrue,ce.colonToken),Ka=cw(ce,ce.colonToken,ce.whenFalse);kr(ce.condition,xs.parenthesizeConditionOfConditionalExpression),MB(_t,!0),Bi(ce.questionToken),MB(pn,!0),kr(ce.whenTrue,xs.parenthesizeBranchOfConditionalExpression),jx(_t,pn),MB(qn,!0),Bi(ce.colonToken),MB(Ka,!0),kr(ce.whenFalse,xs.parenthesizeBranchOfConditionalExpression),jx(qn,Ka)}function Hd(ce){Bi(ce.head),Dp(ce,ce.templateSpans,262144)}function hC(ce){Ht(127,ce.pos,lu,ce),Bi(ce.asteriskToken),Z_(ce.expression&&_c(ce.expression),Iu)}function Xb(ce){Ht(26,ce.pos,Vo,ce),kr(ce.expression,xs.parenthesizeExpressionForDisallowedComma)}function dT(ce){ON(ce.name),Wv(ce)}function Y2(ce){kr(ce.expression,xs.parenthesizeLeftSideOfAccess),gD(ce,ce.typeArguments)}function ub(ce){kr(ce.expression,void 0),ce.type&&(uo(),lu("as"),uo(),Bi(ce.type))}function LB(ce){kr(ce.expression,xs.parenthesizeLeftSideOfAccess),XG("!")}function H2(ce){kr(ce.expression,void 0),ce.type&&(uo(),lu("satisfies"),uo(),Bi(ce.type))}function oD(ce){eL(ce.keywordToken,ce.pos,Vo),Vo("."),Bi(ce.name)}function aD(ce){kr(ce.expression),Bi(ce.literal)}function gb(ce){$C(ce,!ce.multiLine&&lre(ce))}function $C(ce,_t){Ht(19,ce.pos,Vo,ce);let pn=_t||Sg(ce)&1?768:129;Dp(ce,ce.statements,pn),Ht(20,ce.statements.end,Vo,ce,!!(pn&1))}function cD(ce){K2(ce,ce.modifiers,!1),Bi(ce.declarationList),C0()}function Jb(ce){ce?Vo(";"):C0()}function ZN(ce){kr(ce.expression,xs.parenthesizeExpressionOfExpressionStatement),(!Be||!Ia(Be)||qd(ce.expression))&&C0()}function X2(ce){let _t=Ht(101,ce.pos,lu,ce);uo(),Ht(21,_t,Vo,ce),kr(ce.expression),Ht(22,ce.expression.end,Vo,ce),ow(ce,ce.thenStatement),ce.elseStatement&&(HE(ce,ce.thenStatement,ce.elseStatement),Ht(93,ce.thenStatement.end,lu,ce),ce.elseStatement.kind===245?(uo(),Bi(ce.elseStatement)):ow(ce,ce.elseStatement))}function rt(ce,_t){let pn=Ht(117,_t,lu,ce);uo(),Ht(21,pn,Vo,ce),kr(ce.expression),Ht(22,ce.expression.end,Vo,ce)}function qr(ce){Ht(92,ce.pos,lu,ce),ow(ce,ce.statement),mc(ce.statement)&&!vt?uo():HE(ce,ce.statement,ce.expression),rt(ce,ce.statement.end),C0()}function Qn(ce){rt(ce,ce.pos),ow(ce,ce.statement)}function Jn(ce){let _t=Ht(99,ce.pos,lu,ce);uo();let pn=Ht(21,_t,Vo,ce);$o(ce.initializer),pn=Ht(27,ce.initializer?ce.initializer.end:pn,Vo,ce),Z_(ce.condition),pn=Ht(27,ce.condition?ce.condition.end:pn,Vo,ce),Z_(ce.incrementor),Ht(22,ce.incrementor?ce.incrementor.end:pn,Vo,ce),ow(ce,ce.statement)}function cs(ce){let _t=Ht(99,ce.pos,lu,ce);uo(),Ht(21,_t,Vo,ce),$o(ce.initializer),uo(),Ht(103,ce.initializer.end,lu,ce),uo(),kr(ce.expression),Ht(22,ce.expression.end,Vo,ce),ow(ce,ce.statement)}function Ls(ce){let _t=Ht(99,ce.pos,lu,ce);uo(),ire(ce.awaitModifier),Ht(21,_t,Vo,ce),$o(ce.initializer),uo(),Ht(165,ce.initializer.end,lu,ce),uo(),kr(ce.expression),Ht(22,ce.expression.end,Vo,ce),ow(ce,ce.statement)}function $o(ce){ce!==void 0&&(ce.kind===261?Bi(ce):kr(ce))}function Ua(ce){Ht(88,ce.pos,lu,ce),Uo(ce.label),C0()}function Ge(ce){Ht(83,ce.pos,lu,ce),Uo(ce.label),C0()}function Ht(ce,_t,pn,qn,Ka){let Gl=jc(qn),bl=Gl&&Gl.kind===qn.kind,jl=_t;if(bl&&Be&&(_t=Ju(Be.text,_t)),bl&&qn.pos!==jl){let Hg=Ka&&Be&&!Z1(jl,_t,Be);Hg&&aw(),GA(jl),Hg&&Qv()}if(!re&&(ce===19||ce===20)?_t=eL(ce,_t,pn,qn):_t=WN(ce,pn,_t),bl&&qn.end!==_t){let Hg=qn.kind===294;o_(_t,!Hg,Hg)}return _t}function En(ce){return ce.kind===2||!!ce.hasTrailingNewLine}function Rs(ce){if(!Be)return!1;let _t=Gb(Be.text,ce.pos);if(_t){let pn=jc(ce);if(pn&&FC(pn.parent))return!0}return lr(_t,En)||lr(tY(ce),En)?!0:NG(ce)?ce.pos!==ce.expression.pos&&lr(m2(Be.text,ce.expression.pos),En)?!0:Rs(ce.expression):!1}function _c(ce){if(!bi&&NG(ce)&&Rs(ce)){let _t=jc(ce);if(_t&&FC(_t)){let pn=_e.createParenthesizedExpression(ce.expression);return Ho(pn,ce),un(pn,_t),pn}return _e.createParenthesizedExpression(ce)}return ce}function Iu(ce){return _c(xs.parenthesizeExpressionForDisallowedComma(ce))}function Wl(ce){Ht(107,ce.pos,lu,ce),Z_(ce.expression&&_c(ce.expression),_c),C0()}function Eu(ce){let _t=Ht(118,ce.pos,lu,ce);uo(),Ht(21,_t,Vo,ce),kr(ce.expression),Ht(22,ce.expression.end,Vo,ce),ow(ce,ce.statement)}function od(ce){let _t=Ht(109,ce.pos,lu,ce);uo(),Ht(21,_t,Vo,ce),kr(ce.expression),Ht(22,ce.expression.end,Vo,ce),uo(),Bi(ce.caseBlock)}function sA(ce){Bi(ce.label),Ht(59,ce.label.end,Vo,ce),uo(),Bi(ce.statement)}function uI(ce){Ht(111,ce.pos,lu,ce),Z_(_c(ce.expression),_c),C0()}function VB(ce){Ht(113,ce.pos,lu,ce),uo(),Bi(ce.tryBlock),ce.catchClause&&(HE(ce,ce.tryBlock,ce.catchClause),Bi(ce.catchClause)),ce.finallyBlock&&(HE(ce,ce.catchClause||ce.tryBlock,ce.finallyBlock),Ht(98,(ce.catchClause||ce.tryBlock).end,lu,ce),uo(),Bi(ce.finallyBlock))}function rw(ce){eL(89,ce.pos,lu),C0()}function lD(ce){var _t,pn,qn;Bi(ce.name),Bi(ce.exclamationToken),zZ(ce.type),qZ(ce.initializer,((_t=ce.type)==null?void 0:_t.end)??((qn=(pn=ce.name.emitNode)==null?void 0:pn.typeNode)==null?void 0:qn.end)??ce.name.end,ce,xs.parenthesizeExpressionForDisallowedComma)}function Xx(ce){if(Mg(ce))lu("await"),uo(),lu("using");else{let _t=oI(ce)?"let":Qp(ce)?"const":pd(ce)?"using":"var";lu(_t)}uo(),Dp(ce,ce.declarations,528)}function YZ(ce){Jx(ce)}function Jx(ce){K2(ce,ce.modifiers,!1),lu("function"),Bi(ce.asteriskToken),uo(),BA(ce.name),WB(ce,F_,J2)}function WB(ce,_t,pn){let qn=Sg(ce)&131072;qn&&aw(),tL(ce),X(ce.parameters,fh),_t(ce),pn(ce),Yv(ce),qn&&Qv()}function J2(ce){let _t=ce.body;_t?nw(_t):C0()}function np(ce){C0()}function F_(ce){$Z(ce,ce.typeParameters),HG(ce,ce.parameters),zZ(ce.type)}function K0(ce){if(Sg(ce)&1)return!0;if(ce.multiLine||!qd(ce)&&Be&&!NZ(ce,Be)||DP(ce,$i(ce.statements),2)||Z4(ce,qo(ce.statements),2,ce.statements))return!1;let _t;for(let pn of ce.statements){if(_7(_t,pn,2)>0)return!1;_t=pn}return!0}function nw(ce){fh(ce),b?.(ce),uo(),Vo("{"),aw();let _t=K0(ce)?HZ:WG;W4(ce,ce.statements,_t),Qv(),eL(20,ce.statements.end,Vo,ce),R?.(ce)}function HZ(ce){WG(ce,!0)}function WG(ce,_t){let pn=TP(ce.statements),qn=ht.getTextPos();Kr(ce),pn===0&&qn===ht.getTextPos()&&_t?(Qv(),Dp(ce,ce.statements,768),aw()):Dp(ce,ce.statements,1,void 0,pn)}function xV(ce){Wv(ce)}function Wv(ce){K2(ce,ce.modifiers,!0),Ht(86,OS(ce).pos,lu,ce),ce.name&&(uo(),BA(ce.name));let _t=Sg(ce)&131072;_t&&aw(),$Z(ce,ce.typeParameters),Dp(ce,ce.heritageClauses,0),uo(),Vo("{"),tL(ce),X(ce.members,UG),Dp(ce,ce.members,129),Yv(ce),Vo("}"),_t&&Qv()}function kV(ce){K2(ce,ce.modifiers,!1),lu("interface"),uo(),Bi(ce.name),$Z(ce,ce.typeParameters),Dp(ce,ce.heritageClauses,512),uo(),Vo("{"),tL(ce),X(ce.members,UG),Dp(ce,ce.members,129),Yv(ce),Vo("}")}function Pv(ce){K2(ce,ce.modifiers,!1),lu("type"),uo(),Bi(ce.name),$Z(ce,ce.typeParameters),uo(),Vo("="),uo(),Bi(ce.type),C0()}function _P(ce){K2(ce,ce.modifiers,!1),lu("enum"),uo(),Bi(ce.name),uo(),Vo("{"),Dp(ce,ce.members,145),Vo("}")}function pT(ce){K2(ce,ce.modifiers,!1),~ce.flags&2048&&(lu(ce.flags&32?"namespace":"module"),uo()),Bi(ce.name);let _t=ce.body;if(!_t)return C0();for(;_t&&CC(_t);)Vo("."),Bi(_t.name),_t=_t.body;uo(),Bi(_t)}function U2(ce){tL(ce),X(ce.statements,fh),$C(ce,lre(ce)),Yv(ce)}function PG(ce){Ht(19,ce.pos,Vo,ce),Dp(ce,ce.clauses,129),Ht(20,ce.clauses.end,Vo,ce,!0)}function rr(ce){K2(ce,ce.modifiers,!1),Ht(102,ce.modifiers?ce.modifiers.end:ce.pos,lu,ce),uo(),ce.isTypeOnly&&(Ht(156,ce.pos,lu,ce),uo()),Bi(ce.name),uo(),Ht(64,ce.name.end,Vo,ce),uo(),Tr(ce.moduleReference),C0()}function Tr(ce){ce.kind===80?kr(ce):Bi(ce)}function xn(ce){K2(ce,ce.modifiers,!1),Ht(102,ce.modifiers?ce.modifiers.end:ce.pos,lu,ce),uo(),ce.importClause&&(Bi(ce.importClause),uo(),Ht(161,ce.importClause.end,lu,ce),uo()),kr(ce.moduleSpecifier),ce.attributes&&Uo(ce.attributes),C0()}function ci(ce){ce.isTypeOnly&&(Ht(156,ce.pos,lu,ce),uo()),Bi(ce.name),ce.name&&ce.namedBindings&&(Ht(28,ce.name.end,Vo,ce),uo()),Bi(ce.namedBindings)}function Wi(ce){let _t=Ht(42,ce.pos,Vo,ce);uo(),Ht(130,_t,lu,ce),uo(),Bi(ce.name)}function qs(ce){Ov(ce)}function zi(ce){XZ(ce)}function ho(ce){let _t=Ht(95,ce.pos,lu,ce);uo(),ce.isExportEquals?Ht(64,_t,XG,ce):Ht(90,_t,lu,ce),uo(),kr(ce.expression,ce.isExportEquals?xs.getParenthesizeRightSideOfBinaryForOperator(64):xs.parenthesizeExpressionOfExportDefault),C0()}function Bc(ce){K2(ce,ce.modifiers,!1);let _t=Ht(95,ce.pos,lu,ce);if(uo(),ce.isTypeOnly&&(_t=Ht(156,_t,lu,ce),uo()),ce.exportClause?Bi(ce.exportClause):_t=Ht(42,_t,Vo,ce),ce.moduleSpecifier){uo();let pn=ce.exportClause?ce.exportClause.end:_t;Ht(161,pn,lu,ce),uo(),kr(ce.moduleSpecifier)}ce.attributes&&Uo(ce.attributes),C0()}function Co(ce){Vo("{"),uo(),lu(ce.token===132?"assert":"with"),Vo(":"),uo();let _t=ce.elements;Dp(ce,_t,526226),uo(),Vo("}")}function ac(ce){Ht(ce.token,ce.pos,lu,ce),uo();let _t=ce.elements;Dp(ce,_t,526226)}function Ps(ce){Bi(ce.name),Vo(":"),uo();let _t=ce.value;if(!(Sg(_t)&1024)){let pn=JS(_t);o_(pn.pos)}Bi(_t)}function ru(ce){let _t=Ht(95,ce.pos,lu,ce);uo(),_t=Ht(130,_t,lu,ce),uo(),_t=Ht(145,_t,lu,ce),uo(),Bi(ce.name),C0()}function Yg(ce){let _t=Ht(42,ce.pos,Vo,ce);uo(),Ht(130,_t,lu,ce),uo(),Bi(ce.name)}function jm(ce){Ov(ce)}function I0(ce){XZ(ce)}function Ov(ce){Vo("{"),Dp(ce,ce.elements,525136),Vo("}")}function XZ(ce){ce.isTypeOnly&&(lu("type"),uo()),ce.propertyName&&(Bi(ce.propertyName),uo(),Ht(130,ce.propertyName.end,lu,ce),uo()),Bi(ce.name)}function Mv(ce){lu("require"),Vo("("),kr(ce.expression),Vo(")")}function u7(ce){Bi(ce.openingElement),Dp(ce,ce.children,262144),Bi(ce.closingElement)}function nre(ce){Vo("<"),R4(ce.tagName),gD(ce,ce.typeArguments),uo(),Bi(ce.attributes),Vo("/>")}function g7(ce){Bi(ce.openingFragment),Dp(ce,ce.children,262144),Bi(ce.closingFragment)}function NY(ce){if(Vo("<"),TN(ce)){let _t=cre(ce.tagName,ce);R4(ce.tagName),gD(ce,ce.typeArguments),ce.attributes.properties&&ce.attributes.properties.length>0&&uo(),Bi(ce.attributes),L4(ce.attributes,ce),jx(_t)}Vo(">")}function yP(ce){ht.writeLiteral(ce.text)}function bP(ce){Vo("")}function EP(ce){Dp(ce,ce.properties,262656)}function T4(ce){Bi(ce.name),ol("=",Vo,ce.initializer,en)}function JZ(ce){Vo("{..."),kr(ce.expression),Vo("}")}function RY(ce){let _t=!1;return Ix(Be?.text||"",ce+1,()=>_t=!0),_t}function Ux(ce){let _t=!1;return vf(Be?.text||"",ce+1,()=>_t=!0),_t}function DY(ce){return RY(ce)||Ux(ce)}function UA(ce){var _t;if(ce.expression||!bi&&!qd(ce)&&DY(ce.pos)){let pn=Be&&!qd(ce)&&Ll(Be,ce.pos).line!==Ll(Be,ce.end).line;pn&&ht.increaseIndent();let qn=Ht(19,ce.pos,Vo,ce);Bi(ce.dotDotDotToken),kr(ce.expression),Ht(20,((_t=ce.expression)==null?void 0:_t.end)||qn,Vo,ce),pn&&ht.decreaseIndent()}}function N4(ce){BA(ce.namespace),Vo(":"),BA(ce.name)}function R4(ce){ce.kind===80?kr(ce):Bi(ce)}function BP(ce){Ht(84,ce.pos,lu,ce),uo(),kr(ce.expression,xs.parenthesizeExpressionForDisallowedComma),LN(ce,ce.statements,ce.expression.end)}function OG(ce){let _t=Ht(90,ce.pos,lu,ce);LN(ce,ce.statements,_t)}function LN(ce,_t,pn){let qn=_t.length===1&&(!Be||qd(ce)||qd(_t[0])||o6(ce,_t[0],Be)),Ka=163969;qn?(eL(59,pn,Vo,ce),uo(),Ka&=-130):Ht(59,pn,Vo,ce),Dp(ce,_t,Ka)}function PB(ce){uo(),WN(ce.token,lu),uo(),Dp(ce,ce.types,528)}function Ab(ce){let _t=Ht(85,ce.pos,lu,ce);uo(),ce.variableDeclaration&&(Ht(21,_t,Vo,ce),Bi(ce.variableDeclaration),Ht(22,ce.variableDeclaration.end,Vo,ce),uo()),Bi(ce.block)}function QE(ce){Bi(ce.name),Vo(":"),uo();let _t=ce.initializer;if(!(Sg(_t)&1024)){let pn=JS(_t);o_(pn.pos)}kr(_t,xs.parenthesizeExpressionForDisallowedComma)}function Ub(ce){Bi(ce.name),ce.objectAssignmentInitializer&&(uo(),Vo("="),uo(),kr(ce.objectAssignmentInitializer,xs.parenthesizeExpressionForDisallowedComma))}function UZ(ce){ce.expression&&(Ht(26,ce.pos,Vo,ce),kr(ce.expression,xs.parenthesizeExpressionForDisallowedComma))}function A7(ce){Bi(ce.name),qZ(ce.initializer,ce.name.end,ce,xs.parenthesizeExpressionForDisallowedComma)}function d7(ce){if(Kt("/**"),ce.comment){let _t=gX(ce.comment);if(_t){let pn=_t.split(/\r\n?|\n/g);for(let qn of pn)j0(),uo(),Vo("*"),uo(),Kt(qn)}}ce.tags&&(ce.tags.length===1&&ce.tags[0].kind===344&&!ce.comment?(uo(),Bi(ce.tags[0])):Dp(ce,ce.tags,33)),uo(),Kt("*/")}function vP(ce){uD(ce.tagName),VN(ce.typeExpression),OB(ce.comment)}function KZ(ce){uD(ce.tagName),Bi(ce.name),OB(ce.comment)}function SP(ce){uD(ce.tagName),uo(),ce.importClause&&(Bi(ce.importClause),uo(),Ht(161,ce.importClause.end,lu,ce),uo()),kr(ce.moduleSpecifier),ce.attributes&&Uo(ce.attributes),OB(ce.comment)}function p7(ce){uo(),Vo("{"),Bi(ce.name),Vo("}")}function Em(ce){uD(ce.tagName),uo(),Vo("{"),Bi(ce.class),Vo("}"),OB(ce.comment)}function jZ(ce){uD(ce.tagName),VN(ce.constraint),uo(),Dp(ce,ce.typeParameters,528),OB(ce.comment)}function f7(ce){uD(ce.tagName),ce.typeExpression&&(ce.typeExpression.kind===309?VN(ce.typeExpression):(uo(),Vo("{"),Kt("Object"),ce.typeExpression.isArrayType&&(Vo("["),Vo("]")),Vo("}"))),ce.fullName&&(uo(),Bi(ce.fullName)),OB(ce.comment),ce.typeExpression&&ce.typeExpression.kind===322&&iw(ce.typeExpression)}function fT(ce){uD(ce.tagName),ce.name&&(uo(),Bi(ce.name)),OB(ce.comment),zm(ce.typeExpression)}function D4(ce){OB(ce.comment),zm(ce.typeExpression)}function fr(ce){uD(ce.tagName),OB(ce.comment)}function iw(ce){Dp(ce,_e.createNodeArray(ce.jsDocPropertyTags),33)}function zm(ce){ce.typeParameters&&Dp(ce,_e.createNodeArray(ce.typeParameters),33),ce.parameters&&Dp(ce,_e.createNodeArray(ce.parameters),33),ce.type&&(j0(),uo(),Vo("*"),uo(),Bi(ce.type))}function wP(ce){uD(ce.tagName),VN(ce.typeExpression),uo(),ce.isBracketed&&Vo("["),Bi(ce.name),ce.isBracketed&&Vo("]"),OB(ce.comment)}function uD(ce){Vo("@"),Bi(ce)}function OB(ce){let _t=gX(ce);_t&&(uo(),Kt(_t))}function VN(ce){ce&&(uo(),Vo("{"),Bi(ce.type),Vo("}"))}function MG(ce){j0();let _t=ce.statements;if(_t.length===0||!QI(_t[0])||qd(_t[0])){W4(ce,_t,xY);return}xY(ce)}function Hue(ce){sw(!!ce.hasNoDefaultLib,ce.syntheticFileReferences||[],ce.syntheticTypeReferences||[],ce.syntheticLibReferences||[])}function SA(ce){ce.isDeclarationFile&&sw(ce.hasNoDefaultLib,ce.referencedFiles,ce.typeReferenceDirectives,ce.libReferenceDirectives)}function sw(ce,_t,pn,qn){if(ce&&(YE('/// '),j0()),Be&&Be.moduleName&&(YE(`/// `),j0()),Be&&Be.amdDependencies)for(let Gl of Be.amdDependencies)Gl.name?YE(`/// `):YE(`/// `),j0();function Ka(Gl,bl){for(let jl of bl){let Hg=jl.resolutionMode?`resolution-mode="${jl.resolutionMode===99?"import":"require"}" `:"",q0=jl.preserve?'preserve="true" ':"";YE(`/// `),j0()}}Ka("path",_t),Ka("types",pn),Ka("lib",qn)}function xY(ce){let _t=ce.statements;tL(ce),X(ce.statements,fh),Kr(ce);let pn=ke(_t,qn=>!QI(qn));SA(ce),Dp(ce,_t,1,void 0,pn===-1?_t.length:pn),Yv(ce)}function x4(ce){let _t=Sg(ce);!(_t&1024)&&ce.pos!==ce.expression.pos&&o_(ce.expression.pos),kr(ce.expression),!(_t&2048)&&ce.end!==ce.expression.end&&GA(ce.expression.end)}function k4(ce){Kx(ce,ce.elements,528,void 0)}function TP(ce,_t,pn){let qn=!!_t;for(let Ka=0;Ka=pn.length||bl===0;if(Hg&&qn&32768){N?.(pn),V?.(pn);return}qn&15360&&(Vo(w7i(qn)),Hg&&pn&&o_(pn.pos,!0)),N?.(pn),Hg?qn&1&&!(vt&&(!_t||Be&&NZ(_t,Be)))?j0():qn&256&&!(qn&524288)&&uo():G4(ce,_t,pn,qn,Ka,Gl,bl,pn.hasTrailingComma,pn),V?.(pn),qn&15360&&(Hg&&pn&&GA(pn.end),Vo(T7i(qn)))}function G4(ce,_t,pn,qn,Ka,Gl,bl,jl,Hg){let q0=(qn&262144)===0,m0=q0,iL=DP(_t,pn[Gl],qn);iL?(j0(iL),m0=!1):qn&256&&uo(),qn&128&&aw();let WY=x7i(ce,Ka),XE,CT=!1;for(let PP=0;PP0){if(qn&131||(aw(),CT=!0),m0&&qn&60&&!Gv(sL.pos)){let qc=JS(sL);o_(qc.pos,!!(qn&512),!0)}j0(PV),m0=!1}else XE&&qn&512&&uo()}if(m0){let PV=JS(sL);o_(PV.pos)}else m0=q0;Ye=sL.pos,WY(sL,ce,Ka,PP),CT&&(Qv(),CT=!1),XE=sL}let zG=XE?Sg(XE):0,PY=bi||!!(zG&2048),mre=jl&&qn&64&&qn&16;mre&&(XE&&!PY?Ht(28,XE.end,Vo,XE):Vo(",")),XE&&(_t?_t.end:-1)!==XE.end&&qn&60&&!PY&&GA(mre&&Hg?.end?Hg.end:XE.end),qn&128&&Qv();let qG=Z4(_t,pn[Gl+bl-1],qn,Hg);qG?j0(qG):qn&2097408&&uo()}function GY(ce){ht.writeLiteral(ce)}function C7(ce){ht.writeStringLiteral(ce)}function Xue(ce){ht.write(ce)}function are(ce,_t){ht.writeSymbol(ce,_t)}function Vo(ce){ht.writePunctuation(ce)}function C0(){ht.writeTrailingSemicolon(";")}function lu(ce){ht.writeKeyword(ce)}function XG(ce){ht.writeOperator(ce)}function F4(ce){ht.writeParameter(ce)}function YE(ce){ht.writeComment(ce)}function uo(){ht.writeSpace(" ")}function m7(ce){ht.writeProperty(ce)}function h7(ce){ht.nonEscapingWrite?ht.nonEscapingWrite(ce):ht.write(ce)}function j0(ce=1){for(let _t=0;_t0)}function aw(){ht.increaseIndent()}function Qv(){ht.decreaseIndent()}function eL(ce,_t,pn,qn){return Lt?WN(ce,pn,_t):nL(qn,ce,pn,_t,WN)}function FY(ce,_t){P&&P(ce),_t(vr(ce.kind)),M&&M(ce)}function WN(ce,_t,pn){let qn=vr(ce);return _t(qn),pn<0?pn:pn+qn.length}function HE(ce,_t,pn){if(Sg(ce)&1)uo();else if(vt){let qn=cw(ce,_t,pn);qn?j0(qn):uo()}else j0()}function PN(ce){let _t=ce.split(/\r\n?|\n/g),pn=Pae(_t);for(let qn of _t){let Ka=pn?qn.slice(pn):qn;Ka.length&&(j0(),Kt(Ka))}}function MB(ce,_t){ce?(aw(),j0(ce)):_t&&uo()}function jx(ce,_t){ce&&Qv(),_t&&Qv()}function DP(ce,_t,pn){if(pn&2||vt){if(pn&65536)return 1;if(_t===void 0)return!ce||Be&&NZ(ce,Be)?0:1;if(_t.pos===Ye||_t.kind===12)return 0;if(Be&&ce&&!Gv(ce.pos)&&!qd(_t)&&(!_t.parent||Tp(_t.parent)===Tp(ce)))return vt?ZY(qn=>SDe(_t.pos,ce.pos,Be,qn)):o6(ce,_t,Be)?0:1;if(xP(_t,pn))return 1}return pn&1?1:0}function _7(ce,_t,pn){if(pn&2||vt){if(ce===void 0||_t===void 0||_t.kind===12)return 0;if(Be&&!qd(ce)&&!qd(_t))return vt&&pre(ce,_t)?ZY(qn=>Yme(ce,_t,Be,qn)):!vt&&j2(ce,_t)?a6(ce,_t,Be)?0:1:pn&65536?1:0;if(xP(ce,pn)||xP(_t,pn))return 1}else if(SG(_t))return 1;return pn&1?1:0}function Z4(ce,_t,pn,qn){if(pn&2||vt){if(pn&65536)return 1;if(_t===void 0)return!ce||Be&&NZ(ce,Be)?0:1;if(Be&&ce&&!Gv(ce.pos)&&!qd(_t)&&(!_t.parent||_t.parent===ce)){if(vt){let Ka=qn&&!Gv(qn.end)?qn.end:_t.end;return ZY(Gl=>wDe(Ka,ce.end,Be,Gl))}return EDe(ce,_t,Be)?0:1}if(xP(_t,pn))return 1}return pn&1&&!(pn&131072)?1:0}function ZY(ce){w.assert(!!vt);let _t=ce(!0);return _t===0?ce(!1):_t}function cre(ce,_t){let pn=vt&&DP(_t,ce,0);return pn&&MB(pn,!1),!!pn}function L4(ce,_t){let pn=vt&&Z4(_t,ce,0,void 0);pn&&j0(pn)}function xP(ce,_t){if(qd(ce)){let pn=SG(ce);return pn===void 0?(_t&65536)!==0:pn}return(_t&65536)!==0}function cw(ce,_t,pn){return Sg(ce)&262144?0:(ce=kP(ce),_t=kP(_t),pn=kP(pn),SG(pn)?1:Be&&!qd(ce)&&!qd(_t)&&!qd(pn)?vt?ZY(qn=>Yme(_t,pn,Be,qn)):a6(_t,pn,Be)?0:1:0)}function lre(ce){return ce.statements.length===0&&(!Be||a6(ce,ce,Be))}function kP(ce){for(;ce.kind===217&&qd(ce);)ce=ce.expression;return ce}function GV(ce,_t){if(Ip(ce)||CZ(ce))return JI(ce);if(bu(ce)&&ce.textSourceNode)return GV(ce.textSourceNode,_t);let pn=Be,qn=!!pn&&!!ce.parent&&!qd(ce);if($y(ce)){if(!qn||ls(ce)!==Tp(pn))return ao(ce)}else if(oT(ce)){if(!qn||ls(ce)!==Tp(pn))return v6(ce)}else if(w.assertNode(ce,Sv),!qn)return ce.text;return pG(pn,ce,_t)}function JG(ce,_t,pn){if(ce.kind===11&&ce.textSourceNode){let Ka=ce.textSourceNode;if(sr(Ka)||kc(Ka)||du(Ka)||oT(Ka)){let Gl=du(Ka)?Ka.text:GV(Ka);return pn?`"${Tme(Gl)}"`:_t||Sg(ce)&16777216?`"${tT(Gl)}"`:`"${Ece(Gl)}"`}else return JG(Ka,_t,pn)}let qn=(_t?1:0)|(pn?2:0)|(n.terminateUnterminatedLiterals?4:0)|(n.target&&n.target>=8?8:0);return Z$(ce,Be,qn)}function tL(ce){je.push(st),st=0,dt.push(wt),!(ce&&Sg(ce)&1048576)&&(nt.push(qe),qe=0,lt.push(Le),Le=void 0,it.push(It))}function Yv(ce){st=je.pop(),wt=dt.pop(),!(ce&&Sg(ce)&1048576)&&(qe=nt.pop(),Le=lt.pop(),It=it.pop())}function rL(ce){(!It||It===qo(it))&&(It=new Set),It.add(ce)}function GP(ce){(!wt||wt===qo(dt))&&(wt=new Set),wt.add(ce)}function fh(ce){if(ce)switch(ce.kind){case 241:X(ce.statements,fh);break;case 256:case 254:case 246:case 247:fh(ce.statement);break;case 245:fh(ce.thenStatement),fh(ce.elseStatement);break;case 248:case 250:case 249:fh(ce.initializer),fh(ce.statement);break;case 255:fh(ce.caseBlock);break;case 269:X(ce.clauses,fh);break;case 296:case 297:X(ce.statements,fh);break;case 258:fh(ce.tryBlock),fh(ce.catchClause),fh(ce.finallyBlock);break;case 299:fh(ce.variableDeclaration),fh(ce.block);break;case 243:fh(ce.declarationList);break;case 261:X(ce.declarations,fh);break;case 260:case 169:case 208:case 263:ON(ce.name);break;case 262:ON(ce.name),Sg(ce)&1048576&&(X(ce.parameters,fh),fh(ce.body));break;case 206:case 207:X(ce.elements,fh);break;case 272:fh(ce.importClause);break;case 273:ON(ce.name),fh(ce.namedBindings);break;case 274:ON(ce.name);break;case 280:ON(ce.name);break;case 275:X(ce.elements,fh);break;case 276:ON(ce.propertyName||ce.name);break}}function UG(ce){if(ce)switch(ce.kind){case 303:case 304:case 172:case 171:case 174:case 173:case 177:case 178:ON(ce.name);break}}function ON(ce){ce&&(Ip(ce)||CZ(ce)?JI(ce):pu(ce)&&fh(ce))}function JI(ce){let _t=ce.emitNode.autoGenerate;if((_t.flags&7)===4)return qm(Xhe(ce),kc(ce),_t.flags,_t.prefix,_t.suffix);{let pn=_t.id;return Qe[pn]||(Qe[pn]=V4(ce))}}function qm(ce,_t,pn,qn,Ka){let Gl=sd(ce),bl=_t?Ne:Fe;return bl[Gl]||(bl[Gl]=z0(ce,_t,pn??0,fte(qn,JI),fte(Ka)))}function KG(ce,_t){return QB(ce,_t)&&!Kb(ce,_t)&&!De.has(ce)}function Kb(ce,_t){let pn,qn;if(_t?(pn=wt,qn=dt):(pn=It,qn=it),pn?.has(ce))return!0;for(let Ka=qn.length-1;Ka>=0;Ka--)if(pn!==qn[Ka]&&(pn=qn[Ka],pn?.has(ce)))return!0;return!1}function QB(ce,_t){return Be?EQ(Be,ce,u):!0}function y7(ce,_t){for(let pn=_t;pn&&tV(pn,_t);pn=pn.nextContainer)if(Tv(pn)&&pn.locals){let qn=pn.locals.get(Rd(ce));if(qn&&qn.flags&3257279)return!1}return!0}function MN(ce){switch(ce){case"":return qe;case"#":return st;default:return Le?.get(ce)??0}}function b7(ce,_t){switch(ce){case"":qe=_t;break;case"#":st=_t;break;default:Le??(Le=new Map),Le.set(ce,_t);break}}function QN(ce,_t,pn,qn,Ka){qn.length>0&&qn.charCodeAt(0)===35&&(qn=qn.slice(1));let Gl=iP(pn,qn,"",Ka),bl=MN(Gl);if(ce&&!(bl&ce)){let Hg=iP(pn,qn,ce===268435456?"_i":"_n",Ka);if(KG(Hg,pn))return bl|=ce,pn?GP(Hg):_t&&rL(Hg),b7(Gl,bl),Hg}for(;;){let jl=bl&268435455;if(bl++,jl!==8&&jl!==13){let Hg=jl<26?"_"+String.fromCharCode(97+jl):"_"+(jl-26),q0=iP(pn,qn,Hg,Ka);if(KG(q0,pn))return pn?GP(q0):_t&&rL(q0),b7(Gl,bl),q0}}}function FV(ce,_t=KG,pn,qn,Ka,Gl,bl){if(ce.length>0&&ce.charCodeAt(0)===35&&(ce=ce.slice(1)),Gl.length>0&&Gl.charCodeAt(0)===35&&(Gl=Gl.slice(1)),pn){let Hg=iP(Ka,Gl,ce,bl);if(_t(Hg,Ka))return Ka?GP(Hg):qn?rL(Hg):De.add(Hg),Hg}ce.charCodeAt(ce.length-1)!==95&&(ce+="_");let jl=1;for(;;){let Hg=iP(Ka,Gl,ce+jl,bl);if(_t(Hg,Ka))return Ka?GP(Hg):qn?rL(Hg):De.add(Hg),Hg;jl++}}function ure(ce){return FV(ce,QB,!0,!1,!1,"","")}function FI(ce){let _t=GV(ce.name);return y7(_t,eo(ce,Tv))?_t:FV(_t,KG,!1,!1,!1,"","")}function gre(ce){let _t=DQ(ce),pn=bu(_t)?Kae(_t.text):"module";return FV(pn,KG,!1,!1,!1,"","")}function Are(){return FV("default",KG,!1,!1,!1,"","")}function FP(){return FV("class",KG,!1,!1,!1,"","")}function Jue(ce,_t,pn,qn){return sr(ce.name)?qm(ce.name,_t):QN(0,!1,_t,pn,qn)}function z0(ce,_t,pn,qn,Ka){switch(ce.kind){case 80:case 81:return FV(GV(ce),KG,!!(pn&16),!!(pn&8),_t,qn,Ka);case 267:case 266:return w.assert(!qn&&!Ka&&!_t),FI(ce);case 272:case 278:return w.assert(!qn&&!Ka&&!_t),gre(ce);case 262:case 263:{w.assert(!qn&&!Ka&&!_t);let Gl=ce.name;return Gl&&!Ip(Gl)?z0(Gl,!1,pn,qn,Ka):Are()}case 277:return w.assert(!qn&&!Ka&&!_t),Are();case 231:return w.assert(!qn&&!Ka&&!_t),FP();case 174:case 177:case 178:return Jue(ce,_t,qn,Ka);case 167:return QN(0,!0,_t,qn,Ka);default:return QN(0,!1,_t,qn,Ka)}}function V4(ce){let _t=ce.emitNode.autoGenerate,pn=fte(_t.prefix,JI),qn=fte(_t.suffix);switch(_t.flags&7){case 1:return QN(0,!!(_t.flags&8),kc(ce),pn,qn);case 2:return w.assertNode(ce,sr),QN(268435456,!!(_t.flags&8),!1,pn,qn);case 3:return FV(ao(ce),_t.flags&32?QB:KG,!!(_t.flags&16),!!(_t.flags&8),kc(ce),pn,qn)}return w.fail(`Unsupported GeneratedIdentifierKind: ${w.formatEnum(_t.flags&7,dc,!0)}.`)}function LY(ce,_t){let pn=Pr(2,ce,_t),qn=Pt,Ka=Vr,Gl=Yr;ZP(_t),pn(ce,_t),db(_t,qn,Ka,Gl)}function ZP(ce){let _t=Sg(ce),pn=JS(ce);Uue(ce,_t,pn.pos,pn.end),_t&4096&&(bi=!0)}function db(ce,_t,pn,qn){let Ka=Sg(ce),Gl=JS(ce);Ka&4096&&(bi=!1),LP(ce,Ka,Gl.pos,Gl.end,_t,pn,qn);let bl=fxe(ce);bl&&LP(ce,Ka,bl.pos,bl.end,_t,pn,qn)}function Uue(ce,_t,pn,qn){gi(),$n=!1;let Ka=pn<0||(_t&1024)!==0||ce.kind===12,Gl=qn<0||(_t&2048)!==0||ce.kind===12;(pn>0||qn>0)&&pn!==qn&&(Ka||ZV(pn,ce.kind!==353),(!Ka||pn>=0&&_t&1024)&&(Pt=pn),(!Gl||qn>=0&&_t&2048)&&(Vr=qn,ce.kind===261&&(Yr=qn))),X(tY(ce),dre),jn()}function LP(ce,_t,pn,qn,Ka,Gl,bl){gi();let jl=qn<0||(_t&2048)!==0||ce.kind===12;X(s4(ce),VP),(pn>0||qn>0)&&pn!==qn&&(Pt=Ka,Vr=Gl,Yr=bl,!jl&&ce.kind!==353&&Mo(qn)),jn()}function dre(ce){(ce.hasLeadingNewline||ce.kind===2)&&ht.writeLine(),VY(ce),ce.hasTrailingNewLine||ce.kind===2?ht.writeLine():ht.writeSpace(" ")}function VP(ce){ht.isAtStartOfLine()||ht.writeSpace(" "),VY(ce),ce.hasTrailingNewLine&&ht.writeLine()}function VY(ce){let _t=E7(ce),pn=ce.kind===3?pc(_t):void 0;jX(_t,pn,ht,0,_t.length,ue)}function E7(ce){return ce.kind===3?`/*${ce.text}*/`:`//${ce.text}`}function W4(ce,_t,pn){gi();let{pos:qn,end:Ka}=_t,Gl=Sg(ce),bl=qn<0||(Gl&1024)!==0,jl=bi||Ka<0||(Gl&2048)!==0;bl||lw(_t),jn(),Gl&4096&&!bi?(bi=!0,pn(ce),bi=!1):pn(ce),gi(),jl||(ZV(_t.end,!0),$n&&!ht.isAtStartOfLine()&&ht.writeLine()),jn()}function j2(ce,_t){return ce=Tp(ce),ce.parent&&ce.parent===Tp(_t).parent}function pre(ce,_t){if(_t.pos-1&&qn.indexOf(_t)===Ka+1}function ZV(ce,_t){$n=!1,_t?ce===0&&Be?.isDeclarationFile?WP(ce,IT):WP(ce,O4):ce===0&&WP(ce,Y1)}function Y1(ce,_t,pn,qn,Ka){AD(ce,_t)&&O4(ce,_t,pn,qn,Ka)}function IT(ce,_t,pn,qn,Ka){AD(ce,_t)||O4(ce,_t,pn,qn,Ka)}function P4(ce,_t){return n.onlyPrintJsDocStyle?n8e(ce,_t)||B8(ce,_t):!0}function O4(ce,_t,pn,qn,Ka){!Be||!P4(Be.text,ce)||($n||(Gme(Ku(),ht,Ka,ce),$n=!0),uw(ce),jX(Be.text,Ku(),ht,ce,_t,ue),uw(_t),qn?ht.writeLine():pn===3&&ht.writeSpace(" "))}function GA(ce){bi||ce===-1||ZV(ce,!0)}function Mo(ce){LV(ce,z2)}function z2(ce,_t,pn,qn){!Be||!P4(Be.text,ce)||(ht.isAtStartOfLine()||ht.writeSpace(" "),uw(ce),jX(Be.text,Ku(),ht,ce,_t,ue),uw(_t),qn&&ht.writeLine())}function o_(ce,_t,pn){bi||(gi(),LV(ce,_t?z2:pn?fre:Ire),jn())}function fre(ce,_t,pn){Be&&(uw(ce),jX(Be.text,Ku(),ht,ce,_t,ue),uw(_t),pn===2&&ht.writeLine())}function Ire(ce,_t,pn,qn){Be&&(uw(ce),jX(Be.text,Ku(),ht,ce,_t,ue),uw(_t),qn?ht.writeLine():ht.writeSpace(" "))}function WP(ce,_t){Be&&(Pt===-1||ce!==Pt)&&(Cre(ce)?VV(_t):vf(Be.text,ce,_t,ce))}function LV(ce,_t){Be&&(Vr===-1||ce!==Vr&&ce!==Yr)&&Ix(Be.text,ce,_t)}function Cre(ce){return zr!==void 0&&Na(zr).nodePos===ce}function VV(ce){if(!Be)return;let _t=Na(zr).detachedCommentEndPos;zr.length-1?zr.pop():zr=void 0,vf(Be.text,_t,ce,_t)}function lw(ce){let _t=Be&&pDe(Be.text,Ku(),ht,H1,ce,ue,bi);_t&&(zr?zr.push(_t):zr=[_t])}function H1(ce,_t,pn,qn,Ka,Gl){!Be||!P4(Be.text,qn)||(uw(qn),jX(ce,_t,pn,qn,Ka,Gl),uw(Ka))}function AD(ce,_t){return!!Be&&G$(Be.text,ce,_t)}function YN(ce,_t){let pn=Pr(3,ce,_t);jG(_t),pn(ce,_t),M4(_t)}function jG(ce){let _t=Sg(ce),pn=Gx(ce),qn=pn.source||Zt;ce.kind!==353&&!(_t&32)&&pn.pos>=0&&X1(pn.source||Zt,LC(qn,pn.pos)),_t&128&&(Lt=!0)}function M4(ce){let _t=Sg(ce),pn=Gx(ce);_t&128&&(Lt=!1),ce.kind!==353&&!(_t&64)&&pn.end>=0&&X1(pn.source||Zt,pn.end)}function LC(ce,_t){return ce.skipTrivia?ce.skipTrivia(_t):Ju(ce.text,_t)}function uw(ce){if(Lt||Gv(ce)||WV(Zt))return;let{line:_t,character:pn}=Ll(Zt,ce);kt.addMapping(ht.getLine(),ht.getColumn(),Dr,_t,pn,void 0)}function X1(ce,_t){if(ce!==Zt){let pn=Zt,qn=Dr;q2(ce),uw(_t),Q4(pn,qn)}else uw(_t)}function nL(ce,_t,pn,qn,Ka){if(Lt||ce&&V8(ce))return Ka(_t,pn,qn);let Gl=ce&&ce.emitNode,bl=Gl&&Gl.flags||0,jl=Gl&&Gl.tokenSourceMapRanges&&Gl.tokenSourceMapRanges[_t],Hg=jl&&jl.source||Zt;return qn=LC(Hg,jl?jl.pos:qn),!(bl&256)&&qn>=0&&X1(Hg,qn),qn=Ka(_t,pn,qn),jl&&(qn=jl.end),!(bl&512)&&qn>=0&&X1(Hg,qn),qn}function q2(ce){if(!Lt){if(Zt=ce,ce===jt){Dr=mr;return}WV(ce)||(Dr=kt.addSource(ce.fileName),n.inlineSources&&kt.setSourceContent(Dr,ce.text),jt=ce,mr=Dr)}}function Q4(ce,_t){Zt=ce,Dr=_t}function WV(ce){return gd(ce.fileName,".json")}}function S7i(){let n=[];return n[1024]=["{","}"],n[2048]=["(",")"],n[4096]=["<",">"],n[8192]=["[","]"],n}function w7i(n){return xGr[n&15360][0]}function T7i(n){return xGr[n&15360][1]}function N7i(n,c,u,d){c(n)}function R7i(n,c,u,d){c(n,u.select(d))}function D7i(n,c,u,d){c(n,u)}function x7i(n,c){return n.length===1?N7i:typeof c=="object"?R7i:D7i}function Uke(n,c,u){if(!n.getDirectories||!n.readDirectory)return;let d=new Map,I=tA(u);return{useCaseSensitiveFileNames:u,fileExists:re,readFile:(Le,je)=>n.readFile(Le,je),directoryExists:n.directoryExists&&ue,getDirectories:de,readDirectory:Be,createDirectory:n.createDirectory&&Ae,writeFile:n.writeFile&&te,addOrDeleteFileOrDirectory:Ne,addOrDeleteFile:Qe,clearCache:lt,realpath:n.realpath&&Fe};function h(Le){return gA(Le,c,I)}function b(Le){return d.get(AA(Le))}function R(Le){let je=b(aa(Le));return je&&(je.sortedAndCanonicalizedFiles||(je.sortedAndCanonicalizedFiles=je.files.map(I).sort(),je.sortedAndCanonicalizedDirectories=je.directories.map(I).sort()),je)}function N(Le){return xA(Mc(Le))}function V(Le,je){var st;if(!n.realpath||AA(h(n.realpath(Le)))===je){let nt={files:Ot(n.readDirectory(Le,void 0,void 0,["*.*"]),N)||[],directories:n.getDirectories(Le)||[]};return d.set(AA(je),nt),nt}if((st=n.directoryExists)!=null&&st.call(n,Le))return d.set(je,!1),!1}function P(Le,je){je=AA(je);let st=b(je);if(st)return st;try{return V(Le,je)}catch{w.assert(!d.has(AA(je)));return}}function M(Le,je){return Lg(Le,je,Bl,Do)>=0}function te(Le,je,st){let nt=h(Le),qe=R(nt);return qe&&De(qe,N(Le),!0),n.writeFile(Le,je,st)}function re(Le){let je=h(Le),st=R(je);return st&&M(st.sortedAndCanonicalizedFiles,I(N(Le)))||n.fileExists(Le)}function ue(Le){let je=h(Le);return d.has(AA(je))||n.directoryExists(Le)}function Ae(Le){let je=h(Le),st=R(je);if(st){let nt=N(Le),qe=I(nt),it=st.sortedAndCanonicalizedDirectories;Gr(it,qe,Do)&&st.directories.push(nt)}n.createDirectory(Le)}function de(Le){let je=h(Le),st=P(Le,je);return st?st.directories.slice():n.getDirectories(Le)}function Be(Le,je,st,nt,qe){let it=h(Le),It=P(Le,it),dt;if(It!==void 0)return che(Le,je,st,nt,u,c,qe,wt,Fe);return n.readDirectory(Le,je,st,nt,qe);function wt(Ye){let ht=h(Ye);if(ht===it)return It||vt(Ye,ht);let Et=P(Ye,ht);return Et!==void 0?Et||vt(Ye,ht):ghe}function vt(Ye,ht){if(dt&&ht===it)return dt;let Et={files:Ot(n.readDirectory(Ye,void 0,void 0,["*.*"]),N)||v,directories:n.getDirectories(Ye)||v};return ht===it&&(dt=Et),Et}}function Fe(Le){return n.realpath?n.realpath(Le):Le}function Ne(Le,je){if(b(je)!==void 0){lt();return}let nt=R(je);if(!nt)return;if(!n.directoryExists){lt();return}let qe=N(Le),it={fileExists:n.fileExists(Le),directoryExists:n.directoryExists(Le)};return it.directoryExists||M(nt.sortedAndCanonicalizedDirectories,I(qe))?lt():De(nt,qe,it.fileExists),it}function Qe(Le,je,st){if(st===1)return;let nt=R(je);nt&&De(nt,N(Le),st===0)}function De(Le,je,st){let nt=Le.sortedAndCanonicalizedFiles,qe=I(je);if(st)Gr(nt,qe,Do)&&Le.files.push(je);else{let it=Lg(nt,qe,Bl,Do);if(it>=0){nt.splice(it,1);let It=Le.files.findIndex(dt=>I(dt)===qe);Le.files.splice(It,1)}}}function lt(){d.clear()}}var Vxt=(n=>(n[n.Update=0]="Update",n[n.RootNamesAndUpdate=1]="RootNamesAndUpdate",n[n.Full=2]="Full",n[n.Resolutions=3]="Resolutions",n))(Vxt||{});function Kke(n,c,u,d,I){var h;let b=cA(((h=c?.configFile)==null?void 0:h.extendedSourceFiles)||v,I);u.forEach((R,N)=>{b.has(N)||(R.projects.delete(n),R.close())}),b.forEach((R,N)=>{let V=u.get(N);V?V.projects.add(n):u.set(N,{projects:new Set([n]),watcher:d(R,N),close:()=>{let P=u.get(N);!P||P.projects.size!==0||(P.watcher.close(),u.delete(N))}})})}function _6e(n,c){c.forEach(u=>{u.projects.delete(n)&&u.close()})}function jke(n,c,u){n.delete(c)&&n.forEach(({extendedResult:d},I)=>{var h;(h=d.extendedSourceFiles)!=null&&h.some(b=>u(b)===c)&&jke(n,I,u)})}function y6e(n,c,u){u6(c,n.getMissingFilePaths(),{createNewValue:u,onDeleteValue:RB})}function C_e(n,c,u){c?u6(n,new Map(Object.entries(c)),{createNewValue:d,onDeleteValue:ZB,onExistingValue:I}):Y0(n,ZB);function d(h,b){return{watcher:u(h,b),flags:b}}function I(h,b,R){h.flags!==b&&(h.watcher.close(),n.set(R,d(R,b)))}}function m_e({watchedDirPath:n,fileOrDirectory:c,fileOrDirectoryPath:u,configFileName:d,options:I,program:h,extraFileExtensions:b,currentDirectory:R,useCaseSensitiveFileNames:N,writeLog:V,toPath:P,getScriptKind:M}){let te=sGe(u);if(!te)return V(`Project: ${d} Detected ignored path: ${c}`),!0;if(u=te,u===n)return!1;if(v1(u)&&!(KDe(c,I,b)||Be()))return V(`Project: ${d} Detected file add/remove of non supported extension: ${c}`),!0;if(zRt(c,I.configFile.configFileSpecs,Oc(aa(d),R),N,R))return V(`Project: ${d} Detected excluded file: ${c}`),!0;if(!h||I.outFile||I.outDir)return!1;if(kh(u)){if(I.declarationDir)return!1}else if(!pp(u,$X))return!1;let re=o0(u),ue=Ra(h)?void 0:k7i(h)?h.getProgramOrUndefined():h,Ae=!ue&&!Ra(h)?h:void 0;if(de(re+".ts")||de(re+".tsx"))return V(`Project: ${d} Detected output file: ${c}`),!0;return!1;function de(Fe){return ue?!!ue.getSourceFileByPath(Fe):Ae?Ae.getState().fileInfos.has(Fe):!!be(h,Ne=>P(Ne)===Fe)}function Be(){if(!M)return!1;switch(M(c)){case 3:case 4:case 7:case 5:return!0;case 1:case 2:return bG(I);case 6:return lV(I);case 0:return!1}}}function k7i(n){return!!n.getState}function Wxt(n,c){return n?n.isEmittedFile(c):!1}var Pxt=(n=>(n[n.None=0]="None",n[n.TriggerOnly=1]="TriggerOnly",n[n.Verbose=2]="Verbose",n))(Pxt||{});function b6e(n,c,u,d){kb(c===2?u:oc);let I={watchFile:(Ae,de,Be,Fe)=>n.watchFile(Ae,de,Be,Fe),watchDirectory:(Ae,de,Be,Fe)=>n.watchDirectory(Ae,de,(Be&1)!==0,Fe)},h=c!==0?{watchFile:re("watchFile"),watchDirectory:re("watchDirectory")}:void 0,b=c===2?{watchFile:M,watchDirectory:te}:h||I,R=c===2?P:Aue;return{watchFile:N("watchFile"),watchDirectory:N("watchDirectory")};function N(Ae){return(de,Be,Fe,Ne,Qe,De)=>{var lt;return _ke(de,Ae==="watchFile"?Ne?.excludeFiles:Ne?.excludeDirectories,V(),((lt=n.getCurrentDirectory)==null?void 0:lt.call(n))||"")?R(de,Fe,Ne,Qe,De):b[Ae].call(void 0,de,Be,Fe,Ne,Qe,De)}}function V(){return typeof n.useCaseSensitiveFileNames=="boolean"?n.useCaseSensitiveFileNames:n.useCaseSensitiveFileNames()}function P(Ae,de,Be,Fe,Ne){return u(`ExcludeWatcher:: Added:: ${ue(Ae,de,Be,Fe,Ne,d)}`),{close:()=>u(`ExcludeWatcher:: Close:: ${ue(Ae,de,Be,Fe,Ne,d)}`)}}function M(Ae,de,Be,Fe,Ne,Qe){u(`FileWatcher:: Added:: ${ue(Ae,Be,Fe,Ne,Qe,d)}`);let De=h.watchFile(Ae,de,Be,Fe,Ne,Qe);return{close:()=>{u(`FileWatcher:: Close:: ${ue(Ae,Be,Fe,Ne,Qe,d)}`),De.close()}}}function te(Ae,de,Be,Fe,Ne,Qe){let De=`DirectoryWatcher:: Added:: ${ue(Ae,Be,Fe,Ne,Qe,d)}`;u(De);let lt=ql(),Le=h.watchDirectory(Ae,de,Be,Fe,Ne,Qe),je=ql()-lt;return u(`Elapsed:: ${je}ms ${De}`),{close:()=>{let st=`DirectoryWatcher:: Close:: ${ue(Ae,Be,Fe,Ne,Qe,d)}`;u(st);let nt=ql();Le.close();let qe=ql()-nt;u(`Elapsed:: ${qe}ms ${st}`)}}}function re(Ae){return(de,Be,Fe,Ne,Qe,De)=>I[Ae].call(void 0,de,(...lt)=>{let Le=`${Ae==="watchFile"?"FileWatcher":"DirectoryWatcher"}:: Triggered with ${lt[0]} ${lt[1]!==void 0?lt[1]:""}:: ${ue(de,Fe,Ne,Qe,De,d)}`;u(Le);let je=ql();Be.call(void 0,...lt);let st=ql()-je;u(`Elapsed:: ${st}ms ${Le}`)},Fe,Ne,Qe,De)}function ue(Ae,de,Be,Fe,Ne,Qe){return`WatchInfo: ${Ae} ${de} ${JSON.stringify(Be)} ${Qe?Qe(Fe,Ne):Ne===void 0?Fe:`${Fe} ${Ne}`}`}}function h_e(n){let c=n?.fallbackPolling;return{watchFile:c!==void 0?c:1}}function ZB(n){n.watcher.close()}function E6e(n,c,u="tsconfig.json"){return iI(n,d=>{let I=xo(d,u);return c(I)?I:void 0})}function B6e(n,c){let u=aa(c),d=yd(n)?n:xo(u,n);return Mc(d)}function Oxt(n,c,u){let d;return X(n,h=>{let b=gh(h,c);if(b.pop(),!d){d=b;return}let R=Math.min(d.length,b.length);for(let N=0;N{let h;try{rs("beforeIORead"),h=n(u),rs("afterIORead"),vc("I/O Read","beforeIORead","afterIORead")}catch(b){I&&I(b.message),h=""}return h!==void 0?L6(u,h,d,c):void 0}}function S6e(n,c,u){return(d,I,h,b)=>{try{rs("beforeIOWrite"),Dme(d,I,h,n,c,u),rs("afterIOWrite"),vc("I/O Write","beforeIOWrite","afterIOWrite")}catch(R){b&&b(R.message)}}}function zke(n,c,u=_d){let d=new Map,I=tA(u.useCaseSensitiveFileNames);function h(P){return d.has(P)?!0:(V.directoryExists||u.directoryExists)(P)?(d.set(P,!0),!0):!1}function b(){return aa(Mc(u.getExecutingFilePath()))}let R=G1(n),N=u.realpath&&(P=>u.realpath(P)),V={getSourceFile:v6e(P=>V.readFile(P),c),getDefaultLibLocation:b,getDefaultLibFileName:P=>xo(b(),Ig(P)),writeFile:S6e((P,M,te)=>u.writeFile(P,M,te),P=>(V.createDirectory||u.createDirectory)(P),P=>h(P)),getCurrentDirectory:iu(()=>u.getCurrentDirectory()),useCaseSensitiveFileNames:()=>u.useCaseSensitiveFileNames,getCanonicalFileName:I,getNewLine:()=>R,fileExists:P=>u.fileExists(P),readFile:P=>u.readFile(P),trace:P=>u.write(P+R),directoryExists:P=>u.directoryExists(P),getEnvironmentVariable:P=>u.getEnvironmentVariable?u.getEnvironmentVariable(P):"",getDirectories:P=>u.getDirectories(P),realpath:N,readDirectory:(P,M,te,re,ue)=>u.readDirectory(P,M,te,re,ue),createDirectory:P=>u.createDirectory(P),createHash:Hi(u,u.createHash)};return V}function cue(n,c,u){let d=n.readFile,I=n.fileExists,h=n.directoryExists,b=n.createDirectory,R=n.writeFile,N=new Map,V=new Map,P=new Map,M=new Map,te=Ae=>{let de=c(Ae),Be=N.get(de);return Be!==void 0?Be!==!1?Be:void 0:re(de,Ae)},re=(Ae,de)=>{let Be=d.call(n,de);return N.set(Ae,Be!==void 0?Be:!1),Be};n.readFile=Ae=>{let de=c(Ae),Be=N.get(de);return Be!==void 0?Be!==!1?Be:void 0:!gd(Ae,".json")&&!kxt(Ae)?d.call(n,Ae):re(de,Ae)};let ue=u?(Ae,de,Be,Fe)=>{let Ne=c(Ae),Qe=typeof de=="object"?de.impliedNodeFormat:void 0,De=M.get(Qe),lt=De?.get(Ne);if(lt)return lt;let Le=u(Ae,de,Be,Fe);return Le&&(kh(Ae)||gd(Ae,".json"))&&M.set(Qe,(De||new Map).set(Ne,Le)),Le}:void 0;return n.fileExists=Ae=>{let de=c(Ae),Be=V.get(de);if(Be!==void 0)return Be;let Fe=I.call(n,Ae);return V.set(de,!!Fe),Fe},R&&(n.writeFile=(Ae,de,...Be)=>{let Fe=c(Ae);V.delete(Fe);let Ne=N.get(Fe);Ne!==void 0&&Ne!==de?(N.delete(Fe),M.forEach(Qe=>Qe.delete(Fe))):ue&&M.forEach(Qe=>{let De=Qe.get(Fe);De&&De.text!==de&&Qe.delete(Fe)}),R.call(n,Ae,de,...Be)}),h&&(n.directoryExists=Ae=>{let de=c(Ae),Be=P.get(de);if(Be!==void 0)return Be;let Fe=h.call(n,Ae);return P.set(de,!!Fe),Fe},b&&(n.createDirectory=Ae=>{let de=c(Ae);P.delete(de),b.call(n,Ae)})),{originalReadFile:d,originalFileExists:I,originalDirectoryExists:h,originalCreateDirectory:b,originalWriteFile:R,getSourceFileWithCache:ue,readFileWithCache:te}}function PGr(n,c,u){let d;return d=ai(d,n.getConfigFileParsingDiagnostics()),d=ai(d,n.getOptionsDiagnostics(u)),d=ai(d,n.getSyntacticDiagnostics(c,u)),d=ai(d,n.getGlobalDiagnostics(u)),d=ai(d,n.getSemanticDiagnostics(c,u)),LE(n.getCompilerOptions())&&(d=ai(d,n.getDeclarationDiagnostics(c,u))),nA(d||v)}function OGr(n,c){let u="";for(let d of n)u+=w6e(d,c);return u}function w6e(n,c){let u=`${jh(n)} TS${n.code}: ${xN(n.messageText,c.getNewLine())}${c.getNewLine()}`;if(n.file){let{line:d,character:I}=Ll(n.file,n.start),h=n.file.fileName;return`${TE(h,c.getCurrentDirectory(),R=>c.getCanonicalFileName(R))}(${d+1},${I+1}): `+u}return u}var Qxt=(n=>(n.Grey="\x1B[90m",n.Red="\x1B[91m",n.Yellow="\x1B[93m",n.Blue="\x1B[94m",n.Cyan="\x1B[96m",n))(Qxt||{}),Yxt="\x1B[7m",Hxt=" ",MGr="\x1B[0m",QGr="...",G7i=" ",YGr=" ";function HGr(n){switch(n){case 1:return"\x1B[91m";case 0:return"\x1B[93m";case 2:return w.fail("Should never get an Info diagnostic on the command line.");case 3:return"\x1B[94m"}}function mY(n,c){return c+n+MGr}function XGr(n,c,u,d,I,h){let{line:b,character:R}=Ll(n,c),{line:N,character:V}=Ll(n,c+u),P=Ll(n,n.text.length).line,M=N-b>=4,te=(N+1+"").length;M&&(te=Math.max(QGr.length,te));let re="";for(let ue=b;ue<=N;ue++){re+=h.getNewLine(),M&&b+1u.getCanonicalFileName(N)):n.fileName,R="";return R+=d(b,"\x1B[96m"),R+=":",R+=d(`${I+1}`,"\x1B[93m"),R+=":",R+=d(`${h+1}`,"\x1B[93m"),R}function Xxt(n,c){let u="";for(let d of n){if(d.file){let{file:I,start:h}=d;u+=T6e(I,h,c),u+=" - "}if(u+=mY(jh(d),HGr(d.category)),u+=mY(` TS${d.code}: `,"\x1B[90m"),u+=xN(d.messageText,c.getNewLine()),d.file&&d.code!==Z.File_appears_to_be_binary.code&&(u+=c.getNewLine(),u+=XGr(d.file,d.start,d.length,"",HGr(d.category),c)),d.relatedInformation){u+=c.getNewLine();for(let{file:I,start:h,length:b,messageText:R}of d.relatedInformation)I&&(u+=c.getNewLine(),u+=G7i+T6e(I,h,c),u+=XGr(I,h,b,YGr,"\x1B[96m",c)),u+=c.getNewLine(),u+=YGr+xN(R,c.getNewLine())}u+=c.getNewLine()}return u}function xN(n,c,u=0){if(Xa(n))return n;if(n===void 0)return"";let d="";if(u){d+=c;for(let I=0;IR6e(c,n,u)};function k6e(n,c,u,d,I){return{nameAndMode:x6e,resolve:(h,b)=>M6(h,n,u,d,I,c,b)}}function G6e(n){return Xa(n)?n:n.fileName}var F7i={getName:G6e,getMode:(n,c)=>__e(n,c?.impliedNodeFormat)};function qke(n,c,u,d,I){return{nameAndMode:F7i,resolve:(h,b)=>aDt(h,n,u,d,c,I,b)}}function y_e(n,c,u,d,I,h,b,R){if(n.length===0)return v;let N=[],V=new Map,P=R(c,u,d,h,b);for(let M of n){let te=P.nameAndMode.getName(M),re=P.nameAndMode.getMode(M,I,u?.commandLine.options||d),ue=Jle(te,re),Ae=V.get(ue);Ae||V.set(ue,Ae=P.resolve(te,re)),N.push(Ae)}return N}function F6e(n,c){return $ke(void 0,n,(u,d)=>u&&c(u,d))}function $ke(n,c,u,d){let I;return h(n,c,void 0);function h(b,R,N){if(d){let V=d(b,N);if(V)return V}return X(R,(V,P)=>{if(V&&I?.has(V.sourceFile.path))return;let M=u(V,N,P);return M||!V?M:((I||(I=new Set)).add(V.sourceFile.path),h(V.commandLine.projectReferences,V.references,V))})}}var lue="__inferred type names__.ts";function eGe(n,c,u){let d=n.configFilePath?aa(n.configFilePath):c;return xo(d,`__lib_node_modules_lookup_${u}__.ts`)}function Z6e(n){let c=n.split("."),u=c[1],d=2;for(;c[d]&&c[d]!=="d";)u+=(d===2?"/":"-")+c[d],d++;return"@typescript/lib-"+u}function UGr(n){return lf(n.fileName)}function KGr(n){let c=UGr(n);return l8e.get(c)}function gP(n){switch(n?.kind){case 3:case 4:case 5:case 7:return!0;default:return!1}}function Tte(n){return n.pos!==void 0}function uue(n,c){var u,d,I,h;let b=w.checkDefined(n.getSourceFileByPath(c.file)),{kind:R,index:N}=c,V,P,M;switch(R){case 3:let te=B_e(b,N);if(M=(d=(u=n.getResolvedModuleFromModuleSpecifier(te,b))==null?void 0:u.resolvedModule)==null?void 0:d.packageId,te.pos===-1)return{file:b,packageId:M,text:te.text};V=Ju(b.text,te.pos),P=te.end;break;case 4:({pos:V,end:P}=b.referencedFiles[N]);break;case 5:({pos:V,end:P}=b.typeReferenceDirectives[N]),M=(h=(I=n.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(b.typeReferenceDirectives[N],b))==null?void 0:I.resolvedTypeReferenceDirective)==null?void 0:h.packageId;break;case 7:({pos:V,end:P}=b.libReferenceDirectives[N]);break;default:return w.assertNever(R)}return{file:b,pos:V,end:P,packageId:M}}function L6e(n,c,u,d,I,h,b,R,N,V){if(!n||R?.()||!Cn(n.getRootFileNames(),c))return!1;let P;if(!Cn(n.getProjectReferences(),V,Ae)||n.getSourceFiles().some(re))return!1;let M=n.getMissingFilePaths();if(M&&JC(M,I))return!1;let te=n.getCompilerOptions();if(!Pce(te,u)||n.resolvedLibReferences&&JC(n.resolvedLibReferences,(Be,Fe)=>b(Fe)))return!1;if(te.configFile&&u.configFile)return te.configFile.text===u.configFile.text;return!0;function re(Be){return!ue(Be)||h(Be.path)}function ue(Be){return Be.version===d(Be.resolvedPath,Be.fileName)}function Ae(Be,Fe,Ne){return y8(Be,Fe)&&de(n.getResolvedProjectReferences()[Ne],Be)}function de(Be,Fe){if(Be){if(Ue(P,Be))return!0;let Qe=Nte(Fe),De=N(Qe);return!De||Be.commandLine.options.configFile!==De.options.configFile||!Cn(Be.commandLine.fileNames,De.fileNames)?!1:((P||(P=[])).push(Be),!X(Be.references,(lt,Le)=>!de(lt,Be.commandLine.projectReferences[Le])))}let Ne=Nte(Fe);return!N(Ne)}}function hY(n){return n.options.configFile?[...n.options.configFile.parseDiagnostics,...n.errors]:n.errors}function b_e(n,c,u,d){let I=tGe(n,c,u,d);return typeof I=="object"?I.impliedNodeFormat:I}function tGe(n,c,u,d){switch(s0(d)){case 3:case 99:return pp(n,[".d.mts",".mts",".mjs"])?99:pp(n,[".d.cts",".cts",".cjs"])?1:pp(n,[".d.ts",".ts",".tsx",".js",".jsx"])?I():void 0;default:return}function I(){let h=Ule(c,u,d),b=[];h.failedLookupLocations=b,h.affectingLocations=b;let R=Kle(n,h);return{impliedNodeFormat:R?.contents.packageJsonContent.type==="module"?99:1,packageJsonLocations:b,packageJsonScope:R}}}var V6e=new Set([Z.Cannot_redeclare_block_scoped_variable_0.code,Z.A_module_cannot_have_multiple_default_exports.code,Z.Another_export_default_is_here.code,Z.The_first_export_default_is_here.code,Z.Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module.code,Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode.code,Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here.code,Z.constructor_is_a_reserved_word.code,Z.delete_cannot_be_called_on_an_identifier_in_strict_mode.code,Z.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,Z.Invalid_use_of_0_Modules_are_automatically_in_strict_mode.code,Z.Invalid_use_of_0_in_strict_mode.code,Z.A_label_is_not_allowed_here.code,Z.with_statements_are_not_allowed_in_strict_mode.code,Z.A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement.code,Z.A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement.code,Z.A_class_declaration_without_the_default_modifier_must_have_a_name.code,Z.A_class_member_cannot_have_the_0_keyword.code,Z.A_comma_expression_is_not_allowed_in_a_computed_property_name.code,Z.A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement.code,Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement.code,Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement.code,Z.A_default_clause_cannot_appear_more_than_once_in_a_switch_statement.code,Z.A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration.code,Z.A_definite_assignment_assertion_is_not_permitted_in_this_context.code,Z.A_destructuring_declaration_must_have_an_initializer.code,Z.A_get_accessor_cannot_have_parameters.code,Z.A_rest_element_cannot_contain_a_binding_pattern.code,Z.A_rest_element_cannot_have_a_property_name.code,Z.A_rest_element_cannot_have_an_initializer.code,Z.A_rest_element_must_be_last_in_a_destructuring_pattern.code,Z.A_rest_parameter_cannot_have_an_initializer.code,Z.A_rest_parameter_must_be_last_in_a_parameter_list.code,Z.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma.code,Z.A_return_statement_cannot_be_used_inside_a_class_static_block.code,Z.A_set_accessor_cannot_have_rest_parameter.code,Z.A_set_accessor_must_have_exactly_one_parameter.code,Z.An_export_declaration_can_only_be_used_at_the_top_level_of_a_module.code,Z.An_export_declaration_cannot_have_modifiers.code,Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module.code,Z.An_import_declaration_cannot_have_modifiers.code,Z.An_object_member_cannot_be_declared_optional.code,Z.Argument_of_dynamic_import_cannot_be_spread_element.code,Z.Cannot_assign_to_private_method_0_Private_methods_are_not_writable.code,Z.Cannot_redeclare_identifier_0_in_catch_clause.code,Z.Catch_clause_variable_cannot_have_an_initializer.code,Z.Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator.code,Z.Classes_can_only_extend_a_single_class.code,Z.Classes_may_not_have_a_field_named_constructor.code,Z.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,Z.Duplicate_label_0.code,Z.Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments.code,Z.for_await_loops_cannot_be_used_inside_a_class_static_block.code,Z.JSX_attributes_must_only_be_assigned_a_non_empty_expression.code,Z.JSX_elements_cannot_have_multiple_attributes_with_the_same_name.code,Z.JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array.code,Z.JSX_property_access_expressions_cannot_include_JSX_namespace_names.code,Z.Jump_target_cannot_cross_function_boundary.code,Z.Line_terminator_not_permitted_before_arrow.code,Z.Modifiers_cannot_appear_here.code,Z.Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement.code,Z.Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement.code,Z.Private_identifiers_are_not_allowed_outside_class_bodies.code,Z.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,Z.Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier.code,Z.Tagged_template_expressions_are_not_permitted_in_an_optional_chain.code,Z.The_left_hand_side_of_a_for_of_statement_may_not_be_async.code,Z.The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer.code,Z.The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer.code,Z.Trailing_comma_not_allowed.code,Z.Variable_declaration_list_cannot_be_empty.code,Z._0_and_1_operations_cannot_be_mixed_without_parentheses.code,Z._0_expected.code,Z._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2.code,Z._0_list_cannot_be_empty.code,Z._0_modifier_already_seen.code,Z._0_modifier_cannot_appear_on_a_constructor_declaration.code,Z._0_modifier_cannot_appear_on_a_module_or_namespace_element.code,Z._0_modifier_cannot_appear_on_a_parameter.code,Z._0_modifier_cannot_appear_on_class_elements_of_this_kind.code,Z._0_modifier_cannot_be_used_here.code,Z._0_modifier_must_precede_1_modifier.code,Z._0_declarations_can_only_be_declared_inside_a_block.code,Z._0_declarations_must_be_initialized.code,Z.extends_clause_already_seen.code,Z.let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations.code,Z.Class_constructor_may_not_be_a_generator.code,Z.Class_constructor_may_not_be_an_accessor.code,Z.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,Z.await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,Z.Private_field_0_must_be_declared_in_an_enclosing_class.code,Z.This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value.code]);function Z7i(n,c){return n?F3(n.getCompilerOptions(),c,A8e):!1}function L7i(n,c,u,d,I,h){return{rootNames:n,options:c,host:u,oldProgram:d,configFileParsingDiagnostics:I,typeScriptVersion:h}}function E_e(n,c,u,d,I){var h,b,R,N,V,P,M,te,re,ue,Ae,de,Be,Fe,Ne,Qe;let De=Ra(n)?L7i(n,c,u,d,I):n,{rootNames:lt,options:Le,configFileParsingDiagnostics:je,projectReferences:st,typeScriptVersion:nt}=De,{oldProgram:qe}=De;for(let rr of VRt)if(Qa(Le,rr.name)&&typeof Le[rr.name]=="string")throw new Error(`${rr.name} is a string value; tsconfig JSON must be parsed with parseJsonSourceFileConfigFileContent or getParsedCommandLineOfConfigFile before passing to createProgram`);let it=iu(()=>F_("ignoreDeprecations",Z.Invalid_value_for_ignoreDeprecations)),It,dt,wt,vt,Ye,ht,Et,Kt=new Map,Tt=ec(),Lt,kt,Zt,Dr={},jt={},mr,Pt,Vr,Yr,pr,zr,$n,bi,Pi,Ns,gi=typeof Le.maxNodeModuleJsDepth=="number"?Le.maxNodeModuleJsDepth:0,jn=0,xs=new Map,Ec=new Map;(h=Mi)==null||h.push(Mi.Phase.Program,"createProgram",{configFilePath:Le.configFilePath,rootDir:Le.rootDir},!0),rs("beforeProgram");let xi=De.host||Mxt(Le),rc=nGe(xi),Vl=Le.noLib,ul=iu(()=>xi.getDefaultLibFileName(Le)),Cc=xi.getDefaultLibLocation?xi.getDefaultLibLocation():aa(ul()),_s=hG(),Wu=[],ir=xi.getCurrentDirectory(),ni=I6(Le),gs=Mee(Le,ni),Hs=new Map,qa,nc,Nc,cg,Ku=xi.hasInvalidatedResolutions||TC;xi.resolveModuleNameLiterals?(cg=xi.resolveModuleNameLiterals.bind(xi),Nc=(b=xi.getModuleResolutionCache)==null?void 0:b.call(xi)):xi.resolveModuleNames?(cg=(rr,Tr,xn,ci,Wi,qs)=>xi.resolveModuleNames(rr.map(Uxt),Tr,qs?.map(Uxt),xn,ci,Wi).map(zi=>zi?zi.extension!==void 0?{resolvedModule:zi}:{resolvedModule:{...zi,extension:m6(zi.resolvedFileName)}}:JGr),Nc=(R=xi.getModuleResolutionCache)==null?void 0:R.call(xi)):(Nc=_te(ir,$o,Le),cg=(rr,Tr,xn,ci,Wi)=>y_e(rr,Tr,xn,ci,Wi,xi,Nc,k6e));let Bi;if(xi.resolveTypeReferenceDirectiveReferences)Bi=xi.resolveTypeReferenceDirectiveReferences.bind(xi);else if(xi.resolveTypeReferenceDirectives)Bi=(rr,Tr,xn,ci,Wi)=>xi.resolveTypeReferenceDirectives(rr.map(G6e),Tr,xn,ci,Wi?.impliedNodeFormat).map(qs=>({resolvedTypeReferenceDirective:qs}));else{let rr=vke(ir,$o,void 0,Nc?.getPackageJsonInfoCache(),Nc?.optionsToRedirectsKey);Bi=(Tr,xn,ci,Wi,qs)=>y_e(Tr,xn,ci,Wi,qs,xi,rr,qke)}let BA=xi.hasInvalidatedLibResolutions||TC,kr;if(xi.resolveLibrary)kr=xi.resolveLibrary.bind(xi);else{let rr=_te(ir,$o,Le,Nc?.getPackageJsonInfoCache());kr=(Tr,xn,ci)=>Ske(Tr,xn,ci,xi,rr)}let en=new Map,ct=new Map,rn=ec(),St=!1,br=new Map,Qt=new Map,_r=xi.useCaseSensitiveFileNames()?new Map:void 0,Pr,ti,cr,kn,Pn=!!((N=xi.useSourceOfProjectReferenceRedirect)!=null&&N.call(xi))&&!Le.disableSourceOfProjectReferenceRedirect,{onProgramCreateComplete:an,fileExists:Kr,directoryExists:wn}=V7i({compilerHost:xi,getSymlinkCache:pT,useSourceOfProjectReferenceRedirect:Pn,toPath:ri,getResolvedProjectReferences:Km,getSourceOfProjectReferenceRedirect:cD,forEachResolvedProjectReference:$C}),Pe=xi.readFile.bind(xi);(V=Mi)==null||V.push(Mi.Phase.Program,"shouldProgramCreateNewSourceFiles",{hasOldProgram:!!qe});let ar=Z7i(qe,Le);(P=Mi)==null||P.pop();let sn;if((M=Mi)==null||M.push(Mi.Phase.Program,"tryReuseStructureFromOldProgram",{}),sn=lg(),(te=Mi)==null||te.pop(),sn!==2){if(It=[],dt=[],st&&(Pr||(Pr=st.map(Ht)),lt.length&&Pr?.forEach((rr,Tr)=>{if(!rr)return;let xn=rr.commandLine.options.outFile;if(Pn){if(xn||R_(rr.commandLine.options)===0)for(let ci of rr.commandLine.fileNames)bm(ci,{kind:1,index:Tr})}else if(xn)bm(BG(xn,".d.ts"),{kind:2,index:Tr});else if(R_(rr.commandLine.options)===0){let ci=iu(()=>H6(rr.commandLine,!xi.useCaseSensitiveFileNames()));for(let Wi of rr.commandLine.fileNames)!kh(Wi)&&!gd(Wi,".json")&&bm(Ste(Wi,rr.commandLine,!xi.useCaseSensitiveFileNames(),ci),{kind:2,index:Tr})}})),(re=Mi)==null||re.push(Mi.Phase.Program,"processRootFiles",{count:lt.length}),X(lt,(rr,Tr)=>qC(rr,!1,!1,{kind:0,index:Tr})),(ue=Mi)==null||ue.pop(),Pt??(Pt=lt.length?Eke(Le,xi):v),Vr=hte(),Pt.length){(Ae=Mi)==null||Ae.push(Mi.Phase.Program,"processTypeReferences",{count:Pt.length});let rr=Le.configFilePath?aa(Le.configFilePath):ir,Tr=xo(rr,lue),xn=kd(Pt,Tr);for(let ci=0;ci{qC(Jn(Tr),!0,!1,{kind:6,index:xn})})}wt=Cl(It,ki).concat(dt),It=void 0,dt=void 0,Lt=void 0}if(qe&&xi.onReleaseOldSourceFile){let rr=qe.getSourceFiles();for(let Tr of rr){let xn=di(Tr.resolvedPath);(ar||!xn||xn.impliedNodeFormat!==Tr.impliedNodeFormat||Tr.resolvedPath===Tr.path&&xn.resolvedPath!==Tr.path)&&xi.onReleaseOldSourceFile(Tr,qe.getCompilerOptions(),!!di(Tr.path))}xi.getParsedCommandLine||qe.forEachResolvedProjectReference(Tr=>{ZN(Tr.sourceFile.path)||xi.onReleaseOldSourceFile(Tr.sourceFile,qe.getCompilerOptions(),!1)})}qe&&xi.onReleaseParsedCommandLine&&$ke(qe.getProjectReferences(),qe.getResolvedProjectReferences(),(rr,Tr,xn)=>{let ci=Tr?.commandLine.projectReferences[xn]||qe.getProjectReferences()[xn],Wi=Nte(ci);ti?.has(ri(Wi))||xi.onReleaseParsedCommandLine(Wi,rr,qe.getCompilerOptions())}),qe=void 0,pr=void 0,$n=void 0,Pi=void 0;let Me={getRootFileNames:()=>lt,getSourceFile:zA,getSourceFileByPath:di,getSourceFiles:()=>wt,getMissingFilePaths:()=>Qt,getModuleResolutionCache:()=>Nc,getFilesByNameMap:()=>br,getCompilerOptions:()=>Le,getSyntacticDiagnostics:J0,getOptionsDiagnostics:sf,getGlobalDiagnostics:Hb,getSemanticDiagnostics:U0,getCachedSemanticDiagnostics:Yb,getSuggestionDiagnostics:hc,getDeclarationDiagnostics:yt,getBindAndCheckDiagnostics:rf,getProgramDiagnostics:kI,getTypeChecker:s_,getClassifiableNames:JA,getCommonSourceDirectory:hu,emit:Jg,getCurrentDirectory:()=>ir,getNodeCount:()=>s_().getNodeCount(),getIdentifierCount:()=>s_().getIdentifierCount(),getSymbolCount:()=>s_().getSymbolCount(),getTypeCount:()=>s_().getTypeCount(),getInstantiationCount:()=>s_().getInstantiationCount(),getRelationCacheSizes:()=>s_().getRelationCacheSizes(),getFileProcessingDiagnostics:()=>mr,getAutomaticTypeDirectiveNames:()=>Pt,getAutomaticTypeDirectiveResolutions:()=>Vr,isSourceFileFromExternalLibrary:f0,isSourceFileDefaultLibrary:xI,getModeForUsageLocation:U2,getModeForResolutionAtIndex:PG,getSourceFileFromReference:vA,getLibFileFromReference:Nl,sourceFileToPackageName:ct,redirectTargetsMap:rn,usesUriStyleNodeCoreModules:St,resolvedModules:zr,resolvedTypeReferenceDirectiveNames:bi,resolvedLibReferences:Yr,getResolvedModule:Jt,getResolvedModuleFromModuleSpecifier:bt,getResolvedTypeReferenceDirective:Vt,getResolvedTypeReferenceDirectiveFromTypeReferenceDirective:dn,forEachResolvedModule:On,forEachResolvedTypeReferenceDirective:Mn,getCurrentPackagesMap:()=>Ns,typesPackageExists:Es,packageBundlesTypes:oo,isEmittedFile:Pv,getConfigFileParsingDiagnostics:GI,getProjectReferences:Df,getResolvedProjectReferences:Km,getProjectReferenceRedirect:H2,getResolvedProjectReferenceToRedirect:gb,getResolvedProjectReferenceByPath:ZN,forEachResolvedProjectReference:$C,isSourceOfProjectReferenceRedirect:Jb,getRedirectReferenceForResolutionFromSourceOfProject:Da,emitBuildInfo:Zc,fileExists:Kr,readFile:Pe,directoryExists:wn,getSymlinkCache:pT,realpath:(Ne=xi.realpath)==null?void 0:Ne.bind(xi),useCaseSensitiveFileNames:()=>xi.useCaseSensitiveFileNames(),getCanonicalFileName:$o,getFileIncludeReasons:()=>Tt,structureIsReused:sn,writeFile:zc};return an(),En(),rs("afterProgram"),vc("Program","beforeProgram","afterProgram"),(Qe=Mi)==null||Qe.pop(),Me;function ur(){return Wu&&(mr?.forEach(rr=>{switch(rr.kind){case 1:return _s.add(Eu(rr.file&&di(rr.file),rr.fileProcessingReason,rr.diagnostic,rr.args||v));case 0:return _s.add(Re(rr));case 2:return rr.diagnostics.forEach(Tr=>_s.add(Tr));default:w.assertNever(rr)}}),Wu.forEach(({file:rr,diagnostic:Tr,args:xn})=>_s.add(Eu(rr,void 0,Tr,xn))),Wu=void 0,kt=void 0,Zt=void 0),_s}function Re({reason:rr}){let{file:Tr,pos:xn,end:ci}=uue(Me,rr),Wi=Tr.libReferenceDirectives[rr.index],qs=UGr(Wi),zi=Qm(b_(qs,"lib."),".d.ts"),ho=Nd(zi,ake,Bl);return Im(Tr,w.checkDefined(xn),w.checkDefined(ci)-xn,ho?Z.Cannot_find_lib_definition_for_0_Did_you_mean_1:Z.Cannot_find_lib_definition_for_0,qs,ho)}function Jt(rr,Tr,xn){var ci;return(ci=zr?.get(rr.path))==null?void 0:ci.get(Tr,xn)}function bt(rr,Tr){return Tr??(Tr=ls(rr)),w.assertIsDefined(Tr,"`moduleSpecifier` must have a `SourceFile` ancestor. Use `program.getResolvedModule` instead to provide the containing file and resolution mode."),Jt(Tr,rr.text,U2(Tr,rr))}function Vt(rr,Tr,xn){var ci;return(ci=bi?.get(rr.path))==null?void 0:ci.get(Tr,xn)}function dn(rr,Tr){return Vt(Tr,rr.fileName,rr.resolutionMode||Tr.impliedNodeFormat)}function On(rr,Tr){Ii(zr,rr,Tr)}function Mn(rr,Tr){Ii(bi,rr,Tr)}function Ii(rr,Tr,xn){var ci;xn?(ci=rr?.get(xn.path))==null||ci.forEach((Wi,qs,zi)=>Tr(Wi,qs,zi,xn.path)):rr?.forEach((Wi,qs)=>Wi.forEach((zi,ho,Bc)=>Tr(zi,ho,Bc,qs)))}function ds(){return Ns||(Ns=new Map,On(({resolvedModule:rr})=>{rr?.packageId&&Ns.set(rr.packageId.name,rr.extension===".d.ts"||!!Ns.get(rr.packageId.name))}),Ns)}function Es(rr){return ds().has(Nke(rr))}function oo(rr){return!!ds().get(rr)}function Vi(rr){var Tr;(Tr=rr.resolutionDiagnostics)!=null&&Tr.length&&(mr??(mr=[])).push({kind:2,diagnostics:rr.resolutionDiagnostics})}function ko(rr,Tr,xn,ci){if(xi.resolveModuleNameLiterals||!xi.resolveModuleNames)return Vi(xn);if(!Nc||Jl(Tr))return;let Wi=Oc(rr.originalFileName,ir),qs=aa(Wi),zi=oa(rr),ho=Nc.getFromNonRelativeNameCache(Tr,ci,qs,zi);ho&&Vi(ho)}function Yc(rr,Tr,xn){var ci,Wi;if(!rr.length)return v;let qs=Oc(Tr.originalFileName,ir),zi=oa(Tr);(ci=Mi)==null||ci.push(Mi.Phase.Program,"resolveModuleNamesWorker",{containingFileName:qs}),rs("beforeResolveModule");let ho=cg(rr,qs,zi,Le,Tr,xn);return rs("afterResolveModule"),vc("ResolveModule","beforeResolveModule","afterResolveModule"),(Wi=Mi)==null||Wi.pop(),ho}function fl(rr,Tr,xn){var ci,Wi;if(!rr.length)return[];let qs=Xa(Tr)?void 0:Tr,zi=Xa(Tr)?Tr:Oc(Tr.originalFileName,ir),ho=qs&&oa(qs);(ci=Mi)==null||ci.push(Mi.Phase.Program,"resolveTypeReferenceDirectiveNamesWorker",{containingFileName:zi}),rs("beforeResolveTypeReference");let Bc=Bi(rr,zi,ho,Le,qs,xn);return rs("afterResolveTypeReference"),vc("ResolveTypeReference","beforeResolveTypeReference","afterResolveTypeReference"),(Wi=Mi)==null||Wi.pop(),Bc}function oa(rr){let Tr=gb(rr.originalFileName);if(Tr||!kh(rr.originalFileName))return Tr;let xn=Da(rr.path);if(xn)return xn;if(!xi.realpath||!Le.preserveSymlinks||!rr.originalFileName.includes(Qx))return;let ci=ri(xi.realpath(rr.originalFileName));return ci===rr.path?void 0:Da(ci)}function Da(rr){let Tr=cD(rr);if(Xa(Tr))return gb(Tr);if(Tr)return $C(xn=>{let ci=xn.commandLine.options.outFile;if(ci)return ri(ci)===rr?xn:void 0})}function ki(rr,Tr){return Xl(Gs(rr),Gs(Tr))}function Gs(rr){if(Bg(Cc,rr.fileName,!1)){let Tr=xA(rr.fileName);if(Tr==="lib.d.ts"||Tr==="lib.es6.d.ts")return 0;let xn=Qm(b_(Tr,"lib."),".d.ts"),ci=ake.indexOf(xn);if(ci!==-1)return ci+1}return ake.length+2}function ri(rr){return gA(rr,ir,$o)}function hu(){if(Ye===void 0){let rr=Gt(wt,Tr=>X3(Tr,Me));Ye=aue(Le,()=>tr(rr,Tr=>Tr.isDeclarationFile?void 0:Tr.fileName),ir,$o,Tr=>Ge(rr,Tr))}return Ye}function JA(){var rr;if(!Et){s_(),Et=new Set;for(let Tr of wt)(rr=Tr.classifiableNames)==null||rr.forEach(xn=>Et.add(xn))}return Et}function Qd(rr,Tr){if(sn===0&&!Tr.ambientModuleNames.length)return Yc(rr,Tr,void 0);let xn,ci,Wi,qs=JGr,zi=qe&&qe.getSourceFile(Tr.fileName);for(let ac=0;ac{let ci=(Tr?Tr.commandLine.projectReferences:st)[xn],Wi=Ht(ci);return rr?!Wi||Wi.sourceFile!==rr.sourceFile||!Cn(rr.commandLine.fileNames,Wi.commandLine.fileNames):Wi!==void 0},(rr,Tr)=>{let xn=Tr?ZN(Tr.sourceFile.path).commandLine.projectReferences:st;return!Cn(rr,xn,y8)})}function lg(){var rr;if(!qe)return 0;let Tr=qe.getCompilerOptions();if(wB(Tr,Le))return 0;let xn=qe.getRootFileNames();if(!Cn(xn,lt)||!Tl())return 0;st&&(Pr=st.map(Ht));let ci=[],Wi=[];if(sn=2,JC(qe.getMissingFilePaths(),Co=>xi.fileExists(Co)))return 0;let qs=qe.getSourceFiles(),zi;(Co=>{Co[Co.Exists=0]="Exists",Co[Co.Modified=1]="Modified"})(zi||(zi={}));let ho=new Map;for(let Co of qs){let ac=Xb(Co.fileName,Nc,xi,Le),Ps=xi.getSourceFileByPath?xi.getSourceFileByPath(Co.fileName,Co.resolvedPath,ac,void 0,ar):xi.getSourceFile(Co.fileName,ac,void 0,ar);if(!Ps)return 0;Ps.packageJsonLocations=(rr=ac.packageJsonLocations)!=null&&rr.length?ac.packageJsonLocations:void 0,Ps.packageJsonScope=ac.packageJsonScope,w.assert(!Ps.redirectInfo,"Host should not return a redirect source file from `getSourceFile`");let ru;if(Co.redirectInfo){if(Ps!==Co.redirectInfo.unredirected)return 0;ru=!1,Ps=Co}else if(qe.redirectTargetsMap.has(Co.path)){if(Ps!==Co)return 0;ru=!1}else ru=Ps!==Co;Ps.path=Co.path,Ps.originalFileName=Co.originalFileName,Ps.resolvedPath=Co.resolvedPath,Ps.fileName=Co.fileName;let Yg=qe.sourceFileToPackageName.get(Co.path);if(Yg!==void 0){let jm=ho.get(Yg),I0=ru?1:0;if(jm!==void 0&&I0===1||jm===1)return 0;ho.set(Yg,I0)}if(ru)Co.impliedNodeFormat!==Ps.impliedNodeFormat?sn=1:Cn(Co.libReferenceDirectives,Ps.libReferenceDirectives,Q2)?Co.hasNoDefaultLib!==Ps.hasNoDefaultLib?sn=1:Cn(Co.referencedFiles,Ps.referencedFiles,Q2)?(Bs(Ps),Cn(Co.imports,Ps.imports,qt)&&Cn(Co.moduleAugmentations,Ps.moduleAugmentations,qt)?(Co.flags&12582912)!==(Ps.flags&12582912)?sn=1:Cn(Co.typeReferenceDirectives,Ps.typeReferenceDirectives,Q2)||(sn=1):sn=1):sn=1:sn=1,Wi.push(Ps);else if(Ku(Co.path))sn=1,Wi.push(Ps);else for(let jm of Co.ambientModuleNames)Kt.set(jm,Co.fileName);ci.push(Ps)}if(sn!==2)return sn;for(let Co of Wi){let ac=jGr(Co),Ps=Qd(ac,Co);($n??($n=new Map)).set(Co.path,Ps),x$(ac,Ps,Ov=>qe.getResolvedModule(Co,Ov.text,U2(Co,Ov)),D$)&&(sn=1);let Yg=Co.typeReferenceDirectives,jm=kd(Yg,Co);(Pi??(Pi=new Map)).set(Co.path,jm),x$(Yg,jm,Ov=>qe.getResolvedTypeReferenceDirective(Co,G6e(Ov),__e(Ov,Co.impliedNodeFormat)),Yae)&&(sn=1)}if(sn!==2)return sn;if(N$(Tr,Le)||qe.resolvedLibReferences&&JC(qe.resolvedLibReferences,(Co,ac)=>cs(ac).actual!==Co.actual))return 1;if(xi.hasChangedAutomaticTypeDirectiveNames){if(xi.hasChangedAutomaticTypeDirectiveNames())return 1}else if(Pt=Eke(Le,xi),!Cn(qe.getAutomaticTypeDirectiveNames(),Pt))return 1;Qt=qe.getMissingFilePaths(),w.assert(ci.length===qe.getSourceFiles().length);for(let Co of ci)br.set(Co.path,Co);return qe.getFilesByNameMap().forEach((Co,ac)=>{if(!Co){br.set(ac,Co);return}if(Co.path===ac){qe.isSourceFileFromExternalLibrary(Co)&&Ec.set(Co.path,!0);return}br.set(ac,br.get(Co.path))}),wt=ci,Tt=qe.getFileIncludeReasons(),mr=qe.getFileProcessingDiagnostics(),Pt=qe.getAutomaticTypeDirectiveNames(),Vr=qe.getAutomaticTypeDirectiveResolutions(),ct=qe.sourceFileToPackageName,rn=qe.redirectTargetsMap,St=qe.usesUriStyleNodeCoreModules,zr=qe.resolvedModules,bi=qe.resolvedTypeReferenceDirectiveNames,Yr=qe.resolvedLibReferences,Ns=qe.getCurrentPackagesMap(),2}function mf(rr){return{getCanonicalFileName:$o,getCommonSourceDirectory:Me.getCommonSourceDirectory,getCompilerOptions:Me.getCompilerOptions,getCurrentDirectory:()=>ir,getSourceFile:Me.getSourceFile,getSourceFileByPath:Me.getSourceFileByPath,getSourceFiles:Me.getSourceFiles,isSourceFileFromExternalLibrary:f0,getResolvedProjectReferenceToRedirect:gb,getProjectReferenceRedirect:H2,isSourceOfProjectReferenceRedirect:Jb,getSymlinkCache:pT,writeFile:rr||zc,isEmitBlocked:hf,readFile:Tr=>xi.readFile(Tr),fileExists:Tr=>{let xn=ri(Tr);return di(xn)?!0:Qt.has(xn)?!1:xi.fileExists(Tr)},realpath:Hi(xi,xi.realpath),useCaseSensitiveFileNames:()=>xi.useCaseSensitiveFileNames(),getBuildInfo:()=>{var Tr;return(Tr=Me.getBuildInfo)==null?void 0:Tr.call(Me)},getSourceFileFromReference:(Tr,xn)=>Me.getSourceFileFromReference(Tr,xn),redirectTargetsMap:rn,getFileIncludeReasons:Me.getFileIncludeReasons,createHash:Hi(xi,xi.createHash),getModuleResolutionCache:()=>Me.getModuleResolutionCache(),trace:Hi(xi,xi.trace)}}function zc(rr,Tr,xn,ci,Wi,qs){xi.writeFile(rr,Tr,xn,ci,Wi,qs)}function Zc(rr){var Tr,xn;w.assert(!Le.outFile),(Tr=Mi)==null||Tr.push(Mi.Phase.Emit,"emitBuildInfo",{},!0),rs("beforeEmit");let ci=m6e(Fxt,mf(rr),void 0,Dxt,!1,!0);return rs("afterEmit"),vc("Emit","beforeEmit","afterEmit"),(xn=Mi)==null||xn.pop(),ci}function Km(){return Pr}function Df(){return st}function f0(rr){return!!Ec.get(rr.path)}function xI(rr){if(!rr.isDeclarationFile)return!1;if(rr.hasNoDefaultLib)return!0;if(!Le.noLib)return!1;let Tr=xi.useCaseSensitiveFileNames()?lm:sp;return Le.lib?lr(Le.lib,xn=>Tr(rr.fileName,Yr.get(xn).actual)):Tr(rr.fileName,ul())}function s_(){return ht||(ht=ZDt(Me))}function Jg(rr,Tr,xn,ci,Wi,qs){var zi,ho;(zi=Mi)==null||zi.push(Mi.Phase.Emit,"emit",{path:rr?.path},!0);let Bc=gr(()=>Yd(Me,rr,Tr,xn,ci,Wi,qs));return(ho=Mi)==null||ho.pop(),Bc}function hf(rr){return Hs.has(ri(rr))}function Yd(rr,Tr,xn,ci,Wi,qs,zi){if(!zi){let ac=P6e(rr,Tr,xn,ci);if(ac)return ac}let ho=s_(),Bc=ho.getEmitResolver(Le.outFile?void 0:Tr,ci,C6e(Wi,zi));rs("beforeEmit");let Co=ho.runWithCancellationToken(ci,()=>m6e(Bc,mf(xn),Tr,xxt(Le,qs,Wi),Wi,!1,zi));return rs("afterEmit"),vc("Emit","beforeEmit","afterEmit"),Co}function zA(rr){return di(ri(rr))}function di(rr){return br.get(rr)||void 0}function lI(rr,Tr,xn){return nA(rr?Tr(rr,xn):Fr(Me.getSourceFiles(),ci=>(xn&&xn.throwIfCancellationRequested(),Tr(ci,xn))))}function J0(rr,Tr){return lI(rr,tt,Tr)}function U0(rr,Tr){return lI(rr,mn,Tr)}function Yb(rr){var Tr;return rr?(Tr=Dr.perFile)==null?void 0:Tr.get(rr.path):Dr.allDiagnostics}function rf(rr,Tr){return Ri(rr,Tr)}function kI(rr){var Tr;if(jQ(rr,Le,Me))return v;let xn=ur().getDiagnostics(rr.fileName);return(Tr=rr.commentDirectives)!=null&&Tr.length?Jo(rr,rr.commentDirectives,xn).diagnostics:xn}function yt(rr,Tr){let xn=Me.getCompilerOptions();return!rr||xn.outFile?nf(rr,Tr):lI(rr,Gm,Tr)}function tt(rr){return n0(rr)?(rr.additionalSyntacticDiagnostics||(rr.additionalSyntacticDiagnostics=Wg(rr)),vi(rr.additionalSyntacticDiagnostics,rr.parseDiagnostics)):rr.parseDiagnostics}function gr(rr){try{return rr()}catch(Tr){throw Tr instanceof os&&(ht=void 0),Tr}}function mn(rr,Tr){return vi(rGe(Ri(rr,Tr),Le),kI(rr))}function Ri(rr,Tr){return Xf(rr,Tr,Dr,Xo)}function Xo(rr,Tr){return gr(()=>{if(jQ(rr,Le,Me))return v;let xn=s_();w.assert(!!rr.bindDiagnostics);let Wi=(rr.scriptKind===1||rr.scriptKind===2)&&h6(rr,Le),qs=bQ(rr,Le.checkJs),zi=rr.bindDiagnostics,ho=xn.getDiagnostics(rr,Tr);return qs&&(zi=Gt(zi,Bc=>V6e.has(Bc.code)),ho=Gt(ho,Bc=>V6e.has(Bc.code))),fi(rr,!qs,zi,ho,Wi?rr.jsDocDiagnostics:void 0)})}function fi(rr,Tr,...xn){var ci;let Wi=or(xn);if(!Tr||!((ci=rr.commentDirectives)!=null&&ci.length))return Wi;let{diagnostics:qs,directives:zi}=Jo(rr,rr.commentDirectives,Wi);for(let ho of zi.getUnusedExpectations())qs.push(ze(rr,ho.range,Z.Unused_ts_expect_error_directive));return qs}function Jo(rr,Tr,xn){let ci=Jae(rr,Tr);return{diagnostics:xn.filter(qs=>ic(qs,ci)===-1),directives:ci}}function hc(rr,Tr){return gr(()=>s_().getSuggestionDiagnostics(rr,Tr))}function ic(rr,Tr){let{file:xn,start:ci}=rr;if(!xn)return-1;let Wi=Rc(xn),qs=Mp(Wi,ci).line-1;for(;qs>=0;){if(Tr.markUsed(qs))return qs;let zi=xn.text.slice(Wi[qs],Wi[qs+1]).trim();if(zi!==""&&!/^(\s*)\/\/(.*)$/.test(zi))return-1;qs--}return-1}function Wg(rr){return gr(()=>{let Tr=[];return xn(rr,rr),Z6(rr,xn,ci),Tr;function xn(ho,Bc){switch(Bc.kind){case 169:case 172:case 174:if(Bc.questionToken===ho)return Tr.push(zi(ho,Z.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(Bc.type===ho)return Tr.push(zi(ho,Z.Type_annotations_can_only_be_used_in_TypeScript_files)),"skip"}switch(ho.kind){case 273:if(ho.isTypeOnly)return Tr.push(zi(Bc,Z._0_declarations_can_only_be_used_in_TypeScript_files,"import type")),"skip";break;case 278:if(ho.isTypeOnly)return Tr.push(zi(ho,Z._0_declarations_can_only_be_used_in_TypeScript_files,"export type")),"skip";break;case 276:case 281:if(ho.isTypeOnly)return Tr.push(zi(ho,Z._0_declarations_can_only_be_used_in_TypeScript_files,_y(ho)?"import...type":"export...type")),"skip";break;case 271:return Tr.push(zi(ho,Z.import_can_only_be_used_in_TypeScript_files)),"skip";case 277:if(ho.isExportEquals)return Tr.push(zi(ho,Z.export_can_only_be_used_in_TypeScript_files)),"skip";break;case 298:if(ho.token===119)return Tr.push(zi(ho,Z.implements_clauses_can_only_be_used_in_TypeScript_files)),"skip";break;case 264:let ac=vr(120);return w.assertIsDefined(ac),Tr.push(zi(ho,Z._0_declarations_can_only_be_used_in_TypeScript_files,ac)),"skip";case 267:let Ps=ho.flags&32?vr(145):vr(144);return w.assertIsDefined(Ps),Tr.push(zi(ho,Z._0_declarations_can_only_be_used_in_TypeScript_files,Ps)),"skip";case 265:return Tr.push(zi(ho,Z.Type_aliases_can_only_be_used_in_TypeScript_files)),"skip";case 176:case 174:case 262:return ho.body?void 0:(Tr.push(zi(ho,Z.Signature_declarations_can_only_be_used_in_TypeScript_files)),"skip");case 266:let ru=w.checkDefined(vr(94));return Tr.push(zi(ho,Z._0_declarations_can_only_be_used_in_TypeScript_files,ru)),"skip";case 235:return Tr.push(zi(ho,Z.Non_null_assertions_can_only_be_used_in_TypeScript_files)),"skip";case 234:return Tr.push(zi(ho.type,Z.Type_assertion_expressions_can_only_be_used_in_TypeScript_files)),"skip";case 238:return Tr.push(zi(ho.type,Z.Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files)),"skip";case 216:w.fail()}}function ci(ho,Bc){if($Ke(Bc)){let Co=be(Bc.modifiers,GC);Co&&Tr.push(zi(Co,Z.Decorators_are_not_valid_here))}else if(pY(Bc)&&Bc.modifiers){let Co=ke(Bc.modifiers,GC);if(Co>=0){if(Jc(Bc)&&!Le.experimentalDecorators)Tr.push(zi(Bc.modifiers[Co],Z.Decorators_are_not_valid_here));else if(bc(Bc)){let ac=ke(Bc.modifiers,Fx);if(ac>=0){let Ps=ke(Bc.modifiers,ate);if(Co>ac&&Ps>=0&&Co=0&&Co=0&&Tr.push(eg(zi(Bc.modifiers[ru],Z.Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export),zi(Bc.modifiers[Co],Z.Decorator_used_before_export_here)))}}}}}switch(Bc.kind){case 263:case 231:case 174:case 176:case 177:case 178:case 218:case 262:case 219:if(ho===Bc.typeParameters)return Tr.push(qs(ho,Z.Type_parameter_declarations_can_only_be_used_in_TypeScript_files)),"skip";case 243:if(ho===Bc.modifiers)return Wi(Bc.modifiers,Bc.kind===243),"skip";break;case 172:if(ho===Bc.modifiers){for(let Co of ho)gg(Co)&&Co.kind!==126&&Co.kind!==129&&Tr.push(zi(Co,Z.The_0_modifier_can_only_be_used_in_TypeScript_files,vr(Co.kind)));return"skip"}break;case 169:if(ho===Bc.modifiers&&lr(ho,gg))return Tr.push(qs(ho,Z.Parameter_modifiers_can_only_be_used_in_TypeScript_files)),"skip";break;case 213:case 214:case 233:case 285:case 286:case 215:if(ho===Bc.typeArguments)return Tr.push(qs(ho,Z.Type_arguments_can_only_be_used_in_TypeScript_files)),"skip";break}}function Wi(ho,Bc){for(let Co of ho)switch(Co.kind){case 87:if(Bc)continue;case 125:case 123:case 124:case 148:case 138:case 128:case 164:case 103:case 147:Tr.push(zi(Co,Z.The_0_modifier_can_only_be_used_in_TypeScript_files,vr(Co.kind)));break;case 126:case 95:case 90:case 129:}}function qs(ho,Bc,...Co){let ac=ho.pos;return Im(rr,ac,ho.end-ac,Bc,...Co)}function zi(ho,Bc,...Co){return Lb(rr,ho,Bc,...Co)}})}function nf(rr,Tr){return Xf(rr,Tr,jt,zC)}function zC(rr,Tr){return gr(()=>{let xn=s_().getEmitResolver(rr,Tr);return Nxt(mf(oc),xn,rr)||v})}function Xf(rr,Tr,xn,ci){var Wi;let qs=rr?(Wi=xn.perFile)==null?void 0:Wi.get(rr.path):xn.allDiagnostics;if(qs)return qs;let zi=ci(rr,Tr);return rr?(xn.perFile||(xn.perFile=new Map)).set(rr.path,zi):xn.allDiagnostics=zi,zi}function Gm(rr,Tr){return rr.isDeclarationFile?[]:nf(rr,Tr)}function sf(){return nA(vi(ur().getGlobalDiagnostics(),Fm()))}function Fm(){if(!Le.configFile)return v;let rr=ur().getDiagnostics(Le.configFile.fileName);return $C(Tr=>{rr=vi(rr,ur().getDiagnostics(Tr.sourceFile.fileName))}),rr}function Hb(){return lt.length?nA(s_().getGlobalDiagnostics().slice()):v}function GI(){return je||v}function qC(rr,Tr,xn,ci){XI(Mc(rr),Tr,xn,void 0,ci)}function Q2(rr,Tr){return rr.fileName===Tr.fileName}function qt(rr,Tr){return rr.kind===80?Tr.kind===80&&rr.escapedText===Tr.escapedText:Tr.kind===11&&rr.text===Tr.text}function Fn(rr,Tr){let xn=_e.createStringLiteral(rr),ci=_e.createImportDeclaration(void 0,void 0,xn);return eY(ci,2),kA(xn,ci),kA(ci,Tr),xn.flags&=-17,ci.flags&=-17,xn}function Bs(rr){if(rr.imports)return;let Tr=n0(rr),xn=mm(rr),ci,Wi,qs;if(Tr||!rr.isDeclarationFile&&(ZE(Le)||mm(rr))){Le.importHelpers&&(ci=[Fn(vx,rr)]);let Co=ele($ce(Le,rr),Le);Co&&(ci||(ci=[])).push(Fn(Co,rr))}for(let Co of rr.statements)zi(Co,!1);(rr.flags&4194304||Tr)&&ho(rr),rr.imports=ci||v,rr.moduleAugmentations=Wi||v,rr.ambientModuleNames=qs||v;return;function zi(Co,ac){if(W3(Co)){let Ps=DQ(Co);Ps&&bu(Ps)&&Ps.text&&(!ac||!Jl(Ps.text))&&(_N(Co,!1),ci=Hr(ci,Ps),!St&&jn===0&&!rr.isDeclarationFile&&(St=uc(Ps.text,"node:")))}else if(CC(Co)&&Yf(Co)&&(ac||ba(Co,128)||rr.isDeclarationFile)){Co.name.parent=Co;let Ps=T2(Co.name);if(xn||ac&&!Jl(Ps))(Wi||(Wi=[])).push(Co.name);else if(!ac){rr.isDeclarationFile&&(qs||(qs=[])).push(Ps);let ru=Co.body;if(ru)for(let Yg of ru.statements)zi(Yg,!0)}}}function ho(Co){let ac=/import|require/g;for(;ac.exec(Co.text)!==null;){let Ps=Bc(Co,ac.lastIndex);if(Tr&&Q0(Ps,!0))_N(Ps,!1),ci=Hr(ci,Ps.arguments[0]);else if(pC(Ps)&&Ps.arguments.length>=1&&XA(Ps.arguments[0]))_N(Ps,!1),ci=Hr(ci,Ps.arguments[0]);else if(r_(Ps))_N(Ps,!1),ci=Hr(ci,Ps.argument.literal);else if(Tr&&RN(Ps)){let ru=DQ(Ps);ru&&bu(ru)&&ru.text&&(_N(Ps,!1),ci=Hr(ci,ru))}}}function Bc(Co,ac){let Ps=Co,ru=Yg=>{if(Yg.pos<=ac&&(acgd(Wi,zi))){xn&&(mN(Wi)?xn(Z.File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option,rr):xn(Z.File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1,rr,"'"+or(ni).join("', '")+"'"));return}let qs=Tr(rr);if(xn)if(qs)gP(ci)&&Wi===xi.getCanonicalFileName(di(ci.file).fileName)&&xn(Z.A_file_cannot_have_a_reference_to_itself);else{let zi=H2(rr);zi?xn(Z.Output_file_0_has_not_been_built_from_source_file_1,zi,rr):xn(Z.File_0_not_found,rr)}return qs}else{let Wi=Le.allowNonTsExtensions&&Tr(rr);if(Wi)return Wi;if(xn&&Le.allowNonTsExtensions){xn(Z.File_0_not_found,rr);return}let qs=X(ni[0],zi=>Tr(rr+zi));return xn&&!qs&&xn(Z.Could_not_resolve_the_path_0_with_the_extensions_Colon_1,rr,"'"+or(ni).join("', '")+"'"),qs}}function XI(rr,Tr,xn,ci,Wi){PA(rr,qs=>hC(qs,Tr,xn,Wi,ci),(qs,...zi)=>od(void 0,Wi,qs,zi),Wi)}function bm(rr,Tr){return XI(rr,!1,!1,void 0,Tr)}function rp(rr,Tr,xn){!gP(xn)&&lr(Tt.get(Tr.path),gP)?od(Tr,xn,Z.Already_included_file_name_0_differs_from_file_name_1_only_in_casing,[Tr.fileName,rr]):od(Tr,xn,Z.File_name_0_differs_from_already_included_file_name_1_only_in_casing,[rr,Tr.fileName])}function Hd(rr,Tr,xn,ci,Wi,qs,zi){var ho;let Bc=sP.createRedirectedSourceFile({redirectTarget:rr,unredirected:Tr});return Bc.fileName=xn,Bc.path=ci,Bc.resolvedPath=Wi,Bc.originalFileName=qs,Bc.packageJsonLocations=(ho=zi.packageJsonLocations)!=null&&ho.length?zi.packageJsonLocations:void 0,Bc.packageJsonScope=zi.packageJsonScope,Ec.set(ci,jn>0),Bc}function hC(rr,Tr,xn,ci,Wi){var qs,zi;(qs=Mi)==null||qs.push(Mi.Phase.Program,"findSourceFile",{fileName:rr,isDefaultLib:Tr||void 0,fileIncludeKind:wo[ci.kind]});let ho=dT(rr,Tr,xn,ci,Wi);return(zi=Mi)==null||zi.pop(),ho}function Xb(rr,Tr,xn,ci){let Wi=tGe(Oc(rr,ir),Tr?.getPackageJsonInfoCache(),xn,ci),qs=iA(ci),zi=A6(ci);return typeof Wi=="object"?{...Wi,languageVersion:qs,setExternalModuleIndicator:zi,jsDocParsingMode:xn.jsDocParsingMode}:{languageVersion:qs,impliedNodeFormat:Wi,setExternalModuleIndicator:zi,jsDocParsingMode:xn.jsDocParsingMode}}function dT(rr,Tr,xn,ci,Wi){var qs;let zi=ri(rr);if(Pn){let Ps=cD(zi);if(!Ps&&xi.realpath&&Le.preserveSymlinks&&kh(rr)&&rr.includes(Qx)){let ru=ri(xi.realpath(rr));ru!==zi&&(Ps=cD(ru))}if(Ps){let ru=Xa(Ps)?hC(Ps,Tr,xn,ci,Wi):void 0;return ru&&ub(ru,zi,rr,void 0),ru}}let ho=rr;if(br.has(zi)){let Ps=br.get(zi),ru=Y2(Ps||void 0,ci,!0);if(Ps&&ru&&Le.forceConsistentCasingInFileNames!==!1){let Yg=Ps.fileName;ri(Yg)!==ri(rr)&&(rr=H2(rr)||rr);let I0=SS(Yg,ir),Ov=SS(rr,ir);I0!==Ov&&rp(rr,Ps,ci)}return Ps&&Ec.get(Ps.path)&&jn===0?(Ec.set(Ps.path,!1),Le.noResolve||(X2(Ps,Tr),rt(Ps)),Le.noLib||Ls(Ps),xs.set(Ps.path,!1),Ua(Ps)):Ps&&xs.get(Ps.path)&&jnod(void 0,ci,Z.Cannot_read_file_0_Colon_1,[rr,Ps]),ar);if(Wi){let Ps=YR(Wi),ru=en.get(Ps);if(ru){let Yg=Hd(ru,ac,rr,zi,ri(rr),ho,Co);return rn.add(ru.path,rr),ub(Yg,zi,rr,Bc),Y2(Yg,ci,!1),ct.set(zi,yQ(Wi)),dt.push(Yg),Yg}else ac&&(en.set(Ps,ac),ct.set(zi,yQ(Wi)))}if(ub(ac,zi,rr,Bc),ac){if(Ec.set(zi,jn>0),ac.fileName=rr,ac.path=zi,ac.resolvedPath=ri(rr),ac.originalFileName=ho,ac.packageJsonLocations=(qs=Co.packageJsonLocations)!=null&&qs.length?Co.packageJsonLocations:void 0,ac.packageJsonScope=Co.packageJsonScope,Y2(ac,ci,!1),xi.useCaseSensitiveFileNames()){let Ps=lf(zi),ru=_r.get(Ps);ru?rp(rr,ru,ci):_r.set(Ps,ac)}Vl=Vl||ac.hasNoDefaultLib&&!xn,Le.noResolve||(X2(ac,Tr),rt(ac)),Le.noLib||Ls(ac),Ua(ac),Tr?It.push(ac):dt.push(ac),(Lt??(Lt=new Set)).add(ac.path)}return ac}function Y2(rr,Tr,xn){return rr&&(!xn||!gP(Tr)||!Lt?.has(Tr.file))?(Tt.add(rr.path,Tr),!0):!1}function ub(rr,Tr,xn,ci){ci?(LB(xn,ci,rr),LB(xn,Tr,rr||!1)):LB(xn,Tr,rr)}function LB(rr,Tr,xn){br.set(Tr,xn),xn!==void 0?Qt.delete(Tr):Qt.set(Tr,rr)}function H2(rr){let Tr=oD(rr);return Tr&&aD(Tr,rr)}function oD(rr){if(!(!Pr||!Pr.length||kh(rr)||gd(rr,".json")))return gb(rr)}function aD(rr,Tr){let xn=rr.commandLine.options.outFile;return xn?BG(xn,".d.ts"):Ste(Tr,rr.commandLine,!xi.useCaseSensitiveFileNames())}function gb(rr){cr===void 0&&(cr=new Map,$C(xn=>{ri(Le.configFilePath)!==xn.sourceFile.path&&xn.commandLine.fileNames.forEach(ci=>cr.set(ri(ci),xn.sourceFile.path))}));let Tr=cr.get(ri(rr));return Tr&&ZN(Tr)}function $C(rr){return F6e(Pr,rr)}function cD(rr){if(kh(rr))return kn===void 0&&(kn=new Map,$C(Tr=>{let xn=Tr.commandLine.options.outFile;if(xn){let ci=BG(xn,".d.ts");kn.set(ri(ci),!0)}else{let ci=iu(()=>H6(Tr.commandLine,!xi.useCaseSensitiveFileNames()));X(Tr.commandLine.fileNames,Wi=>{if(!kh(Wi)&&!gd(Wi,".json")){let qs=Ste(Wi,Tr.commandLine,!xi.useCaseSensitiveFileNames(),ci);kn.set(ri(qs),Wi)}})}})),kn.get(rr)}function Jb(rr){return Pn&&!!gb(rr)}function ZN(rr){if(ti)return ti.get(rr)||void 0}function X2(rr,Tr){X(rr.referencedFiles,(xn,ci)=>{XI(B6e(xn.fileName,rr.fileName),Tr,!1,void 0,{kind:4,file:rr.path,index:ci})})}function rt(rr){let Tr=rr.typeReferenceDirectives;if(!Tr.length)return;let xn=Pi?.get(rr.path)||kd(Tr,rr),ci=hte();(bi??(bi=new Map)).set(rr.path,ci);for(let Wi=0;Wi{let ci=KGr(Tr);ci?qC(Jn(ci),!0,!0,{kind:7,file:rr.path,index:xn}):(mr||(mr=[])).push({kind:0,reason:{kind:7,file:rr.path,index:xn}})})}function $o(rr){return xi.getCanonicalFileName(rr)}function Ua(rr){var Tr;if(Bs(rr),rr.imports.length||rr.moduleAugmentations.length){let xn=jGr(rr),ci=$n?.get(rr.path)||Qd(xn,rr);w.assert(ci.length===xn.length);let Wi=((Tr=oa(rr))==null?void 0:Tr.commandLine.options)||Le,qs=hte();(zr??(zr=new Map)).set(rr.path,qs);for(let zi=0;zigi,I0=Yg&&!O6e(Wi,ho,rr)&&!Wi.noResolve&&zimm(zi)&&!zi.isDeclarationFile);if(Le.isolatedModules||Le.verbatimModuleSyntax)Le.module===0&&Tr<2&&Le.isolatedModules&&np(Z.Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher,"isolatedModules","target"),Le.preserveConstEnums===!1&&np(Z.Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled,Le.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules","preserveConstEnums");else if(xn&&Tr<2&&Le.module===0){let zi=Qi(xn,typeof xn.externalModuleIndicator=="boolean"?xn:xn.externalModuleIndicator);_s.add(Im(xn,zi.start,zi.length,Z.Cannot_use_imports_exports_or_module_augmentations_when_module_is_none))}if(rr&&!Le.emitDeclarationOnly){if(Le.module&&!(Le.module===2||Le.module===4))np(Z.Only_amd_and_system_modules_are_supported_alongside_0,"outFile","module");else if(Le.module===void 0&&xn){let zi=Qi(xn,typeof xn.externalModuleIndicator=="boolean"?xn:xn.externalModuleIndicator);_s.add(Im(xn,zi.start,zi.length,Z.Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system,"outFile"))}}if(lV(Le)&&(s0(Le)===1?np(Z.Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic,"resolveJsonModule"):jce(Le)||np(Z.Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd,"resolveJsonModule","module")),Le.outDir||Le.rootDir||Le.sourceRoot||Le.mapRoot||LE(Le)&&Le.declarationDir){let zi=hu();Le.outDir&&zi===""&&wt.some(ho=>e_(ho.fileName)>1)&&np(Z.Cannot_find_the_common_subdirectory_path_for_the_input_files,"outDir")}Le.checkJs&&!bG(Le)&&np(Z.Option_0_cannot_be_specified_without_specifying_option_1,"checkJs","allowJs"),Le.emitDeclarationOnly&&(LE(Le)||np(Z.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"emitDeclarationOnly","declaration","composite"),Le.noEmit&&np(Z.Option_0_cannot_be_specified_with_option_1,"emitDeclarationOnly","noEmit")),Le.noCheck&&Le.noEmit&&np(Z.Option_0_cannot_be_specified_with_option_1,"noCheck","noEmit"),Le.emitDecoratorMetadata&&!Le.experimentalDecorators&&np(Z.Option_0_cannot_be_specified_without_specifying_option_1,"emitDecoratorMetadata","experimentalDecorators"),Le.jsxFactory?(Le.reactNamespace&&np(Z.Option_0_cannot_be_specified_with_option_1,"reactNamespace","jsxFactory"),(Le.jsx===4||Le.jsx===5)&&np(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxFactory",jhe.get(""+Le.jsx)),V6(Le.jsxFactory,Tr)||F_("jsxFactory",Z.Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name,Le.jsxFactory)):Le.reactNamespace&&!Ke(Le.reactNamespace,Tr)&&F_("reactNamespace",Z.Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier,Le.reactNamespace),Le.jsxFragmentFactory&&(Le.jsxFactory||np(Z.Option_0_cannot_be_specified_without_specifying_option_1,"jsxFragmentFactory","jsxFactory"),(Le.jsx===4||Le.jsx===5)&&np(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxFragmentFactory",jhe.get(""+Le.jsx)),V6(Le.jsxFragmentFactory,Tr)||F_("jsxFragmentFactory",Z.Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name,Le.jsxFragmentFactory)),Le.reactNamespace&&(Le.jsx===4||Le.jsx===5)&&np(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"reactNamespace",jhe.get(""+Le.jsx)),Le.jsxImportSource&&Le.jsx===2&&np(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxImportSource",jhe.get(""+Le.jsx));let ci=R_(Le);Le.verbatimModuleSyntax&&(ci===2||ci===3||ci===4)&&np(Z.Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System,"verbatimModuleSyntax"),Le.allowImportingTsExtensions&&!(Le.noEmit||Le.emitDeclarationOnly)&&F_("allowImportingTsExtensions",Z.Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set);let Wi=s0(Le);if(Le.resolvePackageJsonExports&&!UQ(Wi)&&np(Z.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"resolvePackageJsonExports"),Le.resolvePackageJsonImports&&!UQ(Wi)&&np(Z.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"resolvePackageJsonImports"),Le.customConditions&&!UQ(Wi)&&np(Z.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"customConditions"),Wi===100&&!Kce(ci)&&ci!==200&&F_("moduleResolution",Z.Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later,"bundler"),zh[ci]&&100<=ci&&ci<=199&&!(3<=Wi&&Wi<=99)){let zi=zh[ci];F_("moduleResolution",Z.Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1,zi,zi)}else if(Rb[Wi]&&3<=Wi&&Wi<=99&&!(100<=ci&&ci<=199)){let zi=Rb[Wi];F_("module",Z.Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1,zi,zi)}if(!Le.noEmit&&!Le.suppressOutputPathCheck){let zi=mf(),ho=new Set;d6e(zi,Bc=>{Le.emitDeclarationOnly||qs(Bc.jsFilePath,ho),qs(Bc.declarationFilePath,ho)})}function qs(zi,ho){if(zi){let Bc=ri(zi);if(br.has(Bc)){let ac;Le.configFilePath||(ac=su(void 0,Z.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)),ac=su(ac,Z.Cannot_write_file_0_because_it_would_overwrite_input_file,zi),kV(zi,Hce(ac))}let Co=xi.useCaseSensitiveFileNames()?Bc:lf(Bc);ho.has(Co)?kV(zi,ff(Z.Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files,zi)):ho.add(Co)}}}function Rs(){let rr=Le.ignoreDeprecations;if(rr){if(rr==="5.0")return new Dn(rr);it()}return Dn.zero}function _c(rr,Tr,xn,ci,Wi){let qs=new Dn(rr),zi=new Dn(xn),ho=new Dn(nt||m),Bc=Rs(),Co=zi.compareTo(ho)!==1,ac=!Co&&Bc.compareTo(qs)===-1;(Co||ac)&&Wi((Ps,ru,Yg)=>{Co?ru===void 0?ci(Ps,ru,Yg,Z.Option_0_has_been_removed_Please_remove_it_from_your_configuration,Ps):ci(Ps,ru,Yg,Z.Option_0_1_has_been_removed_Please_remove_it_from_your_configuration,Ps,ru):ru===void 0?ci(Ps,ru,Yg,Z.Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprecations_Colon_2_to_silence_this_error,Ps,Tr,rr):ci(Ps,ru,Yg,Z.Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDeprecations_Colon_3_to_silence_this_error,Ps,ru,Tr,rr)})}function Iu(){function rr(Tr,xn,ci,Wi,...qs){if(ci){let zi=su(void 0,Z.Use_0_instead,ci),ho=su(zi,Wi,...qs);nw(!xn,Tr,void 0,ho)}else nw(!xn,Tr,void 0,Wi,...qs)}_c("5.0","5.5","6.0",rr,Tr=>{Le.target===0&&Tr("target","ES3"),Le.noImplicitUseStrict&&Tr("noImplicitUseStrict"),Le.keyofStringsOnly&&Tr("keyofStringsOnly"),Le.suppressExcessPropertyErrors&&Tr("suppressExcessPropertyErrors"),Le.suppressImplicitAnyIndexErrors&&Tr("suppressImplicitAnyIndexErrors"),Le.noStrictGenericChecks&&Tr("noStrictGenericChecks"),Le.charset&&Tr("charset"),Le.out&&Tr("out",void 0,"outFile"),Le.importsNotUsedAsValues&&Tr("importsNotUsedAsValues",void 0,"verbatimModuleSyntax"),Le.preserveValueImports&&Tr("preserveValueImports",void 0,"verbatimModuleSyntax")})}function Wl(rr,Tr,xn){function ci(Wi,qs,zi,ho,...Bc){K0(Tr,xn,ho,...Bc)}_c("5.0","5.5","6.0",ci,Wi=>{rr.prepend&&Wi("prepend")})}function Eu(rr,Tr,xn,ci){let Wi,qs=rr&&Tt.get(rr.path),zi,ho,Bc=gP(Tr)?Tr:void 0,Co,ac,Ps=rr&&kt?.get(rr.path),ru;Ps?(Ps.fileIncludeReasonDetails?(Wi=new Set(qs),qs?.forEach(Ov)):qs?.forEach(I0),ac=Ps.redirectInfo):(qs?.forEach(I0),ac=rr&&r7e(rr)),Tr&&I0(Tr);let Yg=Wi?.size!==qs?.length;Bc&&Wi?.size===1&&(Wi=void 0),Wi&&Ps&&(Ps.details&&!Yg?ru=su(Ps.details,xn,...ci||v):Ps.fileIncludeReasonDetails&&(Yg?XZ()?zi=Hr(Ps.fileIncludeReasonDetails.next.slice(0,qs.length),zi[0]):zi=[...Ps.fileIncludeReasonDetails.next,zi[0]]:XZ()?zi=Ps.fileIncludeReasonDetails.next.slice(0,qs.length):Co=Ps.fileIncludeReasonDetails)),ru||(Co||(Co=Wi&&su(zi,Z.The_file_is_in_the_program_because_Colon)),ru=su(ac?Co?[Co,...ac]:ac:Co,xn,...ci||v)),rr&&(Ps?(!Ps.fileIncludeReasonDetails||!Yg&&Co)&&(Ps.fileIncludeReasonDetails=Co):(kt??(kt=new Map)).set(rr.path,Ps={fileIncludeReasonDetails:Co,redirectInfo:ac}),!Ps.details&&!Yg&&(Ps.details=ru.next));let jm=Bc&&uue(Me,Bc);return jm&&Tte(jm)?R8(jm.file,jm.pos,jm.end-jm.pos,ru,ho):Hce(ru,ho);function I0(Mv){Wi?.has(Mv)||((Wi??(Wi=new Set)).add(Mv),(zi??(zi=[])).push(s7e(Me,Mv)),Ov(Mv))}function Ov(Mv){!Bc&&gP(Mv)?Bc=Mv:Bc!==Mv&&(ho=Hr(ho,uI(Mv)))}function XZ(){var Mv;return((Mv=Ps.fileIncludeReasonDetails.next)==null?void 0:Mv.length)!==qs?.length}}function od(rr,Tr,xn,ci){(mr||(mr=[])).push({kind:1,file:rr&&rr.path,fileProcessingReason:Tr,diagnostic:xn,args:ci})}function sA(rr,Tr,xn){Wu.push({file:rr,diagnostic:Tr,args:xn})}function uI(rr){let Tr=Zt?.get(rr);return Tr===void 0&&(Zt??(Zt=new Map)).set(rr,Tr=VB(rr)??!1),Tr||void 0}function VB(rr){if(gP(rr)){let ci=uue(Me,rr),Wi;switch(rr.kind){case 3:Wi=Z.File_is_included_via_import_here;break;case 4:Wi=Z.File_is_included_via_reference_here;break;case 5:Wi=Z.File_is_included_via_type_library_reference_here;break;case 7:Wi=Z.File_is_included_via_library_reference_here;break;default:w.assertNever(rr)}return Tte(ci)?Im(ci.file,ci.pos,ci.end-ci.pos,Wi):void 0}if(!Le.configFile)return;let Tr,xn;switch(rr.kind){case 0:if(!Le.configFile.configFileSpecs)return;let ci=Oc(lt[rr.index],ir),Wi=n7e(Me,ci);if(Wi){Tr=ice(Le.configFile,"files",Wi),xn=Z.File_is_matched_by_files_list_specified_here;break}let qs=i7e(Me,ci);if(!qs||!Xa(qs))return;Tr=ice(Le.configFile,"include",qs),xn=Z.File_is_matched_by_include_pattern_specified_here;break;case 1:case 2:let zi=w.checkDefined(Pr?.[rr.index]),ho=$ke(st,Pr,(ru,Yg,jm)=>ru===zi?{sourceFile:Yg?.sourceFile||Le.configFile,index:jm}:void 0);if(!ho)return;let{sourceFile:Bc,index:Co}=ho,ac=U$(Bc,"references",ru=>If(ru.initializer)?ru.initializer:void 0);return ac&&ac.elements.length>Co?Lb(Bc,ac.elements[Co],rr.kind===2?Z.File_is_output_from_referenced_project_specified_here:Z.File_is_source_from_referenced_project_specified_here):void 0;case 8:if(!Le.types)return;Tr=J2("types",rr.typeReference),xn=Z.File_is_entry_point_of_type_library_specified_here;break;case 6:if(rr.index!==void 0){Tr=J2("lib",Le.lib[rr.index]),xn=Z.File_is_library_specified_here;break}let Ps=Vee(iA(Le));Tr=Ps?WB("target",Ps):void 0,xn=Z.File_is_default_library_for_target_specified_here;break;default:w.assertNever(rr)}return Tr&&Lb(Le.configFile,Tr,xn)}function rw(){let rr=Le.suppressOutputPathCheck?void 0:ZZ(Le);$ke(st,Pr,(Tr,xn,ci)=>{let Wi=(xn?xn.commandLine.projectReferences:st)[ci],qs=xn&&xn.sourceFile;if(Wl(Wi,qs,ci),!Tr){K0(qs,ci,Z.File_0_not_found,Wi.path);return}let zi=Tr.commandLine.options;(!zi.composite||zi.noEmit)&&(xn?xn.commandLine.fileNames:lt).length&&(zi.composite||K0(qs,ci,Z.Referenced_project_0_must_have_setting_composite_Colon_true,Wi.path),zi.noEmit&&K0(qs,ci,Z.Referenced_project_0_may_not_disable_emit,Wi.path)),!xn&&rr&&rr===ZZ(zi)&&(K0(qs,ci,Z.Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1,rr,Wi.path),Hs.set(ri(rr),!0))})}function lD(rr,Tr,xn,...ci){let Wi=!0;Jx(qs=>{tu(qs.initializer)&&GX(qs.initializer,rr,zi=>{let ho=zi.initializer;If(ho)&&ho.elements.length>Tr&&(_s.add(Lb(Le.configFile,ho.elements[Tr],xn,...ci)),Wi=!1)})}),Wi&&HZ(xn,...ci)}function Xx(rr,Tr,xn,...ci){let Wi=!0;Jx(qs=>{tu(qs.initializer)&&Wv(qs.initializer,rr,Tr,void 0,xn,...ci)&&(Wi=!1)}),Wi&&HZ(xn,...ci)}function YZ(rr,Tr){return GX(WG(),rr,Tr)}function Jx(rr){return YZ("paths",rr)}function WB(rr,Tr){return YZ(rr,xn=>bu(xn.initializer)&&xn.initializer.text===Tr?xn.initializer:void 0)}function J2(rr,Tr){let xn=WG();return xn&&FRe(xn,rr,Tr)}function np(rr,Tr,xn,ci){nw(!0,Tr,xn,rr,Tr,xn,ci)}function F_(rr,Tr,...xn){nw(!1,rr,void 0,Tr,...xn)}function K0(rr,Tr,xn,...ci){let Wi=U$(rr||Le.configFile,"references",qs=>If(qs.initializer)?qs.initializer:void 0);Wi&&Wi.elements.length>Tr?_s.add(Lb(rr||Le.configFile,Wi.elements[Tr],xn,...ci)):_s.add(ff(xn,...ci))}function nw(rr,Tr,xn,ci,...Wi){let qs=WG();(!qs||!Wv(qs,rr,Tr,xn,ci,...Wi))&&HZ(ci,...Wi)}function HZ(rr,...Tr){let xn=xV();xn?"messageText"in rr?_s.add(GS(Le.configFile,xn.name,rr)):_s.add(Lb(Le.configFile,xn.name,rr,...Tr)):"messageText"in rr?_s.add(Hce(rr)):_s.add(ff(rr,...Tr))}function WG(){if(qa===void 0){let rr=xV();qa=rr&&eo(rr.initializer,tu)||!1}return qa||void 0}function xV(){return nc===void 0&&(nc=GX(x8(Le.configFile),"compilerOptions",Bl)||!1),nc||void 0}function Wv(rr,Tr,xn,ci,Wi,...qs){let zi=!1;return GX(rr,xn,ho=>{"messageText"in Wi?_s.add(GS(Le.configFile,Tr?ho.name:ho.initializer,Wi)):_s.add(Lb(Le.configFile,Tr?ho.name:ho.initializer,Wi,...qs)),zi=!0},ci),zi}function kV(rr,Tr){Hs.set(ri(rr),!0),_s.add(Tr)}function Pv(rr){if(Le.noEmit)return!1;let Tr=ri(rr);if(di(Tr))return!1;let xn=Le.outFile;if(xn)return _P(Tr,xn)||_P(Tr,o0(xn)+".d.ts");if(Le.declarationDir&&Bg(Le.declarationDir,Tr,ir,!xi.useCaseSensitiveFileNames()))return!0;if(Le.outDir)return Bg(Le.outDir,Tr,ir,!xi.useCaseSensitiveFileNames());if(pp(Tr,$X)||kh(Tr)){let ci=o0(Tr);return!!di(ci+".ts")||!!di(ci+".tsx")}return!1}function _P(rr,Tr){return Ah(rr,Tr,ir,!xi.useCaseSensitiveFileNames())===0}function pT(){return xi.getSymlinkCache?xi.getSymlinkCache():(vt||(vt=rhe(ir,$o)),wt&&!vt.hasProcessedResolutions()&&vt.setSymlinksFromResolutions(On,Mn,Vr),vt)}function U2(rr,Tr){var xn;let ci=((xn=oa(rr))==null?void 0:xn.commandLine.options)||Le;return D6e(rr,Tr,ci)}function PG(rr,Tr){return U2(rr,B_e(rr,Tr))}}function V7i(n){let c,u=n.compilerHost.fileExists,d=n.compilerHost.directoryExists,I=n.compilerHost.getDirectories,h=n.compilerHost.realpath;if(!n.useSourceOfProjectReferenceRedirect)return{onProgramCreateComplete:oc,fileExists:N};n.compilerHost.fileExists=N;let b;return d&&(b=n.compilerHost.directoryExists=re=>d.call(n.compilerHost,re)?(M(re),!0):n.getResolvedProjectReferences()?(c||(c=new Set,n.forEachResolvedProjectReference(ue=>{let Ae=ue.commandLine.options.outFile;if(Ae)c.add(aa(n.toPath(Ae)));else{let de=ue.commandLine.options.declarationDir||ue.commandLine.options.outDir;de&&c.add(n.toPath(de))}})),te(re,!1)):!1),I&&(n.compilerHost.getDirectories=re=>!n.getResolvedProjectReferences()||d&&d.call(n.compilerHost,re)?I.call(n.compilerHost,re):[]),h&&(n.compilerHost.realpath=re=>{var ue;return((ue=n.getSymlinkCache().getSymlinkedFiles())==null?void 0:ue.get(n.toPath(re)))||h.call(n.compilerHost,re)}),{onProgramCreateComplete:R,fileExists:N,directoryExists:b};function R(){n.compilerHost.fileExists=u,n.compilerHost.directoryExists=d,n.compilerHost.getDirectories=I}function N(re){return u.call(n.compilerHost,re)?!0:!n.getResolvedProjectReferences()||!kh(re)?!1:te(re,!0)}function V(re){let ue=n.getSourceOfProjectReferenceRedirect(n.toPath(re));return ue!==void 0?Xa(ue)?u.call(n.compilerHost,ue):!0:void 0}function P(re){let ue=n.toPath(re),Ae=`${ue}${qu}`;return $w(c,de=>ue===de||uc(de,Ae)||uc(ue,`${de}/`))}function M(re){var ue;if(!n.getResolvedProjectReferences()||y6(re)||!h||!re.includes(Qx))return;let Ae=n.getSymlinkCache(),de=AA(n.toPath(re));if((ue=Ae.getSymlinkedDirectories())!=null&&ue.has(de))return;let Be=Mc(h.call(n.compilerHost,re)),Fe;if(Be===re||(Fe=AA(n.toPath(Be)))===de){Ae.setSymlinkedDirectory(de,!1);return}Ae.setSymlinkedDirectory(re,{real:AA(Be),realPath:Fe})}function te(re,ue){var Ae;let de=ue?De=>V(De):De=>P(De),Be=de(re);if(Be!==void 0)return Be;let Fe=n.getSymlinkCache(),Ne=Fe.getSymlinkedDirectories();if(!Ne)return!1;let Qe=n.toPath(re);return Qe.includes(Qx)?ue&&((Ae=Fe.getSymlinkedFiles())!=null&&Ae.has(Qe))?!0:ae(Ne.entries(),([De,lt])=>{if(!lt||!uc(Qe,De))return;let Le=de(Qe.replace(De,lt.realPath));if(ue&&Le){let je=Oc(re,n.compilerHost.getCurrentDirectory());Fe.setSymlinkedFile(Qe,`${lt.real}${je.replace(new RegExp(De,"i"),"")}`)}return Le})||!1:!1}}var W6e={diagnostics:v,sourceMaps:void 0,emittedFiles:void 0,emitSkipped:!0};function P6e(n,c,u,d){let I=n.getCompilerOptions();if(I.noEmit)return n.getSemanticDiagnostics(c,d),c||I.outFile?W6e:n.emitBuildInfo(u,d);if(!I.noEmitOnError)return;let h=[...n.getOptionsDiagnostics(d),...n.getSyntacticDiagnostics(c,d),...n.getGlobalDiagnostics(d),...n.getSemanticDiagnostics(c,d)];if(h.length===0&&LE(n.getCompilerOptions())&&(h=n.getDeclarationDiagnostics(void 0,d)),!h.length)return;let b;if(!c&&!I.outFile){let R=n.emitBuildInfo(u,d);R.diagnostics&&(h=[...h,...R.diagnostics]),b=R.emittedFiles}return{diagnostics:h,sourceMaps:void 0,emittedFiles:b,emitSkipped:!0}}function rGe(n,c){return Gt(n,u=>!u.skippedOn||!c[u.skippedOn])}function nGe(n,c=n){return{fileExists:u=>c.fileExists(u),readDirectory(u,d,I,h,b){return w.assertIsDefined(c.readDirectory,"'CompilerHost.readDirectory' must be implemented to correctly process 'projectReferences'"),c.readDirectory(u,d,I,h,b)},readFile:u=>c.readFile(u),directoryExists:Hi(c,c.directoryExists),getDirectories:Hi(c,c.getDirectories),realpath:Hi(c,c.realpath),useCaseSensitiveFileNames:n.useCaseSensitiveFileNames(),getCurrentDirectory:()=>n.getCurrentDirectory(),onUnRecoverableConfigFileDiagnostic:n.onUnRecoverableConfigFileDiagnostic||SI,trace:n.trace?u=>n.trace(u):void 0}}function Nte(n){return p7e(n.path)}function O6e(n,{extension:c},{isDeclarationFile:u}){switch(c){case".ts":case".d.ts":case".mts":case".d.mts":case".cts":case".d.cts":return;case".tsx":return d();case".jsx":return d()||I();case".js":case".mjs":case".cjs":return I();case".json":return h();default:return b()}function d(){return n.jsx?void 0:Z.Module_0_was_resolved_to_1_but_jsx_is_not_set}function I(){return bG(n)||!D_(n,"noImplicitAny")?void 0:Z.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type}function h(){return lV(n)?void 0:Z.Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used}function b(){return u||n.allowArbitraryExtensions?void 0:Z.Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set}}function jGr({imports:n,moduleAugmentations:c}){let u=n.map(d=>d);for(let d of c)d.kind===11&&u.push(d);return u}function B_e({imports:n,moduleAugmentations:c},u){if(u(n[n.ComputedDts=0]="ComputedDts",n[n.StoredSignatureAtEmit=1]="StoredSignatureAtEmit",n[n.UsedVersion=2]="UsedVersion",n))(jxt||{}),uT;(n=>{function c(){function nt(qe,it,It){let dt={getKeys:wt=>it.get(wt),getValues:wt=>qe.get(wt),keys:()=>qe.keys(),size:()=>qe.size,deleteKey:wt=>{(It||(It=new Set)).add(wt);let vt=qe.get(wt);return vt?(vt.forEach(Ye=>d(it,Ye,wt)),qe.delete(wt),!0):!1},set:(wt,vt)=>{It?.delete(wt);let Ye=qe.get(wt);return qe.set(wt,vt),Ye?.forEach(ht=>{vt.has(ht)||d(it,ht,wt)}),vt.forEach(ht=>{Ye?.has(ht)||u(it,ht,wt)}),dt}};return dt}return nt(new Map,new Map,void 0)}n.createManyToManyPathMap=c;function u(nt,qe,it){let It=nt.get(qe);It||(It=new Set,nt.set(qe,It)),It.add(it)}function d(nt,qe,it){let It=nt.get(qe);return It?.delete(it)?(It.size||nt.delete(qe),!0):!1}function I(nt){return tr(nt.declarations,qe=>{var it;return(it=ls(qe))==null?void 0:it.resolvedPath})}function h(nt,qe){let it=nt.getSymbolAtLocation(qe);return it&&I(it)}function b(nt,qe,it,It){return gA(nt.getProjectReferenceRedirect(qe)||qe,it,It)}function R(nt,qe,it){let It;if(qe.imports&&qe.imports.length>0){let Ye=nt.getTypeChecker();for(let ht of qe.imports){let Et=h(Ye,ht);Et?.forEach(vt)}}let dt=aa(qe.resolvedPath);if(qe.referencedFiles&&qe.referencedFiles.length>0)for(let Ye of qe.referencedFiles){let ht=b(nt,Ye.fileName,dt,it);vt(ht)}if(nt.forEachResolvedTypeReferenceDirective(({resolvedTypeReferenceDirective:Ye})=>{if(!Ye)return;let ht=Ye.resolvedFileName,Et=b(nt,ht,dt,it);vt(Et)},qe),qe.moduleAugmentations.length){let Ye=nt.getTypeChecker();for(let ht of qe.moduleAugmentations){if(!bu(ht))continue;let Et=Ye.getSymbolAtLocation(ht);Et&&wt(Et)}}for(let Ye of nt.getTypeChecker().getAmbientModules())Ye.declarations&&Ye.declarations.length>1&&wt(Ye);return It;function wt(Ye){if(Ye.declarations)for(let ht of Ye.declarations){let Et=ls(ht);Et&&Et!==qe&&vt(Et.resolvedPath)}}function vt(Ye){(It||(It=new Set)).add(Ye)}}function N(nt,qe){return qe&&!qe.referencedMap==!nt}n.canReuseOldState=N;function V(nt){return nt.module!==0&&!nt.outFile?c():void 0}n.createReferencedMap=V;function P(nt,qe,it){var It,dt;let wt=new Map,vt=nt.getCompilerOptions(),Ye=V(vt),ht=N(Ye,qe);nt.getTypeChecker();for(let Et of nt.getSourceFiles()){let Kt=w.checkDefined(Et.version,"Program intended to be used with Builder should have source files with versions set"),Tt=ht?(It=qe.oldSignatures)==null?void 0:It.get(Et.resolvedPath):void 0,Lt=Tt===void 0?ht?(dt=qe.fileInfos.get(Et.resolvedPath))==null?void 0:dt.signature:void 0:Tt||void 0;if(Ye){let kt=R(nt,Et,nt.getCanonicalFileName);kt&&Ye.set(Et.resolvedPath,kt)}wt.set(Et.resolvedPath,{version:Kt,signature:Lt,affectsGlobalScope:vt.outFile?void 0:lt(Et)||void 0,impliedFormat:Et.impliedNodeFormat})}return{fileInfos:wt,referencedMap:Ye,useFileVersionAsSignature:!it&&!ht}}n.create=P;function M(nt){nt.allFilesExcludingDefaultLibraryFile=void 0,nt.allFileNames=void 0}n.releaseCache=M;function te(nt,qe,it,It,dt){var wt;let vt=re(nt,qe,it,It,dt);return(wt=nt.oldSignatures)==null||wt.clear(),vt}n.getFilesAffectedBy=te;function re(nt,qe,it,It,dt){let wt=qe.getSourceFileByPath(it);return wt?de(nt,qe,wt,It,dt)?(nt.referencedMap?st:je)(nt,qe,wt,It,dt):[wt]:v}n.getFilesAffectedByWithOldState=re;function ue(nt,qe,it){nt.fileInfos.get(it).signature=qe,(nt.hasCalledUpdateShapeSignature||(nt.hasCalledUpdateShapeSignature=new Set)).add(it)}n.updateSignatureOfFile=ue;function Ae(nt,qe,it,It,dt){nt.emit(qe,(wt,vt,Ye,ht,Et,Kt)=>{w.assert(kh(wt),`File extension for signature expected to be dts: Got:: ${wt}`),dt(M6e(nt,qe,vt,It,Kt),Et)},it,2,void 0,!0)}n.computeDtsSignature=Ae;function de(nt,qe,it,It,dt,wt=nt.useFileVersionAsSignature){var vt;if((vt=nt.hasCalledUpdateShapeSignature)!=null&&vt.has(it.resolvedPath))return!1;let Ye=nt.fileInfos.get(it.resolvedPath),ht=Ye.signature,Et;return!it.isDeclarationFile&&!wt&&Ae(qe,it,It,dt,Kt=>{Et=Kt,dt.storeSignatureInfo&&(nt.signatureInfo??(nt.signatureInfo=new Map)).set(it.resolvedPath,0)}),Et===void 0&&(Et=it.version,dt.storeSignatureInfo&&(nt.signatureInfo??(nt.signatureInfo=new Map)).set(it.resolvedPath,2)),(nt.oldSignatures||(nt.oldSignatures=new Map)).set(it.resolvedPath,ht||!1),(nt.hasCalledUpdateShapeSignature||(nt.hasCalledUpdateShapeSignature=new Set)).add(it.resolvedPath),Ye.signature=Et,Et!==ht}n.updateShapeSignature=de;function Be(nt,qe,it){if(qe.getCompilerOptions().outFile||!nt.referencedMap||lt(it))return Fe(nt,qe);let dt=new Set,wt=[it.resolvedPath];for(;wt.length;){let vt=wt.pop();if(!dt.has(vt)){dt.add(vt);let Ye=nt.referencedMap.getValues(vt);if(Ye)for(let ht of Ye.keys())wt.push(ht)}}return on(gn(dt.keys(),vt=>{var Ye;return((Ye=qe.getSourceFileByPath(vt))==null?void 0:Ye.fileName)??vt}))}n.getAllDependencies=Be;function Fe(nt,qe){if(!nt.allFileNames){let it=qe.getSourceFiles();nt.allFileNames=it===v?v:it.map(It=>It.fileName)}return nt.allFileNames}function Ne(nt,qe){let it=nt.referencedMap.getKeys(qe);return it?on(it.keys()):[]}n.getReferencedByPaths=Ne;function Qe(nt){for(let qe of nt.statements)if(!SQ(qe))return!1;return!0}function De(nt){return lr(nt.moduleAugmentations,qe=>v2(qe.parent))}function lt(nt){return De(nt)||!ia(nt)&&!Ia(nt)&&!Qe(nt)}function Le(nt,qe,it){if(nt.allFilesExcludingDefaultLibraryFile)return nt.allFilesExcludingDefaultLibraryFile;let It;it&&dt(it);for(let wt of qe.getSourceFiles())wt!==it&&dt(wt);return nt.allFilesExcludingDefaultLibraryFile=It||v,nt.allFilesExcludingDefaultLibraryFile;function dt(wt){qe.isSourceFileDefaultLibrary(wt)||(It||(It=[])).push(wt)}}n.getAllFilesExcludingDefaultLibraryFile=Le;function je(nt,qe,it){let It=qe.getCompilerOptions();return It&&It.outFile?[it]:Le(nt,qe,it)}function st(nt,qe,it,It,dt){if(lt(it))return Le(nt,qe,it);let wt=qe.getCompilerOptions();if(wt&&(ZE(wt)||wt.outFile))return[it];let vt=new Map;vt.set(it.resolvedPath,it);let Ye=Ne(nt,it.resolvedPath);for(;Ye.length>0;){let ht=Ye.pop();if(!vt.has(ht)){let Et=qe.getSourceFileByPath(ht);vt.set(ht,Et),Et&&de(nt,qe,Et,It,dt)&&Ye.push(...Ne(nt,Et.resolvedPath))}}return on(gn(vt.values(),ht=>ht))}})(uT||(uT={}));var zxt=(n=>(n[n.None=0]="None",n[n.Js=1]="Js",n[n.JsMap=2]="JsMap",n[n.JsInlineMap=4]="JsInlineMap",n[n.Dts=8]="Dts",n[n.DtsMap=16]="DtsMap",n[n.AllJs=7]="AllJs",n[n.AllDts=24]="AllDts",n[n.All=31]="All",n))(zxt||{});function wV(n){let c=1;return n.sourceMap&&(c=c|2),n.inlineSourceMap&&(c=c|4),LE(n)&&(c=c|8),n.declarationMap&&(c=c|16),n.emitDeclarationOnly&&(c=c&24),c}function Rte(n,c){let u=c&&(cm(c)?c:wV(c)),d=cm(n)?n:wV(n);if(u===d)return 0;if(!u||!d)return d;let I=u^d,h=0;return I&7&&(h=d&7),I&24&&(h=h|d&24),h}function W7i(n,c){return n===c||n!==void 0&&c!==void 0&&n.size===c.size&&!$w(n,u=>!c.has(u))}function P7i(n,c){var u,d;let I=uT.create(n,c,!1);I.program=n;let h=n.getCompilerOptions();I.compilerOptions=h;let b=h.outFile;b?h.composite&&c?.outSignature&&b===c.compilerOptions.outFile&&(I.outSignature=c.outSignature&&qGr(h,c.compilerOptions,c.outSignature)):I.semanticDiagnosticsPerFile=new Map,I.changedFilesSet=new Set,I.latestChangedDtsFile=h.composite?c?.latestChangedDtsFile:void 0;let R=uT.canReuseOldState(I.referencedMap,c),N=R?c.compilerOptions:void 0,V=R&&c.semanticDiagnosticsPerFile&&!!I.semanticDiagnosticsPerFile&&!WDe(h,N),P=h.composite&&c?.emitSignatures&&!b&&!PDe(h,c.compilerOptions);R?((u=c.changedFilesSet)==null||u.forEach(Ae=>I.changedFilesSet.add(Ae)),!b&&((d=c.affectedFilesPendingEmit)!=null&&d.size)&&(I.affectedFilesPendingEmit=new Map(c.affectedFilesPendingEmit),I.seenAffectedFiles=new Set),I.programEmitPending=c.programEmitPending):I.buildInfoEmitPending=!0;let M=I.referencedMap,te=R?c.referencedMap:void 0,re=V&&!h.skipLibCheck==!N.skipLibCheck,ue=re&&!h.skipDefaultLibCheck==!N.skipDefaultLibCheck;if(I.fileInfos.forEach((Ae,de)=>{var Be;let Fe,Ne;if(!R||!(Fe=c.fileInfos.get(de))||Fe.version!==Ae.version||Fe.impliedFormat!==Ae.impliedFormat||!W7i(Ne=M&&M.getValues(de),te&&te.getValues(de))||Ne&&$w(Ne,Qe=>!I.fileInfos.has(Qe)&&c.fileInfos.has(Qe)))zGr(I,de);else{let Qe=n.getSourceFileByPath(de),De=(Be=c.emitDiagnosticsPerFile)==null?void 0:Be.get(de);if(De&&(I.emitDiagnosticsPerFile??(I.emitDiagnosticsPerFile=new Map)).set(de,c.hasReusableDiagnostic?tFr(De,de,n):$Gr(De,n)),V){if(Qe.isDeclarationFile&&!re||Qe.hasNoDefaultLib&&!ue)return;let lt=c.semanticDiagnosticsPerFile.get(de);lt&&(I.semanticDiagnosticsPerFile.set(de,c.hasReusableDiagnostic?tFr(lt,de,n):$Gr(lt,n)),(I.semanticDiagnosticsFromOldState??(I.semanticDiagnosticsFromOldState=new Set)).add(de))}}if(P){let Qe=c.emitSignatures.get(de);Qe&&(I.emitSignatures??(I.emitSignatures=new Map)).set(de,qGr(h,c.compilerOptions,Qe))}}),R&&JC(c.fileInfos,(Ae,de)=>I.fileInfos.has(de)?!1:b||Ae.affectsGlobalScope?!0:(I.buildInfoEmitPending=!0,!1)))uT.getAllFilesExcludingDefaultLibraryFile(I,n,void 0).forEach(Ae=>zGr(I,Ae.resolvedPath));else if(N){let Ae=zce(h,N)?wV(h):Rte(h,N);Ae!==0&&(b?I.programEmitPending=I.programEmitPending?I.programEmitPending|Ae:Ae:(n.getSourceFiles().forEach(de=>{I.changedFilesSet.has(de.resolvedPath)||Y6e(I,de.resolvedPath,Ae)}),w.assert(!I.seenAffectedFiles||!I.seenAffectedFiles.size),I.seenAffectedFiles=I.seenAffectedFiles||new Set,I.buildInfoEmitPending=!0))}return I}function zGr(n,c){n.changedFilesSet.add(c),n.buildInfoEmitPending=!0,n.programEmitPending=void 0}function qGr(n,c,u){return!!n.declarationMap==!!c.declarationMap?u:Xa(u)?[u]:u[0]}function $Gr(n,c){return n.length?Ar(n,u=>{if(Xa(u.messageText))return u;let d=qxt(u.messageText,u.file,c,I=>{var h;return(h=I.repopulateInfo)==null?void 0:h.call(I)});return d===u.messageText?u:{...u,messageText:d}}):n}function qxt(n,c,u,d){let I=d(n);if(I)return{...wX(c,u,I.moduleReference,I.mode,I.packageName||I.moduleReference),next:eFr(n.next,c,u,d)};let h=eFr(n.next,c,u,d);return h===n.next?n:{...n,next:h}}function eFr(n,c,u,d){return Ar(n,I=>qxt(I,c,u,d))}function tFr(n,c,u){if(!n.length)return v;let d;return n.map(h=>{let b=rFr(h,c,u,I);b.reportsUnnecessary=h.reportsUnnecessary,b.reportsDeprecated=h.reportDeprecated,b.source=h.source,b.skippedOn=h.skippedOn;let{relatedInformation:R}=h;return b.relatedInformation=R?R.length?R.map(N=>rFr(N,c,u,I)):[]:void 0,b});function I(h){return d??(d=aa(Oc(ZZ(u.getCompilerOptions()),u.getCurrentDirectory()))),gA(h,d,u.getCanonicalFileName)}}function rFr(n,c,u,d){let{file:I}=n,h=I!==!1?u.getSourceFileByPath(I?d(I):c):void 0;return{...n,file:h,messageText:Xa(n.messageText)?n.messageText:qxt(n.messageText,h,u,b=>b.info)}}function O7i(n){uT.releaseCache(n),n.program=void 0}function M7i(n){let c=n.compilerOptions.outFile;return w.assert(!n.changedFilesSet.size||c),{affectedFilesPendingEmit:n.affectedFilesPendingEmit&&new Map(n.affectedFilesPendingEmit),seenEmittedFiles:n.seenEmittedFiles&&new Map(n.seenEmittedFiles),programEmitPending:n.programEmitPending,emitSignatures:n.emitSignatures&&new Map(n.emitSignatures),outSignature:n.outSignature,latestChangedDtsFile:n.latestChangedDtsFile,hasChangedEmitSignature:n.hasChangedEmitSignature,changedFilesSet:c?new Set(n.changedFilesSet):void 0,buildInfoEmitPending:n.buildInfoEmitPending,emitDiagnosticsPerFile:n.emitDiagnosticsPerFile&&new Map(n.emitDiagnosticsPerFile)}}function Q7i(n,c){n.affectedFilesPendingEmit=c.affectedFilesPendingEmit,n.seenEmittedFiles=c.seenEmittedFiles,n.programEmitPending=c.programEmitPending,n.emitSignatures=c.emitSignatures,n.outSignature=c.outSignature,n.latestChangedDtsFile=c.latestChangedDtsFile,n.hasChangedEmitSignature=c.hasChangedEmitSignature,n.buildInfoEmitPending=c.buildInfoEmitPending,n.emitDiagnosticsPerFile=c.emitDiagnosticsPerFile,c.changedFilesSet&&(n.changedFilesSet=c.changedFilesSet)}function nFr(n,c){w.assert(!c||!n.affectedFiles||n.affectedFiles[n.affectedFilesIndex-1]!==c||!n.semanticDiagnosticsPerFile.has(c.resolvedPath))}function iFr(n,c,u){for(var d;;){let{affectedFiles:I}=n;if(I){let N=n.seenAffectedFiles,V=n.affectedFilesIndex;for(;V{let h=d&7;h?n.affectedFilesPendingEmit.set(I,h):n.affectedFilesPendingEmit.delete(I)})}}function H7i(n,c){var u;if((u=n.affectedFilesPendingEmit)!=null&&u.size)return JC(n.affectedFilesPendingEmit,(d,I)=>{var h;let b=n.program.getSourceFileByPath(I);if(!b||!X3(b,n.program)){n.affectedFilesPendingEmit.delete(I);return}let R=(h=n.seenEmittedFiles)==null?void 0:h.get(b.resolvedPath),N=Rte(d,R);if(c&&(N=N&24),N)return{affectedFile:b,emitKind:N}})}function X7i(n){var c;if((c=n.emitDiagnosticsPerFile)!=null&&c.size)return JC(n.emitDiagnosticsPerFile,(u,d)=>{var I;let h=n.program.getSourceFileByPath(d);if(!h||!X3(h,n.program)){n.emitDiagnosticsPerFile.delete(d);return}let b=((I=n.seenEmittedFiles)==null?void 0:I.get(h.resolvedPath))||0;if(!(b&24))return{affectedFile:h,diagnostics:u,seenKind:b}})}function sFr(n){if(!n.cleanedDiagnosticsOfLibFiles){n.cleanedDiagnosticsOfLibFiles=!0;let c=w.checkDefined(n.program),u=c.getCompilerOptions();X(c.getSourceFiles(),d=>c.isSourceFileDefaultLibrary(d)&&!jQ(d,u,c)&&ekt(n,d.resolvedPath))}}function J7i(n,c,u,d){if(ekt(n,c.resolvedPath),n.allFilesExcludingDefaultLibraryFile===n.affectedFiles){sFr(n),uT.updateShapeSignature(n,w.checkDefined(n.program),c,u,d);return}n.compilerOptions.assumeChangesOnlyAffectDirectDependencies||U7i(n,c,u,d)}function $xt(n,c,u,d,I){if(ekt(n,c),!n.changedFilesSet.has(c)){let h=w.checkDefined(n.program),b=h.getSourceFileByPath(c);b&&(uT.updateShapeSignature(n,h,b,d,I,!0),u?Y6e(n,c,wV(n.compilerOptions)):LE(n.compilerOptions)&&Y6e(n,c,n.compilerOptions.declarationMap?24:8))}}function ekt(n,c){return n.semanticDiagnosticsFromOldState?(n.semanticDiagnosticsFromOldState.delete(c),n.semanticDiagnosticsPerFile.delete(c),!n.semanticDiagnosticsFromOldState.size):!0}function oFr(n,c){let u=w.checkDefined(n.oldSignatures).get(c)||void 0;return w.checkDefined(n.fileInfos.get(c)).signature!==u}function tkt(n,c,u,d,I){var h;return(h=n.fileInfos.get(c))!=null&&h.affectsGlobalScope?(uT.getAllFilesExcludingDefaultLibraryFile(n,n.program,void 0).forEach(b=>$xt(n,b.resolvedPath,u,d,I)),sFr(n),!0):!1}function U7i(n,c,u,d){var I,h;if(!n.referencedMap||!n.changedFilesSet.has(c.resolvedPath)||!oFr(n,c.resolvedPath))return;if(ZE(n.compilerOptions)){let N=new Map;N.set(c.resolvedPath,!0);let V=uT.getReferencedByPaths(n,c.resolvedPath);for(;V.length>0;){let P=V.pop();if(!N.has(P)){if(N.set(P,!0),tkt(n,P,!1,u,d))return;if($xt(n,P,!1,u,d),oFr(n,P)){let M=w.checkDefined(n.program).getSourceFileByPath(P);V.push(...uT.getReferencedByPaths(n,M.resolvedPath))}}}}let b=new Set,R=!!((I=c.symbol)!=null&&I.exports)&&!!JC(c.symbol.exports,N=>{if(N.flags&128)return!0;let V=dh(N,n.program.getTypeChecker());return V===N?!1:(V.flags&128)!==0&&lr(V.declarations,P=>ls(P)===c)});(h=n.referencedMap.getKeys(c.resolvedPath))==null||h.forEach(N=>{if(tkt(n,N,R,u,d))return!0;let V=n.referencedMap.getKeys(N);return V&&$w(V,P=>aFr(n,P,R,b,u,d))})}function aFr(n,c,u,d,I,h){var b;if(Zi(d,c)){if(tkt(n,c,u,I,h))return!0;$xt(n,c,u,I,h),(b=n.referencedMap.getKeys(c))==null||b.forEach(R=>aFr(n,R,u,d,I,h))}}function rkt(n,c,u){return vi(K7i(n,c,u),w.checkDefined(n.program).getProgramDiagnostics(c))}function K7i(n,c,u){let d=c.resolvedPath;if(n.semanticDiagnosticsPerFile){let h=n.semanticDiagnosticsPerFile.get(d);if(h)return rGe(h,n.compilerOptions)}let I=w.checkDefined(n.program).getBindAndCheckDiagnostics(c,u);return n.semanticDiagnosticsPerFile&&n.semanticDiagnosticsPerFile.set(d,I),rGe(I,n.compilerOptions)}function nkt(n){var c;return!!((c=n.options)!=null&&c.outFile)}function j7i(n){var c,u;let d=w.checkDefined(n.program).getCurrentDirectory(),I=aa(Oc(ZZ(n.compilerOptions),d)),h=n.latestChangedDtsFile?Qe(n.latestChangedDtsFile):void 0,b=[],R=new Map,N=new Set(n.program.getRootFileNames().map(ht=>gA(ht,d,n.program.getCanonicalFileName))),V=[];if(n.compilerOptions.outFile){let ht=on(n.fileInfos.entries(),([Kt,Tt])=>{let Lt=lt(Kt);return je(Kt,Lt),Tt.impliedFormat?{version:Tt.version,impliedFormat:Tt.impliedFormat,signature:void 0,affectsGlobalScope:void 0}:Tt.version}),Et={fileNames:b,fileInfos:ht,root:V,resolvedRoot:st(),options:nt(n.compilerOptions),outSignature:n.outSignature,latestChangedDtsFile:h,pendingEmit:n.programEmitPending?n.programEmitPending===wV(n.compilerOptions)?!1:n.programEmitPending:void 0};return Xke(Et)}let P,M,te,re=on(n.fileInfos.entries(),([ht,Et])=>{var Kt,Tt;let Lt=lt(ht);je(ht,Lt),w.assert(b[Lt-1]===De(ht));let kt=(Kt=n.oldSignatures)==null?void 0:Kt.get(ht),Zt=kt!==void 0?kt||void 0:Et.signature;if(n.compilerOptions.composite){let Dr=n.program.getSourceFileByPath(ht);if(!Ia(Dr)&&X3(Dr,n.program)){let jt=(Tt=n.emitSignatures)==null?void 0:Tt.get(ht);jt!==Zt&&(te=Hr(te,jt===void 0?Lt:[Lt,!Xa(jt)&&jt[0]===Zt?v:jt]))}}return Et.version===Zt?Et.affectsGlobalScope||Et.impliedFormat?{version:Et.version,signature:void 0,affectsGlobalScope:Et.affectsGlobalScope,impliedFormat:Et.impliedFormat}:Et.version:Zt!==void 0?kt===void 0?Et:{version:Et.version,signature:Zt,affectsGlobalScope:Et.affectsGlobalScope,impliedFormat:Et.impliedFormat}:{version:Et.version,signature:!1,affectsGlobalScope:Et.affectsGlobalScope,impliedFormat:Et.impliedFormat}}),ue;(c=n.referencedMap)!=null&&c.size()&&(ue=on(n.referencedMap.keys()).sort(Do).map(ht=>[lt(ht),Le(n.referencedMap.getValues(ht))]));let Ae=it(),de;if((u=n.affectedFilesPendingEmit)!=null&&u.size){let ht=wV(n.compilerOptions),Et=new Set;for(let Kt of on(n.affectedFilesPendingEmit.keys()).sort(Do))if(Zi(Et,Kt)){let Tt=n.program.getSourceFileByPath(Kt);if(!Tt||!X3(Tt,n.program))continue;let Lt=lt(Kt),kt=n.affectedFilesPendingEmit.get(Kt);de=Hr(de,kt===ht?Lt:kt===8?[Lt]:[Lt,kt])}}let Be;if(n.changedFilesSet.size)for(let ht of on(n.changedFilesSet.keys()).sort(Do))Be=Hr(Be,lt(ht));let Fe=It(),Ne={fileNames:b,fileInfos:re,root:V,resolvedRoot:st(),options:nt(n.compilerOptions),fileIdsList:P,referencedMap:ue,semanticDiagnosticsPerFile:Ae,emitDiagnosticsPerFile:Fe,affectedFilesPendingEmit:de,changeFileSet:Be,emitSignatures:te,latestChangedDtsFile:h};return Xke(Ne);function Qe(ht){return De(Oc(ht,d))}function De(ht){return Ky(fp(I,ht,n.program.getCanonicalFileName))}function lt(ht){let Et=R.get(ht);return Et===void 0&&(b.push(De(ht)),R.set(ht,Et=b.length)),Et}function Le(ht){let Et=on(ht.keys(),lt).sort(Xl),Kt=Et.join(),Tt=M?.get(Kt);return Tt===void 0&&(P=Hr(P,Et),(M??(M=new Map)).set(Kt,Tt=P.length)),Tt}function je(ht,Et){let Kt=n.program.getSourceFile(ht);if(!n.program.getFileIncludeReasons().get(Kt.path).some(Zt=>Zt.kind===0))return;if(!V.length)return V.push(Et);let Tt=V[V.length-1],Lt=Ra(Tt);if(Lt&&Tt[1]===Et-1)return Tt[1]=Et;if(Lt||V.length===1||Tt!==Et-1)return V.push(Et);let kt=V[V.length-2];return!cm(kt)||kt!==Tt-1?V.push(Et):(V[V.length-2]=[kt,Et],V.length=V.length-1)}function st(){let ht;return N.forEach(Et=>{let Kt=n.program.getSourceFileByPath(Et);Kt&&Et!==Kt.resolvedPath&&(ht=Hr(ht,[lt(Kt.resolvedPath),lt(Et)]))}),ht}function nt(ht){let Et,{optionsNameMap:Kt}=Cte();for(let Tt of kl(ht).sort(Do)){let Lt=Kt.get(Tt.toLowerCase());Lt?.affectsBuildInfo&&((Et||(Et={}))[Tt]=qe(Lt,ht[Tt]))}return Et}function qe(ht,Et){if(ht){if(w.assert(ht.type!=="listOrElement"),ht.type==="list"){let Kt=Et;if(ht.element.isFilePath&&Kt.length)return Kt.map(Qe)}else if(ht.isFilePath)return Qe(Et)}return Et}function it(){let ht;return n.fileInfos.forEach((Et,Kt)=>{var Tt;let Lt=(Tt=n.semanticDiagnosticsPerFile)==null?void 0:Tt.get(Kt);Lt?Lt.length&&(ht=Hr(ht,[lt(Kt),dt(Lt,Kt)])):n.changedFilesSet.has(Kt)||(ht=Hr(ht,lt(Kt)))}),ht}function It(){var ht;let Et;if(!((ht=n.emitDiagnosticsPerFile)!=null&&ht.size))return Et;for(let Kt of on(n.emitDiagnosticsPerFile.keys()).sort(Do)){let Tt=n.emitDiagnosticsPerFile.get(Kt);Et=Hr(Et,[lt(Kt),dt(Tt,Kt)])}return Et}function dt(ht,Et){return w.assert(!!ht.length),ht.map(Kt=>{let Tt=wt(Kt,Et);Tt.reportsUnnecessary=Kt.reportsUnnecessary,Tt.reportDeprecated=Kt.reportsDeprecated,Tt.source=Kt.source,Tt.skippedOn=Kt.skippedOn;let{relatedInformation:Lt}=Kt;return Tt.relatedInformation=Lt?Lt.length?Lt.map(kt=>wt(kt,Et)):[]:void 0,Tt})}function wt(ht,Et){let{file:Kt}=ht;return{...ht,file:Kt?Kt.resolvedPath===Et?void 0:De(Kt.resolvedPath):!1,messageText:Xa(ht.messageText)?ht.messageText:vt(ht.messageText)}}function vt(ht){if(ht.repopulateInfo)return{info:ht.repopulateInfo(),next:Ye(ht.next)};let Et=Ye(ht.next);return Et===ht.next?ht:{...ht,next:Et}}function Ye(ht){return ht&&(X(ht,(Et,Kt)=>{let Tt=vt(Et);if(Et===Tt)return;let Lt=Kt>0?ht.slice(0,Kt-1):[];Lt.push(Tt);for(let kt=Kt+1;kt(n[n.SemanticDiagnosticsBuilderProgram=0]="SemanticDiagnosticsBuilderProgram",n[n.EmitAndSemanticDiagnosticsBuilderProgram=1]="EmitAndSemanticDiagnosticsBuilderProgram",n))(ikt||{});function iGe(n,c,u,d,I,h){let b,R,N;return n===void 0?(w.assert(c===void 0),b=u,N=d,w.assert(!!N),R=N.getProgram()):Ra(n)?(N=d,R=E_e({rootNames:n,options:c,host:u,oldProgram:N&&N.getProgramOrUndefined(),configFileParsingDiagnostics:I,projectReferences:h}),b=u):(R=n,b=c,N=u,I=d),{host:b,newProgram:R,oldProgram:N,configFileParsingDiagnostics:I||v}}function cFr(n,c){return c?.sourceMapUrlPos!==void 0?n.substring(0,c.sourceMapUrlPos):n}function M6e(n,c,u,d,I){var h;u=cFr(u,I);let b;return(h=I?.diagnostics)!=null&&h.length&&(u+=I.diagnostics.map(V=>`${N(V)}${m1[V.category]}${V.code}: ${R(V.messageText)}`).join(` -`)),(d.createHash??Bh)(u);function R(V){return Xa(V)?V:V===void 0?"":V.next?V.messageText+V.next.map(R).join(` -`):V.messageText}function N(V){return V.file.resolvedPath===c.resolvedPath?`(${V.start},${V.length})`:(b===void 0&&(b=aa(c.resolvedPath)),`${Ky(fp(b,V.file.resolvedPath,n.getCanonicalFileName))}(${V.start},${V.length})`)}}function skt(n,c,u){return(c.createHash??Bh)(cFr(n,u))}function Q6e(n,{newProgram:c,host:u,oldProgram:d,configFileParsingDiagnostics:I}){let h=d&&d.getState();if(h&&c===h.program&&I===c.getConfigFileParsingDiagnostics())return c=void 0,h=void 0,d;let b=P7i(c,h);c.getBuildInfo=()=>j7i(b),c=void 0,d=void 0,h=void 0;let R=()=>b,N=X6e(R,I);return N.getState=R,N.saveEmitState=()=>M7i(b),N.restoreEmitState=Ae=>Q7i(b,Ae),N.hasChangedEmitSignature=()=>!!b.hasChangedEmitSignature,N.getAllDependencies=Ae=>uT.getAllDependencies(b,w.checkDefined(b.program),Ae),N.getSemanticDiagnostics=ue,N.emit=te,N.releaseProgram=()=>O7i(b),n===0?N.getSemanticDiagnosticsOfNextAffectedFile=re:n===1?(N.getSemanticDiagnosticsOfNextAffectedFile=re,N.emitNextAffectedFile=P,N.emitBuildInfo=V):za(),N;function V(Ae,de){if(b.buildInfoEmitPending){let Be=w.checkDefined(b.program).emitBuildInfo(Ae||Hi(u,u.writeFile),de);return b.buildInfoEmitPending=!1,Be}return W6e}function P(Ae,de,Be,Fe){var Ne,Qe,De;let lt=iFr(b,de,u),Le=wV(b.compilerOptions),je=Be?Le&24:Le;if(!lt)if(b.compilerOptions.outFile){if(!b.programEmitPending||(je=b.programEmitPending,Be&&(je=je&24),!je))return;lt=b.program}else{let qe=H7i(b,Be);if(!qe){let it=X7i(b);if(it)return(b.seenEmittedFiles??(b.seenEmittedFiles=new Map)).set(it.affectedFile.resolvedPath,it.seenKind|24),{result:{emitSkipped:!0,diagnostics:it.diagnostics},affected:it.affectedFile};if(!b.buildInfoEmitPending)return;let It=b.program,dt=It.emitBuildInfo(Ae||Hi(u,u.writeFile),de);return b.buildInfoEmitPending=!1,{result:dt,affected:It}}({affectedFile:lt,emitKind:je}=qe)}let st;je&7&&(st=0),je&24&&(st=st===void 0?1:void 0),lt===b.program&&(b.programEmitPending=b.changedFilesSet.size?Rte(Le,je):b.programEmitPending?Rte(b.programEmitPending,je):void 0);let nt=b.program.emit(lt===b.program?void 0:lt,M(Ae,Fe),de,st,Fe);if(lt!==b.program){let qe=lt;b.seenAffectedFiles.add(qe.resolvedPath),b.affectedFilesIndex!==void 0&&b.affectedFilesIndex++,b.buildInfoEmitPending=!0;let it=((Ne=b.seenEmittedFiles)==null?void 0:Ne.get(qe.resolvedPath))||0;(b.seenEmittedFiles??(b.seenEmittedFiles=new Map)).set(qe.resolvedPath,je|it);let It=((Qe=b.affectedFilesPendingEmit)==null?void 0:Qe.get(qe.resolvedPath))||Le,dt=Rte(It,je|it);dt?(b.affectedFilesPendingEmit??(b.affectedFilesPendingEmit=new Map)).set(qe.resolvedPath,dt):(De=b.affectedFilesPendingEmit)==null||De.delete(qe.resolvedPath),nt.diagnostics.length&&(b.emitDiagnosticsPerFile??(b.emitDiagnosticsPerFile=new Map)).set(qe.resolvedPath,nt.diagnostics)}else b.changedFilesSet.clear();return{result:nt,affected:lt}}function M(Ae,de){return LE(b.compilerOptions)?(Be,Fe,Ne,Qe,De,lt)=>{var Le,je,st;if(kh(Be))if(b.compilerOptions.outFile){if(b.compilerOptions.composite){let qe=nt(b.outSignature,void 0);if(!qe)return;b.outSignature=qe}}else{w.assert(De?.length===1);let qe;if(!de){let it=De[0],It=b.fileInfos.get(it.resolvedPath);if(It.signature===it.version){let dt=M6e(b.program,it,Fe,u,lt);(Le=lt?.diagnostics)!=null&&Le.length||(qe=dt),dt!==it.version&&(u.storeSignatureInfo&&(b.signatureInfo??(b.signatureInfo=new Map)).set(it.resolvedPath,1),b.affectedFiles&&((je=b.oldSignatures)==null?void 0:je.get(it.resolvedPath))===void 0&&(b.oldSignatures??(b.oldSignatures=new Map)).set(it.resolvedPath,It.signature||!1),It.signature=dt)}}if(b.compilerOptions.composite){let it=De[0].resolvedPath;if(qe=nt((st=b.emitSignatures)==null?void 0:st.get(it),qe),!qe)return;(b.emitSignatures??(b.emitSignatures=new Map)).set(it,qe)}}Ae?Ae(Be,Fe,Ne,Qe,De,lt):u.writeFile?u.writeFile(Be,Fe,Ne,Qe,De,lt):b.program.writeFile(Be,Fe,Ne,Qe,De,lt);function nt(qe,it){let It=!qe||Xa(qe)?qe:qe[0];if(it??(it=skt(Fe,u,lt)),it===It){if(qe===It)return;lt?lt.differsOnlyInMap=!0:lt={differsOnlyInMap:!0}}else b.hasChangedEmitSignature=!0,b.latestChangedDtsFile=Be;return it}}:Ae||Hi(u,u.writeFile)}function te(Ae,de,Be,Fe,Ne){n===1&&nFr(b,Ae);let Qe=P6e(N,Ae,de,Be);if(Qe)return Qe;if(!Ae)if(n===1){let De=[],lt=!1,Le,je=[],st;for(;st=P(de,Be,Fe,Ne);)lt=lt||st.result.emitSkipped,Le=ai(Le,st.result.diagnostics),je=ai(je,st.result.emittedFiles),De=ai(De,st.result.sourceMaps);return{emitSkipped:lt,diagnostics:Le||v,emittedFiles:je,sourceMaps:De}}else Y7i(b,Fe);return w.checkDefined(b.program).emit(Ae,M(de,Ne),Be,Fe,Ne)}function re(Ae,de){for(;;){let Be=iFr(b,Ae,u),Fe;if(Be)if(Be!==b.program){let Ne=Be;if((!de||!de(Ne))&&(Fe=rkt(b,Ne,Ae)),b.seenAffectedFiles.add(Ne.resolvedPath),b.affectedFilesIndex++,b.buildInfoEmitPending=!0,!Fe)continue}else Fe=b.program.getSemanticDiagnostics(void 0,Ae),b.changedFilesSet.clear(),b.programEmitPending=wV(b.compilerOptions);else return;return{result:Fe,affected:Be}}}function ue(Ae,de){if(nFr(b,Ae),w.checkDefined(b.program).getCompilerOptions().outFile)return w.assert(!b.semanticDiagnosticsPerFile),w.checkDefined(b.program).getSemanticDiagnostics(Ae,de);if(Ae)return rkt(b,Ae,de);for(;re(de););let Fe;for(let Ne of w.checkDefined(b.program).getSourceFiles())Fe=ai(Fe,rkt(b,Ne,de));return Fe||v}}function Y6e(n,c,u){var d,I;let h=((d=n.affectedFilesPendingEmit)==null?void 0:d.get(c))||0;(n.affectedFilesPendingEmit??(n.affectedFilesPendingEmit=new Map)).set(c,h|u),(I=n.emitDiagnosticsPerFile)==null||I.delete(c)}function okt(n){return Xa(n)?{version:n,signature:n,affectsGlobalScope:void 0,impliedFormat:void 0}:Xa(n.signature)?n:{version:n.version,signature:n.signature===!1?void 0:n.version,affectsGlobalScope:n.affectsGlobalScope,impliedFormat:n.impliedFormat}}function akt(n,c){return cm(n)?c:n[1]||8}function ckt(n,c){return n||wV(c||{})}function lkt(n,c,u){var d,I,h,b;let R=n.program,N=aa(Oc(c,u.getCurrentDirectory())),V=tA(u.useCaseSensitiveFileNames()),P,M=(d=R.fileNames)==null?void 0:d.map(ue),te,re=R.latestChangedDtsFile?Ae(R.latestChangedDtsFile):void 0;if(nkt(R)){let De=new Map;R.fileInfos.forEach((lt,Le)=>{let je=de(Le+1);De.set(je,Xa(lt)?{version:lt,signature:void 0,affectsGlobalScope:void 0,impliedFormat:void 0}:lt)}),P={fileInfos:De,compilerOptions:R.options?Ike(R.options,Ae):{},latestChangedDtsFile:re,outSignature:R.outSignature,programEmitPending:R.pendingEmit===void 0?void 0:ckt(R.pendingEmit,R.options)}}else{te=(I=R.fileIdsList)==null?void 0:I.map(st=>new Set(st.map(de)));let De=new Map,lt=(h=R.options)!=null&&h.composite&&!R.options.outFile?new Map:void 0;R.fileInfos.forEach((st,nt)=>{let qe=de(nt+1),it=okt(st);De.set(qe,it),lt&&it.signature&<.set(qe,it.signature)}),(b=R.emitSignatures)==null||b.forEach(st=>{if(cm(st))lt.delete(de(st));else{let nt=de(st[0]);lt.set(nt,!Xa(st[1])&&!st[1].length?[lt.get(nt)]:st[1])}});let Le=new Set(Ot(R.changeFileSet,de)),je=R.affectedFilesPendingEmit?wV(R.options||{}):void 0;P={fileInfos:De,compilerOptions:R.options?Ike(R.options,Ae):{},referencedMap:Fe(R.referencedMap,R.options??{}),semanticDiagnosticsPerFile:Ne(R.semanticDiagnosticsPerFile,De,Le),emitDiagnosticsPerFile:Qe(R.emitDiagnosticsPerFile),hasReusableDiagnostic:!0,affectedFilesPendingEmit:R.affectedFilesPendingEmit&&cA(R.affectedFilesPendingEmit,st=>de(cm(st)?st:st[0]),st=>akt(st,je)),changedFilesSet:Le,latestChangedDtsFile:re,emitSignatures:lt?.size?lt:void 0}}return{getState:()=>P,saveEmitState:oc,restoreEmitState:oc,getProgram:za,getProgramOrUndefined:SI,releaseProgram:oc,getCompilerOptions:()=>P.compilerOptions,getSourceFile:za,getSourceFiles:za,getOptionsDiagnostics:za,getGlobalDiagnostics:za,getConfigFileParsingDiagnostics:za,getSyntacticDiagnostics:za,getDeclarationDiagnostics:za,getSemanticDiagnostics:za,emit:za,getAllDependencies:za,getCurrentDirectory:za,emitNextAffectedFile:za,getSemanticDiagnosticsOfNextAffectedFile:za,emitBuildInfo:za,close:oc,hasChangedEmitSignature:TC};function ue(De){return gA(De,N,V)}function Ae(De){return Oc(De,N)}function de(De){return M[De-1]}function Be(De){return te[De-1]}function Fe(De,lt){let Le=uT.createReferencedMap(lt);return!Le||!De||De.forEach(([je,st])=>Le.set(de(je),Be(st))),Le}function Ne(De,lt,Le){let je=new Map(gn(lt.keys(),st=>Le.has(st)?void 0:[st,v]));return De?.forEach(st=>{cm(st)?je.delete(de(st)):je.set(de(st[0]),st[1])}),je.size?je:void 0}function Qe(De){return De&&cA(De,lt=>de(lt[0]),lt=>lt[1])}}function H6e(n,c,u){let d=aa(Oc(c,u.getCurrentDirectory())),I=tA(u.useCaseSensitiveFileNames()),h=new Map,b=0,R=new Map,N=new Map(n.resolvedRoot);return n.fileInfos.forEach((P,M)=>{let te=gA(n.fileNames[M],d,I),re=Xa(P)?P:P.version;if(h.set(te,re),bn().program,releaseProgram:()=>n().program=void 0,getCompilerOptions:()=>n().compilerOptions,getSourceFile:d=>u().getSourceFile(d),getSourceFiles:()=>u().getSourceFiles(),getOptionsDiagnostics:d=>u().getOptionsDiagnostics(d),getGlobalDiagnostics:d=>u().getGlobalDiagnostics(d),getConfigFileParsingDiagnostics:()=>c,getSyntacticDiagnostics:(d,I)=>u().getSyntacticDiagnostics(d,I),getDeclarationDiagnostics:(d,I)=>u().getDeclarationDiagnostics(d,I),getSemanticDiagnostics:(d,I)=>u().getSemanticDiagnostics(d,I),emit:(d,I,h,b,R)=>u().emit(d,I,h,b,R),emitBuildInfo:(d,I)=>u().emitBuildInfo(d,I),getAllDependencies:za,getCurrentDirectory:()=>u().getCurrentDirectory(),close:oc};function u(){return w.checkDefined(n().program)}}function lFr(n,c,u,d,I,h){return Q6e(0,iGe(n,c,u,d,I,h))}function J6e(n,c,u,d,I,h){return Q6e(1,iGe(n,c,u,d,I,h))}function uFr(n,c,u,d,I,h){let{newProgram:b,configFileParsingDiagnostics:R}=iGe(n,c,u,d,I,h);return X6e(()=>({program:b,compilerOptions:b.getCompilerOptions()}),R)}function sGe(n){return pl(n,"/node_modules/.staging")?Qm(n,"/.staging"):lr(vh,c=>n.includes(c))?void 0:n}function ukt(n,c){if(c<=1)return 1;let u=1,d=n[0].search(/[a-zA-Z]:/)===0;if(n[0]!==qu&&!d&&n[1].search(/[a-zA-Z]\$$/)===0){if(c===2)return 2;u=2,d=!0}return d&&!n[u].match(/^users$/i)?u:n[u].match(/^workspaces$/i)?u+1:u+2}function oGe(n,c){if(c===void 0&&(c=n.length),c<=2)return!1;let u=ukt(n,c);return c>u+1}function gkt(n){return AFr(aa(n))}function gFr(n,c){if(c.lengthI.length+1?dkt(R,b,Math.max(I.length+1,N+1),P):{dir:u,dirPath:d,nonRecursive:!0}:dFr(R,b,b.length-1,N,V,I,P)}function dFr(n,c,u,d,I,h,b){if(I!==-1)return dkt(n,c,I+1,b);let R=!0,N=u;for(let V=0;V=u&&d+2z7i(d,I,h,n,u,c,b)}}function z7i(n,c,u,d,I,h,b){let R=aGe(n),N=M6(u,d,I,R,c,h,b);if(!n.getGlobalCache)return N;let V=n.getGlobalCache();if(V!==void 0&&!Jl(u)&&!(N.resolvedModule&&cle(N.resolvedModule.extension))){let{resolvedModule:P,failedLookupLocations:M,affectingLocations:te,resolutionDiagnostics:re}=EDt(w.checkDefined(n.globalCacheResolutionModuleName)(u),n.projectName,I,R,V,c);if(P)return N.resolvedModule=P,N.failedLookupLocations=mte(N.failedLookupLocations,M),N.affectingLocations=mte(N.affectingLocations,te),N.resolutionDiagnostics=mte(N.resolutionDiagnostics,re),N}return N}function K6e(n,c,u){let d,I,h,b=ec(),R=new Set,N=new Set,V=new Map,P=new Map,M=!1,te,re,ue,Ae,de,Be=!1,Fe=iu(()=>n.getCurrentDirectory()),Ne=n.getCachedDirectoryStructureHost(),Qe=new Map,De=_te(Fe(),n.getCanonicalFileName,n.getCompilationSettings()),lt=new Map,Le=vke(Fe(),n.getCanonicalFileName,n.getCompilationSettings(),De.getPackageJsonInfoCache(),De.optionsToRedirectsKey),je=new Map,st=_te(Fe(),n.getCanonicalFileName,x8e(n.getCompilationSettings()),De.getPackageJsonInfoCache()),nt=new Map,qe=new Map,it=fkt(c,Fe),It=n.toPath(it),dt=Ad(It),wt=new Map,vt=new Map,Ye=new Map,ht=new Map;return{rootDirForResolution:c,resolvedModuleNames:Qe,resolvedTypeReferenceDirectives:lt,resolvedLibraries:je,resolvedFileToResolution:V,resolutionsWithFailedLookups:R,resolutionsWithOnlyAffectingLocations:N,directoryWatchesOfFailedLookups:nt,fileWatchesOfAffectingLocations:qe,packageDirWatchers:vt,dirPathToSymlinkPackageRefCount:Ye,watchFailedLookupLocationsOfExternalModuleResolutions:xs,getModuleResolutionCache:()=>De,startRecordingFilesWithChangedResolutions:kt,finishRecordingFilesWithChangedResolutions:Zt,startCachingPerDirectoryResolution:mr,finishCachingPerDirectoryResolution:Vr,resolveModuleNameLiterals:Pi,resolveTypeReferenceDirectiveReferences:bi,resolveLibrary:Ns,resolveSingleModuleNameWithoutWatching:gi,removeResolutionsFromProjectReferenceRedirects:Nc,removeResolutionsOfFile:cg,hasChangedAutomaticTypeDirectiveNames:()=>M,invalidateResolutionOfFile:Bi,invalidateResolutionsOfFailedLookupLocations:ct,setFilesWithInvalidatedNonRelativeUnresolvedImports:BA,createHasInvalidatedResolutions:jt,isFileWithInvalidatedNonRelativeUnresolvedImports:Dr,updateTypeRootsWatch:Pr,closeTypeRootsWatch:Qt,clear:Tt,onChangesAffectModuleResolution:Lt};function Et(cr){return cr.resolvedModule}function Kt(cr){return cr.resolvedTypeReferenceDirective}function Tt(){Y0(nt,ZB),Y0(qe,ZB),wt.clear(),vt.clear(),Ye.clear(),b.clear(),Qt(),Qe.clear(),lt.clear(),V.clear(),R.clear(),N.clear(),ue=void 0,Ae=void 0,de=void 0,re=void 0,te=void 0,Be=!1,De.clear(),Le.clear(),De.update(n.getCompilationSettings()),Le.update(n.getCompilationSettings()),st.clear(),P.clear(),je.clear(),M=!1}function Lt(){Be=!0,De.clearAllExceptPackageJsonInfoCache(),Le.clearAllExceptPackageJsonInfoCache(),De.update(n.getCompilationSettings()),Le.update(n.getCompilationSettings())}function kt(){d=[]}function Zt(){let cr=d;return d=void 0,cr}function Dr(cr){if(!h)return!1;let kn=h.get(cr);return!!kn&&!!kn.length}function jt(cr,kn){ct();let Pn=I;return I=void 0,{hasInvalidatedResolutions:an=>cr(an)||Be||!!Pn?.has(an)||Dr(an),hasInvalidatedLibResolutions:an=>{var Kr;return kn(an)||!!((Kr=je?.get(an))!=null&&Kr.isInvalidated)}}}function mr(){De.isReadonly=void 0,Le.isReadonly=void 0,st.isReadonly=void 0,De.getPackageJsonInfoCache().isReadonly=void 0,De.clearAllExceptPackageJsonInfoCache(),Le.clearAllExceptPackageJsonInfoCache(),st.clearAllExceptPackageJsonInfoCache(),b.forEach(Cc),b.clear(),wt.clear()}function Pt(cr){je.forEach((kn,Pn)=>{var an;(an=cr?.resolvedLibReferences)!=null&&an.has(Pn)||(gs(kn,n.toPath(eGe(n.getCompilationSettings(),Fe(),Pn)),Et),je.delete(Pn))})}function Vr(cr,kn){h=void 0,Be=!1,b.forEach(Cc),b.clear(),cr!==kn&&(Pt(cr),cr?.getSourceFiles().forEach(Pn=>{var an;let Kr=ia(Pn)?((an=Pn.packageJsonLocations)==null?void 0:an.length)??0:0,wn=P.get(Pn.resolvedPath)??v;for(let Pe=wn.length;PeKr)for(let Pe=Kr;Pe{let Kr=cr?.getSourceFileByPath(an);(!Kr||Kr.resolvedPath!==an)&&(Pn.forEach(wn=>qe.get(wn).files--),P.delete(an))})),nt.forEach(pr),qe.forEach(zr),vt.forEach(Yr),M=!1,De.isReadonly=!0,Le.isReadonly=!0,st.isReadonly=!0,De.getPackageJsonInfoCache().isReadonly=!0,wt.clear()}function Yr(cr,kn){cr.dirPathToWatcher.size===0&&vt.delete(kn)}function pr(cr,kn){cr.refCount===0&&(nt.delete(kn),cr.watcher.close())}function zr(cr,kn){var Pn;cr.files===0&&cr.resolutions===0&&!((Pn=cr.symlinks)!=null&&Pn.size)&&(qe.delete(kn),cr.watcher.close())}function $n({entries:cr,containingFile:kn,containingSourceFile:Pn,redirectedReference:an,options:Kr,perFileCache:wn,reusedNames:Pe,loader:ar,getResolutionWithResolvedFileName:sn,deferWatchingNonRelativeResolution:Me,shouldRetryResolution:ur,logChanges:Re}){let Jt=n.toPath(kn),bt=wn.get(Jt)||wn.set(Jt,hte()).get(Jt),Vt=[],dn=Re&&Dr(Jt),On=n.getCurrentProgram(),Mn=On&&On.getResolvedProjectReferenceToRedirect(kn),Ii=Mn?!an||an.sourceFile.path!==Mn.sourceFile.path:!!an,ds=hte();for(let oo of cr){let Vi=ar.nameAndMode.getName(oo),ko=ar.nameAndMode.getMode(oo,Pn,an?.commandLine.options||Kr),Yc=bt.get(Vi,ko);if(!ds.has(Vi,ko)&&(Be||Ii||!Yc||Yc.isInvalidated||dn&&!Jl(Vi)&&ur(Yc))){let fl=Yc;Yc=ar.resolve(Vi,ko),n.onDiscoveredSymlink&&q7i(Yc)&&n.onDiscoveredSymlink(),bt.set(Vi,ko,Yc),Yc!==fl&&(xs(Vi,Yc,Jt,sn,Me),fl&&gs(fl,Jt,sn)),Re&&d&&!Es(fl,Yc)&&(d.push(Jt),Re=!1)}else{let fl=aGe(n);if(GG(Kr,fl)&&!ds.has(Vi,ko)){let oa=sn(Yc);wl(fl,wn===Qe?oa?.resolvedFileName?oa.packageId?Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved:oa?.resolvedFileName?oa.packageId?Z.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:Z.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2:Z.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved,Vi,kn,oa?.resolvedFileName,oa?.packageId&&YR(oa.packageId))}}w.assert(Yc!==void 0&&!Yc.isInvalidated),ds.set(Vi,ko,!0),Vt.push(Yc)}return Pe?.forEach(oo=>ds.set(ar.nameAndMode.getName(oo),ar.nameAndMode.getMode(oo,Pn,an?.commandLine.options||Kr),!0)),bt.size()!==ds.size()&&bt.forEach((oo,Vi,ko)=>{ds.has(Vi,ko)||(gs(oo,Jt,sn),bt.delete(Vi,ko))}),Vt;function Es(oo,Vi){if(oo===Vi)return!0;if(!oo||!Vi)return!1;let ko=sn(oo),Yc=sn(Vi);return ko===Yc?!0:!ko||!Yc?!1:ko.resolvedFileName===Yc.resolvedFileName}}function bi(cr,kn,Pn,an,Kr,wn){return $n({entries:cr,containingFile:kn,containingSourceFile:Kr,redirectedReference:Pn,options:an,reusedNames:wn,perFileCache:lt,loader:qke(kn,Pn,an,aGe(n),Le),getResolutionWithResolvedFileName:Kt,shouldRetryResolution:Pe=>Pe.resolvedTypeReferenceDirective===void 0,deferWatchingNonRelativeResolution:!1})}function Pi(cr,kn,Pn,an,Kr,wn){return $n({entries:cr,containingFile:kn,containingSourceFile:Kr,redirectedReference:Pn,options:an,reusedNames:wn,perFileCache:Qe,loader:Ikt(kn,Pn,an,n,De),getResolutionWithResolvedFileName:Et,shouldRetryResolution:Pe=>!Pe.resolvedModule||!C6(Pe.resolvedModule.extension),logChanges:u,deferWatchingNonRelativeResolution:!0})}function Ns(cr,kn,Pn,an){let Kr=aGe(n),wn=je?.get(an);if(!wn||wn.isInvalidated){let Pe=wn;wn=Ske(cr,kn,Pn,Kr,st);let ar=n.toPath(kn);xs(cr,wn,ar,Et,!1),je.set(an,wn),Pe&&gs(Pe,ar,Et)}else if(GG(Pn,Kr)){let Pe=Et(wn);wl(Kr,Pe?.resolvedFileName?Pe.packageId?Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved,cr,kn,Pe?.resolvedFileName,Pe?.packageId&&YR(Pe.packageId))}return wn}function gi(cr,kn){var Pn,an;let Kr=n.toPath(kn),wn=Qe.get(Kr),Pe=wn?.get(cr,void 0);if(Pe&&!Pe.isInvalidated)return Pe;let ar=(Pn=n.beforeResolveSingleModuleNameWithoutWatching)==null?void 0:Pn.call(n,De),sn=aGe(n),Me=M6(cr,kn,n.getCompilationSettings(),sn,De);return(an=n.afterResolveSingleModuleNameWithoutWatching)==null||an.call(n,De,cr,kn,Me,ar),Me}function jn(cr){return pl(cr,"/node_modules/@types")}function xs(cr,kn,Pn,an,Kr){var wn;if(kn.refCount)kn.refCount++,w.assertIsDefined(kn.files);else{kn.refCount=1,w.assert(!((wn=kn.files)!=null&&wn.size)),!Kr||Jl(cr)?xi(kn):b.add(cr,kn);let Pe=an(kn);if(Pe&&Pe.resolvedFileName){let ar=n.toPath(Pe.resolvedFileName),sn=V.get(ar);sn||V.set(ar,sn=new Set),sn.add(kn)}}(kn.files??(kn.files=new Set)).add(Pn)}function Ec(cr,kn){let Pn=n.toPath(cr),an=U6e(cr,Pn,it,It,dt,Fe);if(an){let{dir:Kr,dirPath:wn,nonRecursive:Pe,packageDir:ar,packageDirPath:sn}=an;wn===It?(w.assert(Pe),w.assert(!ar),kn=!0):Wu(Kr,wn,ar,sn,Pe)}return kn}function xi(cr){w.assert(!!cr.refCount);let{failedLookupLocations:kn,affectingLocations:Pn,alternateResult:an}=cr;if(!kn?.length&&!Pn?.length&&!an)return;(kn?.length||an)&&R.add(cr);let Kr=!1;if(kn)for(let wn of kn)Kr=Ec(wn,Kr);an&&(Kr=Ec(an,Kr)),Kr&&Wu(it,It,void 0,void 0,!0),rc(cr,!kn?.length&&!an)}function rc(cr,kn){w.assert(!!cr.refCount);let{affectingLocations:Pn}=cr;if(Pn?.length){kn&&N.add(cr);for(let an of Pn)Vl(an,!0)}}function Vl(cr,kn){let Pn=qe.get(cr);if(Pn){kn?Pn.resolutions++:Pn.files++;return}let an=cr,Kr=!1,wn;n.realpath&&(an=n.realpath(cr),cr!==an&&(Kr=!0,wn=qe.get(an)));let Pe=kn?1:0,ar=kn?0:1;if(!Kr||!wn){let sn={watcher:Akt(n.toPath(an))?n.watchAffectingFileLocation(an,(Me,ur)=>{Ne?.addOrDeleteFile(Me,n.toPath(an),ur),ul(an,De.getPackageJsonInfoCache().getInternalMap()),n.scheduleInvalidateResolutionsOfFailedLookupLocations()}):gue,resolutions:Kr?0:Pe,files:Kr?0:ar,symlinks:void 0};qe.set(an,sn),Kr&&(wn=sn)}if(Kr){w.assert(!!wn);let sn={watcher:{close:()=>{var Me;let ur=qe.get(an);(Me=ur?.symlinks)!=null&&Me.delete(cr)&&!ur.symlinks.size&&!ur.resolutions&&!ur.files&&(qe.delete(an),ur.watcher.close())}},resolutions:Pe,files:ar,symlinks:void 0};qe.set(cr,sn),(wn.symlinks??(wn.symlinks=new Set)).add(cr)}}function ul(cr,kn){var Pn;let an=qe.get(cr);an?.resolutions&&(re??(re=new Set)).add(cr),an?.files&&(te??(te=new Set)).add(cr),(Pn=an?.symlinks)==null||Pn.forEach(Kr=>ul(Kr,kn)),kn?.delete(n.toPath(cr))}function Cc(cr,kn){let Pn=n.getCurrentProgram();!Pn||!Pn.getTypeChecker().tryFindAmbientModuleWithoutAugmentations(kn)?cr.forEach(xi):cr.forEach(an=>rc(an,!0))}function _s(cr,kn,Pn,an,Kr){w.assert(!Kr);let wn=wt.get(an),Pe=vt.get(an);if(wn===void 0){let Me=n.realpath(Pn);wn=Me!==Pn&&n.toPath(Me)!==an,wt.set(an,wn),Pe?Pe.isSymlink!==wn&&(Pe.dirPathToWatcher.forEach(ur=>{Hs(Pe.isSymlink?an:kn,!1),ur.watcher=sn()}),Pe.isSymlink=wn):vt.set(an,Pe={dirPathToWatcher:new Map,isSymlink:wn})}else w.assertIsDefined(Pe),w.assert(wn===Pe.isSymlink);let ar=Pe.dirPathToWatcher.get(kn);ar?ar.refCount++:(Pe.dirPathToWatcher.set(kn,{watcher:sn(),refCount:1}),wn&&Ye.set(kn,(Ye.get(kn)??0)+1));function sn(){return wn?ir(Pn,an,Kr):ir(cr,kn,Kr)}}function Wu(cr,kn,Pn,an,Kr){!an||!n.realpath?ir(cr,kn,Kr):_s(cr,kn,Pn,an,Kr)}function ir(cr,kn,Pn){let an=nt.get(kn);return an?(w.assert(!!Pn==!!an.nonRecursive),an.refCount++):nt.set(kn,an={watcher:qa(cr,kn,Pn),refCount:1,nonRecursive:Pn}),an}function ni(cr,kn,Pn){let an=n.toPath(cr),Kr=U6e(cr,an,it,It,dt,Fe);if(Kr){let{dirPath:wn,packageDirPath:Pe}=Kr;if(wn===It)kn=!0;else if(Pe&&n.realpath){let ar=vt.get(Pe),sn=ar.dirPathToWatcher.get(wn);if(sn.refCount--,sn.refCount===0){if(Hs(ar.isSymlink?Pe:wn,Pn),ar.dirPathToWatcher.delete(wn),ar.isSymlink){let Me=Ye.get(wn)-1;Me===0?Ye.delete(wn):Ye.set(wn,Me)}Pn&&Yr(ar,Pe)}}else Hs(wn,Pn)}return kn}function gs(cr,kn,Pn,an){if(w.checkDefined(cr.files).delete(kn),cr.refCount--,cr.refCount)return;let Kr=Pn(cr);if(Kr&&Kr.resolvedFileName){let sn=n.toPath(Kr.resolvedFileName),Me=V.get(sn);Me?.delete(cr)&&!Me.size&&V.delete(sn)}let{failedLookupLocations:wn,affectingLocations:Pe,alternateResult:ar}=cr;if(R.delete(cr)){let sn=!1;if(wn)for(let Me of wn)sn=ni(Me,sn,an);ar&&(sn=ni(ar,sn,an)),sn&&Hs(It,an)}else Pe?.length&&N.delete(cr);if(Pe)for(let sn of Pe){let Me=qe.get(sn);Me.resolutions--,an&&zr(Me,sn)}}function Hs(cr,kn){let Pn=nt.get(cr);Pn.refCount--,kn&&pr(Pn,cr)}function qa(cr,kn,Pn){return n.watchDirectoryOfFailedLookupLocation(cr,an=>{let Kr=n.toPath(an);Ne&&Ne.addOrDeleteFileOrDirectory(an,Kr),kr(Kr,kn===Kr)},Pn?0:1)}function nc(cr,kn,Pn,an){let Kr=cr.get(kn);Kr&&(Kr.forEach(wn=>gs(wn,kn,Pn,an)),cr.delete(kn))}function Nc(cr){if(!gd(cr,".json"))return;let kn=n.getCurrentProgram();if(!kn)return;let Pn=kn.getResolvedProjectReferenceByPath(cr);Pn&&Pn.commandLine.fileNames.forEach(an=>cg(n.toPath(an)))}function cg(cr,kn){nc(Qe,cr,Et,kn),nc(lt,cr,Kt,kn)}function Ku(cr,kn){if(!cr)return!1;let Pn=!1;return cr.forEach(an=>{if(!(an.isInvalidated||!kn(an))){an.isInvalidated=Pn=!0;for(let Kr of w.checkDefined(an.files))(I??(I=new Set)).add(Kr),M=M||pl(Kr,lue)}}),Pn}function Bi(cr){cg(cr);let kn=M;Ku(V.get(cr),pI)&&M&&!kn&&n.onChangedAutomaticTypeDirectiveNames()}function BA(cr){w.assert(h===cr||h===void 0),h=cr}function kr(cr,kn){if(kn)(de||(de=new Set)).add(cr);else{let Pn=sGe(cr);if(!Pn||(cr=Pn,n.fileIsOpen(cr)))return!1;let an=aa(cr);if(jn(cr)||TS(cr)||jn(an)||TS(an))(ue||(ue=new Set)).add(cr),(Ae||(Ae=new Set)).add(cr);else{if(Wxt(n.getCurrentProgram(),cr)||gd(cr,".map"))return!1;(ue||(ue=new Set)).add(cr);let Kr=i_e(cr,!0);Kr&&(Ae||(Ae=new Set)).add(Kr)}}n.scheduleInvalidateResolutionsOfFailedLookupLocations()}function en(){let cr=De.getPackageJsonInfoCache().getInternalMap();cr&&(ue||Ae||de)&&cr.forEach((kn,Pn)=>St(Pn)?cr.delete(Pn):void 0)}function ct(){var cr;if(Be)return te=void 0,en(),(ue||Ae||de||re)&&Ku(je,rn),ue=void 0,Ae=void 0,de=void 0,re=void 0,!0;let kn=!1;return te&&((cr=n.getCurrentProgram())==null||cr.getSourceFiles().forEach(Pn=>{lr(Pn.packageJsonLocations,an=>te.has(an))&&((I??(I=new Set)).add(Pn.path),kn=!0)}),te=void 0),!ue&&!Ae&&!de&&!re||(kn=Ku(R,rn)||kn,en(),ue=void 0,Ae=void 0,de=void 0,kn=Ku(N,br)||kn,re=void 0),kn}function rn(cr){var kn;return br(cr)?!0:!ue&&!Ae&&!de?!1:((kn=cr.failedLookupLocations)==null?void 0:kn.some(Pn=>St(n.toPath(Pn))))||!!cr.alternateResult&&St(n.toPath(cr.alternateResult))}function St(cr){return ue?.has(cr)||ae(Ae?.keys()||[],kn=>uc(cr,kn)?!0:void 0)||ae(de?.keys()||[],kn=>cr.length>kn.length&&uc(cr,kn)&&(V0(kn)||cr[kn.length]===qu)?!0:void 0)}function br(cr){var kn;return!!re&&((kn=cr.affectingLocations)==null?void 0:kn.some(Pn=>re.has(Pn)))}function Qt(){Y0(ht,RB)}function _r(cr){return ti(cr)?n.watchTypeRootsDirectory(cr,kn=>{let Pn=n.toPath(kn);Ne&&Ne.addOrDeleteFileOrDirectory(kn,Pn),M=!0,n.onChangedAutomaticTypeDirectiveNames();let an=pkt(cr,n.toPath(cr),It,dt,Fe,Kr=>nt.has(Kr)||Ye.has(Kr));an&&kr(Pn,an===Pn)},1):gue}function Pr(){let cr=n.getCompilationSettings();if(cr.types){Qt();return}let kn=Xle(cr,{getCurrentDirectory:Fe});kn?u6(ht,new Set(kn),{createNewValue:_r,onDeleteValue:RB}):Qt()}function ti(cr){return n.getCompilationSettings().typeRoots?!0:gkt(n.toPath(cr))}}function q7i(n){var c,u;return!!((c=n.resolvedModule)!=null&&c.originalPath||(u=n.resolvedTypeReferenceDirective)!=null&&u.originalPath)}var fFr=_d?{getCurrentDirectory:()=>_d.getCurrentDirectory(),getNewLine:()=>_d.newLine,getCanonicalFileName:tA(_d.useCaseSensitiveFileNames)}:void 0;function X6(n,c){let u=n===_d&&fFr?fFr:{getCurrentDirectory:()=>n.getCurrentDirectory(),getNewLine:()=>n.newLine,getCanonicalFileName:tA(n.useCaseSensitiveFileNames)};if(!c)return I=>n.write(w6e(I,u));let d=new Array(1);return I=>{d[0]=I,n.write(Xxt(d,u)+u.getNewLine()),d[0]=void 0}}function IFr(n,c,u){return n.clearScreen&&!u.preserveWatchOutput&&!u.extendedDiagnostics&&!u.diagnostics&&Ue(j6e,c.code)?(n.clearScreen(),!0):!1}var j6e=[Z.Starting_compilation_in_watch_mode.code,Z.File_change_detected_Starting_incremental_compilation.code];function $7i(n,c){return Ue(j6e,n.code)?c+c:c}function v_e(n){return n.now?n.now().toLocaleTimeString("en-US",{timeZone:"UTC"}).replace("\u202F"," "):new Date().toLocaleTimeString()}function z6e(n,c){return c?(u,d,I)=>{IFr(n,u,I);let h=`[${mY(v_e(n),"\x1B[90m")}] `;h+=`${xN(u.messageText,n.newLine)}${d+d}`,n.write(h)}:(u,d,I)=>{let h="";IFr(n,u,I)||(h+=d),h+=`${v_e(n)} - `,h+=`${xN(u.messageText,n.newLine)}${$7i(u,d)}`,n.write(h)}}function Ckt(n,c,u,d,I,h){let b=I;b.onUnRecoverableConfigFileDiagnostic=N=>hFr(I,h,N);let R=qhe(n,c,b,u,d);return b.onUnRecoverableConfigFileDiagnostic=void 0,R}function cGe(n){return ft(n,c=>c.category===1)}function lGe(n){return Gt(n,u=>u.category===1).map(u=>{if(u.file!==void 0)return`${u.file.fileName}`}).map(u=>{if(u===void 0)return;let d=be(n,I=>I.file!==void 0&&I.file.fileName===u);if(d!==void 0){let{line:I}=Ll(d.file,d.start);return{fileName:u,line:I+1}}})}function q6e(n){return n===1?Z.Found_1_error_Watching_for_file_changes:Z.Found_0_errors_Watching_for_file_changes}function CFr(n,c){let u=mY(":"+n.line,"\x1B[90m");return II(n.fileName)&&II(c)?fp(c,n.fileName,!1)+u:n.fileName+u}function $6e(n,c,u,d){if(n===0)return"";let I=c.filter(P=>P!==void 0),h=I.map(P=>`${P.fileName}:${P.line}`).filter((P,M,te)=>te.indexOf(P)===M),b=I[0]&&CFr(I[0],d.getCurrentDirectory()),R;n===1?R=c[0]!==void 0?[Z.Found_1_error_in_0,b]:[Z.Found_1_error]:R=h.length===0?[Z.Found_0_errors,n]:h.length===1?[Z.Found_0_errors_in_the_same_file_starting_at_Colon_1,n,b]:[Z.Found_0_errors_in_1_files,n,h.length];let N=ff(...R),V=h.length>1?eji(I,d):"";return`${u}${xN(N.messageText,u)}${u}${u}${V}`}function eji(n,c){let u=n.filter((M,te,re)=>te===re.findIndex(ue=>ue?.fileName===M?.fileName));if(u.length===0)return"";let d=M=>Math.log(M)*Math.LOG10E+1,I=u.map(M=>[M,ft(n,te=>te.fileName===M.fileName)]),h=I.reduce((M,te)=>Math.max(M,te[1]||0),0),b=Z.Errors_Files.message,R=b.split(" ")[0].length,N=Math.max(R,d(h)),V=Math.max(d(h)-R,0),P="";return P+=" ".repeat(V)+b+` -`,I.forEach(M=>{let[te,re]=M,ue=Math.log(re)*Math.LOG10E+1|0,Ae=ue{c(d.fileName)})}function t7e(n,c){var u,d;let I=n.getFileIncludeReasons(),h=b=>TE(b,n.getCurrentDirectory(),n.getCanonicalFileName);for(let b of n.getSourceFiles())c(`${Dte(b,h)}`),(u=I.get(b.path))==null||u.forEach(R=>c(` ${s7e(n,R,h).messageText}`)),(d=r7e(b,h))==null||d.forEach(R=>c(` ${R.messageText}`))}function r7e(n,c){var u;let d;if(n.path!==n.resolvedPath&&(d??(d=[])).push(su(void 0,Z.File_is_output_of_project_reference_source_0,Dte(n.originalFileName,c))),n.redirectInfo&&(d??(d=[])).push(su(void 0,Z.File_redirects_to_file_0,Dte(n.redirectInfo.redirectTarget,c))),ia(n))switch(n.impliedNodeFormat){case 99:n.packageJsonScope&&(d??(d=[])).push(su(void 0,Z.File_is_ECMAScript_module_because_0_has_field_type_with_value_module,Dte(Na(n.packageJsonLocations),c)));break;case 1:n.packageJsonScope?(d??(d=[])).push(su(void 0,n.packageJsonScope.contents.packageJsonContent.type?Z.File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module:Z.File_is_CommonJS_module_because_0_does_not_have_field_type,Dte(Na(n.packageJsonLocations),c))):(u=n.packageJsonLocations)!=null&&u.length&&(d??(d=[])).push(su(void 0,Z.File_is_CommonJS_module_because_package_json_was_not_found));break}return d}function n7e(n,c){var u;let d=n.getCompilerOptions().configFile;if(!((u=d?.configFileSpecs)!=null&&u.validatedFilesSpec))return;let I=n.getCanonicalFileName(c),h=aa(Oc(d.fileName,n.getCurrentDirectory())),b=ke(d.configFileSpecs.validatedFilesSpec,R=>n.getCanonicalFileName(Oc(R,h))===I);return b!==-1?d.configFileSpecs.validatedFilesSpecBeforeSubstitution[b]:void 0}function i7e(n,c){var u,d;let I=n.getCompilerOptions().configFile;if(!((u=I?.configFileSpecs)!=null&&u.validatedIncludeSpecs))return;if(I.configFileSpecs.isDefaultIncludeSpec)return!0;let h=gd(c,".json"),b=aa(Oc(I.fileName,n.getCurrentDirectory())),R=n.useCaseSensitiveFileNames(),N=ke((d=I?.configFileSpecs)==null?void 0:d.validatedIncludeSpecs,V=>{if(h&&!pl(V,".json"))return!1;let P=HDe(V,b,"files");return!!P&&EG(`(${P})$`,R).test(c)});return N!==-1?I.configFileSpecs.validatedIncludeSpecsBeforeSubstitution[N]:void 0}function s7e(n,c,u){var d,I;let h=n.getCompilerOptions();if(gP(c)){let b=uue(n,c),R=Tte(b)?b.file.text.substring(b.pos,b.end):`"${b.text}"`,N;switch(w.assert(Tte(b)||c.kind===3,"Only synthetic references are imports"),c.kind){case 3:Tte(b)?N=b.packageId?Z.Imported_via_0_from_file_1_with_packageId_2:Z.Imported_via_0_from_file_1:b.text===vx?N=b.packageId?Z.Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions:Z.Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions:N=b.packageId?Z.Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions:Z.Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions;break;case 4:w.assert(!b.packageId),N=Z.Referenced_via_0_from_file_1;break;case 5:N=b.packageId?Z.Type_library_referenced_via_0_from_file_1_with_packageId_2:Z.Type_library_referenced_via_0_from_file_1;break;case 7:w.assert(!b.packageId),N=Z.Library_referenced_via_0_from_file_1;break;default:w.assertNever(c)}return su(void 0,N,R,Dte(b.file,u),b.packageId&&YR(b.packageId))}switch(c.kind){case 0:if(!((d=h.configFile)!=null&&d.configFileSpecs))return su(void 0,Z.Root_file_specified_for_compilation);let b=Oc(n.getRootFileNames()[c.index],n.getCurrentDirectory());if(n7e(n,b))return su(void 0,Z.Part_of_files_list_in_tsconfig_json);let N=i7e(n,b);return Xa(N)?su(void 0,Z.Matched_by_include_pattern_0_in_1,N,Dte(h.configFile,u)):su(void 0,N?Z.Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk:Z.Root_file_specified_for_compilation);case 1:case 2:let V=c.kind===2,P=w.checkDefined((I=n.getResolvedProjectReferences())==null?void 0:I[c.index]);return su(void 0,h.outFile?V?Z.Output_from_referenced_project_0_included_because_1_specified:Z.Source_from_referenced_project_0_included_because_1_specified:V?Z.Output_from_referenced_project_0_included_because_module_is_specified_as_none:Z.Source_from_referenced_project_0_included_because_module_is_specified_as_none,Dte(P.sourceFile.fileName,u),h.outFile?"--outFile":"--out");case 8:{let M=h.types?c.packageId?[Z.Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1,c.typeReference,YR(c.packageId)]:[Z.Entry_point_of_type_library_0_specified_in_compilerOptions,c.typeReference]:c.packageId?[Z.Entry_point_for_implicit_type_library_0_with_packageId_1,c.typeReference,YR(c.packageId)]:[Z.Entry_point_for_implicit_type_library_0,c.typeReference];return su(void 0,...M)}case 6:{if(c.index!==void 0)return su(void 0,Z.Library_0_specified_in_compilerOptions,h.lib[c.index]);let M=Vee(iA(h)),te=M?[Z.Default_library_for_target_0,M]:[Z.Default_library];return su(void 0,...te)}default:w.assertNever(c)}}function Dte(n,c){let u=Xa(n)?n:n.fileName;return c?c(u):u}function uGe(n,c,u,d,I,h,b,R){let N=!!n.getCompilerOptions().listFilesOnly,V=n.getConfigFileParsingDiagnostics().slice(),P=V.length;ai(V,n.getSyntacticDiagnostics(void 0,h)),V.length===P&&(ai(V,n.getOptionsDiagnostics(h)),N||(ai(V,n.getGlobalDiagnostics(h)),V.length===P&&ai(V,n.getSemanticDiagnostics(void 0,h))));let M=N?{emitSkipped:!0,diagnostics:v}:n.emit(void 0,I,h,b,R),{emittedFiles:te,diagnostics:re}=M;ai(V,re);let ue=nA(V);if(ue.forEach(c),u){let Ae=n.getCurrentDirectory();X(te,de=>{let Be=Oc(de,Ae);u(`TSFILE: ${Be}`)}),e7e(n,u)}return d&&d(cGe(ue),lGe(ue)),{emitResult:M,diagnostics:ue}}function o7e(n,c,u,d,I,h,b,R){let{emitResult:N,diagnostics:V}=uGe(n,c,u,d,I,h,b,R);return N.emitSkipped&&V.length>0?1:V.length>0?2:0}var gue={close:oc},Aue=()=>gue;function a7e(n=_d,c){return{onWatchStatusChange:c||z6e(n),watchFile:Hi(n,n.watchFile)||Aue,watchDirectory:Hi(n,n.watchDirectory)||Aue,setTimeout:Hi(n,n.setTimeout)||oc,clearTimeout:Hi(n,n.clearTimeout)||oc}}var hm={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 c7e(n,c){let u=n.trace?c.extendedDiagnostics?2:c.diagnostics?1:0:0,d=u!==0?h=>n.trace(h):oc,I=b6e(n,u,d);return I.writeLog=d,I}function l7e(n,c,u=n){let d=n.useCaseSensitiveFileNames(),I={getSourceFile:v6e((h,b)=>b?n.readFile(h,b):I.readFile(h),void 0),getDefaultLibLocation:Hi(n,n.getDefaultLibLocation),getDefaultLibFileName:h=>n.getDefaultLibFileName(h),writeFile:S6e((h,b,R)=>n.writeFile(h,b,R),h=>n.createDirectory(h),h=>n.directoryExists(h)),getCurrentDirectory:iu(()=>n.getCurrentDirectory()),useCaseSensitiveFileNames:()=>d,getCanonicalFileName:tA(d),getNewLine:()=>G1(c()),fileExists:h=>n.fileExists(h),readFile:h=>n.readFile(h),trace:Hi(n,n.trace),directoryExists:Hi(u,u.directoryExists),getDirectories:Hi(u,u.getDirectories),realpath:Hi(n,n.realpath),getEnvironmentVariable:Hi(n,n.getEnvironmentVariable)||(()=>""),createHash:Hi(n,n.createHash),readDirectory:Hi(n,n.readDirectory),storeSignatureInfo:n.storeSignatureInfo,jsDocParsingMode:n.jsDocParsingMode};return I}function gGe(n,c){if(c.match(WDt)){let u=c.length,d=u;for(let I=u-1;I>=0;I--){let h=c.charCodeAt(I);switch(h){case 10:I&&c.charCodeAt(I-1)===13&&I--;case 13:break;default:if(h<127||!HC(h)){d=I;continue}break}let b=c.substring(d,u);if(b.match(j8e)){c=c.substring(0,d);break}else if(!b.match(z8e))break;u=d}}return(n.createHash||Bh)(c)}function AGe(n){let c=n.getSourceFile;n.getSourceFile=(...u)=>{let d=c.call(n,...u);return d&&(d.version=gGe(n,d.text)),d}}function u7e(n,c){let u=iu(()=>aa(Mc(n.getExecutingFilePath())));return{useCaseSensitiveFileNames:()=>n.useCaseSensitiveFileNames,getNewLine:()=>n.newLine,getCurrentDirectory:iu(()=>n.getCurrentDirectory()),getDefaultLibLocation:u,getDefaultLibFileName:d=>xo(u(),Ig(d)),fileExists:d=>n.fileExists(d),readFile:(d,I)=>n.readFile(d,I),directoryExists:d=>n.directoryExists(d),getDirectories:d=>n.getDirectories(d),readDirectory:(d,I,h,b,R)=>n.readDirectory(d,I,h,b,R),realpath:Hi(n,n.realpath),getEnvironmentVariable:Hi(n,n.getEnvironmentVariable),trace:d=>n.write(d+n.newLine),createDirectory:d=>n.createDirectory(d),writeFile:(d,I,h)=>n.writeFile(d,I,h),createHash:Hi(n,n.createHash),createProgram:c||J6e,storeSignatureInfo:n.storeSignatureInfo,now:Hi(n,n.now)}}function mFr(n=_d,c,u,d){let I=b=>n.write(b+n.newLine),h=u7e(n,c);return Os(h,a7e(n,d)),h.afterProgramCreate=b=>{let R=b.getCompilerOptions(),N=G1(R);uGe(b,u,I,V=>h.onWatchStatusChange(ff(q6e(V),V),N,R,V))},h}function hFr(n,c,u){c(u),n.exit(1)}function g7e({configFileName:n,optionsToExtend:c,watchOptionsToExtend:u,extraFileExtensions:d,system:I,createProgram:h,reportDiagnostic:b,reportWatchStatus:R}){let N=b||X6(I),V=mFr(I,h,N,R);return V.onUnRecoverableConfigFileDiagnostic=P=>hFr(I,N,P),V.configFileName=n,V.optionsToExtend=c,V.watchOptionsToExtend=u,V.extraFileExtensions=d,V}function A7e({rootFiles:n,options:c,watchOptions:u,projectReferences:d,system:I,createProgram:h,reportDiagnostic:b,reportWatchStatus:R}){let N=mFr(I,h,b||X6(I),R);return N.rootFiles=n,N.options=c,N.watchOptions=u,N.projectReferences=d,N}function hkt(n){let c=n.system||_d,u=n.host||(n.host=pGe(n.options,c)),d=_kt(n),I=o7e(d,n.reportDiagnostic||X6(c),h=>u.trace&&u.trace(h),n.reportErrorSummary||n.options.pretty?(h,b)=>c.write($6e(h,b,c.newLine,u)):void 0);return n.afterProgramEmitAndDiagnostics&&n.afterProgramEmitAndDiagnostics(d),I}function dGe(n,c){let u=ZZ(n);if(!u)return;let d;if(c.getBuildInfo)d=c.getBuildInfo(u,n.configFilePath);else{let I=c.readFile(u);if(!I)return;d=h6e(u,I)}if(!(!d||d.version!==y||!d.program))return lkt(d,u,c)}function pGe(n,c=_d){let u=zke(n,void 0,c);return u.createHash=Hi(c,c.createHash),u.storeSignatureInfo=c.storeSignatureInfo,AGe(u),cue(u,d=>gA(d,u.getCurrentDirectory(),u.getCanonicalFileName)),u}function _kt({rootNames:n,options:c,configFileParsingDiagnostics:u,projectReferences:d,host:I,createProgram:h}){I=I||pGe(c),h=h||J6e;let b=dGe(c,I);return h(n,c,I,b,u,d)}function _Fr(n,c,u,d,I,h,b,R){return Ra(n)?A7e({rootFiles:n,options:c,watchOptions:R,projectReferences:b,system:u,createProgram:d,reportDiagnostic:I,reportWatchStatus:h}):g7e({configFileName:n,optionsToExtend:c,watchOptionsToExtend:b,extraFileExtensions:R,system:u,createProgram:d,reportDiagnostic:I,reportWatchStatus:h})}function d7e(n){let c,u,d,I,h,b,R,N,V=n.extendedConfigCache,P=!1,M=new Map,te,re=!1,ue=n.useCaseSensitiveFileNames(),Ae=n.getCurrentDirectory(),{configFileName:de,optionsToExtend:Be={},watchOptionsToExtend:Fe,extraFileExtensions:Ne,createProgram:Qe}=n,{rootFiles:De,options:lt,watchOptions:Le,projectReferences:je}=n,st,nt,qe=!1,it=!1,It=de===void 0?void 0:Uke(n,Ae,ue),dt=It||n,wt=nGe(n,dt),vt=gi();de&&n.configFileParsingResult&&(kr(n.configFileParsingResult),vt=gi()),_s(Z.Starting_compilation_in_watch_mode),de&&!n.configFileParsingResult&&(vt=G1(Be),w.assert(!De),BA(),vt=gi()),w.assert(lt),w.assert(De);let{watchFile:Ye,watchDirectory:ht,writeLog:Et}=c7e(n,lt),Kt=tA(ue);Et(`Current directory: ${Ae} CaseSensitiveFileNames: ${ue}`);let Tt;de&&(Tt=Ye(de,qa,2e3,Le,hm.ConfigFile));let Lt,kt=Ikr(__filename);kt&&(Lt=Ye(kt,nc,2e3,Le,hm.ConfigFile));let Zt=l7e(n,()=>lt,dt);AGe(Zt);let Dr=Zt.getSourceFile;Zt.getSourceFile=(an,...Kr)=>rc(an,jn(an),...Kr),Zt.getSourceFileByPath=rc,Zt.getNewLine=()=>vt,Zt.fileExists=xi,Zt.onReleaseOldSourceFile=Cc,Zt.onReleaseParsedCommandLine=rn,Zt.toPath=jn,Zt.getCompilationSettings=()=>lt,Zt.useSourceOfProjectReferenceRedirect=Hi(n,n.useSourceOfProjectReferenceRedirect),Zt.watchDirectoryOfFailedLookupLocation=(an,Kr,wn)=>ht(an,Kr,wn,Le,hm.FailedLookupLocations),Zt.watchAffectingFileLocation=(an,Kr)=>Ye(an,Kr,2e3,Le,hm.AffectingFileLocation),Zt.watchTypeRootsDirectory=(an,Kr,wn)=>ht(an,Kr,wn,Le,hm.TypeRoots),Zt.getCachedDirectoryStructureHost=()=>It,Zt.scheduleInvalidateResolutionsOfFailedLookupLocations=ni,Zt.onInvalidatedResolution=Hs,Zt.onChangedAutomaticTypeDirectiveNames=Hs,Zt.fileIsOpen=TC,Zt.getCurrentProgram=$n,Zt.writeLog=Et,Zt.getParsedCommandLine=en;let jt=K6e(Zt,de?aa(Oc(de,Ae)):Ae,!1);Zt.resolveModuleNameLiterals=Hi(n,n.resolveModuleNameLiterals),Zt.resolveModuleNames=Hi(n,n.resolveModuleNames),!Zt.resolveModuleNameLiterals&&!Zt.resolveModuleNames&&(Zt.resolveModuleNameLiterals=jt.resolveModuleNameLiterals.bind(jt)),Zt.resolveTypeReferenceDirectiveReferences=Hi(n,n.resolveTypeReferenceDirectiveReferences),Zt.resolveTypeReferenceDirectives=Hi(n,n.resolveTypeReferenceDirectives),!Zt.resolveTypeReferenceDirectiveReferences&&!Zt.resolveTypeReferenceDirectives&&(Zt.resolveTypeReferenceDirectiveReferences=jt.resolveTypeReferenceDirectiveReferences.bind(jt)),Zt.resolveLibrary=n.resolveLibrary?n.resolveLibrary.bind(n):jt.resolveLibrary.bind(jt),Zt.getModuleResolutionCache=n.resolveModuleNameLiterals||n.resolveModuleNames?Hi(n,n.getModuleResolutionCache):()=>jt.getModuleResolutionCache();let Pt=!!n.resolveModuleNameLiterals||!!n.resolveTypeReferenceDirectiveReferences||!!n.resolveModuleNames||!!n.resolveTypeReferenceDirectives?Hi(n,n.hasInvalidatedResolutions)||pI:TC,Vr=n.resolveLibrary?Hi(n,n.hasInvalidatedLibResolutions)||pI:TC;return c=dGe(lt,Zt),bi(),ti(),de&&kn(jn(de),lt,Le,hm.ExtendedConfigFile),de?{getCurrentProgram:zr,getProgram:cg,close:Yr,getResolutionCache:pr}:{getCurrentProgram:zr,getProgram:cg,updateRootFileNames:Ns,close:Yr,getResolutionCache:pr};function Yr(){ir(),jt.clear(),Y0(M,an=>{an&&an.fileWatcher&&(an.fileWatcher.close(),an.fileWatcher=void 0)}),Tt&&(Tt.close(),Tt=void 0),Lt&&(Lt.close(),Lt=void 0),V?.clear(),V=void 0,N&&(Y0(N,ZB),N=void 0),I&&(Y0(I,ZB),I=void 0),d&&(Y0(d,RB),d=void 0),R&&(Y0(R,an=>{var Kr;(Kr=an.watcher)==null||Kr.close(),an.watcher=void 0,an.watchedDirectories&&Y0(an.watchedDirectories,ZB),an.watchedDirectories=void 0}),R=void 0),c=void 0}function pr(){return jt}function zr(){return c}function $n(){return c&&c.getProgramOrUndefined()}function bi(an=!1){Et("Synchronizing program"),w.assert(lt),w.assert(De),ir();let Kr=zr();re&&(vt=gi(),Kr&&wB(Kr.getCompilerOptions(),lt)&&jt.onChangesAffectModuleResolution());let{hasInvalidatedResolutions:wn,hasInvalidatedLibResolutions:Pe}=jt.createHasInvalidatedResolutions(an?pI:Pt,Vr),{originalReadFile:ar,originalFileExists:sn,originalDirectoryExists:Me,originalCreateDirectory:ur,originalWriteFile:Re,readFileWithCache:Jt}=cue(Zt,jn);return L6e($n(),De,lt,bt=>ul(bt,Jt),bt=>Zt.fileExists(bt),wn,Pe,Wu,en,je)?it&&(P&&_s(Z.File_change_detected_Starting_incremental_compilation),c=Qe(void 0,void 0,Zt,c,nt,je),it=!1):(P&&_s(Z.File_change_detected_Starting_incremental_compilation),Pi(wn,Pe)),P=!1,n.afterProgramCreate&&Kr!==c&&n.afterProgramCreate(c),Zt.readFile=ar,Zt.fileExists=sn,Zt.directoryExists=Me,Zt.createDirectory=ur,Zt.writeFile=Re,c}function Pi(an,Kr){Et("CreatingProgramWith::"),Et(` roots: ${JSON.stringify(De)}`),Et(` options: ${JSON.stringify(lt)}`),je&&Et(` projectReferences: ${JSON.stringify(je)}`);let wn=re||!$n();re=!1,it=!1,jt.startCachingPerDirectoryResolution(),Zt.hasInvalidatedResolutions=an,Zt.hasInvalidatedLibResolutions=Kr,Zt.hasChangedAutomaticTypeDirectiveNames=Wu;let Pe=$n();if(c=Qe(De,lt,Zt,c,nt,je),jt.finishCachingPerDirectoryResolution(c.getProgram(),Pe),y6e(c.getProgram(),d||(d=new Map),_r),wn&&jt.updateTypeRootsWatch(),te){for(let ar of te)d.has(ar)||M.delete(ar);te=void 0}}function Ns(an){w.assert(!de,"Cannot update root file names with config file watch mode"),De=an,Hs()}function gi(){return G1(lt||Be)}function jn(an){return gA(an,Ae,Kt)}function xs(an){return typeof an=="boolean"}function Ec(an){return typeof an.version=="boolean"}function xi(an){let Kr=jn(an);return xs(M.get(Kr))?!1:dt.fileExists(an)}function rc(an,Kr,wn,Pe,ar){let sn=M.get(Kr);if(xs(sn))return;let Me=typeof wn=="object"?wn.impliedNodeFormat:void 0;if(sn===void 0||ar||Ec(sn)||sn.sourceFile.impliedNodeFormat!==Me){let ur=Dr(an,wn,Pe);if(sn)ur?(sn.sourceFile=ur,sn.version=ur.version,sn.fileWatcher||(sn.fileWatcher=St(Kr,an,br,250,Le,hm.SourceFile))):(sn.fileWatcher&&sn.fileWatcher.close(),M.set(Kr,!1));else if(ur){let Re=St(Kr,an,br,250,Le,hm.SourceFile);M.set(Kr,{sourceFile:ur,version:ur.version,fileWatcher:Re})}else M.set(Kr,!1);return ur}return sn.sourceFile}function Vl(an){let Kr=M.get(an);Kr!==void 0&&(xs(Kr)?M.set(an,{version:!1}):Kr.version=!1)}function ul(an,Kr){let wn=M.get(an);if(!wn)return;if(wn.version)return wn.version;let Pe=Kr(an);return Pe!==void 0?gGe(Zt,Pe):void 0}function Cc(an,Kr,wn){let Pe=M.get(an.resolvedPath);Pe!==void 0&&(xs(Pe)?(te||(te=[])).push(an.path):Pe.sourceFile===an&&(Pe.fileWatcher&&Pe.fileWatcher.close(),M.delete(an.resolvedPath),wn||jt.removeResolutionsOfFile(an.path)))}function _s(an){n.onWatchStatusChange&&n.onWatchStatusChange(ff(an),vt,lt||Be)}function Wu(){return jt.hasChangedAutomaticTypeDirectiveNames()}function ir(){return b?(n.clearTimeout(b),b=void 0,!0):!1}function ni(){if(!n.setTimeout||!n.clearTimeout)return jt.invalidateResolutionsOfFailedLookupLocations();let an=ir();Et(`Scheduling invalidateFailedLookup${an?", Cancelled earlier one":""}`),b=n.setTimeout(gs,250,"timerToInvalidateFailedLookupResolutions")}function gs(){b=void 0,jt.invalidateResolutionsOfFailedLookupLocations()&&Hs()}function Hs(){!n.setTimeout||!n.clearTimeout||(h&&n.clearTimeout(h),Et("Scheduling update"),h=n.setTimeout(Nc,250,"timerToUpdateProgram"))}function qa(){w.assert(!!de),u=2,Hs()}function nc(){Et("Clearing resolutions"),jt.clear(),u=3,Hs()}function Nc(){h=void 0,P=!0,cg()}function cg(){var an,Kr,wn,Pe,ar;switch(u){case 1:(an=Kl)==null||an.logStartUpdateProgram("PartialConfigReload"),Ku();break;case 2:(Kr=Kl)==null||Kr.logStartUpdateProgram("FullConfigReload"),Bi();break;case 3:(wn=Kl)==null||wn.logStartUpdateProgram("SynchronizeProgramWithResolutions"),bi(!0);break;default:(Pe=Kl)==null||Pe.logStartUpdateProgram("SynchronizeProgram"),bi();break}return(ar=Kl)==null||ar.logStopUpdateProgram("Done"),zr()}function Ku(){Et("Reloading new file names and options"),w.assert(lt),w.assert(de),u=0,De=Yle(lt.configFile.configFileSpecs,Oc(aa(de),Ae),lt,wt,Ne),hke(De,Oc(de,Ae),lt.configFile.configFileSpecs,nt,qe)&&(it=!0),bi()}function Bi(){w.assert(de),Et(`Reloading config file: ${de}`),u=0,It&&It.clearCache(),BA(),re=!0,bi(),ti(),kn(jn(de),lt,Le,hm.ExtendedConfigFile)}function BA(){w.assert(de),kr(qhe(de,Be,wt,V||(V=new Map),Fe,Ne))}function kr(an){De=an.fileNames,lt=an.options,Le=an.watchOptions,je=an.projectReferences,st=an.wildcardDirectories,nt=hY(an).slice(),qe=Qle(an.raw),it=!0}function en(an){let Kr=jn(an),wn=R?.get(Kr);if(wn){if(!wn.updateLevel)return wn.parsedCommandLine;if(wn.parsedCommandLine&&wn.updateLevel===1&&!n.getParsedCommandLine){Et("Reloading new file names and options"),w.assert(lt);let ar=Yle(wn.parsedCommandLine.options.configFile.configFileSpecs,Oc(aa(an),Ae),lt,wt);return wn.parsedCommandLine={...wn.parsedCommandLine,fileNames:ar},wn.updateLevel=void 0,wn.parsedCommandLine}}Et(`Loading config file: ${an}`);let Pe=n.getParsedCommandLine?n.getParsedCommandLine(an):ct(an);return wn?(wn.parsedCommandLine=Pe,wn.updateLevel=void 0):(R||(R=new Map)).set(Kr,wn={parsedCommandLine:Pe}),Pn(an,Kr,wn),Pe}function ct(an){let Kr=wt.onUnRecoverableConfigFileDiagnostic;wt.onUnRecoverableConfigFileDiagnostic=oc;let wn=qhe(an,void 0,wt,V||(V=new Map),Fe);return wt.onUnRecoverableConfigFileDiagnostic=Kr,wn}function rn(an){var Kr;let wn=jn(an),Pe=R?.get(wn);Pe&&(R.delete(wn),Pe.watchedDirectories&&Y0(Pe.watchedDirectories,ZB),(Kr=Pe.watcher)==null||Kr.close(),_6e(wn,N))}function St(an,Kr,wn,Pe,ar,sn){return Ye(Kr,(Me,ur)=>wn(Me,ur,an),Pe,ar,sn)}function br(an,Kr,wn){Qt(an,wn,Kr),Kr===2&&M.has(wn)&&jt.invalidateResolutionOfFile(wn),Vl(wn),Hs()}function Qt(an,Kr,wn){It&&It.addOrDeleteFile(an,Kr,wn)}function _r(an,Kr){return R?.has(an)?gue:St(an,Kr,Pr,500,Le,hm.MissingFile)}function Pr(an,Kr,wn){Qt(an,wn,Kr),Kr===0&&d.has(wn)&&(d.get(wn).close(),d.delete(wn),Vl(wn),Hs())}function ti(){C_e(I||(I=new Map),st,cr)}function cr(an,Kr){return ht(an,wn=>{w.assert(de),w.assert(lt);let Pe=jn(wn);It&&It.addOrDeleteFileOrDirectory(wn,Pe),Vl(Pe),!m_e({watchedDirPath:jn(an),fileOrDirectory:wn,fileOrDirectoryPath:Pe,configFileName:de,extraFileExtensions:Ne,options:lt,program:zr()||De,currentDirectory:Ae,useCaseSensitiveFileNames:ue,writeLog:Et,toPath:jn})&&u!==2&&(u=1,Hs())},Kr,Le,hm.WildcardDirectory)}function kn(an,Kr,wn,Pe){Kke(an,Kr,N||(N=new Map),(ar,sn)=>Ye(ar,(Me,ur)=>{var Re;Qt(ar,sn,ur),V&&jke(V,sn,jn);let Jt=(Re=N.get(sn))==null?void 0:Re.projects;Jt?.size&&Jt.forEach(bt=>{if(de&&jn(de)===bt)u=2;else{let Vt=R?.get(bt);Vt&&(Vt.updateLevel=2),jt.removeResolutionsFromProjectReferenceRedirects(bt)}Hs()})},2e3,wn,Pe),jn)}function Pn(an,Kr,wn){var Pe,ar,sn,Me;wn.watcher||(wn.watcher=Ye(an,(ur,Re)=>{Qt(an,Kr,Re);let Jt=R?.get(Kr);Jt&&(Jt.updateLevel=2),jt.removeResolutionsFromProjectReferenceRedirects(Kr),Hs()},2e3,((Pe=wn.parsedCommandLine)==null?void 0:Pe.watchOptions)||Le,hm.ConfigFileOfReferencedProject)),C_e(wn.watchedDirectories||(wn.watchedDirectories=new Map),(ar=wn.parsedCommandLine)==null?void 0:ar.wildcardDirectories,(ur,Re)=>{var Jt;return ht(ur,bt=>{let Vt=jn(bt);It&&It.addOrDeleteFileOrDirectory(bt,Vt),Vl(Vt);let dn=R?.get(Kr);dn?.parsedCommandLine&&(m_e({watchedDirPath:jn(ur),fileOrDirectory:bt,fileOrDirectoryPath:Vt,configFileName:an,options:dn.parsedCommandLine.options,program:dn.parsedCommandLine.fileNames,currentDirectory:Ae,useCaseSensitiveFileNames:ue,writeLog:Et,toPath:jn})||dn.updateLevel!==2&&(dn.updateLevel=1,Hs()))},Re,((Jt=wn.parsedCommandLine)==null?void 0:Jt.watchOptions)||Le,hm.WildcardDirectoryOfReferencedProject)}),kn(Kr,(sn=wn.parsedCommandLine)==null?void 0:sn.options,((Me=wn.parsedCommandLine)==null?void 0:Me.watchOptions)||Le,hm.ExtendedConfigOfReferencedProject)}}var ykt=(n=>(n[n.Unbuildable=0]="Unbuildable",n[n.UpToDate=1]="UpToDate",n[n.UpToDateWithUpstreamTypes=2]="UpToDateWithUpstreamTypes",n[n.OutputMissing=3]="OutputMissing",n[n.ErrorReadingFile=4]="ErrorReadingFile",n[n.OutOfDateWithSelf=5]="OutOfDateWithSelf",n[n.OutOfDateWithUpstream=6]="OutOfDateWithUpstream",n[n.OutOfDateBuildInfo=7]="OutOfDateBuildInfo",n[n.OutOfDateOptions=8]="OutOfDateOptions",n[n.OutOfDateRoots=9]="OutOfDateRoots",n[n.UpstreamOutOfDate=10]="UpstreamOutOfDate",n[n.UpstreamBlocked=11]="UpstreamBlocked",n[n.ComputingUpstream=12]="ComputingUpstream",n[n.TsVersionOutputOfDate=13]="TsVersionOutputOfDate",n[n.UpToDateWithInputFileText=14]="UpToDateWithInputFileText",n[n.ContainerOnly=15]="ContainerOnly",n[n.ForceBuild=16]="ForceBuild",n))(ykt||{});function p7e(n){return gd(n,".json")?n:xo(n,"tsconfig.json")}var tji=new Date(-864e13),rji=new Date(864e13);function nji(n,c,u){let d=n.get(c),I;return d||(I=u(),n.set(c,I)),d||I}function bkt(n,c){return nji(n,c,()=>new Map)}function S_e(n){return n.now?n.now():new Date}function J6(n){return!!n&&!!n.buildOrder}function w_e(n){return J6(n)?n.buildOrder:n}function fGe(n,c){return u=>{let d=c?`[${mY(v_e(n),"\x1B[90m")}] `:`${v_e(n)} - `;d+=`${xN(u.messageText,n.newLine)}${n.newLine+n.newLine}`,n.write(d)}}function yFr(n,c,u,d){let I=u7e(n,c);return I.getModifiedTime=n.getModifiedTime?h=>n.getModifiedTime(h):SI,I.setModifiedTime=n.setModifiedTime?(h,b)=>n.setModifiedTime(h,b):oc,I.deleteFile=n.deleteFile?h=>n.deleteFile(h):oc,I.reportDiagnostic=u||X6(n),I.reportSolutionBuilderStatus=d||fGe(n),I.now=Hi(n,n.now),I}function Ekt(n=_d,c,u,d,I){let h=yFr(n,c,u,d);return h.reportErrorSummary=I,h}function Bkt(n=_d,c,u,d,I){let h=yFr(n,c,u,d),b=a7e(n,I);return Os(h,b),h}function iji(n){let c={};return cke.forEach(u=>{Qa(n,u.name)&&(c[u.name]=n[u.name])}),c}function vkt(n,c,u){return YFr(!1,n,c,u)}function Skt(n,c,u,d){return YFr(!0,n,c,u,d)}function sji(n,c,u,d,I){let h=c,b=c,R=iji(d),N=l7e(h,()=>Ae.projectCompilerOptions);AGe(N),N.getParsedCommandLine=de=>xte(Ae,de,iD(Ae,de)),N.resolveModuleNameLiterals=Hi(h,h.resolveModuleNameLiterals),N.resolveTypeReferenceDirectiveReferences=Hi(h,h.resolveTypeReferenceDirectiveReferences),N.resolveLibrary=Hi(h,h.resolveLibrary),N.resolveModuleNames=Hi(h,h.resolveModuleNames),N.resolveTypeReferenceDirectives=Hi(h,h.resolveTypeReferenceDirectives),N.getModuleResolutionCache=Hi(h,h.getModuleResolutionCache);let V,P;!N.resolveModuleNameLiterals&&!N.resolveModuleNames&&(V=_te(N.getCurrentDirectory(),N.getCanonicalFileName),N.resolveModuleNameLiterals=(de,Be,Fe,Ne,Qe)=>y_e(de,Be,Fe,Ne,Qe,h,V,k6e),N.getModuleResolutionCache=()=>V),!N.resolveTypeReferenceDirectiveReferences&&!N.resolveTypeReferenceDirectives&&(P=vke(N.getCurrentDirectory(),N.getCanonicalFileName,void 0,V?.getPackageJsonInfoCache(),V?.optionsToRedirectsKey),N.resolveTypeReferenceDirectiveReferences=(de,Be,Fe,Ne,Qe)=>y_e(de,Be,Fe,Ne,Qe,h,P,qke));let M;N.resolveLibrary||(M=_te(N.getCurrentDirectory(),N.getCanonicalFileName,void 0,V?.getPackageJsonInfoCache()),N.resolveLibrary=(de,Be,Fe)=>Ske(de,Be,Fe,h,M)),N.getBuildInfo=(de,Be)=>FFr(Ae,de,iD(Ae,Be),void 0);let{watchFile:te,watchDirectory:re,writeLog:ue}=c7e(b,d),Ae={host:h,hostWithWatch:b,parseConfigFileHost:nGe(h),write:Hi(h,h.trace),options:d,baseCompilerOptions:R,rootNames:u,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:N,moduleResolutionCache:V,typeReferenceDirectiveResolutionCache:P,libraryResolutionCache:M,buildOrder:void 0,readFileWithCache:de=>h.readFile(de),projectCompilerOptions:R,cache:void 0,allProjectBuildPending:!0,needsSummary:!0,watchAllProjectsPending:n,watch:n,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:te,watchDirectory:re,writeLog:ue};return Ae}function tw(n,c){return gA(c,n.compilerHost.getCurrentDirectory(),n.compilerHost.getCanonicalFileName)}function iD(n,c){let{resolvedConfigFilePaths:u}=n,d=u.get(c);if(d!==void 0)return d;let I=tw(n,c);return u.set(c,I),I}function bFr(n){return!!n.options}function oji(n,c){let u=n.configFileCache.get(c);return u&&bFr(u)?u:void 0}function xte(n,c,u){let{configFileCache:d}=n,I=d.get(u);if(I)return bFr(I)?I:void 0;rs("SolutionBuilder::beforeConfigFileParsing");let h,{parseConfigFileHost:b,baseCompilerOptions:R,baseWatchOptions:N,extendedConfigCache:V,host:P}=n,M;return P.getParsedCommandLine?(M=P.getParsedCommandLine(c),M||(h=ff(Z.File_0_not_found,c))):(b.onUnRecoverableConfigFileDiagnostic=te=>h=te,M=qhe(c,R,b,V,N),b.onUnRecoverableConfigFileDiagnostic=oc),d.set(u,M||h),rs("SolutionBuilder::afterConfigFileParsing"),vc("SolutionBuilder::Config file parsing","SolutionBuilder::beforeConfigFileParsing","SolutionBuilder::afterConfigFileParsing"),M}function T_e(n,c){return p7e(q_(n.compilerHost.getCurrentDirectory(),c))}function EFr(n,c){let u=new Map,d=new Map,I=[],h,b;for(let N of c)R(N);return b?{buildOrder:h||v,circularDiagnostics:b}:h||v;function R(N,V){let P=iD(n,N);if(d.has(P))return;if(u.has(P)){V||(b||(b=[])).push(ff(Z.Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0,I.join(`\r -`)));return}u.set(P,!0),I.push(N);let M=xte(n,N,P);if(M&&M.projectReferences)for(let te of M.projectReferences){let re=T_e(n,te.path);R(re,V||te.circular)}I.pop(),d.set(P,!0),(h||(h=[])).push(N)}}function IGe(n){return n.buildOrder||aji(n)}function aji(n){let c=EFr(n,n.rootNames.map(I=>T_e(n,I)));n.resolvedConfigFilePaths.clear();let u=new Set(w_e(c).map(I=>iD(n,I))),d={onDeleteValue:oc};return pN(n.configFileCache,u,d),pN(n.projectStatus,u,d),pN(n.builderPrograms,u,d),pN(n.diagnostics,u,d),pN(n.projectPendingBuild,u,d),pN(n.projectErrorsReported,u,d),pN(n.buildInfoCache,u,d),pN(n.outputTimeStamps,u,d),pN(n.lastCachedPackageJsonLookups,u,d),n.watch&&(pN(n.allWatchedConfigFiles,u,{onDeleteValue:RB}),n.allWatchedExtendedConfigFiles.forEach(I=>{I.projects.forEach(h=>{u.has(h)||I.projects.delete(h)}),I.close()}),pN(n.allWatchedWildcardDirectories,u,{onDeleteValue:I=>I.forEach(ZB)}),pN(n.allWatchedInputFiles,u,{onDeleteValue:I=>I.forEach(RB)}),pN(n.allWatchedPackageJsonFiles,u,{onDeleteValue:I=>I.forEach(RB)})),n.buildOrder=c}function BFr(n,c,u){let d=c&&T_e(n,c),I=IGe(n);if(J6(I))return I;if(d){let b=iD(n,d);if(ke(I,N=>iD(n,N)===b)===-1)return}let h=d?EFr(n,[d]):I;return w.assert(!J6(h)),w.assert(!u||d!==void 0),w.assert(!u||h[h.length-1]===d),u?h.slice(0,h.length-1):h}function vFr(n){n.cache&&wkt(n);let{compilerHost:c,host:u}=n,d=n.readFileWithCache,I=c.getSourceFile,{originalReadFile:h,originalFileExists:b,originalDirectoryExists:R,originalCreateDirectory:N,originalWriteFile:V,getSourceFileWithCache:P,readFileWithCache:M}=cue(u,te=>tw(n,te),(...te)=>I.call(c,...te));n.readFileWithCache=M,c.getSourceFile=P,n.cache={originalReadFile:h,originalFileExists:b,originalDirectoryExists:R,originalCreateDirectory:N,originalWriteFile:V,originalReadFileWithCache:d,originalGetSourceFile:I}}function wkt(n){if(!n.cache)return;let{cache:c,host:u,compilerHost:d,extendedConfigCache:I,moduleResolutionCache:h,typeReferenceDirectiveResolutionCache:b,libraryResolutionCache:R}=n;u.readFile=c.originalReadFile,u.fileExists=c.originalFileExists,u.directoryExists=c.originalDirectoryExists,u.createDirectory=c.originalCreateDirectory,u.writeFile=c.originalWriteFile,d.getSourceFile=c.originalGetSourceFile,n.readFileWithCache=c.originalReadFileWithCache,I.clear(),h?.clear(),b?.clear(),R?.clear(),n.cache=void 0}function SFr(n,c){n.projectStatus.delete(c),n.diagnostics.delete(c)}function wFr({projectPendingBuild:n},c,u){let d=n.get(c);(d===void 0||dn.projectPendingBuild.set(iD(n,d),0)),c&&c.throwIfCancellationRequested()}var Tkt=(n=>(n[n.Build=0]="Build",n[n.UpdateOutputFileStamps=1]="UpdateOutputFileStamps",n))(Tkt||{});function NFr(n,c){return n.projectPendingBuild.delete(c),n.diagnostics.has(c)?1:0}function cji(n,c,u,d,I){let h=!0;return{kind:1,project:c,projectPath:u,buildOrder:I,getCompilerOptions:()=>d.options,getCurrentDirectory:()=>n.compilerHost.getCurrentDirectory(),updateOutputFileStatmps:()=>{LFr(n,d,u),h=!1},done:()=>(h&&LFr(n,d,u),rs("SolutionBuilder::Timestamps only updates"),NFr(n,u))}}function lji(n,c,u,d,I,h){let b=0,R,N;return{kind:0,project:c,projectPath:u,buildOrder:h,getCompilerOptions:()=>I.options,getCurrentDirectory:()=>n.compilerHost.getCurrentDirectory(),getBuilderProgram:()=>P(Bl),getProgram:()=>P(Qe=>Qe.getProgramOrUndefined()),getSourceFile:Qe=>P(De=>De.getSourceFile(Qe)),getSourceFiles:()=>M(Qe=>Qe.getSourceFiles()),getOptionsDiagnostics:Qe=>M(De=>De.getOptionsDiagnostics(Qe)),getGlobalDiagnostics:Qe=>M(De=>De.getGlobalDiagnostics(Qe)),getConfigFileParsingDiagnostics:()=>M(Qe=>Qe.getConfigFileParsingDiagnostics()),getSyntacticDiagnostics:(Qe,De)=>M(lt=>lt.getSyntacticDiagnostics(Qe,De)),getAllDependencies:Qe=>M(De=>De.getAllDependencies(Qe)),getSemanticDiagnostics:(Qe,De)=>M(lt=>lt.getSemanticDiagnostics(Qe,De)),getSemanticDiagnosticsOfNextAffectedFile:(Qe,De)=>P(lt=>lt.getSemanticDiagnosticsOfNextAffectedFile&<.getSemanticDiagnosticsOfNextAffectedFile(Qe,De)),emit:(Qe,De,lt,Le,je)=>{if(Qe||Le)return P(st=>{var nt,qe;return st.emit(Qe,De,lt,Le,je||((qe=(nt=n.host).getCustomTransformers)==null?void 0:qe.call(nt,c)))});if(Ne(2,lt),b===4)return Be(De,lt);if(b===3)return de(De,lt,je)},done:V};function V(Qe,De,lt){return Ne(6,Qe,De,lt),rs("SolutionBuilder::Projects built"),NFr(n,u)}function P(Qe){return Ne(0),R&&Qe(R)}function M(Qe){return P(Qe)||v}function te(){var Qe,De,lt;if(w.assert(R===void 0),n.options.dry){O1(n,Z.A_non_dry_build_would_build_project_0,c),N=1,b=5;return}if(n.options.verbose&&O1(n,Z.Building_project_0,c),I.fileNames.length===0){due(n,u,hY(I)),N=0,b=5;return}let{host:Le,compilerHost:je}=n;if(n.projectCompilerOptions=I.options,(Qe=n.moduleResolutionCache)==null||Qe.update(I.options),(De=n.typeReferenceDirectiveResolutionCache)==null||De.update(I.options),R=Le.createProgram(I.fileNames,I.options,je,uji(n,u,I),hY(I),I.projectReferences),n.watch){let st=(lt=n.moduleResolutionCache)==null?void 0:lt.getPackageJsonInfoCache().getInternalMap();n.lastCachedPackageJsonLookups.set(u,st&&new Set(on(st.values(),nt=>n.host.realpath&&(Bke(nt)||nt.directoryExists)?n.host.realpath(xo(nt.packageDirectory,"package.json")):xo(nt.packageDirectory,"package.json")))),n.builderPrograms.set(u,R)}b++}function re(Qe,De,lt){Qe.length?{buildResult:N,step:b}=Dkt(n,u,R,I,Qe,De,lt):b++}function ue(Qe){w.assertIsDefined(R),re([...R.getConfigFileParsingDiagnostics(),...R.getOptionsDiagnostics(Qe),...R.getGlobalDiagnostics(Qe),...R.getSyntacticDiagnostics(void 0,Qe)],8,"Syntactic")}function Ae(Qe){re(w.checkDefined(R).getSemanticDiagnostics(void 0,Qe),16,"Semantic")}function de(Qe,De,lt){var Le,je,st;w.assertIsDefined(R),w.assert(b===3);let nt=R.saveEmitState(),qe,it=Zt=>(qe||(qe=[])).push(Zt),It=[],{emitResult:dt}=uGe(R,it,void 0,void 0,(Zt,Dr,jt,mr,Pt,Vr)=>It.push({name:Zt,text:Dr,writeByteOrderMark:jt,data:Vr}),De,!1,lt||((je=(Le=n.host).getCustomTransformers)==null?void 0:je.call(Le,c)));if(qe)return R.restoreEmitState(nt),{buildResult:N,step:b}=Dkt(n,u,R,I,qe,32,"Declaration file"),{emitSkipped:!0,diagnostics:dt.diagnostics};let{host:wt,compilerHost:vt}=n,Ye=(st=R.hasChangedEmitSignature)!=null&&st.call(R)?0:2,ht=hG(),Et=new Map,Kt=R.getCompilerOptions(),Tt=d6(Kt),Lt,kt;return It.forEach(({name:Zt,text:Dr,writeByteOrderMark:jt,data:mr})=>{let Pt=tw(n,Zt);Et.set(tw(n,Zt),Zt),mr?.buildInfo&&GFr(n,mr.buildInfo,u,Kt,Ye);let Vr=mr?.differsOnlyInMap?hd(n.host,Zt):void 0;vee(Qe?{writeFile:Qe}:vt,ht,Zt,Dr,jt),mr?.differsOnlyInMap?n.host.setModifiedTime(Zt,Vr):!Tt&&n.watch&&(Lt||(Lt=xkt(n,u))).set(Pt,kt||(kt=S_e(n.host)))}),Fe(ht,Et,It.length?It[0].name:I6e(I,!wt.useCaseSensitiveFileNames()),Ye),dt}function Be(Qe,De){w.assertIsDefined(R),w.assert(b===4);let lt=R.emitBuildInfo((Le,je,st,nt,qe,it)=>{it?.buildInfo&&GFr(n,it.buildInfo,u,R.getCompilerOptions(),2),Qe?Qe(Le,je,st,nt,qe,it):n.compilerHost.writeFile(Le,je,st,nt,qe,it)},De);return lt.diagnostics.length&&(mGe(n,lt.diagnostics),n.diagnostics.set(u,[...n.diagnostics.get(u),...lt.diagnostics]),N=64&N),lt.emittedFiles&&n.write&<.emittedFiles.forEach(Le=>xFr(n,I,Le)),Rkt(n,R),b=5,lt}function Fe(Qe,De,lt,Le){let je=Qe.getDiagnostics();return je.length?({buildResult:N,step:b}=Dkt(n,u,R,I,je,64,"Emit"),je):(n.write&&De.forEach(st=>xFr(n,I,st)),ZFr(n,I,u,Z.Updating_unchanged_output_timestamps_of_project_0,De),n.diagnostics.delete(u),n.projectStatus.set(u,{type:1,oldestOutputFileName:lt}),Rkt(n,R),b=5,N=Le,je)}function Ne(Qe,De,lt,Le){for(;b<=Qe&&b<6;){let je=b;switch(b){case 0:te();break;case 1:ue(De);break;case 2:Ae(De);break;case 3:de(lt,De,Le);break;case 4:Be(lt,De);break;case 5:pji(n,c,u,d,I,h,w.checkDefined(N)),b++;break;case 6:default:}w.assert(b>je)}}}function RFr(n,c,u){if(!n.projectPendingBuild.size||J6(c))return;let{options:d,projectPendingBuild:I}=n;for(let h=0;h{let re=w.checkDefined(n.filesWatched.get(R));w.assert(f7e(re)),re.modifiedTime=te,re.callbacks.forEach(ue=>ue(P,M,te))},d,I,h,b);n.filesWatched.set(R,{callbacks:[u],watcher:V,modifiedTime:N})}return{close:()=>{let V=w.checkDefined(n.filesWatched.get(R));w.assert(f7e(V)),V.callbacks.length===1?(n.filesWatched.delete(R),ZB(V)):Oy(V.callbacks,u)}}}function xkt(n,c){if(!n.watch)return;let u=n.outputTimeStamps.get(c);return u||n.outputTimeStamps.set(c,u=new Map),u}function GFr(n,c,u,d,I){let h=ZZ(d),b=kkt(n,h,u),R=S_e(n.host);b?(b.buildInfo=c,b.modifiedTime=R,I&2||(b.latestChangedDtsTime=R)):n.buildInfoCache.set(u,{path:tw(n,h),buildInfo:c,modifiedTime:R,latestChangedDtsTime:I&2?void 0:R})}function kkt(n,c,u){let d=tw(n,c),I=n.buildInfoCache.get(u);return I?.path===d?I:void 0}function FFr(n,c,u,d){let I=tw(n,c),h=n.buildInfoCache.get(u);if(h!==void 0&&h.path===I)return h.buildInfo||void 0;let b=n.readFileWithCache(c),R=b?h6e(c,b):void 0;return n.buildInfoCache.set(u,{path:I,buildInfo:R||!1,modifiedTime:d||EA}),R}function Gkt(n,c,u,d){let I=kFr(n,c);if(uBe&&(de=nt,Be=qe),ue&&Ne.add(it)}if(ue){Ae||(Ae=H6e(ue,P,V));let nt=JC(Ae.roots,(qe,it)=>Ne.has(it)?void 0:it);if(nt)return{type:9,buildInfoFile:P,inputFile:nt}}if(!P){let nt=Hke(c,!V.useCaseSensitiveFileNames()),qe=xkt(n,u);for(let it of nt){let It=tw(n,it),dt=qe?.get(It);if(dt||(dt=hd(n.host,it),qe?.set(It,dt)),dt===EA)return{type:3,missingOutputFileName:it};if(dtGkt(n,nt,te,M));if(Le)return Le;let je=n.lastCachedPackageJsonLookups.get(u),st=je&&$w(je,nt=>Gkt(n,nt,te,M));return st||{type:De?2:Fe?14:1,newestInputFileTime:Be,newestInputFileName:de,oldestOutputFileName:M}}function Aji(n,c,u){return n.buildInfoCache.get(u).path===c.path}function Fkt(n,c,u){if(c===void 0)return{type:0,reason:"File deleted mid-build"};let d=n.projectStatus.get(u);if(d!==void 0)return d;rs("SolutionBuilder::beforeUpToDateCheck");let I=gji(n,c,u);return rs("SolutionBuilder::afterUpToDateCheck"),vc("SolutionBuilder::Up-to-date check","SolutionBuilder::beforeUpToDateCheck","SolutionBuilder::afterUpToDateCheck"),n.projectStatus.set(u,I),I}function ZFr(n,c,u,d,I){if(c.options.noEmit)return;let h,b=ZZ(c.options);if(b){I?.has(tw(n,b))||(n.options.verbose&&O1(n,d,c.options.configFilePath),n.host.setModifiedTime(b,h=S_e(n.host)),kkt(n,b,u).modifiedTime=h),n.outputTimeStamps.delete(u);return}let{host:R}=n,N=Hke(c,!R.useCaseSensitiveFileNames()),V=xkt(n,u),P=V?new Set:void 0;if(!I||N.length!==I.size){let M=!!n.options.verbose;for(let te of N){let re=tw(n,te);I?.has(re)||(M&&(M=!1,O1(n,d,c.options.configFilePath)),R.setModifiedTime(te,h||(h=S_e(n.host))),V&&(V.set(re,h),P.add(re)))}}V?.forEach((M,te)=>{!I?.has(te)&&!P.has(te)&&V.delete(te)})}function dji(n,c,u){if(!c.composite)return;let d=w.checkDefined(n.buildInfoCache.get(u));if(d.latestChangedDtsTime!==void 0)return d.latestChangedDtsTime||void 0;let I=d.buildInfo&&d.buildInfo.program&&d.buildInfo.program.latestChangedDtsFile?n.host.getModifiedTime(Oc(d.buildInfo.program.latestChangedDtsFile,aa(d.path))):void 0;return d.latestChangedDtsTime=I||!1,I}function LFr(n,c,u){if(n.options.dry)return O1(n,Z.A_non_dry_build_would_update_timestamps_for_output_of_project_0,c.options.configFilePath);ZFr(n,c,u,Z.Updating_output_timestamps_of_project_0),n.projectStatus.set(u,{type:1,oldestOutputFileName:I6e(c,!n.host.useCaseSensitiveFileNames())})}function pji(n,c,u,d,I,h,b){if(!(b&124)&&I.options.composite)for(let R=d+1;Rn.diagnostics.has(iD(n,V)))?N?2:1:0}function WFr(n,c,u){rs("SolutionBuilder::beforeClean");let d=Iji(n,c,u);return rs("SolutionBuilder::afterClean"),vc("SolutionBuilder::Clean","SolutionBuilder::beforeClean","SolutionBuilder::afterClean"),d}function Iji(n,c,u){let d=BFr(n,c,u);if(!d)return 3;if(J6(d))return mGe(n,d.circularDiagnostics),4;let{options:I,host:h}=n,b=I.dry?[]:void 0;for(let R of d){let N=iD(n,R),V=xte(n,R,N);if(V===void 0){HFr(n,N);continue}let P=Hke(V,!h.useCaseSensitiveFileNames());if(!P.length)continue;let M=new Set(V.fileNames.map(te=>tw(n,te)));for(let te of P)M.has(tw(n,te))||h.fileExists(te)&&(b?b.push(te):(h.deleteFile(te),Zkt(n,N,0)))}return b&&O1(n,Z.A_non_dry_build_would_delete_the_following_files_Colon_0,b.map(R=>`\r - * ${R}`).join("")),0}function Zkt(n,c,u){n.host.getParsedCommandLine&&u===1&&(u=2),u===2&&(n.configFileCache.delete(c),n.buildOrder=void 0),n.needsSummary=!0,SFr(n,c),wFr(n,c,u),vFr(n)}function CGe(n,c,u){n.reportFileChangeDetected=!0,Zkt(n,c,u),PFr(n,250,!0)}function PFr(n,c,u){let{hostWithWatch:d}=n;!d.setTimeout||!d.clearTimeout||(n.timerToBuildInvalidatedProject&&d.clearTimeout(n.timerToBuildInvalidatedProject),n.timerToBuildInvalidatedProject=d.setTimeout(Cji,c,"timerToBuildInvalidatedProject",n,u))}function Cji(n,c,u){rs("SolutionBuilder::beforeBuild");let d=mji(c,u);rs("SolutionBuilder::afterBuild"),vc("SolutionBuilder::Build","SolutionBuilder::beforeBuild","SolutionBuilder::afterBuild"),d&&XFr(c,d)}function mji(n,c){n.timerToBuildInvalidatedProject=void 0,n.reportFileChangeDetected&&(n.reportFileChangeDetected=!1,n.projectErrorsReported.clear(),Wkt(n,Z.File_change_detected_Starting_incremental_compilation));let u=0,d=IGe(n),I=Nkt(n,d,!1);if(I)for(I.done(),u++;n.projectPendingBuild.size;){if(n.timerToBuildInvalidatedProject)return;let h=RFr(n,d,!1);if(!h)break;if(h.kind!==1&&(c||u===5)){PFr(n,100,!1);return}DFr(n,h,d).done(),h.kind!==1&&u++}return wkt(n),d}function OFr(n,c,u,d){!n.watch||n.allWatchedConfigFiles.has(u)||n.allWatchedConfigFiles.set(u,I7e(n,c,()=>CGe(n,u,2),2e3,d?.watchOptions,hm.ConfigFile,c))}function MFr(n,c,u){Kke(c,u?.options,n.allWatchedExtendedConfigFiles,(d,I)=>I7e(n,d,()=>{var h;return(h=n.allWatchedExtendedConfigFiles.get(I))==null?void 0:h.projects.forEach(b=>CGe(n,b,2))},2e3,u?.watchOptions,hm.ExtendedConfigFile),d=>tw(n,d))}function QFr(n,c,u,d){n.watch&&C_e(bkt(n.allWatchedWildcardDirectories,u),d.wildcardDirectories,(I,h)=>n.watchDirectory(I,b=>{var R;m_e({watchedDirPath:tw(n,I),fileOrDirectory:b,fileOrDirectoryPath:tw(n,b),configFileName:c,currentDirectory:n.compilerHost.getCurrentDirectory(),options:d.options,program:n.builderPrograms.get(u)||((R=oji(n,u))==null?void 0:R.fileNames),useCaseSensitiveFileNames:n.parseConfigFileHost.useCaseSensitiveFileNames,writeLog:N=>n.writeLog(N),toPath:N=>tw(n,N)})||CGe(n,u,1)},h,d?.watchOptions,hm.WildcardDirectory,c))}function Lkt(n,c,u,d){n.watch&&u6(bkt(n.allWatchedInputFiles,u),new Set(d.fileNames),{createNewValue:I=>I7e(n,I,()=>CGe(n,u,0),250,d?.watchOptions,hm.SourceFile,c),onDeleteValue:RB})}function Vkt(n,c,u,d){!n.watch||!n.lastCachedPackageJsonLookups||u6(bkt(n.allWatchedPackageJsonFiles,u),n.lastCachedPackageJsonLookups.get(u),{createNewValue:I=>I7e(n,I,()=>CGe(n,u,0),2e3,d?.watchOptions,hm.PackageJson,c),onDeleteValue:RB})}function hji(n,c){if(n.watchAllProjectsPending){rs("SolutionBuilder::beforeWatcherCreation"),n.watchAllProjectsPending=!1;for(let u of w_e(c)){let d=iD(n,u),I=xte(n,u,d);OFr(n,u,d,I),MFr(n,d,I),I&&(QFr(n,u,d,I),Lkt(n,u,d,I),Vkt(n,u,d,I))}rs("SolutionBuilder::afterWatcherCreation"),vc("SolutionBuilder::Watcher creation","SolutionBuilder::beforeWatcherCreation","SolutionBuilder::afterWatcherCreation")}}function _ji(n){Y0(n.allWatchedConfigFiles,RB),Y0(n.allWatchedExtendedConfigFiles,ZB),Y0(n.allWatchedWildcardDirectories,c=>Y0(c,ZB)),Y0(n.allWatchedInputFiles,c=>Y0(c,RB)),Y0(n.allWatchedPackageJsonFiles,c=>Y0(c,RB))}function YFr(n,c,u,d,I){let h=sji(n,c,u,d,I);return{build:(b,R,N,V)=>VFr(h,b,R,N,V),clean:b=>WFr(h,b),buildReferences:(b,R,N,V)=>VFr(h,b,R,N,V,!0),cleanReferences:b=>WFr(h,b,!0),getNextInvalidatedProject:b=>(TFr(h,b),Nkt(h,IGe(h),!1)),getBuildOrder:()=>IGe(h),getUpToDateStatusOfProject:b=>{let R=T_e(h,b),N=iD(h,R);return Fkt(h,xte(h,R,N),N)},invalidateProject:(b,R)=>Zkt(h,b,R||0),close:()=>_ji(h)}}function g0(n,c){return TE(c,n.compilerHost.getCurrentDirectory(),n.compilerHost.getCanonicalFileName)}function O1(n,c,...u){n.host.reportSolutionBuilderStatus(ff(c,...u))}function Wkt(n,c,...u){var d,I;(I=(d=n.hostWithWatch).onWatchStatusChange)==null||I.call(d,ff(c,...u),n.host.getNewLine(),n.baseCompilerOptions)}function mGe({host:n},c){c.forEach(u=>n.reportDiagnostic(u))}function due(n,c,u){mGe(n,u),n.projectErrorsReported.set(c,!0),u.length&&n.diagnostics.set(c,u)}function HFr(n,c){due(n,c,[n.configFileCache.get(c)])}function XFr(n,c){if(!n.needsSummary)return;n.needsSummary=!1;let u=n.watch||!!n.host.reportErrorSummary,{diagnostics:d}=n,I=0,h=[];J6(c)?(JFr(n,c.buildOrder),mGe(n,c.circularDiagnostics),u&&(I+=cGe(c.circularDiagnostics)),u&&(h=[...h,...lGe(c.circularDiagnostics)])):(c.forEach(b=>{let R=iD(n,b);n.projectErrorsReported.has(R)||mGe(n,d.get(R)||v)}),u&&d.forEach(b=>I+=cGe(b)),u&&d.forEach(b=>[...h,...lGe(b)])),n.watch?Wkt(n,q6e(I),I):n.host.reportErrorSummary&&n.host.reportErrorSummary(I,h)}function JFr(n,c){n.options.verbose&&O1(n,Z.Projects_in_this_build_Colon_0,c.map(u=>`\r - * `+g0(n,u)).join(""))}function yji(n,c,u){switch(u.type){case 5:return O1(n,Z.Project_0_is_out_of_date_because_output_1_is_older_than_input_2,g0(n,c),g0(n,u.outOfDateOutputFileName),g0(n,u.newerInputFileName));case 6:return O1(n,Z.Project_0_is_out_of_date_because_output_1_is_older_than_input_2,g0(n,c),g0(n,u.outOfDateOutputFileName),g0(n,u.newerProjectName));case 3:return O1(n,Z.Project_0_is_out_of_date_because_output_file_1_does_not_exist,g0(n,c),g0(n,u.missingOutputFileName));case 4:return O1(n,Z.Project_0_is_out_of_date_because_there_was_error_reading_file_1,g0(n,c),g0(n,u.fileName));case 7:return O1(n,Z.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitted,g0(n,c),g0(n,u.buildInfoFile));case 8:return O1(n,Z.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions,g0(n,c),g0(n,u.buildInfoFile));case 9:return O1(n,Z.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_but_not_any_more,g0(n,c),g0(n,u.buildInfoFile),g0(n,u.inputFile));case 1:if(u.newestInputFileTime!==void 0)return O1(n,Z.Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2,g0(n,c),g0(n,u.newestInputFileName||""),g0(n,u.oldestOutputFileName||""));break;case 2:return O1(n,Z.Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies,g0(n,c));case 14:return O1(n,Z.Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_files,g0(n,c));case 10:return O1(n,Z.Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date,g0(n,c),g0(n,u.upstreamProjectName));case 11:return O1(n,u.upstreamProjectBlocked?Z.Project_0_can_t_be_built_because_its_dependency_1_was_not_built:Z.Project_0_can_t_be_built_because_its_dependency_1_has_errors,g0(n,c),g0(n,u.upstreamProjectName));case 0:return O1(n,Z.Failed_to_parse_file_0_Colon_1,g0(n,c),u.reason);case 13:return O1(n,Z.Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2,g0(n,c),u.version,y);case 16:return O1(n,Z.Project_0_is_being_forcibly_rebuilt,g0(n,c));case 15:case 12:break;default:}}function C7e(n,c,u){n.options.verbose&&yji(n,c,u)}var Pkt=(n=>(n[n.time=0]="time",n[n.count=1]="count",n[n.memory=2]="memory",n))(Pkt||{});function bji(n){let c=Eji();return X(n.getSourceFiles(),u=>{let d=Bji(n,u),I=Rc(u).length;c.set(d,c.get(d)+I)}),c}function Eji(){let n=new Map;return n.set("Library",0),n.set("Definitions",0),n.set("TypeScript",0),n.set("JavaScript",0),n.set("JSON",0),n.set("Other",0),n}function Bji(n,c){if(n.isSourceFileDefaultLibrary(c))return"Library";if(c.isDeclarationFile)return"Definitions";let u=c.path;return pp(u,Pee)?"TypeScript":pp(u,$X)?"JavaScript":gd(u,".json")?"JSON":"Other"}function m7e(n,c,u){return hGe(n,u)?X6(n,!0):c}function UFr(n){return!!n.writeOutputIsTTY&&n.writeOutputIsTTY()&&!n.getEnvironmentVariable("NO_COLOR")}function hGe(n,c){return!c||typeof c.pretty>"u"?UFr(n):c.pretty}function KFr(n){return n.options.all?Cg(cT,(c,u)=>fs(c.name,u.name)):Gt(cT.slice(),c=>!!c.showInSimplifiedHelpView)}function h7e(n){n.write(ab(Z.Version_0,y)+n.newLine)}function _7e(n){if(!UFr(n))return{bold:P=>P,blue:P=>P,blueBackground:P=>P,brightWhite:P=>P};function u(P){return`\x1B[1m${P}\x1B[22m`}let d=n.getEnvironmentVariable("OS")&&n.getEnvironmentVariable("OS").toLowerCase().includes("windows"),I=n.getEnvironmentVariable("WT_SESSION"),h=n.getEnvironmentVariable("TERM_PROGRAM")&&n.getEnvironmentVariable("TERM_PROGRAM")==="vscode";function b(P){return d&&!I&&!h?V(P):`\x1B[94m${P}\x1B[39m`}let R=n.getEnvironmentVariable("COLORTERM")==="truecolor"||n.getEnvironmentVariable("TERM")==="xterm-256color";function N(P){return R?`\x1B[48;5;68m${P}\x1B[39;49m`:`\x1B[44m${P}\x1B[39;49m`}function V(P){return`\x1B[97m${P}\x1B[39m`}return{bold:u,blue:b,brightWhite:V,blueBackground:N}}function jFr(n){return`--${n.name}${n.shortName?`, -${n.shortName}`:""}`}function vji(n,c,u,d){var I;let h=[],b=_7e(n),R=jFr(c),N=ue(c),V=typeof c.defaultValueDescription=="object"?ab(c.defaultValueDescription):M(c.defaultValueDescription,c.type==="list"||c.type==="listOrElement"?c.element.type:c.type),P=((I=n.getWidthOfTerminal)==null?void 0:I.call(n))??0;if(P>=80){let Ae="";c.description&&(Ae=ab(c.description)),h.push(...re(R,Ae,u,d,P,!0),n.newLine),te(N,c)&&(N&&h.push(...re(N.valueType,N.possibleValues,u,d,P,!1),n.newLine),V&&h.push(...re(ab(Z.default_Colon),V,u,d,P,!1),n.newLine)),h.push(n.newLine)}else{if(h.push(b.blue(R),n.newLine),c.description){let Ae=ab(c.description);h.push(Ae)}if(h.push(n.newLine),te(N,c)){if(N&&h.push(`${N.valueType} ${N.possibleValues}`),V){N&&h.push(n.newLine);let Ae=ab(Z.default_Colon);h.push(`${Ae} ${V}`)}h.push(n.newLine)}h.push(n.newLine)}return h;function M(Ae,de){return Ae!==void 0&&typeof de=="object"?on(de.entries()).filter(([,Be])=>Be===Ae).map(([Be])=>Be).join("/"):String(Ae)}function te(Ae,de){let Be=["string"],Fe=[void 0,"false","n/a"],Ne=de.defaultValueDescription;return!(de.category===Z.Command_line_Options||Ue(Be,Ae?.possibleValues)&&Ue(Fe,Ne))}function re(Ae,de,Be,Fe,Ne,Qe){let De=[],lt=!0,Le=de,je=Ne-Fe;for(;Le.length>0;){let st="";lt?(st=Ae.padStart(Be),st=st.padEnd(Fe),st=Qe?b.blue(st):st):st="".padStart(Fe);let nt=Le.substr(0,je);Le=Le.slice(je),De.push(`${st}${nt}`),lt=!1}return De}function ue(Ae){if(Ae.type==="object")return;return{valueType:de(Ae),possibleValues:Be(Ae)};function de(Fe){switch(w.assert(Fe.type!=="listOrElement"),Fe.type){case"string":case"number":case"boolean":return ab(Z.type_Colon);case"list":return ab(Z.one_or_more_Colon);default:return ab(Z.one_of_Colon)}}function Be(Fe){let Ne;switch(Fe.type){case"string":case"number":case"boolean":Ne=Fe.type;break;case"list":case"listOrElement":Ne=Be(Fe.element);break;case"object":Ne="";break;default:let Qe={};return Fe.type.forEach((De,lt)=>{var Le;(Le=Fe.deprecatedKeys)!=null&&Le.has(lt)||(Qe[De]||(Qe[De]=[])).push(lt)}),Object.entries(Qe).map(([,De])=>De.join("/")).join(", ")}return Ne}}}function zFr(n,c){let u=0;for(let b of c){let R=jFr(b).length;u=u>R?u:R}let d=u+2,I=d+2,h=[];for(let b of c){let R=vji(n,b,d,I);h=[...h,...R]}return h[h.length-2]!==n.newLine&&h.push(n.newLine),h}function N_e(n,c,u,d,I,h){let b=[];if(b.push(_7e(n).bold(c)+n.newLine+n.newLine),I&&b.push(I+n.newLine+n.newLine),!d)return b=[...b,...zFr(n,u)],h&&b.push(h+n.newLine+n.newLine),b;let R=new Map;for(let N of u){if(!N.category)continue;let V=ab(N.category),P=R.get(V)??[];P.push(N),R.set(V,P)}return R.forEach((N,V)=>{b.push(`### ${V}${n.newLine}${n.newLine}`),b=[...b,...zFr(n,N)]}),h&&b.push(h+n.newLine+n.newLine),b}function Sji(n,c){let u=_7e(n),d=[...y7e(n,`${ab(Z.tsc_Colon_The_TypeScript_Compiler)} - ${ab(Z.Version_0,y)}`)];d.push(u.bold(ab(Z.COMMON_COMMANDS))+n.newLine+n.newLine),b("tsc",Z.Compiles_the_current_project_tsconfig_json_in_the_working_directory),b("tsc app.ts util.ts",Z.Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options),b("tsc -b",Z.Build_a_composite_project_in_the_working_directory),b("tsc --init",Z.Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory),b("tsc -p ./path/to/tsconfig.json",Z.Compiles_the_TypeScript_project_located_at_the_specified_path),b("tsc --help --all",Z.An_expanded_version_of_this_information_showing_all_possible_compiler_options),b(["tsc --noEmit","tsc --target esnext"],Z.Compiles_the_current_project_with_additional_settings);let I=c.filter(R=>R.isCommandLineOnly||R.category===Z.Command_line_Options),h=c.filter(R=>!Ue(I,R));d=[...d,...N_e(n,ab(Z.COMMAND_LINE_FLAGS),I,!1,void 0,void 0),...N_e(n,ab(Z.COMMON_COMPILER_OPTIONS),h,!1,void 0,XQ(Z.You_can_learn_about_all_of_the_compiler_options_at_0,"https://aka.ms/tsc"))];for(let R of d)n.write(R);function b(R,N){let V=typeof R=="string"?[R]:R;for(let P of V)d.push(" "+u.blue(P)+n.newLine);d.push(" "+ab(N)+n.newLine+n.newLine)}}function wji(n,c,u,d){let I=[...y7e(n,`${ab(Z.tsc_Colon_The_TypeScript_Compiler)} - ${ab(Z.Version_0,y)}`)];I=[...I,...N_e(n,ab(Z.ALL_COMPILER_OPTIONS),c,!0,void 0,XQ(Z.You_can_learn_about_all_of_the_compiler_options_at_0,"https://aka.ms/tsc"))],I=[...I,...N_e(n,ab(Z.WATCH_OPTIONS),d,!1,ab(Z.Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_config_watch_mode_with_Colon))],I=[...I,...N_e(n,ab(Z.BUILD_OPTIONS),u,!1,XQ(Z.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(let h of I)n.write(h)}function qFr(n,c){let u=[...y7e(n,`${ab(Z.tsc_Colon_The_TypeScript_Compiler)} - ${ab(Z.Version_0,y)}`)];u=[...u,...N_e(n,ab(Z.BUILD_OPTIONS),c,!1,XQ(Z.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(let d of u)n.write(d)}function y7e(n,c){var u;let d=_7e(n),I=[],h=((u=n.getWidthOfTerminal)==null?void 0:u.call(n))??0,b=5,R=d.blueBackground("".padStart(b)),N=d.blueBackground(d.brightWhite("TS ".padStart(b)));if(h>=c.length+b){let P=(h>120?120:h)-b;I.push(c.padEnd(P)+R+n.newLine),I.push("".padStart(P)+N+n.newLine)}else I.push(c+n.newLine),I.push(n.newLine);return I}function $Fr(n,c){c.options.all?wji(n,KFr(c),d8e,W6):Sji(n,KFr(c))}function eZr(n,c,u){let d=X6(n);if(u.options.build)return d(ff(Z.Option_build_must_be_the_first_command_line_argument)),n.exit(1);let I;if(u.options.locale&&oQ(u.options.locale,n,u.errors),u.errors.length>0)return u.errors.forEach(d),n.exit(1);if(u.options.init)return Dji(n,d,u.options,u.fileNames),n.exit(0);if(u.options.version)return h7e(n),n.exit(0);if(u.options.help||u.options.all)return $Fr(n,u),n.exit(0);if(u.options.watch&&u.options.listFilesOnly)return d(ff(Z.Options_0_and_1_cannot_be_combined,"watch","listFilesOnly")),n.exit(1);if(u.options.project){if(u.fileNames.length!==0)return d(ff(Z.Option_project_cannot_be_mixed_with_source_files_on_a_command_line)),n.exit(1);let R=Mc(u.options.project);if(!R||n.directoryExists(R)){if(I=xo(R,"tsconfig.json"),!n.fileExists(I))return d(ff(Z.Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0,u.options.project)),n.exit(1)}else if(I=R,!n.fileExists(I))return d(ff(Z.The_specified_path_does_not_exist_Colon_0,u.options.project)),n.exit(1)}else if(u.fileNames.length===0){let R=Mc(n.getCurrentDirectory());I=E6e(R,N=>n.fileExists(N))}if(u.fileNames.length===0&&!I)return u.options.showConfig?d(ff(Z.Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0,Mc(n.getCurrentDirectory()))):(h7e(n),$Fr(n,u)),n.exit(1);let h=n.getCurrentDirectory(),b=Ike(u.options,R=>Oc(R,h));if(I){let R=new Map,N=Ckt(I,b,R,u.watchOptions,n,d);if(b.showConfig)return N.errors.length!==0?(d=m7e(n,d,N.options),N.errors.forEach(d),n.exit(1)):(n.write(JSON.stringify(y8e(N,I,n),null,4)+n.newLine),n.exit(0));if(d=m7e(n,d,N.options),Jme(N.options))return Mkt(n,d)?void 0:Tji(n,c,d,N,b,u.watchOptions,R);d6(N.options)?iZr(n,c,d,N):nZr(n,c,d,N)}else{if(b.showConfig)return n.write(JSON.stringify(y8e(u,xo(h,"tsconfig.json"),n),null,4)+n.newLine),n.exit(0);if(d=m7e(n,d,b),Jme(b))return Mkt(n,d)?void 0:Nji(n,c,d,u.fileNames,b,u.watchOptions);d6(b)?iZr(n,c,d,{...u,options:b}):nZr(n,c,d,{...u,options:b})}}function Okt(n){if(n.length>0&&n[0].charCodeAt(0)===45){let c=n[0].slice(n[0].charCodeAt(1)===45?2:1).toLowerCase();return c==="build"||c==="b"}return!1}function tZr(n,c,u){if(Okt(u)){let{buildOptions:I,watchOptions:h,projects:b,errors:R}=YRt(u.slice(1));if(I.generateCpuProfile&&n.enableCPUProfiler)n.enableCPUProfiler(I.generateCpuProfile,()=>rZr(n,c,I,h,b,R));else return rZr(n,c,I,h,b,R)}let d=MRt(u,I=>n.readFile(I));if(d.options.generateCpuProfile&&n.enableCPUProfiler)n.enableCPUProfiler(d.options.generateCpuProfile,()=>eZr(n,c,d));else return eZr(n,c,d)}function Mkt(n,c){return!n.watchFile||!n.watchDirectory?(c(ff(Z.The_current_host_does_not_support_the_0_option,"--watch")),n.exit(1),!0):!1}var _Ge=2;function rZr(n,c,u,d,I,h){let b=m7e(n,X6(n),u);if(u.locale&&oQ(u.locale,n,h),h.length>0)return h.forEach(b),n.exit(1);if(u.help||I.length===0)return h7e(n),qFr(n,zhe),n.exit(0);if(!n.getModifiedTime||!n.setModifiedTime||u.clean&&!n.deleteFile)return b(ff(Z.The_current_host_does_not_support_the_0_option,"--build")),n.exit(1);if(u.watch){if(Mkt(n,b))return;let M=Bkt(n,void 0,b,fGe(n,hGe(n,u)),Ykt(n,u));M.jsDocParsingMode=_Ge;let te=cZr(n,u);sZr(n,c,M,te);let re=M.onWatchStatusChange,ue=!1;M.onWatchStatusChange=(de,Be,Fe,Ne)=>{re?.(de,Be,Fe,Ne),ue&&(de.code===Z.Found_0_errors_Watching_for_file_changes.code||de.code===Z.Found_1_error_Watching_for_file_changes.code)&&Hkt(Ae,te)};let Ae=Skt(M,I,u,d);return Ae.build(),Hkt(Ae,te),ue=!0,Ae}let R=Ekt(n,void 0,b,fGe(n,hGe(n,u)),Qkt(n,u));R.jsDocParsingMode=_Ge;let N=cZr(n,u);sZr(n,c,R,N);let V=vkt(R,I,u),P=u.clean?V.clean():V.build();return Hkt(V,N),uf(),n.exit(P)}function Qkt(n,c){return hGe(n,c)?(u,d)=>n.write($6e(u,d,n.newLine,n)):void 0}function nZr(n,c,u,d){let{fileNames:I,options:h,projectReferences:b}=d,R=zke(h,void 0,n);R.jsDocParsingMode=_Ge;let N=R.getCurrentDirectory(),V=tA(R.useCaseSensitiveFileNames());cue(R,re=>gA(re,N,V)),Xkt(n,h,!1);let P={rootNames:I,options:h,projectReferences:b,host:R,configFileParsingDiagnostics:hY(d)},M=E_e(P),te=o7e(M,u,re=>n.write(re+n.newLine),Qkt(n,h));return E7e(n,M,void 0),c(M),n.exit(te)}function iZr(n,c,u,d){let{options:I,fileNames:h,projectReferences:b}=d;Xkt(n,I,!1);let R=pGe(I,n);R.jsDocParsingMode=_Ge;let N=hkt({host:R,system:n,rootNames:h,options:I,configFileParsingDiagnostics:hY(d),projectReferences:b,reportDiagnostic:u,reportErrorSummary:Qkt(n,I),afterProgramEmitAndDiagnostics:V=>{E7e(n,V.getProgram(),void 0),c(V)}});return n.exit(N)}function sZr(n,c,u,d){oZr(n,u,!0),u.afterProgramEmitAndDiagnostics=I=>{E7e(n,I.getProgram(),d),c(I)}}function oZr(n,c,u){let d=c.createProgram;c.createProgram=(I,h,b,R,N,V)=>(w.assert(I!==void 0||h===void 0&&!!R),h!==void 0&&Xkt(n,h,u),d(I,h,b,R,N,V))}function aZr(n,c,u){u.jsDocParsingMode=_Ge,oZr(n,u,!1);let d=u.afterProgramCreate;u.afterProgramCreate=I=>{d(I),E7e(n,I.getProgram(),void 0),c(I)}}function Ykt(n,c){return z6e(n,hGe(n,c))}function Tji(n,c,u,d,I,h,b){let R=g7e({configFileName:d.options.configFilePath,optionsToExtend:I,watchOptionsToExtend:h,system:n,reportDiagnostic:u,reportWatchStatus:Ykt(n,d.options)});return aZr(n,c,R),R.configFileParsingResult=d,R.extendedConfigCache=b,d7e(R)}function Nji(n,c,u,d,I,h){let b=A7e({rootFiles:d,options:I,watchOptions:h,system:n,reportDiagnostic:u,reportWatchStatus:Ykt(n,I)});return aZr(n,c,b),d7e(b)}function cZr(n,c){if(n===_d&&c.extendedDiagnostics)return gy(),Rji()}function Rji(){let n;return{addAggregateStatistic:c,forEachAggregateStatistics:u,clear:d};function c(I){let h=n?.get(I.name);h?h.type===2?h.value=Math.max(h.value,I.value):h.value+=I.value:(n??(n=new Map)).set(I.name,I)}function u(I){n?.forEach(I)}function d(){n=void 0}}function Hkt(n,c){if(!c)return;if(!Dm()){_d.write(Z.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+` -`);return}let u=[];u.push({name:"Projects in scope",value:w_e(n.getBuildOrder()).length,type:1}),d("SolutionBuilder::Projects built"),d("SolutionBuilder::Timestamps only updates"),d("SolutionBuilder::Bundles updated"),c.forEachAggregateStatistics(h=>{h.name=`Aggregate ${h.name}`,u.push(h)}),Lf((h,b)=>{b7e(h)&&u.push({name:`${I(h)} time`,value:b,type:0})}),E_(),gy(),c.clear(),gZr(_d,u);function d(h){let b=Ml(h);b&&u.push({name:I(h),value:b,type:1})}function I(h){return h.replace("SolutionBuilder::","")}}function lZr(n,c){return n===_d&&(c.diagnostics||c.extendedDiagnostics)}function uZr(n,c){return n===_d&&c.generateTrace}function Xkt(n,c,u){lZr(n,c)&&gy(n),uZr(n,c)&&bE(u?"build":"project",c.generateTrace,c.configFilePath)}function b7e(n){return uc(n,"SolutionBuilder::")}function E7e(n,c,u){var d;let I=c.getCompilerOptions();uZr(n,I)&&((d=Mi)==null||d.stopTracing());let h;if(lZr(n,I)){h=[];let V=n.getMemoryUsage?n.getMemoryUsage():-1;R("Files",c.getSourceFiles().length);let P=bji(c);if(I.extendedDiagnostics)for(let[de,Be]of P.entries())R("Lines of "+de,Be);else R("Lines",ge(P.values(),(de,Be)=>de+Be,0));R("Identifiers",c.getIdentifierCount()),R("Symbols",c.getSymbolCount()),R("Types",c.getTypeCount()),R("Instantiations",c.getInstantiationCount()),V>=0&&b({name:"Memory used",value:V,type:2},!0);let M=Dm(),te=M?DA("Program"):0,re=M?DA("Bind"):0,ue=M?DA("Check"):0,Ae=M?DA("Emit"):0;if(I.extendedDiagnostics){let de=c.getRelationCacheSizes();R("Assignability cache size",de.assignable),R("Identity cache size",de.identity),R("Subtype cache size",de.subtype),R("Strict subtype cache size",de.strictSubtype),M&&Lf((Be,Fe)=>{b7e(Be)||N(`${Be} time`,Fe,!0)})}else M&&(N("I/O read",DA("I/O Read"),!0),N("I/O write",DA("I/O Write"),!0),N("Parse time",te,!0),N("Bind time",re,!0),N("Check time",ue,!0),N("Emit time",Ae,!0));M&&N("Total time",te+re+ue+Ae,!1),gZr(n,h),M?u?(Lf(de=>{b7e(de)||bh(de)}),jd(de=>{b7e(de)||u2(de)})):E_():n.write(Z.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+` -`)}function b(V,P){h.push(V),P&&u?.addAggregateStatistic(V)}function R(V,P){b({name:V,value:P,type:1},!0)}function N(V,P,M){b({name:V,value:P,type:0},M)}}function gZr(n,c){let u=0,d=0;for(let I of c){I.name.length>u&&(u=I.name.length);let h=AZr(I);h.length>d&&(d=h.length)}for(let I of c)n.write(`${I.name}:`.padEnd(u+2)+AZr(I).toString().padStart(d)+n.newLine)}function AZr(n){switch(n.type){case 1:return""+n.value;case 0:return(n.value/1e3).toFixed(2)+"s";case 2:return Math.round(n.value/1e3)+"K";default:w.assertNever(n.type)}}function Dji(n,c,u,d){let I=n.getCurrentDirectory(),h=Mc(xo(I,"tsconfig.json"));if(n.fileExists(h))c(ff(Z.A_tsconfig_json_file_is_already_defined_at_Colon_0,h));else{n.writeFile(h,KRt(u,d,n.newLine));let b=[n.newLine,...y7e(n,"Created a new tsconfig.json with:")];b.push(URt(u,n.newLine)+n.newLine+n.newLine),b.push("You can learn more at https://aka.ms/tsconfig"+n.newLine);for(let R of b)n.write(R)}}function Jkt(n,c){let u=D_(n,"strictNullChecks");return{typeFromExpression:Fe,serializeTypeOfDeclaration:h,serializeReturnTypeForSignature:b,serializeTypeOfExpression:I};function d(Ye,ht){return Ye!==void 0&&(!ht||Ye&&dt(Ye))?!0:void 0}function I(Ye,ht,Et,Kt){return Fe(Ye,ht,!1,Et,Kt)??ue(Ye,ht)}function h(Ye,ht){switch(Ye.kind){case 171:return d(fC(Ye));case 169:return M(Ye,ht);case 260:return P(Ye,ht);case 172:return te(Ye,ht);case 208:return re(Ye,ht);case 277:return I(Ye.expression,ht,void 0,!0);case 211:case 212:case 226:return d(fC(Ye))||re(Ye,ht);case 303:return Fe(Ye.initializer,ht)||re(Ye,ht);default:w.assertNever(Ye,`Node needs to be an inferrable node, found ${w.formatSyntaxKind(Ye.kind)}`)}}function b(Ye,ht){switch(Ye.kind){case 177:return V(Ye,ht);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 wt(Ye,ht);default:w.assertNever(Ye,`Node needs to be an inferrable node, found ${w.formatSyntaxKind(Ye.kind)}`)}}function R(Ye){if(Ye)return Ye.kind===177?rb(Ye):Ye.parameters.length>0?fC(Ye.parameters[0]):void 0}function N(Ye,ht){let Et=R(Ye);return!Et&&Ye!==ht.firstAccessor&&(Et=R(ht.firstAccessor)),!Et&&ht.secondAccessor&&Ye!==ht.secondAccessor&&(Et=R(ht.secondAccessor)),Et}function V(Ye,ht){let Et=c.getAllAccessorDeclarations(Ye),Kt=N(Ye,Et);return Kt?d(Kt):Et.getAccessor?wt(Et.getAccessor,ht):!1}function P(Ye,ht){let Et=fC(Ye);if(Et)return d(Et);let Kt;return Ye.initializer&&(c.isExpandoFunctionDeclaration(Ye)||(Kt=Fe(Ye.initializer,ht,void 0,void 0,Pd(Ye)))),Kt??re(Ye,ht)}function M(Ye,ht){let Et=Ye.parent;if(Et.kind===178)return V(Et,ht);let Kt=fC(Ye),Tt=c.requiresAddingImplicitUndefined(Ye),Lt;return Kt?Lt=d(Kt,Tt):Ye.initializer&&sr(Ye.name)&&(Lt=Fe(Ye.initializer,ht,void 0,Tt)),Lt??re(Ye,ht)}function te(Ye,ht){let Et=fC(Ye);if(Et)return d(Et);let Kt;if(Ye.initializer){let Tt=fu(Ye);Kt=Fe(Ye.initializer,ht,void 0,void 0,Tt)}return Kt??re(Ye,ht)}function re(Ye,ht){return ht.tracker.reportInferenceFallback(Ye),!1}function ue(Ye,ht){return ht.tracker.reportInferenceFallback(Ye),!1}function Ae(Ye,ht){return ht.tracker.reportInferenceFallback(Ye),!1}function de(Ye,ht,Et){return Ye.kind===177?wt(Ye,Et):(Et.tracker.reportInferenceFallback(Ye),!1)}function Be(Ye,ht,Et,Kt){return E2(ht)?Fe(Ye,Et,!0,Kt):(Kt&&!dt(ht)&&Et.tracker.reportInferenceFallback(ht),d(ht))}function Fe(Ye,ht,Et=!1,Kt=!1,Tt=!1){switch(Ye.kind){case 217:return f4(Ye)?Be(Ye.expression,Wle(Ye),ht,Kt):Fe(Ye.expression,ht,Et,Kt);case 80:if(c.isUndefinedIdentifierExpression(Ye))return!0;break;case 106:return!0;case 219:case 218:return Ne(Ye,ht);case 216:case 234:let Lt=Ye;return Be(Lt.expression,Lt.type,ht,Kt);case 224:let kt=Ye;if(Kee(kt)&&(kt.operand.kind===10||kt.operand.kind===9))return It();break;case 9:return It();case 228:if(!Et&&!Tt)return!0;break;case 15:case 11:return It();case 10:return It();case 112:case 97:return It();case 209:return De(Ye,ht,Et);case 210:return Le(Ye,ht,Et);case 231:return ue(Ye,ht)}}function Ne(Ye,ht){let Et=d(Ye.type)??wt(Ye,ht),Kt=nt(Ye.typeParameters),Tt=Ye.parameters.every(Lt=>st(Lt,ht));return Et&&Kt&&Tt}function Qe(Ye,ht,Et){if(!Et)return ht.tracker.reportInferenceFallback(Ye),!1;for(let Kt of Ye.elements)if(Kt.kind===230)return ht.tracker.reportInferenceFallback(Kt),!1;return!0}function De(Ye,ht,Et){if(!Qe(Ye,ht,Et))return!1;let Kt=!0;for(let Tt of Ye.elements)w.assert(Tt.kind!==230),Tt.kind!==232&&(Kt=(Fe(Tt,ht,Et)??ue(Tt,ht))&&Kt);return!0}function lt(Ye,ht){let Et=!0;for(let Kt of Ye.properties){if(Kt.flags&262144){Et=!1;break}if(Kt.kind===304||Kt.kind===305)ht.tracker.reportInferenceFallback(Kt),Et=!1;else if(Kt.name.flags&262144){Et=!1;break}else if(Kt.name.kind===81)Et=!1;else if(Kt.name.kind===167){let Tt=Kt.name.expression;!Kee(Tt,!1)&&!c.isDefinitelyReferenceToGlobalSymbolObject(Tt)&&(ht.tracker.reportInferenceFallback(Kt.name),Et=!1)}}return Et}function Le(Ye,ht,Et){if(!lt(Ye,ht))return!1;let Kt=!0;for(let Tt of Ye.properties){w.assert(!G_(Tt)&&!Mx(Tt));let Lt=Tt.name;switch(Tt.kind){case 174:Kt=!!qe(Tt,Lt,ht)&&Kt;break;case 303:Kt=!!je(Tt,Lt,ht,Et)&&Kt;break;case 178:case 177:Kt=!!it(Tt,Lt,ht)&&Kt;break}}return Kt}function je(Ye,ht,Et,Kt){return Fe(Ye.initializer,Et,Kt)??re(Ye,Et)}function st(Ye,ht){return M(Ye,ht)}function nt(Ye){return Ye?.every(ht=>d(ht.constraint)&&d(ht.default))??!0}function qe(Ye,ht,Et){let Kt=wt(Ye,Et),Tt=nt(Ye.typeParameters),Lt=Ye.parameters.every(kt=>st(kt,Et));return Kt&&Tt&&Lt}function it(Ye,ht,Et){let Kt=c.getAllAccessorDeclarations(Ye),Tt=Kt.getAccessor&&R(Kt.getAccessor),Lt=Kt.setAccessor&&R(Kt.setAccessor);if(Tt!==void 0&&Lt!==void 0){let kt=Ye.parameters.every(Zt=>st(Zt,Et));return Nv(Ye)?kt&&d(Tt):kt}else if(Kt.firstAccessor===Ye){let kt=Tt??Lt;return kt?d(kt):de(Ye,Kt,Et)}return!1}function It(){return!0}function dt(Ye){return!u||i0(Ye.kind)||Ye.kind===201||Ye.kind===184||Ye.kind===185||Ye.kind===188||Ye.kind===189||Ye.kind===187||Ye.kind===203||Ye.kind===197?!0:Ye.kind===196?dt(Ye.type):Ye.kind===192||Ye.kind===193?Ye.types.every(dt):!1}function wt(Ye,ht){let Et,Kt=rb(Ye);return Kt&&(Et=d(Kt)),!Et&&GQ(Ye)&&(Et=vt(Ye,ht)),Et??Ae(Ye,ht)}function vt(Ye,ht){let Et;if(Ye&&!wf(Ye.body)){if(YI(Ye)&3)return;let Kt=Ye.body;Kt&&mc(Kt)?wx(Kt,Tt=>{if(!Et)Et=Tt.expression;else return Et=void 0,!0}):Et=Kt}if(Et)return Fe(Et,ht)}}var kN={};o(kN,{NameValidationResult:()=>EZr,discoverTypings:()=>Gji,isTypingUpToDate:()=>CZr,loadSafeList:()=>xji,loadTypesMap:()=>kji,nodeCoreModuleList:()=>_Zr,nodeCoreModules:()=>yZr,nonRelativeModuleNameForTypingCache:()=>bZr,prefixedNodeCoreModuleList:()=>hZr,renderPackageNameValidationFailure:()=>Zji,validatePackageName:()=>Fji});var yGe="action::set",bGe="action::invalidate",EGe="action::packageInstalled",B7e="event::typesRegistry",v7e="event::beginInstallTypes",S7e="event::endInstallTypes",Ukt="event::initializationFailed",R_e="action::watchTypingLocations",w7e;(n=>{n.GlobalCacheLocation="--globalTypingsCacheLocation",n.LogFile="--logFile",n.EnableTelemetry="--enableTelemetry",n.TypingSafeListLocation="--typingSafeListLocation",n.TypesMapLocation="--typesMapLocation",n.NpmLocation="--npmLocation",n.ValidateDefaultNpmLocation="--validateDefaultNpmLocation"})(w7e||(w7e={}));function dZr(n){return _d.args.includes(n)}function pZr(n){let c=_d.args.indexOf(n);return c>=0&&c<_d.args.length-1?_d.args[c+1]:void 0}function fZr(){let n=new Date;return`${n.getHours().toString().padStart(2,"0")}:${n.getMinutes().toString().padStart(2,"0")}:${n.getSeconds().toString().padStart(2,"0")}.${n.getMilliseconds().toString().padStart(3,"0")}`}var IZr=` - `;function pue(n){return IZr+n.replace(/\n/g,IZr)}function AP(n){return pue(JSON.stringify(n,void 0,2))}function CZr(n,c){return new Dn(Rt(c,`ts${m}`)||Rt(c,"latest")).compareTo(n.version)<=0}var mZr=["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"],hZr=mZr.map(n=>`node:${n}`),_Zr=[...mZr,...hZr],yZr=new Set(_Zr);function bZr(n){return yZr.has(n)?"node":n}function xji(n,c){let u=$he(c,d=>n.readFile(d));return new Map(Object.entries(u.config))}function kji(n,c){var u;let d=$he(c,I=>n.readFile(I));if((u=d.config)!=null&&u.simpleMap)return new Map(Object.entries(d.config.simpleMap))}function Gji(n,c,u,d,I,h,b,R,N,V){if(!b||!b.enable)return{cachedTypingPaths:[],newTypingNames:[],filesToWatch:[]};let P=new Map;u=tr(u,Qe=>{let De=Mc(Qe);if(mN(De))return De});let M=[];b.include&&Be(b.include,"Explicitly included types");let te=b.exclude||[];if(!V.types){let Qe=new Set(u.map(aa));Qe.add(d),Qe.forEach(De=>{Fe(De,"bower.json","bower_components",M),Fe(De,"package.json","node_modules",M)})}if(b.disableFilenameBasedTypeAcquisition||Ne(u),R){let Qe=TA(R.map(bZr),lm,Do);Be(Qe,"Inferred typings from unresolved imports")}for(let Qe of te)P.delete(Qe)&&c&&c(`Typing for ${Qe} is in exclude list, will be ignored.`);h.forEach((Qe,De)=>{let lt=N.get(De);P.get(De)===!1&<!==void 0&&CZr(Qe,lt)&&P.set(De,Qe.typingLocation)});let re=[],ue=[];P.forEach((Qe,De)=>{Qe?ue.push(Qe):re.push(De)});let Ae={cachedTypingPaths:ue,newTypingNames:re,filesToWatch:M};return c&&c(`Finished typings discovery:${AP(Ae)}`),Ae;function de(Qe){P.has(Qe)||P.set(Qe,!1)}function Be(Qe,De){c&&c(`${De}: ${JSON.stringify(Qe)}`),X(Qe,de)}function Fe(Qe,De,lt,Le){let je=xo(Qe,De),st,nt;n.fileExists(je)&&(Le.push(je),st=$he(je,dt=>n.readFile(dt)).config,nt=Fr([st.dependencies,st.devDependencies,st.optionalDependencies,st.peerDependencies],kl),Be(nt,`Typing names in '${je}' dependencies`));let qe=xo(Qe,lt);if(Le.push(qe),!n.directoryExists(qe))return;let it=[],It=nt?nt.map(dt=>xo(qe,dt,De)):n.readDirectory(qe,[".json"],void 0,void 0,3).filter(dt=>{if(xA(dt)!==De)return!1;let wt=Ad(Mc(dt)),vt=wt[wt.length-3][0]==="@";return vt&&lf(wt[wt.length-4])===lt||!vt&&lf(wt[wt.length-3])===lt});c&&c(`Searching for typing names in ${qe}; all files: ${JSON.stringify(It)}`);for(let dt of It){let wt=Mc(dt),Ye=$he(wt,Et=>n.readFile(Et)).config;if(!Ye.name)continue;let ht=Ye.types||Ye.typings;if(ht){let Et=Oc(ht,aa(wt));n.fileExists(Et)?(c&&c(` Package '${Ye.name}' provides its own types.`),P.set(Ye.name,Et)):c&&c(` Package '${Ye.name}' provides its own types but they are missing.`)}else it.push(Ye.name)}Be(it," Found package names")}function Ne(Qe){let De=tr(Qe,Le=>{if(!mN(Le))return;let je=o0(lf(xA(Le))),st=fv(je);return I.get(st)});De.length&&Be(De,"Inferred typings from file names"),lr(Qe,Le=>gd(Le,".jsx"))&&(c&&c("Inferred 'react' typings due to presence of '.jsx' extension"),de("react"))}}var EZr=(n=>(n[n.Ok=0]="Ok",n[n.EmptyName=1]="EmptyName",n[n.NameTooLong=2]="NameTooLong",n[n.NameStartsWithDot=3]="NameStartsWithDot",n[n.NameStartsWithUnderscore=4]="NameStartsWithUnderscore",n[n.NameContainsNonURISafeCharacters=5]="NameContainsNonURISafeCharacters",n))(EZr||{}),BZr=214;function Fji(n){return Kkt(n,!0)}function Kkt(n,c){if(!n)return 1;if(n.length>BZr)return 2;if(n.charCodeAt(0)===46)return 3;if(n.charCodeAt(0)===95)return 4;if(c){let u=/^@([^/]+)\/([^/]+)$/.exec(n);if(u){let d=Kkt(u[1],!1);if(d!==0)return{name:u[1],isScopeName:!0,result:d};let I=Kkt(u[2],!1);return I!==0?{name:u[2],isScopeName:!1,result:I}:0}}return encodeURIComponent(n)!==n?5:0}function Zji(n,c){return typeof n=="object"?vZr(c,n.result,n.name,n.isScopeName):vZr(c,n,c,!1)}function vZr(n,c,u,d){let I=d?"Scope":"Package";switch(c){case 1:return`'${n}':: ${I} name '${u}' cannot be empty`;case 2:return`'${n}':: ${I} name '${u}' should be less than ${BZr} characters`;case 3:return`'${n}':: ${I} name '${u}' cannot start with '.'`;case 4:return`'${n}':: ${I} name '${u}' cannot start with '_'`;case 5:return`'${n}':: ${I} name '${u}' contains non URI safe characters`;case 0:return w.fail();default:w.assertNever(c)}}var BGe;(n=>{class c{constructor(I){this.text=I}getText(I,h){return I===0&&h===this.text.length?this.text:this.text.substring(I,h)}getLength(){return this.text.length}getChangeRange(){}}function u(d){return new c(d)}n.fromString=u})(BGe||(BGe={}));var jkt=(n=>(n[n.Dependencies=1]="Dependencies",n[n.DevDependencies=2]="DevDependencies",n[n.PeerDependencies=4]="PeerDependencies",n[n.OptionalDependencies=8]="OptionalDependencies",n[n.All=15]="All",n))(jkt||{}),zkt=(n=>(n[n.Off=0]="Off",n[n.On=1]="On",n[n.Auto=2]="Auto",n))(zkt||{}),qkt=(n=>(n[n.Semantic=0]="Semantic",n[n.PartialSemantic=1]="PartialSemantic",n[n.Syntactic=2]="Syntactic",n))(qkt||{}),Lv={},$kt=(n=>(n.Original="original",n.TwentyTwenty="2020",n))($kt||{}),T7e=(n=>(n.All="All",n.SortAndCombine="SortAndCombine",n.RemoveUnused="RemoveUnused",n))(T7e||{}),N7e=(n=>(n[n.Invoked=1]="Invoked",n[n.TriggerCharacter=2]="TriggerCharacter",n[n.TriggerForIncompleteCompletions=3]="TriggerForIncompleteCompletions",n))(N7e||{}),eGt=(n=>(n.Type="Type",n.Parameter="Parameter",n.Enum="Enum",n))(eGt||{}),tGt=(n=>(n.none="none",n.definition="definition",n.reference="reference",n.writtenReference="writtenReference",n))(tGt||{}),rGt=(n=>(n[n.None=0]="None",n[n.Block=1]="Block",n[n.Smart=2]="Smart",n))(rGt||{}),R7e=(n=>(n.Ignore="ignore",n.Insert="insert",n.Remove="remove",n))(R7e||{});function vGe(n){return{indentSize:4,tabSize:4,newLineCharacter: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 SZr=vGe(` -`),SGe=(n=>(n[n.aliasName=0]="aliasName",n[n.className=1]="className",n[n.enumName=2]="enumName",n[n.fieldName=3]="fieldName",n[n.interfaceName=4]="interfaceName",n[n.keyword=5]="keyword",n[n.lineBreak=6]="lineBreak",n[n.numericLiteral=7]="numericLiteral",n[n.stringLiteral=8]="stringLiteral",n[n.localName=9]="localName",n[n.methodName=10]="methodName",n[n.moduleName=11]="moduleName",n[n.operator=12]="operator",n[n.parameterName=13]="parameterName",n[n.propertyName=14]="propertyName",n[n.punctuation=15]="punctuation",n[n.space=16]="space",n[n.text=17]="text",n[n.typeParameterName=18]="typeParameterName",n[n.enumMemberName=19]="enumMemberName",n[n.functionName=20]="functionName",n[n.regularExpressionLiteral=21]="regularExpressionLiteral",n[n.link=22]="link",n[n.linkName=23]="linkName",n[n.linkText=24]="linkText",n))(SGe||{}),nGt=(n=>(n[n.None=0]="None",n[n.MayIncludeAutoImports=1]="MayIncludeAutoImports",n[n.IsImportStatementCompletion=2]="IsImportStatementCompletion",n[n.IsContinuation=4]="IsContinuation",n[n.ResolvedModuleSpecifiers=8]="ResolvedModuleSpecifiers",n[n.ResolvedModuleSpecifiersBeyondLimit=16]="ResolvedModuleSpecifiersBeyondLimit",n[n.MayIncludeMethodSnippets=32]="MayIncludeMethodSnippets",n))(nGt||{}),iGt=(n=>(n.Comment="comment",n.Region="region",n.Code="code",n.Imports="imports",n))(iGt||{}),sGt=(n=>(n[n.JavaScript=0]="JavaScript",n[n.SourceMap=1]="SourceMap",n[n.Declaration=2]="Declaration",n))(sGt||{}),oGt=(n=>(n[n.None=0]="None",n[n.InMultiLineCommentTrivia=1]="InMultiLineCommentTrivia",n[n.InSingleQuoteStringLiteral=2]="InSingleQuoteStringLiteral",n[n.InDoubleQuoteStringLiteral=3]="InDoubleQuoteStringLiteral",n[n.InTemplateHeadOrNoSubstitutionTemplate=4]="InTemplateHeadOrNoSubstitutionTemplate",n[n.InTemplateMiddleOrTail=5]="InTemplateMiddleOrTail",n[n.InTemplateSubstitutionPosition=6]="InTemplateSubstitutionPosition",n))(oGt||{}),aGt=(n=>(n[n.Punctuation=0]="Punctuation",n[n.Keyword=1]="Keyword",n[n.Operator=2]="Operator",n[n.Comment=3]="Comment",n[n.Whitespace=4]="Whitespace",n[n.Identifier=5]="Identifier",n[n.NumberLiteral=6]="NumberLiteral",n[n.BigIntLiteral=7]="BigIntLiteral",n[n.StringLiteral=8]="StringLiteral",n[n.RegExpLiteral=9]="RegExpLiteral",n))(aGt||{}),cGt=(n=>(n.unknown="",n.warning="warning",n.keyword="keyword",n.scriptElement="script",n.moduleElement="module",n.classElement="class",n.localClassElement="local class",n.interfaceElement="interface",n.typeElement="type",n.enumElement="enum",n.enumMemberElement="enum member",n.variableElement="var",n.localVariableElement="local var",n.variableUsingElement="using",n.variableAwaitUsingElement="await using",n.functionElement="function",n.localFunctionElement="local function",n.memberFunctionElement="method",n.memberGetAccessorElement="getter",n.memberSetAccessorElement="setter",n.memberVariableElement="property",n.memberAccessorVariableElement="accessor",n.constructorImplementationElement="constructor",n.callSignatureElement="call",n.indexSignatureElement="index",n.constructSignatureElement="construct",n.parameterElement="parameter",n.typeParameterElement="type parameter",n.primitiveType="primitive type",n.label="label",n.alias="alias",n.constElement="const",n.letElement="let",n.directory="directory",n.externalModuleName="external module name",n.jsxAttribute="JSX attribute",n.string="string",n.link="link",n.linkName="link name",n.linkText="link text",n))(cGt||{}),lGt=(n=>(n.none="",n.publicMemberModifier="public",n.privateMemberModifier="private",n.protectedMemberModifier="protected",n.exportedModifier="export",n.ambientModifier="declare",n.staticModifier="static",n.abstractModifier="abstract",n.optionalModifier="optional",n.deprecatedModifier="deprecated",n.dtsModifier=".d.ts",n.tsModifier=".ts",n.tsxModifier=".tsx",n.jsModifier=".js",n.jsxModifier=".jsx",n.jsonModifier=".json",n.dmtsModifier=".d.mts",n.mtsModifier=".mts",n.mjsModifier=".mjs",n.dctsModifier=".d.cts",n.ctsModifier=".cts",n.cjsModifier=".cjs",n))(lGt||{}),uGt=(n=>(n.comment="comment",n.identifier="identifier",n.keyword="keyword",n.numericLiteral="number",n.bigintLiteral="bigint",n.operator="operator",n.stringLiteral="string",n.whiteSpace="whitespace",n.text="text",n.punctuation="punctuation",n.className="class name",n.enumName="enum name",n.interfaceName="interface name",n.moduleName="module name",n.typeParameterName="type parameter name",n.typeAliasName="type alias name",n.parameterName="parameter name",n.docCommentTagName="doc comment tag name",n.jsxOpenTagName="jsx open tag name",n.jsxCloseTagName="jsx close tag name",n.jsxSelfClosingTagName="jsx self closing tag name",n.jsxAttribute="jsx attribute",n.jsxText="jsx text",n.jsxAttributeStringLiteralValue="jsx attribute string literal value",n))(uGt||{}),D7e=(n=>(n[n.comment=1]="comment",n[n.identifier=2]="identifier",n[n.keyword=3]="keyword",n[n.numericLiteral=4]="numericLiteral",n[n.operator=5]="operator",n[n.stringLiteral=6]="stringLiteral",n[n.regularExpressionLiteral=7]="regularExpressionLiteral",n[n.whiteSpace=8]="whiteSpace",n[n.text=9]="text",n[n.punctuation=10]="punctuation",n[n.className=11]="className",n[n.enumName=12]="enumName",n[n.interfaceName=13]="interfaceName",n[n.moduleName=14]="moduleName",n[n.typeParameterName=15]="typeParameterName",n[n.typeAliasName=16]="typeAliasName",n[n.parameterName=17]="parameterName",n[n.docCommentTagName=18]="docCommentTagName",n[n.jsxOpenTagName=19]="jsxOpenTagName",n[n.jsxCloseTagName=20]="jsxCloseTagName",n[n.jsxSelfClosingTagName=21]="jsxSelfClosingTagName",n[n.jsxAttribute=22]="jsxAttribute",n[n.jsxText=23]="jsxText",n[n.jsxAttributeStringLiteralValue=24]="jsxAttributeStringLiteralValue",n[n.bigintLiteral=25]="bigintLiteral",n))(D7e||{}),X0=Ft(99,!0),gGt=(n=>(n[n.None=0]="None",n[n.Value=1]="Value",n[n.Type=2]="Type",n[n.Namespace=4]="Namespace",n[n.All=7]="All",n))(gGt||{});function wGe(n){switch(n.kind){case 260:return so(n)&&lG(n)?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 n.name===void 0?3:2;case 306:case 263:return 3;case 267:return Yf(n)||FG(n)===1?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 _4(n){n=Y7e(n);let c=n.parent;return n.kind===307?1:tf(c)||c0(c)||DG(c)||_y(c)||sT(c)||Cm(c)&&n===c.name?7:TGe(n)?Lji(n):eT(n)?wGe(c):w_(n)&&Si(n,pg(Fle,J9,nP))?7:Oji(n)?2:Vji(n)?4:qp(c)?(w.assert(Zv(c.parent)),2):id(c)?3:1}function Lji(n){let c=n.kind===166?n:a0(n.parent)&&n.parent.right===n?n.parent:void 0;return c&&c.parent.kind===271?7:4}function TGe(n){for(;n.parent.kind===166;)n=n.parent;return NQ(n.parent)&&n.parent.moduleReference===n}function Vji(n){return Wji(n)||Pji(n)}function Wji(n){let c=n,u=!0;if(c.parent.kind===166){for(;c.parent&&c.parent.kind===166;)c=c.parent;u=c.right===n}return c.parent.kind===183&&!u}function Pji(n){let c=n,u=!0;if(c.parent.kind===211){for(;c.parent&&c.parent.kind===211;)c=c.parent;u=c.name===n}if(!u&&c.parent.kind===233&&c.parent.parent.kind===298){let d=c.parent.parent.parent;return d.kind===263&&c.parent.parent.token===119||d.kind===264&&c.parent.parent.token===96}return!1}function Oji(n){switch(t6(n)&&(n=n.parent),n.kind){case 110:return!NB(n);case 197:return!0}switch(n.parent.kind){case 183:return!0;case 205:return!n.parent.isTypeOf;case 233:return LS(n.parent)}return!1}function x7e(n,c=!1,u=!1){return D_e(n,cu,G7e,c,u)}function fue(n,c=!1,u=!1){return D_e(n,zS,G7e,c,u)}function k7e(n,c=!1,u=!1){return D_e(n,BB,G7e,c,u)}function AGt(n,c=!1,u=!1){return D_e(n,V1,Mji,c,u)}function dGt(n,c=!1,u=!1){return D_e(n,GC,G7e,c,u)}function pGt(n,c=!1,u=!1){return D_e(n,Jm,Qji,c,u)}function G7e(n){return n.expression}function Mji(n){return n.tag}function Qji(n){return n.tagName}function D_e(n,c,u,d,I){let h=d?fGt(n):NGe(n);return I&&(h=ZC(h)),!!h&&!!h.parent&&c(h.parent)&&u(h.parent)===h}function NGe(n){return kte(n)?n.parent:n}function fGt(n){return kte(n)||V7e(n)?n.parent:n}function RGe(n,c){for(;n;){if(n.kind===256&&n.label.escapedText===c)return n.label;n=n.parent}}function x_e(n,c){return Io(n.expression)?n.expression.name.text===c:!1}function k_e(n){var c;return sr(n)&&((c=eo(n.parent,T3))==null?void 0:c.label)===n}function F7e(n){var c;return sr(n)&&((c=eo(n.parent,nC))==null?void 0:c.label)===n}function Z7e(n){return F7e(n)||k_e(n)}function L7e(n){var c;return((c=eo(n.parent,X9))==null?void 0:c.tagName)===n}function IGt(n){var c;return((c=eo(n.parent,a0))==null?void 0:c.right)===n}function kte(n){var c;return((c=eo(n.parent,Io))==null?void 0:c.name)===n}function V7e(n){var c;return((c=eo(n.parent,hA))==null?void 0:c.argumentExpression)===n}function W7e(n){var c;return((c=eo(n.parent,CC))==null?void 0:c.name)===n}function P7e(n){var c;return sr(n)&&((c=eo(n.parent,$l))==null?void 0:c.name)===n}function DGe(n){switch(n.parent.kind){case 172:case 171:case 303:case 306:case 174:case 173:case 177:case 178:case 267:return vl(n.parent)===n;case 212:return n.parent.argumentExpression===n;case 167:return!0;case 201:return n.parent.parent.kind===199;default:return!1}}function CGt(n){return EZ(n.parent.parent)&&L8(n.parent.parent)===n}function y4(n){for(w2(n)&&(n=n.parent.parent);;){if(n=n.parent,!n)return;switch(n.kind){case 307:case 174:case 173:case 262:case 218:case 177:case 178:case 263:case 264:case 266:case 267:return n}}}function _Y(n){switch(n.kind){case 307:return mm(n)?"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 c(n);case 208:return c(WS(n));case 219:case 262:case 218:return"function";case 177:return"getter";case 178:return"setter";case 174:case 173:return"method";case 303:let{initializer:u}=n;return $l(u)?"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 ba(n,31)?"property":"parameter";case 271:case 276:case 281:case 274:case 280:return"alias";case 226:let d=CI(n),{right:I}=n;switch(d){case 7:case 8:case 9:case 0:return"";case 1:case 2:let b=_Y(I);return b===""?"const":b;case 3:return WA(I)?"method":"property";case 4:return"property";case 5:return WA(I)?"method":"property";case 6:return"local class";default:return""}case 80:return sT(n.parent)?"alias":"";case 277:let h=_Y(n.expression);return h===""?"const":h;default:return""}function c(u){return Qp(u)?"const":oI(u)?"let":"var"}}function Gte(n){switch(n.kind){case 110:return!0;case 80:return kme(n)&&n.parent.kind===169;default:return!1}}var Yji=/^\/\/\/\s*=u.end}function Z_e(n,c,u){return n.pos<=c&&n.end>=u}function Iue(n,c,u){return kGe(n.pos,n.end,c,u)}function xGe(n,c,u,d){return kGe(n.getStart(c),n.end,u,d)}function kGe(n,c,u,d){let I=Math.max(n,u),h=Math.min(c,d);return Id.kind===c)}function GGe(n){let c=be(n.parent.getChildren(),u=>Ate(u)&&V2(u,n));return w.assert(!c||Ue(c.getChildren(),n)),c}function wZr(n){return n.kind===90}function Hji(n){return n.kind===86}function Xji(n){return n.kind===100}function Jji(n){if(Sf(n))return n.name;if(bc(n)){let c=n.modifiers&&be(n.modifiers,wZr);if(c)return c}if(tp(n)){let c=be(n.getChildren(),Hji);if(c)return c}}function Uji(n){if(Sf(n))return n.name;if(mp(n)){let c=be(n.modifiers,wZr);if(c)return c}if(WA(n)){let c=be(n.getChildren(),Xji);if(c)return c}}function Kji(n){let c;return Si(n,u=>(Ya(u)&&(c=u),!a0(u.parent)&&!Ya(u.parent)&&!Bx(u.parent))),c}function FGe(n,c){if(n.flags&16777216)return;let u=$Ge(n,c);if(u)return u;let d=Kji(n);return d&&c.getTypeAtLocation(d)}function jji(n,c){if(!c)switch(n.kind){case 263:case 231:return Jji(n);case 262:case 218:return Uji(n);case 176:return n}if(Sf(n))return n.name}function TZr(n,c){if(n.importClause){if(n.importClause.name&&n.importClause.namedBindings)return;if(n.importClause.name)return n.importClause.name;if(n.importClause.namedBindings){if(wN(n.importClause.namedBindings)){let u=wu(n.importClause.namedBindings.elements);return u?u.name:void 0}else if(Px(n.importClause.namedBindings))return n.importClause.namedBindings.name}}if(!c)return n.moduleSpecifier}function NZr(n,c){if(n.exportClause){if(GB(n.exportClause))return wu(n.exportClause.elements)?n.exportClause.elements[0].name:void 0;if(rD(n.exportClause))return n.exportClause.name}if(!c)return n.moduleSpecifier}function zji(n){if(n.types.length===1)return n.types[0].expression}function RZr(n,c){let{parent:u}=n;if(gg(n)&&(c||n.kind!==90)?ew(u)&&Ue(u.modifiers,n):n.kind===86?bc(u)||tp(n):n.kind===100?mp(u)||WA(n):n.kind===120?HI(u):n.kind===94?tP(u):n.kind===156?Wf(u):n.kind===145||n.kind===144?CC(u):n.kind===102?Cm(u):n.kind===139?Pb(u):n.kind===153&&sb(u)){let d=jji(u,c);if(d)return d}if((n.kind===115||n.kind===87||n.kind===121)&&yl(u)&&u.declarations.length===1){let d=u.declarations[0];if(sr(d.name))return d.name}if(n.kind===156){if(sT(u)&&u.isTypeOnly){let d=TZr(u.parent,c);if(d)return d}if(mC(u)&&u.isTypeOnly){let d=NZr(u,c);if(d)return d}}if(n.kind===130){if(_y(u)&&u.propertyName||c0(u)&&u.propertyName||Px(u)||rD(u))return u.name;if(mC(u)&&u.exportClause&&rD(u.exportClause))return u.exportClause.name}if(n.kind===102&&mI(u)){let d=TZr(u,c);if(d)return d}if(n.kind===95){if(mC(u)){let d=NZr(u,c);if(d)return d}if(tf(u))return ZC(u.expression)}if(n.kind===149&&DG(u))return u.expression;if(n.kind===161&&(mI(u)||mC(u))&&u.moduleSpecifier)return u.moduleSpecifier;if((n.kind===96||n.kind===119)&&WE(u)&&u.token===n.kind){let d=zji(u);if(d)return d}if(n.kind===96){if(qp(u)&&u.constraint&&F(u.constraint))return u.constraint.typeName;if(Ei(u)&&F(u.extendsType))return u.extendsType.typeName}if(n.kind===140&&bo(u))return u.typeParameter.name;if(n.kind===103&&qp(u)&&Sl(u.parent))return u.name;if(n.kind===143&&as(u)&&u.operator===143&&F(u.type))return u.type.typeName;if(n.kind===148&&as(u)&&u.operator===148&&He(u.type)&&F(u.type.elementType))return u.type.elementType.typeName;if(!c){if((n.kind===105&&zS(u)||n.kind===116&&Cf(u)||n.kind===114&&eD(u)||n.kind===135&&Ob(u)||n.kind===127&&Vx(u)||n.kind===91&&q3(u))&&u.expression)return ZC(u.expression);if((n.kind===103||n.kind===104)&&no(u)&&u.operatorToken===n)return ZC(u.right);if(n.kind===130&&qS(u)&&F(u.type))return u.type.typeName;if(n.kind===103&&tD(u)||n.kind===165&&W1(u))return ZC(u.expression)}return n}function Y7e(n){return RZr(n,!1)}function ZGe(n){return RZr(n,!0)}function lb(n,c){return Fte(n,c,u=>VS(u)||i0(u.kind)||kc(u))}function Fte(n,c,u){return DZr(n,c,!1,u,!1)}function Qc(n,c){return DZr(n,c,!0,void 0,!1)}function DZr(n,c,u,d,I){let h=n,b;e:for(;;){let N=h.getChildren(n),V=cf(N,c,(P,M)=>M,(P,M)=>{let te=N[P].getEnd();if(tec?1:R(N[P],re,te)?N[P-1]&&R(N[P-1])?1:0:d&&re===c&&N[P-1]&&N[P-1].getEnd()===c&&R(N[P-1])?1:-1});if(b)return b;if(V>=0&&N[V]){h=N[V];continue e}return h}function R(N,V,P){if(P??(P=N.getEnd()),Pc))return!1;if(cu.getStart(n)&&c(h.pos<=n.pos&&h.end>n.end||h.pos===n.end)&&wGt(h,u)?d(h):void 0)}}function _m(n,c,u,d){let I=h(u||c);return w.assert(!(I&&VGe(I))),I;function h(b){if(xZr(b)&&b.kind!==1)return b;let R=b.getChildren(c),N=cf(R,n,(P,M)=>M,(P,M)=>n=R[P-1].end?0:1:-1);if(N>=0&&R[N]){let P=R[N];if(n=n||!wGt(P,c)||VGe(P)){let re=bGt(R,N,c,b.kind);return re?!d&&pf(re)&&re.getChildren(c).length?h(re):yGt(re,c):void 0}else return h(P)}w.assert(u!==void 0||b.kind===307||b.kind===1||pf(b));let V=bGt(R,R.length,c,b.kind);return V&&yGt(V,c)}}function xZr(n){return O9(n)&&!VGe(n)}function yGt(n,c){if(xZr(n))return n;let u=n.getChildren(c);if(u.length===0)return n;let d=bGt(u,u.length,c,n.kind);return d&&yGt(d,c)}function bGt(n,c,u,d){for(let I=c-1;I>=0;I--){let h=n[I];if(VGe(h))I===0&&(d===12||d===285)&&w.fail("`JsxText` tokens should not be the first child of `JsxElement | JsxSelfClosingElement`");else if(wGt(n[I],u))return n[I]}}function U6(n,c,u=_m(c,n)){if(u&&g8(u)){let d=u.getStart(n),I=u.getEnd();if(du.getStart(n)}function BGt(n,c){let u=Qc(n,c);return!!(sY(u)||u.kind===19&&kle(u.parent)&&Ox(u.parent.parent)||u.kind===30&&Jm(u.parent)&&Ox(u.parent.parent))}function WGe(n,c){function u(d){for(;d;)if(d.kind>=285&&d.kind<=294||d.kind===12||d.kind===30||d.kind===32||d.kind===80||d.kind===20||d.kind===19||d.kind===44)d=d.parent;else if(d.kind===284){if(c>d.getStart(n))return!0;d=d.parent}else return!1;return!1}return u(Qc(n,c))}function PGe(n,c,u){let d=vr(n.kind),I=vr(c),h=n.getFullStart(),b=u.text.lastIndexOf(I,h);if(b===-1)return;if(u.text.lastIndexOf(d,h-1)!!h.typeParameters&&h.typeParameters.length>=c)}function J7e(n,c){if(c.text.lastIndexOf("<",n?n.pos:c.text.length)===-1)return;let u=n,d=0,I=0;for(;u;){switch(u.kind){case 30:if(u=_m(u.getFullStart(),c),u&&u.kind===29&&(u=_m(u.getFullStart(),c)),!u||!sr(u))return;if(!d)return eT(u)?void 0:{called:u,nTypeArguments:I};d--;break;case 50:d=3;break;case 49:d=2;break;case 32:d++;break;case 20:if(u=PGe(u,19,c),!u)return;break;case 22:if(u=PGe(u,21,c),!u)return;break;case 24:if(u=PGe(u,23,c),!u)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(Ya(u))break;return}u=_m(u.getFullStart(),c)}}function LZ(n,c,u){return jC.getRangeOfEnclosingComment(n,c,void 0,u)}function SGt(n,c){let u=Qc(n,c);return!!Si(u,aT)}function wGt(n,c){return n.kind===1?!!n.jsDoc:n.getWidth(c)!==0}function Cue(n,c=0){let u=[],d=DC(n)?b2(n)&~c:0;return d&2&&u.push("private"),d&4&&u.push("protected"),d&1&&u.push("public"),(d&256||$p(n))&&u.push("static"),d&64&&u.push("abstract"),d&32&&u.push("export"),d&65536&&u.push("deprecated"),n.flags&33554432&&u.push("declare"),n.kind===277&&u.push("export"),u.length>0?u.join(","):""}function TGt(n){if(n.kind===183||n.kind===213)return n.typeArguments;if($l(n)||n.kind===263||n.kind===264)return n.typeParameters}function OGe(n){return n===2||n===3}function U7e(n){return!!(n===11||n===14||RS(n))}function kZr(n,c,u){return!!(c.flags&4)&&n.isEmptyAnonymousObjectType(u)}function NGt(n){if(!n.isIntersection())return!1;let{types:c,checker:u}=n;return c.length===2&&(kZr(u,c[0],c[1])||kZr(u,c[1],c[0]))}function W_e(n,c,u){return RS(n.kind)&&n.getStart(u){let u=sd(c);return!n[u]&&(n[u]=!0)}}function K6(n){return n.getText(0,n.getLength())}function O_e(n,c){let u="";for(let d=0;d!c.isDeclarationFile&&!n.isSourceFileFromExternalLibrary(c)&&!!(c.externalModuleIndicator||c.commonJsModuleIndicator))}function kGt(n){return n.getSourceFiles().some(c=>!c.isDeclarationFile&&!n.isSourceFileFromExternalLibrary(c)&&!!c.externalModuleIndicator)}function nje(n){return!!n.module||iA(n)>=2||!!n.noEmit}function j6(n,c){return{fileExists:u=>n.fileExists(u),getCurrentDirectory:()=>c.getCurrentDirectory(),readFile:Hi(c,c.readFile),useCaseSensitiveFileNames:Hi(c,c.useCaseSensitiveFileNames),getSymlinkCache:Hi(c,c.getSymlinkCache)||n.getSymlinkCache,getModuleSpecifierCache:Hi(c,c.getModuleSpecifierCache),getPackageJsonInfoCache:()=>{var u;return(u=n.getModuleResolutionCache())==null?void 0:u.getPackageJsonInfoCache()},getGlobalTypingsCacheLocation:Hi(c,c.getGlobalTypingsCacheLocation),redirectTargetsMap:n.redirectTargetsMap,getProjectReferenceRedirect:u=>n.getProjectReferenceRedirect(u),isSourceOfProjectReferenceRedirect:u=>n.isSourceOfProjectReferenceRedirect(u),getNearestAncestorDirectoryWithPackageJson:Hi(c,c.getNearestAncestorDirectoryWithPackageJson),getFileIncludeReasons:()=>n.getFileIncludeReasons(),getCommonSourceDirectory:()=>n.getCommonSourceDirectory()}}function ije(n,c){return{...j6(n,c),getCommonSourceDirectory:()=>n.getCommonSourceDirectory()}}function HGe(n){return n===2||n>=3&&n<=99||n===100}function NV(n,c,u,d,I){return _e.createImportDeclaration(void 0,n||c?_e.createImportClause(!!I,n,c&&c.length?_e.createNamedImports(c):void 0):void 0,typeof u=="string"?hue(u,d):u,void 0)}function hue(n,c){return _e.createStringLiteral(n,c===0)}var GGt=(n=>(n[n.Single=0]="Single",n[n.Double=1]="Double",n))(GGt||{});function sje(n,c){return Ace(n,c)?1:0}function W2(n,c){if(c.quotePreference&&c.quotePreference!=="auto")return c.quotePreference==="single"?0:1;{let u=JR(n)&&n.imports&&be(n.imports,d=>bu(d)&&!qd(d.parent));return u?sje(u,n):1}}function oje(n){switch(n){case 0:return"'";case 1:return'"';default:return w.assertNever(n)}}function aje(n){let c=XGe(n);return c===void 0?void 0:Sc(c)}function XGe(n){return n.escapedName!=="default"?n.escapedName:le(n.declarations,c=>{let u=vl(c);return u&&u.kind===80?u.escapedText:void 0})}function JGe(n){return XA(n)&&(DG(n.parent)||mI(n.parent)||RN(n.parent)||Q0(n.parent,!1)&&n.parent.arguments[0]===n||pC(n.parent)&&n.parent.arguments[0]===n)}function Q_e(n){return ml(n)&&Vg(n.parent)&&sr(n.name)&&!n.propertyName}function UGe(n,c){let u=n.getTypeAtLocation(c.parent);return u&&n.getPropertyOfType(u,c.name.text)}function Y_e(n,c,u){if(n)for(;n.parent;){if(Gc(n.parent)||!qji(u,n.parent,c))return n;n=n.parent}}function qji(n,c,u){return Cy(n,c.getStart(u))&&c.getEnd()<=Uu(n)}function Lte(n,c){return ew(n)?be(n.modifiers,u=>u.kind===c):void 0}function cje(n,c,u,d,I){var h;let R=(Ra(u)?u[0]:u).kind===243?W8:fG,N=Gt(c.statements,R),{comparer:V,isSorted:P}=hP.getOrganizeImportsStringComparerWithDetection(N,I),M=Ra(u)?Cl(u,(te,re)=>hP.compareImportsOrRequireStatements(te,re,V)):[u];if(!N?.length){if(JR(c))n.insertNodesAtTopOfFile(c,M,d);else for(let te of M)n.insertStatementsInNewFile(c.fileName,[te],(h=Tp(te))==null?void 0:h.getSourceFile());return}if(w.assert(JR(c)),N&&P)for(let te of M){let re=hP.getImportDeclarationInsertionIndex(N,te,V);if(re===0){let ue=N[0]===c.statements[0]?{leadingTriviaOption:po.LeadingTriviaOption.Exclude}:{};n.insertNodeBefore(c,N[0],te,!1,ue)}else{let ue=N[re-1];n.insertNodeAfter(c,ue,te)}}else{let te=qo(N);te?n.insertNodesAfter(c,te,M):n.insertNodesAtTopOfFile(c,M,d)}}function lje(n,c){return w.assert(n.isTypeOnly),ps(n.getChildAt(0,c),tje)}function Vte(n,c){return!!n&&!!c&&n.start===c.start&&n.length===c.length}function uje(n,c,u){return(u?lm:sp)(n.fileName,c.fileName)&&Vte(n.textSpan,c.textSpan)}function gje(n){return(c,u)=>uje(c,u,n)}function Aje(n,c){if(n){for(let u=0;uJc(u)?!0:ml(u)||Vg(u)||Vu(u)?!1:"quit")}var ZGt=$ji();function $ji(){let n=_Q*10,c,u,d,I;P();let h=M=>R(M,17);return{displayParts:()=>{let M=c.length&&c[c.length-1].text;return I>n&&M&&M!=="..."&&(Xm(M.charCodeAt(M.length-1))||c.push(Qb(" ",16)),c.push(Qb("...",15))),c},writeKeyword:M=>R(M,5),writeOperator:M=>R(M,12),writePunctuation:M=>R(M,15),writeTrailingSemicolon:M=>R(M,15),writeSpace:M=>R(M,16),writeStringLiteral:M=>R(M,8),writeParameter:M=>R(M,13),writeProperty:M=>R(M,14),writeLiteral:M=>R(M,8),writeSymbol:N,writeLine:V,write:h,writeComment:h,getText:()=>"",getTextPos:()=>0,getColumn:()=>0,getLine:()=>0,isAtStartOfLine:()=>!1,hasTrailingWhitespace:()=>!1,hasTrailingComment:()=>!1,rawWrite:za,getIndent:()=>d,increaseIndent:()=>{d++},decreaseIndent:()=>{d--},clear:P};function b(){if(!(I>n)&&u){let M=XX(d);M&&(I+=M.length,c.push(Qb(M,16))),u=!1}}function R(M,te){I>n||(b(),I+=M.length,c.push(Qb(M,te)))}function N(M,te){I>n||(b(),I+=M.length,c.push(LGt(M,te)))}function V(){I>n||(I+=1,c.push(Wte()),u=!0)}function P(){c=[],u=!0,d=0,I=0}}function LGt(n,c){return Qb(n,u(c));function u(d){let I=d.flags;return I&3?pje(d)?13:9:I&4||I&32768||I&65536?14:I&8?19:I&16?20:I&32?1:I&64?4:I&384?2:I&1536?11:I&8192?10:I&262144?18:I&524288||I&2097152?0:17}}function Qb(n,c){return{text:n,kind:SGe[c]}}function DI(){return Qb(" ",16)}function OE(n){return Qb(vr(n),5)}function A0(n){return Qb(vr(n),15)}function yue(n){return Qb(vr(n),12)}function VGt(n){return Qb(n,13)}function WGt(n){return Qb(n,14)}function fje(n){let c=Hn(n);return c===void 0?P2(n):OE(c)}function P2(n){return Qb(n,17)}function PGt(n){return Qb(n,0)}function OGt(n){return Qb(n,18)}function jGe(n){return Qb(n,24)}function MGt(n,c){return{text:n,kind:SGe[23],target:{fileName:ls(c).fileName,textSpan:Ey(c)}}}function Ije(n){return Qb(n,22)}function QGt(n,c){var u;let d=KNt(n)?"link":jNt(n)?"linkcode":"linkplain",I=[Ije(`{@${d} `)];if(!n.name)n.text&&I.push(jGe(n.text));else{let h=c?.getSymbolAtLocation(n.name),b=h&&c?hje(h,c):void 0,R=tzi(n.text),N=Tf(n.name)+n.text.slice(0,R),V=ezi(n.text.slice(R)),P=b?.valueDeclaration||((u=b?.declarations)==null?void 0:u[0]);if(P)I.push(MGt(N,P)),V&&I.push(jGe(V));else{let M=R===0||n.text.charCodeAt(R)===124&&N.charCodeAt(N.length-1)!==32?" ":"";I.push(jGe(N+M+V))}}return I.push(Ije("}")),I}function ezi(n){let c=0;if(n.charCodeAt(c++)===124){for(;c"&&u--,d++,!u)return d}return 0}var rzi=` -`;function WZ(n,c){var u;return c?.newLineCharacter||((u=n.getNewLine)==null?void 0:u.call(n))||rzi}function Wte(){return Qb(` -`,6)}function RV(n){try{return n(ZGt),ZGt.displayParts()}finally{ZGt.clear()}}function H_e(n,c,u,d=0){return RV(I=>{n.writeType(c,u,d|1024|16384,I)})}function bue(n,c,u,d,I=0){return RV(h=>{n.writeSymbol(c,u,d,I|8,h)})}function Cje(n,c,u,d=0){return d|=25632,RV(I=>{n.writeSignature(c,u,d,void 0,I)})}function FZr(n,c){let u=c.getSourceFile();return RV(d=>{Jke().writeNode(4,n,u,d)})}function YGt(n){return!!n.parent&&M9(n.parent)&&n.parent.propertyName===n}function mje(n,c){return ile(n,c.getScriptKind&&c.getScriptKind(n))}function hje(n,c){let u=n;for(;nzi(u)||vB(u)&&u.links.target;)vB(u)&&u.links.target?u=u.links.target:u=dh(u,c);return u}function nzi(n){return(n.flags&2097152)!==0}function HGt(n,c){return kg(dh(n,c))}function XGt(n,c){for(;Xm(n.charCodeAt(c));)c+=1;return c}function zGe(n,c){for(;c>-1&&$_(n.charCodeAt(c));)c-=1;return c+1}function Bd(n,c=!0){let u=n&&ZZr(n);return u&&!c&&ME(u),_N(u,!1)}function X_e(n,c,u){let d=u(n);return d?Ho(d,n):d=ZZr(n,u),d&&!c&&ME(d),d}function ZZr(n,c){let u=c?h=>X_e(h,!0,c):Bd,I=ns(n,u,void 0,c?h=>h&&_je(h,!0,c):h=>h&&bY(h),u);if(I===n){let h=bu(n)?Ho(_e.createStringLiteralFromNode(n),n):du(n)?Ho(_e.createNumericLiteral(n.text,n.numericLiteralFlags),n):_e.cloneNode(n);return un(h,n)}return I.parent=void 0,I}function bY(n,c=!0){if(n){let u=_e.createNodeArray(n.map(d=>Bd(d,c)),n.hasTrailingComma);return un(u,n),u}return n}function _je(n,c,u){return _e.createNodeArray(n.map(d=>X_e(d,c,u)),n.hasTrailingComma)}function ME(n){yje(n),JGt(n)}function yje(n){UGt(n,1024,szi)}function JGt(n){UGt(n,2048,Mce)}function b4(n,c){let u=n.getSourceFile(),d=u.text;izi(n,d)?Pte(n,c,u):U_e(n,c,u),Eue(n,c,u)}function izi(n,c){let u=n.getFullStart(),d=n.getStart();for(let I=u;Ic)}function E4(n,c){let u=n;for(let d=1;!EQ(c,u);d++)u=`${n}_${d}`;return u}function J_e(n,c,u,d){let I=0,h=-1;for(let{fileName:b,textChanges:R}of n){w.assert(b===c);for(let N of R){let{span:V,newText:P}=N,M=ozi(P,tT(u));if(M!==-1&&(h=V.start+I+M,!d))return h;I+=P.length-V.length}}return w.assert(d),w.assert(h>=0),h}function Pte(n,c,u,d,I){vf(u.text,n.pos,KGt(c,u,d,I,i4))}function Eue(n,c,u,d,I){Ix(u.text,n.end,KGt(c,u,d,I,Ele))}function U_e(n,c,u,d,I){Ix(u.text,n.pos,KGt(c,u,d,I,i4))}function KGt(n,c,u,d,I){return(h,b,R,N)=>{R===3?(h+=2,b-=2):h+=2,I(n,u||R,c.text.slice(h,b),d!==void 0?d:N)}}function ozi(n,c){if(uc(n,c))return 0;let u=n.indexOf(" "+c);return u===-1&&(u=n.indexOf("."+c)),u===-1&&(u=n.indexOf('"'+c)),u===-1?-1:u+1}function qGe(n){return no(n)&&n.operatorToken.kind===28||tu(n)||(qS(n)||TG(n))&&tu(n.expression)}function $Ge(n,c,u){let d=KR(n.parent);switch(d.kind){case 214:return c.getContextualType(d,u);case 226:{let{left:I,operatorToken:h,right:b}=d;return eFe(h.kind)?c.getTypeAtLocation(n===b?I:b):c.getContextualType(n,u)}case 296:return Eje(d,c);default:return c.getContextualType(n,u)}}function Bue(n,c,u){let d=W2(n,c),I=JSON.stringify(u);return d===0?`'${N2(I).replace(/'/g,()=>"\\'").replace(/\\"/g,'"')}'`:I}function eFe(n){switch(n){case 37:case 35:case 38:case 36:return!0;default:return!1}}function jGt(n){switch(n.kind){case 11:case 15:case 228:case 215:return!0;default:return!1}}function bje(n){return!!n.getStringIndexType()||!!n.getNumberIndexType()}function Eje(n,c){return c.getTypeAtLocation(n.parent.parent.expression)}var Bje="anonymous function";function vue(n,c,u,d){let I=u.getTypeChecker(),h=!0,b=()=>h=!1,R=I.typeToTypeNode(n,c,1,{trackSymbol:(N,V,P)=>(h=h&&I.isSymbolAccessible(N,V,P,!1).accessibility===0,!h),reportInaccessibleThisError:b,reportPrivateInBaseOfClassExpression:b,reportInaccessibleUniqueSymbolError:b,moduleResolverHost:ije(u,d)});return h?R:void 0}function zGt(n){return n===179||n===180||n===181||n===171||n===173}function LZr(n){return n===262||n===176||n===174||n===177||n===178}function VZr(n){return n===267}function tFe(n){return n===243||n===244||n===246||n===251||n===252||n===253||n===257||n===259||n===172||n===265||n===272||n===271||n===278||n===270||n===277}var qGt=pg(zGt,LZr,VZr,tFe);function azi(n,c){let u=n.getLastToken(c);if(u&&u.kind===27)return!1;if(zGt(n.kind)){if(u&&u.kind===28)return!1}else if(VZr(n.kind)){let R=Na(n.getChildren(c));if(R&&SN(R))return!1}else if(LZr(n.kind)){let R=Na(n.getChildren(c));if(R&&j9(R))return!1}else if(!tFe(n.kind))return!1;if(n.kind===246)return!0;let d=Si(n,R=>!R.parent),I=yY(n,d,c);if(!I||I.kind===20)return!0;let h=c.getLineAndCharacterOfPosition(n.getEnd()).line,b=c.getLineAndCharacterOfPosition(I.getStart(c)).line;return h!==b}function rFe(n,c,u){let d=Si(c,I=>I.end!==n?"quit":qGt(I.kind));return!!d&&azi(d,u)}function K_e(n){let c=0,u=0,d=5;return mu(n,function I(h){if(tFe(h.kind)){let b=h.getLastToken(n);b?.kind===27?c++:u++}else if(zGt(h.kind)){let b=h.getLastToken(n);if(b?.kind===27)c++;else if(b&&b.kind!==28){let R=Ll(n,b.getStart(n)).line,N=Ll(n,Rr(n,b.end).start).line;R!==N&&u++}}return c+u>=d?!0:mu(h,I)}),c===0&&u<=1?!0:c/u>1/d}function nFe(n,c){return oFe(n,n.getDirectories,c)||[]}function vje(n,c,u,d,I){return oFe(n,n.readDirectory,c,u,d,I)||v}function Sue(n,c){return oFe(n,n.fileExists,c)}function iFe(n,c){return sFe(()=>k1(c,n))||!1}function sFe(n){try{return n()}catch{return}}function oFe(n,c,...u){return sFe(()=>c&&c.apply(n,u))}function Sje(n,c,u){let d=[];return iI(n,I=>{if(I===u)return!0;let h=xo(I,"package.json");Sue(c,h)&&d.push(h)}),d}function $Gt(n,c){let u;return iI(n,d=>{if(d==="node_modules"||(u=E6e(d,I=>Sue(c,I),"package.json"),u))return!0}),u}function eFt(n,c){if(!c.fileExists)return[];let u=[];return iI(aa(n),d=>{let I=xo(d,"package.json");if(c.fileExists(I)){let h=wje(I,c);h&&u.push(h)}}),u}function wje(n,c){if(!c.readFile)return;let u=["dependencies","devDependencies","optionalDependencies","peerDependencies"],d=c.readFile(n)||"",I=Lce(d),h={};if(I)for(let N of u){let V=I[N];if(!V)continue;let P=new Map;for(let M in V)P.set(M,V[M]);h[N]=P}let b=[[1,h.dependencies],[2,h.devDependencies],[8,h.optionalDependencies],[4,h.peerDependencies]];return{...h,parseable:!!I,fileName:n,get:R,has(N,V){return!!R(N,V)}};function R(N,V=15){for(let[P,M]of b)if(M&&V&P){let te=M.get(N);if(te!==void 0)return te}}}function Ote(n,c,u){let d=(u.getPackageJsonsVisibleToFile&&u.getPackageJsonsVisibleToFile(n.fileName)||eFt(n.fileName,u)).filter(ue=>ue.parseable),I,h,b;return{allowsImportingAmbientModule:N,allowsImportingSourceFile:V,allowsImportingSpecifier:P};function R(ue){let Ae=re(ue);for(let de of d)if(de.has(Ae)||de.has(Nke(Ae)))return!0;return!1}function N(ue,Ae){if(!d.length||!ue.valueDeclaration)return!0;if(!h)h=new Map;else{let Qe=h.get(ue);if(Qe!==void 0)return Qe}let de=N2(ue.getName());if(M(de))return h.set(ue,!0),!0;let Be=ue.valueDeclaration.getSourceFile(),Fe=te(Be.fileName,Ae);if(typeof Fe>"u")return h.set(ue,!0),!0;let Ne=R(Fe)||R(de);return h.set(ue,Ne),Ne}function V(ue,Ae){if(!d.length)return!0;if(!b)b=new Map;else{let Fe=b.get(ue);if(Fe!==void 0)return Fe}let de=te(ue.fileName,Ae);if(!de)return b.set(ue,!0),!0;let Be=R(de);return b.set(ue,Be),Be}function P(ue){return!d.length||M(ue)||Op(ue)||yd(ue)?!0:R(ue)}function M(ue){return!!(JR(n)&&n0(n)&&kN.nodeCoreModules.has(ue)&&(I===void 0&&(I=aFe(n)),I))}function te(ue,Ae){let de=bV(ue);if(de){let Fe=de.findPackageLocator(n.fileName),Ne=de.findPackageLocator(ue);if(!(Fe&&Ne))return}else if(!ue.includes("node_modules"))return;let Be=uP.getNodeModulesPackageName(u.getCompilationSettings(),n,ue,Ae,c);if(Be&&!Op(Be)&&!yd(Be))return re(Be)}function re(ue){let Ae=Ad(jle(ue)).slice(1);return uc(Ae[0],"@")?`${Ae[0]}/${Ae[1]}`:Ae[0]}}function aFe(n){return lr(n.imports,({text:c})=>kN.nodeCoreModules.has(c))}function j_e(n){return Ue(Ad(n),"node_modules")}function Tje(n){return n.file!==void 0&&n.start!==void 0&&n.length!==void 0}function tFt(n,c){let u=Ey(n),d=cf(c,u,Bl,Wp);if(d>=0){let I=c[d];return w.assertEqual(I.file,n.getSourceFile(),"Diagnostics proided to 'findDiagnosticForNode' must be from a single SourceFile"),ps(I,Tje)}}function rFt(n,c){var u;let d=cf(c,n.start,b=>b.start,Xl);for(d<0&&(d=~d);((u=c[d-1])==null?void 0:u.start)===n.start;)d--;let I=[],h=Uu(n);for(;;){let b=eo(c[d],Tje);if(!b||b.start>h)break;y2(n,b)&&I.push(b),d++}return I}function z6({startPosition:n,endPosition:c}){return Wd(n,c===void 0?n:c)}function Nje(n,c){let u=Qc(n,c.start);return Si(u,I=>I.getStart(n)Uu(c)?"quit":tn(I)&&Vte(c,Ey(I,n)))}function Rje(n,c,u=Bl){return n?Ra(n)?u(Ot(n,c)):c(n,0):void 0}function Dje(n){return Ra(n)?$s(n):n}function nFt(n,c){if(WZr(n)){let u=lFe(n);if(u)return u;let d=wue(uFe(n),c,!1),I=wue(uFe(n),c,!0);return d===I?d:[d,I]}return n.name}function cFe(n,c,u){return WZr(n)?lFe(n)||wue(uFe(n),c,!!u):n.name}function WZr(n){return!(n.flags&33554432)&&(n.escapedName==="export="||n.escapedName==="default")}function lFe(n){return le(n.declarations,c=>{var u,d,I;return tf(c)?(u=eo(ZC(c.expression),sr))==null?void 0:u.text:c0(c)&&c.symbol.flags===2097152?(d=eo(c.propertyName,sr))==null?void 0:d.text:(I=eo(vl(c),sr))==null?void 0:I.text})}function uFe(n){var c;return w.checkDefined(n.parent,`Symbol parent was undefined. Flags: ${w.formatSymbolFlags(n.flags)}. Declarations: ${(c=n.declarations)==null?void 0:c.map(u=>{let d=w.formatSyntaxKind(u.kind),I=so(u),{expression:h}=u;return(I?"[JS]":"")+d+(h?` (expression: ${w.formatSyntaxKind(h.kind)})`:"")}).join(", ")}.`)}function wue(n,c,u){return z_e(o0(N2(n.name)),c,u)}function z_e(n,c,u){let d=xA(Qm(n,"/index")),I="",h=!0,b=d.charCodeAt(0);zy(b,c)?(I+=String.fromCharCode(b),u&&(I=I.toUpperCase())):h=!1;for(let R=1;Rn.length)return!1;for(let I=0;ICC(u)&&v2(u))}function gFe(n){return!!(b2(n)&65536)}function AFe(n,c){return le(n.imports,d=>{if(kN.nodeCoreModules.has(d.text))return uc(d.text,"node:")})??c.usesUriStyleNodeCoreModules}function q_e(n){return n===` -`?1:0}function EY(n){return Ra(n)?fN(eu(n[0]),n.slice(1)):eu(n)}function dFe({options:n},c){let u=!n.semicolons||n.semicolons==="ignore",d=n.semicolons==="remove"||u&&!K_e(c);return{...n,semicolons:d?"remove":"ignore"}}function kje(n){return n===2||n===3}function Mte(n,c){return n.isSourceFileFromExternalLibrary(c)||n.isSourceFileDefaultLibrary(c)}function pFe(n,c){let u=new Set,d=new Set,I=new Set;for(let R of c)if(!Gle(R)){let N=jA(R.expression);if(Sv(N))switch(N.kind){case 15:case 11:u.add(N.text);break;case 9:d.add(parseInt(N.text));break;case 10:let V=$De(pl(N.text,"n")?N.text.slice(0,-1):N.text);V&&I.add(gV(V));break}else{let V=n.getSymbolAtLocation(R.expression);if(V&&V.valueDeclaration&&_V(V.valueDeclaration)){let P=n.getConstantValue(V.valueDeclaration);P!==void 0&&h(P)}}}return{addValue:h,hasValue:b};function h(R){switch(typeof R){case"string":u.add(R);break;case"number":d.add(R)}}function b(R){switch(typeof R){case"string":return u.has(R);case"number":return d.has(R);case"object":return I.has(gV(R))}}}function Gje(n,c,u,d){var I;let h=typeof n=="string"?n:n.fileName;if(!mN(h))return!1;let b=c.getCompilerOptions(),R=R_(b),N=typeof n=="string"?b_e(gA(n,u.getCurrentDirectory(),Dx(u)),(I=c.getPackageJsonInfoCache)==null?void 0:I.call(c),u,b):n.impliedNodeFormat;if(N===99)return!1;if(N===1||b.verbatimModuleSyntax&&R===1)return!0;if(b.verbatimModuleSyntax&&Kce(R))return!1;if(typeof n=="object"){if(n.commonJsModuleIndicator)return!0;if(n.externalModuleIndicator)return!1}return d}function Qte(n){switch(n.kind){case 241:case 307:case 268:case 296:return!0;default:return!1}}function fFe(n,c,u,d){var I;let h=tGe(n,(I=u.getPackageJsonInfoCache)==null?void 0:I.call(u),d,u.getCompilerOptions()),b,R;return typeof h=="object"&&(b=h.impliedNodeFormat,R=h.packageJsonScope),{path:gA(n,u.getCurrentDirectory(),u.getCanonicalFileName),fileName:n,externalModuleIndicator:c===99?!0:void 0,commonJsModuleIndicator:c===1?!0:void 0,impliedNodeFormat:b,packageJsonScope:R,statements:v,imports:v}}var oFt=(n=>(n[n.Named=0]="Named",n[n.Default=1]="Default",n[n.Namespace=2]="Namespace",n[n.CommonJS=3]="CommonJS",n))(oFt||{}),aFt=(n=>(n[n.Named=0]="Named",n[n.Default=1]="Default",n[n.ExportEquals=2]="ExportEquals",n[n.UMD=3]="UMD",n))(aFt||{});function Fje(n){let c=1,u=ec(),d=new Map,I=new Map,h,b={isUsableByFile:re=>re===h,isEmpty:()=>!u.size,clear:()=>{u.clear(),d.clear(),h=void 0},add:(re,ue,Ae,de,Be,Fe,Ne,Qe)=>{re!==h&&(b.clear(),h=re);let De;if(Be){let vt=dle(Be.fileName);if(vt){let{topLevelNodeModulesIndex:Ye,topLevelPackageNameIndex:ht,packageRootIndex:Et}=vt;if(De=a_e(jle(Be.fileName.substring(ht+1,Et))),uc(re,Be.path.substring(0,Ye))){let Kt=I.get(De),Tt=Be.fileName.substring(0,ht+1);if(Kt){let Lt=Kt.indexOf(Qx);Ye>Lt&&I.set(De,Tt)}else I.set(De,Tt)}}}let Le=Fe===1&&n6(ue)||ue,je=Fe===0||G3(Le)?Sc(Ae):nFt(Le,void 0),st=typeof je=="string"?je:je[0],nt=typeof je=="string"?void 0:je[1],qe=N2(de.name),it=c++,It=dh(ue,Qe),dt=ue.flags&33554432?void 0:ue,wt=de.flags&33554432?void 0:de;(!dt||!wt)&&d.set(it,[ue,de]),u.add(N(st,ue,Jl(qe)?void 0:qe,Qe),{id:it,symbolTableKey:Ae,symbolName:st,capitalizedSymbolName:nt,moduleName:qe,moduleFile:Be,moduleFileName:Be?.fileName,packageName:De,exportKind:Fe,targetFlags:It.flags,isFromPackageJson:Ne,symbol:dt,moduleSymbol:wt})},get:(re,ue)=>{if(re!==h)return;let Ae=u.get(ue);return Ae?.map(R)},search:(re,ue,Ae,de)=>{if(re===h)return JC(u,(Be,Fe)=>{let{symbolName:Ne,ambientModuleName:Qe}=V(Fe),De=ue&&Be[0].capitalizedSymbolName||Ne;if(Ae(De,Be[0].targetFlags)){let Le=Be.map(R).filter((je,st)=>te(je,Be[st].packageName));if(Le.length){let je=de(Le,De,!!Qe,Fe);if(je!==void 0)return je}}})},releaseSymbols:()=>{d.clear()},onFileChanged:(re,ue,Ae)=>P(re)&&P(ue)?!1:h&&h!==ue.path||Ae&&aFe(re)!==aFe(ue)||!Cn(re.moduleAugmentations,ue.moduleAugmentations)||!M(re,ue)?(b.clear(),!0):(h=ue.path,!1)};return w.isDebugging&&Object.defineProperty(b,"__cache",{value:u}),b;function R(re){if(re.symbol&&re.moduleSymbol)return re;let{id:ue,exportKind:Ae,targetFlags:de,isFromPackageJson:Be,moduleFileName:Fe}=re,[Ne,Qe]=d.get(ue)||v;if(Ne&&Qe)return{symbol:Ne,moduleSymbol:Qe,moduleFileName:Fe,exportKind:Ae,targetFlags:de,isFromPackageJson:Be};let De=(Be?n.getPackageJsonAutoImportProvider():n.getCurrentProgram()).getTypeChecker(),lt=re.moduleSymbol||Qe||w.checkDefined(re.moduleFile?De.getMergedSymbol(re.moduleFile.symbol):De.tryFindAmbientModule(re.moduleName)),Le=re.symbol||Ne||w.checkDefined(Ae===2?De.resolveExternalModuleSymbol(lt):De.tryGetMemberInModuleExportsAndProperties(Sc(re.symbolTableKey),lt),`Could not find symbol '${re.symbolName}' by key '${re.symbolTableKey}' in module ${lt.name}`);return d.set(ue,[Le,lt]),{symbol:Le,moduleSymbol:lt,moduleFileName:Fe,exportKind:Ae,targetFlags:de,isFromPackageJson:Be}}function N(re,ue,Ae,de){let Be=Ae||"";return`${re.length} ${kg(dh(ue,de))} ${re} ${Be}`}function V(re){let ue=re.indexOf(" "),Ae=re.indexOf(" ",ue+1),de=parseInt(re.substring(0,ue),10),Be=re.substring(Ae+1),Fe=Be.substring(0,de),Ne=Be.substring(de+1);return{symbolName:Fe,ambientModuleName:Ne===""?void 0:Ne}}function P(re){return!re.commonJsModuleIndicator&&!re.externalModuleIndicator&&!re.moduleAugmentations&&!re.ambientModuleNames}function M(re,ue){if(!Cn(re.ambientModuleNames,ue.ambientModuleNames))return!1;let Ae=-1,de=-1;for(let Be of ue.ambientModuleNames){let Fe=Ne=>W$(Ne)&&Ne.name.text===Be;if(Ae=ke(re.statements,Fe,Ae+1),de=ke(ue.statements,Fe,de+1),re.statements[Ae]!==ue.statements[de])return!1}return!0}function te(re,ue){if(!ue||!re.moduleFileName)return!0;let Ae=n.getGlobalTypingsCacheLocation();if(Ae&&uc(re.moduleFileName,Ae))return!0;let de=I.get(ue);return!de||uc(re.moduleFileName,de)}}function Zje(n,c,u,d,I,h,b){var R;if(c===u)return!1;let N=b?.get(c.path,u.path,d,{});if(N?.isBlockedByPackageJsonDependencies!==void 0)return!N.isBlockedByPackageJsonDependencies;let V=Dx(h),P=(R=h.getGlobalTypingsCacheLocation)==null?void 0:R.call(h),M=!!uP.forEachFileNameOfModule(c.fileName,u.fileName,h,!1,te=>{let re=n.getSourceFile(te);return(re===u||!re)&&czi(c.fileName,te,V,P)});if(I){let te=M&&I.allowsImportingSourceFile(u,h);return b?.setBlockedByPackageJsonDependencies(c.path,u.path,d,{},!te),te}return M}function czi(n,c,u,d){if(bV(n))return h8i(n,c);let I=iI(c,b=>xA(b)==="node_modules"?b:void 0),h=I&&aa(u(I));return h===void 0||uc(u(n),h)||!!d&&uc(u(d),h)}function Lje(n,c,u,d,I){var h,b;let R=UX(c),N=u.autoImportFileExcludePatterns&&tr(u.autoImportFileExcludePatterns,P=>{let M=rle(P,"","exclude");return M?EG(M,R):void 0});OZr(n.getTypeChecker(),n.getSourceFiles(),N,c,(P,M)=>I(P,M,n,!1));let V=d&&((h=c.getPackageJsonAutoImportProvider)==null?void 0:h.call(c));if(V){let P=ql(),M=n.getTypeChecker();OZr(V.getTypeChecker(),V.getSourceFiles(),N,c,(te,re)=>{(re&&!n.getSourceFile(re.fileName)||!re&&!M.resolveName(te.name,void 0,1536,!1))&&I(te,re,V,!0)}),(b=c.log)==null||b.call(c,`forEachExternalModuleToImportFrom autoImportProvider: ${ql()-P}`)}}function OZr(n,c,u,d,I){var h,b;let R=(h=d.getSymlinkCache)==null?void 0:h.call(d).getSymlinkedDirectoriesByRealpath(),N=u&&(({fileName:V,path:P})=>{if(u.some(M=>M.test(V)))return!0;if(R?.size&&lP(V)){let M=aa(V);return iI(aa(P),te=>{let re=R.get(AA(te));if(re)return re.some(ue=>u.some(Ae=>Ae.test(V.replace(M,ue))));M=aa(M)})??!1}return!1});for(let V of n.getAmbientModules())!V.name.includes("*")&&!(u&&((b=V.declarations)!=null&&b.every(P=>N(P.getSourceFile()))))&&I(V,void 0);for(let V of c)ia(V)&&!N?.(V)&&I(n.getMergedSymbol(V.symbol),V)}function $_e(n,c,u,d,I){var h,b,R,N,V;let P=ql();(h=c.getPackageJsonAutoImportProvider)==null||h.call(c);let M=((b=c.getCachedExportInfoMap)==null?void 0:b.call(c))||Fje({getCurrentProgram:()=>u,getPackageJsonAutoImportProvider:()=>{var re;return(re=c.getPackageJsonAutoImportProvider)==null?void 0:re.call(c)},getGlobalTypingsCacheLocation:()=>{var re;return(re=c.getGlobalTypingsCacheLocation)==null?void 0:re.call(c)}});if(M.isUsableByFile(n.path))return(R=c.log)==null||R.call(c,"getExportInfoMap: cache hit"),M;(N=c.log)==null||N.call(c,"getExportInfoMap: cache miss or empty; calculating new results");let te=0;try{Lje(u,c,d,!0,(re,ue,Ae,de)=>{++te%100===0&&I?.throwIfCancellationRequested();let Be=new Map,Fe=Ae.getTypeChecker(),Ne=IFe(re,Fe);Ne&&MZr(Ne.symbol,Fe)&&M.add(n.path,Ne.symbol,Ne.exportKind===1?"default":"export=",re,ue,Ne.exportKind,de,Fe),Fe.forEachExportAndPropertyOfModule(re,(Qe,De)=>{Qe!==Ne?.symbol&&MZr(Qe,Fe)&&R2(Be,De)&&M.add(n.path,Qe,De,re,ue,0,de,Fe)})})}catch(re){throw M.clear(),re}return(V=c.log)==null||V.call(c,`getExportInfoMap: done in ${ql()-P} ms`),M}function IFe(n,c){let u=c.resolveExternalModuleSymbol(n);if(u!==n)return{symbol:u,exportKind:2};let d=c.tryGetMemberInModuleExports("default",n);if(d)return{symbol:d,exportKind:1}}function MZr(n,c){return!c.isUndefinedSymbol(n)&&!c.isUnknownSymbol(n)&&!_ee(n)&&!eDe(n)}function Vje(n,c,u,d,I){let h,b=n,R=new Map;for(;b;){let N=lFe(b);if(N){let V=I(N);if(V)return V}if(b.escapedName!=="default"&&b.escapedName!=="export="){let V=I(b.name);if(V)return V}if(h=Hr(h,b),!R2(R,b))break;b=b.flags&2097152?c.getImmediateAliasedSymbol(b):void 0}for(let N of h??v)if(N.parent&&G3(N.parent)){let V=I(wue(N.parent,iA(u),d));if(V)return V}}function QZr(){let n=Ft(99,!1);function c(d,I,h){return Azi(u(d,I,h),d)}function u(d,I,h){let b=0,R=0,N=[],{prefix:V,pushTemplate:P}=fzi(I);d=V+d;let M=V.length;P&&N.push(16),n.setText(d);let te=0,re=[],ue=0;do{b=n.scan(),QX(b)||(Ae(),R=b);let de=n.getTokenEnd();if(gzi(n.getTokenStart(),de,M,mzi(b),re),de>=d.length){let Be=uzi(n,b,qo(N));Be!==void 0&&(te=Be)}}while(b!==1);function Ae(){switch(b){case 44:case 69:!lzi[R]&&n.reScanSlashToken()===14&&(b=14);break;case 30:R===80&&ue++;break;case 32:ue>0&&ue--;break;case 133:case 154:case 150:case 136:case 155:ue>0&&!h&&(b=80);break;case 16:N.push(b);break;case 19:N.length>0&&N.push(b);break;case 20:if(N.length>0){let de=qo(N);de===16?(b=n.reScanTemplateToken(!1),b===18?N.pop():w.assertEqual(b,17,"Should have been a template middle.")):(w.assertEqual(de,19,"Should have been an open brace"),N.pop())}break;default:if(!i0(b))break;(R===25||i0(R)&&i0(b)&&!pzi(R,b))&&(b=80)}}return{endOfLineState:te,spans:re}}return{getClassificationsForLine:c,getEncodedLexicalClassifications:u}}var lzi=HA([80,11,9,10,14,110,46,47,22,24,20,112,97],n=>n,()=>!0);function uzi(n,c,u){switch(c){case 11:{if(!n.isUnterminated())return;let d=n.getTokenText(),I=d.length-1,h=0;for(;d.charCodeAt(I-h)===92;)h++;return h&1?d.charCodeAt(0)===34?3:2:void 0}case 3:return n.isUnterminated()?1:void 0;default:if(RS(c)){if(!n.isUnterminated())return;switch(c){case 18:return 5;case 15:return 4;default:return w.fail("Only 'NoSubstitutionTemplateLiteral's and 'TemplateTail's can be unterminated; got SyntaxKind #"+c)}}return u===16?6:void 0}}function gzi(n,c,u,d,I){if(d===8)return;n===0&&u>0&&(n+=u);let h=c-n;h>0&&I.push(n-u,h,d)}function Azi(n,c){let u=[],d=n.spans,I=0;for(let b=0;b=0){let P=R-I;P>0&&u.push({length:P,classification:4})}u.push({length:N,classification:dzi(V)}),I=R+N}let h=c.length-I;return h>0&&u.push({length:h,classification:4}),{entries:u,finalLexState:n.endOfLineState}}function dzi(n){switch(n){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 pzi(n,c){if(!K7e(n))return!0;switch(c){case 139:case 153:case 137:case 126:case 129:return!0;default:return!1}}function fzi(n){switch(n){case 3:return{prefix:`"\\ + `,pos:-1,end:-1,hasTrailingNewLine:!0}]:[]),sc),Bt.flags=jA,Bt.enclosingDeclaration=yA}function Bg(Rn,la,sc){let Ka=yC(Rn),Ea=cL(Rn),Fd=Ot(Ea,ny=>Ng(ny,Bt)),dg=Sa(Ka),Su=O(dg)?Og(dg):void 0,Jp=Fr(Cd(Ka),ny=>sbs(ny,Su)),jA=dQt(0,Ka,Su,179),yA=dQt(1,Ka,Su,180),A_=R8r(Ka,Su),d_=O(dg)?[_e.createHeritageClause(96,tr(dg,ny=>pQt(ny,111551)))]:void 0;pa(_e.createInterfaceDeclaration(void 0,SD(Rn,la),Fd,d_,[...A_,...yA,...jA,...Jp]),sc)}function Xp(Rn){let la=on(Y1(Rn).values()),sc=FA(Rn);if(sc!==Rn){let Ka=new Set(la);for(let Ea of Y1(sc).values())zb(UI(Ea))&111551||Ka.add(Ea);la=on(Ka)}return Gt(la,Ka=>iE(Ka)&&Ke(Ka.escapedName,99))}function Ty(Rn){return he(Xp(Rn),la=>!(zb(UI(la))&111551))}function jE(Rn,la,sc){let Ka=Xp(Rn),Ea=To(Ka,Su=>Su.parent&&Su.parent===Rn?"real":"merged"),Fd=Ea.get("real")||v,dg=Ea.get("merged")||v;if(O(Fd)){let Su=SD(Rn,la);tR(Fd,Su,sc,!!(Rn.flags&67108880))}if(O(dg)){let Su=ls(Bt.enclosingDeclaration),Jp=SD(Rn,la),jA=_e.createModuleBlock([_e.createExportDeclaration(void 0,!1,_e.createNamedExports(tr(Gt(dg,yA=>yA.escapedName!=="export="),yA=>{var A_,d_;let ny=wc(yA.escapedName),oC=SD(yA,ny),p_=yA.declarations&&XE(yA);if(Su&&(p_?Su!==ls(p_):!lr(yA.declarations,Cb=>ls(Cb)===Su))){(d_=(A_=Bt.tracker)==null?void 0:A_.reportNonlocalAugmentation)==null||d_.call(A_,Su,Rn,yA);return}let Ib=p_&&$G(p_,!0);Ls(Ib||yA);let EC=Ib?SD(Ib,wc(Ib.escapedName)):oC;return _e.createExportSpecifier(!1,ny===EC?void 0:EC,ny)})))]);pa(_e.createModuleDeclaration(void 0,_e.createIdentifier(Jp),jA,32),0)}}function oW(Rn,la,sc){pa(_e.createEnumDeclaration(_e.createModifiersFromModifierFlags(SOt(Rn)?4096:0),SD(Rn,la),Ot(Gt(Cd(co(Rn)),Ka=>!!(Ka.flags&8)),Ka=>{let Ea=Ka.declarations&&Ka.declarations[0]&&yV(Ka.declarations[0])?iQt(Ka.declarations[0]):void 0;return _e.createEnumMember(wc(Ka.escapedName),Ea===void 0?void 0:typeof Ea=="string"?_e.createStringLiteral(Ea):_e.createNumericLiteral(Ea))})),sc)}function aO(Rn,la,sc,Ka){let Ea=Ou(Rn,0);for(let Fd of Ea){let dg=ks(Fd,262,Bt,{name:_e.createIdentifier(sc)});pa(C(Bt,dg,cH(Fd)),Ka)}if(!(la.flags&1536&&la.exports&&la.exports.size)){let Fd=Gt(Cd(Rn),iE);tR(Fd,sc,Ka,!0)}}function cH(Rn){if(Rn.declaration&&Rn.declaration.parent){if(ro(Rn.declaration.parent)&&mI(Rn.declaration.parent)===5)return Rn.declaration.parent;if(js(Rn.declaration.parent)&&Rn.declaration.parent.parent)return Rn.declaration.parent.parent}return Rn.declaration}function tR(Rn,la,sc,Ka){if(O(Rn)){let Fd=To(Rn,oC=>!O(oC.declarations)||lr(oC.declarations,p_=>ls(p_)===ls(Bt.enclosingDeclaration))?"local":"remote").get("local")||v,dg=cP.createModuleDeclaration(void 0,_e.createIdentifier(la),_e.createModuleBlock([]),32);GA(dg,po),dg.locals=xu(Rn),dg.symbol=Rn[0].parent;let Su=ko;ko=[];let Jp=gp;gp=!1;let jA={...Bt,enclosingDeclaration:dg},yA=Bt;Bt=jA,pi(xu(Fd),Ka,!0),Bt=yA,gp=Jp;let A_=ko;ko=Su;let d_=Ot(A_,oC=>rf(oC)&&!oC.isExportEquals&&sr(oC.expression)?_e.createExportDeclaration(void 0,!1,_e.createNamedExports([_e.createExportSpecifier(!1,oC.expression,_e.createIdentifier("default"))])):oC),ny=he(d_,oC=>ya(oC,32))?Ot(d_,vs):d_;dg=_e.updateModuleDeclaration(dg,dg.modifiers,dg.name,_e.createModuleBlock(ny)),pa(dg,sc)}}function iE(Rn){return!!(Rn.flags&2887656)||!(Rn.flags&4194304||Rn.escapedName==="prototype"||Rn.valueDeclaration&&eg(Rn.valueDeclaration)&&va(Rn.valueDeclaration.parent))}function jre(Rn){let la=tr(Rn,sc=>{let Ka=Bt.enclosingDeclaration;Bt.enclosingDeclaration=sc;let Ea=sc.expression;if(lp(Ea)){if(sr(Ea)&&oo(Ea)==="")return Fd(void 0);let dg;if({introducesError:dg,node:Ea}=ms(Ea,Bt),dg)return Fd(void 0)}return Fd(_e.createExpressionWithTypeArguments(Ea,Ot(sc.typeArguments,dg=>M(Bt,dg,l(Bt,dg))||Oe(l(Bt,dg),Bt))));function Fd(dg){return Bt.enclosingDeclaration=Ka,dg}});if(la.length===Rn.length)return la}function aW(Rn,la,sc){var Ka,Ea;let Fd=(Ka=Rn.declarations)==null?void 0:Ka.find(va),dg=Bt.enclosingDeclaration;Bt.enclosingDeclaration=Fd||dg;let Su=cL(Rn),Jp=Ot(Su,nR=>Ng(nR,Bt)),jA=KE(yC(Rn)),yA=Sa(jA),A_=Fd&&YX(Fd),d_=A_&&jre(A_)||tr(ca(jA),abs),ny=co(Rn),oC=!!((Ea=ny.symbol)!=null&&Ea.valueDeclaration)&&va(ny.symbol.valueDeclaration),p_=oC?is(ny):Mt,Ib=[...O(yA)?[_e.createHeritageClause(96,Ot(yA,nR=>obs(nR,p_,la)))]:[],...O(d_)?[_e.createHeritageClause(119,d_)]:[]],EC=O_s(jA,yA,Cd(jA)),Cb=Gt(EC,nR=>{let Zge=nR.valueDeclaration;return!!Zge&&!(wf(Zge)&&Gc(Zge.name))}),rR=lr(EC,nR=>{let Zge=nR.valueDeclaration;return!!Zge&&wf(Zge)&&Gc(Zge.name)})?[_e.createPropertyDeclaration(void 0,_e.createPrivateIdentifier("#private"),void 0,void 0,void 0)]:v,cW=Fr(Cb,nR=>Xi(nR,!1,yA[0])),lW=Fr(Gt(Cd(ny),nR=>!(nR.flags&4194304)&&nR.escapedName!=="prototype"&&!iE(nR)),nR=>Xi(nR,!0,p_)),cbs=!oC&&!!Rn.valueDeclaration&&io(Rn.valueDeclaration)&&!lr(Ou(ny,1))?[_e.createConstructorDeclaration(_e.createModifiersFromModifierFlags(2),[],void 0)]:dQt(1,ny,p_,176),lbs=R8r(jA,yA[0]);Bt.enclosingDeclaration=dg,pa(C(Bt,_e.createClassDeclaration(void 0,la,Jp,Ib,[...lbs,...lW,...cbs,...cW,...rR]),Rn.declarations&&Gt(Rn.declarations,nR=>Ec(nR)||rp(nR))[0]),sc)}function lH(Rn){return le(Rn,la=>{if(yy(la)||l0(la))return oo(la.propertyName||la.name);if(ro(la)||rf(la)){let sc=rf(la)?la.expression:la.right;if(fo(sc))return oo(sc.name)}if(lo(la)){let sc=Sl(la);if(sc&&sr(sc))return oo(sc)}})}function Wye(Rn,la,sc){var Ka,Ea,Fd,dg,Su,Jp;let jA=XE(Rn);if(!jA)return w.fail();let yA=FA($G(jA,!0));if(!yA)return;let A_=O3(yA)&&lH(Rn.declarations)||wc(yA.escapedName);A_==="export="&&st&&(A_="default");let d_=SD(yA,A_);switch(Ls(yA),jA.kind){case 208:if(((Ea=(Ka=jA.parent)==null?void 0:Ka.parent)==null?void 0:Ea.kind)===260){let p_=rl(yA.parent||yA,Bt),{propertyName:Ib}=jA;pa(_e.createImportDeclaration(void 0,_e.createImportClause(!1,void 0,_e.createNamedImports([_e.createImportSpecifier(!1,Ib&&sr(Ib)?_e.createIdentifier(oo(Ib)):void 0,_e.createIdentifier(la))])),_e.createStringLiteral(p_),void 0),0);break}w.failBadSyntaxKind(((Fd=jA.parent)==null?void 0:Fd.parent)||jA,"Unhandled binding element grandparent kind in declaration serialization");break;case 304:((Su=(dg=jA.parent)==null?void 0:dg.parent)==null?void 0:Su.kind)===226&&IJ(wc(Rn.escapedName),d_);break;case 260:if(fo(jA.initializer)){let p_=jA.initializer,Ib=_e.createUniqueName(la),EC=rl(yA.parent||yA,Bt);pa(_e.createImportEqualsDeclaration(void 0,!1,Ib,_e.createExternalModuleReference(_e.createStringLiteral(EC))),0),pa(_e.createImportEqualsDeclaration(void 0,!1,_e.createIdentifier(la),_e.createQualifiedName(Ib,p_.name)),sc);break}case 271:if(yA.escapedName==="export="&&lr(yA.declarations,p_=>Fc(p_)&&fa(p_))){Fge(Rn);break}let ny=!(yA.flags&512)&&!js(jA);pa(_e.createImportEqualsDeclaration(void 0,!1,_e.createIdentifier(la),ny?y0(yA,Bt,-1,!1):_e.createExternalModuleReference(_e.createStringLiteral(rl(yA,Bt)))),ny?sc:0);break;case 270:pa(_e.createNamespaceExportDeclaration(oo(jA.name)),0);break;case 273:{let p_=rl(yA.parent||yA,Bt),Ib=Bt.bundled?_e.createStringLiteral(p_):jA.parent.moduleSpecifier,EC=hI(jA.parent)?jA.parent.attributes:void 0,Cb=DN(jA.parent);pa(_e.createImportDeclaration(void 0,_e.createImportClause(Cb,_e.createIdentifier(la),void 0),Ib,EC),0);break}case 274:{let p_=rl(yA.parent||yA,Bt),Ib=Bt.bundled?_e.createStringLiteral(p_):jA.parent.parent.moduleSpecifier,EC=DN(jA.parent.parent);pa(_e.createImportDeclaration(void 0,_e.createImportClause(EC,void 0,_e.createNamespaceImport(_e.createIdentifier(la))),Ib,jA.parent.attributes),0);break}case 280:pa(_e.createExportDeclaration(void 0,!1,_e.createNamespaceExport(_e.createIdentifier(la)),_e.createStringLiteral(rl(yA,Bt))),0);break;case 276:{let p_=rl(yA.parent||yA,Bt),Ib=Bt.bundled?_e.createStringLiteral(p_):jA.parent.parent.parent.moduleSpecifier,EC=DN(jA.parent.parent.parent);pa(_e.createImportDeclaration(void 0,_e.createImportClause(EC,void 0,_e.createNamedImports([_e.createImportSpecifier(!1,la!==A_?_e.createIdentifier(A_):void 0,_e.createIdentifier(la))])),Ib,jA.parent.parent.parent.attributes),0);break}case 281:let oC=jA.parent.parent.moduleSpecifier;oC&&((Jp=jA.propertyName)==null?void 0:Jp.escapedText)==="default"&&(A_="default"),IJ(wc(Rn.escapedName),oC?A_:d_,oC&&JA(oC)?_e.createStringLiteral(oC.text):void 0);break;case 277:Fge(Rn);break;case 226:case 211:case 212:Rn.escapedName==="default"||Rn.escapedName==="export="?Fge(Rn):IJ(la,d_);break;default:return w.failBadSyntaxKind(jA,"Unhandled alias declaration kind in symbol serializer!")}}function IJ(Rn,la,sc){pa(_e.createExportDeclaration(void 0,!1,_e.createNamedExports([_e.createExportSpecifier(!1,Rn!==la?la:void 0,Rn)]),sc),0)}function Fge(Rn){var la;if(Rn.flags&4194304)return!1;let sc=wc(Rn.escapedName),Ka=sc==="export=",Fd=Ka||sc==="default",dg=Rn.declarations&&XE(Rn),Su=dg&&$G(dg,!0);if(Su&&O(Su.declarations)&&lr(Su.declarations,Jp=>ls(Jp)===ls(po))){let Jp=dg&&(rf(dg)||ro(dg)?_me(dg):eDe(dg)),jA=Jp&&lp(Jp)?r0s(Jp):void 0,yA=jA&&ZI(jA,-1,!0,!0,po);(yA||Su)&&Ls(yA||Su);let A_=Bt.tracker.disableTrackSymbol;if(Bt.tracker.disableTrackSymbol=!0,Fd)ko.push(_e.createExportAssignment(void 0,Ka,Kf(Su,Bt,-1)));else if(jA===Jp&&jA)IJ(sc,oo(jA));else if(Jp&&rp(Jp))IJ(sc,SD(Su,pf(Su)));else{let d_=QLe(sc,Rn);pa(_e.createImportEqualsDeclaration(void 0,!1,_e.createIdentifier(d_),y0(Su,Bt,-1,!1)),0),IJ(sc,d_)}return Bt.tracker.disableTrackSymbol=A_,!0}else{let Jp=QLe(sc,Rn),jA=tE(co(FA(Rn)));if(Pye(jA,Rn))aO(jA,Rn,Jp,Fd?0:32);else{let yA=((la=Bt.enclosingDeclaration)==null?void 0:la.kind)===267&&(!(Rn.flags&98304)||Rn.flags&65536)?1:2,A_=_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(Jp,void 0,P_(Bt,void 0,jA,Rn))],yA));pa(A_,Su&&Su.flags&4&&Su.escapedName==="export="?128:sc===Jp?32:0)}return Fd?(ko.push(_e.createExportAssignment(void 0,Ka,_e.createIdentifier(Jp))),!0):sc!==Jp?(IJ(sc,Jp),!0):!1}}function Pye(Rn,la){var sc;let Ka=ls(Bt.enclosingDeclaration);return ia(Rn)&48&&!lr((sc=Rn.symbol)==null?void 0:sc.declarations,Ma)&&!O(ty(Rn))&&!Ere(Rn)&&!!(O(Gt(Cd(Rn),iE))||O(Ou(Rn,0)))&&!O(Ou(Rn,1))&&!Kre(la,po)&&!(Rn.symbol&&lr(Rn.symbol.declarations,Ea=>ls(Ea)!==Ka))&&!lr(Cd(Rn),Ea=>U0e(Ea.escapedName))&&!lr(Cd(Rn),Ea=>lr(Ea.declarations,Fd=>ls(Fd)!==Ka))&&he(Cd(Rn),Ea=>Ke(pf(Ea),Me)?Ea.flags&98304?YV(Ea)===JP(Ea):!0:!1)}function N8r(Rn,la,sc){return function(Ea,Fd,dg){var Su,Jp,jA,yA,A_;let d_=V1(Ea),ny=!!(d_&2);if(Fd&&Ea.flags&2887656)return[];if(Ea.flags&4194304||Ea.escapedName==="constructor"||dg&&yg(dg,Ea.escapedName)&&wT(yg(dg,Ea.escapedName))===wT(Ea)&&(Ea.flags&16777216)===(yg(dg,Ea.escapedName).flags&16777216)&&lF(co(Ea),LI(dg,Ea.escapedName)))return[];let oC=d_&-1025|(Fd?256:0),p_=jI(Ea,Bt),Ib=(Su=Ea.declarations)==null?void 0:Su.find(fg(Hl,zw,js,i_,ro,fo));if(Ea.flags&98304&&sc){let EC=[];if(Ea.flags&65536){let Cb=Ea.declarations&&X(Ea.declarations,rR=>{if(rR.kind===178)return rR;if(lu(rR)&&Y3(rR))return X(rR.arguments[2].properties,cW=>{let lW=Sl(cW);if(lW&&sr(lW)&&oo(lW)==="set")return cW})});w.assert(!!Cb);let $7=pd(Cb)?rB(Cb).parameters[0]:void 0;EC.push(C(Bt,_e.createSetAccessorDeclaration(_e.createModifiersFromModifierFlags(oC),p_,[_e.createParameterDeclaration(void 0,void 0,$7?Uf($7,ZA($7),Bt):"value",void 0,ny?void 0:P_(Bt,void 0,JP(Ea),Ea))],void 0),((Jp=Ea.declarations)==null?void 0:Jp.find(xh))||Ib))}if(Ea.flags&32768){let Cb=d_&2;EC.push(C(Bt,_e.createGetAccessorDeclaration(_e.createModifiersFromModifierFlags(oC),p_,[],Cb?void 0:P_(Bt,void 0,co(Ea),Ea),void 0),((jA=Ea.declarations)==null?void 0:jA.find(Rv))||Ib))}return EC}else if(Ea.flags&98311)return C(Bt,Rn(_e.createModifiersFromModifierFlags((wT(Ea)?8:0)|oC),p_,Ea.flags&16777216?_e.createToken(58):void 0,ny?void 0:P_(Bt,void 0,JP(Ea),Ea),void 0),((yA=Ea.declarations)==null?void 0:yA.find(fg(Hl,js)))||Ib);if(Ea.flags&8208){let EC=co(Ea),Cb=Ou(EC,0);if(oC&2)return C(Bt,Rn(_e.createModifiersFromModifierFlags((wT(Ea)?8:0)|oC),p_,Ea.flags&16777216?_e.createToken(58):void 0,void 0,void 0),((A_=Ea.declarations)==null?void 0:A_.find(pd))||Cb[0]&&Cb[0].declaration||Ea.declarations&&Ea.declarations[0]);let $7=[];for(let rR of Cb){let cW=ks(rR,la,Bt,{name:p_,questionToken:Ea.flags&16777216?_e.createToken(58):void 0,modifiers:oC?_e.createModifiersFromModifierFlags(oC):void 0}),lW=rR.declaration&&lee(rR.declaration.parent)?rR.declaration.parent:rR.declaration;$7.push(C(Bt,cW,lW))}return $7}return w.fail(`Unhandled class member kind! ${Ea.__debugFlags||Ea.flags}`)}}function sbs(Rn,la){return Co(Rn,!1,la)}function dQt(Rn,la,sc,Ka){let Ea=Ou(la,Rn);if(Rn===1){if(!sc&&he(Ea,Su=>O(Su.parameters)===0))return[];if(sc){let Su=Ou(sc,1);if(!O(Su)&&he(Ea,Jp=>O(Jp.parameters)===0))return[];if(Su.length===Ea.length){let Jp=!1;for(let jA=0;jAOe(Ea,Bt)),Ka=Kf(Rn.target.symbol,Bt,788968)):Rn.symbol&&OM(Rn.symbol,po,la)&&(Ka=Kf(Rn.symbol,Bt,788968)),Ka)return _e.createExpressionWithTypeArguments(Ka,sc)}function abs(Rn){let la=pQt(Rn,788968);if(la)return la;if(Rn.symbol)return _e.createExpressionWithTypeArguments(Kf(Rn.symbol,Bt,788968),void 0)}function QLe(Rn,la){var sc,Ka;let Ea=la?Gg(la):void 0;if(Ea&&Bt.remappedSymbolNames.has(Ea))return Bt.remappedSymbolNames.get(Ea);la&&(Rn=D8r(la,Rn));let Fd=0,dg=Rn;for(;(sc=Bt.usedSymbolNames)!=null&&sc.has(Rn);)Fd++,Rn=`${dg}_${Fd}`;return(Ka=Bt.usedSymbolNames)==null||Ka.add(Rn),Ea&&Bt.remappedSymbolNames.set(Ea,Rn),Rn}function D8r(Rn,la){if(la==="default"||la==="__class"||la==="__function"){let sc=Bt.flags;Bt.flags|=16777216;let Ka=MM(Rn,Bt);Bt.flags=sc,la=Ka.length>0&&iee(Ka.charCodeAt(0))?R2(Ka):Ka}return la==="default"?la="_default":la==="export="&&(la="_exports"),la=Ke(la,Me)&&!L5(la)?la:"_"+la.replace(/[^a-zA-Z0-9]/g,"_"),la}function SD(Rn,la){let sc=Gg(Rn);return Bt.remappedSymbolNames.has(sc)?Bt.remappedSymbolNames.get(sc):(la=D8r(Rn,la),Bt.remappedSymbolNames.set(sc,la),la)}}}function ID(l,C,E=16384,D){return D?W(D).getText():W3(W);function W(M){let se=bre(E)|70221824|512,Ee=Kt.typePredicateToTypePredicateNode(l,C,se),Ve=b4(),Oe=C&&ls(C);return Ve.writeNode(4,Ee,Oe,M),M}}function W0e(l){let C=[],E=0;for(let D=0;DSl(se)?se:void 0),M=W&&Sl(W);if(W&&M){if(lu(W)&&Y3(W))return pf(l);if(kg(M)&&!(cI(l)&4096)){let se=al(l).nameType;if(se&&se.flags&384){let Ee=O0e(l,C);if(Ee!==void 0)return Ee}}return kd(M)}if(W||(W=l.declarations[0]),W.parent&&W.parent.kind===260)return kd(W.parent.name);switch(W.kind){case 231:case 218:case 219:return C&&!C.encounteredError&&!(C.flags&131072)&&(C.encounteredError=!0),W.kind===231?"(Anonymous class)":"(Anonymous function)"}}let D=O0e(l,C);return D!==void 0?D:pf(l)}function iF(l){if(l){let E=Jo(l);return E.isVisible===void 0&&(E.isVisible=!!C()),E.isVisible}return!1;function C(){switch(l.kind){case 338:case 346:case 340:return!!(l.parent&&l.parent.parent&&l.parent.parent.parent&&Fc(l.parent.parent.parent));case 208:return iF(l.parent.parent);case 260:if(fu(l.name)&&!l.name.elements.length)return!1;case 267:case 263:case 264:case 265:case 262:case 266:case 271:if(KR(l))return!0;let E=J4(l);return!(Att(l)&32)&&!(l.kind!==271&&E.kind!==307&&E.flags&33554432)?bs(E):iF(E);case 172:case 171:case 177:case 178:case 174:case 173:if(ib(l,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 iF(l.parent);case 273:case 274:case 276:return!1;case 168:case 307:case 270:return!0;case 277:return!1;default:return!1}}}function HM(l,C){let E;l.parent&&l.parent.kind===277?E=Pi(l,l,2998271,void 0,!1):l.parent.kind===281&&(E=Yv(l.parent,2998271));let D,W;return E&&(W=new Set,W.add(Gg(E)),M(E.declarations)),D;function M(se){X(se,Ee=>{let Ve=V4(Ee)||Ee;if(C?Jo(Ee).isVisible=!0:(D=D||[],da(D,Ve)),D5(Ee)){let Oe=Ee.moduleReference,ot=sb(Oe),Wt=Pi(Ee,ot.escapedText,901119,void 0,!1);Wt&&W&&Zi(W,Gg(Wt))&&M(Wt.declarations)}})}}function Xv(l,C){let E=Bre(l,C);if(E>=0){let{length:D}=Wi;for(let W=E;W=mo;E--){if(Q0e(Wi[E],zi[E]))return-1;if(Wi[E]===l&&zi[E]===C)return E}return-1}function Q0e(l,C){switch(C){case 0:return!!al(l).type;case 2:return!!al(l).declaredType;case 1:return!!l.resolvedBaseConstructorType;case 3:return!!l.resolvedReturnType;case 4:return!!l.immediateBaseConstraint;case 5:return!!l.resolvedTypeArguments;case 6:return!!l.baseTypesResolved;case 7:return!!al(l).writeType;case 8:return Jo(l).parameterInitializerContainsUndefined!==void 0}return w.assertNever(C)}function CD(){return Wi.pop(),zi.pop(),zs.pop()}function J4(l){return Si(PS(l),C=>{switch(C.kind){case 260:case 261:case 276:case 275:case 274:case 273:return!1;default:return!0}}).parent}function M0e(l){let C=kp(a_(l));return C.typeParameters?uL(C,Ot(C.typeParameters,E=>Mt)):C}function LI(l,C){let E=yg(l,C);return E?co(E):void 0}function age(l,C){var E;let D;return LI(l,C)||(D=(E=L7(l,C))==null?void 0:E.type)&&_g(D,!0,!0)}function Sd(l){return l&&(l.flags&1)!==0}function QA(l){return l===cr||!!(l.flags&1&&l.aliasSymbol)}function D7(l,C){if(C!==0)return aA(l,!1,C);let E=Oo(l);return E&&al(E).type||aA(l,!1,C)}function x7(l,C,E){if(l=WC(l,Ve=>!(Ve.flags&98304)),l.flags&131072)return Lc;if(l.flags&1048576)return Qf(l,Ve=>x7(Ve,C,E));let D=wa(Ot(C,dL)),W=[],M=[];for(let Ve of Cd(l)){let Oe=W7(Ve,8576);!bg(Oe,D)&&!(V1(Ve)&6)&&D$e(Ve)?W.push(Ve):M.push(Oe)}if(eJ(l)||tJ(D)){if(M.length&&(D=wa([D,...M])),D.flags&131072)return l;let Ve=tAs();return Ve?kre(Ve,[l,D]):cr}let se=xu();for(let Ve of W)se.set(Ve.escapedName,V3t(Ve,!1));let Ee=qn(E,se,v,v,ty(l));return Ee.objectFlags|=4194304,Ee}function $e(l){return!!(l.flags&465829888)&&KI(c_(l)||Kr,32768)}function Ht(l){let C=jv(l,$e)?Qf(l,E=>E.flags&465829888?yD(E):E):l;return Kv(C,524288)}function Sr(l,C){let E=_n(l);return E?fF(E,C):C}function _n(l){let C=Xn(l);if(C&&dee(C)&&C.flowNode){let E=es(l);if(E){let D=un(cP.createStringLiteral(E),l),W=N_(C)?C:cP.createParenthesizedExpression(C),M=un(cP.createElementAccessExpression(W,D),l);return GA(D,M),GA(M,l),W!==C&&GA(W,M),M.flowNode=C.flowNode,M}}}function Xn(l){let C=l.parent.parent;switch(C.kind){case 208:case 303:return _n(C);case 209:return _n(l.parent);case 260:return C.initializer;case 226:return C.right}}function es(l){let C=l.parent;return l.kind===208&&C.kind===206?Ia(l.propertyName||l.name):l.kind===303||l.kind===304?Ia(l.name):""+C.elements.indexOf(l)}function Ia(l){let C=dL(l);return C.flags&384?""+C.value:void 0}function Xc(l){let C=l.dotDotDotToken?32:0,E=D7(l.parent.parent,C);return E&&bc(l,E,!1)}function bc(l,C,E){if(Sd(C))return C;let D=l.parent;nt&&l.flags&33554432&&TZ(l)?C=AF(C):nt&&D.parent.initializer&&!vT(M4r(D.parent.initializer),65536)&&(C=Kv(C,524288));let W;if(D.kind===206)if(l.dotDotDotToken){if(C=ET(C),C.flags&2||!lLe(C))return fr(l,Z.Rest_types_may_only_be_created_from_object_types),cr;let M=[];for(let se of D.elements)se.dotDotDotToken||M.push(se.propertyName||se.name);W=x7(C,M,l.symbol)}else{let M=l.propertyName||l.name,se=dL(M),Ee=$b(C,se,32,M);W=Sr(l,Ee)}else{let M=CL(65|(l.dotDotDotToken?0:128),C,wn,D),se=D.elements.indexOf(l);if(l.dotDotDotToken){let Ee=Qf(C,Ve=>Ve.flags&58982400?yD(Ve):Ve);W=rE(Ee,cA)?Qf(Ee,Ve=>Ige(Ve,se)):V_(M)}else if(fL(C)){let Ee=pw(se),Ve=32|(E||Ege(l)?16:0),Oe=zV(C,Ee,Ve,l.name)||cr;W=Sr(l,Oe)}else W=M}return l.initializer?IC(IA(l))?nt&&!vT(vge(l,0),16777216)?Ht(W):W:Pet(l,wa([Ht(W),vge(l,0)],2)):W}function qa(l){let C=wx(l);if(C)return Vc(C)}function Cl(l){let C=zA(l,!0);return C.kind===106||C.kind===80&&Sy(C)===Zt}function up(l){let C=zA(l,!0);return C.kind===209&&C.elements.length===0}function _g(l,C=!1,E=!0){return nt&&E?rW(l,C):l}function aA(l,C,E){if(js(l)&&l.parent.parent.kind===249){let se=UN(zPt(Dl(l.parent.parent.expression,E)));return se.flags&4456448?BXr(se):Jt}if(js(l)&&l.parent.parent.kind===250){let se=l.parent.parent;return GLe(se)||Mt}if(fu(l.parent))return Xc(l);let D=Hl(l)&&!OS(l)||i_(l)||nRt(l),W=C&&HS(l),M=no(l);if(P$(l))return M?Sd(M)||M===Kr?M:cr:St?Kr:Mt;if(M)return _g(M,D,W);if((dt||io(l))&&js(l)&&!fu(l.name)&&!(Att(l)&32)&&!(l.flags&33554432)){if(!(aH(l)&6)&&(!l.initializer||Cl(l.initializer)))return _r;if(l.initializer&&up(l.initializer))return Xd}if(Uc(l)){if(!l.symbol)return;let se=l.parent;if(se.kind===178&&Nre(se)){let Oe=qd(Oo(l.parent),177);if(Oe){let ot=rB(Oe),Wt=uQt(se);return Wt&&l===Wt?(w.assert(!Wt.type),co(ot.thisParameter)):wd(ot)}}let Ee=vgs(se,l);if(Ee)return Ee;let Ve=l.symbol.escapedName==="this"?hJr(se):_Jr(l);if(Ve)return _g(Ve,!1,W)}if(mG(l)&&l.initializer){if(io(l)&&!Uc(l)){let Ee=H0e(l,Oo(l),J8(l));if(Ee)return Ee}let se=Pet(l,vge(l,E));return _g(se,D,W)}if(Hl(l)&&(dt||io(l)))if(CC(l)){let se=Gt(l.parent.members,ef),Ee=se.length?Jv(l.symbol,se):R_(l)&128?Y$e(l.symbol):void 0;return Ee&&_g(Ee,!0,W)}else{let se=jee(l.parent),Ee=se?YP(l.symbol,se):R_(l)&128?Y$e(l.symbol):void 0;return Ee&&_g(Ee,!0,W)}if(RN(l))return Qn;if(fu(l.name))return j(l.name,!1,!0)}function eB(l){if(l.valueDeclaration&&ro(l.valueDeclaration)){let C=al(l);return C.isConstructorDeclaredProperty===void 0&&(C.isConstructorDeclaredProperty=!1,C.isConstructorDeclaredProperty=!!sF(l)&&he(l.declarations,E=>ro(E)&&Cet(E)&&(E.left.kind!==212||ZE(E.left.argumentExpression))&&!MA(void 0,E,l,E))),C.isConstructorDeclaredProperty}return!1}function hT(l){let C=l.valueDeclaration;return C&&Hl(C)&&!IC(C)&&!C.initializer&&(dt||io(C))}function sF(l){if(l.declarations)for(let C of l.declarations){let E=n0(C,!1,!1);if(E&&(E.kind===176||$N(E)))return E}}function MV(l){let C=ls(l.declarations[0]),E=wc(l.escapedName),D=l.declarations.every(M=>io(M)&&mp(M)&&dN(M.expression)),W=D?_e.createPropertyAccessExpression(_e.createPropertyAccessExpression(_e.createIdentifier("module"),_e.createIdentifier("exports")),E):_e.createPropertyAccessExpression(_e.createIdentifier("exports"),E);return D&&GA(W.expression.expression,W.expression),GA(W.expression,W),GA(W,C),W.flowNode=C.endFlowNode,fF(W,_r,wn)}function Jv(l,C){let E=uc(l.escapedName,"__#")?_e.createPrivateIdentifier(l.escapedName.split("@")[1]):wc(l.escapedName);for(let D of C){let W=_e.createPropertyAccessExpression(_e.createThis(),E);GA(W.expression,W),GA(W,D),W.flowNode=D.returnFlowNode;let M=cge(W,l);if(dt&&(M===_r||M===Xd)&&fr(l.valueDeclaration,Z.Member_0_implicitly_has_an_1_type,$c(l),Ys(M)),!rE(M,ALe))return Gye(M)}}function YP(l,C){let E=uc(l.escapedName,"__#")?_e.createPrivateIdentifier(l.escapedName.split("@")[1]):wc(l.escapedName),D=_e.createPropertyAccessExpression(_e.createThis(),E);GA(D.expression,D),GA(D,C),D.flowNode=C.returnFlowNode;let W=cge(D,l);return dt&&(W===_r||W===Xd)&&fr(l.valueDeclaration,Z.Member_0_implicitly_has_an_1_type,$c(l),Ys(W)),rE(W,ALe)?void 0:Gye(W)}function cge(l,C){let E=C?.valueDeclaration&&(!hT(C)||R_(C.valueDeclaration)&128)&&Y$e(C)||wn;return fF(l,_r,E)}function vre(l,C){let E=x5(l.valueDeclaration);if(E){let Ee=io(E)?Sx(E):void 0;return Ee&&Ee.typeExpression?Vc(Ee.typeExpression):l.valueDeclaration&&H0e(l.valueDeclaration,l,E)||rO(sC(E))}let D,W=!1,M=!1;if(eB(l)&&(D=YP(l,sF(l))),!D){let Ee;if(l.declarations){let Ve;for(let Oe of l.declarations){let ot=ro(Oe)||lu(Oe)?Oe:mp(Oe)?ro(Oe.parent)?Oe.parent:Oe:void 0;if(!ot)continue;let Wt=mp(ot)?cee(ot):mI(ot);(Wt===4||ro(ot)&&Cet(ot,Wt))&&(_T(ot)?W=!0:M=!0),lu(ot)||(Ve=MA(Ve,ot,l,Oe)),Ve||(Ee||(Ee=[])).push(ro(ot)||lu(ot)?vm(l,C,ot,Wt):Vi)}D=Ve}if(!D){if(!O(Ee))return cr;let Ve=W&&l.declarations?XP(Ee,l.declarations):void 0;if(M){let ot=Y$e(l);ot&&((Ve||(Ve=[])).push(ot),W=!0)}let Oe=lr(Ve,ot=>!!(ot.flags&-98305))?Ve:Ee;D=wa(Oe)}}let se=tE(_g(D,!1,M&&!W));return l.valueDeclaration&&io(l.valueDeclaration)&&WC(se,Ee=>!!(Ee.flags&-98305))===Vi?(nO(l.valueDeclaration,Mt),Mt):se}function H0e(l,C,E){var D,W;if(!io(l)||!E||!ru(E)||E.properties.length)return;let M=xu();for(;ro(l)||fo(l);){let Ve=q2(l);(D=Ve?.exports)!=null&&D.size&&M1(M,Ve.exports),l=ro(l)?l.parent:l.parent.parent}let se=q2(l);(W=se?.exports)!=null&&W.size&&M1(M,se.exports);let Ee=qn(C,M,v,v,v);return Ee.objectFlags|=4096,Ee}function MA(l,C,E,D){var W;let M=IC(C.parent);if(M){let se=tE(Vc(M));if(l)!QA(l)&&!QA(se)&&!lF(l,se)&&yKr(void 0,l,D,se);else return se}if((W=E.parent)!=null&&W.valueDeclaration){let se=Cre(E.parent);if(se.valueDeclaration){let Ee=IC(se.valueDeclaration);if(Ee){let Ve=yg(Vc(Ee),E.escapedName);if(Ve)return YV(Ve)}}}return l}function vm(l,C,E,D){if(lu(E)){if(C)return co(C);let se=sC(E.arguments[2]),Ee=LI(se,"value");if(Ee)return Ee;let Ve=LI(se,"get");if(Ve){let ot=AJ(Ve);if(ot)return wd(ot)}let Oe=LI(se,"set");if(Oe){let ot=AJ(Oe);if(ot)return hOt(ot)}return Mt}if(HV(E.left,E.right))return Mt;let W=D===1&&(fo(E.left)||_A(E.left))&&(dN(E.left.expression)||sr(E.left.expression)&&H3(E.left.expression)),M=C?co(C):W?ry(sC(E.right)):rO(sC(E.right));if(M.flags&524288&&D===2&&l.escapedName==="export="){let se=bT(M),Ee=xu();S8(se.members,Ee);let Ve=Ee.size;C&&!C.exports&&(C.exports=xu()),(C||l).exports.forEach((ot,Wt)=>{var Rt;let Qr=Ee.get(Wt);if(Qr&&Qr!==ot&&!(ot.flags&2097152))if(ot.flags&111551&&Qr.flags&111551){if(ot.valueDeclaration&&Qr.valueDeclaration&&ls(ot.valueDeclaration)!==ls(Qr.valueDeclaration)){let hn=wc(ot.escapedName),mi=((Rt=$s(Qr.valueDeclaration,wf))==null?void 0:Rt.name)||Qr.valueDeclaration;tg(fr(ot.valueDeclaration,Z.Duplicate_identifier_0,hn),Js(mi,Z._0_was_also_declared_here,hn)),tg(fr(mi,Z.Duplicate_identifier_0,hn),Js(ot.valueDeclaration,Z._0_was_also_declared_here,hn))}let ln=wA(ot.flags|Qr.flags,Wt);ln.links.type=wa([co(ot),co(Qr)]),ln.valueDeclaration=Qr.valueDeclaration,ln.declarations=vi(Qr.declarations,ot.declarations),Ee.set(Wt,ln)}else Ee.set(Wt,UG(ot,Qr));else Ee.set(Wt,ot)});let Oe=qn(Ve!==Ee.size?void 0:se.symbol,Ee,se.callSignatures,se.constructSignatures,se.indexInfos);if(Ve===Ee.size&&(M.aliasSymbol&&(Oe.aliasSymbol=M.aliasSymbol,Oe.aliasTypeArguments=M.aliasTypeArguments),ia(M)&4)){Oe.aliasSymbol=M.symbol;let ot=af(M);Oe.aliasTypeArguments=O(ot)?ot:void 0}return Oe.objectFlags|=TZe([M])|ia(M)&20608,Oe.symbol&&Oe.symbol.flags&32&&M===yC(Oe.symbol)&&(Oe.objectFlags|=16777216),Oe}return J$e(M)?(nO(E,np),np):M}function HV(l,C){return fo(l)&&l.expression.kind===110&&Q6(C,E=>Zh(l,E))}function _T(l){let C=n0(l,!1,!1);return C.kind===176||C.kind===262||C.kind===218&&!lee(C.parent)}function XP(l,C){return w.assert(l.length===C.length),l.filter((E,D)=>{let W=C[D],M=ro(W)?W:ro(W.parent)?W.parent:void 0;return M&&_T(M)})}function nk(l,C,E){if(l.initializer){let D=fu(l.name)?j(l.name,!0,!1):Kr;return _g(Pet(l,vge(l,E?0:1,D)))}return fu(l.name)?j(l.name,C,E):(E&&!zn(l)&&nO(l,Mt),C?Pn:Mt)}function XB(l,C,E){let D=xu(),W,M=131200;X(l.elements,Ee=>{let Ve=Ee.propertyName||Ee.name;if(Ee.dotDotDotToken){W=bD(Jt,Mt,!1);return}let Oe=dL(Ve);if(!k2(Oe)){M|=512;return}let ot=G2(Oe),Wt=4|(Ee.initializer?16777216:0),Rt=wA(Wt,ot);Rt.links.type=nk(Ee,C,E),Rt.links.bindingElement=Ee,D.set(Rt.escapedName,Rt)});let se=qn(void 0,D,v,v,W?[W]:v);return se.objectFlags|=M,C&&(se.pattern=l,se.objectFlags|=131072),se}function uo(l,C,E){let D=l.elements,W=zo(D),M=W&&W.kind===208&&W.dotDotDotToken?W:void 0;if(D.length===0||D.length===1&&M)return Me>=2?cXr(Mt):np;let se=Ot(D,ot=>tf(ot)?Mt:nk(ot,C,E)),Ee=x(D,ot=>!(ot===M||tf(ot)||Ege(ot)),D.length-1)+1,Ve=Ot(D,(ot,Wt)=>ot===M?4:Wt>=Ee?2:1),Oe=ED(se,Ve);return C&&(Oe=MYr(Oe),Oe.pattern=l,Oe.objectFlags|=131072),Oe}function j(l,C=!1,E=!1){return l.kind===206?XB(l,C,E):uo(l,C,E)}function me(l,C){return yr(aA(l,!0,0),l,C)}function We(l){let C=Jo(l);if(!C.resolvedType){let E=wA(4096,"__importAttributes"),D=xu();X(l.elements,M=>{let se=wA(4,Sle(M));se.parent=E,se.links.type=n0s(M),se.links.target=se,D.set(se.escapedName,se)});let W=qn(E,D,v,v,v);W.objectFlags|=262272,C.resolvedType=W}return C.resolvedType}function mt(l){let C=q2(l),E=Mgs(!1);return E&&C&&C===E}function yr(l,C,E){return l?(l.flags&4096&&mt(C.parent)&&(l=W3t(C)),E&&tet(C,l),l.flags&8192&&(hl(C)||!C.type)&&l.symbol!==Oo(C)&&(l=Es),tE(l)):(l=Uc(C)&&C.dotDotDotToken?np:Mt,E&&(zn(C)||nO(C,l)),l)}function zn(l){let C=PS(l),E=C.kind===169?C.parent:C;return NLe(E)}function no(l){let C=IC(l);if(C)return Vc(C)}function Yl(l){let C=l.valueDeclaration;return C?(hl(C)&&(C=IA(C)),Uc(C)?V$e(C.parent):!1):!1}function _p(l,C){let E=al(l);if(!E.type){let D=Aw(l,C);return!E.type&&!Yl(l)&&!C&&(E.type=D),D}return E.type}function Aw(l,C){if(l.flags&4194304)return M0e(l);if(l===mr)return Mt;if(l.flags&134217728&&l.valueDeclaration){let W=Oo(ls(l.valueDeclaration)),M=wA(W.flags,"exports");M.declarations=W.declarations?W.declarations.slice():[],M.parent=l,M.links.target=W,W.valueDeclaration&&(M.valueDeclaration=W.valueDeclaration),W.members&&(M.members=new Map(W.members)),W.exports&&(M.exports=new Map(W.exports));let se=xu();return se.set("exports",M),qn(l,se,v,v,v)}w.assertIsDefined(l.valueDeclaration);let E=l.valueDeclaration;if(Fc(E)&&fa(E))return E.statements.length?tE(rO(Dl(E.statements[0].expression))):Lc;if(zw(E))return Y0e(l);if(!Xv(l,0))return l.flags&512&&!(l.flags&67108864)?lge(l):hl(E)&&C===1?cr:aL(l);let D;if(E.kind===277)D=yr(no(E)||sC(E.expression),E);else if(ro(E)||io(E)&&(lu(E)||(fo(E)||Ece(E))&&ro(E.parent)))D=vre(l);else if(fo(E)||_A(E)||sr(E)||JA(E)||pu(E)||Ec(E)||hp(E)||lI(E)&&!RB(E)||zS(E)||Fc(E)){if(l.flags&9136)return lge(l);D=ro(E.parent)?vre(l):no(E)||Mt}else if(jC(E))D=no(E)||UUr(E);else if(RN(E))D=no(E)||xJr(E);else if(F_(E))D=no(E)||wge(E.name,0);else if(RB(E))D=no(E)||KUr(E,0);else if(Uc(E)||Hl(E)||i_(E)||js(E)||hl(E)||IZ(E))D=me(E,!0);else if(iP(E))D=lge(l);else if(yV(E))D=g$e(l);else return w.fail("Unhandled declaration kind! "+w.formatSyntaxKind(E.kind)+" for "+w.formatSymbol(l));return CD()?D:l.flags&512&&!(l.flags&67108864)?lge(l):hl(E)&&C===1?D:aL(l)}function dw(l){if(l)switch(l.kind){case 177:return nb(l);case 178:return ADe(l);case 172:return w.assert(OS(l)),IC(l)}}function mD(l){let C=dw(l);return C&&Vc(C)}function k7(l){let C=uQt(l);return C&&C.symbol}function FWt(l){return zP(rB(l))}function Y0e(l){let C=al(l);if(!C.type){if(!Xv(l,0))return cr;let E=qd(l,177),D=qd(l,178),W=$s(qd(l,172),r_),M=E&&io(E)&&qa(E)||mD(E)||mD(D)||mD(W)||E&&E.body&&Zet(E)||W&&W.initializer&&me(W,!0);M||(D&&!NLe(D)?qm(dt,D,Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation,$c(l)):E&&!NLe(E)?qm(dt,E,Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation,$c(l)):W&&!NLe(W)&&qm(dt,W,Z.Member_0_implicitly_has_an_1_type,$c(l),"any"),M=Mt),CD()||(dw(E)?fr(E,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,$c(l)):dw(D)||dw(W)?fr(D,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,$c(l)):E&&dt&&fr(E,Z._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,$c(l)),M=Mt),C.type??(C.type=M)}return C.type}function l$e(l){let C=al(l);if(!C.writeType){if(!Xv(l,7))return cr;let E=qd(l,178)??$s(qd(l,172),r_),D=mD(E);CD()||(dw(E)&&fr(E,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,$c(l)),D=Mt),C.writeType??(C.writeType=D||Y0e(l))}return C.writeType}function u$e(l){let C=is(yC(l));return C.flags&8650752?C:C.flags&2097152?be(C.types,E=>!!(E.flags&8650752)):void 0}function lge(l){let C=al(l),E=C;if(!C.type){let D=l.valueDeclaration&&Get(l.valueDeclaration,!1);if(D){let W=dOt(l,D);W&&(l=W,C=W.links)}E.type=C.type=ZWt(l)}return C.type}function ZWt(l){let C=l.valueDeclaration;if(l.flags&1536&&O3(l))return Mt;if(C&&(C.kind===226||mp(C)&&C.parent.kind===226))return vre(l);if(l.flags&512&&C&&Fc(C)&&C.commonJsModuleIndicator){let D=pb(l);if(D!==l){if(!Xv(l,0))return cr;let W=FA(l.exports.get("export=")),M=vre(W,W===D?void 0:D);return CD()?M:aL(l)}}let E=J1(16,l);if(l.flags&32){let D=u$e(l);return D?Og([E,D]):E}else return nt&&l.flags&16777216?rW(E,!0):E}function g$e(l){let C=al(l);return C.type||(C.type=cYr(l))}function LWt(l){let C=al(l);if(!C.type){if(!Xv(l,0))return cr;let E=$m(l),D=l.declarations&&$G(XE(l),!0),W=le(D?.declarations,M=>rf(M)?no(M):void 0);if(C.type??(C.type=D?.declarations&&rtt(D.declarations)&&l.declarations.length?MV(D):rtt(l.declarations)?_r:W||(zb(E)&111551?co(E):cr)),!CD())return aL(D??l),C.type??(C.type=cr)}return C.type}function A$e(l){let C=al(l);return C.type||(C.type=cl(co(C.target),C.mapper))}function VWt(l){let C=al(l);return C.writeType||(C.writeType=cl(JP(C.target),C.mapper))}function aL(l){let C=l.valueDeclaration;if(C){if(IC(C))return fr(l.valueDeclaration,Z._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,$c(l)),cr;dt&&(C.kind!==169||C.initializer)&&fr(l.valueDeclaration,Z._0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer,$c(l))}else if(l.flags&2097152){let E=XE(l);E&&fr(E,Z.Circular_definition_of_import_alias_0,$c(l))}return Mt}function IZe(l){let C=al(l);return C.type||(w.assertIsDefined(C.deferralParent),w.assertIsDefined(C.deferralConstituents),C.type=C.deferralParent.flags&1048576?wa(C.deferralConstituents):Og(C.deferralConstituents)),C.type}function WWt(l){let C=al(l);return!C.writeType&&C.deferralWriteConstituents&&(w.assertIsDefined(C.deferralParent),w.assertIsDefined(C.deferralConstituents),C.writeType=C.deferralParent.flags&1048576?wa(C.deferralWriteConstituents):Og(C.deferralWriteConstituents)),C.writeType}function JP(l){let C=cI(l);return l.flags&4?C&2?C&65536?WWt(l)||IZe(l):l.links.writeType||l.links.type:dF(co(l),!!(l.flags&16777216)):l.flags&98304?C&1?VWt(l):l$e(l):co(l)}function co(l,C){let E=cI(l);return E&65536?IZe(l):E&1?A$e(l):E&262144?ogs(l):E&8192?bps(l):l.flags&7?_p(l,C):l.flags&9136?lge(l):l.flags&8?g$e(l):l.flags&98304?Y0e(l):l.flags&2097152?LWt(l):cr}function YV(l){return dF(co(l),!!(l.flags&16777216))}function XV(l,C){return l!==void 0&&C!==void 0&&(ia(l)&4)!==0&&l.target===C}function Sre(l){return ia(l)&4?l.target:l}function wre(l,C){return E(l);function E(D){if(ia(D)&7){let W=Sre(D);return W===C||lr(Sa(W),E)}else if(D.flags&2097152)return lr(D.types,E);return!1}}function CZe(l,C){for(let E of C)l=og(l,YM(Oo(E)));return l}function Tre(l,C){for(;;){if(l=l.parent,l&&ro(l)){let E=mI(l);if(E===6||E===3){let D=Oo(l.left);D&&D.parent&&!Si(D.parent.valueDeclaration,W=>l===W)&&(l=D.parent.valueDeclaration)}}if(!l)return;switch(l.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:{let D=Tre(l,C);if(l.kind===200)return Yr(D,YM(Oo(l.typeParameter)));if(l.kind===194)return vi(D,F3t(l));let W=CZe(D,D1(l)),M=C&&(l.kind===263||l.kind===231||l.kind===264||$N(l))&&yC(Oo(l)).thisType;return M?Yr(W,M):W}case 341:let E=fee(l);E&&(l=E.valueDeclaration);break;case 320:{let D=Tre(l,C);return l.tags?CZe(D,Fr(l.tags,W=>Lv(W)?W.typeParameters:void 0)):D}}}}function X0e(l){var C;let E=l.flags&32||l.flags&16?l.valueDeclaration:(C=l.declarations)==null?void 0:C.find(D=>{if(D.kind===264)return!0;if(D.kind!==260)return!1;let W=D.initializer;return!!W&&(W.kind===218||W.kind===219)});return w.assert(!!E,"Class was missing valueDeclaration -OR- non-class had no interface declarations"),Tre(E)}function cL(l){if(!l.declarations)return;let C;for(let E of l.declarations)(E.kind===264||E.kind===263||E.kind===231||$N(E)||Aee(E))&&(C=CZe(C,D1(E)));return C}function PWt(l){return vi(X0e(l),cL(l))}function mZe(l){let C=Ou(l,1);if(C.length===1){let E=C[0];if(!E.typeParameters&&E.parameters.length===1&&g0(E)){let D=yLe(E.parameters[0]);return Sd(D)||JZe(D)===Mt}}return!1}function J0e(l){if(Ou(l,1).length>0)return!0;if(l.flags&8650752){let C=c_(l);return!!C&&mZe(C)}return!1}function UP(l){let C=kB(l.symbol);return C&&xv(C)}function d$e(l,C,E){let D=O(C),W=io(E);return Gt(Ou(l,1),M=>(W||D>=JN(M.typeParameters))&&D<=O(M.typeParameters))}function KP(l,C,E){let D=d$e(l,C,E),W=Ot(C,Vc);return Ar(D,M=>lr(M.typeParameters)?q0e(M,W,io(E)):M)}function is(l){if(!l.resolvedBaseConstructorType){let C=kB(l.symbol),E=C&&xv(C),D=UP(l);if(!D)return l.resolvedBaseConstructorType=wn;if(!Xv(l,1))return cr;let W=Dl(D.expression);if(E&&D!==E&&(w.assert(!E.typeArguments),Dl(E.expression)),W.flags&2621440&&bT(W),!CD())return fr(l.symbol.valueDeclaration,Z._0_is_referenced_directly_or_indirectly_in_its_own_base_expression,$c(l.symbol)),l.resolvedBaseConstructorType??(l.resolvedBaseConstructorType=cr);if(!(W.flags&1)&&W!==Re&&!J0e(W)){let M=fr(D.expression,Z.Type_0_is_not_a_constructor_function_type,Ys(W));if(W.flags&262144){let se=pge(W),Ee=Kr;if(se){let Ve=Ou(se,1);Ve[0]&&(Ee=wd(Ve[0]))}W.symbol.declarations&&tg(M,Js(W.symbol.declarations[0],Z.Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1,$c(W.symbol),Ys(Ee)))}return l.resolvedBaseConstructorType??(l.resolvedBaseConstructorType=cr)}l.resolvedBaseConstructorType??(l.resolvedBaseConstructorType=W)}return l.resolvedBaseConstructorType}function ca(l){let C=v;if(l.symbol.declarations)for(let E of l.symbol.declarations){let D=YX(E);if(D)for(let W of D){let M=Vc(W);QA(M)||(C===v?C=[M]:C.push(M))}}return C}function Aa(l,C){fr(l,Z.Type_0_recursively_references_itself_as_a_base_type,Ys(C,void 0,2))}function Sa(l){if(!l.baseTypesResolved){if(Xv(l,6)&&(l.objectFlags&8?l.resolvedBaseTypes=[Tc(l)]:l.symbol.flags&96?(l.symbol.flags&32&&$A(l),l.symbol.flags&64&&hD(l)):w.fail("type must be class or interface"),!CD()&&l.symbol.declarations))for(let C of l.symbol.declarations)(C.kind===263||C.kind===264)&&Aa(C,l);l.baseTypesResolved=!0}return l.resolvedBaseTypes}function Tc(l){let C=Ar(l.typeParameters,(E,D)=>l.elementFlags[D]&8?$b(E,bt):E);return V_(wa(C||v),l.readonly)}function $A(l){l.resolvedBaseTypes=N$;let C=ey(is(l));if(!(C.flags&2621441))return l.resolvedBaseTypes=v;let E=UP(l),D,W=C.symbol?kp(C.symbol):void 0;if(C.symbol&&C.symbol.flags&32&&yp(W))D=HYr(E,C.symbol);else if(C.flags&1)D=C;else{let se=KP(C,E.typeArguments,E);if(!se.length)return fr(E.expression,Z.No_base_constructor_has_the_specified_number_of_type_arguments),l.resolvedBaseTypes=v;D=wd(se[0])}if(QA(D))return l.resolvedBaseTypes=v;let M=ET(D);if(!eh(M)){let se=qWt(void 0,D),Ee=ou(se,Z.Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members,Ys(M));return KA.add(ZS(ls(E.expression),E.expression,Ee)),l.resolvedBaseTypes=v}return l===M||wre(M,l)?(fr(l.symbol.valueDeclaration,Z.Type_0_recursively_references_itself_as_a_base_type,Ys(l,void 0,2)),l.resolvedBaseTypes=v):(l.resolvedBaseTypes===N$&&(l.members=void 0),l.resolvedBaseTypes=[M])}function yp(l){let C=l.outerTypeParameters;if(C){let E=C.length-1,D=af(l);return C[E].symbol!==D[E].symbol}return!0}function eh(l){if(l.flags&262144){let C=c_(l);if(C)return eh(C)}return!!(l.flags&67633153&&!qb(l)||l.flags&2097152&&he(l.types,eh))}function hD(l){if(l.resolvedBaseTypes=l.resolvedBaseTypes||v,l.symbol.declarations){for(let C of l.symbol.declarations)if(C.kind===264&&e6(C))for(let E of e6(C)){let D=ET(Vc(E));QA(D)||(eh(D)?l!==D&&!wre(D,l)?l.resolvedBaseTypes===v?l.resolvedBaseTypes=[D]:l.resolvedBaseTypes.push(D):Aa(C,l):fr(E,Z.An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members))}}}function XN(l){if(!l.declarations)return!0;for(let C of l.declarations)if(C.kind===264){if(C.flags&256)return!1;let E=e6(C);if(E){for(let D of E)if(lp(D.expression)){let W=ZI(D.expression,788968,!0);if(!W||!(W.flags&64)||yC(W).thisType)return!1}}}return!0}function yC(l){let C=al(l),E=C;if(!C.declaredType){let D=l.flags&32?1:2,W=dOt(l,l.valueDeclaration&&RCs(l.valueDeclaration));W&&(l=W,C=W.links);let M=E.declaredType=C.declaredType=J1(D,l),se=X0e(l),Ee=cL(l);(se||Ee||D===1||!XN(l))&&(M.objectFlags|=4,M.typeParameters=vi(se,Ee),M.outerTypeParameters=se,M.localTypeParameters=Ee,M.instantiations=new Map,M.instantiations.set(Uv(M.typeParameters),M),M.target=M,M.resolvedTypeArguments=M.typeParameters,M.thisType=$2(l),M.thisType.isThisType=!0,M.thisType.constraint=M)}return C.declaredType}function oF(l){var C;let E=al(l);if(!E.declaredType){if(!Xv(l,2))return cr;let D=w.checkDefined((C=l.declarations)==null?void 0:C.find(Aee),"Type alias symbol with no valid declaration found"),W=T2(D)?D.typeExpression:D.type,M=W?Vc(W):cr;if(CD()){let se=cL(l);se&&(E.typeParameters=se,E.instantiations=new Map,E.instantiations.set(Uv(se),M))}else M=cr,D.kind===340?fr(D.typeExpression.type,Z.Type_alias_0_circularly_references_itself,$c(l)):fr(wf(D)&&D.name||D,Z.Type_alias_0_circularly_references_itself,$c(l));E.declaredType??(E.declaredType=M)}return E.declaredType}function G7(l){return l.flags&1056&&l.symbol.flags&8?kp(a_(l.symbol)):l}function F7(l){let C=al(l);if(!C.declaredType){let E=[];if(l.declarations){for(let W of l.declarations)if(W.kind===266){for(let M of W.members)if(Nre(M)){let se=Oo(M),Ee=fJ(M).value,Ve=M7(Ee!==void 0?nds(Ee,Gg(l),se):uge(se));al(se).declaredType=Ve,E.push(ry(Ve))}}}let D=E.length?wa(E,1,l,void 0):uge(l);D.flags&1048576&&(D.flags|=1024,D.symbol=l),C.declaredType=D}return C.declaredType}function uge(l){let C=tF(32,l),E=tF(32,l);return C.regularType=C,C.freshType=E,E.regularType=C,E.freshType=E,C}function cYr(l){let C=al(l);if(!C.declaredType){let E=F7(a_(l));C.declaredType||(C.declaredType=E)}return C.declaredType}function YM(l){let C=al(l);return C.declaredType||(C.declaredType=$2(l))}function Lus(l){let C=al(l);return C.declaredType||(C.declaredType=kp($m(l)))}function kp(l){return lYr(l)||cr}function lYr(l){if(l.flags&96)return yC(l);if(l.flags&524288)return oF(l);if(l.flags&262144)return YM(l);if(l.flags&384)return F7(l);if(l.flags&8)return cYr(l);if(l.flags&2097152)return Lus(l)}function hZe(l){switch(l.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 hZe(l.elementType);case 183:return!l.typeArguments||l.typeArguments.every(hZe)}return!1}function Vus(l){let C=jw(l);return!C||hZe(C)}function uYr(l){let C=IC(l);return C?hZe(C):!$w(l)}function Wus(l){let C=nb(l),E=D1(l);return(l.kind===176||!!C&&hZe(C))&&l.parameters.every(uYr)&&E.every(Vus)}function Pus(l){if(l.declarations&&l.declarations.length===1){let C=l.declarations[0];if(C)switch(C.kind){case 172:case 171:return uYr(C);case 174:case 173:case 176:case 177:case 178:return Wus(C)}}return!1}function gYr(l,C,E){let D=xu();for(let W of l)D.set(W.escapedName,E&&Pus(W)?W:Q3t(W,C));return D}function AYr(l,C){for(let E of C){if(dYr(E))continue;let D=l.get(E.escapedName);(!D||D.valueDeclaration&&ro(D.valueDeclaration)&&!eB(D)&&!VRe(D.valueDeclaration))&&(l.set(E.escapedName,E),l.set(E.escapedName,E))}}function dYr(l){return!!l.valueDeclaration&&Dh(l.valueDeclaration)&&eg(l.valueDeclaration)}function OWt(l){if(!l.declaredProperties){let C=l.symbol,E=JV(C);l.declaredProperties=PV(E),l.declaredCallSignatures=v,l.declaredConstructSignatures=v,l.declaredIndexInfos=v,l.declaredCallSignatures=UM(E.get("__call")),l.declaredConstructSignatures=UM(E.get("__new")),l.declaredIndexInfos=PYr(C)}return l}function p$e(l){if(!kg(l)&&!_A(l))return!1;let C=kg(l)?l.expression:l.argumentExpression;return lp(C)&&k2(kg(l)?jN(l):sC(C))}function U0e(l){return l.charCodeAt(0)===95&&l.charCodeAt(1)===95&&l.charCodeAt(2)===64}function _Ze(l){let C=Sl(l);return!!C&&p$e(C)}function Nre(l){return!$R(l)||_Ze(l)}function Ous(l){return Rce(l)&&!p$e(l)}function Qus(l,C,E){w.assert(!!(cI(l)&4096),"Expected a late-bound symbol."),l.flags|=E,al(C.symbol).lateSymbol=l,l.declarations?C.symbol.isReplaceableByMethod||l.declarations.push(C):l.declarations=[C],E&111551&&(!l.valueDeclaration||l.valueDeclaration.kind!==C.kind)&&(l.valueDeclaration=C)}function pYr(l,C,E,D){w.assert(!!D.symbol,"The member is expected to have a symbol.");let W=Jo(D);if(!W.resolvedSymbol){W.resolvedSymbol=D.symbol;let M=ro(D)?D.left:D.name,se=_A(M)?sC(M.argumentExpression):jN(M);if(k2(se)){let Ee=G2(se),Ve=D.symbol.flags,Oe=E.get(Ee);Oe||E.set(Ee,Oe=wA(0,Ee,4096));let ot=C&&C.get(Ee);if(!(l.flags&32)&&Oe.flags&F4(Ve)){let Wt=ot?vi(ot.declarations,Oe.declarations):Oe.declarations,Rt=!(se.flags&8192)&&wc(Ee)||kd(M);X(Wt,Qr=>fr(Sl(Qr)||Qr,Z.Property_0_was_also_declared_here,Rt)),fr(M||D,Z.Duplicate_property_0,Rt),Oe=wA(0,Ee,4096)}return Oe.links.nameType=se,Qus(Oe,D,Ve),Oe.parent?w.assert(Oe.parent===l,"Existing symbol parent should match new one"):Oe.parent=l,W.resolvedSymbol=Oe}}return W.resolvedSymbol}function QWt(l,C){let E=al(l);if(!E[C]){let D=C==="resolvedExports",W=D?l.flags&1536?H4(l).exports:l.exports:l.members;E[C]=W||Be;let M=xu();for(let Ve of l.declarations||v){let Oe=DRe(Ve);if(Oe)for(let ot of Oe)D===CC(ot)&&_Ze(ot)&&pYr(l,W,M,ot)}let se=Cre(l).assignmentDeclarationMembers;if(se){let Ve=on(se.values());for(let Oe of Ve){let ot=mI(Oe),Wt=ot===3||ro(Oe)&&Cet(Oe,ot)||ot===9||ot===6;D===!Wt&&_Ze(Oe)&&pYr(l,W,M,Oe)}}let Ee=j2(W,M);if(l.flags&33554432&&E.cjsExportMerged&&l.declarations)for(let Ve of l.declarations){let Oe=al(Ve.symbol)[C];if(!Ee){Ee=Oe;continue}Oe&&Oe.forEach((ot,Wt)=>{let Rt=Ee.get(Wt);if(!Rt)Ee.set(Wt,ot);else{if(Rt===ot)return;Ee.set(Wt,UG(Rt,ot))}})}E[C]=Ee||Be}return E[C]}function JV(l){return l.flags&6256?QWt(l,"resolvedMembers"):l.members||Be}function f$e(l){if(l.flags&106500&&l.escapedName==="__computed"){let C=al(l);if(!C.lateSymbol&&lr(l.declarations,_Ze)){let E=FA(l.parent);lr(l.declarations,CC)?Y1(E):JV(E)}return C.lateSymbol||(C.lateSymbol=l)}return l}function KE(l,C,E){if(ia(l)&4){let D=l.target,W=af(l);return O(D.typeParameters)===O(W)?uL(D,vi(W,[C||D.thisType])):l}else if(l.flags&2097152){let D=Ar(l.types,W=>KE(W,C,E));return D!==l.types?Og(D):l}return E?ey(l):l}function fYr(l,C,E,D){let W,M,se,Ee,Ve;wi(E,D,0,E.length)?(M=C.symbol?JV(C.symbol):xu(C.declaredProperties),se=C.declaredCallSignatures,Ee=C.declaredConstructSignatures,Ve=C.declaredIndexInfos):(W=eE(E,D),M=gYr(C.declaredProperties,W,E.length===1),se=F$e(C.declaredCallSignatures,W),Ee=F$e(C.declaredConstructSignatures,W),Ve=OXr(C.declaredIndexInfos,W));let Oe=Sa(C);if(Oe.length){if(C.symbol&&M===JV(C.symbol)){let Wt=xu(C.declaredProperties),Rt=c3t(C.symbol);Rt&&Wt.set("__index",Rt),M=Wt}pn(l,M,se,Ee,Ve);let ot=zo(D);for(let Wt of Oe){let Rt=ot?KE(cl(Wt,W),ot):Wt;AYr(M,Cd(Rt)),se=vi(se,Ou(Rt,0)),Ee=vi(Ee,Ou(Rt,1));let Qr=Rt!==Mt?ty(Rt):[bD(Jt,Mt,!1)];Ve=vi(Ve,Gt(Qr,ln=>!$Wt(Ve,ln.keyType)))}}pn(l,M,se,Ee,Ve)}function Mus(l){fYr(l,OWt(l),v,v)}function Hus(l){let C=OWt(l.target),E=vi(C.typeParameters,[C.thisType]),D=af(l),W=D.length===E.length?D:vi(D,[l]);fYr(l,C,E,W)}function ik(l,C,E,D,W,M,se,Ee){let Ve=new R(gi,Ee);return Ve.declaration=l,Ve.typeParameters=C,Ve.parameters=D,Ve.thisParameter=E,Ve.resolvedReturnType=W,Ve.resolvedTypePredicate=M,Ve.minArgumentCount=se,Ve.resolvedMinArgumentCount=void 0,Ve.target=void 0,Ve.mapper=void 0,Ve.compositeSignatures=void 0,Ve.compositeKind=void 0,Ve}function K0e(l){let C=ik(l.declaration,l.typeParameters,l.thisParameter,l.parameters,void 0,void 0,l.minArgumentCount,l.flags&167);return C.target=l.target,C.mapper=l.mapper,C.compositeSignatures=l.compositeSignatures,C.compositeKind=l.compositeKind,C}function IYr(l,C){let E=K0e(l);return E.compositeSignatures=C,E.compositeKind=1048576,E.target=void 0,E.mapper=void 0,E}function Yus(l,C){if((l.flags&24)===C)return l;l.optionalCallSignatureCache||(l.optionalCallSignatureCache={});let E=C===8?"inner":"outer";return l.optionalCallSignatureCache[E]||(l.optionalCallSignatureCache[E]=Xus(l,C))}function Xus(l,C){w.assert(C===8||C===16,"An optional call signature can either be for an inner call chain or an outer call chain, but not both.");let E=K0e(l);return E.flags|=C,E}function CYr(l,C){if(g0(l)){let W=l.parameters.length-1,M=l.parameters[W].escapedName,se=co(l.parameters[W]);if(cA(se))return[E(se,W,M)];if(!C&&se.flags&1048576&&he(se.types,cA))return Ot(se.types,Ee=>E(Ee,W,M))}return[l.parameters];function E(W,M,se){let Ee=af(W),Ve=D(W,se),Oe=Ot(Ee,(ot,Wt)=>{let Rt=Ve&&Ve[Wt]?Ve[Wt]:Bge(l,M+Wt,W),Qr=W.target.elementFlags[Wt],ln=Qr&12?32768:Qr&2?16384:0,hn=wA(1,Rt,ln);return hn.links.type=Qr&4?V_(ot):ot,hn});return vi(l.parameters.slice(0,M),Oe)}function D(W,M){let se=new Map;return Ot(W.target.labeledElementDeclarations,(Ee,Ve)=>{let Oe=mOt(Ee,Ve,M),ot=se.get(Oe);return ot===void 0?(se.set(Oe,1),Oe):(se.set(Oe,ot+1),`${Oe}_${ot}`)})}}function Jus(l){let C=is(l),E=Ou(C,1),D=kB(l.symbol),W=!!D&&ya(D,64);if(E.length===0)return[ik(void 0,l.localTypeParameters,void 0,v,l,void 0,0,W?4:0)];let M=UP(l),se=io(M),Ee=RZe(M),Ve=O(Ee),Oe=[];for(let ot of E){let Wt=JN(ot.typeParameters),Rt=O(ot.typeParameters);if(se||Ve>=Wt&&Ve<=Rt){let Qr=Rt?h$e(ot,KV(Ee,ot.typeParameters,Wt,se)):K0e(ot);Qr.typeParameters=l.localTypeParameters,Qr.resolvedReturnType=l,Qr.flags=W?Qr.flags|4:Qr.flags&-5,Oe.push(Qr)}}return Oe}function I$e(l,C,E,D,W){for(let M of l)if(YZe(M,C,E,D,W,E?bds:aye))return M}function Uus(l,C,E){if(C.typeParameters){if(E>0)return;for(let W=1;W1&&(E=E===void 0?D:-1);for(let W of l[D])if(!C||!I$e(C,W,!1,!1,!0)){let M=Uus(l,W,D);if(M){let se=W;if(M.length>1){let Ee=W.thisParameter,Ve=X(M,Oe=>Oe.thisParameter);if(Ve){let Oe=Og(tr(M,ot=>ot.thisParameter&&co(ot.thisParameter)));Ee=iJ(Ve,Oe)}se=IYr(W,M),se.thisParameter=Ee}(C||(C=[])).push(se)}}}if(!O(C)&&E!==-1){let D=l[E!==void 0?E:0],W=D.slice();for(let M of l)if(M!==D){let se=M[0];if(w.assert(!!se,"getUnionSignatures bails early on empty signature lists and should not have empty lists on second pass"),W=se.typeParameters&&lr(W,Ee=>!!Ee.typeParameters&&!mYr(se.typeParameters,Ee.typeParameters))?void 0:Ot(W,Ee=>zus(Ee,se)),!W)break}C=W}return C||v}function mYr(l,C){if(O(l)!==O(C))return!1;if(!l||!C)return!0;let E=eE(C,l);for(let D=0;D=W?l:C,se=M===l?C:l,Ee=M===l?D:W,Ve=vD(l)||vD(C),Oe=Ve&&!vD(M),ot=new Array(Ee+(Oe?1:0));for(let Wt=0;Wt=eR(M)&&Wt>=eR(se),Ti=Wt>=D?void 0:Bge(l,Wt),ks=Wt>=W?void 0:Bge(C,Wt),Vo=Ti===ks?Ti:Ti?ks?void 0:Ti:ks,Hi=wA(1|(mi&&!hn?16777216:0),Vo||`arg${Wt}`,hn?32768:mi?16384:0);Hi.links.type=hn?V_(ln):ln,ot[Wt]=Hi}if(Oe){let Wt=wA(1,"args",32768);Wt.links.type=V_(ST(se,Ee)),se===C&&(Wt.links.type=cl(Wt.links.type,E)),ot[Ee]=Wt}return ot}function zus(l,C){let E=l.typeParameters||C.typeParameters,D;l.typeParameters&&C.typeParameters&&(D=eE(C.typeParameters,l.typeParameters));let W=l.declaration,M=jus(l,C,D),se=Kus(l.thisParameter,C.thisParameter,D),Ee=Math.max(l.minArgumentCount,C.minArgumentCount),Ve=ik(W,E,se,M,void 0,void 0,Ee,(l.flags|C.flags)&167);return Ve.compositeKind=1048576,Ve.compositeSignatures=vi(l.compositeKind!==2097152&&l.compositeSignatures||[l],[C]),D?Ve.mapper=l.compositeKind!==2097152&&l.mapper&&l.compositeSignatures?eH(l.mapper,D):D:l.compositeKind!==2097152&&l.mapper&&l.compositeSignatures&&(Ve.mapper=l.mapper),Ve}function hYr(l){let C=ty(l[0]);if(C){let E=[];for(let D of C){let W=D.keyType;he(l,M=>!!sk(M,W))&&E.push(bD(W,wa(Ot(l,M=>jP(M,W))),lr(l,M=>sk(M,W).isReadonly)))}return E}return v}function qus(l){let C=MWt(Ot(l.types,W=>W===$C?[tt]:Ou(W,0))),E=MWt(Ot(l.types,W=>Ou(W,1))),D=hYr(l.types);pn(l,Be,C,E,D)}function yZe(l,C){return l?C?Og([l,C]):l:C}function _Yr(l){let C=ft(l,D=>Ou(D,1).length>0),E=Ot(l,mZe);if(C>0&&C===ft(E,D=>D)){let D=E.indexOf(!0);E[D]=!1}return E}function $us(l,C,E,D){let W=[];for(let M=0;MEe);for(let Ee=0;Ee0&&(Oe=Ot(Oe,ot=>{let Wt=K0e(ot);return Wt.resolvedReturnType=$us(wd(ot),W,M,Ee),Wt})),E=yYr(E,Oe)}C=yYr(C,Ou(Ve,0)),D=Nd(ty(Ve),(Oe,ot)=>bYr(Oe,ot,!1),D)}pn(l,Be,C||v,E||v,D||v)}function yYr(l,C){for(let E of C)(!l||he(l,D=>!YZe(D,E,!1,!1,!1,aye)))&&(l=Yr(l,E));return l}function bYr(l,C,E){if(l)for(let D=0;D{var Ve;!(Ee.flags&418)&&!(Ee.flags&512&&((Ve=Ee.declarations)!=null&&Ve.length)&&he(Ee.declarations,Yf))&&se.set(Ee.escapedName,Ee)}),E=se}let W;if(pn(l,E,v,v,v),C.flags&32){let se=yC(C),Ee=is(se);Ee.flags&11272192?(E=xu(_t(E)),AYr(E,Cd(Ee))):Ee===Mt&&(W=bD(Jt,Mt,!1))}let M=_$e(E);if(M?D=l3t(M):(W&&(D=Yr(D,W)),C.flags&384&&(kp(C).flags&32||lr(l.properties,se=>!!(co(se).flags&296)))&&(D=Yr(D,Ri))),pn(l,E,v,v,D||v),C.flags&8208&&(l.callSignatures=UM(C)),C.flags&32){let se=yC(C),Ee=C.members?UM(C.members.get("__constructor")):v;C.flags&16&&(Ee=ai(Ee.slice(),tr(l.callSignatures,Ve=>$N(Ve.declaration)?ik(Ve.declaration,Ve.typeParameters,Ve.thisParameter,Ve.parameters,se,void 0,Ve.minArgumentCount,Ve.flags&167):void 0))),Ee.length||(Ee=Jus(se)),l.constructSignatures=Ee}}function rgs(l,C,E){return cl(l,eE([C.indexType,C.objectType],[pw(0),ED([E])]))}function ngs(l){let C=tB(l.mappedType);if(!(C.flags&1048576||C.flags&2097152))return;let E=C.flags&1048576?C.origin:C;if(!E||!(E.flags&2097152))return;let D=Og(E.types.filter(W=>W!==l.constraintType));return D!==Vi?D:void 0}function igs(l){let C=sk(l.source,Jt),E=_D(l.mappedType),D=!(E&1),W=E&4?0:16777216,M=C?[bD(Jt,net(C.type,l.mappedType,l.constraintType)||Kr,D&&C.isReadonly)]:v,se=xu(),Ee=ngs(l);for(let Ve of Cd(l.source)){if(Ee){let Wt=W7(Ve,8576);if(!bg(Wt,Ee))continue}let Oe=8192|(D&&wT(Ve)?8:0),ot=wA(4|Ve.flags&W,Ve.escapedName,Oe);if(ot.declarations=Ve.declarations,ot.links.nameType=al(Ve).nameType,ot.links.propertyType=co(Ve),l.constraintType.type.flags&8388608&&l.constraintType.type.objectType.flags&262144&&l.constraintType.type.indexType.flags&262144){let Wt=l.constraintType.type.objectType,Rt=rgs(l.mappedType,l.constraintType.type,Wt);ot.links.mappedType=Rt,ot.links.constraintType=UN(Wt)}else ot.links.mappedType=l.mappedType,ot.links.constraintType=l.constraintType;se.set(Ve.escapedName,ot)}pn(l,se,v,v,M)}function bZe(l){if(l.flags&4194304){let C=ey(l.type);return tW(C)?AXr(C):UN(C)}if(l.flags&16777216){if(l.root.isDistributive){let C=l.checkType,E=bZe(C);if(E!==C)return M3t(l,rJ(l.root.checkType,E,l.mapper),!1)}return l}if(l.flags&1048576)return Qf(l,bZe,!0);if(l.flags&2097152){let C=l.types;return C.length===2&&C[0].flags&76&&C[1]===I0?l:Og(Ar(l.types,bZe))}return l}function HWt(l){return cI(l)&4096}function YWt(l,C,E,D){for(let W of Cd(l))D(W7(W,C));if(l.flags&1)D(Jt);else for(let W of ty(l))(!E||W.keyType.flags&134217732)&&D(W.keyType)}function sgs(l){let C=xu(),E;pn(l,Be,v,v,v);let D=yT(l),W=tB(l),M=l.target||l,se=lL(M),Ee=C$e(M)!==2,Ve=aF(M),Oe=ey(XM(l)),ot=_D(l);Rre(l)?YWt(Oe,8576,!1,Rt):cJ(bZe(W),Rt),pn(l,C,v,v,E||v);function Rt(ln){let hn=se?cl(se,iye(l.mapper,D,ln)):ln;cJ(hn,mi=>Qr(ln,mi))}function Qr(ln,hn){if(k2(hn)){let mi=G2(hn),Ti=C.get(mi);if(Ti)Ti.links.nameType=wa([Ti.links.nameType,hn]),Ti.links.keyType=wa([Ti.links.keyType,ln]);else{let ks=k2(ln)?yg(Oe,G2(ln)):void 0,Vo=!!(ot&4||!(ot&8)&&ks&&ks.flags&16777216),Hi=!!(ot&1||!(ot&2)&&ks&&wT(ks)),Cs=nt&&!Vo&&ks&&ks.flags&16777216,Ds=ks?HWt(ks):0,jo=wA(4|(Vo?16777216:0),mi,Ds|262144|(Hi?8:0)|(Cs?524288:0));jo.links.mappedType=l,jo.links.nameType=hn,jo.links.keyType=ln,ks&&(jo.links.syntheticOrigin=ks,jo.declarations=Ee?ks.declarations:void 0),C.set(mi,jo)}}else if(y$e(hn)||hn.flags&33){let mi=hn.flags&5?Jt:hn.flags&40?bt:hn,Ti=cl(Ve,iye(l.mapper,D,ln)),ks=j0e(Oe,hn),Vo=!!(ot&1||!(ot&2)&&ks?.isReadonly),Hi=bD(mi,Ti,Vo);E=bYr(E,Hi,!0)}}}function ogs(l){var C;if(!l.links.type){let E=l.links.mappedType;if(!Xv(l,0))return E.containsError=!0,cr;let D=aF(E.target||E),W=iye(E.mapper,yT(E),l.links.keyType),M=cl(D,W),se=nt&&l.flags&16777216&&!KI(M,49152)?rW(M,!0):l.links.checkFlags&524288?q$e(M):M;CD()||(fr(ue,Z.Type_of_property_0_circularly_references_itself_in_mapped_type_1,$c(l),Ys(E)),se=cr),(C=l.links).type??(C.type=se)}return l.links.type}function yT(l){return l.typeParameter||(l.typeParameter=YM(Oo(l.declaration.typeParameter)))}function tB(l){return l.constraintType||(l.constraintType=vy(yT(l))||cr)}function lL(l){return l.declaration.nameType?l.nameType||(l.nameType=cl(Vc(l.declaration.nameType),l.mapper)):void 0}function aF(l){return l.templateType||(l.templateType=l.declaration.type?cl(_g(Vc(l.declaration.type),!0,!!(_D(l)&4)),l.mapper):cr)}function EYr(l){return jw(l.declaration.typeParameter)}function Rre(l){let C=EYr(l);return C.kind===198&&C.operator===143}function XM(l){if(!l.modifiersType)if(Rre(l))l.modifiersType=cl(Vc(EYr(l).type),l.mapper);else{let C=k3t(l.declaration),E=tB(C),D=E&&E.flags&262144?vy(E):E;l.modifiersType=D&&D.flags&4194304?cl(D.type,l.mapper):Kr}return l.modifiersType}function _D(l){let C=l.declaration;return(C.readonlyToken?C.readonlyToken.kind===41?2:1:0)|(C.questionToken?C.questionToken.kind===41?8:4:0)}function BYr(l){let C=_D(l);return C&8?-1:C&4?1:0}function gge(l){if(ia(l)&32)return BYr(l)||gge(XM(l));if(l.flags&2097152){let C=gge(l.types[0]);return he(l.types,(E,D)=>D===0||gge(E)===C)?C:0}return 0}function ags(l){return!!(ia(l)&32&&_D(l)&4)}function qb(l){if(ia(l)&32){let C=tB(l);if(tJ(C))return!0;let E=lL(l);if(E&&tJ(cl(E,$M(yT(l),C))))return!0}return!1}function C$e(l){let C=lL(l);return C?bg(C,yT(l))?1:2:0}function bT(l){return l.members||(l.flags&524288?l.objectFlags&4?Hus(l):l.objectFlags&3?Mus(l):l.objectFlags&1024?igs(l):l.objectFlags&16?tgs(l):l.objectFlags&32?sgs(l):w.fail("Unhandled object type "+w.formatObjectFlags(l.objectFlags)):l.flags&1048576?qus(l):l.flags&2097152?egs(l):w.fail("Unhandled type "+w.formatTypeFlags(l.flags))),l}function UV(l){return l.flags&524288?bT(l).properties:v}function JM(l,C){if(l.flags&524288){let D=bT(l).members.get(C);if(D&&fD(D))return D}}function EZe(l){if(!l.resolvedProperties){let C=xu();for(let E of l.types){for(let D of Cd(E))if(!C.has(D.escapedName)){let W=vZe(l,D.escapedName,!!(l.flags&2097152));W&&C.set(D.escapedName,W)}if(l.flags&1048576&&ty(E).length===0)break}l.resolvedProperties=PV(C)}return l.resolvedProperties}function Cd(l){return l=Age(l),l.flags&3145728?EZe(l):UV(l)}function cgs(l,C){l=Age(l),l.flags&3670016&&bT(l).members.forEach((E,D)=>{ce(E,D)&&C(E,D)})}function lgs(l,C){return C.properties.some(D=>{let W=D.name&&(aT(D.name)?fb(YS(D.name)):dL(D.name)),M=W&&k2(W)?G2(W):void 0,se=M===void 0?void 0:LI(l,M);return!!se&&uye(se)&&!bg(z7(D),se)})}function ugs(l){let C=wa(l);if(!(C.flags&1048576))return rQt(C);let E=xu();for(let D of l)for(let{escapedName:W}of rQt(D))if(!E.has(W)){let M=DYr(C,W);M&&E.set(W,M)}return on(E.values())}function U4(l){return l.flags&262144?vy(l):l.flags&8388608?Ags(l):l.flags&16777216?wYr(l):c_(l)}function vy(l){return BZe(l)?pge(l):void 0}function ggs(l,C){let E=sye(l);return!!E&&K4(E,C)}function K4(l,C=0){var E;return C<5&&!!(l&&(l.flags&262144&&lr((E=l.symbol)==null?void 0:E.declarations,D=>ya(D,4096))||l.flags&3145728&&lr(l.types,D=>K4(D,C))||l.flags&8388608&&K4(l.objectType,C+1)||l.flags&16777216&&K4(wYr(l),C+1)||l.flags&33554432&&K4(l.baseType,C)||ia(l)&32&&ggs(l,C)||tW(l)&&ke(jM(l),(D,W)=>!!(l.target.elementFlags[W]&8)&&K4(D,C))>=0))}function Ags(l){return BZe(l)?dgs(l):void 0}function XWt(l){let C=cF(l,!1);return C!==l?C:U4(l)}function dgs(l){if(jWt(l))return N$e(l.objectType,l.indexType);let C=XWt(l.indexType);if(C&&C!==l.indexType){let D=zV(l.objectType,C,l.accessFlags);if(D)return D}let E=XWt(l.objectType);if(E&&E!==l.objectType)return zV(E,l.indexType,l.accessFlags)}function JWt(l){if(!l.resolvedDefaultConstraint){let C=qAs(l),E=$P(l);l.resolvedDefaultConstraint=Sd(C)?E:Sd(E)?C:wa([C,E])}return l.resolvedDefaultConstraint}function vYr(l){if(l.resolvedConstraintOfDistributive!==void 0)return l.resolvedConstraintOfDistributive||void 0;if(l.root.isDistributive&&l.restrictiveInstantiation!==l){let C=cF(l.checkType,!1),E=C===l.checkType?U4(C):C;if(E&&E!==l.checkType){let D=M3t(l,rJ(l.root.checkType,E,l.mapper),!0);if(!(D.flags&131072))return l.resolvedConstraintOfDistributive=D,D}}l.resolvedConstraintOfDistributive=!1}function SYr(l){return vYr(l)||JWt(l)}function wYr(l){return BZe(l)?SYr(l):void 0}function pgs(l,C){let E,D=!1;for(let W of l)if(W.flags&465829888){let M=U4(W);for(;M&&M.flags&21233664;)M=U4(M);M&&(E=Yr(E,M),C&&(E=Yr(E,W)))}else(W.flags&469892092||BD(W))&&(D=!0);if(E&&(C||D)){if(D)for(let W of l)(W.flags&469892092||BD(W))&&(E=Yr(E,W));return QZe(Og(E,2),!1)}}function c_(l){if(l.flags&464781312||tW(l)){let C=UWt(l);return C!==Yd&&C!==qA?C:void 0}return l.flags&4194304?ki:void 0}function yD(l){return c_(l)||l}function BZe(l){return UWt(l)!==qA}function UWt(l){if(l.resolvedBaseConstraint)return l.resolvedBaseConstraint;let C=[];return l.resolvedBaseConstraint=E(l);function E(M){if(!M.immediateBaseConstraint){if(!Xv(M,4))return qA;let se,Ee=X$e(M);if((C.length<10||C.length<50&&!Ue(C,Ee))&&(C.push(Ee),se=W(cF(M,!1)),C.pop()),!CD()){if(M.flags&262144){let Ve=b$e(M);if(Ve){let Oe=fr(Ve,Z.Type_parameter_0_has_a_circular_constraint,Ys(M));ue&&!rV(Ve,ue)&&!rV(ue,Ve)&&tg(Oe,Js(ue,Z.Circularity_originates_in_type_at_this_location))}}se=qA}M.immediateBaseConstraint??(M.immediateBaseConstraint=se||Yd)}return M.immediateBaseConstraint}function D(M){let se=E(M);return se!==Yd&&se!==qA?se:void 0}function W(M){if(M.flags&262144){let se=pge(M);return M.isThisType||!se?se:D(se)}if(M.flags&3145728){let se=M.types,Ee=[],Ve=!1;for(let Oe of se){let ot=D(Oe);ot?(ot!==Oe&&(Ve=!0),Ee.push(ot)):Ve=!0}return Ve?M.flags&1048576&&Ee.length===se.length?wa(Ee):M.flags&2097152&&Ee.length?Og(Ee):void 0:M}if(M.flags&4194304)return ki;if(M.flags&134217728){let se=M.types,Ee=tr(se,D);return Ee.length===se.length?q4(M.texts,Ee):Jt}if(M.flags&268435456){let se=D(M.type);return se&&se!==M.type?P7(M.symbol,se):Jt}if(M.flags&8388608){if(jWt(M))return D(N$e(M.objectType,M.indexType));let se=D(M.objectType),Ee=D(M.indexType),Ve=se&&Ee&&zV(se,Ee,M.accessFlags);return Ve&&D(Ve)}if(M.flags&16777216){let se=SYr(M);return se&&D(se)}if(M.flags&33554432)return D(p3t(M));if(tW(M)){let se=Ot(jM(M),(Ee,Ve)=>{let Oe=Ee.flags&262144&&M.target.elementFlags[Ve]&8&&D(Ee)||Ee;return Oe!==Ee&&rE(Oe,ot=>tO(ot)&&!tW(ot))?Oe:Ee});return ED(se,M.target.elementFlags,M.target.readonly,M.target.labeledElementDeclarations)}return M}}function fgs(l,C){if(l===C)return l.resolvedApparentType||(l.resolvedApparentType=KE(l,C,!0));let E=`I${Fh(l)},${Fh(C)}`;return TP(E)??jZ(E,KE(l,C,!0))}function KWt(l){if(l.default)l.default===di&&(l.default=qA);else if(l.target){let C=KWt(l.target);l.default=C?cl(C,l.mapper):Yd}else{l.default=di;let C=l.symbol&&X(l.symbol.declarations,D=>$p(D)&&D.default),E=C?Vc(C):Yd;l.default===di&&(l.default=E)}return l.default}function j4(l){let C=KWt(l);return C!==Yd&&C!==qA?C:void 0}function Igs(l){return KWt(l)!==qA}function TYr(l){return!!(l.symbol&&X(l.symbol.declarations,C=>$p(C)&&C.default))}function NYr(l){return l.resolvedApparentType||(l.resolvedApparentType=Cgs(l))}function Cgs(l){let C=l.target??l,E=sye(C);if(E&&!C.declaration.nameType){let D=XM(l),W=qb(D)?NYr(D):c_(D);if(W&&rE(W,M=>tO(M)||RYr(M)))return cl(C,rJ(E,W,l.mapper))}return l}function RYr(l){return!!(l.flags&2097152)&&he(l.types,tO)}function jWt(l){let C;return!!(l.flags&8388608&&ia(C=l.objectType)&32&&!qb(C)&&tJ(l.indexType)&&!(_D(C)&8)&&!C.declaration.nameType)}function ey(l){let C=l.flags&465829888?c_(l)||Kr:l,E=ia(C);return E&32?NYr(C):E&4&&C!==l?KE(C,l):C.flags&2097152?fgs(C,l):C.flags&402653316?Rl:C.flags&296?SA:C.flags&2112?rAs():C.flags&528?OA:C.flags&12288?nXr():C.flags&67108864?Lc:C.flags&4194304?ki:C.flags&2&&!nt?Lc:C}function Age(l){return ET(ey(ET(l)))}function DYr(l,C,E){var D,W,M;let se,Ee,Ve,Oe=l.flags&1048576,ot,Wt=4,Rt=Oe?0:8,Qr=!1;for(let jo of l.types){let Ca=ey(jo);if(!(QA(Ca)||Ca.flags&131072)){let ma=yg(Ca,C,E),Ng=ma?V1(ma):0;if(ma){if(ma.flags&106500&&(ot??(ot=Oe?0:16777216),Oe?ot|=ma.flags&16777216:ot&=ma.flags),!se)se=ma;else if(ma!==se)if((Jre(ma)||ma)===(Jre(se)||se)&&ePt(se,ma,(ZA,au)=>ZA===au?-1:0)===-1)Qr=!!se.parent&&!!O(cL(se.parent));else{Ee||(Ee=new Map,Ee.set(Gg(se),se));let ZA=Gg(ma);Ee.has(ZA)||Ee.set(ZA,ma)}Oe&&wT(ma)?Rt|=8:!Oe&&!wT(ma)&&(Rt&=-9),Rt|=(Ng&6?0:256)|(Ng&4?512:0)|(Ng&2?1024:0)|(Ng&256?2048:0),KPt(ma)||(Wt=2)}else if(Oe){let Qu=!U0e(C)&&L7(Ca,C);Qu?(Rt|=32|(Qu.isReadonly?8:0),Ve=Yr(Ve,cA(Ca)?K$e(Ca)||wn:Qu.type)):iO(Ca)&&!(ia(Ca)&2097152)?(Rt|=32,Ve=Yr(Ve,wn)):Rt|=16}}}if(!se||Oe&&(Ee||Rt&48)&&Rt&1536&&!(Ee&&mgs(Ee.values())))return;if(!Ee&&!(Rt&16)&&!Ve)if(Qr){let jo=(D=$s(se,wB))==null?void 0:D.links,Ca=iJ(se,jo?.type);return Ca.parent=(M=(W=se.valueDeclaration)==null?void 0:W.symbol)==null?void 0:M.parent,Ca.links.containingType=l,Ca.links.mapper=jo?.mapper,Ca.links.writeType=JP(se),Ca}else return se;let ln=Ee?on(Ee.values()):[se],hn,mi,Ti,ks=[],Vo,Hi,Cs=!1;for(let jo of ln){Hi?jo.valueDeclaration&&jo.valueDeclaration!==Hi&&(Cs=!0):Hi=jo.valueDeclaration,hn=ai(hn,jo.declarations);let Ca=co(jo);mi||(mi=Ca,Ti=al(jo).nameType);let ma=JP(jo);(Vo||ma!==Ca)&&(Vo=Yr(Vo||ks.slice(),ma)),Ca!==mi&&(Rt|=64),(uye(Ca)||$4(Ca))&&(Rt|=128),Ca.flags&131072&&Ca!==Gd&&(Rt|=131072),ks.push(Ca)}ai(ks,Ve);let Ds=wA(4|(ot??0),C,Wt|Rt);return Ds.links.containingType=l,!Cs&&Hi&&(Ds.valueDeclaration=Hi,Hi.symbol.parent&&(Ds.parent=Hi.symbol.parent)),Ds.declarations=hn,Ds.links.nameType=Ti,ks.length>2?(Ds.links.checkFlags|=65536,Ds.links.deferralParent=l,Ds.links.deferralConstituents=ks,Ds.links.deferralWriteConstituents=Vo):(Ds.links.type=Oe?wa(ks):Og(ks),Vo&&(Ds.links.writeType=Oe?wa(Vo):Og(Vo))),Ds}function xYr(l,C,E){var D,W,M;let se=E?(D=l.propertyCacheWithoutObjectFunctionPropertyAugment)==null?void 0:D.get(C):(W=l.propertyCache)==null?void 0:W.get(C);return se||(se=DYr(l,C,E),se&&((E?l.propertyCacheWithoutObjectFunctionPropertyAugment||(l.propertyCacheWithoutObjectFunctionPropertyAugment=xu()):l.propertyCache||(l.propertyCache=xu())).set(C,se),E&&!(cI(se)&48)&&!((M=l.propertyCache)!=null&&M.get(C))&&(l.propertyCache||(l.propertyCache=xu())).set(C,se))),se}function mgs(l){let C;for(let E of l){if(!E.declarations)return;if(!C){C=new Set(E.declarations);continue}if(C.forEach(D=>{Ue(E.declarations,D)||C.delete(D)}),C.size===0)return}return C}function vZe(l,C,E){let D=xYr(l,C,E);return D&&!(cI(D)&16)?D:void 0}function ET(l){return l.flags&1048576&&l.objectFlags&16777216?l.resolvedReducedType||(l.resolvedReducedType=hgs(l)):l.flags&2097152?(l.objectFlags&16777216||(l.objectFlags|=16777216|(lr(EZe(l),_gs)?33554432:0)),l.objectFlags&33554432?Vi:l):l}function hgs(l){let C=Ar(l.types,ET);if(C===l.types)return l;let E=wa(C);return E.flags&1048576&&(E.resolvedReducedType=E),E}function _gs(l){return kYr(l)||GYr(l)}function kYr(l){return!(l.flags&16777216)&&(cI(l)&131264)===192&&!!(co(l).flags&131072)}function GYr(l){return!l.valueDeclaration&&!!(cI(l)&1024)}function zWt(l){return!!(l.flags&1048576&&l.objectFlags&16777216&&lr(l.types,zWt)||l.flags&2097152&&ygs(l))}function ygs(l){let C=l.uniqueLiteralFilledInstantiation||(l.uniqueLiteralFilledInstantiation=cl(l,Nl));return ET(C)!==C}function qWt(l,C){if(C.flags&2097152&&ia(C)&33554432){let E=be(EZe(C),kYr);if(E)return ou(l,Z.The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents,Ys(C,void 0,536870912),$c(E));let D=be(EZe(C),GYr);if(D)return ou(l,Z.The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some,Ys(C,void 0,536870912),$c(D))}return l}function yg(l,C,E,D){var W,M;if(l=Age(l),l.flags&524288){let se=bT(l),Ee=se.members.get(C);if(Ee&&!D&&((W=l.symbol)==null?void 0:W.flags)&512&&((M=al(l.symbol).typeOnlyExportStarMap)!=null&&M.has(C)))return;if(Ee&&fD(Ee,D))return Ee;if(E)return;let Ve=se===_f?$C:se.callSignatures.length?H2:se.constructSignatures.length?qt:void 0;if(Ve){let Oe=JM(Ve,C);if(Oe)return Oe}return JM(FI,C)}if(l.flags&2097152){let se=vZe(l,C,!0);return se||(E?void 0:vZe(l,C,E))}if(l.flags&1048576)return vZe(l,C,E)}function SZe(l,C){if(l.flags&3670016){let E=bT(l);return C===0?E.callSignatures:E.constructSignatures}return v}function Ou(l,C){let E=SZe(Age(l),C);if(C===0&&!O(E)&&l.flags&1048576){if(l.arrayFallbackSignatures)return l.arrayFallbackSignatures;let D;if(rE(l,W=>{var M;return!!((M=W.symbol)!=null&&M.parent)&&bgs(W.symbol.parent)&&(D?D===W.symbol.escapedName:(D=W.symbol.escapedName,!0))})){let W=Qf(l,se=>pL((FYr(se.symbol.parent)?Bs:Fn).typeParameters[0],se.mapper)),M=V_(W,jv(l,se=>FYr(se.symbol.parent)));return l.arrayFallbackSignatures=Ou(LI(M,D),C)}l.arrayFallbackSignatures=E}return E}function bgs(l){return!l||!Fn.symbol||!Bs.symbol?!1:!!uw(l,Fn.symbol)||!!uw(l,Bs.symbol)}function FYr(l){return!l||!Bs.symbol?!1:!!uw(l,Bs.symbol)}function $Wt(l,C){return be(l,E=>E.keyType===C)}function e3t(l,C){let E,D,W;for(let M of l)M.keyType===Jt?E=M:Z7(C,M.keyType)&&(D?(W||(W=[D])).push(M):D=M);return W?bD(Kr,Og(Ot(W,M=>M.type)),Nd(W,(M,se)=>M&&se.isReadonly,!0)):D||(E&&Z7(C,Jt)?E:void 0)}function Z7(l,C){return bg(l,C)||C===Jt&&bg(l,bt)||C===bt&&(l===_u||!!(l.flags&128)&&bN(l.value))}function t3t(l){return l.flags&3670016?bT(l).indexInfos:v}function ty(l){return t3t(Age(l))}function sk(l,C){return $Wt(ty(l),C)}function jP(l,C){var E;return(E=sk(l,C))==null?void 0:E.type}function r3t(l,C){return ty(l).filter(E=>Z7(C,E.keyType))}function j0e(l,C){return e3t(ty(l),C)}function L7(l,C){return j0e(l,U0e(C)?Es:fb(wc(C)))}function ZYr(l){var C;let E;for(let D of D1(l))E=og(E,YM(D.symbol));return E?.length?E:hp(l)?(C=dge(l))==null?void 0:C.typeParameters:void 0}function n3t(l){let C=[];return l.forEach((E,D)=>{X4(D)||C.push(E)}),C}function i3t(l,C){if(Ul(l))return;let E=L_(kt,'"'+l+'"',512);return E&&C?FA(E):E}function s3t(l){return F5(l)||Kee(l)||Uc(l)&&Ele(l)}function wZe(l){if(s3t(l))return!0;if(!Uc(l))return!1;if(l.initializer){let E=rB(l.parent),D=l.parent.parameters.indexOf(l);return w.assert(D>=0),D>=eR(E,3)}let C=q9(l.parent);return C?!l.type&&!l.dotDotDotToken&&l.parent.parameters.indexOf(l)>=xet(C).length:!1}function Egs(l){return Hl(l)&&!OS(l)&&l.questionToken}function z0e(l,C,E,D){return{kind:l,parameterName:C,parameterIndex:E,type:D}}function JN(l){let C=0;if(l)for(let E=0;E=E&&M<=W){let se=l?l.slice():[];for(let Ve=M;VeVe.arguments.length&&!Ti||(W=E.length)}if((l.kind===177||l.kind===178)&&Nre(l)&&(!Ee||!M)){let ln=l.kind===177?178:177,hn=qd(Oo(l),ln);hn&&(M=k7(hn))}se&&se.typeExpression&&(M=iJ(wA(1,"this"),Vc(se.typeExpression)));let Wt=LG(l)?wZ(l):l,Rt=Wt&&Df(Wt)?yC(FA(Wt.parent.symbol)):void 0,Qr=Rt?Rt.localTypeParameters:ZYr(l);(T$(l)||io(l)&&Bgs(l,E))&&(D|=1),(Y(l)&&ya(l,64)||Df(l)&&ya(l.parent,64))&&(D|=4),C.resolvedSignature=ik(l,Qr,M,E,void 0,void 0,W,D)}return C.resolvedSignature}function Bgs(l,C){if(LG(l)||!o3t(l))return!1;let E=zo(l.parameters),D=E?MR(E):Tx(l).filter(LB),W=le(D,se=>se.typeExpression&&Uxe(se.typeExpression.type)?se.typeExpression.type:void 0),M=wA(3,"args",32768);return W?M.links.type=V_(Vc(W.type)):(M.links.checkFlags|=65536,M.links.deferralParent=Vi,M.links.deferralConstituents=[np],M.links.deferralWriteConstituents=[np]),W&&C.pop(),C.push(M),!0}function dge(l){if(!(io(l)&&pd(l)))return;let C=Sx(l);return C?.typeExpression&&AJ(Vc(C.typeExpression))}function vgs(l,C){let E=dge(l);if(!E)return;let D=l.parameters.indexOf(C);return C.dotDotDotToken?bLe(E,D):ST(E,D)}function Sgs(l){let C=dge(l);return C&&wd(C)}function o3t(l){let C=Jo(l);return C.containsArgumentsReference===void 0&&(C.flags&512?C.containsArgumentsReference=!0:C.containsArgumentsReference=E(l.body)),C.containsArgumentsReference;function E(D){if(!D)return!1;switch(D.kind){case 80:return D.escapedText===jt.escapedName&&Zye(D)===jt;case 172:case 174:case 177:case 178:return D.name.kind===167&&E(D.name);case 211:case 212:return E(D.expression);case 303:return E(D.initializer);default:return!vme(D)&&!VS(D)&&!!hu(D,E)}}}function UM(l){if(!l||!l.declarations)return v;let C=[];for(let E=0;E0&&D.body){let W=l.declarations[E-1];if(D.parent===W.parent&&D.kind===W.kind&&D.pos===W.end)continue}if(io(D)&&D.jsDoc){let W=Ime(D);if(O(W)){for(let M of W){let se=M.typeExpression;se.type===void 0&&!Df(D)&&nO(se,Mt),C.push(rB(se))}continue}}C.push(!RG(D)&&!RB(D)&&dge(D)||rB(D))}}return C}function LYr(l){let C=q0(l,l);if(C){let E=pb(C);if(E)return co(E)}return Mt}function zP(l){if(l.thisParameter)return co(l.thisParameter)}function JB(l){if(!l.resolvedTypePredicate){if(l.target){let C=JB(l.target);l.resolvedTypePredicate=C?Ads(C,l.mapper):GI}else if(l.compositeSignatures)l.resolvedTypePredicate=wAs(l.compositeSignatures,l.compositeKind)||GI;else{let C=l.declaration&&nb(l.declaration),E;if(!C){let D=dge(l.declaration);D&&l!==D&&(E=JB(D))}if(C||E)l.resolvedTypePredicate=C&&S(C)?wgs(C,l):E||GI;else if(l.declaration&&pd(l.declaration)&&(!l.resolvedReturnType||l.resolvedReturnType.flags&16)&&nE(l)>0){let{declaration:D}=l;l.resolvedTypePredicate=GI,l.resolvedTypePredicate=cms(D)||GI}else l.resolvedTypePredicate=GI}w.assert(!!l.resolvedTypePredicate)}return l.resolvedTypePredicate===GI?void 0:l.resolvedTypePredicate}function wgs(l,C){let E=l.parameterName,D=l.type&&Vc(l.type);return E.kind===197?z0e(l.assertsModifier?2:0,void 0,void 0,D):z0e(l.assertsModifier?3:1,E.escapedText,ke(C.parameters,W=>W.escapedName===E.escapedText),D)}function VYr(l,C,E){return C!==2097152?wa(l,E):Og(l)}function wd(l){if(!l.resolvedReturnType){if(!Xv(l,3))return cr;let C=l.target?cl(wd(l.target),l.mapper):l.compositeSignatures?cl(VYr(Ot(l.compositeSignatures,wd),l.compositeKind,2),l.mapper):Dre(l.declaration)||(Tf(l.declaration.body)?Mt:Zet(l.declaration));if(l.flags&8?C=h4r(C):l.flags&16&&(C=rW(C)),!CD()){if(l.declaration){let E=nb(l.declaration);if(E)fr(E,Z.Return_type_annotation_circularly_references_itself);else if(dt){let D=l.declaration,W=Sl(D);W?fr(W,Z._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,kd(W)):fr(D,Z.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)}}C=Mt}l.resolvedReturnType??(l.resolvedReturnType=C)}return l.resolvedReturnType}function Dre(l){if(l.kind===176)return yC(FA(l.parent.symbol));let C=nb(l);if(LG(l)){let E=HX(l);if(E&&Df(E.parent)&&!C)return yC(FA(E.parent.parent.symbol))}if(MX(l))return Vc(l.parameters[0].type);if(C)return Vc(C);if(l.kind===177&&Nre(l)){let E=io(l)&&qa(l);if(E)return E;let D=qd(Oo(l),178),W=mD(D);if(W)return W}return Sgs(l)}function m$e(l){return l.compositeSignatures&&lr(l.compositeSignatures,m$e)||!l.resolvedReturnType&&Bre(l,3)>=0}function Tgs(l){return WYr(l)||Mt}function WYr(l){if(g0(l)){let C=co(l.parameters[l.parameters.length-1]),E=cA(C)?K$e(C):C;return E&&jP(E,bt)}}function q0e(l,C,E,D){let W=a3t(l,KV(C,l.typeParameters,JN(l.typeParameters),E));if(D){let M=oUr(wd(W));if(M){let se=K0e(M);se.typeParameters=D;let Ee=K0e(W);return Ee.resolvedReturnType=z4(se),Ee}}return W}function a3t(l,C){let E=l.instantiations||(l.instantiations=new Map),D=Uv(C),W=E.get(D);return W||E.set(D,W=h$e(l,C)),W}function h$e(l,C){return H7(l,Ngs(l,C),!0)}function Ngs(l,C){return eE(Ar(l.typeParameters,E=>E.mapper?cl(E,E.mapper):E),C)}function $0e(l){return l.typeParameters?l.erasedSignatureCache||(l.erasedSignatureCache=Rgs(l)):l}function Rgs(l){return H7(l,QXr(l.typeParameters),!0)}function Dgs(l){return l.typeParameters?l.canonicalSignatureCache||(l.canonicalSignatureCache=xgs(l)):l}function xgs(l){return q0e(l,Ot(l.typeParameters,C=>C.target&&!vy(C.target)?C.target:C),io(l.declaration))}function kgs(l){return l.typeParameters?l.implementationSignatureCache||(l.implementationSignatureCache=Ggs(l)):l}function Ggs(l){return l.typeParameters?H7(l,eE([],[])):l}function Fgs(l){let C=l.typeParameters;if(C){if(l.baseSignatureCache)return l.baseSignatureCache;let E=QXr(C),D=eE(C,Ot(C,M=>vy(M)||Kr)),W=Ot(C,M=>cl(M,D)||Kr);for(let M=0;M{y$e(W)&&!$Wt(C,W)&&C.push(bD(W,E.type?Vc(E.type):Mt,ib(E,8),E))})}return C}return v}function y$e(l){return!!(l.flags&4108)||$4(l)||!!(l.flags&2097152)&&!O7(l)&&lr(l.types,y$e)}function b$e(l){return tr(Gt(l.symbol&&l.symbol.declarations,$p),jw)[0]}function OYr(l,C){var E;let D;if((E=l.symbol)!=null&&E.declarations){for(let W of l.symbol.declarations)if(W.parent.kind===195){let[M=W.parent,se]=Cme(W.parent.parent);if(se.kind===183&&!C){let Ee=se,Ve=kOt(Ee);if(Ve){let Oe=Ee.typeArguments.indexOf(M);if(Oe()=>nhs(Ee,Ve,ln))),Rt=cl(ot,Wt);Rt!==l&&(D=Yr(D,Rt))}}}}else if(se.kind===169&&se.dotDotDotToken||se.kind===191||se.kind===202&&se.dotDotDotToken)D=Yr(D,V_(Kr));else if(se.kind===204)D=Yr(D,Jt);else if(se.kind===168&&se.parent.kind===200)D=Yr(D,ki);else if(se.kind===200&&se.type&&zA(se.type)===W.parent&&se.parent.kind===194&&se.parent.extendsType===se&&se.parent.checkType.kind===200&&se.parent.checkType.type){let Ee=se.parent.checkType,Ve=Vc(Ee.type);D=Yr(D,cl(Ve,$M(YM(Oo(Ee.typeParameter)),Ee.typeParameter.constraint?Vc(Ee.typeParameter.constraint):ki)))}}}return D&&Og(D)}function pge(l){if(!l.constraint)if(l.target){let C=vy(l.target);l.constraint=C?cl(C,l.mapper):Yd}else{let C=b$e(l);if(!C)l.constraint=OYr(l)||Yd;else{let E=Vc(C);E.flags&1&&!QA(E)&&(E=C.parent.parent.kind===200?ki:Kr),l.constraint=E}}return l.constraint===Yd?void 0:l.constraint}function QYr(l){let C=qd(l.symbol,168),E=Lv(C.parent)?vce(C.parent):C.parent;return E&&q2(E)}function Uv(l){let C="";if(l){let E=l.length,D=0;for(;D1&&(C+=":"+M),D+=M}}return C}function V7(l,C){return l?`@${Gg(l)}`+(C?`:${Uv(C)}`:""):""}function TZe(l,C){let E=0;for(let D of l)(C===void 0||!(D.flags&C))&&(E|=ia(D));return E&458752}function xre(l,C){return lr(C)&&l===Ug?Kr:uL(l,C)}function uL(l,C){let E=Uv(C),D=l.instantiations.get(E);return D||(D=J1(4,l.symbol),l.instantiations.set(E,D),D.objectFlags|=C?TZe(C):0,D.target=l,D.resolvedTypeArguments=C),D}function MYr(l){let C=tF(l.flags,l.symbol);return C.objectFlags=l.objectFlags,C.target=l.target,C.resolvedTypeArguments=l.resolvedTypeArguments,C}function u3t(l,C,E,D,W){if(!D){D=Q7(C);let se=Zre(D);W=E?ok(se,E):se}let M=J1(4,l.symbol);return M.target=l,M.node=C,M.mapper=E,M.aliasSymbol=D,M.aliasTypeArguments=W,M}function af(l){var C,E;if(!l.resolvedTypeArguments){if(!Xv(l,5))return((C=l.target.localTypeParameters)==null?void 0:C.map(()=>cr))||v;let D=l.node,W=D?D.kind===183?vi(l.target.outerTypeParameters,Met(D,l.target.localTypeParameters)):D.kind===188?[Vc(D.elementType)]:Ot(D.elements,Vc):v;CD()?l.resolvedTypeArguments??(l.resolvedTypeArguments=l.mapper?ok(W,l.mapper):W):(l.resolvedTypeArguments??(l.resolvedTypeArguments=((E=l.target.localTypeParameters)==null?void 0:E.map(()=>cr))||v),fr(l.node||ue,l.target.symbol?Z.Type_arguments_for_0_circularly_reference_themselves:Z.Tuple_type_arguments_circularly_reference_themselves,l.target.symbol&&$c(l.target.symbol)))}return l.resolvedTypeArguments}function gL(l){return O(l.target.typeParameters)}function HYr(l,C){let E=kp(FA(C)),D=E.localTypeParameters;if(D){let W=O(l.typeArguments),M=JN(D),se=io(l);if(!(!dt&&se)&&(WD.length)){let Oe=se&&k_(l)&&!P6(l.parent),ot=M===D.length?Oe?Z.Expected_0_type_arguments_provide_these_with_an_extends_tag:Z.Generic_type_0_requires_1_type_argument_s:Oe?Z.Expected_0_1_type_arguments_provide_these_with_an_extends_tag:Z.Generic_type_0_requires_between_1_and_2_type_arguments,Wt=Ys(E,void 0,2);if(fr(l,ot,Wt,M,D.length),!se)return cr}if(l.kind===183&&uXr(l,O(l.typeArguments)!==D.length))return u3t(E,l,void 0);let Ve=vi(E.outerTypeParameters,KV(RZe(l),D,M,se));return uL(E,Ve)}return KM(l,C)?E:cr}function kre(l,C,E,D){let W=kp(l);if(W===an){let Oe=U8e.get(l.escapedName);if(Oe!==void 0&&C&&C.length===1)return Oe===4?g3t(C[0]):P7(l,C[0])}let M=al(l),se=M.typeParameters,Ee=Uv(C)+V7(E,D),Ve=M.instantiations.get(Ee);return Ve||M.instantiations.set(Ee,Ve=YXr(W,eE(se,KV(C,se,JN(se),io(l.valueDeclaration))),E,D)),Ve}function Zgs(l,C){if(cI(C)&1048576){let W=RZe(l),M=V7(C,W),se=wt.get(M);return se||(se=VC(1,"error",void 0,`alias ${M}`),se.aliasSymbol=C,se.aliasTypeArguments=W,wt.set(M,se)),se}let E=kp(C),D=al(C).typeParameters;if(D){let W=O(l.typeArguments),M=JN(D);if(WD.length)return fr(l,M===D.length?Z.Generic_type_0_requires_1_type_argument_s:Z.Generic_type_0_requires_between_1_and_2_type_arguments,$c(C),M,D.length),cr;let se=Q7(l),Ee=se&&(YYr(C)||!YYr(se))?se:void 0,Ve;if(Ee)Ve=Zre(Ee);else if(B8(l)){let Oe=fge(l,2097152,!0);if(Oe&&Oe!==en){let ot=$m(Oe);ot&&ot.flags&524288&&(Ee=ot,Ve=RZe(l)||(D?[]:void 0))}}return kre(C,RZe(l),Ee,Ve)}return KM(l,C)?E:cr}function YYr(l){var C;let E=(C=l.declarations)==null?void 0:C.find(Aee);return!!(E&&Ob(E))}function Lgs(l){switch(l.kind){case 183:return l.typeName;case 233:let C=l.expression;if(lp(C))return C}}function XYr(l){return l.parent?`${XYr(l.parent)}.${l.escapedName}`:l.escapedName}function E$e(l){let E=(l.kind===166?l.right:l.kind===211?l.name:l).escapedText;if(E){let D=l.kind===166?E$e(l.left):l.kind===211?E$e(l.expression):void 0,W=D?`${XYr(D)}.${E}`:E,M=rn.get(W);return M||(rn.set(W,M=wA(524288,E,1048576)),M.parent=D,M.links.declaredType=kn),M}return en}function fge(l,C,E){let D=Lgs(l);if(!D)return en;let W=ZI(D,C,E);return W&&W!==en?W:E?en:E$e(D)}function B$e(l,C){if(C===en)return cr;if(C=rge(C)||C,C.flags&96)return HYr(l,C);if(C.flags&524288)return Zgs(l,C);let E=lYr(C);if(E)return KM(l,C)?ry(E):cr;if(C.flags&111551&&v$e(l)){let D=Vgs(l,C);return D||(fge(l,788968),co(C))}return cr}function Vgs(l,C){let E=Jo(l);if(!E.resolvedJSDocType){let D=co(C),W=D;if(C.valueDeclaration){let M=l.kind===205&&l.qualifier;D.symbol&&D.symbol!==C&&M&&(W=B$e(l,D.symbol))}E.resolvedJSDocType=W}return E.resolvedJSDocType}function g3t(l){return A3t(l)?JYr(l,Kr):l}function A3t(l){return!!(l.flags&3145728&&lr(l.types,A3t)||l.flags&33554432&&!Gre(l)&&A3t(l.baseType)||l.flags&524288&&!BD(l)||l.flags&432275456&&!$4(l))}function Gre(l){return!!(l.flags&33554432&&l.constraint.flags&2)}function d3t(l,C){return C.flags&3||C===l||l.flags&1?l:JYr(l,C)}function JYr(l,C){let E=`${Fh(l)}>${Fh(C)}`,D=nc.get(E);if(D)return D;let W=YN(33554432);return W.baseType=l,W.constraint=C,nc.set(E,W),W}function p3t(l){return Gre(l)?l.baseType:Og([l.constraint,l.baseType])}function UYr(l){return l.kind===189&&l.elements.length===1}function KYr(l,C,E){return UYr(C)&&UYr(E)?KYr(l,C.elements[0],E.elements[0]):qV(Vc(C))===qV(l)?Vc(E):void 0}function Wgs(l,C){let E,D=!0;for(;C&&!Cc(C)&&C.kind!==320;){let W=C.parent;if(W.kind===169&&(D=!D),(D||l.flags&8650752)&&W.kind===194&&C===W.trueType){let M=KYr(l,W.checkType,W.extendsType);M&&(E=Yr(E,M))}else if(l.flags&262144&&W.kind===200&&!W.nameType&&C===W.type){let M=Vc(W);if(yT(M)===qV(l)){let se=sye(M);if(se){let Ee=vy(se);Ee&&rE(Ee,tO)&&(E=Yr(E,wa([bt,_u])))}}}C=W}return E?d3t(l,Og(E)):l}function v$e(l){return!!(l.flags&16777216)&&(l.kind===183||l.kind===205)}function KM(l,C){return l.typeArguments?(fr(l,Z.Type_0_is_not_generic,C?$c(C):l.typeName?kd(l.typeName):H8e),!1):!0}function jYr(l){if(sr(l.typeName)){let C=l.typeArguments;switch(l.typeName.escapedText){case"String":return KM(l),Jt;case"Number":return KM(l),bt;case"Boolean":return KM(l),ds;case"Void":return KM(l),so;case"Undefined":return KM(l),wn;case"Null":return KM(l),ur;case"Function":case"function":return KM(l),$C;case"array":return(!C||!C.length)&&!dt?np:void 0;case"promise":return(!C||!C.length)&&!dt?BLe(Mt):void 0;case"Object":if(C&&C.length===2){if(ree(l)){let E=Vc(C[0]),D=Vc(C[1]),W=E===Jt||E===bt?[bD(E,D,!1)]:v;return qn(void 0,Be,v,v,W)}return Mt}return KM(l),dt?void 0:Mt}}}function Pgs(l){let C=Vc(l.type);return nt?UZe(C,65536):C}function NZe(l){let C=Jo(l);if(!C.resolvedType){if(B2(l)&&kE(l.parent))return C.resolvedSymbol=en,C.resolvedType=sC(l.parent.expression);let E,D,W=788968;v$e(l)&&(D=jYr(l),D||(E=fge(l,W,!0),E===en?E=fge(l,W|111551):fge(l,W),D=B$e(l,E))),D||(E=fge(l,W),D=B$e(l,E)),C.resolvedSymbol=E,C.resolvedType=D}return C.resolvedType}function RZe(l){return Ot(l.typeArguments,Vc)}function zYr(l){let C=Jo(l);if(!C.resolvedType){let E=SUr(l);C.resolvedType=ry(tE(E))}return C.resolvedType}function qYr(l,C){function E(W){let M=W.declarations;if(M)for(let se of M)switch(se.kind){case 263:case 264:case 266:return se}}if(!l)return C?Ug:Lc;let D=kp(l);return D.flags&524288?O(D.typeParameters)!==C?(fr(E(l),Z.Global_type_0_must_have_1_type_parameter_s,pf(l),C),C?Ug:Lc):D:(fr(E(l),Z.Global_type_0_must_be_a_class_or_interface_type,pf(l)),C?Ug:Lc)}function f3t(l,C){return Fre(l,111551,C?Z.Cannot_find_global_value_0:void 0)}function I3t(l,C){return Fre(l,788968,C?Z.Cannot_find_global_type_0:void 0)}function S$e(l,C,E){let D=Fre(l,788968,E?Z.Cannot_find_global_type_0:void 0);if(D&&(kp(D),O(al(D).typeParameters)!==C)){let W=D.declarations&&be(D.declarations,Pf);fr(W,Z.Global_type_0_must_have_1_type_parameter_s,pf(D),C);return}return D}function Fre(l,C,E){return Pi(void 0,l,C,E,!1,!1)}function bC(l,C,E){let D=I3t(l,E);return D||E?qYr(D,C):void 0}function Ogs(){return WB||(WB=bC("TypedPropertyDescriptor",1,!0)||Ug)}function Qgs(){return Zs||(Zs=bC("TemplateStringsArray",0,!0)||Lc)}function $Yr(){return qo||(qo=bC("ImportMeta",0,!0)||Lc)}function eXr(){if(!Ja){let l=wA(0,"ImportMetaExpression"),C=$Yr(),E=wA(4,"meta",8);E.parent=l,E.links.type=C;let D=xu([E]);l.members=D,Ja=qn(l,D,v,v,v)}return Ja}function tXr(l){return Ge||(Ge=bC("ImportCallOptions",0,l))||Lc}function C3t(l){return Yt||(Yt=bC("ImportAttributes",0,l))||Lc}function rXr(l){return pT||(pT=f3t("Symbol",l))}function Mgs(l){return Y2||(Y2=I3t("SymbolConstructor",l))}function nXr(){return gb||(gb=bC("Symbol",0,!1))||Lc}function DZe(l){return X2||(X2=bC("Promise",1,l))||Ug}function iXr(l){return lD||(lD=bC("PromiseLike",1,l))||Ug}function m3t(l){return uD||(uD=f3t("Promise",l))}function Hgs(l){return Ab||(Ab=bC("PromiseConstructorLike",0,l))||Lc}function w$e(l){return qr||(qr=bC("AsyncIterable",1,l))||Ug}function Ygs(l){return Mn||(Mn=bC("AsyncIterator",3,l))||Ug}function Xgs(l){return Jn||(Jn=bC("AsyncIterableIterator",1,l))||Ug}function Jgs(l){return cs||(cs=bC("AsyncGenerator",3,l))||Ug}function h3t(l){return em||(em=bC("Iterable",1,l))||Ug}function Ugs(l){return gD||(gD=bC("Iterator",3,l))||Ug}function Kgs(l){return Kb||(Kb=bC("IterableIterator",1,l))||Ug}function jgs(l){return LN||(LN=bC("Generator",3,l))||Ug}function zgs(l){return J2||(J2=bC("IteratorYieldResult",1,l))||Ug}function qgs(l){return rt||(rt=bC("IteratorReturnResult",1,l))||Ug}function sXr(l){return En||(En=bC("Disposable",0,l))||Lc}function $gs(l){return Rs||(Rs=bC("AsyncDisposable",0,l))||Lc}function oXr(l,C=0){let E=Fre(l,788968,void 0);return E&&qYr(E,C)}function eAs(){return yc||(yc=S$e("Extract",2,!0)||en),yc===en?void 0:yc}function tAs(){return Cu||(Cu=S$e("Omit",2,!0)||en),Cu===en?void 0:Cu}function _3t(l){return Pl||(Pl=S$e("Awaited",1,l)||(l?en:void 0)),Pl===en?void 0:Pl}function rAs(){return Bu||(Bu=bC("BigInt",0,!1))||Lc}function nAs(l){return gI??(gI=bC("ClassDecoratorContext",1,l))??Ug}function iAs(l){return PB??(PB=bC("ClassMethodDecoratorContext",2,l))??Ug}function sAs(l){return nw??(nw=bC("ClassGetterDecoratorContext",2,l))??Ug}function oAs(l){return AD??(AD=bC("ClassSetterDecoratorContext",2,l))??Ug}function aAs(l){return qx??(qx=bC("ClassAccessorDecoratorContext",2,l))??Ug}function cAs(l){return YZ??(YZ=bC("ClassAccessorDecoratorTarget",2,l))??Ug}function lAs(l){return $x??($x=bC("ClassAccessorDecoratorResult",2,l))??Ug}function uAs(l){return OB??(OB=bC("ClassFieldDecoratorContext",2,l))??Ug}function gAs(){return ad||(ad=f3t("NaN",!1))}function AAs(){return oA||(oA=S$e("Record",2,!0)||en),oA===en?void 0:oA}function eye(l,C){return l!==Ug?uL(l,C):Lc}function aXr(l){return eye(Ogs(),[l])}function cXr(l){return eye(h3t(!0),[l])}function V_(l,C){return eye(C?Bs:Fn,[l])}function y3t(l){switch(l.kind){case 190:return 2;case 191:return lXr(l);case 202:return l.questionToken?2:l.dotDotDotToken?lXr(l):1;default:return 1}}function lXr(l){return ZZe(l.type)?4:8}function dAs(l){let C=IAs(l.parent);if(ZZe(l))return C?Bs:Fn;let D=Ot(l.elements,y3t);return b3t(D,C,Ot(l.elements,pAs))}function pAs(l){return At(l)||Uc(l)?l:void 0}function uXr(l,C){return!!Q7(l)||gXr(l)&&(l.kind===188?jV(l.elementType):l.kind===189?lr(l.elements,jV):C||lr(l.typeArguments,jV))}function gXr(l){let C=l.parent;switch(C.kind){case 196:case 202:case 183:case 192:case 193:case 199:case 194:case 198:case 188:case 189:return gXr(C);case 265:return!0}return!1}function jV(l){switch(l.kind){case 183:return v$e(l)||!!(fge(l,788968).flags&524288);case 186:return!0;case 198:return l.operator!==158&&jV(l.type);case 196:case 190:case 202:case 316:case 314:case 315:case 309:return jV(l.type);case 191:return l.type.kind!==188||jV(l.type.elementType);case 192:case 193:return lr(l.types,jV);case 199:return jV(l.objectType)||jV(l.indexType);case 194:return jV(l.checkType)||jV(l.extendsType)||jV(l.trueType)||jV(l.falseType)}return!1}function fAs(l){let C=Jo(l);if(!C.resolvedType){let E=dAs(l);if(E===Ug)C.resolvedType=Lc;else if(!(l.kind===189&&lr(l.elements,D=>!!(y3t(D)&8)))&&uXr(l))C.resolvedType=l.kind===189&&l.elements.length===0?E:u3t(E,l,void 0);else{let D=l.kind===188?[Vc(l.elementType)]:Ot(l.elements,Vc);C.resolvedType=E3t(E,D)}}return C.resolvedType}function IAs(l){return as(l)&&l.operator===148}function ED(l,C,E=!1,D=[]){let W=b3t(C||Ot(l,M=>1),E,D);return W===Ug?Lc:l.length?E3t(W,l):W}function b3t(l,C,E){if(l.length===1&&l[0]&4)return C?Bs:Fn;let D=Ot(l,M=>M&1?"#":M&2?"?":M&4?".":"*").join()+(C?"R":"")+(lr(E,M=>!!M)?","+Ot(E,M=>M?od(M):"_").join(","):""),W=rc.get(D);return W||rc.set(D,W=CAs(l,C,E)),W}function CAs(l,C,E){let D=l.length,W=ft(l,Wt=>!!(Wt&9)),M,se=[],Ee=0;if(D){M=new Array(D);for(let Wt=0;Wt!!(l.elementFlags[mi]&8&&hn.flags&1179648));if(ln>=0)return kZe(Ot(C,(hn,mi)=>l.elementFlags[mi]&8?hn:Kr))?Qf(C[ln],hn=>B3t(l,cu(C,ln,hn))):cr}let se=[],Ee=[],Ve=[],Oe=-1,ot=-1,Wt=-1;for(let ln=0;ln=1e4)return fr(ue,VS(ue)?Z.Type_produces_a_tuple_type_that_is_too_large_to_represent:Z.Expression_produces_a_tuple_type_that_is_too_large_to_represent),cr;X(Ti,(ks,Vo)=>{var Hi;return Qr(ks,hn.target.elementFlags[Vo],(Hi=hn.target.labeledElementDeclarations)==null?void 0:Hi[Vo])})}else Qr(fL(hn)&&jP(hn,bt)||cr,4,(W=l.labeledElementDeclarations)==null?void 0:W[ln]);else Qr(hn,mi,(M=l.labeledElementDeclarations)==null?void 0:M[ln])}for(let ln=0;ln=0&&otEe[ot+hn]&8?$b(ln,bt):ln)),se.splice(ot+1,Wt-ot),Ee.splice(ot+1,Wt-ot),Ve.splice(ot+1,Wt-ot));let Rt=b3t(Ee,l.readonly,Ve);return Rt===Ug?Lc:Ee.length?uL(Rt,se):Rt;function Qr(ln,hn,mi){hn&1&&(Oe=Ee.length),hn&4&&ot<0&&(ot=Ee.length),hn&6&&(Wt=Ee.length),se.push(hn&2?_g(ln,!0):ln),Ee.push(hn),Ve.push(mi)}}function Ige(l,C,E=0){let D=l.target,W=gL(l)-E;return C>D.fixedLength?nps(l)||ED(v):ED(af(l).slice(C,W),D.elementFlags.slice(C,W),!1,D.labeledElementDeclarations&&D.labeledElementDeclarations.slice(C,W))}function AXr(l){return wa(Yr(ag(l.target.fixedLength,C=>fb(""+C)),UN(l.target.readonly?Bs:Fn)))}function mAs(l,C){let E=ke(l.elementFlags,D=>!(D&C));return E>=0?E:l.elementFlags.length}function tye(l,C){return l.elementFlags.length-x(l.elementFlags,E=>!(E&C))-1}function v3t(l){return l.fixedLength+tye(l,3)}function jM(l){let C=af(l),E=gL(l);return C.length===E?C:C.slice(0,E)}function hAs(l){return _g(Vc(l.type),!0)}function Fh(l){return l.id}function AL(l,C){return Vg(l,C,Fh,Jl)>=0}function xZe(l,C){let E=Vg(l,C,Fh,Jl);return E<0?(l.splice(~E,0,C),!0):!1}function _As(l,C,E){let D=E.flags;if(!(D&131072))if(C|=D&473694207,D&465829888&&(C|=33554432),D&2097152&&ia(E)&67108864&&(C|=536870912),E===Pr&&(C|=8388608),QA(E)&&(C|=1073741824),!nt&&D&98304)ia(E)&65536||(C|=4194304);else{let W=l.length,M=W&&E.id>l[W-1].id?~W:Vg(l,E,Fh,Jl);M<0&&l.splice(~M,0,E)}return C}function dXr(l,C,E){let D;for(let W of E)W!==D&&(C=W.flags&1048576?dXr(l,C|(SAs(W)?1048576:0),W.types):_As(l,C,W),D=W);return C}function yAs(l,C){var E;if(l.length<2)return l;let D=Uv(l),W=Rc.get(D);if(W)return W;let M=C&&lr(l,Oe=>!!(Oe.flags&524288)&&!qb(Oe)&&J3t(bT(Oe))),se=l.length,Ee=se,Ve=0;for(;Ee>0;){Ee--;let Oe=l[Ee];if(M||Oe.flags&469499904){if(Oe.flags&262144&&yD(Oe).flags&1048576){KN(Oe,wa(Ot(l,Rt=>Rt===Oe?Vi:Rt)),QB)&&Rm(l,Ee);continue}let ot=Oe.flags&61603840?be(Cd(Oe),Rt=>BT(co(Rt))):void 0,Wt=ot&&ry(co(ot));for(let Rt of l)if(Oe!==Rt){if(Ve===1e5&&Ve/(se-Ee)*se>1e6){(E=Qi)==null||E.instant(Qi.Phase.CheckTypes,"removeSubtypes_DepthLimit",{typeIds:l.map(ln=>ln.id)}),fr(ue,Z.Expression_produces_a_union_type_that_is_too_complex_to_represent);return}if(Ve++,ot&&Rt.flags&61603840){let Qr=LI(Rt,ot.escapedName);if(Qr&&BT(Qr)&&ry(Qr)!==Wt)continue}if(KN(Oe,Rt,QB)&&(!(ia(Sre(Oe))&1)||!(ia(Sre(Rt))&1)||eO(Oe,Rt))){Rm(l,Ee);break}}}}return Rc.set(D,l),l}function bAs(l,C,E){let D=l.length;for(;D>0;){D--;let W=l[D],M=W.flags;(M&402653312&&C&4||M&256&&C&8||M&2048&&C&64||M&8192&&C&4096||E&&M&32768&&C&16384||qM(W)&&AL(l,W.regularType))&&Rm(l,D)}}function EAs(l){let C=Gt(l,$4);if(C.length){let E=l.length;for(;E>0;){E--;let D=l[E];D.flags&128&&lr(C,W=>BAs(D,W))&&Rm(l,E)}}}function BAs(l,C){return C.flags&134217728?set(l,C):iet(l,C)}function vAs(l){let C=[];for(let E of l)if(E.flags&2097152&&ia(E)&67108864){let D=E.types[0].flags&8650752?0:1;da(C,E.types[D])}for(let E of C){let D=[];for(let M of l)if(M.flags&2097152&&ia(M)&67108864){let se=M.types[0].flags&8650752?0:1;M.types[se]===E&&xZe(D,M.types[1-se])}let W=c_(E);if(rE(W,M=>AL(D,M))){let M=l.length;for(;M>0;){M--;let se=l[M];if(se.flags&2097152&&ia(se)&67108864){let Ee=se.types[0].flags&8650752?0:1;se.types[Ee]===E&&AL(D,se.types[1-Ee])&&Rm(l,M)}}xZe(l,E)}}}function SAs(l){return!!(l.flags&1048576&&(l.aliasSymbol||l.origin))}function pXr(l,C){for(let E of C)if(E.flags&1048576){let D=E.origin;E.aliasSymbol||D&&!(D.flags&1048576)?da(l,E):D&&D.flags&1048576&&pXr(l,D.types)}}function S3t(l,C){let E=Y4(l);return E.types=C,E}function wa(l,C=1,E,D,W){if(l.length===0)return Vi;if(l.length===1)return l[0];if(l.length===2&&!W&&(l[0].flags&1048576||l[1].flags&1048576)){let M=C===0?"N":C===2?"S":"L",se=l[0].id=2&&M[0]===wn&&M[1]===ar&&Rm(M,1),(se&402664352||se&16384&&se&32768)&&bAs(M,se,!!(C&2)),se&128&&se&402653184&&EAs(M),se&536870912&&vAs(M),C===2&&(M=yAs(M,!!(se&524288)),!M))return cr;if(M.length===0)return se&65536?se&4194304?ur:Re:se&32768?se&4194304?wn:Pe:Vi}if(!W&&se&1048576){let Ve=[];pXr(Ve,l);let Oe=[];for(let Wt of M)lr(Ve,Rt=>AL(Rt.types,Wt))||Oe.push(Wt);if(!E&&Ve.length===1&&Oe.length===0)return Ve[0];if(Nd(Ve,(Wt,Rt)=>Wt+Rt.types.length,0)+Oe.length===M.length){for(let Wt of Ve)xZe(Oe,Wt);W=S3t(1048576,Oe)}}let Ee=(se&36323331?0:32768)|(se&2097152?16777216:0);return T3t(M,Ee,E,D,W)}function wAs(l,C){let E,D=[];for(let M of l){let se=JB(M);if(se){if(se.kind!==0&&se.kind!==1||E&&!w3t(E,se))return;E=se,D.push(se.type)}else{let Ee=C!==2097152?wd(M):void 0;if(Ee!==dn&&Ee!==On)return}}if(!E)return;let W=VYr(D,C);return z0e(E.kind,E.parameterName,E.parameterIndex,W)}function w3t(l,C){return l.kind===C.kind&&l.parameterIndex===C.parameterIndex}function T3t(l,C,E,D,W){if(l.length===0)return Vi;if(l.length===1)return l[0];let se=(W?W.flags&1048576?`|${Uv(W.types)}`:W.flags&2097152?`&${Uv(W.types)}`:`#${W.type.id}|${Uv(l)}`:Uv(l))+V7(E,D),Ee=Wl.get(se);return Ee||(Ee=YN(1048576),Ee.objectFlags=C|TZe(l,98304),Ee.types=l,Ee.origin=W,Ee.aliasSymbol=E,Ee.aliasTypeArguments=D,l.length===2&&l[0].flags&512&&l[1].flags&512&&(Ee.flags|=16,Ee.intrinsicName="boolean"),Wl.set(se,Ee)),Ee}function TAs(l){let C=Jo(l);if(!C.resolvedType){let E=Q7(l);C.resolvedType=wa(Ot(l.types,Vc),1,E,Zre(E))}return C.resolvedType}function NAs(l,C,E){let D=E.flags;return D&2097152?IXr(l,C,E.types):(BD(E)?C&16777216||(C|=16777216,l.set(E.id.toString(),E)):(D&3?(E===Pr&&(C|=8388608),QA(E)&&(C|=1073741824)):(nt||!(D&98304))&&(E===ar&&(C|=262144,E=wn),l.has(E.id.toString())||(E.flags&109472&&C&109472&&(C|=67108864),l.set(E.id.toString(),E))),C|=D&473694207),C)}function IXr(l,C,E){for(let D of E)C=NAs(l,C,ry(D));return C}function RAs(l,C){let E=l.length;for(;E>0;){E--;let D=l[E];(D.flags&4&&C&402653312||D.flags&8&&C&256||D.flags&64&&C&2048||D.flags&4096&&C&8192||D.flags&16384&&C&32768||BD(D)&&C&470302716)&&Rm(l,E)}}function DAs(l,C){for(let E of l)if(!AL(E.types,C)){let D=C.flags&128?Jt:C.flags&288?bt:C.flags&2048?Vt:C.flags&8192?Es:void 0;if(!D||!AL(E.types,D))return!1}return!0}function xAs(l){let C=l.length,E=Gt(l,D=>!!(D.flags&128));for(;C>0;){C--;let D=l[C];if(D.flags&402653184){for(let W of E)if($V(W,D)){Rm(l,C);break}else if($4(D))return!0}}return!1}function CXr(l,C){for(let E=0;E!(D.flags&C))}function kAs(l){let C,E=ke(l,se=>!!(ia(se)&32768));if(E<0)return!1;let D=E+1;for(;D!!(ln.flags&469893116)||BD(ln))){if(WZe(Qr,Rt))return Wt;if(!(Qr.flags&1048576&&jv(Qr,ln=>WZe(ln,Rt)))&&!WZe(Rt,Qr))return Vi;Ee=67108864}}}let Ve=Uv(se)+(C&2?"*":V7(E,D)),Oe=mc.get(Ve);if(!Oe){if(M&1048576)if(kAs(se))Oe=Og(se,C,E,D);else if(he(se,ot=>!!(ot.flags&1048576&&ot.types[0].flags&32768))){let ot=lr(se,Aye)?ar:wn;CXr(se,32768),Oe=wa([Og(se,C),ot],1,E,D)}else if(he(se,ot=>!!(ot.flags&1048576&&(ot.types[0].flags&65536||ot.types[1].flags&65536))))CXr(se,65536),Oe=wa([Og(se,C),ur],1,E,D);else if(se.length>=4){let ot=Math.floor(se.length/2);Oe=Og([Og(se.slice(0,ot),C),Og(se.slice(ot),C)],C,E,D)}else{if(!kZe(se))return cr;let ot=FAs(se,C),Wt=lr(ot,Rt=>!!(Rt.flags&2097152))&&N3t(ot)>N3t(se)?S3t(2097152,se):void 0;Oe=wa(ot,1,E,D,Wt)}else Oe=GAs(se,Ee,E,D);mc.set(Ve,Oe)}return Oe}function mXr(l){return Nd(l,(C,E)=>E.flags&1048576?C*E.types.length:E.flags&131072?0:C,1)}function kZe(l){var C;let E=mXr(l);return E>=1e5?((C=Qi)==null||C.instant(Qi.Phase.CheckTypes,"checkCrossProductUnion_DepthLimit",{typeIds:l.map(D=>D.id),size:E}),fr(ue,Z.Expression_produces_a_union_type_that_is_too_complex_to_represent),!1):!0}function FAs(l,C){let E=mXr(l),D=[];for(let W=0;W=0;Ve--)if(l[Ve].flags&1048576){let Oe=l[Ve].types,ot=Oe.length;M[Ve]=Oe[se%ot],se=Math.floor(se/ot)}let Ee=Og(M,C);Ee.flags&131072||D.push(Ee)}return D}function hXr(l){return!(l.flags&3145728)||l.aliasSymbol?1:l.flags&1048576&&l.origin?hXr(l.origin):N3t(l.types)}function N3t(l){return Nd(l,(C,E)=>C+hXr(E),0)}function ZAs(l){let C=Jo(l);if(!C.resolvedType){let E=Q7(l),D=Ot(l.types,Vc),W=D.length===2?D.indexOf(I0):-1,M=W>=0?D[1-W]:Kr,se=!!(M.flags&76||M.flags&134217728&&$4(M));C.resolvedType=Og(D,se?1:0,E,Zre(E))}return C.resolvedType}function _Xr(l,C){let E=YN(4194304);return E.type=l,E.indexFlags=C,E}function LAs(l){let C=Y4(4194304);return C.type=l,C}function yXr(l,C){return C&1?l.resolvedStringIndexType||(l.resolvedStringIndexType=_Xr(l,1)):l.resolvedIndexType||(l.resolvedIndexType=_Xr(l,0))}function bXr(l,C){let E=yT(l),D=tB(l),W=lL(l.target||l);if(!W&&!(C&2))return D;let M=[];if(tJ(D)){if(Rre(l))return yXr(l,C);cJ(D,Ee)}else if(Rre(l)){let Ve=ey(XM(l));YWt(Ve,8576,!!(C&1),Ee)}else cJ(bZe(D),Ee);let se=C&2?WC(wa(M),Ve=>!(Ve.flags&5)):wa(M);if(se.flags&1048576&&D.flags&1048576&&Uv(se.types)===Uv(D.types))return D;return se;function Ee(Ve){let Oe=W?cl(W,iye(l.mapper,E,Ve)):Ve;M.push(Oe===Jt?Ra:Oe)}}function VAs(l){let C=yT(l);return E(lL(l)||C);function E(D){return D.flags&470810623?!0:D.flags&16777216?D.root.isDistributive&&D.checkType===C:D.flags&137363456?he(D.types,E):D.flags&8388608?E(D.objectType)&&E(D.indexType):D.flags&33554432?E(D.baseType)&&E(D.constraint):D.flags&268435456?E(D.type):!1}}function dL(l){if(Gc(l))return Vi;if(pu(l))return ry(Dl(l));if(kg(l))return ry(jN(l));let C=iV(l);return C!==void 0?fb(wc(C)):tn(l)?ry(Dl(l)):Vi}function W7(l,C,E){if(E||!(V1(l)&6)){let D=al(f$e(l)).nameType;if(!D){let W=Sl(l.valueDeclaration);D=l.escapedName==="default"?fb("default"):W&&dL(W)||(bee(l)?void 0:fb(pf(l)))}if(D&&D.flags&C)return D}return Vi}function EXr(l,C){return!!(l.flags&C||l.flags&2097152&&lr(l.types,E=>EXr(E,C)))}function WAs(l,C,E){let D=E&&(ia(l)&7||l.aliasSymbol)?LAs(l):void 0,W=Ot(Cd(l),se=>W7(se,C)),M=Ot(ty(l),se=>se!==Ri&&EXr(se.keyType,C)?se.keyType===Jt&&C&8?Ra:se.keyType:Vi);return wa(vi(W,M),1,void 0,void 0,D)}function R3t(l,C=0){return!!(l.flags&58982400||tW(l)||qb(l)&&(!VAs(l)||C$e(l)===2)||l.flags&1048576&&!(C&4)&&zWt(l)||l.flags&2097152&&KI(l,465829888)&&lr(l.types,BD))}function UN(l,C=0){return l=ET(l),Gre(l)?g3t(UN(l.baseType,C)):R3t(l,C)?yXr(l,C):l.flags&1048576?Og(Ot(l.types,E=>UN(E,C))):l.flags&2097152?wa(Ot(l.types,E=>UN(E,C))):ia(l)&32?bXr(l,C):l===Pr?Pr:l.flags&2?Vi:l.flags&131073?ki:WAs(l,(C&2?128:402653316)|(C&1?0:12584),C===0)}function BXr(l){let C=eAs();return C?kre(C,[l,Jt]):Jt}function PAs(l){let C=BXr(UN(l));return C.flags&131072?Jt:C}function OAs(l){let C=Jo(l);if(!C.resolvedType)switch(l.operator){case 143:C.resolvedType=UN(Vc(l.type));break;case 158:C.resolvedType=l.type.kind===155?W3t(Iee(l.parent)):cr;break;case 148:C.resolvedType=Vc(l.type);break;default:w.assertNever(l.operator)}return C.resolvedType}function QAs(l){let C=Jo(l);return C.resolvedType||(C.resolvedType=q4([l.head.text,...Ot(l.templateSpans,E=>E.literal.text)],Ot(l.templateSpans,E=>Vc(E.type)))),C.resolvedType}function q4(l,C){let E=ke(C,Oe=>!!(Oe.flags&1179648));if(E>=0)return kZe(C)?Qf(C[E],Oe=>q4(l,cu(C,E,Oe))):cr;if(Ue(C,Pr))return Pr;let D=[],W=[],M=l[0];if(!Ve(l,C))return Jt;if(D.length===0)return fb(M);if(W.push(M),he(W,Oe=>Oe==="")){if(he(D,Oe=>!!(Oe.flags&4)))return Jt;if(D.length===1&&$4(D[0]))return D[0]}let se=`${Uv(D)}|${Ot(W,Oe=>Oe.length).join(",")}|${W.join("")}`,Ee=Hs.get(se);return Ee||Hs.set(se,Ee=HAs(W,D)),Ee;function Ve(Oe,ot){for(let Wt=0;WtP7(l,E)):C.flags&128?fb(vXr(l,C.value)):C.flags&134217728?q4(...YAs(l,C.texts,C.types)):C.flags&268435456&&l===C.symbol?C:C.flags&268435461||tJ(C)?SXr(l,C):GZe(C)?SXr(l,q4(["",""],[C])):C}function vXr(l,C){switch(U8e.get(l.escapedName)){case 0:return C.toUpperCase();case 1:return C.toLowerCase();case 2:return C.charAt(0).toUpperCase()+C.slice(1);case 3:return C.charAt(0).toLowerCase()+C.slice(1)}return C}function YAs(l,C,E){switch(U8e.get(l.escapedName)){case 0:return[C.map(D=>D.toUpperCase()),E.map(D=>P7(l,D))];case 1:return[C.map(D=>D.toLowerCase()),E.map(D=>P7(l,D))];case 2:return[C[0]===""?C:[C[0].charAt(0).toUpperCase()+C[0].slice(1),...C.slice(1)],C[0]===""?[P7(l,E[0]),...E.slice(1)]:E];case 3:return[C[0]===""?C:[C[0].charAt(0).toLowerCase()+C[0].slice(1),...C.slice(1)],C[0]===""?[P7(l,E[0]),...E.slice(1)]:E]}return[C,E]}function SXr(l,C){let E=`${Gg(l)},${Fh(C)}`,D=za.get(E);return D||za.set(E,D=XAs(l,C)),D}function XAs(l,C){let E=tF(268435456,l);return E.type=C,E}function JAs(l,C,E,D,W){let M=YN(8388608);return M.objectType=l,M.indexType=C,M.accessFlags=E,M.aliasSymbol=D,M.aliasTypeArguments=W,M}function rye(l){if(dt)return!1;if(ia(l)&4096)return!0;if(l.flags&1048576)return he(l.types,rye);if(l.flags&2097152)return lr(l.types,rye);if(l.flags&465829888){let C=UWt(l);return C!==l&&rye(C)}return!1}function T$e(l,C){return k2(l)?G2(l):C&&RI(C)?iV(C):void 0}function D3t(l,C){if(C.flags&8208){let E=Si(l.parent,D=>!mp(D))||l.parent;return CG(E)?SB(E)&&sr(l)&&Z4r(E,l):he(C.declarations,D=>!eu(D)||WN(D))}return!0}function wXr(l,C,E,D,W,M){let se=W&&W.kind===212?W:void 0,Ee=W&&Gc(W)?void 0:T$e(E,W);if(Ee!==void 0){if(M&256)return sO(C,Ee)||Mt;let Oe=yg(C,Ee);if(Oe){if(M&64&&W&&Oe.declarations&&MB(Oe)&&D3t(W,Oe)){let Wt=se?.argumentExpression??(hs(W)?W.indexType:W);JG(Wt,Oe.declarations,Ee)}if(se){if(fLe(Oe,se,eUr(se.expression,C.symbol)),OUr(se,Oe,Fx(se))){fr(se.argumentExpression,Z.Cannot_assign_to_0_because_it_is_a_read_only_property,$c(Oe));return}if(M&8&&(Jo(W).resolvedSymbol=Oe),XJr(se,Oe))return _r}let ot=M&4?JP(Oe):co(Oe);return se&&Fx(se)!==1?fF(se,ot):W&&hs(W)&&Aye(ot)?wa([ot,wn]):ot}if(rE(C,cA)&&bN(Ee)){let ot=+Ee;if(W&&rE(C,Wt=>!Wt.target.hasRestElement)&&!(M&16)){let Wt=x3t(W);if(cA(C)){if(ot<0)return fr(Wt,Z.A_tuple_type_cannot_be_indexed_with_a_negative_value),wn;fr(Wt,Z.Tuple_type_0_of_length_1_has_no_element_at_index_2,Ys(C),gL(C),wc(Ee))}else fr(Wt,Z.Property_0_does_not_exist_on_type_1,wc(Ee),Ys(C))}if(ot>=0)return Ve(sk(C,bt)),I4r(C,ot,M&1?ar:void 0)}}if(!(E.flags&98304)&&l_(E,402665900)){if(C.flags&131073)return C;let Oe=j0e(C,E)||sk(C,Jt);if(Oe){if(M&2&&Oe.keyType!==bt){se&&(M&4?fr(se,Z.Type_0_is_generic_and_can_only_be_indexed_for_reading,Ys(l)):fr(se,Z.Type_0_cannot_be_used_to_index_type_1,Ys(E),Ys(l)));return}if(W&&Oe.keyType===Jt&&!l_(E,12)){let ot=x3t(W);return fr(ot,Z.Type_0_cannot_be_used_as_an_index_type,Ys(E)),M&1?wa([Oe.type,ar]):Oe.type}return Ve(Oe),M&1&&!(C.symbol&&C.symbol.flags&384&&E.symbol&&E.flags&1024&&a_(E.symbol)===C.symbol)?wa([Oe.type,ar]):Oe.type}if(E.flags&131072)return Vi;if(rye(C))return Mt;if(se&&!Wet(C)){if(iO(C)){if(dt&&E.flags&384)return KA.add(Js(se,Z.Property_0_does_not_exist_on_type_1,E.value,Ys(C))),wn;if(E.flags&12){let ot=Ot(C.properties,Wt=>co(Wt));return wa(Yr(ot,wn))}}if(C.symbol===Dr&&Ee!==void 0&&Dr.exports.has(Ee)&&Dr.exports.get(Ee).flags&418)fr(se,Z.Property_0_does_not_exist_on_type_1,wc(Ee),Ys(C));else if(dt&&!(M&128))if(Ee!==void 0&&KJr(Ee,C)){let ot=Ys(C);fr(se,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead,Ee,ot,ot+"["+Nf(se.argumentExpression)+"]")}else if(jP(C,bt))fr(se.argumentExpression,Z.Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number);else{let ot;if(Ee!==void 0&&(ot=qJr(Ee,C)))ot!==void 0&&fr(se.argumentExpression,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2,Ee,Ys(C),ot);else{let Wt=KIs(C,se,E);if(Wt!==void 0)fr(se,Z.Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1,Ys(C),Wt);else{let Rt;if(E.flags&1024)Rt=ou(void 0,Z.Property_0_does_not_exist_on_type_1,"["+Ys(E)+"]",Ys(C));else if(E.flags&8192){let Qr=HN(E.symbol,se);Rt=ou(void 0,Z.Property_0_does_not_exist_on_type_1,"["+Qr+"]",Ys(C))}else E.flags&128||E.flags&256?Rt=ou(void 0,Z.Property_0_does_not_exist_on_type_1,E.value,Ys(C)):E.flags&12&&(Rt=ou(void 0,Z.No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1,Ys(E),Ys(C)));Rt=ou(Rt,Z.Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1,Ys(D),Ys(C)),KA.add(ZS(ls(se),se,Rt))}}}return}}if(rye(C))return Mt;if(W){let Oe=x3t(W);E.flags&384?fr(Oe,Z.Property_0_does_not_exist_on_type_1,""+E.value,Ys(C)):E.flags&12?fr(Oe,Z.Type_0_has_no_matching_index_signature_for_type_1,Ys(C),Ys(E)):fr(Oe,Z.Type_0_cannot_be_used_as_an_index_type,Ys(E))}if(Sd(E))return E;return;function Ve(Oe){Oe&&Oe.isReadonly&&se&&(Zx(se)||mme(se))&&fr(se,Z.Index_signature_in_type_0_only_permits_reading,Ys(C))}}function x3t(l){return l.kind===212?l.argumentExpression:l.kind===199?l.indexType:l.kind===167?l.expression:l}function GZe(l){if(l.flags&2097152){let C=!1;for(let E of l.types)if(E.flags&101248||GZe(E))C=!0;else if(!(E.flags&524288))return!1;return C}return!!(l.flags&77)||$4(l)}function $4(l){return!!(l.flags&134217728)&&he(l.types,GZe)||!!(l.flags&268435456)&&GZe(l.type)}function TXr(l){return!!(l.flags&402653184)&&!$4(l)}function O7(l){return!!nye(l)}function eJ(l){return!!(nye(l)&4194304)}function tJ(l){return!!(nye(l)&8388608)}function nye(l){return l.flags&3145728?(l.objectFlags&2097152||(l.objectFlags|=2097152|Nd(l.types,(C,E)=>C|nye(E),0)),l.objectFlags&12582912):l.flags&33554432?(l.objectFlags&2097152||(l.objectFlags|=2097152|nye(l.baseType)|nye(l.constraint)),l.objectFlags&12582912):(l.flags&58982400||qb(l)||tW(l)?4194304:0)|(l.flags&63176704||TXr(l)?8388608:0)}function cF(l,C){return l.flags&8388608?KAs(l,C):l.flags&16777216?jAs(l,C):l}function NXr(l,C,E){if(l.flags&1048576||l.flags&2097152&&!R3t(l)){let D=Ot(l.types,W=>cF($b(W,C),E));return l.flags&2097152||E?Og(D):wa(D)}}function UAs(l,C,E){if(C.flags&1048576){let D=Ot(C.types,W=>cF($b(l,W),E));return E?Og(D):wa(D)}}function KAs(l,C){let E=C?"simplifiedForWriting":"simplifiedForReading";if(l[E])return l[E]===qA?l:l[E];l[E]=qA;let D=cF(l.objectType,C),W=cF(l.indexType,C),M=UAs(D,W,C);if(M)return l[E]=M;if(!(W.flags&465829888)){let se=NXr(D,W,C);if(se)return l[E]=se}if(tW(D)&&W.flags&296){let se=hge(D,W.flags&8?0:D.target.fixedLength,0,C);if(se)return l[E]=se}return qb(D)&&C$e(D)!==2?l[E]=Qf(N$e(D,l.indexType),se=>cF(se,C)):l[E]=l}function jAs(l,C){let E=l.checkType,D=l.extendsType,W=qP(l),M=$P(l);if(M.flags&131072&&qV(W)===qV(E)){if(E.flags&1||bg(nJ(E),nJ(D)))return cF(W,C);if(RXr(E,D))return Vi}else if(W.flags&131072&&qV(M)===qV(E)){if(!(E.flags&1)&&bg(nJ(E),nJ(D)))return Vi;if(E.flags&1||RXr(E,D))return cF(M,C)}return l}function RXr(l,C){return!!(wa([yZe(l,C),Vi]).flags&131072)}function N$e(l,C){let E=eE([yT(l)],[C]),D=eH(l.mapper,E),W=cl(aF(l.target||l),D),M=BYr(l)>0||(O7(l)?gge(XM(l))>0:zAs(l,C));return _g(W,!0,M)}function zAs(l,C){let E=c_(C);return!!E&&lr(Cd(l),D=>!!(D.flags&16777216)&&bg(W7(D,8576),E))}function $b(l,C,E=0,D,W,M){return zV(l,C,E,D,W,M)||(D?cr:Kr)}function DXr(l,C){return rE(l,E=>{if(E.flags&384){let D=G2(E);if(bN(D)){let W=+D;return W>=0&&W0&&!lr(l.elements,C=>Ut(C)||cn(C)||At(C)&&!!(C.questionToken||C.dotDotDotToken))}function GXr(l,C){return O7(l)||C&&cA(l)&&lr(jM(l),O7)}function G3t(l,C,E,D,W){let M,se,Ee=0;for(;;){if(Ee===1e3)return fr(ue,Z.Type_instantiation_is_excessively_deep_and_possibly_infinite),cr;let Oe=cl(qV(l.checkType),C),ot=cl(l.extendsType,C);if(Oe===cr||ot===cr)return cr;if(Oe===Pr||ot===Pr)return Pr;let Wt=z8(l.node.checkType),Rt=z8(l.node.extendsType),Qr=kXr(Wt)&&kXr(Rt)&&O(Wt.elements)===O(Rt.elements),ln=GXr(Oe,Qr),hn;if(l.inferTypeParameters){let Ti=pye(l.inferTypeParameters,void 0,0);C&&(Ti.nonFixingMapper=eH(Ti.nonFixingMapper,C)),ln||pF(Ti.inferences,Oe,ot,1536),hn=C?eH(Ti.mapper,C):Ti.mapper}let mi=hn?cl(l.extendsType,hn):ot;if(!ln&&!GXr(mi,Qr)){if(!(mi.flags&3)&&(Oe.flags&1||!bg(oye(Oe),oye(mi)))){(Oe.flags&1||E&&!(mi.flags&131072)&&jv(oye(mi),ks=>bg(ks,oye(Oe))))&&(se||(se=[])).push(cl(Vc(l.node.trueType),hn||C));let Ti=Vc(l.node.falseType);if(Ti.flags&16777216){let ks=Ti.root;if(ks.node.parent===l.node&&(!ks.isDistributive||ks.checkType===l.checkType)){l=ks;continue}if(Ve(Ti,C))continue}M=cl(Ti,C);break}if(mi.flags&3||bg(nJ(Oe),nJ(mi))){let Ti=Vc(l.node.trueType),ks=hn||C;if(Ve(Ti,ks))continue;M=cl(Ti,ks);break}}M=YN(16777216),M.root=l,M.checkType=cl(l.checkType,C),M.extendsType=cl(l.extendsType,C),M.mapper=C,M.combinedMapper=hn,M.aliasSymbol=D||l.aliasSymbol,M.aliasTypeArguments=D?W:ok(l.aliasTypeArguments,C);break}return se?wa(Yr(se,M)):M;function Ve(Oe,ot){if(Oe.flags&16777216&&ot){let Wt=Oe.root;if(Wt.outerTypeParameters){let Rt=eH(Oe.mapper,ot),Qr=Ot(Wt.outerTypeParameters,mi=>pL(mi,Rt)),ln=eE(Wt.outerTypeParameters,Qr),hn=Wt.isDistributive?pL(Wt.checkType,ln):void 0;if(!hn||hn===Wt.checkType||!(hn.flags&1179648))return l=Wt,C=ln,D=void 0,W=void 0,Wt.aliasSymbol&&Ee++,!0}}return!1}}function qP(l){return l.resolvedTrueType||(l.resolvedTrueType=cl(Vc(l.root.node.trueType),l.mapper))}function $P(l){return l.resolvedFalseType||(l.resolvedFalseType=cl(Vc(l.root.node.falseType),l.mapper))}function qAs(l){return l.resolvedInferredTrueType||(l.resolvedInferredTrueType=l.combinedMapper?cl(Vc(l.root.node.trueType),l.combinedMapper):qP(l))}function F3t(l){let C;return l.locals&&l.locals.forEach(E=>{E.flags&262144&&(C=Yr(C,kp(E)))}),C}function $As(l){return l.isDistributive&&(VZe(l.checkType,l.node.trueType)||VZe(l.checkType,l.node.falseType))}function eds(l){let C=Jo(l);if(!C.resolvedType){let E=Vc(l.checkType),D=Q7(l),W=Zre(D),M=Tre(l,!0),se=W?M:Gt(M,Ve=>VZe(Ve,l)),Ee={node:l,checkType:E,extendsType:Vc(l.extendsType),isDistributive:!!(E.flags&262144),inferTypeParameters:F3t(l),outerTypeParameters:se,instantiations:void 0,aliasSymbol:D,aliasTypeArguments:W};C.resolvedType=G3t(Ee,void 0,!1),se&&(Ee.instantiations=new Map,Ee.instantiations.set(Uv(se),C.resolvedType))}return C.resolvedType}function tds(l){let C=Jo(l);return C.resolvedType||(C.resolvedType=YM(Oo(l.typeParameter))),C.resolvedType}function FXr(l){return sr(l)?[l]:Yr(FXr(l.left),l.right)}function ZXr(l){var C;let E=Jo(l);if(!E.resolvedType){if(!n_(l))return fr(l.argument,Z.String_literal_expected),E.resolvedSymbol=en,E.resolvedType=cr;let D=l.isTypeOf?111551:l.flags&16777216?900095:788968,W=q0(l,l.argument.literal);if(!W)return E.resolvedSymbol=en,E.resolvedType=cr;let M=!!((C=W.exports)!=null&&C.get("export=")),se=pb(W,!1);if(Tf(l.qualifier))if(se.flags&D)E.resolvedType=LXr(l,E,se,D);else{let Ee=D===111551?Z.Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:Z.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0;fr(l,Ee,l.argument.literal.text),E.resolvedSymbol=en,E.resolvedType=cr}else{let Ee=FXr(l.qualifier),Ve=se,Oe;for(;Oe=Ee.shift();){let ot=Ee.length?1920:D,Wt=FA(UI(Ve)),Rt=l.isTypeOf||io(l)&&M?yg(co(Wt),Oe.escapedText,!1,!0):void 0,ln=(l.isTypeOf?void 0:L_(Y1(Wt),Oe.escapedText,ot))??Rt;if(!ln)return fr(Oe,Z.Namespace_0_has_no_exported_member_1,HN(Ve),kd(Oe)),E.resolvedType=cr;Jo(Oe).resolvedSymbol=ln,Jo(Oe.parent).resolvedSymbol=ln,Ve=ln}E.resolvedType=LXr(l,E,Ve,D)}}return E.resolvedType}function LXr(l,C,E,D){let W=UI(E);return C.resolvedSymbol=W,D===111551?wUr(co(E),l):B$e(l,W)}function VXr(l){let C=Jo(l);if(!C.resolvedType){let E=Q7(l);if(JV(l.symbol).size===0&&!E)C.resolvedType=I0;else{let D=J1(16,l.symbol);D.aliasSymbol=E,D.aliasTypeArguments=Zre(E),f4(l)&&l.isArrayType&&(D=V_(D)),C.resolvedType=D}}return C.resolvedType}function Q7(l){let C=l.parent;for(;to(C)||sP(C)||as(C)&&C.operator===148;)C=C.parent;return Aee(C)?Oo(C):void 0}function Zre(l){return l?cL(l):void 0}function R$e(l){return!!(l.flags&524288)&&!qb(l)}function Z3t(l){return uF(l)||!!(l.flags&474058748)}function L3t(l,C){if(!(l.flags&1048576))return l;if(he(l.types,Z3t))return be(l.types,uF)||Lc;let E=be(l.types,M=>!Z3t(M));if(!E||be(l.types,M=>M!==E&&!Z3t(M)))return l;return W(E);function W(M){let se=xu();for(let Ve of Cd(M))if(!(V1(Ve)&6)){if(D$e(Ve)){let Oe=Ve.flags&65536&&!(Ve.flags&32768),Wt=wA(16777220,Ve.escapedName,HWt(Ve)|(C?8:0));Wt.links.type=Oe?wn:_g(co(Ve),!0),Wt.declarations=Ve.declarations,Wt.links.nameType=al(Ve).nameType,Wt.links.syntheticOrigin=Ve,se.set(Ve.escapedName,Wt)}}let Ee=qn(M.symbol,se,v,v,ty(M));return Ee.objectFlags|=131200,Ee}}function zM(l,C,E,D,W){if(l.flags&1||C.flags&1)return Mt;if(l.flags&2||C.flags&2)return Kr;if(l.flags&131072)return C;if(C.flags&131072)return l;if(l=L3t(l,W),l.flags&1048576)return kZe([l,C])?Qf(l,Oe=>zM(Oe,C,E,D,W)):cr;if(C=L3t(C,W),C.flags&1048576)return kZe([l,C])?Qf(C,Oe=>zM(l,Oe,E,D,W)):cr;if(C.flags&473960444)return l;if(eJ(l)||eJ(C)){if(uF(l))return C;if(l.flags&2097152){let Oe=l.types,ot=Oe[Oe.length-1];if(R$e(ot)&&R$e(C))return Og(vi(Oe.slice(0,Oe.length-1),[zM(ot,C,E,D,W)]))}return Og([l,C])}let M=xu(),se=new Set,Ee=l===Lc?ty(C):hYr([l,C]);for(let Oe of Cd(C))V1(Oe)&6?se.add(Oe.escapedName):D$e(Oe)&&M.set(Oe.escapedName,V3t(Oe,W));for(let Oe of Cd(l))if(!(se.has(Oe.escapedName)||!D$e(Oe)))if(M.has(Oe.escapedName)){let ot=M.get(Oe.escapedName),Wt=co(ot);if(ot.flags&16777216){let Rt=vi(Oe.declarations,ot.declarations),Qr=4|Oe.flags&16777216,ln=wA(Qr,Oe.escapedName),hn=co(Oe),mi=q$e(hn),Ti=q$e(Wt);ln.links.type=mi===Ti?hn:wa([hn,Ti],2),ln.links.leftSpread=Oe,ln.links.rightSpread=ot,ln.declarations=Rt,ln.links.nameType=al(Oe).nameType,M.set(Oe.escapedName,ln)}}else M.set(Oe.escapedName,V3t(Oe,W));let Ve=qn(E,M,v,v,Ar(Ee,Oe=>rds(Oe,W)));return Ve.objectFlags|=2228352|D,Ve}function D$e(l){var C;return!lr(l.declarations,Dh)&&(!(l.flags&106496)||!((C=l.declarations)!=null&&C.some(E=>va(E.parent))))}function V3t(l,C){let E=l.flags&65536&&!(l.flags&32768);if(!E&&C===wT(l))return l;let D=4|l.flags&16777216,W=wA(D,l.escapedName,HWt(l)|(C?8:0));return W.links.type=E?wn:co(l),W.declarations=l.declarations,W.links.nameType=al(l).nameType,W.links.syntheticOrigin=l,W}function rds(l,C){return l.isReadonly!==C?bD(l.keyType,l.type,C,l.declaration):l}function FZe(l,C,E,D){let W=tF(l,E);return W.value=C,W.regularType=D||W,W}function M7(l){if(l.flags&2976){if(!l.freshType){let C=FZe(l.flags,l.value,l.symbol,l);C.freshType=C,l.freshType=C}return l.freshType}return l}function ry(l){return l.flags&2976?l.regularType:l.flags&1048576?l.regularType||(l.regularType=Qf(l,ry)):l}function qM(l){return!!(l.flags&2976)&&l.freshType===l}function fb(l){let C;return _s.get(l)||(_s.set(l,C=FZe(128,l)),C)}function pw(l){let C;return Pu.get(l)||(Pu.set(l,C=FZe(256,l)),C)}function x$e(l){let C,E=AV(l);return ir.get(E)||(ir.set(E,C=FZe(2048,l)),C)}function nds(l,C,E){let D,W=`${C}${typeof l=="string"?"@":"#"}${l}`,M=1024|(typeof l=="string"?128:256);return ni.get(W)||(ni.set(W,D=FZe(M,l,E)),D)}function ids(l){if(l.literal.kind===106)return ur;let C=Jo(l);return C.resolvedType||(C.resolvedType=ry(Dl(l.literal))),C.resolvedType}function sds(l){let C=tF(8192,l);return C.escapedName=`__@${C.symbol.escapedName}@${Gg(C.symbol)}`,C}function W3t(l){if(io(l)&&sP(l)){let C=tV(l);C&&(l=J3(C)||C)}if(kRe(l)){let C=U$(l)?q2(l.left):q2(l);if(C){let E=al(C);return E.uniqueESSymbolType||(E.uniqueESSymbolType=sds(C))}}return Es}function ods(l){let C=n0(l,!1,!1),E=C&&C.parent;if(E&&(va(E)||E.kind===264)&&!eg(C)&&(!Df(C)||rV(l,C.body)))return yC(Oo(E)).thisType;if(E&&ru(E)&&ro(E.parent)&&mI(E.parent)===6)return yC(q2(E.parent.left).parent).thisType;let D=l.flags&16777216?SZ(l):void 0;return D&&PA(D)&&ro(D.parent)&&mI(D.parent)===3?yC(q2(D.parent.left).parent).thisType:$N(C)&&rV(l,C.body)?yC(Oo(C)).thisType:(fr(l,Z.A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface),cr)}function k$e(l){let C=Jo(l);return C.resolvedType||(C.resolvedType=ods(l)),C.resolvedType}function WXr(l){return Vc(ZZe(l.type)||l.type)}function ZZe(l){switch(l.kind){case 196:return ZZe(l.type);case 189:if(l.elements.length===1&&(l=l.elements[0],l.kind===191||l.kind===202&&l.dotDotDotToken))return ZZe(l.type);break;case 188:return l.elementType}}function ads(l){let C=Jo(l);return C.resolvedType||(C.resolvedType=l.dotDotDotToken?WXr(l):_g(Vc(l.type),!0,!!l.questionToken))}function Vc(l){return Wgs(PXr(l),l)}function PXr(l){switch(l.kind){case 133:case 312:case 313:return Mt;case 159:return Kr;case 154:return Jt;case 150:return bt;case 163:return Vt;case 136:return ds;case 155:return Es;case 116:return so;case 157:return wn;case 106:return ur;case 146:return Vi;case 151:return l.flags&524288&&!dt?Mt:sa;case 141:return an;case 197:case 110:return k$e(l);case 201:return ids(l);case 183:return NZe(l);case 182:return l.assertsModifier?so:ds;case 233:return NZe(l);case 186:return zYr(l);case 188:case 189:return fAs(l);case 190:return hAs(l);case 192:return TAs(l);case 193:return ZAs(l);case 314:return Pgs(l);case 316:return _g(Vc(l.type));case 202:return ads(l);case 196:case 315:case 309:return Vc(l.type);case 191:return WXr(l);case 318:return d0s(l);case 184:case 185:case 187:case 322:case 317:case 323:return VXr(l);case 198:return OAs(l);case 199:return xXr(l);case 200:return k3t(l);case 194:return eds(l);case 195:return tds(l);case 203:return QAs(l);case 205:return ZXr(l);case 80:case 166:case 211:let C=zv(l);return C?kp(C):cr;default:return cr}}function G$e(l,C,E){if(l&&l.length)for(let D=0;DD.typeParameter),Ot(E,()=>Kr))}function eH(l,C){return l?Z$e(4,l,C):C}function uds(l,C){return l?Z$e(5,l,C):C}function rJ(l,C,E){return E?Z$e(5,$M(l,C),E):$M(l,C)}function iye(l,C,E){return l?Z$e(5,l,$M(C,E)):$M(C,E)}function gds(l){return!l.constraint&&!b$e(l)||l.constraint===Yd?l:l.restrictiveInstantiation||(l.restrictiveInstantiation=$2(l.symbol),l.restrictiveInstantiation.constraint=Yd,l.restrictiveInstantiation)}function O3t(l){let C=$2(l.symbol);return C.target=l,C}function Ads(l,C){return z0e(l.kind,l.parameterName,l.parameterIndex,cl(l.type,C))}function H7(l,C,E){let D;if(l.typeParameters&&!E){D=Ot(l.typeParameters,O3t),C=eH(eE(l.typeParameters,D),C);for(let M of D)M.mapper=C}let W=ik(l.declaration,D,l.thisParameter&&Q3t(l.thisParameter,C),G$e(l.parameters,C,Q3t),void 0,void 0,l.minArgumentCount,l.flags&167);return W.target=l,W.mapper=C,W}function Q3t(l,C){let E=al(l);if(E.type&&!nW(E.type)&&(!(l.flags&65536)||E.writeType&&!nW(E.writeType)))return l;cI(l)&1&&(l=E.target,C=eH(E.mapper,C));let D=wA(l.flags,l.escapedName,1|cI(l)&53256);return D.declarations=l.declarations,D.parent=l.parent,D.links.target=l,D.links.mapper=C,l.valueDeclaration&&(D.valueDeclaration=l.valueDeclaration),E.nameType&&(D.links.nameType=E.nameType),D}function dds(l,C,E,D){let W=l.objectFlags&4||l.objectFlags&8388608?l.node:l.symbol.declarations[0],M=Jo(W),se=l.objectFlags&4?M.resolvedType:l.objectFlags&64?l.target:l,Ee=l.objectFlags&134217728?l.outerTypeParameters:M.outerTypeParameters;if(!Ee){let Ve=Tre(W,!0);if($N(W)){let ot=ZYr(W);Ve=ai(Ve,ot)}Ee=Ve||v;let Oe=l.objectFlags&8388612?[W]:l.symbol.declarations;Ee=(se.objectFlags&8388612||se.symbol.flags&8192||se.symbol.flags&2048)&&!se.aliasTypeArguments?Gt(Ee,ot=>lr(Oe,Wt=>VZe(ot,Wt))):Ee,M.outerTypeParameters=Ee}if(Ee.length){let Ve=eH(l.mapper,C),Oe=Ot(Ee,ln=>pL(ln,Ve)),ot=E||l.aliasSymbol,Wt=E?D:ok(l.aliasTypeArguments,C),Rt=(l.objectFlags&134217728?"S":"")+Uv(Oe)+V7(ot,Wt);se.instantiations||(se.instantiations=new Map,se.instantiations.set(Uv(Ee)+V7(se.aliasSymbol,se.aliasTypeArguments),se));let Qr=se.instantiations.get(Rt);if(!Qr){if(l.objectFlags&134217728)return Qr=L$e(l,C),se.instantiations.set(Rt,Qr),Qr;let ln=eE(Ee,Oe);Qr=se.objectFlags&4?u3t(l.target,l.node,ln,ot,Wt):se.objectFlags&32?fds(se,ln,ot,Wt):L$e(se,ln,ot,Wt),se.instantiations.set(Rt,Qr);let hn=ia(Qr);if(Qr.flags&3899393&&!(hn&524288)){let mi=lr(Oe,nW);ia(Qr)&524288||(hn&52?Qr.objectFlags|=524288|(mi?1048576:0):Qr.objectFlags|=mi?0:524288)}}return Qr}return l}function pds(l){return!(l.parent.kind===183&&l.parent.typeArguments&&l===l.parent.typeName||l.parent.kind===205&&l.parent.typeArguments&&l===l.parent.qualifier)}function VZe(l,C){if(l.symbol&&l.symbol.declarations&&l.symbol.declarations.length===1){let D=l.symbol.declarations[0].parent;for(let W=C;W!==D;W=W.parent)if(!W||W.kind===241||W.kind===194&&hu(W.extendsType,E))return!0;return E(C)}return!0;function E(D){switch(D.kind){case 197:return!!l.isThisType;case 80:return!l.isThisType&&VS(D)&&pds(D)&&PXr(D)===l;case 186:let W=D.exprName,M=sb(W);if(!vG(M)){let se=Sy(M),Ee=l.symbol.declarations[0],Ve=Ee.kind===168?Ee.parent:l.isThisType?Ee:void 0;if(se.declarations&&Ve)return lr(se.declarations,Oe=>rV(Oe,Ve))||lr(D.typeArguments,E)}return!0;case 174:case 173:return!D.type&&!!D.body||lr(D.typeParameters,E)||lr(D.parameters,E)||!!D.type&&E(D.type)}return!!hu(D,E)}}function sye(l){let C=tB(l);if(C.flags&4194304){let E=qV(C.type);if(E.flags&262144)return E}}function fds(l,C,E,D){let W=sye(l);if(W){let se=cl(W,C);if(W!==se)return J4r(ET(se),M,E,D)}return cl(tB(l),C)===Pr?Pr:L$e(l,C,E,D);function M(se){if(se.flags&61603843&&se!==Pr&&!QA(se)){if(!l.declaration.nameType){let Ee;if(jB(se)||se.flags&1&&Bre(W,4)<0&&(Ee=vy(W))&&rE(Ee,tO))return Cds(se,l,rJ(W,se,C));if(cA(se))return Ids(se,l,W,C);if(RYr(se))return Og(Ot(se.types,M))}return L$e(l,rJ(W,se,C))}return se}}function MXr(l,C){return C&1?!0:C&2?!1:l}function Ids(l,C,E,D){let W=l.target.elementFlags,M=l.target.fixedLength,se=M?rJ(E,l,D):D,Ee=Ot(jM(l),(Wt,Rt)=>{let Qr=W[Rt];return RtWt&1?2:Wt):Ve&8?Ot(W,Wt=>Wt&2?1:Wt):W,ot=MXr(l.target.readonly,_D(C));return Ue(Ee,cr)?cr:ED(Ee,Oe,ot,l.target.labeledElementDeclarations)}function Cds(l,C,E){let D=HXr(C,bt,!0,E);return QA(D)?cr:V_(D,MXr(Cge(l),_D(C)))}function HXr(l,C,E,D){let W=iye(D,yT(l),C),M=cl(aF(l.target||l),W),se=_D(l);return nt&&se&4&&!KI(M,49152)?rW(M,!0):nt&&se&8&&E?Kv(M,524288):M}function L$e(l,C,E,D){w.assert(l.symbol,"anonymous type must have symbol to be instantiated");let W=J1(l.objectFlags&-1572865|64,l.symbol);if(l.objectFlags&32){W.declaration=l.declaration;let M=yT(l),se=O3t(M);W.typeParameter=se,C=eH($M(M,se),C),se.mapper=C}return l.objectFlags&8388608&&(W.node=l.node),l.objectFlags&134217728&&(W.outerTypeParameters=l.outerTypeParameters),W.target=l,W.mapper=C,W.aliasSymbol=E||l.aliasSymbol,W.aliasTypeArguments=E?D:ok(l.aliasTypeArguments,C),W.objectFlags|=W.aliasTypeArguments?TZe(W.aliasTypeArguments):0,W}function M3t(l,C,E,D,W){let M=l.root;if(M.outerTypeParameters){let se=Ot(M.outerTypeParameters,Oe=>pL(Oe,C)),Ee=(E?"C":"")+Uv(se)+V7(D,W),Ve=M.instantiations.get(Ee);if(!Ve){let Oe=eE(M.outerTypeParameters,se),ot=M.checkType,Wt=M.isDistributive?ET(pL(ot,Oe)):void 0;Ve=Wt&&ot!==Wt&&Wt.flags&1179648?J4r(Wt,Rt=>G3t(M,rJ(ot,Rt,Oe),E),D,W):G3t(M,Oe,E,D,W),M.instantiations.set(Ee,Ve)}return Ve}return l}function cl(l,C){return l&&C?YXr(l,C,void 0,void 0):l}function YXr(l,C,E,D){var W;if(!nW(l))return l;if(te===100||Q>=5e6)return(W=Qi)==null||W.instant(Qi.Phase.CheckTypes,"instantiateType_DepthLimit",{typeId:l.id,instantiationDepth:te,instantiationCount:Q}),fr(ue,Z.Type_instantiation_is_excessively_deep_and_possibly_infinite),cr;P++,Q++,te++;let M=mds(l,C,E,D);return te--,M}function mds(l,C,E,D){let W=l.flags;if(W&262144)return pL(l,C);if(W&524288){let M=l.objectFlags;if(M&52){if(M&4&&!l.node){let se=l.resolvedTypeArguments,Ee=ok(se,C);return Ee!==se?E3t(l.target,Ee):l}return M&1024?hds(l,C):dds(l,C,E,D)}return l}if(W&3145728){let M=l.flags&1048576?l.origin:void 0,se=M&&M.flags&3145728?M.types:l.types,Ee=ok(se,C);if(Ee===se&&E===l.aliasSymbol)return l;let Ve=E||l.aliasSymbol,Oe=E?D:ok(l.aliasTypeArguments,C);return W&2097152||M&&M.flags&2097152?Og(Ee,0,Ve,Oe):wa(Ee,1,Ve,Oe)}if(W&4194304)return UN(cl(l.type,C));if(W&134217728)return q4(l.texts,ok(l.types,C));if(W&268435456)return P7(l.symbol,cl(l.type,C));if(W&8388608){let M=E||l.aliasSymbol,se=E?D:ok(l.aliasTypeArguments,C);return $b(cl(l.objectType,C),cl(l.indexType,C),l.accessFlags,void 0,M,se)}if(W&16777216)return M3t(l,eH(l.mapper,C),!1,E,D);if(W&33554432){let M=cl(l.baseType,C);if(Gre(l))return g3t(M);let se=cl(l.constraint,C);return M.flags&8650752&&O7(se)?d3t(M,se):se.flags&3||bg(nJ(M),nJ(se))?M:M.flags&8650752?d3t(M,se):Og([se,M])}return l}function hds(l,C){let E=cl(l.mappedType,C);if(!(ia(E)&32))return l;let D=cl(l.constraintType,C);if(!(D.flags&4194304))return l;let W=B4r(cl(l.source,C),E,D);return W||l}function oye(l){return l.flags&402915327?l:l.permissiveInstantiation||(l.permissiveInstantiation=cl(l,Hd))}function nJ(l){return l.flags&402915327?l:(l.restrictiveInstantiation||(l.restrictiveInstantiation=cl(l,UA),l.restrictiveInstantiation.restrictiveInstantiation=l.restrictiveInstantiation),l.restrictiveInstantiation)}function _ds(l,C){return bD(l.keyType,cl(l.type,C),l.isReadonly,l.declaration)}function UB(l){switch(w.assert(l.kind!==174||RB(l)),l.kind){case 218:case 219:case 174:case 262:return XXr(l);case 210:return lr(l.properties,UB);case 209:return lr(l.elements,UB);case 227:return UB(l.whenTrue)||UB(l.whenFalse);case 226:return(l.operatorToken.kind===57||l.operatorToken.kind===61)&&(UB(l.left)||UB(l.right));case 303:return UB(l.initializer);case 217:return UB(l.expression);case 292:return lr(l.properties,UB)||NN(l.parent)&&lr(l.parent.parent.children,UB);case 291:{let{initializer:C}=l;return!!C&&UB(C)}case 294:{let{expression:C}=l;return!!C&&UB(C)}}return!1}function XXr(l){return _le(l)||yds(l)}function yds(l){return l.typeParameters||nb(l)||!l.body?!1:l.body.kind!==241?UB(l.body):!!kx(l.body,C=>!!C.expression&&UB(C.expression))}function V$e(l){return(RG(l)||RB(l))&&XXr(l)}function JXr(l){if(l.flags&524288){let C=bT(l);if(C.constructSignatures.length||C.callSignatures.length){let E=J1(16,l.symbol);return E.members=C.members,E.properties=C.properties,E.callSignatures=v,E.constructSignatures=v,E.indexInfos=v,E}}else if(l.flags&2097152)return Og(Ot(l.types,JXr));return l}function lF(l,C){return KN(l,C,jb)}function aye(l,C){return KN(l,C,jb)?-1:0}function H3t(l,C){return KN(l,C,db)?-1:0}function bds(l,C){return KN(l,C,VN)?-1:0}function $V(l,C){return KN(l,C,VN)}function WZe(l,C){return KN(l,C,QB)}function bg(l,C){return KN(l,C,db)}function eO(l,C){return l.flags&1048576?he(l.types,E=>eO(E,C)):C.flags&1048576?lr(C.types,E=>eO(l,E)):l.flags&2097152?lr(l.types,E=>eO(E,C)):l.flags&58982400?eO(c_(l)||Kr,C):BD(C)?!!(l.flags&67633152):C===FI?!!(l.flags&67633152)&&!BD(l):C===$C?!!(l.flags&524288)&&BPt(l):wre(l,Sre(C))||jB(C)&&!Cge(C)&&eO(l,Bs)}function W$e(l,C){return KN(l,C,YE)}function PZe(l,C){return W$e(l,C)||W$e(C,l)}function _0(l,C,E,D,W,M){return KB(l,C,db,E,D,W,M)}function eW(l,C,E,D,W,M){return Y3t(l,C,db,E,D,W,M,void 0)}function Y3t(l,C,E,D,W,M,se,Ee){return KN(l,C,E)?!0:!D||!cye(W,l,C,E,M,se,Ee)?KB(l,C,E,D,M,se,Ee):!1}function UXr(l){return!!(l.flags&16777216||l.flags&2097152&&lr(l.types,UXr))}function cye(l,C,E,D,W,M,se){if(!l||UXr(E))return!1;if(!KB(C,E,D,void 0)&&Eds(l,C,E,D,W,M,se))return!0;switch(l.kind){case 234:if(!She(l))break;case 294:case 217:return cye(l.expression,C,E,D,W,M,se);case 226:switch(l.operatorToken.kind){case 64:case 28:return cye(l.right,C,E,D,W,M,se)}break;case 210:return Dds(l,C,E,D,M,se);case 209:return Nds(l,C,E,D,M,se);case 292:return Tds(l,C,E,D,M,se);case 219:return Bds(l,C,E,D,M,se)}return!1}function Eds(l,C,E,D,W,M,se){let Ee=Ou(C,0),Ve=Ou(C,1);for(let Oe of[Ve,Ee])if(lr(Oe,ot=>{let Wt=wd(ot);return!(Wt.flags&131073)&&KB(Wt,E,D,void 0)})){let ot=se||{};_0(C,E,l,W,M,ot);let Wt=ot.errors[ot.errors.length-1];return tg(Wt,Js(l,Oe===Ve?Z.Did_you_mean_to_use_new_with_this_expression:Z.Did_you_mean_to_call_this_expression)),!0}return!1}function Bds(l,C,E,D,W,M){if(hc(l.body)||lr(l.parameters,JC))return!1;let se=AJ(C);if(!se)return!1;let Ee=Ou(E,0);if(!O(Ee))return!1;let Ve=l.body,Oe=wd(se),ot=wa(Ot(Ee,wd));if(!KB(Oe,ot,D,void 0)){let Wt=Ve&&cye(Ve,Oe,ot,D,void 0,W,M);if(Wt)return Wt;let Rt=M||{};if(KB(Oe,ot,D,Ve,void 0,W,Rt),Rt.errors)return E.symbol&&O(E.symbol.declarations)&&tg(Rt.errors[Rt.errors.length-1],Js(E.symbol.declarations[0],Z.The_expected_type_comes_from_the_return_type_of_this_signature)),!(YI(l)&2)&&!LI(Oe,"then")&&KB(BLe(Oe),ot,D,void 0)&&tg(Rt.errors[Rt.errors.length-1],Js(l,Z.Did_you_mean_to_mark_this_function_as_async)),!0}return!1}function KXr(l,C,E){let D=zV(C,E);if(D)return D;if(C.flags&1048576){let W=i4r(l,C);if(W)return zV(W,E)}}function jXr(l,C){cLe(l,C,!1);let E=wge(l,1);return hye(),E}function OZe(l,C,E,D,W,M){let se=!1;for(let Ee of l){let{errorNode:Ve,innerExpression:Oe,nameType:ot,errorMessage:Wt}=Ee,Rt=KXr(C,E,ot);if(!Rt||Rt.flags&8388608)continue;let Qr=zV(C,ot);if(!Qr)continue;let ln=T$e(ot,void 0);if(!KB(Qr,Rt,D,void 0)){let hn=Oe&&cye(Oe,Qr,Rt,D,void 0,W,M);if(se=!0,!hn){let mi=M||{},Ti=Oe?jXr(Oe,Qr):Qr;if(He&&O$e(Ti,Rt)){let ks=Js(Ve,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target,Ys(Ti),Ys(Rt));KA.add(ks),mi.errors=[ks]}else{let ks=!!(ln&&(yg(E,ln)||en).flags&16777216),Vo=!!(ln&&(yg(C,ln)||en).flags&16777216);Rt=dF(Rt,ks),Qr=dF(Qr,ks&&Vo),KB(Ti,Rt,D,Ve,Wt,W,mi)&&Ti!==Qr&&KB(Qr,Rt,D,Ve,Wt,W,mi)}if(mi.errors){let ks=mi.errors[mi.errors.length-1],Vo=k2(ot)?G2(ot):void 0,Hi=Vo!==void 0?yg(E,Vo):void 0,Cs=!1;if(!Hi){let Ds=j0e(E,ot);Ds&&Ds.declaration&&!ls(Ds.declaration).hasNoDefaultLib&&(Cs=!0,tg(ks,Js(Ds.declaration,Z.The_expected_type_comes_from_this_index_signature)))}if(!Cs&&(Hi&&O(Hi.declarations)||E.symbol&&O(E.symbol.declarations))){let Ds=Hi&&O(Hi.declarations)?Hi.declarations[0]:E.symbol.declarations[0];ls(Ds).hasNoDefaultLib||tg(ks,Js(Ds,Z.The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1,Vo&&!(ot.flags&8192)?wc(Vo):Ys(ot),Ys(E)))}}}}}return se}function vds(l,C,E,D,W,M){let se=WC(E,U$e),Ee=WC(E,ot=>!U$e(ot)),Ve=Ee!==Vi?QOt(13,0,Ee,void 0):void 0,Oe=!1;for(let ot=l.next();!ot.done;ot=l.next()){let{errorNode:Wt,innerExpression:Rt,nameType:Qr,errorMessage:ln}=ot.value,hn=Ve,mi=se!==Vi?KXr(C,se,Qr):void 0;if(mi&&!(mi.flags&8388608)&&(hn=Ve?wa([Ve,mi]):mi),!hn)continue;let Ti=zV(C,Qr);if(!Ti)continue;let ks=T$e(Qr,void 0);if(!KB(Ti,hn,D,void 0)){let Vo=Rt&&cye(Rt,Ti,hn,D,void 0,W,M);if(Oe=!0,!Vo){let Hi=M||{},Cs=Rt?jXr(Rt,Ti):Ti;if(He&&O$e(Cs,hn)){let Ds=Js(Wt,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target,Ys(Cs),Ys(hn));KA.add(Ds),Hi.errors=[Ds]}else{let Ds=!!(ks&&(yg(se,ks)||en).flags&16777216),jo=!!(ks&&(yg(C,ks)||en).flags&16777216);hn=dF(hn,Ds),Ti=dF(Ti,Ds&&jo),KB(Cs,hn,D,Wt,ln,W,Hi)&&Cs!==Ti&&KB(Ti,hn,D,Wt,ln,W,Hi)}}}}return Oe}function*Sds(l){if(O(l.properties))for(let C of l.properties)W6(C)||YPt(YS(C.name))||(yield{errorNode:C.name,innerExpression:C.initializer,nameType:fb(YS(C.name))})}function*wds(l,C){if(!O(l.children))return;let E=0;for(let D=0;D1,mi,Ti;if(h3t(!1)!==Ug){let Vo=cXr(Mt);mi=WC(Qr,Hi=>bg(Hi,Vo)),Ti=WC(Qr,Hi=>!bg(Hi,Vo))}else mi=WC(Qr,U$e),Ti=WC(Qr,Vo=>!U$e(Vo));if(hn){if(mi!==Vi){let Vo=ED(bet(Oe,0)),Hi=wds(Oe,Ve);se=vds(Hi,Vo,mi,D,W,M)||se}else if(!KN($b(C,Rt),Qr,D)){se=!0;let Vo=fr(Oe.openingElement.tagName,Z.This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided,Wt,Ys(Qr));M&&M.skipLogging&&(M.errors||(M.errors=[])).push(Vo)}}else if(Ti!==Vi){let Vo=ln[0],Hi=zXr(Vo,Rt,Ve);Hi&&(se=OZe(function*(){yield Hi}(),C,E,D,W,M)||se)}else if(!KN($b(C,Rt),Qr,D)){se=!0;let Vo=fr(Oe.openingElement.tagName,Z.This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided,Wt,Ys(Qr));M&&M.skipLogging&&(M.errors||(M.errors=[])).push(Vo)}}return se;function Ve(){if(!Ee){let Oe=Nf(l.parent.tagName),ot=uLe(uJ(l)),Wt=ot===void 0?"children":wc(ot),Rt=$b(E,fb(Wt)),Qr=Z._0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2;Ee={...Qr,key:"!!ALREADY FORMATTED!!",message:U5(Qr,Oe,Wt,Ys(Rt))}}return Ee}}function*qXr(l,C){let E=O(l.elements);if(E)for(let D=0;DVe:eR(l)>Ve))return D&&!(E&8)&&W(Z.Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1,eR(l),Ve),0;l.typeParameters&&l.typeParameters!==C.typeParameters&&(C=Dgs(C),l=aUr(l,C,void 0,se));let ot=nE(l),Wt=Bye(l),Rt=Bye(C);(Wt||Rt)&&cl(Wt||Rt,Ee);let Qr=C.declaration?C.declaration.kind:0,ln=!(E&3)&&qe&&Qr!==174&&Qr!==173&&Qr!==176,hn=-1,mi=zP(l);if(mi&&mi!==so){let Vo=zP(C);if(Vo){let Hi=!ln&&se(mi,Vo,!1)||se(Vo,mi,D);if(!Hi)return D&&W(Z.The_this_types_of_each_signature_are_incompatible),0;hn&=Hi}}let Ti=Wt||Rt?Math.min(ot,Ve):Math.max(ot,Ve),ks=Wt||Rt?Ti-1:-1;for(let Vo=0;Vo=eR(l)&&Vo=3&&C[0].flags&32768&&C[1].flags&65536&&lr(C,BD)?67108864:0)}return!!(l.objectFlags&67108864)}return!1}function Lre(l){return!!((l.flags&1048576?l.types[0]:l).flags&32768)}function e4r(l){let C=l.flags&1048576?l.types[0]:l;return!!(C.flags&32768)&&C!==ar}function t4r(l){return l.flags&524288&&!qb(l)&&Cd(l).length===0&&ty(l).length===1&&!!sk(l,Jt)||l.flags&3145728&&he(l.types,t4r)||!1}function U3t(l,C,E){let D=l.flags&8?a_(l):l,W=C.flags&8?a_(C):C;if(D===W)return!0;if(D.escapedName!==W.escapedName||!(D.flags&256)||!(W.flags&256))return!1;let M=Gg(D)+","+Gg(W),se=KZ.get(M);if(se!==void 0&&!(!(se&4)&&se&2&&E))return!!(se&1);let Ee=co(W);for(let Ve of Cd(co(D)))if(Ve.flags&8){let Oe=yg(Ee,Ve.escapedName);if(!Oe||!(Oe.flags&8))return E?(E(Z.Property_0_is_missing_in_type_1,pf(Ve),Ys(kp(W),void 0,64)),KZ.set(M,6)):KZ.set(M,2),!1;let ot=fJ(qd(Ve,306)).value,Wt=fJ(qd(Oe,306)).value;if(ot!==Wt){let Rt=typeof ot=="string",Qr=typeof Wt=="string";if(ot!==void 0&&Wt!==void 0){if(!E)KZ.set(M,2);else{let ln=Rt?`"${rT(ot)}"`:ot,hn=Qr?`"${rT(Wt)}"`:Wt;E(Z.Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given,pf(W),pf(Oe),hn,ln),KZ.set(M,6)}return!1}if(Rt||Qr){if(!E)KZ.set(M,2);else{let ln=ot??Wt;w.assert(typeof ln=="string");let hn=`"${rT(ln)}"`;E(Z.One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value,pf(W),pf(Oe),hn),KZ.set(M,6)}return!1}}}return KZ.set(M,1),!0}function lye(l,C,E,D){let W=l.flags,M=C.flags;return M&1||W&131072||l===Pr||M&2&&!(E===QB&&W&1)?!0:M&131072?!1:!!(W&402653316&&M&4||W&128&&W&1024&&M&128&&!(M&1024)&&l.value===C.value||W&296&&M&8||W&256&&W&1024&&M&256&&!(M&1024)&&l.value===C.value||W&2112&&M&64||W&528&&M&16||W&12288&&M&4096||W&32&&M&32&&l.symbol.escapedName===C.symbol.escapedName&&U3t(l.symbol,C.symbol,D)||W&1024&&M&1024&&(W&1048576&&M&1048576&&U3t(l.symbol,C.symbol,D)||W&2944&&M&2944&&l.value===C.value&&U3t(l.symbol,C.symbol,D))||W&32768&&(!nt&&!(M&3145728)||M&49152)||W&65536&&(!nt&&!(M&3145728)||M&65536)||W&524288&&M&67108864&&!(E===QB&&BD(l)&&!(ia(l)&8192))||(E===db||E===YE)&&(W&1||W&8&&(M&32||M&256&&M&1024)||W&256&&!(W&1024)&&(M&32||M&256&&M&1024&&l.value===C.value)||Fds(C)))}function KN(l,C,E){if(qM(l)&&(l=l.regularType),qM(C)&&(C=C.regularType),l===C)return!0;if(E!==jb){if(E===YE&&!(C.flags&131072)&&lye(C,l,E)||lye(l,C,E))return!0}else if(!((l.flags|C.flags)&61865984)){if(l.flags!==C.flags)return!1;if(l.flags&67358815)return!0}if(l.flags&524288&&C.flags&524288){let D=E.get(H$e(l,C,0,E,!1));if(D!==void 0)return!!(D&1)}return l.flags&469499904||C.flags&469499904?KB(l,C,E,void 0):!1}function r4r(l,C){return ia(l)&2048&&YPt(C.escapedName)}function QZe(l,C){for(;;){let E=qM(l)?l.regularType:tW(l)?Vds(l,C):ia(l)&4?l.node?uL(l.target,af(l)):rPt(l)||l:l.flags&3145728?Zds(l,C):l.flags&33554432?C?l.baseType:p3t(l):l.flags&25165824?cF(l,C):l;if(E===l)return E;l=E}}function Zds(l,C){let E=ET(l);if(E!==l)return E;if(l.flags&2097152&&Lds(l)){let D=Ar(l.types,W=>QZe(W,C));if(D!==l.types)return Og(D)}return l}function Lds(l){let C=!1,E=!1;for(let D of l.types)if(C||(C=!!(D.flags&465829888)),E||(E=!!(D.flags&98304)||BD(D)),C&&E)return!0;return!1}function Vds(l,C){let E=jM(l),D=Ar(E,W=>W.flags&25165824?cF(W,C):W);return E!==D?B3t(l.target,D):l}function KB(l,C,E,D,W,M,se){var Ee;let Ve,Oe,ot,Wt,Rt,Qr,ln=0,hn=0,mi=0,Ti=0,ks=!1,Vo=0,Hi=0,Cs,Ds,jo=16e6-E.size>>3;w.assert(E!==jb||!D,"no error reporting in identity checking");let Ca=vo(l,C,3,!!D,W);if(Ds&&ZA(),ks){let Cr=H$e(l,C,0,E,!1);E.set(Cr,6),(Ee=Qi)==null||Ee.instant(Qi.Phase.CheckTypes,"checkTypeRelatedTo_DepthLimit",{sourceId:l.id,targetId:C.id,depth:hn,targetDepth:mi});let Mr=jo<=0?Z.Excessive_complexity_comparing_types_0_and_1:Z.Excessive_stack_depth_comparing_types_0_and_1,Wn=fr(D||ue,Mr,Ys(l),Ys(C));se&&(se.errors||(se.errors=[])).push(Wn)}else if(Ve){if(M){let Wn=M();Wn&&(LDe(Wn,Ve),Ve=Wn)}let Cr;if(W&&D&&!Ca&&l.symbol){let Wn=al(l.symbol);if(Wn.originatingImport&&!fC(Wn.originatingImport)&&KB(co(Wn.target),C,E,void 0)){let _i=Js(Wn.originatingImport,Z.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);Cr=Yr(Cr,_i)}}let Mr=ZS(ls(D),D,Ve,Cr);Oe&&tg(Mr,...Oe),se&&(se.errors||(se.errors=[])).push(Mr),(!se||!se.skipLogging)&&KA.add(Mr)}return D&&se&&se.skipLogging&&Ca===0&&w.assert(!!se.errors,"missed opportunity to interact with error."),Ca!==0;function ma(Cr){Ve=Cr.errorInfo,Cs=Cr.lastSkippedInfo,Ds=Cr.incompatibleStack,Vo=Cr.overrideNextErrorInfo,Hi=Cr.skipParentCounter,Oe=Cr.relatedInfo}function Ng(){return{errorInfo:Ve,lastSkippedInfo:Cs,incompatibleStack:Ds?.slice(),overrideNextErrorInfo:Vo,skipParentCounter:Hi,relatedInfo:Oe?.slice()}}function Qu(Cr,...Mr){Vo++,Cs=void 0,(Ds||(Ds=[])).push([Cr,...Mr])}function ZA(){let Cr=Ds||[];Ds=void 0;let Mr=Cs;if(Cs=void 0,Cr.length===1){au(...Cr[0]),Mr&&VI(void 0,...Mr);return}let Wn="",Lr=[];for(;Cr.length;){let[_i,...ui]=Cr.pop();switch(_i.code){case Z.Types_of_property_0_are_incompatible.code:{Wn.indexOf("new ")===0&&(Wn=`(${Wn})`);let yn=""+ui[0];Wn.length===0?Wn=`${yn}`:Ke(yn,sA(Ne))?Wn=`${Wn}.${yn}`:yn[0]==="["&&yn[yn.length-1]==="]"?Wn=`${Wn}${yn}`:Wn=`${Wn}[${yn}]`;break}case Z.Call_signature_return_types_0_and_1_are_incompatible.code:case Z.Construct_signature_return_types_0_and_1_are_incompatible.code:case Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:case Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:{if(Wn.length===0){let yn=_i;_i.code===Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?yn=Z.Call_signature_return_types_0_and_1_are_incompatible:_i.code===Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code&&(yn=Z.Construct_signature_return_types_0_and_1_are_incompatible),Lr.unshift([yn,ui[0],ui[1]])}else{let yn=_i.code===Z.Construct_signature_return_types_0_and_1_are_incompatible.code||_i.code===Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?"new ":"",hi=_i.code===Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code||_i.code===Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?"":"...";Wn=`${yn}${Wn}(${hi})`}break}case Z.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target.code:{Lr.unshift([Z.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target,ui[0],ui[1]]);break}case Z.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target.code:{Lr.unshift([Z.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target,ui[0],ui[1],ui[2]]);break}default:return w.fail(`Unhandled Diagnostic: ${_i.code}`)}}Wn?au(Wn[Wn.length-1]===")"?Z.The_types_returned_by_0_are_incompatible_between_these_types:Z.The_types_of_0_are_incompatible_between_these_types,Wn):Lr.shift();for(let[_i,...ui]of Lr){let yn=_i.elidedInCompatabilityPyramid;_i.elidedInCompatabilityPyramid=!1,au(_i,...ui),_i.elidedInCompatabilityPyramid=yn}Mr&&VI(void 0,...Mr)}function au(Cr,...Mr){w.assert(!!D),Ds&&ZA(),!Cr.elidedInCompatabilityPyramid&&(Hi===0?Ve=ou(Ve,Cr,...Mr):Hi--)}function Uf(Cr,...Mr){au(Cr,...Mr),Hi++}function g_(Cr){w.assert(!!Ve),Oe?Oe.push(Cr):Oe=[Cr]}function VI(Cr,Mr,Wn){Ds&&ZA();let[Lr,_i]=ige(Mr,Wn),ui=Mr,yn=Lr;if(uye(Mr)&&!K3t(Wn)&&(ui=gF(Mr),w.assert(!bg(ui,Wn),"generalized source shouldn't be assignable"),yn=yre(ui)),(Wn.flags&8388608&&!(Mr.flags&8388608)?Wn.objectType.flags:Wn.flags)&262144&&Wn!==Xb&&Wn!==nf){let vs=c_(Wn),pi;vs&&(bg(ui,vs)||(pi=bg(Mr,vs)))?au(Z._0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2,pi?Lr:yn,_i,Ys(vs)):(Ve=void 0,au(Z._0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1,_i,yn))}if(Cr)Cr===Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1&&He&&n4r(Mr,Wn).length&&(Cr=Z.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(E===YE)Cr=Z.Type_0_is_not_comparable_to_type_1;else if(Lr===_i)Cr=Z.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated;else if(He&&n4r(Mr,Wn).length)Cr=Z.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(Mr.flags&128&&Wn.flags&1048576){let vs=jIs(Mr,Wn);if(vs){au(Z.Type_0_is_not_assignable_to_type_1_Did_you_mean_2,yn,_i,Ys(vs));return}}Cr=Z.Type_0_is_not_assignable_to_type_1}au(Cr,yn,_i)}function As(Cr,Mr){let Wn=R7(Cr.symbol)?Ys(Cr,Cr.symbol.valueDeclaration):Ys(Cr),Lr=R7(Mr.symbol)?Ys(Mr,Mr.symbol.valueDeclaration):Ys(Mr);(Rl===Cr&&Jt===Mr||SA===Cr&&bt===Mr||OA===Cr&&ds===Mr||nXr()===Cr&&Es===Mr)&&au(Z._0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible,Lr,Wn)}function Fs(Cr,Mr,Wn){return cA(Cr)?Cr.target.readonly&&XZe(Mr)?(Wn&&au(Z.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1,Ys(Cr),Ys(Mr)),!1):tO(Mr):Cge(Cr)&&XZe(Mr)?(Wn&&au(Z.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1,Ys(Cr),Ys(Mr)),!1):cA(Mr)?jB(Cr):!0}function Wc(Cr,Mr,Wn){return vo(Cr,Mr,3,Wn)}function vo(Cr,Mr,Wn=3,Lr=!1,_i,ui=0){if(Cr===Mr)return-1;if(Cr.flags&524288&&Mr.flags&402784252)return E===YE&&!(Mr.flags&131072)&&lye(Mr,Cr,E)||lye(Cr,Mr,E,Lr?au:void 0)?-1:(Lr&&rl(Cr,Mr,Cr,Mr,_i),0);let yn=QZe(Cr,!1),hi=QZe(Mr,!0);if(yn===hi)return-1;if(E===jb)return yn.flags!==hi.flags?0:yn.flags&67358815?-1:(md(yn,hi),Gge(yn,hi,!1,0,Wn));if(yn.flags&262144&&U4(yn)===hi)return-1;if(yn.flags&470302716&&hi.flags&1048576){let vs=hi.types,pi=vs.length===2&&vs[0].flags&98304?vs[1]:vs.length===3&&vs[0].flags&98304&&vs[1].flags&98304?vs[2]:void 0;if(pi&&!(pi.flags&98304)&&(hi=QZe(pi,!0),yn===hi))return-1}if(E===YE&&!(hi.flags&131072)&&lye(hi,yn,E)||lye(yn,hi,E,Lr?au:void 0))return-1;if(yn.flags&469499904||hi.flags&469499904){if(!(ui&2)&&iO(yn)&&ia(yn)&8192&&W_(yn,hi,Lr))return Lr&&VI(_i,yn,Mr.aliasSymbol?Mr:hi),0;let pi=(E!==YE||BT(yn))&&!(ui&2)&&yn.flags&405405692&&yn!==FI&&hi.flags&2621440&&z3t(hi)&&(Cd(yn).length>0||stt(yn)),Xs=!!(ia(yn)&2048);if(pi&&!Pds(yn,hi,Xs)){if(Lr){let Ba=Ys(Cr.aliasSymbol?Cr:yn),pa=Ys(Mr.aliasSymbol?Mr:hi),ig=Ou(yn,0),Bg=Ou(yn,1);ig.length>0&&vo(wd(ig[0]),hi,1,!1)||Bg.length>0&&vo(wd(Bg[0]),hi,1,!1)?au(Z.Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it,Ba,pa):au(Z.Type_0_has_no_properties_in_common_with_type_1,Ba,pa)}return 0}md(yn,hi);let Ls=yn.flags&1048576&&yn.types.length<4&&!(hi.flags&1048576)||hi.flags&1048576&&hi.types.length<4&&!(yn.flags&469499904)?y0(yn,hi,Lr,ui):Gge(yn,hi,Lr,ui,Wn);if(Ls)return Ls}return Lr&&rl(Cr,Mr,yn,hi,_i),0}function rl(Cr,Mr,Wn,Lr,_i){var ui,yn;let hi=!!rPt(Cr),vs=!!rPt(Mr);Wn=Cr.aliasSymbol||hi?Cr:Wn,Lr=Mr.aliasSymbol||vs?Mr:Lr;let pi=Vo>0;if(pi&&Vo--,Wn.flags&524288&&Lr.flags&524288){let Xs=Ve;Fs(Wn,Lr,!0),Ve!==Xs&&(pi=!!Ve)}if(Wn.flags&524288&&Lr.flags&402784252)As(Wn,Lr);else if(Wn.symbol&&Wn.flags&524288&&FI===Wn)au(Z.The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead);else if(ia(Wn)&2048&&Lr.flags&2097152){let Xs=Lr.types,ea=nH(L2.IntrinsicAttributes,D),Ls=nH(L2.IntrinsicClassAttributes,D);if(!QA(ea)&&!QA(Ls)&&(Ue(Xs,ea)||Ue(Xs,Ls)))return}else Ve=qWt(Ve,Mr);if(!_i&&pi){let Xs=Ng();VI(_i,Wn,Lr);let ea;Ve&&Ve!==Xs.errorInfo&&(ea={code:Ve.code,messageText:Ve.messageText}),ma(Xs),ea&&Ve&&(Ve.canonicalHead=ea),Cs=[Wn,Lr];return}if(VI(_i,Wn,Lr),Wn.flags&262144&&((yn=(ui=Wn.symbol)==null?void 0:ui.declarations)!=null&&yn[0])&&!U4(Wn)){let Xs=O3t(Wn);if(Xs.constraint=cl(Lr,$M(Wn,Xs)),BZe(Xs)){let ea=Ys(Lr,Wn.symbol.declarations[0]);g_(Js(Wn.symbol.declarations[0],Z.This_type_parameter_might_need_an_extends_0_constraint,ea))}}}function md(Cr,Mr){if(Qi&&Cr.flags&3145728&&Mr.flags&3145728){let Wn=Cr,Lr=Mr;if(Wn.objectFlags&Lr.objectFlags&32768)return;let _i=Wn.types.length,ui=Lr.types.length;_i*ui>1e6&&Qi.instant(Qi.Phase.CheckTypes,"traceUnionsOrIntersectionsTooLarge_DepthLimit",{sourceId:Cr.id,sourceSize:_i,targetId:Mr.id,targetSize:ui,pos:D?.pos,end:D?.end})}}function ed(Cr,Mr){return wa(Nd(Cr,(Lr,_i)=>{var ui;_i=ey(_i);let yn=_i.flags&3145728?vZe(_i,Mr):JM(_i,Mr),hi=yn&&co(yn)||((ui=L7(_i,Mr))==null?void 0:ui.type)||wn;return Yr(Lr,hi)},void 0)||v)}function W_(Cr,Mr,Wn){var Lr;if(!yye(Mr)||!dt&&ia(Mr)&4096)return!1;let _i=!!(ia(Cr)&2048);if((E===db||E===YE)&&(yge(FI,Mr)||!_i&&uF(Mr)))return!1;let ui=Mr,yn;Mr.flags&1048576&&(ui=T8r(Cr,Mr,vo)||rbs(Mr),yn=ui.flags&1048576?ui.types:[ui]);for(let hi of Cd(Cr))if(Eg(hi,Cr.symbol)&&!r4r(Cr,hi)){if(!Bet(ui,hi.escapedName,_i)){if(Wn){let vs=WC(ui,yye);if(!D)return w.fail();if(pM(D)||Um(D)||Um(D.parent)){hi.valueDeclaration&&RN(hi.valueDeclaration)&&ls(D)===ls(hi.valueDeclaration.name)&&(D=hi.valueDeclaration.name);let pi=$c(hi),Xs=zJr(pi,vs),ea=Xs?$c(Xs):void 0;ea?au(Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2,pi,Ys(vs),ea):au(Z.Property_0_does_not_exist_on_type_1,pi,Ys(vs))}else{let pi=((Lr=Cr.symbol)==null?void 0:Lr.declarations)&&$i(Cr.symbol.declarations),Xs;if(hi.valueDeclaration&&Si(hi.valueDeclaration,ea=>ea===pi)&&ls(pi)===ls(D)){let ea=hi.valueDeclaration;w.assertNode(ea,vB);let Ls=ea.name;D=Ls,sr(Ls)&&(Xs=qJr(Ls,vs))}Xs!==void 0?Uf(Z.Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2,$c(hi),Ys(vs),Xs):Uf(Z.Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1,$c(hi),Ys(vs))}}return!0}if(yn&&!vo(co(hi),ed(yn,hi.escapedName),3,Wn))return Wn&&Qu(Z.Types_of_property_0_are_incompatible,$c(hi)),!0}return!1}function Eg(Cr,Mr){return Cr.valueDeclaration&&Mr.valueDeclaration&&Cr.valueDeclaration.parent===Mr.valueDeclaration}function y0(Cr,Mr,Wn,Lr){if(Cr.flags&1048576){if(Mr.flags&1048576){let _i=Cr.origin;if(_i&&_i.flags&2097152&&Mr.aliasSymbol&&Ue(_i.types,Mr))return-1;let ui=Mr.origin;if(ui&&ui.flags&1048576&&Cr.aliasSymbol&&Ue(ui.types,Cr))return-1}return E===YE?jI(Cr,Mr,Wn&&!(Cr.flags&402784252),Lr):CF(Cr,Mr,Wn&&!(Cr.flags&402784252),Lr)}if(Mr.flags&1048576)return jf(dye(Cr),Mr,Wn&&!(Cr.flags&402784252)&&!(Mr.flags&402784252),Lr);if(Mr.flags&2097152)return nB(Cr,Mr,Wn,2);if(E===YE&&Mr.flags&402784252){let _i=Ar(Cr.types,ui=>ui.flags&465829888?c_(ui)||Kr:ui);if(_i!==Cr.types){if(Cr=Og(_i),Cr.flags&131072)return 0;if(!(Cr.flags&2097152))return vo(Cr,Mr,1,!1)||vo(Mr,Cr,1,!1)}}return jI(Cr,Mr,!1,1)}function Kf(Cr,Mr){let Wn=-1,Lr=Cr.types;for(let _i of Lr){let ui=jf(_i,Mr,!1,0);if(!ui)return 0;Wn&=ui}return Wn}function jf(Cr,Mr,Wn,Lr){let _i=Mr.types;if(Mr.flags&1048576){if(AL(_i,Cr))return-1;if(E!==YE&&ia(Mr)&32768&&!(Cr.flags&1024)&&(Cr.flags&2688||(E===VN||E===QB)&&Cr.flags&256)){let yn=Cr===Cr.regularType?Cr.freshType:Cr.regularType,hi=Cr.flags&128?Jt:Cr.flags&256?bt:Cr.flags&2048?Vt:void 0;return hi&&AL(_i,hi)||yn&&AL(_i,yn)?-1:0}let ui=G4r(Mr,Cr);if(ui){let yn=vo(Cr,ui,2,!1,void 0,Lr);if(yn)return yn}}for(let ui of _i){let yn=vo(Cr,ui,2,!1,void 0,Lr);if(yn)return yn}if(Wn){let ui=i4r(Cr,Mr,vo);ui&&vo(Cr,ui,2,!0,void 0,Lr)}return 0}function nB(Cr,Mr,Wn,Lr){let _i=-1,ui=Mr.types;for(let yn of ui){let hi=vo(Cr,yn,2,Wn,void 0,Lr);if(!hi)return 0;_i&=hi}return _i}function jI(Cr,Mr,Wn,Lr){let _i=Cr.types;if(Cr.flags&1048576&&AL(_i,Mr))return-1;let ui=_i.length;for(let yn=0;yn=yn.types.length&&ui.length%yn.types.length===0){let Xs=vo(vs,yn.types[hi%yn.types.length],3,!1,void 0,Lr);if(Xs){_i&=Xs;continue}}let pi=vo(vs,Mr,1,Wn,void 0,Lr);if(!pi)return 0;_i&=pi}return _i}function Kre(Cr=v,Mr=v,Wn=v,Lr,_i){if(Cr.length!==Mr.length&&E===jb)return 0;let ui=Cr.length<=Mr.length?Cr.length:Mr.length,yn=-1;for(let hi=0;hi(Ba|=Bg?16:8,Ls(Bg)));let pa;return Ti===3?((ui=Qi)==null||ui.instant(Qi.Phase.CheckTypes,"recursiveTypeRelatedTo_DepthLimit",{sourceId:Cr.id,sourceIdStack:Rt.map(Bg=>Bg.id),targetId:Mr.id,targetIdStack:Qr.map(Bg=>Bg.id),depth:hn,targetDepth:mi}),pa=3):((yn=Qi)==null||yn.push(Qi.Phase.CheckTypes,"structuredTypeRelatedTo",{sourceId:Cr.id,targetId:Mr.id}),pa=Vye(Cr,Mr,Wn,Lr),(hi=Qi)==null||hi.pop()),ug&&(ug=Ls),_i&1&&hn--,_i&2&&mi--,Ti=ea,pa?(pa===-1||hn===0&&mi===0)&&ig(pa===-1||pa===3):(E.set(vs,(Wn?4:0)|2|Ba),jo--,ig(!1)),pa;function ig(Bg){for(let Xp=Xs;Xphi!==Cr)&&(ui=vo(yn,Mr,1,!1,void 0,Lr))}ui&&!(Lr&2)&&Mr.flags&2097152&&!eJ(Mr)&&Cr.flags&2621440?(ui&=Fg(Cr,Mr,Wn,void 0,!1,0),ui&&iO(Cr)&&ia(Cr)&8192&&(ui&=Al(Cr,Mr,!1,Wn,0))):ui&&R$e(Mr)&&!tO(Mr)&&Cr.flags&2097152&&ey(Cr).flags&3670016&&!lr(Cr.types,yn=>yn===Mr||!!(ia(yn)&262144))&&(ui&=Fg(Cr,Mr,Wn,void 0,!0,Lr))}return ui&&ma(_i),ui}function P_(Cr,Mr){let Wn=ey(XM(Mr)),Lr=[];return YWt(Wn,8576,!1,_i=>void Lr.push(cl(Cr,iye(Mr.mapper,yT(Mr),_i)))),wa(Lr)}function OLe(Cr,Mr,Wn,Lr,_i){let ui,yn,hi=!1,vs=Cr.flags,pi=Mr.flags;if(E===jb){if(vs&3145728){let Ls=Kf(Cr,Mr);return Ls&&(Ls&=Kf(Mr,Cr)),Ls}if(vs&4194304)return vo(Cr.type,Mr.type,3,!1);if(vs&8388608&&(ui=vo(Cr.objectType,Mr.objectType,3,!1))&&(ui&=vo(Cr.indexType,Mr.indexType,3,!1))||vs&16777216&&Cr.root.isDistributive===Mr.root.isDistributive&&(ui=vo(Cr.checkType,Mr.checkType,3,!1))&&(ui&=vo(Cr.extendsType,Mr.extendsType,3,!1))&&(ui&=vo(qP(Cr),qP(Mr),3,!1))&&(ui&=vo($P(Cr),$P(Mr),3,!1))||vs&33554432&&(ui=vo(Cr.baseType,Mr.baseType,3,!1))&&(ui&=vo(Cr.constraint,Mr.constraint,3,!1)))return ui;if(!(vs&524288))return 0}else if(vs&3145728||pi&3145728){if(ui=y0(Cr,Mr,Wn,Lr))return ui;if(!(vs&465829888||vs&524288&&pi&1048576||vs&2097152&&pi&467402752))return 0}if(vs&17301504&&Cr.aliasSymbol&&Cr.aliasTypeArguments&&Cr.aliasSymbol===Mr.aliasSymbol&&!(Q$e(Cr)||Q$e(Mr))){let Ls=s4r(Cr.aliasSymbol);if(Ls===v)return 1;let Ba=al(Cr.aliasSymbol).typeParameters,pa=JN(Ba),ig=KV(Cr.aliasTypeArguments,Ba,pa,io(Cr.aliasSymbol.valueDeclaration)),Bg=KV(Mr.aliasTypeArguments,Ba,pa,io(Cr.aliasSymbol.valueDeclaration)),Xp=ea(ig,Bg,Ls,Lr);if(Xp!==void 0)return Xp}if(f4r(Cr)&&!Cr.target.readonly&&(ui=vo(af(Cr)[0],Mr,1))||f4r(Mr)&&(Mr.target.readonly||XZe(c_(Cr)||Cr))&&(ui=vo(Cr,af(Mr)[0],2)))return ui;if(pi&262144){if(ia(Cr)&32&&!Cr.declaration.nameType&&vo(UN(Mr),tB(Cr),3)&&!(_D(Cr)&4)){let Ls=aF(Cr),Ba=$b(Mr,yT(Cr));if(ui=vo(Ls,Ba,3,Wn))return ui}if(E===YE&&vs&262144){let Ls=vy(Cr);if(Ls)for(;Ls&&jv(Ls,Ba=>!!(Ba.flags&262144));){if(ui=vo(Ls,Mr,1,!1))return ui;Ls=vy(Ls)}return 0}}else if(pi&4194304){let Ls=Mr.type;if(vs&4194304&&(ui=vo(Ls,Cr.type,3,!1)))return ui;if(cA(Ls)){if(ui=vo(Cr,AXr(Ls),2,Wn))return ui}else{let Ba=XWt(Ls);if(Ba){if(vo(Cr,UN(Ba,Mr.indexFlags|4),2,Wn)===-1)return-1}else if(qb(Ls)){let pa=lL(Ls),ig=tB(Ls),Bg;if(pa&&Rre(Ls)){let Xp=P_(pa,Ls);Bg=wa([Xp,pa])}else Bg=pa||ig;if(vo(Cr,Bg,2,Wn)===-1)return-1}}}else if(pi&8388608){if(vs&8388608){if((ui=vo(Cr.objectType,Mr.objectType,3,Wn))&&(ui&=vo(Cr.indexType,Mr.indexType,3,Wn)),ui)return ui;Wn&&(yn=Ve)}if(E===db||E===YE){let Ls=Mr.objectType,Ba=Mr.indexType,pa=c_(Ls)||Ls,ig=c_(Ba)||Ba;if(!eJ(pa)&&!tJ(ig)){let Bg=4|(pa!==Ls?2:0),Xp=zV(pa,ig,Bg);if(Xp){if(Wn&&yn&&ma(_i),ui=vo(Cr,Xp,2,Wn,void 0,Lr))return ui;Wn&&yn&&Ve&&(Ve=Xs([yn])<=Xs([Ve])?yn:Ve)}}}Wn&&(yn=void 0)}else if(qb(Mr)&&E!==jb){let Ls=!!Mr.declaration.nameType,Ba=aF(Mr),pa=_D(Mr);if(!(pa&8)){if(!Ls&&Ba.flags&8388608&&Ba.objectType===Cr&&Ba.indexType===yT(Mr))return-1;if(!qb(Cr)){let ig=Ls?lL(Mr):tB(Mr),Bg=UN(Cr,2),Xp=pa&4,Ty=Xp?yZe(ig,Bg):void 0;if(Xp?!(Ty.flags&131072):vo(ig,Bg,3)){let jE=aF(Mr),oW=yT(Mr),aO=bge(jE,-98305);if(!Ls&&aO.flags&8388608&&aO.indexType===oW){if(ui=vo(Cr,aO.objectType,2,Wn))return ui}else{let cH=Ls?Ty||ig:Ty?Og([Ty,oW]):oW,tR=$b(Cr,cH);if(ui=vo(tR,jE,3,Wn))return ui}}yn=Ve,ma(_i)}}}else if(pi&16777216){if(X7(Mr,Qr,mi,10))return 3;let Ls=Mr;if(!Ls.root.inferTypeParameters&&!$As(Ls.root)&&!(Cr.flags&16777216&&Cr.root===Ls.root)){let Ba=!bg(oye(Ls.checkType),oye(Ls.extendsType)),pa=!Ba&&bg(nJ(Ls.checkType),nJ(Ls.extendsType));if((ui=Ba?-1:vo(Cr,qP(Ls),2,!1,void 0,Lr))&&(ui&=pa?-1:vo(Cr,$P(Ls),2,!1,void 0,Lr),ui))return ui}}else if(pi&134217728){if(vs&134217728){if(E===YE)return Sps(Cr,Mr)?0:-1;cl(Cr,hf)}if(set(Cr,Mr))return-1}else if(Mr.flags&268435456&&!(Cr.flags&268435456)&&iet(Cr,Mr))return-1;if(vs&8650752){if(!(vs&8388608&&pi&8388608)){let Ls=U4(Cr)||Kr;if(ui=vo(Ls,Mr,1,!1,void 0,Lr))return ui;if(ui=vo(KE(Ls,Cr),Mr,1,Wn&&Ls!==Kr&&!(pi&vs&262144),void 0,Lr))return ui;if(jWt(Cr)){let Ba=U4(Cr.indexType);if(Ba&&(ui=vo($b(Cr.objectType,Ba),Mr,1,Wn)))return ui}}}else if(vs&4194304){let Ls=R3t(Cr.type,Cr.indexFlags)&&ia(Cr.type)&32;if(ui=vo(ki,Mr,1,Wn&&!Ls))return ui;if(Ls){let Ba=Cr.type,pa=lL(Ba),ig=pa&&Rre(Ba)?P_(pa,Ba):pa||tB(Ba);if(ui=vo(ig,Mr,1,Wn))return ui}}else if(vs&134217728&&!(pi&524288)){if(!(pi&134217728)){let Ls=c_(Cr);if(Ls&&Ls!==Cr&&(ui=vo(Ls,Mr,1,Wn)))return ui}}else if(vs&268435456)if(pi&268435456){if(Cr.symbol!==Mr.symbol)return 0;if(ui=vo(Cr.type,Mr.type,3,Wn))return ui}else{let Ls=c_(Cr);if(Ls&&(ui=vo(Ls,Mr,1,Wn)))return ui}else if(vs&16777216){if(X7(Cr,Rt,hn,10))return 3;if(pi&16777216){let pa=Cr.root.inferTypeParameters,ig=Cr.extendsType,Bg;if(pa){let Xp=pye(pa,void 0,0,Wc);pF(Xp.inferences,Mr.extendsType,ig,1536),ig=cl(ig,Xp.mapper),Bg=Xp.mapper}if(lF(ig,Mr.extendsType)&&(vo(Cr.checkType,Mr.checkType,3)||vo(Mr.checkType,Cr.checkType,3))&&((ui=vo(cl(qP(Cr),Bg),qP(Mr),3,Wn))&&(ui&=vo($P(Cr),$P(Mr),3,Wn)),ui))return ui}let Ls=JWt(Cr);if(Ls&&(ui=vo(Ls,Mr,1,Wn)))return ui;let Ba=!(pi&16777216)&&BZe(Cr)?vYr(Cr):void 0;if(Ba&&(ma(_i),ui=vo(Ba,Mr,1,Wn)))return ui}else{if(E!==VN&&E!==QB&&ags(Mr)&&uF(Cr))return-1;if(qb(Mr))return qb(Cr)&&(ui=Ln(Cr,Mr,Wn))?ui:0;let Ls=!!(vs&402784252);if(E!==jb)Cr=ey(Cr),vs=Cr.flags;else if(qb(Cr))return 0;if(ia(Cr)&4&&ia(Mr)&4&&Cr.target===Mr.target&&!cA(Cr)&&!(Q$e(Cr)||Q$e(Mr))){if(J$e(Cr))return-1;let Ba=q3t(Cr.target);if(Ba===v)return 1;let pa=ea(af(Cr),af(Mr),Ba,Lr);if(pa!==void 0)return pa}else{if(Cge(Mr)?rE(Cr,tO):jB(Mr)&&rE(Cr,Ba=>cA(Ba)&&!Ba.target.readonly))return E!==jb?vo(jP(Cr,bt)||Mt,jP(Mr,bt)||Mt,3,Wn):0;if(tW(Cr)&&cA(Mr)&&!tW(Mr)){let Ba=yD(Cr);if(Ba!==Cr)return vo(Ba,Mr,1,Wn)}else if((E===VN||E===QB)&&uF(Mr)&&ia(Mr)&8192&&!uF(Cr))return 0}if(vs&2621440&&pi&524288){let Ba=Wn&&Ve===_i.errorInfo&&!Ls;if(ui=Fg(Cr,Mr,Ba,void 0,!1,Lr),ui&&(ui&=Xt(Cr,Mr,0,Ba,Lr),ui&&(ui&=Xt(Cr,Mr,1,Ba,Lr),ui&&(ui&=Al(Cr,Mr,Ls,Ba,Lr)))),hi&&ui)Ve=yn||Ve||_i.errorInfo;else if(ui)return ui}if(vs&2621440&&pi&1048576){let Ba=bge(Mr,36175872);if(Ba.flags&1048576){let pa=Oi(Cr,Ba);if(pa)return pa}}}return 0;function Xs(Ls){return Ls?Nd(Ls,(Ba,pa)=>Ba+1+Xs(pa.next),0):0}function ea(Ls,Ba,pa,ig){if(ui=Kre(Ls,Ba,pa,Wn,ig))return ui;if(lr(pa,Xp=>!!(Xp&24))){yn=void 0,ma(_i);return}let Bg=Ba&&Ods(Ba,pa);if(hi=!Bg,pa!==v&&!Bg){if(hi&&!(Wn&&lr(pa,Xp=>(Xp&7)===0)))return 0;yn=Ve,ma(_i)}}}function Ln(Cr,Mr,Wn){if(E===YE||(E===jb?_D(Cr)===_D(Mr):gge(Cr)<=gge(Mr))){let _i,ui=tB(Mr),yn=cl(tB(Cr),gge(Cr)<0?qc:hf);if(_i=vo(ui,yn,3,Wn)){let hi=eE([yT(Cr)],[yT(Mr)]);if(cl(lL(Cr),hi)===cl(lL(Mr),hi))return _i&vo(cl(aF(Cr),hi),aF(Mr),3,Wn)}}return 0}function Oi(Cr,Mr){var Wn;let Lr=Cd(Cr),_i=k4r(Lr,Mr);if(!_i)return 0;let ui=1;for(let ea of _i)if(ui*=tfs(YV(ea)),ui>25)return(Wn=Qi)==null||Wn.instant(Qi.Phase.CheckTypes,"typeRelatedToDiscriminatedType_DepthLimit",{sourceId:Cr.id,targetId:Mr.id,numCombinations:ui}),0;let yn=new Array(_i.length),hi=new Set;for(let ea=0;ea<_i.length;ea++){let Ls=_i[ea],Ba=YV(Ls);yn[ea]=Ba.flags&1048576?Ba.types:[Ba],hi.add(Ls.escapedName)}let vs=Bf(yn),pi=[];for(let ea of vs){let Ls=!1;e:for(let Ba of Mr.types){for(let pa=0;pa<_i.length;pa++){let ig=_i[pa],Bg=yg(Ba,ig.escapedName);if(!Bg)continue e;if(ig===Bg)continue;if(!Qo(Cr,Mr,ig,Bg,Ty=>ea[pa],!1,0,nt||E===YE))continue e}da(pi,Ba,Qg),Ls=!0}if(!Ls)return 0}let Xs=-1;for(let ea of pi)if(Xs&=Fg(Cr,ea,!1,hi,!1,0),Xs&&(Xs&=Xt(Cr,ea,0,!1,0),Xs&&(Xs&=Xt(Cr,ea,1,!1,0),Xs&&!(cA(Cr)&&cA(ea))&&(Xs&=Al(Cr,ea,!1,!1,0)))),!Xs)return Xs;return Xs}function ms(Cr,Mr){if(!Mr||Cr.length===0)return Cr;let Wn;for(let Lr=0;Lr5?au(Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more,Ys(Cr),Ys(Mr),Ot(ui.slice(0,4),yn=>$c(yn)).join(", "),ui.length-4):au(Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2,Ys(Cr),Ys(Mr),Ot(ui,yn=>$c(yn)).join(", ")),_i&&Ve&&Vo++)}function Fg(Cr,Mr,Wn,Lr,_i,ui){if(E===jb)return Jg(Cr,Mr,Lr);let yn=-1;if(cA(Mr)){if(tO(Cr)){if(!Mr.target.readonly&&(Cge(Cr)||cA(Cr)&&Cr.target.readonly))return 0;let ea=gL(Cr),Ls=gL(Mr),Ba=cA(Cr)?Cr.target.combinedFlags&4:4,pa=Mr.target.combinedFlags&4,ig=cA(Cr)?Cr.target.minLength:0,Bg=Mr.target.minLength;if(!Ba&&ea=jE?Ls-1-Math.min(jre,oW):tR,lH=Mr.target.elementFlags[aW];if(lH&8&&!(iE&8))return Wn&&au(Z.Source_provides_no_match_for_variadic_element_at_position_0_in_target,aW),0;if(iE&8&&!(lH&12))return Wn&&au(Z.Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target,tR,aW),0;if(lH&1&&!(iE&1))return Wn&&au(Z.Source_provides_no_match_for_required_element_at_position_0_in_target,aW),0;if(cH&&((iE&12||lH&12)&&(cH=!1),cH&&Lr?.has(""+tR)))continue;let Wye=dF(Xp[tR],!!(iE&lH&2)),IJ=Ty[aW],Fge=iE&8&&lH&4?V_(IJ):dF(IJ,!!(lH&2)),Pye=vo(Wye,Fge,3,Wn,void 0,ui);if(!Pye)return Wn&&(Ls>1||ea>1)&&(aO&&tR>=jE&&jre>=oW&&jE!==ea-oW-1?Qu(Z.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target,jE,ea-oW-1,aW):Qu(Z.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target,tR,aW)),0;yn&=Pye}return yn}if(Mr.target.combinedFlags&12)return 0}let hi=(E===VN||E===QB)&&!iO(Cr)&&!J$e(Cr)&&!cA(Cr),vs=fPt(Cr,Mr,hi,!1);if(vs)return Wn&&Bt(Cr,Mr)&&Ha(Cr,Mr,vs,hi),0;if(iO(Mr)){for(let ea of ms(Cd(Cr),Lr))if(!JM(Mr,ea.escapedName)&&!(co(ea).flags&32768))return Wn&&au(Z.Property_0_does_not_exist_on_type_1,$c(ea),Ys(Mr)),0}let pi=Cd(Mr),Xs=cA(Cr)&&cA(Mr);for(let ea of ms(pi,Lr)){let Ls=ea.escapedName;if(!(ea.flags&4194304)&&(!Xs||bN(Ls)||Ls==="length")&&(!_i||ea.flags&16777216)){let Ba=yg(Cr,Ls);if(Ba&&Ba!==ea){let pa=Qo(Cr,Mr,Ba,ea,YV,Wn,ui,E===YE);if(!pa)return 0;yn&=pa}}}return yn}function Jg(Cr,Mr,Wn){if(!(Cr.flags&524288&&Mr.flags&524288))return 0;let Lr=ms(UV(Cr),Wn),_i=ms(UV(Mr),Wn);if(Lr.length!==_i.length)return 0;let ui=-1;for(let yn of Lr){let hi=JM(Mr,yn.escapedName);if(!hi)return 0;let vs=ePt(yn,hi,vo);if(!vs)return 0;ui&=vs}return ui}function Xt(Cr,Mr,Wn,Lr,_i){var ui,yn;if(E===jb)return po(Cr,Mr,Wn);if(Mr===_f||Cr===_f)return-1;let hi=Cr.symbol&&$N(Cr.symbol.valueDeclaration),vs=Mr.symbol&&$N(Mr.symbol.valueDeclaration),pi=Ou(Cr,hi&&Wn===1?0:Wn),Xs=Ou(Mr,vs&&Wn===1?0:Wn);if(Wn===1&&pi.length&&Xs.length){let ig=!!(pi[0].flags&4),Bg=!!(Xs[0].flags&4);if(ig&&!Bg)return Lr&&au(Z.Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type),0;if(!gp(pi[0],Xs[0],Lr))return 0}let ea=-1,Ls=Wn===1?Xi:li,Ba=ia(Cr),pa=ia(Mr);if(Ba&64&&pa&64&&Cr.symbol===Mr.symbol||Ba&4&&pa&4&&Cr.target===Mr.target){w.assertEqual(pi.length,Xs.length);for(let ig=0;igQV(jE,void 0,262144,Wn);return au(Z.Type_0_is_not_assignable_to_type_1,Ty(Bg),Ty(Xp)),au(Z.Types_of_construct_signatures_are_incompatible),ea}}else e:for(let ig of Xs){let Bg=Ng(),Xp=Lr;for(let Ty of pi){let jE=Co(Ty,ig,!0,Xp,_i,Ls(Ty,ig));if(jE){ea&=jE,ma(Bg);continue e}Xp=!1}return Xp&&au(Z.Type_0_provides_no_match_for_the_signature_1,Ys(Cr),QV(ig,void 0,void 0,Wn)),0}return ea}function Bt(Cr,Mr){let Wn=SZe(Cr,0),Lr=SZe(Cr,1),_i=UV(Cr);return(Wn.length||Lr.length)&&!_i.length?!!(Ou(Mr,0).length&&Wn.length||Ou(Mr,1).length&&Lr.length):!0}function li(Cr,Mr){return Cr.parameters.length===0&&Mr.parameters.length===0?(Wn,Lr)=>Qu(Z.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1,Ys(Wn),Ys(Lr)):(Wn,Lr)=>Qu(Z.Call_signature_return_types_0_and_1_are_incompatible,Ys(Wn),Ys(Lr))}function Xi(Cr,Mr){return Cr.parameters.length===0&&Mr.parameters.length===0?(Wn,Lr)=>Qu(Z.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1,Ys(Wn),Ys(Lr)):(Wn,Lr)=>Qu(Z.Construct_signature_return_types_0_and_1_are_incompatible,Ys(Wn),Ys(Lr))}function Co(Cr,Mr,Wn,Lr,_i,ui){let yn=E===VN?16:E===QB?24:0;return X3t(Wn?$0e(Cr):Cr,Wn?$0e(Mr):Mr,yn,Lr,au,ui,hi,hf);function hi(vs,pi,Xs){return vo(vs,pi,3,Xs,void 0,_i)}}function po(Cr,Mr,Wn){let Lr=Ou(Cr,Wn),_i=Ou(Mr,Wn);if(Lr.length!==_i.length)return 0;let ui=-1;for(let yn=0;ynvs.keyType===Jt),hi=-1;for(let vs of ui){let pi=E!==QB&&!Wn&&yn&&vs.type.flags&1?-1:qb(Cr)&&yn?vo(aF(Cr),vs.type,3,Lr):iu(Cr,vs,Lr,_i);if(!pi)return 0;hi&=pi}return hi}function iu(Cr,Mr,Wn,Lr){let _i=j0e(Cr,Mr.keyType);return _i?Pc(_i,Mr,Wn,Lr):!(Lr&1)&&(E!==QB||ia(Cr)&8192)&&$$e(Cr)?ko(Cr,Mr,Wn,Lr):(Wn&&au(Z.Index_signature_for_type_0_is_missing_in_type_1,Ys(Mr.keyType),Ys(Cr)),0)}function vu(Cr,Mr){let Wn=ty(Cr),Lr=ty(Mr);if(Wn.length!==Lr.length)return 0;for(let _i of Lr){let ui=sk(Cr,_i.keyType);if(!(ui&&vo(ui.type,_i.type,3)&&ui.isReadonly===_i.isReadonly))return 0}return-1}function gp(Cr,Mr,Wn){if(!Cr.declaration||!Mr.declaration)return!0;let Lr=W5(Cr.declaration,6),_i=W5(Mr.declaration,6);return _i===2||_i===4&&Lr!==2||_i!==4&&!Lr?!0:(Wn&&au(Z.Cannot_assign_a_0_constructor_type_to_a_1_constructor_type,sge(Lr),sge(_i)),!1)}}function K3t(l){if(l.flags&16)return!1;if(l.flags&3145728)return!!X(l.types,K3t);if(l.flags&465829888){let C=U4(l);if(C&&C!==l)return K3t(C)}return BT(l)||!!(l.flags&134217728)||!!(l.flags&268435456)}function n4r(l,C){return cA(l)&&cA(C)?v:Cd(C).filter(E=>O$e(LI(l,E.escapedName),co(E)))}function O$e(l,C){return!!l&&!!C&&KI(l,32768)&&!!Aye(C)}function Wds(l){return Cd(l).filter(C=>Aye(co(C)))}function i4r(l,C,E=H3t){return T8r(l,C,E)||qys(l,C)||$ys(l,C)||ebs(l,C)||tbs(l,C)}function j3t(l,C,E){let D=l.types,W=D.map(se=>se.flags&402784252?0:-1);for(let[se,Ee]of C){let Ve=!1;for(let Oe=0;OeW[Ee]),0):l;return M.flags&131072?l:M}function z3t(l){if(l.flags&524288){let C=bT(l);return C.callSignatures.length===0&&C.constructSignatures.length===0&&C.indexInfos.length===0&&C.properties.length>0&&he(C.properties,E=>!!(E.flags&16777216))}return l.flags&33554432?z3t(l.baseType):l.flags&2097152?he(l.types,z3t):!1}function Pds(l,C,E){for(let D of Cd(l))if(Bet(C,D.escapedName,E))return!0;return!1}function q3t(l){return l===Fn||l===Bs||l.objectFlags&8?Fe:o4r(l.symbol,l.typeParameters)}function s4r(l){return o4r(l,al(l).typeParameters)}function o4r(l,C=v){var E,D;let W=al(l);if(!W.variances){(E=Qi)==null||E.push(Qi.Phase.CheckTypes,"getVariancesWorker",{arity:C.length,id:Fh(kp(l))});let M=vc,se=mo;vc||(vc=!0,mo=Wi.length),W.variances=v;let Ee=[];for(let Ve of C){let Oe=$3t(Ve),ot=Oe&16384?Oe&8192?0:1:Oe&8192?2:void 0;if(ot===void 0){let Wt=!1,Rt=!1,Qr=ug;ug=mi=>mi?Rt=!0:Wt=!0;let ln=MZe(l,Ve,uI),hn=MZe(l,Ve,U0);ot=(bg(hn,ln)?1:0)|(bg(ln,hn)?2:0),ot===3&&bg(MZe(l,Ve,K0),ln)&&(ot=4),ug=Qr,(Wt||Rt)&&(Wt&&(ot|=8),Rt&&(ot|=16))}Ee.push(ot)}M||(vc=!1,mo=se),W.variances=Ee,(D=Qi)==null||D.pop({variances:Ee.map(w.formatVariance)})}return W.variances}function MZe(l,C,E){let D=$M(C,E),W=kp(l);if(QA(W))return W;let M=l.flags&524288?kre(l,ok(al(l).typeParameters,D)):uL(W,ok(W.typeParameters,D));return kr.add(Fh(M)),M}function Q$e(l){return kr.has(Fh(l))}function $3t(l){var C;return Nd((C=l.symbol)==null?void 0:C.declarations,(E,D)=>E|R_(D),0)&28672}function Ods(l,C){for(let E=0;E!!(C.flags&262144)||M$e(C))}function Hds(l,C,E,D){let W=[],M="",se=Ve(l,0),Ee=Ve(C,0);return`${M}${se},${Ee}${E}`;function Ve(Oe,ot=0){let Wt=""+Oe.target.id;for(let Rt of af(Oe)){if(Rt.flags&262144){if(D||Qds(Rt)){let Qr=W.indexOf(Rt);Qr<0&&(Qr=W.length,W.push(Rt)),Wt+="="+Qr;continue}M="*"}else if(ot<4&&M$e(Rt)){Wt+="<"+Ve(Rt,ot+1)+">";continue}Wt+="-"+Rt.id}return Wt}}function H$e(l,C,E,D,W){if(D===jb&&l.id>C.id){let se=l;l=C,C=se}let M=E?":"+E:"";return M$e(l)&&M$e(C)?Hds(l,C,M,W):`${l.id},${C.id}${M}`}function HZe(l,C){if(cI(l)&6){for(let E of l.links.containingType.types){let D=yg(E,l.escapedName),W=D&&HZe(D,C);if(W)return W}return}return C(l)}function Y7(l){return l.parent&&l.parent.flags&32?kp(a_(l)):void 0}function Y$e(l){let C=Y7(l),E=C&&Sa(C)[0];return E&&LI(E,l.escapedName)}function Yds(l,C){return HZe(l,E=>{let D=Y7(E);return D?wre(D,C):!1})}function Xds(l,C){return!HZe(C,E=>V1(E)&4?!Yds(l,Y7(E)):!1)}function a4r(l,C,E){return HZe(C,D=>V1(D,E)&4?!wre(l,Y7(D)):!1)?void 0:l}function X7(l,C,E,D=3){if(E>=D){if((ia(l)&96)===96&&(l=c4r(l)),l.flags&2097152)return lr(l.types,Ee=>X7(Ee,C,E,D));let W=X$e(l),M=0,se=0;for(let Ee=0;Ee=se&&(M++,M>=D))return!0;se=Ve.id}}}return!1}function c4r(l){let C;for(;(ia(l)&96)===96&&(C=XM(l))&&(C.symbol||C.flags&2097152&&lr(C.types,E=>!!E.symbol));)l=C;return l}function l4r(l,C){return(ia(l)&96)===96&&(l=c4r(l)),l.flags&2097152?lr(l.types,E=>l4r(E,C)):X$e(l)===C}function X$e(l){if(l.flags&524288&&!CPt(l)){if(ia(l)&4&&l.node)return l.node;if(l.symbol&&!(ia(l)&16&&l.symbol.flags&32))return l.symbol;if(cA(l))return l.target}if(l.flags&262144)return l.symbol;if(l.flags&8388608){do l=l.objectType;while(l.flags&8388608);return l}return l.flags&16777216?l.root:l}function Jds(l,C){return ePt(l,C,aye)!==0}function ePt(l,C,E){if(l===C)return-1;let D=V1(l)&6,W=V1(C)&6;if(D!==W)return 0;if(D){if(Jre(l)!==Jre(C))return 0}else if((l.flags&16777216)!==(C.flags&16777216))return 0;return wT(l)!==wT(C)?0:E(co(l),co(C))}function Uds(l,C,E){let D=nE(l),W=nE(C),M=eR(l),se=eR(C),Ee=vD(l),Ve=vD(C);return!!(D===W&&M===se&&Ee===Ve||E&&M<=se)}function YZe(l,C,E,D,W,M){if(l===C)return-1;if(!Uds(l,C,E)||O(l.typeParameters)!==O(C.typeParameters))return 0;if(C.typeParameters){let Ve=eE(l.typeParameters,C.typeParameters);for(let Oe=0;OeC|(E.flags&1048576?u4r(E.types):E.flags),0)}function zds(l){if(l.length===1)return l[0];let C=nt?Ar(l,D=>WC(D,W=>!(W.flags&98304))):l,E=jds(C)?wa(C):Nd(C,(D,W)=>$V(D,W)?W:D);return C===l?E:UZe(E,u4r(l)&98304)}function qds(l){return Nd(l,(C,E)=>$V(E,C)?E:C)}function jB(l){return!!(ia(l)&4)&&(l.target===Fn||l.target===Bs)}function Cge(l){return!!(ia(l)&4)&&l.target===Bs}function tO(l){return jB(l)||cA(l)}function XZe(l){return jB(l)&&!Cge(l)||cA(l)&&!l.target.readonly}function JZe(l){return jB(l)?af(l)[0]:void 0}function fL(l){return jB(l)||!(l.flags&98304)&&bg(l,_C)}function tPt(l){return XZe(l)||!(l.flags&98305)&&bg(l,np)}function rPt(l){if(!(ia(l)&4)||!(ia(l.target)&3))return;if(ia(l)&33554432)return ia(l)&67108864?l.cachedEquivalentBaseType:void 0;l.objectFlags|=33554432;let C=l.target;if(ia(C)&1){let W=UP(C);if(W&&W.expression.kind!==80&&W.expression.kind!==211)return}let E=Sa(C);if(E.length!==1||JV(l.symbol).size)return;let D=O(C.typeParameters)?cl(E[0],eE(C.typeParameters,af(l).slice(0,C.typeParameters.length))):E[0];return O(af(l))>O(C.typeParameters)&&(D=KE(D,Ta(af(l)))),l.objectFlags|=67108864,l.cachedEquivalentBaseType=D}function g4r(l){return nt?l===Yc:l===Pe}function J$e(l){let C=JZe(l);return!!C&&g4r(C)}function mge(l){let C;return cA(l)||!!yg(l,"0")||fL(l)&&!!(C=LI(l,"length"))&&rE(C,E=>!!(E.flags&256))}function U$e(l){return fL(l)||mge(l)}function A4r(l,C){let E=LI(l,""+C);if(E)return E;if(rE(l,cA))return I4r(l,C,Ne.noUncheckedIndexedAccess?wn:void 0)}function $ds(l){return!(l.flags&240544)}function BT(l){return!!(l.flags&109472)}function d4r(l){let C=yD(l);return C.flags&2097152?lr(C.types,BT):BT(C)}function eps(l){return l.flags&2097152&&be(l.types,BT)||l}function uye(l){return l.flags&16?!0:l.flags&1048576?l.flags&1024?!0:he(l.types,BT):BT(l)}function gF(l){return l.flags&1056?G7(l):l.flags&402653312?Jt:l.flags&256?bt:l.flags&2048?Vt:l.flags&512?ds:l.flags&1048576?tps(l):l}function tps(l){let C=`B${Fh(l)}`;return TP(C)??jZ(C,Qf(l,gF))}function nPt(l){return l.flags&402653312?Jt:l.flags&288?bt:l.flags&2048?Vt:l.flags&512?ds:l.flags&1048576?Qf(l,nPt):l}function rO(l){return l.flags&1056&&qM(l)?G7(l):l.flags&128&&qM(l)?Jt:l.flags&256&&qM(l)?bt:l.flags&2048&&qM(l)?Vt:l.flags&512&&qM(l)?ds:l.flags&1048576?Qf(l,rO):l}function p4r(l){return l.flags&8192?Es:l.flags&1048576?Qf(l,p4r):l}function iPt(l,C){return Oet(l,C)||(l=p4r(rO(l))),ry(l)}function rps(l,C,E){if(l&&BT(l)){let D=C?E?Nye(C):C:void 0;l=iPt(l,D)}return l}function sPt(l,C,E,D){if(l&&BT(l)){let W=C?sH(E,C,D):void 0;l=iPt(l,W)}return l}function cA(l){return!!(ia(l)&4&&l.target.objectFlags&8)}function tW(l){return cA(l)&&!!(l.target.combinedFlags&8)}function f4r(l){return tW(l)&&l.target.elementFlags.length===1}function K$e(l){return hge(l,l.target.fixedLength)}function I4r(l,C,E){return Qf(l,D=>{let W=D,M=K$e(W);return M?E&&C>=v3t(W.target)?wa([M,E]):M:wn})}function nps(l){let C=K$e(l);return C&&V_(C)}function hge(l,C,E=0,D=!1,W=!1){let M=gL(l)-E;if(C(E&12)===(C.target.elementFlags[D]&12))}function C4r({value:l}){return l.base10Value==="0"}function m4r(l){return WC(l,C=>vT(C,4194304))}function sps(l){return Qf(l,ops)}function ops(l){return l.flags&4?Tr:l.flags&8?xn:l.flags&64?ci:l===On||l===dn||l.flags&114691||l.flags&128&&l.value===""||l.flags&256&&l.value===0||l.flags&2048&&C4r(l)?l:Vi}function UZe(l,C){let E=C&~l.flags&98304;return E===0?l:wa(E===32768?[l,wn]:E===65536?[l,ur]:[l,wn,ur])}function rW(l,C=!1){w.assert(nt);let E=C?sn:wn;return l===E||l.flags&1048576&&l.types[0]===E?l:wa([l,E])}function aps(l){return Ub||(Ub=Fre("NonNullable",524288,void 0)||en),Ub!==en?kre(Ub,[l]):Og([l,Lc])}function AF(l){return nt?aJ(l,2097152):l}function h4r(l){return nt?wa([l,Qe]):l}function j$e(l){return nt?aet(l,Qe):l}function z$e(l,C,E){return E?R3(C)?rW(l):h4r(l):l}function gye(l,C){return d8(C)?AF(l):Gm(C)?j$e(l):l}function dF(l,C){return He&&C?aet(l,ar):l}function Aye(l){return l===ar||!!(l.flags&1048576)&&l.types[0]===ar}function q$e(l){return He?aet(l,ar):Kv(l,524288)}function cps(l,C){return(l.flags&524)!==0&&(C.flags&28)!==0}function $$e(l){let C=ia(l);return l.flags&2097152?he(l.types,$$e):!!(l.symbol&&l.symbol.flags&7040&&!(l.symbol.flags&32)&&!stt(l))||!!(C&4194304)||!!(C&1024&&$$e(l.source))}function iJ(l,C){let E=wA(l.flags,l.escapedName,cI(l)&8);E.declarations=l.declarations,E.parent=l.parent,E.links.type=C,E.links.target=l,l.valueDeclaration&&(E.valueDeclaration=l.valueDeclaration);let D=al(l).nameType;return D&&(E.links.nameType=D),E}function lps(l,C){let E=xu();for(let D of UV(l)){let W=co(D),M=C(W);E.set(D.escapedName,M===W?D:iJ(D,M))}return E}function dye(l){if(!(iO(l)&&ia(l)&8192))return l;let C=l.regularType;if(C)return C;let E=l,D=lps(l,dye),W=qn(E.symbol,D,E.callSignatures,E.constructSignatures,E.indexInfos);return W.flags=E.flags,W.objectFlags|=E.objectFlags&-8193,l.regularType=W,W}function _4r(l,C,E){return{parent:l,propertyName:C,siblings:E,resolvedProperties:void 0}}function y4r(l){if(!l.siblings){let C=[];for(let E of y4r(l.parent))if(iO(E)){let D=JM(E,l.propertyName);D&&cJ(co(D),W=>{C.push(W)})}l.siblings=C}return l.siblings}function ups(l){if(!l.resolvedProperties){let C=new Map;for(let E of y4r(l))if(iO(E)&&!(ia(E)&2097152))for(let D of Cd(E))C.set(D.escapedName,D);l.resolvedProperties=on(C.values())}return l.resolvedProperties}function gps(l,C){if(!(l.flags&4))return l;let E=co(l),D=C&&_4r(C,l.escapedName,void 0),W=oPt(E,D);return W===E?l:iJ(l,W)}function Aps(l){let C=vA.get(l.escapedName);if(C)return C;let E=iJ(l,sn);return E.flags|=16777216,vA.set(l.escapedName,E),E}function dps(l,C){let E=xu();for(let W of UV(l))E.set(W.escapedName,gps(W,C));if(C)for(let W of ups(C))E.has(W.escapedName)||E.set(W.escapedName,Aps(W));let D=qn(l.symbol,E,v,v,Ar(ty(l),W=>bD(W.keyType,tE(W.type),W.isReadonly)));return D.objectFlags|=ia(l)&266240,D}function tE(l){return oPt(l,void 0)}function oPt(l,C){if(ia(l)&196608){if(C===void 0&&l.widened)return l.widened;let E;if(l.flags&98305)E=Mt;else if(iO(l))E=dps(l,C);else if(l.flags&1048576){let D=C||_4r(void 0,void 0,l.types),W=Ar(l.types,M=>M.flags&98304?M:oPt(M,D));E=wa(W,lr(W,uF)?2:1)}else l.flags&2097152?E=Og(Ar(l.types,tE)):tO(l)&&(E=uL(l.target,Ar(af(l),tE)));return E&&C===void 0&&(l.widened=E),E||l}return l}function eet(l){let C=!1;if(ia(l)&65536){if(l.flags&1048576)if(lr(l.types,uF))C=!0;else for(let E of l.types)eet(E)&&(C=!0);if(tO(l))for(let E of af(l))eet(E)&&(C=!0);if(iO(l))for(let E of UV(l)){let D=co(E);ia(D)&65536&&(eet(D)||fr(E.valueDeclaration,Z.Object_literal_s_property_0_implicitly_has_an_1_type,$c(E),Ys(tE(D))),C=!0)}}return C}function nO(l,C,E){let D=Ys(tE(C));if(io(l)&&!v6(ls(l),Ne))return;let W;switch(l.kind){case 226:case 172:case 171:W=dt?Z.Member_0_implicitly_has_an_1_type:Z.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 169:let M=l;if(sr(M.name)){let se=QR(M.name);if((mV(M.parent)||zS(M.parent)||H(M.parent))&&M.parent.parameters.includes(M)&&(Pi(M,M.name.escapedText,788968,void 0,!0)||se&&jme(se))){let Ee="arg"+M.parent.parameters.indexOf(M),Ve=kd(M.name)+(M.dotDotDotToken?"[]":"");qm(dt,l,Z.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1,Ee,Ve);return}}W=l.dotDotDotToken?dt?Z.Rest_parameter_0_implicitly_has_an_any_type:Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:dt?Z.Parameter_0_implicitly_has_an_1_type:Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 208:if(W=Z.Binding_element_0_implicitly_has_an_1_type,!dt)return;break;case 317:fr(l,Z.Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,D);return;case 323:dt&&dte(l.parent)&&fr(l.parent.tagName,Z.This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation,D);return;case 262:case 174:case 173:case 177:case 178:case 218:case 219:if(dt&&!l.name){E===3?fr(l,Z.Generator_implicitly_has_yield_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_return_type_annotation,D):fr(l,Z.Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,D);return}W=dt?E===3?Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:Z._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage;break;case 200:dt&&fr(l,Z.Mapped_object_type_implicitly_has_an_any_template_type);return;default:W=dt?Z.Variable_0_implicitly_has_an_1_type:Z.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage}qm(dt,l,W,kd(Sl(l)),D)}function tet(l,C,E){u(()=>{dt&&ia(C)&65536&&(!E||!MPt(l))&&(eet(C)||nO(l,C,E))})}function aPt(l,C,E){let D=nE(l),W=nE(C),M=Eye(l),se=Eye(C),Ee=se?W-1:W,Ve=M?Ee:Math.min(D,Ee),Oe=zP(l);if(Oe){let ot=zP(C);ot&&E(Oe,ot)}for(let ot=0;otC.typeParameter),Ot(l.inferences,(C,E)=>()=>(C.isFixed||(Cps(l),ret(l.inferences),C.isFixed=!0),mPt(l,E))))}function Ips(l){return P3t(Ot(l.inferences,C=>C.typeParameter),Ot(l.inferences,(C,E)=>()=>mPt(l,E)))}function ret(l){for(let C of l)C.isFixed||(C.inferredType=void 0)}function uPt(l,C,E){(l.intraExpressionInferenceSites??(l.intraExpressionInferenceSites=[])).push({node:C,type:E})}function Cps(l){if(l.intraExpressionInferenceSites){for(let{node:C,type:E}of l.intraExpressionInferenceSites){let D=C.kind===174?BJr(C,2):wy(C,2);D&&pF(l.inferences,E,D)}l.intraExpressionInferenceSites=void 0}}function gPt(l){return{typeParameter:l,candidates:void 0,contraCandidates:void 0,inferredType:void 0,priority:void 0,topLevel:!0,isFixed:!1,impliedArity:void 0}}function b4r(l){return{typeParameter:l.typeParameter,candidates:l.candidates&&l.candidates.slice(),contraCandidates:l.contraCandidates&&l.contraCandidates.slice(),inferredType:l.inferredType,priority:l.priority,topLevel:l.topLevel,isFixed:l.isFixed,impliedArity:l.impliedArity}}function mps(l){let C=Gt(l.inferences,Xre);return C.length?lPt(Ot(C,b4r),l.signature,l.flags,l.compareTypes):void 0}function APt(l){return l&&l.mapper}function nW(l){let C=ia(l);if(C&524288)return!!(C&1048576);let E=!!(l.flags&465829888||l.flags&524288&&!E4r(l)&&(C&4&&(l.node||lr(af(l),nW))||C&134217728&&O(l.outerTypeParameters)||C&16&&l.symbol&&l.symbol.flags&14384&&l.symbol.declarations||C&12583968)||l.flags&3145728&&!(l.flags&1024)&&!E4r(l)&&lr(l.types,nW));return l.flags&3899393&&(l.objectFlags|=524288|(E?1048576:0)),E}function E4r(l){if(l.aliasSymbol&&!l.aliasTypeArguments){let C=qd(l.aliasSymbol,265);return!!(C&&Si(C.parent,E=>E.kind===307?!0:E.kind===267?!1:"quit"))}return!1}function fye(l,C,E=0){return!!(l===C||l.flags&3145728&&lr(l.types,D=>fye(D,C,E))||E<3&&l.flags&16777216&&(fye(qP(l),C,E+1)||fye($P(l),C,E+1)))}function hps(l,C){let E=JB(l);return E?!!E.type&&fye(E.type,C):fye(wd(l),C)}function _ps(l){let C=xu();cJ(l,D=>{if(!(D.flags&128))return;let W=Dd(D.value),M=wA(4,W);M.links.type=Mt,D.symbol&&(M.declarations=D.symbol.declarations,M.valueDeclaration=D.symbol.valueDeclaration),C.set(W,M)});let E=l.flags&4?[bD(Jt,Lc,!1)]:v;return qn(void 0,C,v,v,E)}function B4r(l,C,E){let D=l.id+","+C.id+","+E.id;if(Fm.has(D))return Fm.get(D);let W=yps(l,C,E);return Fm.set(D,W),W}function dPt(l){return!(ia(l)&262144)||iO(l)&&lr(Cd(l),C=>dPt(co(C)))||cA(l)&&lr(jM(l),dPt)}function yps(l,C,E){if(!(sk(l,Jt)||Cd(l).length!==0&&dPt(l)))return;if(jB(l)){let W=net(af(l)[0],C,E);return W?V_(W,Cge(l)):void 0}if(cA(l)){let W=Ot(jM(l),se=>net(se,C,E));if(!he(W,se=>!!se))return;let M=_D(C)&4?Ar(l.target.elementFlags,se=>se&2?1:se):l.target.elementFlags;return ED(W,M,l.target.readonly,l.target.labeledElementDeclarations)}let D=J1(1040,void 0);return D.source=l,D.mappedType=C,D.constraintType=E,D}function bps(l){let C=al(l);return C.type||(C.type=net(l.links.propertyType,l.links.mappedType,l.links.constraintType)||Kr),C.type}function Eps(l,C,E){let D=$b(E.type,yT(C)),W=aF(C),M=gPt(D);return pF([M],l,W),v4r(M)||Kr}function net(l,C,E){let D=l.id+","+C.id+","+E.id;if(Jf.has(D))return Jf.get(D)||Kr;xM.push(l),ek.push(C);let W=kM;X7(l,xM,xM.length,2)&&(kM|=1),X7(C,ek,ek.length,2)&&(kM|=2);let M;return kM!==3&&(M=Eps(l,C,E)),xM.pop(),ek.pop(),kM=W,Jf.set(D,M),M}function*pPt(l,C,E,D){let W=Cd(C);for(let M of W)if(!dYr(M)&&(E||!(M.flags&16777216||cI(M)&48))){let se=yg(l,M.escapedName);if(!se)yield M;else if(D){let Ee=co(M);if(Ee.flags&109472){let Ve=co(se);Ve.flags&1||ry(Ve)===ry(Ee)||(yield M)}}}}function fPt(l,C,E,D){return ka(pPt(l,C,E,D))}function Bps(l,C){return!(C.target.combinedFlags&8)&&C.target.minLength>l.target.minLength||!C.target.hasRestElement&&(l.target.hasRestElement||C.target.fixedLengthP7(M,W),l)===l&&iet(l,C)}return!1}function T4r(l,C){if(C.flags&2097152)return he(C.types,E=>E===I0||T4r(l,E));if(C.flags&4||bg(l,C))return!0;if(l.flags&128){let E=l.value;return!!(C.flags&8&&w4r(E,!1)||C.flags&64&&hle(E,!1)||C.flags&98816&&E===C.intrinsicName||C.flags&268435456&&iet(fb(E),C)||C.flags&134217728&&set(l,C))}if(l.flags&134217728){let E=l.texts;return E.length===2&&E[0]===""&&E[1]===""&&bg(l.types[0],C)}return!1}function N4r(l,C){return l.flags&128?R4r([l.value],v,C):l.flags&134217728?Je(l.texts,C.texts)?Ot(l.types,(E,D)=>bg(yD(E),yD(C.types[D]))?E:Tps(E)):R4r(l.texts,l.types,C):void 0}function set(l,C){let E=N4r(l,C);return!!E&&he(E,(D,W)=>T4r(D,C.types[W]))}function Tps(l){return l.flags&402653317?l:q4(["",""],[l])}function R4r(l,C,E){let D=l.length-1,W=l[0],M=l[D],se=E.texts,Ee=se.length-1,Ve=se[0],Oe=se[Ee];if(D===0&&W.length0){let ks=Rt,Vo=Qr;for(;Vo=ln(ks).indexOf(Ti,Vo),!(Vo>=0);){if(ks++,ks===l.length)return;Vo=0}hn(ks,Vo),Qr+=Ti.length}else if(Qr!Ue(vo,md)):As,rl?Gt(Fs,md=>!Ue(rl,md)):Fs]}function ks(As,Fs,Wc){let vo=As.length!!Cs(rl));if(!vo||Fs&&vo!==Fs)return;Fs=vo}return Fs}function jo(As,Fs,Wc){let vo=0;if(Wc&1048576){let rl,md=As.flags&1048576?As.types:[As],ed=new Array(md.length),W_=!1;for(let Eg of Fs)if(Cs(Eg))rl=Eg,vo++;else for(let y0=0;y0ed[Kf]?void 0:y0);if(Eg.length){Rt(wa(Eg),rl);return}}}else for(let rl of Fs)Cs(rl)?vo++:Rt(As,rl);if(Wc&2097152?vo===1:vo>0)for(let rl of Fs)Cs(rl)&&Qr(As,rl,1)}function Ca(As,Fs,Wc){if(Wc.flags&1048576||Wc.flags&2097152){let vo=!1;for(let rl of Wc.types)vo=Ca(As,Fs,rl)||vo;return vo}if(Wc.flags&4194304){let vo=Cs(Wc.type);if(vo&&!vo.isFixed&&!S4r(As)){let rl=B4r(As,Fs,Wc);rl&&Qr(rl,vo.typeParameter,ia(As)&262144?16:8)}return!0}if(Wc.flags&262144){Qr(UN(As,As.pattern?2:0),Wc,32);let vo=U4(Wc);if(vo&&Ca(As,Fs,vo))return!0;let rl=Ot(Cd(As),co),md=Ot(ty(As),ed=>ed!==Ri?ed.type:Vi);return Rt(wa(vi(rl,md)),aF(Fs)),!0}return!1}function ma(As,Fs){if(As.flags&16777216)Rt(As.checkType,Fs.checkType),Rt(As.extendsType,Fs.extendsType),Rt(qP(As),qP(Fs)),Rt($P(As),$P(Fs));else{let Wc=[qP(Fs),$P(Fs)];hn(As,Wc,Fs.flags,W?64:0)}}function Ng(As,Fs){let Wc=N4r(As,Fs),vo=Fs.types;if(Wc||he(Fs.texts,rl=>rl.length===0))for(let rl=0;rljf|nB.flags,0);if(!(Kf&4)){let jf=md.value;Kf&296&&!w4r(jf,!0)&&(Kf&=-297),Kf&2112&&!hle(jf,!0)&&(Kf&=-2113);let nB=Nd(y0,(jI,PC)=>PC.flags&Kf?jI.flags&4?jI:PC.flags&4?md:jI.flags&134217728?jI:PC.flags&134217728&&set(md,PC)?md:jI.flags&268435456?jI:PC.flags&268435456&&jf===vXr(PC.symbol,jf)?md:jI.flags&128?jI:PC.flags&128&&PC.value===jf?PC:jI.flags&8?jI:PC.flags&8?pw(+jf):jI.flags&32?jI:PC.flags&32?pw(+jf):jI.flags&256?jI:PC.flags&256&&PC.value===+jf?PC:jI.flags&64?jI:PC.flags&64?wps(jf):jI.flags&2048?jI:PC.flags&2048&&AV(PC.value)===jf?PC:jI.flags&16?jI:PC.flags&16?jf==="true"?Qn:jf==="false"?dn:ds:jI.flags&512?jI:PC.flags&512&&PC.intrinsicName===jf?PC:jI.flags&32768?jI:PC.flags&32768&&PC.intrinsicName===jf?PC:jI.flags&65536?jI:PC.flags&65536&&PC.intrinsicName===jf?PC:jI:jI,Vi);if(!(nB.flags&131072)){Rt(nB,ed);continue}}}}Rt(md,ed)}}function Qu(As,Fs){Rt(tB(As),tB(Fs)),Rt(aF(As),aF(Fs));let Wc=lL(As),vo=lL(Fs);Wc&&vo&&Rt(Wc,vo)}function ZA(As,Fs){var Wc,vo;if(ia(As)&4&&ia(Fs)&4&&(As.target===Fs.target||jB(As)&&jB(Fs))){ks(af(As),af(Fs),q3t(As.target));return}if(qb(As)&&qb(Fs)&&Qu(As,Fs),ia(Fs)&32&&!Fs.declaration.nameType){let rl=tB(Fs);if(Ca(As,Fs,rl))return}if(!vps(As,Fs)){if(tO(As)){if(cA(Fs)){let rl=gL(As),md=gL(Fs),ed=af(Fs),W_=Fs.target.elementFlags;if(cA(As)&&ips(As,Fs)){for(let Kf=0;Kf0){let md=Ou(Fs,Wc),ed=md.length;for(let W_=0;W_1){let C=Gt(l,CPt);if(C.length){let E=wa(C,2);return vi(Gt(l,D=>!CPt(D)),[E])}}return l}function Gps(l){return l.priority&416?Og(l.contraCandidates):qds(l.contraCandidates)}function Fps(l,C){let E=kps(l.candidates),D=xps(l.typeParameter)||K4(l.typeParameter),W=!D&&l.topLevel&&(l.isFixed||!hps(C,l.typeParameter)),M=D?Ar(E,ry):W?Ar(E,rO):E,se=l.priority&416?wa(M,2):zds(M);return tE(se)}function mPt(l,C){let E=l.inferences[C];if(!E.inferredType){let D,W;if(l.signature){let se=E.candidates?Fps(E,l.signature):void 0,Ee=E.contraCandidates?Gps(E):void 0;if(se||Ee){let Ve=se&&(!Ee||!(se.flags&131072)&&lr(E.contraCandidates,Oe=>$V(se,Oe))&&he(l.inferences,Oe=>Oe!==E&&vy(Oe.typeParameter)!==E.typeParameter||he(Oe.candidates,ot=>$V(ot,se))));D=Ve?se:Ee,W=Ve?Ee:se}else if(l.flags&1)D=xo;else{let Ve=j4(E.typeParameter);Ve&&(D=cl(Ve,uds(lds(l,C),l.nonFixingMapper)))}}else D=v4r(E);E.inferredType=D||hPt(!!(l.flags&2));let M=vy(E.typeParameter);if(M){let se=cl(M,l.nonFixingMapper);(!D||!l.compareTypes(D,KE(se,D)))&&(E.inferredType=W&&l.compareTypes(W,KE(se,W))?W:se)}}return E.inferredType}function hPt(l){return l?Mt:Kr}function _Pt(l){let C=[];for(let E=0;EXI(C)||Pf(C)||Se(C)))}function KZe(l,C,E,D){switch(l.kind){case 80:if(!aV(l)){let se=Sy(l);return se!==en?`${D?od(D):"-1"}|${Fh(C)}|${Fh(E)}|${Gg(se)}`:void 0}case 110:return`0|${D?od(D):"-1"}|${Fh(C)}|${Fh(E)}`;case 235:case 217:return KZe(l.expression,C,E,D);case 166:let W=KZe(l.left,C,E,D);return W&&`${W}.${l.right.escapedText}`;case 211:case 212:let M=sJ(l);if(M!==void 0){let se=KZe(l.expression,C,E,D);return se&&`${se}.${M}`}if(_A(l)&&sr(l.argumentExpression)){let se=Sy(l.argumentExpression);if(J7(se)||mye(se)&&!iLe(se)){let Ee=KZe(l.expression,C,E,D);return Ee&&`${Ee}.@${Gg(se)}`}}break;case 206:case 207:case 262:case 218:case 219:case 174:return`${od(l)}#${Fh(C)}`}}function Zh(l,C){switch(C.kind){case 217:case 235:return Zh(l,C.expression);case 226:return Im(C)&&Zh(l,C.left)||ro(C)&&C.operatorToken.kind===28&&Zh(l,C.right)}switch(l.kind){case 236:return C.kind===236&&l.keywordToken===C.keywordToken&&l.name.escapedText===C.name.escapedText;case 80:case 81:return aV(l)?C.kind===110:C.kind===80&&Sy(l)===Sy(C)||(js(C)||hl(C))&&X1(Sy(l))===Oo(C);case 110:return C.kind===110;case 108:return C.kind===108;case 235:case 217:return Zh(l.expression,C);case 211:case 212:let E=sJ(l);if(E!==void 0){let D=mp(C)?sJ(C):void 0;if(D!==void 0)return D===E&&Zh(l.expression,C.expression)}if(_A(l)&&_A(C)&&sr(l.argumentExpression)&&sr(C.argumentExpression)){let D=Sy(l.argumentExpression);if(D===Sy(C.argumentExpression)&&(J7(D)||mye(D)&&!iLe(D)))return Zh(l.expression,C.expression)}break;case 166:return mp(C)&&l.right.escapedText===sJ(C)&&Zh(l.left,C.expression);case 226:return ro(l)&&l.operatorToken.kind===28&&Zh(l.right,C)}return!1}function sJ(l){if(fo(l))return l.name.escapedText;if(_A(l))return Zps(l);if(hl(l)){let C=es(l);return C?Dd(C):void 0}if(Uc(l))return""+l.parent.parameters.indexOf(l)}function bPt(l){return l.flags&8192?l.escapedName:l.flags&384?Dd(""+l.value):void 0}function Zps(l){return ZE(l.argumentExpression)?Dd(l.argumentExpression.text):lp(l.argumentExpression)?Lps(l.argumentExpression):void 0}function Lps(l){let C=ZI(l,111551,!0);if(!C||!(J7(C)||C.flags&8))return;let E=C.valueDeclaration;if(E===void 0)return;let D=no(E);if(D){let W=bPt(D);if(W!==void 0)return W}if(mG(E)&&aw(E,l)){let W=see(E);if(W){let M=fu(E.parent)?Xc(E):u_(W);return M&&bPt(M)}if(yV(E))return j9(E.name)}}function x4r(l,C){for(;mp(l);)if(l=l.expression,Zh(l,C))return!0;return!1}function oJ(l,C){for(;Gm(l);)if(l=l.expression,Zh(l,C))return!0;return!1}function _ge(l,C){if(l&&l.flags&1048576){let E=xYr(l,C);if(E&&cI(E)&2)return E.links.isDiscriminantProperty===void 0&&(E.links.isDiscriminantProperty=(E.links.checkFlags&192)===192&&!O7(co(E))),!!E.links.isDiscriminantProperty}return!1}function k4r(l,C){let E;for(let D of l)if(_ge(C,D.escapedName)){if(E){E.push(D);continue}E=[D]}return E}function Vps(l,C){let E=new Map,D=0;for(let W of l)if(W.flags&61603840){let M=LI(W,C);if(M){if(!uye(M))return;let se=!1;cJ(M,Ee=>{let Ve=Fh(ry(Ee)),Oe=E.get(Ve);Oe?Oe!==Kr&&(E.set(Ve,Kr),se=!0):E.set(Ve,W)}),se||D++}}return D>=10&&D*2>=l.length?E:void 0}function jZe(l){let C=l.types;if(!(C.length<10||ia(l)&32768||ft(C,E=>!!(E.flags&59506688))<10)){if(l.keyPropertyName===void 0){let E=X(C,W=>W.flags&59506688?X(Cd(W),M=>BT(co(M))?M.escapedName:void 0):void 0),D=E&&Vps(C,E);l.keyPropertyName=D?E:"",l.constituentMap=D}return l.keyPropertyName.length?l.keyPropertyName:void 0}}function zZe(l,C){var E;let D=(E=l.constituentMap)==null?void 0:E.get(Fh(ry(C)));return D!==Kr?D:void 0}function G4r(l,C){let E=jZe(l),D=E&&LI(C,E);return D&&zZe(l,D)}function Wps(l,C){let E=jZe(l),D=E&&be(C.properties,M=>M.symbol&&M.kind===303&&M.symbol.escapedName===E&&aLe(M.initializer)),W=D&&TLe(D.initializer);return W&&zZe(l,W)}function F4r(l,C){return Zh(l,C)||x4r(l,C)}function Z4r(l,C){if(l.arguments){for(let E of l.arguments)if(F4r(C,E)||oJ(E,C))return!0}return!!(l.expression.kind===211&&F4r(C,l.expression.expression))}function EPt(l){return l.id<=0&&(l.id=fGr,fGr++),l.id}function Pps(l,C){if(!(l.flags&1048576))return bg(l,C);for(let E of l.types)if(bg(E,C))return!0;return!1}function Ops(l,C){if(l===C)return l;if(C.flags&131072)return C;let E=`A${Fh(l)},${Fh(C)}`;return TP(E)??jZ(E,Qps(l,C))}function Qps(l,C){let E=WC(l,W=>Pps(C,W)),D=C.flags&512&&qM(C)?Qf(E,M7):E;return bg(C,D)?D:l}function BPt(l){let C=bT(l);return!!(C.callSignatures.length||C.constructSignatures.length||C.members.get("bind")&&$V(l,$C))}function Vre(l,C){return vPt(l,C)&C}function vT(l,C){return Vre(l,C)!==0}function vPt(l,C){l.flags&467927040&&(l=c_(l)||Kr);let E=l.flags;if(E&268435460)return nt?16317953:16776705;if(E&134217856){let D=E&128&&l.value==="";return nt?D?12123649:7929345:D?12582401:16776705}if(E&40)return nt?16317698:16776450;if(E&256){let D=l.value===0;return nt?D?12123394:7929090:D?12582146:16776450}if(E&64)return nt?16317188:16775940;if(E&2048){let D=C4r(l);return nt?D?12122884:7928580:D?12581636:16775940}return E&16?nt?16316168:16774920:E&528?nt?l===dn||l===On?12121864:7927560:l===dn||l===On?12580616:16774920:E&524288?C&(nt?83427327:83886079)?ia(l)&16&&uF(l)?nt?83427327:83886079:BPt(l)?nt?7880640:16728e3:nt?7888800:16736160:0:E&16384?9830144:E&32768?26607360:E&65536?42917664:E&12288?nt?7925520:16772880:E&67108864?nt?7888800:16736160:E&131072?0:E&1048576?Nd(l.types,(D,W)=>D|vPt(W,C),0):E&2097152?Mps(l,C):83886079}function Mps(l,C){let E=KI(l,402784252),D=0,W=134217727;for(let M of l.types)if(!(E&&M.flags&524288)){let se=vPt(M,C);D|=se,W&=se}return D&8256|W&134209471}function Kv(l,C){return WC(l,E=>vT(E,C))}function aJ(l,C){let E=V4r(Kv(nt&&l.flags&2?o_:l,C));if(nt)switch(C){case 524288:return L4r(E,65536,131072,33554432,ur);case 1048576:return L4r(E,131072,65536,16777216,wn);case 2097152:case 4194304:return Qf(E,D=>vT(D,262144)?aps(D):D)}return E}function L4r(l,C,E,D,W){let M=Vre(l,50528256);if(!(M&C))return l;let se=wa([Lc,W]);return Qf(l,Ee=>vT(Ee,C)?Og([Ee,!(M&D)&&vT(Ee,E)?se:Lc]):Ee)}function V4r(l){return l===o_?Kr:l}function SPt(l,C){return C?wa([Ht(l),u_(C)]):l}function W4r(l,C){var E;let D=dL(C);if(!k2(D))return cr;let W=G2(D);return LI(l,W)||Iye((E=L7(l,W))==null?void 0:E.type)||cr}function P4r(l,C){return rE(l,mge)&&A4r(l,C)||Iye(CL(65,l,wn,void 0))||cr}function Iye(l){return l&&(Ne.noUncheckedIndexedAccess?wa([l,ar]):l)}function O4r(l){return V_(CL(65,l,wn,void 0)||cr)}function Hps(l){return l.parent.kind===209&&wPt(l.parent)||l.parent.kind===303&&wPt(l.parent.parent)?SPt(qZe(l),l.right):u_(l.right)}function wPt(l){return l.parent.kind===226&&l.parent.left===l||l.parent.kind===250&&l.parent.initializer===l}function Yps(l,C){return P4r(qZe(l),l.elements.indexOf(C))}function Xps(l){return O4r(qZe(l.parent))}function Q4r(l){return W4r(qZe(l.parent),l.name)}function Jps(l){return SPt(Q4r(l),l.objectAssignmentInitializer)}function qZe(l){let{parent:C}=l;switch(C.kind){case 249:return Jt;case 250:return GLe(C)||cr;case 226:return Hps(C);case 220:return wn;case 209:return Yps(C,l);case 230:return Xps(C);case 303:return Q4r(C);case 304:return Jps(C)}return cr}function Ups(l){let C=l.parent,E=H4r(C.parent),D=C.kind===206?W4r(E,l.propertyName||l.name):l.dotDotDotToken?O4r(E):P4r(E,C.elements.indexOf(l));return SPt(D,l.initializer)}function M4r(l){return Jo(l).resolvedType||u_(l)}function Kps(l){return l.initializer?M4r(l.initializer):l.parent.parent.kind===249?Jt:l.parent.parent.kind===250&&GLe(l.parent.parent)||cr}function H4r(l){return l.kind===260?Kps(l):Ups(l)}function jps(l){return l.kind===260&&l.initializer&&up(l.initializer)||l.kind!==208&&l.parent.kind===226&&up(l.parent.right)}function tH(l){switch(l.kind){case 217:return tH(l.expression);case 226:switch(l.operatorToken.kind){case 64:case 76:case 77:case 78:return tH(l.left);case 28:return tH(l.right)}}return l}function Y4r(l){let{parent:C}=l;return C.kind===217||C.kind===226&&C.operatorToken.kind===64&&C.left===l||C.kind===226&&C.operatorToken.kind===28&&C.right===l?Y4r(C):l}function zps(l){return l.kind===296?ry(u_(l.expression)):Vi}function oet(l){let C=Jo(l);if(!C.switchTypes){C.switchTypes=[];for(let E of l.caseBlock.clauses)C.switchTypes.push(zps(E))}return C.switchTypes}function X4r(l){if(lr(l.caseBlock.clauses,E=>E.kind===296&&!JA(E.expression)))return;let C=[];for(let E of l.caseBlock.clauses){let D=E.kind===296?E.expression.text:void 0;C.push(D&&!Ue(C,D)?D:void 0)}return C}function qps(l,C){return l.flags&1048576?!X(l.types,E=>!Ue(C,E)):Ue(C,l)}function yge(l,C){return!!(l===C||l.flags&131072||C.flags&1048576&&$ps(l,C))}function $ps(l,C){if(l.flags&1048576){for(let E of l.types)if(!AL(C.types,E))return!1;return!0}return l.flags&1056&&G7(l)===C?!0:AL(C.types,l)}function cJ(l,C){return l.flags&1048576?X(l.types,C):C(l)}function jv(l,C){return l.flags&1048576?lr(l.types,C):C(l)}function rE(l,C){return l.flags&1048576?he(l.types,C):C(l)}function efs(l,C){return l.flags&3145728?he(l.types,C):C(l)}function WC(l,C){if(l.flags&1048576){let E=l.types,D=Gt(E,C);if(D===E)return l;let W=l.origin,M;if(W&&W.flags&1048576){let se=W.types,Ee=Gt(se,Ve=>!!(Ve.flags&1048576)||C(Ve));if(se.length-Ee.length===E.length-D.length){if(Ee.length===1)return Ee[0];M=S3t(1048576,Ee)}}return T3t(D,l.objectFlags&16809984,void 0,void 0,M)}return l.flags&131072||C(l)?l:Vi}function aet(l,C){return WC(l,E=>E!==C)}function tfs(l){return l.flags&1048576?l.types.length:1}function Qf(l,C,E){if(l.flags&131072)return l;if(!(l.flags&1048576))return C(l);let D=l.origin,W=D&&D.flags&1048576?D.types:l.types,M,se=!1;for(let Ee of W){let Ve=Ee.flags&1048576?Qf(Ee,C,E):C(Ee);se||(se=Ee!==Ve),Ve&&(M?M.push(Ve):M=[Ve])}return se?M&&wa(M,E?0:1):l}function J4r(l,C,E,D){return l.flags&1048576&&E?wa(Ot(l.types,C),1,E,D):Qf(l,C)}function bge(l,C){return WC(l,E=>(E.flags&C)!==0)}function U4r(l,C){return KI(l,134217804)&&KI(C,402655616)?Qf(l,E=>E.flags&4?bge(C,402653316):$4(E)&&!KI(C,402653188)?bge(C,128):E.flags&8?bge(C,264):E.flags&64?bge(C,2112):E):l}function Wre(l){return l.flags===0}function lJ(l){return l.flags===0?l.type:l}function Pre(l,C){return C?{flags:0,type:l.flags&131072?xo:l}:l}function rfs(l){let C=J1(256);return C.elementType=l,C}function TPt(l){return Bi[l.id]||(Bi[l.id]=rfs(l))}function K4r(l,C){let E=dye(gF(TLe(C)));return yge(E,l.elementType)?l:TPt(wa([l.elementType,E]))}function nfs(l){return l.flags&131072?Xd:V_(l.flags&1048576?wa(l.types,2):l)}function ifs(l){return l.finalArrayType||(l.finalArrayType=nfs(l.elementType))}function $Ze(l){return ia(l)&256?ifs(l):l}function sfs(l){return ia(l)&256?l.elementType:Vi}function ofs(l){let C=!1;for(let E of l)if(!(E.flags&131072)){if(!(ia(E)&256))return!1;C=!0}return C}function j4r(l){let C=Y4r(l),E=C.parent,D=fo(E)&&(E.name.escapedText==="length"||E.parent.kind===213&&sr(E.name)&&Bme(E.name)),W=E.kind===212&&E.expression===C&&E.parent.kind===226&&E.parent.operatorToken.kind===64&&E.parent.left===E&&!Zx(E.parent)&&l_(u_(E.argumentExpression),296);return D||W}function afs(l){return(js(l)||Hl(l)||i_(l)||Uc(l))&&!!(IC(l)||io(l)&&$w(l)&&l.initializer&&RG(l.initializer)&&nb(l.initializer))}function cet(l,C){if(l=UI(l),l.flags&8752)return co(l);if(l.flags&7){if(cI(l)&262144){let D=l.links.syntheticOrigin;if(D&&cet(D))return co(l)}let E=l.valueDeclaration;if(E){if(afs(E))return co(l);if(js(E)&&E.parent.parent.kind===250){let D=E.parent.parent,W=eLe(D.expression,void 0);if(W){let M=D.awaitModifier?15:13;return CL(M,W,wn,void 0)}}C&&tg(C,Js(E,Z._0_needs_an_explicit_type_annotation,$c(l)))}}}function eLe(l,C){if(!(l.flags&67108864))switch(l.kind){case 80:let E=X1(Sy(l));return cet(E,C);case 110:return Tfs(l);case 108:return fet(l);case 211:{let D=eLe(l.expression,C);if(D){let W=l.name,M;if(Gc(W)){if(!D.symbol)return;M=yg(D,yee(D.symbol,W.escapedText))}else M=yg(D,W.escapedText);return M&&cet(M,C)}return}case 217:return eLe(l.expression,C)}}function tLe(l){let C=Jo(l),E=C.effectsSignature;if(E===void 0){let D;if(ro(l)){let se=Qre(l.right);D=wOt(se)}else l.parent.kind===244?D=eLe(l.expression,void 0):l.expression.kind!==108&&(Gm(l)?D=zN(gye(Dl(l.expression),l.expression),l.expression):D=Qre(l.expression));let W=Ou(D&&ey(D)||Kr,0),M=W.length===1&&!W[0].typeParameters?W[0]:lr(W,z4r)?Hre(l):void 0;E=C.effectsSignature=M&&z4r(M)?M:tt}return E===tt?void 0:E}function z4r(l){return!!(JB(l)||l.declaration&&(Dre(l.declaration)||Kr).flags&131072)}function cfs(l,C){if(l.kind===1||l.kind===3)return C.arguments[l.parameterIndex];let E=zA(C.expression);return mp(E)?zA(E.expression):void 0}function lfs(l){let C=Si(l,_$),E=ls(l),D=Rr(E,C.statements.pos);KA.add(Cm(E,D.start,D.length,Z.The_containing_function_or_module_body_is_too_large_for_control_flow_analysis))}function rLe(l){let C=uet(l,!1);return HG=l,kV=C,C}function nLe(l){let C=zA(l,!0);return C.kind===97||C.kind===226&&(C.operatorToken.kind===56&&(nLe(C.left)||nLe(C.right))||C.operatorToken.kind===57&&nLe(C.left)&&nLe(C.right))}function uet(l,C){for(;;){if(l===HG)return kV;let E=l.flags;if(E&4096){if(!C){let D=EPt(l),W=sre[D];return W!==void 0?W:sre[D]=uet(l,!0)}C=!1}if(E&368)l=l.antecedent;else if(E&512){let D=tLe(l.node);if(D){let W=JB(D);if(W&&W.kind===3&&!W.type){let M=l.node.arguments[W.parameterIndex];if(M&&nLe(M))return!1}if(wd(D).flags&131072)return!1}l=l.antecedent}else{if(E&4)return lr(l.antecedent,D=>uet(D,!1));if(E&8){let D=l.antecedent;if(D===void 0||D.length===0)return!1;l=D[0]}else if(E&128){let D=l.node;if(D.clauseStart===D.clauseEnd&&VUr(D.switchStatement))return!1;l=l.antecedent}else if(E&1024){HG=void 0;let D=l.node.target,W=D.antecedent;D.antecedent=l.node.antecedents;let M=uet(l.antecedent,!1);return D.antecedent=W,M}else return!(E&1)}}}function get(l,C){for(;;){let E=l.flags;if(E&4096){if(!C){let D=EPt(l),W=C7[D];return W!==void 0?W:C7[D]=get(l,!0)}C=!1}if(E&496)l=l.antecedent;else if(E&512){if(l.node.expression.kind===108)return!0;l=l.antecedent}else{if(E&4)return he(l.antecedent,D=>get(D,!1));if(E&8)l=l.antecedent[0];else if(E&1024){let D=l.node.target,W=D.antecedent;D.antecedent=l.node.antecedents;let M=get(l.antecedent,!1);return D.antecedent=W,M}else return!!(E&1)}}}function NPt(l){switch(l.kind){case 110:return!0;case 80:if(!aV(l)){let E=Sy(l);return J7(E)||mye(E)&&!iLe(E)||!!E.valueDeclaration&&PA(E.valueDeclaration)}break;case 211:case 212:return NPt(l.expression)&&wT(Jo(l).resolvedSymbol||en);case 206:case 207:let C=PS(l.parent);return Uc(C)||axe(C)?!RPt(C):js(C)&&Lye(C)}return!1}function fF(l,C,E=C,D,W=(M=>(M=$s(l,dee))==null?void 0:M.flowNode)()){let M,se=!1,Ee=0;if(iw)return cr;if(!W)return C;XZ++;let Ve=j0,Oe=lJ(Rt(W));j0=Ve;let ot=ia(Oe)&256&&j4r(l)?Xd:$Ze(Oe);if(ot===Il||l.parent&&l.parent.kind===235&&!(ot.flags&131072)&&Kv(ot,2097152).flags&131072)return C;return ot;function Wt(){return se?M:(se=!0,M=KZe(l,C,E,D))}function Rt(Ln){var Oi;if(Ee===2e3)return(Oi=Qi)==null||Oi.instant(Qi.Phase.CheckTypes,"getTypeAtFlowNode_DepthLimit",{flowId:Ln.id}),iw=!0,lfs(l),cr;Ee++;let ms;for(;;){let Os=Ln.flags;if(Os&4096){for(let Ha=Ve;Ha=0&&ms.parameterIndex!(Ha.flags&163840)):Oi.kind===221&&oJ(Oi.expression,l)&&(Os=md(Os,Ln.node,Ha=>!(Ha.flags&131072||Ha.flags&128&&Ha.value==="undefined"))));let Qo=Ca(Oi,Os);Qo&&(Os=Qu(Os,Qo,Ln.node))}return Pre(Os,Wre(ms))}function Hi(Ln){let Oi=[],ms=!1,Os=!1,Qo;for(let Ha of Ln.antecedent){if(!Qo&&Ha.flags&128&&Ha.node.clauseStart===Ha.node.clauseEnd){Qo=Ha;continue}let Fg=Rt(Ha),Jg=lJ(Fg);if(Jg===C&&C===E)return Jg;da(Oi,Jg),yge(Jg,E)||(ms=!0),Wre(Fg)&&(Os=!0)}if(Qo){let Ha=Rt(Qo),Fg=lJ(Ha);if(!(Fg.flags&131072)&&!Ue(Oi,Fg)&&!VUr(Qo.node.switchStatement)){if(Fg===C&&C===E)return Fg;Oi.push(Fg),yge(Fg,E)||(ms=!0),Wre(Ha)&&(Os=!0)}}return Pre(Ds(Oi,ms?2:1),Os)}function Cs(Ln){let Oi=EPt(Ln),ms=zm[Oi]||(zm[Oi]=new Map),Os=Wt();if(!Os)return C;let Qo=ms.get(Os);if(Qo)return Qo;for(let Bt=ip;Bt{let Bt=age(Xt,Os)||Kr;return!(Bt.flags&131072)&&!(Jg.flags&131072)&&PZe(Jg,Bt)})}function Ng(Ln,Oi,ms,Os,Qo){if((ms===37||ms===38)&&Ln.flags&1048576){let Ha=jZe(Ln);if(Ha&&Ha===sJ(Oi)){let Fg=zZe(Ln,u_(Os));if(Fg)return ms===(Qo?37:38)?Fg:BT(LI(Fg,Ha)||Kr)?aet(Ln,Fg):Ln}}return ma(Ln,Oi,Ha=>Wc(Ha,ms,Os,Qo))}function Qu(Ln,Oi,ms){if(ms.clauseStartzZe(Ln,Ha)||Kr));if(Qo!==Kr)return Qo}return ma(Ln,Oi,Os=>ed(Os,ms))}function ZA(Ln,Oi,ms){if(Zh(l,Oi))return aJ(Ln,ms?4194304:8388608);nt&&ms&&oJ(Oi,l)&&(Ln=aJ(Ln,2097152));let Os=Ca(Oi,Ln);return Os?ma(Ln,Os,Qo=>Kv(Qo,ms?4194304:8388608)):Ln}function au(Ln,Oi,ms){let Os=yg(Ln,Oi);return Os?!!(Os.flags&16777216||cI(Os)&48)||ms:!!L7(Ln,Oi)||!ms}function Uf(Ln,Oi,ms){let Os=G2(Oi);if(jv(Ln,Ha=>au(Ha,Os,!0)))return WC(Ln,Ha=>au(Ha,Os,ms));if(ms){let Ha=AAs();if(Ha)return Og([Ln,kre(Ha,[Oi,Kr])])}return Ln}function g_(Ln,Oi,ms,Os,Qo){return Qo=Qo!==(ms.kind===112)!=(Os!==38&&Os!==36),P_(Ln,Oi,Qo)}function VI(Ln,Oi,ms){switch(Oi.operatorToken.kind){case 64:case 76:case 77:case 78:return ZA(P_(Ln,Oi.right,ms),Oi.left,ms);case 35:case 36:case 37:case 38:let Os=Oi.operatorToken.kind,Qo=tH(Oi.left),Ha=tH(Oi.right);if(Qo.kind===221&&JA(Ha))return vo(Ln,Qo,Os,Ha,ms);if(Ha.kind===221&&JA(Qo))return vo(Ln,Ha,Os,Qo,ms);if(Zh(l,Qo))return Wc(Ln,Os,Ha,ms);if(Zh(l,Ha))return Wc(Ln,Os,Qo,ms);nt&&(oJ(Qo,l)?Ln=Fs(Ln,Os,Ha,ms):oJ(Ha,l)&&(Ln=Fs(Ln,Os,Qo,ms)));let Fg=Ca(Qo,Ln);if(Fg)return Ng(Ln,Fg,Os,Ha,ms);let Jg=Ca(Ha,Ln);if(Jg)return Ng(Ln,Jg,Os,Qo,ms);if(jf(Qo))return nB(Ln,Os,Ha,ms);if(jf(Ha))return nB(Ln,Os,Qo,ms);if(m5(Ha)&&!mp(Qo))return g_(Ln,Qo,Ha,Os,ms);if(m5(Qo)&&!mp(Ha))return g_(Ln,Ha,Qo,Os,ms);break;case 104:return jI(Ln,Oi,ms);case 103:if(Gc(Oi.left))return As(Ln,Oi,ms);let Xt=tH(Oi.right);if(Aye(Ln)&&mp(l)&&Zh(l.expression,Xt)){let Bt=u_(Oi.left);if(k2(Bt)&&sJ(l)===G2(Bt))return Kv(Ln,ms?524288:65536)}if(Zh(l,Xt)){let Bt=u_(Oi.left);if(k2(Bt))return Uf(Ln,Bt,ms)}break;case 28:return P_(Ln,Oi.right,ms);case 56:return ms?P_(P_(Ln,Oi.left,!0),Oi.right,!0):wa([P_(Ln,Oi.left,!1),P_(Ln,Oi.right,!1)]);case 57:return ms?wa([P_(Ln,Oi.left,!0),P_(Ln,Oi.right,!0)]):P_(P_(Ln,Oi.left,!1),Oi.right,!1)}return Ln}function As(Ln,Oi,ms){let Os=tH(Oi.right);if(!Zh(l,Os))return Ln;w.assertNode(Oi.left,Gc);let Qo=wet(Oi.left);if(Qo===void 0)return Ln;let Ha=Qo.parent,Fg=CC(w.checkDefined(Qo.valueDeclaration,"should always have a declaration"))?co(Ha):kp(Ha);return CF(Ln,Fg,ms,!0)}function Fs(Ln,Oi,ms,Os){let Qo=Oi===35||Oi===37,Ha=Oi===35||Oi===36?98304:32768,Fg=u_(ms);return Qo!==Os&&rE(Fg,Xt=>!!(Xt.flags&Ha))||Qo===Os&&rE(Fg,Xt=>!(Xt.flags&(3|Ha)))?aJ(Ln,2097152):Ln}function Wc(Ln,Oi,ms,Os){if(Ln.flags&1)return Ln;(Oi===36||Oi===38)&&(Os=!Os);let Qo=u_(ms),Ha=Oi===35||Oi===36;if(Qo.flags&98304){if(!nt)return Ln;let Fg=Ha?Os?262144:2097152:Qo.flags&65536?Os?131072:1048576:Os?65536:524288;return aJ(Ln,Fg)}if(Os){if(!Ha&&(Ln.flags&2||jv(Ln,BD))){if(Qo.flags&469893116||BD(Qo))return Qo;if(Qo.flags&524288)return sa}let Fg=WC(Ln,Jg=>PZe(Jg,Qo)||Ha&&cps(Jg,Qo));return U4r(Fg,Qo)}return BT(Qo)?WC(Ln,Fg=>!(d4r(Fg)&&PZe(Fg,Qo))):Ln}function vo(Ln,Oi,ms,Os,Qo){(ms===36||ms===38)&&(Qo=!Qo);let Ha=tH(Oi.expression);if(!Zh(l,Ha)){nt&&oJ(Ha,l)&&Qo===(Os.text!=="undefined")&&(Ln=aJ(Ln,2097152));let Fg=Ca(Ha,Ln);return Fg?ma(Ln,Fg,Jg=>rl(Jg,Os,Qo)):Ln}return rl(Ln,Os,Qo)}function rl(Ln,Oi,ms){return ms?W_(Ln,Oi.text):aJ(Ln,VDt.get(Oi.text)||32768)}function md(Ln,{switchStatement:Oi,clauseStart:ms,clauseEnd:Os},Qo){return ms!==Os&&he(oet(Oi).slice(ms,Os),Qo)?Kv(Ln,2097152):Ln}function ed(Ln,{switchStatement:Oi,clauseStart:ms,clauseEnd:Os}){let Qo=oet(Oi);if(!Qo.length)return Ln;let Ha=Qo.slice(ms,Os),Fg=ms===Os||Ue(Ha,Vi);if(Ln.flags&2&&!Fg){let li;for(let Xi=0;XiPZe(Jg,li)),Jg);if(!Fg)return Xt;let Bt=WC(Ln,li=>!(d4r(li)&&Ue(Qo,li.flags&32768?wn:ry(eps(li)))));return Xt.flags&131072?Bt:wa([Xt,Bt])}function W_(Ln,Oi){switch(Oi){case"string":return Eg(Ln,Jt,1);case"number":return Eg(Ln,bt,2);case"bigint":return Eg(Ln,Vt,4);case"boolean":return Eg(Ln,ds,8);case"symbol":return Eg(Ln,Es,16);case"object":return Ln.flags&1?Ln:wa([Eg(Ln,sa,32),Eg(Ln,ur,131072)]);case"function":return Ln.flags&1?Ln:Eg(Ln,$C,64);case"undefined":return Eg(Ln,wn,65536)}return Eg(Ln,sa,128)}function Eg(Ln,Oi,ms){return Qf(Ln,Os=>KN(Os,Oi,QB)?vT(Os,ms)?Os:Vi:$V(Oi,Os)?Oi:vT(Os,ms)?Og([Os,Oi]):Vi)}function y0(Ln,{switchStatement:Oi,clauseStart:ms,clauseEnd:Os}){let Qo=X4r(Oi);if(!Qo)return Ln;let Ha=ke(Oi.caseBlock.clauses,Xt=>Xt.kind===297);if(ms===Os||Ha>=ms&&HaVre(Bt,Xt)===Xt)}let Jg=Qo.slice(ms,Os);return wa(Ot(Jg,Xt=>Xt?W_(Ln,Xt):Vi))}function Kf(Ln,{switchStatement:Oi,clauseStart:ms,clauseEnd:Os}){let Qo=ke(Oi.caseBlock.clauses,Jg=>Jg.kind===297),Ha=ms===Os||Qo>=ms&&QoJg.kind===296?P_(Ln,Jg.expression,!0):Vi))}function jf(Ln){return(fo(Ln)&&oo(Ln.name)==="constructor"||_A(Ln)&&JA(Ln.argumentExpression)&&Ln.argumentExpression.text==="constructor")&&Zh(l,Ln.expression)}function nB(Ln,Oi,ms,Os){if(Os?Oi!==35&&Oi!==37:Oi!==36&&Oi!==38)return Ln;let Qo=u_(ms);if(!sQt(Qo)&&!J0e(Qo))return Ln;let Ha=yg(Qo,"prototype");if(!Ha)return Ln;let Fg=co(Ha),Jg=Sd(Fg)?void 0:Fg;if(!Jg||Jg===FI||Jg===$C)return Ln;if(Sd(Ln))return Jg;return WC(Ln,Bt=>Xt(Bt,Jg));function Xt(Bt,li){return Bt.flags&524288&&ia(Bt)&1||li.flags&524288&&ia(li)&1?Bt.symbol===li.symbol:$V(Bt,li)}}function jI(Ln,Oi,ms){let Os=tH(Oi.left);if(!Zh(l,Os))return ms&&nt&&oJ(Os,l)?aJ(Ln,2097152):Ln;let Qo=Oi.right,Ha=u_(Qo);if(!eO(Ha,FI))return Ln;let Fg=tLe(Oi),Jg=Fg&&JB(Fg);if(Jg&&Jg.kind===1&&Jg.parameterIndex===0)return CF(Ln,Jg.type,ms,!0);if(!eO(Ha,$C))return Ln;let Xt=Qf(Ha,PC);return Sd(Ln)&&(Xt===FI||Xt===$C)||!ms&&!(Xt.flags&524288&&!BD(Xt))?Ln:CF(Ln,Xt,ms,!0)}function PC(Ln){let Oi=LI(Ln,"prototype");if(Oi&&!Sd(Oi))return Oi;let ms=Ou(Ln,1);return ms.length?wa(Ot(ms,Os=>wd($0e(Os)))):Lc}function CF(Ln,Oi,ms,Os){let Qo=Ln.flags&1048576?`N${Fh(Ln)},${Fh(Oi)},${(ms?1:0)|(Os?2:0)}`:void 0;return TP(Qo)??jZ(Qo,Kre(Ln,Oi,ms,Os))}function Kre(Ln,Oi,ms,Os){if(!ms){if(Ln===Oi)return Vi;if(Os)return WC(Ln,Xt=>!eO(Xt,Oi));let Jg=CF(Ln,Oi,!0,!1);return WC(Ln,Xt=>!yge(Xt,Jg))}if(Ln.flags&3||Ln===Oi)return Oi;let Qo=Os?eO:$V,Ha=Ln.flags&1048576?jZe(Ln):void 0,Fg=Qf(Oi,Jg=>{let Xt=Ha&&LI(Jg,Ha),Bt=Xt&&zZe(Ln,Xt),li=Qf(Bt||Ln,Os?Xi=>eO(Xi,Jg)?Xi:eO(Jg,Xi)?Jg:Vi:Xi=>WZe(Xi,Jg)?Xi:WZe(Jg,Xi)?Jg:$V(Xi,Jg)?Xi:$V(Jg,Xi)?Jg:Vi);return li.flags&131072?Qf(Ln,Xi=>KI(Xi,465829888)&&Qo(Jg,c_(Xi)||Kr)?Og([Xi,Jg]):Vi):li});return Fg.flags&131072?$V(Oi,Ln)?Oi:bg(Ln,Oi)?Ln:bg(Oi,Ln)?Oi:Og([Ln,Oi]):Fg}function Gge(Ln,Oi,ms){if(Z4r(Oi,l)){let Os=ms||!fG(Oi)?tLe(Oi):void 0,Qo=Os&&JB(Os);if(Qo&&(Qo.kind===0||Qo.kind===1))return Vye(Ln,Qo,Oi,ms)}if(Aye(Ln)&&mp(l)&&fo(Oi.expression)){let Os=Oi.expression;if(Zh(l.expression,tH(Os.expression))&&sr(Os.name)&&Os.name.escapedText==="hasOwnProperty"&&Oi.arguments.length===1){let Qo=Oi.arguments[0];if(JA(Qo)&&sJ(l)===Dd(Qo.text))return Kv(Ln,ms?524288:65536)}}return Ln}function Vye(Ln,Oi,ms,Os){if(Oi.type&&!(Sd(Ln)&&(Oi.type===FI||Oi.type===$C))){let Qo=cfs(Oi,ms);if(Qo){if(Zh(l,Qo))return CF(Ln,Oi.type,Os,!1);nt&&oJ(Qo,l)&&(Os&&!vT(Oi.type,65536)||!Os&&rE(Oi.type,ALe))&&(Ln=aJ(Ln,2097152));let Ha=Ca(Qo,Ln);if(Ha)return ma(Ln,Ha,Fg=>CF(Fg,Oi.type,Os,!1))}}return Ln}function P_(Ln,Oi,ms){if(d8(Oi)||ro(Oi.parent)&&(Oi.parent.operatorToken.kind===61||Oi.parent.operatorToken.kind===78)&&Oi.parent.left===Oi)return OLe(Ln,Oi,ms);switch(Oi.kind){case 80:if(!Zh(l,Oi)&&re<5){let Os=Sy(Oi);if(J7(Os)){let Qo=Os.valueDeclaration;if(Qo&&js(Qo)&&!Qo.type&&Qo.initializer&&NPt(l)){re++;let Ha=P_(Ln,Qo.initializer,ms);return re--,Ha}}}case 110:case 108:case 211:case 212:return ZA(Ln,Oi,ms);case 213:return Gge(Ln,Oi,ms);case 217:case 235:return P_(Ln,Oi.expression,ms);case 226:return VI(Ln,Oi,ms);case 224:if(Oi.operator===54)return P_(Ln,Oi.operand,!ms);break}return Ln}function OLe(Ln,Oi,ms){if(Zh(l,Oi))return aJ(Ln,ms?2097152:262144);let Os=Ca(Oi,Ln);return Os?ma(Ln,Os,Qo=>Kv(Qo,ms?2097152:262144)):Ln}}function ufs(l,C){if(l=X1(l),(C.kind===80||C.kind===81)&&(a6(C)&&(C=C.parent),DB(C)&&(!Zx(C)||M5(C)))){let E=j$e(M5(C)&&C.kind===211?vet(C,void 0,!0):u_(C));if(X1(Jo(C).resolvedSymbol)===l)return E}return tT(C)&&xh(C.parent)&&dw(C.parent)?l$e(C.parent.symbol):Hme(C)&&M5(C.parent)?JP(l):YV(l)}function Cye(l){return Si(l.parent,C=>eu(C)&&!q9(C)||C.kind===268||C.kind===307||C.kind===172)}function iLe(l){return!q4r(l,void 0)}function q4r(l,C){let E=Si(l.valueDeclaration,Aet);if(!E)return!1;let D=Jo(E);return D.flags&131072||(D.flags|=131072,gfs(E)||eJr(E)),!l.lastAssignmentPos||C&&l.lastAssignmentPosC.kind!==232&&$4r(C.name))}function gfs(l){return!!Si(l.parent,C=>Aet(C)&&!!(Jo(C).flags&131072))}function Aet(l){return pd(l)||Fc(l)}function eJr(l){switch(l.kind){case 80:if(Zx(l)){let E=Sy(l);if(mye(E)&&E.lastAssignmentPos!==Number.MAX_VALUE){let D=Si(l,Aet),W=Si(E.valueDeclaration,Aet);E.lastAssignmentPos=D===W?Afs(l,E.valueDeclaration):Number.MAX_VALUE}}return;case 281:let C=l.parent.parent;if(!l.isTypeOnly&&!C.isTypeOnly&&!C.moduleSpecifier){let E=ZI(l.propertyName||l.name,111551,!0,!0);E&&mye(E)&&(E.lastAssignmentPos=Number.MAX_VALUE)}return;case 264:case 265:case 266:return}Ma(l)||hu(l,eJr)}function Afs(l,C){let E=l.pos;for(;l&&l.pos>C.pos;){switch(l.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:E=l.end}l=l.parent}return E}function J7(l){return l.flags&3&&(UPt(l)&6)!==0}function mye(l){let C=l.valueDeclaration&&PS(l.valueDeclaration);return!!C&&(Uc(C)||js(C)&&(fM(C.parent)||dfs(C)))}function dfs(l){return!!(l.parent.flags&1)&&!(Rh(l)&32||l.parent.parent.kind===243&&bs(l.parent.parent.parent))}function pfs(l){let C=Jo(l);if(C.parameterInitializerContainsUndefined===void 0){if(!Xv(l,8))return aL(l.symbol),!0;let E=!!vT(vge(l,0),16777216);if(!CD())return aL(l.symbol),!0;C.parameterInitializerContainsUndefined??(C.parameterInitializerContainsUndefined=E)}return C.parameterInitializerContainsUndefined}function ffs(l,C){return nt&&C.kind===169&&C.initializer&&vT(l,16777216)&&!pfs(C)?Kv(l,524288):l}function Ifs(l,C){let E=C.parent;return E.kind===211||E.kind===166||E.kind===213&&E.expression===C||E.kind===214&&E.expression===C||E.kind===212&&E.expression===C&&!(jv(l,rJr)&&tJ(u_(E.argumentExpression)))}function tJr(l){return l.flags&2097152?lr(l.types,tJr):!!(l.flags&465829888&&yD(l).flags&1146880)}function rJr(l){return l.flags&2097152?lr(l.types,rJr):!!(l.flags&465829888&&!KI(yD(l),98304))}function Cfs(l,C){let E=(sr(l)||fo(l)||_A(l))&&!((NN(l.parent)||d4(l.parent))&&l.parent.tagName===l)&&(C&&C&32?wy(l,8):wy(l,void 0));return E&&!O7(E)}function DPt(l,C,E){return Gre(l)&&(l=l.baseType),!(E&&E&2)&&jv(l,tJr)&&(Ifs(l,C)||Cfs(C,E))?Qf(l,yD):l}function nJr(l){return!!Si(l,C=>{let E=C.parent;return E===void 0?"quit":rf(E)?E.expression===C&&lp(C):l0(E)?E.name===C||E.propertyName===C:!1})}function U7(l,C,E,D){if(Vr&&!(l.flags&33554432&&!i_(l)&&!Hl(l)))switch(C){case 1:return det(l);case 2:return iJr(l,E,D);case 3:return sJr(l);case 4:return xPt(l);case 5:return oJr(l);case 6:return aJr(l);case 7:return cJr(l);case 8:return lJr(l);case 0:{if(sr(l)&&(DB(l)||F_(l.parent)||mm(l.parent)&&l.parent.moduleReference===l)&&dJr(l)){if(_5(l.parent)&&(fo(l.parent)?l.parent.expression:l.parent.left)!==l)return;det(l);return}if(_5(l)){let W=l;for(;_5(W);){if(VS(W))return;W=W.parent}return iJr(l)}return rf(l)?sJr(l):Um(l)||p4(l)?xPt(l):mm(l)?D5(l)||$et(l)?aJr(l):void 0:l0(l)?cJr(l):((pd(l)||zS(l))&&oJr(l),!Ne.emitDecoratorMetadata||!IM(l)||!LE(l)||!l.modifiers||!eee(lt,l,l.parent,l.parent.parent)?void 0:lJr(l))}default:w.assertNever(C,`Unhandled reference hint: ${C}`)}}function det(l){let C=Sy(l);C&&C!==jt&&C!==en&&!aV(l)&&sLe(C,l)}function iJr(l,C,E){let D=fo(l)?l.expression:l.left;if(vG(D)||!sr(D))return;let W=Sy(D);if(!W||W===en)return;if(VE(Ne)||gV(Ne)&&nJr(l)){sLe(W,l);return}let M=E||sC(D);if(Sd(M)||M===xo){sLe(W,l);return}let se=C;if(!se&&!E){let Ee=fo(l)?l.name:l.right,Ve=Gc(Ee)&&dLe(Ee.escapedText,Ee),Oe=Fx(l),ot=ey(Oe!==0||qPt(l)?tE(M):M);se=Gc(Ee)?Ve&&Tet(ot,Ve)||void 0:yg(ot,Ee.escapedText)}se&&(Fye(se)||se.flags&8&&l.parent.kind===306)||sLe(W,l)}function sJr(l){if(sr(l.expression)){let C=l.expression,E=X1(ZI(C,-1,!0,!0,l));E&&sLe(E,C)}}function xPt(l){if(!XPt(l)){let C=KA&&Ne.jsx===2?Z.Cannot_find_name_0:void 0,E=NP(l),D=Um(l)?l.tagName:l,W;if(p4(l)&&E==="null"||(W=Pi(D,E,111551,C,!0)),W&&(W.isReferenced=-1,Vr&&W.flags&2097152&&!MN(W)&&pet(W)),p4(l)){let M=ls(l),se=_7(M);se&&Pi(D,se,111551,C,!0)}}}function oJr(l){if(Me<2&&YI(l)&2){let C=nb(l);mfs(C)}}function aJr(l){ya(l,32)&&uJr(l)}function cJr(l){if(!l.parent.parent.moduleSpecifier&&!l.isTypeOnly&&!l.parent.parent.isTypeOnly){let C=l.propertyName||l.name,E=Pi(C,C.escapedText,2998271,void 0,!0);if(!(E&&(E===Zt||E===Dr||E.declarations&&bs(J4(E.declarations[0]))))){let D=E&&(E.flags&2097152?$m(E):E);(!D||zb(D)&111551)&&(uJr(l),det(l.propertyName||l.name))}return}}function lJr(l){if(Ne.emitDecoratorMetadata){let C=be(l.modifiers,FC);if(!C)return;switch(Lm(C,16),l.kind){case 263:let E=pN(l);if(E)for(let se of E.parameters)Ore(Jet(se));break;case 177:case 178:let D=l.kind===177?178:177,W=qd(Oo(l),D);Ore(dw(l)||W&&dw(W));break;case 174:for(let se of l.parameters)Ore(Jet(se));Ore(nb(l));break;case 172:Ore(IC(l));break;case 169:Ore(Jet(l));let M=l.parent;for(let se of M.parameters)Ore(Jet(se));Ore(nb(M));break}}}function sLe(l,C){if(Vr&&QN(l,111551)&&!V5(C)){let E=$m(l);zb(l,!0)&1160127&&(VE(Ne)||gV(Ne)&&nJr(C)||!Fye(X1(E)))&&pet(l)}}function pet(l){w.assert(Vr);let C=al(l);if(!C.referenced){C.referenced=!0;let E=XE(l);if(!E)return w.fail();if(D5(E)&&zb(UI(l))&111551){let D=sb(E.moduleReference);det(D)}}}function uJr(l){let C=Oo(l),E=$m(C);E&&(E===en||zb(C,!0)&111551&&!Fye(E))&&pet(C)}function gJr(l,C){if(!l)return;let E=sb(l),D=(l.kind===80?788968:1920)|2097152,W=Pi(E,E.escapedText,D,void 0,!0);if(W&&W.flags&2097152){if(Vr&&fD(W)&&!Fye($m(W))&&!MN(W))pet(W);else if(C&&VE(Ne)&&D_(Ne)>=5&&!fD(W)&&!lr(W.declarations,Nx)){let M=fr(l,Z.A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled),se=be(W.declarations||v,lo);se&&tg(M,Js(se,Z._0_was_imported_here,oo(E)))}}}function mfs(l){gJr(l&&$$(l),!1)}function Ore(l){let C=ZOt(l);C&&T_(C)&&gJr(C,!0)}function hfs(l,C,E){var D;let W=co(l,E),M=l.valueDeclaration;if(M){if(hl(M)&&!M.initializer&&!M.dotDotDotToken&&M.parent.elements.length>=2){let se=M.parent.parent,Ee=PS(se);if(Ee.kind===260&&aH(Ee)&6||Ee.kind===169){let Ve=Jo(se);if(!(Ve.flags&4194304)){Ve.flags|=4194304;let Oe=D7(se,0),ot=Oe&&Qf(Oe,yD);if(Ve.flags&=-4194305,ot&&ot.flags&1048576&&!(Ee.kind===169&&RPt(Ee))){let Wt=M.parent,Rt=fF(Wt,ot,ot,void 0,C.flowNode);return Rt.flags&131072?Vi:bc(M,Rt,!0)}}}}if(Uc(M)&&!M.type&&!M.initializer&&!M.dotDotDotToken){let se=M.parent;if(se.parameters.length>=2&&V$e(se)){let Ee=_ye(se);if(Ee&&Ee.parameters.length===1&&g0(Ee)){let Ve=Age(cl(co(Ee.parameters[0]),(D=rH(se))==null?void 0:D.nonFixingMapper));if(Ve.flags&1048576&&rE(Ve,cA)&&!lr(se.parameters,RPt)){let Oe=fF(se,Ve,Ve,void 0,C.flowNode),ot=se.parameters.indexOf(M)-(sV(se)?1:0);return $b(Oe,pw(ot))}}}}}return W}function AJr(l,C){if(aV(l))return;if(C===jt){if(tOt(l)){fr(l,Z.arguments_cannot_be_referenced_in_property_initializers);return}let M=Ob(l);if(M)for(Me<2&&(M.kind===219?fr(l,Z.The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_function_expression):ya(M,1024)&&fr(l,Z.The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_standard_function_or_method)),Jo(M).flags|=512;M&&Id(M);)M=Ob(M),M&&(Jo(M).flags|=512);return}let E=X1(C),D=jOt(E,l);MB(D)&&D3t(l,D)&&D.declarations&&JG(l,D.declarations,l.escapedText);let W=E.valueDeclaration;if(W&&E.flags&32&&va(W)&&W.name!==l){let M=n0(l,!1,!1);for(;M.kind!==307&&M.parent!==W;)M=n0(M,!1,!1);M.kind!==307&&(Jo(W).flags|=262144,Jo(M).flags|=262144,Jo(l).flags|=536870912)}Bfs(l,C)}function _fs(l,C){if(aV(l))return oLe(l);let E=Sy(l);if(E===en)return cr;if(AJr(l,E),E===jt)return tOt(l)?cr:co(E);dJr(l)&&U7(l,1);let D=X1(E),W=D.valueDeclaration,M=hfs(D,l,C),se=Fx(l);if(se){if(!(D.flags&3)&&!(io(l)&&D.flags&512)){let Vo=D.flags&384?Z.Cannot_assign_to_0_because_it_is_an_enum:D.flags&32?Z.Cannot_assign_to_0_because_it_is_a_class:D.flags&1536?Z.Cannot_assign_to_0_because_it_is_a_namespace:D.flags&16?Z.Cannot_assign_to_0_because_it_is_a_function:D.flags&2097152?Z.Cannot_assign_to_0_because_it_is_an_import:Z.Cannot_assign_to_0_because_it_is_not_a_variable;return fr(l,Vo,$c(E)),cr}if(wT(D))return D.flags&3?fr(l,Z.Cannot_assign_to_0_because_it_is_a_constant,$c(E)):fr(l,Z.Cannot_assign_to_0_because_it_is_a_read_only_property,$c(E)),cr}let Ee=D.flags&2097152;if(D.flags&3){if(se===1)return Sce(l)?gF(M):M}else if(Ee)W=XE(E);else return M;if(!W)return M;M=DPt(M,l,C);let Ve=PS(W).kind===169,Oe=Cye(W),ot=Cye(l),Wt=ot!==Oe,Rt=l.parent&&l.parent.parent&&Ux(l.parent)&&wPt(l.parent.parent),Qr=E.flags&134217728,ln=M===_r||M===Xd,hn=ln&&l.parent.kind===235;for(;ot!==Oe&&(ot.kind===218||ot.kind===219||K$(ot))&&(J7(D)&&M!==Xd||mye(D)&&q4r(D,l));)ot=Cye(ot);let mi=Ve||Ee||Wt||Rt||Qr||yfs(l,W)||M!==_r&&M!==Xd&&(!nt||(M.flags&16387)!==0||V5(l)||yPt(l)||l.parent.kind===281)||l.parent.kind===235||W.kind===260&&W.exclamationToken||W.flags&33554432,Ti=hn?wn:mi?Ve?ffs(M,W):M:ln?wn:rW(M),ks=hn?AF(fF(l,M,Ti,ot)):fF(l,M,Ti,ot);if(!j4r(l)&&(M===_r||M===Xd)){if(ks===_r||ks===Xd)return dt&&(fr(Sl(W),Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined,$c(E),Ys(ks)),fr(l,Z.Variable_0_implicitly_has_an_1_type,$c(E),Ys(ks))),Gye(ks)}else if(!mi&&!Lre(M)&&Lre(ks))return fr(l,Z.Variable_0_is_used_before_being_assigned,$c(E)),M;return se?gF(ks):ks}function yfs(l,C){if(hl(C)){let E=Si(l,hl);return E&&PS(E)===PS(C)}}function dJr(l){var C;let E=l.parent;if(E){if(fo(E)&&E.expression===l||l0(E)&&E.isTypeOnly)return!1;let D=(C=E.parent)==null?void 0:C.parent;if(D&&hC(D)&&D.isTypeOnly)return!1}return!0}function bfs(l,C){return!!Si(l,E=>E===C?"quit":eu(E)||E.parent&&Hl(E.parent)&&!CC(E.parent)&&E.parent.initializer===E)}function Efs(l,C){return Si(l,E=>E===C?"quit":E===C.initializer||E===C.condition||E===C.incrementor||E===C.statement)}function kPt(l){return Si(l,C=>!C||vme(C)?"quit":YR(C,!1))}function Bfs(l,C){if(Me>=2||!(C.flags&34)||!C.valueDeclaration||Fc(C.valueDeclaration)||C.valueDeclaration.parent.kind===299)return;let E=w2(C.valueDeclaration),D=bfs(l,E),W=kPt(E);if(W){if(D){let M=!0;if(FB(E)){let se=bG(C.valueDeclaration,261);if(se&&se.parent===E){let Ee=Efs(l.parent,E);if(Ee){let Ve=Jo(Ee);Ve.flags|=8192;let Oe=Ve.capturedBlockScopeBindings||(Ve.capturedBlockScopeBindings=[]);da(Oe,C),Ee===E.initializer&&(M=!1)}}}M&&(Jo(W).flags|=4096)}if(FB(E)){let M=bG(C.valueDeclaration,261);M&&M.parent===E&&Sfs(l,E)&&(Jo(C.valueDeclaration).flags|=65536)}Jo(C.valueDeclaration).flags|=32768}D&&(Jo(C.valueDeclaration).flags|=16384)}function vfs(l,C){let E=Jo(l);return!!E&&Ue(E.capturedBlockScopeBindings,Oo(C))}function Sfs(l,C){let E=l;for(;E.parent.kind===217;)E=E.parent;let D=!1;if(Zx(E))D=!0;else if(E.parent.kind===224||E.parent.kind===225){let W=E.parent;D=W.operator===46||W.operator===47}return D?!!Si(E,W=>W===C?"quit":W===C.statement):!1}function GPt(l,C){if(Jo(l).flags|=2,C.kind===172||C.kind===176){let E=C.parent;Jo(E).flags|=4}else Jo(C).flags|=4}function pJr(l){return Rf(l)?l:eu(l)?void 0:hu(l,pJr)}function FPt(l){let C=Oo(l),E=kp(C);return is(E)===Re}function fJr(l,C,E){let D=C.parent;nV(D)&&!FPt(D)&&dee(l)&&l.flowNode&&!get(l.flowNode,!1)&&fr(l,E)}function wfs(l,C){Hl(C)&&CC(C)&<&&C.initializer&&y2(C.initializer,l.pos)&&LE(C.parent)&&fr(l,Z.Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class)}function oLe(l){let C=V5(l),E=n0(l,!0,!0),D=!1,W=!1;for(E.kind===176&&fJr(l,E,Z.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class);;){if(E.kind===219&&(E=n0(E,!1,!W),D=!0),E.kind===167){E=n0(E,!D,!1),W=!0;continue}break}if(wfs(l,E),W)fr(l,Z.this_cannot_be_referenced_in_a_computed_property_name);else switch(E.kind){case 267:fr(l,Z.this_cannot_be_referenced_in_a_module_or_namespace_body);break;case 266:fr(l,Z.this_cannot_be_referenced_in_current_location);break}!C&&D&&Me<2&&GPt(l,E);let M=ZPt(l,!0,E);if(Tt){let se=co(Dr);if(M===se&&D)fr(l,Z.The_containing_arrow_function_captures_the_global_value_of_this);else if(!M){let Ee=fr(l,Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation);if(!Fc(E)){let Ve=ZPt(E);Ve&&Ve!==se&&tg(Ee,Js(E,Z.An_outer_value_of_this_is_shadowed_by_this_container))}}}return M||Mt}function ZPt(l,C=!0,E=n0(l,!1,!1)){let D=io(l);if(eu(E)&&(!VPt(l)||sV(E))){let W=FWt(E)||D&&Rfs(E);if(!W){let M=Nfs(E);if(D&&M){let se=Dl(M).symbol;se&&se.members&&se.flags&16&&(W=kp(se).thisType)}else $N(E)&&(W=kp(FA(E.symbol)).thisType);W||(W=hJr(E))}if(W)return fF(l,W)}if(va(E.parent)){let W=Oo(E.parent),M=eg(E)?co(W):kp(W).thisType;return fF(l,M)}if(Fc(E))if(E.commonJsModuleIndicator){let W=Oo(E);return W&&co(W)}else{if(E.externalModuleIndicator)return wn;if(C)return co(Dr)}}function Tfs(l){let C=n0(l,!1,!1);if(eu(C)){let E=rB(C);if(E.thisParameter)return cet(E.thisParameter)}if(va(C.parent)){let E=Oo(C.parent);return eg(C)?co(E):kp(E).thisType}}function Nfs(l){if(l.kind===218&&ro(l.parent)&&mI(l.parent)===3)return l.parent.left.expression.expression;if(l.kind===174&&l.parent.kind===210&&ro(l.parent.parent)&&mI(l.parent.parent)===6)return l.parent.parent.left.expression;if(l.kind===218&&l.parent.kind===303&&l.parent.parent.kind===210&&ro(l.parent.parent.parent)&&mI(l.parent.parent.parent)===6)return l.parent.parent.parent.left.expression;if(l.kind===218&&jC(l.parent)&&sr(l.parent.name)&&(l.parent.name.escapedText==="value"||l.parent.name.escapedText==="get"||l.parent.name.escapedText==="set")&&ru(l.parent.parent)&&lu(l.parent.parent.parent)&&l.parent.parent.parent.arguments[2]===l.parent.parent&&mI(l.parent.parent.parent)===9)return l.parent.parent.parent.arguments[0].expression;if(lI(l)&&sr(l.name)&&(l.name.escapedText==="value"||l.name.escapedText==="get"||l.name.escapedText==="set")&&ru(l.parent)&&lu(l.parent.parent)&&l.parent.parent.arguments[2]===l.parent&&mI(l.parent.parent)===9)return l.parent.parent.arguments[0].expression}function Rfs(l){let C=vx(l);if(C&&C.typeExpression)return Vc(C.typeExpression);let E=dge(l);if(E)return zP(E)}function Dfs(l,C){return!!Si(l,E=>pd(E)?"quit":E.kind===169&&E.parent===C)}function fet(l){let C=l.parent.kind===213&&l.parent.expression===l,E=W8(l,!0),D=E,W=!1,M=!1;if(!C){for(;D&&D.kind===219;)ya(D,1024)&&(M=!0),D=W8(D,!0),W=Me<2;D&&ya(D,1024)&&(M=!0)}let se=0;if(!D||!ot(D)){let Wt=Si(l,Rt=>Rt===D?"quit":Rt.kind===167);return Wt&&Wt.kind===167?fr(l,Z.super_cannot_be_referenced_in_a_computed_property_name):C?fr(l,Z.Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors):!D||!D.parent||!(va(D.parent)||D.parent.kind===210)?fr(l,Z.super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions):fr(l,Z.super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class),cr}if(!C&&E.kind===176&&fJr(l,D,Z.super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class),eg(D)||C?(se=32,!C&&Me>=2&&Me<=8&&(Hl(D)||ef(D))&&J$(l.parent,Wt=>{(!Fc(Wt)||na(Wt))&&(Jo(Wt).flags|=2097152)})):se=16,Jo(l).flags|=se,D.kind===174&&M&&(M0(l.parent)&&Zx(l.parent)?Jo(D).flags|=256:Jo(D).flags|=128),W&&GPt(l.parent,D),D.parent.kind===210)return Me<2?(fr(l,Z.super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher),cr):Mt;let Ee=D.parent;if(!nV(Ee))return fr(l,Z.super_can_only_be_referenced_in_a_derived_class),cr;if(FPt(Ee))return C?cr:Re;let Ve=kp(Oo(Ee)),Oe=Ve&&Sa(Ve)[0];if(!Oe)return cr;if(D.kind===176&&Dfs(l,D))return fr(l,Z.super_cannot_be_referenced_in_constructor_arguments),cr;return se===32?is(Ve):KE(Oe,Ve.thisType);function ot(Wt){return C?Wt.kind===176:va(Wt.parent)||Wt.parent.kind===210?eg(Wt)?Wt.kind===174||Wt.kind===173||Wt.kind===177||Wt.kind===178||Wt.kind===172||Wt.kind===175:Wt.kind===174||Wt.kind===173||Wt.kind===177||Wt.kind===178||Wt.kind===172||Wt.kind===171||Wt.kind===176:!1}}function IJr(l){return(l.kind===174||l.kind===177||l.kind===178)&&l.parent.kind===210?l.parent:l.kind===218&&l.parent.kind===303?l.parent.parent:void 0}function CJr(l){return ia(l)&4&&l.target===Em?af(l)[0]:void 0}function xfs(l){return Qf(l,C=>C.flags&2097152?X(C.types,CJr):CJr(C))}function mJr(l,C){let E=l,D=C;for(;D;){let W=xfs(D);if(W)return W;if(E.parent.kind!==303)break;E=E.parent.parent,D=oO(E,void 0)}}function hJr(l){if(l.kind===219)return;if(V$e(l)){let E=_ye(l);if(E){let D=E.thisParameter;if(D)return co(D)}}let C=io(l);if(Tt||C){let E=IJr(l);if(E){let W=oO(E,void 0),M=mJr(E,W);return M?cl(M,APt(rH(E))):tE(W?AF(W):sC(E))}let D=qR(l.parent);if(Im(D)){let W=D.left;if(mp(W)){let{expression:M}=W;if(C&&sr(M)){let se=ls(D);if(se.commonJsModuleIndicator&&Sy(M)===se.symbol)return}return tE(sC(M))}}}}function _Jr(l){let C=l.parent;if(!V$e(C))return;let E=q9(C);if(E&&E.arguments){let W=xet(E),M=C.parameters.indexOf(l);if(l.dotDotDotToken)return lOt(W,M,W.length,Mt,void 0,0);let se=Jo(E),Ee=se.resolvedSignature;se.resolvedSignature=yt;let Ve=M0)return j(E.name,!0,!1)}}function Zfs(l,C){let E=Ob(l);if(E){let D=Iet(E,C);if(D){let W=YI(E);if(W&1){let M=(W&2)!==0;D.flags&1048576&&(D=WC(D,Ee=>!!sH(1,Ee,M)));let se=sH(1,D,(W&2)!==0);if(!se)return;D=se}if(W&2){let M=Qf(D,IL);return M&&wa([M,FUr(M)])}return D}}}function Lfs(l,C){let E=wy(l,C);if(E){let D=IL(E);return D&&wa([D,FUr(D)])}}function Vfs(l,C){let E=Ob(l);if(E){let D=YI(E),W=Iet(E,C);if(W){let M=(D&2)!==0;if(!l.asteriskToken&&W.flags&1048576&&(W=WC(W,se=>!!sH(1,se,M))),l.asteriskToken){let se=UOt(W,M),Ee=se?.yieldType??xo,Ve=wy(l,C)??xo,Oe=se?.nextType??Kr,ot=Let(Ee,Ve,Oe,!1);if(M){let Wt=Let(Ee,Ve,Oe,!0);return wa([ot,Wt])}return ot}return sH(0,W,M)}}}function VPt(l){let C=!1;for(;l.parent&&!eu(l.parent);){if(Uc(l.parent)&&(C||l.parent.initializer===l))return!0;hl(l.parent)&&l.parent.initializer===l&&(C=!0),l=l.parent}return!1}function yJr(l,C){let E=!!(YI(C)&2),D=Iet(C,void 0);if(D)return sH(l,D,E)||void 0}function Iet(l,C){let E=Dre(l);if(E)return E;let D=MPt(l);if(D&&!m$e(D)){let M=wd(D),se=YI(l);return se&1?WC(M,Ee=>!!(Ee.flags&58998787)||DOt(Ee,se,void 0)):se&2?WC(M,Ee=>!!(Ee.flags&58998787)||!!Tge(Ee)):M}let W=q9(l);if(W)return wy(W,C)}function bJr(l,C){let D=xet(l).indexOf(C);return D===-1?void 0:WPt(l,D)}function WPt(l,C){if(fC(l))return C===0?Jt:C===1?tXr(!1):Mt;let E=Jo(l).resolvedSignature===gr?gr:Hre(l);if(Um(l)&&C===0)return _et(E,l);let D=E.parameters.length-1;return g0(E)&&C>=D?$b(co(E.parameters[D]),pw(C-D),256):ST(E,C)}function Wfs(l){let C=bOt(l);return C?z4(C):void 0}function Pfs(l,C){if(l.parent.kind===215)return bJr(l.parent,C)}function Ofs(l,C){let E=l.parent,{left:D,operatorToken:W,right:M}=E;switch(W.kind){case 64:case 77:case 76:case 78:return l===M?Mfs(E):void 0;case 57:case 61:let se=wy(E,C);return l===M&&(se&&se.pattern||!se&&!HRe(E))?u_(D):se;case 56:case 28:return l===M?wy(E,C):void 0;default:return}}function Qfs(l){if(v2(l)&&l.symbol)return l.symbol;if(sr(l))return Sy(l);if(fo(l)){let E=u_(l.expression);return Gc(l.name)?C(E,l.name):yg(E,l.name.escapedText)}if(_A(l)){let E=sC(l.argumentExpression);if(!k2(E))return;let D=u_(l.expression);return yg(D,G2(E))}return;function C(E,D){let W=dLe(D.escapedText,D);return W&&Tet(E,W)}}function Mfs(l){var C,E;let D=mI(l);switch(D){case 0:case 4:let W=Qfs(l.left),M=W&&W.valueDeclaration;if(M&&(Hl(M)||i_(M))){let Ve=IC(M);return Ve&&cl(Vc(Ve),al(W).mapper)||(Hl(M)?M.initializer&&u_(l.left):void 0)}return D===0?u_(l.left):EJr(l);case 5:if(Cet(l,D))return EJr(l);if(!v2(l.left)||!l.left.symbol)return u_(l.left);{let Ve=l.left.symbol.valueDeclaration;if(!Ve)return;let Oe=ps(l.left,mp),ot=IC(Ve);if(ot)return Vc(ot);if(sr(Oe.expression)){let Wt=Oe.expression,Rt=Pi(Wt,Wt.escapedText,111551,void 0,!0);if(Rt){let Qr=Rt.valueDeclaration&&IC(Rt.valueDeclaration);if(Qr){let ln=zR(Oe);if(ln!==void 0)return sO(Vc(Qr),ln)}return}}return io(Ve)||Ve===l.left?void 0:u_(l.left)}case 1:case 6:case 3:case 2:let se;D!==2&&(se=v2(l.left)?(C=l.left.symbol)==null?void 0:C.valueDeclaration:void 0),se||(se=(E=l.symbol)==null?void 0:E.valueDeclaration);let Ee=se&&IC(se);return Ee?Vc(Ee):void 0;case 7:case 8:case 9:return w.fail("Does not apply");default:return w.assertNever(D)}}function Cet(l,C=mI(l)){if(C===4)return!0;if(!io(l)||C!==5||!sr(l.left.expression))return!1;let E=l.left.expression.escapedText,D=Pi(l.left,E,111551,void 0,!0,!0);return Cce(D?.valueDeclaration)}function EJr(l){if(!l.symbol)return u_(l.left);if(l.symbol.valueDeclaration){let W=IC(l.symbol.valueDeclaration);if(W){let M=Vc(W);if(M)return M}}let C=ps(l.left,mp);if(!RB(n0(C.expression,!1,!1)))return;let E=oLe(C.expression),D=zR(C);return D!==void 0&&sO(E,D)||void 0}function Hfs(l){return!!(cI(l)&262144&&!l.links.type&&Bre(l,0)>=0)}function sO(l,C,E){return Qf(l,D=>{var W;if(qb(D)&&!D.declaration.nameType){let M=tB(D),se=c_(M)||M,Ee=E||fb(wc(C));if(bg(Ee,se))return N$e(D,Ee)}else if(D.flags&3670016){let M=yg(D,C);if(M)return Hfs(M)?void 0:dF(co(M),!!(M.flags&16777216));if(cA(D)&&bN(C)&&+C>=0){let se=hge(D,D.target.fixedLength,0,!1,!0);if(se)return se}return(W=e3t(t3t(D),E||fb(wc(C))))==null?void 0:W.type}},!0)}function BJr(l,C){if(w.assert(RB(l)),!(l.flags&67108864))return PPt(l,C)}function PPt(l,C){let E=l.parent,D=jC(l)&&LPt(l,C);if(D)return D;let W=oO(E,C);if(W){if(Nre(l)){let M=Oo(l);return sO(W,M.escapedName,al(M).nameType)}if($R(l)){let M=Sl(l);if(M&&kg(M)){let se=Dl(M.expression),Ee=k2(se)&&sO(W,G2(se));if(Ee)return Ee}}if(l.name){let M=dL(l.name);return Qf(W,se=>{var Ee;return(Ee=e3t(t3t(se),M))==null?void 0:Ee.type},!0)}}}function Yfs(l){let C,E;for(let D=0;D{if(cA(M)){if((D===void 0||CW)?E-C:0,Ee=se>0&&M.target.hasRestElement?tye(M.target,3):0;return se>0&&se<=Ee?af(M)[gL(M)-se]:hge(M,D===void 0?M.target.fixedLength:Math.min(M.target.fixedLength,D),E===void 0||W===void 0?Ee:Math.min(Ee,E-W),!1,!0)}return(!D||CfL(Ve)?$b(Ve,pw(se)):Ve,!0))}function Ufs(l,C){let E=l.parent;return E8(E)?wy(l,C):Jx(E)?Jfs(E,l,C):void 0}function vJr(l,C){if(RN(l)){let E=oO(l.parent,C);return!E||Sd(E)?void 0:sO(E,R6(l.name))}else return wy(l.parent,C)}function aLe(l){switch(l.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 aLe(l.expression);case 294:return!l.expression||aLe(l.expression)}return!1}function Kfs(l,C){let E=`D${od(l)},${Fh(C)}`;return TP(E)??jZ(E,Wps(C,l)??j3t(C,vi(Ot(Gt(l.properties,D=>D.symbol?D.kind===303?aLe(D.initializer)&&_ge(C,D.symbol.escapedName):D.kind===304?_ge(C,D.symbol.escapedName):!1:!1),D=>[()=>TLe(D.kind===303?D.initializer:D.name),D.symbol.escapedName]),Ot(Gt(Cd(C),D=>{var W;return!!(D.flags&16777216)&&!!((W=l?.symbol)!=null&&W.members)&&!l.symbol.members.has(D.escapedName)&&_ge(C,D.escapedName)}),D=>[()=>wn,D.escapedName])),bg))}function jfs(l,C){let E=`D${od(l)},${Fh(C)}`,D=TP(E);if(D)return D;let W=uLe(uJ(l));return jZ(E,j3t(C,vi(Ot(Gt(l.properties,M=>!!M.symbol&&M.kind===291&&_ge(C,M.symbol.escapedName)&&(!M.initializer||aLe(M.initializer))),M=>[M.initializer?()=>TLe(M.initializer):()=>Qn,M.symbol.escapedName]),Ot(Gt(Cd(C),M=>{var se;if(!(M.flags&16777216)||!((se=l?.symbol)!=null&&se.members))return!1;let Ee=l.parent.parent;return M.escapedName===W&&Jx(Ee)&&JX(Ee.children).length?!1:!l.symbol.members.has(M.escapedName)&&_ge(C,M.escapedName)}),M=>[()=>wn,M.escapedName])),bg))}function oO(l,C){let E=RB(l)?BJr(l,C):wy(l,C),D=met(E,l,C);if(D&&!(C&&C&2&&D.flags&8650752)){let W=Qf(D,M=>ia(M)&32?M:ey(M),!0);return W.flags&1048576&&ru(l)?Kfs(l,W):W.flags&1048576&&pM(l)?jfs(l,W):W}}function met(l,C,E){if(l&&KI(l,465829888)){let D=rH(C);if(D&&E&1&&lr(D.inferences,Lms))return het(l,D.nonFixingMapper);if(D?.returnMapper){let W=het(l,D.returnMapper);return W.flags&1048576&&AL(W.types,On)&&AL(W.types,Ii)?WC(W,M=>M!==On&&M!==Ii):W}}return l}function het(l,C){return l.flags&465829888?cl(l,C):l.flags&1048576?wa(Ot(l.types,E=>het(E,C)),0):l.flags&2097152?Og(Ot(l.types,E=>het(E,C))):l}function wy(l,C){var E;if(l.flags&67108864)return;let D=wJr(l,!C);if(D>=0)return Ov[D];let{parent:W}=l;switch(W.kind){case 260:case 169:case 172:case 171:case 208:return Ffs(l,C);case 219:case 253:return Zfs(l,C);case 229:return Vfs(W,C);case 223:return Lfs(W,C);case 213:case 214:return bJr(W,l);case 170:return Wfs(W);case 216:case 234:return B2(W.type)?wy(W,C):Vc(W.type);case 226:return Ofs(l,C);case 303:case 304:return PPt(W,C);case 305:return wy(W.parent,C);case 209:{let M=W,se=oO(M,C),Ee=P3(M.elements,l),Ve=(E=Jo(M)).spreadIndices??(E.spreadIndices=Yfs(M.elements));return OPt(se,Ee,M.elements.length,Ve.first,Ve.last)}case 227:return Xfs(l,C);case 239:return w.assert(W.parent.kind===228),Pfs(W.parent,l);case 217:{if(io(W)){if(bhe(W))return Vc(Ehe(W));let M=Sx(W);if(M&&!B2(M.typeExpression.type))return Vc(M.typeExpression.type)}return wy(W,C)}case 235:return wy(W,C);case 238:return Vc(W.type);case 277:return no(W);case 294:return Ufs(W,C);case 291:case 293:return vJr(W,C);case 286:case 285:return eIs(W,C);case 301:return $fs(W)}}function SJr(l){cLe(l,wy(l,void 0),!0)}function cLe(l,C,E){GV[fT]=l,Ov[fT]=C,EP[fT]=E,fT++}function hye(){fT--}function wJr(l,C){for(let E=fT-1;E>=0;E--)if(l===GV[E]&&(C||!EP[E]))return E;return-1}function zfs(l,C){K2[rr]=l,YG[rr]=C,rr++}function qfs(){rr--}function rH(l){for(let C=rr-1;C>=0;C--)if(rV(l,K2[C]))return YG[C]}function $fs(l){return sO(C3t(!1),Sle(l))}function eIs(l,C){if(NN(l)&&C!==4){let E=wJr(l.parent,!C);if(E>=0)return Ov[E]}return WPt(l,0)}function _et(l,C){return uUr(C)!==0?tIs(l,C):iIs(l,C)}function tIs(l,C){let E=_Ot(l,Kr);E=TJr(C,uJ(C),E);let D=nH(L2.IntrinsicAttributes,C);return QA(D)||(E=yZe(D,E)),E}function rIs(l,C){if(l.compositeSignatures){let D=[];for(let W of l.compositeSignatures){let M=wd(W);if(Sd(M))return M;let se=LI(M,C);if(!se)return;D.push(se)}return Og(D)}let E=wd(l);return Sd(E)?E:LI(E,C)}function nIs(l){if(K7(l.tagName)){let E=LJr(l),D=ket(l,E);return z4(D)}let C=sC(l.tagName);if(C.flags&128){let E=ZJr(C,l);if(!E)return cr;let D=ket(l,E);return z4(D)}return C}function TJr(l,C,E){let D=SIs(C);if(D){let W=nIs(l),M=PJr(D,io(l),W,E);if(M)return M}return E}function iIs(l,C){let E=uJ(C),D=TIs(E),W=D===void 0?_Ot(l,Kr):D===""?wd(l):rIs(l,D);if(!W)return D&&O(C.attributes.properties)&&fr(C,Z.JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property,wc(D)),Kr;if(W=TJr(C,E,W),Sd(W))return W;{let M=W,se=nH(L2.IntrinsicClassAttributes,C);if(!QA(se)){let Ve=cL(se.symbol),Oe=wd(l),ot;if(Ve){let Wt=KV([Oe],Ve,JN(Ve),io(C));ot=cl(se,eE(Ve,Wt))}else ot=se;M=yZe(ot,M)}let Ee=nH(L2.IntrinsicAttributes,C);return QA(Ee)||(M=yZe(Ee,M)),M}}function sIs(l){return x_(Ne,"noImplicitAny")?Nd(l,(C,E)=>C===E||!C?C:mYr(C.typeParameters,E.typeParameters)?cIs(C,E):void 0):void 0}function oIs(l,C,E){if(!l||!C)return l||C;let D=wa([co(l),cl(co(C),E)]);return iJ(l,D)}function aIs(l,C,E){let D=nE(l),W=nE(C),M=D>=W?l:C,se=M===l?C:l,Ee=M===l?D:W,Ve=vD(l)||vD(C),Oe=Ve&&!vD(M),ot=new Array(Ee+(Oe?1:0));for(let Wt=0;Wt=eR(M)&&Wt>=eR(se),Ti=Wt>=D?void 0:Bge(l,Wt),ks=Wt>=W?void 0:Bge(C,Wt),Vo=Ti===ks?Ti:Ti?ks?void 0:Ti:ks,Hi=wA(1|(mi&&!hn?16777216:0),Vo||`arg${Wt}`);Hi.links.type=hn?V_(ln):ln,ot[Wt]=Hi}if(Oe){let Wt=wA(1,"args");Wt.links.type=V_(ST(se,Ee)),se===C&&(Wt.links.type=cl(Wt.links.type,E)),ot[Ee]=Wt}return ot}function cIs(l,C){let E=l.typeParameters||C.typeParameters,D;l.typeParameters&&C.typeParameters&&(D=eE(C.typeParameters,l.typeParameters));let W=l.declaration,M=aIs(l,C,D),se=oIs(l.thisParameter,C.thisParameter,D),Ee=Math.max(l.minArgumentCount,C.minArgumentCount),Ve=ik(W,E,se,M,void 0,void 0,Ee,(l.flags|C.flags)&167);return Ve.compositeKind=2097152,Ve.compositeSignatures=vi(l.compositeKind===2097152&&l.compositeSignatures||[l],[C]),D&&(Ve.mapper=l.compositeKind===2097152&&l.mapper&&l.compositeSignatures?eH(l.mapper,D):D),Ve}function QPt(l,C){let E=Ou(l,0),D=Gt(E,W=>!lIs(W,C));return D.length===1?D[0]:sIs(D)}function lIs(l,C){let E=0;for(;E{let se=I.getTokenEnd();if(D.category===3&&E&&se===E.start&&W===E.length){let Ee=J5(C.fileName,C.text,se,W,D,M);tg(E,Ee)}else(!E||se!==E.start)&&(E=Cm(C,se,W,D,M),KA.add(E))}),I.setText(C.text,l.pos,l.end-l.pos);try{return I.scan(),w.assert(I.reScanSlashToken(!0)===14,"Expected scanner to rescan RegularExpressionLiteral"),!!E}finally{I.setText(""),I.setOnError(void 0)}}return!1}function gIs(l){let C=Jo(l);return C.flags&1||(C.flags|=1,u(()=>uIs(l))),JI}function AIs(l,C){Me<2&&Lm(l,Ne.downlevelIteration?1536:1024);let E=Dl(l.expression,C);return CL(33,E,wn,l.expression)}function dIs(l){return l.isSpread?$b(l.type,bt):l.type}function Ege(l){return l.kind===208&&!!l.initializer||l.kind===226&&l.operatorToken.kind===64}function pIs(l){let C=qR(l.parent);return fh(C)&&SB(C.parent)}function NJr(l,C,E){let D=l.elements,W=D.length,M=[],se=[];SJr(l);let Ee=Zx(l),Ve=Sge(l),Oe=oO(l,void 0),ot=pIs(l)||!!Oe&&jv(Oe,Rt=>mge(Rt)||qb(Rt)&&!Rt.nameType&&!!sye(Rt.target||Rt)),Wt=!1;for(let Rt=0;Rtse[Qr]&8?zV(Rt,bt)||Mt:Rt),2):nt?Yc:Pe,Ve))}function RJr(l){if(!(ia(l)&4))return l;let C=l.literalType;return C||(C=l.literalType=MYr(l),C.objectFlags|=147456),C}function fIs(l){switch(l.kind){case 167:return IIs(l);case 80:return bN(l.escapedText);case 9:case 11:return bN(l.text);default:return!1}}function IIs(l){return l_(jN(l),296)}function jN(l){let C=Jo(l.expression);if(!C.resolvedType){if((Se(l.parent.parent)||va(l.parent.parent)||XI(l.parent.parent))&&ro(l.expression)&&l.expression.operatorToken.kind===103&&l.parent.kind!==177&&l.parent.kind!==178)return C.resolvedType=cr;if(C.resolvedType=Dl(l.expression),Hl(l.parent)&&!CC(l.parent)&&rp(l.parent.parent)){let E=w2(l.parent.parent),D=kPt(E);D&&(Jo(D).flags|=4096,Jo(l).flags|=32768,Jo(l.parent.parent).flags|=32768)}(C.resolvedType.flags&98304||!l_(C.resolvedType,402665900)&&!bg(C.resolvedType,ki))&&fr(l,Z.A_computed_property_name_must_be_of_type_string_number_symbol_or_any)}return C.resolvedType}function CIs(l){var C;let E=(C=l.declarations)==null?void 0:C[0];return bN(l.escapedName)||E&&wf(E)&&fIs(E.name)}function DJr(l){var C;let E=(C=l.declarations)==null?void 0:C[0];return bee(l)||E&&wf(E)&&kg(E.name)&&l_(jN(E.name),4096)}function HPt(l,C,E,D){let W=[];for(let se=C;se0&&(Ee=zM(Ee,Cs(),l.symbol,hn,ot),se=[],M=xu(),Ti=!1,ks=!1,Vo=!1);let ma=ET(Dl(Ds.expression,C&2));if(lLe(ma)){let Ng=L3t(ma,ot);if(W&&kJr(Ng,W,Ds),Hi=se.length,QA(Ee))continue;Ee=zM(Ee,Ng,l.symbol,hn,ot)}else fr(Ds,Z.Spread_types_may_only_be_created_from_object_types),Ee=cr;continue}else w.assert(Ds.kind===177||Ds.kind===178),j7(Ds);Ca&&!(Ca.flags&8576)?bg(Ca,ki)&&(bg(Ca,bt)?ks=!0:bg(Ca,Es)?Vo=!0:Ti=!0,D&&(mi=!0)):M.set(jo.escapedName,jo),se.push(jo)}if(hye(),Oe){let Ds=Si(Ve.pattern.parent,Ca=>Ca.kind===260||Ca.kind===226||Ca.kind===169);if(Si(l,Ca=>Ca===Ds||Ca.kind===305).kind!==305)for(let Ca of Cd(Ve))!M.get(Ca.escapedName)&&!yg(Ee,Ca.escapedName)&&(Ca.flags&16777216||fr(Ca.valueDeclaration||((E=$s(Ca,wB))==null?void 0:E.links.bindingElement),Z.Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value),M.set(Ca.escapedName,Ca),se.push(Ca))}if(QA(Ee))return cr;if(Ee!==Lc)return se.length>0&&(Ee=zM(Ee,Cs(),l.symbol,hn,ot),se=[],M=xu(),Ti=!1,ks=!1),Qf(Ee,Ds=>Ds===Lc?Cs():Ds);return Cs();function Cs(){let Ds=[];Ti&&Ds.push(HPt(l,Hi,se,Jt)),ks&&Ds.push(HPt(l,Hi,se,bt)),Vo&&Ds.push(HPt(l,Hi,se,Es));let jo=qn(l.symbol,M,v,v,Ds);return jo.objectFlags|=hn|128|131072,ln&&(jo.objectFlags|=4096),mi&&(jo.objectFlags|=512),D&&(jo.pattern=l),jo}}function lLe(l){let C=m4r(Qf(l,yD));return!!(C.flags&126615553||C.flags&3145728&&he(C.types,lLe))}function hIs(l){JPt(l)}function _Is(l,C){return j7(l),gLe(l)||Mt}function yIs(l){JPt(l.openingElement),K7(l.closingElement.tagName)?Eet(l.closingElement):Dl(l.closingElement.tagName),bet(l)}function bIs(l,C){return j7(l),gLe(l)||Mt}function EIs(l){JPt(l.openingFragment);let C=ls(l);return Oee(Ne)&&(Ne.jsxFactory||C.pragmas.has("jsx"))&&!Ne.jsxFragmentFactory&&!C.pragmas.has("jsxfrag")&&fr(l,Ne.jsxFactory?Z.The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:Z.An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments),bet(l),gLe(l)||Mt}function YPt(l){return l.includes("-")}function K7(l){return sr(l)&&UX(l.escapedText)||aT(l)}function xJr(l,C){return l.initializer?wge(l.initializer,C):Qn}function BIs(l,C=0){let E=l.attributes,D=wy(E,0),W=nt?xu():void 0,M=xu(),se=jm,Ee=!1,Ve,Oe=!1,ot=2048,Wt=uLe(uJ(l));for(let ln of E.properties){let hn=ln.symbol;if(RN(ln)){let mi=xJr(ln,C);ot|=ia(mi)&458752;let Ti=wA(4|hn.flags,hn.escapedName);if(Ti.declarations=hn.declarations,Ti.parent=hn.parent,hn.valueDeclaration&&(Ti.valueDeclaration=hn.valueDeclaration),Ti.links.type=mi,Ti.links.target=hn,M.set(Ti.escapedName,Ti),W?.set(Ti.escapedName,Ti),R6(ln.name)===Wt&&(Oe=!0),D){let ks=yg(D,hn.escapedName);ks&&ks.declarations&&MB(ks)&&sr(ln.name)&&JG(ln.name,ks.declarations,ln.name.escapedText)}if(D&&C&2&&!(C&4)&&UB(ln)){let ks=rH(E);w.assert(ks);let Vo=ln.initializer.expression;uPt(ks,Vo,mi)}}else{w.assert(ln.kind===293),M.size>0&&(se=zM(se,Qr(),E.symbol,ot,!1),M=xu());let mi=ET(Dl(ln.expression,C&2));Sd(mi)&&(Ee=!0),lLe(mi)?(se=zM(se,mi,E.symbol,ot,!1),W&&kJr(mi,W,ln)):(fr(ln.expression,Z.Spread_types_may_only_be_created_from_object_types),Ve=Ve?Og([Ve,mi]):mi)}}Ee||M.size>0&&(se=zM(se,Qr(),E.symbol,ot,!1));let Rt=l.parent.kind===284?l.parent:void 0;if(Rt&&Rt.openingElement===l&&JX(Rt.children).length>0){let ln=bet(Rt,C);if(!Ee&&Wt&&Wt!==""){Oe&&fr(E,Z._0_are_specified_twice_The_attribute_named_0_will_be_overwritten,wc(Wt));let hn=oO(l.attributes,void 0),mi=hn&&sO(hn,Wt),Ti=wA(4,Wt);Ti.links.type=ln.length===1?ln[0]:mi&&jv(mi,mge)?ED(ln):V_(wa(ln)),Ti.valueDeclaration=_e.createPropertySignature(void 0,wc(Wt),void 0,void 0),GA(Ti.valueDeclaration,E),Ti.valueDeclaration.symbol=Ti;let ks=xu();ks.set(Wt,Ti),se=zM(se,qn(E.symbol,ks,v,v,v),E.symbol,ot,!1)}}if(Ee)return Mt;if(Ve&&se!==jm)return Og([Ve,se]);return Ve||(se===jm?Qr():se);function Qr(){ot|=8192;let ln=qn(E.symbol,M,v,v,v);return ln.objectFlags|=ot|128|131072,ln}}function bet(l,C){let E=[];for(let D of l.children)if(D.kind===12)D.containsOnlyTriviaWhiteSpaces||E.push(Jt);else{if(D.kind===294&&!D.expression)continue;E.push(wge(D,C))}return E}function kJr(l,C,E){for(let D of Cd(l))if(!(D.flags&16777216)){let W=C.get(D.escapedName);if(W){let M=fr(W.valueDeclaration,Z._0_is_specified_more_than_once_so_this_usage_will_be_overwritten,wc(W.escapedName));tg(M,Js(E,Z.This_spread_always_overwrites_this_property))}}}function vIs(l,C){return BIs(l.parent,C)}function nH(l,C){let E=uJ(C),D=E&&Y1(E),W=D&&L_(D,l,788968);return W?kp(W):cr}function Eet(l){let C=Jo(l);if(!C.resolvedSymbol){let E=nH(L2.IntrinsicElements,l);if(QA(E))return dt&&fr(l,Z.JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists,wc(L2.IntrinsicElements)),C.resolvedSymbol=en;{if(!sr(l.tagName)&&!aT(l.tagName))return w.fail();let D=aT(l.tagName)?x2(l.tagName):l.tagName.escapedText,W=yg(E,D);if(W)return C.jsxFlags|=1,C.resolvedSymbol=W;let M=r8r(E,fb(wc(D)));return M?(C.jsxFlags|=2,C.resolvedSymbol=M):age(E,D)?(C.jsxFlags|=2,C.resolvedSymbol=E.symbol):(fr(l,Z.Property_0_does_not_exist_on_type_1,Bhe(l.tagName),"JSX."+L2.IntrinsicElements),C.resolvedSymbol=en)}}return C.resolvedSymbol}function XPt(l){let C=l&&ls(l),E=C&&Jo(C);if(E&&E.jsxImplicitImportContainer===!1)return;if(E&&E.jsxImplicitImportContainer)return E.jsxImplicitImportContainer;let D=lle(cle(Ne,C),Ne);if(!D)return;let M=o0(Ne)===1?Z.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:Z.Cannot_find_module_0_or_its_corresponding_type_declarations,se=nbs(C,D),Ee=WM(se||l,D,M,l),Ve=Ee&&Ee!==en?FA(UI(Ee)):void 0;return E&&(E.jsxImplicitImportContainer=Ve||!1),Ve}function uJ(l){let C=l&&Jo(l);if(C&&C.jsxNamespace)return C.jsxNamespace;if(!C||C.jsxNamespace!==!1){let D=XPt(l);if(!D||D===en){let W=NP(l);D=Pi(l,W,1920,void 0,!1)}if(D){let W=UI(L_(Y1(UI(D)),L2.JSX,1920));if(W&&W!==en)return C&&(C.jsxNamespace=W),W}C&&(C.jsxNamespace=!1)}let E=UI(Fre(L2.JSX,1920,void 0));if(E!==en)return E}function GJr(l,C){let E=C&&L_(C.exports,l,788968),D=E&&kp(E),W=D&&Cd(D);if(W){if(W.length===0)return"";if(W.length===1)return W[0].escapedName;W.length>1&&E.declarations&&fr(E.declarations[0],Z.The_global_type_JSX_0_may_not_have_more_than_one_property,wc(l))}}function SIs(l){return l&&L_(l.exports,L2.LibraryManagedAttributes,788968)}function wIs(l){return l&&L_(l.exports,L2.ElementType,788968)}function TIs(l){return GJr(L2.ElementAttributesPropertyNameContainer,l)}function uLe(l){return GJr(L2.ElementChildrenAttributeNameContainer,l)}function FJr(l,C){if(l.flags&4)return[yt];if(l.flags&128){let W=ZJr(l,C);return W?[ket(C,W)]:(fr(C,Z.Property_0_does_not_exist_on_type_1,l.value,"JSX."+L2.IntrinsicElements),v)}let E=ey(l),D=Ou(E,1);return D.length===0&&(D=Ou(E,0)),D.length===0&&E.flags&1048576&&(D=MWt(Ot(E.types,W=>FJr(W,C)))),D}function ZJr(l,C){let E=nH(L2.IntrinsicElements,C);if(!QA(E)){let D=l.value,W=yg(E,Dd(D));if(W)return co(W);let M=jP(E,Jt);return M||void 0}return Mt}function NIs(l,C,E){if(l===1){let W=WJr(E);W&&KB(C,W,db,E.tagName,Z.Its_return_type_0_is_not_a_valid_JSX_element,D)}else if(l===0){let W=VJr(E);W&&KB(C,W,db,E.tagName,Z.Its_instance_type_0_is_not_a_valid_JSX_element,D)}else{let W=WJr(E),M=VJr(E);if(!W||!M)return;let se=wa([W,M]);KB(C,se,db,E.tagName,Z.Its_element_type_0_is_not_a_valid_JSX_element,D)}function D(){let W=Nf(E.tagName);return ou(void 0,Z._0_cannot_be_used_as_a_JSX_component,W)}}function LJr(l){var C;w.assert(K7(l.tagName));let E=Jo(l);if(!E.resolvedJsxElementAttributesType){let D=Eet(l);if(E.jsxFlags&1)return E.resolvedJsxElementAttributesType=co(D)||cr;if(E.jsxFlags&2){let W=aT(l.tagName)?x2(l.tagName):l.tagName.escapedText;return E.resolvedJsxElementAttributesType=((C=L7(nH(L2.IntrinsicElements,l),W))==null?void 0:C.type)||cr}else return E.resolvedJsxElementAttributesType=cr}return E.resolvedJsxElementAttributesType}function VJr(l){let C=nH(L2.ElementClass,l);if(!QA(C))return C}function gLe(l){return nH(L2.Element,l)}function WJr(l){let C=gLe(l);if(C)return wa([C,ur])}function RIs(l){let C=uJ(l);if(!C)return;let E=wIs(C);if(!E)return;let D=PJr(E,io(l));if(!(!D||QA(D)))return D}function PJr(l,C,...E){let D=kp(l);if(l.flags&524288){let W=al(l).typeParameters;if(O(W)>=E.length){let M=KV(E,W,E.length,C);return O(M)===0?D:kre(l,M)}}if(O(D.typeParameters)>=E.length){let W=KV(E,D.typeParameters,E.length,C);return uL(D,W)}}function DIs(l){let C=nH(L2.IntrinsicElements,l);return C?Cd(C):v}function xIs(l){(Ne.jsx||0)===0&&fr(l,Z.Cannot_use_JSX_unless_the_jsx_flag_is_provided),gLe(l)===void 0&&dt&&fr(l,Z.JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist)}function JPt(l){let C=Um(l);if(C&&wys(l),xIs(l),xPt(l),C){let E=l,D=Hre(E);Fet(D,l);let W=RIs(E);if(W!==void 0){let M=E.tagName,se=K7(M)?fb(Bhe(M)):Dl(M);KB(se,W,db,M,Z.Its_type_0_is_not_a_valid_JSX_element_type,()=>{let Ee=Nf(M);return ou(void 0,Z._0_cannot_be_used_as_a_JSX_component,Ee)})}else NIs(uUr(E),wd(D),E)}}function Bet(l,C,E){if(l.flags&524288&&(JM(l,C)||L7(l,C)||U0e(C)&&sk(l,Jt)||E&&YPt(C)))return!0;if(l.flags&33554432)return Bet(l.baseType,C,E);if(l.flags&3145728&&yye(l)){for(let D of l.types)if(Bet(D,C,E))return!0}return!1}function yye(l){return!!(l.flags&524288&&!(ia(l)&512)||l.flags&67108864||l.flags&33554432&&yye(l.baseType)||l.flags&1048576&&lr(l.types,yye)||l.flags&2097152&&he(l.types,yye))}function kIs(l,C){if(Nys(l),l.expression){let E=Dl(l.expression,C);return l.dotDotDotToken&&E!==Mt&&!jB(E)&&fr(l,Z.JSX_spread_child_must_be_an_array_type),E}else return cr}function UPt(l){return l.valueDeclaration?aH(l.valueDeclaration):0}function KPt(l){if(l.flags&8192||cI(l)&4)return!0;if(io(l.valueDeclaration)){let C=l.valueDeclaration.parent;return C&&ro(C)&&mI(C)===3}}function jPt(l,C,E,D,W,M=!0){let se=M?l.kind===166?l.right:l.kind===205?l:l.kind===208&&l.propertyName?l.propertyName:l.name:void 0;return OJr(l,C,E,D,W,se)}function OJr(l,C,E,D,W,M){var se;let Ee=V1(W,E);if(C){if(Me<2&&QJr(W))return M&&fr(M,Z.Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword),!1;if(Ee&64)return M&&fr(M,Z.Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression,$c(W),Ys(Y7(W))),!1;if(!(Ee&256)&&((se=W.declarations)!=null&&se.some(m8)))return M&&fr(M,Z.Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super,$c(W)),!1}if(Ee&64&&QJr(W)&&(q$(l)||ORe(l)||Wg(l.parent)&&Cce(l.parent.parent))){let Oe=kB(a_(W));if(Oe&&E0s(l))return M&&fr(M,Z.Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor,$c(W),N2(Oe.name)),!1}if(!(Ee&6))return!0;if(Ee&2){let Oe=kB(a_(W));return eQt(l,Oe)?!0:(M&&fr(M,Z.Property_0_is_private_and_only_accessible_within_class_1,$c(W),Ys(Y7(W))),!1)}if(C)return!0;let Ve=e8r(l,Oe=>{let ot=kp(Oo(Oe));return a4r(ot,W,E)});return!Ve&&(Ve=GIs(l),Ve=Ve&&a4r(Ve,W,E),Ee&256||!Ve)?(M&&fr(M,Z.Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses,$c(W),Ys(Y7(W)||D)),!1):Ee&256?!0:(D.flags&262144&&(D=D.isThisType?vy(D):c_(D)),!D||!wre(D,Ve)?(M&&fr(M,Z.Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_class_2,$c(W),Ys(Ve),Ys(D)),!1):!0)}function GIs(l){let C=FIs(l),E=C?.type&&Vc(C.type);if(E&&E.flags&262144&&(E=vy(E)),E&&ia(E)&7)return Sre(E)}function FIs(l){let C=n0(l,!1,!1);return C&&eu(C)?sV(C):void 0}function QJr(l){return!!HZe(l,C=>!(C.flags&8192))}function Qre(l){return zN(Dl(l),l)}function ALe(l){return vT(l,50331648)}function zPt(l){return ALe(l)?AF(l):l}function ZIs(l,C){let E=lp(l)?r0(l):void 0;if(l.kind===106){fr(l,Z.The_value_0_cannot_be_used_here,"null");return}if(E!==void 0&&E.length<100){if(sr(l)&&E==="undefined"){fr(l,Z.The_value_0_cannot_be_used_here,"undefined");return}fr(l,C&16777216?C&33554432?Z._0_is_possibly_null_or_undefined:Z._0_is_possibly_undefined:Z._0_is_possibly_null,E)}else fr(l,C&16777216?C&33554432?Z.Object_is_possibly_null_or_undefined:Z.Object_is_possibly_undefined:Z.Object_is_possibly_null)}function LIs(l,C){fr(l,C&16777216?C&33554432?Z.Cannot_invoke_an_object_which_is_possibly_null_or_undefined:Z.Cannot_invoke_an_object_which_is_possibly_undefined:Z.Cannot_invoke_an_object_which_is_possibly_null)}function MJr(l,C,E){if(nt&&l.flags&2){if(lp(C)){let W=r0(C);if(W.length<100)return fr(C,Z._0_is_of_type_unknown,W),cr}return fr(C,Z.Object_is_of_type_unknown),cr}let D=Vre(l,50331648);if(D&50331648){E(C,D);let W=AF(l);return W.flags&229376?cr:W}return l}function zN(l,C){return MJr(l,C,ZIs)}function HJr(l,C){let E=zN(l,C);if(E.flags&16384){if(lp(C)){let D=r0(C);if(sr(C)&&D==="undefined")return fr(C,Z.The_value_0_cannot_be_used_here,D),E;if(D.length<100)return fr(C,Z._0_is_possibly_undefined,D),E}fr(C,Z.Object_is_possibly_undefined)}return E}function vet(l,C,E){return l.flags&64?VIs(l,C):$Pt(l,l.expression,Qre(l.expression),l.name,C,E)}function VIs(l,C){let E=Dl(l.expression),D=gye(E,l.expression);return z$e($Pt(l,l.expression,zN(D,l.expression),l.name,C),l,D!==E)}function YJr(l,C){let E=hce(l)&&vG(l.left)?zN(oLe(l.left),l.left):Qre(l.left);return $Pt(l,l.left,E,l.right,C)}function qPt(l){for(;l.parent.kind===217;)l=l.parent;return SB(l.parent)&&l.parent.expression===l}function dLe(l,C){for(let E=fce(C);E;E=Km(E)){let{symbol:D}=E,W=yee(D,l),M=D.members&&D.members.get(W)||D.exports&&D.exports.get(W);if(M)return M}}function WIs(l){if(!Km(l))return qi(l,Z.Private_identifiers_are_not_allowed_outside_class_bodies);if(!iD(l.parent)){if(!DB(l))return qi(l,Z.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);let C=ro(l.parent)&&l.parent.operatorToken.kind===103;if(!wet(l)&&!C)return qi(l,Z.Cannot_find_name_0,oo(l))}return!1}function PIs(l){WIs(l);let C=wet(l);return C&&fLe(C,void 0,!1),Mt}function wet(l){if(!DB(l))return;let C=Jo(l);return C.resolvedSymbol===void 0&&(C.resolvedSymbol=dLe(l.escapedText,l)),C.resolvedSymbol}function Tet(l,C){return yg(l,C.escapedName)}function OIs(l,C,E){let D,W=Cd(l);W&&X(W,se=>{let Ee=se.valueDeclaration;if(Ee&&wf(Ee)&&Gc(Ee.name)&&Ee.name.escapedText===C.escapedText)return D=se,!0});let M=H1(C);if(D){let se=w.checkDefined(D.valueDeclaration),Ee=w.checkDefined(Km(se));if(E?.valueDeclaration){let Ve=E.valueDeclaration,Oe=Km(Ve);if(w.assert(!!Oe),Si(Oe,ot=>Ee===ot)){let ot=fr(C,Z.The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling,M,Ys(l));return tg(ot,Js(Ve,Z.The_shadowing_declaration_of_0_is_defined_here,M),Js(se,Z.The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here,M)),!0}}return fr(C,Z.Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier,M,H1(Ee.name||H8e)),!0}return!1}function XJr(l,C){return(eB(C)||q$(l)&&hT(C))&&n0(l,!0,!1)===sF(C)}function $Pt(l,C,E,D,W,M){let se=Jo(C).resolvedSymbol,Ee=Fx(l),Ve=ey(Ee!==0||qPt(l)?tE(E):E),Oe=Sd(Ve)||Ve===xo,ot;if(Gc(D)){(Me<9||Me<99||!Le)&&(Ee!==0&&Lm(l,1048576),Ee!==1&&Lm(l,524288));let Rt=dLe(D.escapedText,D);if(Ee&&Rt&&Rt.valueDeclaration&&lI(Rt.valueDeclaration)&&qi(D,Z.Cannot_assign_to_private_method_0_Private_methods_are_not_writable,oo(D)),Oe){if(Rt)return QA(Ve)?cr:Ve;if(fce(D)===void 0)return qi(D,Z.Private_identifiers_are_not_allowed_outside_class_bodies),Mt}if(ot=Rt&&Tet(E,Rt),ot===void 0){if(OIs(E,D,Rt))return cr;let Qr=fce(D);Qr&&B5(ls(Qr),Ne.checkJs)&&qi(D,Z.Private_field_0_must_be_declared_in_an_enclosing_class,oo(D))}else ot.flags&65536&&!(ot.flags&32768)&&Ee!==1&&fr(l,Z.Private_accessor_was_defined_without_a_getter)}else{if(Oe)return sr(C)&&se&&U7(l,2,void 0,E),QA(Ve)?cr:Ve;ot=yg(Ve,D.escapedText,Wet(Ve),l.kind===166)}U7(l,2,ot,E);let Wt;if(ot){let Rt=jOt(ot,D);if(MB(Rt)&&D3t(l,Rt)&&Rt.declarations&&JG(D,Rt.declarations,D.escapedText),QIs(ot,l,D),fLe(ot,l,eUr(C,se)),Jo(l).resolvedSymbol=ot,jPt(l,C.kind===108,M5(l),Ve,ot),OUr(l,ot,Ee))return fr(D,Z.Cannot_assign_to_0_because_it_is_a_read_only_property,oo(D)),cr;Wt=XJr(l,ot)?_r:M||Uce(l)?JP(ot):co(ot)}else{let Rt=!Gc(D)&&(Ee===0||!eJ(E)||N6(E))?L7(Ve,D.escapedText):void 0;if(!(Rt&&Rt.type)){let Qr=eOt(l,E.symbol,!0);return!Qr&&rye(E)?Mt:E.symbol===Dr?(Dr.exports.has(D.escapedText)&&Dr.exports.get(D.escapedText).flags&418?fr(D,Z.Property_0_does_not_exist_on_type_1,wc(D.escapedText),Ys(E)):dt&&fr(D,Z.Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature,Ys(E)),Mt):(D.escapedText&&!xp(l)&&UJr(D,N6(E)?Ve:E,Qr),cr)}Rt.isReadonly&&(Zx(l)||mme(l))&&fr(l,Z.Index_signature_in_type_0_only_permits_reading,Ys(Ve)),Wt=Rt.type,Ne.noUncheckedIndexedAccess&&Fx(l)!==1&&(Wt=wa([Wt,ar])),Ne.noPropertyAccessFromIndexSignature&&fo(l)&&fr(D,Z.Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0,wc(D.escapedText)),Rt.declaration&&WN(Rt.declaration)&&JG(D,[Rt.declaration],D.escapedText)}return JJr(l,ot,Wt,D,W)}function eOt(l,C,E){var D;let W=ls(l);if(W&&Ne.checkJs===void 0&&W.checkJsDirective===void 0&&(W.scriptKind===1||W.scriptKind===2)){let M=X(C?.declarations,ls),se=!C?.valueDeclaration||!va(C.valueDeclaration)||((D=C.valueDeclaration.heritageClauses)==null?void 0:D.length)||Gx(!1,C.valueDeclaration);return!(W!==M&&M&&bs(M))&&!(E&&C&&C.flags&32&&se)&&!(l&&E&&fo(l)&&l.expression.kind===110&&se)}return!1}function JJr(l,C,E,D,W){let M=Fx(l);if(M===1)return dF(E,!!(C&&C.flags&16777216));if(C&&!(C.flags&98311)&&!(C.flags&8192&&E.flags&1048576)&&!rtt(C.declarations))return E;if(E===_r)return cge(l,C);E=DPt(E,l,W);let se=!1;if(nt&&It&&mp(l)&&l.expression.kind===110){let Ve=C&&C.valueDeclaration;if(Ve&&QKr(Ve)&&!eg(Ve)){let Oe=Cye(l);Oe.kind===176&&Oe.parent===Ve.parent&&!(Ve.flags&33554432)&&(se=!0)}}else nt&&C&&C.valueDeclaration&&fo(C.valueDeclaration)&&cee(C.valueDeclaration)&&Cye(l)===Cye(C.valueDeclaration)&&(se=!0);let Ee=fF(l,E,se?rW(E):E);return se&&!Lre(E)&&Lre(Ee)?(fr(D,Z.Property_0_is_used_before_being_assigned,$c(C)),E):M?gF(Ee):Ee}function QIs(l,C,E){let{valueDeclaration:D}=l;if(!D||ls(C).isDeclarationFile)return;let W,M=oo(E);tOt(C)&&!Egs(D)&&!(mp(C)&&mp(C.expression))&&!aw(D,E)&&!(lI(D)&&Att(D)&256)&&(Le||!MIs(l))?W=fr(E,Z.Property_0_is_used_before_its_initialization,M):D.kind===263&&C.parent.kind!==183&&!(D.flags&33554432)&&!aw(D,E)&&(W=fr(E,Z.Class_0_used_before_its_declaration,M)),W&&tg(W,Js(D,Z._0_is_declared_here,M))}function tOt(l){return!!Si(l,C=>{switch(C.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 hc(C.parent)&&ef(C.parent.parent)?!0:"quit";default:return DB(C)?!1:"quit"}})}function MIs(l){if(!(l.parent.flags&32))return!1;let C=co(l.parent);for(;;){if(C=C.symbol&&HIs(C),!C)return!1;let E=yg(C,l.escapedName);if(E&&E.valueDeclaration)return!0}}function HIs(l){let C=Sa(l);if(C.length!==0)return Og(C)}function UJr(l,C,E){let D,W;if(!Gc(l)&&C.flags&1048576&&!(C.flags&402784252)){for(let se of C.types)if(!yg(se,l.escapedText)&&!L7(se,l.escapedText)){D=ou(D,Z.Property_0_does_not_exist_on_type_1,kd(l),Ys(se));break}}if(KJr(l.escapedText,C)){let se=kd(l),Ee=Ys(C);D=ou(D,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead,se,Ee,Ee+"."+se)}else{let se=Nye(C);if(se&&yg(se,l.escapedText))D=ou(D,Z.Property_0_does_not_exist_on_type_1,kd(l),Ys(C)),W=Js(l,Z.Did_you_forget_to_use_await);else{let Ee=kd(l),Ve=Ys(C),Oe=JIs(Ee,C);if(Oe!==void 0)D=ou(D,Z.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,Ee,Ve,Oe);else{let ot=rOt(l,C);if(ot!==void 0){let Wt=pf(ot),Rt=E?Z.Property_0_may_not_exist_on_type_1_Did_you_mean_2:Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2;D=ou(D,Rt,Ee,Ve,Wt),W=ot.valueDeclaration&&Js(ot.valueDeclaration,Z._0_is_declared_here,Wt)}else{let Wt=YIs(C)?Z.Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom:Z.Property_0_does_not_exist_on_type_1;D=ou(qWt(D,C),Wt,Ee,Ve)}}}}let M=ZS(ls(l),l,D);W&&tg(M,W),sw(!E||D.code!==Z.Property_0_may_not_exist_on_type_1_Did_you_mean_2.code,M)}function YIs(l){return Ne.lib&&!Ne.lib.includes("dom")&&efs(l,C=>C.symbol&&/^(EventTarget|Node|((HTML[a-zA-Z]*)?Element))$/.test(wc(C.symbol.escapedName)))&&uF(l)}function KJr(l,C){let E=C.symbol&&yg(co(C.symbol),l);return E!==void 0&&!!E.valueDeclaration&&eg(E.valueDeclaration)}function XIs(l){let C=H1(l),D=D8().get(C);return D&&kl(D.keys())}function JIs(l,C){let E=ey(C).symbol;if(!E)return;let D=pf(E),M=D8().get(D);if(M){for(let[se,Ee]of M)if(Ue(Ee,l))return se}}function jJr(l,C){return pLe(l,Cd(C),106500)}function rOt(l,C){let E=Cd(C);if(typeof l!="string"){let D=l.parent;fo(D)&&(E=Gt(E,W=>tUr(D,C,W))),l=oo(l)}return pLe(l,E,111551)}function zJr(l,C){let E=Ya(l)?l:oo(l),D=Cd(C);return(E==="for"?be(D,M=>pf(M)==="htmlFor"):E==="class"?be(D,M=>pf(M)==="className"):void 0)??pLe(E,D,111551)}function qJr(l,C){let E=rOt(l,C);return E&&pf(E)}function UIs(l,C,E){let D=L_(l,C,E);if(D)return D;let W;return l===kt?W=tr(["string","number","boolean","object","bigint","symbol"],se=>l.has(se.charAt(0).toUpperCase()+se.slice(1))?wA(524288,se):void 0).concat(on(l.values())):W=on(l.values()),pLe(wc(C),W,E)}function $Jr(l,C,E){return w.assert(C!==void 0,"outername should always be defined"),Ns(l,C,E,void 0,!1,!1)}function nOt(l,C){return C.exports&&pLe(oo(l),PM(C),2623475)}function KIs(l,C,E){function D(se){let Ee=JM(l,se);if(Ee){let Ve=AJ(co(Ee));return!!Ve&&eR(Ve)>=1&&bg(E,ST(Ve,0))}return!1}let W=Zx(C)?"set":"get";if(!D(W))return;let M=kee(C.expression);return M===void 0?M=W:M+="."+W,M}function jIs(l,C){let E=C.types.filter(D=>!!(D.flags&128));return Rd(l.value,E,D=>D.value)}function pLe(l,C,E){return Rd(l,C,D);function D(W){let M=pf(W);if(!uc(M,'"')){if(W.flags&E)return M;if(W.flags&2097152){let se=eF(W);if(se&&se.flags&E)return M}}}}function fLe(l,C,E){let D=l&&l.flags&106500&&l.valueDeclaration;if(!D)return;let W=ib(D,2),M=l.valueDeclaration&&wf(l.valueDeclaration)&&Gc(l.valueDeclaration.name);if(!(!W&&!M)&&!(C&&Uce(C)&&!(l.flags&65536))){if(E){let se=Si(C,pd);if(se&&se.symbol===l)return}(cI(l)&1?al(l).target:l).isReferenced=-1}}function eUr(l,C){return l.kind===110||!!C&&lp(l)&&C===Sy(sb(l))}function zIs(l,C){switch(l.kind){case 211:return iOt(l,l.expression.kind===108,C,tE(Dl(l.expression)));case 166:return iOt(l,!1,C,tE(Dl(l.left)));case 205:return iOt(l,!1,C,Vc(l))}}function tUr(l,C,E){return sOt(l,l.kind===211&&l.expression.kind===108,!1,C,E)}function iOt(l,C,E,D){if(Sd(D))return!0;let W=yg(D,E);return!!W&&sOt(l,C,!1,D,W)}function sOt(l,C,E,D,W){if(Sd(D))return!0;if(W.valueDeclaration&&Dh(W.valueDeclaration)){let M=Km(W.valueDeclaration);return!Gm(l)&&!!Si(l,se=>se===M)}return OJr(l,C,E,D,W)}function qIs(l){let C=l.initializer;if(C.kind===261){let E=C.declarations[0];if(E&&!fu(E.name))return Oo(E)}else if(C.kind===80)return Sy(C)}function $Is(l){return ty(l).length===1&&!!sk(l,bt)}function eCs(l){let C=zA(l);if(C.kind===80){let E=Sy(C);if(E.flags&3){let D=l,W=l.parent;for(;W;){if(W.kind===249&&D===W.statement&&qIs(W)===E&&$Is(u_(W.expression)))return!0;D=W,W=W.parent}}}return!1}function tCs(l,C){return l.flags&64?rCs(l,C):rUr(l,Qre(l.expression),C)}function rCs(l,C){let E=Dl(l.expression),D=gye(E,l.expression);return z$e(rUr(l,zN(D,l.expression),C),l,D!==E)}function rUr(l,C,E){let D=Fx(l)!==0||qPt(l)?tE(C):C,W=l.argumentExpression,M=Dl(W);if(QA(D)||D===xo)return D;if(Wet(D)&&!JA(W))return fr(W,Z.A_const_enum_member_can_only_be_accessed_using_a_string_literal),cr;let se=eCs(W)?bt:M,Ee=Fx(l),Ve;Ee===0?Ve=32:(Ve=4|(eJ(D)&&!N6(D)?2:0),Ee===2&&(Ve|=32));let Oe=zV(D,se,Ve,l)||cr;return cKr(JJr(l,Jo(l).resolvedSymbol,Oe,W,E),l)}function nUr(l){return SB(l)||W1(l)||Um(l)}function gJ(l){return nUr(l)&&X(l.typeArguments,Kg),l.kind===215?Dl(l.template):Um(l)?Dl(l.attributes):ro(l)?Dl(l.left):SB(l)&&X(l.arguments,C=>{Dl(C)}),yt}function qN(l){return gJ(l),tt}function nCs(l,C,E){let D,W,M=0,se,Ee=-1,Ve;w.assert(!C.length);for(let Oe of l){let ot=Oe.declaration&&Oo(Oe.declaration),Wt=Oe.declaration&&Oe.declaration.parent;!W||ot===W?D&&Wt===D?se=se+1:(D=Wt,se=M):(se=M=C.length,D=Wt),W=ot,j8e(Oe)?(Ee++,Ve=Ee,M++):Ve=se,C.splice(Ve,0,E?Yus(Oe,E):Oe)}}function Net(l){return!!l&&(l.kind===230||l.kind===237&&l.isSpread)}function oOt(l){return ke(l,Net)}function iUr(l){return!!(l.flags&16384)}function iCs(l){return!!(l.flags&49155)}function Ret(l,C,E,D=!1){let W,M=!1,se=nE(E),Ee=eR(E);if(l.kind===215)if(W=C.length,l.template.kind===228){let Ve=Ta(l.template.templateSpans);M=Tf(Ve.literal)||!!Ve.literal.isUnterminated}else{let Ve=l.template;w.assert(Ve.kind===15),M=!!Ve.isUnterminated}else if(l.kind===170)W=AUr(l,E);else if(l.kind===226)W=1;else if(Um(l)){if(M=l.attributes.end===l.end,M)return!0;W=Ee===0?C.length:1,se=C.length===0?se:1,Ee=Math.min(Ee,1)}else if(l.arguments){W=D?C.length+1:C.length,M=l.arguments.end===l.end;let Ve=oOt(C);if(Ve>=0)return Ve>=eR(E)&&(vD(E)||Vese)return!1;if(M||W>=Ee)return!0;for(let Ve=W;Ve=D&&C.length<=E}function sUr(l,C){let E;return!!(l.target&&(E=iH(l.target,C))&&O7(E))}function AJ(l){return bye(l,0,!1)}function oUr(l){return bye(l,0,!1)||bye(l,1,!1)}function bye(l,C,E){if(l.flags&524288){let D=bT(l);if(E||D.properties.length===0&&D.indexInfos.length===0){if(C===0&&D.callSignatures.length===1&&D.constructSignatures.length===0)return D.callSignatures[0];if(C===1&&D.constructSignatures.length===1&&D.callSignatures.length===0)return D.constructSignatures[0]}}}function aUr(l,C,E,D){let W=pye(l.typeParameters,l,0,D),M=Eye(C),se=E&&(M&&M.flags&262144?E.nonFixingMapper:E.mapper),Ee=se?H7(C,se):C;return aPt(Ee,l,(Ve,Oe)=>{pF(W.inferences,Ve,Oe)}),E||cPt(C,l,(Ve,Oe)=>{pF(W.inferences,Ve,Oe,128)}),q0e(l,_Pt(W),io(C.declaration))}function sCs(l,C,E,D){let W=_et(C,l),M=Yre(l.attributes,W,D,E);return pF(D.inferences,M,W),_Pt(D)}function cUr(l){if(!l)return so;let C=Dl(l);return bDe(l)?C:f5(l.parent)?AF(C):Gm(l.parent)?j$e(C):C}function cOt(l,C,E,D,W){if(Um(l))return sCs(l,C,D,W);if(l.kind!==170&&l.kind!==226){let Ve=he(C.typeParameters,ot=>!!j4(ot)),Oe=wy(l,Ve?8:0);if(Oe){let ot=wd(C);if(nW(ot)){let Wt=rH(l);if(!(!Ve&&wy(l,8)!==Oe)){let hn=APt(pps(Wt,1)),mi=cl(Oe,hn),Ti=AJ(mi),ks=Ti&&Ti.typeParameters?z4(a3t(Ti,Ti.typeParameters)):mi;pF(W.inferences,ks,ot,128)}let Qr=pye(C.typeParameters,C,W.flags),ln=cl(Oe,Wt&&Wt.returnMapper);pF(Qr.inferences,ln,ot),W.returnMapper=lr(Qr.inferences,Xre)?APt(mps(Qr)):void 0}}}let M=Bye(C),se=M?Math.min(nE(C)-1,E.length):E.length;if(M&&M.flags&262144){let Ve=be(W.inferences,Oe=>Oe.typeParameter===M);Ve&&(Ve.impliedArity=ke(E,Net,se)<0?E.length-se:void 0)}let Ee=zP(C);if(Ee&&nW(Ee)){let Ve=gUr(l);pF(W.inferences,cUr(Ve),Ee)}for(let Ve=0;Ve=E-1){let ot=l[E-1];if(Net(ot)){let Wt=ot.kind===237?ot.type:Yre(ot.expression,D,W,M);return fL(Wt)?lUr(Wt):V_(CL(33,Wt,wn,ot.kind===230?ot.expression:ot),se)}}let Ee=[],Ve=[],Oe=[];for(let ot=C;otou(void 0,Z.Type_0_does_not_satisfy_the_constraint_1):void 0,Wt=D||Z.Type_0_does_not_satisfy_the_constraint_1;Ee||(Ee=eE(M,se));let Rt=se[Ve];if(!_0(Rt,KE(cl(Oe,Ee),Rt),E?C[Ve]:void 0,Wt,ot))return}}return se}function uUr(l){if(K7(l.tagName))return 2;let C=ey(Dl(l.tagName));return O(Ou(C,1))?0:O(Ou(C,0))?1:2}function oCs(l,C,E,D,W,M,se){let Ee=_et(C,l),Ve=Yre(l.attributes,Ee,void 0,D),Oe=D&4?dye(Ve):Ve;return ot()&&Y3t(Oe,Ee,E,W?l.tagName:void 0,l.attributes,void 0,M,se);function ot(){var Wt;if(XPt(l))return!0;let Rt=(NN(l)||d4(l))&&!(K7(l.tagName)||aT(l.tagName))?Dl(l.tagName):void 0;if(!Rt)return!0;let Qr=Ou(Rt,0);if(!O(Qr))return!0;let ln=p8r(l);if(!ln)return!0;let hn=ZI(ln,111551,!0,!1,l);if(!hn)return!0;let mi=co(hn),Ti=Ou(mi,0);if(!O(Ti))return!0;let ks=!1,Vo=0;for(let Cs of Ti){let Ds=ST(Cs,0),jo=Ou(Ds,0);if(O(jo))for(let Ca of jo){if(ks=!0,vD(Ca))return!0;let ma=nE(Ca);ma>Vo&&(Vo=ma)}}if(!ks)return!0;let Hi=1/0;for(let Cs of Qr){let Ds=eR(Cs);Ds{W.push(M.expression)}),W}if(l.kind===170)return aCs(l);if(l.kind===226)return[l.left];if(Um(l))return l.attributes.properties.length>0||NN(l)&&l.parent.children.length>0?[l.attributes]:v;let C=l.arguments||v,E=oOt(C);if(E>=0){let D=C.slice(0,E);for(let W=E;W{var Oe;let ot=se.target.elementFlags[Ve],Wt=CLe(M,ot&4?V_(Ee):Ee,!!(ot&12),(Oe=se.target.labeledElementDeclarations)==null?void 0:Oe[Ve]);D.push(Wt)}):D.push(M)}return D}return C}function aCs(l){let C=l.expression,E=bOt(l);if(E){let D=[];for(let W of E.parameters){let M=co(W);D.push(CLe(C,M))}return D}return w.fail()}function AUr(l,C){return Ne.experimentalDecorators?cCs(l,C):Math.min(Math.max(nE(C),1),2)}function cCs(l,C){switch(l.parent.kind){case 263:case 231:return 1;case 172:return OS(l.parent)?3:2;case 174:case 177:case 178:return C.parameters.length<=2?2:3;case 169:return 3;default:return w.fail()}}function dUr(l){let C=ls(l),{start:E,length:D}=Mi(C,fo(l.expression)?l.expression.name:l.expression);return{start:E,length:D,sourceFile:C}}function mLe(l,C,...E){if(lu(l)){let{sourceFile:D,start:W,length:M}=dUr(l);return"message"in C?Cm(D,W,M,C,...E):ne(D,C)}else return"message"in C?Js(l,C,...E):ZS(ls(l),l,C)}function lCs(l){return SB(l)?fo(l.expression)?l.expression.name:l.expression:W1(l)?fo(l.tag)?l.tag.name:l.tag:Um(l)?l.tagName:l}function uCs(l){if(!lu(l)||!sr(l.expression))return!1;let C=Pi(l.expression,l.expression.escapedText,111551,void 0,!1),E=C?.valueDeclaration;if(!E||!Uc(E)||!RG(E.parent)||!qS(E.parent.parent)||!sr(E.parent.parent.expression))return!1;let D=m3t(!1);return D?zv(E.parent.parent.expression,!0)===D:!1}function pUr(l,C,E,D){var W;let M=oOt(E);if(M>-1)return Js(E[M],Z.A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter);let se=Number.POSITIVE_INFINITY,Ee=Number.NEGATIVE_INFINITY,Ve=Number.NEGATIVE_INFINITY,Oe=Number.POSITIVE_INFINITY,ot;for(let hn of C){let mi=eR(hn),Ti=nE(hn);miVe&&(Ve=mi),E.lengthW?se=Math.min(se,Ve):Oe1&&(Vo=Ds(Rt,VN,ln,Hi)),Vo||(Vo=Ds(Rt,db,ln,Hi)),Vo)return Vo;if(Vo=ACs(l,Rt,Qr,!!E,D),Jo(l).resolvedSignature=Vo,ot)if(!M&&Oe&&(M=Z.The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_hand_side_s_Symbol_hasInstance_method),mi)if(mi.length===1||mi.length>3){let jo=mi[mi.length-1],Ca;mi.length>3&&(Ca=ou(Ca,Z.The_last_overload_gave_the_following_error),Ca=ou(Ca,Z.No_overload_matches_this_call)),M&&(Ca=ou(Ca,M));let ma=ILe(l,Qr,jo,db,0,!0,()=>Ca,void 0);if(ma)for(let Ng of ma)jo.declaration&&mi.length>3&&tg(Ng,Js(jo.declaration,Z.The_last_overload_is_declared_here)),Cs(jo,Ng),KA.add(Ng);else w.fail("No error for last overload signature")}else{let jo=[],Ca=0,ma=Number.MAX_VALUE,Ng=0,Qu=0;for(let VI of mi){let Fs=ILe(l,Qr,VI,db,0,!0,()=>ou(void 0,Z.Overload_0_of_1_2_gave_the_following_error,Qu+1,Rt.length,QV(VI)),void 0);Fs?(Fs.length<=ma&&(ma=Fs.length,Ng=Qu),Ca=Math.max(Ca,Fs.length),jo.push(Fs)):w.fail("No error for 3 or fewer overload signatures"),Qu++}let ZA=Ca>1?jo[Ng]:or(jo);w.assert(ZA.length>0,"No errors reported for 3 or fewer overload signatures");let au=ou(Ot(ZA,Ie),Z.No_overload_matches_this_call);M&&(au=ou(au,M));let Uf=[...Fr(ZA,VI=>VI.relatedInformation)],g_;if(he(ZA,VI=>VI.start===ZA[0].start&&VI.length===ZA[0].length&&VI.file===ZA[0].file)){let{file:VI,start:As,length:Fs}=ZA[0];g_={file:VI,start:As,length:Fs,code:au.code,category:au.category,messageText:au,relatedInformation:Uf}}else g_=ZS(ls(l),lCs(l),au,Uf);Cs(mi[0],g_),KA.add(g_)}else if(Ti)KA.add(pUr(l,[Ti],Qr,M));else if(ks)uOt(ks,l.typeArguments,!0,M);else{let jo=Gt(C,Ca=>aOt(Ca,Wt));jo.length===0?KA.add(gCs(l,C,Wt,M)):KA.add(pUr(l,jo,Qr,M))}return Vo;function Cs(jo,Ca){var ma,Ng;let Qu=mi,ZA=Ti,au=ks,Uf=((Ng=(ma=jo.declaration)==null?void 0:ma.symbol)==null?void 0:Ng.declarations)||v,VI=Uf.length>1?be(Uf,As=>pd(As)&&GE(As.body)):void 0;if(VI){let As=rB(VI),Fs=!As.typeParameters;Ds([As],db,Fs)&&tg(Ca,Js(VI,Z.The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible))}mi=Qu,Ti=ZA,ks=au}function Ds(jo,Ca,ma,Ng=!1){var Qu,ZA;if(mi=void 0,Ti=void 0,ks=void 0,ma){let au=jo[0];if(lr(Wt)||!Ret(l,Qr,au,Ng))return;if(ILe(l,Qr,au,Ca,0,!1,void 0,void 0)){mi=[au];return}return au}for(let au=0;auvo===Fs)&&(Uf=kgs(Uf));let Wc;if(lr(Wt)){if(Wc=uOt(Uf,Wt,!1),!Wc){ks=Uf;continue}}else VI=pye(Uf.typeParameters,Uf,io(l)?2:0),Wc=ok(cOt(l,Uf,Qr,hn|8,VI),VI.nonFixingMapper),hn|=VI.flags&4?8:0;if(g_=q0e(Uf,Wc,io(Uf.declaration),VI&&VI.inferredTypeParameters),Bye(Uf)&&!Ret(l,Qr,g_,Ng)){Ti=g_;continue}}else g_=Uf;if(ILe(l,Qr,g_,Ca,hn,!1,void 0,VI)){(mi||(mi=[])).push(g_);continue}if(hn){if(hn=0,VI){let As=ok(cOt(l,Uf,Qr,hn,VI),VI.mapper);if(g_=q0e(Uf,As,io(Uf.declaration),VI.inferredTypeParameters),Bye(Uf)&&!Ret(l,Qr,g_,Ng)){Ti=g_;continue}}if(ILe(l,Qr,g_,Ca,hn,!1,void 0,VI)){(mi||(mi=[])).push(g_);continue}}return jo[au]=g_,g_}}}function ACs(l,C,E,D,W){return w.assert(C.length>0),j7(l),D||C.length===1||C.some(M=>!!M.typeParameters)?fCs(l,C,E,W):dCs(C)}function dCs(l){let C=tr(l,Ve=>Ve.thisParameter),E;C.length&&(E=fUr(C,C.map(yLe)));let{min:D,max:W}=exe(l,pCs),M=[];for(let Ve=0;Veg0(ot)?VeiH(ot,Ve))))}let se=tr(l,Ve=>g0(Ve)?Ta(Ve.parameters):void 0),Ee=128;if(se.length!==0){let Ve=V_(wa(tr(l,WYr),2));M.push(IUr(se,Ve)),Ee|=1}return l.some(j8e)&&(Ee|=2),ik(l[0].declaration,void 0,E,M,Og(l.map(wd)),void 0,D,Ee)}function pCs(l){let C=l.parameters.length;return g0(l)?C-1:C}function fUr(l,C){return IUr(l,wa(C,2))}function IUr(l,C){return iJ(qs(l),C)}function fCs(l,C,E,D){let W=mCs(C,Hr===void 0?E.length:Hr),M=C[W],{typeParameters:se}=M;if(!se)return M;let Ee=nUr(l)?l.typeArguments:void 0,Ve=Ee?h$e(M,ICs(Ee,se,io(l))):CCs(l,se,M,E,D);return C[W]=Ve,Ve}function ICs(l,C,E){let D=l.map(z7);for(;D.length>C.length;)D.pop();for(;D.length=C)return W;se>D&&(D=se,E=W)}return E}function hCs(l,C,E){if(l.expression.kind===108){let Ve=fet(l.expression);if(Sd(Ve)){for(let Oe of l.arguments)Dl(Oe);return yt}if(!QA(Ve)){let Oe=xv(Km(l));if(Oe){let ot=KP(Ve,Oe.typeArguments,Oe);return Mre(l,ot,C,E,0)}}return gJ(l)}let D,W=Dl(l.expression);if(fG(l)){let Ve=gye(W,l.expression);D=Ve===W?0:R3(l)?16:8,W=Ve}else D=0;if(W=MJr(W,l.expression,LIs),W===xo)return mn;let M=ey(W);if(QA(M))return qN(l);let se=Ou(M,0),Ee=Ou(M,1).length;if(hLe(W,M,se.length,Ee))return!QA(W)&&l.typeArguments&&fr(l,Z.Untyped_function_calls_may_not_accept_type_arguments),gJ(l);if(!se.length){if(Ee)fr(l,Z.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,Ys(W));else{let Ve;if(l.arguments.length===1){let Oe=ls(l).text;XC(Oe.charCodeAt(Uu(Oe,l.expression.end,!0)-1))&&(Ve=Js(l.expression,Z.Are_you_missing_a_semicolon))}AOt(l.expression,M,0,Ve)}return qN(l)}return E&8&&!l.typeArguments&&se.some(_Cs)?(zUr(l,E),gr):se.some(Ve=>io(Ve.declaration)&&!!ss(Ve.declaration))?(fr(l,Z.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,Ys(W)),qN(l)):Mre(l,se,C,E,D)}function _Cs(l){return!!(l.typeParameters&&sQt(wd(l)))}function hLe(l,C,E,D){return Sd(l)||Sd(C)&&!!(l.flags&262144)||!E&&!D&&!(C.flags&1048576)&&!(ET(C).flags&131072)&&bg(l,$C)}function yCs(l,C,E){let D=Qre(l.expression);if(D===xo)return mn;if(D=ey(D),QA(D))return qN(l);if(Sd(D))return l.typeArguments&&fr(l,Z.Untyped_function_calls_may_not_accept_type_arguments),gJ(l);let W=Ou(D,1);if(W.length){if(!bCs(l,W[0]))return qN(l);if(CUr(W,Ee=>!!(Ee.flags&4)))return fr(l,Z.Cannot_create_an_instance_of_an_abstract_class),qN(l);let se=D.symbol&&kB(D.symbol);return se&&ya(se,64)?(fr(l,Z.Cannot_create_an_instance_of_an_abstract_class),qN(l)):Mre(l,W,C,E,0)}let M=Ou(D,0);if(M.length){let se=Mre(l,M,C,E,0);return dt||(se.declaration&&!$N(se.declaration)&&wd(se)!==so&&fr(l,Z.Only_a_void_function_can_be_called_with_the_new_keyword),zP(se)===so&&fr(l,Z.A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void)),se}return AOt(l.expression,D,1),qN(l)}function CUr(l,C){return Na(l)?lr(l,E=>CUr(E,C)):l.compositeKind===1048576?lr(l.compositeSignatures,C):C(l)}function gOt(l,C){let E=Sa(C);if(!O(E))return!1;let D=E[0];if(D.flags&2097152){let W=D.types,M=_Yr(W),se=0;for(let Ee of D.types){if(!M[se]&&ia(Ee)&3&&(Ee.symbol===l||gOt(l,Ee)))return!0;se++}return!1}return D.symbol===l?!0:gOt(l,D)}function bCs(l,C){if(!C||!C.declaration)return!0;let E=C.declaration,D=W5(E,6);if(!D||E.kind!==176)return!0;let W=kB(E.parent.symbol),M=kp(E.parent.symbol);if(!eQt(l,W)){let se=Km(l);if(se&&D&4){let Ee=z7(se);if(gOt(E.parent.symbol,Ee))return!0}return D&2&&fr(l,Z.Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration,Ys(M)),D&4&&fr(l,Z.Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration,Ys(M)),!1}return!0}function mUr(l,C,E){let D,W=E===0,M=pJ(C),se=M&&Ou(M,E).length>0;if(C.flags&1048576){let Ve=C.types,Oe=!1;for(let ot of Ve)if(Ou(ot,E).length!==0){if(Oe=!0,D)break}else if(D||(D=ou(D,W?Z.Type_0_has_no_call_signatures:Z.Type_0_has_no_construct_signatures,Ys(ot)),D=ou(D,W?Z.Not_all_constituents_of_type_0_are_callable:Z.Not_all_constituents_of_type_0_are_constructable,Ys(C))),Oe)break;Oe||(D=ou(void 0,W?Z.No_constituent_of_type_0_is_callable:Z.No_constituent_of_type_0_is_constructable,Ys(C))),D||(D=ou(D,W?Z.Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:Z.Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other,Ys(C)))}else D=ou(D,W?Z.Type_0_has_no_call_signatures:Z.Type_0_has_no_construct_signatures,Ys(C));let Ee=W?Z.This_expression_is_not_callable:Z.This_expression_is_not_constructable;if(lu(l.parent)&&l.parent.arguments.length===0){let{resolvedSymbol:Ve}=Jo(l);Ve&&Ve.flags&32768&&(Ee=Z.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without)}return{messageChain:ou(D,Ee),relatedMessage:se?Z.Did_you_forget_to_use_await:void 0}}function AOt(l,C,E,D){let{messageChain:W,relatedMessage:M}=mUr(l,C,E),se=ZS(ls(l),l,W);if(M&&tg(se,Js(l,M)),lu(l.parent)){let{start:Ee,length:Ve}=dUr(l.parent);se.start=Ee,se.length=Ve}KA.add(se),hUr(C,E,D?tg(se,D):se)}function hUr(l,C,E){if(!l.symbol)return;let D=al(l.symbol).originatingImport;if(D&&!fC(D)){let W=Ou(co(al(l.symbol).target),C);if(!W||!W.length)return;tg(E,Js(D,Z.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 ECs(l,C,E){let D=Dl(l.tag),W=ey(D);if(QA(W))return qN(l);let M=Ou(W,0),se=Ou(W,1).length;if(hLe(D,W,M.length,se))return gJ(l);if(!M.length){if(Cf(l.parent)){let Ee=Js(l.tag,Z.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 KA.add(Ee),qN(l)}return AOt(l.tag,W,0),qN(l)}return Mre(l,M,C,E,0)}function BCs(l){switch(l.parent.kind){case 263:case 231:return Z.Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression;case 169:return Z.Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression;case 172:return Z.Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression;case 174:case 177:case 178:return Z.Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression;default:return w.fail()}}function vCs(l,C,E){let D=Dl(l.expression),W=ey(D);if(QA(W))return qN(l);let M=Ou(W,0),se=Ou(W,1).length;if(hLe(D,W,M.length,se))return gJ(l);if(TCs(l,M)&&!ZC(l.expression)){let Ve=Nf(l.expression,!1);return fr(l,Z._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0,Ve),qN(l)}let Ee=BCs(l);if(!M.length){let Ve=mUr(l.expression,W,0),Oe=ou(Ve.messageChain,Ee),ot=ZS(ls(l.expression),l.expression,Oe);return Ve.relatedMessage&&tg(ot,Js(l.expression,Ve.relatedMessage)),KA.add(ot),hUr(W,0,ot),qN(l)}return Mre(l,M,C,E,0,Ee)}function ket(l,C){let E=uJ(l),D=E&&Y1(E),W=D&&L_(D,L2.Element,788968),M=W&&Kt.symbolToEntityName(W,788968,l),se=_e.createFunctionTypeNode(void 0,[_e.createParameterDeclaration(void 0,void 0,"props",void 0,Kt.typeToTypeNode(C,l))],M?_e.createTypeReferenceNode(M,void 0):_e.createKeywordTypeNode(133)),Ee=wA(1,"props");return Ee.links.type=C,ik(se,void 0,void 0,[Ee],W?kp(W):cr,void 0,1,0)}function SCs(l,C,E){if(K7(l.tagName)){let se=LJr(l),Ee=ket(l,se);return eW(Yre(l.attributes,_et(Ee,l),void 0,0),se,l.tagName,l.attributes),O(l.typeArguments)&&(X(l.typeArguments,Kg),KA.add(M3(ls(l),l.typeArguments,Z.Expected_0_type_arguments_but_got_1,0,O(l.typeArguments)))),Ee}let D=Dl(l.tagName),W=ey(D);if(QA(W))return qN(l);let M=FJr(D,l);return hLe(D,W,M.length,0)?gJ(l):M.length===0?(fr(l.tagName,Z.JSX_element_type_0_does_not_have_any_construct_or_call_signatures,Nf(l.tagName)),qN(l)):Mre(l,M,C,E,0)}function wCs(l,C,E){let D=Dl(l.right);if(!Sd(D)){let W=wOt(D);if(W){let M=ey(W);if(QA(M))return qN(l);let se=Ou(M,0),Ee=Ou(M,1);if(hLe(W,M,se.length,Ee.length))return gJ(l);if(se.length)return Mre(l,se,C,E,0)}else if(!(stt(D)||$V(D,$C)))return fr(l.right,Z.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),qN(l)}return yt}function TCs(l,C){return C.length&&he(C,E=>E.minArgumentCount===0&&!g0(E)&&E.parameters.length1?sC(l.arguments[1]):void 0;for(let M=2;M{let se=tE(W);W$e(M,se)||$Xr(W,M,E,Z.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)})}function LCs(l){let C=Dl(l.expression),E=gye(C,l.expression);return z$e(AF(E),l,E!==C)}function VCs(l){return l.flags&64?LCs(l):AF(Dl(l.expression))}function SUr(l){if(C8r(l),X(l.typeArguments,Kg),l.kind===233){let E=qR(l.parent);E.kind===226&&E.operatorToken.kind===104&&rV(l,E.right)&&fr(l,Z.The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression)}let C=l.kind===233?Dl(l.expression):vG(l.exprName)?oLe(l.exprName):Dl(l.exprName);return wUr(C,l)}function wUr(l,C){let E=C.typeArguments;if(l===xo||QA(l)||!lr(E))return l;let D=!1,W,M=Ee(l),se=D?W:l;return se&&KA.add(M3(ls(C),E,Z.Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable,Ys(se))),M;function Ee(Oe){let ot=!1,Wt=!1,Rt=Qr(Oe);return D||(D=Wt),ot&&!Wt&&(W??(W=Oe)),Rt;function Qr(ln){if(ln.flags&524288){let hn=bT(ln),mi=Ve(hn.callSignatures),Ti=Ve(hn.constructSignatures);if(ot||(ot=hn.callSignatures.length!==0||hn.constructSignatures.length!==0),Wt||(Wt=mi.length!==0||Ti.length!==0),mi!==hn.callSignatures||Ti!==hn.constructSignatures){let ks=qn(wA(0,"__instantiationExpression"),hn.members,mi,Ti,hn.indexInfos);return ks.objectFlags|=8388608,ks.node=C,ks}}else if(ln.flags&58982400){let hn=c_(ln);if(hn){let mi=Qr(hn);if(mi!==hn)return mi}}else{if(ln.flags&1048576)return Qf(ln,Ee);if(ln.flags&2097152)return Og(Ar(ln.types,Qr))}return ln}}function Ve(Oe){let ot=Gt(Oe,Wt=>!!Wt.typeParameters&&aOt(Wt,E));return Ar(ot,Wt=>{let Rt=uOt(Wt,E,!0);return Rt?q0e(Wt,Rt,io(Wt.declaration)):Wt})}}function WCs(l){return Kg(l.type),IOt(l.expression,l.type)}function IOt(l,C,E){let D=Dl(l,E),W=Vc(C);if(QA(W))return W;let M=Si(C.parent,se=>se.kind===238||se.kind===350);return eW(D,W,M,l,Z.Type_0_does_not_satisfy_the_expected_type_1),D}function PCs(l){return Wys(l),l.keywordToken===105?COt(l):l.keywordToken===102?OCs(l):w.assertNever(l.keywordToken)}function TUr(l){switch(l.keywordToken){case 102:return eXr();case 105:let C=COt(l);return QA(C)?cr:ims(C);default:w.assertNever(l.keywordToken)}}function COt(l){let C=PRe(l);if(C)if(C.kind===176){let E=Oo(C.parent);return co(E)}else{let E=Oo(C);return co(E)}else return fr(l,Z.Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor,"new.target"),cr}function OCs(l){De===100||De===199?ls(l).impliedNodeFormat!==99&&fr(l,Z.The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output):De<6&&De!==4&&fr(l,Z.The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system_node16_or_nodenext);let C=ls(l);return w.assert(!!(C.flags&8388608),"Containing file is missing import meta node flag."),l.name.escapedText==="meta"?$Yr():cr}function yLe(l){let C=l.valueDeclaration;return _g(co(l),!1,!!C&&($w(C)||HS(C)))}function mOt(l,C,E="arg"){return l?(w.assert(sr(l.name)),l.name.escapedText):`${E}_${C}`}function Bge(l,C,E){let D=l.parameters.length-(g0(l)?1:0);if(C=D-1)return C===D-1?M:V_($b(M,bt));let se=[],Ee=[],Ve=[];for(let Oe=C;Oe!(Ve&1)),Ee=se<0?M.target.fixedLength:se;Ee>0&&(W=l.parameters.length-1+Ee)}}if(W===void 0){if(!E&&l.flags&32)return 0;W=l.minArgumentCount}if(D)return W;for(let M=W-1;M>=0;M--){let se=ST(l,M);if(WC(se,iUr).flags&131072)break;W=M}l.resolvedMinArgumentCount=W}return l.resolvedMinArgumentCount}function vD(l){if(g0(l)){let C=co(l.parameters[l.parameters.length-1]);return!cA(C)||C.target.hasRestElement}return!1}function Eye(l){if(g0(l)){let C=co(l.parameters[l.parameters.length-1]);if(!cA(C))return Sd(C)?np:C;if(C.target.hasRestElement)return Ige(C,C.target.fixedLength)}}function Bye(l){let C=Eye(l);return C&&!jB(C)&&!Sd(C)?C:void 0}function hOt(l){return _Ot(l,Vi)}function _Ot(l,C){return l.parameters.length>0?ST(l,0):C}function xUr(l,C,E){let D=l.parameters.length-(g0(l)?1:0);for(let W=0;W=0);let M=Df(D.parent)?co(Oo(D.parent.parent)):n8r(D.parent),se=Df(D.parent)?wn:i8r(D.parent),Ee=pw(W),Ve=ow("target",M),Oe=ow("propertyKey",se),ot=ow("parameterIndex",Ee);E.decoratorSignature=Dye(void 0,void 0,[Ve,Oe,ot],so);break}case 174:case 177:case 178:case 172:{let D=C;if(!va(D.parent))break;let W=n8r(D),M=ow("target",W),se=i8r(D),Ee=ow("propertyKey",se),Ve=Hl(D)?so:aXr(z7(D));if(!Hl(C)||OS(C)){let ot=aXr(z7(D)),Wt=ow("descriptor",ot);E.decoratorSignature=Dye(void 0,void 0,[M,Ee,Wt],wa([Ve,so]))}else E.decoratorSignature=Dye(void 0,void 0,[M,Ee],wa([Ve,so]));break}}return E.decoratorSignature===yt?void 0:E.decoratorSignature}function bOt(l){return lt?nms(l):rms(l)}function BLe(l){let C=DZe(!0);return C!==Ug?(l=IL(Nge(l))||Kr,uL(C,[l])):Kr}function FUr(l){let C=iXr(!0);return C!==Ug?(l=IL(Nge(l))||Kr,uL(C,[l])):Kr}function vLe(l,C){let E=BLe(C);return E===Kr?(fr(l,fC(l)?Z.A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:Z.An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option),cr):(m3t(!0)||fr(l,fC(l)?Z.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:Z.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),E)}function ims(l){let C=wA(0,"NewTargetExpression"),E=wA(4,"target",8);E.parent=C,E.links.type=l;let D=xu([E]);return C.members=D,qn(C,D,v,v,v)}function Zet(l,C){if(!l.body)return cr;let E=YI(l),D=(E&2)!==0,W=(E&1)!==0,M,se,Ee,Ve=so;if(l.body.kind!==241)M=sC(l.body,C&&C&-9),D&&(M=Nge(Rye(M,!1,l,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member)));else if(W){let Oe=WUr(l,C);Oe?Oe.length>0&&(M=wa(Oe,2)):Ve=Vi;let{yieldTypes:ot,nextTypes:Wt}=sms(l,C);se=lr(ot)?wa(ot,2):void 0,Ee=lr(Wt)?Og(Wt):void 0}else{let Oe=WUr(l,C);if(!Oe)return E&2?vLe(l,Vi):Vi;if(Oe.length===0){let ot=Iet(l,void 0),Wt=ot&&(FLe(ot,E)||so).flags&32768?wn:so;return E&2?vLe(l,Wt):Wt}M=wa(Oe,2)}if(M||se||Ee){if(se&&tet(l,se,3),M&&tet(l,M,1),Ee&&tet(l,Ee,2),M&&BT(M)||se&&BT(se)||Ee&&BT(Ee)){let Oe=MPt(l),ot=Oe?Oe===rB(l)?W?void 0:M:met(wd(Oe),l,void 0):void 0;W?(se=sPt(se,ot,0,D),M=sPt(M,ot,1,D),Ee=sPt(Ee,ot,2,D)):M=rps(M,ot,D)}se&&(se=tE(se)),M&&(M=tE(M)),Ee&&(Ee=tE(Ee))}return W?Let(se||Vi,M||Ve,Ee||yJr(2,l)||Kr,D):D?BLe(M||Ve):M||Ve}function Let(l,C,E,D){let W=D?Pg:sf,M=W.getGlobalGeneratorType(!1);if(l=W.resolveIterationType(l,void 0)||Kr,C=W.resolveIterationType(C,void 0)||Kr,E=W.resolveIterationType(E,void 0)||Kr,M===Ug){let se=W.getGlobalIterableIteratorType(!1),Ee=se!==Ug?vKr(se,W):void 0,Ve=Ee?Ee.returnType:Mt,Oe=Ee?Ee.nextType:wn;return bg(C,Ve)&&bg(Oe,E)?se!==Ug?eye(se,[l]):(W.getGlobalIterableIteratorType(!0),Lc):(W.getGlobalGeneratorType(!0),Lc)}return eye(M,[l,C,E])}function sms(l,C){let E=[],D=[],W=(YI(l)&2)!==0;return RRe(l.body,M=>{let se=M.expression?Dl(M.expression,C):Pe;da(E,ZUr(M,se,Mt,W));let Ee;if(M.asteriskToken){let Ve=zet(se,W?19:17,M.expression);Ee=Ve&&Ve.nextType}else Ee=wy(M,void 0);Ee&&da(D,Ee)}),{yieldTypes:E,nextTypes:D}}function ZUr(l,C,E,D){let W=l.expression||l,M=l.asteriskToken?CL(D?19:17,C,E,W):C;return D?pJ(M,W,l.asteriskToken?Z.Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:Z.Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):M}function LUr(l,C,E){let D=0;for(let W=0;W=C?E[W]:void 0;D|=M!==void 0?VDt.get(M)||32768:0}return D}function VUr(l){let C=Jo(l);if(C.isExhaustive===void 0){C.isExhaustive=0;let E=oms(l);C.isExhaustive===0&&(C.isExhaustive=E)}else C.isExhaustive===0&&(C.isExhaustive=!1);return C.isExhaustive}function oms(l){if(l.expression.kind===221){let D=X4r(l);if(!D)return!1;let W=yD(sC(l.expression.expression)),M=LUr(0,0,D);return W.flags&3?(556800&M)===556800:!jv(W,se=>Vre(se,M)===M)}let C=sC(l.expression);if(!uye(C))return!1;let E=oet(l);return!E.length||lr(E,$ds)?!1:qps(Qf(C,ry),E)}function EOt(l){return l.endFlowNode&&rLe(l.endFlowNode)}function WUr(l,C){let E=YI(l),D=[],W=EOt(l),M=!1;if(kx(l.body,se=>{let Ee=se.expression;if(Ee){if(Ee=zA(Ee,!0),E&2&&Ee.kind===223&&(Ee=zA(Ee.expression,!0)),Ee.kind===213&&Ee.expression.kind===80&&sC(Ee.expression).symbol===FA(l.symbol)&&(!RG(l.symbol.valueDeclaration)||NPt(Ee.expression))){M=!0;return}let Ve=sC(Ee,C&&C&-9);E&2&&(Ve=Nge(Rye(Ve,!1,l,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member))),Ve.flags&131072&&(M=!0),da(D,Ve)}else W=!0}),!(D.length===0&&!W&&(M||ams(l))))return nt&&D.length&&W&&!($N(l)&&D.some(se=>se.symbol===l.symbol))&&da(D,wn),D}function ams(l){switch(l.kind){case 218:case 219:return!0;case 174:return l.parent.kind===210;default:return!1}}function cms(l){switch(l.kind){case 176:case 177:case 178:return}if(YI(l)!==0)return;let E;if(l.body&&l.body.kind!==241)E=l.body;else if(kx(l.body,W=>{if(E||!W.expression)return!0;E=W.expression})||!E||EOt(l))return;return lms(l,E)}function lms(l,C){if(C=zA(C,!0),!!(sC(C).flags&16))return X(l.parameters,(D,W)=>{let M=co(D.symbol);if(!M||M.flags&16||!sr(D.name)||iLe(D.symbol)||Dv(D))return;let se=ums(l,C,D,M);if(se)return z0e(1,wc(D.name.escapedText),W,se)})}function ums(l,C,E,D){let W=C.flowNode||C.parent.kind===253&&C.parent.flowNode||oD(2,void 0,void 0),M=oD(32,C,W),se=fF(E.name,D,D,l,M);if(se===D)return;let Ee=oD(64,C,W);return fF(E.name,D,se,l,Ee).flags&131072?se:void 0}function BOt(l,C){u(E);return;function E(){let D=YI(l),W=C&&FLe(C,D);if(W&&(KI(W,16384)||W.flags&32769)||l.kind===173||Tf(l.body)||l.body.kind!==241||!EOt(l))return;let M=l.flags&1024,se=nb(l)||l;if(W&&W.flags&131072)fr(se,Z.A_function_returning_never_cannot_have_a_reachable_end_point);else if(W&&!M)fr(se,Z.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value);else if(W&&nt&&!bg(wn,W))fr(se,Z.Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined);else if(Ne.noImplicitReturns){if(!W){if(!M)return;let Ee=wd(rB(l));if(xKr(l,Ee))return}fr(se,Z.Not_all_code_paths_return_a_value)}}}function PUr(l,C){if(w.assert(l.kind!==174||RB(l)),j7(l),PA(l)&&Rge(l,l.name),C&&C&4&&UB(l)){if(!nb(l)&&!_le(l)){let D=_ye(l);if(D&&nW(wd(D))){let W=Jo(l);if(W.contextFreeType)return W.contextFreeType;let M=Zet(l,C),se=ik(void 0,void 0,void 0,v,M,void 0,0,64),Ee=qn(l.symbol,Be,[se],v,v);return Ee.objectFlags|=262144,W.contextFreeType=Ee}}return _f}return!utt(l)&&l.kind===218&&cQt(l),gms(l,C),co(Oo(l))}function gms(l,C){let E=Jo(l);if(!(E.flags&64)){let D=_ye(l);if(!(E.flags&64)){E.flags|=64;let W=$i(Ou(co(Oo(l)),0));if(!W)return;if(UB(l))if(D){let M=rH(l),se;if(C&&C&2){xUr(W,D,M);let Ee=Eye(D);Ee&&Ee.flags&262144&&(se=H7(D,M.nonFixingMapper))}se||(se=M?H7(D,M.mapper):D),HCs(W,se)}else YCs(W);else if(D&&!l.typeParameters&&D.parameters.length>l.parameters.length){let M=rH(l);C&&C&2&&xUr(W,D,M)}if(D&&!Dre(l)&&!W.resolvedReturnType){let M=Zet(l,C);W.resolvedReturnType||(W.resolvedReturnType=M)}wye(l)}}}function Ams(l){w.assert(l.kind!==174||RB(l));let C=YI(l),E=Dre(l);if(BOt(l,E),l.body)if(nb(l)||wd(rB(l)),l.body.kind===241)Kg(l.body);else{let D=Dl(l.body),W=E&&FLe(E,C);if(W){let M=Det(l.body);if((C&3)===2){let se=Rye(D,!1,M,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);eW(se,W,M,M)}else eW(D,W,M,M)}}}function Vet(l,C,E,D=!1){if(!bg(C,Gs)){let W=D&&Tge(C);return RP(l,!!W&&bg(W,Gs),E),!1}return!0}function dms(l){if(!lu(l)||!Y3(l))return!1;let C=sC(l.arguments[2]);if(LI(C,"value")){let W=yg(C,"writable"),M=W&&co(W);if(!M||M===dn||M===On)return!0;if(W&&W.valueDeclaration&&jC(W.valueDeclaration)){let se=W.valueDeclaration.initializer,Ee=Dl(se);if(Ee===dn||Ee===On)return!0}return!1}return!yg(C,"set")}function wT(l){return!!(cI(l)&8||l.flags&4&&V1(l)&8||l.flags&3&&UPt(l)&6||l.flags&98304&&!(l.flags&65536)||l.flags&8||lr(l.declarations,dms))}function OUr(l,C,E){var D,W;if(E===0)return!1;if(wT(C)){if(C.flags&4&&mp(l)&&l.expression.kind===110){let M=Ob(l);if(!(M&&(M.kind===176||$N(M))))return!0;if(C.valueDeclaration){let se=ro(C.valueDeclaration),Ee=M.parent===C.valueDeclaration.parent,Ve=M===C.valueDeclaration.parent,Oe=se&&((D=C.parent)==null?void 0:D.valueDeclaration)===M.parent,ot=se&&((W=C.parent)==null?void 0:W.valueDeclaration)===M;return!(Ee||Ve||Oe||ot)}}return!0}if(mp(l)){let M=zA(l.expression);if(M.kind===80){let se=Jo(M).resolvedSymbol;if(se.flags&2097152){let Ee=XE(se);return!!Ee&&Ee.kind===274}}}return!1}function vye(l,C,E){let D=LC(l,7);return D.kind!==80&&!mp(D)?(fr(l,C),!1):D.flags&64?(fr(l,E),!1):!0}function pms(l){Dl(l.expression);let C=zA(l.expression);if(!mp(C))return fr(C,Z.The_operand_of_a_delete_operator_must_be_a_property_reference),ds;fo(C)&&Gc(C.name)&&fr(C,Z.The_operand_of_a_delete_operator_cannot_be_a_private_identifier);let E=Jo(C),D=X1(E.resolvedSymbol);return D&&(wT(D)?fr(C,Z.The_operand_of_a_delete_operator_cannot_be_a_read_only_property):fms(C,D)),ds}function fms(l,C){let E=co(C);nt&&!(E.flags&131075)&&!(He?C.flags&16777216:vT(E,16777216))&&fr(l,Z.The_operand_of_a_delete_operator_must_be_optional)}function Ims(l){return Dl(l.expression),k4}function Cms(l){return j7(l),Pe}function QUr(l){let C=!1,E=z$(l);if(E&&ef(E)){let D=Mb(l)?Z.await_expression_cannot_be_used_inside_a_class_static_block:Z.await_using_statements_cannot_be_used_inside_a_class_static_block;fr(l,D),C=!0}else if(!(l.flags&65536))if(Ice(l)){let D=ls(l);if(!sW(D)){let W;if(!K9(D,Ne)){W??(W=Rr(D,l.pos));let M=Mb(l)?Z.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:Z.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,se=Cm(D,W.start,W.length,M);KA.add(se),C=!0}switch(De){case 100:case 199:if(D.impliedNodeFormat===1){W??(W=Rr(D,l.pos)),KA.add(Cm(D,W.start,W.length,Z.The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level)),C=!0;break}case 7:case 99:case 200:case 4:if(Me>=4)break;default:W??(W=Rr(D,l.pos));let M=Mb(l)?Z.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:Z.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;KA.add(Cm(D,W.start,W.length,M)),C=!0;break}}}else{let D=ls(l);if(!sW(D)){let W=Rr(D,l.pos),M=Mb(l)?Z.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:Z.await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules,se=Cm(D,W.start,W.length,M);if(E&&E.kind!==176&&!(YI(E)&2)){let Ee=Js(E,Z.Did_you_mean_to_mark_this_function_as_async);tg(se,Ee)}KA.add(se),C=!0}}return Mb(l)&&VPt(l)&&(fr(l,Z.await_expressions_cannot_be_used_in_a_parameter_initializer),C=!0),C}function mms(l){u(()=>QUr(l));let C=Dl(l.expression),E=Rye(C,!0,l,Z.Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);return E===C&&!QA(E)&&!(C.flags&3)&&sw(!1,Js(l,Z.await_has_no_effect_on_the_type_of_this_expression)),E}function hms(l){let C=Dl(l.operand);if(C===xo)return xo;switch(l.operand.kind){case 9:switch(l.operator){case 41:return M7(pw(-l.operand.text));case 40:return M7(pw(+l.operand.text))}break;case 10:if(l.operator===41)return M7(x$e({negative:!0,base10Value:s4(l.operand.text)}))}switch(l.operator){case 40:case 41:case 55:return zN(C,l.operand),SLe(C,12288)&&fr(l.operand,Z.The_0_operator_cannot_be_applied_to_type_symbol,vr(l.operator)),l.operator===40?(SLe(C,2112)&&fr(l.operand,Z.Operator_0_cannot_be_applied_to_type_1,vr(l.operator),Ys(gF(C))),bt):vOt(C);case 54:POt(C,l.operand);let E=Vre(C,12582912);return E===4194304?dn:E===8388608?Qn:ds;case 46:case 47:return Vet(l.operand,zN(C,l.operand),Z.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type)&&vye(l.operand,Z.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,Z.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),vOt(C)}return cr}function _ms(l){let C=Dl(l.operand);return C===xo?xo:(Vet(l.operand,zN(C,l.operand),Z.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type)&&vye(l.operand,Z.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,Z.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),vOt(C))}function vOt(l){return KI(l,2112)?l_(l,3)||KI(l,296)?Gs:Vt:bt}function SLe(l,C){if(KI(l,C))return!0;let E=yD(l);return!!E&&KI(E,C)}function KI(l,C){if(l.flags&C)return!0;if(l.flags&3145728){let E=l.types;for(let D of E)if(KI(D,C))return!0}return!1}function l_(l,C,E){return l.flags&C?!0:E&&l.flags&114691?!1:!!(C&296)&&bg(l,bt)||!!(C&2112)&&bg(l,Vt)||!!(C&402653316)&&bg(l,Jt)||!!(C&528)&&bg(l,ds)||!!(C&16384)&&bg(l,so)||!!(C&131072)&&bg(l,Vi)||!!(C&65536)&&bg(l,ur)||!!(C&32768)&&bg(l,wn)||!!(C&4096)&&bg(l,Es)||!!(C&67108864)&&bg(l,sa)}function Sye(l,C,E){return l.flags&1048576?he(l.types,D=>Sye(D,C,E)):l_(l,C,E)}function Wet(l){return!!(ia(l)&16)&&!!l.symbol&&SOt(l.symbol)}function SOt(l){return(l.flags&128)!==0}function wOt(l){let C=wKr("hasInstance");if(Sye(l,67108864)){let E=yg(l,C);if(E){let D=co(E);if(D&&Ou(D,0).length!==0)return D}}}function yms(l,C,E,D,W){if(E===xo||D===xo)return xo;!Sd(E)&&Sye(E,402784252)&&fr(l,Z.The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter),w.assert(c6(l.parent));let M=Hre(l.parent,void 0,W);if(M===gr)return xo;let se=wd(M);return _0(se,ds,C,Z.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),ds}function bms(l){return jv(l,C=>C===kI||!!(C.flags&2097152)&&BD(yD(C)))}function Ems(l,C,E,D){if(E===xo||D===xo)return xo;if(Gc(l)){if((Me<9||Me<99||!Le)&&Lm(l,2097152),!Jo(l).resolvedSymbol&&Km(l)){let W=eOt(l,D.symbol,!0);UJr(l,D,W)}}else _0(zN(E,l),ki,l);return _0(zN(D,C),sa,C)&&bms(D)&&fr(C,Z.Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operator,Ys(D)),ds}function Bms(l,C,E){let D=l.properties;if(nt&&D.length===0)return zN(C,l);for(let W=0;WIge(Oe,E)):V_(D);return dJ(Ee,Ve,W)}}}}function dJ(l,C,E,D){let W;if(l.kind===304){let M=l;M.objectAssignmentInitializer&&(nt&&!vT(Dl(M.objectAssignmentInitializer),16777216)&&(C=Kv(C,524288)),Nms(M.name,M.equalsToken,M.objectAssignmentInitializer,E)),W=l.name}else W=l;return W.kind===226&&W.operatorToken.kind===64&&(ht(W,E),W=W.left,nt&&(C=Kv(C,524288))),W.kind===210?Bms(W,C,D):W.kind===209?vms(W,C,E):Sms(W,C,E)}function Sms(l,C,E){let D=Dl(l,E),W=l.parent.kind===305?Z.The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:Z.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access,M=l.parent.kind===305?Z.The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access:Z.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access;return vye(l,W,M)&&eW(C,D,l,l),Y9(l)&&Lm(l.parent,1048576),C}function wLe(l){switch(l=zA(l),l.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 wLe(l.whenTrue)&&wLe(l.whenFalse);case 226:return tD(l.operatorToken.kind)?!1:wLe(l.left)&&wLe(l.right);case 224:case 225:switch(l.operator){case 54:case 40:case 41:case 55:return!0}return!1;case 222:case 216:case 234:default:return!1}}function TOt(l,C){return(C.flags&98304)!==0||W$e(l,C)}function wms(){let l=ske(C,E,D,W,M,se);return(Rt,Qr)=>{let ln=l(Rt,Qr);return w.assertIsDefined(ln),ln};function C(Rt,Qr,ln){return Qr?(Qr.stackIndex++,Qr.skip=!1,Oe(Qr,void 0),Wt(Qr,void 0)):Qr={checkMode:ln,skip:!1,stackIndex:0,typeStack:[void 0,void 0]},io(Rt)&&x5(Rt)?(Qr.skip=!0,Wt(Qr,Dl(Rt.right,ln)),Qr):(Tms(Rt),Rt.operatorToken.kind===64&&(Rt.left.kind===210||Rt.left.kind===209)&&(Qr.skip=!0,Wt(Qr,dJ(Rt.left,Dl(Rt.right,ln),ln,Rt.right.kind===110))),Qr)}function E(Rt,Qr,ln){if(!Qr.skip)return Ee(Qr,Rt)}function D(Rt,Qr,ln){if(!Qr.skip){let hn=ot(Qr);w.assertIsDefined(hn),Oe(Qr,hn),Wt(Qr,void 0);let mi=Rt.kind;if(Nee(mi)){let Ti=ln.parent;for(;Ti.kind===217||Ree(Ti);)Ti=Ti.parent;(mi===56||X0(Ti))&&WOt(ln.left,hn,X0(Ti)?Ti.thenStatement:void 0),POt(hn,ln.left)}}}function W(Rt,Qr,ln){if(!Qr.skip)return Ee(Qr,Rt)}function M(Rt,Qr){let ln;if(Qr.skip)ln=ot(Qr);else{let hn=Ve(Qr);w.assertIsDefined(hn);let mi=ot(Qr);w.assertIsDefined(mi),ln=YUr(Rt.left,Rt.operatorToken,Rt.right,hn,mi,Qr.checkMode,Rt)}return Qr.skip=!1,Oe(Qr,void 0),Wt(Qr,void 0),Qr.stackIndex--,ln}function se(Rt,Qr,ln){return Wt(Rt,Qr),Rt}function Ee(Rt,Qr){if(ro(Qr))return Qr;Wt(Rt,Dl(Qr,Rt.checkMode))}function Ve(Rt){return Rt.typeStack[Rt.stackIndex]}function Oe(Rt,Qr){Rt.typeStack[Rt.stackIndex]=Qr}function ot(Rt){return Rt.typeStack[Rt.stackIndex+1]}function Wt(Rt,Qr){Rt.typeStack[Rt.stackIndex+1]=Qr}}function Tms(l){let{left:C,operatorToken:E,right:D}=l;E.kind===61&&(ro(C)&&(C.operatorToken.kind===57||C.operatorToken.kind===56)&&qi(C,Z._0_and_1_operations_cannot_be_mixed_without_parentheses,vr(C.operatorToken.kind),vr(E.kind)),ro(D)&&(D.operatorToken.kind===57||D.operatorToken.kind===56)&&qi(D,Z._0_and_1_operations_cannot_be_mixed_without_parentheses,vr(D.operatorToken.kind),vr(E.kind)))}function Nms(l,C,E,D,W){let M=C.kind;if(M===64&&(l.kind===210||l.kind===209))return dJ(l,Dl(E,D),D,E.kind===110);let se;Nee(M)?se=Dge(l,D):se=Dl(l,D);let Ee=Dl(E,D);return YUr(l,C,E,se,Ee,D,W)}function YUr(l,C,E,D,W,M,se){let Ee=C.kind;switch(Ee){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(D===xo||W===xo)return xo;D=zN(D,l),W=zN(W,E);let Hi;if(D.flags&528&&W.flags&528&&(Hi=Rt(C.kind))!==void 0)return fr(se||C,Z.The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead,vr(C.kind),vr(Hi)),bt;{let jo=Vet(l,D,Z.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type,!0),Ca=Vet(E,W,Z.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type,!0),ma;if(l_(D,3)&&l_(W,3)||!(KI(D,2112)||KI(W,2112)))ma=bt;else if(Ve(D,W)){switch(Ee){case 50:case 73:mi();break;case 43:case 68:Me<3&&fr(se,Z.Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later)}ma=Vt}else mi(Ve),ma=cr;return jo&&Ca&&Qr(ma),ma}case 40:case 65:if(D===xo||W===xo)return xo;!l_(D,402653316)&&!l_(W,402653316)&&(D=zN(D,l),W=zN(W,E));let Cs;return l_(D,296,!0)&&l_(W,296,!0)?Cs=bt:l_(D,2112,!0)&&l_(W,2112,!0)?Cs=Vt:l_(D,402653316,!0)||l_(W,402653316,!0)?Cs=Jt:(Sd(D)||Sd(W))&&(Cs=QA(D)||QA(W)?cr:Mt),Cs&&!Wt(Ee)?Cs:Cs?(Ee===65&&Qr(Cs),Cs):(mi((Ca,ma)=>l_(Ca,402655727)&&l_(ma,402655727)),Mt);case 30:case 32:case 33:case 34:return Wt(Ee)&&(D=nPt(zN(D,l)),W=nPt(zN(W,E)),hn((jo,Ca)=>{if(Sd(jo)||Sd(Ca))return!0;let ma=bg(jo,Gs),Ng=bg(Ca,Gs);return ma&&Ng||!ma&&!Ng&&PZe(jo,Ca)})),ds;case 35:case 36:case 37:case 38:if(!(M&&M&64)){if((CZ(l)||CZ(E))&&(!io(l)||Ee===37||Ee===38)){let jo=Ee===35||Ee===37;fr(se,Z.This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value,jo?"false":"true")}ks(se,Ee,l,E),hn((jo,Ca)=>TOt(jo,Ca)||TOt(Ca,jo))}return ds;case 104:return yms(l,E,D,W,M);case 103:return Ems(l,E,D,W);case 56:case 77:{let jo=vT(D,4194304)?wa([sps(nt?D:gF(W)),W]):D;return Ee===77&&Qr(W),jo}case 57:case 76:{let jo=vT(D,8388608)?wa([AF(m4r(D)),W],2):D;return Ee===76&&Qr(W),jo}case 61:case 78:{let jo=vT(D,262144)?wa([AF(D),W],2):D;return Ee===78&&Qr(W),jo}case 64:let Ds=ro(l.parent)?mI(l.parent):0;return Oe(Ds,W),ln(Ds)?((!(W.flags&524288)||Ds!==2&&Ds!==6&&!uF(W)&&!BPt(W)&&!(ia(W)&1))&&Qr(W),D):(Qr(W),W);case 28:if(!Ne.allowUnreachableCode&&wLe(l)&&!ot(l.parent)){let jo=ls(l),Ca=jo.text,ma=Uu(Ca,l.pos);jo.parseDiagnostics.some(Qu=>Qu.code!==Z.JSX_expressions_must_have_one_parent_element.code?!1:my(Qu,ma))||fr(l,Z.Left_side_of_comma_operator_is_unused_and_has_no_side_effects)}return W;default:return w.fail()}function Ve(Hi,Cs){return l_(Hi,2112)&&l_(Cs,2112)}function Oe(Hi,Cs){if(Hi===2)for(let Ds of UV(Cs)){let jo=co(Ds);if(jo.symbol&&jo.symbol.flags&32){let Ca=Ds.escapedName,ma=Pi(Ds.valueDeclaration,Ca,788968,void 0,!1);ma?.declarations&&ma.declarations.some(I4)&&(KG(ma,Z.Duplicate_identifier_0,wc(Ca),Ds),KG(Ds,Z.Duplicate_identifier_0,wc(Ca),ma))}}}function ot(Hi){return Hi.parent.kind===217&&pu(Hi.left)&&Hi.left.text==="0"&&(lu(Hi.parent.parent)&&Hi.parent.parent.expression===Hi.parent||Hi.parent.parent.kind===215)&&(mp(Hi.right)||sr(Hi.right)&&Hi.right.escapedText==="eval")}function Wt(Hi){let Cs=SLe(D,12288)?l:SLe(W,12288)?E:void 0;return Cs?(fr(Cs,Z.The_0_operator_cannot_be_applied_to_type_symbol,vr(Hi)),!1):!0}function Rt(Hi){switch(Hi){case 52:case 75:return 57;case 53:case 79:return 38;case 51:case 74:return 56;default:return}}function Qr(Hi){tD(Ee)&&u(Cs);function Cs(){let Ds=D;if(cue(C.kind)&&l.kind===211&&(Ds=vet(l,void 0,!0)),vye(l,Z.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access,Z.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access)){let jo;if(He&&fo(l)&&KI(Hi,32768)){let Ca=LI(u_(l.expression),l.name.escapedText);O$e(Hi,Ca)&&(jo=Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target)}eW(Hi,Ds,l,E,jo)}}}function ln(Hi){var Cs;switch(Hi){case 2:return!0;case 1:case 5:case 6:case 3:case 4:let Ds=q2(l),jo=x5(E);return!!jo&&ru(jo)&&!!((Cs=Ds?.exports)!=null&&Cs.size);default:return!1}}function hn(Hi){return Hi(D,W)?!1:(mi(Hi),!0)}function mi(Hi){let Cs=!1,Ds=se||C;if(Hi){let Qu=IL(D),ZA=IL(W);Cs=!(Qu===D&&ZA===W)&&!!(Qu&&ZA)&&Hi(Qu,ZA)}let jo=D,Ca=W;!Cs&&Hi&&([jo,Ca]=Rms(D,W,Hi));let[ma,Ng]=ige(jo,Ca);Ti(Ds,Cs,ma,Ng)||RP(Ds,Cs,Z.Operator_0_cannot_be_applied_to_types_1_and_2,vr(C.kind),ma,Ng)}function Ti(Hi,Cs,Ds,jo){switch(C.kind){case 37:case 35:case 38:case 36:return RP(Hi,Cs,Z.This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap,Ds,jo);default:return}}function ks(Hi,Cs,Ds,jo){let Ca=Vo(zA(Ds)),ma=Vo(zA(jo));if(Ca||ma){let Ng=fr(Hi,Z.This_condition_will_always_return_0,vr(Cs===37||Cs===35?97:112));if(Ca&&ma)return;let Qu=Cs===38||Cs===36?vr(54):"",ZA=Ca?jo:Ds,au=zA(ZA);tg(Ng,Js(ZA,Z.Did_you_mean_0,`${Qu}Number.isNaN(${lp(au)?r0(au):"..."})`))}}function Vo(Hi){if(sr(Hi)&&Hi.escapedText==="NaN"){let Cs=gAs();return!!Cs&&Cs===Sy(Hi)}return!1}}function Rms(l,C,E){let D=l,W=C,M=gF(l),se=gF(C);return E(M,se)||(D=M,W=se),[D,W]}function Dms(l){u(Rt);let C=Ob(l);if(!C)return Mt;let E=YI(C);if(!(E&1))return Mt;let D=(E&2)!==0;l.asteriskToken&&(D&&Me<5&&Lm(l,26624),!D&&Me<2&&Ne.downlevelIteration&&Lm(l,256));let W=Dre(C);W&&W.flags&1048576&&(W=WC(W,Qr=>DOt(Qr,E,void 0)));let M=W&&UOt(W,D),se=M&&M.yieldType||Mt,Ee=M&&M.nextType||Mt,Ve=D?pJ(Ee)||Mt:Ee,Oe=l.expression?Dl(l.expression):Pe,ot=ZUr(l,Oe,Ve,D);if(W&&ot&&eW(ot,se,l.expression||l,l.expression),l.asteriskToken)return QOt(D?19:17,1,Oe,l.expression)||Mt;if(W)return sH(2,W,D)||Mt;let Wt=yJr(2,C);return Wt||(Wt=Mt,u(()=>{if(dt&&!sxe(l)){let Qr=wy(l,void 0);(!Qr||Sd(Qr))&&fr(l,Z.yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation)}})),Wt;function Rt(){l.flags&16384||Lh(l,Z.A_yield_expression_is_only_allowed_in_a_generator_body),VPt(l)&&fr(l,Z.yield_expressions_cannot_be_used_in_a_parameter_initializer)}}function xms(l,C){let E=Dge(l.condition,C);WOt(l.condition,E,l.whenTrue);let D=Dl(l.whenTrue,C),W=Dl(l.whenFalse,C);return wa([D,W],2)}function XUr(l){let C=l.parent;return ZC(C)&&XUr(C)||_A(C)&&C.argumentExpression===l}function kms(l){let C=[l.head.text],E=[];for(let W of l.templateSpans){let M=Dl(W.expression);SLe(M,12288)&&fr(W.expression,Z.Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String),C.push(W.literal.text),E.push(bg(M,ri)?M:Jt)}let D=l.parent.kind!==215&&Lt(l).value;return D?M7(fb(D)):Sge(l)||XUr(l)||jv(wy(l,void 0)||Kr,Gms)?q4(C,E):Jt}function Gms(l){return!!(l.flags&134217856||l.flags&58982400&&KI(c_(l)||Kr,402653316))}function Fms(l){return pM(l)&&!d4(l.parent)?l.parent.parent:l}function Yre(l,C,E,D){let W=Fms(l);cLe(W,C,!1),zfs(W,E);let M=Dl(l,D|1|(E?2:0));E&&E.intraExpressionInferenceSites&&(E.intraExpressionInferenceSites=void 0);let se=KI(M,2944)&&Oet(M,met(C,l,void 0))?ry(M):M;return qfs(),hye(),se}function sC(l,C){if(C)return Dl(l,C);let E=Jo(l);if(!E.resolvedType){let D=ip,W=Pv;ip=Z_,Pv=void 0,E.resolvedType=Dl(l,C),Pv=W,ip=D}return E.resolvedType}function JUr(l){return l=zA(l,!0),l.kind===216||l.kind===234||m4(l)}function vge(l,C,E){let D=see(l);if(io(l)){let M=vle(l);if(M)return IOt(D,M,C)}let W=ROt(D)||(E?Yre(D,E,void 0,C||0):sC(D,C));return Uc(l)&&l.name.kind===207&&cA(W)&&!W.target.hasRestElement&&gL(W)Oet(l,D))}if(C.flags&58982400){let E=c_(C)||Kr;return KI(E,4)&&KI(l,128)||KI(E,8)&&KI(l,256)||KI(E,64)&&KI(l,2048)||KI(E,4096)&&KI(l,8192)||Oet(l,E)}return!!(C.flags&406847616&&KI(l,128)||C.flags&256&&KI(l,256)||C.flags&2048&&KI(l,2048)||C.flags&512&&KI(l,512)||C.flags&8192&&KI(l,8192))}return!1}function Sge(l){let C=l.parent;return kE(C)&&B2(C.type)||m4(C)&&B2(Ule(C))||fOt(l)&&K4(wy(l,0))||(ZC(C)||Cf(C)||fh(C))&&Sge(C)||(jC(C)||F_(C)||Hb(C))&&Sge(C.parent)}function wge(l,C,E){let D=Dl(l,C,E);return Sge(l)||xRe(l)?ry(D):JUr(l)?D:iPt(D,met(wy(l,void 0),l,void 0))}function UUr(l,C){return l.name.kind===167&&jN(l.name),wge(l.initializer,C)}function KUr(l,C){_8r(l),l.name.kind===167&&jN(l.name);let E=PUr(l,C);return jUr(l,E,C)}function jUr(l,C,E){if(E&&E&10){let D=bye(C,0,!0),W=bye(C,1,!0),M=D||W;if(M&&M.typeParameters){let se=oO(l,2);if(se){let Ee=bye(AF(se),D?0:1,!1);if(Ee&&!Ee.typeParameters){if(E&8)return zUr(l,E),_f;let Ve=rH(l),Oe=Ve.signature&&wd(Ve.signature),ot=Oe&&oUr(Oe);if(ot&&!ot.typeParameters&&!he(Ve.inferences,Xre)){let Wt=Pms(Ve,M.typeParameters),Rt=a3t(M,Wt),Qr=Ot(Ve.inferences,ln=>gPt(ln.typeParameter));if(aPt(Rt,Ee,(ln,hn)=>{pF(Qr,ln,hn,0,!0)}),lr(Qr,Xre)&&(cPt(Rt,Ee,(ln,hn)=>{pF(Qr,ln,hn)}),!Vms(Ve.inferences,Qr)))return Wms(Ve.inferences,Qr),Ve.inferredTypeParameters=vi(Ve.inferredTypeParameters,Wt),z4(Rt)}return z4(aUr(M,Ee,Ve),Fr(YG,Wt=>Wt&&Ot(Wt.inferences,Rt=>Rt.typeParameter)).slice())}}}}return C}function zUr(l,C){if(C&2){let E=rH(l);E.flags|=4}}function Xre(l){return!!(l.candidates||l.contraCandidates)}function Lms(l){return!!(l.candidates||l.contraCandidates||TYr(l.typeParameter))}function Vms(l,C){for(let E=0;EE.symbol.escapedName===C)}function Oms(l,C){let E=C.length;for(;E>1&&C.charCodeAt(E-1)>=48&&C.charCodeAt(E-1)<=57;)E--;let D=C.slice(0,E);for(let W=1;;W++){let M=D+W;if(!NOt(l,M))return M}}function qUr(l){let C=AJ(l);if(C&&!C.typeParameters)return wd(C)}function Qms(l){let C=Dl(l.expression),E=gye(C,l.expression),D=qUr(C);return D&&z$e(D,l,E!==C)}function u_(l){let C=ROt(l);if(C)return C;if(l.flags&268435456&&Pv){let W=Pv[od(l)];if(W)return W}let E=XZ,D=Dl(l,64);if(XZ!==E){let W=Pv||(Pv=[]);W[od(l)]=D,ixe(l,l.flags|268435456)}return D}function ROt(l){let C=zA(l,!0);if(m4(C)){let E=Ule(C);if(!B2(E))return Vc(E)}if(C=zA(l),Mb(C)){let E=ROt(C.expression);return E?pJ(E):void 0}if(lu(C)&&C.expression.kind!==108&&!H0(C,!0)&&!_Ur(C))return fG(C)?Qms(C):qUr(Qre(C.expression));if(kE(C)&&!B2(C.type))return Vc(C.type);if(wv(l)||m5(l))return Dl(l)}function TLe(l){let C=Jo(l);if(C.contextFreeType)return C.contextFreeType;cLe(l,Mt,!1);let E=C.contextFreeType=Dl(l,4);return hye(),E}function Dl(l,C,E){var D,W;(D=Qi)==null||D.push(Qi.Phase.Check,"checkExpression",{kind:l.kind,pos:l.pos,end:l.end,path:l.tracingPath});let M=ue;ue=l,Q=0;let se=Yms(l,C,E),Ee=jUr(l,se,C);return Wet(Ee)&&Mms(l,Ee),ue=M,(W=Qi)==null||W.pop(),Ee}function Mms(l,C){if(l.parent.kind===211&&l.parent.expression===l||l.parent.kind===212&&l.parent.expression===l||(l.kind===80||l.kind===166)&&ntt(l)||l.parent.kind===186&&l.parent.exprName===l||l.parent.kind===281||fr(l,Z.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),VE(Ne)){w.assert(!!(C.symbol.flags&128));let D=C.symbol.valueDeclaration,W=n.getRedirectReferenceForResolutionFromSourceOfProject(ls(D).resolvedPath);D.flags&33554432&&!xZ(l)&&(!W||!gV(W.commandLine.options))&&fr(l,Z.Cannot_access_ambient_const_enums_when_0_is_enabled,Pt)}}function Hms(l,C){if(_y(l)){if(bhe(l))return IOt(l.expression,Ehe(l),C);if(m4(l))return BUr(l,C)}return Dl(l.expression,C)}function Yms(l,C,E){let D=l.kind;if(d)switch(D){case 231:case 218:case 219:d.throwIfCancellationRequested()}switch(D){case 80:return _fs(l,C);case 81:return PIs(l);case 110:return oLe(l);case 108:return fet(l);case 106:return Re;case 15:case 11:return IPt(l)?ti:M7(fb(l.text));case 9:return S8r(l),M7(pw(+l.text));case 10:return Jys(l),M7(x$e({negative:!1,base10Value:s4(l.text)}));case 112:return Qn;case 97:return dn;case 228:return kms(l);case 14:return gIs(l);case 209:return NJr(l,C,E);case 210:return mIs(l,C);case 211:return vet(l,C);case 166:return YJr(l,C);case 212:return tCs(l,C);case 213:if(l.expression.kind===102)return kCs(l);case 214:return xCs(l,C);case 215:return GCs(l);case 217:return Hms(l,C);case 231:return k_s(l);case 218:case 219:return PUr(l,C);case 221:return Ims(l);case 216:case 234:return FCs(l,C);case 235:return VCs(l);case 233:return SUr(l);case 238:return WCs(l);case 236:return PCs(l);case 220:return pms(l);case 222:return Cms(l);case 223:return mms(l);case 224:return hms(l);case 225:return _ms(l);case 226:return ht(l,C);case 227:return xms(l,C);case 230:return AIs(l,C);case 232:return Pe;case 229:return Dms(l);case 237:return dIs(l);case 294:return kIs(l,C);case 284:return bIs(l,C);case 285:return _Is(l,C);case 288:return EIs(l);case 292:return vIs(l,C);case 286:w.fail("Shouldn't ever directly check a JsxOpeningElement")}return cr}function $Ur(l){ck(l),l.expression&&Lh(l.expression,Z.Type_expected),Kg(l.constraint),Kg(l.default);let C=YM(Oo(l));c_(C),Igs(C)||fr(l.default,Z.Type_parameter_0_has_a_circular_default,Ys(C));let E=vy(C),D=j4(C);E&&D&&_0(D,KE(cl(E,$M(C,D)),D),l.default,Z.Type_0_does_not_satisfy_the_constraint_1),j7(l),u(()=>xge(l.name,Z.Type_parameter_name_cannot_be_0))}function Xms(l){var C,E;if(XI(l.parent)||va(l.parent)||Pf(l.parent)){let D=YM(Oo(l)),W=$3t(D)&24576;if(W){let M=Oo(l.parent);if(Pf(l.parent)&&!(ia(kp(M))&52))fr(l,Z.Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_types);else if(W===8192||W===16384){(C=Qi)==null||C.push(Qi.Phase.CheckTypes,"checkTypeParameterDeferred",{parent:Fh(kp(M)),id:Fh(D)});let se=MZe(M,D,W===16384?nf:Xb),Ee=MZe(M,D,W===16384?Xb:nf),Ve=D;Ae=D,_0(se,Ee,l,Z.Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation),Ae=Ve,(E=Qi)==null||E.pop()}}}}function eKr(l){ck(l),kLe(l);let C=Ob(l);ya(l,31)&&(C.kind===176&&GE(C.body)||fr(l,Z.A_parameter_property_is_only_allowed_in_a_constructor_implementation),C.kind===176&&sr(l.name)&&l.name.escapedText==="constructor"&&fr(l.name,Z.constructor_cannot_be_used_as_a_parameter_property_name)),!l.initializer&&HS(l)&&fu(l.name)&&C.body&&fr(l,Z.A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature),l.name&&sr(l.name)&&(l.name.escapedText==="this"||l.name.escapedText==="new")&&(C.parameters.indexOf(l)!==0&&fr(l,Z.A_0_parameter_must_be_the_first_parameter,l.name.escapedText),(C.kind===176||C.kind===180||C.kind===185)&&fr(l,Z.A_constructor_cannot_have_a_this_parameter),C.kind===219&&fr(l,Z.An_arrow_function_cannot_have_a_this_parameter),(C.kind===177||C.kind===178)&&fr(l,Z.get_and_set_accessors_cannot_declare_this_parameters)),l.dotDotDotToken&&!fu(l.name)&&!bg(ET(co(l.symbol)),_C)&&fr(l,Z.A_rest_parameter_must_be_of_an_array_type)}function Jms(l){let C=Ums(l);if(!C){fr(l,Z.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return}let E=rB(C),D=JB(E);if(!D)return;Kg(l.type);let{parameterName:W}=l;if(D.kind===0||D.kind===2)k$e(W);else if(D.parameterIndex>=0){if(g0(E)&&D.parameterIndex===E.parameters.length-1)fr(W,Z.A_type_predicate_cannot_reference_a_rest_parameter);else if(D.type){let M=()=>ou(void 0,Z.A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type);_0(D.type,co(E.parameters[D.parameterIndex]),l.type,void 0,M)}}else if(W){let M=!1;for(let{name:se}of C.parameters)if(fu(se)&&tKr(se,W,D.parameterName)){M=!0;break}M||fr(l.parameterName,Z.Cannot_find_parameter_0,D.parameterName)}}function Ums(l){switch(l.parent.kind){case 219:case 179:case 262:case 218:case 184:case 174:case 173:let C=l.parent;if(l===C.type)return C}}function tKr(l,C,E){for(let D of l.elements){if(tf(D))continue;let W=D.name;if(W.kind===80&&W.escapedText===E)return fr(C,Z.A_type_predicate_cannot_reference_element_0_in_a_binding_pattern,E),!0;if((W.kind===207||W.kind===206)&&tKr(W,C,E))return!0}}function wye(l){l.kind===181?yys(l):(l.kind===184||l.kind===262||l.kind===185||l.kind===179||l.kind===176||l.kind===180)&&utt(l);let C=YI(l);C&4||((C&3)===3&&Me<5&&Lm(l,6144),(C&3)===2&&Me<4&&Lm(l,64),C&3&&Me<2&&Lm(l,128)),ZLe(D1(l)),R_s(l),X(l.parameters,eKr),l.type&&Kg(l.type),u(E);function E(){Jhs(l);let D=nb(l),W=D;if(io(l)){let M=Sx(l);if(M&&M.typeExpression&&F(M.typeExpression.type)){let se=AJ(Vc(M.typeExpression));se&&se.declaration&&(D=nb(se.declaration),W=M.typeExpression.type)}}if(dt&&!D)switch(l.kind){case 180:fr(l,Z.Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type);break;case 179:fr(l,Z.Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type);break}if(D&&W){let M=YI(l);if((M&5)===1){let se=Vc(D);se===so?fr(W,Z.A_generator_cannot_have_a_void_type_annotation):DOt(se,M,W)}else(M&3)===2&&vhs(l,D,W)}l.kind!==181&&l.kind!==317&&iW(l)}}function DOt(l,C,E){let D=sH(0,l,(C&2)!==0)||Mt,W=sH(1,l,(C&2)!==0)||D,M=sH(2,l,(C&2)!==0)||Kr,se=Let(D,W,M,!!(C&2));return _0(se,l,E)}function Kms(l){let C=new Map,E=new Map,D=new Map;for(let M of l.members)if(M.kind===176)for(let se of M.parameters)Zn(se,M)&&!fu(se.name)&&W(C,se.name,se.name.escapedText,3);else{let se=eg(M),Ee=M.name;if(!Ee)continue;let Ve=Gc(Ee),Oe=Ve&&se?16:0,ot=Ve?D:se?E:C,Wt=Ee&&AQt(Ee);if(Wt)switch(M.kind){case 177:W(ot,Ee,Wt,1|Oe);break;case 178:W(ot,Ee,Wt,2|Oe);break;case 172:W(ot,Ee,Wt,3|Oe);break;case 174:W(ot,Ee,Wt,8|Oe);break}}function W(M,se,Ee,Ve){let Oe=M.get(Ee);if(Oe)if((Oe&16)!==(Ve&16))fr(se,Z.Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name,Nf(se));else{let ot=!!(Oe&8),Wt=!!(Ve&8);ot||Wt?ot!==Wt&&fr(se,Z.Duplicate_identifier_0,Nf(se)):Oe&Ve&-17?fr(se,Z.Duplicate_identifier_0,Nf(se)):M.set(Ee,Oe|Ve)}else M.set(Ee,Ve)}}function jms(l){for(let C of l.members){let E=C.name;if(eg(C)&&E){let W=AQt(E);switch(W){case"name":case"length":case"caller":case"arguments":if(Le)break;case"prototype":let M=Z.Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1,se=MM(Oo(l));fr(E,M,W,se);break}}}}function rKr(l){let C=new Map;for(let E of l.members)if(E.kind===171){let D,W=E.name;switch(W.kind){case 11:case 9:D=W.text;break;case 80:D=oo(W);break;default:continue}C.get(D)?(fr(Sl(E.symbol.valueDeclaration),Z.Duplicate_identifier_0,D),fr(E.name,Z.Duplicate_identifier_0,D)):C.set(D,!0)}}function xOt(l){if(l.kind===264){let E=Oo(l);if(E.declarations&&E.declarations.length>0&&E.declarations[0]!==l)return}let C=c3t(Oo(l));if(C?.declarations){let E=new Map;for(let D of C.declarations)D.parameters.length===1&&D.parameters[0].type&&cJ(Vc(D.parameters[0].type),W=>{let M=E.get(Fh(W));M?M.declarations.push(D):E.set(Fh(W),{type:W,declarations:[D]})});E.forEach(D=>{if(D.declarations.length>1)for(let W of D.declarations)fr(W,Z.Duplicate_index_signature_for_type_0,Ys(D.type))})}}function nKr(l){!ck(l)&&!Mys(l)&>t(l.name),kLe(l),Qet(l),ya(l,64)&&l.kind===172&&l.initializer&&fr(l,Z.Property_0_cannot_have_an_initializer_because_it_is_marked_abstract,kd(l.name))}function zms(l){return Gc(l.name)&&fr(l,Z.Private_identifiers_are_not_allowed_outside_class_bodies),nKr(l)}function qms(l){_8r(l)||gtt(l.name),lI(l)&&l.asteriskToken&&sr(l.name)&&oo(l.name)==="constructor"&&fr(l.name,Z.Class_constructor_may_not_be_a_generator),fKr(l),ya(l,64)&&l.kind===174&&l.body&&fr(l,Z.Method_0_cannot_have_an_implementation_because_it_is_marked_abstract,kd(l.name)),Gc(l.name)&&!Km(l)&&fr(l,Z.Private_identifiers_are_not_allowed_outside_class_bodies),Qet(l)}function Qet(l){if(Gc(l.name)&&(Me<9||Me<99||!Le)){for(let C=w2(l);C;C=w2(C))Jo(C).flags|=1048576;if(rp(l.parent)){let C=kPt(l.parent);C&&(Jo(l.name).flags|=32768,Jo(C).flags|=4096)}}}function $ms(l){ck(l),hu(l,Kg)}function ehs(l){wye(l),Oys(l)||Qys(l),Kg(l.body);let C=Oo(l),E=qd(C,l.kind);if(l===E&&Yet(C),Tf(l.body))return;u(W);return;function D(M){return Dh(M)?!0:M.kind===172&&!eg(M)&&!!M.initializer}function W(){let M=l.parent;if(nV(M)){GPt(l.parent,M);let se=FPt(M),Ee=pJr(l.body);if(Ee){if(se&&fr(Ee,Z.A_constructor_cannot_contain_a_super_call_when_its_class_extends_null),!je&&(lr(l.parent.members,D)||lr(l.parameters,Oe=>ya(Oe,31))))if(!ths(Ee,l.body))fr(Ee,Z.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{let Oe;for(let ot of l.body.statements){if(Xf(ot)&&Rf(LC(ot.expression))){Oe=ot;break}if(iKr(ot))break}Oe===void 0&&fr(l,Z.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 se||fr(l,Z.Constructors_for_derived_classes_must_contain_a_super_call)}}}function ths(l,C){let E=qR(l.parent);return Xf(E)&&E.parent===C}function iKr(l){return l.kind===108||l.kind===110?!0:WRe(l)?!1:!!hu(l,iKr)}function sKr(l){sr(l.name)&&oo(l.name)==="constructor"&&va(l.parent)&&fr(l.name,Z.Class_constructor_may_not_be_an_accessor),u(C),Kg(l.body),Qet(l);function C(){if(!utt(l)&&!Rys(l)&>t(l.name),RLe(l),wye(l),l.kind===177&&!(l.flags&33554432)&&GE(l.body)&&l.flags&512&&(l.flags&1024||fr(l.name,Z.A_get_accessor_must_return_a_value)),l.name.kind===167&&jN(l.name),Nre(l)){let D=Oo(l),W=qd(D,177),M=qd(D,178);if(W&&M&&!(Ure(W)&1)){Jo(W).flags|=1;let se=R_(W),Ee=R_(M);(se&64)!==(Ee&64)&&(fr(W.name,Z.Accessors_must_both_be_abstract_or_non_abstract),fr(M.name,Z.Accessors_must_both_be_abstract_or_non_abstract)),(se&4&&!(Ee&6)||se&2&&!(Ee&2))&&(fr(W.name,Z.A_get_accessor_must_be_at_least_as_accessible_as_the_setter),fr(M.name,Z.A_get_accessor_must_be_at_least_as_accessible_as_the_setter))}}let E=Y0e(Oo(l));l.kind===177&&BOt(l,E)}}function rhs(l){RLe(l)}function nhs(l,C,E){return l.typeArguments&&E{let D=kOt(l);D&&oKr(l,D)});let E=Jo(l).resolvedSymbol;E&&lr(E.declarations,D=>$5(D)&&!!(D.flags&536870912))&&JG(_Le(l),E.declarations,E.escapedName)}}function shs(l){let C=$s(l.parent,B8);if(!C)return;let E=kOt(C);if(!E)return;let D=vy(E[C.typeArguments.indexOf(l)]);return D&&cl(D,eE(E,Met(C,E)))}function ohs(l){zYr(l)}function ahs(l){X(l.members,Kg),u(C);function C(){let E=VXr(l);qet(E,E.symbol),xOt(l),rKr(l)}}function chs(l){Kg(l.elementType)}function lhs(l){let C=!1,E=!1;for(let D of l.elements){let W=y3t(D);if(W&8){let M=Vc(D.type);if(!fL(M)){fr(D,Z.A_rest_element_type_must_be_an_array_type);break}(jB(M)||cA(M)&&M.target.combinedFlags&4)&&(W|=4)}if(W&4){if(E){qi(D,Z.A_rest_element_cannot_follow_another_rest_element);break}E=!0}else if(W&2){if(E){qi(D,Z.An_optional_element_cannot_follow_a_rest_element);break}C=!0}else if(W&1&&C){qi(D,Z.A_required_element_cannot_follow_an_optional_element);break}}X(l.elements,Kg),Vc(l)}function uhs(l){X(l.types,Kg),Vc(l)}function cKr(l,C){if(!(l.flags&8388608))return l;let E=l.objectType,D=l.indexType,W=qb(E)&&C$e(E)===2?bXr(E,0):UN(E,0),M=!!sk(E,bt);if(rE(D,se=>bg(se,W)||M&&Z7(se,bt)))return C.kind===212&&Zx(C)&&ia(E)&32&&_D(E)&1&&fr(C,Z.Index_signature_in_type_0_only_permits_reading,Ys(E)),l;if(eJ(E)){let se=T$e(D,C);if(se){let Ee=cJ(ey(E),Ve=>yg(Ve,se));if(Ee&&V1(Ee)&6)return fr(C,Z.Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter,wc(se)),cr}}return fr(C,Z.Type_0_cannot_be_used_to_index_type_1,Ys(D),Ys(E)),cr}function ghs(l){Kg(l.objectType),Kg(l.indexType),cKr(xXr(l),l)}function Ahs(l){dhs(l),Kg(l.typeParameter),Kg(l.nameType),Kg(l.type),l.type||nO(l,Mt);let C=k3t(l),E=lL(C);if(E)_0(E,ki,l.nameType);else{let D=tB(C);_0(D,ki,jw(l.typeParameter))}}function dhs(l){var C;if((C=l.members)!=null&&C.length)return qi(l.members[0],Z.A_mapped_type_may_not_declare_properties_or_methods)}function phs(l){k$e(l)}function fhs(l){xys(l),Kg(l.type)}function Ihs(l){hu(l,Kg)}function Chs(l){Si(l,E=>E.parent&&E.parent.kind===194&&E.parent.extendsType===E)||qi(l,Z.infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type),Kg(l.typeParameter);let C=Oo(l.typeParameter);if(C.declarations&&C.declarations.length>1){let E=al(C);if(!E.typeParametersChecked){E.typeParametersChecked=!0;let D=YM(C),W=zae(C,168);if(!FKr(W,[D],M=>[M])){let M=$c(C);for(let se of W)fr(se.name,Z.All_declarations_of_0_must_have_identical_constraints,M)}}}iW(l)}function mhs(l){for(let C of l.templateSpans){Kg(C.type);let E=Vc(C.type);_0(E,ri,C.type)}Vc(l)}function hhs(l){Kg(l.argument),l.attributes&&Nte(l.attributes,qi),aKr(l)}function _hs(l){l.dotDotDotToken&&l.questionToken&&qi(l,Z.A_tuple_member_cannot_be_both_optional_and_rest),l.type.kind===190&&qi(l.type,Z.A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type),l.type.kind===191&&qi(l.type,Z.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type),Kg(l.type),Vc(l)}function NLe(l){return(ib(l,2)||Dh(l))&&!!(l.flags&33554432)}function Het(l,C){let E=Att(l);if(l.parent.kind!==264&&l.parent.kind!==263&&l.parent.kind!==231&&l.flags&33554432){let D=F8(l);D&&D.flags&128&&!(E&128)&&!(wN(l.parent)&&mC(l.parent.parent)&&S2(l.parent.parent))&&(E|=32),E|=128}return E&C}function Yet(l){u(()=>yhs(l))}function yhs(l){function C(Hi,Cs){return Cs!==void 0&&Cs.parent===Hi[0].parent?Cs:Hi[0]}function E(Hi,Cs,Ds,jo,Ca){if((jo^Ca)!==0){let Ng=Het(C(Hi,Cs),Ds);X(Hi,Qu=>{let ZA=Het(Qu,Ds)^Ng;ZA&32?fr(Sl(Qu),Z.Overload_signatures_must_all_be_exported_or_non_exported):ZA&128?fr(Sl(Qu),Z.Overload_signatures_must_all_be_ambient_or_non_ambient):ZA&6?fr(Sl(Qu)||Qu,Z.Overload_signatures_must_all_be_public_private_or_protected):ZA&64&&fr(Sl(Qu),Z.Overload_signatures_must_all_be_abstract_or_non_abstract)})}}function D(Hi,Cs,Ds,jo){if(Ds!==jo){let Ca=F5(C(Hi,Cs));X(Hi,ma=>{F5(ma)!==Ca&&fr(Sl(ma),Z.Overload_signatures_must_all_be_optional_or_required)})}}let W=230,M=0,se=W,Ee=!1,Ve=!0,Oe=!1,ot,Wt,Rt,Qr=l.declarations,ln=(l.flags&16384)!==0;function hn(Hi){if(Hi.name&&Tf(Hi.name))return;let Cs=!1,Ds=hu(Hi.parent,Ca=>{if(Cs)return Ca;Cs=Ca===Hi});if(Ds&&Ds.pos===Hi.end&&Ds.kind===Hi.kind){let Ca=Ds.name||Ds,ma=Ds.name;if(Hi.name&&ma&&(Gc(Hi.name)&&Gc(ma)&&Hi.name.escapedText===ma.escapedText||kg(Hi.name)&&kg(ma)&&lF(jN(Hi.name),jN(ma))||WS(Hi.name)&&WS(ma)&&r6(Hi.name)===r6(ma))){if((Hi.kind===174||Hi.kind===173)&&eg(Hi)!==eg(Ds)){let Qu=eg(Hi)?Z.Function_overload_must_be_static:Z.Function_overload_must_not_be_static;fr(Ca,Qu)}return}if(GE(Ds.body)){fr(Ca,Z.Function_implementation_name_must_be_0,kd(Hi.name));return}}let jo=Hi.name||Hi;ln?fr(jo,Z.Constructor_implementation_is_missing):ya(Hi,64)?fr(jo,Z.All_declarations_of_an_abstract_method_must_be_consecutive):fr(jo,Z.Function_implementation_is_missing_or_not_immediately_following_the_declaration)}let mi=!1,Ti=!1,ks=!1,Vo=[];if(Qr)for(let Hi of Qr){let Cs=Hi,Ds=Cs.flags&33554432,jo=Cs.parent&&(Cs.parent.kind===264||Cs.parent.kind===187)||Ds;if(jo&&(Rt=void 0),(Cs.kind===263||Cs.kind===231)&&!Ds&&(ks=!0),Cs.kind===262||Cs.kind===174||Cs.kind===173||Cs.kind===176){Vo.push(Cs);let Ca=Het(Cs,W);M|=Ca,se&=Ca,Ee=Ee||F5(Cs),Ve=Ve&&F5(Cs);let ma=GE(Cs.body);ma&&ot?ln?Ti=!0:mi=!0:Rt?.parent===Cs.parent&&Rt.end!==Cs.pos&&hn(Rt),ma?ot||(ot=Cs):Oe=!0,Rt=Cs,jo||(Wt=Cs)}io(Hi)&&eu(Hi)&&Hi.jsDoc&&(Oe=O(Ime(Hi))>0)}if(Ti&&X(Vo,Hi=>{fr(Hi,Z.Multiple_constructor_implementations_are_not_allowed)}),mi&&X(Vo,Hi=>{fr(Sl(Hi)||Hi,Z.Duplicate_function_implementation)}),ks&&!ln&&l.flags&16&&Qr){let Hi=Gt(Qr,Cs=>Cs.kind===263).map(Cs=>Js(Cs,Z.Consider_adding_a_declare_modifier_to_this_class));X(Qr,Cs=>{let Ds=Cs.kind===263?Z.Class_declaration_cannot_implement_overload_list_for_0:Cs.kind===262?Z.Function_with_bodies_can_only_merge_with_classes_that_are_ambient:void 0;Ds&&tg(fr(Sl(Cs)||Cs,Ds,pf(l)),...Hi)})}if(Wt&&!Wt.body&&!ya(Wt,64)&&!Wt.questionToken&&hn(Wt),Oe&&(Qr&&(E(Qr,ot,W,M,se),D(Qr,ot,Ee,Ve)),ot)){let Hi=UM(l),Cs=rB(ot);for(let Ds of Hi)if(!Gds(Cs,Ds)){let jo=Ds.declaration&&LG(Ds.declaration)?Ds.declaration.parent.tagName:Ds.declaration;tg(fr(jo,Z.This_overload_signature_is_not_compatible_with_its_implementation_signature),Js(ot,Z.The_implementation_signature_is_declared_here));break}}}function Tye(l){u(()=>bhs(l))}function bhs(l){let C=l.localSymbol;if(!C&&(C=Oo(l),!C.exportSymbol)||qd(C,l.kind)!==l)return;let E=0,D=0,W=0;for(let Oe of C.declarations){let ot=Ve(Oe),Wt=Het(Oe,2080);Wt&32?Wt&2048?W|=ot:E|=ot:D|=ot}let M=E|D,se=E&D,Ee=W&M;if(se||Ee)for(let Oe of C.declarations){let ot=Ve(Oe),Wt=Sl(Oe);ot&Ee?fr(Wt,Z.Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead,kd(Wt)):ot&se&&fr(Wt,Z.Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local,kd(Wt))}function Ve(Oe){let ot=Oe;switch(ot.kind){case 264:case 265:case 346:case 338:case 340:return 2;case 267:return Yf(ot)||PG(ot)!==0?5:4;case 263:case 266:case 306:return 3;case 307:return 7;case 277:case 226:let Wt=ot,Rt=rf(Wt)?Wt.expression:Wt.right;if(!lp(Rt))return 1;ot=Rt;case 271:case 274:case 273:let Qr=0,ln=$m(Oo(ot));return X(ln.declarations,hn=>{Qr|=Ve(hn)}),Qr;case 260:case 208:case 262:case 276:case 80:return 1;case 173:case 171:return 2;default:return w.failBadSyntaxKind(ot)}}}function Tge(l,C,E,...D){let W=Nye(l,C);return W&&pJ(W,C,E,...D)}function Nye(l,C,E){if(Sd(l))return;let D=l;if(D.promisedTypeOfPromise)return D.promisedTypeOfPromise;if(XV(l,DZe(!1)))return D.promisedTypeOfPromise=af(l)[0];if(Sye(yD(l),402915324))return;let W=LI(l,"then");if(Sd(W))return;let M=W?Ou(W,0):v;if(M.length===0){C&&fr(C,Z.A_promise_must_have_a_then_method);return}let se,Ee;for(let ot of M){let Wt=zP(ot);Wt&&Wt!==so&&!KN(l,Wt,VN)?se=Wt:Ee=Yr(Ee,ot)}if(!Ee){w.assertIsDefined(se),E&&(E.value=se),C&&fr(C,Z.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1,Ys(l),Ys(se));return}let Ve=Kv(wa(Ot(Ee,hOt)),2097152);if(Sd(Ve))return;let Oe=Ou(Ve,0);if(Oe.length===0){C&&fr(C,Z.The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback);return}return D.promisedTypeOfPromise=wa(Ot(Oe,hOt),2)}function Rye(l,C,E,D,...W){return(C?pJ(l,E,D,...W):IL(l,E,D,...W))||cr}function lKr(l){if(Sye(yD(l),402915324))return!1;let C=LI(l,"then");return!!C&&Ou(Kv(C,2097152),0).length>0}function Xet(l){var C;if(l.flags&16777216){let E=_3t(!1);return!!E&&l.aliasSymbol===E&&((C=l.aliasTypeArguments)==null?void 0:C.length)===1}return!1}function Nge(l){return l.flags&1048576?Qf(l,Nge):Xet(l)?l.aliasTypeArguments[0]:l}function uKr(l){if(Sd(l)||Xet(l))return!1;if(eJ(l)){let C=c_(l);if(C?C.flags&3||uF(C)||jv(C,lKr):KI(l,8650752))return!0}return!1}function Ehs(l){let C=_3t(!0);if(C)return kre(C,[Nge(l)])}function Bhs(l){return uKr(l)?Ehs(l)??l:(w.assert(Xet(l)||Nye(l)===void 0,"type provided should not be a non-generic 'promise'-like."),l)}function pJ(l,C,E,...D){let W=IL(l,C,E,...D);return W&&Bhs(W)}function IL(l,C,E,...D){if(Sd(l)||Xet(l))return l;let W=l;if(W.awaitedTypeOfType)return W.awaitedTypeOfType;if(l.flags&1048576){if(UZ.lastIndexOf(l.id)>=0){C&&fr(C,Z.Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method);return}let Ee=C?Oe=>IL(Oe,C,E,...D):IL;UZ.push(l.id);let Ve=Qf(l,Ee);return UZ.pop(),W.awaitedTypeOfType=Ve}if(uKr(l))return W.awaitedTypeOfType=l;let M={value:void 0},se=Nye(l,void 0,M);if(se){if(l.id===se.id||UZ.lastIndexOf(se.id)>=0){C&&fr(C,Z.Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method);return}UZ.push(l.id);let Ee=IL(se,C,E,...D);return UZ.pop(),Ee?W.awaitedTypeOfType=Ee:void 0}if(lKr(l)){if(C){w.assertIsDefined(E);let Ee;M.value&&(Ee=ou(Ee,Z.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1,Ys(l),Ys(M.value))),Ee=ou(Ee,E,...D),KA.add(ZS(ls(C),C,Ee))}return}return W.awaitedTypeOfType=l}function vhs(l,C,E){let D=Vc(C);if(Me>=2){if(QA(D))return;let M=DZe(!0);if(M!==Ug&&!XV(D,M)){W(Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0,C,E,Ys(IL(D)||so));return}}else{if(U7(l,5),QA(D))return;let M=$$(C);if(M===void 0){W(Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,C,E,Ys(D));return}let se=ZI(M,111551,!0),Ee=se?co(se):cr;if(QA(Ee)){M.kind===80&&M.escapedText==="Promise"&&Sre(D)===DZe(!1)?fr(E,Z.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):W(Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,C,E,r0(M));return}let Ve=Hgs(!0);if(Ve===Lc){W(Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,C,E,r0(M));return}let Oe=Z.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value;if(!_0(Ee,Ve,E,Oe,()=>C===E?void 0:ou(void 0,Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type)))return;let Wt=M&&sb(M),Rt=L_(l.locals,Wt.escapedText,111551);if(Rt){fr(Rt.valueDeclaration,Z.Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions,oo(Wt),r0(M));return}}Rye(D,!1,l,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);function W(M,se,Ee,Ve){if(se===Ee)fr(Ee,M,Ve);else{let Oe=fr(Ee,Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type);tg(Oe,Js(se,M,Ve))}}}function Shs(l){let C=ls(l);if(!sW(C)){let E=l.expression;if(ZC(E))return!1;let D=!0,W;for(;;){if(k_(E)||sT(E)){E=E.expression;continue}if(lu(E)){D||(W=E),E.questionDotToken&&(W=E.questionDotToken),E=E.expression,D=!1;continue}if(fo(E)){E.questionDotToken&&(W=E.questionDotToken),E=E.expression,D=!1;continue}sr(E)||(W=E);break}if(W)return tg(fr(l.expression,Z.Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator),Js(W,Z.Invalid_syntax_in_decorator)),!0}return!1}function whs(l){Shs(l);let C=Hre(l);Fet(C,l);let E=wd(C);if(E.flags&1)return;let D=bOt(l);if(!D?.resolvedReturnType)return;let W,M=D.resolvedReturnType;switch(l.parent.kind){case 263:case 231:W=Z.Decorator_function_return_type_0_is_not_assignable_to_type_1;break;case 172:if(!lt){W=Z.Decorator_function_return_type_0_is_not_assignable_to_type_1;break}case 169:W=Z.Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any;break;case 174:case 177:case 178:W=Z.Decorator_function_return_type_0_is_not_assignable_to_type_1;break;default:return w.failBadSyntaxKind(l.parent)}_0(E,M,l.expression,W)}function Dye(l,C,E,D,W,M=E.length,se=0){let Ee=_e.createFunctionTypeNode(void 0,v,_e.createKeywordTypeNode(133));return ik(Ee,l,C,E,D,W,M,se)}function FOt(l,C,E,D,W,M,se){let Ee=Dye(l,C,E,D,W,M,se);return z4(Ee)}function gKr(l){return FOt(void 0,void 0,v,l)}function AKr(l){let C=ow("value",l);return FOt(void 0,void 0,[C],so)}function ZOt(l){if(l)switch(l.kind){case 193:case 192:return dKr(l.types);case 194:return dKr([l.trueType,l.falseType]);case 196:case 202:return ZOt(l.type);case 183:return l.typeName}}function dKr(l){let C;for(let E of l){for(;E.kind===196||E.kind===202;)E=E.type;if(E.kind===146||!nt&&(E.kind===201&&E.literal.kind===106||E.kind===157))continue;let D=ZOt(E);if(!D)return;if(C){if(!sr(C)||!sr(D)||C.escapedText!==D.escapedText)return}else C=D}return C}function Jet(l){let C=IC(l);return Dv(l)?ame(C):C}function RLe(l){if(!IM(l)||!LE(l)||!l.modifiers||!eee(lt,l,l.parent,l.parent.parent))return;let C=be(l.modifiers,FC);if(C){lt?(Lm(C,8),l.kind===169&&Lm(C,32)):Me<99&&(Lm(C,8),Ec(l)?l.name?ZKr(l)&&Lm(C,4194304):Lm(C,4194304):rp(l)||(Gc(l.name)&&(lI(l)||zw(l)||r_(l))&&Lm(C,4194304),kg(l.name)&&Lm(C,8388608))),U7(l,8);for(let E of l.modifiers)FC(E)&&whs(E)}}function Ths(l){u(C);function C(){fKr(l),cQt(l),Rge(l,l.name)}}function Nhs(l){l.typeExpression||fr(l.name,Z.JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags),l.name&&xge(l.name,Z.Type_alias_name_cannot_be_0),Kg(l.typeExpression),ZLe(D1(l))}function Rhs(l){Kg(l.constraint);for(let C of l.typeParameters)Kg(C)}function Dhs(l){Kg(l.typeExpression)}function xhs(l){Kg(l.typeExpression);let C=wZ(l);if(C){let E=A8(C,qxe);if(O(E)>1)for(let D=1;D0),E.length>1&&fr(E[1],Z.Class_declarations_cannot_have_more_than_one_augments_or_extends_tag);let D=pKr(l.class.expression),W=nV(C);if(W){let M=pKr(W.expression);M&&D.escapedText!==M.escapedText&&fr(D,Z.JSDoc_0_1_does_not_match_the_extends_2_clause,oo(l.tagName),oo(D),oo(M))}}function Ohs(l){let C=tV(l);C&&Dh(C)&&fr(l,Z.An_accessibility_modifier_cannot_be_used_with_a_private_identifier)}function pKr(l){switch(l.kind){case 80:return l;case 211:return l.name;default:return}}function fKr(l){var C;RLe(l),wye(l);let E=YI(l);if(l.name&&l.name.kind===167&&jN(l.name),Nre(l)){let M=Oo(l),se=l.localSymbol||M,Ee=(C=se.declarations)==null?void 0:C.find(Ve=>Ve.kind===l.kind&&!(Ve.flags&524288));l===Ee&&Yet(se),M.parent&&Yet(M)}let D=l.kind===173?void 0:l.body;if(Kg(D),BOt(l,Dre(l)),u(W),io(l)){let M=Sx(l);M&&M.typeExpression&&!QPt(Vc(M.typeExpression),l)&&fr(M.typeExpression.type,Z.The_type_of_a_function_declaration_must_match_the_function_s_signature)}function W(){nb(l)||(Tf(D)&&!NLe(l)&&nO(l,Mt),E&1&&GE(D)&&wd(rB(l)))}}function iW(l){u(C);function C(){let E=ls(l),D=U2.get(E.path);D||(D=[],U2.set(E.path,D)),D.push(l)}}function IKr(l,C){for(let E of l)switch(E.kind){case 263:case 231:Qhs(E,C),LOt(E,C);break;case 307:case 267:case 241:case 269:case 248:case 249:case 250:hKr(E,C);break;case 176:case 218:case 262:case 219:case 174:case 177:case 178:E.body&&hKr(E,C),LOt(E,C);break;case 173:case 179:case 180:case 184:case 185:case 265:case 264:LOt(E,C);break;case 195:Mhs(E,C);break;default:w.assertNever(E,"Node should not have been registered for unused identifiers check")}}function CKr(l,C,E){let D=Sl(l)||l,W=$5(l)?Z._0_is_declared_but_never_used:Z._0_is_declared_but_its_value_is_never_read;E(l,0,Js(D,W,C))}function xye(l){return sr(l)&&oo(l).charCodeAt(0)===95}function Qhs(l,C){for(let E of l.members)switch(E.kind){case 174:case 172:case 177:case 178:if(E.kind===178&&E.symbol.flags&32768)break;let D=Oo(E);!D.isReferenced&&(ib(E,2)||wf(E)&&Gc(E.name))&&!(E.flags&33554432)&&C(E,0,Js(E.name,Z._0_is_declared_but_its_value_is_never_read,$c(D)));break;case 176:for(let W of E.parameters)!W.symbol.isReferenced&&ya(W,2)&&C(W,0,Js(W.name,Z.Property_0_is_declared_but_its_value_is_never_read,pf(W.symbol)));break;case 181:case 240:case 175:break;default:w.fail("Unexpected class member")}}function Mhs(l,C){let{typeParameter:E}=l;VOt(E)&&C(l,1,Js(l,Z._0_is_declared_but_its_value_is_never_read,oo(E.name)))}function LOt(l,C){let E=Oo(l).declarations;if(!E||Ta(E)!==l)return;let D=D1(l),W=new Set;for(let M of D){if(!VOt(M))continue;let se=oo(M.name),{parent:Ee}=M;if(Ee.kind!==195&&Ee.typeParameters.every(VOt)){if(Zi(W,Ee)){let Ve=ls(Ee),Oe=Lv(Ee)?Ihe(Ee):Che(Ve,Ee.typeParameters),Wt=Ee.typeParameters.length===1?[Z._0_is_declared_but_its_value_is_never_read,se]:[Z.All_type_parameters_are_unused];C(M,1,Cm(Ve,Oe.pos,Oe.end-Oe.pos,...Wt))}}else C(M,1,Js(M,Z._0_is_declared_but_its_value_is_never_read,se))}}function VOt(l){return!(FA(l.symbol).isReferenced&262144)&&!xye(l.name)}function DLe(l,C,E,D){let W=String(D(C)),M=l.get(W);M?M[1].push(E):l.set(W,[C,[E]])}function mKr(l){return $s(PS(l),Uc)}function Hhs(l){return hl(l)?Wg(l.parent)?!!(l.propertyName&&xye(l.name)):xye(l.name):Yf(l)||(js(l)&&bZ(l.parent.parent)||_Kr(l))&&xye(l.name)}function hKr(l,C){let E=new Map,D=new Map,W=new Map;l.locals.forEach(M=>{if(!(M.flags&262144?!(M.flags&3&&!(M.isReferenced&3)):M.isReferenced||M.exportSymbol)&&M.declarations){for(let se of M.declarations)if(!Hhs(se))if(_Kr(se))DLe(E,Xhs(se),se,od);else if(hl(se)&&Wg(se.parent)){let Ee=Ta(se.parent.elements);(se===Ee||!Ta(se.parent.elements).dotDotDotToken)&&DLe(D,se.parent,se,od)}else if(js(se)){let Ee=aH(se)&7,Ve=Sl(se);(Ee!==4&&Ee!==6||!Ve||!xye(Ve))&&DLe(W,se.parent,se,od)}else{let Ee=M.valueDeclaration&&mKr(M.valueDeclaration),Ve=M.valueDeclaration&&Sl(M.valueDeclaration);Ee&&Ve?!Zn(Ee,Ee.parent)&&!oV(Ee)&&!xye(Ve)&&(hl(se)&&Wu(se.parent)?DLe(D,se.parent,se,od):C(Ee,1,Js(Ve,Z._0_is_declared_but_its_value_is_never_read,pf(M)))):CKr(se,pf(M),C)}}}),E.forEach(([M,se])=>{let Ee=M.parent;if((M.name?1:0)+(M.namedBindings?M.namedBindings.kind===274?1:M.namedBindings.elements.length:0)===se.length)C(Ee,0,se.length===1?Js(Ee,Z._0_is_declared_but_its_value_is_never_read,oo(qs(se).name)):Js(Ee,Z.All_imports_in_import_declaration_are_unused));else for(let Oe of se)CKr(Oe,oo(Oe.name),C)}),D.forEach(([M,se])=>{let Ee=mKr(M.parent)?1:0;if(M.elements.length===se.length)se.length===1&&M.parent.kind===260&&M.parent.parent.kind===261?DLe(W,M.parent.parent,M.parent,od):C(M,Ee,se.length===1?Js(M,Z._0_is_declared_but_its_value_is_never_read,xLe(qs(se).name)):Js(M,Z.All_destructured_elements_are_unused));else for(let Ve of se)C(Ve,Ee,Js(Ve,Z._0_is_declared_but_its_value_is_never_read,xLe(Ve.name)))}),W.forEach(([M,se])=>{if(M.declarations.length===se.length)C(M,0,se.length===1?Js(qs(se).name,Z._0_is_declared_but_its_value_is_never_read,xLe(qs(se).name)):Js(M.parent.kind===243?M.parent:M,Z.All_variables_are_unused));else for(let Ee of se)C(Ee,0,Js(Ee,Z._0_is_declared_but_its_value_is_never_read,xLe(Ee.name)))})}function Yhs(){var l;for(let C of D4)if(!((l=Oo(C))!=null&&l.isReferenced)){let E=IA(C);w.assert(TZ(E),"Only parameter declaration should be checked here");let D=Js(C.name,Z._0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation,kd(C.name),kd(C.propertyName));E.type||tg(D,Cm(ls(E),E.end,1,Z.We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here,kd(C.propertyName))),KA.add(D)}}function xLe(l){switch(l.kind){case 80:return oo(l);case 207:case 206:return xLe(ps(qs(l.elements),hl).name);default:return w.assertNever(l)}}function _Kr(l){return l.kind===273||l.kind===276||l.kind===274}function Xhs(l){return l.kind===273?l:l.kind===274?l.parent:l.parent.parent}function Uet(l){if(l.kind===241&&IF(l),_$(l)){let C=iw;X(l.statements,Kg),iw=C}else X(l.statements,Kg);l.locals&&iW(l)}function Jhs(l){Me>=2||!T$(l)||l.flags&33554432||Tf(l.body)||X(l.parameters,C=>{C.name&&!fu(C.name)&&C.name.escapedText===jt.escapedName&&IT("noEmit",C,Z.Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters)})}function kye(l,C,E){if(C?.escapedText!==E||l.kind===172||l.kind===171||l.kind===174||l.kind===173||l.kind===177||l.kind===178||l.kind===303||l.flags&33554432||(oT(l)||mm(l)||yy(l))&&Nx(l))return!1;let D=PS(l);return!(Uc(D)&&Tf(D.parent.body))}function Uhs(l){Si(l,C=>Ure(C)&4?(l.kind!==80?fr(Sl(l),Z.Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference):fr(l,Z.Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference),!0):!1)}function Khs(l){Si(l,C=>Ure(C)&8?(l.kind!==80?fr(Sl(l),Z.Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference):fr(l,Z.Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference),!0):!1)}function jhs(l,C){if(De>=5&&!(De>=100&&ls(l).impliedNodeFormat===1)||!C||!kye(l,C,"require")&&!kye(l,C,"exports")||mC(l)&&PG(l)!==1)return;let E=J4(l);E.kind===307&&na(E)&&IT("noEmit",C,Z.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module,kd(C),kd(C))}function zhs(l,C){if(!C||Me>=4||!kye(l,C,"Promise")||mC(l)&&PG(l)!==1)return;let E=J4(l);E.kind===307&&na(E)&&E.flags&4096&&IT("noEmit",C,Z.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions,kd(C),kd(C))}function qhs(l,C){Me<=8&&(kye(l,C,"WeakMap")||kye(l,C,"WeakSet"))&&vP.push(l)}function $hs(l){let C=w2(l);Ure(C)&1048576&&(w.assert(wf(l)&&sr(l.name)&&typeof l.name.escapedText=="string","The target of a WeakMap/WeakSet collision check should be an identifier"),IT("noEmit",l,Z.Compiler_reserves_name_0_when_emitting_private_identifier_downlevel,l.name.escapedText))}function e_s(l,C){C&&Me>=2&&Me<=8&&kye(l,C,"Reflect")&&SP.push(l)}function t_s(l){let C=!1;if(rp(l)){for(let E of l.members)if(Ure(E)&2097152){C=!0;break}}else if(PA(l))Ure(l)&2097152&&(C=!0);else{let E=w2(l);E&&Ure(E)&2097152&&(C=!0)}C&&(w.assert(wf(l)&&sr(l.name),"The target of a Reflect collision check should be an identifier"),IT("noEmit",l,Z.Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializers,kd(l.name),"Reflect"))}function Rge(l,C){C&&(jhs(l,C),zhs(l,C),qhs(l,C),e_s(l,C),va(l)?(xge(C,Z.Class_name_cannot_be_0),l.flags&33554432||N_s(C)):iP(l)&&xge(C,Z.Enum_name_cannot_be_0))}function r_s(l){if(aH(l)&7||TZ(l))return;let C=Oo(l);if(C.flags&1){if(!sr(l.name))return w.fail();let E=Pi(l,l.name.escapedText,3,void 0,!1);if(E&&E!==C&&E.flags&2&&UPt(E)&7){let D=bG(E.valueDeclaration,261),W=D.parent.kind===243&&D.parent.parent?D.parent.parent:void 0;if(!(W&&(W.kind===241&&eu(W.parent)||W.kind===268||W.kind===267||W.kind===307))){let se=$c(E);fr(l,Z.Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1,se,se)}}}}function Gye(l){return l===_r?Mt:l===Xd?np:l}function kLe(l){var C;if(RLe(l),hl(l)||Kg(l.type),!l.name)return;if(l.name.kind===167&&(jN(l.name),mG(l)&&l.initializer&&sC(l.initializer)),hl(l)){if(l.propertyName&&sr(l.name)&&TZ(l)&&Tf(Ob(l).body)){D4.push(l);return}Wg(l.parent)&&l.dotDotDotToken&&Me<5&&Lm(l,4),l.propertyName&&l.propertyName.kind===167&&jN(l.propertyName);let W=l.parent.parent,M=l.dotDotDotToken?32:0,se=D7(W,M),Ee=l.propertyName||l.name;if(se&&!fu(Ee)){let Ve=dL(Ee);if(k2(Ve)){let Oe=G2(Ve),ot=yg(se,Oe);ot&&(fLe(ot,void 0,!1),jPt(l,!!W.initializer&&W.initializer.kind===108,!1,se,ot))}}}if(fu(l.name)&&(l.name.kind===207&&Me<2&&Ne.downlevelIteration&&Lm(l,512),X(l.name.elements,Kg)),l.initializer&&TZ(l)&&Tf(Ob(l).body)){fr(l,Z.A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation);return}if(fu(l.name)){if(yPt(l))return;let W=mG(l)&&l.initializer&&l.parent.parent.kind!==249,M=!lr(l.name.elements,Am(tf));if(W||M){let se=me(l);if(W){let Ee=sC(l.initializer);nt&&M?HJr(Ee,l):eW(Ee,me(l),l,l.initializer)}M&&(Wu(l.name)?CL(65,se,wn,l):nt&&HJr(se,l))}return}let E=Oo(l);if(E.flags&2097152&&($9(l)||MRe(l))){ett(l);return}let D=Gye(co(E));if(l===E.valueDeclaration){let W=mG(l)&&see(l);if(W&&!(io(l)&&ru(W)&&(W.properties.length===0||SG(l.name))&&!!((C=E.exports)!=null&&C.size))&&l.parent.parent.kind!==249){let se=sC(W);eW(se,D,l,W,void 0);let Ee=aH(l)&7;if(Ee===6){let Ve=$gs(!0),Oe=sXr(!0);if(Ve!==Lc&&Oe!==Lc){let ot=wa([Ve,Oe,ur,wn]);_0(se,ot,W,Z.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(Ee===4){let Ve=sXr(!0);if(Ve!==Lc){let Oe=wa([Ve,ur,wn]);_0(se,Oe,W,Z.The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_null_or_undefined)}}}E.declarations&&E.declarations.length>1&&lr(E.declarations,M=>M!==l&&R5(M)&&!bKr(M,l))&&fr(l.name,Z.All_declarations_of_0_must_have_identical_modifiers,kd(l.name))}else{let W=Gye(me(l));!QA(D)&&!QA(W)&&!lF(D,W)&&!(E.flags&67108864)&&yKr(E.valueDeclaration,D,l,W),mG(l)&&l.initializer&&eW(sC(l.initializer),W,l,l.initializer,void 0),E.valueDeclaration&&!bKr(l,E.valueDeclaration)&&fr(l.name,Z.All_declarations_of_0_must_have_identical_modifiers,kd(l.name))}l.kind!==172&&l.kind!==171&&(Tye(l),(l.kind===260||l.kind===208)&&r_s(l),Rge(l,l.name))}function yKr(l,C,E,D){let W=Sl(E),M=E.kind===172||E.kind===171?Z.Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:Z.Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2,se=kd(W),Ee=fr(W,M,se,Ys(C),Ys(D));l&&tg(Ee,Js(l,Z._0_was_also_declared_here,se))}function bKr(l,C){if(l.kind===169&&C.kind===260||l.kind===260&&C.kind===169)return!0;if(F5(l)!==F5(C))return!1;let E=1358;return W5(l,E)===W5(C,E)}function n_s(l){var C,E;(C=Qi)==null||C.push(Qi.Phase.Check,"checkVariableDeclaration",{kind:l.kind,pos:l.pos,end:l.end,path:l.tracingPath}),Lys(l),kLe(l),(E=Qi)==null||E.pop()}function i_s(l){return Gys(l),kLe(l)}function Ket(l){let C=$y(l)&7;(C===4||C===6)&&Me<99&&Lm(l,16777216),X(l.declarations,Kg)}function s_s(l){!ck(l)&&!gQt(l.declarationList)&&Vys(l),Ket(l.declarationList)}function o_s(l){IF(l),Dl(l.expression)}function a_s(l){IF(l);let C=Dge(l.expression);WOt(l.expression,C,l.thenStatement),Kg(l.thenStatement),l.thenStatement.kind===242&&fr(l.thenStatement,Z.The_body_of_an_if_statement_cannot_be_the_empty_statement),Kg(l.elseStatement)}function WOt(l,C,E){if(!nt)return;D(l,E);function D(M,se){for(M=zA(M),W(M,se);ro(M)&&(M.operatorToken.kind===57||M.operatorToken.kind===61);)M=zA(M.left),W(M,se)}function W(M,se){let Ee=Ree(M)?zA(M.right):M;if(dN(Ee))return;if(Ree(Ee)){D(Ee,se);return}let Ve=Ee===M?C:Dge(Ee);if(Ve.flags&1024&&fo(Ee)&&(Jo(Ee.expression).resolvedSymbol??en).flags&384){fr(Ee,Z.This_condition_will_always_return_0,Ve.value?"true":"false");return}let Oe=fo(Ee)&&JUr(Ee.expression);if(!vT(Ve,4194304)||Oe)return;let ot=Ou(Ve,0),Wt=!!Tge(Ve);if(ot.length===0&&!Wt)return;let Rt=sr(Ee)?Ee:fo(Ee)?Ee.name:void 0,Qr=Rt&&zv(Rt);if(!Qr&&!Wt)return;Qr&&ro(M.parent)&&l_s(M.parent,Qr)||Qr&&se&&c_s(M,se,Rt,Qr)||(Wt?RP(Ee,!0,Z.This_condition_will_always_return_true_since_this_0_is_always_defined,yre(Ve)):fr(Ee,Z.This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead))}}function c_s(l,C,E,D){return!!hu(C,function W(M){if(sr(M)){let se=zv(M);if(se&&se===D){if(sr(l)||sr(E)&&ro(E.parent))return!0;let Ee=E.parent,Ve=M.parent;for(;Ee&&Ve;){if(sr(Ee)&&sr(Ve)||Ee.kind===110&&Ve.kind===110)return zv(Ee)===zv(Ve);if(fo(Ee)&&fo(Ve)){if(zv(Ee.name)!==zv(Ve.name))return!1;Ve=Ve.expression,Ee=Ee.expression}else if(lu(Ee)&&lu(Ve))Ve=Ve.expression,Ee=Ee.expression;else return!1}}}return hu(M,W)})}function l_s(l,C){for(;ro(l)&&l.operatorToken.kind===56;){if(hu(l.right,function D(W){if(sr(W)){let M=zv(W);if(M&&M===C)return!0}return hu(W,D)}))return!0;l=l.parent}return!1}function u_s(l){IF(l),Kg(l.statement),Dge(l.expression)}function g_s(l){IF(l),Dge(l.expression),Kg(l.statement)}function POt(l,C){return l.flags&16384&&fr(C,Z.An_expression_of_type_void_cannot_be_tested_for_truthiness),l}function Dge(l,C){return POt(Dl(l,C),l)}function A_s(l){IF(l)||l.initializer&&l.initializer.kind===261&&gQt(l.initializer),l.initializer&&(l.initializer.kind===261?Ket(l.initializer):Dl(l.initializer)),l.condition&&Dge(l.condition),l.incrementor&&Dl(l.incrementor),Kg(l.statement),l.locals&&iW(l)}function d_s(l){h8r(l);let C=z$(l);if(l.awaitModifier?C&&ef(C)?qi(l.awaitModifier,Z.for_await_loops_cannot_be_used_inside_a_class_static_block):(YI(C)&6)===2&&Me<5&&Lm(l,16384):Ne.downlevelIteration&&Me<2&&Lm(l,256),l.initializer.kind===261)Ket(l.initializer);else{let E=l.initializer,D=GLe(l);if(E.kind===209||E.kind===210)dJ(E,D||cr);else{let W=Dl(E);vye(E,Z.The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access,Z.The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access),D&&eW(D,W,E,l.expression)}}Kg(l.statement),l.locals&&iW(l)}function p_s(l){h8r(l);let C=zPt(Dl(l.expression));if(l.initializer.kind===261){let E=l.initializer.declarations[0];E&&fu(E.name)&&fr(E.name,Z.The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern),Ket(l.initializer)}else{let E=l.initializer,D=Dl(E);E.kind===209||E.kind===210?fr(E,Z.The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern):bg(PAs(C),D)?vye(E,Z.The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access,Z.The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access):fr(E,Z.The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any)}(C===Vi||!l_(C,126091264))&&fr(l.expression,Z.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,Ys(C)),Kg(l.statement),l.locals&&iW(l)}function GLe(l){let C=l.awaitModifier?15:13;return CL(C,Qre(l.expression),wn,l.expression)}function CL(l,C,E,D){return Sd(C)?C:OOt(l,C,E,D,!0)||Mt}function OOt(l,C,E,D,W){let M=(l&2)!==0;if(C===Vi){D&&XOt(D,C,M);return}let se=Me>=2,Ee=!se&&Ne.downlevelIteration,Ve=Ne.noUncheckedIndexedAccess&&!!(l&128);if(se||Ee||M){let Qr=zet(C,l,se?D:void 0);if(W&&Qr){let ln=l&8?Z.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:l&32?Z.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:l&64?Z.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:l&16?Z.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;ln&&_0(E,Qr.nextType,D,ln)}if(Qr||se)return Ve?Iye(Qr&&Qr.yieldType):Qr&&Qr.yieldType}let Oe=C,ot=!1;if(l&4){if(Oe.flags&1048576){let Qr=C.types,ln=Gt(Qr,hn=>!(hn.flags&402653316));ln!==Qr&&(Oe=wa(ln,2))}else Oe.flags&402653316&&(Oe=Vi);if(ot=Oe!==C,ot&&Oe.flags&131072)return Ve?Iye(Jt):Jt}if(!fL(Oe)){if(D){let Qr=!!(l&4)&&!ot,[ln,hn]=Rt(Qr,Ee);RP(D,hn&&!!Tge(Oe),ln,Ys(Oe))}return ot?Ve?Iye(Jt):Jt:void 0}let Wt=jP(Oe,bt);if(ot&&Wt)return Wt.flags&402653316&&!Ne.noUncheckedIndexedAccess?Jt:wa(Ve?[Wt,Jt,wn]:[Wt,Jt],2);return l&128?Iye(Wt):Wt;function Rt(Qr,ln){var hn;return ln?Qr?[Z.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0]:[Z.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0]:QOt(l,0,C,void 0)?[Z.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher,!1]:f_s((hn=C.symbol)==null?void 0:hn.escapedName)?[Z.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher,!0]:Qr?[Z.Type_0_is_not_an_array_type_or_a_string_type,!0]:[Z.Type_0_is_not_an_array_type,!0]}}function f_s(l){switch(l){case"Float32Array":case"Float64Array":case"Int16Array":case"Int32Array":case"Int8Array":case"NodeList":case"Uint16Array":case"Uint32Array":case"Uint8Array":case"Uint8ClampedArray":return!0}return!1}function QOt(l,C,E,D){if(Sd(E))return;let W=zet(E,l,D);return W&&W[hGr(C)]}function mL(l=Vi,C=Vi,E=Kr){if(l.flags&67359327&&C.flags&180227&&E.flags&180227){let D=Uv([l,C,E]),W=Yo.get(D);return W||(W={yieldType:l,returnType:C,nextType:E},Yo.set(D,W)),W}return{yieldType:l,returnType:C,nextType:E}}function EKr(l){let C,E,D;for(let W of l)if(!(W===void 0||W===fi)){if(W===Xo)return Xo;C=Yr(C,W.yieldType),E=Yr(E,W.returnType),D=Yr(D,W.nextType)}return C||E||D?mL(C&&wa(C),E&&wa(E),D&&Og(D)):fi}function jet(l,C){return l[C]}function ak(l,C,E){return l[C]=E}function zet(l,C,E){var D,W;if(Sd(l))return Xo;if(!(l.flags&1048576)){let Oe=E?{errors:void 0}:void 0,ot=BKr(l,C,E,Oe);if(ot===fi){if(E){let Wt=XOt(E,l,!!(C&2));Oe?.errors&&tg(Wt,...Oe.errors)}return}else if((D=Oe?.errors)!=null&&D.length)for(let Wt of Oe.errors)KA.add(Wt);return ot}let M=C&2?"iterationTypesOfAsyncIterable":"iterationTypesOfIterable",se=jet(l,M);if(se)return se===fi?void 0:se;let Ee;for(let Oe of l.types){let ot=E?{errors:void 0}:void 0,Wt=BKr(Oe,C,E,ot);if(Wt===fi){if(E){let Rt=XOt(E,l,!!(C&2));ot?.errors&&tg(Rt,...ot.errors)}ak(l,M,fi);return}else if((W=ot?.errors)!=null&&W.length)for(let Rt of ot.errors)KA.add(Rt);Ee=Yr(Ee,Wt)}let Ve=Ee?EKr(Ee):fi;return ak(l,M,Ve),Ve===fi?void 0:Ve}function MOt(l,C){if(l===fi)return fi;if(l===Xo)return Xo;let{yieldType:E,returnType:D,nextType:W}=l;return C&&_3t(!0),mL(pJ(E,C)||Mt,pJ(D,C)||Mt,W)}function BKr(l,C,E,D){if(Sd(l))return Xo;let W=!1;if(C&2){let M=HOt(l,Pg)||SKr(l,Pg);if(M)if(M===fi&&E)W=!0;else return C&8?MOt(M,E):M}if(C&1){let M=HOt(l,sf)||SKr(l,sf);if(M)if(M===fi&&E)W=!0;else if(C&2){if(M!==fi)return M=MOt(M,E),W?M:ak(l,"iterationTypesOfAsyncIterable",M)}else return M}if(C&2){let M=YOt(l,Pg,E,D,W);if(M!==fi)return M}if(C&1){let M=YOt(l,sf,E,D,W);if(M!==fi)return C&2?(M=MOt(M,E),W?M:ak(l,"iterationTypesOfAsyncIterable",M)):M}return fi}function HOt(l,C){return jet(l,C.iterableCacheKey)}function vKr(l,C){let E=HOt(l,C)||YOt(l,C,void 0,void 0,!1);return E===fi?ic:E}function SKr(l,C){let E;if(XV(l,E=C.getGlobalIterableType(!1))||XV(l,E=C.getGlobalIterableIteratorType(!1))){let[D]=af(l),{returnType:W,nextType:M}=vKr(E,C);return ak(l,C.iterableCacheKey,mL(C.resolveIterationType(D,void 0)||D,C.resolveIterationType(W,void 0)||W,M))}if(XV(l,C.getGlobalGeneratorType(!1))){let[D,W,M]=af(l);return ak(l,C.iterableCacheKey,mL(C.resolveIterationType(D,void 0)||D,C.resolveIterationType(W,void 0)||W,M))}}function wKr(l){let C=rXr(!1),E=C&&LI(co(C),Dd(l));return E&&k2(E)?G2(E):`__@${l}`}function YOt(l,C,E,D,W){let M=yg(l,wKr(C.iteratorSymbolName)),se=M&&!(M.flags&16777216)?co(M):void 0;if(Sd(se))return W?Xo:ak(l,C.iterableCacheKey,Xo);let Ee=se?Ou(se,0):void 0;if(!lr(Ee))return W?fi:ak(l,C.iterableCacheKey,fi);let Ve=Og(Ot(Ee,wd)),Oe=TKr(Ve,C,E,D,W)??fi;return W?Oe:ak(l,C.iterableCacheKey,Oe)}function XOt(l,C,E){let D=E?Z.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:Z.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator,W=!!Tge(C)||!E&&P1(l.parent)&&l.parent.expression===l&&w$e(!1)!==Ug&&bg(C,w$e(!1));return RP(l,W,D,Ys(C))}function I_s(l,C,E,D){return TKr(l,C,E,D,!1)}function TKr(l,C,E,D,W){if(Sd(l))return Xo;let M=NKr(l,C)||C_s(l,C);return M===fi&&E&&(M=void 0,W=!0),M??(M=DKr(l,C,E,D,W)),M===fi?void 0:M}function NKr(l,C){return jet(l,C.iteratorCacheKey)}function C_s(l,C){let E=C.getGlobalIterableIteratorType(!1);if(XV(l,E)){let[D]=af(l),W=NKr(E,C)||DKr(E,C,void 0,void 0,!1),{returnType:M,nextType:se}=W===fi?ic:W;return ak(l,C.iteratorCacheKey,mL(D,M,se))}if(XV(l,C.getGlobalIteratorType(!1))||XV(l,C.getGlobalGeneratorType(!1))){let[D,W,M]=af(l);return ak(l,C.iteratorCacheKey,mL(D,W,M))}}function RKr(l,C){let E=LI(l,"done")||dn;return bg(C===0?dn:Qn,E)}function m_s(l){return RKr(l,0)}function h_s(l){return RKr(l,1)}function __s(l){if(Sd(l))return Xo;let C=jet(l,"iterationTypesOfIteratorResult");if(C)return C;if(XV(l,zgs(!1))){let se=af(l)[0];return ak(l,"iterationTypesOfIteratorResult",mL(se,void 0,void 0))}if(XV(l,qgs(!1))){let se=af(l)[0];return ak(l,"iterationTypesOfIteratorResult",mL(void 0,se,void 0))}let E=WC(l,m_s),D=E!==Vi?LI(E,"value"):void 0,W=WC(l,h_s),M=W!==Vi?LI(W,"value"):void 0;return!D&&!M?ak(l,"iterationTypesOfIteratorResult",fi):ak(l,"iterationTypesOfIteratorResult",mL(D,M||so,void 0))}function JOt(l,C,E,D,W){var M,se,Ee,Ve;let Oe=yg(l,E);if(!Oe&&E!=="next")return;let ot=Oe&&!(E==="next"&&Oe.flags&16777216)?E==="next"?co(Oe):Kv(co(Oe),2097152):void 0;if(Sd(ot))return E==="next"?Xo:_c;let Wt=ot?Ou(ot,0):v;if(Wt.length===0){if(D){let Hi=E==="next"?C.mustHaveANextMethodDiagnostic:C.mustBeAMethodDiagnostic;W?(W.errors??(W.errors=[]),W.errors.push(Js(D,Hi,E))):fr(D,Hi,E)}return E==="next"?fi:void 0}if(ot?.symbol&&Wt.length===1){let Hi=C.getGlobalGeneratorType(!1),Cs=C.getGlobalIteratorType(!1),Ds=((se=(M=Hi.symbol)==null?void 0:M.members)==null?void 0:se.get(E))===ot.symbol,jo=!Ds&&((Ve=(Ee=Cs.symbol)==null?void 0:Ee.members)==null?void 0:Ve.get(E))===ot.symbol;if(Ds||jo){let Ca=Ds?Hi:Cs,{mapper:ma}=ot;return mL(pL(Ca.typeParameters[0],ma),pL(Ca.typeParameters[1],ma),E==="next"?pL(Ca.typeParameters[2],ma):void 0)}}let Rt,Qr;for(let Hi of Wt)E!=="throw"&&lr(Hi.parameters)&&(Rt=Yr(Rt,ST(Hi,0))),Qr=Yr(Qr,wd(Hi));let ln,hn;if(E!=="throw"){let Hi=Rt?wa(Rt):Kr;if(E==="next")hn=Hi;else if(E==="return"){let Cs=C.resolveIterationType(Hi,D)||Mt;ln=Yr(ln,Cs)}}let mi,Ti=Qr?Og(Qr):Vi,ks=C.resolveIterationType(Ti,D)||Mt,Vo=__s(ks);return Vo===fi?(D&&(W?(W.errors??(W.errors=[]),W.errors.push(Js(D,C.mustHaveAValueDiagnostic,E))):fr(D,C.mustHaveAValueDiagnostic,E)),mi=Mt,ln=Yr(ln,Mt)):(mi=Vo.yieldType,ln=Yr(ln,Vo.returnType)),mL(mi,wa(ln),hn)}function DKr(l,C,E,D,W){let M=EKr([JOt(l,C,"next",E,D),JOt(l,C,"return",E,D),JOt(l,C,"throw",E,D)]);return W?M:ak(l,C.iteratorCacheKey,M)}function sH(l,C,E){if(Sd(C))return;let D=UOt(C,E);return D&&D[hGr(l)]}function UOt(l,C){if(Sd(l))return Xo;let E=C?2:1,D=C?Pg:sf;return zet(l,E,void 0)||I_s(l,D,void 0,void 0)}function y_s(l){IF(l)||kys(l)}function FLe(l,C){let E=!!(C&1),D=!!(C&2);if(E){let W=sH(1,l,D);return W?D?IL(Nge(W)):W:cr}return D?IL(l)||cr:l}function xKr(l,C){let E=FLe(C,YI(l));return!!(E&&(KI(E,16384)||E.flags&32769))}function b_s(l){if(IF(l))return;let C=z$(l);if(C&&ef(C)){Lh(l,Z.A_return_statement_cannot_be_used_inside_a_class_static_block);return}if(!C){Lh(l,Z.A_return_statement_can_only_be_used_within_a_function_body);return}let E=rB(C),D=wd(E),W=YI(C);if(nt||l.expression||D.flags&131072){let M=l.expression?sC(l.expression):wn;if(C.kind===178)l.expression&&fr(l,Z.Setters_cannot_return_a_value);else if(C.kind===176)l.expression&&!eW(M,D,l,l.expression)&&fr(l,Z.Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class);else if(Dre(C)){let se=FLe(D,W)??D,Ee=W&2?Rye(M,!1,l,Z.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):M;se&&eW(Ee,se,l,l.expression)}}else C.kind!==176&&Ne.noImplicitReturns&&!xKr(C,D)&&fr(l,Z.Not_all_code_paths_return_a_value)}function E_s(l){IF(l)||l.flags&65536&&Lh(l,Z.with_statements_are_not_allowed_in_an_async_function_block),Dl(l.expression);let C=ls(l);if(!sW(C)){let E=Rr(C,l.pos).start,D=l.statement.pos;oH(C,E,D-E,Z.The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any)}}function B_s(l){IF(l);let C,E=!1,D=Dl(l.expression);X(l.caseBlock.clauses,W=>{W.kind===297&&!E&&(C===void 0?C=W:(qi(W,Z.A_default_clause_cannot_appear_more_than_once_in_a_switch_statement),E=!0)),W.kind===296&&u(M(W)),X(W.statements,Kg),Ne.noFallthroughCasesInSwitch&&W.fallthroughFlowNode&&rLe(W.fallthroughFlowNode)&&fr(W,Z.Fallthrough_case_in_switch);function M(se){return()=>{let Ee=Dl(se.expression);TOt(D,Ee)||$Xr(Ee,D,se.expression,void 0)}}}),l.caseBlock.locals&&iW(l.caseBlock)}function v_s(l){IF(l)||Si(l.parent,C=>eu(C)?"quit":C.kind===256&&C.label.escapedText===l.label.escapedText?(qi(l.label,Z.Duplicate_label_0,Nf(l.label)),!0):!1),Kg(l.statement)}function S_s(l){IF(l)||sr(l.expression)&&!l.expression.escapedText&&Uys(l,Z.Line_break_not_permitted_here),l.expression&&Dl(l.expression)}function w_s(l){IF(l),Uet(l.tryBlock);let C=l.catchClause;if(C){if(C.variableDeclaration){let E=C.variableDeclaration;kLe(E);let D=IC(E);if(D){let W=Vc(D);W&&!(W.flags&3)&&Lh(D,Z.Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified)}else if(E.initializer)Lh(E.initializer,Z.Catch_clause_variable_cannot_have_an_initializer);else{let W=C.block.locals;W&&eT(C.locals,M=>{let se=W.get(M);se?.valueDeclaration&&se.flags&2&&qi(se.valueDeclaration,Z.Cannot_redeclare_identifier_0_in_catch_clause,wc(M))})}}Uet(C.block)}l.finallyBlock&&Uet(l.finallyBlock)}function qet(l,C,E){let D=ty(l);if(D.length===0)return;for(let M of UV(l))E&&M.flags&4194304||kKr(l,M,W7(M,8576,!0),YV(M));let W=C.valueDeclaration;if(W&&va(W)){for(let M of W.members)if(!eg(M)&&!Nre(M)){let se=Oo(M);kKr(l,se,u_(M.name.expression),YV(se))}}if(D.length>1)for(let M of D)T_s(l,M)}function kKr(l,C,E,D){let W=C.valueDeclaration,M=Sl(W);if(M&&Gc(M))return;let se=r3t(l,E),Ee=ia(l)&2?qd(l.symbol,264):void 0,Ve=W&&W.kind===226||M&&M.kind===167?W:void 0,Oe=a_(C)===l.symbol?W:void 0;for(let ot of se){let Wt=ot.declaration&&a_(Oo(ot.declaration))===l.symbol?ot.declaration:void 0,Rt=Oe||Wt||(Ee&&!lr(Sa(l),Qr=>!!JM(Qr,C.escapedName)&&!!jP(Qr,ot.keyType))?Ee:void 0);if(Rt&&!bg(D,ot.type)){let Qr=G4(Rt,Z.Property_0_of_type_1_is_not_assignable_to_2_index_type_3,$c(C),Ys(D),Ys(ot.keyType),Ys(ot.type));Ve&&Rt!==Ve&&tg(Qr,Js(Ve,Z._0_is_declared_here,$c(C))),KA.add(Qr)}}}function T_s(l,C){let E=C.declaration,D=r3t(l,C.keyType),W=ia(l)&2?qd(l.symbol,264):void 0,M=E&&a_(Oo(E))===l.symbol?E:void 0;for(let se of D){if(se===C)continue;let Ee=se.declaration&&a_(Oo(se.declaration))===l.symbol?se.declaration:void 0,Ve=M||Ee||(W&&!lr(Sa(l),Oe=>!!sk(Oe,C.keyType)&&!!jP(Oe,se.keyType))?W:void 0);Ve&&!bg(C.type,se.type)&&fr(Ve,Z._0_index_type_1_is_not_assignable_to_2_index_type_3,Ys(C.keyType),Ys(C.type),Ys(se.keyType),Ys(se.type))}}function xge(l,C){switch(l.escapedText){case"any":case"unknown":case"never":case"number":case"bigint":case"boolean":case"string":case"symbol":case"void":case"object":case"undefined":fr(l,C,l.escapedText)}}function N_s(l){Me>=1&&l.escapedText==="Object"&&(De<5||ls(l).impliedNodeFormat===1)&&fr(l,Z.Class_name_cannot_be_Object_when_targeting_ES5_with_module_0,qh[De])}function R_s(l){let C=Gt(Tx(l),LB);if(!O(C))return;let E=io(l),D=new Set,W=new Set;if(X(l.parameters,({name:se},Ee)=>{sr(se)&&D.add(se.escapedText),fu(se)&&W.add(Ee)}),o3t(l)){let se=C.length-1,Ee=C[se];E&&Ee&&sr(Ee.name)&&Ee.typeExpression&&Ee.typeExpression.type&&!D.has(Ee.name.escapedText)&&!W.has(se)&&!jB(Vc(Ee.typeExpression.type))&&fr(Ee.name,Z.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type,oo(Ee.name))}else X(C,({name:se,isNameFirst:Ee},Ve)=>{W.has(Ve)||sr(se)&&D.has(se.escapedText)||(c0(se)?E&&fr(se,Z.Qualified_name_0_is_not_allowed_without_a_leading_param_object_1,r0(se),r0(se.left)):Ee||qm(E,se,Z.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name,oo(se)))})}function ZLe(l){let C=!1;if(l)for(let D=0;D{D.default?(C=!0,D_s(D.default,l,W)):C&&fr(D,Z.Required_type_parameters_may_not_follow_optional_type_parameters);for(let M=0;MD)return!1;for(let Ve=0;VeCC(E)&&Dh(E))&&qi(C,Z.Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator),!l.name&&!ya(l,2048)&&Lh(l,Z.A_class_declaration_without_the_default_modifier_must_have_a_name),LKr(l),X(l.members,Kg),iW(l)}function LKr(l){mys(l),RLe(l),Rge(l,l.name),ZLe(D1(l)),Tye(l);let C=Oo(l),E=kp(C),D=KE(E),W=co(C);GKr(C),Yet(C),Kms(l),!!(l.flags&33554432)||jms(l);let se=xv(l);if(se){X(se.typeArguments,Kg),Me<2&&Lm(se.parent,1);let Oe=nV(l);Oe&&Oe!==se&&Dl(Oe.expression);let ot=Sa(E);ot.length&&u(()=>{let Wt=ot[0],Rt=is(E),Qr=ey(Rt);if(L_s(Qr,se),Kg(se.expression),lr(se.typeArguments)){X(se.typeArguments,Kg);for(let hn of d$e(Qr,se.typeArguments,se))if(!oKr(se,hn.typeParameters))break}let ln=KE(Wt,E.thisType);if(_0(D,ln,void 0)?_0(W,JXr(Qr),l.name||l,Z.Class_static_side_0_incorrectly_extends_base_class_static_side_1):PKr(l,D,ln,Z.Class_0_incorrectly_extends_base_class_1),Rt.flags&8650752&&(mZe(W)?Ou(Rt,1).some(mi=>mi.flags&4)&&!ya(l,64)&&fr(l.name||l,Z.A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract):fr(l.name||l,Z.A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any)),!(Qr.symbol&&Qr.symbol.flags&32)&&!(Rt.flags&8650752)){let hn=KP(Qr,se.typeArguments,se);X(hn,mi=>!$N(mi.declaration)&&!lF(wd(mi),Wt))&&fr(se.expression,Z.Base_constructors_must_all_have_the_same_return_type)}P_s(E,Wt)})}Z_s(l,E,D,W);let Ee=YX(l);if(Ee)for(let Oe of Ee)(!lp(Oe.expression)||Gm(Oe.expression))&&fr(Oe.expression,Z.A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments),GOt(Oe),u(Ve(Oe));u(()=>{qet(E,C),qet(W,C,!0),xOt(l),M_s(l)});function Ve(Oe){return()=>{let ot=ET(Vc(Oe));if(!QA(ot))if(eh(ot)){let Wt=ot.symbol&&ot.symbol.flags&32?Z.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:Z.Class_0_incorrectly_implements_interface_1,Rt=KE(ot,E.thisType);_0(D,Rt,void 0)||PKr(l,D,Rt,Wt)}else fr(Oe,Z.A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members)}}}function Z_s(l,C,E,D){let M=xv(l)&&Sa(C),se=M?.length?KE(qs(M),C.thisType):void 0,Ee=is(C);for(let Ve of l.members)Wme(Ve)||(Df(Ve)&&X(Ve.parameters,Oe=>{Zn(Oe,Ve)&&VKr(l,D,Ee,se,C,E,Oe,!0)}),VKr(l,D,Ee,se,C,E,Ve,!1))}function VKr(l,C,E,D,W,M,se,Ee,Ve=!0){let Oe=se.name&&zv(se.name)||zv(se);return Oe?WKr(l,C,E,D,W,M,Pce(se),cV(se),eg(se),Ee,pf(Oe),Ve?se:void 0):0}function WKr(l,C,E,D,W,M,se,Ee,Ve,Oe,ot,Wt){let Rt=io(l),Qr=!!(l.flags&33554432);if(D&&(se||Ne.noImplicitOverride)){let ln=Dd(ot),hn=Ve?C:M,mi=Ve?E:D,Ti=yg(hn,ln),ks=yg(mi,ln),Vo=Ys(D);if(Ti&&!ks&&se){if(Wt){let Hi=jJr(ot,mi);Hi?fr(Wt,Rt?Z.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:Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1,Vo,$c(Hi)):fr(Wt,Rt?Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0:Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0,Vo)}return 2}else if(Ti&&ks?.declarations&&Ne.noImplicitOverride&&!Qr){let Hi=lr(ks.declarations,cV);if(se)return 0;if(Hi){if(Ee&&Hi)return Wt&&fr(Wt,Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0,Vo),1}else{if(Wt){let Cs=Oe?Rt?Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0:Rt?Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0;fr(Wt,Cs,Vo)}return 1}}}else if(se){if(Wt){let ln=Ys(W);fr(Wt,Rt?Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class:Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class,ln)}return 2}return 0}function PKr(l,C,E,D){let W=!1;for(let M of l.members){if(eg(M))continue;let se=M.name&&zv(M.name)||zv(M);if(se){let Ee=yg(C,se.escapedName),Ve=yg(E,se.escapedName);if(Ee&&Ve){let Oe=()=>ou(void 0,Z.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2,$c(se),Ys(C),Ys(E));_0(co(Ee),co(Ve),M.name||M,void 0,Oe)||(W=!0)}}}W||_0(C,E,l.name||l,D)}function L_s(l,C){let E=Ou(l,1);if(E.length){let D=E[0].declaration;if(D&&ib(D,2)){let W=kB(l.symbol);eQt(C,W)||fr(C,Z.Cannot_extend_a_class_0_Class_constructor_is_marked_as_private,HN(l.symbol))}}}function V_s(l,C,E){if(!C.name)return 0;let D=Oo(l),W=kp(D),M=KE(W),se=co(D),Ve=xv(l)&&Sa(W),Oe=Ve?.length?KE(qs(Ve),W.thisType):void 0,ot=is(W),Wt=C.parent?Pce(C):ya(C,16);return WKr(l,se,ot,Oe,W,M,Wt,cV(C),eg(C),!1,pf(E))}function Jre(l){return cI(l)&1?l.links.target:l}function W_s(l){return Gt(l.declarations,C=>C.kind===263||C.kind===264)}function P_s(l,C){var E,D,W,M,se;let Ee=Cd(C),Ve=new Map;e:for(let Oe of Ee){let ot=Jre(Oe);if(ot.flags&4194304)continue;let Wt=JM(l,ot.escapedName);if(!Wt)continue;let Rt=Jre(Wt),Qr=V1(ot);if(w.assert(!!Rt,"derived should point to something, even if it is the base class' declaration."),Rt===ot){let ln=kB(l.symbol);if(Qr&64&&(!ln||!ya(ln,64))){for(let Vo of Sa(l)){if(Vo===C)continue;let Hi=JM(Vo,ot.escapedName),Cs=Hi&&Jre(Hi);if(Cs&&Cs!==ot)continue e}let hn=Ys(C),mi=Ys(l),Ti=$c(Oe),ks=Yr((E=Ve.get(ln))==null?void 0:E.missedProperties,Ti);Ve.set(ln,{baseTypeName:hn,typeName:mi,missedProperties:ks})}}else{let ln=V1(Rt);if(Qr&2||ln&2)continue;let hn,mi=ot.flags&98308,Ti=Rt.flags&98308;if(mi&&Ti){if((cI(ot)&6?(D=ot.declarations)!=null&&D.some(Hi=>OKr(Hi,Qr)):(W=ot.declarations)!=null&&W.every(Hi=>OKr(Hi,Qr)))||cI(ot)&262144||Rt.valueDeclaration&&ro(Rt.valueDeclaration))continue;let ks=mi!==4&&Ti===4;if(ks||mi===4&&Ti!==4){let Hi=ks?Z._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property:Z._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor;fr(Sl(Rt.valueDeclaration)||Rt.valueDeclaration,Hi,$c(ot),Ys(C),Ys(l))}else if(Le){let Hi=(M=Rt.declarations)==null?void 0:M.find(Cs=>Cs.kind===172&&!Cs.initializer);if(Hi&&!(Rt.flags&33554432)&&!(Qr&64)&&!(ln&64)&&!((se=Rt.declarations)!=null&&se.some(Cs=>!!(Cs.flags&33554432)))){let Cs=jee(kB(l.symbol)),Ds=Hi.name;if(Hi.exclamationToken||!Cs||!sr(Ds)||!nt||!MKr(Ds,l,Cs)){let jo=Z.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;fr(Sl(Rt.valueDeclaration)||Rt.valueDeclaration,jo,$c(ot),Ys(C))}}}continue}else if(KPt(ot)){if(KPt(Rt)||Rt.flags&4)continue;w.assert(!!(Rt.flags&98304)),hn=Z.Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor}else ot.flags&98304?hn=Z.Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:hn=Z.Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function;fr(Sl(Rt.valueDeclaration)||Rt.valueDeclaration,hn,Ys(C),$c(ot),Ys(l))}}for(let[Oe,ot]of Ve)if(O(ot.missedProperties)===1)rp(Oe)?fr(Oe,Z.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1,qs(ot.missedProperties),ot.baseTypeName):fr(Oe,Z.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2,ot.typeName,qs(ot.missedProperties),ot.baseTypeName);else if(O(ot.missedProperties)>5){let Wt=Ot(ot.missedProperties.slice(0,4),Qr=>`'${Qr}'`).join(", "),Rt=O(ot.missedProperties)-4;rp(Oe)?fr(Oe,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more,ot.baseTypeName,Wt,Rt):fr(Oe,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more,ot.typeName,ot.baseTypeName,Wt,Rt)}else{let Wt=Ot(ot.missedProperties,Rt=>`'${Rt}'`).join(", ");rp(Oe)?fr(Oe,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1,ot.baseTypeName,Wt):fr(Oe,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2,ot.typeName,ot.baseTypeName,Wt)}}function OKr(l,C){return C&64&&(!Hl(l)||!l.initializer)||XI(l.parent)}function O_s(l,C,E){if(!O(C))return E;let D=new Map;X(E,W=>{D.set(W.escapedName,W)});for(let W of C){let M=Cd(KE(W,l.thisType));for(let se of M){let Ee=D.get(se.escapedName);Ee&&se.parent===Ee.parent&&D.delete(se.escapedName)}}return on(D.values())}function Q_s(l,C){let E=Sa(l);if(E.length<2)return!0;let D=new Map;X(OWt(l).declaredProperties,M=>{D.set(M.escapedName,{prop:M,containingType:l})});let W=!0;for(let M of E){let se=Cd(KE(M,l.thisType));for(let Ee of se){let Ve=D.get(Ee.escapedName);if(!Ve)D.set(Ee.escapedName,{prop:Ee,containingType:M});else if(Ve.containingType!==l&&!Jds(Ve.prop,Ee)){W=!1;let ot=Ys(Ve.containingType),Wt=Ys(M),Rt=ou(void 0,Z.Named_property_0_of_types_1_and_2_are_not_identical,$c(Ee),ot,Wt);Rt=ou(Rt,Z.Interface_0_cannot_simultaneously_extend_types_1_and_2,Ys(l),ot,Wt),KA.add(ZS(ls(C),C,Rt))}}}return W}function M_s(l){if(!nt||!It||l.flags&33554432)return;let C=jee(l);for(let E of l.members)if(!(R_(E)&128)&&!eg(E)&&QKr(E)){let D=E.name;if(sr(D)||Gc(D)||kg(D)){let W=co(Oo(E));W.flags&3||Lre(W)||(!C||!MKr(D,W,C))&&fr(E.name,Z.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor,kd(D))}}}function QKr(l){return l.kind===172&&!cV(l)&&!l.exclamationToken&&!l.initializer}function H_s(l,C,E,D,W){for(let M of E)if(M.pos>=D&&M.pos<=W){let se=_e.createPropertyAccessExpression(_e.createThis(),l);GA(se.expression,se),GA(se,M),se.flowNode=M.returnFlowNode;let Ee=fF(se,C,rW(C));if(!Lre(Ee))return!0}return!1}function MKr(l,C,E){let D=kg(l)?_e.createElementAccessExpression(_e.createThis(),l.expression):_e.createPropertyAccessExpression(_e.createThis(),l);GA(D.expression,D),GA(D,E),D.flowNode=E.returnFlowNode;let W=fF(D,C,rW(C));return!Lre(W)}function Y_s(l){ck(l)||vys(l),ZLe(l.typeParameters),u(()=>{xge(l.name,Z.Interface_name_cannot_be_0),Tye(l);let C=Oo(l);GKr(C);let E=qd(C,264);if(l===E){let D=kp(C),W=KE(D);if(Q_s(D,l.name)){for(let M of Sa(D))_0(W,KE(M,D.thisType),l.name,Z.Interface_0_incorrectly_extends_interface_1);qet(D,C)}}rKr(l)}),X(e6(l),C=>{(!lp(C.expression)||Gm(C.expression))&&fr(C.expression,Z.An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments),GOt(C)}),X(l.members,Kg),u(()=>{xOt(l),iW(l)})}function X_s(l){ck(l),xge(l.name,Z.Type_alias_name_cannot_be_0),Tye(l),ZLe(l.typeParameters),l.type.kind===141?(!U8e.has(l.name.escapedText)||O(l.typeParameters)!==1)&&fr(l.type,Z.The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types):(Kg(l.type),iW(l))}function HKr(l){let C=Jo(l);if(!(C.flags&1024)){C.flags|=1024;let E=0,D;for(let W of l.members){let M=J_s(W,E,D);Jo(W).enumMemberValue=M,E=typeof M.value=="number"?M.value+1:void 0,D=W}}}function J_s(l,C,E){if(FX(l.name))fr(l.name,Z.Computed_property_names_are_not_allowed_in_enums);else{let D=j9(l.name);bN(D)&&!T6(D)&&fr(l.name,Z.An_enum_member_cannot_have_a_numeric_name)}if(l.initializer)return U_s(l);if(l.parent.flags&33554432&&!dc(l.parent))return KC(void 0);if(C===void 0)return fr(l.name,Z.Enum_member_must_have_initializer),KC(void 0);if(VE(Ne)&&E?.initializer){let D=fJ(E);typeof D.value=="number"&&!D.resolvedOtherFiles||fr(l.name,Z.Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is_enabled)}return KC(C)}function U_s(l){let C=dc(l.parent),E=l.initializer,D=Lt(E,l);return D.value!==void 0?C&&typeof D.value=="number"&&!isFinite(D.value)?fr(E,isNaN(D.value)?Z.const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:Z.const_enum_member_initializer_was_evaluated_to_a_non_finite_value):VE(Ne)&&typeof D.value=="string"&&!D.isSyntacticallyString&&fr(E,Z._0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is_enabled,`${oo(l.parent.name)}.${j9(l.name)}`):C?fr(E,Z.const_enum_member_initializers_must_be_constant_expressions):l.parent.flags&33554432?fr(E,Z.In_ambient_enum_declarations_member_initializer_must_be_constant_expression):_0(Dl(E),bt,E,Z.Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values),D}function YKr(l,C){let E=ZI(l,111551,!0);if(!E)return KC(void 0);if(l.kind===80){let D=l;if(T6(D.escapedText)&&E===Fre(D.escapedText,111551,void 0))return KC(+D.escapedText,!1)}if(E.flags&8)return C?XKr(l,E,C):fJ(E.valueDeclaration);if(J7(E)){let D=E.valueDeclaration;if(D&&js(D)&&!D.type&&D.initializer&&(!C||D!==C&&aw(D,C))){let W=Lt(D.initializer,D);return C&&ls(C)!==ls(D)?KC(W.value,!1,!0,!0):KC(W.value,W.isSyntacticallyString,W.resolvedOtherFiles,!0)}}return KC(void 0)}function K_s(l,C){let E=l.expression;if(lp(E)&&JA(l.argumentExpression)){let D=ZI(E,111551,!0);if(D&&D.flags&384){let W=Dd(l.argumentExpression.text),M=D.exports.get(W);if(M)return w.assert(ls(M.valueDeclaration)===ls(D.valueDeclaration)),C?XKr(l,M,C):fJ(M.valueDeclaration)}}return KC(void 0)}function XKr(l,C,E){let D=C.valueDeclaration;if(!D||D===E)return fr(l,Z.Property_0_is_used_before_being_assigned,$c(C)),KC(void 0);if(!aw(D,E))return fr(l,Z.A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums),KC(0);let W=fJ(D);return E.parent!==D.parent?KC(W.value,W.isSyntacticallyString,W.resolvedOtherFiles,!0):W}function j_s(l){u(()=>z_s(l))}function z_s(l){ck(l),Rge(l,l.name),Tye(l),l.members.forEach(q_s),HKr(l);let C=Oo(l),E=qd(C,l.kind);if(l===E){if(C.declarations&&C.declarations.length>1){let W=dc(l);X(C.declarations,M=>{iP(M)&&dc(M)!==W&&fr(Sl(M),Z.Enum_declarations_must_all_be_const_or_non_const)})}let D=!1;X(C.declarations,W=>{if(W.kind!==266)return!1;let M=W;if(!M.members.length)return!1;let se=M.members[0];se.initializer||(D?fr(se.name,Z.In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element):D=!0)})}}function q_s(l){Gc(l.name)&&fr(l,Z.An_enum_member_cannot_be_named_with_a_private_identifier),l.initializer&&Dl(l.initializer)}function $_s(l){let C=l.declarations;if(C){for(let E of C)if((E.kind===263||E.kind===262&&GE(E.body))&&!(E.flags&33554432))return E}}function e0s(l,C){let E=w2(l),D=w2(C);return bs(E)?bs(D):bs(D)?!1:E===D}function t0s(l){l.body&&(Kg(l.body),S2(l)||iW(l)),u(C);function C(){var E,D;let W=S2(l),M=l.flags&33554432;W&&!M&&fr(l.name,Z.Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context);let se=Yf(l),Ee=se?Z.An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:Z.A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module;if(LLe(l,Ee))return;ck(l)||!M&&l.name.kind===11&&qi(l.name,Z.Only_ambient_modules_can_use_quoted_names),sr(l.name)&&Rge(l,l.name),Tye(l);let Ve=Oo(l);if(Ve.flags&512&&!M&&K8e(l,gV(Ne))){if(VE(Ne)&&!ls(l).externalModuleIndicator&&fr(l.name,Z.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,Pt),((E=Ve.declarations)==null?void 0:E.length)>1){let Oe=$_s(Ve);Oe&&(ls(l)!==ls(Oe)?fr(l.name,Z.A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged):l.posot.kind===95);Oe&&fr(Oe,Z.A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled)}}if(se)if(KR(l)){if((W||Oo(l).flags&33554432)&&l.body)for(let ot of l.body.statements)KOt(ot,W)}else bs(l.parent)?W?fr(l.name,Z.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations):Ul(N2(l.name))&&fr(l.name,Z.Ambient_module_declaration_cannot_specify_relative_module_name):W?fr(l.name,Z.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations):fr(l.name,Z.Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces)}}function KOt(l,C){switch(l.kind){case 243:for(let D of l.declarationList.declarations)KOt(D,C);break;case 277:case 278:Lh(l,Z.Exports_and_export_assignments_are_not_permitted_in_module_augmentations);break;case 271:case 272:Lh(l,Z.Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module);break;case 208:case 260:let E=l.name;if(fu(E)){for(let D of E.elements)KOt(D,C);break}case 263:case 266:case 262:case 264:case 267:case 265:if(C)return;break}}function r0s(l){switch(l.kind){case 80:return l;case 166:do l=l.left;while(l.kind!==80);return l;case 211:do{if(dN(l.expression)&&!Gc(l.name))return l.name;l=l.expression}while(l.kind!==80);return l}}function $et(l){let C=k5(l);if(!C||Tf(C))return!1;if(!Eu(C))return fr(C,Z.String_literal_expected),!1;let E=l.parent.kind===268&&Yf(l.parent.parent);if(l.parent.kind!==307&&!E)return fr(C,l.kind===278?Z.Export_declarations_are_not_permitted_in_a_namespace:Z.Import_declarations_in_a_namespace_cannot_reference_a_module),!1;if(E&&Ul(C.text)&&!P0e(l))return fr(l,Z.Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name),!1;if(!mm(l)&&l.attributes){let D=l.attributes.token===118?Z.Import_attribute_values_must_be_string_literal_expressions:Z.Import_assertion_values_must_be_string_literal_expressions,W=!1;for(let M of l.attributes.elements)Eu(M.value)||(W=!0,fr(M.value,D));return!W}return!0}function ett(l){var C,E,D,W;let M=Oo(l),se=$m(M);if(se!==en){if(M=FA(M.exportSymbol||M),io(l)&&!(se.flags&111551)&&!Nx(l)){let Oe=M9(l)?l.propertyName||l.name:wf(l)?l.name:l;if(w.assert(l.kind!==280),l.kind===281){let ot=fr(Oe,Z.Types_cannot_appear_in_export_declarations_in_JavaScript_files),Wt=(E=(C=ls(l).symbol)==null?void 0:C.exports)==null?void 0:E.get((l.propertyName||l.name).escapedText);if(Wt===se){let Rt=(D=Wt.declarations)==null?void 0:D.find(kS);Rt&&tg(ot,Js(Rt,Z._0_is_automatically_exported_here,wc(Wt.escapedName)))}}else{w.assert(l.kind!==260);let ot=Si(l,fg(hI,mm)),Wt=(ot&&((W=j8(ot))==null?void 0:W.text))??"...",Rt=wc(sr(Oe)?Oe.escapedText:M.escapedName);fr(Oe,Z._0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation,Rt,`import("${Wt}").${Rt}`)}return}let Ee=zb(se),Ve=(M.flags&1160127?111551:0)|(M.flags&788968?788968:0)|(M.flags&1920?1920:0);if(Ee&Ve){let Oe=l.kind===281?Z.Export_declaration_conflicts_with_exported_declaration_of_0:Z.Import_declaration_conflicts_with_local_declaration_of_0;fr(l,Oe,$c(M))}else l.kind!==281&&Ne.isolatedModules&&!Si(l,Nx)&&M.flags&1160127&&fr(l,Z.Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled,$c(M),Pt);if(VE(Ne)&&!Nx(l)&&!(l.flags&33554432)){let Oe=MN(M),ot=!(Ee&111551);if(ot||Oe)switch(l.kind){case 273:case 276:case 271:{if(Ne.verbatimModuleSyntax){w.assertIsDefined(l.name,"An ImportClause with a symbol should have a name");let Wt=Ne.verbatimModuleSyntax&&D5(l)?Z.An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabled:ot?Z._0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:Z._0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled,Rt=oo(l.kind===276&&l.propertyName||l.name);kP(fr(l,Wt,Rt),ot?void 0:Oe,Rt)}ot&&l.kind===271&&ib(l,32)&&fr(l,Z.Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled,Pt);break}case 281:if(Ne.verbatimModuleSyntax||ls(Oe)!==ls(l)){let Wt=oo(l.propertyName||l.name),Rt=ot?fr(l,Z.Re_exporting_a_type_when_0_is_enabled_requires_using_export_type,Pt):fr(l,Z._0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_enabled,Wt,Pt);kP(Rt,ot?void 0:Oe,Wt);break}}Ne.verbatimModuleSyntax&&l.kind!==271&&!io(l)&&(De===1||ls(l).impliedNodeFormat===1)&&fr(l,Z.ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled)}if(yy(l)){let Oe=jOt(M,l);MB(Oe)&&Oe.declarations&&JG(l,Oe.declarations,Oe.escapedName)}}}function jOt(l,C){if(!(l.flags&2097152)||MB(l)||!XE(l))return l;let E=$m(l);if(E===en)return E;for(;l.flags&2097152;){let D=yet(l);if(D){if(D===E)break;if(D.declarations&&O(D.declarations))if(MB(D)){JG(C,D.declarations,D.escapedName);break}else{if(l===E)break;l=D}}else break}return E}function ttt(l){Rge(l,l.name),ett(l),l.kind===276&&oo(l.propertyName||l.name)==="default"&&CN(Ne)&&De!==4&&(De<5||ls(l).impliedNodeFormat===1)&&Lm(l,131072)}function zOt(l){var C;let E=l.attributes;if(E){let D=C3t(!0);D!==Lc&&_0(We(E),UZe(D,32768),E);let W=D6e(l),M=Nte(E,W?qi:void 0),se=l.attributes.token===118;if(W&&M)return;if((De===199&&l.moduleSpecifier&&tL(l.moduleSpecifier))!==99&&De!==99&&De!==200){let Oe=se?De===199?Z.Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:Z.Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve:De===199?Z.Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:Z.Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve;return qi(E,Oe)}if(DN(l)||(hI(l)?(C=l.importClause)==null?void 0:C.isTypeOnly:l.isTypeOnly))return qi(E,se?Z.Import_attributes_cannot_be_used_with_type_only_imports_or_exports:Z.Import_assertions_cannot_be_used_with_type_only_imports_or_exports);if(M)return qi(E,Z.resolution_mode_can_only_be_set_for_type_only_imports)}}function n0s(l){return ry(sC(l.value))}function i0s(l){if(!LLe(l,io(l)?Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)){if(!ck(l)&&l.modifiers&&Lh(l,Z.An_import_declaration_cannot_have_modifiers),$et(l)){let C=l.importClause;C&&!jys(C)&&(C.name&&ttt(C),C.namedBindings&&(C.namedBindings.kind===274?(ttt(C.namedBindings),De!==4&&(De<5||ls(l).impliedNodeFormat===1)&&CN(Ne)&&Lm(l,65536)):q0(l,l.moduleSpecifier)&&X(C.namedBindings.elements,ttt)))}zOt(l)}}function s0s(l){if(!LLe(l,io(l)?Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)&&(ck(l),D5(l)||$et(l)))if(ttt(l),U7(l,6),l.moduleReference.kind!==283){let C=$m(Oo(l));if(C!==en){let E=zb(C);if(E&111551){let D=sb(l.moduleReference);ZI(D,112575).flags&1920||fr(D,Z.Module_0_is_hidden_by_a_local_declaration_with_the_same_name,kd(D))}E&788968&&xge(l.name,Z.Import_name_cannot_be_0)}l.isTypeOnly&&qi(l,Z.An_import_alias_cannot_use_import_type)}else De>=5&&De!==200&&ls(l).impliedNodeFormat===void 0&&!l.isTypeOnly&&!(l.flags&33554432)&&qi(l,Z.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)}function o0s(l){if(!LLe(l,io(l)?Z.An_export_declaration_can_only_be_used_at_the_top_level_of_a_module:Z.An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)){if(!ck(l)&&Vme(l)&&Lh(l,Z.An_export_declaration_cannot_have_modifiers),a0s(l),!l.moduleSpecifier||$et(l))if(l.exportClause&&!sD(l.exportClause)){X(l.exportClause.elements,c0s);let C=l.parent.kind===268&&Yf(l.parent.parent),E=!C&&l.parent.kind===268&&!l.moduleSpecifier&&l.flags&33554432;l.parent.kind!==307&&!C&&!E&&fr(l,Z.Export_declarations_are_not_permitted_in_a_namespace)}else{let C=q0(l,l.moduleSpecifier);C&&OP(C)?fr(l.moduleSpecifier,Z.Module_0_uses_export_and_cannot_be_used_with_export_Asterisk,$c(C)):l.exportClause&&ett(l.exportClause),De!==4&&(De<5||ls(l).impliedNodeFormat===1)&&(l.exportClause?CN(Ne)&&Lm(l,65536):Lm(l,32768))}zOt(l)}}function a0s(l){var C;return l.isTypeOnly&&((C=l.exportClause)==null?void 0:C.kind)===279?w8r(l.exportClause):!1}function LLe(l,C){let E=l.parent.kind===307||l.parent.kind===268||l.parent.kind===267;return E||Lh(l,C),!E}function c0s(l){if(ett(l),WE(Ne)&&HM(l.propertyName||l.name,!0),l.parent.parent.moduleSpecifier)CN(Ne)&&De!==4&&(De<5||ls(l).impliedNodeFormat===1)&&oo(l.propertyName||l.name)==="default"&&Lm(l,131072);else{let C=l.propertyName||l.name,E=Pi(C,C.escapedText,2998271,void 0,!0);E&&(E===Zt||E===Dr||E.declarations&&bs(J4(E.declarations[0])))?fr(C,Z.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module,oo(C)):U7(l,7)}}function l0s(l){let C=l.isExportEquals?Z.An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration:Z.A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration;if(LLe(l,C))return;let E=l.parent.kind===307?l.parent:l.parent.parent;if(E.kind===267&&!Yf(E)){l.isExportEquals?fr(l,Z.An_export_assignment_cannot_be_used_in_a_namespace):fr(l,Z.A_default_export_can_only_be_used_in_an_ECMAScript_style_module);return}!ck(l)&&Lme(l)&&Lh(l,Z.An_export_assignment_cannot_have_modifiers);let D=IC(l);D&&_0(sC(l.expression),Vc(D),l.expression);let W=!l.isExportEquals&&!(l.flags&33554432)&&Ne.verbatimModuleSyntax&&(De===1||ls(l).impliedNodeFormat===1);if(l.expression.kind===80){let M=l.expression,se=X1(ZI(M,-1,!0,!0,l));if(se){U7(l,3);let Ee=MN(se,111551);if(zb(se)&111551?(sC(M),!W&&!(l.flags&33554432)&&Ne.verbatimModuleSyntax&&Ee&&fr(M,l.isExportEquals?Z.An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:Z.An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration,oo(M))):!W&&!(l.flags&33554432)&&Ne.verbatimModuleSyntax&&fr(M,l.isExportEquals?Z.An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:Z.An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type,oo(M)),!W&&!(l.flags&33554432)&&VE(Ne)&&!(se.flags&111551)){let Ve=zb(se,!1,!0);se.flags&2097152&&Ve&788968&&!(Ve&111551)&&(!Ee||ls(Ee)!==ls(l))?fr(M,l.isExportEquals?Z._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:Z._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,oo(M),Pt):Ee&&ls(Ee)!==ls(l)&&kP(fr(M,l.isExportEquals?Z._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:Z._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,oo(M),Pt),Ee,oo(M))}}else sC(M);WE(Ne)&&HM(M,!0)}else sC(l.expression);W&&fr(l,Z.ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled),JKr(E),l.flags&33554432&&!lp(l.expression)&&qi(l.expression,Z.The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context),l.isExportEquals&&(De>=5&&De!==200&&(l.flags&33554432&&ls(l).impliedNodeFormat===99||!(l.flags&33554432)&&ls(l).impliedNodeFormat!==1)?qi(l,Z.Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead):De===4&&!(l.flags&33554432)&&qi(l,Z.Export_assignment_is_not_supported_when_module_flag_is_system))}function u0s(l){return UC(l.exports,(C,E)=>E!=="export=")}function JKr(l){let C=Oo(l),E=al(C);if(!E.exportsChecked){let D=C.exports.get("export=");if(D&&u0s(C)){let M=XE(D)||D.valueDeclaration;M&&!P0e(M)&&!io(M)&&fr(M,Z.An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements)}let W=CT(C);W&&W.forEach(({declarations:M,flags:se},Ee)=>{if(Ee==="__export"||se&1920)return;let Ve=ft(M,gh(B6i,Am(XI)));if(!(se&524288&&Ve<=2)&&Ve>1&&!rtt(M))for(let Oe of M)CGr(Oe)&&KA.add(Js(Oe,Z.Cannot_redeclare_exported_variable_0,wc(Ee)))}),E.exportsChecked=!0}}function rtt(l){return l&&l.length>1&&l.every(C=>io(C)&&mp(C)&&(H3(C.expression)||dN(C.expression)))}function Kg(l){if(l){let C=ue;ue=l,Q=0,g0s(l),ue=C}}function g0s(l){pee(l)&&X(l.jsDoc,({comment:E,tags:D})=>{UKr(E),X(D,W=>{UKr(W.comment),io(l)&&Kg(W)})});let C=l.kind;if(d)switch(C){case 267:case 263:case 264:case 262:d.throwIfCancellationRequested()}switch(C>=243&&C<=259&&dee(l)&&l.flowNode&&!rLe(l.flowNode)&&qm(Ne.allowUnreachableCode===!1,l,Z.Unreachable_code_detected),C){case 168:return $Ur(l);case 169:return eKr(l);case 172:return nKr(l);case 171:return zms(l);case 185:case 184:case 179:case 180:case 181:return wye(l);case 174:case 173:return qms(l);case 175:return $ms(l);case 176:return ehs(l);case 177:case 178:return sKr(l);case 183:return GOt(l);case 182:return Jms(l);case 186:return ohs(l);case 187:return ahs(l);case 188:return chs(l);case 189:return lhs(l);case 192:case 193:return uhs(l);case 196:case 190:case 191:return Kg(l.type);case 197:return phs(l);case 198:return fhs(l);case 194:return Ihs(l);case 195:return Chs(l);case 203:return mhs(l);case 205:return hhs(l);case 202:return _hs(l);case 328:return Phs(l);case 329:return Whs(l);case 346:case 338:case 340:return Nhs(l);case 345:return Rhs(l);case 344:return Dhs(l);case 324:case 325:case 326:return khs(l);case 341:return Ghs(l);case 348:return Fhs(l);case 317:Zhs(l);case 315:case 314:case 312:case 313:case 322:KKr(l),hu(l,Kg);return;case 318:A0s(l);return;case 309:return Kg(l.type);case 333:case 335:case 334:return Ohs(l);case 350:return xhs(l);case 343:return Lhs(l);case 351:return Vhs(l);case 199:return ghs(l);case 200:return Ahs(l);case 262:return Ths(l);case 241:case 268:return Uet(l);case 243:return s_s(l);case 244:return o_s(l);case 245:return a_s(l);case 246:return u_s(l);case 247:return g_s(l);case 248:return A_s(l);case 249:return p_s(l);case 250:return d_s(l);case 251:case 252:return y_s(l);case 253:return b_s(l);case 254:return E_s(l);case 255:return B_s(l);case 256:return v_s(l);case 257:return S_s(l);case 258:return w_s(l);case 260:return n_s(l);case 208:return i_s(l);case 263:return F_s(l);case 264:return Y_s(l);case 265:return X_s(l);case 266:return j_s(l);case 267:return t0s(l);case 272:return i0s(l);case 271:return s0s(l);case 278:return o0s(l);case 277:return l0s(l);case 242:case 259:IF(l);return;case 282:return rhs(l)}}function UKr(l){Na(l)&&X(l,C=>{U9(C)&&Kg(C)})}function KKr(l){if(!io(l))if(Jxe(l)||gte(l)){let C=vr(Jxe(l)?54:58),E=l.postfix?Z._0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:Z._0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1,D=l.type,W=Vc(D);qi(l,E,C,Ys(gte(l)&&!(W===Vi||W===so)?wa(Yr([W,wn],l.postfix?void 0:ur)):W))}else qi(l,Z.JSDoc_types_can_only_be_used_inside_documentation_comments)}function A0s(l){KKr(l),Kg(l.type);let{parent:C}=l;if(Uc(C)&&Ate(C.parent)){Ta(C.parent.parameters)!==C&&fr(l,Z.A_rest_parameter_must_be_last_in_a_parameter_list);return}sP(C)||fr(l,Z.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);let E=l.parent.parent;if(!LB(E)){fr(l,Z.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);return}let D=fee(E);if(!D)return;let W=SZ(E);(!W||Ta(W.parameters).symbol!==D)&&fr(l,Z.A_rest_parameter_must_be_last_in_a_parameter_list)}function d0s(l){let C=Vc(l.type),{parent:E}=l,D=l.parent.parent;if(sP(l.parent)&&LB(D)){let W=SZ(D),M=VKe(D.parent.parent);if(W||M){let se=zo(M?D.parent.parent.typeExpression.parameters:W.parameters),Ee=fee(D);if(!se||Ee&&se.symbol===Ee&&Dv(se))return V_(C)}}return Uc(E)&&Ate(E.parent)?V_(C):_g(C)}function j7(l){let C=ls(l),E=Jo(C);E.flags&1?w.assert(!E.deferredNodes,"A type-checked file should have no deferred nodes."):(E.deferredNodes||(E.deferredNodes=new Set),E.deferredNodes.add(l))}function p0s(l){let C=Jo(l);C.deferredNodes&&C.deferredNodes.forEach(f0s),C.deferredNodes=void 0}function f0s(l){var C,E;(C=Qi)==null||C.push(Qi.Phase.Check,"checkDeferredNode",{kind:l.kind,pos:l.pos,end:l.end,path:l.tracingPath});let D=ue;switch(ue=l,Q=0,l.kind){case 213:case 214:case 215:case 170:case 286:gJ(l);break;case 218:case 219:case 174:case 173:Ams(l);break;case 177:case 178:sKr(l);break;case 231:G_s(l);break;case 168:Xms(l);break;case 285:hIs(l);break;case 284:yIs(l);break;case 216:case 234:case 217:ZCs(l);break;case 222:Dl(l.expression);break;case 226:c6(l)&&gJ(l);break}ue=D,(E=Qi)==null||E.pop()}function I0s(l){var C,E;(C=Qi)==null||C.push(Qi.Phase.Check,"checkSourceFile",{path:l.path},!0),rs("beforeCheck"),C0s(l),rs("afterCheck"),Sc("Check","beforeCheck","afterCheck"),(E=Qi)==null||E.pop()}function jKr(l,C){if(C)return!1;switch(l){case 0:return!!Ne.noUnusedLocals;case 1:return!!Ne.noUnusedParameters;default:return w.assertNever(l)}}function zKr(l){return U2.get(l.path)||v}function C0s(l){let C=Jo(l);if(!(C.flags&1)){if(q5(l,Ne,n))return;Xys(l),Ur(DM),Ur(BP),Ur(vP),Ur(SP),Ur(D4),X(l.statements,Kg),Kg(l.endOfFileToken),p0s(l),na(l)&&iW(l),u(()=>{!l.isDeclarationFile&&(Ne.noUnusedLocals||Ne.noUnusedParameters)&&IKr(zKr(l),(E,D,W)=>{!UR(E)&&jKr(D,!!(E.flags&33554432))&&KA.add(W)}),l.isDeclarationFile||Yhs()}),na(l)&&JKr(l),DM.length&&(X(DM,Uhs),Ur(DM)),BP.length&&(X(BP,Khs),Ur(BP)),vP.length&&(X(vP,$hs),Ur(vP)),SP.length&&(X(SP,t_s),Ur(SP)),C.flags|=1}}function qKr(l,C){try{return d=C,m0s(l)}finally{d=void 0}}function qOt(){for(let l of c)l();c=[]}function $Ot(l){qOt();let C=u;u=E=>E(),I0s(l),u=C}function m0s(l){if(l){qOt();let C=KA.getGlobalDiagnostics(),E=C.length;$Ot(l);let D=KA.getDiagnostics(l.fileName),W=KA.getGlobalDiagnostics();if(W!==C){let M=Ji(C,W,C6);return vi(M,D)}else if(E===0&&W.length>0)return vi(W,D);return D}return X(n.getSourceFiles(),$Ot),KA.getDiagnostics()}function h0s(){return qOt(),KA.getGlobalDiagnostics()}function _0s(l,C){if(l.flags&67108864)return[];let E=xu(),D=!1;return W(),E.delete("this"),n3t(E);function W(){for(;l;){switch(Nv(l)&&l.locals&&!bs(l)&&se(l.locals,C),l.kind){case 307:if(!hm(l))break;case 267:Ee(Oo(l).exports,C&2623475);break;case 266:se(Oo(l).exports,C&8);break;case 231:l.name&&M(l.symbol,C);case 263:case 264:D||se(JV(Oo(l)),C&788968);break;case 218:l.name&&M(l.symbol,C);break}GRe(l)&&M(jt,C),D=eg(l),l=l.parent}se(kt,C)}function M(Ve,Oe){if(Q5(Ve)&Oe){let ot=Ve.escapedName;E.has(ot)||E.set(ot,Ve)}}function se(Ve,Oe){Oe&&Ve.forEach(ot=>{M(ot,Oe)})}function Ee(Ve,Oe){Oe&&Ve.forEach(ot=>{!qd(ot,281)&&!qd(ot,280)&&ot.escapedName!=="default"&&M(ot,Oe)})}}function y0s(l){return l.kind===80&&$5(l.parent)&&Sl(l.parent)===l}function $Kr(l){for(;l.parent.kind===166;)l=l.parent;return l.parent.kind===183}function b0s(l){for(;l.parent.kind===211;)l=l.parent;return l.parent.kind===233}function e8r(l,C){let E,D=Km(l);for(;D&&!(E=C(D));)D=Km(D);return E}function E0s(l){return!!Si(l,C=>Df(C)&&GE(C.body)||Hl(C)?!0:va(C)||pd(C)?"quit":!1)}function eQt(l,C){return!!e8r(l,E=>E===C)}function B0s(l){for(;l.parent.kind===166;)l=l.parent;if(l.parent.kind===271)return l.parent.moduleReference===l?l.parent:void 0;if(l.parent.kind===277)return l.parent.expression===l?l.parent:void 0}function ntt(l){return B0s(l)!==void 0}function v0s(l){switch(mI(l.parent.parent)){case 1:case 3:return q2(l.parent);case 5:if(fo(l.parent)&&Y5(l.parent)===l)return;case 4:case 2:return Oo(l.parent.parent)}}function S0s(l){let C=l.parent;for(;c0(C);)l=C,C=C.parent;if(C&&C.kind===205&&C.qualifier===l)return C}function w0s(l){if(l.expression.kind===110){let C=n0(l,!1,!1);if(eu(C)){let E=IJr(C);if(E){let D=oO(E,void 0),W=mJr(E,D);return W&&!Sd(W)}}}}function t8r(l){if(tT(l))return q2(l.parent);if(io(l)&&l.parent.kind===211&&l.parent===l.parent.parent.left&&!Gc(l)&&!oP(l)&&!w0s(l.parent)){let C=v0s(l);if(C)return C}if(l.parent.kind===277&&lp(l)){let C=ZI(l,2998271,!0);if(C&&C!==en)return C}else if(T_(l)&&ntt(l)){let C=bG(l,271);return w.assert(C!==void 0),T7(l,!0)}if(T_(l)){let C=S0s(l);if(C){Vc(C);let E=Jo(l).resolvedSymbol;return E===en?void 0:E}}for(;yDe(l);)l=l.parent;if(b0s(l)){let C=0;l.parent.kind===233?(C=VS(l)?788968:111551,Qce(l.parent)&&(C|=111551)):C=1920,C|=2097152;let E=lp(l)?ZI(l,C,!0):void 0;if(E)return E}if(l.parent.kind===341)return fee(l.parent);if(l.parent.kind===168&&l.parent.parent.kind===345){w.assert(!io(l));let C=KRe(l.parent);return C&&C.symbol}if(DB(l)){if(Tf(l))return;let C=Si(l,fg(U9,Hle,oP)),E=C?901119:111551;if(l.kind===80){if(WX(l)&&K7(l)){let W=Eet(l.parent);return W===en?void 0:W}let D=ZI(l,E,!0,!0,SZ(l));if(!D&&C){let W=Si(l,fg(va,XI));if(W)return VLe(l,!0,Oo(W))}if(D&&C){let W=tV(l);if(W&&yV(W)&&W===D.valueDeclaration)return ZI(l,E,!0,!0,ls(W))||D}return D}else{if(Gc(l))return wet(l);if(l.kind===211||l.kind===166){let D=Jo(l);return D.resolvedSymbol?D.resolvedSymbol:(l.kind===211?(vet(l,0),D.resolvedSymbol||(D.resolvedSymbol=r8r(sC(l.expression),dL(l.name)))):YJr(l,0),!D.resolvedSymbol&&C&&c0(l)?VLe(l):D.resolvedSymbol)}else if(oP(l))return VLe(l)}}else if($Kr(l)){let C=l.parent.kind===183?788968:1920,E=ZI(l,C,!1,!0);return E&&E!==en?E:E$e(l)}if(l.parent.kind===182)return ZI(l,1)}function r8r(l,C){let E=r3t(l,C);if(E.length&&l.members){let D=_$e(bT(l).members);if(E===ty(l))return D;if(D){let W=al(D),M=tr(E,Ee=>Ee.declaration),se=Ot(M,od).join(",");if(W.filteredIndexSymbolCache||(W.filteredIndexSymbolCache=new Map),W.filteredIndexSymbolCache.has(se))return W.filteredIndexSymbolCache.get(se);{let Ee=wA(131072,"__index");return Ee.declarations=tr(E,Ve=>Ve.declaration),Ee.parent=l.aliasSymbol?l.aliasSymbol:l.symbol?l.symbol:zv(Ee.declarations[0].parent),W.filteredIndexSymbolCache.set(se,Ee),Ee}}}}function VLe(l,C,E){if(T_(l)){let se=ZI(l,901119,C,!0,SZ(l));if(!se&&sr(l)&&E&&(se=FA(L_(Y1(E),l.escapedText,901119))),se)return se}let D=sr(l)?E:VLe(l.left,C,E),W=sr(l)?l.escapedText:l.right.escapedText;if(D){let M=D.flags&111551&&yg(co(D),"prototype"),se=M?co(M):kp(D);return yg(se,W)}}function zv(l,C){if(Fc(l))return hm(l)?FA(l.symbol):void 0;let{parent:E}=l,D=E.parent;if(!(l.flags&67108864)){if(mGr(l)){let W=Oo(E);return M9(l.parent)&&l.parent.propertyName===l?yet(W):W}else if(Cee(l))return Oo(E.parent);if(l.kind===80){if(ntt(l))return t8r(l);if(E.kind===208&&D.kind===206&&l===E.propertyName){let W=z7(D),M=yg(W,l.escapedText);if(M)return M}else if(SN(E)&&E.name===l)return E.keywordToken===105&&oo(l)==="target"?COt(E).symbol:E.keywordToken===102&&oo(l)==="meta"?eXr().members.get("meta"):void 0}switch(l.kind){case 80:case 81:case 211:case 166:if(!aV(l))return t8r(l);case 110:let W=n0(l,!1,!1);if(eu(W)){let Ee=rB(W);if(Ee.thisParameter)return Ee.thisParameter}if(mce(l))return Dl(l).symbol;case 197:return k$e(l).symbol;case 108:return Dl(l).symbol;case 137:let M=l.parent;return M&&M.kind===176?M.parent.symbol:void 0;case 11:case 15:if(BZ(l.parent.parent)&&M8(l.parent.parent)===l||(l.parent.kind===272||l.parent.kind===278)&&l.parent.moduleSpecifier===l||io(l)&&DN(l.parent)&&l.parent.moduleSpecifier===l||io(l)&&H0(l.parent,!1)||fC(l.parent)||sd(l.parent)&&n_(l.parent.parent)&&l.parent.parent.argument===l.parent)return q0(l,l,C);if(lu(E)&&Y3(E)&&E.arguments[1]===l)return Oo(E);case 9:let se=_A(E)?E.argumentExpression===l?u_(E.expression):void 0:sd(E)&&hs(D)?Vc(D.objectType):void 0;return se&&yg(se,Dd(l.text));case 90:case 100:case 39:case 86:return q2(l.parent);case 205:return n_(l)?zv(l.argument.literal,C):void 0;case 95:return rf(l.parent)?w.checkDefined(l.parent.symbol):void 0;case 102:case 105:return SN(l.parent)?TUr(l.parent).symbol:void 0;case 104:if(ro(l.parent)){let Ee=u_(l.parent.right),Ve=wOt(Ee);return Ve?.symbol??Ee.symbol}return;case 236:return Dl(l).symbol;case 295:if(WX(l)&&K7(l)){let Ee=Eet(l.parent);return Ee===en?void 0:Ee}default:return}}}function T0s(l){if(sr(l)&&fo(l.parent)&&l.parent.name===l){let C=dL(l),E=u_(l.parent.expression),D=E.flags&1048576?E.types:[E];return Fr(D,W=>Gt(ty(W),M=>Z7(C,M.keyType)))}}function N0s(l){if(l&&l.kind===304)return ZI(l.name,2208703)}function R0s(l){return l0(l)?l.parent.parent.moduleSpecifier?FP(l.parent.parent,l):ZI(l.propertyName||l.name,2998271):ZI(l,2998271)}function z7(l){if(Fc(l)&&!hm(l)||l.flags&67108864)return cr;let C=Mme(l),E=C&&yC(Oo(C.class));if(VS(l)){let D=Vc(l);return E?KE(D,E.thisType):D}if(DB(l))return tQt(l);if(E&&!C.isImplements){let D=$i(Sa(E));return D?KE(D,E.thisType):cr}if($5(l)){let D=Oo(l);return kp(D)}if(y0s(l)){let D=zv(l);return D?kp(D):cr}if(hl(l))return aA(l,!0,0)||cr;if(xC(l)){let D=Oo(l);return D?co(D):cr}if(mGr(l)){let D=zv(l);return D?co(D):cr}if(fu(l))return aA(l.parent,!0,0)||cr;if(ntt(l)){let D=zv(l);if(D){let W=kp(D);return QA(W)?co(D):W}}return SN(l.parent)&&l.parent.keywordToken===l.kind?TUr(l.parent):A4(l)?C3t(!1):cr}function itt(l){if(w.assert(l.kind===210||l.kind===209),l.parent.kind===250){let W=GLe(l.parent);return dJ(l,W||cr)}if(l.parent.kind===226){let W=u_(l.parent.right);return dJ(l,W||cr)}if(l.parent.kind===303){let W=ps(l.parent.parent,ru),M=itt(W)||cr,se=P3(W.properties,l.parent);return MUr(W,M,se)}let C=ps(l.parent,Cf),E=itt(C)||cr,D=CL(65,E,wn,l.parent)||cr;return HUr(C,E,C.elements.indexOf(l),D)}function D0s(l){let C=itt(ps(l.parent.parent,X9));return C&&yg(C,l.escapedText)}function tQt(l){return a6(l)&&(l=l.parent),ry(u_(l))}function n8r(l){let C=q2(l.parent);return eg(l)?co(C):kp(C)}function i8r(l){let C=l.name;switch(C.kind){case 80:return fb(oo(C));case 9:case 11:return fb(C.text);case 167:let E=jN(C);return l_(E,12288)?E:Jt;default:return w.fail("Unsupported property name.")}}function rQt(l){l=ey(l);let C=xu(Cd(l)),E=Ou(l,0).length?H2:Ou(l,1).length?qt:void 0;return E&&X(Cd(E),D=>{C.has(D.escapedName)||C.set(D.escapedName,D)}),PV(C)}function stt(l){return Ou(l,0).length!==0||Ou(l,1).length!==0}function s8r(l){let C=x0s(l);return C?Fr(C,s8r):[l]}function x0s(l){if(cI(l)&6)return tr(al(l).containingType.types,C=>yg(C,l.escapedName));if(l.flags&33554432){let{links:{leftSpread:C,rightSpread:E,syntheticOrigin:D}}=l;return C?[C,E]:D?[D]:Dm(k0s(l))}}function k0s(l){let C,E=l;for(;E=al(E).target;)C=E;return C}function G0s(l){if(Cp(l))return!1;let C=zc(l,sr);if(!C)return!1;let E=C.parent;return E?!((fo(E)||jC(E))&&E.name===C)&&Zye(C)===jt:!1}function F0s(l){return BX(l.parent)&&l===l.parent.name}function Z0s(l,C){var E;let D=zc(l,sr);if(D){let W=Zye(D,F0s(D));if(W){if(W.flags&1048576){let se=FA(W.exportSymbol);if(!C&&se.flags&944&&!(se.flags&3))return;W=se}let M=a_(W);if(M){if(M.flags&512&&((E=M.valueDeclaration)==null?void 0:E.kind)===307){let se=M.valueDeclaration,Ee=ls(D);return se!==Ee?void 0:se}return Si(D.parent,se=>BX(se)&&Oo(se)===M)}}}}function L0s(l){let C=ep(l);if(C)return C;let E=zc(l,sr);if(E){let D=$0s(E);if(QN(D,111551)&&!MN(D,111551))return XE(D)}}function V0s(l){return l.valueDeclaration&&hl(l.valueDeclaration)&&IA(l.valueDeclaration).parent.kind===299}function o8r(l){if(l.flags&418&&l.valueDeclaration&&!Fc(l.valueDeclaration)){let C=al(l);if(C.isDeclarationWithCollidingName===void 0){let E=w2(l.valueDeclaration);if(ece(E)||V0s(l))if(Pi(E.parent,l.escapedName,111551,void 0,!1))C.isDeclarationWithCollidingName=!0;else if(nQt(l.valueDeclaration,16384)){let D=nQt(l.valueDeclaration,32768),W=YR(E,!1),M=E.kind===241&&YR(E.parent,!1);C.isDeclarationWithCollidingName=!k8(E)&&(!D||!W&&!M)}else C.isDeclarationWithCollidingName=!1}return C.isDeclarationWithCollidingName}return!1}function W0s(l){if(!Cp(l)){let C=zc(l,sr);if(C){let E=Zye(C);if(E&&o8r(E))return E.valueDeclaration}}}function P0s(l){let C=zc(l,xC);if(C){let E=Oo(C);if(E)return o8r(E)}return!1}function a8r(l){switch(w.assert(Vr),l.kind){case 271:return ott(Oo(l));case 273:case 274:case 276:case 281:let C=Oo(l);return!!C&&ott(C,!0);case 278:let E=l.exportClause;return!!E&&(sD(E)||lr(E.elements,a8r));case 277:return l.expression&&l.expression.kind===80?ott(Oo(l),!0):!0}return!1}function O0s(l){let C=zc(l,mm);return C===void 0||C.parent.kind!==307||!D5(C)?!1:ott(Oo(C))&&C.moduleReference&&!Tf(C.moduleReference)}function ott(l,C){if(!l)return!1;let E=ls(l.valueDeclaration),D=E&&Oo(E);pb(D);let W=X1($m(l));return W===en?!C||!MN(l):!!(zb(l,C,!0)&111551)&&(gV(Ne)||!Fye(W))}function Fye(l){return SOt(l)||!!l.constEnumOnlyModule}function c8r(l,C){if(w.assert(Vr),lo(l)){let E=Oo(l),D=E&&al(E);if(D?.referenced)return!0;let W=al(E).aliasTarget;if(W&&R_(l)&32&&zb(W)&111551&&(gV(Ne)||!Fye(W)))return!0}return C?!!hu(l,E=>c8r(E,C)):!1}function l8r(l){if(GE(l.body)){if(Rv(l)||xh(l))return!1;let C=Oo(l),E=UM(C);return E.length>1||E.length===1&&E[0].declaration!==l}return!1}function Q0s(l){let C=ctt(l);if(!C)return!1;let E=Vc(C);return Lre(E)}function att(l){return(M0s(l)||H0s(l))&&!Q0s(l)}function M0s(l){return!!nt&&!wZe(l)&&!LB(l)&&!!l.initializer&&!ya(l,31)}function H0s(l){return nt&&wZe(l)&&(LB(l)||!l.initializer)&&ya(l,31)}function u8r(l){let C=zc(l,D=>hp(D)||js(D));if(!C)return!1;let E;if(js(C)){if(C.type||!io(C)&&!Lye(C))return!1;let D=J8(C);if(!D||!v2(D))return!1;E=Oo(D)}else E=Oo(C);return!E||!(E.flags&16|3)?!1:!!UC(Y1(E),D=>D.flags&111551&&eM(D.valueDeclaration))}function Y0s(l){let C=zc(l,hp);if(!C)return v;let E=Oo(C);return E&&Cd(co(E))||v}function Ure(l){var C;let E=l.id||0;return E<0||E>=Yg.length?0:((C=Yg[E])==null?void 0:C.flags)||0}function nQt(l,C){return X0s(l,C),!!(Ure(l)&C)}function X0s(l,C){if(!Ne.noCheck&&Jee(ls(l),Ne)||Jo(l).calculatedFlags&C)return;switch(C){case 16:case 32:return se(l);case 128:case 256:case 2097152:return M(l);case 512:case 8192:case 65536:case 262144:return Ve(l);case 536870912:return ot(l);case 4096:case 32768:case 16384:return Rt(l);default:return w.assertNever(C,`Unhandled node check flag calculation: ${w.formatNodeCheckFlags(C)}`)}function D(ln,hn){let mi=hn(ln,ln.parent);if(mi!=="skip")return mi||Q6(ln,hn)}function W(ln){let hn=Jo(ln);if(hn.calculatedFlags&C)return"skip";hn.calculatedFlags|=2097536,se(ln)}function M(ln){D(ln,W)}function se(ln){let hn=Jo(ln);hn.calculatedFlags|=48,ln.kind===108&&fet(ln)}function Ee(ln){let hn=Jo(ln);if(hn.calculatedFlags&C)return"skip";hn.calculatedFlags|=336384,ot(ln)}function Ve(ln){D(ln,Ee)}function Oe(ln){return DB(ln)||F_(ln.parent)&&(ln.parent.objectAssignmentInitializer??ln.parent.name)===ln}function ot(ln){let hn=Jo(ln);if(hn.calculatedFlags|=536920064,sr(ln)&&Oe(ln)&&!(fo(ln.parent)&&ln.parent.name===ln)){let mi=Sy(ln);mi&&mi!==en&&AJr(ln,mi)}}function Wt(ln){let hn=Jo(ln);if(hn.calculatedFlags&C)return"skip";hn.calculatedFlags|=53248,Qr(ln)}function Rt(ln){let hn=w2(tT(ln)?ln.parent:ln);D(hn,Wt)}function Qr(ln){ot(ln),kg(ln)&&jN(ln),Gc(ln)&&nC(ln.parent)&&Qet(ln.parent)}}function fJ(l){return HKr(l.parent),Jo(l).enumMemberValue??KC(void 0)}function g8r(l){switch(l.kind){case 306:case 211:case 212:return!0}return!1}function iQt(l){if(l.kind===306)return fJ(l).value;Jo(l).resolvedSymbol||sC(l);let C=Jo(l).resolvedSymbol||(lp(l)?ZI(l,111551,!0):void 0);if(C&&C.flags&8){let E=C.valueDeclaration;if(dc(E.parent))return fJ(E).value}}function sQt(l){return!!(l.flags&524288)&&Ou(l,0).length>0}function J0s(l,C){var E;let D=zc(l,T_);if(!D||C&&(C=zc(C),!C))return 0;let W=!1;if(c0(D)){let ot=ZI(sb(D),111551,!0,!0,C);W=!!((E=ot?.declarations)!=null&&E.every(Nx))}let M=ZI(D,111551,!0,!0,C),se=M&&M.flags&2097152?$m(M):M;W||(W=!!(M&&MN(M,111551)));let Ee=ZI(D,788968,!0,!0,C),Ve=Ee&&Ee.flags&2097152?$m(Ee):Ee;if(M||W||(W=!!(Ee&&MN(Ee,788968))),se&&se===Ve){let ot=m3t(!1);if(ot&&se===ot)return 9;let Wt=co(se);if(Wt&&J0e(Wt))return W?10:1}if(!Ve)return W?11:0;let Oe=kp(Ve);return QA(Oe)?W?11:0:Oe.flags&3?11:l_(Oe,245760)?2:l_(Oe,528)?6:l_(Oe,296)?3:l_(Oe,2112)?4:l_(Oe,402653316)?5:cA(Oe)?7:l_(Oe,12288)?8:sQt(Oe)?10:jB(Oe)?7:11}function U0s(l,C,E,D){let W=zc(l,Ace);if(!W)return _e.createToken(133);let M=Oo(W),se=M&&!(M.flags&133120)?rO(co(M)):cr;return Kt.serializeTypeForDeclaration(W,se,M,C,E|1024,D)}function K0s(l){return eu(l)||rf(l)||R5(l)}function WLe(l){l=zc(l,fX);let C=l.kind===178?177:178,E=qd(Oo(l),C),D=E&&E.pos{if(!C)C=D.expression;else return C=void 0,!0}):C=E}return C}function j0s(l,C,E,D){let W=zc(l,eu);return W?Kt.serializeReturnTypeForSignature(rB(W),C,E|1024,D):_e.createToken(133)}function z0s(l,C,E,D){let W=zc(l,tn);if(!W)return _e.createToken(133);let M=tE(tQt(W));return Kt.expressionOrTypeToTypeNode(W,M,void 0,C,E|1024,D)}function q0s(l){return kt.has(Dd(l))}function Zye(l,C){let E=Jo(l).resolvedSymbol;if(E)return E;let D=l;if(C){let W=l.parent;xC(W)&&l===W.name&&(D=J4(W))}return Pi(D,l.escapedText,3257279,void 0,!0)}function $0s(l){let C=Jo(l).resolvedSymbol;return C&&C!==en?C:Pi(l,l.escapedText,3257279,void 0,!0,void 0)}function eys(l){if(!Cp(l)){let C=zc(l,sr);if(C){let E=Zye(C);if(E)return X1(E).valueDeclaration}}}function tys(l){if(!Cp(l)){let C=zc(l,sr);if(C){let E=Zye(C);if(E)return Gt(X1(E).declarations,D=>{switch(D.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 rys(l){return Iu(l)||js(l)&&Lye(l)?qM(co(Oo(l))):!1}function nys(l,C,E){let D=l.flags&1056?Kt.symbolToExpression(l.symbol,111551,C,void 0,E):l===Qn?_e.createTrue():l===dn&&_e.createFalse();if(D)return D;let W=l.value;return typeof W=="object"?_e.createBigIntLiteral(W):typeof W=="string"?_e.createStringLiteral(W):W<0?_e.createPrefixUnaryExpression(41,_e.createNumericLiteral(-W)):_e.createNumericLiteral(W)}function iys(l,C){let E=co(Oo(l));return nys(E,l,C)}function p8r(l){return l?(NP(l),ls(l).localJsxFactory||XG):XG}function oQt(l){if(l){let C=ls(l);if(C){if(C.localJsxFragmentFactory)return C.localJsxFragmentFactory;let E=C.pragmas.get("jsxfrag"),D=Na(E)?E[0]:E;if(D)return C.localJsxFragmentFactory=H6(D.arguments.factory,Me),C.localJsxFragmentFactory}}if(Ne.jsxFragmentFactory)return H6(Ne.jsxFragmentFactory,Me)}function ctt(l){let C=IC(l);if(C)return C;if(l.kind===169&&l.parent.kind===178){let E=WLe(l.parent).getAccessor;if(E)return nb(E)}}function sys(l){let C=nb(l);if(C)return C;if(l.kind===177){let E=WLe(l).setAccessor;if(E){let D=qX(E);if(D)return IC(D)}}}function oys(){return{getReferencedExportContainer:Z0s,getReferencedImportDeclaration:L0s,getReferencedDeclarationWithCollidingName:W0s,isDeclarationWithCollidingName:P0s,isValueAliasDeclaration:C=>{let E=zc(C);return E&&Vr?a8r(E):!0},hasGlobalName:q0s,isReferencedAliasDeclaration:(C,E)=>{let D=zc(C);return D&&Vr?c8r(D,E):!0},hasNodeCheckFlag:(C,E)=>{let D=zc(C);return D?nQt(D,E):!1},isTopLevelValueImportEqualsWithEntityName:O0s,isDeclarationVisible:iF,isImplementationOfOverload:l8r,requiresAddingImplicitUndefined:att,isExpandoFunctionDeclaration:u8r,getPropertiesOfContainerFunction:Y0s,createTypeOfDeclaration:U0s,createReturnTypeOfSignatureDeclaration:j0s,createTypeOfExpression:z0s,createLiteralConstValue:iys,isSymbolAccessible:mT,isEntityNameVisible:OV,getConstantValue:C=>{let E=zc(C,g8r);return E?iQt(E):void 0},getEnumMemberValue:C=>{let E=zc(C,yV);return E?fJ(E):void 0},collectLinkedAliases:HM,markLinkedReferences:C=>{let E=zc(C);return E&&U7(E,0)},getReferencedValueDeclaration:eys,getReferencedValueDeclarations:tys,getTypeReferenceSerializationKind:J0s,isOptionalParameter:wZe,isArgumentsLocalBinding:G0s,getExternalModuleFileFromDeclaration:C=>{let E=zc(C,cce);return E&&aQt(E)},isLiteralConstDeclaration:rys,isLateBound:C=>{let E=zc(C,xC),D=E&&Oo(E);return!!(D&&cI(D)&4096)},getJsxFactoryEntity:p8r,getJsxFragmentFactoryEntity:oQt,isBindingCapturedByNode:(C,E)=>{let D=zc(C),W=zc(E);return!!D&&!!W&&(js(W)||hl(W))&&vfs(D,W)},getDeclarationStatementsForSourceFile:(C,E,D)=>{let W=zc(C);w.assert(W&&W.kind===307,"Non-sourcefile node passed into getDeclarationsForSourceFile");let M=Oo(C);return M?(pb(M),M.exports?Kt.symbolTableToDeclarationStatements(M.exports,C,E,D):[]):C.locals?Kt.symbolTableToDeclarationStatements(C.locals,C,E,D):[]},isImportRequiredByAugmentation:l,isDefinitelyReferenceToGlobalSymbolObject:h7};function l(C){let E=ls(C);if(!E.symbol)return!1;let D=aQt(C);if(!D||D===E)return!1;let W=CT(E.symbol);for(let M of on(W.values()))if(M.mergeId){let se=FA(M);if(se.declarations){for(let Ee of se.declarations)if(ls(Ee)===D)return!0}}return!1}}function aQt(l){let C=l.kind===267?$s(l.name,Eu):k5(l),E=O4(C,C,void 0);if(E)return qd(E,307)}function ays(){for(let C of n.getSourceFiles())RDt(C,Ne);qC=new Map;let l;for(let C of n.getSourceFiles())if(!C.redirectInfo){if(!na(C)){let E=C.locals.get("globalThis");if(E?.declarations)for(let D of E.declarations)KA.add(Js(D,Z.Declaration_name_conflicts_with_built_in_global_identifier_0,"globalThis"));M1(kt,C.locals)}C.jsGlobalAugmentations&&M1(kt,C.jsGlobalAugmentations),C.patternAmbientModules&&C.patternAmbientModules.length&&(Zm=vi(Zm,C.patternAmbientModules)),C.moduleAugmentations.length&&(l||(l=[])).push(C.moduleAugmentations),C.symbol&&C.symbol.globalExports&&C.symbol.globalExports.forEach((D,W)=>{kt.has(W)||kt.set(W,D)})}if(l)for(let C of l)for(let E of C)S2(E.parent)&&qZ(E);if($Z(),al(Zt).type=Pe,al(jt).type=bC("IArguments",0,!0),al(en).type=cr,al(Dr).type=J1(16,Dr),Fn=bC("Array",1,!0),FI=bC("Object",0,!0),$C=bC("Function",0,!0),H2=it&&bC("CallableFunction",0,!0)||$C,qt=it&&bC("NewableFunction",0,!0)||$C,Rl=bC("String",0,!0),SA=bC("Number",0,!0),OA=bC("Boolean",0,!0),JI=bC("RegExp",0,!0),np=V_(Mt),Xd=V_(_r),Xd===Lc&&(Xd=qn(void 0,Be,v,v,v)),Bs=oXr("ReadonlyArray",1)||Fn,_C=Bs?eye(Bs,[Mt]):np,Em=oXr("ThisType",1),l)for(let C of l)for(let E of C)S2(E.parent)||qZ(E);qC.forEach(({firstFile:C,secondFile:E,conflictingSymbols:D})=>{if(D.size<8)D.forEach(({isBlockScoped:W,firstFileLocations:M,secondFileLocations:se},Ee)=>{let Ve=W?Z.Cannot_redeclare_block_scoped_variable_0:Z.Duplicate_identifier_0;for(let Oe of M)xP(Oe,Ve,Ee,se);for(let Oe of se)xP(Oe,Ve,Ee,M)});else{let W=on(D.keys()).join(", ");KA.add(tg(Js(C,Z.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0,W),Js(E,Z.Conflicts_are_in_this_file))),KA.add(tg(Js(E,Z.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0,W),Js(C,Z.Conflicts_are_in_this_file)))}}),qC=void 0}function Lm(l,C){if(Ne.importHelpers){let E=ls(l);if(K9(E,Ne)&&!(l.flags&33554432)){let D=lys(E,l);if(D!==en){let W=al(D);if(W.requestedExternalEmitHelpers??(W.requestedExternalEmitHelpers=0),(W.requestedExternalEmitHelpers&C)!==C){let M=C&~W.requestedExternalEmitHelpers;for(let se=1;se<=16777216;se<<=1)if(M&se)for(let Ee of cys(se)){let Ve=UI(L_(CT(D),Dd(Ee),111551));Ve?se&524288?lr(UM(Ve),Oe=>nE(Oe)>3)||fr(l,Z.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,Dx,Ee,4):se&1048576?lr(UM(Ve),Oe=>nE(Oe)>4)||fr(l,Z.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,Dx,Ee,5):se&1024&&(lr(UM(Ve),Oe=>nE(Oe)>2)||fr(l,Z.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,Dx,Ee,3)):fr(l,Z.This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0,Dx,Ee)}}W.requestedExternalEmitHelpers|=C}}}}function cys(l){switch(l){case 1:return["__extends"];case 2:return["__assign"];case 4:return["__rest"];case 8:return lt?["__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 w.fail("Unrecognized helper")}}function lys(l,C){let E=Jo(l);return E.externalHelpersModule||(E.externalHelpersModule=WM(ibs(l),Dx,Z.This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found,C)||en),E.externalHelpersModule}function ck(l){var C;let E=Ays(l)||uys(l);if(E!==void 0)return E;if(Uc(l)&&oV(l))return Lh(l,Z.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters);let D=Dp(l)?l.declarationList.flags&7:0,W,M,se,Ee,Ve,Oe=0,ot=!1,Wt=!1;for(let Rt of l.modifiers)if(FC(Rt)){if(eee(lt,l,l.parent,l.parent.parent)){if(lt&&(l.kind===177||l.kind===178)){let Qr=WLe(l);if(LE(Qr.firstAccessor)&&l===Qr.secondAccessor)return Lh(l,Z.Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name)}}else return l.kind===174&&!GE(l.body)?Lh(l,Z.A_decorator_can_only_decorate_a_method_implementation_not_an_overload):Lh(l,Z.Decorators_are_not_valid_here);if(Oe&-34849)return qi(Rt,Z.Decorators_are_not_valid_here);if(Wt&&Oe&98303){w.assertIsDefined(Ve);let Qr=ls(Rt);return sW(Qr)?!1:(tg(fr(Rt,Z.Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export),Js(Ve,Z.Decorator_used_before_export_here)),!0)}Oe|=32768,Oe&98303?Oe&32&&(ot=!0):Wt=!0,Ve??(Ve=Rt)}else{if(Rt.kind!==148){if(l.kind===171||l.kind===173)return qi(Rt,Z._0_modifier_cannot_appear_on_a_type_member,vr(Rt.kind));if(l.kind===181&&(Rt.kind!==126||!va(l.parent)))return qi(Rt,Z._0_modifier_cannot_appear_on_an_index_signature,vr(Rt.kind))}if(Rt.kind!==103&&Rt.kind!==147&&Rt.kind!==87&&l.kind===168)return qi(Rt,Z._0_modifier_cannot_appear_on_a_type_parameter,vr(Rt.kind));switch(Rt.kind){case 87:{if(l.kind!==266&&l.kind!==168)return qi(l,Z.A_class_member_cannot_have_the_0_keyword,vr(87));let hn=Lv(l.parent)&&wZ(l.parent)||l.parent;if(l.kind===168&&!(pd(hn)||va(hn)||H(hn)||Y(hn)||mV(hn)||A(hn)||zS(hn)))return qi(Rt,Z._0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class,vr(Rt.kind));break}case 164:if(Oe&16)return qi(Rt,Z._0_modifier_already_seen,"override");if(Oe&128)return qi(Rt,Z._0_modifier_cannot_be_used_with_1_modifier,"override","declare");if(Oe&8)return qi(Rt,Z._0_modifier_must_precede_1_modifier,"override","readonly");if(Oe&512)return qi(Rt,Z._0_modifier_must_precede_1_modifier,"override","accessor");if(Oe&1024)return qi(Rt,Z._0_modifier_must_precede_1_modifier,"override","async");Oe|=16,Ee=Rt;break;case 125:case 124:case 123:let Qr=sge(P5(Rt.kind));if(Oe&7)return qi(Rt,Z.Accessibility_modifier_already_seen);if(Oe&16)return qi(Rt,Z._0_modifier_must_precede_1_modifier,Qr,"override");if(Oe&256)return qi(Rt,Z._0_modifier_must_precede_1_modifier,Qr,"static");if(Oe&512)return qi(Rt,Z._0_modifier_must_precede_1_modifier,Qr,"accessor");if(Oe&8)return qi(Rt,Z._0_modifier_must_precede_1_modifier,Qr,"readonly");if(Oe&1024)return qi(Rt,Z._0_modifier_must_precede_1_modifier,Qr,"async");if(l.parent.kind===268||l.parent.kind===307)return qi(Rt,Z._0_modifier_cannot_appear_on_a_module_or_namespace_element,Qr);if(Oe&64)return Rt.kind===123?qi(Rt,Z._0_modifier_cannot_be_used_with_1_modifier,Qr,"abstract"):qi(Rt,Z._0_modifier_must_precede_1_modifier,Qr,"abstract");if(Dh(l))return qi(Rt,Z.An_accessibility_modifier_cannot_be_used_with_a_private_identifier);Oe|=P5(Rt.kind);break;case 126:if(Oe&256)return qi(Rt,Z._0_modifier_already_seen,"static");if(Oe&8)return qi(Rt,Z._0_modifier_must_precede_1_modifier,"static","readonly");if(Oe&1024)return qi(Rt,Z._0_modifier_must_precede_1_modifier,"static","async");if(Oe&512)return qi(Rt,Z._0_modifier_must_precede_1_modifier,"static","accessor");if(l.parent.kind===268||l.parent.kind===307)return qi(Rt,Z._0_modifier_cannot_appear_on_a_module_or_namespace_element,"static");if(l.kind===169)return qi(Rt,Z._0_modifier_cannot_appear_on_a_parameter,"static");if(Oe&64)return qi(Rt,Z._0_modifier_cannot_be_used_with_1_modifier,"static","abstract");if(Oe&16)return qi(Rt,Z._0_modifier_must_precede_1_modifier,"static","override");Oe|=256,W=Rt;break;case 129:if(Oe&512)return qi(Rt,Z._0_modifier_already_seen,"accessor");if(Oe&8)return qi(Rt,Z._0_modifier_cannot_be_used_with_1_modifier,"accessor","readonly");if(Oe&128)return qi(Rt,Z._0_modifier_cannot_be_used_with_1_modifier,"accessor","declare");if(l.kind!==172)return qi(Rt,Z.accessor_modifier_can_only_appear_on_a_property_declaration);Oe|=512;break;case 148:if(Oe&8)return qi(Rt,Z._0_modifier_already_seen,"readonly");if(l.kind!==172&&l.kind!==171&&l.kind!==181&&l.kind!==169)return qi(Rt,Z.readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature);if(Oe&512)return qi(Rt,Z._0_modifier_cannot_be_used_with_1_modifier,"readonly","accessor");Oe|=8;break;case 95:if(Ne.verbatimModuleSyntax&&!(l.flags&33554432)&&l.kind!==265&&l.kind!==264&&l.kind!==267&&l.parent.kind===307&&(De===1||ls(l).impliedNodeFormat===1))return qi(Rt,Z.A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled);if(Oe&32)return qi(Rt,Z._0_modifier_already_seen,"export");if(Oe&128)return qi(Rt,Z._0_modifier_must_precede_1_modifier,"export","declare");if(Oe&64)return qi(Rt,Z._0_modifier_must_precede_1_modifier,"export","abstract");if(Oe&1024)return qi(Rt,Z._0_modifier_must_precede_1_modifier,"export","async");if(va(l.parent))return qi(Rt,Z._0_modifier_cannot_appear_on_class_elements_of_this_kind,"export");if(l.kind===169)return qi(Rt,Z._0_modifier_cannot_appear_on_a_parameter,"export");if(D===4)return qi(Rt,Z._0_modifier_cannot_appear_on_a_using_declaration,"export");if(D===6)return qi(Rt,Z._0_modifier_cannot_appear_on_an_await_using_declaration,"export");Oe|=32;break;case 90:let ln=l.parent.kind===307?l.parent:l.parent.parent;if(ln.kind===267&&!Yf(ln))return qi(Rt,Z.A_default_export_can_only_be_used_in_an_ECMAScript_style_module);if(D===4)return qi(Rt,Z._0_modifier_cannot_appear_on_a_using_declaration,"default");if(D===6)return qi(Rt,Z._0_modifier_cannot_appear_on_an_await_using_declaration,"default");if(Oe&32){if(ot)return qi(Ve,Z.Decorators_are_not_valid_here)}else return qi(Rt,Z._0_modifier_must_precede_1_modifier,"export","default");Oe|=2048;break;case 138:if(Oe&128)return qi(Rt,Z._0_modifier_already_seen,"declare");if(Oe&1024)return qi(Rt,Z._0_modifier_cannot_be_used_in_an_ambient_context,"async");if(Oe&16)return qi(Rt,Z._0_modifier_cannot_be_used_in_an_ambient_context,"override");if(va(l.parent)&&!Hl(l))return qi(Rt,Z._0_modifier_cannot_appear_on_class_elements_of_this_kind,"declare");if(l.kind===169)return qi(Rt,Z._0_modifier_cannot_appear_on_a_parameter,"declare");if(D===4)return qi(Rt,Z._0_modifier_cannot_appear_on_a_using_declaration,"declare");if(D===6)return qi(Rt,Z._0_modifier_cannot_appear_on_an_await_using_declaration,"declare");if(l.parent.flags&33554432&&l.parent.kind===268)return qi(Rt,Z.A_declare_modifier_cannot_be_used_in_an_already_ambient_context);if(Dh(l))return qi(Rt,Z._0_modifier_cannot_be_used_with_a_private_identifier,"declare");if(Oe&512)return qi(Rt,Z._0_modifier_cannot_be_used_with_1_modifier,"declare","accessor");Oe|=128,M=Rt;break;case 128:if(Oe&64)return qi(Rt,Z._0_modifier_already_seen,"abstract");if(l.kind!==263&&l.kind!==185){if(l.kind!==174&&l.kind!==172&&l.kind!==177&&l.kind!==178)return qi(Rt,Z.abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration);if(!(l.parent.kind===263&&ya(l.parent,64))){let hn=l.kind===172?Z.Abstract_properties_can_only_appear_within_an_abstract_class:Z.Abstract_methods_can_only_appear_within_an_abstract_class;return qi(Rt,hn)}if(Oe&256)return qi(Rt,Z._0_modifier_cannot_be_used_with_1_modifier,"static","abstract");if(Oe&2)return qi(Rt,Z._0_modifier_cannot_be_used_with_1_modifier,"private","abstract");if(Oe&1024&&se)return qi(se,Z._0_modifier_cannot_be_used_with_1_modifier,"async","abstract");if(Oe&16)return qi(Rt,Z._0_modifier_must_precede_1_modifier,"abstract","override");if(Oe&512)return qi(Rt,Z._0_modifier_must_precede_1_modifier,"abstract","accessor")}if(wf(l)&&l.name.kind===81)return qi(Rt,Z._0_modifier_cannot_be_used_with_a_private_identifier,"abstract");Oe|=64;break;case 134:if(Oe&1024)return qi(Rt,Z._0_modifier_already_seen,"async");if(Oe&128||l.parent.flags&33554432)return qi(Rt,Z._0_modifier_cannot_be_used_in_an_ambient_context,"async");if(l.kind===169)return qi(Rt,Z._0_modifier_cannot_appear_on_a_parameter,"async");if(Oe&64)return qi(Rt,Z._0_modifier_cannot_be_used_with_1_modifier,"async","abstract");Oe|=1024,se=Rt;break;case 103:case 147:{let hn=Rt.kind===103?8192:16384,mi=Rt.kind===103?"in":"out",Ti=Lv(l.parent)&&(wZ(l.parent)||be((C=HX(l.parent))==null?void 0:C.tags,I4))||l.parent;if(l.kind!==168||Ti&&!(XI(Ti)||va(Ti)||Pf(Ti)||I4(Ti)))return qi(Rt,Z._0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias,mi);if(Oe&hn)return qi(Rt,Z._0_modifier_already_seen,mi);if(hn&8192&&Oe&16384)return qi(Rt,Z._0_modifier_must_precede_1_modifier,"in","out");Oe|=hn;break}}}return l.kind===176?Oe&256?qi(W,Z._0_modifier_cannot_appear_on_a_constructor_declaration,"static"):Oe&16?qi(Ee,Z._0_modifier_cannot_appear_on_a_constructor_declaration,"override"):Oe&1024?qi(se,Z._0_modifier_cannot_appear_on_a_constructor_declaration,"async"):!1:(l.kind===272||l.kind===271)&&Oe&128?qi(M,Z.A_0_modifier_cannot_be_used_with_an_import_declaration,"declare"):l.kind===169&&Oe&31&&fu(l.name)?qi(l,Z.A_parameter_property_may_not_be_declared_using_a_binding_pattern):l.kind===169&&Oe&31&&l.dotDotDotToken?qi(l,Z.A_parameter_property_cannot_be_declared_using_a_rest_parameter):Oe&1024?pys(l,se):!1}function uys(l){if(!l.modifiers)return!1;let C=gys(l);return C&&Lh(C,Z.Modifiers_cannot_appear_here)}function ltt(l,C){let E=be(l.modifiers,Ag);return E&&E.kind!==C?E:void 0}function gys(l){switch(l.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 be(l.modifiers,Ag);default:if(l.parent.kind===268||l.parent.kind===307)return;switch(l.kind){case 262:return ltt(l,134);case 263:case 185:return ltt(l,128);case 231:case 264:case 265:return be(l.modifiers,Ag);case 243:return l.declarationList.flags&4?ltt(l,135):be(l.modifiers,Ag);case 266:return ltt(l,87);default:w.assertNever(l)}}}function Ays(l){let C=dys(l);return C&&Lh(C,Z.Decorators_are_not_valid_here)}function dys(l){return t8e(l)?be(l.modifiers,FC):void 0}function pys(l,C){switch(l.kind){case 174:case 262:case 218:case 219:return!1}return qi(C,Z._0_modifier_cannot_be_used_here,"async")}function q7(l,C=Z.Trailing_comma_not_allowed){return l&&l.hasTrailingComma?oH(l[0],l.end-1,1,C):!1}function f8r(l,C){if(l&&l.length===0){let E=l.pos-1,D=Uu(C.text,l.end)+1;return oH(C,E,D-E,Z.Type_parameter_list_cannot_be_empty)}return!1}function fys(l){let C=!1,E=l.length;for(let D=0;D!!C.initializer||fu(C.name)||Dv(C))}function Cys(l){if(Me>=3){let C=l.body&&hc(l.body)&&zKe(l.body.statements);if(C){let E=Iys(l.parameters);if(O(E)){X(E,W=>{tg(fr(W,Z.This_parameter_is_not_allowed_with_use_strict_directive),Js(C,Z.use_strict_directive_used_here))});let D=E.map((W,M)=>M===0?Js(W,Z.Non_simple_parameter_declared_here):Js(W,Z.and_here));return tg(fr(C,Z.use_strict_directive_cannot_be_used_with_non_simple_parameter_list),...D),!0}}}return!1}function utt(l){let C=ls(l);return ck(l)||f8r(l.typeParameters,C)||fys(l.parameters)||hys(l,C)||pd(l)&&Cys(l)}function mys(l){let C=ls(l);return Bys(l)||f8r(l.typeParameters,C)}function hys(l,C){if(!Id(l))return!1;l.typeParameters&&!(O(l.typeParameters)>1||l.typeParameters.hasTrailingComma||l.typeParameters[0].constraint)&&C&&fp(C.fileName,[".mts",".cts"])&&qi(l.typeParameters[0],Z.This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_constraint);let{equalsGreaterThanToken:E}=l,D=Vl(C,E.pos).line,W=Vl(C,E.end).line;return D!==W&&qi(E,Z.Line_terminator_not_permitted_before_arrow)}function _ys(l){let C=l.parameters[0];if(l.parameters.length!==1)return qi(C?C.name:l,Z.An_index_signature_must_have_exactly_one_parameter);if(q7(l.parameters,Z.An_index_signature_cannot_have_a_trailing_comma),C.dotDotDotToken)return qi(C.dotDotDotToken,Z.An_index_signature_cannot_have_a_rest_parameter);if(Lme(C))return qi(C.name,Z.An_index_signature_parameter_cannot_have_an_accessibility_modifier);if(C.questionToken)return qi(C.questionToken,Z.An_index_signature_parameter_cannot_have_a_question_mark);if(C.initializer)return qi(C.name,Z.An_index_signature_parameter_cannot_have_an_initializer);if(!C.type)return qi(C.name,Z.An_index_signature_parameter_must_have_a_type_annotation);let E=Vc(C.type);return jv(E,D=>!!(D.flags&8576))||O7(E)?qi(C.name,Z.An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead):rE(E,y$e)?l.type?!1:qi(l,Z.An_index_signature_must_have_a_type_annotation):qi(C.name,Z.An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type)}function yys(l){return ck(l)||_ys(l)}function bys(l,C){if(C&&C.length===0){let E=ls(l),D=C.pos-1,W=Uu(E.text,C.end)+1;return oH(E,D,W-D,Z.Type_argument_list_cannot_be_empty)}return!1}function PLe(l,C){return q7(C)||bys(l,C)}function Eys(l){return l.questionDotToken||l.flags&64?qi(l.template,Z.Tagged_template_expressions_are_not_permitted_in_an_optional_chain):!1}function I8r(l){let C=l.types;if(q7(C))return!0;if(C&&C.length===0){let E=vr(l.token);return oH(l,C.pos,0,Z._0_list_cannot_be_empty,E)}return lr(C,C8r)}function C8r(l){return k_(l)&&L6(l.expression)&&l.typeArguments?qi(l,Z.This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments):PLe(l,l.typeArguments)}function Bys(l){let C=!1,E=!1;if(!ck(l)&&l.heritageClauses)for(let D of l.heritageClauses){if(D.token===96){if(C)return Lh(D,Z.extends_clause_already_seen);if(E)return Lh(D,Z.extends_clause_must_precede_implements_clause);if(D.types.length>1)return Lh(D.types[1],Z.Classes_can_only_extend_a_single_class);C=!0}else{if(w.assert(D.token===119),E)return Lh(D,Z.implements_clause_already_seen);E=!0}I8r(D)}}function vys(l){let C=!1;if(l.heritageClauses)for(let E of l.heritageClauses){if(E.token===96){if(C)return Lh(E,Z.extends_clause_already_seen);C=!0}else return w.assert(E.token===119),Lh(E,Z.Interface_declaration_cannot_have_implements_clause);I8r(E)}return!1}function gtt(l){if(l.kind!==167)return!1;let C=l;return C.expression.kind===226&&C.expression.operatorToken.kind===28?qi(C.expression,Z.A_comma_expression_is_not_allowed_in_a_computed_property_name):!1}function cQt(l){if(l.asteriskToken){if(w.assert(l.kind===262||l.kind===218||l.kind===174),l.flags&33554432)return qi(l.asteriskToken,Z.Generators_are_not_allowed_in_an_ambient_context);if(!l.body)return qi(l.asteriskToken,Z.An_overload_signature_cannot_be_declared_as_a_generator)}}function lQt(l,C){return!!l&&qi(l,C)}function m8r(l,C){return!!l&&qi(l,C)}function Sys(l,C){let E=new Map;for(let D of l.properties){if(D.kind===305){if(C){let se=zA(D.expression);if(Cf(se)||ru(se))return qi(D.expression,Z.A_rest_element_cannot_contain_a_binding_pattern)}continue}let W=D.name;if(W.kind===167&>t(W),D.kind===304&&!C&&D.objectAssignmentInitializer&&qi(D.equalsToken,Z.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),W.kind===81&&qi(W,Z.Private_identifiers_are_not_allowed_outside_class_bodies),tw(D)&&D.modifiers)for(let se of D.modifiers)Ag(se)&&(se.kind!==134||D.kind!==174)&&qi(se,Z._0_modifier_cannot_be_used_here,Nf(se));else if(IRt(D)&&D.modifiers)for(let se of D.modifiers)Ag(se)&&qi(se,Z._0_modifier_cannot_be_used_here,Nf(se));let M;switch(D.kind){case 304:case 303:m8r(D.exclamationToken,Z.A_definite_assignment_assertion_is_not_permitted_in_this_context),lQt(D.questionToken,Z.An_object_member_cannot_be_declared_optional),W.kind===9&&S8r(W),M=4;break;case 174:M=8;break;case 177:M=1;break;case 178:M=2;break;default:w.assertNever(D,"Unexpected syntax kind:"+D.kind)}if(!C){let se=AQt(W);if(se===void 0)continue;let Ee=E.get(se);if(!Ee)E.set(se,M);else if(M&8&&Ee&8)qi(W,Z.Duplicate_identifier_0,Nf(W));else if(M&4&&Ee&4)qi(W,Z.An_object_literal_cannot_have_multiple_properties_with_the_same_name,Nf(W));else if(M&3&&Ee&3)if(Ee!==3&&M!==Ee)E.set(se,M|Ee);else return qi(W,Z.An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name);else return qi(W,Z.An_object_literal_cannot_have_property_and_accessor_with_the_same_name)}}}function wys(l){Tys(l.tagName),PLe(l,l.typeArguments);let C=new Map;for(let E of l.attributes.properties){if(E.kind===293)continue;let{name:D,initializer:W}=E,M=R6(D);if(!C.get(M))C.set(M,!0);else return qi(D,Z.JSX_elements_cannot_have_multiple_attributes_with_the_same_name);if(W&&W.kind===294&&!W.expression)return qi(W,Z.JSX_attributes_must_only_be_assigned_a_non_empty_expression)}}function Tys(l){if(fo(l)&&aT(l.expression))return qi(l.expression,Z.JSX_property_access_expressions_cannot_include_JSX_namespace_names);if(aT(l)&&Oee(Ne)&&!UX(l.namespace.escapedText))return qi(l,Z.React_components_cannot_include_JSX_namespace_names)}function Nys(l){if(l.expression&&Jle(l.expression))return qi(l.expression,Z.JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array)}function h8r(l){if(IF(l))return!0;if(l.kind===250&&l.awaitModifier&&!(l.flags&65536)){let C=ls(l);if(Ice(l)){if(!sW(C))switch(K9(C,Ne)||KA.add(Js(l.awaitModifier,Z.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)),De){case 100:case 199:if(C.impliedNodeFormat===1){KA.add(Js(l.awaitModifier,Z.The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level));break}case 7:case 99:case 4:if(Me>=4)break;default:KA.add(Js(l.awaitModifier,Z.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));break}}else if(!sW(C)){let E=Js(l.awaitModifier,Z.for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules),D=Ob(l);if(D&&D.kind!==176){w.assert((YI(D)&2)===0,"Enclosing function should never be an async function.");let W=Js(D,Z.Did_you_mean_to_mark_this_function_as_async);tg(E,W)}return KA.add(E),!0}}if(P1(l)&&!(l.flags&65536)&&sr(l.initializer)&&l.initializer.escapedText==="async")return qi(l.initializer,Z.The_left_hand_side_of_a_for_of_statement_may_not_be_async),!1;if(l.initializer.kind===261){let C=l.initializer;if(!gQt(C)){let E=C.declarations;if(!E.length)return!1;if(E.length>1){let W=l.kind===249?Z.Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:Z.Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement;return Lh(C.declarations[1],W)}let D=E[0];if(D.initializer){let W=l.kind===249?Z.The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:Z.The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer;return qi(D.name,W)}if(D.type){let W=l.kind===249?Z.The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:Z.The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation;return qi(D,W)}}}return!1}function Rys(l){if(!(l.flags&33554432)&&l.parent.kind!==187&&l.parent.kind!==264){if(Me<2&&Gc(l.name))return qi(l.name,Z.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(l.body===void 0&&!ya(l,64))return oH(l,l.end-1,1,Z._0_expected,"{")}if(l.body){if(ya(l,64))return qi(l,Z.An_abstract_accessor_cannot_have_an_implementation);if(l.parent.kind===187||l.parent.kind===264)return qi(l.body,Z.An_implementation_cannot_be_declared_in_ambient_contexts)}if(l.typeParameters)return qi(l.name,Z.An_accessor_cannot_have_type_parameters);if(!Dys(l))return qi(l.name,l.kind===177?Z.A_get_accessor_cannot_have_parameters:Z.A_set_accessor_must_have_exactly_one_parameter);if(l.kind===178){if(l.type)return qi(l.name,Z.A_set_accessor_cannot_have_a_return_type_annotation);let C=w.checkDefined(qX(l),"Return value does not match parameter count assertion.");if(C.dotDotDotToken)return qi(C.dotDotDotToken,Z.A_set_accessor_cannot_have_rest_parameter);if(C.questionToken)return qi(C.questionToken,Z.A_set_accessor_cannot_have_an_optional_parameter);if(C.initializer)return qi(l.name,Z.A_set_accessor_parameter_cannot_have_an_initializer)}return!1}function Dys(l){return uQt(l)||l.parameters.length===(l.kind===177?0:1)}function uQt(l){if(l.parameters.length===(l.kind===177?1:2))return sV(l)}function xys(l){if(l.operator===158){if(l.type.kind!==155)return qi(l.type,Z._0_expected,vr(155));let C=Iee(l.parent);if(io(C)&&sP(C)){let E=tV(C);E&&(C=J3(E)||E)}switch(C.kind){case 260:let E=C;if(E.name.kind!==80)return qi(l,Z.unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name);if(!L8(E))return qi(l,Z.unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement);if(!(E.parent.flags&2))return qi(C.name,Z.A_variable_whose_type_is_a_unique_symbol_type_must_be_const);break;case 172:if(!eg(C)||!s6(C))return qi(C.name,Z.A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly);break;case 171:if(!ya(C,8))return qi(C.name,Z.A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly);break;default:return qi(l,Z.unique_symbol_types_are_not_allowed_here)}}else if(l.operator===148&&l.type.kind!==188&&l.type.kind!==189)return Lh(l,Z.readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types,vr(155))}function kge(l,C){if(Ous(l))return qi(l,C)}function _8r(l){if(utt(l))return!0;if(l.kind===174){if(l.parent.kind===210){if(l.modifiers&&!(l.modifiers.length===1&&qs(l.modifiers).kind===134))return Lh(l,Z.Modifiers_cannot_appear_here);if(lQt(l.questionToken,Z.An_object_member_cannot_be_declared_optional))return!0;if(m8r(l.exclamationToken,Z.A_definite_assignment_assertion_is_not_permitted_in_this_context))return!0;if(l.body===void 0)return oH(l,l.end-1,1,Z._0_expected,"{")}if(cQt(l))return!0}if(va(l.parent)){if(Me<2&&Gc(l.name))return qi(l.name,Z.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(l.flags&33554432)return kge(l.name,Z.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(l.kind===174&&!l.body)return kge(l.name,Z.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(l.parent.kind===264)return kge(l.name,Z.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);if(l.parent.kind===187)return kge(l.name,Z.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 kys(l){let C=l;for(;C;){if(x3(C))return qi(l,Z.Jump_target_cannot_cross_function_boundary);switch(C.kind){case 256:if(l.label&&C.label.escapedText===l.label.escapedText)return l.kind===251&&!YR(C.statement,!0)?qi(l,Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement):!1;break;case 255:if(l.kind===252&&!l.label)return!1;break;default:if(YR(C,!1)&&!l.label)return!1;break}C=C.parent}if(l.label){let E=l.kind===252?Z.A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement;return qi(l,E)}else{let E=l.kind===252?Z.A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:Z.A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement;return qi(l,E)}}function Gys(l){if(l.dotDotDotToken){let C=l.parent.elements;if(l!==Ta(C))return qi(l,Z.A_rest_element_must_be_last_in_a_destructuring_pattern);if(q7(C,Z.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),l.propertyName)return qi(l.name,Z.A_rest_element_cannot_have_a_property_name)}if(l.dotDotDotToken&&l.initializer)return oH(l,l.initializer.pos-1,1,Z.A_rest_element_cannot_have_an_initializer)}function y8r(l){return ZE(l)||l.kind===224&&l.operator===41&&l.operand.kind===9}function Fys(l){return l.kind===10||l.kind===224&&l.operator===41&&l.operand.kind===10}function Zys(l){if((fo(l)||_A(l)&&y8r(l.argumentExpression))&&lp(l.expression))return!!(sC(l).flags&1056)}function b8r(l){let C=l.initializer;if(C){let E=!(y8r(C)||Zys(C)||C.kind===112||C.kind===97||Fys(C));if((Iu(l)||js(l)&&Lye(l))&&!l.type){if(E)return qi(C,Z.A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference)}else return qi(C,Z.Initializers_are_not_allowed_in_ambient_contexts)}}function Lys(l){let C=aH(l),E=C&7;if(fu(l.name))switch(E){case 6:return qi(l,Z._0_declarations_may_not_have_binding_patterns,"await using");case 4:return qi(l,Z._0_declarations_may_not_have_binding_patterns,"using")}if(l.parent.parent.kind!==249&&l.parent.parent.kind!==250){if(C&33554432)b8r(l);else if(!l.initializer){if(fu(l.name)&&!fu(l.parent))return qi(l,Z.A_destructuring_declaration_must_have_an_initializer);switch(E){case 6:return qi(l,Z._0_declarations_must_be_initialized,"await using");case 4:return qi(l,Z._0_declarations_must_be_initialized,"using");case 2:return qi(l,Z._0_declarations_must_be_initialized,"const")}}}if(l.exclamationToken&&(l.parent.parent.kind!==243||!l.type||l.initializer||C&33554432)){let D=l.initializer?Z.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:l.type?Z.A_definite_assignment_assertion_is_not_permitted_in_this_context:Z.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;return qi(l.exclamationToken,D)}return(De<5||ls(l).impliedNodeFormat===1)&&De!==4&&!(l.parent.parent.flags&33554432)&&ya(l.parent.parent,32)&&E8r(l.name),!!E&&B8r(l.name)}function E8r(l){if(l.kind===80){if(oo(l)==="__esModule")return Pys("noEmit",l,Z.Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules)}else{let C=l.elements;for(let E of C)if(!tf(E))return E8r(E.name)}return!1}function B8r(l){if(l.kind===80){if(l.escapedText==="let")return qi(l,Z.let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations)}else{let C=l.elements;for(let E of C)tf(E)||B8r(E.name)}return!1}function gQt(l){let C=l.declarations;if(q7(l.declarations))return!0;if(!l.declarations.length)return oH(l,C.pos,C.end-C.pos,Z.Variable_declaration_list_cannot_be_empty);let E=l.flags&7;return(E===4||E===6)&&iD(l.parent)?qi(l,E===4?Z.The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration:Z.The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration):E===6?QUr(l):!1}function v8r(l){switch(l.kind){case 245:case 246:case 247:case 254:case 248:case 249:case 250:return!1;case 256:return v8r(l.parent)}return!0}function Vys(l){if(!v8r(l.parent)){let C=aH(l.declarationList)&7;if(C){let E=C===1?"let":C===2?"const":C===4?"using":C===6?"await using":w.fail("Unknown BlockScope flag");return qi(l,Z._0_declarations_can_only_be_declared_inside_a_block,E)}}}function Wys(l){let C=l.name.escapedText;switch(l.keywordToken){case 105:if(C!=="target")return qi(l.name,Z._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2,wc(l.name.escapedText),vr(l.keywordToken),"target");break;case 102:if(C!=="meta")return qi(l.name,Z._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2,wc(l.name.escapedText),vr(l.keywordToken),"meta");break}}function sW(l){return l.parseDiagnostics.length>0}function Lh(l,C,...E){let D=ls(l);if(!sW(D)){let W=Rr(D,l.pos);return KA.add(Cm(D,W.start,W.length,C,...E)),!0}return!1}function oH(l,C,E,D,...W){let M=ls(l);return sW(M)?!1:(KA.add(Cm(M,C,E,D,...W)),!0)}function Pys(l,C,E,...D){let W=ls(C);return sW(W)?!1:(IT(l,C,E,...D),!0)}function qi(l,C,...E){let D=ls(l);return sW(D)?!1:(KA.add(Js(l,C,...E)),!0)}function Oys(l){let C=io(l)?Tee(l):void 0,E=l.typeParameters||C&&$i(C);if(E){let D=E.pos===E.end?E.pos:Uu(ls(l).text,E.pos);return oH(l,D,E.end-D,Z.Type_parameters_cannot_appear_on_a_constructor_declaration)}}function Qys(l){let C=l.type||nb(l);if(C)return qi(C,Z.Type_annotation_cannot_appear_on_a_constructor_declaration)}function Mys(l){if(kg(l.name)&&ro(l.name.expression)&&l.name.expression.operatorToken.kind===103)return qi(l.parent.members[0],Z.A_mapped_type_may_not_declare_properties_or_methods);if(va(l.parent)){if(Eu(l.name)&&l.name.text==="constructor")return qi(l.name,Z.Classes_may_not_have_a_field_named_constructor);if(kge(l.name,Z.A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_symbol_type))return!0;if(Me<2&&Gc(l.name))return qi(l.name,Z.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(Me<2&&r_(l))return qi(l.name,Z.Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(r_(l)&&lQt(l.questionToken,Z.An_accessor_property_cannot_be_declared_optional))return!0}else if(l.parent.kind===264){if(kge(l.name,Z.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(w.assertNode(l,i_),l.initializer)return qi(l.initializer,Z.An_interface_property_cannot_have_an_initializer)}else if(Se(l.parent)){if(kge(l.name,Z.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(w.assertNode(l,i_),l.initializer)return qi(l.initializer,Z.A_type_literal_property_cannot_have_an_initializer)}if(l.flags&33554432&&b8r(l),Hl(l)&&l.exclamationToken&&(!va(l.parent)||!l.type||l.initializer||l.flags&33554432||eg(l)||cV(l))){let C=l.initializer?Z.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:l.type?Z.A_definite_assignment_assertion_is_not_permitted_in_this_context:Z.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;return qi(l.exclamationToken,C)}}function Hys(l){return l.kind===264||l.kind===265||l.kind===272||l.kind===271||l.kind===278||l.kind===277||l.kind===270||ya(l,2208)?!1:Lh(l,Z.Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier)}function Yys(l){for(let C of l.statements)if((xC(C)||C.kind===243)&&Hys(C))return!0;return!1}function Xys(l){return!!(l.flags&33554432)&&Yys(l)}function IF(l){if(l.flags&33554432){if(!Jo(l).hasReportedStatementInAmbientContext&&(eu(l.parent)||zw(l.parent)))return Jo(l).hasReportedStatementInAmbientContext=Lh(l,Z.An_implementation_cannot_be_declared_in_ambient_contexts);if(l.parent.kind===241||l.parent.kind===268||l.parent.kind===307){let E=Jo(l.parent);if(!E.hasReportedStatementInAmbientContext)return E.hasReportedStatementInAmbientContext=Lh(l,Z.Statements_are_not_allowed_in_ambient_contexts)}}return!1}function S8r(l){let C=Nf(l).includes("."),E=l.numericLiteralFlags&16;C||E||+l.text<=2**53-1||sw(!1,Js(l,Z.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers))}function Jys(l){return!!(!(sd(l.parent)||GB(l.parent)&&sd(l.parent.parent))&&Me<7&&qi(l,Z.BigInt_literals_are_not_available_when_targeting_lower_than_ES2020))}function Uys(l,C,...E){let D=ls(l);if(!sW(D)){let W=Rr(D,l.pos);return KA.add(Cm(D,Ku(W),0,C,...E)),!0}return!1}function Kys(){return of||(of=[],kt.forEach((l,C)=>{LDt.test(C)&&of.push(l)})),of}function jys(l){var C;return l.isTypeOnly&&l.name&&l.namedBindings?qi(l,Z.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both):l.isTypeOnly&&((C=l.namedBindings)==null?void 0:C.kind)===275?w8r(l.namedBindings):!1}function w8r(l){return!!X(l.elements,C=>{if(C.isTypeOnly)return Lh(C,C.kind===276?Z.The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement:Z.The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement)})}function zys(l){if(Ne.verbatimModuleSyntax&&De===1)return qi(l,Z.ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled);if(De===5)return qi(l,Z.Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd_system_umd_node16_or_nodenext);if(l.typeArguments)return qi(l,Z.This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments);let C=l.arguments;if(De!==99&&De!==199&&De!==100&&(q7(C),C.length>1)){let D=C[1];return qi(D,Z.Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_or_nodenext)}if(C.length===0||C.length>2)return qi(l,Z.Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments);let E=be(C,fh);return E?qi(E,Z.Argument_of_dynamic_import_cannot_be_spread_element):!1}function qys(l,C){let E=ia(l);if(E&20&&C.flags&1048576)return be(C.types,D=>{if(D.flags&524288){let W=E&ia(D);if(W&4)return l.target===D.target;if(W&16)return!!l.aliasSymbol&&l.aliasSymbol===D.aliasSymbol}return!1})}function $ys(l,C){if(ia(l)&128&&jv(C,fL))return be(C.types,E=>!fL(E))}function ebs(l,C){let E=0;if(Ou(l,E).length>0||(E=1,Ou(l,E).length>0))return be(C.types,W=>Ou(W,E).length>0)}function tbs(l,C){let E;if(!(l.flags&406978556)){let D=0;for(let W of C.types)if(!(W.flags&406978556)){let M=Og([UN(l),UN(W)]);if(M.flags&4194304)return W;if(BT(M)||M.flags&1048576){let se=M.flags&1048576?ft(M.types,BT):1;se>=D&&(E=W,D=se)}}}return E}function rbs(l){if(KI(l,67108864)){let C=WC(l,E=>!(E.flags&402784252));if(!(C.flags&131072))return C}return l}function T8r(l,C,E){if(C.flags&1048576&&l.flags&2621440){let D=G4r(C,l);if(D)return D;let W=Cd(l);if(W){let M=k4r(W,C);if(M){let se=j3t(C,Ot(M,Ee=>[()=>co(Ee),Ee.escapedName]),E);if(se!==C)return se}}}}function AQt(l){let C=iV(l);return C||(kg(l)?bPt(u_(l.expression)):void 0)}function Att(l){return $n===l||($n=l,bi=Rh(l)),bi}function aH(l){return pr===l||(pr=l,zr=$y(l)),zr}function Lye(l){let C=aH(l)&7;return C===2||C===4||C===6}function nbs(l,C){let E=Ne.importHelpers?1:0,D=l?.imports[E];return D&&w.assert($d(D)&&D.text===C,`Expected sourceFile.imports[${E}] to be the synthesized JSX runtime import`),D}function ibs(l){w.assert(Ne.importHelpers,"Expected importHelpers to be enabled");let C=l.imports[0];return w.assert(C&&$d(C)&&C.text==="tslib","Expected sourceFile.imports[0] to be the synthesized tslib import"),C}}function S6i(n){return!zw(n)}function CGr(n){return n.kind!==262&&n.kind!==174||!!n.body}function mGr(n){switch(n.parent.kind){case 276:case 281:return sr(n);default:return tT(n)}}var L2;(n=>{n.JSX="JSX",n.IntrinsicElements="IntrinsicElements",n.ElementClass="ElementClass",n.ElementAttributesPropertyNameContainer="ElementAttributesProperty",n.ElementChildrenAttributeNameContainer="ElementChildrenAttribute",n.Element="Element",n.ElementType="ElementType",n.IntrinsicAttributes="IntrinsicAttributes",n.IntrinsicClassAttributes="IntrinsicClassAttributes",n.LibraryManagedAttributes="LibraryManagedAttributes"})(L2||(L2={}));function hGr(n){switch(n){case 0:return"yieldType";case 1:return"returnType";case 2:return"nextType"}}function g0(n){return!!(n.flags&1)}function j8e(n){return!!(n.flags&2)}function w6i(n){return{getCommonSourceDirectory:n.getCommonSourceDirectory?()=>n.getCommonSourceDirectory():()=>"",getCurrentDirectory:()=>n.getCurrentDirectory(),getSymlinkCache:Yi(n,n.getSymlinkCache),getPackageJsonInfoCache:()=>{var c;return(c=n.getPackageJsonInfoCache)==null?void 0:c.call(n)},useCaseSensitiveFileNames:Yi(n,n.useCaseSensitiveFileNames),redirectTargetsMap:n.redirectTargetsMap,getProjectReferenceRedirect:c=>n.getProjectReferenceRedirect(c),isSourceOfProjectReferenceRedirect:c=>n.isSourceOfProjectReferenceRedirect(c),fileExists:c=>n.fileExists(c),getFileIncludeReasons:()=>n.getFileIncludeReasons(),readFile:n.readFile?c=>n.readFile(c):void 0}}var PDt=class lPn{constructor(c,u,d){this.moduleResolverHost=void 0,this.inner=void 0,this.disableTrackSymbol=!1;for(var I;u instanceof lPn;)u=u.inner;this.inner=u,this.moduleResolverHost=d,this.context=c,this.canTrackSymbol=!!((I=this.inner)!=null&&I.trackSymbol)}trackSymbol(c,u,d){var I,h;if((I=this.inner)!=null&&I.trackSymbol&&!this.disableTrackSymbol){if(this.inner.trackSymbol(c,u,d))return this.onDiagnosticReported(),!0;c.flags&262144||((h=this.context).trackedSymbols??(h.trackedSymbols=[])).push([c,u,d])}return!1}reportInaccessibleThisError(){var c;(c=this.inner)!=null&&c.reportInaccessibleThisError&&(this.onDiagnosticReported(),this.inner.reportInaccessibleThisError())}reportPrivateInBaseOfClassExpression(c){var u;(u=this.inner)!=null&&u.reportPrivateInBaseOfClassExpression&&(this.onDiagnosticReported(),this.inner.reportPrivateInBaseOfClassExpression(c))}reportInaccessibleUniqueSymbolError(){var c;(c=this.inner)!=null&&c.reportInaccessibleUniqueSymbolError&&(this.onDiagnosticReported(),this.inner.reportInaccessibleUniqueSymbolError())}reportCyclicStructureError(){var c;(c=this.inner)!=null&&c.reportCyclicStructureError&&(this.onDiagnosticReported(),this.inner.reportCyclicStructureError())}reportLikelyUnsafeImportRequiredError(c){var u;(u=this.inner)!=null&&u.reportLikelyUnsafeImportRequiredError&&(this.onDiagnosticReported(),this.inner.reportLikelyUnsafeImportRequiredError(c))}reportTruncationError(){var c;(c=this.inner)!=null&&c.reportTruncationError&&(this.onDiagnosticReported(),this.inner.reportTruncationError())}reportNonlocalAugmentation(c,u,d){var I;(I=this.inner)!=null&&I.reportNonlocalAugmentation&&(this.onDiagnosticReported(),this.inner.reportNonlocalAugmentation(c,u,d))}reportNonSerializableProperty(c){var u;(u=this.inner)!=null&&u.reportNonSerializableProperty&&(this.onDiagnosticReported(),this.inner.reportNonSerializableProperty(c))}onDiagnosticReported(){this.context.reportedDiagnostic=!0}reportInferenceFallback(c){var u;(u=this.inner)!=null&&u.reportInferenceFallback&&this.inner.reportInferenceFallback(c)}};function xr(n,c,u,d){if(n===void 0)return n;let I=c(n),h;if(I!==void 0)return Na(I)?h=(d||k6i)(I):h=I,w.assertNode(h,u),h}function ws(n,c,u,d,I){if(n===void 0)return n;let h=n.length;(d===void 0||d<0)&&(d=0),(I===void 0||I>h-d)&&(I=h-d);let b,R=-1,N=-1;d>0||Ih-d)&&(I=h-d),_Gr(n,c,u,d,I)}function _Gr(n,c,u,d,I){let h,b=n.length;(d>0||I=2&&(I=T6i(I,u)),u.setLexicalEnvironmentFlags(1,!1)),u.suspendLexicalEnvironment(),I}function T6i(n,c){let u;for(let d=0;d{let b=dR,addSource:Tt,setSourceContent:St,addName:He,addMapping:Kt,appendSourceMap:Nt,toJSON:jt,toString:()=>JSON.stringify(jt())};function Tt(Pt){h();let Vr=km(d,Pt,n.getCurrentDirectory(),n.getCanonicalFileName,!0),Hr=V.get(Vr);return Hr===void 0&&(Hr=N.length,N.push(Vr),R.push(Pt),V.set(Vr,Hr)),b(),Hr}function St(Pt,Vr){if(h(),Vr!==null){for(P||(P=[]);P.lengthVr||st===Vr&&nt>Hr)}function Kt(Pt,Vr,Hr,pr,zr,$n){w.assert(Pt>=lt,"generatedLine cannot backtrack"),w.assert(Vr>=0,"generatedCharacter cannot be negative"),w.assert(Hr===void 0||Hr>=0,"sourceIndex cannot be negative"),w.assert(pr===void 0||pr>=0,"sourceLine cannot be negative"),w.assert(zr===void 0||zr>=0,"sourceCharacter cannot be negative"),h(),(ht(Pt,Vr)||Et(Hr,pr,zr))&&(Zt(),lt=Pt,Le=Vr,It=!1,dt=!1,it=!0),Hr!==void 0&&pr!==void 0&&zr!==void 0&&(je=Hr,st=pr,nt=zr,It=!0,$n!==void 0&&(qe=$n,dt=!0)),b()}function Nt(Pt,Vr,Hr,pr,zr,$n){w.assert(Pt>=lt,"generatedLine cannot backtrack"),w.assert(Vr>=0,"generatedCharacter cannot be negative"),h();let bi=[],Pi,Ns=t6e(Hr.mappings);for(let gi of Ns){if($n&&(gi.generatedLine>$n.line||gi.generatedLine===$n.line&&gi.generatedCharacter>$n.character))break;if(zr&&(gi.generatedLine=1024&&Dr()}function Zt(){if(!(!it||!Lt())){if(h(),Ae0&&(ue+=String.fromCharCode.apply(void 0,re),re.length=0)}function jt(){return Zt(),Dr(),{version:3,file:c,sourceRoot:u,sources:N,names:Q,mappings:ue,sourcesContent:P}}function mr(Pt){Pt<0?Pt=(-Pt<<1)+1:Pt=Pt<<1;do{let Vr=Pt&31;Pt=Pt>>5,Pt>0&&(Vr=Vr|32),kt(F6i(Vr))}while(Pt>0)}}var QDt=/\/\/[@#] source[M]appingURL=(.+)\r?\n?$/,q8e=/^\/\/[@#] source[M]appingURL=(.+)\r?\n?$/,$8e=/^\s*(\/\/[@#] .*)?$/;function e6e(n,c){return{getLineCount:()=>c.length,getLineText:u=>n.substring(c[u],c[u+1])}}function MDt(n){for(let c=n.getLineCount()-1;c>=0;c--){let u=n.getLineText(c),d=q8e.exec(u);if(d)return d[1].trimEnd();if(!u.match($8e))break}}function G6i(n){return typeof n=="string"||n===null}function HDt(n){return n!==null&&typeof n=="object"&&n.version===3&&typeof n.file=="string"&&typeof n.mappings=="string"&&Na(n.sources)&&he(n.sources,Ya)&&(n.sourceRoot===void 0||n.sourceRoot===null||typeof n.sourceRoot=="string")&&(n.sourcesContent===void 0||n.sourcesContent===null||Na(n.sourcesContent)&&he(n.sourcesContent,G6i))&&(n.names===void 0||n.names===null||Na(n.names)&&he(n.names,Ya))}function YDt(n){try{let c=JSON.parse(n);if(HDt(c))return c}catch{}}function t6e(n){let c=!1,u=0,d=0,I=0,h=0,b=0,R=0,N=0,V;return{get pos(){return u},get error(){return V},get state(){return P(!0,!0)},next(){for(;!c&&u=n.length)return te("Error in decoding base64VLQFormatDecode, past the mapping string"),-1;let Me=Z6i(n.charCodeAt(u));if(Me===-1)return te("Invalid character in VLQ"),-1;Be=(Me&32)!==0,Ne=Ne|(Me&31)<>1,Ne=-Ne):Ne=Ne>>1,Ne}}function yGr(n,c){return n===c||n.generatedLine===c.generatedLine&&n.generatedCharacter===c.generatedCharacter&&n.sourceIndex===c.sourceIndex&&n.sourceLine===c.sourceLine&&n.sourceCharacter===c.sourceCharacter&&n.nameIndex===c.nameIndex}function XDt(n){return n.sourceIndex!==void 0&&n.sourceLine!==void 0&&n.sourceCharacter!==void 0}function F6i(n){return n>=0&&n<26?65+n:n>=26&&n<52?97+n-26:n>=52&&n<62?48+n-52:n===62?43:n===63?47:w.fail(`${n}: not a base64 value`)}function Z6i(n){return n>=65&&n<=90?n-65:n>=97&&n<=122?n-97+26:n>=48&&n<=57?n-48+52:n===43?62:n===47?63:-1}function bGr(n){return n.sourceIndex!==void 0&&n.sourcePosition!==void 0}function EGr(n,c){return n.generatedPosition===c.generatedPosition&&n.sourceIndex===c.sourceIndex&&n.sourcePosition===c.sourcePosition}function L6i(n,c){return w.assert(n.sourceIndex===c.sourceIndex),Jl(n.sourcePosition,c.sourcePosition)}function V6i(n,c){return Jl(n.generatedPosition,c.generatedPosition)}function W6i(n){return n.sourcePosition}function P6i(n){return n.generatedPosition}function JDt(n,c,u){let d=oa(u),I=c.sourceRoot?Qc(c.sourceRoot,d):d,h=Qc(c.file,d),b=n.getSourceFileLike(h),R=c.sources.map(Fe=>Qc(Fe,I)),N=new Map(R.map((Fe,Ne)=>[n.getCanonicalFileName(Fe),Ne])),V,P,Q;return{getSourcePosition:Be,getGeneratedPosition:de};function te(Fe){let Ne=b!==void 0?Ju(b,Fe.generatedLine,Fe.generatedCharacter,!0):-1,Me,De;if(XDt(Fe)){let lt=n.getSourceFileLike(R[Fe.sourceIndex]);Me=c.sources[Fe.sourceIndex],De=lt!==void 0?Ju(lt,Fe.sourceLine,Fe.sourceCharacter,!0):-1}return{generatedPosition:Ne,source:Me,sourceIndex:Fe.sourceIndex,sourcePosition:De,nameIndex:Fe.nameIndex}}function re(){if(V===void 0){let Fe=t6e(c.mappings),Ne=on(Fe,te);Fe.error!==void 0?(n.log&&n.log(`Encountered error while decoding sourcemap: ${Fe.error}`),V=v):V=Ne}return V}function ue(Fe){if(Q===void 0){let Ne=[];for(let Me of re()){if(!bGr(Me))continue;let De=Ne[Me.sourceIndex];De||(Ne[Me.sourceIndex]=De=[]),De.push(Me)}Q=Ne.map(Me=>Ir(Me,L6i,EGr))}return Q[Fe]}function Ae(){if(P===void 0){let Fe=[];for(let Ne of re())Fe.push(Ne);P=Ir(Fe,V6i,EGr)}return P}function de(Fe){let Ne=N.get(n.getCanonicalFileName(Fe.fileName));if(Ne===void 0)return Fe;let Me=ue(Ne);if(!lr(Me))return Fe;let De=lf(Me,Fe.pos,W6i,Jl);De<0&&(De=~De);let lt=Me[De];return lt===void 0||lt.sourceIndex!==Ne?Fe:{fileName:h,pos:lt.generatedPosition}}function Be(Fe){let Ne=Ae();if(!lr(Ne))return Fe;let Me=lf(Ne,Fe.pos,P6i,Jl);Me<0&&(Me=~Me);let De=Ne[Me];return De===void 0||!bGr(De)?Fe:{fileName:R[De.sourceIndex],pos:De.sourcePosition}}}var r6e={getSourcePosition:vl,getGeneratedPosition:vl};function Ey(n){return n=Np(n),n?od(n):0}function BGr(n){return!n||!TN(n)&&!ZB(n)?!1:lr(n.elements,vGr)}function vGr(n){return n.propertyName!==void 0?n.propertyName.escapedText==="default":n.name.escapedText==="default"}function uT(n,c){return u;function u(I){return I.kind===307?c(I):d(I)}function d(I){return n.factory.createBundle(Ot(I.sourceFiles,c))}}function UDt(n){return!!QX(n)}function Zke(n){if(QX(n))return!0;let c=n.importClause&&n.importClause.namedBindings;if(!c||!TN(c))return!1;let u=0;for(let d of c.elements)vGr(d)&&u++;return u>0&&u!==c.elements.length||!!(c.elements.length-u)&&G5(n)}function n6e(n){return!Zke(n)&&(G5(n)||!!n.importClause&&TN(n.importClause.namedBindings)&&BGr(n.importClause.namedBindings))}function i6e(n,c){let u=n.getEmitResolver(),d=n.getCompilerOptions(),I=[],h=new KDt,b=[],R=new Map,N=new Set,V,P=!1,Q,te=!1,re=!1,ue=!1;for(let Fe of c.statements)switch(Fe.kind){case 272:I.push(Fe),!re&&Zke(Fe)&&(re=!0),!ue&&n6e(Fe)&&(ue=!0);break;case 271:Fe.moduleReference.kind===283&&I.push(Fe);break;case 278:if(Fe.moduleSpecifier)if(!Fe.exportClause)I.push(Fe),te=!0;else if(I.push(Fe),ZB(Fe.exportClause))de(Fe),ue||(ue=BGr(Fe.exportClause));else{let Ne=Fe.exportClause.name;R.get(oo(Ne))||(aue(b,Ey(Fe),Ne),R.set(oo(Ne),!0),V=Yr(V,Ne)),re=!0}else de(Fe);break;case 277:Fe.isExportEquals&&!Q&&(Q=Fe);break;case 243:if(ya(Fe,32))for(let Ne of Fe.declarationList.declarations)V=SGr(Ne,R,V,b);break;case 262:ya(Fe,32)&&Be(Fe,void 0,ya(Fe,2048));break;case 263:if(ya(Fe,32))if(ya(Fe,2048))P||(aue(b,Ey(Fe),n.factory.getDeclarationName(Fe)),P=!0);else{let Ne=Fe.name;Ne&&!R.get(oo(Ne))&&(aue(b,Ey(Fe),Ne),R.set(oo(Ne),!0),V=Yr(V,Ne))}break}let Ae=qKe(n.factory,n.getEmitHelperFactory(),c,d,te,re,ue);return Ae&&I.unshift(Ae),{externalImports:I,exportSpecifiers:h,exportEquals:Q,hasExportStarsToExportValues:te,exportedBindings:b,exportedNames:V,exportedFunctions:N,externalHelpersImportDeclaration:Ae};function de(Fe){for(let Ne of ps(Fe.exportClause,ZB).elements)if(!R.get(oo(Ne.name))){let Me=Ne.propertyName||Ne.name;Fe.moduleSpecifier||h.add(Me,Ne);let De=u.getReferencedImportDeclaration(Me)||u.getReferencedValueDeclaration(Me);if(De){if(De.kind===262){Be(De,Ne.name,Ne.name.escapedText==="default");continue}aue(b,Ey(De),Ne.name)}R.set(oo(Ne.name),!0),V=Yr(V,Ne.name)}}function Be(Fe,Ne,Me){N.add(Fe),Me?P||(aue(b,Ey(Fe),Ne??n.factory.getDeclarationName(Fe)),P=!0):(Ne??(Ne=Fe.name),R.get(oo(Ne))||(aue(b,Ey(Fe),Ne),R.set(oo(Ne),!0)))}}function SGr(n,c,u,d){if(fu(n.name))for(let I of n.name.elements)tf(I)||(u=SGr(I,c,u,d));else if(!Cp(n.name)){let I=oo(n.name);c.get(I)||(c.set(I,!0),u=Yr(u,n.name),VG(n.name)&&aue(d,Ey(n),n.name))}return u}function aue(n,c,u){let d=n[c];return d?d.push(u):n[c]=d=[u],d}var Ste=class kie{constructor(){this._map=new Map}get size(){return this._map.size}has(c){return this._map.has(kie.toKey(c))}get(c){return this._map.get(kie.toKey(c))}set(c,u){return this._map.set(kie.toKey(c),u),this}delete(c){var u;return((u=this._map)==null?void 0:u.delete(kie.toKey(c)))??!1}clear(){this._map.clear()}values(){return this._map.values()}static toKey(c){if(mZ(c)||Cp(c)){let u=c.emitNode.autoGenerate;if((u.flags&7)===4){let d=Uhe(c),I=eb(d)&&d!==c?kie.toKey(d):`(generated@${od(d)})`;return aP(!1,u.prefix,I,u.suffix,kie.toKey)}else{let d=`(auto@${u.id})`;return aP(!1,u.prefix,d,u.suffix,kie.toKey)}}return Gc(c)?oo(c).slice(1):oo(c)}},KDt=class extends Ste{add(n,c){let u=this.get(n);return u?u.push(c):this.set(n,u=[c]),u}remove(n,c){let u=this.get(n);u&&(Qy(u,c),u.length||this.delete(n))}};function mM(n){return JA(n)||n.kind===9||s0(n.kind)||sr(n)}function xN(n){return!sr(n)&&mM(n)}function cue(n){return n>=65&&n<=79}function lue(n){switch(n){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 Lke(n){if(!Xf(n))return;let c=zA(n.expression);return Rf(c)?c:void 0}function wGr(n,c,u){for(let d=c;dQ6i(d,c,u))}function O6i(n){return M6i(n)||ef(n)}function Wke(n){return Gt(n.members,O6i)}function Q6i(n,c,u){return Hl(n)&&(!!n.initializer||!c)&&CC(n)===u}function M6i(n){return Hl(n)&&CC(n)}function d_e(n){return n.kind===172&&n.initializer!==void 0}function jDt(n){return!eg(n)&&(_Z(n)||r_(n))&&Gc(n.name)}function zDt(n){let c;if(n){let u=n.parameters,d=u.length>0&&oV(u[0]),I=d?1:0,h=d?u.length-1:u.length;for(let b=0;ba6e(u.privateEnv,c))}function txt(n){return!n.initializer&&sr(n.name)}function p_e(n){return he(n,txt)}var rxt=(n=>(n[n.All=0]="All",n[n.ObjectRest=1]="ObjectRest",n))(rxt||{});function y4(n,c,u,d,I,h){let b=n,R;if(Gv(n))for(R=n.right;Yme(n.left)||Gee(n.left);)if(Gv(R))b=n=R,R=n.right;else return w.checkDefined(xr(R,c,tn));let N,V={context:u,level:d,downlevelIteration:!!u.getCompilerOptions().downlevelIteration,hoistTempVariables:!0,emitExpression:P,emitBindingOrAssignment:Q,createArrayBindingOrAssignmentPattern:te=>$6i(u.factory,te),createObjectBindingOrAssignmentPattern:te=>t7i(u.factory,te),createArrayBindingOrAssignmentElement:n7i,visitor:c};if(R&&(R=xr(R,c,tn),w.assert(R),sr(R)&&nxt(n,R.escapedText)||ixt(n)?R=K6(V,R,!1,b):I?R=K6(V,R,!0,b):$d(n)&&(b=R)),uue(V,n,R,b,Gv(n)),R&&I){if(!lr(N))return R;N.push(R)}return u.factory.inlineExpressions(N)||u.factory.createOmittedExpression();function P(te){N=Yr(N,te)}function Q(te,re,ue,Ae){w.assertNode(te,h?sr:tn);let de=h?h(te,re,ue):un(u.factory.createAssignment(w.checkDefined(xr(te,c,tn)),re),ue);de.original=Ae,P(de)}}function nxt(n,c){let u=bV(n);return h5(u)?X6i(u,c):sr(u)?u.escapedText===c:!1}function X6i(n,c){let u=Ite(n);for(let d of u)if(nxt(d,c))return!0;return!1}function ixt(n){let c=ike(n);if(c&&kg(c)&&!wv(c.expression))return!0;let u=bV(n);return!!u&&h5(u)&&J6i(u)}function J6i(n){return!!X(Ite(n),ixt)}function hM(n,c,u,d,I,h=!1,b){let R,N=[],V=[],P={context:u,level:d,downlevelIteration:!!u.getCompilerOptions().downlevelIteration,hoistTempVariables:h,emitExpression:Q,emitBindingOrAssignment:te,createArrayBindingOrAssignmentPattern:re=>q6i(u.factory,re),createObjectBindingOrAssignmentPattern:re=>e7i(u.factory,re),createArrayBindingOrAssignmentElement:re=>r7i(u.factory,re),visitor:c};if(js(n)){let re=Xhe(n);re&&(sr(re)&&nxt(n,re.escapedText)||ixt(n))&&(re=K6(P,w.checkDefined(xr(re,P.visitor,tn)),!1,re),n=u.factory.updateVariableDeclaration(n,n.name,void 0,void 0,re))}if(uue(P,n,I,n,b),R){let re=u.factory.createTempVariable(void 0);if(h){let ue=u.factory.inlineExpressions(R);R=void 0,te(re,ue,void 0,void 0)}else{u.hoistVariableDeclaration(re);let ue=Ta(N);ue.pendingExpressions=Yr(ue.pendingExpressions,u.factory.createAssignment(re,ue.value)),ai(ue.pendingExpressions,R),ue.value=re}}for(let{pendingExpressions:re,name:ue,value:Ae,location:de,original:Be}of N){let Fe=u.factory.createVariableDeclaration(ue,void 0,void 0,re?u.factory.inlineExpressions(Yr(re,Ae)):Ae);Fe.original=Be,un(Fe,de),V.push(Fe)}return V;function Q(re){R=Yr(R,re)}function te(re,ue,Ae,de){w.assertNode(re,hZ),R&&(ue=u.factory.inlineExpressions(Yr(R,ue)),R=void 0),N.push({pendingExpressions:R,name:re,value:ue,location:Ae,original:de})}}function uue(n,c,u,d,I){let h=bV(c);if(!I){let b=xr(Xhe(c),n.visitor,tn);b?u?(u=j6i(n,u,b,d),!xN(b)&&h5(h)&&(u=K6(n,u,!0,d))):u=b:u||(u=n.context.factory.createVoidZero())}y$(h)?U6i(n,c,h,u,d):b$(h)?K6i(n,c,h,u,d):n.emitBindingOrAssignment(h,u,d,c)}function U6i(n,c,u,d,I){let h=Ite(u),b=h.length;if(b!==1){let V=!_X(c)||b!==0;d=K6(n,d,V,I)}let R,N;for(let V=0;V=1&&!(P.transformFlags&98304)&&!(bV(P).transformFlags&98304)&&!kg(Q))R=Yr(R,xr(P,n.visitor,Hae));else{R&&(n.emitBindingOrAssignment(n.createObjectBindingOrAssignmentPattern(R),d,I,u),R=void 0);let te=z6i(n,d,Q);kg(Q)&&(N=Yr(N,te.argumentExpression)),uue(n,P,te,P)}}}R&&n.emitBindingOrAssignment(n.createObjectBindingOrAssignmentPattern(R),d,I,u)}function K6i(n,c,u,d,I){let h=Ite(u),b=h.length;if(n.level<1&&n.downlevelIteration)d=K6(n,un(n.context.getEmitHelperFactory().createReadHelper(d,b>0&&nke(h[b-1])?void 0:b),I),!1,I);else if(b!==1&&(n.level<1||b===0)||he(h,tf)){let V=!_X(c)||b!==0;d=K6(n,d,V,I)}let R,N;for(let V=0;V=1)if(P.transformFlags&65536||n.hasTransformedPriorElement&&!NGr(P)){n.hasTransformedPriorElement=!0;let Q=n.context.factory.createTempVariable(void 0);n.hoistTempVariables&&n.context.hoistVariableDeclaration(Q),N=Yr(N,[Q,P]),R=Yr(R,n.createArrayBindingOrAssignmentElement(Q))}else R=Yr(R,P);else{if(tf(P))continue;if(nke(P)){if(V===b-1){let Q=n.context.factory.createArraySliceCall(d,V);uue(n,P,Q,P)}}else{let Q=n.context.factory.createElementAccessExpression(d,V);uue(n,P,Q,P)}}}if(R&&n.emitBindingOrAssignment(n.createArrayBindingOrAssignmentPattern(R),d,I,u),N)for(let[V,P]of N)uue(n,P,V,P)}function NGr(n){let c=bV(n);if(!c||tf(c))return!0;let u=ike(n);if(u&&!WS(u))return!1;let d=Xhe(n);return d&&!xN(d)?!1:h5(c)?he(Ite(c),NGr):sr(c)}function j6i(n,c,u,d){return c=K6(n,c,!0,d),n.context.factory.createConditionalExpression(n.context.factory.createTypeCheck(c,"undefined"),void 0,u,void 0,c)}function z6i(n,c,u){let{factory:d}=n.context;if(kg(u)){let I=K6(n,w.checkDefined(xr(u.expression,n.visitor,tn)),!1,u);return n.context.factory.createElementAccessExpression(c,I)}else if(ZE(u)){let I=d.cloneNode(u);return n.context.factory.createElementAccessExpression(c,I)}else{let I=n.context.factory.createIdentifier(oo(u));return n.context.factory.createPropertyAccessExpression(c,I)}}function K6(n,c,u,d){if(sr(c)&&u)return c;{let I=n.context.factory.createTempVariable(void 0);return n.hoistTempVariables?(n.context.hoistVariableDeclaration(I),n.emitExpression(un(n.context.factory.createAssignment(I,c),d))):n.emitBindingOrAssignment(I,c,d,void 0),I}}function q6i(n,c){return w.assertEachNode(c,k3),n.createArrayBindingPattern(c)}function $6i(n,c){return w.assertEachNode(c,bX),n.createArrayLiteralExpression(Ot(c,n.converters.convertToArrayAssignmentElement))}function e7i(n,c){return w.assertEachNode(c,hl),n.createObjectBindingPattern(c)}function t7i(n,c){return w.assertEachNode(c,yX),n.createObjectLiteralExpression(Ot(c,n.converters.convertToObjectAssignmentElement))}function r7i(n,c){return n.createBindingElement(void 0,void 0,c)}function n7i(n){return n}function sxt(n,c,u=n.createThis()){let d=n.createAssignment(c,u),I=n.createExpressionStatement(d),h=n.createBlock([I],!1),b=n.createClassStaticBlockDeclaration(h);return kh(b).classThis=c,b}function gue(n){var c;if(!ef(n)||n.body.statements.length!==1)return!1;let u=n.body.statements[0];return Xf(u)&&Im(u.expression,!0)&&sr(u.expression.left)&&((c=n.emitNode)==null?void 0:c.classThis)===u.expression.left&&u.expression.right.kind===110}function c6e(n){var c;return!!((c=n.emitNode)!=null&&c.classThis)&&lr(n.members,gue)}function oxt(n,c,u,d){if(c6e(c))return c;let I=sxt(n,u,d);c.name&&Hg(I.body.statements[0],c.name);let h=n.createNodeArray([I,...c.members]);un(h,c.members);let b=Ec(c)?n.updateClassDeclaration(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,h):n.updateClassExpression(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,h);return kh(b).classThis=u,b}function Aue(n,c,u){let d=Np(LC(u));return(Ec(d)||hp(d))&&!d.name&&ya(d,2048)?n.createStringLiteral("default"):n.createStringLiteralFromNode(c)}function RGr(n,c,u){let{factory:d}=n;if(u!==void 0)return{assignedName:d.createStringLiteral(u),name:c};if(WS(c)||Gc(c))return{assignedName:d.createStringLiteralFromNode(c),name:c};if(WS(c.expression)&&!sr(c.expression))return{assignedName:d.createStringLiteralFromNode(c.expression),name:c};let I=d.getGeneratedNameForNode(c);n.hoistVariableDeclaration(I);let h=n.getEmitHelperFactory().createPropKeyHelper(c.expression),b=d.createAssignment(I,h),R=d.updateComputedPropertyName(c,b);return{assignedName:I,name:R}}function axt(n,c,u=n.factory.createThis()){let{factory:d}=n,I=n.getEmitHelperFactory().createSetFunctionNameHelper(u,c),h=d.createExpressionStatement(I),b=d.createBlock([h],!1),R=d.createClassStaticBlockDeclaration(b);return kh(R).assignedName=c,R}function j6(n){var c;if(!ef(n)||n.body.statements.length!==1)return!1;let u=n.body.statements[0];return Xf(u)&&Z6(u.expression,"___setFunctionName")&&u.expression.arguments.length>=2&&u.expression.arguments[1]===((c=n.emitNode)==null?void 0:c.assignedName)}function Oke(n){var c;return!!((c=n.emitNode)!=null&&c.assignedName)&&lr(n.members,j6)}function l6e(n){return!!n.name||Oke(n)}function Qke(n,c,u,d){if(Oke(c))return c;let{factory:I}=n,h=axt(n,u,d);c.name&&Hg(h.body.statements[0],c.name);let b=ke(c.members,gue)+1,R=c.members.slice(0,b),N=c.members.slice(b),V=I.createNodeArray([...R,h,...N]);return un(V,c.members),c=Ec(c)?I.updateClassDeclaration(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,V):I.updateClassExpression(c,c.modifiers,c.name,c.typeParameters,c.heritageClauses,V),kh(c).assignedName=u,c}function wte(n,c,u,d){if(d&&Eu(u)&&ume(u))return c;let{factory:I}=n,h=LC(c),b=rp(h)?ps(Qke(n,h,u),rp):n.getEmitHelperFactory().createSetFunctionNameHelper(h,u);return I.restoreOuterExpressions(c,b)}function i7i(n,c,u,d){let{factory:I}=n,{assignedName:h,name:b}=RGr(n,c.name,d),R=wte(n,c.initializer,h,u);return I.updatePropertyAssignment(c,b,R)}function s7i(n,c,u,d){let{factory:I}=n,h=d!==void 0?I.createStringLiteral(d):Aue(I,c.name,c.objectAssignmentInitializer),b=wte(n,c.objectAssignmentInitializer,h,u);return I.updateShorthandPropertyAssignment(c,c.name,b)}function o7i(n,c,u,d){let{factory:I}=n,h=d!==void 0?I.createStringLiteral(d):Aue(I,c.name,c.initializer),b=wte(n,c.initializer,h,u);return I.updateVariableDeclaration(c,c.name,c.exclamationToken,c.type,b)}function a7i(n,c,u,d){let{factory:I}=n,h=d!==void 0?I.createStringLiteral(d):Aue(I,c.name,c.initializer),b=wte(n,c.initializer,h,u);return I.updateParameterDeclaration(c,c.modifiers,c.dotDotDotToken,c.name,c.questionToken,c.type,b)}function c7i(n,c,u,d){let{factory:I}=n,h=d!==void 0?I.createStringLiteral(d):Aue(I,c.name,c.initializer),b=wte(n,c.initializer,h,u);return I.updateBindingElement(c,c.dotDotDotToken,c.propertyName,c.name,b)}function l7i(n,c,u,d){let{factory:I}=n,{assignedName:h,name:b}=RGr(n,c.name,d),R=wte(n,c.initializer,h,u);return I.updatePropertyDeclaration(c,c.modifiers,b,c.questionToken??c.exclamationToken,c.type,R)}function u7i(n,c,u,d){let{factory:I}=n,h=d!==void 0?I.createStringLiteral(d):Aue(I,c.left,c.right),b=wte(n,c.right,h,u);return I.updateBinaryExpression(c,c.left,c.operatorToken,b)}function g7i(n,c,u,d){let{factory:I}=n,h=d!==void 0?I.createStringLiteral(d):I.createStringLiteral(c.isExportEquals?"":"default"),b=wte(n,c.expression,h,u);return I.updateExportAssignment(c,c.modifiers,b)}function QE(n,c,u,d){switch(c.kind){case 303:return i7i(n,c,u,d);case 304:return s7i(n,c,u,d);case 260:return o7i(n,c,u,d);case 169:return a7i(n,c,u,d);case 208:return c7i(n,c,u,d);case 172:return l7i(n,c,u,d);case 226:return u7i(n,c,u,d);case 277:return g7i(n,c,u,d)}}var cxt=(n=>(n[n.LiftRestriction=0]="LiftRestriction",n[n.All=1]="All",n))(cxt||{});function u6e(n,c,u,d,I,h){let b=xr(c.tag,u,tn);w.assert(b);let R=[void 0],N=[],V=[],P=c.template;if(h===0&&!Nme(P))return ns(c,u,n);let{factory:Q}=n;if(cM(P))N.push(lxt(Q,P)),V.push(uxt(Q,P,d));else{N.push(lxt(Q,P.head)),V.push(uxt(Q,P.head,d));for(let re of P.templateSpans)N.push(lxt(Q,re.literal)),V.push(uxt(Q,re.literal,d)),R.push(w.checkDefined(xr(re.expression,u,tn)))}let te=n.getEmitHelperFactory().createTemplateObjectHelper(Q.createArrayLiteralExpression(N),Q.createArrayLiteralExpression(V));if(hm(d)){let re=Q.createUniqueName("templateObject");I(re),R[0]=Q.createLogicalOr(re,Q.createAssignment(re,te))}else R[0]=te;return Q.createCallExpression(b,void 0,R)}function lxt(n,c){return c.templateFlags&26656?n.createVoidZero():n.createStringLiteral(c.text)}function uxt(n,c,u){let d=c.rawText;if(d===void 0){w.assertIsDefined(u,"Template literal node is missing 'rawText' and does not have a source file. Possibly bad transform."),d=hG(u,c);let I=c.kind===15||c.kind===18;d=d.substring(1,d.length-(I?1:2))}return d=d.replace(/\r\n?/g,` +`),un(n.createStringLiteral(d),c)}var A7i=!1;function gxt(n){let{factory:c,getEmitHelperFactory:u,startLexicalEnvironment:d,resumeLexicalEnvironment:I,endLexicalEnvironment:h,hoistVariableDeclaration:b}=n,R=n.getEmitResolver(),N=n.getCompilerOptions(),V=sA(N),P=D_(N),Q=!!N.experimentalDecorators,te=N.emitDecoratorMetadata?dxt(n):void 0,re=n.onEmitNode,ue=n.onSubstituteNode;n.onEmitNode=Ug,n.onSubstituteNode=_f,n.enableSubstitution(211),n.enableSubstitution(212);let Ae,de,Be,Fe,Ne,Me,De,lt;return Le;function Le(tt){return tt.kind===308?je(tt):st(tt)}function je(tt){return c.createBundle(tt.sourceFiles.map(st))}function st(tt){if(tt.isDeclarationFile)return tt;Ae=tt;let gr=nt(tt,Pt);return BN(gr,n.readEmitHelpers()),Ae=void 0,gr}function nt(tt,gr){let mn=Fe,Ri=Ne,Yo=Me;qe(tt);let fi=gr(tt);return Fe!==mn&&(Ne=Ri),Fe=mn,Me=Yo,fi}function qe(tt){switch(tt.kind){case 307:case 269:case 268:case 241:Fe=tt,Ne=void 0;break;case 263:case 262:if(ya(tt,128))break;tt.name?Re(tt):w.assert(tt.kind===263||ya(tt,2048));break}}function it(tt){return nt(tt,It)}function It(tt){return tt.transformFlags&1?mr(tt):tt}function dt(tt){return nt(tt,Tt)}function Tt(tt){switch(tt.kind){case 272:case 271:case 277:case 278:return He(tt);default:return It(tt)}}function St(tt){let gr=zc(tt);if(gr===tt||rf(tt))return!1;if(!gr||gr.kind!==tt.kind)return!0;switch(tt.kind){case 272:if(w.assertNode(gr,hI),tt.importClause!==gr.importClause||tt.attributes!==gr.attributes)return!0;break;case 271:if(w.assertNode(gr,mm),tt.name!==gr.name||tt.isTypeOnly!==gr.isTypeOnly||tt.moduleReference!==gr.moduleReference&&(T_(tt.moduleReference)||T_(gr.moduleReference)))return!0;break;case 278:if(w.assertNode(gr,hC),tt.exportClause!==gr.exportClause||tt.attributes!==gr.attributes)return!0;break}return!1}function He(tt){if(St(tt))return tt.transformFlags&1?ns(tt,it,n):tt;switch(tt.kind){case 272:return Ii(tt);case 271:return Gs(tt);case 277:return Vi(tt);case 278:return xo(tt);default:w.fail("Unhandled ellided statement")}}function ht(tt){return nt(tt,Et)}function Et(tt){if(!(tt.kind===278||tt.kind===272||tt.kind===273||tt.kind===271&&tt.moduleReference.kind===283))return tt.transformFlags&1||ya(tt,32)?mr(tt):tt}function Kt(tt){return gr=>nt(gr,mn=>Nt(mn,tt))}function Nt(tt,gr){switch(tt.kind){case 176:return gs(tt);case 172:return ni(tt,gr);case 177:return ju(tt,gr);case 178:return Bi(tt,gr);case 174:return Rc(tt,gr);case 175:return ns(tt,it,n);case 240:return tt;case 181:return;default:return w.failBadSyntaxKind(tt)}}function Lt(tt){return gr=>nt(gr,mn=>kt(mn,tt))}function kt(tt,gr){switch(tt.kind){case 303:case 304:case 305:return it(tt);case 177:return ju(tt,gr);case 178:return Bi(tt,gr);case 174:return Rc(tt,gr);default:return w.failBadSyntaxKind(tt)}}function Zt(tt){return FC(tt)?void 0:it(tt)}function Dr(tt){return Ag(tt)?void 0:it(tt)}function jt(tt){if(!FC(tt)&&!(P5(tt.kind)&28895)&&!(de&&tt.kind===95))return tt}function mr(tt){if(Cc(tt)&&ya(tt,128))return c.createNotEmittedStatement(tt);switch(tt.kind){case 95:case 90:return de?void 0:tt;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:return;case 265:return c.createNotEmittedStatement(tt);case 270:return;case 264:return c.createNotEmittedStatement(tt);case 263:return $n(tt);case 231:return bi(tt);case 298:return _s(tt);case 233:return Pu(tt);case 210:return Vr(tt);case 176:case 172:case 174:case 177:case 178:case 175:return w.fail("Class and object literal elements must be visited with their respective visitors");case 262:return vA(tt);case 218:return kr(tt);case 219:return en(tt);case 169:return ct(tt);case 217:return Mt(tt);case 216:case 234:return _r(tt);case 238:return ti(tt);case 213:return cr(tt);case 214:return kn(tt);case 215:return Pn(tt);case 235:return Pr(tt);case 266:return Pe(tt);case 243:return rn(tt);case 260:return br(tt);case 267:return dn(tt);case 271:return Gs(tt);case 285:return an(tt);case 286:return Kr(tt);default:return ns(tt,it,n)}}function Pt(tt){let gr=x_(N,"alwaysStrict")&&!(hm(tt)&&P>=5)&&!fa(tt);return c.updateSourceFile(tt,z8e(tt.statements,dt,n,0,gr))}function Vr(tt){return c.updateObjectLiteralExpression(tt,ws(tt.properties,Lt(tt),vB))}function Hr(tt){let gr=0;lr(s6e(tt,!0,!0))&&(gr|=1);let mn=xv(tt);return mn&&LC(mn.expression).kind!==106&&(gr|=64),Gx(Q,tt)&&(gr|=2),Q8(Q,tt)&&(gr|=4),ri(tt)?gr|=8:Hd(tt)?gr|=32:UA(tt)&&(gr|=16),gr}function pr(tt){return!!(tt.transformFlags&8192)}function zr(tt){return LE(tt)||lr(tt.typeParameters)||lr(tt.heritageClauses,pr)||lr(tt.members,pr)}function $n(tt){let gr=Hr(tt),mn=V<=1&&!!(gr&7);if(!zr(tt)&&!Gx(Q,tt)&&!ri(tt))return c.updateClassDeclaration(tt,ws(tt.modifiers,jt,Ag),tt.name,void 0,ws(tt.heritageClauses,it,OE),ws(tt.members,Kt(tt),nC));mn&&n.startLexicalEnvironment();let Ri=mn||gr&8,Yo=Ri?ws(tt.modifiers,Dr,Rp):ws(tt.modifiers,it,Rp);gr&2&&(Yo=Ns(Yo,tt));let Xo=Ri&&!tt.name||gr&4||gr&1?tt.name??c.getGeneratedNameForNode(tt):tt.name,_c=c.updateClassDeclaration(tt,Yo,Xo,void 0,ws(tt.heritageClauses,it,OE),Pi(tt)),ic=wg(tt);gr&1&&(ic|=64),ao(_c,ic);let Pg;if(mn){let sf=[_c],qC=Jce(Uu(Ae.text,tt.members.end),20),Jf=c.getInternalName(tt),Fm=c.createPartiallyEmittedExpression(Jf);o4(Fm,qC.end),ao(Fm,3072);let of=c.createReturnStatement(Fm);S6(of,qC.pos),ao(of,3840),sf.push(of),GS(sf,n.endLexicalEnvironment());let Zm=c.createImmediatelyInvokedArrowFunction(sf);ite(Zm,1);let Jb=c.createVariableDeclaration(c.getLocalName(tt,!1,!1),void 0,void 0,Zm);Ho(Jb,tt);let FI=c.createVariableStatement(void 0,c.createVariableDeclarationList([Jb],1));Ho(FI,tt),hA(FI,tt),Hg(FI,rD(tt)),u0(FI),Pg=FI}else Pg=_c;if(Ri){if(gr&8)return[Pg,Gd(tt)];if(gr&32)return[Pg,c.createExportDefault(c.getLocalName(tt,!1,!0))];if(gr&16)return[Pg,c.createExternalModuleExport(c.getDeclarationName(tt,!1,!0))]}return Pg}function bi(tt){let gr=ws(tt.modifiers,Dr,Rp);return Gx(Q,tt)&&(gr=Ns(gr,tt)),c.updateClassExpression(tt,gr,tt.name,void 0,ws(tt.heritageClauses,it,OE),Pi(tt))}function Pi(tt){let gr=ws(tt.members,Kt(tt),nC),mn,Ri=pN(tt),Yo=Ri&&Gt(Ri.parameters,fi=>Zn(fi,Ri));if(Yo)for(let fi of Yo){let Xo=c.createPropertyDeclaration(void 0,fi.name,void 0,void 0,void 0);Ho(Xo,fi),mn=Yr(mn,Xo)}return mn?(mn=ai(mn,gr),un(c.createNodeArray(mn),tt.members)):gr}function Ns(tt,gr){let mn=jn(gr,gr);if(lr(mn)){let Ri=[];ai(Ri,Lf(tt,Jhe)),ai(Ri,Gt(tt,FC)),ai(Ri,mn),ai(Ri,Gt(yE(tt,Jhe),Ag)),tt=un(c.createNodeArray(Ri),tt)}return tt}function gi(tt,gr,mn){if(va(mn)&&lme(Q,gr,mn)){let Ri=jn(gr,mn);if(lr(Ri)){let Yo=[];ai(Yo,Gt(tt,FC)),ai(Yo,Ri),ai(Yo,Gt(tt,Ag)),tt=un(c.createNodeArray(Yo),tt)}}return tt}function jn(tt,gr){if(Q)return A7i?Bc(tt,gr):xs(tt,gr)}function xs(tt,gr){if(te){let mn;if(xi(tt)){let Ri=u().createMetadataHelper("design:type",te.serializeTypeOfNode({currentLexicalScope:Fe,currentNameScope:gr},tt,gr));mn=Yr(mn,c.createDecorator(Ri))}if(Wl(tt)){let Ri=u().createMetadataHelper("design:paramtypes",te.serializeParameterTypesOfNode({currentLexicalScope:Fe,currentNameScope:gr},tt,gr));mn=Yr(mn,c.createDecorator(Ri))}if(rc(tt)){let Ri=u().createMetadataHelper("design:returntype",te.serializeReturnTypeOfNode({currentLexicalScope:Fe,currentNameScope:gr},tt));mn=Yr(mn,c.createDecorator(Ri))}return mn}}function Bc(tt,gr){if(te){let mn;if(xi(tt)){let Ri=c.createPropertyAssignment("type",c.createArrowFunction(void 0,void 0,[],void 0,c.createToken(39),te.serializeTypeOfNode({currentLexicalScope:Fe,currentNameScope:gr},tt,gr)));mn=Yr(mn,Ri)}if(Wl(tt)){let Ri=c.createPropertyAssignment("paramTypes",c.createArrowFunction(void 0,void 0,[],void 0,c.createToken(39),te.serializeParameterTypesOfNode({currentLexicalScope:Fe,currentNameScope:gr},tt,gr)));mn=Yr(mn,Ri)}if(rc(tt)){let Ri=c.createPropertyAssignment("returnType",c.createArrowFunction(void 0,void 0,[],void 0,c.createToken(39),te.serializeReturnTypeOfNode({currentLexicalScope:Fe,currentNameScope:gr},tt)));mn=Yr(mn,Ri)}if(mn){let Ri=u().createMetadataHelper("design:typeinfo",c.createObjectLiteralExpression(mn,!0));return[c.createDecorator(Ri)]}}}function xi(tt){let gr=tt.kind;return gr===174||gr===177||gr===178||gr===172}function rc(tt){return tt.kind===174}function Wl(tt){switch(tt.kind){case 263:case 231:return pN(tt)!==void 0;case 174:case 177:case 178:return!0}return!1}function gl(tt,gr){let mn=tt.name;return Gc(mn)?c.createIdentifier(""):kg(mn)?gr&&!xN(mn.expression)?c.getGeneratedNameForNode(mn):mn.expression:sr(mn)?c.createStringLiteral(oo(mn)):c.cloneNode(mn)}function mc(tt){let gr=tt.name;if(kg(gr)&&(!CC(tt)&&Me||LE(tt)&&Q)){let mn=xr(gr.expression,it,tn);w.assert(mn);let Ri=x1(mn);if(!xN(Ri)){let Yo=c.getGeneratedNameForNode(gr);return b(Yo),c.updateComputedPropertyName(gr,c.createAssignment(Yo,mn))}}return w.checkDefined(xr(gr,it,RI))}function _s(tt){if(tt.token!==119)return ns(tt,it,n)}function Pu(tt){return c.updateExpressionWithTypeArguments(tt,w.checkDefined(xr(tt.expression,it,N_)),void 0)}function ir(tt){return!Tf(tt.body)}function ni(tt,gr){let mn=tt.flags&33554432||ya(tt,64);if(mn&&!(Q&&LE(tt)))return;let Ri=va(gr)?mn?ws(tt.modifiers,Dr,Rp):ws(tt.modifiers,it,Rp):ws(tt.modifiers,Zt,Rp);return Ri=gi(Ri,tt,gr),mn?c.updatePropertyDeclaration(tt,vi(Ri,c.createModifiersFromModifierFlags(128)),w.checkDefined(xr(tt.name,it,RI)),void 0,void 0,void 0):c.updatePropertyDeclaration(tt,Ri,mc(tt),void 0,void 0,xr(tt.initializer,it,tn))}function gs(tt){if(ir(tt))return c.updateConstructorDeclaration(tt,void 0,_I(tt.parameters,it,n),za(tt.body,tt))}function Hs(tt,gr,mn,Ri,Yo,fi){let Xo=Ri[Yo],_c=gr[Xo];if(ai(tt,ws(gr,it,Cc,mn,Xo-mn)),ab(_c)){let ic=[];Hs(ic,_c.tryBlock.statements,0,Ri,Yo+1,fi);let Pg=c.createNodeArray(ic);un(Pg,_c.tryBlock.statements),tt.push(c.updateTryStatement(_c,c.updateBlock(_c.tryBlock,ic),xr(_c.catchClause,it,fM),xr(_c.finallyBlock,it,hc)))}else ai(tt,ws(gr,it,Cc,Xo,1)),ai(tt,fi);ai(tt,ws(gr,it,Cc,Xo+1))}function za(tt,gr){let mn=gr&&Gt(gr.parameters,ic=>Zn(ic,gr));if(!lr(mn))return V2(tt,it,n);let Ri=[];I();let Yo=c.copyPrologue(tt.statements,Ri,!1,it),fi=Vke(tt.statements,Yo),Xo=tr(mn,nc);fi.length?Hs(Ri,tt.statements,Yo,fi,0,Xo):(ai(Ri,Xo),ai(Ri,ws(tt.statements,it,Cc,Yo))),Ri=c.mergeLexicalEnvironment(Ri,h());let _c=c.createBlock(un(c.createNodeArray(Ri),tt.statements),!0);return un(_c,tt),Ho(_c,tt),_c}function nc(tt){let gr=tt.name;if(!sr(gr))return;let mn=GA(un(c.cloneNode(gr),gr),gr.parent);ao(mn,3168);let Ri=GA(un(c.cloneNode(gr),gr),gr.parent);return ao(Ri,3072),u0(nte(un(Ho(c.createExpressionStatement(c.createAssignment(un(c.createPropertyAccessExpression(c.createThis(),mn),tt.name),Ri)),tt),NZ(tt,-1))))}function Rc(tt,gr){if(!(tt.transformFlags&1))return tt;if(!ir(tt))return;let mn=va(gr)?ws(tt.modifiers,it,Rp):ws(tt.modifiers,Zt,Rp);return mn=gi(mn,tt,gr),c.updateMethodDeclaration(tt,mn,tt.asteriskToken,mc(tt),void 0,void 0,_I(tt.parameters,it,n),void 0,V2(tt.body,it,n))}function lg(tt){return!(Tf(tt.body)&&ya(tt,64))}function ju(tt,gr){if(!(tt.transformFlags&1))return tt;if(!lg(tt))return;let mn=va(gr)?ws(tt.modifiers,it,Rp):ws(tt.modifiers,Zt,Rp);return mn=gi(mn,tt,gr),c.updateGetAccessorDeclaration(tt,mn,mc(tt),_I(tt.parameters,it,n),void 0,V2(tt.body,it,n)||c.createBlock([]))}function Bi(tt,gr){if(!(tt.transformFlags&1))return tt;if(!lg(tt))return;let mn=va(gr)?ws(tt.modifiers,it,Rp):ws(tt.modifiers,Zt,Rp);return mn=gi(mn,tt,gr),c.updateSetAccessorDeclaration(tt,mn,mc(tt),_I(tt.parameters,it,n),V2(tt.body,it,n)||c.createBlock([]))}function vA(tt){if(!ir(tt))return c.createNotEmittedStatement(tt);let gr=c.updateFunctionDeclaration(tt,ws(tt.modifiers,jt,Ag),tt.asteriskToken,tt.name,void 0,_I(tt.parameters,it,n),void 0,V2(tt.body,it,n)||c.createBlock([]));if(ri(tt)){let mn=[gr];return Nl(mn,tt),mn}return gr}function kr(tt){return ir(tt)?c.updateFunctionExpression(tt,ws(tt.modifiers,jt,Ag),tt.asteriskToken,tt.name,void 0,_I(tt.parameters,it,n),void 0,V2(tt.body,it,n)||c.createBlock([])):c.createOmittedExpression()}function en(tt){return c.updateArrowFunction(tt,ws(tt.modifiers,jt,Ag),void 0,_I(tt.parameters,it,n),void 0,tt.equalsGreaterThanToken,V2(tt.body,it,n))}function ct(tt){if(oV(tt))return;let gr=c.updateParameterDeclaration(tt,ws(tt.modifiers,mn=>FC(mn)?it(mn):void 0,Rp),tt.dotDotDotToken,w.checkDefined(xr(tt.name,it,hZ)),void 0,void 0,xr(tt.initializer,it,tn));return gr!==tt&&(hA(gr,tt),un(gr,QS(tt)),Hg(gr,QS(tt)),ao(gr.name,64)),gr}function rn(tt){if(ri(tt)){let gr=p6(tt.declarationList);return gr.length===0?void 0:un(c.createExpressionStatement(c.inlineExpressions(Ot(gr,wt))),tt)}else return ns(tt,it,n)}function wt(tt){let gr=tt.name;return fu(gr)?y4(tt,it,n,0,!1,hf):un(c.createAssignment(qc(gr),w.checkDefined(xr(tt.initializer,it,tn))),tt)}function br(tt){let gr=c.updateVariableDeclaration(tt,w.checkDefined(xr(tt.name,it,hZ)),void 0,void 0,xr(tt.initializer,it,tn));return tt.type&&Ixe(gr.name,tt.type),gr}function Mt(tt){let gr=LC(tt.expression,-7);if(kE(gr)||kG(gr)){let mn=xr(tt.expression,it,tn);return w.assert(mn),c.createPartiallyEmittedExpression(mn,tt)}return ns(tt,it,n)}function _r(tt){let gr=xr(tt.expression,it,tn);return w.assert(gr),c.createPartiallyEmittedExpression(gr,tt)}function Pr(tt){let gr=xr(tt.expression,it,N_);return w.assert(gr),c.createPartiallyEmittedExpression(gr,tt)}function ti(tt){let gr=xr(tt.expression,it,tn);return w.assert(gr),c.createPartiallyEmittedExpression(gr,tt)}function cr(tt){return c.updateCallExpression(tt,w.checkDefined(xr(tt.expression,it,tn)),void 0,ws(tt.arguments,it,tn))}function kn(tt){return c.updateNewExpression(tt,w.checkDefined(xr(tt.expression,it,tn)),void 0,ws(tt.arguments,it,tn))}function Pn(tt){return c.updateTaggedTemplateExpression(tt,w.checkDefined(xr(tt.tag,it,tn)),void 0,w.checkDefined(xr(tt.template,it,k1)))}function an(tt){return c.updateJsxSelfClosingElement(tt,w.checkDefined(xr(tt.tagName,it,Z3)),void 0,w.checkDefined(xr(tt.attributes,it,pM)))}function Kr(tt){return c.updateJsxOpeningElement(tt,w.checkDefined(xr(tt.tagName,it,Z3)),void 0,w.checkDefined(xr(tt.attributes,it,pM)))}function wn(tt){return!dc(tt)||gV(N)}function Pe(tt){if(!wn(tt))return c.createNotEmittedStatement(tt);let gr=[],mn=4,Ri=Vt(gr,tt);Ri&&(P!==4||Fe!==Ae)&&(mn|=1024);let Yo=Lc(tt),fi=jm(tt),Xo=ri(tt)?c.getExternalModuleOrNamespaceExportName(Be,tt,!1,!0):c.getDeclarationName(tt,!1,!0),_c=c.createLogicalOr(Xo,c.createAssignment(Xo,c.createObjectLiteralExpression()));if(ri(tt)){let Pg=c.getLocalName(tt,!1,!0);_c=c.createAssignment(Pg,_c)}let ic=c.createExpressionStatement(c.createCallExpression(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,Yo)],void 0,ar(tt,fi)),void 0,[_c]));return Ho(ic,tt),Ri&&(KS(ic,void 0),iM(ic,void 0)),un(ic,tt),JS(ic,mn),gr.push(ic),gr}function ar(tt,gr){let mn=Be;Be=gr;let Ri=[];d();let Yo=Ot(tt.members,sn);return GS(Ri,h()),ai(Ri,Yo),Be=mn,c.createBlock(un(c.createNodeArray(Ri),tt.members),!0)}function sn(tt){let gr=gl(tt,!1),mn=R.getEnumMemberValue(tt),Ri=Qe(tt,mn?.value),Yo=c.createAssignment(c.createElementAccessExpression(Be,gr),Ri),fi=typeof mn?.value=="string"||mn?.isSyntacticallyString?Yo:c.createAssignment(c.createElementAccessExpression(Be,Yo),gr);return un(c.createExpressionStatement(un(fi,tt)),tt)}function Qe(tt,gr){return gr!==void 0?typeof gr=="string"?c.createStringLiteral(gr):gr<0?c.createPrefixUnaryExpression(41,c.createNumericLiteral(-gr)):c.createNumericLiteral(gr):(xf(),tt.initializer?w.checkDefined(xr(tt.initializer,it,tn)):c.createVoidZero())}function ur(tt){let gr=zc(tt,mC);return gr?K8e(gr,gV(N)):!0}function Re(tt){Ne||(Ne=new Map);let gr=bt(tt);Ne.has(gr)||Ne.set(gr,tt)}function Jt(tt){if(Ne){let gr=bt(tt);return Ne.get(gr)===tt}return!0}function bt(tt){return w.assertNode(tt.name,sr),tt.name.escapedText}function Vt(tt,gr){let mn=c.createVariableDeclaration(c.getLocalName(gr,!1,!0)),Ri=Fe.kind===307?0:1,Yo=c.createVariableStatement(ws(gr.modifiers,jt,Ag),c.createVariableDeclarationList([mn],Ri));return Ho(mn,gr),KS(mn,void 0),iM(mn,void 0),Ho(Yo,gr),Re(gr),Jt(gr)?(gr.kind===266?Hg(Yo.declarationList,gr):Hg(Yo,gr),hA(Yo,gr),JS(Yo,2048),tt.push(Yo),!0):!1}function dn(tt){if(!ur(tt))return c.createNotEmittedStatement(tt);w.assertNode(tt.name,sr,"A TypeScript namespace should have an Identifier name."),I0();let gr=[],mn=4,Ri=Vt(gr,tt);Ri&&(P!==4||Fe!==Ae)&&(mn|=1024);let Yo=Lc(tt),fi=jm(tt),Xo=ri(tt)?c.getExternalModuleOrNamespaceExportName(Be,tt,!1,!0):c.getDeclarationName(tt,!1,!0),_c=c.createLogicalOr(Xo,c.createAssignment(Xo,c.createObjectLiteralExpression()));if(ri(tt)){let Pg=c.getLocalName(tt,!1,!0);_c=c.createAssignment(Pg,_c)}let ic=c.createExpressionStatement(c.createCallExpression(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,Yo)],void 0,On(tt,fi)),void 0,[_c]));return Ho(ic,tt),Ri&&(KS(ic,void 0),iM(ic,void 0)),un(ic,tt),JS(ic,mn),gr.push(ic),gr}function On(tt,gr){let mn=Be,Ri=de,Yo=Ne;Be=gr,de=tt,Ne=void 0;let fi=[];d();let Xo,_c;if(tt.body)if(tt.body.kind===268)nt(tt.body,Pg=>ai(fi,ws(Pg.statements,ht,Cc))),Xo=tt.body.statements,_c=tt.body;else{let Pg=dn(tt.body);Pg&&(Na(Pg)?ai(fi,Pg):fi.push(Pg));let sf=Qn(tt).body;Xo=NZ(sf.statements,-1)}GS(fi,h()),Be=mn,de=Ri,Ne=Yo;let ic=c.createBlock(un(c.createNodeArray(fi),Xo),!0);return un(ic,_c),(!tt.body||tt.body.kind!==268)&&ao(ic,wg(ic)|3072),ic}function Qn(tt){if(tt.body.kind===267)return Qn(tt.body)||tt.body}function Ii(tt){if(!tt.importClause)return tt;if(tt.importClause.isTypeOnly)return;let gr=xr(tt.importClause,ds,oT);return gr?c.updateImportDeclaration(tt,void 0,gr,tt.moduleSpecifier,tt.attributes):void 0}function ds(tt){w.assert(!tt.isTypeOnly);let gr=yt(tt)?tt.name:void 0,mn=xr(tt.namedBindings,Es,v$);return gr||mn?c.updateImportClause(tt,!1,gr,mn):void 0}function Es(tt){if(tt.kind===274)return yt(tt)?tt:void 0;{let gr=N.verbatimModuleSyntax,mn=ws(tt.elements,so,yy);return gr||lr(mn)?c.updateNamedImports(tt,mn):void 0}}function so(tt){return!tt.isTypeOnly&&yt(tt)?tt:void 0}function Vi(tt){return N.verbatimModuleSyntax||R.isValueAliasDeclaration(tt)?ns(tt,it,n):void 0}function xo(tt){if(tt.isTypeOnly)return;if(!tt.exportClause||sD(tt.exportClause))return tt;let gr=!!N.verbatimModuleSyntax,mn=xr(tt.exportClause,Ri=>sa(Ri,gr),f8);return mn?c.updateExportDeclaration(tt,void 0,tt.isTypeOnly,mn,tt.moduleSpecifier,tt.attributes):void 0}function Yc(tt,gr){let mn=ws(tt.elements,Ra,l0);return gr||lr(mn)?c.updateNamedExports(tt,mn):void 0}function Il(tt){return c.updateNamespaceExport(tt,w.checkDefined(xr(tt.name,it,sr)))}function sa(tt,gr){return sD(tt)?Il(tt):Yc(tt,gr)}function Ra(tt){return!tt.isTypeOnly&&(N.verbatimModuleSyntax||R.isValueAliasDeclaration(tt))?tt:void 0}function ki(tt){return yt(tt)||!hm(Ae)&&R.isTopLevelValueImportEqualsWithEntityName(tt)}function Gs(tt){if(tt.isTypeOnly)return;if(BZ(tt))return yt(tt)?ns(tt,it,n):void 0;if(!ki(tt))return;let gr=Mhe(c,tt.moduleReference);return ao(gr,7168),UA(tt)||!ri(tt)?Ho(un(c.createVariableStatement(ws(tt.modifiers,jt,Ag),c.createVariableDeclarationList([Ho(c.createVariableDeclaration(tt.name,void 0,void 0,gr),tt)])),tt),tt):Ho(ug(tt.name,gr,tt),tt)}function ri(tt){return de!==void 0&&ya(tt,32)}function _u(tt){return de===void 0&&ya(tt,32)}function UA(tt){return _u(tt)&&!ya(tt,2048)}function Hd(tt){return _u(tt)&&ya(tt,2048)}function Gd(tt){let gr=c.createAssignment(c.getExternalModuleOrNamespaceExportName(Be,tt,!1,!0),c.getLocalName(tt));Hg(gr,Z1(tt.name?tt.name.pos:tt.pos,tt.end));let mn=c.createExpressionStatement(gr);return Hg(mn,Z1(-1,tt.end)),mn}function Nl(tt,gr){tt.push(Gd(gr))}function ug(tt,gr,mn){return un(c.createExpressionStatement(c.createAssignment(c.getNamespaceMemberName(Be,tt,!1,!0),gr)),mn)}function hf(tt,gr,mn){return un(c.createAssignment(qc(tt),gr),mn)}function qc(tt){return c.getNamespaceMemberName(Be,tt,!1,!0)}function Lc(tt){let gr=c.getGeneratedNameForNode(tt);return Hg(gr,tt.name),gr}function jm(tt){return c.getGeneratedNameForNode(tt)}function xf(){De&8||(De|=8,n.enableSubstitution(80))}function I0(){De&2||(De|=2,n.enableSubstitution(80),n.enableSubstitution(304),n.enableEmitNotification(267))}function kI(tt){return Np(tt).kind===267}function o_(tt){return Np(tt).kind===266}function Ug(tt,gr,mn){let Ri=lt,Yo=Ae;Fc(gr)&&(Ae=gr),De&2&&kI(gr)&&(lt|=2),De&8&&o_(gr)&&(lt|=8),re(tt,gr,mn),lt=Ri,Ae=Yo}function _f(tt,gr){return gr=ue(tt,gr),tt===1?qA(gr):F_(gr)?Yd(gr):gr}function Yd(tt){if(De&2){let gr=tt.name,mn=uI(gr);if(mn){if(tt.objectAssignmentInitializer){let Ri=c.createAssignment(mn,tt.objectAssignmentInitializer);return un(c.createPropertyAssignment(gr,Ri),tt)}return un(c.createPropertyAssignment(gr,mn),tt)}}return tt}function qA(tt){switch(tt.kind){case 80:return di(tt);case 211:return U0(tt);case 212:return K0(tt)}return tt}function di(tt){return uI(tt)||tt}function uI(tt){if(De<&&!Cp(tt)&&!VG(tt)){let gr=R.getReferencedExportContainer(tt,!1);if(gr&&gr.kind!==307&&(lt&2&&gr.kind===267||lt&8&&gr.kind===266))return un(c.createPropertyAccessExpression(c.getGeneratedNameForNode(gr),tt),tt)}}function U0(tt){return nf(tt)}function K0(tt){return nf(tt)}function Xb(tt){return tt.replace(/\*\//g,"*_/")}function nf(tt){let gr=GI(tt);if(gr!==void 0){fxe(tt,gr);let mn=typeof gr=="string"?c.createStringLiteral(gr):gr<0?c.createPrefixUnaryExpression(41,c.createNumericLiteral(-gr)):c.createNumericLiteral(gr);if(!N.removeComments){let Ri=Np(tt,mp);xle(mn,3,` ${Xb(Nf(Ri))} `)}return mn}return tt}function GI(tt){if(!VE(N))return fo(tt)||_A(tt)?R.getConstantValue(tt):void 0}function yt(tt){return N.verbatimModuleSyntax||io(tt)||R.isReferencedAliasDeclaration(tt)}}function Axt(n){let{factory:c,getEmitHelperFactory:u,hoistVariableDeclaration:d,endLexicalEnvironment:I,startLexicalEnvironment:h,resumeLexicalEnvironment:b,addBlockScopedVariable:R}=n,N=n.getEmitResolver(),V=n.getCompilerOptions(),P=sA(V),Q=Wee(V),te=!!V.experimentalDecorators,re=!Q,ue=Q&&P<9,Ae=re||ue,de=P<9,Be=P<99?-1:Q?0:3,Fe=P<9,Ne=Fe&&P>=2,Me=Ae||de||Be===-1,De=n.onSubstituteNode;n.onSubstituteNode=U0;let lt=n.onEmitNode;n.onEmitNode=uI;let Le=!1,je,st,nt,qe,it,It=new Map,dt=new Set,Tt,St,He=!1,ht=!1;return uT(n,Et);function Et(yt){if(yt.isDeclarationFile||(it=void 0,Le=!!(FE(yt)&32),!Me&&!Le))return yt;let tt=ns(yt,Nt,n);return BN(tt,n.readEmitHelpers()),tt}function Kt(yt){switch(yt.kind){case 129:return ni()?void 0:yt;default:return $s(yt,Ag)}}function Nt(yt){if(!(yt.transformFlags&16777216)&&!(yt.transformFlags&134234112))return yt;switch(yt.kind){case 129:return w.fail("Use `modifierVisitor` instead.");case 263:return Kr(yt);case 231:return Pe(yt);case 175:case 172:return w.fail("Use `classElementVisitor` instead.");case 303:return pr(yt);case 243:return zr(yt);case 260:return $n(yt);case 169:return bi(yt);case 208:return Pi(yt);case 277:return Ns(yt);case 81:return Vr(yt);case 211:return lg(yt);case 212:return ju(yt);case 224:case 225:return Bi(yt,!1);case 226:return Mt(yt,!1);case 217:return Pr(yt,!1);case 213:return ct(yt);case 244:return kr(yt);case 215:return rn(yt);case 248:return vA(yt);case 110:return Qe(yt);case 262:case 218:return rc(void 0,Lt,yt);case 176:case 174:case 177:case 178:return rc(yt,Lt,yt);default:return Lt(yt)}}function Lt(yt){return ns(yt,Nt,n)}function kt(yt){switch(yt.kind){case 224:case 225:return Bi(yt,!0);case 226:return Mt(yt,!0);case 355:return _r(yt,!0);case 217:return Pr(yt,!0);default:return Nt(yt)}}function Zt(yt){switch(yt.kind){case 298:return ns(yt,Zt,n);case 233:return Pn(yt);default:return Nt(yt)}}function Dr(yt){switch(yt.kind){case 210:case 209:return di(yt);default:return Nt(yt)}}function jt(yt){switch(yt.kind){case 176:return rc(yt,xs,yt);case 177:case 178:case 174:return rc(yt,xi,yt);case 172:return rc(yt,gs,yt);case 175:return rc(yt,sn,yt);case 167:return jn(yt);case 240:return yt;default:return Rp(yt)?Kt(yt):Nt(yt)}}function mr(yt){switch(yt.kind){case 167:return jn(yt);default:return Nt(yt)}}function Pt(yt){switch(yt.kind){case 172:return ir(yt);case 177:case 178:return jt(yt);default:w.assertMissingNode(yt,"Expected node to either be a PropertyDeclaration, GetAccessorDeclaration, or SetAccessorDeclaration");break}}function Vr(yt){return!de||Cc(yt.parent)?yt:Ho(c.createIdentifier(""),yt)}function Hr(yt){let tt=Lc(yt.left);if(tt){let gr=xr(yt.right,Nt,tn);return Ho(u().createClassPrivateFieldInHelper(tt.brandCheckIdentifier,gr),yt)}return ns(yt,Nt,n)}function pr(yt){return rb(yt,br)&&(yt=QE(n,yt)),ns(yt,Nt,n)}function zr(yt){let tt=qe;qe=[];let gr=ns(yt,Nt,n),mn=lr(qe)?[gr,...qe]:gr;return qe=tt,mn}function $n(yt){return rb(yt,br)&&(yt=QE(n,yt)),ns(yt,Nt,n)}function bi(yt){return rb(yt,br)&&(yt=QE(n,yt)),ns(yt,Nt,n)}function Pi(yt){return rb(yt,br)&&(yt=QE(n,yt)),ns(yt,Nt,n)}function Ns(yt){return rb(yt,br)&&(yt=QE(n,yt,!0,yt.isExportEquals?"":"default")),ns(yt,Nt,n)}function gi(yt){return lr(nt)&&(ZC(yt)?(nt.push(yt.expression),yt=c.updateParenthesizedExpression(yt,c.inlineExpressions(nt))):(nt.push(yt),yt=c.inlineExpressions(nt)),nt=void 0),yt}function jn(yt){let tt=xr(yt.expression,Nt,tn);return c.updateComputedPropertyName(yt,gi(tt))}function xs(yt){return Tt?Jt(yt,Tt):Lt(yt)}function Bc(yt){return!!(de||CC(yt)&&FE(yt)&32)}function xi(yt){if(w.assert(!LE(yt)),!Dh(yt)||!Bc(yt))return ns(yt,jt,n);let tt=Lc(yt.name);if(w.assert(tt,"Undeclared private name for property declaration."),!tt.isValid)return yt;let gr=Wl(yt);gr&&Gs().push(c.createAssignment(gr,c.createFunctionExpression(Gt(yt.modifiers,mn=>Ag(mn)&&!iT(mn)&&!Xxe(mn)),yt.asteriskToken,gr,void 0,_I(yt.parameters,Nt,n),void 0,V2(yt.body,Nt,n))))}function rc(yt,tt,gr){if(yt!==St){let mn=St;St=yt;let Ri=tt(gr);return St=mn,Ri}return tt(gr)}function Wl(yt){w.assert(Gc(yt.name));let tt=Lc(yt.name);if(w.assert(tt,"Undeclared private name for property declaration."),tt.kind==="m")return tt.methodName;if(tt.kind==="a"){if(Rv(yt))return tt.getterName;if(xh(yt))return tt.setterName}}function gl(){let yt=Ra();return yt.classThis??yt.classConstructor??Tt?.name}function mc(yt){let tt=US(yt),gr=Px(yt),mn=yt.name,Ri=mn,Yo=mn;if(kg(mn)&&!xN(mn.expression)){let qC=oke(mn);if(qC)Ri=c.updateComputedPropertyName(mn,xr(mn.expression,Nt,tn)),Yo=c.updateComputedPropertyName(mn,qC.left);else{let Jf=c.createTempVariable(d);Hg(Jf,mn.expression);let Fm=xr(mn.expression,Nt,tn),of=c.createAssignment(Jf,Fm);Hg(of,mn.expression),Ri=c.updateComputedPropertyName(mn,of),Yo=c.updateComputedPropertyName(mn,Jf)}}let fi=ws(yt.modifiers,Kt,Ag),Xo=i8e(c,yt,fi,yt.initializer);Ho(Xo,yt),ao(Xo,3072),Hg(Xo,gr);let _c=eg(yt)?gl()??c.createThis():c.createThis(),ic=BRt(c,yt,fi,Ri,_c);Ho(ic,yt),hA(ic,tt),Hg(ic,gr);let Pg=c.createModifiersFromModifierFlags(kv(fi)),sf=vRt(c,yt,Pg,Yo,_c);return Ho(sf,yt),ao(sf,3072),Hg(sf,gr),g_e([Xo,ic,sf],Pt,nC)}function _s(yt){if(Bc(yt)){let tt=Lc(yt.name);if(w.assert(tt,"Undeclared private name for property declaration."),!tt.isValid)return yt;if(tt.isStatic&&!de){let gr=On(yt,c.createThis());if(gr)return c.createClassStaticBlockDeclaration(c.createBlock([gr],!0))}return}return re&&!eg(yt)&&it?.data&&it.data.facts&16?c.updatePropertyDeclaration(yt,ws(yt.modifiers,Nt,Rp),yt.name,void 0,void 0,void 0):(rb(yt,br)&&(yt=QE(n,yt)),c.updatePropertyDeclaration(yt,ws(yt.modifiers,Kt,Ag),xr(yt.name,mr,RI),void 0,void 0,xr(yt.initializer,Nt,tn)))}function Pu(yt){if(Ae&&!r_(yt)){let tt=Yc(yt.name,!!yt.initializer||Q);if(tt&&Gs().push(...SRt(tt)),eg(yt)&&!de){let gr=On(yt,c.createThis());if(gr){let mn=c.createClassStaticBlockDeclaration(c.createBlock([gr]));return Ho(mn,yt),hA(mn,yt),hA(gr,{pos:-1,end:-1}),KS(gr,void 0),iM(gr,void 0),mn}}return}return c.updatePropertyDeclaration(yt,ws(yt.modifiers,Kt,Ag),xr(yt.name,mr,RI),void 0,void 0,xr(yt.initializer,Nt,tn))}function ir(yt){return w.assert(!LE(yt),"Decorators should already have been transformed and elided."),Dh(yt)?_s(yt):Pu(yt)}function ni(){return Be===-1||Be===3&&!!it?.data&&!!(it.data.facts&16)}function gs(yt){return r_(yt)&&(ni()||CC(yt)&&FE(yt)&32)?mc(yt):ir(yt)}function Hs(){return!!St&&CC(St)&&zw(St)&&r_(Np(St))}function za(yt){if(Hs()){let tt=LC(yt);tt.kind===110&&dt.add(tt)}}function nc(yt,tt){return tt=xr(tt,Nt,tn),za(tt),Rc(yt,tt)}function Rc(yt,tt){switch(hA(tt,NZ(tt,-1)),yt.kind){case"a":return u().createClassPrivateFieldGetHelper(tt,yt.brandCheckIdentifier,yt.kind,yt.getterName);case"m":return u().createClassPrivateFieldGetHelper(tt,yt.brandCheckIdentifier,yt.kind,yt.methodName);case"f":return u().createClassPrivateFieldGetHelper(tt,yt.brandCheckIdentifier,yt.kind,yt.isStatic?yt.variableName:void 0);case"untransformed":return w.fail("Access helpers should not be created for untransformed private elements");default:w.assertNever(yt,"Unknown private element type")}}function lg(yt){if(Gc(yt.name)){let tt=Lc(yt.name);if(tt)return un(Ho(nc(tt,yt.expression),yt),yt)}if(Ne&&St&&M0(yt)&&sr(yt.name)&&due(St)&&it?.data){let{classConstructor:tt,superClassReference:gr,facts:mn}=it.data;if(mn&1)return xo(yt);if(tt&&gr){let Ri=c.createReflectGetCall(gr,c.createStringLiteralFromNode(yt.name),tt);return Ho(Ri,yt.expression),un(Ri,yt.expression),Ri}}return ns(yt,Nt,n)}function ju(yt){if(Ne&&St&&M0(yt)&&due(St)&&it?.data){let{classConstructor:tt,superClassReference:gr,facts:mn}=it.data;if(mn&1)return xo(yt);if(tt&&gr){let Ri=c.createReflectGetCall(gr,xr(yt.argumentExpression,Nt,tn),tt);return Ho(Ri,yt.expression),un(Ri,yt.expression),Ri}}return ns(yt,Nt,n)}function Bi(yt,tt){if(yt.operator===46||yt.operator===47){let gr=zA(yt.operand);if(Y9(gr)){let mn;if(mn=Lc(gr.name)){let Ri=xr(gr.expression,Nt,tn);za(Ri);let{readExpression:Yo,initializeExpression:fi}=en(Ri),Xo=nc(mn,Yo),_c=GB(yt)||tt?void 0:c.createTempVariable(d);return Xo=$xe(c,yt,Xo,d,_c),Xo=ti(mn,fi||Yo,Xo,64),Ho(Xo,yt),un(Xo,yt),_c&&(Xo=c.createComma(Xo,_c),un(Xo,yt)),Xo}}else if(Ne&&St&&M0(gr)&&due(St)&&it?.data){let{classConstructor:mn,superClassReference:Ri,facts:Yo}=it.data;if(Yo&1){let fi=xo(gr);return GB(yt)?c.updatePrefixUnaryExpression(yt,fi):c.updatePostfixUnaryExpression(yt,fi)}if(mn&&Ri){let fi,Xo;if(fo(gr)?sr(gr.name)&&(Xo=fi=c.createStringLiteralFromNode(gr.name)):xN(gr.argumentExpression)?Xo=fi=gr.argumentExpression:(Xo=c.createTempVariable(d),fi=c.createAssignment(Xo,xr(gr.argumentExpression,Nt,tn))),fi&&Xo){let _c=c.createReflectGetCall(Ri,Xo,mn);un(_c,gr);let ic=tt?void 0:c.createTempVariable(d);return _c=$xe(c,yt,_c,d,ic),_c=c.createReflectSetCall(Ri,fi,_c,mn),Ho(_c,yt),un(_c,yt),ic&&(_c=c.createComma(_c,ic),un(_c,yt)),_c}}}}return ns(yt,Nt,n)}function vA(yt){return c.updateForStatement(yt,xr(yt.initializer,kt,O0),xr(yt.condition,Nt,tn),xr(yt.incrementor,kt,tn),by(yt.statement,Nt,n))}function kr(yt){return c.updateExpressionStatement(yt,xr(yt.expression,kt,tn))}function en(yt){let tt=$d(yt)?yt:c.cloneNode(yt);if(yt.kind===110&&dt.has(yt)&&dt.add(tt),xN(yt))return{readExpression:tt,initializeExpression:void 0};let gr=c.createTempVariable(d),mn=c.createAssignment(gr,tt);return{readExpression:gr,initializeExpression:mn}}function ct(yt){var tt;if(Y9(yt.expression)&&Lc(yt.expression.name)){let{thisArg:gr,target:mn}=c.createCallBinding(yt.expression,d,P);return fG(yt)?c.updateCallChain(yt,c.createPropertyAccessChain(xr(mn,Nt,tn),yt.questionDotToken,"call"),void 0,void 0,[xr(gr,Nt,tn),...ws(yt.arguments,Nt,tn)]):c.updateCallExpression(yt,c.createPropertyAccessExpression(xr(mn,Nt,tn),"call"),void 0,[xr(gr,Nt,tn),...ws(yt.arguments,Nt,tn)])}if(Ne&&St&&M0(yt.expression)&&due(St)&&((tt=it?.data)!=null&&tt.classConstructor)){let gr=c.createFunctionCallCall(xr(yt.expression,Nt,tn),it.data.classConstructor,ws(yt.arguments,Nt,tn));return Ho(gr,yt),un(gr,yt),gr}return ns(yt,Nt,n)}function rn(yt){var tt;if(Y9(yt.tag)&&Lc(yt.tag.name)){let{thisArg:gr,target:mn}=c.createCallBinding(yt.tag,d,P);return c.updateTaggedTemplateExpression(yt,c.createCallExpression(c.createPropertyAccessExpression(xr(mn,Nt,tn),"bind"),void 0,[xr(gr,Nt,tn)]),void 0,xr(yt.template,Nt,k1))}if(Ne&&St&&M0(yt.tag)&&due(St)&&((tt=it?.data)!=null&&tt.classConstructor)){let gr=c.createFunctionBindCall(xr(yt.tag,Nt,tn),it.data.classConstructor,[]);return Ho(gr,yt),un(gr,yt),c.updateTaggedTemplateExpression(yt,gr,void 0,xr(yt.template,Nt,k1))}return ns(yt,Nt,n)}function wt(yt){if(it&&It.set(Np(yt),it),de){if(gue(yt)){let mn=xr(yt.body.statements[0].expression,Nt,tn);return Im(mn,!0)&&mn.left===mn.right?void 0:mn}if(j6(yt))return xr(yt.body.statements[0].expression,Nt,tn);h();let tt=rc(yt,mn=>ws(mn,Nt,Cc),yt.body.statements);tt=c.mergeLexicalEnvironment(tt,I());let gr=c.createImmediatelyInvokedArrowFunction(tt);return Ho(zA(gr.expression),yt),JS(zA(gr.expression),4),Ho(gr,yt),un(gr,yt),gr}}function br(yt){if(rp(yt)&&!yt.name){let tt=Wke(yt);return lr(tt,j6)?!1:(de||!!FE(yt))&&lr(tt,mn=>ef(mn)||Dh(mn)||Ae&&d_e(mn))}return!1}function Mt(yt,tt){if(Gv(yt)){let gr=nt;nt=void 0,yt=c.updateBinaryExpression(yt,xr(yt.left,Dr,tn),yt.operatorToken,xr(yt.right,Nt,tn));let mn=lr(nt)?c.inlineExpressions(Vn([...nt,yt])):yt;return nt=gr,mn}if(Im(yt)){rb(yt,br)&&(yt=QE(n,yt),w.assertNode(yt,Im));let gr=LC(yt.left,9);if(Y9(gr)){let mn=Lc(gr.name);if(mn)return un(Ho(ti(mn,gr.expression,yt.right,yt.operatorToken.kind),yt),yt)}else if(Ne&&St&&M0(yt.left)&&due(St)&&it?.data){let{classConstructor:mn,superClassReference:Ri,facts:Yo}=it.data;if(Yo&1)return c.updateBinaryExpression(yt,xo(yt.left),yt.operatorToken,xr(yt.right,Nt,tn));if(mn&&Ri){let fi=_A(yt.left)?xr(yt.left.argumentExpression,Nt,tn):sr(yt.left.name)?c.createStringLiteralFromNode(yt.left.name):void 0;if(fi){let Xo=xr(yt.right,Nt,tn);if(cue(yt.operatorToken.kind)){let ic=fi;xN(fi)||(ic=c.createTempVariable(d),fi=c.createAssignment(ic,fi));let Pg=c.createReflectGetCall(Ri,ic,mn);Ho(Pg,yt.left),un(Pg,yt.left),Xo=c.createBinaryExpression(Pg,lue(yt.operatorToken.kind),Xo),un(Xo,yt)}let _c=tt?void 0:c.createTempVariable(d);return _c&&(Xo=c.createAssignment(_c,Xo),un(_c,yt)),Xo=c.createReflectSetCall(Ri,fi,Xo,mn),Ho(Xo,yt),un(Xo,yt),_c&&(Xo=c.createComma(Xo,_c),un(Xo,yt)),Xo}}}}return C7i(yt)?Hr(yt):ns(yt,Nt,n)}function _r(yt,tt){let gr=tt?A_e(yt.elements,kt):A_e(yt.elements,Nt,kt);return c.updateCommaListExpression(yt,gr)}function Pr(yt,tt){let gr=tt?kt:Nt,mn=xr(yt.expression,gr,tn);return c.updateParenthesizedExpression(yt,mn)}function ti(yt,tt,gr,mn){if(tt=xr(tt,Nt,tn),gr=xr(gr,Nt,tn),za(tt),cue(mn)){let{readExpression:Ri,initializeExpression:Yo}=en(tt);tt=Yo||Ri,gr=c.createBinaryExpression(Rc(yt,Ri),lue(mn),gr)}switch(hA(tt,NZ(tt,-1)),yt.kind){case"a":return u().createClassPrivateFieldSetHelper(tt,yt.brandCheckIdentifier,gr,yt.kind,yt.setterName);case"m":return u().createClassPrivateFieldSetHelper(tt,yt.brandCheckIdentifier,gr,yt.kind,void 0);case"f":return u().createClassPrivateFieldSetHelper(tt,yt.brandCheckIdentifier,gr,yt.kind,yt.isStatic?yt.variableName:void 0);case"untransformed":return w.fail("Access helpers should not be created for untransformed private elements");default:w.assertNever(yt,"Unknown private element type")}}function cr(yt){return Gt(yt.members,jDt)}function kn(yt){var tt;let gr=0,mn=Np(yt);va(mn)&&Gx(te,mn)&&(gr|=1),de&&(c6e(yt)||Oke(yt))&&(gr|=2);let Ri=!1,Yo=!1,fi=!1,Xo=!1;for(let ic of yt.members)eg(ic)?((ic.name&&(Gc(ic.name)||r_(ic))&&de||r_(ic)&&Be===-1&&!yt.name&&!((tt=yt.emitNode)!=null&&tt.classThis))&&(gr|=2),(Hl(ic)||ef(ic))&&(Fe&&ic.transformFlags&16384&&(gr|=8,gr&1||(gr|=2)),Ne&&ic.transformFlags&134217728&&(gr&1||(gr|=6)))):cV(Np(ic))||(r_(ic)?(Xo=!0,fi||(fi=Dh(ic))):Dh(ic)?(fi=!0,N.hasNodeCheckFlag(ic,262144)&&(gr|=2)):Hl(ic)&&(Ri=!0,Yo||(Yo=!!ic.initializer)));return(ue&&Ri||re&&Yo||de&&fi||de&&Xo&&Be===-1)&&(gr|=16),gr}function Pn(yt){var tt;if((((tt=it?.data)==null?void 0:tt.facts)||0)&4){let mn=c.createTempVariable(d,!0);return Ra().superClassReference=mn,c.updateExpressionWithTypeArguments(yt,c.createAssignment(mn,xr(yt.expression,Nt,tn)),void 0)}return ns(yt,Nt,n)}function an(yt,tt){var gr;let mn=Tt,Ri=nt,Yo=it;Tt=yt,nt=void 0,Il();let fi=FE(yt)&32;if(de||fi){let ic=Sl(yt);if(ic&&sr(ic))ki().data.className=ic;else if((gr=yt.emitNode)!=null&&gr.assignedName&&Eu(yt.emitNode.assignedName)){if(yt.emitNode.assignedName.textSourceNode&&sr(yt.emitNode.assignedName.textSourceNode))ki().data.className=yt.emitNode.assignedName.textSourceNode;else if(Ke(yt.emitNode.assignedName.text,P)){let Pg=c.createIdentifier(yt.emitNode.assignedName.text);ki().data.className=Pg}}}if(de){let ic=cr(yt);lr(ic)&&(ki().data.weakSetName=hf("instances",ic[0].name))}let Xo=kn(yt);Xo&&(Ra().facts=Xo),Xo&8&&so();let _c=tt(yt,Xo);return sa(),w.assert(it===Yo),Tt=mn,nt=Ri,_c}function Kr(yt){return an(yt,wn)}function wn(yt,tt){var gr,mn;let Ri;if(tt&2)if(de&&((gr=yt.emitNode)!=null&&gr.classThis))Ra().classConstructor=yt.emitNode.classThis,Ri=c.createAssignment(yt.emitNode.classThis,c.getInternalName(yt));else{let of=c.createTempVariable(d,!0);Ra().classConstructor=c.cloneNode(of),Ri=c.createAssignment(of,c.getInternalName(yt))}(mn=yt.emitNode)!=null&&mn.classThis&&(Ra().classThis=yt.emitNode.classThis);let Yo=N.hasNodeCheckFlag(yt,262144),fi=ya(yt,32),Xo=ya(yt,2048),_c=ws(yt.modifiers,Kt,Ag),ic=ws(yt.heritageClauses,Zt,OE),{members:Pg,prologue:sf}=ur(yt),qC=[];if(Ri&&Gs().unshift(Ri),lr(nt)&&qC.push(c.createExpressionStatement(c.inlineExpressions(nt))),re||de||FE(yt)&32){let of=Wke(yt);lr(of)&&dn(qC,of,c.getInternalName(yt))}qC.length>0&&fi&&Xo&&(_c=ws(_c,of=>Jhe(of)?void 0:of,Ag),qC.push(c.createExportAssignment(void 0,!1,c.getLocalName(yt,!1,!0))));let Jf=Ra().classConstructor;Yo&&Jf&&(Es(),st[Ey(yt)]=Jf);let Fm=c.updateClassDeclaration(yt,_c,yt.name,void 0,ic,Pg);return qC.unshift(Fm),sf&&qC.unshift(c.createExpressionStatement(sf)),qC}function Pe(yt){return an(yt,ar)}function ar(yt,tt){var gr,mn,Ri;let Yo=!!(tt&1),fi=Wke(yt),Xo=N.hasNodeCheckFlag(yt,262144),_c=N.hasNodeCheckFlag(yt,32768),ic;function Pg(){var FI;if(de&&((FI=yt.emitNode)!=null&&FI.classThis))return Ra().classConstructor=yt.emitNode.classThis;let $C=c.createTempVariable(_c?R:d,!0);return Ra().classConstructor=c.cloneNode($C),$C}(gr=yt.emitNode)!=null&&gr.classThis&&(Ra().classThis=yt.emitNode.classThis),tt&2&&(ic??(ic=Pg()));let sf=ws(yt.modifiers,Kt,Ag),qC=ws(yt.heritageClauses,Zt,OE),{members:Jf,prologue:Fm}=ur(yt),of=c.updateClassExpression(yt,sf,yt.name,void 0,qC,Jf),Zm=[];if(Fm&&Zm.push(Fm),(de||FE(yt)&32)&&lr(fi,FI=>ef(FI)||Dh(FI)||Ae&&d_e(FI))||lr(nt))if(Yo)w.assertIsDefined(qe,"Decorated classes transformed by TypeScript are expected to be within a variable declaration."),lr(nt)&&ai(qe,Ot(nt,c.createExpressionStatement)),lr(fi)&&dn(qe,fi,((mn=yt.emitNode)==null?void 0:mn.classThis)??c.getInternalName(yt)),ic?Zm.push(c.createAssignment(ic,of)):de&&((Ri=yt.emitNode)!=null&&Ri.classThis)?Zm.push(c.createAssignment(yt.emitNode.classThis,of)):Zm.push(of);else{if(ic??(ic=Pg()),Xo){Es();let FI=c.cloneNode(ic);FI.emitNode.autoGenerate.flags&=-9,st[Ey(yt)]=FI}Zm.push(c.createAssignment(ic,of)),ai(Zm,nt),ai(Zm,Qn(fi,ic)),Zm.push(c.cloneNode(ic))}else Zm.push(of);return Zm.length>1&&(JS(of,131072),Zm.forEach(u0)),c.inlineExpressions(Zm)}function sn(yt){if(!de)return ns(yt,Nt,n)}function Qe(yt){if(Fe&&St&&ef(St)&&it?.data){let{classThis:tt,classConstructor:gr}=it.data;return tt??gr??yt}return yt}function ur(yt){let tt=!!(FE(yt)&32);if(de||Le){for(let fi of yt.members)if(Dh(fi))if(Bc(fi))ug(fi,fi.name,ri);else{let Xo=ki();_4(Xo,fi.name,{kind:"untransformed"})}if(de&&lr(cr(yt))&&Re(),ni()){for(let fi of yt.members)if(r_(fi)){let Xo=c.getGeneratedPrivateNameForNode(fi.name,void 0,"_accessor_storage");if(de||tt&&CC(fi))ug(fi,Xo,_u);else{let _c=ki();_4(_c,Xo,{kind:"untransformed"})}}}}let gr=ws(yt.members,jt,nC),mn;lr(gr,Df)||(mn=Jt(void 0,yt));let Ri,Yo;if(!de&&lr(nt)){let fi=c.createExpressionStatement(c.inlineExpressions(nt));if(fi.transformFlags&134234112){let _c=c.createTempVariable(d),ic=c.createArrowFunction(void 0,void 0,[],void 0,void 0,c.createBlock([fi]));Ri=c.createAssignment(_c,ic),fi=c.createExpressionStatement(c.createCallExpression(_c,void 0,[]))}let Xo=c.createBlock([fi]);Yo=c.createClassStaticBlockDeclaration(Xo),nt=void 0}if(mn||Yo){let fi,Xo=be(gr,gue),_c=be(gr,j6);fi=Yr(fi,Xo),fi=Yr(fi,_c),fi=Yr(fi,mn),fi=Yr(fi,Yo);let ic=Xo||_c?Gt(gr,Pg=>Pg!==Xo&&Pg!==_c):gr;fi=ai(fi,ic),gr=un(c.createNodeArray(fi),yt.members)}return{members:gr,prologue:Ri}}function Re(){let{weakSetName:yt}=ki().data;w.assert(yt,"weakSetName should be set in private identifier environment"),Gs().push(c.createAssignment(yt,c.createNewExpression(c.createIdentifier("WeakSet"),void 0,[])))}function Jt(yt,tt){if(yt=xr(yt,Nt,Df),!it?.data||!(it.data.facts&16))return yt;let gr=xv(tt),mn=!!(gr&&LC(gr.expression).kind!==106),Ri=_I(yt?yt.parameters:void 0,Nt,n),Yo=Vt(tt,yt,mn);return Yo?yt?(w.assert(Ri),c.updateConstructorDeclaration(yt,void 0,Ri,Yo)):u0(Ho(un(c.createConstructorDeclaration(void 0,Ri??[],Yo),yt||tt),yt)):yt}function bt(yt,tt,gr,mn,Ri,Yo,fi){let Xo=mn[Ri],_c=tt[Xo];if(ai(yt,ws(tt,Nt,Cc,gr,Xo-gr)),gr=Xo+1,ab(_c)){let ic=[];bt(ic,_c.tryBlock.statements,0,mn,Ri+1,Yo,fi);let Pg=c.createNodeArray(ic);un(Pg,_c.tryBlock.statements),yt.push(c.updateTryStatement(_c,c.updateBlock(_c.tryBlock,ic),xr(_c.catchClause,Nt,fM),xr(_c.finallyBlock,Nt,hc)))}else{for(ai(yt,ws(tt,Nt,Cc,Xo,1));gr!!Jf.initializer||Gc(Jf.name)||OS(Jf)));let Yo=cr(yt),fi=lr(Ri)||lr(Yo);if(!tt&&!fi)return V2(void 0,Nt,n);b();let Xo=!tt&&gr,_c=0,ic=[],Pg=[],sf=c.createThis();if(Vi(Pg,Yo,sf),tt){let Jf=Gt(mn,of=>Zn(Np(of),tt)),Fm=Gt(Ri,of=>!Zn(Np(of),tt));dn(Pg,Jf,sf),dn(Pg,Fm,sf)}else dn(Pg,Ri,sf);if(tt?.body){_c=c.copyPrologue(tt.body.statements,ic,!1,Nt);let Jf=Vke(tt.body.statements,_c);if(Jf.length)bt(ic,tt.body.statements,_c,Jf,0,Pg,tt);else{for(;_c=ic.length?tt.body.multiLine??ic.length>0:ic.length>0;return un(c.createBlock(un(c.createNodeArray(ic),tt?tt.body.statements:yt.members),qC),tt?tt.body:void 0)}function dn(yt,tt,gr){for(let mn of tt){if(eg(mn)&&!de)continue;let Ri=On(mn,gr);Ri&&yt.push(Ri)}}function On(yt,tt){let gr=ef(yt)?rc(yt,wt,yt):Ii(yt,tt);if(!gr)return;let mn=c.createExpressionStatement(gr);Ho(mn,yt),JS(mn,wg(yt)&3072),hA(mn,yt);let Ri=Np(yt);return Uc(Ri)?(Hg(mn,Ri),nte(mn)):Hg(mn,QS(yt)),KS(gr,void 0),iM(gr,void 0),OS(Ri)&&JS(mn,3072),mn}function Qn(yt,tt){let gr=[];for(let mn of yt){let Ri=ef(mn)?rc(mn,wt,mn):rc(mn,()=>Ii(mn,tt),void 0);Ri&&(u0(Ri),Ho(Ri,mn),JS(Ri,wg(mn)&3072),Hg(Ri,QS(mn)),hA(Ri,mn),gr.push(Ri))}return gr}function Ii(yt,tt){var gr;let mn=St,Ri=ds(yt,tt);return Ri&&CC(yt)&&((gr=it?.data)!=null&&gr.facts)&&(Ho(Ri,yt),JS(Ri,4),Hg(Ri,Px(yt.name)),It.set(Np(yt),it)),St=mn,Ri}function ds(yt,tt){let gr=!Q;rb(yt,br)&&(yt=QE(n,yt));let mn=OS(yt)?c.getGeneratedPrivateNameForNode(yt.name):kg(yt.name)&&!xN(yt.name.expression)?c.updateComputedPropertyName(yt.name,c.getGeneratedNameForNode(yt.name)):yt.name;if(CC(yt)&&(St=yt),Gc(mn)&&Bc(yt)){let fi=Lc(mn);if(fi)return fi.kind==="f"?fi.isStatic?d7i(c,fi.variableName,xr(yt.initializer,Nt,tn)):p7i(c,tt,xr(yt.initializer,Nt,tn),fi.brandCheckIdentifier):void 0;w.fail("Undeclared private name for property declaration.")}if((Gc(mn)||CC(yt))&&!yt.initializer)return;let Ri=Np(yt);if(ya(Ri,64))return;let Yo=xr(yt.initializer,Nt,tn);if(Zn(Ri,Ri.parent)&&sr(mn)){let fi=c.cloneNode(mn);Yo?(ZC(Yo)&&Hhe(Yo.expression)&&Z6(Yo.expression.left,"___runInitializers")&&mf(Yo.expression.right)&&pu(Yo.expression.right.expression)&&(Yo=Yo.expression.left),Yo=c.inlineExpressions([Yo,fi])):Yo=fi,ao(mn,3168),Hg(fi,Ri.name),ao(fi,3072)}else Yo??(Yo=c.createVoidZero());if(gr||Gc(mn)){let fi=C4(c,tt,mn,mn);return JS(fi,1024),c.createAssignment(fi,Yo)}else{let fi=kg(mn)?mn.expression:sr(mn)?c.createStringLiteral(wc(mn.escapedText)):mn,Xo=c.createPropertyDescriptor({value:Yo,configurable:!0,writable:!0,enumerable:!0});return c.createObjectDefinePropertyCall(tt,fi,Xo)}}function Es(){je&1||(je|=1,n.enableSubstitution(80),st=[])}function so(){je&2||(je|=2,n.enableSubstitution(110),n.enableEmitNotification(262),n.enableEmitNotification(218),n.enableEmitNotification(176),n.enableEmitNotification(177),n.enableEmitNotification(178),n.enableEmitNotification(174),n.enableEmitNotification(172),n.enableEmitNotification(167))}function Vi(yt,tt,gr){if(!de||!lr(tt))return;let{weakSetName:mn}=ki().data;w.assert(mn,"weakSetName should be set in private identifier environment"),yt.push(c.createExpressionStatement(f7i(c,gr,mn)))}function xo(yt){return fo(yt)?c.updatePropertyAccessExpression(yt,c.createVoidZero(),yt.name):c.updateElementAccessExpression(yt,c.createVoidZero(),xr(yt.argumentExpression,Nt,tn))}function Yc(yt,tt){if(kg(yt)){let gr=oke(yt),mn=xr(yt.expression,Nt,tn),Ri=x1(mn),Yo=xN(Ri);if(!(!!gr||Im(Ri)&&Cp(Ri.left))&&!Yo&&tt){let Xo=c.getGeneratedNameForNode(yt);return N.hasNodeCheckFlag(yt,32768)?R(Xo):d(Xo),c.createAssignment(Xo,mn)}return Yo||sr(Ri)?void 0:mn}}function Il(){it={previous:it,data:void 0}}function sa(){it=it?.previous}function Ra(){return w.assert(it),it.data??(it.data={facts:0,classConstructor:void 0,classThis:void 0,superClassReference:void 0})}function ki(){return w.assert(it),it.privateEnv??(it.privateEnv=$Dt({className:void 0,weakSetName:void 0}))}function Gs(){return nt??(nt=[])}function ri(yt,tt,gr,mn,Ri,Yo,fi){r_(yt)?Nl(yt,tt,gr,mn,Ri,Yo,fi):Hl(yt)?_u(yt,tt,gr,mn,Ri,Yo,fi):lI(yt)?UA(yt,tt,gr,mn,Ri,Yo,fi):Qb(yt)?Hd(yt,tt,gr,mn,Ri,Yo,fi):ob(yt)&&Gd(yt,tt,gr,mn,Ri,Yo,fi)}function _u(yt,tt,gr,mn,Ri,Yo,fi){if(Ri){let Xo=w.checkDefined(gr.classThis??gr.classConstructor,"classConstructor should be set in private identifier environment"),_c=qc(tt);_4(mn,tt,{kind:"f",isStatic:!0,brandCheckIdentifier:Xo,variableName:_c,isValid:Yo})}else{let Xo=qc(tt);_4(mn,tt,{kind:"f",isStatic:!1,brandCheckIdentifier:Xo,isValid:Yo}),Gs().push(c.createAssignment(Xo,c.createNewExpression(c.createIdentifier("WeakMap"),void 0,[])))}}function UA(yt,tt,gr,mn,Ri,Yo,fi){let Xo=qc(tt),_c=Ri?w.checkDefined(gr.classThis??gr.classConstructor,"classConstructor should be set in private identifier environment"):w.checkDefined(mn.data.weakSetName,"weakSetName should be set in private identifier environment");_4(mn,tt,{kind:"m",methodName:Xo,brandCheckIdentifier:_c,isStatic:Ri,isValid:Yo})}function Hd(yt,tt,gr,mn,Ri,Yo,fi){let Xo=qc(tt,"_get"),_c=Ri?w.checkDefined(gr.classThis??gr.classConstructor,"classConstructor should be set in private identifier environment"):w.checkDefined(mn.data.weakSetName,"weakSetName should be set in private identifier environment");fi?.kind==="a"&&fi.isStatic===Ri&&!fi.getterName?fi.getterName=Xo:_4(mn,tt,{kind:"a",getterName:Xo,setterName:void 0,brandCheckIdentifier:_c,isStatic:Ri,isValid:Yo})}function Gd(yt,tt,gr,mn,Ri,Yo,fi){let Xo=qc(tt,"_set"),_c=Ri?w.checkDefined(gr.classThis??gr.classConstructor,"classConstructor should be set in private identifier environment"):w.checkDefined(mn.data.weakSetName,"weakSetName should be set in private identifier environment");fi?.kind==="a"&&fi.isStatic===Ri&&!fi.setterName?fi.setterName=Xo:_4(mn,tt,{kind:"a",getterName:void 0,setterName:Xo,brandCheckIdentifier:_c,isStatic:Ri,isValid:Yo})}function Nl(yt,tt,gr,mn,Ri,Yo,fi){let Xo=qc(tt,"_get"),_c=qc(tt,"_set"),ic=Ri?w.checkDefined(gr.classThis??gr.classConstructor,"classConstructor should be set in private identifier environment"):w.checkDefined(mn.data.weakSetName,"weakSetName should be set in private identifier environment");_4(mn,tt,{kind:"a",getterName:Xo,setterName:_c,brandCheckIdentifier:ic,isStatic:Ri,isValid:Yo})}function ug(yt,tt,gr){let mn=Ra(),Ri=ki(),Yo=a6e(Ri,tt),fi=CC(yt),Xo=!I7i(tt)&&Yo===void 0;gr(yt,tt,mn,Ri,fi,Xo,Yo)}function hf(yt,tt,gr){let{className:mn}=ki().data,Ri=mn?{prefix:"_",node:mn,suffix:"_"}:"_",Yo=typeof yt=="object"?c.getGeneratedNameForNode(yt,24,Ri,gr):typeof yt=="string"?c.createUniqueName(yt,16,Ri,gr):c.createTempVariable(void 0,!0,Ri,gr);return N.hasNodeCheckFlag(tt,32768)?R(Yo):d(Yo),Yo}function qc(yt,tt){let gr=N5(yt);return hf(gr?.substring(1)??yt,yt,tt)}function Lc(yt){let tt=ext(it,yt);return tt?.kind==="untransformed"?void 0:tt}function jm(yt){let tt=c.getGeneratedNameForNode(yt),gr=Lc(yt.name);if(!gr)return ns(yt,Nt,n);let mn=yt.expression;return(q$(yt)||M0(yt)||!mM(yt.expression))&&(mn=c.createTempVariable(d,!0),Gs().push(c.createBinaryExpression(mn,64,xr(yt.expression,Nt,tn)))),c.createAssignmentTargetWrapper(tt,ti(gr,mn,tt,64))}function xf(yt){if(ru(yt)||Cf(yt))return di(yt);if(Y9(yt))return jm(yt);if(Ne&&St&&M0(yt)&&due(St)&&it?.data){let{classConstructor:tt,superClassReference:gr,facts:mn}=it.data;if(mn&1)return xo(yt);if(tt&&gr){let Ri=_A(yt)?xr(yt.argumentExpression,Nt,tn):sr(yt.name)?c.createStringLiteralFromNode(yt.name):void 0;if(Ri){let Yo=c.createTempVariable(void 0);return c.createAssignmentTargetWrapper(Yo,c.createReflectSetCall(gr,Ri,Yo,tt))}}}return ns(yt,Nt,n)}function I0(yt){if(rb(yt,br)&&(yt=QE(n,yt)),Im(yt,!0)){let tt=xf(yt.left),gr=xr(yt.right,Nt,tn);return c.updateBinaryExpression(yt,tt,yt.operatorToken,gr)}return xf(yt)}function kI(yt){if(N_(yt.expression)){let tt=xf(yt.expression);return c.updateSpreadElement(yt,tt)}return ns(yt,Nt,n)}function o_(yt){if(bX(yt)){if(fh(yt))return kI(yt);if(!tf(yt))return I0(yt)}return ns(yt,Nt,n)}function Ug(yt){let tt=xr(yt.name,Nt,RI);if(Im(yt.initializer,!0)){let gr=I0(yt.initializer);return c.updatePropertyAssignment(yt,tt,gr)}if(N_(yt.initializer)){let gr=xf(yt.initializer);return c.updatePropertyAssignment(yt,tt,gr)}return ns(yt,Nt,n)}function _f(yt){return rb(yt,br)&&(yt=QE(n,yt)),ns(yt,Nt,n)}function Yd(yt){if(N_(yt.expression)){let tt=xf(yt.expression);return c.updateSpreadAssignment(yt,tt)}return ns(yt,Nt,n)}function qA(yt){return w.assertNode(yt,yX),Ux(yt)?Yd(yt):F_(yt)?_f(yt):jC(yt)?Ug(yt):ns(yt,Nt,n)}function di(yt){return Cf(yt)?c.updateArrayLiteralExpression(yt,ws(yt.elements,o_,tn)):c.updateObjectLiteralExpression(yt,ws(yt.properties,qA,vB))}function uI(yt,tt,gr){let mn=Np(tt),Ri=It.get(mn);if(Ri){let Yo=it,fi=ht;it=Ri,ht=He,He=!ef(mn)||!(FE(mn)&32),lt(yt,tt,gr),He=ht,ht=fi,it=Yo;return}switch(tt.kind){case 218:if(Id(mn)||wg(tt)&524288)break;case 262:case 176:case 177:case 178:case 174:case 172:{let Yo=it,fi=ht;it=void 0,ht=He,He=!1,lt(yt,tt,gr),He=ht,ht=fi,it=Yo;return}case 167:{let Yo=it,fi=He;it=it?.previous,He=ht,lt(yt,tt,gr),He=fi,it=Yo;return}}lt(yt,tt,gr)}function U0(yt,tt){return tt=De(yt,tt),yt===1?K0(tt):tt}function K0(yt){switch(yt.kind){case 80:return nf(yt);case 110:return Xb(yt)}return yt}function Xb(yt){if(je&2&&it?.data&&!dt.has(yt)){let{facts:tt,classConstructor:gr,classThis:mn}=it.data,Ri=He?mn??gr:gr;if(Ri)return un(Ho(c.cloneNode(Ri),yt),yt);if(tt&1&&te)return c.createParenthesizedExpression(c.createVoidZero())}return yt}function nf(yt){return GI(yt)||yt}function GI(yt){if(je&1&&N.hasNodeCheckFlag(yt,536870912)){let tt=N.getReferencedValueDeclaration(yt);if(tt){let gr=st[tt.id];if(gr){let mn=c.cloneNode(gr);return Hg(mn,yt),hA(mn,yt),mn}}}}}function d7i(n,c,u){return n.createAssignment(c,n.createObjectLiteralExpression([n.createPropertyAssignment("value",u||n.createVoidZero())]))}function p7i(n,c,u,d){return n.createCallExpression(n.createPropertyAccessExpression(d,"set"),void 0,[c,u||n.createVoidZero()])}function f7i(n,c,u){return n.createCallExpression(n.createPropertyAccessExpression(u,"add"),void 0,[c])}function I7i(n){return!mZ(n)&&n.escapedText==="#constructor"}function C7i(n){return Gc(n.left)&&n.operatorToken.kind===103}function m7i(n){return Hl(n)&&CC(n)}function due(n){return ef(n)||m7i(n)}function dxt(n){let{factory:c,hoistVariableDeclaration:u}=n,d=n.getEmitResolver(),I=n.getCompilerOptions(),h=sA(I),b=x_(I,"strictNullChecks"),R,N;return{serializeTypeNode:(nt,qe)=>V(nt,Ae,qe),serializeTypeOfNode:(nt,qe,it)=>V(nt,Q,qe,it),serializeParameterTypesOfNode:(nt,qe,it)=>V(nt,te,qe,it),serializeReturnTypeOfNode:(nt,qe)=>V(nt,ue,qe)};function V(nt,qe,it,It){let dt=R,Tt=N;R=nt.currentLexicalScope,N=nt.currentNameScope;let St=It===void 0?qe(it):qe(it,It);return R=dt,N=Tt,St}function P(nt,qe){let it=Vx(qe.members,nt);return it.setAccessor&&Gme(it.setAccessor)||it.getAccessor&&nb(it.getAccessor)}function Q(nt,qe){switch(nt.kind){case 172:case 169:return Ae(nt.type);case 178:case 177:return Ae(P(nt,qe));case 263:case 231:case 174:return c.createIdentifier("Function");default:return c.createVoidZero()}}function te(nt,qe){let it=va(nt)?pN(nt):eu(nt)&&GE(nt.body)?nt:void 0,It=[];if(it){let dt=re(it,qe),Tt=dt.length;for(let St=0;Stdt.parent&&Ei(dt.parent)&&(dt.parent.trueType===dt||dt.parent.falseType===dt)))return c.createIdentifier("Object");let it=De(nt.typeName),It=c.createTempVariable(u);return c.createConditionalExpression(c.createTypeCheck(c.createAssignment(It,it),"function"),void 0,It,void 0,c.createIdentifier("Object"));case 1:return lt(nt.typeName);case 2:return c.createVoidZero();case 4:return st("BigInt",7);case 6:return c.createIdentifier("Boolean");case 3:return c.createIdentifier("Number");case 5:return c.createIdentifier("String");case 7:return c.createIdentifier("Array");case 8:return st("Symbol",2);case 10:return c.createIdentifier("Function");case 9:return c.createIdentifier("Promise");case 11:return c.createIdentifier("Object");default:return w.assertNever(qe)}}function Me(nt,qe){return c.createLogicalAnd(c.createStrictInequality(c.createTypeOfExpression(nt),c.createStringLiteral("undefined")),qe)}function De(nt){if(nt.kind===80){let It=lt(nt);return Me(It,It)}if(nt.left.kind===80)return Me(lt(nt.left),lt(nt));let qe=De(nt.left),it=c.createTempVariable(u);return c.createLogicalAnd(c.createLogicalAnd(qe.left,c.createStrictInequality(c.createAssignment(it,qe.right),c.createVoidZero())),c.createPropertyAccessExpression(it,nt.right))}function lt(nt){switch(nt.kind){case 80:let qe=GA(un(cP.cloneNode(nt),nt),nt.parent);return qe.original=void 0,GA(qe,zc(R)),qe;case 166:return Le(nt)}}function Le(nt){return c.createPropertyAccessExpression(lt(nt.left),nt.right)}function je(nt){return c.createConditionalExpression(c.createTypeCheck(c.createIdentifier(nt),"function"),void 0,c.createIdentifier(nt),void 0,c.createIdentifier("Object"))}function st(nt,qe){return hJhe(ni)||FC(ni)?void 0:ni,Rp),Ns=QS(pr),gi=Zt(pr),jn=b<2?c.getInternalName(pr,!1,!0):c.getLocalName(pr,!1,!0),xs=ws(pr.heritageClauses,Q,OE),Bc=ws(pr.members,Q,nC),xi=[];({members:Bc,decorationStatements:xi}=de(pr,Bc));let rc=b>=9&&!!gi&&lr(Bc,ni=>Hl(ni)&&ya(ni,256)||ef(ni));rc&&(Bc=un(c.createNodeArray([c.createClassStaticBlockDeclaration(c.createBlock([c.createExpressionStatement(c.createAssignment(gi,c.createThis()))])),...Bc]),Bc));let Wl=c.createClassExpression(Pi,zr&&Cp(zr)?void 0:zr,void 0,xs,Bc);Ho(Wl,pr),un(Wl,Ns);let gl=gi&&!rc?c.createAssignment(gi,Wl):Wl,mc=c.createVariableDeclaration(jn,void 0,void 0,gl);Ho(mc,pr);let _s=c.createVariableDeclarationList([mc],1),Pu=c.createVariableStatement(void 0,_s);Ho(Pu,pr),un(Pu,Ns),hA(Pu,pr);let ir=[Pu];if(ai(ir,xi),ht(ir,pr),$n)if(bi){let ni=c.createExportDefault(jn);ir.push(ni)}else{let ni=c.createExternalModuleExport(c.getDeclarationName(pr));ir.push(ni)}return ir}function Ne(pr){return c.updateClassExpression(pr,ws(pr.modifiers,P,Ag),pr.name,void 0,ws(pr.heritageClauses,Q,OE),ws(pr.members,Q,nC))}function Me(pr){return c.updateConstructorDeclaration(pr,ws(pr.modifiers,P,Ag),ws(pr.parameters,Q,Uc),xr(pr.body,Q,hc))}function De(pr,zr){return pr!==zr&&(hA(pr,zr),Hg(pr,QS(zr))),pr}function lt(pr){return De(c.updateMethodDeclaration(pr,ws(pr.modifiers,P,Ag),pr.asteriskToken,w.checkDefined(xr(pr.name,Q,RI)),void 0,void 0,ws(pr.parameters,Q,Uc),void 0,xr(pr.body,Q,hc)),pr)}function Le(pr){return De(c.updateGetAccessorDeclaration(pr,ws(pr.modifiers,P,Ag),w.checkDefined(xr(pr.name,Q,RI)),ws(pr.parameters,Q,Uc),void 0,xr(pr.body,Q,hc)),pr)}function je(pr){return De(c.updateSetAccessorDeclaration(pr,ws(pr.modifiers,P,Ag),w.checkDefined(xr(pr.name,Q,RI)),ws(pr.parameters,Q,Uc),xr(pr.body,Q,hc)),pr)}function st(pr){if(!(pr.flags&33554432||ya(pr,128)))return De(c.updatePropertyDeclaration(pr,ws(pr.modifiers,P,Ag),w.checkDefined(xr(pr.name,Q,RI)),void 0,void 0,xr(pr.initializer,Q,tn)),pr)}function nt(pr){let zr=c.updateParameterDeclaration(pr,ERt(c,pr.modifiers),pr.dotDotDotToken,w.checkDefined(xr(pr.name,Q,hZ)),void 0,void 0,xr(pr.initializer,Q,tn));return zr!==pr&&(hA(zr,pr),un(zr,QS(pr)),Hg(zr,QS(pr)),ao(zr.name,64)),zr}function qe(pr){return Z6(pr.expression,"___metadata")}function it(pr){if(!pr)return;let{false:zr,true:$n}=Zf(pr.decorators,qe),bi=[];return ai(bi,Ot(zr,Kt)),ai(bi,Fr(pr.parameters,Nt)),ai(bi,Ot($n,Kt)),bi}function It(pr,zr,$n){ai(pr,Ot(St(zr,$n),bi=>c.createExpressionStatement(bi)))}function dt(pr,zr,$n){return O8(!0,pr,$n)&&zr===eg(pr)}function Tt(pr,zr){return Gt(pr.members,$n=>dt($n,zr,pr))}function St(pr,zr){let $n=Tt(pr,zr),bi;for(let Pi of $n)bi=Yr(bi,He(pr,Pi));return bi}function He(pr,zr){let $n=Pke(zr,pr,!0),bi=it($n);if(!bi)return;let Pi=jt(pr,zr),Ns=Lt(zr,!ya(zr,128)),gi=Hl(zr)&&!OS(zr)?c.createVoidZero():c.createNull(),jn=u().createDecorateHelper(bi,Pi,Ns,gi);return ao(jn,3072),Hg(jn,QS(zr)),jn}function ht(pr,zr){let $n=Et(zr);$n&&pr.push(Ho(c.createExpressionStatement($n),zr))}function Et(pr){let zr=o6e(pr),$n=it(zr);if(!$n)return;let bi=N&&N[Ey(pr)],Pi=b<2?c.getInternalName(pr,!1,!0):c.getDeclarationName(pr,!1,!0),Ns=u().createDecorateHelper($n,Pi),gi=c.createAssignment(Pi,bi?c.createAssignment(bi,Ns):Ns);return ao(gi,3072),Hg(gi,QS(pr)),gi}function Kt(pr){return w.checkDefined(xr(pr.expression,Q,tn))}function Nt(pr,zr){let $n;if(pr){$n=[];for(let bi of pr){let Pi=u().createParamHelper(Kt(bi),zr);un(Pi,bi.expression),ao(Pi,3072),$n.push(Pi)}}return $n}function Lt(pr,zr){let $n=pr.name;return Gc($n)?c.createIdentifier(""):kg($n)?zr&&!xN($n.expression)?c.getGeneratedNameForNode($n):$n.expression:sr($n)?c.createStringLiteral(oo($n)):c.cloneNode($n)}function kt(){N||(n.enableSubstitution(80),N=[])}function Zt(pr){if(I.hasNodeCheckFlag(pr,262144)){kt();let zr=c.createUniqueName(pr.name&&!Cp(pr.name)?oo(pr.name):"default");return N[Ey(pr)]=zr,d(zr),zr}}function Dr(pr){return c.createPropertyAccessExpression(c.getDeclarationName(pr),"prototype")}function jt(pr,zr){return eg(zr)?c.getDeclarationName(pr):Dr(pr)}function mr(pr,zr){return zr=R(pr,zr),pr===1?Pt(zr):zr}function Pt(pr){switch(pr.kind){case 80:return Vr(pr)}return pr}function Vr(pr){return Hr(pr)??pr}function Hr(pr){if(N&&I.hasNodeCheckFlag(pr,536870912)){let zr=I.getReferencedValueDeclaration(pr);if(zr){let $n=N[zr.id];if($n){let bi=c.cloneNode($n);return Hg(bi,pr),hA(bi,pr),bi}}}}}function fxt(n){let{factory:c,getEmitHelperFactory:u,startLexicalEnvironment:d,endLexicalEnvironment:I,hoistVariableDeclaration:h}=n,b=sA(n.getCompilerOptions()),R,N,V,P,Q,te;return uT(n,re);function re(Qe){R=void 0,te=!1;let ur=ns(Qe,je,n);return BN(ur,n.readEmitHelpers()),te&&(rM(ur,32),te=!1),ur}function ue(){switch(N=void 0,V=void 0,P=void 0,R?.kind){case"class":N=R.classInfo;break;case"class-element":N=R.next.classInfo,V=R.classThis,P=R.classSuper;break;case"name":let Qe=R.next.next.next;Qe?.kind==="class-element"&&(N=Qe.next.classInfo,V=Qe.classThis,P=Qe.classSuper);break}}function Ae(Qe){R={kind:"class",next:R,classInfo:Qe,savedPendingExpressions:Q},Q=void 0,ue()}function de(){w.assert(R?.kind==="class","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class' but got '${R?.kind}' instead.`),Q=R.savedPendingExpressions,R=R.next,ue()}function Be(Qe){var ur,Re;w.assert(R?.kind==="class","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class' but got '${R?.kind}' instead.`),R={kind:"class-element",next:R},(ef(Qe)||Hl(Qe)&&CC(Qe))&&(R.classThis=(ur=R.next.classInfo)==null?void 0:ur.classThis,R.classSuper=(Re=R.next.classInfo)==null?void 0:Re.classSuper),ue()}function Fe(){var Qe;w.assert(R?.kind==="class-element","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class-element' but got '${R?.kind}' instead.`),w.assert(((Qe=R.next)==null?void 0:Qe.kind)==="class","Incorrect value for top.next.kind.",()=>{var ur;return`Expected top.next.kind to be 'class' but got '${(ur=R.next)==null?void 0:ur.kind}' instead.`}),R=R.next,ue()}function Ne(){w.assert(R?.kind==="class-element","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class-element' but got '${R?.kind}' instead.`),R={kind:"name",next:R},ue()}function Me(){w.assert(R?.kind==="name","Incorrect value for top.kind.",()=>`Expected top.kind to be 'name' but got '${R?.kind}' instead.`),R=R.next,ue()}function De(){R?.kind==="other"?(w.assert(!Q),R.depth++):(R={kind:"other",next:R,depth:0,savedPendingExpressions:Q},Q=void 0,ue())}function lt(){w.assert(R?.kind==="other","Incorrect value for top.kind.",()=>`Expected top.kind to be 'other' but got '${R?.kind}' instead.`),R.depth>0?(w.assert(!Q),R.depth--):(Q=R.savedPendingExpressions,R=R.next,ue())}function Le(Qe){return!!(Qe.transformFlags&33554432)||!!V&&!!(Qe.transformFlags&16384)||!!V&&!!P&&!!(Qe.transformFlags&134217728)}function je(Qe){if(!Le(Qe))return Qe;switch(Qe.kind){case 170:return w.fail("Use `modifierVisitor` instead.");case 263:return Et(Qe);case 231:return Kt(Qe);case 176:case 172:case 175:return w.fail("Not supported outside of a class. Use 'classElementVisitor' instead.");case 169:return Ns(Qe);case 226:return xi(Qe,!1);case 303:return Pu(Qe);case 260:return ir(Qe);case 208:return ni(Qe);case 277:return kr(Qe);case 110:return pr(Qe);case 248:return xs(Qe);case 244:return Bc(Qe);case 355:return Wl(Qe,!1);case 217:return en(Qe,!1);case 354:return ct(Qe,!1);case 213:return zr(Qe);case 215:return $n(Qe);case 224:case 225:return rc(Qe,!1);case 211:return bi(Qe);case 212:return Pi(Qe);case 167:return _s(Qe);case 174:case 178:case 177:case 218:case 262:{De();let ur=ns(Qe,st,n);return lt(),ur}default:return ns(Qe,st,n)}}function st(Qe){switch(Qe.kind){case 170:return;default:return je(Qe)}}function nt(Qe){switch(Qe.kind){case 170:return;default:return Qe}}function qe(Qe){switch(Qe.kind){case 176:return kt(Qe);case 174:return jt(Qe);case 177:return mr(Qe);case 178:return Pt(Qe);case 172:return Hr(Qe);case 175:return Vr(Qe);default:return je(Qe)}}function it(Qe){switch(Qe.kind){case 224:case 225:return rc(Qe,!0);case 226:return xi(Qe,!0);case 355:return Wl(Qe,!0);case 217:return en(Qe,!0);default:return je(Qe)}}function It(Qe){let ur=Qe.name&&sr(Qe.name)&&!Cp(Qe.name)?oo(Qe.name):Qe.name&&Gc(Qe.name)&&!Cp(Qe.name)?oo(Qe.name).slice(1):Qe.name&&Eu(Qe.name)&&Ke(Qe.name.text,99)?Qe.name.text:va(Qe)?"class":"member";return Rv(Qe)&&(ur=`get_${ur}`),xh(Qe)&&(ur=`set_${ur}`),Qe.name&&Gc(Qe.name)&&(ur=`private_${ur}`),eg(Qe)&&(ur=`static_${ur}`),"_"+ur}function dt(Qe,ur){return c.createUniqueName(`${It(Qe)}_${ur}`,24)}function Tt(Qe,ur){return c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(Qe,void 0,void 0,ur)],1))}function St(Qe){let ur=c.createUniqueName("_metadata",48),Re,Jt,bt=!1,Vt=!1,dn=!1,On,Qn,Ii;if(VX(!1,Qe)){let ds=lr(Qe.members,Es=>(Dh(Es)||r_(Es))&&CC(Es));On=c.createUniqueName("_classThis",ds?24:48)}for(let ds of Qe.members){if(_Z(ds)&&O8(!1,ds,Qe))if(CC(ds)){if(!Jt){Jt=c.createUniqueName("_staticExtraInitializers",48);let Es=u().createRunInitializersHelper(On??c.createThis(),Jt);Hg(Es,Qe.name??rD(Qe)),Qn??(Qn=[]),Qn.push(Es)}}else{if(!Re){Re=c.createUniqueName("_instanceExtraInitializers",48);let Es=u().createRunInitializersHelper(c.createThis(),Re);Hg(Es,Qe.name??rD(Qe)),Ii??(Ii=[]),Ii.push(Es)}Re??(Re=c.createUniqueName("_instanceExtraInitializers",48))}if(ef(ds)?j6(ds)||(bt=!0):Hl(ds)&&(CC(ds)?bt||(bt=!!ds.initializer||LE(ds)):Vt||(Vt=!H$(ds))),(Dh(ds)||r_(ds))&&CC(ds)&&(dn=!0),Jt&&Re&&bt&&Vt&&dn)break}return{class:Qe,classThis:On,metadataReference:ur,instanceMethodExtraInitializersName:Re,staticMethodExtraInitializersName:Jt,hasStaticInitializers:bt,hasNonAmbientInstanceFields:Vt,hasStaticPrivateClassElements:dn,pendingStaticInitializers:Qn,pendingInstanceInitializers:Ii}}function He(Qe){d(),!l6e(Qe)&&Gx(!1,Qe)&&(Qe=Qke(n,Qe,c.createStringLiteral("")));let ur=c.getLocalName(Qe,!1,!1,!0),Re=St(Qe),Jt=[],bt,Vt,dn,On,Qn=!1,Ii=Mt(o6e(Qe));Ii&&(Re.classDecoratorsName=c.createUniqueName("_classDecorators",48),Re.classDescriptorName=c.createUniqueName("_classDescriptor",48),Re.classExtraInitializersName=c.createUniqueName("_classExtraInitializers",48),w.assertIsDefined(Re.classThis),Jt.push(Tt(Re.classDecoratorsName,c.createArrayLiteralExpression(Ii)),Tt(Re.classDescriptorName),Tt(Re.classExtraInitializersName,c.createArrayLiteralExpression()),Tt(Re.classThis)),Re.hasStaticPrivateClassElements&&(Qn=!0,te=!0));let ds=hee(Qe.heritageClauses,96),Es=ds&&$i(ds.types),so=Es&&xr(Es.expression,je,tn);if(so){Re.classSuper=c.createUniqueName("_classSuper",48);let ki=LC(so),Gs=rp(ki)&&!ki.name||PA(ki)&&!ki.name||Id(ki)?c.createComma(c.createNumericLiteral(0),so):so;Jt.push(Tt(Re.classSuper,Gs));let ri=c.updateExpressionWithTypeArguments(Es,Re.classSuper,void 0),_u=c.updateHeritageClause(ds,[ri]);On=c.createNodeArray([_u])}let Vi=Re.classThis??c.createThis();Ae(Re),bt=Yr(bt,Pe(Re.metadataReference,Re.classSuper));let xo=Qe.members;if(xo=ws(xo,ki=>Df(ki)?ki:qe(ki),nC),xo=ws(xo,ki=>Df(ki)?qe(ki):ki,nC),Q){let ki;for(let Gs of Q){Gs=xr(Gs,function _u(UA){if(!(UA.transformFlags&16384))return UA;switch(UA.kind){case 110:return ki||(ki=c.createUniqueName("_outerThis",16),Jt.unshift(Tt(ki,c.createThis()))),ki;default:return ns(UA,_u,n)}},tn);let ri=c.createExpressionStatement(Gs);bt=Yr(bt,ri)}Q=void 0}if(de(),lr(Re.pendingInstanceInitializers)&&!pN(Qe)){let ki=Nt(Qe,Re);if(ki){let Gs=xv(Qe),ri=!!(Gs&&LC(Gs.expression).kind!==106),_u=[];if(ri){let Hd=c.createSpreadElement(c.createIdentifier("arguments")),Gd=c.createCallExpression(c.createSuper(),void 0,[Hd]);_u.push(c.createExpressionStatement(Gd))}ai(_u,ki);let UA=c.createBlock(_u,!0);dn=c.createConstructorDeclaration(void 0,[],UA)}}if(Re.staticMethodExtraInitializersName&&Jt.push(Tt(Re.staticMethodExtraInitializersName,c.createArrayLiteralExpression())),Re.instanceMethodExtraInitializersName&&Jt.push(Tt(Re.instanceMethodExtraInitializersName,c.createArrayLiteralExpression())),Re.memberInfos&&UC(Re.memberInfos,(ki,Gs)=>{eg(Gs)&&(Jt.push(Tt(ki.memberDecoratorsName)),ki.memberInitializersName&&Jt.push(Tt(ki.memberInitializersName,c.createArrayLiteralExpression())),ki.memberExtraInitializersName&&Jt.push(Tt(ki.memberExtraInitializersName,c.createArrayLiteralExpression())),ki.memberDescriptorName&&Jt.push(Tt(ki.memberDescriptorName)))}),Re.memberInfos&&UC(Re.memberInfos,(ki,Gs)=>{eg(Gs)||(Jt.push(Tt(ki.memberDecoratorsName)),ki.memberInitializersName&&Jt.push(Tt(ki.memberInitializersName,c.createArrayLiteralExpression())),ki.memberExtraInitializersName&&Jt.push(Tt(ki.memberExtraInitializersName,c.createArrayLiteralExpression())),ki.memberDescriptorName&&Jt.push(Tt(ki.memberDescriptorName)))}),bt=ai(bt,Re.staticNonFieldDecorationStatements),bt=ai(bt,Re.nonStaticNonFieldDecorationStatements),bt=ai(bt,Re.staticFieldDecorationStatements),bt=ai(bt,Re.nonStaticFieldDecorationStatements),Re.classDescriptorName&&Re.classDecoratorsName&&Re.classExtraInitializersName&&Re.classThis){bt??(bt=[]);let ki=c.createPropertyAssignment("value",Vi),Gs=c.createObjectLiteralExpression([ki]),ri=c.createAssignment(Re.classDescriptorName,Gs),_u=c.createPropertyAccessExpression(Vi,"name"),UA=u().createESDecorateHelper(c.createNull(),ri,Re.classDecoratorsName,{kind:"class",name:_u,metadata:Re.metadataReference},c.createNull(),Re.classExtraInitializersName),Hd=c.createExpressionStatement(UA);Hg(Hd,rD(Qe)),bt.push(Hd);let Gd=c.createPropertyAccessExpression(Re.classDescriptorName,"value"),Nl=c.createAssignment(Re.classThis,Gd),ug=c.createAssignment(ur,Nl);bt.push(c.createExpressionStatement(ug))}if(bt.push(ar(Vi,Re.metadataReference)),lr(Re.pendingStaticInitializers)){for(let ki of Re.pendingStaticInitializers){let Gs=c.createExpressionStatement(ki);Hg(Gs,Px(ki)),Vt=Yr(Vt,Gs)}Re.pendingStaticInitializers=void 0}if(Re.classExtraInitializersName){let ki=u().createRunInitializersHelper(Vi,Re.classExtraInitializersName),Gs=c.createExpressionStatement(ki);Hg(Gs,Qe.name??rD(Qe)),Vt=Yr(Vt,Gs)}bt&&Vt&&!Re.hasStaticInitializers&&(ai(bt,Vt),Vt=void 0);let Yc=bt&&c.createClassStaticBlockDeclaration(c.createBlock(bt,!0));Yc&&Qn&&ite(Yc,32);let Il=Vt&&c.createClassStaticBlockDeclaration(c.createBlock(Vt,!0));if(Yc||dn||Il){let ki=[],Gs=xo.findIndex(j6);Yc?(ai(ki,xo,0,Gs+1),ki.push(Yc),ai(ki,xo,Gs+1)):ai(ki,xo),dn&&ki.push(dn),Il&&ki.push(Il),xo=un(c.createNodeArray(ki),xo)}let sa=I(),Ra;if(Ii){Ra=c.createClassExpression(void 0,void 0,void 0,On,xo),Re.classThis&&(Ra=oxt(c,Ra,Re.classThis));let ki=c.createVariableDeclaration(ur,void 0,void 0,Ra),Gs=c.createVariableDeclarationList([ki]),ri=Re.classThis?c.createAssignment(ur,Re.classThis):ur;Jt.push(c.createVariableStatement(void 0,Gs),c.createReturnStatement(ri))}else Ra=c.createClassExpression(void 0,Qe.name,void 0,On,xo),Jt.push(c.createReturnStatement(Ra));if(Qn){rM(Ra,32);for(let ki of Ra.members)(Dh(ki)||r_(ki))&&CC(ki)&&rM(ki,32)}return Ho(Ra,Qe),c.createImmediatelyInvokedArrowFunction(c.mergeLexicalEnvironment(Jt,sa))}function ht(Qe){return Gx(!1,Qe)||Q8(!1,Qe)}function Et(Qe){if(ht(Qe)){let ur=[],Re=Np(Qe,va)??Qe,Jt=Re.name?c.createStringLiteralFromNode(Re.name):c.createStringLiteral("default"),bt=ya(Qe,32),Vt=ya(Qe,2048);if(Qe.name||(Qe=Qke(n,Qe,Jt)),bt&&Vt){let dn=He(Qe);if(Qe.name){let On=c.createVariableDeclaration(c.getLocalName(Qe),void 0,void 0,dn);Ho(On,Qe);let Qn=c.createVariableDeclarationList([On],1),Ii=c.createVariableStatement(void 0,Qn);ur.push(Ii);let ds=c.createExportDefault(c.getDeclarationName(Qe));Ho(ds,Qe),hA(ds,US(Qe)),Hg(ds,rD(Qe)),ur.push(ds)}else{let On=c.createExportDefault(dn);Ho(On,Qe),hA(On,US(Qe)),Hg(On,rD(Qe)),ur.push(On)}}else{w.assertIsDefined(Qe.name,"A class declaration that is not a default export must have a name.");let dn=He(Qe),On=bt?Vi=>Ox(Vi)?void 0:nt(Vi):nt,Qn=ws(Qe.modifiers,On,Ag),Ii=c.getLocalName(Qe,!1,!0),ds=c.createVariableDeclaration(Ii,void 0,void 0,dn);Ho(ds,Qe);let Es=c.createVariableDeclarationList([ds],1),so=c.createVariableStatement(Qn,Es);if(Ho(so,Qe),hA(so,US(Qe)),ur.push(so),bt){let Vi=c.createExternalModuleExport(Ii);Ho(Vi,Qe),ur.push(Vi)}}return _l(ur)}else{let ur=ws(Qe.modifiers,nt,Ag),Re=ws(Qe.heritageClauses,je,OE);Ae(void 0);let Jt=ws(Qe.members,qe,nC);return de(),c.updateClassDeclaration(Qe,ur,Qe.name,void 0,Re,Jt)}}function Kt(Qe){if(ht(Qe)){let ur=He(Qe);return Ho(ur,Qe),ur}else{let ur=ws(Qe.modifiers,nt,Ag),Re=ws(Qe.heritageClauses,je,OE);Ae(void 0);let Jt=ws(Qe.members,qe,nC);return de(),c.updateClassExpression(Qe,ur,Qe.name,void 0,Re,Jt)}}function Nt(Qe,ur){if(lr(ur.pendingInstanceInitializers)){let Re=[];return Re.push(c.createExpressionStatement(c.inlineExpressions(ur.pendingInstanceInitializers))),ur.pendingInstanceInitializers=void 0,Re}}function Lt(Qe,ur,Re,Jt,bt,Vt){let dn=Jt[bt],On=ur[dn];if(ai(Qe,ws(ur,je,Cc,Re,dn-Re)),ab(On)){let Qn=[];Lt(Qn,On.tryBlock.statements,0,Jt,bt+1,Vt);let Ii=c.createNodeArray(Qn);un(Ii,On.tryBlock.statements),Qe.push(c.updateTryStatement(On,c.updateBlock(On.tryBlock,Qn),xr(On.catchClause,je,fM),xr(On.finallyBlock,je,hc)))}else ai(Qe,ws(ur,je,Cc,dn,1)),ai(Qe,Vt);ai(Qe,ws(ur,je,Cc,dn+1))}function kt(Qe){Be(Qe);let ur=ws(Qe.modifiers,nt,Ag),Re=ws(Qe.parameters,je,Uc),Jt;if(Qe.body&&N){let bt=Nt(N.class,N);if(bt){let Vt=[],dn=c.copyPrologue(Qe.body.statements,Vt,!1,je),On=Vke(Qe.body.statements,dn);On.length>0?Lt(Vt,Qe.body.statements,dn,On,0,bt):(ai(Vt,bt),ai(Vt,ws(Qe.body.statements,je,Cc))),Jt=c.createBlock(Vt,!0),Ho(Jt,Qe.body),un(Jt,Qe.body)}}return Jt??(Jt=xr(Qe.body,je,hc)),Fe(),c.updateConstructorDeclaration(Qe,ur,Re,Jt)}function Zt(Qe,ur){return Qe!==ur&&(hA(Qe,ur),Hg(Qe,rD(ur))),Qe}function Dr(Qe,ur,Re){let Jt,bt,Vt,dn,On,Qn;if(!ur){let Es=ws(Qe.modifiers,nt,Ag);return Ne(),bt=mc(Qe.name),Me(),{modifiers:Es,referencedName:Jt,name:bt,initializersName:Vt,descriptorName:Qn,thisArg:On}}let Ii=Mt(Pke(Qe,ur.class,!1)),ds=ws(Qe.modifiers,nt,Ag);if(Ii){let Es=dt(Qe,"decorators"),so=c.createArrayLiteralExpression(Ii),Vi=c.createAssignment(Es,so),xo={memberDecoratorsName:Es};ur.memberInfos??(ur.memberInfos=new Map),ur.memberInfos.set(Qe,xo),Q??(Q=[]),Q.push(Vi);let Yc=_Z(Qe)||r_(Qe)?eg(Qe)?ur.staticNonFieldDecorationStatements??(ur.staticNonFieldDecorationStatements=[]):ur.nonStaticNonFieldDecorationStatements??(ur.nonStaticNonFieldDecorationStatements=[]):Hl(Qe)&&!r_(Qe)?eg(Qe)?ur.staticFieldDecorationStatements??(ur.staticFieldDecorationStatements=[]):ur.nonStaticFieldDecorationStatements??(ur.nonStaticFieldDecorationStatements=[]):w.fail(),Il=Qb(Qe)?"getter":ob(Qe)?"setter":lI(Qe)?"method":r_(Qe)?"accessor":Hl(Qe)?"field":w.fail(),sa;if(sr(Qe.name)||Gc(Qe.name))sa={computed:!1,name:Qe.name};else if(WS(Qe.name))sa={computed:!0,name:c.createStringLiteralFromNode(Qe.name)};else{let ki=Qe.name.expression;WS(ki)&&!sr(ki)?sa={computed:!0,name:c.createStringLiteralFromNode(ki)}:(Ne(),{referencedName:Jt,name:bt}=gl(Qe.name),sa={computed:!0,name:Jt},Me())}let Ra={kind:Il,name:sa,static:eg(Qe),private:Gc(Qe.name),access:{get:Hl(Qe)||Qb(Qe)||lI(Qe),set:Hl(Qe)||ob(Qe)},metadata:ur.metadataReference};if(_Z(Qe)){let ki=eg(Qe)?ur.staticMethodExtraInitializersName:ur.instanceMethodExtraInitializersName;w.assertIsDefined(ki);let Gs;Dh(Qe)&&Re&&(Gs=Re(Qe,ws(ds,UA=>$s(UA,g4),Ag)),xo.memberDescriptorName=Qn=dt(Qe,"descriptor"),Gs=c.createAssignment(Qn,Gs));let ri=u().createESDecorateHelper(c.createThis(),Gs??c.createNull(),Es,Ra,c.createNull(),ki),_u=c.createExpressionStatement(ri);Hg(_u,rD(Qe)),Yc.push(_u)}else if(Hl(Qe)){Vt=xo.memberInitializersName??(xo.memberInitializersName=dt(Qe,"initializers")),dn=xo.memberExtraInitializersName??(xo.memberExtraInitializersName=dt(Qe,"extraInitializers")),eg(Qe)&&(On=ur.classThis);let ki;Dh(Qe)&&OS(Qe)&&Re&&(ki=Re(Qe,void 0),xo.memberDescriptorName=Qn=dt(Qe,"descriptor"),ki=c.createAssignment(Qn,ki));let Gs=u().createESDecorateHelper(r_(Qe)?c.createThis():c.createNull(),ki??c.createNull(),Es,Ra,Vt,dn),ri=c.createExpressionStatement(Gs);Hg(ri,rD(Qe)),Yc.push(ri)}}return bt===void 0&&(Ne(),bt=mc(Qe.name),Me()),!lr(ds)&&(lI(Qe)||Hl(Qe))&&ao(bt,1024),{modifiers:ds,referencedName:Jt,name:bt,initializersName:Vt,extraInitializersName:dn,descriptorName:Qn,thisArg:On}}function jt(Qe){Be(Qe);let{modifiers:ur,name:Re,descriptorName:Jt}=Dr(Qe,N,ti);if(Jt)return Fe(),Zt(an(ur,Re,Jt),Qe);{let bt=ws(Qe.parameters,je,Uc),Vt=xr(Qe.body,je,hc);return Fe(),Zt(c.updateMethodDeclaration(Qe,ur,Qe.asteriskToken,Re,void 0,void 0,bt,void 0,Vt),Qe)}}function mr(Qe){Be(Qe);let{modifiers:ur,name:Re,descriptorName:Jt}=Dr(Qe,N,cr);if(Jt)return Fe(),Zt(Kr(ur,Re,Jt),Qe);{let bt=ws(Qe.parameters,je,Uc),Vt=xr(Qe.body,je,hc);return Fe(),Zt(c.updateGetAccessorDeclaration(Qe,ur,Re,bt,void 0,Vt),Qe)}}function Pt(Qe){Be(Qe);let{modifiers:ur,name:Re,descriptorName:Jt}=Dr(Qe,N,kn);if(Jt)return Fe(),Zt(wn(ur,Re,Jt),Qe);{let bt=ws(Qe.parameters,je,Uc),Vt=xr(Qe.body,je,hc);return Fe(),Zt(c.updateSetAccessorDeclaration(Qe,ur,Re,bt,Vt),Qe)}}function Vr(Qe){Be(Qe);let ur;if(j6(Qe))ur=ns(Qe,je,n);else if(gue(Qe)){let Re=V;V=void 0,ur=ns(Qe,je,n),V=Re}else if(Qe=ns(Qe,je,n),ur=Qe,N&&(N.hasStaticInitializers=!0,lr(N.pendingStaticInitializers))){let Re=[];for(let Vt of N.pendingStaticInitializers){let dn=c.createExpressionStatement(Vt);Hg(dn,Px(Vt)),Re.push(dn)}let Jt=c.createBlock(Re,!0);ur=[c.createClassStaticBlockDeclaration(Jt),ur],N.pendingStaticInitializers=void 0}return Fe(),ur}function Hr(Qe){rb(Qe,gi)&&(Qe=QE(n,Qe,jn(Qe.initializer))),Be(Qe),w.assert(!H$(Qe),"Not yet implemented.");let{modifiers:ur,name:Re,initializersName:Jt,extraInitializersName:bt,descriptorName:Vt,thisArg:dn}=Dr(Qe,N,OS(Qe)?Pn:void 0);d();let On=xr(Qe.initializer,je,tn);Jt&&(On=u().createRunInitializersHelper(dn??c.createThis(),Jt,On??c.createVoidZero())),eg(Qe)&&N&&On&&(N.hasStaticInitializers=!0);let Qn=I();if(lr(Qn)&&(On=c.createImmediatelyInvokedArrowFunction([...Qn,c.createReturnStatement(On)])),N&&(eg(Qe)?(On=br(N,!0,On),bt&&(N.pendingStaticInitializers??(N.pendingStaticInitializers=[]),N.pendingStaticInitializers.push(u().createRunInitializersHelper(N.classThis??c.createThis(),bt)))):(On=br(N,!1,On),bt&&(N.pendingInstanceInitializers??(N.pendingInstanceInitializers=[]),N.pendingInstanceInitializers.push(u().createRunInitializersHelper(c.createThis(),bt))))),Fe(),OS(Qe)&&Vt){let Ii=US(Qe),ds=Px(Qe),Es=Qe.name,so=Es,Vi=Es;if(kg(Es)&&!xN(Es.expression)){let Ra=oke(Es);if(Ra)so=c.updateComputedPropertyName(Es,xr(Es.expression,je,tn)),Vi=c.updateComputedPropertyName(Es,Ra.left);else{let ki=c.createTempVariable(h);Hg(ki,Es.expression);let Gs=xr(Es.expression,je,tn),ri=c.createAssignment(ki,Gs);Hg(ri,Es.expression),so=c.updateComputedPropertyName(Es,ri),Vi=c.updateComputedPropertyName(Es,ki)}}let xo=ws(ur,Ra=>Ra.kind!==129?Ra:void 0,Ag),Yc=i8e(c,Qe,xo,On);Ho(Yc,Qe),ao(Yc,3072),Hg(Yc,ds),Hg(Yc.name,Qe.name);let Il=Kr(xo,so,Vt);Ho(Il,Qe),hA(Il,Ii),Hg(Il,ds);let sa=wn(xo,Vi,Vt);return Ho(sa,Qe),ao(sa,3072),Hg(sa,ds),[Yc,Il,sa]}return Zt(c.updatePropertyDeclaration(Qe,ur,Re,void 0,void 0,On),Qe)}function pr(Qe){return V??Qe}function zr(Qe){if(M0(Qe.expression)&&V){let ur=xr(Qe.expression,je,tn),Re=ws(Qe.arguments,je,tn),Jt=c.createFunctionCallCall(ur,V,Re);return Ho(Jt,Qe),un(Jt,Qe),Jt}return ns(Qe,je,n)}function $n(Qe){if(M0(Qe.tag)&&V){let ur=xr(Qe.tag,je,tn),Re=c.createFunctionBindCall(ur,V,[]);Ho(Re,Qe),un(Re,Qe);let Jt=xr(Qe.template,je,k1);return c.updateTaggedTemplateExpression(Qe,Re,void 0,Jt)}return ns(Qe,je,n)}function bi(Qe){if(M0(Qe)&&sr(Qe.name)&&V&&P){let ur=c.createStringLiteralFromNode(Qe.name),Re=c.createReflectGetCall(P,ur,V);return Ho(Re,Qe.expression),un(Re,Qe.expression),Re}return ns(Qe,je,n)}function Pi(Qe){if(M0(Qe)&&V&&P){let ur=xr(Qe.argumentExpression,je,tn),Re=c.createReflectGetCall(P,ur,V);return Ho(Re,Qe.expression),un(Re,Qe.expression),Re}return ns(Qe,je,n)}function Ns(Qe){rb(Qe,gi)&&(Qe=QE(n,Qe,jn(Qe.initializer)));let ur=c.updateParameterDeclaration(Qe,void 0,Qe.dotDotDotToken,xr(Qe.name,je,hZ),void 0,void 0,xr(Qe.initializer,je,tn));return ur!==Qe&&(hA(ur,Qe),un(ur,QS(Qe)),Hg(ur,QS(Qe)),ao(ur.name,64)),ur}function gi(Qe){return rp(Qe)&&!Qe.name&&ht(Qe)}function jn(Qe){let ur=LC(Qe);return rp(ur)&&!ur.name&&!Gx(!1,ur)}function xs(Qe){return c.updateForStatement(Qe,xr(Qe.initializer,it,O0),xr(Qe.condition,je,tn),xr(Qe.incrementor,it,tn),by(Qe.statement,je,n))}function Bc(Qe){return ns(Qe,it,n)}function xi(Qe,ur){if(Gv(Qe)){let Re=vA(Qe.left),Jt=xr(Qe.right,je,tn);return c.updateBinaryExpression(Qe,Re,Qe.operatorToken,Jt)}if(Im(Qe)){if(rb(Qe,gi))return Qe=QE(n,Qe,jn(Qe.right)),ns(Qe,je,n);if(M0(Qe.left)&&V&&P){let Re=_A(Qe.left)?xr(Qe.left.argumentExpression,je,tn):sr(Qe.left.name)?c.createStringLiteralFromNode(Qe.left.name):void 0;if(Re){let Jt=xr(Qe.right,je,tn);if(cue(Qe.operatorToken.kind)){let Vt=Re;xN(Re)||(Vt=c.createTempVariable(h),Re=c.createAssignment(Vt,Re));let dn=c.createReflectGetCall(P,Vt,V);Ho(dn,Qe.left),un(dn,Qe.left),Jt=c.createBinaryExpression(dn,lue(Qe.operatorToken.kind),Jt),un(Jt,Qe)}let bt=ur?void 0:c.createTempVariable(h);return bt&&(Jt=c.createAssignment(bt,Jt),un(bt,Qe)),Jt=c.createReflectSetCall(P,Re,Jt,V),Ho(Jt,Qe),un(Jt,Qe),bt&&(Jt=c.createComma(Jt,bt),un(Jt,Qe)),Jt}}}if(Qe.operatorToken.kind===28){let Re=xr(Qe.left,it,tn),Jt=xr(Qe.right,ur?it:je,tn);return c.updateBinaryExpression(Qe,Re,Qe.operatorToken,Jt)}return ns(Qe,je,n)}function rc(Qe,ur){if(Qe.operator===46||Qe.operator===47){let Re=zA(Qe.operand);if(M0(Re)&&V&&P){let Jt=_A(Re)?xr(Re.argumentExpression,je,tn):sr(Re.name)?c.createStringLiteralFromNode(Re.name):void 0;if(Jt){let bt=Jt;xN(Jt)||(bt=c.createTempVariable(h),Jt=c.createAssignment(bt,Jt));let Vt=c.createReflectGetCall(P,bt,V);Ho(Vt,Qe),un(Vt,Qe);let dn=ur?void 0:c.createTempVariable(h);return Vt=$xe(c,Qe,Vt,h,dn),Vt=c.createReflectSetCall(P,Jt,Vt,V),Ho(Vt,Qe),un(Vt,Qe),dn&&(Vt=c.createComma(Vt,dn),un(Vt,Qe)),Vt}}}return ns(Qe,je,n)}function Wl(Qe,ur){let Re=ur?A_e(Qe.elements,it):A_e(Qe.elements,je,it);return c.updateCommaListExpression(Qe,Re)}function gl(Qe){if(WS(Qe)||Gc(Qe)){let Vt=c.createStringLiteralFromNode(Qe),dn=xr(Qe,je,RI);return{referencedName:Vt,name:dn}}if(WS(Qe.expression)&&!sr(Qe.expression)){let Vt=c.createStringLiteralFromNode(Qe.expression),dn=xr(Qe,je,RI);return{referencedName:Vt,name:dn}}let ur=c.getGeneratedNameForNode(Qe);h(ur);let Re=u().createPropKeyHelper(xr(Qe.expression,je,tn)),Jt=c.createAssignment(ur,Re),bt=c.updateComputedPropertyName(Qe,wt(Jt));return{referencedName:ur,name:bt}}function mc(Qe){return kg(Qe)?_s(Qe):xr(Qe,je,RI)}function _s(Qe){let ur=xr(Qe.expression,je,tn);return xN(ur)||(ur=wt(ur)),c.updateComputedPropertyName(Qe,ur)}function Pu(Qe){return rb(Qe,gi)&&(Qe=QE(n,Qe,jn(Qe.initializer))),ns(Qe,je,n)}function ir(Qe){return rb(Qe,gi)&&(Qe=QE(n,Qe,jn(Qe.initializer))),ns(Qe,je,n)}function ni(Qe){return rb(Qe,gi)&&(Qe=QE(n,Qe,jn(Qe.initializer))),ns(Qe,je,n)}function gs(Qe){if(ru(Qe)||Cf(Qe))return vA(Qe);if(M0(Qe)&&V&&P){let ur=_A(Qe)?xr(Qe.argumentExpression,je,tn):sr(Qe.name)?c.createStringLiteralFromNode(Qe.name):void 0;if(ur){let Re=c.createTempVariable(void 0),Jt=c.createAssignmentTargetWrapper(Re,c.createReflectSetCall(P,ur,Re,V));return Ho(Jt,Qe),un(Jt,Qe),Jt}}return ns(Qe,je,n)}function Hs(Qe){if(Im(Qe,!0)){rb(Qe,gi)&&(Qe=QE(n,Qe,jn(Qe.right)));let ur=gs(Qe.left),Re=xr(Qe.right,je,tn);return c.updateBinaryExpression(Qe,ur,Qe.operatorToken,Re)}else return gs(Qe)}function za(Qe){if(N_(Qe.expression)){let ur=gs(Qe.expression);return c.updateSpreadElement(Qe,ur)}return ns(Qe,je,n)}function nc(Qe){return w.assertNode(Qe,bX),fh(Qe)?za(Qe):tf(Qe)?ns(Qe,je,n):Hs(Qe)}function Rc(Qe){let ur=xr(Qe.name,je,RI);if(Im(Qe.initializer,!0)){let Re=Hs(Qe.initializer);return c.updatePropertyAssignment(Qe,ur,Re)}if(N_(Qe.initializer)){let Re=gs(Qe.initializer);return c.updatePropertyAssignment(Qe,ur,Re)}return ns(Qe,je,n)}function lg(Qe){return rb(Qe,gi)&&(Qe=QE(n,Qe,jn(Qe.objectAssignmentInitializer))),ns(Qe,je,n)}function ju(Qe){if(N_(Qe.expression)){let ur=gs(Qe.expression);return c.updateSpreadAssignment(Qe,ur)}return ns(Qe,je,n)}function Bi(Qe){return w.assertNode(Qe,yX),Ux(Qe)?ju(Qe):F_(Qe)?lg(Qe):jC(Qe)?Rc(Qe):ns(Qe,je,n)}function vA(Qe){if(Cf(Qe)){let ur=ws(Qe.elements,nc,tn);return c.updateArrayLiteralExpression(Qe,ur)}else{let ur=ws(Qe.properties,Bi,vB);return c.updateObjectLiteralExpression(Qe,ur)}}function kr(Qe){return rb(Qe,gi)&&(Qe=QE(n,Qe,jn(Qe.expression))),ns(Qe,je,n)}function en(Qe,ur){let Re=ur?it:je,Jt=xr(Qe.expression,Re,tn);return c.updateParenthesizedExpression(Qe,Jt)}function ct(Qe,ur){let Re=ur?it:je,Jt=xr(Qe.expression,Re,tn);return c.updatePartiallyEmittedExpression(Qe,Jt)}function rn(Qe,ur){return lr(Qe)&&(ur?ZC(ur)?(Qe.push(ur.expression),ur=c.updateParenthesizedExpression(ur,c.inlineExpressions(Qe))):(Qe.push(ur),ur=c.inlineExpressions(Qe)):ur=c.inlineExpressions(Qe)),ur}function wt(Qe){let ur=rn(Q,Qe);return w.assertIsDefined(ur),ur!==Qe&&(Q=void 0),ur}function br(Qe,ur,Re){let Jt=rn(ur?Qe.pendingStaticInitializers:Qe.pendingInstanceInitializers,Re);return Jt!==Re&&(ur?Qe.pendingStaticInitializers=void 0:Qe.pendingInstanceInitializers=void 0),Jt}function Mt(Qe){if(!Qe)return;let ur=[];return ai(ur,Ot(Qe.decorators,_r)),ur}function _r(Qe){let ur=xr(Qe.expression,je,tn);ao(ur,3072);let Re=LC(ur);if(mp(Re)){let{target:Jt,thisArg:bt}=c.createCallBinding(ur,h,b,!0);return c.restoreOuterExpressions(ur,c.createFunctionBindCall(Jt,bt,[]))}return ur}function Pr(Qe,ur,Re,Jt,bt,Vt,dn){let On=c.createFunctionExpression(Re,Jt,void 0,void 0,Vt,void 0,dn??c.createBlock([]));Ho(On,Qe),Hg(On,rD(Qe)),ao(On,3072);let Qn=bt==="get"||bt==="set"?bt:void 0,Ii=c.createStringLiteralFromNode(ur,void 0),ds=u().createSetFunctionNameHelper(On,Ii,Qn),Es=c.createPropertyAssignment(c.createIdentifier(bt),ds);return Ho(Es,Qe),Hg(Es,rD(Qe)),ao(Es,3072),Es}function ti(Qe,ur){return c.createObjectLiteralExpression([Pr(Qe,Qe.name,ur,Qe.asteriskToken,"value",ws(Qe.parameters,je,Uc),xr(Qe.body,je,hc))])}function cr(Qe,ur){return c.createObjectLiteralExpression([Pr(Qe,Qe.name,ur,void 0,"get",[],xr(Qe.body,je,hc))])}function kn(Qe,ur){return c.createObjectLiteralExpression([Pr(Qe,Qe.name,ur,void 0,"set",ws(Qe.parameters,je,Uc),xr(Qe.body,je,hc))])}function Pn(Qe,ur){return c.createObjectLiteralExpression([Pr(Qe,Qe.name,ur,void 0,"get",[],c.createBlock([c.createReturnStatement(c.createPropertyAccessExpression(c.createThis(),c.getGeneratedPrivateNameForNode(Qe.name)))])),Pr(Qe,Qe.name,ur,void 0,"set",[c.createParameterDeclaration(void 0,void 0,"value")],c.createBlock([c.createExpressionStatement(c.createAssignment(c.createPropertyAccessExpression(c.createThis(),c.getGeneratedPrivateNameForNode(Qe.name)),c.createIdentifier("value")))]))])}function an(Qe,ur,Re){return Qe=ws(Qe,Jt=>iT(Jt)?Jt:void 0,Ag),c.createGetAccessorDeclaration(Qe,ur,[],void 0,c.createBlock([c.createReturnStatement(c.createPropertyAccessExpression(Re,c.createIdentifier("value")))]))}function Kr(Qe,ur,Re){return Qe=ws(Qe,Jt=>iT(Jt)?Jt:void 0,Ag),c.createGetAccessorDeclaration(Qe,ur,[],void 0,c.createBlock([c.createReturnStatement(c.createFunctionCallCall(c.createPropertyAccessExpression(Re,c.createIdentifier("get")),c.createThis(),[]))]))}function wn(Qe,ur,Re){return Qe=ws(Qe,Jt=>iT(Jt)?Jt:void 0,Ag),c.createSetAccessorDeclaration(Qe,ur,[c.createParameterDeclaration(void 0,void 0,"value")],c.createBlock([c.createReturnStatement(c.createFunctionCallCall(c.createPropertyAccessExpression(Re,c.createIdentifier("set")),c.createThis(),[c.createIdentifier("value")]))]))}function Pe(Qe,ur){let Re=c.createVariableDeclaration(Qe,void 0,void 0,c.createConditionalExpression(c.createLogicalAnd(c.createTypeCheck(c.createIdentifier("Symbol"),"function"),c.createPropertyAccessExpression(c.createIdentifier("Symbol"),"metadata")),c.createToken(58),c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("Object"),"create"),void 0,[ur?sn(ur):c.createNull()]),c.createToken(59),c.createVoidZero()));return c.createVariableStatement(void 0,c.createVariableDeclarationList([Re],2))}function ar(Qe,ur){let Re=c.createObjectDefinePropertyCall(Qe,c.createPropertyAccessExpression(c.createIdentifier("Symbol"),"metadata"),c.createPropertyDescriptor({configurable:!0,writable:!0,enumerable:!0,value:ur},!0));return ao(c.createIfStatement(ur,c.createExpressionStatement(Re)),1)}function sn(Qe){return c.createBinaryExpression(c.createElementAccessExpression(Qe,c.createPropertyAccessExpression(c.createIdentifier("Symbol"),"metadata")),61,c.createNull())}}function Ixt(n){let{factory:c,getEmitHelperFactory:u,resumeLexicalEnvironment:d,endLexicalEnvironment:I,hoistVariableDeclaration:h}=n,b=n.getEmitResolver(),R=n.getCompilerOptions(),N=sA(R),V,P=0,Q,te,re,ue,Ae=[],de=0,Be=n.onEmitNode,Fe=n.onSubstituteNode;return n.onEmitNode=Bc,n.onSubstituteNode=xi,uT(n,Ne);function Ne(ir){if(ir.isDeclarationFile)return ir;Me(1,!1),Me(2,!kX(ir,R));let ni=ns(ir,qe,n);return BN(ni,n.readEmitHelpers()),ni}function Me(ir,ni){de=ni?de|ir:de&~ir}function De(ir){return(de&ir)!==0}function lt(){return!De(1)}function Le(){return De(2)}function je(ir,ni,gs){let Hs=ir&~de;if(Hs){Me(Hs,!0);let za=ni(gs);return Me(Hs,!1),za}return ni(gs)}function st(ir){return ns(ir,qe,n)}function nt(ir){switch(ir.kind){case 218:case 262:case 174:case 177:case 178:case 176:return ir;case 169:case 208:case 260:break;case 80:if(ue&&b.isArgumentsLocalBinding(ir))return ue;break}return ns(ir,nt,n)}function qe(ir){if(!(ir.transformFlags&256))return ue?nt(ir):ir;switch(ir.kind){case 134:return;case 223:return ht(ir);case 174:return je(3,Kt,ir);case 262:return je(3,kt,ir);case 218:return je(3,Zt,ir);case 219:return je(1,Dr,ir);case 211:return te&&fo(ir)&&ir.expression.kind===108&&te.add(ir.name.escapedText),ns(ir,qe,n);case 212:return te&&ir.expression.kind===108&&(re=!0),ns(ir,qe,n);case 177:return je(3,Nt,ir);case 178:return je(3,Lt,ir);case 176:return je(3,Et,ir);case 263:case 231:return je(3,st,ir);default:return ns(ir,qe,n)}}function it(ir){if(qRe(ir))switch(ir.kind){case 243:return dt(ir);case 248:return He(ir);case 249:return Tt(ir);case 250:return St(ir);case 299:return It(ir);case 241:case 255:case 269:case 296:case 297:case 258:case 246:case 247:case 245:case 254:case 256:return ns(ir,it,n);default:return w.assertNever(ir,"Unhandled node.")}return qe(ir)}function It(ir){let ni=new Set;jt(ir.variableDeclaration,ni);let gs;if(ni.forEach((Hs,za)=>{Q.has(za)&&(gs||(gs=new Set(Q)),gs.delete(za))}),gs){let Hs=Q;Q=gs;let za=ns(ir,it,n);return Q=Hs,za}else return ns(ir,it,n)}function dt(ir){if(mr(ir.declarationList)){let ni=Pt(ir.declarationList,!1);return ni?c.createExpressionStatement(ni):void 0}return ns(ir,qe,n)}function Tt(ir){return c.updateForInStatement(ir,mr(ir.initializer)?Pt(ir.initializer,!0):w.checkDefined(xr(ir.initializer,qe,O0)),w.checkDefined(xr(ir.expression,qe,tn)),by(ir.statement,it,n))}function St(ir){return c.updateForOfStatement(ir,xr(ir.awaitModifier,qe,Ple),mr(ir.initializer)?Pt(ir.initializer,!0):w.checkDefined(xr(ir.initializer,qe,O0)),w.checkDefined(xr(ir.expression,qe,tn)),by(ir.statement,it,n))}function He(ir){let ni=ir.initializer;return c.updateForStatement(ir,mr(ni)?Pt(ni,!1):xr(ir.initializer,qe,O0),xr(ir.condition,qe,tn),xr(ir.incrementor,qe,tn),by(ir.statement,it,n))}function ht(ir){return lt()?ns(ir,qe,n):Ho(un(c.createYieldExpression(void 0,xr(ir.expression,qe,tn)),ir),ir)}function Et(ir){let ni=ue;ue=void 0;let gs=c.updateConstructorDeclaration(ir,ws(ir.modifiers,qe,Ag),_I(ir.parameters,qe,n),$n(ir));return ue=ni,gs}function Kt(ir){let ni,gs=YI(ir),Hs=ue;ue=void 0;let za=c.updateMethodDeclaration(ir,ws(ir.modifiers,qe,Rp),ir.asteriskToken,ir.name,void 0,void 0,ni=gs&2?Pi(ir):_I(ir.parameters,qe,n),void 0,gs&2?Ns(ir,ni):$n(ir));return ue=Hs,za}function Nt(ir){let ni=ue;ue=void 0;let gs=c.updateGetAccessorDeclaration(ir,ws(ir.modifiers,qe,Rp),ir.name,_I(ir.parameters,qe,n),void 0,$n(ir));return ue=ni,gs}function Lt(ir){let ni=ue;ue=void 0;let gs=c.updateSetAccessorDeclaration(ir,ws(ir.modifiers,qe,Rp),ir.name,_I(ir.parameters,qe,n),$n(ir));return ue=ni,gs}function kt(ir){let ni,gs=ue;ue=void 0;let Hs=YI(ir),za=c.updateFunctionDeclaration(ir,ws(ir.modifiers,qe,Rp),ir.asteriskToken,ir.name,void 0,ni=Hs&2?Pi(ir):_I(ir.parameters,qe,n),void 0,Hs&2?Ns(ir,ni):V2(ir.body,qe,n));return ue=gs,za}function Zt(ir){let ni,gs=ue;ue=void 0;let Hs=YI(ir),za=c.updateFunctionExpression(ir,ws(ir.modifiers,qe,Ag),ir.asteriskToken,ir.name,void 0,ni=Hs&2?Pi(ir):_I(ir.parameters,qe,n),void 0,Hs&2?Ns(ir,ni):V2(ir.body,qe,n));return ue=gs,za}function Dr(ir){let ni,gs=YI(ir);return c.updateArrowFunction(ir,ws(ir.modifiers,qe,Ag),void 0,ni=gs&2?Pi(ir):_I(ir.parameters,qe,n),void 0,ir.equalsGreaterThanToken,gs&2?Ns(ir,ni):V2(ir.body,qe,n))}function jt({name:ir},ni){if(sr(ir))ni.add(ir.escapedText);else for(let gs of ir.elements)tf(gs)||jt(gs,ni)}function mr(ir){return!!ir&&bl(ir)&&!(ir.flags&7)&&ir.declarations.some(zr)}function Pt(ir,ni){Vr(ir);let gs=p6(ir);return gs.length===0?ni?xr(c.converters.convertToAssignmentElementTarget(ir.declarations[0].name),qe,tn):void 0:c.inlineExpressions(Ot(gs,pr))}function Vr(ir){X(ir.declarations,Hr)}function Hr({name:ir}){if(sr(ir))h(ir);else for(let ni of ir.elements)tf(ni)||Hr(ni)}function pr(ir){let ni=Hg(c.createAssignment(c.converters.convertToAssignmentElementTarget(ir.name),ir.initializer),ir);return w.checkDefined(xr(ni,qe,tn))}function zr({name:ir}){if(sr(ir))return Q.has(ir.escapedText);for(let ni of ir.elements)if(!tf(ni)&&zr(ni))return!0;return!1}function $n(ir){w.assertIsDefined(ir.body);let ni=te,gs=re;te=new Set,re=!1;let Hs=V2(ir.body,qe,n),za=Np(ir,pd);if(N>=2&&(b.hasNodeCheckFlag(ir,256)||b.hasNodeCheckFlag(ir,128))&&(YI(za)&3)!==3){if(xs(),te.size){let Rc=Mke(c,b,ir,te);Ae[od(Rc)]=!0;let lg=Hs.statements.slice();GS(lg,[Rc]),Hs=c.updateBlock(Hs,lg)}re&&(b.hasNodeCheckFlag(ir,256)?sM(Hs,jS):b.hasNodeCheckFlag(ir,128)&&sM(Hs,Vle))}return te=ni,re=gs,Hs}function bi(){w.assert(ue);let ir=c.createVariableDeclaration(ue,void 0,void 0,c.createIdentifier("arguments")),ni=c.createVariableStatement(void 0,[ir]);return u0(ni),JS(ni,2097152),ni}function Pi(ir){if(p_e(ir.parameters))return _I(ir.parameters,qe,n);let ni=[];for(let Hs of ir.parameters){if(Hs.initializer||Hs.dotDotDotToken){if(ir.kind===219){let nc=c.createParameterDeclaration(void 0,c.createToken(26),c.createUniqueName("args",8));ni.push(nc)}break}let za=c.createParameterDeclaration(void 0,void 0,c.getGeneratedNameForNode(Hs.name,8));ni.push(za)}let gs=c.createNodeArray(ni);return un(gs,ir.parameters),gs}function Ns(ir,ni){let gs=p_e(ir.parameters)?void 0:_I(ir.parameters,qe,n);d();let za=Np(ir,eu).type,nc=N<2?jn(za):void 0,Rc=ir.kind===219,lg=ue,Bi=b.hasNodeCheckFlag(ir,512)&&!ue;Bi&&(ue=c.createUniqueName("arguments"));let vA;if(gs)if(Rc){let Mt=[];w.assert(ni.length<=ir.parameters.length);for(let _r=0;_r=2&&(b.hasNodeCheckFlag(ir,256)||b.hasNodeCheckFlag(ir,128));if(_r&&(xs(),te.size)){let ti=Mke(c,b,ir,te);Ae[od(ti)]=!0,GS(Mt,[ti])}Bi&&GS(Mt,[bi()]);let Pr=c.createBlock(Mt,!0);un(Pr,ir.body),_r&&re&&(b.hasNodeCheckFlag(ir,256)?sM(Pr,jS):b.hasNodeCheckFlag(ir,128)&&sM(Pr,Vle)),br=Pr}return Q=kr,Rc||(te=en,re=ct,ue=lg),br}function gi(ir,ni){return hc(ir)?c.updateBlock(ir,ws(ir.statements,it,Cc,ni)):c.converters.convertToFunctionBlock(w.checkDefined(xr(ir,it,XR)))}function jn(ir){let ni=ir&&$$(ir);if(ni&&T_(ni)){let gs=b.getTypeReferenceSerializationKind(ni);if(gs===1||gs===0)return ni}}function xs(){V&1||(V|=1,n.enableSubstitution(213),n.enableSubstitution(211),n.enableSubstitution(212),n.enableEmitNotification(263),n.enableEmitNotification(174),n.enableEmitNotification(177),n.enableEmitNotification(178),n.enableEmitNotification(176),n.enableEmitNotification(243))}function Bc(ir,ni,gs){if(V&1&&_s(ni)){let Hs=(b.hasNodeCheckFlag(ni,128)?128:0)|(b.hasNodeCheckFlag(ni,256)?256:0);if(Hs!==P){let za=P;P=Hs,Be(ir,ni,gs),P=za;return}}else if(V&&Ae[od(ni)]){let Hs=P;P=0,Be(ir,ni,gs),P=Hs;return}Be(ir,ni,gs)}function xi(ir,ni){return ni=Fe(ir,ni),ir===1&&P?rc(ni):ni}function rc(ir){switch(ir.kind){case 211:return Wl(ir);case 212:return gl(ir);case 213:return mc(ir)}return ir}function Wl(ir){return ir.expression.kind===108?un(c.createPropertyAccessExpression(c.createUniqueName("_super",48),ir.name),ir):ir}function gl(ir){return ir.expression.kind===108?Pu(ir.argumentExpression,ir):ir}function mc(ir){let ni=ir.expression;if(M0(ni)){let gs=fo(ni)?Wl(ni):gl(ni);return c.createCallExpression(c.createPropertyAccessExpression(gs,"call"),void 0,[c.createThis(),...ir.arguments])}return ir}function _s(ir){let ni=ir.kind;return ni===263||ni===176||ni===174||ni===177||ni===178}function Pu(ir,ni){return P&256?un(c.createPropertyAccessExpression(c.createCallExpression(c.createUniqueName("_superIndex",48),void 0,[ir]),"value"),ni):un(c.createCallExpression(c.createUniqueName("_superIndex",48),void 0,[ir]),ni)}}function Mke(n,c,u,d){let I=c.hasNodeCheckFlag(u,256),h=[];return d.forEach((b,R)=>{let N=wc(R),V=[];V.push(n.createPropertyAssignment("get",n.createArrowFunction(void 0,void 0,[],void 0,void 0,ao(n.createPropertyAccessExpression(ao(n.createSuper(),8),N),8)))),I&&V.push(n.createPropertyAssignment("set",n.createArrowFunction(void 0,void 0,[n.createParameterDeclaration(void 0,void 0,"v",void 0,void 0,void 0)],void 0,void 0,n.createAssignment(ao(n.createPropertyAccessExpression(ao(n.createSuper(),8),N),8),n.createIdentifier("v"))))),h.push(n.createPropertyAssignment(N,n.createObjectLiteralExpression(V)))}),n.createVariableStatement(void 0,n.createVariableDeclarationList([n.createVariableDeclaration(n.createUniqueName("_super",48),void 0,void 0,n.createCallExpression(n.createPropertyAccessExpression(n.createIdentifier("Object"),"create"),void 0,[n.createNull(),n.createObjectLiteralExpression(h,!0)]))],2))}function Cxt(n){let{factory:c,getEmitHelperFactory:u,resumeLexicalEnvironment:d,endLexicalEnvironment:I,hoistVariableDeclaration:h}=n,b=n.getEmitResolver(),R=n.getCompilerOptions(),N=sA(R),V=n.onEmitNode;n.onEmitNode=lg;let P=n.onSubstituteNode;n.onSubstituteNode=ju;let Q=!1,te,re,ue,Ae=0,de=0,Be,Fe,Ne,Me,De=[];return uT(n,nt);function lt(wt,br){return de!==(de&~wt|br)}function Le(wt,br){let Mt=de;return de=(de&~wt|br)&3,Mt}function je(wt){de=wt}function st(wt){Fe=Yr(Fe,c.createVariableDeclaration(wt))}function nt(wt){if(wt.isDeclarationFile)return wt;Be=wt;let br=Dr(wt);return BN(br,n.readEmitHelpers()),Be=void 0,Fe=void 0,br}function qe(wt){return St(wt,!1)}function it(wt){return St(wt,!0)}function It(wt){if(wt.kind!==134)return wt}function dt(wt,br,Mt,_r){if(lt(Mt,_r)){let Pr=Le(Mt,_r),ti=wt(br);return je(Pr),ti}return wt(br)}function Tt(wt){return ns(wt,qe,n)}function St(wt,br){if(!(wt.transformFlags&128))return wt;switch(wt.kind){case 223:return He(wt);case 229:return ht(wt);case 253:return Et(wt);case 256:return Kt(wt);case 210:return Lt(wt);case 226:return mr(wt,br);case 355:return Pt(wt,br);case 299:return Vr(wt);case 243:return Hr(wt);case 260:return pr(wt);case 246:case 247:case 249:return dt(Tt,wt,0,2);case 250:return Pi(wt,void 0);case 248:return dt($n,wt,0,2);case 222:return bi(wt);case 176:return dt(Wl,wt,2,1);case 174:return dt(_s,wt,2,1);case 177:return dt(gl,wt,2,1);case 178:return dt(mc,wt,2,1);case 262:return dt(Pu,wt,2,1);case 218:return dt(ni,wt,2,1);case 219:return dt(ir,wt,2,0);case 169:return xi(wt);case 244:return kt(wt);case 217:return Zt(wt,br);case 215:return jt(wt);case 211:return Ne&&fo(wt)&&wt.expression.kind===108&&Ne.add(wt.name.escapedText),ns(wt,qe,n);case 212:return Ne&&wt.expression.kind===108&&(Me=!0),ns(wt,qe,n);case 263:case 231:return dt(Tt,wt,2,1);default:return ns(wt,qe,n)}}function He(wt){return re&2&&re&1?Ho(un(c.createYieldExpression(void 0,u().createAwaitHelper(xr(wt.expression,qe,tn))),wt),wt):ns(wt,qe,n)}function ht(wt){if(re&2&&re&1){if(wt.asteriskToken){let br=xr(w.checkDefined(wt.expression),qe,tn);return Ho(un(c.createYieldExpression(void 0,u().createAwaitHelper(c.updateYieldExpression(wt,wt.asteriskToken,un(u().createAsyncDelegatorHelper(un(u().createAsyncValuesHelper(br),br)),br)))),wt),wt)}return Ho(un(c.createYieldExpression(void 0,jn(wt.expression?xr(wt.expression,qe,tn):c.createVoidZero())),wt),wt)}return ns(wt,qe,n)}function Et(wt){return re&2&&re&1?c.updateReturnStatement(wt,jn(wt.expression?xr(wt.expression,qe,tn):c.createVoidZero())):ns(wt,qe,n)}function Kt(wt){if(re&2){let br=cme(wt);return br.kind===250&&br.awaitModifier?Pi(br,wt):c.restoreEnclosingLabel(xr(br,qe,Cc,c.liftToBlock),wt)}return ns(wt,qe,n)}function Nt(wt){let br,Mt=[];for(let _r of wt)if(_r.kind===305){br&&(Mt.push(c.createObjectLiteralExpression(br)),br=void 0);let Pr=_r.expression;Mt.push(xr(Pr,qe,tn))}else br=Yr(br,_r.kind===303?c.createPropertyAssignment(_r.name,xr(_r.initializer,qe,tn)):xr(_r,qe,vB));return br&&Mt.push(c.createObjectLiteralExpression(br)),Mt}function Lt(wt){if(wt.transformFlags&65536){let br=Nt(wt.properties);br.length&&br[0].kind!==210&&br.unshift(c.createObjectLiteralExpression());let Mt=br[0];if(br.length>1){for(let _r=1;_r=2&&(b.hasNodeCheckFlag(wt,256)||b.hasNodeCheckFlag(wt,128));if(kn){Rc();let an=Mke(c,b,wt,Ne);De[od(an)]=!0,GS(Pr,[an])}Pr.push(cr);let Pn=c.updateBlock(wt.body,Pr);return kn&&Me&&(b.hasNodeCheckFlag(wt,256)?sM(Pn,jS):b.hasNodeCheckFlag(wt,128)&&sM(Pn,Vle)),Ne=Mt,Me=_r,Pn}function za(wt){d();let br=0,Mt=[],_r=xr(wt.body,qe,XR)??c.createBlock([]);hc(_r)&&(br=c.copyPrologue(_r.statements,Mt,!1,qe)),ai(Mt,nc(void 0,wt));let Pr=I();if(br>0||lr(Mt)||lr(Pr)){let ti=c.converters.convertToFunctionBlock(_r,!0);return GS(Mt,Pr),ai(Mt,ti.statements.slice(br)),c.updateBlock(ti,un(c.createNodeArray(Mt),ti.statements))}return _r}function nc(wt,br){let Mt=!1;for(let _r of br.parameters)if(Mt){if(fu(_r.name)){if(_r.name.elements.length>0){let Pr=hM(_r,qe,n,0,c.getGeneratedNameForNode(_r));if(lr(Pr)){let ti=c.createVariableDeclarationList(Pr),cr=c.createVariableStatement(void 0,ti);ao(cr,2097152),wt=Yr(wt,cr)}}else if(_r.initializer){let Pr=c.getGeneratedNameForNode(_r),ti=xr(_r.initializer,qe,tn),cr=c.createAssignment(Pr,ti),kn=c.createExpressionStatement(cr);ao(kn,2097152),wt=Yr(wt,kn)}}else if(_r.initializer){let Pr=c.cloneNode(_r.name);un(Pr,_r.name),ao(Pr,96);let ti=xr(_r.initializer,qe,tn);JS(ti,3168);let cr=c.createAssignment(Pr,ti);un(cr,_r),ao(cr,3072);let kn=c.createBlock([c.createExpressionStatement(cr)]);un(kn,_r),ao(kn,3905);let Pn=c.createTypeCheck(c.cloneNode(_r.name),"undefined"),an=c.createIfStatement(Pn,kn);u0(an),un(an,_r),ao(an,2101056),wt=Yr(wt,an)}}else if(_r.transformFlags&65536){Mt=!0;let Pr=hM(_r,qe,n,1,c.getGeneratedNameForNode(_r),!1,!0);if(lr(Pr)){let ti=c.createVariableDeclarationList(Pr),cr=c.createVariableStatement(void 0,ti);ao(cr,2097152),wt=Yr(wt,cr)}}return wt}function Rc(){te&1||(te|=1,n.enableSubstitution(213),n.enableSubstitution(211),n.enableSubstitution(212),n.enableEmitNotification(263),n.enableEmitNotification(174),n.enableEmitNotification(177),n.enableEmitNotification(178),n.enableEmitNotification(176),n.enableEmitNotification(243))}function lg(wt,br,Mt){if(te&1&&ct(br)){let _r=(b.hasNodeCheckFlag(br,128)?128:0)|(b.hasNodeCheckFlag(br,256)?256:0);if(_r!==Ae){let Pr=Ae;Ae=_r,V(wt,br,Mt),Ae=Pr;return}}else if(te&&De[od(br)]){let _r=Ae;Ae=0,V(wt,br,Mt),Ae=_r;return}V(wt,br,Mt)}function ju(wt,br){return br=P(wt,br),wt===1&&Ae?Bi(br):br}function Bi(wt){switch(wt.kind){case 211:return vA(wt);case 212:return kr(wt);case 213:return en(wt)}return wt}function vA(wt){return wt.expression.kind===108?un(c.createPropertyAccessExpression(c.createUniqueName("_super",48),wt.name),wt):wt}function kr(wt){return wt.expression.kind===108?rn(wt.argumentExpression,wt):wt}function en(wt){let br=wt.expression;if(M0(br)){let Mt=fo(br)?vA(br):kr(br);return c.createCallExpression(c.createPropertyAccessExpression(Mt,"call"),void 0,[c.createThis(),...wt.arguments])}return wt}function ct(wt){let br=wt.kind;return br===263||br===176||br===174||br===177||br===178}function rn(wt,br){return Ae&256?un(c.createPropertyAccessExpression(c.createCallExpression(c.createIdentifier("_superIndex"),void 0,[wt]),"value"),br):un(c.createCallExpression(c.createIdentifier("_superIndex"),void 0,[wt]),br)}}function mxt(n){let c=n.factory;return uT(n,u);function u(h){return h.isDeclarationFile?h:ns(h,d,n)}function d(h){if(!(h.transformFlags&64))return h;switch(h.kind){case 299:return I(h);default:return ns(h,d,n)}}function I(h){return h.variableDeclaration?ns(h,d,n):c.updateCatchClause(h,c.createVariableDeclaration(c.createTempVariable(void 0)),xr(h.block,d,hc))}}function hxt(n){let{factory:c,hoistVariableDeclaration:u}=n;return uT(n,d);function d(ue){return ue.isDeclarationFile?ue:ns(ue,I,n)}function I(ue){if(!(ue.transformFlags&32))return ue;switch(ue.kind){case 213:{let Ae=N(ue,!1);return w.assertNotNode(Ae,V6),Ae}case 211:case 212:if(Gm(ue)){let Ae=P(ue,!1,!1);return w.assertNotNode(Ae,V6),Ae}return ns(ue,I,n);case 226:return ue.operatorToken.kind===61?te(ue):ns(ue,I,n);case 220:return re(ue);default:return ns(ue,I,n)}}function h(ue){w.assertNotNode(ue,p8);let Ae=[ue];for(;!ue.questionDotToken&&!W1(ue);)ue=ps(x1(ue.expression),Gm),w.assertNotNode(ue,p8),Ae.unshift(ue);return{expression:ue.expression,chain:Ae}}function b(ue,Ae,de){let Be=V(ue.expression,Ae,de);return V6(Be)?c.createSyntheticReferenceExpression(c.updateParenthesizedExpression(ue,Be.expression),Be.thisArg):c.updateParenthesizedExpression(ue,Be)}function R(ue,Ae,de){if(Gm(ue))return P(ue,Ae,de);let Be=xr(ue.expression,I,tn);w.assertNotNode(Be,V6);let Fe;return Ae&&(mM(Be)?Fe=Be:(Fe=c.createTempVariable(u),Be=c.createAssignment(Fe,Be))),Be=ue.kind===211?c.updatePropertyAccessExpression(ue,Be,xr(ue.name,I,sr)):c.updateElementAccessExpression(ue,Be,xr(ue.argumentExpression,I,tn)),Fe?c.createSyntheticReferenceExpression(Be,Fe):Be}function N(ue,Ae){if(Gm(ue))return P(ue,Ae,!1);if(ZC(ue.expression)&&Gm(zA(ue.expression))){let de=b(ue.expression,!0,!1),Be=ws(ue.arguments,I,tn);return V6(de)?un(c.createFunctionCallCall(de.expression,de.thisArg,Be),ue):c.updateCallExpression(ue,de,void 0,Be)}return ns(ue,I,n)}function V(ue,Ae,de){switch(ue.kind){case 217:return b(ue,Ae,de);case 211:case 212:return R(ue,Ae,de);case 213:return N(ue,Ae);default:return xr(ue,I,tn)}}function P(ue,Ae,de){let{expression:Be,chain:Fe}=h(ue),Ne=V(x1(Be),fG(Fe[0]),!1),Me=V6(Ne)?Ne.thisArg:void 0,De=V6(Ne)?Ne.expression:Ne,lt=c.restoreOuterExpressions(Be,De,8);mM(De)||(De=c.createTempVariable(u),lt=c.createAssignment(De,lt));let Le=De,je;for(let nt=0;ntSt&&ai(He,ws(dt.statements,Q,Cc,St,ht-St));break}ht++}w.assert(htde(He,St))))],St,Tt===2)}return ns(dt,Q,n)}function Fe(dt,Tt,St,He,ht){let Et=[];for(let Lt=Tt;Ltc&&(c=d)}return c}function _7i(n){let c=0;for(let u of n){let d=g6e(u.statements);if(d===2)return 2;d>c&&(c=d)}return c}function Bxt(n){let{factory:c,getEmitHelperFactory:u}=n,d=n.getCompilerOptions(),I,h;return uT(n,Q);function b(){if(h.filenameDeclaration)return h.filenameDeclaration.name;let jt=c.createVariableDeclaration(c.createUniqueName("_jsxFileName",48),void 0,void 0,c.createStringLiteral(I.fileName));return h.filenameDeclaration=jt,h.filenameDeclaration.name}function R(jt){return d.jsx===5?"jsxDEV":jt?"jsxs":"jsx"}function N(jt){let mr=R(jt);return P(mr)}function V(){return P("Fragment")}function P(jt){var mr,Pt;let Vr=jt==="createElement"?h.importSpecifier:lle(h.importSpecifier,d),Hr=(Pt=(mr=h.utilizedImplicitRuntimeImports)==null?void 0:mr.get(Vr))==null?void 0:Pt.get(jt);if(Hr)return Hr.name;h.utilizedImplicitRuntimeImports||(h.utilizedImplicitRuntimeImports=new Map);let pr=h.utilizedImplicitRuntimeImports.get(Vr);pr||(pr=new Map,h.utilizedImplicitRuntimeImports.set(Vr,pr));let zr=c.createUniqueName(`_${jt}`,112),$n=c.createImportSpecifier(!1,c.createIdentifier(jt),zr);return ste(zr,$n),pr.set(jt,$n),zr}function Q(jt){if(jt.isDeclarationFile)return jt;I=jt,h={},h.importSpecifier=cle(d,jt);let mr=ns(jt,te,n);BN(mr,n.readEmitHelpers());let Pt=mr.statements;if(h.filenameDeclaration&&(Pt=EZ(Pt.slice(),c.createVariableStatement(void 0,c.createVariableDeclarationList([h.filenameDeclaration],2)))),h.utilizedImplicitRuntimeImports){for(let[Vr,Hr]of on(h.utilizedImplicitRuntimeImports.entries()))if(hm(jt)){let pr=c.createImportDeclaration(void 0,c.createImportClause(!1,void 0,c.createNamedImports(on(Hr.values()))),c.createStringLiteral(Vr),void 0);yN(pr,!1),Pt=EZ(Pt.slice(),pr)}else if(na(jt)){let pr=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(c.createObjectBindingPattern(on(Hr.values(),zr=>c.createBindingElement(void 0,zr.propertyName,zr.name))),void 0,void 0,c.createCallExpression(c.createIdentifier("require"),void 0,[c.createStringLiteral(Vr)]))],2));yN(pr,!1),Pt=EZ(Pt.slice(),pr)}}return Pt!==mr.statements&&(mr=c.updateSourceFile(mr,Pt)),h=void 0,mr}function te(jt){return jt.transformFlags&2?re(jt):jt}function re(jt){switch(jt.kind){case 284:return Fe(jt,!1);case 285:return Ne(jt,!1);case 288:return Me(jt,!1);case 294:return Dr(jt);default:return ns(jt,te,n)}}function ue(jt){switch(jt.kind){case 12:return ht(jt);case 294:return Dr(jt);case 284:return Fe(jt,!0);case 285:return Ne(jt,!0);case 288:return Me(jt,!0);default:return w.failBadSyntaxKind(jt)}}function Ae(jt){return jt.properties.some(mr=>jC(mr)&&(sr(mr.name)&&oo(mr.name)==="__proto__"||Eu(mr.name)&&mr.name.text==="__proto__"))}function de(jt){let mr=!1;for(let Pt of jt.attributes.properties)if(W6(Pt)&&(!ru(Pt.expression)||Pt.expression.properties.some(Ux)))mr=!0;else if(mr&&RN(Pt)&&sr(Pt.name)&&Pt.name.escapedText==="key")return!0;return!1}function Be(jt){return h.importSpecifier===void 0||de(jt)}function Fe(jt,mr){return(Be(jt.openingElement)?st:Le)(jt.openingElement,jt.children,mr,jt)}function Ne(jt,mr){return(Be(jt)?st:Le)(jt,void 0,mr,jt)}function Me(jt,mr){return(h.importSpecifier===void 0?qe:nt)(jt.openingFragment,jt.children,mr,jt)}function De(jt){let mr=lt(jt);return mr&&c.createObjectLiteralExpression([mr])}function lt(jt){let mr=JX(jt);if(O(mr)===1&&!mr[0].dotDotDotToken){let Vr=ue(mr[0]);return Vr&&c.createPropertyAssignment("children",Vr)}let Pt=tr(jt,ue);return O(Pt)?c.createPropertyAssignment("children",c.createArrayLiteralExpression(Pt)):void 0}function Le(jt,mr,Pt,Vr){let Hr=kt(jt),pr=mr&&mr.length?lt(mr):void 0,zr=be(jt.attributes.properties,Pi=>!!Pi.name&&sr(Pi.name)&&Pi.name.escapedText==="key"),$n=zr?Gt(jt.attributes.properties,Pi=>Pi!==zr):jt.attributes.properties,bi=O($n)?It($n,pr):c.createObjectLiteralExpression(pr?[pr]:v);return je(Hr,bi,zr,mr||v,Pt,Vr)}function je(jt,mr,Pt,Vr,Hr,pr){var zr;let $n=JX(Vr),bi=O($n)>1||!!((zr=$n[0])!=null&&zr.dotDotDotToken),Pi=[jt,mr];if(Pt&&Pi.push(He(Pt.initializer)),d.jsx===5){let gi=Np(I);if(gi&&Fc(gi)){Pt===void 0&&Pi.push(c.createVoidZero()),Pi.push(bi?c.createTrue():c.createFalse());let jn=Vl(gi,pr.pos);Pi.push(c.createObjectLiteralExpression([c.createPropertyAssignment("fileName",b()),c.createPropertyAssignment("lineNumber",c.createNumericLiteral(jn.line+1)),c.createPropertyAssignment("columnNumber",c.createNumericLiteral(jn.character+1))])),Pi.push(c.createThis())}}let Ns=un(c.createCallExpression(N(bi),void 0,Pi),pr);return Hr&&u0(Ns),Ns}function st(jt,mr,Pt,Vr){let Hr=kt(jt),pr=jt.attributes.properties,zr=O(pr)?It(pr):c.createNull(),$n=h.importSpecifier===void 0?JKe(c,n.getEmitResolver().getJsxFactoryEntity(I),d.reactNamespace,jt):P("createElement"),bi=cRt(c,$n,Hr,zr,tr(mr,ue),Vr);return Pt&&u0(bi),bi}function nt(jt,mr,Pt,Vr){let Hr;if(mr&&mr.length){let pr=De(mr);pr&&(Hr=pr)}return je(V(),Hr||c.createObjectLiteralExpression([]),void 0,mr,Pt,Vr)}function qe(jt,mr,Pt,Vr){let Hr=lRt(c,n.getEmitResolver().getJsxFactoryEntity(I),n.getEmitResolver().getJsxFragmentFactoryEntity(I),d.reactNamespace,tr(mr,ue),jt,Vr);return Pt&&u0(Hr),Hr}function it(jt){return ru(jt.expression)&&!Ae(jt.expression)?Ar(jt.expression.properties,mr=>w.checkDefined(xr(mr,te,vB))):c.createSpreadAssignment(w.checkDefined(xr(jt.expression,te,tn)))}function It(jt,mr){let Pt=sA(d);return Pt&&Pt>=5?c.createObjectLiteralExpression(dt(jt,mr)):Tt(jt,mr)}function dt(jt,mr){let Pt=or(xa(jt,W6,(Vr,Hr)=>or(Ot(Vr,pr=>Hr?it(pr):St(pr)))));return mr&&Pt.push(mr),Pt}function Tt(jt,mr){let Pt=[],Vr=[];for(let pr of jt){if(W6(pr)){if(ru(pr.expression)&&!Ae(pr.expression)){for(let zr of pr.expression.properties){if(Ux(zr)){Hr(),Pt.push(w.checkDefined(xr(zr.expression,te,tn)));continue}Vr.push(w.checkDefined(xr(zr,te)))}continue}Hr(),Pt.push(w.checkDefined(xr(pr.expression,te,tn)));continue}Vr.push(St(pr))}return mr&&Vr.push(mr),Hr(),Pt.length&&!ru(Pt[0])&&Pt.unshift(c.createObjectLiteralExpression()),Tu(Pt)||u().createAssignHelper(Pt);function Hr(){Vr.length&&(Pt.push(c.createObjectLiteralExpression(Vr)),Vr=[])}}function St(jt){let mr=Zt(jt),Pt=He(jt.initializer);return c.createPropertyAssignment(mr,Pt)}function He(jt){if(jt===void 0)return c.createTrue();if(jt.kind===11){let mr=jt.singleQuote!==void 0?jt.singleQuote:!yce(jt,I),Pt=c.createStringLiteral(Lt(jt.text)||jt.text,mr);return un(Pt,jt)}return jt.kind===294?jt.expression===void 0?c.createTrue():w.checkDefined(xr(jt.expression,te,tn)):Jx(jt)?Fe(jt,!1):d4(jt)?Ne(jt,!1):dM(jt)?Me(jt,!1):w.failBadSyntaxKind(jt)}function ht(jt){let mr=Et(jt.text);return mr===void 0?void 0:c.createStringLiteral(mr)}function Et(jt){let mr,Pt=0,Vr=-1;for(let Hr=0;Hr{if(pr)return Ss(parseInt(pr,10));if(zr)return Ss(parseInt(zr,16));{let bi=y7i.get($n);return bi?Ss(bi):mr}})}function Lt(jt){let mr=Nt(jt);return mr===jt?void 0:mr}function kt(jt){if(jt.kind===284)return kt(jt.openingElement);{let mr=jt.tagName;return sr(mr)&&UX(mr.escapedText)?c.createStringLiteral(oo(mr)):aT(mr)?c.createStringLiteral(oo(mr.namespace)+":"+oo(mr.name)):Mhe(c,mr)}}function Zt(jt){let mr=jt.name;if(sr(mr)){let Pt=oo(mr);return/^[A-Za-z_]\w*$/.test(Pt)?mr:c.createStringLiteral(Pt)}return c.createStringLiteral(oo(mr.namespace)+":"+oo(mr.name))}function Dr(jt){let mr=xr(jt.expression,te,tn);return jt.dotDotDotToken?c.createSpreadElement(mr):mr}}var y7i=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 vxt(n){let{factory:c,hoistVariableDeclaration:u}=n;return uT(n,d);function d(N){return N.isDeclarationFile?N:ns(N,I,n)}function I(N){if(!(N.transformFlags&512))return N;switch(N.kind){case 226:return h(N);default:return ns(N,I,n)}}function h(N){switch(N.operatorToken.kind){case 68:return b(N);case 43:return R(N);default:return ns(N,I,n)}}function b(N){let V,P,Q=xr(N.left,I,tn),te=xr(N.right,I,tn);if(_A(Q)){let re=c.createTempVariable(u),ue=c.createTempVariable(u);V=un(c.createElementAccessExpression(un(c.createAssignment(re,Q.expression),Q.expression),un(c.createAssignment(ue,Q.argumentExpression),Q.argumentExpression)),Q),P=un(c.createElementAccessExpression(re,ue),Q)}else if(fo(Q)){let re=c.createTempVariable(u);V=un(c.createPropertyAccessExpression(un(c.createAssignment(re,Q.expression),Q.expression),Q.name),Q),P=un(c.createPropertyAccessExpression(re,Q.name),Q)}else V=Q,P=Q;return un(c.createAssignment(V,un(c.createGlobalMethodCall("Math","pow",[P,te]),N)),N)}function R(N){let V=xr(N.left,I,tn),P=xr(N.right,I,tn);return un(c.createGlobalMethodCall("Math","pow",[V,P]),N)}}function kGr(n,c){return{kind:n,expression:c}}function Sxt(n){let{factory:c,getEmitHelperFactory:u,startLexicalEnvironment:d,resumeLexicalEnvironment:I,endLexicalEnvironment:h,hoistVariableDeclaration:b}=n,R=n.getCompilerOptions(),N=n.getEmitResolver(),V=n.onSubstituteNode,P=n.onEmitNode;n.onEmitNode=Y2,n.onSubstituteNode=X2;let Q,te,re,ue;function Ae(rt){ue=Yr(ue,c.createVariableDeclaration(rt))}let de,Be;return uT(n,Fe);function Fe(rt){if(rt.isDeclarationFile)return rt;Q=rt,te=rt.text;let qr=It(rt);return BN(qr,n.readEmitHelpers()),Q=void 0,te=void 0,ue=void 0,re=0,qr}function Ne(rt,qr){let Mn=re;return re=(re&~rt|qr)&32767,Mn}function Me(rt,qr,Mn){re=(re&~qr|Mn)&-32768|rt}function De(rt){return(re&8192)!==0&&rt.kind===253&&!rt.expression}function lt(rt){return rt.transformFlags&4194304&&(G_(rt)||X0(rt)||_V(rt)||Bd(rt)||Ole(rt)||ute(rt)||Mle(rt)||ab(rt)||fM(rt)||iC(rt)||YR(rt,!1)||hc(rt))}function Le(rt){return(rt.transformFlags&1024)!==0||de!==void 0||re&8192&<(rt)||YR(rt,!1)&&qc(rt)||(FE(rt)&1)!==0}function je(rt){return Le(rt)?it(rt,!1):rt}function st(rt){return Le(rt)?it(rt,!0):rt}function nt(rt){if(Le(rt)){let qr=Np(rt);if(Hl(qr)&&CC(qr)){let Mn=Ne(32670,16449),Jn=it(rt,!1);return Me(Mn,229376,0),Jn}return it(rt,!1)}return rt}function qe(rt){return rt.kind===108?Ub(rt,!0):je(rt)}function it(rt,qr){switch(rt.kind){case 126:return;case 263:return kt(rt);case 231:return Zt(rt);case 169:return ju(rt);case 262:return Kr(rt);case 219:return Pn(rt);case 218:return an(rt);case 260:return Ii(rt);case 80:return Nt(rt);case 261:return Vt(rt);case 255:return dt(rt);case 269:return Tt(rt);case 241:return ar(rt,!1);case 252:case 251:return Lt(rt);case 256:return so(rt);case 246:case 247:return Yc(rt,void 0);case 248:return Il(rt,void 0);case 249:return Ra(rt,void 0);case 250:return ki(rt,void 0);case 244:return sn(rt);case 210:return Hd(rt);case 299:return _c(rt);case 304:return qC(rt);case 167:return Jf(rt);case 209:return of(rt);case 213:return Zm(rt);case 214:return $C(rt);case 217:return Qe(rt,qr);case 226:return ur(rt,qr);case 355:return Re(rt,qr);case 15:case 16:case 17:case 18:return OA(rt);case 11:return JI(rt);case 9:return Em(rt);case 215:return np(rt);case 228:return Xd(rt);case 229:return Fm(rt);case 230:return SA(rt);case 108:return Ub(rt,!1);case 110:return Et(rt);case 236:return pT(rt);case 174:return Pg(rt);case 177:case 178:return sf(rt);case 243:return bt(rt);case 253:return ht(rt);case 222:return Kt(rt);default:return ns(rt,je,n)}}function It(rt){let qr=Ne(8064,64),Mn=[],Jn=[];d();let cs=c.copyPrologue(rt.statements,Mn,!1,je);return ai(Jn,ws(rt.statements,je,Cc,cs)),ue&&Jn.push(c.createVariableStatement(void 0,c.createVariableDeclarationList(ue))),c.mergeLexicalEnvironment(Mn,h()),wt(Mn,rt),Me(qr,0,0),c.updateSourceFile(rt,un(c.createNodeArray(vi(Mn,Jn)),rt.statements))}function dt(rt){if(de!==void 0){let qr=de.allowedNonLabeledJumps;de.allowedNonLabeledJumps|=2;let Mn=ns(rt,je,n);return de.allowedNonLabeledJumps=qr,Mn}return ns(rt,je,n)}function Tt(rt){let qr=Ne(7104,0),Mn=ns(rt,je,n);return Me(qr,0,0),Mn}function St(rt){return Ho(c.createReturnStatement(He()),rt)}function He(){return c.createUniqueName("_this",48)}function ht(rt){return de?(de.nonLocalJumps|=8,De(rt)&&(rt=St(rt)),c.createReturnStatement(c.createObjectLiteralExpression([c.createPropertyAssignment(c.createIdentifier("value"),rt.expression?w.checkDefined(xr(rt.expression,je,tn)):c.createVoidZero())]))):De(rt)?St(rt):ns(rt,je,n)}function Et(rt){return re|=65536,re&2&&!(re&16384)&&(re|=131072),de?re&2?(de.containsLexicalThis=!0,rt):de.thisName||(de.thisName=c.createUniqueName("this")):rt}function Kt(rt){return ns(rt,st,n)}function Nt(rt){return de&&N.isArgumentsLocalBinding(rt)?de.argumentsName||(de.argumentsName=c.createUniqueName("arguments")):rt.flags&256?Ho(un(c.createIdentifier(wc(rt.escapedText)),rt),rt):rt}function Lt(rt){if(de){let qr=rt.kind===252?2:4;if(!(rt.label&&de.labels&&de.labels.get(oo(rt.label))||!rt.label&&de.allowedNonLabeledJumps&qr)){let Jn,cs=rt.label;cs?rt.kind===252?(Jn=`break-${cs.escapedText}`,tt(de,!0,oo(cs),Jn)):(Jn=`continue-${cs.escapedText}`,tt(de,!1,oo(cs),Jn)):rt.kind===252?(de.nonLocalJumps|=2,Jn="break"):(de.nonLocalJumps|=4,Jn="continue");let Zs=c.createStringLiteral(Jn);if(de.loopOutParameters.length){let qo=de.loopOutParameters,Ja;for(let Ge=0;Gesr(qr.name)&&!qr.initializer)}function zr(rt){if(Rf(rt))return!0;if(!(rt.transformFlags&134217728))return!1;switch(rt.kind){case 219:case 218:case 262:case 176:case 175:return!1;case 177:case 178:case 174:case 172:{let qr=rt;return kg(qr.name)?!!hu(qr.name,zr):!1}}return!!hu(rt,zr)}function $n(rt,qr,Mn,Jn){let cs=!!Mn&&LC(Mn.expression).kind!==106;if(!rt)return Hr(qr,cs);let Zs=[],qo=[];I();let Ja=c.copyStandardPrologue(rt.body.statements,Zs,0);(Jn||zr(rt.body))&&(re|=8192),ai(qo,ws(rt.body.statements,je,Cc,Ja));let Ge=cs||re&8192;vA(Zs,rt),rn(Zs,rt,Jn),Mt(Zs,rt),Ge?br(Zs,rt,Rc()):wt(Zs,rt),c.mergeLexicalEnvironment(Zs,h()),Ge&&!nc(rt.body)&&qo.push(c.createReturnStatement(He()));let Yt=c.createBlock(un(c.createNodeArray([...Zs,...qo]),rt.body.statements),!0);return un(Yt,rt.body),za(Yt,rt.body,Jn)}function bi(rt){return Cp(rt)&&oo(rt)==="_this"}function Pi(rt){return Cp(rt)&&oo(rt)==="_super"}function Ns(rt){return Dp(rt)&&rt.declarationList.declarations.length===1&&gi(rt.declarationList.declarations[0])}function gi(rt){return js(rt)&&bi(rt.name)&&!!rt.initializer}function jn(rt){return Im(rt,!0)&&bi(rt.left)}function xs(rt){return lu(rt)&&fo(rt.expression)&&Pi(rt.expression.expression)&&sr(rt.expression.name)&&(oo(rt.expression.name)==="call"||oo(rt.expression.name)==="apply")&&rt.arguments.length>=1&&rt.arguments[0].kind===110}function Bc(rt){return ro(rt)&&rt.operatorToken.kind===57&&rt.right.kind===110&&xs(rt.left)}function xi(rt){return ro(rt)&&rt.operatorToken.kind===56&&ro(rt.left)&&rt.left.operatorToken.kind===38&&Pi(rt.left.left)&&rt.left.right.kind===106&&xs(rt.right)&&oo(rt.right.expression.name)==="apply"}function rc(rt){return ro(rt)&&rt.operatorToken.kind===57&&rt.right.kind===110&&xi(rt.left)}function Wl(rt){return jn(rt)&&Bc(rt.right)}function gl(rt){return jn(rt)&&rc(rt.right)}function mc(rt){return xs(rt)||Bc(rt)||Wl(rt)||xi(rt)||rc(rt)||gl(rt)}function _s(rt){for(let qr=0;qr0;Jn--){let cs=rt.statements[Jn];if(G_(cs)&&cs.expression&&bi(cs.expression)){let Zs=rt.statements[Jn-1],qo;if(Xf(Zs)&&Wl(LC(Zs.expression)))qo=Zs.expression;else if(Mn&&Ns(Zs)){let Yt=Zs.declarationList.declarations[0];mc(LC(Yt.initializer))&&(qo=c.createAssignment(He(),Yt.initializer))}if(!qo)break;let Ja=c.createReturnStatement(qo);Ho(Ja,Zs),un(Ja,Zs);let Ge=c.createNodeArray([...rt.statements.slice(0,Jn-1),Ja,...rt.statements.slice(Jn+1)]);return un(Ge,rt.statements),c.updateBlock(rt,Ge)}}return rt}function ir(rt){if(Ns(rt)){if(rt.declarationList.declarations[0].initializer.kind===110)return}else if(jn(rt))return c.createPartiallyEmittedExpression(rt.right,rt);switch(rt.kind){case 219:case 218:case 262:case 176:case 175:return rt;case 177:case 178:case 174:case 172:{let qr=rt;return kg(qr.name)?c.replacePropertyName(qr,ns(qr.name,ir,void 0)):rt}}return ns(rt,ir,void 0)}function ni(rt,qr){if(qr.transformFlags&16384||re&65536||re&131072)return rt;for(let Mn of qr.statements)if(Mn.transformFlags&134217728&&!Lke(Mn))return rt;return c.updateBlock(rt,ws(rt.statements,ir,Cc))}function gs(rt){if(xs(rt)&&rt.arguments.length===2&&sr(rt.arguments[1])&&oo(rt.arguments[1])==="arguments")return c.createLogicalAnd(c.createStrictInequality(_C(),c.createNull()),rt);switch(rt.kind){case 219:case 218:case 262:case 176:case 175:return rt;case 177:case 178:case 174:case 172:{let qr=rt;return kg(qr.name)?c.replacePropertyName(qr,ns(qr.name,gs,void 0)):rt}}return ns(rt,gs,void 0)}function Hs(rt){return c.updateBlock(rt,ws(rt.statements,gs,Cc))}function za(rt,qr,Mn){let Jn=rt;return rt=_s(rt),rt=Pu(rt,qr),rt!==Jn&&(rt=ni(rt,qr)),Mn&&(rt=Hs(rt)),rt}function nc(rt){if(rt.kind===253)return!0;if(rt.kind===245){let qr=rt;if(qr.elseStatement)return nc(qr.thenStatement)&&nc(qr.elseStatement)}else if(rt.kind===241){let qr=zo(rt.statements);if(qr&&nc(qr))return!0}return!1}function Rc(){return ao(c.createThis(),8)}function lg(){return c.createLogicalOr(c.createLogicalAnd(c.createStrictInequality(_C(),c.createNull()),c.createFunctionApplyCall(_C(),Rc(),c.createIdentifier("arguments"))),Rc())}function ju(rt){if(!rt.dotDotDotToken)return fu(rt.name)?Ho(un(c.createParameterDeclaration(void 0,void 0,c.getGeneratedNameForNode(rt),void 0,void 0,void 0),rt),rt):rt.initializer?Ho(un(c.createParameterDeclaration(void 0,void 0,rt.name,void 0,void 0,void 0),rt),rt):rt}function Bi(rt){return rt.initializer!==void 0||fu(rt.name)}function vA(rt,qr){if(!lr(qr.parameters,Bi))return!1;let Mn=!1;for(let Jn of qr.parameters){let{name:cs,initializer:Zs,dotDotDotToken:qo}=Jn;qo||(fu(cs)?Mn=kr(rt,Jn,cs,Zs)||Mn:Zs&&(en(rt,Jn,cs,Zs),Mn=!0))}return Mn}function kr(rt,qr,Mn,Jn){return Mn.elements.length>0?(EZ(rt,ao(c.createVariableStatement(void 0,c.createVariableDeclarationList(hM(qr,je,n,0,c.getGeneratedNameForNode(qr)))),2097152)),!0):Jn?(EZ(rt,ao(c.createExpressionStatement(c.createAssignment(c.getGeneratedNameForNode(qr),w.checkDefined(xr(Jn,je,tn)))),2097152)),!0):!1}function en(rt,qr,Mn,Jn){Jn=w.checkDefined(xr(Jn,je,tn));let cs=c.createIfStatement(c.createTypeCheck(c.cloneNode(Mn),"undefined"),ao(un(c.createBlock([c.createExpressionStatement(ao(un(c.createAssignment(ao(GA(un(c.cloneNode(Mn),Mn),Mn.parent),96),ao(Jn,96|wg(Jn)|3072)),qr),3072))]),qr),3905));u0(cs),un(cs,qr),ao(cs,2101056),EZ(rt,cs)}function ct(rt,qr){return!!(rt&&rt.dotDotDotToken&&!qr)}function rn(rt,qr,Mn){let Jn=[],cs=zo(qr.parameters);if(!ct(cs,Mn))return!1;let Zs=cs.name.kind===80?GA(un(c.cloneNode(cs.name),cs.name),cs.name.parent):c.createTempVariable(void 0);ao(Zs,96);let qo=cs.name.kind===80?c.cloneNode(cs.name):Zs,Ja=qr.parameters.length-1,Ge=c.createLoopVariable();Jn.push(ao(un(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(Zs,void 0,void 0,c.createArrayLiteralExpression([]))])),cs),2097152));let Yt=c.createForStatement(un(c.createVariableDeclarationList([c.createVariableDeclaration(Ge,void 0,void 0,c.createNumericLiteral(Ja))]),cs),un(c.createLessThan(Ge,c.createPropertyAccessExpression(c.createIdentifier("arguments"),"length")),cs),un(c.createPostfixIncrement(Ge),cs),c.createBlock([u0(un(c.createExpressionStatement(c.createAssignment(c.createElementAccessExpression(qo,Ja===0?Ge:c.createSubtract(Ge,c.createNumericLiteral(Ja))),c.createElementAccessExpression(c.createIdentifier("arguments"),Ge))),cs))]));return ao(Yt,2097152),u0(Yt),Jn.push(Yt),cs.name.kind!==80&&Jn.push(ao(un(c.createVariableStatement(void 0,c.createVariableDeclarationList(hM(cs,je,n,0,qo))),cs),2097152)),N8(rt,Jn),!0}function wt(rt,qr){return re&131072&&qr.kind!==219?(br(rt,qr,c.createThis()),!0):!1}function br(rt,qr,Mn){WB();let Jn=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(He(),void 0,void 0,Mn)]));ao(Jn,2100224),Hg(Jn,qr),EZ(rt,Jn)}function Mt(rt,qr){if(re&32768){let Mn;switch(qr.kind){case 219:return rt;case 174:case 177:case 178:Mn=c.createVoidZero();break;case 176:Mn=c.createPropertyAccessExpression(ao(c.createThis(),8),"constructor");break;case 262:case 218:Mn=c.createConditionalExpression(c.createLogicalAnd(ao(c.createThis(),8),c.createBinaryExpression(ao(c.createThis(),8),104,c.getLocalName(qr))),void 0,c.createPropertyAccessExpression(ao(c.createThis(),8),"constructor"),void 0,c.createVoidZero());break;default:return w.failBadSyntaxKind(qr)}let Jn=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(c.createUniqueName("_newTarget",48),void 0,void 0,Mn)]));ao(Jn,2100224),EZ(rt,Jn)}return rt}function _r(rt,qr){for(let Mn of qr.members)switch(Mn.kind){case 240:rt.push(Pr(Mn));break;case 174:rt.push(ti(LN(qr,Mn),Mn,qr));break;case 177:case 178:let Jn=Vx(qr.members,Mn);Mn===Jn.firstAccessor&&rt.push(cr(LN(qr,Mn),Jn,qr));break;case 176:case 175:break;default:w.failBadSyntaxKind(Mn,Q&&Q.fileName);break}}function Pr(rt){return un(c.createEmptyStatement(),rt)}function ti(rt,qr,Mn){let Jn=US(qr),cs=Px(qr),Zs=wn(qr,qr,void 0,Mn),qo=xr(qr.name,je,RI);w.assert(qo);let Ja;if(!Gc(qo)&&Wee(n.getCompilerOptions())){let Yt=kg(qo)?qo.expression:sr(qo)?c.createStringLiteral(wc(qo.escapedText)):qo;Ja=c.createObjectDefinePropertyCall(rt,Yt,c.createPropertyDescriptor({value:Zs,enumerable:!1,writable:!0,configurable:!0}))}else{let Yt=C4(c,rt,qo,qr.name);Ja=c.createAssignment(Yt,Zs)}ao(Zs,3072),Hg(Zs,cs);let Ge=un(c.createExpressionStatement(Ja),qr);return Ho(Ge,qr),hA(Ge,Jn),ao(Ge,96),Ge}function cr(rt,qr,Mn){let Jn=c.createExpressionStatement(kn(rt,qr,Mn,!1));return ao(Jn,3072),Hg(Jn,Px(qr.firstAccessor)),Jn}function kn(rt,{firstAccessor:qr,getAccessor:Mn,setAccessor:Jn},cs,Zs){let qo=GA(un(c.cloneNode(rt),rt),rt.parent);ao(qo,3136),Hg(qo,qr.name);let Ja=xr(qr.name,je,RI);if(w.assert(Ja),Gc(Ja))return w.failBadSyntaxKind(Ja,"Encountered unhandled private identifier while transforming ES2015.");let Ge=KKe(c,Ja);ao(Ge,3104),Hg(Ge,qr.name);let Yt=[];if(Mn){let Rs=wn(Mn,void 0,void 0,cs);Hg(Rs,Px(Mn)),ao(Rs,1024);let yc=c.createPropertyAssignment("get",Rs);hA(yc,US(Mn)),Yt.push(yc)}if(Jn){let Rs=wn(Jn,void 0,void 0,cs);Hg(Rs,Px(Jn)),ao(Rs,1024);let yc=c.createPropertyAssignment("set",Rs);hA(yc,US(Jn)),Yt.push(yc)}Yt.push(c.createPropertyAssignment("enumerable",Mn||Jn?c.createFalse():c.createTrue()),c.createPropertyAssignment("configurable",c.createTrue()));let En=c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("Object"),"defineProperty"),void 0,[qo,Ge,c.createObjectLiteralExpression(Yt,!0)]);return Zs&&u0(En),En}function Pn(rt){rt.transformFlags&16384&&!(re&16384)&&(re|=131072);let qr=de;de=void 0;let Mn=Ne(15232,66),Jn=c.createFunctionExpression(void 0,void 0,void 0,void 0,_I(rt.parameters,je,n),void 0,Pe(rt));return un(Jn,rt),Ho(Jn,rt),ao(Jn,16),Me(Mn,0,0),de=qr,Jn}function an(rt){let qr=wg(rt)&524288?Ne(32662,69):Ne(32670,65),Mn=de;de=void 0;let Jn=_I(rt.parameters,je,n),cs=Pe(rt),Zs=re&32768?c.getLocalName(rt):rt.name;return Me(qr,229376,0),de=Mn,c.updateFunctionExpression(rt,void 0,rt.asteriskToken,Zs,void 0,Jn,void 0,cs)}function Kr(rt){let qr=de;de=void 0;let Mn=Ne(32670,65),Jn=_I(rt.parameters,je,n),cs=Pe(rt),Zs=re&32768?c.getLocalName(rt):rt.name;return Me(Mn,229376,0),de=qr,c.updateFunctionDeclaration(rt,ws(rt.modifiers,je,Ag),rt.asteriskToken,Zs,void 0,Jn,void 0,cs)}function wn(rt,qr,Mn,Jn){let cs=de;de=void 0;let Zs=Jn&&va(Jn)&&!eg(rt)?Ne(32670,73):Ne(32670,65),qo=_I(rt.parameters,je,n),Ja=Pe(rt);return re&32768&&!Mn&&(rt.kind===262||rt.kind===218)&&(Mn=c.getGeneratedNameForNode(rt)),Me(Zs,229376,0),de=cs,Ho(un(c.createFunctionExpression(void 0,rt.asteriskToken,Mn,void 0,qo,void 0,Ja),qr),rt)}function Pe(rt){let qr=!1,Mn=!1,Jn,cs,Zs=[],qo=[],Ja=rt.body,Ge;if(I(),hc(Ja)&&(Ge=c.copyStandardPrologue(Ja.statements,Zs,0,!1),Ge=c.copyCustomPrologue(Ja.statements,qo,Ge,je,AN),Ge=c.copyCustomPrologue(Ja.statements,qo,Ge,je,gce)),qr=vA(qo,rt)||qr,qr=rn(qo,rt,!1)||qr,hc(Ja))Ge=c.copyCustomPrologue(Ja.statements,qo,Ge,je),Jn=Ja.statements,ai(qo,ws(Ja.statements,je,Cc,Ge)),!qr&&Ja.multiLine&&(qr=!0);else{w.assert(rt.kind===219),Jn=g6(Ja,-1);let En=rt.equalsGreaterThanToken;!$d(En)&&!$d(Ja)&&(d6(En,Ja,Q)?Mn=!0:qr=!0);let Rs=xr(Ja,je,tn),yc=c.createReturnStatement(Rs);un(yc,Ja),DI(yc,Ja),ao(yc,2880),qo.push(yc),cs=Ja}if(c.mergeLexicalEnvironment(Zs,h()),Mt(Zs,rt),wt(Zs,rt),lr(Zs)&&(qr=!0),qo.unshift(...Zs),hc(Ja)&&Cn(qo,Ja.statements))return Ja;let Yt=c.createBlock(un(c.createNodeArray(qo),Jn),qr);return un(Yt,rt.body),!qr&&Mn&&ao(Yt,1),cs&&pxe(Yt,20,cs),Ho(Yt,rt.body),Yt}function ar(rt,qr){if(qr)return ns(rt,je,n);let Mn=re&256?Ne(7104,512):Ne(6976,128),Jn=ns(rt,je,n);return Me(Mn,0,0),Jn}function sn(rt){return ns(rt,st,n)}function Qe(rt,qr){return ns(rt,qr?st:je,n)}function ur(rt,qr){return Gv(rt)?y4(rt,je,n,0,!qr):rt.operatorToken.kind===28?c.updateBinaryExpression(rt,w.checkDefined(xr(rt.left,st,tn)),rt.operatorToken,w.checkDefined(xr(rt.right,qr?st:je,tn))):ns(rt,je,n)}function Re(rt,qr){if(qr)return ns(rt,st,n);let Mn;for(let cs=0;csGe.name)),Ja=Jn?c.createYieldExpression(c.createToken(42),ao(qo,8388608)):qo;if(Zs)cs.push(c.createExpressionStatement(Ja)),nf(qr.loopOutParameters,1,0,cs);else{let Ge=c.createUniqueName("state"),Yt=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(Ge,void 0,void 0,Ja)]));if(cs.push(Yt),nf(qr.loopOutParameters,1,0,cs),qr.nonLocalJumps&8){let En;Mn?(Mn.nonLocalJumps|=8,En=c.createReturnStatement(Ge)):En=c.createReturnStatement(c.createPropertyAccessExpression(Ge,"value")),cs.push(c.createIfStatement(c.createTypeCheck(Ge,"object"),En))}if(qr.nonLocalJumps&2&&cs.push(c.createIfStatement(c.createStrictEquality(Ge,c.createStringLiteral("break")),c.createBreakStatement())),qr.labeledNonLocalBreaks||qr.labeledNonLocalContinues){let En=[];gr(qr.labeledNonLocalBreaks,!0,Ge,Mn,En),gr(qr.labeledNonLocalContinues,!1,Ge,Mn,En),cs.push(c.createSwitchStatement(Ge,c.createCaseBlock(En)))}}return cs}function tt(rt,qr,Mn,Jn){qr?(rt.labeledNonLocalBreaks||(rt.labeledNonLocalBreaks=new Map),rt.labeledNonLocalBreaks.set(Mn,Jn)):(rt.labeledNonLocalContinues||(rt.labeledNonLocalContinues=new Map),rt.labeledNonLocalContinues.set(Mn,Jn))}function gr(rt,qr,Mn,Jn,cs){rt&&rt.forEach((Zs,qo)=>{let Ja=[];if(!Jn||Jn.labels&&Jn.labels.get(qo)){let Ge=c.createIdentifier(qo);Ja.push(qr?c.createBreakStatement(Ge):c.createContinueStatement(Ge))}else tt(Jn,qr,qo,Zs),Ja.push(c.createReturnStatement(Mn));cs.push(c.createCaseClause(c.createStringLiteral(Zs),Ja))})}function mn(rt,qr,Mn,Jn,cs){let Zs=qr.name;if(fu(Zs))for(let qo of Zs.elements)tf(qo)||mn(rt,qo,Mn,Jn,cs);else{Mn.push(c.createParameterDeclaration(void 0,void 0,Zs));let qo=N.hasNodeCheckFlag(qr,65536);if(qo||cs){let Ja=c.createUniqueName("out_"+oo(Zs)),Ge=0;qo&&(Ge|=1),FB(rt)&&(rt.initializer&&N.isBindingCapturedByNode(rt.initializer,qr)&&(Ge|=2),(rt.condition&&N.isBindingCapturedByNode(rt.condition,qr)||rt.incrementor&&N.isBindingCapturedByNode(rt.incrementor,qr))&&(Ge|=1)),Jn.push({flags:Ge,originalName:Zs,outParamName:Ja})}}}function Ri(rt,qr,Mn,Jn){let cs=qr.properties,Zs=cs.length;for(let qo=Jn;qoDp(gI)&&!!qs(gI.declarationList.declarations).initializer,Jn=de;de=void 0;let cs=ws(qr.statements,nt,Cc);de=Jn;let Zs=Gt(cs,Mn),qo=Gt(cs,gI=>!Mn(gI)),Ge=ps(qs(Zs),Dp).declarationList.declarations[0],Yt=LC(Ge.initializer),En=$s(Yt,Im);!En&&ro(Yt)&&Yt.operatorToken.kind===28&&(En=$s(Yt.left,Im));let Rs=ps(En?LC(En.right):Yt,lu),yc=ps(LC(Rs.expression),PA),Cu=yc.body.statements,Pl=0,Bu=-1,ad=[];if(En){let gI=$s(Cu[Pl],Xf);gI&&(ad.push(gI),Pl++),ad.push(Cu[Pl]),Pl++,ad.push(c.createExpressionStatement(c.createAssignment(En.left,ps(Ge.name,sr))))}for(;!G_(ts(Cu,Bu));)Bu--;ai(ad,Cu,Pl,Bu),Bu<-1&&ai(ad,Cu,Bu+1);let oA=$s(ts(Cu,Bu),G_);for(let gI of qo)G_(gI)&&oA?.expression&&!sr(oA.expression)?ad.push(oA):ad.push(gI);return ai(ad,Zs,1),c.restoreOuterExpressions(rt.expression,c.restoreOuterExpressions(Ge.initializer,c.restoreOuterExpressions(En&&En.right,c.updateCallExpression(Rs,c.restoreOuterExpressions(Rs.expression,c.updateFunctionExpression(yc,void 0,void 0,void 0,void 0,yc.parameters,void 0,c.updateBlock(yc.body,ad))),void 0,Rs.arguments))))}function FI(rt,qr){if(rt.transformFlags&32768||rt.expression.kind===108||M0(LC(rt.expression))){let{target:Mn,thisArg:Jn}=c.createCallBinding(rt.expression,b);rt.expression.kind===108&&ao(Jn,8);let cs;if(rt.transformFlags&32768?cs=c.createFunctionApplyCall(w.checkDefined(xr(Mn,qe,tn)),rt.expression.kind===108?Jn:w.checkDefined(xr(Jn,je,tn)),H2(rt.arguments,!0,!1,!1)):cs=un(c.createFunctionCallCall(w.checkDefined(xr(Mn,qe,tn)),rt.expression.kind===108?Jn:w.checkDefined(xr(Jn,je,tn)),ws(rt.arguments,je,tn)),rt),rt.expression.kind===108){let Zs=c.createLogicalOr(cs,Rc());cs=qr?c.createAssignment(He(),Zs):Zs}return Ho(cs,rt)}return Rf(rt)&&(re|=131072),ns(rt,je,n)}function $C(rt){if(lr(rt.arguments,fh)){let{target:qr,thisArg:Mn}=c.createCallBinding(c.createPropertyAccessExpression(rt.expression,"bind"),b);return c.createNewExpression(c.createFunctionApplyCall(w.checkDefined(xr(qr,je,tn)),Mn,H2(c.createNodeArray([c.createVoidZero(),...rt.arguments]),!0,!1,!1)),void 0,[])}return ns(rt,je,n)}function H2(rt,qr,Mn,Jn){let cs=rt.length,Zs=or(xa(rt,qt,(Yt,En,Rs,yc)=>En(Yt,Mn,Jn&&yc===cs)));if(Zs.length===1){let Yt=Zs[0];if(qr&&!R.downlevelIteration||_he(Yt.expression)||Z6(Yt.expression,"___spreadArray"))return Yt.expression}let qo=u(),Ja=Zs[0].kind!==0,Ge=Ja?c.createArrayLiteralExpression():Zs[0].expression;for(let Yt=Ja?0:1;Yt0&&Jn.push(c.createStringLiteral(Mn.literal.text)),qr=c.createCallExpression(c.createPropertyAccessExpression(qr,"concat"),void 0,Jn)}return un(qr,rt)}function _C(){return c.createUniqueName("_super",48)}function Ub(rt,qr){let Mn=re&8&&!qr?c.createPropertyAccessExpression(Ho(_C(),rt),"prototype"):_C();return Ho(Mn,rt),hA(Mn,rt),Hg(Mn,rt),Mn}function pT(rt){return rt.keywordToken===105&&rt.name.escapedText==="target"?(re|=32768,c.createUniqueName("_newTarget",48)):rt}function Y2(rt,qr,Mn){if(Be&1&&eu(qr)){let Jn=Ne(32670,wg(qr)&16?81:65);P(rt,qr,Mn),Me(Jn,0,0);return}P(rt,qr,Mn)}function gb(){Be&2||(Be|=2,n.enableSubstitution(80))}function WB(){Be&1||(Be|=1,n.enableSubstitution(110),n.enableEmitNotification(176),n.enableEmitNotification(174),n.enableEmitNotification(177),n.enableEmitNotification(178),n.enableEmitNotification(219),n.enableEmitNotification(218),n.enableEmitNotification(262))}function X2(rt,qr){return qr=V(rt,qr),rt===1?Ab(qr):sr(qr)?lD(qr):qr}function lD(rt){if(Be&2&&!jKe(rt)){let qr=zc(rt,sr);if(qr&&uD(qr))return un(c.getGeneratedNameForNode(qr),rt)}return rt}function uD(rt){switch(rt.parent.kind){case 208:case 263:case 266:case 260:return rt.parent.name===rt&&N.isDeclarationWithCollidingName(rt.parent)}return!1}function Ab(rt){switch(rt.kind){case 80:return em(rt);case 110:return Kb(rt)}return rt}function em(rt){if(Be&2&&!jKe(rt)){let qr=N.getReferencedDeclarationWithCollidingName(rt);if(qr&&!(va(qr)&&gD(qr,rt)))return un(c.getGeneratedNameForNode(Sl(qr)),rt)}return rt}function gD(rt,qr){let Mn=zc(qr);if(!Mn||Mn===rt||Mn.end<=rt.pos||Mn.pos>=rt.end)return!1;let Jn=w2(rt);for(;Mn;){if(Mn===Jn||Mn===rt)return!1;if(nC(Mn)&&Mn.parent===rt)return!0;Mn=Mn.parent}return!1}function Kb(rt){return Be&1&&re&16?un(He(),rt):rt}function LN(rt,qr){return eg(qr)?c.getInternalName(rt):c.createPropertyAccessExpression(c.getInternalName(rt),"prototype")}function J2(rt,qr){if(!rt||!qr||lr(rt.parameters))return!1;let Mn=$i(rt.body.statements);if(!Mn||!$d(Mn)||Mn.kind!==244)return!1;let Jn=Mn.expression;if(!$d(Jn)||Jn.kind!==213)return!1;let cs=Jn.expression;if(!$d(cs)||cs.kind!==108)return!1;let Zs=Tu(Jn.arguments);if(!Zs||!$d(Zs)||Zs.kind!==230)return!1;let qo=Zs.expression;return sr(qo)&&qo.escapedText==="arguments"}}function b7i(n){switch(n){case 2:return"return";case 3:return"break";case 4:return"yield";case 5:return"yield*";case 7:return"endfinally";default:return}}function wxt(n){let{factory:c,getEmitHelperFactory:u,resumeLexicalEnvironment:d,endLexicalEnvironment:I,hoistFunctionDeclaration:h,hoistVariableDeclaration:b}=n,R=n.getCompilerOptions(),N=sA(R),V=n.getEmitResolver(),P=n.onSubstituteNode;n.onSubstituteNode=sn;let Q,te,re,ue,Ae,de,Be,Fe,Ne,Me,De=1,lt,Le,je,st,nt=0,qe=0,it,It,dt,Tt,St,He,ht,Et;return uT(n,Kt);function Kt(qt){if(qt.isDeclarationFile||!(qt.transformFlags&2048))return qt;let Fn=ns(qt,Nt,n);return BN(Fn,n.readEmitHelpers()),Fn}function Nt(qt){let Fn=qt.transformFlags;return ue?Lt(qt):re?kt(qt):pd(qt)&&qt.asteriskToken?Dr(qt):Fn&2048?ns(qt,Nt,n):qt}function Lt(qt){switch(qt.kind){case 246:return lg(qt);case 247:return Bi(qt);case 255:return kn(qt);case 256:return an(qt);default:return kt(qt)}}function kt(qt){switch(qt.kind){case 262:return jt(qt);case 218:return mr(qt);case 177:case 178:return Pt(qt);case 243:return Hr(qt);case 248:return kr(qt);case 249:return ct(qt);case 252:return Mt(qt);case 251:return wt(qt);case 253:return Pr(qt);default:return qt.transformFlags&1048576?Zt(qt):qt.transformFlags&4196352?ns(qt,Nt,n):qt}}function Zt(qt){switch(qt.kind){case 226:return pr(qt);case 355:return Pi(qt);case 227:return gi(qt);case 229:return jn(qt);case 209:return xs(qt);case 210:return xi(qt);case 212:return rc(qt);case 213:return Wl(qt);case 214:return gl(qt);default:return ns(qt,Nt,n)}}function Dr(qt){switch(qt.kind){case 262:return jt(qt);case 218:return mr(qt);default:return w.failBadSyntaxKind(qt)}}function jt(qt){if(qt.asteriskToken)qt=Ho(un(c.createFunctionDeclaration(qt.modifiers,void 0,qt.name,void 0,_I(qt.parameters,Nt,n),void 0,Vr(qt.body)),qt),qt);else{let Fn=re,Bs=ue;re=!1,ue=!1,qt=ns(qt,Nt,n),re=Fn,ue=Bs}if(re){h(qt);return}else return qt}function mr(qt){if(qt.asteriskToken)qt=Ho(un(c.createFunctionExpression(void 0,void 0,qt.name,void 0,_I(qt.parameters,Nt,n),void 0,Vr(qt.body)),qt),qt);else{let Fn=re,Bs=ue;re=!1,ue=!1,qt=ns(qt,Nt,n),re=Fn,ue=Bs}return qt}function Pt(qt){let Fn=re,Bs=ue;return re=!1,ue=!1,qt=ns(qt,Nt,n),re=Fn,ue=Bs,qt}function Vr(qt){let Fn=[],Bs=re,Rl=ue,SA=Ae,OA=de,JI=Be,Em=Fe,np=Ne,Xd=Me,_C=De,Ub=lt,pT=Le,Y2=je,gb=st;re=!0,ue=!1,Ae=void 0,de=void 0,Be=void 0,Fe=void 0,Ne=void 0,Me=void 0,De=1,lt=void 0,Le=void 0,je=void 0,st=c.createTempVariable(void 0),d();let WB=c.copyPrologue(qt.statements,Fn,!1,Nt);mc(qt.statements,WB);let X2=tt();return GS(Fn,I()),Fn.push(c.createReturnStatement(X2)),re=Bs,ue=Rl,Ae=SA,de=OA,Be=JI,Fe=Em,Ne=np,Me=Xd,De=_C,lt=Ub,Le=pT,je=Y2,st=gb,un(c.createBlock(Fn,qt.multiLine),qt)}function Hr(qt){if(qt.transformFlags&1048576){Hs(qt.declarationList);return}else{if(wg(qt)&2097152)return qt;for(let Bs of qt.declarationList.declarations)b(Bs.name);let Fn=p6(qt.declarationList);return Fn.length===0?void 0:Hg(c.createExpressionStatement(c.inlineExpressions(Ot(Fn,za))),qt)}}function pr(qt){let Fn=Sme(qt);switch(Fn){case 0:return $n(qt);case 1:return zr(qt);default:return w.assertNever(Fn)}}function zr(qt){let{left:Fn,right:Bs}=qt;if(Pe(Bs)){let Rl;switch(Fn.kind){case 211:Rl=c.updatePropertyAccessExpression(Fn,Re(w.checkDefined(xr(Fn.expression,Nt,N_))),Fn.name);break;case 212:Rl=c.updateElementAccessExpression(Fn,Re(w.checkDefined(xr(Fn.expression,Nt,N_))),Re(w.checkDefined(xr(Fn.argumentExpression,Nt,tn))));break;default:Rl=w.checkDefined(xr(Fn,Nt,tn));break}let SA=qt.operatorToken.kind;return cue(SA)?un(c.createAssignment(Rl,un(c.createBinaryExpression(Re(Rl),lue(SA),w.checkDefined(xr(Bs,Nt,tn))),qt)),qt):c.updateBinaryExpression(qt,Rl,qt.operatorToken,w.checkDefined(xr(Bs,Nt,tn)))}return ns(qt,Nt,n)}function $n(qt){return Pe(qt.right)?_De(qt.operatorToken.kind)?Ns(qt):qt.operatorToken.kind===28?bi(qt):c.updateBinaryExpression(qt,Re(w.checkDefined(xr(qt.left,Nt,tn))),qt.operatorToken,w.checkDefined(xr(qt.right,Nt,tn))):ns(qt,Nt,n)}function bi(qt){let Fn=[];return Bs(qt.left),Bs(qt.right),c.inlineExpressions(Fn);function Bs(Rl){ro(Rl)&&Rl.operatorToken.kind===28?(Bs(Rl.left),Bs(Rl.right)):(Pe(Rl)&&Fn.length>0&&(yt(1,[c.createExpressionStatement(c.inlineExpressions(Fn))]),Fn=[]),Fn.push(w.checkDefined(xr(Rl,Nt,tn))))}}function Pi(qt){let Fn=[];for(let Bs of qt.elements)ro(Bs)&&Bs.operatorToken.kind===28?Fn.push(bi(Bs)):(Pe(Bs)&&Fn.length>0&&(yt(1,[c.createExpressionStatement(c.inlineExpressions(Fn))]),Fn=[]),Fn.push(w.checkDefined(xr(Bs,Nt,tn))));return c.inlineExpressions(Fn)}function Ns(qt){let Fn=bt(),Bs=Jt();return Yd(Bs,w.checkDefined(xr(qt.left,Nt,tn)),qt.left),qt.operatorToken.kind===56?uI(Fn,Bs,qt.left):di(Fn,Bs,qt.left),Yd(Bs,w.checkDefined(xr(qt.right,Nt,tn)),qt.right),Vt(Fn),Bs}function gi(qt){if(Pe(qt.whenTrue)||Pe(qt.whenFalse)){let Fn=bt(),Bs=bt(),Rl=Jt();return uI(Fn,w.checkDefined(xr(qt.condition,Nt,tn)),qt.condition),Yd(Rl,w.checkDefined(xr(qt.whenTrue,Nt,tn)),qt.whenTrue),qA(Bs),Vt(Fn),Yd(Rl,w.checkDefined(xr(qt.whenFalse,Nt,tn)),qt.whenFalse),Vt(Bs),Rl}return ns(qt,Nt,n)}function jn(qt){let Fn=bt(),Bs=xr(qt.expression,Nt,tn);if(qt.asteriskToken){let Rl=wg(qt.expression)&8388608?Bs:un(u().createValuesHelper(Bs),qt);U0(Rl,qt)}else K0(Bs,qt);return Vt(Fn),o_(qt)}function xs(qt){return Bc(qt.elements,void 0,void 0,qt.multiLine)}function Bc(qt,Fn,Bs,Rl){let SA=ar(qt),OA;if(SA>0){OA=Jt();let np=ws(qt,Nt,tn,0,SA);Yd(OA,c.createArrayLiteralExpression(Fn?[Fn,...np]:np)),Fn=void 0}let JI=Nd(qt,Em,[],SA);return OA?c.createArrayConcatCall(OA,[c.createArrayLiteralExpression(JI,Rl)]):un(c.createArrayLiteralExpression(Fn?[Fn,...JI]:JI,Rl),Bs);function Em(np,Xd){if(Pe(Xd)&&np.length>0){let _C=OA!==void 0;OA||(OA=Jt()),Yd(OA,_C?c.createArrayConcatCall(OA,[c.createArrayLiteralExpression(np,Rl)]):c.createArrayLiteralExpression(Fn?[Fn,...np]:np,Rl)),Fn=void 0,np=[]}return np.push(w.checkDefined(xr(Xd,Nt,tn))),np}}function xi(qt){let Fn=qt.properties,Bs=qt.multiLine,Rl=ar(Fn),SA=Jt();Yd(SA,c.createObjectLiteralExpression(ws(Fn,Nt,vB,0,Rl),Bs));let OA=Nd(Fn,JI,[],Rl);return OA.push(Bs?u0(GA(un(c.cloneNode(SA),SA),SA.parent)):SA),c.inlineExpressions(OA);function JI(Em,np){Pe(np)&&Em.length>0&&(_f(c.createExpressionStatement(c.inlineExpressions(Em))),Em=[]);let Xd=uRt(c,qt,np,SA),_C=xr(Xd,Nt,tn);return _C&&(Bs&&u0(_C),Em.push(_C)),Em}}function rc(qt){return Pe(qt.argumentExpression)?c.updateElementAccessExpression(qt,Re(w.checkDefined(xr(qt.expression,Nt,N_))),w.checkDefined(xr(qt.argumentExpression,Nt,tn))):ns(qt,Nt,n)}function Wl(qt){if(!fC(qt)&&X(qt.arguments,Pe)){let{target:Fn,thisArg:Bs}=c.createCallBinding(qt.expression,b,N,!0);return Ho(un(c.createFunctionApplyCall(Re(w.checkDefined(xr(Fn,Nt,N_))),Bs,Bc(qt.arguments)),qt),qt)}return ns(qt,Nt,n)}function gl(qt){if(X(qt.arguments,Pe)){let{target:Fn,thisArg:Bs}=c.createCallBinding(c.createPropertyAccessExpression(qt.expression,"bind"),b);return Ho(un(c.createNewExpression(c.createFunctionApplyCall(Re(w.checkDefined(xr(Fn,Nt,tn))),Bs,Bc(qt.arguments,c.createVoidZero())),void 0,[]),qt),qt)}return ns(qt,Nt,n)}function mc(qt,Fn=0){let Bs=qt.length;for(let Rl=Fn;Rl0)break;SA.push(za(JI))}SA.length&&(_f(c.createExpressionStatement(c.inlineExpressions(SA))),Rl+=SA.length,SA=[])}}function za(qt){return Hg(c.createAssignment(Hg(c.cloneNode(qt.name),qt.name),w.checkDefined(xr(qt.initializer,Nt,tn))),qt)}function nc(qt){if(Pe(qt))if(Pe(qt.thenStatement)||Pe(qt.elseStatement)){let Fn=bt(),Bs=qt.elseStatement?bt():void 0;uI(qt.elseStatement?Bs:Fn,w.checkDefined(xr(qt.expression,Nt,tn)),qt.expression),_s(qt.thenStatement),qt.elseStatement&&(qA(Fn),Vt(Bs),_s(qt.elseStatement)),Vt(Fn)}else _f(xr(qt,Nt,Cc));else _f(xr(qt,Nt,Cc))}function Rc(qt){if(Pe(qt)){let Fn=bt(),Bs=bt();sa(Fn),Vt(Bs),_s(qt.statement),Vt(Fn),di(Bs,w.checkDefined(xr(qt.expression,Nt,tn))),Ra()}else _f(xr(qt,Nt,Cc))}function lg(qt){return ue?(Il(),qt=ns(qt,Nt,n),Ra(),qt):ns(qt,Nt,n)}function ju(qt){if(Pe(qt)){let Fn=bt(),Bs=sa(Fn);Vt(Fn),uI(Bs,w.checkDefined(xr(qt.expression,Nt,tn))),_s(qt.statement),qA(Fn),Ra()}else _f(xr(qt,Nt,Cc))}function Bi(qt){return ue?(Il(),qt=ns(qt,Nt,n),Ra(),qt):ns(qt,Nt,n)}function vA(qt){if(Pe(qt)){let Fn=bt(),Bs=bt(),Rl=sa(Bs);if(qt.initializer){let SA=qt.initializer;bl(SA)?Hs(SA):_f(un(c.createExpressionStatement(w.checkDefined(xr(SA,Nt,tn))),SA))}Vt(Fn),qt.condition&&uI(Rl,w.checkDefined(xr(qt.condition,Nt,tn))),_s(qt.statement),Vt(Bs),qt.incrementor&&_f(un(c.createExpressionStatement(w.checkDefined(xr(qt.incrementor,Nt,tn))),qt.incrementor)),qA(Fn),Ra()}else _f(xr(qt,Nt,Cc))}function kr(qt){ue&&Il();let Fn=qt.initializer;if(Fn&&bl(Fn)){for(let Rl of Fn.declarations)b(Rl.name);let Bs=p6(Fn);qt=c.updateForStatement(qt,Bs.length>0?c.inlineExpressions(Ot(Bs,za)):void 0,xr(qt.condition,Nt,tn),xr(qt.incrementor,Nt,tn),by(qt.statement,Nt,n))}else qt=ns(qt,Nt,n);return ue&&Ra(),qt}function en(qt){if(Pe(qt)){let Fn=Jt(),Bs=Jt(),Rl=Jt(),SA=c.createLoopVariable(),OA=qt.initializer;b(SA),Yd(Fn,w.checkDefined(xr(qt.expression,Nt,tn))),Yd(Bs,c.createArrayLiteralExpression()),_f(c.createForInStatement(Rl,Fn,c.createExpressionStatement(c.createCallExpression(c.createPropertyAccessExpression(Bs,"push"),void 0,[Rl])))),Yd(SA,c.createNumericLiteral(0));let JI=bt(),Em=bt(),np=sa(Em);Vt(JI),uI(np,c.createLessThan(SA,c.createPropertyAccessExpression(Bs,"length"))),Yd(Rl,c.createElementAccessExpression(Bs,SA)),uI(Em,c.createBinaryExpression(Rl,103,Fn));let Xd;if(bl(OA)){for(let _C of OA.declarations)b(_C.name);Xd=c.cloneNode(OA.declarations[0].name)}else Xd=w.checkDefined(xr(OA,Nt,tn)),w.assert(N_(Xd));Yd(Xd,Rl),_s(qt.statement),Vt(Em),_f(c.createExpressionStatement(c.createPostfixIncrement(SA))),qA(JI),Ra()}else _f(xr(qt,Nt,Cc))}function ct(qt){ue&&Il();let Fn=qt.initializer;if(bl(Fn)){for(let Bs of Fn.declarations)b(Bs.name);qt=c.updateForInStatement(qt,Fn.declarations[0].name,w.checkDefined(xr(qt.expression,Nt,tn)),w.checkDefined(xr(qt.statement,Nt,Cc,c.liftToBlock)))}else qt=ns(qt,Nt,n);return ue&&Ra(),qt}function rn(qt){let Fn=Lc(qt.label?oo(qt.label):void 0);Fn>0?qA(Fn,qt):_f(qt)}function wt(qt){if(ue){let Fn=Lc(qt.label&&oo(qt.label));if(Fn>0)return I0(Fn,qt)}return ns(qt,Nt,n)}function br(qt){let Fn=qc(qt.label?oo(qt.label):void 0);Fn>0?qA(Fn,qt):_f(qt)}function Mt(qt){if(ue){let Fn=qc(qt.label&&oo(qt.label));if(Fn>0)return I0(Fn,qt)}return ns(qt,Nt,n)}function _r(qt){Xb(xr(qt.expression,Nt,tn),qt)}function Pr(qt){return kI(xr(qt.expression,Nt,tn),qt)}function ti(qt){Pe(qt)?(ds(Re(w.checkDefined(xr(qt.expression,Nt,tn)))),_s(qt.statement),Es()):_f(xr(qt,Nt,Cc))}function cr(qt){if(Pe(qt.caseBlock)){let Fn=qt.caseBlock,Bs=Fn.clauses.length,Rl=Gs(),SA=Re(w.checkDefined(xr(qt.expression,Nt,tn))),OA=[],JI=-1;for(let Xd=0;Xd0)break;np.push(c.createCaseClause(w.checkDefined(xr(Ub.expression,Nt,tn)),[I0(OA[_C],Ub.expression)]))}else Xd++}np.length&&(_f(c.createSwitchStatement(SA,c.createCaseBlock(np))),Em+=np.length,np=[]),Xd>0&&(Em+=Xd,Xd=0)}JI>=0?qA(OA[JI]):qA(Rl);for(let Xd=0;Xd=0;Bs--){let Rl=Fe[Bs];if(Nl(Rl)){if(Rl.labelText===qt)return!0}else break}return!1}function qc(qt){if(Fe)if(qt)for(let Fn=Fe.length-1;Fn>=0;Fn--){let Bs=Fe[Fn];if(Nl(Bs)&&Bs.labelText===qt)return Bs.breakLabel;if(Gd(Bs)&&hf(qt,Fn-1))return Bs.breakLabel}else for(let Fn=Fe.length-1;Fn>=0;Fn--){let Bs=Fe[Fn];if(Gd(Bs))return Bs.breakLabel}return 0}function Lc(qt){if(Fe)if(qt)for(let Fn=Fe.length-1;Fn>=0;Fn--){let Bs=Fe[Fn];if(ug(Bs)&&hf(qt,Fn-1))return Bs.continueLabel}else for(let Fn=Fe.length-1;Fn>=0;Fn--){let Bs=Fe[Fn];if(ug(Bs))return Bs.continueLabel}return 0}function jm(qt){if(qt!==void 0&&qt>0){Me===void 0&&(Me=[]);let Fn=c.createNumericLiteral(Number.MAX_SAFE_INTEGER);return Me[qt]===void 0?Me[qt]=[Fn]:Me[qt].push(Fn),Fn}return c.createOmittedExpression()}function xf(qt){let Fn=c.createNumericLiteral(qt);return xle(Fn,3,b7i(qt)),Fn}function I0(qt,Fn){return w.assertLessThan(0,qt,"Invalid label"),un(c.createReturnStatement(c.createArrayLiteralExpression([xf(3),jm(qt)])),Fn)}function kI(qt,Fn){return un(c.createReturnStatement(c.createArrayLiteralExpression(qt?[xf(2),qt]:[xf(2)])),Fn)}function o_(qt){return un(c.createCallExpression(c.createPropertyAccessExpression(st,"sent"),void 0,[]),qt)}function Ug(){yt(0)}function _f(qt){qt?yt(1,[qt]):Ug()}function Yd(qt,Fn,Bs){yt(2,[qt,Fn],Bs)}function qA(qt,Fn){yt(3,[qt],Fn)}function di(qt,Fn,Bs){yt(4,[qt,Fn],Bs)}function uI(qt,Fn,Bs){yt(5,[qt,Fn],Bs)}function U0(qt,Fn){yt(7,[qt],Fn)}function K0(qt,Fn){yt(6,[qt],Fn)}function Xb(qt,Fn){yt(8,[qt],Fn)}function nf(qt,Fn){yt(9,[qt],Fn)}function GI(){yt(10)}function yt(qt,Fn,Bs){lt===void 0&&(lt=[],Le=[],je=[]),Ne===void 0&&Vt(bt());let Rl=lt.length;lt[Rl]=qt,Le[Rl]=Fn,je[Rl]=Bs}function tt(){nt=0,qe=0,it=void 0,It=!1,dt=!1,Tt=void 0,St=void 0,He=void 0,ht=void 0,Et=void 0;let qt=gr();return u().createGeneratorHelper(ao(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,st)],void 0,c.createBlock(qt,qt.length>0)),1048576))}function gr(){if(lt){for(let qt=0;qt=0;Fn--){let Bs=Et[Fn];St=[c.createWithStatement(Bs.expression,c.createBlock(St))]}if(ht){let{startLabel:Fn,catchLabel:Bs,finallyLabel:Rl,endLabel:SA}=ht;St.unshift(c.createExpressionStatement(c.createCallExpression(c.createPropertyAccessExpression(c.createPropertyAccessExpression(st,"trys"),"push"),void 0,[c.createArrayLiteralExpression([jm(Fn),jm(Bs),jm(Rl),jm(SA)])]))),ht=void 0}qt&&St.push(c.createExpressionStatement(c.createAssignment(c.createPropertyAccessExpression(st,"label"),c.createNumericLiteral(qe+1))))}Tt.push(c.createCaseClause(c.createNumericLiteral(qe),St||[])),St=void 0}function Xo(qt){if(Ne)for(let Fn=0;Fnu.createAssignment(u.createPropertyAccessExpression(u.createIdentifier("exports"),u.createIdentifier(oo(Vt))),bt),u.createVoidZero())));for(let Re of de.exportedFunctions)kr(ar,Re);Yr(ar,xr(de.externalHelpersImportDeclaration,it,Cc)),ai(ar,ws(Pe.statements,it,Cc,Qe)),qe(ar,!1),GS(ar,h());let ur=u.updateSourceFile(Pe,un(u.createNodeArray(ar),Pe.statements));return BN(ur,n.readEmitHelpers()),ur}function lt(Pe){let ar=u.createIdentifier("define"),sn=Yhe(u,Pe,V,R),Qe=fa(Pe)&&Pe,{aliasedModuleNames:ur,unaliasedModuleNames:Re,importAliasNames:Jt}=je(Pe,!0),bt=u.updateSourceFile(Pe,un(u.createNodeArray([u.createExpressionStatement(u.createCallExpression(ar,void 0,[...sn?[sn]:[],u.createArrayLiteralExpression(Qe?v:[u.createStringLiteral("require"),u.createStringLiteral("exports"),...ur,...Re]),Qe?Qe.statements.length?Qe.statements[0].expression:u.createObjectLiteralExpression():u.createFunctionExpression(void 0,void 0,void 0,void 0,[u.createParameterDeclaration(void 0,void 0,"require"),u.createParameterDeclaration(void 0,void 0,"exports"),...Jt],void 0,nt(Pe))]))]),Pe.statements));return BN(bt,n.readEmitHelpers()),bt}function Le(Pe){let{aliasedModuleNames:ar,unaliasedModuleNames:sn,importAliasNames:Qe}=je(Pe,!1),ur=Yhe(u,Pe,V,R),Re=u.createFunctionExpression(void 0,void 0,void 0,void 0,[u.createParameterDeclaration(void 0,void 0,"factory")],void 0,un(u.createBlock([u.createIfStatement(u.createLogicalAnd(u.createTypeCheck(u.createIdentifier("module"),"object"),u.createTypeCheck(u.createPropertyAccessExpression(u.createIdentifier("module"),"exports"),"object")),u.createBlock([u.createVariableStatement(void 0,[u.createVariableDeclaration("v",void 0,void 0,u.createCallExpression(u.createIdentifier("factory"),void 0,[u.createIdentifier("require"),u.createIdentifier("exports")]))]),ao(u.createIfStatement(u.createStrictInequality(u.createIdentifier("v"),u.createIdentifier("undefined")),u.createExpressionStatement(u.createAssignment(u.createPropertyAccessExpression(u.createIdentifier("module"),"exports"),u.createIdentifier("v")))),1)]),u.createIfStatement(u.createLogicalAnd(u.createTypeCheck(u.createIdentifier("define"),"function"),u.createPropertyAccessExpression(u.createIdentifier("define"),"amd")),u.createBlock([u.createExpressionStatement(u.createCallExpression(u.createIdentifier("define"),void 0,[...ur?[ur]:[],u.createArrayLiteralExpression([u.createStringLiteral("require"),u.createStringLiteral("exports"),...ar,...sn]),u.createIdentifier("factory")]))])))],!0),void 0)),Jt=u.updateSourceFile(Pe,un(u.createNodeArray([u.createExpressionStatement(u.createCallExpression(Re,void 0,[u.createFunctionExpression(void 0,void 0,void 0,void 0,[u.createParameterDeclaration(void 0,void 0,"require"),u.createParameterDeclaration(void 0,void 0,"exports"),...Qe],void 0,nt(Pe))]))]),Pe.statements));return BN(Jt,n.readEmitHelpers()),Jt}function je(Pe,ar){let sn=[],Qe=[],ur=[];for(let Re of Pe.amdDependencies)Re.name?(sn.push(u.createStringLiteral(Re.path)),ur.push(u.createParameterDeclaration(void 0,void 0,Re.name))):Qe.push(u.createStringLiteral(Re.path));for(let Re of de.externalImports){let Jt=O6(u,Re,Ae,V,N,R),bt=fte(u,Re,Ae);Jt&&(ar&&bt?(ao(bt,8),sn.push(Jt),ur.push(u.createParameterDeclaration(void 0,void 0,bt))):Qe.push(Jt))}return{aliasedModuleNames:sn,unaliasedModuleNames:Qe,importAliasNames:ur}}function st(Pe){if(mm(Pe)||hC(Pe)||!O6(u,Pe,Ae,V,N,R))return;let ar=fte(u,Pe,Ae),sn=Wl(Pe,ar);if(sn!==ar)return u.createExpressionStatement(u.createAssignment(ar,sn))}function nt(Pe){I();let ar=[],sn=u.copyPrologue(Pe.statements,ar,!0,it);Me()&&Yr(ar,rn()),lr(de.exportedNames)&&Yr(ar,u.createExpressionStatement(Nd(de.exportedNames,(ur,Re)=>u.createAssignment(u.createPropertyAccessExpression(u.createIdentifier("exports"),u.createIdentifier(oo(Re))),ur),u.createVoidZero())));for(let ur of de.exportedFunctions)kr(ar,ur);Yr(ar,xr(de.externalHelpersImportDeclaration,it,Cc)),Q===2&&ai(ar,tr(de.externalImports,st)),ai(ar,ws(Pe.statements,it,Cc,sn)),qe(ar,!0),GS(ar,h());let Qe=u.createBlock(ar,!0);return Fe&&sM(Qe,E7i),Qe}function qe(Pe,ar){if(de.exportEquals){let sn=xr(de.exportEquals.expression,Tt,tn);if(sn)if(ar){let Qe=u.createReturnStatement(sn);un(Qe,de.exportEquals),ao(Qe,3840),Pe.push(Qe)}else{let Qe=u.createExpressionStatement(u.createAssignment(u.createPropertyAccessExpression(u.createIdentifier("module"),"exports"),sn));un(Qe,de.exportEquals),ao(Qe,3072),Pe.push(Qe)}}}function it(Pe){switch(Pe.kind){case 272:return gl(Pe);case 271:return _s(Pe);case 278:return Pu(Pe);case 277:return ir(Pe);default:return It(Pe)}}function It(Pe){switch(Pe.kind){case 243:return Hs(Pe);case 262:return ni(Pe);case 263:return gs(Pe);case 248:return Et(Pe,!0);case 249:return Kt(Pe);case 250:return Nt(Pe);case 246:return Lt(Pe);case 247:return kt(Pe);case 256:return Zt(Pe);case 254:return Dr(Pe);case 245:return jt(Pe);case 255:return mr(Pe);case 269:return Pt(Pe);case 296:return Vr(Pe);case 297:return Hr(Pe);case 258:return pr(Pe);case 299:return zr(Pe);case 241:return $n(Pe);default:return Tt(Pe)}}function dt(Pe,ar){if(!(Pe.transformFlags&276828160))return Pe;switch(Pe.kind){case 248:return Et(Pe,!1);case 244:return bi(Pe);case 217:return Pi(Pe,ar);case 354:return Ns(Pe,ar);case 213:if(fC(Pe)&&Ae.impliedNodeFormat===void 0)return jn(Pe);break;case 226:if(Gv(Pe))return ht(Pe,ar);break;case 224:case 225:return gi(Pe,ar)}return ns(Pe,Tt,n)}function Tt(Pe){return dt(Pe,!1)}function St(Pe){return dt(Pe,!0)}function He(Pe){if(ru(Pe))for(let ar of Pe.properties)switch(ar.kind){case 303:if(He(ar.initializer))return!0;break;case 304:if(He(ar.name))return!0;break;case 305:if(He(ar.expression))return!0;break;case 174:case 177:case 178:return!1;default:w.assertNever(ar,"Unhandled object member kind")}else if(Cf(Pe)){for(let ar of Pe.elements)if(fh(ar)){if(He(ar.expression))return!0}else if(He(ar))return!0}else if(sr(Pe))return O(wn(Pe))>(eke(Pe)?1:0);return!1}function ht(Pe,ar){return He(Pe.left)?y4(Pe,Tt,n,0,!ar,za):ns(Pe,Tt,n)}function Et(Pe,ar){if(ar&&Pe.initializer&&bl(Pe.initializer)&&!(Pe.initializer.flags&7)){let sn=Bi(void 0,Pe.initializer,!1);if(sn){let Qe=[],ur=xr(Pe.initializer,St,bl),Re=u.createVariableStatement(void 0,ur);Qe.push(Re),ai(Qe,sn);let Jt=xr(Pe.condition,Tt,tn),bt=xr(Pe.incrementor,St,tn),Vt=by(Pe.statement,ar?It:Tt,n);return Qe.push(u.updateForStatement(Pe,void 0,Jt,bt,Vt)),Qe}}return u.updateForStatement(Pe,xr(Pe.initializer,St,O0),xr(Pe.condition,Tt,tn),xr(Pe.incrementor,St,tn),by(Pe.statement,ar?It:Tt,n))}function Kt(Pe){if(bl(Pe.initializer)&&!(Pe.initializer.flags&7)){let ar=Bi(void 0,Pe.initializer,!0);if(lr(ar)){let sn=xr(Pe.initializer,St,O0),Qe=xr(Pe.expression,Tt,tn),ur=by(Pe.statement,It,n),Re=hc(ur)?u.updateBlock(ur,[...ar,...ur.statements]):u.createBlock([...ar,ur],!0);return u.updateForInStatement(Pe,sn,Qe,Re)}}return u.updateForInStatement(Pe,xr(Pe.initializer,St,O0),xr(Pe.expression,Tt,tn),by(Pe.statement,It,n))}function Nt(Pe){if(bl(Pe.initializer)&&!(Pe.initializer.flags&7)){let ar=Bi(void 0,Pe.initializer,!0),sn=xr(Pe.initializer,St,O0),Qe=xr(Pe.expression,Tt,tn),ur=by(Pe.statement,It,n);return lr(ar)&&(ur=hc(ur)?u.updateBlock(ur,[...ar,...ur.statements]):u.createBlock([...ar,ur],!0)),u.updateForOfStatement(Pe,Pe.awaitModifier,sn,Qe,ur)}return u.updateForOfStatement(Pe,Pe.awaitModifier,xr(Pe.initializer,St,O0),xr(Pe.expression,Tt,tn),by(Pe.statement,It,n))}function Lt(Pe){return u.updateDoStatement(Pe,by(Pe.statement,It,n),xr(Pe.expression,Tt,tn))}function kt(Pe){return u.updateWhileStatement(Pe,xr(Pe.expression,Tt,tn),by(Pe.statement,It,n))}function Zt(Pe){return u.updateLabeledStatement(Pe,Pe.label,w.checkDefined(xr(Pe.statement,It,Cc,u.liftToBlock)))}function Dr(Pe){return u.updateWithStatement(Pe,xr(Pe.expression,Tt,tn),w.checkDefined(xr(Pe.statement,It,Cc,u.liftToBlock)))}function jt(Pe){return u.updateIfStatement(Pe,xr(Pe.expression,Tt,tn),w.checkDefined(xr(Pe.thenStatement,It,Cc,u.liftToBlock)),xr(Pe.elseStatement,It,Cc,u.liftToBlock))}function mr(Pe){return u.updateSwitchStatement(Pe,xr(Pe.expression,Tt,tn),w.checkDefined(xr(Pe.caseBlock,It,Ole)))}function Pt(Pe){return u.updateCaseBlock(Pe,ws(Pe.clauses,It,TX))}function Vr(Pe){return u.updateCaseClause(Pe,xr(Pe.expression,Tt,tn),ws(Pe.statements,It,Cc))}function Hr(Pe){return ns(Pe,It,n)}function pr(Pe){return ns(Pe,It,n)}function zr(Pe){return u.updateCatchClause(Pe,Pe.variableDeclaration,w.checkDefined(xr(Pe.block,It,hc)))}function $n(Pe){return Pe=ns(Pe,It,n),Pe}function bi(Pe){return u.updateExpressionStatement(Pe,xr(Pe.expression,St,tn))}function Pi(Pe,ar){return u.updateParenthesizedExpression(Pe,xr(Pe.expression,ar?St:Tt,tn))}function Ns(Pe,ar){return u.updatePartiallyEmittedExpression(Pe,xr(Pe.expression,ar?St:Tt,tn))}function gi(Pe,ar){if((Pe.operator===46||Pe.operator===47)&&sr(Pe.operand)&&!Cp(Pe.operand)&&!VG(Pe.operand)&&!Ume(Pe.operand)){let sn=wn(Pe.operand);if(sn){let Qe,ur=xr(Pe.operand,Tt,tn);GB(Pe)?ur=u.updatePrefixUnaryExpression(Pe,ur):(ur=u.updatePostfixUnaryExpression(Pe,ur),ar||(Qe=u.createTempVariable(b),ur=u.createAssignment(Qe,ur),un(ur,Pe)),ur=u.createComma(ur,u.cloneNode(Pe.operand)),un(ur,Pe));for(let Re of sn)Be[od(ur)]=!0,ur=br(Re,ur),un(ur,Pe);return Qe&&(Be[od(ur)]=!0,ur=u.createComma(ur,Qe),un(ur,Pe)),ur}}return ns(Pe,Tt,n)}function jn(Pe){if(Q===0&&P>=7)return ns(Pe,Tt,n);let ar=O6(u,Pe,Ae,V,N,R),sn=xr($i(Pe.arguments),Tt,tn),Qe=ar&&(!sn||!Eu(sn)||sn.text!==ar.text)?ar:sn,ur=!!(Pe.transformFlags&16384);switch(R.module){case 2:return Bc(Qe,ur);case 3:return xs(Qe??u.createVoidZero(),ur);case 1:default:return xi(Qe)}}function xs(Pe,ar){if(Fe=!0,mM(Pe)){let sn=Cp(Pe)?Pe:Eu(Pe)?u.createStringLiteralFromNode(Pe):ao(un(u.cloneNode(Pe),Pe),3072);return u.createConditionalExpression(u.createIdentifier("__syncRequire"),void 0,xi(Pe),void 0,Bc(sn,ar))}else{let sn=u.createTempVariable(b);return u.createComma(u.createAssignment(sn,Pe),u.createConditionalExpression(u.createIdentifier("__syncRequire"),void 0,xi(sn,!0),void 0,Bc(sn,ar)))}}function Bc(Pe,ar){let sn=u.createUniqueName("resolve"),Qe=u.createUniqueName("reject"),ur=[u.createParameterDeclaration(void 0,void 0,sn),u.createParameterDeclaration(void 0,void 0,Qe)],Re=u.createBlock([u.createExpressionStatement(u.createCallExpression(u.createIdentifier("require"),void 0,[u.createArrayLiteralExpression([Pe||u.createOmittedExpression()]),sn,Qe]))]),Jt;P>=2?Jt=u.createArrowFunction(void 0,void 0,ur,void 0,void 0,Re):(Jt=u.createFunctionExpression(void 0,void 0,void 0,void 0,ur,void 0,Re),ar&&ao(Jt,16));let bt=u.createNewExpression(u.createIdentifier("Promise"),void 0,[Jt]);return CN(R)?u.createCallExpression(u.createPropertyAccessExpression(bt,u.createIdentifier("then")),void 0,[d().createImportStarCallbackHelper()]):bt}function xi(Pe,ar){let sn=Pe&&!xN(Pe)&&!ar,Qe=u.createCallExpression(u.createPropertyAccessExpression(u.createIdentifier("Promise"),"resolve"),void 0,sn?P>=2?[u.createTemplateExpression(u.createTemplateHead(""),[u.createTemplateSpan(Pe,u.createTemplateTail(""))])]:[u.createCallExpression(u.createPropertyAccessExpression(u.createStringLiteral(""),"concat"),void 0,[Pe])]:[]),ur=u.createCallExpression(u.createIdentifier("require"),void 0,sn?[u.createIdentifier("s")]:Pe?[Pe]:[]);CN(R)&&(ur=d().createImportStarHelper(ur));let Re=sn?[u.createParameterDeclaration(void 0,void 0,"s")]:[],Jt;return P>=2?Jt=u.createArrowFunction(void 0,void 0,Re,void 0,void 0,ur):Jt=u.createFunctionExpression(void 0,void 0,void 0,void 0,Re,void 0,u.createBlock([u.createReturnStatement(ur)])),u.createCallExpression(u.createPropertyAccessExpression(Qe,"then"),void 0,[Jt])}function rc(Pe,ar){return!CN(R)||FE(Pe)&2?ar:UDt(Pe)?d().createImportStarHelper(ar):ar}function Wl(Pe,ar){return!CN(R)||FE(Pe)&2?ar:Zke(Pe)?d().createImportStarHelper(ar):n6e(Pe)?d().createImportDefaultHelper(ar):ar}function gl(Pe){let ar,sn=QX(Pe);if(Q!==2)if(Pe.importClause){let Qe=[];sn&&!G5(Pe)?Qe.push(u.createVariableDeclaration(u.cloneNode(sn.name),void 0,void 0,Wl(Pe,mc(Pe)))):(Qe.push(u.createVariableDeclaration(u.getGeneratedNameForNode(Pe),void 0,void 0,Wl(Pe,mc(Pe)))),sn&&G5(Pe)&&Qe.push(u.createVariableDeclaration(u.cloneNode(sn.name),void 0,void 0,u.getGeneratedNameForNode(Pe)))),ar=Yr(ar,Ho(un(u.createVariableStatement(void 0,u.createVariableDeclarationList(Qe,P>=2?2:0)),Pe),Pe))}else return Ho(un(u.createExpressionStatement(mc(Pe)),Pe),Pe);else sn&&G5(Pe)&&(ar=Yr(ar,u.createVariableStatement(void 0,u.createVariableDeclarationList([Ho(un(u.createVariableDeclaration(u.cloneNode(sn.name),void 0,void 0,u.getGeneratedNameForNode(Pe)),Pe),Pe)],P>=2?2:0))));return ar=Rc(ar,Pe),_l(ar)}function mc(Pe){let ar=O6(u,Pe,Ae,V,N,R),sn=[];return ar&&sn.push(ar),u.createCallExpression(u.createIdentifier("require"),void 0,sn)}function _s(Pe){w.assert(BZ(Pe),"import= for internal module references should be handled in an earlier transformer.");let ar;return Q!==2?ya(Pe,32)?ar=Yr(ar,Ho(un(u.createExpressionStatement(br(Pe.name,mc(Pe))),Pe),Pe)):ar=Yr(ar,Ho(un(u.createVariableStatement(void 0,u.createVariableDeclarationList([u.createVariableDeclaration(u.cloneNode(Pe.name),void 0,void 0,mc(Pe))],P>=2?2:0)),Pe),Pe)):ya(Pe,32)&&(ar=Yr(ar,Ho(un(u.createExpressionStatement(br(u.getExportName(Pe),u.getLocalName(Pe))),Pe),Pe))),ar=lg(ar,Pe),_l(ar)}function Pu(Pe){if(!Pe.moduleSpecifier)return;let ar=u.getGeneratedNameForNode(Pe);if(Pe.exportClause&&ZB(Pe.exportClause)){let sn=[];Q!==2&&sn.push(Ho(un(u.createVariableStatement(void 0,u.createVariableDeclarationList([u.createVariableDeclaration(ar,void 0,void 0,mc(Pe))])),Pe),Pe));for(let Qe of Pe.exportClause.elements){let ur=!!CN(R)&&!(FE(Pe)&2)&&oo(Qe.propertyName||Qe.name)==="default",Re=u.createPropertyAccessExpression(ur?d().createImportDefaultHelper(ar):ar,Qe.propertyName||Qe.name);sn.push(Ho(un(u.createExpressionStatement(br(u.getExportName(Qe),Re,void 0,!0)),Qe),Qe))}return _l(sn)}else if(Pe.exportClause){let sn=[];return sn.push(Ho(un(u.createExpressionStatement(br(u.cloneNode(Pe.exportClause.name),rc(Pe,Q!==2?mc(Pe):S5(Pe)?ar:u.createIdentifier(oo(Pe.exportClause.name))))),Pe),Pe)),_l(sn)}else return Ho(un(u.createExpressionStatement(d().createExportStarHelper(Q!==2?mc(Pe):ar)),Pe),Pe)}function ir(Pe){if(!Pe.isExportEquals)return wt(u.createIdentifier("default"),xr(Pe.expression,Tt,tn),Pe,!0)}function ni(Pe){let ar;return ya(Pe,32)?ar=Yr(ar,Ho(un(u.createFunctionDeclaration(ws(Pe.modifiers,Mt,Ag),Pe.asteriskToken,u.getDeclarationName(Pe,!0,!0),void 0,ws(Pe.parameters,Tt,Uc),void 0,ns(Pe.body,Tt,n)),Pe),Pe)):ar=Yr(ar,ns(Pe,Tt,n)),_l(ar)}function gs(Pe){let ar;return ya(Pe,32)?ar=Yr(ar,Ho(un(u.createClassDeclaration(ws(Pe.modifiers,Mt,Rp),u.getDeclarationName(Pe,!0,!0),void 0,ws(Pe.heritageClauses,Tt,OE),ws(Pe.members,Tt,nC)),Pe),Pe)):ar=Yr(ar,ns(Pe,Tt,n)),ar=kr(ar,Pe),_l(ar)}function Hs(Pe){let ar,sn,Qe;if(ya(Pe,32)){let ur,Re=!1;for(let Jt of Pe.declarationList.declarations)if(sr(Jt.name)&&VG(Jt.name))if(ur||(ur=ws(Pe.modifiers,Mt,Ag)),Jt.initializer){let bt=u.updateVariableDeclaration(Jt,Jt.name,void 0,void 0,br(Jt.name,xr(Jt.initializer,Tt,tn)));sn=Yr(sn,bt)}else sn=Yr(sn,Jt);else if(Jt.initializer)if(!fu(Jt.name)&&(Id(Jt.initializer)||PA(Jt.initializer)||rp(Jt.initializer))){let bt=u.createAssignment(un(u.createPropertyAccessExpression(u.createIdentifier("exports"),Jt.name),Jt.name),u.createIdentifier(N2(Jt.name))),Vt=u.createVariableDeclaration(Jt.name,Jt.exclamationToken,Jt.type,xr(Jt.initializer,Tt,tn));sn=Yr(sn,Vt),Qe=Yr(Qe,bt),Re=!0}else Qe=Yr(Qe,nc(Jt));if(sn&&(ar=Yr(ar,u.updateVariableStatement(Pe,ur,u.updateVariableDeclarationList(Pe.declarationList,sn)))),Qe){let Jt=Ho(un(u.createExpressionStatement(u.inlineExpressions(Qe)),Pe),Pe);Re&&nte(Jt),ar=Yr(ar,Jt)}}else ar=Yr(ar,ns(Pe,Tt,n));return ar=ju(ar,Pe),_l(ar)}function za(Pe,ar,sn){let Qe=wn(Pe);if(Qe){let ur=eke(Pe)?ar:u.createAssignment(Pe,ar);for(let Re of Qe)ao(ur,8),ur=br(Re,ur,sn);return ur}return u.createAssignment(Pe,ar)}function nc(Pe){return fu(Pe.name)?y4(xr(Pe,Tt,Zee),Tt,n,0,!1,za):u.createAssignment(un(u.createPropertyAccessExpression(u.createIdentifier("exports"),Pe.name),Pe.name),Pe.initializer?xr(Pe.initializer,Tt,tn):u.createVoidZero())}function Rc(Pe,ar){if(de.exportEquals)return Pe;let sn=ar.importClause;if(!sn)return Pe;let Qe=new Ste;sn.name&&(Pe=en(Pe,Qe,sn));let ur=sn.namedBindings;if(ur)switch(ur.kind){case 274:Pe=en(Pe,Qe,ur);break;case 275:for(let Re of ur.elements)Pe=en(Pe,Qe,Re,!0);break}return Pe}function lg(Pe,ar){return de.exportEquals?Pe:en(Pe,new Ste,ar)}function ju(Pe,ar){return Bi(Pe,ar.declarationList,!1)}function Bi(Pe,ar,sn){if(de.exportEquals)return Pe;for(let Qe of ar.declarations)Pe=vA(Pe,Qe,sn);return Pe}function vA(Pe,ar,sn){if(de.exportEquals)return Pe;if(fu(ar.name))for(let Qe of ar.name.elements)tf(Qe)||(Pe=vA(Pe,Qe,sn));else!Cp(ar.name)&&(!js(ar)||ar.initializer||sn)&&(Pe=en(Pe,new Ste,ar));return Pe}function kr(Pe,ar){if(de.exportEquals)return Pe;let sn=new Ste;if(ya(ar,32)){let Qe=ya(ar,2048)?u.createIdentifier("default"):u.getDeclarationName(ar);Pe=ct(Pe,sn,Qe,u.getLocalName(ar),ar)}return ar.name&&(Pe=en(Pe,sn,ar)),Pe}function en(Pe,ar,sn,Qe){let ur=u.getDeclarationName(sn),Re=de.exportSpecifiers.get(ur);if(Re)for(let Jt of Re)Pe=ct(Pe,ar,Jt.name,ur,Jt.name,void 0,Qe);return Pe}function ct(Pe,ar,sn,Qe,ur,Re,Jt){return ar.has(sn)||(ar.set(sn,!0),Pe=Yr(Pe,wt(sn,Qe,ur,Re,Jt))),Pe}function rn(){let Pe=u.createExpressionStatement(u.createCallExpression(u.createPropertyAccessExpression(u.createIdentifier("Object"),"defineProperty"),void 0,[u.createIdentifier("exports"),u.createStringLiteral("__esModule"),u.createObjectLiteralExpression([u.createPropertyAssignment("value",u.createTrue())])]));return ao(Pe,2097152),Pe}function wt(Pe,ar,sn,Qe,ur){let Re=un(u.createExpressionStatement(br(Pe,ar,void 0,ur)),sn);return u0(Re),Qe||ao(Re,3072),Re}function br(Pe,ar,sn,Qe){return un(Qe?u.createCallExpression(u.createPropertyAccessExpression(u.createIdentifier("Object"),"defineProperty"),void 0,[u.createIdentifier("exports"),u.createStringLiteralFromNode(Pe),u.createObjectLiteralExpression([u.createPropertyAssignment("enumerable",u.createTrue()),u.createPropertyAssignment("get",u.createFunctionExpression(void 0,void 0,void 0,void 0,[],void 0,u.createBlock([u.createReturnStatement(ar)])))])]):u.createAssignment(u.createPropertyAccessExpression(u.createIdentifier("exports"),u.cloneNode(Pe)),ar),sn)}function Mt(Pe){switch(Pe.kind){case 95:case 90:return}return Pe}function _r(Pe,ar,sn){ar.kind===307?(Ae=ar,de=ue[Ey(Ae)],re(Pe,ar,sn),Ae=void 0,de=void 0):re(Pe,ar,sn)}function Pr(Pe,ar){return ar=te(Pe,ar),ar.id&&Be[ar.id]?ar:Pe===1?cr(ar):F_(ar)?ti(ar):ar}function ti(Pe){let ar=Pe.name,sn=an(ar);if(sn!==ar){if(Pe.objectAssignmentInitializer){let Qe=u.createAssignment(sn,Pe.objectAssignmentInitializer);return un(u.createPropertyAssignment(ar,Qe),Pe)}return un(u.createPropertyAssignment(ar,sn),Pe)}return Pe}function cr(Pe){switch(Pe.kind){case 80:return an(Pe);case 213:return kn(Pe);case 215:return Pn(Pe);case 226:return Kr(Pe)}return Pe}function kn(Pe){if(sr(Pe.expression)){let ar=an(Pe.expression);if(Be[od(ar)]=!0,!sr(ar)&&!(wg(Pe.expression)&8192))return rM(u.updateCallExpression(Pe,ar,void 0,Pe.arguments),16)}return Pe}function Pn(Pe){if(sr(Pe.tag)){let ar=an(Pe.tag);if(Be[od(ar)]=!0,!sr(ar)&&!(wg(Pe.tag)&8192))return rM(u.updateTaggedTemplateExpression(Pe,ar,void 0,Pe.template),16)}return Pe}function an(Pe){var ar,sn;if(wg(Pe)&8192){let Qe=rke(Ae);return Qe?u.createPropertyAccessExpression(Qe,Pe):Pe}else if(!(Cp(Pe)&&!(Pe.emitNode.autoGenerate.flags&64))&&!VG(Pe)){let Qe=N.getReferencedExportContainer(Pe,eke(Pe));if(Qe&&Qe.kind===307)return un(u.createPropertyAccessExpression(u.createIdentifier("exports"),u.cloneNode(Pe)),Pe);let ur=N.getReferencedImportDeclaration(Pe);if(ur){if(oT(ur))return un(u.createPropertyAccessExpression(u.getGeneratedNameForNode(ur.parent),u.createIdentifier("default")),Pe);if(yy(ur)){let Re=ur.propertyName||ur.name;return un(u.createPropertyAccessExpression(u.getGeneratedNameForNode(((sn=(ar=ur.parent)==null?void 0:ar.parent)==null?void 0:sn.parent)||ur),u.cloneNode(Re)),Pe)}}}return Pe}function Kr(Pe){if(tD(Pe.operatorToken.kind)&&sr(Pe.left)&&(!Cp(Pe.left)||mX(Pe.left))&&!VG(Pe.left)){let ar=wn(Pe.left);if(ar){let sn=Pe;for(let Qe of ar)Be[od(sn)]=!0,sn=br(Qe,sn,Pe);return sn}}return Pe}function wn(Pe){if(Cp(Pe)){if(mX(Pe)){let ar=de?.exportSpecifiers.get(Pe);if(ar){let sn=[];for(let Qe of ar)sn.push(Qe.name);return sn}}}else{let ar=N.getReferencedImportDeclaration(Pe);if(ar)return de?.exportedBindings[Ey(ar)];let sn=new Set,Qe=N.getReferencedValueDeclarations(Pe);if(Qe){for(let ur of Qe){let Re=de?.exportedBindings[Ey(ur)];if(Re)for(let Jt of Re)sn.add(Jt)}if(sn.size)return on(sn)}}}}var E7i={name:"typescript:dynamicimport-sync-require",scoped:!0,text:` + var __syncRequire = typeof module === "object" && typeof module.exports === "object";`};function Txt(n){let{factory:c,startLexicalEnvironment:u,endLexicalEnvironment:d,hoistVariableDeclaration:I}=n,h=n.getCompilerOptions(),b=n.getEmitResolver(),R=n.getEmitHost(),N=n.onSubstituteNode,V=n.onEmitNode;n.onSubstituteNode=br,n.onEmitNode=wt,n.enableSubstitution(80),n.enableSubstitution(304),n.enableSubstitution(226),n.enableSubstitution(236),n.enableEmitNotification(307);let P=[],Q=[],te=[],re=[],ue,Ae,de,Be,Fe,Ne,Me;return uT(n,De);function De(Pe){if(Pe.isDeclarationFile||!(K9(Pe,h)||Pe.transformFlags&8388608))return Pe;let ar=Ey(Pe);ue=Pe,Ne=Pe,Ae=P[ar]=i6e(n,Pe),de=c.createUniqueName("exports"),Q[ar]=de,Be=re[ar]=c.createUniqueName("context");let sn=lt(Ae.externalImports),Qe=Le(Pe,sn),ur=c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,de),c.createParameterDeclaration(void 0,void 0,Be)],void 0,Qe),Re=Yhe(c,Pe,R,h),Jt=c.createArrayLiteralExpression(Ot(sn,Vt=>Vt.name)),bt=ao(c.updateSourceFile(Pe,un(c.createNodeArray([c.createExpressionStatement(c.createCallExpression(c.createPropertyAccessExpression(c.createIdentifier("System"),"register"),void 0,Re?[Re,Jt,ur]:[Jt,ur]))]),Pe.statements)),2048);return h.outFile||ku(bt,Qe,Vt=>!Vt.scoped),Me&&(te[ar]=Me,Me=void 0),ue=void 0,Ae=void 0,de=void 0,Be=void 0,Fe=void 0,Ne=void 0,bt}function lt(Pe){let ar=new Map,sn=[];for(let Qe of Pe){let ur=O6(c,Qe,ue,R,b,h);if(ur){let Re=ur.text,Jt=ar.get(Re);Jt!==void 0?sn[Jt].externalImports.push(Qe):(ar.set(Re,sn.length),sn.push({name:ur,externalImports:[Qe]}))}}return sn}function Le(Pe,ar){let sn=[];u();let Qe=x_(h,"alwaysStrict")||hm(ue),ur=c.copyPrologue(Pe.statements,sn,Qe,qe);sn.push(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration("__moduleName",void 0,void 0,c.createLogicalAnd(Be,c.createPropertyAccessExpression(Be,"id")))]))),xr(Ae.externalHelpersImportDeclaration,qe,Cc);let Re=ws(Pe.statements,qe,Cc,ur);ai(sn,Fe),GS(sn,d());let Jt=je(sn),bt=Pe.transformFlags&2097152?c.createModifiersFromModifierFlags(1024):void 0,Vt=c.createObjectLiteralExpression([c.createPropertyAssignment("setters",nt(Jt,ar)),c.createPropertyAssignment("execute",c.createFunctionExpression(bt,void 0,void 0,void 0,[],void 0,c.createBlock(Re,!0)))],!0);return sn.push(c.createReturnStatement(Vt)),c.createBlock(sn,!0)}function je(Pe){if(!Ae.hasExportStarsToExportValues)return;if(!lr(Ae.exportedNames)&&Ae.exportedFunctions.size===0&&Ae.exportSpecifiers.size===0){let ur=!1;for(let Re of Ae.externalImports)if(Re.kind===278&&Re.exportClause){ur=!0;break}if(!ur){let Re=st(void 0);return Pe.push(Re),Re.name}}let ar=[];if(Ae.exportedNames)for(let ur of Ae.exportedNames)ur.escapedText!=="default"&&ar.push(c.createPropertyAssignment(c.createStringLiteralFromNode(ur),c.createTrue()));for(let ur of Ae.exportedFunctions)ya(ur,2048)||(w.assert(!!ur.name),ar.push(c.createPropertyAssignment(c.createStringLiteralFromNode(ur.name),c.createTrue())));let sn=c.createUniqueName("exportedNames");Pe.push(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(sn,void 0,void 0,c.createObjectLiteralExpression(ar,!0))])));let Qe=st(sn);return Pe.push(Qe),Qe.name}function st(Pe){let ar=c.createUniqueName("exportStar"),sn=c.createIdentifier("m"),Qe=c.createIdentifier("n"),ur=c.createIdentifier("exports"),Re=c.createStrictInequality(Qe,c.createStringLiteral("default"));return Pe&&(Re=c.createLogicalAnd(Re,c.createLogicalNot(c.createCallExpression(c.createPropertyAccessExpression(Pe,"hasOwnProperty"),void 0,[Qe])))),c.createFunctionDeclaration(void 0,void 0,ar,void 0,[c.createParameterDeclaration(void 0,void 0,sn)],void 0,c.createBlock([c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(ur,void 0,void 0,c.createObjectLiteralExpression([]))])),c.createForInStatement(c.createVariableDeclarationList([c.createVariableDeclaration(Qe)]),sn,c.createBlock([ao(c.createIfStatement(Re,c.createExpressionStatement(c.createAssignment(c.createElementAccessExpression(ur,Qe),c.createElementAccessExpression(sn,Qe)))),1)])),c.createExpressionStatement(c.createCallExpression(de,void 0,[ur]))],!0))}function nt(Pe,ar){let sn=[];for(let Qe of ar){let ur=X(Qe.externalImports,bt=>fte(c,bt,ue)),Re=ur?c.getGeneratedNameForNode(ur):c.createUniqueName(""),Jt=[];for(let bt of Qe.externalImports){let Vt=fte(c,bt,ue);switch(bt.kind){case 272:if(!bt.importClause)break;case 271:w.assert(Vt!==void 0),Jt.push(c.createExpressionStatement(c.createAssignment(Vt,Re))),ya(bt,32)&&Jt.push(c.createExpressionStatement(c.createCallExpression(de,void 0,[c.createStringLiteral(oo(Vt)),Re])));break;case 278:if(w.assert(Vt!==void 0),bt.exportClause)if(ZB(bt.exportClause)){let dn=[];for(let On of bt.exportClause.elements)dn.push(c.createPropertyAssignment(c.createStringLiteral(oo(On.name)),c.createElementAccessExpression(Re,c.createStringLiteral(oo(On.propertyName||On.name)))));Jt.push(c.createExpressionStatement(c.createCallExpression(de,void 0,[c.createObjectLiteralExpression(dn,!0)])))}else Jt.push(c.createExpressionStatement(c.createCallExpression(de,void 0,[c.createStringLiteral(oo(bt.exportClause.name)),Re])));else Jt.push(c.createExpressionStatement(c.createCallExpression(Pe,void 0,[Re])));break}}sn.push(c.createFunctionExpression(void 0,void 0,void 0,void 0,[c.createParameterDeclaration(void 0,void 0,Re)],void 0,c.createBlock(Jt,!0)))}return c.createArrayLiteralExpression(sn,!0)}function qe(Pe){switch(Pe.kind){case 272:return it(Pe);case 271:return dt(Pe);case 278:return It(Pe);case 277:return Tt(Pe);default:return bi(Pe)}}function it(Pe){let ar;return Pe.importClause&&I(fte(c,Pe,ue)),_l(Dr(ar,Pe))}function It(Pe){w.assertIsDefined(Pe)}function dt(Pe){w.assert(BZ(Pe),"import= for internal module references should be handled in an earlier transformer.");let ar;return I(fte(c,Pe,ue)),_l(jt(ar,Pe))}function Tt(Pe){if(Pe.isExportEquals)return;let ar=xr(Pe.expression,nc,tn);return zr(c.createIdentifier("default"),ar,!0)}function St(Pe){ya(Pe,32)?Fe=Yr(Fe,c.updateFunctionDeclaration(Pe,ws(Pe.modifiers,rn,Rp),Pe.asteriskToken,c.getDeclarationName(Pe,!0,!0),void 0,ws(Pe.parameters,nc,Uc),void 0,xr(Pe.body,nc,hc))):Fe=Yr(Fe,ns(Pe,nc,n)),Fe=Vr(Fe,Pe)}function He(Pe){let ar,sn=c.getLocalName(Pe);return I(sn),ar=Yr(ar,un(c.createExpressionStatement(c.createAssignment(sn,un(c.createClassExpression(ws(Pe.modifiers,rn,Rp),Pe.name,void 0,ws(Pe.heritageClauses,nc,OE),ws(Pe.members,nc,nC)),Pe))),Pe)),ar=Vr(ar,Pe),_l(ar)}function ht(Pe){if(!Kt(Pe.declarationList))return xr(Pe,nc,Cc);let ar;if(fd(Pe.declarationList)||Mg(Pe.declarationList)){let sn=ws(Pe.modifiers,rn,Rp),Qe=[];for(let Re of Pe.declarationList.declarations)Qe.push(c.updateVariableDeclaration(Re,c.getGeneratedNameForNode(Re.name),void 0,void 0,Nt(Re,!1)));let ur=c.updateVariableDeclarationList(Pe.declarationList,Qe);ar=Yr(ar,c.updateVariableStatement(Pe,sn,ur))}else{let sn,Qe=ya(Pe,32);for(let ur of Pe.declarationList.declarations)ur.initializer?sn=Yr(sn,Nt(ur,Qe)):Et(ur);sn&&(ar=Yr(ar,un(c.createExpressionStatement(c.inlineExpressions(sn)),Pe)))}return ar=mr(ar,Pe,!1),_l(ar)}function Et(Pe){if(fu(Pe.name))for(let ar of Pe.name.elements)tf(ar)||Et(ar);else I(c.cloneNode(Pe.name))}function Kt(Pe){return(wg(Pe)&4194304)===0&&(Ne.kind===307||(Np(Pe).flags&7)===0)}function Nt(Pe,ar){let sn=ar?Lt:kt;return fu(Pe.name)?y4(Pe,nc,n,0,!1,sn):Pe.initializer?sn(Pe.name,xr(Pe.initializer,nc,tn)):Pe.name}function Lt(Pe,ar,sn){return Zt(Pe,ar,sn,!0)}function kt(Pe,ar,sn){return Zt(Pe,ar,sn,!1)}function Zt(Pe,ar,sn,Qe){return I(c.cloneNode(Pe)),Qe?$n(Pe,Kr(un(c.createAssignment(Pe,ar),sn))):Kr(un(c.createAssignment(Pe,ar),sn))}function Dr(Pe,ar){if(Ae.exportEquals)return Pe;let sn=ar.importClause;if(!sn)return Pe;sn.name&&(Pe=Hr(Pe,sn));let Qe=sn.namedBindings;if(Qe)switch(Qe.kind){case 274:Pe=Hr(Pe,Qe);break;case 275:for(let ur of Qe.elements)Pe=Hr(Pe,ur);break}return Pe}function jt(Pe,ar){return Ae.exportEquals?Pe:Hr(Pe,ar)}function mr(Pe,ar,sn){if(Ae.exportEquals)return Pe;for(let Qe of ar.declarationList.declarations)(Qe.initializer||sn)&&(Pe=Pt(Pe,Qe,sn));return Pe}function Pt(Pe,ar,sn){if(Ae.exportEquals)return Pe;if(fu(ar.name))for(let Qe of ar.name.elements)tf(Qe)||(Pe=Pt(Pe,Qe,sn));else if(!Cp(ar.name)){let Qe;sn&&(Pe=pr(Pe,ar.name,c.getLocalName(ar)),Qe=oo(ar.name)),Pe=Hr(Pe,ar,Qe)}return Pe}function Vr(Pe,ar){if(Ae.exportEquals)return Pe;let sn;if(ya(ar,32)){let Qe=ya(ar,2048)?c.createStringLiteral("default"):ar.name;Pe=pr(Pe,Qe,c.getLocalName(ar)),sn=N2(Qe)}return ar.name&&(Pe=Hr(Pe,ar,sn)),Pe}function Hr(Pe,ar,sn){if(Ae.exportEquals)return Pe;let Qe=c.getDeclarationName(ar),ur=Ae.exportSpecifiers.get(Qe);if(ur)for(let Re of ur)Re.name.escapedText!==sn&&(Pe=pr(Pe,Re.name,Qe));return Pe}function pr(Pe,ar,sn,Qe){return Pe=Yr(Pe,zr(ar,sn,Qe)),Pe}function zr(Pe,ar,sn){let Qe=c.createExpressionStatement($n(Pe,ar));return u0(Qe),sn||ao(Qe,3072),Qe}function $n(Pe,ar){let sn=sr(Pe)?c.createStringLiteralFromNode(Pe):Pe;return ao(ar,wg(ar)|3072),hA(c.createCallExpression(de,void 0,[sn,ar]),ar)}function bi(Pe){switch(Pe.kind){case 243:return ht(Pe);case 262:return St(Pe);case 263:return He(Pe);case 248:return Pi(Pe,!0);case 249:return Ns(Pe);case 250:return gi(Pe);case 246:return Bc(Pe);case 247:return xi(Pe);case 256:return rc(Pe);case 254:return Wl(Pe);case 245:return gl(Pe);case 255:return mc(Pe);case 269:return _s(Pe);case 296:return Pu(Pe);case 297:return ir(Pe);case 258:return ni(Pe);case 299:return gs(Pe);case 241:return Hs(Pe);default:return nc(Pe)}}function Pi(Pe,ar){let sn=Ne;return Ne=Pe,Pe=c.updateForStatement(Pe,xr(Pe.initializer,ar?xs:Rc,O0),xr(Pe.condition,nc,tn),xr(Pe.incrementor,Rc,tn),by(Pe.statement,ar?bi:nc,n)),Ne=sn,Pe}function Ns(Pe){let ar=Ne;return Ne=Pe,Pe=c.updateForInStatement(Pe,xs(Pe.initializer),xr(Pe.expression,nc,tn),by(Pe.statement,bi,n)),Ne=ar,Pe}function gi(Pe){let ar=Ne;return Ne=Pe,Pe=c.updateForOfStatement(Pe,Pe.awaitModifier,xs(Pe.initializer),xr(Pe.expression,nc,tn),by(Pe.statement,bi,n)),Ne=ar,Pe}function jn(Pe){return bl(Pe)&&Kt(Pe)}function xs(Pe){if(jn(Pe)){let ar;for(let sn of Pe.declarations)ar=Yr(ar,Nt(sn,!1)),sn.initializer||Et(sn);return ar?c.inlineExpressions(ar):c.createOmittedExpression()}else return xr(Pe,Rc,O0)}function Bc(Pe){return c.updateDoStatement(Pe,by(Pe.statement,bi,n),xr(Pe.expression,nc,tn))}function xi(Pe){return c.updateWhileStatement(Pe,xr(Pe.expression,nc,tn),by(Pe.statement,bi,n))}function rc(Pe){return c.updateLabeledStatement(Pe,Pe.label,w.checkDefined(xr(Pe.statement,bi,Cc,c.liftToBlock)))}function Wl(Pe){return c.updateWithStatement(Pe,xr(Pe.expression,nc,tn),w.checkDefined(xr(Pe.statement,bi,Cc,c.liftToBlock)))}function gl(Pe){return c.updateIfStatement(Pe,xr(Pe.expression,nc,tn),w.checkDefined(xr(Pe.thenStatement,bi,Cc,c.liftToBlock)),xr(Pe.elseStatement,bi,Cc,c.liftToBlock))}function mc(Pe){return c.updateSwitchStatement(Pe,xr(Pe.expression,nc,tn),w.checkDefined(xr(Pe.caseBlock,bi,Ole)))}function _s(Pe){let ar=Ne;return Ne=Pe,Pe=c.updateCaseBlock(Pe,ws(Pe.clauses,bi,TX)),Ne=ar,Pe}function Pu(Pe){return c.updateCaseClause(Pe,xr(Pe.expression,nc,tn),ws(Pe.statements,bi,Cc))}function ir(Pe){return ns(Pe,bi,n)}function ni(Pe){return ns(Pe,bi,n)}function gs(Pe){let ar=Ne;return Ne=Pe,Pe=c.updateCatchClause(Pe,Pe.variableDeclaration,w.checkDefined(xr(Pe.block,bi,hc))),Ne=ar,Pe}function Hs(Pe){let ar=Ne;return Ne=Pe,Pe=ns(Pe,bi,n),Ne=ar,Pe}function za(Pe,ar){if(!(Pe.transformFlags&276828160))return Pe;switch(Pe.kind){case 248:return Pi(Pe,!1);case 244:return lg(Pe);case 217:return ju(Pe,ar);case 354:return Bi(Pe,ar);case 226:if(Gv(Pe))return kr(Pe,ar);break;case 213:if(fC(Pe))return vA(Pe);break;case 224:case 225:return ct(Pe,ar)}return ns(Pe,nc,n)}function nc(Pe){return za(Pe,!1)}function Rc(Pe){return za(Pe,!0)}function lg(Pe){return c.updateExpressionStatement(Pe,xr(Pe.expression,Rc,tn))}function ju(Pe,ar){return c.updateParenthesizedExpression(Pe,xr(Pe.expression,ar?Rc:nc,tn))}function Bi(Pe,ar){return c.updatePartiallyEmittedExpression(Pe,xr(Pe.expression,ar?Rc:nc,tn))}function vA(Pe){let ar=O6(c,Pe,ue,R,b,h),sn=xr($i(Pe.arguments),nc,tn),Qe=ar&&(!sn||!Eu(sn)||sn.text!==ar.text)?ar:sn;return c.createCallExpression(c.createPropertyAccessExpression(Be,c.createIdentifier("import")),void 0,Qe?[Qe]:[])}function kr(Pe,ar){return en(Pe.left)?y4(Pe,nc,n,0,!ar):ns(Pe,nc,n)}function en(Pe){if(Im(Pe,!0))return en(Pe.left);if(fh(Pe))return en(Pe.expression);if(ru(Pe))return lr(Pe.properties,en);if(Cf(Pe))return lr(Pe.elements,en);if(F_(Pe))return en(Pe.name);if(jC(Pe))return en(Pe.initializer);if(sr(Pe)){let ar=b.getReferencedExportContainer(Pe);return ar!==void 0&&ar.kind===307}else return!1}function ct(Pe,ar){if((Pe.operator===46||Pe.operator===47)&&sr(Pe.operand)&&!Cp(Pe.operand)&&!VG(Pe.operand)&&!Ume(Pe.operand)){let sn=Pn(Pe.operand);if(sn){let Qe,ur=xr(Pe.operand,nc,tn);GB(Pe)?ur=c.updatePrefixUnaryExpression(Pe,ur):(ur=c.updatePostfixUnaryExpression(Pe,ur),ar||(Qe=c.createTempVariable(I),ur=c.createAssignment(Qe,ur),un(ur,Pe)),ur=c.createComma(ur,c.cloneNode(Pe.operand)),un(ur,Pe));for(let Re of sn)ur=$n(Re,Kr(ur));return Qe&&(ur=c.createComma(ur,Qe),un(ur,Pe)),ur}}return ns(Pe,nc,n)}function rn(Pe){switch(Pe.kind){case 95:case 90:return}return Pe}function wt(Pe,ar,sn){if(ar.kind===307){let Qe=Ey(ar);ue=ar,Ae=P[Qe],de=Q[Qe],Me=te[Qe],Be=re[Qe],Me&&delete te[Qe],V(Pe,ar,sn),ue=void 0,Ae=void 0,de=void 0,Be=void 0,Me=void 0}else V(Pe,ar,sn)}function br(Pe,ar){return ar=N(Pe,ar),wn(ar)?ar:Pe===1?Pr(ar):Pe===4?Mt(ar):ar}function Mt(Pe){switch(Pe.kind){case 304:return _r(Pe)}return Pe}function _r(Pe){var ar,sn;let Qe=Pe.name;if(!Cp(Qe)&&!VG(Qe)){let ur=b.getReferencedImportDeclaration(Qe);if(ur){if(oT(ur))return un(c.createPropertyAssignment(c.cloneNode(Qe),c.createPropertyAccessExpression(c.getGeneratedNameForNode(ur.parent),c.createIdentifier("default"))),Pe);if(yy(ur))return un(c.createPropertyAssignment(c.cloneNode(Qe),c.createPropertyAccessExpression(c.getGeneratedNameForNode(((sn=(ar=ur.parent)==null?void 0:ar.parent)==null?void 0:sn.parent)||ur),c.cloneNode(ur.propertyName||ur.name))),Pe)}}return Pe}function Pr(Pe){switch(Pe.kind){case 80:return ti(Pe);case 226:return cr(Pe);case 236:return kn(Pe)}return Pe}function ti(Pe){var ar,sn;if(wg(Pe)&8192){let Qe=rke(ue);return Qe?c.createPropertyAccessExpression(Qe,Pe):Pe}if(!Cp(Pe)&&!VG(Pe)){let Qe=b.getReferencedImportDeclaration(Pe);if(Qe){if(oT(Qe))return un(c.createPropertyAccessExpression(c.getGeneratedNameForNode(Qe.parent),c.createIdentifier("default")),Pe);if(yy(Qe))return un(c.createPropertyAccessExpression(c.getGeneratedNameForNode(((sn=(ar=Qe.parent)==null?void 0:ar.parent)==null?void 0:sn.parent)||Qe),c.cloneNode(Qe.propertyName||Qe.name)),Pe)}}return Pe}function cr(Pe){if(tD(Pe.operatorToken.kind)&&sr(Pe.left)&&(!Cp(Pe.left)||mX(Pe.left))&&!VG(Pe.left)){let ar=Pn(Pe.left);if(ar){let sn=Pe;for(let Qe of ar)sn=$n(Qe,Kr(sn));return sn}}return Pe}function kn(Pe){return Pb(Pe)?c.createPropertyAccessExpression(Be,c.createIdentifier("meta")):Pe}function Pn(Pe){let ar,sn=an(Pe);if(sn){let Qe=b.getReferencedExportContainer(Pe,!1);Qe&&Qe.kind===307&&(ar=Yr(ar,c.getDeclarationName(sn))),ar=ai(ar,Ae?.exportedBindings[Ey(sn)])}else if(Cp(Pe)&&mX(Pe)){let Qe=Ae?.exportSpecifiers.get(Pe);if(Qe){let ur=[];for(let Re of Qe)ur.push(Re.name);return ur}}return ar}function an(Pe){if(!Cp(Pe)){let ar=b.getReferencedImportDeclaration(Pe);if(ar)return ar;let sn=b.getReferencedValueDeclaration(Pe);if(sn&&Ae?.exportedBindings[Ey(sn)])return sn;let Qe=b.getReferencedValueDeclarations(Pe);if(Qe){for(let ur of Qe)if(ur!==sn&&Ae?.exportedBindings[Ey(ur)])return ur}return sn}}function Kr(Pe){return Me===void 0&&(Me=[]),Me[od(Pe)]=!0,Pe}function wn(Pe){return Me&&Pe.id&&Me[Pe.id]}}function d6e(n){let{factory:c,getEmitHelperFactory:u}=n,d=n.getEmitHost(),I=n.getEmitResolver(),h=n.getCompilerOptions(),b=sA(h),R=n.onEmitNode,N=n.onSubstituteNode;n.onEmitNode=Me,n.onSubstituteNode=De,n.enableEmitNotification(307),n.enableSubstitution(80);let V,P,Q;return uT(n,te);function te(Le){if(Le.isDeclarationFile)return Le;if(hm(Le)||VE(h)){P=Le,Q=void 0;let je=re(Le);return P=void 0,Q&&(je=c.updateSourceFile(je,un(c.createNodeArray(N8(je.statements.slice(),Q)),je.statements))),!hm(Le)||D_(h)===200||lr(je.statements,G3)?je:c.updateSourceFile(je,un(c.createNodeArray([...je.statements,Qhe(c)]),je.statements))}return Le}function re(Le){let je=qKe(c,u(),Le,h);if(je){let st=[],nt=c.copyPrologue(Le.statements,st);return Yr(st,je),ai(st,ws(Le.statements,ue,Cc,nt)),c.updateSourceFile(Le,un(c.createNodeArray(st),Le.statements))}else return ns(Le,ue,n)}function ue(Le){switch(Le.kind){case 271:return D_(h)>=100?de(Le):void 0;case 277:return Fe(Le);case 278:return Ne(Le)}return Le}function Ae(Le){let je=O6(c,Le,w.checkDefined(P),d,I,h),st=[];if(je&&st.push(je),D_(h)===200)return c.createCallExpression(c.createIdentifier("require"),void 0,st);if(!Q){let qe=c.createUniqueName("_createRequire",48),it=c.createImportDeclaration(void 0,c.createImportClause(!1,void 0,c.createNamedImports([c.createImportSpecifier(!1,c.createIdentifier("createRequire"),qe)])),c.createStringLiteral("module"),void 0),It=c.createUniqueName("__require",48),dt=c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(It,void 0,void 0,c.createCallExpression(c.cloneNode(qe),void 0,[c.createPropertyAccessExpression(c.createMetaProperty(102,c.createIdentifier("meta")),c.createIdentifier("url"))]))],b>=2?2:0));Q=[it,dt]}let nt=Q[1].declarationList.declarations[0].name;return w.assertNode(nt,sr),c.createCallExpression(c.cloneNode(nt),void 0,st)}function de(Le){w.assert(BZ(Le),"import= for internal module references should be handled in an earlier transformer.");let je;return je=Yr(je,Ho(un(c.createVariableStatement(void 0,c.createVariableDeclarationList([c.createVariableDeclaration(c.cloneNode(Le.name),void 0,void 0,Ae(Le))],b>=2?2:0)),Le),Le)),je=Be(je,Le),_l(je)}function Be(Le,je){return ya(je,32)&&(Le=Yr(Le,c.createExportDeclaration(void 0,je.isTypeOnly,c.createNamedExports([c.createExportSpecifier(!1,void 0,oo(je.name))])))),Le}function Fe(Le){return Le.isExportEquals?D_(h)===200?Ho(c.createExpressionStatement(c.createAssignment(c.createPropertyAccessExpression(c.createIdentifier("module"),"exports"),Le.expression)),Le):void 0:Le}function Ne(Le){if(h.module!==void 0&&h.module>5||!Le.exportClause||!sD(Le.exportClause)||!Le.moduleSpecifier)return Le;let je=Le.exportClause.name,st=c.getGeneratedNameForNode(je),nt=c.createImportDeclaration(void 0,c.createImportClause(!1,void 0,c.createNamespaceImport(st)),Le.moduleSpecifier,Le.attributes);Ho(nt,Le.exportClause);let qe=S5(Le)?c.createExportDefault(st):c.createExportDeclaration(void 0,!1,c.createNamedExports([c.createExportSpecifier(!1,st,je)]));return Ho(qe,Le),[nt,qe]}function Me(Le,je,st){Fc(je)?((hm(je)||VE(h))&&h.importHelpers&&(V=new Map),R(Le,je,st),V=void 0):R(Le,je,st)}function De(Le,je){return je=N(Le,je),V&&sr(je)&&wg(je)&8192?lt(je):je}function lt(Le){let je=oo(Le),st=V.get(je);return st||V.set(je,st=c.createUniqueName(je,48)),st}}function Nxt(n){let c=n.onSubstituteNode,u=n.onEmitNode,d=d6e(n),I=n.onSubstituteNode,h=n.onEmitNode;n.onSubstituteNode=c,n.onEmitNode=u;let b=A6e(n),R=n.onSubstituteNode,N=n.onEmitNode;n.onSubstituteNode=P,n.onEmitNode=Q,n.enableSubstitution(307),n.enableEmitNotification(307);let V;return ue;function P(de,Be){return Fc(Be)?(V=Be,c(de,Be)):V?V.impliedNodeFormat===99?I(de,Be):R(de,Be):c(de,Be)}function Q(de,Be,Fe){return Fc(Be)&&(V=Be),V?V.impliedNodeFormat===99?h(de,Be,Fe):N(de,Be,Fe):u(de,Be,Fe)}function te(de){return de.impliedNodeFormat===99?d:b}function re(de){if(de.isDeclarationFile)return de;V=de;let Be=te(de)(de);return V=void 0,w.assert(Fc(Be)),Be}function ue(de){return de.kind===307?re(de):Ae(de)}function Ae(de){return n.factory.createBundle(Ot(de.sourceFiles,re))}}function Hke(n){return js(n)||Hl(n)||i_(n)||hl(n)||xh(n)||Rv(n)||A(n)||mV(n)||lI(n)||zS(n)||hp(n)||Uc(n)||$p(n)||k_(n)||mm(n)||Pf(n)||Df(n)||_(n)||fo(n)||_A(n)||ro(n)||T2(n)}function Rxt(n){if(xh(n)||Rv(n))return c;return zS(n)||lI(n)?d:ZZ(n);function c(h){let b=u(h);return b!==void 0?{diagnosticMessage:b,errorNode:n,typeName:n.name}:void 0}function u(h){return eg(n)?h.errorModuleName?h.accessibility===2?Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:n.parent.kind===263?h.errorModuleName?h.accessibility===2?Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_property_0_of_exported_class_has_or_is_using_private_name_1:h.errorModuleName?Z.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Property_0_of_exported_interface_has_or_is_using_private_name_1}function d(h){let b=I(h);return b!==void 0?{diagnosticMessage:b,errorNode:n,typeName:n.name}:void 0}function I(h){return eg(n)?h.errorModuleName?h.accessibility===2?Z.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:n.parent.kind===263?h.errorModuleName?h.accessibility===2?Z.Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_method_0_of_exported_class_has_or_is_using_private_name_1:h.errorModuleName?Z.Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Method_0_of_exported_interface_has_or_is_using_private_name_1}}function ZZ(n){if(js(n)||Hl(n)||i_(n)||fo(n)||_A(n)||ro(n)||hl(n)||Df(n))return u;return xh(n)||Rv(n)?d:A(n)||mV(n)||lI(n)||zS(n)||hp(n)||_(n)?I:Uc(n)?Zn(n,n.parent)&&ya(n.parent,2)?u:h:$p(n)?R:k_(n)?N:mm(n)?V:Pf(n)||T2(n)?P:w.assertNever(n,`Attempted to set a declaration diagnostic context for unhandled node kind: ${w.formatSyntaxKind(n.kind)}`);function c(Q){if(n.kind===260||n.kind===208)return Q.errorModuleName?Q.accessibility===2?Z.Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Exported_variable_0_has_or_is_using_name_1_from_private_module_2:Z.Exported_variable_0_has_or_is_using_private_name_1;if(n.kind===172||n.kind===211||n.kind===212||n.kind===226||n.kind===171||n.kind===169&&ya(n.parent,2))return eg(n)?Q.errorModuleName?Q.accessibility===2?Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:n.parent.kind===263||n.kind===169?Q.errorModuleName?Q.accessibility===2?Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Public_property_0_of_exported_class_has_or_is_using_private_name_1:Q.errorModuleName?Z.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Property_0_of_exported_interface_has_or_is_using_private_name_1}function u(Q){let te=c(Q);return te!==void 0?{diagnosticMessage:te,errorNode:n,typeName:n.name}:void 0}function d(Q){let te;return n.kind===178?eg(n)?te=Q.errorModuleName?Z.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:te=Q.errorModuleName?Z.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:eg(n)?te=Q.errorModuleName?Q.accessibility===2?Z.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:te=Q.errorModuleName?Q.accessibility===2?Z.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1,{diagnosticMessage:te,errorNode:n.name,typeName:n.name}}function I(Q){let te;switch(n.kind){case 180:te=Q.errorModuleName?Z.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 179:te=Q.errorModuleName?Z.Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 181:te=Q.errorModuleName?Z.Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 174:case 173:eg(n)?te=Q.errorModuleName?Q.accessibility===2?Z.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:Z.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:n.parent.kind===263?te=Q.errorModuleName?Q.accessibility===2?Z.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:Z.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:te=Q.errorModuleName?Z.Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0;break;case 262:te=Q.errorModuleName?Q.accessibility===2?Z.Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:Z.Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:Z.Return_type_of_exported_function_has_or_is_using_private_name_0;break;default:return w.fail("This is unknown kind for signature: "+n.kind)}return{diagnosticMessage:te,errorNode:n.name||n}}function h(Q){let te=b(Q);return te!==void 0?{diagnosticMessage:te,errorNode:n,typeName:n.name}:void 0}function b(Q){switch(n.parent.kind){case 176:return Q.errorModuleName?Q.accessibility===2?Z.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1;case 180:case 185:return Q.errorModuleName?Z.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;case 179:return Q.errorModuleName?Z.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;case 181:return Q.errorModuleName?Z.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1;case 174:case 173:return eg(n.parent)?Q.errorModuleName?Q.accessibility===2?Z.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:n.parent.parent.kind===263?Q.errorModuleName?Q.accessibility===2?Z.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:Q.errorModuleName?Z.Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;case 262:case 184:return Q.errorModuleName?Q.accessibility===2?Z.Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_exported_function_has_or_is_using_private_name_1;case 178:case 177:return Q.errorModuleName?Q.accessibility===2?Z.Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Z.Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:Z.Parameter_0_of_accessor_has_or_is_using_private_name_1;default:return w.fail(`Unknown parent for parameter: ${w.formatSyntaxKind(n.parent.kind)}`)}}function R(){let Q;switch(n.parent.kind){case 263:Q=Z.Type_parameter_0_of_exported_class_has_or_is_using_private_name_1;break;case 264:Q=Z.Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1;break;case 200:Q=Z.Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1;break;case 185:case 180:Q=Z.Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 179:Q=Z.Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 174:case 173:eg(n.parent)?Q=Z.Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:n.parent.parent.kind===263?Q=Z.Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:Q=Z.Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;break;case 184:case 262:Q=Z.Type_parameter_0_of_exported_function_has_or_is_using_private_name_1;break;case 195:Q=Z.Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1;break;case 265:Q=Z.Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1;break;default:return w.fail("This is unknown parent for type parameter: "+n.parent.kind)}return{diagnosticMessage:Q,errorNode:n,typeName:n.name}}function N(){let Q;return Ec(n.parent.parent)?Q=OE(n.parent)&&n.parent.token===119?Z.Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:n.parent.parent.name?Z.extends_clause_of_exported_class_0_has_or_is_using_private_name_1:Z.extends_clause_of_exported_class_has_or_is_using_private_name_0:Q=Z.extends_clause_of_exported_interface_0_has_or_is_using_private_name_1,{diagnosticMessage:Q,errorNode:n,typeName:Sl(n.parent.parent)}}function V(){return{diagnosticMessage:Z.Import_declaration_0_is_using_private_name_1,errorNode:n,typeName:n.name}}function P(Q){return{diagnosticMessage:Q.errorModuleName?Z.Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:Z.Exported_type_alias_0_has_or_is_using_private_name_1,errorNode:T2(n)?w.checkDefined(n.typeExpression):n.type,typeName:T2(n)?Sl(n):n.name}}}function Dxt(n){let c={219:Z.Add_a_return_type_to_the_function_expression,218:Z.Add_a_return_type_to_the_function_expression,174:Z.Add_a_return_type_to_the_method,177:Z.Add_a_return_type_to_the_get_accessor_declaration,178:Z.Add_a_type_to_parameter_of_the_set_accessor_declaration,262:Z.Add_a_return_type_to_the_function_declaration,180:Z.Add_a_return_type_to_the_function_declaration,169:Z.Add_a_type_annotation_to_the_parameter_0,260:Z.Add_a_type_annotation_to_the_variable_0,172:Z.Add_a_type_annotation_to_the_property_0,171:Z.Add_a_type_annotation_to_the_property_0,277:Z.Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it},u={218:Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,262:Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,219:Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,174:Z.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,180:Z.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,177:Z.At_least_one_accessor_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,178:Z.At_least_one_accessor_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,169:Z.Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations,260:Z.Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations,172:Z.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations,171:Z.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations,167:Z.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations,305:Z.Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations,304:Z.Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations,209:Z.Only_const_arrays_can_be_inferred_with_isolatedDeclarations,277:Z.Default_exports_can_t_be_inferred_with_isolatedDeclarations,230:Z.Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations};return d;function d(de){if(Si(de,OE))return Js(de,Z.Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations);if((VS(de)||oe(de.parent))&&(T_(de)||lp(de)))return ue(de);switch(w.type(de),de.kind){case 177:case 178:return h(de);case 167:case 304:case 305:return R(de);case 209:case 230:return N(de);case 174:case 180:case 218:case 219:case 262:return V(de);case 208:return P(de);case 172:case 260:return Q(de);case 169:return te(de);case 303:return Ae(de.initializer);case 231:return re(de);default:return Ae(de)}}function I(de){let Be=Si(de,Fe=>rf(Fe)||Cc(Fe)||js(Fe)||Hl(Fe)||Uc(Fe));if(Be)return rf(Be)?Be:G_(Be)?Si(Be,Fe=>pd(Fe)&&!Df(Fe)):Cc(Be)?void 0:Be}function h(de){let{getAccessor:Be,setAccessor:Fe}=Vx(de.symbol.declarations,de),Ne=(xh(de)?de.parameters[0]:de)??de,Me=Js(Ne,u[de.kind]);return Fe&&tg(Me,Js(Fe,c[Fe.kind])),Be&&tg(Me,Js(Be,c[Be.kind])),Me}function b(de,Be){let Fe=I(de);if(Fe){let Ne=rf(Fe)||!Fe.name?"":Nf(Fe.name,!1);tg(Be,Js(Fe,c[Fe.kind],Ne))}return Be}function R(de){let Be=Js(de,u[de.kind]);return b(de,Be),Be}function N(de){let Be=Js(de,u[de.kind]);return b(de,Be),Be}function V(de){let Be=Js(de,u[de.kind]);return b(de,Be),tg(Be,Js(de,c[de.kind])),Be}function P(de){return Js(de,Z.Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations)}function Q(de){let Be=Js(de,u[de.kind]),Fe=Nf(de.name,!1);return tg(Be,Js(de,c[de.kind],Fe)),Be}function te(de){if(xh(de.parent))return h(de.parent);let Be=n.requiresAddingImplicitUndefined(de);if(!Be&&de.initializer)return Ae(de.initializer);let Fe=Be?Z.Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_it_s_type_This_is_not_supported_with_isolatedDeclarations:u[de.kind],Ne=Js(de,Fe),Me=Nf(de.name,!1);return tg(Ne,Js(de,c[de.kind],Me)),Ne}function re(de){return Ae(de,Z.Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations)}function ue(de){let Be=Js(de,Z.Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations,Nf(de,!1));return b(de,Be),Be}function Ae(de,Be){let Fe=I(de),Ne;if(Fe){let Me=rf(Fe)||!Fe.name?"":Nf(Fe.name,!1),De=Si(de.parent,lt=>rf(lt)||(Cc(lt)?"quit":!ZC(lt)&&!hV(lt)&&!$S(lt)));Fe===De?(Ne=Js(de,Be??u[Fe.kind]),tg(Ne,Js(Fe,c[Fe.kind],Me))):(Ne=Js(de,Be??Z.Expression_type_can_t_be_inferred_with_isolatedDeclarations),tg(Ne,Js(Fe,c[Fe.kind],Me)),tg(Ne,Js(de,Z.Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit)))}else Ne=Js(de,Be??Z.Expression_type_can_t_be_inferred_with_isolatedDeclarations);return Ne}}function xxt(n,c,u){let d=n.getCompilerOptions(),I=Gt(Lce(n,u),_ce);return C_e(c,n,_e,d,u?Ue(I,u)?[u]:v:I,[p6e],!1).diagnostics}var f_e=531469;function p6e(n){let c=()=>w.fail("Diagnostic emitted without context"),u=c,d=!0,I=!1,h=!1,b=!1,R=!1,N,V,P,Q,{factory:te}=n,re=n.getEmitHost(),ue={trackSymbol:It,reportInaccessibleThisError:ht,reportInaccessibleUniqueSymbolError:St,reportCyclicStructureError:He,reportPrivateInBaseOfClassExpression:dt,reportLikelyUnsafeImportRequiredError:Et,reportTruncationError:Kt,moduleResolverHost:re,reportNonlocalAugmentation:Nt,reportNonSerializableProperty:Lt,reportInferenceFallback:qe},Ae,de,Be,Fe,Ne,Me,De=n.getEmitResolver(),lt=n.getCompilerOptions(),Le=Dxt(De),{stripInternal:je,isolatedDeclarations:st}=lt;return Zt;function nt(ct){De.getPropertiesOfContainerFunction(ct).forEach(rn=>{if(eM(rn.valueDeclaration)){let wt=ro(rn.valueDeclaration)?rn.valueDeclaration.left:rn.valueDeclaration;n.addDiagnostic(Js(wt,Z.Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function))}})}function qe(ct){!st||i0(Be)||ls(ct)===Be&&(js(ct)&&De.isExpandoFunctionDeclaration(ct)?nt(ct):n.addDiagnostic(Le(ct)))}function it(ct){if(ct.accessibility===0){if(ct.aliasesToMakeVisible)if(!V)V=ct.aliasesToMakeVisible;else for(let rn of ct.aliasesToMakeVisible)da(V,rn)}else if(ct.accessibility!==3){let rn=u(ct);if(rn)return rn.typeName?n.addDiagnostic(Js(ct.errorNode||rn.errorNode,rn.diagnosticMessage,Nf(rn.typeName),ct.errorSymbolName,ct.errorModuleName)):n.addDiagnostic(Js(ct.errorNode||rn.errorNode,rn.diagnosticMessage,ct.errorSymbolName,ct.errorModuleName)),!0}return!1}function It(ct,rn,wt){return ct.flags&262144?!1:it(De.isSymbolAccessible(ct,rn,wt,!0))}function dt(ct){(Ae||de)&&n.addDiagnostic(Js(Ae||de,Z.Property_0_of_exported_class_expression_may_not_be_private_or_protected,ct))}function Tt(){return Ae?kd(Ae):de&&Sl(de)?kd(Sl(de)):de&&rf(de)?de.isExportEquals?"export=":"default":"(Missing)"}function St(){(Ae||de)&&n.addDiagnostic(Js(Ae||de,Z.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary,Tt(),"unique symbol"))}function He(){(Ae||de)&&n.addDiagnostic(Js(Ae||de,Z.The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary,Tt()))}function ht(){(Ae||de)&&n.addDiagnostic(Js(Ae||de,Z.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary,Tt(),"this"))}function Et(ct){(Ae||de)&&n.addDiagnostic(Js(Ae||de,Z.The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary,Tt(),ct))}function Kt(){(Ae||de)&&n.addDiagnostic(Js(Ae||de,Z.The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed))}function Nt(ct,rn,wt){var br;let Mt=(br=rn.declarations)==null?void 0:br.find(Pr=>ls(Pr)===ct),_r=Gt(wt.declarations,Pr=>ls(Pr)!==ct);if(Mt&&_r)for(let Pr of _r)n.addDiagnostic(tg(Js(Pr,Z.Declaration_augments_declaration_in_another_file_This_cannot_be_serialized),Js(Mt,Z.This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file)))}function Lt(ct){(Ae||de)&&n.addDiagnostic(Js(Ae||de,Z.The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized,ct))}function kt(ct){let rn=u;u=br=>br.errorNode&&Hke(br.errorNode)?ZZ(br.errorNode)(br):{diagnosticMessage:br.errorModuleName?Z.Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit:Z.Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit,errorNode:br.errorNode||ct};let wt=De.getDeclarationStatementsForSourceFile(ct,f_e,ue);return u=rn,wt}function Zt(ct){if(ct.kind===307&&ct.isDeclarationFile)return ct;if(ct.kind===308){I=!0,Fe=[],Ne=[],Me=[];let cr=!1,kn=te.createBundle(Ot(ct.sourceFiles,an=>{if(an.isDeclarationFile)return;if(cr=cr||an.hasNoDefaultLib,Be=an,N=an,V=void 0,Q=!1,P=new Map,u=c,b=!1,R=!1,br(an),na(an)||fa(an)){h=!1,d=!1;let wn=i0(an)?te.createNodeArray(kt(an)):ws(an.statements,_s,Cc);return te.updateSourceFile(an,[te.createModuleDeclaration([te.createModifier(138)],te.createStringLiteral(kce(n.getEmitHost(),an)),te.createModuleBlock(un(te.createNodeArray(Wl(wn)),an.statements)))],!0,[],[],!1,[])}d=!0;let Kr=i0(an)?te.createNodeArray(kt(an)):ws(an.statements,_s,Cc);return te.updateSourceFile(an,Wl(Kr),!0,[],[],!1,[])})),Pn=oa(df(fue(ct,re,!0).declarationFilePath));return kn.syntheticFileReferences=ti(Pn),kn.syntheticTypeReferences=_r(),kn.syntheticLibReferences=Pr(),kn.hasNoDefaultLib=cr,kn}d=!0,b=!1,R=!1,N=ct,Be=ct,u=c,I=!1,h=!1,Q=!1,V=void 0,P=new Map,Fe=[],Ne=[],Me=[],br(Be);let rn;if(i0(Be))rn=te.createNodeArray(kt(ct));else{let cr=ws(ct.statements,_s,Cc);rn=un(te.createNodeArray(Wl(cr)),ct.statements),hm(ct)&&(!h||b&&!R)&&(rn=un(te.createNodeArray([...rn,Qhe(te)]),rn))}let wt=oa(df(fue(ct,re,!0).declarationFilePath));return te.updateSourceFile(ct,rn,!0,ti(wt),_r(),ct.hasNoDefaultLib,Pr());function br(cr){Fe=vi(Fe,Ot(cr.referencedFiles,kn=>[cr,kn])),Ne=vi(Ne,cr.typeReferenceDirectives),Me=vi(Me,cr.libReferenceDirectives)}function Mt(cr){let kn={...cr};return kn.pos=-1,kn.end=-1,kn}function _r(){return tr(Ne,cr=>{if(cr.preserve)return Mt(cr)})}function Pr(){return tr(Me,cr=>{if(cr.preserve)return Mt(cr)})}function ti(cr){return tr(Fe,([kn,Pn])=>{if(!Pn.preserve)return;let an=re.getSourceFileFromReference(kn,Pn);if(!an)return;let Kr;if(an.isDeclarationFile)Kr=an.fileName;else{if(I&&Ue(ct.sourceFiles,an))return;let ar=fue(an,re,!0);Kr=ar.declarationFilePath||ar.jsFilePath||an.fileName}if(!Kr)return;let wn=km(cr,Kr,re.getCurrentDirectory(),re.getCanonicalFileName,!1),Pe=Mt(Pn);return Pe.fileName=wn,Pe})}}function Dr(ct){if(ct.kind===80)return ct;return ct.kind===207?te.updateArrayBindingPattern(ct,ws(ct.elements,rn,k3)):te.updateObjectBindingPattern(ct,ws(ct.elements,rn,hl));function rn(wt){return wt.kind===232?wt:(wt.propertyName&&kg(wt.propertyName)&&lp(wt.propertyName.expression)&&gi(wt.propertyName.expression,N),te.updateBindingElement(wt,wt.dotDotDotToken,wt.propertyName,Dr(wt.name),void 0))}}function jt(ct,rn,wt){let br;Q||(br=u,u=ZZ(ct));let Mt=te.updateParameterDeclaration(ct,v7i(te,ct,rn),ct.dotDotDotToken,Dr(ct.name),De.isOptionalParameter(ct)?ct.questionToken||te.createToken(58):void 0,Vr(ct,wt||ct.type,!0),Pt(ct));return Q||(u=br),Mt}function mr(ct){return FGr(ct)&&!!ct.initializer&&De.isLiteralConstDeclaration(zc(ct))}function Pt(ct){if(mr(ct)){let rn=wle(ct.initializer);return zee(rn)||qe(ct),De.createLiteralConstValue(zc(ct,FGr),ue)}}function Vr(ct,rn,wt){if(!wt&&ib(ct,2)||mr(ct))return;let br=ct.kind===169&&De.requiresAddingImplicitUndefined(ct);if(rn&&!br)return xr(rn,gl,Ma);Ae=ct.name;let Mt;Q||(Mt=u,u=ZZ(ct));let _r;switch(ct.kind){case 169:case 171:case 172:case 208:case 260:_r=De.createTypeOfDeclaration(ct,N,f_e,ue);break;case 262:case 180:case 173:case 174:case 177:case 179:_r=De.createReturnTypeOfSignatureDeclaration(ct,N,f_e,ue);break;default:w.assertNever(ct)}return Ae=void 0,Q||(u=Mt),_r??te.createKeywordTypeNode(133)}function Hr(ct){switch(ct=zc(ct),ct.kind){case 262:case 267:case 264:case 263:case 265:case 266:return!De.isDeclarationVisible(ct);case 260:return!zr(ct);case 271:case 272:case 278:case 277:return!1;case 175:return!0}return!1}function pr(ct){var rn;if(ct.body)return!0;let wt=(rn=ct.symbol.declarations)==null?void 0:rn.filter(br=>hp(br)&&!br.body);return!wt||wt.indexOf(ct)===wt.length-1}function zr(ct){return tf(ct)?!1:fu(ct.name)?lr(ct.name.elements,zr):De.isDeclarationVisible(ct)}function $n(ct,rn,wt){if(ib(ct,2))return te.createNodeArray();let br=Ot(rn,Mt=>jt(Mt,wt));return br?te.createNodeArray(br,rn.hasTrailingComma):te.createNodeArray()}function bi(ct,rn){let wt;if(!rn){let br=sV(ct);br&&(wt=[jt(br)])}if(ob(ct)){let br;if(!rn){let Mt=qX(ct);if(Mt){let _r=kr(ct,Vx(ru(ct.parent)?ct.parent.properties:ct.parent.members,ct));br=jt(Mt,void 0,_r)}}br||(br=te.createParameterDeclaration(void 0,void 0,"value")),wt=Yr(wt,br)}return te.createNodeArray(wt||v)}function Pi(ct,rn){return ib(ct,2)?void 0:ws(rn,gl,$p)}function Ns(ct){return Fc(ct)||Pf(ct)||mC(ct)||Ec(ct)||XI(ct)||eu(ct)||_(ct)||wl(ct)}function gi(ct,rn){let wt=De.isEntityNameVisible(ct,rn);it(wt)}function jn(ct,rn){return _y(ct)&&_y(rn)&&(ct.jsDoc=rn.jsDoc),hA(ct,US(rn))}function xs(ct,rn){if(rn){if(h=h||ct.kind!==267&&ct.kind!==205,JA(rn)&&I){let wt=aDe(n.getEmitHost(),De,ct);if(wt)return te.createStringLiteral(wt)}return rn}}function Bc(ct){if(De.isDeclarationVisible(ct))if(ct.moduleReference.kind===283){let rn=M8(ct);return te.updateImportEqualsDeclaration(ct,ct.modifiers,ct.isTypeOnly,ct.name,te.updateExternalModuleReference(ct.moduleReference,xs(ct,rn)))}else{let rn=u;return u=ZZ(ct),gi(ct.moduleReference,N),u=rn,ct}}function xi(ct){if(!ct.importClause)return te.updateImportDeclaration(ct,ct.modifiers,ct.importClause,xs(ct,ct.moduleSpecifier),rc(ct.attributes));let rn=ct.importClause&&ct.importClause.name&&De.isDeclarationVisible(ct.importClause)?ct.importClause.name:void 0;if(!ct.importClause.namedBindings)return rn&&te.updateImportDeclaration(ct,ct.modifiers,te.updateImportClause(ct.importClause,ct.importClause.isTypeOnly,rn,void 0),xs(ct,ct.moduleSpecifier),rc(ct.attributes));if(ct.importClause.namedBindings.kind===274){let br=De.isDeclarationVisible(ct.importClause.namedBindings)?ct.importClause.namedBindings:void 0;return rn||br?te.updateImportDeclaration(ct,ct.modifiers,te.updateImportClause(ct.importClause,ct.importClause.isTypeOnly,rn,br),xs(ct,ct.moduleSpecifier),rc(ct.attributes)):void 0}let wt=tr(ct.importClause.namedBindings.elements,br=>De.isDeclarationVisible(br)?br:void 0);if(wt&&wt.length||rn)return te.updateImportDeclaration(ct,ct.modifiers,te.updateImportClause(ct.importClause,ct.importClause.isTypeOnly,rn,wt&&wt.length?te.updateNamedImports(ct.importClause.namedBindings,wt):void 0),xs(ct,ct.moduleSpecifier),rc(ct.attributes));if(De.isImportRequiredByAugmentation(ct))return st&&n.addDiagnostic(Js(ct,Z.Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_supported_with_isolatedDeclarations)),te.updateImportDeclaration(ct,ct.modifiers,void 0,xs(ct,ct.moduleSpecifier),rc(ct.attributes))}function rc(ct){let rn=Nte(ct);return ct&&rn!==void 0?ct:void 0}function Wl(ct){for(;O(V);){let wt=V.shift();if(!G8(wt))return w.fail(`Late replaced statement was found which is not handled by the declaration transformer!: ${w.formatSyntaxKind(wt.kind)}`);let br=d;d=wt.parent&&Fc(wt.parent)&&!(hm(wt.parent)&&I);let Mt=ni(wt);d=br,P.set(Ey(wt),Mt)}return ws(ct,rn,Cc);function rn(wt){if(G8(wt)){let br=Ey(wt);if(P.has(br)){let Mt=P.get(br);return P.delete(br),Mt&&((Na(Mt)?lr(Mt,y8):y8(Mt))&&(b=!0),Fc(wt.parent)&&(Na(Mt)?lr(Mt,G3):G3(Mt))&&(h=!0)),Mt}}return wt}}function gl(ct){if(Rc(ct))return;if(xC(ct)){if(Hr(ct))return;if($R(ct)){if(st){if(!De.isDefinitelyReferenceToGlobalSymbolObject(ct.name.expression)){if(Ec(ct.parent)||ru(ct.parent)){n.addDiagnostic(Js(ct,Z.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations));return}else if((XI(ct.parent)||Se(ct.parent))&&!lp(ct.name.expression)){n.addDiagnostic(Js(ct,Z.Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations));return}}}else if(!De.isLateBound(zc(ct))||!lp(ct.name.expression))return}}if(eu(ct)&&De.isImplementationOfOverload(ct)||Yx(ct))return;let rn;Ns(ct)&&(rn=N,N=ct);let wt=u,br=Hke(ct),Mt=Q,_r=(ct.kind===187||ct.kind===200)&&ct.parent.kind!==265;if((lI(ct)||zS(ct))&&ib(ct,2))return ct.symbol&&ct.symbol.declarations&&ct.symbol.declarations[0]!==ct?void 0:Pr(te.createPropertyDeclaration(Bi(ct),ct.name,void 0,void 0,void 0));if(br&&!Q&&(u=ZZ(ct)),oe(ct)&&gi(ct.exprName,N),_r&&(Q=!0),w7i(ct))switch(ct.kind){case 233:{(T_(ct.expression)||lp(ct.expression))&&gi(ct.expression,N);let ti=ns(ct,gl,n);return Pr(te.updateExpressionWithTypeArguments(ti,ti.expression,ti.typeArguments))}case 183:{gi(ct.typeName,N);let ti=ns(ct,gl,n);return Pr(te.updateTypeReferenceNode(ti,ti.typeName,ti.typeArguments))}case 180:return Pr(te.updateConstructSignature(ct,Pi(ct,ct.typeParameters),$n(ct,ct.parameters),Vr(ct,ct.type)));case 176:{let ti=te.createConstructorDeclaration(Bi(ct),$n(ct,ct.parameters,0),void 0);return Pr(ti)}case 174:{if(Gc(ct.name))return Pr(void 0);let ti=te.createMethodDeclaration(Bi(ct),void 0,ct.name,ct.questionToken,Pi(ct,ct.typeParameters),$n(ct,ct.parameters),Vr(ct,ct.type),void 0);return Pr(ti)}case 177:{if(Gc(ct.name))return Pr(void 0);let ti=kr(ct,Vx(ru(ct.parent)?ct.parent.properties:ct.parent.members,ct));return Pr(te.updateGetAccessorDeclaration(ct,Bi(ct),ct.name,bi(ct,ib(ct,2)),Vr(ct,ti),void 0))}case 178:return Gc(ct.name)?Pr(void 0):Pr(te.updateSetAccessorDeclaration(ct,Bi(ct),ct.name,bi(ct,ib(ct,2)),void 0));case 172:return Gc(ct.name)?Pr(void 0):Pr(te.updatePropertyDeclaration(ct,Bi(ct),ct.name,ct.questionToken,Vr(ct,ct.type),Pt(ct)));case 171:return Gc(ct.name)?Pr(void 0):Pr(te.updatePropertySignature(ct,Bi(ct),ct.name,ct.questionToken,Vr(ct,ct.type)));case 173:return Gc(ct.name)?Pr(void 0):Pr(te.updateMethodSignature(ct,Bi(ct),ct.name,ct.questionToken,Pi(ct,ct.typeParameters),$n(ct,ct.parameters),Vr(ct,ct.type)));case 179:return Pr(te.updateCallSignature(ct,Pi(ct,ct.typeParameters),$n(ct,ct.parameters),Vr(ct,ct.type)));case 181:return Pr(te.updateIndexSignature(ct,Bi(ct),$n(ct,ct.parameters),xr(ct.type,gl,Ma)||te.createKeywordTypeNode(133)));case 260:return fu(ct.name)?Hs(ct.name):(_r=!0,Q=!0,Pr(te.updateVariableDeclaration(ct,ct.name,void 0,Vr(ct,ct.type),Pt(ct))));case 168:return mc(ct)&&(ct.default||ct.constraint)?Pr(te.updateTypeParameterDeclaration(ct,ct.modifiers,ct.name,void 0,void 0)):Pr(ns(ct,gl,n));case 194:{let ti=xr(ct.checkType,gl,Ma),cr=xr(ct.extendsType,gl,Ma),kn=N;N=ct.trueType;let Pn=xr(ct.trueType,gl,Ma);N=kn;let an=xr(ct.falseType,gl,Ma);return w.assert(ti),w.assert(cr),w.assert(Pn),w.assert(an),Pr(te.updateConditionalTypeNode(ct,ti,cr,Pn,an))}case 184:return Pr(te.updateFunctionTypeNode(ct,ws(ct.typeParameters,gl,$p),$n(ct,ct.parameters),w.checkDefined(xr(ct.type,gl,Ma))));case 185:return Pr(te.updateConstructorTypeNode(ct,Bi(ct),ws(ct.typeParameters,gl,$p),$n(ct,ct.parameters),w.checkDefined(xr(ct.type,gl,Ma))));case 205:return n_(ct)?Pr(te.updateImportTypeNode(ct,te.updateLiteralTypeNode(ct.argument,xs(ct,ct.argument.literal)),ct.attributes,ct.qualifier,ws(ct.typeArguments,gl,Ma),ct.isTypeOf)):Pr(ct);default:w.assertNever(ct,`Attempted to process unhandled node kind: ${w.formatSyntaxKind(ct.kind)}`)}return Ct(ct)&&Vl(Be,ct.pos).line===Vl(Be,ct.end).line&&ao(ct,1),Pr(ns(ct,gl,n));function Pr(ti){return ti&&br&&$R(ct)&&nc(ct),Ns(ct)&&(N=rn),br&&!Q&&(u=wt),_r&&(Q=Mt),ti===ct?ti:ti&&Ho(jn(ti,ct),ct)}}function mc(ct){return ct.parent.kind===174&&ib(ct.parent,2)}function _s(ct){if(!S7i(ct)||Rc(ct))return;switch(ct.kind){case 278:return Fc(ct.parent)&&(h=!0),R=!0,te.updateExportDeclaration(ct,ct.modifiers,ct.isTypeOnly,ct.exportClause,xs(ct,ct.moduleSpecifier),rc(ct.attributes));case 277:{if(Fc(ct.parent)&&(h=!0),R=!0,ct.expression.kind===80)return ct;{let wt=te.createUniqueName("_default",16);u=()=>({diagnosticMessage:Z.Default_export_of_the_module_has_or_is_using_private_name_0,errorNode:ct}),de=ct;let br=te.createVariableDeclaration(wt,void 0,De.createTypeOfExpression(ct.expression,ct,f_e,ue),void 0);de=void 0;let Mt=te.createVariableStatement(d?[te.createModifier(138)]:[],te.createVariableDeclarationList([br],2));return jn(Mt,ct),nte(ct),[Mt,te.updateExportAssignment(ct,ct.modifiers,wt)]}}}let rn=ni(ct);return P.set(Ey(ct),rn),ct}function Pu(ct){if(mm(ct)||ib(ct,2048)||!tw(ct))return ct;let rn=te.createModifiersFromModifierFlags(R_(ct)&131039);return te.replaceModifiers(ct,rn)}function ir(ct,rn,wt,br){let Mt=te.updateModuleDeclaration(ct,rn,wt,br);if(Yf(Mt)||Mt.flags&32)return Mt;let _r=te.createModuleDeclaration(Mt.modifiers,Mt.name,Mt.body,Mt.flags|32);return Ho(_r,Mt),un(_r,Mt),_r}function ni(ct){if(V)for(;tA(V,ct););if(Rc(ct))return;switch(ct.kind){case 271:return Bc(ct);case 272:return xi(ct)}if(xC(ct)&&Hr(ct)||DN(ct)||eu(ct)&&De.isImplementationOfOverload(ct))return;let rn;Ns(ct)&&(rn=N,N=ct);let wt=Hke(ct),br=u;wt&&(u=ZZ(ct));let Mt=d;switch(ct.kind){case 265:{d=!1;let Pr=_r(te.updateTypeAliasDeclaration(ct,Bi(ct),ct.name,ws(ct.typeParameters,gl,$p),w.checkDefined(xr(ct.type,gl,Ma))));return d=Mt,Pr}case 264:return _r(te.updateInterfaceDeclaration(ct,Bi(ct),ct.name,Pi(ct,ct.typeParameters),en(ct.heritageClauses),ws(ct.members,gl,Rx)));case 262:{let Pr=_r(te.updateFunctionDeclaration(ct,Bi(ct),void 0,ct.name,Pi(ct,ct.typeParameters),$n(ct,ct.parameters),Vr(ct,ct.type),void 0));if(Pr&&De.isExpandoFunctionDeclaration(ct)&&pr(ct)){let ti=De.getPropertiesOfContainerFunction(ct);st&&nt(ct);let cr=cP.createModuleDeclaration(void 0,Pr.name||te.createIdentifier("_default"),te.createModuleBlock([]),32);GA(cr,N),cr.locals=xu(ti),cr.symbol=ti[0].parent;let kn=[],Pn=tr(ti,sn=>{if(!eM(sn.valueDeclaration))return;let Qe=wc(sn.escapedName);if(!Ke(Qe,99))return;u=ZZ(sn.valueDeclaration);let ur=De.createTypeOfDeclaration(sn.valueDeclaration,cr,f_e|-2147483648,ue);u=br;let Re=L5(Qe),Jt=Re?te.getGeneratedNameForNode(sn.valueDeclaration):te.createIdentifier(Qe);Re&&kn.push([Jt,Qe]);let bt=te.createVariableDeclaration(Jt,void 0,ur,void 0);return te.createVariableStatement(Re?void 0:[te.createToken(95)],te.createVariableDeclarationList([bt]))});kn.length?Pn.push(te.createExportDeclaration(void 0,!1,te.createNamedExports(Ot(kn,([sn,Qe])=>te.createExportSpecifier(!1,sn,Qe))))):Pn=tr(Pn,sn=>te.replaceModifiers(sn,0));let an=te.createModuleDeclaration(Bi(ct),ct.name,te.createModuleBlock(Pn),32);if(!ib(Pr,2048))return[Pr,an];let Kr=te.createModifiersFromModifierFlags(R_(Pr)&-2081|128),wn=te.updateFunctionDeclaration(Pr,Kr,void 0,Pr.name,Pr.typeParameters,Pr.parameters,Pr.type,void 0),Pe=te.updateModuleDeclaration(an,Kr,an.name,an.body),ar=te.createExportAssignment(void 0,!1,an.name);return Fc(ct.parent)&&(h=!0),R=!0,[wn,Pe,ar]}else return Pr}case 267:{d=!1;let Pr=ct.body;if(Pr&&Pr.kind===268){let ti=b,cr=R;R=!1,b=!1;let kn=ws(Pr.statements,_s,Cc),Pn=Wl(kn);ct.flags&33554432&&(b=!1),!S2(ct)&&!ju(Pn)&&!R&&(b?Pn=te.createNodeArray([...Pn,Qhe(te)]):Pn=ws(Pn,Pu,Cc));let an=te.updateModuleBlock(Pr,Pn);d=Mt,b=ti,R=cr;let Kr=Bi(ct);return _r(ir(ct,Kr,KR(ct)?xs(ct,ct.name):ct.name,an))}else{d=Mt;let ti=Bi(ct);d=!1,xr(Pr,_s);let cr=Ey(Pr),kn=P.get(cr);return P.delete(cr),_r(ir(ct,ti,ct.name,kn))}}case 263:{Ae=ct.name,de=ct;let Pr=te.createNodeArray(Bi(ct)),ti=Pi(ct,ct.typeParameters),cr=pN(ct),kn;if(cr){let ar=u;kn=Vn(Fr(cr.parameters,sn=>{if(!ya(sn,31)||Rc(sn))return;if(u=ZZ(sn),sn.name.kind===80)return jn(te.createPropertyDeclaration(Bi(sn),sn.name,sn.questionToken,Vr(sn,sn.type),Pt(sn)),sn);return Qe(sn.name);function Qe(ur){let Re;for(let Jt of ur.elements)tf(Jt)||(fu(Jt.name)&&(Re=vi(Re,Qe(Jt.name))),Re=Re||[],Re.push(te.createPropertyDeclaration(Bi(sn),Jt.name,void 0,Vr(Jt,void 0),void 0)));return Re}})),u=ar}let an=lr(ct.members,ar=>!!ar.name&&Gc(ar.name))?[te.createPropertyDeclaration(void 0,te.createPrivateIdentifier("#private"),void 0,void 0,void 0)]:void 0,Kr=vi(vi(an,kn),ws(ct.members,gl,nC)),wn=te.createNodeArray(Kr),Pe=xv(ct);if(Pe&&!lp(Pe.expression)&&Pe.expression.kind!==106){let ar=ct.name?wc(ct.name.escapedText):"default",sn=te.createUniqueName(`${ar}_base`,16);u=()=>({diagnosticMessage:Z.extends_clause_of_exported_class_0_has_or_is_using_private_name_1,errorNode:Pe,typeName:ct.name});let Qe=te.createVariableDeclaration(sn,void 0,De.createTypeOfExpression(Pe.expression,ct,f_e,ue),void 0),ur=te.createVariableStatement(d?[te.createModifier(138)]:[],te.createVariableDeclarationList([Qe],2)),Re=te.createNodeArray(Ot(ct.heritageClauses,Jt=>{if(Jt.token===96){let bt=u;u=ZZ(Jt.types[0]);let Vt=te.updateHeritageClause(Jt,Ot(Jt.types,dn=>te.updateExpressionWithTypeArguments(dn,sn,ws(dn.typeArguments,gl,Ma))));return u=bt,Vt}return te.updateHeritageClause(Jt,ws(te.createNodeArray(Gt(Jt.types,bt=>lp(bt.expression)||bt.expression.kind===106)),gl,k_))}));return[ur,_r(te.updateClassDeclaration(ct,Pr,ct.name,ti,Re,wn))]}else{let ar=en(ct.heritageClauses);return _r(te.updateClassDeclaration(ct,Pr,ct.name,ti,ar,wn))}}case 243:return _r(gs(ct));case 266:return _r(te.updateEnumDeclaration(ct,te.createNodeArray(Bi(ct)),ct.name,te.createNodeArray(tr(ct.members,Pr=>{if(Rc(Pr))return;let ti=De.getEnumMemberValue(Pr),cr=ti?.value;st&&Pr.initializer&&ti?.hasExternalReferences&&!kg(Pr.name)&&n.addDiagnostic(Js(Pr,Z.Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations));let kn=cr===void 0?void 0:typeof cr=="string"?te.createStringLiteral(cr):cr<0?te.createPrefixUnaryExpression(41,te.createNumericLiteral(-cr)):te.createNumericLiteral(cr);return jn(te.updateEnumMember(Pr,Pr.name,kn),Pr)}))))}return w.assertNever(ct,`Unhandled top-level node in declaration emit: ${w.formatSyntaxKind(ct.kind)}`);function _r(Pr){return Ns(ct)&&(N=rn),wt&&(u=br),ct.kind===267&&(d=Mt),Pr===ct?Pr:(de=void 0,Ae=void 0,Pr&&Ho(jn(Pr,ct),ct))}}function gs(ct){if(!X(ct.declarationList.declarations,zr))return;let rn=ws(ct.declarationList.declarations,gl,js);if(!O(rn))return;let wt=te.createNodeArray(Bi(ct)),br;return fd(ct.declarationList)||Mg(ct.declarationList)?(br=te.createVariableDeclarationList(rn,2),Ho(br,ct.declarationList),un(br,ct.declarationList),hA(br,ct.declarationList)):br=te.updateVariableDeclarationList(ct.declarationList,rn),te.updateVariableStatement(ct,wt,br)}function Hs(ct){return or(tr(ct.elements,rn=>za(rn)))}function za(ct){if(ct.kind!==232&&ct.name)return zr(ct)?fu(ct.name)?Hs(ct.name):te.createVariableDeclaration(ct.name,void 0,Vr(ct,void 0),void 0):void 0}function nc(ct){let rn;Q||(rn=u,u=Rxt(ct)),Ae=ct.name,w.assert($R(ct));let br=ct.name.expression;gi(br,N),Q||(u=rn),Ae=void 0}function Rc(ct){return!!je&&!!ct&&jae(ct,Be)}function lg(ct){return rf(ct)||hC(ct)}function ju(ct){return lr(ct,lg)}function Bi(ct){let rn=R_(ct),wt=vA(ct);return rn===wt?g_e(ct.modifiers,br=>$s(br,Ag),Ag):te.createModifiersFromModifierFlags(wt)}function vA(ct){let rn=130030,wt=d&&!B7i(ct)?128:0,br=ct.parent.kind===307;return(!br||I&&br&&hm(ct.parent))&&(rn^=128,wt=0),GGr(ct,rn,wt)}function kr(ct,rn){let wt=kxt(ct);return!wt&&ct!==rn.firstAccessor&&(wt=kxt(rn.firstAccessor),u=ZZ(rn.firstAccessor)),!wt&&rn.secondAccessor&&ct!==rn.secondAccessor&&(wt=kxt(rn.secondAccessor),u=ZZ(rn.secondAccessor)),wt}function en(ct){return te.createNodeArray(Gt(Ot(ct,rn=>te.updateHeritageClause(rn,ws(te.createNodeArray(Gt(rn.types,wt=>lp(wt.expression)||rn.token===96&&wt.expression.kind===106)),gl,k_))),rn=>rn.types&&!!rn.types.length))}}function B7i(n){return n.kind===264}function v7i(n,c,u,d){return n.createModifiersFromModifierFlags(GGr(c,u,d))}function GGr(n,c=131070,u=0){let d=R_(n)&c|u;return d&2048&&!(d&32)&&(d^=32),d&2048&&d&128&&(d^=128),d}function kxt(n){if(n)return n.kind===177?n.type:n.parameters.length>0?n.parameters[0].type:void 0}function FGr(n){switch(n.kind){case 172:case 171:return!ib(n,2);case 169:case 260:return!0}return!1}function S7i(n){switch(n.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}function w7i(n){switch(n.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}function T7i(n){switch(n){case 99:case 7:case 6:case 5:case 200:return d6e;case 4:return Txt;case 100:case 199:return Nxt;default:return A6e}}var Gxt={scriptTransformers:v,declarationTransformers:v};function Fxt(n,c,u){return{scriptTransformers:N7i(n,c,u),declarationTransformers:R7i(c)}}function N7i(n,c,u){if(u)return v;let d=sA(n),I=D_(n),h=Wee(n),b=[];return ai(b,c&&Ot(c.before,LGr)),b.push(gxt),n.experimentalDecorators&&b.push(pxt),Oee(n)&&b.push(Bxt),d<99&&b.push(yxt),!n.experimentalDecorators&&(d<99||!h)&&b.push(fxt),b.push(Axt),d<8&&b.push(_xt),d<7&&b.push(hxt),d<6&&b.push(mxt),d<5&&b.push(Cxt),d<4&&b.push(Ixt),d<3&&b.push(vxt),d<2&&(b.push(Sxt),b.push(wxt)),b.push(T7i(I)),ai(b,c&&Ot(c.after,LGr)),b}function R7i(n){let c=[];return c.push(p6e),ai(c,n&&Ot(n.afterDeclarations,x7i)),c}function D7i(n){return c=>zNt(c)?n.transformBundle(c):n.transformSourceFile(c)}function ZGr(n,c){return u=>{let d=n(u);return typeof d=="function"?c(u,d):D7i(d)}}function LGr(n){return ZGr(n,uT)}function x7i(n){return ZGr(n,(c,u)=>u)}function pue(n,c){return c}function I_e(n,c,u){u(n,c)}function C_e(n,c,u,d,I,h,b){var R,N;let V=new Array(357),P,Q,te,re=0,ue=[],Ae=[],de=[],Be=[],Fe=0,Ne=!1,Me=[],De=0,lt,Le,je=pue,st=I_e,nt=0,qe=[],it={factory:u,getCompilerOptions:()=>d,getEmitResolver:()=>n,getEmitHost:()=>c,getEmitHelperFactory:su(()=>xhe(it)),startLexicalEnvironment:jt,suspendLexicalEnvironment:mr,resumeLexicalEnvironment:Pt,endLexicalEnvironment:Vr,setLexicalEnvironmentFlags:Hr,getLexicalEnvironmentFlags:pr,hoistVariableDeclaration:kt,hoistFunctionDeclaration:Zt,addInitializationStatement:Dr,startBlockScope:zr,endBlockScope:$n,addBlockScopedVariable:bi,requestEmitHelper:Pi,readEmitHelpers:Ns,enableSubstitution:He,enableEmitNotification:Kt,isSubstitutionEnabled:ht,isEmitNotificationEnabled:Nt,get onSubstituteNode(){return je},set onSubstituteNode(jn){w.assert(nt<1,"Cannot modify transformation hooks after initialization has completed."),w.assert(jn!==void 0,"Value must not be 'undefined'"),je=jn},get onEmitNode(){return st},set onEmitNode(jn){w.assert(nt<1,"Cannot modify transformation hooks after initialization has completed."),w.assert(jn!==void 0,"Value must not be 'undefined'"),st=jn},addDiagnostic(jn){qe.push(jn)}};for(let jn of I)Rle(ls(zc(jn)));rs("beforeTransform");let It=h.map(jn=>jn(it)),dt=jn=>{for(let xs of It)jn=xs(jn);return jn};nt=1;let Tt=[];for(let jn of I)(R=Qi)==null||R.push(Qi.Phase.Emit,"transformNodes",jn.kind===307?{path:jn.path}:{kind:jn.kind,pos:jn.pos,end:jn.end}),Tt.push((b?dt:St)(jn)),(N=Qi)==null||N.pop();return nt=2,rs("afterTransform"),Sc("transformTime","beforeTransform","afterTransform"),{transformed:Tt,substituteNode:Et,emitNodeWithNotification:Lt,isEmitNotificationEnabled:Nt,dispose:gi,diagnostics:qe};function St(jn){return jn&&(!Fc(jn)||!jn.isDeclarationFile)?dt(jn):jn}function He(jn){w.assert(nt<2,"Cannot modify the transformation context after transformation has completed."),V[jn]|=1}function ht(jn){return(V[jn.kind]&1)!==0&&(wg(jn)&8)===0}function Et(jn,xs){return w.assert(nt<3,"Cannot substitute a node after the result is disposed."),xs&&ht(xs)&&je(jn,xs)||xs}function Kt(jn){w.assert(nt<2,"Cannot modify the transformation context after transformation has completed."),V[jn]|=2}function Nt(jn){return(V[jn.kind]&2)!==0||(wg(jn)&4)!==0}function Lt(jn,xs,Bc){w.assert(nt<3,"Cannot invoke TransformationResult callbacks after the result is disposed."),xs&&(Nt(xs)?st(jn,xs,Bc):Bc(jn,xs))}function kt(jn){w.assert(nt>0,"Cannot modify the lexical environment during initialization."),w.assert(nt<2,"Cannot modify the lexical environment after transformation has completed.");let xs=ao(u.createVariableDeclaration(jn),128);P?P.push(xs):P=[xs],re&1&&(re|=2)}function Zt(jn){w.assert(nt>0,"Cannot modify the lexical environment during initialization."),w.assert(nt<2,"Cannot modify the lexical environment after transformation has completed."),ao(jn,2097152),Q?Q.push(jn):Q=[jn]}function Dr(jn){w.assert(nt>0,"Cannot modify the lexical environment during initialization."),w.assert(nt<2,"Cannot modify the lexical environment after transformation has completed."),ao(jn,2097152),te?te.push(jn):te=[jn]}function jt(){w.assert(nt>0,"Cannot modify the lexical environment during initialization."),w.assert(nt<2,"Cannot modify the lexical environment after transformation has completed."),w.assert(!Ne,"Lexical environment is suspended."),ue[Fe]=P,Ae[Fe]=Q,de[Fe]=te,Be[Fe]=re,Fe++,P=void 0,Q=void 0,te=void 0,re=0}function mr(){w.assert(nt>0,"Cannot modify the lexical environment during initialization."),w.assert(nt<2,"Cannot modify the lexical environment after transformation has completed."),w.assert(!Ne,"Lexical environment is already suspended."),Ne=!0}function Pt(){w.assert(nt>0,"Cannot modify the lexical environment during initialization."),w.assert(nt<2,"Cannot modify the lexical environment after transformation has completed."),w.assert(Ne,"Lexical environment is not suspended."),Ne=!1}function Vr(){w.assert(nt>0,"Cannot modify the lexical environment during initialization."),w.assert(nt<2,"Cannot modify the lexical environment after transformation has completed."),w.assert(!Ne,"Lexical environment is suspended.");let jn;if(P||Q||te){if(Q&&(jn=[...Q]),P){let xs=u.createVariableStatement(void 0,u.createVariableDeclarationList(P));ao(xs,2097152),jn?jn.push(xs):jn=[xs]}te&&(jn?jn=[...jn,...te]:jn=[...te])}return Fe--,P=ue[Fe],Q=Ae[Fe],te=de[Fe],re=Be[Fe],Fe===0&&(ue=[],Ae=[],de=[],Be=[]),jn}function Hr(jn,xs){re=xs?re|jn:re&~jn}function pr(){return re}function zr(){w.assert(nt>0,"Cannot start a block scope during initialization."),w.assert(nt<2,"Cannot start a block scope after transformation has completed."),Me[De]=lt,De++,lt=void 0}function $n(){w.assert(nt>0,"Cannot end a block scope during initialization."),w.assert(nt<2,"Cannot end a block scope after transformation has completed.");let jn=lr(lt)?[u.createVariableStatement(void 0,u.createVariableDeclarationList(lt.map(xs=>u.createVariableDeclaration(xs)),1))]:void 0;return De--,lt=Me[De],De===0&&(Me=[]),jn}function bi(jn){w.assert(De>0,"Cannot add a block scoped variable outside of an iteration body."),(lt||(lt=[])).push(jn)}function Pi(jn){if(w.assert(nt>0,"Cannot modify the transformation context during initialization."),w.assert(nt<2,"Cannot modify the transformation context after transformation has completed."),w.assert(!jn.scoped,"Cannot request a scoped emit helper."),jn.dependencies)for(let xs of jn.dependencies)Pi(xs);Le=Yr(Le,jn)}function Ns(){w.assert(nt>0,"Cannot modify the transformation context during initialization."),w.assert(nt<2,"Cannot modify the transformation context after transformation has completed.");let jn=Le;return Le=void 0,jn}function gi(){if(nt<3){for(let jn of I)Rle(ls(zc(jn)));P=void 0,ue=void 0,Q=void 0,Ae=void 0,je=void 0,st=void 0,Le=void 0,nt=3}}}var m_e={factory:_e,getCompilerOptions:()=>({}),getEmitResolver:ja,getEmitHost:ja,getEmitHelperFactory:ja,startLexicalEnvironment:oc,resumeLexicalEnvironment:oc,suspendLexicalEnvironment:oc,endLexicalEnvironment:wI,setLexicalEnvironmentFlags:oc,getLexicalEnvironmentFlags:()=>0,hoistVariableDeclaration:oc,hoistFunctionDeclaration:oc,addInitializationStatement:oc,startBlockScope:oc,endBlockScope:wI,addBlockScopedVariable:oc,requestEmitHelper:oc,readEmitHelpers:ja,enableSubstitution:oc,enableEmitNotification:oc,isSubstitutionEnabled:ja,isEmitNotificationEnabled:ja,onSubstituteNode:pue,onEmitNode:I_e,addDiagnostic:oc},VGr=k7i();function Zxt(n){return Ad(n,".tsbuildinfo")}function f6e(n,c,u,d=!1,I,h){let b=Na(u)?u:Lce(n,u,d),R=n.getCompilerOptions();if(R.outFile){if(b.length){let N=_e.createBundle(b),V=c(fue(N,n,d),N);if(V)return V}}else{if(!I)for(let N of b){let V=c(fue(N,n,d),N);if(V)return V}if(h){let N=LZ(R);if(N)return c({buildInfoPath:N},void 0)}}}function LZ(n){let c=n.configFilePath;if(!h6(n))return;if(n.tsBuildInfoFile)return n.tsBuildInfoFile;let u=n.outFile,d;if(u)d=a0(u);else{if(!c)return;let I=a0(c);d=n.outDir?n.rootDir?$_(n.outDir,Ip(n.rootDir,I,!0)):Do(n.outDir,kA(I)):I}return d+".tsbuildinfo"}function Yke(n,c){let u=n.outFile,d=n.emitDeclarationOnly?void 0:u,I=d&&WGr(d,n),h=c||WE(n)?a0(u)+".d.ts":void 0,b=h&&nle(n)?h+".map":void 0,R=LZ(n);return{jsFilePath:d,sourceMapFilePath:I,declarationFilePath:h,declarationMapPath:b,buildInfoPath:R}}function fue(n,c,u){let d=c.getCompilerOptions();if(n.kind===308)return Yke(d,u);{let I=cDe(n.fileName,c,Xke(n.fileName,d)),h=fa(n),b=h&&dh(n.fileName,I,c.getCurrentDirectory(),!c.useCaseSensitiveFileNames())===0,R=d.emitDeclarationOnly||b?void 0:I,N=!R||fa(n)?void 0:WGr(R,d),V=u||WE(d)&&!h?lDe(n.fileName,c):void 0,P=V&&nle(d)?V+".map":void 0;return{jsFilePath:R,sourceMapFilePath:N,declarationFilePath:V,declarationMapPath:P,buildInfoPath:void 0}}}function WGr(n,c){return c.sourceMap&&!c.inlineSourceMap?n+".map":void 0}function Xke(n,c){return Ad(n,".json")?".json":c.jsx===1&&fp(n,[".jsx",".tsx"])?".jsx":fp(n,[".mts",".mjs"])?".mjs":fp(n,[".cts",".cjs"])?".cjs":".js"}function PGr(n,c,u,d){return u?$_(u,Ip(d(),n,c)):n}function Tte(n,c,u,d=()=>z6(c,u)){return I6e(n,c.options,u,d)}function I6e(n,c,u,d){return NG(PGr(n,u,c.declarationDir||c.outDir,d),Fce(n))}function OGr(n,c,u,d=()=>z6(c,u)){if(c.options.emitDeclarationOnly)return;let I=Ad(n,".json"),h=C6e(n,c.options,u,d);return!I||dh(n,h,w.checkDefined(c.options.configFilePath),u)!==0?h:void 0}function C6e(n,c,u,d){return NG(PGr(n,u,c.outDir,d),Xke(n,c))}function QGr(){let n;return{addOutput:c,getOutputs:u};function c(d){d&&(n||(n=[])).push(d)}function u(){return n||v}}function MGr(n,c){let{jsFilePath:u,sourceMapFilePath:d,declarationFilePath:I,declarationMapPath:h,buildInfoPath:b}=Yke(n.options,!1);c(u),c(d),c(I),c(h),c(b)}function HGr(n,c,u,d,I){if(Gh(c))return;let h=OGr(c,n,u,I);if(d(h),!Ad(c,".json")&&(h&&n.options.sourceMap&&d(`${h}.map`),WE(n.options))){let b=Tte(c,n,u,I);d(b),n.options.declarationMap&&d(`${b}.map`)}}function Iue(n,c,u,d,I){let h;return n.rootDir?(h=Qc(n.rootDir,u),I?.(n.rootDir)):n.composite&&n.configFilePath?(h=oa(df(n.configFilePath)),I?.(h)):h=Hxt(c(),u,d),h&&h[h.length-1]!==$u&&(h+=$u),h}function z6({options:n,fileNames:c},u){return Iue(n,()=>Gt(c,d=>!(n.noEmitForJsFiles&&fp(d,r4))&&!Gh(d)),oa(df(w.checkDefined(n.configFilePath))),rA(!u))}function Jke(n,c){let{addOutput:u,getOutputs:d}=QGr();if(n.options.outFile)MGr(n,u);else{let I=su(()=>z6(n,c));for(let h of n.fileNames)HGr(n,h,c,u,I);u(LZ(n.options))}return d()}function YGr(n,c,u){c=Mc(c),w.assert(Ue(n.fileNames,c),"Expected fileName to be present in command line");let{addOutput:d,getOutputs:I}=QGr();return n.options.outFile?MGr(n,d):HGr(n,c,u,d),I()}function m6e(n,c){if(n.options.outFile){let{jsFilePath:I,declarationFilePath:h}=Yke(n.options,!1);return w.checkDefined(I||h,`project ${n.options.configFilePath} expected to have at least one output`)}let u=su(()=>z6(n,c));for(let I of n.fileNames){if(Gh(I))continue;let h=OGr(I,n,c,u);if(h)return h;if(!Ad(I,".json")&&WE(n.options))return Tte(I,n,c,u)}let d=LZ(n.options);return d||w.fail(`project ${n.options.configFilePath} expected to have at least one output`)}function h6e(n,c){return!!c&&!!n}function _6e(n,c,u,{scriptTransformers:d,declarationTransformers:I},h,b,R){var N=c.getCompilerOptions(),V=N.sourceMap||N.inlineSourceMap||nle(N)?[]:void 0,P=N.listEmittedFiles?[]:void 0,Q=BG(),te=F1(N),re=See(te),{enter:ue,exit:Ae}=nA("printTime","beforePrint","afterPrint"),de=!1;return ue(),f6e(c,Be,Lce(c,u,R),R,b,!u),Ae(),{emitSkipped:de,diagnostics:Q.getDiagnostics(),emittedFiles:P,sourceMaps:V};function Be({jsFilePath:it,sourceMapFilePath:It,declarationFilePath:dt,declarationMapPath:Tt,buildInfoPath:St},He){var ht,Et,Kt,Nt,Lt,kt;(ht=Qi)==null||ht.push(Qi.Phase.Emit,"emitJsFileOrBundle",{jsFilePath:it}),Ne(He,it,It),(Et=Qi)==null||Et.pop(),(Kt=Qi)==null||Kt.push(Qi.Phase.Emit,"emitDeclarationFileOrBundle",{declarationFilePath:dt}),Me(He,dt,Tt),(Nt=Qi)==null||Nt.pop(),(Lt=Qi)==null||Lt.push(Qi.Phase.Emit,"emitBuildInfo",{buildInfoPath:St}),Fe(St),(kt=Qi)==null||kt.pop()}function Fe(it){if(!it||u||de)return;if(c.isEmitBlocked(it)){de=!0;return}let It=c.getBuildInfo()||Uke(void 0);wee(c,Q,it,Lxt(It),!1,void 0,{buildInfo:It}),P?.push(it)}function Ne(it,It,dt){if(!it||h||!It)return;if(c.isEmitBlocked(It)||N.noEmit){de=!0;return}(Fc(it)?[it]:Gt(it.sourceFiles,_ce)).forEach(ht=>{(N.noCheck||!Jee(ht,N))&<(ht)});let Tt=C_e(n,c,_e,N,[it],d,!1),St={removeComments:N.removeComments,newLine:N.newLine,noEmitHelpers:N.noEmitHelpers,module:D_(N),target:sA(N),sourceMap:N.sourceMap,inlineSourceMap:N.inlineSourceMap,inlineSources:N.inlineSources,extendedDiagnostics:N.extendedDiagnostics},He=wV(St,{hasGlobalName:n.hasGlobalName,onEmitNode:Tt.emitNodeWithNotification,isEmitNotificationEnabled:Tt.isEmitNotificationEnabled,substituteNode:Tt.substituteNode});w.assert(Tt.transformed.length===1,"Should only see one output from the transform"),Le(It,dt,Tt,He,N),Tt.dispose(),P&&(P.push(It),dt&&P.push(dt))}function Me(it,It,dt){if(!it||h===0)return;if(!It){(h||N.emitDeclarationOnly)&&(de=!0);return}let Tt=Fc(it)?[it]:it.sourceFiles,St=R?Tt:Gt(Tt,_ce),He=N.outFile?[_e.createBundle(St)]:St;St.forEach(Kt=>{(h&&!WE(N)||N.noCheck||h6e(h,R)||!Jee(Kt,N))&&De(Kt)});let ht=C_e(n,c,_e,N,He,I,!1);if(O(ht.diagnostics))for(let Kt of ht.diagnostics)Q.add(Kt);let Et=!!ht.diagnostics&&!!ht.diagnostics.length||!!c.isEmitBlocked(It)||!!N.noEmit;if(de=de||Et,!Et||R){w.assert(ht.transformed.length===1,"Should only see one output from the decl transform");let Kt={removeComments:N.removeComments,newLine:N.newLine,noEmitHelpers:!0,module:N.module,target:N.target,sourceMap:h!==2&&N.declarationMap,inlineSourceMap:N.inlineSourceMap,extendedDiagnostics:N.extendedDiagnostics,onlyPrintJsDocStyle:!0,omitBraceSourceMapPositions:!0},Nt=wV(Kt,{hasGlobalName:n.hasGlobalName,onEmitNode:ht.emitNodeWithNotification,isEmitNotificationEnabled:ht.isEmitNotificationEnabled,substituteNode:ht.substituteNode});Le(It,dt,ht,Nt,{sourceMap:Kt.sourceMap,sourceRoot:N.sourceRoot,mapRoot:N.mapRoot,extendedDiagnostics:N.extendedDiagnostics}),P&&(P.push(It),dt&&P.push(dt))}ht.dispose()}function De(it){if(rf(it)){it.expression.kind===80&&n.collectLinkedAliases(it.expression,!0);return}else if(l0(it)){n.collectLinkedAliases(it.propertyName||it.name,!0);return}hu(it,De)}function lt(it){Q6(it,It=>{if(mm(It)&&!(eD(It)&32)||hI(It))return"skip";n.markLinkedReferences(It)})}function Le(it,It,dt,Tt,St){let He=dt.transformed[0],ht=He.kind===308?He:void 0,Et=He.kind===307?He:void 0,Kt=ht?ht.sourceFiles:[Et],Nt;je(St,He)&&(Nt=ODt(c,kA(df(it)),st(St),nt(St,it,Et),St)),ht?Tt.writeBundle(ht,re,Nt):Tt.writeFile(Et,re,Nt);let Lt;if(Nt){V&&V.push({inputSourceFileNames:Nt.getSources(),sourceMap:Nt.toJSON()});let Zt=qe(St,Nt,it,It,Et);if(Zt&&(re.isAtStartOfLine()||re.rawWrite(te),Lt=re.getTextPos(),re.writeComment(`//# sourceMappingURL=${Zt}`)),It){let Dr=Nt.toString();wee(c,Q,It,Dr,!1,Kt)}}else re.writeLine();let kt=re.getText();wee(c,Q,it,kt,!!N.emitBOM,Kt,{sourceMapUrlPos:Lt,diagnostics:dt.diagnostics}),re.clear()}function je(it,It){return(it.sourceMap||it.inlineSourceMap)&&(It.kind!==307||!Ad(It.fileName,".json"))}function st(it){let It=df(it.sourceRoot||"");return It&&dA(It)}function nt(it,It,dt){if(it.sourceRoot)return c.getCommonSourceDirectory();if(it.mapRoot){let Tt=df(it.mapRoot);return dt&&(Tt=oa(Vce(dt.fileName,c,Tt))),t_(Tt)===0&&(Tt=Do(c.getCommonSourceDirectory(),Tt)),Tt}return oa(Mc(It))}function qe(it,It,dt,Tt,St){if(it.inlineSourceMap){let ht=It.toString();return`data:application/json;base64,${u6(yd,ht)}`}let He=kA(df(w.checkDefined(Tt)));if(it.mapRoot){let ht=df(it.mapRoot);return St&&(ht=oa(Vce(St.fileName,c,ht))),t_(ht)===0?(ht=Do(c.getCommonSourceDirectory(),ht),encodeURI(km(oa(Mc(dt)),Do(ht,He),c.getCurrentDirectory(),c.getCanonicalFileName,!0))):encodeURI(Do(ht,He))}return encodeURI(He)}}function Uke(n){return{program:n,version:y}}function Lxt(n){return JSON.stringify(n)}function y6e(n,c){return Fee(n,c)}var Vxt={hasGlobalName:ja,getReferencedExportContainer:ja,getReferencedImportDeclaration:ja,getReferencedDeclarationWithCollidingName:ja,isDeclarationWithCollidingName:ja,isValueAliasDeclaration:ja,isReferencedAliasDeclaration:ja,isTopLevelValueImportEqualsWithEntityName:ja,hasNodeCheckFlag:ja,isDeclarationVisible:ja,isLateBound:n=>!1,collectLinkedAliases:ja,markLinkedReferences:ja,isImplementationOfOverload:ja,requiresAddingImplicitUndefined:ja,isExpandoFunctionDeclaration:ja,getPropertiesOfContainerFunction:ja,createTypeOfDeclaration:ja,createReturnTypeOfSignatureDeclaration:ja,createTypeOfExpression:ja,createLiteralConstValue:ja,isSymbolAccessible:ja,isEntityNameVisible:ja,getConstantValue:ja,getEnumMemberValue:ja,getReferencedValueDeclaration:ja,getReferencedValueDeclarations:ja,getTypeReferenceSerializationKind:ja,isOptionalParameter:ja,isArgumentsLocalBinding:ja,getExternalModuleFileFromDeclaration:ja,isLiteralConstDeclaration:ja,getJsxFactoryEntity:ja,getJsxFragmentFactoryEntity:ja,isBindingCapturedByNode:ja,getDeclarationStatementsForSourceFile:ja,isImportRequiredByAugmentation:ja,isDefinitelyReferenceToGlobalSymbolObject:ja},Wxt=su(()=>wV({})),b4=su(()=>wV({removeComments:!0})),Pxt=su(()=>wV({removeComments:!0,neverAsciiEscape:!0})),Kke=su(()=>wV({removeComments:!0,omitTrailingSemicolon:!0}));function wV(n={},c={}){var{hasGlobalName:u,onEmitNode:d=I_e,isEmitNotificationEnabled:I,substituteNode:h=pue,onBeforeEmitNode:b,onAfterEmitNode:R,onBeforeEmitNodeArray:N,onAfterEmitNodeArray:V,onBeforeEmitToken:P,onAfterEmitToken:Q}=c,te=!!n.extendedDiagnostics,re=!!n.omitBraceSourceMapPositions,ue=F1(n),Ae=D_(n),de=new Map,Be,Fe,Ne,Me,De,lt,Le,je,st,nt,qe,it,It,dt,Tt,St=n.preserveSourceNewlines,He,ht,Et,Kt=tge,Nt,Lt=!0,kt,Zt,Dr=-1,jt,mr=-1,Pt=-1,Vr=-1,Hr=-1,pr,zr,$n=!1,bi=!!n.removeComments,Pi,Ns,{enter:gi,exit:jn}=Rb(te,"commentTime","beforeComment","afterComment"),xs=_e.parenthesizer,Bc={select:ce=>ce===0?xs.parenthesizeLeadingTypeArgument:void 0},xi=Em();return lg(),{printNode:rc,printList:Wl,printFile:mc,printBundle:gl,writeNode:_s,writeList:Pu,writeFile:ni,writeBundle:ir};function rc(ce,_t,pn){switch(ce){case 0:w.assert(Fc(_t),"Expected a SourceFile node.");break;case 2:w.assert(sr(_t),"Expected an Identifier node.");break;case 1:w.assert(tn(_t),"Expected an Expression node.");break}switch(_t.kind){case 307:return mc(_t);case 308:return gl(_t)}return _s(ce,_t,pn,gs()),Hs()}function Wl(ce,_t,pn){return Pu(ce,_t,pn,gs()),Hs()}function gl(ce){return ir(ce,gs(),void 0),Hs()}function mc(ce){return ni(ce,gs(),void 0),Hs()}function _s(ce,_t,pn,qn){let Ua=ht;Rc(qn,void 0),za(ce,_t,pn),lg(),ht=Ua}function Pu(ce,_t,pn,qn){let Ua=ht;Rc(qn,void 0),pn&&nc(pn),xp(void 0,_t,ce),lg(),ht=Ua}function ir(ce,_t,pn){Nt=!1;let qn=ht;Rc(_t,pn),KG(ce),UG(ce),Kr(ce),ege(ce);for(let Ua of ce.sourceFiles)za(0,Ua,Ua);lg(),ht=qn}function ni(ce,_t,pn){Nt=!0;let qn=ht;Rc(_t,pn),KG(ce),UG(ce),za(0,ce,ce),lg(),ht=qn}function gs(){return Et||(Et=See(ue))}function Hs(){let ce=Et.getText();return Et.clear(),ce}function za(ce,_t,pn){pn&&nc(pn),wt(ce,_t,void 0)}function nc(ce){Be=ce,pr=void 0,zr=void 0,ce&&$2(ce)}function Rc(ce,_t){ce&&n.omitTrailingSemicolon&&(ce=Dme(ce)),ht=ce,kt=_t,Lt=!ht||!kt}function lg(){Fe=[],Ne=[],Me=[],De=new Set,lt=[],Le=new Map,je=[],st=0,nt=[],qe=0,it=[],It=void 0,dt=[],Tt=void 0,Be=void 0,pr=void 0,zr=void 0,Rc(void 0,void 0)}function ju(){return pr||(pr=Dc(w.checkDefined(Be)))}function Bi(ce,_t){ce!==void 0&&wt(4,ce,_t)}function vA(ce){ce!==void 0&&wt(2,ce,void 0)}function kr(ce,_t){ce!==void 0&&wt(1,ce,_t)}function en(ce){wt(Eu(ce)?6:4,ce)}function ct(ce){St&&FE(ce)&4&&(St=!1)}function rn(ce){St=ce}function wt(ce,_t,pn){Ns=pn,_r(0,ce,_t)(ce,_t),Ns=void 0}function br(ce){return!bi&&!Fc(ce)}function Mt(ce){return!Lt&&!Fc(ce)&&!H8(ce)}function _r(ce,_t,pn){switch(ce){case 0:if(d!==I_e&&(!I||I(pn)))return ti;case 1:if(h!==pue&&(Pi=h(_t,pn)||pn)!==pn)return Ns&&(Pi=Ns(Pi)),an;case 2:if(br(pn))return WM;case 3:if(Mt(pn))return YN;case 4:return cr;default:return w.assertNever(ce)}}function Pr(ce,_t,pn){return _r(ce+1,_t,pn)}function ti(ce,_t){let pn=Pr(0,ce,_t);d(ce,_t,pn)}function cr(ce,_t){if(b?.(_t),St){let pn=St;ct(_t),kn(ce,_t),rn(pn)}else kn(ce,_t);R?.(_t),Ns=void 0}function kn(ce,_t,pn=!0){if(pn){let qn=Gle(_t);if(qn)return sn(ce,_t,qn)}if(ce===0)return JG(ps(_t,Fc));if(ce===2)return Re(ps(_t,sr));if(ce===6)return ar(ps(_t,Eu),!0);if(ce===3)return Pn(ps(_t,$p));if(ce===7)return Io(ps(_t,A4));if(ce===5)return w.assertNode(_t,Zv),Kb(!0);if(ce===4){switch(_t.kind){case 16:case 17:case 18:return ar(_t,!1);case 80:return Re(_t);case 81:return Jt(_t);case 166:return bt(_t);case 167:return dn(_t);case 168:return On(_t);case 169:return Qn(_t);case 170:return Ii(_t);case 171:return ds(_t);case 172:return Es(_t);case 173:return so(_t);case 174:return Vi(_t);case 175:return xo(_t);case 176:return Yc(_t);case 177:case 178:return Il(_t);case 179:return sa(_t);case 180:return Ra(_t);case 181:return ki(_t);case 182:return _u(_t);case 183:return UA(_t);case 184:return Hd(_t);case 185:return jm(_t);case 186:return xf(_t);case 187:return I0(_t);case 188:return kI(_t);case 189:return Ug(_t);case 190:return Yd(_t);case 192:return qA(_t);case 193:return di(_t);case 194:return uI(_t);case 195:return U0(_t);case 196:return K0(_t);case 233:return Y2(_t);case 197:return Xb();case 198:return nf(_t);case 199:return GI(_t);case 200:return yt(_t);case 201:return tt(_t);case 202:return _f(_t);case 203:return gr(_t);case 204:return Gs(_t);case 205:return mn(_t);case 206:return Ri(_t);case 207:return Yo(_t);case 208:return fi(_t);case 239:return uD(_t);case 240:return ri();case 241:return Ab(_t);case 243:return gD(_t);case 242:return Kb(!1);case 244:return LN(_t);case 245:return J2(_t);case 246:return qr(_t);case 247:return Mn(_t);case 248:return Jn(_t);case 249:return cs(_t);case 250:return Zs(_t);case 251:return Ja(_t);case 252:return Ge(_t);case 253:return Pl(_t);case 254:return Bu(_t);case 255:return ad(_t);case 256:return oA(_t);case 257:return gI(_t);case 258:return PB(_t);case 259:return nw(_t);case 260:return AD(_t);case 261:return qx(_t);case 262:return YZ(_t);case 263:return kV(_t);case 264:return GV(_t);case 265:return Ov(_t);case 266:return EP(_t);case 267:return fT(_t);case 268:return K2(_t);case 269:return YG(_t);case 270:return nu(_t);case 271:return rr(_t);case 272:return xn(_t);case 273:return ci(_t);case 274:return Wi(_t);case 280:return Yg(_t);case 275:return zs(_t);case 276:return zi(_t);case 277:return mo(_t);case 278:return vc(_t);case 279:return zm(_t);case 281:return C0(_t);case 300:return ac(_t);case 301:return Ws(_t);case 282:return;case 283:return Mv(_t);case 12:return BP(_t);case 286:case 289:return DM(_t);case 287:case 290:return vP(_t);case 291:return D4(_t);case 292:return SP(_t);case 293:return UZ(_t);case 294:return KA(_t);case 295:return x4(_t);case 296:return wP(_t);case 297:return XG(_t);case 298:return QB(_t);case 299:return db(_t);case 303:return YE(_t);case 304:return jb(_t);case 305:return KZ(_t);case 306:return m7(_t);case 307:return JG(_t);case 308:return w.fail("Bundles should be printed using printBundle");case 309:return WN(_t);case 310:return _7(_t);case 312:return Lo("*");case 313:return Lo("?");case 314:return hf(_t);case 315:return qc(_t);case 316:return Lc(_t);case 317:return ug(_t);case 191:case 318:return o_(_t);case 319:return;case 320:return h7(_t);case 322:return sw(_t);case 323:return qm(_t);case 327:case 332:case 337:return fr(_t);case 328:case 329:return Bm(_t);case 330:case 331:return;case 333:case 334:case 335:case 336:return;case 338:return IT(_t);case 339:return G4(_t);case 341:case 348:return RP(_t);case 340:case 342:case 343:case 344:case 349:case 350:return TP(_t);case 345:return zZ(_t);case 346:return y7(_t);case 347:return jZ(_t);case 351:return NP(_t);case 353:return}if(tn(_t)&&(ce=1,h!==pue)){let qn=h(ce,_t)||_t;qn!==_t&&(_t=qn,Ns&&(_t=Ns(_t)))}}if(ce===1)switch(_t.kind){case 9:case 10:return Pe(_t);case 11:case 14:case 15:return ar(_t,!1);case 80:return Re(_t);case 81:return Jt(_t);case 209:return Xo(_t);case 210:return _c(_t);case 211:return ic(_t);case 212:return sf(_t);case 213:return qC(_t);case 214:return Jf(_t);case 215:return Fm(_t);case 216:return of(_t);case 217:return Zm(_t);case 218:return Jb(_t);case 219:return FI(_t);case 220:return qt(_t);case 221:return Fn(_t);case 222:return Bs(_t);case 223:return Rl(_t);case 224:return SA(_t);case 225:return JI(_t);case 226:return xi(_t);case 227:return np(_t);case 228:return Xd(_t);case 229:return _C(_t);case 230:return Ub(_t);case 231:return pT(_t);case 232:return;case 234:return gb(_t);case 235:return WB(_t);case 233:return Y2(_t);case 238:return X2(_t);case 236:return lD(_t);case 237:return w.fail("SyntheticExpression should never be printed.");case 282:return;case 284:return I7(_t);case 285:return sre(_t);case 288:return C7(_t);case 352:return w.fail("SyntaxList should not be printed");case 353:return;case 354:return F4(_t);case 355:return Z4(_t);case 356:return w.fail("SyntheticReferenceExpression should not be printed")}if(s0(_t.kind))return LM(_t,uu);if(C$(_t.kind))return LM(_t,Lo);w.fail(`Unhandled SyntaxKind: ${w.formatSyntaxKind(_t.kind)}.`)}function Pn(ce){Bi(ce.name),lo(),uu("in"),lo(),Bi(ce.constraint)}function an(ce,_t){let pn=Pr(1,ce,_t);w.assertIsDefined(Pi),_t=Pi,Pi=void 0,pn(ce,_t)}function Kr(ce){let _t=!1,pn=ce.kind===308?ce:void 0;if(pn&&Ae===0)return;let qn=pn?pn.sourceFiles.length:1;for(let Ua=0;Ua")}function Nl(ce){lo(),Bi(ce.type)}function ug(ce){uu("function"),jG(ce,ce.parameters),Lo(":"),Bi(ce.type)}function hf(ce){Lo("?"),Bi(ce.type)}function qc(ce){Lo("!"),Bi(ce.type)}function Lc(ce){Bi(ce.type),Lo("=")}function jm(ce){M1(ce,ce.modifiers),uu("new"),lo(),OB(ce,Gd,Nl)}function xf(ce){uu("typeof"),lo(),Bi(ce.exprName),pD(ce,ce.typeArguments)}function I0(ce){rL(ce),X(ce.members,$G),Lo("{");let _t=wg(ce)&1?768:32897;xp(ce,ce.members,_t|524288),Lo("}"),Yv(ce)}function kI(ce){Bi(ce.elementType,xs.parenthesizeNonArrayTypeOfPostfixType),Lo("["),Lo("]")}function o_(ce){Lo("..."),Bi(ce.type)}function Ug(ce){Yt(23,ce.pos,Lo,ce);let _t=wg(ce)&1?528:657;xp(ce,ce.elements,_t|524288,xs.parenthesizeElementTypeOfTupleType),Yt(24,ce.elements.end,Lo,ce)}function _f(ce){Bi(ce.dotDotDotToken),Bi(ce.name),Bi(ce.questionToken),Yt(59,ce.name.end,Lo,ce),lo(),Bi(ce.type)}function Yd(ce){Bi(ce.type,xs.parenthesizeTypeOfOptionalType),Lo("?")}function qA(ce){xp(ce,ce.types,516,xs.parenthesizeConstituentTypeOfUnionType)}function di(ce){xp(ce,ce.types,520,xs.parenthesizeConstituentTypeOfIntersectionType)}function uI(ce){Bi(ce.checkType,xs.parenthesizeCheckTypeOfConditionalType),lo(),uu("extends"),lo(),Bi(ce.extendsType,xs.parenthesizeExtendsTypeOfConditionalType),lo(),Lo("?"),lo(),Bi(ce.trueType),lo(),Lo(":"),lo(),Bi(ce.falseType)}function U0(ce){uu("infer"),lo(),Bi(ce.typeParameter)}function K0(ce){Lo("("),Bi(ce.type),Lo(")")}function Xb(){uu("this")}function nf(ce){PN(ce.operator,uu),lo();let _t=ce.operator===148?xs.parenthesizeOperandOfReadonlyTypeOperator:xs.parenthesizeOperandOfTypeOperator;Bi(ce.type,_t)}function GI(ce){Bi(ce.objectType,xs.parenthesizeNonArrayTypeOfPostfixType),Lo("["),Bi(ce.indexType),Lo("]")}function yt(ce){let _t=wg(ce);Lo("{"),_t&1?lo():(z0(),cw()),ce.readonlyToken&&(Bi(ce.readonlyToken),ce.readonlyToken.kind!==148&&uu("readonly"),lo()),Lo("["),wt(3,ce.typeParameter),ce.nameType&&(lo(),uu("as"),lo(),Bi(ce.nameType)),Lo("]"),ce.questionToken&&(Bi(ce.questionToken),ce.questionToken.kind!==58&&Lo("?")),Lo(":"),lo(),Bi(ce.type),m0(),_t&1?lo():(z0(),Hv()),xp(ce,ce.members,2),Lo("}")}function tt(ce){kr(ce.literal)}function gr(ce){Bi(ce.head),xp(ce,ce.templateSpans,262144)}function mn(ce){ce.isTypeOf&&(uu("typeof"),lo()),uu("import"),Lo("("),Bi(ce.argument),ce.attributes&&(Lo(","),lo(),wt(7,ce.attributes)),Lo(")"),ce.qualifier&&(Lo("."),Bi(ce.qualifier)),pD(ce,ce.typeArguments)}function Ri(ce){Lo("{"),xp(ce,ce.elements,525136),Lo("}")}function Yo(ce){Lo("["),xp(ce,ce.elements,524880),Lo("]")}function fi(ce){Bi(ce.dotDotDotToken),ce.propertyName&&(Bi(ce.propertyName),Lo(":"),lo()),Bi(ce.name),$Z(ce.initializer,ce.name.end,ce,xs.parenthesizeExpressionForDisallowedComma)}function Xo(ce){let _t=ce.elements,pn=ce.multiLine?65536:0;tk(ce,_t,8914|pn,xs.parenthesizeExpressionForDisallowedComma)}function _c(ce){rL(ce),X(ce.properties,$G);let _t=wg(ce)&131072;_t&&cw();let pn=ce.multiLine?65536:0,qn=Be&&Be.languageVersion>=1&&!fa(Be)?64:0;xp(ce,ce.properties,526226|qn|pn),_t&&Hv(),Yv(ce)}function ic(ce){kr(ce.expression,xs.parenthesizeLeftSideOfAccess);let _t=ce.questionDotToken||MS(_e.createToken(25),ce.expression.end,ce.name.pos),pn=lw(ce,ce.expression,_t),qn=lw(ce,_t,ce.name);HB(pn,!1),_t.kind!==29&&Pg(ce.expression)&&!ht.hasTrailingComment()&&!ht.hasTrailingWhitespace()&&Lo("."),ce.questionDotToken?Bi(_t):Yt(_t.kind,ce.expression.end,Lo,ce),HB(qn,!1),Bi(ce.name),rk(pn,qn)}function Pg(ce){if(ce=x1(ce),pu(ce)){let _t=qG(ce,!0,!1);return!(ce.numericLiteralFlags&448)&&!_t.includes(vr(25))&&!_t.includes("E")&&!_t.includes("e")}else if(mp(ce)){let _t=l4(ce);return typeof _t=="number"&&isFinite(_t)&&_t>=0&&Math.floor(_t)===_t}}function sf(ce){kr(ce.expression,xs.parenthesizeLeftSideOfAccess),Bi(ce.questionDotToken),Yt(23,ce.expression.end,Lo,ce),kr(ce.argumentExpression),Yt(24,ce.argumentExpression.end,Lo,ce)}function qC(ce){let _t=FE(ce)&16;_t&&(Lo("("),ZM("0"),Lo(","),lo()),kr(ce.expression,xs.parenthesizeLeftSideOfAccess),_t&&Lo(")"),Bi(ce.questionDotToken),pD(ce,ce.typeArguments),tk(ce,ce.arguments,2576,xs.parenthesizeExpressionForDisallowedComma)}function Jf(ce){Yt(105,ce.pos,uu,ce),lo(),kr(ce.expression,xs.parenthesizeExpressionOfNew),pD(ce,ce.typeArguments),tk(ce,ce.arguments,18960,xs.parenthesizeExpressionForDisallowedComma)}function Fm(ce){let _t=FE(ce)&16;_t&&(Lo("("),ZM("0"),Lo(","),lo()),kr(ce.tag,xs.parenthesizeLeftSideOfAccess),_t&&Lo(")"),pD(ce,ce.typeArguments),lo(),kr(ce.template)}function of(ce){Lo("<"),Bi(ce.type),Lo(">"),kr(ce.expression,xs.parenthesizeOperandOfPrefixUnary)}function Zm(ce){let _t=Yt(21,ce.pos,Lo,ce),pn=ure(ce.expression,ce);kr(ce.expression,void 0),P4(ce.expression,ce),rk(pn),Yt(22,ce.expression?ce.expression.end:_t,Lo,ce)}function Jb(ce){QN(ce.name),$x(ce)}function FI(ce){M1(ce,ce.modifiers),OB(ce,$C,H2)}function $C(ce){eL(ce,ce.typeParameters),kP(ce,ce.parameters),qZ(ce.type),lo(),Bi(ce.equalsGreaterThanToken)}function H2(ce){hc(ce.body)?iw(ce.body):(lo(),kr(ce.body,xs.parenthesizeConciseBodyOfArrowFunction))}function qt(ce){Yt(91,ce.pos,uu,ce),lo(),kr(ce.expression,xs.parenthesizeOperandOfPrefixUnary)}function Fn(ce){Yt(114,ce.pos,uu,ce),lo(),kr(ce.expression,xs.parenthesizeOperandOfPrefixUnary)}function Bs(ce){Yt(116,ce.pos,uu,ce),lo(),kr(ce.expression,xs.parenthesizeOperandOfPrefixUnary)}function Rl(ce){Yt(135,ce.pos,uu,ce),lo(),kr(ce.expression,xs.parenthesizeOperandOfPrefixUnary)}function SA(ce){PN(ce.operator,zG),OA(ce)&&lo(),kr(ce.operand,xs.parenthesizeOperandOfPrefixUnary)}function OA(ce){let _t=ce.operand;return _t.kind===224&&(ce.operator===40&&(_t.operator===40||_t.operator===46)||ce.operator===41&&(_t.operator===41||_t.operator===47))}function JI(ce){kr(ce.operand,xs.parenthesizeOperandOfPostfixUnary),PN(ce.operator,zG)}function Em(){return ske(ce,_t,pn,qn,Ua,void 0);function ce(El,zl){if(zl){zl.stackIndex++,zl.preserveSourceNewlinesStack[zl.stackIndex]=St,zl.containerPosStack[zl.stackIndex]=Pt,zl.containerEndStack[zl.stackIndex]=Vr,zl.declarationListContainerEndStack[zl.stackIndex]=Hr;let Xg=zl.shouldEmitCommentsStack[zl.stackIndex]=br(El),$0=zl.shouldEmitSourceMapsStack[zl.stackIndex]=Mt(El);b?.(El),Xg&&WP(El),$0&&tF(El),ct(El)}else zl={stackIndex:0,preserveSourceNewlinesStack:[void 0],containerPosStack:[-1],containerEndStack:[-1],declarationListContainerEndStack:[-1],shouldEmitCommentsStack:[!1],shouldEmitSourceMapsStack:[!1]};return zl}function _t(El,zl,Xg){return Fl(El,Xg,"left")}function pn(El,zl,Xg){let $0=El.kind!==28,h0=lw(Xg,Xg.left,El),sL=lw(Xg,El,Xg.right);HB(h0,$0),FA(El.pos),LM(El,El.kind===103?uu:zG),a_(El.end,!0),HB(sL,!0)}function qn(El,zl,Xg){return Fl(El,Xg,"right")}function Ua(El,zl){let Xg=lw(El,El.left,El.operatorToken),$0=lw(El,El.operatorToken,El.right);if(rk(Xg,$0),zl.stackIndex>0){let h0=zl.preserveSourceNewlinesStack[zl.stackIndex],sL=zl.containerPosStack[zl.stackIndex],OM=zl.containerEndStack[zl.stackIndex],UE=zl.declarationListContainerEndStack[zl.stackIndex],mT=zl.shouldEmitCommentsStack[zl.stackIndex],rF=zl.shouldEmitSourceMapsStack[zl.stackIndex];rn(h0),rF&&Y4(El),mT&&pb(El,sL,OM,UE),R?.(El),zl.stackIndex--}}function Fl(El,zl,Xg){let $0=Xg==="left"?xs.getParenthesizeLeftSideOfBinaryForOperator(zl.operatorToken.kind):xs.getParenthesizeRightSideOfBinaryForOperator(zl.operatorToken.kind),h0=_r(0,1,El);if(h0===an&&(w.assertIsDefined(Pi),El=$0(ps(Pi,tn)),h0=Pr(1,1,El),Pi=void 0),(h0===WM||h0===YN||h0===cr)&&ro(El))return El;Ns=$0,h0(1,El)}}function np(ce){let _t=lw(ce,ce.condition,ce.questionToken),pn=lw(ce,ce.questionToken,ce.whenTrue),qn=lw(ce,ce.whenTrue,ce.colonToken),Ua=lw(ce,ce.colonToken,ce.whenFalse);kr(ce.condition,xs.parenthesizeConditionOfConditionalExpression),HB(_t,!0),Bi(ce.questionToken),HB(pn,!0),kr(ce.whenTrue,xs.parenthesizeBranchOfConditionalExpression),rk(_t,pn),HB(qn,!0),Bi(ce.colonToken),HB(Ua,!0),kr(ce.whenFalse,xs.parenthesizeBranchOfConditionalExpression),rk(qn,Ua)}function Xd(ce){Bi(ce.head),xp(ce,ce.templateSpans,262144)}function _C(ce){Yt(127,ce.pos,uu,ce),Bi(ce.asteriskToken),L_(ce.expression&&yc(ce.expression),Cu)}function Ub(ce){Yt(26,ce.pos,Lo,ce),kr(ce.expression,xs.parenthesizeExpressionForDisallowedComma)}function pT(ce){QN(ce.name),Pv(ce)}function Y2(ce){kr(ce.expression,xs.parenthesizeLeftSideOfAccess),pD(ce,ce.typeArguments)}function gb(ce){kr(ce.expression,void 0),ce.type&&(lo(),uu("as"),lo(),Bi(ce.type))}function WB(ce){kr(ce.expression,xs.parenthesizeLeftSideOfAccess),zG("!")}function X2(ce){kr(ce.expression,void 0),ce.type&&(lo(),uu("satisfies"),lo(),Bi(ce.type))}function lD(ce){tL(ce.keywordToken,ce.pos,Lo),Lo("."),Bi(ce.name)}function uD(ce){kr(ce.expression),Bi(ce.literal)}function Ab(ce){em(ce,!ce.multiLine&&gre(ce))}function em(ce,_t){Yt(19,ce.pos,Lo,ce);let pn=_t||wg(ce)&1?768:129;xp(ce,ce.statements,pn),Yt(20,ce.statements.end,Lo,ce,!!(pn&1))}function gD(ce){j2(ce,ce.modifiers,!1),Bi(ce.declarationList),m0()}function Kb(ce){ce?Lo(";"):m0()}function LN(ce){kr(ce.expression,xs.parenthesizeExpressionOfExpressionStatement),(!Be||!fa(Be)||$d(ce.expression))&&m0()}function J2(ce){let _t=Yt(101,ce.pos,uu,ce);lo(),Yt(21,_t,Lo,ce),kr(ce.expression),Yt(22,ce.expression.end,Lo,ce),aw(ce,ce.thenStatement),ce.elseStatement&&(JE(ce,ce.thenStatement,ce.elseStatement),Yt(93,ce.thenStatement.end,uu,ce),ce.elseStatement.kind===245?(lo(),Bi(ce.elseStatement)):aw(ce,ce.elseStatement))}function rt(ce,_t){let pn=Yt(117,_t,uu,ce);lo(),Yt(21,pn,Lo,ce),kr(ce.expression),Yt(22,ce.expression.end,Lo,ce)}function qr(ce){Yt(92,ce.pos,uu,ce),aw(ce,ce.statement),hc(ce.statement)&&!St?lo():JE(ce,ce.statement,ce.expression),rt(ce,ce.statement.end),m0()}function Mn(ce){rt(ce,ce.pos),aw(ce,ce.statement)}function Jn(ce){let _t=Yt(99,ce.pos,uu,ce);lo();let pn=Yt(21,_t,Lo,ce);qo(ce.initializer),pn=Yt(27,ce.initializer?ce.initializer.end:pn,Lo,ce),L_(ce.condition),pn=Yt(27,ce.condition?ce.condition.end:pn,Lo,ce),L_(ce.incrementor),Yt(22,ce.incrementor?ce.incrementor.end:pn,Lo,ce),aw(ce,ce.statement)}function cs(ce){let _t=Yt(99,ce.pos,uu,ce);lo(),Yt(21,_t,Lo,ce),qo(ce.initializer),lo(),Yt(103,ce.initializer.end,uu,ce),lo(),kr(ce.expression),Yt(22,ce.expression.end,Lo,ce),aw(ce,ce.statement)}function Zs(ce){let _t=Yt(99,ce.pos,uu,ce);lo(),ore(ce.awaitModifier),Yt(21,_t,Lo,ce),qo(ce.initializer),lo(),Yt(165,ce.initializer.end,uu,ce),lo(),kr(ce.expression),Yt(22,ce.expression.end,Lo,ce),aw(ce,ce.statement)}function qo(ce){ce!==void 0&&(ce.kind===261?Bi(ce):kr(ce))}function Ja(ce){Yt(88,ce.pos,uu,ce),Jo(ce.label),m0()}function Ge(ce){Yt(83,ce.pos,uu,ce),Jo(ce.label),m0()}function Yt(ce,_t,pn,qn,Ua){let Fl=zc(qn),El=Fl&&Fl.kind===qn.kind,zl=_t;if(El&&Be&&(_t=Uu(Be.text,_t)),El&&qn.pos!==zl){let Xg=Ua&&Be&&!L1(zl,_t,Be);Xg&&cw(),FA(zl),Xg&&Hv()}if(!re&&(ce===19||ce===20)?_t=tL(ce,_t,pn,qn):_t=PN(ce,pn,_t),El&&qn.end!==_t){let Xg=qn.kind===294;a_(_t,!Xg,Xg)}return _t}function En(ce){return ce.kind===2||!!ce.hasTrailingNewLine}function Rs(ce){if(!Be)return!1;let _t=Zb(Be.text,ce.pos);if(_t){let pn=zc(ce);if(pn&&ZC(pn.parent))return!0}return lr(_t,En)||lr(nM(ce),En)?!0:GG(ce)?ce.pos!==ce.expression.pos&&lr(h2(Be.text,ce.expression.pos),En)?!0:Rs(ce.expression):!1}function yc(ce){if(!bi&&GG(ce)&&Rs(ce)){let _t=zc(ce);if(_t&&ZC(_t)){let pn=_e.createParenthesizedExpression(ce.expression);return Ho(pn,ce),un(pn,_t),pn}return _e.createParenthesizedExpression(ce)}return ce}function Cu(ce){return yc(xs.parenthesizeExpressionForDisallowedComma(ce))}function Pl(ce){Yt(107,ce.pos,uu,ce),L_(ce.expression&&yc(ce.expression),yc),m0()}function Bu(ce){let _t=Yt(118,ce.pos,uu,ce);lo(),Yt(21,_t,Lo,ce),kr(ce.expression),Yt(22,ce.expression.end,Lo,ce),aw(ce,ce.statement)}function ad(ce){let _t=Yt(109,ce.pos,uu,ce);lo(),Yt(21,_t,Lo,ce),kr(ce.expression),Yt(22,ce.expression.end,Lo,ce),lo(),Bi(ce.caseBlock)}function oA(ce){Bi(ce.label),Yt(59,ce.label.end,Lo,ce),lo(),Bi(ce.statement)}function gI(ce){Yt(111,ce.pos,uu,ce),L_(yc(ce.expression),yc),m0()}function PB(ce){Yt(113,ce.pos,uu,ce),lo(),Bi(ce.tryBlock),ce.catchClause&&(JE(ce,ce.tryBlock,ce.catchClause),Bi(ce.catchClause)),ce.finallyBlock&&(JE(ce,ce.catchClause||ce.tryBlock,ce.finallyBlock),Yt(98,(ce.catchClause||ce.tryBlock).end,uu,ce),lo(),Bi(ce.finallyBlock))}function nw(ce){tL(89,ce.pos,uu),m0()}function AD(ce){var _t,pn,qn;Bi(ce.name),Bi(ce.exclamationToken),qZ(ce.type),$Z(ce.initializer,((_t=ce.type)==null?void 0:_t.end)??((qn=(pn=ce.name.emitNode)==null?void 0:pn.typeNode)==null?void 0:qn.end)??ce.name.end,ce,xs.parenthesizeExpressionForDisallowedComma)}function qx(ce){if(Mg(ce))uu("await"),lo(),uu("using");else{let _t=aI(ce)?"let":Hp(ce)?"const":fd(ce)?"using":"var";uu(_t)}lo(),xp(ce,ce.declarations,528)}function YZ(ce){$x(ce)}function $x(ce){j2(ce,ce.modifiers,!1),uu("function"),Bi(ce.asteriskToken),lo(),vA(ce.name),OB(ce,Z_,U2)}function OB(ce,_t,pn){let qn=wg(ce)&131072;qn&&cw(),rL(ce),X(ce.parameters,Ih),_t(ce),pn(ce),Yv(ce),qn&&Hv()}function U2(ce){let _t=ce.body;_t?iw(_t):m0()}function ip(ce){m0()}function Z_(ce){eL(ce,ce.typeParameters),jG(ce,ce.parameters),qZ(ce.type)}function j0(ce){if(wg(ce)&1)return!0;if(ce.multiLine||!$d(ce)&&Be&&!RZ(ce,Be)||GP(ce,$i(ce.statements),2)||W4(ce,zo(ce.statements),2,ce.statements))return!1;let _t;for(let pn of ce.statements){if(S7(_t,pn,2)>0)return!1;_t=pn}return!0}function iw(ce){Ih(ce),b?.(ce),lo(),Lo("{"),cw();let _t=j0(ce)?XZ:HG;Q4(ce,ce.statements,_t),Hv(),tL(20,ce.statements.end,Lo,ce),R?.(ce)}function XZ(ce){HG(ce,!0)}function HG(ce,_t){let pn=DP(ce.statements),qn=ht.getTextPos();Kr(ce),pn===0&&qn===ht.getTextPos()&&_t?(Hv(),xp(ce,ce.statements,768),cw()):xp(ce,ce.statements,1,void 0,pn)}function kV(ce){Pv(ce)}function Pv(ce){j2(ce,ce.modifiers,!0),Yt(86,QS(ce).pos,uu,ce),ce.name&&(lo(),vA(ce.name));let _t=wg(ce)&131072;_t&&cw(),eL(ce,ce.typeParameters),xp(ce,ce.heritageClauses,0),lo(),Lo("{"),rL(ce),X(ce.members,$G),xp(ce,ce.members,129),Yv(ce),Lo("}"),_t&&Hv()}function GV(ce){j2(ce,ce.modifiers,!1),uu("interface"),lo(),Bi(ce.name),eL(ce,ce.typeParameters),xp(ce,ce.heritageClauses,512),lo(),Lo("{"),rL(ce),X(ce.members,$G),xp(ce,ce.members,129),Yv(ce),Lo("}")}function Ov(ce){j2(ce,ce.modifiers,!1),uu("type"),lo(),Bi(ce.name),eL(ce,ce.typeParameters),lo(),Lo("="),lo(),Bi(ce.type),m0()}function EP(ce){j2(ce,ce.modifiers,!1),uu("enum"),lo(),Bi(ce.name),lo(),Lo("{"),xp(ce,ce.members,145),Lo("}")}function fT(ce){j2(ce,ce.modifiers,!1),~ce.flags&2048&&(uu(ce.flags&32?"namespace":"module"),lo()),Bi(ce.name);let _t=ce.body;if(!_t)return m0();for(;_t&&mC(_t);)Lo("."),Bi(_t.name),_t=_t.body;lo(),Bi(_t)}function K2(ce){rL(ce),X(ce.statements,Ih),em(ce,gre(ce)),Yv(ce)}function YG(ce){Yt(19,ce.pos,Lo,ce),xp(ce,ce.clauses,129),Yt(20,ce.clauses.end,Lo,ce,!0)}function rr(ce){j2(ce,ce.modifiers,!1),Yt(102,ce.modifiers?ce.modifiers.end:ce.pos,uu,ce),lo(),ce.isTypeOnly&&(Yt(156,ce.pos,uu,ce),lo()),Bi(ce.name),lo(),Yt(64,ce.name.end,Lo,ce),lo(),Tr(ce.moduleReference),m0()}function Tr(ce){ce.kind===80?kr(ce):Bi(ce)}function xn(ce){j2(ce,ce.modifiers,!1),Yt(102,ce.modifiers?ce.modifiers.end:ce.pos,uu,ce),lo(),ce.importClause&&(Bi(ce.importClause),lo(),Yt(161,ce.importClause.end,uu,ce),lo()),kr(ce.moduleSpecifier),ce.attributes&&Jo(ce.attributes),m0()}function ci(ce){ce.isTypeOnly&&(Yt(156,ce.pos,uu,ce),lo()),Bi(ce.name),ce.name&&ce.namedBindings&&(Yt(28,ce.name.end,Lo,ce),lo()),Bi(ce.namedBindings)}function Wi(ce){let _t=Yt(42,ce.pos,Lo,ce);lo(),Yt(130,_t,uu,ce),lo(),Bi(ce.name)}function zs(ce){Qv(ce)}function zi(ce){JZ(ce)}function mo(ce){let _t=Yt(95,ce.pos,uu,ce);lo(),ce.isExportEquals?Yt(64,_t,zG,ce):Yt(90,_t,uu,ce),lo(),kr(ce.expression,ce.isExportEquals?xs.getParenthesizeRightSideOfBinaryForOperator(64):xs.parenthesizeExpressionOfExportDefault),m0()}function vc(ce){j2(ce,ce.modifiers,!1);let _t=Yt(95,ce.pos,uu,ce);if(lo(),ce.isTypeOnly&&(_t=Yt(156,_t,uu,ce),lo()),ce.exportClause?Bi(ce.exportClause):_t=Yt(42,_t,Lo,ce),ce.moduleSpecifier){lo();let pn=ce.exportClause?ce.exportClause.end:_t;Yt(161,pn,uu,ce),lo(),kr(ce.moduleSpecifier)}ce.attributes&&Jo(ce.attributes),m0()}function Io(ce){Lo("{"),lo(),uu(ce.token===132?"assert":"with"),Lo(":"),lo();let _t=ce.elements;xp(ce,_t,526226),lo(),Lo("}")}function ac(ce){Yt(ce.token,ce.pos,uu,ce),lo();let _t=ce.elements;xp(ce,_t,526226)}function Ws(ce){Bi(ce.name),Lo(":"),lo();let _t=ce.value;if(!(wg(_t)&1024)){let pn=US(_t);a_(pn.pos)}Bi(_t)}function nu(ce){let _t=Yt(95,ce.pos,uu,ce);lo(),_t=Yt(130,_t,uu,ce),lo(),_t=Yt(145,_t,uu,ce),lo(),Bi(ce.name),m0()}function Yg(ce){let _t=Yt(42,ce.pos,Lo,ce);lo(),Yt(130,_t,uu,ce),lo(),Bi(ce.name)}function zm(ce){Qv(ce)}function C0(ce){JZ(ce)}function Qv(ce){Lo("{"),xp(ce,ce.elements,525136),Lo("}")}function JZ(ce){ce.isTypeOnly&&(uu("type"),lo()),ce.propertyName&&(Bi(ce.propertyName),lo(),Yt(130,ce.propertyName.end,uu,ce),lo()),Bi(ce.name)}function Mv(ce){uu("require"),Lo("("),kr(ce.expression),Lo(")")}function I7(ce){Bi(ce.openingElement),xp(ce,ce.children,262144),Bi(ce.closingElement)}function sre(ce){Lo("<"),k4(ce.tagName),pD(ce,ce.typeArguments),lo(),Bi(ce.attributes),Lo("/>")}function C7(ce){Bi(ce.openingFragment),xp(ce,ce.children,262144),Bi(ce.closingFragment)}function DM(ce){if(Lo("<"),NN(ce)){let _t=ure(ce.tagName,ce);k4(ce.tagName),pD(ce,ce.typeArguments),ce.attributes.properties&&ce.attributes.properties.length>0&&lo(),Bi(ce.attributes),P4(ce.attributes,ce),rk(_t)}Lo(">")}function BP(ce){ht.writeLiteral(ce.text)}function vP(ce){Lo("")}function SP(ce){xp(ce,ce.properties,262656)}function D4(ce){Bi(ce.name),al("=",Lo,ce.initializer,en)}function UZ(ce){Lo("{..."),kr(ce.expression),Lo("}")}function xM(ce){let _t=!1;return bx(Be?.text||"",ce+1,()=>_t=!0),_t}function ek(ce){let _t=!1;return Sf(Be?.text||"",ce+1,()=>_t=!0),_t}function kM(ce){return xM(ce)||ek(ce)}function KA(ce){var _t;if(ce.expression||!bi&&!$d(ce)&&kM(ce.pos)){let pn=Be&&!$d(ce)&&Vl(Be,ce.pos).line!==Vl(Be,ce.end).line;pn&&ht.increaseIndent();let qn=Yt(19,ce.pos,Lo,ce);Bi(ce.dotDotDotToken),kr(ce.expression),Yt(20,((_t=ce.expression)==null?void 0:_t.end)||qn,Lo,ce),pn&&ht.decreaseIndent()}}function x4(ce){vA(ce.namespace),Lo(":"),vA(ce.name)}function k4(ce){ce.kind===80?kr(ce):Bi(ce)}function wP(ce){Yt(84,ce.pos,uu,ce),lo(),kr(ce.expression,xs.parenthesizeExpressionForDisallowedComma),VN(ce,ce.statements,ce.expression.end)}function XG(ce){let _t=Yt(90,ce.pos,uu,ce);VN(ce,ce.statements,_t)}function VN(ce,_t,pn){let qn=_t.length===1&&(!Be||$d(ce)||$d(_t[0])||A6(ce,_t[0],Be)),Ua=163969;qn?(tL(59,pn,Lo,ce),lo(),Ua&=-130):Yt(59,pn,Lo,ce),xp(ce,_t,Ua)}function QB(ce){lo(),PN(ce.token,uu),lo(),xp(ce,ce.types,528)}function db(ce){let _t=Yt(85,ce.pos,uu,ce);lo(),ce.variableDeclaration&&(Yt(21,_t,Lo,ce),Bi(ce.variableDeclaration),Yt(22,ce.variableDeclaration.end,Lo,ce),lo()),Bi(ce.block)}function YE(ce){Bi(ce.name),Lo(":"),lo();let _t=ce.initializer;if(!(wg(_t)&1024)){let pn=US(_t);a_(pn.pos)}kr(_t,xs.parenthesizeExpressionForDisallowedComma)}function jb(ce){Bi(ce.name),ce.objectAssignmentInitializer&&(lo(),Lo("="),lo(),kr(ce.objectAssignmentInitializer,xs.parenthesizeExpressionForDisallowedComma))}function KZ(ce){ce.expression&&(Yt(26,ce.pos,Lo,ce),kr(ce.expression,xs.parenthesizeExpressionForDisallowedComma))}function m7(ce){Bi(ce.name),$Z(ce.initializer,ce.name.end,ce,xs.parenthesizeExpressionForDisallowedComma)}function h7(ce){if(Kt("/**"),ce.comment){let _t=pX(ce.comment);if(_t){let pn=_t.split(/\r\n?|\n/g);for(let qn of pn)z0(),lo(),Lo("*"),lo(),Kt(qn)}}ce.tags&&(ce.tags.length===1&&ce.tags[0].kind===344&&!ce.comment?(lo(),Bi(ce.tags[0])):xp(ce,ce.tags,33)),lo(),Kt("*/")}function TP(ce){dD(ce.tagName),WN(ce.typeExpression),MB(ce.comment)}function jZ(ce){dD(ce.tagName),Bi(ce.name),MB(ce.comment)}function NP(ce){dD(ce.tagName),lo(),ce.importClause&&(Bi(ce.importClause),lo(),Yt(161,ce.importClause.end,uu,ce),lo()),kr(ce.moduleSpecifier),ce.attributes&&Jo(ce.attributes),MB(ce.comment)}function _7(ce){lo(),Lo("{"),Bi(ce.name),Lo("}")}function Bm(ce){dD(ce.tagName),lo(),Lo("{"),Bi(ce.class),Lo("}"),MB(ce.comment)}function zZ(ce){dD(ce.tagName),WN(ce.constraint),lo(),xp(ce,ce.typeParameters,528),MB(ce.comment)}function y7(ce){dD(ce.tagName),ce.typeExpression&&(ce.typeExpression.kind===309?WN(ce.typeExpression):(lo(),Lo("{"),Kt("Object"),ce.typeExpression.isArrayType&&(Lo("["),Lo("]")),Lo("}"))),ce.fullName&&(lo(),Bi(ce.fullName)),MB(ce.comment),ce.typeExpression&&ce.typeExpression.kind===322&&sw(ce.typeExpression)}function IT(ce){dD(ce.tagName),ce.name&&(lo(),Bi(ce.name)),MB(ce.comment),qm(ce.typeExpression)}function G4(ce){MB(ce.comment),qm(ce.typeExpression)}function fr(ce){dD(ce.tagName),MB(ce.comment)}function sw(ce){xp(ce,_e.createNodeArray(ce.jsDocPropertyTags),33)}function qm(ce){ce.typeParameters&&xp(ce,_e.createNodeArray(ce.typeParameters),33),ce.parameters&&xp(ce,_e.createNodeArray(ce.parameters),33),ce.type&&(z0(),lo(),Lo("*"),lo(),Bi(ce.type))}function RP(ce){dD(ce.tagName),WN(ce.typeExpression),lo(),ce.isBracketed&&Lo("["),Bi(ce.name),ce.isBracketed&&Lo("]"),MB(ce.comment)}function dD(ce){Lo("@"),Bi(ce)}function MB(ce){let _t=pX(ce);_t&&(lo(),Kt(_t))}function WN(ce){ce&&(lo(),Lo("{"),Bi(ce.type),Lo("}"))}function JG(ce){z0();let _t=ce.statements;if(_t.length===0||!HI(_t[0])||$d(_t[0])){Q4(ce,_t,GM);return}GM(ce)}function ege(ce){ow(!!ce.hasNoDefaultLib,ce.syntheticFileReferences||[],ce.syntheticTypeReferences||[],ce.syntheticLibReferences||[])}function wA(ce){ce.isDeclarationFile&&ow(ce.hasNoDefaultLib,ce.referencedFiles,ce.typeReferenceDirectives,ce.libReferenceDirectives)}function ow(ce,_t,pn,qn){if(ce&&(XE('/// '),z0()),Be&&Be.moduleName&&(XE(`/// `),z0()),Be&&Be.amdDependencies)for(let Fl of Be.amdDependencies)Fl.name?XE(`/// `):XE(`/// `),z0();function Ua(Fl,El){for(let zl of El){let Xg=zl.resolutionMode?`resolution-mode="${zl.resolutionMode===99?"import":"require"}" `:"",$0=zl.preserve?'preserve="true" ':"";XE(`/// `),z0()}}Ua("path",_t),Ua("types",pn),Ua("lib",qn)}function GM(ce){let _t=ce.statements;rL(ce),X(ce.statements,Ih),Kr(ce);let pn=ke(_t,qn=>!HI(qn));wA(ce),xp(ce,_t,1,void 0,pn===-1?_t.length:pn),Yv(ce)}function F4(ce){let _t=wg(ce);!(_t&1024)&&ce.pos!==ce.expression.pos&&a_(ce.expression.pos),kr(ce.expression),!(_t&2048)&&ce.end!==ce.expression.end&&FA(ce.expression.end)}function Z4(ce){tk(ce,ce.elements,528,void 0)}function DP(ce,_t,pn){let qn=!!_t;for(let Ua=0;Ua=pn.length||El===0;if(Xg&&qn&32768){N?.(pn),V?.(pn);return}qn&15360&&(Lo(G7i(qn)),Xg&&pn&&a_(pn.pos,!0)),N?.(pn),Xg?qn&1&&!(St&&(!_t||Be&&RZ(_t,Be)))?z0():qn&256&&!(qn&524288)&&lo():L4(ce,_t,pn,qn,Ua,Fl,El,pn.hasTrailingComma,pn),V?.(pn),qn&15360&&(Xg&&pn&&FA(pn.end),Lo(F7i(qn)))}function L4(ce,_t,pn,qn,Ua,Fl,El,zl,Xg){let $0=(qn&262144)===0,h0=$0,sL=GP(_t,pn[Fl],qn);sL?(z0(sL),h0=!1):qn&256&&lo(),qn&128&&cw();let OM=W7i(ce,Ua),UE,mT=!1;for(let MP=0;MP0){if(qn&131||(cw(),mT=!0),h0&&qn&60&&!Fv(oL.pos)){let $c=US(oL);a_($c.pos,!!(qn&512),!0)}z0(OV),h0=!1}else UE&&qn&512&&lo()}if(h0){let OV=US(oL);a_(OV.pos)}else h0=$0;He=oL.pos,OM(oL,ce,Ua,MP),mT&&(Hv(),mT=!1),UE=oL}let rF=UE?wg(UE):0,QM=bi||!!(rF&2048),_re=zl&&qn&64&&qn&16;_re&&(UE&&!QM?Yt(28,UE.end,Lo,UE):Lo(",")),UE&&(_t?_t.end:-1)!==UE.end&&qn&60&&!QM&&FA(_re&&Xg?.end?Xg.end:UE.end),qn&128&&Hv();let nF=W4(_t,pn[Fl+El-1],qn,Xg);nF?z0(nF):qn&2097408&&lo()}function ZM(ce){ht.writeLiteral(ce)}function E7(ce){ht.writeStringLiteral(ce)}function tge(ce){ht.write(ce)}function lre(ce,_t){ht.writeSymbol(ce,_t)}function Lo(ce){ht.writePunctuation(ce)}function m0(){ht.writeTrailingSemicolon(";")}function uu(ce){ht.writeKeyword(ce)}function zG(ce){ht.writeOperator(ce)}function V4(ce){ht.writeParameter(ce)}function XE(ce){ht.writeComment(ce)}function lo(){ht.writeSpace(" ")}function B7(ce){ht.writeProperty(ce)}function v7(ce){ht.nonEscapingWrite?ht.nonEscapingWrite(ce):ht.write(ce)}function z0(ce=1){for(let _t=0;_t0)}function cw(){ht.increaseIndent()}function Hv(){ht.decreaseIndent()}function tL(ce,_t,pn,qn){return Lt?PN(ce,pn,_t):iL(qn,ce,pn,_t,PN)}function LM(ce,_t){P&&P(ce),_t(vr(ce.kind)),Q&&Q(ce)}function PN(ce,_t,pn){let qn=vr(ce);return _t(qn),pn<0?pn:pn+qn.length}function JE(ce,_t,pn){if(wg(ce)&1)lo();else if(St){let qn=lw(ce,_t,pn);qn?z0(qn):lo()}else z0()}function ON(ce){let _t=ce.split(/\r\n?|\n/g),pn=Kae(_t);for(let qn of _t){let Ua=pn?qn.slice(pn):qn;Ua.length&&(z0(),Kt(Ua))}}function HB(ce,_t){ce?(cw(),z0(ce)):_t&&lo()}function rk(ce,_t){ce&&Hv(),_t&&Hv()}function GP(ce,_t,pn){if(pn&2||St){if(pn&65536)return 1;if(_t===void 0)return!ce||Be&&RZ(ce,Be)?0:1;if(_t.pos===He||_t.kind===12)return 0;if(Be&&ce&&!Fv(ce.pos)&&!$d(_t)&&(!_t.parent||Np(_t.parent)===Np(ce)))return St?VM(qn=>TDe(_t.pos,ce.pos,Be,qn)):A6(ce,_t,Be)?0:1;if(FP(_t,pn))return 1}return pn&1?1:0}function S7(ce,_t,pn){if(pn&2||St){if(ce===void 0||_t===void 0||_t.kind===12)return 0;if(Be&&!$d(ce)&&!$d(_t))return St&&Ire(ce,_t)?VM(qn=>Xme(ce,_t,Be,qn)):!St&&z2(ce,_t)?d6(ce,_t,Be)?0:1:pn&65536?1:0;if(FP(ce,pn)||FP(_t,pn))return 1}else if(DG(_t))return 1;return pn&1?1:0}function W4(ce,_t,pn,qn){if(pn&2||St){if(pn&65536)return 1;if(_t===void 0)return!ce||Be&&RZ(ce,Be)?0:1;if(Be&&ce&&!Fv(ce.pos)&&!$d(_t)&&(!_t.parent||_t.parent===ce)){if(St){let Ua=qn&&!Fv(qn.end)?qn.end:_t.end;return VM(Fl=>NDe(Ua,ce.end,Be,Fl))}return vDe(ce,_t,Be)?0:1}if(FP(_t,pn))return 1}return pn&1&&!(pn&131072)?1:0}function VM(ce){w.assert(!!St);let _t=ce(!0);return _t===0?ce(!1):_t}function ure(ce,_t){let pn=St&&GP(_t,ce,0);return pn&&HB(pn,!1),!!pn}function P4(ce,_t){let pn=St&&W4(_t,ce,0,void 0);pn&&z0(pn)}function FP(ce,_t){if($d(ce)){let pn=DG(ce);return pn===void 0?(_t&65536)!==0:pn}return(_t&65536)!==0}function lw(ce,_t,pn){return wg(ce)&262144?0:(ce=ZP(ce),_t=ZP(_t),pn=ZP(pn),DG(pn)?1:Be&&!$d(ce)&&!$d(_t)&&!$d(pn)?St?VM(qn=>Xme(_t,pn,Be,qn)):d6(_t,pn,Be)?0:1:0)}function gre(ce){return ce.statements.length===0&&(!Be||d6(ce,ce,Be))}function ZP(ce){for(;ce.kind===217&&$d(ce);)ce=ce.expression;return ce}function FV(ce,_t){if(Cp(ce)||mZ(ce))return UI(ce);if(Eu(ce)&&ce.textSourceNode)return FV(ce.textSourceNode,_t);let pn=Be,qn=!!pn&&!!ce.parent&&!$d(ce);if(eb(ce)){if(!qn||ls(ce)!==Np(pn))return oo(ce)}else if(aT(ce)){if(!qn||ls(ce)!==Np(pn))return D6(ce)}else if(w.assertNode(ce,wv),!qn)return ce.text;return hG(pn,ce,_t)}function qG(ce,_t,pn){if(ce.kind===11&&ce.textSourceNode){let Ua=ce.textSourceNode;if(sr(Ua)||Gc(Ua)||pu(Ua)||aT(Ua)){let Fl=pu(Ua)?Ua.text:FV(Ua);return pn?`"${Rme(Fl)}"`:_t||wg(ce)&16777216?`"${rT(Fl)}"`:`"${xce(Fl)}"`}else return qG(Ua,_t,pn)}let qn=(_t?1:0)|(pn?2:0)|(n.terminateUnterminatedLiterals?4:0)|(n.target&&n.target>=8?8:0);return V$(ce,Be,qn)}function rL(ce){je.push(st),st=0,dt.push(Tt),!(ce&&wg(ce)&1048576)&&(nt.push(qe),qe=0,lt.push(Le),Le=void 0,it.push(It))}function Yv(ce){st=je.pop(),Tt=dt.pop(),!(ce&&wg(ce)&1048576)&&(qe=nt.pop(),Le=lt.pop(),It=it.pop())}function nL(ce){(!It||It===zo(it))&&(It=new Set),It.add(ce)}function LP(ce){(!Tt||Tt===zo(dt))&&(Tt=new Set),Tt.add(ce)}function Ih(ce){if(ce)switch(ce.kind){case 241:X(ce.statements,Ih);break;case 256:case 254:case 246:case 247:Ih(ce.statement);break;case 245:Ih(ce.thenStatement),Ih(ce.elseStatement);break;case 248:case 250:case 249:Ih(ce.initializer),Ih(ce.statement);break;case 255:Ih(ce.caseBlock);break;case 269:X(ce.clauses,Ih);break;case 296:case 297:X(ce.statements,Ih);break;case 258:Ih(ce.tryBlock),Ih(ce.catchClause),Ih(ce.finallyBlock);break;case 299:Ih(ce.variableDeclaration),Ih(ce.block);break;case 243:Ih(ce.declarationList);break;case 261:X(ce.declarations,Ih);break;case 260:case 169:case 208:case 263:QN(ce.name);break;case 262:QN(ce.name),wg(ce)&1048576&&(X(ce.parameters,Ih),Ih(ce.body));break;case 206:case 207:X(ce.elements,Ih);break;case 272:Ih(ce.importClause);break;case 273:QN(ce.name),Ih(ce.namedBindings);break;case 274:QN(ce.name);break;case 280:QN(ce.name);break;case 275:X(ce.elements,Ih);break;case 276:QN(ce.propertyName||ce.name);break}}function $G(ce){if(ce)switch(ce.kind){case 303:case 304:case 172:case 171:case 174:case 173:case 177:case 178:QN(ce.name);break}}function QN(ce){ce&&(Cp(ce)||mZ(ce)?UI(ce):fu(ce)&&Ih(ce))}function UI(ce){let _t=ce.emitNode.autoGenerate;if((_t.flags&7)===4)return $m(Uhe(ce),Gc(ce),_t.flags,_t.prefix,_t.suffix);{let pn=_t.id;return Me[pn]||(Me[pn]=O4(ce))}}function $m(ce,_t,pn,qn,Ua){let Fl=od(ce),El=_t?Ne:Fe;return El[Fl]||(El[Fl]=q0(ce,_t,pn??0,Cte(qn,UI),Cte(Ua)))}function eF(ce,_t){return YB(ce,_t)&&!zb(ce,_t)&&!De.has(ce)}function zb(ce,_t){let pn,qn;if(_t?(pn=Tt,qn=dt):(pn=It,qn=it),pn?.has(ce))return!0;for(let Ua=qn.length-1;Ua>=0;Ua--)if(pn!==qn[Ua]&&(pn=qn[Ua],pn?.has(ce)))return!0;return!1}function YB(ce,_t){return Be?v5(Be,ce,u):!0}function w7(ce,_t){for(let pn=_t;pn&&rV(pn,_t);pn=pn.nextContainer)if(Nv(pn)&&pn.locals){let qn=pn.locals.get(Dd(ce));if(qn&&qn.flags&3257279)return!1}return!0}function MN(ce){switch(ce){case"":return qe;case"#":return st;default:return Le?.get(ce)??0}}function T7(ce,_t){switch(ce){case"":qe=_t;break;case"#":st=_t;break;default:Le??(Le=new Map),Le.set(ce,_t);break}}function HN(ce,_t,pn,qn,Ua){qn.length>0&&qn.charCodeAt(0)===35&&(qn=qn.slice(1));let Fl=aP(pn,qn,"",Ua),El=MN(Fl);if(ce&&!(El&ce)){let Xg=aP(pn,qn,ce===268435456?"_i":"_n",Ua);if(eF(Xg,pn))return El|=ce,pn?LP(Xg):_t&&nL(Xg),T7(Fl,El),Xg}for(;;){let zl=El&268435455;if(El++,zl!==8&&zl!==13){let Xg=zl<26?"_"+String.fromCharCode(97+zl):"_"+(zl-26),$0=aP(pn,qn,Xg,Ua);if(eF($0,pn))return pn?LP($0):_t&&nL($0),T7(Fl,El),$0}}}function ZV(ce,_t=eF,pn,qn,Ua,Fl,El){if(ce.length>0&&ce.charCodeAt(0)===35&&(ce=ce.slice(1)),Fl.length>0&&Fl.charCodeAt(0)===35&&(Fl=Fl.slice(1)),pn){let Xg=aP(Ua,Fl,ce,El);if(_t(Xg,Ua))return Ua?LP(Xg):qn?nL(Xg):De.add(Xg),Xg}ce.charCodeAt(ce.length-1)!==95&&(ce+="_");let zl=1;for(;;){let Xg=aP(Ua,Fl,ce+zl,El);if(_t(Xg,Ua))return Ua?LP(Xg):qn?nL(Xg):De.add(Xg),Xg;zl++}}function Are(ce){return ZV(ce,YB,!0,!1,!1,"","")}function ZI(ce){let _t=FV(ce.name);return w7(_t,$s(ce,Nv))?_t:ZV(_t,eF,!1,!1,!1,"","")}function dre(ce){let _t=k5(ce),pn=Eu(_t)?ice(_t.text):"module";return ZV(pn,eF,!1,!1,!1,"","")}function pre(){return ZV("default",eF,!1,!1,!1,"","")}function VP(){return ZV("class",eF,!1,!1,!1,"","")}function rge(ce,_t,pn,qn){return sr(ce.name)?$m(ce.name,_t):HN(0,!1,_t,pn,qn)}function q0(ce,_t,pn,qn,Ua){switch(ce.kind){case 80:case 81:return ZV(FV(ce),eF,!!(pn&16),!!(pn&8),_t,qn,Ua);case 267:case 266:return w.assert(!qn&&!Ua&&!_t),ZI(ce);case 272:case 278:return w.assert(!qn&&!Ua&&!_t),dre(ce);case 262:case 263:{w.assert(!qn&&!Ua&&!_t);let Fl=ce.name;return Fl&&!Cp(Fl)?q0(Fl,!1,pn,qn,Ua):pre()}case 277:return w.assert(!qn&&!Ua&&!_t),pre();case 231:return w.assert(!qn&&!Ua&&!_t),VP();case 174:case 177:case 178:return rge(ce,_t,qn,Ua);case 167:return HN(0,!0,_t,qn,Ua);default:return HN(0,!1,_t,qn,Ua)}}function O4(ce){let _t=ce.emitNode.autoGenerate,pn=Cte(_t.prefix,UI),qn=Cte(_t.suffix);switch(_t.flags&7){case 1:return HN(0,!!(_t.flags&8),Gc(ce),pn,qn);case 2:return w.assertNode(ce,sr),HN(268435456,!!(_t.flags&8),!1,pn,qn);case 3:return ZV(oo(ce),_t.flags&32?YB:eF,!!(_t.flags&16),!!(_t.flags&8),Gc(ce),pn,qn)}return w.fail(`Unsupported GeneratedIdentifierKind: ${w.formatEnum(_t.flags&7,pc,!0)}.`)}function WM(ce,_t){let pn=Pr(2,ce,_t),qn=Pt,Ua=Vr,Fl=Hr;WP(_t),pn(ce,_t),pb(_t,qn,Ua,Fl)}function WP(ce){let _t=wg(ce),pn=US(ce);nge(ce,_t,pn.pos,pn.end),_t&4096&&(bi=!0)}function pb(ce,_t,pn,qn){let Ua=wg(ce),Fl=US(ce);Ua&4096&&(bi=!1),PP(ce,Ua,Fl.pos,Fl.end,_t,pn,qn);let El=Cxe(ce);El&&PP(ce,Ua,El.pos,El.end,_t,pn,qn)}function nge(ce,_t,pn,qn){gi(),$n=!1;let Ua=pn<0||(_t&1024)!==0||ce.kind===12,Fl=qn<0||(_t&2048)!==0||ce.kind===12;(pn>0||qn>0)&&pn!==qn&&(Ua||LV(pn,ce.kind!==353),(!Ua||pn>=0&&_t&1024)&&(Pt=pn),(!Fl||qn>=0&&_t&2048)&&(Vr=qn,ce.kind===261&&(Hr=qn))),X(nM(ce),fre),jn()}function PP(ce,_t,pn,qn,Ua,Fl,El){gi();let zl=qn<0||(_t&2048)!==0||ce.kind===12;X(c4(ce),OP),(pn>0||qn>0)&&pn!==qn&&(Pt=Ua,Vr=Fl,Hr=El,!zl&&ce.kind!==353&&Oo(qn)),jn()}function fre(ce){(ce.hasLeadingNewline||ce.kind===2)&&ht.writeLine(),PM(ce),ce.hasTrailingNewLine||ce.kind===2?ht.writeLine():ht.writeSpace(" ")}function OP(ce){ht.isAtStartOfLine()||ht.writeSpace(" "),PM(ce),ce.hasTrailingNewLine&&ht.writeLine()}function PM(ce){let _t=N7(ce),pn=ce.kind===3?fc(_t):void 0;$X(_t,pn,ht,0,_t.length,ue)}function N7(ce){return ce.kind===3?`/*${ce.text}*/`:`//${ce.text}`}function Q4(ce,_t,pn){gi();let{pos:qn,end:Ua}=_t,Fl=wg(ce),El=qn<0||(Fl&1024)!==0,zl=bi||Ua<0||(Fl&2048)!==0;El||uw(_t),jn(),Fl&4096&&!bi?(bi=!0,pn(ce),bi=!1):pn(ce),gi(),zl||(LV(_t.end,!0),$n&&!ht.isAtStartOfLine()&&ht.writeLine()),jn()}function z2(ce,_t){return ce=Np(ce),ce.parent&&ce.parent===Np(_t).parent}function Ire(ce,_t){if(_t.pos-1&&qn.indexOf(_t)===Ua+1}function LV(ce,_t){$n=!1,_t?ce===0&&Be?.isDeclarationFile?QP(ce,CT):QP(ce,H4):ce===0&&QP(ce,Y1)}function Y1(ce,_t,pn,qn,Ua){fD(ce,_t)&&H4(ce,_t,pn,qn,Ua)}function CT(ce,_t,pn,qn,Ua){fD(ce,_t)||H4(ce,_t,pn,qn,Ua)}function M4(ce,_t){return n.onlyPrintJsDocStyle?s8e(ce,_t)||R8(ce,_t):!0}function H4(ce,_t,pn,qn,Ua){!Be||!M4(Be.text,ce)||($n||(Zme(ju(),ht,Ua,ce),$n=!0),gw(ce),$X(Be.text,ju(),ht,ce,_t,ue),gw(_t),qn?ht.writeLine():pn===3&&ht.writeSpace(" "))}function FA(ce){bi||ce===-1||LV(ce,!0)}function Oo(ce){VV(ce,q2)}function q2(ce,_t,pn,qn){!Be||!M4(Be.text,ce)||(ht.isAtStartOfLine()||ht.writeSpace(" "),gw(ce),$X(Be.text,ju(),ht,ce,_t,ue),gw(_t),qn&&ht.writeLine())}function a_(ce,_t,pn){bi||(gi(),VV(ce,_t?q2:pn?Cre:mre),jn())}function Cre(ce,_t,pn){Be&&(gw(ce),$X(Be.text,ju(),ht,ce,_t,ue),gw(_t),pn===2&&ht.writeLine())}function mre(ce,_t,pn,qn){Be&&(gw(ce),$X(Be.text,ju(),ht,ce,_t,ue),gw(_t),qn?ht.writeLine():ht.writeSpace(" "))}function QP(ce,_t){Be&&(Pt===-1||ce!==Pt)&&(hre(ce)?WV(_t):Sf(Be.text,ce,_t,ce))}function VV(ce,_t){Be&&(Vr===-1||ce!==Vr&&ce!==Hr)&&bx(Be.text,ce,_t)}function hre(ce){return zr!==void 0&&Ta(zr).nodePos===ce}function WV(ce){if(!Be)return;let _t=Ta(zr).detachedCommentEndPos;zr.length-1?zr.pop():zr=void 0,Sf(Be.text,_t,ce,_t)}function uw(ce){let _t=Be&&IDe(Be.text,ju(),ht,X1,ce,ue,bi);_t&&(zr?zr.push(_t):zr=[_t])}function X1(ce,_t,pn,qn,Ua,Fl){!Be||!M4(Be.text,qn)||(gw(qn),$X(ce,_t,pn,qn,Ua,Fl),gw(Ua))}function fD(ce,_t){return!!Be&&Z$(Be.text,ce,_t)}function YN(ce,_t){let pn=Pr(3,ce,_t);tF(_t),pn(ce,_t),Y4(_t)}function tF(ce){let _t=wg(ce),pn=Px(ce),qn=pn.source||Zt;ce.kind!==353&&!(_t&32)&&pn.pos>=0&&J1(pn.source||Zt,VC(qn,pn.pos)),_t&128&&(Lt=!0)}function Y4(ce){let _t=wg(ce),pn=Px(ce);_t&128&&(Lt=!1),ce.kind!==353&&!(_t&64)&&pn.end>=0&&J1(pn.source||Zt,pn.end)}function VC(ce,_t){return ce.skipTrivia?ce.skipTrivia(_t):Uu(ce.text,_t)}function gw(ce){if(Lt||Fv(ce)||PV(Zt))return;let{line:_t,character:pn}=Vl(Zt,ce);kt.addMapping(ht.getLine(),ht.getColumn(),Dr,_t,pn,void 0)}function J1(ce,_t){if(ce!==Zt){let pn=Zt,qn=Dr;$2(ce),gw(_t),X4(pn,qn)}else gw(_t)}function iL(ce,_t,pn,qn,Ua){if(Lt||ce&&H8(ce))return Ua(_t,pn,qn);let Fl=ce&&ce.emitNode,El=Fl&&Fl.flags||0,zl=Fl&&Fl.tokenSourceMapRanges&&Fl.tokenSourceMapRanges[_t],Xg=zl&&zl.source||Zt;return qn=VC(Xg,zl?zl.pos:qn),!(El&256)&&qn>=0&&J1(Xg,qn),qn=Ua(_t,pn,qn),zl&&(qn=zl.end),!(El&512)&&qn>=0&&J1(Xg,qn),qn}function $2(ce){if(!Lt){if(Zt=ce,ce===jt){Dr=mr;return}PV(ce)||(Dr=kt.addSource(ce.fileName),n.inlineSources&&kt.setSourceContent(Dr,ce.text),jt=ce,mr=Dr)}}function X4(ce,_t){Zt=ce,Dr=_t}function PV(ce){return Ad(ce.fileName,".json")}}function k7i(){let n=[];return n[1024]=["{","}"],n[2048]=["(",")"],n[4096]=["<",">"],n[8192]=["[","]"],n}function G7i(n){return VGr[n&15360][0]}function F7i(n){return VGr[n&15360][1]}function Z7i(n,c,u,d){c(n)}function L7i(n,c,u,d){c(n,u.select(d))}function V7i(n,c,u,d){c(n,u)}function W7i(n,c){return n.length===1?Z7i:typeof c=="object"?L7i:V7i}function jke(n,c,u){if(!n.getDirectories||!n.readDirectory)return;let d=new Map,I=rA(u);return{useCaseSensitiveFileNames:u,fileExists:re,readFile:(Le,je)=>n.readFile(Le,je),directoryExists:n.directoryExists&&ue,getDirectories:de,readDirectory:Be,createDirectory:n.createDirectory&&Ae,writeFile:n.writeFile&&te,addOrDeleteFileOrDirectory:Ne,addOrDeleteFile:Me,clearCache:lt,realpath:n.realpath&&Fe};function h(Le){return AA(Le,c,I)}function b(Le){return d.get(dA(Le))}function R(Le){let je=b(oa(Le));return je&&(je.sortedAndCanonicalizedFiles||(je.sortedAndCanonicalizedFiles=je.files.map(I).sort(),je.sortedAndCanonicalizedDirectories=je.directories.map(I).sort()),je)}function N(Le){return kA(Mc(Le))}function V(Le,je){var st;if(!n.realpath||dA(h(n.realpath(Le)))===je){let nt={files:Ot(n.readDirectory(Le,void 0,void 0,["*.*"]),N)||[],directories:n.getDirectories(Le)||[]};return d.set(dA(je),nt),nt}if((st=n.directoryExists)!=null&&st.call(n,Le))return d.set(je,!1),!1}function P(Le,je){je=dA(je);let st=b(je);if(st)return st;try{return V(Le,je)}catch{w.assert(!d.has(dA(je)));return}}function Q(Le,je){return Vg(Le,je,vl,Ro)>=0}function te(Le,je,st){let nt=h(Le),qe=R(nt);return qe&&De(qe,N(Le),!0),n.writeFile(Le,je,st)}function re(Le){let je=h(Le),st=R(je);return st&&Q(st.sortedAndCanonicalizedFiles,I(N(Le)))||n.fileExists(Le)}function ue(Le){let je=h(Le);return d.has(dA(je))||n.directoryExists(Le)}function Ae(Le){let je=h(Le),st=R(je);if(st){let nt=N(Le),qe=I(nt),it=st.sortedAndCanonicalizedDirectories;Gr(it,qe,Ro)&&st.directories.push(nt)}n.createDirectory(Le)}function de(Le){let je=h(Le),st=P(Le,je);return st?st.directories.slice():n.getDirectories(Le)}function Be(Le,je,st,nt,qe){let it=h(Le),It=P(Le,it),dt;if(It!==void 0)return uhe(Le,je,st,nt,u,c,qe,Tt,Fe);return n.readDirectory(Le,je,st,nt,qe);function Tt(He){let ht=h(He);if(ht===it)return It||St(He,ht);let Et=P(He,ht);return Et!==void 0?Et||St(He,ht):dhe}function St(He,ht){if(dt&&ht===it)return dt;let Et={files:Ot(n.readDirectory(He,void 0,void 0,["*.*"]),N)||v,directories:n.getDirectories(He)||v};return ht===it&&(dt=Et),Et}}function Fe(Le){return n.realpath?n.realpath(Le):Le}function Ne(Le,je){if(b(je)!==void 0){lt();return}let nt=R(je);if(!nt)return;if(!n.directoryExists){lt();return}let qe=N(Le),it={fileExists:n.fileExists(Le),directoryExists:n.directoryExists(Le)};return it.directoryExists||Q(nt.sortedAndCanonicalizedDirectories,I(qe))?lt():De(nt,qe,it.fileExists),it}function Me(Le,je,st){if(st===1)return;let nt=R(je);nt&&De(nt,N(Le),st===0)}function De(Le,je,st){let nt=Le.sortedAndCanonicalizedFiles,qe=I(je);if(st)Gr(nt,qe,Ro)&&Le.files.push(je);else{let it=Vg(nt,qe,vl,Ro);if(it>=0){nt.splice(it,1);let It=Le.files.findIndex(dt=>I(dt)===qe);Le.files.splice(It,1)}}}function lt(){d.clear()}}var Oxt=(n=>(n[n.Update=0]="Update",n[n.RootNamesAndUpdate=1]="RootNamesAndUpdate",n[n.Full=2]="Full",n[n.Resolutions=3]="Resolutions",n))(Oxt||{});function zke(n,c,u,d,I){var h;let b=lA(((h=c?.configFile)==null?void 0:h.extendedSourceFiles)||v,I);u.forEach((R,N)=>{b.has(N)||(R.projects.delete(n),R.close())}),b.forEach((R,N)=>{let V=u.get(N);V?V.projects.add(n):u.set(N,{projects:new Set([n]),watcher:d(R,N),close:()=>{let P=u.get(N);!P||P.projects.size!==0||(P.watcher.close(),u.delete(N))}})})}function b6e(n,c){c.forEach(u=>{u.projects.delete(n)&&u.close()})}function qke(n,c,u){n.delete(c)&&n.forEach(({extendedResult:d},I)=>{var h;(h=d.extendedSourceFiles)!=null&&h.some(b=>u(b)===c)&&qke(n,I,u)})}function E6e(n,c,u){I6(c,n.getMissingFilePaths(),{createNewValue:u,onDeleteValue:xB})}function h_e(n,c,u){c?I6(n,new Map(Object.entries(c)),{createNewValue:d,onDeleteValue:VB,onExistingValue:I}):Y0(n,VB);function d(h,b){return{watcher:u(h,b),flags:b}}function I(h,b,R){h.flags!==b&&(h.watcher.close(),n.set(R,d(R,b)))}}function __e({watchedDirPath:n,fileOrDirectory:c,fileOrDirectoryPath:u,configFileName:d,options:I,program:h,extraFileExtensions:b,currentDirectory:R,useCaseSensitiveFileNames:N,writeLog:V,toPath:P,getScriptKind:Q}){let te=aGe(u);if(!te)return V(`Project: ${d} Detected ignored path: ${c}`),!0;if(u=te,u===n)return!1;if(S1(u)&&!(zDe(c,I,b)||Be()))return V(`Project: ${d} Detected file add/remove of non supported extension: ${c}`),!0;if(eDt(c,I.configFile.configFileSpecs,Qc(oa(d),R),N,R))return V(`Project: ${d} Detected excluded file: ${c}`),!0;if(!h||I.outFile||I.outDir)return!1;if(Gh(u)){if(I.declarationDir)return!1}else if(!fp(u,r4))return!1;let re=a0(u),ue=Na(h)?void 0:P7i(h)?h.getProgramOrUndefined():h,Ae=!ue&&!Na(h)?h:void 0;if(de(re+".ts")||de(re+".tsx"))return V(`Project: ${d} Detected output file: ${c}`),!0;return!1;function de(Fe){return ue?!!ue.getSourceFileByPath(Fe):Ae?Ae.getState().fileInfos.has(Fe):!!be(h,Ne=>P(Ne)===Fe)}function Be(){if(!Q)return!1;switch(Q(c)){case 3:case 4:case 7:case 5:return!0;case 1:case 2:return wG(I);case 6:return uV(I);case 0:return!1}}}function P7i(n){return!!n.getState}function Qxt(n,c){return n?n.isEmittedFile(c):!1}var Mxt=(n=>(n[n.None=0]="None",n[n.TriggerOnly=1]="TriggerOnly",n[n.Verbose=2]="Verbose",n))(Mxt||{});function B6e(n,c,u,d){Fb(c===2?u:oc);let I={watchFile:(Ae,de,Be,Fe)=>n.watchFile(Ae,de,Be,Fe),watchDirectory:(Ae,de,Be,Fe)=>n.watchDirectory(Ae,de,(Be&1)!==0,Fe)},h=c!==0?{watchFile:re("watchFile"),watchDirectory:re("watchDirectory")}:void 0,b=c===2?{watchFile:Q,watchDirectory:te}:h||I,R=c===2?P:yue;return{watchFile:N("watchFile"),watchDirectory:N("watchDirectory")};function N(Ae){return(de,Be,Fe,Ne,Me,De)=>{var lt;return bke(de,Ae==="watchFile"?Ne?.excludeFiles:Ne?.excludeDirectories,V(),((lt=n.getCurrentDirectory)==null?void 0:lt.call(n))||"")?R(de,Fe,Ne,Me,De):b[Ae].call(void 0,de,Be,Fe,Ne,Me,De)}}function V(){return typeof n.useCaseSensitiveFileNames=="boolean"?n.useCaseSensitiveFileNames:n.useCaseSensitiveFileNames()}function P(Ae,de,Be,Fe,Ne){return u(`ExcludeWatcher:: Added:: ${ue(Ae,de,Be,Fe,Ne,d)}`),{close:()=>u(`ExcludeWatcher:: Close:: ${ue(Ae,de,Be,Fe,Ne,d)}`)}}function Q(Ae,de,Be,Fe,Ne,Me){u(`FileWatcher:: Added:: ${ue(Ae,Be,Fe,Ne,Me,d)}`);let De=h.watchFile(Ae,de,Be,Fe,Ne,Me);return{close:()=>{u(`FileWatcher:: Close:: ${ue(Ae,Be,Fe,Ne,Me,d)}`),De.close()}}}function te(Ae,de,Be,Fe,Ne,Me){let De=`DirectoryWatcher:: Added:: ${ue(Ae,Be,Fe,Ne,Me,d)}`;u(De);let lt=$l(),Le=h.watchDirectory(Ae,de,Be,Fe,Ne,Me),je=$l()-lt;return u(`Elapsed:: ${je}ms ${De}`),{close:()=>{let st=`DirectoryWatcher:: Close:: ${ue(Ae,Be,Fe,Ne,Me,d)}`;u(st);let nt=$l();Le.close();let qe=$l()-nt;u(`Elapsed:: ${qe}ms ${st}`)}}}function re(Ae){return(de,Be,Fe,Ne,Me,De)=>I[Ae].call(void 0,de,(...lt)=>{let Le=`${Ae==="watchFile"?"FileWatcher":"DirectoryWatcher"}:: Triggered with ${lt[0]} ${lt[1]!==void 0?lt[1]:""}:: ${ue(de,Fe,Ne,Me,De,d)}`;u(Le);let je=$l();Be.call(void 0,...lt);let st=$l()-je;u(`Elapsed:: ${st}ms ${Le}`)},Fe,Ne,Me,De)}function ue(Ae,de,Be,Fe,Ne,Me){return`WatchInfo: ${Ae} ${de} ${JSON.stringify(Be)} ${Me?Me(Fe,Ne):Ne===void 0?Fe:`${Fe} ${Ne}`}`}}function y_e(n){let c=n?.fallbackPolling;return{watchFile:c!==void 0?c:1}}function VB(n){n.watcher.close()}function v6e(n,c,u="tsconfig.json"){return sI(n,d=>{let I=Do(d,u);return c(I)?I:void 0})}function S6e(n,c){let u=oa(c),d=bd(n)?n:Do(u,n);return Mc(d)}function Hxt(n,c,u){let d;return X(n,h=>{let b=Ah(h,c);if(b.pop(),!d){d=b;return}let R=Math.min(d.length,b.length);for(let N=0;N{let h;try{rs("beforeIORead"),h=n(u),rs("afterIORead"),Sc("I/O Read","beforeIORead","afterIORead")}catch(b){I&&I(b.message),h=""}return h!==void 0?M6(u,h,d,c):void 0}}function T6e(n,c,u){return(d,I,h,b)=>{try{rs("beforeIOWrite"),kme(d,I,h,n,c,u),rs("afterIOWrite"),Sc("I/O Write","beforeIOWrite","afterIOWrite")}catch(R){b&&b(R.message)}}}function $ke(n,c,u=yd){let d=new Map,I=rA(u.useCaseSensitiveFileNames);function h(P){return d.has(P)?!0:(V.directoryExists||u.directoryExists)(P)?(d.set(P,!0),!0):!1}function b(){return oa(Mc(u.getExecutingFilePath()))}let R=F1(n),N=u.realpath&&(P=>u.realpath(P)),V={getSourceFile:w6e(P=>V.readFile(P),c),getDefaultLibLocation:b,getDefaultLibFileName:P=>Do(b(),Cg(P)),writeFile:T6e((P,Q,te)=>u.writeFile(P,Q,te),P=>(V.createDirectory||u.createDirectory)(P),P=>h(P)),getCurrentDirectory:su(()=>u.getCurrentDirectory()),useCaseSensitiveFileNames:()=>u.useCaseSensitiveFileNames,getCanonicalFileName:I,getNewLine:()=>R,fileExists:P=>u.fileExists(P),readFile:P=>u.readFile(P),trace:P=>u.write(P+R),directoryExists:P=>u.directoryExists(P),getEnvironmentVariable:P=>u.getEnvironmentVariable?u.getEnvironmentVariable(P):"",getDirectories:P=>u.getDirectories(P),realpath:N,readDirectory:(P,Q,te,re,ue)=>u.readDirectory(P,Q,te,re,ue),createDirectory:P=>u.createDirectory(P),createHash:Yi(u,u.createHash)};return V}function Cue(n,c,u){let d=n.readFile,I=n.fileExists,h=n.directoryExists,b=n.createDirectory,R=n.writeFile,N=new Map,V=new Map,P=new Map,Q=new Map,te=Ae=>{let de=c(Ae),Be=N.get(de);return Be!==void 0?Be!==!1?Be:void 0:re(de,Ae)},re=(Ae,de)=>{let Be=d.call(n,de);return N.set(Ae,Be!==void 0?Be:!1),Be};n.readFile=Ae=>{let de=c(Ae),Be=N.get(de);return Be!==void 0?Be!==!1?Be:void 0:!Ad(Ae,".json")&&!Zxt(Ae)?d.call(n,Ae):re(de,Ae)};let ue=u?(Ae,de,Be,Fe)=>{let Ne=c(Ae),Me=typeof de=="object"?de.impliedNodeFormat:void 0,De=Q.get(Me),lt=De?.get(Ne);if(lt)return lt;let Le=u(Ae,de,Be,Fe);return Le&&(Gh(Ae)||Ad(Ae,".json"))&&Q.set(Me,(De||new Map).set(Ne,Le)),Le}:void 0;return n.fileExists=Ae=>{let de=c(Ae),Be=V.get(de);if(Be!==void 0)return Be;let Fe=I.call(n,Ae);return V.set(de,!!Fe),Fe},R&&(n.writeFile=(Ae,de,...Be)=>{let Fe=c(Ae);V.delete(Fe);let Ne=N.get(Fe);Ne!==void 0&&Ne!==de?(N.delete(Fe),Q.forEach(Me=>Me.delete(Fe))):ue&&Q.forEach(Me=>{let De=Me.get(Fe);De&&De.text!==de&&Me.delete(Fe)}),R.call(n,Ae,de,...Be)}),h&&(n.directoryExists=Ae=>{let de=c(Ae),Be=P.get(de);if(Be!==void 0)return Be;let Fe=h.call(n,Ae);return P.set(de,!!Fe),Fe},b&&(n.createDirectory=Ae=>{let de=c(Ae);P.delete(de),b.call(n,Ae)})),{originalReadFile:d,originalFileExists:I,originalDirectoryExists:h,originalCreateDirectory:b,originalWriteFile:R,getSourceFileWithCache:ue,readFileWithCache:te}}function XGr(n,c,u){let d;return d=ai(d,n.getConfigFileParsingDiagnostics()),d=ai(d,n.getOptionsDiagnostics(u)),d=ai(d,n.getSyntacticDiagnostics(c,u)),d=ai(d,n.getGlobalDiagnostics(u)),d=ai(d,n.getSemanticDiagnostics(c,u)),WE(n.getCompilerOptions())&&(d=ai(d,n.getDeclarationDiagnostics(c,u))),iA(d||v)}function JGr(n,c){let u="";for(let d of n)u+=N6e(d,c);return u}function N6e(n,c){let u=`${zh(n)} TS${n.code}: ${kN(n.messageText,c.getNewLine())}${c.getNewLine()}`;if(n.file){let{line:d,character:I}=Vl(n.file,n.start),h=n.file.fileName;return`${RE(h,c.getCurrentDirectory(),R=>c.getCanonicalFileName(R))}(${d+1},${I+1}): `+u}return u}var Xxt=(n=>(n.Grey="\x1B[90m",n.Red="\x1B[91m",n.Yellow="\x1B[93m",n.Blue="\x1B[94m",n.Cyan="\x1B[96m",n))(Xxt||{}),Jxt="\x1B[7m",Uxt=" ",UGr="\x1B[0m",KGr="...",O7i=" ",jGr=" ";function zGr(n){switch(n){case 1:return"\x1B[91m";case 0:return"\x1B[93m";case 2:return w.fail("Should never get an Info diagnostic on the command line.");case 3:return"\x1B[94m"}}function _M(n,c){return c+n+UGr}function qGr(n,c,u,d,I,h){let{line:b,character:R}=Vl(n,c),{line:N,character:V}=Vl(n,c+u),P=Vl(n,n.text.length).line,Q=N-b>=4,te=(N+1+"").length;Q&&(te=Math.max(KGr.length,te));let re="";for(let ue=b;ue<=N;ue++){re+=h.getNewLine(),Q&&b+1u.getCanonicalFileName(N)):n.fileName,R="";return R+=d(b,"\x1B[96m"),R+=":",R+=d(`${I+1}`,"\x1B[93m"),R+=":",R+=d(`${h+1}`,"\x1B[93m"),R}function Kxt(n,c){let u="";for(let d of n){if(d.file){let{file:I,start:h}=d;u+=R6e(I,h,c),u+=" - "}if(u+=_M(zh(d),zGr(d.category)),u+=_M(` TS${d.code}: `,"\x1B[90m"),u+=kN(d.messageText,c.getNewLine()),d.file&&d.code!==Z.File_appears_to_be_binary.code&&(u+=c.getNewLine(),u+=qGr(d.file,d.start,d.length,"",zGr(d.category),c)),d.relatedInformation){u+=c.getNewLine();for(let{file:I,start:h,length:b,messageText:R}of d.relatedInformation)I&&(u+=c.getNewLine(),u+=O7i+R6e(I,h,c),u+=qGr(I,h,b,jGr,"\x1B[96m",c)),u+=c.getNewLine(),u+=jGr+kN(R,c.getNewLine())}u+=c.getNewLine()}return u}function kN(n,c,u=0){if(Ya(n))return n;if(n===void 0)return"";let d="";if(u){d+=c;for(let I=0;Ix6e(c,n,u)};function F6e(n,c,u,d,I){return{nameAndMode:G6e,resolve:(h,b)=>U6(h,n,u,d,I,c,b)}}function Z6e(n){return Ya(n)?n:n.fileName}var Q7i={getName:Z6e,getMode:(n,c)=>b_e(n,c?.impliedNodeFormat)};function eGe(n,c,u,d,I){return{nameAndMode:Q7i,resolve:(h,b)=>uDt(h,n,u,d,c,I,b)}}function E_e(n,c,u,d,I,h,b,R){if(n.length===0)return v;let N=[],V=new Map,P=R(c,u,d,h,b);for(let Q of n){let te=P.nameAndMode.getName(Q),re=P.nameAndMode.getMode(Q,I,u?.commandLine.options||d),ue=rue(te,re),Ae=V.get(ue);Ae||V.set(ue,Ae=P.resolve(te,re)),N.push(Ae)}return N}function L6e(n,c){return tGe(void 0,n,(u,d)=>u&&c(u,d))}function tGe(n,c,u,d){let I;return h(n,c,void 0);function h(b,R,N){if(d){let V=d(b,N);if(V)return V}return X(R,(V,P)=>{if(V&&I?.has(V.sourceFile.path))return;let Q=u(V,N,P);return Q||!V?Q:((I||(I=new Set)).add(V.sourceFile.path),h(V.commandLine.projectReferences,V.references,V))})}}var mue="__inferred type names__.ts";function rGe(n,c,u){let d=n.configFilePath?oa(n.configFilePath):c;return Do(d,`__lib_node_modules_lookup_${u}__.ts`)}function V6e(n){let c=n.split("."),u=c[1],d=2;for(;c[d]&&c[d]!=="d";)u+=(d===2?"/":"-")+c[d],d++;return"@typescript/lib-"+u}function eFr(n){return uf(n.fileName)}function tFr(n){let c=eFr(n);return g8e.get(c)}function pP(n){switch(n?.kind){case 3:case 4:case 5:case 7:return!0;default:return!1}}function Rte(n){return n.pos!==void 0}function hue(n,c){var u,d,I,h;let b=w.checkDefined(n.getSourceFileByPath(c.file)),{kind:R,index:N}=c,V,P,Q;switch(R){case 3:let te=S_e(b,N);if(Q=(d=(u=n.getResolvedModuleFromModuleSpecifier(te,b))==null?void 0:u.resolvedModule)==null?void 0:d.packageId,te.pos===-1)return{file:b,packageId:Q,text:te.text};V=Uu(b.text,te.pos),P=te.end;break;case 4:({pos:V,end:P}=b.referencedFiles[N]);break;case 5:({pos:V,end:P}=b.typeReferenceDirectives[N]),Q=(h=(I=n.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(b.typeReferenceDirectives[N],b))==null?void 0:I.resolvedTypeReferenceDirective)==null?void 0:h.packageId;break;case 7:({pos:V,end:P}=b.libReferenceDirectives[N]);break;default:return w.assertNever(R)}return{file:b,pos:V,end:P,packageId:Q}}function W6e(n,c,u,d,I,h,b,R,N,V){if(!n||R?.()||!Cn(n.getRootFileNames(),c))return!1;let P;if(!Cn(n.getProjectReferences(),V,Ae)||n.getSourceFiles().some(re))return!1;let Q=n.getMissingFilePaths();if(Q&&UC(Q,I))return!1;let te=n.getCompilerOptions();if(!Kce(te,u)||n.resolvedLibReferences&&UC(n.resolvedLibReferences,(Be,Fe)=>b(Fe)))return!1;if(te.configFile&&u.configFile)return te.configFile.text===u.configFile.text;return!0;function re(Be){return!ue(Be)||h(Be.path)}function ue(Be){return Be.version===d(Be.resolvedPath,Be.fileName)}function Ae(Be,Fe,Ne){return w8(Be,Fe)&&de(n.getResolvedProjectReferences()[Ne],Be)}function de(Be,Fe){if(Be){if(Ue(P,Be))return!0;let Me=Dte(Fe),De=N(Me);return!De||Be.commandLine.options.configFile!==De.options.configFile||!Cn(Be.commandLine.fileNames,De.fileNames)?!1:((P||(P=[])).push(Be),!X(Be.references,(lt,Le)=>!de(lt,Be.commandLine.projectReferences[Le])))}let Ne=Dte(Fe);return!N(Ne)}}function yM(n){return n.options.configFile?[...n.options.configFile.parseDiagnostics,...n.errors]:n.errors}function B_e(n,c,u,d){let I=nGe(n,c,u,d);return typeof I=="object"?I.impliedNodeFormat:I}function nGe(n,c,u,d){switch(o0(d)){case 3:case 99:return fp(n,[".d.mts",".mts",".mjs"])?99:fp(n,[".d.cts",".cts",".cjs"])?1:fp(n,[".d.ts",".ts",".tsx",".js",".jsx"])?I():void 0;default:return}function I(){let h=nue(c,u,d),b=[];h.failedLookupLocations=b,h.affectingLocations=b;let R=iue(n,h);return{impliedNodeFormat:R?.contents.packageJsonContent.type==="module"?99:1,packageJsonLocations:b,packageJsonScope:R}}}var P6e=new Set([Z.Cannot_redeclare_block_scoped_variable_0.code,Z.A_module_cannot_have_multiple_default_exports.code,Z.Another_export_default_is_here.code,Z.The_first_export_default_is_here.code,Z.Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module.code,Z.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode.code,Z.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here.code,Z.constructor_is_a_reserved_word.code,Z.delete_cannot_be_called_on_an_identifier_in_strict_mode.code,Z.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,Z.Invalid_use_of_0_Modules_are_automatically_in_strict_mode.code,Z.Invalid_use_of_0_in_strict_mode.code,Z.A_label_is_not_allowed_here.code,Z.with_statements_are_not_allowed_in_strict_mode.code,Z.A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement.code,Z.A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement.code,Z.A_class_declaration_without_the_default_modifier_must_have_a_name.code,Z.A_class_member_cannot_have_the_0_keyword.code,Z.A_comma_expression_is_not_allowed_in_a_computed_property_name.code,Z.A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement.code,Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement.code,Z.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement.code,Z.A_default_clause_cannot_appear_more_than_once_in_a_switch_statement.code,Z.A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration.code,Z.A_definite_assignment_assertion_is_not_permitted_in_this_context.code,Z.A_destructuring_declaration_must_have_an_initializer.code,Z.A_get_accessor_cannot_have_parameters.code,Z.A_rest_element_cannot_contain_a_binding_pattern.code,Z.A_rest_element_cannot_have_a_property_name.code,Z.A_rest_element_cannot_have_an_initializer.code,Z.A_rest_element_must_be_last_in_a_destructuring_pattern.code,Z.A_rest_parameter_cannot_have_an_initializer.code,Z.A_rest_parameter_must_be_last_in_a_parameter_list.code,Z.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma.code,Z.A_return_statement_cannot_be_used_inside_a_class_static_block.code,Z.A_set_accessor_cannot_have_rest_parameter.code,Z.A_set_accessor_must_have_exactly_one_parameter.code,Z.An_export_declaration_can_only_be_used_at_the_top_level_of_a_module.code,Z.An_export_declaration_cannot_have_modifiers.code,Z.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module.code,Z.An_import_declaration_cannot_have_modifiers.code,Z.An_object_member_cannot_be_declared_optional.code,Z.Argument_of_dynamic_import_cannot_be_spread_element.code,Z.Cannot_assign_to_private_method_0_Private_methods_are_not_writable.code,Z.Cannot_redeclare_identifier_0_in_catch_clause.code,Z.Catch_clause_variable_cannot_have_an_initializer.code,Z.Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator.code,Z.Classes_can_only_extend_a_single_class.code,Z.Classes_may_not_have_a_field_named_constructor.code,Z.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,Z.Duplicate_label_0.code,Z.Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments.code,Z.for_await_loops_cannot_be_used_inside_a_class_static_block.code,Z.JSX_attributes_must_only_be_assigned_a_non_empty_expression.code,Z.JSX_elements_cannot_have_multiple_attributes_with_the_same_name.code,Z.JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array.code,Z.JSX_property_access_expressions_cannot_include_JSX_namespace_names.code,Z.Jump_target_cannot_cross_function_boundary.code,Z.Line_terminator_not_permitted_before_arrow.code,Z.Modifiers_cannot_appear_here.code,Z.Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement.code,Z.Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement.code,Z.Private_identifiers_are_not_allowed_outside_class_bodies.code,Z.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,Z.Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier.code,Z.Tagged_template_expressions_are_not_permitted_in_an_optional_chain.code,Z.The_left_hand_side_of_a_for_of_statement_may_not_be_async.code,Z.The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer.code,Z.The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer.code,Z.Trailing_comma_not_allowed.code,Z.Variable_declaration_list_cannot_be_empty.code,Z._0_and_1_operations_cannot_be_mixed_without_parentheses.code,Z._0_expected.code,Z._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2.code,Z._0_list_cannot_be_empty.code,Z._0_modifier_already_seen.code,Z._0_modifier_cannot_appear_on_a_constructor_declaration.code,Z._0_modifier_cannot_appear_on_a_module_or_namespace_element.code,Z._0_modifier_cannot_appear_on_a_parameter.code,Z._0_modifier_cannot_appear_on_class_elements_of_this_kind.code,Z._0_modifier_cannot_be_used_here.code,Z._0_modifier_must_precede_1_modifier.code,Z._0_declarations_can_only_be_declared_inside_a_block.code,Z._0_declarations_must_be_initialized.code,Z.extends_clause_already_seen.code,Z.let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations.code,Z.Class_constructor_may_not_be_a_generator.code,Z.Class_constructor_may_not_be_an_accessor.code,Z.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,Z.await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,Z.Private_field_0_must_be_declared_in_an_enclosing_class.code,Z.This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value.code]);function M7i(n,c){return n?V3(n.getCompilerOptions(),c,p8e):!1}function H7i(n,c,u,d,I,h){return{rootNames:n,options:c,host:u,oldProgram:d,configFileParsingDiagnostics:I,typeScriptVersion:h}}function v_e(n,c,u,d,I){var h,b,R,N,V,P,Q,te,re,ue,Ae,de,Be,Fe,Ne,Me;let De=Na(n)?H7i(n,c,u,d,I):n,{rootNames:lt,options:Le,configFileParsingDiagnostics:je,projectReferences:st,typeScriptVersion:nt}=De,{oldProgram:qe}=De;for(let rr of ORt)if(Qa(Le,rr.name)&&typeof Le[rr.name]=="string")throw new Error(`${rr.name} is a string value; tsconfig JSON must be parsed with parseJsonSourceFileConfigFileContent or getParsedCommandLineOfConfigFile before passing to createProgram`);let it=su(()=>Z_("ignoreDeprecations",Z.Invalid_value_for_ignoreDeprecations)),It,dt,Tt,St,He,ht,Et,Kt=new Map,Nt=ec(),Lt,kt,Zt,Dr={},jt={},mr,Pt,Vr,Hr,pr,zr,$n,bi,Pi,Ns,gi=typeof Le.maxNodeModuleJsDepth=="number"?Le.maxNodeModuleJsDepth:0,jn=0,xs=new Map,Bc=new Map;(h=Qi)==null||h.push(Qi.Phase.Program,"createProgram",{configFilePath:Le.configFilePath,rootDir:Le.rootDir},!0),rs("beforeProgram");let xi=De.host||Yxt(Le),rc=sGe(xi),Wl=Le.noLib,gl=su(()=>xi.getDefaultLibFileName(Le)),mc=xi.getDefaultLibLocation?xi.getDefaultLibLocation():oa(gl()),_s=BG(),Pu=[],ir=xi.getCurrentDirectory(),ni=b6(Le),gs=Hee(Le,ni),Hs=new Map,za,nc,Rc,lg,ju=xi.hasInvalidatedResolutions||NC;xi.resolveModuleNameLiterals?(lg=xi.resolveModuleNameLiterals.bind(xi),Rc=(b=xi.getModuleResolutionCache)==null?void 0:b.call(xi)):xi.resolveModuleNames?(lg=(rr,Tr,xn,ci,Wi,zs)=>xi.resolveModuleNames(rr.map(zxt),Tr,zs?.map(zxt),xn,ci,Wi).map(zi=>zi?zi.extension!==void 0?{resolvedModule:zi}:{resolvedModule:{...zi,extension:B6(zi.resolvedFileName)}}:$Gr),Rc=(R=xi.getModuleResolutionCache)==null?void 0:R.call(xi)):(Rc=bte(ir,qo,Le),lg=(rr,Tr,xn,ci,Wi)=>E_e(rr,Tr,xn,ci,Wi,xi,Rc,F6e));let Bi;if(xi.resolveTypeReferenceDirectiveReferences)Bi=xi.resolveTypeReferenceDirectiveReferences.bind(xi);else if(xi.resolveTypeReferenceDirectives)Bi=(rr,Tr,xn,ci,Wi)=>xi.resolveTypeReferenceDirectives(rr.map(Z6e),Tr,xn,ci,Wi?.impliedNodeFormat).map(zs=>({resolvedTypeReferenceDirective:zs}));else{let rr=wke(ir,qo,void 0,Rc?.getPackageJsonInfoCache(),Rc?.optionsToRedirectsKey);Bi=(Tr,xn,ci,Wi,zs)=>E_e(Tr,xn,ci,Wi,zs,xi,rr,eGe)}let vA=xi.hasInvalidatedLibResolutions||NC,kr;if(xi.resolveLibrary)kr=xi.resolveLibrary.bind(xi);else{let rr=bte(ir,qo,Le,Rc?.getPackageJsonInfoCache());kr=(Tr,xn,ci)=>Tke(Tr,xn,ci,xi,rr)}let en=new Map,ct=new Map,rn=ec(),wt=!1,br=new Map,Mt=new Map,_r=xi.useCaseSensitiveFileNames()?new Map:void 0,Pr,ti,cr,kn,Pn=!!((N=xi.useSourceOfProjectReferenceRedirect)!=null&&N.call(xi))&&!Le.disableSourceOfProjectReferenceRedirect,{onProgramCreateComplete:an,fileExists:Kr,directoryExists:wn}=Y7i({compilerHost:xi,getSymlinkCache:fT,useSourceOfProjectReferenceRedirect:Pn,toPath:ri,getResolvedProjectReferences:jm,getSourceOfProjectReferenceRedirect:gD,forEachResolvedProjectReference:em}),Pe=xi.readFile.bind(xi);(V=Qi)==null||V.push(Qi.Phase.Program,"shouldProgramCreateNewSourceFiles",{hasOldProgram:!!qe});let ar=M7i(qe,Le);(P=Qi)==null||P.pop();let sn;if((Q=Qi)==null||Q.push(Qi.Phase.Program,"tryReuseStructureFromOldProgram",{}),sn=ug(),(te=Qi)==null||te.pop(),sn!==2){if(It=[],dt=[],st&&(Pr||(Pr=st.map(Yt)),lt.length&&Pr?.forEach((rr,Tr)=>{if(!rr)return;let xn=rr.commandLine.options.outFile;if(Pn){if(xn||D_(rr.commandLine.options)===0)for(let ci of rr.commandLine.fileNames)Em(ci,{kind:1,index:Tr})}else if(xn)Em(NG(xn,".d.ts"),{kind:2,index:Tr});else if(D_(rr.commandLine.options)===0){let ci=su(()=>z6(rr.commandLine,!xi.useCaseSensitiveFileNames()));for(let Wi of rr.commandLine.fileNames)!Gh(Wi)&&!Ad(Wi,".json")&&Em(Tte(Wi,rr.commandLine,!xi.useCaseSensitiveFileNames(),ci),{kind:2,index:Tr})}})),(re=Qi)==null||re.push(Qi.Phase.Program,"processRootFiles",{count:lt.length}),X(lt,(rr,Tr)=>$C(rr,!1,!1,{kind:0,index:Tr})),(ue=Qi)==null||ue.pop(),Pt??(Pt=lt.length?vke(Le,xi):v),Vr=yte(),Pt.length){(Ae=Qi)==null||Ae.push(Qi.Phase.Program,"processTypeReferences",{count:Pt.length});let rr=Le.configFilePath?oa(Le.configFilePath):ir,Tr=Do(rr,mue),xn=Gd(Pt,Tr);for(let ci=0;ci{$C(Jn(Tr),!0,!1,{kind:6,index:xn})})}Tt=ml(It,ki).concat(dt),It=void 0,dt=void 0,Lt=void 0}if(qe&&xi.onReleaseOldSourceFile){let rr=qe.getSourceFiles();for(let Tr of rr){let xn=di(Tr.resolvedPath);(ar||!xn||xn.impliedNodeFormat!==Tr.impliedNodeFormat||Tr.resolvedPath===Tr.path&&xn.resolvedPath!==Tr.path)&&xi.onReleaseOldSourceFile(Tr,qe.getCompilerOptions(),!!di(Tr.path))}xi.getParsedCommandLine||qe.forEachResolvedProjectReference(Tr=>{LN(Tr.sourceFile.path)||xi.onReleaseOldSourceFile(Tr.sourceFile,qe.getCompilerOptions(),!1)})}qe&&xi.onReleaseParsedCommandLine&&tGe(qe.getProjectReferences(),qe.getResolvedProjectReferences(),(rr,Tr,xn)=>{let ci=Tr?.commandLine.projectReferences[xn]||qe.getProjectReferences()[xn],Wi=Dte(ci);ti?.has(ri(Wi))||xi.onReleaseParsedCommandLine(Wi,rr,qe.getCompilerOptions())}),qe=void 0,pr=void 0,$n=void 0,Pi=void 0;let Qe={getRootFileNames:()=>lt,getSourceFile:qA,getSourceFileByPath:di,getSourceFiles:()=>Tt,getMissingFilePaths:()=>Mt,getModuleResolutionCache:()=>Rc,getFilesByNameMap:()=>br,getCompilerOptions:()=>Le,getSyntacticDiagnostics:U0,getOptionsDiagnostics:of,getGlobalDiagnostics:Jb,getSemanticDiagnostics:K0,getCachedSemanticDiagnostics:Xb,getSuggestionDiagnostics:_c,getDeclarationDiagnostics:yt,getBindAndCheckDiagnostics:nf,getProgramDiagnostics:GI,getTypeChecker:o_,getClassifiableNames:UA,getCommonSourceDirectory:_u,emit:Ug,getCurrentDirectory:()=>ir,getNodeCount:()=>o_().getNodeCount(),getIdentifierCount:()=>o_().getIdentifierCount(),getSymbolCount:()=>o_().getSymbolCount(),getTypeCount:()=>o_().getTypeCount(),getInstantiationCount:()=>o_().getInstantiationCount(),getRelationCacheSizes:()=>o_().getRelationCacheSizes(),getFileProcessingDiagnostics:()=>mr,getAutomaticTypeDirectiveNames:()=>Pt,getAutomaticTypeDirectiveResolutions:()=>Vr,isSourceFileFromExternalLibrary:I0,isSourceFileDefaultLibrary:kI,getModeForUsageLocation:K2,getModeForResolutionAtIndex:YG,getSourceFileFromReference:SA,getLibFileFromReference:Rl,sourceFileToPackageName:ct,redirectTargetsMap:rn,usesUriStyleNodeCoreModules:wt,resolvedModules:zr,resolvedTypeReferenceDirectiveNames:bi,resolvedLibReferences:Hr,getResolvedModule:Jt,getResolvedModuleFromModuleSpecifier:bt,getResolvedTypeReferenceDirective:Vt,getResolvedTypeReferenceDirectiveFromTypeReferenceDirective:dn,forEachResolvedModule:On,forEachResolvedTypeReferenceDirective:Qn,getCurrentPackagesMap:()=>Ns,typesPackageExists:Es,packageBundlesTypes:so,isEmittedFile:Ov,getConfigFileParsingDiagnostics:FI,getProjectReferences:xf,getResolvedProjectReferences:jm,getProjectReferenceRedirect:X2,getResolvedProjectReferenceToRedirect:Ab,getResolvedProjectReferenceByPath:LN,forEachResolvedProjectReference:em,isSourceOfProjectReferenceRedirect:Kb,getRedirectReferenceForResolutionFromSourceOfProject:Ra,emitBuildInfo:Lc,fileExists:Kr,readFile:Pe,directoryExists:wn,getSymlinkCache:fT,realpath:(Ne=xi.realpath)==null?void 0:Ne.bind(xi),useCaseSensitiveFileNames:()=>xi.useCaseSensitiveFileNames(),getCanonicalFileName:qo,getFileIncludeReasons:()=>Nt,structureIsReused:sn,writeFile:qc};return an(),En(),rs("afterProgram"),Sc("Program","beforeProgram","afterProgram"),(Me=Qi)==null||Me.pop(),Qe;function ur(){return Pu&&(mr?.forEach(rr=>{switch(rr.kind){case 1:return _s.add(Bu(rr.file&&di(rr.file),rr.fileProcessingReason,rr.diagnostic,rr.args||v));case 0:return _s.add(Re(rr));case 2:return rr.diagnostics.forEach(Tr=>_s.add(Tr));default:w.assertNever(rr)}}),Pu.forEach(({file:rr,diagnostic:Tr,args:xn})=>_s.add(Bu(rr,void 0,Tr,xn))),Pu=void 0,kt=void 0,Zt=void 0),_s}function Re({reason:rr}){let{file:Tr,pos:xn,end:ci}=hue(Qe,rr),Wi=Tr.libReferenceDirectives[rr.index],zs=eFr(Wi),zi=Hm(E_(zs,"lib."),".d.ts"),mo=Rd(zi,lke,vl);return Cm(Tr,w.checkDefined(xn),w.checkDefined(ci)-xn,mo?Z.Cannot_find_lib_definition_for_0_Did_you_mean_1:Z.Cannot_find_lib_definition_for_0,zs,mo)}function Jt(rr,Tr,xn){var ci;return(ci=zr?.get(rr.path))==null?void 0:ci.get(Tr,xn)}function bt(rr,Tr){return Tr??(Tr=ls(rr)),w.assertIsDefined(Tr,"`moduleSpecifier` must have a `SourceFile` ancestor. Use `program.getResolvedModule` instead to provide the containing file and resolution mode."),Jt(Tr,rr.text,K2(Tr,rr))}function Vt(rr,Tr,xn){var ci;return(ci=bi?.get(rr.path))==null?void 0:ci.get(Tr,xn)}function dn(rr,Tr){return Vt(Tr,rr.fileName,rr.resolutionMode||Tr.impliedNodeFormat)}function On(rr,Tr){Ii(zr,rr,Tr)}function Qn(rr,Tr){Ii(bi,rr,Tr)}function Ii(rr,Tr,xn){var ci;xn?(ci=rr?.get(xn.path))==null||ci.forEach((Wi,zs,zi)=>Tr(Wi,zs,zi,xn.path)):rr?.forEach((Wi,zs)=>Wi.forEach((zi,mo,vc)=>Tr(zi,mo,vc,zs)))}function ds(){return Ns||(Ns=new Map,On(({resolvedModule:rr})=>{rr?.packageId&&Ns.set(rr.packageId.name,rr.extension===".d.ts"||!!Ns.get(rr.packageId.name))}),Ns)}function Es(rr){return ds().has(Dke(rr))}function so(rr){return!!ds().get(rr)}function Vi(rr){var Tr;(Tr=rr.resolutionDiagnostics)!=null&&Tr.length&&(mr??(mr=[])).push({kind:2,diagnostics:rr.resolutionDiagnostics})}function xo(rr,Tr,xn,ci){if(xi.resolveModuleNameLiterals||!xi.resolveModuleNames)return Vi(xn);if(!Rc||Ul(Tr))return;let Wi=Qc(rr.originalFileName,ir),zs=oa(Wi),zi=sa(rr),mo=Rc.getFromNonRelativeNameCache(Tr,ci,zs,zi);mo&&Vi(mo)}function Yc(rr,Tr,xn){var ci,Wi;if(!rr.length)return v;let zs=Qc(Tr.originalFileName,ir),zi=sa(Tr);(ci=Qi)==null||ci.push(Qi.Phase.Program,"resolveModuleNamesWorker",{containingFileName:zs}),rs("beforeResolveModule");let mo=lg(rr,zs,zi,Le,Tr,xn);return rs("afterResolveModule"),Sc("ResolveModule","beforeResolveModule","afterResolveModule"),(Wi=Qi)==null||Wi.pop(),mo}function Il(rr,Tr,xn){var ci,Wi;if(!rr.length)return[];let zs=Ya(Tr)?void 0:Tr,zi=Ya(Tr)?Tr:Qc(Tr.originalFileName,ir),mo=zs&&sa(zs);(ci=Qi)==null||ci.push(Qi.Phase.Program,"resolveTypeReferenceDirectiveNamesWorker",{containingFileName:zi}),rs("beforeResolveTypeReference");let vc=Bi(rr,zi,mo,Le,zs,xn);return rs("afterResolveTypeReference"),Sc("ResolveTypeReference","beforeResolveTypeReference","afterResolveTypeReference"),(Wi=Qi)==null||Wi.pop(),vc}function sa(rr){let Tr=Ab(rr.originalFileName);if(Tr||!Gh(rr.originalFileName))return Tr;let xn=Ra(rr.path);if(xn)return xn;if(!xi.realpath||!Le.preserveSymlinks||!rr.originalFileName.includes(Kx))return;let ci=ri(xi.realpath(rr.originalFileName));return ci===rr.path?void 0:Ra(ci)}function Ra(rr){let Tr=gD(rr);if(Ya(Tr))return Ab(Tr);if(Tr)return em(xn=>{let ci=xn.commandLine.options.outFile;if(ci)return ri(ci)===rr?xn:void 0})}function ki(rr,Tr){return Jl(Gs(rr),Gs(Tr))}function Gs(rr){if(vg(mc,rr.fileName,!1)){let Tr=kA(rr.fileName);if(Tr==="lib.d.ts"||Tr==="lib.es6.d.ts")return 0;let xn=Hm(E_(Tr,"lib."),".d.ts"),ci=lke.indexOf(xn);if(ci!==-1)return ci+1}return lke.length+2}function ri(rr){return AA(rr,ir,qo)}function _u(){if(He===void 0){let rr=Gt(Tt,Tr=>K3(Tr,Qe));He=Iue(Le,()=>tr(rr,Tr=>Tr.isDeclarationFile?void 0:Tr.fileName),ir,qo,Tr=>Ge(rr,Tr))}return He}function UA(){var rr;if(!Et){o_(),Et=new Set;for(let Tr of Tt)(rr=Tr.classifiableNames)==null||rr.forEach(xn=>Et.add(xn))}return Et}function Hd(rr,Tr){if(sn===0&&!Tr.ambientModuleNames.length)return Yc(rr,Tr,void 0);let xn,ci,Wi,zs=$Gr,zi=qe&&qe.getSourceFile(Tr.fileName);for(let ac=0;ac{let ci=(Tr?Tr.commandLine.projectReferences:st)[xn],Wi=Yt(ci);return rr?!Wi||Wi.sourceFile!==rr.sourceFile||!Cn(rr.commandLine.fileNames,Wi.commandLine.fileNames):Wi!==void 0},(rr,Tr)=>{let xn=Tr?LN(Tr.sourceFile.path).commandLine.projectReferences:st;return!Cn(rr,xn,w8)})}function ug(){var rr;if(!qe)return 0;let Tr=qe.getCompilerOptions();if(NB(Tr,Le))return 0;let xn=qe.getRootFileNames();if(!Cn(xn,lt)||!Nl())return 0;st&&(Pr=st.map(Yt));let ci=[],Wi=[];if(sn=2,UC(qe.getMissingFilePaths(),Io=>xi.fileExists(Io)))return 0;let zs=qe.getSourceFiles(),zi;(Io=>{Io[Io.Exists=0]="Exists",Io[Io.Modified=1]="Modified"})(zi||(zi={}));let mo=new Map;for(let Io of zs){let ac=Ub(Io.fileName,Rc,xi,Le),Ws=xi.getSourceFileByPath?xi.getSourceFileByPath(Io.fileName,Io.resolvedPath,ac,void 0,ar):xi.getSourceFile(Io.fileName,ac,void 0,ar);if(!Ws)return 0;Ws.packageJsonLocations=(rr=ac.packageJsonLocations)!=null&&rr.length?ac.packageJsonLocations:void 0,Ws.packageJsonScope=ac.packageJsonScope,w.assert(!Ws.redirectInfo,"Host should not return a redirect source file from `getSourceFile`");let nu;if(Io.redirectInfo){if(Ws!==Io.redirectInfo.unredirected)return 0;nu=!1,Ws=Io}else if(qe.redirectTargetsMap.has(Io.path)){if(Ws!==Io)return 0;nu=!1}else nu=Ws!==Io;Ws.path=Io.path,Ws.originalFileName=Io.originalFileName,Ws.resolvedPath=Io.resolvedPath,Ws.fileName=Io.fileName;let Yg=qe.sourceFileToPackageName.get(Io.path);if(Yg!==void 0){let zm=mo.get(Yg),C0=nu?1:0;if(zm!==void 0&&C0===1||zm===1)return 0;mo.set(Yg,C0)}if(nu)Io.impliedNodeFormat!==Ws.impliedNodeFormat?sn=1:Cn(Io.libReferenceDirectives,Ws.libReferenceDirectives,H2)?Io.hasNoDefaultLib!==Ws.hasNoDefaultLib?sn=1:Cn(Io.referencedFiles,Ws.referencedFiles,H2)?(Bs(Ws),Cn(Io.imports,Ws.imports,qt)&&Cn(Io.moduleAugmentations,Ws.moduleAugmentations,qt)?(Io.flags&12582912)!==(Ws.flags&12582912)?sn=1:Cn(Io.typeReferenceDirectives,Ws.typeReferenceDirectives,H2)||(sn=1):sn=1):sn=1:sn=1,Wi.push(Ws);else if(ju(Io.path))sn=1,Wi.push(Ws);else for(let zm of Io.ambientModuleNames)Kt.set(zm,Io.fileName);ci.push(Ws)}if(sn!==2)return sn;for(let Io of Wi){let ac=rFr(Io),Ws=Hd(ac,Io);($n??($n=new Map)).set(Io.path,Ws),G$(ac,Ws,Qv=>qe.getResolvedModule(Io,Qv.text,K2(Io,Qv)),k$)&&(sn=1);let Yg=Io.typeReferenceDirectives,zm=Gd(Yg,Io);(Pi??(Pi=new Map)).set(Io.path,zm),G$(Yg,zm,Qv=>qe.getResolvedTypeReferenceDirective(Io,Z6e(Qv),b_e(Qv,Io.impliedNodeFormat)),$ae)&&(sn=1)}if(sn!==2)return sn;if(D$(Tr,Le)||qe.resolvedLibReferences&&UC(qe.resolvedLibReferences,(Io,ac)=>cs(ac).actual!==Io.actual))return 1;if(xi.hasChangedAutomaticTypeDirectiveNames){if(xi.hasChangedAutomaticTypeDirectiveNames())return 1}else if(Pt=vke(Le,xi),!Cn(qe.getAutomaticTypeDirectiveNames(),Pt))return 1;Mt=qe.getMissingFilePaths(),w.assert(ci.length===qe.getSourceFiles().length);for(let Io of ci)br.set(Io.path,Io);return qe.getFilesByNameMap().forEach((Io,ac)=>{if(!Io){br.set(ac,Io);return}if(Io.path===ac){qe.isSourceFileFromExternalLibrary(Io)&&Bc.set(Io.path,!0);return}br.set(ac,br.get(Io.path))}),Tt=ci,Nt=qe.getFileIncludeReasons(),mr=qe.getFileProcessingDiagnostics(),Pt=qe.getAutomaticTypeDirectiveNames(),Vr=qe.getAutomaticTypeDirectiveResolutions(),ct=qe.sourceFileToPackageName,rn=qe.redirectTargetsMap,wt=qe.usesUriStyleNodeCoreModules,zr=qe.resolvedModules,bi=qe.resolvedTypeReferenceDirectiveNames,Hr=qe.resolvedLibReferences,Ns=qe.getCurrentPackagesMap(),2}function hf(rr){return{getCanonicalFileName:qo,getCommonSourceDirectory:Qe.getCommonSourceDirectory,getCompilerOptions:Qe.getCompilerOptions,getCurrentDirectory:()=>ir,getSourceFile:Qe.getSourceFile,getSourceFileByPath:Qe.getSourceFileByPath,getSourceFiles:Qe.getSourceFiles,isSourceFileFromExternalLibrary:I0,getResolvedProjectReferenceToRedirect:Ab,getProjectReferenceRedirect:X2,isSourceOfProjectReferenceRedirect:Kb,getSymlinkCache:fT,writeFile:rr||qc,isEmitBlocked:_f,readFile:Tr=>xi.readFile(Tr),fileExists:Tr=>{let xn=ri(Tr);return di(xn)?!0:Mt.has(xn)?!1:xi.fileExists(Tr)},realpath:Yi(xi,xi.realpath),useCaseSensitiveFileNames:()=>xi.useCaseSensitiveFileNames(),getBuildInfo:()=>{var Tr;return(Tr=Qe.getBuildInfo)==null?void 0:Tr.call(Qe)},getSourceFileFromReference:(Tr,xn)=>Qe.getSourceFileFromReference(Tr,xn),redirectTargetsMap:rn,getFileIncludeReasons:Qe.getFileIncludeReasons,createHash:Yi(xi,xi.createHash),getModuleResolutionCache:()=>Qe.getModuleResolutionCache(),trace:Yi(xi,xi.trace)}}function qc(rr,Tr,xn,ci,Wi,zs){xi.writeFile(rr,Tr,xn,ci,Wi,zs)}function Lc(rr){var Tr,xn;w.assert(!Le.outFile),(Tr=Qi)==null||Tr.push(Qi.Phase.Emit,"emitBuildInfo",{},!0),rs("beforeEmit");let ci=_6e(Vxt,hf(rr),void 0,Gxt,!1,!0);return rs("afterEmit"),Sc("Emit","beforeEmit","afterEmit"),(xn=Qi)==null||xn.pop(),ci}function jm(){return Pr}function xf(){return st}function I0(rr){return!!Bc.get(rr.path)}function kI(rr){if(!rr.isDeclarationFile)return!1;if(rr.hasNoDefaultLib)return!0;if(!Le.noLib)return!1;let Tr=xi.useCaseSensitiveFileNames()?um:op;return Le.lib?lr(Le.lib,xn=>Tr(rr.fileName,Hr.get(xn).actual)):Tr(rr.fileName,gl())}function o_(){return ht||(ht=WDt(Qe))}function Ug(rr,Tr,xn,ci,Wi,zs){var zi,mo;(zi=Qi)==null||zi.push(Qi.Phase.Emit,"emit",{path:rr?.path},!0);let vc=gr(()=>Yd(Qe,rr,Tr,xn,ci,Wi,zs));return(mo=Qi)==null||mo.pop(),vc}function _f(rr){return Hs.has(ri(rr))}function Yd(rr,Tr,xn,ci,Wi,zs,zi){if(!zi){let ac=Q6e(rr,Tr,xn,ci);if(ac)return ac}let mo=o_(),vc=mo.getEmitResolver(Le.outFile?void 0:Tr,ci,h6e(Wi,zi));rs("beforeEmit");let Io=mo.runWithCancellationToken(ci,()=>_6e(vc,hf(xn),Tr,Fxt(Le,zs,Wi),Wi,!1,zi));return rs("afterEmit"),Sc("Emit","beforeEmit","afterEmit"),Io}function qA(rr){return di(ri(rr))}function di(rr){return br.get(rr)||void 0}function uI(rr,Tr,xn){return iA(rr?Tr(rr,xn):Fr(Qe.getSourceFiles(),ci=>(xn&&xn.throwIfCancellationRequested(),Tr(ci,xn))))}function U0(rr,Tr){return uI(rr,tt,Tr)}function K0(rr,Tr){return uI(rr,mn,Tr)}function Xb(rr){var Tr;return rr?(Tr=Dr.perFile)==null?void 0:Tr.get(rr.path):Dr.allDiagnostics}function nf(rr,Tr){return Ri(rr,Tr)}function GI(rr){var Tr;if(q5(rr,Le,Qe))return v;let xn=ur().getDiagnostics(rr.fileName);return(Tr=rr.commentDirectives)!=null&&Tr.length?Xo(rr,rr.commentDirectives,xn).diagnostics:xn}function yt(rr,Tr){let xn=Qe.getCompilerOptions();return!rr||xn.outFile?sf(rr,Tr):uI(rr,Fm,Tr)}function tt(rr){return i0(rr)?(rr.additionalSyntacticDiagnostics||(rr.additionalSyntacticDiagnostics=Pg(rr)),vi(rr.additionalSyntacticDiagnostics,rr.parseDiagnostics)):rr.parseDiagnostics}function gr(rr){try{return rr()}catch(Tr){throw Tr instanceof os&&(ht=void 0),Tr}}function mn(rr,Tr){return vi(iGe(Ri(rr,Tr),Le),GI(rr))}function Ri(rr,Tr){return Jf(rr,Tr,Dr,Yo)}function Yo(rr,Tr){return gr(()=>{if(q5(rr,Le,Qe))return v;let xn=o_();w.assert(!!rr.bindDiagnostics);let Wi=(rr.scriptKind===1||rr.scriptKind===2)&&v6(rr,Le),zs=B5(rr,Le.checkJs),zi=rr.bindDiagnostics,mo=xn.getDiagnostics(rr,Tr);return zs&&(zi=Gt(zi,vc=>P6e.has(vc.code)),mo=Gt(mo,vc=>P6e.has(vc.code))),fi(rr,!zs,zi,mo,Wi?rr.jsDocDiagnostics:void 0)})}function fi(rr,Tr,...xn){var ci;let Wi=or(xn);if(!Tr||!((ci=rr.commentDirectives)!=null&&ci.length))return Wi;let{diagnostics:zs,directives:zi}=Xo(rr,rr.commentDirectives,Wi);for(let mo of zi.getUnusedExpectations())zs.push(ze(rr,mo.range,Z.Unused_ts_expect_error_directive));return zs}function Xo(rr,Tr,xn){let ci=rce(rr,Tr);return{diagnostics:xn.filter(zs=>ic(zs,ci)===-1),directives:ci}}function _c(rr,Tr){return gr(()=>o_().getSuggestionDiagnostics(rr,Tr))}function ic(rr,Tr){let{file:xn,start:ci}=rr;if(!xn)return-1;let Wi=Dc(xn),zs=Mp(Wi,ci).line-1;for(;zs>=0;){if(Tr.markUsed(zs))return zs;let zi=xn.text.slice(Wi[zs],Wi[zs+1]).trim();if(zi!==""&&!/^(\s*)\/\/(.*)$/.test(zi))return-1;zs--}return-1}function Pg(rr){return gr(()=>{let Tr=[];return xn(rr,rr),Q6(rr,xn,ci),Tr;function xn(mo,vc){switch(vc.kind){case 169:case 172:case 174:if(vc.questionToken===mo)return Tr.push(zi(mo,Z.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(vc.type===mo)return Tr.push(zi(mo,Z.Type_annotations_can_only_be_used_in_TypeScript_files)),"skip"}switch(mo.kind){case 273:if(mo.isTypeOnly)return Tr.push(zi(vc,Z._0_declarations_can_only_be_used_in_TypeScript_files,"import type")),"skip";break;case 278:if(mo.isTypeOnly)return Tr.push(zi(mo,Z._0_declarations_can_only_be_used_in_TypeScript_files,"export type")),"skip";break;case 276:case 281:if(mo.isTypeOnly)return Tr.push(zi(mo,Z._0_declarations_can_only_be_used_in_TypeScript_files,yy(mo)?"import...type":"export...type")),"skip";break;case 271:return Tr.push(zi(mo,Z.import_can_only_be_used_in_TypeScript_files)),"skip";case 277:if(mo.isExportEquals)return Tr.push(zi(mo,Z.export_can_only_be_used_in_TypeScript_files)),"skip";break;case 298:if(mo.token===119)return Tr.push(zi(mo,Z.implements_clauses_can_only_be_used_in_TypeScript_files)),"skip";break;case 264:let ac=vr(120);return w.assertIsDefined(ac),Tr.push(zi(mo,Z._0_declarations_can_only_be_used_in_TypeScript_files,ac)),"skip";case 267:let Ws=mo.flags&32?vr(145):vr(144);return w.assertIsDefined(Ws),Tr.push(zi(mo,Z._0_declarations_can_only_be_used_in_TypeScript_files,Ws)),"skip";case 265:return Tr.push(zi(mo,Z.Type_aliases_can_only_be_used_in_TypeScript_files)),"skip";case 176:case 174:case 262:return mo.body?void 0:(Tr.push(zi(mo,Z.Signature_declarations_can_only_be_used_in_TypeScript_files)),"skip");case 266:let nu=w.checkDefined(vr(94));return Tr.push(zi(mo,Z._0_declarations_can_only_be_used_in_TypeScript_files,nu)),"skip";case 235:return Tr.push(zi(mo,Z.Non_null_assertions_can_only_be_used_in_TypeScript_files)),"skip";case 234:return Tr.push(zi(mo.type,Z.Type_assertion_expressions_can_only_be_used_in_TypeScript_files)),"skip";case 238:return Tr.push(zi(mo.type,Z.Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files)),"skip";case 216:w.fail()}}function ci(mo,vc){if(t8e(vc)){let Io=be(vc.modifiers,FC);Io&&Tr.push(zi(Io,Z.Decorators_are_not_valid_here))}else if(IM(vc)&&vc.modifiers){let Io=ke(vc.modifiers,FC);if(Io>=0){if(Uc(vc)&&!Le.experimentalDecorators)Tr.push(zi(vc.modifiers[Io],Z.Decorators_are_not_valid_here));else if(Ec(vc)){let ac=ke(vc.modifiers,Ox);if(ac>=0){let Ws=ke(vc.modifiers,lte);if(Io>ac&&Ws>=0&&Io=0&&Io=0&&Tr.push(tg(zi(vc.modifiers[nu],Z.Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export),zi(vc.modifiers[Io],Z.Decorator_used_before_export_here)))}}}}}switch(vc.kind){case 263:case 231:case 174:case 176:case 177:case 178:case 218:case 262:case 219:if(mo===vc.typeParameters)return Tr.push(zs(mo,Z.Type_parameter_declarations_can_only_be_used_in_TypeScript_files)),"skip";case 243:if(mo===vc.modifiers)return Wi(vc.modifiers,vc.kind===243),"skip";break;case 172:if(mo===vc.modifiers){for(let Io of mo)Ag(Io)&&Io.kind!==126&&Io.kind!==129&&Tr.push(zi(Io,Z.The_0_modifier_can_only_be_used_in_TypeScript_files,vr(Io.kind)));return"skip"}break;case 169:if(mo===vc.modifiers&&lr(mo,Ag))return Tr.push(zs(mo,Z.Parameter_modifiers_can_only_be_used_in_TypeScript_files)),"skip";break;case 213:case 214:case 233:case 285:case 286:case 215:if(mo===vc.typeArguments)return Tr.push(zs(mo,Z.Type_arguments_can_only_be_used_in_TypeScript_files)),"skip";break}}function Wi(mo,vc){for(let Io of mo)switch(Io.kind){case 87:if(vc)continue;case 125:case 123:case 124:case 148:case 138:case 128:case 164:case 103:case 147:Tr.push(zi(Io,Z.The_0_modifier_can_only_be_used_in_TypeScript_files,vr(Io.kind)));break;case 126:case 95:case 90:case 129:}}function zs(mo,vc,...Io){let ac=mo.pos;return Cm(rr,ac,mo.end-ac,vc,...Io)}function zi(mo,vc,...Io){return Wb(rr,mo,vc,...Io)}})}function sf(rr,Tr){return Jf(rr,Tr,jt,qC)}function qC(rr,Tr){return gr(()=>{let xn=o_().getEmitResolver(rr,Tr);return xxt(hf(oc),xn,rr)||v})}function Jf(rr,Tr,xn,ci){var Wi;let zs=rr?(Wi=xn.perFile)==null?void 0:Wi.get(rr.path):xn.allDiagnostics;if(zs)return zs;let zi=ci(rr,Tr);return rr?(xn.perFile||(xn.perFile=new Map)).set(rr.path,zi):xn.allDiagnostics=zi,zi}function Fm(rr,Tr){return rr.isDeclarationFile?[]:sf(rr,Tr)}function of(){return iA(vi(ur().getGlobalDiagnostics(),Zm()))}function Zm(){if(!Le.configFile)return v;let rr=ur().getDiagnostics(Le.configFile.fileName);return em(Tr=>{rr=vi(rr,ur().getDiagnostics(Tr.sourceFile.fileName))}),rr}function Jb(){return lt.length?iA(o_().getGlobalDiagnostics().slice()):v}function FI(){return je||v}function $C(rr,Tr,xn,ci){JI(Mc(rr),Tr,xn,void 0,ci)}function H2(rr,Tr){return rr.fileName===Tr.fileName}function qt(rr,Tr){return rr.kind===80?Tr.kind===80&&rr.escapedText===Tr.escapedText:Tr.kind===11&&rr.text===Tr.text}function Fn(rr,Tr){let xn=_e.createStringLiteral(rr),ci=_e.createImportDeclaration(void 0,void 0,xn);return rM(ci,2),GA(xn,ci),GA(ci,Tr),xn.flags&=-17,ci.flags&=-17,xn}function Bs(rr){if(rr.imports)return;let Tr=i0(rr),xn=hm(rr),ci,Wi,zs;if(Tr||!rr.isDeclarationFile&&(VE(Le)||hm(rr))){Le.importHelpers&&(ci=[Fn(Dx,rr)]);let Io=lle(cle(Le,rr),Le);Io&&(ci||(ci=[])).push(Fn(Io,rr))}for(let Io of rr.statements)zi(Io,!1);(rr.flags&4194304||Tr)&&mo(rr),rr.imports=ci||v,rr.moduleAugmentations=Wi||v,rr.ambientModuleNames=zs||v;return;function zi(Io,ac){if(Q3(Io)){let Ws=k5(Io);Ws&&Eu(Ws)&&Ws.text&&(!ac||!Ul(Ws.text))&&(yN(Io,!1),ci=Yr(ci,Ws),!wt&&jn===0&&!rr.isDeclarationFile&&(wt=uc(Ws.text,"node:")))}else if(mC(Io)&&Yf(Io)&&(ac||ya(Io,128)||rr.isDeclarationFile)){Io.name.parent=Io;let Ws=N2(Io.name);if(xn||ac&&!Ul(Ws))(Wi||(Wi=[])).push(Io.name);else if(!ac){rr.isDeclarationFile&&(zs||(zs=[])).push(Ws);let nu=Io.body;if(nu)for(let Yg of nu.statements)zi(Yg,!0)}}}function mo(Io){let ac=/import|require/g;for(;ac.exec(Io.text)!==null;){let Ws=vc(Io,ac.lastIndex);if(Tr&&H0(Ws,!0))yN(Ws,!1),ci=Yr(ci,Ws.arguments[0]);else if(fC(Ws)&&Ws.arguments.length>=1&&JA(Ws.arguments[0]))yN(Ws,!1),ci=Yr(ci,Ws.arguments[0]);else if(n_(Ws))yN(Ws,!1),ci=Yr(ci,Ws.argument.literal);else if(Tr&&DN(Ws)){let nu=k5(Ws);nu&&Eu(nu)&&nu.text&&(yN(Ws,!1),ci=Yr(ci,nu))}}}function vc(Io,ac){let Ws=Io,nu=Yg=>{if(Yg.pos<=ac&&(acAd(Wi,zi))){xn&&(hN(Wi)?xn(Z.File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option,rr):xn(Z.File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1,rr,"'"+or(ni).join("', '")+"'"));return}let zs=Tr(rr);if(xn)if(zs)pP(ci)&&Wi===xi.getCanonicalFileName(di(ci.file).fileName)&&xn(Z.A_file_cannot_have_a_reference_to_itself);else{let zi=X2(rr);zi?xn(Z.Output_file_0_has_not_been_built_from_source_file_1,zi,rr):xn(Z.File_0_not_found,rr)}return zs}else{let Wi=Le.allowNonTsExtensions&&Tr(rr);if(Wi)return Wi;if(xn&&Le.allowNonTsExtensions){xn(Z.File_0_not_found,rr);return}let zs=X(ni[0],zi=>Tr(rr+zi));return xn&&!zs&&xn(Z.Could_not_resolve_the_path_0_with_the_extensions_Colon_1,rr,"'"+or(ni).join("', '")+"'"),zs}}function JI(rr,Tr,xn,ci,Wi){OA(rr,zs=>_C(zs,Tr,xn,Wi,ci),(zs,...zi)=>ad(void 0,Wi,zs,zi),Wi)}function Em(rr,Tr){return JI(rr,!1,!1,void 0,Tr)}function np(rr,Tr,xn){!pP(xn)&&lr(Nt.get(Tr.path),pP)?ad(Tr,xn,Z.Already_included_file_name_0_differs_from_file_name_1_only_in_casing,[Tr.fileName,rr]):ad(Tr,xn,Z.File_name_0_differs_from_already_included_file_name_1_only_in_casing,[rr,Tr.fileName])}function Xd(rr,Tr,xn,ci,Wi,zs,zi){var mo;let vc=cP.createRedirectedSourceFile({redirectTarget:rr,unredirected:Tr});return vc.fileName=xn,vc.path=ci,vc.resolvedPath=Wi,vc.originalFileName=zs,vc.packageJsonLocations=(mo=zi.packageJsonLocations)!=null&&mo.length?zi.packageJsonLocations:void 0,vc.packageJsonScope=zi.packageJsonScope,Bc.set(ci,jn>0),vc}function _C(rr,Tr,xn,ci,Wi){var zs,zi;(zs=Qi)==null||zs.push(Qi.Phase.Program,"findSourceFile",{fileName:rr,isDefaultLib:Tr||void 0,fileIncludeKind:So[ci.kind]});let mo=pT(rr,Tr,xn,ci,Wi);return(zi=Qi)==null||zi.pop(),mo}function Ub(rr,Tr,xn,ci){let Wi=nGe(Qc(rr,ir),Tr?.getPackageJsonInfoCache(),xn,ci),zs=sA(ci),zi=m6(ci);return typeof Wi=="object"?{...Wi,languageVersion:zs,setExternalModuleIndicator:zi,jsDocParsingMode:xn.jsDocParsingMode}:{languageVersion:zs,impliedNodeFormat:Wi,setExternalModuleIndicator:zi,jsDocParsingMode:xn.jsDocParsingMode}}function pT(rr,Tr,xn,ci,Wi){var zs;let zi=ri(rr);if(Pn){let Ws=gD(zi);if(!Ws&&xi.realpath&&Le.preserveSymlinks&&Gh(rr)&&rr.includes(Kx)){let nu=ri(xi.realpath(rr));nu!==zi&&(Ws=gD(nu))}if(Ws){let nu=Ya(Ws)?_C(Ws,Tr,xn,ci,Wi):void 0;return nu&&gb(nu,zi,rr,void 0),nu}}let mo=rr;if(br.has(zi)){let Ws=br.get(zi),nu=Y2(Ws||void 0,ci,!0);if(Ws&&nu&&Le.forceConsistentCasingInFileNames!==!1){let Yg=Ws.fileName;ri(Yg)!==ri(rr)&&(rr=X2(rr)||rr);let C0=wS(Yg,ir),Qv=wS(rr,ir);C0!==Qv&&np(rr,Ws,ci)}return Ws&&Bc.get(Ws.path)&&jn===0?(Bc.set(Ws.path,!1),Le.noResolve||(J2(Ws,Tr),rt(Ws)),Le.noLib||Zs(Ws),xs.set(Ws.path,!1),Ja(Ws)):Ws&&xs.get(Ws.path)&&jnad(void 0,ci,Z.Cannot_read_file_0_Colon_1,[rr,Ws]),ar);if(Wi){let Ws=JR(Wi),nu=en.get(Ws);if(nu){let Yg=Xd(nu,ac,rr,zi,ri(rr),mo,Io);return rn.add(nu.path,rr),gb(Yg,zi,rr,vc),Y2(Yg,ci,!1),ct.set(zi,E5(Wi)),dt.push(Yg),Yg}else ac&&(en.set(Ws,ac),ct.set(zi,E5(Wi)))}if(gb(ac,zi,rr,vc),ac){if(Bc.set(zi,jn>0),ac.fileName=rr,ac.path=zi,ac.resolvedPath=ri(rr),ac.originalFileName=mo,ac.packageJsonLocations=(zs=Io.packageJsonLocations)!=null&&zs.length?Io.packageJsonLocations:void 0,ac.packageJsonScope=Io.packageJsonScope,Y2(ac,ci,!1),xi.useCaseSensitiveFileNames()){let Ws=uf(zi),nu=_r.get(Ws);nu?np(rr,nu,ci):_r.set(Ws,ac)}Wl=Wl||ac.hasNoDefaultLib&&!xn,Le.noResolve||(J2(ac,Tr),rt(ac)),Le.noLib||Zs(ac),Ja(ac),Tr?It.push(ac):dt.push(ac),(Lt??(Lt=new Set)).add(ac.path)}return ac}function Y2(rr,Tr,xn){return rr&&(!xn||!pP(Tr)||!Lt?.has(Tr.file))?(Nt.add(rr.path,Tr),!0):!1}function gb(rr,Tr,xn,ci){ci?(WB(xn,ci,rr),WB(xn,Tr,rr||!1)):WB(xn,Tr,rr)}function WB(rr,Tr,xn){br.set(Tr,xn),xn!==void 0?Mt.delete(Tr):Mt.set(Tr,rr)}function X2(rr){let Tr=lD(rr);return Tr&&uD(Tr,rr)}function lD(rr){if(!(!Pr||!Pr.length||Gh(rr)||Ad(rr,".json")))return Ab(rr)}function uD(rr,Tr){let xn=rr.commandLine.options.outFile;return xn?NG(xn,".d.ts"):Tte(Tr,rr.commandLine,!xi.useCaseSensitiveFileNames())}function Ab(rr){cr===void 0&&(cr=new Map,em(xn=>{ri(Le.configFilePath)!==xn.sourceFile.path&&xn.commandLine.fileNames.forEach(ci=>cr.set(ri(ci),xn.sourceFile.path))}));let Tr=cr.get(ri(rr));return Tr&&LN(Tr)}function em(rr){return L6e(Pr,rr)}function gD(rr){if(Gh(rr))return kn===void 0&&(kn=new Map,em(Tr=>{let xn=Tr.commandLine.options.outFile;if(xn){let ci=NG(xn,".d.ts");kn.set(ri(ci),!0)}else{let ci=su(()=>z6(Tr.commandLine,!xi.useCaseSensitiveFileNames()));X(Tr.commandLine.fileNames,Wi=>{if(!Gh(Wi)&&!Ad(Wi,".json")){let zs=Tte(Wi,Tr.commandLine,!xi.useCaseSensitiveFileNames(),ci);kn.set(ri(zs),Wi)}})}})),kn.get(rr)}function Kb(rr){return Pn&&!!Ab(rr)}function LN(rr){if(ti)return ti.get(rr)||void 0}function J2(rr,Tr){X(rr.referencedFiles,(xn,ci)=>{JI(S6e(xn.fileName,rr.fileName),Tr,!1,void 0,{kind:4,file:rr.path,index:ci})})}function rt(rr){let Tr=rr.typeReferenceDirectives;if(!Tr.length)return;let xn=Pi?.get(rr.path)||Gd(Tr,rr),ci=yte();(bi??(bi=new Map)).set(rr.path,ci);for(let Wi=0;Wi{let ci=tFr(Tr);ci?$C(Jn(ci),!0,!0,{kind:7,file:rr.path,index:xn}):(mr||(mr=[])).push({kind:0,reason:{kind:7,file:rr.path,index:xn}})})}function qo(rr){return xi.getCanonicalFileName(rr)}function Ja(rr){var Tr;if(Bs(rr),rr.imports.length||rr.moduleAugmentations.length){let xn=rFr(rr),ci=$n?.get(rr.path)||Hd(xn,rr);w.assert(ci.length===xn.length);let Wi=((Tr=sa(rr))==null?void 0:Tr.commandLine.options)||Le,zs=yte();(zr??(zr=new Map)).set(rr.path,zs);for(let zi=0;zigi,C0=Yg&&!M6e(Wi,mo,rr)&&!Wi.noResolve&&zihm(zi)&&!zi.isDeclarationFile);if(Le.isolatedModules||Le.verbatimModuleSyntax)Le.module===0&&Tr<2&&Le.isolatedModules&&ip(Z.Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher,"isolatedModules","target"),Le.preserveConstEnums===!1&&ip(Z.Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled,Le.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules","preserveConstEnums");else if(xn&&Tr<2&&Le.module===0){let zi=Mi(xn,typeof xn.externalModuleIndicator=="boolean"?xn:xn.externalModuleIndicator);_s.add(Cm(xn,zi.start,zi.length,Z.Cannot_use_imports_exports_or_module_augmentations_when_module_is_none))}if(rr&&!Le.emitDeclarationOnly){if(Le.module&&!(Le.module===2||Le.module===4))ip(Z.Only_amd_and_system_modules_are_supported_alongside_0,"outFile","module");else if(Le.module===void 0&&xn){let zi=Mi(xn,typeof xn.externalModuleIndicator=="boolean"?xn:xn.externalModuleIndicator);_s.add(Cm(xn,zi.start,zi.length,Z.Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system,"outFile"))}}if(uV(Le)&&(o0(Le)===1?ip(Z.Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic,"resolveJsonModule"):sle(Le)||ip(Z.Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd,"resolveJsonModule","module")),Le.outDir||Le.rootDir||Le.sourceRoot||Le.mapRoot||WE(Le)&&Le.declarationDir){let zi=_u();Le.outDir&&zi===""&&Tt.some(mo=>t_(mo.fileName)>1)&&ip(Z.Cannot_find_the_common_subdirectory_path_for_the_input_files,"outDir")}Le.checkJs&&!wG(Le)&&ip(Z.Option_0_cannot_be_specified_without_specifying_option_1,"checkJs","allowJs"),Le.emitDeclarationOnly&&(WE(Le)||ip(Z.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"emitDeclarationOnly","declaration","composite"),Le.noEmit&&ip(Z.Option_0_cannot_be_specified_with_option_1,"emitDeclarationOnly","noEmit")),Le.noCheck&&Le.noEmit&&ip(Z.Option_0_cannot_be_specified_with_option_1,"noCheck","noEmit"),Le.emitDecoratorMetadata&&!Le.experimentalDecorators&&ip(Z.Option_0_cannot_be_specified_without_specifying_option_1,"emitDecoratorMetadata","experimentalDecorators"),Le.jsxFactory?(Le.reactNamespace&&ip(Z.Option_0_cannot_be_specified_with_option_1,"reactNamespace","jsxFactory"),(Le.jsx===4||Le.jsx===5)&&ip(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxFactory",qhe.get(""+Le.jsx)),H6(Le.jsxFactory,Tr)||Z_("jsxFactory",Z.Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name,Le.jsxFactory)):Le.reactNamespace&&!Ke(Le.reactNamespace,Tr)&&Z_("reactNamespace",Z.Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier,Le.reactNamespace),Le.jsxFragmentFactory&&(Le.jsxFactory||ip(Z.Option_0_cannot_be_specified_without_specifying_option_1,"jsxFragmentFactory","jsxFactory"),(Le.jsx===4||Le.jsx===5)&&ip(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxFragmentFactory",qhe.get(""+Le.jsx)),H6(Le.jsxFragmentFactory,Tr)||Z_("jsxFragmentFactory",Z.Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name,Le.jsxFragmentFactory)),Le.reactNamespace&&(Le.jsx===4||Le.jsx===5)&&ip(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"reactNamespace",qhe.get(""+Le.jsx)),Le.jsxImportSource&&Le.jsx===2&&ip(Z.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxImportSource",qhe.get(""+Le.jsx));let ci=D_(Le);Le.verbatimModuleSyntax&&(ci===2||ci===3||ci===4)&&ip(Z.Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System,"verbatimModuleSyntax"),Le.allowImportingTsExtensions&&!(Le.noEmit||Le.emitDeclarationOnly)&&Z_("allowImportingTsExtensions",Z.Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set);let Wi=o0(Le);if(Le.resolvePackageJsonExports&&!j5(Wi)&&ip(Z.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"resolvePackageJsonExports"),Le.resolvePackageJsonImports&&!j5(Wi)&&ip(Z.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"resolvePackageJsonImports"),Le.customConditions&&!j5(Wi)&&ip(Z.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"customConditions"),Wi===100&&!ile(ci)&&ci!==200&&Z_("moduleResolution",Z.Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later,"bundler"),qh[ci]&&100<=ci&&ci<=199&&!(3<=Wi&&Wi<=99)){let zi=qh[ci];Z_("moduleResolution",Z.Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1,zi,zi)}else if(xb[Wi]&&3<=Wi&&Wi<=99&&!(100<=ci&&ci<=199)){let zi=xb[Wi];Z_("module",Z.Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1,zi,zi)}if(!Le.noEmit&&!Le.suppressOutputPathCheck){let zi=hf(),mo=new Set;f6e(zi,vc=>{Le.emitDeclarationOnly||zs(vc.jsFilePath,mo),zs(vc.declarationFilePath,mo)})}function zs(zi,mo){if(zi){let vc=ri(zi);if(br.has(vc)){let ac;Le.configFilePath||(ac=ou(void 0,Z.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)),ac=ou(ac,Z.Cannot_write_file_0_because_it_would_overwrite_input_file,zi),GV(zi,ele(ac))}let Io=xi.useCaseSensitiveFileNames()?vc:uf(vc);mo.has(Io)?GV(zi,If(Z.Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files,zi)):mo.add(Io)}}}function Rs(){let rr=Le.ignoreDeprecations;if(rr){if(rr==="5.0")return new Dn(rr);it()}return Dn.zero}function yc(rr,Tr,xn,ci,Wi){let zs=new Dn(rr),zi=new Dn(xn),mo=new Dn(nt||m),vc=Rs(),Io=zi.compareTo(mo)!==1,ac=!Io&&vc.compareTo(zs)===-1;(Io||ac)&&Wi((Ws,nu,Yg)=>{Io?nu===void 0?ci(Ws,nu,Yg,Z.Option_0_has_been_removed_Please_remove_it_from_your_configuration,Ws):ci(Ws,nu,Yg,Z.Option_0_1_has_been_removed_Please_remove_it_from_your_configuration,Ws,nu):nu===void 0?ci(Ws,nu,Yg,Z.Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprecations_Colon_2_to_silence_this_error,Ws,Tr,rr):ci(Ws,nu,Yg,Z.Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDeprecations_Colon_3_to_silence_this_error,Ws,nu,Tr,rr)})}function Cu(){function rr(Tr,xn,ci,Wi,...zs){if(ci){let zi=ou(void 0,Z.Use_0_instead,ci),mo=ou(zi,Wi,...zs);iw(!xn,Tr,void 0,mo)}else iw(!xn,Tr,void 0,Wi,...zs)}yc("5.0","5.5","6.0",rr,Tr=>{Le.target===0&&Tr("target","ES3"),Le.noImplicitUseStrict&&Tr("noImplicitUseStrict"),Le.keyofStringsOnly&&Tr("keyofStringsOnly"),Le.suppressExcessPropertyErrors&&Tr("suppressExcessPropertyErrors"),Le.suppressImplicitAnyIndexErrors&&Tr("suppressImplicitAnyIndexErrors"),Le.noStrictGenericChecks&&Tr("noStrictGenericChecks"),Le.charset&&Tr("charset"),Le.out&&Tr("out",void 0,"outFile"),Le.importsNotUsedAsValues&&Tr("importsNotUsedAsValues",void 0,"verbatimModuleSyntax"),Le.preserveValueImports&&Tr("preserveValueImports",void 0,"verbatimModuleSyntax")})}function Pl(rr,Tr,xn){function ci(Wi,zs,zi,mo,...vc){j0(Tr,xn,mo,...vc)}yc("5.0","5.5","6.0",ci,Wi=>{rr.prepend&&Wi("prepend")})}function Bu(rr,Tr,xn,ci){let Wi,zs=rr&&Nt.get(rr.path),zi,mo,vc=pP(Tr)?Tr:void 0,Io,ac,Ws=rr&&kt?.get(rr.path),nu;Ws?(Ws.fileIncludeReasonDetails?(Wi=new Set(zs),zs?.forEach(Qv)):zs?.forEach(C0),ac=Ws.redirectInfo):(zs?.forEach(C0),ac=rr&&i7e(rr)),Tr&&C0(Tr);let Yg=Wi?.size!==zs?.length;vc&&Wi?.size===1&&(Wi=void 0),Wi&&Ws&&(Ws.details&&!Yg?nu=ou(Ws.details,xn,...ci||v):Ws.fileIncludeReasonDetails&&(Yg?JZ()?zi=Yr(Ws.fileIncludeReasonDetails.next.slice(0,zs.length),zi[0]):zi=[...Ws.fileIncludeReasonDetails.next,zi[0]]:JZ()?zi=Ws.fileIncludeReasonDetails.next.slice(0,zs.length):Io=Ws.fileIncludeReasonDetails)),nu||(Io||(Io=Wi&&ou(zi,Z.The_file_is_in_the_program_because_Colon)),nu=ou(ac?Io?[Io,...ac]:ac:Io,xn,...ci||v)),rr&&(Ws?(!Ws.fileIncludeReasonDetails||!Yg&&Io)&&(Ws.fileIncludeReasonDetails=Io):(kt??(kt=new Map)).set(rr.path,Ws={fileIncludeReasonDetails:Io,redirectInfo:ac}),!Ws.details&&!Yg&&(Ws.details=nu.next));let zm=vc&&hue(Qe,vc);return zm&&Rte(zm)?Z8(zm.file,zm.pos,zm.end-zm.pos,nu,mo):ele(nu,mo);function C0(Mv){Wi?.has(Mv)||((Wi??(Wi=new Set)).add(Mv),(zi??(zi=[])).push(a7e(Qe,Mv)),Qv(Mv))}function Qv(Mv){!vc&&pP(Mv)?vc=Mv:vc!==Mv&&(mo=Yr(mo,gI(Mv)))}function JZ(){var Mv;return((Mv=Ws.fileIncludeReasonDetails.next)==null?void 0:Mv.length)!==zs?.length}}function ad(rr,Tr,xn,ci){(mr||(mr=[])).push({kind:1,file:rr&&rr.path,fileProcessingReason:Tr,diagnostic:xn,args:ci})}function oA(rr,Tr,xn){Pu.push({file:rr,diagnostic:Tr,args:xn})}function gI(rr){let Tr=Zt?.get(rr);return Tr===void 0&&(Zt??(Zt=new Map)).set(rr,Tr=PB(rr)??!1),Tr||void 0}function PB(rr){if(pP(rr)){let ci=hue(Qe,rr),Wi;switch(rr.kind){case 3:Wi=Z.File_is_included_via_import_here;break;case 4:Wi=Z.File_is_included_via_reference_here;break;case 5:Wi=Z.File_is_included_via_type_library_reference_here;break;case 7:Wi=Z.File_is_included_via_library_reference_here;break;default:w.assertNever(rr)}return Rte(ci)?Cm(ci.file,ci.pos,ci.end-ci.pos,Wi):void 0}if(!Le.configFile)return;let Tr,xn;switch(rr.kind){case 0:if(!Le.configFile.configFileSpecs)return;let ci=Qc(lt[rr.index],ir),Wi=s7e(Qe,ci);if(Wi){Tr=dce(Le.configFile,"files",Wi),xn=Z.File_is_matched_by_files_list_specified_here;break}let zs=o7e(Qe,ci);if(!zs||!Ya(zs))return;Tr=dce(Le.configFile,"include",zs),xn=Z.File_is_matched_by_include_pattern_specified_here;break;case 1:case 2:let zi=w.checkDefined(Pr?.[rr.index]),mo=tGe(st,Pr,(nu,Yg,zm)=>nu===zi?{sourceFile:Yg?.sourceFile||Le.configFile,index:zm}:void 0);if(!mo)return;let{sourceFile:vc,index:Io}=mo,ac=j$(vc,"references",nu=>Cf(nu.initializer)?nu.initializer:void 0);return ac&&ac.elements.length>Io?Wb(vc,ac.elements[Io],rr.kind===2?Z.File_is_output_from_referenced_project_specified_here:Z.File_is_source_from_referenced_project_specified_here):void 0;case 8:if(!Le.types)return;Tr=U2("types",rr.typeReference),xn=Z.File_is_entry_point_of_type_library_specified_here;break;case 6:if(rr.index!==void 0){Tr=U2("lib",Le.lib[rr.index]),xn=Z.File_is_library_specified_here;break}let Ws=Pee(sA(Le));Tr=Ws?OB("target",Ws):void 0,xn=Z.File_is_default_library_for_target_specified_here;break;default:w.assertNever(rr)}return Tr&&Wb(Le.configFile,Tr,xn)}function nw(){let rr=Le.suppressOutputPathCheck?void 0:LZ(Le);tGe(st,Pr,(Tr,xn,ci)=>{let Wi=(xn?xn.commandLine.projectReferences:st)[ci],zs=xn&&xn.sourceFile;if(Pl(Wi,zs,ci),!Tr){j0(zs,ci,Z.File_0_not_found,Wi.path);return}let zi=Tr.commandLine.options;(!zi.composite||zi.noEmit)&&(xn?xn.commandLine.fileNames:lt).length&&(zi.composite||j0(zs,ci,Z.Referenced_project_0_must_have_setting_composite_Colon_true,Wi.path),zi.noEmit&&j0(zs,ci,Z.Referenced_project_0_may_not_disable_emit,Wi.path)),!xn&&rr&&rr===LZ(zi)&&(j0(zs,ci,Z.Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1,rr,Wi.path),Hs.set(ri(rr),!0))})}function AD(rr,Tr,xn,...ci){let Wi=!0;$x(zs=>{ru(zs.initializer)&&LX(zs.initializer,rr,zi=>{let mo=zi.initializer;Cf(mo)&&mo.elements.length>Tr&&(_s.add(Wb(Le.configFile,mo.elements[Tr],xn,...ci)),Wi=!1)})}),Wi&&XZ(xn,...ci)}function qx(rr,Tr,xn,...ci){let Wi=!0;$x(zs=>{ru(zs.initializer)&&Pv(zs.initializer,rr,Tr,void 0,xn,...ci)&&(Wi=!1)}),Wi&&XZ(xn,...ci)}function YZ(rr,Tr){return LX(HG(),rr,Tr)}function $x(rr){return YZ("paths",rr)}function OB(rr,Tr){return YZ(rr,xn=>Eu(xn.initializer)&&xn.initializer.text===Tr?xn.initializer:void 0)}function U2(rr,Tr){let xn=HG();return xn&&LRe(xn,rr,Tr)}function ip(rr,Tr,xn,ci){iw(!0,Tr,xn,rr,Tr,xn,ci)}function Z_(rr,Tr,...xn){iw(!1,rr,void 0,Tr,...xn)}function j0(rr,Tr,xn,...ci){let Wi=j$(rr||Le.configFile,"references",zs=>Cf(zs.initializer)?zs.initializer:void 0);Wi&&Wi.elements.length>Tr?_s.add(Wb(rr||Le.configFile,Wi.elements[Tr],xn,...ci)):_s.add(If(xn,...ci))}function iw(rr,Tr,xn,ci,...Wi){let zs=HG();(!zs||!Pv(zs,rr,Tr,xn,ci,...Wi))&&XZ(ci,...Wi)}function XZ(rr,...Tr){let xn=kV();xn?"messageText"in rr?_s.add(ZS(Le.configFile,xn.name,rr)):_s.add(Wb(Le.configFile,xn.name,rr,...Tr)):"messageText"in rr?_s.add(ele(rr)):_s.add(If(rr,...Tr))}function HG(){if(za===void 0){let rr=kV();za=rr&&$s(rr.initializer,ru)||!1}return za||void 0}function kV(){return nc===void 0&&(nc=LX(V8(Le.configFile),"compilerOptions",vl)||!1),nc||void 0}function Pv(rr,Tr,xn,ci,Wi,...zs){let zi=!1;return LX(rr,xn,mo=>{"messageText"in Wi?_s.add(ZS(Le.configFile,Tr?mo.name:mo.initializer,Wi)):_s.add(Wb(Le.configFile,Tr?mo.name:mo.initializer,Wi,...zs)),zi=!0},ci),zi}function GV(rr,Tr){Hs.set(ri(rr),!0),_s.add(Tr)}function Ov(rr){if(Le.noEmit)return!1;let Tr=ri(rr);if(di(Tr))return!1;let xn=Le.outFile;if(xn)return EP(Tr,xn)||EP(Tr,a0(xn)+".d.ts");if(Le.declarationDir&&vg(Le.declarationDir,Tr,ir,!xi.useCaseSensitiveFileNames()))return!0;if(Le.outDir)return vg(Le.outDir,Tr,ir,!xi.useCaseSensitiveFileNames());if(fp(Tr,r4)||Gh(Tr)){let ci=a0(Tr);return!!di(ci+".ts")||!!di(ci+".tsx")}return!1}function EP(rr,Tr){return dh(rr,Tr,ir,!xi.useCaseSensitiveFileNames())===0}function fT(){return xi.getSymlinkCache?xi.getSymlinkCache():(St||(St=ihe(ir,qo)),Tt&&!St.hasProcessedResolutions()&&St.setSymlinksFromResolutions(On,Qn,Vr),St)}function K2(rr,Tr){var xn;let ci=((xn=sa(rr))==null?void 0:xn.commandLine.options)||Le;return k6e(rr,Tr,ci)}function YG(rr,Tr){return K2(rr,S_e(rr,Tr))}}function Y7i(n){let c,u=n.compilerHost.fileExists,d=n.compilerHost.directoryExists,I=n.compilerHost.getDirectories,h=n.compilerHost.realpath;if(!n.useSourceOfProjectReferenceRedirect)return{onProgramCreateComplete:oc,fileExists:N};n.compilerHost.fileExists=N;let b;return d&&(b=n.compilerHost.directoryExists=re=>d.call(n.compilerHost,re)?(Q(re),!0):n.getResolvedProjectReferences()?(c||(c=new Set,n.forEachResolvedProjectReference(ue=>{let Ae=ue.commandLine.options.outFile;if(Ae)c.add(oa(n.toPath(Ae)));else{let de=ue.commandLine.options.declarationDir||ue.commandLine.options.outDir;de&&c.add(n.toPath(de))}})),te(re,!1)):!1),I&&(n.compilerHost.getDirectories=re=>!n.getResolvedProjectReferences()||d&&d.call(n.compilerHost,re)?I.call(n.compilerHost,re):[]),h&&(n.compilerHost.realpath=re=>{var ue;return((ue=n.getSymlinkCache().getSymlinkedFiles())==null?void 0:ue.get(n.toPath(re)))||h.call(n.compilerHost,re)}),{onProgramCreateComplete:R,fileExists:N,directoryExists:b};function R(){n.compilerHost.fileExists=u,n.compilerHost.directoryExists=d,n.compilerHost.getDirectories=I}function N(re){return u.call(n.compilerHost,re)?!0:!n.getResolvedProjectReferences()||!Gh(re)?!1:te(re,!0)}function V(re){let ue=n.getSourceOfProjectReferenceRedirect(n.toPath(re));return ue!==void 0?Ya(ue)?u.call(n.compilerHost,ue):!0:void 0}function P(re){let ue=n.toPath(re),Ae=`${ue}${$u}`;return eT(c,de=>ue===de||uc(de,Ae)||uc(ue,`${de}/`))}function Q(re){var ue;if(!n.getResolvedProjectReferences()||w6(re)||!h||!re.includes(Kx))return;let Ae=n.getSymlinkCache(),de=dA(n.toPath(re));if((ue=Ae.getSymlinkedDirectories())!=null&&ue.has(de))return;let Be=Mc(h.call(n.compilerHost,re)),Fe;if(Be===re||(Fe=dA(n.toPath(Be)))===de){Ae.setSymlinkedDirectory(de,!1);return}Ae.setSymlinkedDirectory(re,{real:dA(Be),realPath:Fe})}function te(re,ue){var Ae;let de=ue?De=>V(De):De=>P(De),Be=de(re);if(Be!==void 0)return Be;let Fe=n.getSymlinkCache(),Ne=Fe.getSymlinkedDirectories();if(!Ne)return!1;let Me=n.toPath(re);return Me.includes(Kx)?ue&&((Ae=Fe.getSymlinkedFiles())!=null&&Ae.has(Me))?!0:ae(Ne.entries(),([De,lt])=>{if(!lt||!uc(Me,De))return;let Le=de(Me.replace(De,lt.realPath));if(ue&&Le){let je=Qc(re,n.compilerHost.getCurrentDirectory());Fe.setSymlinkedFile(Me,`${lt.real}${je.replace(new RegExp(De,"i"),"")}`)}return Le})||!1:!1}}var O6e={diagnostics:v,sourceMaps:void 0,emittedFiles:void 0,emitSkipped:!0};function Q6e(n,c,u,d){let I=n.getCompilerOptions();if(I.noEmit)return n.getSemanticDiagnostics(c,d),c||I.outFile?O6e:n.emitBuildInfo(u,d);if(!I.noEmitOnError)return;let h=[...n.getOptionsDiagnostics(d),...n.getSyntacticDiagnostics(c,d),...n.getGlobalDiagnostics(d),...n.getSemanticDiagnostics(c,d)];if(h.length===0&&WE(n.getCompilerOptions())&&(h=n.getDeclarationDiagnostics(void 0,d)),!h.length)return;let b;if(!c&&!I.outFile){let R=n.emitBuildInfo(u,d);R.diagnostics&&(h=[...h,...R.diagnostics]),b=R.emittedFiles}return{diagnostics:h,sourceMaps:void 0,emittedFiles:b,emitSkipped:!0}}function iGe(n,c){return Gt(n,u=>!u.skippedOn||!c[u.skippedOn])}function sGe(n,c=n){return{fileExists:u=>c.fileExists(u),readDirectory(u,d,I,h,b){return w.assertIsDefined(c.readDirectory,"'CompilerHost.readDirectory' must be implemented to correctly process 'projectReferences'"),c.readDirectory(u,d,I,h,b)},readFile:u=>c.readFile(u),directoryExists:Yi(c,c.directoryExists),getDirectories:Yi(c,c.getDirectories),realpath:Yi(c,c.realpath),useCaseSensitiveFileNames:n.useCaseSensitiveFileNames(),getCurrentDirectory:()=>n.getCurrentDirectory(),onUnRecoverableConfigFileDiagnostic:n.onUnRecoverableConfigFileDiagnostic||wI,trace:n.trace?u=>n.trace(u):void 0}}function Dte(n){return I7e(n.path)}function M6e(n,{extension:c},{isDeclarationFile:u}){switch(c){case".ts":case".d.ts":case".mts":case".d.mts":case".cts":case".d.cts":return;case".tsx":return d();case".jsx":return d()||I();case".js":case".mjs":case".cjs":return I();case".json":return h();default:return b()}function d(){return n.jsx?void 0:Z.Module_0_was_resolved_to_1_but_jsx_is_not_set}function I(){return wG(n)||!x_(n,"noImplicitAny")?void 0:Z.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type}function h(){return uV(n)?void 0:Z.Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used}function b(){return u||n.allowArbitraryExtensions?void 0:Z.Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set}}function rFr({imports:n,moduleAugmentations:c}){let u=n.map(d=>d);for(let d of c)d.kind===11&&u.push(d);return u}function S_e({imports:n,moduleAugmentations:c},u){if(u(n[n.ComputedDts=0]="ComputedDts",n[n.StoredSignatureAtEmit=1]="StoredSignatureAtEmit",n[n.UsedVersion=2]="UsedVersion",n))($xt||{}),gT;(n=>{function c(){function nt(qe,it,It){let dt={getKeys:Tt=>it.get(Tt),getValues:Tt=>qe.get(Tt),keys:()=>qe.keys(),size:()=>qe.size,deleteKey:Tt=>{(It||(It=new Set)).add(Tt);let St=qe.get(Tt);return St?(St.forEach(He=>d(it,He,Tt)),qe.delete(Tt),!0):!1},set:(Tt,St)=>{It?.delete(Tt);let He=qe.get(Tt);return qe.set(Tt,St),He?.forEach(ht=>{St.has(ht)||d(it,ht,Tt)}),St.forEach(ht=>{He?.has(ht)||u(it,ht,Tt)}),dt}};return dt}return nt(new Map,new Map,void 0)}n.createManyToManyPathMap=c;function u(nt,qe,it){let It=nt.get(qe);It||(It=new Set,nt.set(qe,It)),It.add(it)}function d(nt,qe,it){let It=nt.get(qe);return It?.delete(it)?(It.size||nt.delete(qe),!0):!1}function I(nt){return tr(nt.declarations,qe=>{var it;return(it=ls(qe))==null?void 0:it.resolvedPath})}function h(nt,qe){let it=nt.getSymbolAtLocation(qe);return it&&I(it)}function b(nt,qe,it,It){return AA(nt.getProjectReferenceRedirect(qe)||qe,it,It)}function R(nt,qe,it){let It;if(qe.imports&&qe.imports.length>0){let He=nt.getTypeChecker();for(let ht of qe.imports){let Et=h(He,ht);Et?.forEach(St)}}let dt=oa(qe.resolvedPath);if(qe.referencedFiles&&qe.referencedFiles.length>0)for(let He of qe.referencedFiles){let ht=b(nt,He.fileName,dt,it);St(ht)}if(nt.forEachResolvedTypeReferenceDirective(({resolvedTypeReferenceDirective:He})=>{if(!He)return;let ht=He.resolvedFileName,Et=b(nt,ht,dt,it);St(Et)},qe),qe.moduleAugmentations.length){let He=nt.getTypeChecker();for(let ht of qe.moduleAugmentations){if(!Eu(ht))continue;let Et=He.getSymbolAtLocation(ht);Et&&Tt(Et)}}for(let He of nt.getTypeChecker().getAmbientModules())He.declarations&&He.declarations.length>1&&Tt(He);return It;function Tt(He){if(He.declarations)for(let ht of He.declarations){let Et=ls(ht);Et&&Et!==qe&&St(Et.resolvedPath)}}function St(He){(It||(It=new Set)).add(He)}}function N(nt,qe){return qe&&!qe.referencedMap==!nt}n.canReuseOldState=N;function V(nt){return nt.module!==0&&!nt.outFile?c():void 0}n.createReferencedMap=V;function P(nt,qe,it){var It,dt;let Tt=new Map,St=nt.getCompilerOptions(),He=V(St),ht=N(He,qe);nt.getTypeChecker();for(let Et of nt.getSourceFiles()){let Kt=w.checkDefined(Et.version,"Program intended to be used with Builder should have source files with versions set"),Nt=ht?(It=qe.oldSignatures)==null?void 0:It.get(Et.resolvedPath):void 0,Lt=Nt===void 0?ht?(dt=qe.fileInfos.get(Et.resolvedPath))==null?void 0:dt.signature:void 0:Nt||void 0;if(He){let kt=R(nt,Et,nt.getCanonicalFileName);kt&&He.set(Et.resolvedPath,kt)}Tt.set(Et.resolvedPath,{version:Kt,signature:Lt,affectsGlobalScope:St.outFile?void 0:lt(Et)||void 0,impliedFormat:Et.impliedNodeFormat})}return{fileInfos:Tt,referencedMap:He,useFileVersionAsSignature:!it&&!ht}}n.create=P;function Q(nt){nt.allFilesExcludingDefaultLibraryFile=void 0,nt.allFileNames=void 0}n.releaseCache=Q;function te(nt,qe,it,It,dt){var Tt;let St=re(nt,qe,it,It,dt);return(Tt=nt.oldSignatures)==null||Tt.clear(),St}n.getFilesAffectedBy=te;function re(nt,qe,it,It,dt){let Tt=qe.getSourceFileByPath(it);return Tt?de(nt,qe,Tt,It,dt)?(nt.referencedMap?st:je)(nt,qe,Tt,It,dt):[Tt]:v}n.getFilesAffectedByWithOldState=re;function ue(nt,qe,it){nt.fileInfos.get(it).signature=qe,(nt.hasCalledUpdateShapeSignature||(nt.hasCalledUpdateShapeSignature=new Set)).add(it)}n.updateSignatureOfFile=ue;function Ae(nt,qe,it,It,dt){nt.emit(qe,(Tt,St,He,ht,Et,Kt)=>{w.assert(Gh(Tt),`File extension for signature expected to be dts: Got:: ${Tt}`),dt(H6e(nt,qe,St,It,Kt),Et)},it,2,void 0,!0)}n.computeDtsSignature=Ae;function de(nt,qe,it,It,dt,Tt=nt.useFileVersionAsSignature){var St;if((St=nt.hasCalledUpdateShapeSignature)!=null&&St.has(it.resolvedPath))return!1;let He=nt.fileInfos.get(it.resolvedPath),ht=He.signature,Et;return!it.isDeclarationFile&&!Tt&&Ae(qe,it,It,dt,Kt=>{Et=Kt,dt.storeSignatureInfo&&(nt.signatureInfo??(nt.signatureInfo=new Map)).set(it.resolvedPath,0)}),Et===void 0&&(Et=it.version,dt.storeSignatureInfo&&(nt.signatureInfo??(nt.signatureInfo=new Map)).set(it.resolvedPath,2)),(nt.oldSignatures||(nt.oldSignatures=new Map)).set(it.resolvedPath,ht||!1),(nt.hasCalledUpdateShapeSignature||(nt.hasCalledUpdateShapeSignature=new Set)).add(it.resolvedPath),He.signature=Et,Et!==ht}n.updateShapeSignature=de;function Be(nt,qe,it){if(qe.getCompilerOptions().outFile||!nt.referencedMap||lt(it))return Fe(nt,qe);let dt=new Set,Tt=[it.resolvedPath];for(;Tt.length;){let St=Tt.pop();if(!dt.has(St)){dt.add(St);let He=nt.referencedMap.getValues(St);if(He)for(let ht of He.keys())Tt.push(ht)}}return on(gn(dt.keys(),St=>{var He;return((He=qe.getSourceFileByPath(St))==null?void 0:He.fileName)??St}))}n.getAllDependencies=Be;function Fe(nt,qe){if(!nt.allFileNames){let it=qe.getSourceFiles();nt.allFileNames=it===v?v:it.map(It=>It.fileName)}return nt.allFileNames}function Ne(nt,qe){let it=nt.referencedMap.getKeys(qe);return it?on(it.keys()):[]}n.getReferencedByPaths=Ne;function Me(nt){for(let qe of nt.statements)if(!T5(qe))return!1;return!0}function De(nt){return lr(nt.moduleAugmentations,qe=>S2(qe.parent))}function lt(nt){return De(nt)||!na(nt)&&!fa(nt)&&!Me(nt)}function Le(nt,qe,it){if(nt.allFilesExcludingDefaultLibraryFile)return nt.allFilesExcludingDefaultLibraryFile;let It;it&&dt(it);for(let Tt of qe.getSourceFiles())Tt!==it&&dt(Tt);return nt.allFilesExcludingDefaultLibraryFile=It||v,nt.allFilesExcludingDefaultLibraryFile;function dt(Tt){qe.isSourceFileDefaultLibrary(Tt)||(It||(It=[])).push(Tt)}}n.getAllFilesExcludingDefaultLibraryFile=Le;function je(nt,qe,it){let It=qe.getCompilerOptions();return It&&It.outFile?[it]:Le(nt,qe,it)}function st(nt,qe,it,It,dt){if(lt(it))return Le(nt,qe,it);let Tt=qe.getCompilerOptions();if(Tt&&(VE(Tt)||Tt.outFile))return[it];let St=new Map;St.set(it.resolvedPath,it);let He=Ne(nt,it.resolvedPath);for(;He.length>0;){let ht=He.pop();if(!St.has(ht)){let Et=qe.getSourceFileByPath(ht);St.set(ht,Et),Et&&de(nt,qe,Et,It,dt)&&He.push(...Ne(nt,Et.resolvedPath))}}return on(gn(St.values(),ht=>ht))}})(gT||(gT={}));var ekt=(n=>(n[n.None=0]="None",n[n.Js=1]="Js",n[n.JsMap=2]="JsMap",n[n.JsInlineMap=4]="JsInlineMap",n[n.Dts=8]="Dts",n[n.DtsMap=16]="DtsMap",n[n.AllJs=7]="AllJs",n[n.AllDts=24]="AllDts",n[n.All=31]="All",n))(ekt||{});function TV(n){let c=1;return n.sourceMap&&(c=c|2),n.inlineSourceMap&&(c=c|4),WE(n)&&(c=c|8),n.declarationMap&&(c=c|16),n.emitDeclarationOnly&&(c=c&24),c}function xte(n,c){let u=c&&(lm(c)?c:TV(c)),d=lm(n)?n:TV(n);if(u===d)return 0;if(!u||!d)return d;let I=u^d,h=0;return I&7&&(h=d&7),I&24&&(h=h|d&24),h}function X7i(n,c){return n===c||n!==void 0&&c!==void 0&&n.size===c.size&&!eT(n,u=>!c.has(u))}function J7i(n,c){var u,d;let I=gT.create(n,c,!1);I.program=n;let h=n.getCompilerOptions();I.compilerOptions=h;let b=h.outFile;b?h.composite&&c?.outSignature&&b===c.compilerOptions.outFile&&(I.outSignature=c.outSignature&&iFr(h,c.compilerOptions,c.outSignature)):I.semanticDiagnosticsPerFile=new Map,I.changedFilesSet=new Set,I.latestChangedDtsFile=h.composite?c?.latestChangedDtsFile:void 0;let R=gT.canReuseOldState(I.referencedMap,c),N=R?c.compilerOptions:void 0,V=R&&c.semanticDiagnosticsPerFile&&!!I.semanticDiagnosticsPerFile&&!ODe(h,N),P=h.composite&&c?.emitSignatures&&!b&&!QDe(h,c.compilerOptions);R?((u=c.changedFilesSet)==null||u.forEach(Ae=>I.changedFilesSet.add(Ae)),!b&&((d=c.affectedFilesPendingEmit)!=null&&d.size)&&(I.affectedFilesPendingEmit=new Map(c.affectedFilesPendingEmit),I.seenAffectedFiles=new Set),I.programEmitPending=c.programEmitPending):I.buildInfoEmitPending=!0;let Q=I.referencedMap,te=R?c.referencedMap:void 0,re=V&&!h.skipLibCheck==!N.skipLibCheck,ue=re&&!h.skipDefaultLibCheck==!N.skipDefaultLibCheck;if(I.fileInfos.forEach((Ae,de)=>{var Be;let Fe,Ne;if(!R||!(Fe=c.fileInfos.get(de))||Fe.version!==Ae.version||Fe.impliedFormat!==Ae.impliedFormat||!X7i(Ne=Q&&Q.getValues(de),te&&te.getValues(de))||Ne&&eT(Ne,Me=>!I.fileInfos.has(Me)&&c.fileInfos.has(Me)))nFr(I,de);else{let Me=n.getSourceFileByPath(de),De=(Be=c.emitDiagnosticsPerFile)==null?void 0:Be.get(de);if(De&&(I.emitDiagnosticsPerFile??(I.emitDiagnosticsPerFile=new Map)).set(de,c.hasReusableDiagnostic?aFr(De,de,n):sFr(De,n)),V){if(Me.isDeclarationFile&&!re||Me.hasNoDefaultLib&&!ue)return;let lt=c.semanticDiagnosticsPerFile.get(de);lt&&(I.semanticDiagnosticsPerFile.set(de,c.hasReusableDiagnostic?aFr(lt,de,n):sFr(lt,n)),(I.semanticDiagnosticsFromOldState??(I.semanticDiagnosticsFromOldState=new Set)).add(de))}}if(P){let Me=c.emitSignatures.get(de);Me&&(I.emitSignatures??(I.emitSignatures=new Map)).set(de,iFr(h,c.compilerOptions,Me))}}),R&&UC(c.fileInfos,(Ae,de)=>I.fileInfos.has(de)?!1:b||Ae.affectsGlobalScope?!0:(I.buildInfoEmitPending=!0,!1)))gT.getAllFilesExcludingDefaultLibraryFile(I,n,void 0).forEach(Ae=>nFr(I,Ae.resolvedPath));else if(N){let Ae=ole(h,N)?TV(h):xte(h,N);Ae!==0&&(b?I.programEmitPending=I.programEmitPending?I.programEmitPending|Ae:Ae:(n.getSourceFiles().forEach(de=>{I.changedFilesSet.has(de.resolvedPath)||X6e(I,de.resolvedPath,Ae)}),w.assert(!I.seenAffectedFiles||!I.seenAffectedFiles.size),I.seenAffectedFiles=I.seenAffectedFiles||new Set,I.buildInfoEmitPending=!0))}return I}function nFr(n,c){n.changedFilesSet.add(c),n.buildInfoEmitPending=!0,n.programEmitPending=void 0}function iFr(n,c,u){return!!n.declarationMap==!!c.declarationMap?u:Ya(u)?[u]:u[0]}function sFr(n,c){return n.length?Ar(n,u=>{if(Ya(u.messageText))return u;let d=tkt(u.messageText,u.file,c,I=>{var h;return(h=I.repopulateInfo)==null?void 0:h.call(I)});return d===u.messageText?u:{...u,messageText:d}}):n}function tkt(n,c,u,d){let I=d(n);if(I)return{...RX(c,u,I.moduleReference,I.mode,I.packageName||I.moduleReference),next:oFr(n.next,c,u,d)};let h=oFr(n.next,c,u,d);return h===n.next?n:{...n,next:h}}function oFr(n,c,u,d){return Ar(n,I=>tkt(I,c,u,d))}function aFr(n,c,u){if(!n.length)return v;let d;return n.map(h=>{let b=cFr(h,c,u,I);b.reportsUnnecessary=h.reportsUnnecessary,b.reportsDeprecated=h.reportDeprecated,b.source=h.source,b.skippedOn=h.skippedOn;let{relatedInformation:R}=h;return b.relatedInformation=R?R.length?R.map(N=>cFr(N,c,u,I)):[]:void 0,b});function I(h){return d??(d=oa(Qc(LZ(u.getCompilerOptions()),u.getCurrentDirectory()))),AA(h,d,u.getCanonicalFileName)}}function cFr(n,c,u,d){let{file:I}=n,h=I!==!1?u.getSourceFileByPath(I?d(I):c):void 0;return{...n,file:h,messageText:Ya(n.messageText)?n.messageText:tkt(n.messageText,h,u,b=>b.info)}}function U7i(n){gT.releaseCache(n),n.program=void 0}function K7i(n){let c=n.compilerOptions.outFile;return w.assert(!n.changedFilesSet.size||c),{affectedFilesPendingEmit:n.affectedFilesPendingEmit&&new Map(n.affectedFilesPendingEmit),seenEmittedFiles:n.seenEmittedFiles&&new Map(n.seenEmittedFiles),programEmitPending:n.programEmitPending,emitSignatures:n.emitSignatures&&new Map(n.emitSignatures),outSignature:n.outSignature,latestChangedDtsFile:n.latestChangedDtsFile,hasChangedEmitSignature:n.hasChangedEmitSignature,changedFilesSet:c?new Set(n.changedFilesSet):void 0,buildInfoEmitPending:n.buildInfoEmitPending,emitDiagnosticsPerFile:n.emitDiagnosticsPerFile&&new Map(n.emitDiagnosticsPerFile)}}function j7i(n,c){n.affectedFilesPendingEmit=c.affectedFilesPendingEmit,n.seenEmittedFiles=c.seenEmittedFiles,n.programEmitPending=c.programEmitPending,n.emitSignatures=c.emitSignatures,n.outSignature=c.outSignature,n.latestChangedDtsFile=c.latestChangedDtsFile,n.hasChangedEmitSignature=c.hasChangedEmitSignature,n.buildInfoEmitPending=c.buildInfoEmitPending,n.emitDiagnosticsPerFile=c.emitDiagnosticsPerFile,c.changedFilesSet&&(n.changedFilesSet=c.changedFilesSet)}function lFr(n,c){w.assert(!c||!n.affectedFiles||n.affectedFiles[n.affectedFilesIndex-1]!==c||!n.semanticDiagnosticsPerFile.has(c.resolvedPath))}function uFr(n,c,u){for(var d;;){let{affectedFiles:I}=n;if(I){let N=n.seenAffectedFiles,V=n.affectedFilesIndex;for(;V{let h=d&7;h?n.affectedFilesPendingEmit.set(I,h):n.affectedFilesPendingEmit.delete(I)})}}function q7i(n,c){var u;if((u=n.affectedFilesPendingEmit)!=null&&u.size)return UC(n.affectedFilesPendingEmit,(d,I)=>{var h;let b=n.program.getSourceFileByPath(I);if(!b||!K3(b,n.program)){n.affectedFilesPendingEmit.delete(I);return}let R=(h=n.seenEmittedFiles)==null?void 0:h.get(b.resolvedPath),N=xte(d,R);if(c&&(N=N&24),N)return{affectedFile:b,emitKind:N}})}function $7i(n){var c;if((c=n.emitDiagnosticsPerFile)!=null&&c.size)return UC(n.emitDiagnosticsPerFile,(u,d)=>{var I;let h=n.program.getSourceFileByPath(d);if(!h||!K3(h,n.program)){n.emitDiagnosticsPerFile.delete(d);return}let b=((I=n.seenEmittedFiles)==null?void 0:I.get(h.resolvedPath))||0;if(!(b&24))return{affectedFile:h,diagnostics:u,seenKind:b}})}function gFr(n){if(!n.cleanedDiagnosticsOfLibFiles){n.cleanedDiagnosticsOfLibFiles=!0;let c=w.checkDefined(n.program),u=c.getCompilerOptions();X(c.getSourceFiles(),d=>c.isSourceFileDefaultLibrary(d)&&!q5(d,u,c)&&nkt(n,d.resolvedPath))}}function eji(n,c,u,d){if(nkt(n,c.resolvedPath),n.allFilesExcludingDefaultLibraryFile===n.affectedFiles){gFr(n),gT.updateShapeSignature(n,w.checkDefined(n.program),c,u,d);return}n.compilerOptions.assumeChangesOnlyAffectDirectDependencies||tji(n,c,u,d)}function rkt(n,c,u,d,I){if(nkt(n,c),!n.changedFilesSet.has(c)){let h=w.checkDefined(n.program),b=h.getSourceFileByPath(c);b&&(gT.updateShapeSignature(n,h,b,d,I,!0),u?X6e(n,c,TV(n.compilerOptions)):WE(n.compilerOptions)&&X6e(n,c,n.compilerOptions.declarationMap?24:8))}}function nkt(n,c){return n.semanticDiagnosticsFromOldState?(n.semanticDiagnosticsFromOldState.delete(c),n.semanticDiagnosticsPerFile.delete(c),!n.semanticDiagnosticsFromOldState.size):!0}function AFr(n,c){let u=w.checkDefined(n.oldSignatures).get(c)||void 0;return w.checkDefined(n.fileInfos.get(c)).signature!==u}function ikt(n,c,u,d,I){var h;return(h=n.fileInfos.get(c))!=null&&h.affectsGlobalScope?(gT.getAllFilesExcludingDefaultLibraryFile(n,n.program,void 0).forEach(b=>rkt(n,b.resolvedPath,u,d,I)),gFr(n),!0):!1}function tji(n,c,u,d){var I,h;if(!n.referencedMap||!n.changedFilesSet.has(c.resolvedPath)||!AFr(n,c.resolvedPath))return;if(VE(n.compilerOptions)){let N=new Map;N.set(c.resolvedPath,!0);let V=gT.getReferencedByPaths(n,c.resolvedPath);for(;V.length>0;){let P=V.pop();if(!N.has(P)){if(N.set(P,!0),ikt(n,P,!1,u,d))return;if(rkt(n,P,!1,u,d),AFr(n,P)){let Q=w.checkDefined(n.program).getSourceFileByPath(P);V.push(...gT.getReferencedByPaths(n,Q.resolvedPath))}}}}let b=new Set,R=!!((I=c.symbol)!=null&&I.exports)&&!!UC(c.symbol.exports,N=>{if(N.flags&128)return!0;let V=ph(N,n.program.getTypeChecker());return V===N?!1:(V.flags&128)!==0&&lr(V.declarations,P=>ls(P)===c)});(h=n.referencedMap.getKeys(c.resolvedPath))==null||h.forEach(N=>{if(ikt(n,N,R,u,d))return!0;let V=n.referencedMap.getKeys(N);return V&&eT(V,P=>dFr(n,P,R,b,u,d))})}function dFr(n,c,u,d,I,h){var b;if(Zi(d,c)){if(ikt(n,c,u,I,h))return!0;rkt(n,c,u,I,h),(b=n.referencedMap.getKeys(c))==null||b.forEach(R=>dFr(n,R,u,d,I,h))}}function skt(n,c,u){return vi(rji(n,c,u),w.checkDefined(n.program).getProgramDiagnostics(c))}function rji(n,c,u){let d=c.resolvedPath;if(n.semanticDiagnosticsPerFile){let h=n.semanticDiagnosticsPerFile.get(d);if(h)return iGe(h,n.compilerOptions)}let I=w.checkDefined(n.program).getBindAndCheckDiagnostics(c,u);return n.semanticDiagnosticsPerFile&&n.semanticDiagnosticsPerFile.set(d,I),iGe(I,n.compilerOptions)}function okt(n){var c;return!!((c=n.options)!=null&&c.outFile)}function nji(n){var c,u;let d=w.checkDefined(n.program).getCurrentDirectory(),I=oa(Qc(LZ(n.compilerOptions),d)),h=n.latestChangedDtsFile?Me(n.latestChangedDtsFile):void 0,b=[],R=new Map,N=new Set(n.program.getRootFileNames().map(ht=>AA(ht,d,n.program.getCanonicalFileName))),V=[];if(n.compilerOptions.outFile){let ht=on(n.fileInfos.entries(),([Kt,Nt])=>{let Lt=lt(Kt);return je(Kt,Lt),Nt.impliedFormat?{version:Nt.version,impliedFormat:Nt.impliedFormat,signature:void 0,affectsGlobalScope:void 0}:Nt.version}),Et={fileNames:b,fileInfos:ht,root:V,resolvedRoot:st(),options:nt(n.compilerOptions),outSignature:n.outSignature,latestChangedDtsFile:h,pendingEmit:n.programEmitPending?n.programEmitPending===TV(n.compilerOptions)?!1:n.programEmitPending:void 0};return Uke(Et)}let P,Q,te,re=on(n.fileInfos.entries(),([ht,Et])=>{var Kt,Nt;let Lt=lt(ht);je(ht,Lt),w.assert(b[Lt-1]===De(ht));let kt=(Kt=n.oldSignatures)==null?void 0:Kt.get(ht),Zt=kt!==void 0?kt||void 0:Et.signature;if(n.compilerOptions.composite){let Dr=n.program.getSourceFileByPath(ht);if(!fa(Dr)&&K3(Dr,n.program)){let jt=(Nt=n.emitSignatures)==null?void 0:Nt.get(ht);jt!==Zt&&(te=Yr(te,jt===void 0?Lt:[Lt,!Ya(jt)&&jt[0]===Zt?v:jt]))}}return Et.version===Zt?Et.affectsGlobalScope||Et.impliedFormat?{version:Et.version,signature:void 0,affectsGlobalScope:Et.affectsGlobalScope,impliedFormat:Et.impliedFormat}:Et.version:Zt!==void 0?kt===void 0?Et:{version:Et.version,signature:Zt,affectsGlobalScope:Et.affectsGlobalScope,impliedFormat:Et.impliedFormat}:{version:Et.version,signature:!1,affectsGlobalScope:Et.affectsGlobalScope,impliedFormat:Et.impliedFormat}}),ue;(c=n.referencedMap)!=null&&c.size()&&(ue=on(n.referencedMap.keys()).sort(Ro).map(ht=>[lt(ht),Le(n.referencedMap.getValues(ht))]));let Ae=it(),de;if((u=n.affectedFilesPendingEmit)!=null&&u.size){let ht=TV(n.compilerOptions),Et=new Set;for(let Kt of on(n.affectedFilesPendingEmit.keys()).sort(Ro))if(Zi(Et,Kt)){let Nt=n.program.getSourceFileByPath(Kt);if(!Nt||!K3(Nt,n.program))continue;let Lt=lt(Kt),kt=n.affectedFilesPendingEmit.get(Kt);de=Yr(de,kt===ht?Lt:kt===8?[Lt]:[Lt,kt])}}let Be;if(n.changedFilesSet.size)for(let ht of on(n.changedFilesSet.keys()).sort(Ro))Be=Yr(Be,lt(ht));let Fe=It(),Ne={fileNames:b,fileInfos:re,root:V,resolvedRoot:st(),options:nt(n.compilerOptions),fileIdsList:P,referencedMap:ue,semanticDiagnosticsPerFile:Ae,emitDiagnosticsPerFile:Fe,affectedFilesPendingEmit:de,changeFileSet:Be,emitSignatures:te,latestChangedDtsFile:h};return Uke(Ne);function Me(ht){return De(Qc(ht,d))}function De(ht){return jy(Ip(I,ht,n.program.getCanonicalFileName))}function lt(ht){let Et=R.get(ht);return Et===void 0&&(b.push(De(ht)),R.set(ht,Et=b.length)),Et}function Le(ht){let Et=on(ht.keys(),lt).sort(Jl),Kt=Et.join(),Nt=Q?.get(Kt);return Nt===void 0&&(P=Yr(P,Et),(Q??(Q=new Map)).set(Kt,Nt=P.length)),Nt}function je(ht,Et){let Kt=n.program.getSourceFile(ht);if(!n.program.getFileIncludeReasons().get(Kt.path).some(Zt=>Zt.kind===0))return;if(!V.length)return V.push(Et);let Nt=V[V.length-1],Lt=Na(Nt);if(Lt&&Nt[1]===Et-1)return Nt[1]=Et;if(Lt||V.length===1||Nt!==Et-1)return V.push(Et);let kt=V[V.length-2];return!lm(kt)||kt!==Nt-1?V.push(Et):(V[V.length-2]=[kt,Et],V.length=V.length-1)}function st(){let ht;return N.forEach(Et=>{let Kt=n.program.getSourceFileByPath(Et);Kt&&Et!==Kt.resolvedPath&&(ht=Yr(ht,[lt(Kt.resolvedPath),lt(Et)]))}),ht}function nt(ht){let Et,{optionsNameMap:Kt}=hte();for(let Nt of Gl(ht).sort(Ro)){let Lt=Kt.get(Nt.toLowerCase());Lt?.affectsBuildInfo&&((Et||(Et={}))[Nt]=qe(Lt,ht[Nt]))}return Et}function qe(ht,Et){if(ht){if(w.assert(ht.type!=="listOrElement"),ht.type==="list"){let Kt=Et;if(ht.element.isFilePath&&Kt.length)return Kt.map(Me)}else if(ht.isFilePath)return Me(Et)}return Et}function it(){let ht;return n.fileInfos.forEach((Et,Kt)=>{var Nt;let Lt=(Nt=n.semanticDiagnosticsPerFile)==null?void 0:Nt.get(Kt);Lt?Lt.length&&(ht=Yr(ht,[lt(Kt),dt(Lt,Kt)])):n.changedFilesSet.has(Kt)||(ht=Yr(ht,lt(Kt)))}),ht}function It(){var ht;let Et;if(!((ht=n.emitDiagnosticsPerFile)!=null&&ht.size))return Et;for(let Kt of on(n.emitDiagnosticsPerFile.keys()).sort(Ro)){let Nt=n.emitDiagnosticsPerFile.get(Kt);Et=Yr(Et,[lt(Kt),dt(Nt,Kt)])}return Et}function dt(ht,Et){return w.assert(!!ht.length),ht.map(Kt=>{let Nt=Tt(Kt,Et);Nt.reportsUnnecessary=Kt.reportsUnnecessary,Nt.reportDeprecated=Kt.reportsDeprecated,Nt.source=Kt.source,Nt.skippedOn=Kt.skippedOn;let{relatedInformation:Lt}=Kt;return Nt.relatedInformation=Lt?Lt.length?Lt.map(kt=>Tt(kt,Et)):[]:void 0,Nt})}function Tt(ht,Et){let{file:Kt}=ht;return{...ht,file:Kt?Kt.resolvedPath===Et?void 0:De(Kt.resolvedPath):!1,messageText:Ya(ht.messageText)?ht.messageText:St(ht.messageText)}}function St(ht){if(ht.repopulateInfo)return{info:ht.repopulateInfo(),next:He(ht.next)};let Et=He(ht.next);return Et===ht.next?ht:{...ht,next:Et}}function He(ht){return ht&&(X(ht,(Et,Kt)=>{let Nt=St(Et);if(Et===Nt)return;let Lt=Kt>0?ht.slice(0,Kt-1):[];Lt.push(Nt);for(let kt=Kt+1;kt(n[n.SemanticDiagnosticsBuilderProgram=0]="SemanticDiagnosticsBuilderProgram",n[n.EmitAndSemanticDiagnosticsBuilderProgram=1]="EmitAndSemanticDiagnosticsBuilderProgram",n))(akt||{});function oGe(n,c,u,d,I,h){let b,R,N;return n===void 0?(w.assert(c===void 0),b=u,N=d,w.assert(!!N),R=N.getProgram()):Na(n)?(N=d,R=v_e({rootNames:n,options:c,host:u,oldProgram:N&&N.getProgramOrUndefined(),configFileParsingDiagnostics:I,projectReferences:h}),b=u):(R=n,b=c,N=u,I=d),{host:b,newProgram:R,oldProgram:N,configFileParsingDiagnostics:I||v}}function pFr(n,c){return c?.sourceMapUrlPos!==void 0?n.substring(0,c.sourceMapUrlPos):n}function H6e(n,c,u,d,I){var h;u=pFr(u,I);let b;return(h=I?.diagnostics)!=null&&h.length&&(u+=I.diagnostics.map(V=>`${N(V)}${h1[V.category]}${V.code}: ${R(V.messageText)}`).join(` +`)),(d.createHash??vh)(u);function R(V){return Ya(V)?V:V===void 0?"":V.next?V.messageText+V.next.map(R).join(` +`):V.messageText}function N(V){return V.file.resolvedPath===c.resolvedPath?`(${V.start},${V.length})`:(b===void 0&&(b=oa(c.resolvedPath)),`${jy(Ip(b,V.file.resolvedPath,n.getCanonicalFileName))}(${V.start},${V.length})`)}}function ckt(n,c,u){return(c.createHash??vh)(pFr(n,u))}function Y6e(n,{newProgram:c,host:u,oldProgram:d,configFileParsingDiagnostics:I}){let h=d&&d.getState();if(h&&c===h.program&&I===c.getConfigFileParsingDiagnostics())return c=void 0,h=void 0,d;let b=J7i(c,h);c.getBuildInfo=()=>nji(b),c=void 0,d=void 0,h=void 0;let R=()=>b,N=U6e(R,I);return N.getState=R,N.saveEmitState=()=>K7i(b),N.restoreEmitState=Ae=>j7i(b,Ae),N.hasChangedEmitSignature=()=>!!b.hasChangedEmitSignature,N.getAllDependencies=Ae=>gT.getAllDependencies(b,w.checkDefined(b.program),Ae),N.getSemanticDiagnostics=ue,N.emit=te,N.releaseProgram=()=>U7i(b),n===0?N.getSemanticDiagnosticsOfNextAffectedFile=re:n===1?(N.getSemanticDiagnosticsOfNextAffectedFile=re,N.emitNextAffectedFile=P,N.emitBuildInfo=V):ja(),N;function V(Ae,de){if(b.buildInfoEmitPending){let Be=w.checkDefined(b.program).emitBuildInfo(Ae||Yi(u,u.writeFile),de);return b.buildInfoEmitPending=!1,Be}return O6e}function P(Ae,de,Be,Fe){var Ne,Me,De;let lt=uFr(b,de,u),Le=TV(b.compilerOptions),je=Be?Le&24:Le;if(!lt)if(b.compilerOptions.outFile){if(!b.programEmitPending||(je=b.programEmitPending,Be&&(je=je&24),!je))return;lt=b.program}else{let qe=q7i(b,Be);if(!qe){let it=$7i(b);if(it)return(b.seenEmittedFiles??(b.seenEmittedFiles=new Map)).set(it.affectedFile.resolvedPath,it.seenKind|24),{result:{emitSkipped:!0,diagnostics:it.diagnostics},affected:it.affectedFile};if(!b.buildInfoEmitPending)return;let It=b.program,dt=It.emitBuildInfo(Ae||Yi(u,u.writeFile),de);return b.buildInfoEmitPending=!1,{result:dt,affected:It}}({affectedFile:lt,emitKind:je}=qe)}let st;je&7&&(st=0),je&24&&(st=st===void 0?1:void 0),lt===b.program&&(b.programEmitPending=b.changedFilesSet.size?xte(Le,je):b.programEmitPending?xte(b.programEmitPending,je):void 0);let nt=b.program.emit(lt===b.program?void 0:lt,Q(Ae,Fe),de,st,Fe);if(lt!==b.program){let qe=lt;b.seenAffectedFiles.add(qe.resolvedPath),b.affectedFilesIndex!==void 0&&b.affectedFilesIndex++,b.buildInfoEmitPending=!0;let it=((Ne=b.seenEmittedFiles)==null?void 0:Ne.get(qe.resolvedPath))||0;(b.seenEmittedFiles??(b.seenEmittedFiles=new Map)).set(qe.resolvedPath,je|it);let It=((Me=b.affectedFilesPendingEmit)==null?void 0:Me.get(qe.resolvedPath))||Le,dt=xte(It,je|it);dt?(b.affectedFilesPendingEmit??(b.affectedFilesPendingEmit=new Map)).set(qe.resolvedPath,dt):(De=b.affectedFilesPendingEmit)==null||De.delete(qe.resolvedPath),nt.diagnostics.length&&(b.emitDiagnosticsPerFile??(b.emitDiagnosticsPerFile=new Map)).set(qe.resolvedPath,nt.diagnostics)}else b.changedFilesSet.clear();return{result:nt,affected:lt}}function Q(Ae,de){return WE(b.compilerOptions)?(Be,Fe,Ne,Me,De,lt)=>{var Le,je,st;if(Gh(Be))if(b.compilerOptions.outFile){if(b.compilerOptions.composite){let qe=nt(b.outSignature,void 0);if(!qe)return;b.outSignature=qe}}else{w.assert(De?.length===1);let qe;if(!de){let it=De[0],It=b.fileInfos.get(it.resolvedPath);if(It.signature===it.version){let dt=H6e(b.program,it,Fe,u,lt);(Le=lt?.diagnostics)!=null&&Le.length||(qe=dt),dt!==it.version&&(u.storeSignatureInfo&&(b.signatureInfo??(b.signatureInfo=new Map)).set(it.resolvedPath,1),b.affectedFiles&&((je=b.oldSignatures)==null?void 0:je.get(it.resolvedPath))===void 0&&(b.oldSignatures??(b.oldSignatures=new Map)).set(it.resolvedPath,It.signature||!1),It.signature=dt)}}if(b.compilerOptions.composite){let it=De[0].resolvedPath;if(qe=nt((st=b.emitSignatures)==null?void 0:st.get(it),qe),!qe)return;(b.emitSignatures??(b.emitSignatures=new Map)).set(it,qe)}}Ae?Ae(Be,Fe,Ne,Me,De,lt):u.writeFile?u.writeFile(Be,Fe,Ne,Me,De,lt):b.program.writeFile(Be,Fe,Ne,Me,De,lt);function nt(qe,it){let It=!qe||Ya(qe)?qe:qe[0];if(it??(it=ckt(Fe,u,lt)),it===It){if(qe===It)return;lt?lt.differsOnlyInMap=!0:lt={differsOnlyInMap:!0}}else b.hasChangedEmitSignature=!0,b.latestChangedDtsFile=Be;return it}}:Ae||Yi(u,u.writeFile)}function te(Ae,de,Be,Fe,Ne){n===1&&lFr(b,Ae);let Me=Q6e(N,Ae,de,Be);if(Me)return Me;if(!Ae)if(n===1){let De=[],lt=!1,Le,je=[],st;for(;st=P(de,Be,Fe,Ne);)lt=lt||st.result.emitSkipped,Le=ai(Le,st.result.diagnostics),je=ai(je,st.result.emittedFiles),De=ai(De,st.result.sourceMaps);return{emitSkipped:lt,diagnostics:Le||v,emittedFiles:je,sourceMaps:De}}else z7i(b,Fe);return w.checkDefined(b.program).emit(Ae,Q(de,Ne),Be,Fe,Ne)}function re(Ae,de){for(;;){let Be=uFr(b,Ae,u),Fe;if(Be)if(Be!==b.program){let Ne=Be;if((!de||!de(Ne))&&(Fe=skt(b,Ne,Ae)),b.seenAffectedFiles.add(Ne.resolvedPath),b.affectedFilesIndex++,b.buildInfoEmitPending=!0,!Fe)continue}else Fe=b.program.getSemanticDiagnostics(void 0,Ae),b.changedFilesSet.clear(),b.programEmitPending=TV(b.compilerOptions);else return;return{result:Fe,affected:Be}}}function ue(Ae,de){if(lFr(b,Ae),w.checkDefined(b.program).getCompilerOptions().outFile)return w.assert(!b.semanticDiagnosticsPerFile),w.checkDefined(b.program).getSemanticDiagnostics(Ae,de);if(Ae)return skt(b,Ae,de);for(;re(de););let Fe;for(let Ne of w.checkDefined(b.program).getSourceFiles())Fe=ai(Fe,skt(b,Ne,de));return Fe||v}}function X6e(n,c,u){var d,I;let h=((d=n.affectedFilesPendingEmit)==null?void 0:d.get(c))||0;(n.affectedFilesPendingEmit??(n.affectedFilesPendingEmit=new Map)).set(c,h|u),(I=n.emitDiagnosticsPerFile)==null||I.delete(c)}function lkt(n){return Ya(n)?{version:n,signature:n,affectsGlobalScope:void 0,impliedFormat:void 0}:Ya(n.signature)?n:{version:n.version,signature:n.signature===!1?void 0:n.version,affectsGlobalScope:n.affectsGlobalScope,impliedFormat:n.impliedFormat}}function ukt(n,c){return lm(n)?c:n[1]||8}function gkt(n,c){return n||TV(c||{})}function Akt(n,c,u){var d,I,h,b;let R=n.program,N=oa(Qc(c,u.getCurrentDirectory())),V=rA(u.useCaseSensitiveFileNames()),P,Q=(d=R.fileNames)==null?void 0:d.map(ue),te,re=R.latestChangedDtsFile?Ae(R.latestChangedDtsFile):void 0;if(okt(R)){let De=new Map;R.fileInfos.forEach((lt,Le)=>{let je=de(Le+1);De.set(je,Ya(lt)?{version:lt,signature:void 0,affectsGlobalScope:void 0,impliedFormat:void 0}:lt)}),P={fileInfos:De,compilerOptions:R.options?mke(R.options,Ae):{},latestChangedDtsFile:re,outSignature:R.outSignature,programEmitPending:R.pendingEmit===void 0?void 0:gkt(R.pendingEmit,R.options)}}else{te=(I=R.fileIdsList)==null?void 0:I.map(st=>new Set(st.map(de)));let De=new Map,lt=(h=R.options)!=null&&h.composite&&!R.options.outFile?new Map:void 0;R.fileInfos.forEach((st,nt)=>{let qe=de(nt+1),it=lkt(st);De.set(qe,it),lt&&it.signature&<.set(qe,it.signature)}),(b=R.emitSignatures)==null||b.forEach(st=>{if(lm(st))lt.delete(de(st));else{let nt=de(st[0]);lt.set(nt,!Ya(st[1])&&!st[1].length?[lt.get(nt)]:st[1])}});let Le=new Set(Ot(R.changeFileSet,de)),je=R.affectedFilesPendingEmit?TV(R.options||{}):void 0;P={fileInfos:De,compilerOptions:R.options?mke(R.options,Ae):{},referencedMap:Fe(R.referencedMap,R.options??{}),semanticDiagnosticsPerFile:Ne(R.semanticDiagnosticsPerFile,De,Le),emitDiagnosticsPerFile:Me(R.emitDiagnosticsPerFile),hasReusableDiagnostic:!0,affectedFilesPendingEmit:R.affectedFilesPendingEmit&&lA(R.affectedFilesPendingEmit,st=>de(lm(st)?st:st[0]),st=>ukt(st,je)),changedFilesSet:Le,latestChangedDtsFile:re,emitSignatures:lt?.size?lt:void 0}}return{getState:()=>P,saveEmitState:oc,restoreEmitState:oc,getProgram:ja,getProgramOrUndefined:wI,releaseProgram:oc,getCompilerOptions:()=>P.compilerOptions,getSourceFile:ja,getSourceFiles:ja,getOptionsDiagnostics:ja,getGlobalDiagnostics:ja,getConfigFileParsingDiagnostics:ja,getSyntacticDiagnostics:ja,getDeclarationDiagnostics:ja,getSemanticDiagnostics:ja,emit:ja,getAllDependencies:ja,getCurrentDirectory:ja,emitNextAffectedFile:ja,getSemanticDiagnosticsOfNextAffectedFile:ja,emitBuildInfo:ja,close:oc,hasChangedEmitSignature:NC};function ue(De){return AA(De,N,V)}function Ae(De){return Qc(De,N)}function de(De){return Q[De-1]}function Be(De){return te[De-1]}function Fe(De,lt){let Le=gT.createReferencedMap(lt);return!Le||!De||De.forEach(([je,st])=>Le.set(de(je),Be(st))),Le}function Ne(De,lt,Le){let je=new Map(gn(lt.keys(),st=>Le.has(st)?void 0:[st,v]));return De?.forEach(st=>{lm(st)?je.delete(de(st)):je.set(de(st[0]),st[1])}),je.size?je:void 0}function Me(De){return De&&lA(De,lt=>de(lt[0]),lt=>lt[1])}}function J6e(n,c,u){let d=oa(Qc(c,u.getCurrentDirectory())),I=rA(u.useCaseSensitiveFileNames()),h=new Map,b=0,R=new Map,N=new Map(n.resolvedRoot);return n.fileInfos.forEach((P,Q)=>{let te=AA(n.fileNames[Q],d,I),re=Ya(P)?P:P.version;if(h.set(te,re),bn().program,releaseProgram:()=>n().program=void 0,getCompilerOptions:()=>n().compilerOptions,getSourceFile:d=>u().getSourceFile(d),getSourceFiles:()=>u().getSourceFiles(),getOptionsDiagnostics:d=>u().getOptionsDiagnostics(d),getGlobalDiagnostics:d=>u().getGlobalDiagnostics(d),getConfigFileParsingDiagnostics:()=>c,getSyntacticDiagnostics:(d,I)=>u().getSyntacticDiagnostics(d,I),getDeclarationDiagnostics:(d,I)=>u().getDeclarationDiagnostics(d,I),getSemanticDiagnostics:(d,I)=>u().getSemanticDiagnostics(d,I),emit:(d,I,h,b,R)=>u().emit(d,I,h,b,R),emitBuildInfo:(d,I)=>u().emitBuildInfo(d,I),getAllDependencies:ja,getCurrentDirectory:()=>u().getCurrentDirectory(),close:oc};function u(){return w.checkDefined(n().program)}}function fFr(n,c,u,d,I,h){return Y6e(0,oGe(n,c,u,d,I,h))}function K6e(n,c,u,d,I,h){return Y6e(1,oGe(n,c,u,d,I,h))}function IFr(n,c,u,d,I,h){let{newProgram:b,configFileParsingDiagnostics:R}=oGe(n,c,u,d,I,h);return U6e(()=>({program:b,compilerOptions:b.getCompilerOptions()}),R)}function aGe(n){return fl(n,"/node_modules/.staging")?Hm(n,"/.staging"):lr(Sh,c=>n.includes(c))?void 0:n}function dkt(n,c){if(c<=1)return 1;let u=1,d=n[0].search(/[a-zA-Z]:/)===0;if(n[0]!==$u&&!d&&n[1].search(/[a-zA-Z]\$$/)===0){if(c===2)return 2;u=2,d=!0}return d&&!n[u].match(/^users$/i)?u:n[u].match(/^workspaces$/i)?u+1:u+2}function cGe(n,c){if(c===void 0&&(c=n.length),c<=2)return!1;let u=dkt(n,c);return c>u+1}function pkt(n){return mFr(oa(n))}function CFr(n,c){if(c.lengthI.length+1?Ikt(R,b,Math.max(I.length+1,N+1),P):{dir:u,dirPath:d,nonRecursive:!0}:hFr(R,b,b.length-1,N,V,I,P)}function hFr(n,c,u,d,I,h,b){if(I!==-1)return Ikt(n,c,I+1,b);let R=!0,N=u;for(let V=0;V=u&&d+2iji(d,I,h,n,u,c,b)}}function iji(n,c,u,d,I,h,b){let R=lGe(n),N=U6(u,d,I,R,c,h,b);if(!n.getGlobalCache)return N;let V=n.getGlobalCache();if(V!==void 0&&!Ul(u)&&!(N.resolvedModule&&Cle(N.resolvedModule.extension))){let{resolvedModule:P,failedLookupLocations:Q,affectingLocations:te,resolutionDiagnostics:re}=SDt(w.checkDefined(n.globalCacheResolutionModuleName)(u),n.projectName,I,R,V,c);if(P)return N.resolvedModule=P,N.failedLookupLocations=_te(N.failedLookupLocations,Q),N.affectingLocations=_te(N.affectingLocations,te),N.resolutionDiagnostics=_te(N.resolutionDiagnostics,re),N}return N}function z6e(n,c,u){let d,I,h,b=ec(),R=new Set,N=new Set,V=new Map,P=new Map,Q=!1,te,re,ue,Ae,de,Be=!1,Fe=su(()=>n.getCurrentDirectory()),Ne=n.getCachedDirectoryStructureHost(),Me=new Map,De=bte(Fe(),n.getCanonicalFileName,n.getCompilationSettings()),lt=new Map,Le=wke(Fe(),n.getCanonicalFileName,n.getCompilationSettings(),De.getPackageJsonInfoCache(),De.optionsToRedirectsKey),je=new Map,st=bte(Fe(),n.getCanonicalFileName,G8e(n.getCompilationSettings()),De.getPackageJsonInfoCache()),nt=new Map,qe=new Map,it=mkt(c,Fe),It=n.toPath(it),dt=dd(It),Tt=new Map,St=new Map,He=new Map,ht=new Map;return{rootDirForResolution:c,resolvedModuleNames:Me,resolvedTypeReferenceDirectives:lt,resolvedLibraries:je,resolvedFileToResolution:V,resolutionsWithFailedLookups:R,resolutionsWithOnlyAffectingLocations:N,directoryWatchesOfFailedLookups:nt,fileWatchesOfAffectingLocations:qe,packageDirWatchers:St,dirPathToSymlinkPackageRefCount:He,watchFailedLookupLocationsOfExternalModuleResolutions:xs,getModuleResolutionCache:()=>De,startRecordingFilesWithChangedResolutions:kt,finishRecordingFilesWithChangedResolutions:Zt,startCachingPerDirectoryResolution:mr,finishCachingPerDirectoryResolution:Vr,resolveModuleNameLiterals:Pi,resolveTypeReferenceDirectiveReferences:bi,resolveLibrary:Ns,resolveSingleModuleNameWithoutWatching:gi,removeResolutionsFromProjectReferenceRedirects:Rc,removeResolutionsOfFile:lg,hasChangedAutomaticTypeDirectiveNames:()=>Q,invalidateResolutionOfFile:Bi,invalidateResolutionsOfFailedLookupLocations:ct,setFilesWithInvalidatedNonRelativeUnresolvedImports:vA,createHasInvalidatedResolutions:jt,isFileWithInvalidatedNonRelativeUnresolvedImports:Dr,updateTypeRootsWatch:Pr,closeTypeRootsWatch:Mt,clear:Nt,onChangesAffectModuleResolution:Lt};function Et(cr){return cr.resolvedModule}function Kt(cr){return cr.resolvedTypeReferenceDirective}function Nt(){Y0(nt,VB),Y0(qe,VB),Tt.clear(),St.clear(),He.clear(),b.clear(),Mt(),Me.clear(),lt.clear(),V.clear(),R.clear(),N.clear(),ue=void 0,Ae=void 0,de=void 0,re=void 0,te=void 0,Be=!1,De.clear(),Le.clear(),De.update(n.getCompilationSettings()),Le.update(n.getCompilationSettings()),st.clear(),P.clear(),je.clear(),Q=!1}function Lt(){Be=!0,De.clearAllExceptPackageJsonInfoCache(),Le.clearAllExceptPackageJsonInfoCache(),De.update(n.getCompilationSettings()),Le.update(n.getCompilationSettings())}function kt(){d=[]}function Zt(){let cr=d;return d=void 0,cr}function Dr(cr){if(!h)return!1;let kn=h.get(cr);return!!kn&&!!kn.length}function jt(cr,kn){ct();let Pn=I;return I=void 0,{hasInvalidatedResolutions:an=>cr(an)||Be||!!Pn?.has(an)||Dr(an),hasInvalidatedLibResolutions:an=>{var Kr;return kn(an)||!!((Kr=je?.get(an))!=null&&Kr.isInvalidated)}}}function mr(){De.isReadonly=void 0,Le.isReadonly=void 0,st.isReadonly=void 0,De.getPackageJsonInfoCache().isReadonly=void 0,De.clearAllExceptPackageJsonInfoCache(),Le.clearAllExceptPackageJsonInfoCache(),st.clearAllExceptPackageJsonInfoCache(),b.forEach(mc),b.clear(),Tt.clear()}function Pt(cr){je.forEach((kn,Pn)=>{var an;(an=cr?.resolvedLibReferences)!=null&&an.has(Pn)||(gs(kn,n.toPath(rGe(n.getCompilationSettings(),Fe(),Pn)),Et),je.delete(Pn))})}function Vr(cr,kn){h=void 0,Be=!1,b.forEach(mc),b.clear(),cr!==kn&&(Pt(cr),cr?.getSourceFiles().forEach(Pn=>{var an;let Kr=na(Pn)?((an=Pn.packageJsonLocations)==null?void 0:an.length)??0:0,wn=P.get(Pn.resolvedPath)??v;for(let Pe=wn.length;PeKr)for(let Pe=Kr;Pe{let Kr=cr?.getSourceFileByPath(an);(!Kr||Kr.resolvedPath!==an)&&(Pn.forEach(wn=>qe.get(wn).files--),P.delete(an))})),nt.forEach(pr),qe.forEach(zr),St.forEach(Hr),Q=!1,De.isReadonly=!0,Le.isReadonly=!0,st.isReadonly=!0,De.getPackageJsonInfoCache().isReadonly=!0,Tt.clear()}function Hr(cr,kn){cr.dirPathToWatcher.size===0&&St.delete(kn)}function pr(cr,kn){cr.refCount===0&&(nt.delete(kn),cr.watcher.close())}function zr(cr,kn){var Pn;cr.files===0&&cr.resolutions===0&&!((Pn=cr.symlinks)!=null&&Pn.size)&&(qe.delete(kn),cr.watcher.close())}function $n({entries:cr,containingFile:kn,containingSourceFile:Pn,redirectedReference:an,options:Kr,perFileCache:wn,reusedNames:Pe,loader:ar,getResolutionWithResolvedFileName:sn,deferWatchingNonRelativeResolution:Qe,shouldRetryResolution:ur,logChanges:Re}){let Jt=n.toPath(kn),bt=wn.get(Jt)||wn.set(Jt,yte()).get(Jt),Vt=[],dn=Re&&Dr(Jt),On=n.getCurrentProgram(),Qn=On&&On.getResolvedProjectReferenceToRedirect(kn),Ii=Qn?!an||an.sourceFile.path!==Qn.sourceFile.path:!!an,ds=yte();for(let so of cr){let Vi=ar.nameAndMode.getName(so),xo=ar.nameAndMode.getMode(so,Pn,an?.commandLine.options||Kr),Yc=bt.get(Vi,xo);if(!ds.has(Vi,xo)&&(Be||Ii||!Yc||Yc.isInvalidated||dn&&!Ul(Vi)&&ur(Yc))){let Il=Yc;Yc=ar.resolve(Vi,xo),n.onDiscoveredSymlink&&sji(Yc)&&n.onDiscoveredSymlink(),bt.set(Vi,xo,Yc),Yc!==Il&&(xs(Vi,Yc,Jt,sn,Qe),Il&&gs(Il,Jt,sn)),Re&&d&&!Es(Il,Yc)&&(d.push(Jt),Re=!1)}else{let Il=lGe(n);if(WG(Kr,Il)&&!ds.has(Vi,xo)){let sa=sn(Yc);Tl(Il,wn===Me?sa?.resolvedFileName?sa.packageId?Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved:sa?.resolvedFileName?sa.packageId?Z.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:Z.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2:Z.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved,Vi,kn,sa?.resolvedFileName,sa?.packageId&&JR(sa.packageId))}}w.assert(Yc!==void 0&&!Yc.isInvalidated),ds.set(Vi,xo,!0),Vt.push(Yc)}return Pe?.forEach(so=>ds.set(ar.nameAndMode.getName(so),ar.nameAndMode.getMode(so,Pn,an?.commandLine.options||Kr),!0)),bt.size()!==ds.size()&&bt.forEach((so,Vi,xo)=>{ds.has(Vi,xo)||(gs(so,Jt,sn),bt.delete(Vi,xo))}),Vt;function Es(so,Vi){if(so===Vi)return!0;if(!so||!Vi)return!1;let xo=sn(so),Yc=sn(Vi);return xo===Yc?!0:!xo||!Yc?!1:xo.resolvedFileName===Yc.resolvedFileName}}function bi(cr,kn,Pn,an,Kr,wn){return $n({entries:cr,containingFile:kn,containingSourceFile:Kr,redirectedReference:Pn,options:an,reusedNames:wn,perFileCache:lt,loader:eGe(kn,Pn,an,lGe(n),Le),getResolutionWithResolvedFileName:Kt,shouldRetryResolution:Pe=>Pe.resolvedTypeReferenceDirective===void 0,deferWatchingNonRelativeResolution:!1})}function Pi(cr,kn,Pn,an,Kr,wn){return $n({entries:cr,containingFile:kn,containingSourceFile:Kr,redirectedReference:Pn,options:an,reusedNames:wn,perFileCache:Me,loader:hkt(kn,Pn,an,n,De),getResolutionWithResolvedFileName:Et,shouldRetryResolution:Pe=>!Pe.resolvedModule||!E6(Pe.resolvedModule.extension),logChanges:u,deferWatchingNonRelativeResolution:!0})}function Ns(cr,kn,Pn,an){let Kr=lGe(n),wn=je?.get(an);if(!wn||wn.isInvalidated){let Pe=wn;wn=Tke(cr,kn,Pn,Kr,st);let ar=n.toPath(kn);xs(cr,wn,ar,Et,!1),je.set(an,wn),Pe&&gs(Pe,ar,Et)}else if(WG(Pn,Kr)){let Pe=Et(wn);Tl(Kr,Pe?.resolvedFileName?Pe.packageId?Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:Z.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved,cr,kn,Pe?.resolvedFileName,Pe?.packageId&&JR(Pe.packageId))}return wn}function gi(cr,kn){var Pn,an;let Kr=n.toPath(kn),wn=Me.get(Kr),Pe=wn?.get(cr,void 0);if(Pe&&!Pe.isInvalidated)return Pe;let ar=(Pn=n.beforeResolveSingleModuleNameWithoutWatching)==null?void 0:Pn.call(n,De),sn=lGe(n),Qe=U6(cr,kn,n.getCompilationSettings(),sn,De);return(an=n.afterResolveSingleModuleNameWithoutWatching)==null||an.call(n,De,cr,kn,Qe,ar),Qe}function jn(cr){return fl(cr,"/node_modules/@types")}function xs(cr,kn,Pn,an,Kr){var wn;if(kn.refCount)kn.refCount++,w.assertIsDefined(kn.files);else{kn.refCount=1,w.assert(!((wn=kn.files)!=null&&wn.size)),!Kr||Ul(cr)?xi(kn):b.add(cr,kn);let Pe=an(kn);if(Pe&&Pe.resolvedFileName){let ar=n.toPath(Pe.resolvedFileName),sn=V.get(ar);sn||V.set(ar,sn=new Set),sn.add(kn)}}(kn.files??(kn.files=new Set)).add(Pn)}function Bc(cr,kn){let Pn=n.toPath(cr),an=j6e(cr,Pn,it,It,dt,Fe);if(an){let{dir:Kr,dirPath:wn,nonRecursive:Pe,packageDir:ar,packageDirPath:sn}=an;wn===It?(w.assert(Pe),w.assert(!ar),kn=!0):Pu(Kr,wn,ar,sn,Pe)}return kn}function xi(cr){w.assert(!!cr.refCount);let{failedLookupLocations:kn,affectingLocations:Pn,alternateResult:an}=cr;if(!kn?.length&&!Pn?.length&&!an)return;(kn?.length||an)&&R.add(cr);let Kr=!1;if(kn)for(let wn of kn)Kr=Bc(wn,Kr);an&&(Kr=Bc(an,Kr)),Kr&&Pu(it,It,void 0,void 0,!0),rc(cr,!kn?.length&&!an)}function rc(cr,kn){w.assert(!!cr.refCount);let{affectingLocations:Pn}=cr;if(Pn?.length){kn&&N.add(cr);for(let an of Pn)Wl(an,!0)}}function Wl(cr,kn){let Pn=qe.get(cr);if(Pn){kn?Pn.resolutions++:Pn.files++;return}let an=cr,Kr=!1,wn;n.realpath&&(an=n.realpath(cr),cr!==an&&(Kr=!0,wn=qe.get(an)));let Pe=kn?1:0,ar=kn?0:1;if(!Kr||!wn){let sn={watcher:fkt(n.toPath(an))?n.watchAffectingFileLocation(an,(Qe,ur)=>{Ne?.addOrDeleteFile(Qe,n.toPath(an),ur),gl(an,De.getPackageJsonInfoCache().getInternalMap()),n.scheduleInvalidateResolutionsOfFailedLookupLocations()}):_ue,resolutions:Kr?0:Pe,files:Kr?0:ar,symlinks:void 0};qe.set(an,sn),Kr&&(wn=sn)}if(Kr){w.assert(!!wn);let sn={watcher:{close:()=>{var Qe;let ur=qe.get(an);(Qe=ur?.symlinks)!=null&&Qe.delete(cr)&&!ur.symlinks.size&&!ur.resolutions&&!ur.files&&(qe.delete(an),ur.watcher.close())}},resolutions:Pe,files:ar,symlinks:void 0};qe.set(cr,sn),(wn.symlinks??(wn.symlinks=new Set)).add(cr)}}function gl(cr,kn){var Pn;let an=qe.get(cr);an?.resolutions&&(re??(re=new Set)).add(cr),an?.files&&(te??(te=new Set)).add(cr),(Pn=an?.symlinks)==null||Pn.forEach(Kr=>gl(Kr,kn)),kn?.delete(n.toPath(cr))}function mc(cr,kn){let Pn=n.getCurrentProgram();!Pn||!Pn.getTypeChecker().tryFindAmbientModuleWithoutAugmentations(kn)?cr.forEach(xi):cr.forEach(an=>rc(an,!0))}function _s(cr,kn,Pn,an,Kr){w.assert(!Kr);let wn=Tt.get(an),Pe=St.get(an);if(wn===void 0){let Qe=n.realpath(Pn);wn=Qe!==Pn&&n.toPath(Qe)!==an,Tt.set(an,wn),Pe?Pe.isSymlink!==wn&&(Pe.dirPathToWatcher.forEach(ur=>{Hs(Pe.isSymlink?an:kn,!1),ur.watcher=sn()}),Pe.isSymlink=wn):St.set(an,Pe={dirPathToWatcher:new Map,isSymlink:wn})}else w.assertIsDefined(Pe),w.assert(wn===Pe.isSymlink);let ar=Pe.dirPathToWatcher.get(kn);ar?ar.refCount++:(Pe.dirPathToWatcher.set(kn,{watcher:sn(),refCount:1}),wn&&He.set(kn,(He.get(kn)??0)+1));function sn(){return wn?ir(Pn,an,Kr):ir(cr,kn,Kr)}}function Pu(cr,kn,Pn,an,Kr){!an||!n.realpath?ir(cr,kn,Kr):_s(cr,kn,Pn,an,Kr)}function ir(cr,kn,Pn){let an=nt.get(kn);return an?(w.assert(!!Pn==!!an.nonRecursive),an.refCount++):nt.set(kn,an={watcher:za(cr,kn,Pn),refCount:1,nonRecursive:Pn}),an}function ni(cr,kn,Pn){let an=n.toPath(cr),Kr=j6e(cr,an,it,It,dt,Fe);if(Kr){let{dirPath:wn,packageDirPath:Pe}=Kr;if(wn===It)kn=!0;else if(Pe&&n.realpath){let ar=St.get(Pe),sn=ar.dirPathToWatcher.get(wn);if(sn.refCount--,sn.refCount===0){if(Hs(ar.isSymlink?Pe:wn,Pn),ar.dirPathToWatcher.delete(wn),ar.isSymlink){let Qe=He.get(wn)-1;Qe===0?He.delete(wn):He.set(wn,Qe)}Pn&&Hr(ar,Pe)}}else Hs(wn,Pn)}return kn}function gs(cr,kn,Pn,an){if(w.checkDefined(cr.files).delete(kn),cr.refCount--,cr.refCount)return;let Kr=Pn(cr);if(Kr&&Kr.resolvedFileName){let sn=n.toPath(Kr.resolvedFileName),Qe=V.get(sn);Qe?.delete(cr)&&!Qe.size&&V.delete(sn)}let{failedLookupLocations:wn,affectingLocations:Pe,alternateResult:ar}=cr;if(R.delete(cr)){let sn=!1;if(wn)for(let Qe of wn)sn=ni(Qe,sn,an);ar&&(sn=ni(ar,sn,an)),sn&&Hs(It,an)}else Pe?.length&&N.delete(cr);if(Pe)for(let sn of Pe){let Qe=qe.get(sn);Qe.resolutions--,an&&zr(Qe,sn)}}function Hs(cr,kn){let Pn=nt.get(cr);Pn.refCount--,kn&&pr(Pn,cr)}function za(cr,kn,Pn){return n.watchDirectoryOfFailedLookupLocation(cr,an=>{let Kr=n.toPath(an);Ne&&Ne.addOrDeleteFileOrDirectory(an,Kr),kr(Kr,kn===Kr)},Pn?0:1)}function nc(cr,kn,Pn,an){let Kr=cr.get(kn);Kr&&(Kr.forEach(wn=>gs(wn,kn,Pn,an)),cr.delete(kn))}function Rc(cr){if(!Ad(cr,".json"))return;let kn=n.getCurrentProgram();if(!kn)return;let Pn=kn.getResolvedProjectReferenceByPath(cr);Pn&&Pn.commandLine.fileNames.forEach(an=>lg(n.toPath(an)))}function lg(cr,kn){nc(Me,cr,Et,kn),nc(lt,cr,Kt,kn)}function ju(cr,kn){if(!cr)return!1;let Pn=!1;return cr.forEach(an=>{if(!(an.isInvalidated||!kn(an))){an.isInvalidated=Pn=!0;for(let Kr of w.checkDefined(an.files))(I??(I=new Set)).add(Kr),Q=Q||fl(Kr,mue)}}),Pn}function Bi(cr){lg(cr);let kn=Q;ju(V.get(cr),fI)&&Q&&!kn&&n.onChangedAutomaticTypeDirectiveNames()}function vA(cr){w.assert(h===cr||h===void 0),h=cr}function kr(cr,kn){if(kn)(de||(de=new Set)).add(cr);else{let Pn=aGe(cr);if(!Pn||(cr=Pn,n.fileIsOpen(cr)))return!1;let an=oa(cr);if(jn(cr)||NS(cr)||jn(an)||NS(an))(ue||(ue=new Set)).add(cr),(Ae||(Ae=new Set)).add(cr);else{if(Qxt(n.getCurrentProgram(),cr)||Ad(cr,".map"))return!1;(ue||(ue=new Set)).add(cr);let Kr=o_e(cr,!0);Kr&&(Ae||(Ae=new Set)).add(Kr)}}n.scheduleInvalidateResolutionsOfFailedLookupLocations()}function en(){let cr=De.getPackageJsonInfoCache().getInternalMap();cr&&(ue||Ae||de)&&cr.forEach((kn,Pn)=>wt(Pn)?cr.delete(Pn):void 0)}function ct(){var cr;if(Be)return te=void 0,en(),(ue||Ae||de||re)&&ju(je,rn),ue=void 0,Ae=void 0,de=void 0,re=void 0,!0;let kn=!1;return te&&((cr=n.getCurrentProgram())==null||cr.getSourceFiles().forEach(Pn=>{lr(Pn.packageJsonLocations,an=>te.has(an))&&((I??(I=new Set)).add(Pn.path),kn=!0)}),te=void 0),!ue&&!Ae&&!de&&!re||(kn=ju(R,rn)||kn,en(),ue=void 0,Ae=void 0,de=void 0,kn=ju(N,br)||kn,re=void 0),kn}function rn(cr){var kn;return br(cr)?!0:!ue&&!Ae&&!de?!1:((kn=cr.failedLookupLocations)==null?void 0:kn.some(Pn=>wt(n.toPath(Pn))))||!!cr.alternateResult&&wt(n.toPath(cr.alternateResult))}function wt(cr){return ue?.has(cr)||ae(Ae?.keys()||[],kn=>uc(cr,kn)?!0:void 0)||ae(de?.keys()||[],kn=>cr.length>kn.length&&uc(cr,kn)&&(W0(kn)||cr[kn.length]===$u)?!0:void 0)}function br(cr){var kn;return!!re&&((kn=cr.affectingLocations)==null?void 0:kn.some(Pn=>re.has(Pn)))}function Mt(){Y0(ht,xB)}function _r(cr){return ti(cr)?n.watchTypeRootsDirectory(cr,kn=>{let Pn=n.toPath(kn);Ne&&Ne.addOrDeleteFileOrDirectory(kn,Pn),Q=!0,n.onChangedAutomaticTypeDirectiveNames();let an=Ckt(cr,n.toPath(cr),It,dt,Fe,Kr=>nt.has(Kr)||He.has(Kr));an&&kr(Pn,an===Pn)},1):_ue}function Pr(){let cr=n.getCompilationSettings();if(cr.types){Mt();return}let kn=tue(cr,{getCurrentDirectory:Fe});kn?I6(ht,new Set(kn),{createNewValue:_r,onDeleteValue:xB}):Mt()}function ti(cr){return n.getCompilationSettings().typeRoots?!0:pkt(n.toPath(cr))}}function sji(n){var c,u;return!!((c=n.resolvedModule)!=null&&c.originalPath||(u=n.resolvedTypeReferenceDirective)!=null&&u.originalPath)}var yFr=yd?{getCurrentDirectory:()=>yd.getCurrentDirectory(),getNewLine:()=>yd.newLine,getCanonicalFileName:rA(yd.useCaseSensitiveFileNames)}:void 0;function q6(n,c){let u=n===yd&&yFr?yFr:{getCurrentDirectory:()=>n.getCurrentDirectory(),getNewLine:()=>n.newLine,getCanonicalFileName:rA(n.useCaseSensitiveFileNames)};if(!c)return I=>n.write(N6e(I,u));let d=new Array(1);return I=>{d[0]=I,n.write(Kxt(d,u)+u.getNewLine()),d[0]=void 0}}function bFr(n,c,u){return n.clearScreen&&!u.preserveWatchOutput&&!u.extendedDiagnostics&&!u.diagnostics&&Ue(q6e,c.code)?(n.clearScreen(),!0):!1}var q6e=[Z.Starting_compilation_in_watch_mode.code,Z.File_change_detected_Starting_incremental_compilation.code];function oji(n,c){return Ue(q6e,n.code)?c+c:c}function w_e(n){return n.now?n.now().toLocaleTimeString("en-US",{timeZone:"UTC"}).replace("\u202F"," "):new Date().toLocaleTimeString()}function $6e(n,c){return c?(u,d,I)=>{bFr(n,u,I);let h=`[${_M(w_e(n),"\x1B[90m")}] `;h+=`${kN(u.messageText,n.newLine)}${d+d}`,n.write(h)}:(u,d,I)=>{let h="";bFr(n,u,I)||(h+=d),h+=`${w_e(n)} - `,h+=`${kN(u.messageText,n.newLine)}${oji(u,d)}`,n.write(h)}}function _kt(n,c,u,d,I,h){let b=I;b.onUnRecoverableConfigFileDiagnostic=N=>vFr(I,h,N);let R=e_e(n,c,b,u,d);return b.onUnRecoverableConfigFileDiagnostic=void 0,R}function uGe(n){return ft(n,c=>c.category===1)}function gGe(n){return Gt(n,u=>u.category===1).map(u=>{if(u.file!==void 0)return`${u.file.fileName}`}).map(u=>{if(u===void 0)return;let d=be(n,I=>I.file!==void 0&&I.file.fileName===u);if(d!==void 0){let{line:I}=Vl(d.file,d.start);return{fileName:u,line:I+1}}})}function e7e(n){return n===1?Z.Found_1_error_Watching_for_file_changes:Z.Found_0_errors_Watching_for_file_changes}function EFr(n,c){let u=_M(":"+n.line,"\x1B[90m");return CI(n.fileName)&&CI(c)?Ip(c,n.fileName,!1)+u:n.fileName+u}function t7e(n,c,u,d){if(n===0)return"";let I=c.filter(P=>P!==void 0),h=I.map(P=>`${P.fileName}:${P.line}`).filter((P,Q,te)=>te.indexOf(P)===Q),b=I[0]&&EFr(I[0],d.getCurrentDirectory()),R;n===1?R=c[0]!==void 0?[Z.Found_1_error_in_0,b]:[Z.Found_1_error]:R=h.length===0?[Z.Found_0_errors,n]:h.length===1?[Z.Found_0_errors_in_the_same_file_starting_at_Colon_1,n,b]:[Z.Found_0_errors_in_1_files,n,h.length];let N=If(...R),V=h.length>1?aji(I,d):"";return`${u}${kN(N.messageText,u)}${u}${u}${V}`}function aji(n,c){let u=n.filter((Q,te,re)=>te===re.findIndex(ue=>ue?.fileName===Q?.fileName));if(u.length===0)return"";let d=Q=>Math.log(Q)*Math.LOG10E+1,I=u.map(Q=>[Q,ft(n,te=>te.fileName===Q.fileName)]),h=I.reduce((Q,te)=>Math.max(Q,te[1]||0),0),b=Z.Errors_Files.message,R=b.split(" ")[0].length,N=Math.max(R,d(h)),V=Math.max(d(h)-R,0),P="";return P+=" ".repeat(V)+b+` +`,I.forEach(Q=>{let[te,re]=Q,ue=Math.log(re)*Math.LOG10E+1|0,Ae=ue{c(d.fileName)})}function n7e(n,c){var u,d;let I=n.getFileIncludeReasons(),h=b=>RE(b,n.getCurrentDirectory(),n.getCanonicalFileName);for(let b of n.getSourceFiles())c(`${kte(b,h)}`),(u=I.get(b.path))==null||u.forEach(R=>c(` ${a7e(n,R,h).messageText}`)),(d=i7e(b,h))==null||d.forEach(R=>c(` ${R.messageText}`))}function i7e(n,c){var u;let d;if(n.path!==n.resolvedPath&&(d??(d=[])).push(ou(void 0,Z.File_is_output_of_project_reference_source_0,kte(n.originalFileName,c))),n.redirectInfo&&(d??(d=[])).push(ou(void 0,Z.File_redirects_to_file_0,kte(n.redirectInfo.redirectTarget,c))),na(n))switch(n.impliedNodeFormat){case 99:n.packageJsonScope&&(d??(d=[])).push(ou(void 0,Z.File_is_ECMAScript_module_because_0_has_field_type_with_value_module,kte(Ta(n.packageJsonLocations),c)));break;case 1:n.packageJsonScope?(d??(d=[])).push(ou(void 0,n.packageJsonScope.contents.packageJsonContent.type?Z.File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module:Z.File_is_CommonJS_module_because_0_does_not_have_field_type,kte(Ta(n.packageJsonLocations),c))):(u=n.packageJsonLocations)!=null&&u.length&&(d??(d=[])).push(ou(void 0,Z.File_is_CommonJS_module_because_package_json_was_not_found));break}return d}function s7e(n,c){var u;let d=n.getCompilerOptions().configFile;if(!((u=d?.configFileSpecs)!=null&&u.validatedFilesSpec))return;let I=n.getCanonicalFileName(c),h=oa(Qc(d.fileName,n.getCurrentDirectory())),b=ke(d.configFileSpecs.validatedFilesSpec,R=>n.getCanonicalFileName(Qc(R,h))===I);return b!==-1?d.configFileSpecs.validatedFilesSpecBeforeSubstitution[b]:void 0}function o7e(n,c){var u,d;let I=n.getCompilerOptions().configFile;if(!((u=I?.configFileSpecs)!=null&&u.validatedIncludeSpecs))return;if(I.configFileSpecs.isDefaultIncludeSpec)return!0;let h=Ad(c,".json"),b=oa(Qc(I.fileName,n.getCurrentDirectory())),R=n.useCaseSensitiveFileNames(),N=ke((d=I?.configFileSpecs)==null?void 0:d.validatedIncludeSpecs,V=>{if(h&&!fl(V,".json"))return!1;let P=JDe(V,b,"files");return!!P&&TG(`(${P})$`,R).test(c)});return N!==-1?I.configFileSpecs.validatedIncludeSpecsBeforeSubstitution[N]:void 0}function a7e(n,c,u){var d,I;let h=n.getCompilerOptions();if(pP(c)){let b=hue(n,c),R=Rte(b)?b.file.text.substring(b.pos,b.end):`"${b.text}"`,N;switch(w.assert(Rte(b)||c.kind===3,"Only synthetic references are imports"),c.kind){case 3:Rte(b)?N=b.packageId?Z.Imported_via_0_from_file_1_with_packageId_2:Z.Imported_via_0_from_file_1:b.text===Dx?N=b.packageId?Z.Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions:Z.Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions:N=b.packageId?Z.Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions:Z.Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions;break;case 4:w.assert(!b.packageId),N=Z.Referenced_via_0_from_file_1;break;case 5:N=b.packageId?Z.Type_library_referenced_via_0_from_file_1_with_packageId_2:Z.Type_library_referenced_via_0_from_file_1;break;case 7:w.assert(!b.packageId),N=Z.Library_referenced_via_0_from_file_1;break;default:w.assertNever(c)}return ou(void 0,N,R,kte(b.file,u),b.packageId&&JR(b.packageId))}switch(c.kind){case 0:if(!((d=h.configFile)!=null&&d.configFileSpecs))return ou(void 0,Z.Root_file_specified_for_compilation);let b=Qc(n.getRootFileNames()[c.index],n.getCurrentDirectory());if(s7e(n,b))return ou(void 0,Z.Part_of_files_list_in_tsconfig_json);let N=o7e(n,b);return Ya(N)?ou(void 0,Z.Matched_by_include_pattern_0_in_1,N,kte(h.configFile,u)):ou(void 0,N?Z.Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk:Z.Root_file_specified_for_compilation);case 1:case 2:let V=c.kind===2,P=w.checkDefined((I=n.getResolvedProjectReferences())==null?void 0:I[c.index]);return ou(void 0,h.outFile?V?Z.Output_from_referenced_project_0_included_because_1_specified:Z.Source_from_referenced_project_0_included_because_1_specified:V?Z.Output_from_referenced_project_0_included_because_module_is_specified_as_none:Z.Source_from_referenced_project_0_included_because_module_is_specified_as_none,kte(P.sourceFile.fileName,u),h.outFile?"--outFile":"--out");case 8:{let Q=h.types?c.packageId?[Z.Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1,c.typeReference,JR(c.packageId)]:[Z.Entry_point_of_type_library_0_specified_in_compilerOptions,c.typeReference]:c.packageId?[Z.Entry_point_for_implicit_type_library_0_with_packageId_1,c.typeReference,JR(c.packageId)]:[Z.Entry_point_for_implicit_type_library_0,c.typeReference];return ou(void 0,...Q)}case 6:{if(c.index!==void 0)return ou(void 0,Z.Library_0_specified_in_compilerOptions,h.lib[c.index]);let Q=Pee(sA(h)),te=Q?[Z.Default_library_for_target_0,Q]:[Z.Default_library];return ou(void 0,...te)}default:w.assertNever(c)}}function kte(n,c){let u=Ya(n)?n:n.fileName;return c?c(u):u}function AGe(n,c,u,d,I,h,b,R){let N=!!n.getCompilerOptions().listFilesOnly,V=n.getConfigFileParsingDiagnostics().slice(),P=V.length;ai(V,n.getSyntacticDiagnostics(void 0,h)),V.length===P&&(ai(V,n.getOptionsDiagnostics(h)),N||(ai(V,n.getGlobalDiagnostics(h)),V.length===P&&ai(V,n.getSemanticDiagnostics(void 0,h))));let Q=N?{emitSkipped:!0,diagnostics:v}:n.emit(void 0,I,h,b,R),{emittedFiles:te,diagnostics:re}=Q;ai(V,re);let ue=iA(V);if(ue.forEach(c),u){let Ae=n.getCurrentDirectory();X(te,de=>{let Be=Qc(de,Ae);u(`TSFILE: ${Be}`)}),r7e(n,u)}return d&&d(uGe(ue),gGe(ue)),{emitResult:Q,diagnostics:ue}}function c7e(n,c,u,d,I,h,b,R){let{emitResult:N,diagnostics:V}=AGe(n,c,u,d,I,h,b,R);return N.emitSkipped&&V.length>0?1:V.length>0?2:0}var _ue={close:oc},yue=()=>_ue;function l7e(n=yd,c){return{onWatchStatusChange:c||$6e(n),watchFile:Yi(n,n.watchFile)||yue,watchDirectory:Yi(n,n.watchDirectory)||yue,setTimeout:Yi(n,n.setTimeout)||oc,clearTimeout:Yi(n,n.clearTimeout)||oc}}var _m={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 u7e(n,c){let u=n.trace?c.extendedDiagnostics?2:c.diagnostics?1:0:0,d=u!==0?h=>n.trace(h):oc,I=B6e(n,u,d);return I.writeLog=d,I}function g7e(n,c,u=n){let d=n.useCaseSensitiveFileNames(),I={getSourceFile:w6e((h,b)=>b?n.readFile(h,b):I.readFile(h),void 0),getDefaultLibLocation:Yi(n,n.getDefaultLibLocation),getDefaultLibFileName:h=>n.getDefaultLibFileName(h),writeFile:T6e((h,b,R)=>n.writeFile(h,b,R),h=>n.createDirectory(h),h=>n.directoryExists(h)),getCurrentDirectory:su(()=>n.getCurrentDirectory()),useCaseSensitiveFileNames:()=>d,getCanonicalFileName:rA(d),getNewLine:()=>F1(c()),fileExists:h=>n.fileExists(h),readFile:h=>n.readFile(h),trace:Yi(n,n.trace),directoryExists:Yi(u,u.directoryExists),getDirectories:Yi(u,u.getDirectories),realpath:Yi(n,n.realpath),getEnvironmentVariable:Yi(n,n.getEnvironmentVariable)||(()=>""),createHash:Yi(n,n.createHash),readDirectory:Yi(n,n.readDirectory),storeSignatureInfo:n.storeSignatureInfo,jsDocParsingMode:n.jsDocParsingMode};return I}function dGe(n,c){if(c.match(QDt)){let u=c.length,d=u;for(let I=u-1;I>=0;I--){let h=c.charCodeAt(I);switch(h){case 10:I&&c.charCodeAt(I-1)===13&&I--;case 13:break;default:if(h<127||!XC(h)){d=I;continue}break}let b=c.substring(d,u);if(b.match(q8e)){c=c.substring(0,d);break}else if(!b.match($8e))break;u=d}}return(n.createHash||vh)(c)}function pGe(n){let c=n.getSourceFile;n.getSourceFile=(...u)=>{let d=c.call(n,...u);return d&&(d.version=dGe(n,d.text)),d}}function A7e(n,c){let u=su(()=>oa(Mc(n.getExecutingFilePath())));return{useCaseSensitiveFileNames:()=>n.useCaseSensitiveFileNames,getNewLine:()=>n.newLine,getCurrentDirectory:su(()=>n.getCurrentDirectory()),getDefaultLibLocation:u,getDefaultLibFileName:d=>Do(u(),Cg(d)),fileExists:d=>n.fileExists(d),readFile:(d,I)=>n.readFile(d,I),directoryExists:d=>n.directoryExists(d),getDirectories:d=>n.getDirectories(d),readDirectory:(d,I,h,b,R)=>n.readDirectory(d,I,h,b,R),realpath:Yi(n,n.realpath),getEnvironmentVariable:Yi(n,n.getEnvironmentVariable),trace:d=>n.write(d+n.newLine),createDirectory:d=>n.createDirectory(d),writeFile:(d,I,h)=>n.writeFile(d,I,h),createHash:Yi(n,n.createHash),createProgram:c||K6e,storeSignatureInfo:n.storeSignatureInfo,now:Yi(n,n.now)}}function BFr(n=yd,c,u,d){let I=b=>n.write(b+n.newLine),h=A7e(n,c);return Ps(h,l7e(n,d)),h.afterProgramCreate=b=>{let R=b.getCompilerOptions(),N=F1(R);AGe(b,u,I,V=>h.onWatchStatusChange(If(e7e(V),V),N,R,V))},h}function vFr(n,c,u){c(u),n.exit(1)}function d7e({configFileName:n,optionsToExtend:c,watchOptionsToExtend:u,extraFileExtensions:d,system:I,createProgram:h,reportDiagnostic:b,reportWatchStatus:R}){let N=b||q6(I),V=BFr(I,h,N,R);return V.onUnRecoverableConfigFileDiagnostic=P=>vFr(I,N,P),V.configFileName=n,V.optionsToExtend=c,V.watchOptionsToExtend=u,V.extraFileExtensions=d,V}function p7e({rootFiles:n,options:c,watchOptions:u,projectReferences:d,system:I,createProgram:h,reportDiagnostic:b,reportWatchStatus:R}){let N=BFr(I,h,b||q6(I),R);return N.rootFiles=n,N.options=c,N.watchOptions=u,N.projectReferences=d,N}function bkt(n){let c=n.system||yd,u=n.host||(n.host=IGe(n.options,c)),d=Ekt(n),I=c7e(d,n.reportDiagnostic||q6(c),h=>u.trace&&u.trace(h),n.reportErrorSummary||n.options.pretty?(h,b)=>c.write(t7e(h,b,c.newLine,u)):void 0);return n.afterProgramEmitAndDiagnostics&&n.afterProgramEmitAndDiagnostics(d),I}function fGe(n,c){let u=LZ(n);if(!u)return;let d;if(c.getBuildInfo)d=c.getBuildInfo(u,n.configFilePath);else{let I=c.readFile(u);if(!I)return;d=y6e(u,I)}if(!(!d||d.version!==y||!d.program))return Akt(d,u,c)}function IGe(n,c=yd){let u=$ke(n,void 0,c);return u.createHash=Yi(c,c.createHash),u.storeSignatureInfo=c.storeSignatureInfo,pGe(u),Cue(u,d=>AA(d,u.getCurrentDirectory(),u.getCanonicalFileName)),u}function Ekt({rootNames:n,options:c,configFileParsingDiagnostics:u,projectReferences:d,host:I,createProgram:h}){I=I||IGe(c),h=h||K6e;let b=fGe(c,I);return h(n,c,I,b,u,d)}function SFr(n,c,u,d,I,h,b,R){return Na(n)?p7e({rootFiles:n,options:c,watchOptions:R,projectReferences:b,system:u,createProgram:d,reportDiagnostic:I,reportWatchStatus:h}):d7e({configFileName:n,optionsToExtend:c,watchOptionsToExtend:b,extraFileExtensions:R,system:u,createProgram:d,reportDiagnostic:I,reportWatchStatus:h})}function f7e(n){let c,u,d,I,h,b,R,N,V=n.extendedConfigCache,P=!1,Q=new Map,te,re=!1,ue=n.useCaseSensitiveFileNames(),Ae=n.getCurrentDirectory(),{configFileName:de,optionsToExtend:Be={},watchOptionsToExtend:Fe,extraFileExtensions:Ne,createProgram:Me}=n,{rootFiles:De,options:lt,watchOptions:Le,projectReferences:je}=n,st,nt,qe=!1,it=!1,It=de===void 0?void 0:jke(n,Ae,ue),dt=It||n,Tt=sGe(n,dt),St=gi();de&&n.configFileParsingResult&&(kr(n.configFileParsingResult),St=gi()),_s(Z.Starting_compilation_in_watch_mode),de&&!n.configFileParsingResult&&(St=F1(Be),w.assert(!De),vA(),St=gi()),w.assert(lt),w.assert(De);let{watchFile:He,watchDirectory:ht,writeLog:Et}=u7e(n,lt),Kt=rA(ue);Et(`Current directory: ${Ae} CaseSensitiveFileNames: ${ue}`);let Nt;de&&(Nt=He(de,za,2e3,Le,_m.ConfigFile));let Lt,kt=bkr(__filename);kt&&(Lt=He(kt,nc,2e3,Le,_m.ConfigFile));let Zt=g7e(n,()=>lt,dt);pGe(Zt);let Dr=Zt.getSourceFile;Zt.getSourceFile=(an,...Kr)=>rc(an,jn(an),...Kr),Zt.getSourceFileByPath=rc,Zt.getNewLine=()=>St,Zt.fileExists=xi,Zt.onReleaseOldSourceFile=mc,Zt.onReleaseParsedCommandLine=rn,Zt.toPath=jn,Zt.getCompilationSettings=()=>lt,Zt.useSourceOfProjectReferenceRedirect=Yi(n,n.useSourceOfProjectReferenceRedirect),Zt.watchDirectoryOfFailedLookupLocation=(an,Kr,wn)=>ht(an,Kr,wn,Le,_m.FailedLookupLocations),Zt.watchAffectingFileLocation=(an,Kr)=>He(an,Kr,2e3,Le,_m.AffectingFileLocation),Zt.watchTypeRootsDirectory=(an,Kr,wn)=>ht(an,Kr,wn,Le,_m.TypeRoots),Zt.getCachedDirectoryStructureHost=()=>It,Zt.scheduleInvalidateResolutionsOfFailedLookupLocations=ni,Zt.onInvalidatedResolution=Hs,Zt.onChangedAutomaticTypeDirectiveNames=Hs,Zt.fileIsOpen=NC,Zt.getCurrentProgram=$n,Zt.writeLog=Et,Zt.getParsedCommandLine=en;let jt=z6e(Zt,de?oa(Qc(de,Ae)):Ae,!1);Zt.resolveModuleNameLiterals=Yi(n,n.resolveModuleNameLiterals),Zt.resolveModuleNames=Yi(n,n.resolveModuleNames),!Zt.resolveModuleNameLiterals&&!Zt.resolveModuleNames&&(Zt.resolveModuleNameLiterals=jt.resolveModuleNameLiterals.bind(jt)),Zt.resolveTypeReferenceDirectiveReferences=Yi(n,n.resolveTypeReferenceDirectiveReferences),Zt.resolveTypeReferenceDirectives=Yi(n,n.resolveTypeReferenceDirectives),!Zt.resolveTypeReferenceDirectiveReferences&&!Zt.resolveTypeReferenceDirectives&&(Zt.resolveTypeReferenceDirectiveReferences=jt.resolveTypeReferenceDirectiveReferences.bind(jt)),Zt.resolveLibrary=n.resolveLibrary?n.resolveLibrary.bind(n):jt.resolveLibrary.bind(jt),Zt.getModuleResolutionCache=n.resolveModuleNameLiterals||n.resolveModuleNames?Yi(n,n.getModuleResolutionCache):()=>jt.getModuleResolutionCache();let Pt=!!n.resolveModuleNameLiterals||!!n.resolveTypeReferenceDirectiveReferences||!!n.resolveModuleNames||!!n.resolveTypeReferenceDirectives?Yi(n,n.hasInvalidatedResolutions)||fI:NC,Vr=n.resolveLibrary?Yi(n,n.hasInvalidatedLibResolutions)||fI:NC;return c=fGe(lt,Zt),bi(),ti(),de&&kn(jn(de),lt,Le,_m.ExtendedConfigFile),de?{getCurrentProgram:zr,getProgram:lg,close:Hr,getResolutionCache:pr}:{getCurrentProgram:zr,getProgram:lg,updateRootFileNames:Ns,close:Hr,getResolutionCache:pr};function Hr(){ir(),jt.clear(),Y0(Q,an=>{an&&an.fileWatcher&&(an.fileWatcher.close(),an.fileWatcher=void 0)}),Nt&&(Nt.close(),Nt=void 0),Lt&&(Lt.close(),Lt=void 0),V?.clear(),V=void 0,N&&(Y0(N,VB),N=void 0),I&&(Y0(I,VB),I=void 0),d&&(Y0(d,xB),d=void 0),R&&(Y0(R,an=>{var Kr;(Kr=an.watcher)==null||Kr.close(),an.watcher=void 0,an.watchedDirectories&&Y0(an.watchedDirectories,VB),an.watchedDirectories=void 0}),R=void 0),c=void 0}function pr(){return jt}function zr(){return c}function $n(){return c&&c.getProgramOrUndefined()}function bi(an=!1){Et("Synchronizing program"),w.assert(lt),w.assert(De),ir();let Kr=zr();re&&(St=gi(),Kr&&NB(Kr.getCompilerOptions(),lt)&&jt.onChangesAffectModuleResolution());let{hasInvalidatedResolutions:wn,hasInvalidatedLibResolutions:Pe}=jt.createHasInvalidatedResolutions(an?fI:Pt,Vr),{originalReadFile:ar,originalFileExists:sn,originalDirectoryExists:Qe,originalCreateDirectory:ur,originalWriteFile:Re,readFileWithCache:Jt}=Cue(Zt,jn);return W6e($n(),De,lt,bt=>gl(bt,Jt),bt=>Zt.fileExists(bt),wn,Pe,Pu,en,je)?it&&(P&&_s(Z.File_change_detected_Starting_incremental_compilation),c=Me(void 0,void 0,Zt,c,nt,je),it=!1):(P&&_s(Z.File_change_detected_Starting_incremental_compilation),Pi(wn,Pe)),P=!1,n.afterProgramCreate&&Kr!==c&&n.afterProgramCreate(c),Zt.readFile=ar,Zt.fileExists=sn,Zt.directoryExists=Qe,Zt.createDirectory=ur,Zt.writeFile=Re,c}function Pi(an,Kr){Et("CreatingProgramWith::"),Et(` roots: ${JSON.stringify(De)}`),Et(` options: ${JSON.stringify(lt)}`),je&&Et(` projectReferences: ${JSON.stringify(je)}`);let wn=re||!$n();re=!1,it=!1,jt.startCachingPerDirectoryResolution(),Zt.hasInvalidatedResolutions=an,Zt.hasInvalidatedLibResolutions=Kr,Zt.hasChangedAutomaticTypeDirectiveNames=Pu;let Pe=$n();if(c=Me(De,lt,Zt,c,nt,je),jt.finishCachingPerDirectoryResolution(c.getProgram(),Pe),E6e(c.getProgram(),d||(d=new Map),_r),wn&&jt.updateTypeRootsWatch(),te){for(let ar of te)d.has(ar)||Q.delete(ar);te=void 0}}function Ns(an){w.assert(!de,"Cannot update root file names with config file watch mode"),De=an,Hs()}function gi(){return F1(lt||Be)}function jn(an){return AA(an,Ae,Kt)}function xs(an){return typeof an=="boolean"}function Bc(an){return typeof an.version=="boolean"}function xi(an){let Kr=jn(an);return xs(Q.get(Kr))?!1:dt.fileExists(an)}function rc(an,Kr,wn,Pe,ar){let sn=Q.get(Kr);if(xs(sn))return;let Qe=typeof wn=="object"?wn.impliedNodeFormat:void 0;if(sn===void 0||ar||Bc(sn)||sn.sourceFile.impliedNodeFormat!==Qe){let ur=Dr(an,wn,Pe);if(sn)ur?(sn.sourceFile=ur,sn.version=ur.version,sn.fileWatcher||(sn.fileWatcher=wt(Kr,an,br,250,Le,_m.SourceFile))):(sn.fileWatcher&&sn.fileWatcher.close(),Q.set(Kr,!1));else if(ur){let Re=wt(Kr,an,br,250,Le,_m.SourceFile);Q.set(Kr,{sourceFile:ur,version:ur.version,fileWatcher:Re})}else Q.set(Kr,!1);return ur}return sn.sourceFile}function Wl(an){let Kr=Q.get(an);Kr!==void 0&&(xs(Kr)?Q.set(an,{version:!1}):Kr.version=!1)}function gl(an,Kr){let wn=Q.get(an);if(!wn)return;if(wn.version)return wn.version;let Pe=Kr(an);return Pe!==void 0?dGe(Zt,Pe):void 0}function mc(an,Kr,wn){let Pe=Q.get(an.resolvedPath);Pe!==void 0&&(xs(Pe)?(te||(te=[])).push(an.path):Pe.sourceFile===an&&(Pe.fileWatcher&&Pe.fileWatcher.close(),Q.delete(an.resolvedPath),wn||jt.removeResolutionsOfFile(an.path)))}function _s(an){n.onWatchStatusChange&&n.onWatchStatusChange(If(an),St,lt||Be)}function Pu(){return jt.hasChangedAutomaticTypeDirectiveNames()}function ir(){return b?(n.clearTimeout(b),b=void 0,!0):!1}function ni(){if(!n.setTimeout||!n.clearTimeout)return jt.invalidateResolutionsOfFailedLookupLocations();let an=ir();Et(`Scheduling invalidateFailedLookup${an?", Cancelled earlier one":""}`),b=n.setTimeout(gs,250,"timerToInvalidateFailedLookupResolutions")}function gs(){b=void 0,jt.invalidateResolutionsOfFailedLookupLocations()&&Hs()}function Hs(){!n.setTimeout||!n.clearTimeout||(h&&n.clearTimeout(h),Et("Scheduling update"),h=n.setTimeout(Rc,250,"timerToUpdateProgram"))}function za(){w.assert(!!de),u=2,Hs()}function nc(){Et("Clearing resolutions"),jt.clear(),u=3,Hs()}function Rc(){h=void 0,P=!0,lg()}function lg(){var an,Kr,wn,Pe,ar;switch(u){case 1:(an=jl)==null||an.logStartUpdateProgram("PartialConfigReload"),ju();break;case 2:(Kr=jl)==null||Kr.logStartUpdateProgram("FullConfigReload"),Bi();break;case 3:(wn=jl)==null||wn.logStartUpdateProgram("SynchronizeProgramWithResolutions"),bi(!0);break;default:(Pe=jl)==null||Pe.logStartUpdateProgram("SynchronizeProgram"),bi();break}return(ar=jl)==null||ar.logStopUpdateProgram("Done"),zr()}function ju(){Et("Reloading new file names and options"),w.assert(lt),w.assert(de),u=0,De=$le(lt.configFile.configFileSpecs,Qc(oa(de),Ae),lt,Tt,Ne),yke(De,Qc(de,Ae),lt.configFile.configFileSpecs,nt,qe)&&(it=!0),bi()}function Bi(){w.assert(de),Et(`Reloading config file: ${de}`),u=0,It&&It.clearCache(),vA(),re=!0,bi(),ti(),kn(jn(de),lt,Le,_m.ExtendedConfigFile)}function vA(){w.assert(de),kr(e_e(de,Be,Tt,V||(V=new Map),Fe,Ne))}function kr(an){De=an.fileNames,lt=an.options,Le=an.watchOptions,je=an.projectReferences,st=an.wildcardDirectories,nt=yM(an).slice(),qe=qle(an.raw),it=!0}function en(an){let Kr=jn(an),wn=R?.get(Kr);if(wn){if(!wn.updateLevel)return wn.parsedCommandLine;if(wn.parsedCommandLine&&wn.updateLevel===1&&!n.getParsedCommandLine){Et("Reloading new file names and options"),w.assert(lt);let ar=$le(wn.parsedCommandLine.options.configFile.configFileSpecs,Qc(oa(an),Ae),lt,Tt);return wn.parsedCommandLine={...wn.parsedCommandLine,fileNames:ar},wn.updateLevel=void 0,wn.parsedCommandLine}}Et(`Loading config file: ${an}`);let Pe=n.getParsedCommandLine?n.getParsedCommandLine(an):ct(an);return wn?(wn.parsedCommandLine=Pe,wn.updateLevel=void 0):(R||(R=new Map)).set(Kr,wn={parsedCommandLine:Pe}),Pn(an,Kr,wn),Pe}function ct(an){let Kr=Tt.onUnRecoverableConfigFileDiagnostic;Tt.onUnRecoverableConfigFileDiagnostic=oc;let wn=e_e(an,void 0,Tt,V||(V=new Map),Fe);return Tt.onUnRecoverableConfigFileDiagnostic=Kr,wn}function rn(an){var Kr;let wn=jn(an),Pe=R?.get(wn);Pe&&(R.delete(wn),Pe.watchedDirectories&&Y0(Pe.watchedDirectories,VB),(Kr=Pe.watcher)==null||Kr.close(),b6e(wn,N))}function wt(an,Kr,wn,Pe,ar,sn){return He(Kr,(Qe,ur)=>wn(Qe,ur,an),Pe,ar,sn)}function br(an,Kr,wn){Mt(an,wn,Kr),Kr===2&&Q.has(wn)&&jt.invalidateResolutionOfFile(wn),Wl(wn),Hs()}function Mt(an,Kr,wn){It&&It.addOrDeleteFile(an,Kr,wn)}function _r(an,Kr){return R?.has(an)?_ue:wt(an,Kr,Pr,500,Le,_m.MissingFile)}function Pr(an,Kr,wn){Mt(an,wn,Kr),Kr===0&&d.has(wn)&&(d.get(wn).close(),d.delete(wn),Wl(wn),Hs())}function ti(){h_e(I||(I=new Map),st,cr)}function cr(an,Kr){return ht(an,wn=>{w.assert(de),w.assert(lt);let Pe=jn(wn);It&&It.addOrDeleteFileOrDirectory(wn,Pe),Wl(Pe),!__e({watchedDirPath:jn(an),fileOrDirectory:wn,fileOrDirectoryPath:Pe,configFileName:de,extraFileExtensions:Ne,options:lt,program:zr()||De,currentDirectory:Ae,useCaseSensitiveFileNames:ue,writeLog:Et,toPath:jn})&&u!==2&&(u=1,Hs())},Kr,Le,_m.WildcardDirectory)}function kn(an,Kr,wn,Pe){zke(an,Kr,N||(N=new Map),(ar,sn)=>He(ar,(Qe,ur)=>{var Re;Mt(ar,sn,ur),V&&qke(V,sn,jn);let Jt=(Re=N.get(sn))==null?void 0:Re.projects;Jt?.size&&Jt.forEach(bt=>{if(de&&jn(de)===bt)u=2;else{let Vt=R?.get(bt);Vt&&(Vt.updateLevel=2),jt.removeResolutionsFromProjectReferenceRedirects(bt)}Hs()})},2e3,wn,Pe),jn)}function Pn(an,Kr,wn){var Pe,ar,sn,Qe;wn.watcher||(wn.watcher=He(an,(ur,Re)=>{Mt(an,Kr,Re);let Jt=R?.get(Kr);Jt&&(Jt.updateLevel=2),jt.removeResolutionsFromProjectReferenceRedirects(Kr),Hs()},2e3,((Pe=wn.parsedCommandLine)==null?void 0:Pe.watchOptions)||Le,_m.ConfigFileOfReferencedProject)),h_e(wn.watchedDirectories||(wn.watchedDirectories=new Map),(ar=wn.parsedCommandLine)==null?void 0:ar.wildcardDirectories,(ur,Re)=>{var Jt;return ht(ur,bt=>{let Vt=jn(bt);It&&It.addOrDeleteFileOrDirectory(bt,Vt),Wl(Vt);let dn=R?.get(Kr);dn?.parsedCommandLine&&(__e({watchedDirPath:jn(ur),fileOrDirectory:bt,fileOrDirectoryPath:Vt,configFileName:an,options:dn.parsedCommandLine.options,program:dn.parsedCommandLine.fileNames,currentDirectory:Ae,useCaseSensitiveFileNames:ue,writeLog:Et,toPath:jn})||dn.updateLevel!==2&&(dn.updateLevel=1,Hs()))},Re,((Jt=wn.parsedCommandLine)==null?void 0:Jt.watchOptions)||Le,_m.WildcardDirectoryOfReferencedProject)}),kn(Kr,(sn=wn.parsedCommandLine)==null?void 0:sn.options,((Qe=wn.parsedCommandLine)==null?void 0:Qe.watchOptions)||Le,_m.ExtendedConfigOfReferencedProject)}}var Bkt=(n=>(n[n.Unbuildable=0]="Unbuildable",n[n.UpToDate=1]="UpToDate",n[n.UpToDateWithUpstreamTypes=2]="UpToDateWithUpstreamTypes",n[n.OutputMissing=3]="OutputMissing",n[n.ErrorReadingFile=4]="ErrorReadingFile",n[n.OutOfDateWithSelf=5]="OutOfDateWithSelf",n[n.OutOfDateWithUpstream=6]="OutOfDateWithUpstream",n[n.OutOfDateBuildInfo=7]="OutOfDateBuildInfo",n[n.OutOfDateOptions=8]="OutOfDateOptions",n[n.OutOfDateRoots=9]="OutOfDateRoots",n[n.UpstreamOutOfDate=10]="UpstreamOutOfDate",n[n.UpstreamBlocked=11]="UpstreamBlocked",n[n.ComputingUpstream=12]="ComputingUpstream",n[n.TsVersionOutputOfDate=13]="TsVersionOutputOfDate",n[n.UpToDateWithInputFileText=14]="UpToDateWithInputFileText",n[n.ContainerOnly=15]="ContainerOnly",n[n.ForceBuild=16]="ForceBuild",n))(Bkt||{});function I7e(n){return Ad(n,".json")?n:Do(n,"tsconfig.json")}var cji=new Date(-864e13),lji=new Date(864e13);function uji(n,c,u){let d=n.get(c),I;return d||(I=u(),n.set(c,I)),d||I}function vkt(n,c){return uji(n,c,()=>new Map)}function T_e(n){return n.now?n.now():new Date}function $6(n){return!!n&&!!n.buildOrder}function N_e(n){return $6(n)?n.buildOrder:n}function CGe(n,c){return u=>{let d=c?`[${_M(w_e(n),"\x1B[90m")}] `:`${w_e(n)} - `;d+=`${kN(u.messageText,n.newLine)}${n.newLine+n.newLine}`,n.write(d)}}function wFr(n,c,u,d){let I=A7e(n,c);return I.getModifiedTime=n.getModifiedTime?h=>n.getModifiedTime(h):wI,I.setModifiedTime=n.setModifiedTime?(h,b)=>n.setModifiedTime(h,b):oc,I.deleteFile=n.deleteFile?h=>n.deleteFile(h):oc,I.reportDiagnostic=u||q6(n),I.reportSolutionBuilderStatus=d||CGe(n),I.now=Yi(n,n.now),I}function Skt(n=yd,c,u,d,I){let h=wFr(n,c,u,d);return h.reportErrorSummary=I,h}function wkt(n=yd,c,u,d,I){let h=wFr(n,c,u,d),b=l7e(n,I);return Ps(h,b),h}function gji(n){let c={};return uke.forEach(u=>{Qa(n,u.name)&&(c[u.name]=n[u.name])}),c}function Tkt(n,c,u){return jFr(!1,n,c,u)}function Nkt(n,c,u,d){return jFr(!0,n,c,u,d)}function Aji(n,c,u,d,I){let h=c,b=c,R=gji(d),N=g7e(h,()=>Ae.projectCompilerOptions);pGe(N),N.getParsedCommandLine=de=>Gte(Ae,de,aD(Ae,de)),N.resolveModuleNameLiterals=Yi(h,h.resolveModuleNameLiterals),N.resolveTypeReferenceDirectiveReferences=Yi(h,h.resolveTypeReferenceDirectiveReferences),N.resolveLibrary=Yi(h,h.resolveLibrary),N.resolveModuleNames=Yi(h,h.resolveModuleNames),N.resolveTypeReferenceDirectives=Yi(h,h.resolveTypeReferenceDirectives),N.getModuleResolutionCache=Yi(h,h.getModuleResolutionCache);let V,P;!N.resolveModuleNameLiterals&&!N.resolveModuleNames&&(V=bte(N.getCurrentDirectory(),N.getCanonicalFileName),N.resolveModuleNameLiterals=(de,Be,Fe,Ne,Me)=>E_e(de,Be,Fe,Ne,Me,h,V,F6e),N.getModuleResolutionCache=()=>V),!N.resolveTypeReferenceDirectiveReferences&&!N.resolveTypeReferenceDirectives&&(P=wke(N.getCurrentDirectory(),N.getCanonicalFileName,void 0,V?.getPackageJsonInfoCache(),V?.optionsToRedirectsKey),N.resolveTypeReferenceDirectiveReferences=(de,Be,Fe,Ne,Me)=>E_e(de,Be,Fe,Ne,Me,h,P,eGe));let Q;N.resolveLibrary||(Q=bte(N.getCurrentDirectory(),N.getCanonicalFileName,void 0,V?.getPackageJsonInfoCache()),N.resolveLibrary=(de,Be,Fe)=>Tke(de,Be,Fe,h,Q)),N.getBuildInfo=(de,Be)=>OFr(Ae,de,aD(Ae,Be),void 0);let{watchFile:te,watchDirectory:re,writeLog:ue}=u7e(b,d),Ae={host:h,hostWithWatch:b,parseConfigFileHost:sGe(h),write:Yi(h,h.trace),options:d,baseCompilerOptions:R,rootNames:u,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:N,moduleResolutionCache:V,typeReferenceDirectiveResolutionCache:P,libraryResolutionCache:Q,buildOrder:void 0,readFileWithCache:de=>h.readFile(de),projectCompilerOptions:R,cache:void 0,allProjectBuildPending:!0,needsSummary:!0,watchAllProjectsPending:n,watch:n,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:te,watchDirectory:re,writeLog:ue};return Ae}function rw(n,c){return AA(c,n.compilerHost.getCurrentDirectory(),n.compilerHost.getCanonicalFileName)}function aD(n,c){let{resolvedConfigFilePaths:u}=n,d=u.get(c);if(d!==void 0)return d;let I=rw(n,c);return u.set(c,I),I}function TFr(n){return!!n.options}function dji(n,c){let u=n.configFileCache.get(c);return u&&TFr(u)?u:void 0}function Gte(n,c,u){let{configFileCache:d}=n,I=d.get(u);if(I)return TFr(I)?I:void 0;rs("SolutionBuilder::beforeConfigFileParsing");let h,{parseConfigFileHost:b,baseCompilerOptions:R,baseWatchOptions:N,extendedConfigCache:V,host:P}=n,Q;return P.getParsedCommandLine?(Q=P.getParsedCommandLine(c),Q||(h=If(Z.File_0_not_found,c))):(b.onUnRecoverableConfigFileDiagnostic=te=>h=te,Q=e_e(c,R,b,V,N),b.onUnRecoverableConfigFileDiagnostic=oc),d.set(u,Q||h),rs("SolutionBuilder::afterConfigFileParsing"),Sc("SolutionBuilder::Config file parsing","SolutionBuilder::beforeConfigFileParsing","SolutionBuilder::afterConfigFileParsing"),Q}function R_e(n,c){return I7e($_(n.compilerHost.getCurrentDirectory(),c))}function NFr(n,c){let u=new Map,d=new Map,I=[],h,b;for(let N of c)R(N);return b?{buildOrder:h||v,circularDiagnostics:b}:h||v;function R(N,V){let P=aD(n,N);if(d.has(P))return;if(u.has(P)){V||(b||(b=[])).push(If(Z.Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0,I.join(`\r +`)));return}u.set(P,!0),I.push(N);let Q=Gte(n,N,P);if(Q&&Q.projectReferences)for(let te of Q.projectReferences){let re=R_e(n,te.path);R(re,V||te.circular)}I.pop(),d.set(P,!0),(h||(h=[])).push(N)}}function mGe(n){return n.buildOrder||pji(n)}function pji(n){let c=NFr(n,n.rootNames.map(I=>R_e(n,I)));n.resolvedConfigFilePaths.clear();let u=new Set(N_e(c).map(I=>aD(n,I))),d={onDeleteValue:oc};return fN(n.configFileCache,u,d),fN(n.projectStatus,u,d),fN(n.builderPrograms,u,d),fN(n.diagnostics,u,d),fN(n.projectPendingBuild,u,d),fN(n.projectErrorsReported,u,d),fN(n.buildInfoCache,u,d),fN(n.outputTimeStamps,u,d),fN(n.lastCachedPackageJsonLookups,u,d),n.watch&&(fN(n.allWatchedConfigFiles,u,{onDeleteValue:xB}),n.allWatchedExtendedConfigFiles.forEach(I=>{I.projects.forEach(h=>{u.has(h)||I.projects.delete(h)}),I.close()}),fN(n.allWatchedWildcardDirectories,u,{onDeleteValue:I=>I.forEach(VB)}),fN(n.allWatchedInputFiles,u,{onDeleteValue:I=>I.forEach(xB)}),fN(n.allWatchedPackageJsonFiles,u,{onDeleteValue:I=>I.forEach(xB)})),n.buildOrder=c}function RFr(n,c,u){let d=c&&R_e(n,c),I=mGe(n);if($6(I))return I;if(d){let b=aD(n,d);if(ke(I,N=>aD(n,N)===b)===-1)return}let h=d?NFr(n,[d]):I;return w.assert(!$6(h)),w.assert(!u||d!==void 0),w.assert(!u||h[h.length-1]===d),u?h.slice(0,h.length-1):h}function DFr(n){n.cache&&Rkt(n);let{compilerHost:c,host:u}=n,d=n.readFileWithCache,I=c.getSourceFile,{originalReadFile:h,originalFileExists:b,originalDirectoryExists:R,originalCreateDirectory:N,originalWriteFile:V,getSourceFileWithCache:P,readFileWithCache:Q}=Cue(u,te=>rw(n,te),(...te)=>I.call(c,...te));n.readFileWithCache=Q,c.getSourceFile=P,n.cache={originalReadFile:h,originalFileExists:b,originalDirectoryExists:R,originalCreateDirectory:N,originalWriteFile:V,originalReadFileWithCache:d,originalGetSourceFile:I}}function Rkt(n){if(!n.cache)return;let{cache:c,host:u,compilerHost:d,extendedConfigCache:I,moduleResolutionCache:h,typeReferenceDirectiveResolutionCache:b,libraryResolutionCache:R}=n;u.readFile=c.originalReadFile,u.fileExists=c.originalFileExists,u.directoryExists=c.originalDirectoryExists,u.createDirectory=c.originalCreateDirectory,u.writeFile=c.originalWriteFile,d.getSourceFile=c.originalGetSourceFile,n.readFileWithCache=c.originalReadFileWithCache,I.clear(),h?.clear(),b?.clear(),R?.clear(),n.cache=void 0}function xFr(n,c){n.projectStatus.delete(c),n.diagnostics.delete(c)}function kFr({projectPendingBuild:n},c,u){let d=n.get(c);(d===void 0||dn.projectPendingBuild.set(aD(n,d),0)),c&&c.throwIfCancellationRequested()}var Dkt=(n=>(n[n.Build=0]="Build",n[n.UpdateOutputFileStamps=1]="UpdateOutputFileStamps",n))(Dkt||{});function FFr(n,c){return n.projectPendingBuild.delete(c),n.diagnostics.has(c)?1:0}function fji(n,c,u,d,I){let h=!0;return{kind:1,project:c,projectPath:u,buildOrder:I,getCompilerOptions:()=>d.options,getCurrentDirectory:()=>n.compilerHost.getCurrentDirectory(),updateOutputFileStatmps:()=>{MFr(n,d,u),h=!1},done:()=>(h&&MFr(n,d,u),rs("SolutionBuilder::Timestamps only updates"),FFr(n,u))}}function Iji(n,c,u,d,I,h){let b=0,R,N;return{kind:0,project:c,projectPath:u,buildOrder:h,getCompilerOptions:()=>I.options,getCurrentDirectory:()=>n.compilerHost.getCurrentDirectory(),getBuilderProgram:()=>P(vl),getProgram:()=>P(Me=>Me.getProgramOrUndefined()),getSourceFile:Me=>P(De=>De.getSourceFile(Me)),getSourceFiles:()=>Q(Me=>Me.getSourceFiles()),getOptionsDiagnostics:Me=>Q(De=>De.getOptionsDiagnostics(Me)),getGlobalDiagnostics:Me=>Q(De=>De.getGlobalDiagnostics(Me)),getConfigFileParsingDiagnostics:()=>Q(Me=>Me.getConfigFileParsingDiagnostics()),getSyntacticDiagnostics:(Me,De)=>Q(lt=>lt.getSyntacticDiagnostics(Me,De)),getAllDependencies:Me=>Q(De=>De.getAllDependencies(Me)),getSemanticDiagnostics:(Me,De)=>Q(lt=>lt.getSemanticDiagnostics(Me,De)),getSemanticDiagnosticsOfNextAffectedFile:(Me,De)=>P(lt=>lt.getSemanticDiagnosticsOfNextAffectedFile&<.getSemanticDiagnosticsOfNextAffectedFile(Me,De)),emit:(Me,De,lt,Le,je)=>{if(Me||Le)return P(st=>{var nt,qe;return st.emit(Me,De,lt,Le,je||((qe=(nt=n.host).getCustomTransformers)==null?void 0:qe.call(nt,c)))});if(Ne(2,lt),b===4)return Be(De,lt);if(b===3)return de(De,lt,je)},done:V};function V(Me,De,lt){return Ne(6,Me,De,lt),rs("SolutionBuilder::Projects built"),FFr(n,u)}function P(Me){return Ne(0),R&&Me(R)}function Q(Me){return P(Me)||v}function te(){var Me,De,lt;if(w.assert(R===void 0),n.options.dry){Q1(n,Z.A_non_dry_build_would_build_project_0,c),N=1,b=5;return}if(n.options.verbose&&Q1(n,Z.Building_project_0,c),I.fileNames.length===0){bue(n,u,yM(I)),N=0,b=5;return}let{host:Le,compilerHost:je}=n;if(n.projectCompilerOptions=I.options,(Me=n.moduleResolutionCache)==null||Me.update(I.options),(De=n.typeReferenceDirectiveResolutionCache)==null||De.update(I.options),R=Le.createProgram(I.fileNames,I.options,je,Cji(n,u,I),yM(I),I.projectReferences),n.watch){let st=(lt=n.moduleResolutionCache)==null?void 0:lt.getPackageJsonInfoCache().getInternalMap();n.lastCachedPackageJsonLookups.set(u,st&&new Set(on(st.values(),nt=>n.host.realpath&&(Ske(nt)||nt.directoryExists)?n.host.realpath(Do(nt.packageDirectory,"package.json")):Do(nt.packageDirectory,"package.json")))),n.builderPrograms.set(u,R)}b++}function re(Me,De,lt){Me.length?{buildResult:N,step:b}=Gkt(n,u,R,I,Me,De,lt):b++}function ue(Me){w.assertIsDefined(R),re([...R.getConfigFileParsingDiagnostics(),...R.getOptionsDiagnostics(Me),...R.getGlobalDiagnostics(Me),...R.getSyntacticDiagnostics(void 0,Me)],8,"Syntactic")}function Ae(Me){re(w.checkDefined(R).getSemanticDiagnostics(void 0,Me),16,"Semantic")}function de(Me,De,lt){var Le,je,st;w.assertIsDefined(R),w.assert(b===3);let nt=R.saveEmitState(),qe,it=Zt=>(qe||(qe=[])).push(Zt),It=[],{emitResult:dt}=AGe(R,it,void 0,void 0,(Zt,Dr,jt,mr,Pt,Vr)=>It.push({name:Zt,text:Dr,writeByteOrderMark:jt,data:Vr}),De,!1,lt||((je=(Le=n.host).getCustomTransformers)==null?void 0:je.call(Le,c)));if(qe)return R.restoreEmitState(nt),{buildResult:N,step:b}=Gkt(n,u,R,I,qe,32,"Declaration file"),{emitSkipped:!0,diagnostics:dt.diagnostics};let{host:Tt,compilerHost:St}=n,He=(st=R.hasChangedEmitSignature)!=null&&st.call(R)?0:2,ht=BG(),Et=new Map,Kt=R.getCompilerOptions(),Nt=h6(Kt),Lt,kt;return It.forEach(({name:Zt,text:Dr,writeByteOrderMark:jt,data:mr})=>{let Pt=rw(n,Zt);Et.set(rw(n,Zt),Zt),mr?.buildInfo&&PFr(n,mr.buildInfo,u,Kt,He);let Vr=mr?.differsOnlyInMap?_d(n.host,Zt):void 0;wee(Me?{writeFile:Me}:St,ht,Zt,Dr,jt),mr?.differsOnlyInMap?n.host.setModifiedTime(Zt,Vr):!Nt&&n.watch&&(Lt||(Lt=Fkt(n,u))).set(Pt,kt||(kt=T_e(n.host)))}),Fe(ht,Et,It.length?It[0].name:m6e(I,!Tt.useCaseSensitiveFileNames()),He),dt}function Be(Me,De){w.assertIsDefined(R),w.assert(b===4);let lt=R.emitBuildInfo((Le,je,st,nt,qe,it)=>{it?.buildInfo&&PFr(n,it.buildInfo,u,R.getCompilerOptions(),2),Me?Me(Le,je,st,nt,qe,it):n.compilerHost.writeFile(Le,je,st,nt,qe,it)},De);return lt.diagnostics.length&&(_Ge(n,lt.diagnostics),n.diagnostics.set(u,[...n.diagnostics.get(u),...lt.diagnostics]),N=64&N),lt.emittedFiles&&n.write&<.emittedFiles.forEach(Le=>VFr(n,I,Le)),kkt(n,R),b=5,lt}function Fe(Me,De,lt,Le){let je=Me.getDiagnostics();return je.length?({buildResult:N,step:b}=Gkt(n,u,R,I,je,64,"Emit"),je):(n.write&&De.forEach(st=>VFr(n,I,st)),QFr(n,I,u,Z.Updating_unchanged_output_timestamps_of_project_0,De),n.diagnostics.delete(u),n.projectStatus.set(u,{type:1,oldestOutputFileName:lt}),kkt(n,R),b=5,N=Le,je)}function Ne(Me,De,lt,Le){for(;b<=Me&&b<6;){let je=b;switch(b){case 0:te();break;case 1:ue(De);break;case 2:Ae(De);break;case 3:de(lt,De,Le);break;case 4:Be(lt,De);break;case 5:yji(n,c,u,d,I,h,w.checkDefined(N)),b++;break;case 6:default:}w.assert(b>je)}}}function ZFr(n,c,u){if(!n.projectPendingBuild.size||$6(c))return;let{options:d,projectPendingBuild:I}=n;for(let h=0;h{let re=w.checkDefined(n.filesWatched.get(R));w.assert(C7e(re)),re.modifiedTime=te,re.callbacks.forEach(ue=>ue(P,Q,te))},d,I,h,b);n.filesWatched.set(R,{callbacks:[u],watcher:V,modifiedTime:N})}return{close:()=>{let V=w.checkDefined(n.filesWatched.get(R));w.assert(C7e(V)),V.callbacks.length===1?(n.filesWatched.delete(R),VB(V)):Qy(V.callbacks,u)}}}function Fkt(n,c){if(!n.watch)return;let u=n.outputTimeStamps.get(c);return u||n.outputTimeStamps.set(c,u=new Map),u}function PFr(n,c,u,d,I){let h=LZ(d),b=Zkt(n,h,u),R=T_e(n.host);b?(b.buildInfo=c,b.modifiedTime=R,I&2||(b.latestChangedDtsTime=R)):n.buildInfoCache.set(u,{path:rw(n,h),buildInfo:c,modifiedTime:R,latestChangedDtsTime:I&2?void 0:R})}function Zkt(n,c,u){let d=rw(n,c),I=n.buildInfoCache.get(u);return I?.path===d?I:void 0}function OFr(n,c,u,d){let I=rw(n,c),h=n.buildInfoCache.get(u);if(h!==void 0&&h.path===I)return h.buildInfo||void 0;let b=n.readFileWithCache(c),R=b?y6e(c,b):void 0;return n.buildInfoCache.set(u,{path:I,buildInfo:R||!1,modifiedTime:d||BA}),R}function Lkt(n,c,u,d){let I=WFr(n,c);if(uBe&&(de=nt,Be=qe),ue&&Ne.add(it)}if(ue){Ae||(Ae=J6e(ue,P,V));let nt=UC(Ae.roots,(qe,it)=>Ne.has(it)?void 0:it);if(nt)return{type:9,buildInfoFile:P,inputFile:nt}}if(!P){let nt=Jke(c,!V.useCaseSensitiveFileNames()),qe=Fkt(n,u);for(let it of nt){let It=rw(n,it),dt=qe?.get(It);if(dt||(dt=_d(n.host,it),qe?.set(It,dt)),dt===BA)return{type:3,missingOutputFileName:it};if(dtLkt(n,nt,te,Q));if(Le)return Le;let je=n.lastCachedPackageJsonLookups.get(u),st=je&&eT(je,nt=>Lkt(n,nt,te,Q));return st||{type:De?2:Fe?14:1,newestInputFileTime:Be,newestInputFileName:de,oldestOutputFileName:Q}}function hji(n,c,u){return n.buildInfoCache.get(u).path===c.path}function Vkt(n,c,u){if(c===void 0)return{type:0,reason:"File deleted mid-build"};let d=n.projectStatus.get(u);if(d!==void 0)return d;rs("SolutionBuilder::beforeUpToDateCheck");let I=mji(n,c,u);return rs("SolutionBuilder::afterUpToDateCheck"),Sc("SolutionBuilder::Up-to-date check","SolutionBuilder::beforeUpToDateCheck","SolutionBuilder::afterUpToDateCheck"),n.projectStatus.set(u,I),I}function QFr(n,c,u,d,I){if(c.options.noEmit)return;let h,b=LZ(c.options);if(b){I?.has(rw(n,b))||(n.options.verbose&&Q1(n,d,c.options.configFilePath),n.host.setModifiedTime(b,h=T_e(n.host)),Zkt(n,b,u).modifiedTime=h),n.outputTimeStamps.delete(u);return}let{host:R}=n,N=Jke(c,!R.useCaseSensitiveFileNames()),V=Fkt(n,u),P=V?new Set:void 0;if(!I||N.length!==I.size){let Q=!!n.options.verbose;for(let te of N){let re=rw(n,te);I?.has(re)||(Q&&(Q=!1,Q1(n,d,c.options.configFilePath)),R.setModifiedTime(te,h||(h=T_e(n.host))),V&&(V.set(re,h),P.add(re)))}}V?.forEach((Q,te)=>{!I?.has(te)&&!P.has(te)&&V.delete(te)})}function _ji(n,c,u){if(!c.composite)return;let d=w.checkDefined(n.buildInfoCache.get(u));if(d.latestChangedDtsTime!==void 0)return d.latestChangedDtsTime||void 0;let I=d.buildInfo&&d.buildInfo.program&&d.buildInfo.program.latestChangedDtsFile?n.host.getModifiedTime(Qc(d.buildInfo.program.latestChangedDtsFile,oa(d.path))):void 0;return d.latestChangedDtsTime=I||!1,I}function MFr(n,c,u){if(n.options.dry)return Q1(n,Z.A_non_dry_build_would_update_timestamps_for_output_of_project_0,c.options.configFilePath);QFr(n,c,u,Z.Updating_output_timestamps_of_project_0),n.projectStatus.set(u,{type:1,oldestOutputFileName:m6e(c,!n.host.useCaseSensitiveFileNames())})}function yji(n,c,u,d,I,h,b){if(!(b&124)&&I.options.composite)for(let R=d+1;Rn.diagnostics.has(aD(n,V)))?N?2:1:0}function YFr(n,c,u){rs("SolutionBuilder::beforeClean");let d=Eji(n,c,u);return rs("SolutionBuilder::afterClean"),Sc("SolutionBuilder::Clean","SolutionBuilder::beforeClean","SolutionBuilder::afterClean"),d}function Eji(n,c,u){let d=RFr(n,c,u);if(!d)return 3;if($6(d))return _Ge(n,d.circularDiagnostics),4;let{options:I,host:h}=n,b=I.dry?[]:void 0;for(let R of d){let N=aD(n,R),V=Gte(n,R,N);if(V===void 0){zFr(n,N);continue}let P=Jke(V,!h.useCaseSensitiveFileNames());if(!P.length)continue;let Q=new Set(V.fileNames.map(te=>rw(n,te)));for(let te of P)Q.has(rw(n,te))||h.fileExists(te)&&(b?b.push(te):(h.deleteFile(te),Wkt(n,N,0)))}return b&&Q1(n,Z.A_non_dry_build_would_delete_the_following_files_Colon_0,b.map(R=>`\r + * ${R}`).join("")),0}function Wkt(n,c,u){n.host.getParsedCommandLine&&u===1&&(u=2),u===2&&(n.configFileCache.delete(c),n.buildOrder=void 0),n.needsSummary=!0,xFr(n,c),kFr(n,c,u),DFr(n)}function hGe(n,c,u){n.reportFileChangeDetected=!0,Wkt(n,c,u),XFr(n,250,!0)}function XFr(n,c,u){let{hostWithWatch:d}=n;!d.setTimeout||!d.clearTimeout||(n.timerToBuildInvalidatedProject&&d.clearTimeout(n.timerToBuildInvalidatedProject),n.timerToBuildInvalidatedProject=d.setTimeout(Bji,c,"timerToBuildInvalidatedProject",n,u))}function Bji(n,c,u){rs("SolutionBuilder::beforeBuild");let d=vji(c,u);rs("SolutionBuilder::afterBuild"),Sc("SolutionBuilder::Build","SolutionBuilder::beforeBuild","SolutionBuilder::afterBuild"),d&&qFr(c,d)}function vji(n,c){n.timerToBuildInvalidatedProject=void 0,n.reportFileChangeDetected&&(n.reportFileChangeDetected=!1,n.projectErrorsReported.clear(),Qkt(n,Z.File_change_detected_Starting_incremental_compilation));let u=0,d=mGe(n),I=xkt(n,d,!1);if(I)for(I.done(),u++;n.projectPendingBuild.size;){if(n.timerToBuildInvalidatedProject)return;let h=ZFr(n,d,!1);if(!h)break;if(h.kind!==1&&(c||u===5)){XFr(n,100,!1);return}LFr(n,h,d).done(),h.kind!==1&&u++}return Rkt(n),d}function JFr(n,c,u,d){!n.watch||n.allWatchedConfigFiles.has(u)||n.allWatchedConfigFiles.set(u,m7e(n,c,()=>hGe(n,u,2),2e3,d?.watchOptions,_m.ConfigFile,c))}function UFr(n,c,u){zke(c,u?.options,n.allWatchedExtendedConfigFiles,(d,I)=>m7e(n,d,()=>{var h;return(h=n.allWatchedExtendedConfigFiles.get(I))==null?void 0:h.projects.forEach(b=>hGe(n,b,2))},2e3,u?.watchOptions,_m.ExtendedConfigFile),d=>rw(n,d))}function KFr(n,c,u,d){n.watch&&h_e(vkt(n.allWatchedWildcardDirectories,u),d.wildcardDirectories,(I,h)=>n.watchDirectory(I,b=>{var R;__e({watchedDirPath:rw(n,I),fileOrDirectory:b,fileOrDirectoryPath:rw(n,b),configFileName:c,currentDirectory:n.compilerHost.getCurrentDirectory(),options:d.options,program:n.builderPrograms.get(u)||((R=dji(n,u))==null?void 0:R.fileNames),useCaseSensitiveFileNames:n.parseConfigFileHost.useCaseSensitiveFileNames,writeLog:N=>n.writeLog(N),toPath:N=>rw(n,N)})||hGe(n,u,1)},h,d?.watchOptions,_m.WildcardDirectory,c))}function Pkt(n,c,u,d){n.watch&&I6(vkt(n.allWatchedInputFiles,u),new Set(d.fileNames),{createNewValue:I=>m7e(n,I,()=>hGe(n,u,0),250,d?.watchOptions,_m.SourceFile,c),onDeleteValue:xB})}function Okt(n,c,u,d){!n.watch||!n.lastCachedPackageJsonLookups||I6(vkt(n.allWatchedPackageJsonFiles,u),n.lastCachedPackageJsonLookups.get(u),{createNewValue:I=>m7e(n,I,()=>hGe(n,u,0),2e3,d?.watchOptions,_m.PackageJson,c),onDeleteValue:xB})}function Sji(n,c){if(n.watchAllProjectsPending){rs("SolutionBuilder::beforeWatcherCreation"),n.watchAllProjectsPending=!1;for(let u of N_e(c)){let d=aD(n,u),I=Gte(n,u,d);JFr(n,u,d,I),UFr(n,d,I),I&&(KFr(n,u,d,I),Pkt(n,u,d,I),Okt(n,u,d,I))}rs("SolutionBuilder::afterWatcherCreation"),Sc("SolutionBuilder::Watcher creation","SolutionBuilder::beforeWatcherCreation","SolutionBuilder::afterWatcherCreation")}}function wji(n){Y0(n.allWatchedConfigFiles,xB),Y0(n.allWatchedExtendedConfigFiles,VB),Y0(n.allWatchedWildcardDirectories,c=>Y0(c,VB)),Y0(n.allWatchedInputFiles,c=>Y0(c,xB)),Y0(n.allWatchedPackageJsonFiles,c=>Y0(c,xB))}function jFr(n,c,u,d,I){let h=Aji(n,c,u,d,I);return{build:(b,R,N,V)=>HFr(h,b,R,N,V),clean:b=>YFr(h,b),buildReferences:(b,R,N,V)=>HFr(h,b,R,N,V,!0),cleanReferences:b=>YFr(h,b,!0),getNextInvalidatedProject:b=>(GFr(h,b),xkt(h,mGe(h),!1)),getBuildOrder:()=>mGe(h),getUpToDateStatusOfProject:b=>{let R=R_e(h,b),N=aD(h,R);return Vkt(h,Gte(h,R,N),N)},invalidateProject:(b,R)=>Wkt(h,b,R||0),close:()=>wji(h)}}function A0(n,c){return RE(c,n.compilerHost.getCurrentDirectory(),n.compilerHost.getCanonicalFileName)}function Q1(n,c,...u){n.host.reportSolutionBuilderStatus(If(c,...u))}function Qkt(n,c,...u){var d,I;(I=(d=n.hostWithWatch).onWatchStatusChange)==null||I.call(d,If(c,...u),n.host.getNewLine(),n.baseCompilerOptions)}function _Ge({host:n},c){c.forEach(u=>n.reportDiagnostic(u))}function bue(n,c,u){_Ge(n,u),n.projectErrorsReported.set(c,!0),u.length&&n.diagnostics.set(c,u)}function zFr(n,c){bue(n,c,[n.configFileCache.get(c)])}function qFr(n,c){if(!n.needsSummary)return;n.needsSummary=!1;let u=n.watch||!!n.host.reportErrorSummary,{diagnostics:d}=n,I=0,h=[];$6(c)?($Fr(n,c.buildOrder),_Ge(n,c.circularDiagnostics),u&&(I+=uGe(c.circularDiagnostics)),u&&(h=[...h,...gGe(c.circularDiagnostics)])):(c.forEach(b=>{let R=aD(n,b);n.projectErrorsReported.has(R)||_Ge(n,d.get(R)||v)}),u&&d.forEach(b=>I+=uGe(b)),u&&d.forEach(b=>[...h,...gGe(b)])),n.watch?Qkt(n,e7e(I),I):n.host.reportErrorSummary&&n.host.reportErrorSummary(I,h)}function $Fr(n,c){n.options.verbose&&Q1(n,Z.Projects_in_this_build_Colon_0,c.map(u=>`\r + * `+A0(n,u)).join(""))}function Tji(n,c,u){switch(u.type){case 5:return Q1(n,Z.Project_0_is_out_of_date_because_output_1_is_older_than_input_2,A0(n,c),A0(n,u.outOfDateOutputFileName),A0(n,u.newerInputFileName));case 6:return Q1(n,Z.Project_0_is_out_of_date_because_output_1_is_older_than_input_2,A0(n,c),A0(n,u.outOfDateOutputFileName),A0(n,u.newerProjectName));case 3:return Q1(n,Z.Project_0_is_out_of_date_because_output_file_1_does_not_exist,A0(n,c),A0(n,u.missingOutputFileName));case 4:return Q1(n,Z.Project_0_is_out_of_date_because_there_was_error_reading_file_1,A0(n,c),A0(n,u.fileName));case 7:return Q1(n,Z.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitted,A0(n,c),A0(n,u.buildInfoFile));case 8:return Q1(n,Z.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions,A0(n,c),A0(n,u.buildInfoFile));case 9:return Q1(n,Z.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_but_not_any_more,A0(n,c),A0(n,u.buildInfoFile),A0(n,u.inputFile));case 1:if(u.newestInputFileTime!==void 0)return Q1(n,Z.Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2,A0(n,c),A0(n,u.newestInputFileName||""),A0(n,u.oldestOutputFileName||""));break;case 2:return Q1(n,Z.Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies,A0(n,c));case 14:return Q1(n,Z.Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_files,A0(n,c));case 10:return Q1(n,Z.Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date,A0(n,c),A0(n,u.upstreamProjectName));case 11:return Q1(n,u.upstreamProjectBlocked?Z.Project_0_can_t_be_built_because_its_dependency_1_was_not_built:Z.Project_0_can_t_be_built_because_its_dependency_1_has_errors,A0(n,c),A0(n,u.upstreamProjectName));case 0:return Q1(n,Z.Failed_to_parse_file_0_Colon_1,A0(n,c),u.reason);case 13:return Q1(n,Z.Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2,A0(n,c),u.version,y);case 16:return Q1(n,Z.Project_0_is_being_forcibly_rebuilt,A0(n,c));case 15:case 12:break;default:}}function h7e(n,c,u){n.options.verbose&&Tji(n,c,u)}var Mkt=(n=>(n[n.time=0]="time",n[n.count=1]="count",n[n.memory=2]="memory",n))(Mkt||{});function Nji(n){let c=Rji();return X(n.getSourceFiles(),u=>{let d=Dji(n,u),I=Dc(u).length;c.set(d,c.get(d)+I)}),c}function Rji(){let n=new Map;return n.set("Library",0),n.set("Definitions",0),n.set("TypeScript",0),n.set("JavaScript",0),n.set("JSON",0),n.set("Other",0),n}function Dji(n,c){if(n.isSourceFileDefaultLibrary(c))return"Library";if(c.isDeclarationFile)return"Definitions";let u=c.path;return fp(u,Qee)?"TypeScript":fp(u,r4)?"JavaScript":Ad(u,".json")?"JSON":"Other"}function _7e(n,c,u){return yGe(n,u)?q6(n,!0):c}function eZr(n){return!!n.writeOutputIsTTY&&n.writeOutputIsTTY()&&!n.getEnvironmentVariable("NO_COLOR")}function yGe(n,c){return!c||typeof c.pretty>"u"?eZr(n):c.pretty}function tZr(n){return n.options.all?mg(lT,(c,u)=>fs(c.name,u.name)):Gt(lT.slice(),c=>!!c.showInSimplifiedHelpView)}function y7e(n){n.write(lb(Z.Version_0,y)+n.newLine)}function b7e(n){if(!eZr(n))return{bold:P=>P,blue:P=>P,blueBackground:P=>P,brightWhite:P=>P};function u(P){return`\x1B[1m${P}\x1B[22m`}let d=n.getEnvironmentVariable("OS")&&n.getEnvironmentVariable("OS").toLowerCase().includes("windows"),I=n.getEnvironmentVariable("WT_SESSION"),h=n.getEnvironmentVariable("TERM_PROGRAM")&&n.getEnvironmentVariable("TERM_PROGRAM")==="vscode";function b(P){return d&&!I&&!h?V(P):`\x1B[94m${P}\x1B[39m`}let R=n.getEnvironmentVariable("COLORTERM")==="truecolor"||n.getEnvironmentVariable("TERM")==="xterm-256color";function N(P){return R?`\x1B[48;5;68m${P}\x1B[39;49m`:`\x1B[44m${P}\x1B[39;49m`}function V(P){return`\x1B[97m${P}\x1B[39m`}return{bold:u,blue:b,brightWhite:V,blueBackground:N}}function rZr(n){return`--${n.name}${n.shortName?`, -${n.shortName}`:""}`}function xji(n,c,u,d){var I;let h=[],b=b7e(n),R=rZr(c),N=ue(c),V=typeof c.defaultValueDescription=="object"?lb(c.defaultValueDescription):Q(c.defaultValueDescription,c.type==="list"||c.type==="listOrElement"?c.element.type:c.type),P=((I=n.getWidthOfTerminal)==null?void 0:I.call(n))??0;if(P>=80){let Ae="";c.description&&(Ae=lb(c.description)),h.push(...re(R,Ae,u,d,P,!0),n.newLine),te(N,c)&&(N&&h.push(...re(N.valueType,N.possibleValues,u,d,P,!1),n.newLine),V&&h.push(...re(lb(Z.default_Colon),V,u,d,P,!1),n.newLine)),h.push(n.newLine)}else{if(h.push(b.blue(R),n.newLine),c.description){let Ae=lb(c.description);h.push(Ae)}if(h.push(n.newLine),te(N,c)){if(N&&h.push(`${N.valueType} ${N.possibleValues}`),V){N&&h.push(n.newLine);let Ae=lb(Z.default_Colon);h.push(`${Ae} ${V}`)}h.push(n.newLine)}h.push(n.newLine)}return h;function Q(Ae,de){return Ae!==void 0&&typeof de=="object"?on(de.entries()).filter(([,Be])=>Be===Ae).map(([Be])=>Be).join("/"):String(Ae)}function te(Ae,de){let Be=["string"],Fe=[void 0,"false","n/a"],Ne=de.defaultValueDescription;return!(de.category===Z.Command_line_Options||Ue(Be,Ae?.possibleValues)&&Ue(Fe,Ne))}function re(Ae,de,Be,Fe,Ne,Me){let De=[],lt=!0,Le=de,je=Ne-Fe;for(;Le.length>0;){let st="";lt?(st=Ae.padStart(Be),st=st.padEnd(Fe),st=Me?b.blue(st):st):st="".padStart(Fe);let nt=Le.substr(0,je);Le=Le.slice(je),De.push(`${st}${nt}`),lt=!1}return De}function ue(Ae){if(Ae.type==="object")return;return{valueType:de(Ae),possibleValues:Be(Ae)};function de(Fe){switch(w.assert(Fe.type!=="listOrElement"),Fe.type){case"string":case"number":case"boolean":return lb(Z.type_Colon);case"list":return lb(Z.one_or_more_Colon);default:return lb(Z.one_of_Colon)}}function Be(Fe){let Ne;switch(Fe.type){case"string":case"number":case"boolean":Ne=Fe.type;break;case"list":case"listOrElement":Ne=Be(Fe.element);break;case"object":Ne="";break;default:let Me={};return Fe.type.forEach((De,lt)=>{var Le;(Le=Fe.deprecatedKeys)!=null&&Le.has(lt)||(Me[De]||(Me[De]=[])).push(lt)}),Object.entries(Me).map(([,De])=>De.join("/")).join(", ")}return Ne}}}function nZr(n,c){let u=0;for(let b of c){let R=rZr(b).length;u=u>R?u:R}let d=u+2,I=d+2,h=[];for(let b of c){let R=xji(n,b,d,I);h=[...h,...R]}return h[h.length-2]!==n.newLine&&h.push(n.newLine),h}function D_e(n,c,u,d,I,h){let b=[];if(b.push(b7e(n).bold(c)+n.newLine+n.newLine),I&&b.push(I+n.newLine+n.newLine),!d)return b=[...b,...nZr(n,u)],h&&b.push(h+n.newLine+n.newLine),b;let R=new Map;for(let N of u){if(!N.category)continue;let V=lb(N.category),P=R.get(V)??[];P.push(N),R.set(V,P)}return R.forEach((N,V)=>{b.push(`### ${V}${n.newLine}${n.newLine}`),b=[...b,...nZr(n,N)]}),h&&b.push(h+n.newLine+n.newLine),b}function kji(n,c){let u=b7e(n),d=[...E7e(n,`${lb(Z.tsc_Colon_The_TypeScript_Compiler)} - ${lb(Z.Version_0,y)}`)];d.push(u.bold(lb(Z.COMMON_COMMANDS))+n.newLine+n.newLine),b("tsc",Z.Compiles_the_current_project_tsconfig_json_in_the_working_directory),b("tsc app.ts util.ts",Z.Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options),b("tsc -b",Z.Build_a_composite_project_in_the_working_directory),b("tsc --init",Z.Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory),b("tsc -p ./path/to/tsconfig.json",Z.Compiles_the_TypeScript_project_located_at_the_specified_path),b("tsc --help --all",Z.An_expanded_version_of_this_information_showing_all_possible_compiler_options),b(["tsc --noEmit","tsc --target esnext"],Z.Compiles_the_current_project_with_additional_settings);let I=c.filter(R=>R.isCommandLineOnly||R.category===Z.Command_line_Options),h=c.filter(R=>!Ue(I,R));d=[...d,...D_e(n,lb(Z.COMMAND_LINE_FLAGS),I,!1,void 0,void 0),...D_e(n,lb(Z.COMMON_COMPILER_OPTIONS),h,!1,void 0,U5(Z.You_can_learn_about_all_of_the_compiler_options_at_0,"https://aka.ms/tsc"))];for(let R of d)n.write(R);function b(R,N){let V=typeof R=="string"?[R]:R;for(let P of V)d.push(" "+u.blue(P)+n.newLine);d.push(" "+lb(N)+n.newLine+n.newLine)}}function Gji(n,c,u,d){let I=[...E7e(n,`${lb(Z.tsc_Colon_The_TypeScript_Compiler)} - ${lb(Z.Version_0,y)}`)];I=[...I,...D_e(n,lb(Z.ALL_COMPILER_OPTIONS),c,!0,void 0,U5(Z.You_can_learn_about_all_of_the_compiler_options_at_0,"https://aka.ms/tsc"))],I=[...I,...D_e(n,lb(Z.WATCH_OPTIONS),d,!1,lb(Z.Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_config_watch_mode_with_Colon))],I=[...I,...D_e(n,lb(Z.BUILD_OPTIONS),u,!1,U5(Z.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(let h of I)n.write(h)}function iZr(n,c){let u=[...E7e(n,`${lb(Z.tsc_Colon_The_TypeScript_Compiler)} - ${lb(Z.Version_0,y)}`)];u=[...u,...D_e(n,lb(Z.BUILD_OPTIONS),c,!1,U5(Z.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(let d of u)n.write(d)}function E7e(n,c){var u;let d=b7e(n),I=[],h=((u=n.getWidthOfTerminal)==null?void 0:u.call(n))??0,b=5,R=d.blueBackground("".padStart(b)),N=d.blueBackground(d.brightWhite("TS ".padStart(b)));if(h>=c.length+b){let P=(h>120?120:h)-b;I.push(c.padEnd(P)+R+n.newLine),I.push("".padStart(P)+N+n.newLine)}else I.push(c+n.newLine),I.push(n.newLine);return I}function sZr(n,c){c.options.all?Gji(n,tZr(c),f8e,Y6):kji(n,tZr(c))}function oZr(n,c,u){let d=q6(n);if(u.options.build)return d(If(Z.Option_build_must_be_the_first_command_line_argument)),n.exit(1);let I;if(u.options.locale&&c5(u.options.locale,n,u.errors),u.errors.length>0)return u.errors.forEach(d),n.exit(1);if(u.options.init)return Vji(n,d,u.options,u.fileNames),n.exit(0);if(u.options.version)return y7e(n),n.exit(0);if(u.options.help||u.options.all)return sZr(n,u),n.exit(0);if(u.options.watch&&u.options.listFilesOnly)return d(If(Z.Options_0_and_1_cannot_be_combined,"watch","listFilesOnly")),n.exit(1);if(u.options.project){if(u.fileNames.length!==0)return d(If(Z.Option_project_cannot_be_mixed_with_source_files_on_a_command_line)),n.exit(1);let R=Mc(u.options.project);if(!R||n.directoryExists(R)){if(I=Do(R,"tsconfig.json"),!n.fileExists(I))return d(If(Z.Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0,u.options.project)),n.exit(1)}else if(I=R,!n.fileExists(I))return d(If(Z.The_specified_path_does_not_exist_Colon_0,u.options.project)),n.exit(1)}else if(u.fileNames.length===0){let R=Mc(n.getCurrentDirectory());I=v6e(R,N=>n.fileExists(N))}if(u.fileNames.length===0&&!I)return u.options.showConfig?d(If(Z.Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0,Mc(n.getCurrentDirectory()))):(y7e(n),sZr(n,u)),n.exit(1);let h=n.getCurrentDirectory(),b=mke(u.options,R=>Qc(R,h));if(I){let R=new Map,N=_kt(I,b,R,u.watchOptions,n,d);if(b.showConfig)return N.errors.length!==0?(d=_7e(n,d,N.options),N.errors.forEach(d),n.exit(1)):(n.write(JSON.stringify(E8e(N,I,n),null,4)+n.newLine),n.exit(0));if(d=_7e(n,d,N.options),Kme(N.options))return Ykt(n,d)?void 0:Fji(n,c,d,N,b,u.watchOptions,R);h6(N.options)?uZr(n,c,d,N):lZr(n,c,d,N)}else{if(b.showConfig)return n.write(JSON.stringify(E8e(u,Do(h,"tsconfig.json"),n),null,4)+n.newLine),n.exit(0);if(d=_7e(n,d,b),Kme(b))return Ykt(n,d)?void 0:Zji(n,c,d,u.fileNames,b,u.watchOptions);h6(b)?uZr(n,c,d,{...u,options:b}):lZr(n,c,d,{...u,options:b})}}function Hkt(n){if(n.length>0&&n[0].charCodeAt(0)===45){let c=n[0].slice(n[0].charCodeAt(1)===45?2:1).toLowerCase();return c==="build"||c==="b"}return!1}function aZr(n,c,u){if(Hkt(u)){let{buildOptions:I,watchOptions:h,projects:b,errors:R}=JRt(u.slice(1));if(I.generateCpuProfile&&n.enableCPUProfiler)n.enableCPUProfiler(I.generateCpuProfile,()=>cZr(n,c,I,h,b,R));else return cZr(n,c,I,h,b,R)}let d=YRt(u,I=>n.readFile(I));if(d.options.generateCpuProfile&&n.enableCPUProfiler)n.enableCPUProfiler(d.options.generateCpuProfile,()=>oZr(n,c,d));else return oZr(n,c,d)}function Ykt(n,c){return!n.watchFile||!n.watchDirectory?(c(If(Z.The_current_host_does_not_support_the_0_option,"--watch")),n.exit(1),!0):!1}var bGe=2;function cZr(n,c,u,d,I,h){let b=_7e(n,q6(n),u);if(u.locale&&c5(u.locale,n,h),h.length>0)return h.forEach(b),n.exit(1);if(u.help||I.length===0)return y7e(n),iZr(n,$he),n.exit(0);if(!n.getModifiedTime||!n.setModifiedTime||u.clean&&!n.deleteFile)return b(If(Z.The_current_host_does_not_support_the_0_option,"--build")),n.exit(1);if(u.watch){if(Ykt(n,b))return;let Q=wkt(n,void 0,b,CGe(n,yGe(n,u)),Jkt(n,u));Q.jsDocParsingMode=bGe;let te=pZr(n,u);gZr(n,c,Q,te);let re=Q.onWatchStatusChange,ue=!1;Q.onWatchStatusChange=(de,Be,Fe,Ne)=>{re?.(de,Be,Fe,Ne),ue&&(de.code===Z.Found_0_errors_Watching_for_file_changes.code||de.code===Z.Found_1_error_Watching_for_file_changes.code)&&Ukt(Ae,te)};let Ae=Nkt(Q,I,u,d);return Ae.build(),Ukt(Ae,te),ue=!0,Ae}let R=Skt(n,void 0,b,CGe(n,yGe(n,u)),Xkt(n,u));R.jsDocParsingMode=bGe;let N=pZr(n,u);gZr(n,c,R,N);let V=Tkt(R,I,u),P=u.clean?V.clean():V.build();return Ukt(V,N),gf(),n.exit(P)}function Xkt(n,c){return yGe(n,c)?(u,d)=>n.write(t7e(u,d,n.newLine,n)):void 0}function lZr(n,c,u,d){let{fileNames:I,options:h,projectReferences:b}=d,R=$ke(h,void 0,n);R.jsDocParsingMode=bGe;let N=R.getCurrentDirectory(),V=rA(R.useCaseSensitiveFileNames());Cue(R,re=>AA(re,N,V)),Kkt(n,h,!1);let P={rootNames:I,options:h,projectReferences:b,host:R,configFileParsingDiagnostics:yM(d)},Q=v_e(P),te=c7e(Q,u,re=>n.write(re+n.newLine),Xkt(n,h));return v7e(n,Q,void 0),c(Q),n.exit(te)}function uZr(n,c,u,d){let{options:I,fileNames:h,projectReferences:b}=d;Kkt(n,I,!1);let R=IGe(I,n);R.jsDocParsingMode=bGe;let N=bkt({host:R,system:n,rootNames:h,options:I,configFileParsingDiagnostics:yM(d),projectReferences:b,reportDiagnostic:u,reportErrorSummary:Xkt(n,I),afterProgramEmitAndDiagnostics:V=>{v7e(n,V.getProgram(),void 0),c(V)}});return n.exit(N)}function gZr(n,c,u,d){AZr(n,u,!0),u.afterProgramEmitAndDiagnostics=I=>{v7e(n,I.getProgram(),d),c(I)}}function AZr(n,c,u){let d=c.createProgram;c.createProgram=(I,h,b,R,N,V)=>(w.assert(I!==void 0||h===void 0&&!!R),h!==void 0&&Kkt(n,h,u),d(I,h,b,R,N,V))}function dZr(n,c,u){u.jsDocParsingMode=bGe,AZr(n,u,!1);let d=u.afterProgramCreate;u.afterProgramCreate=I=>{d(I),v7e(n,I.getProgram(),void 0),c(I)}}function Jkt(n,c){return $6e(n,yGe(n,c))}function Fji(n,c,u,d,I,h,b){let R=d7e({configFileName:d.options.configFilePath,optionsToExtend:I,watchOptionsToExtend:h,system:n,reportDiagnostic:u,reportWatchStatus:Jkt(n,d.options)});return dZr(n,c,R),R.configFileParsingResult=d,R.extendedConfigCache=b,f7e(R)}function Zji(n,c,u,d,I,h){let b=p7e({rootFiles:d,options:I,watchOptions:h,system:n,reportDiagnostic:u,reportWatchStatus:Jkt(n,I)});return dZr(n,c,b),f7e(b)}function pZr(n,c){if(n===yd&&c.extendedDiagnostics)return Ay(),Lji()}function Lji(){let n;return{addAggregateStatistic:c,forEachAggregateStatistics:u,clear:d};function c(I){let h=n?.get(I.name);h?h.type===2?h.value=Math.max(h.value,I.value):h.value+=I.value:(n??(n=new Map)).set(I.name,I)}function u(I){n?.forEach(I)}function d(){n=void 0}}function Ukt(n,c){if(!c)return;if(!xm()){yd.write(Z.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+` +`);return}let u=[];u.push({name:"Projects in scope",value:N_e(n.getBuildOrder()).length,type:1}),d("SolutionBuilder::Projects built"),d("SolutionBuilder::Timestamps only updates"),d("SolutionBuilder::Bundles updated"),c.forEachAggregateStatistics(h=>{h.name=`Aggregate ${h.name}`,u.push(h)}),Vf((h,b)=>{B7e(h)&&u.push({name:`${I(h)} time`,value:b,type:0})}),B_(),Ay(),c.clear(),CZr(yd,u);function d(h){let b=Ml(h);b&&u.push({name:I(h),value:b,type:1})}function I(h){return h.replace("SolutionBuilder::","")}}function fZr(n,c){return n===yd&&(c.diagnostics||c.extendedDiagnostics)}function IZr(n,c){return n===yd&&c.generateTrace}function Kkt(n,c,u){fZr(n,c)&&Ay(n),IZr(n,c)&&BE(u?"build":"project",c.generateTrace,c.configFilePath)}function B7e(n){return uc(n,"SolutionBuilder::")}function v7e(n,c,u){var d;let I=c.getCompilerOptions();IZr(n,I)&&((d=Qi)==null||d.stopTracing());let h;if(fZr(n,I)){h=[];let V=n.getMemoryUsage?n.getMemoryUsage():-1;R("Files",c.getSourceFiles().length);let P=Nji(c);if(I.extendedDiagnostics)for(let[de,Be]of P.entries())R("Lines of "+de,Be);else R("Lines",ge(P.values(),(de,Be)=>de+Be,0));R("Identifiers",c.getIdentifierCount()),R("Symbols",c.getSymbolCount()),R("Types",c.getTypeCount()),R("Instantiations",c.getInstantiationCount()),V>=0&&b({name:"Memory used",value:V,type:2},!0);let Q=xm(),te=Q?xA("Program"):0,re=Q?xA("Bind"):0,ue=Q?xA("Check"):0,Ae=Q?xA("Emit"):0;if(I.extendedDiagnostics){let de=c.getRelationCacheSizes();R("Assignability cache size",de.assignable),R("Identity cache size",de.identity),R("Subtype cache size",de.subtype),R("Strict subtype cache size",de.strictSubtype),Q&&Vf((Be,Fe)=>{B7e(Be)||N(`${Be} time`,Fe,!0)})}else Q&&(N("I/O read",xA("I/O Read"),!0),N("I/O write",xA("I/O Write"),!0),N("Parse time",te,!0),N("Bind time",re,!0),N("Check time",ue,!0),N("Emit time",Ae,!0));Q&&N("Total time",te+re+ue+Ae,!1),CZr(n,h),Q?u?(Vf(de=>{B7e(de)||Eh(de)}),zd(de=>{B7e(de)||g2(de)})):B_():n.write(Z.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+` +`)}function b(V,P){h.push(V),P&&u?.addAggregateStatistic(V)}function R(V,P){b({name:V,value:P,type:1},!0)}function N(V,P,Q){b({name:V,value:P,type:0},Q)}}function CZr(n,c){let u=0,d=0;for(let I of c){I.name.length>u&&(u=I.name.length);let h=mZr(I);h.length>d&&(d=h.length)}for(let I of c)n.write(`${I.name}:`.padEnd(u+2)+mZr(I).toString().padStart(d)+n.newLine)}function mZr(n){switch(n.type){case 1:return""+n.value;case 0:return(n.value/1e3).toFixed(2)+"s";case 2:return Math.round(n.value/1e3)+"K";default:w.assertNever(n.type)}}function Vji(n,c,u,d){let I=n.getCurrentDirectory(),h=Mc(Do(I,"tsconfig.json"));if(n.fileExists(h))c(If(Z.A_tsconfig_json_file_is_already_defined_at_Colon_0,h));else{n.writeFile(h,qRt(u,d,n.newLine));let b=[n.newLine,...E7e(n,"Created a new tsconfig.json with:")];b.push(zRt(u,n.newLine)+n.newLine+n.newLine),b.push("You can learn more at https://aka.ms/tsconfig"+n.newLine);for(let R of b)n.write(R)}}function jkt(n,c){let u=x_(n,"strictNullChecks");return{typeFromExpression:Fe,serializeTypeOfDeclaration:h,serializeReturnTypeForSignature:b,serializeTypeOfExpression:I};function d(He,ht){return He!==void 0&&(!ht||He&&dt(He))?!0:void 0}function I(He,ht,Et,Kt){return Fe(He,ht,!1,Et,Kt)??ue(He,ht)}function h(He,ht){switch(He.kind){case 171:return d(IC(He));case 169:return Q(He,ht);case 260:return P(He,ht);case 172:return te(He,ht);case 208:return re(He,ht);case 277:return I(He.expression,ht,void 0,!0);case 211:case 212:case 226:return d(IC(He))||re(He,ht);case 303:return Fe(He.initializer,ht)||re(He,ht);default:w.assertNever(He,`Node needs to be an inferrable node, found ${w.formatSyntaxKind(He.kind)}`)}}function b(He,ht){switch(He.kind){case 177:return V(He,ht);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 Tt(He,ht);default:w.assertNever(He,`Node needs to be an inferrable node, found ${w.formatSyntaxKind(He.kind)}`)}}function R(He){if(He)return He.kind===177?nb(He):He.parameters.length>0?IC(He.parameters[0]):void 0}function N(He,ht){let Et=R(He);return!Et&&He!==ht.firstAccessor&&(Et=R(ht.firstAccessor)),!Et&&ht.secondAccessor&&He!==ht.secondAccessor&&(Et=R(ht.secondAccessor)),Et}function V(He,ht){let Et=c.getAllAccessorDeclarations(He),Kt=N(He,Et);return Kt?d(Kt):Et.getAccessor?Tt(Et.getAccessor,ht):!1}function P(He,ht){let Et=IC(He);if(Et)return d(Et);let Kt;return He.initializer&&(c.isExpandoFunctionDeclaration(He)||(Kt=Fe(He.initializer,ht,void 0,void 0,Od(He)))),Kt??re(He,ht)}function Q(He,ht){let Et=He.parent;if(Et.kind===178)return V(Et,ht);let Kt=IC(He),Nt=c.requiresAddingImplicitUndefined(He),Lt;return Kt?Lt=d(Kt,Nt):He.initializer&&sr(He.name)&&(Lt=Fe(He.initializer,ht,void 0,Nt)),Lt??re(He,ht)}function te(He,ht){let Et=IC(He);if(Et)return d(Et);let Kt;if(He.initializer){let Nt=Iu(He);Kt=Fe(He.initializer,ht,void 0,void 0,Nt)}return Kt??re(He,ht)}function re(He,ht){return ht.tracker.reportInferenceFallback(He),!1}function ue(He,ht){return ht.tracker.reportInferenceFallback(He),!1}function Ae(He,ht){return ht.tracker.reportInferenceFallback(He),!1}function de(He,ht,Et){return He.kind===177?Tt(He,Et):(Et.tracker.reportInferenceFallback(He),!1)}function Be(He,ht,Et,Kt){return B2(ht)?Fe(He,Et,!0,Kt):(Kt&&!dt(ht)&&Et.tracker.reportInferenceFallback(ht),d(ht))}function Fe(He,ht,Et=!1,Kt=!1,Nt=!1){switch(He.kind){case 217:return m4(He)?Be(He.expression,Ule(He),ht,Kt):Fe(He.expression,ht,Et,Kt);case 80:if(c.isUndefinedIdentifierExpression(He))return!0;break;case 106:return!0;case 219:case 218:return Ne(He,ht);case 216:case 234:let Lt=He;return Be(Lt.expression,Lt.type,ht,Kt);case 224:let kt=He;if(zee(kt)&&(kt.operand.kind===10||kt.operand.kind===9))return It();break;case 9:return It();case 228:if(!Et&&!Nt)return!0;break;case 15:case 11:return It();case 10:return It();case 112:case 97:return It();case 209:return De(He,ht,Et);case 210:return Le(He,ht,Et);case 231:return ue(He,ht)}}function Ne(He,ht){let Et=d(He.type)??Tt(He,ht),Kt=nt(He.typeParameters),Nt=He.parameters.every(Lt=>st(Lt,ht));return Et&&Kt&&Nt}function Me(He,ht,Et){if(!Et)return ht.tracker.reportInferenceFallback(He),!1;for(let Kt of He.elements)if(Kt.kind===230)return ht.tracker.reportInferenceFallback(Kt),!1;return!0}function De(He,ht,Et){if(!Me(He,ht,Et))return!1;let Kt=!0;for(let Nt of He.elements)w.assert(Nt.kind!==230),Nt.kind!==232&&(Kt=(Fe(Nt,ht,Et)??ue(Nt,ht))&&Kt);return!0}function lt(He,ht){let Et=!0;for(let Kt of He.properties){if(Kt.flags&262144){Et=!1;break}if(Kt.kind===304||Kt.kind===305)ht.tracker.reportInferenceFallback(Kt),Et=!1;else if(Kt.name.flags&262144){Et=!1;break}else if(Kt.name.kind===81)Et=!1;else if(Kt.name.kind===167){let Nt=Kt.name.expression;!zee(Nt,!1)&&!c.isDefinitelyReferenceToGlobalSymbolObject(Nt)&&(ht.tracker.reportInferenceFallback(Kt.name),Et=!1)}}return Et}function Le(He,ht,Et){if(!lt(He,ht))return!1;let Kt=!0;for(let Nt of He.properties){w.assert(!F_(Nt)&&!Ux(Nt));let Lt=Nt.name;switch(Nt.kind){case 174:Kt=!!qe(Nt,Lt,ht)&&Kt;break;case 303:Kt=!!je(Nt,Lt,ht,Et)&&Kt;break;case 178:case 177:Kt=!!it(Nt,Lt,ht)&&Kt;break}}return Kt}function je(He,ht,Et,Kt){return Fe(He.initializer,Et,Kt)??re(He,Et)}function st(He,ht){return Q(He,ht)}function nt(He){return He?.every(ht=>d(ht.constraint)&&d(ht.default))??!0}function qe(He,ht,Et){let Kt=Tt(He,Et),Nt=nt(He.typeParameters),Lt=He.parameters.every(kt=>st(kt,Et));return Kt&&Nt&&Lt}function it(He,ht,Et){let Kt=c.getAllAccessorDeclarations(He),Nt=Kt.getAccessor&&R(Kt.getAccessor),Lt=Kt.setAccessor&&R(Kt.setAccessor);if(Nt!==void 0&&Lt!==void 0){let kt=He.parameters.every(Zt=>st(Zt,Et));return Rv(He)?kt&&d(Nt):kt}else if(Kt.firstAccessor===He){let kt=Nt??Lt;return kt?d(kt):de(He,Kt,Et)}return!1}function It(){return!0}function dt(He){return!u||s0(He.kind)||He.kind===201||He.kind===184||He.kind===185||He.kind===188||He.kind===189||He.kind===187||He.kind===203||He.kind===197?!0:He.kind===196?dt(He.type):He.kind===192||He.kind===193?He.types.every(dt):!1}function Tt(He,ht){let Et,Kt=nb(He);return Kt&&(Et=d(Kt)),!Et&&Z5(He)&&(Et=St(He,ht)),Et??Ae(He,ht)}function St(He,ht){let Et;if(He&&!Tf(He.body)){if(YI(He)&3)return;let Kt=He.body;Kt&&hc(Kt)?kx(Kt,Nt=>{if(!Et)Et=Nt.expression;else return Et=void 0,!0}):Et=Kt}if(Et)return Fe(Et,ht)}}var GN={};o(GN,{NameValidationResult:()=>NZr,discoverTypings:()=>Oji,isTypingUpToDate:()=>EZr,loadSafeList:()=>Wji,loadTypesMap:()=>Pji,nodeCoreModuleList:()=>SZr,nodeCoreModules:()=>wZr,nonRelativeModuleNameForTypingCache:()=>TZr,prefixedNodeCoreModuleList:()=>vZr,renderPackageNameValidationFailure:()=>Mji,validatePackageName:()=>Qji});var EGe="action::set",BGe="action::invalidate",vGe="action::packageInstalled",S7e="event::typesRegistry",w7e="event::beginInstallTypes",T7e="event::endInstallTypes",zkt="event::initializationFailed",x_e="action::watchTypingLocations",N7e;(n=>{n.GlobalCacheLocation="--globalTypingsCacheLocation",n.LogFile="--logFile",n.EnableTelemetry="--enableTelemetry",n.TypingSafeListLocation="--typingSafeListLocation",n.TypesMapLocation="--typesMapLocation",n.NpmLocation="--npmLocation",n.ValidateDefaultNpmLocation="--validateDefaultNpmLocation"})(N7e||(N7e={}));function hZr(n){return yd.args.includes(n)}function _Zr(n){let c=yd.args.indexOf(n);return c>=0&&c`node:${n}`),SZr=[...BZr,...vZr],wZr=new Set(SZr);function TZr(n){return wZr.has(n)?"node":n}function Wji(n,c){let u=t_e(c,d=>n.readFile(d));return new Map(Object.entries(u.config))}function Pji(n,c){var u;let d=t_e(c,I=>n.readFile(I));if((u=d.config)!=null&&u.simpleMap)return new Map(Object.entries(d.config.simpleMap))}function Oji(n,c,u,d,I,h,b,R,N,V){if(!b||!b.enable)return{cachedTypingPaths:[],newTypingNames:[],filesToWatch:[]};let P=new Map;u=tr(u,Me=>{let De=Mc(Me);if(hN(De))return De});let Q=[];b.include&&Be(b.include,"Explicitly included types");let te=b.exclude||[];if(!V.types){let Me=new Set(u.map(oa));Me.add(d),Me.forEach(De=>{Fe(De,"bower.json","bower_components",Q),Fe(De,"package.json","node_modules",Q)})}if(b.disableFilenameBasedTypeAcquisition||Ne(u),R){let Me=NA(R.map(TZr),um,Ro);Be(Me,"Inferred typings from unresolved imports")}for(let Me of te)P.delete(Me)&&c&&c(`Typing for ${Me} is in exclude list, will be ignored.`);h.forEach((Me,De)=>{let lt=N.get(De);P.get(De)===!1&<!==void 0&&EZr(Me,lt)&&P.set(De,Me.typingLocation)});let re=[],ue=[];P.forEach((Me,De)=>{Me?ue.push(Me):re.push(De)});let Ae={cachedTypingPaths:ue,newTypingNames:re,filesToWatch:Q};return c&&c(`Finished typings discovery:${fP(Ae)}`),Ae;function de(Me){P.has(Me)||P.set(Me,!1)}function Be(Me,De){c&&c(`${De}: ${JSON.stringify(Me)}`),X(Me,de)}function Fe(Me,De,lt,Le){let je=Do(Me,De),st,nt;n.fileExists(je)&&(Le.push(je),st=t_e(je,dt=>n.readFile(dt)).config,nt=Fr([st.dependencies,st.devDependencies,st.optionalDependencies,st.peerDependencies],Gl),Be(nt,`Typing names in '${je}' dependencies`));let qe=Do(Me,lt);if(Le.push(qe),!n.directoryExists(qe))return;let it=[],It=nt?nt.map(dt=>Do(qe,dt,De)):n.readDirectory(qe,[".json"],void 0,void 0,3).filter(dt=>{if(kA(dt)!==De)return!1;let Tt=dd(Mc(dt)),St=Tt[Tt.length-3][0]==="@";return St&&uf(Tt[Tt.length-4])===lt||!St&&uf(Tt[Tt.length-3])===lt});c&&c(`Searching for typing names in ${qe}; all files: ${JSON.stringify(It)}`);for(let dt of It){let Tt=Mc(dt),He=t_e(Tt,Et=>n.readFile(Et)).config;if(!He.name)continue;let ht=He.types||He.typings;if(ht){let Et=Qc(ht,oa(Tt));n.fileExists(Et)?(c&&c(` Package '${He.name}' provides its own types.`),P.set(He.name,Et)):c&&c(` Package '${He.name}' provides its own types but they are missing.`)}else it.push(He.name)}Be(it," Found package names")}function Ne(Me){let De=tr(Me,Le=>{if(!hN(Le))return;let je=a0(uf(kA(Le))),st=Iv(je);return I.get(st)});De.length&&Be(De,"Inferred typings from file names"),lr(Me,Le=>Ad(Le,".jsx"))&&(c&&c("Inferred 'react' typings due to presence of '.jsx' extension"),de("react"))}}var NZr=(n=>(n[n.Ok=0]="Ok",n[n.EmptyName=1]="EmptyName",n[n.NameTooLong=2]="NameTooLong",n[n.NameStartsWithDot=3]="NameStartsWithDot",n[n.NameStartsWithUnderscore=4]="NameStartsWithUnderscore",n[n.NameContainsNonURISafeCharacters=5]="NameContainsNonURISafeCharacters",n))(NZr||{}),RZr=214;function Qji(n){return qkt(n,!0)}function qkt(n,c){if(!n)return 1;if(n.length>RZr)return 2;if(n.charCodeAt(0)===46)return 3;if(n.charCodeAt(0)===95)return 4;if(c){let u=/^@([^/]+)\/([^/]+)$/.exec(n);if(u){let d=qkt(u[1],!1);if(d!==0)return{name:u[1],isScopeName:!0,result:d};let I=qkt(u[2],!1);return I!==0?{name:u[2],isScopeName:!1,result:I}:0}}return encodeURIComponent(n)!==n?5:0}function Mji(n,c){return typeof n=="object"?DZr(c,n.result,n.name,n.isScopeName):DZr(c,n,c,!1)}function DZr(n,c,u,d){let I=d?"Scope":"Package";switch(c){case 1:return`'${n}':: ${I} name '${u}' cannot be empty`;case 2:return`'${n}':: ${I} name '${u}' should be less than ${RZr} characters`;case 3:return`'${n}':: ${I} name '${u}' cannot start with '.'`;case 4:return`'${n}':: ${I} name '${u}' cannot start with '_'`;case 5:return`'${n}':: ${I} name '${u}' contains non URI safe characters`;case 0:return w.fail();default:w.assertNever(c)}}var SGe;(n=>{class c{constructor(I){this.text=I}getText(I,h){return I===0&&h===this.text.length?this.text:this.text.substring(I,h)}getLength(){return this.text.length}getChangeRange(){}}function u(d){return new c(d)}n.fromString=u})(SGe||(SGe={}));var $kt=(n=>(n[n.Dependencies=1]="Dependencies",n[n.DevDependencies=2]="DevDependencies",n[n.PeerDependencies=4]="PeerDependencies",n[n.OptionalDependencies=8]="OptionalDependencies",n[n.All=15]="All",n))($kt||{}),eGt=(n=>(n[n.Off=0]="Off",n[n.On=1]="On",n[n.Auto=2]="Auto",n))(eGt||{}),tGt=(n=>(n[n.Semantic=0]="Semantic",n[n.PartialSemantic=1]="PartialSemantic",n[n.Syntactic=2]="Syntactic",n))(tGt||{}),Vv={},rGt=(n=>(n.Original="original",n.TwentyTwenty="2020",n))(rGt||{}),R7e=(n=>(n.All="All",n.SortAndCombine="SortAndCombine",n.RemoveUnused="RemoveUnused",n))(R7e||{}),D7e=(n=>(n[n.Invoked=1]="Invoked",n[n.TriggerCharacter=2]="TriggerCharacter",n[n.TriggerForIncompleteCompletions=3]="TriggerForIncompleteCompletions",n))(D7e||{}),nGt=(n=>(n.Type="Type",n.Parameter="Parameter",n.Enum="Enum",n))(nGt||{}),iGt=(n=>(n.none="none",n.definition="definition",n.reference="reference",n.writtenReference="writtenReference",n))(iGt||{}),sGt=(n=>(n[n.None=0]="None",n[n.Block=1]="Block",n[n.Smart=2]="Smart",n))(sGt||{}),x7e=(n=>(n.Ignore="ignore",n.Insert="insert",n.Remove="remove",n))(x7e||{});function wGe(n){return{indentSize:4,tabSize:4,newLineCharacter: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 xZr=wGe(` +`),TGe=(n=>(n[n.aliasName=0]="aliasName",n[n.className=1]="className",n[n.enumName=2]="enumName",n[n.fieldName=3]="fieldName",n[n.interfaceName=4]="interfaceName",n[n.keyword=5]="keyword",n[n.lineBreak=6]="lineBreak",n[n.numericLiteral=7]="numericLiteral",n[n.stringLiteral=8]="stringLiteral",n[n.localName=9]="localName",n[n.methodName=10]="methodName",n[n.moduleName=11]="moduleName",n[n.operator=12]="operator",n[n.parameterName=13]="parameterName",n[n.propertyName=14]="propertyName",n[n.punctuation=15]="punctuation",n[n.space=16]="space",n[n.text=17]="text",n[n.typeParameterName=18]="typeParameterName",n[n.enumMemberName=19]="enumMemberName",n[n.functionName=20]="functionName",n[n.regularExpressionLiteral=21]="regularExpressionLiteral",n[n.link=22]="link",n[n.linkName=23]="linkName",n[n.linkText=24]="linkText",n))(TGe||{}),oGt=(n=>(n[n.None=0]="None",n[n.MayIncludeAutoImports=1]="MayIncludeAutoImports",n[n.IsImportStatementCompletion=2]="IsImportStatementCompletion",n[n.IsContinuation=4]="IsContinuation",n[n.ResolvedModuleSpecifiers=8]="ResolvedModuleSpecifiers",n[n.ResolvedModuleSpecifiersBeyondLimit=16]="ResolvedModuleSpecifiersBeyondLimit",n[n.MayIncludeMethodSnippets=32]="MayIncludeMethodSnippets",n))(oGt||{}),aGt=(n=>(n.Comment="comment",n.Region="region",n.Code="code",n.Imports="imports",n))(aGt||{}),cGt=(n=>(n[n.JavaScript=0]="JavaScript",n[n.SourceMap=1]="SourceMap",n[n.Declaration=2]="Declaration",n))(cGt||{}),lGt=(n=>(n[n.None=0]="None",n[n.InMultiLineCommentTrivia=1]="InMultiLineCommentTrivia",n[n.InSingleQuoteStringLiteral=2]="InSingleQuoteStringLiteral",n[n.InDoubleQuoteStringLiteral=3]="InDoubleQuoteStringLiteral",n[n.InTemplateHeadOrNoSubstitutionTemplate=4]="InTemplateHeadOrNoSubstitutionTemplate",n[n.InTemplateMiddleOrTail=5]="InTemplateMiddleOrTail",n[n.InTemplateSubstitutionPosition=6]="InTemplateSubstitutionPosition",n))(lGt||{}),uGt=(n=>(n[n.Punctuation=0]="Punctuation",n[n.Keyword=1]="Keyword",n[n.Operator=2]="Operator",n[n.Comment=3]="Comment",n[n.Whitespace=4]="Whitespace",n[n.Identifier=5]="Identifier",n[n.NumberLiteral=6]="NumberLiteral",n[n.BigIntLiteral=7]="BigIntLiteral",n[n.StringLiteral=8]="StringLiteral",n[n.RegExpLiteral=9]="RegExpLiteral",n))(uGt||{}),gGt=(n=>(n.unknown="",n.warning="warning",n.keyword="keyword",n.scriptElement="script",n.moduleElement="module",n.classElement="class",n.localClassElement="local class",n.interfaceElement="interface",n.typeElement="type",n.enumElement="enum",n.enumMemberElement="enum member",n.variableElement="var",n.localVariableElement="local var",n.variableUsingElement="using",n.variableAwaitUsingElement="await using",n.functionElement="function",n.localFunctionElement="local function",n.memberFunctionElement="method",n.memberGetAccessorElement="getter",n.memberSetAccessorElement="setter",n.memberVariableElement="property",n.memberAccessorVariableElement="accessor",n.constructorImplementationElement="constructor",n.callSignatureElement="call",n.indexSignatureElement="index",n.constructSignatureElement="construct",n.parameterElement="parameter",n.typeParameterElement="type parameter",n.primitiveType="primitive type",n.label="label",n.alias="alias",n.constElement="const",n.letElement="let",n.directory="directory",n.externalModuleName="external module name",n.jsxAttribute="JSX attribute",n.string="string",n.link="link",n.linkName="link name",n.linkText="link text",n))(gGt||{}),AGt=(n=>(n.none="",n.publicMemberModifier="public",n.privateMemberModifier="private",n.protectedMemberModifier="protected",n.exportedModifier="export",n.ambientModifier="declare",n.staticModifier="static",n.abstractModifier="abstract",n.optionalModifier="optional",n.deprecatedModifier="deprecated",n.dtsModifier=".d.ts",n.tsModifier=".ts",n.tsxModifier=".tsx",n.jsModifier=".js",n.jsxModifier=".jsx",n.jsonModifier=".json",n.dmtsModifier=".d.mts",n.mtsModifier=".mts",n.mjsModifier=".mjs",n.dctsModifier=".d.cts",n.ctsModifier=".cts",n.cjsModifier=".cjs",n))(AGt||{}),dGt=(n=>(n.comment="comment",n.identifier="identifier",n.keyword="keyword",n.numericLiteral="number",n.bigintLiteral="bigint",n.operator="operator",n.stringLiteral="string",n.whiteSpace="whitespace",n.text="text",n.punctuation="punctuation",n.className="class name",n.enumName="enum name",n.interfaceName="interface name",n.moduleName="module name",n.typeParameterName="type parameter name",n.typeAliasName="type alias name",n.parameterName="parameter name",n.docCommentTagName="doc comment tag name",n.jsxOpenTagName="jsx open tag name",n.jsxCloseTagName="jsx close tag name",n.jsxSelfClosingTagName="jsx self closing tag name",n.jsxAttribute="jsx attribute",n.jsxText="jsx text",n.jsxAttributeStringLiteralValue="jsx attribute string literal value",n))(dGt||{}),k7e=(n=>(n[n.comment=1]="comment",n[n.identifier=2]="identifier",n[n.keyword=3]="keyword",n[n.numericLiteral=4]="numericLiteral",n[n.operator=5]="operator",n[n.stringLiteral=6]="stringLiteral",n[n.regularExpressionLiteral=7]="regularExpressionLiteral",n[n.whiteSpace=8]="whiteSpace",n[n.text=9]="text",n[n.punctuation=10]="punctuation",n[n.className=11]="className",n[n.enumName=12]="enumName",n[n.interfaceName=13]="interfaceName",n[n.moduleName=14]="moduleName",n[n.typeParameterName=15]="typeParameterName",n[n.typeAliasName=16]="typeAliasName",n[n.parameterName=17]="parameterName",n[n.docCommentTagName=18]="docCommentTagName",n[n.jsxOpenTagName=19]="jsxOpenTagName",n[n.jsxCloseTagName=20]="jsxCloseTagName",n[n.jsxSelfClosingTagName=21]="jsxSelfClosingTagName",n[n.jsxAttribute=22]="jsxAttribute",n[n.jsxText=23]="jsxText",n[n.jsxAttributeStringLiteralValue=24]="jsxAttributeStringLiteralValue",n[n.bigintLiteral=25]="bigintLiteral",n))(k7e||{}),J0=Ft(99,!0),pGt=(n=>(n[n.None=0]="None",n[n.Value=1]="Value",n[n.Type=2]="Type",n[n.Namespace=4]="Namespace",n[n.All=7]="All",n))(pGt||{});function NGe(n){switch(n.kind){case 260:return io(n)&&pG(n)?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 n.name===void 0?3:2;case 306:case 263:return 3;case 267:return Yf(n)||PG(n)===1?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 E4(n){n=X7e(n);let c=n.parent;return n.kind===307?1:rf(c)||l0(c)||ZG(c)||yy(c)||oT(c)||mm(c)&&n===c.name?7:RGe(n)?Hji(n):tT(n)?NGe(c):T_(n)&&Si(n,fg(Hle,U9,oP))?7:Uji(n)?2:Yji(n)?4:$p(c)?(w.assert(Lv(c.parent)),2):sd(c)?3:1}function Hji(n){let c=n.kind===166?n:c0(n.parent)&&n.parent.right===n?n.parent:void 0;return c&&c.parent.kind===271?7:4}function RGe(n){for(;n.parent.kind===166;)n=n.parent;return D5(n.parent)&&n.parent.moduleReference===n}function Yji(n){return Xji(n)||Jji(n)}function Xji(n){let c=n,u=!0;if(c.parent.kind===166){for(;c.parent&&c.parent.kind===166;)c=c.parent;u=c.right===n}return c.parent.kind===183&&!u}function Jji(n){let c=n,u=!0;if(c.parent.kind===211){for(;c.parent&&c.parent.kind===211;)c=c.parent;u=c.name===n}if(!u&&c.parent.kind===233&&c.parent.parent.kind===298){let d=c.parent.parent.parent;return d.kind===263&&c.parent.parent.token===119||d.kind===264&&c.parent.parent.token===96}return!1}function Uji(n){switch(a6(n)&&(n=n.parent),n.kind){case 110:return!DB(n);case 197:return!0}switch(n.parent.kind){case 183:return!0;case 205:return!n.parent.isTypeOf;case 233:return VS(n.parent)}return!1}function G7e(n,c=!1,u=!1){return k_e(n,lu,Z7e,c,u)}function Bue(n,c=!1,u=!1){return k_e(n,qS,Z7e,c,u)}function F7e(n,c=!1,u=!1){return k_e(n,SB,Z7e,c,u)}function fGt(n,c=!1,u=!1){return k_e(n,W1,Kji,c,u)}function IGt(n,c=!1,u=!1){return k_e(n,FC,Z7e,c,u)}function CGt(n,c=!1,u=!1){return k_e(n,Um,jji,c,u)}function Z7e(n){return n.expression}function Kji(n){return n.tag}function jji(n){return n.tagName}function k_e(n,c,u,d,I){let h=d?mGt(n):DGe(n);return I&&(h=LC(h)),!!h&&!!h.parent&&c(h.parent)&&u(h.parent)===h}function DGe(n){return Fte(n)?n.parent:n}function mGt(n){return Fte(n)||P7e(n)?n.parent:n}function xGe(n,c){for(;n;){if(n.kind===256&&n.label.escapedText===c)return n.label;n=n.parent}}function G_e(n,c){return fo(n.expression)?n.expression.name.text===c:!1}function F_e(n){var c;return sr(n)&&((c=$s(n.parent,D3))==null?void 0:c.label)===n}function L7e(n){var c;return sr(n)&&((c=$s(n.parent,iC))==null?void 0:c.label)===n}function V7e(n){return L7e(n)||F_e(n)}function W7e(n){var c;return((c=$s(n.parent,J9))==null?void 0:c.tagName)===n}function hGt(n){var c;return((c=$s(n.parent,c0))==null?void 0:c.right)===n}function Fte(n){var c;return((c=$s(n.parent,fo))==null?void 0:c.name)===n}function P7e(n){var c;return((c=$s(n.parent,_A))==null?void 0:c.argumentExpression)===n}function O7e(n){var c;return((c=$s(n.parent,mC))==null?void 0:c.name)===n}function Q7e(n){var c;return sr(n)&&((c=$s(n.parent,eu))==null?void 0:c.name)===n}function kGe(n){switch(n.parent.kind){case 172:case 171:case 303:case 306:case 174:case 173:case 177:case 178:case 267:return Sl(n.parent)===n;case 212:return n.parent.argumentExpression===n;case 167:return!0;case 201:return n.parent.parent.kind===199;default:return!1}}function _Gt(n){return BZ(n.parent.parent)&&M8(n.parent.parent)===n}function B4(n){for(T2(n)&&(n=n.parent.parent);;){if(n=n.parent,!n)return;switch(n.kind){case 307:case 174:case 173:case 262:case 218:case 177:case 178:case 263:case 264:case 266:case 267:return n}}}function bM(n){switch(n.kind){case 307:return hm(n)?"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 c(n);case 208:return c(PS(n));case 219:case 262:case 218:return"function";case 177:return"getter";case 178:return"setter";case 174:case 173:return"method";case 303:let{initializer:u}=n;return eu(u)?"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 ya(n,31)?"property":"parameter";case 271:case 276:case 281:case 274:case 280:return"alias";case 226:let d=mI(n),{right:I}=n;switch(d){case 7:case 8:case 9:case 0:return"";case 1:case 2:let b=bM(I);return b===""?"const":b;case 3:return PA(I)?"method":"property";case 4:return"property";case 5:return PA(I)?"method":"property";case 6:return"local class";default:return""}case 80:return oT(n.parent)?"alias":"";case 277:let h=bM(n.expression);return h===""?"const":h;default:return""}function c(u){return Hp(u)?"const":aI(u)?"let":"var"}}function Zte(n){switch(n.kind){case 110:return!0;case 80:return Fme(n)&&n.parent.kind===169;default:return!1}}var zji=/^\/\/\/\s*=u.end}function V_e(n,c,u){return n.pos<=c&&n.end>=u}function vue(n,c,u){return FGe(n.pos,n.end,c,u)}function GGe(n,c,u,d){return FGe(n.getStart(c),n.end,u,d)}function FGe(n,c,u,d){let I=Math.max(n,u),h=Math.min(c,d);return Id.kind===c)}function ZGe(n){let c=be(n.parent.getChildren(),u=>pte(u)&&W2(u,n));return w.assert(!c||Ue(c.getChildren(),n)),c}function kZr(n){return n.kind===90}function qji(n){return n.kind===86}function $ji(n){return n.kind===100}function ezi(n){if(wf(n))return n.name;if(Ec(n)){let c=n.modifiers&&be(n.modifiers,kZr);if(c)return c}if(rp(n)){let c=be(n.getChildren(),qji);if(c)return c}}function tzi(n){if(wf(n))return n.name;if(hp(n)){let c=be(n.modifiers,kZr);if(c)return c}if(PA(n)){let c=be(n.getChildren(),$ji);if(c)return c}}function rzi(n){let c;return Si(n,u=>(Ma(u)&&(c=u),!c0(u.parent)&&!Ma(u.parent)&&!Rx(u.parent))),c}function LGe(n,c){if(n.flags&16777216)return;let u=tFe(n,c);if(u)return u;let d=rzi(n);return d&&c.getTypeAtLocation(d)}function nzi(n,c){if(!c)switch(n.kind){case 263:case 231:return ezi(n);case 262:case 218:return tzi(n);case 176:return n}if(wf(n))return n.name}function GZr(n,c){if(n.importClause){if(n.importClause.name&&n.importClause.namedBindings)return;if(n.importClause.name)return n.importClause.name;if(n.importClause.namedBindings){if(TN(n.importClause.namedBindings)){let u=Tu(n.importClause.namedBindings.elements);return u?u.name:void 0}else if(Xx(n.importClause.namedBindings))return n.importClause.namedBindings.name}}if(!c)return n.moduleSpecifier}function FZr(n,c){if(n.exportClause){if(ZB(n.exportClause))return Tu(n.exportClause.elements)?n.exportClause.elements[0].name:void 0;if(sD(n.exportClause))return n.exportClause.name}if(!c)return n.moduleSpecifier}function izi(n){if(n.types.length===1)return n.types[0].expression}function ZZr(n,c){let{parent:u}=n;if(Ag(n)&&(c||n.kind!==90)?tw(u)&&Ue(u.modifiers,n):n.kind===86?Ec(u)||rp(n):n.kind===100?hp(u)||PA(n):n.kind===120?XI(u):n.kind===94?iP(u):n.kind===156?Pf(u):n.kind===145||n.kind===144?mC(u):n.kind===102?mm(u):n.kind===139?Qb(u):n.kind===153&&ob(u)){let d=nzi(u,c);if(d)return d}if((n.kind===115||n.kind===87||n.kind===121)&&bl(u)&&u.declarations.length===1){let d=u.declarations[0];if(sr(d.name))return d.name}if(n.kind===156){if(oT(u)&&u.isTypeOnly){let d=GZr(u.parent,c);if(d)return d}if(hC(u)&&u.isTypeOnly){let d=FZr(u,c);if(d)return d}}if(n.kind===130){if(yy(u)&&u.propertyName||l0(u)&&u.propertyName||Xx(u)||sD(u))return u.name;if(hC(u)&&u.exportClause&&sD(u.exportClause))return u.exportClause.name}if(n.kind===102&&hI(u)){let d=GZr(u,c);if(d)return d}if(n.kind===95){if(hC(u)){let d=FZr(u,c);if(d)return d}if(rf(u))return LC(u.expression)}if(n.kind===149&&ZG(u))return u.expression;if(n.kind===161&&(hI(u)||hC(u))&&u.moduleSpecifier)return u.moduleSpecifier;if((n.kind===96||n.kind===119)&&OE(u)&&u.token===n.kind){let d=izi(u);if(d)return d}if(n.kind===96){if($p(u)&&u.constraint&&F(u.constraint))return u.constraint.typeName;if(Ei(u)&&F(u.extendsType))return u.extendsType.typeName}if(n.kind===140&&yo(u))return u.typeParameter.name;if(n.kind===103&&$p(u)&&wl(u.parent))return u.name;if(n.kind===143&&as(u)&&u.operator===143&&F(u.type))return u.type.typeName;if(n.kind===148&&as(u)&&u.operator===148&&Ye(u.type)&&F(u.type.elementType))return u.type.elementType.typeName;if(!c){if((n.kind===105&&qS(u)||n.kind===116&&mf(u)||n.kind===114&&nD(u)||n.kind===135&&Mb(u)||n.kind===127&&Hx(u)||n.kind===91&&tP(u))&&u.expression)return LC(u.expression);if((n.kind===103||n.kind===104)&&ro(u)&&u.operatorToken===n)return LC(u.right);if(n.kind===130&&$S(u)&&F(u.type))return u.type.typeName;if(n.kind===103&&iD(u)||n.kind===165&&P1(u))return LC(u.expression)}return n}function X7e(n){return ZZr(n,!1)}function VGe(n){return ZZr(n,!0)}function ub(n,c){return Lte(n,c,u=>WS(u)||s0(u.kind)||Gc(u))}function Lte(n,c,u){return LZr(n,c,!1,u,!1)}function Hc(n,c){return LZr(n,c,!0,void 0,!1)}function LZr(n,c,u,d,I){let h=n,b;e:for(;;){let N=h.getChildren(n),V=lf(N,c,(P,Q)=>Q,(P,Q)=>{let te=N[P].getEnd();if(tec?1:R(N[P],re,te)?N[P-1]&&R(N[P-1])?1:0:d&&re===c&&N[P-1]&&N[P-1].getEnd()===c&&R(N[P-1])?1:-1});if(b)return b;if(V>=0&&N[V]){h=N[V];continue e}return h}function R(N,V,P){if(P??(P=N.getEnd()),Pc))return!1;if(cu.getStart(n)&&c(h.pos<=n.pos&&h.end>n.end||h.pos===n.end)&&RGt(h,u)?d(h):void 0)}}function ym(n,c,u,d){let I=h(u||c);return w.assert(!(I&&PGe(I))),I;function h(b){if(VZr(b)&&b.kind!==1)return b;let R=b.getChildren(c),N=lf(R,n,(P,Q)=>Q,(P,Q)=>n=R[P-1].end?0:1:-1);if(N>=0&&R[N]){let P=R[N];if(n=n||!RGt(P,c)||PGe(P)){let re=vGt(R,N,c,b.kind);return re?!d&&ff(re)&&re.getChildren(c).length?h(re):BGt(re,c):void 0}else return h(P)}w.assert(u!==void 0||b.kind===307||b.kind===1||ff(b));let V=vGt(R,R.length,c,b.kind);return V&&BGt(V,c)}}function VZr(n){return Q9(n)&&!PGe(n)}function BGt(n,c){if(VZr(n))return n;let u=n.getChildren(c);if(u.length===0)return n;let d=vGt(u,u.length,c,n.kind);return d&&BGt(d,c)}function vGt(n,c,u,d){for(let I=c-1;I>=0;I--){let h=n[I];if(PGe(h))I===0&&(d===12||d===285)&&w.fail("`JsxText` tokens should not be the first child of `JsxElement | JsxSelfClosingElement`");else if(RGt(n[I],u))return n[I]}}function e7(n,c,u=ym(c,n)){if(u&&C8(u)){let d=u.getStart(n),I=u.getEnd();if(du.getStart(n)}function wGt(n,c){let u=Hc(n,c);return!!(aM(u)||u.kind===19&&Qle(u.parent)&&Jx(u.parent.parent)||u.kind===30&&Um(u.parent)&&Jx(u.parent.parent))}function OGe(n,c){function u(d){for(;d;)if(d.kind>=285&&d.kind<=294||d.kind===12||d.kind===30||d.kind===32||d.kind===80||d.kind===20||d.kind===19||d.kind===44)d=d.parent;else if(d.kind===284){if(c>d.getStart(n))return!0;d=d.parent}else return!1;return!1}return u(Hc(n,c))}function QGe(n,c,u){let d=vr(n.kind),I=vr(c),h=n.getFullStart(),b=u.text.lastIndexOf(I,h);if(b===-1)return;if(u.text.lastIndexOf(d,h-1)!!h.typeParameters&&h.typeParameters.length>=c)}function K7e(n,c){if(c.text.lastIndexOf("<",n?n.pos:c.text.length)===-1)return;let u=n,d=0,I=0;for(;u;){switch(u.kind){case 30:if(u=ym(u.getFullStart(),c),u&&u.kind===29&&(u=ym(u.getFullStart(),c)),!u||!sr(u))return;if(!d)return tT(u)?void 0:{called:u,nTypeArguments:I};d--;break;case 50:d=3;break;case 49:d=2;break;case 32:d++;break;case 20:if(u=QGe(u,19,c),!u)return;break;case 22:if(u=QGe(u,21,c),!u)return;break;case 24:if(u=QGe(u,23,c),!u)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(Ma(u))break;return}u=ym(u.getFullStart(),c)}}function VZ(n,c,u){return zC.getRangeOfEnclosingComment(n,c,void 0,u)}function NGt(n,c){let u=Hc(n,c);return!!Si(u,cT)}function RGt(n,c){return n.kind===1?!!n.jsDoc:n.getWidth(c)!==0}function Sue(n,c=0){let u=[],d=xC(n)?E2(n)&~c:0;return d&2&&u.push("private"),d&4&&u.push("protected"),d&1&&u.push("public"),(d&256||ef(n))&&u.push("static"),d&64&&u.push("abstract"),d&32&&u.push("export"),d&65536&&u.push("deprecated"),n.flags&33554432&&u.push("declare"),n.kind===277&&u.push("export"),u.length>0?u.join(","):""}function DGt(n){if(n.kind===183||n.kind===213)return n.typeArguments;if(eu(n)||n.kind===263||n.kind===264)return n.typeParameters}function MGe(n){return n===2||n===3}function j7e(n){return!!(n===11||n===14||DS(n))}function WZr(n,c,u){return!!(c.flags&4)&&n.isEmptyAnonymousObjectType(u)}function xGt(n){if(!n.isIntersection())return!1;let{types:c,checker:u}=n;return c.length===2&&(WZr(u,c[0],c[1])||WZr(u,c[1],c[0]))}function O_e(n,c,u){return DS(n.kind)&&n.getStart(u){let u=od(c);return!n[u]&&(n[u]=!0)}}function t7(n){return n.getText(0,n.getLength())}function M_e(n,c){let u="";for(let d=0;d!c.isDeclarationFile&&!n.isSourceFileFromExternalLibrary(c)&&!!(c.externalModuleIndicator||c.commonJsModuleIndicator))}function ZGt(n){return n.getSourceFiles().some(c=>!c.isDeclarationFile&&!n.isSourceFileFromExternalLibrary(c)&&!!c.externalModuleIndicator)}function sje(n){return!!n.module||sA(n)>=2||!!n.noEmit}function r7(n,c){return{fileExists:u=>n.fileExists(u),getCurrentDirectory:()=>c.getCurrentDirectory(),readFile:Yi(c,c.readFile),useCaseSensitiveFileNames:Yi(c,c.useCaseSensitiveFileNames),getSymlinkCache:Yi(c,c.getSymlinkCache)||n.getSymlinkCache,getModuleSpecifierCache:Yi(c,c.getModuleSpecifierCache),getPackageJsonInfoCache:()=>{var u;return(u=n.getModuleResolutionCache())==null?void 0:u.getPackageJsonInfoCache()},getGlobalTypingsCacheLocation:Yi(c,c.getGlobalTypingsCacheLocation),redirectTargetsMap:n.redirectTargetsMap,getProjectReferenceRedirect:u=>n.getProjectReferenceRedirect(u),isSourceOfProjectReferenceRedirect:u=>n.isSourceOfProjectReferenceRedirect(u),getNearestAncestorDirectoryWithPackageJson:Yi(c,c.getNearestAncestorDirectoryWithPackageJson),getFileIncludeReasons:()=>n.getFileIncludeReasons(),getCommonSourceDirectory:()=>n.getCommonSourceDirectory()}}function oje(n,c){return{...r7(n,c),getCommonSourceDirectory:()=>n.getCommonSourceDirectory()}}function JGe(n){return n===2||n>=3&&n<=99||n===100}function RV(n,c,u,d,I){return _e.createImportDeclaration(void 0,n||c?_e.createImportClause(!!I,n,c&&c.length?_e.createNamedImports(c):void 0):void 0,typeof u=="string"?Tue(u,d):u,void 0)}function Tue(n,c){return _e.createStringLiteral(n,c===0)}var LGt=(n=>(n[n.Single=0]="Single",n[n.Double=1]="Double",n))(LGt||{});function aje(n,c){return yce(n,c)?1:0}function P2(n,c){if(c.quotePreference&&c.quotePreference!=="auto")return c.quotePreference==="single"?0:1;{let u=jR(n)&&n.imports&&be(n.imports,d=>Eu(d)&&!$d(d.parent));return u?aje(u,n):1}}function cje(n){switch(n){case 0:return"'";case 1:return'"';default:return w.assertNever(n)}}function lje(n){let c=UGe(n);return c===void 0?void 0:wc(c)}function UGe(n){return n.escapedName!=="default"?n.escapedName:le(n.declarations,c=>{let u=Sl(c);return u&&u.kind===80?u.escapedText:void 0})}function KGe(n){return JA(n)&&(ZG(n.parent)||hI(n.parent)||DN(n.parent)||H0(n.parent,!1)&&n.parent.arguments[0]===n||fC(n.parent)&&n.parent.arguments[0]===n)}function Y_e(n){return hl(n)&&Wg(n.parent)&&sr(n.name)&&!n.propertyName}function jGe(n,c){let u=n.getTypeAtLocation(c.parent);return u&&n.getPropertyOfType(u,c.name.text)}function X_e(n,c,u){if(n)for(;n.parent;){if(Fc(n.parent)||!szi(u,n.parent,c))return n;n=n.parent}}function szi(n,c,u){return my(n,c.getStart(u))&&c.getEnd()<=Ku(n)}function Wte(n,c){return tw(n)?be(n.modifiers,u=>u.kind===c):void 0}function uje(n,c,u,d,I){var h;let R=(Na(u)?u[0]:u).kind===243?Y8:_G,N=Gt(c.statements,R),{comparer:V,isSorted:P}=bP.getOrganizeImportsStringComparerWithDetection(N,I),Q=Na(u)?ml(u,(te,re)=>bP.compareImportsOrRequireStatements(te,re,V)):[u];if(!N?.length){if(jR(c))n.insertNodesAtTopOfFile(c,Q,d);else for(let te of Q)n.insertStatementsInNewFile(c.fileName,[te],(h=Np(te))==null?void 0:h.getSourceFile());return}if(w.assert(jR(c)),N&&P)for(let te of Q){let re=bP.getImportDeclarationInsertionIndex(N,te,V);if(re===0){let ue=N[0]===c.statements[0]?{leadingTriviaOption:Ao.LeadingTriviaOption.Exclude}:{};n.insertNodeBefore(c,N[0],te,!1,ue)}else{let ue=N[re-1];n.insertNodeAfter(c,ue,te)}}else{let te=zo(N);te?n.insertNodesAfter(c,te,Q):n.insertNodesAtTopOfFile(c,Q,d)}}function gje(n,c){return w.assert(n.isTypeOnly),ps(n.getChildAt(0,c),nje)}function Pte(n,c){return!!n&&!!c&&n.start===c.start&&n.length===c.length}function Aje(n,c,u){return(u?um:op)(n.fileName,c.fileName)&&Pte(n.textSpan,c.textSpan)}function dje(n){return(c,u)=>Aje(c,u,n)}function pje(n,c){if(n){for(let u=0;uUc(u)?!0:hl(u)||Wg(u)||Wu(u)?!1:"quit")}var WGt=ozi();function ozi(){let n=b5*10,c,u,d,I;P();let h=Q=>R(Q,17);return{displayParts:()=>{let Q=c.length&&c[c.length-1].text;return I>n&&Q&&Q!=="..."&&(Jm(Q.charCodeAt(Q.length-1))||c.push(Yb(" ",16)),c.push(Yb("...",15))),c},writeKeyword:Q=>R(Q,5),writeOperator:Q=>R(Q,12),writePunctuation:Q=>R(Q,15),writeTrailingSemicolon:Q=>R(Q,15),writeSpace:Q=>R(Q,16),writeStringLiteral:Q=>R(Q,8),writeParameter:Q=>R(Q,13),writeProperty:Q=>R(Q,14),writeLiteral:Q=>R(Q,8),writeSymbol:N,writeLine:V,write:h,writeComment:h,getText:()=>"",getTextPos:()=>0,getColumn:()=>0,getLine:()=>0,isAtStartOfLine:()=>!1,hasTrailingWhitespace:()=>!1,hasTrailingComment:()=>!1,rawWrite:ja,getIndent:()=>d,increaseIndent:()=>{d++},decreaseIndent:()=>{d--},clear:P};function b(){if(!(I>n)&&u){let Q=KX(d);Q&&(I+=Q.length,c.push(Yb(Q,16))),u=!1}}function R(Q,te){I>n||(b(),I+=Q.length,c.push(Yb(Q,te)))}function N(Q,te){I>n||(b(),I+=Q.length,c.push(PGt(Q,te)))}function V(){I>n||(I+=1,c.push(Ote()),u=!0)}function P(){c=[],u=!0,d=0,I=0}}function PGt(n,c){return Yb(n,u(c));function u(d){let I=d.flags;return I&3?Ije(d)?13:9:I&4||I&32768||I&65536?14:I&8?19:I&16?20:I&32?1:I&64?4:I&384?2:I&1536?11:I&8192?10:I&262144?18:I&524288||I&2097152?0:17}}function Yb(n,c){return{text:n,kind:TGe[c]}}function xI(){return Yb(" ",16)}function ME(n){return Yb(vr(n),5)}function d0(n){return Yb(vr(n),15)}function Rue(n){return Yb(vr(n),12)}function OGt(n){return Yb(n,13)}function QGt(n){return Yb(n,14)}function Cje(n){let c=Yn(n);return c===void 0?O2(n):ME(c)}function O2(n){return Yb(n,17)}function MGt(n){return Yb(n,0)}function HGt(n){return Yb(n,18)}function qGe(n){return Yb(n,24)}function YGt(n,c){return{text:n,kind:TGe[23],target:{fileName:ls(c).fileName,textSpan:By(c)}}}function mje(n){return Yb(n,22)}function XGt(n,c){var u;let d=qNt(n)?"link":$Nt(n)?"linkcode":"linkplain",I=[mje(`{@${d} `)];if(!n.name)n.text&&I.push(qGe(n.text));else{let h=c?.getSymbolAtLocation(n.name),b=h&&c?yje(h,c):void 0,R=czi(n.text),N=Nf(n.name)+n.text.slice(0,R),V=azi(n.text.slice(R)),P=b?.valueDeclaration||((u=b?.declarations)==null?void 0:u[0]);if(P)I.push(YGt(N,P)),V&&I.push(qGe(V));else{let Q=R===0||n.text.charCodeAt(R)===124&&N.charCodeAt(N.length-1)!==32?" ":"";I.push(qGe(N+Q+V))}}return I.push(mje("}")),I}function azi(n){let c=0;if(n.charCodeAt(c++)===124){for(;c"&&u--,d++,!u)return d}return 0}var lzi=` +`;function PZ(n,c){var u;return c?.newLineCharacter||((u=n.getNewLine)==null?void 0:u.call(n))||lzi}function Ote(){return Yb(` +`,6)}function DV(n){try{return n(WGt),WGt.displayParts()}finally{WGt.clear()}}function J_e(n,c,u,d=0){return DV(I=>{n.writeType(c,u,d|1024|16384,I)})}function Due(n,c,u,d,I=0){return DV(h=>{n.writeSymbol(c,u,d,I|8,h)})}function hje(n,c,u,d=0){return d|=25632,DV(I=>{n.writeSignature(c,u,d,void 0,I)})}function OZr(n,c){let u=c.getSourceFile();return DV(d=>{Kke().writeNode(4,n,u,d)})}function JGt(n){return!!n.parent&&M9(n.parent)&&n.parent.propertyName===n}function _je(n,c){return dle(n,c.getScriptKind&&c.getScriptKind(n))}function yje(n,c){let u=n;for(;uzi(u)||wB(u)&&u.links.target;)wB(u)&&u.links.target?u=u.links.target:u=ph(u,c);return u}function uzi(n){return(n.flags&2097152)!==0}function UGt(n,c){return Gg(ph(n,c))}function KGt(n,c){for(;Jm(n.charCodeAt(c));)c+=1;return c}function $Ge(n,c){for(;c>-1&&e0(n.charCodeAt(c));)c-=1;return c+1}function vd(n,c=!0){let u=n&&QZr(n);return u&&!c&&HE(u),yN(u,!1)}function U_e(n,c,u){let d=u(n);return d?Ho(d,n):d=QZr(n,u),d&&!c&&HE(d),d}function QZr(n,c){let u=c?h=>U_e(h,!0,c):vd,I=ns(n,u,void 0,c?h=>h&&bje(h,!0,c):h=>h&&BM(h),u);if(I===n){let h=Eu(n)?Ho(_e.createStringLiteralFromNode(n),n):pu(n)?Ho(_e.createNumericLiteral(n.text,n.numericLiteralFlags),n):_e.cloneNode(n);return un(h,n)}return I.parent=void 0,I}function BM(n,c=!0){if(n){let u=_e.createNodeArray(n.map(d=>vd(d,c)),n.hasTrailingComma);return un(u,n),u}return n}function bje(n,c,u){return _e.createNodeArray(n.map(d=>U_e(d,c,u)),n.hasTrailingComma)}function HE(n){Eje(n),jGt(n)}function Eje(n){zGt(n,1024,Azi)}function jGt(n){zGt(n,2048,zce)}function v4(n,c){let u=n.getSourceFile(),d=u.text;gzi(n,d)?Qte(n,c,u):j_e(n,c,u),xue(n,c,u)}function gzi(n,c){let u=n.getFullStart(),d=n.getStart();for(let I=u;Ic)}function S4(n,c){let u=n;for(let d=1;!v5(c,u);d++)u=`${n}_${d}`;return u}function K_e(n,c,u,d){let I=0,h=-1;for(let{fileName:b,textChanges:R}of n){w.assert(b===c);for(let N of R){let{span:V,newText:P}=N,Q=dzi(P,rT(u));if(Q!==-1&&(h=V.start+I+Q,!d))return h;I+=P.length-V.length}}return w.assert(d),w.assert(h>=0),h}function Qte(n,c,u,d,I){Sf(u.text,n.pos,qGt(c,u,d,I,a4))}function xue(n,c,u,d,I){bx(u.text,n.end,qGt(c,u,d,I,xle))}function j_e(n,c,u,d,I){bx(u.text,n.pos,qGt(c,u,d,I,a4))}function qGt(n,c,u,d,I){return(h,b,R,N)=>{R===3?(h+=2,b-=2):h+=2,I(n,u||R,c.text.slice(h,b),d!==void 0?d:N)}}function dzi(n,c){if(uc(n,c))return 0;let u=n.indexOf(" "+c);return u===-1&&(u=n.indexOf("."+c)),u===-1&&(u=n.indexOf('"'+c)),u===-1?-1:u+1}function eFe(n){return ro(n)&&n.operatorToken.kind===28||ru(n)||($S(n)||kG(n))&&ru(n.expression)}function tFe(n,c,u){let d=qR(n.parent);switch(d.kind){case 214:return c.getContextualType(d,u);case 226:{let{left:I,operatorToken:h,right:b}=d;return rFe(h.kind)?c.getTypeAtLocation(n===b?I:b):c.getContextualType(n,u)}case 296:return vje(d,c);default:return c.getContextualType(n,u)}}function kue(n,c,u){let d=P2(n,c),I=JSON.stringify(u);return d===0?`'${R2(I).replace(/'/g,()=>"\\'").replace(/\\"/g,'"')}'`:I}function rFe(n){switch(n){case 37:case 35:case 38:case 36:return!0;default:return!1}}function $Gt(n){switch(n.kind){case 11:case 15:case 228:case 215:return!0;default:return!1}}function Bje(n){return!!n.getStringIndexType()||!!n.getNumberIndexType()}function vje(n,c){return c.getTypeAtLocation(n.parent.parent.expression)}var Sje="anonymous function";function Gue(n,c,u,d){let I=u.getTypeChecker(),h=!0,b=()=>h=!1,R=I.typeToTypeNode(n,c,1,{trackSymbol:(N,V,P)=>(h=h&&I.isSymbolAccessible(N,V,P,!1).accessibility===0,!h),reportInaccessibleThisError:b,reportPrivateInBaseOfClassExpression:b,reportInaccessibleUniqueSymbolError:b,moduleResolverHost:oje(u,d)});return h?R:void 0}function eFt(n){return n===179||n===180||n===181||n===171||n===173}function MZr(n){return n===262||n===176||n===174||n===177||n===178}function HZr(n){return n===267}function nFe(n){return n===243||n===244||n===246||n===251||n===252||n===253||n===257||n===259||n===172||n===265||n===272||n===271||n===278||n===270||n===277}var tFt=fg(eFt,MZr,HZr,nFe);function pzi(n,c){let u=n.getLastToken(c);if(u&&u.kind===27)return!1;if(eFt(n.kind)){if(u&&u.kind===28)return!1}else if(HZr(n.kind)){let R=Ta(n.getChildren(c));if(R&&wN(R))return!1}else if(MZr(n.kind)){let R=Ta(n.getChildren(c));if(R&&z9(R))return!1}else if(!nFe(n.kind))return!1;if(n.kind===246)return!0;let d=Si(n,R=>!R.parent),I=EM(n,d,c);if(!I||I.kind===20)return!0;let h=c.getLineAndCharacterOfPosition(n.getEnd()).line,b=c.getLineAndCharacterOfPosition(I.getStart(c)).line;return h!==b}function iFe(n,c,u){let d=Si(c,I=>I.end!==n?"quit":tFt(I.kind));return!!d&&pzi(d,u)}function z_e(n){let c=0,u=0,d=5;return hu(n,function I(h){if(nFe(h.kind)){let b=h.getLastToken(n);b?.kind===27?c++:u++}else if(eFt(h.kind)){let b=h.getLastToken(n);if(b?.kind===27)c++;else if(b&&b.kind!==28){let R=Vl(n,b.getStart(n)).line,N=Vl(n,Rr(n,b.end).start).line;R!==N&&u++}}return c+u>=d?!0:hu(h,I)}),c===0&&u<=1?!0:c/u>1/d}function sFe(n,c){return cFe(n,n.getDirectories,c)||[]}function wje(n,c,u,d,I){return cFe(n,n.readDirectory,c,u,d,I)||v}function Fue(n,c){return cFe(n,n.fileExists,c)}function oFe(n,c){return aFe(()=>G1(c,n))||!1}function aFe(n){try{return n()}catch{return}}function cFe(n,c,...u){return aFe(()=>c&&c.apply(n,u))}function Tje(n,c,u){let d=[];return sI(n,I=>{if(I===u)return!0;let h=Do(I,"package.json");Fue(c,h)&&d.push(h)}),d}function rFt(n,c){let u;return sI(n,d=>{if(d==="node_modules"||(u=v6e(d,I=>Fue(c,I),"package.json"),u))return!0}),u}function nFt(n,c){if(!c.fileExists)return[];let u=[];return sI(oa(n),d=>{let I=Do(d,"package.json");if(c.fileExists(I)){let h=Nje(I,c);h&&u.push(h)}}),u}function Nje(n,c){if(!c.readFile)return;let u=["dependencies","devDependencies","optionalDependencies","peerDependencies"],d=c.readFile(n)||"",I=Xce(d),h={};if(I)for(let N of u){let V=I[N];if(!V)continue;let P=new Map;for(let Q in V)P.set(Q,V[Q]);h[N]=P}let b=[[1,h.dependencies],[2,h.devDependencies],[8,h.optionalDependencies],[4,h.peerDependencies]];return{...h,parseable:!!I,fileName:n,get:R,has(N,V){return!!R(N,V)}};function R(N,V=15){for(let[P,Q]of b)if(Q&&V&P){let te=Q.get(N);if(te!==void 0)return te}}}function Mte(n,c,u){let d=(u.getPackageJsonsVisibleToFile&&u.getPackageJsonsVisibleToFile(n.fileName)||nFt(n.fileName,u)).filter(ue=>ue.parseable),I,h,b;return{allowsImportingAmbientModule:N,allowsImportingSourceFile:V,allowsImportingSpecifier:P};function R(ue){let Ae=re(ue);for(let de of d)if(de.has(Ae)||de.has(Dke(Ae)))return!0;return!1}function N(ue,Ae){if(!d.length||!ue.valueDeclaration)return!0;if(!h)h=new Map;else{let Me=h.get(ue);if(Me!==void 0)return Me}let de=R2(ue.getName());if(Q(de))return h.set(ue,!0),!0;let Be=ue.valueDeclaration.getSourceFile(),Fe=te(Be.fileName,Ae);if(typeof Fe>"u")return h.set(ue,!0),!0;let Ne=R(Fe)||R(de);return h.set(ue,Ne),Ne}function V(ue,Ae){if(!d.length)return!0;if(!b)b=new Map;else{let Fe=b.get(ue);if(Fe!==void 0)return Fe}let de=te(ue.fileName,Ae);if(!de)return b.set(ue,!0),!0;let Be=R(de);return b.set(ue,Be),Be}function P(ue){return!d.length||Q(ue)||Qp(ue)||bd(ue)?!0:R(ue)}function Q(ue){return!!(jR(n)&&i0(n)&&GN.nodeCoreModules.has(ue)&&(I===void 0&&(I=lFe(n)),I))}function te(ue,Ae){let de=EV(ue);if(de){let Fe=de.findPackageLocator(n.fileName),Ne=de.findPackageLocator(ue);if(!(Fe&&Ne))return}else if(!ue.includes("node_modules"))return;let Be=dP.getNodeModulesPackageName(u.getCompilationSettings(),n,ue,Ae,c);if(Be&&!Qp(Be)&&!bd(Be))return re(Be)}function re(ue){let Ae=dd(sue(ue)).slice(1);return uc(Ae[0],"@")?`${Ae[0]}/${Ae[1]}`:Ae[0]}}function lFe(n){return lr(n.imports,({text:c})=>GN.nodeCoreModules.has(c))}function q_e(n){return Ue(dd(n),"node_modules")}function Rje(n){return n.file!==void 0&&n.start!==void 0&&n.length!==void 0}function iFt(n,c){let u=By(n),d=lf(c,u,vl,Pp);if(d>=0){let I=c[d];return w.assertEqual(I.file,n.getSourceFile(),"Diagnostics proided to 'findDiagnosticForNode' must be from a single SourceFile"),ps(I,Rje)}}function sFt(n,c){var u;let d=lf(c,n.start,b=>b.start,Jl);for(d<0&&(d=~d);((u=c[d-1])==null?void 0:u.start)===n.start;)d--;let I=[],h=Ku(n);for(;;){let b=$s(c[d],Rje);if(!b||b.start>h)break;b2(n,b)&&I.push(b),d++}return I}function n7({startPosition:n,endPosition:c}){return Pd(n,c===void 0?n:c)}function Dje(n,c){let u=Hc(n,c.start);return Si(u,I=>I.getStart(n)Ku(c)?"quit":tn(I)&&Pte(c,By(I,n)))}function xje(n,c,u=vl){return n?Na(n)?u(Ot(n,c)):c(n,0):void 0}function kje(n){return Na(n)?qs(n):n}function oFt(n,c){if(YZr(n)){let u=gFe(n);if(u)return u;let d=Zue(AFe(n),c,!1),I=Zue(AFe(n),c,!0);return d===I?d:[d,I]}return n.name}function uFe(n,c,u){return YZr(n)?gFe(n)||Zue(AFe(n),c,!!u):n.name}function YZr(n){return!(n.flags&33554432)&&(n.escapedName==="export="||n.escapedName==="default")}function gFe(n){return le(n.declarations,c=>{var u,d,I;return rf(c)?(u=$s(LC(c.expression),sr))==null?void 0:u.text:l0(c)&&c.symbol.flags===2097152?(d=$s(c.propertyName,sr))==null?void 0:d.text:(I=$s(Sl(c),sr))==null?void 0:I.text})}function AFe(n){var c;return w.checkDefined(n.parent,`Symbol parent was undefined. Flags: ${w.formatSymbolFlags(n.flags)}. Declarations: ${(c=n.declarations)==null?void 0:c.map(u=>{let d=w.formatSyntaxKind(u.kind),I=io(u),{expression:h}=u;return(I?"[JS]":"")+d+(h?` (expression: ${w.formatSyntaxKind(h.kind)})`:"")}).join(", ")}.`)}function Zue(n,c,u){return $_e(a0(R2(n.name)),c,u)}function $_e(n,c,u){let d=kA(Hm(n,"/index")),I="",h=!0,b=d.charCodeAt(0);qy(b,c)?(I+=String.fromCharCode(b),u&&(I=I.toUpperCase())):h=!1;for(let R=1;Rn.length)return!1;for(let I=0;ImC(u)&&S2(u))}function dFe(n){return!!(E2(n)&65536)}function pFe(n,c){return le(n.imports,d=>{if(GN.nodeCoreModules.has(d.text))return uc(d.text,"node:")})??c.usesUriStyleNodeCoreModules}function e0e(n){return n===` +`?1:0}function vM(n){return Na(n)?IN(tu(n[0]),n.slice(1)):tu(n)}function fFe({options:n},c){let u=!n.semicolons||n.semicolons==="ignore",d=n.semicolons==="remove"||u&&!z_e(c);return{...n,semicolons:d?"remove":"ignore"}}function Fje(n){return n===2||n===3}function Hte(n,c){return n.isSourceFileFromExternalLibrary(c)||n.isSourceFileDefaultLibrary(c)}function IFe(n,c){let u=new Set,d=new Set,I=new Set;for(let R of c)if(!Mle(R)){let N=zA(R.expression);if(wv(N))switch(N.kind){case 15:case 11:u.add(N.text);break;case 9:d.add(parseInt(N.text));break;case 10:let V=txe(fl(N.text,"n")?N.text.slice(0,-1):N.text);V&&I.add(AV(V));break}else{let V=n.getSymbolAtLocation(R.expression);if(V&&V.valueDeclaration&&yV(V.valueDeclaration)){let P=n.getConstantValue(V.valueDeclaration);P!==void 0&&h(P)}}}return{addValue:h,hasValue:b};function h(R){switch(typeof R){case"string":u.add(R);break;case"number":d.add(R)}}function b(R){switch(typeof R){case"string":return u.has(R);case"number":return d.has(R);case"object":return I.has(AV(R))}}}function Zje(n,c,u,d){var I;let h=typeof n=="string"?n:n.fileName;if(!hN(h))return!1;let b=c.getCompilerOptions(),R=D_(b),N=typeof n=="string"?B_e(AA(n,u.getCurrentDirectory(),Lx(u)),(I=c.getPackageJsonInfoCache)==null?void 0:I.call(c),u,b):n.impliedNodeFormat;if(N===99)return!1;if(N===1||b.verbatimModuleSyntax&&R===1)return!0;if(b.verbatimModuleSyntax&&ile(R))return!1;if(typeof n=="object"){if(n.commonJsModuleIndicator)return!0;if(n.externalModuleIndicator)return!1}return d}function Yte(n){switch(n.kind){case 241:case 307:case 268:case 296:return!0;default:return!1}}function CFe(n,c,u,d){var I;let h=nGe(n,(I=u.getPackageJsonInfoCache)==null?void 0:I.call(u),d,u.getCompilerOptions()),b,R;return typeof h=="object"&&(b=h.impliedNodeFormat,R=h.packageJsonScope),{path:AA(n,u.getCurrentDirectory(),u.getCanonicalFileName),fileName:n,externalModuleIndicator:c===99?!0:void 0,commonJsModuleIndicator:c===1?!0:void 0,impliedNodeFormat:b,packageJsonScope:R,statements:v,imports:v}}var lFt=(n=>(n[n.Named=0]="Named",n[n.Default=1]="Default",n[n.Namespace=2]="Namespace",n[n.CommonJS=3]="CommonJS",n))(lFt||{}),uFt=(n=>(n[n.Named=0]="Named",n[n.Default=1]="Default",n[n.ExportEquals=2]="ExportEquals",n[n.UMD=3]="UMD",n))(uFt||{});function Lje(n){let c=1,u=ec(),d=new Map,I=new Map,h,b={isUsableByFile:re=>re===h,isEmpty:()=>!u.size,clear:()=>{u.clear(),d.clear(),h=void 0},add:(re,ue,Ae,de,Be,Fe,Ne,Me)=>{re!==h&&(b.clear(),h=re);let De;if(Be){let St=ble(Be.fileName);if(St){let{topLevelNodeModulesIndex:He,topLevelPackageNameIndex:ht,packageRootIndex:Et}=St;if(De=l_e(sue(Be.fileName.substring(ht+1,Et))),uc(re,Be.path.substring(0,He))){let Kt=I.get(De),Nt=Be.fileName.substring(0,ht+1);if(Kt){let Lt=Kt.indexOf(Kx);He>Lt&&I.set(De,Nt)}else I.set(De,Nt)}}}let Le=Fe===1&&l6(ue)||ue,je=Fe===0||L3(Le)?wc(Ae):oFt(Le,void 0),st=typeof je=="string"?je:je[0],nt=typeof je=="string"?void 0:je[1],qe=R2(de.name),it=c++,It=ph(ue,Me),dt=ue.flags&33554432?void 0:ue,Tt=de.flags&33554432?void 0:de;(!dt||!Tt)&&d.set(it,[ue,de]),u.add(N(st,ue,Ul(qe)?void 0:qe,Me),{id:it,symbolTableKey:Ae,symbolName:st,capitalizedSymbolName:nt,moduleName:qe,moduleFile:Be,moduleFileName:Be?.fileName,packageName:De,exportKind:Fe,targetFlags:It.flags,isFromPackageJson:Ne,symbol:dt,moduleSymbol:Tt})},get:(re,ue)=>{if(re!==h)return;let Ae=u.get(ue);return Ae?.map(R)},search:(re,ue,Ae,de)=>{if(re===h)return UC(u,(Be,Fe)=>{let{symbolName:Ne,ambientModuleName:Me}=V(Fe),De=ue&&Be[0].capitalizedSymbolName||Ne;if(Ae(De,Be[0].targetFlags)){let Le=Be.map(R).filter((je,st)=>te(je,Be[st].packageName));if(Le.length){let je=de(Le,De,!!Me,Fe);if(je!==void 0)return je}}})},releaseSymbols:()=>{d.clear()},onFileChanged:(re,ue,Ae)=>P(re)&&P(ue)?!1:h&&h!==ue.path||Ae&&lFe(re)!==lFe(ue)||!Cn(re.moduleAugmentations,ue.moduleAugmentations)||!Q(re,ue)?(b.clear(),!0):(h=ue.path,!1)};return w.isDebugging&&Object.defineProperty(b,"__cache",{value:u}),b;function R(re){if(re.symbol&&re.moduleSymbol)return re;let{id:ue,exportKind:Ae,targetFlags:de,isFromPackageJson:Be,moduleFileName:Fe}=re,[Ne,Me]=d.get(ue)||v;if(Ne&&Me)return{symbol:Ne,moduleSymbol:Me,moduleFileName:Fe,exportKind:Ae,targetFlags:de,isFromPackageJson:Be};let De=(Be?n.getPackageJsonAutoImportProvider():n.getCurrentProgram()).getTypeChecker(),lt=re.moduleSymbol||Me||w.checkDefined(re.moduleFile?De.getMergedSymbol(re.moduleFile.symbol):De.tryFindAmbientModule(re.moduleName)),Le=re.symbol||Ne||w.checkDefined(Ae===2?De.resolveExternalModuleSymbol(lt):De.tryGetMemberInModuleExportsAndProperties(wc(re.symbolTableKey),lt),`Could not find symbol '${re.symbolName}' by key '${re.symbolTableKey}' in module ${lt.name}`);return d.set(ue,[Le,lt]),{symbol:Le,moduleSymbol:lt,moduleFileName:Fe,exportKind:Ae,targetFlags:de,isFromPackageJson:Be}}function N(re,ue,Ae,de){let Be=Ae||"";return`${re.length} ${Gg(ph(ue,de))} ${re} ${Be}`}function V(re){let ue=re.indexOf(" "),Ae=re.indexOf(" ",ue+1),de=parseInt(re.substring(0,ue),10),Be=re.substring(Ae+1),Fe=Be.substring(0,de),Ne=Be.substring(de+1);return{symbolName:Fe,ambientModuleName:Ne===""?void 0:Ne}}function P(re){return!re.commonJsModuleIndicator&&!re.externalModuleIndicator&&!re.moduleAugmentations&&!re.ambientModuleNames}function Q(re,ue){if(!Cn(re.ambientModuleNames,ue.ambientModuleNames))return!1;let Ae=-1,de=-1;for(let Be of ue.ambientModuleNames){let Fe=Ne=>O$(Ne)&&Ne.name.text===Be;if(Ae=ke(re.statements,Fe,Ae+1),de=ke(ue.statements,Fe,de+1),re.statements[Ae]!==ue.statements[de])return!1}return!0}function te(re,ue){if(!ue||!re.moduleFileName)return!0;let Ae=n.getGlobalTypingsCacheLocation();if(Ae&&uc(re.moduleFileName,Ae))return!0;let de=I.get(ue);return!de||uc(re.moduleFileName,de)}}function Vje(n,c,u,d,I,h,b){var R;if(c===u)return!1;let N=b?.get(c.path,u.path,d,{});if(N?.isBlockedByPackageJsonDependencies!==void 0)return!N.isBlockedByPackageJsonDependencies;let V=Lx(h),P=(R=h.getGlobalTypingsCacheLocation)==null?void 0:R.call(h),Q=!!dP.forEachFileNameOfModule(c.fileName,u.fileName,h,!1,te=>{let re=n.getSourceFile(te);return(re===u||!re)&&fzi(c.fileName,te,V,P)});if(I){let te=Q&&I.allowsImportingSourceFile(u,h);return b?.setBlockedByPackageJsonDependencies(c.path,u.path,d,{},!te),te}return Q}function fzi(n,c,u,d){if(EV(n))return S8i(n,c);let I=sI(c,b=>kA(b)==="node_modules"?b:void 0),h=I&&oa(u(I));return h===void 0||uc(u(n),h)||!!d&&uc(u(d),h)}function Wje(n,c,u,d,I){var h,b;let R=zX(c),N=u.autoImportFileExcludePatterns&&tr(u.autoImportFileExcludePatterns,P=>{let Q=gle(P,"","exclude");return Q?TG(Q,R):void 0});JZr(n.getTypeChecker(),n.getSourceFiles(),N,c,(P,Q)=>I(P,Q,n,!1));let V=d&&((h=c.getPackageJsonAutoImportProvider)==null?void 0:h.call(c));if(V){let P=$l(),Q=n.getTypeChecker();JZr(V.getTypeChecker(),V.getSourceFiles(),N,c,(te,re)=>{(re&&!n.getSourceFile(re.fileName)||!re&&!Q.resolveName(te.name,void 0,1536,!1))&&I(te,re,V,!0)}),(b=c.log)==null||b.call(c,`forEachExternalModuleToImportFrom autoImportProvider: ${$l()-P}`)}}function JZr(n,c,u,d,I){var h,b;let R=(h=d.getSymlinkCache)==null?void 0:h.call(d).getSymlinkedDirectoriesByRealpath(),N=u&&(({fileName:V,path:P})=>{if(u.some(Q=>Q.test(V)))return!0;if(R?.size&&AP(V)){let Q=oa(V);return sI(oa(P),te=>{let re=R.get(dA(te));if(re)return re.some(ue=>u.some(Ae=>Ae.test(V.replace(Q,ue))));Q=oa(Q)})??!1}return!1});for(let V of n.getAmbientModules())!V.name.includes("*")&&!(u&&((b=V.declarations)!=null&&b.every(P=>N(P.getSourceFile()))))&&I(V,void 0);for(let V of c)na(V)&&!N?.(V)&&I(n.getMergedSymbol(V.symbol),V)}function t0e(n,c,u,d,I){var h,b,R,N,V;let P=$l();(h=c.getPackageJsonAutoImportProvider)==null||h.call(c);let Q=((b=c.getCachedExportInfoMap)==null?void 0:b.call(c))||Lje({getCurrentProgram:()=>u,getPackageJsonAutoImportProvider:()=>{var re;return(re=c.getPackageJsonAutoImportProvider)==null?void 0:re.call(c)},getGlobalTypingsCacheLocation:()=>{var re;return(re=c.getGlobalTypingsCacheLocation)==null?void 0:re.call(c)}});if(Q.isUsableByFile(n.path))return(R=c.log)==null||R.call(c,"getExportInfoMap: cache hit"),Q;(N=c.log)==null||N.call(c,"getExportInfoMap: cache miss or empty; calculating new results");let te=0;try{Wje(u,c,d,!0,(re,ue,Ae,de)=>{++te%100===0&&I?.throwIfCancellationRequested();let Be=new Map,Fe=Ae.getTypeChecker(),Ne=mFe(re,Fe);Ne&&UZr(Ne.symbol,Fe)&&Q.add(n.path,Ne.symbol,Ne.exportKind===1?"default":"export=",re,ue,Ne.exportKind,de,Fe),Fe.forEachExportAndPropertyOfModule(re,(Me,De)=>{Me!==Ne?.symbol&&UZr(Me,Fe)&&D2(Be,De)&&Q.add(n.path,Me,De,re,ue,0,de,Fe)})})}catch(re){throw Q.clear(),re}return(V=c.log)==null||V.call(c,`getExportInfoMap: done in ${$l()-P} ms`),Q}function mFe(n,c){let u=c.resolveExternalModuleSymbol(n);if(u!==n)return{symbol:u,exportKind:2};let d=c.tryGetMemberInModuleExports("default",n);if(d)return{symbol:d,exportKind:1}}function UZr(n,c){return!c.isUndefinedSymbol(n)&&!c.isUnknownSymbol(n)&&!bee(n)&&!rDe(n)}function Pje(n,c,u,d,I){let h,b=n,R=new Map;for(;b;){let N=gFe(b);if(N){let V=I(N);if(V)return V}if(b.escapedName!=="default"&&b.escapedName!=="export="){let V=I(b.name);if(V)return V}if(h=Yr(h,b),!D2(R,b))break;b=b.flags&2097152?c.getImmediateAliasedSymbol(b):void 0}for(let N of h??v)if(N.parent&&L3(N.parent)){let V=I(Zue(N.parent,sA(u),d));if(V)return V}}function KZr(){let n=Ft(99,!1);function c(d,I,h){return hzi(u(d,I,h),d)}function u(d,I,h){let b=0,R=0,N=[],{prefix:V,pushTemplate:P}=bzi(I);d=V+d;let Q=V.length;P&&N.push(16),n.setText(d);let te=0,re=[],ue=0;do{b=n.scan(),XX(b)||(Ae(),R=b);let de=n.getTokenEnd();if(mzi(n.getTokenStart(),de,Q,vzi(b),re),de>=d.length){let Be=Czi(n,b,zo(N));Be!==void 0&&(te=Be)}}while(b!==1);function Ae(){switch(b){case 44:case 69:!Izi[R]&&n.reScanSlashToken()===14&&(b=14);break;case 30:R===80&&ue++;break;case 32:ue>0&&ue--;break;case 133:case 154:case 150:case 136:case 155:ue>0&&!h&&(b=80);break;case 16:N.push(b);break;case 19:N.length>0&&N.push(b);break;case 20:if(N.length>0){let de=zo(N);de===16?(b=n.reScanTemplateToken(!1),b===18?N.pop():w.assertEqual(b,17,"Should have been a template middle.")):(w.assertEqual(de,19,"Should have been an open brace"),N.pop())}break;default:if(!s0(b))break;(R===25||s0(R)&&s0(b)&&!yzi(R,b))&&(b=80)}}return{endOfLineState:te,spans:re}}return{getClassificationsForLine:c,getEncodedLexicalClassifications:u}}var Izi=XA([80,11,9,10,14,110,46,47,22,24,20,112,97],n=>n,()=>!0);function Czi(n,c,u){switch(c){case 11:{if(!n.isUnterminated())return;let d=n.getTokenText(),I=d.length-1,h=0;for(;d.charCodeAt(I-h)===92;)h++;return h&1?d.charCodeAt(0)===34?3:2:void 0}case 3:return n.isUnterminated()?1:void 0;default:if(DS(c)){if(!n.isUnterminated())return;switch(c){case 18:return 5;case 15:return 4;default:return w.fail("Only 'NoSubstitutionTemplateLiteral's and 'TemplateTail's can be unterminated; got SyntaxKind #"+c)}}return u===16?6:void 0}}function mzi(n,c,u,d,I){if(d===8)return;n===0&&u>0&&(n+=u);let h=c-n;h>0&&I.push(n-u,h,d)}function hzi(n,c){let u=[],d=n.spans,I=0;for(let b=0;b=0){let P=R-I;P>0&&u.push({length:P,classification:4})}u.push({length:N,classification:_zi(V)}),I=R+N}let h=c.length-I;return h>0&&u.push({length:h,classification:4}),{entries:u,finalLexState:n.endOfLineState}}function _zi(n){switch(n){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 yzi(n,c){if(!z7e(n))return!0;switch(c){case 139:case 153:case 137:case 126:case 129:return!0;default:return!1}}function bzi(n){switch(n){case 3:return{prefix:`"\\ `};case 2:return{prefix:`'\\ `};case 1:return{prefix:`/* `};case 4:return{prefix:"`\n"};case 5:return{prefix:`} -`,pushTemplate:!0};case 6:return{prefix:"",pushTemplate:!0};case 0:return{prefix:""};default:return w.assertNever(n)}}function Izi(n){switch(n){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}}function Czi(n){switch(n){case 40:case 41:case 55:case 54:case 46:case 47:return!0;default:return!1}}function mzi(n){if(i0(n))return 3;if(Izi(n)||Czi(n))return 5;if(n>=19&&n<=79)return 10;switch(n){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;case 80:default:return RS(n)?6:2}}function cFt(n,c,u,d,I){return XZr(Wje(n,c,u,d,I))}function YZr(n,c){switch(c){case 267:case 263:case 264:case 262:case 231:case 218:case 219:n.throwIfCancellationRequested()}}function Wje(n,c,u,d,I){let h=[];return u.forEachChild(function R(N){if(!(!N||!sI(I,N.pos,N.getFullWidth()))){if(YZr(c,N.kind),sr(N)&&!wf(N)&&d.has(N.escapedText)){let V=n.getSymbolAtLocation(N),P=V&&HZr(V,_4(N),n);P&&b(N.getStart(u),N.getEnd(),P)}N.forEachChild(R)}}),{spans:h,endOfLineState:0};function b(R,N,V){let P=N-R;w.assert(P>0,`Classification had non-positive length of ${P}`),h.push(R),h.push(P),h.push(V)}}function HZr(n,c,u){let d=n.getFlags();if(d&2885600)return d&32?11:d&384?12:d&524288?16:d&1536?c&4||c&1&&hzi(n)?14:void 0:d&2097152?HZr(u.getAliasedSymbol(n),c,u):c&2?d&64?13:d&262144?15:void 0:void 0}function hzi(n){return lr(n.declarations,c=>CC(c)&&FG(c)===1)}function _zi(n){switch(n){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 XZr(n){w.assert(n.spans.length%3===0);let c=n.spans,u=[];for(let d=0;d])*)(\/>)?)?/im,je=/(\s)(\S+)(\s*)(=)(\s*)('[^']+'|"[^"]+")/img,st=c.text.substr(De,lt),nt=Le.exec(st);if(!nt||!nt[3]||!(nt[3]in rN))return!1;let qe=De;M(qe,nt[1].length),qe+=nt[1].length,N(qe,nt[2].length,10),qe+=nt[2].length,N(qe,nt[3].length,21),qe+=nt[3].length;let it=nt[4],It=qe;for(;;){let wt=je.exec(it);if(!wt)break;let vt=qe+wt.index+wt[1].length;vt>It&&(M(It,vt-It),It=vt),N(It,wt[2].length,22),It+=wt[2].length,wt[3].length&&(M(It,wt[3].length),It+=wt[3].length),N(It,wt[4].length,5),It+=wt[4].length,wt[5].length&&(M(It,wt[5].length),It+=wt[5].length),N(It,wt[6].length,24),It+=wt[6].length}qe+=nt[4].length,qe>It&&M(It,qe-It),nt[5]&&(N(qe,nt[5].length,10),qe+=nt[5].length);let dt=De+lt;return qe=0),je>0){let st=lt||Ne(De.kind,De);st&&N(Le,je,st)}return!0}function Fe(De){switch(De.parent&&De.parent.kind){case 286:if(De.parent.tagName===De)return 19;break;case 287:if(De.parent.tagName===De)return 20;break;case 285:if(De.parent.tagName===De)return 21;break;case 291:if(De.parent.name===De)return 22;break}}function Ne(De,lt){if(i0(De))return 3;if((De===30||De===32)&<&&TGt(lt.parent))return 10;if(hme(De)){if(lt){let Le=lt.parent;if(De===64&&(Le.kind===260||Le.kind===172||Le.kind===169||Le.kind===291)||Le.kind===226||Le.kind===224||Le.kind===225||Le.kind===227)return 5}return 10}else{if(De===9)return 4;if(De===10)return 25;if(De===11)return lt&<.parent.kind===291?24:6;if(De===14)return 6;if(RS(De))return 6;if(De===12)return 23;if(De===80){if(lt){switch(lt.parent.kind){case 263:return lt.parent.name===lt?11:void 0;case 168:return lt.parent.name===lt?15:void 0;case 264:return lt.parent.name===lt?13:void 0;case 266:return lt.parent.name===lt?12:void 0;case 267:return lt.parent.name===lt?14:void 0;case 169:return lt.parent.name===lt?_G(lt)?3:17:void 0}if(E2(lt.parent))return 3}return 2}}}function Qe(De){if(De&&e0(d,I,De.pos,De.getFullWidth())){YZr(n,De.kind);for(let lt of De.getChildren(c))Be(lt)||Qe(lt)}}}var CFe;(n=>{function c(qe,it,It,dt,wt){let vt=lb(It,dt);if(vt.parent&&(TN(vt.parent)&&vt.parent.tagName===vt||uY(vt.parent))){let{openingElement:Ye,closingElement:ht}=vt.parent.parent,Et=[Ye,ht].map(({tagName:Kt})=>u(Kt,It));return[{fileName:It.fileName,highlightSpans:Et}]}return d(dt,vt,qe,it,wt)||I(vt,It)}n.getDocumentHighlights=c;function u(qe,it){return{fileName:it.fileName,textSpan:Ey(qe,it),kind:"none"}}function d(qe,it,It,dt,wt){let vt=new Set(wt.map(Kt=>Kt.fileName)),Ye=Yp.getReferenceEntriesForNode(qe,it,It,wt,dt,void 0,vt);if(!Ye)return;let ht=No(Ye.map(Yp.toHighlightSpan),Kt=>Kt.fileName,Kt=>Kt.span),Et=tA(It.useCaseSensitiveFileNames());return on(gn(ht.entries(),([Kt,Tt])=>{if(!vt.has(Kt)){if(!It.redirectTargetsMap.has(gA(Kt,It.getCurrentDirectory(),Et)))return;let Lt=It.getSourceFile(Kt);Kt=be(wt,Zt=>!!Zt.redirectInfo&&Zt.redirectInfo.redirectTarget===Lt).fileName,w.assert(vt.has(Kt))}return{fileName:Kt,highlightSpans:Tt}}))}function I(qe,it){let It=h(qe,it);return It&&[{fileName:it.fileName,highlightSpans:It}]}function h(qe,it){switch(qe.kind){case 101:case 93:return H0(qe.parent)?je(qe.parent,it):void 0;case 107:return dt(qe.parent,k_,Qe);case 111:return dt(qe.parent,F2,Ne);case 113:case 85:case 98:let vt=qe.kind===85?qe.parent.parent:qe.parent;return dt(vt,ob,Fe);case 109:return dt(qe.parent,Ed,Be);case 84:case 90:return Gle(qe.parent)||cte(qe.parent)?dt(qe.parent.parent.parent,Ed,Be):void 0;case 83:case 88:return dt(qe.parent,T3,de);case 99:case 117:case 92:return dt(qe.parent,Ye=>MR(Ye,!0),Ae);case 137:return It(Rf,[137]);case 139:case 153:return It(jw,[139,153]);case 135:return dt(qe.parent,Ob,De);case 134:return wt(De(qe));case 127:return wt(lt(qe));case 103:case 147:return;default:return wv(qe.kind)&&(DC(qe.parent)||Rp(qe.parent))?wt(te(qe.kind,qe.parent)):void 0}function It(vt,Ye){return dt(qe.parent,vt,ht=>{var Et;return tr((Et=eo(ht,B2))==null?void 0:Et.symbol.declarations,Kt=>vt(Kt)?be(Kt.getChildren(it),Tt=>Ue(Ye,Tt.kind)):void 0)})}function dt(vt,Ye,ht){return Ye(vt)?wt(ht(vt,it)):void 0}function wt(vt){return vt&&vt.map(Ye=>u(Ye,it))}}function b(qe){return F2(qe)?[qe]:ob(qe)?vi(qe.catchClause?b(qe.catchClause):qe.tryBlock&&b(qe.tryBlock),qe.finallyBlock&&b(qe.finallyBlock)):$l(qe)?void 0:V(qe,b)}function R(qe){let it=qe;for(;it.parent;){let It=it.parent;if(j9(It)||It.kind===307)return It;if(ob(It)&&It.tryBlock===it&&It.catchClause)return it;it=It}}function N(qe){return T3(qe)?[qe]:$l(qe)?void 0:V(qe,N)}function V(qe,it){let It=[];return qe.forEachChild(dt=>{let wt=it(dt);wt!==void 0&&It.push(...ys(wt))}),It}function P(qe,it){let It=M(it);return!!It&&It===qe}function M(qe){return Si(qe,it=>{switch(it.kind){case 255:if(qe.kind===251)return!1;case 248:case 249:case 250:case 247:case 246:return!qe.label||nt(it,qe.label.escapedText);default:return $l(it)&&"quit"}})}function te(qe,it){return tr(re(it,VQ(qe)),It=>Lte(It,qe))}function re(qe,it){let It=qe.parent;switch(It.kind){case 268:case 307:case 241:case 296:case 297:return it&64&&bc(qe)?[...qe.members,qe]:It.statements;case 176:case 174:case 262:return[...It.parameters,...Sa(It.parent)?It.parent.members:[]];case 263:case 231:case 264:case 187:let dt=It.members;if(it&15){let wt=be(It.members,Rf);if(wt)return[...dt,...wt.parameters]}else if(it&64)return[...dt,It];return dt;case 210:return;default:w.assertNever(It,"Invalid container kind.")}}function ue(qe,it,...It){return it&&Ue(It,it.kind)?(qe.push(it),!0):!1}function Ae(qe){let it=[];if(ue(it,qe.getFirstToken(),99,117,92)&&qe.kind===246){let It=qe.getChildren();for(let dt=It.length-1;dt>=0&&!ue(it,It[dt],117);dt--);}return X(N(qe.statement),It=>{P(qe,It)&&ue(it,It.getFirstToken(),83,88)}),it}function de(qe){let it=M(qe);if(it)switch(it.kind){case 248:case 249:case 250:case 246:case 247:return Ae(it);case 255:return Be(it)}}function Be(qe){let it=[];return ue(it,qe.getFirstToken(),109),X(qe.caseBlock.clauses,It=>{ue(it,It.getFirstToken(),84,90),X(N(It),dt=>{P(qe,dt)&&ue(it,dt.getFirstToken(),83)})}),it}function Fe(qe,it){let It=[];if(ue(It,qe.getFirstToken(),113),qe.catchClause&&ue(It,qe.catchClause.getFirstToken(),85),qe.finallyBlock){let dt=Od(qe,98,it);ue(It,dt,98)}return It}function Ne(qe,it){let It=R(qe);if(!It)return;let dt=[];return X(b(It),wt=>{dt.push(Od(wt,111,it))}),j9(It)&&wx(It,wt=>{dt.push(Od(wt,107,it))}),dt}function Qe(qe,it){let It=Wb(qe);if(!It)return;let dt=[];return wx(ps(It.body,mc),wt=>{dt.push(Od(wt,107,it))}),X(b(It.body),wt=>{dt.push(Od(wt,111,it))}),dt}function De(qe){let it=Wb(qe);if(!it)return;let It=[];return it.modifiers&&it.modifiers.forEach(dt=>{ue(It,dt,134)}),mu(it,dt=>{Le(dt,wt=>{Ob(wt)&&ue(It,wt.getFirstToken(),135)})}),It}function lt(qe){let it=Wb(qe);if(!it)return;let It=[];return mu(it,dt=>{Le(dt,wt=>{Vx(wt)&&ue(It,wt.getFirstToken(),127)})}),It}function Le(qe,it){it(qe),!$l(qe)&&!Sa(qe)&&!HI(qe)&&!CC(qe)&&!Wf(qe)&&!Ya(qe)&&mu(qe,It=>Le(It,it))}function je(qe,it){let It=st(qe,it),dt=[];for(let wt=0;wt=vt.end;Et--)if(!$_(it.text.charCodeAt(Et))){ht=!1;break}if(ht){dt.push({fileName:it.fileName,textSpan:Wd(vt.getStart(),Ye.end),kind:"reference"}),wt++;continue}}dt.push(u(It[wt],it))}return dt}function st(qe,it){let It=[];for(;H0(qe.parent)&&qe.parent.elseStatement===qe;)qe=qe.parent;for(;;){let dt=qe.getChildren(it);ue(It,dt[0],101);for(let wt=dt.length-1;wt>=0&&!ue(It,dt[wt],93);wt--);if(!qe.elseStatement||!H0(qe.elseStatement))break;qe=qe.elseStatement}return It}function nt(qe,it){return!!Si(qe.parent,It=>nC(It)?It.label.escapedText===it:"quit")}})(CFe||(CFe={}));function e0e(n){return!!n.sourceFile}function uFt(n,c,u){return Oje(n,c,u)}function Oje(n,c="",u,d){let I=new Map,h=tA(!!n);function b(){let de=on(I.keys()).filter(Be=>Be&&Be.charAt(0)==="_").map(Be=>{let Fe=I.get(Be),Ne=[];return Fe.forEach((Qe,De)=>{e0e(Qe)?Ne.push({name:De,scriptKind:Qe.sourceFile.scriptKind,refCount:Qe.languageServiceRefCount}):Qe.forEach((lt,Le)=>Ne.push({name:De,scriptKind:Le,refCount:lt.languageServiceRefCount}))}),Ne.sort((Qe,De)=>De.refCount-Qe.refCount),{bucket:Be,sourceFiles:Ne}});return JSON.stringify(de,void 0,2)}function R(de){return typeof de.getCompilationSettings=="function"?de.getCompilationSettings():de}function N(de,Be,Fe,Ne,Qe,De){let lt=gA(de,c,h),Le=Mje(R(Be));return V(de,lt,Be,Le,Fe,Ne,Qe,De)}function V(de,Be,Fe,Ne,Qe,De,lt,Le){return re(de,Be,Fe,Ne,Qe,De,!0,lt,Le)}function P(de,Be,Fe,Ne,Qe,De){let lt=gA(de,c,h),Le=Mje(R(Be));return M(de,lt,Be,Le,Fe,Ne,Qe,De)}function M(de,Be,Fe,Ne,Qe,De,lt,Le){return re(de,Be,R(Fe),Ne,Qe,De,!1,lt,Le)}function te(de,Be){let Fe=e0e(de)?de:de.get(w.checkDefined(Be,"If there are more than one scriptKind's for same document the scriptKind should be provided"));return w.assert(Be===void 0||!Fe||Fe.sourceFile.scriptKind===Be,`Script kind should match provided ScriptKind:${Be} and sourceFile.scriptKind: ${Fe?.sourceFile.scriptKind}, !entry: ${!Fe}`),Fe}function re(de,Be,Fe,Ne,Qe,De,lt,Le,je){var st,nt,qe,it;Le=ile(de,Le);let It=R(Fe),dt=Fe===It?void 0:Fe,wt=Le===6?100:iA(It),vt=typeof je=="object"?je:{languageVersion:wt,impliedNodeFormat:dt&&b_e(Be,(it=(qe=(nt=(st=dt.getCompilerHost)==null?void 0:st.call(dt))==null?void 0:nt.getModuleResolutionCache)==null?void 0:qe.call(nt))==null?void 0:it.getPackageJsonInfoCache(),dt,It),setExternalModuleIndicator:A6(It),jsDocParsingMode:u};vt.languageVersion=wt,w.assertEqual(u,vt.jsDocParsingMode);let Ye=I.size,ht=gFt(Ne,vt.impliedNodeFormat),Et=we(I,ht,()=>new Map);if(Mi){I.size>Ye&&Mi.instant(Mi.Phase.Session,"createdDocumentRegistryBucket",{configFilePath:It.configFilePath,key:ht});let kt=!kh(Be)&&JC(I,(Zt,Dr)=>Dr!==ht&&Zt.has(Be)&&Dr);kt&&Mi.instant(Mi.Phase.Session,"documentRegistryBucketOverlap",{path:Be,key1:kt,key2:ht})}let Kt=Et.get(Be),Tt=Kt&&te(Kt,Le);if(!Tt&&d){let kt=d.getDocument(ht,Be);kt&&kt.scriptKind===Le&&kt.text===K6(Qe)&&(w.assert(lt),Tt={sourceFile:kt,languageServiceRefCount:0},Lt())}if(Tt)Tt.sourceFile.version!==De&&(Tt.sourceFile=yze(Tt.sourceFile,Qe,De,Qe.getChangeRange(Tt.sourceFile.scriptSnapshot)),d&&d.setDocument(ht,Be,Tt.sourceFile)),lt&&Tt.languageServiceRefCount++;else{let kt=kFe(de,Qe,vt,De,!1,Le);d&&d.setDocument(ht,Be,kt),Tt={sourceFile:kt,languageServiceRefCount:1},Lt()}return w.assert(Tt.languageServiceRefCount!==0),Tt.sourceFile;function Lt(){if(!Kt)Et.set(Be,Tt);else if(e0e(Kt)){let kt=new Map;kt.set(Kt.sourceFile.scriptKind,Kt),kt.set(Le,Tt),Et.set(Be,kt)}else Kt.set(Le,Tt)}}function ue(de,Be,Fe,Ne){let Qe=gA(de,c,h),De=Mje(Be);return Ae(Qe,De,Fe,Ne)}function Ae(de,Be,Fe,Ne){let Qe=w.checkDefined(I.get(gFt(Be,Ne))),De=Qe.get(de),lt=te(De,Fe);lt.languageServiceRefCount--,w.assert(lt.languageServiceRefCount>=0),lt.languageServiceRefCount===0&&(e0e(De)?Qe.delete(de):(De.delete(Fe),De.size===1&&Qe.set(de,ae(De.values(),Bl))))}return{acquireDocument:N,acquireDocumentWithKey:V,updateDocument:P,updateDocumentWithKey:M,releaseDocument:ue,releaseDocumentWithKey:Ae,getKeyForCompilationSettings:Mje,getDocumentRegistryBucketKeyWithMode:gFt,reportStats:b,getBuckets:()=>I}}function Mje(n){return R8e(n,A8e)}function gFt(n,c){return c?`${n}|${c}`:n}function AFt(n,c,u,d,I,h,b){let R=UX(d),N=tA(R),V=Qje(c,u,N,b),P=Qje(u,c,N,b);return po.ChangeTracker.with({host:d,formatContext:I,preferences:h},M=>{bzi(n,M,V,c,u,d.getCurrentDirectory(),R),Ezi(n,M,V,P,d,N)})}function Qje(n,c,u,d){let I=u(n);return b=>{let R=d&&d.tryGetSourcePosition({fileName:b,pos:0}),N=h(R?R.fileName:b);return R?N===void 0?void 0:yzi(R.fileName,N,b,u):N};function h(b){if(u(b)===I)return c;let R=nhe(b,I,u);return R===void 0?void 0:c+"/"+R}}function yzi(n,c,u,d){let I=w1(n,c,d);return dFt(aa(u),I)}function bzi(n,c,u,d,I,h,b){let{configFile:R}=n.getCompilerOptions();if(!R)return;let N=aa(R.fileName),V=x8(R);if(!V)return;pFt(V,(re,ue)=>{switch(ue){case"files":case"include":case"exclude":{if(P(re)||ue!=="include"||!If(re.initializer))return;let de=tr(re.initializer.elements,Fe=>bu(Fe)?Fe.text:void 0);if(de.length===0)return;let Be=nle(N,[],de,b,h);EG(w.checkDefined(Be.includeFilePattern),b).test(d)&&!EG(w.checkDefined(Be.includeFilePattern),b).test(I)&&c.insertNodeAfter(R,Na(re.initializer.elements),_e.createStringLiteral(te(I)));return}case"compilerOptions":pFt(re.initializer,(Ae,de)=>{let Be=I8e(de);w.assert(Be?.type!=="listOrElement"),Be&&(Be.isFilePath||Be.type==="list"&&Be.element.isFilePath)?P(Ae):de==="paths"&&pFt(Ae.initializer,Fe=>{if(If(Fe.initializer))for(let Ne of Fe.initializer.elements)M(Ne)})});return}});function P(re){let ue=If(re.initializer)?re.initializer.elements:[re.initializer],Ae=!1;for(let de of ue)Ae=M(de)||Ae;return Ae}function M(re){if(!bu(re))return!1;let ue=dFt(N,re.text),Ae=u(ue);return Ae!==void 0?(c.replaceRangeWithText(R,UZr(re,R),te(Ae)),!0):!1}function te(re){return fp(N,re,!b)}}function Ezi(n,c,u,d,I,h){let b=n.getSourceFiles();for(let R of b){let N=u(R.fileName),V=N??R.fileName,P=aa(V),M=d(R.fileName),te=M||R.fileName,re=aa(te),ue=N!==void 0||M!==void 0;Szi(R,c,Ae=>{if(!Op(Ae))return;let de=dFt(re,Ae),Be=u(de);return Be===void 0?void 0:Ky(fp(P,Be,h))},Ae=>{let de=n.getTypeChecker().getSymbolAtLocation(Ae);if(de?.declarations&&de.declarations.some(Fe=>Yf(Fe)))return;let Be=M!==void 0?JZr(Ae,M6(Ae.text,te,n.getCompilerOptions(),I),u,b):vzi(de,Ae,R,n,I,u);return Be!==void 0&&(Be.updated||ue&&Op(Ae.text))?uP.updateModuleSpecifier(n.getCompilerOptions(),R,V,Be.newFileName,j6(n,I),Ae.text):void 0})}}function Bzi(n,c){return Mc(xo(n,c))}function dFt(n,c){return Ky(Bzi(n,c))}function vzi(n,c,u,d,I,h){if(n){let b=be(n.declarations,Gc).fileName,R=h(b);return R===void 0?{newFileName:b,updated:!1}:{newFileName:R,updated:!0}}else{let b=d.getModeForUsageLocation(u,c),R=I.resolveModuleNameLiterals||!I.resolveModuleNames?d.getResolvedModuleFromModuleSpecifier(c,u):I.getResolvedModuleWithFailedLookupLocationsFromCache&&I.getResolvedModuleWithFailedLookupLocationsFromCache(c.text,u.fileName,b);return JZr(c,R,h,d.getSourceFiles())}}function JZr(n,c,u,d){if(!c)return;if(c.resolvedModule){let N=R(c.resolvedModule.resolvedFileName);if(N)return N}let I=X(c.failedLookupLocations,h)||Op(n.text)&&X(c.failedLookupLocations,b);if(I)return I;return c.resolvedModule&&{newFileName:c.resolvedModule.resolvedFileName,updated:!1};function h(N){let V=u(N);return V&&be(d,P=>P.fileName===V)?b(N):void 0}function b(N){return pl(N,"/package.json")?void 0:R(N)}function R(N){let V=u(N);return V&&{newFileName:V,updated:!0}}}function Szi(n,c,u,d){for(let I of n.referencedFiles||v){let h=u(I.fileName);h!==void 0&&h!==n.text.slice(I.pos,I.end)&&c.replaceRangeWithText(n,I,h)}for(let I of n.imports){let h=d(I);h!==void 0&&h!==I.text&&c.replaceRangeWithText(n,UZr(I,n),h)}}function UZr(n,c){return F1(n.getStart(c)+1,n.end-1)}function pFt(n,c){if(tu(n))for(let u of n.properties)KC(u)&&bu(u.name)&&c(u,u.name.text)}var Yje=(n=>(n[n.exact=0]="exact",n[n.prefix=1]="prefix",n[n.substring=2]="substring",n[n.camelCase=3]="camelCase",n))(Yje||{});function Tue(n,c){return{kind:n,isCaseSensitive:c}}function fFt(n){let c=new Map,u=n.trim().split(".").map(d=>Rzi(d.trim()));if(u.length===1&&u[0].totalTextChunk.text==="")return{getMatchForLastSegmentOfPattern:()=>Tue(2,!0),getFullMatch:()=>Tue(2,!0),patternContainsDots:!1};if(!u.some(d=>!d.subWordTextChunks.length))return{getFullMatch:(d,I)=>wzi(d,I,u,c),getMatchForLastSegmentOfPattern:d=>IFt(d,Na(u),c),patternContainsDots:u.length>1}}function wzi(n,c,u,d){if(!IFt(c,Na(u),d)||u.length-1>n.length)return;let h;for(let b=u.length-2,R=n.length-1;b>=0;b-=1,R-=1)h=zZr(h,IFt(n[R],u[b],d));return h}function KZr(n,c){let u=c.get(n);return u||c.set(n,u=bFt(n)),u}function jZr(n,c,u){let d=Dzi(n,c.textLowerCase);if(d===0)return Tue(c.text.length===n.length?0:1,uc(n,c.text));if(c.isLowerCase){if(d===-1)return;let I=KZr(n,u);for(let h of I)if(CFt(n,h,c.text,!0))return Tue(2,CFt(n,h,c.text,!1));if(c.text.length0)return Tue(2,!0);if(c.characterSpans.length>0){let I=KZr(n,u),h=qZr(n,I,c,!1)?!0:qZr(n,I,c,!0)?!1:void 0;if(h!==void 0)return Tue(3,h)}}}function IFt(n,c,u){if(Hje(c.totalTextChunk.text,h=>h!==32&&h!==42)){let h=jZr(n,c.totalTextChunk,u);if(h)return h}let d=c.subWordTextChunks,I;for(let h of d)I=zZr(I,jZr(n,h,u));return I}function zZr(n,c){return uC([n,c],Tzi)}function Tzi(n,c){return n===void 0?1:c===void 0?-1:Xl(n.kind,c.kind)||RA(!n.isCaseSensitive,!c.isCaseSensitive)}function CFt(n,c,u,d,I={start:0,length:u.length}){return I.length<=c.length&&rLr(0,I.length,h=>Nzi(u.charCodeAt(I.start+h),n.charCodeAt(c.start+h),d))}function Nzi(n,c,u){return u?mFt(n)===mFt(c):n===c}function qZr(n,c,u,d){let I=u.characterSpans,h=0,b=0,R,N;for(;;){if(b===I.length)return!0;if(h===c.length)return!1;let V=c[h],P=!1;for(;b=65&&n<=90)return!0;if(n<127||!vg(n,99))return!1;let c=String.fromCharCode(n);return c===c.toUpperCase()}function $Zr(n){if(n>=97&&n<=122)return!0;if(n<127||!vg(n,99))return!1;let c=String.fromCharCode(n);return c===c.toLowerCase()}function Dzi(n,c){let u=n.length-c.length;for(let d=0;d<=u;d++)if(Hje(c,(I,h)=>mFt(n.charCodeAt(h+d))===I))return d;return-1}function mFt(n){return n>=65&&n<=90?97+(n-65):n<127?n:String.fromCharCode(n).toLowerCase().charCodeAt(0)}function hFt(n){return n>=48&&n<=57}function xzi(n){return Yte(n)||$Zr(n)||hFt(n)||n===95||n===36}function kzi(n){let c=[],u=0,d=0;for(let I=0;I0&&(c.push(_Ft(n.substr(u,d))),d=0)}return d>0&&c.push(_Ft(n.substr(u,d))),c}function _Ft(n){let c=n.toLowerCase();return{text:n,textLowerCase:c,isLowerCase:n===c,characterSpans:yFt(n)}}function yFt(n){return eLr(n,!1)}function bFt(n){return eLr(n,!0)}function eLr(n,c){let u=[],d=0;for(let I=1;IEFt(d)&&d!==95,c,u)}function Gzi(n,c,u){return c!==u&&c+1c(n.charCodeAt(I),I))}function nLr(n,c=!0,u=!1){let d={languageVersion:1,pragmas:void 0,checkJsDirective:void 0,referencedFiles:[],typeReferenceDirectives:[],libReferenceDirectives:[],amdDependencies:[],hasNoDefaultLib:void 0,moduleName:void 0},I=[],h,b,R,N=0,V=!1;function P(){return b=R,R=X0.scan(),R===19?N++:R===20&&N--,R}function M(){let De=X0.getTokenValue(),lt=X0.getTokenStart();return{fileName:De,pos:lt,end:lt+De.length}}function te(){h||(h=[]),h.push({ref:M(),depth:N})}function re(){I.push(M()),ue()}function ue(){N===0&&(V=!0)}function Ae(){let De=X0.getToken();return De===138?(De=P(),De===144&&(De=P(),De===11&&te()),!0):!1}function de(){if(b===25)return!1;let De=X0.getToken();if(De===102){if(De=P(),De===21){if(De=P(),De===11||De===15)return re(),!0}else{if(De===11)return re(),!0;if(De===156&&X0.lookAhead(()=>{let Le=X0.scan();return Le!==161&&(Le===42||Le===19||Le===80||i0(Le))})&&(De=P()),De===80||i0(De))if(De=P(),De===161){if(De=P(),De===11)return re(),!0}else if(De===64){if(Fe(!0))return!0}else if(De===28)De=P();else return!0;if(De===19){for(De=P();De!==20&&De!==1;)De=P();De===20&&(De=P(),De===161&&(De=P(),De===11&&re()))}else De===42&&(De=P(),De===130&&(De=P(),(De===80||i0(De))&&(De=P(),De===161&&(De=P(),De===11&&re()))))}return!0}return!1}function Be(){let De=X0.getToken();if(De===95){if(ue(),De=P(),De===156&&X0.lookAhead(()=>{let Le=X0.scan();return Le===42||Le===19})&&(De=P()),De===19){for(De=P();De!==20&&De!==1;)De=P();De===20&&(De=P(),De===161&&(De=P(),De===11&&re()))}else if(De===42)De=P(),De===161&&(De=P(),De===11&&re());else if(De===102&&(De=P(),De===156&&X0.lookAhead(()=>{let Le=X0.scan();return Le===80||i0(Le)})&&(De=P()),(De===80||i0(De))&&(De=P(),De===64&&Fe(!0))))return!0;return!0}return!1}function Fe(De,lt=!1){let Le=De?P():X0.getToken();return Le===149?(Le=P(),Le===21&&(Le=P(),(Le===11||lt&&Le===15)&&re()),!0):!1}function Ne(){let De=X0.getToken();if(De===80&&X0.getTokenValue()==="define"){if(De=P(),De!==21)return!0;if(De=P(),De===11||De===15)if(De=P(),De===28)De=P();else return!0;if(De!==23)return!0;for(De=P();De!==24&&De!==1;)(De===11||De===15)&&re(),De=P();return!0}return!1}function Qe(){for(X0.setText(n),P();X0.getToken()!==1;){if(X0.getToken()===16){let De=[X0.getToken()];e:for(;O(De);){let lt=X0.scan();switch(lt){case 1:break e;case 102:de();break;case 16:De.push(lt);break;case 19:O(De)&&De.push(lt);break;case 20:O(De)&&(qo(De)===16?X0.reScanTemplateToken(!1)===18&&De.pop():De.pop());break}}P()}Ae()||de()||Be()||u&&(Fe(!1,!0)||Ne())||P()}X0.setText(void 0)}if(c&&Qe(),a8e(d,n),c8e(d,oc),V){if(h)for(let De of h)I.push(De.ref);return{referencedFiles:d.referencedFiles,typeReferenceDirectives:d.typeReferenceDirectives,libReferenceDirectives:d.libReferenceDirectives,importedFiles:I,isLibFile:!!d.hasNoDefaultLib,ambientExternalModules:void 0}}else{let De;if(h)for(let lt of h)lt.depth===0?(De||(De=[]),De.push(lt.ref.fileName)):I.push(lt.ref);return{referencedFiles:d.referencedFiles,typeReferenceDirectives:d.typeReferenceDirectives,libReferenceDirectives:d.libReferenceDirectives,importedFiles:I,isLibFile:!!d.hasNoDefaultLib,ambientExternalModules:De}}}var Zzi=/^data:(?:application\/json(?:;charset=[uU][tT][fF]-8);base64,([A-Za-z0-9+/=]+)$)?/;function BFt(n){let c=tA(n.useCaseSensitiveFileNames()),u=n.getCurrentDirectory(),d=new Map,I=new Map;return{tryGetSourcePosition:R,tryGetGeneratedPosition:N,toLineColumnOffset:te,clearCache:re,documentPositionMappers:I};function h(ue){return gA(ue,u,c)}function b(ue,Ae){let de=h(ue),Be=I.get(de);if(Be)return Be;let Fe;if(n.getDocumentPositionMapper)Fe=n.getDocumentPositionMapper(ue,Ae);else if(n.readFile){let Ne=M(ue);Fe=Ne&&Xje({getSourceFileLike:M,getCanonicalFileName:c,log:Qe=>n.log(Qe)},ue,q8e(Ne.text,Rc(Ne)),Qe=>!n.fileExists||n.fileExists(Qe)?n.readFile(Qe):void 0)}return I.set(de,Fe||e6e),Fe||e6e}function R(ue){if(!kh(ue.fileName)||!V(ue.fileName))return;let de=b(ue.fileName).getSourcePosition(ue);return!de||de===ue?void 0:R(de)||de}function N(ue){if(kh(ue.fileName))return;let Ae=V(ue.fileName);if(!Ae)return;let de=n.getProgram();if(de.isSourceOfProjectReferenceRedirect(Ae.fileName))return;let Fe=de.getCompilerOptions().outFile,Ne=Fe?o0(Fe)+".d.ts":vce(ue.fileName,de.getCompilerOptions(),de);if(Ne===void 0)return;let Qe=b(Ne,ue.fileName).getGeneratedPosition(ue);return Qe===ue?void 0:Qe}function V(ue){let Ae=n.getProgram();if(!Ae)return;let de=h(ue),Be=Ae.getSourceFileByPath(de);return Be&&Be.resolvedPath===de?Be:void 0}function P(ue){let Ae=h(ue),de=d.get(Ae);if(de!==void 0)return de||void 0;if(!n.readFile||n.fileExists&&!n.fileExists(ue)){d.set(Ae,!1);return}let Be=n.readFile(ue),Fe=Be?Lzi(Be):!1;return d.set(Ae,Fe),Fe||void 0}function M(ue){return n.getSourceFileLike?n.getSourceFileLike(ue):V(ue)||P(ue)}function te(ue,Ae){return M(ue).getLineAndCharacterOfPosition(Ae)}function re(){d.clear(),I.clear()}}function Xje(n,c,u,d){let I=PDt(u);if(I){let R=Zzi.exec(I);if(R){if(R[1]){let N=R[1];return iLr(n,yDe(_d,N),c)}I=void 0}}let h=[];I&&h.push(I),h.push(c+".map");let b=I&&Oc(I,aa(c));for(let R of h){let N=Oc(R,aa(c)),V=d(N,b);if(Xa(V))return iLr(n,V,N);if(V!==void 0)return V||void 0}}function iLr(n,c,u){let d=MDt(c);if(!(!d||!d.sources||!d.file||!d.mappings)&&!(d.sourcesContent&&d.sourcesContent.some(Xa)))return YDt(n,d,u)}function Lzi(n,c){return{text:n,lineMap:c,getLineAndCharacterOfPosition(u){return Mp(Rc(this),u)}}}var vFt=new Map;function Jje(n,c,u){var d;c.getSemanticDiagnostics(n,u);let I=[],h=c.getTypeChecker();!(n.impliedNodeFormat===1||pp(n.fileName,[".cts",".cjs"]))&&n.commonJsModuleIndicator&&(kGt(c)||nje(c.getCompilerOptions()))&&Vzi(n)&&I.push(Us(Mzi(n.commonJsModuleIndicator),Z.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module));let R=n0(n);if(vFt.clear(),N(n),JQ(c.getCompilerOptions()))for(let V of n.imports){let P=VX(V),M=Wzi(P);if(!M)continue;let te=(d=c.getResolvedModuleFromModuleSpecifier(V,n))==null?void 0:d.resolvedModule,re=te&&c.getSourceFile(te.resolvedFileName);re&&re.externalModuleIndicator&&re.externalModuleIndicator!==!0&&tf(re.externalModuleIndicator)&&re.externalModuleIndicator.isExportEquals&&I.push(Us(M,Z.Import_may_be_converted_to_a_default_import))}return ai(I,n.bindSuggestionDiagnostics),ai(I,c.getSuggestionDiagnostics(n,u)),I.sort((V,P)=>V.start-P.start);function N(V){if(R)Yzi(V,h)&&I.push(Us(zs(V.parent)?V.parent.name:V,Z.This_constructor_function_may_be_converted_to_a_class_declaration));else{if(Rp(V)&&V.parent===n&&V.declarationList.flags&2&&V.declarationList.declarations.length===1){let M=V.declarationList.declarations[0].initializer;M&&Q0(M,!0)&&I.push(Us(M,Z.require_call_may_be_converted_to_an_import))}let P=d0.getJSDocTypedefNodes(V);for(let M of P)I.push(Us(M,Z.JSDoc_typedef_may_be_converted_to_TypeScript_type));d0.parameterShouldGetTypeFromJSDoc(V)&&I.push(Us(V.name||V,Z.JSDoc_types_may_be_moved_to_TypeScript_types))}jje(V)&&Pzi(V,h,I),V.forEachChild(N)}}function Vzi(n){return n.statements.some(c=>{switch(c.kind){case 243:return c.declarationList.declarations.some(u=>!!u.initializer&&Q0(sLr(u.initializer),!0));case 244:{let{expression:u}=c;if(!no(u))return Q0(u,!0);let d=CI(u);return d===1||d===2}default:return!1}})}function sLr(n){return Io(n)?sLr(n.expression):n}function Wzi(n){switch(n.kind){case 272:let{importClause:c,moduleSpecifier:u}=n;return c&&!c.name&&c.namedBindings&&c.namedBindings.kind===274&&bu(u)?c.namedBindings.name:void 0;case 271:return n.name;default:return}}function Pzi(n,c,u){Ozi(n,c)&&!vFt.has(lLr(n))&&u.push(Us(!n.name&&zs(n.parent)&&sr(n.parent.name)?n.parent.name:n,Z.This_may_be_converted_to_an_async_function))}function Ozi(n,c){return!K8(n)&&n.body&&mc(n.body)&&Qzi(n.body,c)&&Uje(n,c)}function Uje(n,c){let u=c.getSignatureFromDeclaration(n),d=u?c.getReturnTypeOfSignature(u):void 0;return!!d&&!!c.getPromisedTypeOfPromise(d)}function Mzi(n){return no(n)?n.left:n}function Qzi(n,c){return!!wx(n,u=>mFe(u,c))}function mFe(n,c){return k_(n)&&!!n.expression&&Kje(n.expression,c)}function Kje(n,c){if(!oLr(n)||!aLr(n)||!n.arguments.every(d=>cLr(d,c)))return!1;let u=n.expression.expression;for(;oLr(u)||Io(u);)if(cu(u)){if(!aLr(u)||!u.arguments.every(d=>cLr(d,c)))return!1;u=u.expression.expression}else u=u.expression;return!0}function oLr(n){return cu(n)&&(x_e(n,"then")||x_e(n,"catch")||x_e(n,"finally"))}function aLr(n){let c=n.expression.name.text,u=c==="then"?2:c==="catch"||c==="finally"?1:0;return n.arguments.length>u?!1:n.arguments.lengthd.kind===106||sr(d)&&d.text==="undefined")}function cLr(n,c){switch(n.kind){case 262:case 218:if(YI(n)&1)return!1;case 219:vFt.set(lLr(n),!0);case 106:return!0;case 80:case 211:{let d=c.getSymbolAtLocation(n);return d?c.isUndefinedSymbol(d)||lr(dh(d,c).declarations,I=>$l(I)||qw(I)&&!!I.initializer&&$l(I.initializer)):!1}default:return!1}}function lLr(n){return`${n.pos.toString()}:${n.end.toString()}`}function Yzi(n,c){var u,d,I,h;if(WA(n)){if(zs(n.parent)&&((u=n.symbol.members)!=null&&u.size))return!0;let b=c.getSymbolOfExpando(n,!1);return!!(b&&((d=b.exports)!=null&&d.size||(I=b.members)!=null&&I.size))}return mp(n)?!!((h=n.symbol.members)!=null&&h.size):!1}function jje(n){switch(n.kind){case 262:case 174:case 218:case 219:return!0;default:return!1}}var Hzi=new Set(["isolatedModules"]);function SFt(n,c){return gLr(n,c,!1)}function uLr(n,c){return gLr(n,c,!0)}var Xzi=`/// +`,pushTemplate:!0};case 6:return{prefix:"",pushTemplate:!0};case 0:return{prefix:""};default:return w.assertNever(n)}}function Ezi(n){switch(n){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}}function Bzi(n){switch(n){case 40:case 41:case 55:case 54:case 46:case 47:return!0;default:return!1}}function vzi(n){if(s0(n))return 3;if(Ezi(n)||Bzi(n))return 5;if(n>=19&&n<=79)return 10;switch(n){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;case 80:default:return DS(n)?6:2}}function gFt(n,c,u,d,I){return qZr(Oje(n,c,u,d,I))}function jZr(n,c){switch(c){case 267:case 263:case 264:case 262:case 231:case 218:case 219:n.throwIfCancellationRequested()}}function Oje(n,c,u,d,I){let h=[];return u.forEachChild(function R(N){if(!(!N||!oI(I,N.pos,N.getFullWidth()))){if(jZr(c,N.kind),sr(N)&&!Tf(N)&&d.has(N.escapedText)){let V=n.getSymbolAtLocation(N),P=V&&zZr(V,E4(N),n);P&&b(N.getStart(u),N.getEnd(),P)}N.forEachChild(R)}}),{spans:h,endOfLineState:0};function b(R,N,V){let P=N-R;w.assert(P>0,`Classification had non-positive length of ${P}`),h.push(R),h.push(P),h.push(V)}}function zZr(n,c,u){let d=n.getFlags();if(d&2885600)return d&32?11:d&384?12:d&524288?16:d&1536?c&4||c&1&&Szi(n)?14:void 0:d&2097152?zZr(u.getAliasedSymbol(n),c,u):c&2?d&64?13:d&262144?15:void 0:void 0}function Szi(n){return lr(n.declarations,c=>mC(c)&&PG(c)===1)}function wzi(n){switch(n){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 qZr(n){w.assert(n.spans.length%3===0);let c=n.spans,u=[];for(let d=0;d])*)(\/>)?)?/im,je=/(\s)(\S+)(\s*)(=)(\s*)('[^']+'|"[^"]+")/img,st=c.text.substr(De,lt),nt=Le.exec(st);if(!nt||!nt[3]||!(nt[3]in nN))return!1;let qe=De;Q(qe,nt[1].length),qe+=nt[1].length,N(qe,nt[2].length,10),qe+=nt[2].length,N(qe,nt[3].length,21),qe+=nt[3].length;let it=nt[4],It=qe;for(;;){let Tt=je.exec(it);if(!Tt)break;let St=qe+Tt.index+Tt[1].length;St>It&&(Q(It,St-It),It=St),N(It,Tt[2].length,22),It+=Tt[2].length,Tt[3].length&&(Q(It,Tt[3].length),It+=Tt[3].length),N(It,Tt[4].length,5),It+=Tt[4].length,Tt[5].length&&(Q(It,Tt[5].length),It+=Tt[5].length),N(It,Tt[6].length,24),It+=Tt[6].length}qe+=nt[4].length,qe>It&&Q(It,qe-It),nt[5]&&(N(qe,nt[5].length,10),qe+=nt[5].length);let dt=De+lt;return qe=0),je>0){let st=lt||Ne(De.kind,De);st&&N(Le,je,st)}return!0}function Fe(De){switch(De.parent&&De.parent.kind){case 286:if(De.parent.tagName===De)return 19;break;case 287:if(De.parent.tagName===De)return 20;break;case 285:if(De.parent.tagName===De)return 21;break;case 291:if(De.parent.name===De)return 22;break}}function Ne(De,lt){if(s0(De))return 3;if((De===30||De===32)&<&&DGt(lt.parent))return 10;if(yme(De)){if(lt){let Le=lt.parent;if(De===64&&(Le.kind===260||Le.kind===172||Le.kind===169||Le.kind===291)||Le.kind===226||Le.kind===224||Le.kind===225||Le.kind===227)return 5}return 10}else{if(De===9)return 4;if(De===10)return 25;if(De===11)return lt&<.parent.kind===291?24:6;if(De===14)return 6;if(DS(De))return 6;if(De===12)return 23;if(De===80){if(lt){switch(lt.parent.kind){case 263:return lt.parent.name===lt?11:void 0;case 168:return lt.parent.name===lt?15:void 0;case 264:return lt.parent.name===lt?13:void 0;case 266:return lt.parent.name===lt?12:void 0;case 267:return lt.parent.name===lt?14:void 0;case 169:return lt.parent.name===lt?vG(lt)?3:17:void 0}if(B2(lt.parent))return 3}return 2}}}function Me(De){if(De&&t0(d,I,De.pos,De.getFullWidth())){jZr(n,De.kind);for(let lt of De.getChildren(c))Be(lt)||Me(lt)}}}var hFe;(n=>{function c(qe,it,It,dt,Tt){let St=ub(It,dt);if(St.parent&&(NN(St.parent)&&St.parent.tagName===St||AM(St.parent))){let{openingElement:He,closingElement:ht}=St.parent.parent,Et=[He,ht].map(({tagName:Kt})=>u(Kt,It));return[{fileName:It.fileName,highlightSpans:Et}]}return d(dt,St,qe,it,Tt)||I(St,It)}n.getDocumentHighlights=c;function u(qe,it){return{fileName:it.fileName,textSpan:By(qe,it),kind:"none"}}function d(qe,it,It,dt,Tt){let St=new Set(Tt.map(Kt=>Kt.fileName)),He=Yp.getReferenceEntriesForNode(qe,it,It,Tt,dt,void 0,St);if(!He)return;let ht=To(He.map(Yp.toHighlightSpan),Kt=>Kt.fileName,Kt=>Kt.span),Et=rA(It.useCaseSensitiveFileNames());return on(gn(ht.entries(),([Kt,Nt])=>{if(!St.has(Kt)){if(!It.redirectTargetsMap.has(AA(Kt,It.getCurrentDirectory(),Et)))return;let Lt=It.getSourceFile(Kt);Kt=be(Tt,Zt=>!!Zt.redirectInfo&&Zt.redirectInfo.redirectTarget===Lt).fileName,w.assert(St.has(Kt))}return{fileName:Kt,highlightSpans:Nt}}))}function I(qe,it){let It=h(qe,it);return It&&[{fileName:it.fileName,highlightSpans:It}]}function h(qe,it){switch(qe.kind){case 101:case 93:return X0(qe.parent)?je(qe.parent,it):void 0;case 107:return dt(qe.parent,G_,Me);case 111:return dt(qe.parent,Z2,Ne);case 113:case 85:case 98:let St=qe.kind===85?qe.parent.parent:qe.parent;return dt(St,ab,Fe);case 109:return dt(qe.parent,Bd,Be);case 84:case 90:return Mle(qe.parent)||ute(qe.parent)?dt(qe.parent.parent.parent,Bd,Be):void 0;case 83:case 88:return dt(qe.parent,D3,de);case 99:case 117:case 92:return dt(qe.parent,He=>YR(He,!0),Ae);case 137:return It(Df,[137]);case 139:case 153:return It(zw,[139,153]);case 135:return dt(qe.parent,Mb,De);case 134:return Tt(De(qe));case 127:return Tt(lt(qe));case 103:case 147:return;default:return Tv(qe.kind)&&(xC(qe.parent)||Dp(qe.parent))?Tt(te(qe.kind,qe.parent)):void 0}function It(St,He){return dt(qe.parent,St,ht=>{var Et;return tr((Et=$s(ht,v2))==null?void 0:Et.symbol.declarations,Kt=>St(Kt)?be(Kt.getChildren(it),Nt=>Ue(He,Nt.kind)):void 0)})}function dt(St,He,ht){return He(St)?Tt(ht(St,it)):void 0}function Tt(St){return St&&St.map(He=>u(He,it))}}function b(qe){return Z2(qe)?[qe]:ab(qe)?vi(qe.catchClause?b(qe.catchClause):qe.tryBlock&&b(qe.tryBlock),qe.finallyBlock&&b(qe.finallyBlock)):eu(qe)?void 0:V(qe,b)}function R(qe){let it=qe;for(;it.parent;){let It=it.parent;if(z9(It)||It.kind===307)return It;if(ab(It)&&It.tryBlock===it&&It.catchClause)return it;it=It}}function N(qe){return D3(qe)?[qe]:eu(qe)?void 0:V(qe,N)}function V(qe,it){let It=[];return qe.forEachChild(dt=>{let Tt=it(dt);Tt!==void 0&&It.push(...ys(Tt))}),It}function P(qe,it){let It=Q(it);return!!It&&It===qe}function Q(qe){return Si(qe,it=>{switch(it.kind){case 255:if(qe.kind===251)return!1;case 248:case 249:case 250:case 247:case 246:return!qe.label||nt(it,qe.label.escapedText);default:return eu(it)&&"quit"}})}function te(qe,it){return tr(re(it,P5(qe)),It=>Wte(It,qe))}function re(qe,it){let It=qe.parent;switch(It.kind){case 268:case 307:case 241:case 296:case 297:return it&64&&Ec(qe)?[...qe.members,qe]:It.statements;case 176:case 174:case 262:return[...It.parameters,...va(It.parent)?It.parent.members:[]];case 263:case 231:case 264:case 187:let dt=It.members;if(it&15){let Tt=be(It.members,Df);if(Tt)return[...dt,...Tt.parameters]}else if(it&64)return[...dt,It];return dt;case 210:return;default:w.assertNever(It,"Invalid container kind.")}}function ue(qe,it,...It){return it&&Ue(It,it.kind)?(qe.push(it),!0):!1}function Ae(qe){let it=[];if(ue(it,qe.getFirstToken(),99,117,92)&&qe.kind===246){let It=qe.getChildren();for(let dt=It.length-1;dt>=0&&!ue(it,It[dt],117);dt--);}return X(N(qe.statement),It=>{P(qe,It)&&ue(it,It.getFirstToken(),83,88)}),it}function de(qe){let it=Q(qe);if(it)switch(it.kind){case 248:case 249:case 250:case 246:case 247:return Ae(it);case 255:return Be(it)}}function Be(qe){let it=[];return ue(it,qe.getFirstToken(),109),X(qe.caseBlock.clauses,It=>{ue(it,It.getFirstToken(),84,90),X(N(It),dt=>{P(qe,dt)&&ue(it,dt.getFirstToken(),83)})}),it}function Fe(qe,it){let It=[];if(ue(It,qe.getFirstToken(),113),qe.catchClause&&ue(It,qe.catchClause.getFirstToken(),85),qe.finallyBlock){let dt=Qd(qe,98,it);ue(It,dt,98)}return It}function Ne(qe,it){let It=R(qe);if(!It)return;let dt=[];return X(b(It),Tt=>{dt.push(Qd(Tt,111,it))}),z9(It)&&kx(It,Tt=>{dt.push(Qd(Tt,107,it))}),dt}function Me(qe,it){let It=Ob(qe);if(!It)return;let dt=[];return kx(ps(It.body,hc),Tt=>{dt.push(Qd(Tt,107,it))}),X(b(It.body),Tt=>{dt.push(Qd(Tt,111,it))}),dt}function De(qe){let it=Ob(qe);if(!it)return;let It=[];return it.modifiers&&it.modifiers.forEach(dt=>{ue(It,dt,134)}),hu(it,dt=>{Le(dt,Tt=>{Mb(Tt)&&ue(It,Tt.getFirstToken(),135)})}),It}function lt(qe){let it=Ob(qe);if(!it)return;let It=[];return hu(it,dt=>{Le(dt,Tt=>{Hx(Tt)&&ue(It,Tt.getFirstToken(),127)})}),It}function Le(qe,it){it(qe),!eu(qe)&&!va(qe)&&!XI(qe)&&!mC(qe)&&!Pf(qe)&&!Ma(qe)&&hu(qe,It=>Le(It,it))}function je(qe,it){let It=st(qe,it),dt=[];for(let Tt=0;Tt=St.end;Et--)if(!e0(it.text.charCodeAt(Et))){ht=!1;break}if(ht){dt.push({fileName:it.fileName,textSpan:Pd(St.getStart(),He.end),kind:"reference"}),Tt++;continue}}dt.push(u(It[Tt],it))}return dt}function st(qe,it){let It=[];for(;X0(qe.parent)&&qe.parent.elseStatement===qe;)qe=qe.parent;for(;;){let dt=qe.getChildren(it);ue(It,dt[0],101);for(let Tt=dt.length-1;Tt>=0&&!ue(It,dt[Tt],93);Tt--);if(!qe.elseStatement||!X0(qe.elseStatement))break;qe=qe.elseStatement}return It}function nt(qe,it){return!!Si(qe.parent,It=>iC(It)?It.label.escapedText===it:"quit")}})(hFe||(hFe={}));function r0e(n){return!!n.sourceFile}function dFt(n,c,u){return Mje(n,c,u)}function Mje(n,c="",u,d){let I=new Map,h=rA(!!n);function b(){let de=on(I.keys()).filter(Be=>Be&&Be.charAt(0)==="_").map(Be=>{let Fe=I.get(Be),Ne=[];return Fe.forEach((Me,De)=>{r0e(Me)?Ne.push({name:De,scriptKind:Me.sourceFile.scriptKind,refCount:Me.languageServiceRefCount}):Me.forEach((lt,Le)=>Ne.push({name:De,scriptKind:Le,refCount:lt.languageServiceRefCount}))}),Ne.sort((Me,De)=>De.refCount-Me.refCount),{bucket:Be,sourceFiles:Ne}});return JSON.stringify(de,void 0,2)}function R(de){return typeof de.getCompilationSettings=="function"?de.getCompilationSettings():de}function N(de,Be,Fe,Ne,Me,De){let lt=AA(de,c,h),Le=Hje(R(Be));return V(de,lt,Be,Le,Fe,Ne,Me,De)}function V(de,Be,Fe,Ne,Me,De,lt,Le){return re(de,Be,Fe,Ne,Me,De,!0,lt,Le)}function P(de,Be,Fe,Ne,Me,De){let lt=AA(de,c,h),Le=Hje(R(Be));return Q(de,lt,Be,Le,Fe,Ne,Me,De)}function Q(de,Be,Fe,Ne,Me,De,lt,Le){return re(de,Be,R(Fe),Ne,Me,De,!1,lt,Le)}function te(de,Be){let Fe=r0e(de)?de:de.get(w.checkDefined(Be,"If there are more than one scriptKind's for same document the scriptKind should be provided"));return w.assert(Be===void 0||!Fe||Fe.sourceFile.scriptKind===Be,`Script kind should match provided ScriptKind:${Be} and sourceFile.scriptKind: ${Fe?.sourceFile.scriptKind}, !entry: ${!Fe}`),Fe}function re(de,Be,Fe,Ne,Me,De,lt,Le,je){var st,nt,qe,it;Le=dle(de,Le);let It=R(Fe),dt=Fe===It?void 0:Fe,Tt=Le===6?100:sA(It),St=typeof je=="object"?je:{languageVersion:Tt,impliedNodeFormat:dt&&B_e(Be,(it=(qe=(nt=(st=dt.getCompilerHost)==null?void 0:st.call(dt))==null?void 0:nt.getModuleResolutionCache)==null?void 0:qe.call(nt))==null?void 0:it.getPackageJsonInfoCache(),dt,It),setExternalModuleIndicator:m6(It),jsDocParsingMode:u};St.languageVersion=Tt,w.assertEqual(u,St.jsDocParsingMode);let He=I.size,ht=pFt(Ne,St.impliedNodeFormat),Et=we(I,ht,()=>new Map);if(Qi){I.size>He&&Qi.instant(Qi.Phase.Session,"createdDocumentRegistryBucket",{configFilePath:It.configFilePath,key:ht});let kt=!Gh(Be)&&UC(I,(Zt,Dr)=>Dr!==ht&&Zt.has(Be)&&Dr);kt&&Qi.instant(Qi.Phase.Session,"documentRegistryBucketOverlap",{path:Be,key1:kt,key2:ht})}let Kt=Et.get(Be),Nt=Kt&&te(Kt,Le);if(!Nt&&d){let kt=d.getDocument(ht,Be);kt&&kt.scriptKind===Le&&kt.text===t7(Me)&&(w.assert(lt),Nt={sourceFile:kt,languageServiceRefCount:0},Lt())}if(Nt)Nt.sourceFile.version!==De&&(Nt.sourceFile=Eze(Nt.sourceFile,Me,De,Me.getChangeRange(Nt.sourceFile.scriptSnapshot)),d&&d.setDocument(ht,Be,Nt.sourceFile)),lt&&Nt.languageServiceRefCount++;else{let kt=FFe(de,Me,St,De,!1,Le);d&&d.setDocument(ht,Be,kt),Nt={sourceFile:kt,languageServiceRefCount:1},Lt()}return w.assert(Nt.languageServiceRefCount!==0),Nt.sourceFile;function Lt(){if(!Kt)Et.set(Be,Nt);else if(r0e(Kt)){let kt=new Map;kt.set(Kt.sourceFile.scriptKind,Kt),kt.set(Le,Nt),Et.set(Be,kt)}else Kt.set(Le,Nt)}}function ue(de,Be,Fe,Ne){let Me=AA(de,c,h),De=Hje(Be);return Ae(Me,De,Fe,Ne)}function Ae(de,Be,Fe,Ne){let Me=w.checkDefined(I.get(pFt(Be,Ne))),De=Me.get(de),lt=te(De,Fe);lt.languageServiceRefCount--,w.assert(lt.languageServiceRefCount>=0),lt.languageServiceRefCount===0&&(r0e(De)?Me.delete(de):(De.delete(Fe),De.size===1&&Me.set(de,ae(De.values(),vl))))}return{acquireDocument:N,acquireDocumentWithKey:V,updateDocument:P,updateDocumentWithKey:Q,releaseDocument:ue,releaseDocumentWithKey:Ae,getKeyForCompilationSettings:Hje,getDocumentRegistryBucketKeyWithMode:pFt,reportStats:b,getBuckets:()=>I}}function Hje(n){return x8e(n,p8e)}function pFt(n,c){return c?`${n}|${c}`:n}function fFt(n,c,u,d,I,h,b){let R=zX(d),N=rA(R),V=Yje(c,u,N,b),P=Yje(u,c,N,b);return Ao.ChangeTracker.with({host:d,formatContext:I,preferences:h},Q=>{Nzi(n,Q,V,c,u,d.getCurrentDirectory(),R),Rzi(n,Q,V,P,d,N)})}function Yje(n,c,u,d){let I=u(n);return b=>{let R=d&&d.tryGetSourcePosition({fileName:b,pos:0}),N=h(R?R.fileName:b);return R?N===void 0?void 0:Tzi(R.fileName,N,b,u):N};function h(b){if(u(b)===I)return c;let R=she(b,I,u);return R===void 0?void 0:c+"/"+R}}function Tzi(n,c,u,d){let I=T1(n,c,d);return IFt(oa(u),I)}function Nzi(n,c,u,d,I,h,b){let{configFile:R}=n.getCompilerOptions();if(!R)return;let N=oa(R.fileName),V=V8(R);if(!V)return;CFt(V,(re,ue)=>{switch(ue){case"files":case"include":case"exclude":{if(P(re)||ue!=="include"||!Cf(re.initializer))return;let de=tr(re.initializer.elements,Fe=>Eu(Fe)?Fe.text:void 0);if(de.length===0)return;let Be=Ale(N,[],de,b,h);TG(w.checkDefined(Be.includeFilePattern),b).test(d)&&!TG(w.checkDefined(Be.includeFilePattern),b).test(I)&&c.insertNodeAfter(R,Ta(re.initializer.elements),_e.createStringLiteral(te(I)));return}case"compilerOptions":CFt(re.initializer,(Ae,de)=>{let Be=m8e(de);w.assert(Be?.type!=="listOrElement"),Be&&(Be.isFilePath||Be.type==="list"&&Be.element.isFilePath)?P(Ae):de==="paths"&&CFt(Ae.initializer,Fe=>{if(Cf(Fe.initializer))for(let Ne of Fe.initializer.elements)Q(Ne)})});return}});function P(re){let ue=Cf(re.initializer)?re.initializer.elements:[re.initializer],Ae=!1;for(let de of ue)Ae=Q(de)||Ae;return Ae}function Q(re){if(!Eu(re))return!1;let ue=IFt(N,re.text),Ae=u(ue);return Ae!==void 0?(c.replaceRangeWithText(R,eLr(re,R),te(Ae)),!0):!1}function te(re){return Ip(N,re,!b)}}function Rzi(n,c,u,d,I,h){let b=n.getSourceFiles();for(let R of b){let N=u(R.fileName),V=N??R.fileName,P=oa(V),Q=d(R.fileName),te=Q||R.fileName,re=oa(te),ue=N!==void 0||Q!==void 0;kzi(R,c,Ae=>{if(!Qp(Ae))return;let de=IFt(re,Ae),Be=u(de);return Be===void 0?void 0:jy(Ip(P,Be,h))},Ae=>{let de=n.getTypeChecker().getSymbolAtLocation(Ae);if(de?.declarations&&de.declarations.some(Fe=>Yf(Fe)))return;let Be=Q!==void 0?$Zr(Ae,U6(Ae.text,te,n.getCompilerOptions(),I),u,b):xzi(de,Ae,R,n,I,u);return Be!==void 0&&(Be.updated||ue&&Qp(Ae.text))?dP.updateModuleSpecifier(n.getCompilerOptions(),R,V,Be.newFileName,r7(n,I),Ae.text):void 0})}}function Dzi(n,c){return Mc(Do(n,c))}function IFt(n,c){return jy(Dzi(n,c))}function xzi(n,c,u,d,I,h){if(n){let b=be(n.declarations,Fc).fileName,R=h(b);return R===void 0?{newFileName:b,updated:!1}:{newFileName:R,updated:!0}}else{let b=d.getModeForUsageLocation(u,c),R=I.resolveModuleNameLiterals||!I.resolveModuleNames?d.getResolvedModuleFromModuleSpecifier(c,u):I.getResolvedModuleWithFailedLookupLocationsFromCache&&I.getResolvedModuleWithFailedLookupLocationsFromCache(c.text,u.fileName,b);return $Zr(c,R,h,d.getSourceFiles())}}function $Zr(n,c,u,d){if(!c)return;if(c.resolvedModule){let N=R(c.resolvedModule.resolvedFileName);if(N)return N}let I=X(c.failedLookupLocations,h)||Qp(n.text)&&X(c.failedLookupLocations,b);if(I)return I;return c.resolvedModule&&{newFileName:c.resolvedModule.resolvedFileName,updated:!1};function h(N){let V=u(N);return V&&be(d,P=>P.fileName===V)?b(N):void 0}function b(N){return fl(N,"/package.json")?void 0:R(N)}function R(N){let V=u(N);return V&&{newFileName:V,updated:!0}}}function kzi(n,c,u,d){for(let I of n.referencedFiles||v){let h=u(I.fileName);h!==void 0&&h!==n.text.slice(I.pos,I.end)&&c.replaceRangeWithText(n,I,h)}for(let I of n.imports){let h=d(I);h!==void 0&&h!==I.text&&c.replaceRangeWithText(n,eLr(I,n),h)}}function eLr(n,c){return Z1(n.getStart(c)+1,n.end-1)}function CFt(n,c){if(ru(n))for(let u of n.properties)jC(u)&&Eu(u.name)&&c(u,u.name.text)}var Xje=(n=>(n[n.exact=0]="exact",n[n.prefix=1]="prefix",n[n.substring=2]="substring",n[n.camelCase=3]="camelCase",n))(Xje||{});function Lue(n,c){return{kind:n,isCaseSensitive:c}}function mFt(n){let c=new Map,u=n.trim().split(".").map(d=>Lzi(d.trim()));if(u.length===1&&u[0].totalTextChunk.text==="")return{getMatchForLastSegmentOfPattern:()=>Lue(2,!0),getFullMatch:()=>Lue(2,!0),patternContainsDots:!1};if(!u.some(d=>!d.subWordTextChunks.length))return{getFullMatch:(d,I)=>Gzi(d,I,u,c),getMatchForLastSegmentOfPattern:d=>hFt(d,Ta(u),c),patternContainsDots:u.length>1}}function Gzi(n,c,u,d){if(!hFt(c,Ta(u),d)||u.length-1>n.length)return;let h;for(let b=u.length-2,R=n.length-1;b>=0;b-=1,R-=1)h=nLr(h,hFt(n[R],u[b],d));return h}function tLr(n,c){let u=c.get(n);return u||c.set(n,u=vFt(n)),u}function rLr(n,c,u){let d=Vzi(n,c.textLowerCase);if(d===0)return Lue(c.text.length===n.length?0:1,uc(n,c.text));if(c.isLowerCase){if(d===-1)return;let I=tLr(n,u);for(let h of I)if(_Ft(n,h,c.text,!0))return Lue(2,_Ft(n,h,c.text,!1));if(c.text.length0)return Lue(2,!0);if(c.characterSpans.length>0){let I=tLr(n,u),h=iLr(n,I,c,!1)?!0:iLr(n,I,c,!0)?!1:void 0;if(h!==void 0)return Lue(3,h)}}}function hFt(n,c,u){if(Jje(c.totalTextChunk.text,h=>h!==32&&h!==42)){let h=rLr(n,c.totalTextChunk,u);if(h)return h}let d=c.subWordTextChunks,I;for(let h of d)I=nLr(I,rLr(n,h,u));return I}function nLr(n,c){return gC([n,c],Fzi)}function Fzi(n,c){return n===void 0?1:c===void 0?-1:Jl(n.kind,c.kind)||DA(!n.isCaseSensitive,!c.isCaseSensitive)}function _Ft(n,c,u,d,I={start:0,length:u.length}){return I.length<=c.length&&cLr(0,I.length,h=>Zzi(u.charCodeAt(I.start+h),n.charCodeAt(c.start+h),d))}function Zzi(n,c,u){return u?yFt(n)===yFt(c):n===c}function iLr(n,c,u,d){let I=u.characterSpans,h=0,b=0,R,N;for(;;){if(b===I.length)return!0;if(h===c.length)return!1;let V=c[h],P=!1;for(;b=65&&n<=90)return!0;if(n<127||!Sg(n,99))return!1;let c=String.fromCharCode(n);return c===c.toUpperCase()}function sLr(n){if(n>=97&&n<=122)return!0;if(n<127||!Sg(n,99))return!1;let c=String.fromCharCode(n);return c===c.toLowerCase()}function Vzi(n,c){let u=n.length-c.length;for(let d=0;d<=u;d++)if(Jje(c,(I,h)=>yFt(n.charCodeAt(h+d))===I))return d;return-1}function yFt(n){return n>=65&&n<=90?97+(n-65):n<127?n:String.fromCharCode(n).toLowerCase().charCodeAt(0)}function bFt(n){return n>=48&&n<=57}function Wzi(n){return Xte(n)||sLr(n)||bFt(n)||n===95||n===36}function Pzi(n){let c=[],u=0,d=0;for(let I=0;I0&&(c.push(EFt(n.substr(u,d))),d=0)}return d>0&&c.push(EFt(n.substr(u,d))),c}function EFt(n){let c=n.toLowerCase();return{text:n,textLowerCase:c,isLowerCase:n===c,characterSpans:BFt(n)}}function BFt(n){return oLr(n,!1)}function vFt(n){return oLr(n,!0)}function oLr(n,c){let u=[],d=0;for(let I=1;ISFt(d)&&d!==95,c,u)}function Ozi(n,c,u){return c!==u&&c+1c(n.charCodeAt(I),I))}function lLr(n,c=!0,u=!1){let d={languageVersion:1,pragmas:void 0,checkJsDirective:void 0,referencedFiles:[],typeReferenceDirectives:[],libReferenceDirectives:[],amdDependencies:[],hasNoDefaultLib:void 0,moduleName:void 0},I=[],h,b,R,N=0,V=!1;function P(){return b=R,R=J0.scan(),R===19?N++:R===20&&N--,R}function Q(){let De=J0.getTokenValue(),lt=J0.getTokenStart();return{fileName:De,pos:lt,end:lt+De.length}}function te(){h||(h=[]),h.push({ref:Q(),depth:N})}function re(){I.push(Q()),ue()}function ue(){N===0&&(V=!0)}function Ae(){let De=J0.getToken();return De===138?(De=P(),De===144&&(De=P(),De===11&&te()),!0):!1}function de(){if(b===25)return!1;let De=J0.getToken();if(De===102){if(De=P(),De===21){if(De=P(),De===11||De===15)return re(),!0}else{if(De===11)return re(),!0;if(De===156&&J0.lookAhead(()=>{let Le=J0.scan();return Le!==161&&(Le===42||Le===19||Le===80||s0(Le))})&&(De=P()),De===80||s0(De))if(De=P(),De===161){if(De=P(),De===11)return re(),!0}else if(De===64){if(Fe(!0))return!0}else if(De===28)De=P();else return!0;if(De===19){for(De=P();De!==20&&De!==1;)De=P();De===20&&(De=P(),De===161&&(De=P(),De===11&&re()))}else De===42&&(De=P(),De===130&&(De=P(),(De===80||s0(De))&&(De=P(),De===161&&(De=P(),De===11&&re()))))}return!0}return!1}function Be(){let De=J0.getToken();if(De===95){if(ue(),De=P(),De===156&&J0.lookAhead(()=>{let Le=J0.scan();return Le===42||Le===19})&&(De=P()),De===19){for(De=P();De!==20&&De!==1;)De=P();De===20&&(De=P(),De===161&&(De=P(),De===11&&re()))}else if(De===42)De=P(),De===161&&(De=P(),De===11&&re());else if(De===102&&(De=P(),De===156&&J0.lookAhead(()=>{let Le=J0.scan();return Le===80||s0(Le)})&&(De=P()),(De===80||s0(De))&&(De=P(),De===64&&Fe(!0))))return!0;return!0}return!1}function Fe(De,lt=!1){let Le=De?P():J0.getToken();return Le===149?(Le=P(),Le===21&&(Le=P(),(Le===11||lt&&Le===15)&&re()),!0):!1}function Ne(){let De=J0.getToken();if(De===80&&J0.getTokenValue()==="define"){if(De=P(),De!==21)return!0;if(De=P(),De===11||De===15)if(De=P(),De===28)De=P();else return!0;if(De!==23)return!0;for(De=P();De!==24&&De!==1;)(De===11||De===15)&&re(),De=P();return!0}return!1}function Me(){for(J0.setText(n),P();J0.getToken()!==1;){if(J0.getToken()===16){let De=[J0.getToken()];e:for(;O(De);){let lt=J0.scan();switch(lt){case 1:break e;case 102:de();break;case 16:De.push(lt);break;case 19:O(De)&&De.push(lt);break;case 20:O(De)&&(zo(De)===16?J0.reScanTemplateToken(!1)===18&&De.pop():De.pop());break}}P()}Ae()||de()||Be()||u&&(Fe(!1,!0)||Ne())||P()}J0.setText(void 0)}if(c&&Me(),l8e(d,n),u8e(d,oc),V){if(h)for(let De of h)I.push(De.ref);return{referencedFiles:d.referencedFiles,typeReferenceDirectives:d.typeReferenceDirectives,libReferenceDirectives:d.libReferenceDirectives,importedFiles:I,isLibFile:!!d.hasNoDefaultLib,ambientExternalModules:void 0}}else{let De;if(h)for(let lt of h)lt.depth===0?(De||(De=[]),De.push(lt.ref.fileName)):I.push(lt.ref);return{referencedFiles:d.referencedFiles,typeReferenceDirectives:d.typeReferenceDirectives,libReferenceDirectives:d.libReferenceDirectives,importedFiles:I,isLibFile:!!d.hasNoDefaultLib,ambientExternalModules:De}}}var Mzi=/^data:(?:application\/json(?:;charset=[uU][tT][fF]-8);base64,([A-Za-z0-9+/=]+)$)?/;function wFt(n){let c=rA(n.useCaseSensitiveFileNames()),u=n.getCurrentDirectory(),d=new Map,I=new Map;return{tryGetSourcePosition:R,tryGetGeneratedPosition:N,toLineColumnOffset:te,clearCache:re,documentPositionMappers:I};function h(ue){return AA(ue,u,c)}function b(ue,Ae){let de=h(ue),Be=I.get(de);if(Be)return Be;let Fe;if(n.getDocumentPositionMapper)Fe=n.getDocumentPositionMapper(ue,Ae);else if(n.readFile){let Ne=Q(ue);Fe=Ne&&Uje({getSourceFileLike:Q,getCanonicalFileName:c,log:Me=>n.log(Me)},ue,e6e(Ne.text,Dc(Ne)),Me=>!n.fileExists||n.fileExists(Me)?n.readFile(Me):void 0)}return I.set(de,Fe||r6e),Fe||r6e}function R(ue){if(!Gh(ue.fileName)||!V(ue.fileName))return;let de=b(ue.fileName).getSourcePosition(ue);return!de||de===ue?void 0:R(de)||de}function N(ue){if(Gh(ue.fileName))return;let Ae=V(ue.fileName);if(!Ae)return;let de=n.getProgram();if(de.isSourceOfProjectReferenceRedirect(Ae.fileName))return;let Fe=de.getCompilerOptions().outFile,Ne=Fe?a0(Fe)+".d.ts":Gce(ue.fileName,de.getCompilerOptions(),de);if(Ne===void 0)return;let Me=b(Ne,ue.fileName).getGeneratedPosition(ue);return Me===ue?void 0:Me}function V(ue){let Ae=n.getProgram();if(!Ae)return;let de=h(ue),Be=Ae.getSourceFileByPath(de);return Be&&Be.resolvedPath===de?Be:void 0}function P(ue){let Ae=h(ue),de=d.get(Ae);if(de!==void 0)return de||void 0;if(!n.readFile||n.fileExists&&!n.fileExists(ue)){d.set(Ae,!1);return}let Be=n.readFile(ue),Fe=Be?Hzi(Be):!1;return d.set(Ae,Fe),Fe||void 0}function Q(ue){return n.getSourceFileLike?n.getSourceFileLike(ue):V(ue)||P(ue)}function te(ue,Ae){return Q(ue).getLineAndCharacterOfPosition(Ae)}function re(){d.clear(),I.clear()}}function Uje(n,c,u,d){let I=MDt(u);if(I){let R=Mzi.exec(I);if(R){if(R[1]){let N=R[1];return uLr(n,EDe(yd,N),c)}I=void 0}}let h=[];I&&h.push(I),h.push(c+".map");let b=I&&Qc(I,oa(c));for(let R of h){let N=Qc(R,oa(c)),V=d(N,b);if(Ya(V))return uLr(n,V,N);if(V!==void 0)return V||void 0}}function uLr(n,c,u){let d=YDt(c);if(!(!d||!d.sources||!d.file||!d.mappings)&&!(d.sourcesContent&&d.sourcesContent.some(Ya)))return JDt(n,d,u)}function Hzi(n,c){return{text:n,lineMap:c,getLineAndCharacterOfPosition(u){return Mp(Dc(this),u)}}}var TFt=new Map;function Kje(n,c,u){var d;c.getSemanticDiagnostics(n,u);let I=[],h=c.getTypeChecker();!(n.impliedNodeFormat===1||fp(n.fileName,[".cts",".cjs"]))&&n.commonJsModuleIndicator&&(ZGt(c)||sje(c.getCompilerOptions()))&&Yzi(n)&&I.push(Js(Kzi(n.commonJsModuleIndicator),Z.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module));let R=i0(n);if(TFt.clear(),N(n),K5(c.getCompilerOptions()))for(let V of n.imports){let P=OX(V),Q=Xzi(P);if(!Q)continue;let te=(d=c.getResolvedModuleFromModuleSpecifier(V,n))==null?void 0:d.resolvedModule,re=te&&c.getSourceFile(te.resolvedFileName);re&&re.externalModuleIndicator&&re.externalModuleIndicator!==!0&&rf(re.externalModuleIndicator)&&re.externalModuleIndicator.isExportEquals&&I.push(Js(Q,Z.Import_may_be_converted_to_a_default_import))}return ai(I,n.bindSuggestionDiagnostics),ai(I,c.getSuggestionDiagnostics(n,u)),I.sort((V,P)=>V.start-P.start);function N(V){if(R)zzi(V,h)&&I.push(Js(js(V.parent)?V.parent.name:V,Z.This_constructor_function_may_be_converted_to_a_class_declaration));else{if(Dp(V)&&V.parent===n&&V.declarationList.flags&2&&V.declarationList.declarations.length===1){let Q=V.declarationList.declarations[0].initializer;Q&&H0(Q,!0)&&I.push(Js(Q,Z.require_call_may_be_converted_to_an_import))}let P=p0.getJSDocTypedefNodes(V);for(let Q of P)I.push(Js(Q,Z.JSDoc_typedef_may_be_converted_to_TypeScript_type));p0.parameterShouldGetTypeFromJSDoc(V)&&I.push(Js(V.name||V,Z.JSDoc_types_may_be_moved_to_TypeScript_types))}qje(V)&&Jzi(V,h,I),V.forEachChild(N)}}function Yzi(n){return n.statements.some(c=>{switch(c.kind){case 243:return c.declarationList.declarations.some(u=>!!u.initializer&&H0(gLr(u.initializer),!0));case 244:{let{expression:u}=c;if(!ro(u))return H0(u,!0);let d=mI(u);return d===1||d===2}default:return!1}})}function gLr(n){return fo(n)?gLr(n.expression):n}function Xzi(n){switch(n.kind){case 272:let{importClause:c,moduleSpecifier:u}=n;return c&&!c.name&&c.namedBindings&&c.namedBindings.kind===274&&Eu(u)?c.namedBindings.name:void 0;case 271:return n.name;default:return}}function Jzi(n,c,u){Uzi(n,c)&&!TFt.has(fLr(n))&&u.push(Js(!n.name&&js(n.parent)&&sr(n.parent.name)?n.parent.name:n,Z.This_may_be_converted_to_an_async_function))}function Uzi(n,c){return!t6(n)&&n.body&&hc(n.body)&&jzi(n.body,c)&&jje(n,c)}function jje(n,c){let u=c.getSignatureFromDeclaration(n),d=u?c.getReturnTypeOfSignature(u):void 0;return!!d&&!!c.getPromisedTypeOfPromise(d)}function Kzi(n){return ro(n)?n.left:n}function jzi(n,c){return!!kx(n,u=>_Fe(u,c))}function _Fe(n,c){return G_(n)&&!!n.expression&&zje(n.expression,c)}function zje(n,c){if(!ALr(n)||!dLr(n)||!n.arguments.every(d=>pLr(d,c)))return!1;let u=n.expression.expression;for(;ALr(u)||fo(u);)if(lu(u)){if(!dLr(u)||!u.arguments.every(d=>pLr(d,c)))return!1;u=u.expression.expression}else u=u.expression;return!0}function ALr(n){return lu(n)&&(G_e(n,"then")||G_e(n,"catch")||G_e(n,"finally"))}function dLr(n){let c=n.expression.name.text,u=c==="then"?2:c==="catch"||c==="finally"?1:0;return n.arguments.length>u?!1:n.arguments.lengthd.kind===106||sr(d)&&d.text==="undefined")}function pLr(n,c){switch(n.kind){case 262:case 218:if(YI(n)&1)return!1;case 219:TFt.set(fLr(n),!0);case 106:return!0;case 80:case 211:{let d=c.getSymbolAtLocation(n);return d?c.isUndefinedSymbol(d)||lr(ph(d,c).declarations,I=>eu(I)||$w(I)&&!!I.initializer&&eu(I.initializer)):!1}default:return!1}}function fLr(n){return`${n.pos.toString()}:${n.end.toString()}`}function zzi(n,c){var u,d,I,h;if(PA(n)){if(js(n.parent)&&((u=n.symbol.members)!=null&&u.size))return!0;let b=c.getSymbolOfExpando(n,!1);return!!(b&&((d=b.exports)!=null&&d.size||(I=b.members)!=null&&I.size))}return hp(n)?!!((h=n.symbol.members)!=null&&h.size):!1}function qje(n){switch(n.kind){case 262:case 174:case 218:case 219:return!0;default:return!1}}var qzi=new Set(["isolatedModules"]);function NFt(n,c){return CLr(n,c,!1)}function ILr(n,c){return CLr(n,c,!0)}var $zi=`/// interface Boolean {} interface Function {} interface CallableFunction {} @@ -803,43 +803,43 @@ interface SymbolConstructor { declare var Symbol: SymbolConstructor; interface Symbol { readonly [Symbol.toStringTag]: string; -}`,hFe="lib.d.ts",wFt;function gLr(n,c,u){wFt??(wFt=L6(hFe,Xzi,{languageVersion:99}));let d=[],I=c.compilerOptions?zje(c.compilerOptions,d):{},h=xFe();for(let Ae in h)Qa(h,Ae)&&I[Ae]===void 0&&(I[Ae]=h[Ae]);for(let Ae of FRt)I.verbatimModuleSyntax&&Hzi.has(Ae.name)||(I[Ae.name]=Ae.transpileOptionValue);I.suppressOutputPathCheck=!0,I.allowNonTsExtensions=!0,u?(I.declaration=!0,I.emitDeclarationOnly=!0,I.isolatedDeclarations=!0):I.declaration=!1;let b=G1(I),R={getSourceFile:Ae=>Ae===Mc(N)?V:Ae===Mc(hFe)?wFt:void 0,writeFile:(Ae,de)=>{gd(Ae,".map")?(w.assertEqual(M,void 0,"Unexpected multiple source map outputs, file:",Ae),M=de):(w.assertEqual(P,void 0,"Unexpected multiple outputs, file:",Ae),P=de)},getDefaultLibFileName:()=>hFe,useCaseSensitiveFileNames:()=>!1,getCanonicalFileName:Ae=>Ae,getCurrentDirectory:()=>"",getNewLine:()=>b,fileExists:Ae=>Ae===N||!!u&&Ae===hFe,readFile:()=>"",directoryExists:()=>!0,getDirectories:()=>[]},N=c.fileName||(c.compilerOptions&&c.compilerOptions.jsx?"module.tsx":"module.ts"),V=L6(N,n,{languageVersion:iA(I),impliedNodeFormat:b_e(gA(N,"",R.getCanonicalFileName),void 0,R,I),setExternalModuleIndicator:A6(I),jsDocParsingMode:c.jsDocParsingMode??0});c.moduleName&&(V.moduleName=c.moduleName),c.renamedDependencies&&(V.renamedDependencies=new Map(Object.entries(c.renamedDependencies)));let P,M,re=E_e(u?[N,hFe]:[N],I,R);c.reportDiagnostics&&(ai(d,re.getSyntacticDiagnostics(V)),ai(d,re.getOptionsDiagnostics()));let ue=re.emit(void 0,void 0,void 0,u,c.transformers,u);return ai(d,ue.diagnostics),P===void 0?w.fail("Output generation failed"):{outputText:P,diagnostics:d,sourceMapText:M}}function ALr(n,c,u,d,I){let h=SFt(n,{compilerOptions:c,fileName:u,reportDiagnostics:!!d,moduleName:I});return ai(d,h.diagnostics),h.outputText}var TFt;function zje(n,c){TFt=TFt||Gt(cT,u=>typeof u.type=="object"&&!JC(u.type,d=>typeof d!="number")),n=j7e(n);for(let u of TFt){if(!Qa(n,u.name))continue;let d=n[u.name];Xa(d)?n[u.name]=gke(u,d,c):JC(u.type,I=>I===d)||c.push(WRt(u))}return n}var NFt={};o(NFt,{getNavigateToItems:()=>dLr});function dLr(n,c,u,d,I,h,b){let R=fFt(d);if(!R)return v;let N=[],V=n.length===1?n[0]:void 0;for(let P of n)u.throwIfCancellationRequested(),!(h&&P.isDeclarationFile)&&(pLr(P,!!b,V)||P.getNamedDeclarations().forEach((M,te)=>{Jzi(R,te,M,c,P.fileName,!!b,V,N)}));return N.sort(zzi),(I===void 0?N:N.slice(0,I)).map(qzi)}function pLr(n,c,u){return n!==u&&c&&(j_e(n.path)||n.hasNoDefaultLib)}function Jzi(n,c,u,d,I,h,b,R){let N=n.getMatchForLastSegmentOfPattern(c);if(N){for(let V of u)if(Uzi(V,d,h,b))if(n.patternContainsDots){let P=n.getFullMatch(jzi(V),c);P&&R.push({name:c,fileName:I,matchKind:P.kind,isCaseSensitive:P.isCaseSensitive,declaration:V})}else R.push({name:c,fileName:I,matchKind:N.kind,isCaseSensitive:N.isCaseSensitive,declaration:V})}}function Uzi(n,c,u,d){var I;switch(n.kind){case 273:case 276:case 271:let h=c.getSymbolAtLocation(n.name),b=c.getAliasedSymbol(h);return h.escapedName!==b.escapedName&&!((I=b.declarations)!=null&&I.every(R=>pLr(R.getSourceFile(),u,d)));default:return!0}}function Kzi(n,c){let u=vl(n);return!!u&&(fLr(u,c)||u.kind===167&&RFt(u.expression,c))}function RFt(n,c){return fLr(n,c)||Io(n)&&(c.push(n.name.text),!0)&&RFt(n.expression,c)}function fLr(n,c){return VS(n)&&(c.push(T2(n)),!0)}function jzi(n){let c=[],u=vl(n);if(u&&u.kind===167&&!RFt(u.expression,c))return v;c.shift();let d=y4(n);for(;d;){if(!Kzi(d,c))return v;d=y4(d)}return c.reverse()}function zzi(n,c){return Xl(n.matchKind,c.matchKind)||Li(n.name,c.name)}function qzi(n){let c=n.declaration,u=y4(c),d=u&&vl(u);return{name:n.name,kind:_Y(c),kindModifiers:Cue(c),matchKind:Yje[n.matchKind],isCaseSensitive:n.isCaseSensitive,fileName:n.fileName,textSpan:Ey(c),containerName:d?d.text:"",containerKind:d?_Y(u):""}}var DFt={};o(DFt,{getNavigationBarItems:()=>CLr,getNavigationTree:()=>mLr});var $zi=/\s+/g,xFt=150,qje,t0e,_Fe=[],PZ,ILr=[],Hte,kFt=[];function CLr(n,c){qje=c,t0e=n;try{return Ot(iqi(yLr(n)),sqi)}finally{hLr()}}function mLr(n,c){qje=c,t0e=n;try{return RLr(yLr(n))}finally{hLr()}}function hLr(){t0e=void 0,qje=void 0,_Fe=[],PZ=void 0,kFt=[]}function yFe(n){return Nue(n.getText(t0e))}function $je(n){return n.node.kind}function _Lr(n,c){n.children?n.children.push(c):n.children=[c]}function yLr(n){w.assert(!_Fe.length);let c={node:n,name:void 0,additionalNodes:void 0,parent:void 0,children:void 0,indent:0};PZ=c;for(let u of n.statements)q6(u);return dP(),w.assert(!PZ&&!_Fe.length),c}function BY(n,c){_Lr(PZ,GFt(n,c))}function GFt(n,c){return{node:n,name:c||(DC(n)||tn(n)?vl(n):void 0),additionalNodes:void 0,parent:PZ,children:void 0,indent:PZ.indent+1}}function bLr(n){Hte||(Hte=new Map),Hte.set(n,!0)}function ELr(n){for(let c=0;c0;d--){let I=u[d];vY(n,I)}return[u.length-1,u[0]]}function vY(n,c){let u=GFt(n,c);_Lr(PZ,u),_Fe.push(PZ),ILr.push(Hte),Hte=void 0,PZ=u}function dP(){PZ.children&&(eze(PZ.children,PZ),LFt(PZ.children)),PZ=_Fe.pop(),Hte=ILr.pop()}function pP(n,c,u){vY(n,u),q6(c),dP()}function vLr(n){n.initializer&&aqi(n.initializer)?(vY(n),mu(n.initializer,q6),dP()):pP(n,n.initializer)}function FFt(n){let c=vl(n);if(c===void 0)return!1;if(xg(c)){let u=c.expression;return cp(u)||du(u)||GE(u)}return!!c}function q6(n){if(qje.throwIfCancellationRequested(),!(!n||O9(n)))switch(n.kind){case 176:let c=n;pP(c,c.body);for(let b of c.parameters)Zn(b,c)&&BY(b);break;case 174:case 177:case 178:case 173:FFt(n)&&pP(n,n.body);break;case 172:FFt(n)&&vLr(n);break;case 171:FFt(n)&&BY(n);break;case 273:let u=n;u.name&&BY(u.name);let{namedBindings:d}=u;if(d)if(d.kind===274)BY(d);else for(let b of d.elements)BY(b);break;case 304:pP(n,n.name);break;case 305:let{expression:I}=n;sr(I)?BY(n,I):BY(n);break;case 208:case 303:case 260:{let b=n;pu(b.name)?q6(b.name):vLr(b);break}case 262:let h=n.name;h&&sr(h)&&bLr(h.text),pP(n,n.body);break;case 219:case 218:pP(n,n.body);break;case 266:vY(n);for(let b of n.members)oqi(b)||BY(b);dP();break;case 263:case 231:case 264:vY(n);for(let b of n.members)q6(b);dP();break;case 267:pP(n,xLr(n).body);break;case 277:{let b=n.expression,R=tu(b)||cu(b)?b:fd(b)||WA(b)?b.body:void 0;R?(vY(n),q6(R),dP()):BY(n);break}case 281:case 271:case 181:case 179:case 180:case 265:BY(n);break;case 213:case 226:{let b=CI(n);switch(b){case 1:case 2:pP(n,n.right);return;case 6:case 3:{let R=n,N=R.left,V=b===3?N.expression:N,P=0,M;sr(V.expression)?(bLr(V.expression.text),M=V.expression):[P,M]=BLr(R,V.expression),b===6?tu(R.right)&&R.right.properties.length>0&&(vY(R,M),mu(R.right,q6),dP()):WA(R.right)||fd(R.right)?pP(n,R.right,M):(vY(R,M),pP(n,R.right,N.name),dP()),ELr(P);return}case 7:case 9:{let R=n,N=b===7?R.arguments[0]:R.arguments[0].expression,V=R.arguments[1],[P,M]=BLr(n,N);vY(n,M),vY(n,un(_e.createIdentifier(V.text),V)),q6(n.arguments[2]),dP(),dP(),ELr(P);return}case 5:{let R=n,N=R.left,V=N.expression;if(sr(V)&&UR(N)!=="prototype"&&Hte&&Hte.has(V.text)){WA(R.right)||fd(R.right)?pP(n,R.right,V):$9(N)&&(vY(R,V),pP(R.left,R.right,see(N)),dP());return}break}case 4:case 0:case 8:break;default:w.assertNever(b)}}default:hy(n)&&X(n.jsDoc,b=>{X(b.tags,R=>{w2(R)&&BY(R)})}),mu(n,q6)}}function eze(n,c){let u=new Map;er(n,(d,I)=>{let h=d.name||vl(d.node),b=h&&yFe(h);if(!b)return!0;let R=u.get(b);if(!R)return u.set(b,d),!0;if(R instanceof Array){for(let N of R)if(SLr(N,d,I,c))return!1;return R.push(d),!0}else{let N=R;return SLr(N,d,I,c)?!1:(u.set(b,[N,d]),!0)}})}var r0e={5:!0,3:!0,7:!0,9:!0,0:!1,1:!1,2:!1,8:!1,6:!0,4:!1};function eqi(n,c,u,d){function I(R){return WA(R)||mp(R)||zs(R)}let h=no(c.node)||cu(c.node)?CI(c.node):0,b=no(n.node)||cu(n.node)?CI(n.node):0;if(r0e[h]&&r0e[b]||I(n.node)&&r0e[h]||I(c.node)&&r0e[b]||bc(n.node)&&ZFt(n.node)&&r0e[h]||bc(c.node)&&r0e[b]||bc(n.node)&&ZFt(n.node)&&I(c.node)||bc(c.node)&&I(n.node)&&ZFt(n.node)){let R=n.additionalNodes&&qo(n.additionalNodes)||n.node;if(!bc(n.node)&&!bc(c.node)||I(n.node)||I(c.node)){let V=I(n.node)?n.node:I(c.node)?c.node:void 0;if(V!==void 0){let P=un(_e.createConstructorDeclaration(void 0,[],void 0),V),M=GFt(P);M.indent=n.indent+1,M.children=n.node===V?n.children:c.children,n.children=n.node===V?vi([M],c.children||[c]):vi(n.children||[{...n}],[M])}else(n.children||c.children)&&(n.children=vi(n.children||[{...n}],c.children||[c]),n.children&&(eze(n.children,n),LFt(n.children)));R=n.node=un(_e.createClassDeclaration(void 0,n.name||_e.createIdentifier("__class__"),void 0,void 0,[]),n.node)}else n.children=vi(n.children,c.children),n.children&&eze(n.children,n);let N=c.node;return d.children[u-1].node.end===R.end?un(R,{pos:R.pos,end:N.end}):(n.additionalNodes||(n.additionalNodes=[]),n.additionalNodes.push(un(_e.createClassDeclaration(void 0,n.name||_e.createIdentifier("__class__"),void 0,void 0,[]),c.node))),!0}return h!==0}function SLr(n,c,u,d){return eqi(n,c,u,d)?!0:tqi(n.node,c.node,d)?(rqi(n,c),!0):!1}function tqi(n,c,u){if(n.kind!==c.kind||n.parent!==c.parent&&!(wLr(n,u)&&wLr(c,u)))return!1;switch(n.kind){case 172:case 174:case 177:case 178:return $u(n)===$u(c);case 267:return TLr(n,c)&&PFt(n)===PFt(c);default:return!0}}function ZFt(n){return!!(n.flags&16)}function wLr(n,c){let u=SN(n.parent)?n.parent.parent:n.parent;return u===c.node||Ue(c.additionalNodes,u)}function TLr(n,c){return!n.body||!c.body?n.body===c.body:n.body.kind===c.body.kind&&(n.body.kind!==267||TLr(n.body,c.body))}function rqi(n,c){n.additionalNodes=n.additionalNodes||[],n.additionalNodes.push(c.node),c.additionalNodes&&n.additionalNodes.push(...c.additionalNodes),n.children=vi(n.children,c.children),n.children&&(eze(n.children,n),LFt(n.children))}function LFt(n){n.sort(nqi)}function nqi(n,c){return Li(NLr(n.node),NLr(c.node))||Xl($je(n),$je(c))}function NLr(n){if(n.kind===267)return DLr(n);let c=vl(n);if(c&&NI(c)){let u=nV(c);return u&&Sc(u)}switch(n.kind){case 218:case 219:case 231:return GLr(n);default:return}}function VFt(n,c){if(n.kind===267)return Nue(DLr(n));if(c){let u=sr(c)?c.text:hA(c)?`[${yFe(c.argumentExpression)}]`:yFe(c);if(u.length>0)return Nue(u)}switch(n.kind){case 307:let u=n;return mm(u)?`"${tT(xA(o0(Mc(u.fileName))))}"`:"";case 277:return tf(n)&&n.isExportEquals?"export=":"default";case 219:case 262:case 218:case 263:case 231:return zR(n)&2048?"default":GLr(n);case 176:return"constructor";case 180:return"new()";case 179:return"()";case 181:return"[]";default:return""}}function iqi(n){let c=[];function u(I){if(d(I)&&(c.push(I),I.children))for(let h of I.children)u(h)}return u(n),c;function d(I){if(I.children)return!0;switch($je(I)){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 h(I);default:return!1}function h(b){if(!b.node.body)return!1;switch($je(b.parent)){case 268:case 307:case 174:case 176:return!0;default:return!1}}}}function RLr(n){return{text:VFt(n.node,n.name),kind:_Y(n.node),kindModifiers:kLr(n.node),spans:WFt(n),nameSpan:n.name&&OFt(n.name),childItems:Ot(n.children,RLr)}}function sqi(n){return{text:VFt(n.node,n.name),kind:_Y(n.node),kindModifiers:kLr(n.node),spans:WFt(n),childItems:Ot(n.children,c)||kFt,indent:n.indent,bolded:!1,grayed:!1};function c(u){return{text:VFt(u.node,u.name),kind:_Y(u.node),kindModifiers:Cue(u.node),spans:WFt(u),childItems:kFt,indent:0,bolded:!1,grayed:!1}}}function WFt(n){let c=[OFt(n.node)];if(n.additionalNodes)for(let u of n.additionalNodes)c.push(OFt(u));return c}function DLr(n){return Yf(n)?Tf(n.name):PFt(n)}function PFt(n){let c=[T2(n.name)];for(;n.body&&n.body.kind===267;)n=n.body,c.push(T2(n.name));return c.join(".")}function xLr(n){return n.body&&CC(n.body)?xLr(n.body):n}function oqi(n){return!n.name||n.name.kind===167}function OFt(n){return n.kind===307?TV(n):Ey(n,t0e)}function kLr(n){return n.parent&&n.parent.kind===260&&(n=n.parent),Cue(n)}function GLr(n){let{parent:c}=n;if(n.name&&SX(n.name)>0)return Nue(xd(n.name));if(zs(c))return Nue(xd(c.name));if(no(c)&&c.operatorToken.kind===64)return yFe(c.left).replace($zi,"");if(KC(c))return yFe(c.name);if(zR(n)&2048)return"default";if(Sa(n))return"";if(cu(c)){let u=FLr(c.expression);if(u!==void 0){if(u=Nue(u),u.length>xFt)return`${u} callback`;let d=Nue(tr(c.arguments,I=>XA(I)||x1(I)?I.getText(t0e):void 0).join(", "));return`${u}(${d}) callback`}}return""}function FLr(n){if(sr(n))return n.text;if(Io(n)){let c=FLr(n.expression),u=n.name.text;return c===void 0?u:`${c}.${u}`}else return}function aqi(n){switch(n.kind){case 219:case 218:case 231:return!0;default:return!1}}function Nue(n){return n=n.length>xFt?n.substring(0,xFt)+"...":n,n.replace(/\\?(\r?\n|\r|\u2028|\u2029)/g,"")}var $6={};o($6,{addExportToChanges:()=>i9r,addExportsInOldFile:()=>qFt,addImportsForMovedSymbols:()=>eZt,addNewFileToTsconfig:()=>zFt,addOrRemoveBracesToArrowFunction:()=>Uqi,addTargetFileImports:()=>lZt,containsJsx:()=>iZt,convertArrowFunctionOrFunctionExpression:()=>$qi,convertParamsToDestructuredObject:()=>u$i,convertStringOrTemplateLiteral:()=>T$i,convertToOptionalChainExpression:()=>V$i,createNewFileName:()=>nZt,deleteMovedStatements:()=>XLr,deleteUnusedImports:()=>$Lr,deleteUnusedOldImports:()=>JLr,doChangeNamedToNamespaceOrDefault:()=>OLr,extractSymbol:()=>P9r,filterImport:()=>r9r,forEachImportInStatement:()=>$Ft,generateGetAccessorAndSetAccessor:()=>yes,getApplicableRefactors:()=>cqi,getEditsForRefactor:()=>lqi,getExistingLocals:()=>aZt,getIdentifierForNode:()=>cZt,getNewStatementsAndRemoveFromOldFile:()=>jFt,getStatementsToMove:()=>n0e,getTopLevelDeclarationStatement:()=>rZt,getUsageInfo:()=>bFe,inferFunctionReturnType:()=>bes,isRefactorErrorInfo:()=>ZG,isTopLevelDeclaration:()=>lze,moduleSpecifierFromImport:()=>jLr,nameOfTopLevelDeclaration:()=>n9r,refactorKindBeginsWith:()=>fP,registerRefactor:()=>Yx,updateImportsInOtherFiles:()=>ULr});var MFt=new Map;function Yx(n,c){MFt.set(n,c)}function cqi(n,c){return on(Or(MFt.values(),u=>{var d;return n.cancellationToken&&n.cancellationToken.isCancellationRequested()||!((d=u.kinds)!=null&&d.some(I=>fP(I,n.kind)))?void 0:u.getAvailableActions(n,c)}))}function lqi(n,c,u,d){let I=MFt.get(c);return I&&I.getEditsForAction(n,u,d)}var QFt="Convert export",tze={name:"Convert default export to named export",description:eu(Z.Convert_default_export_to_named_export),kind:"refactor.rewrite.export.named"},rze={name:"Convert named export to default export",description:eu(Z.Convert_named_export_to_default_export),kind:"refactor.rewrite.export.default"};Yx(QFt,{kinds:[tze.kind,rze.kind],getAvailableActions:function(c){let u=ZLr(c,c.triggerReason==="invoked");if(!u)return v;if(!ZG(u)){let d=u.wasDefault?tze:rze;return[{name:QFt,description:d.description,actions:[d]}]}return c.preferences.provideRefactorNotApplicableReason?[{name:QFt,description:eu(Z.Convert_default_export_to_named_export),actions:[{...tze,notApplicableReason:u.error},{...rze,notApplicableReason:u.error}]}]:v},getEditsForAction:function(c,u){w.assert(u===tze.name||u===rze.name,"Unexpected action name");let d=ZLr(c);return w.assert(d&&!ZG(d),"Expected applicable refactor info"),{edits:po.ChangeTracker.with(c,h=>uqi(c.file,c.program,d,h,c.cancellationToken)),renameFilename:void 0,renameLocation:void 0}}});function ZLr(n,c=!0){let{file:u,program:d}=n,I=z6(n),h=Qc(u,I.start),b=h.parent&&zR(h.parent)&32&&c?h.parent:Y_e(h,u,I);if(!b||!Gc(b.parent)&&!(SN(b.parent)&&Yf(b.parent.parent)))return{error:eu(Z.Could_not_find_export_statement)};let R=d.getTypeChecker(),N=fqi(b.parent,R),V=zR(b)||(tf(b)&&!b.isExportEquals?2080:0),P=!!(V&2048);if(!(V&32)||!P&&N.exports.has("default"))return{error:eu(Z.This_file_already_has_a_default_export)};let M=te=>sr(te)&&R.getSymbolAtLocation(te)?void 0:{error:eu(Z.Can_only_convert_named_export)};switch(b.kind){case 262:case 263:case 264:case 266:case 265:case 267:{let te=b;return te.name?M(te.name)||{exportNode:te,exportName:te.name,wasDefault:P,exportingModuleSymbol:N}:void 0}case 243:{let te=b;if(!(te.declarationList.flags&2)||te.declarationList.declarations.length!==1)return;let re=$s(te.declarationList.declarations);return re.initializer?(w.assert(!P,"Can't have a default flag here"),M(re.name)||{exportNode:te,exportName:re.name,wasDefault:P,exportingModuleSymbol:N}):void 0}case 277:{let te=b;return te.isExportEquals?void 0:M(te.expression)||{exportNode:te,exportName:te.expression,wasDefault:P,exportingModuleSymbol:N}}default:return}}function uqi(n,c,u,d,I){gqi(n,u,d,c.getTypeChecker()),Aqi(c,u,d,I)}function gqi(n,{wasDefault:c,exportNode:u,exportName:d},I,h){if(c)if(tf(u)&&!u.isExportEquals){let b=u.expression,R=LLr(b.text,b.text);I.replaceNode(n,u,_e.createExportDeclaration(void 0,!1,_e.createNamedExports([R])))}else I.delete(n,w.checkDefined(Lte(u,90),"Should find a default keyword in modifier list"));else{let b=w.checkDefined(Lte(u,95),"Should find an export keyword in modifier list");switch(u.kind){case 262:case 263:case 264:I.insertNodeAfter(n,b,_e.createToken(90));break;case 243:let R=$s(u.declarationList.declarations);if(!Yp.Core.isSymbolReferencedInFile(d,h,n)&&!R.type){I.replaceNode(n,u,_e.createExportDefault(w.checkDefined(R.initializer,"Initializer was previously known to be present")));break}case 266:case 265:case 267:I.deleteModifier(n,b),I.insertNodeAfter(n,u,_e.createExportDefault(_e.createIdentifier(d.text)));break;default:w.fail(`Unexpected exportNode kind ${u.kind}`)}}}function Aqi(n,{wasDefault:c,exportName:u,exportingModuleSymbol:d},I,h){let b=n.getTypeChecker(),R=w.checkDefined(b.getSymbolAtLocation(u),"Export name should resolve to a symbol");Yp.Core.eachExportReference(n.getSourceFiles(),b,h,R,d,u.text,c,N=>{if(u===N)return;let V=N.getSourceFile();c?dqi(V,N,I,u.text):pqi(V,N,I)})}function dqi(n,c,u,d){let{parent:I}=c;switch(I.kind){case 211:u.replaceNode(n,c,_e.createIdentifier(d));break;case 276:case 281:{let b=I;u.replaceNode(n,b,YFt(d,b.name.text));break}case 273:{let b=I;w.assert(b.name===c,"Import clause name should match provided ref");let R=YFt(d,c.text),{namedBindings:N}=b;if(!N)u.replaceNode(n,c,_e.createNamedImports([R]));else if(N.kind===274){u.deleteRange(n,{pos:c.getStart(n),end:N.getStart(n)});let V=bu(b.parent.moduleSpecifier)?sje(b.parent.moduleSpecifier,n):1,P=NV(void 0,[YFt(d,c.text)],b.parent.moduleSpecifier,V);u.insertNodeAfter(n,b.parent,P)}else u.delete(n,c),u.insertNodeAtEndOfList(n,N.elements,R);break}case 205:let h=I;u.replaceNode(n,I,_e.createImportTypeNode(h.argument,h.attributes,_e.createIdentifier(d),h.typeArguments,h.isTypeOf));break;default:w.failBadSyntaxKind(I)}}function pqi(n,c,u){let d=c.parent;switch(d.kind){case 211:u.replaceNode(n,c,_e.createIdentifier("default"));break;case 276:{let I=_e.createIdentifier(d.name.text);d.parent.elements.length===1?u.replaceNode(n,d.parent,I):(u.delete(n,d),u.insertNodeBefore(n,d.parent,I));break}case 281:{u.replaceNode(n,d,LLr("default",d.name.text));break}default:w.assertNever(d,`Unexpected parent kind ${d.kind}`)}}function YFt(n,c){return _e.createImportSpecifier(!1,n===c?void 0:_e.createIdentifier(n),_e.createIdentifier(c))}function LLr(n,c){return _e.createExportSpecifier(!1,n===c?void 0:_e.createIdentifier(n),_e.createIdentifier(c))}function fqi(n,c){if(Gc(n))return n.symbol;let u=n.parent.symbol;return u.valueDeclaration&&XR(u.valueDeclaration)?c.getMergedSymbol(u):u}var HFt="Convert import",nze={0:{name:"Convert namespace import to named imports",description:eu(Z.Convert_namespace_import_to_named_imports),kind:"refactor.rewrite.import.named"},2:{name:"Convert named imports to namespace import",description:eu(Z.Convert_named_imports_to_namespace_import),kind:"refactor.rewrite.import.namespace"},1:{name:"Convert named imports to default import",description:eu(Z.Convert_named_imports_to_default_import),kind:"refactor.rewrite.import.default"}};Yx(HFt,{kinds:us(nze).map(n=>n.kind),getAvailableActions:function(c){let u=VLr(c,c.triggerReason==="invoked");if(!u)return v;if(!ZG(u)){let d=nze[u.convertTo];return[{name:HFt,description:d.description,actions:[d]}]}return c.preferences.provideRefactorNotApplicableReason?us(nze).map(d=>({name:HFt,description:d.description,actions:[{...d,notApplicableReason:u.error}]})):v},getEditsForAction:function(c,u){w.assert(lr(us(nze),h=>h.name===u),"Unexpected action name");let d=VLr(c);return w.assert(d&&!ZG(d),"Expected applicable refactor info"),{edits:po.ChangeTracker.with(c,h=>Iqi(c.file,c.program,h,d)),renameFilename:void 0,renameLocation:void 0}}});function VLr(n,c=!0){let{file:u}=n,d=z6(n),I=Qc(u,d.start),h=c?Si(I,pg(mI,RN)):Y_e(I,u,d);if(h===void 0||!(mI(h)||RN(h)))return{error:"Selection is not an import declaration."};let b=d.start+d.length,R=yY(h,h.parent,u);if(R&&b>R.getStart())return;let{importClause:N}=h;return N?N.namedBindings?N.namedBindings.kind===274?{convertTo:0,import:N.namedBindings}:WLr(n.program,N)?{convertTo:1,import:N.namedBindings}:{convertTo:2,import:N.namedBindings}:{error:eu(Z.Could_not_find_namespace_import_or_named_imports)}:{error:eu(Z.Could_not_find_import_clause)}}function WLr(n,c){return JQ(n.getCompilerOptions())&&hqi(c.parent.moduleSpecifier,n.getTypeChecker())}function Iqi(n,c,u,d){let I=c.getTypeChecker();d.convertTo===0?Cqi(n,I,u,d.import,JQ(c.getCompilerOptions())):OLr(n,c,u,d.import,d.convertTo===1)}function Cqi(n,c,u,d,I){let h=!1,b=[],R=new Map;Yp.Core.eachSymbolReferenceInFile(d.name,c,n,M=>{if(!mQ(M.parent))h=!0;else{let te=PLr(M.parent).text;c.resolveName(te,M,-1,!0)&&R.set(te,!0),w.assert(mqi(M.parent)===M,"Parent expression should match id"),b.push(M.parent)}});let N=new Map;for(let M of b){let te=PLr(M).text,re=N.get(te);re===void 0&&N.set(te,re=R.has(te)?E4(te,n):te),u.replaceNode(n,M,_e.createIdentifier(re))}let V=[];N.forEach((M,te)=>{V.push(_e.createImportSpecifier(!1,M===te?void 0:_e.createIdentifier(te),_e.createIdentifier(M)))});let P=d.parent.parent;if(h&&!I&&mI(P))u.insertNodeAfter(n,P,MLr(P,void 0,V));else{let M=h?_e.createIdentifier(d.name.text):void 0;u.replaceNode(n,d.parent,QLr(M,V))}}function PLr(n){return Io(n)?n.name:n.right}function mqi(n){return Io(n)?n.expression:n.left}function OLr(n,c,u,d,I=WLr(c,d.parent)){let h=c.getTypeChecker(),b=d.parent.parent,{moduleSpecifier:R}=b,N=new Set;d.elements.forEach(ue=>{let Ae=h.getSymbolAtLocation(ue.name);Ae&&N.add(Ae)});let V=R&&bu(R)?z_e(R.text,99):"module";function P(ue){return!!Yp.Core.eachSymbolReferenceInFile(ue.name,h,n,Ae=>{let de=h.resolveName(V,Ae,-1,!0);return de?N.has(de)?c0(Ae.parent):!0:!1})}let te=d.elements.some(P)?E4(V,n):V,re=new Set;for(let ue of d.elements){let Ae=(ue.propertyName||ue.name).text;Yp.Core.eachSymbolReferenceInFile(ue.name,h,n,de=>{let Be=_e.createPropertyAccessExpression(_e.createIdentifier(te),Ae);G_(de.parent)?u.replaceNode(n,de.parent,_e.createPropertyAssignment(de.text,Be)):c0(de.parent)?re.add(ue):u.replaceNode(n,de,Be)})}if(u.replaceNode(n,d,I?_e.createIdentifier(te):_e.createNamespaceImport(_e.createIdentifier(te))),re.size&&mI(b)){let ue=on(re.values(),Ae=>_e.createImportSpecifier(Ae.isTypeOnly,Ae.propertyName&&_e.createIdentifier(Ae.propertyName.text),_e.createIdentifier(Ae.name.text)));u.insertNodeAfter(n,d.parent.parent,MLr(b,void 0,ue))}}function hqi(n,c){let u=c.resolveExternalModuleName(n);if(!u)return!1;let d=c.resolveExternalModuleSymbol(u);return u!==d}function MLr(n,c,u){return _e.createImportDeclaration(void 0,QLr(c,u),n.moduleSpecifier,void 0)}function QLr(n,c){return _e.createImportClause(!1,n,c&&c.length?_e.createNamedImports(c):void 0)}var XFt="Extract type",ize={name:"Extract to type alias",description:eu(Z.Extract_to_type_alias),kind:"refactor.extract.type"},sze={name:"Extract to interface",description:eu(Z.Extract_to_interface),kind:"refactor.extract.interface"},oze={name:"Extract to typedef",description:eu(Z.Extract_to_typedef),kind:"refactor.extract.typedef"};Yx(XFt,{kinds:[ize.kind,sze.kind,oze.kind],getAvailableActions:function(c){let{info:u,affectedTextRange:d}=YLr(c,c.triggerReason==="invoked");return u?ZG(u)?c.preferences.provideRefactorNotApplicableReason?[{name:XFt,description:eu(Z.Extract_type),actions:[{...oze,notApplicableReason:u.error},{...ize,notApplicableReason:u.error},{...sze,notApplicableReason:u.error}]}]:v:[{name:XFt,description:eu(Z.Extract_type),actions:u.isJS?[oze]:Hr([ize],u.typeElements&&sze)}].map(h=>({...h,actions:h.actions.map(b=>({...b,range:d?{start:{line:Ll(c.file,d.pos).line,offset:Ll(c.file,d.pos).character},end:{line:Ll(c.file,d.end).line,offset:Ll(c.file,d.end).character}}:void 0}))})):v},getEditsForAction:function(c,u){let{file:d}=c,{info:I}=YLr(c);w.assert(I&&!ZG(I),"Expected to find a range to extract");let h=E4("NewType",d),b=po.ChangeTracker.with(c,V=>{switch(u){case ize.name:return w.assert(!I.isJS,"Invalid actionName/JS combo"),bqi(V,d,h,I);case oze.name:return w.assert(I.isJS,"Invalid actionName/JS combo"),Bqi(V,c,d,h,I);case sze.name:return w.assert(!I.isJS&&!!I.typeElements,"Invalid actionName/JS combo"),Eqi(V,d,h,I);default:w.fail("Unexpected action name")}}),R=d.fileName,N=J_e(b,R,h,!1);return{edits:b,renameFilename:R,renameLocation:N}}});function YLr(n,c=!0){let{file:u,startPosition:d}=n,I=n0(u),h=MGe(z6(n)),b=h.pos===h.end&&c,R=_qi(u,d,h,b);if(!R||!Ya(R))return{info:{error:eu(Z.Selection_is_not_a_valid_type_node)},affectedTextRange:void 0};let N=n.program.getTypeChecker(),V=vqi(R,I);if(V===void 0)return{info:{error:eu(Z.No_type_could_be_extracted_from_this_type_node)},affectedTextRange:void 0};let P=Sqi(R,V);if(!Ya(P))return{info:{error:eu(Z.Selection_is_not_a_valid_type_node)},affectedTextRange:void 0};let M=[];(Is(P.parent)||ji(P.parent))&&h.end>R.end&&ai(M,P.parent.types.filter(de=>xGe(de,u,h.pos,h.end)));let te=M.length>1?M:P,{typeParameters:re,affectedTextRange:ue}=yqi(N,te,V,u);if(!re)return{info:{error:eu(Z.No_type_could_be_extracted_from_this_type_node)},affectedTextRange:void 0};let Ae=aze(N,te);return{info:{isJS:I,selection:te,enclosingNode:V,typeParameters:re,typeElements:Ae},affectedTextRange:ue}}function _qi(n,c,u,d){let I=[()=>Qc(n,c),()=>Fte(n,c,()=>!0)];for(let h of I){let b=h(),R=xGe(b,n,u.pos,u.end),N=Si(b,V=>V.parent&&Ya(V)&&!SY(u,V.parent,n)&&(d||R));if(N)return N}}function aze(n,c){if(c){if(Ra(c)){let u=[];for(let d of c){let I=aze(n,d);if(!I)return;ai(u,I)}return u}if(ji(c)){let u=[],d=new Map;for(let I of c.types){let h=aze(n,I);if(!h||!h.every(b=>b.name&&R2(d,M_e(b.name))))return;ai(u,h)}return u}else{if(ro(c))return aze(n,c.type);if(Se(c))return c.members}}}function SY(n,c,u){return Z_e(n,Ju(u.text,c.pos),c.end)}function yqi(n,c,u,d){let I=[],h=ys(c),b={pos:h[0].getStart(d),end:h[h.length-1].end};for(let N of h)if(R(N))return{typeParameters:void 0,affectedTextRange:void 0};return{typeParameters:I,affectedTextRange:b};function R(N){if(F(N)){if(sr(N.typeName)){let V=N.typeName,P=n.resolveName(V.text,V,262144,!0);for(let M of P?.declarations||v)if(qp(M)&&M.getSourceFile()===d){if(M.name.escapedText===V.escapedText&&SY(M,b,d))return!0;if(SY(u,M,d)&&!SY(b,M,d)){pa(I,M);break}}}}else if(bo(N)){let V=Si(N,P=>Ei(P)&&SY(P.extendsType,N,d));if(!V||!SY(b,V,d))return!0}else if(S(N)||ca(N)){let V=Si(N.parent,$l);if(V&&V.type&&SY(V.type,N,d)&&!SY(b,V,d))return!0}else if(oe(N)){if(sr(N.exprName)){let V=n.resolveName(N.exprName.text,N.exprName,111551,!1);if(V?.valueDeclaration&&SY(u,V.valueDeclaration,d)&&!SY(b,V.valueDeclaration,d))return!0}else if(_G(N.exprName.left)&&!SY(b,N.parent,d))return!0}return d&&Ct(N)&&Ll(d,N.pos).line===Ll(d,N.end).line&&co(N,1),mu(N,R)}}function bqi(n,c,u,d){let{enclosingNode:I,typeParameters:h}=d,{firstTypeNode:b,lastTypeNode:R,newTypeNode:N}=JFt(d),V=_e.createTypeAliasDeclaration(void 0,u,h.map(P=>_e.updateTypeParameterDeclaration(P,P.modifiers,P.name,P.constraint,void 0)),N);n.insertNodeBefore(c,I,The(V),!0),n.replaceNodeRange(c,b,R,_e.createTypeReferenceNode(u,h.map(P=>_e.createTypeReferenceNode(P.name,void 0))),{leadingTriviaOption:po.LeadingTriviaOption.Exclude,trailingTriviaOption:po.TrailingTriviaOption.ExcludeWhitespace})}function Eqi(n,c,u,d){var I;let{enclosingNode:h,typeParameters:b,typeElements:R}=d,N=_e.createInterfaceDeclaration(void 0,u,b,void 0,R);un(N,(I=R[0])==null?void 0:I.parent),n.insertNodeBefore(c,h,The(N),!0);let{firstTypeNode:V,lastTypeNode:P}=JFt(d);n.replaceNodeRange(c,V,P,_e.createTypeReferenceNode(u,b.map(M=>_e.createTypeReferenceNode(M.name,void 0))),{leadingTriviaOption:po.LeadingTriviaOption.Exclude,trailingTriviaOption:po.TrailingTriviaOption.ExcludeWhitespace})}function Bqi(n,c,u,d,I){var h;ys(I.selection).forEach(ue=>{co(ue,7168)});let{enclosingNode:b,typeParameters:R}=I,{firstTypeNode:N,lastTypeNode:V,newTypeNode:P}=JFt(I),M=_e.createJSDocTypedefTag(_e.createIdentifier("typedef"),_e.createJSDocTypeExpression(P),_e.createIdentifier(d)),te=[];X(R,ue=>{let Ae=Kw(ue),de=_e.createTypeParameterDeclaration(void 0,ue.name),Be=_e.createJSDocTemplateTag(_e.createIdentifier("template"),Ae&&ps(Ae,rP),[de]);te.push(Be)});let re=_e.createJSDocComment(void 0,_e.createNodeArray(vi(te,[M])));if(aT(b)){let ue=b.getStart(u),Ae=WZ(c.host,(h=c.formatContext)==null?void 0:h.options);n.insertNodeAt(u,b.getStart(u),re,{suffix:Ae+Ae+u.text.slice(zGe(u.text,ue-1),ue)})}else n.insertNodeBefore(u,b,re,!0);n.replaceNodeRange(u,N,V,_e.createTypeReferenceNode(d,R.map(ue=>_e.createTypeReferenceNode(ue.name,void 0))))}function JFt(n){return Ra(n.selection)?{firstTypeNode:n.selection[0],lastTypeNode:n.selection[n.selection.length-1],newTypeNode:Is(n.selection[0].parent)?_e.createUnionTypeNode(n.selection):_e.createIntersectionTypeNode(n.selection)}:{firstTypeNode:n.selection,lastTypeNode:n.selection,newTypeNode:n.selection}}function vqi(n,c){return Si(n,Ic)||(c?Si(n,aT):void 0)}function Sqi(n,c){return Si(n,u=>u===c?"quit":!!(Is(u.parent)||ji(u.parent)))??n}var cze="Move to file",UFt=eu(Z.Move_to_file),KFt={name:"Move to file",description:UFt,kind:"refactor.move.file"};Yx(cze,{kinds:[KFt.kind],getAvailableActions:function(c,u){let d=c.file,I=n0e(c);if(!u)return v;if(c.triggerReason==="implicit"&&c.endPosition!==void 0){let h=Si(Qc(d,c.startPosition),Qte),b=Si(Qc(d,c.endPosition),Qte);if(h&&!Gc(h)&&b&&!Gc(b))return v}if(c.preferences.allowTextChangesInNewFiles&&I){let h={start:{line:Ll(d,I.all[0].getStart(d)).line,offset:Ll(d,I.all[0].getStart(d)).character},end:{line:Ll(d,Na(I.all).end).line,offset:Ll(d,Na(I.all).end).character}};return[{name:cze,description:UFt,actions:[{...KFt,range:h}]}]}return c.preferences.provideRefactorNotApplicableReason?[{name:cze,description:UFt,actions:[{...KFt,notApplicableReason:eu(Z.Selection_is_not_a_valid_statement_or_statements)}]}]:v},getEditsForAction:function(c,u,d){w.assert(u===cze,"Wrong refactor invoked");let I=w.checkDefined(n0e(c)),{host:h,program:b}=c;w.assert(d,"No interactive refactor arguments available");let R=d.targetFile;return mN(R)||KQ(R)?h.fileExists(R)&&b.getSourceFile(R)===void 0?HLr(eu(Z.Cannot_move_statements_to_the_selected_file)):{edits:po.ChangeTracker.with(c,V=>wqi(c,c.file,d.targetFile,c.program,I,V,c.host,c.preferences)),renameFilename:void 0,renameLocation:void 0}:HLr(eu(Z.Cannot_move_to_file_selected_file_is_invalid))}});function HLr(n){return{edits:[],renameFilename:void 0,renameLocation:void 0,notApplicableReason:n}}function wqi(n,c,u,d,I,h,b,R){let N=d.getTypeChecker(),V=!b.fileExists(u),P=V?fFe(u,c.externalModuleIndicator?99:c.commonJsModuleIndicator?1:void 0,d,b):w.checkDefined(d.getSourceFile(u)),M=d0.createImportAdder(c,n.program,n.preferences,n.host),te=d0.createImportAdder(P,n.program,n.preferences,n.host);jFt(c,P,bFe(c,I.all,N,V?void 0:aZt(P,I.all,N)),h,I,d,b,R,te,M),V&&zFt(d,h,c.fileName,u,Dx(b))}function jFt(n,c,u,d,I,h,b,R,N,V){let P=h.getTypeChecker(),M=Zf(n.statements,QI),te=!Gje(c.fileName,h,b,!!n.commonJsModuleIndicator),re=W2(n,R);eZt(u.oldFileImportsFromTargetFile,c.fileName,V,h),JLr(n,I.all,u.unusedImportsFromOldFile,V),V.writeFixes(d,re),XLr(n,I.ranges,d),ULr(d,h,b,n,u.movedSymbols,c.fileName,re),qFt(n,u.targetFileImportsFromOldFile,d,te),lZt(n,u.oldImportsNeededByTargetFile,u.targetFileImportsFromOldFile,P,h,N),!JR(c)&&M.length&&d.insertStatementsInNewFile(c.fileName,M,n),N.writeFixes(d,re);let ue=xqi(n,I.all,on(u.oldFileImportsFromTargetFile.keys()),te);JR(c)&&c.statements.length>0?Hqi(d,h,ue,c,I):JR(c)?d.insertNodesAtEndOfFile(c,ue,!1):d.insertStatementsInNewFile(c.fileName,N.hasFixes()?[4,...ue]:ue,n)}function zFt(n,c,u,d,I){let h=n.getCompilerOptions().configFile;if(!h)return;let b=Mc(xo(u,"..",d)),R=w1(h.fileName,b,I),N=h.statements[0]&&eo(h.statements[0].expression,tu),V=N&&be(N.properties,P=>KC(P)&&bu(P.name)&&P.name.text==="files");V&&If(V.initializer)&&c.insertNodeInListAfter(h,Na(V.initializer.elements),_e.createStringLiteral(R),V.initializer.elements)}function XLr(n,c,u){for(let{first:d,afterLast:I}of c)u.deleteNodeRangeExcludingEnd(n,d,I)}function JLr(n,c,u,d){for(let I of n.statements)Ue(c,I)||$Ft(I,h=>{zLr(h,b=>{u.has(b.symbol)&&d.removeExistingImport(b)})})}function qFt(n,c,u,d){let I=Zte();c.forEach((h,b)=>{if(b.declarations)for(let R of b.declarations){if(!lze(R))continue;let N=n9r(R);if(!N)continue;let V=rZt(R);I(V)&&i9r(n,V,N,u,d)}})}function ULr(n,c,u,d,I,h,b){let R=c.getTypeChecker();for(let N of c.getSourceFiles())if(N!==d)for(let V of N.statements)$Ft(V,P=>{if(R.getSymbolAtLocation(jLr(P))!==d.symbol)return;let M=de=>{let Be=ml(de.parent)?UGe(R,de.parent):dh(R.getSymbolAtLocation(de),R);return!!Be&&I.has(Be)};$Lr(N,P,n,M);let te=q_(aa(Oc(d.fileName,c.getCurrentDirectory())),h);if(zl(!c.useCaseSensitiveFileNames())(te,N.fileName)===0)return;let re=Xkr(c.getCompilerOptions(),N,N.fileName,te,j6(c,u)),ue=r9r(P,hue(re,b),M);ue&&n.insertNodeAfter(N,V,ue);let Ae=Tqi(P);Ae&&Nqi(n,N,R,I,re,Ae,P,b)})}function Tqi(n){switch(n.kind){case 272:return n.importClause&&n.importClause.namedBindings&&n.importClause.namedBindings.kind===274?n.importClause.namedBindings.name:void 0;case 271:return n.name;case 260:return eo(n.name,sr);default:return w.assertNever(n,`Unexpected node kind ${n.kind}`)}}function Nqi(n,c,u,d,I,h,b,R){let N=z_e(I,99),V=!1,P=[];if(Yp.Core.eachSymbolReferenceInFile(h,u,c,M=>{Io(M.parent)&&(V=V||!!u.resolveName(N,M,-1,!0),d.has(u.getSymbolAtLocation(M.parent.name))&&P.push(M))}),P.length){let M=V?E4(N,c):N;for(let te of P)n.replaceNode(c,te,_e.createIdentifier(M));n.insertNodeAfter(c,b,Rqi(b,N,I,R))}}function Rqi(n,c,u,d){let I=_e.createIdentifier(c),h=hue(u,d);switch(n.kind){case 272:return _e.createImportDeclaration(void 0,_e.createImportClause(!1,void 0,_e.createNamespaceImport(I)),h,void 0);case 271:return _e.createImportEqualsDeclaration(void 0,!1,I,_e.createExternalModuleReference(h));case 260:return _e.createVariableDeclaration(I,void 0,void 0,KLr(h));default:return w.assertNever(n,`Unexpected node kind ${n.kind}`)}}function KLr(n){return _e.createCallExpression(_e.createIdentifier("require"),void 0,[n])}function jLr(n){return n.kind===272?n.moduleSpecifier:n.kind===271?n.moduleReference.expression:n.initializer.arguments[0]}function $Ft(n,c){if(mI(n))bu(n.moduleSpecifier)&&c(n);else if(Cm(n))DG(n.moduleReference)&&XA(n.moduleReference.expression)&&c(n);else if(Rp(n))for(let u of n.declarationList.declarations)u.initializer&&Q0(u.initializer,!0)&&c(u)}function zLr(n,c){var u,d,I,h,b;if(n.kind===272){if((u=n.importClause)!=null&&u.name&&c(n.importClause),((I=(d=n.importClause)==null?void 0:d.namedBindings)==null?void 0:I.kind)===274&&c(n.importClause.namedBindings),((b=(h=n.importClause)==null?void 0:h.namedBindings)==null?void 0:b.kind)===275)for(let R of n.importClause.namedBindings.elements)c(R)}else if(n.kind===271)c(n);else if(n.kind===260){if(n.name.kind===80)c(n);else if(n.name.kind===206)for(let R of n.name.elements)sr(R.name)&&c(R)}}function eZt(n,c,u,d){for(let[I,h]of n){let b=cFe(I,iA(d.getCompilerOptions())),R=I.name==="default"&&I.parent?1:0;u.addImportForNonExistentExport(b,c,R,I.flags,h)}}function Dqi(n,c,u,d=2){return _e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(n,void 0,c,u)],d))}function xqi(n,c,u,d){return Fr(c,I=>{if(e9r(I)&&!qLr(n,I,d)&&oZt(I,h=>{var b;return u.includes(w.checkDefined((b=eo(h,B2))==null?void 0:b.symbol))})){let h=kqi(Bd(I),d);if(h)return h}return Bd(I)})}function qLr(n,c,u,d){var I;return u?!Hf(c)&&ba(c,32)||!!(d&&n.symbol&&((I=n.symbol.exports)!=null&&I.has(d.escapedText))):!!n.symbol&&!!n.symbol.exports&&tZt(c).some(h=>n.symbol.exports.has(Rd(h)))}function $Lr(n,c,u,d){if(c.kind===272&&c.importClause){let{name:I,namedBindings:h}=c.importClause;if((!I||d(I))&&(!h||h.kind===275&&h.elements.length!==0&&h.elements.every(b=>d(b.name))))return u.delete(n,c)}zLr(c,I=>{I.name&&sr(I.name)&&d(I.name)&&u.delete(n,I)})}function e9r(n){return w.assert(Gc(n.parent),"Node parent should be a SourceFile"),c9r(n)||Rp(n)}function kqi(n,c){return c?[Gqi(n)]:Fqi(n)}function Gqi(n){let c=ew(n)?vi([_e.createModifier(95)],lN(n)):void 0;switch(n.kind){case 262:return _e.updateFunctionDeclaration(n,c,n.asteriskToken,n.name,n.typeParameters,n.parameters,n.type,n.body);case 263:let u=pY(n)?Uw(n):void 0;return _e.updateClassDeclaration(n,vi(u,c),n.name,n.typeParameters,n.heritageClauses,n.members);case 243:return _e.updateVariableStatement(n,c,n.declarationList);case 267:return _e.updateModuleDeclaration(n,c,n.name,n.body);case 266:return _e.updateEnumDeclaration(n,c,n.name,n.members);case 265:return _e.updateTypeAliasDeclaration(n,c,n.name,n.typeParameters,n.type);case 264:return _e.updateInterfaceDeclaration(n,c,n.name,n.typeParameters,n.heritageClauses,n.members);case 271:return _e.updateImportEqualsDeclaration(n,c,n.isTypeOnly,n.name,n.moduleReference);case 244:return w.fail();default:return w.assertNever(n,`Unexpected declaration kind ${n.kind}`)}}function Fqi(n){return[n,...tZt(n).map(t9r)]}function t9r(n){return _e.createExpressionStatement(_e.createBinaryExpression(_e.createPropertyAccessExpression(_e.createIdentifier("exports"),_e.createIdentifier(n)),64,_e.createIdentifier(n)))}function tZt(n){switch(n.kind){case 262:case 263:return[n.name.text];case 243:return tr(n.declarationList.declarations,c=>sr(c.name)?c.name.text:void 0);case 267:case 266:case 265:case 264:case 271:return v;case 244:return w.fail("Can't export an ExpressionStatement");default:return w.assertNever(n,`Unexpected decl kind ${n.kind}`)}}function r9r(n,c,u){switch(n.kind){case 272:{let d=n.importClause;if(!d)return;let I=d.name&&u(d.name)?d.name:void 0,h=d.namedBindings&&Zqi(d.namedBindings,u);return I||h?_e.createImportDeclaration(void 0,_e.createImportClause(d.isTypeOnly,I,h),Bd(c),void 0):void 0}case 271:return u(n.name)?n:void 0;case 260:{let d=Lqi(n.name,u);return d?Dqi(d,n.type,KLr(c),n.parent.flags):void 0}default:return w.assertNever(n,`Unexpected import kind ${n.kind}`)}}function Zqi(n,c){if(n.kind===274)return c(n.name)?n:void 0;{let u=n.elements.filter(d=>c(d.name));return u.length?_e.createNamedImports(u):void 0}}function Lqi(n,c){switch(n.kind){case 80:return c(n)?n:void 0;case 207:return n;case 206:{let u=n.elements.filter(d=>d.propertyName||!sr(d.name)||c(d.name));return u.length?_e.createObjectBindingPattern(u):void 0}}}function n9r(n){return Hf(n)?eo(n.expression.left.name,sr):eo(n.name,sr)}function rZt(n){switch(n.kind){case 260:return n.parent.parent;case 208:return rZt(ps(n.parent.parent,c=>zs(c)||ml(c)));default:return n}}function i9r(n,c,u,d,I){if(!qLr(n,c,I,u))if(I)Hf(c)||d.insertExportModifier(n,c);else{let h=tZt(c);h.length!==0&&d.insertNodesAfter(n,c,h.map(t9r))}}function nZt(n,c,u,d){let I=c.getTypeChecker();if(d){let h=bFe(n,d.all,I),b=aa(n.fileName),R=m6(n.fileName);return xo(b,Mqi(Qqi(h.oldFileImportsFromTargetFile,h.movedSymbols),R,b,u))+R}return""}function Vqi(n){let{file:c}=n,u=MGe(z6(n)),{statements:d}=c,I=ke(d,V=>V.end>u.pos);if(I===-1)return;let h=d[I],b=l9r(c,h);b&&(I=b.start);let R=ke(d,V=>V.end>=u.end,I);R!==-1&&u.end<=d[R].getStart()&&R--;let N=l9r(c,d[R]);return N&&(R=N.end),{toMove:d.slice(I,R===-1?d.length:R+1),afterLast:R===-1?void 0:d[R+1]}}function n0e(n){let c=Vqi(n);if(c===void 0)return;let u=[],d=[],{toMove:I,afterLast:h}=c;return ga(I,Wqi,(b,R)=>{for(let N=b;N!!(c.transformFlags&2))}function Wqi(n){return!Pqi(n)&&!QI(n)}function Pqi(n){switch(n.kind){case 272:return!0;case 271:return!ba(n,32);case 243:return n.declarationList.declarations.every(c=>!!c.initializer&&Q0(c.initializer,!0));default:return!1}}function bFe(n,c,u,d=new Set){var I;let h=new Set,b=new Map,R=new Map,N=M(iZt(c));N&&b.set(N,[!1,eo((I=N.declarations)==null?void 0:I[0],te=>_y(te)||sT(te)||Px(te)||Cm(te)||ml(te)||zs(te))]);for(let te of c)oZt(te,re=>{h.add(w.checkDefined(Hf(re)?u.getSymbolAtLocation(re.expression.left):re.symbol,"Need a symbol here"))});let V=new Set;for(let te of c)sZt(te,u,(re,ue)=>{if(!(!re.declarations||Oqi(u,re))){if(d.has(dh(re,u))){V.add(re);return}for(let Ae of re.declarations)if(s9r(Ae)){let de=b.get(re);b.set(re,[(de===void 0||de)&&ue,eo(Ae,Be=>_y(Be)||sT(Be)||Px(Be)||Cm(Be)||ml(Be)||zs(Be))])}else lze(Ae)&&Yqi(Ae)===n&&!h.has(re)&&R.set(re,ue)}});for(let te of b.keys())V.add(te);let P=new Map;for(let te of n.statements)Ue(c,te)||(N&&te.transformFlags&2&&V.delete(N),sZt(te,u,(re,ue)=>{h.has(re)&&P.set(re,ue),V.delete(re)}));return{movedSymbols:h,targetFileImportsFromOldFile:R,oldFileImportsFromTargetFile:P,oldImportsNeededByTargetFile:b,unusedImportsFromOldFile:V};function M(te){if(te===void 0)return;let re=u.getJsxNamespace(te),ue=u.resolveName(re,te,1920,!0);return ue&&lr(ue.declarations,s9r)?ue:void 0}}function Oqi(n,c){return!!n.resolveName(c.name,void 0,788968,!1)}function Mqi(n,c,u,d){let I=n;for(let h=1;;h++){let b=xo(u,I+c);if(!d.fileExists(b))return I;I=`${n}.${h}`}}function Qqi(n,c){return $w(n,aje)||$w(c,aje)||"newFile"}function sZt(n,c,u){n.forEachChild(function d(I){if(sr(I)&&!eT(I)){let h=c.getSymbolAtLocation(I);h&&u(h,DZ(I))}else I.forEachChild(d)})}function oZt(n,c){switch(n.kind){case 262:case 263:case 267:case 266:case 265:case 264:case 271:return c(n);case 243:return le(n.declarationList.declarations,u=>a9r(u.name,c));case 244:{let{expression:u}=n;return no(u)&&CI(u)===1?c(n):void 0}}}function s9r(n){switch(n.kind){case 271:case 276:case 273:case 274:return!0;case 260:return o9r(n);case 208:return zs(n.parent.parent)&&o9r(n.parent.parent);default:return!1}}function o9r(n){return Gc(n.parent.parent.parent)&&!!n.initializer&&Q0(n.initializer,!0)}function lze(n){return c9r(n)&&Gc(n.parent)||zs(n)&&Gc(n.parent.parent.parent)}function Yqi(n){return zs(n)?n.parent.parent.parent:n.parent}function a9r(n,c){switch(n.kind){case 80:return c(ps(n.parent,u=>zs(u)||ml(u)));case 207:case 206:return le(n.elements,u=>ef(u)?void 0:a9r(u.name,c));default:return w.assertNever(n,`Unexpected name kind ${n.kind}`)}}function c9r(n){switch(n.kind){case 262:case 263:case 267:case 266:case 265:case 264:case 271:return!0;default:return!1}}function Hqi(n,c,u,d,I){var h;let b=new Set,R=(h=d.symbol)==null?void 0:h.exports;if(R){let V=c.getTypeChecker(),P=new Map;for(let M of I.all)e9r(M)&&ba(M,32)&&oZt(M,te=>{var re;let ue=B2(te)?(re=R.get(te.symbol.escapedName))==null?void 0:re.declarations:void 0,Ae=le(ue,de=>mC(de)?de:c0(de)?eo(de.parent.parent,mC):void 0);Ae&&Ae.moduleSpecifier&&P.set(Ae,(P.get(Ae)||new Set).add(te))});for(let[M,te]of on(P))if(M.exportClause&&GB(M.exportClause)&&O(M.exportClause.elements)){let re=M.exportClause.elements,ue=Gt(re,Ae=>be(dh(Ae.symbol,V).declarations,de=>lze(de)&&te.has(de))===void 0);if(O(ue)===0){n.deleteNode(d,M),b.add(M);continue}O(ue)mC(V)&&!!V.moduleSpecifier&&!b.has(V));N?n.insertNodesBefore(d,N,u,!0):n.insertNodesAfter(d,d.statements[d.statements.length-1],u)}function l9r(n,c){if(dd(c)){let u=c.symbol.declarations;if(u===void 0||O(u)<=1||!Ue(u,c))return;let d=u[0],I=u[O(u)-1],h=tr(u,N=>ls(N)===n&&Ic(N)?N:void 0),b=ke(n.statements,N=>N.end>=I.end),R=ke(n.statements,N=>N.end>=d.end);return{toMove:h,start:R,end:b}}}function aZt(n,c,u){let d=new Set;for(let I of n.imports){let h=VX(I);if(mI(h)&&h.importClause&&h.importClause.namedBindings&&wN(h.importClause.namedBindings))for(let b of h.importClause.namedBindings.elements){let R=u.getSymbolAtLocation(b.propertyName||b.name);R&&d.add(dh(R,u))}if(tee(h.parent)&&Vg(h.parent.name))for(let b of h.parent.name.elements){let R=u.getSymbolAtLocation(b.propertyName||b.name);R&&d.add(dh(R,u))}}for(let I of c)sZt(I,u,h=>{let b=dh(h,u);b.valueDeclaration&&ls(b.valueDeclaration).path===n.path&&d.add(b)});return d}function ZG(n){return n.error!==void 0}function fP(n,c){return c?n.substr(0,c.length)===c:!0}function cZt(n,c,u,d){return Io(n)&&!Sa(c)&&!u.resolveName(n.name.text,n,111551,!1)&&!kc(n.name)&&!VR(n.name)?n.name.text:E4(Sa(c)?"newProperty":"newLocal",d)}function lZt(n,c,u,d,I,h){c.forEach(([b,R],N)=>{var V;let P=dh(N,d);d.isUnknownSymbol(P)?h.addVerbatimImport(w.checkDefined(R??Si((V=N.declarations)==null?void 0:V[0],qae))):h.addImportFromExportedSymbol(P,b,R)}),eZt(u,n.fileName,h,I)}var EFe="Inline variable",uZt=eu(Z.Inline_variable),gZt={name:EFe,description:uZt,kind:"refactor.inline.variable"};Yx(EFe,{kinds:[gZt.kind],getAvailableActions(n){let{file:c,program:u,preferences:d,startPosition:I,triggerReason:h}=n,b=u9r(c,I,h==="invoked",u);return b?$6.isRefactorErrorInfo(b)?d.provideRefactorNotApplicableReason?[{name:EFe,description:uZt,actions:[{...gZt,notApplicableReason:b.error}]}]:v:[{name:EFe,description:uZt,actions:[gZt]}]:v},getEditsForAction(n,c){w.assert(c===EFe,"Unexpected refactor invoked");let{file:u,program:d,startPosition:I}=n,h=u9r(u,I,!0,d);if(!h||$6.isRefactorErrorInfo(h))return;let{references:b,declaration:R,replacement:N}=h;return{edits:po.ChangeTracker.with(n,P=>{for(let M of b)P.replaceNode(u,M,Xqi(M,N));P.delete(u,R)})}}});function u9r(n,c,u,d){var I,h;let b=d.getTypeChecker(),R=lb(n,c),N=R.parent;if(sr(R)){if(Gee(N)&&D8(N)&&sr(N.name)){if(((I=b.getMergedSymbol(N.symbol).declarations)==null?void 0:I.length)!==1)return{error:eu(Z.Variables_with_multiple_declarations_cannot_be_inlined)};if(g9r(N))return;let V=A9r(N,b,n);return V&&{references:V,declaration:N,replacement:N.initializer}}if(u){let V=b.resolveName(R.text,R,111551,!1);if(V=V&&b.getMergedSymbol(V),((h=V?.declarations)==null?void 0:h.length)!==1)return{error:eu(Z.Variables_with_multiple_declarations_cannot_be_inlined)};let P=V.declarations[0];if(!Gee(P)||!D8(P)||!sr(P.name)||g9r(P))return;let M=A9r(P,b,n);return M&&{references:M,declaration:P,replacement:P.initializer}}return{error:eu(Z.Could_not_find_variable_to_inline)}}}function g9r(n){let c=ps(n.parent.parent,Rp);return lr(c.modifiers,Fx)}function A9r(n,c,u){let d=[],I=Yp.Core.eachSymbolReferenceInFile(n.name,c,u,h=>{if(Yp.isWriteAccessForReference(h)&&!G_(h.parent)||c0(h.parent)||tf(h.parent)||oe(h.parent)||_2(n,h.pos))return!0;d.push(h)});return d.length===0||I?void 0:d}function Xqi(n,c){c=Bd(c);let{parent:u}=n;return tn(u)&&(mG(c)Jqi(c.file,c.program,d,h,c.host,c,c.preferences)),renameFilename:void 0,renameLocation:void 0}}});function Jqi(n,c,u,d,I,h,b){let R=c.getTypeChecker(),N=bFe(n,u.all,R),V=nZt(n,c,I,u),P=fFe(V,n.externalModuleIndicator?99:n.commonJsModuleIndicator?1:void 0,c,I),M=d0.createImportAdder(n,h.program,h.preferences,h.host),te=d0.createImportAdder(P,h.program,h.preferences,h.host);jFt(n,P,N,d,u,c,I,b,te,M),zFt(c,d,n.fileName,V,Dx(I))}var Uqi={},pZt="Convert overload list to single signature",d9r=eu(Z.Convert_overload_list_to_single_signature),p9r={name:pZt,description:d9r,kind:"refactor.rewrite.function.overloadList"};Yx(pZt,{kinds:[p9r.kind],getEditsForAction:jqi,getAvailableActions:Kqi});function Kqi(n){let{file:c,startPosition:u,program:d}=n;return I9r(c,u,d)?[{name:pZt,description:d9r,actions:[p9r]}]:v}function jqi(n){let{file:c,startPosition:u,program:d}=n,I=I9r(c,u,d);if(!I)return;let h=d.getTypeChecker(),b=I[I.length-1],R=b;switch(b.kind){case 173:{R=_e.updateMethodSignature(b,b.modifiers,b.name,b.questionToken,b.typeParameters,V(I),b.type);break}case 174:{R=_e.updateMethodDeclaration(b,b.modifiers,b.asteriskToken,b.name,b.questionToken,b.typeParameters,V(I),b.type,b.body);break}case 179:{R=_e.updateCallSignature(b,b.typeParameters,V(I),b.type);break}case 176:{R=_e.updateConstructorDeclaration(b,b.modifiers,V(I),b.body);break}case 180:{R=_e.updateConstructSignature(b,b.typeParameters,V(I),b.type);break}case 262:{R=_e.updateFunctionDeclaration(b,b.modifiers,b.asteriskToken,b.name,b.typeParameters,V(I),b.type,b.body);break}default:return w.failBadSyntaxKind(b,"Unhandled signature kind in overload list conversion refactoring")}if(R===b)return;return{renameFilename:void 0,renameLocation:void 0,edits:po.ChangeTracker.with(n,te=>{te.replaceNodeRange(c,I[0],I[I.length-1],R)})};function V(te){let re=te[te.length-1];return dd(re)&&re.body&&(te=te.slice(0,te.length-1)),_e.createNodeArray([_e.createParameterDeclaration(void 0,_e.createToken(26),"args",void 0,_e.createUnionTypeNode(Ot(te,P)))])}function P(te){let re=Ot(te.parameters,M);return co(_e.createTupleTypeNode(re),lr(re,ue=>!!O(tY(ue)))?0:1)}function M(te){w.assert(sr(te.name));let re=un(_e.createNamedTupleMember(te.dotDotDotToken,te.name,te.questionToken,te.type||_e.createKeywordTypeNode(133)),te),ue=te.symbol&&te.symbol.getDocumentationComment(h);if(ue){let Ae=o0e(ue);Ae.length&&US(re,[{text:`* +}`,yFe="lib.d.ts",RFt;function CLr(n,c,u){RFt??(RFt=M6(yFe,$zi,{languageVersion:99}));let d=[],I=c.compilerOptions?$je(c.compilerOptions,d):{},h=GFe();for(let Ae in h)Qa(h,Ae)&&I[Ae]===void 0&&(I[Ae]=h[Ae]);for(let Ae of VRt)I.verbatimModuleSyntax&&qzi.has(Ae.name)||(I[Ae.name]=Ae.transpileOptionValue);I.suppressOutputPathCheck=!0,I.allowNonTsExtensions=!0,u?(I.declaration=!0,I.emitDeclarationOnly=!0,I.isolatedDeclarations=!0):I.declaration=!1;let b=F1(I),R={getSourceFile:Ae=>Ae===Mc(N)?V:Ae===Mc(yFe)?RFt:void 0,writeFile:(Ae,de)=>{Ad(Ae,".map")?(w.assertEqual(Q,void 0,"Unexpected multiple source map outputs, file:",Ae),Q=de):(w.assertEqual(P,void 0,"Unexpected multiple outputs, file:",Ae),P=de)},getDefaultLibFileName:()=>yFe,useCaseSensitiveFileNames:()=>!1,getCanonicalFileName:Ae=>Ae,getCurrentDirectory:()=>"",getNewLine:()=>b,fileExists:Ae=>Ae===N||!!u&&Ae===yFe,readFile:()=>"",directoryExists:()=>!0,getDirectories:()=>[]},N=c.fileName||(c.compilerOptions&&c.compilerOptions.jsx?"module.tsx":"module.ts"),V=M6(N,n,{languageVersion:sA(I),impliedNodeFormat:B_e(AA(N,"",R.getCanonicalFileName),void 0,R,I),setExternalModuleIndicator:m6(I),jsDocParsingMode:c.jsDocParsingMode??0});c.moduleName&&(V.moduleName=c.moduleName),c.renamedDependencies&&(V.renamedDependencies=new Map(Object.entries(c.renamedDependencies)));let P,Q,re=v_e(u?[N,yFe]:[N],I,R);c.reportDiagnostics&&(ai(d,re.getSyntacticDiagnostics(V)),ai(d,re.getOptionsDiagnostics()));let ue=re.emit(void 0,void 0,void 0,u,c.transformers,u);return ai(d,ue.diagnostics),P===void 0?w.fail("Output generation failed"):{outputText:P,diagnostics:d,sourceMapText:Q}}function mLr(n,c,u,d,I){let h=NFt(n,{compilerOptions:c,fileName:u,reportDiagnostics:!!d,moduleName:I});return ai(d,h.diagnostics),h.outputText}var DFt;function $je(n,c){DFt=DFt||Gt(lT,u=>typeof u.type=="object"&&!UC(u.type,d=>typeof d!="number")),n=q7e(n);for(let u of DFt){if(!Qa(n,u.name))continue;let d=n[u.name];Ya(d)?n[u.name]=dke(u,d,c):UC(u.type,I=>I===d)||c.push(QRt(u))}return n}var xFt={};o(xFt,{getNavigateToItems:()=>hLr});function hLr(n,c,u,d,I,h,b){let R=mFt(d);if(!R)return v;let N=[],V=n.length===1?n[0]:void 0;for(let P of n)u.throwIfCancellationRequested(),!(h&&P.isDeclarationFile)&&(_Lr(P,!!b,V)||P.getNamedDeclarations().forEach((Q,te)=>{eqi(R,te,Q,c,P.fileName,!!b,V,N)}));return N.sort(iqi),(I===void 0?N:N.slice(0,I)).map(sqi)}function _Lr(n,c,u){return n!==u&&c&&(q_e(n.path)||n.hasNoDefaultLib)}function eqi(n,c,u,d,I,h,b,R){let N=n.getMatchForLastSegmentOfPattern(c);if(N){for(let V of u)if(tqi(V,d,h,b))if(n.patternContainsDots){let P=n.getFullMatch(nqi(V),c);P&&R.push({name:c,fileName:I,matchKind:P.kind,isCaseSensitive:P.isCaseSensitive,declaration:V})}else R.push({name:c,fileName:I,matchKind:N.kind,isCaseSensitive:N.isCaseSensitive,declaration:V})}}function tqi(n,c,u,d){var I;switch(n.kind){case 273:case 276:case 271:let h=c.getSymbolAtLocation(n.name),b=c.getAliasedSymbol(h);return h.escapedName!==b.escapedName&&!((I=b.declarations)!=null&&I.every(R=>_Lr(R.getSourceFile(),u,d)));default:return!0}}function rqi(n,c){let u=Sl(n);return!!u&&(yLr(u,c)||u.kind===167&&kFt(u.expression,c))}function kFt(n,c){return yLr(n,c)||fo(n)&&(c.push(n.name.text),!0)&&kFt(n.expression,c)}function yLr(n,c){return WS(n)&&(c.push(N2(n)),!0)}function nqi(n){let c=[],u=Sl(n);if(u&&u.kind===167&&!kFt(u.expression,c))return v;c.shift();let d=B4(n);for(;d;){if(!rqi(d,c))return v;d=B4(d)}return c.reverse()}function iqi(n,c){return Jl(n.matchKind,c.matchKind)||Li(n.name,c.name)}function sqi(n){let c=n.declaration,u=B4(c),d=u&&Sl(u);return{name:n.name,kind:bM(c),kindModifiers:Sue(c),matchKind:Xje[n.matchKind],isCaseSensitive:n.isCaseSensitive,fileName:n.fileName,textSpan:By(c),containerName:d?d.text:"",containerKind:d?bM(u):""}}var GFt={};o(GFt,{getNavigationBarItems:()=>ELr,getNavigationTree:()=>BLr});var oqi=/\s+/g,FFt=150,eze,n0e,bFe=[],OZ,bLr=[],Jte,ZFt=[];function ELr(n,c){eze=c,n0e=n;try{return Ot(gqi(wLr(n)),Aqi)}finally{vLr()}}function BLr(n,c){eze=c,n0e=n;try{return ZLr(wLr(n))}finally{vLr()}}function vLr(){n0e=void 0,eze=void 0,bFe=[],OZ=void 0,ZFt=[]}function EFe(n){return Vue(n.getText(n0e))}function tze(n){return n.node.kind}function SLr(n,c){n.children?n.children.push(c):n.children=[c]}function wLr(n){w.assert(!bFe.length);let c={node:n,name:void 0,additionalNodes:void 0,parent:void 0,children:void 0,indent:0};OZ=c;for(let u of n.statements)i7(u);return IP(),w.assert(!OZ&&!bFe.length),c}function SM(n,c){SLr(OZ,LFt(n,c))}function LFt(n,c){return{node:n,name:c||(xC(n)||tn(n)?Sl(n):void 0),additionalNodes:void 0,parent:OZ,children:void 0,indent:OZ.indent+1}}function TLr(n){Jte||(Jte=new Map),Jte.set(n,!0)}function NLr(n){for(let c=0;c0;d--){let I=u[d];wM(n,I)}return[u.length-1,u[0]]}function wM(n,c){let u=LFt(n,c);SLr(OZ,u),bFe.push(OZ),bLr.push(Jte),Jte=void 0,OZ=u}function IP(){OZ.children&&(rze(OZ.children,OZ),PFt(OZ.children)),OZ=bFe.pop(),Jte=bLr.pop()}function CP(n,c,u){wM(n,u),i7(c),IP()}function DLr(n){n.initializer&&pqi(n.initializer)?(wM(n),hu(n.initializer,i7),IP()):CP(n,n.initializer)}function VFt(n){let c=Sl(n);if(c===void 0)return!1;if(kg(c)){let u=c.expression;return lp(u)||pu(u)||ZE(u)}return!!c}function i7(n){if(eze.throwIfCancellationRequested(),!(!n||Q9(n)))switch(n.kind){case 176:let c=n;CP(c,c.body);for(let b of c.parameters)Zn(b,c)&&SM(b);break;case 174:case 177:case 178:case 173:VFt(n)&&CP(n,n.body);break;case 172:VFt(n)&&DLr(n);break;case 171:VFt(n)&&SM(n);break;case 273:let u=n;u.name&&SM(u.name);let{namedBindings:d}=u;if(d)if(d.kind===274)SM(d);else for(let b of d.elements)SM(b);break;case 304:CP(n,n.name);break;case 305:let{expression:I}=n;sr(I)?SM(n,I):SM(n);break;case 208:case 303:case 260:{let b=n;fu(b.name)?i7(b.name):DLr(b);break}case 262:let h=n.name;h&&sr(h)&&TLr(h.text),CP(n,n.body);break;case 219:case 218:CP(n,n.body);break;case 266:wM(n);for(let b of n.members)dqi(b)||SM(b);IP();break;case 263:case 231:case 264:wM(n);for(let b of n.members)i7(b);IP();break;case 267:CP(n,VLr(n).body);break;case 277:{let b=n.expression,R=ru(b)||lu(b)?b:Id(b)||PA(b)?b.body:void 0;R?(wM(n),i7(R),IP()):SM(n);break}case 281:case 271:case 181:case 179:case 180:case 265:SM(n);break;case 213:case 226:{let b=mI(n);switch(b){case 1:case 2:CP(n,n.right);return;case 6:case 3:{let R=n,N=R.left,V=b===3?N.expression:N,P=0,Q;sr(V.expression)?(TLr(V.expression.text),Q=V.expression):[P,Q]=RLr(R,V.expression),b===6?ru(R.right)&&R.right.properties.length>0&&(wM(R,Q),hu(R.right,i7),IP()):PA(R.right)||Id(R.right)?CP(n,R.right,Q):(wM(R,Q),CP(n,R.right,N.name),IP()),NLr(P);return}case 7:case 9:{let R=n,N=b===7?R.arguments[0]:R.arguments[0].expression,V=R.arguments[1],[P,Q]=RLr(n,N);wM(n,Q),wM(n,un(_e.createIdentifier(V.text),V)),i7(n.arguments[2]),IP(),IP(),NLr(P);return}case 5:{let R=n,N=R.left,V=N.expression;if(sr(V)&&zR(N)!=="prototype"&&Jte&&Jte.has(V.text)){PA(R.right)||Id(R.right)?CP(n,R.right,V):eV(N)&&(wM(R,V),CP(R.left,R.right,aee(N)),IP());return}break}case 4:case 0:case 8:break;default:w.assertNever(b)}}default:_y(n)&&X(n.jsDoc,b=>{X(b.tags,R=>{T2(R)&&SM(R)})}),hu(n,i7)}}function rze(n,c){let u=new Map;er(n,(d,I)=>{let h=d.name||Sl(d.node),b=h&&EFe(h);if(!b)return!0;let R=u.get(b);if(!R)return u.set(b,d),!0;if(R instanceof Array){for(let N of R)if(xLr(N,d,I,c))return!1;return R.push(d),!0}else{let N=R;return xLr(N,d,I,c)?!1:(u.set(b,[N,d]),!0)}})}var i0e={5:!0,3:!0,7:!0,9:!0,0:!1,1:!1,2:!1,8:!1,6:!0,4:!1};function aqi(n,c,u,d){function I(R){return PA(R)||hp(R)||js(R)}let h=ro(c.node)||lu(c.node)?mI(c.node):0,b=ro(n.node)||lu(n.node)?mI(n.node):0;if(i0e[h]&&i0e[b]||I(n.node)&&i0e[h]||I(c.node)&&i0e[b]||Ec(n.node)&&WFt(n.node)&&i0e[h]||Ec(c.node)&&i0e[b]||Ec(n.node)&&WFt(n.node)&&I(c.node)||Ec(c.node)&&I(n.node)&&WFt(n.node)){let R=n.additionalNodes&&zo(n.additionalNodes)||n.node;if(!Ec(n.node)&&!Ec(c.node)||I(n.node)||I(c.node)){let V=I(n.node)?n.node:I(c.node)?c.node:void 0;if(V!==void 0){let P=un(_e.createConstructorDeclaration(void 0,[],void 0),V),Q=LFt(P);Q.indent=n.indent+1,Q.children=n.node===V?n.children:c.children,n.children=n.node===V?vi([Q],c.children||[c]):vi(n.children||[{...n}],[Q])}else(n.children||c.children)&&(n.children=vi(n.children||[{...n}],c.children||[c]),n.children&&(rze(n.children,n),PFt(n.children)));R=n.node=un(_e.createClassDeclaration(void 0,n.name||_e.createIdentifier("__class__"),void 0,void 0,[]),n.node)}else n.children=vi(n.children,c.children),n.children&&rze(n.children,n);let N=c.node;return d.children[u-1].node.end===R.end?un(R,{pos:R.pos,end:N.end}):(n.additionalNodes||(n.additionalNodes=[]),n.additionalNodes.push(un(_e.createClassDeclaration(void 0,n.name||_e.createIdentifier("__class__"),void 0,void 0,[]),c.node))),!0}return h!==0}function xLr(n,c,u,d){return aqi(n,c,u,d)?!0:cqi(n.node,c.node,d)?(lqi(n,c),!0):!1}function cqi(n,c,u){if(n.kind!==c.kind||n.parent!==c.parent&&!(kLr(n,u)&&kLr(c,u)))return!1;switch(n.kind){case 172:case 174:case 177:case 178:return eg(n)===eg(c);case 267:return GLr(n,c)&&MFt(n)===MFt(c);default:return!0}}function WFt(n){return!!(n.flags&16)}function kLr(n,c){let u=wN(n.parent)?n.parent.parent:n.parent;return u===c.node||Ue(c.additionalNodes,u)}function GLr(n,c){return!n.body||!c.body?n.body===c.body:n.body.kind===c.body.kind&&(n.body.kind!==267||GLr(n.body,c.body))}function lqi(n,c){n.additionalNodes=n.additionalNodes||[],n.additionalNodes.push(c.node),c.additionalNodes&&n.additionalNodes.push(...c.additionalNodes),n.children=vi(n.children,c.children),n.children&&(rze(n.children,n),PFt(n.children))}function PFt(n){n.sort(uqi)}function uqi(n,c){return Li(FLr(n.node),FLr(c.node))||Jl(tze(n),tze(c))}function FLr(n){if(n.kind===267)return LLr(n);let c=Sl(n);if(c&&RI(c)){let u=iV(c);return u&&wc(u)}switch(n.kind){case 218:case 219:case 231:return PLr(n);default:return}}function OFt(n,c){if(n.kind===267)return Vue(LLr(n));if(c){let u=sr(c)?c.text:_A(c)?`[${EFe(c.argumentExpression)}]`:EFe(c);if(u.length>0)return Vue(u)}switch(n.kind){case 307:let u=n;return hm(u)?`"${rT(kA(a0(Mc(u.fileName))))}"`:"";case 277:return rf(n)&&n.isExportEquals?"export=":"default";case 219:case 262:case 218:case 263:case 231:return eD(n)&2048?"default":PLr(n);case 176:return"constructor";case 180:return"new()";case 179:return"()";case 181:return"[]";default:return""}}function gqi(n){let c=[];function u(I){if(d(I)&&(c.push(I),I.children))for(let h of I.children)u(h)}return u(n),c;function d(I){if(I.children)return!0;switch(tze(I)){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 h(I);default:return!1}function h(b){if(!b.node.body)return!1;switch(tze(b.parent)){case 268:case 307:case 174:case 176:return!0;default:return!1}}}}function ZLr(n){return{text:OFt(n.node,n.name),kind:bM(n.node),kindModifiers:WLr(n.node),spans:QFt(n),nameSpan:n.name&&HFt(n.name),childItems:Ot(n.children,ZLr)}}function Aqi(n){return{text:OFt(n.node,n.name),kind:bM(n.node),kindModifiers:WLr(n.node),spans:QFt(n),childItems:Ot(n.children,c)||ZFt,indent:n.indent,bolded:!1,grayed:!1};function c(u){return{text:OFt(u.node,u.name),kind:bM(u.node),kindModifiers:Sue(u.node),spans:QFt(u),childItems:ZFt,indent:0,bolded:!1,grayed:!1}}}function QFt(n){let c=[HFt(n.node)];if(n.additionalNodes)for(let u of n.additionalNodes)c.push(HFt(u));return c}function LLr(n){return Yf(n)?Nf(n.name):MFt(n)}function MFt(n){let c=[N2(n.name)];for(;n.body&&n.body.kind===267;)n=n.body,c.push(N2(n.name));return c.join(".")}function VLr(n){return n.body&&mC(n.body)?VLr(n.body):n}function dqi(n){return!n.name||n.name.kind===167}function HFt(n){return n.kind===307?NV(n):By(n,n0e)}function WLr(n){return n.parent&&n.parent.kind===260&&(n=n.parent),Sue(n)}function PLr(n){let{parent:c}=n;if(n.name&&NX(n.name)>0)return Vue(kd(n.name));if(js(c))return Vue(kd(c.name));if(ro(c)&&c.operatorToken.kind===64)return EFe(c.left).replace(oqi,"");if(jC(c))return EFe(c.name);if(eD(n)&2048)return"default";if(va(n))return"";if(lu(c)){let u=OLr(c.expression);if(u!==void 0){if(u=Vue(u),u.length>FFt)return`${u} callback`;let d=Vue(tr(c.arguments,I=>JA(I)||k1(I)?I.getText(n0e):void 0).join(", "));return`${u}(${d}) callback`}}return""}function OLr(n){if(sr(n))return n.text;if(fo(n)){let c=OLr(n.expression),u=n.name.text;return c===void 0?u:`${c}.${u}`}else return}function pqi(n){switch(n.kind){case 219:case 218:case 231:return!0;default:return!1}}function Vue(n){return n=n.length>FFt?n.substring(0,FFt)+"...":n,n.replace(/\\?(\r?\n|\r|\u2028|\u2029)/g,"")}var s7={};o(s7,{addExportToChanges:()=>u9r,addExportsInOldFile:()=>tZt,addImportsForMovedSymbols:()=>nZt,addNewFileToTsconfig:()=>eZt,addOrRemoveBracesToArrowFunction:()=>t$i,addTargetFileImports:()=>AZt,containsJsx:()=>aZt,convertArrowFunctionOrFunctionExpression:()=>o$i,convertParamsToDestructuredObject:()=>C$i,convertStringOrTemplateLiteral:()=>F$i,convertToOptionalChainExpression:()=>Y$i,createNewFileName:()=>oZt,deleteMovedStatements:()=>qLr,deleteUnusedImports:()=>s9r,deleteUnusedOldImports:()=>$Lr,doChangeNamedToNamespaceOrDefault:()=>JLr,extractSymbol:()=>X9r,filterImport:()=>c9r,forEachImportInStatement:()=>rZt,generateGetAccessorAndSetAccessor:()=>Tes,getApplicableRefactors:()=>fqi,getEditsForRefactor:()=>Iqi,getExistingLocals:()=>uZt,getIdentifierForNode:()=>gZt,getNewStatementsAndRemoveFromOldFile:()=>$Ft,getStatementsToMove:()=>s0e,getTopLevelDeclarationStatement:()=>sZt,getUsageInfo:()=>BFe,inferFunctionReturnType:()=>Nes,isRefactorErrorInfo:()=>OG,isTopLevelDeclaration:()=>gze,moduleSpecifierFromImport:()=>r9r,nameOfTopLevelDeclaration:()=>l9r,refactorKindBeginsWith:()=>mP,registerRefactor:()=>jx,updateImportsInOtherFiles:()=>e9r});var YFt=new Map;function jx(n,c){YFt.set(n,c)}function fqi(n,c){return on(Or(YFt.values(),u=>{var d;return n.cancellationToken&&n.cancellationToken.isCancellationRequested()||!((d=u.kinds)!=null&&d.some(I=>mP(I,n.kind)))?void 0:u.getAvailableActions(n,c)}))}function Iqi(n,c,u,d){let I=YFt.get(c);return I&&I.getEditsForAction(n,u,d)}var XFt="Convert export",nze={name:"Convert default export to named export",description:tu(Z.Convert_default_export_to_named_export),kind:"refactor.rewrite.export.named"},ize={name:"Convert named export to default export",description:tu(Z.Convert_named_export_to_default_export),kind:"refactor.rewrite.export.default"};jx(XFt,{kinds:[nze.kind,ize.kind],getAvailableActions:function(c){let u=QLr(c,c.triggerReason==="invoked");if(!u)return v;if(!OG(u)){let d=u.wasDefault?nze:ize;return[{name:XFt,description:d.description,actions:[d]}]}return c.preferences.provideRefactorNotApplicableReason?[{name:XFt,description:tu(Z.Convert_default_export_to_named_export),actions:[{...nze,notApplicableReason:u.error},{...ize,notApplicableReason:u.error}]}]:v},getEditsForAction:function(c,u){w.assert(u===nze.name||u===ize.name,"Unexpected action name");let d=QLr(c);return w.assert(d&&!OG(d),"Expected applicable refactor info"),{edits:Ao.ChangeTracker.with(c,h=>Cqi(c.file,c.program,d,h,c.cancellationToken)),renameFilename:void 0,renameLocation:void 0}}});function QLr(n,c=!0){let{file:u,program:d}=n,I=n7(n),h=Hc(u,I.start),b=h.parent&&eD(h.parent)&32&&c?h.parent:X_e(h,u,I);if(!b||!Fc(b.parent)&&!(wN(b.parent)&&Yf(b.parent.parent)))return{error:tu(Z.Could_not_find_export_statement)};let R=d.getTypeChecker(),N=bqi(b.parent,R),V=eD(b)||(rf(b)&&!b.isExportEquals?2080:0),P=!!(V&2048);if(!(V&32)||!P&&N.exports.has("default"))return{error:tu(Z.This_file_already_has_a_default_export)};let Q=te=>sr(te)&&R.getSymbolAtLocation(te)?void 0:{error:tu(Z.Can_only_convert_named_export)};switch(b.kind){case 262:case 263:case 264:case 266:case 265:case 267:{let te=b;return te.name?Q(te.name)||{exportNode:te,exportName:te.name,wasDefault:P,exportingModuleSymbol:N}:void 0}case 243:{let te=b;if(!(te.declarationList.flags&2)||te.declarationList.declarations.length!==1)return;let re=qs(te.declarationList.declarations);return re.initializer?(w.assert(!P,"Can't have a default flag here"),Q(re.name)||{exportNode:te,exportName:re.name,wasDefault:P,exportingModuleSymbol:N}):void 0}case 277:{let te=b;return te.isExportEquals?void 0:Q(te.expression)||{exportNode:te,exportName:te.expression,wasDefault:P,exportingModuleSymbol:N}}default:return}}function Cqi(n,c,u,d,I){mqi(n,u,d,c.getTypeChecker()),hqi(c,u,d,I)}function mqi(n,{wasDefault:c,exportNode:u,exportName:d},I,h){if(c)if(rf(u)&&!u.isExportEquals){let b=u.expression,R=MLr(b.text,b.text);I.replaceNode(n,u,_e.createExportDeclaration(void 0,!1,_e.createNamedExports([R])))}else I.delete(n,w.checkDefined(Wte(u,90),"Should find a default keyword in modifier list"));else{let b=w.checkDefined(Wte(u,95),"Should find an export keyword in modifier list");switch(u.kind){case 262:case 263:case 264:I.insertNodeAfter(n,b,_e.createToken(90));break;case 243:let R=qs(u.declarationList.declarations);if(!Yp.Core.isSymbolReferencedInFile(d,h,n)&&!R.type){I.replaceNode(n,u,_e.createExportDefault(w.checkDefined(R.initializer,"Initializer was previously known to be present")));break}case 266:case 265:case 267:I.deleteModifier(n,b),I.insertNodeAfter(n,u,_e.createExportDefault(_e.createIdentifier(d.text)));break;default:w.fail(`Unexpected exportNode kind ${u.kind}`)}}}function hqi(n,{wasDefault:c,exportName:u,exportingModuleSymbol:d},I,h){let b=n.getTypeChecker(),R=w.checkDefined(b.getSymbolAtLocation(u),"Export name should resolve to a symbol");Yp.Core.eachExportReference(n.getSourceFiles(),b,h,R,d,u.text,c,N=>{if(u===N)return;let V=N.getSourceFile();c?_qi(V,N,I,u.text):yqi(V,N,I)})}function _qi(n,c,u,d){let{parent:I}=c;switch(I.kind){case 211:u.replaceNode(n,c,_e.createIdentifier(d));break;case 276:case 281:{let b=I;u.replaceNode(n,b,JFt(d,b.name.text));break}case 273:{let b=I;w.assert(b.name===c,"Import clause name should match provided ref");let R=JFt(d,c.text),{namedBindings:N}=b;if(!N)u.replaceNode(n,c,_e.createNamedImports([R]));else if(N.kind===274){u.deleteRange(n,{pos:c.getStart(n),end:N.getStart(n)});let V=Eu(b.parent.moduleSpecifier)?aje(b.parent.moduleSpecifier,n):1,P=RV(void 0,[JFt(d,c.text)],b.parent.moduleSpecifier,V);u.insertNodeAfter(n,b.parent,P)}else u.delete(n,c),u.insertNodeAtEndOfList(n,N.elements,R);break}case 205:let h=I;u.replaceNode(n,I,_e.createImportTypeNode(h.argument,h.attributes,_e.createIdentifier(d),h.typeArguments,h.isTypeOf));break;default:w.failBadSyntaxKind(I)}}function yqi(n,c,u){let d=c.parent;switch(d.kind){case 211:u.replaceNode(n,c,_e.createIdentifier("default"));break;case 276:{let I=_e.createIdentifier(d.name.text);d.parent.elements.length===1?u.replaceNode(n,d.parent,I):(u.delete(n,d),u.insertNodeBefore(n,d.parent,I));break}case 281:{u.replaceNode(n,d,MLr("default",d.name.text));break}default:w.assertNever(d,`Unexpected parent kind ${d.kind}`)}}function JFt(n,c){return _e.createImportSpecifier(!1,n===c?void 0:_e.createIdentifier(n),_e.createIdentifier(c))}function MLr(n,c){return _e.createExportSpecifier(!1,n===c?void 0:_e.createIdentifier(n),_e.createIdentifier(c))}function bqi(n,c){if(Fc(n))return n.symbol;let u=n.parent.symbol;return u.valueDeclaration&&KR(u.valueDeclaration)?c.getMergedSymbol(u):u}var UFt="Convert import",sze={0:{name:"Convert namespace import to named imports",description:tu(Z.Convert_namespace_import_to_named_imports),kind:"refactor.rewrite.import.named"},2:{name:"Convert named imports to namespace import",description:tu(Z.Convert_named_imports_to_namespace_import),kind:"refactor.rewrite.import.namespace"},1:{name:"Convert named imports to default import",description:tu(Z.Convert_named_imports_to_default_import),kind:"refactor.rewrite.import.default"}};jx(UFt,{kinds:us(sze).map(n=>n.kind),getAvailableActions:function(c){let u=HLr(c,c.triggerReason==="invoked");if(!u)return v;if(!OG(u)){let d=sze[u.convertTo];return[{name:UFt,description:d.description,actions:[d]}]}return c.preferences.provideRefactorNotApplicableReason?us(sze).map(d=>({name:UFt,description:d.description,actions:[{...d,notApplicableReason:u.error}]})):v},getEditsForAction:function(c,u){w.assert(lr(us(sze),h=>h.name===u),"Unexpected action name");let d=HLr(c);return w.assert(d&&!OG(d),"Expected applicable refactor info"),{edits:Ao.ChangeTracker.with(c,h=>Eqi(c.file,c.program,h,d)),renameFilename:void 0,renameLocation:void 0}}});function HLr(n,c=!0){let{file:u}=n,d=n7(n),I=Hc(u,d.start),h=c?Si(I,fg(hI,DN)):X_e(I,u,d);if(h===void 0||!(hI(h)||DN(h)))return{error:"Selection is not an import declaration."};let b=d.start+d.length,R=EM(h,h.parent,u);if(R&&b>R.getStart())return;let{importClause:N}=h;return N?N.namedBindings?N.namedBindings.kind===274?{convertTo:0,import:N.namedBindings}:YLr(n.program,N)?{convertTo:1,import:N.namedBindings}:{convertTo:2,import:N.namedBindings}:{error:tu(Z.Could_not_find_namespace_import_or_named_imports)}:{error:tu(Z.Could_not_find_import_clause)}}function YLr(n,c){return K5(n.getCompilerOptions())&&Sqi(c.parent.moduleSpecifier,n.getTypeChecker())}function Eqi(n,c,u,d){let I=c.getTypeChecker();d.convertTo===0?Bqi(n,I,u,d.import,K5(c.getCompilerOptions())):JLr(n,c,u,d.import,d.convertTo===1)}function Bqi(n,c,u,d,I){let h=!1,b=[],R=new Map;Yp.Core.eachSymbolReferenceInFile(d.name,c,n,Q=>{if(!_5(Q.parent))h=!0;else{let te=XLr(Q.parent).text;c.resolveName(te,Q,-1,!0)&&R.set(te,!0),w.assert(vqi(Q.parent)===Q,"Parent expression should match id"),b.push(Q.parent)}});let N=new Map;for(let Q of b){let te=XLr(Q).text,re=N.get(te);re===void 0&&N.set(te,re=R.has(te)?S4(te,n):te),u.replaceNode(n,Q,_e.createIdentifier(re))}let V=[];N.forEach((Q,te)=>{V.push(_e.createImportSpecifier(!1,Q===te?void 0:_e.createIdentifier(te),_e.createIdentifier(Q)))});let P=d.parent.parent;if(h&&!I&&hI(P))u.insertNodeAfter(n,P,ULr(P,void 0,V));else{let Q=h?_e.createIdentifier(d.name.text):void 0;u.replaceNode(n,d.parent,KLr(Q,V))}}function XLr(n){return fo(n)?n.name:n.right}function vqi(n){return fo(n)?n.expression:n.left}function JLr(n,c,u,d,I=YLr(c,d.parent)){let h=c.getTypeChecker(),b=d.parent.parent,{moduleSpecifier:R}=b,N=new Set;d.elements.forEach(ue=>{let Ae=h.getSymbolAtLocation(ue.name);Ae&&N.add(Ae)});let V=R&&Eu(R)?$_e(R.text,99):"module";function P(ue){return!!Yp.Core.eachSymbolReferenceInFile(ue.name,h,n,Ae=>{let de=h.resolveName(V,Ae,-1,!0);return de?N.has(de)?l0(Ae.parent):!0:!1})}let te=d.elements.some(P)?S4(V,n):V,re=new Set;for(let ue of d.elements){let Ae=(ue.propertyName||ue.name).text;Yp.Core.eachSymbolReferenceInFile(ue.name,h,n,de=>{let Be=_e.createPropertyAccessExpression(_e.createIdentifier(te),Ae);F_(de.parent)?u.replaceNode(n,de.parent,_e.createPropertyAssignment(de.text,Be)):l0(de.parent)?re.add(ue):u.replaceNode(n,de,Be)})}if(u.replaceNode(n,d,I?_e.createIdentifier(te):_e.createNamespaceImport(_e.createIdentifier(te))),re.size&&hI(b)){let ue=on(re.values(),Ae=>_e.createImportSpecifier(Ae.isTypeOnly,Ae.propertyName&&_e.createIdentifier(Ae.propertyName.text),_e.createIdentifier(Ae.name.text)));u.insertNodeAfter(n,d.parent.parent,ULr(b,void 0,ue))}}function Sqi(n,c){let u=c.resolveExternalModuleName(n);if(!u)return!1;let d=c.resolveExternalModuleSymbol(u);return u!==d}function ULr(n,c,u){return _e.createImportDeclaration(void 0,KLr(c,u),n.moduleSpecifier,void 0)}function KLr(n,c){return _e.createImportClause(!1,n,c&&c.length?_e.createNamedImports(c):void 0)}var KFt="Extract type",oze={name:"Extract to type alias",description:tu(Z.Extract_to_type_alias),kind:"refactor.extract.type"},aze={name:"Extract to interface",description:tu(Z.Extract_to_interface),kind:"refactor.extract.interface"},cze={name:"Extract to typedef",description:tu(Z.Extract_to_typedef),kind:"refactor.extract.typedef"};jx(KFt,{kinds:[oze.kind,aze.kind,cze.kind],getAvailableActions:function(c){let{info:u,affectedTextRange:d}=jLr(c,c.triggerReason==="invoked");return u?OG(u)?c.preferences.provideRefactorNotApplicableReason?[{name:KFt,description:tu(Z.Extract_type),actions:[{...cze,notApplicableReason:u.error},{...oze,notApplicableReason:u.error},{...aze,notApplicableReason:u.error}]}]:v:[{name:KFt,description:tu(Z.Extract_type),actions:u.isJS?[cze]:Yr([oze],u.typeElements&&aze)}].map(h=>({...h,actions:h.actions.map(b=>({...b,range:d?{start:{line:Vl(c.file,d.pos).line,offset:Vl(c.file,d.pos).character},end:{line:Vl(c.file,d.end).line,offset:Vl(c.file,d.end).character}}:void 0}))})):v},getEditsForAction:function(c,u){let{file:d}=c,{info:I}=jLr(c);w.assert(I&&!OG(I),"Expected to find a range to extract");let h=S4("NewType",d),b=Ao.ChangeTracker.with(c,V=>{switch(u){case oze.name:return w.assert(!I.isJS,"Invalid actionName/JS combo"),Nqi(V,d,h,I);case cze.name:return w.assert(I.isJS,"Invalid actionName/JS combo"),Dqi(V,c,d,h,I);case aze.name:return w.assert(!I.isJS&&!!I.typeElements,"Invalid actionName/JS combo"),Rqi(V,d,h,I);default:w.fail("Unexpected action name")}}),R=d.fileName,N=K_e(b,R,h,!1);return{edits:b,renameFilename:R,renameLocation:N}}});function jLr(n,c=!0){let{file:u,startPosition:d}=n,I=i0(u),h=HGe(n7(n)),b=h.pos===h.end&&c,R=wqi(u,d,h,b);if(!R||!Ma(R))return{info:{error:tu(Z.Selection_is_not_a_valid_type_node)},affectedTextRange:void 0};let N=n.program.getTypeChecker(),V=xqi(R,I);if(V===void 0)return{info:{error:tu(Z.No_type_could_be_extracted_from_this_type_node)},affectedTextRange:void 0};let P=kqi(R,V);if(!Ma(P))return{info:{error:tu(Z.Selection_is_not_a_valid_type_node)},affectedTextRange:void 0};let Q=[];(Is(P.parent)||ji(P.parent))&&h.end>R.end&&ai(Q,P.parent.types.filter(de=>GGe(de,u,h.pos,h.end)));let te=Q.length>1?Q:P,{typeParameters:re,affectedTextRange:ue}=Tqi(N,te,V,u);if(!re)return{info:{error:tu(Z.No_type_could_be_extracted_from_this_type_node)},affectedTextRange:void 0};let Ae=lze(N,te);return{info:{isJS:I,selection:te,enclosingNode:V,typeParameters:re,typeElements:Ae},affectedTextRange:ue}}function wqi(n,c,u,d){let I=[()=>Hc(n,c),()=>Lte(n,c,()=>!0)];for(let h of I){let b=h(),R=GGe(b,n,u.pos,u.end),N=Si(b,V=>V.parent&&Ma(V)&&!TM(u,V.parent,n)&&(d||R));if(N)return N}}function lze(n,c){if(c){if(Na(c)){let u=[];for(let d of c){let I=lze(n,d);if(!I)return;ai(u,I)}return u}if(ji(c)){let u=[],d=new Map;for(let I of c.types){let h=lze(n,I);if(!h||!h.every(b=>b.name&&D2(d,H_e(b.name))))return;ai(u,h)}return u}else{if(to(c))return lze(n,c.type);if(Se(c))return c.members}}}function TM(n,c,u){return V_e(n,Uu(u.text,c.pos),c.end)}function Tqi(n,c,u,d){let I=[],h=ys(c),b={pos:h[0].getStart(d),end:h[h.length-1].end};for(let N of h)if(R(N))return{typeParameters:void 0,affectedTextRange:void 0};return{typeParameters:I,affectedTextRange:b};function R(N){if(F(N)){if(sr(N.typeName)){let V=N.typeName,P=n.resolveName(V.text,V,262144,!0);for(let Q of P?.declarations||v)if($p(Q)&&Q.getSourceFile()===d){if(Q.name.escapedText===V.escapedText&&TM(Q,b,d))return!0;if(TM(u,Q,d)&&!TM(b,Q,d)){da(I,Q);break}}}}else if(yo(N)){let V=Si(N,P=>Ei(P)&&TM(P.extendsType,N,d));if(!V||!TM(b,V,d))return!0}else if(S(N)||aa(N)){let V=Si(N.parent,eu);if(V&&V.type&&TM(V.type,N,d)&&!TM(b,V,d))return!0}else if(oe(N)){if(sr(N.exprName)){let V=n.resolveName(N.exprName.text,N.exprName,111551,!1);if(V?.valueDeclaration&&TM(u,V.valueDeclaration,d)&&!TM(b,V.valueDeclaration,d))return!0}else if(vG(N.exprName.left)&&!TM(b,N.parent,d))return!0}return d&&Ct(N)&&Vl(d,N.pos).line===Vl(d,N.end).line&&ao(N,1),hu(N,R)}}function Nqi(n,c,u,d){let{enclosingNode:I,typeParameters:h}=d,{firstTypeNode:b,lastTypeNode:R,newTypeNode:N}=jFt(d),V=_e.createTypeAliasDeclaration(void 0,u,h.map(P=>_e.updateTypeParameterDeclaration(P,P.modifiers,P.name,P.constraint,void 0)),N);n.insertNodeBefore(c,I,Rhe(V),!0),n.replaceNodeRange(c,b,R,_e.createTypeReferenceNode(u,h.map(P=>_e.createTypeReferenceNode(P.name,void 0))),{leadingTriviaOption:Ao.LeadingTriviaOption.Exclude,trailingTriviaOption:Ao.TrailingTriviaOption.ExcludeWhitespace})}function Rqi(n,c,u,d){var I;let{enclosingNode:h,typeParameters:b,typeElements:R}=d,N=_e.createInterfaceDeclaration(void 0,u,b,void 0,R);un(N,(I=R[0])==null?void 0:I.parent),n.insertNodeBefore(c,h,Rhe(N),!0);let{firstTypeNode:V,lastTypeNode:P}=jFt(d);n.replaceNodeRange(c,V,P,_e.createTypeReferenceNode(u,b.map(Q=>_e.createTypeReferenceNode(Q.name,void 0))),{leadingTriviaOption:Ao.LeadingTriviaOption.Exclude,trailingTriviaOption:Ao.TrailingTriviaOption.ExcludeWhitespace})}function Dqi(n,c,u,d,I){var h;ys(I.selection).forEach(ue=>{ao(ue,7168)});let{enclosingNode:b,typeParameters:R}=I,{firstTypeNode:N,lastTypeNode:V,newTypeNode:P}=jFt(I),Q=_e.createJSDocTypedefTag(_e.createIdentifier("typedef"),_e.createJSDocTypeExpression(P),_e.createIdentifier(d)),te=[];X(R,ue=>{let Ae=jw(ue),de=_e.createTypeParameterDeclaration(void 0,ue.name),Be=_e.createJSDocTemplateTag(_e.createIdentifier("template"),Ae&&ps(Ae,sP),[de]);te.push(Be)});let re=_e.createJSDocComment(void 0,_e.createNodeArray(vi(te,[Q])));if(cT(b)){let ue=b.getStart(u),Ae=PZ(c.host,(h=c.formatContext)==null?void 0:h.options);n.insertNodeAt(u,b.getStart(u),re,{suffix:Ae+Ae+u.text.slice($Ge(u.text,ue-1),ue)})}else n.insertNodeBefore(u,b,re,!0);n.replaceNodeRange(u,N,V,_e.createTypeReferenceNode(d,R.map(ue=>_e.createTypeReferenceNode(ue.name,void 0))))}function jFt(n){return Na(n.selection)?{firstTypeNode:n.selection[0],lastTypeNode:n.selection[n.selection.length-1],newTypeNode:Is(n.selection[0].parent)?_e.createUnionTypeNode(n.selection):_e.createIntersectionTypeNode(n.selection)}:{firstTypeNode:n.selection,lastTypeNode:n.selection,newTypeNode:n.selection}}function xqi(n,c){return Si(n,Cc)||(c?Si(n,cT):void 0)}function kqi(n,c){return Si(n,u=>u===c?"quit":!!(Is(u.parent)||ji(u.parent)))??n}var uze="Move to file",zFt=tu(Z.Move_to_file),qFt={name:"Move to file",description:zFt,kind:"refactor.move.file"};jx(uze,{kinds:[qFt.kind],getAvailableActions:function(c,u){let d=c.file,I=s0e(c);if(!u)return v;if(c.triggerReason==="implicit"&&c.endPosition!==void 0){let h=Si(Hc(d,c.startPosition),Yte),b=Si(Hc(d,c.endPosition),Yte);if(h&&!Fc(h)&&b&&!Fc(b))return v}if(c.preferences.allowTextChangesInNewFiles&&I){let h={start:{line:Vl(d,I.all[0].getStart(d)).line,offset:Vl(d,I.all[0].getStart(d)).character},end:{line:Vl(d,Ta(I.all).end).line,offset:Vl(d,Ta(I.all).end).character}};return[{name:uze,description:zFt,actions:[{...qFt,range:h}]}]}return c.preferences.provideRefactorNotApplicableReason?[{name:uze,description:zFt,actions:[{...qFt,notApplicableReason:tu(Z.Selection_is_not_a_valid_statement_or_statements)}]}]:v},getEditsForAction:function(c,u,d){w.assert(u===uze,"Wrong refactor invoked");let I=w.checkDefined(s0e(c)),{host:h,program:b}=c;w.assert(d,"No interactive refactor arguments available");let R=d.targetFile;return hN(R)||z5(R)?h.fileExists(R)&&b.getSourceFile(R)===void 0?zLr(tu(Z.Cannot_move_statements_to_the_selected_file)):{edits:Ao.ChangeTracker.with(c,V=>Gqi(c,c.file,d.targetFile,c.program,I,V,c.host,c.preferences)),renameFilename:void 0,renameLocation:void 0}:zLr(tu(Z.Cannot_move_to_file_selected_file_is_invalid))}});function zLr(n){return{edits:[],renameFilename:void 0,renameLocation:void 0,notApplicableReason:n}}function Gqi(n,c,u,d,I,h,b,R){let N=d.getTypeChecker(),V=!b.fileExists(u),P=V?CFe(u,c.externalModuleIndicator?99:c.commonJsModuleIndicator?1:void 0,d,b):w.checkDefined(d.getSourceFile(u)),Q=p0.createImportAdder(c,n.program,n.preferences,n.host),te=p0.createImportAdder(P,n.program,n.preferences,n.host);$Ft(c,P,BFe(c,I.all,N,V?void 0:uZt(P,I.all,N)),h,I,d,b,R,te,Q),V&&eZt(d,h,c.fileName,u,Lx(b))}function $Ft(n,c,u,d,I,h,b,R,N,V){let P=h.getTypeChecker(),Q=Lf(n.statements,HI),te=!Zje(c.fileName,h,b,!!n.commonJsModuleIndicator),re=P2(n,R);nZt(u.oldFileImportsFromTargetFile,c.fileName,V,h),$Lr(n,I.all,u.unusedImportsFromOldFile,V),V.writeFixes(d,re),qLr(n,I.ranges,d),e9r(d,h,b,n,u.movedSymbols,c.fileName,re),tZt(n,u.targetFileImportsFromOldFile,d,te),AZt(n,u.oldImportsNeededByTargetFile,u.targetFileImportsFromOldFile,P,h,N),!jR(c)&&Q.length&&d.insertStatementsInNewFile(c.fileName,Q,n),N.writeFixes(d,re);let ue=Wqi(n,I.all,on(u.oldFileImportsFromTargetFile.keys()),te);jR(c)&&c.statements.length>0?qqi(d,h,ue,c,I):jR(c)?d.insertNodesAtEndOfFile(c,ue,!1):d.insertStatementsInNewFile(c.fileName,N.hasFixes()?[4,...ue]:ue,n)}function eZt(n,c,u,d,I){let h=n.getCompilerOptions().configFile;if(!h)return;let b=Mc(Do(u,"..",d)),R=T1(h.fileName,b,I),N=h.statements[0]&&$s(h.statements[0].expression,ru),V=N&&be(N.properties,P=>jC(P)&&Eu(P.name)&&P.name.text==="files");V&&Cf(V.initializer)&&c.insertNodeInListAfter(h,Ta(V.initializer.elements),_e.createStringLiteral(R),V.initializer.elements)}function qLr(n,c,u){for(let{first:d,afterLast:I}of c)u.deleteNodeRangeExcludingEnd(n,d,I)}function $Lr(n,c,u,d){for(let I of n.statements)Ue(c,I)||rZt(I,h=>{n9r(h,b=>{u.has(b.symbol)&&d.removeExistingImport(b)})})}function tZt(n,c,u,d){let I=Vte();c.forEach((h,b)=>{if(b.declarations)for(let R of b.declarations){if(!gze(R))continue;let N=l9r(R);if(!N)continue;let V=sZt(R);I(V)&&u9r(n,V,N,u,d)}})}function e9r(n,c,u,d,I,h,b){let R=c.getTypeChecker();for(let N of c.getSourceFiles())if(N!==d)for(let V of N.statements)rZt(V,P=>{if(R.getSymbolAtLocation(r9r(P))!==d.symbol)return;let Q=de=>{let Be=hl(de.parent)?jGe(R,de.parent):ph(R.getSymbolAtLocation(de),R);return!!Be&&I.has(Be)};s9r(N,P,n,Q);let te=$_(oa(Qc(d.fileName,c.getCurrentDirectory())),h);if(ql(!c.useCaseSensitiveFileNames())(te,N.fileName)===0)return;let re=qkr(c.getCompilerOptions(),N,N.fileName,te,r7(c,u)),ue=c9r(P,Tue(re,b),Q);ue&&n.insertNodeAfter(N,V,ue);let Ae=Fqi(P);Ae&&Zqi(n,N,R,I,re,Ae,P,b)})}function Fqi(n){switch(n.kind){case 272:return n.importClause&&n.importClause.namedBindings&&n.importClause.namedBindings.kind===274?n.importClause.namedBindings.name:void 0;case 271:return n.name;case 260:return $s(n.name,sr);default:return w.assertNever(n,`Unexpected node kind ${n.kind}`)}}function Zqi(n,c,u,d,I,h,b,R){let N=$_e(I,99),V=!1,P=[];if(Yp.Core.eachSymbolReferenceInFile(h,u,c,Q=>{fo(Q.parent)&&(V=V||!!u.resolveName(N,Q,-1,!0),d.has(u.getSymbolAtLocation(Q.parent.name))&&P.push(Q))}),P.length){let Q=V?S4(N,c):N;for(let te of P)n.replaceNode(c,te,_e.createIdentifier(Q));n.insertNodeAfter(c,b,Lqi(b,N,I,R))}}function Lqi(n,c,u,d){let I=_e.createIdentifier(c),h=Tue(u,d);switch(n.kind){case 272:return _e.createImportDeclaration(void 0,_e.createImportClause(!1,void 0,_e.createNamespaceImport(I)),h,void 0);case 271:return _e.createImportEqualsDeclaration(void 0,!1,I,_e.createExternalModuleReference(h));case 260:return _e.createVariableDeclaration(I,void 0,void 0,t9r(h));default:return w.assertNever(n,`Unexpected node kind ${n.kind}`)}}function t9r(n){return _e.createCallExpression(_e.createIdentifier("require"),void 0,[n])}function r9r(n){return n.kind===272?n.moduleSpecifier:n.kind===271?n.moduleReference.expression:n.initializer.arguments[0]}function rZt(n,c){if(hI(n))Eu(n.moduleSpecifier)&&c(n);else if(mm(n))ZG(n.moduleReference)&&JA(n.moduleReference.expression)&&c(n);else if(Dp(n))for(let u of n.declarationList.declarations)u.initializer&&H0(u.initializer,!0)&&c(u)}function n9r(n,c){var u,d,I,h,b;if(n.kind===272){if((u=n.importClause)!=null&&u.name&&c(n.importClause),((I=(d=n.importClause)==null?void 0:d.namedBindings)==null?void 0:I.kind)===274&&c(n.importClause.namedBindings),((b=(h=n.importClause)==null?void 0:h.namedBindings)==null?void 0:b.kind)===275)for(let R of n.importClause.namedBindings.elements)c(R)}else if(n.kind===271)c(n);else if(n.kind===260){if(n.name.kind===80)c(n);else if(n.name.kind===206)for(let R of n.name.elements)sr(R.name)&&c(R)}}function nZt(n,c,u,d){for(let[I,h]of n){let b=uFe(I,sA(d.getCompilerOptions())),R=I.name==="default"&&I.parent?1:0;u.addImportForNonExistentExport(b,c,R,I.flags,h)}}function Vqi(n,c,u,d=2){return _e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(n,void 0,c,u)],d))}function Wqi(n,c,u,d){return Fr(c,I=>{if(o9r(I)&&!i9r(n,I,d)&&lZt(I,h=>{var b;return u.includes(w.checkDefined((b=$s(h,v2))==null?void 0:b.symbol))})){let h=Pqi(vd(I),d);if(h)return h}return vd(I)})}function i9r(n,c,u,d){var I;return u?!Xf(c)&&ya(c,32)||!!(d&&n.symbol&&((I=n.symbol.exports)!=null&&I.has(d.escapedText))):!!n.symbol&&!!n.symbol.exports&&iZt(c).some(h=>n.symbol.exports.has(Dd(h)))}function s9r(n,c,u,d){if(c.kind===272&&c.importClause){let{name:I,namedBindings:h}=c.importClause;if((!I||d(I))&&(!h||h.kind===275&&h.elements.length!==0&&h.elements.every(b=>d(b.name))))return u.delete(n,c)}n9r(c,I=>{I.name&&sr(I.name)&&d(I.name)&&u.delete(n,I)})}function o9r(n){return w.assert(Fc(n.parent),"Node parent should be a SourceFile"),p9r(n)||Dp(n)}function Pqi(n,c){return c?[Oqi(n)]:Qqi(n)}function Oqi(n){let c=tw(n)?vi([_e.createModifier(95)],uN(n)):void 0;switch(n.kind){case 262:return _e.updateFunctionDeclaration(n,c,n.asteriskToken,n.name,n.typeParameters,n.parameters,n.type,n.body);case 263:let u=IM(n)?Kw(n):void 0;return _e.updateClassDeclaration(n,vi(u,c),n.name,n.typeParameters,n.heritageClauses,n.members);case 243:return _e.updateVariableStatement(n,c,n.declarationList);case 267:return _e.updateModuleDeclaration(n,c,n.name,n.body);case 266:return _e.updateEnumDeclaration(n,c,n.name,n.members);case 265:return _e.updateTypeAliasDeclaration(n,c,n.name,n.typeParameters,n.type);case 264:return _e.updateInterfaceDeclaration(n,c,n.name,n.typeParameters,n.heritageClauses,n.members);case 271:return _e.updateImportEqualsDeclaration(n,c,n.isTypeOnly,n.name,n.moduleReference);case 244:return w.fail();default:return w.assertNever(n,`Unexpected declaration kind ${n.kind}`)}}function Qqi(n){return[n,...iZt(n).map(a9r)]}function a9r(n){return _e.createExpressionStatement(_e.createBinaryExpression(_e.createPropertyAccessExpression(_e.createIdentifier("exports"),_e.createIdentifier(n)),64,_e.createIdentifier(n)))}function iZt(n){switch(n.kind){case 262:case 263:return[n.name.text];case 243:return tr(n.declarationList.declarations,c=>sr(c.name)?c.name.text:void 0);case 267:case 266:case 265:case 264:case 271:return v;case 244:return w.fail("Can't export an ExpressionStatement");default:return w.assertNever(n,`Unexpected decl kind ${n.kind}`)}}function c9r(n,c,u){switch(n.kind){case 272:{let d=n.importClause;if(!d)return;let I=d.name&&u(d.name)?d.name:void 0,h=d.namedBindings&&Mqi(d.namedBindings,u);return I||h?_e.createImportDeclaration(void 0,_e.createImportClause(d.isTypeOnly,I,h),vd(c),void 0):void 0}case 271:return u(n.name)?n:void 0;case 260:{let d=Hqi(n.name,u);return d?Vqi(d,n.type,t9r(c),n.parent.flags):void 0}default:return w.assertNever(n,`Unexpected import kind ${n.kind}`)}}function Mqi(n,c){if(n.kind===274)return c(n.name)?n:void 0;{let u=n.elements.filter(d=>c(d.name));return u.length?_e.createNamedImports(u):void 0}}function Hqi(n,c){switch(n.kind){case 80:return c(n)?n:void 0;case 207:return n;case 206:{let u=n.elements.filter(d=>d.propertyName||!sr(d.name)||c(d.name));return u.length?_e.createObjectBindingPattern(u):void 0}}}function l9r(n){return Xf(n)?$s(n.expression.left.name,sr):$s(n.name,sr)}function sZt(n){switch(n.kind){case 260:return n.parent.parent;case 208:return sZt(ps(n.parent.parent,c=>js(c)||hl(c)));default:return n}}function u9r(n,c,u,d,I){if(!i9r(n,c,I,u))if(I)Xf(c)||d.insertExportModifier(n,c);else{let h=iZt(c);h.length!==0&&d.insertNodesAfter(n,c,h.map(a9r))}}function oZt(n,c,u,d){let I=c.getTypeChecker();if(d){let h=BFe(n,d.all,I),b=oa(n.fileName),R=B6(n.fileName);return Do(b,Kqi(jqi(h.oldFileImportsFromTargetFile,h.movedSymbols),R,b,u))+R}return""}function Yqi(n){let{file:c}=n,u=HGe(n7(n)),{statements:d}=c,I=ke(d,V=>V.end>u.pos);if(I===-1)return;let h=d[I],b=f9r(c,h);b&&(I=b.start);let R=ke(d,V=>V.end>=u.end,I);R!==-1&&u.end<=d[R].getStart()&&R--;let N=f9r(c,d[R]);return N&&(R=N.end),{toMove:d.slice(I,R===-1?d.length:R+1),afterLast:R===-1?void 0:d[R+1]}}function s0e(n){let c=Yqi(n);if(c===void 0)return;let u=[],d=[],{toMove:I,afterLast:h}=c;return ua(I,Xqi,(b,R)=>{for(let N=b;N!!(c.transformFlags&2))}function Xqi(n){return!Jqi(n)&&!HI(n)}function Jqi(n){switch(n.kind){case 272:return!0;case 271:return!ya(n,32);case 243:return n.declarationList.declarations.every(c=>!!c.initializer&&H0(c.initializer,!0));default:return!1}}function BFe(n,c,u,d=new Set){var I;let h=new Set,b=new Map,R=new Map,N=Q(aZt(c));N&&b.set(N,[!1,$s((I=N.declarations)==null?void 0:I[0],te=>yy(te)||oT(te)||Xx(te)||mm(te)||hl(te)||js(te))]);for(let te of c)lZt(te,re=>{h.add(w.checkDefined(Xf(re)?u.getSymbolAtLocation(re.expression.left):re.symbol,"Need a symbol here"))});let V=new Set;for(let te of c)cZt(te,u,(re,ue)=>{if(!(!re.declarations||Uqi(u,re))){if(d.has(ph(re,u))){V.add(re);return}for(let Ae of re.declarations)if(g9r(Ae)){let de=b.get(re);b.set(re,[(de===void 0||de)&&ue,$s(Ae,Be=>yy(Be)||oT(Be)||Xx(Be)||mm(Be)||hl(Be)||js(Be))])}else gze(Ae)&&zqi(Ae)===n&&!h.has(re)&&R.set(re,ue)}});for(let te of b.keys())V.add(te);let P=new Map;for(let te of n.statements)Ue(c,te)||(N&&te.transformFlags&2&&V.delete(N),cZt(te,u,(re,ue)=>{h.has(re)&&P.set(re,ue),V.delete(re)}));return{movedSymbols:h,targetFileImportsFromOldFile:R,oldFileImportsFromTargetFile:P,oldImportsNeededByTargetFile:b,unusedImportsFromOldFile:V};function Q(te){if(te===void 0)return;let re=u.getJsxNamespace(te),ue=u.resolveName(re,te,1920,!0);return ue&&lr(ue.declarations,g9r)?ue:void 0}}function Uqi(n,c){return!!n.resolveName(c.name,void 0,788968,!1)}function Kqi(n,c,u,d){let I=n;for(let h=1;;h++){let b=Do(u,I+c);if(!d.fileExists(b))return I;I=`${n}.${h}`}}function jqi(n,c){return eT(n,lje)||eT(c,lje)||"newFile"}function cZt(n,c,u){n.forEachChild(function d(I){if(sr(I)&&!tT(I)){let h=c.getSymbolAtLocation(I);h&&u(h,xZ(I))}else I.forEachChild(d)})}function lZt(n,c){switch(n.kind){case 262:case 263:case 267:case 266:case 265:case 264:case 271:return c(n);case 243:return le(n.declarationList.declarations,u=>d9r(u.name,c));case 244:{let{expression:u}=n;return ro(u)&&mI(u)===1?c(n):void 0}}}function g9r(n){switch(n.kind){case 271:case 276:case 273:case 274:return!0;case 260:return A9r(n);case 208:return js(n.parent.parent)&&A9r(n.parent.parent);default:return!1}}function A9r(n){return Fc(n.parent.parent.parent)&&!!n.initializer&&H0(n.initializer,!0)}function gze(n){return p9r(n)&&Fc(n.parent)||js(n)&&Fc(n.parent.parent.parent)}function zqi(n){return js(n)?n.parent.parent.parent:n.parent}function d9r(n,c){switch(n.kind){case 80:return c(ps(n.parent,u=>js(u)||hl(u)));case 207:case 206:return le(n.elements,u=>tf(u)?void 0:d9r(u.name,c));default:return w.assertNever(n,`Unexpected name kind ${n.kind}`)}}function p9r(n){switch(n.kind){case 262:case 263:case 267:case 266:case 265:case 264:case 271:return!0;default:return!1}}function qqi(n,c,u,d,I){var h;let b=new Set,R=(h=d.symbol)==null?void 0:h.exports;if(R){let V=c.getTypeChecker(),P=new Map;for(let Q of I.all)o9r(Q)&&ya(Q,32)&&lZt(Q,te=>{var re;let ue=v2(te)?(re=R.get(te.symbol.escapedName))==null?void 0:re.declarations:void 0,Ae=le(ue,de=>hC(de)?de:l0(de)?$s(de.parent.parent,hC):void 0);Ae&&Ae.moduleSpecifier&&P.set(Ae,(P.get(Ae)||new Set).add(te))});for(let[Q,te]of on(P))if(Q.exportClause&&ZB(Q.exportClause)&&O(Q.exportClause.elements)){let re=Q.exportClause.elements,ue=Gt(re,Ae=>be(ph(Ae.symbol,V).declarations,de=>gze(de)&&te.has(de))===void 0);if(O(ue)===0){n.deleteNode(d,Q),b.add(Q);continue}O(ue)hC(V)&&!!V.moduleSpecifier&&!b.has(V));N?n.insertNodesBefore(d,N,u,!0):n.insertNodesAfter(d,d.statements[d.statements.length-1],u)}function f9r(n,c){if(pd(c)){let u=c.symbol.declarations;if(u===void 0||O(u)<=1||!Ue(u,c))return;let d=u[0],I=u[O(u)-1],h=tr(u,N=>ls(N)===n&&Cc(N)?N:void 0),b=ke(n.statements,N=>N.end>=I.end),R=ke(n.statements,N=>N.end>=d.end);return{toMove:h,start:R,end:b}}}function uZt(n,c,u){let d=new Set;for(let I of n.imports){let h=OX(I);if(hI(h)&&h.importClause&&h.importClause.namedBindings&&TN(h.importClause.namedBindings))for(let b of h.importClause.namedBindings.elements){let R=u.getSymbolAtLocation(b.propertyName||b.name);R&&d.add(ph(R,u))}if(nee(h.parent)&&Wg(h.parent.name))for(let b of h.parent.name.elements){let R=u.getSymbolAtLocation(b.propertyName||b.name);R&&d.add(ph(R,u))}}for(let I of c)cZt(I,u,h=>{let b=ph(h,u);b.valueDeclaration&&ls(b.valueDeclaration).path===n.path&&d.add(b)});return d}function OG(n){return n.error!==void 0}function mP(n,c){return c?n.substr(0,c.length)===c:!0}function gZt(n,c,u,d){return fo(n)&&!va(c)&&!u.resolveName(n.name.text,n,111551,!1)&&!Gc(n.name)&&!QR(n.name)?n.name.text:S4(va(c)?"newProperty":"newLocal",d)}function AZt(n,c,u,d,I,h){c.forEach(([b,R],N)=>{var V;let P=ph(N,d);d.isUnknownSymbol(P)?h.addVerbatimImport(w.checkDefined(R??Si((V=N.declarations)==null?void 0:V[0],ace))):h.addImportFromExportedSymbol(P,b,R)}),nZt(u,n.fileName,h,I)}var vFe="Inline variable",dZt=tu(Z.Inline_variable),pZt={name:vFe,description:dZt,kind:"refactor.inline.variable"};jx(vFe,{kinds:[pZt.kind],getAvailableActions(n){let{file:c,program:u,preferences:d,startPosition:I,triggerReason:h}=n,b=I9r(c,I,h==="invoked",u);return b?s7.isRefactorErrorInfo(b)?d.provideRefactorNotApplicableReason?[{name:vFe,description:dZt,actions:[{...pZt,notApplicableReason:b.error}]}]:v:[{name:vFe,description:dZt,actions:[pZt]}]:v},getEditsForAction(n,c){w.assert(c===vFe,"Unexpected refactor invoked");let{file:u,program:d,startPosition:I}=n,h=I9r(u,I,!0,d);if(!h||s7.isRefactorErrorInfo(h))return;let{references:b,declaration:R,replacement:N}=h;return{edits:Ao.ChangeTracker.with(n,P=>{for(let Q of b)P.replaceNode(u,Q,$qi(Q,N));P.delete(u,R)})}}});function I9r(n,c,u,d){var I,h;let b=d.getTypeChecker(),R=ub(n,c),N=R.parent;if(sr(R)){if(Zee(N)&&L8(N)&&sr(N.name)){if(((I=b.getMergedSymbol(N.symbol).declarations)==null?void 0:I.length)!==1)return{error:tu(Z.Variables_with_multiple_declarations_cannot_be_inlined)};if(C9r(N))return;let V=m9r(N,b,n);return V&&{references:V,declaration:N,replacement:N.initializer}}if(u){let V=b.resolveName(R.text,R,111551,!1);if(V=V&&b.getMergedSymbol(V),((h=V?.declarations)==null?void 0:h.length)!==1)return{error:tu(Z.Variables_with_multiple_declarations_cannot_be_inlined)};let P=V.declarations[0];if(!Zee(P)||!L8(P)||!sr(P.name)||C9r(P))return;let Q=m9r(P,b,n);return Q&&{references:Q,declaration:P,replacement:P.initializer}}return{error:tu(Z.Could_not_find_variable_to_inline)}}}function C9r(n){let c=ps(n.parent.parent,Dp);return lr(c.modifiers,Ox)}function m9r(n,c,u){let d=[],I=Yp.Core.eachSymbolReferenceInFile(n.name,c,u,h=>{if(Yp.isWriteAccessForReference(h)&&!F_(h.parent)||l0(h.parent)||rf(h.parent)||oe(h.parent)||y2(n,h.pos))return!0;d.push(h)});return d.length===0||I?void 0:d}function $qi(n,c){c=vd(c);let{parent:u}=n;return tn(u)&&(EG(c)e$i(c.file,c.program,d,h,c.host,c,c.preferences)),renameFilename:void 0,renameLocation:void 0}}});function e$i(n,c,u,d,I,h,b){let R=c.getTypeChecker(),N=BFe(n,u.all,R),V=oZt(n,c,I,u),P=CFe(V,n.externalModuleIndicator?99:n.commonJsModuleIndicator?1:void 0,c,I),Q=p0.createImportAdder(n,h.program,h.preferences,h.host),te=p0.createImportAdder(P,h.program,h.preferences,h.host);$Ft(n,P,N,d,u,c,I,b,te,Q),eZt(c,d,n.fileName,V,Lx(I))}var t$i={},CZt="Convert overload list to single signature",h9r=tu(Z.Convert_overload_list_to_single_signature),_9r={name:CZt,description:h9r,kind:"refactor.rewrite.function.overloadList"};jx(CZt,{kinds:[_9r.kind],getEditsForAction:n$i,getAvailableActions:r$i});function r$i(n){let{file:c,startPosition:u,program:d}=n;return b9r(c,u,d)?[{name:CZt,description:h9r,actions:[_9r]}]:v}function n$i(n){let{file:c,startPosition:u,program:d}=n,I=b9r(c,u,d);if(!I)return;let h=d.getTypeChecker(),b=I[I.length-1],R=b;switch(b.kind){case 173:{R=_e.updateMethodSignature(b,b.modifiers,b.name,b.questionToken,b.typeParameters,V(I),b.type);break}case 174:{R=_e.updateMethodDeclaration(b,b.modifiers,b.asteriskToken,b.name,b.questionToken,b.typeParameters,V(I),b.type,b.body);break}case 179:{R=_e.updateCallSignature(b,b.typeParameters,V(I),b.type);break}case 176:{R=_e.updateConstructorDeclaration(b,b.modifiers,V(I),b.body);break}case 180:{R=_e.updateConstructSignature(b,b.typeParameters,V(I),b.type);break}case 262:{R=_e.updateFunctionDeclaration(b,b.modifiers,b.asteriskToken,b.name,b.typeParameters,V(I),b.type,b.body);break}default:return w.failBadSyntaxKind(b,"Unhandled signature kind in overload list conversion refactoring")}if(R===b)return;return{renameFilename:void 0,renameLocation:void 0,edits:Ao.ChangeTracker.with(n,te=>{te.replaceNodeRange(c,I[0],I[I.length-1],R)})};function V(te){let re=te[te.length-1];return pd(re)&&re.body&&(te=te.slice(0,te.length-1)),_e.createNodeArray([_e.createParameterDeclaration(void 0,_e.createToken(26),"args",void 0,_e.createUnionTypeNode(Ot(te,P)))])}function P(te){let re=Ot(te.parameters,Q);return ao(_e.createTupleTypeNode(re),lr(re,ue=>!!O(nM(ue)))?0:1)}function Q(te){w.assert(sr(te.name));let re=un(_e.createNamedTupleMember(te.dotDotDotToken,te.name,te.questionToken,te.type||_e.createKeywordTypeNode(133)),te),ue=te.symbol&&te.symbol.getDocumentationComment(h);if(ue){let Ae=c0e(ue);Ae.length&&KS(re,[{text:`* ${Ae.split(` `).map(de=>` * ${de}`).join(` `)} - `,kind:3,pos:-1,end:-1,hasTrailingNewLine:!0,hasLeadingNewline:!0}])}return re}}function f9r(n){switch(n.kind){case 173:case 174:case 179:case 176:case 180:case 262:return!0}return!1}function I9r(n,c,u){let d=Qc(n,c),I=Si(d,f9r);if(!I||dd(I)&&I.body&&G_e(I.body,c))return;let h=u.getTypeChecker(),b=I.symbol;if(!b)return;let R=b.declarations;if(O(R)<=1||!he(R,te=>ls(te)===n)||!f9r(R[0]))return;let N=R[0].kind;if(!he(R,te=>te.kind===N))return;let V=R;if(lr(V,te=>!!te.typeParameters||lr(te.parameters,re=>!!re.modifiers||!sr(re.name))))return;let P=tr(V,te=>h.getSignatureFromDeclaration(te));if(O(P)!==O(R))return;let M=h.getReturnTypeOfSignature(P[0]);if(he(P,te=>h.getReturnTypeOfSignature(te)===M))return V}var fZt="Add or remove braces in an arrow function",C9r=eu(Z.Add_or_remove_braces_in_an_arrow_function),uze={name:"Add braces to arrow function",description:eu(Z.Add_braces_to_arrow_function),kind:"refactor.rewrite.arrow.braces.add"},vFe={name:"Remove braces from arrow function",description:eu(Z.Remove_braces_from_arrow_function),kind:"refactor.rewrite.arrow.braces.remove"};Yx(fZt,{kinds:[vFe.kind],getEditsForAction:qqi,getAvailableActions:zqi});function zqi(n){let{file:c,startPosition:u,triggerReason:d}=n,I=m9r(c,u,d==="invoked");return I?ZG(I)?n.preferences.provideRefactorNotApplicableReason?[{name:fZt,description:C9r,actions:[{...uze,notApplicableReason:I.error},{...vFe,notApplicableReason:I.error}]}]:v:[{name:fZt,description:C9r,actions:[I.addBraces?uze:vFe]}]:v}function qqi(n,c){let{file:u,startPosition:d}=n,I=m9r(u,d);w.assert(I&&!ZG(I),"Expected applicable refactor info");let{expression:h,returnStatement:b,func:R}=I,N;if(c===uze.name){let P=_e.createReturnStatement(h);N=_e.createBlock([P],!0),Pte(h,P,u,3,!0)}else if(c===vFe.name&&b){let P=h||_e.createVoidZero();N=qGe(P)?_e.createParenthesizedExpression(P):P,U_e(b,N,u,3,!1),Pte(b,N,u,3,!1),Eue(b,N,u,3,!1)}else w.fail("invalid action");return{renameFilename:void 0,renameLocation:void 0,edits:po.ChangeTracker.with(n,P=>{P.replaceNode(u,R.body,N)})}}function m9r(n,c,u=!0,d){let I=Qc(n,c),h=Wb(I);if(!h)return{error:eu(Z.Could_not_find_a_containing_arrow_function)};if(!fd(h))return{error:eu(Z.Containing_function_is_not_an_arrow_function)};if(!(!V2(h,I)||V2(h.body,I)&&!u)){if(fP(uze.kind,d)&&tn(h.body))return{func:h,addBraces:!0,expression:h.body};if(fP(vFe.kind,d)&&mc(h.body)&&h.body.statements.length===1){let b=$s(h.body.statements);if(k_(b)){let R=b.expression&&tu(YQ(b.expression,!1))?_e.createParenthesizedExpression(b.expression):b.expression;return{func:h,addBraces:!1,expression:R,returnStatement:b}}}}}var $qi={},h9r="Convert arrow function or function expression",e$i=eu(Z.Convert_arrow_function_or_function_expression),SFe={name:"Convert to anonymous function",description:eu(Z.Convert_to_anonymous_function),kind:"refactor.rewrite.function.anonymous"},wFe={name:"Convert to named function",description:eu(Z.Convert_to_named_function),kind:"refactor.rewrite.function.named"},TFe={name:"Convert to arrow function",description:eu(Z.Convert_to_arrow_function),kind:"refactor.rewrite.function.arrow"};Yx(h9r,{kinds:[SFe.kind,wFe.kind,TFe.kind],getEditsForAction:r$i,getAvailableActions:t$i});function t$i(n){let{file:c,startPosition:u,program:d,kind:I}=n,h=y9r(c,u,d);if(!h)return v;let{selectedVariableDeclaration:b,func:R}=h,N=[],V=[];if(fP(wFe.kind,I)){let P=b||fd(R)&&zs(R.parent)?void 0:eu(Z.Could_not_convert_to_named_function);P?V.push({...wFe,notApplicableReason:P}):N.push(wFe)}if(fP(SFe.kind,I)){let P=!b&&fd(R)?void 0:eu(Z.Could_not_convert_to_anonymous_function);P?V.push({...SFe,notApplicableReason:P}):N.push(SFe)}if(fP(TFe.kind,I)){let P=WA(R)?void 0:eu(Z.Could_not_convert_to_arrow_function);P?V.push({...TFe,notApplicableReason:P}):N.push(TFe)}return[{name:h9r,description:e$i,actions:N.length===0&&n.preferences.provideRefactorNotApplicableReason?V:N}]}function r$i(n,c){let{file:u,startPosition:d,program:I}=n,h=y9r(u,d,I);if(!h)return;let{func:b}=h,R=[];switch(c){case SFe.name:R.push(...o$i(n,b));break;case wFe.name:let N=s$i(b);if(!N)return;R.push(...a$i(n,b,N));break;case TFe.name:if(!WA(b))return;R.push(...c$i(n,b));break;default:return w.fail("invalid action")}return{renameFilename:void 0,renameLocation:void 0,edits:R}}function _9r(n){let c=!1;return n.forEachChild(function u(d){if(Gte(d)){c=!0;return}!Sa(d)&&!mp(d)&&!WA(d)&&mu(d,u)}),c}function y9r(n,c,u){let d=Qc(n,c),I=u.getTypeChecker(),h=i$i(n,I,d.parent);if(h&&!_9r(h.body)&&!I.containsArgumentsReference(h))return{selectedVariableDeclaration:!0,func:h};let b=Wb(d);if(b&&(WA(b)||fd(b))&&!V2(b.body,d)&&!_9r(b.body)&&!I.containsArgumentsReference(b))return WA(b)&&E9r(n,I,b)?void 0:{selectedVariableDeclaration:!1,func:b}}function n$i(n){return zs(n)||yl(n)&&n.declarations.length===1}function i$i(n,c,u){if(!n$i(u))return;let I=(zs(u)?u:$s(u.declarations)).initializer;if(I&&(fd(I)||WA(I)&&!E9r(n,c,I)))return I}function b9r(n){if(tn(n)){let c=_e.createReturnStatement(n),u=n.getSourceFile();return un(c,n),ME(c),U_e(n,c,u,void 0,!0),_e.createBlock([c],!0)}else return n}function s$i(n){let c=n.parent;if(!zs(c)||!D8(c))return;let u=c.parent,d=u.parent;if(!(!yl(u)||!Rp(d)||!sr(c.name)))return{variableDeclaration:c,variableDeclarationList:u,statement:d,name:c.name}}function o$i(n,c){let{file:u}=n,d=b9r(c.body),I=_e.createFunctionExpression(c.modifiers,c.asteriskToken,void 0,c.typeParameters,c.parameters,c.type,d);return po.ChangeTracker.with(n,h=>h.replaceNode(u,c,I))}function a$i(n,c,u){let{file:d}=n,I=b9r(c.body),{variableDeclaration:h,variableDeclarationList:b,statement:R,name:N}=u;yje(R);let V=Nh(h)&32|N_(c),P=_e.createModifiersFromModifierFlags(V),M=_e.createFunctionDeclaration(O(P)?P:void 0,c.asteriskToken,N,c.typeParameters,c.parameters,c.type,I);return b.declarations.length===1?po.ChangeTracker.with(n,te=>te.replaceNode(d,R,M)):po.ChangeTracker.with(n,te=>{te.delete(d,h),te.insertNodeAfter(d,R,M)})}function c$i(n,c){let{file:u}=n,I=c.body.statements[0],h;l$i(c.body,I)?(h=I.expression,ME(h),b4(I,h)):h=c.body;let b=_e.createArrowFunction(c.modifiers,c.typeParameters,c.parameters,c.type,_e.createToken(39),h);return po.ChangeTracker.with(n,R=>R.replaceNode(u,c,b))}function l$i(n,c){return n.statements.length===1&&k_(c)&&!!c.expression}function E9r(n,c,u){return!!u.name&&Yp.Core.isSymbolReferencedInFile(u.name,c,n)}var u$i={},gze="Convert parameters to destructured object",g$i=1,B9r=eu(Z.Convert_parameters_to_destructured_object),v9r={name:gze,description:B9r,kind:"refactor.rewrite.parameters.toDestructured"};Yx(gze,{kinds:[v9r.kind],getEditsForAction:d$i,getAvailableActions:A$i});function A$i(n){let{file:c,startPosition:u}=n;return n0(c)||!T9r(c,u,n.program.getTypeChecker())?v:[{name:gze,description:B9r,actions:[v9r]}]}function d$i(n,c){w.assert(c===gze,"Unexpected action name");let{file:u,startPosition:d,program:I,cancellationToken:h,host:b}=n,R=T9r(u,d,I.getTypeChecker());if(!R||!h)return;let N=f$i(R,I,h);return N.valid?{renameFilename:void 0,renameLocation:void 0,edits:po.ChangeTracker.with(n,P=>p$i(u,I,b,P,R,N))}:{edits:[]}}function p$i(n,c,u,d,I,h){let b=h.signature,R=Ot(x9r(I,c,u),P=>Bd(P));if(b){let P=Ot(x9r(b,c,u),M=>Bd(M));V(b,P)}V(I,R);let N=Ir(h.functionCalls,(P,M)=>Xl(P.pos,M.pos));for(let P of N)if(P.arguments&&P.arguments.length){let M=Bd(v$i(I,P.arguments),!0);d.replaceNodeRange(ls(P),$s(P.arguments),Na(P.arguments),M,{leadingTriviaOption:po.LeadingTriviaOption.IncludeAll,trailingTriviaOption:po.TrailingTriviaOption.Include})}function V(P,M){d.replaceNodeRangeWithNodes(n,$s(P.parameters),Na(P.parameters),M,{joiner:", ",indentation:0,leadingTriviaOption:po.LeadingTriviaOption.IncludeAll,trailingTriviaOption:po.TrailingTriviaOption.Include})}}function f$i(n,c,u){let d=w$i(n),I=Rf(n)?S$i(n):[],h=TA([...d,...I],Og),b=c.getTypeChecker(),R=Fr(h,M=>Yp.getReferenceEntriesForNode(-1,M,c,c.getSourceFiles(),u)),N=V(R);return he(N.declarations,M=>Ue(h,M))||(N.valid=!1),N;function V(M){let te={accessExpressions:[],typeUsages:[]},re={functionCalls:[],declarations:[],classReferences:te,valid:!0},ue=Ot(d,P),Ae=Ot(I,P),de=Rf(n),Be=Ot(d,Fe=>IZt(Fe,b));for(let Fe of M){if(Fe.kind===Yp.EntryKind.Span){re.valid=!1;continue}if(Ue(Be,P(Fe.node))){if(h$i(Fe.node.parent)){re.signature=Fe.node.parent;continue}let Qe=w9r(Fe);if(Qe){re.functionCalls.push(Qe);continue}}let Ne=IZt(Fe.node,b);if(Ne&&Ue(Be,Ne)){let Qe=CZt(Fe);if(Qe){re.declarations.push(Qe);continue}}if(Ue(ue,P(Fe.node))||fue(Fe.node)){if(S9r(Fe))continue;let De=CZt(Fe);if(De){re.declarations.push(De);continue}let lt=w9r(Fe);if(lt){re.functionCalls.push(lt);continue}}if(de&&Ue(Ae,P(Fe.node))){if(S9r(Fe))continue;let De=CZt(Fe);if(De){re.declarations.push(De);continue}let lt=I$i(Fe);if(lt){te.accessExpressions.push(lt);continue}if(bc(n.parent)){let Le=C$i(Fe);if(Le){te.typeUsages.push(Le);continue}}}re.valid=!1}return re}function P(M){let te=b.getSymbolAtLocation(M);return te&&hje(te,b)}}function IZt(n,c){let u=a0e(n);if(u){let d=c.getContextualTypeForObjectLiteralElement(u),I=d?.getSymbol();if(I&&!(aI(I)&6))return I}}function S9r(n){let c=n.node;if(_y(c.parent)||sT(c.parent)||Cm(c.parent)||Px(c.parent)||c0(c.parent)||tf(c.parent))return c}function CZt(n){if(DC(n.node.parent))return n.node}function w9r(n){if(n.node.parent){let c=n.node,u=c.parent;switch(u.kind){case 213:case 214:let d=eo(u,BB);if(d&&d.expression===c)return d;break;case 211:let I=eo(u,Io);if(I&&I.parent&&I.name===c){let b=eo(I.parent,BB);if(b&&b.expression===I)return b}break;case 212:let h=eo(u,hA);if(h&&h.parent&&h.argumentExpression===c){let b=eo(h.parent,BB);if(b&&b.expression===h)return b}break}}}function I$i(n){if(n.node.parent){let c=n.node,u=c.parent;switch(u.kind){case 211:let d=eo(u,Io);if(d&&d.expression===c)return d;break;case 212:let I=eo(u,hA);if(I&&I.expression===c)return I;break}}}function C$i(n){let c=n.node;if(_4(c)===2||kce(c.parent))return c}function T9r(n,c,u){let d=Fte(n,c),I=sce(d);if(!m$i(d)&&I&&_$i(I,u)&&V2(I,d)&&!(I.body&&V2(I.body,d)))return I}function m$i(n){let c=Si(n,xS);if(c){let u=Si(c,d=>!xS(d));return!!u&&dd(u)}return!1}function h$i(n){return jS(n)&&(HI(n.parent)||Se(n.parent))}function _$i(n,c){var u;if(!y$i(n.parameters,c))return!1;switch(n.kind){case 262:return N9r(n)&&NFe(n,c);case 174:if(tu(n.parent)){let d=IZt(n.name,c);return((u=d?.declarations)==null?void 0:u.length)===1&&NFe(n,c)}return NFe(n,c);case 176:return bc(n.parent)?N9r(n.parent)&&NFe(n,c):R9r(n.parent.parent)&&NFe(n,c);case 218:case 219:return R9r(n.parent)}return!1}function NFe(n,c){return!!n.body&&!c.isImplementationOfOverload(n)}function N9r(n){return n.name?!0:!!Lte(n,90)}function y$i(n,c){return E$i(n)>=g$i&&he(n,u=>b$i(u,c))}function b$i(n,c){if(Rv(n)){let u=c.getTypeAtLocation(n);if(!c.isArrayType(u)&&!c.isTupleType(u))return!1}return!n.modifiers&&sr(n.name)}function R9r(n){return zs(n)&&Qp(n)&&sr(n.name)&&!n.type}function mZt(n){return n.length>0&&Gte(n[0].name)}function E$i(n){return mZt(n)?n.length-1:n.length}function D9r(n){return mZt(n)&&(n=_e.createNodeArray(n.slice(1),n.hasTrailingComma)),n}function B$i(n,c){return sr(c)&&T2(c)===n?_e.createShorthandPropertyAssignment(n):_e.createPropertyAssignment(n,c)}function v$i(n,c){let u=D9r(n.parameters),d=Rv(Na(u)),I=d?c.slice(0,u.length-1):c,h=Ot(I,(R,N)=>{let V=Aze(u[N]),P=B$i(V,R);return ME(P.name),KC(P)&&ME(P.initializer),b4(R,P),P});if(d&&c.length>=u.length){let R=c.slice(u.length-1),N=_e.createPropertyAssignment(Aze(Na(u)),_e.createArrayLiteralExpression(R));h.push(N)}return _e.createObjectLiteralExpression(h,!1)}function x9r(n,c,u){let d=c.getTypeChecker(),I=D9r(n.parameters),h=Ot(I,P),b=_e.createObjectBindingPattern(h),R=M(I),N;he(I,ue)&&(N=_e.createObjectLiteralExpression());let V=_e.createParameterDeclaration(void 0,void 0,b,void 0,R,N);if(mZt(n.parameters)){let Ae=n.parameters[0],de=_e.createParameterDeclaration(void 0,void 0,Ae.name,void 0,Ae.type);return ME(de.name),b4(Ae.name,de.name),Ae.type&&(ME(de.type),b4(Ae.type,de.type)),_e.createNodeArray([de,V])}return _e.createNodeArray([V]);function P(Ae){let de=_e.createBindingElement(void 0,void 0,Aze(Ae),Rv(Ae)&&ue(Ae)?_e.createArrayLiteralExpression():Ae.initializer);return ME(de),Ae.initializer&&de.initializer&&b4(Ae.initializer,de.initializer),de}function M(Ae){let de=Ot(Ae,te);return XS(_e.createTypeLiteralNode(de),1)}function te(Ae){let de=Ae.type;!de&&(Ae.initializer||Rv(Ae))&&(de=re(Ae));let Be=_e.createPropertySignature(void 0,Aze(Ae),ue(Ae)?_e.createToken(58):Ae.questionToken,de);return ME(Be),b4(Ae.name,Be.name),Ae.type&&Be.type&&b4(Ae.type,Be.type),Be}function re(Ae){let de=d.getTypeAtLocation(Ae);return vue(de,Ae,c,u)}function ue(Ae){if(Rv(Ae)){let de=d.getTypeAtLocation(Ae);return!d.isTupleType(de)}return d.isOptionalParameter(Ae)}}function Aze(n){return T2(n.name)}function S$i(n){switch(n.parent.kind){case 263:let c=n.parent;return c.name?[c.name]:[w.checkDefined(Lte(c,90),"Nameless class declaration should be a default export")];case 231:let d=n.parent,I=n.parent.parent,h=d.name;return h?[h,I.name]:[I.name]}}function w$i(n){switch(n.kind){case 262:return n.name?[n.name]:[w.checkDefined(Lte(n,90),"Nameless function declaration should be a default export")];case 174:return[n.name];case 176:let u=w.checkDefined(Od(n,137,n.getSourceFile()),"Constructor declaration should have constructor keyword");return n.parent.kind===231?[n.parent.parent.name,u]:[u];case 219:return[n.parent.name];case 218:return n.name?[n.name,n.parent.name]:[n.parent.name];default:return w.assertNever(n,`Unexpected function declaration kind ${n.kind}`)}}var T$i={},hZt="Convert to template string",_Zt=eu(Z.Convert_to_template_string),yZt={name:hZt,description:_Zt,kind:"refactor.rewrite.string"};Yx(hZt,{kinds:[yZt.kind],getEditsForAction:R$i,getAvailableActions:N$i});function N$i(n){let{file:c,startPosition:u}=n,d=k9r(c,u),I=bZt(d),h=bu(I),b={name:hZt,description:_Zt,actions:[]};return h&&n.triggerReason!=="invoked"?v:NB(I)&&(h||no(I)&&EZt(I).isValidConcatenation)?(b.actions.push(yZt),[b]):n.preferences.provideRefactorNotApplicableReason?(b.actions.push({...yZt,notApplicableReason:eu(Z.Can_only_convert_string_concatenations_and_string_literals)}),[b]):v}function k9r(n,c){let u=Qc(n,c),d=bZt(u);return!EZt(d).isValidConcatenation&&FC(d.parent)&&no(d.parent.parent)?d.parent.parent:u}function R$i(n,c){let{file:u,startPosition:d}=n,I=k9r(u,d);switch(c){case _Zt:return{edits:D$i(n,I)};default:return w.fail("invalid action")}}function D$i(n,c){let u=bZt(c),d=n.file,I=Z$i(EZt(u),d),h=m2(d.text,u.end);if(h){let b=h[h.length-1],R={pos:h[0].pos,end:b.end};return po.ChangeTracker.with(n,N=>{N.deleteRange(d,R),N.replaceNode(d,u,I)})}else return po.ChangeTracker.with(n,b=>b.replaceNode(d,u,I))}function x$i(n){return!(n.operatorToken.kind===64||n.operatorToken.kind===65)}function bZt(n){return Si(n.parent,u=>{switch(u.kind){case 211:case 212:return!1;case 228:case 226:return!(no(u.parent)&&x$i(u.parent));default:return"quit"}})||n}function EZt(n){let c=b=>{if(!no(b))return{nodes:[b],operators:[],validOperators:!0,hasString:bu(b)||oY(b)};let{nodes:R,operators:N,hasString:V,validOperators:P}=c(b.left);if(!(V||bu(b.right)||Lx(b.right)))return{nodes:[b],operators:[],hasString:!1,validOperators:!0};let M=b.operatorToken.kind===40,te=P&&M;return R.push(b.right),N.push(b.operatorToken),{nodes:R,operators:N,hasString:!0,validOperators:te}},{nodes:u,operators:d,validOperators:I,hasString:h}=c(n);return{nodes:u,operators:d,isValidConcatenation:I&&h}}var k$i=(n,c)=>(u,d)=>{u(d,I)=>{for(;d.length>0;){let h=d.shift();Eue(n[h],I,c,3,!1),u(h,I)}};function F$i(n){return n.replace(/\\.|[$`]/g,c=>c[0]==="\\"?c:"\\"+c)}function G9r(n){let c=aY(n)||j3(n)?-2:-1;return Tf(n).slice(1,c)}function F9r(n,c){let u=[],d="",I="";for(;n{Z9r(Ne);let De=Qe===te.templateSpans.length-1,lt=Ne.literal.text+(De?ue:""),Le=G9r(Ne.literal)+(De?Ae:"");return _e.createTemplateSpan(Ne.expression,Be&&De?_e.createTemplateTail(lt,Le):_e.createTemplateMiddle(lt,Le))});V.push(...Fe)}else{let Fe=Be?_e.createTemplateTail(ue,Ae):_e.createTemplateMiddle(ue,Ae);I(de,Fe),V.push(_e.createTemplateSpan(te,Fe))}}return _e.createTemplateExpression(P,V)}function Z9r(n){let c=n.getSourceFile();Eue(n,n.expression,c,3,!1),U_e(n.expression,n.expression,c,3,!1)}function L$i(n){return FC(n)&&(Z9r(n),n=n.expression),n}var V$i={},dze="Convert to optional chain expression",BZt=eu(Z.Convert_to_optional_chain_expression),vZt={name:dze,description:BZt,kind:"refactor.rewrite.expression.optionalChain"};Yx(dze,{kinds:[vZt.kind],getEditsForAction:P$i,getAvailableActions:W$i});function W$i(n){let c=L9r(n,n.triggerReason==="invoked");return c?ZG(c)?n.preferences.provideRefactorNotApplicableReason?[{name:dze,description:BZt,actions:[{...vZt,notApplicableReason:c.error}]}]:v:[{name:dze,description:BZt,actions:[vZt]}]:v}function P$i(n,c){let u=L9r(n);return w.assert(u&&!ZG(u),"Expected applicable refactor info"),{edits:po.ChangeTracker.with(n,I=>U$i(n.file,n.program.getTypeChecker(),I,u,c)),renameFilename:void 0,renameLocation:void 0}}function pze(n){return no(n)||BN(n)}function O$i(n){return Hf(n)||k_(n)||Rp(n)}function fze(n){return pze(n)||O$i(n)}function L9r(n,c=!0){let{file:u,program:d}=n,I=z6(n),h=I.length===0;if(h&&!c)return;let b=Qc(u,I.start),R=LGe(u,I.start+I.length),N=Wd(b.pos,R&&R.end>=b.pos?R.getEnd():b.getEnd()),V=h?X$i(b):H$i(b,N),P=V&&fze(V)?J$i(V):void 0;if(!P)return{error:eu(Z.Could_not_find_convertible_access_expression)};let M=d.getTypeChecker();return BN(P)?M$i(P,M):Q$i(P)}function M$i(n,c){let u=n.condition,d=wZt(n.whenTrue);if(!d||c.isNullableType(c.getTypeAtLocation(d)))return{error:eu(Z.Could_not_find_convertible_access_expression)};if((Io(u)||sr(u))&&SZt(u,d.expression))return{finalExpression:d,occurrences:[u],expression:n};if(no(u)){let I=V9r(d.expression,u);return I?{finalExpression:d,occurrences:I,expression:n}:{error:eu(Z.Could_not_find_matching_access_expressions)}}}function Q$i(n){if(n.operatorToken.kind!==56)return{error:eu(Z.Can_only_convert_logical_AND_access_chains)};let c=wZt(n.right);if(!c)return{error:eu(Z.Could_not_find_convertible_access_expression)};let u=V9r(c.expression,n.left);return u?{finalExpression:c,occurrences:u,expression:n}:{error:eu(Z.Could_not_find_matching_access_expressions)}}function V9r(n,c){let u=[];for(;no(c)&&c.operatorToken.kind===56;){let I=SZt(jA(n),jA(c.right));if(!I)break;u.push(I),n=I,c=c.left}let d=SZt(n,c);return d&&u.push(d),u.length>0?u:void 0}function SZt(n,c){if(!(!sr(c)&&!Io(c)&&!hA(c)))return Y$i(n,c)?c:void 0}function Y$i(n,c){for(;(cu(n)||Io(n)||hA(n))&&i0e(n)!==i0e(c);)n=n.expression;for(;Io(n)&&Io(c)||hA(n)&&hA(c);){if(i0e(n)!==i0e(c))return!1;n=n.expression,c=c.expression}return sr(n)&&sr(c)&&n.getText()===c.getText()}function i0e(n){if(sr(n)||GE(n))return n.getText();if(Io(n))return i0e(n.name);if(hA(n))return i0e(n.argumentExpression)}function H$i(n,c){for(;n.parent;){if(fze(n)&&c.length!==0&&n.end>=c.start+c.length)return n;n=n.parent}}function X$i(n){for(;n.parent;){if(fze(n)&&!fze(n.parent))return n;n=n.parent}}function J$i(n){if(pze(n))return n;if(Rp(n)){let c=Y3(n),u=c?.initializer;return u&&pze(u)?u:void 0}return n.expression&&pze(n.expression)?n.expression:void 0}function wZt(n){if(n=jA(n),no(n))return wZt(n.left);if((Io(n)||hA(n)||cu(n))&&!km(n))return n}function W9r(n,c,u){if(Io(c)||hA(c)||cu(c)){let d=W9r(n,c.expression,u),I=u.length>0?u[u.length-1]:void 0,h=I?.getText()===c.expression.getText();if(h&&u.pop(),cu(c))return h?_e.createCallChain(d,_e.createToken(29),c.typeArguments,c.arguments):_e.createCallChain(d,c.questionDotToken,c.typeArguments,c.arguments);if(Io(c))return h?_e.createPropertyAccessChain(d,_e.createToken(29),c.name):_e.createPropertyAccessChain(d,c.questionDotToken,c.name);if(hA(c))return h?_e.createElementAccessChain(d,_e.createToken(29),c.argumentExpression):_e.createElementAccessChain(d,c.questionDotToken,c.argumentExpression)}return c}function U$i(n,c,u,d,I){let{finalExpression:h,occurrences:b,expression:R}=d,N=b[b.length-1],V=W9r(c,h,b);V&&(Io(V)||hA(V)||cu(V))&&(no(R)?u.replaceNodeRange(n,N,h,V):BN(R)&&u.replaceNode(n,R,_e.createBinaryExpression(V,_e.createToken(61),R.whenFalse)))}var P9r={};o(P9r,{Messages:()=>i_,RangeFacts:()=>Q9r,getRangeToExtract:()=>TZt,getRefactorActionsToExtractSymbol:()=>O9r,getRefactorEditsToExtractSymbol:()=>M9r});var Rue="Extract Symbol",Due={name:"Extract Constant",description:eu(Z.Extract_constant),kind:"refactor.extract.constant"},xue={name:"Extract Function",description:eu(Z.Extract_function),kind:"refactor.extract.function"};Yx(Rue,{kinds:[Due.kind,xue.kind],getEditsForAction:M9r,getAvailableActions:O9r});function O9r(n){let c=n.kind,u=TZt(n.file,z6(n),n.triggerReason==="invoked"),d=u.targetRange;if(d===void 0){if(!u.errors||u.errors.length===0||!n.preferences.provideRefactorNotApplicableReason)return v;let Ae=[];return fP(xue.kind,c)&&Ae.push({name:Rue,description:xue.description,actions:[{...xue,notApplicableReason:ue(u.errors)}]}),fP(Due.kind,c)&&Ae.push({name:Rue,description:Due.description,actions:[{...Due,notApplicableReason:ue(u.errors)}]}),Ae}let{affectedTextRange:I,extractions:h}=ees(d,n);if(h===void 0)return v;let b=[],R=new Map,N,V=[],P=new Map,M,te=0;for(let{functionExtraction:Ae,constantExtraction:de}of h){if(fP(xue.kind,c)){let Be=Ae.description;Ae.errors.length===0?R.has(Be)||(R.set(Be,!0),b.push({description:Be,name:`function_scope_${te}`,kind:xue.kind,range:{start:{line:Ll(n.file,I.pos).line,offset:Ll(n.file,I.pos).character},end:{line:Ll(n.file,I.end).line,offset:Ll(n.file,I.end).character}}})):N||(N={description:Be,name:`function_scope_${te}`,notApplicableReason:ue(Ae.errors),kind:xue.kind})}if(fP(Due.kind,c)){let Be=de.description;de.errors.length===0?P.has(Be)||(P.set(Be,!0),V.push({description:Be,name:`constant_scope_${te}`,kind:Due.kind,range:{start:{line:Ll(n.file,I.pos).line,offset:Ll(n.file,I.pos).character},end:{line:Ll(n.file,I.end).line,offset:Ll(n.file,I.end).character}}})):M||(M={description:Be,name:`constant_scope_${te}`,notApplicableReason:ue(de.errors),kind:Due.kind})}te++}let re=[];return b.length?re.push({name:Rue,description:eu(Z.Extract_function),actions:b}):n.preferences.provideRefactorNotApplicableReason&&N&&re.push({name:Rue,description:eu(Z.Extract_function),actions:[N]}),V.length?re.push({name:Rue,description:eu(Z.Extract_constant),actions:V}):n.preferences.provideRefactorNotApplicableReason&&M&&re.push({name:Rue,description:eu(Z.Extract_constant),actions:[M]}),re.length?re:v;function ue(Ae){let de=Ae[0].messageText;return typeof de!="string"&&(de=de.messageText),de}}function M9r(n,c){let d=TZt(n.file,z6(n)).targetRange,I=/^function_scope_(\d+)$/.exec(c);if(I){let b=+I[1];return w.assert(isFinite(b),"Expected to parse a finite number from the function scope index"),q$i(d,n,b)}let h=/^constant_scope_(\d+)$/.exec(c);if(h){let b=+h[1];return w.assert(isFinite(b),"Expected to parse a finite number from the constant scope index"),$$i(d,n,b)}w.fail("Unrecognized action name")}var i_;(n=>{function c(u){return{message:u,code:0,category:3,key:u}}n.cannotExtractRange=c("Cannot extract range."),n.cannotExtractImport=c("Cannot extract import statement."),n.cannotExtractSuper=c("Cannot extract super call."),n.cannotExtractJSDoc=c("Cannot extract JSDoc."),n.cannotExtractEmpty=c("Cannot extract empty range."),n.expressionExpected=c("expression expected."),n.uselessConstantType=c("No reason to extract constant of type."),n.statementOrExpressionExpected=c("Statement or expression expected."),n.cannotExtractRangeContainingConditionalBreakOrContinueStatements=c("Cannot extract range containing conditional break or continue statements."),n.cannotExtractRangeContainingConditionalReturnStatement=c("Cannot extract range containing conditional return statement."),n.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange=c("Cannot extract range containing labeled break or continue with target outside of the range."),n.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators=c("Cannot extract range containing writes to references located outside of the target range in generators."),n.typeWillNotBeVisibleInTheNewScope=c("Type will not visible in the new scope."),n.functionWillNotBeVisibleInTheNewScope=c("Function will not visible in the new scope."),n.cannotExtractIdentifier=c("Select more than a single identifier."),n.cannotExtractExportedEntity=c("Cannot extract exported declaration"),n.cannotWriteInExpression=c("Cannot write back side-effects when extracting an expression"),n.cannotExtractReadonlyPropertyInitializerOutsideConstructor=c("Cannot move initialization of read-only class property outside of the constructor"),n.cannotExtractAmbientBlock=c("Cannot extract code from ambient contexts"),n.cannotAccessVariablesFromNestedScopes=c("Cannot access variables from nested scopes"),n.cannotExtractToJSClass=c("Cannot extract constant to a class scope in JS"),n.cannotExtractToExpressionArrowFunction=c("Cannot extract constant to an arrow function without a block"),n.cannotExtractFunctionsContainingThisToMethod=c("Cannot extract functions containing this to method")})(i_||(i_={}));var Q9r=(n=>(n[n.None=0]="None",n[n.HasReturn=1]="HasReturn",n[n.IsGenerator=2]="IsGenerator",n[n.IsAsyncFunction=4]="IsAsyncFunction",n[n.UsesThis=8]="UsesThis",n[n.UsesThisInFunction=16]="UsesThisInFunction",n[n.InStaticRegion=32]="InStaticRegion",n))(Q9r||{});function TZt(n,c,u=!0){let{length:d}=c;if(d===0&&!u)return{errors:[Im(n,c.start,d,i_.cannotExtractEmpty)]};let I=d===0&&u,h=_Gt(n,c.start),b=LGe(n,Uu(c)),R=h&&b&&u?K$i(h,b,n):c,N=I?_es(h):Y_e(h,n,R),V=I?N:Y_e(b,n,R),P=0,M;if(!N||!V)return{errors:[Im(n,c.start,d,i_.cannotExtractRange)]};if(N.flags&16777216)return{errors:[Im(n,c.start,d,i_.cannotExtractJSDoc)]};if(N.parent!==V.parent)return{errors:[Im(n,c.start,d,i_.cannotExtractRange)]};if(N!==V){if(!Qte(N.parent))return{errors:[Im(n,c.start,d,i_.cannotExtractRange)]};let Fe=[];for(let Ne of N.parent.statements){if(Ne===N||Fe.length){let Qe=Be(Ne);if(Qe)return{errors:Qe};Fe.push(Ne)}if(Ne===V)break}return Fe.length?{targetRange:{range:Fe,facts:P,thisNode:M}}:{errors:[Im(n,c.start,d,i_.cannotExtractRange)]}}if(k_(N)&&!N.expression)return{errors:[Im(n,c.start,d,i_.cannotExtractRange)]};let te=ue(N),re=Ae(te)||Be(te);if(re)return{errors:re};return{targetRange:{range:j$i(te),facts:P,thisNode:M}};function ue(Fe){if(k_(Fe)){if(Fe.expression)return Fe.expression}else if(Rp(Fe)||yl(Fe)){let Ne=Rp(Fe)?Fe.declarationList.declarations:Fe.declarations,Qe=0,De;for(let lt of Ne)lt.initializer&&(Qe++,De=lt.initializer);if(Qe===1)return De}else if(zs(Fe)&&Fe.initializer)return Fe.initializer;return Fe}function Ae(Fe){if(sr(Hf(Fe)?Fe.expression:Fe))return[Us(Fe,i_.cannotExtractIdentifier)]}function de(Fe,Ne){let Qe=Fe;for(;Qe!==Ne;){if(Qe.kind===172){$u(Qe)&&(P|=32);break}else if(Qe.kind===169){Wb(Qe).kind===176&&(P|=32);break}else Qe.kind===174&&$u(Qe)&&(P|=32);Qe=Qe.parent}}function Be(Fe){let Ne;if((st=>{st[st.None=0]="None",st[st.Break=1]="Break",st[st.Continue=2]="Continue",st[st.Return=4]="Return"})(Ne||(Ne={})),w.assert(Fe.pos<=Fe.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809 (1)"),w.assert(!Gv(Fe.pos),"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809 (2)"),!Ic(Fe)&&!(NB(Fe)&&Y9r(Fe))&&!kZt(Fe))return[Us(Fe,i_.statementOrExpressionExpected)];if(Fe.flags&33554432)return[Us(Fe,i_.cannotExtractAmbientBlock)];let Qe=Um(Fe);Qe&&de(Fe,Qe);let De,lt=4,Le;if(je(Fe),P&8){let st=r0(Fe,!1,!1);(st.kind===262||st.kind===174&&st.parent.kind===210||st.kind===218)&&(P|=16)}return De;function je(st){if(De)return!0;if(DC(st)){let qe=st.kind===260?st.parent.parent:st;if(ba(qe,32))return(De||(De=[])).push(Us(st,i_.cannotExtractExportedEntity)),!0}switch(st.kind){case 272:return(De||(De=[])).push(Us(st,i_.cannotExtractImport)),!0;case 277:return(De||(De=[])).push(Us(st,i_.cannotExtractExportedEntity)),!0;case 108:if(st.parent.kind===213){let qe=Um(st);if(qe===void 0||qe.pos=c.start+c.length)return(De||(De=[])).push(Us(st,i_.cannotExtractSuper)),!0}else P|=8,M=st;break;case 219:mu(st,function qe(it){if(Gte(it))P|=8,M=st;else{if(Sa(it)||$l(it)&&!fd(it))return!1;mu(it,qe)}});case 263:case 262:Gc(st.parent)&&st.parent.externalModuleIndicator===void 0&&(De||(De=[])).push(Us(st,i_.functionWillNotBeVisibleInTheNewScope));case 231:case 218:case 174:case 176:case 177:case 178:return!1}let nt=lt;switch(st.kind){case 245:lt&=-5;break;case 258:lt=0;break;case 241:st.parent&&st.parent.kind===258&&st.parent.finallyBlock===st&&(lt=4);break;case 297:case 296:lt|=1;break;default:MR(st,!1)&&(lt|=3);break}switch(st.kind){case 197:case 110:P|=8,M=st;break;case 256:{let qe=st.label;(Le||(Le=[])).push(qe.escapedText),mu(st,je),Le.pop();break}case 252:case 251:{let qe=st.label;qe?Ue(Le,qe.escapedText)||(De||(De=[])).push(Us(st,i_.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange)):lt&(st.kind===252?1:2)||(De||(De=[])).push(Us(st,i_.cannotExtractRangeContainingConditionalBreakOrContinueStatements));break}case 223:P|=4;break;case 229:P|=2;break;case 253:lt&4?P|=1:(De||(De=[])).push(Us(st,i_.cannotExtractRangeContainingConditionalReturnStatement));break;default:mu(st,je);break}lt=nt}}}function K$i(n,c,u){let d=n.getStart(u),I=c.getEnd();return u.text.charCodeAt(I)===59&&I++,{start:d,length:I-d}}function j$i(n){if(Ic(n))return[n];if(NB(n))return Hf(n.parent)?[n.parent]:n;if(kZt(n))return n}function NZt(n){return fd(n)?_X(n.body):dd(n)||Gc(n)||SN(n)||Sa(n)}function z$i(n){let c=OZ(n.range)?$s(n.range):n.range;if(n.facts&8&&!(n.facts&16)){let d=Um(c);if(d){let I=Si(c,dd);return I?[I,d]:[d]}}let u=[];for(;;)if(c=c.parent,c.kind===169&&(c=Si(c,d=>dd(d)).parent),NZt(c)&&(u.push(c),c.kind===307))return u}function q$i(n,c,u){let{scopes:d,readsAndWrites:{target:I,usagesPerScope:h,functionErrorsPerScope:b,exposedVariableDeclarations:R}}=RZt(n,c);return w.assert(!b[u].length,"The extraction went missing? How?"),c.cancellationToken.throwIfCancellationRequested(),oes(I,d[u],h[u],R,n,c)}function $$i(n,c,u){let{scopes:d,readsAndWrites:{target:I,usagesPerScope:h,constantErrorsPerScope:b,exposedVariableDeclarations:R}}=RZt(n,c);w.assert(!b[u].length,"The extraction went missing? How?"),w.assert(R.length===0,"Extract constant accepted a range containing a variable declaration?"),c.cancellationToken.throwIfCancellationRequested();let N=tn(I)?I:I.statements[0].expression;return aes(N,d[u],h[u],n.facts,c)}function ees(n,c){let{scopes:u,affectedTextRange:d,readsAndWrites:{functionErrorsPerScope:I,constantErrorsPerScope:h}}=RZt(n,c),b=u.map((R,N)=>{let V=tes(R),P=res(R),M=dd(R)?nes(R):Sa(R)?ies(R):ses(R),te,re;return M===1?(te=fN(eu(Z.Extract_to_0_in_1_scope),[V,"global"]),re=fN(eu(Z.Extract_to_0_in_1_scope),[P,"global"])):M===0?(te=fN(eu(Z.Extract_to_0_in_1_scope),[V,"module"]),re=fN(eu(Z.Extract_to_0_in_1_scope),[P,"module"])):(te=fN(eu(Z.Extract_to_0_in_1),[V,M]),re=fN(eu(Z.Extract_to_0_in_1),[P,M])),N===0&&!Sa(R)&&(re=fN(eu(Z.Extract_to_0_in_enclosing_scope),[P])),{functionExtraction:{description:te,errors:I[N]},constantExtraction:{description:re,errors:h[N]}}});return{affectedTextRange:d,extractions:b}}function RZt(n,c){let{file:u}=c,d=z$i(n),I=mes(n,u),h=hes(n,d,I,u,c.program.getTypeChecker(),c.cancellationToken);return{scopes:d,affectedTextRange:I,readsAndWrites:h}}function tes(n){return dd(n)?"inner function":Sa(n)?"method":"function"}function res(n){return Sa(n)?"readonly field":"constant"}function nes(n){switch(n.kind){case 176:return"constructor";case 218:case 262:return n.name?`function '${n.name.text}'`:Bje;case 219:return"arrow function";case 174:return`method '${n.name.getText()}'`;case 177:return`'get ${n.name.getText()}'`;case 178:return`'set ${n.name.getText()}'`;default:w.assertNever(n,`Unexpected scope kind ${n.kind}`)}}function ies(n){return n.kind===263?n.name?`class '${n.name.text}'`:"anonymous class declaration":n.name?`class expression '${n.name.text}'`:"anonymous class expression"}function ses(n){return n.kind===268?`namespace '${n.parent.name.getText()}'`:n.externalModuleIndicator?0:1}function oes(n,c,{usages:u,typeParameterUsages:d,substitutions:I},h,b,R){let N=R.program.getTypeChecker(),V=iA(R.program.getCompilerOptions()),P=d0.createImportAdder(R.file,R.program,R.preferences,R.host),M=c.getSourceFile(),te=E4(Sa(c)?"newMethod":"newFunction",M),re=so(c),ue=_e.createIdentifier(te),Ae,de=[],Be=[],Fe;u.forEach((Lt,kt)=>{let Zt;if(!re){let jt=N.getTypeOfSymbolAtLocation(Lt.symbol,Lt.node);jt=N.getBaseTypeOfLiteralType(jt),Zt=d0.typeToAutoImportableTypeNode(N,P,jt,c,V,1)}let Dr=_e.createParameterDeclaration(void 0,void 0,kt,void 0,Zt);de.push(Dr),Lt.usage===2&&(Fe||(Fe=[])).push(Lt),Be.push(_e.createIdentifier(kt))});let Qe=on(d.values(),Lt=>({type:Lt,declaration:les(Lt,R.startPosition)})).sort(ues),De=Qe.length===0?void 0:tr(Qe,({declaration:Lt})=>Lt),lt=De!==void 0?De.map(Lt=>_e.createTypeReferenceNode(Lt.name,void 0)):void 0;if(tn(n)&&!re){let Lt=N.getContextualType(n);Ae=N.typeToTypeNode(Lt,c,1)}let{body:Le,returnValueProperty:je}=Aes(n,h,Fe,I,!!(b.facts&1));ME(Le);let st,nt=!!(b.facts&16);if(Sa(c)){let Lt=re?[]:[_e.createModifier(123)];b.facts&32&&Lt.push(_e.createModifier(126)),b.facts&4&&Lt.push(_e.createModifier(134)),st=_e.createMethodDeclaration(Lt.length?Lt:void 0,b.facts&2?_e.createToken(42):void 0,ue,void 0,De,de,Ae,Le)}else nt&&de.unshift(_e.createParameterDeclaration(void 0,void 0,"this",void 0,N.typeToTypeNode(N.getTypeAtLocation(b.thisNode),c,1),void 0)),st=_e.createFunctionDeclaration(b.facts&4?[_e.createToken(134)]:void 0,b.facts&2?_e.createToken(42):void 0,ue,De,de,Ae,Le);let qe=po.ChangeTracker.fromContext(R),it=(OZ(b.range)?Na(b.range):b.range).end,It=fes(it,c);It?qe.insertNodeBefore(R.file,It,st,!0):qe.insertNodeAtEndOfScope(R.file,c,st),P.writeFixes(qe);let dt=[],wt=ges(c,b,te);nt&&Be.unshift(_e.createIdentifier("this"));let vt=_e.createCallExpression(nt?_e.createPropertyAccessExpression(wt,"call"):wt,lt,Be);if(b.facts&2&&(vt=_e.createYieldExpression(_e.createToken(42),vt)),b.facts&4&&(vt=_e.createAwaitExpression(vt)),xZt(n)&&(vt=_e.createJsxExpression(void 0,vt)),h.length&&!Fe)if(w.assert(!je,"Expected no returnValueProperty"),w.assert(!(b.facts&1),"Expected RangeFacts.HasReturn flag to be unset"),h.length===1){let Lt=h[0];dt.push(_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(Bd(Lt.name),void 0,Bd(Lt.type),vt)],Lt.parent.flags)))}else{let Lt=[],kt=[],Zt=h[0].parent.flags,Dr=!1;for(let mr of h){Lt.push(_e.createBindingElement(void 0,void 0,Bd(mr.name)));let Pt=N.typeToTypeNode(N.getBaseTypeOfLiteralType(N.getTypeAtLocation(mr)),c,1);kt.push(_e.createPropertySignature(void 0,mr.symbol.name,void 0,Pt)),Dr=Dr||mr.type!==void 0,Zt=Zt&mr.parent.flags}let jt=Dr?_e.createTypeLiteralNode(kt):void 0;jt&&co(jt,1),dt.push(_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(_e.createObjectBindingPattern(Lt),void 0,jt,vt)],Zt)))}else if(h.length||Fe){if(h.length)for(let kt of h){let Zt=kt.parent.flags;Zt&2&&(Zt=Zt&-3|1),dt.push(_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(kt.symbol.name,void 0,Tt(kt.type))],Zt)))}je&&dt.push(_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(je,void 0,Tt(Ae))],1)));let Lt=DZt(h,Fe);je&&Lt.unshift(_e.createShorthandPropertyAssignment(je)),Lt.length===1?(w.assert(!je,"Shouldn't have returnValueProperty here"),dt.push(_e.createExpressionStatement(_e.createAssignment(Lt[0].name,vt))),b.facts&1&&dt.push(_e.createReturnStatement())):(dt.push(_e.createExpressionStatement(_e.createAssignment(_e.createObjectLiteralExpression(Lt),vt))),je&&dt.push(_e.createReturnStatement(_e.createIdentifier(je))))}else b.facts&1?dt.push(_e.createReturnStatement(vt)):OZ(b.range)?dt.push(_e.createExpressionStatement(vt)):dt.push(vt);OZ(b.range)?qe.replaceNodeRangeWithNodes(R.file,$s(b.range),Na(b.range),dt):qe.replaceNodeWithNodes(R.file,b.range,dt);let Ye=qe.getChanges(),Et=(OZ(b.range)?$s(b.range):b.range).getSourceFile().fileName,Kt=J_e(Ye,Et,te,!1);return{renameFilename:Et,renameLocation:Kt,edits:Ye};function Tt(Lt){if(Lt===void 0)return;let kt=Bd(Lt),Zt=kt;for(;ro(Zt);)Zt=Zt.type;return Is(Zt)&&be(Zt.types,Dr=>Dr.kind===157)?kt:_e.createUnionTypeNode([kt,_e.createKeywordTypeNode(157)])}}function aes(n,c,{substitutions:u},d,I){let h=I.program.getTypeChecker(),b=c.getSourceFile(),R=cZt(n,c,h,b),N=so(c),V=N||!h.isContextSensitive(n)?void 0:h.typeToTypeNode(h.getContextualType(n),c,1),P=des(jA(n),u);({variableType:V,initializer:P}=Ae(V,P)),ME(P);let M=po.ChangeTracker.fromContext(I);if(Sa(c)){w.assert(!N,"Cannot extract to a JS class");let de=[];de.push(_e.createModifier(123)),d&32&&de.push(_e.createModifier(126)),de.push(_e.createModifier(148));let Be=_e.createPropertyDeclaration(de,R,void 0,V,P),Fe=_e.createPropertyAccessExpression(d&32?_e.createIdentifier(c.name.getText()):_e.createThis(),_e.createIdentifier(R));xZt(n)&&(Fe=_e.createJsxExpression(void 0,Fe));let Ne=n.pos,Qe=Ies(Ne,c);M.insertNodeBefore(I.file,Qe,Be,!0),M.replaceNode(I.file,n,Fe)}else{let de=_e.createVariableDeclaration(R,void 0,V,P),Be=ces(n,c);if(Be){M.insertNodeBefore(I.file,Be,de);let Fe=_e.createIdentifier(R);M.replaceNode(I.file,n,Fe)}else if(n.parent.kind===244&&c===Si(n,NZt)){let Fe=_e.createVariableStatement(void 0,_e.createVariableDeclarationList([de],2));M.replaceNode(I.file,n.parent,Fe)}else{let Fe=_e.createVariableStatement(void 0,_e.createVariableDeclarationList([de],2)),Ne=Ces(n,c);if(Ne.pos===0?M.insertNodeAtTopOfFile(I.file,Fe,!1):M.insertNodeBefore(I.file,Ne,Fe,!1),n.parent.kind===244)M.delete(I.file,n.parent);else{let Qe=_e.createIdentifier(R);xZt(n)&&(Qe=_e.createJsxExpression(void 0,Qe)),M.replaceNode(I.file,n,Qe)}}}let te=M.getChanges(),re=n.getSourceFile().fileName,ue=J_e(te,re,R,!0);return{renameFilename:re,renameLocation:ue,edits:te};function Ae(de,Be){if(de===void 0)return{variableType:de,initializer:Be};if(!WA(Be)&&!fd(Be)||Be.typeParameters)return{variableType:de,initializer:Be};let Fe=h.getTypeAtLocation(n),Ne=wu(h.getSignaturesOfType(Fe,0));if(!Ne)return{variableType:de,initializer:Be};if(Ne.getTypeParameters())return{variableType:de,initializer:Be};let Qe=[],De=!1;for(let lt of Be.parameters)if(lt.type)Qe.push(lt);else{let Le=h.getTypeAtLocation(lt);Le===h.getAnyType()&&(De=!0),Qe.push(_e.updateParameterDeclaration(lt,lt.modifiers,lt.dotDotDotToken,lt.name,lt.questionToken,lt.type||h.typeToTypeNode(Le,c,1),lt.initializer))}if(De)return{variableType:de,initializer:Be};if(de=void 0,fd(Be))Be=_e.updateArrowFunction(Be,ew(n)?lN(n):void 0,Be.typeParameters,Qe,Be.type||h.typeToTypeNode(Ne.getReturnType(),c,1),Be.equalsGreaterThanToken,Be.body);else{if(Ne&&Ne.thisParameter){let lt=$i(Qe);if(!lt||sr(lt.name)&<.name.escapedText!=="this"){let Le=h.getTypeOfSymbolAtLocation(Ne.thisParameter,n);Qe.splice(0,0,_e.createParameterDeclaration(void 0,void 0,"this",void 0,h.typeToTypeNode(Le,c,1)))}}Be=_e.updateFunctionExpression(Be,ew(n)?lN(n):void 0,Be.asteriskToken,Be.name,Be.typeParameters,Qe,Be.type||h.typeToTypeNode(Ne.getReturnType(),c,1),Be.body)}return{variableType:de,initializer:Be}}}function ces(n,c){let u;for(;n!==void 0&&n!==c;){if(zs(n)&&n.initializer===u&&yl(n.parent)&&n.parent.declarations.length>1)return n;u=n,n=n.parent}}function les(n,c){let u,d=n.symbol;if(d&&d.declarations)for(let I of d.declarations)(u===void 0||I.pos0;if(mc(n)&&!h&&d.size===0)return{body:_e.createBlock(n.statements,!0),returnValueProperty:void 0};let b,R=!1,N=_e.createNodeArray(mc(n)?n.statements.slice(0):[Ic(n)?n:_e.createReturnStatement(jA(n))]);if(h||d.size){let P=ws(N,V,Ic).slice();if(h&&!I&&Ic(n)){let M=DZt(c,u);M.length===1?P.push(_e.createReturnStatement(M[0].name)):P.push(_e.createReturnStatement(_e.createObjectLiteralExpression(M)))}return{body:_e.createBlock(P,!0),returnValueProperty:b}}else return{body:_e.createBlock(N,!0),returnValueProperty:void 0};function V(P){if(!R&&k_(P)&&h){let M=DZt(c,u);return P.expression&&(b||(b="__return"),M.unshift(_e.createPropertyAssignment(b,xr(P.expression,V,tn)))),M.length===1?_e.createReturnStatement(M[0].name):_e.createReturnStatement(_e.createObjectLiteralExpression(M))}else{let M=R;R=R||dd(P)||Sa(P);let te=d.get(sd(P).toString()),re=te?Bd(te):ns(P,V,void 0);return R=M,re}}}function des(n,c){return c.size?u(n):n;function u(d){let I=c.get(sd(d).toString());return I?Bd(I):ns(d,u,void 0)}}function pes(n){if(dd(n)){let c=n.body;if(mc(c))return c.statements}else{if(SN(n)||Gc(n))return n.statements;if(Sa(n))return n.members;}return v}function fes(n,c){return be(pes(c),u=>u.pos>=n&&dd(u)&&!Rf(u))}function Ies(n,c){let u=c.members;w.assert(u.length>0,"Found no members");let d,I=!0;for(let h of u){if(h.pos>n)return d||u[0];if(I&&!Ql(h)){if(d!==void 0)return h;I=!1}d=h}return d===void 0?w.fail():d}function Ces(n,c){w.assert(!Sa(c));let u;for(let d=n;d!==c;d=d.parent)NZt(d)&&(u=d);for(let d=(u||n).parent;;d=d.parent){if(Qte(d)){let I;for(let h of d.statements){if(h.pos>n.pos)break;I=h}return!I&&cte(d)?(w.assert(Ed(d.parent.parent),"Grandparent isn't a switch statement"),d.parent.parent):w.checkDefined(I,"prevStatement failed to get set")}w.assert(d!==c,"Didn't encounter a block-like before encountering scope")}}function DZt(n,c){let u=Ot(n,I=>_e.createShorthandPropertyAssignment(I.symbol.name)),d=Ot(c,I=>_e.createShorthandPropertyAssignment(I.symbol.name));return u===void 0?d:d===void 0?u:u.concat(d)}function OZ(n){return Ra(n)}function mes(n,c){return OZ(n.range)?{pos:$s(n.range).getStart(c),end:Na(n.range).getEnd()}:n.range}function hes(n,c,u,d,I,h){let b=new Map,R=[],N=[],V=[],P=[],M=[],te=new Map,re=[],ue,Ae=OZ(n.range)?n.range.length===1&&Hf(n.range[0])?n.range[0].expression:void 0:n.range,de;if(Ae===void 0){let It=n.range,dt=$s(It).getStart(),wt=Na(It).end;de=Im(d,dt,wt-dt,i_.expressionExpected)}else I.getTypeAtLocation(Ae).flags&147456&&(de=Us(Ae,i_.uselessConstantType));for(let It of c){R.push({usages:new Map,typeParameterUsages:new Map,substitutions:new Map}),N.push(new Map),V.push([]);let dt=[];de&&dt.push(de),Sa(It)&&so(It)&&dt.push(Us(It,i_.cannotExtractToJSClass)),fd(It)&&!mc(It.body)&&dt.push(Us(It,i_.cannotExtractToExpressionArrowFunction)),P.push(dt)}let Be=new Map,Fe=OZ(n.range)?_e.createBlock(n.range):n.range,Ne=OZ(n.range)?$s(n.range):n.range,Qe=De(Ne);if(Le(Fe),Qe&&!OZ(n.range)&&!NN(n.range)){let It=I.getContextualType(n.range);lt(It)}if(b.size>0){let It=new Map,dt=0;for(let wt=Ne;wt!==void 0&&dt{R[dt].typeParameterUsages.set(Ye,vt)}),dt++),Y$(wt))for(let vt of R1(wt)){let Ye=I.getTypeAtLocation(vt);b.has(Ye.id.toString())&&It.set(Ye.id.toString(),Ye)}w.assert(dt===c.length,"Should have iterated all scopes")}if(M.length){let It=Q$(c[0],c[0].parent)?c[0]:S2(c[0]);mu(It,nt)}for(let It=0;It0&&(dt.usages.size>0||dt.typeParameterUsages.size>0)){let Ye=OZ(n.range)?n.range[0]:n.range;P[It].push(Us(Ye,i_.cannotAccessVariablesFromNestedScopes))}n.facts&16&&Sa(c[It])&&V[It].push(Us(n.thisNode,i_.cannotExtractFunctionsContainingThisToMethod));let wt=!1,vt;if(R[It].usages.forEach(Ye=>{Ye.usage===2&&(wt=!0,Ye.symbol.flags&106500&&Ye.symbol.valueDeclaration&&nb(Ye.symbol.valueDeclaration,8)&&(vt=Ye.symbol.valueDeclaration))}),w.assert(OZ(n.range)||re.length===0,"No variable declarations expected if something was extracted"),wt&&!OZ(n.range)){let Ye=Us(n.range,i_.cannotWriteInExpression);V[It].push(Ye),P[It].push(Ye)}else if(vt&&It>0){let Ye=Us(vt,i_.cannotExtractReadonlyPropertyInitializerOutsideConstructor);V[It].push(Ye),P[It].push(Ye)}else if(ue){let Ye=Us(ue,i_.cannotExtractExportedEntity);V[It].push(Ye),P[It].push(Ye)}}return{target:Fe,usagesPerScope:R,functionErrorsPerScope:V,constantErrorsPerScope:P,exposedVariableDeclarations:re};function De(It){return!!Si(It,dt=>Y$(dt)&&R1(dt).length!==0)}function lt(It){let dt=I.getSymbolWalker(()=>(h.throwIfCancellationRequested(),!0)),{visitedTypes:wt}=dt.walkType(It);for(let vt of wt)vt.isTypeParameter()&&b.set(vt.id.toString(),vt)}function Le(It,dt=1){if(Qe){let wt=I.getTypeAtLocation(It);lt(wt)}if(DC(It)&&It.symbol&&M.push(It),fm(It))Le(It.left,2),Le(It.right);else if(p8(It))Le(It.operand,2);else if(Io(It)||hA(It))mu(It,Le);else if(sr(It)){if(!It.parent||a0(It.parent)&&It!==It.parent.left||Io(It.parent)&&It!==It.parent.expression)return;je(It,dt,LS(It))}else mu(It,Le)}function je(It,dt,wt){let vt=st(It,dt,wt);if(vt)for(let Ye=0;Ye=dt)return Ye;if(Be.set(Ye,dt),ht){for(let Tt of R)Tt.usages.get(It.text)&&Tt.usages.set(It.text,{usage:dt,symbol:vt,node:It});return Ye}let Et=vt.getDeclarations(),Kt=Et&&be(Et,Tt=>Tt.getSourceFile()===d);if(Kt&&!Z_e(u,Kt.getStart(),Kt.end)){if(n.facts&2&&dt===2){let Tt=Us(It,i_.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators);for(let Lt of V)Lt.push(Tt);for(let Lt of P)Lt.push(Tt)}for(let Tt=0;Ttvt.symbol===dt);if(wt)if(zs(wt)){let vt=wt.symbol.id.toString();te.has(vt)||(re.push(wt),te.set(vt,!0))}else ue=ue||wt}mu(It,nt)}function qe(It){return It.parent&&G_(It.parent)&&It.parent.name===It?I.getShorthandAssignmentValueSymbol(It.parent):I.getSymbolAtLocation(It)}function it(It,dt,wt){if(!It)return;let vt=It.getDeclarations();if(vt&&vt.some(ht=>ht.parent===dt))return _e.createIdentifier(It.name);let Ye=it(It.parent,dt,wt);if(Ye!==void 0)return wt?_e.createQualifiedName(Ye,_e.createIdentifier(It.name)):_e.createPropertyAccessExpression(Ye,It.name)}}function _es(n){return Si(n,c=>c.parent&&Y9r(c)&&!no(c.parent))}function Y9r(n){let{parent:c}=n;switch(c.kind){case 306:return!1}switch(n.kind){case 11:return c.kind!==272&&c.kind!==276;case 230:case 206:case 208:return!1;case 80:return c.kind!==208&&c.kind!==276&&c.kind!==281}return!0}function xZt(n){return kZt(n)||(Ox(n)||u4(n)||gY(n))&&(Ox(n.parent)||gY(n.parent))}function kZt(n){return bu(n)&&n.parent&&NN(n.parent)}var yes={},Ize="Generate 'get' and 'set' accessors",GZt=eu(Z.Generate_get_and_set_accessors),FZt={name:Ize,description:GZt,kind:"refactor.rewrite.property.generateAccessors"};Yx(Ize,{kinds:[FZt.kind],getEditsForAction:function(c,u){if(!c.endPosition)return;let d=d0.getAccessorConvertiblePropertyAtPosition(c.file,c.program,c.startPosition,c.endPosition);w.assert(d&&!ZG(d),"Expected applicable refactor info");let I=d0.generateAccessorFromProperty(c.file,c.program,c.startPosition,c.endPosition,c,u);if(!I)return;let h=c.file.fileName,b=d.renameAccessor?d.accessorName:d.fieldName,N=(sr(b)?0:-1)+J_e(I,h,b.text,Jc(d.declaration));return{renameFilename:h,renameLocation:N,edits:I}},getAvailableActions(n){if(!n.endPosition)return v;let c=d0.getAccessorConvertiblePropertyAtPosition(n.file,n.program,n.startPosition,n.endPosition,n.triggerReason==="invoked");return c?ZG(c)?n.preferences.provideRefactorNotApplicableReason?[{name:Ize,description:GZt,actions:[{...FZt,notApplicableReason:c.error}]}]:v:[{name:Ize,description:GZt,actions:[FZt]}]:v}});var bes={},Cze="Infer function return type",ZZt=eu(Z.Infer_function_return_type),mze={name:Cze,description:ZZt,kind:"refactor.rewrite.function.returnType"};Yx(Cze,{kinds:[mze.kind],getEditsForAction:Ees,getAvailableActions:Bes});function Ees(n){let c=H9r(n);if(c&&!ZG(c))return{renameFilename:void 0,renameLocation:void 0,edits:po.ChangeTracker.with(n,d=>ves(n.file,d,c.declaration,c.returnTypeNode))}}function Bes(n){let c=H9r(n);return c?ZG(c)?n.preferences.provideRefactorNotApplicableReason?[{name:Cze,description:ZZt,actions:[{...mze,notApplicableReason:c.error}]}]:v:[{name:Cze,description:ZZt,actions:[mze]}]:v}function ves(n,c,u,d){let I=Od(u,22,n),h=fd(u)&&I===void 0,b=h?$s(u.parameters):I;b&&(h&&(c.insertNodeBefore(n,b,_e.createToken(21)),c.insertNodeAfter(n,b,_e.createToken(22))),c.insertNodeAt(n,b.end,d,{prefix:": "}))}function H9r(n){if(so(n.file)||!fP(mze.kind,n.kind))return;let c=lb(n.file,n.startPosition),u=Si(c,b=>mc(b)||b.parent&&fd(b.parent)&&(b.kind===39||b.parent.body===b)?"quit":Ses(b));if(!u||!u.body||u.type)return{error:eu(Z.Return_type_must_be_inferred_from_a_function)};let d=n.program.getTypeChecker(),I=wes(d,u);if(!I)return{error:eu(Z.Could_not_determine_function_return_type)};let h=d.typeToTypeNode(I,u,1);if(h)return{declaration:u,returnTypeNode:h}}function Ses(n){switch(n.kind){case 262:case 218:case 219:case 174:return!0;default:return!1}}function wes(n,c){if(n.isImplementationOfOverload(c)){let d=n.getTypeAtLocation(c).getCallSignatures();if(d.length>1)return n.getUnionType(tr(d,I=>I.getReturnType()))}let u=n.getSignatureFromDeclaration(c);if(u)return n.getReturnTypeOfSignature(u)}var X9r=(n=>(n[n.typeOffset=8]="typeOffset",n[n.modifierMask=255]="modifierMask",n))(X9r||{}),J9r=(n=>(n[n.class=0]="class",n[n.enum=1]="enum",n[n.interface=2]="interface",n[n.namespace=3]="namespace",n[n.typeParameter=4]="typeParameter",n[n.type=5]="type",n[n.parameter=6]="parameter",n[n.variable=7]="variable",n[n.enumMember=8]="enumMember",n[n.property=9]="property",n[n.function=10]="function",n[n.member=11]="member",n))(J9r||{}),U9r=(n=>(n[n.declaration=0]="declaration",n[n.static=1]="static",n[n.async=2]="async",n[n.readonly=3]="readonly",n[n.defaultLibrary=4]="defaultLibrary",n[n.local=5]="local",n))(U9r||{});function K9r(n,c,u,d){let I=LZt(n,c,u,d);w.assert(I.spans.length%3===0);let h=I.spans,b=[];for(let R=0;R{I.push(b.getStart(c),b.getWidth(c),(R+1<<8)+N)},d),I}function Nes(n,c,u,d,I){let h=n.getTypeChecker(),b=!1;function R(N){switch(N.kind){case 267:case 263:case 264:case 262:case 231:case 218:case 219:I.throwIfCancellationRequested()}if(!N||!sI(u,N.pos,N.getFullWidth())||N.getFullWidth()===0)return;let V=b;if((Ox(N)||u4(N))&&(b=!0),kle(N)&&(b=!1),sr(N)&&!b&&!kes(N)&&!b6(N.escapedText)){let P=h.getSymbolAtLocation(N);if(P){P.flags&2097152&&(P=h.getAliasedSymbol(P));let M=Res(P,_4(N));if(M!==void 0){let te=0;N.parent&&(ml(N.parent)||q9r.get(N.parent.kind)===M)&&N.parent.name===N&&(te=1),M===6&&z9r(N)&&(M=9),M=Des(h,N,M);let re=P.valueDeclaration;if(re){let ue=Nh(re),Ae=qy(re);ue&256&&(te|=2),ue&1024&&(te|=4),M!==0&&M!==2&&(ue&8||Ae&2||P.getFlags()&8)&&(te|=8),(M===7||M===10)&&xes(re,c)&&(te|=32),n.isSourceFileDefaultLibrary(re.getSourceFile())&&(te|=16)}else P.declarations&&P.declarations.some(ue=>n.isSourceFileDefaultLibrary(ue.getSourceFile()))&&(te|=16);d(N,M,te)}}}mu(N,R),b=V}R(c)}function Res(n,c){let u=n.getFlags();if(u&32)return 0;if(u&384)return 1;if(u&524288)return 5;if(u&64){if(c&2)return 2}else if(u&262144)return 4;let d=n.valueDeclaration||n.declarations&&n.declarations[0];return d&&ml(d)&&(d=j9r(d)),d&&q9r.get(d.kind)}function Des(n,c,u){if(u===7||u===9||u===6){let d=n.getTypeAtLocation(c);if(d){let I=h=>h(d)||d.isUnion()&&d.types.some(h);if(u!==6&&I(h=>h.getConstructSignatures().length>0))return 0;if(I(h=>h.getCallSignatures().length>0)&&!I(h=>h.getProperties().length>0)||Ges(c))return u===9?11:10}}return u}function xes(n,c){return ml(n)&&(n=j9r(n)),zs(n)?(!Gc(n.parent.parent.parent)||dY(n.parent))&&n.getSourceFile()===c:mp(n)?!Gc(n.parent)&&n.getSourceFile()===c:!1}function j9r(n){for(;;)if(ml(n.parent.parent))n=n.parent.parent;else return n.parent.parent}function kes(n){let c=n.parent;return c&&(sT(c)||_y(c)||Px(c))}function Ges(n){for(;z9r(n);)n=n.parent;return cu(n.parent)&&n.parent.expression===n}function z9r(n){return a0(n.parent)&&n.parent.right===n||Io(n.parent)&&n.parent.name===n}var q9r=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]]),$9r="0.8";function eVr(n,c,u,d){let I=pX(n)?new VZt(n,c,u):n===80?new rVr(80,c,u):n===81?new nVr(81,c,u):new tVr(n,c,u);return I.parent=d,I.flags=d.flags&101441536,I}var VZt=class{constructor(n,c,u){this.pos=c,this.end=u,this.kind=n,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(n){w.assert(!Gv(this.pos)&&!Gv(this.end),n||"Node must have a real position for this operation")}getSourceFile(){return ls(this)}getStart(n,c){return this.assertHasRealPosition(),Sx(this,n,c)}getFullStart(){return this.assertHasRealPosition(),this.pos}getEnd(){return this.assertHasRealPosition(),this.end}getWidth(n){return this.assertHasRealPosition(),this.getEnd()-this.getStart(n)}getFullWidth(){return this.assertHasRealPosition(),this.end-this.pos}getLeadingTriviaWidth(n){return this.assertHasRealPosition(),this.getStart(n)-this.pos}getFullText(n){return this.assertHasRealPosition(),(n||this.getSourceFile()).text.substring(this.pos,this.end)}getText(n){return this.assertHasRealPosition(),n||(n=this.getSourceFile()),n.text.substring(this.getStart(n),this.getEnd())}getChildCount(n){return this.getChildren(n).length}getChildAt(n,c){return this.getChildren(c)[n]}getChildren(n=ls(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"),QKe(this,n)??tRt(this,n,Fes(this,n))}getFirstToken(n){this.assertHasRealPosition();let c=this.getChildren(n);if(!c.length)return;let u=be(c,d=>d.kind<309||d.kind>351);return u.kind<166?u:u.getFirstToken(n)}getLastToken(n){this.assertHasRealPosition();let c=this.getChildren(n),u=qo(c);if(u)return u.kind<166?u:u.getLastToken(n)}forEachChild(n,c){return mu(this,n,c)}};function Fes(n,c){let u=[];if(pf(n))return n.forEachChild(b=>{u.push(b)}),u;X0.setText((c||n.getSourceFile()).text);let d=n.pos,I=b=>{RFe(u,d,b.pos,n),u.push(b),d=b.end},h=b=>{RFe(u,d,b.pos,n),u.push(Zes(b,n)),d=b.end};return X(n.jsDoc,I),d=n.pos,n.forEachChild(I,h),RFe(u,d,n.end,n),X0.setText(void 0),u}function RFe(n,c,u,d){for(X0.resetTokenState(c);cc.tagName.text==="inheritDoc"||c.tagName.text==="inheritdoc")}function hze(n,c){if(!n)return v;let u=mP.getJsDocTagsFromDeclarations(n,c);if(c&&(u.length===0||n.some(iVr))){let d=new Set;for(let I of n){let h=sVr(c,I,b=>{var R;if(!d.has(b))return d.add(b),I.kind===177||I.kind===178?b.getContextualJsDocTags(I,c):((R=b.declarations)==null?void 0:R.length)===1?b.getJsDocTags(c):void 0});h&&(u=[...h,...u])}}return u}function DFe(n,c){if(!n)return v;let u=mP.getJsDocCommentsFromDeclarations(n,c);if(c&&(u.length===0||n.some(iVr))){let d=new Set;for(let I of n){let h=sVr(c,I,b=>{if(!d.has(b))return d.add(b),I.kind===177||I.kind===178?b.getContextualDocumentationComment(I,c):b.getDocumentationComment(c)});h&&(u=u.length===0?h.slice():h.concat(Wte(),u))}}return u}function sVr(n,c,u){var d;let I=((d=c.parent)==null?void 0:d.kind)===176?c.parent.parent:c.parent;if(!I)return;let h=IC(c);return le(J8(I),b=>{let R=n.getTypeAtLocation(b),N=h&&R.symbol?n.getTypeOfSymbol(R.symbol):R,V=n.getPropertyOfType(N,c.symbol.name);return V?u(V):void 0})}var Pes=class extends VZt{constructor(n,c,u){super(n,c,u)}update(n,c){return i8e(this,n,c)}getLineAndCharacterOfPosition(n){return Ll(this,n)}getLineStarts(){return Rc(this)}getPositionOfLineAndCharacter(n,c,u){return Lu(Rc(this),n,c,this.text,u)}getLineEndOfPosition(n){let{line:c}=this.getLineAndCharacterOfPosition(n),u=this.getLineStarts(),d;c+1>=u.length&&(d=this.getEnd()),d||(d=u[c+1]-1);let I=this.getFullText();return I[d]===` -`&&I[d-1]==="\r"?d-1:d}getNamedDeclarations(){return this.namedDeclarations||(this.namedDeclarations=this.computeNamedDeclarations()),this.namedDeclarations}computeNamedDeclarations(){let n=ec();return this.forEachChild(I),n;function c(h){let b=d(h);b&&n.add(b,h)}function u(h){let b=n.get(h);return b||n.set(h,b=[]),b}function d(h){let b=Jw(h);return b&&(xg(b)&&Io(b.expression)?b.expression.name.text:NI(b)?M_e(b):void 0)}function I(h){switch(h.kind){case 262:case 218:case 174:case 173:let b=h,R=d(b);if(R){let P=u(R),M=qo(P);M&&b.parent===M.parent&&b.symbol===M.symbol?b.body&&!M.body&&(P[P.length-1]=b):P.push(b)}mu(h,I);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:c(h),mu(h,I);break;case 169:if(!ba(h,31))break;case 260:case 208:{let P=h;if(pu(P.name)){mu(P.name,I);break}P.initializer&&I(P.initializer)}case 306:case 172:case 171:c(h);break;case 278:let N=h;N.exportClause&&(GB(N.exportClause)?X(N.exportClause.elements,I):I(N.exportClause.name));break;case 272:let V=h.importClause;V&&(V.name&&c(V.name),V.namedBindings&&(V.namedBindings.kind===274?c(V.namedBindings):X(V.namedBindings.elements,I)));break;case 226:CI(h)!==0&&c(h);default:mu(h,I)}}}},Oes=class{constructor(n,c,u){this.fileName=n,this.text=c,this.skipTrivia=u||(d=>d)}getLineAndCharacterOfPosition(n){return Ll(this,n)}};function Mes(){return{getNodeConstructor:()=>VZt,getTokenConstructor:()=>tVr,getIdentifierConstructor:()=>rVr,getPrivateIdentifierConstructor:()=>nVr,getSourceFileConstructor:()=>Pes,getSymbolConstructor:()=>Les,getTypeConstructor:()=>Ves,getSignatureConstructor:()=>Wes,getSourceMapSourceConstructor:()=>Oes}}function s0e(n){let c=!0;for(let d in n)if(Qa(n,d)&&!oVr(d)){c=!1;break}if(c)return n;let u={};for(let d in n)if(Qa(n,d)){let I=oVr(d)?d:d.charAt(0).toLowerCase()+d.substr(1);u[I]=n[d]}return u}function oVr(n){return!n.length||n.charAt(0)===n.charAt(0).toLowerCase()}function o0e(n){return n?Ot(n,c=>c.text).join(""):""}function xFe(){return{target:1,jsx:1}}function _ze(){return d0.getSupportedErrorCodes()}var Qes=class{constructor(n){this.host=n}getCurrentSourceFile(n){var c,u,d,I,h,b,R,N;let V=this.host.getScriptSnapshot(n);if(!V)throw new Error("Could not find file: '"+n+"'.");let P=mje(n,this.host),M=this.host.getScriptVersion(n),te;if(this.currentFileName!==n){let re={languageVersion:99,impliedNodeFormat:b_e(gA(n,this.host.getCurrentDirectory(),((d=(u=(c=this.host).getCompilerHost)==null?void 0:u.call(c))==null?void 0:d.getCanonicalFileName)||Dx(this.host)),(N=(R=(b=(h=(I=this.host).getCompilerHost)==null?void 0:h.call(I))==null?void 0:b.getModuleResolutionCache)==null?void 0:R.call(b))==null?void 0:N.getPackageJsonInfoCache(),this.host,this.host.getCompilationSettings()),setExternalModuleIndicator:A6(this.host.getCompilationSettings()),jsDocParsingMode:0};te=kFe(n,V,re,M,!0,P)}else if(this.currentFileVersion!==M){let re=V.getChangeRange(this.currentFileScriptSnapshot);te=yze(this.currentSourceFile,V,M,re)}return te&&(this.currentFileVersion=M,this.currentFileName=n,this.currentFileScriptSnapshot=V,this.currentSourceFile=te),this.currentSourceFile}};function aVr(n,c,u){n.version=u,n.scriptSnapshot=c}function kFe(n,c,u,d,I,h){let b=L6(n,K6(c),u,I,h);return aVr(b,c,d),b}function yze(n,c,u,d,I){if(d&&u!==n.version){let b,R=d.span.start!==0?n.text.substr(0,d.span.start):"",N=Uu(d.span)!==n.text.length?n.text.substr(Uu(d.span)):"";if(d.newLength===0)b=R&&N?R+N:R||N;else{let P=c.getText(d.span.start,d.span.start+d.newLength);b=R&&N?R+P+N:R?R+P:P+N}let V=i8e(n,b,d,I);return aVr(V,c,u),V.nameTable=void 0,n!==V&&n.scriptSnapshot&&(n.scriptSnapshot.dispose&&n.scriptSnapshot.dispose(),n.scriptSnapshot=void 0),V}let h={languageVersion:n.languageVersion,impliedNodeFormat:n.impliedNodeFormat,setExternalModuleIndicator:n.setExternalModuleIndicator,jsDocParsingMode:n.jsDocParsingMode};return kFe(n.fileName,c,h,u,!0,n.scriptKind)}var Yes={isCancellationRequested:TC,throwIfCancellationRequested:oc},Hes=class{constructor(n){this.cancellationToken=n}isCancellationRequested(){return this.cancellationToken.isCancellationRequested()}throwIfCancellationRequested(){var n;if(this.isCancellationRequested())throw(n=Mi)==null||n.instant(Mi.Phase.Session,"cancellationThrown",{kind:"CancellationTokenObject"}),new os}},PZt=class{constructor(n,c=20){this.hostCancellationToken=n,this.throttleWaitMilliseconds=c,this.lastCancellationCheckTime=0}isCancellationRequested(){let n=ql();return Math.abs(n-this.lastCancellationCheckTime)>=this.throttleWaitMilliseconds?(this.lastCancellationCheckTime=n,this.hostCancellationToken.isCancellationRequested()):!1}throwIfCancellationRequested(){var n;if(this.isCancellationRequested())throw(n=Mi)==null||n.instant(Mi.Phase.Session,"cancellationThrown",{kind:"ThrottledCancellationToken"}),new os}},cVr=["getSemanticDiagnostics","getSuggestionDiagnostics","getCompilerOptionsDiagnostics","getSemanticClassifications","getEncodedSemanticClassifications","getCodeFixesAtPosition","getCombinedCodeFix","applyCodeActionCommand","organizeImports","getEditsForFileRename","getEmitOutput","getApplicableRefactors","getEditsForRefactor","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls","provideInlayHints","getSupportedCodeFixes","getPasteEdits"],Xes=[...cVr,"getCompletionsAtPosition","getCompletionEntryDetails","getCompletionEntrySymbol","getSignatureHelpItems","getQuickInfoAtPosition","getDefinitionAtPosition","getDefinitionAndBoundSpan","getImplementationAtPosition","getTypeDefinitionAtPosition","getReferencesAtPosition","findReferences","getDocumentHighlights","getNavigateToItems","getRenameInfo","findRenameLocations","getApplicableRefactors"];function OZt(n,c=uFt(n.useCaseSensitiveFileNames&&n.useCaseSensitiveFileNames(),n.getCurrentDirectory(),n.jsDocParsingMode),u){var d;let I;u===void 0?I=0:typeof u=="boolean"?I=u?2:0:I=u;let h=new Qes(n),b,R,N=0,V=n.getCancellationToken?new Hes(n.getCancellationToken()):Yes,P=n.getCurrentDirectory();GDe((d=n.getLocalizedDiagnosticMessages)==null?void 0:d.bind(n));function M(Re){n.log&&n.log(Re)}let te=UX(n),re=tA(te),ue=BFt({useCaseSensitiveFileNames:()=>te,getCurrentDirectory:()=>P,getProgram:Fe,fileExists:Hi(n,n.fileExists),readFile:Hi(n,n.readFile),getDocumentPositionMapper:Hi(n,n.getDocumentPositionMapper),getSourceFileLike:Hi(n,n.getSourceFileLike),log:M});function Ae(Re){let Jt=b.getSourceFile(Re);if(!Jt){let bt=new Error(`Could not find source file: '${Re}'.`);throw bt.ProgramFiles=b.getSourceFiles().map(Vt=>Vt.fileName),bt}return Jt}function de(){n.updateFromProject&&!n.updateFromProjectInProgress?n.updateFromProject():Be()}function Be(){var Re,Jt,bt;if(w.assert(I!==2),n.getProjectVersion){let Tl=n.getProjectVersion();if(Tl){if(R===Tl&&!((Re=n.hasChangedAutomaticTypeDirectiveNames)!=null&&Re.call(n)))return;R=Tl}}let Vt=n.getTypeRootsVersion?n.getTypeRootsVersion():0;N!==Vt&&(M("TypeRoots version has changed; provide new program"),b=void 0,N=Vt);let dn=n.getScriptFileNames().slice(),On=n.getCompilationSettings()||xFe(),Mn=n.hasInvalidatedResolutions||TC,Ii=Hi(n,n.hasInvalidatedLibResolutions)||TC,ds=Hi(n,n.hasChangedAutomaticTypeDirectiveNames),Es=(Jt=n.getProjectReferences)==null?void 0:Jt.call(n),oo,Vi={getSourceFile:Qd,getSourceFileByPath:kd,getCancellationToken:()=>V,getCanonicalFileName:re,useCaseSensitiveFileNames:()=>te,getNewLine:()=>G1(On),getDefaultLibFileName:Tl=>n.getDefaultLibFileName(Tl),writeFile:oc,getCurrentDirectory:()=>P,fileExists:Tl=>n.fileExists(Tl),readFile:Tl=>n.readFile&&n.readFile(Tl),getSymlinkCache:Hi(n,n.getSymlinkCache),realpath:Hi(n,n.realpath),directoryExists:Tl=>k1(Tl,n),getDirectories:Tl=>n.getDirectories?n.getDirectories(Tl):[],readDirectory:(Tl,lg,mf,zc,Zc)=>(w.checkDefined(n.readDirectory,"'LanguageServiceHost.readDirectory' must be implemented to correctly process 'projectReferences'"),n.readDirectory(Tl,lg,mf,zc,Zc)),onReleaseOldSourceFile:JA,onReleaseParsedCommandLine:hu,hasInvalidatedResolutions:Mn,hasInvalidatedLibResolutions:Ii,hasChangedAutomaticTypeDirectiveNames:ds,trace:Hi(n,n.trace),resolveModuleNames:Hi(n,n.resolveModuleNames),getModuleResolutionCache:Hi(n,n.getModuleResolutionCache),createHash:Hi(n,n.createHash),resolveTypeReferenceDirectives:Hi(n,n.resolveTypeReferenceDirectives),resolveModuleNameLiterals:Hi(n,n.resolveModuleNameLiterals),resolveTypeReferenceDirectiveReferences:Hi(n,n.resolveTypeReferenceDirectiveReferences),resolveLibrary:Hi(n,n.resolveLibrary),useSourceOfProjectReferenceRedirect:Hi(n,n.useSourceOfProjectReferenceRedirect),getParsedCommandLine:Gs,jsDocParsingMode:n.jsDocParsingMode},ko=Vi.getSourceFile,{getSourceFileWithCache:Yc}=cue(Vi,Tl=>gA(Tl,P,re),(...Tl)=>ko.call(Vi,...Tl));Vi.getSourceFile=Yc,(bt=n.setCompilerHost)==null||bt.call(n,Vi);let fl={useCaseSensitiveFileNames:te,fileExists:Tl=>Vi.fileExists(Tl),readFile:Tl=>Vi.readFile(Tl),directoryExists:Tl=>Vi.directoryExists(Tl),getDirectories:Tl=>Vi.getDirectories(Tl),realpath:Vi.realpath,readDirectory:(...Tl)=>Vi.readDirectory(...Tl),trace:Vi.trace,getCurrentDirectory:Vi.getCurrentDirectory,onUnRecoverableConfigFileDiagnostic:oc},oa=c.getKeyForCompilationSettings(On),Da=new Set;if(L6e(b,dn,On,(Tl,lg)=>n.getScriptVersion(lg),Tl=>Vi.fileExists(Tl),Mn,Ii,ds,Gs,Es)){Vi=void 0,oo=void 0,Da=void 0;return}b=E_e({rootNames:dn,options:On,host:Vi,oldProgram:b,projectReferences:Es}),Vi=void 0,oo=void 0,Da=void 0,ue.clearCache(),b.getTypeChecker();return;function Gs(Tl){let lg=gA(Tl,P,re),mf=oo?.get(lg);if(mf!==void 0)return mf||void 0;let zc=n.getParsedCommandLine?n.getParsedCommandLine(Tl):ri(Tl);return(oo||(oo=new Map)).set(lg,zc||!1),zc}function ri(Tl){let lg=Qd(Tl,100);if(lg)return lg.path=gA(Tl,P,re),lg.resolvedPath=lg.path,lg.originalFileName=lg.fileName,t_e(lg,fl,Oc(aa(Tl),P),void 0,Oc(Tl,P))}function hu(Tl,lg,mf){var zc;n.getParsedCommandLine?(zc=n.onReleaseParsedCommandLine)==null||zc.call(n,Tl,lg,mf):lg&&JA(lg.sourceFile,mf)}function JA(Tl,lg){let mf=c.getKeyForCompilationSettings(lg);c.releaseDocumentWithKey(Tl.resolvedPath,mf,Tl.scriptKind,Tl.impliedNodeFormat)}function Qd(Tl,lg,mf,zc){return kd(Tl,gA(Tl,P,re),lg,mf,zc)}function kd(Tl,lg,mf,zc,Zc){w.assert(Vi,"getOrCreateSourceFileByPath called after typical CompilerHost lifetime, check the callstack something with a reference to an old host.");let Km=n.getScriptSnapshot(Tl);if(!Km)return;let Df=mje(Tl,n),f0=n.getScriptVersion(Tl);if(!Zc){let xI=b&&b.getSourceFileByPath(lg);if(xI){if(Df===xI.scriptKind||Da.has(xI.resolvedPath))return c.updateDocumentWithKey(Tl,lg,n,oa,Km,f0,Df,mf);c.releaseDocumentWithKey(xI.resolvedPath,c.getKeyForCompilationSettings(b.getCompilerOptions()),xI.scriptKind,xI.impliedNodeFormat),Da.add(xI.resolvedPath)}}return c.acquireDocumentWithKey(Tl,lg,n,oa,Km,f0,Df,mf)}}function Fe(){if(I===2){w.assert(b===void 0);return}return de(),b}function Ne(){var Re;return(Re=n.getPackageJsonAutoImportProvider)==null?void 0:Re.call(n)}function Qe(Re,Jt){let bt=b.getTypeChecker(),Vt=dn();if(!Vt)return!1;for(let Mn of Re)for(let Ii of Mn.references){let ds=On(Ii);if(w.assertIsDefined(ds),Jt.has(Ii)||Yp.isDeclarationOfSymbol(ds,Vt)){Jt.add(Ii),Ii.isDefinition=!0;let Es=KGe(Ii,ue,Hi(n,n.fileExists));Es&&Jt.add(Es)}else Ii.isDefinition=!1}return!0;function dn(){for(let Mn of Re)for(let Ii of Mn.references){if(Jt.has(Ii)){let Es=On(Ii);return w.assertIsDefined(Es),bt.getSymbolAtLocation(Es)}let ds=KGe(Ii,ue,Hi(n,n.fileExists));if(ds&&Jt.has(ds)){let Es=On(ds);if(Es)return bt.getSymbolAtLocation(Es)}}}function On(Mn){let Ii=b.getSourceFile(Mn.fileName);if(!Ii)return;let ds=lb(Ii,Mn.textSpan.start);return Yp.Core.getAdjustedNode(ds,{use:Yp.FindReferencesUse.References})}}function De(){if(b){let Re=c.getKeyForCompilationSettings(b.getCompilerOptions());X(b.getSourceFiles(),Jt=>c.releaseDocumentWithKey(Jt.resolvedPath,Re,Jt.scriptKind,Jt.impliedNodeFormat)),b=void 0}}function lt(){De(),n=void 0}function Le(Re){return de(),b.getSyntacticDiagnostics(Ae(Re),V).slice()}function je(Re){de();let Jt=Ae(Re),bt=b.getSemanticDiagnostics(Jt,V);if(!LE(b.getCompilerOptions()))return bt.slice();let Vt=b.getDeclarationDiagnostics(Jt,V);return[...bt,...Vt]}function st(Re){return de(),Jje(Ae(Re),b,V)}function nt(){return de(),[...b.getOptionsDiagnostics(V),...b.getGlobalDiagnostics(V)]}function qe(Re,Jt,bt=Lv,Vt){let dn={...bt,includeCompletionsForModuleExports:bt.includeCompletionsForModuleExports||bt.includeExternalModuleExports,includeCompletionsWithInsertText:bt.includeCompletionsWithInsertText||bt.includeInsertTextCompletions};return de(),o7.getCompletionsAtPosition(n,b,M,Ae(Re),Jt,dn,bt.triggerCharacter,bt.triggerKind,V,Vt&&jC.getFormatContext(Vt,n),bt.includeSymbol)}function it(Re,Jt,bt,Vt,dn,On=Lv,Mn){return de(),o7.getCompletionEntryDetails(b,M,Ae(Re),Jt,{name:bt,source:dn,data:Mn},n,Vt&&jC.getFormatContext(Vt,n),On,V)}function It(Re,Jt,bt,Vt,dn=Lv){return de(),o7.getCompletionEntrySymbol(b,M,Ae(Re),Jt,{name:bt,source:Vt},n,dn)}function dt(Re,Jt){de();let bt=Ae(Re),Vt=lb(bt,Jt);if(Vt===bt)return;let dn=b.getTypeChecker(),On=vt(Vt),Mn=jes(On,dn);if(!Mn||dn.isUnknownSymbol(Mn)){let Vi=Ye(bt,On,Jt)?dn.getTypeAtLocation(On):void 0;return Vi&&{kind:"",kindModifiers:"",textSpan:Ey(On,bt),displayParts:dn.runWithCancellationToken(V,ko=>H_e(ko,Vi,y4(On))),documentation:Vi.symbol?Vi.symbol.getDocumentationComment(dn):void 0,tags:Vi.symbol?Vi.symbol.getJsDocTags(dn):void 0}}let{symbolKind:Ii,displayParts:ds,documentation:Es,tags:oo}=dn.runWithCancellationToken(V,Vi=>MZ.getSymbolDisplayPartsDocumentationAndSymbolKind(Vi,Mn,bt,y4(On),On));return{kind:Ii,kindModifiers:MZ.getSymbolModifiers(dn,Mn),textSpan:Ey(On,bt),displayParts:ds,documentation:Es,tags:oo}}function wt(Re,Jt){return de(),kqe.pasteEditsProvider(Ae(Re.targetFile),Re.pastedText,Re.pasteLocations,Re.copiedFrom?{file:Ae(Re.copiedFrom.file),range:Re.copiedFrom.range}:void 0,n,Re.preferences,jC.getFormatContext(Jt,n),V)}function vt(Re){return zS(Re.parent)&&Re.pos===Re.parent.pos?Re.parent.expression:At(Re.parent)&&Re.pos===Re.parent.pos||Vb(Re.parent)&&Re.parent.name===Re||oT(Re.parent)?Re.parent:Re}function Ye(Re,Jt,bt){switch(Jt.kind){case 80:return Jt.flags&16777216&&!so(Jt)&&(Jt.parent.kind===171&&Jt.parent.name===Jt||Si(Jt,Vt=>Vt.kind===169))?!1:!Z7e(Jt)&&!L7e(Jt)&&!E2(Jt.parent);case 211:case 166:return!LZ(Re,bt);case 110:case 197:case 108:case 202:return!0;case 236:return Vb(Jt);default:return!1}}function ht(Re,Jt,bt,Vt){return de(),Kte.getDefinitionAtPosition(b,Ae(Re),Jt,bt,Vt)}function Et(Re,Jt){return de(),Kte.getDefinitionAndBoundSpan(b,Ae(Re),Jt)}function Kt(Re,Jt){return de(),Kte.getTypeDefinitionAtPosition(b.getTypeChecker(),Ae(Re),Jt)}function Tt(Re,Jt){return de(),Yp.getImplementationsAtPosition(b,V,b.getSourceFiles(),Ae(Re),Jt)}function Lt(Re,Jt,bt){let Vt=Mc(Re);w.assert(bt.some(Mn=>Mc(Mn)===Vt)),de();let dn=tr(bt,Mn=>b.getSourceFile(Mn)),On=Ae(Re);return CFe.getDocumentHighlights(b,V,On,Jt,dn)}function kt(Re,Jt,bt,Vt,dn){de();let On=Ae(Re),Mn=ZGe(lb(On,Jt));if(rZe.nodeIsEligibleForRename(Mn))if(sr(Mn)&&(TN(Mn.parent)||uY(Mn.parent))&&HX(Mn.escapedText)){let{openingElement:Ii,closingElement:ds}=Mn.parent.parent;return[Ii,ds].map(Es=>{let oo=Ey(Es.tagName,On);return{fileName:On.fileName,textSpan:oo,...Yp.toContextSpan(oo,On,Es.parent)}})}else{let Ii=W2(On,dn??Lv),ds=typeof dn=="boolean"?dn:dn?.providePrefixAndSuffixTextForRename;return Dr(Mn,Jt,{findInStrings:bt,findInComments:Vt,providePrefixAndSuffixTextForRename:ds,use:Yp.FindReferencesUse.Rename},(Es,oo,Vi)=>Yp.toRenameLocation(Es,oo,Vi,ds||!1,Ii))}}function Zt(Re,Jt){return de(),Dr(lb(Ae(Re),Jt),Jt,{use:Yp.FindReferencesUse.References},Yp.toReferenceEntry)}function Dr(Re,Jt,bt,Vt){de();let dn=bt&&bt.use===Yp.FindReferencesUse.Rename?b.getSourceFiles().filter(On=>!b.isSourceFileDefaultLibrary(On)):b.getSourceFiles();return Yp.findReferenceOrRenameEntries(b,V,dn,Re,Jt,bt,Vt)}function jt(Re,Jt){return de(),Yp.findReferencedSymbols(b,V,b.getSourceFiles(),Ae(Re),Jt)}function mr(Re){return de(),Yp.Core.getReferencesForFileName(Re,b,b.getSourceFiles()).map(Yp.toReferenceEntry)}function Pt(Re,Jt,bt,Vt=!1,dn=!1){de();let On=bt?[Ae(bt)]:b.getSourceFiles();return dLr(On,b.getTypeChecker(),V,Re,Jt,Vt,dn)}function Vr(Re,Jt,bt){de();let Vt=Ae(Re),dn=n.getCustomTransformers&&n.getCustomTransformers();return Kxt(b,Vt,!!Jt,V,dn,bt)}function Yr(Re,Jt,{triggerReason:bt}=Lv){de();let Vt=Ae(Re);return h0e.getSignatureHelpItems(b,Vt,Jt,bt,V)}function pr(Re){return h.getCurrentSourceFile(Re)}function zr(Re,Jt,bt){let Vt=h.getCurrentSourceFile(Re),dn=lb(Vt,Jt);if(dn===Vt)return;switch(dn.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 On=dn;for(;;)if(kte(On)||IGt(On))On=On.parent;else if(W7e(On))if(On.parent.parent.kind===267&&On.parent.parent.body===On.parent)On=On.parent.parent.name;else break;else break;return Wd(On.getStart(),dn.getEnd())}function $n(Re,Jt){let bt=h.getCurrentSourceFile(Re);return Eze.spanInSourceFileAtLocation(bt,Jt)}function bi(Re){return CLr(h.getCurrentSourceFile(Re),V)}function Pi(Re){return mLr(h.getCurrentSourceFile(Re),V)}function Ns(Re,Jt,bt){return de(),(bt||"original")==="2020"?K9r(b,V,Ae(Re),Jt):cFt(b.getTypeChecker(),V,Ae(Re),b.getClassifiableNames(),Jt)}function gi(Re,Jt,bt){return de(),(bt||"original")==="original"?Wje(b.getTypeChecker(),V,Ae(Re),b.getClassifiableNames(),Jt):LZt(b,V,Ae(Re),Jt)}function jn(Re,Jt){return lFt(V,h.getCurrentSourceFile(Re),Jt)}function xs(Re,Jt){return Pje(V,h.getCurrentSourceFile(Re),Jt)}function Ec(Re){let Jt=h.getCurrentSourceFile(Re);return mqe.collectElements(Jt,V)}let xi=new Map(Object.entries({19:20,21:22,23:24,32:30}));xi.forEach((Re,Jt)=>xi.set(Re.toString(),Number(Jt)));function rc(Re,Jt){let bt=h.getCurrentSourceFile(Re),Vt=Fte(bt,Jt),dn=Vt.getStart(bt)===Jt?xi.get(Vt.kind.toString()):void 0,On=dn&&Od(Vt.parent,dn,bt);return On?[Ey(Vt,bt),Ey(On,bt)].sort((Mn,Ii)=>Mn.start-Ii.start):v}function Vl(Re,Jt,bt){let Vt=ql(),dn=s0e(bt),On=h.getCurrentSourceFile(Re);M("getIndentationAtPosition: getCurrentSourceFile: "+(ql()-Vt)),Vt=ql();let Mn=jC.SmartIndenter.getIndentation(Jt,On,dn);return M("getIndentationAtPosition: computeIndentation : "+(ql()-Vt)),Mn}function ul(Re,Jt,bt,Vt){let dn=h.getCurrentSourceFile(Re);return jC.formatSelection(Jt,bt,dn,jC.getFormatContext(s0e(Vt),n))}function Cc(Re,Jt){return jC.formatDocument(h.getCurrentSourceFile(Re),jC.getFormatContext(s0e(Jt),n))}function _s(Re,Jt,bt,Vt){let dn=h.getCurrentSourceFile(Re),On=jC.getFormatContext(s0e(Vt),n);if(!LZ(dn,Jt))switch(bt){case"{":return jC.formatOnOpeningCurly(Jt,dn,On);case"}":return jC.formatOnClosingCurly(Jt,dn,On);case";":return jC.formatOnSemicolon(Jt,dn,On);case` -`:return jC.formatOnEnter(Jt,dn,On)}return[]}function Wu(Re,Jt,bt,Vt,dn,On=Lv){de();let Mn=Ae(Re),Ii=Wd(Jt,bt),ds=jC.getFormatContext(dn,n);return Fr(TA(Vt,Og,Xl),Es=>(V.throwIfCancellationRequested(),d0.getFixes({errorCode:Es,sourceFile:Mn,span:Ii,program:b,host:n,cancellationToken:V,formatContext:ds,preferences:On})))}function ir(Re,Jt,bt,Vt=Lv){de(),w.assert(Re.type==="file");let dn=Ae(Re.fileName),On=jC.getFormatContext(bt,n);return d0.getAllFixes({fixId:Jt,sourceFile:dn,program:b,host:n,cancellationToken:V,formatContext:On,preferences:Vt})}function ni(Re,Jt,bt=Lv){de(),w.assert(Re.type==="file");let Vt=Ae(Re.fileName),dn=jC.getFormatContext(Jt,n),On=Re.mode??(Re.skipDestructiveCodeActions?"SortAndCombine":"All");return hP.organizeImports(Vt,dn,n,b,bt,On)}function gs(Re,Jt,bt,Vt=Lv){return AFt(Fe(),Re,Jt,n,jC.getFormatContext(bt,n),Vt,ue)}function Hs(Re,Jt){let bt=typeof Re=="string"?Jt:Re;return Ra(bt)?Promise.all(bt.map(Vt=>qa(Vt))):qa(bt)}function qa(Re){let Jt=bt=>gA(bt,P,re);return w.assertEqual(Re.type,"install package"),n.installPackage?n.installPackage({fileName:Jt(Re.file),packageName:Re.packageName}):Promise.reject("Host does not implement `installPackage`")}function nc(Re,Jt,bt,Vt){let dn=Vt?jC.getFormatContext(Vt,n).options:void 0;return mP.getDocCommentTemplateAtPosition(WZ(n,dn),h.getCurrentSourceFile(Re),Jt,bt)}function Nc(Re,Jt,bt){if(bt===60)return!1;let Vt=h.getCurrentSourceFile(Re);if(U6(Vt,Jt))return!1;if(EGt(Vt,Jt))return bt===123;if(H7e(Vt,Jt))return!1;switch(bt){case 39:case 34:case 96:return!LZ(Vt,Jt)}return!0}function cg(Re,Jt){let bt=h.getCurrentSourceFile(Re),Vt=_m(Jt,bt);if(!Vt)return;let dn=Vt.kind===32&&TN(Vt.parent)?Vt.parent.parent:sY(Vt)&&Ox(Vt.parent)?Vt.parent:void 0;if(dn&&rn(dn))return{newText:``};let On=Vt.kind===32&&g4(Vt.parent)?Vt.parent.parent:sY(Vt)&&gY(Vt.parent)?Vt.parent:void 0;if(On&&St(On))return{newText:""}}function Ku(Re,Jt){let bt=h.getCurrentSourceFile(Re),Vt=_m(Jt,bt);if(!Vt||Vt.parent.kind===307)return;let dn="[a-zA-Z0-9:\\-\\._$]*";if(gY(Vt.parent.parent)){let On=Vt.parent.parent.openingFragment,Mn=Vt.parent.parent.closingFragment;if(HR(On)||HR(Mn))return;let Ii=On.getStart(bt)+1,ds=Mn.getStart(bt)+2;return Jt!==Ii&&Jt!==ds?void 0:{ranges:[{start:Ii,length:0},{start:ds,length:0}],wordPattern:dn}}else{let On=Si(Vt.parent,Yc=>!!(TN(Yc)||uY(Yc)));if(!On)return;w.assert(TN(On)||uY(On),"tag should be opening or closing element");let Mn=On.parent.openingElement,Ii=On.parent.closingElement,ds=Mn.tagName.getStart(bt),Es=Mn.tagName.end,oo=Ii.tagName.getStart(bt),Vi=Ii.tagName.end;return ds===Mn.getStart(bt)||oo===Ii.getStart(bt)||Es===Mn.getEnd()||Vi===Ii.getEnd()||!(ds<=Jt&&Jt<=Es||oo<=Jt&&Jt<=Vi)||Mn.tagName.getText(bt)!==Ii.tagName.getText(bt)?void 0:{ranges:[{start:ds,length:Es-ds},{start:oo,length:Vi-oo}],wordPattern:dn}}}function Bi(Re,Jt){return{lineStarts:Re.getLineStarts(),firstLine:Re.getLineAndCharacterOfPosition(Jt.pos).line,lastLine:Re.getLineAndCharacterOfPosition(Jt.end).line}}function BA(Re,Jt,bt){let Vt=h.getCurrentSourceFile(Re),dn=[],{lineStarts:On,firstLine:Mn,lastLine:Ii}=Bi(Vt,Jt),ds=bt||!1,Es=Number.MAX_VALUE,oo=new Map,Vi=new RegExp(/\S/),ko=WGe(Vt,On[Mn]),Yc=ko?"{/*":"//";for(let fl=Mn;fl<=Ii;fl++){let oa=Vt.text.substring(On[fl],Vt.getLineEndOfPosition(On[fl])),Da=Vi.exec(oa);Da&&(Es=Math.min(Es,Da.index),oo.set(fl.toString(),Da.index),oa.substr(Da.index,Yc.length)!==Yc&&(ds=bt===void 0||bt))}for(let fl=Mn;fl<=Ii;fl++){if(Mn!==Ii&&On[fl]===Jt.end)continue;let oa=oo.get(fl.toString());oa!==void 0&&(ko?dn.push(...kr(Re,{pos:On[fl]+Es,end:Vt.getLineEndOfPosition(On[fl])},ds,ko)):ds?dn.push({newText:Yc,span:{length:0,start:On[fl]+Es}}):Vt.text.substr(On[fl]+oa,Yc.length)===Yc&&dn.push({newText:"",span:{length:Yc.length,start:On[fl]+oa}}))}return dn}function kr(Re,Jt,bt,Vt){var dn;let On=h.getCurrentSourceFile(Re),Mn=[],{text:Ii}=On,ds=!1,Es=bt||!1,oo=[],{pos:Vi}=Jt,ko=Vt!==void 0?Vt:WGe(On,Vi),Yc=ko?"{/*":"/*",fl=ko?"*/}":"*/",oa=ko?"\\{\\/\\*":"\\/\\*",Da=ko?"\\*\\/\\}":"\\*\\/";for(;Vi<=Jt.end;){let ki=Ii.substr(Vi,Yc.length)===Yc?Yc.length:0,Gs=LZ(On,Vi+ki);if(Gs)ko&&(Gs.pos--,Gs.end++),oo.push(Gs.pos),Gs.kind===3&&oo.push(Gs.end),ds=!0,Vi=Gs.end+1;else{let ri=Ii.substring(Vi,Jt.end).search(`(${oa})|(${Da})`);Es=bt!==void 0?bt:Es||!FGt(Ii,Vi,ri===-1?Jt.end:Vi+ri),Vi=ri===-1?Jt.end+1:Vi+ri+fl.length}}if(Es||!ds){((dn=LZ(On,Jt.pos))==null?void 0:dn.kind)!==2&&Gr(oo,Jt.pos,Xl),Gr(oo,Jt.end,Xl);let ki=oo[0];Ii.substr(ki,Yc.length)!==Yc&&Mn.push({newText:Yc,span:{length:0,start:ki}});for(let Gs=1;Gs0?ki-fl.length:0,ri=Ii.substr(Gs,fl.length)===fl?fl.length:0;Mn.push({newText:"",span:{length:Yc.length,start:ki-ri}})}return Mn}function en(Re,Jt){let bt=h.getCurrentSourceFile(Re),{firstLine:Vt,lastLine:dn}=Bi(bt,Jt);return Vt===dn&&Jt.pos!==Jt.end?kr(Re,Jt,!0):BA(Re,Jt,!0)}function ct(Re,Jt){let bt=h.getCurrentSourceFile(Re),Vt=[],{pos:dn}=Jt,{end:On}=Jt;dn===On&&(On+=WGe(bt,dn)?2:1);for(let Mn=dn;Mn<=On;Mn++){let Ii=LZ(bt,Mn);if(Ii){switch(Ii.kind){case 2:Vt.push(...BA(Re,{end:Ii.end,pos:Ii.pos+1},!1));break;case 3:Vt.push(...kr(Re,{end:Ii.end,pos:Ii.pos+1},!1))}Mn=Ii.end+1}}return Vt}function rn({openingElement:Re,closingElement:Jt,parent:bt}){return!aP(Re.tagName,Jt.tagName)||Ox(bt)&&aP(Re.tagName,bt.openingElement.tagName)&&rn(bt)}function St({closingFragment:Re,parent:Jt}){return!!(Re.flags&262144)||gY(Jt)&&St(Jt)}function br(Re,Jt,bt){let Vt=h.getCurrentSourceFile(Re),dn=jC.getRangeOfEnclosingComment(Vt,Jt);return dn&&(!bt||dn.kind===3)?TV(dn):void 0}function Qt(Re,Jt){de();let bt=Ae(Re);V.throwIfCancellationRequested();let Vt=bt.text,dn=[];if(Jt.length>0&&!ds(bt.fileName)){let Es=Mn(),oo;for(;oo=Es.exec(Vt);){V.throwIfCancellationRequested();let Vi=3;w.assert(oo.length===Jt.length+Vi);let ko=oo[1],Yc=oo.index+ko.length;if(!LZ(bt,Yc))continue;let fl;for(let Da=0;Da"("+On(Gs.text)+")").join("|")+")",fl=/(?:$|\*\/)/.source,oa=/(?:.*?)/.source,Da="("+Yc+oa+")",ki=ko+Da+fl;return new RegExp(ki,"gim")}function Ii(Es){return Es>=97&&Es<=122||Es>=65&&Es<=90||Es>=48&&Es<=57}function ds(Es){return Es.includes("/node_modules/")}}function _r(Re,Jt,bt){return de(),rZe.getRenameInfo(b,Ae(Re),Jt,bt||{})}function Pr(Re,Jt,bt,Vt,dn,On){let[Mn,Ii]=typeof Jt=="number"?[Jt,void 0]:[Jt.pos,Jt.end];return{file:Re,startPosition:Mn,endPosition:Ii,program:Fe(),host:n,formatContext:jC.getFormatContext(Vt,n),cancellationToken:V,preferences:bt,triggerReason:dn,kind:On}}function ti(Re,Jt,bt){return{file:Re,program:Fe(),host:n,span:Jt,preferences:bt,cancellationToken:V}}function cr(Re,Jt){return yqe.getSmartSelectionRange(Jt,h.getCurrentSourceFile(Re))}function kn(Re,Jt,bt=Lv,Vt,dn,On){de();let Mn=Ae(Re);return $6.getApplicableRefactors(Pr(Mn,Jt,bt,Lv,Vt,dn),On)}function Pn(Re,Jt,bt=Lv){de();let Vt=Ae(Re),dn=w.checkDefined(b.getSourceFiles()),On=m6(Re),Mn=n0e(Pr(Vt,Jt,bt,Lv)),Ii=iZt(Mn?.all),ds=tr(dn,Es=>{let oo=m6(Es.fileName);return!b?.isSourceFileFromExternalLibrary(Vt)&&!(Vt===Ae(Es.fileName)||On===".ts"&&oo===".d.ts"||On===".d.ts"&&uc(xA(Es.fileName),"lib.")&&oo===".d.ts")&&(On===oo||(On===".tsx"&&oo===".ts"||On===".jsx"&&oo===".js")&&!Ii)?Es.fileName:void 0});return{newFileName:nZt(Vt,b,n,Mn),files:ds}}function an(Re,Jt,bt,Vt,dn,On=Lv,Mn){de();let Ii=Ae(Re);return $6.getEditsForRefactor(Pr(Ii,bt,On,Jt),Vt,dn,Mn)}function Kr(Re,Jt){return Jt===0?{line:0,character:0}:ue.toLineColumnOffset(Re,Jt)}function wn(Re,Jt){de();let bt=e7.resolveCallHierarchyDeclaration(b,lb(Ae(Re),Jt));return bt&&Rje(bt,Vt=>e7.createCallHierarchyItem(b,Vt))}function Pe(Re,Jt){de();let bt=Ae(Re),Vt=Dje(e7.resolveCallHierarchyDeclaration(b,Jt===0?bt:lb(bt,Jt)));return Vt?e7.getIncomingCalls(b,Vt,V):[]}function ar(Re,Jt){de();let bt=Ae(Re),Vt=Dje(e7.resolveCallHierarchyDeclaration(b,Jt===0?bt:lb(bt,Jt)));return Vt?e7.getOutgoingCalls(b,Vt):[]}function sn(Re,Jt,bt=Lv){de();let Vt=Ae(Re);return pqe.provideInlayHints(ti(Vt,Jt,bt))}function Me(Re,Jt,bt,Vt,dn){return fqe.mapCode(h.getCurrentSourceFile(Re),Jt,bt,n,jC.getFormatContext(Vt,n),dn)}let ur={dispose:lt,cleanupSemanticCache:De,getSyntacticDiagnostics:Le,getSemanticDiagnostics:je,getSuggestionDiagnostics:st,getCompilerOptionsDiagnostics:nt,getSyntacticClassifications:jn,getSemanticClassifications:Ns,getEncodedSyntacticClassifications:xs,getEncodedSemanticClassifications:gi,getCompletionsAtPosition:qe,getCompletionEntryDetails:it,getCompletionEntrySymbol:It,getSignatureHelpItems:Yr,getQuickInfoAtPosition:dt,getDefinitionAtPosition:ht,getDefinitionAndBoundSpan:Et,getImplementationAtPosition:Tt,getTypeDefinitionAtPosition:Kt,getReferencesAtPosition:Zt,findReferences:jt,getFileReferences:mr,getDocumentHighlights:Lt,getNameOrDottedNameSpan:zr,getBreakpointStatementAtPosition:$n,getNavigateToItems:Pt,getRenameInfo:_r,getSmartSelectionRange:cr,findRenameLocations:kt,getNavigationBarItems:bi,getNavigationTree:Pi,getOutliningSpans:Ec,getTodoComments:Qt,getBraceMatchingAtPosition:rc,getIndentationAtPosition:Vl,getFormattingEditsForRange:ul,getFormattingEditsForDocument:Cc,getFormattingEditsAfterKeystroke:_s,getDocCommentTemplateAtPosition:nc,isValidBraceCompletionAtPosition:Nc,getJsxClosingTagAtPosition:cg,getLinkedEditingRangeAtPosition:Ku,getSpanOfEnclosingComment:br,getCodeFixesAtPosition:Wu,getCombinedCodeFix:ir,applyCodeActionCommand:Hs,organizeImports:ni,getEditsForFileRename:gs,getEmitOutput:Vr,getNonBoundSourceFile:pr,getProgram:Fe,getCurrentProgram:()=>b,getAutoImportProvider:Ne,updateIsDefinitionOfReferencedSymbols:Qe,getApplicableRefactors:kn,getEditsForRefactor:an,getMoveToRefactoringFileSuggestions:Pn,toLineColumnOffset:Kr,getSourceMapper:()=>ue,clearSourceMapperCache:()=>ue.clearCache(),prepareCallHierarchy:wn,provideCallHierarchyIncomingCalls:Pe,provideCallHierarchyOutgoingCalls:ar,toggleLineComment:BA,toggleMultilineComment:kr,commentSelection:en,uncommentSelection:ct,provideInlayHints:sn,getSupportedCodeFixes:_ze,getPasteEdits:wt,mapCode:Me};switch(I){case 0:break;case 1:cVr.forEach(Re=>ur[Re]=()=>{throw new Error(`LanguageService Operation: ${Re} not allowed in LanguageServiceMode.PartialSemantic`)});break;case 2:Xes.forEach(Re=>ur[Re]=()=>{throw new Error(`LanguageService Operation: ${Re} not allowed in LanguageServiceMode.Syntactic`)});break;default:w.assertNever(I)}return ur}function bze(n){return n.nameTable||Jes(n),n.nameTable}function Jes(n){let c=n.nameTable=new Map;n.forEachChild(function u(d){if(sr(d)&&!L7e(d)&&d.escapedText||GE(d)&&Ues(d)){let I=j8(d);c.set(I,c.get(I)===void 0?d.pos:-1)}else if(kc(d)){let I=d.escapedText;c.set(I,c.get(I)===void 0?d.pos:-1)}if(mu(d,u),hy(d))for(let I of d.jsDoc)mu(I,u)})}function Ues(n){return eT(n)||n.parent.kind===283||zes(n)||fee(n)}function a0e(n){let c=Kes(n);return c&&(tu(c.parent)||AY(c.parent))?c:void 0}function Kes(n){switch(n.kind){case 11:case 15:case 9:if(n.parent.kind===167)return hQ(n.parent.parent)?n.parent.parent:void 0;case 80:return hQ(n.parent)&&(n.parent.parent.kind===210||n.parent.parent.kind===292)&&n.parent.name===n?n.parent:void 0}}function jes(n,c){let u=a0e(n);if(u){let d=c.getContextualType(u.parent),I=d&&GFe(u,c,d,!1);if(I&&I.length===1)return $s(I)}return c.getSymbolAtLocation(n)}function GFe(n,c,u,d){let I=M_e(n.name);if(!I)return v;if(!u.isUnion()){let R=u.getProperty(I);return R?[R]:v}let h=tu(n.parent)||AY(n.parent)?Gt(u.types,R=>!c.isTypeInvalidDueToUnionDiscriminant(R,n.parent)):u.types,b=tr(h,R=>R.getProperty(I));if(d&&(b.length===0||b.length===u.types.length)){let R=u.getProperty(I);if(R)return[R]}return!h.length&&!b.length?tr(u.types,R=>R.getProperty(I)):TA(b,Og)}function zes(n){return n&&n.parent&&n.parent.kind===212&&n.parent.argumentExpression===n}function MZt(n){if(_d)return xo(aa(Mc(_d.getExecutingFilePath())),Ig(n));throw new Error("getDefaultLibFilePath is only supported when consumed as a node module. ")}kDe(Mes());function lVr(n,c,u){let d=[];u=zje(u,d);let I=Ra(n)?n:[n],h=f_e(void 0,void 0,_e,u,I,c,!0);return h.diagnostics=vi(h.diagnostics,d),h}var Eze={};o(Eze,{spanInSourceFileAtLocation:()=>qes});function qes(n,c){if(n.isDeclarationFile)return;let u=Qc(n,c),d=n.getLineAndCharacterOfPosition(c).line;if(n.getLineAndCharacterOfPosition(u.getStart(n)).line>d){let M=_m(u.pos,n);if(!M||n.getLineAndCharacterOfPosition(M.getEnd()).line!==d)return;u=M}if(u.flags&33554432)return;return P(u);function I(M,te){let re=pY(M)?Te(M.modifiers,GC):void 0,ue=re?Ju(n.text,re.end):M.getStart(n);return Wd(ue,(te||M).getEnd())}function h(M,te){return I(M,yY(te,te.parent,n))}function b(M,te){return M&&d===n.getLineAndCharacterOfPosition(M.getStart(n)).line?P(M):P(te)}function R(M,te,re){if(M){let ue=M.indexOf(te);if(ue>=0){let Ae=ue,de=ue+1;for(;Ae>0&&re(M[Ae-1]);)Ae--;for(;de0)return P(ht.declarations[0])}else return P(Ye.initializer)}function De(Ye){if(Ye.initializer)return Qe(Ye);if(Ye.condition)return I(Ye.condition);if(Ye.incrementor)return I(Ye.incrementor)}function lt(Ye){let ht=X(Ye.elements,Et=>Et.kind!==232?Et:void 0);return ht?P(ht):Ye.parent.kind===208?I(Ye.parent):te(Ye.parent)}function Le(Ye){w.assert(Ye.kind!==207&&Ye.kind!==206);let ht=Ye.kind===209?Ye.elements:Ye.properties,Et=X(ht,Kt=>Kt.kind!==232?Kt:void 0);return Et?P(Et):I(Ye.parent.kind===226?Ye.parent:Ye)}function je(Ye){switch(Ye.parent.kind){case 266:let ht=Ye.parent;return b(_m(Ye.pos,n,Ye.parent),ht.members.length?ht.members[0]:ht.getLastToken(n));case 263:let Et=Ye.parent;return b(_m(Ye.pos,n,Ye.parent),Et.members.length?Et.members[0]:Et.getLastToken(n));case 269:return b(Ye.parent.parent,Ye.parent.clauses[0])}return P(Ye.parent)}function st(Ye){switch(Ye.parent.kind){case 268:if(FG(Ye.parent.parent)!==1)return;case 266:case 263:return I(Ye);case 241:if(j9(Ye.parent))return I(Ye);case 299:return P(qo(Ye.parent.statements));case 269:let ht=Ye.parent,Et=qo(ht.clauses);return Et?P(qo(Et.statements)):void 0;case 206:let Kt=Ye.parent;return P(qo(Kt.elements)||Kt);default:if(VZ(Ye.parent)){let Tt=Ye.parent;return I(qo(Tt.properties)||Tt)}return P(Ye.parent)}}function nt(Ye){switch(Ye.parent.kind){case 207:let ht=Ye.parent;return I(qo(ht.elements)||ht);default:if(VZ(Ye.parent)){let Et=Ye.parent;return I(qo(Et.elements)||Et)}return P(Ye.parent)}}function qe(Ye){return Ye.parent.kind===246||Ye.parent.kind===213||Ye.parent.kind===214?N(Ye):Ye.parent.kind===217?V(Ye):P(Ye.parent)}function it(Ye){switch(Ye.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 N(Ye);default:return P(Ye.parent)}}function It(Ye){return $l(Ye.parent)||Ye.parent.kind===303||Ye.parent.kind===169?N(Ye):P(Ye.parent)}function dt(Ye){return Ye.parent.kind===216?V(Ye):P(Ye.parent)}function wt(Ye){return Ye.parent.kind===246?h(Ye,Ye.parent.expression):P(Ye.parent)}function vt(Ye){return Ye.parent.kind===250?V(Ye):P(Ye.parent)}}}var e7={};o(e7,{createCallHierarchyItem:()=>QZt,getIncomingCalls:()=>ots,getOutgoingCalls:()=>Its,resolveCallHierarchyDeclaration:()=>CVr});function $es(n){return(WA(n)||tp(n))&&Sf(n)}function uVr(n){return Ql(n)||zs(n)}function c0e(n){return(WA(n)||fd(n)||tp(n))&&uVr(n.parent)&&n===n.parent.initializer&&sr(n.parent.name)&&(!!(qy(n.parent)&2)||Ql(n.parent))}function gVr(n){return Gc(n)||CC(n)||mp(n)||WA(n)||bc(n)||tp(n)||$p(n)||cI(n)||jS(n)||Pb(n)||sb(n)}function Xte(n){return Gc(n)||CC(n)&&sr(n.name)||mp(n)||bc(n)||$p(n)||cI(n)||jS(n)||Pb(n)||sb(n)||$es(n)||c0e(n)}function AVr(n){return Gc(n)?n:Sf(n)?n.name:c0e(n)?n.parent.name:w.checkDefined(n.modifiers&&be(n.modifiers,dVr))}function dVr(n){return n.kind===90}function pVr(n,c){let u=AVr(c);return u&&n.getSymbolAtLocation(u)}function ets(n,c){if(Gc(c))return{text:c.fileName,pos:0,end:0};if((mp(c)||bc(c))&&!Sf(c)){let I=c.modifiers&&be(c.modifiers,dVr);if(I)return{text:"default",pos:I.getStart(),end:I.getEnd()}}if($p(c)){let I=c.getSourceFile(),h=Ju(I.text,OS(c).pos),b=h+6,R=n.getTypeChecker(),N=R.getSymbolAtLocation(c.parent);return{text:`${N?`${R.symbolToString(N,c.parent)} `:""}static {}`,pos:h,end:b}}let u=c0e(c)?c.parent.name:w.checkDefined(vl(c),"Expected call hierarchy item to have a name"),d=sr(u)?ao(u):GE(u)?u.text:xg(u)&&GE(u.expression)?u.expression.text:void 0;if(d===void 0){let I=n.getTypeChecker(),h=I.getSymbolAtLocation(u);h&&(d=I.symbolToString(h,c))}if(d===void 0){let I=Jke();d=Z3(h=>I.writeNode(4,c,c.getSourceFile(),h))}return{text:d,pos:u.getStart(),end:u.getEnd()}}function tts(n){var c,u,d,I;if(c0e(n))return Ql(n.parent)&&Sa(n.parent.parent)?tp(n.parent.parent)?(c=cQ(n.parent.parent))==null?void 0:c.getText():(u=n.parent.parent.name)==null?void 0:u.getText():SN(n.parent.parent.parent.parent)&&sr(n.parent.parent.parent.parent.parent.name)?n.parent.parent.parent.parent.parent.name.getText():void 0;switch(n.kind){case 177:case 178:case 174:return n.parent.kind===210?(d=cQ(n.parent))==null?void 0:d.getText():(I=vl(n.parent))==null?void 0:I.getText();case 262:case 263:case 267:if(SN(n.parent)&&sr(n.parent.parent.name))return n.parent.parent.name.getText()}}function fVr(n,c){if(c.body)return c;if(Rf(c))return dN(c.parent);if(mp(c)||cI(c)){let u=pVr(n,c);return u&&u.valueDeclaration&&dd(u.valueDeclaration)&&u.valueDeclaration.body?u.valueDeclaration:void 0}return c}function IVr(n,c){let u=pVr(n,c),d;if(u&&u.declarations){let I=Yu(u.declarations),h=Ot(u.declarations,N=>({file:N.getSourceFile().fileName,pos:N.pos}));I.sort((N,V)=>Do(h[N].file,h[V].file)||h[N].pos-h[V].pos);let b=Ot(I,N=>u.declarations[N]),R;for(let N of b)Xte(N)&&((!R||R.parent!==N.parent||R.end!==N.pos)&&(d=Hr(d,N)),R=N)}return d}function Bze(n,c){return $p(c)?c:dd(c)?fVr(n,c)??IVr(n,c)??c:IVr(n,c)??c}function CVr(n,c){let u=n.getTypeChecker(),d=!1;for(;;){if(Xte(c))return Bze(u,c);if(gVr(c)){let I=Si(c,Xte);return I&&Bze(u,I)}if(eT(c)){if(Xte(c.parent))return Bze(u,c.parent);if(gVr(c.parent)){let I=Si(c.parent,Xte);return I&&Bze(u,I)}return uVr(c.parent)&&c.parent.initializer&&c0e(c.parent.initializer)?c.parent.initializer:void 0}if(Rf(c))return Xte(c.parent)?c.parent:void 0;if(c.kind===126&&$p(c.parent)){c=c.parent;continue}if(zs(c)&&c.initializer&&c0e(c.initializer))return c.initializer;if(!d){let I=u.getSymbolAtLocation(c);if(I&&(I.flags&2097152&&(I=u.getAliasedSymbol(I)),I.valueDeclaration)){d=!0,c=I.valueDeclaration;continue}}return}}function QZt(n,c){let u=c.getSourceFile(),d=ets(n,c),I=tts(c),h=_Y(c),b=Cue(c),R=Wd(Ju(u.text,c.getFullStart(),!1,!0),c.getEnd()),N=Wd(d.pos,d.end);return{file:u.fileName,kind:h,kindModifiers:b,name:d.text,containerName:I,span:R,selectionSpan:N}}function rts(n){return n!==void 0}function nts(n){if(n.kind===Yp.EntryKind.Node){let{node:c}=n;if(k7e(c,!0,!0)||AGt(c,!0,!0)||dGt(c,!0,!0)||pGt(c,!0,!0)||kte(c)||V7e(c)){let u=c.getSourceFile();return{declaration:Si(c,Xte)||u,range:$7e(c,u)}}}}function mVr(n){return sd(n.declaration)}function its(n,c){return{from:n,fromSpans:c}}function sts(n,c){return its(QZt(n,c[0].declaration),Ot(c,u=>TV(u.range)))}function ots(n,c,u){if(Gc(c)||CC(c)||$p(c))return[];let d=AVr(c),I=Gt(Yp.findReferenceOrRenameEntries(n,u,n.getSourceFiles(),d,0,{use:Yp.FindReferencesUse.References},nts),rts);return I?Hl(I,mVr,h=>sts(n,h)):[]}function ats(n,c){function u(I){let h=V1(I)?I.tag:Jm(I)?I.tagName:Cp(I)||$p(I)?I:I.expression,b=CVr(n,h);if(b){let R=$7e(h,I.getSourceFile());if(Ra(b))for(let N of b)c.push({declaration:N,range:R});else c.push({declaration:b,range:R})}}function d(I){if(I&&!(I.flags&33554432)){if(Xte(I)){if(Sa(I))for(let h of I.members)h.name&&xg(h.name)&&d(h.name.expression);return}switch(I.kind){case 80:case 271:case 272:case 278:case 264:case 265:return;case 175:u(I);return;case 216:case 234:d(I.expression);return;case 260:case 169:d(I.name),d(I.initializer);return;case 213:u(I),d(I.expression),X(I.arguments,d);return;case 214:u(I),d(I.expression),X(I.arguments,d);return;case 215:u(I),d(I.tag),d(I.template);return;case 286:case 285:u(I),d(I.tagName),d(I.attributes);return;case 170:u(I),d(I.expression);return;case 211:case 212:u(I),mu(I,d);break;case 238:d(I.expression);return}LS(I)||mu(I,d)}}return d}function cts(n,c){X(n.statements,c)}function lts(n,c){!ba(n,128)&&n.body&&SN(n.body)&&X(n.body.statements,c)}function uts(n,c,u){let d=fVr(n,c);d&&(X(d.parameters,u),u(d.body))}function gts(n,c){c(n.body)}function Ats(n,c){X(n.modifiers,c);let u=rV(n);u&&c(u.expression);for(let d of n.members)ew(d)&&X(d.modifiers,c),Ql(d)?c(d.initializer):Rf(d)&&d.body?(X(d.parameters,c),c(d.body)):$p(d)&&c(d)}function dts(n,c){let u=[],d=ats(n,u);switch(c.kind){case 307:cts(c,d);break;case 267:lts(c,d);break;case 262:case 218:case 219:case 174:case 177:case 178:uts(n.getTypeChecker(),c,d);break;case 263:case 231:Ats(c,d);break;case 175:gts(c,d);break;default:w.assertNever(c)}return u}function pts(n,c){return{to:n,fromSpans:c}}function fts(n,c){return pts(QZt(n,c[0].declaration),Ot(c,u=>TV(u.range)))}function Its(n,c){return c.flags&33554432||jS(c)?[]:Hl(dts(n,c),mVr,u=>fts(n,u))}var YZt={};o(YZt,{v2020:()=>hVr});var hVr={};o(hVr,{TokenEncodingConsts:()=>X9r,TokenModifier:()=>U9r,TokenType:()=>J9r,getEncodedSemanticClassifications:()=>LZt,getSemanticClassifications:()=>K9r});var d0={};o(d0,{PreserveOptionalFlags:()=>TOr,addNewNodeForMemberSymbol:()=>NOr,codeFixAll:()=>Md,createCodeFixAction:()=>rg,createCodeFixActionMaybeFixAll:()=>JZt,createCodeFixActionWithoutFixAll:()=>AT,createCombinedCodeActions:()=>t7,createFileTextChanges:()=>_Vr,createImportAdder:()=>TY,createImportSpecifierResolver:()=>vrs,createJsonPropertyAssignment:()=>qze,createMissingMemberNodes:()=>g9t,createSignatureDeclarationFromCallExpression:()=>A9t,createSignatureDeclarationFromSignature:()=>zze,createStubbedBody:()=>MFe,eachDiagnostic:()=>r7,findAncestorMatchingSpan:()=>m9t,findJsonProperty:()=>C9t,generateAccessorFromProperty:()=>FOr,getAccessorConvertiblePropertyAtPosition:()=>VOr,getAllFixes:()=>_ts,getAllSupers:()=>h9t,getArgumentTypesAndTypeParameters:()=>xOr,getFixes:()=>hts,getImportCompletionAction:()=>Srs,getImportKind:()=>Zze,getJSDocTypedefNodes:()=>Ers,getNoopSymbolTrackerWithResolver:()=>Ute,getPromoteTypeOnlyCompletionAction:()=>wrs,getSupportedErrorCodes:()=>Cts,importFixName:()=>PWr,importSymbols:()=>s7,parameterShouldGetTypeFromJSDoc:()=>KVr,registerCodeFix:()=>wg,setJsonCompilerOptionValue:()=>I9t,setJsonCompilerOptionValues:()=>f9t,tryGetAutoImportableReferenceFromTypeNode:()=>B4,typeToAutoImportableTypeNode:()=>OFe});var HZt=ec(),XZt=new Map;function AT(n,c,u){return UZt(n,EY(u),c,void 0,void 0)}function rg(n,c,u,d,I,h){return UZt(n,EY(u),c,d,EY(I),h)}function JZt(n,c,u,d,I,h){return UZt(n,EY(u),c,d,I&&EY(I),h)}function UZt(n,c,u,d,I,h){return{fixName:n,description:c,changes:u,fixId:d,fixAllDescription:I,commands:h?[h]:void 0}}function wg(n){for(let c of n.errorCodes)KZt=void 0,HZt.add(String(c),n);if(n.fixIds)for(let c of n.fixIds)w.assert(!XZt.has(c)),XZt.set(c,n)}var KZt;function Cts(){return KZt??(KZt=on(HZt.keys()))}function mts(n,c){let{errorCodes:u}=n,d=0;for(let h of c)if(Ue(u,h.code)&&d++,d>1)break;let I=d<2;return({fixId:h,fixAllDescription:b,...R})=>I?R:{...R,fixId:h,fixAllDescription:b}}function hts(n){let c=yVr(n),u=HZt.get(String(n.errorCode));return Fr(u,d=>Ot(d.getCodeActions(n),mts(d,c)))}function _ts(n){return XZt.get(ps(n.fixId,Xa)).getAllCodeActions(n)}function t7(n,c){return{changes:n,commands:c}}function _Vr(n,c){return{fileName:n,textChanges:c}}function Md(n,c,u){let d=[],I=po.ChangeTracker.with(n,h=>r7(n,c,b=>u(h,b,d)));return t7(I,d.length===0?void 0:d)}function r7(n,c,u){for(let d of yVr(n))Ue(c,d.code)&&u(d)}function yVr({program:n,sourceFile:c,cancellationToken:u}){let d=[...n.getSemanticDiagnostics(c,u),...n.getSyntacticDiagnostics(c,u),...Jje(c,n,u)];return LE(n.getCompilerOptions())&&d.push(...n.getDeclarationDiagnostics(c,u)),d}var jZt="addConvertToUnknownForNonOverlappingTypes",bVr=[Z.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];wg({errorCodes:bVr,getCodeActions:function(c){let u=BVr(c.sourceFile,c.span.start);if(u===void 0)return;let d=po.ChangeTracker.with(c,I=>EVr(I,c.sourceFile,u));return[rg(jZt,d,Z.Add_unknown_conversion_for_non_overlapping_types,jZt,Z.Add_unknown_to_all_conversions_of_non_overlapping_types)]},fixIds:[jZt],getAllCodeActions:n=>Md(n,bVr,(c,u)=>{let d=BVr(u.file,u.start);d&&EVr(c,u.file,d)})});function EVr(n,c,u){let d=qS(u)?_e.createAsExpression(u.expression,_e.createKeywordTypeNode(159)):_e.createTypeAssertion(_e.createKeywordTypeNode(159),u.expression);n.replaceNode(c,u.expression,d)}function BVr(n,c){if(!so(n))return Si(Qc(n,c),u=>qS(u)||mV(u))}wg({errorCodes:[Z.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,Z.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,Z.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(c){let{sourceFile:u}=c,d=po.ChangeTracker.with(c,I=>{let h=_e.createExportDeclaration(void 0,!1,_e.createNamedExports([]),void 0);I.insertNodeAtEndOfScope(u,u,h)});return[AT("addEmptyExportDeclaration",d,Z.Add_export_to_make_this_file_into_a_module)]}});var zZt="addMissingAsync",vVr=[Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.Type_0_is_not_comparable_to_type_1.code];wg({fixIds:[zZt],errorCodes:vVr,getCodeActions:function(c){let{sourceFile:u,errorCode:d,cancellationToken:I,program:h,span:b}=c,R=be(h.getTypeChecker().getDiagnostics(u,I),bts(b,d)),N=R&&R.relatedInformation&&be(R.relatedInformation,M=>M.code===Z.Did_you_mean_to_mark_this_function_as_async.code),V=wVr(u,N);return V?[SVr(c,V,M=>po.ChangeTracker.with(c,M))]:void 0},getAllCodeActions:n=>{let{sourceFile:c}=n,u=new Set;return Md(n,vVr,(d,I)=>{let h=I.relatedInformation&&be(I.relatedInformation,N=>N.code===Z.Did_you_mean_to_mark_this_function_as_async.code),b=wVr(c,h);return b?SVr(n,b,N=>(N(d),[]),u):void 0})}});function SVr(n,c,u,d){let I=u(h=>yts(h,n.sourceFile,c,d));return rg(zZt,I,Z.Add_async_modifier_to_containing_function,zZt,Z.Add_all_missing_async_modifiers)}function yts(n,c,u,d){if(d&&d.has(sd(u)))return;d?.add(sd(u));let I=_e.replaceModifiers(Bd(u,!0),_e.createNodeArray(_e.createModifiersFromModifierFlags(zR(u)|1024)));n.replaceNode(c,u,I)}function wVr(n,c){if(!c)return;let u=Qc(n,c.start);return Si(u,I=>I.getStart(n)Uu(c)?"quit":(fd(I)||cI(I)||WA(I)||mp(I))&&Vte(c,Ey(I,n)))}function bts(n,c){return({start:u,length:d,relatedInformation:I,code:h})=>cm(u)&&cm(d)&&Vte({start:u,length:d},n)&&h===c&&!!I&&lr(I,b=>b.code===Z.Did_you_mean_to_mark_this_function_as_async.code)}var qZt="addMissingAwait",TVr=Z.Property_0_does_not_exist_on_type_1.code,NVr=[Z.This_expression_is_not_callable.code,Z.This_expression_is_not_constructable.code],$Zt=[Z.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type.code,Z.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,Z.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,Z.Operator_0_cannot_be_applied_to_type_1.code,Z.Operator_0_cannot_be_applied_to_types_1_and_2.code,Z.This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap.code,Z.This_condition_will_always_return_true_since_this_0_is_always_defined.code,Z.Type_0_is_not_an_array_type.code,Z.Type_0_is_not_an_array_type_or_a_string_type.code,Z.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher.code,Z.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,Z.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,Z.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator.code,Z.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,TVr,...NVr];wg({fixIds:[qZt],errorCodes:$Zt,getCodeActions:function(c){let{sourceFile:u,errorCode:d,span:I,cancellationToken:h,program:b}=c,R=RVr(u,d,I,h,b);if(!R)return;let N=c.program.getTypeChecker(),V=P=>po.ChangeTracker.with(c,P);return Vn([DVr(c,R,d,N,V),xVr(c,R,d,N,V)])},getAllCodeActions:n=>{let{sourceFile:c,program:u,cancellationToken:d}=n,I=n.program.getTypeChecker(),h=new Set;return Md(n,$Zt,(b,R)=>{let N=RVr(c,R.code,R,d,u);if(!N)return;let V=P=>(P(b),[]);return DVr(n,N,R.code,I,V,h)||xVr(n,N,R.code,I,V,h)})}});function RVr(n,c,u,d,I){let h=Nje(n,u);return h&&Ets(n,c,u,d,I)&&kVr(h)?h:void 0}function DVr(n,c,u,d,I,h){let{sourceFile:b,program:R,cancellationToken:N}=n,V=Bts(c,b,N,R,d);if(V){let P=I(M=>{X(V.initializers,({expression:te})=>eLt(M,u,b,d,te,h)),h&&V.needsSecondPassForFixAll&&eLt(M,u,b,d,c,h)});return AT("addMissingAwaitToInitializer",P,V.initializers.length===1?[Z.Add_await_to_initializer_for_0,V.initializers[0].declarationSymbol.name]:Z.Add_await_to_initializers)}}function xVr(n,c,u,d,I,h){let b=I(R=>eLt(R,u,n.sourceFile,d,c,h));return rg(qZt,b,Z.Add_await,qZt,Z.Fix_all_expressions_possibly_missing_await)}function Ets(n,c,u,d,I){let b=I.getTypeChecker().getDiagnostics(n,d);return lr(b,({start:R,length:N,relatedInformation:V,code:P})=>cm(R)&&cm(N)&&Vte({start:R,length:N},u)&&P===c&&!!V&&lr(V,M=>M.code===Z.Did_you_forget_to_use_await.code))}function Bts(n,c,u,d,I){let h=vts(n,I);if(!h)return;let b=h.isCompleteFix,R;for(let N of h.identifiers){let V=I.getSymbolAtLocation(N);if(!V)continue;let P=eo(V.valueDeclaration,zs),M=P&&eo(P.name,sr),te=CG(P,243);if(!P||!te||P.type||!P.initializer||te.getSourceFile()!==c||ba(te,32)||!M||!kVr(P.initializer)){b=!1;continue}let re=d.getSemanticDiagnostics(c,u);if(Yp.Core.eachSymbolReferenceInFile(M,I,c,Ae=>N!==Ae&&!Sts(Ae,re,c,I))){b=!1;continue}(R||(R=[])).push({expression:P.initializer,declarationSymbol:V})}return R&&{initializers:R,needsSecondPassForFixAll:!b}}function vts(n,c){if(Io(n.parent)&&sr(n.parent.expression))return{identifiers:[n.parent.expression],isCompleteFix:!0};if(sr(n))return{identifiers:[n],isCompleteFix:!0};if(no(n)){let u,d=!0;for(let I of[n.left,n.right]){let h=c.getTypeAtLocation(I);if(c.getPromisedTypeOfPromise(h)){if(!sr(I)){d=!1;continue}(u||(u=[])).push(I)}}return u&&{identifiers:u,isCompleteFix:d}}}function Sts(n,c,u,d){let I=Io(n.parent)?n.parent.name:no(n.parent)?n.parent:n,h=be(c,b=>b.start===I.getStart(u)&&b.start+b.length===I.getEnd());return h&&Ue($Zt,h.code)||d.getTypeAtLocation(I).flags&1}function kVr(n){return n.flags&65536||!!Si(n,c=>c.parent&&fd(c.parent)&&c.parent.body===c||mc(c)&&(c.parent.kind===262||c.parent.kind===218||c.parent.kind===219||c.parent.kind===174))}function eLt(n,c,u,d,I,h){if(W1(I.parent)&&!I.parent.awaitModifier){let b=d.getTypeAtLocation(I),R=d.getAsyncIterableType();if(R&&d.isTypeAssignableTo(b,R)){let N=I.parent;n.replaceNode(u,N,_e.updateForOfStatement(N,_e.createToken(135),N.initializer,N.expression,N.statement));return}}if(no(I))for(let b of[I.left,I.right]){if(h&&sr(b)){let V=d.getSymbolAtLocation(b);if(V&&h.has(kg(V)))continue}let R=d.getTypeAtLocation(b),N=d.getPromisedTypeOfPromise(R)?_e.createAwaitExpression(b):b;n.replaceNode(u,b,N)}else if(c===TVr&&Io(I.parent)){if(h&&sr(I.parent.expression)){let b=d.getSymbolAtLocation(I.parent.expression);if(b&&h.has(kg(b)))return}n.replaceNode(u,I.parent.expression,_e.createParenthesizedExpression(_e.createAwaitExpression(I.parent.expression))),GVr(n,I.parent.expression,u)}else if(Ue(NVr,c)&&BB(I.parent)){if(h&&sr(I)){let b=d.getSymbolAtLocation(I);if(b&&h.has(kg(b)))return}n.replaceNode(u,I,_e.createParenthesizedExpression(_e.createAwaitExpression(I))),GVr(n,I,u)}else{if(h&&zs(I.parent)&&sr(I.parent.name)){let b=d.getSymbolAtLocation(I.parent.name);if(b&&!Zi(h,kg(b)))return}n.replaceNode(u,I,_e.createAwaitExpression(I))}}function GVr(n,c,u){let d=_m(c.pos,u);d&&rFe(d.end,d.parent,u)&&n.insertText(u,c.getStart(u),";")}var tLt="addMissingConst",FVr=[Z.Cannot_find_name_0.code,Z.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer.code];wg({errorCodes:FVr,getCodeActions:function(c){let u=po.ChangeTracker.with(c,d=>ZVr(d,c.sourceFile,c.span.start,c.program));if(u.length>0)return[rg(tLt,u,Z.Add_const_to_unresolved_variable,tLt,Z.Add_const_to_all_unresolved_variables)]},fixIds:[tLt],getAllCodeActions:n=>{let c=new Set;return Md(n,FVr,(u,d)=>ZVr(u,d.file,d.start,n.program,c))}});function ZVr(n,c,u,d,I){let h=Qc(c,u),b=Si(h,V=>yZ(V.parent)?V.parent.initializer===V:wts(V)?!1:"quit");if(b)return vze(n,b,c,I);let R=h.parent;if(no(R)&&R.operatorToken.kind===64&&Hf(R.parent))return vze(n,h,c,I);if(If(R)){let V=d.getTypeChecker();return he(R.elements,P=>Tts(P,V))?vze(n,R,c,I):void 0}let N=Si(h,V=>Hf(V.parent)?!0:Nts(V)?!1:"quit");if(N){let V=d.getTypeChecker();return LVr(N,V)?vze(n,N,c,I):void 0}}function vze(n,c,u,d){(!d||Zi(d,c))&&n.insertModifierBefore(u,87,c)}function wts(n){switch(n.kind){case 80:case 209:case 210:case 303:case 304:return!0;default:return!1}}function Tts(n,c){let u=sr(n)?n:fm(n,!0)&&sr(n.left)?n.left:void 0;return!!u&&!c.getSymbolAtLocation(u)}function Nts(n){switch(n.kind){case 80:case 226:case 28:return!0;default:return!1}}function LVr(n,c){return no(n)?n.operatorToken.kind===28?he([n.left,n.right],u=>LVr(u,c)):n.operatorToken.kind===64&&sr(n.left)&&!c.getSymbolAtLocation(n.left):!1}var rLt="addMissingDeclareProperty",VVr=[Z.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];wg({errorCodes:VVr,getCodeActions:function(c){let u=po.ChangeTracker.with(c,d=>WVr(d,c.sourceFile,c.span.start));if(u.length>0)return[rg(rLt,u,Z.Prefix_with_declare,rLt,Z.Prefix_all_incorrect_property_declarations_with_declare)]},fixIds:[rLt],getAllCodeActions:n=>{let c=new Set;return Md(n,VVr,(u,d)=>WVr(u,d.file,d.start,c))}});function WVr(n,c,u,d){let I=Qc(c,u);if(!sr(I))return;let h=I.parent;h.kind===172&&(!d||Zi(d,h))&&n.insertModifierBefore(c,138,h)}var nLt="addMissingInvocationForDecorator",PVr=[Z._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0.code];wg({errorCodes:PVr,getCodeActions:function(c){let u=po.ChangeTracker.with(c,d=>OVr(d,c.sourceFile,c.span.start));return[rg(nLt,u,Z.Call_decorator_expression,nLt,Z.Add_to_all_uncalled_decorators)]},fixIds:[nLt],getAllCodeActions:n=>Md(n,PVr,(c,u)=>OVr(c,u.file,u.start))});function OVr(n,c,u){let d=Qc(c,u),I=Si(d,GC);w.assert(!!I,"Expected position to be owned by a decorator.");let h=_e.createCallExpression(I.expression,void 0,void 0);n.replaceNode(c,I.expression,h)}var iLt="addNameToNamelessParameter",MVr=[Z.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1.code];wg({errorCodes:MVr,getCodeActions:function(c){let u=po.ChangeTracker.with(c,d=>QVr(d,c.sourceFile,c.span.start));return[rg(iLt,u,Z.Add_parameter_name,iLt,Z.Add_names_to_all_parameters_without_names)]},fixIds:[iLt],getAllCodeActions:n=>Md(n,MVr,(c,u)=>QVr(c,u.file,u.start))});function QVr(n,c,u){let d=Qc(c,u),I=d.parent;if(!Jc(I))return w.fail("Tried to add a parameter name to a non-parameter: "+w.formatSyntaxKind(d.kind));let h=I.parent.parameters.indexOf(I);w.assert(!I.type,"Tried to add a parameter name to a parameter that already had one."),w.assert(h>-1,"Parameter not found in parent parameter list.");let b=I.name.getEnd(),R=_e.createTypeReferenceNode(I.name,void 0),N=YVr(c,I);for(;N;)R=_e.createArrayTypeNode(R),b=N.getEnd(),N=YVr(c,N);let V=_e.createParameterDeclaration(I.modifiers,I.dotDotDotToken,"arg"+h,I.questionToken,I.dotDotDotToken&&!He(R)?_e.createArrayTypeNode(R):R,I.initializer);n.replaceRange(c,F1(I.getStart(c),b),V)}function YVr(n,c){let u=yY(c.name,c.parent,n);if(u&&u.kind===23&&Vu(u.parent)&&Jc(u.parent.parent))return u.parent.parent}var HVr="addOptionalPropertyUndefined",Rts=[Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target.code,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,Z.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];wg({errorCodes:Rts,getCodeActions(n){let c=n.program.getTypeChecker(),u=Dts(n.sourceFile,n.span,c);if(!u.length)return;let d=po.ChangeTracker.with(n,I=>kts(I,u));return[AT(HVr,d,Z.Add_undefined_to_optional_property_type)]},fixIds:[HVr]});function Dts(n,c,u){var d,I;let h=XVr(Nje(n,c),u);if(!h)return v;let{source:b,target:R}=h,N=xts(b,R,u)?u.getTypeAtLocation(R.expression):u.getTypeAtLocation(R);return(I=(d=N.symbol)==null?void 0:d.declarations)!=null&&I.some(V=>ls(V).fileName.match(/\.d\.ts$/))?v:u.getExactOptionalProperties(N)}function xts(n,c,u){return Io(c)&&!!u.getExactOptionalProperties(u.getTypeAtLocation(c.expression)).length&&u.getTypeAtLocation(n)===u.getUndefinedType()}function XVr(n,c){var u;if(n){if(no(n.parent)&&n.parent.operatorToken.kind===64)return{source:n.parent.right,target:n.parent.left};if(zs(n.parent)&&n.parent.initializer)return{source:n.parent.initializer,target:n.parent.name};if(cu(n.parent)){let d=c.getSymbolAtLocation(n.parent.expression);if(!d?.valueDeclaration||!PR(d.valueDeclaration.kind)||!tn(n))return;let I=n.parent.arguments.indexOf(n);if(I===-1)return;let h=d.valueDeclaration.parameters[I].name;if(sr(h))return{source:n,target:h}}else if(KC(n.parent)&&sr(n.parent.name)||G_(n.parent)){let d=XVr(n.parent.parent,c);if(!d)return;let I=c.getPropertyOfType(c.getTypeAtLocation(d.target),n.parent.name.text),h=(u=I?.declarations)==null?void 0:u[0];return h?{source:KC(n.parent)?n.parent.initializer:n.parent.name,target:h}:void 0}}else return}function kts(n,c){for(let u of c){let d=u.valueDeclaration;if(d&&(n_(d)||Ql(d))&&d.type){let I=_e.createUnionTypeNode([...d.type.kind===192?d.type.types:[d.type],_e.createTypeReferenceNode("undefined")]);n.replaceNode(d.getSourceFile(),d.type,I)}}}var sLt="annotateWithTypeFromJSDoc",JVr=[Z.JSDoc_types_may_be_moved_to_TypeScript_types.code];wg({errorCodes:JVr,getCodeActions(n){let c=UVr(n.sourceFile,n.span.start);if(!c)return;let u=po.ChangeTracker.with(n,d=>zVr(d,n.sourceFile,c));return[rg(sLt,u,Z.Annotate_with_type_from_JSDoc,sLt,Z.Annotate_everything_with_types_from_JSDoc)]},fixIds:[sLt],getAllCodeActions:n=>Md(n,JVr,(c,u)=>{let d=UVr(u.file,u.start);d&&zVr(c,u.file,d)})});function UVr(n,c){let u=Qc(n,c);return eo(Jc(u.parent)?u.parent.parent:u.parent,KVr)}function KVr(n){return Gts(n)&&jVr(n)}function jVr(n){return dd(n)?n.parameters.some(jVr)||!n.type&&!!uX(n):!n.type&&!!yx(n)}function zVr(n,c,u){if(dd(u)&&(uX(u)||u.parameters.some(d=>!!yx(d)))){if(!u.typeParameters){let I=See(u);I.length&&n.insertTypeParameters(c,u,I)}let d=fd(u)&&!Od(u,21,c);d&&n.insertNodeBefore(c,$s(u.parameters),_e.createToken(21));for(let I of u.parameters)if(!I.type){let h=yx(I);h&&n.tryInsertTypeAnnotation(c,I,xr(h,wY,Ya))}if(d&&n.insertNodeAfter(c,Na(u.parameters),_e.createToken(22)),!u.type){let I=uX(u);I&&n.tryInsertTypeAnnotation(c,u,xr(I,wY,Ya))}}else{let d=w.checkDefined(yx(u),"A JSDocType for this declaration should exist");w.assert(!u.type,"The JSDocType decl should have a type"),n.tryInsertTypeAnnotation(c,u,xr(d,wY,Ya))}}function Gts(n){return dd(n)||n.kind===260||n.kind===171||n.kind===172}function wY(n){switch(n.kind){case 312:case 313:return _e.createTypeReferenceNode("any",v);case 316:return Zts(n);case 315:return wY(n.type);case 314:return Lts(n);case 318:return Vts(n);case 317:return Wts(n);case 183:return Ots(n);case 322:return Fts(n);default:let c=ns(n,wY,void 0);return co(c,1),c}}function Fts(n){let c=_e.createTypeLiteralNode(Ot(n.jsDocPropertyTags,u=>_e.createPropertySignature(void 0,sr(u.name)?u.name:u.name.right,Jee(u)?_e.createToken(58):void 0,u.typeExpression&&xr(u.typeExpression.type,wY,Ya)||_e.createKeywordTypeNode(133))));return co(c,1),c}function Zts(n){return _e.createUnionTypeNode([xr(n.type,wY,Ya),_e.createTypeReferenceNode("undefined",v)])}function Lts(n){return _e.createUnionTypeNode([xr(n.type,wY,Ya),_e.createTypeReferenceNode("null",v)])}function Vts(n){return _e.createArrayTypeNode(xr(n.type,wY,Ya))}function Wts(n){return _e.createFunctionTypeNode(v,n.parameters.map(Pts),n.type??_e.createKeywordTypeNode(133))}function Pts(n){let c=n.parent.parameters.indexOf(n),u=n.type.kind===318&&c===n.parent.parameters.length-1,d=n.name||(u?"rest":"arg"+c),I=u?_e.createToken(26):n.dotDotDotToken;return _e.createParameterDeclaration(n.modifiers,I,d,n.questionToken,xr(n.type,wY,Ya),n.initializer)}function Ots(n){let c=n.typeName,u=n.typeArguments;if(sr(n.typeName)){if(eee(n))return Mts(n);let d=n.typeName.text;switch(n.typeName.text){case"String":case"Boolean":case"Object":case"Number":d=d.toLowerCase();break;case"array":case"date":case"promise":d=d[0].toUpperCase()+d.slice(1);break}c=_e.createIdentifier(d),(d==="Array"||d==="Promise")&&!n.typeArguments?u=_e.createNodeArray([_e.createTypeReferenceNode("any",v)]):u=ws(n.typeArguments,wY,Ya)}return _e.createTypeReferenceNode(c,u)}function Mts(n){let c=_e.createParameterDeclaration(void 0,void 0,n.typeArguments[0].kind===150?"n":"s",void 0,_e.createTypeReferenceNode(n.typeArguments[0].kind===150?"number":"string",[]),void 0),u=_e.createTypeLiteralNode([_e.createIndexSignature(void 0,[c],n.typeArguments[1])]);return co(u,1),u}var oLt="convertFunctionToEs6Class",qVr=[Z.This_constructor_function_may_be_converted_to_a_class_declaration.code];wg({errorCodes:qVr,getCodeActions(n){let c=po.ChangeTracker.with(n,u=>$Vr(u,n.sourceFile,n.span.start,n.program.getTypeChecker(),n.preferences,n.program.getCompilerOptions()));return[rg(oLt,c,Z.Convert_function_to_an_ES2015_class,oLt,Z.Convert_all_constructor_functions_to_classes)]},fixIds:[oLt],getAllCodeActions:n=>Md(n,qVr,(c,u)=>$Vr(c,u.file,u.start,n.program.getTypeChecker(),n.preferences,n.program.getCompilerOptions()))});function $Vr(n,c,u,d,I,h){let b=d.getSymbolAtLocation(Qc(c,u));if(!b||!b.valueDeclaration||!(b.flags&19))return;let R=b.valueDeclaration;if(mp(R)||WA(R))n.replaceNode(c,R,P(R));else if(zs(R)){let M=V(R);if(!M)return;let te=R.parent.parent;yl(R.parent)&&R.parent.declarations.length>1?(n.delete(c,R),n.insertNodeAfter(c,te,M)):n.replaceNode(c,te,M)}function N(M){let te=[];return M.exports&&M.exports.forEach(Ae=>{if(Ae.name==="prototype"&&Ae.declarations){let de=Ae.declarations[0];if(Ae.declarations.length===1&&Io(de)&&no(de.parent)&&de.parent.operatorToken.kind===64&&tu(de.parent.right)){let Be=de.parent.right;ue(Be.symbol,void 0,te)}}else ue(Ae,[_e.createToken(126)],te)}),M.members&&M.members.forEach((Ae,de)=>{var Be,Fe,Ne,Qe;if(de==="constructor"&&Ae.valueDeclaration){let De=(Qe=(Ne=(Fe=(Be=M.exports)==null?void 0:Be.get("prototype"))==null?void 0:Fe.declarations)==null?void 0:Ne[0])==null?void 0:Qe.parent;De&&no(De)&&tu(De.right)&&lr(De.right.properties,wze)||n.delete(c,Ae.valueDeclaration.parent);return}ue(Ae,void 0,te)}),te;function re(Ae,de){return Cp(Ae)?Io(Ae)&&wze(Ae)?!0:$l(de):he(Ae.properties,Be=>!!(cI(Be)||AX(Be)||KC(Be)&&WA(Be.initializer)&&Be.name||wze(Be)))}function ue(Ae,de,Be){if(!(Ae.flags&8192)&&!(Ae.flags&4096))return;let Fe=Ae.valueDeclaration,Ne=Fe.parent,Qe=Ne.right;if(!re(Fe,Qe)||lr(Be,st=>{let nt=vl(st);return!!(nt&&sr(nt)&&ao(nt)===df(Ae))}))return;let De=Ne.parent&&Ne.parent.kind===244?Ne.parent:Ne;if(n.delete(c,De),!Qe){Be.push(_e.createPropertyDeclaration(de,Ae.name,void 0,void 0,void 0));return}if(Cp(Fe)&&(WA(Qe)||fd(Qe))){let st=W2(c,I),nt=Qts(Fe,h,st);nt&<(Be,Qe,nt);return}else if(tu(Qe)){X(Qe.properties,st=>{(cI(st)||AX(st))&&Be.push(st),KC(st)&&WA(st.initializer)&<(Be,st.initializer,st.name),wze(st)});return}else{if(n0(c)||!Io(Fe))return;let st=_e.createPropertyDeclaration(de,Fe.name,void 0,void 0,Qe);Pte(Ne.parent,st,c),Be.push(st);return}function lt(st,nt,qe){return WA(nt)?Le(st,nt,qe):je(st,nt,qe)}function Le(st,nt,qe){let it=vi(de,Sze(nt,134)),It=_e.createMethodDeclaration(it,void 0,qe,void 0,void 0,nt.parameters,void 0,nt.body);Pte(Ne,It,c),st.push(It)}function je(st,nt,qe){let it=nt.body,It;it.kind===241?It=it:It=_e.createBlock([_e.createReturnStatement(it)]);let dt=vi(de,Sze(nt,134)),wt=_e.createMethodDeclaration(dt,void 0,qe,void 0,void 0,nt.parameters,void 0,It);Pte(Ne,wt,c),st.push(wt)}}}function V(M){let te=M.initializer;if(!te||!WA(te)||!sr(M.name))return;let re=N(M.symbol);te.body&&re.unshift(_e.createConstructorDeclaration(void 0,te.parameters,te.body));let ue=Sze(M.parent.parent,95);return _e.createClassDeclaration(ue,M.name,void 0,void 0,re)}function P(M){let te=N(b);M.body&&te.unshift(_e.createConstructorDeclaration(void 0,M.parameters,M.body));let re=Sze(M,95);return _e.createClassDeclaration(re,M.name,void 0,void 0,te)}}function Sze(n,c){return ew(n)?Gt(n.modifiers,u=>u.kind===c):void 0}function wze(n){return n.name?!!(sr(n.name)&&n.name.text==="constructor"):!1}function Qts(n,c,u){if(Io(n))return n.name;let d=n.argumentExpression;if(du(d))return d;if(XA(d))return Ke(d.text,iA(c))?_e.createIdentifier(d.text):oY(d)?_e.createStringLiteral(d.text,u===0):d}var aLt="convertToAsyncFunction",eWr=[Z.This_may_be_converted_to_an_async_function.code],Tze=!0;wg({errorCodes:eWr,getCodeActions(n){Tze=!0;let c=po.ChangeTracker.with(n,u=>tWr(u,n.sourceFile,n.span.start,n.program.getTypeChecker()));return Tze?[rg(aLt,c,Z.Convert_to_async_function,aLt,Z.Convert_all_to_async_functions)]:[]},fixIds:[aLt],getAllCodeActions:n=>Md(n,eWr,(c,u)=>tWr(c,u.file,u.start,n.program.getTypeChecker()))});function tWr(n,c,u,d){let I=Qc(c,u),h;if(sr(I)&&zs(I.parent)&&I.parent.initializer&&dd(I.parent.initializer)?h=I.parent.initializer:h=eo(Wb(Qc(c,u)),jje),!h)return;let b=new Map,R=so(h),N=Hts(h,d),V=Xts(h,d,b);if(!Uje(V,d))return;let P=V.body&&mc(V.body)?Yts(V.body,d):v,M={checker:d,synthNamesMap:b,setOfExpressionsToReturn:N,isInJSFile:R};if(!P.length)return;let te=Ju(c.text,OS(h).pos);n.insertModifierAt(c,te,134,{suffix:" "});for(let re of P)if(mu(re,function ue(Ae){if(cu(Ae)){let de=Jte(Ae,Ae,M,!1);if(n7())return!0;n.replaceNodeWithNodes(c,re,de)}else if(!$l(Ae)&&(mu(Ae,ue),n7()))return!0}),n7())return}function Yts(n,c){let u=[];return wx(n,d=>{mFe(d,c)&&u.push(d)}),u}function Hts(n,c){if(!n.body)return new Set;let u=new Set;return mu(n.body,function d(I){l0e(I,c,"then")?(u.add(sd(I)),X(I.arguments,d)):l0e(I,c,"catch")||l0e(I,c,"finally")?(u.add(sd(I)),mu(I,d)):nWr(I,c)?u.add(sd(I)):mu(I,d)}),u}function l0e(n,c,u){if(!cu(n))return!1;let I=x_e(n,u)&&c.getTypeAtLocation(n);return!!(I&&c.getPromisedTypeOfPromise(I))}function rWr(n,c){return(sa(n)&4)!==0&&n.target===c}function Nze(n,c,u){if(n.expression.name.escapedText==="finally")return;let d=u.getTypeAtLocation(n.expression.expression);if(rWr(d,u.getPromiseType())||rWr(d,u.getPromiseLikeType()))if(n.expression.name.escapedText==="then"){if(c===ts(n.arguments,0))return ts(n.typeArguments,0);if(c===ts(n.arguments,1))return ts(n.typeArguments,1)}else return ts(n.typeArguments,0)}function nWr(n,c){return tn(n)?!!c.getPromisedTypeOfPromise(c.getTypeAtLocation(n)):!1}function Xts(n,c,u){let d=new Map,I=ec();return mu(n,function h(b){if(!sr(b)){mu(b,h);return}let R=c.getSymbolAtLocation(b);if(R){let N=c.getTypeAtLocation(b),V=lWr(N,c),P=kg(R).toString();if(V&&!Jc(b.parent)&&!dd(b.parent)&&!u.has(P)){let M=$i(V.parameters),te=M?.valueDeclaration&&Jc(M.valueDeclaration)&&eo(M.valueDeclaration.name,sr)||_e.createUniqueName("result",16),re=iWr(te,I);u.set(P,re),I.add(te.text,R)}else if(b.parent&&(Jc(b.parent)||zs(b.parent)||ml(b.parent))){let M=b.text,te=I.get(M);if(te&&te.some(re=>re!==R)){let re=iWr(b,I);d.set(P,re.identifier),u.set(P,re),I.add(M,R)}else{let re=Bd(b);u.set(P,kue(re)),I.add(M,R)}}}}),X_e(n,!0,h=>{if(ml(h)&&sr(h.name)&&Vg(h.parent)){let b=c.getSymbolAtLocation(h.name),R=b&&d.get(String(kg(b)));if(R&&R.text!==(h.name||h.propertyName).getText())return _e.createBindingElement(h.dotDotDotToken,h.propertyName||h.name,R,h.initializer)}else if(sr(h)){let b=c.getSymbolAtLocation(h),R=b&&d.get(String(kg(b)));if(R)return _e.createIdentifier(R.text)}})}function iWr(n,c){let u=(c.get(n.text)||v).length,d=u===0?n:_e.createIdentifier(n.text+"_"+u);return kue(d)}function n7(){return!Tze}function IP(){return Tze=!1,v}function Jte(n,c,u,d,I){if(l0e(c,u.checker,"then"))return Kts(c,ts(c.arguments,0),ts(c.arguments,1),u,d,I);if(l0e(c,u.checker,"catch"))return aWr(c,ts(c.arguments,0),u,d,I);if(l0e(c,u.checker,"finally"))return Uts(c,ts(c.arguments,0),u,d,I);if(Io(c))return Jte(n,c.expression,u,d,I);let h=u.checker.getTypeAtLocation(c);return h&&u.checker.getPromisedTypeOfPromise(h)?(w.assertNode(Tp(c).parent,Io),jts(n,c,u,d,I)):IP()}function Rze({checker:n},c){if(c.kind===106)return!0;if(sr(c)&&!Ip(c)&&ao(c)==="undefined"){let u=n.getSymbolAtLocation(c);return!u||n.isUndefinedSymbol(u)}return!1}function Jts(n){let c=_e.createUniqueName(n.identifier.text,16);return kue(c)}function sWr(n,c,u){let d;return u&&!g0e(n,c)&&(u0e(u)?(d=u,c.synthNamesMap.forEach((I,h)=>{if(I.identifier.text===u.identifier.text){let b=Jts(u);c.synthNamesMap.set(h,b)}})):d=kue(_e.createUniqueName("result",16),u.types),gLt(d)),d}function oWr(n,c,u,d,I){let h=[],b;if(d&&!g0e(n,c)){b=Bd(gLt(d));let R=d.types,N=c.checker.getUnionType(R,2),V=c.isInJSFile?void 0:c.checker.typeToTypeNode(N,void 0,void 0),P=[_e.createVariableDeclaration(b,void 0,V)],M=_e.createVariableStatement(void 0,_e.createVariableDeclarationList(P,1));h.push(M)}return h.push(u),I&&b&&$ts(I)&&h.push(_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(Bd(dWr(I)),void 0,void 0,b)],2))),h}function Uts(n,c,u,d,I){if(!c||Rze(u,c))return Jte(n,n.expression.expression,u,d,I);let h=sWr(n,u,I),b=Jte(n,n.expression.expression,u,!0,h);if(n7())return IP();let R=lLt(c,d,void 0,void 0,n,u);if(n7())return IP();let N=_e.createBlock(b),V=_e.createBlock(R),P=_e.createTryStatement(N,void 0,V);return oWr(n,u,P,h,I)}function aWr(n,c,u,d,I){if(!c||Rze(u,c))return Jte(n,n.expression.expression,u,d,I);let h=gWr(c,u),b=sWr(n,u,I),R=Jte(n,n.expression.expression,u,!0,b);if(n7())return IP();let N=lLt(c,d,b,h,n,u);if(n7())return IP();let V=_e.createBlock(R),P=_e.createCatchClause(h&&Bd(FFe(h)),_e.createBlock(N)),M=_e.createTryStatement(V,P,void 0);return oWr(n,u,M,b,I)}function Kts(n,c,u,d,I,h){if(!c||Rze(d,c))return aWr(n,u,d,I,h);if(u&&!Rze(d,u))return IP();let b=gWr(c,d),R=Jte(n.expression.expression,n.expression.expression,d,!0,b);if(n7())return IP();let N=lLt(c,I,h,b,n,d);return n7()?IP():vi(R,N)}function jts(n,c,u,d,I){if(g0e(n,u)){let h=Bd(c);return d&&(h=_e.createAwaitExpression(h)),[_e.createReturnStatement(h)]}return Dze(I,_e.createAwaitExpression(c),void 0)}function Dze(n,c,u){return!n||AWr(n)?[_e.createExpressionStatement(c)]:u0e(n)&&n.hasBeenDeclared?[_e.createExpressionStatement(_e.createAssignment(Bd(uLt(n)),c))]:[_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(Bd(FFe(n)),void 0,u,c)],2))]}function cLt(n,c){if(c&&n){let u=_e.createUniqueName("result",16);return[...Dze(kue(u),n,c),_e.createReturnStatement(u)]}return[_e.createReturnStatement(n)]}function lLt(n,c,u,d,I,h){var b;switch(n.kind){case 106:break;case 211:case 80:if(!d)break;let R=_e.createCallExpression(Bd(n),void 0,u0e(d)?[uLt(d)]:[]);if(g0e(I,h))return cLt(R,Nze(I,n,h.checker));let N=h.checker.getTypeAtLocation(n),V=h.checker.getSignaturesOfType(N,0);if(!V.length)return IP();let P=V[0].getReturnType(),M=Dze(u,_e.createAwaitExpression(R),Nze(I,n,h.checker));return u&&u.types.push(h.checker.getAwaitedType(P)||P),M;case 218:case 219:{let te=n.body,re=(b=lWr(h.checker.getTypeAtLocation(n),h.checker))==null?void 0:b.getReturnType();if(mc(te)){let ue=[],Ae=!1;for(let de of te.statements)if(k_(de))if(Ae=!0,mFe(de,h.checker))ue=ue.concat(uWr(h,de,c,u));else{let Be=re&&de.expression?cWr(h.checker,re,de.expression):de.expression;ue.push(...cLt(Be,Nze(I,n,h.checker)))}else{if(c&&wx(de,pI))return IP();ue.push(de)}return g0e(I,h)?ue.map(de=>Bd(de)):zts(ue,u,h,Ae)}else{let ue=Kje(te,h.checker)?uWr(h,_e.createReturnStatement(te),c,u):v;if(ue.length>0)return ue;if(re){let Ae=cWr(h.checker,re,te);if(g0e(I,h))return cLt(Ae,Nze(I,n,h.checker));{let de=Dze(u,Ae,void 0);return u&&u.types.push(h.checker.getAwaitedType(re)||re),de}}else return IP()}}default:return IP()}return v}function cWr(n,c,u){let d=Bd(u);return n.getPromisedTypeOfPromise(c)?_e.createAwaitExpression(d):d}function lWr(n,c){let u=c.getSignaturesOfType(n,0);return qo(u)}function zts(n,c,u,d){let I=[];for(let h of n)if(k_(h)){if(h.expression){let b=nWr(h.expression,u.checker)?_e.createAwaitExpression(h.expression):h.expression;c===void 0?I.push(_e.createExpressionStatement(b)):u0e(c)&&c.hasBeenDeclared?I.push(_e.createExpressionStatement(_e.createAssignment(uLt(c),b))):I.push(_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(FFe(c),void 0,void 0,b)],2)))}}else I.push(Bd(h));return!d&&c!==void 0&&I.push(_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(FFe(c),void 0,void 0,_e.createIdentifier("undefined"))],2))),I}function uWr(n,c,u,d){let I=[];return mu(c,function h(b){if(cu(b)){let R=Jte(b,b,n,u,d);if(I=I.concat(R),I.length>0)return}else $l(b)||mu(b,h)}),I}function gWr(n,c){let u=[],d;if(dd(n)){if(n.parameters.length>0){let N=n.parameters[0].name;d=I(N)}}else sr(n)?d=h(n):Io(n)&&sr(n.name)&&(d=h(n.name));if(!d||"identifier"in d&&d.identifier.text==="undefined")return;return d;function I(N){if(sr(N))return h(N);let V=Fr(N.elements,P=>ef(P)?[]:[I(P.name)]);return qts(N,V)}function h(N){let V=R(N),P=b(V);return P&&c.synthNamesMap.get(kg(P).toString())||kue(N,u)}function b(N){var V;return((V=eo(N,B2))==null?void 0:V.symbol)??c.checker.getSymbolAtLocation(N)}function R(N){return N.original?N.original:N}}function AWr(n){return n?u0e(n)?!n.identifier.text:he(n.elements,AWr):!0}function kue(n,c=[]){return{kind:0,identifier:n,types:c,hasBeenDeclared:!1,hasBeenReferenced:!1}}function qts(n,c=v,u=[]){return{kind:1,bindingPattern:n,elements:c,types:u}}function uLt(n){return n.hasBeenReferenced=!0,n.identifier}function FFe(n){return u0e(n)?gLt(n):dWr(n)}function dWr(n){for(let c of n.elements)FFe(c);return n.bindingPattern}function gLt(n){return n.hasBeenDeclared=!0,n.identifier}function u0e(n){return n.kind===0}function $ts(n){return n.kind===1}function g0e(n,c){return!!n.original&&c.setOfExpressionsToReturn.has(sd(n.original))}wg({errorCodes:[Z.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module.code],getCodeActions(n){let{sourceFile:c,program:u,preferences:d}=n,I=po.ChangeTracker.with(n,h=>{if(trs(c,u.getTypeChecker(),h,iA(u.getCompilerOptions()),W2(c,d)))for(let R of u.getSourceFiles())ers(R,c,u,h,W2(R,d))});return[AT("convertToEsModule",I,Z.Convert_to_ES_module)]}});function ers(n,c,u,d,I){var h;for(let b of n.imports){let R=(h=u.getResolvedModuleFromModuleSpecifier(b,n))==null?void 0:h.resolvedModule;if(!R||R.resolvedFileName!==c.fileName)continue;let N=VX(b);switch(N.kind){case 271:d.replaceNode(n,N,NV(N.name,void 0,b,I));break;case 213:Q0(N,!1)&&d.replaceNode(n,N,_e.createPropertyAccessExpression(Bd(N),"default"));break}}}function trs(n,c,u,d,I){let h={original:prs(n),additional:new Set},b=rrs(n,c,h);nrs(n,b,u);let R=!1,N;for(let V of Gt(n.statements,Rp)){let P=fWr(n,V,u,c,h,d,I);P&&_8(P,N??(N=new Map))}for(let V of Gt(n.statements,P=>!Rp(P))){let P=irs(n,V,c,u,h,d,b,N,I);R=R||P}return N?.forEach((V,P)=>{u.replaceNode(n,P,V)}),R}function rrs(n,c,u){let d=new Map;return pWr(n,I=>{let{text:h}=I.name;!d.has(h)&&(mee(I.name)||c.resolveName(h,I,111551,!0))&&d.set(h,xze(`_${h}`,u))}),d}function nrs(n,c,u){pWr(n,(d,I)=>{if(I)return;let{text:h}=d.name;u.replaceNode(n,d,_e.createIdentifier(c.get(h)||h))})}function pWr(n,c){n.forEachChild(function u(d){if(Io(d)&&fY(n,d.expression)&&sr(d.name)){let{parent:I}=d;c(d,no(I)&&I.left===d&&I.operatorToken.kind===64)}d.forEachChild(u)})}function irs(n,c,u,d,I,h,b,R,N){switch(c.kind){case 243:return fWr(n,c,d,u,I,h,N),!1;case 244:{let{expression:V}=c;switch(V.kind){case 213:return Q0(V,!0)&&d.replaceNode(n,c,NV(void 0,void 0,V.arguments[0],N)),!1;case 226:{let{operatorToken:P}=V;return P.kind===64&&ors(n,u,V,d,b,R)}}}default:return!1}}function fWr(n,c,u,d,I,h,b){let{declarationList:R}=c,N=!1,V=Ot(R.declarations,P=>{let{name:M,initializer:te}=P;if(te){if(fY(n,te))return N=!0,Gue([]);if(Q0(te,!0))return N=!0,Ars(M,te.arguments[0],d,I,h,b);if(Io(te)&&Q0(te.expression,!0))return N=!0,srs(M,te.name.text,te.expression.arguments[0],I,b)}return Gue([_e.createVariableStatement(void 0,_e.createVariableDeclarationList([P],R.flags))])});if(N){u.replaceNodeWithNodes(n,c,Fr(V,M=>M.newImports));let P;return X(V,M=>{M.useSitesToUnqualify&&_8(M.useSitesToUnqualify,P??(P=new Map))}),P}}function srs(n,c,u,d,I){switch(n.kind){case 206:case 207:{let h=xze(c,d);return Gue([hWr(h,c,u,I),kze(void 0,n,_e.createIdentifier(h))])}case 80:return Gue([hWr(n.text,c,u,I)]);default:return w.assertNever(n,`Convert to ES module got invalid syntax form ${n.kind}`)}}function ors(n,c,u,d,I,h){let{left:b,right:R}=u;if(!Io(b))return!1;if(fY(n,b))if(fY(n,R))d.delete(n,u.parent);else{let N=tu(R)?ars(R,h):Q0(R,!0)?lrs(R.arguments[0],c):void 0;return N?(d.replaceNodeWithNodes(n,u.parent,N[0]),N[1]):(d.replaceRangeWithText(n,F1(b.getStart(n),R.pos),"export default"),!0)}else fY(n,b.expression)&&crs(n,u,d,I);return!1}function ars(n,c){let u=Br(n.properties,d=>{switch(d.kind){case 177:case 178:case 304:case 305:return;case 303:return sr(d.name)?grs(d.name.text,d.initializer,c):void 0;case 174:return sr(d.name)?mWr(d.name.text,[_e.createToken(95)],d,c):void 0;default:w.assertNever(d,`Convert to ES6 got invalid prop kind ${d.kind}`)}});return u&&[u,!1]}function crs(n,c,u,d){let{text:I}=c.left.name,h=d.get(I);if(h!==void 0){let b=[kze(void 0,h,c.right),pLt([_e.createExportSpecifier(!1,h,I)])];u.replaceNodeWithNodes(n,c.parent,b)}else urs(c,n,u)}function lrs(n,c){let u=n.text,d=c.getSymbolAtLocation(n),I=d?d.exports:G;return I.has("export=")?[[ALt(u)],!0]:I.has("default")?I.size>1?[[IWr(u),ALt(u)],!0]:[[ALt(u)],!0]:[[IWr(u)],!1]}function IWr(n){return pLt(void 0,n)}function ALt(n){return pLt([_e.createExportSpecifier(!1,void 0,"default")],n)}function urs({left:n,right:c,parent:u},d,I){let h=n.name.text;if((WA(c)||fd(c)||tp(c))&&(!c.name||c.name.text===h)){I.replaceRange(d,{pos:n.getStart(d),end:c.getStart(d)},_e.createToken(95),{suffix:" "}),c.name||I.insertName(d,c,h);let b=Od(u,27,d);b&&I.delete(d,b)}else I.replaceNodeRangeWithNodes(d,n.expression,Od(n,25,d),[_e.createToken(95),_e.createToken(87)],{joiner:" ",suffix:" "})}function grs(n,c,u){let d=[_e.createToken(95)];switch(c.kind){case 218:{let{name:h}=c;if(h&&h.text!==n)return I()}case 219:return mWr(n,d,c,u);case 231:return Irs(n,d,c,u);default:return I()}function I(){return kze(d,_e.createIdentifier(n),dLt(c,u))}}function dLt(n,c){if(!c||!lr(on(c.keys()),d=>V2(n,d)))return n;return Ra(n)?_je(n,!0,u):X_e(n,!0,u);function u(d){if(d.kind===211){let I=c.get(d);return c.delete(d),I}}}function Ars(n,c,u,d,I,h){switch(n.kind){case 206:{let b=Br(n.elements,R=>R.dotDotDotToken||R.initializer||R.propertyName&&!sr(R.propertyName)||!sr(R.name)?void 0:_Wr(R.propertyName&&R.propertyName.text,R.name.text));if(b)return Gue([NV(void 0,b,c,h)])}case 207:{let b=xze(z_e(c.text,I),d);return Gue([NV(_e.createIdentifier(b),void 0,c,h),kze(void 0,Bd(n),_e.createIdentifier(b))])}case 80:return drs(n,c,u,d,h);default:return w.assertNever(n,`Convert to ES module got invalid name kind ${n.kind}`)}}function drs(n,c,u,d,I){let h=u.getSymbolAtLocation(n),b=new Map,R=!1,N;for(let P of d.original.get(n.text)){if(u.getSymbolAtLocation(P)!==h||P===n)continue;let{parent:M}=P;if(Io(M)){let{name:{text:te}}=M;if(te==="default"){R=!0;let re=P.getText();(N??(N=new Map)).set(M,_e.createIdentifier(re))}else{w.assert(M.expression===P,"Didn't expect expression === use");let re=b.get(te);re===void 0&&(re=xze(te,d),b.set(te,re)),(N??(N=new Map)).set(M,_e.createIdentifier(re))}}else R=!0}let V=b.size===0?void 0:on(dr(b.entries(),([P,M])=>_e.createImportSpecifier(!1,P===M?void 0:_e.createIdentifier(P),_e.createIdentifier(M))));return V||(R=!0),Gue([NV(R?Bd(n):void 0,V,c,I)],N)}function xze(n,c){for(;c.original.has(n)||c.additional.has(n);)n=`_${n}`;return c.additional.add(n),n}function prs(n){let c=ec();return CWr(n,u=>c.add(u.text,u)),c}function CWr(n,c){sr(n)&&frs(n)&&c(n),n.forEachChild(u=>CWr(u,c))}function frs(n){let{parent:c}=n;switch(c.kind){case 211:return c.name!==n;case 208:return c.propertyName!==n;case 276:return c.propertyName!==n;default:return!0}}function mWr(n,c,u,d){return _e.createFunctionDeclaration(vi(c,bY(u.modifiers)),Bd(u.asteriskToken),n,bY(u.typeParameters),bY(u.parameters),Bd(u.type),_e.converters.convertToFunctionBlock(dLt(u.body,d)))}function Irs(n,c,u,d){return _e.createClassDeclaration(vi(c,bY(u.modifiers)),n,bY(u.typeParameters),bY(u.heritageClauses),dLt(u.members,d))}function hWr(n,c,u,d){return c==="default"?NV(_e.createIdentifier(n),void 0,u,d):NV(void 0,[_Wr(c,n)],u,d)}function _Wr(n,c){return _e.createImportSpecifier(!1,n!==void 0&&n!==c?_e.createIdentifier(n):void 0,_e.createIdentifier(c))}function kze(n,c,u){return _e.createVariableStatement(n,_e.createVariableDeclarationList([_e.createVariableDeclaration(c,void 0,void 0,u)],2))}function pLt(n,c){return _e.createExportDeclaration(void 0,!1,n&&_e.createNamedExports(n),c===void 0?void 0:_e.createStringLiteral(c))}function Gue(n,c){return{newImports:n,useSitesToUnqualify:c}}var fLt="correctQualifiedNameToIndexedAccessType",yWr=[Z.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];wg({errorCodes:yWr,getCodeActions(n){let c=bWr(n.sourceFile,n.span.start);if(!c)return;let u=po.ChangeTracker.with(n,I=>EWr(I,n.sourceFile,c)),d=`${c.left.text}["${c.right.text}"]`;return[rg(fLt,u,[Z.Rewrite_as_the_indexed_access_type_0,d],fLt,Z.Rewrite_all_as_indexed_access_types)]},fixIds:[fLt],getAllCodeActions:n=>Md(n,yWr,(c,u)=>{let d=bWr(u.file,u.start);d&&EWr(c,u.file,d)})});function bWr(n,c){let u=Si(Qc(n,c),a0);return w.assert(!!u,"Expected position to be owned by a qualified name."),sr(u.left)?u:void 0}function EWr(n,c,u){let d=u.right.text,I=_e.createIndexedAccessTypeNode(_e.createTypeReferenceNode(u.left,void 0),_e.createLiteralTypeNode(_e.createStringLiteral(d)));n.replaceNode(c,u,I)}var ILt=[Z.Re_exporting_a_type_when_0_is_enabled_requires_using_export_type.code],CLt="convertToTypeOnlyExport";wg({errorCodes:ILt,getCodeActions:function(c){let u=po.ChangeTracker.with(c,d=>vWr(d,BWr(c.span,c.sourceFile),c));if(u.length)return[rg(CLt,u,Z.Convert_to_type_only_export,CLt,Z.Convert_all_re_exported_types_to_type_only_exports)]},fixIds:[CLt],getAllCodeActions:function(c){let u=new Map;return Md(c,ILt,(d,I)=>{let h=BWr(I,c.sourceFile);h&&R2(u,sd(h.parent.parent))&&vWr(d,h,c)})}});function BWr(n,c){return eo(Qc(c,n.start).parent,c0)}function vWr(n,c,u){if(!c)return;let d=c.parent,I=d.parent,h=Crs(c,u);if(h.length===d.elements.length)n.insertModifierBefore(u.sourceFile,156,d);else{let b=_e.updateExportDeclaration(I,I.modifiers,!1,_e.updateNamedExports(d,Gt(d.elements,N=>!Ue(h,N))),I.moduleSpecifier,void 0),R=_e.createExportDeclaration(void 0,!0,_e.createNamedExports(h),I.moduleSpecifier,void 0);n.replaceNode(u.sourceFile,I,b,{leadingTriviaOption:po.LeadingTriviaOption.IncludeAll,trailingTriviaOption:po.TrailingTriviaOption.Exclude}),n.insertNodeAfter(u.sourceFile,I,R)}}function Crs(n,c){let u=n.parent;if(u.elements.length===1)return u.elements;let d=rFt(Ey(u),c.program.getSemanticDiagnostics(c.sourceFile,c.cancellationToken));return Gt(u.elements,I=>{var h;return I===n||((h=tFt(I,d))==null?void 0:h.code)===ILt[0]})}var SWr=[Z._0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled.code,Z._0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled.code],Gze="convertToTypeOnlyImport";wg({errorCodes:SWr,getCodeActions:function(c){var u;let d=wWr(c.sourceFile,c.span.start);if(d){let I=po.ChangeTracker.with(c,R=>ZFe(R,c.sourceFile,d)),h=d.kind===276&&mI(d.parent.parent.parent)&&TWr(d,c.sourceFile,c.program)?po.ChangeTracker.with(c,R=>ZFe(R,c.sourceFile,d.parent.parent.parent)):void 0,b=rg(Gze,I,d.kind===276?[Z.Use_type_0,((u=d.propertyName)==null?void 0:u.text)??d.name.text]:Z.Use_import_type,Gze,Z.Fix_all_with_type_only_imports);return lr(h)?[AT(Gze,h,Z.Use_import_type),b]:[b]}},fixIds:[Gze],getAllCodeActions:function(c){let u=new Set;return Md(c,SWr,(d,I)=>{let h=wWr(I.file,I.start);h?.kind===272&&!u.has(h)?(ZFe(d,I.file,h),u.add(h)):h?.kind===276&&mI(h.parent.parent.parent)&&!u.has(h.parent.parent.parent)&&TWr(h,I.file,c.program)?(ZFe(d,I.file,h.parent.parent.parent),u.add(h.parent.parent.parent)):h?.kind===276&&ZFe(d,I.file,h)})}});function wWr(n,c){let{parent:u}=Qc(n,c);return _y(u)||mI(u)&&u.importClause?u:void 0}function TWr(n,c,u){if(n.parent.parent.name)return!1;let d=n.parent.elements.filter(h=>!h.isTypeOnly);if(d.length===1)return!0;let I=u.getTypeChecker();for(let h of d)if(Yp.Core.eachSymbolReferenceInFile(h.name,I,c,R=>{let N=I.getSymbolAtLocation(R);return!!N&&I.symbolIsValue(N)||!DZ(R)}))return!1;return!0}function ZFe(n,c,u){var d;if(_y(u))n.replaceNode(c,u,_e.updateImportSpecifier(u,!0,u.propertyName,u.name));else{let I=u.importClause;if(I.name&&I.namedBindings)n.replaceNodeWithNodes(c,u,[_e.createImportDeclaration(bY(u.modifiers,!0),_e.createImportClause(!0,Bd(I.name,!0),void 0),Bd(u.moduleSpecifier,!0),Bd(u.attributes,!0)),_e.createImportDeclaration(bY(u.modifiers,!0),_e.createImportClause(!0,void 0,Bd(I.namedBindings,!0)),Bd(u.moduleSpecifier,!0),Bd(u.attributes,!0))]);else{let h=((d=I.namedBindings)==null?void 0:d.kind)===275?_e.updateNamedImports(I.namedBindings,Ar(I.namedBindings.elements,R=>_e.updateImportSpecifier(R,!1,R.propertyName,R.name))):I.namedBindings,b=_e.updateImportDeclaration(u,u.modifiers,_e.updateImportClause(I,!0,I.name,h),u.moduleSpecifier,u.attributes);n.replaceNode(c,u,b)}}}var mLt="convertTypedefToType",NWr=[Z.JSDoc_typedef_may_be_converted_to_TypeScript_type.code];wg({fixIds:[mLt],errorCodes:NWr,getCodeActions(n){let c=WZ(n.host,n.formatContext.options),u=Qc(n.sourceFile,n.span.start);if(!u)return;let d=po.ChangeTracker.with(n,I=>RWr(I,u,n.sourceFile,c));if(d.length>0)return[rg(mLt,d,Z.Convert_typedef_to_TypeScript_type,mLt,Z.Convert_all_typedef_to_TypeScript_types)]},getAllCodeActions:n=>Md(n,NWr,(c,u)=>{let d=WZ(n.host,n.formatContext.options),I=Qc(u.file,u.start);I&&RWr(c,I,u.file,d,!0)})});function RWr(n,c,u,d,I=!1){if(!d4(c))return;let h=hrs(c);if(!h)return;let b=c.parent,{leftSibling:R,rightSibling:N}=mrs(c),V=b.getStart(),P="";!R&&b.comment&&(V=DWr(b,b.getStart(),c.getStart()),P=`${d} */${d}`),R&&(I&&d4(R)?(V=c.getStart(),P=""):(V=DWr(b,R.getStart(),c.getStart()),P=`${d} */${d}`));let M=b.getEnd(),te="";N&&(I&&d4(N)?(M=N.getStart(),te=`${d}${d}`):(M=N.getStart(),te=`${d}/**${d} * `)),n.replaceRange(u,{pos:V,end:M},h,{prefix:P,suffix:te})}function mrs(n){let c=n.parent,u=c.getChildCount()-1,d=c.getChildren().findIndex(b=>b.getStart()===n.getStart()&&b.getEnd()===n.getEnd()),I=d>0?c.getChildAt(d-1):void 0,h=d0;I--)if(!/[*/\s]/g.test(d.substring(I-1,I)))return c+I;return u}function hrs(n){var c;let{typeExpression:u}=n;if(!u)return;let d=(c=n.name)==null?void 0:c.getText();if(d){if(u.kind===322)return _rs(d,u);if(u.kind===309)return yrs(d,u)}}function _rs(n,c){let u=xWr(c);if(lr(u))return _e.createInterfaceDeclaration(void 0,n,void 0,void 0,u)}function yrs(n,c){let u=Bd(c.type);if(u)return _e.createTypeAliasDeclaration(void 0,_e.createIdentifier(n),void 0,u)}function xWr(n){let c=n.jsDocPropertyTags;return lr(c)?tr(c,d=>{var I;let h=brs(d),b=(I=d.typeExpression)==null?void 0:I.type,R=d.isBracketed,N;if(b&&A4(b)){let V=xWr(b);N=_e.createTypeLiteralNode(V)}else b&&(N=Bd(b));if(N&&h){let V=R?_e.createToken(58):void 0;return _e.createPropertySignature(void 0,h,V,N)}}):void 0}function brs(n){return n.name.kind===80?n.name.text:n.name.right.text}function Ers(n){return hy(n)?Fr(n.jsDoc,c=>{var u;return(u=c.tags)==null?void 0:u.filter(d=>d4(d))}):[]}var hLt="convertLiteralTypeToMappedType",kWr=[Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0.code];wg({errorCodes:kWr,getCodeActions:function(c){let{sourceFile:u,span:d}=c,I=GWr(u,d.start);if(!I)return;let{name:h,constraint:b}=I,R=po.ChangeTracker.with(c,N=>FWr(N,u,I));return[rg(hLt,R,[Z.Convert_0_to_1_in_0,b,h],hLt,Z.Convert_all_type_literals_to_mapped_type)]},fixIds:[hLt],getAllCodeActions:n=>Md(n,kWr,(c,u)=>{let d=GWr(u.file,u.start);d&&FWr(c,u.file,d)})});function GWr(n,c){let u=Qc(n,c);if(sr(u)){let d=ps(u.parent.parent,n_),I=u.getText(n);return{container:ps(d.parent,Se),typeNode:d.type,constraint:I,name:I==="K"?"P":"K"}}}function FWr(n,c,{container:u,typeNode:d,constraint:I,name:h}){n.replaceNode(c,u,_e.createMappedTypeNode(void 0,_e.createTypeParameterDeclaration(void 0,h,_e.createTypeReferenceNode(I)),void 0,void 0,d,void 0))}var ZWr=[Z.Class_0_incorrectly_implements_interface_1.code,Z.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass.code],_Lt="fixClassIncorrectlyImplementsInterface";wg({errorCodes:ZWr,getCodeActions(n){let{sourceFile:c,span:u}=n,d=LWr(c,u.start);return tr(MX(d),I=>{let h=po.ChangeTracker.with(n,b=>WWr(n,I,c,d,b,n.preferences));return h.length===0?void 0:rg(_Lt,h,[Z.Implement_interface_0,I.getText(c)],_Lt,Z.Implement_all_unimplemented_interfaces)})},fixIds:[_Lt],getAllCodeActions(n){let c=new Map;return Md(n,ZWr,(u,d)=>{let I=LWr(d.file,d.start);if(R2(c,sd(I)))for(let h of MX(I))WWr(n,h,d.file,I,u,n.preferences)})}});function LWr(n,c){return w.checkDefined(Um(Qc(n,c)),"There should be a containing class")}function VWr(n){return!n.valueDeclaration||!(N_(n.valueDeclaration)&2)}function WWr(n,c,u,d,I,h){let b=n.program.getTypeChecker(),R=Brs(d,b),N=b.getTypeAtLocation(c),P=b.getPropertiesOfType(N).filter(uh(VWr,de=>!R.has(de.escapedName))),M=b.getTypeAtLocation(d),te=be(d.members,de=>Rf(de));M.getNumberIndexType()||ue(N,1),M.getStringIndexType()||ue(N,0);let re=TY(u,n.program,h,n.host);g9t(d,P,u,n,h,re,de=>Ae(u,d,de)),re.writeFixes(I);function ue(de,Be){let Fe=b.getIndexInfoOfType(de,Be);Fe&&Ae(u,d,b.indexInfoToIndexSignatureDeclaration(Fe,d,void 0,Ute(n)))}function Ae(de,Be,Fe){te?I.insertNodeAfter(de,te,Fe):I.insertMemberAtStart(de,Be,Fe)}}function Brs(n,c){let u=Dv(n);if(!u)return Du();let d=c.getTypeAtLocation(u),I=c.getPropertiesOfType(d);return Du(I.filter(VWr))}var PWr="import",OWr="fixMissingImport",MWr=[Z.Cannot_find_name_0.code,Z.Cannot_find_name_0_Did_you_mean_1.code,Z.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,Z.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,Z.Cannot_find_namespace_0.code,Z._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here.code,Z.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer.code,Z._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type.code,Z.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery.code,Z.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later.code,Z.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom.code,Z.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,Z.Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function.code,Z.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,Z.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,Z.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode.code,Z.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,Z.Cannot_find_namespace_0_Did_you_mean_1.code];wg({errorCodes:MWr,getCodeActions(n){let{errorCode:c,preferences:u,sourceFile:d,span:I,program:h}=n,b=KWr(n,c,I.start,!0);if(b)return b.map(({fix:R,symbolName:N,errorIdentifierText:V})=>bLt(n,d,N,R,N!==V,h,u))},fixIds:[OWr],getAllCodeActions:n=>{let{sourceFile:c,program:u,preferences:d,host:I,cancellationToken:h}=n,b=QWr(c,u,!0,d,I,h);return r7(n,MWr,R=>b.addImportFromDiagnostic(R,n)),t7(po.ChangeTracker.with(n,b.writeFixes))}});function TY(n,c,u,d,I){return QWr(n,c,!1,u,d,I)}function QWr(n,c,u,d,I,h){let b=c.getCompilerOptions(),R=[],N=[],V=new Map,P=new Set,M=new Set,te=new Map;return{addImportFromDiagnostic:Ae,addImportFromExportedSymbol:de,writeFixes:Qe,hasFixes:lt,addImportForUnresolvedIdentifier:ue,addImportForNonExistentExport:Be,removeExistingImport:Fe,addVerbatimImport:re};function re(Le){M.add(Le)}function ue(Le,je,st){let nt=Frs(Le,je,st);!nt||!nt.length||Ne($s(nt))}function Ae(Le,je){let st=KWr(je,Le.code,Le.start,u);!st||!st.length||Ne($s(st))}function de(Le,je,st){var nt;let qe=w.checkDefined(Le.parent),it=cFe(Le,iA(b)),It=c.getTypeChecker(),dt=It.getMergedSymbol(dh(Le,It)),wt=XWr(n,dt,it,qe,!1,c,I,d,h),vt=VFe(n,c),Ye=YWr(n,w.checkDefined(wt),c,void 0,!!je,vt,I,d);if(Ye){let ht=((nt=eo(st?.name,sr))==null?void 0:nt.text)??it;st&&Q9(st)&&(Ye.kind===3||Ye.kind===2)&&Ye.addAsTypeOnly===1&&(Ye={...Ye,addAsTypeOnly:2}),Ne({fix:Ye,symbolName:ht??it,errorIdentifierText:void 0})}}function Be(Le,je,st,nt,qe){let it=c.getSourceFile(je),It=VFe(n,c);if(it&&it.symbol){let{fixes:dt}=LFe([{exportKind:st,isFromPackageJson:!1,moduleFileName:je,moduleSymbol:it.symbol,targetFlags:nt}],void 0,qe,It,c,n,I,d);dt.length&&Ne({fix:dt[0],symbolName:Le,errorIdentifierText:Le})}else{let dt=fFe(je,99,c,I),wt=uP.getLocalModuleSpecifierBetweenFileNames(n,je,b,j6(c,I)),vt=Zze(dt,st,b),Ye=Fze(qe,!0,void 0,nt,c.getTypeChecker(),b);Ne({fix:{kind:3,moduleSpecifierKind:"relative",moduleSpecifier:wt,importKind:vt,addAsTypeOnly:Ye,useRequire:It},symbolName:Le,errorIdentifierText:Le})}}function Fe(Le){Le.kind===273&&w.assertIsDefined(Le.name,"ImportClause should have a name if it's being removed"),P.add(Le)}function Ne(Le){var je,st;let{fix:nt,symbolName:qe}=Le;switch(nt.kind){case 0:R.push(nt);break;case 1:N.push(nt);break;case 2:{let{importClauseOrBindingPattern:wt,importKind:vt,addAsTypeOnly:Ye}=nt,ht=V.get(wt);if(ht||V.set(wt,ht={importClauseOrBindingPattern:wt,defaultImport:void 0,namedImports:new Map}),vt===0){let Et=ht?.namedImports.get(qe);ht.namedImports.set(qe,it(Et,Ye))}else w.assert(ht.defaultImport===void 0||ht.defaultImport.name===qe,"(Add to Existing) Default import should be missing or match symbolName"),ht.defaultImport={name:qe,addAsTypeOnly:it((je=ht.defaultImport)==null?void 0:je.addAsTypeOnly,Ye)};break}case 3:{let{moduleSpecifier:wt,importKind:vt,useRequire:Ye,addAsTypeOnly:ht}=nt,Et=It(wt,vt,Ye,ht);switch(w.assert(Et.useRequire===Ye,"(Add new) Tried to add an `import` and a `require` for the same module"),vt){case 1:w.assert(Et.defaultImport===void 0||Et.defaultImport.name===qe,"(Add new) Default import should be missing or match symbolName"),Et.defaultImport={name:qe,addAsTypeOnly:it((st=Et.defaultImport)==null?void 0:st.addAsTypeOnly,ht)};break;case 0:let Kt=(Et.namedImports||(Et.namedImports=new Map)).get(qe);Et.namedImports.set(qe,it(Kt,ht));break;case 3:if(b.verbatimModuleSyntax){let Tt=(Et.namedImports||(Et.namedImports=new Map)).get(qe);Et.namedImports.set(qe,it(Tt,ht))}else w.assert(Et.namespaceLikeImport===void 0||Et.namespaceLikeImport.name===qe,"Namespacelike import shoudl be missing or match symbolName"),Et.namespaceLikeImport={importKind:vt,name:qe,addAsTypeOnly:ht};break;case 2:w.assert(Et.namespaceLikeImport===void 0||Et.namespaceLikeImport.name===qe,"Namespacelike import shoudl be missing or match symbolName"),Et.namespaceLikeImport={importKind:vt,name:qe,addAsTypeOnly:ht};break}break}case 4:break;default:w.assertNever(nt,`fix wasn't never - got kind ${nt.kind}`)}function it(wt,vt){return Math.max(wt??0,vt)}function It(wt,vt,Ye,ht){let Et=dt(wt,!0),Kt=dt(wt,!1),Tt=te.get(Et),Lt=te.get(Kt),kt={defaultImport:void 0,namedImports:void 0,namespaceLikeImport:void 0,useRequire:Ye};return vt===1&&ht===2?Tt||(te.set(Et,kt),kt):ht===1&&(Tt||Lt)?Tt||Lt:Lt||(te.set(Kt,kt),kt)}function dt(wt,vt){return`${vt?1:0}|${wt}`}}function Qe(Le,je){var st,nt;let qe;JR(n)&&n.imports.length===0&&je!==void 0?qe=je:qe=W2(n,d);for(let dt of R)ELt(Le,n,dt);for(let dt of N)i3r(Le,n,dt,qe);let it;if(P.size){w.assert(JR(n),"Cannot remove imports from a future source file");let dt=new Set(tr([...P],Et=>Si(Et,mI))),wt=new Set(tr([...P],Et=>Si(Et,tee))),vt=[...dt].filter(Et=>{var Kt,Tt,Lt;return!V.has(Et.importClause)&&(!((Kt=Et.importClause)!=null&&Kt.name)||P.has(Et.importClause))&&(!eo((Tt=Et.importClause)==null?void 0:Tt.namedBindings,Px)||P.has(Et.importClause.namedBindings))&&(!eo((Lt=Et.importClause)==null?void 0:Lt.namedBindings,wN)||he(Et.importClause.namedBindings.elements,kt=>P.has(kt)))}),Ye=[...wt].filter(Et=>(Et.name.kind!==206||!V.has(Et.name))&&(Et.name.kind!==206||he(Et.name.elements,Kt=>P.has(Kt)))),ht=[...dt].filter(Et=>{var Kt,Tt;return((Kt=Et.importClause)==null?void 0:Kt.namedBindings)&&vt.indexOf(Et)===-1&&!((Tt=V.get(Et.importClause))!=null&&Tt.namedImports)&&(Et.importClause.namedBindings.kind===274||he(Et.importClause.namedBindings.elements,Lt=>P.has(Lt)))});for(let Et of[...vt,...Ye])Le.delete(n,Et);for(let Et of ht)Le.replaceNode(n,Et.importClause,_e.updateImportClause(Et.importClause,Et.importClause.isTypeOnly,Et.importClause.name,void 0));for(let Et of P){let Kt=Si(Et,mI);Kt&&vt.indexOf(Kt)===-1&&ht.indexOf(Kt)===-1?Et.kind===273?Le.delete(n,Et.name):(w.assert(Et.kind===276,"NamespaceImport should have been handled earlier"),(st=V.get(Kt.importClause))!=null&&st.namedImports?(it??(it=new Set)).add(Et):Le.delete(n,Et)):Et.kind===208?(nt=V.get(Et.parent))!=null&&nt.namedImports?(it??(it=new Set)).add(Et):Le.delete(n,Et):Et.kind===271&&Le.delete(n,Et)}}V.forEach(({importClauseOrBindingPattern:dt,defaultImport:wt,namedImports:vt})=>{n3r(Le,n,dt,wt,on(vt.entries(),([Ye,ht])=>({addAsTypeOnly:ht,name:Ye})),it,d)});let It;te.forEach(({useRequire:dt,defaultImport:wt,namedImports:vt,namespaceLikeImport:Ye},ht)=>{let Et=ht.slice(2),Tt=(dt?a3r:o3r)(Et,qe,wt,vt&&on(vt.entries(),([Lt,kt])=>({addAsTypeOnly:kt,name:Lt})),Ye,b,d);It=Ws(It,Tt)}),It=Ws(It,De()),It&&cje(Le,n,It,!0,d)}function De(){if(!M.size)return;let Le=new Set(tr([...M],st=>Si(st,mI))),je=new Set(tr([...M],st=>Si(st,W8)));return[...tr([...M],st=>st.kind===271?Bd(st,!0):void 0),...[...Le].map(st=>{var nt;return M.has(st)?Bd(st,!0):Bd(_e.updateImportDeclaration(st,st.modifiers,st.importClause&&_e.updateImportClause(st.importClause,st.importClause.isTypeOnly,M.has(st.importClause)?st.importClause.name:void 0,M.has(st.importClause.namedBindings)?st.importClause.namedBindings:(nt=eo(st.importClause.namedBindings,wN))!=null&&nt.elements.some(qe=>M.has(qe))?_e.updateNamedImports(st.importClause.namedBindings,st.importClause.namedBindings.elements.filter(qe=>M.has(qe))):void 0),st.moduleSpecifier,st.attributes),!0)}),...[...je].map(st=>M.has(st)?Bd(st,!0):Bd(_e.updateVariableStatement(st,st.modifiers,_e.updateVariableDeclarationList(st.declarationList,tr(st.declarationList.declarations,nt=>M.has(nt)?nt:_e.updateVariableDeclaration(nt,nt.name.kind===206?_e.updateObjectBindingPattern(nt.name,nt.name.elements.filter(qe=>M.has(qe))):nt.name,nt.exclamationToken,nt.type,nt.initializer)))),!0))]}function lt(){return R.length>0||N.length>0||V.size>0||te.size>0||M.size>0||P.size>0}}function vrs(n,c,u,d){let I=Ote(n,d,u),h=JWr(c.getTypeChecker(),n,c.getCompilerOptions());return{getModuleSpecifierForBestExportInfo:b};function b(R,N,V,P){let{fixes:M,computedWithoutCacheCount:te}=LFe(R,N,V,!1,c,n,u,d,h,P),re=zWr(M,n,c,I,u,d);return re&&{...re,computedWithoutCacheCount:te}}}function Srs(n,c,u,d,I,h,b,R,N,V,P,M){let te;u?(te=$_e(d,b,R,P,M).get(d.path,u),w.assertIsDefined(te,"Some exportInfo should match the specified exportMapKey")):(te=W0(N2(c.name))?[Trs(n,I,c,R,b)]:XWr(d,n,I,c,h,R,b,P,M),w.assertIsDefined(te,"Some exportInfo should match the specified symbol / moduleSymbol"));let re=VFe(d,R),ue=DZ(Qc(d,V)),Ae=w.checkDefined(YWr(d,te,R,V,ue,re,b,P));return{moduleSpecifier:Ae.moduleSpecifier,codeAction:HWr(bLt({host:b,formatContext:N,preferences:P},d,I,Ae,!1,R,P))}}function wrs(n,c,u,d,I,h){let b=u.getCompilerOptions(),R=Dg(yLt(n,u.getTypeChecker(),c,b)),N=t3r(n,c,R,u),V=R!==c.text;return N&&HWr(bLt({host:d,formatContext:I,preferences:h},n,R,N,V,u,h))}function YWr(n,c,u,d,I,h,b,R){let N=Ote(n,R,b);return zWr(LFe(c,d,I,h,u,n,b,R).fixes,n,u,N,b,R)}function HWr({description:n,changes:c,commands:u}){return{description:n,changes:c,commands:u}}function XWr(n,c,u,d,I,h,b,R,N){let V=UWr(h,b);return $_e(n,b,h,R,N).search(n.path,I,P=>P===u,P=>{if(dh(P[0].symbol,V(P[0].isFromPackageJson))===c&&P.some(M=>M.moduleSymbol===d||M.symbol.parent===d))return P})}function Trs(n,c,u,d,I){var h,b;let R=V(d.getTypeChecker(),!1);if(R)return R;let N=(b=(h=I.getPackageJsonAutoImportProvider)==null?void 0:h.call(I))==null?void 0:b.getTypeChecker();return w.checkDefined(N&&V(N,!0),"Could not find symbol in specified module for code actions");function V(P,M){let te=IFe(u,P);if(te&&dh(te.symbol,P)===n)return{symbol:te.symbol,moduleSymbol:u,moduleFileName:void 0,exportKind:te.exportKind,targetFlags:dh(n,P).flags,isFromPackageJson:M};let re=P.tryGetMemberInModuleExportsAndProperties(c,u);if(re&&dh(re,P)===n)return{symbol:re,moduleSymbol:u,moduleFileName:void 0,exportKind:0,targetFlags:dh(n,P).flags,isFromPackageJson:M}}}function LFe(n,c,u,d,I,h,b,R,N=JR(h)?JWr(I.getTypeChecker(),h,I.getCompilerOptions()):void 0,V){let P=I.getTypeChecker(),M=N?Fr(n,N.getImportsForExportInfo):v,te=c!==void 0&&Nrs(M,c),re=Drs(M,u,P,I.getCompilerOptions());if(re)return{computedWithoutCacheCount:0,fixes:[...te?[te]:v,re]};let{fixes:ue,computedWithoutCacheCount:Ae=0}=krs(n,M,I,h,c,u,d,b,R,V);return{computedWithoutCacheCount:Ae,fixes:[...te?[te]:v,...ue]}}function Nrs(n,c){return le(n,({declaration:u,importKind:d})=>{var I;if(d!==0)return;let h=Rrs(u),b=h&&((I=Y8(u))==null?void 0:I.text);if(b)return{kind:0,namespacePrefix:h,usagePosition:c,moduleSpecifierKind:void 0,moduleSpecifier:b}})}function Rrs(n){var c,u,d;switch(n.kind){case 260:return(c=eo(n.name,sr))==null?void 0:c.text;case 271:return n.name.text;case 351:case 272:return(d=eo((u=n.importClause)==null?void 0:u.namedBindings,Px))==null?void 0:d.name.text;default:return w.assertNever(n)}}function Fze(n,c,u,d,I,h){return n?u&&h.verbatimModuleSyntax&&(!(d&111551)||I.getTypeOnlyAliasDeclaration(u))?2:1:4}function Drs(n,c,u,d){let I;for(let b of n){let R=h(b);if(!R)continue;let N=Q9(R.importClauseOrBindingPattern);if(R.addAsTypeOnly!==4&&N||R.addAsTypeOnly===4&&!N)return R;I??(I=R)}return I;function h({declaration:b,importKind:R,symbol:N,targetFlags:V}){if(R===3||R===2||b.kind===271)return;if(b.kind===260)return(R===0||R===1)&&b.name.kind===206?{kind:2,importClauseOrBindingPattern:b.name,importKind:R,moduleSpecifierKind:void 0,moduleSpecifier:b.initializer.arguments[0].text,addAsTypeOnly:4}:void 0;let{importClause:P}=b;if(!P||!XA(b.moduleSpecifier))return;let{name:M,namedBindings:te}=P;if(P.isTypeOnly&&!(R===0&&te))return;let re=Fze(c,!1,N,V,u,d);if(!(R===1&&(M||re===2&&te))&&!(R===0&&te?.kind===274))return{kind:2,importClauseOrBindingPattern:P,importKind:R,moduleSpecifierKind:void 0,moduleSpecifier:b.moduleSpecifier.text,addAsTypeOnly:re}}}function JWr(n,c,u){let d;for(let I of c.imports){let h=VX(I);if(tee(h.parent)){let b=n.resolveExternalModuleName(I);b&&(d||(d=ec())).add(kg(b),h.parent)}else if(h.kind===272||h.kind===271||h.kind===351){let b=n.getSymbolAtLocation(I);b&&(d||(d=ec())).add(kg(b),h)}}return{getImportsForExportInfo:({moduleSymbol:I,exportKind:h,targetFlags:b,symbol:R})=>{let N=d?.get(kg(I));if(!N||n0(c)&&!(b&111551)&&!he(N,RN))return v;let V=Zze(c,h,u);return N.map(P=>({declaration:P,importKind:V,symbol:R,targetFlags:b}))}}}function VFe(n,c){if(!mN(n.fileName))return!1;if(n.commonJsModuleIndicator&&!n.externalModuleIndicator)return!0;if(n.externalModuleIndicator&&!n.commonJsModuleIndicator)return!1;let u=c.getCompilerOptions();if(u.configFile)return R_(u)<5;if(n.impliedNodeFormat===1)return!0;if(n.impliedNodeFormat===99)return!1;for(let d of c.getSourceFiles())if(!(d===n||!n0(d)||c.isSourceFileFromExternalLibrary(d))){if(d.commonJsModuleIndicator&&!d.externalModuleIndicator)return!0;if(d.externalModuleIndicator&&!d.commonJsModuleIndicator)return!1}return!0}function UWr(n,c){return ii(u=>u?c.getPackageJsonAutoImportProvider().getTypeChecker():n.getTypeChecker())}function xrs(n,c,u,d,I,h,b,R,N){let V=mN(c.fileName),P=n.getCompilerOptions(),M=j6(n,b),te=UWr(n,b),re=s0(P),ue=HGe(re),Ae=N?Fe=>uP.tryGetModuleSpecifiersFromCache(Fe.moduleSymbol,c,M,R):(Fe,Ne)=>uP.getModuleSpecifiersWithCacheInfo(Fe.moduleSymbol,Ne,P,c,M,R,void 0,!0),de=0,Be=Fr(h,(Fe,Ne)=>{let Qe=te(Fe.isFromPackageJson),{computedWithoutCache:De,moduleSpecifiers:lt,kind:Le}=Ae(Fe,Qe)??{},je=!!(Fe.targetFlags&111551),st=Fze(d,!0,Fe.symbol,Fe.targetFlags,Qe,P);return de+=De?1:0,tr(lt,nt=>{if(ue&&lP(nt))return;if(!je&&V&&u!==void 0)return{kind:1,moduleSpecifierKind:Le,moduleSpecifier:nt,usagePosition:u,exportInfo:Fe,isReExport:Ne>0};let qe=Zze(c,Fe.exportKind,P),it;if(u!==void 0&&qe===3&&Fe.exportKind===0){let It=Qe.resolveExternalModuleSymbol(Fe.moduleSymbol),dt;It!==Fe.moduleSymbol&&(dt=Vje(It,Qe,P,!1,Bl)),dt||(dt=wue(Fe.moduleSymbol,iA(P),!1)),it={namespacePrefix:dt,usagePosition:u}}return{kind:3,moduleSpecifierKind:Le,moduleSpecifier:nt,importKind:qe,useRequire:I,addAsTypeOnly:st,exportInfo:Fe,isReExport:Ne>0,qualification:it}})});return{computedWithoutCacheCount:de,fixes:Be}}function krs(n,c,u,d,I,h,b,R,N,V){let P=le(c,M=>Grs(M,h,b,u.getTypeChecker(),u.getCompilerOptions()));return P?{fixes:[P]}:xrs(u,d,I,h,b,n,R,N,V)}function Grs({declaration:n,importKind:c,symbol:u,targetFlags:d},I,h,b,R){var N;let V=(N=Y8(n))==null?void 0:N.text;if(V){let P=h?4:Fze(I,!0,u,d,b,R);return{kind:3,moduleSpecifierKind:void 0,moduleSpecifier:V,importKind:c,addAsTypeOnly:P,useRequire:h}}}function KWr(n,c,u,d){let I=Qc(n.sourceFile,u),h;if(c===Z._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code)h=Wrs(n,I);else if(sr(I))if(c===Z._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type.code){let R=Dg(yLt(n.sourceFile,n.program.getTypeChecker(),I,n.program.getCompilerOptions())),N=t3r(n.sourceFile,I,R,n.program);return N&&[{fix:N,symbolName:R,errorIdentifierText:I.text}]}else h=e3r(n,I,d);else return;let b=Ote(n.sourceFile,n.preferences,n.host);return h&&jWr(h,n.sourceFile,n.program,b,n.host,n.preferences)}function jWr(n,c,u,d,I,h){let b=R=>gA(R,I.getCurrentDirectory(),Dx(I));return Cg(n,(R,N)=>RA(!!R.isJsxNamespaceFix,!!N.isJsxNamespaceFix)||Xl(R.fix.kind,N.fix.kind)||qWr(R.fix,N.fix,c,u,h,d.allowsImportingSpecifier,b))}function Frs(n,c,u){let d=e3r(n,c,u),I=Ote(n.sourceFile,n.preferences,n.host);return d&&jWr(d,n.sourceFile,n.program,I,n.host,n.preferences)}function zWr(n,c,u,d,I,h){if(lr(n))return n[0].kind===0||n[0].kind===2?n[0]:n.reduce((b,R)=>qWr(R,b,c,u,h,d.allowsImportingSpecifier,N=>gA(N,I.getCurrentDirectory(),Dx(I)))===-1?R:b)}function qWr(n,c,u,d,I,h,b){return n.kind!==0&&c.kind!==0?RA(c.moduleSpecifierKind!=="node_modules"||h(c.moduleSpecifier),n.moduleSpecifierKind!=="node_modules"||h(n.moduleSpecifier))||Zrs(n,c,I)||Vrs(n.moduleSpecifier,c.moduleSpecifier,u,d)||RA($Wr(n,u.path,b),$Wr(c,u.path,b))||Qee(n.moduleSpecifier,c.moduleSpecifier):0}function Zrs(n,c,u){return u.importModuleSpecifierPreference==="non-relative"||u.importModuleSpecifierPreference==="project-relative"?RA(n.moduleSpecifierKind==="relative",c.moduleSpecifierKind==="relative"):0}function $Wr(n,c,u){var d;if(n.isReExport&&((d=n.exportInfo)!=null&&d.moduleFileName)&&Lrs(n.exportInfo.moduleFileName)){let I=u(aa(n.exportInfo.moduleFileName));return uc(c,I)}return!1}function Lrs(n){return xA(n,[".js",".jsx",".d.ts",".ts",".tsx"],!0)==="index"}function Vrs(n,c,u,d){return uc(n,"node:")&&!uc(c,"node:")?AFe(u,d)?-1:1:uc(c,"node:")&&!uc(n,"node:")?AFe(u,d)?1:-1:0}function Wrs({sourceFile:n,program:c,host:u,preferences:d},I){let h=c.getTypeChecker(),b=Prs(I,h);if(!b)return;let R=h.getAliasedSymbol(b),N=b.name,V=[{symbol:b,moduleSymbol:R,moduleFileName:void 0,exportKind:3,targetFlags:R.flags,isFromPackageJson:!1}],P=VFe(n,c);return LFe(V,void 0,!1,P,c,n,u,d).fixes.map(te=>{var re;return{fix:te,symbolName:N,errorIdentifierText:(re=eo(I,sr))==null?void 0:re.text}})}function Prs(n,c){let u=sr(n)?c.getSymbolAtLocation(n):void 0;if(Oce(u))return u;let{parent:d}=n;if(Jm(d)&&d.tagName===n||g4(d)){let I=c.resolveName(c.getJsxNamespace(d),Jm(d)?n:d,111551,!1);if(Oce(I))return I}}function Zze(n,c,u,d){if(u.verbatimModuleSyntax&&(R_(u)===1||n.impliedNodeFormat===1))return 3;switch(c){case 0:return 0;case 1:return 1;case 2:return Yrs(n,u,!!d);case 3:return Ors(n,u,!!d);default:return w.assertNever(c)}}function Ors(n,c,u){if(JQ(c))return 1;let d=R_(c);switch(d){case 2:case 1:case 3:return mN(n.fileName)&&(n.externalModuleIndicator||u)?2:3;case 4:case 5:case 6:case 7:case 99:case 0:case 200:return 2;case 100:case 199:return n.impliedNodeFormat===99?2:3;default:return w.assertNever(d,`Unexpected moduleKind ${d}`)}}function e3r({sourceFile:n,program:c,cancellationToken:u,host:d,preferences:I},h,b){let R=c.getTypeChecker(),N=c.getCompilerOptions();return Fr(yLt(n,R,h,N),V=>{if(V==="default")return;let P=DZ(h),M=VFe(n,c),te=Qrs(V,ZX(h),_4(h),u,n,c,b,d,I);return on(Or(te.values(),re=>LFe(re,h.getStart(n),P,M,c,n,d,I).fixes),re=>({fix:re,symbolName:V,errorIdentifierText:h.text,isJsxNamespaceFix:V!==h.text}))})}function t3r(n,c,u,d){let I=d.getTypeChecker(),h=I.resolveName(u,c,111551,!0);if(!h)return;let b=I.getTypeOnlyAliasDeclaration(h);if(!(!b||ls(b)!==n))return{kind:4,typeOnlyAliasDeclaration:b}}function yLt(n,c,u,d){let I=u.parent;if((Jm(I)||uY(I))&&I.tagName===u&&kje(d.jsx)){let h=c.getJsxNamespace(n);if(Mrs(h,u,c))return!HX(u.text)&&!c.resolveName(u.text,u,111551,!1)?[u.text,h]:[h]}return[u.text]}function Mrs(n,c,u){if(HX(c.text))return!0;let d=u.resolveName(n,c,111551,!0);return!d||lr(d.declarations,Ex)&&!(d.flags&111551)}function Qrs(n,c,u,d,I,h,b,R,N){var V;let P=ec(),M=Ote(I,N,R),te=(V=R.getModuleSpecifierCache)==null?void 0:V.call(R),re=ii(Ae=>j6(Ae?R.getPackageJsonAutoImportProvider():h,R));function ue(Ae,de,Be,Fe,Ne,Qe){let De=re(Qe);if(de&&Zje(Ne,I,de,N,M,De,te)||!de&&M.allowsImportingAmbientModule(Ae,De)){let lt=Ne.getTypeChecker();P.add(HGt(Be,lt).toString(),{symbol:Be,moduleSymbol:Ae,moduleFileName:de?.fileName,exportKind:Fe,targetFlags:dh(Be,lt).flags,isFromPackageJson:Qe})}}return Lje(h,R,N,b,(Ae,de,Be,Fe)=>{let Ne=Be.getTypeChecker();d.throwIfCancellationRequested();let Qe=Be.getCompilerOptions(),De=IFe(Ae,Ne);De&&l3r(Ne.getSymbolFlags(De.symbol),u)&&Vje(De.symbol,Ne,Qe,c,Le=>Le===n)&&ue(Ae,de,De.symbol,De.exportKind,Be,Fe);let lt=Ne.tryGetMemberInModuleExportsAndProperties(n,Ae);lt&&l3r(Ne.getSymbolFlags(lt),u)&&ue(Ae,de,lt,0,Be,Fe)}),P}function Yrs(n,c,u){let d=JQ(c),I=mN(n.fileName);if(!I&&R_(c)>=5)return d?1:2;if(I)return n.externalModuleIndicator||u?d?1:2:3;for(let h of n.statements??v)if(Cm(h)&&!wf(h.moduleReference))return 3;return d?1:3}function bLt(n,c,u,d,I,h,b){let R,N=po.ChangeTracker.with(n,V=>{R=Hrs(V,c,u,d,I,h,b)});return rg(PWr,N,R,OWr,Z.Add_all_missing_imports)}function Hrs(n,c,u,d,I,h,b){let R=W2(c,b);switch(d.kind){case 0:return ELt(n,c,d),[Z.Change_0_to_1,u,`${d.namespacePrefix}.${u}`];case 1:return i3r(n,c,d,R),[Z.Change_0_to_1,u,s3r(d.moduleSpecifier,R)+u];case 2:{let{importClauseOrBindingPattern:N,importKind:V,addAsTypeOnly:P,moduleSpecifier:M}=d;n3r(n,c,N,V===1?{name:u,addAsTypeOnly:P}:void 0,V===0?[{name:u,addAsTypeOnly:P}]:v,void 0,b);let te=N2(M);return I?[Z.Import_0_from_1,u,te]:[Z.Update_import_from_0,te]}case 3:{let{importKind:N,moduleSpecifier:V,addAsTypeOnly:P,useRequire:M,qualification:te}=d,re=M?a3r:o3r,ue=N===1?{name:u,addAsTypeOnly:P}:void 0,Ae=N===0?[{name:u,addAsTypeOnly:P}]:void 0,de=N===2||N===3?{importKind:N,name:te?.namespacePrefix||u,addAsTypeOnly:P}:void 0;return cje(n,c,re(V,R,ue,Ae,de,h.getCompilerOptions(),b),!0,b),te&&ELt(n,c,te),I?[Z.Import_0_from_1,u,V]:[Z.Add_import_from_0,V]}case 4:{let{typeOnlyAliasDeclaration:N}=d,V=Xrs(n,N,h,c,b);return V.kind===276?[Z.Remove_type_from_import_of_0_from_1,u,r3r(V.parent.parent)]:[Z.Remove_type_from_import_declaration_from_0,r3r(V)]}default:return w.assertNever(d,`Unexpected fix kind ${d.kind}`)}}function r3r(n){var c,u;return n.kind===271?((u=eo((c=eo(n.moduleReference,DG))==null?void 0:c.expression,XA))==null?void 0:u.text)||n.moduleReference.getText():ps(n.parent.moduleSpecifier,bu).text}function Xrs(n,c,u,d,I){let h=u.getCompilerOptions(),b=h.verbatimModuleSyntax;switch(c.kind){case 276:if(c.isTypeOnly){if(c.parent.elements.length>1){let N=_e.updateImportSpecifier(c,!1,c.propertyName,c.name),{specifierComparer:V}=hP.getNamedImportSpecifierComparerWithDetection(c.parent.parent.parent,I,d),P=hP.getImportSpecifierInsertionIndex(c.parent.elements,N,V);if(P!==c.parent.elements.indexOf(c))return n.delete(d,c),n.insertImportSpecifierAtIndex(d,N,c.parent,P),c}return n.deleteRange(d,{pos:Sx(c.getFirstToken()),end:Sx(c.propertyName??c.name)}),c}else return w.assert(c.parent.parent.isTypeOnly),R(c.parent.parent),c.parent.parent;case 273:return R(c),c;case 274:return R(c.parent),c.parent;case 271:return n.deleteRange(d,c.getChildAt(1)),c;default:w.failBadSyntaxKind(c)}function R(N){var V;if(n.delete(d,lje(N,d)),!h.allowImportingTsExtensions){let P=Y8(N.parent),M=P&&((V=u.getResolvedModuleFromModuleSpecifier(P,d))==null?void 0:V.resolvedModule);if(M?.resolvedUsingTsExtension){let te=S1(P.text,Yke(P.text,h));n.replaceNode(d,P,_e.createStringLiteral(te))}}if(b){let P=eo(N.namedBindings,wN);if(P&&P.elements.length>1){hP.getNamedImportSpecifierComparerWithDetection(N.parent,I,d).isSorted!==!1&&c.kind===276&&P.elements.indexOf(c)!==0&&(n.delete(d,c),n.insertImportSpecifierAtIndex(d,c,P,0));for(let te of P.elements)te!==c&&!te.isTypeOnly&&n.insertModifierBefore(d,156,te)}}}}function n3r(n,c,u,d,I,h,b){var R;if(u.kind===206){if(h&&u.elements.some(M=>h.has(M))){n.replaceNode(c,u,_e.createObjectBindingPattern([...u.elements.filter(M=>!h.has(M)),...d?[_e.createBindingElement(void 0,"default",d.name)]:v,...I.map(M=>_e.createBindingElement(void 0,void 0,M.name))]));return}d&&P(u,d.name,"default");for(let M of I)P(u,M.name,void 0);return}let N=u.isTypeOnly&&lr([d,...I],M=>M?.addAsTypeOnly===4),V=u.namedBindings&&((R=eo(u.namedBindings,wN))==null?void 0:R.elements);if(d&&(w.assert(!u.name,"Cannot add a default import to an import clause that already has one"),n.insertNodeAt(c,u.getStart(c),_e.createIdentifier(d.name),{suffix:", "})),I.length){let{specifierComparer:M,isSorted:te}=hP.getNamedImportSpecifierComparerWithDetection(u.parent,b,c),re=Cl(I.map(ue=>_e.createImportSpecifier((!u.isTypeOnly||N)&&Lze(ue,b),void 0,_e.createIdentifier(ue.name))),M);if(h)n.replaceNode(c,u.namedBindings,_e.updateNamedImports(u.namedBindings,Cl([...V.filter(ue=>!h.has(ue)),...re],M)));else if(V?.length&&te!==!1){let ue=N&&V?_e.updateNamedImports(u.namedBindings,Ar(V,Ae=>_e.updateImportSpecifier(Ae,!0,Ae.propertyName,Ae.name))).elements:V;for(let Ae of re){let de=hP.getImportSpecifierInsertionIndex(ue,Ae,M);n.insertImportSpecifierAtIndex(c,Ae,u.namedBindings,de)}}else if(V?.length)for(let ue of re)n.insertNodeInListAfter(c,Na(V),ue,V);else if(re.length){let ue=_e.createNamedImports(re);u.namedBindings?n.replaceNode(c,u.namedBindings,ue):n.insertNodeAfter(c,w.checkDefined(u.name,"Import clause must have either named imports or a default import"),ue)}}if(N&&(n.delete(c,lje(u,c)),V))for(let M of V)n.insertModifierBefore(c,156,M);function P(M,te,re){let ue=_e.createBindingElement(void 0,re,te);M.elements.length?n.insertNodeInListAfter(c,Na(M.elements),ue):n.replaceNode(c,M,_e.createObjectBindingPattern([ue]))}}function ELt(n,c,{namespacePrefix:u,usagePosition:d}){n.insertText(c,d,u+".")}function i3r(n,c,{moduleSpecifier:u,usagePosition:d},I){n.insertText(c,d,s3r(u,I))}function s3r(n,c){let u=oje(c);return`import(${u}${n}${u}).`}function BLt({addAsTypeOnly:n}){return n===2}function Lze(n,c){return BLt(n)||!!c.preferTypeOnlyAutoImports&&n.addAsTypeOnly!==4}function o3r(n,c,u,d,I,h,b){let R=hue(n,c),N;if(u!==void 0||d?.length){let V=(!u||BLt(u))&&he(d,BLt)||(h.verbatimModuleSyntax||b.preferTypeOnlyAutoImports)&&u?.addAsTypeOnly!==4&&!lr(d,P=>P.addAsTypeOnly===4);N=Ws(N,NV(u&&_e.createIdentifier(u.name),d?.map(P=>_e.createImportSpecifier(!V&&Lze(P,b),void 0,_e.createIdentifier(P.name))),n,c,V))}if(I){let V=I.importKind===3?_e.createImportEqualsDeclaration(void 0,Lze(I,b),_e.createIdentifier(I.name),_e.createExternalModuleReference(R)):_e.createImportDeclaration(void 0,_e.createImportClause(Lze(I,b),void 0,_e.createNamespaceImport(_e.createIdentifier(I.name))),R,void 0);N=Ws(N,V)}return w.checkDefined(N)}function a3r(n,c,u,d,I){let h=hue(n,c),b;if(u||d?.length){let R=d?.map(({name:V})=>_e.createBindingElement(void 0,void 0,V))||[];u&&R.unshift(_e.createBindingElement(void 0,"default",u.name));let N=c3r(_e.createObjectBindingPattern(R),h);b=Ws(b,N)}if(I){let R=c3r(I.name,h);b=Ws(b,R)}return w.checkDefined(b)}function c3r(n,c){return _e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(typeof n=="string"?_e.createIdentifier(n):n,void 0,void 0,_e.createCallExpression(_e.createIdentifier("require"),void 0,[c]))],2))}function l3r(n,c){return c===7?!0:c&1?!!(n&111551):c&2?!!(n&788968):c&4?!!(n&1920):!1}var vLt="addMissingConstraint",u3r=[Z.Type_0_is_not_comparable_to_type_1.code,Z.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated.code,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.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,Z.Property_0_is_incompatible_with_index_signature.code,Z.Property_0_in_type_1_is_not_assignable_to_type_2.code,Z.Type_0_does_not_satisfy_the_constraint_1.code];wg({errorCodes:u3r,getCodeActions(n){let{sourceFile:c,span:u,program:d,preferences:I,host:h}=n,b=g3r(d,c,u);if(b===void 0)return;let R=po.ChangeTracker.with(n,N=>A3r(N,d,I,h,c,b));return[rg(vLt,R,Z.Add_extends_constraint,vLt,Z.Add_extends_constraint_to_all_type_parameters)]},fixIds:[vLt],getAllCodeActions:n=>{let{program:c,preferences:u,host:d}=n,I=new Map;return t7(po.ChangeTracker.with(n,h=>{r7(n,u3r,b=>{let R=g3r(c,b.file,bd(b.start,b.length));if(R&&R2(I,sd(R.declaration)))return A3r(h,c,u,d,b.file,R)})}))}});function g3r(n,c,u){let d=be(n.getSemanticDiagnostics(c),b=>b.start===u.start&&b.length===u.length);if(d===void 0||d.relatedInformation===void 0)return;let I=be(d.relatedInformation,b=>b.code===Z.This_type_parameter_might_need_an_extends_0_constraint.code);if(I===void 0||I.file===void 0||I.start===void 0||I.length===void 0)return;let h=m9t(I.file,bd(I.start,I.length));if(h!==void 0&&(sr(h)&&qp(h.parent)&&(h=h.parent),qp(h))){if(Sl(h.parent))return;let b=Qc(c,u.start),R=n.getTypeChecker();return{constraint:Urs(R,b)||Jrs(I.messageText),declaration:h,token:b}}}function A3r(n,c,u,d,I,h){let{declaration:b,constraint:R}=h,N=c.getTypeChecker();if(Xa(R))n.insertText(I,b.name.end,` extends ${R}`);else{let V=iA(c.getCompilerOptions()),P=Ute({program:c,host:d}),M=TY(I,c,u,d),te=OFe(N,M,R,void 0,V,void 0,P);te&&(n.replaceNode(I,b,_e.updateTypeParameterDeclaration(b,void 0,b.name,te,b.default)),M.writeFixes(n))}}function Jrs(n){let[,c]=xN(n,` -`,0).match(/`extends (.*)`/)||[];return c}function Urs(n,c){return Ya(c.parent)?n.getTypeArgumentConstraint(c.parent):(tn(c)?n.getContextualType(c):void 0)||n.getTypeAtLocation(c)}var d3r="fixOverrideModifier",A0e="fixAddOverrideModifier",WFe="fixRemoveOverrideModifier",p3r=[Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code,Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code,Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code,Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code,Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code,Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code,Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code,Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code,Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code],f3r={[Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:A0e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:A0e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code]:{descriptions:Z.Remove_override_modifier,fixId:WFe,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers},[Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code]:{descriptions:Z.Remove_override_modifier,fixId:WFe,fixAllDescriptions:Z.Remove_override_modifier},[Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:A0e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:A0e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:A0e,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers},[Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code]:{descriptions:Z.Remove_override_modifier,fixId:WFe,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers},[Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code]:{descriptions:Z.Remove_override_modifier,fixId:WFe,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers}};wg({errorCodes:p3r,getCodeActions:function(c){let{errorCode:u,span:d}=c,I=f3r[u];if(!I)return v;let{descriptions:h,fixId:b,fixAllDescriptions:R}=I,N=po.ChangeTracker.with(c,V=>I3r(V,c,u,d.start));return[JZt(d3r,N,h,b,R)]},fixIds:[d3r,A0e,WFe],getAllCodeActions:n=>Md(n,p3r,(c,u)=>{let{code:d,start:I}=u,h=f3r[d];!h||h.fixId!==n.fixId||I3r(c,n,d,I)})});function I3r(n,c,u,d){switch(u){case Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code:case Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code:case Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code:case Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code:case Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code:return Krs(n,c.sourceFile,d);case Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code:case Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code:case Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code:case Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code:return jrs(n,c.sourceFile,d);default:w.fail("Unexpected error code: "+u)}}function Krs(n,c,u){let d=m3r(c,u);if(n0(c)){n.addJSDocTags(c,d,[_e.createJSDocOverrideTag(_e.createIdentifier("override"))]);return}let I=d.modifiers||v,h=be(I,nT),b=be(I,lY),R=be(I,M=>K7e(M.kind)),N=Te(I,GC),V=b?b.end:h?h.end:R?R.end:N?Ju(c.text,N.end):d.getStart(c),P=R||h||b?{prefix:" "}:{suffix:" "};n.insertModifierAt(c,V,164,P)}function jrs(n,c,u){let d=m3r(c,u);if(n0(c)){n.filterJSDocTags(c,d,gm(Jxe));return}let I=be(d.modifiers,Zhe);w.assertIsDefined(I),n.deleteModifier(c,I)}function C3r(n){switch(n.kind){case 176:case 172:case 174:case 177:case 178:return!0;case 169:return Zn(n,n.parent);default:return!1}}function m3r(n,c){let u=Qc(n,c),d=Si(u,I=>Sa(I)?"quit":C3r(I));return w.assert(d&&C3r(d)),d}var SLt="fixNoPropertyAccessFromIndexSignature",h3r=[Z.Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0.code];wg({errorCodes:h3r,fixIds:[SLt],getCodeActions(n){let{sourceFile:c,span:u,preferences:d}=n,I=y3r(c,u.start),h=po.ChangeTracker.with(n,b=>_3r(b,n.sourceFile,I,d));return[rg(SLt,h,[Z.Use_element_access_for_0,I.name.text],SLt,Z.Use_element_access_for_all_undeclared_properties)]},getAllCodeActions:n=>Md(n,h3r,(c,u)=>_3r(c,u.file,y3r(u.file,u.start),n.preferences))});function _3r(n,c,u,d){let I=W2(c,d),h=_e.createStringLiteral(u.name.text,I===0);n.replaceNode(c,u,AQ(u)?_e.createElementAccessChain(u.expression,u.questionDotToken,h):_e.createElementAccessExpression(u.expression,h))}function y3r(n,c){return ps(Qc(n,c).parent,Io)}var wLt="fixImplicitThis",b3r=[Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code];wg({errorCodes:b3r,getCodeActions:function(c){let{sourceFile:u,program:d,span:I}=c,h,b=po.ChangeTracker.with(c,R=>{h=E3r(R,u,I.start,d.getTypeChecker())});return h?[rg(wLt,b,h,wLt,Z.Fix_all_implicit_this_errors)]:v},fixIds:[wLt],getAllCodeActions:n=>Md(n,b3r,(c,u)=>{E3r(c,u.file,u.start,n.program.getTypeChecker())})});function E3r(n,c,u,d){let I=Qc(c,u);if(!Gte(I))return;let h=r0(I,!1,!1);if(!(!mp(h)&&!WA(h))&&!Gc(r0(h,!1,!1))){let b=w.checkDefined(Od(h,100,c)),{name:R}=h,N=w.checkDefined(h.body);return WA(h)?R&&Yp.Core.isSymbolReferencedInFile(R,d,c,N)?void 0:(n.delete(c,b),R&&n.delete(c,R),n.insertText(c,N.pos," =>"),[Z.Convert_function_expression_0_to_arrow_function,R?R.text:Bje]):(n.replaceNode(c,b,_e.createToken(87)),n.insertText(c,R.end," = "),n.insertText(c,N.pos," =>"),[Z.Convert_function_declaration_0_to_arrow_function,R.text])}}var TLt="fixImportNonExportedMember",B3r=[Z.Module_0_declares_1_locally_but_it_is_not_exported.code];wg({errorCodes:B3r,fixIds:[TLt],getCodeActions(n){let{sourceFile:c,span:u,program:d}=n,I=v3r(c,u.start,d);if(I===void 0)return;let h=po.ChangeTracker.with(n,b=>zrs(b,d,I));return[rg(TLt,h,[Z.Export_0_from_module_1,I.exportName.node.text,I.moduleSpecifier],TLt,Z.Export_all_referenced_locals)]},getAllCodeActions(n){let{program:c}=n;return t7(po.ChangeTracker.with(n,u=>{let d=new Map;r7(n,B3r,I=>{let h=v3r(I.file,I.start,c);if(h===void 0)return;let{exportName:b,node:R,moduleSourceFile:N}=h;if(Vze(N,b.isTypeOnly)===void 0&&Xee(R))u.insertExportModifier(N,R);else{let V=d.get(N)||{typeOnlyExports:[],exports:[]};b.isTypeOnly?V.typeOnlyExports.push(b):V.exports.push(b),d.set(N,V)}}),d.forEach((I,h)=>{let b=Vze(h,!0);b&&b.isTypeOnly?(NLt(u,c,h,I.typeOnlyExports,b),NLt(u,c,h,I.exports,Vze(h,!1))):NLt(u,c,h,[...I.exports,...I.typeOnlyExports],b)})}))}});function v3r(n,c,u){var d,I;let h=Qc(n,c);if(sr(h)){let b=Si(h,mI);if(b===void 0)return;let R=bu(b.moduleSpecifier)?b.moduleSpecifier:void 0;if(R===void 0)return;let N=(d=u.getResolvedModuleFromModuleSpecifier(R,n))==null?void 0:d.resolvedModule;if(N===void 0)return;let V=u.getSourceFile(N.resolvedFileName);if(V===void 0||Mte(u,V))return;let P=V.symbol,M=(I=eo(P.valueDeclaration,Tv))==null?void 0:I.locals;if(M===void 0)return;let te=M.get(h.escapedText);if(te===void 0)return;let re=qrs(te);return re===void 0?void 0:{exportName:{node:h,isTypeOnly:zQ(re)},node:re,moduleSourceFile:V,moduleSpecifier:R.text}}}function zrs(n,c,{exportName:u,node:d,moduleSourceFile:I}){let h=Vze(I,u.isTypeOnly);h?S3r(n,c,I,h,[u]):Xee(d)?n.insertExportModifier(I,d):w3r(n,c,I,[u])}function NLt(n,c,u,d,I){O(d)&&(I?S3r(n,c,u,I,d):w3r(n,c,u,d))}function Vze(n,c){let u=d=>mC(d)&&(c&&d.isTypeOnly||!d.isTypeOnly);return Te(n.statements,u)}function S3r(n,c,u,d,I){let h=d.exportClause&&GB(d.exportClause)?d.exportClause.elements:_e.createNodeArray([]),b=!d.isTypeOnly&&!!(ZE(c.getCompilerOptions())||be(h,R=>R.isTypeOnly));n.replaceNode(u,d,_e.updateExportDeclaration(d,d.modifiers,d.isTypeOnly,_e.createNamedExports(_e.createNodeArray([...h,...T3r(I,b)],h.hasTrailingComma)),d.moduleSpecifier,d.attributes))}function w3r(n,c,u,d){n.insertNodeAtEndOfScope(u,u,_e.createExportDeclaration(void 0,!1,_e.createNamedExports(T3r(d,ZE(c.getCompilerOptions()))),void 0,void 0))}function T3r(n,c){return _e.createNodeArray(Ot(n,u=>_e.createExportSpecifier(c&&u.isTypeOnly,void 0,u.node)))}function qrs(n){if(n.valueDeclaration===void 0)return $i(n.declarations);let c=n.valueDeclaration,u=zs(c)?eo(c.parent.parent,Rp):void 0;return u&&O(u.declarationList.declarations)===1?u:c}var RLt="fixIncorrectNamedTupleSyntax",$rs=[Z.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,Z.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type.code];wg({errorCodes:$rs,getCodeActions:function(c){let{sourceFile:u,span:d}=c,I=ens(u,d.start),h=po.ChangeTracker.with(c,b=>tns(b,u,I));return[rg(RLt,h,Z.Move_labeled_tuple_element_modifiers_to_labels,RLt,Z.Move_labeled_tuple_element_modifiers_to_labels)]},fixIds:[RLt]});function ens(n,c){let u=Qc(n,c);return Si(u,d=>d.kind===202)}function tns(n,c,u){if(!u)return;let d=u.type,I=!1,h=!1;for(;d.kind===190||d.kind===191||d.kind===196;)d.kind===190?I=!0:d.kind===191&&(h=!0),d=d.type;let b=_e.updateNamedTupleMember(u,u.dotDotDotToken||(h?_e.createToken(26):void 0),u.name,u.questionToken||(I?_e.createToken(58):void 0),d);b!==u&&n.replaceNode(c,u,b)}var N3r="fixSpelling",R3r=[Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,Z.Property_0_may_not_exist_on_type_1_Did_you_mean_2.code,Z.Cannot_find_name_0_Did_you_mean_1.code,Z.Could_not_find_name_0_Did_you_mean_1.code,Z.Cannot_find_namespace_0_Did_you_mean_1.code,Z.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,Z.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,Z._0_has_no_exported_member_named_1_Did_you_mean_2.code,Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1.code,Z.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,Z.No_overload_matches_this_call.code,Z.Type_0_is_not_assignable_to_type_1.code];wg({errorCodes:R3r,getCodeActions(n){let{sourceFile:c,errorCode:u}=n,d=D3r(c,n.span.start,n,u);if(!d)return;let{node:I,suggestedSymbol:h}=d,b=iA(n.host.getCompilationSettings()),R=po.ChangeTracker.with(n,N=>x3r(N,c,I,h,b));return[rg("spelling",R,[Z.Change_spelling_to_0,df(h)],N3r,Z.Fix_all_detected_spelling_errors)]},fixIds:[N3r],getAllCodeActions:n=>Md(n,R3r,(c,u)=>{let d=D3r(u.file,u.start,n,u.code),I=iA(n.host.getCompilationSettings());d&&x3r(c,n.sourceFile,d.node,d.suggestedSymbol,I)})});function D3r(n,c,u,d){let I=Qc(n,c),h=I.parent;if((d===Z.No_overload_matches_this_call.code||d===Z.Type_0_is_not_assignable_to_type_1.code)&&!NN(h))return;let b=u.program.getTypeChecker(),R;if(Io(h)&&h.name===I){w.assert($y(I),"Expected an identifier for spelling (property access)");let N=b.getTypeAtLocation(h.expression);h.flags&64&&(N=b.getNonNullableType(N)),R=b.getSuggestedSymbolForNonexistentProperty(I,N)}else if(no(h)&&h.operatorToken.kind===103&&h.left===I&&kc(I)){let N=b.getTypeAtLocation(h.right);R=b.getSuggestedSymbolForNonexistentProperty(I,N)}else if(a0(h)&&h.right===I){let N=b.getSymbolAtLocation(h.left);N&&N.flags&1536&&(R=b.getSuggestedSymbolForNonexistentModule(h.right,N))}else if(_y(h)&&h.name===I){w.assertNode(I,sr,"Expected an identifier for spelling (import)");let N=Si(I,mI),V=nns(u,N,n);V&&V.symbol&&(R=b.getSuggestedSymbolForNonexistentModule(I,V.symbol))}else if(NN(h)&&h.name===I){w.assertNode(I,sr,"Expected an identifier for JSX attribute");let N=Si(I,Jm),V=b.getContextualTypeForArgumentAtIndex(N,0);R=b.getSuggestedSymbolForNonexistentJSXAttribute(I,V)}else if(Dce(h)&&rC(h)&&h.name===I){let N=Si(I,Sa),V=N?Dv(N):void 0,P=V?b.getTypeAtLocation(V):void 0;P&&(R=b.getSuggestedSymbolForNonexistentClassMember(Tf(I),P))}else{let N=_4(I),V=Tf(I);w.assert(V!==void 0,"name should be defined"),R=b.getSuggestedSymbolForNonexistentSymbol(I,V,rns(N))}return R===void 0?void 0:{node:I,suggestedSymbol:R}}function x3r(n,c,u,d,I){let h=df(d);if(!Ke(h,I)&&Io(u.parent)){let b=d.valueDeclaration;b&&Sf(b)&&kc(b.name)?n.replaceNode(c,u,_e.createIdentifier(h)):n.replaceNode(c,u.parent,_e.createElementAccessExpression(u.parent.expression,_e.createStringLiteral(h)))}else n.replaceNode(c,u,_e.createIdentifier(h))}function rns(n){let c=0;return n&4&&(c|=1920),n&2&&(c|=788968),n&1&&(c|=111551),c}function nns(n,c,u){var d;if(!c||!XA(c.moduleSpecifier))return;let I=(d=n.program.getResolvedModuleFromModuleSpecifier(c.moduleSpecifier,u))==null?void 0:d.resolvedModule;if(I)return n.program.getSourceFile(I.resolvedFileName)}var DLt="returnValueCorrect",xLt="fixAddReturnStatement",kLt="fixRemoveBracesFromArrowFunctionBody",GLt="fixWrapTheBlockWithParen",k3r=[Z.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code];wg({errorCodes:k3r,fixIds:[xLt,kLt,GLt],getCodeActions:function(c){let{program:u,sourceFile:d,span:{start:I},errorCode:h}=c,b=F3r(u.getTypeChecker(),d,I,h);if(b)return b.kind===0?Hr([sns(c,b.expression,b.statement)],fd(b.declaration)?ons(c,b.declaration,b.expression,b.commentSource):void 0):[ans(c,b.declaration,b.expression)]},getAllCodeActions:n=>Md(n,k3r,(c,u)=>{let d=F3r(n.program.getTypeChecker(),u.file,u.start,u.code);if(d)switch(n.fixId){case xLt:Z3r(c,u.file,d.expression,d.statement);break;case kLt:if(!fd(d.declaration))return;L3r(c,u.file,d.declaration,d.expression,d.commentSource,!1);break;case GLt:if(!fd(d.declaration))return;V3r(c,u.file,d.declaration,d.expression);break;default:w.fail(JSON.stringify(n.fixId))}})});function G3r(n,c,u){let d=n.createSymbol(4,c.escapedText);d.links.type=n.getTypeAtLocation(u);let I=Du([d]);return n.createAnonymousType(void 0,I,[],[],[])}function FLt(n,c,u,d){if(!c.body||!mc(c.body)||O(c.body.statements)!==1)return;let I=$s(c.body.statements);if(Hf(I)&&ZLt(n,c,n.getTypeAtLocation(I.expression),u,d))return{declaration:c,kind:0,expression:I.expression,statement:I,commentSource:I.expression};if(nC(I)&&Hf(I.statement)){let h=_e.createObjectLiteralExpression([_e.createPropertyAssignment(I.label,I.statement.expression)]),b=G3r(n,I.label,I.statement.expression);if(ZLt(n,c,b,u,d))return fd(c)?{declaration:c,kind:1,expression:h,statement:I,commentSource:I.statement.expression}:{declaration:c,kind:0,expression:h,statement:I,commentSource:I.statement.expression}}else if(mc(I)&&O(I.statements)===1){let h=$s(I.statements);if(nC(h)&&Hf(h.statement)){let b=_e.createObjectLiteralExpression([_e.createPropertyAssignment(h.label,h.statement.expression)]),R=G3r(n,h.label,h.statement.expression);if(ZLt(n,c,R,u,d))return{declaration:c,kind:0,expression:b,statement:I,commentSource:h}}}}function ZLt(n,c,u,d,I){if(I){let h=n.getSignatureFromDeclaration(c);if(h){ba(c,1024)&&(u=n.createPromiseType(u));let b=n.createSignature(c,h.typeParameters,h.thisParameter,h.parameters,u,void 0,h.minArgumentCount,h.flags);u=n.createAnonymousType(void 0,Du(),[b],[],[])}else u=n.getAnyType()}return n.isTypeAssignableTo(u,d)}function F3r(n,c,u,d){let I=Qc(c,u);if(!I.parent)return;let h=Si(I.parent,dd);switch(d){case Z.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value.code:return!h||!h.body||!h.type||!V2(h.type,I)?void 0:FLt(n,h,n.getTypeFromTypeNode(h.type),!1);case Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code:if(!h||!cu(h.parent)||!h.body)return;let b=h.parent.arguments.indexOf(h);if(b===-1)return;let R=n.getContextualTypeForArgumentAtIndex(h.parent,b);return R?FLt(n,h,R,!0):void 0;case Z.Type_0_is_not_assignable_to_type_1.code:if(!eT(I)||!TQ(I.parent)&&!NN(I.parent))return;let N=ins(I.parent);return!N||!dd(N)||!N.body?void 0:FLt(n,N,n.getTypeAtLocation(I.parent),!0)}}function ins(n){switch(n.kind){case 260:case 169:case 208:case 172:case 303:return n.initializer;case 291:return n.initializer&&(kle(n.initializer)?n.initializer.expression:void 0);case 304:case 171:case 306:case 348:case 341:return}}function Z3r(n,c,u,d){ME(u);let I=K_e(c);n.replaceNode(c,d,_e.createReturnStatement(u),{leadingTriviaOption:po.LeadingTriviaOption.Exclude,trailingTriviaOption:po.TrailingTriviaOption.Exclude,suffix:I?";":void 0})}function L3r(n,c,u,d,I,h){let b=h||qGe(d)?_e.createParenthesizedExpression(d):d;ME(I),b4(I,b),n.replaceNode(c,u.body,b)}function V3r(n,c,u,d){n.replaceNode(c,u.body,_e.createParenthesizedExpression(d))}function sns(n,c,u){let d=po.ChangeTracker.with(n,I=>Z3r(I,n.sourceFile,c,u));return rg(DLt,d,Z.Add_a_return_statement,xLt,Z.Add_all_missing_return_statement)}function ons(n,c,u,d){let I=po.ChangeTracker.with(n,h=>L3r(h,n.sourceFile,c,u,d,!1));return rg(DLt,I,Z.Remove_braces_from_arrow_function_body,kLt,Z.Remove_braces_from_all_arrow_function_bodies_with_relevant_issues)}function ans(n,c,u){let d=po.ChangeTracker.with(n,I=>V3r(I,n.sourceFile,c,u));return rg(DLt,d,Z.Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal,GLt,Z.Wrap_all_object_literal_with_parentheses)}var CP="fixMissingMember",Wze="fixMissingProperties",Pze="fixMissingAttributes",Oze="fixMissingFunctionDeclaration",W3r=[Z.Property_0_does_not_exist_on_type_1.code,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,Z.Property_0_is_missing_in_type_1_but_required_in_type_2.code,Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2.code,Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,Z.Cannot_find_name_0.code];wg({errorCodes:W3r,getCodeActions(n){let c=n.program.getTypeChecker(),u=P3r(n.sourceFile,n.span.start,n.errorCode,c,n.program);if(u){if(u.kind===3){let d=po.ChangeTracker.with(n,I=>j3r(I,n,u));return[rg(Wze,d,Z.Add_missing_properties,Wze,Z.Add_all_missing_properties)]}if(u.kind===4){let d=po.ChangeTracker.with(n,I=>K3r(I,n,u));return[rg(Pze,d,Z.Add_missing_attributes,Pze,Z.Add_all_missing_attributes)]}if(u.kind===2||u.kind===5){let d=po.ChangeTracker.with(n,I=>U3r(I,n,u));return[rg(Oze,d,[Z.Add_missing_function_declaration_0,u.token.text],Oze,Z.Add_all_missing_function_declarations)]}if(u.kind===1){let d=po.ChangeTracker.with(n,I=>J3r(I,n.program.getTypeChecker(),u));return[rg(CP,d,[Z.Add_missing_enum_member_0,u.token.text],CP,Z.Add_all_missing_members)]}return vi(Ans(n,u),cns(n,u))}},fixIds:[CP,Oze,Wze,Pze],getAllCodeActions:n=>{let{program:c,fixId:u}=n,d=c.getTypeChecker(),I=new Map,h=new Map;return t7(po.ChangeTracker.with(n,b=>{r7(n,W3r,R=>{let N=P3r(R.file,R.start,R.code,d,n.program);if(!(!N||!R2(I,sd(N.parentDeclaration)+"#"+(N.kind===3?N.identifier:N.token.text)))){if(u===Oze&&(N.kind===2||N.kind===5))U3r(b,n,N);else if(u===Wze&&N.kind===3)j3r(b,n,N);else if(u===Pze&&N.kind===4)K3r(b,n,N);else if(N.kind===1&&J3r(b,d,N),N.kind===0){let{parentDeclaration:V,token:P}=N,M=we(h,V,()=>[]);M.some(te=>te.token.text===P.text)||M.push(N)}}}),h.forEach((R,N)=>{let V=Se(N)?void 0:h9t(N,d);for(let P of R){if(V?.some(Be=>{let Fe=h.get(Be);return!!Fe&&Fe.some(({token:Ne})=>Ne.text===P.token.text)}))continue;let{parentDeclaration:M,declSourceFile:te,modifierFlags:re,token:ue,call:Ae,isJSFile:de}=P;if(Ae&&!kc(ue))X3r(n,b,Ae,ue,re&256,M,te);else if(de&&!HI(M)&&!Se(M))O3r(b,te,M,ue,!!(re&256));else{let Be=Q3r(d,M,ue);Y3r(b,te,M,ue.text,Be,re&256)}}})}))}});function P3r(n,c,u,d,I){var h;let b=Qc(n,c),R=b.parent;if(u===Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code){if(!(b.kind===19&&tu(R)&&cu(R.parent)))return;let re=ke(R.parent.arguments,Be=>Be===R);if(re<0)return;let ue=d.getResolvedSignature(R.parent);if(!(ue&&ue.declaration&&ue.parameters[re]))return;let Ae=ue.parameters[re].valueDeclaration;if(!(Ae&&Jc(Ae)&&sr(Ae.name)))return;let de=on(d.getUnmatchedProperties(d.getTypeAtLocation(R),d.getParameterType(ue,re),!1,!1));return O(de)?{kind:3,token:Ae.name,identifier:Ae.name.text,properties:de,parentDeclaration:R}:void 0}if(b.kind===19&&tu(R)){let re=d.getContextualType(R)||d.getTypeAtLocation(R),ue=on(d.getUnmatchedProperties(d.getTypeAtLocation(R),re,!1,!1));return O(ue)?{kind:3,token:R,identifier:"",properties:ue,parentDeclaration:R}:void 0}if(!$y(b))return;if(sr(b)&&qw(R)&&R.initializer&&tu(R.initializer)){let re=d.getContextualType(b)||d.getTypeAtLocation(b),ue=on(d.getUnmatchedProperties(d.getTypeAtLocation(R.initializer),re,!1,!1));return O(ue)?{kind:3,token:b,identifier:b.text,properties:ue,parentDeclaration:R.initializer}:void 0}if(sr(b)&&Jm(b.parent)){let re=iA(I.getCompilerOptions()),ue=pns(d,re,b.parent);return O(ue)?{kind:4,token:b,attributes:ue,parentDeclaration:b.parent}:void 0}if(sr(b)){let re=(h=d.getContextualType(b))==null?void 0:h.getNonNullableType();if(re&&sa(re)&16){let ue=$i(d.getSignaturesOfType(re,0));return ue===void 0?void 0:{kind:5,token:b,signature:ue,sourceFile:n,parentDeclaration:z3r(b)}}if(cu(R)&&R.expression===b)return{kind:2,token:b,call:R,sourceFile:n,modifierFlags:0,parentDeclaration:z3r(b)}}if(!Io(R))return;let N=rje(d.getTypeAtLocation(R.expression)),V=N.symbol;if(!V||!V.declarations)return;if(sr(b)&&cu(R.parent)){let re=be(V.declarations,CC),ue=re?.getSourceFile();if(re&&ue&&!Mte(I,ue))return{kind:2,token:b,call:R.parent,sourceFile:n,modifierFlags:32,parentDeclaration:re};let Ae=be(V.declarations,Gc);if(n.commonJsModuleIndicator)return;if(Ae&&!Mte(I,Ae))return{kind:2,token:b,call:R.parent,sourceFile:Ae,modifierFlags:32,parentDeclaration:Ae}}let P=be(V.declarations,Sa);if(!P&&kc(b))return;let M=P||be(V.declarations,re=>HI(re)||Se(re));if(M&&!Mte(I,M.getSourceFile())){let re=!Se(M)&&(N.target||N)!==d.getDeclaredTypeOfSymbol(V);if(re&&(kc(b)||HI(M)))return;let ue=M.getSourceFile(),Ae=Se(M)?0:(re?256:0)|(xje(b.text)?2:0),de=n0(ue),Be=eo(R.parent,cu);return{kind:0,token:b,call:Be,modifierFlags:Ae,parentDeclaration:M,declSourceFile:ue,isJSFile:de}}let te=be(V.declarations,tP);if(te&&!(N.flags&1056)&&!kc(b)&&!Mte(I,te.getSourceFile()))return{kind:1,token:b,parentDeclaration:te}}function cns(n,c){return c.isJSFile?Rm(lns(n,c)):uns(n,c)}function lns(n,{parentDeclaration:c,declSourceFile:u,modifierFlags:d,token:I}){if(HI(c)||Se(c))return;let h=po.ChangeTracker.with(n,R=>O3r(R,u,c,I,!!(d&256)));if(h.length===0)return;let b=d&256?Z.Initialize_static_property_0:kc(I)?Z.Declare_a_private_field_named_0:Z.Initialize_property_0_in_the_constructor;return rg(CP,h,[b,I.text],CP,Z.Add_all_missing_members)}function O3r(n,c,u,d,I){let h=d.text;if(I){if(u.kind===231)return;let b=u.name.getText(),R=M3r(_e.createIdentifier(b),h);n.insertNodeAfter(c,u,R)}else if(kc(d)){let b=_e.createPropertyDeclaration(void 0,h,void 0,void 0,void 0),R=H3r(u);R?n.insertNodeAfter(c,R,b):n.insertMemberAtStart(c,u,b)}else{let b=dN(u);if(!b)return;let R=M3r(_e.createThis(),h);n.insertNodeAtConstructorEnd(c,b,R)}}function M3r(n,c){return _e.createExpressionStatement(_e.createAssignment(_e.createPropertyAccessExpression(n,c),i7()))}function uns(n,{parentDeclaration:c,declSourceFile:u,modifierFlags:d,token:I}){let h=I.text,b=d&256,R=Q3r(n.program.getTypeChecker(),c,I),N=P=>po.ChangeTracker.with(n,M=>Y3r(M,u,c,h,R,P)),V=[rg(CP,N(d&256),[b?Z.Declare_static_property_0:Z.Declare_property_0,h],CP,Z.Add_all_missing_members)];return b||kc(I)||(d&2&&V.unshift(AT(CP,N(2),[Z.Declare_private_property_0,h])),V.push(gns(n,u,c,I.text,R))),V}function Q3r(n,c,u){let d;if(u.parent.parent.kind===226){let I=u.parent.parent,h=u.parent===I.left?I.right:I.left,b=n.getWidenedType(n.getBaseTypeOfLiteralType(n.getTypeAtLocation(h)));d=n.typeToTypeNode(b,c,1)}else{let I=n.getContextualType(u.parent);d=I?n.typeToTypeNode(I,void 0,1):void 0}return d||_e.createKeywordTypeNode(133)}function Y3r(n,c,u,d,I,h){let b=h?_e.createNodeArray(_e.createModifiersFromModifierFlags(h)):void 0,R=Sa(u)?_e.createPropertyDeclaration(b,d,void 0,I,void 0):_e.createPropertySignature(void 0,d,void 0,I),N=H3r(u);N?n.insertNodeAfter(c,N,R):n.insertMemberAtStart(c,u,R)}function H3r(n){let c;for(let u of n.members){if(!Ql(u))break;c=u}return c}function gns(n,c,u,d,I){let h=_e.createKeywordTypeNode(154),b=_e.createParameterDeclaration(void 0,void 0,"x",void 0,h,void 0),R=_e.createIndexSignature(void 0,[b],I),N=po.ChangeTracker.with(n,V=>V.insertMemberAtStart(c,u,R));return AT(CP,N,[Z.Add_index_signature_for_property_0,d])}function Ans(n,c){let{parentDeclaration:u,declSourceFile:d,modifierFlags:I,token:h,call:b}=c;if(b===void 0)return;let R=h.text,N=P=>po.ChangeTracker.with(n,M=>X3r(n,M,b,h,P,u,d)),V=[rg(CP,N(I&256),[I&256?Z.Declare_static_method_0:Z.Declare_method_0,R],CP,Z.Add_all_missing_members)];return I&2&&V.unshift(AT(CP,N(2),[Z.Declare_private_method_0,R])),V}function X3r(n,c,u,d,I,h,b){let R=TY(b,n.program,n.preferences,n.host),N=Sa(h)?174:173,V=A9t(N,n,R,u,d,I,h),P=fns(h,u);P?c.insertNodeAfter(b,P,V):c.insertMemberAtStart(b,h,V),R.writeFixes(c)}function J3r(n,c,{token:u,parentDeclaration:d}){let I=lr(d.members,N=>{let V=c.getTypeAtLocation(N);return!!(V&&V.flags&402653316)}),h=d.getSourceFile(),b=_e.createEnumMember(u,I?_e.createStringLiteral(u.text):void 0),R=qo(d.members);R?n.insertNodeInListAfter(h,R,b,d.members):n.insertMemberAtStart(h,d,b)}function U3r(n,c,u){let d=W2(c.sourceFile,c.preferences),I=TY(c.sourceFile,c.program,c.preferences,c.host),h=u.kind===2?A9t(262,c,I,u.call,ao(u.token),u.modifierFlags,u.parentDeclaration):zze(262,c,d,u.signature,MFe(Z.Function_not_implemented.message,d),u.token,void 0,void 0,void 0,I);h===void 0&&w.fail("fixMissingFunctionDeclaration codefix got unexpected error."),k_(u.parentDeclaration)?n.insertNodeBefore(u.sourceFile,u.parentDeclaration,h,!0):n.insertNodeAtEndOfScope(u.sourceFile,u.parentDeclaration,h),I.writeFixes(n)}function K3r(n,c,u){let d=TY(c.sourceFile,c.program,c.preferences,c.host),I=W2(c.sourceFile,c.preferences),h=c.program.getTypeChecker(),b=u.parentDeclaration.attributes,R=lr(b.properties,k6),N=Ot(u.attributes,M=>{let te=Mze(c,h,d,I,h.getTypeOfSymbol(M),u.parentDeclaration),re=_e.createIdentifier(M.name),ue=_e.createJsxAttribute(re,_e.createJsxExpression(void 0,te));return kA(re,ue),ue}),V=_e.createJsxAttributes(R?[...N,...b.properties]:[...b.properties,...N]),P={prefix:b.pos===b.end?" ":void 0};n.replaceNode(c.sourceFile,b,V,P),d.writeFixes(n)}function j3r(n,c,u){let d=TY(c.sourceFile,c.program,c.preferences,c.host),I=W2(c.sourceFile,c.preferences),h=iA(c.program.getCompilerOptions()),b=c.program.getTypeChecker(),R=Ot(u.properties,V=>{let P=Mze(c,b,d,I,b.getTypeOfSymbol(V),u.parentDeclaration);return _e.createPropertyAssignment(Ins(V,h,I,b),P)}),N={leadingTriviaOption:po.LeadingTriviaOption.Exclude,trailingTriviaOption:po.TrailingTriviaOption.Exclude,indentation:u.indentation};n.replaceNode(c.sourceFile,u.parentDeclaration,_e.createObjectLiteralExpression([...u.parentDeclaration.properties,...R],!0),N),d.writeFixes(n)}function Mze(n,c,u,d,I,h){if(I.flags&3)return i7();if(I.flags&134217732)return _e.createStringLiteral("",d===0);if(I.flags&8)return _e.createNumericLiteral(0);if(I.flags&64)return _e.createBigIntLiteral("0n");if(I.flags&16)return _e.createFalse();if(I.flags&1056){let b=I.symbol.exports?Ga(I.symbol.exports.values()):I.symbol,R=c.symbolToExpression(I.symbol.parent?I.symbol.parent:I.symbol,111551,void 0,64);return b===void 0||R===void 0?_e.createNumericLiteral(0):_e.createPropertyAccessExpression(R,c.symbolToString(b))}if(I.flags&256)return _e.createNumericLiteral(I.value);if(I.flags&2048)return _e.createBigIntLiteral(I.value);if(I.flags&128)return _e.createStringLiteral(I.value,d===0);if(I.flags&512)return I===c.getFalseType()||I===c.getFalseType(!0)?_e.createFalse():_e.createTrue();if(I.flags&65536)return _e.createNull();if(I.flags&1048576)return le(I.types,R=>Mze(n,c,u,d,R,h))??i7();if(c.isArrayLikeType(I))return _e.createArrayLiteralExpression();if(dns(I)){let b=Ot(c.getPropertiesOfType(I),R=>{let N=Mze(n,c,u,d,c.getTypeOfSymbol(R),h);return _e.createPropertyAssignment(R.name,N)});return _e.createObjectLiteralExpression(b,!0)}if(sa(I)&16){if(be(I.symbol.declarations||v,pg(Y,jS,cI))===void 0)return i7();let R=c.getSignaturesOfType(I,0);return R===void 0?i7():zze(218,n,d,R[0],MFe(Z.Function_not_implemented.message,d),void 0,void 0,void 0,h,u)??i7()}if(sa(I)&1){let b=DB(I.symbol);if(b===void 0||aV(b))return i7();let R=dN(b);return R&&O(R.parameters)?i7():_e.createNewExpression(_e.createIdentifier(I.symbol.name),void 0,void 0)}return i7()}function i7(){return _e.createIdentifier("undefined")}function dns(n){return n.flags&524288&&(sa(n)&128||n.symbol&&eo(wu(n.symbol.declarations),Se))}function pns(n,c,u){let d=n.getContextualType(u.attributes);if(d===void 0)return v;let I=d.getProperties();if(!O(I))return v;let h=new Set;for(let b of u.attributes.properties)if(NN(b)&&h.add(B6(b.name)),k6(b)){let R=n.getTypeAtLocation(b.expression);for(let N of R.getProperties())h.add(N.escapedName)}return Gt(I,b=>Ke(b.name,c,1)&&!(b.flags&16777216||aI(b)&48||h.has(b.escapedName)))}function fns(n,c){if(Se(n))return;let u=Si(c,d=>cI(d)||Rf(d));return u&&u.parent===n?u:void 0}function Ins(n,c,u,d){if(vB(n)){let I=d.symbolToNode(n,111551,void 0,1073741824);if(I&&xg(I))return I}return Ale(n.name,c,u===0,!1,!1)}function z3r(n){if(Si(n,kle)){let c=Si(n.parent,k_);if(c)return c}return ls(n)}var LLt="addMissingNewOperator",q3r=[Z.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new.code];wg({errorCodes:q3r,getCodeActions(n){let{sourceFile:c,span:u}=n,d=po.ChangeTracker.with(n,I=>$3r(I,c,u));return[rg(LLt,d,Z.Add_missing_new_operator_to_call,LLt,Z.Add_missing_new_operator_to_all_calls)]},fixIds:[LLt],getAllCodeActions:n=>Md(n,q3r,(c,u)=>$3r(c,n.sourceFile,u))});function $3r(n,c,u){let d=ps(Cns(c,u),cu),I=_e.createNewExpression(d.expression,d.typeArguments,d.arguments);n.replaceNode(c,d,I)}function Cns(n,c){let u=Qc(n,c.start),d=Uu(c);for(;u.endHze(R,n.program,n.preferences,n.host,d,I)),[O(I)>1?Z.Add_missing_parameters_to_0:Z.Add_missing_parameter_to_0,u],Qze,Z.Add_all_missing_parameters)),O(h)&&Hr(b,rg(Yze,po.ChangeTracker.with(n,R=>Hze(R,n.program,n.preferences,n.host,d,h)),[O(h)>1?Z.Add_optional_parameters_to_0:Z.Add_optional_parameter_to_0,u],Yze,Z.Add_all_optional_parameters)),b},getAllCodeActions:n=>Md(n,ePr,(c,u)=>{let d=tPr(n.sourceFile,n.program,u.start);if(d){let{declarations:I,newParameters:h,newOptionalParameters:b}=d;n.fixId===Qze&&Hze(c,n.program,n.preferences,n.host,I,h),n.fixId===Yze&&Hze(c,n.program,n.preferences,n.host,I,b)}})});function tPr(n,c,u){let d=Qc(n,u),I=Si(d,cu);if(I===void 0||O(I.arguments)===0)return;let h=c.getTypeChecker(),b=h.getTypeAtLocation(I.expression),R=Gt(b.symbol.declarations,rPr);if(R===void 0)return;let N=qo(R);if(N===void 0||N.body===void 0||Mte(c,N.getSourceFile()))return;let V=mns(N);if(V===void 0)return;let P=[],M=[],te=O(N.parameters),re=O(I.arguments);if(te>re)return;let ue=[N,..._ns(N,R)];for(let Ae=0,de=0,Be=0;Ae{let N=ls(R),V=TY(N,c,u,d);O(R.parameters)?n.replaceNodeRangeWithNodes(N,$s(R.parameters),Na(R.parameters),nPr(V,b,R,h),{joiner:", ",indentation:0,leadingTriviaOption:po.LeadingTriviaOption.IncludeAll,trailingTriviaOption:po.TrailingTriviaOption.Include}):X(nPr(V,b,R,h),(P,M)=>{O(R.parameters)===0&&M===0?n.insertNodeAt(N,R.parameters.end,P):n.insertNodeAtEndOfList(N,R.parameters,P)}),V.writeFixes(n)})}function rPr(n){switch(n.kind){case 262:case 218:case 174:case 219:return!0;default:return!1}}function nPr(n,c,u,d){let I=Ot(u.parameters,h=>_e.createParameterDeclaration(h.modifiers,h.dotDotDotToken,h.name,h.questionToken,h.type,h.initializer));for(let{pos:h,declaration:b}of d){let R=h>0?I[h-1]:void 0;I.splice(h,0,_e.updateParameterDeclaration(b,b.modifiers,b.dotDotDotToken,b.name,R&&R.questionToken?_e.createToken(58):b.questionToken,Ens(n,b.type,c),b.initializer))}return I}function _ns(n,c){let u=[];for(let d of c)if(yns(d)){if(O(d.parameters)===O(n.parameters)){u.push(d);continue}if(O(d.parameters)>O(n.parameters))return[]}return u}function yns(n){return rPr(n)&&n.body===void 0}function iPr(n,c,u){return _e.createParameterDeclaration(void 0,void 0,n,u,c,void 0)}function bns(n,c){return O(n)&&lr(n,u=>cMd(n,oPr,(c,u,d)=>{let I=cPr(u.file,u.start);if(I!==void 0)switch(n.fixId){case VLt:{let h=lPr(I,n.host,u.code);h&&d.push(aPr(u.file.fileName,h));break}default:w.fail(`Bad fixId: ${n.fixId}`)}})});function aPr(n,c){return{type:"install package",file:n,packageName:c}}function cPr(n,c){let u=eo(Qc(n,c),bu);if(!u)return;let d=u.text,{packageName:I}=s_e(d);return Jl(I)?void 0:I}function lPr(n,c,u){var d;return u===sPr?kN.nodeCoreModules.has(n)?"@types/node":void 0:(d=c.isKnownTypesPackageName)!=null&&d.call(c,n)?Nke(n):void 0}var uPr=[Z.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2.code,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2.code,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more.code,Z.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1.code,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1.code,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more.code],WLt="fixClassDoesntImplementInheritedAbstractMember";wg({errorCodes:uPr,getCodeActions:function(c){let{sourceFile:u,span:d}=c,I=po.ChangeTracker.with(c,h=>APr(gPr(u,d.start),u,c,h,c.preferences));return I.length===0?void 0:[rg(WLt,I,Z.Implement_inherited_abstract_class,WLt,Z.Implement_all_inherited_abstract_classes)]},fixIds:[WLt],getAllCodeActions:function(c){let u=new Map;return Md(c,uPr,(d,I)=>{let h=gPr(I.file,I.start);R2(u,sd(h))&&APr(h,c.sourceFile,c,d,c.preferences)})}});function gPr(n,c){let u=Qc(n,c);return ps(u.parent,Sa)}function APr(n,c,u,d,I){let h=Dv(n),b=u.program.getTypeChecker(),R=b.getTypeAtLocation(h),N=b.getPropertiesOfType(R).filter(vns),V=TY(c,u.program,I,u.host);g9t(n,N,c,u,I,V,P=>d.insertMemberAtStart(c,n,P)),V.writeFixes(d)}function vns(n){let c=zR($s(n.getDeclarations()));return!(c&2)&&!!(c&64)}var PLt="classSuperMustPrecedeThisAccess",dPr=[Z.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class.code];wg({errorCodes:dPr,getCodeActions(n){let{sourceFile:c,span:u}=n,d=fPr(c,u.start);if(!d)return;let{constructor:I,superCall:h}=d,b=po.ChangeTracker.with(n,R=>pPr(R,c,I,h));return[rg(PLt,b,Z.Make_super_call_the_first_statement_in_the_constructor,PLt,Z.Make_all_super_calls_the_first_statement_in_their_constructor)]},fixIds:[PLt],getAllCodeActions(n){let{sourceFile:c}=n,u=new Map;return Md(n,dPr,(d,I)=>{let h=fPr(I.file,I.start);if(!h)return;let{constructor:b,superCall:R}=h;R2(u,sd(b.parent))&&pPr(d,c,b,R)})}});function pPr(n,c,u,d){n.insertNodeAtConstructorStart(c,u,d),n.delete(c,d)}function fPr(n,c){let u=Qc(n,c);if(u.kind!==110)return;let d=Wb(u),I=IPr(d.body);return I&&!I.expression.arguments.some(h=>Io(h)&&h.expression===u)?{constructor:d,superCall:I}:void 0}function IPr(n){return Hf(n)&&Nf(n.expression)?n:$l(n)?void 0:mu(n,IPr)}var OLt="constructorForDerivedNeedSuperCall",CPr=[Z.Constructors_for_derived_classes_must_contain_a_super_call.code];wg({errorCodes:CPr,getCodeActions(n){let{sourceFile:c,span:u}=n,d=mPr(c,u.start),I=po.ChangeTracker.with(n,h=>hPr(h,c,d));return[rg(OLt,I,Z.Add_missing_super_call,OLt,Z.Add_all_missing_super_calls)]},fixIds:[OLt],getAllCodeActions:n=>Md(n,CPr,(c,u)=>hPr(c,n.sourceFile,mPr(u.file,u.start)))});function mPr(n,c){let u=Qc(n,c);return w.assert(Rf(u.parent),"token should be at the constructor declaration"),u.parent}function hPr(n,c,u){let d=_e.createExpressionStatement(_e.createCallExpression(_e.createSuper(),void 0,v));n.insertNodeAtConstructorStart(c,u,d)}var _Pr="fixEnableJsxFlag",yPr=[Z.Cannot_use_JSX_unless_the_jsx_flag_is_provided.code];wg({errorCodes:yPr,getCodeActions:function(c){let{configFile:u}=c.program.getCompilerOptions();if(u===void 0)return;let d=po.ChangeTracker.with(c,I=>bPr(I,u));return[AT(_Pr,d,Z.Enable_the_jsx_flag_in_your_configuration_file)]},fixIds:[_Pr],getAllCodeActions:n=>Md(n,yPr,c=>{let{configFile:u}=n.program.getCompilerOptions();u!==void 0&&bPr(c,u)})});function bPr(n,c){I9t(n,c,"jsx",_e.createStringLiteral("react"))}var MLt="fixNaNEquality",EPr=[Z.This_condition_will_always_return_0.code];wg({errorCodes:EPr,getCodeActions(n){let{sourceFile:c,span:u,program:d}=n,I=BPr(d,c,u);if(I===void 0)return;let{suggestion:h,expression:b,arg:R}=I,N=po.ChangeTracker.with(n,V=>vPr(V,c,R,b));return[rg(MLt,N,[Z.Use_0,h],MLt,Z.Use_Number_isNaN_in_all_conditions)]},fixIds:[MLt],getAllCodeActions:n=>Md(n,EPr,(c,u)=>{let d=BPr(n.program,u.file,bd(u.start,u.length));d&&vPr(c,u.file,d.arg,d.expression)})});function BPr(n,c,u){let d=be(n.getSemanticDiagnostics(c),b=>b.start===u.start&&b.length===u.length);if(d===void 0||d.relatedInformation===void 0)return;let I=be(d.relatedInformation,b=>b.code===Z.Did_you_mean_0.code);if(I===void 0||I.file===void 0||I.start===void 0||I.length===void 0)return;let h=m9t(I.file,bd(I.start,I.length));if(h!==void 0&&tn(h)&&no(h.parent))return{suggestion:Sns(I.messageText),expression:h.parent,arg:h}}function vPr(n,c,u,d){let I=_e.createCallExpression(_e.createPropertyAccessExpression(_e.createIdentifier("Number"),_e.createIdentifier("isNaN")),void 0,[u]),h=d.operatorToken.kind;n.replaceNode(c,d,h===38||h===36?_e.createPrefixUnaryExpression(54,I):I)}function Sns(n){let[,c]=xN(n,` -`,0).match(/'(.*)'/)||[];return c}wg({errorCodes:[Z.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,Z.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,Z.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(c){let u=c.program.getCompilerOptions(),{configFile:d}=u;if(d===void 0)return;let I=[],h=R_(u);if(h>=5&&h<99){let V=po.ChangeTracker.with(c,P=>{I9t(P,d,"module",_e.createStringLiteral("esnext"))});I.push(AT("fixModuleOption",V,[Z.Set_the_module_option_in_your_configuration_file_to_0,"esnext"]))}let R=iA(u);if(R<4||R>99){let V=po.ChangeTracker.with(c,P=>{if(!x8(d))return;let te=[["target",_e.createStringLiteral("es2017")]];h===1&&te.push(["module",_e.createStringLiteral("commonjs")]),f9t(P,d,te)});I.push(AT("fixTargetOption",V,[Z.Set_the_target_option_in_your_configuration_file_to_0,"es2017"]))}return I.length?I:void 0}});var QLt="fixPropertyAssignment",SPr=[Z.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];wg({errorCodes:SPr,fixIds:[QLt],getCodeActions(n){let{sourceFile:c,span:u}=n,d=TPr(c,u.start),I=po.ChangeTracker.with(n,h=>wPr(h,n.sourceFile,d));return[rg(QLt,I,[Z.Change_0_to_1,"=",":"],QLt,[Z.Switch_each_misused_0_to_1,"=",":"])]},getAllCodeActions:n=>Md(n,SPr,(c,u)=>wPr(c,u.file,TPr(u.file,u.start)))});function wPr(n,c,u){n.replaceNode(c,u,_e.createPropertyAssignment(u.name,u.objectAssignmentInitializer))}function TPr(n,c){return ps(Qc(n,c).parent,G_)}var YLt="extendsInterfaceBecomesImplements",NPr=[Z.Cannot_extend_an_interface_0_Did_you_mean_implements.code];wg({errorCodes:NPr,getCodeActions(n){let{sourceFile:c}=n,u=RPr(c,n.span.start);if(!u)return;let{extendsToken:d,heritageClauses:I}=u,h=po.ChangeTracker.with(n,b=>DPr(b,c,d,I));return[rg(YLt,h,Z.Change_extends_to_implements,YLt,Z.Change_all_extended_interfaces_to_implements)]},fixIds:[YLt],getAllCodeActions:n=>Md(n,NPr,(c,u)=>{let d=RPr(u.file,u.start);d&&DPr(c,u.file,d.extendsToken,d.heritageClauses)})});function RPr(n,c){let u=Qc(n,c),d=Um(u).heritageClauses,I=d[0].getFirstToken();return I.kind===96?{extendsToken:I,heritageClauses:d}:void 0}function DPr(n,c,u,d){if(n.replaceNode(c,u,_e.createToken(119)),d.length===2&&d[0].token===96&&d[1].token===119){let I=d[1].getFirstToken(),h=I.getFullStart();n.replaceRange(c,{pos:h,end:h},_e.createToken(28));let b=c.text,R=I.end;for(;RFPr(I,c,u));return[rg(HLt,d,[Z.Add_0_to_unresolved_variable,u.className||"this"],HLt,Z.Add_qualifier_to_all_unresolved_variables_matching_a_member_name)]},fixIds:[HLt],getAllCodeActions:n=>Md(n,kPr,(c,u)=>{let d=GPr(u.file,u.start,u.code);d&&FPr(c,n.sourceFile,d)})});function GPr(n,c,u){let d=Qc(n,c);if(sr(d)||kc(d))return{node:d,className:u===xPr?Um(d).name.text:void 0}}function FPr(n,c,{node:u,className:d}){ME(u),n.replaceNode(c,u,_e.createPropertyAccessExpression(d?_e.createIdentifier(d):_e.createThis(),u))}var XLt="fixInvalidJsxCharacters_expression",Xze="fixInvalidJsxCharacters_htmlEntity",ZPr=[Z.Unexpected_token_Did_you_mean_or_gt.code,Z.Unexpected_token_Did_you_mean_or_rbrace.code];wg({errorCodes:ZPr,fixIds:[XLt,Xze],getCodeActions(n){let{sourceFile:c,preferences:u,span:d}=n,I=po.ChangeTracker.with(n,b=>JLt(b,u,c,d.start,!1)),h=po.ChangeTracker.with(n,b=>JLt(b,u,c,d.start,!0));return[rg(XLt,I,Z.Wrap_invalid_character_in_an_expression_container,XLt,Z.Wrap_all_invalid_characters_in_an_expression_container),rg(Xze,h,Z.Convert_invalid_character_to_its_html_entity_code,Xze,Z.Convert_all_invalid_characters_to_HTML_entity_code)]},getAllCodeActions(n){return Md(n,ZPr,(c,u)=>JLt(c,n.preferences,u.file,u.start,n.fixId===Xze))}});var LPr={">":">","}":"}"};function wns(n){return Qa(LPr,n)}function JLt(n,c,u,d,I){let h=u.getText()[d];if(!wns(h))return;let b=I?LPr[h]:`{${Bue(u,c,h)}}`;n.replaceRangeWithText(u,{pos:d,end:d+1},b)}var Jze="deleteUnmatchedParameter",VPr="renameUnmatchedParameter",WPr=[Z.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name.code];wg({fixIds:[Jze,VPr],errorCodes:WPr,getCodeActions:function(c){let{sourceFile:u,span:d}=c,I=[],h=PPr(u,d.start);if(h)return Hr(I,Tns(c,h)),Hr(I,Nns(c,h)),I},getAllCodeActions:function(c){let u=new Map;return t7(po.ChangeTracker.with(c,d=>{r7(c,WPr,({file:I,start:h})=>{let b=PPr(I,h);b&&u.set(b.signature,Hr(u.get(b.signature),b.jsDocParameterTag))}),u.forEach((I,h)=>{if(c.fixId===Jze){let b=new Set(I);d.filterJSDocTags(h.getSourceFile(),h,R=>!b.has(R))}})}))}});function Tns(n,{name:c,jsDocHost:u,jsDocParameterTag:d}){let I=po.ChangeTracker.with(n,h=>h.filterJSDocTags(n.sourceFile,u,b=>b!==d));return rg(Jze,I,[Z.Delete_unused_param_tag_0,c.getText(n.sourceFile)],Jze,Z.Delete_all_unused_param_tags)}function Nns(n,{name:c,jsDocHost:u,signature:d,jsDocParameterTag:I}){if(!O(d.parameters))return;let h=n.sourceFile,b=bx(d),R=new Set;for(let M of b)FB(M)&&sr(M.name)&&R.add(M.name.escapedText);let N=le(d.parameters,M=>sr(M.name)&&!R.has(M.name.escapedText)?M.name.getText(h):void 0);if(N===void 0)return;let V=_e.updateJSDocParameterTag(I,I.tagName,_e.createIdentifier(N),I.isBracketed,I.typeExpression,I.isNameFirst,I.comment),P=po.ChangeTracker.with(n,M=>M.replaceJSDocComment(h,u,Ot(b,te=>te===I?V:te)));return AT(VPr,P,[Z.Rename_param_tag_name_0_to_1,c.getText(h),N])}function PPr(n,c){let u=Qc(n,c);if(u.parent&&FB(u.parent)&&sr(u.parent.name)){let d=u.parent,I=eV(d),h=vZ(d);if(I&&h)return{jsDocHost:I,signature:h,name:u.parent.name,jsDocParameterTag:d}}}var ULt="fixUnreferenceableDecoratorMetadata",Rns=[Z.A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled.code];wg({errorCodes:Rns,getCodeActions:n=>{let c=Dns(n.sourceFile,n.program,n.span.start);if(!c)return;let u=po.ChangeTracker.with(n,h=>c.kind===276&&kns(h,n.sourceFile,c,n.program)),d=po.ChangeTracker.with(n,h=>xns(h,n.sourceFile,c,n.program)),I;return u.length&&(I=Hr(I,AT(ULt,u,Z.Convert_named_imports_to_namespace_import))),d.length&&(I=Hr(I,AT(ULt,d,Z.Use_import_type))),I},fixIds:[ULt]});function Dns(n,c,u){let d=eo(Qc(n,u),sr);if(!d||d.parent.kind!==183)return;let h=c.getTypeChecker().getSymbolAtLocation(d);return be(h?.declarations||v,pg(sT,_y,Cm))}function xns(n,c,u,d){if(u.kind===271){n.insertModifierBefore(c,156,u.name);return}let I=u.kind===273?u:u.parent.parent;if(I.name&&I.namedBindings)return;let h=d.getTypeChecker();HRe(I,R=>{if(dh(R.symbol,h).flags&111551)return!0})||n.insertModifierBefore(c,156,I)}function kns(n,c,u,d){$6.doChangeNamedToNamespaceOrDefault(c,d,n,u.parent)}var PFe="unusedIdentifier",KLt="unusedIdentifier_prefix",jLt="unusedIdentifier_delete",Uze="unusedIdentifier_deleteImports",zLt="unusedIdentifier_infer",OPr=[Z._0_is_declared_but_its_value_is_never_read.code,Z._0_is_declared_but_never_used.code,Z.Property_0_is_declared_but_its_value_is_never_read.code,Z.All_imports_in_import_declaration_are_unused.code,Z.All_destructured_elements_are_unused.code,Z.All_variables_are_unused.code,Z.All_type_parameters_are_unused.code];wg({errorCodes:OPr,getCodeActions(n){let{errorCode:c,sourceFile:u,program:d,cancellationToken:I}=n,h=d.getTypeChecker(),b=d.getSourceFiles(),R=Qc(u,n.span.start);if(Zv(R))return[Fue(po.ChangeTracker.with(n,M=>M.delete(u,R)),Z.Remove_template_tag)];if(R.kind===30){let M=po.ChangeTracker.with(n,te=>QPr(te,u,R));return[Fue(M,Z.Remove_type_parameters)]}let N=YPr(R);if(N){let M=po.ChangeTracker.with(n,te=>te.delete(u,N));return[rg(PFe,M,[Z.Remove_import_from_0,RDe(N)],Uze,Z.Delete_all_unused_imports)]}else if(qLt(R)){let M=po.ChangeTracker.with(n,te=>Kze(u,R,te,h,b,d,I,!1));if(M.length)return[rg(PFe,M,[Z.Remove_unused_declaration_for_Colon_0,R.getText(u)],Uze,Z.Delete_all_unused_imports)]}if(Vg(R.parent)||Vu(R.parent)){if(Jc(R.parent.parent)){let M=R.parent.elements,te=[M.length>1?Z.Remove_unused_declarations_for_Colon_0:Z.Remove_unused_declaration_for_Colon_0,Ot(M,re=>re.getText(u)).join(", ")];return[Fue(po.ChangeTracker.with(n,re=>Gns(re,u,R.parent)),te)]}return[Fue(po.ChangeTracker.with(n,M=>Fns(n,M,u,R.parent)),Z.Remove_unused_destructuring_declaration)]}if(HPr(u,R))return[Fue(po.ChangeTracker.with(n,M=>XPr(M,u,R.parent)),Z.Remove_variable_statement)];if(sr(R)&&mp(R.parent))return[Fue(po.ChangeTracker.with(n,M=>Mns(M,u,R.parent)),[Z.Remove_unused_declaration_for_Colon_0,R.getText(u)])];let V=[];if(R.kind===140){let M=po.ChangeTracker.with(n,re=>MPr(re,u,R)),te=ps(R.parent,bo).typeParameter.name.text;V.push(rg(PFe,M,[Z.Replace_infer_0_with_unknown,te],zLt,Z.Replace_all_unused_infer_with_unknown))}else{let M=po.ChangeTracker.with(n,te=>Kze(u,R,te,h,b,d,I,!1));if(M.length){let te=xg(R.parent)?R.parent:R;V.push(Fue(M,[Z.Remove_unused_declaration_for_Colon_0,te.getText(u)]))}}let P=po.ChangeTracker.with(n,M=>JPr(M,c,u,R));return P.length&&V.push(rg(PFe,P,[Z.Prefix_0_with_an_underscore,R.getText(u)],KLt,Z.Prefix_all_unused_declarations_with_where_possible)),V},fixIds:[KLt,jLt,Uze,zLt],getAllCodeActions:n=>{let{sourceFile:c,program:u,cancellationToken:d}=n,I=u.getTypeChecker(),h=u.getSourceFiles();return Md(n,OPr,(b,R)=>{let N=Qc(c,R.start);switch(n.fixId){case KLt:JPr(b,R.code,c,N);break;case Uze:{let V=YPr(N);V?b.delete(c,V):qLt(N)&&Kze(c,N,b,I,h,u,d,!0);break}case jLt:{if(N.kind===140||qLt(N))break;if(Zv(N))b.delete(c,N);else if(N.kind===30)QPr(b,c,N);else if(Vg(N.parent)){if(N.parent.parent.initializer)break;(!Jc(N.parent.parent)||UPr(N.parent.parent,I,h))&&b.delete(c,N.parent.parent)}else{if(Vu(N.parent.parent)&&N.parent.parent.parent.initializer)break;HPr(c,N)?XPr(b,c,N.parent):Kze(c,N,b,I,h,u,d,!0)}break}case zLt:N.kind===140&&MPr(b,c,N);break;default:w.fail(JSON.stringify(n.fixId))}})}});function MPr(n,c,u){n.replaceNode(c,u.parent,_e.createKeywordTypeNode(159))}function Fue(n,c){return rg(PFe,n,c,jLt,Z.Delete_all_unused_declarations)}function QPr(n,c,u){n.delete(c,w.checkDefined(ps(u.parent,DX).typeParameters,"The type parameter to delete should exist"))}function qLt(n){return n.kind===102||n.kind===80&&(n.parent.kind===276||n.parent.kind===273)}function YPr(n){return n.kind===102?eo(n.parent,mI):void 0}function HPr(n,c){return yl(c.parent)&&$s(c.parent.getChildren(n))===c}function XPr(n,c,u){n.delete(c,u.parent.kind===243?u.parent:u)}function Gns(n,c,u){X(u.elements,d=>n.delete(c,d))}function Fns(n,c,u,{parent:d}){if(zs(d)&&d.initializer&&AG(d.initializer))if(yl(d.parent)&&O(d.parent.declarations)>1){let I=d.parent.parent,h=I.getStart(u),b=I.end;c.delete(u,d),c.insertNodeAt(u,b,d.initializer,{prefix:WZ(n.host,n.formatContext.options)+u.text.slice(zGe(u.text,h-1),h),suffix:K_e(u)?";":""})}else c.replaceNode(u,d.parent,d.initializer);else c.delete(u,d)}function JPr(n,c,u,d){c!==Z.Property_0_is_declared_but_its_value_is_never_read.code&&(d.kind===140&&(d=ps(d.parent,bo).typeParameter.name),sr(d)&&Zns(d)&&(n.replaceNode(u,d,_e.createIdentifier(`_${d.text}`)),Jc(d.parent)&&WR(d.parent).forEach(I=>{sr(I.name)&&n.replaceNode(u,I.name,_e.createIdentifier(`_${I.name.text}`))})))}function Zns(n){switch(n.parent.kind){case 169:case 168:return!0;case 260:switch(n.parent.parent.parent.kind){case 250:case 249:return!0}}return!1}function Kze(n,c,u,d,I,h,b,R){Lns(c,u,n,d,I,h,b,R),sr(c)&&Yp.Core.eachSymbolReferenceInFile(c,d,n,N=>{Io(N.parent)&&N.parent.name===N&&(N=N.parent),!R&&Ons(N)&&u.delete(n,N.parent.parent)})}function Lns(n,c,u,d,I,h,b,R){let{parent:N}=n;if(Jc(N))Vns(c,u,N,d,I,h,b,R);else if(!(R&&sr(n)&&Yp.Core.isSymbolReferencedInFile(n,d,u))){let V=sT(N)?n:xg(N)?N.parent:N;w.assert(V!==u,"should not delete whole source file"),c.delete(u,V)}}function Vns(n,c,u,d,I,h,b,R=!1){if(Wns(d,c,u,I,h,b,R))if(u.modifiers&&u.modifiers.length>0&&(!sr(u.name)||Yp.Core.isSymbolReferencedInFile(u.name,d,c)))for(let N of u.modifiers)gg(N)&&n.deleteModifier(c,N);else!u.initializer&&UPr(u,d,I)&&n.delete(c,u)}function UPr(n,c,u){let d=n.parent.parameters.indexOf(n);return!Yp.Core.someSignatureUsage(n.parent,u,c,(I,h)=>!h||h.arguments.length>d)}function Wns(n,c,u,d,I,h,b){let{parent:R}=u;switch(R.kind){case 174:case 176:let N=R.parameters.indexOf(u),V=cI(R)?R.name:R,P=Yp.Core.getReferencedSymbolsForNode(R.pos,V,I,d,h);if(P){for(let M of P)for(let te of M.references)if(te.kind===Yp.EntryKind.Node){let re=z3(te.node)&&cu(te.node.parent)&&te.node.parent.arguments.length>N,ue=Io(te.node.parent)&&z3(te.node.parent.expression)&&cu(te.node.parent.parent)&&te.node.parent.parent.arguments.length>N,Ae=(cI(te.node.parent)||jS(te.node.parent))&&te.node.parent!==u.parent&&te.node.parent.parameters.length>N;if(re||ue||Ae)return!1}}return!0;case 262:return R.name&&Pns(n,c,R.name)?KPr(R,u,b):!0;case 218:case 219:return KPr(R,u,b);case 178:return!1;case 177:return!0;default:return w.failBadSyntaxKind(R)}}function Pns(n,c,u){return!!Yp.Core.eachSymbolReferenceInFile(u,n,c,d=>sr(d)&&cu(d.parent)&&d.parent.arguments.includes(d))}function KPr(n,c,u){let d=n.parameters,I=d.indexOf(c);return w.assert(I!==-1,"The parameter should already be in the list"),u?d.slice(I+1).every(h=>sr(h.name)&&!h.symbol.isReferenced):I===d.length-1}function Ons(n){return(no(n.parent)&&n.parent.left===n||(Zx(n.parent)||xB(n.parent))&&n.parent.operand===n)&&Hf(n.parent.parent)}function Mns(n,c,u){let d=u.symbol.declarations;if(d)for(let I of d)n.delete(c,I)}var $Lt="fixUnreachableCode",jPr=[Z.Unreachable_code_detected.code];wg({errorCodes:jPr,getCodeActions(n){if(n.program.getSyntacticDiagnostics(n.sourceFile,n.cancellationToken).length)return;let u=po.ChangeTracker.with(n,d=>zPr(d,n.sourceFile,n.span.start,n.span.length,n.errorCode));return[rg($Lt,u,Z.Remove_unreachable_code,$Lt,Z.Remove_all_unreachable_code)]},fixIds:[$Lt],getAllCodeActions:n=>Md(n,jPr,(c,u)=>zPr(c,u.file,u.start,u.length,u.code))});function zPr(n,c,u,d,I){let h=Qc(c,u),b=Si(h,Ic);if(b.getStart(c)!==h.getStart(c)){let N=JSON.stringify({statementKind:w.formatSyntaxKind(b.kind),tokenKind:w.formatSyntaxKind(h.kind),errorCode:I,start:u,length:d});w.fail("Token and statement should start at the same point. "+N)}let R=(mc(b.parent)?b.parent:b).parent;if(!mc(b.parent)||b===$s(b.parent.statements))switch(R.kind){case 245:if(R.elseStatement){if(mc(b.parent))break;n.replaceNode(c,b,_e.createBlock(v));return}case 247:case 248:n.delete(c,R);return}if(mc(b.parent)){let N=u+d,V=w.checkDefined(Qns(dhe(b.parent.statements,b),P=>P.pos$Pr(u,n.sourceFile,n.span.start));return[rg(e9t,c,Z.Remove_unused_label,e9t,Z.Remove_all_unused_labels)]},fixIds:[e9t],getAllCodeActions:n=>Md(n,qPr,(c,u)=>$Pr(c,u.file,u.start))});function $Pr(n,c,u){let d=Qc(c,u),I=ps(d.parent,nC),h=d.getStart(c),b=I.statement.getStart(c),R=Z1(h,b,c)?b:Ju(c.text,Od(I,59,c).end,!0);n.deleteRange(c,{pos:h,end:R})}var eOr="fixJSDocTypes_plain",t9t="fixJSDocTypes_nullable",tOr=[Z.JSDoc_types_can_only_be_used_inside_documentation_comments.code,Z._0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1.code,Z._0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1.code];wg({errorCodes:tOr,getCodeActions(n){let{sourceFile:c}=n,u=n.program.getTypeChecker(),d=nOr(c,n.span.start,u);if(!d)return;let{typeNode:I,type:h}=d,b=I.getText(c),R=[N(h,eOr,Z.Change_all_jsdoc_style_types_to_TypeScript)];return I.kind===314&&R.push(N(h,t9t,Z.Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types)),R;function N(V,P,M){let te=po.ChangeTracker.with(n,re=>rOr(re,c,I,V,u));return rg("jdocTypes",te,[Z.Change_0_to_1,b,u.typeToString(V)],P,M)}},fixIds:[eOr,t9t],getAllCodeActions(n){let{fixId:c,program:u,sourceFile:d}=n,I=u.getTypeChecker();return Md(n,tOr,(h,b)=>{let R=nOr(b.file,b.start,I);if(!R)return;let{typeNode:N,type:V}=R,P=N.kind===314&&c===t9t?I.getNullableType(V,32768):V;rOr(h,d,N,P,I)})}});function rOr(n,c,u,d,I){n.replaceNode(c,u,I.typeToTypeNode(d,u,void 0))}function nOr(n,c,u){let d=Si(Qc(n,c),Yns),I=d&&d.type;return I&&{typeNode:I,type:Hns(u,I)}}function Yns(n){switch(n.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 Hns(n,c){if(lte(c)){let u=n.getTypeFromTypeNode(c.type);return u===n.getNeverType()||u===n.getVoidType()?u:n.getUnionType(Hr([u,n.getUndefinedType()],c.postfix?void 0:n.getNullType()))}return n.getTypeFromTypeNode(c)}var r9t="fixMissingCallParentheses",iOr=[Z.This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead.code];wg({errorCodes:iOr,fixIds:[r9t],getCodeActions(n){let{sourceFile:c,span:u}=n,d=oOr(c,u.start);if(!d)return;let I=po.ChangeTracker.with(n,h=>sOr(h,n.sourceFile,d));return[rg(r9t,I,Z.Add_missing_call_parentheses,r9t,Z.Add_all_missing_call_parentheses)]},getAllCodeActions:n=>Md(n,iOr,(c,u)=>{let d=oOr(u.file,u.start);d&&sOr(c,u.file,d)})});function sOr(n,c,u){n.replaceNodeWithText(c,u,`${u.text}()`)}function oOr(n,c){let u=Qc(n,c);if(Io(u.parent)){let d=u.parent;for(;Io(d.parent);)d=d.parent;return d.name}if(sr(u))return u}var aOr="fixMissingTypeAnnotationOnExports",n9t="add-annotation",i9t="add-type-assertion",Xns="extract-expression",cOr=[Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations.code,Z.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations.code,Z.At_least_one_accessor_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations.code,Z.Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,Z.Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,Z.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,Z.Expression_type_can_t_be_inferred_with_isolatedDeclarations.code,Z.Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations.code,Z.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations.code,Z.Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations.code,Z.Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations.code,Z.Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations.code,Z.Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations.code,Z.Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations.code,Z.Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations.code,Z.Default_exports_can_t_be_inferred_with_isolatedDeclarations.code,Z.Only_const_arrays_can_be_inferred_with_isolatedDeclarations.code,Z.Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function.code,Z.Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_it_s_type_This_is_not_supported_with_isolatedDeclarations.code,Z.Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations.code,Z.Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit.code],Jns=new Set([177,174,172,262,218,219,260,169,277,263,206,207]),Uns=1074273293;wg({errorCodes:cOr,fixIds:[aOr],getCodeActions(n){let c=[];return Zue(n9t,c,n,0,u=>u.addTypeAnnotation(n.span)),Zue(n9t,c,n,1,u=>u.addTypeAnnotation(n.span)),Zue(n9t,c,n,2,u=>u.addTypeAnnotation(n.span)),Zue(i9t,c,n,0,u=>u.addInlineAssertion(n.span)),Zue(i9t,c,n,1,u=>u.addInlineAssertion(n.span)),Zue(i9t,c,n,2,u=>u.addInlineAssertion(n.span)),Zue(Xns,c,n,0,u=>u.extractAsVariable(n.span)),c},getAllCodeActions:n=>{let c=lOr(n,0,u=>{r7(n,cOr,d=>{u.addTypeAnnotation(d)})});return t7(c.textChanges)}});function Zue(n,c,u,d,I){let h=lOr(u,d,I);h.result&&h.textChanges.length&&c.push(rg(n,h.textChanges,h.result,aOr,Z.Add_all_missing_type_annotations))}function lOr(n,c,u){let d={typeNode:void 0,mutatedTarget:!1},I=po.ChangeTracker.fromContext(n),h=n.sourceFile,b=n.program,R=b.getTypeChecker(),N=iA(b.getCompilerOptions()),V=TY(n.sourceFile,n.program,n.preferences,n.host),P=new Set,M=new Set,te=SV({preserveSourceNewlines:!1}),re=u({addTypeAnnotation:ue,addInlineAssertion:Ne,extractAsVariable:Qe});return V.writeFixes(I),{result:re,textChanges:I.getChanges()};function ue(Pt){n.cancellationToken.throwIfCancellationRequested();let Vr=Qc(h,Pt.start),Yr=De(Vr);if(Yr)return mp(Yr)?Ae(Yr):lt(Yr);let pr=jt(Vr);if(pr)return lt(pr)}function Ae(Pt){var Vr;if(M?.has(Pt))return;M?.add(Pt);let Yr=R.getTypeAtLocation(Pt),pr=R.getPropertiesOfType(Yr);if(!Pt.name||pr.length===0)return;let zr=[];for(let Pi of pr)Ke(Pi.name,iA(b.getCompilerOptions()))&&(Pi.valueDeclaration&&zs(Pi.valueDeclaration)||zr.push(_e.createVariableStatement([_e.createModifier(95)],_e.createVariableDeclarationList([_e.createVariableDeclaration(Pi.name,void 0,Lt(R.getTypeOfSymbol(Pi),Pt),void 0)]))));if(zr.length===0)return;let $n=[];(Vr=Pt.modifiers)!=null&&Vr.some(Pi=>Pi.kind===95)&&$n.push(_e.createModifier(95)),$n.push(_e.createModifier(138));let bi=_e.createModuleDeclaration($n,Pt.name,_e.createModuleBlock(zr),101441696);return I.insertNodeAfter(h,Pt,bi),[Z.Annotate_types_of_properties_expando_function_in_a_namespace]}function de(Pt){return!cp(Pt)&&!cu(Pt)&&!tu(Pt)&&!If(Pt)}function Be(Pt,Vr){return de(Pt)&&(Pt=_e.createParenthesizedExpression(Pt)),_e.createAsExpression(Pt,Vr)}function Fe(Pt,Vr){return de(Pt)&&(Pt=_e.createParenthesizedExpression(Pt)),_e.createAsExpression(_e.createSatisfiesExpression(Pt,Bd(Vr)),Vr)}function Ne(Pt){n.cancellationToken.throwIfCancellationRequested();let Vr=Qc(h,Pt.start);if(De(Vr))return;let pr=mr(Vr,Pt);if(!pr||GQ(pr)||GQ(pr.parent))return;let zr=tn(pr),$n=G_(pr);if(!$n&&DC(pr)||Si(pr,pu)||Si(pr,_V)||zr&&(Si(pr,WE)||Si(pr,Ya))||ph(pr))return;let bi=Si(pr,zs),Pi=bi&&R.getTypeAtLocation(bi);if(Pi&&Pi.flags&8192||!(zr||$n))return;let{typeNode:Ns,mutatedTarget:gi}=wt(pr,Pi);if(!(!Ns||gi))return $n?I.insertNodeAt(h,pr.end,Be(Bd(pr.name),Ns),{prefix:": "}):zr?I.replaceNode(h,pr,Fe(Bd(pr),Ns)):w.assertNever(pr),[Z.Add_satisfies_and_an_inline_type_assertion_with_0,Dr(Ns)]}function Qe(Pt){n.cancellationToken.throwIfCancellationRequested();let Vr=Qc(h,Pt.start),Yr=mr(Vr,Pt);if(!Yr||GQ(Yr)||GQ(Yr.parent)||!tn(Yr))return;if(If(Yr))return I.replaceNode(h,Yr,Be(Yr,_e.createTypeReferenceNode("const"))),[Z.Mark_array_literal_as_const];let zr=Si(Yr,KC);if(zr){if(zr===Yr.parent&&cp(Yr))return;let $n=_e.createUniqueName(cZt(Yr,h,R,h),16),bi=Yr,Pi=Yr;if(ph(bi)&&(bi=KR(bi.parent),Kt(bi.parent)?Pi=bi=bi.parent:Pi=Be(bi,_e.createTypeReferenceNode("const"))),cp(bi))return;let Ns=_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration($n,void 0,void 0,Pi)],2)),gi=Si(Yr,Ic);return I.insertNodeBefore(h,gi,Ns),I.replaceNode(h,bi,_e.createAsExpression(_e.cloneNode($n),_e.createTypeQueryNode(_e.cloneNode($n)))),[Z.Extract_to_variable_and_replace_with_0_as_typeof_0,Dr($n)]}}function De(Pt){let Vr=Si(Pt,Yr=>Ic(Yr)?"quit":qQ(Yr));if(Vr&&qQ(Vr)){let Yr=Vr;if(no(Yr)&&(Yr=Yr.left,!qQ(Yr)))return;let pr=R.getTypeAtLocation(Yr.expression);if(!pr)return;let zr=R.getPropertiesOfType(pr);if(lr(zr,$n=>$n.valueDeclaration===Vr||$n.valueDeclaration===Vr.parent)){let $n=pr.symbol.valueDeclaration;if($n){if(vG($n)&&zs($n.parent))return $n.parent;if(mp($n))return $n}}}}function lt(Pt){if(!P?.has(Pt))switch(P?.add(Pt),Pt.kind){case 169:case 172:case 260:return Zt(Pt);case 219:case 218:case 262:case 174:case 177:return Le(Pt,h);case 277:return je(Pt);case 263:return st(Pt);case 206:case 207:return qe(Pt);default:throw new Error(`Cannot find a fix for the given node ${Pt.kind}`)}}function Le(Pt,Vr){if(Pt.type)return;let{typeNode:Yr}=wt(Pt);if(Yr)return I.tryInsertTypeAnnotation(Vr,Pt,Yr),[Z.Add_return_type_0,Dr(Yr)]}function je(Pt){if(Pt.isExportEquals)return;let{typeNode:Vr}=wt(Pt.expression);if(!Vr)return;let Yr=_e.createUniqueName("_default");return I.replaceNodeWithNodes(h,Pt,[_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(Yr,void 0,Vr,Pt.expression)],2)),_e.updateExportAssignment(Pt,Pt?.modifiers,Yr)]),[Z.Extract_default_export_to_variable]}function st(Pt){var Vr,Yr;let pr=(Vr=Pt.heritageClauses)==null?void 0:Vr.find(jn=>jn.token===96),zr=pr?.types[0];if(!zr)return;let{typeNode:$n}=wt(zr.expression);if(!$n)return;let bi=_e.createUniqueName(Pt.name?Pt.name.text+"Base":"Anonymous",16),Pi=_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(bi,void 0,$n,zr.expression)],2));I.insertNodeBefore(h,Pt,Pi);let Ns=m2(h.text,zr.end),gi=((Yr=Ns?.[Ns.length-1])==null?void 0:Yr.end)??zr.end;return I.replaceRange(h,{pos:zr.getFullStart(),end:gi},bi,{prefix:" "}),[Z.Extract_base_class_to_variable]}let nt;(Pt=>{Pt[Pt.Text=0]="Text",Pt[Pt.Computed=1]="Computed",Pt[Pt.ArrayAccess=2]="ArrayAccess",Pt[Pt.Identifier=3]="Identifier"})(nt||(nt={}));function qe(Pt){var Vr;let Yr=Pt.parent,pr=Pt.parent.parent.parent;if(!Yr.initializer)return;let zr,$n=[];if(sr(Yr.initializer))zr={expression:{kind:3,identifier:Yr.initializer}};else{let Ns=_e.createUniqueName("dest",16);zr={expression:{kind:3,identifier:Ns}},$n.push(_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(Ns,void 0,void 0,Yr.initializer)],2)))}let bi=[];Vu(Pt)?it(Pt,bi,zr):It(Pt,bi,zr);let Pi=new Map;for(let Ns of bi){if(Ns.element.propertyName&&xg(Ns.element.propertyName)){let jn=Ns.element.propertyName.expression,xs=_e.getGeneratedNameForNode(jn),Ec=_e.createVariableDeclaration(xs,void 0,void 0,jn),xi=_e.createVariableDeclarationList([Ec],2),rc=_e.createVariableStatement(void 0,xi);$n.push(rc),Pi.set(jn,xs)}let gi=Ns.element.name;if(Vu(gi))it(gi,bi,Ns);else if(Vg(gi))It(gi,bi,Ns);else{let{typeNode:jn}=wt(gi),xs=dt(Ns,Pi);if(Ns.element.initializer){let xi=(Vr=Ns.element)==null?void 0:Vr.propertyName,rc=_e.createUniqueName(xi&&sr(xi)?xi.text:"temp",16);$n.push(_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(rc,void 0,void 0,xs)],2))),xs=_e.createConditionalExpression(_e.createBinaryExpression(rc,_e.createToken(37),_e.createIdentifier("undefined")),_e.createToken(58),Ns.element.initializer,_e.createToken(59),xs)}let Ec=ba(pr,32)?[_e.createToken(95)]:void 0;$n.push(_e.createVariableStatement(Ec,_e.createVariableDeclarationList([_e.createVariableDeclaration(gi,void 0,jn,xs)],2)))}}return pr.declarationList.declarations.length>1&&$n.push(_e.updateVariableStatement(pr,pr.modifiers,_e.updateVariableDeclarationList(pr.declarationList,pr.declarationList.declarations.filter(Ns=>Ns!==Pt.parent)))),I.replaceNodeWithNodes(h,pr,$n),[Z.Extract_binding_expressions_to_variable]}function it(Pt,Vr,Yr){for(let pr=0;pr=0;--zr){let $n=Yr[zr].expression;$n.kind===0?pr=_e.createPropertyAccessChain(pr,void 0,_e.createIdentifier($n.text)):$n.kind===1?pr=_e.createElementAccessExpression(pr,Vr.get($n.computed)):$n.kind===2&&(pr=_e.createElementAccessExpression(pr,$n.arrayIndex))}return pr}function wt(Pt,Vr){if(c===1)return Tt(Pt);let Yr=GQ(Pt)?kt(Pt):R.getTypeAtLocation(Pt);if(!Yr)return d;if(c===2){Vr&&(Yr=Vr);let zr=R.getWidenedLiteralType(Yr);if(R.isTypeAssignableTo(zr,Yr))return d;Yr=zr}Jc(Pt)&&R.requiresAddingImplicitUndefined(Pt)&&(Yr=R.getUnionType([R.getUndefinedType(),Yr],0));let pr=(zs(Pt)||Ql(Pt)&&ba(Pt,264))&&Yr.flags&8192?1048576:0;return{typeNode:Lt(Yr,Si(Pt,DC)??h,pr),mutatedTarget:!1}}function vt(Pt){return _e.createTypeQueryNode(Bd(Pt))}function Ye(Pt,Vr="temp"){let Yr=!!Si(Pt,Kt);return Yr?Et(Pt,Vr,Yr,pr=>pr.elements,ph,_e.createSpreadElement,pr=>_e.createArrayLiteralExpression(pr,!0),pr=>_e.createTupleTypeNode(pr.map(_e.createRestTypeNode))):d}function ht(Pt,Vr="temp"){let Yr=!!Si(Pt,Kt);return Et(Pt,Vr,Yr,pr=>pr.properties,Mx,_e.createSpreadAssignment,pr=>_e.createObjectLiteralExpression(pr,!0),_e.createIntersectionTypeNode)}function Et(Pt,Vr,Yr,pr,zr,$n,bi,Pi){let Ns=[],gi=[],jn,xs=Si(Pt,Ic);for(let rc of pr(Pt))zr(rc)?(xi(),cp(rc.expression)?(Ns.push(vt(rc.expression)),gi.push(rc)):Ec(rc.expression)):(jn??(jn=[])).push(rc);if(gi.length===0)return d;return xi(),I.replaceNode(h,Pt,bi(gi)),{typeNode:Pi(Ns),mutatedTarget:!0};function Ec(rc){let Vl=_e.createUniqueName(Vr+"_Part"+(gi.length+1),16),ul=Yr?_e.createAsExpression(rc,_e.createTypeReferenceNode("const")):rc,Cc=_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(Vl,void 0,void 0,ul)],2));I.insertNodeBefore(h,xs,Cc),Ns.push(vt(Vl)),gi.push($n(Vl))}function xi(){jn&&(Ec(bi(jn)),jn=void 0)}}function Kt(Pt){return DE(Pt)&&E2(Pt.type)}function Tt(Pt){if(Jc(Pt))return d;if(G_(Pt))return{typeNode:vt(Pt.name),mutatedTarget:!1};if(cp(Pt))return{typeNode:vt(Pt),mutatedTarget:!1};if(Kt(Pt))return Tt(Pt.expression);if(If(Pt)){let Vr=Si(Pt,zs),Yr=Vr&&sr(Vr.name)?Vr.name.text:void 0;return Ye(Pt,Yr)}if(tu(Pt)){let Vr=Si(Pt,zs),Yr=Vr&&sr(Vr.name)?Vr.name.text:void 0;return ht(Pt,Yr)}if(zs(Pt)&&Pt.initializer)return Tt(Pt.initializer);if(BN(Pt)){let{typeNode:Vr,mutatedTarget:Yr}=Tt(Pt.whenTrue);if(!Vr)return d;let{typeNode:pr,mutatedTarget:zr}=Tt(Pt.whenFalse);return pr?{typeNode:_e.createUnionTypeNode([Vr,pr]),mutatedTarget:Yr||zr}:d}return d}function Lt(Pt,Vr,Yr=0){let pr=!1,zr=OFe(R,V,Pt,Vr,N,Uns|Yr,{moduleResolverHost:b,trackSymbol(){return!0},reportTruncationError(){pr=!0}});return pr?_e.createKeywordTypeNode(133):zr}function kt(Pt){let Vr=R.getSignatureFromDeclaration(Pt);if(Vr)return R.getReturnTypeOfSignature(Vr)}function Zt(Pt){let{typeNode:Vr}=wt(Pt);if(Vr)return Pt.type?I.replaceNode(ls(Pt),Pt.type,Vr):I.tryInsertTypeAnnotation(ls(Pt),Pt,Vr),[Z.Add_annotation_of_type_0,Dr(Vr)]}function Dr(Pt){co(Pt,1);let Vr=te.printNode(4,Pt,h);return Vr.length>_Q?Vr.substring(0,_Q-3)+"...":(co(Pt,0),Vr)}function jt(Pt){return Si(Pt,Vr=>Jns.has(Vr.kind)&&(!Vg(Vr)&&!Vu(Vr)||zs(Vr.parent)))}function mr(Pt,Vr){for(;Pt&&Pt.endAOr(h,c,d));return[rg(s9t,I,Z.Add_async_modifier_to_containing_function,s9t,Z.Add_all_missing_async_modifiers)]},fixIds:[s9t],getAllCodeActions:function(c){let u=new Map;return Md(c,uOr,(d,I)=>{let h=gOr(I.file,I.start);!h||!R2(u,sd(h.insertBefore))||AOr(d,c.sourceFile,h)})}});function Kns(n){if(n.type)return n.type;if(zs(n.parent)&&n.parent.type&&Y(n.parent.type))return n.parent.type.type}function gOr(n,c){let u=Qc(n,c),d=Wb(u);if(!d)return;let I;switch(d.kind){case 174:I=d.name;break;case 262:case 218:I=Od(d,100,n);break;case 219:let h=d.typeParameters?30:21;I=Od(d,h,n)||$s(d.parameters);break;default:return}return I&&{insertBefore:I,returnType:Kns(d)}}function AOr(n,c,{insertBefore:u,returnType:d}){if(d){let I=z$(d);(!I||I.kind!==80||I.text!=="Promise")&&n.replaceNode(c,d,_e.createTypeReferenceNode("Promise",_e.createNodeArray([d])))}n.insertModifierBefore(c,134,u)}var dOr=[Z._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property.code,Z._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor.code],o9t="fixPropertyOverrideAccessor";wg({errorCodes:dOr,getCodeActions(n){let c=pOr(n.sourceFile,n.span.start,n.span.length,n.errorCode,n);if(c)return[rg(o9t,c,Z.Generate_get_and_set_accessors,o9t,Z.Generate_get_and_set_accessors_for_all_overriding_properties)]},fixIds:[o9t],getAllCodeActions:n=>Md(n,dOr,(c,u)=>{let d=pOr(u.file,u.start,u.length,u.code,n);if(d)for(let I of d)c.pushRaw(n.sourceFile,I)})});function pOr(n,c,u,d,I){let h,b;if(d===Z._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property.code)h=c,b=c+u;else if(d===Z._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor.code){let R=I.program.getTypeChecker(),N=Qc(n,c).parent;w.assert(jw(N),"error span of fixPropertyOverrideAccessor should only be on an accessor");let V=N.parent;w.assert(Sa(V),"erroneous accessors should only be inside classes");let P=wu(h9t(V,R));if(!P)return[];let M=Sc(K9(N.name)),te=R.getPropertyOfType(R.getTypeAtLocation(P),M);if(!te||!te.valueDeclaration)return[];h=te.valueDeclaration.pos,b=te.valueDeclaration.end,n=ls(te.valueDeclaration)}else w.fail("fixPropertyOverrideAccessor codefix got unexpected error code "+d);return FOr(n,I.program,h,b,I,Z.Generate_get_and_set_accessors.message)}var a9t="inferFromUsage",fOr=[Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code,Z.Variable_0_implicitly_has_an_1_type.code,Z.Parameter_0_implicitly_has_an_1_type.code,Z.Rest_parameter_0_implicitly_has_an_any_type.code,Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code,Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code,Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code,Z.Member_0_implicitly_has_an_1_type.code,Z.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code,Z.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code,Z._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code,Z.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code];wg({errorCodes:fOr,getCodeActions(n){let{sourceFile:c,program:u,span:{start:d},errorCode:I,cancellationToken:h,host:b,preferences:R}=n,N=Qc(c,d),V,P=po.ChangeTracker.with(n,te=>{V=IOr(te,c,N,I,u,h,pI,b,R)}),M=V&&vl(V);return!M||P.length===0?void 0:[rg(a9t,P,[jns(I,N),Tf(M)],a9t,Z.Infer_all_types_from_usage)]},fixIds:[a9t],getAllCodeActions(n){let{sourceFile:c,program:u,cancellationToken:d,host:I,preferences:h}=n,b=Zte();return Md(n,fOr,(R,N)=>{IOr(R,c,Qc(N.file,N.start),N.code,u,d,b,I,h)})}});function jns(n,c){switch(n){case Z.Parameter_0_implicitly_has_an_1_type.code:case Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return sb(Wb(c))?Z.Infer_type_of_0_from_usage:Z.Infer_parameter_types_from_usage;case Z.Rest_parameter_0_implicitly_has_an_any_type.code:case Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Infer_parameter_types_from_usage;case Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code:return Z.Infer_this_type_of_0_from_usage;default:return Z.Infer_type_of_0_from_usage}}function zns(n){switch(n){case Z.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code:return Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code;case Z.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Variable_0_implicitly_has_an_1_type.code;case Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Parameter_0_implicitly_has_an_1_type.code;case Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Rest_parameter_0_implicitly_has_an_any_type.code;case Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code:return Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code;case Z._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code:return Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code;case Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code:return Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code;case Z.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Member_0_implicitly_has_an_1_type.code}return n}function IOr(n,c,u,d,I,h,b,R,N){if(!fQ(u.kind)&&u.kind!==80&&u.kind!==26&&u.kind!==110)return;let{parent:V}=u,P=TY(c,I,N,R);switch(d=zns(d),d){case Z.Member_0_implicitly_has_an_1_type.code:case Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code:if(zs(V)&&b(V)||Ql(V)||n_(V))return COr(n,P,c,V,I,R,h),P.writeFixes(n),V;if(Io(V)){let re=d0e(V.name,I,h),ue=vue(re,V,I,R);if(ue){let Ae=_e.createJSDocTypeTag(void 0,_e.createJSDocTypeExpression(ue),void 0);n.addJSDocTags(c,ps(V.parent.parent,Hf),[Ae])}return P.writeFixes(n),V}return;case Z.Variable_0_implicitly_has_an_1_type.code:{let re=I.getTypeChecker().getSymbolAtLocation(u);return re&&re.valueDeclaration&&zs(re.valueDeclaration)&&b(re.valueDeclaration)?(COr(n,P,ls(re.valueDeclaration),re.valueDeclaration,I,R,h),P.writeFixes(n),re.valueDeclaration):void 0}}let M=Wb(u);if(M===void 0)return;let te;switch(d){case Z.Parameter_0_implicitly_has_an_1_type.code:if(sb(M)){mOr(n,P,c,M,I,R,h),te=M;break}case Z.Rest_parameter_0_implicitly_has_an_any_type.code:if(b(M)){let re=ps(V,Jc);qns(n,P,c,re,M,I,R,h),te=re}break;case Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code:case Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code:Pb(M)&&sr(M.name)&&(jze(n,P,c,M,d0e(M.name,I,h),I,R),te=M);break;case Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code:sb(M)&&(mOr(n,P,c,M,I,R,h),te=M);break;case Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code:po.isThisTypeAnnotatable(M)&&b(M)&&($ns(n,c,M,I,R,h),te=M);break;default:return w.fail(String(d))}return P.writeFixes(n),te}function COr(n,c,u,d,I,h,b){sr(d.name)&&jze(n,c,u,d,d0e(d.name,I,b),I,h)}function qns(n,c,u,d,I,h,b,R){if(!sr(d.name))return;let N=ris(I,u,h,R);if(w.assert(I.parameters.length===N.length,"Parameter count and inference count should match"),so(I))hOr(n,u,N,h,b);else{let V=fd(I)&&!Od(I,21,u);V&&n.insertNodeBefore(u,$s(I.parameters),_e.createToken(21));for(let{declaration:P,type:M}of N)P&&!P.type&&!P.initializer&&jze(n,c,u,P,M,h,b);V&&n.insertNodeAfter(u,Na(I.parameters),_e.createToken(22))}}function $ns(n,c,u,d,I,h){let b=_Or(u,c,d,h);if(!b||!b.length)return;let R=l9t(d,b,h).thisParameter(),N=vue(R,u,d,I);N&&(so(u)?eis(n,c,u,N):n.tryInsertThisTypeAnnotation(c,u,N))}function eis(n,c,u,d){n.addJSDocTags(c,u,[_e.createJSDocThisTag(void 0,_e.createJSDocTypeExpression(d))])}function mOr(n,c,u,d,I,h,b){let R=$i(d.parameters);if(R&&sr(d.name)&&sr(R.name)){let N=d0e(d.name,I,b);N===I.getTypeChecker().getAnyType()&&(N=d0e(R.name,I,b)),so(d)?hOr(n,u,[{declaration:R,type:N}],I,h):jze(n,c,u,R,N,I,h)}}function jze(n,c,u,d,I,h,b){let R=vue(I,d,h,b);if(R)if(so(u)&&d.kind!==171){let N=zs(d)?eo(d.parent.parent,Rp):d;if(!N)return;let V=_e.createJSDocTypeExpression(R),P=Pb(d)?_e.createJSDocReturnTag(void 0,V,void 0):_e.createJSDocTypeTag(void 0,V,void 0);n.addJSDocTags(u,N,[P])}else tis(R,d,u,n,c,iA(h.getCompilerOptions()))||n.tryInsertTypeAnnotation(u,d,R)}function tis(n,c,u,d,I,h){let b=B4(n,h);return b&&d.tryInsertTypeAnnotation(u,c,b.typeNode)?(X(b.symbols,R=>I.addImportFromExportedSymbol(R,!0)),!0):!1}function hOr(n,c,u,d,I){let h=u.length&&u[0].declaration.parent;if(!h)return;let b=tr(u,R=>{let N=R.declaration;if(N.initializer||yx(N)||!sr(N.name))return;let V=R.type&&vue(R.type,N,d,I);if(V){let P=_e.cloneNode(N.name);return co(P,7168),{name:_e.cloneNode(N.name),param:N,isOptional:!!R.isOptional,typeNode:V}}});if(b.length)if(fd(h)||WA(h)){let R=fd(h)&&!Od(h,21,c);R&&n.insertNodeBefore(c,$s(h.parameters),_e.createToken(21)),X(b,({typeNode:N,param:V})=>{let P=_e.createJSDocTypeTag(void 0,_e.createJSDocTypeExpression(N)),M=_e.createJSDocComment(void 0,[P]);n.insertNodeAt(c,V.getStart(c),M,{suffix:" "})}),R&&n.insertNodeAfter(c,Na(h.parameters),_e.createToken(22))}else{let R=Ot(b,({name:N,typeNode:V,isOptional:P})=>_e.createJSDocParameterTag(void 0,N,!!P,_e.createJSDocTypeExpression(V),!1,void 0));n.addJSDocTags(c,h,R)}}function c9t(n,c,u){return tr(Yp.getReferenceEntriesForNode(-1,n,c,c.getSourceFiles(),u),d=>d.kind!==Yp.EntryKind.Span?eo(d.node,sr):void 0)}function d0e(n,c,u){let d=c9t(n,c,u);return l9t(c,d,u).single()}function ris(n,c,u,d){let I=_Or(n,c,u,d);return I&&l9t(u,I,d).parameters(n)||n.parameters.map(h=>({declaration:h,type:sr(h.name)?d0e(h.name,u,d):u.getTypeChecker().getAnyType()}))}function _Or(n,c,u,d){let I;switch(n.kind){case 176:I=Od(n,137,c);break;case 219:case 218:let h=n.parent;I=(zs(h)||Ql(h))&&sr(h.name)?h.name:n.name;break;case 262:case 174:case 173:I=n.name;break}if(I)return c9t(I,u,d)}function l9t(n,c,u){let d=n.getTypeChecker(),I={string:()=>d.getStringType(),number:()=>d.getNumberType(),Array:Lt=>d.createArrayType(Lt),Promise:Lt=>d.createPromiseType(Lt)},h=[d.getStringType(),d.getNumberType(),d.createArrayType(d.getAnyType()),d.createPromiseType(d.getAnyType())];return{single:N,parameters:V,thisParameter:P};function b(){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}}function R(Lt){let kt=new Map;for(let Dr of Lt)Dr.properties&&Dr.properties.forEach((jt,mr)=>{kt.has(mr)||kt.set(mr,[]),kt.get(mr).push(jt)});let Zt=new Map;return kt.forEach((Dr,jt)=>{Zt.set(jt,R(Dr))}),{isNumber:Lt.some(Dr=>Dr.isNumber),isString:Lt.some(Dr=>Dr.isString),isNumberOrString:Lt.some(Dr=>Dr.isNumberOrString),candidateTypes:Fr(Lt,Dr=>Dr.candidateTypes),properties:Zt,calls:Fr(Lt,Dr=>Dr.calls),constructs:Fr(Lt,Dr=>Dr.constructs),numberIndex:X(Lt,Dr=>Dr.numberIndex),stringIndex:X(Lt,Dr=>Dr.stringIndex),candidateThisTypes:Fr(Lt,Dr=>Dr.candidateThisTypes),inferredTypes:void 0}}function N(){return st(M(c))}function V(Lt){if(c.length===0||!Lt.parameters)return;let kt=b();for(let Dr of c)u.throwIfCancellationRequested(),te(Dr,kt);let Zt=[...kt.constructs||[],...kt.calls||[]];return Lt.parameters.map((Dr,jt)=>{let mr=[],Pt=Rv(Dr),Vr=!1;for(let pr of Zt)if(pr.argumentTypes.length<=jt)Vr=so(Lt),mr.push(d.getUndefinedType());else if(Pt)for(let zr=jt;zrZt.every(jt=>!jt(Dr)))}function je(Lt){return st(qe(Lt))}function st(Lt){if(!Lt.length)return d.getAnyType();let kt=d.getUnionType([d.getStringType(),d.getNumberType()]),Dr=Le(Lt,[{high:mr=>mr===d.getStringType()||mr===d.getNumberType(),low:mr=>mr===kt},{high:mr=>!(mr.flags&16385),low:mr=>!!(mr.flags&16385)},{high:mr=>!(mr.flags&114689)&&!(sa(mr)&16),low:mr=>!!(sa(mr)&16)}]),jt=Dr.filter(mr=>sa(mr)&16);return jt.length&&(Dr=Dr.filter(mr=>!(sa(mr)&16)),Dr.push(nt(jt))),d.getWidenedType(d.getUnionType(Dr.map(d.getBaseTypeOfLiteralType),2))}function nt(Lt){if(Lt.length===1)return Lt[0];let kt=[],Zt=[],Dr=[],jt=[],mr=!1,Pt=!1,Vr=ec();for(let zr of Lt){for(let Pi of d.getPropertiesOfType(zr))Vr.add(Pi.escapedName,Pi.valueDeclaration?d.getTypeOfSymbolAtLocation(Pi,Pi.valueDeclaration):d.getAnyType());kt.push(...d.getSignaturesOfType(zr,0)),Zt.push(...d.getSignaturesOfType(zr,1));let $n=d.getIndexInfoOfType(zr,0);$n&&(Dr.push($n.type),mr=mr||$n.isReadonly);let bi=d.getIndexInfoOfType(zr,1);bi&&(jt.push(bi.type),Pt=Pt||bi.isReadonly)}let Yr=Qs(Vr,(zr,$n)=>{let bi=$n.lengthd.getBaseTypeOfLiteralType(Vr)),Pt=(Dr=Lt.calls)!=null&&Dr.length?it(Lt):void 0;return Pt&&mr?jt.push(d.getUnionType([Pt,...mr],2)):(Pt&&jt.push(Pt),O(mr)&&jt.push(...mr)),jt.push(...It(Lt)),jt}function it(Lt){let kt=new Map;Lt.properties&&Lt.properties.forEach((mr,Pt)=>{let Vr=d.createSymbol(4,Pt);Vr.links.type=je(mr),kt.set(Pt,Vr)});let Zt=Lt.calls?[Et(Lt.calls)]:[],Dr=Lt.constructs?[Et(Lt.constructs)]:[],jt=Lt.stringIndex?[d.createIndexInfo(d.getStringType(),je(Lt.stringIndex),!1)]:[];return d.createAnonymousType(void 0,kt,Zt,Dr,jt)}function It(Lt){if(!Lt.properties||!Lt.properties.size)return[];let kt=h.filter(Zt=>dt(Zt,Lt));return 0wt(Zt,Lt)):[]}function dt(Lt,kt){return kt.properties?!JC(kt.properties,(Zt,Dr)=>{let jt=d.getTypeOfPropertyOfType(Lt,Dr);return jt?Zt.calls?!d.getSignaturesOfType(jt,0).length||!d.isTypeAssignableTo(jt,ht(Zt.calls)):!d.isTypeAssignableTo(jt,je(Zt)):!0}):!1}function wt(Lt,kt){if(!(sa(Lt)&4)||!kt.properties)return Lt;let Zt=Lt.target,Dr=wu(Zt.typeParameters);if(!Dr)return Lt;let jt=[];return kt.properties.forEach((mr,Pt)=>{let Vr=d.getTypeOfPropertyOfType(Zt,Pt);w.assert(!!Vr,"generic should have all the properties of its reference."),jt.push(...vt(Vr,je(mr),Dr))}),I[Lt.symbol.escapedName](st(jt))}function vt(Lt,kt,Zt){if(Lt===Zt)return[kt];if(Lt.flags&3145728)return Fr(Lt.types,mr=>vt(mr,kt,Zt));if(sa(Lt)&4&&sa(kt)&4){let mr=d.getTypeArguments(Lt),Pt=d.getTypeArguments(kt),Vr=[];if(mr&&Pt)for(let Yr=0;Yrjt.argumentTypes.length));for(let jt=0;jtPt.argumentTypes[jt]||d.getUndefinedType())),Lt.some(Pt=>Pt.argumentTypes[jt]===void 0)&&(mr.flags|=16777216),kt.push(mr)}let Dr=je(R(Lt.map(jt=>jt.return_)));return d.createSignature(void 0,void 0,void 0,kt,Dr,void 0,Zt,0)}function Kt(Lt,kt){kt&&!(kt.flags&1)&&!(kt.flags&131072)&&(Lt.candidateTypes||(Lt.candidateTypes=[])).push(kt)}function Tt(Lt,kt){kt&&!(kt.flags&1)&&!(kt.flags&131072)&&(Lt.candidateThisTypes||(Lt.candidateThisTypes=[])).push(kt)}}var u9t="fixReturnTypeInAsyncFunction",yOr=[Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0.code];wg({errorCodes:yOr,fixIds:[u9t],getCodeActions:function(c){let{sourceFile:u,program:d,span:I}=c,h=d.getTypeChecker(),b=bOr(u,d.getTypeChecker(),I.start);if(!b)return;let{returnTypeNode:R,returnType:N,promisedTypeNode:V,promisedType:P}=b,M=po.ChangeTracker.with(c,te=>EOr(te,u,R,V));return[rg(u9t,M,[Z.Replace_0_with_Promise_1,h.typeToString(N),h.typeToString(P)],u9t,Z.Fix_all_incorrect_return_type_of_an_async_functions)]},getAllCodeActions:n=>Md(n,yOr,(c,u)=>{let d=bOr(u.file,n.program.getTypeChecker(),u.start);d&&EOr(c,u.file,d.returnTypeNode,d.promisedTypeNode)})});function bOr(n,c,u){if(so(n))return;let d=Qc(n,u),I=Si(d,dd),h=I?.type;if(!h)return;let b=c.getTypeFromTypeNode(h),R=c.getAwaitedType(b)||c.getVoidType(),N=c.typeToTypeNode(R,h,void 0);if(N)return{returnTypeNode:h,returnType:b,promisedTypeNode:N,promisedType:R}}function EOr(n,c,u,d){n.replaceNode(c,u,_e.createTypeReferenceNode("Promise",[d]))}var BOr="disableJsDiagnostics",vOr="disableJsDiagnostics",SOr=tr(Object.keys(Z),n=>{let c=Z[n];return c.category===1?c.code:void 0});wg({errorCodes:SOr,getCodeActions:function(c){let{sourceFile:u,program:d,span:I,host:h,formatContext:b}=c;if(!so(u)||!h6(u,d.getCompilerOptions()))return;let R=u.checkJsDirective?"":WZ(h,b.options),N=[AT(BOr,[_Vr(u.fileName,[P_e(u.checkJsDirective?Wd(u.checkJsDirective.pos,u.checkJsDirective.end):bd(0,0),`// @ts-nocheck${R}`)])],Z.Disable_checking_for_this_file)];return po.isValidLocationToAddComment(u,I.start)&&N.unshift(rg(BOr,po.ChangeTracker.with(c,V=>wOr(V,u,I.start)),Z.Ignore_this_error_message,vOr,Z.Add_ts_ignore_to_all_error_messages)),N},fixIds:[vOr],getAllCodeActions:n=>{let c=new Set;return Md(n,SOr,(u,d)=>{po.isValidLocationToAddComment(d.file,d.start)&&wOr(u,d.file,d.start,c)})}});function wOr(n,c,u,d){let{line:I}=Ll(c,u);(!d||Zi(d,I))&&n.insertCommentBeforeLine(c,I,u," @ts-ignore")}function g9t(n,c,u,d,I,h,b){let R=n.symbol.members;for(let N of c)R.has(N.escapedName)||NOr(N,n,u,d,I,h,b,void 0)}function Ute(n){return{trackSymbol:()=>!1,moduleResolverHost:ije(n.program,n.host)}}var TOr=(n=>(n[n.Method=1]="Method",n[n.Property=2]="Property",n[n.All=3]="All",n))(TOr||{});function NOr(n,c,u,d,I,h,b,R,N=3,V=!1){let P=n.getDeclarations(),M=$i(P),te=d.program.getTypeChecker(),re=iA(d.program.getCompilerOptions()),ue=M?.kind??171,Ae=It(n,M),de=M?N_(M):0,Be=de&256;Be|=de&1?1:de&4?4:0,M&&t_(M)&&(Be|=512);let Fe=je(),Ne=te.getWidenedType(te.getTypeOfSymbolAtLocation(n,c)),Qe=!!(n.flags&16777216),De=!!(c.flags&33554432)||V,lt=W2(u,I);switch(ue){case 171:case 172:let dt=1;dt|=lt===0?268435456:0;let wt=te.typeToTypeNode(Ne,c,dt,Ute(d));if(h){let Ye=B4(wt,re);Ye&&(wt=Ye.typeNode,s7(h,Ye.symbols))}b(_e.createPropertyDeclaration(Fe,M?nt(Ae):n.getName(),Qe&&N&2?_e.createToken(58):void 0,wt,void 0));break;case 177:case 178:{w.assertIsDefined(P);let Ye=te.typeToTypeNode(Ne,c,void 0,Ute(d)),ht=xx(P,M),Et=ht.secondAccessor?[ht.firstAccessor,ht.secondAccessor]:[ht.firstAccessor];if(h){let Kt=B4(Ye,re);Kt&&(Ye=Kt.typeNode,s7(h,Kt.symbols))}for(let Kt of Et)if(Pb(Kt))b(_e.createGetAccessorDeclaration(Fe,nt(Ae),v,it(Ye),qe(R,lt,De)));else{w.assertNode(Kt,sb,"The counterpart to a getter should be a setter");let Tt=KX(Kt),Lt=Tt&&sr(Tt.name)?ao(Tt.name):void 0;b(_e.createSetAccessorDeclaration(Fe,nt(Ae),d9t(1,[Lt],[it(Ye)],1,!1),qe(R,lt,De)))}break}case 173:case 174:w.assertIsDefined(P);let vt=Ne.isUnion()?Fr(Ne.types,Ye=>Ye.getCallSignatures()):Ne.getCallSignatures();if(!lr(vt))break;if(P.length===1){w.assert(vt.length===1,"One declaration implies one signature");let Ye=vt[0];Le(lt,Ye,Fe,nt(Ae),qe(R,lt,De));break}for(let Ye of vt)Le(lt,Ye,Fe,nt(Ae));if(!De)if(P.length>vt.length){let Ye=te.getSignatureFromDeclaration(P[P.length-1]);Le(lt,Ye,Fe,nt(Ae),qe(R,lt))}else w.assert(P.length===vt.length,"Declarations and signatures should match count"),b(sis(te,d,c,vt,nt(Ae),Qe&&!!(N&1),Fe,lt,R));break}function Le(dt,wt,vt,Ye,ht){let Et=zze(174,d,dt,wt,ht,Ye,vt,Qe&&!!(N&1),c,h);Et&&b(Et)}function je(){let dt;return Be&&(dt=Ws(dt,_e.createModifiersFromModifierFlags(Be))),st()&&(dt=Hr(dt,_e.createToken(164))),dt&&_e.createNodeArray(dt)}function st(){return!!(d.program.getCompilerOptions().noImplicitOverride&&M&&aV(M))}function nt(dt){return sr(dt)&&dt.escapedText==="constructor"?_e.createComputedPropertyName(_e.createStringLiteral(ao(dt),lt===0)):Bd(dt,!1)}function qe(dt,wt,vt){return vt?void 0:Bd(dt,!1)||p9t(wt)}function it(dt){return Bd(dt,!1)}function It(dt,wt){if(aI(dt)&262144){let vt=dt.links.nameType;if(vt&&x2(vt))return _e.createIdentifier(Sc(k2(vt)))}return Bd(vl(wt),!1)}}function zze(n,c,u,d,I,h,b,R,N,V){let P=c.program,M=P.getTypeChecker(),te=iA(P.getCompilerOptions()),re=so(N),ue=524545|(u===0?268435456:0),Ae=M.signatureToSignatureDeclaration(d,n,N,ue,Ute(c));if(!Ae)return;let de=re?void 0:Ae.typeParameters,Be=Ae.parameters,Fe=re?void 0:Bd(Ae.type);if(V){if(de){let lt=Ar(de,Le=>{let je=Le.constraint,st=Le.default;if(je){let nt=B4(je,te);nt&&(je=nt.typeNode,s7(V,nt.symbols))}if(st){let nt=B4(st,te);nt&&(st=nt.typeNode,s7(V,nt.symbols))}return _e.updateTypeParameterDeclaration(Le,Le.modifiers,Le.name,je,st)});de!==lt&&(de=un(_e.createNodeArray(lt,de.hasTrailingComma),de))}let De=Ar(Be,lt=>{let Le=re?void 0:lt.type;if(Le){let je=B4(Le,te);je&&(Le=je.typeNode,s7(V,je.symbols))}return _e.updateParameterDeclaration(lt,lt.modifiers,lt.dotDotDotToken,lt.name,re?void 0:lt.questionToken,Le,lt.initializer)});if(Be!==De&&(Be=un(_e.createNodeArray(De,Be.hasTrailingComma),Be)),Fe){let lt=B4(Fe,te);lt&&(Fe=lt.typeNode,s7(V,lt.symbols))}}let Ne=R?_e.createToken(58):void 0,Qe=Ae.asteriskToken;if(WA(Ae))return _e.updateFunctionExpression(Ae,b,Ae.asteriskToken,eo(h,sr),de,Be,Fe,I??Ae.body);if(fd(Ae))return _e.updateArrowFunction(Ae,b,de,Be,Fe,Ae.equalsGreaterThanToken,I??Ae.body);if(cI(Ae))return _e.updateMethodDeclaration(Ae,b,Qe,h??_e.createIdentifier(""),Ne,de,Be,Fe,I);if(mp(Ae))return _e.updateFunctionDeclaration(Ae,b,Ae.asteriskToken,eo(h,sr),de,Be,Fe,I??Ae.body)}function A9t(n,c,u,d,I,h,b){let R=W2(c.sourceFile,c.preferences),N=iA(c.program.getCompilerOptions()),V=Ute(c),P=c.program.getTypeChecker(),M=so(b),{typeArguments:te,arguments:re,parent:ue}=d,Ae=M?void 0:P.getContextualType(d),de=Ot(re,st=>sr(st)?st.text:Io(st)&&sr(st.name)?st.name.text:void 0),Be=M?[]:Ot(re,st=>P.getTypeAtLocation(st)),{argumentTypeNodes:Fe,argumentTypeParameters:Ne}=xOr(P,u,Be,b,N,1,V),Qe=h?_e.createNodeArray(_e.createModifiersFromModifierFlags(h)):void 0,De=Vx(ue)?_e.createToken(42):void 0,lt=M?void 0:nis(P,Ne,te),Le=d9t(re.length,de,Fe,void 0,M),je=M||Ae===void 0?void 0:P.typeToTypeNode(Ae,b,void 0,V);switch(n){case 174:return _e.createMethodDeclaration(Qe,De,I,void 0,lt,Le,je,p9t(R));case 173:return _e.createMethodSignature(Qe,I,void 0,lt,Le,je===void 0?_e.createKeywordTypeNode(159):je);case 262:return w.assert(typeof I=="string"||sr(I),"Unexpected name"),_e.createFunctionDeclaration(Qe,De,I,lt,Le,je,MFe(Z.Function_not_implemented.message,R));default:w.fail("Unexpected kind")}}function nis(n,c,u){let d=new Set(c.map(h=>h[0])),I=new Map(c);if(u){let h=u.filter(R=>!c.some(N=>{var V;return n.getTypeAtLocation(R)===((V=N[1])==null?void 0:V.argumentType)})),b=d.size+h.length;for(let R=0;d.size{var b;return _e.createTypeParameterDeclaration(void 0,h,(b=I.get(h))==null?void 0:b.constraint)})}function ROr(n){return 84+n<=90?String.fromCharCode(84+n):`T${n}`}function OFe(n,c,u,d,I,h,b){let R=n.typeToTypeNode(u,d,h,b);if(R&&Tu(R)){let N=B4(R,I);N&&(s7(c,N.symbols),R=N.typeNode)}return Bd(R)}function DOr(n){return n.isUnionOrIntersection()?n.types.some(DOr):n.flags&262144}function xOr(n,c,u,d,I,h,b){let R=[],N=new Map;for(let V=0;V=d?_e.createToken(58):void 0,I?void 0:u?.[R]||_e.createKeywordTypeNode(159),void 0);h.push(P)}return h}function sis(n,c,u,d,I,h,b,R,N){let V=d[0],P=d[0].minArgumentCount,M=!1;for(let Ae of d)P=Math.min(Ae.minArgumentCount,P),u0(Ae)&&(M=!0),Ae.parameters.length>=V.parameters.length&&(!u0(Ae)||u0(V))&&(V=Ae);let te=V.parameters.length-(u0(V)?1:0),re=V.parameters.map(Ae=>Ae.name),ue=d9t(te,re,void 0,P,!1);if(M){let Ae=_e.createParameterDeclaration(void 0,_e.createToken(26),re[te]||"rest",te>=P?_e.createToken(58):void 0,_e.createArrayTypeNode(_e.createKeywordTypeNode(159)),void 0);ue.push(Ae)}return ais(b,I,h,void 0,ue,ois(d,n,c,u),R,N)}function ois(n,c,u,d){if(O(n)){let I=c.getUnionType(Ot(n,c.getReturnTypeOfSignature));return c.typeToTypeNode(I,d,1,Ute(u))}}function ais(n,c,u,d,I,h,b,R){return _e.createMethodDeclaration(n,void 0,c,u?_e.createToken(58):void 0,d,I,h,R||p9t(b))}function p9t(n){return MFe(Z.Method_not_implemented.message,n)}function MFe(n,c){return _e.createBlock([_e.createThrowStatement(_e.createNewExpression(_e.createIdentifier("Error"),void 0,[_e.createStringLiteral(n,c===0)]))],!0)}function f9t(n,c,u){let d=x8(c);if(!d)return;let I=C9t(d,"compilerOptions");if(I===void 0){n.insertNodeAtObjectStart(c,d,qze("compilerOptions",_e.createObjectLiteralExpression(u.map(([b,R])=>qze(b,R)),!0)));return}let h=I.initializer;if(tu(h))for(let[b,R]of u){let N=C9t(h,b);N===void 0?n.insertNodeAtObjectStart(c,h,qze(b,R)):n.replaceNode(c,N.initializer,R)}}function I9t(n,c,u,d){f9t(n,c,[[u,d]])}function qze(n,c){return _e.createPropertyAssignment(_e.createStringLiteral(n),c)}function C9t(n,c){return be(n.properties,u=>KC(u)&&!!u.name&&bu(u.name)&&u.name.text===c)}function B4(n,c){let u,d=xr(n,I,Ya);if(u&&d)return{typeNode:d,symbols:u};function I(h){if(r_(h)&&h.qualifier){let b=ib(h.qualifier);if(!b.symbol)return ns(h,I,void 0);let R=cFe(b.symbol,c),N=R!==b.text?GOr(h.qualifier,_e.createIdentifier(R)):h.qualifier;u=Hr(u,b.symbol);let V=ws(h.typeArguments,I,Ya);return _e.createTypeReferenceNode(N,V)}return ns(h,I,void 0)}}function GOr(n,c){return n.kind===80?c:_e.createQualifiedName(GOr(n.left,c),n.right)}function s7(n,c){c.forEach(u=>n.addImportFromExportedSymbol(u,!0))}function m9t(n,c){let u=Uu(c),d=Qc(n,c.start);for(;d.endh.replaceNode(c,u,d));return AT(POr,I,[Z.Replace_import_with_0,I[0].textChanges[0].newText])}wg({errorCodes:[Z.This_expression_is_not_callable.code,Z.This_expression_is_not_constructable.code],getCodeActions:_is});function _is(n){let c=n.sourceFile,u=Z.This_expression_is_not_callable.code===n.errorCode?213:214,d=Si(Qc(c,n.span.start),h=>h.kind===u);if(!d)return[];let I=d.expression;return MOr(n,I)}wg({errorCodes:[Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,Z.Type_0_does_not_satisfy_the_constraint_1.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated.code,Z.Type_predicate_0_is_not_assignable_to_1.code,Z.Property_0_of_type_1_is_not_assignable_to_2_index_type_3.code,Z._0_index_type_1_is_not_assignable_to_2_index_type_3.code,Z.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2.code,Z.Property_0_in_type_1_is_not_assignable_to_type_2.code,Z.Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property.code,Z.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1.code],getCodeActions:yis});function yis(n){let c=n.sourceFile,u=Si(Qc(c,n.span.start),d=>d.getStart()===n.span.start&&d.getEnd()===n.span.start+n.span.length);return u?MOr(n,u):[]}function MOr(n,c){let u=n.program.getTypeChecker().getTypeAtLocation(c);if(!(u.symbol&&vB(u.symbol)&&u.symbol.links.originatingImport))return[];let d=[],I=u.symbol.links.originatingImport;if(pC(I)||ai(d,his(n,I)),tn(c)&&!(Sf(c.parent)&&c.parent.name===c)){let h=n.sourceFile,b=po.ChangeTracker.with(n,R=>R.replaceNode(h,c,_e.createPropertyAccessExpression(c,"default"),{}));d.push(AT(POr,b,Z.Use_synthetic_default_member))}return d}var _9t="strictClassInitialization",y9t="addMissingPropertyDefiniteAssignmentAssertions",b9t="addMissingPropertyUndefinedType",E9t="addMissingPropertyInitializer",QOr=[Z.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor.code];wg({errorCodes:QOr,getCodeActions:function(c){let u=YOr(c.sourceFile,c.span.start);if(!u)return;let d=[];return Hr(d,Eis(c,u)),Hr(d,bis(c,u)),Hr(d,Bis(c,u)),d},fixIds:[y9t,b9t,E9t],getAllCodeActions:n=>Md(n,QOr,(c,u)=>{let d=YOr(u.file,u.start);if(d)switch(n.fixId){case y9t:HOr(c,u.file,d.prop);break;case b9t:XOr(c,u.file,d);break;case E9t:let I=n.program.getTypeChecker(),h=UOr(I,d.prop);if(!h)return;JOr(c,u.file,d.prop,h);break;default:w.fail(JSON.stringify(n.fixId))}})});function YOr(n,c){let u=Qc(n,c);if(sr(u)&&Ql(u.parent)){let d=fC(u.parent);if(d)return{type:d,prop:u.parent,isJs:so(u.parent)}}}function bis(n,c){if(c.isJs)return;let u=po.ChangeTracker.with(n,d=>HOr(d,n.sourceFile,c.prop));return rg(_9t,u,[Z.Add_definite_assignment_assertion_to_property_0,c.prop.getText()],y9t,Z.Add_definite_assignment_assertions_to_all_uninitialized_properties)}function HOr(n,c,u){ME(u);let d=_e.updatePropertyDeclaration(u,u.modifiers,u.name,_e.createToken(54),u.type,u.initializer);n.replaceNode(c,u,d)}function Eis(n,c){let u=po.ChangeTracker.with(n,d=>XOr(d,n.sourceFile,c));return rg(_9t,u,[Z.Add_undefined_type_to_property_0,c.prop.name.getText()],b9t,Z.Add_undefined_type_to_all_uninitialized_properties)}function XOr(n,c,u){let d=_e.createKeywordTypeNode(157),I=Is(u.type)?u.type.types.concat(d):[u.type,d],h=_e.createUnionTypeNode(I);u.isJs?n.addJSDocTags(c,u.prop,[_e.createJSDocTypeTag(void 0,_e.createJSDocTypeExpression(h))]):n.replaceNode(c,u.type,h)}function Bis(n,c){if(c.isJs)return;let u=n.program.getTypeChecker(),d=UOr(u,c.prop);if(!d)return;let I=po.ChangeTracker.with(n,h=>JOr(h,n.sourceFile,c.prop,d));return rg(_9t,I,[Z.Add_initializer_to_property_0,c.prop.name.getText()],E9t,Z.Add_initializers_to_all_uninitialized_properties)}function JOr(n,c,u,d){ME(u);let I=_e.updatePropertyDeclaration(u,u.modifiers,u.name,u.questionToken,u.type,d);n.replaceNode(c,u,I)}function UOr(n,c){return KOr(n,n.getTypeFromTypeNode(c.type))}function KOr(n,c){if(c.flags&512)return c===n.getFalseType()||c===n.getFalseType(!0)?_e.createFalse():_e.createTrue();if(c.isStringLiteral())return _e.createStringLiteral(c.value);if(c.isNumberLiteral())return _e.createNumericLiteral(c.value);if(c.flags&2048)return _e.createBigIntLiteral(c.value);if(c.isUnion())return le(c.types,u=>KOr(n,u));if(c.isClass()){let u=DB(c.symbol);if(!u||ba(u,64))return;let d=dN(u);return d&&d.parameters.length?void 0:_e.createNewExpression(_e.createIdentifier(c.symbol.name),void 0,void 0)}else if(n.isArrayLikeType(c))return _e.createArrayLiteralExpression()}var B9t="requireInTs",jOr=[Z.require_call_may_be_converted_to_an_import.code];wg({errorCodes:jOr,getCodeActions(n){let c=qOr(n.sourceFile,n.program,n.span.start);if(!c)return;let u=po.ChangeTracker.with(n,d=>zOr(d,n.sourceFile,c));return[rg(B9t,u,Z.Convert_require_to_import,B9t,Z.Convert_all_require_to_import)]},fixIds:[B9t],getAllCodeActions:n=>Md(n,jOr,(c,u)=>{let d=qOr(u.file,n.program,u.start);d&&zOr(c,n.sourceFile,d)})});function zOr(n,c,u){let{allowSyntheticDefaults:d,defaultImportName:I,namedImports:h,statement:b,required:R}=u;n.replaceNode(c,b,I&&!d?_e.createImportEqualsDeclaration(void 0,!1,I,_e.createExternalModuleReference(R)):_e.createImportDeclaration(void 0,_e.createImportClause(!1,I,h),R,void 0))}function qOr(n,c,u){let{parent:d}=Qc(n,u);Q0(d,!0)||w.failBadSyntaxKind(d);let I=ps(d.parent,zs),h=eo(I.name,sr),b=Vg(I.name)?vis(I.name):void 0;if(h||b)return{allowSyntheticDefaults:JQ(c.getCompilerOptions()),defaultImportName:h,namedImports:b,statement:ps(I.parent.parent,Rp),required:$s(d.arguments)}}function vis(n){let c=[];for(let u of n.elements){if(!sr(u.name)||u.initializer)return;c.push(_e.createImportSpecifier(!1,eo(u.propertyName,sr),u.name))}if(c.length)return _e.createNamedImports(c)}var v9t="useDefaultImport",$Or=[Z.Import_may_be_converted_to_a_default_import.code];wg({errorCodes:$Or,getCodeActions(n){let{sourceFile:c,span:{start:u}}=n,d=eMr(c,u);if(!d)return;let I=po.ChangeTracker.with(n,h=>tMr(h,c,d,n.preferences));return[rg(v9t,I,Z.Convert_to_default_import,v9t,Z.Convert_all_to_default_imports)]},fixIds:[v9t],getAllCodeActions:n=>Md(n,$Or,(c,u)=>{let d=eMr(u.file,u.start);d&&tMr(c,u.file,d,n.preferences)})});function eMr(n,c){let u=Qc(n,c);if(!sr(u))return;let{parent:d}=u;if(Cm(d)&&DG(d.moduleReference))return{importNode:d,name:u,moduleSpecifier:d.moduleReference.expression};if(Px(d)&&mI(d.parent.parent)){let I=d.parent.parent;return{importNode:I,name:u,moduleSpecifier:I.moduleSpecifier}}}function tMr(n,c,u,d){n.replaceNode(c,u.importNode,NV(u.name,void 0,u.moduleSpecifier,W2(c,d)))}var S9t="useBigintLiteral",rMr=[Z.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers.code];wg({errorCodes:rMr,getCodeActions:function(c){let u=po.ChangeTracker.with(c,d=>nMr(d,c.sourceFile,c.span));if(u.length>0)return[rg(S9t,u,Z.Convert_to_a_bigint_numeric_literal,S9t,Z.Convert_all_to_bigint_numeric_literals)]},fixIds:[S9t],getAllCodeActions:n=>Md(n,rMr,(c,u)=>nMr(c,u.file,u))});function nMr(n,c,u){let d=eo(Qc(c,u.start),du);if(!d)return;let I=d.getText(c)+"n";n.replaceNode(c,d,_e.createBigIntLiteral(I))}var Sis="fixAddModuleReferTypeMissingTypeof",w9t=Sis,iMr=[Z.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0.code];wg({errorCodes:iMr,getCodeActions:function(c){let{sourceFile:u,span:d}=c,I=sMr(u,d.start),h=po.ChangeTracker.with(c,b=>oMr(b,u,I));return[rg(w9t,h,Z.Add_missing_typeof,w9t,Z.Add_missing_typeof)]},fixIds:[w9t],getAllCodeActions:n=>Md(n,iMr,(c,u)=>oMr(c,n.sourceFile,sMr(u.file,u.start)))});function sMr(n,c){let u=Qc(n,c);return w.assert(u.kind===102,"This token should be an ImportKeyword"),w.assert(u.parent.kind===205,"Token parent should be an ImportType"),u.parent}function oMr(n,c,u){let d=_e.updateImportTypeNode(u,u.argument,u.attributes,u.qualifier,u.typeArguments,!0);n.replaceNode(c,u,d)}var T9t="wrapJsxInFragment",aMr=[Z.JSX_expressions_must_have_one_parent_element.code];wg({errorCodes:aMr,getCodeActions:function(c){let{sourceFile:u,span:d}=c,I=cMr(u,d.start);if(!I)return;let h=po.ChangeTracker.with(c,b=>lMr(b,u,I));return[rg(T9t,h,Z.Wrap_in_JSX_fragment,T9t,Z.Wrap_all_unparented_JSX_in_JSX_fragment)]},fixIds:[T9t],getAllCodeActions:n=>Md(n,aMr,(c,u)=>{let d=cMr(n.sourceFile,u.start);d&&lMr(c,n.sourceFile,d)})});function cMr(n,c){let I=Qc(n,c).parent.parent;if(!(!no(I)&&(I=I.parent,!no(I)))&&wf(I.operatorToken))return I}function lMr(n,c,u){let d=wis(u);d&&n.replaceNode(c,u,_e.createJsxFragment(_e.createJsxOpeningFragment(),d,_e.createJsxJsxClosingFragment()))}function wis(n){let c=[],u=n;for(;;)if(no(u)&&wf(u.operatorToken)&&u.operatorToken.kind===28){if(c.push(u.left),BX(u.right))return c.push(u.right),c;if(no(u.right)){u=u.right;continue}else return}else return}var N9t="wrapDecoratorInParentheses",uMr=[Z.Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator.code];wg({errorCodes:uMr,getCodeActions:function(c){let u=po.ChangeTracker.with(c,d=>gMr(d,c.sourceFile,c.span.start));return[rg(N9t,u,Z.Wrap_in_parentheses,N9t,Z.Wrap_all_invalid_decorator_expressions_in_parentheses)]},fixIds:[N9t],getAllCodeActions:n=>Md(n,uMr,(c,u)=>gMr(c,u.file,u.start))});function gMr(n,c,u){let d=Qc(c,u),I=Si(d,GC);w.assert(!!I,"Expected position to be owned by a decorator.");let h=_e.createParenthesizedExpression(I.expression);n.replaceNode(c,I.expression,h)}var R9t="fixConvertToMappedObjectType",AMr=[Z.An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead.code];wg({errorCodes:AMr,getCodeActions:function(c){let{sourceFile:u,span:d}=c,I=dMr(u,d.start);if(!I)return;let h=po.ChangeTracker.with(c,R=>pMr(R,u,I)),b=ao(I.container.name);return[rg(R9t,h,[Z.Convert_0_to_mapped_object_type,b],R9t,[Z.Convert_0_to_mapped_object_type,b])]},fixIds:[R9t],getAllCodeActions:n=>Md(n,AMr,(c,u)=>{let d=dMr(u.file,u.start);d&&pMr(c,u.file,d)})});function dMr(n,c){let u=Qc(n,c),d=eo(u.parent.parent,_);if(!d)return;let I=HI(d.parent)?d.parent:eo(d.parent.parent,Wf);if(I)return{indexSignature:d,container:I}}function Tis(n,c){return _e.createTypeAliasDeclaration(n.modifiers,n.name,n.typeParameters,c)}function pMr(n,c,{indexSignature:u,container:d}){let h=(HI(d)?d.members:d.type.members).filter(P=>!_(P)),b=$s(u.parameters),R=_e.createTypeParameterDeclaration(void 0,ps(b.name,sr),b.type),N=_e.createMappedTypeNode($8(u)?_e.createModifier(148):void 0,R,void 0,u.questionToken,u.type,void 0),V=_e.createIntersectionTypeNode([...J8(d),N,...h.length?[_e.createTypeLiteralNode(h)]:v]);n.replaceNode(c,d,Tis(d,V))}var fMr="removeAccidentalCallParentheses",Nis=[Z.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without.code];wg({errorCodes:Nis,getCodeActions(n){let c=Si(Qc(n.sourceFile,n.span.start),cu);if(!c)return;let u=po.ChangeTracker.with(n,d=>{d.deleteRange(n.sourceFile,{pos:c.expression.end,end:c.end})});return[AT(fMr,u,Z.Remove_parentheses)]},fixIds:[fMr]});var D9t="removeUnnecessaryAwait",IMr=[Z.await_has_no_effect_on_the_type_of_this_expression.code];wg({errorCodes:IMr,getCodeActions:function(c){let u=po.ChangeTracker.with(c,d=>CMr(d,c.sourceFile,c.span));if(u.length>0)return[rg(D9t,u,Z.Remove_unnecessary_await,D9t,Z.Remove_all_unnecessary_uses_of_await)]},fixIds:[D9t],getAllCodeActions:n=>Md(n,IMr,(c,u)=>CMr(c,u.file,u))});function CMr(n,c,u){let d=eo(Qc(c,u.start),R=>R.kind===135),I=d&&eo(d.parent,Ob);if(!I)return;let h=I;if(FC(I.parent)){let R=YQ(I.expression,!1);if(sr(R)){let N=_m(I.parent.pos,c);N&&N.kind!==105&&(h=I.parent)}}n.replaceNode(c,h,I.expression)}var mMr=[Z.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both.code],x9t="splitTypeOnlyImport";wg({errorCodes:mMr,fixIds:[x9t],getCodeActions:function(c){let u=po.ChangeTracker.with(c,d=>_Mr(d,hMr(c.sourceFile,c.span),c));if(u.length)return[rg(x9t,u,Z.Split_into_two_separate_import_declarations,x9t,Z.Split_all_invalid_type_only_imports)]},getAllCodeActions:n=>Md(n,mMr,(c,u)=>{_Mr(c,hMr(n.sourceFile,u),n)})});function hMr(n,c){return Si(Qc(n,c.start),mI)}function _Mr(n,c,u){if(!c)return;let d=w.checkDefined(c.importClause);n.replaceNode(u.sourceFile,c,_e.updateImportDeclaration(c,c.modifiers,_e.updateImportClause(d,d.isTypeOnly,d.name,void 0),c.moduleSpecifier,c.attributes)),n.insertNodeAfter(u.sourceFile,c,_e.createImportDeclaration(void 0,_e.updateImportClause(d,d.isTypeOnly,void 0,d.namedBindings),c.moduleSpecifier,c.attributes))}var k9t="fixConvertConstToLet",yMr=[Z.Cannot_assign_to_0_because_it_is_a_constant.code];wg({errorCodes:yMr,getCodeActions:function(c){let{sourceFile:u,span:d,program:I}=c,h=bMr(u,d.start,I);if(h===void 0)return;let b=po.ChangeTracker.with(c,R=>EMr(R,u,h.token));return[JZt(k9t,b,Z.Convert_const_to_let,k9t,Z.Convert_all_const_to_let)]},getAllCodeActions:n=>{let{program:c}=n,u=new Map;return t7(po.ChangeTracker.with(n,d=>{r7(n,yMr,I=>{let h=bMr(I.file,I.start,c);if(h&&R2(u,kg(h.symbol)))return EMr(d,I.file,h.token)})}))},fixIds:[k9t]});function bMr(n,c,u){var d;let h=u.getTypeChecker().getSymbolAtLocation(Qc(n,c));if(h===void 0)return;let b=eo((d=h?.valueDeclaration)==null?void 0:d.parent,yl);if(b===void 0)return;let R=Od(b,87,n);if(R!==void 0)return{symbol:h,token:R}}function EMr(n,c,u){n.replaceNode(c,u,_e.createToken(121))}var G9t="fixExpectedComma",Ris=Z._0_expected.code,BMr=[Ris];wg({errorCodes:BMr,getCodeActions(n){let{sourceFile:c}=n,u=vMr(c,n.span.start,n.errorCode);if(!u)return;let d=po.ChangeTracker.with(n,I=>SMr(I,c,u));return[rg(G9t,d,[Z.Change_0_to_1,";",","],G9t,[Z.Change_0_to_1,";",","])]},fixIds:[G9t],getAllCodeActions:n=>Md(n,BMr,(c,u)=>{let d=vMr(u.file,u.start,u.code);d&&SMr(c,n.sourceFile,d)})});function vMr(n,c,u){let d=Qc(n,c);return d.kind===27&&d.parent&&(tu(d.parent)||If(d.parent))?{node:d}:void 0}function SMr(n,c,{node:u}){let d=_e.createToken(28);n.replaceNode(c,u,d)}var Dis="addVoidToPromise",wMr="addVoidToPromise",TMr=[Z.Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_without_arguments.code,Z.Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise.code];wg({errorCodes:TMr,fixIds:[wMr],getCodeActions(n){let c=po.ChangeTracker.with(n,u=>NMr(u,n.sourceFile,n.span,n.program));if(c.length>0)return[rg(Dis,c,Z.Add_void_to_Promise_resolved_without_a_value,wMr,Z.Add_void_to_all_Promises_resolved_without_a_value)]},getAllCodeActions(n){return Md(n,TMr,(c,u)=>NMr(c,u.file,u,n.program,new Set))}});function NMr(n,c,u,d,I){let h=Qc(c,u.start);if(!sr(h)||!cu(h.parent)||h.parent.expression!==h||h.parent.arguments.length!==0)return;let b=d.getTypeChecker(),R=b.getSymbolAtLocation(h),N=R?.valueDeclaration;if(!N||!Jc(N)||!zS(N.parent.parent)||I?.has(N))return;I?.add(N);let V=xis(N.parent.parent);if(lr(V)){let P=V[0],M=!Is(P)&&!ro(P)&&ro(_e.createUnionTypeNode([P,_e.createKeywordTypeNode(116)]).types[0]);M&&n.insertText(c,P.pos,"("),n.insertText(c,P.end,M?") | void":" | void")}else{let P=b.getResolvedSignature(h.parent),M=P?.parameters[0],te=M&&b.getTypeOfSymbolAtLocation(M,N.parent.parent);so(N)?(!te||te.flags&3)&&(n.insertText(c,N.parent.parent.end,")"),n.insertText(c,Ju(c.text,N.parent.parent.pos),"/** @type {Promise} */(")):(!te||te.flags&2)&&n.insertText(c,N.parent.parent.expression.end,"")}}function xis(n){var c;if(so(n)){if(FC(n.parent)){let u=(c=_x(n.parent))==null?void 0:c.typeExpression.type;if(u&&F(u)&&sr(u.typeName)&&ao(u.typeName)==="Promise")return u.typeArguments}}else return n.typeArguments}var o7={};o(o7,{CompletionKind:()=>JMr,CompletionSource:()=>DMr,SortText:()=>p0,StringCompletions:()=>lqe,SymbolOriginInfoKind:()=>xMr,createCompletionDetails:()=>HFe,createCompletionDetailsForSymbol:()=>M9t,getCompletionEntriesFromSymbols:()=>P9t,getCompletionEntryDetails:()=>css,getCompletionEntrySymbol:()=>uss,getCompletionsAtPosition:()=>Pis,getPropertiesForObjectExpression:()=>oqe,moduleSpecifierResolutionCacheAttemptLimit:()=>RMr,moduleSpecifierResolutionLimit:()=>F9t});var F9t=100,RMr=1e3,p0={LocalDeclarationPriority:"10",LocationPriority:"11",OptionalMember:"12",MemberDeclaredBySpreadAssignment:"13",SuggestedClassMembers:"14",GlobalsOrKeywords:"15",AutoImportSuggestions:"16",ClassMemberSnippets:"17",JavascriptIdentifiers:"18",Deprecated(n){return"z"+n},ObjectLiteralProperty(n,c){return`${n}\0${c}\0`},SortBelow(n){return n+"1"}},DMr=(n=>(n.ThisProperty="ThisProperty/",n.ClassMemberSnippet="ClassMemberSnippet/",n.TypeOnlyAlias="TypeOnlyAlias/",n.ObjectLiteralMethodSnippet="ObjectLiteralMethodSnippet/",n.SwitchCases="SwitchCases/",n.ObjectLiteralMemberWithComma="ObjectLiteralMemberWithComma/",n))(DMr||{}),xMr=(n=>(n[n.ThisType=1]="ThisType",n[n.SymbolMember=2]="SymbolMember",n[n.Export=4]="Export",n[n.Promise=8]="Promise",n[n.Nullable=16]="Nullable",n[n.ResolvedExport=32]="ResolvedExport",n[n.TypeOnlyAlias=64]="TypeOnlyAlias",n[n.ObjectLiteralMethod=128]="ObjectLiteralMethod",n[n.Ignore=256]="Ignore",n[n.ComputedPropertyName=512]="ComputedPropertyName",n[n.SymbolMemberNoExport=2]="SymbolMemberNoExport",n[n.SymbolMemberExport=6]="SymbolMemberExport",n))(xMr||{});function kis(n){return!!(n.kind&1)}function Gis(n){return!!(n.kind&2)}function QFe(n){return!!(n&&n.kind&4)}function Lue(n){return!!(n&&n.kind===32)}function Fis(n){return QFe(n)||Lue(n)||Z9t(n)}function Zis(n){return(QFe(n)||Lue(n))&&!!n.isFromPackageJson}function Lis(n){return!!(n.kind&8)}function Vis(n){return!!(n.kind&16)}function kMr(n){return!!(n&&n.kind&64)}function GMr(n){return!!(n&&n.kind&128)}function Wis(n){return!!(n&&n.kind&256)}function Z9t(n){return!!(n&&n.kind&512)}function FMr(n,c,u,d,I,h,b,R,N){var V,P,M;let te=ql(),re=b||UQ(s0(d.getCompilerOptions())),ue=!1,Ae=0,de=0,Be=0,Fe=0,Ne=N({tryResolve:De,skippedAny:()=>ue,resolvedAny:()=>de>0,resolvedBeyondLimit:()=>de>F9t}),Qe=Fe?` (${(Be/Fe*100).toFixed(1)}% hit rate)`:"";return(V=c.log)==null||V.call(c,`${n}: resolved ${de} module specifiers, plus ${Ae} ambient and ${Be} from cache${Qe}`),(P=c.log)==null||P.call(c,`${n}: response is ${ue?"incomplete":"complete"}`),(M=c.log)==null||M.call(c,`${n}: ${ql()-te}`),Ne;function De(lt,Le){if(Le){let qe=u.getModuleSpecifierForBestExportInfo(lt,I,R);return qe&&Ae++,qe||"failed"}let je=re||h.allowIncompleteCompletions&&de{let ue=tr(N.entries,Ae=>{var de;if(!Ae.hasAction||!Ae.source||!Ae.data||ZMr(Ae.data))return Ae;if(!lQr(Ae.name,P))return;let{origin:Be}=w.checkDefined(KMr(Ae.name,Ae.data,d,I)),Fe=M.get(c.path,Ae.data.exportMapKey),Ne=Fe&&re.tryResolve(Fe,!Jl(N2(Be.moduleSymbol.name)));if(Ne==="skipped")return Ae;if(!Ne||Ne==="failed"){(de=I.log)==null||de.call(I,`Unexpected failure resolving auto import for '${Ae.name}' from '${Ae.source}'`);return}let Qe={...Be,kind:32,moduleSpecifier:Ne.moduleSpecifier};return Ae.data=YMr(Qe),Ae.source=W9t(Qe),Ae.sourceDisplay=[P2(Qe.moduleSpecifier)],Ae});return re.skippedAny()||(N.isIncomplete=void 0),ue});return N.entries=te,N.flags=(N.flags||0)|4,N.optionalReplacementSpan=PMr(V),N}function L9t(n){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!1,entries:n}}function LMr(n,c,u,d,I,h){let b=Qc(n,c);if(!X9(b)&&!aT(b))return[];let R=aT(b)?b:b.parent;if(!aT(R))return[];let N=R.parent;if(!$l(N))return[];let V=n0(n),P=I.includeCompletionsWithSnippetText||void 0,M=ft(R.tags,te=>FB(te)&&te.getEnd()<=c);return tr(N.parameters,te=>{if(!WR(te).length){if(sr(te.name)){let re={tabstop:1},ue=te.name.text,Ae=p0e(ue,te.initializer,te.dotDotDotToken,V,!1,!1,u,d,I),de=P?p0e(ue,te.initializer,te.dotDotDotToken,V,!1,!0,u,d,I,re):void 0;return h&&(Ae=Ae.slice(1),de&&(de=de.slice(1))),{name:Ae,kind:"parameter",sortText:p0.LocationPriority,insertText:P?de:void 0,isSnippet:P}}else if(te.parent.parameters.indexOf(te)===M){let re=`param${M}`,ue=VMr(re,te.name,te.initializer,te.dotDotDotToken,V,!1,u,d,I),Ae=P?VMr(re,te.name,te.initializer,te.dotDotDotToken,V,!0,u,d,I):void 0,de=ue.join(G1(d)+"* "),Be=Ae?.join(G1(d)+"* ");return h&&(de=de.slice(1),Be&&(Be=Be.slice(1))),{name:de,kind:"parameter",sortText:p0.LocationPriority,insertText:P?Be:void 0,isSnippet:P}}}})}function VMr(n,c,u,d,I,h,b,R,N){if(!I)return[p0e(n,u,d,I,!1,h,b,R,N,{tabstop:1})];return V(n,c,u,d,{tabstop:1});function V(M,te,re,ue,Ae){if(Vg(te)&&!ue){let Be={tabstop:Ae.tabstop},Fe=p0e(M,re,ue,I,!0,h,b,R,N,Be),Ne=[];for(let Qe of te.elements){let De=P(M,Qe,Be);if(De)Ne.push(...De);else{Ne=void 0;break}}if(Ne)return Ae.tabstop=Be.tabstop,[Fe,...Ne]}return[p0e(M,re,ue,I,!1,h,b,R,N,Ae)]}function P(M,te,re){if(!te.propertyName&&sr(te.name)||sr(te.name)){let ue=te.propertyName?wQ(te.propertyName):te.name.text;if(!ue)return;let Ae=`${M}.${ue}`;return[p0e(Ae,te.initializer,te.dotDotDotToken,I,!1,h,b,R,N,re)]}else if(te.propertyName){let ue=wQ(te.propertyName);return ue&&V(`${M}.${ue}`,te.name,te.initializer,te.dotDotDotToken,re)}}}function p0e(n,c,u,d,I,h,b,R,N,V){if(h&&w.assertIsDefined(V),c&&(n=Mis(n,c)),h&&(n=AV(n)),d){let P="*";if(I)w.assert(!u,"Cannot annotate a rest parameter with type 'Object'."),P="Object";else{if(c){let re=b.getTypeAtLocation(c.parent);if(!(re.flags&16385)){let ue=c.getSourceFile(),de=W2(ue,N)===0?268435456:0,Be=b.typeToTypeNode(re,Si(c,$l),de);if(Be){let Fe=h?tqe({removeComments:!0,module:R.module,target:R.target}):SV({removeComments:!0,module:R.module,target:R.target});co(Be,1),P=Fe.printNode(4,Be,ue)}}}h&&P==="*"&&(P=`\${${V.tabstop++}:${P}}`)}let M=!I&&u?"...":"",te=h?`\${${V.tabstop++}}`:"";return`@param {${M}${P}} ${n} ${te}`}else{let P=h?`\${${V.tabstop++}}`:"";return`@param ${n} ${P}`}}function Mis(n,c){let u=c.getText().trim();return u.includes(` -`)||u.length>80?`[${n}]`:`[${n}=${u}]`}function Qis(n){return{name:vr(n),kind:"keyword",kindModifiers:"",sortText:p0.GlobalsOrKeywords}}function Yis(n,c){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:c,entries:n.slice()}}function WMr(n,c,u){return{kind:4,keywordCompletions:zMr(n,c),isNewIdentifierLocation:u}}function His(n){switch(n){case 156:return 8;default:w.fail("Unknown mapping from SyntaxKind to KeywordCompletionFilters")}}function PMr(n){return n?.kind===80?Ey(n):void 0}function Xis(n,c,u,d,I,h,b,R,N,V){let{symbols:P,contextToken:M,completionKind:te,isInSnippetScope:re,isNewIdentifierLocation:ue,location:Ae,propertyAccessToConvert:de,keywordFilters:Be,symbolToOriginInfoMap:Fe,recommendedCompletion:Ne,isJsxInitializer:Qe,isTypeOnlyLocation:De,isJsxIdentifierExpected:lt,isRightOfOpenTag:Le,isRightOfDotOrQuestionDot:je,importStatementCompletion:st,insideJsDocTagTypeExpression:nt,symbolToSortTextMap:qe,hasUnresolvedAutoImports:it}=h,It=h.literals,dt=u.getTypeChecker();if(Zee(n.scriptKind)===1){let Kt=Uis(Ae,n);if(Kt)return Kt}let wt=Si(M,cte);if(wt&&(Lhe(M)||tV(M,wt.expression))){let Kt=pFe(dt,wt.parent.clauses);It=It.filter(Tt=>!Kt.hasValue(Tt)),P.forEach((Tt,Lt)=>{if(Tt.valueDeclaration&&_V(Tt.valueDeclaration)){let kt=dt.getConstantValue(Tt.valueDeclaration);kt!==void 0&&Kt.hasValue(kt)&&(Fe[Lt]={kind:256})}})}let vt=jr(),Ye=OMr(n,d);if(Ye&&!ue&&(!P||P.length===0)&&Be===0)return;let ht=P9t(P,vt,void 0,M,Ae,N,n,c,u,iA(d),I,te,b,d,R,De,de,lt,Qe,st,Ne,Fe,qe,lt,Le,V);if(Be!==0)for(let Kt of zMr(Be,!nt&&n0(n)))(De&&mue(Hn(Kt.name))||!De&&Nss(Kt.name)||!ht.has(Kt.name))&&(ht.add(Kt.name),Gr(vt,Kt,YFe,void 0,!0));for(let Kt of Iss(M,N))ht.has(Kt.name)||(ht.add(Kt.name),Gr(vt,Kt,YFe,void 0,!0));for(let Kt of It){let Tt=jis(n,b,Kt);ht.add(Tt.name),Gr(vt,Tt,YFe,void 0,!0)}Ye||Kis(n,Ae.pos,ht,iA(d),vt);let Et;if(b.includeCompletionsWithInsertText&&M&&!Le&&!je&&(Et=Si(M,xle))){let Kt=MMr(Et,n,b,d,c,u,R);Kt&&vt.push(Kt.entry)}return{flags:h.flags,isGlobalCompletion:re,isIncomplete:b.allowIncompleteCompletions&&it?!0:void 0,isMemberCompletion:Jis(te),isNewIdentifierLocation:ue,optionalReplacementSpan:PMr(Ae),entries:vt}}function OMr(n,c){return!n0(n)||!!h6(n,c)}function MMr(n,c,u,d,I,h,b){let R=n.clauses,N=h.getTypeChecker(),V=N.getTypeAtLocation(n.parent.expression);if(V&&V.isUnion()&&he(V.types,P=>P.isLiteral())){let P=pFe(N,R),M=iA(d),te=W2(c,u),re=d0.createImportAdder(c,h,u,I),ue=[];for(let De of V.types)if(De.flags&1024){w.assert(De.symbol,"An enum member type should have a symbol"),w.assert(De.symbol.parent,"An enum member type should have a parent symbol (the enum symbol)");let lt=De.symbol.valueDeclaration&&N.getConstantValue(De.symbol.valueDeclaration);if(lt!==void 0){if(P.hasValue(lt))continue;P.addValue(lt)}let Le=d0.typeToAutoImportableTypeNode(N,re,De,n,M);if(!Le)return;let je=$ze(Le,M,te);if(!je)return;ue.push(je)}else if(!P.hasValue(De.value))switch(typeof De.value){case"object":ue.push(De.value.negative?_e.createPrefixUnaryExpression(41,_e.createBigIntLiteral({negative:!1,base10Value:De.value.base10Value})):_e.createBigIntLiteral(De.value));break;case"number":ue.push(De.value<0?_e.createPrefixUnaryExpression(41,_e.createNumericLiteral(-De.value)):_e.createNumericLiteral(De.value));break;case"string":ue.push(_e.createStringLiteral(De.value,te===0));break}if(ue.length===0)return;let Ae=Ot(ue,De=>_e.createCaseClause(De,[])),de=WZ(I,b?.options),Be=tqe({removeComments:!0,module:d.module,target:d.target,newLine:q_e(de)}),Fe=b?De=>Be.printAndFormatNode(4,De,c,b):De=>Be.printNode(4,De,c),Ne=Ot(Ae,(De,lt)=>u.includeCompletionsWithSnippetText?`${Fe(De)}$${lt+1}`:`${Fe(De)}`).join(de);return{entry:{name:`${Be.printNode(4,Ae[0],c)} ...`,kind:"",sortText:p0.GlobalsOrKeywords,insertText:Ne,hasAction:re.hasFixes()||void 0,source:"SwitchCases/",isSnippet:u.includeCompletionsWithSnippetText?!0:void 0},importAdder:re}}}function $ze(n,c,u){switch(n.kind){case 183:let d=n.typeName;return eqe(d,c,u);case 199:let I=$ze(n.objectType,c,u),h=$ze(n.indexType,c,u);return I&&h&&_e.createElementAccessExpression(I,h);case 201:let b=n.literal;switch(b.kind){case 11:return _e.createStringLiteral(b.text,u===0);case 9:return _e.createNumericLiteral(b.text,b.numericLiteralFlags)}return;case 196:let R=$ze(n.type,c,u);return R&&(sr(R)?R:_e.createParenthesizedExpression(R));case 186:return eqe(n.exprName,c,u);case 205:w.fail("We should not get an import type after calling 'codefix.typeToAutoImportableTypeNode'.")}}function eqe(n,c,u){if(sr(n))return n;let d=Sc(n.right.escapedText);return hhe(d,c)?_e.createPropertyAccessExpression(eqe(n.left,c,u),d):_e.createElementAccessExpression(eqe(n.left,c,u),_e.createStringLiteral(d,u===0))}function Jis(n){switch(n){case 0:case 3:case 2:return!0;default:return!1}}function Uis(n,c){let u=Si(n,d=>{switch(d.kind){case 287:return!0;case 44:case 32:case 80:case 211:return!1;default:return"quit"}});if(u){let d=!!Od(u,32,c),b=u.parent.openingElement.tagName.getText(c)+(d?"":">"),R=Ey(u.tagName),N={name:b,kind:"class",kindModifiers:void 0,sortText:p0.LocationPriority};return{isGlobalCompletion:!1,isMemberCompletion:!0,isNewIdentifierLocation:!1,optionalReplacementSpan:R,entries:[N]}}}function Kis(n,c,u,d,I){bze(n).forEach((h,b)=>{if(h===c)return;let R=Sc(b);!u.has(R)&&Ke(R,d)&&(u.add(R),Gr(I,{name:R,kind:"warning",kindModifiers:"",sortText:p0.JavascriptIdentifiers,isFromUncheckedFile:!0},YFe))})}function V9t(n,c,u){return typeof u=="object"?gV(u)+"n":Xa(u)?Bue(n,c,u):JSON.stringify(u)}function jis(n,c,u){return{name:V9t(n,c,u),kind:"string",kindModifiers:"",sortText:p0.LocationPriority}}function zis(n,c,u,d,I,h,b,R,N,V,P,M,te,re,ue,Ae,de,Be,Fe,Ne,Qe,De,lt,Le){var je,st;let nt,qe,it=z7e(u,h),It,dt,wt=W9t(M),vt,Ye,ht,Et=N.getTypeChecker(),Kt=M&&Vis(M),Tt=M&&Gis(M)||P;if(M&&kis(M))nt=P?`this${Kt?"?.":""}[${HMr(b,Fe,V)}]`:`this${Kt?"?.":"."}${V}`;else if((Tt||Kt)&&re){nt=Tt?P?`[${HMr(b,Fe,V)}]`:`[${V}]`:V,(Kt||re.questionDotToken)&&(nt=`?.${nt}`);let kt=Od(re,25,b)||Od(re,29,b);if(!kt)return;let Zt=uc(V,re.name.text)?re.name.end:kt.end;it=Wd(kt.getStart(b),Zt)}if(ue&&(nt===void 0&&(nt=V),nt=`{${nt}}`,typeof ue!="boolean"&&(it=Ey(ue,b))),M&&Lis(M)&&re){nt===void 0&&(nt=V);let kt=_m(re.pos,b),Zt="";kt&&rFe(kt.end,kt.parent,b)&&(Zt=";"),Zt+=`(await ${re.expression.getText()})`,nt=P?`${Zt}${nt}`:`${Zt}${Kt?"?.":"."}${nt}`;let jt=eo(re.parent,Ob)?re.parent:re.expression;it=Wd(jt.getStart(b),re.end)}if(Lue(M)&&(vt=[P2(M.moduleSpecifier)],Ae&&({insertText:nt,replacementSpan:it}=iss(V,Ae,M,de,b,Be,Fe),dt=Fe.includeCompletionsWithSnippetText?!0:void 0)),M?.kind===64&&(Ye=!0),Ne===0&&d&&((je=_m(d.pos,b,d))==null?void 0:je.kind)!==28&&(cI(d.parent.parent)||Pb(d.parent.parent)||sb(d.parent.parent)||Mx(d.parent)||((st=Si(d.parent,KC))==null?void 0:st.getLastToken(b))===d||G_(d.parent)&&Ll(b,d.getEnd()).line!==Ll(b,h).line)&&(wt="ObjectLiteralMemberWithComma/",Ye=!0),Fe.includeCompletionsWithClassMemberSnippets&&Fe.includeCompletionsWithInsertText&&Ne===3&&qis(n,I,b)){let kt,Zt=QMr(R,N,Be,Fe,V,n,I,h,d,Qe);if(Zt)({insertText:nt,filterText:qe,isSnippet:dt,importAdder:kt}=Zt),(kt?.hasFixes()||Zt.eraseRange)&&(Ye=!0,wt="ClassMemberSnippet/");else return}if(M&&GMr(M)&&({insertText:nt,isSnippet:dt,labelDetails:ht}=M,Fe.useLabelDetailsInCompletionEntries||(V=V+ht.detail,ht=void 0),wt="ObjectLiteralMethodSnippet/",c=p0.SortBelow(c)),De&&!lt&&Fe.includeCompletionsWithSnippetText&&Fe.jsxAttributeCompletionStyle&&Fe.jsxAttributeCompletionStyle!=="none"&&!(NN(I.parent)&&I.parent.initializer)){let kt=Fe.jsxAttributeCompletionStyle==="braces",Zt=Et.getTypeOfSymbolAtLocation(n,I);Fe.jsxAttributeCompletionStyle==="auto"&&!(Zt.flags&528)&&!(Zt.flags&1048576&&be(Zt.types,Dr=>!!(Dr.flags&528)))&&(Zt.flags&402653316||Zt.flags&1048576&&he(Zt.types,Dr=>!!(Dr.flags&402686084||NGt(Dr)))?(nt=`${AV(V)}=${Bue(b,Fe,"$1")}`,dt=!0):kt=!0),kt&&(nt=`${AV(V)}={$1}`,dt=!0)}if(nt!==void 0&&!Fe.includeCompletionsWithInsertText)return;(QFe(M)||Lue(M))&&(It=YMr(M),Ye=!Ae);let Lt=Si(I,Qce);if(Lt?.kind===275){let kt=Hn(V);Lt&&kt&&(kt===135||_me(kt))&&(nt=`${V} as ${V}_`)}return{name:V,kind:MZ.getSymbolKind(Et,n,I),kindModifiers:MZ.getSymbolModifiers(Et,n),sortText:c,source:wt,hasAction:Ye?!0:void 0,isRecommended:sss(n,te,Et)||void 0,insertText:nt,filterText:qe,replacementSpan:it,sourceDisplay:vt,labelDetails:ht,isSnippet:dt,isPackageJsonImport:Zis(M)||void 0,isImportStatementCompletion:!!Ae||void 0,data:It,...Le?{symbol:n}:void 0}}function qis(n,c,u){return so(c)?!1:!!(n.flags&106500)&&(Sa(c)||c.parent&&c.parent.parent&&rC(c.parent)&&c===c.parent.name&&c.parent.getLastToken(u)===c.parent.name&&Sa(c.parent.parent)||c.parent&&Ate(c)&&Sa(c.parent))}function QMr(n,c,u,d,I,h,b,R,N,V){let P=Si(b,Sa);if(!P)return;let M,te=I,re=I,ue=c.getTypeChecker(),Ae=b.getSourceFile(),de=tqe({removeComments:!0,module:u.module,target:u.target,omitTrailingSemicolon:!1,newLine:q_e(WZ(n,V?.options))}),Be=d0.createImportAdder(Ae,c,d,n),Fe;if(d.includeCompletionsWithSnippetText){M=!0;let st=_e.createEmptyStatement();Fe=_e.createBlock([st],!0),Va(st,{kind:0,order:0})}else Fe=_e.createBlock([],!0);let Ne=0,{modifiers:Qe,range:De,decorators:lt}=$is(N,Ae,R),Le=Qe&64&&P.modifierFlagsCache&64,je=[];if(d0.addNewNodeForMemberSymbol(h,P,Ae,{program:c,host:n},d,Be,st=>{let nt=0;Le&&(nt|=64),rC(st)&&ue.getMemberOverrideModifierStatus(P,st,h)===1&&(nt|=16),je.length||(Ne=st.modifierFlagsCache|nt),st=_e.replaceModifiers(st,Ne),je.push(st)},Fe,d0.PreserveOptionalFlags.Property,!!Le),je.length){let st=h.flags&8192,nt=Ne|16|1;st?nt|=1024:nt|=136;let qe=Qe&nt;if(Qe&~nt)return;if(Ne&4&&qe&1&&(Ne&=-5),qe!==0&&!(qe&1)&&(Ne&=-2),Ne|=qe,je=je.map(It=>_e.replaceModifiers(It,Ne)),lt?.length){let It=je[je.length-1];pY(It)&&(je[je.length-1]=_e.replaceDecoratorsAndModifiers(It,lt.concat(lN(It)||[])))}let it=131073;V?te=de.printAndFormatSnippetList(it,_e.createNodeArray(je),Ae,V):te=de.printSnippetList(it,_e.createNodeArray(je),Ae)}return{insertText:te,filterText:re,isSnippet:M,importAdder:Be,eraseRange:De}}function $is(n,c,u){if(!n||Ll(c,u).line>Ll(c,n.getEnd()).line)return{modifiers:0};let d=0,I,h,b={pos:u,end:u};if(Ql(n.parent)&&(h=ess(n))){n.parent.modifiers&&(d|=xv(n.parent.modifiers)&98303,I=n.parent.modifiers.filter(GC)||[],b.pos=Math.min(...n.parent.modifiers.map(N=>N.getStart(c))));let R=VQ(h);d&R||(d|=R,b.pos=Math.min(b.pos,n.getStart(c))),n.parent.name!==n&&(b.end=n.parent.name.getStart(c))}return{modifiers:d,decorators:I,range:b.posR.getSignaturesOfType(Ne,0).length>0);if(Fe.length===1)re=Fe[0];else return}if(R.getSignaturesOfType(re,0).length!==1)return;let Ae=R.typeToTypeNode(re,c,te,d0.getNoopSymbolTrackerWithResolver({program:d,host:I}));if(!Ae||!Y(Ae))return;let de;if(h.includeCompletionsWithSnippetText){let Fe=_e.createEmptyStatement();de=_e.createBlock([Fe],!0),Va(Fe,{kind:0,order:0})}else de=_e.createBlock([],!0);let Be=Ae.parameters.map(Fe=>_e.createParameterDeclaration(void 0,Fe.dotDotDotToken,Fe.name,void 0,void 0,Fe.initializer));return _e.createMethodDeclaration(void 0,void 0,V,void 0,void 0,Be,void 0,de)}default:return}}function tqe(n){let c,u=po.createWriter(G1(n)),d=SV(n,u),I={...u,write:te=>h(te,()=>u.write(te)),nonEscapingWrite:u.write,writeLiteral:te=>h(te,()=>u.writeLiteral(te)),writeStringLiteral:te=>h(te,()=>u.writeStringLiteral(te)),writeSymbol:(te,re)=>h(te,()=>u.writeSymbol(te,re)),writeParameter:te=>h(te,()=>u.writeParameter(te)),writeComment:te=>h(te,()=>u.writeComment(te)),writeProperty:te=>h(te,()=>u.writeProperty(te))};return{printSnippetList:b,printAndFormatSnippetList:N,printNode:V,printAndFormatNode:M};function h(te,re){let ue=AV(te);if(ue!==te){let Ae=u.getTextPos();re();let de=u.getTextPos();c=Hr(c||(c=[]),{newText:ue,span:{start:Ae,length:de-Ae}})}else re()}function b(te,re,ue){let Ae=R(te,re,ue);return c?po.applyChanges(Ae,c):Ae}function R(te,re,ue){return c=void 0,I.clear(),d.writeList(te,re,ue,I),I.getText()}function N(te,re,ue,Ae){let de={text:R(te,re,ue),getLineAndCharacterOfPosition(Qe){return Ll(this,Qe)}},Be=dFe(Ae,ue),Fe=Fr(re,Qe=>{let De=po.assignPositionsToNode(Qe);return jC.formatNodeGivenIndentation(De,de,ue.languageVariant,0,0,{...Ae,options:Be})}),Ne=c?Cl(vi(Fe,c),(Qe,De)=>Wp(Qe.span,De.span)):Fe;return po.applyChanges(de.text,Ne)}function V(te,re,ue){let Ae=P(te,re,ue);return c?po.applyChanges(Ae,c):Ae}function P(te,re,ue){return c=void 0,I.clear(),d.writeNode(te,re,ue,I),I.getText()}function M(te,re,ue,Ae){let de={text:P(te,re,ue),getLineAndCharacterOfPosition(De){return Ll(this,De)}},Be=dFe(Ae,ue),Fe=po.assignPositionsToNode(re),Ne=jC.formatNodeGivenIndentation(Fe,de,ue.languageVariant,0,0,{...Ae,options:Be}),Qe=c?Cl(vi(Ne,c),(De,lt)=>Wp(De.span,lt.span)):Ne;return po.applyChanges(de.text,Qe)}}function YMr(n){let c=n.fileName?void 0:N2(n.moduleSymbol.name),u=n.isFromPackageJson?!0:void 0;return Lue(n)?{exportName:n.exportName,exportMapKey:n.exportMapKey,moduleSpecifier:n.moduleSpecifier,ambientModuleName:c,fileName:n.fileName,isPackageJsonImport:u}:{exportName:n.exportName,exportMapKey:n.exportMapKey,fileName:n.fileName,ambientModuleName:n.fileName?void 0:N2(n.moduleSymbol.name),isPackageJsonImport:n.isFromPackageJson?!0:void 0}}function nss(n,c,u){let d=n.exportName==="default",I=!!n.isPackageJsonImport;return ZMr(n)?{kind:32,exportName:n.exportName,exportMapKey:n.exportMapKey,moduleSpecifier:n.moduleSpecifier,symbolName:c,fileName:n.fileName,moduleSymbol:u,isDefaultExport:d,isFromPackageJson:I}:{kind:4,exportName:n.exportName,exportMapKey:n.exportMapKey,symbolName:c,fileName:n.fileName,moduleSymbol:u,isDefaultExport:d,isFromPackageJson:I}}function iss(n,c,u,d,I,h,b){let R=c.replacementSpan,N=AV(Bue(I,b,u.moduleSpecifier)),V=u.isDefaultExport?1:u.exportName==="export="?2:0,P=b.includeCompletionsWithSnippetText?"$1":"",M=d0.getImportKind(I,V,h,!0),te=c.couldBeTypeOnlyImportSpecifier,re=c.isTopLevelTypeOnly?` ${vr(156)} `:" ",ue=te?`${vr(156)} `:"",Ae=d?";":"";switch(M){case 3:return{replacementSpan:R,insertText:`import${re}${AV(n)}${P} = require(${N})${Ae}`};case 1:return{replacementSpan:R,insertText:`import${re}${AV(n)}${P} from ${N}${Ae}`};case 2:return{replacementSpan:R,insertText:`import${re}* as ${AV(n)} from ${N}${Ae}`};case 0:return{replacementSpan:R,insertText:`import${re}{ ${ue}${AV(n)}${P} } from ${N}${Ae}`}}}function HMr(n,c,u){return/^\d+$/.test(u)?u:Bue(n,c,u)}function sss(n,c,u){return n===c||!!(n.flags&1048576)&&u.getExportSymbolOfSymbol(n)===c}function W9t(n){if(QFe(n))return N2(n.moduleSymbol.name);if(Lue(n))return n.moduleSpecifier;if(n?.kind===1)return"ThisProperty/";if(n?.kind===64)return"TypeOnlyAlias/"}function P9t(n,c,u,d,I,h,b,R,N,V,P,M,te,re,ue,Ae,de,Be,Fe,Ne,Qe,De,lt,Le,je,st=!1){let nt=ql(),qe=Sss(d,I),it=K_e(b),It=N.getTypeChecker(),dt=new Map;for(let Ye=0;Yemr.getSourceFile()===I.getSourceFile()));dt.set(Tt,jt),Gr(c,Dr,YFe,void 0,!0)}return P("getCompletionsAtPosition: getCompletionEntriesFromSymbols: "+(ql()-nt)),{has:Ye=>dt.has(Ye),add:Ye=>dt.set(Ye,!0)};function wt(Ye,ht){var Et;let Kt=Ye.flags;if(!Gc(I)){if(tf(I.parent))return!0;if(eo(qe,zs)&&Ye.valueDeclaration===qe)return!1;let Tt=Ye.valueDeclaration??((Et=Ye.declarations)==null?void 0:Et[0]);if(qe&&Tt&&(qp(qe)&&qp(Tt)||Jc(qe)&&Jc(Tt))){let kt=Tt.pos,Zt=Jc(qe)?qe.parent.parameters:bo(qe.parent)?void 0:qe.parent.typeParameters;if(kt>=qe.pos&&Zt&&ktV9t(u,b,Ne)===I.name);return Fe!==void 0?{type:"literal",literal:Fe}:le(V,(Ne,Qe)=>{let De=re[Qe],lt=nqe(Ne,iA(R),De,te,N.isJsxIdentifierExpected);return lt&<.name===I.name&&(I.source==="ClassMemberSnippet/"&&Ne.flags&106500||I.source==="ObjectLiteralMethodSnippet/"&&Ne.flags&8196||W9t(De)===I.source||I.source==="ObjectLiteralMemberWithComma/")?{type:"symbol",symbol:Ne,location:M,origin:De,contextToken:ue,previousToken:Ae,isJsxInitializer:de,isTypeOnlyLocation:Be}:void 0})||{type:"none"}}function css(n,c,u,d,I,h,b,R,N){let V=n.getTypeChecker(),P=n.getCompilerOptions(),{name:M,source:te,data:re}=I,{previousToken:ue,contextToken:Ae}=rqe(d,u);if(U6(u,d,ue))return lqe.getStringLiteralCompletionDetails(M,u,d,ue,n,h,N,R);let de=XMr(n,c,u,d,I,h,R);switch(de.type){case"request":{let{request:Be}=de;switch(Be.kind){case 1:return mP.getJSDocTagNameCompletionDetails(M);case 2:return mP.getJSDocTagCompletionDetails(M);case 3:return mP.getJSDocParameterNameCompletionDetails(M);case 4:return lr(Be.keywordCompletions,Fe=>Fe.name===M)?O9t(M,"keyword",5):void 0;default:return w.assertNever(Be)}}case"symbol":{let{symbol:Be,location:Fe,contextToken:Ne,origin:Qe,previousToken:De}=de,{codeActions:lt,sourceDisplay:Le}=lss(M,Fe,Ne,Qe,Be,n,h,P,u,d,De,b,R,re,te,N),je=Z9t(Qe)?Qe.symbolName:Be.name;return M9t(Be,je,V,u,Fe,N,lt,Le)}case"literal":{let{literal:Be}=de;return O9t(V9t(u,R,Be),"string",typeof Be=="string"?8:7)}case"cases":{let Be=MMr(Ae.parent,u,R,n.getCompilerOptions(),h,n,void 0);if(Be?.importAdder.hasFixes()){let{entry:Fe,importAdder:Ne}=Be,Qe=po.ChangeTracker.with({host:h,formatContext:b,preferences:R},Ne.writeFixes);return{name:Fe.name,kind:"",kindModifiers:"",displayParts:[],sourceDisplay:void 0,codeActions:[{changes:Qe,description:EY([Z.Includes_imports_of_types_referenced_by_0,M])}]}}return{name:M,kind:"",kindModifiers:"",displayParts:[],sourceDisplay:void 0}}case"none":return jMr().some(Be=>Be.name===M)?O9t(M,"keyword",5):void 0;default:w.assertNever(de)}}function O9t(n,c,u){return HFe(n,"",c,[Qb(n,u)])}function M9t(n,c,u,d,I,h,b,R){let{displayParts:N,documentation:V,symbolKind:P,tags:M}=u.runWithCancellationToken(h,te=>MZ.getSymbolDisplayPartsDocumentationAndSymbolKind(te,n,d,I,I,7));return HFe(c,MZ.getSymbolModifiers(u,n),P,N,V,M,b,R)}function HFe(n,c,u,d,I,h,b,R){return{name:n,kindModifiers:c,kind:u,displayParts:d,documentation:I,tags:h,codeActions:b,source:R,sourceDisplay:R}}function lss(n,c,u,d,I,h,b,R,N,V,P,M,te,re,ue,Ae){if(re?.moduleSpecifier&&P&&iQr(u||P,N).replacementSpan)return{codeActions:void 0,sourceDisplay:[P2(re.moduleSpecifier)]};if(ue==="ClassMemberSnippet/"){let{importAdder:lt,eraseRange:Le}=QMr(b,h,R,te,n,I,c,V,u,M);if(lt?.hasFixes()||Le)return{sourceDisplay:void 0,codeActions:[{changes:po.ChangeTracker.with({host:b,formatContext:M,preferences:te},st=>{lt&<.writeFixes(st),Le&&st.deleteRange(N,Le)}),description:lt?.hasFixes()?EY([Z.Includes_imports_of_types_referenced_by_0,n]):EY([Z.Update_modifiers_of_0,n])}]}}if(kMr(d)){let lt=d0.getPromoteTypeOnlyCompletionAction(N,d.declaration.name,h,b,M,te);return w.assertIsDefined(lt,"Expected to have a code action for promoting type-only alias"),{codeActions:[lt],sourceDisplay:void 0}}if(ue==="ObjectLiteralMemberWithComma/"&&u){let lt=po.ChangeTracker.with({host:b,formatContext:M,preferences:te},Le=>Le.insertText(N,u.end,","));if(lt)return{sourceDisplay:void 0,codeActions:[{changes:lt,description:EY([Z.Add_missing_comma_for_object_member_completion_0,n])}]}}if(!d||!(QFe(d)||Lue(d)))return{codeActions:void 0,sourceDisplay:void 0};let de=d.isFromPackageJson?b.getPackageJsonAutoImportProvider().getTypeChecker():h.getTypeChecker(),{moduleSymbol:Be}=d,Fe=de.getMergedSymbol(dh(I.exportSymbol||I,de)),Ne=u?.kind===30&&Jm(u.parent),{moduleSpecifier:Qe,codeAction:De}=d0.getImportCompletionAction(Fe,Be,re?.exportMapKey,N,n,Ne,b,h,M,P&&sr(P)?P.getStart(N):V,te,Ae);return w.assert(!re?.moduleSpecifier||Qe===re.moduleSpecifier),{sourceDisplay:[P2(Qe)],codeActions:[De]}}function uss(n,c,u,d,I,h,b){let R=XMr(n,c,u,d,I,h,b);return R.type==="symbol"?R.symbol:void 0}var JMr=(n=>(n[n.ObjectPropertyDeclaration=0]="ObjectPropertyDeclaration",n[n.Global=1]="Global",n[n.PropertyAccess=2]="PropertyAccess",n[n.MemberLike=3]="MemberLike",n[n.String=4]="String",n[n.None=5]="None",n))(JMr||{});function gss(n,c,u){return le(c&&(c.isUnion()?c.types:[c]),d=>{let I=d&&d.symbol;return I&&I.flags&424&&!TDe(I)?Q9t(I,n,u):void 0})}function Ass(n,c,u,d){let{parent:I}=n;switch(n.kind){case 80:return $Ge(n,d);case 64:switch(I.kind){case 260:return d.getContextualType(I.initializer);case 226:return d.getTypeAtLocation(I.left);case 291:return d.getContextualTypeForJsxAttribute(I);default:return}case 105:return d.getContextualType(I);case 84:let h=eo(I,cte);return h?Eje(h,d):void 0;case 19:return kle(I)&&!Ox(I.parent)&&!gY(I.parent)?d.getContextualTypeForJsxAttribute(I.parent):void 0;default:let b=h0e.getArgumentInfoForCompletions(n,c,u,d);return b?d.getContextualTypeForArgumentAtIndex(b.invocation,b.argumentIndex):eFe(n.kind)&&no(I)&&eFe(I.operatorToken.kind)?d.getTypeAtLocation(I.left):d.getContextualType(n,4)||d.getContextualType(n)}}function Q9t(n,c,u){let d=u.getAccessibleSymbolChain(n,c,-1,!1);return d?$s(d):n.parent&&(dss(n.parent)?n:Q9t(n.parent,c,u))}function dss(n){var c;return!!((c=n.declarations)!=null&&c.some(u=>u.kind===307))}function UMr(n,c,u,d,I,h,b,R,N,V){let P=n.getTypeChecker(),M=OMr(u,d),te=ql(),re=Qc(u,I);c("getCompletionData: Get current token: "+(ql()-te)),te=ql();let ue=LZ(u,I,re);c("getCompletionData: Is inside comment: "+(ql()-te));let Ae=!1,de=!1,Be=!1;if(ue){if(SGt(u,I)){if(u.text.charCodeAt(I-1)===64)return{kind:1};{let Vt=Vv(I,u);if(!/[^*|\s(/)]/.test(u.text.substring(Vt,I)))return{kind:2}}}let bt=Css(re,I);if(bt){if(bt.tagName.pos<=I&&I<=bt.tagName.end)return{kind:1};if(RN(bt))de=!0;else{let Vt=bi(bt);if(Vt&&(re=Qc(u,I),(!re||!eT(re)&&(re.parent.kind!==348||re.parent.name!==re))&&(Ae=Jt(Vt))),!Ae&&FB(bt)&&(wf(bt.name)||bt.name.pos<=I&&I<=bt.name.end))return{kind:3,tag:bt}}}if(!Ae&&!de){c("Returning an empty list because completion was inside a regular comment or plain text part of a JsDoc comment.");return}}te=ql();let Fe=!Ae&&!de&&n0(u),Ne=rqe(I,u),Qe=Ne.previousToken,De=Ne.contextToken;c("getCompletionData: Get previous token: "+(ql()-te));let lt=re,Le,je=!1,st=!1,nt=!1,qe=!1,it=!1,It=!1,dt,wt=lb(u,I),vt=0,Ye=!1,ht=0;if(De){let bt=iQr(De,u);if(bt.keywordCompletion){if(bt.isKeywordOnlyCompletion)return{kind:4,keywordCompletions:[Qis(bt.keywordCompletion)],isNewIdentifierLocation:bt.isNewIdentifierLocation};vt=His(bt.keywordCompletion)}if(bt.replacementSpan&&h.includeCompletionsForImportStatements&&h.includeCompletionsWithInsertText&&(ht|=2,dt=bt,Ye=bt.isNewIdentifierLocation),!bt.replacementSpan&&Nc(De))return c("Returning an empty list because completion was requested in an invalid position."),vt?WMr(vt,Fe,Ku()):void 0;let Vt=De.parent;if(De.kind===25||De.kind===29)switch(je=De.kind===25,st=De.kind===29,Vt.kind){case 211:Le=Vt,lt=Le.expression;let dn=QQ(Le);if(wf(dn)||(cu(lt)||$l(lt))&<.end===De.pos&<.getChildCount(u)&&Na(lt.getChildren(u)).kind!==22)return;break;case 166:lt=Vt.left;break;case 267:lt=Vt.name;break;case 205:lt=Vt;break;case 236:lt=Vt.getFirstToken(u),w.assert(lt.kind===102||lt.kind===105);break;default:return}else if(!dt){if(Vt&&Vt.kind===211&&(De=Vt,Vt=Vt.parent),re.parent===wt)switch(re.kind){case 32:(re.parent.kind===284||re.parent.kind===286)&&(wt=re);break;case 44:re.parent.kind===285&&(wt=re);break}switch(Vt.kind){case 287:De.kind===44&&(qe=!0,wt=De);break;case 226:if(!nQr(Vt))break;case 285:case 284:case 286:It=!0,De.kind===30&&(nt=!0,wt=De);break;case 294:case 293:(Qe.kind===20||Qe.kind===80&&Qe.parent.kind===291)&&(It=!0);break;case 291:if(Vt.initializer===Qe&&Qe.endj6(bt?R.getPackageJsonAutoImportProvider():n,R));if(je||st)Pi();else if(nt)Lt=P.getJsxIntrinsicTagNamesAt(wt),w.assertEachIsDefined(Lt,"getJsxIntrinsicTagNames() should all be defined"),xs(),Kt=1,vt=0;else if(qe){let bt=De.parent.parent.openingElement.tagName,Vt=P.getSymbolAtLocation(bt);Vt&&(Lt=[Vt]),Kt=1,vt=0}else if(!xs())return vt?WMr(vt,Fe,Ye):void 0;c("getCompletionData: Semantic work: "+(ql()-Et));let Vr=Qe&&Ass(Qe,I,u,P),pr=!eo(Qe,XA)&&!It?tr(Vr&&(Vr.isUnion()?Vr.types:[Vr]),bt=>bt.isLiteral()&&!(bt.flags&1024)?bt.value:void 0):[],zr=Qe&&Vr&&gss(Qe,Vr,P);return{kind:0,symbols:Lt,completionKind:Kt,isInSnippetScope:Be,propertyAccessToConvert:Le,isNewIdentifierLocation:Ye,location:wt,keywordFilters:vt,literals:pr,symbolToOriginInfoMap:Zt,recommendedCompletion:zr,previousToken:Qe,contextToken:De,isJsxInitializer:it,insideJsDocTagTypeExpression:Ae,symbolToSortTextMap:Dr,isTypeOnlyLocation:mr,isJsxIdentifierExpected:It,isRightOfOpenTag:nt,isRightOfDotOrQuestionDot:je||st,importStatementCompletion:dt,hasUnresolvedAutoImports:Tt,flags:ht};function $n(bt){switch(bt.kind){case 341:case 348:case 342:case 344:case 346:case 349:case 350:return!0;case 345:return!!bt.constraint;default:return!1}}function bi(bt){if($n(bt)){let Vt=Zv(bt)?bt.constraint:bt.typeExpression;return Vt&&Vt.kind===309?Vt:void 0}if(G6(bt)||Kxe(bt))return bt.class}function Pi(){Kt=2;let bt=r_(lt),Vt=bt&&!lt.isTypeOf||LS(lt.parent)||V_e(De,u,P),dn=TGe(lt);if(w_(lt)||bt||Io(lt)){let On=CC(lt.parent);On&&(Ye=!0);let Mn=P.getSymbolAtLocation(lt);if(Mn&&(Mn=dh(Mn,P),Mn.flags&1920)){let Ii=P.getExportsOfModule(Mn);w.assertEachIsDefined(Ii,"getExportsOfModule() should all be defined");let ds=Vi=>P.isValidPropertyAccess(bt?lt:lt.parent,Vi.name),Es=Vi=>H9t(Vi,P),oo=On?Vi=>{var ko;return!!(Vi.flags&1920)&&!((ko=Vi.declarations)!=null&&ko.every(Yc=>Yc.parent===lt.parent))}:dn?Vi=>Es(Vi)||ds(Vi):Vt||Ae?Es:ds;for(let Vi of Ii)oo(Vi)&&Lt.push(Vi);if(!Vt&&!Ae&&Mn.declarations&&Mn.declarations.some(Vi=>Vi.kind!==307&&Vi.kind!==267&&Vi.kind!==266)){let Vi=P.getTypeOfSymbolAtLocation(Mn,lt).getNonOptionalType(),ko=!1;if(Vi.isNullableType()){let Yc=je&&!st&&h.includeAutomaticOptionalChainCompletions!==!1;(Yc||st)&&(Vi=Vi.getNonNullableType(),Yc&&(ko=!0))}Ns(Vi,!!(lt.flags&65536),ko)}return}}if(!Vt||ZQ(lt)){P.tryGetThisTypeAt(lt,!1);let On=P.getTypeAtLocation(lt).getNonOptionalType();if(Vt)Ns(On.getNonNullableType(),!1,!1);else{let Mn=!1;if(On.isNullableType()){let Ii=je&&!st&&h.includeAutomaticOptionalChainCompletions!==!1;(Ii||st)&&(On=On.getNonNullableType(),Ii&&(Mn=!0))}Ns(On,!!(lt.flags&65536),Mn)}}}function Ns(bt,Vt,dn){Ye=!!bt.getStringIndexType(),st&&lr(bt.getCallSignatures())&&(Ye=!0);let On=lt.kind===205?lt:lt.parent;if(M)for(let Mn of bt.getApparentProperties())P.isValidPropertyAccessForCompletions(On,bt,Mn)&&gi(Mn,!1,dn);else Lt.push(...Gt(aqe(bt,P),Mn=>P.isValidPropertyAccessForCompletions(On,bt,Mn)));if(Vt&&h.includeCompletionsWithInsertText){let Mn=P.getPromisedTypeOfPromise(bt);if(Mn)for(let Ii of Mn.getApparentProperties())P.isValidPropertyAccessForCompletions(On,Mn,Ii)&&gi(Ii,!0,dn)}}function gi(bt,Vt,dn){var On;let Mn=le(bt.declarations,oo=>eo(vl(oo),xg));if(Mn){let oo=jn(Mn.expression),Vi=oo&&P.getSymbolAtLocation(oo),ko=Vi&&Q9t(Vi,De,P),Yc=ko&&kg(ko);if(Yc&&R2(jt,Yc)){let fl=Lt.length;Lt.push(ko);let oa=ko.parent;if(!oa||!G3(oa)||P.tryGetMemberInModuleExportsAndProperties(ko.name,oa)!==ko)Zt[fl]={kind:Es(2)};else{let Da=Jl(N2(oa.name))?(On=b8(oa))==null?void 0:On.fileName:void 0,{moduleSpecifier:ki}=(kt||(kt=d0.createImportSpecifierResolver(u,n,R,h))).getModuleSpecifierForBestExportInfo([{exportKind:0,moduleFileName:Da,isFromPackageJson:!1,moduleSymbol:oa,symbol:ko,targetFlags:dh(ko,P).flags}],I,DZ(wt))||{};if(ki){let Gs={kind:Es(6),moduleSymbol:oa,isDefaultExport:!1,symbolName:ko.name,exportName:ko.name,fileName:Da,moduleSpecifier:ki};Zt[fl]=Gs}}}else if(h.includeCompletionsWithInsertText){if(Yc&&jt.has(Yc))return;ds(bt),Ii(bt),Lt.push(bt)}}else ds(bt),Ii(bt),Lt.push(bt);function Ii(oo){Ess(oo)&&(Dr[kg(oo)]=p0.LocalDeclarationPriority)}function ds(oo){h.includeCompletionsWithInsertText&&(Vt&&R2(jt,kg(oo))?Zt[Lt.length]={kind:Es(8)}:dn&&(Zt[Lt.length]={kind:16}))}function Es(oo){return dn?oo|16:oo}}function jn(bt){return sr(bt)?bt:Io(bt)?jn(bt.expression):void 0}function xs(){return(BA()||kr()||rc()||en()||ct()||rn()||Ec()||St()||xi()||(Vl(),1))===1}function Ec(){return Qt(De)?(Kt=5,Ye=!0,vt=4,1):0}function xi(){let bt=Pr(De),Vt=bt&&P.getContextualType(bt.attributes);if(!Vt)return 0;let dn=bt&&P.getContextualType(bt.attributes,4);return Lt=vi(Lt,Re(oqe(Vt,dn,bt.attributes,P),bt.attributes.properties)),ar(),Kt=3,Ye=!1,1}function rc(){return dt?(Ye=!0,ni(),1):0}function Vl(){vt=_r(De)?5:1,Kt=1,Ye=Ku(),Qe!==De&&w.assert(!!Qe,"Expected 'contextToken' to be defined when different from 'previousToken'.");let bt=Qe!==De?Qe.getStart():I,Vt=nc(De,bt,u)||u;Be=Cc(Vt);let dn=(mr?0:111551)|788968|1920|2097152,On=Qe&&!DZ(Qe);Lt=vi(Lt,P.getSymbolsInScope(Vt,dn)),w.assertEachIsDefined(Lt,"getSymbolsInScope() should all be defined");for(let Mn=0;Mnds.getSourceFile()===u)&&(Dr[kg(Ii)]=p0.GlobalsOrKeywords),On&&!(Ii.flags&111551)){let ds=Ii.declarations&&be(Ii.declarations,Q9);if(ds){let Es={kind:64,declaration:ds};Zt[Mn]=Es}}}if(h.includeCompletionsWithInsertText&&Vt.kind!==307){let Mn=P.tryGetThisTypeAt(Vt,!1,Sa(Vt.parent)?Vt:void 0);if(Mn&&!bss(Mn,u,P))for(let Ii of aqe(Mn,P))Zt[Lt.length]={kind:1},Lt.push(Ii),Dr[kg(Ii)]=p0.SuggestedClassMembers}ni(),mr&&(vt=De&&DE(De.parent)?6:7)}function ul(){var bt;return dt?!0:h.includeCompletionsForModuleExports?u.externalModuleIndicator||u.commonJsModuleIndicator||nje(n.getCompilerOptions())?!0:((bt=n.getSymlinkCache)==null?void 0:bt.call(n).hasAnySymlinks())||!!n.getCompilerOptions().paths||xGt(n):!1}function Cc(bt){switch(bt.kind){case 307:case 228:case 294:case 241:return!0;default:return Ic(bt)}}function _s(){return Ae||de||!!dt&&Ex(wt.parent)||!Wu(De)&&(V_e(De,u,P)||LS(wt)||ir(De))}function Wu(bt){return bt&&(bt.kind===114&&(bt.parent.kind===186||eD(bt.parent))||bt.kind===131&&bt.parent.kind===182)}function ir(bt){if(bt){let Vt=bt.parent.kind;switch(bt.kind){case 59:return Vt===172||Vt===171||Vt===169||Vt===260||PR(Vt);case 64:return Vt===265||Vt===168;case 130:return Vt===234;case 30:return Vt===183||Vt===216;case 96:return Vt===168;case 152:return Vt===238}}return!1}function ni(){var bt,Vt;if(!ul()||(w.assert(!b?.data,"Should not run 'collectAutoImports' when faster path is available via `data`"),b&&!b.source))return;ht|=1;let On=Qe===De&&dt?"":Qe&&sr(Qe)?Qe.text.toLowerCase():"",Mn=(bt=R.getModuleSpecifierCache)==null?void 0:bt.call(R),Ii=$_e(u,R,n,h,V),ds=(Vt=R.getPackageJsonAutoImportProvider)==null?void 0:Vt.call(R),Es=b?void 0:Ote(u,h,R);FMr("collectAutoImports",R,kt||(kt=d0.createImportSpecifierResolver(u,n,R,h)),n,I,h,!!dt,DZ(wt),Vi=>{Ii.search(u.path,nt,(ko,Yc)=>{if(!Ke(ko,iA(R.getCompilationSettings()))||!b&&FQ(ko)||!mr&&!dt&&!(Yc&111551)||mr&&!(Yc&790504))return!1;let fl=ko.charCodeAt(0);return nt&&(fl<65||fl>90)?!1:b?!0:lQr(ko,On)},(ko,Yc,fl,oa)=>{if(b&&!lr(ko,JA=>b.source===N2(JA.moduleSymbol.name))||(ko=Gt(ko,oo),!ko.length))return;let Da=Vi.tryResolve(ko,fl)||{};if(Da==="failed")return;let ki=ko[0],Gs;Da!=="skipped"&&({exportInfo:ki=ko[0],moduleSpecifier:Gs}=Da);let ri=ki.exportKind===1,hu=ri&&n6(w.checkDefined(ki.symbol))||w.checkDefined(ki.symbol);gs(hu,{kind:Gs?32:4,moduleSpecifier:Gs,symbolName:Yc,exportMapKey:oa,exportName:ki.exportKind===2?"export=":w.checkDefined(ki.symbol).name,fileName:ki.moduleFileName,isDefaultExport:ri,moduleSymbol:ki.moduleSymbol,isFromPackageJson:ki.isFromPackageJson})}),Tt=Vi.skippedAny(),ht|=Vi.resolvedAny()?8:0,ht|=Vi.resolvedBeyondLimit()?16:0});function oo(Vi){let ko=eo(Vi.moduleSymbol.valueDeclaration,Gc);if(!ko){let Yc=N2(Vi.moduleSymbol.name);return kN.nodeCoreModules.has(Yc)&&uc(Yc,"node:")!==AFe(u,n)?!1:Es?Es.allowsImportingAmbientModule(Vi.moduleSymbol,Pt(Vi.isFromPackageJson)):!0}return Zje(Vi.isFromPackageJson?ds:n,u,ko,h,Es,Pt(Vi.isFromPackageJson),Mn)}}function gs(bt,Vt){let dn=kg(bt);Dr[dn]!==p0.GlobalsOrKeywords&&(Zt[Lt.length]=Vt,Dr[dn]=dt?p0.LocationPriority:p0.AutoImportSuggestions,Lt.push(bt))}function Hs(bt,Vt){so(wt)||bt.forEach(dn=>{if(!qa(dn))return;let On=nqe(dn,iA(d),void 0,0,!1);if(!On)return;let{name:Mn}=On,Ii=tss(dn,Mn,Vt,n,R,d,h,N);if(!Ii)return;let ds={kind:128,...Ii};ht|=32,Zt[Lt.length]=ds,Lt.push(dn)})}function qa(bt){return!!(bt.flags&8196)}function nc(bt,Vt,dn){let On=bt;for(;On&&!M7e(On,Vt,dn);)On=On.parent;return On}function Nc(bt){let Vt=ql(),dn=Bi(bt)||cr(bt)||an(bt)||cg(bt)||K3(bt);return c("getCompletionsAtPosition: isCompletionListBlocker: "+(ql()-Vt)),dn}function cg(bt){if(bt.kind===12)return!0;if(bt.kind===32&&bt.parent){if(wt===bt.parent&&(wt.kind===286||wt.kind===285))return!1;if(bt.parent.kind===286)return wt.parent.kind!==286;if(bt.parent.kind===287||bt.parent.kind===285)return!!bt.parent.parent&&bt.parent.parent.kind===284}return!1}function Ku(){if(De){let bt=De.parent.kind,Vt=sqe(De);switch(Vt){case 28:return bt===213||bt===176||bt===214||bt===209||bt===226||bt===184||bt===210;case 21:return bt===213||bt===176||bt===214||bt===217||bt===196;case 23:return bt===209||bt===181||bt===167;case 144:case 145:case 102:return!0;case 25:return bt===267;case 19:return bt===263||bt===210;case 64:return bt===260||bt===226;case 16:return bt===228;case 17:return bt===239;case 134:return bt===174||bt===304;case 42:return bt===174}if(XFe(Vt))return!0}return!1}function Bi(bt){return(khe(bt)||g8(bt))&&(F_e(bt,I)||I===bt.end&&(!!bt.isUnterminated||khe(bt)))}function BA(){let bt=_ss(De);if(!bt)return 0;let dn=(ji(bt.parent)?bt.parent:void 0)||bt,On=rQr(dn,P);if(!On)return 0;let Mn=P.getTypeFromTypeNode(dn),Ii=aqe(On,P),ds=aqe(Mn,P),Es=new Set;return ds.forEach(oo=>Es.add(oo.escapedName)),Lt=vi(Lt,Gt(Ii,oo=>!Es.has(oo.escapedName))),Kt=0,Ye=!0,1}function kr(){if(De?.kind===26)return 0;let bt=Lt.length,Vt=pss(De,I,u);if(!Vt)return 0;Kt=0;let dn,On;if(Vt.kind===210){let Mn=Bss(Vt,P);if(Mn===void 0)return Vt.flags&67108864?2:0;let Ii=P.getContextualType(Vt,4),ds=(Ii||Mn).getStringIndexType(),Es=(Ii||Mn).getNumberIndexType();if(Ye=!!ds||!!Es,dn=oqe(Mn,Ii,Vt,P),On=Vt.properties,dn.length===0&&!Es)return 0}else{w.assert(Vt.kind===206),Ye=!1;let Mn=WS(Vt.parent);if(!TQ(Mn))return w.fail("Root declaration is not variable-like.");let Ii=qw(Mn)||!!fC(Mn)||Mn.parent.parent.kind===250;if(!Ii&&Mn.kind===169&&(tn(Mn.parent)?Ii=!!P.getContextualType(Mn.parent):(Mn.parent.kind===174||Mn.parent.kind===178)&&(Ii=tn(Mn.parent.parent)&&!!P.getContextualType(Mn.parent.parent))),Ii){let ds=P.getTypeAtLocation(Vt);if(!ds)return 2;dn=P.getPropertiesOfType(ds).filter(Es=>P.isPropertyAccessible(Vt,!1,!1,ds,Es)),On=Vt.elements}}if(dn&&dn.length>0){let Mn=wn(dn,w.checkDefined(On));Lt=vi(Lt,Mn),ar(),Vt.kind===210&&h.includeCompletionsWithObjectLiteralMethodSnippets&&h.includeCompletionsWithInsertText&&(Me(bt),Hs(Mn,Vt))}return 1}function en(){if(!De)return 0;let bt=De.kind===19||De.kind===28?eo(De.parent,Qce):YGe(De)?eo(De.parent.parent,Qce):void 0;if(!bt)return 0;YGe(De)||(vt=8);let{moduleSpecifier:Vt}=bt.kind===275?bt.parent.parent:bt.parent;if(!Vt)return Ye=!0,bt.kind===275?2:0;let dn=P.getSymbolAtLocation(Vt);if(!dn)return Ye=!0,2;Kt=3,Ye=!1;let On=P.getExportsAndPropertiesOfModule(dn),Mn=new Set(bt.elements.filter(ds=>!Jt(ds)).map(ds=>(ds.propertyName||ds.name).escapedText)),Ii=On.filter(ds=>ds.escapedName!=="default"&&!Mn.has(ds.escapedName));return Lt=vi(Lt,Ii),Ii.length||(vt=0),1}function ct(){if(De===void 0)return 0;let bt=De.kind===19||De.kind===28?eo(De.parent,l4):De.kind===59?eo(De.parent.parent,l4):void 0;if(bt===void 0)return 0;let Vt=new Set(bt.elements.map(Cle));return Lt=Gt(P.getTypeAtLocation(bt).getApparentProperties(),dn=>!Vt.has(dn.escapedName)),1}function rn(){var bt;let Vt=De&&(De.kind===19||De.kind===28)?eo(De.parent,GB):void 0;if(!Vt)return 0;let dn=Si(Vt,pg(Gc,CC));return Kt=5,Ye=!1,(bt=dn.locals)==null||bt.forEach((On,Mn)=>{var Ii,ds;Lt.push(On),(ds=(Ii=dn.symbol)==null?void 0:Ii.exports)!=null&&ds.has(Mn)&&(Dr[kg(On)]=p0.OptionalMember)}),1}function St(){let bt=hss(u,De,wt,I);if(!bt)return 0;if(Kt=3,Ye=!0,vt=De.kind===42?0:Sa(bt)?2:3,!Sa(bt))return 1;let Vt=De.kind===27?De.parent.parent:De.parent,dn=rC(Vt)?N_(Vt):0;if(De.kind===80&&!Jt(De))switch(De.getText()){case"private":dn=dn|2;break;case"static":dn=dn|256;break;case"override":dn=dn|16;break}if($p(Vt)&&(dn|=256),!(dn&2)){let On=Sa(bt)&&dn&16?Rm(Dv(bt)):J8(bt),Mn=Fr(On,Ii=>{let ds=P.getTypeAtLocation(Ii);return dn&256?ds?.symbol&&P.getPropertiesOfType(P.getTypeOfSymbolAtLocation(ds.symbol,bt)):ds&&P.getPropertiesOfType(ds)});Lt=vi(Lt,ur(Mn,bt.members,dn)),X(Lt,(Ii,ds)=>{let Es=Ii?.valueDeclaration;if(Es&&rC(Es)&&Es.name&&xg(Es.name)){let oo={kind:512,symbolName:P.symbolToString(Ii)};Zt[ds]=oo}})}return 1}function br(bt){return!!bt.parent&&Jc(bt.parent)&&Rf(bt.parent.parent)&&(fQ(bt.kind)||eT(bt))}function Qt(bt){if(bt){let Vt=bt.parent;switch(bt.kind){case 21:case 28:return Rf(bt.parent)?bt.parent:void 0;default:if(br(bt))return Vt.parent}}}function _r(bt){if(bt){let Vt,dn=Si(bt.parent,On=>Sa(On)?"quit":dd(On)&&Vt===On.body?!0:(Vt=On,!1));return dn&&dn}}function Pr(bt){if(bt){let Vt=bt.parent;switch(bt.kind){case 32:case 31:case 44:case 80:case 211:case 292:case 291:case 293:if(Vt&&(Vt.kind===285||Vt.kind===286)){if(bt.kind===32){let dn=_m(bt.pos,u,void 0);if(!Vt.typeArguments||dn&&dn.kind===44)break}return Vt}else if(Vt.kind===291)return Vt.parent.parent;break;case 11:if(Vt&&(Vt.kind===291||Vt.kind===293))return Vt.parent.parent;break;case 20:if(Vt&&Vt.kind===294&&Vt.parent&&Vt.parent.kind===291)return Vt.parent.parent.parent;if(Vt&&Vt.kind===293)return Vt.parent.parent;break}}}function ti(bt,Vt){return u.getLineEndOfPosition(bt.getEnd())=bt.pos;case 25:return dn===207;case 59:return dn===208;case 23:return dn===207;case 21:return dn===299||Pn(dn);case 19:return dn===266;case 30:return dn===263||dn===231||dn===264||dn===265||PR(dn);case 126:return dn===172&&!Sa(Vt.parent);case 26:return dn===169||!!Vt.parent&&Vt.parent.kind===207;case 125:case 123:case 124:return dn===169&&!Rf(Vt.parent);case 130:return dn===276||dn===281||dn===274;case 139:case 153:return!cqe(bt);case 80:{if(dn===276&&bt===Vt.name&&bt.text==="type"||Si(bt.parent,zs)&&ti(bt,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 dn!==276;case 42:return $l(bt.parent)&&!cI(bt.parent)}if(XFe(sqe(bt))&&cqe(bt)||br(bt)&&(!sr(bt)||fQ(sqe(bt))||Jt(bt)))return!1;switch(sqe(bt)){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 Ql(bt.parent)}if(Si(bt.parent,Sa)&&bt===Qe&&kn(bt,I))return!1;let Mn=CG(bt.parent,172);if(Mn&&bt!==Qe&&Sa(Qe.parent.parent)&&I<=Qe.end){if(kn(bt,Qe.end))return!1;if(bt.kind!==64&&(g_e(Mn)||XC(Mn)))return!0}return eT(bt)&&!G_(bt.parent)&&!NN(bt.parent)&&!((Sa(bt.parent)||HI(bt.parent)||qp(bt.parent))&&(bt!==Qe||I>Qe.end))}function kn(bt,Vt){return bt.kind!==64&&(bt.kind===27||!Z1(bt.end,Vt,u))}function Pn(bt){return PR(bt)&&bt!==176}function an(bt){if(bt.kind===9){let Vt=bt.getFullText();return Vt.charAt(Vt.length-1)==="."}return!1}function Kr(bt){return bt.parent.kind===261&&!V_e(bt,u,P)}function wn(bt,Vt){if(Vt.length===0)return bt;let dn=new Set,On=new Set;for(let Ii of Vt){if(Ii.kind!==303&&Ii.kind!==304&&Ii.kind!==208&&Ii.kind!==174&&Ii.kind!==177&&Ii.kind!==178&&Ii.kind!==305||Jt(Ii))continue;let ds;if(Mx(Ii))Pe(Ii,dn);else if(ml(Ii)&&Ii.propertyName)Ii.propertyName.kind===80&&(ds=Ii.propertyName.escapedText);else{let Es=vl(Ii);ds=Es&&VS(Es)?j8(Es):void 0}ds!==void 0&&On.add(ds)}let Mn=bt.filter(Ii=>!On.has(Ii.escapedName));return sn(dn,Mn),Mn}function Pe(bt,Vt){let dn=bt.expression,On=P.getSymbolAtLocation(dn),Mn=On&&P.getTypeOfSymbolAtLocation(On,dn),Ii=Mn&&Mn.properties;Ii&&Ii.forEach(ds=>{Vt.add(ds.name)})}function ar(){Lt.forEach(bt=>{if(bt.flags&16777216){let Vt=kg(bt);Dr[Vt]=Dr[Vt]??p0.OptionalMember}})}function sn(bt,Vt){if(bt.size!==0)for(let dn of Vt)bt.has(dn.name)&&(Dr[kg(dn)]=p0.MemberDeclaredBySpreadAssignment)}function Me(bt){for(let Vt=bt;Vt!On.has(Mn.escapedName)&&!!Mn.declarations&&!(L1(Mn)&2)&&!(Mn.valueDeclaration&&Rh(Mn.valueDeclaration)))}function Re(bt,Vt){let dn=new Set,On=new Set;for(let Ii of Vt)Jt(Ii)||(Ii.kind===291?dn.add(B6(Ii.name)):k6(Ii)&&Pe(Ii,On));let Mn=bt.filter(Ii=>!dn.has(Ii.escapedName));return sn(On,Mn),Mn}function Jt(bt){return bt.getStart(u)<=I&&I<=bt.getEnd()}}function pss(n,c,u){var d;if(n){let{parent:I}=n;switch(n.kind){case 19:case 28:if(tu(I)||Vg(I))return I;break;case 42:return cI(I)?eo(I.parent,tu):void 0;case 134:return eo(I.parent,tu);case 80:if(n.text==="async"&&G_(n.parent))return n.parent.parent;{if(tu(n.parent.parent)&&(Mx(n.parent)||G_(n.parent)&&Ll(u,n.getEnd()).line!==Ll(u,c).line))return n.parent.parent;let b=Si(I,KC);if(b?.getLastToken(u)===n&&tu(b.parent))return b.parent}break;default:if((d=I.parent)!=null&&d.parent&&(cI(I.parent)||Pb(I.parent)||sb(I.parent))&&tu(I.parent.parent))return I.parent.parent;if(Mx(I)&&tu(I.parent))return I.parent;let h=Si(I,KC);if(n.kind!==59&&h?.getLastToken(u)===n&&tu(h.parent))return h.parent}}}function rqe(n,c){let u=_m(n,c);return u&&n<=u.end&&($y(u)||i0(u.kind))?{contextToken:_m(u.getFullStart(),c,void 0),previousToken:u}:{contextToken:u,previousToken:u}}function KMr(n,c,u,d){let I=c.isPackageJsonImport?d.getPackageJsonAutoImportProvider():u,h=I.getTypeChecker(),b=c.ambientModuleName?h.tryFindAmbientModule(c.ambientModuleName):c.fileName?h.getMergedSymbol(w.checkDefined(I.getSourceFile(c.fileName)).symbol):void 0;if(!b)return;let R=c.exportName==="export="?h.resolveExternalModuleSymbol(b):h.tryGetMemberInModuleExportsAndProperties(c.exportName,b);return R?(R=c.exportName==="default"&&n6(R)||R,{symbol:R,origin:nss(c,n,b)}):void 0}function nqe(n,c,u,d,I){if(Wis(u))return;let h=Fis(u)?u.symbolName:n.name;if(h===void 0||n.flags&1536&&ree(h.charCodeAt(0))||_ee(n))return;let b={name:h,needsConvertPropertyAccess:!1};if(Ke(h,c,I?1:0)||n.valueDeclaration&&Rh(n.valueDeclaration))return b;switch(d){case 3:return Z9t(u)?{name:u.symbolName,needsConvertPropertyAccess:!1}:void 0;case 0:return{name:JSON.stringify(h),needsConvertPropertyAccess:!1};case 2:case 1:return h.charCodeAt(0)===32?void 0:{name:h,needsConvertPropertyAccess:!0};case 5:case 4:return b;default:w.assertNever(d)}}var iqe=[],jMr=iu(()=>{let n=[];for(let c=83;c<=165;c++)n.push({name:vr(c),kind:"keyword",kindModifiers:"",sortText:p0.GlobalsOrKeywords});return n});function zMr(n,c){if(!c)return qMr(n);let u=n+8+1;return iqe[u]||(iqe[u]=qMr(n).filter(d=>!fss(Hn(d.name))))}function qMr(n){return iqe[n]||(iqe[n]=jMr().filter(c=>{let u=Hn(c.name);switch(n){case 0:return!1;case 1:return eQr(u)||u===138||u===144||u===156||u===145||u===128||mue(u)&&u!==157;case 5:return eQr(u);case 2:return XFe(u);case 3:return $Mr(u);case 4:return fQ(u);case 6:return mue(u)||u===87;case 7:return mue(u);case 8:return u===156;default:return w.assertNever(n)}}))}function fss(n){switch(n){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}}function $Mr(n){return n===148}function XFe(n){switch(n){case 128:case 129:case 137:case 139:case 153:case 134:case 138:case 164:return!0;default:return C$(n)}}function eQr(n){return n===134||n===135||n===160||n===130||n===152||n===156||!hce(n)&&!XFe(n)}function sqe(n){return sr(n)?VR(n)??0:n.kind}function Iss(n,c){let u=[];if(n){let d=n.getSourceFile(),I=n.parent,h=d.getLineAndCharacterOfPosition(n.end).line,b=d.getLineAndCharacterOfPosition(c).line;(mI(I)||mC(I)&&I.moduleSpecifier)&&n===I.moduleSpecifier&&h===b&&u.push({name:vr(132),kind:"keyword",kindModifiers:"",sortText:p0.GlobalsOrKeywords})}return u}function Css(n,c){return Si(n,u=>X9(u)&&G_e(u,c)?!0:aT(u)?"quit":!1)}function oqe(n,c,u,d){let I=c&&c!==n,h=I&&!(c.flags&3)?d.getUnionType([n,c]):n,b=mss(h,u,d);return h.isClass()&&tQr(b)?[]:I?Gt(b,R):b;function R(N){return O(N.declarations)?lr(N.declarations,V=>V.parent!==u):!0}}function mss(n,c,u){return n.isUnion()?u.getAllPossiblePropertiesOfTypes(Gt(n.types,d=>!(d.flags&402784252||u.isArrayLikeType(d)||u.isTypeInvalidDueToUnionDiscriminant(d,c)||u.typeHasCallOrConstructSignatures(d)||d.isClass()&&tQr(d.getApparentProperties())))):n.getApparentProperties()}function tQr(n){return lr(n,c=>!!(L1(c)&6))}function aqe(n,c){return n.isUnion()?w.checkEachDefined(c.getAllPossiblePropertiesOfTypes(n.types),"getAllPossiblePropertiesOfTypes() should all be defined"):w.checkEachDefined(n.getApparentProperties(),"getApparentProperties() should all be defined")}function hss(n,c,u,d){switch(u.kind){case 352:return eo(u.parent,MQ);case 1:let I=eo(qo(ps(u.parent,Gc).statements),MQ);if(I&&!Od(I,20,n))return I;break;case 81:if(eo(u.parent,Ql))return Si(u,Sa);break;case 80:{if(VR(u)||Ql(u.parent)&&u.parent.initializer===u)return;if(cqe(u))return Si(u,MQ)}}if(c){if(u.kind===137||sr(c)&&Ql(c.parent)&&Sa(u))return Si(c,Sa);switch(c.kind){case 64:return;case 27:case 20:return cqe(u)&&u.parent.name===u?u.parent.parent:eo(u,MQ);case 19:case 28:return eo(c.parent,MQ);default:if(MQ(u)){if(Ll(n,c.getEnd()).line!==Ll(n,d).line)return u;let I=Sa(c.parent.parent)?XFe:$Mr;return I(c.kind)||c.kind===42||sr(c)&&I(VR(c)??0)?c.parent.parent:void 0}return}}}function _ss(n){if(!n)return;let c=n.parent;switch(n.kind){case 19:if(Se(c))return c;break;case 27:case 28:case 80:if(c.kind===171&&Se(c.parent))return c.parent;break}}function rQr(n,c){if(!n)return;if(Ya(n)&&m8(n.parent))return c.getTypeArgumentConstraint(n);let u=rQr(n.parent,c);if(u)switch(n.kind){case 171:return c.getTypeOfPropertyOfContextualType(u,n.symbol.escapedName);case 193:case 187:case 192:return u}}function cqe(n){return n.parent&&d8(n.parent)&&MQ(n.parent.parent)}function yss(n,c,u,d){switch(c){case".":case"@":return!0;case'"':case"'":case"`":return!!u&&jGt(u)&&d===u.getStart(n)+1;case"#":return!!u&&kc(u)&&!!Um(u);case"<":return!!u&&u.kind===30&&(!no(u.parent)||nQr(u.parent));case"/":return!!u&&(XA(u)?!!lee(u):u.kind===44&&uY(u.parent));case" ":return!!u&&D6(u)&&u.parent.kind===307;default:return w.assertNever(c)}}function nQr({left:n}){return wf(n)}function bss(n,c,u){let d=u.resolveName("self",void 0,111551,!1);if(d&&u.getTypeOfSymbolAtLocation(d,c)===n)return!0;let I=u.resolveName("global",void 0,111551,!1);if(I&&u.getTypeOfSymbolAtLocation(I,c)===n)return!0;let h=u.resolveName("globalThis",void 0,111551,!1);return!!(h&&u.getTypeOfSymbolAtLocation(h,c)===n)}function Ess(n){return!!(n.valueDeclaration&&N_(n.valueDeclaration)&256&&Sa(n.valueDeclaration.parent))}function Bss(n,c){let u=c.getContextualType(n);if(u)return u;let d=KR(n.parent);if(no(d)&&d.operatorToken.kind===64&&n===d.left)return c.getTypeAtLocation(d);if(tn(d))return c.getContextualType(d)}function iQr(n,c){var u,d,I;let h,b=!1,R=N();return{isKeywordOnlyCompletion:b,keywordCompletion:h,isNewIdentifierLocation:!!(R||h===156),isTopLevelTypeOnly:!!((d=(u=eo(R,mI))==null?void 0:u.importClause)!=null&&d.isTypeOnly)||!!((I=eo(R,Cm))!=null&&I.isTypeOnly),couldBeTypeOnlyImportSpecifier:!!R&&oQr(R,n),replacementSpan:vss(R)};function N(){let V=n.parent;if(Cm(V)){let P=V.getLastToken(c);if(sr(n)&&P!==n){h=161,b=!0;return}return h=n.kind===156?void 0:156,Y9t(V.moduleReference)?V:void 0}if(oQr(V,n)&&aQr(V.parent))return V;if(wN(V)||Px(V)){if(!V.parent.isTypeOnly&&(n.kind===19||n.kind===102||n.kind===28)&&(h=156),aQr(V))if(n.kind===20||n.kind===80)b=!0,h=161;else return V.parent.parent;return}if(mC(V)&&n.kind===42||GB(V)&&n.kind===20){b=!0,h=161;return}if(D6(n)&&Gc(V))return h=156,n;if(D6(n)&&mI(V))return h=156,Y9t(V.moduleSpecifier)?V:void 0}}function vss(n){var c;if(!n)return;let u=Si(n,pg(mI,Cm,RN))??n,d=u.getSourceFile();if(NZ(u,d))return Ey(u,d);w.assert(u.kind!==102&&u.kind!==276);let I=u.kind===272||u.kind===351?sQr((c=u.importClause)==null?void 0:c.namedBindings)??u.moduleSpecifier:u.moduleReference,h={pos:u.getFirstToken().getStart(),end:I.pos};if(NZ(h,d))return TV(h)}function sQr(n){var c;return be((c=eo(n,wN))==null?void 0:c.elements,u=>{var d;return!u.propertyName&&FQ(u.name.text)&&((d=_m(u.name.pos,n.getSourceFile(),n))==null?void 0:d.kind)!==28})}function oQr(n,c){return _y(n)&&(n.isTypeOnly||c===n.name&&YGe(c))}function aQr(n){if(!Y9t(n.parent.parent.moduleSpecifier)||n.parent.name)return!1;if(wN(n)){let c=sQr(n);return(c?n.elements.indexOf(c):n.elements.length)<2}return!0}function Y9t(n){var c;return wf(n)?!0:!((c=eo(DG(n)?n.expression:n,XA))!=null&&c.text)}function Sss(n,c){if(!n)return;let u=Si(n,I=>j9(I)||cQr(I)||pu(I)?"quit":(Jc(I)||qp(I))&&!_(I.parent)),d=Si(c,I=>j9(I)||cQr(I)||pu(I)?"quit":zs(I));return u||d}function cQr(n){return n.parent&&fd(n.parent)&&(n.parent.body===n||n.kind===39)}function H9t(n,c,u=new Map){return d(n)||d(dh(n.exportSymbol||n,c));function d(I){return!!(I.flags&788968)||c.isUnknownSymbol(I)||!!(I.flags&1536)&&R2(u,kg(I))&&c.getExportsOfModule(I).some(h=>H9t(h,c,u))}}function wss(n,c){let u=dh(n,c).declarations;return!!O(u)&&he(u,gFe)}function lQr(n,c){if(c.length===0)return!0;let u=!1,d,I=0,h=n.length;for(let b=0;bxss,getStringLiteralCompletions:()=>Rss});var uQr={directory:0,script:1,"external module name":2};function X9t(){let n=new Map;function c(u){let d=n.get(u.name);(!d||uQr[d.kind]({name:tT(re.value,M),kindModifiers:"",kind:"string",sortText:p0.LocationPriority,replacementSpan:z7e(c,N)}));return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:n.isNewIdentifier,optionalReplacementSpan:P,entries:te}}default:return w.assertNever(n)}}function xss(n,c,u,d,I,h,b,R){if(!d||!XA(d))return;let N=dQr(c,d,u,I,h,R);return N&&kss(n,d,N,c,I.getTypeChecker(),b)}function kss(n,c,u,d,I,h){switch(u.kind){case 0:{let b=be(u.paths,R=>R.name===n);return b&&HFe(n,AQr(b.extension),b.kind,[P2(n)])}case 1:{let b=be(u.symbols,R=>R.name===n);return b&&M9t(b,b.name,I,d,c,h)}case 2:return be(u.types,b=>b.value===n)?HFe(n,"","string",[P2(n)]):void 0;default:return w.assertNever(u)}}function gQr(n){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!0,entries:n.map(({name:I,kind:h,span:b,extension:R})=>({name:I,kind:h,kindModifiers:AQr(R),sortText:p0.LocationPriority,replacementSpan:b}))}}function AQr(n){switch(n){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 w.fail("Extension .tsbuildinfo is unsupported.");case void 0:return"";default:return w.assertNever(n)}}function dQr(n,c,u,d,I,h){let b=d.getTypeChecker(),R=J9t(c.parent);switch(R.kind){case 201:{let re=J9t(R.parent);return re.kind===205?{kind:0,paths:IQr(n,c,d,I,h)}:N(re)}case 303:return tu(R.parent)&&R.name===c?Zss(b,R.parent):V()||V(0);case 212:{let{expression:re,argumentExpression:ue}=R;return c===jA(ue)?pQr(b.getTypeAtLocation(re)):void 0}case 213:case 214:case 291:if(!qss(c)&&!pC(R)){let re=h0e.getArgumentInfoForCompletions(R.kind===291?R.parent:c,u,n,b);return re&&Fss(re.invocation,c,re,b)||V(0)}case 272:case 278:case 283:case 351:return{kind:0,paths:IQr(n,c,d,I,h)};case 296:let P=pFe(b,R.parent.clauses),M=V();return M?{kind:2,types:M.types.filter(re=>!P.hasValue(re.value)),isNewIdentifier:!1}:void 0;default:return V()||V(0)}function N(P){switch(P.kind){case 233:case 183:{let re=Si(R,ue=>ue.parent===P);return re?{kind:2,types:uqe(b.getTypeArgumentConstraint(re)),isNewIdentifier:!1}:void 0}case 199:let{indexType:M,objectType:te}=P;return G_e(M,u)?pQr(b.getTypeFromTypeNode(te)):void 0;case 192:{let re=N(J9t(P.parent));if(!re)return;let ue=Gss(P,R);return re.kind===1?{kind:1,symbols:re.symbols.filter(Ae=>!Ue(ue,Ae.name)),hasIndexSignature:re.hasIndexSignature}:{kind:2,types:re.types.filter(Ae=>!Ue(ue,Ae.value)),isNewIdentifier:!1}}default:return}}function V(P=4){let M=uqe($Ge(c,b,P));if(M.length)return{kind:2,types:M,isNewIdentifier:!1}}}function J9t(n){switch(n.kind){case 196:return pee(n);case 217:return KR(n);default:return n}}function Gss(n,c){return tr(n.types,u=>u!==c&&id(u)&&bu(u.literal)?u.literal.text:void 0)}function Fss(n,c,u,d){let I=!1,h=new Map,b=Jm(n)?w.checkDefined(Si(c.parent,NN)):c,R=d.getCandidateSignaturesForStringLiteralCompletions(n,b),N=Fr(R,V=>{if(!u0(V)&&u.argumentCount>V.parameters.length)return;let P=V.getTypeParameterAtPosition(u.argumentIndex);if(Jm(n)){let M=d.getTypeOfPropertyOfType(P,YS(b.name));M&&(P=M)}return I=I||!!(P.flags&4),uqe(P,h)});return O(N)?{kind:2,types:N,isNewIdentifier:I}:void 0}function pQr(n){return n&&{kind:1,symbols:Gt(n.getApparentProperties(),c=>!(c.valueDeclaration&&Rh(c.valueDeclaration))),hasIndexSignature:bje(n)}}function Zss(n,c){let u=n.getContextualType(c);if(!u)return;let d=n.getContextualType(c,4);return{kind:1,symbols:oqe(u,d,c,n),hasIndexSignature:bje(u)}}function uqe(n,c=new Map){return n?(n=rje(n),n.isUnion()?Fr(n.types,u=>uqe(u,c)):n.isStringLiteral()&&!(n.flags&1024)&&R2(c,n.value)?[n]:v):v}function Vue(n,c,u){return{name:n,kind:c,extension:u}}function U9t(n){return Vue(n,"directory",void 0)}function fQr(n,c,u){let d=Uss(n,c),I=n.length===0?void 0:bd(c,n.length);return u.map(({name:h,kind:b,extension:R})=>h.includes(qu)||h.includes(AC)?{name:h,kind:b,extension:R,span:I}:{name:h,kind:b,extension:R,span:d})}function IQr(n,c,u,d,I){return fQr(c.text,c.getStart(n)+1,Lss(n,c,u,d,I))}function Lss(n,c,u,d,I){let h=Af(c.text),b=XA(c)?u.getModeForUsageLocation(n,c):void 0,R=n.path,N=aa(R),V=u.getCompilerOptions(),P=u.getTypeChecker(),M=K9t(V,1,n,P,I,b);return Kss(h)||!V.baseUrl&&!V.paths&&(yd(h)||eC(h))?Vss(h,N,V,d,R,M):Mss(h,N,b,V,d,M,P)}function K9t(n,c,u,d,I,h){return{extensionsToSearch:or(Wss(n,d)),referenceKind:c,importingSourceFile:u,endingPreference:I?.importModuleSpecifierEnding,resolutionMode:h}}function Vss(n,c,u,d,I,h){return u.rootDirs?Oss(u.rootDirs,n,c,h,u,d,I):on(Wue(n,c,h,d,!0,I).values())}function Wss(n,c){let u=c?tr(c.getAmbientModules(),h=>{let b=h.name.slice(1,-1);if(!(!b.startsWith("*.")||b.includes("/")))return b.slice(1)}):[],d=[...I6(n),u],I=s0(n);return HGe(I)?Mee(n,d):d}function Pss(n,c,u,d){n=n.map(h=>AA(Mc(yd(h)?h:xo(c,h))));let I=le(n,h=>Bg(h,u,c,d)?u.substr(h.length):void 0);return TA([...n.map(h=>xo(h,I)),u].map(h=>S_(h)),lm,Do)}function Oss(n,c,u,d,I,h,b){let R=I.project||h.getCurrentDirectory(),N=!(h.useCaseSensitiveFileNames&&h.useCaseSensitiveFileNames()),V=Pss(n,R,u,N);return TA(Fr(V,P=>on(Wue(c,P,d,h,!0,b).values())),(P,M)=>P.name===M.name&&P.kind===M.kind&&P.extension===M.extension)}function Wue(n,c,u,d,I,h,b=X9t()){var R;n===void 0&&(n=""),n=Af(n),v_(n)||(n=aa(n)),n===""&&(n="."+qu),n=AA(n);let N=q_(c,n),V=v_(N)?N:aa(N);if(!I){let re=$Gt(V,d);if(re){let Ae=cV(re,d).typesVersions;if(typeof Ae=="object"){let de=(R=bke(Ae))==null?void 0:R.paths;if(de){let Be=aa(re),Fe=N.slice(AA(Be).length);if(mQr(b,Fe,Be,u,d,de))return b}}}}let P=!(d.useCaseSensitiveFileNames&&d.useCaseSensitiveFileNames());if(!iFe(d,V))return b;let M=vje(d,V,u.extensionsToSearch,void 0,["./*"]);if(M)for(let re of M){if(re=Mc(re),h&&Ah(re,h,c,P)===0)continue;let{name:ue,extension:Ae}=CQr(xA(re),d.getCompilationSettings(),u,!1);b.add(Vue(ue,"script",Ae))}let te=nFe(d,V);if(te)for(let re of te){let ue=xA(Mc(re));ue!=="@types"&&b.add(U9t(ue))}return b}function CQr(n,c,u,d){let I=uP.tryGetRealFileNameForNonJsDeclarationFileName(n);if(I)return{name:I,extension:hN(I)};if(u.referenceKind===0)return{name:n,extension:hN(n)};let h=zle({importModuleSpecifierEnding:u.endingPreference},c,u.importingSourceFile).getAllowedEndingsInPreferredOrder(u.resolutionMode);if(d&&(h=h.filter(R=>R!==0&&R!==1)),h[0]===3){if(pp(n,ale))return{name:n,extension:hN(n)};let R=uP.tryGetJSExtensionForFile(n,c);return R?{name:BG(n,R),extension:R}:{name:n,extension:hN(n)}}if(!d&&(h[0]===0||h[0]===1)&&pp(n,[".js",".jsx",".ts",".tsx",".d.ts"]))return{name:o0(n),extension:hN(n)};let b=uP.tryGetJSExtensionForFile(n,c);return b?{name:BG(n,b),extension:b}:{name:n,extension:hN(n)}}function mQr(n,c,u,d,I,h){let b=N=>h[N],R=(N,V)=>{let P=t4(N),M=t4(V),te=typeof P=="object"?P.prefix.length:N.length,re=typeof M=="object"?M.prefix.length:V.length;return Xl(re,te)};return hQr(n,!1,c,u,d,I,kl(h),b,R)}function hQr(n,c,u,d,I,h,b,R,N){let V=[],P;for(let M of b){if(M===".")continue;let te=M.replace(/^\.\//,""),re=R(M);if(re){let ue=t4(te);if(!ue)continue;let Ae=typeof ue=="object"&&um(ue,u);Ae&&(P===void 0||N(M,P)===-1)&&(P=M,V=V.filter(Be=>!Be.matchedPattern)),(typeof ue=="string"||P===void 0||N(M,P)!==1)&&V.push({matchedPattern:Ae,results:Qss(te,re,u,d,I,c&&Ae,h).map(({name:Be,kind:Fe,extension:Ne})=>Vue(Be,Fe,Ne))})}}return V.forEach(M=>M.results.forEach(te=>n.add(te))),P!==void 0}function Mss(n,c,u,d,I,h,b){let{baseUrl:R,paths:N}=d,V=X9t(),P=s0(d);if(R){let te=Mc(xo(I.getCurrentDirectory(),R));Wue(n,te,h,I,!1,void 0,V)}if(N){let te=wce(d,I);mQr(V,n,te,h,I,N)}let M=yQr(n);for(let te of Hss(n,M,b))V.add(Vue(te,"external module name",void 0));if(BQr(I,d,c,M,h,V),HGe(P)){let te=!1;if(M===void 0)for(let re of Jss(I,c)){let ue=Vue(re,"external module name",void 0);V.has(ue.name)||(te=!0,V.add(ue))}if(!te){let re=Be=>{let Fe=xo(Be,"node_modules");iFe(I,Fe)&&Wue(n,Fe,h,I,!1,void 0,V)},ue=(Be,Fe,Ne)=>{let De=cV(Be,I).exports;if(De){if(typeof De!="object"||De===null)return!0;let lt=kl(De),Le=EV(d,u);return hQr(V,!0,Ne,Fe,h,I,lt,je=>Rm(_Qr(De[je],Le)),W8e),!0}return!1},Ae=M&&$me(d);if(Ae){let Be=re;re=Fe=>{let Ne=Ad(n);Ne.shift();let Qe=Ne.shift();if(!Qe)return Be(Fe);if(uc(Qe,"@")){let Le=Ne.shift();if(!Le)return Be(Fe);Qe=xo(Qe,Le)}let De=xo(Fe,"node_modules",Qe),lt=xo(De,"package.json");if(Sue(I,lt)){let Le=Ne.join("/")+(Ne.length&&v_(n)?"/":"");if(ue(lt,De,Le))return}return Be(Fe)}}let de=bV(c);if(de){let Be=/^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:@[^/]+\/)?[^/]+)\/*(.*|)$/,Fe=n.match(Be);if(Fe){let[,Ne,Qe]=Fe,De;try{De=de.resolveToUnqualified(Ne,c,{considerBuiltins:!1})}catch{}if(De){let lt=Mc(De),Le=!0;if(Ae){let je=xo(lt,"package.json");Sue(I,je)&&ue(je,lt,Qe)&&(Le=!1)}Le&&Wue(Qe,lt,h,I,!1,void 0,V)}}}else iI(c,re)}}return on(V.values())}function _Qr(n,c){if(typeof n=="string")return n;if(n&&typeof n=="object"&&!Ra(n)){for(let u in n)if(u==="default"||c.includes(u)||o_e(c,u)){let d=n[u];return _Qr(d,c)}}}function yQr(n){return j9t(n)?v_(n)?n:aa(n):void 0}function Qss(n,c,u,d,I,h,b){if(!pl(n,"*"))return n.includes("*")?v:V(n,"script");let R=n.slice(0,n.length-1),N=Sb(u,R);if(N===void 0)return n[n.length-2]==="/"?V(R,"directory"):Fr(c,M=>{var te;return(te=bQr("",d,M,I,h,b))==null?void 0:te.map(({name:re,...ue})=>({name:R+re,...ue}))});return Fr(c,P=>bQr(N,d,P,I,h,b));function V(P,M){return uc(P,u)?[{name:S_(P),kind:M,extension:void 0}]:v}}function bQr(n,c,u,d,I,h){if(!h.readDirectory)return;let b=t4(u);if(b===void 0||Xa(b))return;let R=q_(b.prefix),N=v_(b.prefix)?R:aa(R),V=v_(b.prefix)?"":xA(R),P=j9t(n),M=P?v_(n)?n:aa(n):void 0,te=P?xo(N,V+M):N,re=Mc(b.suffix),ue=re&&Sce("_"+re),Ae=ue?[BG(re,ue),re]:[re],de=Mc(xo(c,te)),Be=P?de:AA(de)+V,Fe=re?Ae.map(lt=>"**/*"+lt):["./*"],Ne=tr(vje(h,de,d.extensionsToSearch,void 0,Fe),lt=>{let Le=De(lt);if(Le){if(j9t(Le))return U9t(Ad(EQr(Le))[1]);let{name:je,extension:st}=CQr(Le,h.getCompilationSettings(),d,I);return Vue(je,"script",st)}}),Qe=re?v:tr(nFe(h,de),lt=>lt==="node_modules"?void 0:U9t(lt));return[...Ne,...Qe];function De(lt){return le(Ae,Le=>{let je=Yss(Mc(lt),Be,Le);return je===void 0?void 0:EQr(je)})}}function Yss(n,c,u){return uc(n,c)&&pl(n,u)?n.slice(c.length,n.length-u.length):void 0}function EQr(n){return n[0]===qu?n.slice(1):n}function Hss(n,c,u){let I=u.getAmbientModules().map(h=>N2(h.name)).filter(h=>uc(h,n)&&!h.includes("*"));if(c!==void 0){let h=AA(c);return I.map(b=>b_(b,h))}return I}function Xss(n,c,u,d){let I=Qc(n,c),h=Gb(n.text,I.pos),b=h&&be(h,ue=>c>=ue.pos&&c<=ue.end);if(!b)return;let R=n.text.slice(b.pos,c),N=jss.exec(R);if(!N)return;let[,V,P,M]=N,te=aa(n.path),re=P==="path"?Wue(M,te,K9t(u,0,n),d,!0,n.path):P==="types"?BQr(d,u,te,yQr(M),K9t(u,1,n)):w.fail();return fQr(M,b.pos+V.length,on(re.values()))}function BQr(n,c,u,d,I,h=X9t()){let b=new Map,R=sFe(()=>Xle(c,n))||v;for(let V of R)N(V);if(bV(u))for(let V of Ckr(u))N(V);else for(let V of Sje(u,n)){let P=xo(aa(V),"node_modules/@types");N(P)}return h;function N(V){if(iFe(n,V))for(let P of nFe(n,V)){let M=a_e(P);if(!(c.types&&!Ue(c.types,M)))if(d===void 0)b.has(M)||(h.add(Vue(M,"external module name",void 0)),b.set(M,!0));else{let te=xo(V,P),re=nhe(d,M,Dx(n));re!==void 0&&Wue(re,te,I,n,!1,void 0,h)}}}}function Jss(n,c){if(!n.readFile||!n.fileExists)return v;let u=[];for(let d of Sje(c,n)){let I=cV(d,n);for(let h of zss){let b=I[h];if(b)for(let R in b)Qa(b,R)&&!uc(R,"@types/")&&u.push(R)}}return u}function Uss(n,c){let u=Math.max(n.lastIndexOf(qu),n.lastIndexOf(AC)),d=u!==-1?u+1:0,I=n.length-d;return I===0||Ke(n.substr(d,I),99)?void 0:bd(c+d,I)}function Kss(n){if(n&&n.length>=2&&n.charCodeAt(0)===46){let c=n.length>=3&&n.charCodeAt(1)===46?2:1,u=n.charCodeAt(c);return u===47||u===92}return!1}var jss=/^(\/\/\/\s*a7,DefinitionKind:()=>DQr,EntryKind:()=>xQr,ExportKind:()=>vQr,FindReferencesUse:()=>kQr,ImportExport:()=>SQr,createImportTracker:()=>z9t,findModuleReferences:()=>wQr,findReferenceOrRenameEntries:()=>Aos,findReferencedSymbols:()=>los,getContextNode:()=>v4,getExportInfo:()=>q9t,getImplementationsAtPosition:()=>gos,getImportOrExportSymbol:()=>RQr,getReferenceEntriesForNode:()=>FQr,getTextSpanOfEntry:()=>rVt,isContextWithStartAndEndNode:()=>eVt,isDeclarationOfSymbol:()=>WQr,isWriteAccessForReference:()=>nVt,nodeEntry:()=>Hx,toContextSpan:()=>tVt,toHighlightSpan:()=>hos,toReferenceEntry:()=>VQr,toRenameLocation:()=>pos});function z9t(n,c,u,d){let I=ros(n,u,d);return(h,b,R)=>{let{directImports:N,indirectUsers:V}=$ss(n,c,I,b,u,d);return{indirectUsers:V,...eos(N,h,b.exportKind,u,R)}}}var vQr=(n=>(n[n.Named=0]="Named",n[n.Default=1]="Default",n[n.ExportEquals=2]="ExportEquals",n))(vQr||{}),SQr=(n=>(n[n.Import=0]="Import",n[n.Export=1]="Export",n))(SQr||{});function $ss(n,c,u,{exportingModuleSymbol:d,exportKind:I},h,b){let R=Zte(),N=Zte(),V=[],P=!!d.globalExports,M=P?void 0:[];return re(d),{directImports:V,indirectUsers:te()};function te(){if(P)return n;if(d.declarations)for(let Ne of d.declarations)XR(Ne)&&c.has(Ne.getSourceFile().fileName)&&Be(Ne);return M.map(ls)}function re(Ne){let Qe=Fe(Ne);if(Qe){for(let De of Qe)if(R(De))switch(b&&b.throwIfCancellationRequested(),De.kind){case 213:if(pC(De)){ue(De);break}if(!P){let Le=De.parent;if(I===2&&Le.kind===260){let{name:je}=Le;if(je.kind===80){V.push(je);break}}}break;case 80:break;case 271:de(De,De.name,ba(De,32),!1);break;case 272:case 351:V.push(De);let lt=De.importClause&&De.importClause.namedBindings;lt&<.kind===274?de(De,lt.name,!1,!0):!P&&xQ(De)&&Be(JFe(De));break;case 278:De.exportClause?De.exportClause.kind===280?Be(JFe(De),!0):V.push(De):re(aos(De,h));break;case 205:!P&&De.isTypeOf&&!De.qualifier&&Ae(De)&&Be(De.getSourceFile(),!0),V.push(De);break;default:w.failBadSyntaxKind(De,"Unexpected import kind.")}}}function ue(Ne){let Qe=Si(Ne,gqe)||Ne.getSourceFile();Be(Qe,!!Ae(Ne,!0))}function Ae(Ne,Qe=!1){return Si(Ne,De=>Qe&&gqe(De)?"quit":ew(De)&&lr(De.modifiers,Fx))}function de(Ne,Qe,De,lt){if(I===2)lt||V.push(Ne);else if(!P){let Le=JFe(Ne);w.assert(Le.kind===307||Le.kind===267),De||tos(Le,Qe,h)?Be(Le,!0):Be(Le)}}function Be(Ne,Qe=!1){if(w.assert(!P),!N(Ne)||(M.push(Ne),!Qe))return;let lt=h.getMergedSymbol(Ne.symbol);if(!lt)return;w.assert(!!(lt.flags&1536));let Le=Fe(lt);if(Le)for(let je of Le)Tu(je)||Be(JFe(je),!0)}function Fe(Ne){return u.get(kg(Ne).toString())}}function eos(n,c,u,d,I){let h=[],b=[];function R(te,re){h.push([te,re])}if(n)for(let te of n)N(te);return{importSearches:h,singleReferences:b};function N(te){if(te.kind===271){$9t(te)&&V(te.name);return}if(te.kind===80){V(te);return}if(te.kind===205){if(te.qualifier){let Ae=ib(te.qualifier);Ae.escapedText===df(c)&&b.push(Ae)}else u===2&&b.push(te.argument.literal);return}if(te.moduleSpecifier.kind!==11)return;if(te.kind===278){te.exportClause&&GB(te.exportClause)&&P(te.exportClause);return}let{name:re,namedBindings:ue}=te.importClause||{name:void 0,namedBindings:void 0};if(ue)switch(ue.kind){case 274:V(ue.name);break;case 275:(u===0||u===1)&&P(ue);break;default:w.assertNever(ue)}if(re&&(u===1||u===2)&&(!I||re.escapedText===XGe(c))){let Ae=d.getSymbolAtLocation(re);R(re,Ae)}}function V(te){u===2&&(!I||M(te.escapedText))&&R(te,d.getSymbolAtLocation(te))}function P(te){if(te)for(let re of te.elements){let{name:ue,propertyName:Ae}=re;if(M((Ae||ue).escapedText))if(Ae)b.push(Ae),(!I||ue.escapedText===c.escapedName)&&R(ue,d.getSymbolAtLocation(ue));else{let de=re.kind===281&&re.propertyName?d.getExportSpecifierLocalTargetSymbol(re):d.getSymbolAtLocation(ue);R(ue,de)}}}function M(te){return te===c.escapedName||u!==0&&te==="default"}}function tos(n,c,u){let d=u.getSymbolAtLocation(c);return!!TQr(n,I=>{if(!mC(I))return;let{exportClause:h,moduleSpecifier:b}=I;return!b&&h&&GB(h)&&h.elements.some(R=>u.getExportSpecifierLocalTargetSymbol(R)===d)})}function wQr(n,c,u){var d;let I=[],h=n.getTypeChecker();for(let b of c){let R=u.valueDeclaration;if(R?.kind===307){for(let N of b.referencedFiles)n.getSourceFileFromReference(b,N)===R&&I.push({kind:"reference",referencingFile:b,ref:N});for(let N of b.typeReferenceDirectives){let V=(d=n.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(N,b))==null?void 0:d.resolvedTypeReferenceDirective;V!==void 0&&V.resolvedFileName===R.fileName&&I.push({kind:"reference",referencingFile:b,ref:N})}}NQr(b,(N,V)=>{h.getSymbolAtLocation(V)===u&&I.push(qd(N)?{kind:"implicit",literal:V,referencingFile:b}:{kind:"import",literal:V})})}return I}function ros(n,c,u){let d=new Map;for(let I of n)u&&u.throwIfCancellationRequested(),NQr(I,(h,b)=>{let R=c.getSymbolAtLocation(b);if(R){let N=kg(R).toString(),V=d.get(N);V||d.set(N,V=[]),V.push(h)}});return d}function TQr(n,c){return X(n.kind===307?n.statements:n.body.statements,u=>c(u)||gqe(u)&&X(u.body&&u.body.statements,c))}function NQr(n,c){if(n.externalModuleIndicator||n.imports!==void 0)for(let u of n.imports)c(VX(u),u);else TQr(n,u=>{switch(u.kind){case 278:case 272:{let d=u;d.moduleSpecifier&&bu(d.moduleSpecifier)&&c(d,d.moduleSpecifier);break}case 271:{let d=u;$9t(d)&&c(d,d.moduleReference.expression);break}}})}function RQr(n,c,u,d){return d?I():I()||h();function I(){var N;let{parent:V}=n,P=V.parent;if(c.exportSymbol)return V.kind===211?(N=c.declarations)!=null&&N.some(re=>re===V)&&no(P)?te(P,!1):void 0:b(c.exportSymbol,R(V));{let re=ios(V,n);if(re&&ba(re,32))return Cm(re)&&re.moduleReference===n?d?void 0:{kind:0,symbol:u.getSymbolAtLocation(re.name)}:b(c,R(re));if(rD(V))return b(c,0);if(tf(V))return M(V);if(tf(P))return M(P);if(no(V))return te(V,!0);if(no(P))return te(P,!0);if(d4(V)||ZKe(V))return b(c,0)}function M(re){if(!re.symbol.parent)return;let ue=re.isExportEquals?2:1;return{kind:1,symbol:c,exportInfo:{exportingModuleSymbol:re.symbol.parent,exportKind:ue}}}function te(re,ue){let Ae;switch(CI(re)){case 1:Ae=0;break;case 2:Ae=2;break;default:return}let de=ue?u.getSymbolAtLocation(Kme(ps(re.left,Cp))):c;return de&&b(de,Ae)}}function h(){if(!sos(n))return;let V=u.getImmediateAliasedSymbol(c);if(!V||(V=oos(V,u),V.escapedName==="export="&&(V=nos(V,u),V===void 0)))return;let P=XGe(V);if(P===void 0||P==="default"||P===c.escapedName)return{kind:0,symbol:V}}function b(N,V){let P=q9t(N,V,u);return P&&{kind:1,symbol:N,exportInfo:P}}function R(N){return ba(N,2048)?1:0}}function nos(n,c){var u,d;if(n.flags&2097152)return c.getImmediateAliasedSymbol(n);let I=w.checkDefined(n.valueDeclaration);if(tf(I))return(u=eo(I.expression,B2))==null?void 0:u.symbol;if(no(I))return(d=eo(I.right,B2))==null?void 0:d.symbol;if(Gc(I))return I.symbol}function ios(n,c){let u=zs(n)?n:ml(n)?fA(n):void 0;return u?n.name!==c||dY(u.parent)?void 0:Rp(u.parent.parent)?u.parent.parent:void 0:n}function sos(n){let{parent:c}=n;switch(c.kind){case 271:return c.name===n&&$9t(c);case 276:return!c.propertyName;case 273:case 274:return w.assert(c.name===n),!0;case 208:return so(n)&&q9(c.parent.parent);default:return!1}}function q9t(n,c,u){let d=n.parent;if(!d)return;let I=u.getMergedSymbol(d);return G3(I)?{exportingModuleSymbol:I,exportKind:c}:void 0}function oos(n,c){if(n.declarations)for(let u of n.declarations){if(c0(u)&&!u.propertyName&&!u.parent.parent.moduleSpecifier)return c.getExportSpecifierLocalTargetSymbol(u)||n;if(Io(u)&&AN(u.expression)&&!kc(u.name))return c.getSymbolAtLocation(u);if(G_(u)&&no(u.parent.parent)&&CI(u.parent.parent)===2)return c.getExportSpecifierLocalTargetSymbol(u.name)}return n}function aos(n,c){return c.getMergedSymbol(JFe(n).symbol)}function JFe(n){if(n.kind===213||n.kind===351)return n.getSourceFile();let{parent:c}=n;return c.kind===307?c:(w.assert(c.kind===268),ps(c.parent,gqe))}function gqe(n){return n.kind===267&&n.name.kind===11}function $9t(n){return n.moduleReference.kind===283&&n.moduleReference.expression.kind===11}var DQr=(n=>(n[n.Symbol=0]="Symbol",n[n.Label=1]="Label",n[n.Keyword=2]="Keyword",n[n.This=3]="This",n[n.String=4]="String",n[n.TripleSlashReference=5]="TripleSlashReference",n))(DQr||{}),xQr=(n=>(n[n.Span=0]="Span",n[n.Node=1]="Node",n[n.StringLiteral=2]="StringLiteral",n[n.SearchedLocalFoundProperty=3]="SearchedLocalFoundProperty",n[n.SearchedPropertyFoundLocal=4]="SearchedPropertyFoundLocal",n))(xQr||{});function Hx(n,c=1){return{kind:c,node:n.name||n,context:cos(n)}}function eVt(n){return n&&n.kind===void 0}function cos(n){if(DC(n))return v4(n);if(n.parent){if(!DC(n.parent)&&!tf(n.parent)){if(so(n)){let u=no(n.parent)?n.parent:Cp(n.parent)&&no(n.parent.parent)&&n.parent.parent.left===n.parent?n.parent.parent:void 0;if(u&&CI(u)!==0)return v4(u)}if(TN(n.parent)||uY(n.parent))return n.parent.parent;if(u4(n.parent)||nC(n.parent)||T3(n.parent))return n.parent;if(XA(n)){let u=lee(n);if(u){let d=Si(u,I=>DC(I)||Ic(I)||X9(I));return DC(d)?v4(d):d}}let c=Si(n,xg);return c?v4(c.parent):void 0}if(n.parent.name===n||Rf(n.parent)||tf(n.parent)||(M9(n.parent)||ml(n.parent))&&n.parent.propertyName===n||n.kind===90&&ba(n.parent,2080))return v4(n.parent)}}function v4(n){if(n)switch(n.kind){case 260:return!yl(n.parent)||n.parent.declarations.length!==1?n:Rp(n.parent.parent)?n.parent.parent:yZ(n.parent.parent)?v4(n.parent.parent):n.parent;case 208:return v4(n.parent.parent);case 276:return n.parent.parent.parent;case 281:case 274:return n.parent.parent;case 273:case 280:return n.parent;case 226:return Hf(n.parent)?n.parent:n;case 250:case 249:return{start:n.initializer,end:n.expression};case 303:case 304:return VZ(n.parent)?v4(Si(n.parent,c=>no(c)||yZ(c))):n;case 255:return{start:be(n.getChildren(n.getSourceFile()),c=>c.kind===109),end:n.caseBlock};default:return n}}function tVt(n,c,u){if(!u)return;let d=eVt(u)?KFe(u.start,c,u.end):KFe(u,c);return d.start!==n.start||d.length!==n.length?{contextSpan:d}:void 0}var kQr=(n=>(n[n.Other=0]="Other",n[n.References=1]="References",n[n.Rename=2]="Rename",n))(kQr||{});function los(n,c,u,d,I){let h=lb(d,I),b={use:1},R=a7.getReferencedSymbolsForNode(I,h,n,u,c,b),N=n.getTypeChecker(),V=a7.getAdjustedNode(h,b),P=uos(V)?N.getSymbolAtLocation(V):void 0;return!R||!R.length?void 0:tr(R,({definition:M,references:te})=>M&&{definition:N.runWithCancellationToken(c,re=>dos(M,re,h)),references:te.map(re=>fos(re,P))})}function uos(n){return n.kind===90||!!X8(n)||fee(n)||n.kind===137&&Rf(n.parent)}function gos(n,c,u,d,I){let h=lb(d,I),b,R=GQr(n,c,u,h,I);if(h.parent.kind===211||h.parent.kind===208||h.parent.kind===212||h.kind===108)b=R&&[...R];else if(R){let V=NA(R),P=new Map;for(;!V.isEmpty();){let M=V.dequeue();if(!R2(P,sd(M.node)))continue;b=Hr(b,M);let te=GQr(n,c,u,M.node,M.node.pos);te&&V.enqueue(...te)}}let N=n.getTypeChecker();return Ot(b,V=>Cos(V,N))}function GQr(n,c,u,d,I){if(d.kind===307)return;let h=n.getTypeChecker();if(d.parent.kind===304){let b=[];return a7.getReferenceEntriesForShorthandPropertyAssignment(d,h,R=>b.push(Hx(R))),b}else if(d.kind===108||M0(d.parent)){let b=h.getSymbolAtLocation(d);return b.valueDeclaration&&[Hx(b.valueDeclaration)]}else return FQr(I,d,n,u,c,{implementations:!0,use:1})}function Aos(n,c,u,d,I,h,b){return Ot(ZQr(a7.getReferencedSymbolsForNode(I,d,n,u,c,h)),R=>b(R,d,n.getTypeChecker()))}function FQr(n,c,u,d,I,h={},b=new Set(d.map(R=>R.fileName))){return ZQr(a7.getReferencedSymbolsForNode(n,c,u,d,I,h,b))}function ZQr(n){return n&&Fr(n,c=>c.references)}function dos(n,c,u){let d=(()=>{switch(n.type){case 0:{let{symbol:P}=n,{displayParts:M,kind:te}=LQr(P,c,u),re=M.map(de=>de.text).join(""),ue=P.declarations&&$i(P.declarations),Ae=ue?vl(ue)||ue:u;return{...UFe(Ae),name:re,kind:te,displayParts:M,context:v4(ue)}}case 1:{let{node:P}=n;return{...UFe(P),name:P.text,kind:"label",displayParts:[Qb(P.text,17)]}}case 2:{let{node:P}=n,M=vr(P.kind);return{...UFe(P),name:M,kind:"keyword",displayParts:[{text:M,kind:"keyword"}]}}case 3:{let{node:P}=n,M=c.getSymbolAtLocation(P),te=M&&MZ.getSymbolDisplayPartsDocumentationAndSymbolKind(c,M,P.getSourceFile(),y4(P),P).displayParts||[P2("this")];return{...UFe(P),name:"this",kind:"var",displayParts:te}}case 4:{let{node:P}=n;return{...UFe(P),name:P.text,kind:"var",displayParts:[Qb(Tf(P),8)]}}case 5:return{textSpan:TV(n.reference),sourceFile:n.file,name:n.reference.fileName,kind:"string",displayParts:[Qb(`"${n.reference.fileName}"`,8)]};default:return w.assertNever(n)}})(),{sourceFile:I,textSpan:h,name:b,kind:R,displayParts:N,context:V}=d;return{containerKind:"",containerName:"",fileName:I.fileName,kind:R,name:b,textSpan:h,displayParts:N,...tVt(h,I,V)}}function UFe(n){let c=n.getSourceFile();return{sourceFile:c,textSpan:KFe(xg(n)?n.expression:n,c)}}function LQr(n,c,u){let d=a7.getIntersectingMeaningFromDeclarations(u,n),I=n.declarations&&$i(n.declarations)||u,{displayParts:h,symbolKind:b}=MZ.getSymbolDisplayPartsDocumentationAndSymbolKind(c,n,I.getSourceFile(),I,I,d);return{displayParts:h,kind:b}}function pos(n,c,u,d,I){return{...Aqe(n),...d&&Ios(n,c,u,I)}}function fos(n,c){let u=VQr(n);return c?{...u,isDefinition:n.kind!==0&&WQr(n.node,c)}:u}function VQr(n){let c=Aqe(n);if(n.kind===0)return{...c,isWriteAccess:!1};let{kind:u,node:d}=n;return{...c,isWriteAccess:nVt(d),isInString:u===2?!0:void 0}}function Aqe(n){if(n.kind===0)return{textSpan:n.textSpan,fileName:n.fileName};{let c=n.node.getSourceFile(),u=KFe(n.node,c);return{textSpan:u,fileName:c.fileName,...tVt(u,c,n.context)}}}function Ios(n,c,u,d){if(n.kind!==0&&(sr(c)||XA(c))){let{node:I,kind:h}=n,b=I.parent,R=c.text,N=G_(b);if(N||Q_e(b)&&b.name===I&&b.dotDotDotToken===void 0){let V={prefixText:R+": "},P={suffixText:": "+R};if(h===3)return V;if(h===4)return P;if(N){let M=b.parent;return tu(M)&&no(M.parent)&&AN(M.parent.left)?V:P}else return V}else if(_y(b)&&!b.propertyName){let V=c0(c.parent)?u.getExportSpecifierLocalTargetSymbol(c.parent):u.getSymbolAtLocation(c);return Ue(V.declarations,b)?{prefixText:R+" as "}:Lv}else if(c0(b)&&!b.propertyName)return c===n.node||u.getSymbolAtLocation(c)===u.getSymbolAtLocation(n.node)?{prefixText:R+" as "}:{suffixText:" as "+R}}if(n.kind!==0&&du(n.node)&&Cp(n.node.parent)){let I=oje(d);return{prefixText:I,suffixText:I}}return Lv}function Cos(n,c){let u=Aqe(n);if(n.kind!==0){let{node:d}=n;return{...u,...mos(d,c)}}else return{...u,kind:"",displayParts:[]}}function mos(n,c){let u=c.getSymbolAtLocation(DC(n)&&n.name?n.name:n);return u?LQr(u,c,n):n.kind===210?{kind:"interface",displayParts:[A0(21),P2("object literal"),A0(22)]}:n.kind===231?{kind:"local class",displayParts:[A0(21),P2("anonymous local class"),A0(22)]}:{kind:_Y(n),displayParts:[]}}function hos(n){let c=Aqe(n);if(n.kind===0)return{fileName:c.fileName,span:{textSpan:c.textSpan,kind:"reference"}};let u=nVt(n.node),d={textSpan:c.textSpan,kind:u?"writtenReference":"reference",isInString:n.kind===2?!0:void 0,...c.contextSpan&&{contextSpan:c.contextSpan}};return{fileName:c.fileName,span:d}}function KFe(n,c,u){let d=n.getStart(c),I=(u||n).getEnd();return XA(n)&&I-d>2&&(w.assert(u===void 0),d+=1,I-=1),u?.kind===269&&(I=u.getFullStart()),Wd(d,I)}function rVt(n){return n.kind===0?n.textSpan:KFe(n.node,n.node.getSourceFile())}function nVt(n){let c=X8(n);return!!c&&_os(c)||n.kind===90||OQ(n)}function WQr(n,c){var u;if(!c)return!1;let d=X8(n)||(n.kind===90?n.parent:fee(n)||n.kind===137&&Rf(n.parent)?n.parent.parent:void 0),I=d&&no(d)?d.left:void 0;return!!(d&&((u=c.declarations)!=null&&u.some(h=>h===d||h===I)))}function _os(n){if(n.flags&33554432)return!0;switch(n.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!VZ(n.parent);case 262:case 218:case 176:case 174:case 177:case 178:return!!n.body;case 260:case 172:return!!n.initializer||dY(n.parent);case 173:case 171:case 348:case 341:return!1;default:return w.failBadSyntaxKind(n)}}var a7;(n=>{function c(kr,en,ct,rn,St,br={},Qt=new Set(rn.map(_r=>_r.fileName))){var _r,Pr;if(en=u(en,br),Gc(en)){let wn=Kte.getReferenceAtPosition(en,kr,ct);if(!wn?.file)return;let Pe=ct.getTypeChecker().getMergedSymbol(wn.file.symbol);if(Pe)return V(ct,Pe,!1,rn,Qt);let ar=ct.getFileIncludeReasons();return ar?[{definition:{type:5,reference:wn.reference,file:en},references:I(wn.file,ar,ct)||v}]:void 0}if(!br.implementations){let wn=M(en,rn,St);if(wn)return wn}let ti=ct.getTypeChecker(),cr=ti.getSymbolAtLocation(Rf(en)&&en.parent.name||en);if(!cr){if(!br.implementations&&XA(en)){if(JGe(en)){let wn=ct.getFileIncludeReasons(),Pe=(Pr=(_r=ct.getResolvedModuleFromModuleSpecifier(en))==null?void 0:_r.resolvedModule)==null?void 0:Pr.resolvedFileName,ar=Pe?ct.getSourceFile(Pe):void 0;if(ar)return[{definition:{type:4,node:en},references:I(ar,wn,ct)||v}]}return Cc(en,rn,ti,St)}return}if(cr.escapedName==="export=")return V(ct,cr.parent,!1,rn,Qt);let kn=b(cr,ct,rn,St,br,Qt);if(kn&&!(cr.flags&33554432))return kn;let Pn=h(en,cr,ti),an=Pn&&b(Pn,ct,rn,St,br,Qt),Kr=te(cr,en,rn,Qt,ti,St,br);return R(ct,kn,Kr,an)}n.getReferencedSymbolsForNode=c;function u(kr,en){return en.use===1?kr=Y7e(kr):en.use===2&&(kr=ZGe(kr)),kr}n.getAdjustedNode=u;function d(kr,en,ct,rn=new Set(ct.map(St=>St.fileName))){var St,br;let Qt=(St=en.getSourceFile(kr))==null?void 0:St.symbol;if(Qt)return((br=V(en,Qt,!1,ct,rn)[0])==null?void 0:br.references)||v;let _r=en.getFileIncludeReasons(),Pr=en.getSourceFile(kr);return Pr&&_r&&I(Pr,_r,en)||v}n.getReferencesForFileName=d;function I(kr,en,ct){let rn,St=en.get(kr.path)||v;for(let br of St)if(gP(br)){let Qt=ct.getSourceFileByPath(br.file),_r=uue(ct,br);Tte(_r)&&(rn=Hr(rn,{kind:0,fileName:Qt.fileName,textSpan:TV(_r)}))}return rn}function h(kr,en,ct){if(kr.parent&&Vhe(kr.parent)){let rn=ct.getAliasedSymbol(en),St=ct.getMergedSymbol(rn);if(rn!==St)return St}}function b(kr,en,ct,rn,St,br){let Qt=kr.flags&1536&&kr.declarations&&be(kr.declarations,Gc);if(!Qt)return;let _r=kr.exports.get("export="),Pr=V(en,kr,!!_r,ct,br);if(!_r||!br.has(Qt.fileName))return Pr;let ti=en.getTypeChecker();return kr=dh(_r,ti),R(en,Pr,te(kr,void 0,ct,br,ti,rn,St))}function R(kr,...en){let ct;for(let rn of en)if(!(!rn||!rn.length)){if(!ct){ct=rn;continue}for(let St of rn){if(!St.definition||St.definition.type!==0){ct.push(St);continue}let br=St.definition.symbol,Qt=ke(ct,Pr=>!!Pr.definition&&Pr.definition.type===0&&Pr.definition.symbol===br);if(Qt===-1){ct.push(St);continue}let _r=ct[Qt];ct[Qt]={definition:_r.definition,references:_r.references.concat(St.references).sort((Pr,ti)=>{let cr=N(kr,Pr),kn=N(kr,ti);if(cr!==kn)return Xl(cr,kn);let Pn=rVt(Pr),an=rVt(ti);return Pn.start!==an.start?Xl(Pn.start,an.start):Xl(Pn.length,an.length)})}}}return ct}function N(kr,en){let ct=en.kind===0?kr.getSourceFile(en.fileName):en.node.getSourceFile();return kr.getSourceFiles().indexOf(ct)}function V(kr,en,ct,rn,St){w.assert(!!en.valueDeclaration);let br=tr(wQr(kr,rn,en),_r=>{if(_r.kind==="import"){let Pr=_r.literal.parent;if(id(Pr)){let ti=ps(Pr.parent,Tu);if(ct&&!ti.qualifier)return}return Hx(_r.literal)}else if(_r.kind==="implicit"){let Pr=_r.literal.text!==vx&&Z6(_r.referencingFile,ti=>ti.transformFlags&2?Ox(ti)||u4(ti)||gY(ti)?ti:void 0:"skip")||_r.referencingFile.statements[0]||_r.referencingFile;return Hx(Pr)}else return{kind:0,fileName:_r.referencingFile.fileName,textSpan:TV(_r.ref)}});if(en.declarations)for(let _r of en.declarations)switch(_r.kind){case 307:break;case 267:St.has(_r.getSourceFile().fileName)&&br.push(Hx(_r.name));break;default:w.assert(!!(en.flags&33554432),"Expected a module symbol to be declared by a SourceFile or ModuleDeclaration.")}let Qt=en.exports.get("export=");if(Qt?.declarations)for(let _r of Qt.declarations){let Pr=_r.getSourceFile();if(St.has(Pr.fileName)){let ti=no(_r)&&Io(_r.left)?_r.left.expression:tf(_r)?w.checkDefined(Od(_r,95,Pr)):vl(_r)||_r;br.push(Hx(ti))}}return br.length?[{definition:{type:0,symbol:en},references:br}]:v}function P(kr){return kr.kind===148&&as(kr.parent)&&kr.parent.operator===148}function M(kr,en,ct){if(mue(kr.kind))return kr.kind===116&&Cf(kr.parent)||kr.kind===148&&!P(kr)?void 0:Et(en,kr.kind,ct,kr.kind===148?P:void 0);if(Vb(kr.parent)&&kr.parent.name===kr)return ht(en,ct);if(nT(kr)&&$p(kr.parent))return[{definition:{type:2,node:kr},references:[Hx(kr)]}];if(k_e(kr)){let rn=RGe(kr.parent,kr.text);return rn&&vt(rn.parent,rn)}else if(F7e(kr))return vt(kr.parent,kr);if(Gte(kr))return ul(kr,en,ct);if(kr.kind===108)return rc(kr)}function te(kr,en,ct,rn,St,br,Qt){let _r=en&&Ae(kr,en,St,!BA(Qt))||kr,Pr=en?qa(en,_r):7,ti=[],cr=new Fe(ct,rn,en?ue(en):0,St,br,Pr,Qt,ti),kn=!BA(Qt)||!_r.declarations?void 0:be(_r.declarations,c0);if(kn)Dr(kn.name,_r,kn,cr.createSearch(en,kr,void 0),cr,!0,!0);else if(en&&en.kind===90&&_r.escapedName==="default"&&_r.parent)Yr(en,_r,cr),Ne(en,_r,{exportingModuleSymbol:_r.parent,exportKind:1},cr);else{let Pn=cr.createSearch(en,_r,void 0,{allSearchSymbols:en?Wu(_r,en,St,Qt.use===2,!!Qt.providePrefixAndSuffixTextForRename,!!Qt.implementations):[_r]});re(_r,cr,Pn)}return ti}function re(kr,en,ct){let rn=st(kr);if(rn)Tt(rn,rn.getSourceFile(),ct,en,!(Gc(rn)&&!Ue(en.sourceFiles,rn)));else for(let St of en.sourceFiles)en.cancellationToken.throwIfCancellationRequested(),Le(St,ct,en)}function ue(kr){switch(kr.kind){case 176:case 137:return 1;case 80:if(Sa(kr.parent))return w.assert(kr.parent.name===kr),2;default:return 0}}function Ae(kr,en,ct,rn){let{parent:St}=en;return c0(St)&&rn?jt(en,kr,St,ct):le(kr.declarations,br=>{if(!br.parent){if(kr.flags&33554432)return;w.fail(`Unexpected symbol at ${w.formatSyntaxKind(en.kind)}: ${w.formatSymbol(kr)}`)}return Se(br.parent)&&Is(br.parent.parent)?ct.getPropertyOfType(ct.getTypeFromTypeNode(br.parent.parent),kr.name):void 0})}let de;(kr=>{kr[kr.None=0]="None",kr[kr.Constructor=1]="Constructor",kr[kr.Class=2]="Class"})(de||(de={}));function Be(kr){if(!(kr.flags&33555968))return;let en=kr.declarations&&be(kr.declarations,ct=>!Gc(ct)&&!CC(ct));return en&&en.symbol}class Fe{constructor(en,ct,rn,St,br,Qt,_r,Pr){this.sourceFiles=en,this.sourceFilesSet=ct,this.specialSearchKind=rn,this.checker=St,this.cancellationToken=br,this.searchMeaning=Qt,this.options=_r,this.result=Pr,this.inheritsFromCache=new Map,this.markSeenContainingTypeReference=Zte(),this.markSeenReExportRHS=Zte(),this.symbolIdToReferences=[],this.sourceFileToSeenSymbols=[]}includesSourceFile(en){return this.sourceFilesSet.has(en.fileName)}getImportSearches(en,ct){return this.importTracker||(this.importTracker=z9t(this.sourceFiles,this.sourceFilesSet,this.checker,this.cancellationToken)),this.importTracker(en,ct,this.options.use===2)}createSearch(en,ct,rn,St={}){let{text:br=N2(df(n6(ct)||Be(ct)||ct)),allSearchSymbols:Qt=[ct]}=St,_r=Rd(br),Pr=this.options.implementations&&en?Bi(en,ct,this.checker):void 0;return{symbol:ct,comingFrom:rn,text:br,escapedText:_r,parents:Pr,allSearchSymbols:Qt,includes:ti=>Ue(Qt,ti)}}referenceAdder(en){let ct=kg(en),rn=this.symbolIdToReferences[ct];return rn||(rn=this.symbolIdToReferences[ct]=[],this.result.push({definition:{type:0,symbol:en},references:rn})),(St,br)=>rn.push(Hx(St,br))}addStringOrCommentReference(en,ct){this.result.push({definition:void 0,references:[{kind:0,fileName:en,textSpan:ct}]})}markSearchedSymbols(en,ct){let rn=sd(en),St=this.sourceFileToSeenSymbols[rn]||(this.sourceFileToSeenSymbols[rn]=new Set),br=!1;for(let Qt of ct)br=Zi(St,kg(Qt))||br;return br}}function Ne(kr,en,ct,rn){let{importSearches:St,singleReferences:br,indirectUsers:Qt}=rn.getImportSearches(en,ct);if(br.length){let _r=rn.referenceAdder(en);for(let Pr of br)De(Pr,rn)&&_r(Pr)}for(let[_r,Pr]of St)Kt(_r.getSourceFile(),rn.createSearch(_r,Pr,1),rn);if(Qt.length){let _r;switch(ct.exportKind){case 0:_r=rn.createSearch(kr,en,1);break;case 1:_r=rn.options.use===2?void 0:rn.createSearch(kr,en,1,{text:"default"});break;case 2:break}if(_r)for(let Pr of Qt)Le(Pr,_r,rn)}}function Qe(kr,en,ct,rn,St,br,Qt,_r){let Pr=z9t(kr,new Set(kr.map(Pn=>Pn.fileName)),en,ct),{importSearches:ti,indirectUsers:cr,singleReferences:kn}=Pr(rn,{exportKind:Qt?1:0,exportingModuleSymbol:St},!1);for(let[Pn]of ti)_r(Pn);for(let Pn of kn)sr(Pn)&&Tu(Pn.parent)&&_r(Pn);for(let Pn of cr)for(let an of dt(Pn,Qt?"default":br)){let Kr=en.getSymbolAtLocation(an),wn=lr(Kr?.declarations,Pe=>!!eo(Pe,tf));sr(an)&&!M9(an.parent)&&(Kr===rn||wn)&&_r(an)}}n.eachExportReference=Qe;function De(kr,en){return Lt(kr,en)?en.options.use!==2?!0:sr(kr)?!(M9(kr.parent)&&kr.escapedText==="default"):!1:!1}function lt(kr,en){if(kr.declarations)for(let ct of kr.declarations){let rn=ct.getSourceFile();Kt(rn,en.createSearch(ct,kr,0),en,en.includesSourceFile(rn))}}function Le(kr,en,ct){bze(kr).get(en.escapedText)!==void 0&&Kt(kr,en,ct)}function je(kr,en){return VZ(kr.parent.parent)?en.getPropertySymbolOfDestructuringAssignment(kr):void 0}function st(kr){let{declarations:en,flags:ct,parent:rn,valueDeclaration:St}=kr;if(St&&(St.kind===218||St.kind===231))return St;if(!en)return;if(ct&8196){let _r=be(en,Pr=>nb(Pr,2)||Rh(Pr));return _r?CG(_r,263):void 0}if(en.some(Q_e))return;let br=rn&&!(kr.flags&262144);if(br&&!(G3(rn)&&!rn.globalExports))return;let Qt;for(let _r of en){let Pr=y4(_r);if(Qt&&Qt!==Pr||!Pr||Pr.kind===307&&!ia(Pr))return;if(Qt=Pr,WA(Qt)){let ti;for(;ti=dme(Qt);)Qt=ti}}return br?Qt.getSourceFile():Qt}function nt(kr,en,ct,rn=ct){return qe(kr,en,ct,()=>!0,rn)||!1}n.isSymbolReferencedInFile=nt;function qe(kr,en,ct,rn,St=ct){let br=Zn(kr.parent,kr.parent.parent)?$s(en.getSymbolsOfParameterPropertyDeclaration(kr.parent,kr.text)):en.getSymbolAtLocation(kr);if(br)for(let Qt of dt(ct,br.name,St)){if(!sr(Qt)||Qt===kr||Qt.escapedText!==kr.escapedText)continue;let _r=en.getSymbolAtLocation(Qt);if(_r===br||en.getShorthandAssignmentValueSymbol(Qt.parent)===br||c0(Qt.parent)&&jt(Qt,_r,Qt.parent,en)===br){let Pr=rn(Qt);if(Pr)return Pr}}}n.eachSymbolReferenceInFile=qe;function it(kr,en){return Gt(dt(en,kr),St=>!!X8(St)).reduce((St,br)=>{let Qt=rn(br);return!lr(St.declarationNames)||Qt===St.depth?(St.declarationNames.push(br),St.depth=Qt):Qtcr===St)&&rn(Qt,Pr))return!0}return!1}n.someSignatureUsage=It;function dt(kr,en,ct=kr){return tr(wt(kr,en,ct),rn=>{let St=lb(kr,rn);return St===kr?void 0:St})}function wt(kr,en,ct=kr){let rn=[];if(!en||!en.length)return rn;let St=kr.text,br=St.length,Qt=en.length,_r=St.indexOf(en,ct.pos);for(;_r>=0&&!(_r>ct.end);){let Pr=_r+Qt;(_r===0||!h2(St.charCodeAt(_r-1),99))&&(Pr===br||!h2(St.charCodeAt(Pr),99))&&rn.push(_r),_r=St.indexOf(en,_r+Qt+1)}return rn}function vt(kr,en){let ct=kr.getSourceFile(),rn=en.text,St=tr(dt(ct,rn,kr),br=>br===en||k_e(br)&&RGe(br,rn)===en?Hx(br):void 0);return[{definition:{type:1,node:en},references:St}]}function Ye(kr,en){switch(kr.kind){case 81:if(nP(kr.parent))return!0;case 80:return kr.text.length===en.length;case 15:case 11:{let ct=kr;return(DGe(ct)||W7e(kr)||CGt(kr)||cu(kr.parent)&&M3(kr.parent)&&kr.parent.arguments[1]===kr)&&ct.text.length===en.length}case 9:return DGe(kr)&&kr.text.length===en.length;case 90:return en.length===7;default:return!1}}function ht(kr,en){let ct=Fr(kr,rn=>(en.throwIfCancellationRequested(),tr(dt(rn,"meta",rn),St=>{let br=St.parent;if(Vb(br))return Hx(br)})));return ct.length?[{definition:{type:2,node:ct[0].node},references:ct}]:void 0}function Et(kr,en,ct,rn){let St=Fr(kr,br=>(ct.throwIfCancellationRequested(),tr(dt(br,vr(en),br),Qt=>{if(Qt.kind===en&&(!rn||rn(Qt)))return Hx(Qt)})));return St.length?[{definition:{type:2,node:St[0].node},references:St}]:void 0}function Kt(kr,en,ct,rn=!0){return ct.cancellationToken.throwIfCancellationRequested(),Tt(kr,kr,en,ct,rn)}function Tt(kr,en,ct,rn,St){if(rn.markSearchedSymbols(en,ct.allSearchSymbols))for(let br of wt(en,ct.text,kr))kt(en,br,ct,rn,St)}function Lt(kr,en){return!!(_4(kr)&en.searchMeaning)}function kt(kr,en,ct,rn,St){let br=lb(kr,en);if(!Ye(br,ct.text)){!rn.options.implementations&&(rn.options.findInStrings&&U6(kr,en)||rn.options.findInComments&&DGt(kr,en))&&rn.addStringOrCommentReference(kr.fileName,bd(en,ct.text.length));return}if(!Lt(br,rn))return;let Qt=rn.checker.getSymbolAtLocation(br);if(!Qt)return;let _r=br.parent;if(_y(_r)&&_r.propertyName===br)return;if(c0(_r)){w.assert(br.kind===80),Dr(br,Qt,_r,ct,rn,St);return}if(fZ(_r)&&_r.isNameFirst&&_r.typeExpression&&A4(_r.typeExpression.type)&&_r.typeExpression.type.jsDocPropertyTags&&O(_r.typeExpression.type.jsDocPropertyTags)){Zt(_r.typeExpression.type.jsDocPropertyTags,br,ct,rn);return}let Pr=Hs(ct,Qt,br,rn);if(!Pr){Vr(Qt,ct,rn);return}switch(rn.specialSearchKind){case 0:St&&Yr(br,Pr,rn);break;case 1:pr(br,kr,ct,rn);break;case 2:zr(br,ct,rn);break;default:w.assertNever(rn.specialSearchKind)}so(br)&&ml(br.parent)&&q9(br.parent.parent.parent)&&(Qt=br.parent.symbol,!Qt)||Pt(br,Qt,ct,rn)}function Zt(kr,en,ct,rn){let St=rn.referenceAdder(ct.symbol);Yr(en,ct.symbol,rn),X(kr,br=>{a0(br.name)&&St(br.name.left)})}function Dr(kr,en,ct,rn,St,br,Qt){w.assert(!Qt||!!St.options.providePrefixAndSuffixTextForRename,"If alwaysGetReferences is true, then prefix/suffix text must be enabled");let{parent:_r,propertyName:Pr,name:ti}=ct,cr=_r.parent,kn=jt(kr,en,ct,St.checker);if(!Qt&&!rn.includes(kn))return;if(Pr?kr===Pr?(cr.moduleSpecifier||Pn(),br&&St.options.use!==2&&St.markSeenReExportRHS(ti)&&Yr(ti,w.checkDefined(ct.symbol),St)):St.markSeenReExportRHS(kr)&&Pn():St.options.use===2&&ti.escapedText==="default"||Pn(),!BA(St.options)||Qt){let Kr=kr.escapedText==="default"||ct.name.escapedText==="default"?1:0,wn=w.checkDefined(ct.symbol),Pe=q9t(wn,Kr,St.checker);Pe&&Ne(kr,wn,Pe,St)}if(rn.comingFrom!==1&&cr.moduleSpecifier&&!Pr&&!BA(St.options)){let an=St.checker.getExportSpecifierLocalTargetSymbol(ct);an&<(an,St)}function Pn(){br&&Yr(kr,kn,St)}}function jt(kr,en,ct,rn){return mr(kr,ct)&&rn.getExportSpecifierLocalTargetSymbol(ct)||en}function mr(kr,en){let{parent:ct,propertyName:rn,name:St}=en;return w.assert(rn===kr||St===kr),rn?rn===kr:!ct.parent.moduleSpecifier}function Pt(kr,en,ct,rn){let St=RQr(kr,en,rn.checker,ct.comingFrom===1);if(!St)return;let{symbol:br}=St;St.kind===0?BA(rn.options)||lt(br,rn):Ne(kr,br,St.exportInfo,rn)}function Vr({flags:kr,valueDeclaration:en},ct,rn){let St=rn.checker.getShorthandAssignmentValueSymbol(en),br=en&&vl(en);!(kr&33554432)&&br&&ct.includes(St)&&Yr(br,St,rn)}function Yr(kr,en,ct){let{kind:rn,symbol:St}="kind"in en?en:{kind:void 0,symbol:en};if(ct.options.use===2&&kr.kind===90)return;let br=ct.referenceAdder(St);ct.options.implementations?jn(kr,br,ct):br(kr,rn)}function pr(kr,en,ct,rn){fue(kr)&&Yr(kr,ct.symbol,rn);let St=()=>rn.referenceAdder(ct.symbol);if(Sa(kr.parent))w.assert(kr.kind===90||kr.parent.name===kr),$n(ct.symbol,en,St());else{let br=Ku(kr);br&&(Pi(br,St()),gi(br,rn))}}function zr(kr,en,ct){Yr(kr,en.symbol,ct);let rn=kr.parent;if(ct.options.use===2||!Sa(rn))return;w.assert(rn.name===kr);let St=ct.referenceAdder(en.symbol);for(let br of rn.members)hZ(br)&&$u(br)&&br.body&&br.body.forEachChild(function Qt(_r){_r.kind===110?St(_r):!$l(_r)&&!Sa(_r)&&_r.forEachChild(Qt)})}function $n(kr,en,ct){let rn=bi(kr);if(rn&&rn.declarations)for(let St of rn.declarations){let br=Od(St,137,en);w.assert(St.kind===176&&!!br),ct(br)}kr.exports&&kr.exports.forEach(St=>{let br=St.valueDeclaration;if(br&&br.kind===174){let Qt=br.body;Qt&&cg(Qt,110,_r=>{fue(_r)&&ct(_r)})}})}function bi(kr){return kr.members&&kr.members.get("__constructor")}function Pi(kr,en){let ct=bi(kr.symbol);if(ct&&ct.declarations)for(let rn of ct.declarations){w.assert(rn.kind===176);let St=rn.body;St&&cg(St,108,br=>{x7e(br)&&en(br)})}}function Ns(kr){return!!bi(kr.symbol)}function gi(kr,en){if(Ns(kr))return;let ct=kr.symbol,rn=en.createSearch(void 0,ct,void 0);re(ct,en,rn)}function jn(kr,en,ct){if(eT(kr)&&nc(kr.parent)){en(kr);return}if(kr.kind!==80)return;kr.parent.kind===304&&Nc(kr,ct.checker,en);let rn=xs(kr);if(rn){en(rn);return}let St=Si(kr,_r=>!a0(_r.parent)&&!Ya(_r.parent)&&!Bx(_r.parent)),br=St.parent;if(XC(br)&&br.type===St&&ct.markSeenContainingTypeReference(br))if(qw(br))Qt(br.initializer);else if($l(br)&&br.body){let _r=br.body;_r.kind===241?wx(_r,Pr=>{Pr.expression&&Qt(Pr.expression)}):Qt(_r)}else DE(br)&&Qt(br.expression);function Qt(_r){Ec(_r)&&en(_r)}}function xs(kr){return sr(kr)||Io(kr)?xs(kr.parent):x_(kr)?eo(kr.parent.parent,pg(Sa,HI)):void 0}function Ec(kr){switch(kr.kind){case 217:return Ec(kr.expression);case 219:case 218:case 210:case 231:case 209:return!0;default:return!1}}function xi(kr,en,ct,rn){if(kr===en)return!0;let St=kg(kr)+","+kg(en),br=ct.get(St);if(br!==void 0)return br;ct.set(St,!1);let Qt=!!kr.declarations&&kr.declarations.some(_r=>J8(_r).some(Pr=>{let ti=rn.getTypeAtLocation(Pr);return!!ti&&!!ti.symbol&&xi(ti.symbol,en,ct,rn)}));return ct.set(St,Qt),Qt}function rc(kr){let en=k8(kr,!1);if(!en)return;let ct=256;switch(en.kind){case 172:case 171:case 174:case 173:case 176:case 177:case 178:ct&=zR(en),en=en.parent;break;default:return}let rn=en.getSourceFile(),St=tr(dt(rn,"super",en),br=>{if(br.kind!==108)return;let Qt=k8(br,!1);return Qt&&$u(Qt)===!!ct&&Qt.parent.symbol===en.symbol?Hx(br):void 0});return[{definition:{type:0,symbol:en.symbol},references:St}]}function Vl(kr){return kr.kind===80&&kr.parent.kind===169&&kr.parent.name===kr}function ul(kr,en,ct){let rn=r0(kr,!1,!1),St=256;switch(rn.kind){case 174:case 173:if(TB(rn)){St&=zR(rn),rn=rn.parent;break}case 172:case 171:case 176:case 177:case 178:St&=zR(rn),rn=rn.parent;break;case 307:if(mm(rn)||Vl(kr))return;case 262:case 218:break;default:return}let br=Fr(rn.kind===307?en:[rn.getSourceFile()],_r=>(ct.throwIfCancellationRequested(),dt(_r,"this",Gc(rn)?_r:rn).filter(Pr=>{if(!Gte(Pr))return!1;let ti=r0(Pr,!1,!1);if(!B2(ti))return!1;switch(rn.kind){case 218:case 262:return rn.symbol===ti.symbol;case 174:case 173:return TB(rn)&&rn.symbol===ti.symbol;case 231:case 263:case 210:return ti.parent&&B2(ti.parent)&&rn.symbol===ti.parent.symbol&&$u(ti)===!!St;case 307:return ti.kind===307&&!mm(ti)&&!Vl(Pr)}}))).map(_r=>Hx(_r));return[{definition:{type:3,node:le(br,_r=>Jc(_r.node.parent)?_r.node:void 0)||kr},references:br}]}function Cc(kr,en,ct,rn){let St=FGe(kr,ct),br=Fr(en,Qt=>(rn.throwIfCancellationRequested(),tr(dt(Qt,kr.text),_r=>{if(XA(_r)&&_r.text===kr.text)if(St){let Pr=FGe(_r,ct);if(St!==ct.getStringType()&&(St===Pr||_s(_r,ct)))return Hx(_r,2)}else return oY(_r)&&!NZ(_r,Qt)?void 0:Hx(_r,2)})));return[{definition:{type:4,node:kr},references:br}]}function _s(kr,en){if(n_(kr.parent))return en.getPropertyOfType(en.getTypeAtLocation(kr.parent.parent),kr.text)}function Wu(kr,en,ct,rn,St,br){let Qt=[];return ir(kr,en,ct,rn,!(rn&&St),(_r,Pr,ti)=>{ti&&gs(kr)!==gs(ti)&&(ti=void 0),Qt.push(ti||Pr||_r)},()=>!br),Qt}function ir(kr,en,ct,rn,St,br,Qt){let _r=a0e(en);if(_r){let Kr=ct.getShorthandAssignmentValueSymbol(en.parent);if(Kr&&rn)return br(Kr,void 0,void 0,3);let wn=ct.getContextualType(_r.parent),Pe=wn&&le(GFe(_r,ct,wn,!0),ur=>Pn(ur,4));if(Pe)return Pe;let ar=je(en,ct),sn=ar&&br(ar,void 0,void 0,4);if(sn)return sn;let Me=Kr&&br(Kr,void 0,void 0,3);if(Me)return Me}let Pr=h(en,kr,ct);if(Pr){let Kr=br(Pr,void 0,void 0,1);if(Kr)return Kr}let ti=Pn(kr);if(ti)return ti;if(kr.valueDeclaration&&Zn(kr.valueDeclaration,kr.valueDeclaration.parent)){let Kr=ct.getSymbolsOfParameterPropertyDeclaration(ps(kr.valueDeclaration,Jc),kr.name);return w.assert(Kr.length===2&&!!(Kr[0].flags&1)&&!!(Kr[1].flags&4)),Pn(kr.flags&1?Kr[1]:Kr[0])}let cr=zd(kr,281);if(!rn||cr&&!cr.propertyName){let Kr=cr&&ct.getExportSpecifierLocalTargetSymbol(cr);if(Kr){let wn=br(Kr,void 0,void 0,1);if(wn)return wn}}if(!rn){let Kr;return St?Kr=Q_e(en.parent)?UGe(ct,en.parent):void 0:Kr=an(kr,ct),Kr&&Pn(Kr,4)}if(w.assert(rn),St){let Kr=an(kr,ct);return Kr&&Pn(Kr,4)}function Pn(Kr,wn){return le(ct.getRootSymbols(Kr),Pe=>br(Kr,Pe,void 0,wn)||(Pe.parent&&Pe.parent.flags&96&&Qt(Pe)?ni(Pe.parent,Pe.name,ct,ar=>br(Kr,Pe,ar,wn)):void 0))}function an(Kr,wn){let Pe=zd(Kr,208);if(Pe&&Q_e(Pe))return UGe(wn,Pe)}}function ni(kr,en,ct,rn){let St=new Map;return br(kr);function br(Qt){if(!(!(Qt.flags&96)||!R2(St,kg(Qt))))return le(Qt.declarations,_r=>le(J8(_r),Pr=>{let ti=ct.getTypeAtLocation(Pr),cr=ti&&ti.symbol&&ct.getPropertyOfType(ti,en);return ti&&cr&&(le(ct.getRootSymbols(cr),rn)||br(ti.symbol))}))}}function gs(kr){return kr.valueDeclaration?!!(N_(kr.valueDeclaration)&256):!1}function Hs(kr,en,ct,rn){let{checker:St}=rn;return ir(en,ct,St,!1,rn.options.use!==2||!!rn.options.providePrefixAndSuffixTextForRename,(br,Qt,_r,Pr)=>(_r&&gs(en)!==gs(_r)&&(_r=void 0),kr.includes(_r||Qt||br)?{symbol:Qt&&!(aI(br)&6)?Qt:br,kind:Pr}:void 0),br=>!(kr.parents&&!kr.parents.some(Qt=>xi(br.parent,Qt,rn.inheritsFromCache,St))))}function qa(kr,en){let ct=_4(kr),{declarations:rn}=en;if(rn){let St;do{St=ct;for(let br of rn){let Qt=wGe(br);Qt&ct&&(ct|=Qt)}}while(ct!==St)}return ct}n.getIntersectingMeaningFromDeclarations=qa;function nc(kr){return kr.flags&33554432?!(HI(kr)||Wf(kr)):TQ(kr)?qw(kr):dd(kr)?!!kr.body:Sa(kr)||yX(kr)}function Nc(kr,en,ct){let rn=en.getSymbolAtLocation(kr),St=en.getShorthandAssignmentValueSymbol(rn.valueDeclaration);if(St)for(let br of St.getDeclarations())wGe(br)&1&&ct(br)}n.getReferenceEntriesForShorthandPropertyAssignment=Nc;function cg(kr,en,ct){mu(kr,rn=>{rn.kind===en&&ct(rn),cg(rn,en,ct)})}function Ku(kr){return Pme(NGe(kr).parent)}function Bi(kr,en,ct){let rn=kte(kr)?kr.parent:void 0,St=rn&&ct.getTypeAtLocation(rn.expression),br=tr(St&&(St.isUnionOrIntersection()?St.types:St.symbol===en.parent?void 0:[St]),Qt=>Qt.symbol&&Qt.symbol.flags&96?Qt.symbol:void 0);return br.length===0?void 0:br}function BA(kr){return kr.use===2&&kr.providePrefixAndSuffixTextForRename}})(a7||(a7={}));var Kte={};o(Kte,{createDefinitionInfo:()=>I0e,findReferenceInPosition:()=>Oue,getDefinitionAndBoundSpan:()=>wos,getDefinitionAtPosition:()=>PQr,getReferenceAtPosition:()=>MQr,getTypeDefinitionAtPosition:()=>vos});function PQr(n,c,u,d,I){var h;let b=MQr(c,u,n),R=b&&[xos(b.reference.fileName,b.fileName,b.unverified)]||v;if(b?.file)return R;let N=lb(c,u);if(N===c)return;let{parent:V}=N,P=n.getTypeChecker();if(N.kind===164||sr(N)&&Jxe(V)&&V.tagName===N)return bos(P,N)||v;if(k_e(N)){let de=RGe(N.parent,N.text);return de?[iVt(P,de,"label",N.text,void 0)]:void 0}switch(N.kind){case 107:let de=Si(N.parent,Fe=>$p(Fe)?"quit":dd(Fe));return de?[jFe(P,de)]:void 0;case 90:if(!Gle(N.parent))break;case 84:let Be=Si(N.parent,Ed);if(Be)return[Dos(Be,c)];break}if(N.kind===135){let de=Si(N,Fe=>dd(Fe));return de&&lr(de.modifiers,Fe=>Fe.kind===134)?[jFe(P,de)]:void 0}if(N.kind===127){let de=Si(N,Fe=>dd(Fe));return de&&de.asteriskToken?[jFe(P,de)]:void 0}if(nT(N)&&$p(N.parent)){let de=N.parent.parent,{symbol:Be,failedAliasResolution:Fe}=dqe(de,P,I),Ne=Gt(de.members,$p),Qe=Be?P.symbolToString(Be,de):"",De=N.getSourceFile();return Ot(Ne,lt=>{let{pos:Le}=OS(lt);return Le=Ju(De.text,Le),iVt(P,lt,"constructor","static {}",Qe,!1,Fe,{start:Le,length:6})})}let{symbol:M,failedAliasResolution:te}=dqe(N,P,I),re=N;if(d&&te){let de=X([N,...M?.declarations||v],Fe=>Si(Fe,zae)),Be=de&&Y8(de);Be&&({symbol:M,failedAliasResolution:te}=dqe(Be,P,I),re=Be)}if(!M&&JGe(re)){let de=(h=n.getResolvedModuleFromModuleSpecifier(re,c))==null?void 0:h.resolvedModule;if(de)return[{name:re.text,fileName:de.resolvedFileName,containerName:void 0,containerKind:void 0,kind:"script",textSpan:bd(0,0),failedAliasResolution:te,isAmbient:kh(de.resolvedFileName),unverified:re!==N}]}if(!M)return vi(R,Tos(N,P));if(d&&he(M.declarations,de=>de.getSourceFile().fileName===c.fileName))return;let ue=Gos(P,N);if(ue&&!(Jm(N.parent)&&Fos(ue))){let de=jFe(P,ue,te);if(P.getRootSymbols(M).some(Be=>yos(Be,ue)))return[de];{let Be=Pue(P,M,N,te,ue)||v;return N.kind===108?[de,...Be]:[...Be,de]}}if(N.parent.kind===304){let de=P.getShorthandAssignmentValueSymbol(M.valueDeclaration),Be=de?.declarations?de.declarations.map(Fe=>I0e(Fe,P,de,N,!1,te)):v;return vi(Be,OQr(P,N))}if(NI(N)&&ml(V)&&Vg(V.parent)&&N===(V.propertyName||V.name)){let de=M_e(N),Be=P.getTypeAtLocation(V.parent);return de===void 0?v:Fr(Be.isUnion()?Be.types:[Be],Fe=>{let Ne=Fe.getProperty(de);return Ne&&Pue(P,Ne,N)})}let Ae=OQr(P,N);return vi(R,Ae.length?Ae:Pue(P,M,N,te))}function yos(n,c){var u;return n===c.symbol||n===c.symbol.parent||fm(c.parent)||!AG(c.parent)&&n===((u=eo(c.parent,B2))==null?void 0:u.symbol)}function OQr(n,c){let u=a0e(c);if(u){let d=u&&n.getContextualType(u.parent);if(d)return Fr(GFe(u,n,d,!1),I=>Pue(n,I,c))}return v}function bos(n,c){let u=Si(c,rC);if(!(u&&u.name))return;let d=Si(u,Sa);if(!d)return;let I=Dv(d);if(!I)return;let h=jA(I.expression),b=tp(h)?h.symbol:n.getSymbolAtLocation(h);if(!b)return;let R=Sc(K9(u.name)),N=IC(u)?n.getPropertyOfType(n.getTypeOfSymbol(b),R):n.getPropertyOfType(n.getDeclaredTypeOfSymbol(b),R);if(N)return Pue(n,N,c)}function MQr(n,c,u){var d,I;let h=Oue(n.referencedFiles,c);if(h){let N=u.getSourceFileFromReference(n,h);return N&&{reference:h,fileName:N.fileName,file:N,unverified:!1}}let b=Oue(n.typeReferenceDirectives,c);if(b){let N=(d=u.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(b,n))==null?void 0:d.resolvedTypeReferenceDirective,V=N&&u.getSourceFile(N.resolvedFileName);return V&&{reference:b,fileName:V.fileName,file:V,unverified:!1}}let R=Oue(n.libReferenceDirectives,c);if(R){let N=u.getLibFileFromReference(R);return N&&{reference:R,fileName:N.fileName,file:N,unverified:!1}}if(n.imports.length||n.moduleAugmentations.length){let N=Fte(n,c),V;if(JGe(N)&&Jl(N.text)&&(V=u.getResolvedModuleFromModuleSpecifier(N,n))){let P=(I=V.resolvedModule)==null?void 0:I.resolvedFileName,M=P||q_(aa(n.fileName),N.text);return{file:u.getSourceFile(M),fileName:M,reference:{pos:N.getStart(),end:N.getEnd(),fileName:N.text},unverified:!P}}}}var QQr=new Set(["Array","ArrayLike","ReadonlyArray","Promise","PromiseLike","Iterable","IterableIterator","AsyncIterable","Set","WeakSet","ReadonlySet","Map","WeakMap","ReadonlyMap","Partial","Required","Readonly","Pick","Omit"]);function Eos(n,c){let u=c.symbol.name;if(!QQr.has(u))return!1;let d=n.resolveName(u,void 0,788968,!1);return!!d&&d===c.target.symbol}function YQr(n,c){if(!c.aliasSymbol)return!1;let u=c.aliasSymbol.name;if(!QQr.has(u))return!1;let d=n.resolveName(u,void 0,788968,!1);return!!d&&d===c.aliasSymbol}function Bos(n,c,u,d){var I,h;if(sa(c)&4&&Eos(n,c))return f0e(n.getTypeArguments(c)[0],n,u,d);if(YQr(n,c)&&c.aliasTypeArguments)return f0e(c.aliasTypeArguments[0],n,u,d);if(sa(c)&32&&c.target&&YQr(n,c.target)){let b=(h=(I=c.aliasSymbol)==null?void 0:I.declarations)==null?void 0:h[0];if(b&&Wf(b)&&F(b.type)&&b.type.typeArguments)return f0e(n.getTypeAtLocation(b.type.typeArguments[0]),n,u,d)}return[]}function vos(n,c,u){let d=lb(c,u);if(d===c)return;if(Vb(d.parent)&&d.parent.name===d)return f0e(n.getTypeAtLocation(d.parent),n,d.parent,!1);let{symbol:I,failedAliasResolution:h}=dqe(d,n,!1);if(!I)return;let b=n.getTypeOfSymbolAtLocation(I,d),R=Sos(I,b,n),N=R&&f0e(R,n,d,h),[V,P]=N&&N.length!==0?[R,N]:[b,f0e(b,n,d,h)];return P.length?[...Bos(n,V,d,h),...P]:!(I.flags&111551)&&I.flags&788968?Pue(n,dh(I,n),d,h):void 0}function f0e(n,c,u,d){return Fr(n.isUnion()&&!(n.flags&32)?n.types:[n],I=>I.symbol&&Pue(c,I.symbol,u,d))}function Sos(n,c,u){if(c.symbol===n||n.valueDeclaration&&c.symbol&&zs(n.valueDeclaration)&&n.valueDeclaration.initializer===c.symbol.valueDeclaration){let d=c.getCallSignatures();if(d.length===1)return u.getReturnTypeOfSignature($s(d))}}function wos(n,c,u){let d=PQr(n,c,u);if(!d||d.length===0)return;let I=Oue(c.referencedFiles,u)||Oue(c.typeReferenceDirectives,u)||Oue(c.libReferenceDirectives,u);if(I)return{definitions:d,textSpan:TV(I)};let h=lb(c,u),b=bd(h.getStart(),h.getWidth());return{definitions:d,textSpan:b}}function Tos(n,c){return tr(c.getIndexInfosAtLocation(n),u=>u.declaration&&jFe(c,u.declaration))}function dqe(n,c,u){let d=c.getSymbolAtLocation(n),I=!1;if(d?.declarations&&d.flags&2097152&&!u&&Nos(n,d.declarations[0])){let h=c.getAliasedSymbol(d);if(h.declarations)return{symbol:h};I=!0}return{symbol:d,failedAliasResolution:I}}function Nos(n,c){return n.kind!==80?!1:n.parent===c?!0:c.kind!==274}function Ros(n){if(!P8(n))return!1;let c=Si(n,u=>fm(u)?!0:P8(u)?!1:"quit");return!!c&&CI(c)===5}function Pue(n,c,u,d,I){let h=Gt(c.declarations,te=>te!==I),b=V()||P();if(b)return b;let R=Gt(h,te=>!Ros(te)),N=lr(R)?R:h;return Ot(N,te=>I0e(te,n,c,u,!1,d));function V(){if(c.flags&32&&!(c.flags&19)&&(fue(u)||u.kind===137)){let te=be(h,Sa);return te&&M(te.members,!0)}}function P(){return k7e(u)||P7e(u)?M(h,!1):void 0}function M(te,re){if(!te)return;let ue=te.filter(re?Rf:$l),Ae=ue.filter(de=>!!de.body);return ue.length?Ae.length!==0?Ae.map(de=>I0e(de,n,c,u)):[I0e(Na(ue),n,c,u,!1,d)]:void 0}}function I0e(n,c,u,d,I,h){let b=c.symbolToString(u),R=MZ.getSymbolKind(c,u,d),N=u.parent?c.symbolToString(u.parent,d):"";return iVt(c,n,R,b,N,I,h)}function iVt(n,c,u,d,I,h,b,R){let N=c.getSourceFile();if(!R){let V=vl(c)||c;R=Ey(V,N)}return{fileName:N.fileName,textSpan:R,kind:u,name:d,containerKind:void 0,containerName:I,...Yp.toContextSpan(R,N,Yp.getContextNode(c)),isLocal:!sVt(n,c),isAmbient:!!(c.flags&33554432),unverified:h,failedAliasResolution:b}}function Dos(n,c){let u=Yp.getContextNode(n),d=Ey(eVt(u)?u.start:u,c);return{fileName:c.fileName,textSpan:d,kind:"keyword",name:"switch",containerKind:void 0,containerName:"",...Yp.toContextSpan(d,c,u),isLocal:!0,isAmbient:!1,unverified:!1,failedAliasResolution:void 0}}function sVt(n,c){if(n.isDeclarationVisible(c))return!0;if(!c.parent)return!1;if(qw(c.parent)&&c.parent.initializer===c)return sVt(n,c.parent);switch(c.kind){case 172:case 177:case 178:case 174:if(nb(c,2))return!1;case 176:case 303:case 304:case 210:case 231:case 219:case 218:return sVt(n,c.parent);default:return!1}}function jFe(n,c,u){return I0e(c,n,c.symbol,c,!1,u)}function Oue(n,c){return be(n,u=>_2(u,c))}function xos(n,c,u){return{fileName:c,textSpan:Wd(0,0),kind:"script",name:n,containerName:void 0,containerKind:void 0,unverified:u}}function kos(n){let c=Si(n,d=>!kte(d)),u=c?.parent;return u&&AG(u)&&G8(u)===c?u:void 0}function Gos(n,c){let u=kos(c),d=u&&n.getResolvedSignature(u);return eo(d&&d.declaration,I=>$l(I)&&!Y(I))}function Fos(n){switch(n.kind){case 176:case 185:case 179:case 180:return!0;default:return!1}}var pqe={};o(pqe,{provideInlayHints:()=>Wos});var Zos=n=>new RegExp(`^\\s?/\\*\\*?\\s?${n}\\s?\\*\\/\\s?$`);function Los(n){return n.includeInlayParameterNameHints==="literals"||n.includeInlayParameterNameHints==="all"}function Vos(n){return n.includeInlayParameterNameHints==="literals"}function HQr(n){return n.interactiveInlayHints===!0}function Wos(n){let{file:c,program:u,span:d,cancellationToken:I,preferences:h}=n,b=c.text,R=u.getCompilerOptions(),N=W2(c,h),V=u.getTypeChecker(),P=[];return M(c),P;function M(vt){if(!(!vt||vt.getFullWidth()===0)){switch(vt.kind){case 267:case 263:case 264:case 262:case 231:case 218:case 174:case 219:I.throwIfCancellationRequested()}if(sI(d,vt.pos,vt.getFullWidth())&&!(Ya(vt)&&!x_(vt)))return h.includeInlayVariableTypeHints&&zs(vt)||h.includeInlayPropertyDeclarationTypeHints&&Ql(vt)?Fe(vt):h.includeInlayEnumMemberValueHints&&_V(vt)?de(vt):Los(h)&&(cu(vt)||zS(vt))?Ne(vt):(h.includeInlayFunctionParameterTypeHints&&dd(vt)&&gle(vt)&&st(vt),h.includeInlayFunctionLikeReturnTypeHints&&te(vt)&&Le(vt)),mu(vt,M)}}function te(vt){return fd(vt)||WA(vt)||mp(vt)||cI(vt)||Pb(vt)}function re(vt,Ye,ht,Et){let Kt=`${Et?"...":""}${vt}`,Tt;HQr(h)?(Tt=[wt(Kt,Ye),{text:":"}],Kt=""):Kt+=":",P.push({text:Kt,position:ht,kind:"Parameter",whitespaceAfter:!0,displayParts:Tt})}function ue(vt,Ye){P.push({text:typeof vt=="string"?`: ${vt}`:"",displayParts:typeof vt=="string"?void 0:[{text:": "},...vt],position:Ye,kind:"Type",whitespaceBefore:!0})}function Ae(vt,Ye){P.push({text:`= ${vt}`,position:Ye,kind:"Enum",whitespaceBefore:!0})}function de(vt){if(vt.initializer)return;let Ye=V.getConstantValue(vt);Ye!==void 0&&Ae(Ye.toString(),vt.end)}function Be(vt){return vt.symbol&&vt.symbol.flags&1536}function Fe(vt){if(vt.initializer===void 0&&!(Ql(vt)&&!(V.getTypeAtLocation(vt).flags&1))||pu(vt.name)||zs(vt)&&!dt(vt)||fC(vt))return;let ht=V.getTypeAtLocation(vt);if(Be(ht))return;let Et=it(ht);if(Et){let Kt=typeof Et=="string"?Et:Et.map(Lt=>Lt.text).join("");if(h.includeInlayVariableTypeHintsWhenTypeMatchesName===!1&&sp(vt.name.getText(),Kt))return;ue(Et,vt.name.end)}}function Ne(vt){let Ye=vt.arguments;if(!Ye||!Ye.length)return;let ht=[],Et=V.getResolvedSignatureForSignatureHelp(vt,ht);if(!Et||!ht.length)return;let Kt=0;for(let Tt of Ye){let Lt=jA(Tt);if(Vos(h)&&!lt(Lt)){Kt++;continue}let kt=0;if(ph(Lt)){let Dr=V.getTypeAtLocation(Lt.expression);if(V.isTupleType(Dr)){let{elementFlags:jt,fixedLength:mr}=Dr.target;if(mr===0)continue;let Pt=ke(jt,Yr=>!(Yr&1));(Pt<0?mr:Pt)>0&&(kt=Pt<0?mr:Pt)}}let Zt=V.getParameterIdentifierInfoAtPosition(Et,Kt);if(Kt=Kt+(kt||1),Zt){let{parameter:Dr,parameterName:jt,isRestParameter:mr}=Zt;if(!(h.includeInlayParameterNameHintsWhenArgumentMatchesName||!Qe(Lt,jt))&&!mr)continue;let Vr=Sc(jt);if(De(Lt,Vr))continue;re(Vr,Dr,Tt.getStart(),mr)}}}function Qe(vt,Ye){return sr(vt)?vt.text===Ye:Io(vt)?vt.name.text===Ye:!1}function De(vt,Ye){if(!Ke(Ye,iA(R),Zee(c.scriptKind)))return!1;let ht=Gb(b,vt.pos);if(!ht?.length)return!1;let Et=Zos(Ye);return lr(ht,Kt=>Et.test(b.substring(Kt.pos,Kt.end)))}function lt(vt){switch(vt.kind){case 224:{let Ye=vt.operand;return Sv(Ye)||sr(Ye)&&b6(Ye.escapedText)}case 112:case 97:case 106:case 15:case 228:return!0;case 80:{let Ye=vt.escapedText;return It(Ye)||b6(Ye)}}return Sv(vt)}function Le(vt){if(fd(vt)&&!Od(vt,21,c)||rb(vt)||!vt.body)return;let ht=V.getSignatureFromDeclaration(vt);if(!ht)return;let Et=V.getReturnTypeOfSignature(ht);if(Be(Et))return;let Kt=it(Et);Kt&&ue(Kt,je(vt))}function je(vt){let Ye=Od(vt,22,c);return Ye?Ye.end:vt.parameters.end}function st(vt){let Ye=V.getSignatureFromDeclaration(vt);if(Ye)for(let ht=0;ht{let Kt=V.typeToTypeNode(vt,void 0,71286784);w.assertIsDefined(Kt,"should always get typenode"),ht.writeNode(4,Kt,c,Et)})}function it(vt){if(!HQr(h))return qe(vt);let ht=V.typeToTypeNode(vt,void 0,71286784);w.assertIsDefined(ht,"should always get typenode");let Et=[];return Kt(ht),Et;function Kt(Zt){var Dr,jt;if(!Zt)return;let mr=vr(Zt.kind);if(mr){Et.push({text:mr});return}if(Sv(Zt)){Et.push({text:kt(Zt)});return}switch(Zt.kind){case 80:w.assertNode(Zt,sr);let Pt=ao(Zt),Vr=Zt.symbol&&Zt.symbol.declarations&&Zt.symbol.declarations.length&&vl(Zt.symbol.declarations[0]);Vr?Et.push(wt(Pt,Vr)):Et.push({text:Pt});break;case 166:w.assertNode(Zt,a0),Kt(Zt.left),Et.push({text:"."}),Kt(Zt.right);break;case 182:w.assertNode(Zt,S),Zt.assertsModifier&&Et.push({text:"asserts "}),Kt(Zt.parameterName),Zt.type&&(Et.push({text:" is "}),Kt(Zt.type));break;case 183:w.assertNode(Zt,F),Kt(Zt.typeName),Zt.typeArguments&&(Et.push({text:"<"}),Lt(Zt.typeArguments,", "),Et.push({text:">"}));break;case 168:w.assertNode(Zt,qp),Zt.modifiers&&Lt(Zt.modifiers," "),Kt(Zt.name),Zt.constraint&&(Et.push({text:" extends "}),Kt(Zt.constraint)),Zt.default&&(Et.push({text:" = "}),Kt(Zt.default));break;case 169:w.assertNode(Zt,Jc),Zt.modifiers&&Lt(Zt.modifiers," "),Zt.dotDotDotToken&&Et.push({text:"..."}),Kt(Zt.name),Zt.questionToken&&Et.push({text:"?"}),Zt.type&&(Et.push({text:": "}),Kt(Zt.type));break;case 185:w.assertNode(Zt,H),Et.push({text:"new "}),Tt(Zt),Et.push({text:" => "}),Kt(Zt.type);break;case 186:w.assertNode(Zt,oe),Et.push({text:"typeof "}),Kt(Zt.exprName),Zt.typeArguments&&(Et.push({text:"<"}),Lt(Zt.typeArguments,", "),Et.push({text:">"}));break;case 187:w.assertNode(Zt,Se),Et.push({text:"{"}),Zt.members.length&&(Et.push({text:" "}),Lt(Zt.members,"; "),Et.push({text:" "})),Et.push({text:"}"});break;case 188:w.assertNode(Zt,He),Kt(Zt.elementType),Et.push({text:"[]"});break;case 189:w.assertNode(Zt,Ct),Et.push({text:"["}),Lt(Zt.elements,", "),Et.push({text:"]"});break;case 202:w.assertNode(Zt,At),Zt.dotDotDotToken&&Et.push({text:"..."}),Kt(Zt.name),Zt.questionToken&&Et.push({text:"?"}),Et.push({text:": "}),Kt(Zt.type);break;case 190:w.assertNode(Zt,Ut),Kt(Zt.type),Et.push({text:"?"});break;case 191:w.assertNode(Zt,cn),Et.push({text:"..."}),Kt(Zt.type);break;case 192:w.assertNode(Zt,Is),Lt(Zt.types," | ");break;case 193:w.assertNode(Zt,ji),Lt(Zt.types," & ");break;case 194:w.assertNode(Zt,Ei),Kt(Zt.checkType),Et.push({text:" extends "}),Kt(Zt.extendsType),Et.push({text:" ? "}),Kt(Zt.trueType),Et.push({text:" : "}),Kt(Zt.falseType);break;case 195:w.assertNode(Zt,bo),Et.push({text:"infer "}),Kt(Zt.typeParameter);break;case 196:w.assertNode(Zt,ro),Et.push({text:"("}),Kt(Zt.type),Et.push({text:")"});break;case 198:w.assertNode(Zt,as),Et.push({text:`${vr(Zt.operator)} `}),Kt(Zt.type);break;case 199:w.assertNode(Zt,hs),Kt(Zt.objectType),Et.push({text:"["}),Kt(Zt.indexType),Et.push({text:"]"});break;case 200:w.assertNode(Zt,Sl),Et.push({text:"{ "}),Zt.readonlyToken&&(Zt.readonlyToken.kind===40?Et.push({text:"+"}):Zt.readonlyToken.kind===41&&Et.push({text:"-"}),Et.push({text:"readonly "})),Et.push({text:"["}),Kt(Zt.typeParameter),Zt.nameType&&(Et.push({text:" as "}),Kt(Zt.nameType)),Et.push({text:"]"}),Zt.questionToken&&(Zt.questionToken.kind===40?Et.push({text:"+"}):Zt.questionToken.kind===41&&Et.push({text:"-"}),Et.push({text:"?"})),Et.push({text:": "}),Zt.type&&Kt(Zt.type),Et.push({text:"; }"});break;case 201:w.assertNode(Zt,id),Kt(Zt.literal);break;case 184:w.assertNode(Zt,Y),Tt(Zt),Et.push({text:" => "}),Kt(Zt.type);break;case 205:w.assertNode(Zt,Tu),Zt.isTypeOf&&Et.push({text:"typeof "}),Et.push({text:"import("}),Kt(Zt.argument),Zt.assertions&&(Et.push({text:", { assert: "}),Lt(Zt.assertions.assertClause.elements,", "),Et.push({text:" }"})),Et.push({text:")"}),Zt.qualifier&&(Et.push({text:"."}),Kt(Zt.qualifier)),Zt.typeArguments&&(Et.push({text:"<"}),Lt(Zt.typeArguments,", "),Et.push({text:">"}));break;case 171:w.assertNode(Zt,n_),(Dr=Zt.modifiers)!=null&&Dr.length&&(Lt(Zt.modifiers," "),Et.push({text:" "})),Kt(Zt.name),Zt.questionToken&&Et.push({text:"?"}),Zt.type&&(Et.push({text:": "}),Kt(Zt.type));break;case 181:w.assertNode(Zt,_),Et.push({text:"["}),Lt(Zt.parameters,", "),Et.push({text:"]"}),Zt.type&&(Et.push({text:": "}),Kt(Zt.type));break;case 173:w.assertNode(Zt,jS),(jt=Zt.modifiers)!=null&&jt.length&&(Lt(Zt.modifiers," "),Et.push({text:" "})),Kt(Zt.name),Zt.questionToken&&Et.push({text:"?"}),Tt(Zt),Zt.type&&(Et.push({text:": "}),Kt(Zt.type));break;case 179:w.assertNode(Zt,CV),Tt(Zt),Zt.type&&(Et.push({text:": "}),Kt(Zt.type));break;case 207:w.assertNode(Zt,Vu),Et.push({text:"["}),Lt(Zt.elements,", "),Et.push({text:"]"});break;case 206:w.assertNode(Zt,Vg),Et.push({text:"{"}),Zt.elements.length&&(Et.push({text:" "}),Lt(Zt.elements,", "),Et.push({text:" "})),Et.push({text:"}"});break;case 208:w.assertNode(Zt,ml),Kt(Zt.name);break;case 224:w.assertNode(Zt,xB),Et.push({text:vr(Zt.operator)}),Kt(Zt.operand);break;case 203:w.assertNode(Zt,ep),Kt(Zt.head),Zt.templateSpans.forEach(Kt);break;case 16:w.assertNode(Zt,aY),Et.push({text:kt(Zt)});break;case 204:w.assertNode(Zt,tg),Kt(Zt.type),Kt(Zt.literal);break;case 17:w.assertNode(Zt,j3),Et.push({text:kt(Zt)});break;case 18:w.assertNode(Zt,Rle),Et.push({text:kt(Zt)});break;case 197:w.assertNode(Zt,ca),Et.push({text:"this"});break;default:w.failBadSyntaxKind(Zt)}}function Tt(Zt){Zt.typeParameters&&(Et.push({text:"<"}),Lt(Zt.typeParameters,", "),Et.push({text:">"})),Et.push({text:"("}),Lt(Zt.parameters,", "),Et.push({text:")"})}function Lt(Zt,Dr){Zt.forEach((jt,mr)=>{mr>0&&Et.push({text:Dr}),Kt(jt)})}function kt(Zt){switch(Zt.kind){case 11:return N===0?`'${tT(Zt.text,39)}'`:`"${tT(Zt.text,34)}"`;case 16:case 17:case 18:{let Dr=Zt.rawText??Sme(tT(Zt.text,96));switch(Zt.kind){case 16:return"`"+Dr+"${";case 17:return"}"+Dr+"${";case 18:return"}"+Dr+"`"}}}return Zt.text}}function It(vt){return vt==="undefined"}function dt(vt){if((wZ(vt)||zs(vt)&&Qp(vt))&&vt.initializer){let Ye=jA(vt.initializer);return!(lt(Ye)||zS(Ye)||tu(Ye)||DE(Ye))}return!0}function wt(vt,Ye){let ht=Ye.getSourceFile();return{text:vt,span:Ey(Ye,ht),file:ht.fileName}}}var mP={};o(mP,{getDocCommentTemplateAtPosition:()=>jos,getJSDocParameterNameCompletionDetails:()=>Kos,getJSDocParameterNameCompletions:()=>Uos,getJSDocTagCompletionDetails:()=>qQr,getJSDocTagCompletions:()=>Jos,getJSDocTagNameCompletionDetails:()=>Xos,getJSDocTagNameCompletions:()=>Hos,getJsDocCommentsFromDeclarations:()=>Pos,getJsDocTagsFromDeclarations:()=>Qos});var XQr=["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"],JQr,UQr;function Pos(n,c){let u=[];return Aje(n,d=>{for(let I of Mos(d)){let h=aT(I)&&I.tags&&be(I.tags,R=>R.kind===327&&(R.tagName.escapedText==="inheritDoc"||R.tagName.escapedText==="inheritdoc"));if(I.comment===void 0&&!h||aT(I)&&d.kind!==346&&d.kind!==338&&I.tags&&I.tags.some(R=>R.kind===346||R.kind===338)&&!I.tags.some(R=>R.kind===341||R.kind===342))continue;let b=I.comment?jte(I.comment,c):[];h&&h.comment&&(b=b.concat(jte(h.comment,c))),Ue(u,b,Oos)||u.push(b)}}),or(pe(u,[Wte()]))}function Oos(n,c){return Je(n,c,(u,d)=>u.kind===d.kind&&u.text===d.text)}function Mos(n){switch(n.kind){case 341:case 348:return[n];case 338:case 346:return[n,n.parent];case 323:if(gte(n.parent))return[n.parent.parent];default:return Ame(n)}}function Qos(n,c){let u=[];return Aje(n,d=>{let I=bx(d);if(!(I.some(h=>h.kind===346||h.kind===338)&&!I.some(h=>h.kind===341||h.kind===342)))for(let h of I)u.push({name:h.tagName.text,text:zQr(h,c)}),u.push(...KQr(jQr(h),c))}),u}function KQr(n,c){return Fr(n,u=>vi([{name:u.tagName.text,text:zQr(u,c)}],KQr(jQr(u),c)))}function jQr(n){return fZ(n)&&n.isNameFirst&&n.typeExpression&&A4(n.typeExpression.type)?n.typeExpression.type.jsDocPropertyTags:void 0}function jte(n,c){return typeof n=="string"?[P2(n)]:Fr(n,u=>u.kind===321?[P2(u.text)]:QGt(u,c))}function zQr(n,c){let{comment:u,kind:d}=n,I=Yos(d);switch(d){case 349:let R=n.typeExpression;return R?h(R):u===void 0?void 0:jte(u,c);case 329:return h(n.class);case 328:return h(n.class);case 345:let N=n,V=[];if(N.constraint&&V.push(P2(N.constraint.getText())),O(N.typeParameters)){O(V)&&V.push(DI());let M=N.typeParameters[N.typeParameters.length-1];X(N.typeParameters,te=>{V.push(I(te.getText())),M!==te&&V.push(A0(28),DI())})}return u&&V.push(DI(),...jte(u,c)),V;case 344:case 350:return h(n.typeExpression);case 346:case 338:case 348:case 341:case 347:let{name:P}=n;return P?h(P):u===void 0?void 0:jte(u,c);default:return u===void 0?void 0:jte(u,c)}function h(R){return b(R.getText())}function b(R){return u?R.match(/^https?$/)?[P2(R),...jte(u,c)]:[I(R),DI(),...jte(u,c)]:[P2(R)]}}function Yos(n){switch(n){case 341:return VGt;case 348:return WGt;case 345:return OGt;case 346:case 338:return PGt;default:return P2}}function Hos(){return JQr||(JQr=Ot(XQr,n=>({name:n,kind:"keyword",kindModifiers:"",sortText:o7.SortText.LocationPriority})))}var Xos=qQr;function Jos(){return UQr||(UQr=Ot(XQr,n=>({name:`@${n}`,kind:"keyword",kindModifiers:"",sortText:o7.SortText.LocationPriority})))}function qQr(n){return{name:n,kind:"",kindModifiers:"",displayParts:[P2(n)],documentation:v,tags:void 0,codeActions:void 0}}function Uos(n){if(!sr(n.name))return v;let c=n.name.text,u=n.parent,d=u.parent;return $l(d)?tr(d.parameters,I=>{if(!sr(I.name))return;let h=I.name.text;if(!(u.tags.some(b=>b!==n&&FB(b)&&sr(b.name)&&b.name.escapedText===h)||c!==void 0&&!uc(h,c)))return{name:h,kind:"parameter",kindModifiers:"",sortText:o7.SortText.LocationPriority}}):[]}function Kos(n){return{name:n,kind:"parameter",kindModifiers:"",displayParts:[P2(n)],documentation:v,tags:void 0,codeActions:void 0}}function jos(n,c,u,d){let I=Qc(c,u),h=Si(I,aT);if(h&&(h.comment!==void 0||O(h.tags)))return;let b=I.getStart(c);if(!h&&b0;if(Ae&&!Fe){let Ne=de+n+re+" * ",Qe=b===u?n+re:"";return{newText:Ne+n+Ae+re+Be+Qe,caretOffset:Ne.length}}return{newText:de+Be,caretOffset:3}}function zos(n,c){let{text:u}=n,d=Vv(c,n),I=d;for(;I<=c&&$_(u.charCodeAt(I));I++);return u.slice(d,I)}function qos(n,c,u,d){return n.map(({name:I,dotDotDotToken:h},b)=>{let R=I.kind===80?I.text:"param"+b;return`${u} * @param ${c?h?"{...any} ":"{any} ":""}${R}${d}`}).join("")}function $os(n,c){return`${n} * @returns${c}`}function eas(n,c){return R$(n,u=>oVt(u,c))}function oVt(n,c){switch(n.kind){case 262:case 218:case 174:case 176:case 173:case 219:let u=n;return{commentOwner:n,parameters:u.parameters,hasReturn:zFe(u,c)};case 303:return oVt(n.initializer,c);case 263:case 264:case 266:case 306:case 265:return{commentOwner:n};case 171:{let I=n;return I.type&&Y(I.type)?{commentOwner:n,parameters:I.type.parameters,hasReturn:zFe(I.type,c)}:{commentOwner:n}}case 243:{let h=n.declarationList.declarations,b=h.length===1&&h[0].initializer?tas(h[0].initializer):void 0;return b?{commentOwner:n,parameters:b.parameters,hasReturn:zFe(b,c)}:{commentOwner:n}}case 307:return"quit";case 267:return n.parent.kind===267?void 0:{commentOwner:n};case 244:return oVt(n.expression,c);case 226:{let I=n;return CI(I)===0?"quit":$l(I.right)?{commentOwner:n,parameters:I.right.parameters,hasReturn:zFe(I.right,c)}:{commentOwner:n}}case 172:let d=n.initializer;if(d&&(WA(d)||fd(d)))return{commentOwner:n,parameters:d.parameters,hasReturn:zFe(d,c)}}}function zFe(n,c){return!!c?.generateReturnInDocTemplate&&(Y(n)||fd(n)&&tn(n.body)||dd(n)&&n.body&&mc(n.body)&&!!wx(n.body,u=>u))}function tas(n){for(;n.kind===217;)n=n.expression;switch(n.kind){case 218:case 219:return n;case 231:return be(n.members,Rf)}}var fqe={};o(fqe,{mapCode:()=>ras});function ras(n,c,u,d,I,h){return po.ChangeTracker.with({host:d,formatContext:I,preferences:h},b=>{let R=c.map(V=>nas(n,V)),N=u&&or(u);for(let V of R)ias(n,b,V,N)})}function nas(n,c){let u=[{parse:()=>L6("__mapcode_content_nodes.ts",c,n.languageVersion,!0,n.scriptKind),body:h=>h.statements},{parse:()=>L6("__mapcode_class_content_nodes.ts",`class __class { + `,kind:3,pos:-1,end:-1,hasTrailingNewLine:!0,hasLeadingNewline:!0}])}return re}}function y9r(n){switch(n.kind){case 173:case 174:case 179:case 176:case 180:case 262:return!0}return!1}function b9r(n,c,u){let d=Hc(n,c),I=Si(d,y9r);if(!I||pd(I)&&I.body&&Z_e(I.body,c))return;let h=u.getTypeChecker(),b=I.symbol;if(!b)return;let R=b.declarations;if(O(R)<=1||!he(R,te=>ls(te)===n)||!y9r(R[0]))return;let N=R[0].kind;if(!he(R,te=>te.kind===N))return;let V=R;if(lr(V,te=>!!te.typeParameters||lr(te.parameters,re=>!!re.modifiers||!sr(re.name))))return;let P=tr(V,te=>h.getSignatureFromDeclaration(te));if(O(P)!==O(R))return;let Q=h.getReturnTypeOfSignature(P[0]);if(he(P,te=>h.getReturnTypeOfSignature(te)===Q))return V}var mZt="Add or remove braces in an arrow function",E9r=tu(Z.Add_or_remove_braces_in_an_arrow_function),Aze={name:"Add braces to arrow function",description:tu(Z.Add_braces_to_arrow_function),kind:"refactor.rewrite.arrow.braces.add"},wFe={name:"Remove braces from arrow function",description:tu(Z.Remove_braces_from_arrow_function),kind:"refactor.rewrite.arrow.braces.remove"};jx(mZt,{kinds:[wFe.kind],getEditsForAction:s$i,getAvailableActions:i$i});function i$i(n){let{file:c,startPosition:u,triggerReason:d}=n,I=B9r(c,u,d==="invoked");return I?OG(I)?n.preferences.provideRefactorNotApplicableReason?[{name:mZt,description:E9r,actions:[{...Aze,notApplicableReason:I.error},{...wFe,notApplicableReason:I.error}]}]:v:[{name:mZt,description:E9r,actions:[I.addBraces?Aze:wFe]}]:v}function s$i(n,c){let{file:u,startPosition:d}=n,I=B9r(u,d);w.assert(I&&!OG(I),"Expected applicable refactor info");let{expression:h,returnStatement:b,func:R}=I,N;if(c===Aze.name){let P=_e.createReturnStatement(h);N=_e.createBlock([P],!0),Qte(h,P,u,3,!0)}else if(c===wFe.name&&b){let P=h||_e.createVoidZero();N=eFe(P)?_e.createParenthesizedExpression(P):P,j_e(b,N,u,3,!1),Qte(b,N,u,3,!1),xue(b,N,u,3,!1)}else w.fail("invalid action");return{renameFilename:void 0,renameLocation:void 0,edits:Ao.ChangeTracker.with(n,P=>{P.replaceNode(u,R.body,N)})}}function B9r(n,c,u=!0,d){let I=Hc(n,c),h=Ob(I);if(!h)return{error:tu(Z.Could_not_find_a_containing_arrow_function)};if(!Id(h))return{error:tu(Z.Containing_function_is_not_an_arrow_function)};if(!(!W2(h,I)||W2(h.body,I)&&!u)){if(mP(Aze.kind,d)&&tn(h.body))return{func:h,addBraces:!0,expression:h.body};if(mP(wFe.kind,d)&&hc(h.body)&&h.body.statements.length===1){let b=qs(h.body.statements);if(G_(b)){let R=b.expression&&ru(X5(b.expression,!1))?_e.createParenthesizedExpression(b.expression):b.expression;return{func:h,addBraces:!1,expression:R,returnStatement:b}}}}}var o$i={},v9r="Convert arrow function or function expression",a$i=tu(Z.Convert_arrow_function_or_function_expression),TFe={name:"Convert to anonymous function",description:tu(Z.Convert_to_anonymous_function),kind:"refactor.rewrite.function.anonymous"},NFe={name:"Convert to named function",description:tu(Z.Convert_to_named_function),kind:"refactor.rewrite.function.named"},RFe={name:"Convert to arrow function",description:tu(Z.Convert_to_arrow_function),kind:"refactor.rewrite.function.arrow"};jx(v9r,{kinds:[TFe.kind,NFe.kind,RFe.kind],getEditsForAction:l$i,getAvailableActions:c$i});function c$i(n){let{file:c,startPosition:u,program:d,kind:I}=n,h=w9r(c,u,d);if(!h)return v;let{selectedVariableDeclaration:b,func:R}=h,N=[],V=[];if(mP(NFe.kind,I)){let P=b||Id(R)&&js(R.parent)?void 0:tu(Z.Could_not_convert_to_named_function);P?V.push({...NFe,notApplicableReason:P}):N.push(NFe)}if(mP(TFe.kind,I)){let P=!b&&Id(R)?void 0:tu(Z.Could_not_convert_to_anonymous_function);P?V.push({...TFe,notApplicableReason:P}):N.push(TFe)}if(mP(RFe.kind,I)){let P=PA(R)?void 0:tu(Z.Could_not_convert_to_arrow_function);P?V.push({...RFe,notApplicableReason:P}):N.push(RFe)}return[{name:v9r,description:a$i,actions:N.length===0&&n.preferences.provideRefactorNotApplicableReason?V:N}]}function l$i(n,c){let{file:u,startPosition:d,program:I}=n,h=w9r(u,d,I);if(!h)return;let{func:b}=h,R=[];switch(c){case TFe.name:R.push(...d$i(n,b));break;case NFe.name:let N=A$i(b);if(!N)return;R.push(...p$i(n,b,N));break;case RFe.name:if(!PA(b))return;R.push(...f$i(n,b));break;default:return w.fail("invalid action")}return{renameFilename:void 0,renameLocation:void 0,edits:R}}function S9r(n){let c=!1;return n.forEachChild(function u(d){if(Zte(d)){c=!0;return}!va(d)&&!hp(d)&&!PA(d)&&hu(d,u)}),c}function w9r(n,c,u){let d=Hc(n,c),I=u.getTypeChecker(),h=g$i(n,I,d.parent);if(h&&!S9r(h.body)&&!I.containsArgumentsReference(h))return{selectedVariableDeclaration:!0,func:h};let b=Ob(d);if(b&&(PA(b)||Id(b))&&!W2(b.body,d)&&!S9r(b.body)&&!I.containsArgumentsReference(b))return PA(b)&&N9r(n,I,b)?void 0:{selectedVariableDeclaration:!1,func:b}}function u$i(n){return js(n)||bl(n)&&n.declarations.length===1}function g$i(n,c,u){if(!u$i(u))return;let I=(js(u)?u:qs(u.declarations)).initializer;if(I&&(Id(I)||PA(I)&&!N9r(n,c,I)))return I}function T9r(n){if(tn(n)){let c=_e.createReturnStatement(n),u=n.getSourceFile();return un(c,n),HE(c),j_e(n,c,u,void 0,!0),_e.createBlock([c],!0)}else return n}function A$i(n){let c=n.parent;if(!js(c)||!L8(c))return;let u=c.parent,d=u.parent;if(!(!bl(u)||!Dp(d)||!sr(c.name)))return{variableDeclaration:c,variableDeclarationList:u,statement:d,name:c.name}}function d$i(n,c){let{file:u}=n,d=T9r(c.body),I=_e.createFunctionExpression(c.modifiers,c.asteriskToken,void 0,c.typeParameters,c.parameters,c.type,d);return Ao.ChangeTracker.with(n,h=>h.replaceNode(u,c,I))}function p$i(n,c,u){let{file:d}=n,I=T9r(c.body),{variableDeclaration:h,variableDeclarationList:b,statement:R,name:N}=u;Eje(R);let V=Rh(h)&32|R_(c),P=_e.createModifiersFromModifierFlags(V),Q=_e.createFunctionDeclaration(O(P)?P:void 0,c.asteriskToken,N,c.typeParameters,c.parameters,c.type,I);return b.declarations.length===1?Ao.ChangeTracker.with(n,te=>te.replaceNode(d,R,Q)):Ao.ChangeTracker.with(n,te=>{te.delete(d,h),te.insertNodeAfter(d,R,Q)})}function f$i(n,c){let{file:u}=n,I=c.body.statements[0],h;I$i(c.body,I)?(h=I.expression,HE(h),v4(I,h)):h=c.body;let b=_e.createArrowFunction(c.modifiers,c.typeParameters,c.parameters,c.type,_e.createToken(39),h);return Ao.ChangeTracker.with(n,R=>R.replaceNode(u,c,b))}function I$i(n,c){return n.statements.length===1&&G_(c)&&!!c.expression}function N9r(n,c,u){return!!u.name&&Yp.Core.isSymbolReferencedInFile(u.name,c,n)}var C$i={},dze="Convert parameters to destructured object",m$i=1,R9r=tu(Z.Convert_parameters_to_destructured_object),D9r={name:dze,description:R9r,kind:"refactor.rewrite.parameters.toDestructured"};jx(dze,{kinds:[D9r.kind],getEditsForAction:_$i,getAvailableActions:h$i});function h$i(n){let{file:c,startPosition:u}=n;return i0(c)||!G9r(c,u,n.program.getTypeChecker())?v:[{name:dze,description:R9r,actions:[D9r]}]}function _$i(n,c){w.assert(c===dze,"Unexpected action name");let{file:u,startPosition:d,program:I,cancellationToken:h,host:b}=n,R=G9r(u,d,I.getTypeChecker());if(!R||!h)return;let N=b$i(R,I,h);return N.valid?{renameFilename:void 0,renameLocation:void 0,edits:Ao.ChangeTracker.with(n,P=>y$i(u,I,b,P,R,N))}:{edits:[]}}function y$i(n,c,u,d,I,h){let b=h.signature,R=Ot(V9r(I,c,u),P=>vd(P));if(b){let P=Ot(V9r(b,c,u),Q=>vd(Q));V(b,P)}V(I,R);let N=Ir(h.functionCalls,(P,Q)=>Jl(P.pos,Q.pos));for(let P of N)if(P.arguments&&P.arguments.length){let Q=vd(x$i(I,P.arguments),!0);d.replaceNodeRange(ls(P),qs(P.arguments),Ta(P.arguments),Q,{leadingTriviaOption:Ao.LeadingTriviaOption.IncludeAll,trailingTriviaOption:Ao.TrailingTriviaOption.Include})}function V(P,Q){d.replaceNodeRangeWithNodes(n,qs(P.parameters),Ta(P.parameters),Q,{joiner:", ",indentation:0,leadingTriviaOption:Ao.LeadingTriviaOption.IncludeAll,trailingTriviaOption:Ao.TrailingTriviaOption.Include})}}function b$i(n,c,u){let d=G$i(n),I=Df(n)?k$i(n):[],h=NA([...d,...I],Qg),b=c.getTypeChecker(),R=Fr(h,Q=>Yp.getReferenceEntriesForNode(-1,Q,c,c.getSourceFiles(),u)),N=V(R);return he(N.declarations,Q=>Ue(h,Q))||(N.valid=!1),N;function V(Q){let te={accessExpressions:[],typeUsages:[]},re={functionCalls:[],declarations:[],classReferences:te,valid:!0},ue=Ot(d,P),Ae=Ot(I,P),de=Df(n),Be=Ot(d,Fe=>hZt(Fe,b));for(let Fe of Q){if(Fe.kind===Yp.EntryKind.Span){re.valid=!1;continue}if(Ue(Be,P(Fe.node))){if(S$i(Fe.node.parent)){re.signature=Fe.node.parent;continue}let Me=k9r(Fe);if(Me){re.functionCalls.push(Me);continue}}let Ne=hZt(Fe.node,b);if(Ne&&Ue(Be,Ne)){let Me=_Zt(Fe);if(Me){re.declarations.push(Me);continue}}if(Ue(ue,P(Fe.node))||Bue(Fe.node)){if(x9r(Fe))continue;let De=_Zt(Fe);if(De){re.declarations.push(De);continue}let lt=k9r(Fe);if(lt){re.functionCalls.push(lt);continue}}if(de&&Ue(Ae,P(Fe.node))){if(x9r(Fe))continue;let De=_Zt(Fe);if(De){re.declarations.push(De);continue}let lt=E$i(Fe);if(lt){te.accessExpressions.push(lt);continue}if(Ec(n.parent)){let Le=B$i(Fe);if(Le){te.typeUsages.push(Le);continue}}}re.valid=!1}return re}function P(Q){let te=b.getSymbolAtLocation(Q);return te&&yje(te,b)}}function hZt(n,c){let u=l0e(n);if(u){let d=c.getContextualTypeForObjectLiteralElement(u),I=d?.getSymbol();if(I&&!(cI(I)&6))return I}}function x9r(n){let c=n.node;if(yy(c.parent)||oT(c.parent)||mm(c.parent)||Xx(c.parent)||l0(c.parent)||rf(c.parent))return c}function _Zt(n){if(xC(n.node.parent))return n.node}function k9r(n){if(n.node.parent){let c=n.node,u=c.parent;switch(u.kind){case 213:case 214:let d=$s(u,SB);if(d&&d.expression===c)return d;break;case 211:let I=$s(u,fo);if(I&&I.parent&&I.name===c){let b=$s(I.parent,SB);if(b&&b.expression===I)return b}break;case 212:let h=$s(u,_A);if(h&&h.parent&&h.argumentExpression===c){let b=$s(h.parent,SB);if(b&&b.expression===h)return b}break}}}function E$i(n){if(n.node.parent){let c=n.node,u=c.parent;switch(u.kind){case 211:let d=$s(u,fo);if(d&&d.expression===c)return d;break;case 212:let I=$s(u,_A);if(I&&I.expression===c)return I;break}}}function B$i(n){let c=n.node;if(E4(c)===2||Qce(c.parent))return c}function G9r(n,c,u){let d=Lte(n,c),I=pce(d);if(!v$i(d)&&I&&w$i(I,u)&&W2(I,d)&&!(I.body&&W2(I.body,d)))return I}function v$i(n){let c=Si(n,kS);if(c){let u=Si(c,d=>!kS(d));return!!u&&pd(u)}return!1}function S$i(n){return zS(n)&&(XI(n.parent)||Se(n.parent))}function w$i(n,c){var u;if(!T$i(n.parameters,c))return!1;switch(n.kind){case 262:return F9r(n)&&DFe(n,c);case 174:if(ru(n.parent)){let d=hZt(n.name,c);return((u=d?.declarations)==null?void 0:u.length)===1&&DFe(n,c)}return DFe(n,c);case 176:return Ec(n.parent)?F9r(n.parent)&&DFe(n,c):Z9r(n.parent.parent)&&DFe(n,c);case 218:case 219:return Z9r(n.parent)}return!1}function DFe(n,c){return!!n.body&&!c.isImplementationOfOverload(n)}function F9r(n){return n.name?!0:!!Wte(n,90)}function T$i(n,c){return R$i(n)>=m$i&&he(n,u=>N$i(u,c))}function N$i(n,c){if(Dv(n)){let u=c.getTypeAtLocation(n);if(!c.isArrayType(u)&&!c.isTupleType(u))return!1}return!n.modifiers&&sr(n.name)}function Z9r(n){return js(n)&&Hp(n)&&sr(n.name)&&!n.type}function yZt(n){return n.length>0&&Zte(n[0].name)}function R$i(n){return yZt(n)?n.length-1:n.length}function L9r(n){return yZt(n)&&(n=_e.createNodeArray(n.slice(1),n.hasTrailingComma)),n}function D$i(n,c){return sr(c)&&N2(c)===n?_e.createShorthandPropertyAssignment(n):_e.createPropertyAssignment(n,c)}function x$i(n,c){let u=L9r(n.parameters),d=Dv(Ta(u)),I=d?c.slice(0,u.length-1):c,h=Ot(I,(R,N)=>{let V=pze(u[N]),P=D$i(V,R);return HE(P.name),jC(P)&&HE(P.initializer),v4(R,P),P});if(d&&c.length>=u.length){let R=c.slice(u.length-1),N=_e.createPropertyAssignment(pze(Ta(u)),_e.createArrayLiteralExpression(R));h.push(N)}return _e.createObjectLiteralExpression(h,!1)}function V9r(n,c,u){let d=c.getTypeChecker(),I=L9r(n.parameters),h=Ot(I,P),b=_e.createObjectBindingPattern(h),R=Q(I),N;he(I,ue)&&(N=_e.createObjectLiteralExpression());let V=_e.createParameterDeclaration(void 0,void 0,b,void 0,R,N);if(yZt(n.parameters)){let Ae=n.parameters[0],de=_e.createParameterDeclaration(void 0,void 0,Ae.name,void 0,Ae.type);return HE(de.name),v4(Ae.name,de.name),Ae.type&&(HE(de.type),v4(Ae.type,de.type)),_e.createNodeArray([de,V])}return _e.createNodeArray([V]);function P(Ae){let de=_e.createBindingElement(void 0,void 0,pze(Ae),Dv(Ae)&&ue(Ae)?_e.createArrayLiteralExpression():Ae.initializer);return HE(de),Ae.initializer&&de.initializer&&v4(Ae.initializer,de.initializer),de}function Q(Ae){let de=Ot(Ae,te);return JS(_e.createTypeLiteralNode(de),1)}function te(Ae){let de=Ae.type;!de&&(Ae.initializer||Dv(Ae))&&(de=re(Ae));let Be=_e.createPropertySignature(void 0,pze(Ae),ue(Ae)?_e.createToken(58):Ae.questionToken,de);return HE(Be),v4(Ae.name,Be.name),Ae.type&&Be.type&&v4(Ae.type,Be.type),Be}function re(Ae){let de=d.getTypeAtLocation(Ae);return Gue(de,Ae,c,u)}function ue(Ae){if(Dv(Ae)){let de=d.getTypeAtLocation(Ae);return!d.isTupleType(de)}return d.isOptionalParameter(Ae)}}function pze(n){return N2(n.name)}function k$i(n){switch(n.parent.kind){case 263:let c=n.parent;return c.name?[c.name]:[w.checkDefined(Wte(c,90),"Nameless class declaration should be a default export")];case 231:let d=n.parent,I=n.parent.parent,h=d.name;return h?[h,I.name]:[I.name]}}function G$i(n){switch(n.kind){case 262:return n.name?[n.name]:[w.checkDefined(Wte(n,90),"Nameless function declaration should be a default export")];case 174:return[n.name];case 176:let u=w.checkDefined(Qd(n,137,n.getSourceFile()),"Constructor declaration should have constructor keyword");return n.parent.kind===231?[n.parent.parent.name,u]:[u];case 219:return[n.parent.name];case 218:return n.name?[n.name,n.parent.name]:[n.parent.name];default:return w.assertNever(n,`Unexpected function declaration kind ${n.kind}`)}}var F$i={},bZt="Convert to template string",EZt=tu(Z.Convert_to_template_string),BZt={name:bZt,description:EZt,kind:"refactor.rewrite.string"};jx(bZt,{kinds:[BZt.kind],getEditsForAction:L$i,getAvailableActions:Z$i});function Z$i(n){let{file:c,startPosition:u}=n,d=W9r(c,u),I=vZt(d),h=Eu(I),b={name:bZt,description:EZt,actions:[]};return h&&n.triggerReason!=="invoked"?v:DB(I)&&(h||ro(I)&&SZt(I).isValidConcatenation)?(b.actions.push(BZt),[b]):n.preferences.provideRefactorNotApplicableReason?(b.actions.push({...BZt,notApplicableReason:tu(Z.Can_only_convert_string_concatenations_and_string_literals)}),[b]):v}function W9r(n,c){let u=Hc(n,c),d=vZt(u);return!SZt(d).isValidConcatenation&&ZC(d.parent)&&ro(d.parent.parent)?d.parent.parent:u}function L$i(n,c){let{file:u,startPosition:d}=n,I=W9r(u,d);switch(c){case EZt:return{edits:V$i(n,I)};default:return w.fail("invalid action")}}function V$i(n,c){let u=vZt(c),d=n.file,I=M$i(SZt(u),d),h=h2(d.text,u.end);if(h){let b=h[h.length-1],R={pos:h[0].pos,end:b.end};return Ao.ChangeTracker.with(n,N=>{N.deleteRange(d,R),N.replaceNode(d,u,I)})}else return Ao.ChangeTracker.with(n,b=>b.replaceNode(d,u,I))}function W$i(n){return!(n.operatorToken.kind===64||n.operatorToken.kind===65)}function vZt(n){return Si(n.parent,u=>{switch(u.kind){case 211:case 212:return!1;case 228:case 226:return!(ro(u.parent)&&W$i(u.parent));default:return"quit"}})||n}function SZt(n){let c=b=>{if(!ro(b))return{nodes:[b],operators:[],validOperators:!0,hasString:Eu(b)||cM(b)};let{nodes:R,operators:N,hasString:V,validOperators:P}=c(b.left);if(!(V||Eu(b.right)||Mx(b.right)))return{nodes:[b],operators:[],hasString:!1,validOperators:!0};let Q=b.operatorToken.kind===40,te=P&&Q;return R.push(b.right),N.push(b.operatorToken),{nodes:R,operators:N,hasString:!0,validOperators:te}},{nodes:u,operators:d,validOperators:I,hasString:h}=c(n);return{nodes:u,operators:d,isValidConcatenation:I&&h}}var P$i=(n,c)=>(u,d)=>{u(d,I)=>{for(;d.length>0;){let h=d.shift();xue(n[h],I,c,3,!1),u(h,I)}};function Q$i(n){return n.replace(/\\.|[$`]/g,c=>c[0]==="\\"?c:"\\"+c)}function P9r(n){let c=lM(n)||$3(n)?-2:-1;return Nf(n).slice(1,c)}function O9r(n,c){let u=[],d="",I="";for(;n{Q9r(Ne);let De=Me===te.templateSpans.length-1,lt=Ne.literal.text+(De?ue:""),Le=P9r(Ne.literal)+(De?Ae:"");return _e.createTemplateSpan(Ne.expression,Be&&De?_e.createTemplateTail(lt,Le):_e.createTemplateMiddle(lt,Le))});V.push(...Fe)}else{let Fe=Be?_e.createTemplateTail(ue,Ae):_e.createTemplateMiddle(ue,Ae);I(de,Fe),V.push(_e.createTemplateSpan(te,Fe))}}return _e.createTemplateExpression(P,V)}function Q9r(n){let c=n.getSourceFile();xue(n,n.expression,c,3,!1),j_e(n.expression,n.expression,c,3,!1)}function H$i(n){return ZC(n)&&(Q9r(n),n=n.expression),n}var Y$i={},fze="Convert to optional chain expression",wZt=tu(Z.Convert_to_optional_chain_expression),TZt={name:fze,description:wZt,kind:"refactor.rewrite.expression.optionalChain"};jx(fze,{kinds:[TZt.kind],getEditsForAction:J$i,getAvailableActions:X$i});function X$i(n){let c=M9r(n,n.triggerReason==="invoked");return c?OG(c)?n.preferences.provideRefactorNotApplicableReason?[{name:fze,description:wZt,actions:[{...TZt,notApplicableReason:c.error}]}]:v:[{name:fze,description:wZt,actions:[TZt]}]:v}function J$i(n,c){let u=M9r(n);return w.assert(u&&!OG(u),"Expected applicable refactor info"),{edits:Ao.ChangeTracker.with(n,I=>tes(n.file,n.program.getTypeChecker(),I,u,c)),renameFilename:void 0,renameLocation:void 0}}function Ize(n){return ro(n)||vN(n)}function U$i(n){return Xf(n)||G_(n)||Dp(n)}function Cze(n){return Ize(n)||U$i(n)}function M9r(n,c=!0){let{file:u,program:d}=n,I=n7(n),h=I.length===0;if(h&&!c)return;let b=Hc(u,I.start),R=WGe(u,I.start+I.length),N=Pd(b.pos,R&&R.end>=b.pos?R.getEnd():b.getEnd()),V=h?$$i(b):q$i(b,N),P=V&&Cze(V)?ees(V):void 0;if(!P)return{error:tu(Z.Could_not_find_convertible_access_expression)};let Q=d.getTypeChecker();return vN(P)?K$i(P,Q):j$i(P)}function K$i(n,c){let u=n.condition,d=RZt(n.whenTrue);if(!d||c.isNullableType(c.getTypeAtLocation(d)))return{error:tu(Z.Could_not_find_convertible_access_expression)};if((fo(u)||sr(u))&&NZt(u,d.expression))return{finalExpression:d,occurrences:[u],expression:n};if(ro(u)){let I=H9r(d.expression,u);return I?{finalExpression:d,occurrences:I,expression:n}:{error:tu(Z.Could_not_find_matching_access_expressions)}}}function j$i(n){if(n.operatorToken.kind!==56)return{error:tu(Z.Can_only_convert_logical_AND_access_chains)};let c=RZt(n.right);if(!c)return{error:tu(Z.Could_not_find_convertible_access_expression)};let u=H9r(c.expression,n.left);return u?{finalExpression:c,occurrences:u,expression:n}:{error:tu(Z.Could_not_find_matching_access_expressions)}}function H9r(n,c){let u=[];for(;ro(c)&&c.operatorToken.kind===56;){let I=NZt(zA(n),zA(c.right));if(!I)break;u.push(I),n=I,c=c.left}let d=NZt(n,c);return d&&u.push(d),u.length>0?u:void 0}function NZt(n,c){if(!(!sr(c)&&!fo(c)&&!_A(c)))return z$i(n,c)?c:void 0}function z$i(n,c){for(;(lu(n)||fo(n)||_A(n))&&o0e(n)!==o0e(c);)n=n.expression;for(;fo(n)&&fo(c)||_A(n)&&_A(c);){if(o0e(n)!==o0e(c))return!1;n=n.expression,c=c.expression}return sr(n)&&sr(c)&&n.getText()===c.getText()}function o0e(n){if(sr(n)||ZE(n))return n.getText();if(fo(n))return o0e(n.name);if(_A(n))return o0e(n.argumentExpression)}function q$i(n,c){for(;n.parent;){if(Cze(n)&&c.length!==0&&n.end>=c.start+c.length)return n;n=n.parent}}function $$i(n){for(;n.parent;){if(Cze(n)&&!Cze(n.parent))return n;n=n.parent}}function ees(n){if(Ize(n))return n;if(Dp(n)){let c=J3(n),u=c?.initializer;return u&&Ize(u)?u:void 0}return n.expression&&Ize(n.expression)?n.expression:void 0}function RZt(n){if(n=zA(n),ro(n))return RZt(n.left);if((fo(n)||_A(n)||lu(n))&&!Gm(n))return n}function Y9r(n,c,u){if(fo(c)||_A(c)||lu(c)){let d=Y9r(n,c.expression,u),I=u.length>0?u[u.length-1]:void 0,h=I?.getText()===c.expression.getText();if(h&&u.pop(),lu(c))return h?_e.createCallChain(d,_e.createToken(29),c.typeArguments,c.arguments):_e.createCallChain(d,c.questionDotToken,c.typeArguments,c.arguments);if(fo(c))return h?_e.createPropertyAccessChain(d,_e.createToken(29),c.name):_e.createPropertyAccessChain(d,c.questionDotToken,c.name);if(_A(c))return h?_e.createElementAccessChain(d,_e.createToken(29),c.argumentExpression):_e.createElementAccessChain(d,c.questionDotToken,c.argumentExpression)}return c}function tes(n,c,u,d,I){let{finalExpression:h,occurrences:b,expression:R}=d,N=b[b.length-1],V=Y9r(c,h,b);V&&(fo(V)||_A(V)||lu(V))&&(ro(R)?u.replaceNodeRange(n,N,h,V):vN(R)&&u.replaceNode(n,R,_e.createBinaryExpression(V,_e.createToken(61),R.whenFalse)))}var X9r={};o(X9r,{Messages:()=>s_,RangeFacts:()=>K9r,getRangeToExtract:()=>DZt,getRefactorActionsToExtractSymbol:()=>J9r,getRefactorEditsToExtractSymbol:()=>U9r});var Wue="Extract Symbol",Pue={name:"Extract Constant",description:tu(Z.Extract_constant),kind:"refactor.extract.constant"},Oue={name:"Extract Function",description:tu(Z.Extract_function),kind:"refactor.extract.function"};jx(Wue,{kinds:[Pue.kind,Oue.kind],getEditsForAction:U9r,getAvailableActions:J9r});function J9r(n){let c=n.kind,u=DZt(n.file,n7(n),n.triggerReason==="invoked"),d=u.targetRange;if(d===void 0){if(!u.errors||u.errors.length===0||!n.preferences.provideRefactorNotApplicableReason)return v;let Ae=[];return mP(Oue.kind,c)&&Ae.push({name:Wue,description:Oue.description,actions:[{...Oue,notApplicableReason:ue(u.errors)}]}),mP(Pue.kind,c)&&Ae.push({name:Wue,description:Pue.description,actions:[{...Pue,notApplicableReason:ue(u.errors)}]}),Ae}let{affectedTextRange:I,extractions:h}=aes(d,n);if(h===void 0)return v;let b=[],R=new Map,N,V=[],P=new Map,Q,te=0;for(let{functionExtraction:Ae,constantExtraction:de}of h){if(mP(Oue.kind,c)){let Be=Ae.description;Ae.errors.length===0?R.has(Be)||(R.set(Be,!0),b.push({description:Be,name:`function_scope_${te}`,kind:Oue.kind,range:{start:{line:Vl(n.file,I.pos).line,offset:Vl(n.file,I.pos).character},end:{line:Vl(n.file,I.end).line,offset:Vl(n.file,I.end).character}}})):N||(N={description:Be,name:`function_scope_${te}`,notApplicableReason:ue(Ae.errors),kind:Oue.kind})}if(mP(Pue.kind,c)){let Be=de.description;de.errors.length===0?P.has(Be)||(P.set(Be,!0),V.push({description:Be,name:`constant_scope_${te}`,kind:Pue.kind,range:{start:{line:Vl(n.file,I.pos).line,offset:Vl(n.file,I.pos).character},end:{line:Vl(n.file,I.end).line,offset:Vl(n.file,I.end).character}}})):Q||(Q={description:Be,name:`constant_scope_${te}`,notApplicableReason:ue(de.errors),kind:Pue.kind})}te++}let re=[];return b.length?re.push({name:Wue,description:tu(Z.Extract_function),actions:b}):n.preferences.provideRefactorNotApplicableReason&&N&&re.push({name:Wue,description:tu(Z.Extract_function),actions:[N]}),V.length?re.push({name:Wue,description:tu(Z.Extract_constant),actions:V}):n.preferences.provideRefactorNotApplicableReason&&Q&&re.push({name:Wue,description:tu(Z.Extract_constant),actions:[Q]}),re.length?re:v;function ue(Ae){let de=Ae[0].messageText;return typeof de!="string"&&(de=de.messageText),de}}function U9r(n,c){let d=DZt(n.file,n7(n)).targetRange,I=/^function_scope_(\d+)$/.exec(c);if(I){let b=+I[1];return w.assert(isFinite(b),"Expected to parse a finite number from the function scope index"),ses(d,n,b)}let h=/^constant_scope_(\d+)$/.exec(c);if(h){let b=+h[1];return w.assert(isFinite(b),"Expected to parse a finite number from the constant scope index"),oes(d,n,b)}w.fail("Unrecognized action name")}var s_;(n=>{function c(u){return{message:u,code:0,category:3,key:u}}n.cannotExtractRange=c("Cannot extract range."),n.cannotExtractImport=c("Cannot extract import statement."),n.cannotExtractSuper=c("Cannot extract super call."),n.cannotExtractJSDoc=c("Cannot extract JSDoc."),n.cannotExtractEmpty=c("Cannot extract empty range."),n.expressionExpected=c("expression expected."),n.uselessConstantType=c("No reason to extract constant of type."),n.statementOrExpressionExpected=c("Statement or expression expected."),n.cannotExtractRangeContainingConditionalBreakOrContinueStatements=c("Cannot extract range containing conditional break or continue statements."),n.cannotExtractRangeContainingConditionalReturnStatement=c("Cannot extract range containing conditional return statement."),n.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange=c("Cannot extract range containing labeled break or continue with target outside of the range."),n.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators=c("Cannot extract range containing writes to references located outside of the target range in generators."),n.typeWillNotBeVisibleInTheNewScope=c("Type will not visible in the new scope."),n.functionWillNotBeVisibleInTheNewScope=c("Function will not visible in the new scope."),n.cannotExtractIdentifier=c("Select more than a single identifier."),n.cannotExtractExportedEntity=c("Cannot extract exported declaration"),n.cannotWriteInExpression=c("Cannot write back side-effects when extracting an expression"),n.cannotExtractReadonlyPropertyInitializerOutsideConstructor=c("Cannot move initialization of read-only class property outside of the constructor"),n.cannotExtractAmbientBlock=c("Cannot extract code from ambient contexts"),n.cannotAccessVariablesFromNestedScopes=c("Cannot access variables from nested scopes"),n.cannotExtractToJSClass=c("Cannot extract constant to a class scope in JS"),n.cannotExtractToExpressionArrowFunction=c("Cannot extract constant to an arrow function without a block"),n.cannotExtractFunctionsContainingThisToMethod=c("Cannot extract functions containing this to method")})(s_||(s_={}));var K9r=(n=>(n[n.None=0]="None",n[n.HasReturn=1]="HasReturn",n[n.IsGenerator=2]="IsGenerator",n[n.IsAsyncFunction=4]="IsAsyncFunction",n[n.UsesThis=8]="UsesThis",n[n.UsesThisInFunction=16]="UsesThisInFunction",n[n.InStaticRegion=32]="InStaticRegion",n))(K9r||{});function DZt(n,c,u=!0){let{length:d}=c;if(d===0&&!u)return{errors:[Cm(n,c.start,d,s_.cannotExtractEmpty)]};let I=d===0&&u,h=EGt(n,c.start),b=WGe(n,Ku(c)),R=h&&b&&u?res(h,b,n):c,N=I?wes(h):X_e(h,n,R),V=I?N:X_e(b,n,R),P=0,Q;if(!N||!V)return{errors:[Cm(n,c.start,d,s_.cannotExtractRange)]};if(N.flags&16777216)return{errors:[Cm(n,c.start,d,s_.cannotExtractJSDoc)]};if(N.parent!==V.parent)return{errors:[Cm(n,c.start,d,s_.cannotExtractRange)]};if(N!==V){if(!Yte(N.parent))return{errors:[Cm(n,c.start,d,s_.cannotExtractRange)]};let Fe=[];for(let Ne of N.parent.statements){if(Ne===N||Fe.length){let Me=Be(Ne);if(Me)return{errors:Me};Fe.push(Ne)}if(Ne===V)break}return Fe.length?{targetRange:{range:Fe,facts:P,thisNode:Q}}:{errors:[Cm(n,c.start,d,s_.cannotExtractRange)]}}if(G_(N)&&!N.expression)return{errors:[Cm(n,c.start,d,s_.cannotExtractRange)]};let te=ue(N),re=Ae(te)||Be(te);if(re)return{errors:re};return{targetRange:{range:nes(te),facts:P,thisNode:Q}};function ue(Fe){if(G_(Fe)){if(Fe.expression)return Fe.expression}else if(Dp(Fe)||bl(Fe)){let Ne=Dp(Fe)?Fe.declarationList.declarations:Fe.declarations,Me=0,De;for(let lt of Ne)lt.initializer&&(Me++,De=lt.initializer);if(Me===1)return De}else if(js(Fe)&&Fe.initializer)return Fe.initializer;return Fe}function Ae(Fe){if(sr(Xf(Fe)?Fe.expression:Fe))return[Js(Fe,s_.cannotExtractIdentifier)]}function de(Fe,Ne){let Me=Fe;for(;Me!==Ne;){if(Me.kind===172){eg(Me)&&(P|=32);break}else if(Me.kind===169){Ob(Me).kind===176&&(P|=32);break}else Me.kind===174&&eg(Me)&&(P|=32);Me=Me.parent}}function Be(Fe){let Ne;if((st=>{st[st.None=0]="None",st[st.Break=1]="Break",st[st.Continue=2]="Continue",st[st.Return=4]="Return"})(Ne||(Ne={})),w.assert(Fe.pos<=Fe.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809 (1)"),w.assert(!Fv(Fe.pos),"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809 (2)"),!Cc(Fe)&&!(DB(Fe)&&j9r(Fe))&&!ZZt(Fe))return[Js(Fe,s_.statementOrExpressionExpected)];if(Fe.flags&33554432)return[Js(Fe,s_.cannotExtractAmbientBlock)];let Me=Km(Fe);Me&&de(Fe,Me);let De,lt=4,Le;if(je(Fe),P&8){let st=n0(Fe,!1,!1);(st.kind===262||st.kind===174&&st.parent.kind===210||st.kind===218)&&(P|=16)}return De;function je(st){if(De)return!0;if(xC(st)){let qe=st.kind===260?st.parent.parent:st;if(ya(qe,32))return(De||(De=[])).push(Js(st,s_.cannotExtractExportedEntity)),!0}switch(st.kind){case 272:return(De||(De=[])).push(Js(st,s_.cannotExtractImport)),!0;case 277:return(De||(De=[])).push(Js(st,s_.cannotExtractExportedEntity)),!0;case 108:if(st.parent.kind===213){let qe=Km(st);if(qe===void 0||qe.pos=c.start+c.length)return(De||(De=[])).push(Js(st,s_.cannotExtractSuper)),!0}else P|=8,Q=st;break;case 219:hu(st,function qe(it){if(Zte(it))P|=8,Q=st;else{if(va(it)||eu(it)&&!Id(it))return!1;hu(it,qe)}});case 263:case 262:Fc(st.parent)&&st.parent.externalModuleIndicator===void 0&&(De||(De=[])).push(Js(st,s_.functionWillNotBeVisibleInTheNewScope));case 231:case 218:case 174:case 176:case 177:case 178:return!1}let nt=lt;switch(st.kind){case 245:lt&=-5;break;case 258:lt=0;break;case 241:st.parent&&st.parent.kind===258&&st.parent.finallyBlock===st&&(lt=4);break;case 297:case 296:lt|=1;break;default:YR(st,!1)&&(lt|=3);break}switch(st.kind){case 197:case 110:P|=8,Q=st;break;case 256:{let qe=st.label;(Le||(Le=[])).push(qe.escapedText),hu(st,je),Le.pop();break}case 252:case 251:{let qe=st.label;qe?Ue(Le,qe.escapedText)||(De||(De=[])).push(Js(st,s_.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange)):lt&(st.kind===252?1:2)||(De||(De=[])).push(Js(st,s_.cannotExtractRangeContainingConditionalBreakOrContinueStatements));break}case 223:P|=4;break;case 229:P|=2;break;case 253:lt&4?P|=1:(De||(De=[])).push(Js(st,s_.cannotExtractRangeContainingConditionalReturnStatement));break;default:hu(st,je);break}lt=nt}}}function res(n,c,u){let d=n.getStart(u),I=c.getEnd();return u.text.charCodeAt(I)===59&&I++,{start:d,length:I-d}}function nes(n){if(Cc(n))return[n];if(DB(n))return Xf(n.parent)?[n.parent]:n;if(ZZt(n))return n}function xZt(n){return Id(n)?EX(n.body):pd(n)||Fc(n)||wN(n)||va(n)}function ies(n){let c=QZ(n.range)?qs(n.range):n.range;if(n.facts&8&&!(n.facts&16)){let d=Km(c);if(d){let I=Si(c,pd);return I?[I,d]:[d]}}let u=[];for(;;)if(c=c.parent,c.kind===169&&(c=Si(c,d=>pd(d)).parent),xZt(c)&&(u.push(c),c.kind===307))return u}function ses(n,c,u){let{scopes:d,readsAndWrites:{target:I,usagesPerScope:h,functionErrorsPerScope:b,exposedVariableDeclarations:R}}=kZt(n,c);return w.assert(!b[u].length,"The extraction went missing? How?"),c.cancellationToken.throwIfCancellationRequested(),des(I,d[u],h[u],R,n,c)}function oes(n,c,u){let{scopes:d,readsAndWrites:{target:I,usagesPerScope:h,constantErrorsPerScope:b,exposedVariableDeclarations:R}}=kZt(n,c);w.assert(!b[u].length,"The extraction went missing? How?"),w.assert(R.length===0,"Extract constant accepted a range containing a variable declaration?"),c.cancellationToken.throwIfCancellationRequested();let N=tn(I)?I:I.statements[0].expression;return pes(N,d[u],h[u],n.facts,c)}function aes(n,c){let{scopes:u,affectedTextRange:d,readsAndWrites:{functionErrorsPerScope:I,constantErrorsPerScope:h}}=kZt(n,c),b=u.map((R,N)=>{let V=ces(R),P=les(R),Q=pd(R)?ues(R):va(R)?ges(R):Aes(R),te,re;return Q===1?(te=IN(tu(Z.Extract_to_0_in_1_scope),[V,"global"]),re=IN(tu(Z.Extract_to_0_in_1_scope),[P,"global"])):Q===0?(te=IN(tu(Z.Extract_to_0_in_1_scope),[V,"module"]),re=IN(tu(Z.Extract_to_0_in_1_scope),[P,"module"])):(te=IN(tu(Z.Extract_to_0_in_1),[V,Q]),re=IN(tu(Z.Extract_to_0_in_1),[P,Q])),N===0&&!va(R)&&(re=IN(tu(Z.Extract_to_0_in_enclosing_scope),[P])),{functionExtraction:{description:te,errors:I[N]},constantExtraction:{description:re,errors:h[N]}}});return{affectedTextRange:d,extractions:b}}function kZt(n,c){let{file:u}=c,d=ies(n),I=ves(n,u),h=Ses(n,d,I,u,c.program.getTypeChecker(),c.cancellationToken);return{scopes:d,affectedTextRange:I,readsAndWrites:h}}function ces(n){return pd(n)?"inner function":va(n)?"method":"function"}function les(n){return va(n)?"readonly field":"constant"}function ues(n){switch(n.kind){case 176:return"constructor";case 218:case 262:return n.name?`function '${n.name.text}'`:Sje;case 219:return"arrow function";case 174:return`method '${n.name.getText()}'`;case 177:return`'get ${n.name.getText()}'`;case 178:return`'set ${n.name.getText()}'`;default:w.assertNever(n,`Unexpected scope kind ${n.kind}`)}}function ges(n){return n.kind===263?n.name?`class '${n.name.text}'`:"anonymous class declaration":n.name?`class expression '${n.name.text}'`:"anonymous class expression"}function Aes(n){return n.kind===268?`namespace '${n.parent.name.getText()}'`:n.externalModuleIndicator?0:1}function des(n,c,{usages:u,typeParameterUsages:d,substitutions:I},h,b,R){let N=R.program.getTypeChecker(),V=sA(R.program.getCompilerOptions()),P=p0.createImportAdder(R.file,R.program,R.preferences,R.host),Q=c.getSourceFile(),te=S4(va(c)?"newMethod":"newFunction",Q),re=io(c),ue=_e.createIdentifier(te),Ae,de=[],Be=[],Fe;u.forEach((Lt,kt)=>{let Zt;if(!re){let jt=N.getTypeOfSymbolAtLocation(Lt.symbol,Lt.node);jt=N.getBaseTypeOfLiteralType(jt),Zt=p0.typeToAutoImportableTypeNode(N,P,jt,c,V,1)}let Dr=_e.createParameterDeclaration(void 0,void 0,kt,void 0,Zt);de.push(Dr),Lt.usage===2&&(Fe||(Fe=[])).push(Lt),Be.push(_e.createIdentifier(kt))});let Me=on(d.values(),Lt=>({type:Lt,declaration:Ies(Lt,R.startPosition)})).sort(Ces),De=Me.length===0?void 0:tr(Me,({declaration:Lt})=>Lt),lt=De!==void 0?De.map(Lt=>_e.createTypeReferenceNode(Lt.name,void 0)):void 0;if(tn(n)&&!re){let Lt=N.getContextualType(n);Ae=N.typeToTypeNode(Lt,c,1)}let{body:Le,returnValueProperty:je}=hes(n,h,Fe,I,!!(b.facts&1));HE(Le);let st,nt=!!(b.facts&16);if(va(c)){let Lt=re?[]:[_e.createModifier(123)];b.facts&32&&Lt.push(_e.createModifier(126)),b.facts&4&&Lt.push(_e.createModifier(134)),st=_e.createMethodDeclaration(Lt.length?Lt:void 0,b.facts&2?_e.createToken(42):void 0,ue,void 0,De,de,Ae,Le)}else nt&&de.unshift(_e.createParameterDeclaration(void 0,void 0,"this",void 0,N.typeToTypeNode(N.getTypeAtLocation(b.thisNode),c,1),void 0)),st=_e.createFunctionDeclaration(b.facts&4?[_e.createToken(134)]:void 0,b.facts&2?_e.createToken(42):void 0,ue,De,de,Ae,Le);let qe=Ao.ChangeTracker.fromContext(R),it=(QZ(b.range)?Ta(b.range):b.range).end,It=bes(it,c);It?qe.insertNodeBefore(R.file,It,st,!0):qe.insertNodeAtEndOfScope(R.file,c,st),P.writeFixes(qe);let dt=[],Tt=mes(c,b,te);nt&&Be.unshift(_e.createIdentifier("this"));let St=_e.createCallExpression(nt?_e.createPropertyAccessExpression(Tt,"call"):Tt,lt,Be);if(b.facts&2&&(St=_e.createYieldExpression(_e.createToken(42),St)),b.facts&4&&(St=_e.createAwaitExpression(St)),FZt(n)&&(St=_e.createJsxExpression(void 0,St)),h.length&&!Fe)if(w.assert(!je,"Expected no returnValueProperty"),w.assert(!(b.facts&1),"Expected RangeFacts.HasReturn flag to be unset"),h.length===1){let Lt=h[0];dt.push(_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(vd(Lt.name),void 0,vd(Lt.type),St)],Lt.parent.flags)))}else{let Lt=[],kt=[],Zt=h[0].parent.flags,Dr=!1;for(let mr of h){Lt.push(_e.createBindingElement(void 0,void 0,vd(mr.name)));let Pt=N.typeToTypeNode(N.getBaseTypeOfLiteralType(N.getTypeAtLocation(mr)),c,1);kt.push(_e.createPropertySignature(void 0,mr.symbol.name,void 0,Pt)),Dr=Dr||mr.type!==void 0,Zt=Zt&mr.parent.flags}let jt=Dr?_e.createTypeLiteralNode(kt):void 0;jt&&ao(jt,1),dt.push(_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(_e.createObjectBindingPattern(Lt),void 0,jt,St)],Zt)))}else if(h.length||Fe){if(h.length)for(let kt of h){let Zt=kt.parent.flags;Zt&2&&(Zt=Zt&-3|1),dt.push(_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(kt.symbol.name,void 0,Nt(kt.type))],Zt)))}je&&dt.push(_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(je,void 0,Nt(Ae))],1)));let Lt=GZt(h,Fe);je&&Lt.unshift(_e.createShorthandPropertyAssignment(je)),Lt.length===1?(w.assert(!je,"Shouldn't have returnValueProperty here"),dt.push(_e.createExpressionStatement(_e.createAssignment(Lt[0].name,St))),b.facts&1&&dt.push(_e.createReturnStatement())):(dt.push(_e.createExpressionStatement(_e.createAssignment(_e.createObjectLiteralExpression(Lt),St))),je&&dt.push(_e.createReturnStatement(_e.createIdentifier(je))))}else b.facts&1?dt.push(_e.createReturnStatement(St)):QZ(b.range)?dt.push(_e.createExpressionStatement(St)):dt.push(St);QZ(b.range)?qe.replaceNodeRangeWithNodes(R.file,qs(b.range),Ta(b.range),dt):qe.replaceNodeWithNodes(R.file,b.range,dt);let He=qe.getChanges(),Et=(QZ(b.range)?qs(b.range):b.range).getSourceFile().fileName,Kt=K_e(He,Et,te,!1);return{renameFilename:Et,renameLocation:Kt,edits:He};function Nt(Lt){if(Lt===void 0)return;let kt=vd(Lt),Zt=kt;for(;to(Zt);)Zt=Zt.type;return Is(Zt)&&be(Zt.types,Dr=>Dr.kind===157)?kt:_e.createUnionTypeNode([kt,_e.createKeywordTypeNode(157)])}}function pes(n,c,{substitutions:u},d,I){let h=I.program.getTypeChecker(),b=c.getSourceFile(),R=gZt(n,c,h,b),N=io(c),V=N||!h.isContextSensitive(n)?void 0:h.typeToTypeNode(h.getContextualType(n),c,1),P=_es(zA(n),u);({variableType:V,initializer:P}=Ae(V,P)),HE(P);let Q=Ao.ChangeTracker.fromContext(I);if(va(c)){w.assert(!N,"Cannot extract to a JS class");let de=[];de.push(_e.createModifier(123)),d&32&&de.push(_e.createModifier(126)),de.push(_e.createModifier(148));let Be=_e.createPropertyDeclaration(de,R,void 0,V,P),Fe=_e.createPropertyAccessExpression(d&32?_e.createIdentifier(c.name.getText()):_e.createThis(),_e.createIdentifier(R));FZt(n)&&(Fe=_e.createJsxExpression(void 0,Fe));let Ne=n.pos,Me=Ees(Ne,c);Q.insertNodeBefore(I.file,Me,Be,!0),Q.replaceNode(I.file,n,Fe)}else{let de=_e.createVariableDeclaration(R,void 0,V,P),Be=fes(n,c);if(Be){Q.insertNodeBefore(I.file,Be,de);let Fe=_e.createIdentifier(R);Q.replaceNode(I.file,n,Fe)}else if(n.parent.kind===244&&c===Si(n,xZt)){let Fe=_e.createVariableStatement(void 0,_e.createVariableDeclarationList([de],2));Q.replaceNode(I.file,n.parent,Fe)}else{let Fe=_e.createVariableStatement(void 0,_e.createVariableDeclarationList([de],2)),Ne=Bes(n,c);if(Ne.pos===0?Q.insertNodeAtTopOfFile(I.file,Fe,!1):Q.insertNodeBefore(I.file,Ne,Fe,!1),n.parent.kind===244)Q.delete(I.file,n.parent);else{let Me=_e.createIdentifier(R);FZt(n)&&(Me=_e.createJsxExpression(void 0,Me)),Q.replaceNode(I.file,n,Me)}}}let te=Q.getChanges(),re=n.getSourceFile().fileName,ue=K_e(te,re,R,!0);return{renameFilename:re,renameLocation:ue,edits:te};function Ae(de,Be){if(de===void 0)return{variableType:de,initializer:Be};if(!PA(Be)&&!Id(Be)||Be.typeParameters)return{variableType:de,initializer:Be};let Fe=h.getTypeAtLocation(n),Ne=Tu(h.getSignaturesOfType(Fe,0));if(!Ne)return{variableType:de,initializer:Be};if(Ne.getTypeParameters())return{variableType:de,initializer:Be};let Me=[],De=!1;for(let lt of Be.parameters)if(lt.type)Me.push(lt);else{let Le=h.getTypeAtLocation(lt);Le===h.getAnyType()&&(De=!0),Me.push(_e.updateParameterDeclaration(lt,lt.modifiers,lt.dotDotDotToken,lt.name,lt.questionToken,lt.type||h.typeToTypeNode(Le,c,1),lt.initializer))}if(De)return{variableType:de,initializer:Be};if(de=void 0,Id(Be))Be=_e.updateArrowFunction(Be,tw(n)?uN(n):void 0,Be.typeParameters,Me,Be.type||h.typeToTypeNode(Ne.getReturnType(),c,1),Be.equalsGreaterThanToken,Be.body);else{if(Ne&&Ne.thisParameter){let lt=$i(Me);if(!lt||sr(lt.name)&<.name.escapedText!=="this"){let Le=h.getTypeOfSymbolAtLocation(Ne.thisParameter,n);Me.splice(0,0,_e.createParameterDeclaration(void 0,void 0,"this",void 0,h.typeToTypeNode(Le,c,1)))}}Be=_e.updateFunctionExpression(Be,tw(n)?uN(n):void 0,Be.asteriskToken,Be.name,Be.typeParameters,Me,Be.type||h.typeToTypeNode(Ne.getReturnType(),c,1),Be.body)}return{variableType:de,initializer:Be}}}function fes(n,c){let u;for(;n!==void 0&&n!==c;){if(js(n)&&n.initializer===u&&bl(n.parent)&&n.parent.declarations.length>1)return n;u=n,n=n.parent}}function Ies(n,c){let u,d=n.symbol;if(d&&d.declarations)for(let I of d.declarations)(u===void 0||I.pos0;if(hc(n)&&!h&&d.size===0)return{body:_e.createBlock(n.statements,!0),returnValueProperty:void 0};let b,R=!1,N=_e.createNodeArray(hc(n)?n.statements.slice(0):[Cc(n)?n:_e.createReturnStatement(zA(n))]);if(h||d.size){let P=ws(N,V,Cc).slice();if(h&&!I&&Cc(n)){let Q=GZt(c,u);Q.length===1?P.push(_e.createReturnStatement(Q[0].name)):P.push(_e.createReturnStatement(_e.createObjectLiteralExpression(Q)))}return{body:_e.createBlock(P,!0),returnValueProperty:b}}else return{body:_e.createBlock(N,!0),returnValueProperty:void 0};function V(P){if(!R&&G_(P)&&h){let Q=GZt(c,u);return P.expression&&(b||(b="__return"),Q.unshift(_e.createPropertyAssignment(b,xr(P.expression,V,tn)))),Q.length===1?_e.createReturnStatement(Q[0].name):_e.createReturnStatement(_e.createObjectLiteralExpression(Q))}else{let Q=R;R=R||pd(P)||va(P);let te=d.get(od(P).toString()),re=te?vd(te):ns(P,V,void 0);return R=Q,re}}}function _es(n,c){return c.size?u(n):n;function u(d){let I=c.get(od(d).toString());return I?vd(I):ns(d,u,void 0)}}function yes(n){if(pd(n)){let c=n.body;if(hc(c))return c.statements}else{if(wN(n)||Fc(n))return n.statements;if(va(n))return n.members;}return v}function bes(n,c){return be(yes(c),u=>u.pos>=n&&pd(u)&&!Df(u))}function Ees(n,c){let u=c.members;w.assert(u.length>0,"Found no members");let d,I=!0;for(let h of u){if(h.pos>n)return d||u[0];if(I&&!Hl(h)){if(d!==void 0)return h;I=!1}d=h}return d===void 0?w.fail():d}function Bes(n,c){w.assert(!va(c));let u;for(let d=n;d!==c;d=d.parent)xZt(d)&&(u=d);for(let d=(u||n).parent;;d=d.parent){if(Yte(d)){let I;for(let h of d.statements){if(h.pos>n.pos)break;I=h}return!I&&ute(d)?(w.assert(Bd(d.parent.parent),"Grandparent isn't a switch statement"),d.parent.parent):w.checkDefined(I,"prevStatement failed to get set")}w.assert(d!==c,"Didn't encounter a block-like before encountering scope")}}function GZt(n,c){let u=Ot(n,I=>_e.createShorthandPropertyAssignment(I.symbol.name)),d=Ot(c,I=>_e.createShorthandPropertyAssignment(I.symbol.name));return u===void 0?d:d===void 0?u:u.concat(d)}function QZ(n){return Na(n)}function ves(n,c){return QZ(n.range)?{pos:qs(n.range).getStart(c),end:Ta(n.range).getEnd()}:n.range}function Ses(n,c,u,d,I,h){let b=new Map,R=[],N=[],V=[],P=[],Q=[],te=new Map,re=[],ue,Ae=QZ(n.range)?n.range.length===1&&Xf(n.range[0])?n.range[0].expression:void 0:n.range,de;if(Ae===void 0){let It=n.range,dt=qs(It).getStart(),Tt=Ta(It).end;de=Cm(d,dt,Tt-dt,s_.expressionExpected)}else I.getTypeAtLocation(Ae).flags&147456&&(de=Js(Ae,s_.uselessConstantType));for(let It of c){R.push({usages:new Map,typeParameterUsages:new Map,substitutions:new Map}),N.push(new Map),V.push([]);let dt=[];de&&dt.push(de),va(It)&&io(It)&&dt.push(Js(It,s_.cannotExtractToJSClass)),Id(It)&&!hc(It.body)&&dt.push(Js(It,s_.cannotExtractToExpressionArrowFunction)),P.push(dt)}let Be=new Map,Fe=QZ(n.range)?_e.createBlock(n.range):n.range,Ne=QZ(n.range)?qs(n.range):n.range,Me=De(Ne);if(Le(Fe),Me&&!QZ(n.range)&&!RN(n.range)){let It=I.getContextualType(n.range);lt(It)}if(b.size>0){let It=new Map,dt=0;for(let Tt=Ne;Tt!==void 0&&dt{R[dt].typeParameterUsages.set(He,St)}),dt++),X$(Tt))for(let St of D1(Tt)){let He=I.getTypeAtLocation(St);b.has(He.id.toString())&&It.set(He.id.toString(),He)}w.assert(dt===c.length,"Should have iterated all scopes")}if(Q.length){let It=Y$(c[0],c[0].parent)?c[0]:w2(c[0]);hu(It,nt)}for(let It=0;It0&&(dt.usages.size>0||dt.typeParameterUsages.size>0)){let He=QZ(n.range)?n.range[0]:n.range;P[It].push(Js(He,s_.cannotAccessVariablesFromNestedScopes))}n.facts&16&&va(c[It])&&V[It].push(Js(n.thisNode,s_.cannotExtractFunctionsContainingThisToMethod));let Tt=!1,St;if(R[It].usages.forEach(He=>{He.usage===2&&(Tt=!0,He.symbol.flags&106500&&He.symbol.valueDeclaration&&ib(He.symbol.valueDeclaration,8)&&(St=He.symbol.valueDeclaration))}),w.assert(QZ(n.range)||re.length===0,"No variable declarations expected if something was extracted"),Tt&&!QZ(n.range)){let He=Js(n.range,s_.cannotWriteInExpression);V[It].push(He),P[It].push(He)}else if(St&&It>0){let He=Js(St,s_.cannotExtractReadonlyPropertyInitializerOutsideConstructor);V[It].push(He),P[It].push(He)}else if(ue){let He=Js(ue,s_.cannotExtractExportedEntity);V[It].push(He),P[It].push(He)}}return{target:Fe,usagesPerScope:R,functionErrorsPerScope:V,constantErrorsPerScope:P,exposedVariableDeclarations:re};function De(It){return!!Si(It,dt=>X$(dt)&&D1(dt).length!==0)}function lt(It){let dt=I.getSymbolWalker(()=>(h.throwIfCancellationRequested(),!0)),{visitedTypes:Tt}=dt.walkType(It);for(let St of Tt)St.isTypeParameter()&&b.set(St.id.toString(),St)}function Le(It,dt=1){if(Me){let Tt=I.getTypeAtLocation(It);lt(Tt)}if(xC(It)&&It.symbol&&Q.push(It),Im(It))Le(It.left,2),Le(It.right);else if(_8(It))Le(It.operand,2);else if(fo(It)||_A(It))hu(It,Le);else if(sr(It)){if(!It.parent||c0(It.parent)&&It!==It.parent.left||fo(It.parent)&&It!==It.parent.expression)return;je(It,dt,VS(It))}else hu(It,Le)}function je(It,dt,Tt){let St=st(It,dt,Tt);if(St)for(let He=0;He=dt)return He;if(Be.set(He,dt),ht){for(let Nt of R)Nt.usages.get(It.text)&&Nt.usages.set(It.text,{usage:dt,symbol:St,node:It});return He}let Et=St.getDeclarations(),Kt=Et&&be(Et,Nt=>Nt.getSourceFile()===d);if(Kt&&!V_e(u,Kt.getStart(),Kt.end)){if(n.facts&2&&dt===2){let Nt=Js(It,s_.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators);for(let Lt of V)Lt.push(Nt);for(let Lt of P)Lt.push(Nt)}for(let Nt=0;NtSt.symbol===dt);if(Tt)if(js(Tt)){let St=Tt.symbol.id.toString();te.has(St)||(re.push(Tt),te.set(St,!0))}else ue=ue||Tt}hu(It,nt)}function qe(It){return It.parent&&F_(It.parent)&&It.parent.name===It?I.getShorthandAssignmentValueSymbol(It.parent):I.getSymbolAtLocation(It)}function it(It,dt,Tt){if(!It)return;let St=It.getDeclarations();if(St&&St.some(ht=>ht.parent===dt))return _e.createIdentifier(It.name);let He=it(It.parent,dt,Tt);if(He!==void 0)return Tt?_e.createQualifiedName(He,_e.createIdentifier(It.name)):_e.createPropertyAccessExpression(He,It.name)}}function wes(n){return Si(n,c=>c.parent&&j9r(c)&&!ro(c.parent))}function j9r(n){let{parent:c}=n;switch(c.kind){case 306:return!1}switch(n.kind){case 11:return c.kind!==272&&c.kind!==276;case 230:case 206:case 208:return!1;case 80:return c.kind!==208&&c.kind!==276&&c.kind!==281}return!0}function FZt(n){return ZZt(n)||(Jx(n)||d4(n)||dM(n))&&(Jx(n.parent)||dM(n.parent))}function ZZt(n){return Eu(n)&&n.parent&&RN(n.parent)}var Tes={},mze="Generate 'get' and 'set' accessors",LZt=tu(Z.Generate_get_and_set_accessors),VZt={name:mze,description:LZt,kind:"refactor.rewrite.property.generateAccessors"};jx(mze,{kinds:[VZt.kind],getEditsForAction:function(c,u){if(!c.endPosition)return;let d=p0.getAccessorConvertiblePropertyAtPosition(c.file,c.program,c.startPosition,c.endPosition);w.assert(d&&!OG(d),"Expected applicable refactor info");let I=p0.generateAccessorFromProperty(c.file,c.program,c.startPosition,c.endPosition,c,u);if(!I)return;let h=c.file.fileName,b=d.renameAccessor?d.accessorName:d.fieldName,N=(sr(b)?0:-1)+K_e(I,h,b.text,Uc(d.declaration));return{renameFilename:h,renameLocation:N,edits:I}},getAvailableActions(n){if(!n.endPosition)return v;let c=p0.getAccessorConvertiblePropertyAtPosition(n.file,n.program,n.startPosition,n.endPosition,n.triggerReason==="invoked");return c?OG(c)?n.preferences.provideRefactorNotApplicableReason?[{name:mze,description:LZt,actions:[{...VZt,notApplicableReason:c.error}]}]:v:[{name:mze,description:LZt,actions:[VZt]}]:v}});var Nes={},hze="Infer function return type",WZt=tu(Z.Infer_function_return_type),_ze={name:hze,description:WZt,kind:"refactor.rewrite.function.returnType"};jx(hze,{kinds:[_ze.kind],getEditsForAction:Res,getAvailableActions:Des});function Res(n){let c=z9r(n);if(c&&!OG(c))return{renameFilename:void 0,renameLocation:void 0,edits:Ao.ChangeTracker.with(n,d=>xes(n.file,d,c.declaration,c.returnTypeNode))}}function Des(n){let c=z9r(n);return c?OG(c)?n.preferences.provideRefactorNotApplicableReason?[{name:hze,description:WZt,actions:[{..._ze,notApplicableReason:c.error}]}]:v:[{name:hze,description:WZt,actions:[_ze]}]:v}function xes(n,c,u,d){let I=Qd(u,22,n),h=Id(u)&&I===void 0,b=h?qs(u.parameters):I;b&&(h&&(c.insertNodeBefore(n,b,_e.createToken(21)),c.insertNodeAfter(n,b,_e.createToken(22))),c.insertNodeAt(n,b.end,d,{prefix:": "}))}function z9r(n){if(io(n.file)||!mP(_ze.kind,n.kind))return;let c=ub(n.file,n.startPosition),u=Si(c,b=>hc(b)||b.parent&&Id(b.parent)&&(b.kind===39||b.parent.body===b)?"quit":kes(b));if(!u||!u.body||u.type)return{error:tu(Z.Return_type_must_be_inferred_from_a_function)};let d=n.program.getTypeChecker(),I=Ges(d,u);if(!I)return{error:tu(Z.Could_not_determine_function_return_type)};let h=d.typeToTypeNode(I,u,1);if(h)return{declaration:u,returnTypeNode:h}}function kes(n){switch(n.kind){case 262:case 218:case 219:case 174:return!0;default:return!1}}function Ges(n,c){if(n.isImplementationOfOverload(c)){let d=n.getTypeAtLocation(c).getCallSignatures();if(d.length>1)return n.getUnionType(tr(d,I=>I.getReturnType()))}let u=n.getSignatureFromDeclaration(c);if(u)return n.getReturnTypeOfSignature(u)}var q9r=(n=>(n[n.typeOffset=8]="typeOffset",n[n.modifierMask=255]="modifierMask",n))(q9r||{}),$9r=(n=>(n[n.class=0]="class",n[n.enum=1]="enum",n[n.interface=2]="interface",n[n.namespace=3]="namespace",n[n.typeParameter=4]="typeParameter",n[n.type=5]="type",n[n.parameter=6]="parameter",n[n.variable=7]="variable",n[n.enumMember=8]="enumMember",n[n.property=9]="property",n[n.function=10]="function",n[n.member=11]="member",n))($9r||{}),eVr=(n=>(n[n.declaration=0]="declaration",n[n.static=1]="static",n[n.async=2]="async",n[n.readonly=3]="readonly",n[n.defaultLibrary=4]="defaultLibrary",n[n.local=5]="local",n))(eVr||{});function tVr(n,c,u,d){let I=PZt(n,c,u,d);w.assert(I.spans.length%3===0);let h=I.spans,b=[];for(let R=0;R{I.push(b.getStart(c),b.getWidth(c),(R+1<<8)+N)},d),I}function Zes(n,c,u,d,I){let h=n.getTypeChecker(),b=!1;function R(N){switch(N.kind){case 267:case 263:case 264:case 262:case 231:case 218:case 219:I.throwIfCancellationRequested()}if(!N||!oI(u,N.pos,N.getFullWidth())||N.getFullWidth()===0)return;let V=b;if((Jx(N)||d4(N))&&(b=!0),Qle(N)&&(b=!1),sr(N)&&!b&&!Pes(N)&&!T6(N.escapedText)){let P=h.getSymbolAtLocation(N);if(P){P.flags&2097152&&(P=h.getAliasedSymbol(P));let Q=Les(P,E4(N));if(Q!==void 0){let te=0;N.parent&&(hl(N.parent)||iVr.get(N.parent.kind)===Q)&&N.parent.name===N&&(te=1),Q===6&&nVr(N)&&(Q=9),Q=Ves(h,N,Q);let re=P.valueDeclaration;if(re){let ue=Rh(re),Ae=$y(re);ue&256&&(te|=2),ue&1024&&(te|=4),Q!==0&&Q!==2&&(ue&8||Ae&2||P.getFlags()&8)&&(te|=8),(Q===7||Q===10)&&Wes(re,c)&&(te|=32),n.isSourceFileDefaultLibrary(re.getSourceFile())&&(te|=16)}else P.declarations&&P.declarations.some(ue=>n.isSourceFileDefaultLibrary(ue.getSourceFile()))&&(te|=16);d(N,Q,te)}}}hu(N,R),b=V}R(c)}function Les(n,c){let u=n.getFlags();if(u&32)return 0;if(u&384)return 1;if(u&524288)return 5;if(u&64){if(c&2)return 2}else if(u&262144)return 4;let d=n.valueDeclaration||n.declarations&&n.declarations[0];return d&&hl(d)&&(d=rVr(d)),d&&iVr.get(d.kind)}function Ves(n,c,u){if(u===7||u===9||u===6){let d=n.getTypeAtLocation(c);if(d){let I=h=>h(d)||d.isUnion()&&d.types.some(h);if(u!==6&&I(h=>h.getConstructSignatures().length>0))return 0;if(I(h=>h.getCallSignatures().length>0)&&!I(h=>h.getProperties().length>0)||Oes(c))return u===9?11:10}}return u}function Wes(n,c){return hl(n)&&(n=rVr(n)),js(n)?(!Fc(n.parent.parent.parent)||fM(n.parent))&&n.getSourceFile()===c:hp(n)?!Fc(n.parent)&&n.getSourceFile()===c:!1}function rVr(n){for(;;)if(hl(n.parent.parent))n=n.parent.parent;else return n.parent.parent}function Pes(n){let c=n.parent;return c&&(oT(c)||yy(c)||Xx(c))}function Oes(n){for(;nVr(n);)n=n.parent;return lu(n.parent)&&n.parent.expression===n}function nVr(n){return c0(n.parent)&&n.parent.right===n||fo(n.parent)&&n.parent.name===n}var iVr=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]]),sVr="0.8";function oVr(n,c,u,d){let I=CX(n)?new OZt(n,c,u):n===80?new cVr(80,c,u):n===81?new lVr(81,c,u):new aVr(n,c,u);return I.parent=d,I.flags=d.flags&101441536,I}var OZt=class{constructor(n,c,u){this.pos=c,this.end=u,this.kind=n,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(n){w.assert(!Fv(this.pos)&&!Fv(this.end),n||"Node must have a real position for this operation")}getSourceFile(){return ls(this)}getStart(n,c){return this.assertHasRealPosition(),xx(this,n,c)}getFullStart(){return this.assertHasRealPosition(),this.pos}getEnd(){return this.assertHasRealPosition(),this.end}getWidth(n){return this.assertHasRealPosition(),this.getEnd()-this.getStart(n)}getFullWidth(){return this.assertHasRealPosition(),this.end-this.pos}getLeadingTriviaWidth(n){return this.assertHasRealPosition(),this.getStart(n)-this.pos}getFullText(n){return this.assertHasRealPosition(),(n||this.getSourceFile()).text.substring(this.pos,this.end)}getText(n){return this.assertHasRealPosition(),n||(n=this.getSourceFile()),n.text.substring(this.getStart(n),this.getEnd())}getChildCount(n){return this.getChildren(n).length}getChildAt(n,c){return this.getChildren(c)[n]}getChildren(n=ls(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"),YKe(this,n)??iRt(this,n,Qes(this,n))}getFirstToken(n){this.assertHasRealPosition();let c=this.getChildren(n);if(!c.length)return;let u=be(c,d=>d.kind<309||d.kind>351);return u.kind<166?u:u.getFirstToken(n)}getLastToken(n){this.assertHasRealPosition();let c=this.getChildren(n),u=zo(c);if(u)return u.kind<166?u:u.getLastToken(n)}forEachChild(n,c){return hu(this,n,c)}};function Qes(n,c){let u=[];if(ff(n))return n.forEachChild(b=>{u.push(b)}),u;J0.setText((c||n.getSourceFile()).text);let d=n.pos,I=b=>{xFe(u,d,b.pos,n),u.push(b),d=b.end},h=b=>{xFe(u,d,b.pos,n),u.push(Mes(b,n)),d=b.end};return X(n.jsDoc,I),d=n.pos,n.forEachChild(I,h),xFe(u,d,n.end,n),J0.setText(void 0),u}function xFe(n,c,u,d){for(J0.resetTokenState(c);cc.tagName.text==="inheritDoc"||c.tagName.text==="inheritdoc")}function yze(n,c){if(!n)return v;let u=yP.getJsDocTagsFromDeclarations(n,c);if(c&&(u.length===0||n.some(uVr))){let d=new Set;for(let I of n){let h=gVr(c,I,b=>{var R;if(!d.has(b))return d.add(b),I.kind===177||I.kind===178?b.getContextualJsDocTags(I,c):((R=b.declarations)==null?void 0:R.length)===1?b.getJsDocTags(c):void 0});h&&(u=[...h,...u])}}return u}function kFe(n,c){if(!n)return v;let u=yP.getJsDocCommentsFromDeclarations(n,c);if(c&&(u.length===0||n.some(uVr))){let d=new Set;for(let I of n){let h=gVr(c,I,b=>{if(!d.has(b))return d.add(b),I.kind===177||I.kind===178?b.getContextualDocumentationComment(I,c):b.getDocumentationComment(c)});h&&(u=u.length===0?h.slice():h.concat(Ote(),u))}}return u}function gVr(n,c,u){var d;let I=((d=c.parent)==null?void 0:d.kind)===176?c.parent.parent:c.parent;if(!I)return;let h=CC(c);return le($8(I),b=>{let R=n.getTypeAtLocation(b),N=h&&R.symbol?n.getTypeOfSymbol(R.symbol):R,V=n.getPropertyOfType(N,c.symbol.name);return V?u(V):void 0})}var Jes=class extends OZt{constructor(n,c,u){super(n,c,u)}update(n,c){return o8e(this,n,c)}getLineAndCharacterOfPosition(n){return Vl(this,n)}getLineStarts(){return Dc(this)}getPositionOfLineAndCharacter(n,c,u){return Vu(Dc(this),n,c,this.text,u)}getLineEndOfPosition(n){let{line:c}=this.getLineAndCharacterOfPosition(n),u=this.getLineStarts(),d;c+1>=u.length&&(d=this.getEnd()),d||(d=u[c+1]-1);let I=this.getFullText();return I[d]===` +`&&I[d-1]==="\r"?d-1:d}getNamedDeclarations(){return this.namedDeclarations||(this.namedDeclarations=this.computeNamedDeclarations()),this.namedDeclarations}computeNamedDeclarations(){let n=ec();return this.forEachChild(I),n;function c(h){let b=d(h);b&&n.add(b,h)}function u(h){let b=n.get(h);return b||n.set(h,b=[]),b}function d(h){let b=Uw(h);return b&&(kg(b)&&fo(b.expression)?b.expression.name.text:RI(b)?H_e(b):void 0)}function I(h){switch(h.kind){case 262:case 218:case 174:case 173:let b=h,R=d(b);if(R){let P=u(R),Q=zo(P);Q&&b.parent===Q.parent&&b.symbol===Q.symbol?b.body&&!Q.body&&(P[P.length-1]=b):P.push(b)}hu(h,I);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:c(h),hu(h,I);break;case 169:if(!ya(h,31))break;case 260:case 208:{let P=h;if(fu(P.name)){hu(P.name,I);break}P.initializer&&I(P.initializer)}case 306:case 172:case 171:c(h);break;case 278:let N=h;N.exportClause&&(ZB(N.exportClause)?X(N.exportClause.elements,I):I(N.exportClause.name));break;case 272:let V=h.importClause;V&&(V.name&&c(V.name),V.namedBindings&&(V.namedBindings.kind===274?c(V.namedBindings):X(V.namedBindings.elements,I)));break;case 226:mI(h)!==0&&c(h);default:hu(h,I)}}}},Ues=class{constructor(n,c,u){this.fileName=n,this.text=c,this.skipTrivia=u||(d=>d)}getLineAndCharacterOfPosition(n){return Vl(this,n)}};function Kes(){return{getNodeConstructor:()=>OZt,getTokenConstructor:()=>aVr,getIdentifierConstructor:()=>cVr,getPrivateIdentifierConstructor:()=>lVr,getSourceFileConstructor:()=>Jes,getSymbolConstructor:()=>Hes,getTypeConstructor:()=>Yes,getSignatureConstructor:()=>Xes,getSourceMapSourceConstructor:()=>Ues}}function a0e(n){let c=!0;for(let d in n)if(Qa(n,d)&&!AVr(d)){c=!1;break}if(c)return n;let u={};for(let d in n)if(Qa(n,d)){let I=AVr(d)?d:d.charAt(0).toLowerCase()+d.substr(1);u[I]=n[d]}return u}function AVr(n){return!n.length||n.charAt(0)===n.charAt(0).toLowerCase()}function c0e(n){return n?Ot(n,c=>c.text).join(""):""}function GFe(){return{target:1,jsx:1}}function bze(){return p0.getSupportedErrorCodes()}var jes=class{constructor(n){this.host=n}getCurrentSourceFile(n){var c,u,d,I,h,b,R,N;let V=this.host.getScriptSnapshot(n);if(!V)throw new Error("Could not find file: '"+n+"'.");let P=_je(n,this.host),Q=this.host.getScriptVersion(n),te;if(this.currentFileName!==n){let re={languageVersion:99,impliedNodeFormat:B_e(AA(n,this.host.getCurrentDirectory(),((d=(u=(c=this.host).getCompilerHost)==null?void 0:u.call(c))==null?void 0:d.getCanonicalFileName)||Lx(this.host)),(N=(R=(b=(h=(I=this.host).getCompilerHost)==null?void 0:h.call(I))==null?void 0:b.getModuleResolutionCache)==null?void 0:R.call(b))==null?void 0:N.getPackageJsonInfoCache(),this.host,this.host.getCompilationSettings()),setExternalModuleIndicator:m6(this.host.getCompilationSettings()),jsDocParsingMode:0};te=FFe(n,V,re,Q,!0,P)}else if(this.currentFileVersion!==Q){let re=V.getChangeRange(this.currentFileScriptSnapshot);te=Eze(this.currentSourceFile,V,Q,re)}return te&&(this.currentFileVersion=Q,this.currentFileName=n,this.currentFileScriptSnapshot=V,this.currentSourceFile=te),this.currentSourceFile}};function dVr(n,c,u){n.version=u,n.scriptSnapshot=c}function FFe(n,c,u,d,I,h){let b=M6(n,t7(c),u,I,h);return dVr(b,c,d),b}function Eze(n,c,u,d,I){if(d&&u!==n.version){let b,R=d.span.start!==0?n.text.substr(0,d.span.start):"",N=Ku(d.span)!==n.text.length?n.text.substr(Ku(d.span)):"";if(d.newLength===0)b=R&&N?R+N:R||N;else{let P=c.getText(d.span.start,d.span.start+d.newLength);b=R&&N?R+P+N:R?R+P:P+N}let V=o8e(n,b,d,I);return dVr(V,c,u),V.nameTable=void 0,n!==V&&n.scriptSnapshot&&(n.scriptSnapshot.dispose&&n.scriptSnapshot.dispose(),n.scriptSnapshot=void 0),V}let h={languageVersion:n.languageVersion,impliedNodeFormat:n.impliedNodeFormat,setExternalModuleIndicator:n.setExternalModuleIndicator,jsDocParsingMode:n.jsDocParsingMode};return FFe(n.fileName,c,h,u,!0,n.scriptKind)}var zes={isCancellationRequested:NC,throwIfCancellationRequested:oc},qes=class{constructor(n){this.cancellationToken=n}isCancellationRequested(){return this.cancellationToken.isCancellationRequested()}throwIfCancellationRequested(){var n;if(this.isCancellationRequested())throw(n=Qi)==null||n.instant(Qi.Phase.Session,"cancellationThrown",{kind:"CancellationTokenObject"}),new os}},MZt=class{constructor(n,c=20){this.hostCancellationToken=n,this.throttleWaitMilliseconds=c,this.lastCancellationCheckTime=0}isCancellationRequested(){let n=$l();return Math.abs(n-this.lastCancellationCheckTime)>=this.throttleWaitMilliseconds?(this.lastCancellationCheckTime=n,this.hostCancellationToken.isCancellationRequested()):!1}throwIfCancellationRequested(){var n;if(this.isCancellationRequested())throw(n=Qi)==null||n.instant(Qi.Phase.Session,"cancellationThrown",{kind:"ThrottledCancellationToken"}),new os}},pVr=["getSemanticDiagnostics","getSuggestionDiagnostics","getCompilerOptionsDiagnostics","getSemanticClassifications","getEncodedSemanticClassifications","getCodeFixesAtPosition","getCombinedCodeFix","applyCodeActionCommand","organizeImports","getEditsForFileRename","getEmitOutput","getApplicableRefactors","getEditsForRefactor","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls","provideInlayHints","getSupportedCodeFixes","getPasteEdits"],$es=[...pVr,"getCompletionsAtPosition","getCompletionEntryDetails","getCompletionEntrySymbol","getSignatureHelpItems","getQuickInfoAtPosition","getDefinitionAtPosition","getDefinitionAndBoundSpan","getImplementationAtPosition","getTypeDefinitionAtPosition","getReferencesAtPosition","findReferences","getDocumentHighlights","getNavigateToItems","getRenameInfo","findRenameLocations","getApplicableRefactors"];function HZt(n,c=dFt(n.useCaseSensitiveFileNames&&n.useCaseSensitiveFileNames(),n.getCurrentDirectory(),n.jsDocParsingMode),u){var d;let I;u===void 0?I=0:typeof u=="boolean"?I=u?2:0:I=u;let h=new jes(n),b,R,N=0,V=n.getCancellationToken?new qes(n.getCancellationToken()):zes,P=n.getCurrentDirectory();ZDe((d=n.getLocalizedDiagnosticMessages)==null?void 0:d.bind(n));function Q(Re){n.log&&n.log(Re)}let te=zX(n),re=rA(te),ue=wFt({useCaseSensitiveFileNames:()=>te,getCurrentDirectory:()=>P,getProgram:Fe,fileExists:Yi(n,n.fileExists),readFile:Yi(n,n.readFile),getDocumentPositionMapper:Yi(n,n.getDocumentPositionMapper),getSourceFileLike:Yi(n,n.getSourceFileLike),log:Q});function Ae(Re){let Jt=b.getSourceFile(Re);if(!Jt){let bt=new Error(`Could not find source file: '${Re}'.`);throw bt.ProgramFiles=b.getSourceFiles().map(Vt=>Vt.fileName),bt}return Jt}function de(){n.updateFromProject&&!n.updateFromProjectInProgress?n.updateFromProject():Be()}function Be(){var Re,Jt,bt;if(w.assert(I!==2),n.getProjectVersion){let Nl=n.getProjectVersion();if(Nl){if(R===Nl&&!((Re=n.hasChangedAutomaticTypeDirectiveNames)!=null&&Re.call(n)))return;R=Nl}}let Vt=n.getTypeRootsVersion?n.getTypeRootsVersion():0;N!==Vt&&(Q("TypeRoots version has changed; provide new program"),b=void 0,N=Vt);let dn=n.getScriptFileNames().slice(),On=n.getCompilationSettings()||GFe(),Qn=n.hasInvalidatedResolutions||NC,Ii=Yi(n,n.hasInvalidatedLibResolutions)||NC,ds=Yi(n,n.hasChangedAutomaticTypeDirectiveNames),Es=(Jt=n.getProjectReferences)==null?void 0:Jt.call(n),so,Vi={getSourceFile:Hd,getSourceFileByPath:Gd,getCancellationToken:()=>V,getCanonicalFileName:re,useCaseSensitiveFileNames:()=>te,getNewLine:()=>F1(On),getDefaultLibFileName:Nl=>n.getDefaultLibFileName(Nl),writeFile:oc,getCurrentDirectory:()=>P,fileExists:Nl=>n.fileExists(Nl),readFile:Nl=>n.readFile&&n.readFile(Nl),getSymlinkCache:Yi(n,n.getSymlinkCache),realpath:Yi(n,n.realpath),directoryExists:Nl=>G1(Nl,n),getDirectories:Nl=>n.getDirectories?n.getDirectories(Nl):[],readDirectory:(Nl,ug,hf,qc,Lc)=>(w.checkDefined(n.readDirectory,"'LanguageServiceHost.readDirectory' must be implemented to correctly process 'projectReferences'"),n.readDirectory(Nl,ug,hf,qc,Lc)),onReleaseOldSourceFile:UA,onReleaseParsedCommandLine:_u,hasInvalidatedResolutions:Qn,hasInvalidatedLibResolutions:Ii,hasChangedAutomaticTypeDirectiveNames:ds,trace:Yi(n,n.trace),resolveModuleNames:Yi(n,n.resolveModuleNames),getModuleResolutionCache:Yi(n,n.getModuleResolutionCache),createHash:Yi(n,n.createHash),resolveTypeReferenceDirectives:Yi(n,n.resolveTypeReferenceDirectives),resolveModuleNameLiterals:Yi(n,n.resolveModuleNameLiterals),resolveTypeReferenceDirectiveReferences:Yi(n,n.resolveTypeReferenceDirectiveReferences),resolveLibrary:Yi(n,n.resolveLibrary),useSourceOfProjectReferenceRedirect:Yi(n,n.useSourceOfProjectReferenceRedirect),getParsedCommandLine:Gs,jsDocParsingMode:n.jsDocParsingMode},xo=Vi.getSourceFile,{getSourceFileWithCache:Yc}=Cue(Vi,Nl=>AA(Nl,P,re),(...Nl)=>xo.call(Vi,...Nl));Vi.getSourceFile=Yc,(bt=n.setCompilerHost)==null||bt.call(n,Vi);let Il={useCaseSensitiveFileNames:te,fileExists:Nl=>Vi.fileExists(Nl),readFile:Nl=>Vi.readFile(Nl),directoryExists:Nl=>Vi.directoryExists(Nl),getDirectories:Nl=>Vi.getDirectories(Nl),realpath:Vi.realpath,readDirectory:(...Nl)=>Vi.readDirectory(...Nl),trace:Vi.trace,getCurrentDirectory:Vi.getCurrentDirectory,onUnRecoverableConfigFileDiagnostic:oc},sa=c.getKeyForCompilationSettings(On),Ra=new Set;if(W6e(b,dn,On,(Nl,ug)=>n.getScriptVersion(ug),Nl=>Vi.fileExists(Nl),Qn,Ii,ds,Gs,Es)){Vi=void 0,so=void 0,Ra=void 0;return}b=v_e({rootNames:dn,options:On,host:Vi,oldProgram:b,projectReferences:Es}),Vi=void 0,so=void 0,Ra=void 0,ue.clearCache(),b.getTypeChecker();return;function Gs(Nl){let ug=AA(Nl,P,re),hf=so?.get(ug);if(hf!==void 0)return hf||void 0;let qc=n.getParsedCommandLine?n.getParsedCommandLine(Nl):ri(Nl);return(so||(so=new Map)).set(ug,qc||!1),qc}function ri(Nl){let ug=Hd(Nl,100);if(ug)return ug.path=AA(Nl,P,re),ug.resolvedPath=ug.path,ug.originalFileName=ug.fileName,n_e(ug,Il,Qc(oa(Nl),P),void 0,Qc(Nl,P))}function _u(Nl,ug,hf){var qc;n.getParsedCommandLine?(qc=n.onReleaseParsedCommandLine)==null||qc.call(n,Nl,ug,hf):ug&&UA(ug.sourceFile,hf)}function UA(Nl,ug){let hf=c.getKeyForCompilationSettings(ug);c.releaseDocumentWithKey(Nl.resolvedPath,hf,Nl.scriptKind,Nl.impliedNodeFormat)}function Hd(Nl,ug,hf,qc){return Gd(Nl,AA(Nl,P,re),ug,hf,qc)}function Gd(Nl,ug,hf,qc,Lc){w.assert(Vi,"getOrCreateSourceFileByPath called after typical CompilerHost lifetime, check the callstack something with a reference to an old host.");let jm=n.getScriptSnapshot(Nl);if(!jm)return;let xf=_je(Nl,n),I0=n.getScriptVersion(Nl);if(!Lc){let kI=b&&b.getSourceFileByPath(ug);if(kI){if(xf===kI.scriptKind||Ra.has(kI.resolvedPath))return c.updateDocumentWithKey(Nl,ug,n,sa,jm,I0,xf,hf);c.releaseDocumentWithKey(kI.resolvedPath,c.getKeyForCompilationSettings(b.getCompilerOptions()),kI.scriptKind,kI.impliedNodeFormat),Ra.add(kI.resolvedPath)}}return c.acquireDocumentWithKey(Nl,ug,n,sa,jm,I0,xf,hf)}}function Fe(){if(I===2){w.assert(b===void 0);return}return de(),b}function Ne(){var Re;return(Re=n.getPackageJsonAutoImportProvider)==null?void 0:Re.call(n)}function Me(Re,Jt){let bt=b.getTypeChecker(),Vt=dn();if(!Vt)return!1;for(let Qn of Re)for(let Ii of Qn.references){let ds=On(Ii);if(w.assertIsDefined(ds),Jt.has(Ii)||Yp.isDeclarationOfSymbol(ds,Vt)){Jt.add(Ii),Ii.isDefinition=!0;let Es=zGe(Ii,ue,Yi(n,n.fileExists));Es&&Jt.add(Es)}else Ii.isDefinition=!1}return!0;function dn(){for(let Qn of Re)for(let Ii of Qn.references){if(Jt.has(Ii)){let Es=On(Ii);return w.assertIsDefined(Es),bt.getSymbolAtLocation(Es)}let ds=zGe(Ii,ue,Yi(n,n.fileExists));if(ds&&Jt.has(ds)){let Es=On(ds);if(Es)return bt.getSymbolAtLocation(Es)}}}function On(Qn){let Ii=b.getSourceFile(Qn.fileName);if(!Ii)return;let ds=ub(Ii,Qn.textSpan.start);return Yp.Core.getAdjustedNode(ds,{use:Yp.FindReferencesUse.References})}}function De(){if(b){let Re=c.getKeyForCompilationSettings(b.getCompilerOptions());X(b.getSourceFiles(),Jt=>c.releaseDocumentWithKey(Jt.resolvedPath,Re,Jt.scriptKind,Jt.impliedNodeFormat)),b=void 0}}function lt(){De(),n=void 0}function Le(Re){return de(),b.getSyntacticDiagnostics(Ae(Re),V).slice()}function je(Re){de();let Jt=Ae(Re),bt=b.getSemanticDiagnostics(Jt,V);if(!WE(b.getCompilerOptions()))return bt.slice();let Vt=b.getDeclarationDiagnostics(Jt,V);return[...bt,...Vt]}function st(Re){return de(),Kje(Ae(Re),b,V)}function nt(){return de(),[...b.getOptionsDiagnostics(V),...b.getGlobalDiagnostics(V)]}function qe(Re,Jt,bt=Vv,Vt){let dn={...bt,includeCompletionsForModuleExports:bt.includeCompletionsForModuleExports||bt.includeExternalModuleExports,includeCompletionsWithInsertText:bt.includeCompletionsWithInsertText||bt.includeInsertTextCompletions};return de(),A7.getCompletionsAtPosition(n,b,Q,Ae(Re),Jt,dn,bt.triggerCharacter,bt.triggerKind,V,Vt&&zC.getFormatContext(Vt,n),bt.includeSymbol)}function it(Re,Jt,bt,Vt,dn,On=Vv,Qn){return de(),A7.getCompletionEntryDetails(b,Q,Ae(Re),Jt,{name:bt,source:dn,data:Qn},n,Vt&&zC.getFormatContext(Vt,n),On,V)}function It(Re,Jt,bt,Vt,dn=Vv){return de(),A7.getCompletionEntrySymbol(b,Q,Ae(Re),Jt,{name:bt,source:Vt},n,dn)}function dt(Re,Jt){de();let bt=Ae(Re),Vt=ub(bt,Jt);if(Vt===bt)return;let dn=b.getTypeChecker(),On=St(Vt),Qn=nts(On,dn);if(!Qn||dn.isUnknownSymbol(Qn)){let Vi=He(bt,On,Jt)?dn.getTypeAtLocation(On):void 0;return Vi&&{kind:"",kindModifiers:"",textSpan:By(On,bt),displayParts:dn.runWithCancellationToken(V,xo=>J_e(xo,Vi,B4(On))),documentation:Vi.symbol?Vi.symbol.getDocumentationComment(dn):void 0,tags:Vi.symbol?Vi.symbol.getJsDocTags(dn):void 0}}let{symbolKind:Ii,displayParts:ds,documentation:Es,tags:so}=dn.runWithCancellationToken(V,Vi=>MZ.getSymbolDisplayPartsDocumentationAndSymbolKind(Vi,Qn,bt,B4(On),On));return{kind:Ii,kindModifiers:MZ.getSymbolModifiers(dn,Qn),textSpan:By(On,bt),displayParts:ds,documentation:Es,tags:so}}function Tt(Re,Jt){return de(),Fqe.pasteEditsProvider(Ae(Re.targetFile),Re.pastedText,Re.pasteLocations,Re.copiedFrom?{file:Ae(Re.copiedFrom.file),range:Re.copiedFrom.range}:void 0,n,Re.preferences,zC.getFormatContext(Jt,n),V)}function St(Re){return qS(Re.parent)&&Re.pos===Re.parent.pos?Re.parent.expression:At(Re.parent)&&Re.pos===Re.parent.pos||Pb(Re.parent)&&Re.parent.name===Re||aT(Re.parent)?Re.parent:Re}function He(Re,Jt,bt){switch(Jt.kind){case 80:return Jt.flags&16777216&&!io(Jt)&&(Jt.parent.kind===171&&Jt.parent.name===Jt||Si(Jt,Vt=>Vt.kind===169))?!1:!V7e(Jt)&&!W7e(Jt)&&!B2(Jt.parent);case 211:case 166:return!VZ(Re,bt);case 110:case 197:case 108:case 202:return!0;case 236:return Pb(Jt);default:return!1}}function ht(Re,Jt,bt,Vt){return de(),zte.getDefinitionAtPosition(b,Ae(Re),Jt,bt,Vt)}function Et(Re,Jt){return de(),zte.getDefinitionAndBoundSpan(b,Ae(Re),Jt)}function Kt(Re,Jt){return de(),zte.getTypeDefinitionAtPosition(b.getTypeChecker(),Ae(Re),Jt)}function Nt(Re,Jt){return de(),Yp.getImplementationsAtPosition(b,V,b.getSourceFiles(),Ae(Re),Jt)}function Lt(Re,Jt,bt){let Vt=Mc(Re);w.assert(bt.some(Qn=>Mc(Qn)===Vt)),de();let dn=tr(bt,Qn=>b.getSourceFile(Qn)),On=Ae(Re);return hFe.getDocumentHighlights(b,V,On,Jt,dn)}function kt(Re,Jt,bt,Vt,dn){de();let On=Ae(Re),Qn=VGe(ub(On,Jt));if(iZe.nodeIsEligibleForRename(Qn))if(sr(Qn)&&(NN(Qn.parent)||AM(Qn.parent))&&UX(Qn.escapedText)){let{openingElement:Ii,closingElement:ds}=Qn.parent.parent;return[Ii,ds].map(Es=>{let so=By(Es.tagName,On);return{fileName:On.fileName,textSpan:so,...Yp.toContextSpan(so,On,Es.parent)}})}else{let Ii=P2(On,dn??Vv),ds=typeof dn=="boolean"?dn:dn?.providePrefixAndSuffixTextForRename;return Dr(Qn,Jt,{findInStrings:bt,findInComments:Vt,providePrefixAndSuffixTextForRename:ds,use:Yp.FindReferencesUse.Rename},(Es,so,Vi)=>Yp.toRenameLocation(Es,so,Vi,ds||!1,Ii))}}function Zt(Re,Jt){return de(),Dr(ub(Ae(Re),Jt),Jt,{use:Yp.FindReferencesUse.References},Yp.toReferenceEntry)}function Dr(Re,Jt,bt,Vt){de();let dn=bt&&bt.use===Yp.FindReferencesUse.Rename?b.getSourceFiles().filter(On=>!b.isSourceFileDefaultLibrary(On)):b.getSourceFiles();return Yp.findReferenceOrRenameEntries(b,V,dn,Re,Jt,bt,Vt)}function jt(Re,Jt){return de(),Yp.findReferencedSymbols(b,V,b.getSourceFiles(),Ae(Re),Jt)}function mr(Re){return de(),Yp.Core.getReferencesForFileName(Re,b,b.getSourceFiles()).map(Yp.toReferenceEntry)}function Pt(Re,Jt,bt,Vt=!1,dn=!1){de();let On=bt?[Ae(bt)]:b.getSourceFiles();return hLr(On,b.getTypeChecker(),V,Re,Jt,Vt,dn)}function Vr(Re,Jt,bt){de();let Vt=Ae(Re),dn=n.getCustomTransformers&&n.getCustomTransformers();return qxt(b,Vt,!!Jt,V,dn,bt)}function Hr(Re,Jt,{triggerReason:bt}=Vv){de();let Vt=Ae(Re);return y0e.getSignatureHelpItems(b,Vt,Jt,bt,V)}function pr(Re){return h.getCurrentSourceFile(Re)}function zr(Re,Jt,bt){let Vt=h.getCurrentSourceFile(Re),dn=ub(Vt,Jt);if(dn===Vt)return;switch(dn.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 On=dn;for(;;)if(Fte(On)||hGt(On))On=On.parent;else if(O7e(On))if(On.parent.parent.kind===267&&On.parent.parent.body===On.parent)On=On.parent.parent.name;else break;else break;return Pd(On.getStart(),dn.getEnd())}function $n(Re,Jt){let bt=h.getCurrentSourceFile(Re);return vze.spanInSourceFileAtLocation(bt,Jt)}function bi(Re){return ELr(h.getCurrentSourceFile(Re),V)}function Pi(Re){return BLr(h.getCurrentSourceFile(Re),V)}function Ns(Re,Jt,bt){return de(),(bt||"original")==="2020"?tVr(b,V,Ae(Re),Jt):gFt(b.getTypeChecker(),V,Ae(Re),b.getClassifiableNames(),Jt)}function gi(Re,Jt,bt){return de(),(bt||"original")==="original"?Oje(b.getTypeChecker(),V,Ae(Re),b.getClassifiableNames(),Jt):PZt(b,V,Ae(Re),Jt)}function jn(Re,Jt){return AFt(V,h.getCurrentSourceFile(Re),Jt)}function xs(Re,Jt){return Qje(V,h.getCurrentSourceFile(Re),Jt)}function Bc(Re){let Jt=h.getCurrentSourceFile(Re);return _qe.collectElements(Jt,V)}let xi=new Map(Object.entries({19:20,21:22,23:24,32:30}));xi.forEach((Re,Jt)=>xi.set(Re.toString(),Number(Jt)));function rc(Re,Jt){let bt=h.getCurrentSourceFile(Re),Vt=Lte(bt,Jt),dn=Vt.getStart(bt)===Jt?xi.get(Vt.kind.toString()):void 0,On=dn&&Qd(Vt.parent,dn,bt);return On?[By(Vt,bt),By(On,bt)].sort((Qn,Ii)=>Qn.start-Ii.start):v}function Wl(Re,Jt,bt){let Vt=$l(),dn=a0e(bt),On=h.getCurrentSourceFile(Re);Q("getIndentationAtPosition: getCurrentSourceFile: "+($l()-Vt)),Vt=$l();let Qn=zC.SmartIndenter.getIndentation(Jt,On,dn);return Q("getIndentationAtPosition: computeIndentation : "+($l()-Vt)),Qn}function gl(Re,Jt,bt,Vt){let dn=h.getCurrentSourceFile(Re);return zC.formatSelection(Jt,bt,dn,zC.getFormatContext(a0e(Vt),n))}function mc(Re,Jt){return zC.formatDocument(h.getCurrentSourceFile(Re),zC.getFormatContext(a0e(Jt),n))}function _s(Re,Jt,bt,Vt){let dn=h.getCurrentSourceFile(Re),On=zC.getFormatContext(a0e(Vt),n);if(!VZ(dn,Jt))switch(bt){case"{":return zC.formatOnOpeningCurly(Jt,dn,On);case"}":return zC.formatOnClosingCurly(Jt,dn,On);case";":return zC.formatOnSemicolon(Jt,dn,On);case` +`:return zC.formatOnEnter(Jt,dn,On)}return[]}function Pu(Re,Jt,bt,Vt,dn,On=Vv){de();let Qn=Ae(Re),Ii=Pd(Jt,bt),ds=zC.getFormatContext(dn,n);return Fr(NA(Vt,Qg,Jl),Es=>(V.throwIfCancellationRequested(),p0.getFixes({errorCode:Es,sourceFile:Qn,span:Ii,program:b,host:n,cancellationToken:V,formatContext:ds,preferences:On})))}function ir(Re,Jt,bt,Vt=Vv){de(),w.assert(Re.type==="file");let dn=Ae(Re.fileName),On=zC.getFormatContext(bt,n);return p0.getAllFixes({fixId:Jt,sourceFile:dn,program:b,host:n,cancellationToken:V,formatContext:On,preferences:Vt})}function ni(Re,Jt,bt=Vv){de(),w.assert(Re.type==="file");let Vt=Ae(Re.fileName),dn=zC.getFormatContext(Jt,n),On=Re.mode??(Re.skipDestructiveCodeActions?"SortAndCombine":"All");return bP.organizeImports(Vt,dn,n,b,bt,On)}function gs(Re,Jt,bt,Vt=Vv){return fFt(Fe(),Re,Jt,n,zC.getFormatContext(bt,n),Vt,ue)}function Hs(Re,Jt){let bt=typeof Re=="string"?Jt:Re;return Na(bt)?Promise.all(bt.map(Vt=>za(Vt))):za(bt)}function za(Re){let Jt=bt=>AA(bt,P,re);return w.assertEqual(Re.type,"install package"),n.installPackage?n.installPackage({fileName:Jt(Re.file),packageName:Re.packageName}):Promise.reject("Host does not implement `installPackage`")}function nc(Re,Jt,bt,Vt){let dn=Vt?zC.getFormatContext(Vt,n).options:void 0;return yP.getDocCommentTemplateAtPosition(PZ(n,dn),h.getCurrentSourceFile(Re),Jt,bt)}function Rc(Re,Jt,bt){if(bt===60)return!1;let Vt=h.getCurrentSourceFile(Re);if(e7(Vt,Jt))return!1;if(SGt(Vt,Jt))return bt===123;if(J7e(Vt,Jt))return!1;switch(bt){case 39:case 34:case 96:return!VZ(Vt,Jt)}return!0}function lg(Re,Jt){let bt=h.getCurrentSourceFile(Re),Vt=ym(Jt,bt);if(!Vt)return;let dn=Vt.kind===32&&NN(Vt.parent)?Vt.parent.parent:aM(Vt)&&Jx(Vt.parent)?Vt.parent:void 0;if(dn&&rn(dn))return{newText:``};let On=Vt.kind===32&&p4(Vt.parent)?Vt.parent.parent:aM(Vt)&&dM(Vt.parent)?Vt.parent:void 0;if(On&&wt(On))return{newText:""}}function ju(Re,Jt){let bt=h.getCurrentSourceFile(Re),Vt=ym(Jt,bt);if(!Vt||Vt.parent.kind===307)return;let dn="[a-zA-Z0-9:\\-\\._$]*";if(dM(Vt.parent.parent)){let On=Vt.parent.parent.openingFragment,Qn=Vt.parent.parent.closingFragment;if(UR(On)||UR(Qn))return;let Ii=On.getStart(bt)+1,ds=Qn.getStart(bt)+2;return Jt!==Ii&&Jt!==ds?void 0:{ranges:[{start:Ii,length:0},{start:ds,length:0}],wordPattern:dn}}else{let On=Si(Vt.parent,Yc=>!!(NN(Yc)||AM(Yc)));if(!On)return;w.assert(NN(On)||AM(On),"tag should be opening or closing element");let Qn=On.parent.openingElement,Ii=On.parent.closingElement,ds=Qn.tagName.getStart(bt),Es=Qn.tagName.end,so=Ii.tagName.getStart(bt),Vi=Ii.tagName.end;return ds===Qn.getStart(bt)||so===Ii.getStart(bt)||Es===Qn.getEnd()||Vi===Ii.getEnd()||!(ds<=Jt&&Jt<=Es||so<=Jt&&Jt<=Vi)||Qn.tagName.getText(bt)!==Ii.tagName.getText(bt)?void 0:{ranges:[{start:ds,length:Es-ds},{start:so,length:Vi-so}],wordPattern:dn}}}function Bi(Re,Jt){return{lineStarts:Re.getLineStarts(),firstLine:Re.getLineAndCharacterOfPosition(Jt.pos).line,lastLine:Re.getLineAndCharacterOfPosition(Jt.end).line}}function vA(Re,Jt,bt){let Vt=h.getCurrentSourceFile(Re),dn=[],{lineStarts:On,firstLine:Qn,lastLine:Ii}=Bi(Vt,Jt),ds=bt||!1,Es=Number.MAX_VALUE,so=new Map,Vi=new RegExp(/\S/),xo=OGe(Vt,On[Qn]),Yc=xo?"{/*":"//";for(let Il=Qn;Il<=Ii;Il++){let sa=Vt.text.substring(On[Il],Vt.getLineEndOfPosition(On[Il])),Ra=Vi.exec(sa);Ra&&(Es=Math.min(Es,Ra.index),so.set(Il.toString(),Ra.index),sa.substr(Ra.index,Yc.length)!==Yc&&(ds=bt===void 0||bt))}for(let Il=Qn;Il<=Ii;Il++){if(Qn!==Ii&&On[Il]===Jt.end)continue;let sa=so.get(Il.toString());sa!==void 0&&(xo?dn.push(...kr(Re,{pos:On[Il]+Es,end:Vt.getLineEndOfPosition(On[Il])},ds,xo)):ds?dn.push({newText:Yc,span:{length:0,start:On[Il]+Es}}):Vt.text.substr(On[Il]+sa,Yc.length)===Yc&&dn.push({newText:"",span:{length:Yc.length,start:On[Il]+sa}}))}return dn}function kr(Re,Jt,bt,Vt){var dn;let On=h.getCurrentSourceFile(Re),Qn=[],{text:Ii}=On,ds=!1,Es=bt||!1,so=[],{pos:Vi}=Jt,xo=Vt!==void 0?Vt:OGe(On,Vi),Yc=xo?"{/*":"/*",Il=xo?"*/}":"*/",sa=xo?"\\{\\/\\*":"\\/\\*",Ra=xo?"\\*\\/\\}":"\\*\\/";for(;Vi<=Jt.end;){let ki=Ii.substr(Vi,Yc.length)===Yc?Yc.length:0,Gs=VZ(On,Vi+ki);if(Gs)xo&&(Gs.pos--,Gs.end++),so.push(Gs.pos),Gs.kind===3&&so.push(Gs.end),ds=!0,Vi=Gs.end+1;else{let ri=Ii.substring(Vi,Jt.end).search(`(${sa})|(${Ra})`);Es=bt!==void 0?bt:Es||!VGt(Ii,Vi,ri===-1?Jt.end:Vi+ri),Vi=ri===-1?Jt.end+1:Vi+ri+Il.length}}if(Es||!ds){((dn=VZ(On,Jt.pos))==null?void 0:dn.kind)!==2&&Gr(so,Jt.pos,Jl),Gr(so,Jt.end,Jl);let ki=so[0];Ii.substr(ki,Yc.length)!==Yc&&Qn.push({newText:Yc,span:{length:0,start:ki}});for(let Gs=1;Gs0?ki-Il.length:0,ri=Ii.substr(Gs,Il.length)===Il?Il.length:0;Qn.push({newText:"",span:{length:Yc.length,start:ki-ri}})}return Qn}function en(Re,Jt){let bt=h.getCurrentSourceFile(Re),{firstLine:Vt,lastLine:dn}=Bi(bt,Jt);return Vt===dn&&Jt.pos!==Jt.end?kr(Re,Jt,!0):vA(Re,Jt,!0)}function ct(Re,Jt){let bt=h.getCurrentSourceFile(Re),Vt=[],{pos:dn}=Jt,{end:On}=Jt;dn===On&&(On+=OGe(bt,dn)?2:1);for(let Qn=dn;Qn<=On;Qn++){let Ii=VZ(bt,Qn);if(Ii){switch(Ii.kind){case 2:Vt.push(...vA(Re,{end:Ii.end,pos:Ii.pos+1},!1));break;case 3:Vt.push(...kr(Re,{end:Ii.end,pos:Ii.pos+1},!1))}Qn=Ii.end+1}}return Vt}function rn({openingElement:Re,closingElement:Jt,parent:bt}){return!uP(Re.tagName,Jt.tagName)||Jx(bt)&&uP(Re.tagName,bt.openingElement.tagName)&&rn(bt)}function wt({closingFragment:Re,parent:Jt}){return!!(Re.flags&262144)||dM(Jt)&&wt(Jt)}function br(Re,Jt,bt){let Vt=h.getCurrentSourceFile(Re),dn=zC.getRangeOfEnclosingComment(Vt,Jt);return dn&&(!bt||dn.kind===3)?NV(dn):void 0}function Mt(Re,Jt){de();let bt=Ae(Re);V.throwIfCancellationRequested();let Vt=bt.text,dn=[];if(Jt.length>0&&!ds(bt.fileName)){let Es=Qn(),so;for(;so=Es.exec(Vt);){V.throwIfCancellationRequested();let Vi=3;w.assert(so.length===Jt.length+Vi);let xo=so[1],Yc=so.index+xo.length;if(!VZ(bt,Yc))continue;let Il;for(let Ra=0;Ra"("+On(Gs.text)+")").join("|")+")",Il=/(?:$|\*\/)/.source,sa=/(?:.*?)/.source,Ra="("+Yc+sa+")",ki=xo+Ra+Il;return new RegExp(ki,"gim")}function Ii(Es){return Es>=97&&Es<=122||Es>=65&&Es<=90||Es>=48&&Es<=57}function ds(Es){return Es.includes("/node_modules/")}}function _r(Re,Jt,bt){return de(),iZe.getRenameInfo(b,Ae(Re),Jt,bt||{})}function Pr(Re,Jt,bt,Vt,dn,On){let[Qn,Ii]=typeof Jt=="number"?[Jt,void 0]:[Jt.pos,Jt.end];return{file:Re,startPosition:Qn,endPosition:Ii,program:Fe(),host:n,formatContext:zC.getFormatContext(Vt,n),cancellationToken:V,preferences:bt,triggerReason:dn,kind:On}}function ti(Re,Jt,bt){return{file:Re,program:Fe(),host:n,span:Jt,preferences:bt,cancellationToken:V}}function cr(Re,Jt){return Eqe.getSmartSelectionRange(Jt,h.getCurrentSourceFile(Re))}function kn(Re,Jt,bt=Vv,Vt,dn,On){de();let Qn=Ae(Re);return s7.getApplicableRefactors(Pr(Qn,Jt,bt,Vv,Vt,dn),On)}function Pn(Re,Jt,bt=Vv){de();let Vt=Ae(Re),dn=w.checkDefined(b.getSourceFiles()),On=B6(Re),Qn=s0e(Pr(Vt,Jt,bt,Vv)),Ii=aZt(Qn?.all),ds=tr(dn,Es=>{let so=B6(Es.fileName);return!b?.isSourceFileFromExternalLibrary(Vt)&&!(Vt===Ae(Es.fileName)||On===".ts"&&so===".d.ts"||On===".d.ts"&&uc(kA(Es.fileName),"lib.")&&so===".d.ts")&&(On===so||(On===".tsx"&&so===".ts"||On===".jsx"&&so===".js")&&!Ii)?Es.fileName:void 0});return{newFileName:oZt(Vt,b,n,Qn),files:ds}}function an(Re,Jt,bt,Vt,dn,On=Vv,Qn){de();let Ii=Ae(Re);return s7.getEditsForRefactor(Pr(Ii,bt,On,Jt),Vt,dn,Qn)}function Kr(Re,Jt){return Jt===0?{line:0,character:0}:ue.toLineColumnOffset(Re,Jt)}function wn(Re,Jt){de();let bt=o7.resolveCallHierarchyDeclaration(b,ub(Ae(Re),Jt));return bt&&xje(bt,Vt=>o7.createCallHierarchyItem(b,Vt))}function Pe(Re,Jt){de();let bt=Ae(Re),Vt=kje(o7.resolveCallHierarchyDeclaration(b,Jt===0?bt:ub(bt,Jt)));return Vt?o7.getIncomingCalls(b,Vt,V):[]}function ar(Re,Jt){de();let bt=Ae(Re),Vt=kje(o7.resolveCallHierarchyDeclaration(b,Jt===0?bt:ub(bt,Jt)));return Vt?o7.getOutgoingCalls(b,Vt):[]}function sn(Re,Jt,bt=Vv){de();let Vt=Ae(Re);return Iqe.provideInlayHints(ti(Vt,Jt,bt))}function Qe(Re,Jt,bt,Vt,dn){return Cqe.mapCode(h.getCurrentSourceFile(Re),Jt,bt,n,zC.getFormatContext(Vt,n),dn)}let ur={dispose:lt,cleanupSemanticCache:De,getSyntacticDiagnostics:Le,getSemanticDiagnostics:je,getSuggestionDiagnostics:st,getCompilerOptionsDiagnostics:nt,getSyntacticClassifications:jn,getSemanticClassifications:Ns,getEncodedSyntacticClassifications:xs,getEncodedSemanticClassifications:gi,getCompletionsAtPosition:qe,getCompletionEntryDetails:it,getCompletionEntrySymbol:It,getSignatureHelpItems:Hr,getQuickInfoAtPosition:dt,getDefinitionAtPosition:ht,getDefinitionAndBoundSpan:Et,getImplementationAtPosition:Nt,getTypeDefinitionAtPosition:Kt,getReferencesAtPosition:Zt,findReferences:jt,getFileReferences:mr,getDocumentHighlights:Lt,getNameOrDottedNameSpan:zr,getBreakpointStatementAtPosition:$n,getNavigateToItems:Pt,getRenameInfo:_r,getSmartSelectionRange:cr,findRenameLocations:kt,getNavigationBarItems:bi,getNavigationTree:Pi,getOutliningSpans:Bc,getTodoComments:Mt,getBraceMatchingAtPosition:rc,getIndentationAtPosition:Wl,getFormattingEditsForRange:gl,getFormattingEditsForDocument:mc,getFormattingEditsAfterKeystroke:_s,getDocCommentTemplateAtPosition:nc,isValidBraceCompletionAtPosition:Rc,getJsxClosingTagAtPosition:lg,getLinkedEditingRangeAtPosition:ju,getSpanOfEnclosingComment:br,getCodeFixesAtPosition:Pu,getCombinedCodeFix:ir,applyCodeActionCommand:Hs,organizeImports:ni,getEditsForFileRename:gs,getEmitOutput:Vr,getNonBoundSourceFile:pr,getProgram:Fe,getCurrentProgram:()=>b,getAutoImportProvider:Ne,updateIsDefinitionOfReferencedSymbols:Me,getApplicableRefactors:kn,getEditsForRefactor:an,getMoveToRefactoringFileSuggestions:Pn,toLineColumnOffset:Kr,getSourceMapper:()=>ue,clearSourceMapperCache:()=>ue.clearCache(),prepareCallHierarchy:wn,provideCallHierarchyIncomingCalls:Pe,provideCallHierarchyOutgoingCalls:ar,toggleLineComment:vA,toggleMultilineComment:kr,commentSelection:en,uncommentSelection:ct,provideInlayHints:sn,getSupportedCodeFixes:bze,getPasteEdits:Tt,mapCode:Qe};switch(I){case 0:break;case 1:pVr.forEach(Re=>ur[Re]=()=>{throw new Error(`LanguageService Operation: ${Re} not allowed in LanguageServiceMode.PartialSemantic`)});break;case 2:$es.forEach(Re=>ur[Re]=()=>{throw new Error(`LanguageService Operation: ${Re} not allowed in LanguageServiceMode.Syntactic`)});break;default:w.assertNever(I)}return ur}function Bze(n){return n.nameTable||ets(n),n.nameTable}function ets(n){let c=n.nameTable=new Map;n.forEachChild(function u(d){if(sr(d)&&!W7e(d)&&d.escapedText||ZE(d)&&tts(d)){let I=r6(d);c.set(I,c.get(I)===void 0?d.pos:-1)}else if(Gc(d)){let I=d.escapedText;c.set(I,c.get(I)===void 0?d.pos:-1)}if(hu(d,u),_y(d))for(let I of d.jsDoc)hu(I,u)})}function tts(n){return tT(n)||n.parent.kind===283||its(n)||Cee(n)}function l0e(n){let c=rts(n);return c&&(ru(c.parent)||pM(c.parent))?c:void 0}function rts(n){switch(n.kind){case 11:case 15:case 9:if(n.parent.kind===167)return y5(n.parent.parent)?n.parent.parent:void 0;case 80:return y5(n.parent)&&(n.parent.parent.kind===210||n.parent.parent.kind===292)&&n.parent.name===n?n.parent:void 0}}function nts(n,c){let u=l0e(n);if(u){let d=c.getContextualType(u.parent),I=d&&ZFe(u,c,d,!1);if(I&&I.length===1)return qs(I)}return c.getSymbolAtLocation(n)}function ZFe(n,c,u,d){let I=H_e(n.name);if(!I)return v;if(!u.isUnion()){let R=u.getProperty(I);return R?[R]:v}let h=ru(n.parent)||pM(n.parent)?Gt(u.types,R=>!c.isTypeInvalidDueToUnionDiscriminant(R,n.parent)):u.types,b=tr(h,R=>R.getProperty(I));if(d&&(b.length===0||b.length===u.types.length)){let R=u.getProperty(I);if(R)return[R]}return!h.length&&!b.length?tr(u.types,R=>R.getProperty(I)):NA(b,Qg)}function its(n){return n&&n.parent&&n.parent.kind===212&&n.parent.argumentExpression===n}function YZt(n){if(yd)return Do(oa(Mc(yd.getExecutingFilePath())),Cg(n));throw new Error("getDefaultLibFilePath is only supported when consumed as a node module. ")}FDe(Kes());function fVr(n,c,u){let d=[];u=$je(u,d);let I=Na(n)?n:[n],h=C_e(void 0,void 0,_e,u,I,c,!0);return h.diagnostics=vi(h.diagnostics,d),h}var vze={};o(vze,{spanInSourceFileAtLocation:()=>sts});function sts(n,c){if(n.isDeclarationFile)return;let u=Hc(n,c),d=n.getLineAndCharacterOfPosition(c).line;if(n.getLineAndCharacterOfPosition(u.getStart(n)).line>d){let Q=ym(u.pos,n);if(!Q||n.getLineAndCharacterOfPosition(Q.getEnd()).line!==d)return;u=Q}if(u.flags&33554432)return;return P(u);function I(Q,te){let re=IM(Q)?Te(Q.modifiers,FC):void 0,ue=re?Uu(n.text,re.end):Q.getStart(n);return Pd(ue,(te||Q).getEnd())}function h(Q,te){return I(Q,EM(te,te.parent,n))}function b(Q,te){return Q&&d===n.getLineAndCharacterOfPosition(Q.getStart(n)).line?P(Q):P(te)}function R(Q,te,re){if(Q){let ue=Q.indexOf(te);if(ue>=0){let Ae=ue,de=ue+1;for(;Ae>0&&re(Q[Ae-1]);)Ae--;for(;de0)return P(ht.declarations[0])}else return P(He.initializer)}function De(He){if(He.initializer)return Me(He);if(He.condition)return I(He.condition);if(He.incrementor)return I(He.incrementor)}function lt(He){let ht=X(He.elements,Et=>Et.kind!==232?Et:void 0);return ht?P(ht):He.parent.kind===208?I(He.parent):te(He.parent)}function Le(He){w.assert(He.kind!==207&&He.kind!==206);let ht=He.kind===209?He.elements:He.properties,Et=X(ht,Kt=>Kt.kind!==232?Kt:void 0);return Et?P(Et):I(He.parent.kind===226?He.parent:He)}function je(He){switch(He.parent.kind){case 266:let ht=He.parent;return b(ym(He.pos,n,He.parent),ht.members.length?ht.members[0]:ht.getLastToken(n));case 263:let Et=He.parent;return b(ym(He.pos,n,He.parent),Et.members.length?Et.members[0]:Et.getLastToken(n));case 269:return b(He.parent.parent,He.parent.clauses[0])}return P(He.parent)}function st(He){switch(He.parent.kind){case 268:if(PG(He.parent.parent)!==1)return;case 266:case 263:return I(He);case 241:if(z9(He.parent))return I(He);case 299:return P(zo(He.parent.statements));case 269:let ht=He.parent,Et=zo(ht.clauses);return Et?P(zo(Et.statements)):void 0;case 206:let Kt=He.parent;return P(zo(Kt.elements)||Kt);default:if(WZ(He.parent)){let Nt=He.parent;return I(zo(Nt.properties)||Nt)}return P(He.parent)}}function nt(He){switch(He.parent.kind){case 207:let ht=He.parent;return I(zo(ht.elements)||ht);default:if(WZ(He.parent)){let Et=He.parent;return I(zo(Et.elements)||Et)}return P(He.parent)}}function qe(He){return He.parent.kind===246||He.parent.kind===213||He.parent.kind===214?N(He):He.parent.kind===217?V(He):P(He.parent)}function it(He){switch(He.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 N(He);default:return P(He.parent)}}function It(He){return eu(He.parent)||He.parent.kind===303||He.parent.kind===169?N(He):P(He.parent)}function dt(He){return He.parent.kind===216?V(He):P(He.parent)}function Tt(He){return He.parent.kind===246?h(He,He.parent.expression):P(He.parent)}function St(He){return He.parent.kind===250?V(He):P(He.parent)}}}var o7={};o(o7,{createCallHierarchyItem:()=>XZt,getIncomingCalls:()=>dts,getOutgoingCalls:()=>Ets,resolveCallHierarchyDeclaration:()=>EVr});function ots(n){return(PA(n)||rp(n))&&wf(n)}function IVr(n){return Hl(n)||js(n)}function u0e(n){return(PA(n)||Id(n)||rp(n))&&IVr(n.parent)&&n===n.parent.initializer&&sr(n.parent.name)&&(!!($y(n.parent)&2)||Hl(n.parent))}function CVr(n){return Fc(n)||mC(n)||hp(n)||PA(n)||Ec(n)||rp(n)||ef(n)||lI(n)||zS(n)||Qb(n)||ob(n)}function Ute(n){return Fc(n)||mC(n)&&sr(n.name)||hp(n)||Ec(n)||ef(n)||lI(n)||zS(n)||Qb(n)||ob(n)||ots(n)||u0e(n)}function mVr(n){return Fc(n)?n:wf(n)?n.name:u0e(n)?n.parent.name:w.checkDefined(n.modifiers&&be(n.modifiers,hVr))}function hVr(n){return n.kind===90}function _Vr(n,c){let u=mVr(c);return u&&n.getSymbolAtLocation(u)}function ats(n,c){if(Fc(c))return{text:c.fileName,pos:0,end:0};if((hp(c)||Ec(c))&&!wf(c)){let I=c.modifiers&&be(c.modifiers,hVr);if(I)return{text:"default",pos:I.getStart(),end:I.getEnd()}}if(ef(c)){let I=c.getSourceFile(),h=Uu(I.text,QS(c).pos),b=h+6,R=n.getTypeChecker(),N=R.getSymbolAtLocation(c.parent);return{text:`${N?`${R.symbolToString(N,c.parent)} `:""}static {}`,pos:h,end:b}}let u=u0e(c)?c.parent.name:w.checkDefined(Sl(c),"Expected call hierarchy item to have a name"),d=sr(u)?oo(u):ZE(u)?u.text:kg(u)&&ZE(u.expression)?u.expression.text:void 0;if(d===void 0){let I=n.getTypeChecker(),h=I.getSymbolAtLocation(u);h&&(d=I.symbolToString(h,c))}if(d===void 0){let I=Kke();d=W3(h=>I.writeNode(4,c,c.getSourceFile(),h))}return{text:d,pos:u.getStart(),end:u.getEnd()}}function cts(n){var c,u,d,I;if(u0e(n))return Hl(n.parent)&&va(n.parent.parent)?rp(n.parent.parent)?(c=u5(n.parent.parent))==null?void 0:c.getText():(u=n.parent.parent.name)==null?void 0:u.getText():wN(n.parent.parent.parent.parent)&&sr(n.parent.parent.parent.parent.parent.name)?n.parent.parent.parent.parent.parent.name.getText():void 0;switch(n.kind){case 177:case 178:case 174:return n.parent.kind===210?(d=u5(n.parent))==null?void 0:d.getText():(I=Sl(n.parent))==null?void 0:I.getText();case 262:case 263:case 267:if(wN(n.parent)&&sr(n.parent.parent.name))return n.parent.parent.name.getText()}}function yVr(n,c){if(c.body)return c;if(Df(c))return pN(c.parent);if(hp(c)||lI(c)){let u=_Vr(n,c);return u&&u.valueDeclaration&&pd(u.valueDeclaration)&&u.valueDeclaration.body?u.valueDeclaration:void 0}return c}function bVr(n,c){let u=_Vr(n,c),d;if(u&&u.declarations){let I=Yu(u.declarations),h=Ot(u.declarations,N=>({file:N.getSourceFile().fileName,pos:N.pos}));I.sort((N,V)=>Ro(h[N].file,h[V].file)||h[N].pos-h[V].pos);let b=Ot(I,N=>u.declarations[N]),R;for(let N of b)Ute(N)&&((!R||R.parent!==N.parent||R.end!==N.pos)&&(d=Yr(d,N)),R=N)}return d}function Sze(n,c){return ef(c)?c:pd(c)?yVr(n,c)??bVr(n,c)??c:bVr(n,c)??c}function EVr(n,c){let u=n.getTypeChecker(),d=!1;for(;;){if(Ute(c))return Sze(u,c);if(CVr(c)){let I=Si(c,Ute);return I&&Sze(u,I)}if(tT(c)){if(Ute(c.parent))return Sze(u,c.parent);if(CVr(c.parent)){let I=Si(c.parent,Ute);return I&&Sze(u,I)}return IVr(c.parent)&&c.parent.initializer&&u0e(c.parent.initializer)?c.parent.initializer:void 0}if(Df(c))return Ute(c.parent)?c.parent:void 0;if(c.kind===126&&ef(c.parent)){c=c.parent;continue}if(js(c)&&c.initializer&&u0e(c.initializer))return c.initializer;if(!d){let I=u.getSymbolAtLocation(c);if(I&&(I.flags&2097152&&(I=u.getAliasedSymbol(I)),I.valueDeclaration)){d=!0,c=I.valueDeclaration;continue}}return}}function XZt(n,c){let u=c.getSourceFile(),d=ats(n,c),I=cts(c),h=bM(c),b=Sue(c),R=Pd(Uu(u.text,c.getFullStart(),!1,!0),c.getEnd()),N=Pd(d.pos,d.end);return{file:u.fileName,kind:h,kindModifiers:b,name:d.text,containerName:I,span:R,selectionSpan:N}}function lts(n){return n!==void 0}function uts(n){if(n.kind===Yp.EntryKind.Node){let{node:c}=n;if(F7e(c,!0,!0)||fGt(c,!0,!0)||IGt(c,!0,!0)||CGt(c,!0,!0)||Fte(c)||P7e(c)){let u=c.getSourceFile();return{declaration:Si(c,Ute)||u,range:tje(c,u)}}}}function BVr(n){return od(n.declaration)}function gts(n,c){return{from:n,fromSpans:c}}function Ats(n,c){return gts(XZt(n,c[0].declaration),Ot(c,u=>NV(u.range)))}function dts(n,c,u){if(Fc(c)||mC(c)||ef(c))return[];let d=mVr(c),I=Gt(Yp.findReferenceOrRenameEntries(n,u,n.getSourceFiles(),d,0,{use:Yp.FindReferencesUse.References},uts),lts);return I?Xl(I,BVr,h=>Ats(n,h)):[]}function pts(n,c){function u(I){let h=W1(I)?I.tag:Um(I)?I.tagName:mp(I)||ef(I)?I:I.expression,b=EVr(n,h);if(b){let R=tje(h,I.getSourceFile());if(Na(b))for(let N of b)c.push({declaration:N,range:R});else c.push({declaration:b,range:R})}}function d(I){if(I&&!(I.flags&33554432)){if(Ute(I)){if(va(I))for(let h of I.members)h.name&&kg(h.name)&&d(h.name.expression);return}switch(I.kind){case 80:case 271:case 272:case 278:case 264:case 265:return;case 175:u(I);return;case 216:case 234:d(I.expression);return;case 260:case 169:d(I.name),d(I.initializer);return;case 213:u(I),d(I.expression),X(I.arguments,d);return;case 214:u(I),d(I.expression),X(I.arguments,d);return;case 215:u(I),d(I.tag),d(I.template);return;case 286:case 285:u(I),d(I.tagName),d(I.attributes);return;case 170:u(I),d(I.expression);return;case 211:case 212:u(I),hu(I,d);break;case 238:d(I.expression);return}VS(I)||hu(I,d)}}return d}function fts(n,c){X(n.statements,c)}function Its(n,c){!ya(n,128)&&n.body&&wN(n.body)&&X(n.body.statements,c)}function Cts(n,c,u){let d=yVr(n,c);d&&(X(d.parameters,u),u(d.body))}function mts(n,c){c(n.body)}function hts(n,c){X(n.modifiers,c);let u=nV(n);u&&c(u.expression);for(let d of n.members)tw(d)&&X(d.modifiers,c),Hl(d)?c(d.initializer):Df(d)&&d.body?(X(d.parameters,c),c(d.body)):ef(d)&&c(d)}function _ts(n,c){let u=[],d=pts(n,u);switch(c.kind){case 307:fts(c,d);break;case 267:Its(c,d);break;case 262:case 218:case 219:case 174:case 177:case 178:Cts(n.getTypeChecker(),c,d);break;case 263:case 231:hts(c,d);break;case 175:mts(c,d);break;default:w.assertNever(c)}return u}function yts(n,c){return{to:n,fromSpans:c}}function bts(n,c){return yts(XZt(n,c[0].declaration),Ot(c,u=>NV(u.range)))}function Ets(n,c){return c.flags&33554432||zS(c)?[]:Xl(_ts(n,c),BVr,u=>bts(n,u))}var JZt={};o(JZt,{v2020:()=>vVr});var vVr={};o(vVr,{TokenEncodingConsts:()=>q9r,TokenModifier:()=>eVr,TokenType:()=>$9r,getEncodedSemanticClassifications:()=>PZt,getSemanticClassifications:()=>tVr});var p0={};o(p0,{PreserveOptionalFlags:()=>GOr,addNewNodeForMemberSymbol:()=>FOr,codeFixAll:()=>Md,createCodeFixAction:()=>ng,createCodeFixActionMaybeFixAll:()=>jZt,createCodeFixActionWithoutFixAll:()=>dT,createCombinedCodeActions:()=>a7,createFileTextChanges:()=>SVr,createImportAdder:()=>RM,createImportSpecifierResolver:()=>xrs,createJsonPropertyAssignment:()=>eqe,createMissingMemberNodes:()=>p9t,createSignatureDeclarationFromCallExpression:()=>f9t,createSignatureDeclarationFromSignature:()=>$ze,createStubbedBody:()=>HFe,eachDiagnostic:()=>c7,findAncestorMatchingSpan:()=>y9t,findJsonProperty:()=>_9t,generateAccessorFromProperty:()=>OOr,getAccessorConvertiblePropertyAtPosition:()=>HOr,getAllFixes:()=>wts,getAllSupers:()=>b9t,getArgumentTypesAndTypeParameters:()=>VOr,getFixes:()=>Sts,getImportCompletionAction:()=>krs,getImportKind:()=>Vze,getJSDocTypedefNodes:()=>Rrs,getNoopSymbolTrackerWithResolver:()=>jte,getPromoteTypeOnlyCompletionAction:()=>Grs,getSupportedErrorCodes:()=>Bts,importFixName:()=>XWr,importSymbols:()=>g7,parameterShouldGetTypeFromJSDoc:()=>tWr,registerCodeFix:()=>Tg,setJsonCompilerOptionValue:()=>h9t,setJsonCompilerOptionValues:()=>m9t,tryGetAutoImportableReferenceFromTypeNode:()=>w4,typeToAutoImportableTypeNode:()=>MFe});var UZt=ec(),KZt=new Map;function dT(n,c,u){return zZt(n,vM(u),c,void 0,void 0)}function ng(n,c,u,d,I,h){return zZt(n,vM(u),c,d,vM(I),h)}function jZt(n,c,u,d,I,h){return zZt(n,vM(u),c,d,I&&vM(I),h)}function zZt(n,c,u,d,I,h){return{fixName:n,description:c,changes:u,fixId:d,fixAllDescription:I,commands:h?[h]:void 0}}function Tg(n){for(let c of n.errorCodes)qZt=void 0,UZt.add(String(c),n);if(n.fixIds)for(let c of n.fixIds)w.assert(!KZt.has(c)),KZt.set(c,n)}var qZt;function Bts(){return qZt??(qZt=on(UZt.keys()))}function vts(n,c){let{errorCodes:u}=n,d=0;for(let h of c)if(Ue(u,h.code)&&d++,d>1)break;let I=d<2;return({fixId:h,fixAllDescription:b,...R})=>I?R:{...R,fixId:h,fixAllDescription:b}}function Sts(n){let c=wVr(n),u=UZt.get(String(n.errorCode));return Fr(u,d=>Ot(d.getCodeActions(n),vts(d,c)))}function wts(n){return KZt.get(ps(n.fixId,Ya)).getAllCodeActions(n)}function a7(n,c){return{changes:n,commands:c}}function SVr(n,c){return{fileName:n,textChanges:c}}function Md(n,c,u){let d=[],I=Ao.ChangeTracker.with(n,h=>c7(n,c,b=>u(h,b,d)));return a7(I,d.length===0?void 0:d)}function c7(n,c,u){for(let d of wVr(n))Ue(c,d.code)&&u(d)}function wVr({program:n,sourceFile:c,cancellationToken:u}){let d=[...n.getSemanticDiagnostics(c,u),...n.getSyntacticDiagnostics(c,u),...Kje(c,n,u)];return WE(n.getCompilerOptions())&&d.push(...n.getDeclarationDiagnostics(c,u)),d}var $Zt="addConvertToUnknownForNonOverlappingTypes",TVr=[Z.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];Tg({errorCodes:TVr,getCodeActions:function(c){let u=RVr(c.sourceFile,c.span.start);if(u===void 0)return;let d=Ao.ChangeTracker.with(c,I=>NVr(I,c.sourceFile,u));return[ng($Zt,d,Z.Add_unknown_conversion_for_non_overlapping_types,$Zt,Z.Add_unknown_to_all_conversions_of_non_overlapping_types)]},fixIds:[$Zt],getAllCodeActions:n=>Md(n,TVr,(c,u)=>{let d=RVr(u.file,u.start);d&&NVr(c,u.file,d)})});function NVr(n,c,u){let d=$S(u)?_e.createAsExpression(u.expression,_e.createKeywordTypeNode(159)):_e.createTypeAssertion(_e.createKeywordTypeNode(159),u.expression);n.replaceNode(c,u.expression,d)}function RVr(n,c){if(!io(n))return Si(Hc(n,c),u=>$S(u)||hV(u))}Tg({errorCodes:[Z.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,Z.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,Z.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(c){let{sourceFile:u}=c,d=Ao.ChangeTracker.with(c,I=>{let h=_e.createExportDeclaration(void 0,!1,_e.createNamedExports([]),void 0);I.insertNodeAtEndOfScope(u,u,h)});return[dT("addEmptyExportDeclaration",d,Z.Add_export_to_make_this_file_into_a_module)]}});var eLt="addMissingAsync",DVr=[Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.Type_0_is_not_comparable_to_type_1.code];Tg({fixIds:[eLt],errorCodes:DVr,getCodeActions:function(c){let{sourceFile:u,errorCode:d,cancellationToken:I,program:h,span:b}=c,R=be(h.getTypeChecker().getDiagnostics(u,I),Nts(b,d)),N=R&&R.relatedInformation&&be(R.relatedInformation,Q=>Q.code===Z.Did_you_mean_to_mark_this_function_as_async.code),V=kVr(u,N);return V?[xVr(c,V,Q=>Ao.ChangeTracker.with(c,Q))]:void 0},getAllCodeActions:n=>{let{sourceFile:c}=n,u=new Set;return Md(n,DVr,(d,I)=>{let h=I.relatedInformation&&be(I.relatedInformation,N=>N.code===Z.Did_you_mean_to_mark_this_function_as_async.code),b=kVr(c,h);return b?xVr(n,b,N=>(N(d),[]),u):void 0})}});function xVr(n,c,u,d){let I=u(h=>Tts(h,n.sourceFile,c,d));return ng(eLt,I,Z.Add_async_modifier_to_containing_function,eLt,Z.Add_all_missing_async_modifiers)}function Tts(n,c,u,d){if(d&&d.has(od(u)))return;d?.add(od(u));let I=_e.replaceModifiers(vd(u,!0),_e.createNodeArray(_e.createModifiersFromModifierFlags(eD(u)|1024)));n.replaceNode(c,u,I)}function kVr(n,c){if(!c)return;let u=Hc(n,c.start);return Si(u,I=>I.getStart(n)Ku(c)?"quit":(Id(I)||lI(I)||PA(I)||hp(I))&&Pte(c,By(I,n)))}function Nts(n,c){return({start:u,length:d,relatedInformation:I,code:h})=>lm(u)&&lm(d)&&Pte({start:u,length:d},n)&&h===c&&!!I&&lr(I,b=>b.code===Z.Did_you_mean_to_mark_this_function_as_async.code)}var tLt="addMissingAwait",GVr=Z.Property_0_does_not_exist_on_type_1.code,FVr=[Z.This_expression_is_not_callable.code,Z.This_expression_is_not_constructable.code],rLt=[Z.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type.code,Z.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,Z.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,Z.Operator_0_cannot_be_applied_to_type_1.code,Z.Operator_0_cannot_be_applied_to_types_1_and_2.code,Z.This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap.code,Z.This_condition_will_always_return_true_since_this_0_is_always_defined.code,Z.Type_0_is_not_an_array_type.code,Z.Type_0_is_not_an_array_type_or_a_string_type.code,Z.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher.code,Z.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,Z.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,Z.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator.code,Z.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,GVr,...FVr];Tg({fixIds:[tLt],errorCodes:rLt,getCodeActions:function(c){let{sourceFile:u,errorCode:d,span:I,cancellationToken:h,program:b}=c,R=ZVr(u,d,I,h,b);if(!R)return;let N=c.program.getTypeChecker(),V=P=>Ao.ChangeTracker.with(c,P);return Vn([LVr(c,R,d,N,V),VVr(c,R,d,N,V)])},getAllCodeActions:n=>{let{sourceFile:c,program:u,cancellationToken:d}=n,I=n.program.getTypeChecker(),h=new Set;return Md(n,rLt,(b,R)=>{let N=ZVr(c,R.code,R,d,u);if(!N)return;let V=P=>(P(b),[]);return LVr(n,N,R.code,I,V,h)||VVr(n,N,R.code,I,V,h)})}});function ZVr(n,c,u,d,I){let h=Dje(n,u);return h&&Rts(n,c,u,d,I)&&WVr(h)?h:void 0}function LVr(n,c,u,d,I,h){let{sourceFile:b,program:R,cancellationToken:N}=n,V=Dts(c,b,N,R,d);if(V){let P=I(Q=>{X(V.initializers,({expression:te})=>nLt(Q,u,b,d,te,h)),h&&V.needsSecondPassForFixAll&&nLt(Q,u,b,d,c,h)});return dT("addMissingAwaitToInitializer",P,V.initializers.length===1?[Z.Add_await_to_initializer_for_0,V.initializers[0].declarationSymbol.name]:Z.Add_await_to_initializers)}}function VVr(n,c,u,d,I,h){let b=I(R=>nLt(R,u,n.sourceFile,d,c,h));return ng(tLt,b,Z.Add_await,tLt,Z.Fix_all_expressions_possibly_missing_await)}function Rts(n,c,u,d,I){let b=I.getTypeChecker().getDiagnostics(n,d);return lr(b,({start:R,length:N,relatedInformation:V,code:P})=>lm(R)&&lm(N)&&Pte({start:R,length:N},u)&&P===c&&!!V&&lr(V,Q=>Q.code===Z.Did_you_forget_to_use_await.code))}function Dts(n,c,u,d,I){let h=xts(n,I);if(!h)return;let b=h.isCompleteFix,R;for(let N of h.identifiers){let V=I.getSymbolAtLocation(N);if(!V)continue;let P=$s(V.valueDeclaration,js),Q=P&&$s(P.name,sr),te=bG(P,243);if(!P||!te||P.type||!P.initializer||te.getSourceFile()!==c||ya(te,32)||!Q||!WVr(P.initializer)){b=!1;continue}let re=d.getSemanticDiagnostics(c,u);if(Yp.Core.eachSymbolReferenceInFile(Q,I,c,Ae=>N!==Ae&&!kts(Ae,re,c,I))){b=!1;continue}(R||(R=[])).push({expression:P.initializer,declarationSymbol:V})}return R&&{initializers:R,needsSecondPassForFixAll:!b}}function xts(n,c){if(fo(n.parent)&&sr(n.parent.expression))return{identifiers:[n.parent.expression],isCompleteFix:!0};if(sr(n))return{identifiers:[n],isCompleteFix:!0};if(ro(n)){let u,d=!0;for(let I of[n.left,n.right]){let h=c.getTypeAtLocation(I);if(c.getPromisedTypeOfPromise(h)){if(!sr(I)){d=!1;continue}(u||(u=[])).push(I)}}return u&&{identifiers:u,isCompleteFix:d}}}function kts(n,c,u,d){let I=fo(n.parent)?n.parent.name:ro(n.parent)?n.parent:n,h=be(c,b=>b.start===I.getStart(u)&&b.start+b.length===I.getEnd());return h&&Ue(rLt,h.code)||d.getTypeAtLocation(I).flags&1}function WVr(n){return n.flags&65536||!!Si(n,c=>c.parent&&Id(c.parent)&&c.parent.body===c||hc(c)&&(c.parent.kind===262||c.parent.kind===218||c.parent.kind===219||c.parent.kind===174))}function nLt(n,c,u,d,I,h){if(P1(I.parent)&&!I.parent.awaitModifier){let b=d.getTypeAtLocation(I),R=d.getAsyncIterableType();if(R&&d.isTypeAssignableTo(b,R)){let N=I.parent;n.replaceNode(u,N,_e.updateForOfStatement(N,_e.createToken(135),N.initializer,N.expression,N.statement));return}}if(ro(I))for(let b of[I.left,I.right]){if(h&&sr(b)){let V=d.getSymbolAtLocation(b);if(V&&h.has(Gg(V)))continue}let R=d.getTypeAtLocation(b),N=d.getPromisedTypeOfPromise(R)?_e.createAwaitExpression(b):b;n.replaceNode(u,b,N)}else if(c===GVr&&fo(I.parent)){if(h&&sr(I.parent.expression)){let b=d.getSymbolAtLocation(I.parent.expression);if(b&&h.has(Gg(b)))return}n.replaceNode(u,I.parent.expression,_e.createParenthesizedExpression(_e.createAwaitExpression(I.parent.expression))),PVr(n,I.parent.expression,u)}else if(Ue(FVr,c)&&SB(I.parent)){if(h&&sr(I)){let b=d.getSymbolAtLocation(I);if(b&&h.has(Gg(b)))return}n.replaceNode(u,I,_e.createParenthesizedExpression(_e.createAwaitExpression(I))),PVr(n,I,u)}else{if(h&&js(I.parent)&&sr(I.parent.name)){let b=d.getSymbolAtLocation(I.parent.name);if(b&&!Zi(h,Gg(b)))return}n.replaceNode(u,I,_e.createAwaitExpression(I))}}function PVr(n,c,u){let d=ym(c.pos,u);d&&iFe(d.end,d.parent,u)&&n.insertText(u,c.getStart(u),";")}var iLt="addMissingConst",OVr=[Z.Cannot_find_name_0.code,Z.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer.code];Tg({errorCodes:OVr,getCodeActions:function(c){let u=Ao.ChangeTracker.with(c,d=>QVr(d,c.sourceFile,c.span.start,c.program));if(u.length>0)return[ng(iLt,u,Z.Add_const_to_unresolved_variable,iLt,Z.Add_const_to_all_unresolved_variables)]},fixIds:[iLt],getAllCodeActions:n=>{let c=new Set;return Md(n,OVr,(u,d)=>QVr(u,d.file,d.start,n.program,c))}});function QVr(n,c,u,d,I){let h=Hc(c,u),b=Si(h,V=>bZ(V.parent)?V.parent.initializer===V:Gts(V)?!1:"quit");if(b)return wze(n,b,c,I);let R=h.parent;if(ro(R)&&R.operatorToken.kind===64&&Xf(R.parent))return wze(n,h,c,I);if(Cf(R)){let V=d.getTypeChecker();return he(R.elements,P=>Fts(P,V))?wze(n,R,c,I):void 0}let N=Si(h,V=>Xf(V.parent)?!0:Zts(V)?!1:"quit");if(N){let V=d.getTypeChecker();return MVr(N,V)?wze(n,N,c,I):void 0}}function wze(n,c,u,d){(!d||Zi(d,c))&&n.insertModifierBefore(u,87,c)}function Gts(n){switch(n.kind){case 80:case 209:case 210:case 303:case 304:return!0;default:return!1}}function Fts(n,c){let u=sr(n)?n:Im(n,!0)&&sr(n.left)?n.left:void 0;return!!u&&!c.getSymbolAtLocation(u)}function Zts(n){switch(n.kind){case 80:case 226:case 28:return!0;default:return!1}}function MVr(n,c){return ro(n)?n.operatorToken.kind===28?he([n.left,n.right],u=>MVr(u,c)):n.operatorToken.kind===64&&sr(n.left)&&!c.getSymbolAtLocation(n.left):!1}var sLt="addMissingDeclareProperty",HVr=[Z.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];Tg({errorCodes:HVr,getCodeActions:function(c){let u=Ao.ChangeTracker.with(c,d=>YVr(d,c.sourceFile,c.span.start));if(u.length>0)return[ng(sLt,u,Z.Prefix_with_declare,sLt,Z.Prefix_all_incorrect_property_declarations_with_declare)]},fixIds:[sLt],getAllCodeActions:n=>{let c=new Set;return Md(n,HVr,(u,d)=>YVr(u,d.file,d.start,c))}});function YVr(n,c,u,d){let I=Hc(c,u);if(!sr(I))return;let h=I.parent;h.kind===172&&(!d||Zi(d,h))&&n.insertModifierBefore(c,138,h)}var oLt="addMissingInvocationForDecorator",XVr=[Z._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0.code];Tg({errorCodes:XVr,getCodeActions:function(c){let u=Ao.ChangeTracker.with(c,d=>JVr(d,c.sourceFile,c.span.start));return[ng(oLt,u,Z.Call_decorator_expression,oLt,Z.Add_to_all_uncalled_decorators)]},fixIds:[oLt],getAllCodeActions:n=>Md(n,XVr,(c,u)=>JVr(c,u.file,u.start))});function JVr(n,c,u){let d=Hc(c,u),I=Si(d,FC);w.assert(!!I,"Expected position to be owned by a decorator.");let h=_e.createCallExpression(I.expression,void 0,void 0);n.replaceNode(c,I.expression,h)}var aLt="addNameToNamelessParameter",UVr=[Z.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1.code];Tg({errorCodes:UVr,getCodeActions:function(c){let u=Ao.ChangeTracker.with(c,d=>KVr(d,c.sourceFile,c.span.start));return[ng(aLt,u,Z.Add_parameter_name,aLt,Z.Add_names_to_all_parameters_without_names)]},fixIds:[aLt],getAllCodeActions:n=>Md(n,UVr,(c,u)=>KVr(c,u.file,u.start))});function KVr(n,c,u){let d=Hc(c,u),I=d.parent;if(!Uc(I))return w.fail("Tried to add a parameter name to a non-parameter: "+w.formatSyntaxKind(d.kind));let h=I.parent.parameters.indexOf(I);w.assert(!I.type,"Tried to add a parameter name to a parameter that already had one."),w.assert(h>-1,"Parameter not found in parent parameter list.");let b=I.name.getEnd(),R=_e.createTypeReferenceNode(I.name,void 0),N=jVr(c,I);for(;N;)R=_e.createArrayTypeNode(R),b=N.getEnd(),N=jVr(c,N);let V=_e.createParameterDeclaration(I.modifiers,I.dotDotDotToken,"arg"+h,I.questionToken,I.dotDotDotToken&&!Ye(R)?_e.createArrayTypeNode(R):R,I.initializer);n.replaceRange(c,Z1(I.getStart(c),b),V)}function jVr(n,c){let u=EM(c.name,c.parent,n);if(u&&u.kind===23&&Wu(u.parent)&&Uc(u.parent.parent))return u.parent.parent}var zVr="addOptionalPropertyUndefined",Lts=[Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target.code,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,Z.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];Tg({errorCodes:Lts,getCodeActions(n){let c=n.program.getTypeChecker(),u=Vts(n.sourceFile,n.span,c);if(!u.length)return;let d=Ao.ChangeTracker.with(n,I=>Pts(I,u));return[dT(zVr,d,Z.Add_undefined_to_optional_property_type)]},fixIds:[zVr]});function Vts(n,c,u){var d,I;let h=qVr(Dje(n,c),u);if(!h)return v;let{source:b,target:R}=h,N=Wts(b,R,u)?u.getTypeAtLocation(R.expression):u.getTypeAtLocation(R);return(I=(d=N.symbol)==null?void 0:d.declarations)!=null&&I.some(V=>ls(V).fileName.match(/\.d\.ts$/))?v:u.getExactOptionalProperties(N)}function Wts(n,c,u){return fo(c)&&!!u.getExactOptionalProperties(u.getTypeAtLocation(c.expression)).length&&u.getTypeAtLocation(n)===u.getUndefinedType()}function qVr(n,c){var u;if(n){if(ro(n.parent)&&n.parent.operatorToken.kind===64)return{source:n.parent.right,target:n.parent.left};if(js(n.parent)&&n.parent.initializer)return{source:n.parent.initializer,target:n.parent.name};if(lu(n.parent)){let d=c.getSymbolAtLocation(n.parent.expression);if(!d?.valueDeclaration||!HR(d.valueDeclaration.kind)||!tn(n))return;let I=n.parent.arguments.indexOf(n);if(I===-1)return;let h=d.valueDeclaration.parameters[I].name;if(sr(h))return{source:n,target:h}}else if(jC(n.parent)&&sr(n.parent.name)||F_(n.parent)){let d=qVr(n.parent.parent,c);if(!d)return;let I=c.getPropertyOfType(c.getTypeAtLocation(d.target),n.parent.name.text),h=(u=I?.declarations)==null?void 0:u[0];return h?{source:jC(n.parent)?n.parent.initializer:n.parent.name,target:h}:void 0}}else return}function Pts(n,c){for(let u of c){let d=u.valueDeclaration;if(d&&(i_(d)||Hl(d))&&d.type){let I=_e.createUnionTypeNode([...d.type.kind===192?d.type.types:[d.type],_e.createTypeReferenceNode("undefined")]);n.replaceNode(d.getSourceFile(),d.type,I)}}}var cLt="annotateWithTypeFromJSDoc",$Vr=[Z.JSDoc_types_may_be_moved_to_TypeScript_types.code];Tg({errorCodes:$Vr,getCodeActions(n){let c=eWr(n.sourceFile,n.span.start);if(!c)return;let u=Ao.ChangeTracker.with(n,d=>nWr(d,n.sourceFile,c));return[ng(cLt,u,Z.Annotate_with_type_from_JSDoc,cLt,Z.Annotate_everything_with_types_from_JSDoc)]},fixIds:[cLt],getAllCodeActions:n=>Md(n,$Vr,(c,u)=>{let d=eWr(u.file,u.start);d&&nWr(c,u.file,d)})});function eWr(n,c){let u=Hc(n,c);return $s(Uc(u.parent)?u.parent.parent:u.parent,tWr)}function tWr(n){return Ots(n)&&rWr(n)}function rWr(n){return pd(n)?n.parameters.some(rWr)||!n.type&&!!dX(n):!n.type&&!!wx(n)}function nWr(n,c,u){if(pd(u)&&(dX(u)||u.parameters.some(d=>!!wx(d)))){if(!u.typeParameters){let I=Tee(u);I.length&&n.insertTypeParameters(c,u,I)}let d=Id(u)&&!Qd(u,21,c);d&&n.insertNodeBefore(c,qs(u.parameters),_e.createToken(21));for(let I of u.parameters)if(!I.type){let h=wx(I);h&&n.tryInsertTypeAnnotation(c,I,xr(h,NM,Ma))}if(d&&n.insertNodeAfter(c,Ta(u.parameters),_e.createToken(22)),!u.type){let I=dX(u);I&&n.tryInsertTypeAnnotation(c,u,xr(I,NM,Ma))}}else{let d=w.checkDefined(wx(u),"A JSDocType for this declaration should exist");w.assert(!u.type,"The JSDocType decl should have a type"),n.tryInsertTypeAnnotation(c,u,xr(d,NM,Ma))}}function Ots(n){return pd(n)||n.kind===260||n.kind===171||n.kind===172}function NM(n){switch(n.kind){case 312:case 313:return _e.createTypeReferenceNode("any",v);case 316:return Mts(n);case 315:return NM(n.type);case 314:return Hts(n);case 318:return Yts(n);case 317:return Xts(n);case 183:return Uts(n);case 322:return Qts(n);default:let c=ns(n,NM,void 0);return ao(c,1),c}}function Qts(n){let c=_e.createTypeLiteralNode(Ot(n.jsDocPropertyTags,u=>_e.createPropertySignature(void 0,sr(u.name)?u.name:u.name.right,Kee(u)?_e.createToken(58):void 0,u.typeExpression&&xr(u.typeExpression.type,NM,Ma)||_e.createKeywordTypeNode(133))));return ao(c,1),c}function Mts(n){return _e.createUnionTypeNode([xr(n.type,NM,Ma),_e.createTypeReferenceNode("undefined",v)])}function Hts(n){return _e.createUnionTypeNode([xr(n.type,NM,Ma),_e.createTypeReferenceNode("null",v)])}function Yts(n){return _e.createArrayTypeNode(xr(n.type,NM,Ma))}function Xts(n){return _e.createFunctionTypeNode(v,n.parameters.map(Jts),n.type??_e.createKeywordTypeNode(133))}function Jts(n){let c=n.parent.parameters.indexOf(n),u=n.type.kind===318&&c===n.parent.parameters.length-1,d=n.name||(u?"rest":"arg"+c),I=u?_e.createToken(26):n.dotDotDotToken;return _e.createParameterDeclaration(n.modifiers,I,d,n.questionToken,xr(n.type,NM,Ma),n.initializer)}function Uts(n){let c=n.typeName,u=n.typeArguments;if(sr(n.typeName)){if(ree(n))return Kts(n);let d=n.typeName.text;switch(n.typeName.text){case"String":case"Boolean":case"Object":case"Number":d=d.toLowerCase();break;case"array":case"date":case"promise":d=d[0].toUpperCase()+d.slice(1);break}c=_e.createIdentifier(d),(d==="Array"||d==="Promise")&&!n.typeArguments?u=_e.createNodeArray([_e.createTypeReferenceNode("any",v)]):u=ws(n.typeArguments,NM,Ma)}return _e.createTypeReferenceNode(c,u)}function Kts(n){let c=_e.createParameterDeclaration(void 0,void 0,n.typeArguments[0].kind===150?"n":"s",void 0,_e.createTypeReferenceNode(n.typeArguments[0].kind===150?"number":"string",[]),void 0),u=_e.createTypeLiteralNode([_e.createIndexSignature(void 0,[c],n.typeArguments[1])]);return ao(u,1),u}var lLt="convertFunctionToEs6Class",iWr=[Z.This_constructor_function_may_be_converted_to_a_class_declaration.code];Tg({errorCodes:iWr,getCodeActions(n){let c=Ao.ChangeTracker.with(n,u=>sWr(u,n.sourceFile,n.span.start,n.program.getTypeChecker(),n.preferences,n.program.getCompilerOptions()));return[ng(lLt,c,Z.Convert_function_to_an_ES2015_class,lLt,Z.Convert_all_constructor_functions_to_classes)]},fixIds:[lLt],getAllCodeActions:n=>Md(n,iWr,(c,u)=>sWr(c,u.file,u.start,n.program.getTypeChecker(),n.preferences,n.program.getCompilerOptions()))});function sWr(n,c,u,d,I,h){let b=d.getSymbolAtLocation(Hc(c,u));if(!b||!b.valueDeclaration||!(b.flags&19))return;let R=b.valueDeclaration;if(hp(R)||PA(R))n.replaceNode(c,R,P(R));else if(js(R)){let Q=V(R);if(!Q)return;let te=R.parent.parent;bl(R.parent)&&R.parent.declarations.length>1?(n.delete(c,R),n.insertNodeAfter(c,te,Q)):n.replaceNode(c,te,Q)}function N(Q){let te=[];return Q.exports&&Q.exports.forEach(Ae=>{if(Ae.name==="prototype"&&Ae.declarations){let de=Ae.declarations[0];if(Ae.declarations.length===1&&fo(de)&&ro(de.parent)&&de.parent.operatorToken.kind===64&&ru(de.parent.right)){let Be=de.parent.right;ue(Be.symbol,void 0,te)}}else ue(Ae,[_e.createToken(126)],te)}),Q.members&&Q.members.forEach((Ae,de)=>{var Be,Fe,Ne,Me;if(de==="constructor"&&Ae.valueDeclaration){let De=(Me=(Ne=(Fe=(Be=Q.exports)==null?void 0:Be.get("prototype"))==null?void 0:Fe.declarations)==null?void 0:Ne[0])==null?void 0:Me.parent;De&&ro(De)&&ru(De.right)&&lr(De.right.properties,Nze)||n.delete(c,Ae.valueDeclaration.parent);return}ue(Ae,void 0,te)}),te;function re(Ae,de){return mp(Ae)?fo(Ae)&&Nze(Ae)?!0:eu(de):he(Ae.properties,Be=>!!(lI(Be)||fX(Be)||jC(Be)&&PA(Be.initializer)&&Be.name||Nze(Be)))}function ue(Ae,de,Be){if(!(Ae.flags&8192)&&!(Ae.flags&4096))return;let Fe=Ae.valueDeclaration,Ne=Fe.parent,Me=Ne.right;if(!re(Fe,Me)||lr(Be,st=>{let nt=Sl(st);return!!(nt&&sr(nt)&&oo(nt)===pf(Ae))}))return;let De=Ne.parent&&Ne.parent.kind===244?Ne.parent:Ne;if(n.delete(c,De),!Me){Be.push(_e.createPropertyDeclaration(de,Ae.name,void 0,void 0,void 0));return}if(mp(Fe)&&(PA(Me)||Id(Me))){let st=P2(c,I),nt=jts(Fe,h,st);nt&<(Be,Me,nt);return}else if(ru(Me)){X(Me.properties,st=>{(lI(st)||fX(st))&&Be.push(st),jC(st)&&PA(st.initializer)&<(Be,st.initializer,st.name),Nze(st)});return}else{if(i0(c)||!fo(Fe))return;let st=_e.createPropertyDeclaration(de,Fe.name,void 0,void 0,Me);Qte(Ne.parent,st,c),Be.push(st);return}function lt(st,nt,qe){return PA(nt)?Le(st,nt,qe):je(st,nt,qe)}function Le(st,nt,qe){let it=vi(de,Tze(nt,134)),It=_e.createMethodDeclaration(it,void 0,qe,void 0,void 0,nt.parameters,void 0,nt.body);Qte(Ne,It,c),st.push(It)}function je(st,nt,qe){let it=nt.body,It;it.kind===241?It=it:It=_e.createBlock([_e.createReturnStatement(it)]);let dt=vi(de,Tze(nt,134)),Tt=_e.createMethodDeclaration(dt,void 0,qe,void 0,void 0,nt.parameters,void 0,It);Qte(Ne,Tt,c),st.push(Tt)}}}function V(Q){let te=Q.initializer;if(!te||!PA(te)||!sr(Q.name))return;let re=N(Q.symbol);te.body&&re.unshift(_e.createConstructorDeclaration(void 0,te.parameters,te.body));let ue=Tze(Q.parent.parent,95);return _e.createClassDeclaration(ue,Q.name,void 0,void 0,re)}function P(Q){let te=N(b);Q.body&&te.unshift(_e.createConstructorDeclaration(void 0,Q.parameters,Q.body));let re=Tze(Q,95);return _e.createClassDeclaration(re,Q.name,void 0,void 0,te)}}function Tze(n,c){return tw(n)?Gt(n.modifiers,u=>u.kind===c):void 0}function Nze(n){return n.name?!!(sr(n.name)&&n.name.text==="constructor"):!1}function jts(n,c,u){if(fo(n))return n.name;let d=n.argumentExpression;if(pu(d))return d;if(JA(d))return Ke(d.text,sA(c))?_e.createIdentifier(d.text):cM(d)?_e.createStringLiteral(d.text,u===0):d}var uLt="convertToAsyncFunction",oWr=[Z.This_may_be_converted_to_an_async_function.code],Rze=!0;Tg({errorCodes:oWr,getCodeActions(n){Rze=!0;let c=Ao.ChangeTracker.with(n,u=>aWr(u,n.sourceFile,n.span.start,n.program.getTypeChecker()));return Rze?[ng(uLt,c,Z.Convert_to_async_function,uLt,Z.Convert_all_to_async_functions)]:[]},fixIds:[uLt],getAllCodeActions:n=>Md(n,oWr,(c,u)=>aWr(c,u.file,u.start,n.program.getTypeChecker()))});function aWr(n,c,u,d){let I=Hc(c,u),h;if(sr(I)&&js(I.parent)&&I.parent.initializer&&pd(I.parent.initializer)?h=I.parent.initializer:h=$s(Ob(Hc(c,u)),qje),!h)return;let b=new Map,R=io(h),N=qts(h,d),V=$ts(h,d,b);if(!jje(V,d))return;let P=V.body&&hc(V.body)?zts(V.body,d):v,Q={checker:d,synthNamesMap:b,setOfExpressionsToReturn:N,isInJSFile:R};if(!P.length)return;let te=Uu(c.text,QS(h).pos);n.insertModifierAt(c,te,134,{suffix:" "});for(let re of P)if(hu(re,function ue(Ae){if(lu(Ae)){let de=Kte(Ae,Ae,Q,!1);if(l7())return!0;n.replaceNodeWithNodes(c,re,de)}else if(!eu(Ae)&&(hu(Ae,ue),l7()))return!0}),l7())return}function zts(n,c){let u=[];return kx(n,d=>{_Fe(d,c)&&u.push(d)}),u}function qts(n,c){if(!n.body)return new Set;let u=new Set;return hu(n.body,function d(I){g0e(I,c,"then")?(u.add(od(I)),X(I.arguments,d)):g0e(I,c,"catch")||g0e(I,c,"finally")?(u.add(od(I)),hu(I,d)):lWr(I,c)?u.add(od(I)):hu(I,d)}),u}function g0e(n,c,u){if(!lu(n))return!1;let I=G_e(n,u)&&c.getTypeAtLocation(n);return!!(I&&c.getPromisedTypeOfPromise(I))}function cWr(n,c){return(ia(n)&4)!==0&&n.target===c}function Dze(n,c,u){if(n.expression.name.escapedText==="finally")return;let d=u.getTypeAtLocation(n.expression.expression);if(cWr(d,u.getPromiseType())||cWr(d,u.getPromiseLikeType()))if(n.expression.name.escapedText==="then"){if(c===ts(n.arguments,0))return ts(n.typeArguments,0);if(c===ts(n.arguments,1))return ts(n.typeArguments,1)}else return ts(n.typeArguments,0)}function lWr(n,c){return tn(n)?!!c.getPromisedTypeOfPromise(c.getTypeAtLocation(n)):!1}function $ts(n,c,u){let d=new Map,I=ec();return hu(n,function h(b){if(!sr(b)){hu(b,h);return}let R=c.getSymbolAtLocation(b);if(R){let N=c.getTypeAtLocation(b),V=fWr(N,c),P=Gg(R).toString();if(V&&!Uc(b.parent)&&!pd(b.parent)&&!u.has(P)){let Q=$i(V.parameters),te=Q?.valueDeclaration&&Uc(Q.valueDeclaration)&&$s(Q.valueDeclaration.name,sr)||_e.createUniqueName("result",16),re=uWr(te,I);u.set(P,re),I.add(te.text,R)}else if(b.parent&&(Uc(b.parent)||js(b.parent)||hl(b.parent))){let Q=b.text,te=I.get(Q);if(te&&te.some(re=>re!==R)){let re=uWr(b,I);d.set(P,re.identifier),u.set(P,re),I.add(Q,R)}else{let re=vd(b);u.set(P,Que(re)),I.add(Q,R)}}}}),U_e(n,!0,h=>{if(hl(h)&&sr(h.name)&&Wg(h.parent)){let b=c.getSymbolAtLocation(h.name),R=b&&d.get(String(Gg(b)));if(R&&R.text!==(h.name||h.propertyName).getText())return _e.createBindingElement(h.dotDotDotToken,h.propertyName||h.name,R,h.initializer)}else if(sr(h)){let b=c.getSymbolAtLocation(h),R=b&&d.get(String(Gg(b)));if(R)return _e.createIdentifier(R.text)}})}function uWr(n,c){let u=(c.get(n.text)||v).length,d=u===0?n:_e.createIdentifier(n.text+"_"+u);return Que(d)}function l7(){return!Rze}function hP(){return Rze=!1,v}function Kte(n,c,u,d,I){if(g0e(c,u.checker,"then"))return rrs(c,ts(c.arguments,0),ts(c.arguments,1),u,d,I);if(g0e(c,u.checker,"catch"))return dWr(c,ts(c.arguments,0),u,d,I);if(g0e(c,u.checker,"finally"))return trs(c,ts(c.arguments,0),u,d,I);if(fo(c))return Kte(n,c.expression,u,d,I);let h=u.checker.getTypeAtLocation(c);return h&&u.checker.getPromisedTypeOfPromise(h)?(w.assertNode(Np(c).parent,fo),nrs(n,c,u,d,I)):hP()}function xze({checker:n},c){if(c.kind===106)return!0;if(sr(c)&&!Cp(c)&&oo(c)==="undefined"){let u=n.getSymbolAtLocation(c);return!u||n.isUndefinedSymbol(u)}return!1}function ers(n){let c=_e.createUniqueName(n.identifier.text,16);return Que(c)}function gWr(n,c,u){let d;return u&&!d0e(n,c)&&(A0e(u)?(d=u,c.synthNamesMap.forEach((I,h)=>{if(I.identifier.text===u.identifier.text){let b=ers(u);c.synthNamesMap.set(h,b)}})):d=Que(_e.createUniqueName("result",16),u.types),pLt(d)),d}function AWr(n,c,u,d,I){let h=[],b;if(d&&!d0e(n,c)){b=vd(pLt(d));let R=d.types,N=c.checker.getUnionType(R,2),V=c.isInJSFile?void 0:c.checker.typeToTypeNode(N,void 0,void 0),P=[_e.createVariableDeclaration(b,void 0,V)],Q=_e.createVariableStatement(void 0,_e.createVariableDeclarationList(P,1));h.push(Q)}return h.push(u),I&&b&&ors(I)&&h.push(_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(vd(hWr(I)),void 0,void 0,b)],2))),h}function trs(n,c,u,d,I){if(!c||xze(u,c))return Kte(n,n.expression.expression,u,d,I);let h=gWr(n,u,I),b=Kte(n,n.expression.expression,u,!0,h);if(l7())return hP();let R=ALt(c,d,void 0,void 0,n,u);if(l7())return hP();let N=_e.createBlock(b),V=_e.createBlock(R),P=_e.createTryStatement(N,void 0,V);return AWr(n,u,P,h,I)}function dWr(n,c,u,d,I){if(!c||xze(u,c))return Kte(n,n.expression.expression,u,d,I);let h=CWr(c,u),b=gWr(n,u,I),R=Kte(n,n.expression.expression,u,!0,b);if(l7())return hP();let N=ALt(c,d,b,h,n,u);if(l7())return hP();let V=_e.createBlock(R),P=_e.createCatchClause(h&&vd(LFe(h)),_e.createBlock(N)),Q=_e.createTryStatement(V,P,void 0);return AWr(n,u,Q,b,I)}function rrs(n,c,u,d,I,h){if(!c||xze(d,c))return dWr(n,u,d,I,h);if(u&&!xze(d,u))return hP();let b=CWr(c,d),R=Kte(n.expression.expression,n.expression.expression,d,!0,b);if(l7())return hP();let N=ALt(c,I,h,b,n,d);return l7()?hP():vi(R,N)}function nrs(n,c,u,d,I){if(d0e(n,u)){let h=vd(c);return d&&(h=_e.createAwaitExpression(h)),[_e.createReturnStatement(h)]}return kze(I,_e.createAwaitExpression(c),void 0)}function kze(n,c,u){return!n||mWr(n)?[_e.createExpressionStatement(c)]:A0e(n)&&n.hasBeenDeclared?[_e.createExpressionStatement(_e.createAssignment(vd(dLt(n)),c))]:[_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(vd(LFe(n)),void 0,u,c)],2))]}function gLt(n,c){if(c&&n){let u=_e.createUniqueName("result",16);return[...kze(Que(u),n,c),_e.createReturnStatement(u)]}return[_e.createReturnStatement(n)]}function ALt(n,c,u,d,I,h){var b;switch(n.kind){case 106:break;case 211:case 80:if(!d)break;let R=_e.createCallExpression(vd(n),void 0,A0e(d)?[dLt(d)]:[]);if(d0e(I,h))return gLt(R,Dze(I,n,h.checker));let N=h.checker.getTypeAtLocation(n),V=h.checker.getSignaturesOfType(N,0);if(!V.length)return hP();let P=V[0].getReturnType(),Q=kze(u,_e.createAwaitExpression(R),Dze(I,n,h.checker));return u&&u.types.push(h.checker.getAwaitedType(P)||P),Q;case 218:case 219:{let te=n.body,re=(b=fWr(h.checker.getTypeAtLocation(n),h.checker))==null?void 0:b.getReturnType();if(hc(te)){let ue=[],Ae=!1;for(let de of te.statements)if(G_(de))if(Ae=!0,_Fe(de,h.checker))ue=ue.concat(IWr(h,de,c,u));else{let Be=re&&de.expression?pWr(h.checker,re,de.expression):de.expression;ue.push(...gLt(Be,Dze(I,n,h.checker)))}else{if(c&&kx(de,fI))return hP();ue.push(de)}return d0e(I,h)?ue.map(de=>vd(de)):irs(ue,u,h,Ae)}else{let ue=zje(te,h.checker)?IWr(h,_e.createReturnStatement(te),c,u):v;if(ue.length>0)return ue;if(re){let Ae=pWr(h.checker,re,te);if(d0e(I,h))return gLt(Ae,Dze(I,n,h.checker));{let de=kze(u,Ae,void 0);return u&&u.types.push(h.checker.getAwaitedType(re)||re),de}}else return hP()}}default:return hP()}return v}function pWr(n,c,u){let d=vd(u);return n.getPromisedTypeOfPromise(c)?_e.createAwaitExpression(d):d}function fWr(n,c){let u=c.getSignaturesOfType(n,0);return zo(u)}function irs(n,c,u,d){let I=[];for(let h of n)if(G_(h)){if(h.expression){let b=lWr(h.expression,u.checker)?_e.createAwaitExpression(h.expression):h.expression;c===void 0?I.push(_e.createExpressionStatement(b)):A0e(c)&&c.hasBeenDeclared?I.push(_e.createExpressionStatement(_e.createAssignment(dLt(c),b))):I.push(_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(LFe(c),void 0,void 0,b)],2)))}}else I.push(vd(h));return!d&&c!==void 0&&I.push(_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(LFe(c),void 0,void 0,_e.createIdentifier("undefined"))],2))),I}function IWr(n,c,u,d){let I=[];return hu(c,function h(b){if(lu(b)){let R=Kte(b,b,n,u,d);if(I=I.concat(R),I.length>0)return}else eu(b)||hu(b,h)}),I}function CWr(n,c){let u=[],d;if(pd(n)){if(n.parameters.length>0){let N=n.parameters[0].name;d=I(N)}}else sr(n)?d=h(n):fo(n)&&sr(n.name)&&(d=h(n.name));if(!d||"identifier"in d&&d.identifier.text==="undefined")return;return d;function I(N){if(sr(N))return h(N);let V=Fr(N.elements,P=>tf(P)?[]:[I(P.name)]);return srs(N,V)}function h(N){let V=R(N),P=b(V);return P&&c.synthNamesMap.get(Gg(P).toString())||Que(N,u)}function b(N){var V;return((V=$s(N,v2))==null?void 0:V.symbol)??c.checker.getSymbolAtLocation(N)}function R(N){return N.original?N.original:N}}function mWr(n){return n?A0e(n)?!n.identifier.text:he(n.elements,mWr):!0}function Que(n,c=[]){return{kind:0,identifier:n,types:c,hasBeenDeclared:!1,hasBeenReferenced:!1}}function srs(n,c=v,u=[]){return{kind:1,bindingPattern:n,elements:c,types:u}}function dLt(n){return n.hasBeenReferenced=!0,n.identifier}function LFe(n){return A0e(n)?pLt(n):hWr(n)}function hWr(n){for(let c of n.elements)LFe(c);return n.bindingPattern}function pLt(n){return n.hasBeenDeclared=!0,n.identifier}function A0e(n){return n.kind===0}function ors(n){return n.kind===1}function d0e(n,c){return!!n.original&&c.setOfExpressionsToReturn.has(od(n.original))}Tg({errorCodes:[Z.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module.code],getCodeActions(n){let{sourceFile:c,program:u,preferences:d}=n,I=Ao.ChangeTracker.with(n,h=>{if(crs(c,u.getTypeChecker(),h,sA(u.getCompilerOptions()),P2(c,d)))for(let R of u.getSourceFiles())ars(R,c,u,h,P2(R,d))});return[dT("convertToEsModule",I,Z.Convert_to_ES_module)]}});function ars(n,c,u,d,I){var h;for(let b of n.imports){let R=(h=u.getResolvedModuleFromModuleSpecifier(b,n))==null?void 0:h.resolvedModule;if(!R||R.resolvedFileName!==c.fileName)continue;let N=OX(b);switch(N.kind){case 271:d.replaceNode(n,N,RV(N.name,void 0,b,I));break;case 213:H0(N,!1)&&d.replaceNode(n,N,_e.createPropertyAccessExpression(vd(N),"default"));break}}}function crs(n,c,u,d,I){let h={original:yrs(n),additional:new Set},b=lrs(n,c,h);urs(n,b,u);let R=!1,N;for(let V of Gt(n.statements,Dp)){let P=yWr(n,V,u,c,h,d,I);P&&S8(P,N??(N=new Map))}for(let V of Gt(n.statements,P=>!Dp(P))){let P=grs(n,V,c,u,h,d,b,N,I);R=R||P}return N?.forEach((V,P)=>{u.replaceNode(n,P,V)}),R}function lrs(n,c,u){let d=new Map;return _Wr(n,I=>{let{text:h}=I.name;!d.has(h)&&(_ee(I.name)||c.resolveName(h,I,111551,!0))&&d.set(h,Gze(`_${h}`,u))}),d}function urs(n,c,u){_Wr(n,(d,I)=>{if(I)return;let{text:h}=d.name;u.replaceNode(n,d,_e.createIdentifier(c.get(h)||h))})}function _Wr(n,c){n.forEachChild(function u(d){if(fo(d)&&CM(n,d.expression)&&sr(d.name)){let{parent:I}=d;c(d,ro(I)&&I.left===d&&I.operatorToken.kind===64)}d.forEachChild(u)})}function grs(n,c,u,d,I,h,b,R,N){switch(c.kind){case 243:return yWr(n,c,d,u,I,h,N),!1;case 244:{let{expression:V}=c;switch(V.kind){case 213:return H0(V,!0)&&d.replaceNode(n,c,RV(void 0,void 0,V.arguments[0],N)),!1;case 226:{let{operatorToken:P}=V;return P.kind===64&&drs(n,u,V,d,b,R)}}}default:return!1}}function yWr(n,c,u,d,I,h,b){let{declarationList:R}=c,N=!1,V=Ot(R.declarations,P=>{let{name:Q,initializer:te}=P;if(te){if(CM(n,te))return N=!0,Mue([]);if(H0(te,!0))return N=!0,hrs(Q,te.arguments[0],d,I,h,b);if(fo(te)&&H0(te.expression,!0))return N=!0,Ars(Q,te.name.text,te.expression.arguments[0],I,b)}return Mue([_e.createVariableStatement(void 0,_e.createVariableDeclarationList([P],R.flags))])});if(N){u.replaceNodeWithNodes(n,c,Fr(V,Q=>Q.newImports));let P;return X(V,Q=>{Q.useSitesToUnqualify&&S8(Q.useSitesToUnqualify,P??(P=new Map))}),P}}function Ars(n,c,u,d,I){switch(n.kind){case 206:case 207:{let h=Gze(c,d);return Mue([vWr(h,c,u,I),Fze(void 0,n,_e.createIdentifier(h))])}case 80:return Mue([vWr(n.text,c,u,I)]);default:return w.assertNever(n,`Convert to ES module got invalid syntax form ${n.kind}`)}}function drs(n,c,u,d,I,h){let{left:b,right:R}=u;if(!fo(b))return!1;if(CM(n,b))if(CM(n,R))d.delete(n,u.parent);else{let N=ru(R)?prs(R,h):H0(R,!0)?Irs(R.arguments[0],c):void 0;return N?(d.replaceNodeWithNodes(n,u.parent,N[0]),N[1]):(d.replaceRangeWithText(n,Z1(b.getStart(n),R.pos),"export default"),!0)}else CM(n,b.expression)&&frs(n,u,d,I);return!1}function prs(n,c){let u=Br(n.properties,d=>{switch(d.kind){case 177:case 178:case 304:case 305:return;case 303:return sr(d.name)?mrs(d.name.text,d.initializer,c):void 0;case 174:return sr(d.name)?BWr(d.name.text,[_e.createToken(95)],d,c):void 0;default:w.assertNever(d,`Convert to ES6 got invalid prop kind ${d.kind}`)}});return u&&[u,!1]}function frs(n,c,u,d){let{text:I}=c.left.name,h=d.get(I);if(h!==void 0){let b=[Fze(void 0,h,c.right),CLt([_e.createExportSpecifier(!1,h,I)])];u.replaceNodeWithNodes(n,c.parent,b)}else Crs(c,n,u)}function Irs(n,c){let u=n.text,d=c.getSymbolAtLocation(n),I=d?d.exports:k;return I.has("export=")?[[fLt(u)],!0]:I.has("default")?I.size>1?[[bWr(u),fLt(u)],!0]:[[fLt(u)],!0]:[[bWr(u)],!1]}function bWr(n){return CLt(void 0,n)}function fLt(n){return CLt([_e.createExportSpecifier(!1,void 0,"default")],n)}function Crs({left:n,right:c,parent:u},d,I){let h=n.name.text;if((PA(c)||Id(c)||rp(c))&&(!c.name||c.name.text===h)){I.replaceRange(d,{pos:n.getStart(d),end:c.getStart(d)},_e.createToken(95),{suffix:" "}),c.name||I.insertName(d,c,h);let b=Qd(u,27,d);b&&I.delete(d,b)}else I.replaceNodeRangeWithNodes(d,n.expression,Qd(n,25,d),[_e.createToken(95),_e.createToken(87)],{joiner:" ",suffix:" "})}function mrs(n,c,u){let d=[_e.createToken(95)];switch(c.kind){case 218:{let{name:h}=c;if(h&&h.text!==n)return I()}case 219:return BWr(n,d,c,u);case 231:return Ers(n,d,c,u);default:return I()}function I(){return Fze(d,_e.createIdentifier(n),ILt(c,u))}}function ILt(n,c){if(!c||!lr(on(c.keys()),d=>W2(n,d)))return n;return Na(n)?bje(n,!0,u):U_e(n,!0,u);function u(d){if(d.kind===211){let I=c.get(d);return c.delete(d),I}}}function hrs(n,c,u,d,I,h){switch(n.kind){case 206:{let b=Br(n.elements,R=>R.dotDotDotToken||R.initializer||R.propertyName&&!sr(R.propertyName)||!sr(R.name)?void 0:SWr(R.propertyName&&R.propertyName.text,R.name.text));if(b)return Mue([RV(void 0,b,c,h)])}case 207:{let b=Gze($_e(c.text,I),d);return Mue([RV(_e.createIdentifier(b),void 0,c,h),Fze(void 0,vd(n),_e.createIdentifier(b))])}case 80:return _rs(n,c,u,d,h);default:return w.assertNever(n,`Convert to ES module got invalid name kind ${n.kind}`)}}function _rs(n,c,u,d,I){let h=u.getSymbolAtLocation(n),b=new Map,R=!1,N;for(let P of d.original.get(n.text)){if(u.getSymbolAtLocation(P)!==h||P===n)continue;let{parent:Q}=P;if(fo(Q)){let{name:{text:te}}=Q;if(te==="default"){R=!0;let re=P.getText();(N??(N=new Map)).set(Q,_e.createIdentifier(re))}else{w.assert(Q.expression===P,"Didn't expect expression === use");let re=b.get(te);re===void 0&&(re=Gze(te,d),b.set(te,re)),(N??(N=new Map)).set(Q,_e.createIdentifier(re))}}else R=!0}let V=b.size===0?void 0:on(dr(b.entries(),([P,Q])=>_e.createImportSpecifier(!1,P===Q?void 0:_e.createIdentifier(P),_e.createIdentifier(Q))));return V||(R=!0),Mue([RV(R?vd(n):void 0,V,c,I)],N)}function Gze(n,c){for(;c.original.has(n)||c.additional.has(n);)n=`_${n}`;return c.additional.add(n),n}function yrs(n){let c=ec();return EWr(n,u=>c.add(u.text,u)),c}function EWr(n,c){sr(n)&&brs(n)&&c(n),n.forEachChild(u=>EWr(u,c))}function brs(n){let{parent:c}=n;switch(c.kind){case 211:return c.name!==n;case 208:return c.propertyName!==n;case 276:return c.propertyName!==n;default:return!0}}function BWr(n,c,u,d){return _e.createFunctionDeclaration(vi(c,BM(u.modifiers)),vd(u.asteriskToken),n,BM(u.typeParameters),BM(u.parameters),vd(u.type),_e.converters.convertToFunctionBlock(ILt(u.body,d)))}function Ers(n,c,u,d){return _e.createClassDeclaration(vi(c,BM(u.modifiers)),n,BM(u.typeParameters),BM(u.heritageClauses),ILt(u.members,d))}function vWr(n,c,u,d){return c==="default"?RV(_e.createIdentifier(n),void 0,u,d):RV(void 0,[SWr(c,n)],u,d)}function SWr(n,c){return _e.createImportSpecifier(!1,n!==void 0&&n!==c?_e.createIdentifier(n):void 0,_e.createIdentifier(c))}function Fze(n,c,u){return _e.createVariableStatement(n,_e.createVariableDeclarationList([_e.createVariableDeclaration(c,void 0,void 0,u)],2))}function CLt(n,c){return _e.createExportDeclaration(void 0,!1,n&&_e.createNamedExports(n),c===void 0?void 0:_e.createStringLiteral(c))}function Mue(n,c){return{newImports:n,useSitesToUnqualify:c}}var mLt="correctQualifiedNameToIndexedAccessType",wWr=[Z.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];Tg({errorCodes:wWr,getCodeActions(n){let c=TWr(n.sourceFile,n.span.start);if(!c)return;let u=Ao.ChangeTracker.with(n,I=>NWr(I,n.sourceFile,c)),d=`${c.left.text}["${c.right.text}"]`;return[ng(mLt,u,[Z.Rewrite_as_the_indexed_access_type_0,d],mLt,Z.Rewrite_all_as_indexed_access_types)]},fixIds:[mLt],getAllCodeActions:n=>Md(n,wWr,(c,u)=>{let d=TWr(u.file,u.start);d&&NWr(c,u.file,d)})});function TWr(n,c){let u=Si(Hc(n,c),c0);return w.assert(!!u,"Expected position to be owned by a qualified name."),sr(u.left)?u:void 0}function NWr(n,c,u){let d=u.right.text,I=_e.createIndexedAccessTypeNode(_e.createTypeReferenceNode(u.left,void 0),_e.createLiteralTypeNode(_e.createStringLiteral(d)));n.replaceNode(c,u,I)}var hLt=[Z.Re_exporting_a_type_when_0_is_enabled_requires_using_export_type.code],_Lt="convertToTypeOnlyExport";Tg({errorCodes:hLt,getCodeActions:function(c){let u=Ao.ChangeTracker.with(c,d=>DWr(d,RWr(c.span,c.sourceFile),c));if(u.length)return[ng(_Lt,u,Z.Convert_to_type_only_export,_Lt,Z.Convert_all_re_exported_types_to_type_only_exports)]},fixIds:[_Lt],getAllCodeActions:function(c){let u=new Map;return Md(c,hLt,(d,I)=>{let h=RWr(I,c.sourceFile);h&&D2(u,od(h.parent.parent))&&DWr(d,h,c)})}});function RWr(n,c){return $s(Hc(c,n.start).parent,l0)}function DWr(n,c,u){if(!c)return;let d=c.parent,I=d.parent,h=Brs(c,u);if(h.length===d.elements.length)n.insertModifierBefore(u.sourceFile,156,d);else{let b=_e.updateExportDeclaration(I,I.modifiers,!1,_e.updateNamedExports(d,Gt(d.elements,N=>!Ue(h,N))),I.moduleSpecifier,void 0),R=_e.createExportDeclaration(void 0,!0,_e.createNamedExports(h),I.moduleSpecifier,void 0);n.replaceNode(u.sourceFile,I,b,{leadingTriviaOption:Ao.LeadingTriviaOption.IncludeAll,trailingTriviaOption:Ao.TrailingTriviaOption.Exclude}),n.insertNodeAfter(u.sourceFile,I,R)}}function Brs(n,c){let u=n.parent;if(u.elements.length===1)return u.elements;let d=sFt(By(u),c.program.getSemanticDiagnostics(c.sourceFile,c.cancellationToken));return Gt(u.elements,I=>{var h;return I===n||((h=iFt(I,d))==null?void 0:h.code)===hLt[0]})}var xWr=[Z._0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled.code,Z._0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled.code],Zze="convertToTypeOnlyImport";Tg({errorCodes:xWr,getCodeActions:function(c){var u;let d=kWr(c.sourceFile,c.span.start);if(d){let I=Ao.ChangeTracker.with(c,R=>VFe(R,c.sourceFile,d)),h=d.kind===276&&hI(d.parent.parent.parent)&&GWr(d,c.sourceFile,c.program)?Ao.ChangeTracker.with(c,R=>VFe(R,c.sourceFile,d.parent.parent.parent)):void 0,b=ng(Zze,I,d.kind===276?[Z.Use_type_0,((u=d.propertyName)==null?void 0:u.text)??d.name.text]:Z.Use_import_type,Zze,Z.Fix_all_with_type_only_imports);return lr(h)?[dT(Zze,h,Z.Use_import_type),b]:[b]}},fixIds:[Zze],getAllCodeActions:function(c){let u=new Set;return Md(c,xWr,(d,I)=>{let h=kWr(I.file,I.start);h?.kind===272&&!u.has(h)?(VFe(d,I.file,h),u.add(h)):h?.kind===276&&hI(h.parent.parent.parent)&&!u.has(h.parent.parent.parent)&&GWr(h,I.file,c.program)?(VFe(d,I.file,h.parent.parent.parent),u.add(h.parent.parent.parent)):h?.kind===276&&VFe(d,I.file,h)})}});function kWr(n,c){let{parent:u}=Hc(n,c);return yy(u)||hI(u)&&u.importClause?u:void 0}function GWr(n,c,u){if(n.parent.parent.name)return!1;let d=n.parent.elements.filter(h=>!h.isTypeOnly);if(d.length===1)return!0;let I=u.getTypeChecker();for(let h of d)if(Yp.Core.eachSymbolReferenceInFile(h.name,I,c,R=>{let N=I.getSymbolAtLocation(R);return!!N&&I.symbolIsValue(N)||!xZ(R)}))return!1;return!0}function VFe(n,c,u){var d;if(yy(u))n.replaceNode(c,u,_e.updateImportSpecifier(u,!0,u.propertyName,u.name));else{let I=u.importClause;if(I.name&&I.namedBindings)n.replaceNodeWithNodes(c,u,[_e.createImportDeclaration(BM(u.modifiers,!0),_e.createImportClause(!0,vd(I.name,!0),void 0),vd(u.moduleSpecifier,!0),vd(u.attributes,!0)),_e.createImportDeclaration(BM(u.modifiers,!0),_e.createImportClause(!0,void 0,vd(I.namedBindings,!0)),vd(u.moduleSpecifier,!0),vd(u.attributes,!0))]);else{let h=((d=I.namedBindings)==null?void 0:d.kind)===275?_e.updateNamedImports(I.namedBindings,Ar(I.namedBindings.elements,R=>_e.updateImportSpecifier(R,!1,R.propertyName,R.name))):I.namedBindings,b=_e.updateImportDeclaration(u,u.modifiers,_e.updateImportClause(I,!0,I.name,h),u.moduleSpecifier,u.attributes);n.replaceNode(c,u,b)}}}var yLt="convertTypedefToType",FWr=[Z.JSDoc_typedef_may_be_converted_to_TypeScript_type.code];Tg({fixIds:[yLt],errorCodes:FWr,getCodeActions(n){let c=PZ(n.host,n.formatContext.options),u=Hc(n.sourceFile,n.span.start);if(!u)return;let d=Ao.ChangeTracker.with(n,I=>ZWr(I,u,n.sourceFile,c));if(d.length>0)return[ng(yLt,d,Z.Convert_typedef_to_TypeScript_type,yLt,Z.Convert_all_typedef_to_TypeScript_types)]},getAllCodeActions:n=>Md(n,FWr,(c,u)=>{let d=PZ(n.host,n.formatContext.options),I=Hc(u.file,u.start);I&&ZWr(c,I,u.file,d,!0)})});function ZWr(n,c,u,d,I=!1){if(!I4(c))return;let h=Srs(c);if(!h)return;let b=c.parent,{leftSibling:R,rightSibling:N}=vrs(c),V=b.getStart(),P="";!R&&b.comment&&(V=LWr(b,b.getStart(),c.getStart()),P=`${d} */${d}`),R&&(I&&I4(R)?(V=c.getStart(),P=""):(V=LWr(b,R.getStart(),c.getStart()),P=`${d} */${d}`));let Q=b.getEnd(),te="";N&&(I&&I4(N)?(Q=N.getStart(),te=`${d}${d}`):(Q=N.getStart(),te=`${d}/**${d} * `)),n.replaceRange(u,{pos:V,end:Q},h,{prefix:P,suffix:te})}function vrs(n){let c=n.parent,u=c.getChildCount()-1,d=c.getChildren().findIndex(b=>b.getStart()===n.getStart()&&b.getEnd()===n.getEnd()),I=d>0?c.getChildAt(d-1):void 0,h=d0;I--)if(!/[*/\s]/g.test(d.substring(I-1,I)))return c+I;return u}function Srs(n){var c;let{typeExpression:u}=n;if(!u)return;let d=(c=n.name)==null?void 0:c.getText();if(d){if(u.kind===322)return wrs(d,u);if(u.kind===309)return Trs(d,u)}}function wrs(n,c){let u=VWr(c);if(lr(u))return _e.createInterfaceDeclaration(void 0,n,void 0,void 0,u)}function Trs(n,c){let u=vd(c.type);if(u)return _e.createTypeAliasDeclaration(void 0,_e.createIdentifier(n),void 0,u)}function VWr(n){let c=n.jsDocPropertyTags;return lr(c)?tr(c,d=>{var I;let h=Nrs(d),b=(I=d.typeExpression)==null?void 0:I.type,R=d.isBracketed,N;if(b&&f4(b)){let V=VWr(b);N=_e.createTypeLiteralNode(V)}else b&&(N=vd(b));if(N&&h){let V=R?_e.createToken(58):void 0;return _e.createPropertySignature(void 0,h,V,N)}}):void 0}function Nrs(n){return n.name.kind===80?n.name.text:n.name.right.text}function Rrs(n){return _y(n)?Fr(n.jsDoc,c=>{var u;return(u=c.tags)==null?void 0:u.filter(d=>I4(d))}):[]}var bLt="convertLiteralTypeToMappedType",WWr=[Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0.code];Tg({errorCodes:WWr,getCodeActions:function(c){let{sourceFile:u,span:d}=c,I=PWr(u,d.start);if(!I)return;let{name:h,constraint:b}=I,R=Ao.ChangeTracker.with(c,N=>OWr(N,u,I));return[ng(bLt,R,[Z.Convert_0_to_1_in_0,b,h],bLt,Z.Convert_all_type_literals_to_mapped_type)]},fixIds:[bLt],getAllCodeActions:n=>Md(n,WWr,(c,u)=>{let d=PWr(u.file,u.start);d&&OWr(c,u.file,d)})});function PWr(n,c){let u=Hc(n,c);if(sr(u)){let d=ps(u.parent.parent,i_),I=u.getText(n);return{container:ps(d.parent,Se),typeNode:d.type,constraint:I,name:I==="K"?"P":"K"}}}function OWr(n,c,{container:u,typeNode:d,constraint:I,name:h}){n.replaceNode(c,u,_e.createMappedTypeNode(void 0,_e.createTypeParameterDeclaration(void 0,h,_e.createTypeReferenceNode(I)),void 0,void 0,d,void 0))}var QWr=[Z.Class_0_incorrectly_implements_interface_1.code,Z.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass.code],ELt="fixClassIncorrectlyImplementsInterface";Tg({errorCodes:QWr,getCodeActions(n){let{sourceFile:c,span:u}=n,d=MWr(c,u.start);return tr(YX(d),I=>{let h=Ao.ChangeTracker.with(n,b=>YWr(n,I,c,d,b,n.preferences));return h.length===0?void 0:ng(ELt,h,[Z.Implement_interface_0,I.getText(c)],ELt,Z.Implement_all_unimplemented_interfaces)})},fixIds:[ELt],getAllCodeActions(n){let c=new Map;return Md(n,QWr,(u,d)=>{let I=MWr(d.file,d.start);if(D2(c,od(I)))for(let h of YX(I))YWr(n,h,d.file,I,u,n.preferences)})}});function MWr(n,c){return w.checkDefined(Km(Hc(n,c)),"There should be a containing class")}function HWr(n){return!n.valueDeclaration||!(R_(n.valueDeclaration)&2)}function YWr(n,c,u,d,I,h){let b=n.program.getTypeChecker(),R=Drs(d,b),N=b.getTypeAtLocation(c),P=b.getPropertiesOfType(N).filter(gh(HWr,de=>!R.has(de.escapedName))),Q=b.getTypeAtLocation(d),te=be(d.members,de=>Df(de));Q.getNumberIndexType()||ue(N,1),Q.getStringIndexType()||ue(N,0);let re=RM(u,n.program,h,n.host);p9t(d,P,u,n,h,re,de=>Ae(u,d,de)),re.writeFixes(I);function ue(de,Be){let Fe=b.getIndexInfoOfType(de,Be);Fe&&Ae(u,d,b.indexInfoToIndexSignatureDeclaration(Fe,d,void 0,jte(n)))}function Ae(de,Be,Fe){te?I.insertNodeAfter(de,te,Fe):I.insertMemberAtStart(de,Be,Fe)}}function Drs(n,c){let u=xv(n);if(!u)return xu();let d=c.getTypeAtLocation(u),I=c.getPropertiesOfType(d);return xu(I.filter(HWr))}var XWr="import",JWr="fixMissingImport",UWr=[Z.Cannot_find_name_0.code,Z.Cannot_find_name_0_Did_you_mean_1.code,Z.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,Z.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,Z.Cannot_find_namespace_0.code,Z._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code,Z._0_only_refers_to_a_type_but_is_being_used_as_a_value_here.code,Z.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer.code,Z._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type.code,Z.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery.code,Z.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later.code,Z.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom.code,Z.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,Z.Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function.code,Z.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,Z.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,Z.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode.code,Z.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,Z.Cannot_find_namespace_0_Did_you_mean_1.code];Tg({errorCodes:UWr,getCodeActions(n){let{errorCode:c,preferences:u,sourceFile:d,span:I,program:h}=n,b=t3r(n,c,I.start,!0);if(b)return b.map(({fix:R,symbolName:N,errorIdentifierText:V})=>vLt(n,d,N,R,N!==V,h,u))},fixIds:[JWr],getAllCodeActions:n=>{let{sourceFile:c,program:u,preferences:d,host:I,cancellationToken:h}=n,b=KWr(c,u,!0,d,I,h);return c7(n,UWr,R=>b.addImportFromDiagnostic(R,n)),a7(Ao.ChangeTracker.with(n,b.writeFixes))}});function RM(n,c,u,d,I){return KWr(n,c,!1,u,d,I)}function KWr(n,c,u,d,I,h){let b=c.getCompilerOptions(),R=[],N=[],V=new Map,P=new Set,Q=new Set,te=new Map;return{addImportFromDiagnostic:Ae,addImportFromExportedSymbol:de,writeFixes:Me,hasFixes:lt,addImportForUnresolvedIdentifier:ue,addImportForNonExistentExport:Be,removeExistingImport:Fe,addVerbatimImport:re};function re(Le){Q.add(Le)}function ue(Le,je,st){let nt=Qrs(Le,je,st);!nt||!nt.length||Ne(qs(nt))}function Ae(Le,je){let st=t3r(je,Le.code,Le.start,u);!st||!st.length||Ne(qs(st))}function de(Le,je,st){var nt;let qe=w.checkDefined(Le.parent),it=uFe(Le,sA(b)),It=c.getTypeChecker(),dt=It.getMergedSymbol(ph(Le,It)),Tt=qWr(n,dt,it,qe,!1,c,I,d,h),St=PFe(n,c),He=jWr(n,w.checkDefined(Tt),c,void 0,!!je,St,I,d);if(He){let ht=((nt=$s(st?.name,sr))==null?void 0:nt.text)??it;st&&H9(st)&&(He.kind===3||He.kind===2)&&He.addAsTypeOnly===1&&(He={...He,addAsTypeOnly:2}),Ne({fix:He,symbolName:ht??it,errorIdentifierText:void 0})}}function Be(Le,je,st,nt,qe){let it=c.getSourceFile(je),It=PFe(n,c);if(it&&it.symbol){let{fixes:dt}=WFe([{exportKind:st,isFromPackageJson:!1,moduleFileName:je,moduleSymbol:it.symbol,targetFlags:nt}],void 0,qe,It,c,n,I,d);dt.length&&Ne({fix:dt[0],symbolName:Le,errorIdentifierText:Le})}else{let dt=CFe(je,99,c,I),Tt=dP.getLocalModuleSpecifierBetweenFileNames(n,je,b,r7(c,I)),St=Vze(dt,st,b),He=Lze(qe,!0,void 0,nt,c.getTypeChecker(),b);Ne({fix:{kind:3,moduleSpecifierKind:"relative",moduleSpecifier:Tt,importKind:St,addAsTypeOnly:He,useRequire:It},symbolName:Le,errorIdentifierText:Le})}}function Fe(Le){Le.kind===273&&w.assertIsDefined(Le.name,"ImportClause should have a name if it's being removed"),P.add(Le)}function Ne(Le){var je,st;let{fix:nt,symbolName:qe}=Le;switch(nt.kind){case 0:R.push(nt);break;case 1:N.push(nt);break;case 2:{let{importClauseOrBindingPattern:Tt,importKind:St,addAsTypeOnly:He}=nt,ht=V.get(Tt);if(ht||V.set(Tt,ht={importClauseOrBindingPattern:Tt,defaultImport:void 0,namedImports:new Map}),St===0){let Et=ht?.namedImports.get(qe);ht.namedImports.set(qe,it(Et,He))}else w.assert(ht.defaultImport===void 0||ht.defaultImport.name===qe,"(Add to Existing) Default import should be missing or match symbolName"),ht.defaultImport={name:qe,addAsTypeOnly:it((je=ht.defaultImport)==null?void 0:je.addAsTypeOnly,He)};break}case 3:{let{moduleSpecifier:Tt,importKind:St,useRequire:He,addAsTypeOnly:ht}=nt,Et=It(Tt,St,He,ht);switch(w.assert(Et.useRequire===He,"(Add new) Tried to add an `import` and a `require` for the same module"),St){case 1:w.assert(Et.defaultImport===void 0||Et.defaultImport.name===qe,"(Add new) Default import should be missing or match symbolName"),Et.defaultImport={name:qe,addAsTypeOnly:it((st=Et.defaultImport)==null?void 0:st.addAsTypeOnly,ht)};break;case 0:let Kt=(Et.namedImports||(Et.namedImports=new Map)).get(qe);Et.namedImports.set(qe,it(Kt,ht));break;case 3:if(b.verbatimModuleSyntax){let Nt=(Et.namedImports||(Et.namedImports=new Map)).get(qe);Et.namedImports.set(qe,it(Nt,ht))}else w.assert(Et.namespaceLikeImport===void 0||Et.namespaceLikeImport.name===qe,"Namespacelike import shoudl be missing or match symbolName"),Et.namespaceLikeImport={importKind:St,name:qe,addAsTypeOnly:ht};break;case 2:w.assert(Et.namespaceLikeImport===void 0||Et.namespaceLikeImport.name===qe,"Namespacelike import shoudl be missing or match symbolName"),Et.namespaceLikeImport={importKind:St,name:qe,addAsTypeOnly:ht};break}break}case 4:break;default:w.assertNever(nt,`fix wasn't never - got kind ${nt.kind}`)}function it(Tt,St){return Math.max(Tt??0,St)}function It(Tt,St,He,ht){let Et=dt(Tt,!0),Kt=dt(Tt,!1),Nt=te.get(Et),Lt=te.get(Kt),kt={defaultImport:void 0,namedImports:void 0,namespaceLikeImport:void 0,useRequire:He};return St===1&&ht===2?Nt||(te.set(Et,kt),kt):ht===1&&(Nt||Lt)?Nt||Lt:Lt||(te.set(Kt,kt),kt)}function dt(Tt,St){return`${St?1:0}|${Tt}`}}function Me(Le,je){var st,nt;let qe;jR(n)&&n.imports.length===0&&je!==void 0?qe=je:qe=P2(n,d);for(let dt of R)SLt(Le,n,dt);for(let dt of N)u3r(Le,n,dt,qe);let it;if(P.size){w.assert(jR(n),"Cannot remove imports from a future source file");let dt=new Set(tr([...P],Et=>Si(Et,hI))),Tt=new Set(tr([...P],Et=>Si(Et,nee))),St=[...dt].filter(Et=>{var Kt,Nt,Lt;return!V.has(Et.importClause)&&(!((Kt=Et.importClause)!=null&&Kt.name)||P.has(Et.importClause))&&(!$s((Nt=Et.importClause)==null?void 0:Nt.namedBindings,Xx)||P.has(Et.importClause.namedBindings))&&(!$s((Lt=Et.importClause)==null?void 0:Lt.namedBindings,TN)||he(Et.importClause.namedBindings.elements,kt=>P.has(kt)))}),He=[...Tt].filter(Et=>(Et.name.kind!==206||!V.has(Et.name))&&(Et.name.kind!==206||he(Et.name.elements,Kt=>P.has(Kt)))),ht=[...dt].filter(Et=>{var Kt,Nt;return((Kt=Et.importClause)==null?void 0:Kt.namedBindings)&&St.indexOf(Et)===-1&&!((Nt=V.get(Et.importClause))!=null&&Nt.namedImports)&&(Et.importClause.namedBindings.kind===274||he(Et.importClause.namedBindings.elements,Lt=>P.has(Lt)))});for(let Et of[...St,...He])Le.delete(n,Et);for(let Et of ht)Le.replaceNode(n,Et.importClause,_e.updateImportClause(Et.importClause,Et.importClause.isTypeOnly,Et.importClause.name,void 0));for(let Et of P){let Kt=Si(Et,hI);Kt&&St.indexOf(Kt)===-1&&ht.indexOf(Kt)===-1?Et.kind===273?Le.delete(n,Et.name):(w.assert(Et.kind===276,"NamespaceImport should have been handled earlier"),(st=V.get(Kt.importClause))!=null&&st.namedImports?(it??(it=new Set)).add(Et):Le.delete(n,Et)):Et.kind===208?(nt=V.get(Et.parent))!=null&&nt.namedImports?(it??(it=new Set)).add(Et):Le.delete(n,Et):Et.kind===271&&Le.delete(n,Et)}}V.forEach(({importClauseOrBindingPattern:dt,defaultImport:Tt,namedImports:St})=>{l3r(Le,n,dt,Tt,on(St.entries(),([He,ht])=>({addAsTypeOnly:ht,name:He})),it,d)});let It;te.forEach(({useRequire:dt,defaultImport:Tt,namedImports:St,namespaceLikeImport:He},ht)=>{let Et=ht.slice(2),Nt=(dt?d3r:A3r)(Et,qe,Tt,St&&on(St.entries(),([Lt,kt])=>({addAsTypeOnly:kt,name:Lt})),He,b,d);It=Vs(It,Nt)}),It=Vs(It,De()),It&&uje(Le,n,It,!0,d)}function De(){if(!Q.size)return;let Le=new Set(tr([...Q],st=>Si(st,hI))),je=new Set(tr([...Q],st=>Si(st,Y8)));return[...tr([...Q],st=>st.kind===271?vd(st,!0):void 0),...[...Le].map(st=>{var nt;return Q.has(st)?vd(st,!0):vd(_e.updateImportDeclaration(st,st.modifiers,st.importClause&&_e.updateImportClause(st.importClause,st.importClause.isTypeOnly,Q.has(st.importClause)?st.importClause.name:void 0,Q.has(st.importClause.namedBindings)?st.importClause.namedBindings:(nt=$s(st.importClause.namedBindings,TN))!=null&&nt.elements.some(qe=>Q.has(qe))?_e.updateNamedImports(st.importClause.namedBindings,st.importClause.namedBindings.elements.filter(qe=>Q.has(qe))):void 0),st.moduleSpecifier,st.attributes),!0)}),...[...je].map(st=>Q.has(st)?vd(st,!0):vd(_e.updateVariableStatement(st,st.modifiers,_e.updateVariableDeclarationList(st.declarationList,tr(st.declarationList.declarations,nt=>Q.has(nt)?nt:_e.updateVariableDeclaration(nt,nt.name.kind===206?_e.updateObjectBindingPattern(nt.name,nt.name.elements.filter(qe=>Q.has(qe))):nt.name,nt.exclamationToken,nt.type,nt.initializer)))),!0))]}function lt(){return R.length>0||N.length>0||V.size>0||te.size>0||Q.size>0||P.size>0}}function xrs(n,c,u,d){let I=Mte(n,d,u),h=$Wr(c.getTypeChecker(),n,c.getCompilerOptions());return{getModuleSpecifierForBestExportInfo:b};function b(R,N,V,P){let{fixes:Q,computedWithoutCacheCount:te}=WFe(R,N,V,!1,c,n,u,d,h,P),re=n3r(Q,n,c,I,u,d);return re&&{...re,computedWithoutCacheCount:te}}}function krs(n,c,u,d,I,h,b,R,N,V,P,Q){let te;u?(te=t0e(d,b,R,P,Q).get(d.path,u),w.assertIsDefined(te,"Some exportInfo should match the specified exportMapKey")):(te=P0(R2(c.name))?[Frs(n,I,c,R,b)]:qWr(d,n,I,c,h,R,b,P,Q),w.assertIsDefined(te,"Some exportInfo should match the specified symbol / moduleSymbol"));let re=PFe(d,R),ue=xZ(Hc(d,V)),Ae=w.checkDefined(jWr(d,te,R,V,ue,re,b,P));return{moduleSpecifier:Ae.moduleSpecifier,codeAction:zWr(vLt({host:b,formatContext:N,preferences:P},d,I,Ae,!1,R,P))}}function Grs(n,c,u,d,I,h){let b=u.getCompilerOptions(),R=xg(BLt(n,u.getTypeChecker(),c,b)),N=a3r(n,c,R,u),V=R!==c.text;return N&&zWr(vLt({host:d,formatContext:I,preferences:h},n,R,N,V,u,h))}function jWr(n,c,u,d,I,h,b,R){let N=Mte(n,R,b);return n3r(WFe(c,d,I,h,u,n,b,R).fixes,n,u,N,b,R)}function zWr({description:n,changes:c,commands:u}){return{description:n,changes:c,commands:u}}function qWr(n,c,u,d,I,h,b,R,N){let V=e3r(h,b);return t0e(n,b,h,R,N).search(n.path,I,P=>P===u,P=>{if(ph(P[0].symbol,V(P[0].isFromPackageJson))===c&&P.some(Q=>Q.moduleSymbol===d||Q.symbol.parent===d))return P})}function Frs(n,c,u,d,I){var h,b;let R=V(d.getTypeChecker(),!1);if(R)return R;let N=(b=(h=I.getPackageJsonAutoImportProvider)==null?void 0:h.call(I))==null?void 0:b.getTypeChecker();return w.checkDefined(N&&V(N,!0),"Could not find symbol in specified module for code actions");function V(P,Q){let te=mFe(u,P);if(te&&ph(te.symbol,P)===n)return{symbol:te.symbol,moduleSymbol:u,moduleFileName:void 0,exportKind:te.exportKind,targetFlags:ph(n,P).flags,isFromPackageJson:Q};let re=P.tryGetMemberInModuleExportsAndProperties(c,u);if(re&&ph(re,P)===n)return{symbol:re,moduleSymbol:u,moduleFileName:void 0,exportKind:0,targetFlags:ph(n,P).flags,isFromPackageJson:Q}}}function WFe(n,c,u,d,I,h,b,R,N=jR(h)?$Wr(I.getTypeChecker(),h,I.getCompilerOptions()):void 0,V){let P=I.getTypeChecker(),Q=N?Fr(n,N.getImportsForExportInfo):v,te=c!==void 0&&Zrs(Q,c),re=Vrs(Q,u,P,I.getCompilerOptions());if(re)return{computedWithoutCacheCount:0,fixes:[...te?[te]:v,re]};let{fixes:ue,computedWithoutCacheCount:Ae=0}=Prs(n,Q,I,h,c,u,d,b,R,V);return{computedWithoutCacheCount:Ae,fixes:[...te?[te]:v,...ue]}}function Zrs(n,c){return le(n,({declaration:u,importKind:d})=>{var I;if(d!==0)return;let h=Lrs(u),b=h&&((I=j8(u))==null?void 0:I.text);if(b)return{kind:0,namespacePrefix:h,usagePosition:c,moduleSpecifierKind:void 0,moduleSpecifier:b}})}function Lrs(n){var c,u,d;switch(n.kind){case 260:return(c=$s(n.name,sr))==null?void 0:c.text;case 271:return n.name.text;case 351:case 272:return(d=$s((u=n.importClause)==null?void 0:u.namedBindings,Xx))==null?void 0:d.name.text;default:return w.assertNever(n)}}function Lze(n,c,u,d,I,h){return n?u&&h.verbatimModuleSyntax&&(!(d&111551)||I.getTypeOnlyAliasDeclaration(u))?2:1:4}function Vrs(n,c,u,d){let I;for(let b of n){let R=h(b);if(!R)continue;let N=H9(R.importClauseOrBindingPattern);if(R.addAsTypeOnly!==4&&N||R.addAsTypeOnly===4&&!N)return R;I??(I=R)}return I;function h({declaration:b,importKind:R,symbol:N,targetFlags:V}){if(R===3||R===2||b.kind===271)return;if(b.kind===260)return(R===0||R===1)&&b.name.kind===206?{kind:2,importClauseOrBindingPattern:b.name,importKind:R,moduleSpecifierKind:void 0,moduleSpecifier:b.initializer.arguments[0].text,addAsTypeOnly:4}:void 0;let{importClause:P}=b;if(!P||!JA(b.moduleSpecifier))return;let{name:Q,namedBindings:te}=P;if(P.isTypeOnly&&!(R===0&&te))return;let re=Lze(c,!1,N,V,u,d);if(!(R===1&&(Q||re===2&&te))&&!(R===0&&te?.kind===274))return{kind:2,importClauseOrBindingPattern:P,importKind:R,moduleSpecifierKind:void 0,moduleSpecifier:b.moduleSpecifier.text,addAsTypeOnly:re}}}function $Wr(n,c,u){let d;for(let I of c.imports){let h=OX(I);if(nee(h.parent)){let b=n.resolveExternalModuleName(I);b&&(d||(d=ec())).add(Gg(b),h.parent)}else if(h.kind===272||h.kind===271||h.kind===351){let b=n.getSymbolAtLocation(I);b&&(d||(d=ec())).add(Gg(b),h)}}return{getImportsForExportInfo:({moduleSymbol:I,exportKind:h,targetFlags:b,symbol:R})=>{let N=d?.get(Gg(I));if(!N||i0(c)&&!(b&111551)&&!he(N,DN))return v;let V=Vze(c,h,u);return N.map(P=>({declaration:P,importKind:V,symbol:R,targetFlags:b}))}}}function PFe(n,c){if(!hN(n.fileName))return!1;if(n.commonJsModuleIndicator&&!n.externalModuleIndicator)return!0;if(n.externalModuleIndicator&&!n.commonJsModuleIndicator)return!1;let u=c.getCompilerOptions();if(u.configFile)return D_(u)<5;if(n.impliedNodeFormat===1)return!0;if(n.impliedNodeFormat===99)return!1;for(let d of c.getSourceFiles())if(!(d===n||!i0(d)||c.isSourceFileFromExternalLibrary(d))){if(d.commonJsModuleIndicator&&!d.externalModuleIndicator)return!0;if(d.externalModuleIndicator&&!d.commonJsModuleIndicator)return!1}return!0}function e3r(n,c){return ii(u=>u?c.getPackageJsonAutoImportProvider().getTypeChecker():n.getTypeChecker())}function Wrs(n,c,u,d,I,h,b,R,N){let V=hN(c.fileName),P=n.getCompilerOptions(),Q=r7(n,b),te=e3r(n,b),re=o0(P),ue=JGe(re),Ae=N?Fe=>dP.tryGetModuleSpecifiersFromCache(Fe.moduleSymbol,c,Q,R):(Fe,Ne)=>dP.getModuleSpecifiersWithCacheInfo(Fe.moduleSymbol,Ne,P,c,Q,R,void 0,!0),de=0,Be=Fr(h,(Fe,Ne)=>{let Me=te(Fe.isFromPackageJson),{computedWithoutCache:De,moduleSpecifiers:lt,kind:Le}=Ae(Fe,Me)??{},je=!!(Fe.targetFlags&111551),st=Lze(d,!0,Fe.symbol,Fe.targetFlags,Me,P);return de+=De?1:0,tr(lt,nt=>{if(ue&&AP(nt))return;if(!je&&V&&u!==void 0)return{kind:1,moduleSpecifierKind:Le,moduleSpecifier:nt,usagePosition:u,exportInfo:Fe,isReExport:Ne>0};let qe=Vze(c,Fe.exportKind,P),it;if(u!==void 0&&qe===3&&Fe.exportKind===0){let It=Me.resolveExternalModuleSymbol(Fe.moduleSymbol),dt;It!==Fe.moduleSymbol&&(dt=Pje(It,Me,P,!1,vl)),dt||(dt=Zue(Fe.moduleSymbol,sA(P),!1)),it={namespacePrefix:dt,usagePosition:u}}return{kind:3,moduleSpecifierKind:Le,moduleSpecifier:nt,importKind:qe,useRequire:I,addAsTypeOnly:st,exportInfo:Fe,isReExport:Ne>0,qualification:it}})});return{computedWithoutCacheCount:de,fixes:Be}}function Prs(n,c,u,d,I,h,b,R,N,V){let P=le(c,Q=>Ors(Q,h,b,u.getTypeChecker(),u.getCompilerOptions()));return P?{fixes:[P]}:Wrs(u,d,I,h,b,n,R,N,V)}function Ors({declaration:n,importKind:c,symbol:u,targetFlags:d},I,h,b,R){var N;let V=(N=j8(n))==null?void 0:N.text;if(V){let P=h?4:Lze(I,!0,u,d,b,R);return{kind:3,moduleSpecifierKind:void 0,moduleSpecifier:V,importKind:c,addAsTypeOnly:P,useRequire:h}}}function t3r(n,c,u,d){let I=Hc(n.sourceFile,u),h;if(c===Z._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code)h=Xrs(n,I);else if(sr(I))if(c===Z._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type.code){let R=xg(BLt(n.sourceFile,n.program.getTypeChecker(),I,n.program.getCompilerOptions())),N=a3r(n.sourceFile,I,R,n.program);return N&&[{fix:N,symbolName:R,errorIdentifierText:I.text}]}else h=o3r(n,I,d);else return;let b=Mte(n.sourceFile,n.preferences,n.host);return h&&r3r(h,n.sourceFile,n.program,b,n.host,n.preferences)}function r3r(n,c,u,d,I,h){let b=R=>AA(R,I.getCurrentDirectory(),Lx(I));return mg(n,(R,N)=>DA(!!R.isJsxNamespaceFix,!!N.isJsxNamespaceFix)||Jl(R.fix.kind,N.fix.kind)||i3r(R.fix,N.fix,c,u,h,d.allowsImportingSpecifier,b))}function Qrs(n,c,u){let d=o3r(n,c,u),I=Mte(n.sourceFile,n.preferences,n.host);return d&&r3r(d,n.sourceFile,n.program,I,n.host,n.preferences)}function n3r(n,c,u,d,I,h){if(lr(n))return n[0].kind===0||n[0].kind===2?n[0]:n.reduce((b,R)=>i3r(R,b,c,u,h,d.allowsImportingSpecifier,N=>AA(N,I.getCurrentDirectory(),Lx(I)))===-1?R:b)}function i3r(n,c,u,d,I,h,b){return n.kind!==0&&c.kind!==0?DA(c.moduleSpecifierKind!=="node_modules"||h(c.moduleSpecifier),n.moduleSpecifierKind!=="node_modules"||h(n.moduleSpecifier))||Mrs(n,c,I)||Yrs(n.moduleSpecifier,c.moduleSpecifier,u,d)||DA(s3r(n,u.path,b),s3r(c,u.path,b))||Yee(n.moduleSpecifier,c.moduleSpecifier):0}function Mrs(n,c,u){return u.importModuleSpecifierPreference==="non-relative"||u.importModuleSpecifierPreference==="project-relative"?DA(n.moduleSpecifierKind==="relative",c.moduleSpecifierKind==="relative"):0}function s3r(n,c,u){var d;if(n.isReExport&&((d=n.exportInfo)!=null&&d.moduleFileName)&&Hrs(n.exportInfo.moduleFileName)){let I=u(oa(n.exportInfo.moduleFileName));return uc(c,I)}return!1}function Hrs(n){return kA(n,[".js",".jsx",".d.ts",".ts",".tsx"],!0)==="index"}function Yrs(n,c,u,d){return uc(n,"node:")&&!uc(c,"node:")?pFe(u,d)?-1:1:uc(c,"node:")&&!uc(n,"node:")?pFe(u,d)?1:-1:0}function Xrs({sourceFile:n,program:c,host:u,preferences:d},I){let h=c.getTypeChecker(),b=Jrs(I,h);if(!b)return;let R=h.getAliasedSymbol(b),N=b.name,V=[{symbol:b,moduleSymbol:R,moduleFileName:void 0,exportKind:3,targetFlags:R.flags,isFromPackageJson:!1}],P=PFe(n,c);return WFe(V,void 0,!1,P,c,n,u,d).fixes.map(te=>{var re;return{fix:te,symbolName:N,errorIdentifierText:(re=$s(I,sr))==null?void 0:re.text}})}function Jrs(n,c){let u=sr(n)?c.getSymbolAtLocation(n):void 0;if(jce(u))return u;let{parent:d}=n;if(Um(d)&&d.tagName===n||p4(d)){let I=c.resolveName(c.getJsxNamespace(d),Um(d)?n:d,111551,!1);if(jce(I))return I}}function Vze(n,c,u,d){if(u.verbatimModuleSyntax&&(D_(u)===1||n.impliedNodeFormat===1))return 3;switch(c){case 0:return 0;case 1:return 1;case 2:return zrs(n,u,!!d);case 3:return Urs(n,u,!!d);default:return w.assertNever(c)}}function Urs(n,c,u){if(K5(c))return 1;let d=D_(c);switch(d){case 2:case 1:case 3:return hN(n.fileName)&&(n.externalModuleIndicator||u)?2:3;case 4:case 5:case 6:case 7:case 99:case 0:case 200:return 2;case 100:case 199:return n.impliedNodeFormat===99?2:3;default:return w.assertNever(d,`Unexpected moduleKind ${d}`)}}function o3r({sourceFile:n,program:c,cancellationToken:u,host:d,preferences:I},h,b){let R=c.getTypeChecker(),N=c.getCompilerOptions();return Fr(BLt(n,R,h,N),V=>{if(V==="default")return;let P=xZ(h),Q=PFe(n,c),te=jrs(V,WX(h),E4(h),u,n,c,b,d,I);return on(Or(te.values(),re=>WFe(re,h.getStart(n),P,Q,c,n,d,I).fixes),re=>({fix:re,symbolName:V,errorIdentifierText:h.text,isJsxNamespaceFix:V!==h.text}))})}function a3r(n,c,u,d){let I=d.getTypeChecker(),h=I.resolveName(u,c,111551,!0);if(!h)return;let b=I.getTypeOnlyAliasDeclaration(h);if(!(!b||ls(b)!==n))return{kind:4,typeOnlyAliasDeclaration:b}}function BLt(n,c,u,d){let I=u.parent;if((Um(I)||AM(I))&&I.tagName===u&&Fje(d.jsx)){let h=c.getJsxNamespace(n);if(Krs(h,u,c))return!UX(u.text)&&!c.resolveName(u.text,u,111551,!1)?[u.text,h]:[h]}return[u.text]}function Krs(n,c,u){if(UX(c.text))return!0;let d=u.resolveName(n,c,111551,!0);return!d||lr(d.declarations,Nx)&&!(d.flags&111551)}function jrs(n,c,u,d,I,h,b,R,N){var V;let P=ec(),Q=Mte(I,N,R),te=(V=R.getModuleSpecifierCache)==null?void 0:V.call(R),re=ii(Ae=>r7(Ae?R.getPackageJsonAutoImportProvider():h,R));function ue(Ae,de,Be,Fe,Ne,Me){let De=re(Me);if(de&&Vje(Ne,I,de,N,Q,De,te)||!de&&Q.allowsImportingAmbientModule(Ae,De)){let lt=Ne.getTypeChecker();P.add(UGt(Be,lt).toString(),{symbol:Be,moduleSymbol:Ae,moduleFileName:de?.fileName,exportKind:Fe,targetFlags:ph(Be,lt).flags,isFromPackageJson:Me})}}return Wje(h,R,N,b,(Ae,de,Be,Fe)=>{let Ne=Be.getTypeChecker();d.throwIfCancellationRequested();let Me=Be.getCompilerOptions(),De=mFe(Ae,Ne);De&&f3r(Ne.getSymbolFlags(De.symbol),u)&&Pje(De.symbol,Ne,Me,c,Le=>Le===n)&&ue(Ae,de,De.symbol,De.exportKind,Be,Fe);let lt=Ne.tryGetMemberInModuleExportsAndProperties(n,Ae);lt&&f3r(Ne.getSymbolFlags(lt),u)&&ue(Ae,de,lt,0,Be,Fe)}),P}function zrs(n,c,u){let d=K5(c),I=hN(n.fileName);if(!I&&D_(c)>=5)return d?1:2;if(I)return n.externalModuleIndicator||u?d?1:2:3;for(let h of n.statements??v)if(mm(h)&&!Tf(h.moduleReference))return 3;return d?1:3}function vLt(n,c,u,d,I,h,b){let R,N=Ao.ChangeTracker.with(n,V=>{R=qrs(V,c,u,d,I,h,b)});return ng(XWr,N,R,JWr,Z.Add_all_missing_imports)}function qrs(n,c,u,d,I,h,b){let R=P2(c,b);switch(d.kind){case 0:return SLt(n,c,d),[Z.Change_0_to_1,u,`${d.namespacePrefix}.${u}`];case 1:return u3r(n,c,d,R),[Z.Change_0_to_1,u,g3r(d.moduleSpecifier,R)+u];case 2:{let{importClauseOrBindingPattern:N,importKind:V,addAsTypeOnly:P,moduleSpecifier:Q}=d;l3r(n,c,N,V===1?{name:u,addAsTypeOnly:P}:void 0,V===0?[{name:u,addAsTypeOnly:P}]:v,void 0,b);let te=R2(Q);return I?[Z.Import_0_from_1,u,te]:[Z.Update_import_from_0,te]}case 3:{let{importKind:N,moduleSpecifier:V,addAsTypeOnly:P,useRequire:Q,qualification:te}=d,re=Q?d3r:A3r,ue=N===1?{name:u,addAsTypeOnly:P}:void 0,Ae=N===0?[{name:u,addAsTypeOnly:P}]:void 0,de=N===2||N===3?{importKind:N,name:te?.namespacePrefix||u,addAsTypeOnly:P}:void 0;return uje(n,c,re(V,R,ue,Ae,de,h.getCompilerOptions(),b),!0,b),te&&SLt(n,c,te),I?[Z.Import_0_from_1,u,V]:[Z.Add_import_from_0,V]}case 4:{let{typeOnlyAliasDeclaration:N}=d,V=$rs(n,N,h,c,b);return V.kind===276?[Z.Remove_type_from_import_of_0_from_1,u,c3r(V.parent.parent)]:[Z.Remove_type_from_import_declaration_from_0,c3r(V)]}default:return w.assertNever(d,`Unexpected fix kind ${d.kind}`)}}function c3r(n){var c,u;return n.kind===271?((u=$s((c=$s(n.moduleReference,ZG))==null?void 0:c.expression,JA))==null?void 0:u.text)||n.moduleReference.getText():ps(n.parent.moduleSpecifier,Eu).text}function $rs(n,c,u,d,I){let h=u.getCompilerOptions(),b=h.verbatimModuleSyntax;switch(c.kind){case 276:if(c.isTypeOnly){if(c.parent.elements.length>1){let N=_e.updateImportSpecifier(c,!1,c.propertyName,c.name),{specifierComparer:V}=bP.getNamedImportSpecifierComparerWithDetection(c.parent.parent.parent,I,d),P=bP.getImportSpecifierInsertionIndex(c.parent.elements,N,V);if(P!==c.parent.elements.indexOf(c))return n.delete(d,c),n.insertImportSpecifierAtIndex(d,N,c.parent,P),c}return n.deleteRange(d,{pos:xx(c.getFirstToken()),end:xx(c.propertyName??c.name)}),c}else return w.assert(c.parent.parent.isTypeOnly),R(c.parent.parent),c.parent.parent;case 273:return R(c),c;case 274:return R(c.parent),c.parent;case 271:return n.deleteRange(d,c.getChildAt(1)),c;default:w.failBadSyntaxKind(c)}function R(N){var V;if(n.delete(d,gje(N,d)),!h.allowImportingTsExtensions){let P=j8(N.parent),Q=P&&((V=u.getResolvedModuleFromModuleSpecifier(P,d))==null?void 0:V.resolvedModule);if(Q?.resolvedUsingTsExtension){let te=w1(P.text,Xke(P.text,h));n.replaceNode(d,P,_e.createStringLiteral(te))}}if(b){let P=$s(N.namedBindings,TN);if(P&&P.elements.length>1){bP.getNamedImportSpecifierComparerWithDetection(N.parent,I,d).isSorted!==!1&&c.kind===276&&P.elements.indexOf(c)!==0&&(n.delete(d,c),n.insertImportSpecifierAtIndex(d,c,P,0));for(let te of P.elements)te!==c&&!te.isTypeOnly&&n.insertModifierBefore(d,156,te)}}}}function l3r(n,c,u,d,I,h,b){var R;if(u.kind===206){if(h&&u.elements.some(Q=>h.has(Q))){n.replaceNode(c,u,_e.createObjectBindingPattern([...u.elements.filter(Q=>!h.has(Q)),...d?[_e.createBindingElement(void 0,"default",d.name)]:v,...I.map(Q=>_e.createBindingElement(void 0,void 0,Q.name))]));return}d&&P(u,d.name,"default");for(let Q of I)P(u,Q.name,void 0);return}let N=u.isTypeOnly&&lr([d,...I],Q=>Q?.addAsTypeOnly===4),V=u.namedBindings&&((R=$s(u.namedBindings,TN))==null?void 0:R.elements);if(d&&(w.assert(!u.name,"Cannot add a default import to an import clause that already has one"),n.insertNodeAt(c,u.getStart(c),_e.createIdentifier(d.name),{suffix:", "})),I.length){let{specifierComparer:Q,isSorted:te}=bP.getNamedImportSpecifierComparerWithDetection(u.parent,b,c),re=ml(I.map(ue=>_e.createImportSpecifier((!u.isTypeOnly||N)&&Wze(ue,b),void 0,_e.createIdentifier(ue.name))),Q);if(h)n.replaceNode(c,u.namedBindings,_e.updateNamedImports(u.namedBindings,ml([...V.filter(ue=>!h.has(ue)),...re],Q)));else if(V?.length&&te!==!1){let ue=N&&V?_e.updateNamedImports(u.namedBindings,Ar(V,Ae=>_e.updateImportSpecifier(Ae,!0,Ae.propertyName,Ae.name))).elements:V;for(let Ae of re){let de=bP.getImportSpecifierInsertionIndex(ue,Ae,Q);n.insertImportSpecifierAtIndex(c,Ae,u.namedBindings,de)}}else if(V?.length)for(let ue of re)n.insertNodeInListAfter(c,Ta(V),ue,V);else if(re.length){let ue=_e.createNamedImports(re);u.namedBindings?n.replaceNode(c,u.namedBindings,ue):n.insertNodeAfter(c,w.checkDefined(u.name,"Import clause must have either named imports or a default import"),ue)}}if(N&&(n.delete(c,gje(u,c)),V))for(let Q of V)n.insertModifierBefore(c,156,Q);function P(Q,te,re){let ue=_e.createBindingElement(void 0,re,te);Q.elements.length?n.insertNodeInListAfter(c,Ta(Q.elements),ue):n.replaceNode(c,Q,_e.createObjectBindingPattern([ue]))}}function SLt(n,c,{namespacePrefix:u,usagePosition:d}){n.insertText(c,d,u+".")}function u3r(n,c,{moduleSpecifier:u,usagePosition:d},I){n.insertText(c,d,g3r(u,I))}function g3r(n,c){let u=cje(c);return`import(${u}${n}${u}).`}function wLt({addAsTypeOnly:n}){return n===2}function Wze(n,c){return wLt(n)||!!c.preferTypeOnlyAutoImports&&n.addAsTypeOnly!==4}function A3r(n,c,u,d,I,h,b){let R=Tue(n,c),N;if(u!==void 0||d?.length){let V=(!u||wLt(u))&&he(d,wLt)||(h.verbatimModuleSyntax||b.preferTypeOnlyAutoImports)&&u?.addAsTypeOnly!==4&&!lr(d,P=>P.addAsTypeOnly===4);N=Vs(N,RV(u&&_e.createIdentifier(u.name),d?.map(P=>_e.createImportSpecifier(!V&&Wze(P,b),void 0,_e.createIdentifier(P.name))),n,c,V))}if(I){let V=I.importKind===3?_e.createImportEqualsDeclaration(void 0,Wze(I,b),_e.createIdentifier(I.name),_e.createExternalModuleReference(R)):_e.createImportDeclaration(void 0,_e.createImportClause(Wze(I,b),void 0,_e.createNamespaceImport(_e.createIdentifier(I.name))),R,void 0);N=Vs(N,V)}return w.checkDefined(N)}function d3r(n,c,u,d,I){let h=Tue(n,c),b;if(u||d?.length){let R=d?.map(({name:V})=>_e.createBindingElement(void 0,void 0,V))||[];u&&R.unshift(_e.createBindingElement(void 0,"default",u.name));let N=p3r(_e.createObjectBindingPattern(R),h);b=Vs(b,N)}if(I){let R=p3r(I.name,h);b=Vs(b,R)}return w.checkDefined(b)}function p3r(n,c){return _e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(typeof n=="string"?_e.createIdentifier(n):n,void 0,void 0,_e.createCallExpression(_e.createIdentifier("require"),void 0,[c]))],2))}function f3r(n,c){return c===7?!0:c&1?!!(n&111551):c&2?!!(n&788968):c&4?!!(n&1920):!1}var TLt="addMissingConstraint",I3r=[Z.Type_0_is_not_comparable_to_type_1.code,Z.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated.code,Z.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.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,Z.Property_0_is_incompatible_with_index_signature.code,Z.Property_0_in_type_1_is_not_assignable_to_type_2.code,Z.Type_0_does_not_satisfy_the_constraint_1.code];Tg({errorCodes:I3r,getCodeActions(n){let{sourceFile:c,span:u,program:d,preferences:I,host:h}=n,b=C3r(d,c,u);if(b===void 0)return;let R=Ao.ChangeTracker.with(n,N=>m3r(N,d,I,h,c,b));return[ng(TLt,R,Z.Add_extends_constraint,TLt,Z.Add_extends_constraint_to_all_type_parameters)]},fixIds:[TLt],getAllCodeActions:n=>{let{program:c,preferences:u,host:d}=n,I=new Map;return a7(Ao.ChangeTracker.with(n,h=>{c7(n,I3r,b=>{let R=C3r(c,b.file,Ed(b.start,b.length));if(R&&D2(I,od(R.declaration)))return m3r(h,c,u,d,b.file,R)})}))}});function C3r(n,c,u){let d=be(n.getSemanticDiagnostics(c),b=>b.start===u.start&&b.length===u.length);if(d===void 0||d.relatedInformation===void 0)return;let I=be(d.relatedInformation,b=>b.code===Z.This_type_parameter_might_need_an_extends_0_constraint.code);if(I===void 0||I.file===void 0||I.start===void 0||I.length===void 0)return;let h=y9t(I.file,Ed(I.start,I.length));if(h!==void 0&&(sr(h)&&$p(h.parent)&&(h=h.parent),$p(h))){if(wl(h.parent))return;let b=Hc(c,u.start),R=n.getTypeChecker();return{constraint:tns(R,b)||ens(I.messageText),declaration:h,token:b}}}function m3r(n,c,u,d,I,h){let{declaration:b,constraint:R}=h,N=c.getTypeChecker();if(Ya(R))n.insertText(I,b.name.end,` extends ${R}`);else{let V=sA(c.getCompilerOptions()),P=jte({program:c,host:d}),Q=RM(I,c,u,d),te=MFe(N,Q,R,void 0,V,void 0,P);te&&(n.replaceNode(I,b,_e.updateTypeParameterDeclaration(b,void 0,b.name,te,b.default)),Q.writeFixes(n))}}function ens(n){let[,c]=kN(n,` +`,0).match(/`extends (.*)`/)||[];return c}function tns(n,c){return Ma(c.parent)?n.getTypeArgumentConstraint(c.parent):(tn(c)?n.getContextualType(c):void 0)||n.getTypeAtLocation(c)}var h3r="fixOverrideModifier",p0e="fixAddOverrideModifier",OFe="fixRemoveOverrideModifier",_3r=[Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code,Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code,Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code,Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code,Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code,Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code,Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code,Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code,Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code],y3r={[Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:p0e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:p0e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code]:{descriptions:Z.Remove_override_modifier,fixId:OFe,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers},[Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code]:{descriptions:Z.Remove_override_modifier,fixId:OFe,fixAllDescriptions:Z.Remove_override_modifier},[Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:p0e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:p0e,fixAllDescriptions:Z.Add_all_missing_override_modifiers},[Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code]:{descriptions:Z.Add_override_modifier,fixId:p0e,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers},[Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code]:{descriptions:Z.Remove_override_modifier,fixId:OFe,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers},[Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code]:{descriptions:Z.Remove_override_modifier,fixId:OFe,fixAllDescriptions:Z.Remove_all_unnecessary_override_modifiers}};Tg({errorCodes:_3r,getCodeActions:function(c){let{errorCode:u,span:d}=c,I=y3r[u];if(!I)return v;let{descriptions:h,fixId:b,fixAllDescriptions:R}=I,N=Ao.ChangeTracker.with(c,V=>b3r(V,c,u,d.start));return[jZt(h3r,N,h,b,R)]},fixIds:[h3r,p0e,OFe],getAllCodeActions:n=>Md(n,_3r,(c,u)=>{let{code:d,start:I}=u,h=y3r[d];!h||h.fixId!==n.fixId||b3r(c,n,d,I)})});function b3r(n,c,u,d){switch(u){case Z.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code:case Z.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code:case Z.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code:case Z.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code:case Z.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code:return rns(n,c.sourceFile,d);case Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code:case Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code:case Z.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code:case Z.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code:return nns(n,c.sourceFile,d);default:w.fail("Unexpected error code: "+u)}}function rns(n,c,u){let d=B3r(c,u);if(i0(c)){n.addJSDocTags(c,d,[_e.createJSDocOverrideTag(_e.createIdentifier("override"))]);return}let I=d.modifiers||v,h=be(I,iT),b=be(I,gM),R=be(I,Q=>z7e(Q.kind)),N=Te(I,FC),V=b?b.end:h?h.end:R?R.end:N?Uu(c.text,N.end):d.getStart(c),P=R||h||b?{prefix:" "}:{suffix:" "};n.insertModifierAt(c,V,164,P)}function nns(n,c,u){let d=B3r(c,u);if(i0(c)){n.filterJSDocTags(c,d,Am(Kxe));return}let I=be(d.modifiers,Vhe);w.assertIsDefined(I),n.deleteModifier(c,I)}function E3r(n){switch(n.kind){case 176:case 172:case 174:case 177:case 178:return!0;case 169:return Zn(n,n.parent);default:return!1}}function B3r(n,c){let u=Hc(n,c),d=Si(u,I=>va(I)?"quit":E3r(I));return w.assert(d&&E3r(d)),d}var NLt="fixNoPropertyAccessFromIndexSignature",v3r=[Z.Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0.code];Tg({errorCodes:v3r,fixIds:[NLt],getCodeActions(n){let{sourceFile:c,span:u,preferences:d}=n,I=w3r(c,u.start),h=Ao.ChangeTracker.with(n,b=>S3r(b,n.sourceFile,I,d));return[ng(NLt,h,[Z.Use_element_access_for_0,I.name.text],NLt,Z.Use_element_access_for_all_undeclared_properties)]},getAllCodeActions:n=>Md(n,v3r,(c,u)=>S3r(c,u.file,w3r(u.file,u.start),n.preferences))});function S3r(n,c,u,d){let I=P2(c,d),h=_e.createStringLiteral(u.name.text,I===0);n.replaceNode(c,u,p5(u)?_e.createElementAccessChain(u.expression,u.questionDotToken,h):_e.createElementAccessExpression(u.expression,h))}function w3r(n,c){return ps(Hc(n,c).parent,fo)}var RLt="fixImplicitThis",T3r=[Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code];Tg({errorCodes:T3r,getCodeActions:function(c){let{sourceFile:u,program:d,span:I}=c,h,b=Ao.ChangeTracker.with(c,R=>{h=N3r(R,u,I.start,d.getTypeChecker())});return h?[ng(RLt,b,h,RLt,Z.Fix_all_implicit_this_errors)]:v},fixIds:[RLt],getAllCodeActions:n=>Md(n,T3r,(c,u)=>{N3r(c,u.file,u.start,n.program.getTypeChecker())})});function N3r(n,c,u,d){let I=Hc(c,u);if(!Zte(I))return;let h=n0(I,!1,!1);if(!(!hp(h)&&!PA(h))&&!Fc(n0(h,!1,!1))){let b=w.checkDefined(Qd(h,100,c)),{name:R}=h,N=w.checkDefined(h.body);return PA(h)?R&&Yp.Core.isSymbolReferencedInFile(R,d,c,N)?void 0:(n.delete(c,b),R&&n.delete(c,R),n.insertText(c,N.pos," =>"),[Z.Convert_function_expression_0_to_arrow_function,R?R.text:Sje]):(n.replaceNode(c,b,_e.createToken(87)),n.insertText(c,R.end," = "),n.insertText(c,N.pos," =>"),[Z.Convert_function_declaration_0_to_arrow_function,R.text])}}var DLt="fixImportNonExportedMember",R3r=[Z.Module_0_declares_1_locally_but_it_is_not_exported.code];Tg({errorCodes:R3r,fixIds:[DLt],getCodeActions(n){let{sourceFile:c,span:u,program:d}=n,I=D3r(c,u.start,d);if(I===void 0)return;let h=Ao.ChangeTracker.with(n,b=>ins(b,d,I));return[ng(DLt,h,[Z.Export_0_from_module_1,I.exportName.node.text,I.moduleSpecifier],DLt,Z.Export_all_referenced_locals)]},getAllCodeActions(n){let{program:c}=n;return a7(Ao.ChangeTracker.with(n,u=>{let d=new Map;c7(n,R3r,I=>{let h=D3r(I.file,I.start,c);if(h===void 0)return;let{exportName:b,node:R,moduleSourceFile:N}=h;if(Pze(N,b.isTypeOnly)===void 0&&Uee(R))u.insertExportModifier(N,R);else{let V=d.get(N)||{typeOnlyExports:[],exports:[]};b.isTypeOnly?V.typeOnlyExports.push(b):V.exports.push(b),d.set(N,V)}}),d.forEach((I,h)=>{let b=Pze(h,!0);b&&b.isTypeOnly?(xLt(u,c,h,I.typeOnlyExports,b),xLt(u,c,h,I.exports,Pze(h,!1))):xLt(u,c,h,[...I.exports,...I.typeOnlyExports],b)})}))}});function D3r(n,c,u){var d,I;let h=Hc(n,c);if(sr(h)){let b=Si(h,hI);if(b===void 0)return;let R=Eu(b.moduleSpecifier)?b.moduleSpecifier:void 0;if(R===void 0)return;let N=(d=u.getResolvedModuleFromModuleSpecifier(R,n))==null?void 0:d.resolvedModule;if(N===void 0)return;let V=u.getSourceFile(N.resolvedFileName);if(V===void 0||Hte(u,V))return;let P=V.symbol,Q=(I=$s(P.valueDeclaration,Nv))==null?void 0:I.locals;if(Q===void 0)return;let te=Q.get(h.escapedText);if(te===void 0)return;let re=sns(te);return re===void 0?void 0:{exportName:{node:h,isTypeOnly:$5(re)},node:re,moduleSourceFile:V,moduleSpecifier:R.text}}}function ins(n,c,{exportName:u,node:d,moduleSourceFile:I}){let h=Pze(I,u.isTypeOnly);h?x3r(n,c,I,h,[u]):Uee(d)?n.insertExportModifier(I,d):k3r(n,c,I,[u])}function xLt(n,c,u,d,I){O(d)&&(I?x3r(n,c,u,I,d):k3r(n,c,u,d))}function Pze(n,c){let u=d=>hC(d)&&(c&&d.isTypeOnly||!d.isTypeOnly);return Te(n.statements,u)}function x3r(n,c,u,d,I){let h=d.exportClause&&ZB(d.exportClause)?d.exportClause.elements:_e.createNodeArray([]),b=!d.isTypeOnly&&!!(VE(c.getCompilerOptions())||be(h,R=>R.isTypeOnly));n.replaceNode(u,d,_e.updateExportDeclaration(d,d.modifiers,d.isTypeOnly,_e.createNamedExports(_e.createNodeArray([...h,...G3r(I,b)],h.hasTrailingComma)),d.moduleSpecifier,d.attributes))}function k3r(n,c,u,d){n.insertNodeAtEndOfScope(u,u,_e.createExportDeclaration(void 0,!1,_e.createNamedExports(G3r(d,VE(c.getCompilerOptions()))),void 0,void 0))}function G3r(n,c){return _e.createNodeArray(Ot(n,u=>_e.createExportSpecifier(c&&u.isTypeOnly,void 0,u.node)))}function sns(n){if(n.valueDeclaration===void 0)return $i(n.declarations);let c=n.valueDeclaration,u=js(c)?$s(c.parent.parent,Dp):void 0;return u&&O(u.declarationList.declarations)===1?u:c}var kLt="fixIncorrectNamedTupleSyntax",ons=[Z.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,Z.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type.code];Tg({errorCodes:ons,getCodeActions:function(c){let{sourceFile:u,span:d}=c,I=ans(u,d.start),h=Ao.ChangeTracker.with(c,b=>cns(b,u,I));return[ng(kLt,h,Z.Move_labeled_tuple_element_modifiers_to_labels,kLt,Z.Move_labeled_tuple_element_modifiers_to_labels)]},fixIds:[kLt]});function ans(n,c){let u=Hc(n,c);return Si(u,d=>d.kind===202)}function cns(n,c,u){if(!u)return;let d=u.type,I=!1,h=!1;for(;d.kind===190||d.kind===191||d.kind===196;)d.kind===190?I=!0:d.kind===191&&(h=!0),d=d.type;let b=_e.updateNamedTupleMember(u,u.dotDotDotToken||(h?_e.createToken(26):void 0),u.name,u.questionToken||(I?_e.createToken(58):void 0),d);b!==u&&n.replaceNode(c,u,b)}var F3r="fixSpelling",Z3r=[Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,Z.Property_0_may_not_exist_on_type_1_Did_you_mean_2.code,Z.Cannot_find_name_0_Did_you_mean_1.code,Z.Could_not_find_name_0_Did_you_mean_1.code,Z.Cannot_find_namespace_0_Did_you_mean_1.code,Z.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,Z.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,Z._0_has_no_exported_member_named_1_Did_you_mean_2.code,Z.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1.code,Z.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,Z.No_overload_matches_this_call.code,Z.Type_0_is_not_assignable_to_type_1.code];Tg({errorCodes:Z3r,getCodeActions(n){let{sourceFile:c,errorCode:u}=n,d=L3r(c,n.span.start,n,u);if(!d)return;let{node:I,suggestedSymbol:h}=d,b=sA(n.host.getCompilationSettings()),R=Ao.ChangeTracker.with(n,N=>V3r(N,c,I,h,b));return[ng("spelling",R,[Z.Change_spelling_to_0,pf(h)],F3r,Z.Fix_all_detected_spelling_errors)]},fixIds:[F3r],getAllCodeActions:n=>Md(n,Z3r,(c,u)=>{let d=L3r(u.file,u.start,n,u.code),I=sA(n.host.getCompilationSettings());d&&V3r(c,n.sourceFile,d.node,d.suggestedSymbol,I)})});function L3r(n,c,u,d){let I=Hc(n,c),h=I.parent;if((d===Z.No_overload_matches_this_call.code||d===Z.Type_0_is_not_assignable_to_type_1.code)&&!RN(h))return;let b=u.program.getTypeChecker(),R;if(fo(h)&&h.name===I){w.assert(eb(I),"Expected an identifier for spelling (property access)");let N=b.getTypeAtLocation(h.expression);h.flags&64&&(N=b.getNonNullableType(N)),R=b.getSuggestedSymbolForNonexistentProperty(I,N)}else if(ro(h)&&h.operatorToken.kind===103&&h.left===I&&Gc(I)){let N=b.getTypeAtLocation(h.right);R=b.getSuggestedSymbolForNonexistentProperty(I,N)}else if(c0(h)&&h.right===I){let N=b.getSymbolAtLocation(h.left);N&&N.flags&1536&&(R=b.getSuggestedSymbolForNonexistentModule(h.right,N))}else if(yy(h)&&h.name===I){w.assertNode(I,sr,"Expected an identifier for spelling (import)");let N=Si(I,hI),V=uns(u,N,n);V&&V.symbol&&(R=b.getSuggestedSymbolForNonexistentModule(I,V.symbol))}else if(RN(h)&&h.name===I){w.assertNode(I,sr,"Expected an identifier for JSX attribute");let N=Si(I,Um),V=b.getContextualTypeForArgumentAtIndex(N,0);R=b.getSuggestedSymbolForNonexistentJSXAttribute(I,V)}else if(Pce(h)&&nC(h)&&h.name===I){let N=Si(I,va),V=N?xv(N):void 0,P=V?b.getTypeAtLocation(V):void 0;P&&(R=b.getSuggestedSymbolForNonexistentClassMember(Nf(I),P))}else{let N=E4(I),V=Nf(I);w.assert(V!==void 0,"name should be defined"),R=b.getSuggestedSymbolForNonexistentSymbol(I,V,lns(N))}return R===void 0?void 0:{node:I,suggestedSymbol:R}}function V3r(n,c,u,d,I){let h=pf(d);if(!Ke(h,I)&&fo(u.parent)){let b=d.valueDeclaration;b&&wf(b)&&Gc(b.name)?n.replaceNode(c,u,_e.createIdentifier(h)):n.replaceNode(c,u.parent,_e.createElementAccessExpression(u.parent.expression,_e.createStringLiteral(h)))}else n.replaceNode(c,u,_e.createIdentifier(h))}function lns(n){let c=0;return n&4&&(c|=1920),n&2&&(c|=788968),n&1&&(c|=111551),c}function uns(n,c,u){var d;if(!c||!JA(c.moduleSpecifier))return;let I=(d=n.program.getResolvedModuleFromModuleSpecifier(c.moduleSpecifier,u))==null?void 0:d.resolvedModule;if(I)return n.program.getSourceFile(I.resolvedFileName)}var GLt="returnValueCorrect",FLt="fixAddReturnStatement",ZLt="fixRemoveBracesFromArrowFunctionBody",LLt="fixWrapTheBlockWithParen",W3r=[Z.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code];Tg({errorCodes:W3r,fixIds:[FLt,ZLt,LLt],getCodeActions:function(c){let{program:u,sourceFile:d,span:{start:I},errorCode:h}=c,b=O3r(u.getTypeChecker(),d,I,h);if(b)return b.kind===0?Yr([Ans(c,b.expression,b.statement)],Id(b.declaration)?dns(c,b.declaration,b.expression,b.commentSource):void 0):[pns(c,b.declaration,b.expression)]},getAllCodeActions:n=>Md(n,W3r,(c,u)=>{let d=O3r(n.program.getTypeChecker(),u.file,u.start,u.code);if(d)switch(n.fixId){case FLt:Q3r(c,u.file,d.expression,d.statement);break;case ZLt:if(!Id(d.declaration))return;M3r(c,u.file,d.declaration,d.expression,d.commentSource,!1);break;case LLt:if(!Id(d.declaration))return;H3r(c,u.file,d.declaration,d.expression);break;default:w.fail(JSON.stringify(n.fixId))}})});function P3r(n,c,u){let d=n.createSymbol(4,c.escapedText);d.links.type=n.getTypeAtLocation(u);let I=xu([d]);return n.createAnonymousType(void 0,I,[],[],[])}function VLt(n,c,u,d){if(!c.body||!hc(c.body)||O(c.body.statements)!==1)return;let I=qs(c.body.statements);if(Xf(I)&&WLt(n,c,n.getTypeAtLocation(I.expression),u,d))return{declaration:c,kind:0,expression:I.expression,statement:I,commentSource:I.expression};if(iC(I)&&Xf(I.statement)){let h=_e.createObjectLiteralExpression([_e.createPropertyAssignment(I.label,I.statement.expression)]),b=P3r(n,I.label,I.statement.expression);if(WLt(n,c,b,u,d))return Id(c)?{declaration:c,kind:1,expression:h,statement:I,commentSource:I.statement.expression}:{declaration:c,kind:0,expression:h,statement:I,commentSource:I.statement.expression}}else if(hc(I)&&O(I.statements)===1){let h=qs(I.statements);if(iC(h)&&Xf(h.statement)){let b=_e.createObjectLiteralExpression([_e.createPropertyAssignment(h.label,h.statement.expression)]),R=P3r(n,h.label,h.statement.expression);if(WLt(n,c,R,u,d))return{declaration:c,kind:0,expression:b,statement:I,commentSource:h}}}}function WLt(n,c,u,d,I){if(I){let h=n.getSignatureFromDeclaration(c);if(h){ya(c,1024)&&(u=n.createPromiseType(u));let b=n.createSignature(c,h.typeParameters,h.thisParameter,h.parameters,u,void 0,h.minArgumentCount,h.flags);u=n.createAnonymousType(void 0,xu(),[b],[],[])}else u=n.getAnyType()}return n.isTypeAssignableTo(u,d)}function O3r(n,c,u,d){let I=Hc(c,u);if(!I.parent)return;let h=Si(I.parent,pd);switch(d){case Z.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value.code:return!h||!h.body||!h.type||!W2(h.type,I)?void 0:VLt(n,h,n.getTypeFromTypeNode(h.type),!1);case Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code:if(!h||!lu(h.parent)||!h.body)return;let b=h.parent.arguments.indexOf(h);if(b===-1)return;let R=n.getContextualTypeForArgumentAtIndex(h.parent,b);return R?VLt(n,h,R,!0):void 0;case Z.Type_0_is_not_assignable_to_type_1.code:if(!tT(I)||!R5(I.parent)&&!RN(I.parent))return;let N=gns(I.parent);return!N||!pd(N)||!N.body?void 0:VLt(n,N,n.getTypeAtLocation(I.parent),!0)}}function gns(n){switch(n.kind){case 260:case 169:case 208:case 172:case 303:return n.initializer;case 291:return n.initializer&&(Qle(n.initializer)?n.initializer.expression:void 0);case 304:case 171:case 306:case 348:case 341:return}}function Q3r(n,c,u,d){HE(u);let I=z_e(c);n.replaceNode(c,d,_e.createReturnStatement(u),{leadingTriviaOption:Ao.LeadingTriviaOption.Exclude,trailingTriviaOption:Ao.TrailingTriviaOption.Exclude,suffix:I?";":void 0})}function M3r(n,c,u,d,I,h){let b=h||eFe(d)?_e.createParenthesizedExpression(d):d;HE(I),v4(I,b),n.replaceNode(c,u.body,b)}function H3r(n,c,u,d){n.replaceNode(c,u.body,_e.createParenthesizedExpression(d))}function Ans(n,c,u){let d=Ao.ChangeTracker.with(n,I=>Q3r(I,n.sourceFile,c,u));return ng(GLt,d,Z.Add_a_return_statement,FLt,Z.Add_all_missing_return_statement)}function dns(n,c,u,d){let I=Ao.ChangeTracker.with(n,h=>M3r(h,n.sourceFile,c,u,d,!1));return ng(GLt,I,Z.Remove_braces_from_arrow_function_body,ZLt,Z.Remove_braces_from_all_arrow_function_bodies_with_relevant_issues)}function pns(n,c,u){let d=Ao.ChangeTracker.with(n,I=>H3r(I,n.sourceFile,c,u));return ng(GLt,d,Z.Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal,LLt,Z.Wrap_all_object_literal_with_parentheses)}var _P="fixMissingMember",Oze="fixMissingProperties",Qze="fixMissingAttributes",Mze="fixMissingFunctionDeclaration",Y3r=[Z.Property_0_does_not_exist_on_type_1.code,Z.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,Z.Property_0_is_missing_in_type_1_but_required_in_type_2.code,Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2.code,Z.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more.code,Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,Z.Cannot_find_name_0.code];Tg({errorCodes:Y3r,getCodeActions(n){let c=n.program.getTypeChecker(),u=X3r(n.sourceFile,n.span.start,n.errorCode,c,n.program);if(u){if(u.kind===3){let d=Ao.ChangeTracker.with(n,I=>rPr(I,n,u));return[ng(Oze,d,Z.Add_missing_properties,Oze,Z.Add_all_missing_properties)]}if(u.kind===4){let d=Ao.ChangeTracker.with(n,I=>tPr(I,n,u));return[ng(Qze,d,Z.Add_missing_attributes,Qze,Z.Add_all_missing_attributes)]}if(u.kind===2||u.kind===5){let d=Ao.ChangeTracker.with(n,I=>ePr(I,n,u));return[ng(Mze,d,[Z.Add_missing_function_declaration_0,u.token.text],Mze,Z.Add_all_missing_function_declarations)]}if(u.kind===1){let d=Ao.ChangeTracker.with(n,I=>$3r(I,n.program.getTypeChecker(),u));return[ng(_P,d,[Z.Add_missing_enum_member_0,u.token.text],_P,Z.Add_all_missing_members)]}return vi(hns(n,u),fns(n,u))}},fixIds:[_P,Mze,Oze,Qze],getAllCodeActions:n=>{let{program:c,fixId:u}=n,d=c.getTypeChecker(),I=new Map,h=new Map;return a7(Ao.ChangeTracker.with(n,b=>{c7(n,Y3r,R=>{let N=X3r(R.file,R.start,R.code,d,n.program);if(!(!N||!D2(I,od(N.parentDeclaration)+"#"+(N.kind===3?N.identifier:N.token.text)))){if(u===Mze&&(N.kind===2||N.kind===5))ePr(b,n,N);else if(u===Oze&&N.kind===3)rPr(b,n,N);else if(u===Qze&&N.kind===4)tPr(b,n,N);else if(N.kind===1&&$3r(b,d,N),N.kind===0){let{parentDeclaration:V,token:P}=N,Q=we(h,V,()=>[]);Q.some(te=>te.token.text===P.text)||Q.push(N)}}}),h.forEach((R,N)=>{let V=Se(N)?void 0:b9t(N,d);for(let P of R){if(V?.some(Be=>{let Fe=h.get(Be);return!!Fe&&Fe.some(({token:Ne})=>Ne.text===P.token.text)}))continue;let{parentDeclaration:Q,declSourceFile:te,modifierFlags:re,token:ue,call:Ae,isJSFile:de}=P;if(Ae&&!Gc(ue))q3r(n,b,Ae,ue,re&256,Q,te);else if(de&&!XI(Q)&&!Se(Q))J3r(b,te,Q,ue,!!(re&256));else{let Be=K3r(d,Q,ue);j3r(b,te,Q,ue.text,Be,re&256)}}})}))}});function X3r(n,c,u,d,I){var h;let b=Hc(n,c),R=b.parent;if(u===Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code){if(!(b.kind===19&&ru(R)&&lu(R.parent)))return;let re=ke(R.parent.arguments,Be=>Be===R);if(re<0)return;let ue=d.getResolvedSignature(R.parent);if(!(ue&&ue.declaration&&ue.parameters[re]))return;let Ae=ue.parameters[re].valueDeclaration;if(!(Ae&&Uc(Ae)&&sr(Ae.name)))return;let de=on(d.getUnmatchedProperties(d.getTypeAtLocation(R),d.getParameterType(ue,re),!1,!1));return O(de)?{kind:3,token:Ae.name,identifier:Ae.name.text,properties:de,parentDeclaration:R}:void 0}if(b.kind===19&&ru(R)){let re=d.getContextualType(R)||d.getTypeAtLocation(R),ue=on(d.getUnmatchedProperties(d.getTypeAtLocation(R),re,!1,!1));return O(ue)?{kind:3,token:R,identifier:"",properties:ue,parentDeclaration:R}:void 0}if(!eb(b))return;if(sr(b)&&$w(R)&&R.initializer&&ru(R.initializer)){let re=d.getContextualType(b)||d.getTypeAtLocation(b),ue=on(d.getUnmatchedProperties(d.getTypeAtLocation(R.initializer),re,!1,!1));return O(ue)?{kind:3,token:b,identifier:b.text,properties:ue,parentDeclaration:R.initializer}:void 0}if(sr(b)&&Um(b.parent)){let re=sA(I.getCompilerOptions()),ue=yns(d,re,b.parent);return O(ue)?{kind:4,token:b,attributes:ue,parentDeclaration:b.parent}:void 0}if(sr(b)){let re=(h=d.getContextualType(b))==null?void 0:h.getNonNullableType();if(re&&ia(re)&16){let ue=$i(d.getSignaturesOfType(re,0));return ue===void 0?void 0:{kind:5,token:b,signature:ue,sourceFile:n,parentDeclaration:nPr(b)}}if(lu(R)&&R.expression===b)return{kind:2,token:b,call:R,sourceFile:n,modifierFlags:0,parentDeclaration:nPr(b)}}if(!fo(R))return;let N=ije(d.getTypeAtLocation(R.expression)),V=N.symbol;if(!V||!V.declarations)return;if(sr(b)&&lu(R.parent)){let re=be(V.declarations,mC),ue=re?.getSourceFile();if(re&&ue&&!Hte(I,ue))return{kind:2,token:b,call:R.parent,sourceFile:n,modifierFlags:32,parentDeclaration:re};let Ae=be(V.declarations,Fc);if(n.commonJsModuleIndicator)return;if(Ae&&!Hte(I,Ae))return{kind:2,token:b,call:R.parent,sourceFile:Ae,modifierFlags:32,parentDeclaration:Ae}}let P=be(V.declarations,va);if(!P&&Gc(b))return;let Q=P||be(V.declarations,re=>XI(re)||Se(re));if(Q&&!Hte(I,Q.getSourceFile())){let re=!Se(Q)&&(N.target||N)!==d.getDeclaredTypeOfSymbol(V);if(re&&(Gc(b)||XI(Q)))return;let ue=Q.getSourceFile(),Ae=Se(Q)?0:(re?256:0)|(Gje(b.text)?2:0),de=i0(ue),Be=$s(R.parent,lu);return{kind:0,token:b,call:Be,modifierFlags:Ae,parentDeclaration:Q,declSourceFile:ue,isJSFile:de}}let te=be(V.declarations,iP);if(te&&!(N.flags&1056)&&!Gc(b)&&!Hte(I,te.getSourceFile()))return{kind:1,token:b,parentDeclaration:te}}function fns(n,c){return c.isJSFile?Dm(Ins(n,c)):Cns(n,c)}function Ins(n,{parentDeclaration:c,declSourceFile:u,modifierFlags:d,token:I}){if(XI(c)||Se(c))return;let h=Ao.ChangeTracker.with(n,R=>J3r(R,u,c,I,!!(d&256)));if(h.length===0)return;let b=d&256?Z.Initialize_static_property_0:Gc(I)?Z.Declare_a_private_field_named_0:Z.Initialize_property_0_in_the_constructor;return ng(_P,h,[b,I.text],_P,Z.Add_all_missing_members)}function J3r(n,c,u,d,I){let h=d.text;if(I){if(u.kind===231)return;let b=u.name.getText(),R=U3r(_e.createIdentifier(b),h);n.insertNodeAfter(c,u,R)}else if(Gc(d)){let b=_e.createPropertyDeclaration(void 0,h,void 0,void 0,void 0),R=z3r(u);R?n.insertNodeAfter(c,R,b):n.insertMemberAtStart(c,u,b)}else{let b=pN(u);if(!b)return;let R=U3r(_e.createThis(),h);n.insertNodeAtConstructorEnd(c,b,R)}}function U3r(n,c){return _e.createExpressionStatement(_e.createAssignment(_e.createPropertyAccessExpression(n,c),u7()))}function Cns(n,{parentDeclaration:c,declSourceFile:u,modifierFlags:d,token:I}){let h=I.text,b=d&256,R=K3r(n.program.getTypeChecker(),c,I),N=P=>Ao.ChangeTracker.with(n,Q=>j3r(Q,u,c,h,R,P)),V=[ng(_P,N(d&256),[b?Z.Declare_static_property_0:Z.Declare_property_0,h],_P,Z.Add_all_missing_members)];return b||Gc(I)||(d&2&&V.unshift(dT(_P,N(2),[Z.Declare_private_property_0,h])),V.push(mns(n,u,c,I.text,R))),V}function K3r(n,c,u){let d;if(u.parent.parent.kind===226){let I=u.parent.parent,h=u.parent===I.left?I.right:I.left,b=n.getWidenedType(n.getBaseTypeOfLiteralType(n.getTypeAtLocation(h)));d=n.typeToTypeNode(b,c,1)}else{let I=n.getContextualType(u.parent);d=I?n.typeToTypeNode(I,void 0,1):void 0}return d||_e.createKeywordTypeNode(133)}function j3r(n,c,u,d,I,h){let b=h?_e.createNodeArray(_e.createModifiersFromModifierFlags(h)):void 0,R=va(u)?_e.createPropertyDeclaration(b,d,void 0,I,void 0):_e.createPropertySignature(void 0,d,void 0,I),N=z3r(u);N?n.insertNodeAfter(c,N,R):n.insertMemberAtStart(c,u,R)}function z3r(n){let c;for(let u of n.members){if(!Hl(u))break;c=u}return c}function mns(n,c,u,d,I){let h=_e.createKeywordTypeNode(154),b=_e.createParameterDeclaration(void 0,void 0,"x",void 0,h,void 0),R=_e.createIndexSignature(void 0,[b],I),N=Ao.ChangeTracker.with(n,V=>V.insertMemberAtStart(c,u,R));return dT(_P,N,[Z.Add_index_signature_for_property_0,d])}function hns(n,c){let{parentDeclaration:u,declSourceFile:d,modifierFlags:I,token:h,call:b}=c;if(b===void 0)return;let R=h.text,N=P=>Ao.ChangeTracker.with(n,Q=>q3r(n,Q,b,h,P,u,d)),V=[ng(_P,N(I&256),[I&256?Z.Declare_static_method_0:Z.Declare_method_0,R],_P,Z.Add_all_missing_members)];return I&2&&V.unshift(dT(_P,N(2),[Z.Declare_private_method_0,R])),V}function q3r(n,c,u,d,I,h,b){let R=RM(b,n.program,n.preferences,n.host),N=va(h)?174:173,V=f9t(N,n,R,u,d,I,h),P=bns(h,u);P?c.insertNodeAfter(b,P,V):c.insertMemberAtStart(b,h,V),R.writeFixes(c)}function $3r(n,c,{token:u,parentDeclaration:d}){let I=lr(d.members,N=>{let V=c.getTypeAtLocation(N);return!!(V&&V.flags&402653316)}),h=d.getSourceFile(),b=_e.createEnumMember(u,I?_e.createStringLiteral(u.text):void 0),R=zo(d.members);R?n.insertNodeInListAfter(h,R,b,d.members):n.insertMemberAtStart(h,d,b)}function ePr(n,c,u){let d=P2(c.sourceFile,c.preferences),I=RM(c.sourceFile,c.program,c.preferences,c.host),h=u.kind===2?f9t(262,c,I,u.call,oo(u.token),u.modifierFlags,u.parentDeclaration):$ze(262,c,d,u.signature,HFe(Z.Function_not_implemented.message,d),u.token,void 0,void 0,void 0,I);h===void 0&&w.fail("fixMissingFunctionDeclaration codefix got unexpected error."),G_(u.parentDeclaration)?n.insertNodeBefore(u.sourceFile,u.parentDeclaration,h,!0):n.insertNodeAtEndOfScope(u.sourceFile,u.parentDeclaration,h),I.writeFixes(n)}function tPr(n,c,u){let d=RM(c.sourceFile,c.program,c.preferences,c.host),I=P2(c.sourceFile,c.preferences),h=c.program.getTypeChecker(),b=u.parentDeclaration.attributes,R=lr(b.properties,W6),N=Ot(u.attributes,Q=>{let te=Hze(c,h,d,I,h.getTypeOfSymbol(Q),u.parentDeclaration),re=_e.createIdentifier(Q.name),ue=_e.createJsxAttribute(re,_e.createJsxExpression(void 0,te));return GA(re,ue),ue}),V=_e.createJsxAttributes(R?[...N,...b.properties]:[...b.properties,...N]),P={prefix:b.pos===b.end?" ":void 0};n.replaceNode(c.sourceFile,b,V,P),d.writeFixes(n)}function rPr(n,c,u){let d=RM(c.sourceFile,c.program,c.preferences,c.host),I=P2(c.sourceFile,c.preferences),h=sA(c.program.getCompilerOptions()),b=c.program.getTypeChecker(),R=Ot(u.properties,V=>{let P=Hze(c,b,d,I,b.getTypeOfSymbol(V),u.parentDeclaration);return _e.createPropertyAssignment(Ens(V,h,I,b),P)}),N={leadingTriviaOption:Ao.LeadingTriviaOption.Exclude,trailingTriviaOption:Ao.TrailingTriviaOption.Exclude,indentation:u.indentation};n.replaceNode(c.sourceFile,u.parentDeclaration,_e.createObjectLiteralExpression([...u.parentDeclaration.properties,...R],!0),N),d.writeFixes(n)}function Hze(n,c,u,d,I,h){if(I.flags&3)return u7();if(I.flags&134217732)return _e.createStringLiteral("",d===0);if(I.flags&8)return _e.createNumericLiteral(0);if(I.flags&64)return _e.createBigIntLiteral("0n");if(I.flags&16)return _e.createFalse();if(I.flags&1056){let b=I.symbol.exports?ka(I.symbol.exports.values()):I.symbol,R=c.symbolToExpression(I.symbol.parent?I.symbol.parent:I.symbol,111551,void 0,64);return b===void 0||R===void 0?_e.createNumericLiteral(0):_e.createPropertyAccessExpression(R,c.symbolToString(b))}if(I.flags&256)return _e.createNumericLiteral(I.value);if(I.flags&2048)return _e.createBigIntLiteral(I.value);if(I.flags&128)return _e.createStringLiteral(I.value,d===0);if(I.flags&512)return I===c.getFalseType()||I===c.getFalseType(!0)?_e.createFalse():_e.createTrue();if(I.flags&65536)return _e.createNull();if(I.flags&1048576)return le(I.types,R=>Hze(n,c,u,d,R,h))??u7();if(c.isArrayLikeType(I))return _e.createArrayLiteralExpression();if(_ns(I)){let b=Ot(c.getPropertiesOfType(I),R=>{let N=Hze(n,c,u,d,c.getTypeOfSymbol(R),h);return _e.createPropertyAssignment(R.name,N)});return _e.createObjectLiteralExpression(b,!0)}if(ia(I)&16){if(be(I.symbol.declarations||v,fg(H,zS,lI))===void 0)return u7();let R=c.getSignaturesOfType(I,0);return R===void 0?u7():$ze(218,n,d,R[0],HFe(Z.Function_not_implemented.message,d),void 0,void 0,void 0,h,u)??u7()}if(ia(I)&1){let b=kB(I.symbol);if(b===void 0||cV(b))return u7();let R=pN(b);return R&&O(R.parameters)?u7():_e.createNewExpression(_e.createIdentifier(I.symbol.name),void 0,void 0)}return u7()}function u7(){return _e.createIdentifier("undefined")}function _ns(n){return n.flags&524288&&(ia(n)&128||n.symbol&&$s(Tu(n.symbol.declarations),Se))}function yns(n,c,u){let d=n.getContextualType(u.attributes);if(d===void 0)return v;let I=d.getProperties();if(!O(I))return v;let h=new Set;for(let b of u.attributes.properties)if(RN(b)&&h.add(R6(b.name)),W6(b)){let R=n.getTypeAtLocation(b.expression);for(let N of R.getProperties())h.add(N.escapedName)}return Gt(I,b=>Ke(b.name,c,1)&&!(b.flags&16777216||cI(b)&48||h.has(b.escapedName)))}function bns(n,c){if(Se(n))return;let u=Si(c,d=>lI(d)||Df(d));return u&&u.parent===n?u:void 0}function Ens(n,c,u,d){if(wB(n)){let I=d.symbolToNode(n,111551,void 0,1073741824);if(I&&kg(I))return I}return yle(n.name,c,u===0,!1,!1)}function nPr(n){if(Si(n,Qle)){let c=Si(n.parent,G_);if(c)return c}return ls(n)}var PLt="addMissingNewOperator",iPr=[Z.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new.code];Tg({errorCodes:iPr,getCodeActions(n){let{sourceFile:c,span:u}=n,d=Ao.ChangeTracker.with(n,I=>sPr(I,c,u));return[ng(PLt,d,Z.Add_missing_new_operator_to_call,PLt,Z.Add_missing_new_operator_to_all_calls)]},fixIds:[PLt],getAllCodeActions:n=>Md(n,iPr,(c,u)=>sPr(c,n.sourceFile,u))});function sPr(n,c,u){let d=ps(Bns(c,u),lu),I=_e.createNewExpression(d.expression,d.typeArguments,d.arguments);n.replaceNode(c,d,I)}function Bns(n,c){let u=Hc(n,c.start),d=Ku(c);for(;u.endJze(R,n.program,n.preferences,n.host,d,I)),[O(I)>1?Z.Add_missing_parameters_to_0:Z.Add_missing_parameter_to_0,u],Yze,Z.Add_all_missing_parameters)),O(h)&&Yr(b,ng(Xze,Ao.ChangeTracker.with(n,R=>Jze(R,n.program,n.preferences,n.host,d,h)),[O(h)>1?Z.Add_optional_parameters_to_0:Z.Add_optional_parameter_to_0,u],Xze,Z.Add_all_optional_parameters)),b},getAllCodeActions:n=>Md(n,oPr,(c,u)=>{let d=aPr(n.sourceFile,n.program,u.start);if(d){let{declarations:I,newParameters:h,newOptionalParameters:b}=d;n.fixId===Yze&&Jze(c,n.program,n.preferences,n.host,I,h),n.fixId===Xze&&Jze(c,n.program,n.preferences,n.host,I,b)}})});function aPr(n,c,u){let d=Hc(n,u),I=Si(d,lu);if(I===void 0||O(I.arguments)===0)return;let h=c.getTypeChecker(),b=h.getTypeAtLocation(I.expression),R=Gt(b.symbol.declarations,cPr);if(R===void 0)return;let N=zo(R);if(N===void 0||N.body===void 0||Hte(c,N.getSourceFile()))return;let V=vns(N);if(V===void 0)return;let P=[],Q=[],te=O(N.parameters),re=O(I.arguments);if(te>re)return;let ue=[N,...wns(N,R)];for(let Ae=0,de=0,Be=0;Ae{let N=ls(R),V=RM(N,c,u,d);O(R.parameters)?n.replaceNodeRangeWithNodes(N,qs(R.parameters),Ta(R.parameters),lPr(V,b,R,h),{joiner:", ",indentation:0,leadingTriviaOption:Ao.LeadingTriviaOption.IncludeAll,trailingTriviaOption:Ao.TrailingTriviaOption.Include}):X(lPr(V,b,R,h),(P,Q)=>{O(R.parameters)===0&&Q===0?n.insertNodeAt(N,R.parameters.end,P):n.insertNodeAtEndOfList(N,R.parameters,P)}),V.writeFixes(n)})}function cPr(n){switch(n.kind){case 262:case 218:case 174:case 219:return!0;default:return!1}}function lPr(n,c,u,d){let I=Ot(u.parameters,h=>_e.createParameterDeclaration(h.modifiers,h.dotDotDotToken,h.name,h.questionToken,h.type,h.initializer));for(let{pos:h,declaration:b}of d){let R=h>0?I[h-1]:void 0;I.splice(h,0,_e.updateParameterDeclaration(b,b.modifiers,b.dotDotDotToken,b.name,R&&R.questionToken?_e.createToken(58):b.questionToken,Rns(n,b.type,c),b.initializer))}return I}function wns(n,c){let u=[];for(let d of c)if(Tns(d)){if(O(d.parameters)===O(n.parameters)){u.push(d);continue}if(O(d.parameters)>O(n.parameters))return[]}return u}function Tns(n){return cPr(n)&&n.body===void 0}function uPr(n,c,u){return _e.createParameterDeclaration(void 0,void 0,n,u,c,void 0)}function Nns(n,c){return O(n)&&lr(n,u=>cMd(n,APr,(c,u,d)=>{let I=pPr(u.file,u.start);if(I!==void 0)switch(n.fixId){case OLt:{let h=fPr(I,n.host,u.code);h&&d.push(dPr(u.file.fileName,h));break}default:w.fail(`Bad fixId: ${n.fixId}`)}})});function dPr(n,c){return{type:"install package",file:n,packageName:c}}function pPr(n,c){let u=$s(Hc(n,c),Eu);if(!u)return;let d=u.text,{packageName:I}=a_e(d);return Ul(I)?void 0:I}function fPr(n,c,u){var d;return u===gPr?GN.nodeCoreModules.has(n)?"@types/node":void 0:(d=c.isKnownTypesPackageName)!=null&&d.call(c,n)?Dke(n):void 0}var IPr=[Z.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2.code,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2.code,Z.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more.code,Z.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1.code,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1.code,Z.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more.code],QLt="fixClassDoesntImplementInheritedAbstractMember";Tg({errorCodes:IPr,getCodeActions:function(c){let{sourceFile:u,span:d}=c,I=Ao.ChangeTracker.with(c,h=>mPr(CPr(u,d.start),u,c,h,c.preferences));return I.length===0?void 0:[ng(QLt,I,Z.Implement_inherited_abstract_class,QLt,Z.Implement_all_inherited_abstract_classes)]},fixIds:[QLt],getAllCodeActions:function(c){let u=new Map;return Md(c,IPr,(d,I)=>{let h=CPr(I.file,I.start);D2(u,od(h))&&mPr(h,c.sourceFile,c,d,c.preferences)})}});function CPr(n,c){let u=Hc(n,c);return ps(u.parent,va)}function mPr(n,c,u,d,I){let h=xv(n),b=u.program.getTypeChecker(),R=b.getTypeAtLocation(h),N=b.getPropertiesOfType(R).filter(xns),V=RM(c,u.program,I,u.host);p9t(n,N,c,u,I,V,P=>d.insertMemberAtStart(c,n,P)),V.writeFixes(d)}function xns(n){let c=eD(qs(n.getDeclarations()));return!(c&2)&&!!(c&64)}var MLt="classSuperMustPrecedeThisAccess",hPr=[Z.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class.code];Tg({errorCodes:hPr,getCodeActions(n){let{sourceFile:c,span:u}=n,d=yPr(c,u.start);if(!d)return;let{constructor:I,superCall:h}=d,b=Ao.ChangeTracker.with(n,R=>_Pr(R,c,I,h));return[ng(MLt,b,Z.Make_super_call_the_first_statement_in_the_constructor,MLt,Z.Make_all_super_calls_the_first_statement_in_their_constructor)]},fixIds:[MLt],getAllCodeActions(n){let{sourceFile:c}=n,u=new Map;return Md(n,hPr,(d,I)=>{let h=yPr(I.file,I.start);if(!h)return;let{constructor:b,superCall:R}=h;D2(u,od(b.parent))&&_Pr(d,c,b,R)})}});function _Pr(n,c,u,d){n.insertNodeAtConstructorStart(c,u,d),n.delete(c,d)}function yPr(n,c){let u=Hc(n,c);if(u.kind!==110)return;let d=Ob(u),I=bPr(d.body);return I&&!I.expression.arguments.some(h=>fo(h)&&h.expression===u)?{constructor:d,superCall:I}:void 0}function bPr(n){return Xf(n)&&Rf(n.expression)?n:eu(n)?void 0:hu(n,bPr)}var HLt="constructorForDerivedNeedSuperCall",EPr=[Z.Constructors_for_derived_classes_must_contain_a_super_call.code];Tg({errorCodes:EPr,getCodeActions(n){let{sourceFile:c,span:u}=n,d=BPr(c,u.start),I=Ao.ChangeTracker.with(n,h=>vPr(h,c,d));return[ng(HLt,I,Z.Add_missing_super_call,HLt,Z.Add_all_missing_super_calls)]},fixIds:[HLt],getAllCodeActions:n=>Md(n,EPr,(c,u)=>vPr(c,n.sourceFile,BPr(u.file,u.start)))});function BPr(n,c){let u=Hc(n,c);return w.assert(Df(u.parent),"token should be at the constructor declaration"),u.parent}function vPr(n,c,u){let d=_e.createExpressionStatement(_e.createCallExpression(_e.createSuper(),void 0,v));n.insertNodeAtConstructorStart(c,u,d)}var SPr="fixEnableJsxFlag",wPr=[Z.Cannot_use_JSX_unless_the_jsx_flag_is_provided.code];Tg({errorCodes:wPr,getCodeActions:function(c){let{configFile:u}=c.program.getCompilerOptions();if(u===void 0)return;let d=Ao.ChangeTracker.with(c,I=>TPr(I,u));return[dT(SPr,d,Z.Enable_the_jsx_flag_in_your_configuration_file)]},fixIds:[SPr],getAllCodeActions:n=>Md(n,wPr,c=>{let{configFile:u}=n.program.getCompilerOptions();u!==void 0&&TPr(c,u)})});function TPr(n,c){h9t(n,c,"jsx",_e.createStringLiteral("react"))}var YLt="fixNaNEquality",NPr=[Z.This_condition_will_always_return_0.code];Tg({errorCodes:NPr,getCodeActions(n){let{sourceFile:c,span:u,program:d}=n,I=RPr(d,c,u);if(I===void 0)return;let{suggestion:h,expression:b,arg:R}=I,N=Ao.ChangeTracker.with(n,V=>DPr(V,c,R,b));return[ng(YLt,N,[Z.Use_0,h],YLt,Z.Use_Number_isNaN_in_all_conditions)]},fixIds:[YLt],getAllCodeActions:n=>Md(n,NPr,(c,u)=>{let d=RPr(n.program,u.file,Ed(u.start,u.length));d&&DPr(c,u.file,d.arg,d.expression)})});function RPr(n,c,u){let d=be(n.getSemanticDiagnostics(c),b=>b.start===u.start&&b.length===u.length);if(d===void 0||d.relatedInformation===void 0)return;let I=be(d.relatedInformation,b=>b.code===Z.Did_you_mean_0.code);if(I===void 0||I.file===void 0||I.start===void 0||I.length===void 0)return;let h=y9t(I.file,Ed(I.start,I.length));if(h!==void 0&&tn(h)&&ro(h.parent))return{suggestion:kns(I.messageText),expression:h.parent,arg:h}}function DPr(n,c,u,d){let I=_e.createCallExpression(_e.createPropertyAccessExpression(_e.createIdentifier("Number"),_e.createIdentifier("isNaN")),void 0,[u]),h=d.operatorToken.kind;n.replaceNode(c,d,h===38||h===36?_e.createPrefixUnaryExpression(54,I):I)}function kns(n){let[,c]=kN(n,` +`,0).match(/'(.*)'/)||[];return c}Tg({errorCodes:[Z.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,Z.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,Z.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(c){let u=c.program.getCompilerOptions(),{configFile:d}=u;if(d===void 0)return;let I=[],h=D_(u);if(h>=5&&h<99){let V=Ao.ChangeTracker.with(c,P=>{h9t(P,d,"module",_e.createStringLiteral("esnext"))});I.push(dT("fixModuleOption",V,[Z.Set_the_module_option_in_your_configuration_file_to_0,"esnext"]))}let R=sA(u);if(R<4||R>99){let V=Ao.ChangeTracker.with(c,P=>{if(!V8(d))return;let te=[["target",_e.createStringLiteral("es2017")]];h===1&&te.push(["module",_e.createStringLiteral("commonjs")]),m9t(P,d,te)});I.push(dT("fixTargetOption",V,[Z.Set_the_target_option_in_your_configuration_file_to_0,"es2017"]))}return I.length?I:void 0}});var XLt="fixPropertyAssignment",xPr=[Z.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];Tg({errorCodes:xPr,fixIds:[XLt],getCodeActions(n){let{sourceFile:c,span:u}=n,d=GPr(c,u.start),I=Ao.ChangeTracker.with(n,h=>kPr(h,n.sourceFile,d));return[ng(XLt,I,[Z.Change_0_to_1,"=",":"],XLt,[Z.Switch_each_misused_0_to_1,"=",":"])]},getAllCodeActions:n=>Md(n,xPr,(c,u)=>kPr(c,u.file,GPr(u.file,u.start)))});function kPr(n,c,u){n.replaceNode(c,u,_e.createPropertyAssignment(u.name,u.objectAssignmentInitializer))}function GPr(n,c){return ps(Hc(n,c).parent,F_)}var JLt="extendsInterfaceBecomesImplements",FPr=[Z.Cannot_extend_an_interface_0_Did_you_mean_implements.code];Tg({errorCodes:FPr,getCodeActions(n){let{sourceFile:c}=n,u=ZPr(c,n.span.start);if(!u)return;let{extendsToken:d,heritageClauses:I}=u,h=Ao.ChangeTracker.with(n,b=>LPr(b,c,d,I));return[ng(JLt,h,Z.Change_extends_to_implements,JLt,Z.Change_all_extended_interfaces_to_implements)]},fixIds:[JLt],getAllCodeActions:n=>Md(n,FPr,(c,u)=>{let d=ZPr(u.file,u.start);d&&LPr(c,u.file,d.extendsToken,d.heritageClauses)})});function ZPr(n,c){let u=Hc(n,c),d=Km(u).heritageClauses,I=d[0].getFirstToken();return I.kind===96?{extendsToken:I,heritageClauses:d}:void 0}function LPr(n,c,u,d){if(n.replaceNode(c,u,_e.createToken(119)),d.length===2&&d[0].token===96&&d[1].token===119){let I=d[1].getFirstToken(),h=I.getFullStart();n.replaceRange(c,{pos:h,end:h},_e.createToken(28));let b=c.text,R=I.end;for(;ROPr(I,c,u));return[ng(ULt,d,[Z.Add_0_to_unresolved_variable,u.className||"this"],ULt,Z.Add_qualifier_to_all_unresolved_variables_matching_a_member_name)]},fixIds:[ULt],getAllCodeActions:n=>Md(n,WPr,(c,u)=>{let d=PPr(u.file,u.start,u.code);d&&OPr(c,n.sourceFile,d)})});function PPr(n,c,u){let d=Hc(n,c);if(sr(d)||Gc(d))return{node:d,className:u===VPr?Km(d).name.text:void 0}}function OPr(n,c,{node:u,className:d}){HE(u),n.replaceNode(c,u,_e.createPropertyAccessExpression(d?_e.createIdentifier(d):_e.createThis(),u))}var KLt="fixInvalidJsxCharacters_expression",Uze="fixInvalidJsxCharacters_htmlEntity",QPr=[Z.Unexpected_token_Did_you_mean_or_gt.code,Z.Unexpected_token_Did_you_mean_or_rbrace.code];Tg({errorCodes:QPr,fixIds:[KLt,Uze],getCodeActions(n){let{sourceFile:c,preferences:u,span:d}=n,I=Ao.ChangeTracker.with(n,b=>jLt(b,u,c,d.start,!1)),h=Ao.ChangeTracker.with(n,b=>jLt(b,u,c,d.start,!0));return[ng(KLt,I,Z.Wrap_invalid_character_in_an_expression_container,KLt,Z.Wrap_all_invalid_characters_in_an_expression_container),ng(Uze,h,Z.Convert_invalid_character_to_its_html_entity_code,Uze,Z.Convert_all_invalid_characters_to_HTML_entity_code)]},getAllCodeActions(n){return Md(n,QPr,(c,u)=>jLt(c,n.preferences,u.file,u.start,n.fixId===Uze))}});var MPr={">":">","}":"}"};function Gns(n){return Qa(MPr,n)}function jLt(n,c,u,d,I){let h=u.getText()[d];if(!Gns(h))return;let b=I?MPr[h]:`{${kue(u,c,h)}}`;n.replaceRangeWithText(u,{pos:d,end:d+1},b)}var Kze="deleteUnmatchedParameter",HPr="renameUnmatchedParameter",YPr=[Z.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name.code];Tg({fixIds:[Kze,HPr],errorCodes:YPr,getCodeActions:function(c){let{sourceFile:u,span:d}=c,I=[],h=XPr(u,d.start);if(h)return Yr(I,Fns(c,h)),Yr(I,Zns(c,h)),I},getAllCodeActions:function(c){let u=new Map;return a7(Ao.ChangeTracker.with(c,d=>{c7(c,YPr,({file:I,start:h})=>{let b=XPr(I,h);b&&u.set(b.signature,Yr(u.get(b.signature),b.jsDocParameterTag))}),u.forEach((I,h)=>{if(c.fixId===Kze){let b=new Set(I);d.filterJSDocTags(h.getSourceFile(),h,R=>!b.has(R))}})}))}});function Fns(n,{name:c,jsDocHost:u,jsDocParameterTag:d}){let I=Ao.ChangeTracker.with(n,h=>h.filterJSDocTags(n.sourceFile,u,b=>b!==d));return ng(Kze,I,[Z.Delete_unused_param_tag_0,c.getText(n.sourceFile)],Kze,Z.Delete_all_unused_param_tags)}function Zns(n,{name:c,jsDocHost:u,signature:d,jsDocParameterTag:I}){if(!O(d.parameters))return;let h=n.sourceFile,b=Tx(d),R=new Set;for(let Q of b)LB(Q)&&sr(Q.name)&&R.add(Q.name.escapedText);let N=le(d.parameters,Q=>sr(Q.name)&&!R.has(Q.name.escapedText)?Q.name.getText(h):void 0);if(N===void 0)return;let V=_e.updateJSDocParameterTag(I,I.tagName,_e.createIdentifier(N),I.isBracketed,I.typeExpression,I.isNameFirst,I.comment),P=Ao.ChangeTracker.with(n,Q=>Q.replaceJSDocComment(h,u,Ot(b,te=>te===I?V:te)));return dT(HPr,P,[Z.Rename_param_tag_name_0_to_1,c.getText(h),N])}function XPr(n,c){let u=Hc(n,c);if(u.parent&&LB(u.parent)&&sr(u.parent.name)){let d=u.parent,I=tV(d),h=SZ(d);if(I&&h)return{jsDocHost:I,signature:h,name:u.parent.name,jsDocParameterTag:d}}}var zLt="fixUnreferenceableDecoratorMetadata",Lns=[Z.A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled.code];Tg({errorCodes:Lns,getCodeActions:n=>{let c=Vns(n.sourceFile,n.program,n.span.start);if(!c)return;let u=Ao.ChangeTracker.with(n,h=>c.kind===276&&Pns(h,n.sourceFile,c,n.program)),d=Ao.ChangeTracker.with(n,h=>Wns(h,n.sourceFile,c,n.program)),I;return u.length&&(I=Yr(I,dT(zLt,u,Z.Convert_named_imports_to_namespace_import))),d.length&&(I=Yr(I,dT(zLt,d,Z.Use_import_type))),I},fixIds:[zLt]});function Vns(n,c,u){let d=$s(Hc(n,u),sr);if(!d||d.parent.kind!==183)return;let h=c.getTypeChecker().getSymbolAtLocation(d);return be(h?.declarations||v,fg(oT,yy,mm))}function Wns(n,c,u,d){if(u.kind===271){n.insertModifierBefore(c,156,u.name);return}let I=u.kind===273?u:u.parent.parent;if(I.name&&I.namedBindings)return;let h=d.getTypeChecker();JRe(I,R=>{if(ph(R.symbol,h).flags&111551)return!0})||n.insertModifierBefore(c,156,I)}function Pns(n,c,u,d){s7.doChangeNamedToNamespaceOrDefault(c,d,n,u.parent)}var QFe="unusedIdentifier",qLt="unusedIdentifier_prefix",$Lt="unusedIdentifier_delete",jze="unusedIdentifier_deleteImports",e9t="unusedIdentifier_infer",JPr=[Z._0_is_declared_but_its_value_is_never_read.code,Z._0_is_declared_but_never_used.code,Z.Property_0_is_declared_but_its_value_is_never_read.code,Z.All_imports_in_import_declaration_are_unused.code,Z.All_destructured_elements_are_unused.code,Z.All_variables_are_unused.code,Z.All_type_parameters_are_unused.code];Tg({errorCodes:JPr,getCodeActions(n){let{errorCode:c,sourceFile:u,program:d,cancellationToken:I}=n,h=d.getTypeChecker(),b=d.getSourceFiles(),R=Hc(u,n.span.start);if(Lv(R))return[Hue(Ao.ChangeTracker.with(n,Q=>Q.delete(u,R)),Z.Remove_template_tag)];if(R.kind===30){let Q=Ao.ChangeTracker.with(n,te=>KPr(te,u,R));return[Hue(Q,Z.Remove_type_parameters)]}let N=jPr(R);if(N){let Q=Ao.ChangeTracker.with(n,te=>te.delete(u,N));return[ng(QFe,Q,[Z.Remove_import_from_0,xDe(N)],jze,Z.Delete_all_unused_imports)]}else if(t9t(R)){let Q=Ao.ChangeTracker.with(n,te=>zze(u,R,te,h,b,d,I,!1));if(Q.length)return[ng(QFe,Q,[Z.Remove_unused_declaration_for_Colon_0,R.getText(u)],jze,Z.Delete_all_unused_imports)]}if(Wg(R.parent)||Wu(R.parent)){if(Uc(R.parent.parent)){let Q=R.parent.elements,te=[Q.length>1?Z.Remove_unused_declarations_for_Colon_0:Z.Remove_unused_declaration_for_Colon_0,Ot(Q,re=>re.getText(u)).join(", ")];return[Hue(Ao.ChangeTracker.with(n,re=>Ons(re,u,R.parent)),te)]}return[Hue(Ao.ChangeTracker.with(n,Q=>Qns(n,Q,u,R.parent)),Z.Remove_unused_destructuring_declaration)]}if(zPr(u,R))return[Hue(Ao.ChangeTracker.with(n,Q=>qPr(Q,u,R.parent)),Z.Remove_variable_statement)];if(sr(R)&&hp(R.parent))return[Hue(Ao.ChangeTracker.with(n,Q=>Kns(Q,u,R.parent)),[Z.Remove_unused_declaration_for_Colon_0,R.getText(u)])];let V=[];if(R.kind===140){let Q=Ao.ChangeTracker.with(n,re=>UPr(re,u,R)),te=ps(R.parent,yo).typeParameter.name.text;V.push(ng(QFe,Q,[Z.Replace_infer_0_with_unknown,te],e9t,Z.Replace_all_unused_infer_with_unknown))}else{let Q=Ao.ChangeTracker.with(n,te=>zze(u,R,te,h,b,d,I,!1));if(Q.length){let te=kg(R.parent)?R.parent:R;V.push(Hue(Q,[Z.Remove_unused_declaration_for_Colon_0,te.getText(u)]))}}let P=Ao.ChangeTracker.with(n,Q=>$Pr(Q,c,u,R));return P.length&&V.push(ng(QFe,P,[Z.Prefix_0_with_an_underscore,R.getText(u)],qLt,Z.Prefix_all_unused_declarations_with_where_possible)),V},fixIds:[qLt,$Lt,jze,e9t],getAllCodeActions:n=>{let{sourceFile:c,program:u,cancellationToken:d}=n,I=u.getTypeChecker(),h=u.getSourceFiles();return Md(n,JPr,(b,R)=>{let N=Hc(c,R.start);switch(n.fixId){case qLt:$Pr(b,R.code,c,N);break;case jze:{let V=jPr(N);V?b.delete(c,V):t9t(N)&&zze(c,N,b,I,h,u,d,!0);break}case $Lt:{if(N.kind===140||t9t(N))break;if(Lv(N))b.delete(c,N);else if(N.kind===30)KPr(b,c,N);else if(Wg(N.parent)){if(N.parent.parent.initializer)break;(!Uc(N.parent.parent)||eOr(N.parent.parent,I,h))&&b.delete(c,N.parent.parent)}else{if(Wu(N.parent.parent)&&N.parent.parent.parent.initializer)break;zPr(c,N)?qPr(b,c,N.parent):zze(c,N,b,I,h,u,d,!0)}break}case e9t:N.kind===140&&UPr(b,c,N);break;default:w.fail(JSON.stringify(n.fixId))}})}});function UPr(n,c,u){n.replaceNode(c,u.parent,_e.createKeywordTypeNode(159))}function Hue(n,c){return ng(QFe,n,c,$Lt,Z.Delete_all_unused_declarations)}function KPr(n,c,u){n.delete(c,w.checkDefined(ps(u.parent,GX).typeParameters,"The type parameter to delete should exist"))}function t9t(n){return n.kind===102||n.kind===80&&(n.parent.kind===276||n.parent.kind===273)}function jPr(n){return n.kind===102?$s(n.parent,hI):void 0}function zPr(n,c){return bl(c.parent)&&qs(c.parent.getChildren(n))===c}function qPr(n,c,u){n.delete(c,u.parent.kind===243?u.parent:u)}function Ons(n,c,u){X(u.elements,d=>n.delete(c,d))}function Qns(n,c,u,{parent:d}){if(js(d)&&d.initializer&&CG(d.initializer))if(bl(d.parent)&&O(d.parent.declarations)>1){let I=d.parent.parent,h=I.getStart(u),b=I.end;c.delete(u,d),c.insertNodeAt(u,b,d.initializer,{prefix:PZ(n.host,n.formatContext.options)+u.text.slice($Ge(u.text,h-1),h),suffix:z_e(u)?";":""})}else c.replaceNode(u,d.parent,d.initializer);else c.delete(u,d)}function $Pr(n,c,u,d){c!==Z.Property_0_is_declared_but_its_value_is_never_read.code&&(d.kind===140&&(d=ps(d.parent,yo).typeParameter.name),sr(d)&&Mns(d)&&(n.replaceNode(u,d,_e.createIdentifier(`_${d.text}`)),Uc(d.parent)&&MR(d.parent).forEach(I=>{sr(I.name)&&n.replaceNode(u,I.name,_e.createIdentifier(`_${I.name.text}`))})))}function Mns(n){switch(n.parent.kind){case 169:case 168:return!0;case 260:switch(n.parent.parent.parent.kind){case 250:case 249:return!0}}return!1}function zze(n,c,u,d,I,h,b,R){Hns(c,u,n,d,I,h,b,R),sr(c)&&Yp.Core.eachSymbolReferenceInFile(c,d,n,N=>{fo(N.parent)&&N.parent.name===N&&(N=N.parent),!R&&Uns(N)&&u.delete(n,N.parent.parent)})}function Hns(n,c,u,d,I,h,b,R){let{parent:N}=n;if(Uc(N))Yns(c,u,N,d,I,h,b,R);else if(!(R&&sr(n)&&Yp.Core.isSymbolReferencedInFile(n,d,u))){let V=oT(N)?n:kg(N)?N.parent:N;w.assert(V!==u,"should not delete whole source file"),c.delete(u,V)}}function Yns(n,c,u,d,I,h,b,R=!1){if(Xns(d,c,u,I,h,b,R))if(u.modifiers&&u.modifiers.length>0&&(!sr(u.name)||Yp.Core.isSymbolReferencedInFile(u.name,d,c)))for(let N of u.modifiers)Ag(N)&&n.deleteModifier(c,N);else!u.initializer&&eOr(u,d,I)&&n.delete(c,u)}function eOr(n,c,u){let d=n.parent.parameters.indexOf(n);return!Yp.Core.someSignatureUsage(n.parent,u,c,(I,h)=>!h||h.arguments.length>d)}function Xns(n,c,u,d,I,h,b){let{parent:R}=u;switch(R.kind){case 174:case 176:let N=R.parameters.indexOf(u),V=lI(R)?R.name:R,P=Yp.Core.getReferencedSymbolsForNode(R.pos,V,I,d,h);if(P){for(let Q of P)for(let te of Q.references)if(te.kind===Yp.EntryKind.Node){let re=eP(te.node)&&lu(te.node.parent)&&te.node.parent.arguments.length>N,ue=fo(te.node.parent)&&eP(te.node.parent.expression)&&lu(te.node.parent.parent)&&te.node.parent.parent.arguments.length>N,Ae=(lI(te.node.parent)||zS(te.node.parent))&&te.node.parent!==u.parent&&te.node.parent.parameters.length>N;if(re||ue||Ae)return!1}}return!0;case 262:return R.name&&Jns(n,c,R.name)?tOr(R,u,b):!0;case 218:case 219:return tOr(R,u,b);case 178:return!1;case 177:return!0;default:return w.failBadSyntaxKind(R)}}function Jns(n,c,u){return!!Yp.Core.eachSymbolReferenceInFile(u,n,c,d=>sr(d)&&lu(d.parent)&&d.parent.arguments.includes(d))}function tOr(n,c,u){let d=n.parameters,I=d.indexOf(c);return w.assert(I!==-1,"The parameter should already be in the list"),u?d.slice(I+1).every(h=>sr(h.name)&&!h.symbol.isReferenced):I===d.length-1}function Uns(n){return(ro(n.parent)&&n.parent.left===n||(Qx(n.parent)||GB(n.parent))&&n.parent.operand===n)&&Xf(n.parent.parent)}function Kns(n,c,u){let d=u.symbol.declarations;if(d)for(let I of d)n.delete(c,I)}var r9t="fixUnreachableCode",rOr=[Z.Unreachable_code_detected.code];Tg({errorCodes:rOr,getCodeActions(n){if(n.program.getSyntacticDiagnostics(n.sourceFile,n.cancellationToken).length)return;let u=Ao.ChangeTracker.with(n,d=>nOr(d,n.sourceFile,n.span.start,n.span.length,n.errorCode));return[ng(r9t,u,Z.Remove_unreachable_code,r9t,Z.Remove_all_unreachable_code)]},fixIds:[r9t],getAllCodeActions:n=>Md(n,rOr,(c,u)=>nOr(c,u.file,u.start,u.length,u.code))});function nOr(n,c,u,d,I){let h=Hc(c,u),b=Si(h,Cc);if(b.getStart(c)!==h.getStart(c)){let N=JSON.stringify({statementKind:w.formatSyntaxKind(b.kind),tokenKind:w.formatSyntaxKind(h.kind),errorCode:I,start:u,length:d});w.fail("Token and statement should start at the same point. "+N)}let R=(hc(b.parent)?b.parent:b).parent;if(!hc(b.parent)||b===qs(b.parent.statements))switch(R.kind){case 245:if(R.elseStatement){if(hc(b.parent))break;n.replaceNode(c,b,_e.createBlock(v));return}case 247:case 248:n.delete(c,R);return}if(hc(b.parent)){let N=u+d,V=w.checkDefined(jns(fhe(b.parent.statements,b),P=>P.possOr(u,n.sourceFile,n.span.start));return[ng(n9t,c,Z.Remove_unused_label,n9t,Z.Remove_all_unused_labels)]},fixIds:[n9t],getAllCodeActions:n=>Md(n,iOr,(c,u)=>sOr(c,u.file,u.start))});function sOr(n,c,u){let d=Hc(c,u),I=ps(d.parent,iC),h=d.getStart(c),b=I.statement.getStart(c),R=L1(h,b,c)?b:Uu(c.text,Qd(I,59,c).end,!0);n.deleteRange(c,{pos:h,end:R})}var oOr="fixJSDocTypes_plain",i9t="fixJSDocTypes_nullable",aOr=[Z.JSDoc_types_can_only_be_used_inside_documentation_comments.code,Z._0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1.code,Z._0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1.code];Tg({errorCodes:aOr,getCodeActions(n){let{sourceFile:c}=n,u=n.program.getTypeChecker(),d=lOr(c,n.span.start,u);if(!d)return;let{typeNode:I,type:h}=d,b=I.getText(c),R=[N(h,oOr,Z.Change_all_jsdoc_style_types_to_TypeScript)];return I.kind===314&&R.push(N(h,i9t,Z.Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types)),R;function N(V,P,Q){let te=Ao.ChangeTracker.with(n,re=>cOr(re,c,I,V,u));return ng("jdocTypes",te,[Z.Change_0_to_1,b,u.typeToString(V)],P,Q)}},fixIds:[oOr,i9t],getAllCodeActions(n){let{fixId:c,program:u,sourceFile:d}=n,I=u.getTypeChecker();return Md(n,aOr,(h,b)=>{let R=lOr(b.file,b.start,I);if(!R)return;let{typeNode:N,type:V}=R,P=N.kind===314&&c===i9t?I.getNullableType(V,32768):V;cOr(h,d,N,P,I)})}});function cOr(n,c,u,d,I){n.replaceNode(c,u,I.typeToTypeNode(d,u,void 0))}function lOr(n,c,u){let d=Si(Hc(n,c),zns),I=d&&d.type;return I&&{typeNode:I,type:qns(u,I)}}function zns(n){switch(n.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 qns(n,c){if(gte(c)){let u=n.getTypeFromTypeNode(c.type);return u===n.getNeverType()||u===n.getVoidType()?u:n.getUnionType(Yr([u,n.getUndefinedType()],c.postfix?void 0:n.getNullType()))}return n.getTypeFromTypeNode(c)}var s9t="fixMissingCallParentheses",uOr=[Z.This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead.code];Tg({errorCodes:uOr,fixIds:[s9t],getCodeActions(n){let{sourceFile:c,span:u}=n,d=AOr(c,u.start);if(!d)return;let I=Ao.ChangeTracker.with(n,h=>gOr(h,n.sourceFile,d));return[ng(s9t,I,Z.Add_missing_call_parentheses,s9t,Z.Add_all_missing_call_parentheses)]},getAllCodeActions:n=>Md(n,uOr,(c,u)=>{let d=AOr(u.file,u.start);d&&gOr(c,u.file,d)})});function gOr(n,c,u){n.replaceNodeWithText(c,u,`${u.text}()`)}function AOr(n,c){let u=Hc(n,c);if(fo(u.parent)){let d=u.parent;for(;fo(d.parent);)d=d.parent;return d.name}if(sr(u))return u}var dOr="fixMissingTypeAnnotationOnExports",o9t="add-annotation",a9t="add-type-assertion",$ns="extract-expression",pOr=[Z.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations.code,Z.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations.code,Z.At_least_one_accessor_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations.code,Z.Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,Z.Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,Z.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,Z.Expression_type_can_t_be_inferred_with_isolatedDeclarations.code,Z.Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations.code,Z.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations.code,Z.Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations.code,Z.Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations.code,Z.Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations.code,Z.Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations.code,Z.Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations.code,Z.Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations.code,Z.Default_exports_can_t_be_inferred_with_isolatedDeclarations.code,Z.Only_const_arrays_can_be_inferred_with_isolatedDeclarations.code,Z.Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function.code,Z.Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_it_s_type_This_is_not_supported_with_isolatedDeclarations.code,Z.Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations.code,Z.Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit.code],eis=new Set([177,174,172,262,218,219,260,169,277,263,206,207]),tis=1074273293;Tg({errorCodes:pOr,fixIds:[dOr],getCodeActions(n){let c=[];return Yue(o9t,c,n,0,u=>u.addTypeAnnotation(n.span)),Yue(o9t,c,n,1,u=>u.addTypeAnnotation(n.span)),Yue(o9t,c,n,2,u=>u.addTypeAnnotation(n.span)),Yue(a9t,c,n,0,u=>u.addInlineAssertion(n.span)),Yue(a9t,c,n,1,u=>u.addInlineAssertion(n.span)),Yue(a9t,c,n,2,u=>u.addInlineAssertion(n.span)),Yue($ns,c,n,0,u=>u.extractAsVariable(n.span)),c},getAllCodeActions:n=>{let c=fOr(n,0,u=>{c7(n,pOr,d=>{u.addTypeAnnotation(d)})});return a7(c.textChanges)}});function Yue(n,c,u,d,I){let h=fOr(u,d,I);h.result&&h.textChanges.length&&c.push(ng(n,h.textChanges,h.result,dOr,Z.Add_all_missing_type_annotations))}function fOr(n,c,u){let d={typeNode:void 0,mutatedTarget:!1},I=Ao.ChangeTracker.fromContext(n),h=n.sourceFile,b=n.program,R=b.getTypeChecker(),N=sA(b.getCompilerOptions()),V=RM(n.sourceFile,n.program,n.preferences,n.host),P=new Set,Q=new Set,te=wV({preserveSourceNewlines:!1}),re=u({addTypeAnnotation:ue,addInlineAssertion:Ne,extractAsVariable:Me});return V.writeFixes(I),{result:re,textChanges:I.getChanges()};function ue(Pt){n.cancellationToken.throwIfCancellationRequested();let Vr=Hc(h,Pt.start),Hr=De(Vr);if(Hr)return hp(Hr)?Ae(Hr):lt(Hr);let pr=jt(Vr);if(pr)return lt(pr)}function Ae(Pt){var Vr;if(Q?.has(Pt))return;Q?.add(Pt);let Hr=R.getTypeAtLocation(Pt),pr=R.getPropertiesOfType(Hr);if(!Pt.name||pr.length===0)return;let zr=[];for(let Pi of pr)Ke(Pi.name,sA(b.getCompilerOptions()))&&(Pi.valueDeclaration&&js(Pi.valueDeclaration)||zr.push(_e.createVariableStatement([_e.createModifier(95)],_e.createVariableDeclarationList([_e.createVariableDeclaration(Pi.name,void 0,Lt(R.getTypeOfSymbol(Pi),Pt),void 0)]))));if(zr.length===0)return;let $n=[];(Vr=Pt.modifiers)!=null&&Vr.some(Pi=>Pi.kind===95)&&$n.push(_e.createModifier(95)),$n.push(_e.createModifier(138));let bi=_e.createModuleDeclaration($n,Pt.name,_e.createModuleBlock(zr),101441696);return I.insertNodeAfter(h,Pt,bi),[Z.Annotate_types_of_properties_expando_function_in_a_namespace]}function de(Pt){return!lp(Pt)&&!lu(Pt)&&!ru(Pt)&&!Cf(Pt)}function Be(Pt,Vr){return de(Pt)&&(Pt=_e.createParenthesizedExpression(Pt)),_e.createAsExpression(Pt,Vr)}function Fe(Pt,Vr){return de(Pt)&&(Pt=_e.createParenthesizedExpression(Pt)),_e.createAsExpression(_e.createSatisfiesExpression(Pt,vd(Vr)),Vr)}function Ne(Pt){n.cancellationToken.throwIfCancellationRequested();let Vr=Hc(h,Pt.start);if(De(Vr))return;let pr=mr(Vr,Pt);if(!pr||Z5(pr)||Z5(pr.parent))return;let zr=tn(pr),$n=F_(pr);if(!$n&&xC(pr)||Si(pr,fu)||Si(pr,yV)||zr&&(Si(pr,OE)||Si(pr,Ma))||fh(pr))return;let bi=Si(pr,js),Pi=bi&&R.getTypeAtLocation(bi);if(Pi&&Pi.flags&8192||!(zr||$n))return;let{typeNode:Ns,mutatedTarget:gi}=Tt(pr,Pi);if(!(!Ns||gi))return $n?I.insertNodeAt(h,pr.end,Be(vd(pr.name),Ns),{prefix:": "}):zr?I.replaceNode(h,pr,Fe(vd(pr),Ns)):w.assertNever(pr),[Z.Add_satisfies_and_an_inline_type_assertion_with_0,Dr(Ns)]}function Me(Pt){n.cancellationToken.throwIfCancellationRequested();let Vr=Hc(h,Pt.start),Hr=mr(Vr,Pt);if(!Hr||Z5(Hr)||Z5(Hr.parent)||!tn(Hr))return;if(Cf(Hr))return I.replaceNode(h,Hr,Be(Hr,_e.createTypeReferenceNode("const"))),[Z.Mark_array_literal_as_const];let zr=Si(Hr,jC);if(zr){if(zr===Hr.parent&&lp(Hr))return;let $n=_e.createUniqueName(gZt(Hr,h,R,h),16),bi=Hr,Pi=Hr;if(fh(bi)&&(bi=qR(bi.parent),Kt(bi.parent)?Pi=bi=bi.parent:Pi=Be(bi,_e.createTypeReferenceNode("const"))),lp(bi))return;let Ns=_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration($n,void 0,void 0,Pi)],2)),gi=Si(Hr,Cc);return I.insertNodeBefore(h,gi,Ns),I.replaceNode(h,bi,_e.createAsExpression(_e.cloneNode($n),_e.createTypeQueryNode(_e.cloneNode($n)))),[Z.Extract_to_variable_and_replace_with_0_as_typeof_0,Dr($n)]}}function De(Pt){let Vr=Si(Pt,Hr=>Cc(Hr)?"quit":eM(Hr));if(Vr&&eM(Vr)){let Hr=Vr;if(ro(Hr)&&(Hr=Hr.left,!eM(Hr)))return;let pr=R.getTypeAtLocation(Hr.expression);if(!pr)return;let zr=R.getPropertiesOfType(pr);if(lr(zr,$n=>$n.valueDeclaration===Vr||$n.valueDeclaration===Vr.parent)){let $n=pr.symbol.valueDeclaration;if($n){if(RG($n)&&js($n.parent))return $n.parent;if(hp($n))return $n}}}}function lt(Pt){if(!P?.has(Pt))switch(P?.add(Pt),Pt.kind){case 169:case 172:case 260:return Zt(Pt);case 219:case 218:case 262:case 174:case 177:return Le(Pt,h);case 277:return je(Pt);case 263:return st(Pt);case 206:case 207:return qe(Pt);default:throw new Error(`Cannot find a fix for the given node ${Pt.kind}`)}}function Le(Pt,Vr){if(Pt.type)return;let{typeNode:Hr}=Tt(Pt);if(Hr)return I.tryInsertTypeAnnotation(Vr,Pt,Hr),[Z.Add_return_type_0,Dr(Hr)]}function je(Pt){if(Pt.isExportEquals)return;let{typeNode:Vr}=Tt(Pt.expression);if(!Vr)return;let Hr=_e.createUniqueName("_default");return I.replaceNodeWithNodes(h,Pt,[_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(Hr,void 0,Vr,Pt.expression)],2)),_e.updateExportAssignment(Pt,Pt?.modifiers,Hr)]),[Z.Extract_default_export_to_variable]}function st(Pt){var Vr,Hr;let pr=(Vr=Pt.heritageClauses)==null?void 0:Vr.find(jn=>jn.token===96),zr=pr?.types[0];if(!zr)return;let{typeNode:$n}=Tt(zr.expression);if(!$n)return;let bi=_e.createUniqueName(Pt.name?Pt.name.text+"Base":"Anonymous",16),Pi=_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(bi,void 0,$n,zr.expression)],2));I.insertNodeBefore(h,Pt,Pi);let Ns=h2(h.text,zr.end),gi=((Hr=Ns?.[Ns.length-1])==null?void 0:Hr.end)??zr.end;return I.replaceRange(h,{pos:zr.getFullStart(),end:gi},bi,{prefix:" "}),[Z.Extract_base_class_to_variable]}let nt;(Pt=>{Pt[Pt.Text=0]="Text",Pt[Pt.Computed=1]="Computed",Pt[Pt.ArrayAccess=2]="ArrayAccess",Pt[Pt.Identifier=3]="Identifier"})(nt||(nt={}));function qe(Pt){var Vr;let Hr=Pt.parent,pr=Pt.parent.parent.parent;if(!Hr.initializer)return;let zr,$n=[];if(sr(Hr.initializer))zr={expression:{kind:3,identifier:Hr.initializer}};else{let Ns=_e.createUniqueName("dest",16);zr={expression:{kind:3,identifier:Ns}},$n.push(_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(Ns,void 0,void 0,Hr.initializer)],2)))}let bi=[];Wu(Pt)?it(Pt,bi,zr):It(Pt,bi,zr);let Pi=new Map;for(let Ns of bi){if(Ns.element.propertyName&&kg(Ns.element.propertyName)){let jn=Ns.element.propertyName.expression,xs=_e.getGeneratedNameForNode(jn),Bc=_e.createVariableDeclaration(xs,void 0,void 0,jn),xi=_e.createVariableDeclarationList([Bc],2),rc=_e.createVariableStatement(void 0,xi);$n.push(rc),Pi.set(jn,xs)}let gi=Ns.element.name;if(Wu(gi))it(gi,bi,Ns);else if(Wg(gi))It(gi,bi,Ns);else{let{typeNode:jn}=Tt(gi),xs=dt(Ns,Pi);if(Ns.element.initializer){let xi=(Vr=Ns.element)==null?void 0:Vr.propertyName,rc=_e.createUniqueName(xi&&sr(xi)?xi.text:"temp",16);$n.push(_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(rc,void 0,void 0,xs)],2))),xs=_e.createConditionalExpression(_e.createBinaryExpression(rc,_e.createToken(37),_e.createIdentifier("undefined")),_e.createToken(58),Ns.element.initializer,_e.createToken(59),xs)}let Bc=ya(pr,32)?[_e.createToken(95)]:void 0;$n.push(_e.createVariableStatement(Bc,_e.createVariableDeclarationList([_e.createVariableDeclaration(gi,void 0,jn,xs)],2)))}}return pr.declarationList.declarations.length>1&&$n.push(_e.updateVariableStatement(pr,pr.modifiers,_e.updateVariableDeclarationList(pr.declarationList,pr.declarationList.declarations.filter(Ns=>Ns!==Pt.parent)))),I.replaceNodeWithNodes(h,pr,$n),[Z.Extract_binding_expressions_to_variable]}function it(Pt,Vr,Hr){for(let pr=0;pr=0;--zr){let $n=Hr[zr].expression;$n.kind===0?pr=_e.createPropertyAccessChain(pr,void 0,_e.createIdentifier($n.text)):$n.kind===1?pr=_e.createElementAccessExpression(pr,Vr.get($n.computed)):$n.kind===2&&(pr=_e.createElementAccessExpression(pr,$n.arrayIndex))}return pr}function Tt(Pt,Vr){if(c===1)return Nt(Pt);let Hr=Z5(Pt)?kt(Pt):R.getTypeAtLocation(Pt);if(!Hr)return d;if(c===2){Vr&&(Hr=Vr);let zr=R.getWidenedLiteralType(Hr);if(R.isTypeAssignableTo(zr,Hr))return d;Hr=zr}Uc(Pt)&&R.requiresAddingImplicitUndefined(Pt)&&(Hr=R.getUnionType([R.getUndefinedType(),Hr],0));let pr=(js(Pt)||Hl(Pt)&&ya(Pt,264))&&Hr.flags&8192?1048576:0;return{typeNode:Lt(Hr,Si(Pt,xC)??h,pr),mutatedTarget:!1}}function St(Pt){return _e.createTypeQueryNode(vd(Pt))}function He(Pt,Vr="temp"){let Hr=!!Si(Pt,Kt);return Hr?Et(Pt,Vr,Hr,pr=>pr.elements,fh,_e.createSpreadElement,pr=>_e.createArrayLiteralExpression(pr,!0),pr=>_e.createTupleTypeNode(pr.map(_e.createRestTypeNode))):d}function ht(Pt,Vr="temp"){let Hr=!!Si(Pt,Kt);return Et(Pt,Vr,Hr,pr=>pr.properties,Ux,_e.createSpreadAssignment,pr=>_e.createObjectLiteralExpression(pr,!0),_e.createIntersectionTypeNode)}function Et(Pt,Vr,Hr,pr,zr,$n,bi,Pi){let Ns=[],gi=[],jn,xs=Si(Pt,Cc);for(let rc of pr(Pt))zr(rc)?(xi(),lp(rc.expression)?(Ns.push(St(rc.expression)),gi.push(rc)):Bc(rc.expression)):(jn??(jn=[])).push(rc);if(gi.length===0)return d;return xi(),I.replaceNode(h,Pt,bi(gi)),{typeNode:Pi(Ns),mutatedTarget:!0};function Bc(rc){let Wl=_e.createUniqueName(Vr+"_Part"+(gi.length+1),16),gl=Hr?_e.createAsExpression(rc,_e.createTypeReferenceNode("const")):rc,mc=_e.createVariableStatement(void 0,_e.createVariableDeclarationList([_e.createVariableDeclaration(Wl,void 0,void 0,gl)],2));I.insertNodeBefore(h,xs,mc),Ns.push(St(Wl)),gi.push($n(Wl))}function xi(){jn&&(Bc(bi(jn)),jn=void 0)}}function Kt(Pt){return kE(Pt)&&B2(Pt.type)}function Nt(Pt){if(Uc(Pt))return d;if(F_(Pt))return{typeNode:St(Pt.name),mutatedTarget:!1};if(lp(Pt))return{typeNode:St(Pt),mutatedTarget:!1};if(Kt(Pt))return Nt(Pt.expression);if(Cf(Pt)){let Vr=Si(Pt,js),Hr=Vr&&sr(Vr.name)?Vr.name.text:void 0;return He(Pt,Hr)}if(ru(Pt)){let Vr=Si(Pt,js),Hr=Vr&&sr(Vr.name)?Vr.name.text:void 0;return ht(Pt,Hr)}if(js(Pt)&&Pt.initializer)return Nt(Pt.initializer);if(vN(Pt)){let{typeNode:Vr,mutatedTarget:Hr}=Nt(Pt.whenTrue);if(!Vr)return d;let{typeNode:pr,mutatedTarget:zr}=Nt(Pt.whenFalse);return pr?{typeNode:_e.createUnionTypeNode([Vr,pr]),mutatedTarget:Hr||zr}:d}return d}function Lt(Pt,Vr,Hr=0){let pr=!1,zr=MFe(R,V,Pt,Vr,N,tis|Hr,{moduleResolverHost:b,trackSymbol(){return!0},reportTruncationError(){pr=!0}});return pr?_e.createKeywordTypeNode(133):zr}function kt(Pt){let Vr=R.getSignatureFromDeclaration(Pt);if(Vr)return R.getReturnTypeOfSignature(Vr)}function Zt(Pt){let{typeNode:Vr}=Tt(Pt);if(Vr)return Pt.type?I.replaceNode(ls(Pt),Pt.type,Vr):I.tryInsertTypeAnnotation(ls(Pt),Pt,Vr),[Z.Add_annotation_of_type_0,Dr(Vr)]}function Dr(Pt){ao(Pt,1);let Vr=te.printNode(4,Pt,h);return Vr.length>b5?Vr.substring(0,b5-3)+"...":(ao(Pt,0),Vr)}function jt(Pt){return Si(Pt,Vr=>eis.has(Vr.kind)&&(!Wg(Vr)&&!Wu(Vr)||js(Vr.parent)))}function mr(Pt,Vr){for(;Pt&&Pt.endmOr(h,c,d));return[ng(c9t,I,Z.Add_async_modifier_to_containing_function,c9t,Z.Add_all_missing_async_modifiers)]},fixIds:[c9t],getAllCodeActions:function(c){let u=new Map;return Md(c,IOr,(d,I)=>{let h=COr(I.file,I.start);!h||!D2(u,od(h.insertBefore))||mOr(d,c.sourceFile,h)})}});function ris(n){if(n.type)return n.type;if(js(n.parent)&&n.parent.type&&H(n.parent.type))return n.parent.type.type}function COr(n,c){let u=Hc(n,c),d=Ob(u);if(!d)return;let I;switch(d.kind){case 174:I=d.name;break;case 262:case 218:I=Qd(d,100,n);break;case 219:let h=d.typeParameters?30:21;I=Qd(d,h,n)||qs(d.parameters);break;default:return}return I&&{insertBefore:I,returnType:ris(d)}}function mOr(n,c,{insertBefore:u,returnType:d}){if(d){let I=$$(d);(!I||I.kind!==80||I.text!=="Promise")&&n.replaceNode(c,d,_e.createTypeReferenceNode("Promise",_e.createNodeArray([d])))}n.insertModifierBefore(c,134,u)}var hOr=[Z._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property.code,Z._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor.code],l9t="fixPropertyOverrideAccessor";Tg({errorCodes:hOr,getCodeActions(n){let c=_Or(n.sourceFile,n.span.start,n.span.length,n.errorCode,n);if(c)return[ng(l9t,c,Z.Generate_get_and_set_accessors,l9t,Z.Generate_get_and_set_accessors_for_all_overriding_properties)]},fixIds:[l9t],getAllCodeActions:n=>Md(n,hOr,(c,u)=>{let d=_Or(u.file,u.start,u.length,u.code,n);if(d)for(let I of d)c.pushRaw(n.sourceFile,I)})});function _Or(n,c,u,d,I){let h,b;if(d===Z._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property.code)h=c,b=c+u;else if(d===Z._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor.code){let R=I.program.getTypeChecker(),N=Hc(n,c).parent;w.assert(zw(N),"error span of fixPropertyOverrideAccessor should only be on an accessor");let V=N.parent;w.assert(va(V),"erroneous accessors should only be inside classes");let P=Tu(b9t(V,R));if(!P)return[];let Q=wc(j9(N.name)),te=R.getPropertyOfType(R.getTypeAtLocation(P),Q);if(!te||!te.valueDeclaration)return[];h=te.valueDeclaration.pos,b=te.valueDeclaration.end,n=ls(te.valueDeclaration)}else w.fail("fixPropertyOverrideAccessor codefix got unexpected error code "+d);return OOr(n,I.program,h,b,I,Z.Generate_get_and_set_accessors.message)}var u9t="inferFromUsage",yOr=[Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code,Z.Variable_0_implicitly_has_an_1_type.code,Z.Parameter_0_implicitly_has_an_1_type.code,Z.Rest_parameter_0_implicitly_has_an_any_type.code,Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code,Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code,Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code,Z.Member_0_implicitly_has_an_1_type.code,Z.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code,Z.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code,Z._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code,Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code,Z.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code];Tg({errorCodes:yOr,getCodeActions(n){let{sourceFile:c,program:u,span:{start:d},errorCode:I,cancellationToken:h,host:b,preferences:R}=n,N=Hc(c,d),V,P=Ao.ChangeTracker.with(n,te=>{V=bOr(te,c,N,I,u,h,fI,b,R)}),Q=V&&Sl(V);return!Q||P.length===0?void 0:[ng(u9t,P,[nis(I,N),Nf(Q)],u9t,Z.Infer_all_types_from_usage)]},fixIds:[u9t],getAllCodeActions(n){let{sourceFile:c,program:u,cancellationToken:d,host:I,preferences:h}=n,b=Vte();return Md(n,yOr,(R,N)=>{bOr(R,c,Hc(N.file,N.start),N.code,u,d,b,I,h)})}});function nis(n,c){switch(n){case Z.Parameter_0_implicitly_has_an_1_type.code:case Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return ob(Ob(c))?Z.Infer_type_of_0_from_usage:Z.Infer_parameter_types_from_usage;case Z.Rest_parameter_0_implicitly_has_an_any_type.code:case Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Infer_parameter_types_from_usage;case Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code:return Z.Infer_this_type_of_0_from_usage;default:return Z.Infer_type_of_0_from_usage}}function iis(n){switch(n){case Z.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code:return Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code;case Z.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Variable_0_implicitly_has_an_1_type.code;case Z.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Parameter_0_implicitly_has_an_1_type.code;case Z.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Rest_parameter_0_implicitly_has_an_any_type.code;case Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code:return Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code;case Z._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code:return Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code;case Z.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code:return Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code;case Z.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return Z.Member_0_implicitly_has_an_1_type.code}return n}function bOr(n,c,u,d,I,h,b,R,N){if(!C5(u.kind)&&u.kind!==80&&u.kind!==26&&u.kind!==110)return;let{parent:V}=u,P=RM(c,I,N,R);switch(d=iis(d),d){case Z.Member_0_implicitly_has_an_1_type.code:case Z.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code:if(js(V)&&b(V)||Hl(V)||i_(V))return EOr(n,P,c,V,I,R,h),P.writeFixes(n),V;if(fo(V)){let re=f0e(V.name,I,h),ue=Gue(re,V,I,R);if(ue){let Ae=_e.createJSDocTypeTag(void 0,_e.createJSDocTypeExpression(ue),void 0);n.addJSDocTags(c,ps(V.parent.parent,Xf),[Ae])}return P.writeFixes(n),V}return;case Z.Variable_0_implicitly_has_an_1_type.code:{let re=I.getTypeChecker().getSymbolAtLocation(u);return re&&re.valueDeclaration&&js(re.valueDeclaration)&&b(re.valueDeclaration)?(EOr(n,P,ls(re.valueDeclaration),re.valueDeclaration,I,R,h),P.writeFixes(n),re.valueDeclaration):void 0}}let Q=Ob(u);if(Q===void 0)return;let te;switch(d){case Z.Parameter_0_implicitly_has_an_1_type.code:if(ob(Q)){BOr(n,P,c,Q,I,R,h),te=Q;break}case Z.Rest_parameter_0_implicitly_has_an_any_type.code:if(b(Q)){let re=ps(V,Uc);sis(n,P,c,re,Q,I,R,h),te=re}break;case Z.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code:case Z._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code:Qb(Q)&&sr(Q.name)&&(qze(n,P,c,Q,f0e(Q.name,I,h),I,R),te=Q);break;case Z.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code:ob(Q)&&(BOr(n,P,c,Q,I,R,h),te=Q);break;case Z.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code:Ao.isThisTypeAnnotatable(Q)&&b(Q)&&(ois(n,c,Q,I,R,h),te=Q);break;default:return w.fail(String(d))}return P.writeFixes(n),te}function EOr(n,c,u,d,I,h,b){sr(d.name)&&qze(n,c,u,d,f0e(d.name,I,b),I,h)}function sis(n,c,u,d,I,h,b,R){if(!sr(d.name))return;let N=lis(I,u,h,R);if(w.assert(I.parameters.length===N.length,"Parameter count and inference count should match"),io(I))vOr(n,u,N,h,b);else{let V=Id(I)&&!Qd(I,21,u);V&&n.insertNodeBefore(u,qs(I.parameters),_e.createToken(21));for(let{declaration:P,type:Q}of N)P&&!P.type&&!P.initializer&&qze(n,c,u,P,Q,h,b);V&&n.insertNodeAfter(u,Ta(I.parameters),_e.createToken(22))}}function ois(n,c,u,d,I,h){let b=SOr(u,c,d,h);if(!b||!b.length)return;let R=A9t(d,b,h).thisParameter(),N=Gue(R,u,d,I);N&&(io(u)?ais(n,c,u,N):n.tryInsertThisTypeAnnotation(c,u,N))}function ais(n,c,u,d){n.addJSDocTags(c,u,[_e.createJSDocThisTag(void 0,_e.createJSDocTypeExpression(d))])}function BOr(n,c,u,d,I,h,b){let R=$i(d.parameters);if(R&&sr(d.name)&&sr(R.name)){let N=f0e(d.name,I,b);N===I.getTypeChecker().getAnyType()&&(N=f0e(R.name,I,b)),io(d)?vOr(n,u,[{declaration:R,type:N}],I,h):qze(n,c,u,R,N,I,h)}}function qze(n,c,u,d,I,h,b){let R=Gue(I,d,h,b);if(R)if(io(u)&&d.kind!==171){let N=js(d)?$s(d.parent.parent,Dp):d;if(!N)return;let V=_e.createJSDocTypeExpression(R),P=Qb(d)?_e.createJSDocReturnTag(void 0,V,void 0):_e.createJSDocTypeTag(void 0,V,void 0);n.addJSDocTags(u,N,[P])}else cis(R,d,u,n,c,sA(h.getCompilerOptions()))||n.tryInsertTypeAnnotation(u,d,R)}function cis(n,c,u,d,I,h){let b=w4(n,h);return b&&d.tryInsertTypeAnnotation(u,c,b.typeNode)?(X(b.symbols,R=>I.addImportFromExportedSymbol(R,!0)),!0):!1}function vOr(n,c,u,d,I){let h=u.length&&u[0].declaration.parent;if(!h)return;let b=tr(u,R=>{let N=R.declaration;if(N.initializer||wx(N)||!sr(N.name))return;let V=R.type&&Gue(R.type,N,d,I);if(V){let P=_e.cloneNode(N.name);return ao(P,7168),{name:_e.cloneNode(N.name),param:N,isOptional:!!R.isOptional,typeNode:V}}});if(b.length)if(Id(h)||PA(h)){let R=Id(h)&&!Qd(h,21,c);R&&n.insertNodeBefore(c,qs(h.parameters),_e.createToken(21)),X(b,({typeNode:N,param:V})=>{let P=_e.createJSDocTypeTag(void 0,_e.createJSDocTypeExpression(N)),Q=_e.createJSDocComment(void 0,[P]);n.insertNodeAt(c,V.getStart(c),Q,{suffix:" "})}),R&&n.insertNodeAfter(c,Ta(h.parameters),_e.createToken(22))}else{let R=Ot(b,({name:N,typeNode:V,isOptional:P})=>_e.createJSDocParameterTag(void 0,N,!!P,_e.createJSDocTypeExpression(V),!1,void 0));n.addJSDocTags(c,h,R)}}function g9t(n,c,u){return tr(Yp.getReferenceEntriesForNode(-1,n,c,c.getSourceFiles(),u),d=>d.kind!==Yp.EntryKind.Span?$s(d.node,sr):void 0)}function f0e(n,c,u){let d=g9t(n,c,u);return A9t(c,d,u).single()}function lis(n,c,u,d){let I=SOr(n,c,u,d);return I&&A9t(u,I,d).parameters(n)||n.parameters.map(h=>({declaration:h,type:sr(h.name)?f0e(h.name,u,d):u.getTypeChecker().getAnyType()}))}function SOr(n,c,u,d){let I;switch(n.kind){case 176:I=Qd(n,137,c);break;case 219:case 218:let h=n.parent;I=(js(h)||Hl(h))&&sr(h.name)?h.name:n.name;break;case 262:case 174:case 173:I=n.name;break}if(I)return g9t(I,u,d)}function A9t(n,c,u){let d=n.getTypeChecker(),I={string:()=>d.getStringType(),number:()=>d.getNumberType(),Array:Lt=>d.createArrayType(Lt),Promise:Lt=>d.createPromiseType(Lt)},h=[d.getStringType(),d.getNumberType(),d.createArrayType(d.getAnyType()),d.createPromiseType(d.getAnyType())];return{single:N,parameters:V,thisParameter:P};function b(){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}}function R(Lt){let kt=new Map;for(let Dr of Lt)Dr.properties&&Dr.properties.forEach((jt,mr)=>{kt.has(mr)||kt.set(mr,[]),kt.get(mr).push(jt)});let Zt=new Map;return kt.forEach((Dr,jt)=>{Zt.set(jt,R(Dr))}),{isNumber:Lt.some(Dr=>Dr.isNumber),isString:Lt.some(Dr=>Dr.isString),isNumberOrString:Lt.some(Dr=>Dr.isNumberOrString),candidateTypes:Fr(Lt,Dr=>Dr.candidateTypes),properties:Zt,calls:Fr(Lt,Dr=>Dr.calls),constructs:Fr(Lt,Dr=>Dr.constructs),numberIndex:X(Lt,Dr=>Dr.numberIndex),stringIndex:X(Lt,Dr=>Dr.stringIndex),candidateThisTypes:Fr(Lt,Dr=>Dr.candidateThisTypes),inferredTypes:void 0}}function N(){return st(Q(c))}function V(Lt){if(c.length===0||!Lt.parameters)return;let kt=b();for(let Dr of c)u.throwIfCancellationRequested(),te(Dr,kt);let Zt=[...kt.constructs||[],...kt.calls||[]];return Lt.parameters.map((Dr,jt)=>{let mr=[],Pt=Dv(Dr),Vr=!1;for(let pr of Zt)if(pr.argumentTypes.length<=jt)Vr=io(Lt),mr.push(d.getUndefinedType());else if(Pt)for(let zr=jt;zrZt.every(jt=>!jt(Dr)))}function je(Lt){return st(qe(Lt))}function st(Lt){if(!Lt.length)return d.getAnyType();let kt=d.getUnionType([d.getStringType(),d.getNumberType()]),Dr=Le(Lt,[{high:mr=>mr===d.getStringType()||mr===d.getNumberType(),low:mr=>mr===kt},{high:mr=>!(mr.flags&16385),low:mr=>!!(mr.flags&16385)},{high:mr=>!(mr.flags&114689)&&!(ia(mr)&16),low:mr=>!!(ia(mr)&16)}]),jt=Dr.filter(mr=>ia(mr)&16);return jt.length&&(Dr=Dr.filter(mr=>!(ia(mr)&16)),Dr.push(nt(jt))),d.getWidenedType(d.getUnionType(Dr.map(d.getBaseTypeOfLiteralType),2))}function nt(Lt){if(Lt.length===1)return Lt[0];let kt=[],Zt=[],Dr=[],jt=[],mr=!1,Pt=!1,Vr=ec();for(let zr of Lt){for(let Pi of d.getPropertiesOfType(zr))Vr.add(Pi.escapedName,Pi.valueDeclaration?d.getTypeOfSymbolAtLocation(Pi,Pi.valueDeclaration):d.getAnyType());kt.push(...d.getSignaturesOfType(zr,0)),Zt.push(...d.getSignaturesOfType(zr,1));let $n=d.getIndexInfoOfType(zr,0);$n&&(Dr.push($n.type),mr=mr||$n.isReadonly);let bi=d.getIndexInfoOfType(zr,1);bi&&(jt.push(bi.type),Pt=Pt||bi.isReadonly)}let Hr=Qs(Vr,(zr,$n)=>{let bi=$n.lengthd.getBaseTypeOfLiteralType(Vr)),Pt=(Dr=Lt.calls)!=null&&Dr.length?it(Lt):void 0;return Pt&&mr?jt.push(d.getUnionType([Pt,...mr],2)):(Pt&&jt.push(Pt),O(mr)&&jt.push(...mr)),jt.push(...It(Lt)),jt}function it(Lt){let kt=new Map;Lt.properties&&Lt.properties.forEach((mr,Pt)=>{let Vr=d.createSymbol(4,Pt);Vr.links.type=je(mr),kt.set(Pt,Vr)});let Zt=Lt.calls?[Et(Lt.calls)]:[],Dr=Lt.constructs?[Et(Lt.constructs)]:[],jt=Lt.stringIndex?[d.createIndexInfo(d.getStringType(),je(Lt.stringIndex),!1)]:[];return d.createAnonymousType(void 0,kt,Zt,Dr,jt)}function It(Lt){if(!Lt.properties||!Lt.properties.size)return[];let kt=h.filter(Zt=>dt(Zt,Lt));return 0Tt(Zt,Lt)):[]}function dt(Lt,kt){return kt.properties?!UC(kt.properties,(Zt,Dr)=>{let jt=d.getTypeOfPropertyOfType(Lt,Dr);return jt?Zt.calls?!d.getSignaturesOfType(jt,0).length||!d.isTypeAssignableTo(jt,ht(Zt.calls)):!d.isTypeAssignableTo(jt,je(Zt)):!0}):!1}function Tt(Lt,kt){if(!(ia(Lt)&4)||!kt.properties)return Lt;let Zt=Lt.target,Dr=Tu(Zt.typeParameters);if(!Dr)return Lt;let jt=[];return kt.properties.forEach((mr,Pt)=>{let Vr=d.getTypeOfPropertyOfType(Zt,Pt);w.assert(!!Vr,"generic should have all the properties of its reference."),jt.push(...St(Vr,je(mr),Dr))}),I[Lt.symbol.escapedName](st(jt))}function St(Lt,kt,Zt){if(Lt===Zt)return[kt];if(Lt.flags&3145728)return Fr(Lt.types,mr=>St(mr,kt,Zt));if(ia(Lt)&4&&ia(kt)&4){let mr=d.getTypeArguments(Lt),Pt=d.getTypeArguments(kt),Vr=[];if(mr&&Pt)for(let Hr=0;Hrjt.argumentTypes.length));for(let jt=0;jtPt.argumentTypes[jt]||d.getUndefinedType())),Lt.some(Pt=>Pt.argumentTypes[jt]===void 0)&&(mr.flags|=16777216),kt.push(mr)}let Dr=je(R(Lt.map(jt=>jt.return_)));return d.createSignature(void 0,void 0,void 0,kt,Dr,void 0,Zt,0)}function Kt(Lt,kt){kt&&!(kt.flags&1)&&!(kt.flags&131072)&&(Lt.candidateTypes||(Lt.candidateTypes=[])).push(kt)}function Nt(Lt,kt){kt&&!(kt.flags&1)&&!(kt.flags&131072)&&(Lt.candidateThisTypes||(Lt.candidateThisTypes=[])).push(kt)}}var d9t="fixReturnTypeInAsyncFunction",wOr=[Z.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0.code];Tg({errorCodes:wOr,fixIds:[d9t],getCodeActions:function(c){let{sourceFile:u,program:d,span:I}=c,h=d.getTypeChecker(),b=TOr(u,d.getTypeChecker(),I.start);if(!b)return;let{returnTypeNode:R,returnType:N,promisedTypeNode:V,promisedType:P}=b,Q=Ao.ChangeTracker.with(c,te=>NOr(te,u,R,V));return[ng(d9t,Q,[Z.Replace_0_with_Promise_1,h.typeToString(N),h.typeToString(P)],d9t,Z.Fix_all_incorrect_return_type_of_an_async_functions)]},getAllCodeActions:n=>Md(n,wOr,(c,u)=>{let d=TOr(u.file,n.program.getTypeChecker(),u.start);d&&NOr(c,u.file,d.returnTypeNode,d.promisedTypeNode)})});function TOr(n,c,u){if(io(n))return;let d=Hc(n,u),I=Si(d,pd),h=I?.type;if(!h)return;let b=c.getTypeFromTypeNode(h),R=c.getAwaitedType(b)||c.getVoidType(),N=c.typeToTypeNode(R,h,void 0);if(N)return{returnTypeNode:h,returnType:b,promisedTypeNode:N,promisedType:R}}function NOr(n,c,u,d){n.replaceNode(c,u,_e.createTypeReferenceNode("Promise",[d]))}var ROr="disableJsDiagnostics",DOr="disableJsDiagnostics",xOr=tr(Object.keys(Z),n=>{let c=Z[n];return c.category===1?c.code:void 0});Tg({errorCodes:xOr,getCodeActions:function(c){let{sourceFile:u,program:d,span:I,host:h,formatContext:b}=c;if(!io(u)||!v6(u,d.getCompilerOptions()))return;let R=u.checkJsDirective?"":PZ(h,b.options),N=[dT(ROr,[SVr(u.fileName,[Q_e(u.checkJsDirective?Pd(u.checkJsDirective.pos,u.checkJsDirective.end):Ed(0,0),`// @ts-nocheck${R}`)])],Z.Disable_checking_for_this_file)];return Ao.isValidLocationToAddComment(u,I.start)&&N.unshift(ng(ROr,Ao.ChangeTracker.with(c,V=>kOr(V,u,I.start)),Z.Ignore_this_error_message,DOr,Z.Add_ts_ignore_to_all_error_messages)),N},fixIds:[DOr],getAllCodeActions:n=>{let c=new Set;return Md(n,xOr,(u,d)=>{Ao.isValidLocationToAddComment(d.file,d.start)&&kOr(u,d.file,d.start,c)})}});function kOr(n,c,u,d){let{line:I}=Vl(c,u);(!d||Zi(d,I))&&n.insertCommentBeforeLine(c,I,u," @ts-ignore")}function p9t(n,c,u,d,I,h,b){let R=n.symbol.members;for(let N of c)R.has(N.escapedName)||FOr(N,n,u,d,I,h,b,void 0)}function jte(n){return{trackSymbol:()=>!1,moduleResolverHost:oje(n.program,n.host)}}var GOr=(n=>(n[n.Method=1]="Method",n[n.Property=2]="Property",n[n.All=3]="All",n))(GOr||{});function FOr(n,c,u,d,I,h,b,R,N=3,V=!1){let P=n.getDeclarations(),Q=$i(P),te=d.program.getTypeChecker(),re=sA(d.program.getCompilerOptions()),ue=Q?.kind??171,Ae=It(n,Q),de=Q?R_(Q):0,Be=de&256;Be|=de&1?1:de&4?4:0,Q&&r_(Q)&&(Be|=512);let Fe=je(),Ne=te.getWidenedType(te.getTypeOfSymbolAtLocation(n,c)),Me=!!(n.flags&16777216),De=!!(c.flags&33554432)||V,lt=P2(u,I);switch(ue){case 171:case 172:let dt=1;dt|=lt===0?268435456:0;let Tt=te.typeToTypeNode(Ne,c,dt,jte(d));if(h){let He=w4(Tt,re);He&&(Tt=He.typeNode,g7(h,He.symbols))}b(_e.createPropertyDeclaration(Fe,Q?nt(Ae):n.getName(),Me&&N&2?_e.createToken(58):void 0,Tt,void 0));break;case 177:case 178:{w.assertIsDefined(P);let He=te.typeToTypeNode(Ne,c,void 0,jte(d)),ht=Vx(P,Q),Et=ht.secondAccessor?[ht.firstAccessor,ht.secondAccessor]:[ht.firstAccessor];if(h){let Kt=w4(He,re);Kt&&(He=Kt.typeNode,g7(h,Kt.symbols))}for(let Kt of Et)if(Qb(Kt))b(_e.createGetAccessorDeclaration(Fe,nt(Ae),v,it(He),qe(R,lt,De)));else{w.assertNode(Kt,ob,"The counterpart to a getter should be a setter");let Nt=qX(Kt),Lt=Nt&&sr(Nt.name)?oo(Nt.name):void 0;b(_e.createSetAccessorDeclaration(Fe,nt(Ae),I9t(1,[Lt],[it(He)],1,!1),qe(R,lt,De)))}break}case 173:case 174:w.assertIsDefined(P);let St=Ne.isUnion()?Fr(Ne.types,He=>He.getCallSignatures()):Ne.getCallSignatures();if(!lr(St))break;if(P.length===1){w.assert(St.length===1,"One declaration implies one signature");let He=St[0];Le(lt,He,Fe,nt(Ae),qe(R,lt,De));break}for(let He of St)Le(lt,He,Fe,nt(Ae));if(!De)if(P.length>St.length){let He=te.getSignatureFromDeclaration(P[P.length-1]);Le(lt,He,Fe,nt(Ae),qe(R,lt))}else w.assert(P.length===St.length,"Declarations and signatures should match count"),b(Ais(te,d,c,St,nt(Ae),Me&&!!(N&1),Fe,lt,R));break}function Le(dt,Tt,St,He,ht){let Et=$ze(174,d,dt,Tt,ht,He,St,Me&&!!(N&1),c,h);Et&&b(Et)}function je(){let dt;return Be&&(dt=Vs(dt,_e.createModifiersFromModifierFlags(Be))),st()&&(dt=Yr(dt,_e.createToken(164))),dt&&_e.createNodeArray(dt)}function st(){return!!(d.program.getCompilerOptions().noImplicitOverride&&Q&&cV(Q))}function nt(dt){return sr(dt)&&dt.escapedText==="constructor"?_e.createComputedPropertyName(_e.createStringLiteral(oo(dt),lt===0)):vd(dt,!1)}function qe(dt,Tt,St){return St?void 0:vd(dt,!1)||C9t(Tt)}function it(dt){return vd(dt,!1)}function It(dt,Tt){if(cI(dt)&262144){let St=dt.links.nameType;if(St&&k2(St))return _e.createIdentifier(wc(G2(St)))}return vd(Sl(Tt),!1)}}function $ze(n,c,u,d,I,h,b,R,N,V){let P=c.program,Q=P.getTypeChecker(),te=sA(P.getCompilerOptions()),re=io(N),ue=524545|(u===0?268435456:0),Ae=Q.signatureToSignatureDeclaration(d,n,N,ue,jte(c));if(!Ae)return;let de=re?void 0:Ae.typeParameters,Be=Ae.parameters,Fe=re?void 0:vd(Ae.type);if(V){if(de){let lt=Ar(de,Le=>{let je=Le.constraint,st=Le.default;if(je){let nt=w4(je,te);nt&&(je=nt.typeNode,g7(V,nt.symbols))}if(st){let nt=w4(st,te);nt&&(st=nt.typeNode,g7(V,nt.symbols))}return _e.updateTypeParameterDeclaration(Le,Le.modifiers,Le.name,je,st)});de!==lt&&(de=un(_e.createNodeArray(lt,de.hasTrailingComma),de))}let De=Ar(Be,lt=>{let Le=re?void 0:lt.type;if(Le){let je=w4(Le,te);je&&(Le=je.typeNode,g7(V,je.symbols))}return _e.updateParameterDeclaration(lt,lt.modifiers,lt.dotDotDotToken,lt.name,re?void 0:lt.questionToken,Le,lt.initializer)});if(Be!==De&&(Be=un(_e.createNodeArray(De,Be.hasTrailingComma),Be)),Fe){let lt=w4(Fe,te);lt&&(Fe=lt.typeNode,g7(V,lt.symbols))}}let Ne=R?_e.createToken(58):void 0,Me=Ae.asteriskToken;if(PA(Ae))return _e.updateFunctionExpression(Ae,b,Ae.asteriskToken,$s(h,sr),de,Be,Fe,I??Ae.body);if(Id(Ae))return _e.updateArrowFunction(Ae,b,de,Be,Fe,Ae.equalsGreaterThanToken,I??Ae.body);if(lI(Ae))return _e.updateMethodDeclaration(Ae,b,Me,h??_e.createIdentifier(""),Ne,de,Be,Fe,I);if(hp(Ae))return _e.updateFunctionDeclaration(Ae,b,Ae.asteriskToken,$s(h,sr),de,Be,Fe,I??Ae.body)}function f9t(n,c,u,d,I,h,b){let R=P2(c.sourceFile,c.preferences),N=sA(c.program.getCompilerOptions()),V=jte(c),P=c.program.getTypeChecker(),Q=io(b),{typeArguments:te,arguments:re,parent:ue}=d,Ae=Q?void 0:P.getContextualType(d),de=Ot(re,st=>sr(st)?st.text:fo(st)&&sr(st.name)?st.name.text:void 0),Be=Q?[]:Ot(re,st=>P.getTypeAtLocation(st)),{argumentTypeNodes:Fe,argumentTypeParameters:Ne}=VOr(P,u,Be,b,N,1,V),Me=h?_e.createNodeArray(_e.createModifiersFromModifierFlags(h)):void 0,De=Hx(ue)?_e.createToken(42):void 0,lt=Q?void 0:uis(P,Ne,te),Le=I9t(re.length,de,Fe,void 0,Q),je=Q||Ae===void 0?void 0:P.typeToTypeNode(Ae,b,void 0,V);switch(n){case 174:return _e.createMethodDeclaration(Me,De,I,void 0,lt,Le,je,C9t(R));case 173:return _e.createMethodSignature(Me,I,void 0,lt,Le,je===void 0?_e.createKeywordTypeNode(159):je);case 262:return w.assert(typeof I=="string"||sr(I),"Unexpected name"),_e.createFunctionDeclaration(Me,De,I,lt,Le,je,HFe(Z.Function_not_implemented.message,R));default:w.fail("Unexpected kind")}}function uis(n,c,u){let d=new Set(c.map(h=>h[0])),I=new Map(c);if(u){let h=u.filter(R=>!c.some(N=>{var V;return n.getTypeAtLocation(R)===((V=N[1])==null?void 0:V.argumentType)})),b=d.size+h.length;for(let R=0;d.size{var b;return _e.createTypeParameterDeclaration(void 0,h,(b=I.get(h))==null?void 0:b.constraint)})}function ZOr(n){return 84+n<=90?String.fromCharCode(84+n):`T${n}`}function MFe(n,c,u,d,I,h,b){let R=n.typeToTypeNode(u,d,h,b);if(R&&Nu(R)){let N=w4(R,I);N&&(g7(c,N.symbols),R=N.typeNode)}return vd(R)}function LOr(n){return n.isUnionOrIntersection()?n.types.some(LOr):n.flags&262144}function VOr(n,c,u,d,I,h,b){let R=[],N=new Map;for(let V=0;V=d?_e.createToken(58):void 0,I?void 0:u?.[R]||_e.createKeywordTypeNode(159),void 0);h.push(P)}return h}function Ais(n,c,u,d,I,h,b,R,N){let V=d[0],P=d[0].minArgumentCount,Q=!1;for(let Ae of d)P=Math.min(Ae.minArgumentCount,P),g0(Ae)&&(Q=!0),Ae.parameters.length>=V.parameters.length&&(!g0(Ae)||g0(V))&&(V=Ae);let te=V.parameters.length-(g0(V)?1:0),re=V.parameters.map(Ae=>Ae.name),ue=I9t(te,re,void 0,P,!1);if(Q){let Ae=_e.createParameterDeclaration(void 0,_e.createToken(26),re[te]||"rest",te>=P?_e.createToken(58):void 0,_e.createArrayTypeNode(_e.createKeywordTypeNode(159)),void 0);ue.push(Ae)}return pis(b,I,h,void 0,ue,dis(d,n,c,u),R,N)}function dis(n,c,u,d){if(O(n)){let I=c.getUnionType(Ot(n,c.getReturnTypeOfSignature));return c.typeToTypeNode(I,d,1,jte(u))}}function pis(n,c,u,d,I,h,b,R){return _e.createMethodDeclaration(n,void 0,c,u?_e.createToken(58):void 0,d,I,h,R||C9t(b))}function C9t(n){return HFe(Z.Method_not_implemented.message,n)}function HFe(n,c){return _e.createBlock([_e.createThrowStatement(_e.createNewExpression(_e.createIdentifier("Error"),void 0,[_e.createStringLiteral(n,c===0)]))],!0)}function m9t(n,c,u){let d=V8(c);if(!d)return;let I=_9t(d,"compilerOptions");if(I===void 0){n.insertNodeAtObjectStart(c,d,eqe("compilerOptions",_e.createObjectLiteralExpression(u.map(([b,R])=>eqe(b,R)),!0)));return}let h=I.initializer;if(ru(h))for(let[b,R]of u){let N=_9t(h,b);N===void 0?n.insertNodeAtObjectStart(c,h,eqe(b,R)):n.replaceNode(c,N.initializer,R)}}function h9t(n,c,u,d){m9t(n,c,[[u,d]])}function eqe(n,c){return _e.createPropertyAssignment(_e.createStringLiteral(n),c)}function _9t(n,c){return be(n.properties,u=>jC(u)&&!!u.name&&Eu(u.name)&&u.name.text===c)}function w4(n,c){let u,d=xr(n,I,Ma);if(u&&d)return{typeNode:d,symbols:u};function I(h){if(n_(h)&&h.qualifier){let b=sb(h.qualifier);if(!b.symbol)return ns(h,I,void 0);let R=uFe(b.symbol,c),N=R!==b.text?POr(h.qualifier,_e.createIdentifier(R)):h.qualifier;u=Yr(u,b.symbol);let V=ws(h.typeArguments,I,Ma);return _e.createTypeReferenceNode(N,V)}return ns(h,I,void 0)}}function POr(n,c){return n.kind===80?c:_e.createQualifiedName(POr(n.left,c),n.right)}function g7(n,c){c.forEach(u=>n.addImportFromExportedSymbol(u,!0))}function y9t(n,c){let u=Ku(c),d=Hc(n,c.start);for(;d.endh.replaceNode(c,u,d));return dT(XOr,I,[Z.Replace_import_with_0,I[0].textChanges[0].newText])}Tg({errorCodes:[Z.This_expression_is_not_callable.code,Z.This_expression_is_not_constructable.code],getCodeActions:wis});function wis(n){let c=n.sourceFile,u=Z.This_expression_is_not_callable.code===n.errorCode?213:214,d=Si(Hc(c,n.span.start),h=>h.kind===u);if(!d)return[];let I=d.expression;return UOr(n,I)}Tg({errorCodes:[Z.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,Z.Type_0_does_not_satisfy_the_constraint_1.code,Z.Type_0_is_not_assignable_to_type_1.code,Z.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated.code,Z.Type_predicate_0_is_not_assignable_to_1.code,Z.Property_0_of_type_1_is_not_assignable_to_2_index_type_3.code,Z._0_index_type_1_is_not_assignable_to_2_index_type_3.code,Z.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2.code,Z.Property_0_in_type_1_is_not_assignable_to_type_2.code,Z.Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property.code,Z.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1.code],getCodeActions:Tis});function Tis(n){let c=n.sourceFile,u=Si(Hc(c,n.span.start),d=>d.getStart()===n.span.start&&d.getEnd()===n.span.start+n.span.length);return u?UOr(n,u):[]}function UOr(n,c){let u=n.program.getTypeChecker().getTypeAtLocation(c);if(!(u.symbol&&wB(u.symbol)&&u.symbol.links.originatingImport))return[];let d=[],I=u.symbol.links.originatingImport;if(fC(I)||ai(d,Sis(n,I)),tn(c)&&!(wf(c.parent)&&c.parent.name===c)){let h=n.sourceFile,b=Ao.ChangeTracker.with(n,R=>R.replaceNode(h,c,_e.createPropertyAccessExpression(c,"default"),{}));d.push(dT(XOr,b,Z.Use_synthetic_default_member))}return d}var E9t="strictClassInitialization",B9t="addMissingPropertyDefiniteAssignmentAssertions",v9t="addMissingPropertyUndefinedType",S9t="addMissingPropertyInitializer",KOr=[Z.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor.code];Tg({errorCodes:KOr,getCodeActions:function(c){let u=jOr(c.sourceFile,c.span.start);if(!u)return;let d=[];return Yr(d,Ris(c,u)),Yr(d,Nis(c,u)),Yr(d,Dis(c,u)),d},fixIds:[B9t,v9t,S9t],getAllCodeActions:n=>Md(n,KOr,(c,u)=>{let d=jOr(u.file,u.start);if(d)switch(n.fixId){case B9t:zOr(c,u.file,d.prop);break;case v9t:qOr(c,u.file,d);break;case S9t:let I=n.program.getTypeChecker(),h=eQr(I,d.prop);if(!h)return;$Or(c,u.file,d.prop,h);break;default:w.fail(JSON.stringify(n.fixId))}})});function jOr(n,c){let u=Hc(n,c);if(sr(u)&&Hl(u.parent)){let d=IC(u.parent);if(d)return{type:d,prop:u.parent,isJs:io(u.parent)}}}function Nis(n,c){if(c.isJs)return;let u=Ao.ChangeTracker.with(n,d=>zOr(d,n.sourceFile,c.prop));return ng(E9t,u,[Z.Add_definite_assignment_assertion_to_property_0,c.prop.getText()],B9t,Z.Add_definite_assignment_assertions_to_all_uninitialized_properties)}function zOr(n,c,u){HE(u);let d=_e.updatePropertyDeclaration(u,u.modifiers,u.name,_e.createToken(54),u.type,u.initializer);n.replaceNode(c,u,d)}function Ris(n,c){let u=Ao.ChangeTracker.with(n,d=>qOr(d,n.sourceFile,c));return ng(E9t,u,[Z.Add_undefined_type_to_property_0,c.prop.name.getText()],v9t,Z.Add_undefined_type_to_all_uninitialized_properties)}function qOr(n,c,u){let d=_e.createKeywordTypeNode(157),I=Is(u.type)?u.type.types.concat(d):[u.type,d],h=_e.createUnionTypeNode(I);u.isJs?n.addJSDocTags(c,u.prop,[_e.createJSDocTypeTag(void 0,_e.createJSDocTypeExpression(h))]):n.replaceNode(c,u.type,h)}function Dis(n,c){if(c.isJs)return;let u=n.program.getTypeChecker(),d=eQr(u,c.prop);if(!d)return;let I=Ao.ChangeTracker.with(n,h=>$Or(h,n.sourceFile,c.prop,d));return ng(E9t,I,[Z.Add_initializer_to_property_0,c.prop.name.getText()],S9t,Z.Add_initializers_to_all_uninitialized_properties)}function $Or(n,c,u,d){HE(u);let I=_e.updatePropertyDeclaration(u,u.modifiers,u.name,u.questionToken,u.type,d);n.replaceNode(c,u,I)}function eQr(n,c){return tQr(n,n.getTypeFromTypeNode(c.type))}function tQr(n,c){if(c.flags&512)return c===n.getFalseType()||c===n.getFalseType(!0)?_e.createFalse():_e.createTrue();if(c.isStringLiteral())return _e.createStringLiteral(c.value);if(c.isNumberLiteral())return _e.createNumericLiteral(c.value);if(c.flags&2048)return _e.createBigIntLiteral(c.value);if(c.isUnion())return le(c.types,u=>tQr(n,u));if(c.isClass()){let u=kB(c.symbol);if(!u||ya(u,64))return;let d=pN(u);return d&&d.parameters.length?void 0:_e.createNewExpression(_e.createIdentifier(c.symbol.name),void 0,void 0)}else if(n.isArrayLikeType(c))return _e.createArrayLiteralExpression()}var w9t="requireInTs",rQr=[Z.require_call_may_be_converted_to_an_import.code];Tg({errorCodes:rQr,getCodeActions(n){let c=iQr(n.sourceFile,n.program,n.span.start);if(!c)return;let u=Ao.ChangeTracker.with(n,d=>nQr(d,n.sourceFile,c));return[ng(w9t,u,Z.Convert_require_to_import,w9t,Z.Convert_all_require_to_import)]},fixIds:[w9t],getAllCodeActions:n=>Md(n,rQr,(c,u)=>{let d=iQr(u.file,n.program,u.start);d&&nQr(c,n.sourceFile,d)})});function nQr(n,c,u){let{allowSyntheticDefaults:d,defaultImportName:I,namedImports:h,statement:b,required:R}=u;n.replaceNode(c,b,I&&!d?_e.createImportEqualsDeclaration(void 0,!1,I,_e.createExternalModuleReference(R)):_e.createImportDeclaration(void 0,_e.createImportClause(!1,I,h),R,void 0))}function iQr(n,c,u){let{parent:d}=Hc(n,u);H0(d,!0)||w.failBadSyntaxKind(d);let I=ps(d.parent,js),h=$s(I.name,sr),b=Wg(I.name)?xis(I.name):void 0;if(h||b)return{allowSyntheticDefaults:K5(c.getCompilerOptions()),defaultImportName:h,namedImports:b,statement:ps(I.parent.parent,Dp),required:qs(d.arguments)}}function xis(n){let c=[];for(let u of n.elements){if(!sr(u.name)||u.initializer)return;c.push(_e.createImportSpecifier(!1,$s(u.propertyName,sr),u.name))}if(c.length)return _e.createNamedImports(c)}var T9t="useDefaultImport",sQr=[Z.Import_may_be_converted_to_a_default_import.code];Tg({errorCodes:sQr,getCodeActions(n){let{sourceFile:c,span:{start:u}}=n,d=oQr(c,u);if(!d)return;let I=Ao.ChangeTracker.with(n,h=>aQr(h,c,d,n.preferences));return[ng(T9t,I,Z.Convert_to_default_import,T9t,Z.Convert_all_to_default_imports)]},fixIds:[T9t],getAllCodeActions:n=>Md(n,sQr,(c,u)=>{let d=oQr(u.file,u.start);d&&aQr(c,u.file,d,n.preferences)})});function oQr(n,c){let u=Hc(n,c);if(!sr(u))return;let{parent:d}=u;if(mm(d)&&ZG(d.moduleReference))return{importNode:d,name:u,moduleSpecifier:d.moduleReference.expression};if(Xx(d)&&hI(d.parent.parent)){let I=d.parent.parent;return{importNode:I,name:u,moduleSpecifier:I.moduleSpecifier}}}function aQr(n,c,u,d){n.replaceNode(c,u.importNode,RV(u.name,void 0,u.moduleSpecifier,P2(c,d)))}var N9t="useBigintLiteral",cQr=[Z.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers.code];Tg({errorCodes:cQr,getCodeActions:function(c){let u=Ao.ChangeTracker.with(c,d=>lQr(d,c.sourceFile,c.span));if(u.length>0)return[ng(N9t,u,Z.Convert_to_a_bigint_numeric_literal,N9t,Z.Convert_all_to_bigint_numeric_literals)]},fixIds:[N9t],getAllCodeActions:n=>Md(n,cQr,(c,u)=>lQr(c,u.file,u))});function lQr(n,c,u){let d=$s(Hc(c,u.start),pu);if(!d)return;let I=d.getText(c)+"n";n.replaceNode(c,d,_e.createBigIntLiteral(I))}var kis="fixAddModuleReferTypeMissingTypeof",R9t=kis,uQr=[Z.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0.code];Tg({errorCodes:uQr,getCodeActions:function(c){let{sourceFile:u,span:d}=c,I=gQr(u,d.start),h=Ao.ChangeTracker.with(c,b=>AQr(b,u,I));return[ng(R9t,h,Z.Add_missing_typeof,R9t,Z.Add_missing_typeof)]},fixIds:[R9t],getAllCodeActions:n=>Md(n,uQr,(c,u)=>AQr(c,n.sourceFile,gQr(u.file,u.start)))});function gQr(n,c){let u=Hc(n,c);return w.assert(u.kind===102,"This token should be an ImportKeyword"),w.assert(u.parent.kind===205,"Token parent should be an ImportType"),u.parent}function AQr(n,c,u){let d=_e.updateImportTypeNode(u,u.argument,u.attributes,u.qualifier,u.typeArguments,!0);n.replaceNode(c,u,d)}var D9t="wrapJsxInFragment",dQr=[Z.JSX_expressions_must_have_one_parent_element.code];Tg({errorCodes:dQr,getCodeActions:function(c){let{sourceFile:u,span:d}=c,I=pQr(u,d.start);if(!I)return;let h=Ao.ChangeTracker.with(c,b=>fQr(b,u,I));return[ng(D9t,h,Z.Wrap_in_JSX_fragment,D9t,Z.Wrap_all_unparented_JSX_in_JSX_fragment)]},fixIds:[D9t],getAllCodeActions:n=>Md(n,dQr,(c,u)=>{let d=pQr(n.sourceFile,u.start);d&&fQr(c,n.sourceFile,d)})});function pQr(n,c){let I=Hc(n,c).parent.parent;if(!(!ro(I)&&(I=I.parent,!ro(I)))&&Tf(I.operatorToken))return I}function fQr(n,c,u){let d=Gis(u);d&&n.replaceNode(c,u,_e.createJsxFragment(_e.createJsxOpeningFragment(),d,_e.createJsxJsxClosingFragment()))}function Gis(n){let c=[],u=n;for(;;)if(ro(u)&&Tf(u.operatorToken)&&u.operatorToken.kind===28){if(c.push(u.left),wX(u.right))return c.push(u.right),c;if(ro(u.right)){u=u.right;continue}else return}else return}var x9t="wrapDecoratorInParentheses",IQr=[Z.Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator.code];Tg({errorCodes:IQr,getCodeActions:function(c){let u=Ao.ChangeTracker.with(c,d=>CQr(d,c.sourceFile,c.span.start));return[ng(x9t,u,Z.Wrap_in_parentheses,x9t,Z.Wrap_all_invalid_decorator_expressions_in_parentheses)]},fixIds:[x9t],getAllCodeActions:n=>Md(n,IQr,(c,u)=>CQr(c,u.file,u.start))});function CQr(n,c,u){let d=Hc(c,u),I=Si(d,FC);w.assert(!!I,"Expected position to be owned by a decorator.");let h=_e.createParenthesizedExpression(I.expression);n.replaceNode(c,I.expression,h)}var k9t="fixConvertToMappedObjectType",mQr=[Z.An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead.code];Tg({errorCodes:mQr,getCodeActions:function(c){let{sourceFile:u,span:d}=c,I=hQr(u,d.start);if(!I)return;let h=Ao.ChangeTracker.with(c,R=>_Qr(R,u,I)),b=oo(I.container.name);return[ng(k9t,h,[Z.Convert_0_to_mapped_object_type,b],k9t,[Z.Convert_0_to_mapped_object_type,b])]},fixIds:[k9t],getAllCodeActions:n=>Md(n,mQr,(c,u)=>{let d=hQr(u.file,u.start);d&&_Qr(c,u.file,d)})});function hQr(n,c){let u=Hc(n,c),d=$s(u.parent.parent,_);if(!d)return;let I=XI(d.parent)?d.parent:$s(d.parent.parent,Pf);if(I)return{indexSignature:d,container:I}}function Fis(n,c){return _e.createTypeAliasDeclaration(n.modifiers,n.name,n.typeParameters,c)}function _Qr(n,c,{indexSignature:u,container:d}){let h=(XI(d)?d.members:d.type.members).filter(P=>!_(P)),b=qs(u.parameters),R=_e.createTypeParameterDeclaration(void 0,ps(b.name,sr),b.type),N=_e.createMappedTypeNode(s6(u)?_e.createModifier(148):void 0,R,void 0,u.questionToken,u.type,void 0),V=_e.createIntersectionTypeNode([...$8(d),N,...h.length?[_e.createTypeLiteralNode(h)]:v]);n.replaceNode(c,d,Fis(d,V))}var yQr="removeAccidentalCallParentheses",Zis=[Z.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without.code];Tg({errorCodes:Zis,getCodeActions(n){let c=Si(Hc(n.sourceFile,n.span.start),lu);if(!c)return;let u=Ao.ChangeTracker.with(n,d=>{d.deleteRange(n.sourceFile,{pos:c.expression.end,end:c.end})});return[dT(yQr,u,Z.Remove_parentheses)]},fixIds:[yQr]});var G9t="removeUnnecessaryAwait",bQr=[Z.await_has_no_effect_on_the_type_of_this_expression.code];Tg({errorCodes:bQr,getCodeActions:function(c){let u=Ao.ChangeTracker.with(c,d=>EQr(d,c.sourceFile,c.span));if(u.length>0)return[ng(G9t,u,Z.Remove_unnecessary_await,G9t,Z.Remove_all_unnecessary_uses_of_await)]},fixIds:[G9t],getAllCodeActions:n=>Md(n,bQr,(c,u)=>EQr(c,u.file,u))});function EQr(n,c,u){let d=$s(Hc(c,u.start),R=>R.kind===135),I=d&&$s(d.parent,Mb);if(!I)return;let h=I;if(ZC(I.parent)){let R=X5(I.expression,!1);if(sr(R)){let N=ym(I.parent.pos,c);N&&N.kind!==105&&(h=I.parent)}}n.replaceNode(c,h,I.expression)}var BQr=[Z.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both.code],F9t="splitTypeOnlyImport";Tg({errorCodes:BQr,fixIds:[F9t],getCodeActions:function(c){let u=Ao.ChangeTracker.with(c,d=>SQr(d,vQr(c.sourceFile,c.span),c));if(u.length)return[ng(F9t,u,Z.Split_into_two_separate_import_declarations,F9t,Z.Split_all_invalid_type_only_imports)]},getAllCodeActions:n=>Md(n,BQr,(c,u)=>{SQr(c,vQr(n.sourceFile,u),n)})});function vQr(n,c){return Si(Hc(n,c.start),hI)}function SQr(n,c,u){if(!c)return;let d=w.checkDefined(c.importClause);n.replaceNode(u.sourceFile,c,_e.updateImportDeclaration(c,c.modifiers,_e.updateImportClause(d,d.isTypeOnly,d.name,void 0),c.moduleSpecifier,c.attributes)),n.insertNodeAfter(u.sourceFile,c,_e.createImportDeclaration(void 0,_e.updateImportClause(d,d.isTypeOnly,void 0,d.namedBindings),c.moduleSpecifier,c.attributes))}var Z9t="fixConvertConstToLet",wQr=[Z.Cannot_assign_to_0_because_it_is_a_constant.code];Tg({errorCodes:wQr,getCodeActions:function(c){let{sourceFile:u,span:d,program:I}=c,h=TQr(u,d.start,I);if(h===void 0)return;let b=Ao.ChangeTracker.with(c,R=>NQr(R,u,h.token));return[jZt(Z9t,b,Z.Convert_const_to_let,Z9t,Z.Convert_all_const_to_let)]},getAllCodeActions:n=>{let{program:c}=n,u=new Map;return a7(Ao.ChangeTracker.with(n,d=>{c7(n,wQr,I=>{let h=TQr(I.file,I.start,c);if(h&&D2(u,Gg(h.symbol)))return NQr(d,I.file,h.token)})}))},fixIds:[Z9t]});function TQr(n,c,u){var d;let h=u.getTypeChecker().getSymbolAtLocation(Hc(n,c));if(h===void 0)return;let b=$s((d=h?.valueDeclaration)==null?void 0:d.parent,bl);if(b===void 0)return;let R=Qd(b,87,n);if(R!==void 0)return{symbol:h,token:R}}function NQr(n,c,u){n.replaceNode(c,u,_e.createToken(121))}var L9t="fixExpectedComma",Lis=Z._0_expected.code,RQr=[Lis];Tg({errorCodes:RQr,getCodeActions(n){let{sourceFile:c}=n,u=DQr(c,n.span.start,n.errorCode);if(!u)return;let d=Ao.ChangeTracker.with(n,I=>xQr(I,c,u));return[ng(L9t,d,[Z.Change_0_to_1,";",","],L9t,[Z.Change_0_to_1,";",","])]},fixIds:[L9t],getAllCodeActions:n=>Md(n,RQr,(c,u)=>{let d=DQr(u.file,u.start,u.code);d&&xQr(c,n.sourceFile,d)})});function DQr(n,c,u){let d=Hc(n,c);return d.kind===27&&d.parent&&(ru(d.parent)||Cf(d.parent))?{node:d}:void 0}function xQr(n,c,{node:u}){let d=_e.createToken(28);n.replaceNode(c,u,d)}var Vis="addVoidToPromise",kQr="addVoidToPromise",GQr=[Z.Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_without_arguments.code,Z.Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise.code];Tg({errorCodes:GQr,fixIds:[kQr],getCodeActions(n){let c=Ao.ChangeTracker.with(n,u=>FQr(u,n.sourceFile,n.span,n.program));if(c.length>0)return[ng(Vis,c,Z.Add_void_to_Promise_resolved_without_a_value,kQr,Z.Add_void_to_all_Promises_resolved_without_a_value)]},getAllCodeActions(n){return Md(n,GQr,(c,u)=>FQr(c,u.file,u,n.program,new Set))}});function FQr(n,c,u,d,I){let h=Hc(c,u.start);if(!sr(h)||!lu(h.parent)||h.parent.expression!==h||h.parent.arguments.length!==0)return;let b=d.getTypeChecker(),R=b.getSymbolAtLocation(h),N=R?.valueDeclaration;if(!N||!Uc(N)||!qS(N.parent.parent)||I?.has(N))return;I?.add(N);let V=Wis(N.parent.parent);if(lr(V)){let P=V[0],Q=!Is(P)&&!to(P)&&to(_e.createUnionTypeNode([P,_e.createKeywordTypeNode(116)]).types[0]);Q&&n.insertText(c,P.pos,"("),n.insertText(c,P.end,Q?") | void":" | void")}else{let P=b.getResolvedSignature(h.parent),Q=P?.parameters[0],te=Q&&b.getTypeOfSymbolAtLocation(Q,N.parent.parent);io(N)?(!te||te.flags&3)&&(n.insertText(c,N.parent.parent.end,")"),n.insertText(c,Uu(c.text,N.parent.parent.pos),"/** @type {Promise} */(")):(!te||te.flags&2)&&n.insertText(c,N.parent.parent.expression.end,"")}}function Wis(n){var c;if(io(n)){if(ZC(n.parent)){let u=(c=Sx(n.parent))==null?void 0:c.typeExpression.type;if(u&&F(u)&&sr(u.typeName)&&oo(u.typeName)==="Promise")return u.typeArguments}}else return n.typeArguments}var A7={};o(A7,{CompletionKind:()=>$Qr,CompletionSource:()=>LQr,SortText:()=>f0,StringCompletions:()=>gqe,SymbolOriginInfoKind:()=>VQr,createCompletionDetails:()=>JFe,createCompletionDetailsForSymbol:()=>Y9t,getCompletionEntriesFromSymbols:()=>M9t,getCompletionEntryDetails:()=>fss,getCompletionEntrySymbol:()=>Css,getCompletionsAtPosition:()=>Jis,getPropertiesForObjectExpression:()=>cqe,moduleSpecifierResolutionCacheAttemptLimit:()=>ZQr,moduleSpecifierResolutionLimit:()=>V9t});var V9t=100,ZQr=1e3,f0={LocalDeclarationPriority:"10",LocationPriority:"11",OptionalMember:"12",MemberDeclaredBySpreadAssignment:"13",SuggestedClassMembers:"14",GlobalsOrKeywords:"15",AutoImportSuggestions:"16",ClassMemberSnippets:"17",JavascriptIdentifiers:"18",Deprecated(n){return"z"+n},ObjectLiteralProperty(n,c){return`${n}\0${c}\0`},SortBelow(n){return n+"1"}},LQr=(n=>(n.ThisProperty="ThisProperty/",n.ClassMemberSnippet="ClassMemberSnippet/",n.TypeOnlyAlias="TypeOnlyAlias/",n.ObjectLiteralMethodSnippet="ObjectLiteralMethodSnippet/",n.SwitchCases="SwitchCases/",n.ObjectLiteralMemberWithComma="ObjectLiteralMemberWithComma/",n))(LQr||{}),VQr=(n=>(n[n.ThisType=1]="ThisType",n[n.SymbolMember=2]="SymbolMember",n[n.Export=4]="Export",n[n.Promise=8]="Promise",n[n.Nullable=16]="Nullable",n[n.ResolvedExport=32]="ResolvedExport",n[n.TypeOnlyAlias=64]="TypeOnlyAlias",n[n.ObjectLiteralMethod=128]="ObjectLiteralMethod",n[n.Ignore=256]="Ignore",n[n.ComputedPropertyName=512]="ComputedPropertyName",n[n.SymbolMemberNoExport=2]="SymbolMemberNoExport",n[n.SymbolMemberExport=6]="SymbolMemberExport",n))(VQr||{});function Pis(n){return!!(n.kind&1)}function Ois(n){return!!(n.kind&2)}function YFe(n){return!!(n&&n.kind&4)}function Xue(n){return!!(n&&n.kind===32)}function Qis(n){return YFe(n)||Xue(n)||W9t(n)}function Mis(n){return(YFe(n)||Xue(n))&&!!n.isFromPackageJson}function His(n){return!!(n.kind&8)}function Yis(n){return!!(n.kind&16)}function WQr(n){return!!(n&&n.kind&64)}function PQr(n){return!!(n&&n.kind&128)}function Xis(n){return!!(n&&n.kind&256)}function W9t(n){return!!(n&&n.kind&512)}function OQr(n,c,u,d,I,h,b,R,N){var V,P,Q;let te=$l(),re=b||j5(o0(d.getCompilerOptions())),ue=!1,Ae=0,de=0,Be=0,Fe=0,Ne=N({tryResolve:De,skippedAny:()=>ue,resolvedAny:()=>de>0,resolvedBeyondLimit:()=>de>V9t}),Me=Fe?` (${(Be/Fe*100).toFixed(1)}% hit rate)`:"";return(V=c.log)==null||V.call(c,`${n}: resolved ${de} module specifiers, plus ${Ae} ambient and ${Be} from cache${Me}`),(P=c.log)==null||P.call(c,`${n}: response is ${ue?"incomplete":"complete"}`),(Q=c.log)==null||Q.call(c,`${n}: ${$l()-te}`),Ne;function De(lt,Le){if(Le){let qe=u.getModuleSpecifierForBestExportInfo(lt,I,R);return qe&&Ae++,qe||"failed"}let je=re||h.allowIncompleteCompletions&&de{let ue=tr(N.entries,Ae=>{var de;if(!Ae.hasAction||!Ae.source||!Ae.data||QQr(Ae.data))return Ae;if(!f5r(Ae.name,P))return;let{origin:Be}=w.checkDefined(t5r(Ae.name,Ae.data,d,I)),Fe=Q.get(c.path,Ae.data.exportMapKey),Ne=Fe&&re.tryResolve(Fe,!Ul(R2(Be.moduleSymbol.name)));if(Ne==="skipped")return Ae;if(!Ne||Ne==="failed"){(de=I.log)==null||de.call(I,`Unexpected failure resolving auto import for '${Ae.name}' from '${Ae.source}'`);return}let Me={...Be,kind:32,moduleSpecifier:Ne.moduleSpecifier};return Ae.data=jQr(Me),Ae.source=Q9t(Me),Ae.sourceDisplay=[O2(Me.moduleSpecifier)],Ae});return re.skippedAny()||(N.isIncomplete=void 0),ue});return N.entries=te,N.flags=(N.flags||0)|4,N.optionalReplacementSpan=XQr(V),N}function P9t(n){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!1,entries:n}}function MQr(n,c,u,d,I,h){let b=Hc(n,c);if(!J9(b)&&!cT(b))return[];let R=cT(b)?b:b.parent;if(!cT(R))return[];let N=R.parent;if(!eu(N))return[];let V=i0(n),P=I.includeCompletionsWithSnippetText||void 0,Q=ft(R.tags,te=>LB(te)&&te.getEnd()<=c);return tr(N.parameters,te=>{if(!MR(te).length){if(sr(te.name)){let re={tabstop:1},ue=te.name.text,Ae=I0e(ue,te.initializer,te.dotDotDotToken,V,!1,!1,u,d,I),de=P?I0e(ue,te.initializer,te.dotDotDotToken,V,!1,!0,u,d,I,re):void 0;return h&&(Ae=Ae.slice(1),de&&(de=de.slice(1))),{name:Ae,kind:"parameter",sortText:f0.LocationPriority,insertText:P?de:void 0,isSnippet:P}}else if(te.parent.parameters.indexOf(te)===Q){let re=`param${Q}`,ue=HQr(re,te.name,te.initializer,te.dotDotDotToken,V,!1,u,d,I),Ae=P?HQr(re,te.name,te.initializer,te.dotDotDotToken,V,!0,u,d,I):void 0,de=ue.join(F1(d)+"* "),Be=Ae?.join(F1(d)+"* ");return h&&(de=de.slice(1),Be&&(Be=Be.slice(1))),{name:de,kind:"parameter",sortText:f0.LocationPriority,insertText:P?Be:void 0,isSnippet:P}}}})}function HQr(n,c,u,d,I,h,b,R,N){if(!I)return[I0e(n,u,d,I,!1,h,b,R,N,{tabstop:1})];return V(n,c,u,d,{tabstop:1});function V(Q,te,re,ue,Ae){if(Wg(te)&&!ue){let Be={tabstop:Ae.tabstop},Fe=I0e(Q,re,ue,I,!0,h,b,R,N,Be),Ne=[];for(let Me of te.elements){let De=P(Q,Me,Be);if(De)Ne.push(...De);else{Ne=void 0;break}}if(Ne)return Ae.tabstop=Be.tabstop,[Fe,...Ne]}return[I0e(Q,re,ue,I,!1,h,b,R,N,Ae)]}function P(Q,te,re){if(!te.propertyName&&sr(te.name)||sr(te.name)){let ue=te.propertyName?N5(te.propertyName):te.name.text;if(!ue)return;let Ae=`${Q}.${ue}`;return[I0e(Ae,te.initializer,te.dotDotDotToken,I,!1,h,b,R,N,re)]}else if(te.propertyName){let ue=N5(te.propertyName);return ue&&V(`${Q}.${ue}`,te.name,te.initializer,te.dotDotDotToken,re)}}}function I0e(n,c,u,d,I,h,b,R,N,V){if(h&&w.assertIsDefined(V),c&&(n=Kis(n,c)),h&&(n=dV(n)),d){let P="*";if(I)w.assert(!u,"Cannot annotate a rest parameter with type 'Object'."),P="Object";else{if(c){let re=b.getTypeAtLocation(c.parent);if(!(re.flags&16385)){let ue=c.getSourceFile(),de=P2(ue,N)===0?268435456:0,Be=b.typeToTypeNode(re,Si(c,eu),de);if(Be){let Fe=h?nqe({removeComments:!0,module:R.module,target:R.target}):wV({removeComments:!0,module:R.module,target:R.target});ao(Be,1),P=Fe.printNode(4,Be,ue)}}}h&&P==="*"&&(P=`\${${V.tabstop++}:${P}}`)}let Q=!I&&u?"...":"",te=h?`\${${V.tabstop++}}`:"";return`@param {${Q}${P}} ${n} ${te}`}else{let P=h?`\${${V.tabstop++}}`:"";return`@param ${n} ${P}`}}function Kis(n,c){let u=c.getText().trim();return u.includes(` +`)||u.length>80?`[${n}]`:`[${n}=${u}]`}function jis(n){return{name:vr(n),kind:"keyword",kindModifiers:"",sortText:f0.GlobalsOrKeywords}}function zis(n,c){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:c,entries:n.slice()}}function YQr(n,c,u){return{kind:4,keywordCompletions:n5r(n,c),isNewIdentifierLocation:u}}function qis(n){switch(n){case 156:return 8;default:w.fail("Unknown mapping from SyntaxKind to KeywordCompletionFilters")}}function XQr(n){return n?.kind===80?By(n):void 0}function $is(n,c,u,d,I,h,b,R,N,V){let{symbols:P,contextToken:Q,completionKind:te,isInSnippetScope:re,isNewIdentifierLocation:ue,location:Ae,propertyAccessToConvert:de,keywordFilters:Be,symbolToOriginInfoMap:Fe,recommendedCompletion:Ne,isJsxInitializer:Me,isTypeOnlyLocation:De,isJsxIdentifierExpected:lt,isRightOfOpenTag:Le,isRightOfDotOrQuestionDot:je,importStatementCompletion:st,insideJsDocTagTypeExpression:nt,symbolToSortTextMap:qe,hasUnresolvedAutoImports:it}=h,It=h.literals,dt=u.getTypeChecker();if(Vee(n.scriptKind)===1){let Kt=tss(Ae,n);if(Kt)return Kt}let Tt=Si(Q,ute);if(Tt&&(Whe(Q)||rV(Q,Tt.expression))){let Kt=IFe(dt,Tt.parent.clauses);It=It.filter(Nt=>!Kt.hasValue(Nt)),P.forEach((Nt,Lt)=>{if(Nt.valueDeclaration&&yV(Nt.valueDeclaration)){let kt=dt.getConstantValue(Nt.valueDeclaration);kt!==void 0&&Kt.hasValue(kt)&&(Fe[Lt]={kind:256})}})}let St=jr(),He=JQr(n,d);if(He&&!ue&&(!P||P.length===0)&&Be===0)return;let ht=M9t(P,St,void 0,Q,Ae,N,n,c,u,sA(d),I,te,b,d,R,De,de,lt,Me,st,Ne,Fe,qe,lt,Le,V);if(Be!==0)for(let Kt of n5r(Be,!nt&&i0(n)))(De&&wue(Yn(Kt.name))||!De&&Zss(Kt.name)||!ht.has(Kt.name))&&(ht.add(Kt.name),Gr(St,Kt,XFe,void 0,!0));for(let Kt of Ess(Q,N))ht.has(Kt.name)||(ht.add(Kt.name),Gr(St,Kt,XFe,void 0,!0));for(let Kt of It){let Nt=nss(n,b,Kt);ht.add(Nt.name),Gr(St,Nt,XFe,void 0,!0)}He||rss(n,Ae.pos,ht,sA(d),St);let Et;if(b.includeCompletionsWithInsertText&&Q&&!Le&&!je&&(Et=Si(Q,Ole))){let Kt=UQr(Et,n,b,d,c,u,R);Kt&&St.push(Kt.entry)}return{flags:h.flags,isGlobalCompletion:re,isIncomplete:b.allowIncompleteCompletions&&it?!0:void 0,isMemberCompletion:ess(te),isNewIdentifierLocation:ue,optionalReplacementSpan:XQr(Ae),entries:St}}function JQr(n,c){return!i0(n)||!!v6(n,c)}function UQr(n,c,u,d,I,h,b){let R=n.clauses,N=h.getTypeChecker(),V=N.getTypeAtLocation(n.parent.expression);if(V&&V.isUnion()&&he(V.types,P=>P.isLiteral())){let P=IFe(N,R),Q=sA(d),te=P2(c,u),re=p0.createImportAdder(c,h,u,I),ue=[];for(let De of V.types)if(De.flags&1024){w.assert(De.symbol,"An enum member type should have a symbol"),w.assert(De.symbol.parent,"An enum member type should have a parent symbol (the enum symbol)");let lt=De.symbol.valueDeclaration&&N.getConstantValue(De.symbol.valueDeclaration);if(lt!==void 0){if(P.hasValue(lt))continue;P.addValue(lt)}let Le=p0.typeToAutoImportableTypeNode(N,re,De,n,Q);if(!Le)return;let je=tqe(Le,Q,te);if(!je)return;ue.push(je)}else if(!P.hasValue(De.value))switch(typeof De.value){case"object":ue.push(De.value.negative?_e.createPrefixUnaryExpression(41,_e.createBigIntLiteral({negative:!1,base10Value:De.value.base10Value})):_e.createBigIntLiteral(De.value));break;case"number":ue.push(De.value<0?_e.createPrefixUnaryExpression(41,_e.createNumericLiteral(-De.value)):_e.createNumericLiteral(De.value));break;case"string":ue.push(_e.createStringLiteral(De.value,te===0));break}if(ue.length===0)return;let Ae=Ot(ue,De=>_e.createCaseClause(De,[])),de=PZ(I,b?.options),Be=nqe({removeComments:!0,module:d.module,target:d.target,newLine:e0e(de)}),Fe=b?De=>Be.printAndFormatNode(4,De,c,b):De=>Be.printNode(4,De,c),Ne=Ot(Ae,(De,lt)=>u.includeCompletionsWithSnippetText?`${Fe(De)}$${lt+1}`:`${Fe(De)}`).join(de);return{entry:{name:`${Be.printNode(4,Ae[0],c)} ...`,kind:"",sortText:f0.GlobalsOrKeywords,insertText:Ne,hasAction:re.hasFixes()||void 0,source:"SwitchCases/",isSnippet:u.includeCompletionsWithSnippetText?!0:void 0},importAdder:re}}}function tqe(n,c,u){switch(n.kind){case 183:let d=n.typeName;return rqe(d,c,u);case 199:let I=tqe(n.objectType,c,u),h=tqe(n.indexType,c,u);return I&&h&&_e.createElementAccessExpression(I,h);case 201:let b=n.literal;switch(b.kind){case 11:return _e.createStringLiteral(b.text,u===0);case 9:return _e.createNumericLiteral(b.text,b.numericLiteralFlags)}return;case 196:let R=tqe(n.type,c,u);return R&&(sr(R)?R:_e.createParenthesizedExpression(R));case 186:return rqe(n.exprName,c,u);case 205:w.fail("We should not get an import type after calling 'codefix.typeToAutoImportableTypeNode'.")}}function rqe(n,c,u){if(sr(n))return n;let d=wc(n.right.escapedText);return yhe(d,c)?_e.createPropertyAccessExpression(rqe(n.left,c,u),d):_e.createElementAccessExpression(rqe(n.left,c,u),_e.createStringLiteral(d,u===0))}function ess(n){switch(n){case 0:case 3:case 2:return!0;default:return!1}}function tss(n,c){let u=Si(n,d=>{switch(d.kind){case 287:return!0;case 44:case 32:case 80:case 211:return!1;default:return"quit"}});if(u){let d=!!Qd(u,32,c),b=u.parent.openingElement.tagName.getText(c)+(d?"":">"),R=By(u.tagName),N={name:b,kind:"class",kindModifiers:void 0,sortText:f0.LocationPriority};return{isGlobalCompletion:!1,isMemberCompletion:!0,isNewIdentifierLocation:!1,optionalReplacementSpan:R,entries:[N]}}}function rss(n,c,u,d,I){Bze(n).forEach((h,b)=>{if(h===c)return;let R=wc(b);!u.has(R)&&Ke(R,d)&&(u.add(R),Gr(I,{name:R,kind:"warning",kindModifiers:"",sortText:f0.JavascriptIdentifiers,isFromUncheckedFile:!0},XFe))})}function O9t(n,c,u){return typeof u=="object"?AV(u)+"n":Ya(u)?kue(n,c,u):JSON.stringify(u)}function nss(n,c,u){return{name:O9t(n,c,u),kind:"string",kindModifiers:"",sortText:f0.LocationPriority}}function iss(n,c,u,d,I,h,b,R,N,V,P,Q,te,re,ue,Ae,de,Be,Fe,Ne,Me,De,lt,Le){var je,st;let nt,qe,it=$7e(u,h),It,dt,Tt=Q9t(Q),St,He,ht,Et=N.getTypeChecker(),Kt=Q&&Yis(Q),Nt=Q&&Ois(Q)||P;if(Q&&Pis(Q))nt=P?`this${Kt?"?.":""}[${zQr(b,Fe,V)}]`:`this${Kt?"?.":"."}${V}`;else if((Nt||Kt)&&re){nt=Nt?P?`[${zQr(b,Fe,V)}]`:`[${V}]`:V,(Kt||re.questionDotToken)&&(nt=`?.${nt}`);let kt=Qd(re,25,b)||Qd(re,29,b);if(!kt)return;let Zt=uc(V,re.name.text)?re.name.end:kt.end;it=Pd(kt.getStart(b),Zt)}if(ue&&(nt===void 0&&(nt=V),nt=`{${nt}}`,typeof ue!="boolean"&&(it=By(ue,b))),Q&&His(Q)&&re){nt===void 0&&(nt=V);let kt=ym(re.pos,b),Zt="";kt&&iFe(kt.end,kt.parent,b)&&(Zt=";"),Zt+=`(await ${re.expression.getText()})`,nt=P?`${Zt}${nt}`:`${Zt}${Kt?"?.":"."}${nt}`;let jt=$s(re.parent,Mb)?re.parent:re.expression;it=Pd(jt.getStart(b),re.end)}if(Xue(Q)&&(St=[O2(Q.moduleSpecifier)],Ae&&({insertText:nt,replacementSpan:it}=gss(V,Ae,Q,de,b,Be,Fe),dt=Fe.includeCompletionsWithSnippetText?!0:void 0)),Q?.kind===64&&(He=!0),Ne===0&&d&&((je=ym(d.pos,b,d))==null?void 0:je.kind)!==28&&(lI(d.parent.parent)||Qb(d.parent.parent)||ob(d.parent.parent)||Ux(d.parent)||((st=Si(d.parent,jC))==null?void 0:st.getLastToken(b))===d||F_(d.parent)&&Vl(b,d.getEnd()).line!==Vl(b,h).line)&&(Tt="ObjectLiteralMemberWithComma/",He=!0),Fe.includeCompletionsWithClassMemberSnippets&&Fe.includeCompletionsWithInsertText&&Ne===3&&sss(n,I,b)){let kt,Zt=KQr(R,N,Be,Fe,V,n,I,h,d,Me);if(Zt)({insertText:nt,filterText:qe,isSnippet:dt,importAdder:kt}=Zt),(kt?.hasFixes()||Zt.eraseRange)&&(He=!0,Tt="ClassMemberSnippet/");else return}if(Q&&PQr(Q)&&({insertText:nt,isSnippet:dt,labelDetails:ht}=Q,Fe.useLabelDetailsInCompletionEntries||(V=V+ht.detail,ht=void 0),Tt="ObjectLiteralMethodSnippet/",c=f0.SortBelow(c)),De&&!lt&&Fe.includeCompletionsWithSnippetText&&Fe.jsxAttributeCompletionStyle&&Fe.jsxAttributeCompletionStyle!=="none"&&!(RN(I.parent)&&I.parent.initializer)){let kt=Fe.jsxAttributeCompletionStyle==="braces",Zt=Et.getTypeOfSymbolAtLocation(n,I);Fe.jsxAttributeCompletionStyle==="auto"&&!(Zt.flags&528)&&!(Zt.flags&1048576&&be(Zt.types,Dr=>!!(Dr.flags&528)))&&(Zt.flags&402653316||Zt.flags&1048576&&he(Zt.types,Dr=>!!(Dr.flags&402686084||xGt(Dr)))?(nt=`${dV(V)}=${kue(b,Fe,"$1")}`,dt=!0):kt=!0),kt&&(nt=`${dV(V)}={$1}`,dt=!0)}if(nt!==void 0&&!Fe.includeCompletionsWithInsertText)return;(YFe(Q)||Xue(Q))&&(It=jQr(Q),He=!Ae);let Lt=Si(I,qce);if(Lt?.kind===275){let kt=Yn(V);Lt&&kt&&(kt===135||bme(kt))&&(nt=`${V} as ${V}_`)}return{name:V,kind:MZ.getSymbolKind(Et,n,I),kindModifiers:MZ.getSymbolModifiers(Et,n),sortText:c,source:Tt,hasAction:He?!0:void 0,isRecommended:Ass(n,te,Et)||void 0,insertText:nt,filterText:qe,replacementSpan:it,sourceDisplay:St,labelDetails:ht,isSnippet:dt,isPackageJsonImport:Mis(Q)||void 0,isImportStatementCompletion:!!Ae||void 0,data:It,...Le?{symbol:n}:void 0}}function sss(n,c,u){return io(c)?!1:!!(n.flags&106500)&&(va(c)||c.parent&&c.parent.parent&&nC(c.parent)&&c===c.parent.name&&c.parent.getLastToken(u)===c.parent.name&&va(c.parent.parent)||c.parent&&pte(c)&&va(c.parent))}function KQr(n,c,u,d,I,h,b,R,N,V){let P=Si(b,va);if(!P)return;let Q,te=I,re=I,ue=c.getTypeChecker(),Ae=b.getSourceFile(),de=nqe({removeComments:!0,module:u.module,target:u.target,omitTrailingSemicolon:!1,newLine:e0e(PZ(n,V?.options))}),Be=p0.createImportAdder(Ae,c,d,n),Fe;if(d.includeCompletionsWithSnippetText){Q=!0;let st=_e.createEmptyStatement();Fe=_e.createBlock([st],!0),La(st,{kind:0,order:0})}else Fe=_e.createBlock([],!0);let Ne=0,{modifiers:Me,range:De,decorators:lt}=oss(N,Ae,R),Le=Me&64&&P.modifierFlagsCache&64,je=[];if(p0.addNewNodeForMemberSymbol(h,P,Ae,{program:c,host:n},d,Be,st=>{let nt=0;Le&&(nt|=64),nC(st)&&ue.getMemberOverrideModifierStatus(P,st,h)===1&&(nt|=16),je.length||(Ne=st.modifierFlagsCache|nt),st=_e.replaceModifiers(st,Ne),je.push(st)},Fe,p0.PreserveOptionalFlags.Property,!!Le),je.length){let st=h.flags&8192,nt=Ne|16|1;st?nt|=1024:nt|=136;let qe=Me&nt;if(Me&~nt)return;if(Ne&4&&qe&1&&(Ne&=-5),qe!==0&&!(qe&1)&&(Ne&=-2),Ne|=qe,je=je.map(It=>_e.replaceModifiers(It,Ne)),lt?.length){let It=je[je.length-1];IM(It)&&(je[je.length-1]=_e.replaceDecoratorsAndModifiers(It,lt.concat(uN(It)||[])))}let it=131073;V?te=de.printAndFormatSnippetList(it,_e.createNodeArray(je),Ae,V):te=de.printSnippetList(it,_e.createNodeArray(je),Ae)}return{insertText:te,filterText:re,isSnippet:Q,importAdder:Be,eraseRange:De}}function oss(n,c,u){if(!n||Vl(c,u).line>Vl(c,n.getEnd()).line)return{modifiers:0};let d=0,I,h,b={pos:u,end:u};if(Hl(n.parent)&&(h=ass(n))){n.parent.modifiers&&(d|=kv(n.parent.modifiers)&98303,I=n.parent.modifiers.filter(FC)||[],b.pos=Math.min(...n.parent.modifiers.map(N=>N.getStart(c))));let R=P5(h);d&R||(d|=R,b.pos=Math.min(b.pos,n.getStart(c))),n.parent.name!==n&&(b.end=n.parent.name.getStart(c))}return{modifiers:d,decorators:I,range:b.posR.getSignaturesOfType(Ne,0).length>0);if(Fe.length===1)re=Fe[0];else return}if(R.getSignaturesOfType(re,0).length!==1)return;let Ae=R.typeToTypeNode(re,c,te,p0.getNoopSymbolTrackerWithResolver({program:d,host:I}));if(!Ae||!H(Ae))return;let de;if(h.includeCompletionsWithSnippetText){let Fe=_e.createEmptyStatement();de=_e.createBlock([Fe],!0),La(Fe,{kind:0,order:0})}else de=_e.createBlock([],!0);let Be=Ae.parameters.map(Fe=>_e.createParameterDeclaration(void 0,Fe.dotDotDotToken,Fe.name,void 0,void 0,Fe.initializer));return _e.createMethodDeclaration(void 0,void 0,V,void 0,void 0,Be,void 0,de)}default:return}}function nqe(n){let c,u=Ao.createWriter(F1(n)),d=wV(n,u),I={...u,write:te=>h(te,()=>u.write(te)),nonEscapingWrite:u.write,writeLiteral:te=>h(te,()=>u.writeLiteral(te)),writeStringLiteral:te=>h(te,()=>u.writeStringLiteral(te)),writeSymbol:(te,re)=>h(te,()=>u.writeSymbol(te,re)),writeParameter:te=>h(te,()=>u.writeParameter(te)),writeComment:te=>h(te,()=>u.writeComment(te)),writeProperty:te=>h(te,()=>u.writeProperty(te))};return{printSnippetList:b,printAndFormatSnippetList:N,printNode:V,printAndFormatNode:Q};function h(te,re){let ue=dV(te);if(ue!==te){let Ae=u.getTextPos();re();let de=u.getTextPos();c=Yr(c||(c=[]),{newText:ue,span:{start:Ae,length:de-Ae}})}else re()}function b(te,re,ue){let Ae=R(te,re,ue);return c?Ao.applyChanges(Ae,c):Ae}function R(te,re,ue){return c=void 0,I.clear(),d.writeList(te,re,ue,I),I.getText()}function N(te,re,ue,Ae){let de={text:R(te,re,ue),getLineAndCharacterOfPosition(Me){return Vl(this,Me)}},Be=fFe(Ae,ue),Fe=Fr(re,Me=>{let De=Ao.assignPositionsToNode(Me);return zC.formatNodeGivenIndentation(De,de,ue.languageVariant,0,0,{...Ae,options:Be})}),Ne=c?ml(vi(Fe,c),(Me,De)=>Pp(Me.span,De.span)):Fe;return Ao.applyChanges(de.text,Ne)}function V(te,re,ue){let Ae=P(te,re,ue);return c?Ao.applyChanges(Ae,c):Ae}function P(te,re,ue){return c=void 0,I.clear(),d.writeNode(te,re,ue,I),I.getText()}function Q(te,re,ue,Ae){let de={text:P(te,re,ue),getLineAndCharacterOfPosition(De){return Vl(this,De)}},Be=fFe(Ae,ue),Fe=Ao.assignPositionsToNode(re),Ne=zC.formatNodeGivenIndentation(Fe,de,ue.languageVariant,0,0,{...Ae,options:Be}),Me=c?ml(vi(Ne,c),(De,lt)=>Pp(De.span,lt.span)):Ne;return Ao.applyChanges(de.text,Me)}}function jQr(n){let c=n.fileName?void 0:R2(n.moduleSymbol.name),u=n.isFromPackageJson?!0:void 0;return Xue(n)?{exportName:n.exportName,exportMapKey:n.exportMapKey,moduleSpecifier:n.moduleSpecifier,ambientModuleName:c,fileName:n.fileName,isPackageJsonImport:u}:{exportName:n.exportName,exportMapKey:n.exportMapKey,fileName:n.fileName,ambientModuleName:n.fileName?void 0:R2(n.moduleSymbol.name),isPackageJsonImport:n.isFromPackageJson?!0:void 0}}function uss(n,c,u){let d=n.exportName==="default",I=!!n.isPackageJsonImport;return QQr(n)?{kind:32,exportName:n.exportName,exportMapKey:n.exportMapKey,moduleSpecifier:n.moduleSpecifier,symbolName:c,fileName:n.fileName,moduleSymbol:u,isDefaultExport:d,isFromPackageJson:I}:{kind:4,exportName:n.exportName,exportMapKey:n.exportMapKey,symbolName:c,fileName:n.fileName,moduleSymbol:u,isDefaultExport:d,isFromPackageJson:I}}function gss(n,c,u,d,I,h,b){let R=c.replacementSpan,N=dV(kue(I,b,u.moduleSpecifier)),V=u.isDefaultExport?1:u.exportName==="export="?2:0,P=b.includeCompletionsWithSnippetText?"$1":"",Q=p0.getImportKind(I,V,h,!0),te=c.couldBeTypeOnlyImportSpecifier,re=c.isTopLevelTypeOnly?` ${vr(156)} `:" ",ue=te?`${vr(156)} `:"",Ae=d?";":"";switch(Q){case 3:return{replacementSpan:R,insertText:`import${re}${dV(n)}${P} = require(${N})${Ae}`};case 1:return{replacementSpan:R,insertText:`import${re}${dV(n)}${P} from ${N}${Ae}`};case 2:return{replacementSpan:R,insertText:`import${re}* as ${dV(n)} from ${N}${Ae}`};case 0:return{replacementSpan:R,insertText:`import${re}{ ${ue}${dV(n)}${P} } from ${N}${Ae}`}}}function zQr(n,c,u){return/^\d+$/.test(u)?u:kue(n,c,u)}function Ass(n,c,u){return n===c||!!(n.flags&1048576)&&u.getExportSymbolOfSymbol(n)===c}function Q9t(n){if(YFe(n))return R2(n.moduleSymbol.name);if(Xue(n))return n.moduleSpecifier;if(n?.kind===1)return"ThisProperty/";if(n?.kind===64)return"TypeOnlyAlias/"}function M9t(n,c,u,d,I,h,b,R,N,V,P,Q,te,re,ue,Ae,de,Be,Fe,Ne,Me,De,lt,Le,je,st=!1){let nt=$l(),qe=kss(d,I),it=z_e(b),It=N.getTypeChecker(),dt=new Map;for(let He=0;Hemr.getSourceFile()===I.getSourceFile()));dt.set(Nt,jt),Gr(c,Dr,XFe,void 0,!0)}return P("getCompletionsAtPosition: getCompletionEntriesFromSymbols: "+($l()-nt)),{has:He=>dt.has(He),add:He=>dt.set(He,!0)};function Tt(He,ht){var Et;let Kt=He.flags;if(!Fc(I)){if(rf(I.parent))return!0;if($s(qe,js)&&He.valueDeclaration===qe)return!1;let Nt=He.valueDeclaration??((Et=He.declarations)==null?void 0:Et[0]);if(qe&&Nt&&($p(qe)&&$p(Nt)||Uc(qe)&&Uc(Nt))){let kt=Nt.pos,Zt=Uc(qe)?qe.parent.parameters:yo(qe.parent)?void 0:qe.parent.typeParameters;if(kt>=qe.pos&&Zt&&ktO9t(u,b,Ne)===I.name);return Fe!==void 0?{type:"literal",literal:Fe}:le(V,(Ne,Me)=>{let De=re[Me],lt=sqe(Ne,sA(R),De,te,N.isJsxIdentifierExpected);return lt&<.name===I.name&&(I.source==="ClassMemberSnippet/"&&Ne.flags&106500||I.source==="ObjectLiteralMethodSnippet/"&&Ne.flags&8196||Q9t(De)===I.source||I.source==="ObjectLiteralMemberWithComma/")?{type:"symbol",symbol:Ne,location:Q,origin:De,contextToken:ue,previousToken:Ae,isJsxInitializer:de,isTypeOnlyLocation:Be}:void 0})||{type:"none"}}function fss(n,c,u,d,I,h,b,R,N){let V=n.getTypeChecker(),P=n.getCompilerOptions(),{name:Q,source:te,data:re}=I,{previousToken:ue,contextToken:Ae}=iqe(d,u);if(e7(u,d,ue))return gqe.getStringLiteralCompletionDetails(Q,u,d,ue,n,h,N,R);let de=qQr(n,c,u,d,I,h,R);switch(de.type){case"request":{let{request:Be}=de;switch(Be.kind){case 1:return yP.getJSDocTagNameCompletionDetails(Q);case 2:return yP.getJSDocTagCompletionDetails(Q);case 3:return yP.getJSDocParameterNameCompletionDetails(Q);case 4:return lr(Be.keywordCompletions,Fe=>Fe.name===Q)?H9t(Q,"keyword",5):void 0;default:return w.assertNever(Be)}}case"symbol":{let{symbol:Be,location:Fe,contextToken:Ne,origin:Me,previousToken:De}=de,{codeActions:lt,sourceDisplay:Le}=Iss(Q,Fe,Ne,Me,Be,n,h,P,u,d,De,b,R,re,te,N),je=W9t(Me)?Me.symbolName:Be.name;return Y9t(Be,je,V,u,Fe,N,lt,Le)}case"literal":{let{literal:Be}=de;return H9t(O9t(u,R,Be),"string",typeof Be=="string"?8:7)}case"cases":{let Be=UQr(Ae.parent,u,R,n.getCompilerOptions(),h,n,void 0);if(Be?.importAdder.hasFixes()){let{entry:Fe,importAdder:Ne}=Be,Me=Ao.ChangeTracker.with({host:h,formatContext:b,preferences:R},Ne.writeFixes);return{name:Fe.name,kind:"",kindModifiers:"",displayParts:[],sourceDisplay:void 0,codeActions:[{changes:Me,description:vM([Z.Includes_imports_of_types_referenced_by_0,Q])}]}}return{name:Q,kind:"",kindModifiers:"",displayParts:[],sourceDisplay:void 0}}case"none":return r5r().some(Be=>Be.name===Q)?H9t(Q,"keyword",5):void 0;default:w.assertNever(de)}}function H9t(n,c,u){return JFe(n,"",c,[Yb(n,u)])}function Y9t(n,c,u,d,I,h,b,R){let{displayParts:N,documentation:V,symbolKind:P,tags:Q}=u.runWithCancellationToken(h,te=>MZ.getSymbolDisplayPartsDocumentationAndSymbolKind(te,n,d,I,I,7));return JFe(c,MZ.getSymbolModifiers(u,n),P,N,V,Q,b,R)}function JFe(n,c,u,d,I,h,b,R){return{name:n,kindModifiers:c,kind:u,displayParts:d,documentation:I,tags:h,codeActions:b,source:R,sourceDisplay:R}}function Iss(n,c,u,d,I,h,b,R,N,V,P,Q,te,re,ue,Ae){if(re?.moduleSpecifier&&P&&u5r(u||P,N).replacementSpan)return{codeActions:void 0,sourceDisplay:[O2(re.moduleSpecifier)]};if(ue==="ClassMemberSnippet/"){let{importAdder:lt,eraseRange:Le}=KQr(b,h,R,te,n,I,c,V,u,Q);if(lt?.hasFixes()||Le)return{sourceDisplay:void 0,codeActions:[{changes:Ao.ChangeTracker.with({host:b,formatContext:Q,preferences:te},st=>{lt&<.writeFixes(st),Le&&st.deleteRange(N,Le)}),description:lt?.hasFixes()?vM([Z.Includes_imports_of_types_referenced_by_0,n]):vM([Z.Update_modifiers_of_0,n])}]}}if(WQr(d)){let lt=p0.getPromoteTypeOnlyCompletionAction(N,d.declaration.name,h,b,Q,te);return w.assertIsDefined(lt,"Expected to have a code action for promoting type-only alias"),{codeActions:[lt],sourceDisplay:void 0}}if(ue==="ObjectLiteralMemberWithComma/"&&u){let lt=Ao.ChangeTracker.with({host:b,formatContext:Q,preferences:te},Le=>Le.insertText(N,u.end,","));if(lt)return{sourceDisplay:void 0,codeActions:[{changes:lt,description:vM([Z.Add_missing_comma_for_object_member_completion_0,n])}]}}if(!d||!(YFe(d)||Xue(d)))return{codeActions:void 0,sourceDisplay:void 0};let de=d.isFromPackageJson?b.getPackageJsonAutoImportProvider().getTypeChecker():h.getTypeChecker(),{moduleSymbol:Be}=d,Fe=de.getMergedSymbol(ph(I.exportSymbol||I,de)),Ne=u?.kind===30&&Um(u.parent),{moduleSpecifier:Me,codeAction:De}=p0.getImportCompletionAction(Fe,Be,re?.exportMapKey,N,n,Ne,b,h,Q,P&&sr(P)?P.getStart(N):V,te,Ae);return w.assert(!re?.moduleSpecifier||Me===re.moduleSpecifier),{sourceDisplay:[O2(Me)],codeActions:[De]}}function Css(n,c,u,d,I,h,b){let R=qQr(n,c,u,d,I,h,b);return R.type==="symbol"?R.symbol:void 0}var $Qr=(n=>(n[n.ObjectPropertyDeclaration=0]="ObjectPropertyDeclaration",n[n.Global=1]="Global",n[n.PropertyAccess=2]="PropertyAccess",n[n.MemberLike=3]="MemberLike",n[n.String=4]="String",n[n.None=5]="None",n))($Qr||{});function mss(n,c,u){return le(c&&(c.isUnion()?c.types:[c]),d=>{let I=d&&d.symbol;return I&&I.flags&424&&!RDe(I)?X9t(I,n,u):void 0})}function hss(n,c,u,d){let{parent:I}=n;switch(n.kind){case 80:return tFe(n,d);case 64:switch(I.kind){case 260:return d.getContextualType(I.initializer);case 226:return d.getTypeAtLocation(I.left);case 291:return d.getContextualTypeForJsxAttribute(I);default:return}case 105:return d.getContextualType(I);case 84:let h=$s(I,ute);return h?vje(h,d):void 0;case 19:return Qle(I)&&!Jx(I.parent)&&!dM(I.parent)?d.getContextualTypeForJsxAttribute(I.parent):void 0;default:let b=y0e.getArgumentInfoForCompletions(n,c,u,d);return b?d.getContextualTypeForArgumentAtIndex(b.invocation,b.argumentIndex):rFe(n.kind)&&ro(I)&&rFe(I.operatorToken.kind)?d.getTypeAtLocation(I.left):d.getContextualType(n,4)||d.getContextualType(n)}}function X9t(n,c,u){let d=u.getAccessibleSymbolChain(n,c,-1,!1);return d?qs(d):n.parent&&(_ss(n.parent)?n:X9t(n.parent,c,u))}function _ss(n){var c;return!!((c=n.declarations)!=null&&c.some(u=>u.kind===307))}function e5r(n,c,u,d,I,h,b,R,N,V){let P=n.getTypeChecker(),Q=JQr(u,d),te=$l(),re=Hc(u,I);c("getCompletionData: Get current token: "+($l()-te)),te=$l();let ue=VZ(u,I,re);c("getCompletionData: Is inside comment: "+($l()-te));let Ae=!1,de=!1,Be=!1;if(ue){if(NGt(u,I)){if(u.text.charCodeAt(I-1)===64)return{kind:1};{let Vt=Wv(I,u);if(!/[^*|\s(/)]/.test(u.text.substring(Vt,I)))return{kind:2}}}let bt=Bss(re,I);if(bt){if(bt.tagName.pos<=I&&I<=bt.tagName.end)return{kind:1};if(DN(bt))de=!0;else{let Vt=bi(bt);if(Vt&&(re=Hc(u,I),(!re||!tT(re)&&(re.parent.kind!==348||re.parent.name!==re))&&(Ae=Jt(Vt))),!Ae&&LB(bt)&&(Tf(bt.name)||bt.name.pos<=I&&I<=bt.name.end))return{kind:3,tag:bt}}}if(!Ae&&!de){c("Returning an empty list because completion was inside a regular comment or plain text part of a JsDoc comment.");return}}te=$l();let Fe=!Ae&&!de&&i0(u),Ne=iqe(I,u),Me=Ne.previousToken,De=Ne.contextToken;c("getCompletionData: Get previous token: "+($l()-te));let lt=re,Le,je=!1,st=!1,nt=!1,qe=!1,it=!1,It=!1,dt,Tt=ub(u,I),St=0,He=!1,ht=0;if(De){let bt=u5r(De,u);if(bt.keywordCompletion){if(bt.isKeywordOnlyCompletion)return{kind:4,keywordCompletions:[jis(bt.keywordCompletion)],isNewIdentifierLocation:bt.isNewIdentifierLocation};St=qis(bt.keywordCompletion)}if(bt.replacementSpan&&h.includeCompletionsForImportStatements&&h.includeCompletionsWithInsertText&&(ht|=2,dt=bt,He=bt.isNewIdentifierLocation),!bt.replacementSpan&&Rc(De))return c("Returning an empty list because completion was requested in an invalid position."),St?YQr(St,Fe,ju()):void 0;let Vt=De.parent;if(De.kind===25||De.kind===29)switch(je=De.kind===25,st=De.kind===29,Vt.kind){case 211:Le=Vt,lt=Le.expression;let dn=Y5(Le);if(Tf(dn)||(lu(lt)||eu(lt))&<.end===De.pos&<.getChildCount(u)&&Ta(lt.getChildren(u)).kind!==22)return;break;case 166:lt=Vt.left;break;case 267:lt=Vt.name;break;case 205:lt=Vt;break;case 236:lt=Vt.getFirstToken(u),w.assert(lt.kind===102||lt.kind===105);break;default:return}else if(!dt){if(Vt&&Vt.kind===211&&(De=Vt,Vt=Vt.parent),re.parent===Tt)switch(re.kind){case 32:(re.parent.kind===284||re.parent.kind===286)&&(Tt=re);break;case 44:re.parent.kind===285&&(Tt=re);break}switch(Vt.kind){case 287:De.kind===44&&(qe=!0,Tt=De);break;case 226:if(!l5r(Vt))break;case 285:case 284:case 286:It=!0,De.kind===30&&(nt=!0,Tt=De);break;case 294:case 293:(Me.kind===20||Me.kind===80&&Me.parent.kind===291)&&(It=!0);break;case 291:if(Vt.initializer===Me&&Me.endr7(bt?R.getPackageJsonAutoImportProvider():n,R));if(je||st)Pi();else if(nt)Lt=P.getJsxIntrinsicTagNamesAt(Tt),w.assertEachIsDefined(Lt,"getJsxIntrinsicTagNames() should all be defined"),xs(),Kt=1,St=0;else if(qe){let bt=De.parent.parent.openingElement.tagName,Vt=P.getSymbolAtLocation(bt);Vt&&(Lt=[Vt]),Kt=1,St=0}else if(!xs())return St?YQr(St,Fe,He):void 0;c("getCompletionData: Semantic work: "+($l()-Et));let Vr=Me&&hss(Me,I,u,P),pr=!$s(Me,JA)&&!It?tr(Vr&&(Vr.isUnion()?Vr.types:[Vr]),bt=>bt.isLiteral()&&!(bt.flags&1024)?bt.value:void 0):[],zr=Me&&Vr&&mss(Me,Vr,P);return{kind:0,symbols:Lt,completionKind:Kt,isInSnippetScope:Be,propertyAccessToConvert:Le,isNewIdentifierLocation:He,location:Tt,keywordFilters:St,literals:pr,symbolToOriginInfoMap:Zt,recommendedCompletion:zr,previousToken:Me,contextToken:De,isJsxInitializer:it,insideJsDocTagTypeExpression:Ae,symbolToSortTextMap:Dr,isTypeOnlyLocation:mr,isJsxIdentifierExpected:It,isRightOfOpenTag:nt,isRightOfDotOrQuestionDot:je||st,importStatementCompletion:dt,hasUnresolvedAutoImports:Nt,flags:ht};function $n(bt){switch(bt.kind){case 341:case 348:case 342:case 344:case 346:case 349:case 350:return!0;case 345:return!!bt.constraint;default:return!1}}function bi(bt){if($n(bt)){let Vt=Lv(bt)?bt.constraint:bt.typeExpression;return Vt&&Vt.kind===309?Vt:void 0}if(P6(bt)||zxe(bt))return bt.class}function Pi(){Kt=2;let bt=n_(lt),Vt=bt&&!lt.isTypeOf||VS(lt.parent)||P_e(De,u,P),dn=RGe(lt);if(T_(lt)||bt||fo(lt)){let On=mC(lt.parent);On&&(He=!0);let Qn=P.getSymbolAtLocation(lt);if(Qn&&(Qn=ph(Qn,P),Qn.flags&1920)){let Ii=P.getExportsOfModule(Qn);w.assertEachIsDefined(Ii,"getExportsOfModule() should all be defined");let ds=Vi=>P.isValidPropertyAccess(bt?lt:lt.parent,Vi.name),Es=Vi=>U9t(Vi,P),so=On?Vi=>{var xo;return!!(Vi.flags&1920)&&!((xo=Vi.declarations)!=null&&xo.every(Yc=>Yc.parent===lt.parent))}:dn?Vi=>Es(Vi)||ds(Vi):Vt||Ae?Es:ds;for(let Vi of Ii)so(Vi)&&Lt.push(Vi);if(!Vt&&!Ae&&Qn.declarations&&Qn.declarations.some(Vi=>Vi.kind!==307&&Vi.kind!==267&&Vi.kind!==266)){let Vi=P.getTypeOfSymbolAtLocation(Qn,lt).getNonOptionalType(),xo=!1;if(Vi.isNullableType()){let Yc=je&&!st&&h.includeAutomaticOptionalChainCompletions!==!1;(Yc||st)&&(Vi=Vi.getNonNullableType(),Yc&&(xo=!0))}Ns(Vi,!!(lt.flags&65536),xo)}return}}if(!Vt||V5(lt)){P.tryGetThisTypeAt(lt,!1);let On=P.getTypeAtLocation(lt).getNonOptionalType();if(Vt)Ns(On.getNonNullableType(),!1,!1);else{let Qn=!1;if(On.isNullableType()){let Ii=je&&!st&&h.includeAutomaticOptionalChainCompletions!==!1;(Ii||st)&&(On=On.getNonNullableType(),Ii&&(Qn=!0))}Ns(On,!!(lt.flags&65536),Qn)}}}function Ns(bt,Vt,dn){He=!!bt.getStringIndexType(),st&&lr(bt.getCallSignatures())&&(He=!0);let On=lt.kind===205?lt:lt.parent;if(Q)for(let Qn of bt.getApparentProperties())P.isValidPropertyAccessForCompletions(On,bt,Qn)&&gi(Qn,!1,dn);else Lt.push(...Gt(lqe(bt,P),Qn=>P.isValidPropertyAccessForCompletions(On,bt,Qn)));if(Vt&&h.includeCompletionsWithInsertText){let Qn=P.getPromisedTypeOfPromise(bt);if(Qn)for(let Ii of Qn.getApparentProperties())P.isValidPropertyAccessForCompletions(On,Qn,Ii)&&gi(Ii,!0,dn)}}function gi(bt,Vt,dn){var On;let Qn=le(bt.declarations,so=>$s(Sl(so),kg));if(Qn){let so=jn(Qn.expression),Vi=so&&P.getSymbolAtLocation(so),xo=Vi&&X9t(Vi,De,P),Yc=xo&&Gg(xo);if(Yc&&D2(jt,Yc)){let Il=Lt.length;Lt.push(xo);let sa=xo.parent;if(!sa||!L3(sa)||P.tryGetMemberInModuleExportsAndProperties(xo.name,sa)!==xo)Zt[Il]={kind:Es(2)};else{let Ra=Ul(R2(sa.name))?(On=T8(sa))==null?void 0:On.fileName:void 0,{moduleSpecifier:ki}=(kt||(kt=p0.createImportSpecifierResolver(u,n,R,h))).getModuleSpecifierForBestExportInfo([{exportKind:0,moduleFileName:Ra,isFromPackageJson:!1,moduleSymbol:sa,symbol:xo,targetFlags:ph(xo,P).flags}],I,xZ(Tt))||{};if(ki){let Gs={kind:Es(6),moduleSymbol:sa,isDefaultExport:!1,symbolName:xo.name,exportName:xo.name,fileName:Ra,moduleSpecifier:ki};Zt[Il]=Gs}}}else if(h.includeCompletionsWithInsertText){if(Yc&&jt.has(Yc))return;ds(bt),Ii(bt),Lt.push(bt)}}else ds(bt),Ii(bt),Lt.push(bt);function Ii(so){Rss(so)&&(Dr[Gg(so)]=f0.LocalDeclarationPriority)}function ds(so){h.includeCompletionsWithInsertText&&(Vt&&D2(jt,Gg(so))?Zt[Lt.length]={kind:Es(8)}:dn&&(Zt[Lt.length]={kind:16}))}function Es(so){return dn?so|16:so}}function jn(bt){return sr(bt)?bt:fo(bt)?jn(bt.expression):void 0}function xs(){return(vA()||kr()||rc()||en()||ct()||rn()||Bc()||wt()||xi()||(Wl(),1))===1}function Bc(){return Mt(De)?(Kt=5,He=!0,St=4,1):0}function xi(){let bt=Pr(De),Vt=bt&&P.getContextualType(bt.attributes);if(!Vt)return 0;let dn=bt&&P.getContextualType(bt.attributes,4);return Lt=vi(Lt,Re(cqe(Vt,dn,bt.attributes,P),bt.attributes.properties)),ar(),Kt=3,He=!1,1}function rc(){return dt?(He=!0,ni(),1):0}function Wl(){St=_r(De)?5:1,Kt=1,He=ju(),Me!==De&&w.assert(!!Me,"Expected 'contextToken' to be defined when different from 'previousToken'.");let bt=Me!==De?Me.getStart():I,Vt=nc(De,bt,u)||u;Be=mc(Vt);let dn=(mr?0:111551)|788968|1920|2097152,On=Me&&!xZ(Me);Lt=vi(Lt,P.getSymbolsInScope(Vt,dn)),w.assertEachIsDefined(Lt,"getSymbolsInScope() should all be defined");for(let Qn=0;Qnds.getSourceFile()===u)&&(Dr[Gg(Ii)]=f0.GlobalsOrKeywords),On&&!(Ii.flags&111551)){let ds=Ii.declarations&&be(Ii.declarations,H9);if(ds){let Es={kind:64,declaration:ds};Zt[Qn]=Es}}}if(h.includeCompletionsWithInsertText&&Vt.kind!==307){let Qn=P.tryGetThisTypeAt(Vt,!1,va(Vt.parent)?Vt:void 0);if(Qn&&!Nss(Qn,u,P))for(let Ii of lqe(Qn,P))Zt[Lt.length]={kind:1},Lt.push(Ii),Dr[Gg(Ii)]=f0.SuggestedClassMembers}ni(),mr&&(St=De&&kE(De.parent)?6:7)}function gl(){var bt;return dt?!0:h.includeCompletionsForModuleExports?u.externalModuleIndicator||u.commonJsModuleIndicator||sje(n.getCompilerOptions())?!0:((bt=n.getSymlinkCache)==null?void 0:bt.call(n).hasAnySymlinks())||!!n.getCompilerOptions().paths||FGt(n):!1}function mc(bt){switch(bt.kind){case 307:case 228:case 294:case 241:return!0;default:return Cc(bt)}}function _s(){return Ae||de||!!dt&&Nx(Tt.parent)||!Pu(De)&&(P_e(De,u,P)||VS(Tt)||ir(De))}function Pu(bt){return bt&&(bt.kind===114&&(bt.parent.kind===186||nD(bt.parent))||bt.kind===131&&bt.parent.kind===182)}function ir(bt){if(bt){let Vt=bt.parent.kind;switch(bt.kind){case 59:return Vt===172||Vt===171||Vt===169||Vt===260||HR(Vt);case 64:return Vt===265||Vt===168;case 130:return Vt===234;case 30:return Vt===183||Vt===216;case 96:return Vt===168;case 152:return Vt===238}}return!1}function ni(){var bt,Vt;if(!gl()||(w.assert(!b?.data,"Should not run 'collectAutoImports' when faster path is available via `data`"),b&&!b.source))return;ht|=1;let On=Me===De&&dt?"":Me&&sr(Me)?Me.text.toLowerCase():"",Qn=(bt=R.getModuleSpecifierCache)==null?void 0:bt.call(R),Ii=t0e(u,R,n,h,V),ds=(Vt=R.getPackageJsonAutoImportProvider)==null?void 0:Vt.call(R),Es=b?void 0:Mte(u,h,R);OQr("collectAutoImports",R,kt||(kt=p0.createImportSpecifierResolver(u,n,R,h)),n,I,h,!!dt,xZ(Tt),Vi=>{Ii.search(u.path,nt,(xo,Yc)=>{if(!Ke(xo,sA(R.getCompilationSettings()))||!b&&L5(xo)||!mr&&!dt&&!(Yc&111551)||mr&&!(Yc&790504))return!1;let Il=xo.charCodeAt(0);return nt&&(Il<65||Il>90)?!1:b?!0:f5r(xo,On)},(xo,Yc,Il,sa)=>{if(b&&!lr(xo,UA=>b.source===R2(UA.moduleSymbol.name))||(xo=Gt(xo,so),!xo.length))return;let Ra=Vi.tryResolve(xo,Il)||{};if(Ra==="failed")return;let ki=xo[0],Gs;Ra!=="skipped"&&({exportInfo:ki=xo[0],moduleSpecifier:Gs}=Ra);let ri=ki.exportKind===1,_u=ri&&l6(w.checkDefined(ki.symbol))||w.checkDefined(ki.symbol);gs(_u,{kind:Gs?32:4,moduleSpecifier:Gs,symbolName:Yc,exportMapKey:sa,exportName:ki.exportKind===2?"export=":w.checkDefined(ki.symbol).name,fileName:ki.moduleFileName,isDefaultExport:ri,moduleSymbol:ki.moduleSymbol,isFromPackageJson:ki.isFromPackageJson})}),Nt=Vi.skippedAny(),ht|=Vi.resolvedAny()?8:0,ht|=Vi.resolvedBeyondLimit()?16:0});function so(Vi){let xo=$s(Vi.moduleSymbol.valueDeclaration,Fc);if(!xo){let Yc=R2(Vi.moduleSymbol.name);return GN.nodeCoreModules.has(Yc)&&uc(Yc,"node:")!==pFe(u,n)?!1:Es?Es.allowsImportingAmbientModule(Vi.moduleSymbol,Pt(Vi.isFromPackageJson)):!0}return Vje(Vi.isFromPackageJson?ds:n,u,xo,h,Es,Pt(Vi.isFromPackageJson),Qn)}}function gs(bt,Vt){let dn=Gg(bt);Dr[dn]!==f0.GlobalsOrKeywords&&(Zt[Lt.length]=Vt,Dr[dn]=dt?f0.LocationPriority:f0.AutoImportSuggestions,Lt.push(bt))}function Hs(bt,Vt){io(Tt)||bt.forEach(dn=>{if(!za(dn))return;let On=sqe(dn,sA(d),void 0,0,!1);if(!On)return;let{name:Qn}=On,Ii=css(dn,Qn,Vt,n,R,d,h,N);if(!Ii)return;let ds={kind:128,...Ii};ht|=32,Zt[Lt.length]=ds,Lt.push(dn)})}function za(bt){return!!(bt.flags&8196)}function nc(bt,Vt,dn){let On=bt;for(;On&&!H7e(On,Vt,dn);)On=On.parent;return On}function Rc(bt){let Vt=$l(),dn=Bi(bt)||cr(bt)||an(bt)||lg(bt)||q3(bt);return c("getCompletionsAtPosition: isCompletionListBlocker: "+($l()-Vt)),dn}function lg(bt){if(bt.kind===12)return!0;if(bt.kind===32&&bt.parent){if(Tt===bt.parent&&(Tt.kind===286||Tt.kind===285))return!1;if(bt.parent.kind===286)return Tt.parent.kind!==286;if(bt.parent.kind===287||bt.parent.kind===285)return!!bt.parent.parent&&bt.parent.parent.kind===284}return!1}function ju(){if(De){let bt=De.parent.kind,Vt=aqe(De);switch(Vt){case 28:return bt===213||bt===176||bt===214||bt===209||bt===226||bt===184||bt===210;case 21:return bt===213||bt===176||bt===214||bt===217||bt===196;case 23:return bt===209||bt===181||bt===167;case 144:case 145:case 102:return!0;case 25:return bt===267;case 19:return bt===263||bt===210;case 64:return bt===260||bt===226;case 16:return bt===228;case 17:return bt===239;case 134:return bt===174||bt===304;case 42:return bt===174}if(UFe(Vt))return!0}return!1}function Bi(bt){return(Fhe(bt)||C8(bt))&&(L_e(bt,I)||I===bt.end&&(!!bt.isUnterminated||Fhe(bt)))}function vA(){let bt=wss(De);if(!bt)return 0;let dn=(ji(bt.parent)?bt.parent:void 0)||bt,On=c5r(dn,P);if(!On)return 0;let Qn=P.getTypeFromTypeNode(dn),Ii=lqe(On,P),ds=lqe(Qn,P),Es=new Set;return ds.forEach(so=>Es.add(so.escapedName)),Lt=vi(Lt,Gt(Ii,so=>!Es.has(so.escapedName))),Kt=0,He=!0,1}function kr(){if(De?.kind===26)return 0;let bt=Lt.length,Vt=yss(De,I,u);if(!Vt)return 0;Kt=0;let dn,On;if(Vt.kind===210){let Qn=Dss(Vt,P);if(Qn===void 0)return Vt.flags&67108864?2:0;let Ii=P.getContextualType(Vt,4),ds=(Ii||Qn).getStringIndexType(),Es=(Ii||Qn).getNumberIndexType();if(He=!!ds||!!Es,dn=cqe(Qn,Ii,Vt,P),On=Vt.properties,dn.length===0&&!Es)return 0}else{w.assert(Vt.kind===206),He=!1;let Qn=PS(Vt.parent);if(!R5(Qn))return w.fail("Root declaration is not variable-like.");let Ii=$w(Qn)||!!IC(Qn)||Qn.parent.parent.kind===250;if(!Ii&&Qn.kind===169&&(tn(Qn.parent)?Ii=!!P.getContextualType(Qn.parent):(Qn.parent.kind===174||Qn.parent.kind===178)&&(Ii=tn(Qn.parent.parent)&&!!P.getContextualType(Qn.parent.parent))),Ii){let ds=P.getTypeAtLocation(Vt);if(!ds)return 2;dn=P.getPropertiesOfType(ds).filter(Es=>P.isPropertyAccessible(Vt,!1,!1,ds,Es)),On=Vt.elements}}if(dn&&dn.length>0){let Qn=wn(dn,w.checkDefined(On));Lt=vi(Lt,Qn),ar(),Vt.kind===210&&h.includeCompletionsWithObjectLiteralMethodSnippets&&h.includeCompletionsWithInsertText&&(Qe(bt),Hs(Qn,Vt))}return 1}function en(){if(!De)return 0;let bt=De.kind===19||De.kind===28?$s(De.parent,qce):XGe(De)?$s(De.parent.parent,qce):void 0;if(!bt)return 0;XGe(De)||(St=8);let{moduleSpecifier:Vt}=bt.kind===275?bt.parent.parent:bt.parent;if(!Vt)return He=!0,bt.kind===275?2:0;let dn=P.getSymbolAtLocation(Vt);if(!dn)return He=!0,2;Kt=3,He=!1;let On=P.getExportsAndPropertiesOfModule(dn),Qn=new Set(bt.elements.filter(ds=>!Jt(ds)).map(ds=>(ds.propertyName||ds.name).escapedText)),Ii=On.filter(ds=>ds.escapedName!=="default"&&!Qn.has(ds.escapedName));return Lt=vi(Lt,Ii),Ii.length||(St=0),1}function ct(){if(De===void 0)return 0;let bt=De.kind===19||De.kind===28?$s(De.parent,A4):De.kind===59?$s(De.parent.parent,A4):void 0;if(bt===void 0)return 0;let Vt=new Set(bt.elements.map(Sle));return Lt=Gt(P.getTypeAtLocation(bt).getApparentProperties(),dn=>!Vt.has(dn.escapedName)),1}function rn(){var bt;let Vt=De&&(De.kind===19||De.kind===28)?$s(De.parent,ZB):void 0;if(!Vt)return 0;let dn=Si(Vt,fg(Fc,mC));return Kt=5,He=!1,(bt=dn.locals)==null||bt.forEach((On,Qn)=>{var Ii,ds;Lt.push(On),(ds=(Ii=dn.symbol)==null?void 0:Ii.exports)!=null&&ds.has(Qn)&&(Dr[Gg(On)]=f0.OptionalMember)}),1}function wt(){let bt=Sss(u,De,Tt,I);if(!bt)return 0;if(Kt=3,He=!0,St=De.kind===42?0:va(bt)?2:3,!va(bt))return 1;let Vt=De.kind===27?De.parent.parent:De.parent,dn=nC(Vt)?R_(Vt):0;if(De.kind===80&&!Jt(De))switch(De.getText()){case"private":dn=dn|2;break;case"static":dn=dn|256;break;case"override":dn=dn|16;break}if(ef(Vt)&&(dn|=256),!(dn&2)){let On=va(bt)&&dn&16?Dm(xv(bt)):$8(bt),Qn=Fr(On,Ii=>{let ds=P.getTypeAtLocation(Ii);return dn&256?ds?.symbol&&P.getPropertiesOfType(P.getTypeOfSymbolAtLocation(ds.symbol,bt)):ds&&P.getPropertiesOfType(ds)});Lt=vi(Lt,ur(Qn,bt.members,dn)),X(Lt,(Ii,ds)=>{let Es=Ii?.valueDeclaration;if(Es&&nC(Es)&&Es.name&&kg(Es.name)){let so={kind:512,symbolName:P.symbolToString(Ii)};Zt[ds]=so}})}return 1}function br(bt){return!!bt.parent&&Uc(bt.parent)&&Df(bt.parent.parent)&&(C5(bt.kind)||tT(bt))}function Mt(bt){if(bt){let Vt=bt.parent;switch(bt.kind){case 21:case 28:return Df(bt.parent)?bt.parent:void 0;default:if(br(bt))return Vt.parent}}}function _r(bt){if(bt){let Vt,dn=Si(bt.parent,On=>va(On)?"quit":pd(On)&&Vt===On.body?!0:(Vt=On,!1));return dn&&dn}}function Pr(bt){if(bt){let Vt=bt.parent;switch(bt.kind){case 32:case 31:case 44:case 80:case 211:case 292:case 291:case 293:if(Vt&&(Vt.kind===285||Vt.kind===286)){if(bt.kind===32){let dn=ym(bt.pos,u,void 0);if(!Vt.typeArguments||dn&&dn.kind===44)break}return Vt}else if(Vt.kind===291)return Vt.parent.parent;break;case 11:if(Vt&&(Vt.kind===291||Vt.kind===293))return Vt.parent.parent;break;case 20:if(Vt&&Vt.kind===294&&Vt.parent&&Vt.parent.kind===291)return Vt.parent.parent.parent;if(Vt&&Vt.kind===293)return Vt.parent.parent;break}}}function ti(bt,Vt){return u.getLineEndOfPosition(bt.getEnd())=bt.pos;case 25:return dn===207;case 59:return dn===208;case 23:return dn===207;case 21:return dn===299||Pn(dn);case 19:return dn===266;case 30:return dn===263||dn===231||dn===264||dn===265||HR(dn);case 126:return dn===172&&!va(Vt.parent);case 26:return dn===169||!!Vt.parent&&Vt.parent.kind===207;case 125:case 123:case 124:return dn===169&&!Df(Vt.parent);case 130:return dn===276||dn===281||dn===274;case 139:case 153:return!uqe(bt);case 80:{if(dn===276&&bt===Vt.name&&bt.text==="type"||Si(bt.parent,js)&&ti(bt,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 dn!==276;case 42:return eu(bt.parent)&&!lI(bt.parent)}if(UFe(aqe(bt))&&uqe(bt)||br(bt)&&(!sr(bt)||C5(aqe(bt))||Jt(bt)))return!1;switch(aqe(bt)){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 Hl(bt.parent)}if(Si(bt.parent,va)&&bt===Me&&kn(bt,I))return!1;let Qn=bG(bt.parent,172);if(Qn&&bt!==Me&&va(Me.parent.parent)&&I<=Me.end){if(kn(bt,Me.end))return!1;if(bt.kind!==64&&(d_e(Qn)||JC(Qn)))return!0}return tT(bt)&&!F_(bt.parent)&&!RN(bt.parent)&&!((va(bt.parent)||XI(bt.parent)||$p(bt.parent))&&(bt!==Me||I>Me.end))}function kn(bt,Vt){return bt.kind!==64&&(bt.kind===27||!L1(bt.end,Vt,u))}function Pn(bt){return HR(bt)&&bt!==176}function an(bt){if(bt.kind===9){let Vt=bt.getFullText();return Vt.charAt(Vt.length-1)==="."}return!1}function Kr(bt){return bt.parent.kind===261&&!P_e(bt,u,P)}function wn(bt,Vt){if(Vt.length===0)return bt;let dn=new Set,On=new Set;for(let Ii of Vt){if(Ii.kind!==303&&Ii.kind!==304&&Ii.kind!==208&&Ii.kind!==174&&Ii.kind!==177&&Ii.kind!==178&&Ii.kind!==305||Jt(Ii))continue;let ds;if(Ux(Ii))Pe(Ii,dn);else if(hl(Ii)&&Ii.propertyName)Ii.propertyName.kind===80&&(ds=Ii.propertyName.escapedText);else{let Es=Sl(Ii);ds=Es&&WS(Es)?r6(Es):void 0}ds!==void 0&&On.add(ds)}let Qn=bt.filter(Ii=>!On.has(Ii.escapedName));return sn(dn,Qn),Qn}function Pe(bt,Vt){let dn=bt.expression,On=P.getSymbolAtLocation(dn),Qn=On&&P.getTypeOfSymbolAtLocation(On,dn),Ii=Qn&&Qn.properties;Ii&&Ii.forEach(ds=>{Vt.add(ds.name)})}function ar(){Lt.forEach(bt=>{if(bt.flags&16777216){let Vt=Gg(bt);Dr[Vt]=Dr[Vt]??f0.OptionalMember}})}function sn(bt,Vt){if(bt.size!==0)for(let dn of Vt)bt.has(dn.name)&&(Dr[Gg(dn)]=f0.MemberDeclaredBySpreadAssignment)}function Qe(bt){for(let Vt=bt;Vt!On.has(Qn.escapedName)&&!!Qn.declarations&&!(V1(Qn)&2)&&!(Qn.valueDeclaration&&Dh(Qn.valueDeclaration)))}function Re(bt,Vt){let dn=new Set,On=new Set;for(let Ii of Vt)Jt(Ii)||(Ii.kind===291?dn.add(R6(Ii.name)):W6(Ii)&&Pe(Ii,On));let Qn=bt.filter(Ii=>!dn.has(Ii.escapedName));return sn(On,Qn),Qn}function Jt(bt){return bt.getStart(u)<=I&&I<=bt.getEnd()}}function yss(n,c,u){var d;if(n){let{parent:I}=n;switch(n.kind){case 19:case 28:if(ru(I)||Wg(I))return I;break;case 42:return lI(I)?$s(I.parent,ru):void 0;case 134:return $s(I.parent,ru);case 80:if(n.text==="async"&&F_(n.parent))return n.parent.parent;{if(ru(n.parent.parent)&&(Ux(n.parent)||F_(n.parent)&&Vl(u,n.getEnd()).line!==Vl(u,c).line))return n.parent.parent;let b=Si(I,jC);if(b?.getLastToken(u)===n&&ru(b.parent))return b.parent}break;default:if((d=I.parent)!=null&&d.parent&&(lI(I.parent)||Qb(I.parent)||ob(I.parent))&&ru(I.parent.parent))return I.parent.parent;if(Ux(I)&&ru(I.parent))return I.parent;let h=Si(I,jC);if(n.kind!==59&&h?.getLastToken(u)===n&&ru(h.parent))return h.parent}}}function iqe(n,c){let u=ym(n,c);return u&&n<=u.end&&(eb(u)||s0(u.kind))?{contextToken:ym(u.getFullStart(),c,void 0),previousToken:u}:{contextToken:u,previousToken:u}}function t5r(n,c,u,d){let I=c.isPackageJsonImport?d.getPackageJsonAutoImportProvider():u,h=I.getTypeChecker(),b=c.ambientModuleName?h.tryFindAmbientModule(c.ambientModuleName):c.fileName?h.getMergedSymbol(w.checkDefined(I.getSourceFile(c.fileName)).symbol):void 0;if(!b)return;let R=c.exportName==="export="?h.resolveExternalModuleSymbol(b):h.tryGetMemberInModuleExportsAndProperties(c.exportName,b);return R?(R=c.exportName==="default"&&l6(R)||R,{symbol:R,origin:uss(c,n,b)}):void 0}function sqe(n,c,u,d,I){if(Xis(u))return;let h=Qis(u)?u.symbolName:n.name;if(h===void 0||n.flags&1536&&iee(h.charCodeAt(0))||bee(n))return;let b={name:h,needsConvertPropertyAccess:!1};if(Ke(h,c,I?1:0)||n.valueDeclaration&&Dh(n.valueDeclaration))return b;switch(d){case 3:return W9t(u)?{name:u.symbolName,needsConvertPropertyAccess:!1}:void 0;case 0:return{name:JSON.stringify(h),needsConvertPropertyAccess:!1};case 2:case 1:return h.charCodeAt(0)===32?void 0:{name:h,needsConvertPropertyAccess:!0};case 5:case 4:return b;default:w.assertNever(d)}}var oqe=[],r5r=su(()=>{let n=[];for(let c=83;c<=165;c++)n.push({name:vr(c),kind:"keyword",kindModifiers:"",sortText:f0.GlobalsOrKeywords});return n});function n5r(n,c){if(!c)return i5r(n);let u=n+8+1;return oqe[u]||(oqe[u]=i5r(n).filter(d=>!bss(Yn(d.name))))}function i5r(n){return oqe[n]||(oqe[n]=r5r().filter(c=>{let u=Yn(c.name);switch(n){case 0:return!1;case 1:return o5r(u)||u===138||u===144||u===156||u===145||u===128||wue(u)&&u!==157;case 5:return o5r(u);case 2:return UFe(u);case 3:return s5r(u);case 4:return C5(u);case 6:return wue(u)||u===87;case 7:return wue(u);case 8:return u===156;default:return w.assertNever(n)}}))}function bss(n){switch(n){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}}function s5r(n){return n===148}function UFe(n){switch(n){case 128:case 129:case 137:case 139:case 153:case 134:case 138:case 164:return!0;default:return h$(n)}}function o5r(n){return n===134||n===135||n===160||n===130||n===152||n===156||!Tce(n)&&!UFe(n)}function aqe(n){return sr(n)?QR(n)??0:n.kind}function Ess(n,c){let u=[];if(n){let d=n.getSourceFile(),I=n.parent,h=d.getLineAndCharacterOfPosition(n.end).line,b=d.getLineAndCharacterOfPosition(c).line;(hI(I)||hC(I)&&I.moduleSpecifier)&&n===I.moduleSpecifier&&h===b&&u.push({name:vr(132),kind:"keyword",kindModifiers:"",sortText:f0.GlobalsOrKeywords})}return u}function Bss(n,c){return Si(n,u=>J9(u)&&Z_e(u,c)?!0:cT(u)?"quit":!1)}function cqe(n,c,u,d){let I=c&&c!==n,h=I&&!(c.flags&3)?d.getUnionType([n,c]):n,b=vss(h,u,d);return h.isClass()&&a5r(b)?[]:I?Gt(b,R):b;function R(N){return O(N.declarations)?lr(N.declarations,V=>V.parent!==u):!0}}function vss(n,c,u){return n.isUnion()?u.getAllPossiblePropertiesOfTypes(Gt(n.types,d=>!(d.flags&402784252||u.isArrayLikeType(d)||u.isTypeInvalidDueToUnionDiscriminant(d,c)||u.typeHasCallOrConstructSignatures(d)||d.isClass()&&a5r(d.getApparentProperties())))):n.getApparentProperties()}function a5r(n){return lr(n,c=>!!(V1(c)&6))}function lqe(n,c){return n.isUnion()?w.checkEachDefined(c.getAllPossiblePropertiesOfTypes(n.types),"getAllPossiblePropertiesOfTypes() should all be defined"):w.checkEachDefined(n.getApparentProperties(),"getApparentProperties() should all be defined")}function Sss(n,c,u,d){switch(u.kind){case 352:return $s(u.parent,H5);case 1:let I=$s(zo(ps(u.parent,Fc).statements),H5);if(I&&!Qd(I,20,n))return I;break;case 81:if($s(u.parent,Hl))return Si(u,va);break;case 80:{if(QR(u)||Hl(u.parent)&&u.parent.initializer===u)return;if(uqe(u))return Si(u,H5)}}if(c){if(u.kind===137||sr(c)&&Hl(c.parent)&&va(u))return Si(c,va);switch(c.kind){case 64:return;case 27:case 20:return uqe(u)&&u.parent.name===u?u.parent.parent:$s(u,H5);case 19:case 28:return $s(c.parent,H5);default:if(H5(u)){if(Vl(n,c.getEnd()).line!==Vl(n,d).line)return u;let I=va(c.parent.parent)?UFe:s5r;return I(c.kind)||c.kind===42||sr(c)&&I(QR(c)??0)?c.parent.parent:void 0}return}}}function wss(n){if(!n)return;let c=n.parent;switch(n.kind){case 19:if(Se(c))return c;break;case 27:case 28:case 80:if(c.kind===171&&Se(c.parent))return c.parent;break}}function c5r(n,c){if(!n)return;if(Ma(n)&&B8(n.parent))return c.getTypeArgumentConstraint(n);let u=c5r(n.parent,c);if(u)switch(n.kind){case 171:return c.getTypeOfPropertyOfContextualType(u,n.symbol.escapedName);case 193:case 187:case 192:return u}}function uqe(n){return n.parent&&h8(n.parent)&&H5(n.parent.parent)}function Tss(n,c,u,d){switch(c){case".":case"@":return!0;case'"':case"'":case"`":return!!u&&$Gt(u)&&d===u.getStart(n)+1;case"#":return!!u&&Gc(u)&&!!Km(u);case"<":return!!u&&u.kind===30&&(!ro(u.parent)||l5r(u.parent));case"/":return!!u&&(JA(u)?!!gee(u):u.kind===44&&AM(u.parent));case" ":return!!u&&L6(u)&&u.parent.kind===307;default:return w.assertNever(c)}}function l5r({left:n}){return Tf(n)}function Nss(n,c,u){let d=u.resolveName("self",void 0,111551,!1);if(d&&u.getTypeOfSymbolAtLocation(d,c)===n)return!0;let I=u.resolveName("global",void 0,111551,!1);if(I&&u.getTypeOfSymbolAtLocation(I,c)===n)return!0;let h=u.resolveName("globalThis",void 0,111551,!1);return!!(h&&u.getTypeOfSymbolAtLocation(h,c)===n)}function Rss(n){return!!(n.valueDeclaration&&R_(n.valueDeclaration)&256&&va(n.valueDeclaration.parent))}function Dss(n,c){let u=c.getContextualType(n);if(u)return u;let d=qR(n.parent);if(ro(d)&&d.operatorToken.kind===64&&n===d.left)return c.getTypeAtLocation(d);if(tn(d))return c.getContextualType(d)}function u5r(n,c){var u,d,I;let h,b=!1,R=N();return{isKeywordOnlyCompletion:b,keywordCompletion:h,isNewIdentifierLocation:!!(R||h===156),isTopLevelTypeOnly:!!((d=(u=$s(R,hI))==null?void 0:u.importClause)!=null&&d.isTypeOnly)||!!((I=$s(R,mm))!=null&&I.isTypeOnly),couldBeTypeOnlyImportSpecifier:!!R&&A5r(R,n),replacementSpan:xss(R)};function N(){let V=n.parent;if(mm(V)){let P=V.getLastToken(c);if(sr(n)&&P!==n){h=161,b=!0;return}return h=n.kind===156?void 0:156,J9t(V.moduleReference)?V:void 0}if(A5r(V,n)&&d5r(V.parent))return V;if(TN(V)||Xx(V)){if(!V.parent.isTypeOnly&&(n.kind===19||n.kind===102||n.kind===28)&&(h=156),d5r(V))if(n.kind===20||n.kind===80)b=!0,h=161;else return V.parent.parent;return}if(hC(V)&&n.kind===42||ZB(V)&&n.kind===20){b=!0,h=161;return}if(L6(n)&&Fc(V))return h=156,n;if(L6(n)&&hI(V))return h=156,J9t(V.moduleSpecifier)?V:void 0}}function xss(n){var c;if(!n)return;let u=Si(n,fg(hI,mm,DN))??n,d=u.getSourceFile();if(RZ(u,d))return By(u,d);w.assert(u.kind!==102&&u.kind!==276);let I=u.kind===272||u.kind===351?g5r((c=u.importClause)==null?void 0:c.namedBindings)??u.moduleSpecifier:u.moduleReference,h={pos:u.getFirstToken().getStart(),end:I.pos};if(RZ(h,d))return NV(h)}function g5r(n){var c;return be((c=$s(n,TN))==null?void 0:c.elements,u=>{var d;return!u.propertyName&&L5(u.name.text)&&((d=ym(u.name.pos,n.getSourceFile(),n))==null?void 0:d.kind)!==28})}function A5r(n,c){return yy(n)&&(n.isTypeOnly||c===n.name&&XGe(c))}function d5r(n){if(!J9t(n.parent.parent.moduleSpecifier)||n.parent.name)return!1;if(TN(n)){let c=g5r(n);return(c?n.elements.indexOf(c):n.elements.length)<2}return!0}function J9t(n){var c;return Tf(n)?!0:!((c=$s(ZG(n)?n.expression:n,JA))!=null&&c.text)}function kss(n,c){if(!n)return;let u=Si(n,I=>z9(I)||p5r(I)||fu(I)?"quit":(Uc(I)||$p(I))&&!_(I.parent)),d=Si(c,I=>z9(I)||p5r(I)||fu(I)?"quit":js(I));return u||d}function p5r(n){return n.parent&&Id(n.parent)&&(n.parent.body===n||n.kind===39)}function U9t(n,c,u=new Map){return d(n)||d(ph(n.exportSymbol||n,c));function d(I){return!!(I.flags&788968)||c.isUnknownSymbol(I)||!!(I.flags&1536)&&D2(u,Gg(I))&&c.getExportsOfModule(I).some(h=>U9t(h,c,u))}}function Gss(n,c){let u=ph(n,c).declarations;return!!O(u)&&he(u,dFe)}function f5r(n,c){if(c.length===0)return!0;let u=!1,d,I=0,h=n.length;for(let b=0;bWss,getStringLiteralCompletions:()=>Lss});var I5r={directory:0,script:1,"external module name":2};function K9t(){let n=new Map;function c(u){let d=n.get(u.name);(!d||I5r[d.kind]({name:rT(re.value,Q),kindModifiers:"",kind:"string",sortText:f0.LocationPriority,replacementSpan:$7e(c,N)}));return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:n.isNewIdentifier,optionalReplacementSpan:P,entries:te}}default:return w.assertNever(n)}}function Wss(n,c,u,d,I,h,b,R){if(!d||!JA(d))return;let N=h5r(c,d,u,I,h,R);return N&&Pss(n,d,N,c,I.getTypeChecker(),b)}function Pss(n,c,u,d,I,h){switch(u.kind){case 0:{let b=be(u.paths,R=>R.name===n);return b&&JFe(n,m5r(b.extension),b.kind,[O2(n)])}case 1:{let b=be(u.symbols,R=>R.name===n);return b&&Y9t(b,b.name,I,d,c,h)}case 2:return be(u.types,b=>b.value===n)?JFe(n,"","string",[O2(n)]):void 0;default:return w.assertNever(u)}}function C5r(n){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!0,entries:n.map(({name:I,kind:h,span:b,extension:R})=>({name:I,kind:h,kindModifiers:m5r(R),sortText:f0.LocationPriority,replacementSpan:b}))}}function m5r(n){switch(n){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 w.fail("Extension .tsbuildinfo is unsupported.");case void 0:return"";default:return w.assertNever(n)}}function h5r(n,c,u,d,I,h){let b=d.getTypeChecker(),R=j9t(c.parent);switch(R.kind){case 201:{let re=j9t(R.parent);return re.kind===205?{kind:0,paths:b5r(n,c,d,I,h)}:N(re)}case 303:return ru(R.parent)&&R.name===c?Mss(b,R.parent):V()||V(0);case 212:{let{expression:re,argumentExpression:ue}=R;return c===zA(ue)?_5r(b.getTypeAtLocation(re)):void 0}case 213:case 214:case 291:if(!sos(c)&&!fC(R)){let re=y0e.getArgumentInfoForCompletions(R.kind===291?R.parent:c,u,n,b);return re&&Qss(re.invocation,c,re,b)||V(0)}case 272:case 278:case 283:case 351:return{kind:0,paths:b5r(n,c,d,I,h)};case 296:let P=IFe(b,R.parent.clauses),Q=V();return Q?{kind:2,types:Q.types.filter(re=>!P.hasValue(re.value)),isNewIdentifier:!1}:void 0;default:return V()||V(0)}function N(P){switch(P.kind){case 233:case 183:{let re=Si(R,ue=>ue.parent===P);return re?{kind:2,types:Aqe(b.getTypeArgumentConstraint(re)),isNewIdentifier:!1}:void 0}case 199:let{indexType:Q,objectType:te}=P;return Z_e(Q,u)?_5r(b.getTypeFromTypeNode(te)):void 0;case 192:{let re=N(j9t(P.parent));if(!re)return;let ue=Oss(P,R);return re.kind===1?{kind:1,symbols:re.symbols.filter(Ae=>!Ue(ue,Ae.name)),hasIndexSignature:re.hasIndexSignature}:{kind:2,types:re.types.filter(Ae=>!Ue(ue,Ae.value)),isNewIdentifier:!1}}default:return}}function V(P=4){let Q=Aqe(tFe(c,b,P));if(Q.length)return{kind:2,types:Q,isNewIdentifier:!1}}}function j9t(n){switch(n.kind){case 196:return Iee(n);case 217:return qR(n);default:return n}}function Oss(n,c){return tr(n.types,u=>u!==c&&sd(u)&&Eu(u.literal)?u.literal.text:void 0)}function Qss(n,c,u,d){let I=!1,h=new Map,b=Um(n)?w.checkDefined(Si(c.parent,RN)):c,R=d.getCandidateSignaturesForStringLiteralCompletions(n,b),N=Fr(R,V=>{if(!g0(V)&&u.argumentCount>V.parameters.length)return;let P=V.getTypeParameterAtPosition(u.argumentIndex);if(Um(n)){let Q=d.getTypeOfPropertyOfType(P,YS(b.name));Q&&(P=Q)}return I=I||!!(P.flags&4),Aqe(P,h)});return O(N)?{kind:2,types:N,isNewIdentifier:I}:void 0}function _5r(n){return n&&{kind:1,symbols:Gt(n.getApparentProperties(),c=>!(c.valueDeclaration&&Dh(c.valueDeclaration))),hasIndexSignature:Bje(n)}}function Mss(n,c){let u=n.getContextualType(c);if(!u)return;let d=n.getContextualType(c,4);return{kind:1,symbols:cqe(u,d,c,n),hasIndexSignature:Bje(u)}}function Aqe(n,c=new Map){return n?(n=ije(n),n.isUnion()?Fr(n.types,u=>Aqe(u,c)):n.isStringLiteral()&&!(n.flags&1024)&&D2(c,n.value)?[n]:v):v}function Jue(n,c,u){return{name:n,kind:c,extension:u}}function z9t(n){return Jue(n,"directory",void 0)}function y5r(n,c,u){let d=tos(n,c),I=n.length===0?void 0:Ed(c,n.length);return u.map(({name:h,kind:b,extension:R})=>h.includes($u)||h.includes(dC)?{name:h,kind:b,extension:R,span:I}:{name:h,kind:b,extension:R,span:d})}function b5r(n,c,u,d,I){return y5r(c.text,c.getStart(n)+1,Hss(n,c,u,d,I))}function Hss(n,c,u,d,I){let h=df(c.text),b=JA(c)?u.getModeForUsageLocation(n,c):void 0,R=n.path,N=oa(R),V=u.getCompilerOptions(),P=u.getTypeChecker(),Q=q9t(V,1,n,P,I,b);return ros(h)||!V.baseUrl&&!V.paths&&(bd(h)||tC(h))?Yss(h,N,V,d,R,Q):Kss(h,N,b,V,d,Q,P)}function q9t(n,c,u,d,I,h){return{extensionsToSearch:or(Xss(n,d)),referenceKind:c,importingSourceFile:u,endingPreference:I?.importModuleSpecifierEnding,resolutionMode:h}}function Yss(n,c,u,d,I,h){return u.rootDirs?Uss(u.rootDirs,n,c,h,u,d,I):on(Uue(n,c,h,d,!0,I).values())}function Xss(n,c){let u=c?tr(c.getAmbientModules(),h=>{let b=h.name.slice(1,-1);if(!(!b.startsWith("*.")||b.includes("/")))return b.slice(1)}):[],d=[...b6(n),u],I=o0(n);return JGe(I)?Hee(n,d):d}function Jss(n,c,u,d){n=n.map(h=>dA(Mc(bd(h)?h:Do(c,h))));let I=le(n,h=>vg(h,u,c,d)?u.substr(h.length):void 0);return NA([...n.map(h=>Do(h,I)),u].map(h=>w_(h)),um,Ro)}function Uss(n,c,u,d,I,h,b){let R=I.project||h.getCurrentDirectory(),N=!(h.useCaseSensitiveFileNames&&h.useCaseSensitiveFileNames()),V=Jss(n,R,u,N);return NA(Fr(V,P=>on(Uue(c,P,d,h,!0,b).values())),(P,Q)=>P.name===Q.name&&P.kind===Q.kind&&P.extension===Q.extension)}function Uue(n,c,u,d,I,h,b=K9t()){var R;n===void 0&&(n=""),n=df(n),S_(n)||(n=oa(n)),n===""&&(n="."+$u),n=dA(n);let N=$_(c,n),V=S_(N)?N:oa(N);if(!I){let re=rFt(V,d);if(re){let Ae=lV(re,d).typesVersions;if(typeof Ae=="object"){let de=(R=Bke(Ae))==null?void 0:R.paths;if(de){let Be=oa(re),Fe=N.slice(dA(Be).length);if(B5r(b,Fe,Be,u,d,de))return b}}}}let P=!(d.useCaseSensitiveFileNames&&d.useCaseSensitiveFileNames());if(!oFe(d,V))return b;let Q=wje(d,V,u.extensionsToSearch,void 0,["./*"]);if(Q)for(let re of Q){if(re=Mc(re),h&&dh(re,h,c,P)===0)continue;let{name:ue,extension:Ae}=E5r(kA(re),d.getCompilationSettings(),u,!1);b.add(Jue(ue,"script",Ae))}let te=sFe(d,V);if(te)for(let re of te){let ue=kA(Mc(re));ue!=="@types"&&b.add(z9t(ue))}return b}function E5r(n,c,u,d){let I=dP.tryGetRealFileNameForNonJsDeclarationFileName(n);if(I)return{name:I,extension:_N(I)};if(u.referenceKind===0)return{name:n,extension:_N(n)};let h=oue({importModuleSpecifierEnding:u.endingPreference},c,u.importingSourceFile).getAllowedEndingsInPreferredOrder(u.resolutionMode);if(d&&(h=h.filter(R=>R!==0&&R!==1)),h[0]===3){if(fp(n,Ile))return{name:n,extension:_N(n)};let R=dP.tryGetJSExtensionForFile(n,c);return R?{name:NG(n,R),extension:R}:{name:n,extension:_N(n)}}if(!d&&(h[0]===0||h[0]===1)&&fp(n,[".js",".jsx",".ts",".tsx",".d.ts"]))return{name:a0(n),extension:_N(n)};let b=dP.tryGetJSExtensionForFile(n,c);return b?{name:NG(n,b),extension:b}:{name:n,extension:_N(n)}}function B5r(n,c,u,d,I,h){let b=N=>h[N],R=(N,V)=>{let P=i4(N),Q=i4(V),te=typeof P=="object"?P.prefix.length:N.length,re=typeof Q=="object"?Q.prefix.length:V.length;return Jl(re,te)};return v5r(n,!1,c,u,d,I,Gl(h),b,R)}function v5r(n,c,u,d,I,h,b,R,N){let V=[],P;for(let Q of b){if(Q===".")continue;let te=Q.replace(/^\.\//,""),re=R(Q);if(re){let ue=i4(te);if(!ue)continue;let Ae=typeof ue=="object"&&gm(ue,u);Ae&&(P===void 0||N(Q,P)===-1)&&(P=Q,V=V.filter(Be=>!Be.matchedPattern)),(typeof ue=="string"||P===void 0||N(Q,P)!==1)&&V.push({matchedPattern:Ae,results:jss(te,re,u,d,I,c&&Ae,h).map(({name:Be,kind:Fe,extension:Ne})=>Jue(Be,Fe,Ne))})}}return V.forEach(Q=>Q.results.forEach(te=>n.add(te))),P!==void 0}function Kss(n,c,u,d,I,h,b){let{baseUrl:R,paths:N}=d,V=K9t(),P=o0(d);if(R){let te=Mc(Do(I.getCurrentDirectory(),R));Uue(n,te,h,I,!1,void 0,V)}if(N){let te=Zce(d,I);B5r(V,n,te,h,I,N)}let Q=w5r(n);for(let te of qss(n,Q,b))V.add(Jue(te,"external module name",void 0));if(R5r(I,d,c,Q,h,V),JGe(P)){let te=!1;if(Q===void 0)for(let re of eos(I,c)){let ue=Jue(re,"external module name",void 0);V.has(ue.name)||(te=!0,V.add(ue))}if(!te){let re=Be=>{let Fe=Do(Be,"node_modules");oFe(I,Fe)&&Uue(n,Fe,h,I,!1,void 0,V)},ue=(Be,Fe,Ne)=>{let De=lV(Be,I).exports;if(De){if(typeof De!="object"||De===null)return!0;let lt=Gl(De),Le=BV(d,u);return v5r(V,!0,Ne,Fe,h,I,lt,je=>Dm(S5r(De[je],Le)),O8e),!0}return!1},Ae=Q&&the(d);if(Ae){let Be=re;re=Fe=>{let Ne=dd(n);Ne.shift();let Me=Ne.shift();if(!Me)return Be(Fe);if(uc(Me,"@")){let Le=Ne.shift();if(!Le)return Be(Fe);Me=Do(Me,Le)}let De=Do(Fe,"node_modules",Me),lt=Do(De,"package.json");if(Fue(I,lt)){let Le=Ne.join("/")+(Ne.length&&S_(n)?"/":"");if(ue(lt,De,Le))return}return Be(Fe)}}let de=EV(c);if(de){let Be=/^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:@[^/]+\/)?[^/]+)\/*(.*|)$/,Fe=n.match(Be);if(Fe){let[,Ne,Me]=Fe,De;try{De=de.resolveToUnqualified(Ne,c,{considerBuiltins:!1})}catch{}if(De){let lt=Mc(De),Le=!0;if(Ae){let je=Do(lt,"package.json");Fue(I,je)&&ue(je,lt,Me)&&(Le=!1)}Le&&Uue(Me,lt,h,I,!1,void 0,V)}}}else sI(c,re)}}return on(V.values())}function S5r(n,c){if(typeof n=="string")return n;if(n&&typeof n=="object"&&!Na(n)){for(let u in n)if(u==="default"||c.includes(u)||c_e(c,u)){let d=n[u];return S5r(d,c)}}}function w5r(n){return $9t(n)?S_(n)?n:oa(n):void 0}function jss(n,c,u,d,I,h,b){if(!fl(n,"*"))return n.includes("*")?v:V(n,"script");let R=n.slice(0,n.length-1),N=Tb(u,R);if(N===void 0)return n[n.length-2]==="/"?V(R,"directory"):Fr(c,Q=>{var te;return(te=T5r("",d,Q,I,h,b))==null?void 0:te.map(({name:re,...ue})=>({name:R+re,...ue}))});return Fr(c,P=>T5r(N,d,P,I,h,b));function V(P,Q){return uc(P,u)?[{name:w_(P),kind:Q,extension:void 0}]:v}}function T5r(n,c,u,d,I,h){if(!h.readDirectory)return;let b=i4(u);if(b===void 0||Ya(b))return;let R=$_(b.prefix),N=S_(b.prefix)?R:oa(R),V=S_(b.prefix)?"":kA(R),P=$9t(n),Q=P?S_(n)?n:oa(n):void 0,te=P?Do(N,V+Q):N,re=Mc(b.suffix),ue=re&&Fce("_"+re),Ae=ue?[NG(re,ue),re]:[re],de=Mc(Do(c,te)),Be=P?de:dA(de)+V,Fe=re?Ae.map(lt=>"**/*"+lt):["./*"],Ne=tr(wje(h,de,d.extensionsToSearch,void 0,Fe),lt=>{let Le=De(lt);if(Le){if($9t(Le))return z9t(dd(N5r(Le))[1]);let{name:je,extension:st}=E5r(Le,h.getCompilationSettings(),d,I);return Jue(je,"script",st)}}),Me=re?v:tr(sFe(h,de),lt=>lt==="node_modules"?void 0:z9t(lt));return[...Ne,...Me];function De(lt){return le(Ae,Le=>{let je=zss(Mc(lt),Be,Le);return je===void 0?void 0:N5r(je)})}}function zss(n,c,u){return uc(n,c)&&fl(n,u)?n.slice(c.length,n.length-u.length):void 0}function N5r(n){return n[0]===$u?n.slice(1):n}function qss(n,c,u){let I=u.getAmbientModules().map(h=>R2(h.name)).filter(h=>uc(h,n)&&!h.includes("*"));if(c!==void 0){let h=dA(c);return I.map(b=>E_(b,h))}return I}function $ss(n,c,u,d){let I=Hc(n,c),h=Zb(n.text,I.pos),b=h&&be(h,ue=>c>=ue.pos&&c<=ue.end);if(!b)return;let R=n.text.slice(b.pos,c),N=nos.exec(R);if(!N)return;let[,V,P,Q]=N,te=oa(n.path),re=P==="path"?Uue(Q,te,q9t(u,0,n),d,!0,n.path):P==="types"?R5r(d,u,te,w5r(Q),q9t(u,1,n)):w.fail();return y5r(Q,b.pos+V.length,on(re.values()))}function R5r(n,c,u,d,I,h=K9t()){let b=new Map,R=aFe(()=>tue(c,n))||v;for(let V of R)N(V);if(EV(u))for(let V of Ekr(u))N(V);else for(let V of Tje(u,n)){let P=Do(oa(V),"node_modules/@types");N(P)}return h;function N(V){if(oFe(n,V))for(let P of sFe(n,V)){let Q=l_e(P);if(!(c.types&&!Ue(c.types,Q)))if(d===void 0)b.has(Q)||(h.add(Jue(Q,"external module name",void 0)),b.set(Q,!0));else{let te=Do(V,P),re=she(d,Q,Lx(n));re!==void 0&&Uue(re,te,I,n,!1,void 0,h)}}}}function eos(n,c){if(!n.readFile||!n.fileExists)return v;let u=[];for(let d of Tje(c,n)){let I=lV(d,n);for(let h of ios){let b=I[h];if(b)for(let R in b)Qa(b,R)&&!uc(R,"@types/")&&u.push(R)}}return u}function tos(n,c){let u=Math.max(n.lastIndexOf($u),n.lastIndexOf(dC)),d=u!==-1?u+1:0,I=n.length-d;return I===0||Ke(n.substr(d,I),99)?void 0:Ed(c+d,I)}function ros(n){if(n&&n.length>=2&&n.charCodeAt(0)===46){let c=n.length>=3&&n.charCodeAt(1)===46?2:1,u=n.charCodeAt(c);return u===47||u===92}return!1}var nos=/^(\/\/\/\s*d7,DefinitionKind:()=>L5r,EntryKind:()=>V5r,ExportKind:()=>D5r,FindReferencesUse:()=>W5r,ImportExport:()=>x5r,createImportTracker:()=>eVt,findModuleReferences:()=>k5r,findReferenceOrRenameEntries:()=>hos,findReferencedSymbols:()=>Ios,getContextNode:()=>T4,getExportInfo:()=>tVt,getImplementationsAtPosition:()=>mos,getImportOrExportSymbol:()=>Z5r,getReferenceEntriesForNode:()=>O5r,getTextSpanOfEntry:()=>sVt,isContextWithStartAndEndNode:()=>nVt,isDeclarationOfSymbol:()=>Y5r,isWriteAccessForReference:()=>oVt,nodeEntry:()=>zx,toContextSpan:()=>iVt,toHighlightSpan:()=>Sos,toReferenceEntry:()=>H5r,toRenameLocation:()=>yos});function eVt(n,c,u,d){let I=los(n,u,d);return(h,b,R)=>{let{directImports:N,indirectUsers:V}=oos(n,c,I,b,u,d);return{indirectUsers:V,...aos(N,h,b.exportKind,u,R)}}}var D5r=(n=>(n[n.Named=0]="Named",n[n.Default=1]="Default",n[n.ExportEquals=2]="ExportEquals",n))(D5r||{}),x5r=(n=>(n[n.Import=0]="Import",n[n.Export=1]="Export",n))(x5r||{});function oos(n,c,u,{exportingModuleSymbol:d,exportKind:I},h,b){let R=Vte(),N=Vte(),V=[],P=!!d.globalExports,Q=P?void 0:[];return re(d),{directImports:V,indirectUsers:te()};function te(){if(P)return n;if(d.declarations)for(let Ne of d.declarations)KR(Ne)&&c.has(Ne.getSourceFile().fileName)&&Be(Ne);return Q.map(ls)}function re(Ne){let Me=Fe(Ne);if(Me){for(let De of Me)if(R(De))switch(b&&b.throwIfCancellationRequested(),De.kind){case 213:if(fC(De)){ue(De);break}if(!P){let Le=De.parent;if(I===2&&Le.kind===260){let{name:je}=Le;if(je.kind===80){V.push(je);break}}}break;case 80:break;case 271:de(De,De.name,ya(De,32),!1);break;case 272:case 351:V.push(De);let lt=De.importClause&&De.importClause.namedBindings;lt&<.kind===274?de(De,lt.name,!1,!0):!P&&G5(De)&&Be(KFe(De));break;case 278:De.exportClause?De.exportClause.kind===280?Be(KFe(De),!0):V.push(De):re(pos(De,h));break;case 205:!P&&De.isTypeOf&&!De.qualifier&&Ae(De)&&Be(De.getSourceFile(),!0),V.push(De);break;default:w.failBadSyntaxKind(De,"Unexpected import kind.")}}}function ue(Ne){let Me=Si(Ne,dqe)||Ne.getSourceFile();Be(Me,!!Ae(Ne,!0))}function Ae(Ne,Me=!1){return Si(Ne,De=>Me&&dqe(De)?"quit":tw(De)&&lr(De.modifiers,Ox))}function de(Ne,Me,De,lt){if(I===2)lt||V.push(Ne);else if(!P){let Le=KFe(Ne);w.assert(Le.kind===307||Le.kind===267),De||cos(Le,Me,h)?Be(Le,!0):Be(Le)}}function Be(Ne,Me=!1){if(w.assert(!P),!N(Ne)||(Q.push(Ne),!Me))return;let lt=h.getMergedSymbol(Ne.symbol);if(!lt)return;w.assert(!!(lt.flags&1536));let Le=Fe(lt);if(Le)for(let je of Le)Nu(je)||Be(KFe(je),!0)}function Fe(Ne){return u.get(Gg(Ne).toString())}}function aos(n,c,u,d,I){let h=[],b=[];function R(te,re){h.push([te,re])}if(n)for(let te of n)N(te);return{importSearches:h,singleReferences:b};function N(te){if(te.kind===271){rVt(te)&&V(te.name);return}if(te.kind===80){V(te);return}if(te.kind===205){if(te.qualifier){let Ae=sb(te.qualifier);Ae.escapedText===pf(c)&&b.push(Ae)}else u===2&&b.push(te.argument.literal);return}if(te.moduleSpecifier.kind!==11)return;if(te.kind===278){te.exportClause&&ZB(te.exportClause)&&P(te.exportClause);return}let{name:re,namedBindings:ue}=te.importClause||{name:void 0,namedBindings:void 0};if(ue)switch(ue.kind){case 274:V(ue.name);break;case 275:(u===0||u===1)&&P(ue);break;default:w.assertNever(ue)}if(re&&(u===1||u===2)&&(!I||re.escapedText===UGe(c))){let Ae=d.getSymbolAtLocation(re);R(re,Ae)}}function V(te){u===2&&(!I||Q(te.escapedText))&&R(te,d.getSymbolAtLocation(te))}function P(te){if(te)for(let re of te.elements){let{name:ue,propertyName:Ae}=re;if(Q((Ae||ue).escapedText))if(Ae)b.push(Ae),(!I||ue.escapedText===c.escapedName)&&R(ue,d.getSymbolAtLocation(ue));else{let de=re.kind===281&&re.propertyName?d.getExportSpecifierLocalTargetSymbol(re):d.getSymbolAtLocation(ue);R(ue,de)}}}function Q(te){return te===c.escapedName||u!==0&&te==="default"}}function cos(n,c,u){let d=u.getSymbolAtLocation(c);return!!G5r(n,I=>{if(!hC(I))return;let{exportClause:h,moduleSpecifier:b}=I;return!b&&h&&ZB(h)&&h.elements.some(R=>u.getExportSpecifierLocalTargetSymbol(R)===d)})}function k5r(n,c,u){var d;let I=[],h=n.getTypeChecker();for(let b of c){let R=u.valueDeclaration;if(R?.kind===307){for(let N of b.referencedFiles)n.getSourceFileFromReference(b,N)===R&&I.push({kind:"reference",referencingFile:b,ref:N});for(let N of b.typeReferenceDirectives){let V=(d=n.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(N,b))==null?void 0:d.resolvedTypeReferenceDirective;V!==void 0&&V.resolvedFileName===R.fileName&&I.push({kind:"reference",referencingFile:b,ref:N})}}F5r(b,(N,V)=>{h.getSymbolAtLocation(V)===u&&I.push($d(N)?{kind:"implicit",literal:V,referencingFile:b}:{kind:"import",literal:V})})}return I}function los(n,c,u){let d=new Map;for(let I of n)u&&u.throwIfCancellationRequested(),F5r(I,(h,b)=>{let R=c.getSymbolAtLocation(b);if(R){let N=Gg(R).toString(),V=d.get(N);V||d.set(N,V=[]),V.push(h)}});return d}function G5r(n,c){return X(n.kind===307?n.statements:n.body.statements,u=>c(u)||dqe(u)&&X(u.body&&u.body.statements,c))}function F5r(n,c){if(n.externalModuleIndicator||n.imports!==void 0)for(let u of n.imports)c(OX(u),u);else G5r(n,u=>{switch(u.kind){case 278:case 272:{let d=u;d.moduleSpecifier&&Eu(d.moduleSpecifier)&&c(d,d.moduleSpecifier);break}case 271:{let d=u;rVt(d)&&c(d,d.moduleReference.expression);break}}})}function Z5r(n,c,u,d){return d?I():I()||h();function I(){var N;let{parent:V}=n,P=V.parent;if(c.exportSymbol)return V.kind===211?(N=c.declarations)!=null&&N.some(re=>re===V)&&ro(P)?te(P,!1):void 0:b(c.exportSymbol,R(V));{let re=gos(V,n);if(re&&ya(re,32))return mm(re)&&re.moduleReference===n?d?void 0:{kind:0,symbol:u.getSymbolAtLocation(re.name)}:b(c,R(re));if(sD(V))return b(c,0);if(rf(V))return Q(V);if(rf(P))return Q(P);if(ro(V))return te(V,!0);if(ro(P))return te(P,!0);if(I4(V)||VKe(V))return b(c,0)}function Q(re){if(!re.symbol.parent)return;let ue=re.isExportEquals?2:1;return{kind:1,symbol:c,exportInfo:{exportingModuleSymbol:re.symbol.parent,exportKind:ue}}}function te(re,ue){let Ae;switch(mI(re)){case 1:Ae=0;break;case 2:Ae=2;break;default:return}let de=ue?u.getSymbolAtLocation(zme(ps(re.left,mp))):c;return de&&b(de,Ae)}}function h(){if(!Aos(n))return;let V=u.getImmediateAliasedSymbol(c);if(!V||(V=dos(V,u),V.escapedName==="export="&&(V=uos(V,u),V===void 0)))return;let P=UGe(V);if(P===void 0||P==="default"||P===c.escapedName)return{kind:0,symbol:V}}function b(N,V){let P=tVt(N,V,u);return P&&{kind:1,symbol:N,exportInfo:P}}function R(N){return ya(N,2048)?1:0}}function uos(n,c){var u,d;if(n.flags&2097152)return c.getImmediateAliasedSymbol(n);let I=w.checkDefined(n.valueDeclaration);if(rf(I))return(u=$s(I.expression,v2))==null?void 0:u.symbol;if(ro(I))return(d=$s(I.right,v2))==null?void 0:d.symbol;if(Fc(I))return I.symbol}function gos(n,c){let u=js(n)?n:hl(n)?IA(n):void 0;return u?n.name!==c||fM(u.parent)?void 0:Dp(u.parent.parent)?u.parent.parent:void 0:n}function Aos(n){let{parent:c}=n;switch(c.kind){case 271:return c.name===n&&rVt(c);case 276:return!c.propertyName;case 273:case 274:return w.assert(c.name===n),!0;case 208:return io(n)&&$9(c.parent.parent);default:return!1}}function tVt(n,c,u){let d=n.parent;if(!d)return;let I=u.getMergedSymbol(d);return L3(I)?{exportingModuleSymbol:I,exportKind:c}:void 0}function dos(n,c){if(n.declarations)for(let u of n.declarations){if(l0(u)&&!u.propertyName&&!u.parent.parent.moduleSpecifier)return c.getExportSpecifierLocalTargetSymbol(u)||n;if(fo(u)&&dN(u.expression)&&!Gc(u.name))return c.getSymbolAtLocation(u);if(F_(u)&&ro(u.parent.parent)&&mI(u.parent.parent)===2)return c.getExportSpecifierLocalTargetSymbol(u.name)}return n}function pos(n,c){return c.getMergedSymbol(KFe(n).symbol)}function KFe(n){if(n.kind===213||n.kind===351)return n.getSourceFile();let{parent:c}=n;return c.kind===307?c:(w.assert(c.kind===268),ps(c.parent,dqe))}function dqe(n){return n.kind===267&&n.name.kind===11}function rVt(n){return n.moduleReference.kind===283&&n.moduleReference.expression.kind===11}var L5r=(n=>(n[n.Symbol=0]="Symbol",n[n.Label=1]="Label",n[n.Keyword=2]="Keyword",n[n.This=3]="This",n[n.String=4]="String",n[n.TripleSlashReference=5]="TripleSlashReference",n))(L5r||{}),V5r=(n=>(n[n.Span=0]="Span",n[n.Node=1]="Node",n[n.StringLiteral=2]="StringLiteral",n[n.SearchedLocalFoundProperty=3]="SearchedLocalFoundProperty",n[n.SearchedPropertyFoundLocal=4]="SearchedPropertyFoundLocal",n))(V5r||{});function zx(n,c=1){return{kind:c,node:n.name||n,context:fos(n)}}function nVt(n){return n&&n.kind===void 0}function fos(n){if(xC(n))return T4(n);if(n.parent){if(!xC(n.parent)&&!rf(n.parent)){if(io(n)){let u=ro(n.parent)?n.parent:mp(n.parent)&&ro(n.parent.parent)&&n.parent.parent.left===n.parent?n.parent.parent:void 0;if(u&&mI(u)!==0)return T4(u)}if(NN(n.parent)||AM(n.parent))return n.parent.parent;if(d4(n.parent)||iC(n.parent)||D3(n.parent))return n.parent;if(JA(n)){let u=gee(n);if(u){let d=Si(u,I=>xC(I)||Cc(I)||J9(I));return xC(d)?T4(d):d}}let c=Si(n,kg);return c?T4(c.parent):void 0}if(n.parent.name===n||Df(n.parent)||rf(n.parent)||(M9(n.parent)||hl(n.parent))&&n.parent.propertyName===n||n.kind===90&&ya(n.parent,2080))return T4(n.parent)}}function T4(n){if(n)switch(n.kind){case 260:return!bl(n.parent)||n.parent.declarations.length!==1?n:Dp(n.parent.parent)?n.parent.parent:bZ(n.parent.parent)?T4(n.parent.parent):n.parent;case 208:return T4(n.parent.parent);case 276:return n.parent.parent.parent;case 281:case 274:return n.parent.parent;case 273:case 280:return n.parent;case 226:return Xf(n.parent)?n.parent:n;case 250:case 249:return{start:n.initializer,end:n.expression};case 303:case 304:return WZ(n.parent)?T4(Si(n.parent,c=>ro(c)||bZ(c))):n;case 255:return{start:be(n.getChildren(n.getSourceFile()),c=>c.kind===109),end:n.caseBlock};default:return n}}function iVt(n,c,u){if(!u)return;let d=nVt(u)?zFe(u.start,c,u.end):zFe(u,c);return d.start!==n.start||d.length!==n.length?{contextSpan:d}:void 0}var W5r=(n=>(n[n.Other=0]="Other",n[n.References=1]="References",n[n.Rename=2]="Rename",n))(W5r||{});function Ios(n,c,u,d,I){let h=ub(d,I),b={use:1},R=d7.getReferencedSymbolsForNode(I,h,n,u,c,b),N=n.getTypeChecker(),V=d7.getAdjustedNode(h,b),P=Cos(V)?N.getSymbolAtLocation(V):void 0;return!R||!R.length?void 0:tr(R,({definition:Q,references:te})=>Q&&{definition:N.runWithCancellationToken(c,re=>_os(Q,re,h)),references:te.map(re=>bos(re,P))})}function Cos(n){return n.kind===90||!!q8(n)||Cee(n)||n.kind===137&&Df(n.parent)}function mos(n,c,u,d,I){let h=ub(d,I),b,R=P5r(n,c,u,h,I);if(h.parent.kind===211||h.parent.kind===208||h.parent.kind===212||h.kind===108)b=R&&[...R];else if(R){let V=RA(R),P=new Map;for(;!V.isEmpty();){let Q=V.dequeue();if(!D2(P,od(Q.node)))continue;b=Yr(b,Q);let te=P5r(n,c,u,Q.node,Q.node.pos);te&&V.enqueue(...te)}}let N=n.getTypeChecker();return Ot(b,V=>Bos(V,N))}function P5r(n,c,u,d,I){if(d.kind===307)return;let h=n.getTypeChecker();if(d.parent.kind===304){let b=[];return d7.getReferenceEntriesForShorthandPropertyAssignment(d,h,R=>b.push(zx(R))),b}else if(d.kind===108||M0(d.parent)){let b=h.getSymbolAtLocation(d);return b.valueDeclaration&&[zx(b.valueDeclaration)]}else return O5r(I,d,n,u,c,{implementations:!0,use:1})}function hos(n,c,u,d,I,h,b){return Ot(Q5r(d7.getReferencedSymbolsForNode(I,d,n,u,c,h)),R=>b(R,d,n.getTypeChecker()))}function O5r(n,c,u,d,I,h={},b=new Set(d.map(R=>R.fileName))){return Q5r(d7.getReferencedSymbolsForNode(n,c,u,d,I,h,b))}function Q5r(n){return n&&Fr(n,c=>c.references)}function _os(n,c,u){let d=(()=>{switch(n.type){case 0:{let{symbol:P}=n,{displayParts:Q,kind:te}=M5r(P,c,u),re=Q.map(de=>de.text).join(""),ue=P.declarations&&$i(P.declarations),Ae=ue?Sl(ue)||ue:u;return{...jFe(Ae),name:re,kind:te,displayParts:Q,context:T4(ue)}}case 1:{let{node:P}=n;return{...jFe(P),name:P.text,kind:"label",displayParts:[Yb(P.text,17)]}}case 2:{let{node:P}=n,Q=vr(P.kind);return{...jFe(P),name:Q,kind:"keyword",displayParts:[{text:Q,kind:"keyword"}]}}case 3:{let{node:P}=n,Q=c.getSymbolAtLocation(P),te=Q&&MZ.getSymbolDisplayPartsDocumentationAndSymbolKind(c,Q,P.getSourceFile(),B4(P),P).displayParts||[O2("this")];return{...jFe(P),name:"this",kind:"var",displayParts:te}}case 4:{let{node:P}=n;return{...jFe(P),name:P.text,kind:"var",displayParts:[Yb(Nf(P),8)]}}case 5:return{textSpan:NV(n.reference),sourceFile:n.file,name:n.reference.fileName,kind:"string",displayParts:[Yb(`"${n.reference.fileName}"`,8)]};default:return w.assertNever(n)}})(),{sourceFile:I,textSpan:h,name:b,kind:R,displayParts:N,context:V}=d;return{containerKind:"",containerName:"",fileName:I.fileName,kind:R,name:b,textSpan:h,displayParts:N,...iVt(h,I,V)}}function jFe(n){let c=n.getSourceFile();return{sourceFile:c,textSpan:zFe(kg(n)?n.expression:n,c)}}function M5r(n,c,u){let d=d7.getIntersectingMeaningFromDeclarations(u,n),I=n.declarations&&$i(n.declarations)||u,{displayParts:h,symbolKind:b}=MZ.getSymbolDisplayPartsDocumentationAndSymbolKind(c,n,I.getSourceFile(),I,I,d);return{displayParts:h,kind:b}}function yos(n,c,u,d,I){return{...pqe(n),...d&&Eos(n,c,u,I)}}function bos(n,c){let u=H5r(n);return c?{...u,isDefinition:n.kind!==0&&Y5r(n.node,c)}:u}function H5r(n){let c=pqe(n);if(n.kind===0)return{...c,isWriteAccess:!1};let{kind:u,node:d}=n;return{...c,isWriteAccess:oVt(d),isInString:u===2?!0:void 0}}function pqe(n){if(n.kind===0)return{textSpan:n.textSpan,fileName:n.fileName};{let c=n.node.getSourceFile(),u=zFe(n.node,c);return{textSpan:u,fileName:c.fileName,...iVt(u,c,n.context)}}}function Eos(n,c,u,d){if(n.kind!==0&&(sr(c)||JA(c))){let{node:I,kind:h}=n,b=I.parent,R=c.text,N=F_(b);if(N||Y_e(b)&&b.name===I&&b.dotDotDotToken===void 0){let V={prefixText:R+": "},P={suffixText:": "+R};if(h===3)return V;if(h===4)return P;if(N){let Q=b.parent;return ru(Q)&&ro(Q.parent)&&dN(Q.parent.left)?V:P}else return V}else if(yy(b)&&!b.propertyName){let V=l0(c.parent)?u.getExportSpecifierLocalTargetSymbol(c.parent):u.getSymbolAtLocation(c);return Ue(V.declarations,b)?{prefixText:R+" as "}:Vv}else if(l0(b)&&!b.propertyName)return c===n.node||u.getSymbolAtLocation(c)===u.getSymbolAtLocation(n.node)?{prefixText:R+" as "}:{suffixText:" as "+R}}if(n.kind!==0&&pu(n.node)&&mp(n.node.parent)){let I=cje(d);return{prefixText:I,suffixText:I}}return Vv}function Bos(n,c){let u=pqe(n);if(n.kind!==0){let{node:d}=n;return{...u,...vos(d,c)}}else return{...u,kind:"",displayParts:[]}}function vos(n,c){let u=c.getSymbolAtLocation(xC(n)&&n.name?n.name:n);return u?M5r(u,c,n):n.kind===210?{kind:"interface",displayParts:[d0(21),O2("object literal"),d0(22)]}:n.kind===231?{kind:"local class",displayParts:[d0(21),O2("anonymous local class"),d0(22)]}:{kind:bM(n),displayParts:[]}}function Sos(n){let c=pqe(n);if(n.kind===0)return{fileName:c.fileName,span:{textSpan:c.textSpan,kind:"reference"}};let u=oVt(n.node),d={textSpan:c.textSpan,kind:u?"writtenReference":"reference",isInString:n.kind===2?!0:void 0,...c.contextSpan&&{contextSpan:c.contextSpan}};return{fileName:c.fileName,span:d}}function zFe(n,c,u){let d=n.getStart(c),I=(u||n).getEnd();return JA(n)&&I-d>2&&(w.assert(u===void 0),d+=1,I-=1),u?.kind===269&&(I=u.getFullStart()),Pd(d,I)}function sVt(n){return n.kind===0?n.textSpan:zFe(n.node,n.node.getSourceFile())}function oVt(n){let c=q8(n);return!!c&&wos(c)||n.kind===90||M5(n)}function Y5r(n,c){var u;if(!c)return!1;let d=q8(n)||(n.kind===90?n.parent:Cee(n)||n.kind===137&&Df(n.parent)?n.parent.parent:void 0),I=d&&ro(d)?d.left:void 0;return!!(d&&((u=c.declarations)!=null&&u.some(h=>h===d||h===I)))}function wos(n){if(n.flags&33554432)return!0;switch(n.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!WZ(n.parent);case 262:case 218:case 176:case 174:case 177:case 178:return!!n.body;case 260:case 172:return!!n.initializer||fM(n.parent);case 173:case 171:case 348:case 341:return!1;default:return w.failBadSyntaxKind(n)}}var d7;(n=>{function c(kr,en,ct,rn,wt,br={},Mt=new Set(rn.map(_r=>_r.fileName))){var _r,Pr;if(en=u(en,br),Fc(en)){let wn=zte.getReferenceAtPosition(en,kr,ct);if(!wn?.file)return;let Pe=ct.getTypeChecker().getMergedSymbol(wn.file.symbol);if(Pe)return V(ct,Pe,!1,rn,Mt);let ar=ct.getFileIncludeReasons();return ar?[{definition:{type:5,reference:wn.reference,file:en},references:I(wn.file,ar,ct)||v}]:void 0}if(!br.implementations){let wn=Q(en,rn,wt);if(wn)return wn}let ti=ct.getTypeChecker(),cr=ti.getSymbolAtLocation(Df(en)&&en.parent.name||en);if(!cr){if(!br.implementations&&JA(en)){if(KGe(en)){let wn=ct.getFileIncludeReasons(),Pe=(Pr=(_r=ct.getResolvedModuleFromModuleSpecifier(en))==null?void 0:_r.resolvedModule)==null?void 0:Pr.resolvedFileName,ar=Pe?ct.getSourceFile(Pe):void 0;if(ar)return[{definition:{type:4,node:en},references:I(ar,wn,ct)||v}]}return mc(en,rn,ti,wt)}return}if(cr.escapedName==="export=")return V(ct,cr.parent,!1,rn,Mt);let kn=b(cr,ct,rn,wt,br,Mt);if(kn&&!(cr.flags&33554432))return kn;let Pn=h(en,cr,ti),an=Pn&&b(Pn,ct,rn,wt,br,Mt),Kr=te(cr,en,rn,Mt,ti,wt,br);return R(ct,kn,Kr,an)}n.getReferencedSymbolsForNode=c;function u(kr,en){return en.use===1?kr=X7e(kr):en.use===2&&(kr=VGe(kr)),kr}n.getAdjustedNode=u;function d(kr,en,ct,rn=new Set(ct.map(wt=>wt.fileName))){var wt,br;let Mt=(wt=en.getSourceFile(kr))==null?void 0:wt.symbol;if(Mt)return((br=V(en,Mt,!1,ct,rn)[0])==null?void 0:br.references)||v;let _r=en.getFileIncludeReasons(),Pr=en.getSourceFile(kr);return Pr&&_r&&I(Pr,_r,en)||v}n.getReferencesForFileName=d;function I(kr,en,ct){let rn,wt=en.get(kr.path)||v;for(let br of wt)if(pP(br)){let Mt=ct.getSourceFileByPath(br.file),_r=hue(ct,br);Rte(_r)&&(rn=Yr(rn,{kind:0,fileName:Mt.fileName,textSpan:NV(_r)}))}return rn}function h(kr,en,ct){if(kr.parent&&Phe(kr.parent)){let rn=ct.getAliasedSymbol(en),wt=ct.getMergedSymbol(rn);if(rn!==wt)return wt}}function b(kr,en,ct,rn,wt,br){let Mt=kr.flags&1536&&kr.declarations&&be(kr.declarations,Fc);if(!Mt)return;let _r=kr.exports.get("export="),Pr=V(en,kr,!!_r,ct,br);if(!_r||!br.has(Mt.fileName))return Pr;let ti=en.getTypeChecker();return kr=ph(_r,ti),R(en,Pr,te(kr,void 0,ct,br,ti,rn,wt))}function R(kr,...en){let ct;for(let rn of en)if(!(!rn||!rn.length)){if(!ct){ct=rn;continue}for(let wt of rn){if(!wt.definition||wt.definition.type!==0){ct.push(wt);continue}let br=wt.definition.symbol,Mt=ke(ct,Pr=>!!Pr.definition&&Pr.definition.type===0&&Pr.definition.symbol===br);if(Mt===-1){ct.push(wt);continue}let _r=ct[Mt];ct[Mt]={definition:_r.definition,references:_r.references.concat(wt.references).sort((Pr,ti)=>{let cr=N(kr,Pr),kn=N(kr,ti);if(cr!==kn)return Jl(cr,kn);let Pn=sVt(Pr),an=sVt(ti);return Pn.start!==an.start?Jl(Pn.start,an.start):Jl(Pn.length,an.length)})}}}return ct}function N(kr,en){let ct=en.kind===0?kr.getSourceFile(en.fileName):en.node.getSourceFile();return kr.getSourceFiles().indexOf(ct)}function V(kr,en,ct,rn,wt){w.assert(!!en.valueDeclaration);let br=tr(k5r(kr,rn,en),_r=>{if(_r.kind==="import"){let Pr=_r.literal.parent;if(sd(Pr)){let ti=ps(Pr.parent,Nu);if(ct&&!ti.qualifier)return}return zx(_r.literal)}else if(_r.kind==="implicit"){let Pr=_r.literal.text!==Dx&&Q6(_r.referencingFile,ti=>ti.transformFlags&2?Jx(ti)||d4(ti)||dM(ti)?ti:void 0:"skip")||_r.referencingFile.statements[0]||_r.referencingFile;return zx(Pr)}else return{kind:0,fileName:_r.referencingFile.fileName,textSpan:NV(_r.ref)}});if(en.declarations)for(let _r of en.declarations)switch(_r.kind){case 307:break;case 267:wt.has(_r.getSourceFile().fileName)&&br.push(zx(_r.name));break;default:w.assert(!!(en.flags&33554432),"Expected a module symbol to be declared by a SourceFile or ModuleDeclaration.")}let Mt=en.exports.get("export=");if(Mt?.declarations)for(let _r of Mt.declarations){let Pr=_r.getSourceFile();if(wt.has(Pr.fileName)){let ti=ro(_r)&&fo(_r.left)?_r.left.expression:rf(_r)?w.checkDefined(Qd(_r,95,Pr)):Sl(_r)||_r;br.push(zx(ti))}}return br.length?[{definition:{type:0,symbol:en},references:br}]:v}function P(kr){return kr.kind===148&&as(kr.parent)&&kr.parent.operator===148}function Q(kr,en,ct){if(wue(kr.kind))return kr.kind===116&&mf(kr.parent)||kr.kind===148&&!P(kr)?void 0:Et(en,kr.kind,ct,kr.kind===148?P:void 0);if(Pb(kr.parent)&&kr.parent.name===kr)return ht(en,ct);if(iT(kr)&&ef(kr.parent))return[{definition:{type:2,node:kr},references:[zx(kr)]}];if(F_e(kr)){let rn=xGe(kr.parent,kr.text);return rn&&St(rn.parent,rn)}else if(L7e(kr))return St(kr.parent,kr);if(Zte(kr))return gl(kr,en,ct);if(kr.kind===108)return rc(kr)}function te(kr,en,ct,rn,wt,br,Mt){let _r=en&&Ae(kr,en,wt,!vA(Mt))||kr,Pr=en?za(en,_r):7,ti=[],cr=new Fe(ct,rn,en?ue(en):0,wt,br,Pr,Mt,ti),kn=!vA(Mt)||!_r.declarations?void 0:be(_r.declarations,l0);if(kn)Dr(kn.name,_r,kn,cr.createSearch(en,kr,void 0),cr,!0,!0);else if(en&&en.kind===90&&_r.escapedName==="default"&&_r.parent)Hr(en,_r,cr),Ne(en,_r,{exportingModuleSymbol:_r.parent,exportKind:1},cr);else{let Pn=cr.createSearch(en,_r,void 0,{allSearchSymbols:en?Pu(_r,en,wt,Mt.use===2,!!Mt.providePrefixAndSuffixTextForRename,!!Mt.implementations):[_r]});re(_r,cr,Pn)}return ti}function re(kr,en,ct){let rn=st(kr);if(rn)Nt(rn,rn.getSourceFile(),ct,en,!(Fc(rn)&&!Ue(en.sourceFiles,rn)));else for(let wt of en.sourceFiles)en.cancellationToken.throwIfCancellationRequested(),Le(wt,ct,en)}function ue(kr){switch(kr.kind){case 176:case 137:return 1;case 80:if(va(kr.parent))return w.assert(kr.parent.name===kr),2;default:return 0}}function Ae(kr,en,ct,rn){let{parent:wt}=en;return l0(wt)&&rn?jt(en,kr,wt,ct):le(kr.declarations,br=>{if(!br.parent){if(kr.flags&33554432)return;w.fail(`Unexpected symbol at ${w.formatSyntaxKind(en.kind)}: ${w.formatSymbol(kr)}`)}return Se(br.parent)&&Is(br.parent.parent)?ct.getPropertyOfType(ct.getTypeFromTypeNode(br.parent.parent),kr.name):void 0})}let de;(kr=>{kr[kr.None=0]="None",kr[kr.Constructor=1]="Constructor",kr[kr.Class=2]="Class"})(de||(de={}));function Be(kr){if(!(kr.flags&33555968))return;let en=kr.declarations&&be(kr.declarations,ct=>!Fc(ct)&&!mC(ct));return en&&en.symbol}class Fe{constructor(en,ct,rn,wt,br,Mt,_r,Pr){this.sourceFiles=en,this.sourceFilesSet=ct,this.specialSearchKind=rn,this.checker=wt,this.cancellationToken=br,this.searchMeaning=Mt,this.options=_r,this.result=Pr,this.inheritsFromCache=new Map,this.markSeenContainingTypeReference=Vte(),this.markSeenReExportRHS=Vte(),this.symbolIdToReferences=[],this.sourceFileToSeenSymbols=[]}includesSourceFile(en){return this.sourceFilesSet.has(en.fileName)}getImportSearches(en,ct){return this.importTracker||(this.importTracker=eVt(this.sourceFiles,this.sourceFilesSet,this.checker,this.cancellationToken)),this.importTracker(en,ct,this.options.use===2)}createSearch(en,ct,rn,wt={}){let{text:br=R2(pf(l6(ct)||Be(ct)||ct)),allSearchSymbols:Mt=[ct]}=wt,_r=Dd(br),Pr=this.options.implementations&&en?Bi(en,ct,this.checker):void 0;return{symbol:ct,comingFrom:rn,text:br,escapedText:_r,parents:Pr,allSearchSymbols:Mt,includes:ti=>Ue(Mt,ti)}}referenceAdder(en){let ct=Gg(en),rn=this.symbolIdToReferences[ct];return rn||(rn=this.symbolIdToReferences[ct]=[],this.result.push({definition:{type:0,symbol:en},references:rn})),(wt,br)=>rn.push(zx(wt,br))}addStringOrCommentReference(en,ct){this.result.push({definition:void 0,references:[{kind:0,fileName:en,textSpan:ct}]})}markSearchedSymbols(en,ct){let rn=od(en),wt=this.sourceFileToSeenSymbols[rn]||(this.sourceFileToSeenSymbols[rn]=new Set),br=!1;for(let Mt of ct)br=Zi(wt,Gg(Mt))||br;return br}}function Ne(kr,en,ct,rn){let{importSearches:wt,singleReferences:br,indirectUsers:Mt}=rn.getImportSearches(en,ct);if(br.length){let _r=rn.referenceAdder(en);for(let Pr of br)De(Pr,rn)&&_r(Pr)}for(let[_r,Pr]of wt)Kt(_r.getSourceFile(),rn.createSearch(_r,Pr,1),rn);if(Mt.length){let _r;switch(ct.exportKind){case 0:_r=rn.createSearch(kr,en,1);break;case 1:_r=rn.options.use===2?void 0:rn.createSearch(kr,en,1,{text:"default"});break;case 2:break}if(_r)for(let Pr of Mt)Le(Pr,_r,rn)}}function Me(kr,en,ct,rn,wt,br,Mt,_r){let Pr=eVt(kr,new Set(kr.map(Pn=>Pn.fileName)),en,ct),{importSearches:ti,indirectUsers:cr,singleReferences:kn}=Pr(rn,{exportKind:Mt?1:0,exportingModuleSymbol:wt},!1);for(let[Pn]of ti)_r(Pn);for(let Pn of kn)sr(Pn)&&Nu(Pn.parent)&&_r(Pn);for(let Pn of cr)for(let an of dt(Pn,Mt?"default":br)){let Kr=en.getSymbolAtLocation(an),wn=lr(Kr?.declarations,Pe=>!!$s(Pe,rf));sr(an)&&!M9(an.parent)&&(Kr===rn||wn)&&_r(an)}}n.eachExportReference=Me;function De(kr,en){return Lt(kr,en)?en.options.use!==2?!0:sr(kr)?!(M9(kr.parent)&&kr.escapedText==="default"):!1:!1}function lt(kr,en){if(kr.declarations)for(let ct of kr.declarations){let rn=ct.getSourceFile();Kt(rn,en.createSearch(ct,kr,0),en,en.includesSourceFile(rn))}}function Le(kr,en,ct){Bze(kr).get(en.escapedText)!==void 0&&Kt(kr,en,ct)}function je(kr,en){return WZ(kr.parent.parent)?en.getPropertySymbolOfDestructuringAssignment(kr):void 0}function st(kr){let{declarations:en,flags:ct,parent:rn,valueDeclaration:wt}=kr;if(wt&&(wt.kind===218||wt.kind===231))return wt;if(!en)return;if(ct&8196){let _r=be(en,Pr=>ib(Pr,2)||Dh(Pr));return _r?bG(_r,263):void 0}if(en.some(Y_e))return;let br=rn&&!(kr.flags&262144);if(br&&!(L3(rn)&&!rn.globalExports))return;let Mt;for(let _r of en){let Pr=B4(_r);if(Mt&&Mt!==Pr||!Pr||Pr.kind===307&&!na(Pr))return;if(Mt=Pr,PA(Mt)){let ti;for(;ti=fme(Mt);)Mt=ti}}return br?Mt.getSourceFile():Mt}function nt(kr,en,ct,rn=ct){return qe(kr,en,ct,()=>!0,rn)||!1}n.isSymbolReferencedInFile=nt;function qe(kr,en,ct,rn,wt=ct){let br=Zn(kr.parent,kr.parent.parent)?qs(en.getSymbolsOfParameterPropertyDeclaration(kr.parent,kr.text)):en.getSymbolAtLocation(kr);if(br)for(let Mt of dt(ct,br.name,wt)){if(!sr(Mt)||Mt===kr||Mt.escapedText!==kr.escapedText)continue;let _r=en.getSymbolAtLocation(Mt);if(_r===br||en.getShorthandAssignmentValueSymbol(Mt.parent)===br||l0(Mt.parent)&&jt(Mt,_r,Mt.parent,en)===br){let Pr=rn(Mt);if(Pr)return Pr}}}n.eachSymbolReferenceInFile=qe;function it(kr,en){return Gt(dt(en,kr),wt=>!!q8(wt)).reduce((wt,br)=>{let Mt=rn(br);return!lr(wt.declarationNames)||Mt===wt.depth?(wt.declarationNames.push(br),wt.depth=Mt):Mtcr===wt)&&rn(Mt,Pr))return!0}return!1}n.someSignatureUsage=It;function dt(kr,en,ct=kr){return tr(Tt(kr,en,ct),rn=>{let wt=ub(kr,rn);return wt===kr?void 0:wt})}function Tt(kr,en,ct=kr){let rn=[];if(!en||!en.length)return rn;let wt=kr.text,br=wt.length,Mt=en.length,_r=wt.indexOf(en,ct.pos);for(;_r>=0&&!(_r>ct.end);){let Pr=_r+Mt;(_r===0||!_2(wt.charCodeAt(_r-1),99))&&(Pr===br||!_2(wt.charCodeAt(Pr),99))&&rn.push(_r),_r=wt.indexOf(en,_r+Mt+1)}return rn}function St(kr,en){let ct=kr.getSourceFile(),rn=en.text,wt=tr(dt(ct,rn,kr),br=>br===en||F_e(br)&&xGe(br,rn)===en?zx(br):void 0);return[{definition:{type:1,node:en},references:wt}]}function He(kr,en){switch(kr.kind){case 81:if(oP(kr.parent))return!0;case 80:return kr.text.length===en.length;case 15:case 11:{let ct=kr;return(kGe(ct)||O7e(kr)||_Gt(kr)||lu(kr.parent)&&Y3(kr.parent)&&kr.parent.arguments[1]===kr)&&ct.text.length===en.length}case 9:return kGe(kr)&&kr.text.length===en.length;case 90:return en.length===7;default:return!1}}function ht(kr,en){let ct=Fr(kr,rn=>(en.throwIfCancellationRequested(),tr(dt(rn,"meta",rn),wt=>{let br=wt.parent;if(Pb(br))return zx(br)})));return ct.length?[{definition:{type:2,node:ct[0].node},references:ct}]:void 0}function Et(kr,en,ct,rn){let wt=Fr(kr,br=>(ct.throwIfCancellationRequested(),tr(dt(br,vr(en),br),Mt=>{if(Mt.kind===en&&(!rn||rn(Mt)))return zx(Mt)})));return wt.length?[{definition:{type:2,node:wt[0].node},references:wt}]:void 0}function Kt(kr,en,ct,rn=!0){return ct.cancellationToken.throwIfCancellationRequested(),Nt(kr,kr,en,ct,rn)}function Nt(kr,en,ct,rn,wt){if(rn.markSearchedSymbols(en,ct.allSearchSymbols))for(let br of Tt(en,ct.text,kr))kt(en,br,ct,rn,wt)}function Lt(kr,en){return!!(E4(kr)&en.searchMeaning)}function kt(kr,en,ct,rn,wt){let br=ub(kr,en);if(!He(br,ct.text)){!rn.options.implementations&&(rn.options.findInStrings&&e7(kr,en)||rn.options.findInComments&&GGt(kr,en))&&rn.addStringOrCommentReference(kr.fileName,Ed(en,ct.text.length));return}if(!Lt(br,rn))return;let Mt=rn.checker.getSymbolAtLocation(br);if(!Mt)return;let _r=br.parent;if(yy(_r)&&_r.propertyName===br)return;if(l0(_r)){w.assert(br.kind===80),Dr(br,Mt,_r,ct,rn,wt);return}if(IZ(_r)&&_r.isNameFirst&&_r.typeExpression&&f4(_r.typeExpression.type)&&_r.typeExpression.type.jsDocPropertyTags&&O(_r.typeExpression.type.jsDocPropertyTags)){Zt(_r.typeExpression.type.jsDocPropertyTags,br,ct,rn);return}let Pr=Hs(ct,Mt,br,rn);if(!Pr){Vr(Mt,ct,rn);return}switch(rn.specialSearchKind){case 0:wt&&Hr(br,Pr,rn);break;case 1:pr(br,kr,ct,rn);break;case 2:zr(br,ct,rn);break;default:w.assertNever(rn.specialSearchKind)}io(br)&&hl(br.parent)&&$9(br.parent.parent.parent)&&(Mt=br.parent.symbol,!Mt)||Pt(br,Mt,ct,rn)}function Zt(kr,en,ct,rn){let wt=rn.referenceAdder(ct.symbol);Hr(en,ct.symbol,rn),X(kr,br=>{c0(br.name)&&wt(br.name.left)})}function Dr(kr,en,ct,rn,wt,br,Mt){w.assert(!Mt||!!wt.options.providePrefixAndSuffixTextForRename,"If alwaysGetReferences is true, then prefix/suffix text must be enabled");let{parent:_r,propertyName:Pr,name:ti}=ct,cr=_r.parent,kn=jt(kr,en,ct,wt.checker);if(!Mt&&!rn.includes(kn))return;if(Pr?kr===Pr?(cr.moduleSpecifier||Pn(),br&&wt.options.use!==2&&wt.markSeenReExportRHS(ti)&&Hr(ti,w.checkDefined(ct.symbol),wt)):wt.markSeenReExportRHS(kr)&&Pn():wt.options.use===2&&ti.escapedText==="default"||Pn(),!vA(wt.options)||Mt){let Kr=kr.escapedText==="default"||ct.name.escapedText==="default"?1:0,wn=w.checkDefined(ct.symbol),Pe=tVt(wn,Kr,wt.checker);Pe&&Ne(kr,wn,Pe,wt)}if(rn.comingFrom!==1&&cr.moduleSpecifier&&!Pr&&!vA(wt.options)){let an=wt.checker.getExportSpecifierLocalTargetSymbol(ct);an&<(an,wt)}function Pn(){br&&Hr(kr,kn,wt)}}function jt(kr,en,ct,rn){return mr(kr,ct)&&rn.getExportSpecifierLocalTargetSymbol(ct)||en}function mr(kr,en){let{parent:ct,propertyName:rn,name:wt}=en;return w.assert(rn===kr||wt===kr),rn?rn===kr:!ct.parent.moduleSpecifier}function Pt(kr,en,ct,rn){let wt=Z5r(kr,en,rn.checker,ct.comingFrom===1);if(!wt)return;let{symbol:br}=wt;wt.kind===0?vA(rn.options)||lt(br,rn):Ne(kr,br,wt.exportInfo,rn)}function Vr({flags:kr,valueDeclaration:en},ct,rn){let wt=rn.checker.getShorthandAssignmentValueSymbol(en),br=en&&Sl(en);!(kr&33554432)&&br&&ct.includes(wt)&&Hr(br,wt,rn)}function Hr(kr,en,ct){let{kind:rn,symbol:wt}="kind"in en?en:{kind:void 0,symbol:en};if(ct.options.use===2&&kr.kind===90)return;let br=ct.referenceAdder(wt);ct.options.implementations?jn(kr,br,ct):br(kr,rn)}function pr(kr,en,ct,rn){Bue(kr)&&Hr(kr,ct.symbol,rn);let wt=()=>rn.referenceAdder(ct.symbol);if(va(kr.parent))w.assert(kr.kind===90||kr.parent.name===kr),$n(ct.symbol,en,wt());else{let br=ju(kr);br&&(Pi(br,wt()),gi(br,rn))}}function zr(kr,en,ct){Hr(kr,en.symbol,ct);let rn=kr.parent;if(ct.options.use===2||!va(rn))return;w.assert(rn.name===kr);let wt=ct.referenceAdder(en.symbol);for(let br of rn.members)_Z(br)&&eg(br)&&br.body&&br.body.forEachChild(function Mt(_r){_r.kind===110?wt(_r):!eu(_r)&&!va(_r)&&_r.forEachChild(Mt)})}function $n(kr,en,ct){let rn=bi(kr);if(rn&&rn.declarations)for(let wt of rn.declarations){let br=Qd(wt,137,en);w.assert(wt.kind===176&&!!br),ct(br)}kr.exports&&kr.exports.forEach(wt=>{let br=wt.valueDeclaration;if(br&&br.kind===174){let Mt=br.body;Mt&&lg(Mt,110,_r=>{Bue(_r)&&ct(_r)})}})}function bi(kr){return kr.members&&kr.members.get("__constructor")}function Pi(kr,en){let ct=bi(kr.symbol);if(ct&&ct.declarations)for(let rn of ct.declarations){w.assert(rn.kind===176);let wt=rn.body;wt&&lg(wt,108,br=>{G7e(br)&&en(br)})}}function Ns(kr){return!!bi(kr.symbol)}function gi(kr,en){if(Ns(kr))return;let ct=kr.symbol,rn=en.createSearch(void 0,ct,void 0);re(ct,en,rn)}function jn(kr,en,ct){if(tT(kr)&&nc(kr.parent)){en(kr);return}if(kr.kind!==80)return;kr.parent.kind===304&&Rc(kr,ct.checker,en);let rn=xs(kr);if(rn){en(rn);return}let wt=Si(kr,_r=>!c0(_r.parent)&&!Ma(_r.parent)&&!Rx(_r.parent)),br=wt.parent;if(JC(br)&&br.type===wt&&ct.markSeenContainingTypeReference(br))if($w(br))Mt(br.initializer);else if(eu(br)&&br.body){let _r=br.body;_r.kind===241?kx(_r,Pr=>{Pr.expression&&Mt(Pr.expression)}):Mt(_r)}else kE(br)&&Mt(br.expression);function Mt(_r){Bc(_r)&&en(_r)}}function xs(kr){return sr(kr)||fo(kr)?xs(kr.parent):k_(kr)?$s(kr.parent.parent,fg(va,XI)):void 0}function Bc(kr){switch(kr.kind){case 217:return Bc(kr.expression);case 219:case 218:case 210:case 231:case 209:return!0;default:return!1}}function xi(kr,en,ct,rn){if(kr===en)return!0;let wt=Gg(kr)+","+Gg(en),br=ct.get(wt);if(br!==void 0)return br;ct.set(wt,!1);let Mt=!!kr.declarations&&kr.declarations.some(_r=>$8(_r).some(Pr=>{let ti=rn.getTypeAtLocation(Pr);return!!ti&&!!ti.symbol&&xi(ti.symbol,en,ct,rn)}));return ct.set(wt,Mt),Mt}function rc(kr){let en=W8(kr,!1);if(!en)return;let ct=256;switch(en.kind){case 172:case 171:case 174:case 173:case 176:case 177:case 178:ct&=eD(en),en=en.parent;break;default:return}let rn=en.getSourceFile(),wt=tr(dt(rn,"super",en),br=>{if(br.kind!==108)return;let Mt=W8(br,!1);return Mt&&eg(Mt)===!!ct&&Mt.parent.symbol===en.symbol?zx(br):void 0});return[{definition:{type:0,symbol:en.symbol},references:wt}]}function Wl(kr){return kr.kind===80&&kr.parent.kind===169&&kr.parent.name===kr}function gl(kr,en,ct){let rn=n0(kr,!1,!1),wt=256;switch(rn.kind){case 174:case 173:if(RB(rn)){wt&=eD(rn),rn=rn.parent;break}case 172:case 171:case 176:case 177:case 178:wt&=eD(rn),rn=rn.parent;break;case 307:if(hm(rn)||Wl(kr))return;case 262:case 218:break;default:return}let br=Fr(rn.kind===307?en:[rn.getSourceFile()],_r=>(ct.throwIfCancellationRequested(),dt(_r,"this",Fc(rn)?_r:rn).filter(Pr=>{if(!Zte(Pr))return!1;let ti=n0(Pr,!1,!1);if(!v2(ti))return!1;switch(rn.kind){case 218:case 262:return rn.symbol===ti.symbol;case 174:case 173:return RB(rn)&&rn.symbol===ti.symbol;case 231:case 263:case 210:return ti.parent&&v2(ti.parent)&&rn.symbol===ti.parent.symbol&&eg(ti)===!!wt;case 307:return ti.kind===307&&!hm(ti)&&!Wl(Pr)}}))).map(_r=>zx(_r));return[{definition:{type:3,node:le(br,_r=>Uc(_r.node.parent)?_r.node:void 0)||kr},references:br}]}function mc(kr,en,ct,rn){let wt=LGe(kr,ct),br=Fr(en,Mt=>(rn.throwIfCancellationRequested(),tr(dt(Mt,kr.text),_r=>{if(JA(_r)&&_r.text===kr.text)if(wt){let Pr=LGe(_r,ct);if(wt!==ct.getStringType()&&(wt===Pr||_s(_r,ct)))return zx(_r,2)}else return cM(_r)&&!RZ(_r,Mt)?void 0:zx(_r,2)})));return[{definition:{type:4,node:kr},references:br}]}function _s(kr,en){if(i_(kr.parent))return en.getPropertyOfType(en.getTypeAtLocation(kr.parent.parent),kr.text)}function Pu(kr,en,ct,rn,wt,br){let Mt=[];return ir(kr,en,ct,rn,!(rn&&wt),(_r,Pr,ti)=>{ti&&gs(kr)!==gs(ti)&&(ti=void 0),Mt.push(ti||Pr||_r)},()=>!br),Mt}function ir(kr,en,ct,rn,wt,br,Mt){let _r=l0e(en);if(_r){let Kr=ct.getShorthandAssignmentValueSymbol(en.parent);if(Kr&&rn)return br(Kr,void 0,void 0,3);let wn=ct.getContextualType(_r.parent),Pe=wn&&le(ZFe(_r,ct,wn,!0),ur=>Pn(ur,4));if(Pe)return Pe;let ar=je(en,ct),sn=ar&&br(ar,void 0,void 0,4);if(sn)return sn;let Qe=Kr&&br(Kr,void 0,void 0,3);if(Qe)return Qe}let Pr=h(en,kr,ct);if(Pr){let Kr=br(Pr,void 0,void 0,1);if(Kr)return Kr}let ti=Pn(kr);if(ti)return ti;if(kr.valueDeclaration&&Zn(kr.valueDeclaration,kr.valueDeclaration.parent)){let Kr=ct.getSymbolsOfParameterPropertyDeclaration(ps(kr.valueDeclaration,Uc),kr.name);return w.assert(Kr.length===2&&!!(Kr[0].flags&1)&&!!(Kr[1].flags&4)),Pn(kr.flags&1?Kr[1]:Kr[0])}let cr=qd(kr,281);if(!rn||cr&&!cr.propertyName){let Kr=cr&&ct.getExportSpecifierLocalTargetSymbol(cr);if(Kr){let wn=br(Kr,void 0,void 0,1);if(wn)return wn}}if(!rn){let Kr;return wt?Kr=Y_e(en.parent)?jGe(ct,en.parent):void 0:Kr=an(kr,ct),Kr&&Pn(Kr,4)}if(w.assert(rn),wt){let Kr=an(kr,ct);return Kr&&Pn(Kr,4)}function Pn(Kr,wn){return le(ct.getRootSymbols(Kr),Pe=>br(Kr,Pe,void 0,wn)||(Pe.parent&&Pe.parent.flags&96&&Mt(Pe)?ni(Pe.parent,Pe.name,ct,ar=>br(Kr,Pe,ar,wn)):void 0))}function an(Kr,wn){let Pe=qd(Kr,208);if(Pe&&Y_e(Pe))return jGe(wn,Pe)}}function ni(kr,en,ct,rn){let wt=new Map;return br(kr);function br(Mt){if(!(!(Mt.flags&96)||!D2(wt,Gg(Mt))))return le(Mt.declarations,_r=>le($8(_r),Pr=>{let ti=ct.getTypeAtLocation(Pr),cr=ti&&ti.symbol&&ct.getPropertyOfType(ti,en);return ti&&cr&&(le(ct.getRootSymbols(cr),rn)||br(ti.symbol))}))}}function gs(kr){return kr.valueDeclaration?!!(R_(kr.valueDeclaration)&256):!1}function Hs(kr,en,ct,rn){let{checker:wt}=rn;return ir(en,ct,wt,!1,rn.options.use!==2||!!rn.options.providePrefixAndSuffixTextForRename,(br,Mt,_r,Pr)=>(_r&&gs(en)!==gs(_r)&&(_r=void 0),kr.includes(_r||Mt||br)?{symbol:Mt&&!(cI(br)&6)?Mt:br,kind:Pr}:void 0),br=>!(kr.parents&&!kr.parents.some(Mt=>xi(br.parent,Mt,rn.inheritsFromCache,wt))))}function za(kr,en){let ct=E4(kr),{declarations:rn}=en;if(rn){let wt;do{wt=ct;for(let br of rn){let Mt=NGe(br);Mt&ct&&(ct|=Mt)}}while(ct!==wt)}return ct}n.getIntersectingMeaningFromDeclarations=za;function nc(kr){return kr.flags&33554432?!(XI(kr)||Pf(kr)):R5(kr)?$w(kr):pd(kr)?!!kr.body:va(kr)||BX(kr)}function Rc(kr,en,ct){let rn=en.getSymbolAtLocation(kr),wt=en.getShorthandAssignmentValueSymbol(rn.valueDeclaration);if(wt)for(let br of wt.getDeclarations())NGe(br)&1&&ct(br)}n.getReferenceEntriesForShorthandPropertyAssignment=Rc;function lg(kr,en,ct){hu(kr,rn=>{rn.kind===en&&ct(rn),lg(rn,en,ct)})}function ju(kr){return Qme(DGe(kr).parent)}function Bi(kr,en,ct){let rn=Fte(kr)?kr.parent:void 0,wt=rn&&ct.getTypeAtLocation(rn.expression),br=tr(wt&&(wt.isUnionOrIntersection()?wt.types:wt.symbol===en.parent?void 0:[wt]),Mt=>Mt.symbol&&Mt.symbol.flags&96?Mt.symbol:void 0);return br.length===0?void 0:br}function vA(kr){return kr.use===2&&kr.providePrefixAndSuffixTextForRename}})(d7||(d7={}));var zte={};o(zte,{createDefinitionInfo:()=>m0e,findReferenceInPosition:()=>jue,getDefinitionAndBoundSpan:()=>Gos,getDefinitionAtPosition:()=>X5r,getReferenceAtPosition:()=>U5r,getTypeDefinitionAtPosition:()=>xos});function X5r(n,c,u,d,I){var h;let b=U5r(c,u,n),R=b&&[Wos(b.reference.fileName,b.fileName,b.unverified)]||v;if(b?.file)return R;let N=ub(c,u);if(N===c)return;let{parent:V}=N,P=n.getTypeChecker();if(N.kind===164||sr(N)&&Kxe(V)&&V.tagName===N)return Nos(P,N)||v;if(F_e(N)){let de=xGe(N.parent,N.text);return de?[aVt(P,de,"label",N.text,void 0)]:void 0}switch(N.kind){case 107:let de=Si(N.parent,Fe=>ef(Fe)?"quit":pd(Fe));return de?[qFe(P,de)]:void 0;case 90:if(!Mle(N.parent))break;case 84:let Be=Si(N.parent,Bd);if(Be)return[Vos(Be,c)];break}if(N.kind===135){let de=Si(N,Fe=>pd(Fe));return de&&lr(de.modifiers,Fe=>Fe.kind===134)?[qFe(P,de)]:void 0}if(N.kind===127){let de=Si(N,Fe=>pd(Fe));return de&&de.asteriskToken?[qFe(P,de)]:void 0}if(iT(N)&&ef(N.parent)){let de=N.parent.parent,{symbol:Be,failedAliasResolution:Fe}=fqe(de,P,I),Ne=Gt(de.members,ef),Me=Be?P.symbolToString(Be,de):"",De=N.getSourceFile();return Ot(Ne,lt=>{let{pos:Le}=QS(lt);return Le=Uu(De.text,Le),aVt(P,lt,"constructor","static {}",Me,!1,Fe,{start:Le,length:6})})}let{symbol:Q,failedAliasResolution:te}=fqe(N,P,I),re=N;if(d&&te){let de=X([N,...Q?.declarations||v],Fe=>Si(Fe,oce)),Be=de&&j8(de);Be&&({symbol:Q,failedAliasResolution:te}=fqe(Be,P,I),re=Be)}if(!Q&&KGe(re)){let de=(h=n.getResolvedModuleFromModuleSpecifier(re,c))==null?void 0:h.resolvedModule;if(de)return[{name:re.text,fileName:de.resolvedFileName,containerName:void 0,containerKind:void 0,kind:"script",textSpan:Ed(0,0),failedAliasResolution:te,isAmbient:Gh(de.resolvedFileName),unverified:re!==N}]}if(!Q)return vi(R,Fos(N,P));if(d&&he(Q.declarations,de=>de.getSourceFile().fileName===c.fileName))return;let ue=Oos(P,N);if(ue&&!(Um(N.parent)&&Qos(ue))){let de=qFe(P,ue,te);if(P.getRootSymbols(Q).some(Be=>Tos(Be,ue)))return[de];{let Be=Kue(P,Q,N,te,ue)||v;return N.kind===108?[de,...Be]:[...Be,de]}}if(N.parent.kind===304){let de=P.getShorthandAssignmentValueSymbol(Q.valueDeclaration),Be=de?.declarations?de.declarations.map(Fe=>m0e(Fe,P,de,N,!1,te)):v;return vi(Be,J5r(P,N))}if(RI(N)&&hl(V)&&Wg(V.parent)&&N===(V.propertyName||V.name)){let de=H_e(N),Be=P.getTypeAtLocation(V.parent);return de===void 0?v:Fr(Be.isUnion()?Be.types:[Be],Fe=>{let Ne=Fe.getProperty(de);return Ne&&Kue(P,Ne,N)})}let Ae=J5r(P,N);return vi(R,Ae.length?Ae:Kue(P,Q,N,te))}function Tos(n,c){var u;return n===c.symbol||n===c.symbol.parent||Im(c.parent)||!CG(c.parent)&&n===((u=$s(c.parent,v2))==null?void 0:u.symbol)}function J5r(n,c){let u=l0e(c);if(u){let d=u&&n.getContextualType(u.parent);if(d)return Fr(ZFe(u,n,d,!1),I=>Kue(n,I,c))}return v}function Nos(n,c){let u=Si(c,nC);if(!(u&&u.name))return;let d=Si(u,va);if(!d)return;let I=xv(d);if(!I)return;let h=zA(I.expression),b=rp(h)?h.symbol:n.getSymbolAtLocation(h);if(!b)return;let R=wc(j9(u.name)),N=CC(u)?n.getPropertyOfType(n.getTypeOfSymbol(b),R):n.getPropertyOfType(n.getDeclaredTypeOfSymbol(b),R);if(N)return Kue(n,N,c)}function U5r(n,c,u){var d,I;let h=jue(n.referencedFiles,c);if(h){let N=u.getSourceFileFromReference(n,h);return N&&{reference:h,fileName:N.fileName,file:N,unverified:!1}}let b=jue(n.typeReferenceDirectives,c);if(b){let N=(d=u.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(b,n))==null?void 0:d.resolvedTypeReferenceDirective,V=N&&u.getSourceFile(N.resolvedFileName);return V&&{reference:b,fileName:V.fileName,file:V,unverified:!1}}let R=jue(n.libReferenceDirectives,c);if(R){let N=u.getLibFileFromReference(R);return N&&{reference:R,fileName:N.fileName,file:N,unverified:!1}}if(n.imports.length||n.moduleAugmentations.length){let N=Lte(n,c),V;if(KGe(N)&&Ul(N.text)&&(V=u.getResolvedModuleFromModuleSpecifier(N,n))){let P=(I=V.resolvedModule)==null?void 0:I.resolvedFileName,Q=P||$_(oa(n.fileName),N.text);return{file:u.getSourceFile(Q),fileName:Q,reference:{pos:N.getStart(),end:N.getEnd(),fileName:N.text},unverified:!P}}}}var K5r=new Set(["Array","ArrayLike","ReadonlyArray","Promise","PromiseLike","Iterable","IterableIterator","AsyncIterable","Set","WeakSet","ReadonlySet","Map","WeakMap","ReadonlyMap","Partial","Required","Readonly","Pick","Omit"]);function Ros(n,c){let u=c.symbol.name;if(!K5r.has(u))return!1;let d=n.resolveName(u,void 0,788968,!1);return!!d&&d===c.target.symbol}function j5r(n,c){if(!c.aliasSymbol)return!1;let u=c.aliasSymbol.name;if(!K5r.has(u))return!1;let d=n.resolveName(u,void 0,788968,!1);return!!d&&d===c.aliasSymbol}function Dos(n,c,u,d){var I,h;if(ia(c)&4&&Ros(n,c))return C0e(n.getTypeArguments(c)[0],n,u,d);if(j5r(n,c)&&c.aliasTypeArguments)return C0e(c.aliasTypeArguments[0],n,u,d);if(ia(c)&32&&c.target&&j5r(n,c.target)){let b=(h=(I=c.aliasSymbol)==null?void 0:I.declarations)==null?void 0:h[0];if(b&&Pf(b)&&F(b.type)&&b.type.typeArguments)return C0e(n.getTypeAtLocation(b.type.typeArguments[0]),n,u,d)}return[]}function xos(n,c,u){let d=ub(c,u);if(d===c)return;if(Pb(d.parent)&&d.parent.name===d)return C0e(n.getTypeAtLocation(d.parent),n,d.parent,!1);let{symbol:I,failedAliasResolution:h}=fqe(d,n,!1);if(!I)return;let b=n.getTypeOfSymbolAtLocation(I,d),R=kos(I,b,n),N=R&&C0e(R,n,d,h),[V,P]=N&&N.length!==0?[R,N]:[b,C0e(b,n,d,h)];return P.length?[...Dos(n,V,d,h),...P]:!(I.flags&111551)&&I.flags&788968?Kue(n,ph(I,n),d,h):void 0}function C0e(n,c,u,d){return Fr(n.isUnion()&&!(n.flags&32)?n.types:[n],I=>I.symbol&&Kue(c,I.symbol,u,d))}function kos(n,c,u){if(c.symbol===n||n.valueDeclaration&&c.symbol&&js(n.valueDeclaration)&&n.valueDeclaration.initializer===c.symbol.valueDeclaration){let d=c.getCallSignatures();if(d.length===1)return u.getReturnTypeOfSignature(qs(d))}}function Gos(n,c,u){let d=X5r(n,c,u);if(!d||d.length===0)return;let I=jue(c.referencedFiles,u)||jue(c.typeReferenceDirectives,u)||jue(c.libReferenceDirectives,u);if(I)return{definitions:d,textSpan:NV(I)};let h=ub(c,u),b=Ed(h.getStart(),h.getWidth());return{definitions:d,textSpan:b}}function Fos(n,c){return tr(c.getIndexInfosAtLocation(n),u=>u.declaration&&qFe(c,u.declaration))}function fqe(n,c,u){let d=c.getSymbolAtLocation(n),I=!1;if(d?.declarations&&d.flags&2097152&&!u&&Zos(n,d.declarations[0])){let h=c.getAliasedSymbol(d);if(h.declarations)return{symbol:h};I=!0}return{symbol:d,failedAliasResolution:I}}function Zos(n,c){return n.kind!==80?!1:n.parent===c?!0:c.kind!==274}function Los(n){if(!X8(n))return!1;let c=Si(n,u=>Im(u)?!0:X8(u)?!1:"quit");return!!c&&mI(c)===5}function Kue(n,c,u,d,I){let h=Gt(c.declarations,te=>te!==I),b=V()||P();if(b)return b;let R=Gt(h,te=>!Los(te)),N=lr(R)?R:h;return Ot(N,te=>m0e(te,n,c,u,!1,d));function V(){if(c.flags&32&&!(c.flags&19)&&(Bue(u)||u.kind===137)){let te=be(h,va);return te&&Q(te.members,!0)}}function P(){return F7e(u)||Q7e(u)?Q(h,!1):void 0}function Q(te,re){if(!te)return;let ue=te.filter(re?Df:eu),Ae=ue.filter(de=>!!de.body);return ue.length?Ae.length!==0?Ae.map(de=>m0e(de,n,c,u)):[m0e(Ta(ue),n,c,u,!1,d)]:void 0}}function m0e(n,c,u,d,I,h){let b=c.symbolToString(u),R=MZ.getSymbolKind(c,u,d),N=u.parent?c.symbolToString(u.parent,d):"";return aVt(c,n,R,b,N,I,h)}function aVt(n,c,u,d,I,h,b,R){let N=c.getSourceFile();if(!R){let V=Sl(c)||c;R=By(V,N)}return{fileName:N.fileName,textSpan:R,kind:u,name:d,containerKind:void 0,containerName:I,...Yp.toContextSpan(R,N,Yp.getContextNode(c)),isLocal:!cVt(n,c),isAmbient:!!(c.flags&33554432),unverified:h,failedAliasResolution:b}}function Vos(n,c){let u=Yp.getContextNode(n),d=By(nVt(u)?u.start:u,c);return{fileName:c.fileName,textSpan:d,kind:"keyword",name:"switch",containerKind:void 0,containerName:"",...Yp.toContextSpan(d,c,u),isLocal:!0,isAmbient:!1,unverified:!1,failedAliasResolution:void 0}}function cVt(n,c){if(n.isDeclarationVisible(c))return!0;if(!c.parent)return!1;if($w(c.parent)&&c.parent.initializer===c)return cVt(n,c.parent);switch(c.kind){case 172:case 177:case 178:case 174:if(ib(c,2))return!1;case 176:case 303:case 304:case 210:case 231:case 219:case 218:return cVt(n,c.parent);default:return!1}}function qFe(n,c,u){return m0e(c,n,c.symbol,c,!1,u)}function jue(n,c){return be(n,u=>y2(u,c))}function Wos(n,c,u){return{fileName:c,textSpan:Pd(0,0),kind:"script",name:n,containerName:void 0,containerKind:void 0,unverified:u}}function Pos(n){let c=Si(n,d=>!Fte(d)),u=c?.parent;return u&&CG(u)&&P8(u)===c?u:void 0}function Oos(n,c){let u=Pos(c),d=u&&n.getResolvedSignature(u);return $s(d&&d.declaration,I=>eu(I)&&!H(I))}function Qos(n){switch(n.kind){case 176:case 185:case 179:case 180:return!0;default:return!1}}var Iqe={};o(Iqe,{provideInlayHints:()=>Xos});var Mos=n=>new RegExp(`^\\s?/\\*\\*?\\s?${n}\\s?\\*\\/\\s?$`);function Hos(n){return n.includeInlayParameterNameHints==="literals"||n.includeInlayParameterNameHints==="all"}function Yos(n){return n.includeInlayParameterNameHints==="literals"}function z5r(n){return n.interactiveInlayHints===!0}function Xos(n){let{file:c,program:u,span:d,cancellationToken:I,preferences:h}=n,b=c.text,R=u.getCompilerOptions(),N=P2(c,h),V=u.getTypeChecker(),P=[];return Q(c),P;function Q(St){if(!(!St||St.getFullWidth()===0)){switch(St.kind){case 267:case 263:case 264:case 262:case 231:case 218:case 174:case 219:I.throwIfCancellationRequested()}if(oI(d,St.pos,St.getFullWidth())&&!(Ma(St)&&!k_(St)))return h.includeInlayVariableTypeHints&&js(St)||h.includeInlayPropertyDeclarationTypeHints&&Hl(St)?Fe(St):h.includeInlayEnumMemberValueHints&&yV(St)?de(St):Hos(h)&&(lu(St)||qS(St))?Ne(St):(h.includeInlayFunctionParameterTypeHints&&pd(St)&&_le(St)&&st(St),h.includeInlayFunctionLikeReturnTypeHints&&te(St)&&Le(St)),hu(St,Q)}}function te(St){return Id(St)||PA(St)||hp(St)||lI(St)||Qb(St)}function re(St,He,ht,Et){let Kt=`${Et?"...":""}${St}`,Nt;z5r(h)?(Nt=[Tt(Kt,He),{text:":"}],Kt=""):Kt+=":",P.push({text:Kt,position:ht,kind:"Parameter",whitespaceAfter:!0,displayParts:Nt})}function ue(St,He){P.push({text:typeof St=="string"?`: ${St}`:"",displayParts:typeof St=="string"?void 0:[{text:": "},...St],position:He,kind:"Type",whitespaceBefore:!0})}function Ae(St,He){P.push({text:`= ${St}`,position:He,kind:"Enum",whitespaceBefore:!0})}function de(St){if(St.initializer)return;let He=V.getConstantValue(St);He!==void 0&&Ae(He.toString(),St.end)}function Be(St){return St.symbol&&St.symbol.flags&1536}function Fe(St){if(St.initializer===void 0&&!(Hl(St)&&!(V.getTypeAtLocation(St).flags&1))||fu(St.name)||js(St)&&!dt(St)||IC(St))return;let ht=V.getTypeAtLocation(St);if(Be(ht))return;let Et=it(ht);if(Et){let Kt=typeof Et=="string"?Et:Et.map(Lt=>Lt.text).join("");if(h.includeInlayVariableTypeHintsWhenTypeMatchesName===!1&&op(St.name.getText(),Kt))return;ue(Et,St.name.end)}}function Ne(St){let He=St.arguments;if(!He||!He.length)return;let ht=[],Et=V.getResolvedSignatureForSignatureHelp(St,ht);if(!Et||!ht.length)return;let Kt=0;for(let Nt of He){let Lt=zA(Nt);if(Yos(h)&&!lt(Lt)){Kt++;continue}let kt=0;if(fh(Lt)){let Dr=V.getTypeAtLocation(Lt.expression);if(V.isTupleType(Dr)){let{elementFlags:jt,fixedLength:mr}=Dr.target;if(mr===0)continue;let Pt=ke(jt,Hr=>!(Hr&1));(Pt<0?mr:Pt)>0&&(kt=Pt<0?mr:Pt)}}let Zt=V.getParameterIdentifierInfoAtPosition(Et,Kt);if(Kt=Kt+(kt||1),Zt){let{parameter:Dr,parameterName:jt,isRestParameter:mr}=Zt;if(!(h.includeInlayParameterNameHintsWhenArgumentMatchesName||!Me(Lt,jt))&&!mr)continue;let Vr=wc(jt);if(De(Lt,Vr))continue;re(Vr,Dr,Nt.getStart(),mr)}}}function Me(St,He){return sr(St)?St.text===He:fo(St)?St.name.text===He:!1}function De(St,He){if(!Ke(He,sA(R),Vee(c.scriptKind)))return!1;let ht=Zb(b,St.pos);if(!ht?.length)return!1;let Et=Mos(He);return lr(ht,Kt=>Et.test(b.substring(Kt.pos,Kt.end)))}function lt(St){switch(St.kind){case 224:{let He=St.operand;return wv(He)||sr(He)&&T6(He.escapedText)}case 112:case 97:case 106:case 15:case 228:return!0;case 80:{let He=St.escapedText;return It(He)||T6(He)}}return wv(St)}function Le(St){if(Id(St)&&!Qd(St,21,c)||nb(St)||!St.body)return;let ht=V.getSignatureFromDeclaration(St);if(!ht)return;let Et=V.getReturnTypeOfSignature(ht);if(Be(Et))return;let Kt=it(Et);Kt&&ue(Kt,je(St))}function je(St){let He=Qd(St,22,c);return He?He.end:St.parameters.end}function st(St){let He=V.getSignatureFromDeclaration(St);if(He)for(let ht=0;ht{let Kt=V.typeToTypeNode(St,void 0,71286784);w.assertIsDefined(Kt,"should always get typenode"),ht.writeNode(4,Kt,c,Et)})}function it(St){if(!z5r(h))return qe(St);let ht=V.typeToTypeNode(St,void 0,71286784);w.assertIsDefined(ht,"should always get typenode");let Et=[];return Kt(ht),Et;function Kt(Zt){var Dr,jt;if(!Zt)return;let mr=vr(Zt.kind);if(mr){Et.push({text:mr});return}if(wv(Zt)){Et.push({text:kt(Zt)});return}switch(Zt.kind){case 80:w.assertNode(Zt,sr);let Pt=oo(Zt),Vr=Zt.symbol&&Zt.symbol.declarations&&Zt.symbol.declarations.length&&Sl(Zt.symbol.declarations[0]);Vr?Et.push(Tt(Pt,Vr)):Et.push({text:Pt});break;case 166:w.assertNode(Zt,c0),Kt(Zt.left),Et.push({text:"."}),Kt(Zt.right);break;case 182:w.assertNode(Zt,S),Zt.assertsModifier&&Et.push({text:"asserts "}),Kt(Zt.parameterName),Zt.type&&(Et.push({text:" is "}),Kt(Zt.type));break;case 183:w.assertNode(Zt,F),Kt(Zt.typeName),Zt.typeArguments&&(Et.push({text:"<"}),Lt(Zt.typeArguments,", "),Et.push({text:">"}));break;case 168:w.assertNode(Zt,$p),Zt.modifiers&&Lt(Zt.modifiers," "),Kt(Zt.name),Zt.constraint&&(Et.push({text:" extends "}),Kt(Zt.constraint)),Zt.default&&(Et.push({text:" = "}),Kt(Zt.default));break;case 169:w.assertNode(Zt,Uc),Zt.modifiers&&Lt(Zt.modifiers," "),Zt.dotDotDotToken&&Et.push({text:"..."}),Kt(Zt.name),Zt.questionToken&&Et.push({text:"?"}),Zt.type&&(Et.push({text:": "}),Kt(Zt.type));break;case 185:w.assertNode(Zt,Y),Et.push({text:"new "}),Nt(Zt),Et.push({text:" => "}),Kt(Zt.type);break;case 186:w.assertNode(Zt,oe),Et.push({text:"typeof "}),Kt(Zt.exprName),Zt.typeArguments&&(Et.push({text:"<"}),Lt(Zt.typeArguments,", "),Et.push({text:">"}));break;case 187:w.assertNode(Zt,Se),Et.push({text:"{"}),Zt.members.length&&(Et.push({text:" "}),Lt(Zt.members,"; "),Et.push({text:" "})),Et.push({text:"}"});break;case 188:w.assertNode(Zt,Ye),Kt(Zt.elementType),Et.push({text:"[]"});break;case 189:w.assertNode(Zt,Ct),Et.push({text:"["}),Lt(Zt.elements,", "),Et.push({text:"]"});break;case 202:w.assertNode(Zt,At),Zt.dotDotDotToken&&Et.push({text:"..."}),Kt(Zt.name),Zt.questionToken&&Et.push({text:"?"}),Et.push({text:": "}),Kt(Zt.type);break;case 190:w.assertNode(Zt,Ut),Kt(Zt.type),Et.push({text:"?"});break;case 191:w.assertNode(Zt,cn),Et.push({text:"..."}),Kt(Zt.type);break;case 192:w.assertNode(Zt,Is),Lt(Zt.types," | ");break;case 193:w.assertNode(Zt,ji),Lt(Zt.types," & ");break;case 194:w.assertNode(Zt,Ei),Kt(Zt.checkType),Et.push({text:" extends "}),Kt(Zt.extendsType),Et.push({text:" ? "}),Kt(Zt.trueType),Et.push({text:" : "}),Kt(Zt.falseType);break;case 195:w.assertNode(Zt,yo),Et.push({text:"infer "}),Kt(Zt.typeParameter);break;case 196:w.assertNode(Zt,to),Et.push({text:"("}),Kt(Zt.type),Et.push({text:")"});break;case 198:w.assertNode(Zt,as),Et.push({text:`${vr(Zt.operator)} `}),Kt(Zt.type);break;case 199:w.assertNode(Zt,hs),Kt(Zt.objectType),Et.push({text:"["}),Kt(Zt.indexType),Et.push({text:"]"});break;case 200:w.assertNode(Zt,wl),Et.push({text:"{ "}),Zt.readonlyToken&&(Zt.readonlyToken.kind===40?Et.push({text:"+"}):Zt.readonlyToken.kind===41&&Et.push({text:"-"}),Et.push({text:"readonly "})),Et.push({text:"["}),Kt(Zt.typeParameter),Zt.nameType&&(Et.push({text:" as "}),Kt(Zt.nameType)),Et.push({text:"]"}),Zt.questionToken&&(Zt.questionToken.kind===40?Et.push({text:"+"}):Zt.questionToken.kind===41&&Et.push({text:"-"}),Et.push({text:"?"})),Et.push({text:": "}),Zt.type&&Kt(Zt.type),Et.push({text:"; }"});break;case 201:w.assertNode(Zt,sd),Kt(Zt.literal);break;case 184:w.assertNode(Zt,H),Nt(Zt),Et.push({text:" => "}),Kt(Zt.type);break;case 205:w.assertNode(Zt,Nu),Zt.isTypeOf&&Et.push({text:"typeof "}),Et.push({text:"import("}),Kt(Zt.argument),Zt.assertions&&(Et.push({text:", { assert: "}),Lt(Zt.assertions.assertClause.elements,", "),Et.push({text:" }"})),Et.push({text:")"}),Zt.qualifier&&(Et.push({text:"."}),Kt(Zt.qualifier)),Zt.typeArguments&&(Et.push({text:"<"}),Lt(Zt.typeArguments,", "),Et.push({text:">"}));break;case 171:w.assertNode(Zt,i_),(Dr=Zt.modifiers)!=null&&Dr.length&&(Lt(Zt.modifiers," "),Et.push({text:" "})),Kt(Zt.name),Zt.questionToken&&Et.push({text:"?"}),Zt.type&&(Et.push({text:": "}),Kt(Zt.type));break;case 181:w.assertNode(Zt,_),Et.push({text:"["}),Lt(Zt.parameters,", "),Et.push({text:"]"}),Zt.type&&(Et.push({text:": "}),Kt(Zt.type));break;case 173:w.assertNode(Zt,zS),(jt=Zt.modifiers)!=null&&jt.length&&(Lt(Zt.modifiers," "),Et.push({text:" "})),Kt(Zt.name),Zt.questionToken&&Et.push({text:"?"}),Nt(Zt),Zt.type&&(Et.push({text:": "}),Kt(Zt.type));break;case 179:w.assertNode(Zt,mV),Nt(Zt),Zt.type&&(Et.push({text:": "}),Kt(Zt.type));break;case 207:w.assertNode(Zt,Wu),Et.push({text:"["}),Lt(Zt.elements,", "),Et.push({text:"]"});break;case 206:w.assertNode(Zt,Wg),Et.push({text:"{"}),Zt.elements.length&&(Et.push({text:" "}),Lt(Zt.elements,", "),Et.push({text:" "})),Et.push({text:"}"});break;case 208:w.assertNode(Zt,hl),Kt(Zt.name);break;case 224:w.assertNode(Zt,GB),Et.push({text:vr(Zt.operator)}),Kt(Zt.operand);break;case 203:w.assertNode(Zt,tp),Kt(Zt.head),Zt.templateSpans.forEach(Kt);break;case 16:w.assertNode(Zt,lM),Et.push({text:kt(Zt)});break;case 204:w.assertNode(Zt,rg),Kt(Zt.type),Kt(Zt.literal);break;case 17:w.assertNode(Zt,$3),Et.push({text:kt(Zt)});break;case 18:w.assertNode(Zt,Wle),Et.push({text:kt(Zt)});break;case 197:w.assertNode(Zt,aa),Et.push({text:"this"});break;default:w.failBadSyntaxKind(Zt)}}function Nt(Zt){Zt.typeParameters&&(Et.push({text:"<"}),Lt(Zt.typeParameters,", "),Et.push({text:">"})),Et.push({text:"("}),Lt(Zt.parameters,", "),Et.push({text:")"})}function Lt(Zt,Dr){Zt.forEach((jt,mr)=>{mr>0&&Et.push({text:Dr}),Kt(jt)})}function kt(Zt){switch(Zt.kind){case 11:return N===0?`'${rT(Zt.text,39)}'`:`"${rT(Zt.text,34)}"`;case 16:case 17:case 18:{let Dr=Zt.rawText??Tme(rT(Zt.text,96));switch(Zt.kind){case 16:return"`"+Dr+"${";case 17:return"}"+Dr+"${";case 18:return"}"+Dr+"`"}}}return Zt.text}}function It(St){return St==="undefined"}function dt(St){if((TZ(St)||js(St)&&Hp(St))&&St.initializer){let He=zA(St.initializer);return!(lt(He)||qS(He)||ru(He)||kE(He))}return!0}function Tt(St,He){let ht=He.getSourceFile();return{text:St,span:By(He,ht),file:ht.fileName}}}var yP={};o(yP,{getDocCommentTemplateAtPosition:()=>nas,getJSDocParameterNameCompletionDetails:()=>ras,getJSDocParameterNameCompletions:()=>tas,getJSDocTagCompletionDetails:()=>iMr,getJSDocTagCompletions:()=>eas,getJSDocTagNameCompletionDetails:()=>$os,getJSDocTagNameCompletions:()=>qos,getJsDocCommentsFromDeclarations:()=>Jos,getJsDocTagsFromDeclarations:()=>jos});var q5r=["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"],$5r,eMr;function Jos(n,c){let u=[];return pje(n,d=>{for(let I of Kos(d)){let h=cT(I)&&I.tags&&be(I.tags,R=>R.kind===327&&(R.tagName.escapedText==="inheritDoc"||R.tagName.escapedText==="inheritdoc"));if(I.comment===void 0&&!h||cT(I)&&d.kind!==346&&d.kind!==338&&I.tags&&I.tags.some(R=>R.kind===346||R.kind===338)&&!I.tags.some(R=>R.kind===341||R.kind===342))continue;let b=I.comment?qte(I.comment,c):[];h&&h.comment&&(b=b.concat(qte(h.comment,c))),Ue(u,b,Uos)||u.push(b)}}),or(pe(u,[Ote()]))}function Uos(n,c){return Je(n,c,(u,d)=>u.kind===d.kind&&u.text===d.text)}function Kos(n){switch(n.kind){case 341:case 348:return[n];case 338:case 346:return[n,n.parent];case 323:if(dte(n.parent))return[n.parent.parent];default:return pme(n)}}function jos(n,c){let u=[];return pje(n,d=>{let I=Tx(d);if(!(I.some(h=>h.kind===346||h.kind===338)&&!I.some(h=>h.kind===341||h.kind===342)))for(let h of I)u.push({name:h.tagName.text,text:nMr(h,c)}),u.push(...tMr(rMr(h),c))}),u}function tMr(n,c){return Fr(n,u=>vi([{name:u.tagName.text,text:nMr(u,c)}],tMr(rMr(u),c)))}function rMr(n){return IZ(n)&&n.isNameFirst&&n.typeExpression&&f4(n.typeExpression.type)?n.typeExpression.type.jsDocPropertyTags:void 0}function qte(n,c){return typeof n=="string"?[O2(n)]:Fr(n,u=>u.kind===321?[O2(u.text)]:XGt(u,c))}function nMr(n,c){let{comment:u,kind:d}=n,I=zos(d);switch(d){case 349:let R=n.typeExpression;return R?h(R):u===void 0?void 0:qte(u,c);case 329:return h(n.class);case 328:return h(n.class);case 345:let N=n,V=[];if(N.constraint&&V.push(O2(N.constraint.getText())),O(N.typeParameters)){O(V)&&V.push(xI());let Q=N.typeParameters[N.typeParameters.length-1];X(N.typeParameters,te=>{V.push(I(te.getText())),Q!==te&&V.push(d0(28),xI())})}return u&&V.push(xI(),...qte(u,c)),V;case 344:case 350:return h(n.typeExpression);case 346:case 338:case 348:case 341:case 347:let{name:P}=n;return P?h(P):u===void 0?void 0:qte(u,c);default:return u===void 0?void 0:qte(u,c)}function h(R){return b(R.getText())}function b(R){return u?R.match(/^https?$/)?[O2(R),...qte(u,c)]:[I(R),xI(),...qte(u,c)]:[O2(R)]}}function zos(n){switch(n){case 341:return OGt;case 348:return QGt;case 345:return HGt;case 346:case 338:return MGt;default:return O2}}function qos(){return $5r||($5r=Ot(q5r,n=>({name:n,kind:"keyword",kindModifiers:"",sortText:A7.SortText.LocationPriority})))}var $os=iMr;function eas(){return eMr||(eMr=Ot(q5r,n=>({name:`@${n}`,kind:"keyword",kindModifiers:"",sortText:A7.SortText.LocationPriority})))}function iMr(n){return{name:n,kind:"",kindModifiers:"",displayParts:[O2(n)],documentation:v,tags:void 0,codeActions:void 0}}function tas(n){if(!sr(n.name))return v;let c=n.name.text,u=n.parent,d=u.parent;return eu(d)?tr(d.parameters,I=>{if(!sr(I.name))return;let h=I.name.text;if(!(u.tags.some(b=>b!==n&&LB(b)&&sr(b.name)&&b.name.escapedText===h)||c!==void 0&&!uc(h,c)))return{name:h,kind:"parameter",kindModifiers:"",sortText:A7.SortText.LocationPriority}}):[]}function ras(n){return{name:n,kind:"parameter",kindModifiers:"",displayParts:[O2(n)],documentation:v,tags:void 0,codeActions:void 0}}function nas(n,c,u,d){let I=Hc(c,u),h=Si(I,cT);if(h&&(h.comment!==void 0||O(h.tags)))return;let b=I.getStart(c);if(!h&&b0;if(Ae&&!Fe){let Ne=de+n+re+" * ",Me=b===u?n+re:"";return{newText:Ne+n+Ae+re+Be+Me,caretOffset:Ne.length}}return{newText:de+Be,caretOffset:3}}function ias(n,c){let{text:u}=n,d=Wv(c,n),I=d;for(;I<=c&&e0(u.charCodeAt(I));I++);return u.slice(d,I)}function sas(n,c,u,d){return n.map(({name:I,dotDotDotToken:h},b)=>{let R=I.kind===80?I.text:"param"+b;return`${u} * @param ${c?h?"{...any} ":"{any} ":""}${R}${d}`}).join("")}function oas(n,c){return`${n} * @returns${c}`}function aas(n,c){return x$(n,u=>lVt(u,c))}function lVt(n,c){switch(n.kind){case 262:case 218:case 174:case 176:case 173:case 219:let u=n;return{commentOwner:n,parameters:u.parameters,hasReturn:$Fe(u,c)};case 303:return lVt(n.initializer,c);case 263:case 264:case 266:case 306:case 265:return{commentOwner:n};case 171:{let I=n;return I.type&&H(I.type)?{commentOwner:n,parameters:I.type.parameters,hasReturn:$Fe(I.type,c)}:{commentOwner:n}}case 243:{let h=n.declarationList.declarations,b=h.length===1&&h[0].initializer?cas(h[0].initializer):void 0;return b?{commentOwner:n,parameters:b.parameters,hasReturn:$Fe(b,c)}:{commentOwner:n}}case 307:return"quit";case 267:return n.parent.kind===267?void 0:{commentOwner:n};case 244:return lVt(n.expression,c);case 226:{let I=n;return mI(I)===0?"quit":eu(I.right)?{commentOwner:n,parameters:I.right.parameters,hasReturn:$Fe(I.right,c)}:{commentOwner:n}}case 172:let d=n.initializer;if(d&&(PA(d)||Id(d)))return{commentOwner:n,parameters:d.parameters,hasReturn:$Fe(d,c)}}}function $Fe(n,c){return!!c?.generateReturnInDocTemplate&&(H(n)||Id(n)&&tn(n.body)||pd(n)&&n.body&&hc(n.body)&&!!kx(n.body,u=>u))}function cas(n){for(;n.kind===217;)n=n.expression;switch(n.kind){case 218:case 219:return n;case 231:return be(n.members,Df)}}var Cqe={};o(Cqe,{mapCode:()=>las});function las(n,c,u,d,I,h){return Ao.ChangeTracker.with({host:d,formatContext:I,preferences:h},b=>{let R=c.map(V=>uas(n,V)),N=u&&or(u);for(let V of R)gas(n,b,V,N)})}function uas(n,c){let u=[{parse:()=>M6("__mapcode_content_nodes.ts",c,n.languageVersion,!0,n.scriptKind),body:h=>h.statements},{parse:()=>M6("__mapcode_class_content_nodes.ts",`class __class { ${c} -}`,n.languageVersion,!0,n.scriptKind),body:h=>h.statements[0].members}],d=[];for(let{parse:h,body:b}of u){let R=h(),N=b(R);if(N.length&&R.parseDiagnostics.length===0)return N;N.length&&d.push({sourceFile:R,body:N})}let{body:I}=d.sort((h,b)=>h.sourceFile.parseDiagnostics.length-b.sourceFile.parseDiagnostics.length)[0];return I}function ias(n,c,u,d){rC(u[0])||Bx(u[0])?sas(n,c,u,d):oas(n,c,u,d)}function sas(n,c,u,d){let I;if(!d||!d.length?I=be(n.statements,pg(Sa,HI)):I=X(d,b=>Si(Qc(n,b.start),pg(Sa,HI))),!I)return;let h=I.members.find(b=>u.some(R=>qFe(R,b)));if(h){let b=Te(I.members,R=>u.some(N=>qFe(N,R)));X(u,Iqe),c.replaceNodeRangeWithNodes(n,h,b,u);return}X(u,Iqe),c.insertNodesAfter(n,I.members[I.members.length-1],u)}function oas(n,c,u,d){if(!d?.length){c.insertNodesAtEndOfFile(n,u,!1);return}for(let h of d){let b=Si(Qc(n,h.start),R=>pg(mc,Gc)(R)&&lr(R.statements,N=>u.some(V=>qFe(V,N))));if(b){let R=b.statements.find(N=>u.some(V=>qFe(V,N)));if(R){let N=Te(b.statements,V=>u.some(P=>qFe(P,V)));X(u,Iqe),c.replaceNodeRangeWithNodes(n,R,N,u);return}}}let I=n.statements;for(let h of d){let b=Si(Qc(n,h.start),mc);if(b){I=b.statements;break}}X(u,Iqe),c.insertNodesAfter(n,I[I.length-1],u)}function qFe(n,c){var u,d,I,h,b,R;return n.kind!==c.kind?!1:n.kind===176?n.kind===c.kind:Sf(n)&&Sf(c)?n.name.getText()===c.name.getText():H0(n)&&H0(c)||GZ(n)&&GZ(c)?n.expression.getText()===c.expression.getText():kB(n)&&kB(c)?((u=n.initializer)==null?void 0:u.getText())===((d=c.initializer)==null?void 0:d.getText())&&((I=n.incrementor)==null?void 0:I.getText())===((h=c.incrementor)==null?void 0:h.getText())&&((b=n.condition)==null?void 0:b.getText())===((R=c.condition)==null?void 0:R.getText()):yZ(n)&&yZ(c)?n.expression.getText()===c.expression.getText()&&n.initializer.getText()===c.initializer.getText():nC(n)&&nC(c)?n.label.getText()===c.label.getText():n.getText()===c.getText()}function Iqe(n){$Qr(n),n.parent=void 0}function $Qr(n){n.pos=-1,n.end=-1,n.forEachChild($Qr)}var hP={};o(hP,{compareImportsOrRequireStatements:()=>dVt,compareModuleSpecifiers:()=>vas,getDetectionLists:()=>Cqe,getImportDeclarationInsertionIndex:()=>yas,getImportSpecifierInsertionIndex:()=>bas,getNamedImportSpecifierComparerWithDetection:()=>_as,getOrganizeImportsStringComparerWithDetection:()=>has,organizeImports:()=>aas,testCoalesceExports:()=>Bas,testCoalesceImports:()=>Eas});function aas(n,c,u,d,I,h){let b=po.ChangeTracker.fromContext({host:u,formatContext:c,preferences:I}),R=h==="SortAndCombine"||h==="All",N=R,V=h==="RemoveUnused"||h==="All",P=n.statements.filter(mI),M=aVt(n,P),{comparersToTest:te,typeOrdersToTest:re}=Cqe(I),ue=te[0],Ae={moduleSpecifierComparer:typeof I.organizeImportsIgnoreCase=="boolean"?ue:void 0,namedImportComparer:typeof I.organizeImportsIgnoreCase=="boolean"?ue:void 0,typeOrder:I.organizeImportsTypeOrder};if(typeof I.organizeImportsIgnoreCase!="boolean"&&({comparer:Ae.moduleSpecifierComparer}=rYr(M,te)),!Ae.typeOrder||typeof I.organizeImportsIgnoreCase!="boolean"){let Ne=gVt(P,te,re);if(Ne){let{namedImportComparer:Qe,typeOrder:De}=Ne;Ae.namedImportComparer=Ae.namedImportComparer??Qe,Ae.typeOrder=Ae.typeOrder??De}}M.forEach(Ne=>Be(Ne,Ae)),h!=="RemoveUnused"&&las(n).forEach(Ne=>Fe(Ne,Ae.namedImportComparer));for(let Ne of n.statements.filter(Yf)){if(!Ne.body)continue;if(aVt(n,Ne.body.statements.filter(mI)).forEach(De=>Be(De,Ae)),h!=="RemoveUnused"){let De=Ne.body.statements.filter(mC);Fe(De,Ae.namedImportComparer)}}return b.getChanges();function de(Ne,Qe){if(O(Ne)===0)return;co(Ne[0],1024);let De=N?Hl(Ne,je=>$Fe(je.moduleSpecifier)):[Ne],lt=R?Cl(De,(je,st)=>lVt(je[0].moduleSpecifier,st[0].moduleSpecifier,Ae.moduleSpecifierComparer??ue)):De,Le=Fr(lt,je=>$Fe(je[0].moduleSpecifier)||je[0].moduleSpecifier===void 0?Qe(je):je);if(Le.length===0)b.deleteNodes(n,Ne,{leadingTriviaOption:po.LeadingTriviaOption.Exclude,trailingTriviaOption:po.TrailingTriviaOption.Include},!0);else{let je={leadingTriviaOption:po.LeadingTriviaOption.Exclude,trailingTriviaOption:po.TrailingTriviaOption.Include,suffix:WZ(u,c.options)};b.replaceNodeWithNodes(n,Ne[0],Le,je);let st=b.nodeHasTrailingComment(n,Ne[0],je);b.deleteNodes(n,Ne.slice(1),{trailingTriviaOption:po.TrailingTriviaOption.Include},st)}}function Be(Ne,Qe){let De=Qe.moduleSpecifierComparer??ue,lt=Qe.namedImportComparer??ue,Le=Qe.typeOrder??"last",je=m0e({organizeImportsTypeOrder:Le},lt);de(Ne,nt=>(V&&(nt=uas(nt,n,d)),N&&(nt=eYr(nt,De,je,n)),R&&(nt=Cl(nt,(qe,it)=>dVt(qe,it,De))),nt))}function Fe(Ne,Qe){let De=m0e(I,Qe);de(Ne,lt=>tYr(lt,De))}}function Cqe(n){return{comparersToTest:typeof n.organizeImportsIgnoreCase=="boolean"?[AVt(n,n.organizeImportsIgnoreCase)]:[AVt(n,!0),AVt(n,!1)],typeOrdersToTest:n.organizeImportsTypeOrder?[n.organizeImportsTypeOrder]:["last","inline","first"]}}function aVt(n,c){let u=Ft(n.languageVersion,!1,n.languageVariant),d=[],I=0;for(let h of c)d[I]&&cas(n,h,u)&&I++,d[I]||(d[I]=[]),d[I].push(h);return d}function cas(n,c,u){let d=c.getFullStart(),I=c.getStart();u.setText(n.text,d,I-d);let h=0;for(;u.getTokenStart()=2))return!0;return!1}function las(n){let c=[],u=n.statements,d=O(u),I=0,h=0;for(;IaVt(n,b))}function uas(n,c,u){let d=u.getTypeChecker(),I=u.getCompilerOptions(),h=d.getJsxNamespace(c),b=d.getJsxFragmentFactory(c),R=!!(c.transformFlags&2),N=[];for(let P of n){let{importClause:M,moduleSpecifier:te}=P;if(!M){N.push(P);continue}let{name:re,namedBindings:ue}=M;if(re&&!V(re)&&(re=void 0),ue)if(Px(ue))V(ue.name)||(ue=void 0);else{let Ae=ue.elements.filter(de=>V(de.name));Ae.length{if(b.attributes){let R=b.attributes.token+" ";for(let N of Cg(b.attributes.elements,(V,P)=>Do(V.name.text,P.name.text)))R+=N.name.text+":",R+=XA(N.value)?`"${N.value.text}"`:N.value.getText()+" ";return R}return""}),h=[];for(let b in I){let R=I[b],{importWithoutClause:N,typeOnlyImports:V,regularImports:P}=gas(R);N&&h.push(N);for(let M of[P,V]){let te=M===V,{defaultImports:re,namespaceImports:ue,namedImports:Ae}=M;if(!te&&re.length===1&&ue.length===1&&Ae.length===0){let je=re[0];h.push(C0e(je,je.importClause.name,ue[0].importClause.namedBindings));continue}let de=Cl(ue,(je,st)=>c(je.importClause.namedBindings.name.text,st.importClause.namedBindings.name.text));for(let je of de)h.push(C0e(je,void 0,je.importClause.namedBindings));let Be=$i(re),Fe=$i(Ae),Ne=Be??Fe;if(!Ne)continue;let Qe,De=[];if(re.length===1)Qe=re[0].importClause.name;else for(let je of re)De.push(_e.createImportSpecifier(!1,_e.createIdentifier("default"),je.importClause.name));De.push(...pas(Ae));let lt=_e.createNodeArray(Cl(De,u),Fe?.importClause.namedBindings.elements.hasTrailingComma),Le=lt.length===0?Qe?void 0:_e.createNamedImports(v):Fe?_e.updateNamedImports(Fe.importClause.namedBindings,lt):_e.createNamedImports(lt);d&&Le&&Fe?.importClause.namedBindings&&!NZ(Fe.importClause.namedBindings,d)&&co(Le,2),te&&Qe&&Le?(h.push(C0e(Ne,Qe,void 0)),h.push(C0e(Fe??Ne,void 0,Le))):h.push(C0e(Ne,Qe,Le))}}return h}function tYr(n,c){if(n.length===0)return n;let{exportWithoutClause:u,namedExports:d,typeOnlyExports:I}=b(n),h=[];u&&h.push(u);for(let R of[d,I]){if(R.length===0)continue;let N=[];N.push(...Fr(R,M=>M.exportClause&&GB(M.exportClause)?M.exportClause.elements:v));let V=Cl(N,c),P=R[0];h.push(_e.updateExportDeclaration(P,P.modifiers,P.isTypeOnly,P.exportClause&&(GB(P.exportClause)?_e.updateNamedExports(P.exportClause,V):_e.updateNamespaceExport(P.exportClause,P.exportClause.name)),P.moduleSpecifier,P.attributes))}return h;function b(R){let N,V=[],P=[];for(let M of R)M.exportClause===void 0?N=N||M:M.isTypeOnly?P.push(M):V.push(M);return{exportWithoutClause:N,namedExports:V,typeOnlyExports:P}}}function C0e(n,c,u){return _e.updateImportDeclaration(n,n.modifiers,_e.updateImportClause(n.importClause,n.importClause.isTypeOnly,c,u),n.moduleSpecifier,n.attributes)}function cVt(n,c,u,d){switch(d?.organizeImportsTypeOrder){case"first":return RA(c.isTypeOnly,n.isTypeOnly)||u(n.name.text,c.name.text);case"inline":return u(n.name.text,c.name.text);default:return RA(n.isTypeOnly,c.isTypeOnly)||u(n.name.text,c.name.text)}}function lVt(n,c,u){let d=n===void 0?void 0:$Fe(n),I=c===void 0?void 0:$Fe(c);return RA(d===void 0,I===void 0)||RA(Jl(d),Jl(I))||u(d,I)}function Aas(n){return n.map(c=>$Fe(uVt(c))||"")}function uVt(n){var c;switch(n.kind){case 271:return(c=eo(n.moduleReference,DG))==null?void 0:c.expression;case 272:return n.moduleSpecifier;case 243:return n.declarationList.declarations[0].initializer.arguments[0]}}function das(n,c){let u=bu(c)&&c.text;return Xa(u)&&lr(n.moduleAugmentations,d=>bu(d)&&d.text===u)}function pas(n){return Fr(n,c=>Ot(fas(c),u=>u.name&&u.propertyName&&u.name.escapedText===u.propertyName.escapedText?_e.updateImportSpecifier(u,u.isTypeOnly,void 0,u.name):u))}function fas(n){var c;return(c=n.importClause)!=null&&c.namedBindings&&wN(n.importClause.namedBindings)?n.importClause.namedBindings.elements:void 0}function rYr(n,c){let u=[];return n.forEach(d=>{u.push(Aas(d))}),iYr(u,c)}function gVt(n,c,u){let d=!1,I=n.filter(N=>{var V,P;let M=(P=eo((V=N.importClause)==null?void 0:V.namedBindings,wN))==null?void 0:P.elements;return M?.length?(!d&&M.some(te=>te.isTypeOnly)&&M.some(te=>!te.isTypeOnly)&&(d=!0),!0):!1});if(I.length===0)return;let h=I.map(N=>{var V,P;return(P=eo((V=N.importClause)==null?void 0:V.namedBindings,wN))==null?void 0:P.elements}).filter(N=>N!==void 0);if(!d||u.length===0){let N=iYr(h.map(V=>V.map(P=>P.name.text)),c);return{namedImportComparer:N.comparer,typeOrder:u.length===1?u[0]:void 0,isSorted:N.isSorted}}let b={first:1/0,last:1/0,inline:1/0},R={first:c[0],last:c[0],inline:c[0]};for(let N of c){let V={first:0,last:0,inline:0};for(let P of h)for(let M of u)V[M]=(V[M]??0)+nYr(P,(te,re)=>cVt(te,re,N,{organizeImportsTypeOrder:M}));for(let P of u){let M=P;V[M]0&&u++;return u}function iYr(n,c){let u,d=1/0;for(let I of c){let h=0;for(let b of n){if(b.length<=1)continue;let R=nYr(b,I);h+=R}hcVt(d,I,u,n)}function _as(n,c,u){let{comparersToTest:d,typeOrdersToTest:I}=Cqe(c),h=gVt([n],d,I),b=m0e(c,d[0]),R;if(typeof c.organizeImportsIgnoreCase!="boolean"||!c.organizeImportsTypeOrder){if(h){let{namedImportComparer:N,typeOrder:V,isSorted:P}=h;R=P,b=m0e({organizeImportsTypeOrder:V},N)}else if(u){let N=gVt(u.statements.filter(mI),d,I);if(N){let{namedImportComparer:V,typeOrder:P,isSorted:M}=N;R=M,b=m0e({organizeImportsTypeOrder:P},V)}}}return{specifierComparer:b,isSorted:R}}function yas(n,c,u){let d=Lg(n,c,Bl,(I,h)=>dVt(I,h,u));return d<0?~d:d}function bas(n,c,u){let d=Lg(n,c,Bl,u);return d<0?~d:d}function dVt(n,c,u){return lVt(uVt(n),uVt(c),u)||Ias(n,c)}function Eas(n,c,u,d){let I=eZe(c),h=m0e({organizeImportsTypeOrder:d?.organizeImportsTypeOrder},I);return eYr(n,I,h,u)}function Bas(n,c,u){return tYr(n,(I,h)=>cVt(I,h,eZe(c),{organizeImportsTypeOrder:u?.organizeImportsTypeOrder??"last"}))}function vas(n,c,u){let d=eZe(!!u);return lVt(n,c,d)}var mqe={};o(mqe,{collectElements:()=>Sas});function Sas(n,c){let u=[];return was(n,c,u),Tas(n,u),u.sort((d,I)=>d.textSpan.start-I.textSpan.start)}function was(n,c,u){let d=40,I=0,h=[...n.statements,n.endOfFileToken],b=h.length;for(;I1&&d.push(tZe(h,b,"comment"))}}function aYr(n,c,u,d){sY(n)||pVt(n.pos,c,u,d)}function tZe(n,c,u){return c7(Wd(n,c),u)}function Ras(n,c){switch(n.kind){case 241:if($l(n.parent))return Das(n.parent,n,c);switch(n.parent.kind){case 246:case 249:case 250:case 248:case 245:case 247:case 254:case 299:return P(n.parent);case 258:let re=n.parent;if(re.tryBlock===n)return P(n.parent);if(re.finallyBlock===n){let ue=Od(re,98,c);if(ue)return P(ue)}default:return c7(Ey(n,c),"code")}case 268:return P(n.parent);case 263:case 231:case 264:case 266:case 269:case 187:case 206:return P(n);case 189:return P(n,!1,!Ct(n.parent),23);case 296:case 297:return M(n.statements);case 210:return V(n);case 209:return V(n,23);case 284:return h(n);case 288:return b(n);case 285:case 286:return R(n.attributes);case 228:case 15:return N(n);case 207:return P(n,!1,!ml(n.parent),23);case 219:return I(n);case 213:return d(n);case 217:return te(n);case 275:case 279:case 300:return u(n)}function u(re){if(!re.elements.length)return;let ue=Od(re,19,c),Ae=Od(re,20,c);if(!(!ue||!Ae||Z1(ue.pos,Ae.pos,c)))return hqe(ue,Ae,re,c,!1,!1)}function d(re){if(!re.arguments.length)return;let ue=Od(re,21,c),Ae=Od(re,22,c);if(!(!ue||!Ae||Z1(ue.pos,Ae.pos,c)))return hqe(ue,Ae,re,c,!1,!0)}function I(re){if(mc(re.body)||FC(re.body)||Z1(re.body.getFullStart(),re.body.getEnd(),c))return;let ue=Wd(re.body.getFullStart(),re.body.getEnd());return c7(ue,"code",Ey(re))}function h(re){let ue=Wd(re.openingElement.getStart(c),re.closingElement.getEnd()),Ae=re.openingElement.tagName.getText(c),de="<"+Ae+">...";return c7(ue,"code",ue,!1,de)}function b(re){let ue=Wd(re.openingFragment.getStart(c),re.closingFragment.getEnd());return c7(ue,"code",ue,!1,"<>...")}function R(re){if(re.properties.length!==0)return tZe(re.getStart(c),re.getEnd(),"code")}function N(re){if(!(re.kind===15&&re.text.length===0))return tZe(re.getStart(c),re.getEnd(),"code")}function V(re,ue=19){return P(re,!1,!If(re.parent)&&!cu(re.parent),ue)}function P(re,ue=!1,Ae=!0,de=19,Be=de===19?20:24){let Fe=Od(n,de,c),Ne=Od(n,Be,c);return Fe&&Ne&&hqe(Fe,Ne,re,c,ue,Ae)}function M(re){return re.length?c7(TV(re),"code"):void 0}function te(re){if(Z1(re.getStart(),re.getEnd(),c))return;let ue=Wd(re.getStart(),re.getEnd());return c7(ue,"code",Ey(re))}}function Das(n,c,u){let d=xas(n,c,u),I=Od(c,20,u);return d&&I&&hqe(d,I,n,u,n.kind!==219)}function hqe(n,c,u,d,I=!1,h=!0){let b=Wd(h?n.getFullStart():n.getStart(d),c.getEnd());return c7(b,"code",Ey(u,d),I)}function c7(n,c,u=n,d=!1,I="..."){return{textSpan:n,kind:c,hintSpan:u,bannerText:I,autoCollapse:d}}function xas(n,c,u){if(Hme(n.parameters,u)){let d=Od(n,21,u);if(d)return d}return Od(c,19,u)}var rZe={};o(rZe,{getRenameInfo:()=>kas,nodeIsEligibleForRename:()=>lYr});function kas(n,c,u,d){let I=ZGe(lb(c,u));if(lYr(I)){let h=Gas(I,n.getTypeChecker(),c,n,d);if(h)return h}return _qe(Z.You_cannot_rename_this_element)}function Gas(n,c,u,d,I){let h=c.getSymbolAtLocation(n);if(!h){if(XA(n)){let te=FGe(n,c);if(te&&(te.flags&128||te.flags&1048576&&he(te.types,re=>!!(re.flags&128))))return fVt(n.text,n.text,"string","",n,u)}else if(Z7e(n)){let te=Tf(n);return fVt(te,te,"label","",n,u)}return}let{declarations:b}=h;if(!b||b.length===0)return;if(b.some(te=>Fas(d,te)))return _qe(Z.You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library);if(sr(n)&&n.escapedText==="default"&&h.parent&&h.parent.flags&1536)return;if(XA(n)&&lee(n))return I.allowRenameOfImportPath?Las(n,u,h):void 0;let R=Zas(u,h,c,I);if(R)return _qe(R);let N=MZ.getSymbolKind(c,h,n),V=YGt(n)||GE(n)&&n.parent.kind===167?N2(T2(n)):void 0,P=V||c.symbolToString(h),M=V||c.getFullyQualifiedName(h);return fVt(P,M,N,MZ.getSymbolModifiers(c,h),n,u)}function Fas(n,c){let u=c.getSourceFile();return n.isSourceFileDefaultLibrary(u)&&gd(u.fileName,".d.ts")}function Zas(n,c,u,d){if(!d.providePrefixAndSuffixTextForRename&&c.flags&2097152){let b=c.declarations&&be(c.declarations,R=>_y(R));b&&!b.propertyName&&(c=u.getAliasedSymbol(c))}let{declarations:I}=c;if(!I)return;let h=cYr(n.path);if(h===void 0)return lr(I,b=>j_e(b.getSourceFile().path))?Z.You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder:void 0;for(let b of I){let R=cYr(b.getSourceFile().path);if(R){let N=Math.min(h.length,R.length);for(let V=0;V<=N;V++)if(Do(h[V],R[V])!==0)return Z.You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder}}}function cYr(n){let c=Ad(n),u=c.lastIndexOf("node_modules");if(u!==-1)return c.slice(0,u+2)}function Las(n,c,u){if(!Jl(n.text))return _qe(Z.You_cannot_rename_a_module_via_a_global_import);let d=u.declarations&&be(u.declarations,Gc);if(!d)return;let I=pl(n.text,"/index")||pl(n.text,"/index.js")?void 0:f1(o0(d.fileName),"/index"),h=I===void 0?d.fileName:I,b=I===void 0?"module":"directory",R=n.text.lastIndexOf("/")+1,N=bd(n.getStart(c)+1+R,n.text.length-R);return{canRename:!0,fileToRename:h,kind:b,displayName:h,fullDisplayName:n.text,kindModifiers:"",triggerSpan:N}}function fVt(n,c,u,d,I,h){return{canRename:!0,fileToRename:void 0,kind:u,displayName:n,fullDisplayName:c,kindModifiers:d,triggerSpan:Vas(I,h)}}function _qe(n){return{canRename:!1,localizedErrorMessage:eu(n)}}function Vas(n,c){let u=n.getStart(c),d=n.getWidth(c);return XA(n)&&(u+=1,d-=2),bd(u,d)}function lYr(n){switch(n.kind){case 80:case 81:case 11:case 15:case 110:return!0;case 9:return DGe(n);default:return!1}}var h0e={};o(h0e,{getArgumentInfoForCompletions:()=>Qas,getSignatureHelpItems:()=>Was});function Was(n,c,u,d,I){let h=n.getTypeChecker(),b=LGe(c,u);if(!b)return;let R=!!d&&d.kind==="characterTyped";if(R&&(U6(c,u,b)||LZ(c,u)))return;let N=!!d&&d.kind==="invoked",V=rcs(b,u,c,h,N);if(!V)return;I.throwIfCancellationRequested();let P=Pas(V,h,c,b,R);return I.throwIfCancellationRequested(),P?h.runWithCancellationToken(I,M=>P.kind===0?CYr(P.candidates,P.resolvedSignature,V,c,M):ics(P.symbol,V,c,M)):n0(c)?Mas(V,n,I):void 0}function Pas({invocation:n,argumentCount:c},u,d,I,h){switch(n.kind){case 0:{if(h&&!Oas(I,n.node,d))return;let b=[],R=u.getResolvedSignatureForSignatureHelp(n.node,b,c);return b.length===0?void 0:{kind:0,candidates:b,resolvedSignature:R}}case 1:{let{called:b}=n;if(h&&!uYr(I,d,sr(b)?b.parent:b))return;let R=X7e(b,c,u);if(R.length!==0)return{kind:0,candidates:R,resolvedSignature:$s(R)};let N=u.getSymbolAtLocation(b);return N&&{kind:1,symbol:N}}case 2:return{kind:0,candidates:[n.signature],resolvedSignature:n.signature};default:return w.assertNever(n)}}function Oas(n,c,u){if(!BB(c))return!1;let d=c.getChildren(u);switch(n.kind){case 21:return Ue(d,n);case 28:{let I=GGe(n);return!!I&&Ue(d,I)}case 30:return uYr(n,u,c.expression);default:return!1}}function Mas(n,c,u){if(n.invocation.kind===2)return;let d=fYr(n.invocation),I=Io(d)?d.name.text:void 0,h=c.getTypeChecker();return I===void 0?void 0:le(c.getSourceFiles(),b=>le(b.getNamedDeclarations().get(I),R=>{let N=R.symbol&&h.getTypeOfSymbolAtLocation(R.symbol,R),V=N&&N.getCallSignatures();if(V&&V.length)return h.runWithCancellationToken(u,P=>CYr(V,V[0],n,b,P,!0))}))}function uYr(n,c,u){let d=n.getFullStart(),I=n.parent;for(;I;){let h=_m(d,c,I,!0);if(h)return V2(u,h);I=I.parent}return w.fail("Could not find preceding token")}function Qas(n,c,u,d){let I=AYr(n,c,u,d);return!I||I.isTypeParameterList||I.invocation.kind!==0?void 0:{invocation:I.invocation.node,argumentCount:I.argumentCount,argumentIndex:I.argumentIndex}}function gYr(n,c,u,d){let I=Yas(n,u,d);if(!I)return;let{list:h,argumentIndex:b}=I,R=qas(d,h);b!==0&&w.assertLessThan(b,R);let N=ecs(h,u);return{list:h,argumentIndex:b,argumentCount:R,argumentsSpan:N}}function Yas(n,c,u){if(n.kind===30||n.kind===21)return{list:ncs(n.parent,n,c),argumentIndex:0};{let d=GGe(n);return d&&{list:d,argumentIndex:zas(u,d,n)}}}function AYr(n,c,u,d){let{parent:I}=n;if(BB(I)){let h=I,b=gYr(n,c,u,d);if(!b)return;let{list:R,argumentIndex:N,argumentCount:V,argumentsSpan:P}=b;return{isTypeParameterList:!!I.typeArguments&&I.typeArguments.pos===R.pos,invocation:{kind:0,node:h},argumentsSpan:P,argumentIndex:N,argumentCount:V}}else{if(oY(n)&&V1(I))return W_e(n,c,u)?CVt(I,0,u):void 0;if(aY(n)&&I.parent.kind===215){let h=I,b=h.parent;w.assert(h.kind===228);let R=W_e(n,c,u)?0:1;return CVt(b,R,u)}else if(Mb(I)&&V1(I.parent.parent)){let h=I,b=I.parent.parent;if(Rle(n)&&!W_e(n,c,u))return;let R=h.parent.templateSpans.indexOf(h),N=$as(R,n,c,u);return CVt(b,N,u)}else if(Jm(I)){let h=I.attributes.pos,b=Ju(u.text,I.attributes.end,!1);return{isTypeParameterList:!1,invocation:{kind:0,node:I},argumentsSpan:bd(h,b-h),argumentIndex:0,argumentCount:1}}else{let h=J7e(n,u);if(h){let{called:b,nTypeArguments:R}=h,N={kind:1,called:b},V=Wd(b.getStart(u),n.end);return{isTypeParameterList:!0,invocation:N,argumentsSpan:V,argumentIndex:R,argumentCount:R+1}}return}}}function Has(n,c,u,d){return Xas(n,c,u,d)||AYr(n,c,u,d)}function dYr(n){return no(n.parent)?dYr(n.parent):n}function IVt(n){return no(n.left)?IVt(n.left)+1:2}function Xas(n,c,u,d){let I=Jas(n);if(I===void 0)return;let h=Uas(I,u,c,d);if(h===void 0)return;let{contextualType:b,argumentIndex:R,argumentCount:N,argumentsSpan:V}=h,P=b.getNonNullableType(),M=P.symbol;if(M===void 0)return;let te=qo(P.getCallSignatures());return te===void 0?void 0:{isTypeParameterList:!1,invocation:{kind:2,signature:te,node:n,symbol:Kas(M)},argumentsSpan:V,argumentIndex:R,argumentCount:N}}function Jas(n){switch(n.kind){case 21:case 28:return n;default:return Si(n.parent,c=>Jc(c)?!0:ml(c)||Vg(c)||Vu(c)?!1:"quit")}}function Uas(n,c,u,d){let{parent:I}=n;switch(I.kind){case 217:case 174:case 218:case 219:let h=gYr(n,u,c,d);if(!h)return;let{argumentIndex:b,argumentCount:R,argumentsSpan:N}=h,V=cI(I)?d.getContextualTypeForObjectLiteralElement(I):d.getContextualType(I);return V&&{contextualType:V,argumentIndex:b,argumentCount:R,argumentsSpan:N};case 226:{let P=dYr(I),M=d.getContextualType(P),te=n.kind===21?0:IVt(I)-1,re=IVt(P);return M&&{contextualType:M,argumentIndex:te,argumentCount:re,argumentsSpan:Ey(I)}}default:return}}function Kas(n){return n.name==="__type"&&le(n.declarations,c=>{var u;return Y(c)?(u=eo(c.parent,B2))==null?void 0:u.symbol:void 0})||n}function jas(n,c){let u=c.getTypeAtLocation(n.expression);if(c.isTupleType(u)){let{elementFlags:d,fixedLength:I}=u.target;if(I===0)return 0;let h=ke(d,b=>!(b&1));return h<0?I:h}return 0}function zas(n,c,u){return pYr(n,c,u)}function qas(n,c){return pYr(n,c,void 0)}function pYr(n,c,u){let d=c.getChildren(),I=0,h=!1;for(let b of d){if(u&&b===u)return!h&&b.kind===28&&I++,I;if(ph(b)){I+=jas(b,n),h=!0;continue}if(b.kind!==28){I++,h=!0;continue}if(h){h=!1;continue}I++}return u?I:d.length&&Na(d).kind===28?I+1:I}function $as(n,c,u,d){return w.assert(u>=c.getStart(),"Assumed 'position' could not occur before node."),xae(c)?W_e(c,u,d)?0:n+2:n+1}function CVt(n,c,u){let d=oY(n.template)?1:n.template.templateSpans.length+1;return c!==0&&w.assertLessThan(c,d),{isTypeParameterList:!1,invocation:{kind:0,node:n},argumentsSpan:tcs(n,u),argumentIndex:c,argumentCount:d}}function ecs(n,c){let u=n.getFullStart(),d=Ju(c.text,n.getEnd(),!1);return bd(u,d-u)}function tcs(n,c){let u=n.template,d=u.getStart(),I=u.getEnd();return u.kind===228&&Na(u.templateSpans).literal.getFullWidth()===0&&(I=Ju(c.text,I,!1)),bd(d,I-d)}function rcs(n,c,u,d,I){for(let h=n;!Gc(h)&&(I||!mc(h));h=h.parent){w.assert(V2(h.parent,h),"Not a subspan",()=>`Child: ${w.formatSyntaxKind(h.kind)}, parent: ${w.formatSyntaxKind(h.parent.kind)}`);let b=Has(h,c,u,d);if(b)return b}}function ncs(n,c,u){let d=n.getChildren(u),I=d.indexOf(c);return w.assert(I>=0&&d.length>I+1),d[I+1]}function fYr(n){return n.kind===0?G8(n.node):n.called}function IYr(n){return n.kind===0?n.node:n.kind===1?n.called:n.node}var nZe=70246400;function CYr(n,c,{isTypeParameterList:u,argumentCount:d,argumentsSpan:I,invocation:h,argumentIndex:b},R,N,V){var P;let M=IYr(h),te=h.kind===2?h.symbol:N.getSymbolAtLocation(fYr(h))||V&&((P=c.declaration)==null?void 0:P.symbol),re=te?bue(N,te,V?R:void 0,void 0):v,ue=Ot(n,Ne=>ocs(Ne,re,u,N,M,R));b!==0&&w.assertLessThan(b,d);let Ae=0,de=0;for(let Ne=0;Ne1)){let De=0;for(let lt of Qe){if(lt.isVariadic||lt.parameters.length>=d){Ae=de+De;break}De++}}de+=Qe.length}w.assert(Ae!==-1);let Be={items:$r(ue,Bl),applicableSpan:I,selectedItemIndex:Ae,argumentIndex:b,argumentCount:d},Fe=Be.items[Ae];if(Fe.isVariadic){let Ne=ke(Fe.parameters,Qe=>!!Qe.isRest);-1hYr(M,u,d,I,b)),N=n.getDocumentationComment(u),V=n.getJsDocTags(u);return{isVariadic:!1,prefixDisplayParts:[...h,A0(30)],suffixDisplayParts:[A0(32)],separatorDisplayParts:mYr,parameters:R,documentation:N,tags:V}}var mYr=[A0(28),DI()];function ocs(n,c,u,d,I,h){let b=(u?ccs:lcs)(n,d,I,h);return Ot(b,({isVariadic:R,parameters:N,prefix:V,suffix:P})=>{let M=[...c,...V],te=[...P,...acs(n,I,d)],re=n.getDocumentationComment(d),ue=n.getJsDocTags();return{isVariadic:R,prefixDisplayParts:M,suffixDisplayParts:te,separatorDisplayParts:mYr,parameters:N,documentation:re,tags:ue}})}function acs(n,c,u){return RV(d=>{d.writePunctuation(":"),d.writeSpace(" ");let I=u.getTypePredicateOfSignature(n);I?u.writeTypePredicate(I,c,void 0,d):u.writeType(u.getReturnTypeOfSignature(n),c,void 0,d)})}function ccs(n,c,u,d){let I=(n.target||n).typeParameters,h=h4(),b=(I||v).map(N=>hYr(N,c,u,d,h)),R=n.thisParameter?[c.symbolToParameterDeclaration(n.thisParameter,u,nZe)]:[];return c.getExpandedParameters(n).map(N=>{let V=_e.createNodeArray([...R,...Ot(N,M=>c.symbolToParameterDeclaration(M,u,nZe))]),P=RV(M=>{h.writeList(2576,V,d,M)});return{isVariadic:!1,parameters:b,prefix:[A0(30)],suffix:[A0(32),...P]}})}function lcs(n,c,u,d){let I=h4(),h=RV(N=>{if(n.typeParameters&&n.typeParameters.length){let V=_e.createNodeArray(n.typeParameters.map(P=>c.typeParameterToDeclaration(P,u,nZe)));I.writeList(53776,V,d,N)}}),b=c.getExpandedParameters(n),R=c.hasEffectiveRestParameter(n)?b.length===1?N=>!0:N=>{var V;return!!(N.length&&((V=eo(N[N.length-1],vB))==null?void 0:V.links.checkFlags)&32768)}:N=>!1;return b.map(N=>({isVariadic:R(N),parameters:N.map(V=>ucs(V,c,u,d,I)),prefix:[...h,A0(21)],suffix:[A0(22)]}))}function ucs(n,c,u,d,I){let h=RV(N=>{let V=c.symbolToParameterDeclaration(n,u,nZe);I.writeNode(4,V,d,N)}),b=c.isOptionalParameter(n.valueDeclaration),R=vB(n)&&!!(n.links.checkFlags&32768);return{name:n.name,documentation:n.getDocumentationComment(c),displayParts:h,isOptional:b,isRest:R}}function hYr(n,c,u,d,I){let h=RV(b=>{let R=c.typeParameterToDeclaration(n,u,nZe);I.writeNode(4,R,d,b)});return{name:n.symbol.name,documentation:n.symbol.getDocumentationComment(c),displayParts:h,isOptional:!1,isRest:!1}}var yqe={};o(yqe,{getSmartSelectionRange:()=>gcs});function gcs(n,c){var u,d;let I={textSpan:Wd(c.getFullStart(),c.getEnd())},h=c;e:for(;;){let N=pcs(h);if(!N.length)break;for(let V=0;Vn)break e;let re=wu(m2(c.text,M.end));if(re&&re.kind===2&&R(re.pos,re.end),Acs(c,n,M)){if(_X(M)&&dd(h)&&!Z1(M.getStart(c),M.getEnd(),c)&&b(M.getStart(c),M.getEnd()),mc(M)||Mb(M)||aY(M)||Rle(M)||P&&aY(P)||yl(M)&&Rp(h)||Ate(M)&&yl(h)||zs(M)&&Ate(h)&&N.length===1||rP(M)||xG(M)||A4(M)){h=M;break}if(Mb(h)&&te&&u8(te)){let Be=M.getFullStart()-2,Fe=te.getStart()+1;b(Be,Fe)}let ue=Ate(M)&&fcs(P)&&Ics(te)&&!Z1(P.getStart(),te.getStart(),c),Ae=ue?P.getEnd():M.getStart(),de=ue?te.getStart():Ccs(c,M);if(hy(M)&&((u=M.jsDoc)!=null&&u.length)&&b($s(M.jsDoc).getStart(),de),Ate(M)){let Be=M.getChildren()[0];Be&&hy(Be)&&((d=Be.jsDoc)!=null&&d.length)&&Be.getStart()!==M.pos&&(Ae=Math.min(Ae,$s(Be.jsDoc).getStart()))}b(Ae,de),(bu(M)||x1(M))&&b(Ae+1,de-1),h=M;break}if(V===N.length-1)break e}}return I;function b(N,V){if(N!==V){let P=Wd(N,V);(!I||!Vte(P,I.textSpan)&&my(P,n))&&(I={textSpan:P,...I&&{parent:I}})}}function R(N,V){b(N,V);let P=N;for(;c.text.charCodeAt(P)===47;)P++;b(P,V)}}function Acs(n,c,u){return w.assert(u.pos<=c),cR===n.readonlyToken||R.kind===148||R===n.questionToken||R.kind===58),b=_0e(h,({kind:R})=>R===23||R===168||R===24);return[u,y0e(bqe(b,({kind:R})=>R===59)),I]}if(n_(n)){let u=_0e(n.getChildren(),b=>b===n.name||Ue(n.modifiers,b)),d=((c=u[0])==null?void 0:c.kind)===320?u[0]:void 0,I=d?u.slice(1):u,h=bqe(I,({kind:b})=>b===59);return d?[d,y0e(h)]:h}if(Jc(n)){let u=_0e(n.getChildren(),I=>I===n.dotDotDotToken||I===n.name),d=_0e(u,I=>I===u[0]||I===n.questionToken);return bqe(d,({kind:I})=>I===64)}return ml(n)?bqe(n.getChildren(),({kind:u})=>u===64):n.getChildren()}function _0e(n,c){let u=[],d;for(let I of n)c(I)?(d=d||[],d.push(I)):(d&&(u.push(y0e(d)),d=void 0),u.push(I));return d&&u.push(y0e(d)),u}function bqe(n,c,u=!0){if(n.length<2)return n;let d=ke(n,c);if(d===-1)return n;let I=n.slice(0,d),h=n[d],b=Na(n),R=u&&b.kind===27,N=n.slice(d+1,R?n.length-1:void 0),V=Vn([I.length?y0e(I):void 0,h,N.length?y0e(N):void 0]);return R?V.concat(b):V}function y0e(n){return w.assertGreaterThanOrEqual(n.length,1),MS(sP.createSyntaxList(n),n[0].pos,Na(n).end)}function fcs(n){let c=n&&n.kind;return c===19||c===23||c===21||c===286}function Ics(n){let c=n&&n.kind;return c===20||c===24||c===22||c===287}function Ccs(n,c){switch(c.kind){case 341:case 338:case 348:case 346:case 343:return n.getLineEndOfPosition(c.getStart());default:return c.getEnd()}}var MZ={};o(MZ,{getSymbolDisplayPartsDocumentationAndSymbolKind:()=>hcs,getSymbolKind:()=>yYr,getSymbolModifiers:()=>mcs});var _Yr=70246400;function yYr(n,c,u){let d=bYr(n,c,u);if(d!=="")return d;let I=PQ(c);return I&32?zd(c,231)?"local class":"class":I&384?"enum":I&524288?"type":I&64?"interface":I&262144?"type parameter":I&8?"enum member":I&2097152?"alias":I&1536?"module":d}function bYr(n,c,u){let d=n.getRootSymbols(c);if(d.length===1&&$s(d).flags&8192&&n.getTypeOfSymbolAtLocation(c,u).getNonNullableType().getCallSignatures().length!==0)return"method";if(n.isUndefinedSymbol(c))return"var";if(n.isArgumentsSymbol(c))return"local var";if(u.kind===110&&tn(u)||oV(u))return"parameter";let I=PQ(c);if(I&3)return pje(c)?"parameter":c.valueDeclaration&&Qp(c.valueDeclaration)?"const":c.valueDeclaration&&pd(c.valueDeclaration)?"using":c.valueDeclaration&&Mg(c.valueDeclaration)?"await using":X(c.declarations,oI)?"let":vYr(c)?"local var":"var";if(I&16)return vYr(c)?"local function":"function";if(I&32768)return"getter";if(I&65536)return"setter";if(I&8192)return"method";if(I&16384)return"constructor";if(I&131072)return"index";if(I&4){if(I&33554432&&c.links.checkFlags&6){let h=X(n.getRootSymbols(c),b=>{if(b.getFlags()&98311)return"property"});return h||(n.getTypeOfSymbolAtLocation(c,u).getCallSignatures().length?"method":"property")}return"property"}return""}function EYr(n){if(n.declarations&&n.declarations.length){let[c,...u]=n.declarations,d=O(u)&&gFe(c)&&lr(u,h=>!gFe(h))?65536:0,I=Cue(c,d);if(I)return I.split(",")}return[]}function mcs(n,c){if(!c)return"";let u=new Set(EYr(c));if(c.flags&2097152){let d=n.getAliasedSymbol(c);d!==c&&X(EYr(d),I=>{u.add(I)})}return c.flags&16777216&&u.add("optional"),u.size>0?on(u.values()).join(","):""}function BYr(n,c,u,d,I,h,b,R){var N;let V=[],P=[],M=[],te=PQ(c),re=b&1?bYr(n,c,I):"",ue=!1,Ae=I.kind===110&&lce(I)||oV(I),de,Be,Fe=!1;if(I.kind===110&&!Ae)return{displayParts:[OE(110)],documentation:[],symbolKind:"primitive type",tags:void 0};if(re!==""||te&32||te&2097152){if(re==="getter"||re==="setter"){let dt=be(c.declarations,wt=>wt.name===I);if(dt)switch(dt.kind){case 177:re="getter";break;case 178:re="setter";break;case 172:re="accessor";break;default:w.assertNever(dt)}else re="property"}let it;if(h??(h=Ae?n.getTypeAtLocation(I):n.getTypeOfSymbolAtLocation(c,I)),I.parent&&I.parent.kind===211){let dt=I.parent.name;(dt===I||dt&&dt.getFullWidth()===0)&&(I=I.parent)}let It;if(BB(I)?It=I:(x7e(I)||fue(I)||I.parent&&(Jm(I.parent)||V1(I.parent))&&$l(c.valueDeclaration))&&(It=I.parent),It){it=n.getResolvedSignature(It);let dt=It.kind===214||cu(It)&&It.expression.kind===108,wt=dt?h.getConstructSignatures():h.getCallSignatures();if(it&&!Ue(wt,it.target)&&!Ue(wt,it)&&(it=wt.length?wt[0]:void 0),it){switch(dt&&te&32?(re="constructor",je(h.symbol,re)):te&2097152?(re="alias",st(re),V.push(DI()),dt&&(it.flags&4&&(V.push(OE(128)),V.push(DI())),V.push(OE(105)),V.push(DI())),Le(c)):je(c,re),re){case"JSX attribute":case"property":case"var":case"const":case"let":case"parameter":case"local var":V.push(A0(59)),V.push(DI()),!(sa(h)&16)&&h.symbol&&(ai(V,bue(n,h.symbol,d,void 0,5)),V.push(Wte())),dt&&(it.flags&4&&(V.push(OE(128)),V.push(DI())),V.push(OE(105)),V.push(DI())),nt(it,wt,262144);break;default:nt(it,wt)}ue=!0,Fe=wt.length>1}}else if(P7e(I)&&!(te&98304)||I.kind===137&&I.parent.kind===176){let dt=I.parent;if(c.declarations&&be(c.declarations,vt=>vt===(I.kind===137?dt.parent:dt))){let vt=dt.kind===176?h.getNonNullableType().getConstructSignatures():h.getNonNullableType().getCallSignatures();n.isImplementationOfOverload(dt)?it=vt[0]:it=n.getSignatureFromDeclaration(dt),dt.kind===176?(re="constructor",je(h.symbol,re)):je(dt.kind===179&&!(h.symbol.flags&2048||h.symbol.flags&4096)?h.symbol:c,re),it&&nt(it,vt),ue=!0,Fe=vt.length>1}}}if(te&32&&!ue&&!Ae&&(De(),zd(c,231)?st("local class"):V.push(OE(86)),V.push(DI()),Le(c),qe(c,u)),te&64&&b&2&&(Qe(),V.push(OE(120)),V.push(DI()),Le(c),qe(c,u)),te&524288&&b&2&&(Qe(),V.push(OE(156)),V.push(DI()),Le(c),qe(c,u),V.push(DI()),V.push(yue(64)),V.push(DI()),ai(V,H_e(n,I.parent&&E2(I.parent)?n.getTypeAtLocation(I.parent):n.getDeclaredTypeOfSymbol(c),d,8388608))),te&384&&(Qe(),lr(c.declarations,it=>tP(it)&&Ac(it))&&(V.push(OE(87)),V.push(DI())),V.push(OE(94)),V.push(DI()),Le(c)),te&1536&&!Ae){Qe();let it=zd(c,267),It=it&&it.name&&it.name.kind===80;V.push(OE(It?145:144)),V.push(DI()),Le(c)}if(te&262144&&b&2)if(Qe(),V.push(A0(21)),V.push(P2("type parameter")),V.push(A0(22)),V.push(DI()),Le(c),c.parent)lt(),Le(c.parent,d),qe(c.parent,d);else{let it=zd(c,168);if(it===void 0)return w.fail();let It=it.parent;if(It)if($l(It)){lt();let dt=n.getSignatureFromDeclaration(It);It.kind===180?(V.push(OE(105)),V.push(DI())):It.kind!==179&&It.name&&Le(It.symbol),ai(V,Cje(n,dt,u,32))}else Wf(It)&&(lt(),V.push(OE(156)),V.push(DI()),Le(It.symbol),qe(It.symbol,u))}if(te&8){re="enum member",je(c,"enum member");let it=(N=c.declarations)==null?void 0:N[0];if(it?.kind===306){let It=n.getConstantValue(it);It!==void 0&&(V.push(DI()),V.push(yue(64)),V.push(DI()),V.push(Qb(S8(It),typeof It=="number"?7:8)))}}if(c.flags&2097152){if(Qe(),!ue||P.length===0&&M.length===0){let it=n.getAliasedSymbol(c);if(it!==c&&it.declarations&&it.declarations.length>0){let It=it.declarations[0],dt=vl(It);if(dt&&!ue){let wt=SQ(It)&&ba(It,128),vt=c.name!=="default"&&!wt,Ye=BYr(n,it,ls(It),d,dt,h,b,vt?c:it);V.push(...Ye.displayParts),V.push(Wte()),de=Ye.documentation,Be=Ye.tags}else de=it.getContextualDocumentationComment(It,n),Be=it.getJsDocTags(n)}}if(c.declarations)switch(c.declarations[0].kind){case 270:V.push(OE(95)),V.push(DI()),V.push(OE(145));break;case 277:V.push(OE(95)),V.push(DI()),V.push(OE(c.declarations[0].isExportEquals?64:90));break;case 281:V.push(OE(95));break;default:V.push(OE(102))}V.push(DI()),Le(c),X(c.declarations,it=>{if(it.kind===271){let It=it;if(EZ(It))V.push(DI()),V.push(yue(64)),V.push(DI()),V.push(OE(149)),V.push(A0(21)),V.push(Qb(Tf(L8(It)),8)),V.push(A0(22));else{let dt=n.getSymbolAtLocation(It.moduleReference);dt&&(V.push(DI()),V.push(yue(64)),V.push(DI()),Le(dt,d))}return!0}})}if(!ue)if(re!==""){if(h){if(Ae?(Qe(),V.push(OE(110))):je(c,re),re==="property"||re==="accessor"||re==="getter"||re==="setter"||re==="JSX attribute"||te&3||re==="local var"||re==="index"||re==="using"||re==="await using"||Ae){if(V.push(A0(59)),V.push(DI()),h.symbol&&h.symbol.flags&262144&&re!=="index"){let it=RV(It=>{let dt=n.typeParameterToDeclaration(h,d,_Yr);Ne().writeNode(4,dt,ls(jc(d)),It)});ai(V,it)}else ai(V,H_e(n,h,d));if(vB(c)&&c.links.target&&vB(c.links.target)&&c.links.target.links.tupleLabelDeclaration){let it=c.links.target.links.tupleLabelDeclaration;w.assertNode(it.name,sr),V.push(DI()),V.push(A0(21)),V.push(P2(ao(it.name))),V.push(A0(22))}}else if(te&16||te&8192||te&16384||te&131072||te&98304||re==="method"){let it=h.getNonNullableType().getCallSignatures();it.length&&(nt(it[0],it),Fe=it.length>1)}}}else re=yYr(n,c,I);if(P.length===0&&!Fe&&(P=c.getContextualDocumentationComment(d,n)),P.length===0&&te&4&&c.parent&&c.declarations&&X(c.parent.declarations,it=>it.kind===307))for(let it of c.declarations){if(!it.parent||it.parent.kind!==226)continue;let It=n.getSymbolAtLocation(it.parent.right);if(It&&(P=It.getDocumentationComment(n),M=It.getJsDocTags(n),P.length>0))break}if(P.length===0&&sr(I)&&c.valueDeclaration&&ml(c.valueDeclaration)){let it=c.valueDeclaration,It=it.parent,dt=it.propertyName||it.name;if(sr(dt)&&Vg(It)){let wt=T2(dt),vt=n.getTypeAtLocation(It);P=le(vt.isUnion()?vt.types:[vt],Ye=>{let ht=Ye.getProperty(wt);return ht?ht.getDocumentationComment(n):void 0})||v}}return M.length===0&&!Fe&&(M=c.getContextualJsDocTags(d,n)),P.length===0&&de&&(P=de),M.length===0&&Be&&(M=Be),{displayParts:V,documentation:P,symbolKind:re,tags:M.length===0?void 0:M};function Ne(){return h4()}function Qe(){V.length&&V.push(Wte()),De()}function De(){R&&(st("alias"),V.push(DI()))}function lt(){V.push(DI()),V.push(OE(103)),V.push(DI())}function Le(it,It){let dt;R&&it===c&&(it=R),re==="index"&&(dt=n.getIndexInfosOfIndexSymbol(it));let wt=[];it.flags&131072&&dt?(it.parent&&(wt=bue(n,it.parent)),wt.push(A0(23)),dt.forEach((vt,Ye)=>{wt.push(...H_e(n,vt.keyType)),Ye!==dt.length-1&&(wt.push(DI()),wt.push(A0(52)),wt.push(DI()))}),wt.push(A0(24))):wt=bue(n,it,It||u,void 0,7),ai(V,wt),c.flags&16777216&&V.push(A0(58))}function je(it,It){Qe(),It&&(st(It),it&&!lr(it.declarations,dt=>fd(dt)||(WA(dt)||tp(dt))&&!dt.name)&&(V.push(DI()),Le(it)))}function st(it){switch(it){case"var":case"function":case"let":case"const":case"constructor":case"using":case"await using":V.push(fje(it));return;default:V.push(A0(21)),V.push(fje(it)),V.push(A0(22));return}}function nt(it,It,dt=0){ai(V,Cje(n,it,d,dt|32)),It.length>1&&(V.push(DI()),V.push(A0(21)),V.push(yue(40)),V.push(Qb((It.length-1).toString(),7)),V.push(DI()),V.push(P2(It.length===2?"overload":"overloads")),V.push(A0(22))),P=it.getDocumentationComment(n),M=it.getJsDocTags(),It.length>1&&P.length===0&&M.length===0&&(P=It[0].getDocumentationComment(n),M=It[0].getJsDocTags().filter(wt=>wt.name!=="deprecated"))}function qe(it,It){let dt=RV(wt=>{let vt=n.symbolToTypeParameterDeclarations(it,It,_Yr);Ne().writeList(53776,vt,ls(jc(It)),wt)});ai(V,dt)}}function hcs(n,c,u,d,I,h=_4(I),b){return BYr(n,c,u,d,I,void 0,h,b)}function vYr(n){return n.parent?!1:X(n.declarations,c=>{if(c.kind===218)return!0;if(c.kind!==260&&c.kind!==262)return!1;for(let u=c.parent;!j9(u);u=u.parent)if(u.kind===307||u.kind===268)return!1;return!0})}var po={};o(po,{ChangeTracker:()=>bcs,LeadingTriviaOption:()=>TYr,TrailingTriviaOption:()=>NYr,applyChanges:()=>bVt,assignPositionsToNode:()=>Sqe,createWriter:()=>DYr,deleteNode:()=>LG,isThisTypeAnnotatable:()=>ycs,isValidLocationToAddComment:()=>xYr});function SYr(n){let c=n.__pos;return w.assert(typeof c=="number"),c}function mVt(n,c){w.assert(typeof c=="number"),n.__pos=c}function wYr(n){let c=n.__end;return w.assert(typeof c=="number"),c}function hVt(n,c){w.assert(typeof c=="number"),n.__end=c}var TYr=(n=>(n[n.Exclude=0]="Exclude",n[n.IncludeAll=1]="IncludeAll",n[n.JSDoc=2]="JSDoc",n[n.StartLine=3]="StartLine",n))(TYr||{}),NYr=(n=>(n[n.Exclude=0]="Exclude",n[n.ExcludeWhitespace=1]="ExcludeWhitespace",n[n.Include=2]="Include",n))(NYr||{});function RYr(n,c){return Ju(n,c,!1,!0)}function _cs(n,c){let u=c;for(;u0?1:0,te=uN(q8(n,V)+M,n);return te=RYr(n.text,te),uN(q8(n,te),n)}function _Vt(n,c,u){let{end:d}=c,{trailingTriviaOption:I}=u;if(I===2){let h=m2(n.text,d);if(h){let b=q8(n,c.end);for(let R of h){if(R.kind===2||q8(n,R.pos)>b)break;if(q8(n,R.end)>b)return Ju(n.text,R.end,!0,!0)}}}}function zte(n,c,u){var d;let{end:I}=c,{trailingTriviaOption:h}=u;if(h===0)return I;if(h===1){let N=vi(m2(n.text,I),Gb(n.text,I)),V=(d=N?.[N.length-1])==null?void 0:d.end;return V||I}let b=_Vt(n,c,u);if(b)return b;let R=Ju(n.text,I,!0);return R!==I&&(h===2||HC(n.text.charCodeAt(R-1)))?R:I}function Eqe(n,c){return!!c&&!!n.parent&&(c.kind===28||c.kind===27&&n.parent.kind===210)}function ycs(n){return WA(n)||mp(n)}var bcs=class qnr{constructor(c,u){this.newLineCharacter=c,this.formatContext=u,this.changes=[],this.classesWithNodesInsertedAtStart=new Map,this.deletedNodes=[]}static fromContext(c){return new qnr(WZ(c.host,c.formatContext.options),c.formatContext)}static with(c,u){let d=qnr.fromContext(c);return u(d),d.getChanges()}pushRaw(c,u){w.assertEqual(c.fileName,u.fileName);for(let d of u.textChanges)this.changes.push({kind:3,sourceFile:c,text:d.newText,range:MGe(d.span)})}deleteRange(c,u){this.changes.push({kind:0,sourceFile:c,range:u})}delete(c,u){this.deletedNodes.push({sourceFile:c,node:u})}deleteNode(c,u,d={leadingTriviaOption:1}){this.deleteRange(c,E0e(c,u,u,d))}deleteNodes(c,u,d={leadingTriviaOption:1},I){for(let h of u){let b=S4(c,h,d,I),R=zte(c,h,d);this.deleteRange(c,{pos:b,end:R}),I=!!_Vt(c,h,d)}}deleteModifier(c,u){this.deleteRange(c,{pos:u.getStart(c),end:Ju(c.text,u.end,!0)})}deleteNodeRange(c,u,d,I={leadingTriviaOption:1}){let h=S4(c,u,I),b=zte(c,d,I);this.deleteRange(c,{pos:h,end:b})}deleteNodeRangeExcludingEnd(c,u,d,I={leadingTriviaOption:1}){let h=S4(c,u,I),b=d===void 0?c.text.length:S4(c,d,I);this.deleteRange(c,{pos:h,end:b})}replaceRange(c,u,d,I={}){this.changes.push({kind:1,sourceFile:c,range:u,options:I,node:d})}replaceNode(c,u,d,I=b0e){this.replaceRange(c,E0e(c,u,u,I),d,I)}replaceNodeRange(c,u,d,I,h=b0e){this.replaceRange(c,E0e(c,u,d,h),I,h)}replaceRangeWithNodes(c,u,d,I={}){this.changes.push({kind:2,sourceFile:c,range:u,options:I,nodes:d})}replaceNodeWithNodes(c,u,d,I=b0e){this.replaceRangeWithNodes(c,E0e(c,u,u,I),d,I)}replaceNodeWithText(c,u,d){this.replaceRangeWithText(c,E0e(c,u,u,b0e),d)}replaceNodeRangeWithNodes(c,u,d,I,h=b0e){this.replaceRangeWithNodes(c,E0e(c,u,d,h),I,h)}nodeHasTrailingComment(c,u,d=b0e){return!!_Vt(c,u,d)}nextCommaToken(c,u){let d=yY(u,u.parent,c);return d&&d.kind===28?d:void 0}replacePropertyAssignment(c,u,d){let I=this.nextCommaToken(c,u)?"":","+this.newLineCharacter;this.replaceNode(c,u,d,{suffix:I})}insertNodeAt(c,u,d,I={}){this.replaceRange(c,F1(u),d,I)}insertNodesAt(c,u,d,I={}){this.replaceRangeWithNodes(c,F1(u),d,I)}insertNodeAtTopOfFile(c,u,d){this.insertAtTopOfFile(c,u,d)}insertNodesAtTopOfFile(c,u,d){this.insertAtTopOfFile(c,u,d)}insertAtTopOfFile(c,u,d){let I=Rcs(c),h={prefix:I===0?void 0:this.newLineCharacter,suffix:(HC(c.text.charCodeAt(I))?"":this.newLineCharacter)+(d?this.newLineCharacter:"")};Ra(u)?this.insertNodesAt(c,I,u,h):this.insertNodeAt(c,I,u,h)}insertNodesAtEndOfFile(c,u,d){this.insertAtEndOfFile(c,u,d)}insertAtEndOfFile(c,u,d){let I=c.end+1,h={prefix:this.newLineCharacter,suffix:this.newLineCharacter+(d?this.newLineCharacter:"")};this.insertNodesAt(c,I,u,h)}insertStatementsInNewFile(c,u,d){this.newFileChanges||(this.newFileChanges=ec()),this.newFileChanges.add(c,{oldFile:d,statements:u})}insertFirstParameter(c,u,d){let I=$i(u);I?this.insertNodeBefore(c,I,d):this.insertNodeAt(c,u.pos,d)}insertNodeBefore(c,u,d,I=!1,h={}){this.insertNodeAt(c,S4(c,u,h),d,this.getOptionsForInsertNodeBefore(u,d,I))}insertNodesBefore(c,u,d,I=!1,h={}){this.insertNodesAt(c,S4(c,u,h),d,this.getOptionsForInsertNodeBefore(u,$s(d),I))}insertModifierAt(c,u,d,I={}){this.insertNodeAt(c,u,_e.createToken(d),I)}insertModifierBefore(c,u,d){return this.insertModifierAt(c,d.getStart(c),u,{suffix:" "})}insertCommentBeforeLine(c,u,d,I){let h=uN(u,c),b=XGt(c.text,h),R=xYr(c,b),N=Fte(c,R?b:d),V=c.text.slice(h,b),P=`${R?"":this.newLineCharacter}//${I}${this.newLineCharacter}${V}`;this.insertText(c,N.getStart(c),P)}insertJsdocCommentBefore(c,u,d){let I=u.getStart(c);if(u.jsDoc)for(let R of u.jsDoc)this.deleteRange(c,{pos:Vv(R.getStart(c),c),end:zte(c,R,{})});let h=zGe(c.text,I-1),b=c.text.slice(h,I);this.insertNodeAt(c,I,d,{suffix:this.newLineCharacter+b})}createJSDocText(c,u){let d=Fr(u.jsDoc,h=>Xa(h.comment)?_e.createJSDocText(h.comment):h.comment),I=wu(u.jsDoc);return I&&Z1(I.pos,I.end,c)&&O(d)===0?void 0:_e.createNodeArray(pe(d,_e.createJSDocText(` -`)))}replaceJSDocComment(c,u,d){this.insertJsdocCommentBefore(c,Ecs(u),_e.createJSDocComment(this.createJSDocText(c,u),_e.createNodeArray(d)))}addJSDocTags(c,u,d){let I=$r(u.jsDoc,b=>b.tags),h=d.filter(b=>!I.some((R,N)=>{let V=Bcs(R,b);return V&&(I[N]=V),!!V}));this.replaceJSDocComment(c,u,[...I,...h])}filterJSDocTags(c,u,d){this.replaceJSDocComment(c,u,Gt($r(u.jsDoc,I=>I.tags),d))}replaceRangeWithText(c,u,d){this.changes.push({kind:3,sourceFile:c,range:u,text:d})}insertText(c,u,d){this.replaceRangeWithText(c,F1(u),d)}tryInsertTypeAnnotation(c,u,d){let I;if($l(u)){if(I=Od(u,22,c),!I){if(!fd(u))return!1;I=$s(u.parameters)}}else I=(u.kind===260?u.exclamationToken:u.questionToken)??u.name;return this.insertNodeAt(c,I.end,d,{prefix:": "}),!0}tryInsertThisTypeAnnotation(c,u,d){let I=Od(u,21,c).getStart(c)+1,h=u.parameters.length?", ":"";this.insertNodeAt(c,I,d,{prefix:"this: ",suffix:h})}insertTypeParameters(c,u,d){let I=(Od(u,21,c)||$s(u.parameters)).getStart(c);this.insertNodesAt(c,I,d,{prefix:"<",suffix:">",joiner:", "})}getOptionsForInsertNodeBefore(c,u,d){return Ic(c)||rC(c)?{suffix:d?this.newLineCharacter+this.newLineCharacter:this.newLineCharacter}:zs(c)?{suffix:", "}:Jc(c)?Jc(u)?{suffix:", "}:{}:bu(c)&&mI(c.parent)||wN(c)?{suffix:", "}:_y(c)?{suffix:","+(d?this.newLineCharacter:" ")}:w.failBadSyntaxKind(c)}insertNodeAtConstructorStart(c,u,d){let I=$i(u.body.statements);!I||!u.body.multiLine?this.replaceConstructorBody(c,u,[d,...u.body.statements]):this.insertNodeBefore(c,I,d)}insertNodeAtConstructorStartAfterSuperCall(c,u,d){let I=be(u.body.statements,h=>Hf(h)&&Nf(h.expression));!I||!u.body.multiLine?this.replaceConstructorBody(c,u,[...u.body.statements,d]):this.insertNodeAfter(c,I,d)}insertNodeAtConstructorEnd(c,u,d){let I=qo(u.body.statements);!I||!u.body.multiLine?this.replaceConstructorBody(c,u,[...u.body.statements,d]):this.insertNodeAfter(c,I,d)}replaceConstructorBody(c,u,d){this.replaceNode(c,u.body,_e.createBlock(d,!0))}insertNodeAtEndOfScope(c,u,d){let I=S4(c,u.getLastToken(),{});this.insertNodeAt(c,I,d,{prefix:HC(c.text.charCodeAt(u.getLastToken().pos))?this.newLineCharacter:this.newLineCharacter+this.newLineCharacter,suffix:this.newLineCharacter})}insertMemberAtStart(c,u,d){this.insertNodeAtStartWorker(c,u,d)}insertNodeAtObjectStart(c,u,d){this.insertNodeAtStartWorker(c,u,d)}insertNodeAtStartWorker(c,u,d){let I=this.guessIndentationFromExistingMembers(c,u)??this.computeIndentationForNewMember(c,u);this.insertNodeAt(c,Bqe(u).pos,d,this.getInsertNodeAtStartInsertOptions(c,u,I))}guessIndentationFromExistingMembers(c,u){let d,I=u;for(let h of Bqe(u)){if(o6(I,h,c))return;let b=h.getStart(c),R=jC.SmartIndenter.findFirstNonWhitespaceColumn(Vv(b,c),b,c,this.formatContext.options);if(d===void 0)d=R;else if(R!==d)return;I=h}return d}computeIndentationForNewMember(c,u){let d=u.getStart(c);return jC.SmartIndenter.findFirstNonWhitespaceColumn(Vv(d,c),d,c,this.formatContext.options)+(this.formatContext.options.indentSize??4)}getInsertNodeAtStartInsertOptions(c,u,d){let h=Bqe(u).length===0,b=R2(this.classesWithNodesInsertedAtStart,sd(u),{node:u,sourceFile:c}),R=tu(u)&&(!Ia(c)||!h),N=tu(u)&&Ia(c)&&h&&!b;return{indentation:d,prefix:(N?",":"")+this.newLineCharacter,suffix:R?",":HI(u)&&h?";":""}}insertNodeAfterComma(c,u,d){let I=this.insertNodeAfterWorker(c,this.nextCommaToken(c,u)||u,d);this.insertNodeAt(c,I,d,this.getInsertNodeAfterOptions(c,u))}insertNodeAfter(c,u,d){let I=this.insertNodeAfterWorker(c,u,d);this.insertNodeAt(c,I,d,this.getInsertNodeAfterOptions(c,u))}insertNodeAtEndOfList(c,u,d){this.insertNodeAt(c,u.end,d,{prefix:", "})}insertNodesAfter(c,u,d){let I=this.insertNodeAfterWorker(c,u,$s(d));this.insertNodesAt(c,I,d,this.getInsertNodeAfterOptions(c,u))}insertNodeAfterWorker(c,u,d){return Dcs(u,d)&&c.text.charCodeAt(u.end-1)!==59&&this.replaceRange(c,F1(u.end),_e.createToken(27)),zte(c,u,{})}getInsertNodeAfterOptions(c,u){let d=this.getInsertNodeAfterOptionsWorker(u);return{...d,prefix:u.end===c.end&&Ic(u)?d.prefix?` +}`,n.languageVersion,!0,n.scriptKind),body:h=>h.statements[0].members}],d=[];for(let{parse:h,body:b}of u){let R=h(),N=b(R);if(N.length&&R.parseDiagnostics.length===0)return N;N.length&&d.push({sourceFile:R,body:N})}let{body:I}=d.sort((h,b)=>h.sourceFile.parseDiagnostics.length-b.sourceFile.parseDiagnostics.length)[0];return I}function gas(n,c,u,d){nC(u[0])||Rx(u[0])?Aas(n,c,u,d):das(n,c,u,d)}function Aas(n,c,u,d){let I;if(!d||!d.length?I=be(n.statements,fg(va,XI)):I=X(d,b=>Si(Hc(n,b.start),fg(va,XI))),!I)return;let h=I.members.find(b=>u.some(R=>eZe(R,b)));if(h){let b=Te(I.members,R=>u.some(N=>eZe(N,R)));X(u,mqe),c.replaceNodeRangeWithNodes(n,h,b,u);return}X(u,mqe),c.insertNodesAfter(n,I.members[I.members.length-1],u)}function das(n,c,u,d){if(!d?.length){c.insertNodesAtEndOfFile(n,u,!1);return}for(let h of d){let b=Si(Hc(n,h.start),R=>fg(hc,Fc)(R)&&lr(R.statements,N=>u.some(V=>eZe(V,N))));if(b){let R=b.statements.find(N=>u.some(V=>eZe(V,N)));if(R){let N=Te(b.statements,V=>u.some(P=>eZe(P,V)));X(u,mqe),c.replaceNodeRangeWithNodes(n,R,N,u);return}}}let I=n.statements;for(let h of d){let b=Si(Hc(n,h.start),hc);if(b){I=b.statements;break}}X(u,mqe),c.insertNodesAfter(n,I[I.length-1],u)}function eZe(n,c){var u,d,I,h,b,R;return n.kind!==c.kind?!1:n.kind===176?n.kind===c.kind:wf(n)&&wf(c)?n.name.getText()===c.name.getText():X0(n)&&X0(c)||FZ(n)&&FZ(c)?n.expression.getText()===c.expression.getText():FB(n)&&FB(c)?((u=n.initializer)==null?void 0:u.getText())===((d=c.initializer)==null?void 0:d.getText())&&((I=n.incrementor)==null?void 0:I.getText())===((h=c.incrementor)==null?void 0:h.getText())&&((b=n.condition)==null?void 0:b.getText())===((R=c.condition)==null?void 0:R.getText()):bZ(n)&&bZ(c)?n.expression.getText()===c.expression.getText()&&n.initializer.getText()===c.initializer.getText():iC(n)&&iC(c)?n.label.getText()===c.label.getText():n.getText()===c.getText()}function mqe(n){sMr(n),n.parent=void 0}function sMr(n){n.pos=-1,n.end=-1,n.forEachChild(sMr)}var bP={};o(bP,{compareImportsOrRequireStatements:()=>IVt,compareModuleSpecifiers:()=>xas,getDetectionLists:()=>hqe,getImportDeclarationInsertionIndex:()=>Tas,getImportSpecifierInsertionIndex:()=>Nas,getNamedImportSpecifierComparerWithDetection:()=>was,getOrganizeImportsStringComparerWithDetection:()=>Sas,organizeImports:()=>pas,testCoalesceExports:()=>Das,testCoalesceImports:()=>Ras});function pas(n,c,u,d,I,h){let b=Ao.ChangeTracker.fromContext({host:u,formatContext:c,preferences:I}),R=h==="SortAndCombine"||h==="All",N=R,V=h==="RemoveUnused"||h==="All",P=n.statements.filter(hI),Q=uVt(n,P),{comparersToTest:te,typeOrdersToTest:re}=hqe(I),ue=te[0],Ae={moduleSpecifierComparer:typeof I.organizeImportsIgnoreCase=="boolean"?ue:void 0,namedImportComparer:typeof I.organizeImportsIgnoreCase=="boolean"?ue:void 0,typeOrder:I.organizeImportsTypeOrder};if(typeof I.organizeImportsIgnoreCase!="boolean"&&({comparer:Ae.moduleSpecifierComparer}=cMr(Q,te)),!Ae.typeOrder||typeof I.organizeImportsIgnoreCase!="boolean"){let Ne=pVt(P,te,re);if(Ne){let{namedImportComparer:Me,typeOrder:De}=Ne;Ae.namedImportComparer=Ae.namedImportComparer??Me,Ae.typeOrder=Ae.typeOrder??De}}Q.forEach(Ne=>Be(Ne,Ae)),h!=="RemoveUnused"&&Ias(n).forEach(Ne=>Fe(Ne,Ae.namedImportComparer));for(let Ne of n.statements.filter(Yf)){if(!Ne.body)continue;if(uVt(n,Ne.body.statements.filter(hI)).forEach(De=>Be(De,Ae)),h!=="RemoveUnused"){let De=Ne.body.statements.filter(hC);Fe(De,Ae.namedImportComparer)}}return b.getChanges();function de(Ne,Me){if(O(Ne)===0)return;ao(Ne[0],1024);let De=N?Xl(Ne,je=>tZe(je.moduleSpecifier)):[Ne],lt=R?ml(De,(je,st)=>AVt(je[0].moduleSpecifier,st[0].moduleSpecifier,Ae.moduleSpecifierComparer??ue)):De,Le=Fr(lt,je=>tZe(je[0].moduleSpecifier)||je[0].moduleSpecifier===void 0?Me(je):je);if(Le.length===0)b.deleteNodes(n,Ne,{leadingTriviaOption:Ao.LeadingTriviaOption.Exclude,trailingTriviaOption:Ao.TrailingTriviaOption.Include},!0);else{let je={leadingTriviaOption:Ao.LeadingTriviaOption.Exclude,trailingTriviaOption:Ao.TrailingTriviaOption.Include,suffix:PZ(u,c.options)};b.replaceNodeWithNodes(n,Ne[0],Le,je);let st=b.nodeHasTrailingComment(n,Ne[0],je);b.deleteNodes(n,Ne.slice(1),{trailingTriviaOption:Ao.TrailingTriviaOption.Include},st)}}function Be(Ne,Me){let De=Me.moduleSpecifierComparer??ue,lt=Me.namedImportComparer??ue,Le=Me.typeOrder??"last",je=_0e({organizeImportsTypeOrder:Le},lt);de(Ne,nt=>(V&&(nt=Cas(nt,n,d)),N&&(nt=oMr(nt,De,je,n)),R&&(nt=ml(nt,(qe,it)=>IVt(qe,it,De))),nt))}function Fe(Ne,Me){let De=_0e(I,Me);de(Ne,lt=>aMr(lt,De))}}function hqe(n){return{comparersToTest:typeof n.organizeImportsIgnoreCase=="boolean"?[fVt(n,n.organizeImportsIgnoreCase)]:[fVt(n,!0),fVt(n,!1)],typeOrdersToTest:n.organizeImportsTypeOrder?[n.organizeImportsTypeOrder]:["last","inline","first"]}}function uVt(n,c){let u=Ft(n.languageVersion,!1,n.languageVariant),d=[],I=0;for(let h of c)d[I]&&fas(n,h,u)&&I++,d[I]||(d[I]=[]),d[I].push(h);return d}function fas(n,c,u){let d=c.getFullStart(),I=c.getStart();u.setText(n.text,d,I-d);let h=0;for(;u.getTokenStart()=2))return!0;return!1}function Ias(n){let c=[],u=n.statements,d=O(u),I=0,h=0;for(;IuVt(n,b))}function Cas(n,c,u){let d=u.getTypeChecker(),I=u.getCompilerOptions(),h=d.getJsxNamespace(c),b=d.getJsxFragmentFactory(c),R=!!(c.transformFlags&2),N=[];for(let P of n){let{importClause:Q,moduleSpecifier:te}=P;if(!Q){N.push(P);continue}let{name:re,namedBindings:ue}=Q;if(re&&!V(re)&&(re=void 0),ue)if(Xx(ue))V(ue.name)||(ue=void 0);else{let Ae=ue.elements.filter(de=>V(de.name));Ae.length{if(b.attributes){let R=b.attributes.token+" ";for(let N of mg(b.attributes.elements,(V,P)=>Ro(V.name.text,P.name.text)))R+=N.name.text+":",R+=JA(N.value)?`"${N.value.text}"`:N.value.getText()+" ";return R}return""}),h=[];for(let b in I){let R=I[b],{importWithoutClause:N,typeOnlyImports:V,regularImports:P}=mas(R);N&&h.push(N);for(let Q of[P,V]){let te=Q===V,{defaultImports:re,namespaceImports:ue,namedImports:Ae}=Q;if(!te&&re.length===1&&ue.length===1&&Ae.length===0){let je=re[0];h.push(h0e(je,je.importClause.name,ue[0].importClause.namedBindings));continue}let de=ml(ue,(je,st)=>c(je.importClause.namedBindings.name.text,st.importClause.namedBindings.name.text));for(let je of de)h.push(h0e(je,void 0,je.importClause.namedBindings));let Be=$i(re),Fe=$i(Ae),Ne=Be??Fe;if(!Ne)continue;let Me,De=[];if(re.length===1)Me=re[0].importClause.name;else for(let je of re)De.push(_e.createImportSpecifier(!1,_e.createIdentifier("default"),je.importClause.name));De.push(...yas(Ae));let lt=_e.createNodeArray(ml(De,u),Fe?.importClause.namedBindings.elements.hasTrailingComma),Le=lt.length===0?Me?void 0:_e.createNamedImports(v):Fe?_e.updateNamedImports(Fe.importClause.namedBindings,lt):_e.createNamedImports(lt);d&&Le&&Fe?.importClause.namedBindings&&!RZ(Fe.importClause.namedBindings,d)&&ao(Le,2),te&&Me&&Le?(h.push(h0e(Ne,Me,void 0)),h.push(h0e(Fe??Ne,void 0,Le))):h.push(h0e(Ne,Me,Le))}}return h}function aMr(n,c){if(n.length===0)return n;let{exportWithoutClause:u,namedExports:d,typeOnlyExports:I}=b(n),h=[];u&&h.push(u);for(let R of[d,I]){if(R.length===0)continue;let N=[];N.push(...Fr(R,Q=>Q.exportClause&&ZB(Q.exportClause)?Q.exportClause.elements:v));let V=ml(N,c),P=R[0];h.push(_e.updateExportDeclaration(P,P.modifiers,P.isTypeOnly,P.exportClause&&(ZB(P.exportClause)?_e.updateNamedExports(P.exportClause,V):_e.updateNamespaceExport(P.exportClause,P.exportClause.name)),P.moduleSpecifier,P.attributes))}return h;function b(R){let N,V=[],P=[];for(let Q of R)Q.exportClause===void 0?N=N||Q:Q.isTypeOnly?P.push(Q):V.push(Q);return{exportWithoutClause:N,namedExports:V,typeOnlyExports:P}}}function h0e(n,c,u){return _e.updateImportDeclaration(n,n.modifiers,_e.updateImportClause(n.importClause,n.importClause.isTypeOnly,c,u),n.moduleSpecifier,n.attributes)}function gVt(n,c,u,d){switch(d?.organizeImportsTypeOrder){case"first":return DA(c.isTypeOnly,n.isTypeOnly)||u(n.name.text,c.name.text);case"inline":return u(n.name.text,c.name.text);default:return DA(n.isTypeOnly,c.isTypeOnly)||u(n.name.text,c.name.text)}}function AVt(n,c,u){let d=n===void 0?void 0:tZe(n),I=c===void 0?void 0:tZe(c);return DA(d===void 0,I===void 0)||DA(Ul(d),Ul(I))||u(d,I)}function has(n){return n.map(c=>tZe(dVt(c))||"")}function dVt(n){var c;switch(n.kind){case 271:return(c=$s(n.moduleReference,ZG))==null?void 0:c.expression;case 272:return n.moduleSpecifier;case 243:return n.declarationList.declarations[0].initializer.arguments[0]}}function _as(n,c){let u=Eu(c)&&c.text;return Ya(u)&&lr(n.moduleAugmentations,d=>Eu(d)&&d.text===u)}function yas(n){return Fr(n,c=>Ot(bas(c),u=>u.name&&u.propertyName&&u.name.escapedText===u.propertyName.escapedText?_e.updateImportSpecifier(u,u.isTypeOnly,void 0,u.name):u))}function bas(n){var c;return(c=n.importClause)!=null&&c.namedBindings&&TN(n.importClause.namedBindings)?n.importClause.namedBindings.elements:void 0}function cMr(n,c){let u=[];return n.forEach(d=>{u.push(has(d))}),uMr(u,c)}function pVt(n,c,u){let d=!1,I=n.filter(N=>{var V,P;let Q=(P=$s((V=N.importClause)==null?void 0:V.namedBindings,TN))==null?void 0:P.elements;return Q?.length?(!d&&Q.some(te=>te.isTypeOnly)&&Q.some(te=>!te.isTypeOnly)&&(d=!0),!0):!1});if(I.length===0)return;let h=I.map(N=>{var V,P;return(P=$s((V=N.importClause)==null?void 0:V.namedBindings,TN))==null?void 0:P.elements}).filter(N=>N!==void 0);if(!d||u.length===0){let N=uMr(h.map(V=>V.map(P=>P.name.text)),c);return{namedImportComparer:N.comparer,typeOrder:u.length===1?u[0]:void 0,isSorted:N.isSorted}}let b={first:1/0,last:1/0,inline:1/0},R={first:c[0],last:c[0],inline:c[0]};for(let N of c){let V={first:0,last:0,inline:0};for(let P of h)for(let Q of u)V[Q]=(V[Q]??0)+lMr(P,(te,re)=>gVt(te,re,N,{organizeImportsTypeOrder:Q}));for(let P of u){let Q=P;V[Q]0&&u++;return u}function uMr(n,c){let u,d=1/0;for(let I of c){let h=0;for(let b of n){if(b.length<=1)continue;let R=lMr(b,I);h+=R}hgVt(d,I,u,n)}function was(n,c,u){let{comparersToTest:d,typeOrdersToTest:I}=hqe(c),h=pVt([n],d,I),b=_0e(c,d[0]),R;if(typeof c.organizeImportsIgnoreCase!="boolean"||!c.organizeImportsTypeOrder){if(h){let{namedImportComparer:N,typeOrder:V,isSorted:P}=h;R=P,b=_0e({organizeImportsTypeOrder:V},N)}else if(u){let N=pVt(u.statements.filter(hI),d,I);if(N){let{namedImportComparer:V,typeOrder:P,isSorted:Q}=N;R=Q,b=_0e({organizeImportsTypeOrder:P},V)}}}return{specifierComparer:b,isSorted:R}}function Tas(n,c,u){let d=Vg(n,c,vl,(I,h)=>IVt(I,h,u));return d<0?~d:d}function Nas(n,c,u){let d=Vg(n,c,vl,u);return d<0?~d:d}function IVt(n,c,u){return AVt(dVt(n),dVt(c),u)||Eas(n,c)}function Ras(n,c,u,d){let I=rZe(c),h=_0e({organizeImportsTypeOrder:d?.organizeImportsTypeOrder},I);return oMr(n,I,h,u)}function Das(n,c,u){return aMr(n,(I,h)=>gVt(I,h,rZe(c),{organizeImportsTypeOrder:u?.organizeImportsTypeOrder??"last"}))}function xas(n,c,u){let d=rZe(!!u);return AVt(n,c,d)}var _qe={};o(_qe,{collectElements:()=>kas});function kas(n,c){let u=[];return Gas(n,c,u),Fas(n,u),u.sort((d,I)=>d.textSpan.start-I.textSpan.start)}function Gas(n,c,u){let d=40,I=0,h=[...n.statements,n.endOfFileToken],b=h.length;for(;I1&&d.push(nZe(h,b,"comment"))}}function dMr(n,c,u,d){aM(n)||CVt(n.pos,c,u,d)}function nZe(n,c,u){return p7(Pd(n,c),u)}function Las(n,c){switch(n.kind){case 241:if(eu(n.parent))return Vas(n.parent,n,c);switch(n.parent.kind){case 246:case 249:case 250:case 248:case 245:case 247:case 254:case 299:return P(n.parent);case 258:let re=n.parent;if(re.tryBlock===n)return P(n.parent);if(re.finallyBlock===n){let ue=Qd(re,98,c);if(ue)return P(ue)}default:return p7(By(n,c),"code")}case 268:return P(n.parent);case 263:case 231:case 264:case 266:case 269:case 187:case 206:return P(n);case 189:return P(n,!1,!Ct(n.parent),23);case 296:case 297:return Q(n.statements);case 210:return V(n);case 209:return V(n,23);case 284:return h(n);case 288:return b(n);case 285:case 286:return R(n.attributes);case 228:case 15:return N(n);case 207:return P(n,!1,!hl(n.parent),23);case 219:return I(n);case 213:return d(n);case 217:return te(n);case 275:case 279:case 300:return u(n)}function u(re){if(!re.elements.length)return;let ue=Qd(re,19,c),Ae=Qd(re,20,c);if(!(!ue||!Ae||L1(ue.pos,Ae.pos,c)))return yqe(ue,Ae,re,c,!1,!1)}function d(re){if(!re.arguments.length)return;let ue=Qd(re,21,c),Ae=Qd(re,22,c);if(!(!ue||!Ae||L1(ue.pos,Ae.pos,c)))return yqe(ue,Ae,re,c,!1,!0)}function I(re){if(hc(re.body)||ZC(re.body)||L1(re.body.getFullStart(),re.body.getEnd(),c))return;let ue=Pd(re.body.getFullStart(),re.body.getEnd());return p7(ue,"code",By(re))}function h(re){let ue=Pd(re.openingElement.getStart(c),re.closingElement.getEnd()),Ae=re.openingElement.tagName.getText(c),de="<"+Ae+">...";return p7(ue,"code",ue,!1,de)}function b(re){let ue=Pd(re.openingFragment.getStart(c),re.closingFragment.getEnd());return p7(ue,"code",ue,!1,"<>...")}function R(re){if(re.properties.length!==0)return nZe(re.getStart(c),re.getEnd(),"code")}function N(re){if(!(re.kind===15&&re.text.length===0))return nZe(re.getStart(c),re.getEnd(),"code")}function V(re,ue=19){return P(re,!1,!Cf(re.parent)&&!lu(re.parent),ue)}function P(re,ue=!1,Ae=!0,de=19,Be=de===19?20:24){let Fe=Qd(n,de,c),Ne=Qd(n,Be,c);return Fe&&Ne&&yqe(Fe,Ne,re,c,ue,Ae)}function Q(re){return re.length?p7(NV(re),"code"):void 0}function te(re){if(L1(re.getStart(),re.getEnd(),c))return;let ue=Pd(re.getStart(),re.getEnd());return p7(ue,"code",By(re))}}function Vas(n,c,u){let d=Was(n,c,u),I=Qd(c,20,u);return d&&I&&yqe(d,I,n,u,n.kind!==219)}function yqe(n,c,u,d,I=!1,h=!0){let b=Pd(h?n.getFullStart():n.getStart(d),c.getEnd());return p7(b,"code",By(u,d),I)}function p7(n,c,u=n,d=!1,I="..."){return{textSpan:n,kind:c,hintSpan:u,bannerText:I,autoCollapse:d}}function Was(n,c,u){if(Jme(n.parameters,u)){let d=Qd(n,21,u);if(d)return d}return Qd(c,19,u)}var iZe={};o(iZe,{getRenameInfo:()=>Pas,nodeIsEligibleForRename:()=>fMr});function Pas(n,c,u,d){let I=VGe(ub(c,u));if(fMr(I)){let h=Oas(I,n.getTypeChecker(),c,n,d);if(h)return h}return bqe(Z.You_cannot_rename_this_element)}function Oas(n,c,u,d,I){let h=c.getSymbolAtLocation(n);if(!h){if(JA(n)){let te=LGe(n,c);if(te&&(te.flags&128||te.flags&1048576&&he(te.types,re=>!!(re.flags&128))))return mVt(n.text,n.text,"string","",n,u)}else if(V7e(n)){let te=Nf(n);return mVt(te,te,"label","",n,u)}return}let{declarations:b}=h;if(!b||b.length===0)return;if(b.some(te=>Qas(d,te)))return bqe(Z.You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library);if(sr(n)&&n.escapedText==="default"&&h.parent&&h.parent.flags&1536)return;if(JA(n)&&gee(n))return I.allowRenameOfImportPath?Has(n,u,h):void 0;let R=Mas(u,h,c,I);if(R)return bqe(R);let N=MZ.getSymbolKind(c,h,n),V=JGt(n)||ZE(n)&&n.parent.kind===167?R2(N2(n)):void 0,P=V||c.symbolToString(h),Q=V||c.getFullyQualifiedName(h);return mVt(P,Q,N,MZ.getSymbolModifiers(c,h),n,u)}function Qas(n,c){let u=c.getSourceFile();return n.isSourceFileDefaultLibrary(u)&&Ad(u.fileName,".d.ts")}function Mas(n,c,u,d){if(!d.providePrefixAndSuffixTextForRename&&c.flags&2097152){let b=c.declarations&&be(c.declarations,R=>yy(R));b&&!b.propertyName&&(c=u.getAliasedSymbol(c))}let{declarations:I}=c;if(!I)return;let h=pMr(n.path);if(h===void 0)return lr(I,b=>q_e(b.getSourceFile().path))?Z.You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder:void 0;for(let b of I){let R=pMr(b.getSourceFile().path);if(R){let N=Math.min(h.length,R.length);for(let V=0;V<=N;V++)if(Ro(h[V],R[V])!==0)return Z.You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder}}}function pMr(n){let c=dd(n),u=c.lastIndexOf("node_modules");if(u!==-1)return c.slice(0,u+2)}function Has(n,c,u){if(!Ul(n.text))return bqe(Z.You_cannot_rename_a_module_via_a_global_import);let d=u.declarations&&be(u.declarations,Fc);if(!d)return;let I=fl(n.text,"/index")||fl(n.text,"/index.js")?void 0:I1(a0(d.fileName),"/index"),h=I===void 0?d.fileName:I,b=I===void 0?"module":"directory",R=n.text.lastIndexOf("/")+1,N=Ed(n.getStart(c)+1+R,n.text.length-R);return{canRename:!0,fileToRename:h,kind:b,displayName:h,fullDisplayName:n.text,kindModifiers:"",triggerSpan:N}}function mVt(n,c,u,d,I,h){return{canRename:!0,fileToRename:void 0,kind:u,displayName:n,fullDisplayName:c,kindModifiers:d,triggerSpan:Yas(I,h)}}function bqe(n){return{canRename:!1,localizedErrorMessage:tu(n)}}function Yas(n,c){let u=n.getStart(c),d=n.getWidth(c);return JA(n)&&(u+=1,d-=2),Ed(u,d)}function fMr(n){switch(n.kind){case 80:case 81:case 11:case 15:case 110:return!0;case 9:return kGe(n);default:return!1}}var y0e={};o(y0e,{getArgumentInfoForCompletions:()=>jas,getSignatureHelpItems:()=>Xas});function Xas(n,c,u,d,I){let h=n.getTypeChecker(),b=WGe(c,u);if(!b)return;let R=!!d&&d.kind==="characterTyped";if(R&&(e7(c,u,b)||VZ(c,u)))return;let N=!!d&&d.kind==="invoked",V=lcs(b,u,c,h,N);if(!V)return;I.throwIfCancellationRequested();let P=Jas(V,h,c,b,R);return I.throwIfCancellationRequested(),P?h.runWithCancellationToken(I,Q=>P.kind===0?EMr(P.candidates,P.resolvedSignature,V,c,Q):gcs(P.symbol,V,c,Q)):i0(c)?Kas(V,n,I):void 0}function Jas({invocation:n,argumentCount:c},u,d,I,h){switch(n.kind){case 0:{if(h&&!Uas(I,n.node,d))return;let b=[],R=u.getResolvedSignatureForSignatureHelp(n.node,b,c);return b.length===0?void 0:{kind:0,candidates:b,resolvedSignature:R}}case 1:{let{called:b}=n;if(h&&!IMr(I,d,sr(b)?b.parent:b))return;let R=U7e(b,c,u);if(R.length!==0)return{kind:0,candidates:R,resolvedSignature:qs(R)};let N=u.getSymbolAtLocation(b);return N&&{kind:1,symbol:N}}case 2:return{kind:0,candidates:[n.signature],resolvedSignature:n.signature};default:return w.assertNever(n)}}function Uas(n,c,u){if(!SB(c))return!1;let d=c.getChildren(u);switch(n.kind){case 21:return Ue(d,n);case 28:{let I=ZGe(n);return!!I&&Ue(d,I)}case 30:return IMr(n,u,c.expression);default:return!1}}function Kas(n,c,u){if(n.invocation.kind===2)return;let d=yMr(n.invocation),I=fo(d)?d.name.text:void 0,h=c.getTypeChecker();return I===void 0?void 0:le(c.getSourceFiles(),b=>le(b.getNamedDeclarations().get(I),R=>{let N=R.symbol&&h.getTypeOfSymbolAtLocation(R.symbol,R),V=N&&N.getCallSignatures();if(V&&V.length)return h.runWithCancellationToken(u,P=>EMr(V,V[0],n,b,P,!0))}))}function IMr(n,c,u){let d=n.getFullStart(),I=n.parent;for(;I;){let h=ym(d,c,I,!0);if(h)return W2(u,h);I=I.parent}return w.fail("Could not find preceding token")}function jas(n,c,u,d){let I=mMr(n,c,u,d);return!I||I.isTypeParameterList||I.invocation.kind!==0?void 0:{invocation:I.invocation.node,argumentCount:I.argumentCount,argumentIndex:I.argumentIndex}}function CMr(n,c,u,d){let I=zas(n,u,d);if(!I)return;let{list:h,argumentIndex:b}=I,R=scs(d,h);b!==0&&w.assertLessThan(b,R);let N=acs(h,u);return{list:h,argumentIndex:b,argumentCount:R,argumentsSpan:N}}function zas(n,c,u){if(n.kind===30||n.kind===21)return{list:ucs(n.parent,n,c),argumentIndex:0};{let d=ZGe(n);return d&&{list:d,argumentIndex:ics(u,d,n)}}}function mMr(n,c,u,d){let{parent:I}=n;if(SB(I)){let h=I,b=CMr(n,c,u,d);if(!b)return;let{list:R,argumentIndex:N,argumentCount:V,argumentsSpan:P}=b;return{isTypeParameterList:!!I.typeArguments&&I.typeArguments.pos===R.pos,invocation:{kind:0,node:h},argumentsSpan:P,argumentIndex:N,argumentCount:V}}else{if(cM(n)&&W1(I))return O_e(n,c,u)?_Vt(I,0,u):void 0;if(lM(n)&&I.parent.kind===215){let h=I,b=h.parent;w.assert(h.kind===228);let R=O_e(n,c,u)?0:1;return _Vt(b,R,u)}else if(Hb(I)&&W1(I.parent.parent)){let h=I,b=I.parent.parent;if(Wle(n)&&!O_e(n,c,u))return;let R=h.parent.templateSpans.indexOf(h),N=ocs(R,n,c,u);return _Vt(b,N,u)}else if(Um(I)){let h=I.attributes.pos,b=Uu(u.text,I.attributes.end,!1);return{isTypeParameterList:!1,invocation:{kind:0,node:I},argumentsSpan:Ed(h,b-h),argumentIndex:0,argumentCount:1}}else{let h=K7e(n,u);if(h){let{called:b,nTypeArguments:R}=h,N={kind:1,called:b},V=Pd(b.getStart(u),n.end);return{isTypeParameterList:!0,invocation:N,argumentsSpan:V,argumentIndex:R,argumentCount:R+1}}return}}}function qas(n,c,u,d){return $as(n,c,u,d)||mMr(n,c,u,d)}function hMr(n){return ro(n.parent)?hMr(n.parent):n}function hVt(n){return ro(n.left)?hVt(n.left)+1:2}function $as(n,c,u,d){let I=ecs(n);if(I===void 0)return;let h=tcs(I,u,c,d);if(h===void 0)return;let{contextualType:b,argumentIndex:R,argumentCount:N,argumentsSpan:V}=h,P=b.getNonNullableType(),Q=P.symbol;if(Q===void 0)return;let te=zo(P.getCallSignatures());return te===void 0?void 0:{isTypeParameterList:!1,invocation:{kind:2,signature:te,node:n,symbol:rcs(Q)},argumentsSpan:V,argumentIndex:R,argumentCount:N}}function ecs(n){switch(n.kind){case 21:case 28:return n;default:return Si(n.parent,c=>Uc(c)?!0:hl(c)||Wg(c)||Wu(c)?!1:"quit")}}function tcs(n,c,u,d){let{parent:I}=n;switch(I.kind){case 217:case 174:case 218:case 219:let h=CMr(n,u,c,d);if(!h)return;let{argumentIndex:b,argumentCount:R,argumentsSpan:N}=h,V=lI(I)?d.getContextualTypeForObjectLiteralElement(I):d.getContextualType(I);return V&&{contextualType:V,argumentIndex:b,argumentCount:R,argumentsSpan:N};case 226:{let P=hMr(I),Q=d.getContextualType(P),te=n.kind===21?0:hVt(I)-1,re=hVt(P);return Q&&{contextualType:Q,argumentIndex:te,argumentCount:re,argumentsSpan:By(I)}}default:return}}function rcs(n){return n.name==="__type"&&le(n.declarations,c=>{var u;return H(c)?(u=$s(c.parent,v2))==null?void 0:u.symbol:void 0})||n}function ncs(n,c){let u=c.getTypeAtLocation(n.expression);if(c.isTupleType(u)){let{elementFlags:d,fixedLength:I}=u.target;if(I===0)return 0;let h=ke(d,b=>!(b&1));return h<0?I:h}return 0}function ics(n,c,u){return _Mr(n,c,u)}function scs(n,c){return _Mr(n,c,void 0)}function _Mr(n,c,u){let d=c.getChildren(),I=0,h=!1;for(let b of d){if(u&&b===u)return!h&&b.kind===28&&I++,I;if(fh(b)){I+=ncs(b,n),h=!0;continue}if(b.kind!==28){I++,h=!0;continue}if(h){h=!1;continue}I++}return u?I:d.length&&Ta(d).kind===28?I+1:I}function ocs(n,c,u,d){return w.assert(u>=c.getStart(),"Assumed 'position' could not occur before node."),Oae(c)?O_e(c,u,d)?0:n+2:n+1}function _Vt(n,c,u){let d=cM(n.template)?1:n.template.templateSpans.length+1;return c!==0&&w.assertLessThan(c,d),{isTypeParameterList:!1,invocation:{kind:0,node:n},argumentsSpan:ccs(n,u),argumentIndex:c,argumentCount:d}}function acs(n,c){let u=n.getFullStart(),d=Uu(c.text,n.getEnd(),!1);return Ed(u,d-u)}function ccs(n,c){let u=n.template,d=u.getStart(),I=u.getEnd();return u.kind===228&&Ta(u.templateSpans).literal.getFullWidth()===0&&(I=Uu(c.text,I,!1)),Ed(d,I-d)}function lcs(n,c,u,d,I){for(let h=n;!Fc(h)&&(I||!hc(h));h=h.parent){w.assert(W2(h.parent,h),"Not a subspan",()=>`Child: ${w.formatSyntaxKind(h.kind)}, parent: ${w.formatSyntaxKind(h.parent.kind)}`);let b=qas(h,c,u,d);if(b)return b}}function ucs(n,c,u){let d=n.getChildren(u),I=d.indexOf(c);return w.assert(I>=0&&d.length>I+1),d[I+1]}function yMr(n){return n.kind===0?P8(n.node):n.called}function bMr(n){return n.kind===0?n.node:n.kind===1?n.called:n.node}var sZe=70246400;function EMr(n,c,{isTypeParameterList:u,argumentCount:d,argumentsSpan:I,invocation:h,argumentIndex:b},R,N,V){var P;let Q=bMr(h),te=h.kind===2?h.symbol:N.getSymbolAtLocation(yMr(h))||V&&((P=c.declaration)==null?void 0:P.symbol),re=te?Due(N,te,V?R:void 0,void 0):v,ue=Ot(n,Ne=>dcs(Ne,re,u,N,Q,R));b!==0&&w.assertLessThan(b,d);let Ae=0,de=0;for(let Ne=0;Ne1)){let De=0;for(let lt of Me){if(lt.isVariadic||lt.parameters.length>=d){Ae=de+De;break}De++}}de+=Me.length}w.assert(Ae!==-1);let Be={items:$r(ue,vl),applicableSpan:I,selectedItemIndex:Ae,argumentIndex:b,argumentCount:d},Fe=Be.items[Ae];if(Fe.isVariadic){let Ne=ke(Fe.parameters,Me=>!!Me.isRest);-1vMr(Q,u,d,I,b)),N=n.getDocumentationComment(u),V=n.getJsDocTags(u);return{isVariadic:!1,prefixDisplayParts:[...h,d0(30)],suffixDisplayParts:[d0(32)],separatorDisplayParts:BMr,parameters:R,documentation:N,tags:V}}var BMr=[d0(28),xI()];function dcs(n,c,u,d,I,h){let b=(u?fcs:Ics)(n,d,I,h);return Ot(b,({isVariadic:R,parameters:N,prefix:V,suffix:P})=>{let Q=[...c,...V],te=[...P,...pcs(n,I,d)],re=n.getDocumentationComment(d),ue=n.getJsDocTags();return{isVariadic:R,prefixDisplayParts:Q,suffixDisplayParts:te,separatorDisplayParts:BMr,parameters:N,documentation:re,tags:ue}})}function pcs(n,c,u){return DV(d=>{d.writePunctuation(":"),d.writeSpace(" ");let I=u.getTypePredicateOfSignature(n);I?u.writeTypePredicate(I,c,void 0,d):u.writeType(u.getReturnTypeOfSignature(n),c,void 0,d)})}function fcs(n,c,u,d){let I=(n.target||n).typeParameters,h=b4(),b=(I||v).map(N=>vMr(N,c,u,d,h)),R=n.thisParameter?[c.symbolToParameterDeclaration(n.thisParameter,u,sZe)]:[];return c.getExpandedParameters(n).map(N=>{let V=_e.createNodeArray([...R,...Ot(N,Q=>c.symbolToParameterDeclaration(Q,u,sZe))]),P=DV(Q=>{h.writeList(2576,V,d,Q)});return{isVariadic:!1,parameters:b,prefix:[d0(30)],suffix:[d0(32),...P]}})}function Ics(n,c,u,d){let I=b4(),h=DV(N=>{if(n.typeParameters&&n.typeParameters.length){let V=_e.createNodeArray(n.typeParameters.map(P=>c.typeParameterToDeclaration(P,u,sZe)));I.writeList(53776,V,d,N)}}),b=c.getExpandedParameters(n),R=c.hasEffectiveRestParameter(n)?b.length===1?N=>!0:N=>{var V;return!!(N.length&&((V=$s(N[N.length-1],wB))==null?void 0:V.links.checkFlags)&32768)}:N=>!1;return b.map(N=>({isVariadic:R(N),parameters:N.map(V=>Ccs(V,c,u,d,I)),prefix:[...h,d0(21)],suffix:[d0(22)]}))}function Ccs(n,c,u,d,I){let h=DV(N=>{let V=c.symbolToParameterDeclaration(n,u,sZe);I.writeNode(4,V,d,N)}),b=c.isOptionalParameter(n.valueDeclaration),R=wB(n)&&!!(n.links.checkFlags&32768);return{name:n.name,documentation:n.getDocumentationComment(c),displayParts:h,isOptional:b,isRest:R}}function vMr(n,c,u,d,I){let h=DV(b=>{let R=c.typeParameterToDeclaration(n,u,sZe);I.writeNode(4,R,d,b)});return{name:n.symbol.name,documentation:n.symbol.getDocumentationComment(c),displayParts:h,isOptional:!1,isRest:!1}}var Eqe={};o(Eqe,{getSmartSelectionRange:()=>mcs});function mcs(n,c){var u,d;let I={textSpan:Pd(c.getFullStart(),c.getEnd())},h=c;e:for(;;){let N=ycs(h);if(!N.length)break;for(let V=0;Vn)break e;let re=Tu(h2(c.text,Q.end));if(re&&re.kind===2&&R(re.pos,re.end),hcs(c,n,Q)){if(EX(Q)&&pd(h)&&!L1(Q.getStart(c),Q.getEnd(),c)&&b(Q.getStart(c),Q.getEnd()),hc(Q)||Hb(Q)||lM(Q)||Wle(Q)||P&&lM(P)||bl(Q)&&Dp(h)||pte(Q)&&bl(h)||js(Q)&&pte(h)&&N.length===1||sP(Q)||LG(Q)||f4(Q)){h=Q;break}if(Hb(h)&&te&&I8(te)){let Be=Q.getFullStart()-2,Fe=te.getStart()+1;b(Be,Fe)}let ue=pte(Q)&&bcs(P)&&Ecs(te)&&!L1(P.getStart(),te.getStart(),c),Ae=ue?P.getEnd():Q.getStart(),de=ue?te.getStart():Bcs(c,Q);if(_y(Q)&&((u=Q.jsDoc)!=null&&u.length)&&b(qs(Q.jsDoc).getStart(),de),pte(Q)){let Be=Q.getChildren()[0];Be&&_y(Be)&&((d=Be.jsDoc)!=null&&d.length)&&Be.getStart()!==Q.pos&&(Ae=Math.min(Ae,qs(Be.jsDoc).getStart()))}b(Ae,de),(Eu(Q)||k1(Q))&&b(Ae+1,de-1),h=Q;break}if(V===N.length-1)break e}}return I;function b(N,V){if(N!==V){let P=Pd(N,V);(!I||!Pte(P,I.textSpan)&&hy(P,n))&&(I={textSpan:P,...I&&{parent:I}})}}function R(N,V){b(N,V);let P=N;for(;c.text.charCodeAt(P)===47;)P++;b(P,V)}}function hcs(n,c,u){return w.assert(u.pos<=c),cR===n.readonlyToken||R.kind===148||R===n.questionToken||R.kind===58),b=b0e(h,({kind:R})=>R===23||R===168||R===24);return[u,E0e(Bqe(b,({kind:R})=>R===59)),I]}if(i_(n)){let u=b0e(n.getChildren(),b=>b===n.name||Ue(n.modifiers,b)),d=((c=u[0])==null?void 0:c.kind)===320?u[0]:void 0,I=d?u.slice(1):u,h=Bqe(I,({kind:b})=>b===59);return d?[d,E0e(h)]:h}if(Uc(n)){let u=b0e(n.getChildren(),I=>I===n.dotDotDotToken||I===n.name),d=b0e(u,I=>I===u[0]||I===n.questionToken);return Bqe(d,({kind:I})=>I===64)}return hl(n)?Bqe(n.getChildren(),({kind:u})=>u===64):n.getChildren()}function b0e(n,c){let u=[],d;for(let I of n)c(I)?(d=d||[],d.push(I)):(d&&(u.push(E0e(d)),d=void 0),u.push(I));return d&&u.push(E0e(d)),u}function Bqe(n,c,u=!0){if(n.length<2)return n;let d=ke(n,c);if(d===-1)return n;let I=n.slice(0,d),h=n[d],b=Ta(n),R=u&&b.kind===27,N=n.slice(d+1,R?n.length-1:void 0),V=Vn([I.length?E0e(I):void 0,h,N.length?E0e(N):void 0]);return R?V.concat(b):V}function E0e(n){return w.assertGreaterThanOrEqual(n.length,1),MS(cP.createSyntaxList(n),n[0].pos,Ta(n).end)}function bcs(n){let c=n&&n.kind;return c===19||c===23||c===21||c===286}function Ecs(n){let c=n&&n.kind;return c===20||c===24||c===22||c===287}function Bcs(n,c){switch(c.kind){case 341:case 338:case 348:case 346:case 343:return n.getLineEndOfPosition(c.getStart());default:return c.getEnd()}}var MZ={};o(MZ,{getSymbolDisplayPartsDocumentationAndSymbolKind:()=>Scs,getSymbolKind:()=>wMr,getSymbolModifiers:()=>vcs});var SMr=70246400;function wMr(n,c,u){let d=TMr(n,c,u);if(d!=="")return d;let I=Q5(c);return I&32?qd(c,231)?"local class":"class":I&384?"enum":I&524288?"type":I&64?"interface":I&262144?"type parameter":I&8?"enum member":I&2097152?"alias":I&1536?"module":d}function TMr(n,c,u){let d=n.getRootSymbols(c);if(d.length===1&&qs(d).flags&8192&&n.getTypeOfSymbolAtLocation(c,u).getNonNullableType().getCallSignatures().length!==0)return"method";if(n.isUndefinedSymbol(c))return"var";if(n.isArgumentsSymbol(c))return"local var";if(u.kind===110&&tn(u)||aV(u))return"parameter";let I=Q5(c);if(I&3)return Ije(c)?"parameter":c.valueDeclaration&&Hp(c.valueDeclaration)?"const":c.valueDeclaration&&fd(c.valueDeclaration)?"using":c.valueDeclaration&&Mg(c.valueDeclaration)?"await using":X(c.declarations,aI)?"let":DMr(c)?"local var":"var";if(I&16)return DMr(c)?"local function":"function";if(I&32768)return"getter";if(I&65536)return"setter";if(I&8192)return"method";if(I&16384)return"constructor";if(I&131072)return"index";if(I&4){if(I&33554432&&c.links.checkFlags&6){let h=X(n.getRootSymbols(c),b=>{if(b.getFlags()&98311)return"property"});return h||(n.getTypeOfSymbolAtLocation(c,u).getCallSignatures().length?"method":"property")}return"property"}return""}function NMr(n){if(n.declarations&&n.declarations.length){let[c,...u]=n.declarations,d=O(u)&&dFe(c)&&lr(u,h=>!dFe(h))?65536:0,I=Sue(c,d);if(I)return I.split(",")}return[]}function vcs(n,c){if(!c)return"";let u=new Set(NMr(c));if(c.flags&2097152){let d=n.getAliasedSymbol(c);d!==c&&X(NMr(d),I=>{u.add(I)})}return c.flags&16777216&&u.add("optional"),u.size>0?on(u.values()).join(","):""}function RMr(n,c,u,d,I,h,b,R){var N;let V=[],P=[],Q=[],te=Q5(c),re=b&1?TMr(n,c,I):"",ue=!1,Ae=I.kind===110&&mce(I)||aV(I),de,Be,Fe=!1;if(I.kind===110&&!Ae)return{displayParts:[ME(110)],documentation:[],symbolKind:"primitive type",tags:void 0};if(re!==""||te&32||te&2097152){if(re==="getter"||re==="setter"){let dt=be(c.declarations,Tt=>Tt.name===I);if(dt)switch(dt.kind){case 177:re="getter";break;case 178:re="setter";break;case 172:re="accessor";break;default:w.assertNever(dt)}else re="property"}let it;if(h??(h=Ae?n.getTypeAtLocation(I):n.getTypeOfSymbolAtLocation(c,I)),I.parent&&I.parent.kind===211){let dt=I.parent.name;(dt===I||dt&&dt.getFullWidth()===0)&&(I=I.parent)}let It;if(SB(I)?It=I:(G7e(I)||Bue(I)||I.parent&&(Um(I.parent)||W1(I.parent))&&eu(c.valueDeclaration))&&(It=I.parent),It){it=n.getResolvedSignature(It);let dt=It.kind===214||lu(It)&&It.expression.kind===108,Tt=dt?h.getConstructSignatures():h.getCallSignatures();if(it&&!Ue(Tt,it.target)&&!Ue(Tt,it)&&(it=Tt.length?Tt[0]:void 0),it){switch(dt&&te&32?(re="constructor",je(h.symbol,re)):te&2097152?(re="alias",st(re),V.push(xI()),dt&&(it.flags&4&&(V.push(ME(128)),V.push(xI())),V.push(ME(105)),V.push(xI())),Le(c)):je(c,re),re){case"JSX attribute":case"property":case"var":case"const":case"let":case"parameter":case"local var":V.push(d0(59)),V.push(xI()),!(ia(h)&16)&&h.symbol&&(ai(V,Due(n,h.symbol,d,void 0,5)),V.push(Ote())),dt&&(it.flags&4&&(V.push(ME(128)),V.push(xI())),V.push(ME(105)),V.push(xI())),nt(it,Tt,262144);break;default:nt(it,Tt)}ue=!0,Fe=Tt.length>1}}else if(Q7e(I)&&!(te&98304)||I.kind===137&&I.parent.kind===176){let dt=I.parent;if(c.declarations&&be(c.declarations,St=>St===(I.kind===137?dt.parent:dt))){let St=dt.kind===176?h.getNonNullableType().getConstructSignatures():h.getNonNullableType().getCallSignatures();n.isImplementationOfOverload(dt)?it=St[0]:it=n.getSignatureFromDeclaration(dt),dt.kind===176?(re="constructor",je(h.symbol,re)):je(dt.kind===179&&!(h.symbol.flags&2048||h.symbol.flags&4096)?h.symbol:c,re),it&&nt(it,St),ue=!0,Fe=St.length>1}}}if(te&32&&!ue&&!Ae&&(De(),qd(c,231)?st("local class"):V.push(ME(86)),V.push(xI()),Le(c),qe(c,u)),te&64&&b&2&&(Me(),V.push(ME(120)),V.push(xI()),Le(c),qe(c,u)),te&524288&&b&2&&(Me(),V.push(ME(156)),V.push(xI()),Le(c),qe(c,u),V.push(xI()),V.push(Rue(64)),V.push(xI()),ai(V,J_e(n,I.parent&&B2(I.parent)?n.getTypeAtLocation(I.parent):n.getDeclaredTypeOfSymbol(c),d,8388608))),te&384&&(Me(),lr(c.declarations,it=>iP(it)&&dc(it))&&(V.push(ME(87)),V.push(xI())),V.push(ME(94)),V.push(xI()),Le(c)),te&1536&&!Ae){Me();let it=qd(c,267),It=it&&it.name&&it.name.kind===80;V.push(ME(It?145:144)),V.push(xI()),Le(c)}if(te&262144&&b&2)if(Me(),V.push(d0(21)),V.push(O2("type parameter")),V.push(d0(22)),V.push(xI()),Le(c),c.parent)lt(),Le(c.parent,d),qe(c.parent,d);else{let it=qd(c,168);if(it===void 0)return w.fail();let It=it.parent;if(It)if(eu(It)){lt();let dt=n.getSignatureFromDeclaration(It);It.kind===180?(V.push(ME(105)),V.push(xI())):It.kind!==179&&It.name&&Le(It.symbol),ai(V,hje(n,dt,u,32))}else Pf(It)&&(lt(),V.push(ME(156)),V.push(xI()),Le(It.symbol),qe(It.symbol,u))}if(te&8){re="enum member",je(c,"enum member");let it=(N=c.declarations)==null?void 0:N[0];if(it?.kind===306){let It=n.getConstantValue(it);It!==void 0&&(V.push(xI()),V.push(Rue(64)),V.push(xI()),V.push(Yb(x8(It),typeof It=="number"?7:8)))}}if(c.flags&2097152){if(Me(),!ue||P.length===0&&Q.length===0){let it=n.getAliasedSymbol(c);if(it!==c&&it.declarations&&it.declarations.length>0){let It=it.declarations[0],dt=Sl(It);if(dt&&!ue){let Tt=T5(It)&&ya(It,128),St=c.name!=="default"&&!Tt,He=RMr(n,it,ls(It),d,dt,h,b,St?c:it);V.push(...He.displayParts),V.push(Ote()),de=He.documentation,Be=He.tags}else de=it.getContextualDocumentationComment(It,n),Be=it.getJsDocTags(n)}}if(c.declarations)switch(c.declarations[0].kind){case 270:V.push(ME(95)),V.push(xI()),V.push(ME(145));break;case 277:V.push(ME(95)),V.push(xI()),V.push(ME(c.declarations[0].isExportEquals?64:90));break;case 281:V.push(ME(95));break;default:V.push(ME(102))}V.push(xI()),Le(c),X(c.declarations,it=>{if(it.kind===271){let It=it;if(BZ(It))V.push(xI()),V.push(Rue(64)),V.push(xI()),V.push(ME(149)),V.push(d0(21)),V.push(Yb(Nf(M8(It)),8)),V.push(d0(22));else{let dt=n.getSymbolAtLocation(It.moduleReference);dt&&(V.push(xI()),V.push(Rue(64)),V.push(xI()),Le(dt,d))}return!0}})}if(!ue)if(re!==""){if(h){if(Ae?(Me(),V.push(ME(110))):je(c,re),re==="property"||re==="accessor"||re==="getter"||re==="setter"||re==="JSX attribute"||te&3||re==="local var"||re==="index"||re==="using"||re==="await using"||Ae){if(V.push(d0(59)),V.push(xI()),h.symbol&&h.symbol.flags&262144&&re!=="index"){let it=DV(It=>{let dt=n.typeParameterToDeclaration(h,d,SMr);Ne().writeNode(4,dt,ls(zc(d)),It)});ai(V,it)}else ai(V,J_e(n,h,d));if(wB(c)&&c.links.target&&wB(c.links.target)&&c.links.target.links.tupleLabelDeclaration){let it=c.links.target.links.tupleLabelDeclaration;w.assertNode(it.name,sr),V.push(xI()),V.push(d0(21)),V.push(O2(oo(it.name))),V.push(d0(22))}}else if(te&16||te&8192||te&16384||te&131072||te&98304||re==="method"){let it=h.getNonNullableType().getCallSignatures();it.length&&(nt(it[0],it),Fe=it.length>1)}}}else re=wMr(n,c,I);if(P.length===0&&!Fe&&(P=c.getContextualDocumentationComment(d,n)),P.length===0&&te&4&&c.parent&&c.declarations&&X(c.parent.declarations,it=>it.kind===307))for(let it of c.declarations){if(!it.parent||it.parent.kind!==226)continue;let It=n.getSymbolAtLocation(it.parent.right);if(It&&(P=It.getDocumentationComment(n),Q=It.getJsDocTags(n),P.length>0))break}if(P.length===0&&sr(I)&&c.valueDeclaration&&hl(c.valueDeclaration)){let it=c.valueDeclaration,It=it.parent,dt=it.propertyName||it.name;if(sr(dt)&&Wg(It)){let Tt=N2(dt),St=n.getTypeAtLocation(It);P=le(St.isUnion()?St.types:[St],He=>{let ht=He.getProperty(Tt);return ht?ht.getDocumentationComment(n):void 0})||v}}return Q.length===0&&!Fe&&(Q=c.getContextualJsDocTags(d,n)),P.length===0&&de&&(P=de),Q.length===0&&Be&&(Q=Be),{displayParts:V,documentation:P,symbolKind:re,tags:Q.length===0?void 0:Q};function Ne(){return b4()}function Me(){V.length&&V.push(Ote()),De()}function De(){R&&(st("alias"),V.push(xI()))}function lt(){V.push(xI()),V.push(ME(103)),V.push(xI())}function Le(it,It){let dt;R&&it===c&&(it=R),re==="index"&&(dt=n.getIndexInfosOfIndexSymbol(it));let Tt=[];it.flags&131072&&dt?(it.parent&&(Tt=Due(n,it.parent)),Tt.push(d0(23)),dt.forEach((St,He)=>{Tt.push(...J_e(n,St.keyType)),He!==dt.length-1&&(Tt.push(xI()),Tt.push(d0(52)),Tt.push(xI()))}),Tt.push(d0(24))):Tt=Due(n,it,It||u,void 0,7),ai(V,Tt),c.flags&16777216&&V.push(d0(58))}function je(it,It){Me(),It&&(st(It),it&&!lr(it.declarations,dt=>Id(dt)||(PA(dt)||rp(dt))&&!dt.name)&&(V.push(xI()),Le(it)))}function st(it){switch(it){case"var":case"function":case"let":case"const":case"constructor":case"using":case"await using":V.push(Cje(it));return;default:V.push(d0(21)),V.push(Cje(it)),V.push(d0(22));return}}function nt(it,It,dt=0){ai(V,hje(n,it,d,dt|32)),It.length>1&&(V.push(xI()),V.push(d0(21)),V.push(Rue(40)),V.push(Yb((It.length-1).toString(),7)),V.push(xI()),V.push(O2(It.length===2?"overload":"overloads")),V.push(d0(22))),P=it.getDocumentationComment(n),Q=it.getJsDocTags(),It.length>1&&P.length===0&&Q.length===0&&(P=It[0].getDocumentationComment(n),Q=It[0].getJsDocTags().filter(Tt=>Tt.name!=="deprecated"))}function qe(it,It){let dt=DV(Tt=>{let St=n.symbolToTypeParameterDeclarations(it,It,SMr);Ne().writeList(53776,St,ls(zc(It)),Tt)});ai(V,dt)}}function Scs(n,c,u,d,I,h=E4(I),b){return RMr(n,c,u,d,I,void 0,h,b)}function DMr(n){return n.parent?!1:X(n.declarations,c=>{if(c.kind===218)return!0;if(c.kind!==260&&c.kind!==262)return!1;for(let u=c.parent;!z9(u);u=u.parent)if(u.kind===307||u.kind===268)return!1;return!0})}var Ao={};o(Ao,{ChangeTracker:()=>Ncs,LeadingTriviaOption:()=>GMr,TrailingTriviaOption:()=>FMr,applyChanges:()=>vVt,assignPositionsToNode:()=>Tqe,createWriter:()=>LMr,deleteNode:()=>QG,isThisTypeAnnotatable:()=>Tcs,isValidLocationToAddComment:()=>VMr});function xMr(n){let c=n.__pos;return w.assert(typeof c=="number"),c}function yVt(n,c){w.assert(typeof c=="number"),n.__pos=c}function kMr(n){let c=n.__end;return w.assert(typeof c=="number"),c}function bVt(n,c){w.assert(typeof c=="number"),n.__end=c}var GMr=(n=>(n[n.Exclude=0]="Exclude",n[n.IncludeAll=1]="IncludeAll",n[n.JSDoc=2]="JSDoc",n[n.StartLine=3]="StartLine",n))(GMr||{}),FMr=(n=>(n[n.Exclude=0]="Exclude",n[n.ExcludeWhitespace=1]="ExcludeWhitespace",n[n.Include=2]="Include",n))(FMr||{});function ZMr(n,c){return Uu(n,c,!1,!0)}function wcs(n,c){let u=c;for(;u0?1:0,te=gN(i6(n,V)+Q,n);return te=ZMr(n.text,te),gN(i6(n,te),n)}function EVt(n,c,u){let{end:d}=c,{trailingTriviaOption:I}=u;if(I===2){let h=h2(n.text,d);if(h){let b=i6(n,c.end);for(let R of h){if(R.kind===2||i6(n,R.pos)>b)break;if(i6(n,R.end)>b)return Uu(n.text,R.end,!0,!0)}}}}function $te(n,c,u){var d;let{end:I}=c,{trailingTriviaOption:h}=u;if(h===0)return I;if(h===1){let N=vi(h2(n.text,I),Zb(n.text,I)),V=(d=N?.[N.length-1])==null?void 0:d.end;return V||I}let b=EVt(n,c,u);if(b)return b;let R=Uu(n.text,I,!0);return R!==I&&(h===2||XC(n.text.charCodeAt(R-1)))?R:I}function vqe(n,c){return!!c&&!!n.parent&&(c.kind===28||c.kind===27&&n.parent.kind===210)}function Tcs(n){return PA(n)||hp(n)}var Ncs=class iir{constructor(c,u){this.newLineCharacter=c,this.formatContext=u,this.changes=[],this.classesWithNodesInsertedAtStart=new Map,this.deletedNodes=[]}static fromContext(c){return new iir(PZ(c.host,c.formatContext.options),c.formatContext)}static with(c,u){let d=iir.fromContext(c);return u(d),d.getChanges()}pushRaw(c,u){w.assertEqual(c.fileName,u.fileName);for(let d of u.textChanges)this.changes.push({kind:3,sourceFile:c,text:d.newText,range:HGe(d.span)})}deleteRange(c,u){this.changes.push({kind:0,sourceFile:c,range:u})}delete(c,u){this.deletedNodes.push({sourceFile:c,node:u})}deleteNode(c,u,d={leadingTriviaOption:1}){this.deleteRange(c,v0e(c,u,u,d))}deleteNodes(c,u,d={leadingTriviaOption:1},I){for(let h of u){let b=N4(c,h,d,I),R=$te(c,h,d);this.deleteRange(c,{pos:b,end:R}),I=!!EVt(c,h,d)}}deleteModifier(c,u){this.deleteRange(c,{pos:u.getStart(c),end:Uu(c.text,u.end,!0)})}deleteNodeRange(c,u,d,I={leadingTriviaOption:1}){let h=N4(c,u,I),b=$te(c,d,I);this.deleteRange(c,{pos:h,end:b})}deleteNodeRangeExcludingEnd(c,u,d,I={leadingTriviaOption:1}){let h=N4(c,u,I),b=d===void 0?c.text.length:N4(c,d,I);this.deleteRange(c,{pos:h,end:b})}replaceRange(c,u,d,I={}){this.changes.push({kind:1,sourceFile:c,range:u,options:I,node:d})}replaceNode(c,u,d,I=B0e){this.replaceRange(c,v0e(c,u,u,I),d,I)}replaceNodeRange(c,u,d,I,h=B0e){this.replaceRange(c,v0e(c,u,d,h),I,h)}replaceRangeWithNodes(c,u,d,I={}){this.changes.push({kind:2,sourceFile:c,range:u,options:I,nodes:d})}replaceNodeWithNodes(c,u,d,I=B0e){this.replaceRangeWithNodes(c,v0e(c,u,u,I),d,I)}replaceNodeWithText(c,u,d){this.replaceRangeWithText(c,v0e(c,u,u,B0e),d)}replaceNodeRangeWithNodes(c,u,d,I,h=B0e){this.replaceRangeWithNodes(c,v0e(c,u,d,h),I,h)}nodeHasTrailingComment(c,u,d=B0e){return!!EVt(c,u,d)}nextCommaToken(c,u){let d=EM(u,u.parent,c);return d&&d.kind===28?d:void 0}replacePropertyAssignment(c,u,d){let I=this.nextCommaToken(c,u)?"":","+this.newLineCharacter;this.replaceNode(c,u,d,{suffix:I})}insertNodeAt(c,u,d,I={}){this.replaceRange(c,Z1(u),d,I)}insertNodesAt(c,u,d,I={}){this.replaceRangeWithNodes(c,Z1(u),d,I)}insertNodeAtTopOfFile(c,u,d){this.insertAtTopOfFile(c,u,d)}insertNodesAtTopOfFile(c,u,d){this.insertAtTopOfFile(c,u,d)}insertAtTopOfFile(c,u,d){let I=Lcs(c),h={prefix:I===0?void 0:this.newLineCharacter,suffix:(XC(c.text.charCodeAt(I))?"":this.newLineCharacter)+(d?this.newLineCharacter:"")};Na(u)?this.insertNodesAt(c,I,u,h):this.insertNodeAt(c,I,u,h)}insertNodesAtEndOfFile(c,u,d){this.insertAtEndOfFile(c,u,d)}insertAtEndOfFile(c,u,d){let I=c.end+1,h={prefix:this.newLineCharacter,suffix:this.newLineCharacter+(d?this.newLineCharacter:"")};this.insertNodesAt(c,I,u,h)}insertStatementsInNewFile(c,u,d){this.newFileChanges||(this.newFileChanges=ec()),this.newFileChanges.add(c,{oldFile:d,statements:u})}insertFirstParameter(c,u,d){let I=$i(u);I?this.insertNodeBefore(c,I,d):this.insertNodeAt(c,u.pos,d)}insertNodeBefore(c,u,d,I=!1,h={}){this.insertNodeAt(c,N4(c,u,h),d,this.getOptionsForInsertNodeBefore(u,d,I))}insertNodesBefore(c,u,d,I=!1,h={}){this.insertNodesAt(c,N4(c,u,h),d,this.getOptionsForInsertNodeBefore(u,qs(d),I))}insertModifierAt(c,u,d,I={}){this.insertNodeAt(c,u,_e.createToken(d),I)}insertModifierBefore(c,u,d){return this.insertModifierAt(c,d.getStart(c),u,{suffix:" "})}insertCommentBeforeLine(c,u,d,I){let h=gN(u,c),b=KGt(c.text,h),R=VMr(c,b),N=Lte(c,R?b:d),V=c.text.slice(h,b),P=`${R?"":this.newLineCharacter}//${I}${this.newLineCharacter}${V}`;this.insertText(c,N.getStart(c),P)}insertJsdocCommentBefore(c,u,d){let I=u.getStart(c);if(u.jsDoc)for(let R of u.jsDoc)this.deleteRange(c,{pos:Wv(R.getStart(c),c),end:$te(c,R,{})});let h=$Ge(c.text,I-1),b=c.text.slice(h,I);this.insertNodeAt(c,I,d,{suffix:this.newLineCharacter+b})}createJSDocText(c,u){let d=Fr(u.jsDoc,h=>Ya(h.comment)?_e.createJSDocText(h.comment):h.comment),I=Tu(u.jsDoc);return I&&L1(I.pos,I.end,c)&&O(d)===0?void 0:_e.createNodeArray(pe(d,_e.createJSDocText(` +`)))}replaceJSDocComment(c,u,d){this.insertJsdocCommentBefore(c,Rcs(u),_e.createJSDocComment(this.createJSDocText(c,u),_e.createNodeArray(d)))}addJSDocTags(c,u,d){let I=$r(u.jsDoc,b=>b.tags),h=d.filter(b=>!I.some((R,N)=>{let V=Dcs(R,b);return V&&(I[N]=V),!!V}));this.replaceJSDocComment(c,u,[...I,...h])}filterJSDocTags(c,u,d){this.replaceJSDocComment(c,u,Gt($r(u.jsDoc,I=>I.tags),d))}replaceRangeWithText(c,u,d){this.changes.push({kind:3,sourceFile:c,range:u,text:d})}insertText(c,u,d){this.replaceRangeWithText(c,Z1(u),d)}tryInsertTypeAnnotation(c,u,d){let I;if(eu(u)){if(I=Qd(u,22,c),!I){if(!Id(u))return!1;I=qs(u.parameters)}}else I=(u.kind===260?u.exclamationToken:u.questionToken)??u.name;return this.insertNodeAt(c,I.end,d,{prefix:": "}),!0}tryInsertThisTypeAnnotation(c,u,d){let I=Qd(u,21,c).getStart(c)+1,h=u.parameters.length?", ":"";this.insertNodeAt(c,I,d,{prefix:"this: ",suffix:h})}insertTypeParameters(c,u,d){let I=(Qd(u,21,c)||qs(u.parameters)).getStart(c);this.insertNodesAt(c,I,d,{prefix:"<",suffix:">",joiner:", "})}getOptionsForInsertNodeBefore(c,u,d){return Cc(c)||nC(c)?{suffix:d?this.newLineCharacter+this.newLineCharacter:this.newLineCharacter}:js(c)?{suffix:", "}:Uc(c)?Uc(u)?{suffix:", "}:{}:Eu(c)&&hI(c.parent)||TN(c)?{suffix:", "}:yy(c)?{suffix:","+(d?this.newLineCharacter:" ")}:w.failBadSyntaxKind(c)}insertNodeAtConstructorStart(c,u,d){let I=$i(u.body.statements);!I||!u.body.multiLine?this.replaceConstructorBody(c,u,[d,...u.body.statements]):this.insertNodeBefore(c,I,d)}insertNodeAtConstructorStartAfterSuperCall(c,u,d){let I=be(u.body.statements,h=>Xf(h)&&Rf(h.expression));!I||!u.body.multiLine?this.replaceConstructorBody(c,u,[...u.body.statements,d]):this.insertNodeAfter(c,I,d)}insertNodeAtConstructorEnd(c,u,d){let I=zo(u.body.statements);!I||!u.body.multiLine?this.replaceConstructorBody(c,u,[...u.body.statements,d]):this.insertNodeAfter(c,I,d)}replaceConstructorBody(c,u,d){this.replaceNode(c,u.body,_e.createBlock(d,!0))}insertNodeAtEndOfScope(c,u,d){let I=N4(c,u.getLastToken(),{});this.insertNodeAt(c,I,d,{prefix:XC(c.text.charCodeAt(u.getLastToken().pos))?this.newLineCharacter:this.newLineCharacter+this.newLineCharacter,suffix:this.newLineCharacter})}insertMemberAtStart(c,u,d){this.insertNodeAtStartWorker(c,u,d)}insertNodeAtObjectStart(c,u,d){this.insertNodeAtStartWorker(c,u,d)}insertNodeAtStartWorker(c,u,d){let I=this.guessIndentationFromExistingMembers(c,u)??this.computeIndentationForNewMember(c,u);this.insertNodeAt(c,Sqe(u).pos,d,this.getInsertNodeAtStartInsertOptions(c,u,I))}guessIndentationFromExistingMembers(c,u){let d,I=u;for(let h of Sqe(u)){if(A6(I,h,c))return;let b=h.getStart(c),R=zC.SmartIndenter.findFirstNonWhitespaceColumn(Wv(b,c),b,c,this.formatContext.options);if(d===void 0)d=R;else if(R!==d)return;I=h}return d}computeIndentationForNewMember(c,u){let d=u.getStart(c);return zC.SmartIndenter.findFirstNonWhitespaceColumn(Wv(d,c),d,c,this.formatContext.options)+(this.formatContext.options.indentSize??4)}getInsertNodeAtStartInsertOptions(c,u,d){let h=Sqe(u).length===0,b=D2(this.classesWithNodesInsertedAtStart,od(u),{node:u,sourceFile:c}),R=ru(u)&&(!fa(c)||!h),N=ru(u)&&fa(c)&&h&&!b;return{indentation:d,prefix:(N?",":"")+this.newLineCharacter,suffix:R?",":XI(u)&&h?";":""}}insertNodeAfterComma(c,u,d){let I=this.insertNodeAfterWorker(c,this.nextCommaToken(c,u)||u,d);this.insertNodeAt(c,I,d,this.getInsertNodeAfterOptions(c,u))}insertNodeAfter(c,u,d){let I=this.insertNodeAfterWorker(c,u,d);this.insertNodeAt(c,I,d,this.getInsertNodeAfterOptions(c,u))}insertNodeAtEndOfList(c,u,d){this.insertNodeAt(c,u.end,d,{prefix:", "})}insertNodesAfter(c,u,d){let I=this.insertNodeAfterWorker(c,u,qs(d));this.insertNodesAt(c,I,d,this.getInsertNodeAfterOptions(c,u))}insertNodeAfterWorker(c,u,d){return Vcs(u,d)&&c.text.charCodeAt(u.end-1)!==59&&this.replaceRange(c,Z1(u.end),_e.createToken(27)),$te(c,u,{})}getInsertNodeAfterOptions(c,u){let d=this.getInsertNodeAfterOptionsWorker(u);return{...d,prefix:u.end===c.end&&Cc(u)?d.prefix?` ${d.prefix}`:` -`:d.prefix}}getInsertNodeAfterOptionsWorker(c){switch(c.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 w.assert(Ic(c)||d8(c)),{suffix:this.newLineCharacter}}}insertName(c,u,d){if(w.assert(!u.name),u.kind===219){let I=Od(u,39,c),h=Od(u,21,c);h?(this.insertNodesAt(c,h.getStart(c),[_e.createToken(100),_e.createIdentifier(d)],{joiner:" "}),LG(this,c,I)):(this.insertText(c,$s(u.parameters).getStart(c),`function ${d}(`),this.replaceRange(c,I,_e.createToken(22))),u.body.kind!==241&&(this.insertNodesAt(c,u.body.getStart(c),[_e.createToken(19),_e.createToken(107)],{joiner:" ",suffix:" "}),this.insertNodesAt(c,u.body.end,[_e.createToken(27),_e.createToken(20)],{joiner:" "}))}else{let I=Od(u,u.kind===218?100:86,c).end;this.insertNodeAt(c,I,_e.createIdentifier(d),{prefix:" "})}}insertExportModifier(c,u){this.insertText(c,u.getStart(c),"export ")}insertImportSpecifierAtIndex(c,u,d,I){let h=d.elements[I-1];h?this.insertNodeInListAfter(c,h,u):this.insertNodeBefore(c,d.elements[0],u,!Z1(d.elements[0].getStart(),d.parent.parent.getStart(),c))}insertNodeInListAfter(c,u,d,I=jC.SmartIndenter.getContainingList(u,c)){if(!I){w.fail("node is not a list element");return}let h=L3(I,u);if(h<0)return;let b=u.getEnd();if(h!==I.length-1){let R=Qc(c,u.end);if(R&&Eqe(u,R)){let N=I[h+1],V=RYr(c.text,N.getFullStart()),P=`${vr(R.kind)}${c.text.substring(R.end,V)}`;this.insertNodesAt(c,V,[d],{suffix:P})}}else{let R=u.getStart(c),N=Vv(R,c),V,P=!1;if(I.length===1)V=28;else{let M=_m(u.pos,c);V=Eqe(u,M)?M.kind:28,P=Vv(I[h-1].getStart(c),c)!==N}if((_cs(c.text,u.end)||!Z1(I.pos,I.end,c))&&(P=!0),P){this.replaceRange(c,F1(b),_e.createToken(V));let M=jC.SmartIndenter.findFirstNonWhitespaceColumn(N,R,c,this.formatContext.options),te=Ju(c.text,b,!0,!1);for(;te!==b&&HC(c.text.charCodeAt(te-1));)te--;this.replaceRange(c,F1(te),d,{indentation:M,prefix:this.newLineCharacter})}else this.replaceRange(c,F1(b),d,{prefix:`${vr(V)} `})}}parenthesizeExpression(c,u){this.replaceRange(c,phe(u),_e.createParenthesizedExpression(u))}finishClassesWithNodesInsertedAtStart(){this.classesWithNodesInsertedAtStart.forEach(({node:c,sourceFile:u})=>{let[d,I]=Scs(c,u);if(d!==void 0&&I!==void 0){let h=Bqe(c).length===0,b=Z1(d,I,u);h&&b&&d!==I-1&&this.deleteRange(u,F1(d,I-1)),b&&this.insertText(u,I-1,this.newLineCharacter)}})}finishDeleteDeclarations(){let c=new Set;for(let{sourceFile:u,node:d}of this.deletedNodes)this.deletedNodes.some(I=>I.sourceFile===u&&mGt(I.node,d))||(Ra(d)?this.deleteRange(u,fhe(u,d)):EVt.deleteDeclaration(this,c,u,d));c.forEach(u=>{let d=u.getSourceFile(),I=jC.SmartIndenter.getContainingList(u,d);if(u!==Na(I))return;let h=x(I,b=>!c.has(b),I.length-2);h!==-1&&this.deleteRange(d,{pos:I[h].end,end:yVt(d,I[h+1])})})}getChanges(c){this.finishDeleteDeclarations(),this.finishClassesWithNodesInsertedAtStart();let u=vqe.getTextChangesFromChanges(this.changes,this.newLineCharacter,this.formatContext,c);return this.newFileChanges&&this.newFileChanges.forEach((d,I)=>{u.push(vqe.newFileChanges(I,d,this.newLineCharacter,this.formatContext))}),u}createNewFile(c,u,d){this.insertStatementsInNewFile(u,d,c)}};function Ecs(n){if(n.kind!==219)return n;let c=n.parent.kind===172?n.parent:n.parent.parent;return c.jsDoc=n.jsDoc,c}function Bcs(n,c){if(n.kind===c.kind)switch(n.kind){case 341:{let u=n,d=c;return sr(u.name)&&sr(d.name)&&u.name.escapedText===d.name.escapedText?_e.createJSDocParameterTag(void 0,d.name,!1,d.typeExpression,d.isNameFirst,u.comment):void 0}case 342:return _e.createJSDocReturnTag(void 0,c.typeExpression,n.comment);case 344:return _e.createJSDocTypeTag(void 0,c.typeExpression,n.comment)}}function yVt(n,c){return Ju(n.text,S4(n,c,{leadingTriviaOption:1}),!1,!0)}function vcs(n,c,u,d){let I=yVt(n,d);if(u===void 0||Z1(zte(n,c,{}),I,n))return I;let h=_m(d.getStart(n),n);if(Eqe(c,h)){let b=_m(c.getStart(n),n);if(Eqe(u,b)){let R=Ju(n.text,h.getEnd(),!0,!0);if(Z1(b.getStart(n),h.getStart(n),n))return HC(n.text.charCodeAt(R-1))?R-1:R;if(HC(n.text.charCodeAt(R)))return R}}return I}function Scs(n,c){let u=Od(n,19,c),d=Od(n,20,c);return[u?.end,d?.end]}function Bqe(n){return tu(n)?n.properties:n.members}var vqe;(n=>{function c(R,N,V,P){return tr(Hl(R,M=>M.sourceFile.path),M=>{let te=M[0].sourceFile,re=Cl(M,(Ae,de)=>Ae.range.pos-de.range.pos||Ae.range.end-de.range.end);for(let Ae=0;Ae`${JSON.stringify(re[Ae].range)} and ${JSON.stringify(re[Ae+1].range)}`);let ue=tr(re,Ae=>{let de=TV(Ae.range),Be=Ae.kind===1?ls(Tp(Ae.node))??Ae.sourceFile:Ae.kind===2?ls(Tp(Ae.nodes[0]))??Ae.sourceFile:Ae.sourceFile,Fe=I(Ae,Be,te,N,V,P);if(!(de.length===Fe.length&&iFt(Be.text,Fe,de.start)))return P_e(de,Fe)});return ue.length>0?{fileName:te.fileName,textChanges:ue}:void 0})}n.getTextChangesFromChanges=c;function u(R,N,V,P){let M=d(sle(R),N,V,P);return{fileName:R,textChanges:[P_e(bd(0,0),M)],isNewFile:!0}}n.newFileChanges=u;function d(R,N,V,P){let M=Fr(N,ue=>ue.statements.map(Ae=>Ae===4?"":b(Ae,ue.oldFile,V).text)).join(V),te=L6("any file name",M,{languageVersion:99,jsDocParsingMode:1},!0,R),re=jC.formatDocument(te,P);return bVt(M,re)+V}n.newFileChangesWorker=d;function I(R,N,V,P,M,te){var re;if(R.kind===0)return"";if(R.kind===3)return R.text;let{options:ue={},range:{pos:Ae}}=R,de=Ne=>h(Ne,N,V,Ae,ue,P,M,te),Be=R.kind===2?R.nodes.map(Ne=>Qm(de(Ne),P)).join(((re=R.options)==null?void 0:re.joiner)||P):de(R.node),Fe=ue.indentation!==void 0||Vv(Ae,N)===Ae?Be:Be.replace(/^\s+/,"");return(ue.prefix||"")+Fe+(!ue.suffix||pl(Fe,ue.suffix)?"":ue.suffix)}function h(R,N,V,P,{indentation:M,prefix:te,delta:re},ue,Ae,de){let{node:Be,text:Fe}=b(R,N,ue);de&&de(Be,Fe);let Ne=dFe(Ae,N),Qe=M!==void 0?M:jC.SmartIndenter.getIndentation(P,V,Ne,te===ue||Vv(P,N)===P);re===void 0&&(re=jC.SmartIndenter.shouldIndentChildNode(Ne,R)&&Ne.indentSize||0);let De={text:Fe,getLineAndCharacterOfPosition(Le){return Ll(this,Le)}},lt=jC.formatNodeGivenIndentation(Be,De,N.languageVariant,Qe,re,{...Ae,options:Ne});return bVt(Fe,lt)}function b(R,N,V){let P=DYr(V),M=q_e(V);return SV({newLine:M,neverAsciiEscape:!0,preserveSourceNewlines:!0,terminateUnterminatedLiterals:!0},P).writeNode(4,R,N,P),{text:P.getText(),node:Sqe(R)}}n.getNonformattedText=b})(vqe||(vqe={}));function bVt(n,c){for(let u=c.length-1;u>=0;u--){let{span:d,newText:I}=c[u];n=`${n.substring(0,d.start)}${I}${n.substring(Uu(d))}`}return n}function wcs(n){return Ju(n,0)===n.length}var Tcs={...I_e,factory:dV(I_e.factory.flags|1,I_e.factory.baseFactory)};function Sqe(n){let c=ns(n,Sqe,Tcs,Ncs,Sqe),u=qd(c)?c:Object.create(c);return MS(u,SYr(n),wYr(n)),u}function Ncs(n,c,u,d,I){let h=ws(n,c,u,d,I);if(!h)return h;w.assert(n);let b=h===n?_e.createNodeArray(h.slice(0)):h;return MS(b,SYr(n),wYr(n)),b}function DYr(n){let c=0,u=Bee(n),d=Ye=>{Ye&&mVt(Ye,c)},I=Ye=>{Ye&&hVt(Ye,c)},h=Ye=>{Ye&&mVt(Ye,c)},b=Ye=>{Ye&&hVt(Ye,c)},R=Ye=>{Ye&&mVt(Ye,c)},N=Ye=>{Ye&&hVt(Ye,c)};function V(Ye,ht){if(ht||!wcs(Ye)){c=u.getTextPos();let Et=0;for(;Xm(Ye.charCodeAt(Ye.length-Et-1));)Et++;c-=Et}}function P(Ye){u.write(Ye),V(Ye,!1)}function M(Ye){u.writeComment(Ye)}function te(Ye){u.writeKeyword(Ye),V(Ye,!1)}function re(Ye){u.writeOperator(Ye),V(Ye,!1)}function ue(Ye){u.writePunctuation(Ye),V(Ye,!1)}function Ae(Ye){u.writeTrailingSemicolon(Ye),V(Ye,!1)}function de(Ye){u.writeParameter(Ye),V(Ye,!1)}function Be(Ye){u.writeProperty(Ye),V(Ye,!1)}function Fe(Ye){u.writeSpace(Ye),V(Ye,!1)}function Ne(Ye){u.writeStringLiteral(Ye),V(Ye,!1)}function Qe(Ye,ht){u.writeSymbol(Ye,ht),V(Ye,!1)}function De(Ye){u.writeLine(Ye)}function lt(){u.increaseIndent()}function Le(){u.decreaseIndent()}function je(){return u.getText()}function st(Ye){u.rawWrite(Ye),V(Ye,!1)}function nt(Ye){u.writeLiteral(Ye),V(Ye,!0)}function qe(){return u.getTextPos()}function it(){return u.getLine()}function It(){return u.getColumn()}function dt(){return u.getIndent()}function wt(){return u.isAtStartOfLine()}function vt(){u.clear(),c=0}return{onBeforeEmitNode:d,onAfterEmitNode:I,onBeforeEmitNodeArray:h,onAfterEmitNodeArray:b,onBeforeEmitToken:R,onAfterEmitToken:N,write:P,writeComment:M,writeKeyword:te,writeOperator:re,writePunctuation:ue,writeTrailingSemicolon:Ae,writeParameter:de,writeProperty:Be,writeSpace:Fe,writeStringLiteral:Ne,writeSymbol:Qe,writeLine:De,increaseIndent:lt,decreaseIndent:Le,getText:je,rawWrite:st,writeLiteral:nt,getTextPos:qe,getLine:it,getColumn:It,getIndent:dt,isAtStartOfLine:wt,hasTrailingComment:()=>u.hasTrailingComment(),hasTrailingWhitespace:()=>u.hasTrailingWhitespace(),clear:vt}}function Rcs(n){let c;for(let V of n.statements)if(QI(V))c=V;else break;let u=0,d=n.text;if(c)return u=c.end,N(),u;let I=aG(d);I!==void 0&&(u=I.length,N());let h=Gb(d,u);if(!h)return u;let b,R;for(let V of h){if(V.kind===3){if(B8(d,V.pos)){b={range:V,pinnedOrTripleSlash:!0};continue}}else if(G$(d,V.pos,V.end)){b={range:V,pinnedOrTripleSlash:!0};continue}if(b){if(b.pinnedOrTripleSlash)break;let P=n.getLineAndCharacterOfPosition(V.pos).line,M=n.getLineAndCharacterOfPosition(b.range.end).line;if(P>=M+2)break}if(n.statements.length){R===void 0&&(R=n.getLineAndCharacterOfPosition(n.statements[0].getStart()).line);let P=n.getLineAndCharacterOfPosition(V.end).line;if(R{function c(h,b,R,N){switch(N.kind){case 169:{let re=N.parent;fd(re)&&re.parameters.length===1&&!Od(re,21,R)?h.replaceNodeWithText(R,N,"()"):B0e(h,b,R,N);break}case 272:case 271:let V=R.imports.length&&N===$s(R.imports).parent||N===be(R.statements,fG);LG(h,R,N,{leadingTriviaOption:V?0:hy(N)?2:3});break;case 208:let P=N.parent;P.kind===207&&N!==Na(P.elements)?LG(h,R,N):B0e(h,b,R,N);break;case 260:I(h,b,R,N);break;case 168:B0e(h,b,R,N);break;case 276:let te=N.parent;te.elements.length===1?d(h,R,te):B0e(h,b,R,N);break;case 274:d(h,R,N);break;case 27:LG(h,R,N,{trailingTriviaOption:0});break;case 100:LG(h,R,N,{leadingTriviaOption:0});break;case 263:case 262:LG(h,R,N,{leadingTriviaOption:hy(N)?2:3});break;default:N.parent?sT(N.parent)&&N.parent.name===N?u(h,R,N.parent):cu(N.parent)&&Ue(N.parent.arguments,N)?B0e(h,b,R,N):LG(h,R,N):LG(h,R,N)}}n.deleteDeclaration=c;function u(h,b,R){if(!R.namedBindings)LG(h,b,R.parent);else{let N=R.name.getStart(b),V=Qc(b,R.name.end);if(V&&V.kind===28){let P=Ju(b.text,V.end,!1,!0);h.deleteRange(b,{pos:N,end:P})}else LG(h,b,R.name)}}function d(h,b,R){if(R.parent.name){let N=w.checkDefined(Qc(b,R.pos-1));h.deleteRange(b,{pos:N.getStart(b),end:R.end})}else{let N=CG(R,272);LG(h,b,N)}}function I(h,b,R,N){let{parent:V}=N;if(V.kind===299){h.deleteNodeRange(R,Od(V,21,R),Od(V,22,R));return}if(V.declarations.length!==1){B0e(h,b,R,N);return}let P=V.parent;switch(P.kind){case 250:case 249:h.replaceNode(R,N,_e.createObjectLiteralExpression());break;case 248:LG(h,R,V);break;case 243:LG(h,R,P,{leadingTriviaOption:hy(P)?2:3});break;default:w.assertNever(P)}}})(EVt||(EVt={}));function LG(n,c,u,d={leadingTriviaOption:1}){let I=S4(c,u,d),h=zte(c,u,d);n.deleteRange(c,{pos:I,end:h})}function B0e(n,c,u,d){let I=w.checkDefined(jC.SmartIndenter.getContainingList(d,u)),h=L3(I,d);if(w.assert(h!==-1),I.length===1){LG(n,u,d);return}w.assert(!c.has(d),"Deleting a node twice"),c.add(d),n.deleteRange(u,{pos:yVt(u,d),end:h===I.length-1?zte(u,d,{}):vcs(u,d,I[h-1],I[h+1])})}var jC={};o(jC,{FormattingContext:()=>GYr,FormattingRequestKind:()=>kYr,RuleAction:()=>FYr,RuleFlags:()=>ZYr,SmartIndenter:()=>FN,anyContext:()=>wqe,createTextRangeWithKind:()=>Dqe,formatDocument:()=>bls,formatNodeGivenIndentation:()=>Nls,formatOnClosingCurly:()=>yls,formatOnEnter:()=>mls,formatOnOpeningCurly:()=>_ls,formatOnSemicolon:()=>hls,formatSelection:()=>Els,getAllRules:()=>LYr,getFormatContext:()=>uls,getFormattingScanner:()=>BVt,getIndentationString:()=>VVt,getRangeOfEnclosingComment:()=>cHr});var kYr=(n=>(n[n.FormatDocument=0]="FormatDocument",n[n.FormatSelection=1]="FormatSelection",n[n.FormatOnEnter=2]="FormatOnEnter",n[n.FormatOnSemicolon=3]="FormatOnSemicolon",n[n.FormatOnOpeningCurlyBrace=4]="FormatOnOpeningCurlyBrace",n[n.FormatOnClosingCurlyBrace=5]="FormatOnClosingCurlyBrace",n))(kYr||{}),GYr=class{constructor(n,c,u){this.sourceFile=n,this.formattingRequestKind=c,this.options=u}updateContext(n,c,u,d,I){this.currentTokenSpan=w.checkDefined(n),this.currentTokenParent=w.checkDefined(c),this.nextTokenSpan=w.checkDefined(u),this.nextTokenParent=w.checkDefined(d),this.contextNode=w.checkDefined(I),this.contextNodeAllOnSameLine=void 0,this.nextNodeAllOnSameLine=void 0,this.tokensAreOnSameLine=void 0,this.contextNodeBlockIsOnOneLine=void 0,this.nextNodeBlockIsOnOneLine=void 0}ContextNodeAllOnSameLine(){return this.contextNodeAllOnSameLine===void 0&&(this.contextNodeAllOnSameLine=this.NodeIsOnOneLine(this.contextNode)),this.contextNodeAllOnSameLine}NextNodeAllOnSameLine(){return this.nextNodeAllOnSameLine===void 0&&(this.nextNodeAllOnSameLine=this.NodeIsOnOneLine(this.nextTokenParent)),this.nextNodeAllOnSameLine}TokensAreOnSameLine(){if(this.tokensAreOnSameLine===void 0){let n=this.sourceFile.getLineAndCharacterOfPosition(this.currentTokenSpan.pos).line,c=this.sourceFile.getLineAndCharacterOfPosition(this.nextTokenSpan.pos).line;this.tokensAreOnSameLine=n===c}return this.tokensAreOnSameLine}ContextNodeBlockIsOnOneLine(){return this.contextNodeBlockIsOnOneLine===void 0&&(this.contextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.contextNode)),this.contextNodeBlockIsOnOneLine}NextNodeBlockIsOnOneLine(){return this.nextNodeBlockIsOnOneLine===void 0&&(this.nextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.nextTokenParent)),this.nextNodeBlockIsOnOneLine}NodeIsOnOneLine(n){let c=this.sourceFile.getLineAndCharacterOfPosition(n.getStart(this.sourceFile)).line,u=this.sourceFile.getLineAndCharacterOfPosition(n.getEnd()).line;return c===u}BlockIsOnOneLine(n){let c=Od(n,19,this.sourceFile),u=Od(n,20,this.sourceFile);if(c&&u){let d=this.sourceFile.getLineAndCharacterOfPosition(c.getEnd()).line,I=this.sourceFile.getLineAndCharacterOfPosition(u.getStart(this.sourceFile)).line;return d===I}return!1}},xcs=Ft(99,!1,0),kcs=Ft(99,!1,1);function BVt(n,c,u,d,I){let h=c===1?kcs:xcs;h.setText(n),h.resetTokenState(u);let b=!0,R,N,V,P,M,te=I({advance:re,readTokenInfo:De,readEOFTokenRange:Le,isOnToken:je,isOnEOF:st,getCurrentLeadingTrivia:()=>R,lastTrailingTriviaWasNewLine:()=>b,skipToEndOf:qe,skipToStartOf:it,getTokenFullStart:()=>M?.token.pos??h.getTokenStart(),getStartPos:()=>M?.token.pos??h.getTokenStart()});return M=void 0,h.setText(void 0),te;function re(){M=void 0,h.getTokenFullStart()!==u?b=!!N&&Na(N).kind===4:h.scan(),R=void 0,N=void 0;let dt=h.getTokenFullStart();for(;dt(n[n.None=0]="None",n[n.StopProcessingSpaceActions=1]="StopProcessingSpaceActions",n[n.StopProcessingTokenActions=2]="StopProcessingTokenActions",n[n.InsertSpace=4]="InsertSpace",n[n.InsertNewLine=8]="InsertNewLine",n[n.DeleteSpace=16]="DeleteSpace",n[n.DeleteToken=32]="DeleteToken",n[n.InsertTrailingSemicolon=64]="InsertTrailingSemicolon",n[n.StopAction=3]="StopAction",n[n.ModifySpaceAction=28]="ModifySpaceAction",n[n.ModifyTokenAction=96]="ModifyTokenAction",n))(FYr||{}),ZYr=(n=>(n[n.None=0]="None",n[n.CanDeleteNewLines=1]="CanDeleteNewLines",n))(ZYr||{});function LYr(){let n=[];for(let lt=0;lt<=165;lt++)lt!==1&&n.push(lt);function c(...lt){return{tokens:n.filter(Le=>!lt.some(je=>je===Le)),isSpecific:!1}}let u={tokens:n,isSpecific:!1},d=Mue([...n,3]),I=Mue([...n,1]),h=WYr(83,165),b=WYr(30,79),R=[103,104,165,130,142,152],N=[46,47,55,54],V=[9,10,80,21,23,19,110,105],P=[80,21,110,105],M=[80,22,24,105],te=[80,21,110,105],re=[80,22,24,105],ue=[2,3],Ae=[80,...eje],de=d,Be=Mue([80,32,3,86,95,102]),Fe=Mue([22,3,92,113,98,93,85]),Ne=[Ea("IgnoreBeforeComment",u,ue,wqe,1),Ea("IgnoreAfterLineComment",2,u,wqe,1),Ea("NotSpaceBeforeColon",u,59,[Uc,iZe,MYr],16),Ea("SpaceAfterColon",59,u,[Uc,iZe,jcs],4),Ea("NoSpaceBeforeQuestionMark",u,58,[Uc,iZe,MYr],16),Ea("SpaceAfterQuestionMarkInConditionalOperator",58,u,[Uc,Lcs],4),Ea("NoSpaceAfterQuestionMark",58,u,[Uc,Zcs],16),Ea("NoSpaceBeforeDot",u,[25,29],[Uc,lls],16),Ea("NoSpaceAfterDot",[25,29],u,[Uc],16),Ea("NoSpaceBetweenImportParenInImportType",102,21,[Uc,Ucs],16),Ea("NoSpaceAfterUnaryPrefixOperator",N,V,[Uc,iZe],16),Ea("NoSpaceAfterUnaryPreincrementOperator",46,P,[Uc],16),Ea("NoSpaceAfterUnaryPredecrementOperator",47,te,[Uc],16),Ea("NoSpaceBeforeUnaryPostincrementOperator",M,46,[Uc,iHr],16),Ea("NoSpaceBeforeUnaryPostdecrementOperator",re,47,[Uc,iHr],16),Ea("SpaceAfterPostincrementWhenFollowedByAdd",46,40,[Uc,DV],4),Ea("SpaceAfterAddWhenFollowedByUnaryPlus",40,40,[Uc,DV],4),Ea("SpaceAfterAddWhenFollowedByPreincrement",40,46,[Uc,DV],4),Ea("SpaceAfterPostdecrementWhenFollowedBySubtract",47,41,[Uc,DV],4),Ea("SpaceAfterSubtractWhenFollowedByUnaryMinus",41,41,[Uc,DV],4),Ea("SpaceAfterSubtractWhenFollowedByPredecrement",41,47,[Uc,DV],4),Ea("NoSpaceAfterCloseBrace",20,[28,27],[Uc],16),Ea("NewLineBeforeCloseBraceInBlockContext",d,20,[YYr],8),Ea("SpaceAfterCloseBrace",20,c(22),[Uc,Pcs],4),Ea("SpaceBetweenCloseBraceAndElse",20,93,[Uc],4),Ea("SpaceBetweenCloseBraceAndWhile",20,117,[Uc],4),Ea("NoSpaceBetweenEmptyBraceBrackets",19,20,[Uc,jYr],16),Ea("SpaceAfterConditionalClosingParen",22,23,[sZe],4),Ea("NoSpaceBetweenFunctionKeywordAndStar",100,42,[JYr],16),Ea("SpaceAfterStarInGeneratorDeclaration",42,80,[JYr],4),Ea("SpaceAfterFunctionInFuncDecl",100,u,[w4],4),Ea("NewLineAfterOpenBraceInBlockContext",19,u,[YYr],8),Ea("SpaceAfterGetSetInMember",[139,153],80,[w4],4),Ea("NoSpaceBetweenYieldKeywordAndStar",127,42,[Uc,nHr],16),Ea("SpaceBetweenYieldOrYieldStarAndOperand",[127,42],u,[Uc,nHr],4),Ea("NoSpaceBetweenReturnAndSemicolon",107,27,[Uc],16),Ea("SpaceAfterCertainKeywords",[115,111,105,91,107,114,135],u,[Uc],4),Ea("SpaceAfterLetConstInVariableDeclaration",[121,87],u,[Uc,$cs],4),Ea("NoSpaceBeforeOpenParenInFuncCall",u,21,[Uc,Qcs,Ycs],16),Ea("SpaceBeforeBinaryKeywordOperator",u,R,[Uc,DV],4),Ea("SpaceAfterBinaryKeywordOperator",R,u,[Uc,DV],4),Ea("SpaceAfterVoidOperator",116,u,[Uc,ils],4),Ea("SpaceBetweenAsyncAndOpenParen",134,21,[Jcs,Uc],4),Ea("SpaceBetweenAsyncAndFunctionKeyword",134,[100,80],[Uc],4),Ea("NoSpaceBetweenTagAndTemplateString",[80,22],[15,16],[Uc],16),Ea("SpaceBeforeJsxAttribute",u,80,[Kcs,Uc],4),Ea("SpaceBeforeSlashInJsxOpeningElement",u,44,[eHr,Uc],4),Ea("NoSpaceBeforeGreaterThanTokenInJsxOpeningElement",44,32,[eHr,Uc],16),Ea("NoSpaceBeforeEqualInJsxAttribute",u,64,[qYr,Uc],16),Ea("NoSpaceAfterEqualInJsxAttribute",64,u,[qYr,Uc],16),Ea("NoSpaceBeforeJsxNamespaceColon",80,59,[$Yr],16),Ea("NoSpaceAfterJsxNamespaceColon",59,80,[$Yr],16),Ea("NoSpaceAfterModuleImport",[144,149],21,[Uc],16),Ea("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],u,[Uc],4),Ea("SpaceBeforeCertainTypeScriptKeywords",u,[96,119,161],[Uc],4),Ea("SpaceAfterModuleName",11,19,[els],4),Ea("SpaceBeforeArrow",u,39,[Uc],4),Ea("SpaceAfterArrow",39,u,[Uc],4),Ea("NoSpaceAfterEllipsis",26,80,[Uc],16),Ea("NoSpaceAfterOptionalParameters",58,[22,28],[Uc,iZe],16),Ea("NoSpaceBetweenEmptyInterfaceBraceBrackets",19,20,[Uc,tls],16),Ea("NoSpaceBeforeOpenAngularBracket",Ae,30,[Uc,oZe],16),Ea("NoSpaceBetweenCloseParenAndAngularBracket",22,30,[Uc,oZe],16),Ea("NoSpaceAfterOpenAngularBracket",30,u,[Uc,oZe],16),Ea("NoSpaceBeforeCloseAngularBracket",u,32,[Uc,oZe],16),Ea("NoSpaceAfterCloseAngularBracket",32,[21,23,32,28],[Uc,oZe,Wcs,nls],16),Ea("SpaceBeforeAt",[22,80],60,[Uc],4),Ea("NoSpaceAfterAt",60,u,[Uc],16),Ea("SpaceAfterDecorator",u,[128,80,95,90,86,126,125,123,124,139,153,23,42],[qcs],4),Ea("NoSpaceBeforeNonNullAssertionOperator",u,54,[Uc,sls],16),Ea("NoSpaceAfterNewKeywordOnConstructorSignature",105,21,[Uc,rls],16),Ea("SpaceLessThanAndNonJSXTypeAnnotation",30,30,[Uc],4)],Qe=[Ea("SpaceAfterConstructor",137,21,[O2("insertSpaceAfterConstructor"),Uc],4),Ea("NoSpaceAfterConstructor",137,21,[GN("insertSpaceAfterConstructor"),Uc],16),Ea("SpaceAfterComma",28,u,[O2("insertSpaceAfterCommaDelimiter"),Uc,DVt,Hcs,Xcs],4),Ea("NoSpaceAfterComma",28,u,[GN("insertSpaceAfterCommaDelimiter"),Uc,DVt],16),Ea("SpaceAfterAnonymousFunctionKeyword",[100,42],21,[O2("insertSpaceAfterFunctionKeywordForAnonymousFunctions"),w4],4),Ea("NoSpaceAfterAnonymousFunctionKeyword",[100,42],21,[GN("insertSpaceAfterFunctionKeywordForAnonymousFunctions"),w4],16),Ea("SpaceAfterKeywordInControl",h,21,[O2("insertSpaceAfterKeywordsInControlFlowStatements"),sZe],4),Ea("NoSpaceAfterKeywordInControl",h,21,[GN("insertSpaceAfterKeywordsInControlFlowStatements"),sZe],16),Ea("SpaceAfterOpenParen",21,u,[O2("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),Uc],4),Ea("SpaceBeforeCloseParen",u,22,[O2("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),Uc],4),Ea("SpaceBetweenOpenParens",21,21,[O2("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),Uc],4),Ea("NoSpaceBetweenParens",21,22,[Uc],16),Ea("NoSpaceAfterOpenParen",21,u,[GN("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),Uc],16),Ea("NoSpaceBeforeCloseParen",u,22,[GN("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),Uc],16),Ea("SpaceAfterOpenBracket",23,u,[O2("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),Uc],4),Ea("SpaceBeforeCloseBracket",u,24,[O2("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),Uc],4),Ea("NoSpaceBetweenBrackets",23,24,[Uc],16),Ea("NoSpaceAfterOpenBracket",23,u,[GN("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),Uc],16),Ea("NoSpaceBeforeCloseBracket",u,24,[GN("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),Uc],16),Ea("SpaceAfterOpenBrace",19,u,[OYr("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),QYr],4),Ea("SpaceBeforeCloseBrace",u,20,[OYr("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),QYr],4),Ea("NoSpaceBetweenEmptyBraceBrackets",19,20,[Uc,jYr],16),Ea("NoSpaceAfterOpenBrace",19,u,[vVt("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),Uc],16),Ea("NoSpaceBeforeCloseBrace",u,20,[vVt("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),Uc],16),Ea("SpaceBetweenEmptyBraceBrackets",19,20,[O2("insertSpaceAfterOpeningAndBeforeClosingEmptyBraces")],4),Ea("NoSpaceBetweenEmptyBraceBrackets",19,20,[vVt("insertSpaceAfterOpeningAndBeforeClosingEmptyBraces"),Uc],16),Ea("SpaceAfterTemplateHeadAndMiddle",[16,17],u,[O2("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),zYr],4,1),Ea("SpaceBeforeTemplateMiddleAndTail",u,[17,18],[O2("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),Uc],4),Ea("NoSpaceAfterTemplateHeadAndMiddle",[16,17],u,[GN("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),zYr],16,1),Ea("NoSpaceBeforeTemplateMiddleAndTail",u,[17,18],[GN("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),Uc],16),Ea("SpaceAfterOpenBraceInJsxExpression",19,u,[O2("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),Uc,Nqe],4),Ea("SpaceBeforeCloseBraceInJsxExpression",u,20,[O2("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),Uc,Nqe],4),Ea("NoSpaceAfterOpenBraceInJsxExpression",19,u,[GN("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),Uc,Nqe],16),Ea("NoSpaceBeforeCloseBraceInJsxExpression",u,20,[GN("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),Uc,Nqe],16),Ea("SpaceAfterSemicolonInFor",27,u,[O2("insertSpaceAfterSemicolonInForStatements"),Uc,wVt],4),Ea("NoSpaceAfterSemicolonInFor",27,u,[GN("insertSpaceAfterSemicolonInForStatements"),Uc,wVt],16),Ea("SpaceBeforeBinaryOperator",u,b,[O2("insertSpaceBeforeAndAfterBinaryOperators"),Uc,DV],4),Ea("SpaceAfterBinaryOperator",b,u,[O2("insertSpaceBeforeAndAfterBinaryOperators"),Uc,DV],4),Ea("NoSpaceBeforeBinaryOperator",u,b,[GN("insertSpaceBeforeAndAfterBinaryOperators"),Uc,DV],16),Ea("NoSpaceAfterBinaryOperator",b,u,[GN("insertSpaceBeforeAndAfterBinaryOperators"),Uc,DV],16),Ea("SpaceBeforeOpenParenInFuncDecl",u,21,[O2("insertSpaceBeforeFunctionParenthesis"),Uc,w4],4),Ea("NoSpaceBeforeOpenParenInFuncDecl",u,21,[GN("insertSpaceBeforeFunctionParenthesis"),Uc,w4],16),Ea("NewLineBeforeOpenBraceInControl",Fe,19,[O2("placeOpenBraceOnNewLineForControlBlocks"),sZe,RVt],8,1),Ea("NewLineBeforeOpenBraceInFunction",de,19,[O2("placeOpenBraceOnNewLineForFunctions"),w4,RVt],8,1),Ea("NewLineBeforeOpenBraceInTypeScriptDeclWithBlock",Be,19,[O2("placeOpenBraceOnNewLineForFunctions"),UYr,RVt],8,1),Ea("SpaceAfterTypeAssertion",32,u,[O2("insertSpaceAfterTypeAssertion"),Uc,kVt],4),Ea("NoSpaceAfterTypeAssertion",32,u,[GN("insertSpaceAfterTypeAssertion"),Uc,kVt],16),Ea("SpaceBeforeTypeAnnotation",u,[58,59],[O2("insertSpaceBeforeTypeAnnotation"),Uc,TVt],4),Ea("NoSpaceBeforeTypeAnnotation",u,[58,59],[GN("insertSpaceBeforeTypeAnnotation"),Uc,TVt],16),Ea("NoOptionalSemicolon",27,I,[PYr("semicolons","remove"),als],32),Ea("OptionalSemicolon",u,I,[PYr("semicolons","insert"),cls],64)],De=[Ea("NoSpaceBeforeSemicolon",u,27,[Uc],16),Ea("SpaceBeforeOpenBraceInControl",Fe,19,[SVt("placeOpenBraceOnNewLineForControlBlocks"),sZe,xVt,NVt],4,1),Ea("SpaceBeforeOpenBraceInFunction",de,19,[SVt("placeOpenBraceOnNewLineForFunctions"),w4,Tqe,xVt,NVt],4,1),Ea("SpaceBeforeOpenBraceInTypeScriptDeclWithBlock",Be,19,[SVt("placeOpenBraceOnNewLineForFunctions"),UYr,xVt,NVt],4,1),Ea("NoSpaceBeforeComma",u,28,[Uc],16),Ea("NoSpaceBeforeOpenBracket",c(134,84),23,[Uc],16),Ea("NoSpaceAfterCloseBracket",24,u,[Uc,zcs],16),Ea("SpaceAfterSemicolon",27,u,[Uc],4),Ea("SpaceBetweenForAndAwaitKeyword",99,135,[Uc],4),Ea("SpaceBetweenDotDotDotAndTypeName",26,Ae,[Uc],16),Ea("SpaceBetweenStatements",[22,92,93,84],u,[Uc,DVt,Gcs],4),Ea("SpaceAfterTryCatchFinally",[113,85,98],19,[Uc],4)];return[...Ne,...Qe,...De]}function Ea(n,c,u,d,I,h=0){return{leftTokenRange:VYr(c),rightTokenRange:VYr(u),rule:{debugName:n,context:d,action:I,flags:h}}}function Mue(n){return{tokens:n,isSpecific:!0}}function VYr(n){return typeof n=="number"?Mue([n]):Ra(n)?Mue(n):n}function WYr(n,c,u=[]){let d=[];for(let I=n;I<=c;I++)Ue(u,I)||d.push(I);return Mue(d)}function PYr(n,c){return u=>u.options&&u.options[n]===c}function O2(n){return c=>c.options&&Qa(c.options,n)&&!!c.options[n]}function vVt(n){return c=>c.options&&Qa(c.options,n)&&!c.options[n]}function GN(n){return c=>!c.options||!Qa(c.options,n)||!c.options[n]}function SVt(n){return c=>!c.options||!Qa(c.options,n)||!c.options[n]||c.TokensAreOnSameLine()}function OYr(n){return c=>!c.options||!Qa(c.options,n)||!!c.options[n]}function wVt(n){return n.contextNode.kind===248}function Gcs(n){return!wVt(n)}function DV(n){switch(n.contextNode.kind){case 226:return n.contextNode.operatorToken.kind!==28;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 n.currentTokenSpan.kind===64||n.nextTokenSpan.kind===64;case 249:case 168:return n.currentTokenSpan.kind===103||n.nextTokenSpan.kind===103||n.currentTokenSpan.kind===64||n.nextTokenSpan.kind===64;case 250:return n.currentTokenSpan.kind===165||n.nextTokenSpan.kind===165}return!1}function iZe(n){return!DV(n)}function MYr(n){return!TVt(n)}function TVt(n){let c=n.contextNode.kind;return c===172||c===171||c===169||c===260||PR(c)}function Fcs(n){return Ql(n.contextNode)&&n.contextNode.questionToken}function Zcs(n){return!Fcs(n)}function Lcs(n){return n.contextNode.kind===227||n.contextNode.kind===194}function NVt(n){return n.TokensAreOnSameLine()||Tqe(n)}function QYr(n){return n.contextNode.kind===206||n.contextNode.kind===200||Vcs(n)}function RVt(n){return Tqe(n)&&!(n.NextNodeAllOnSameLine()||n.NextNodeBlockIsOnOneLine())}function YYr(n){return HYr(n)&&!(n.ContextNodeAllOnSameLine()||n.ContextNodeBlockIsOnOneLine())}function Vcs(n){return HYr(n)&&(n.ContextNodeAllOnSameLine()||n.ContextNodeBlockIsOnOneLine())}function HYr(n){return XYr(n.contextNode)}function Tqe(n){return XYr(n.nextTokenParent)}function XYr(n){if(KYr(n))return!0;switch(n.kind){case 241:case 269:case 210:case 268:return!0}return!1}function w4(n){switch(n.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 Wcs(n){return!w4(n)}function JYr(n){return n.contextNode.kind===262||n.contextNode.kind===218}function UYr(n){return KYr(n.contextNode)}function KYr(n){switch(n.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 Pcs(n){switch(n.currentTokenParent.kind){case 263:case 267:case 266:case 299:case 268:case 255:return!0;case 241:{let c=n.currentTokenParent.parent;if(!c||c.kind!==219&&c.kind!==218)return!0}}return!1}function sZe(n){switch(n.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 jYr(n){return n.contextNode.kind===210}function Ocs(n){return n.contextNode.kind===213}function Mcs(n){return n.contextNode.kind===214}function Qcs(n){return Ocs(n)||Mcs(n)}function Ycs(n){return n.currentTokenSpan.kind!==28}function Hcs(n){return n.nextTokenSpan.kind!==24}function Xcs(n){return n.nextTokenSpan.kind!==22}function Jcs(n){return n.contextNode.kind===219}function Ucs(n){return n.contextNode.kind===205}function Uc(n){return n.TokensAreOnSameLine()&&n.contextNode.kind!==12}function zYr(n){return n.contextNode.kind!==12}function DVt(n){return n.contextNode.kind!==284&&n.contextNode.kind!==288}function Nqe(n){return n.contextNode.kind===294||n.contextNode.kind===293}function Kcs(n){return n.nextTokenParent.kind===291||n.nextTokenParent.kind===295&&n.nextTokenParent.parent.kind===291}function qYr(n){return n.contextNode.kind===291}function jcs(n){return n.nextTokenParent.kind!==295}function $Yr(n){return n.nextTokenParent.kind===295}function eHr(n){return n.contextNode.kind===285}function zcs(n){return!w4(n)&&!Tqe(n)}function qcs(n){return n.TokensAreOnSameLine()&&FE(n.contextNode)&&tHr(n.currentTokenParent)&&!tHr(n.nextTokenParent)}function tHr(n){for(;n&&tn(n);)n=n.parent;return n&&n.kind===170}function $cs(n){return n.currentTokenParent.kind===261&&n.currentTokenParent.getStart(n.sourceFile)===n.currentTokenSpan.pos}function xVt(n){return n.formattingRequestKind!==2}function els(n){return n.contextNode.kind===267}function tls(n){return n.contextNode.kind===187}function rls(n){return n.contextNode.kind===180}function rHr(n,c){if(n.kind!==30&&n.kind!==32)return!1;switch(c.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 oZe(n){return rHr(n.currentTokenSpan,n.currentTokenParent)||rHr(n.nextTokenSpan,n.nextTokenParent)}function kVt(n){return n.contextNode.kind===216}function nls(n){return!kVt(n)}function ils(n){return n.currentTokenSpan.kind===116&&n.currentTokenParent.kind===222}function nHr(n){return n.contextNode.kind===229&&n.contextNode.expression!==void 0}function sls(n){return n.contextNode.kind===235}function iHr(n){return!ols(n)}function ols(n){switch(n.contextNode.kind){case 245:case 248:case 249:case 250:case 246:case 247:return!0;default:return!1}}function als(n){let c=n.nextTokenSpan.kind,u=n.nextTokenSpan.pos;if(QX(c)){let h=n.nextTokenParent===n.currentTokenParent?yY(n.currentTokenParent,Si(n.currentTokenParent,b=>!b.parent),n.sourceFile):n.nextTokenParent.getFirstToken(n.sourceFile);if(!h)return!0;c=h.kind,u=h.getStart(n.sourceFile)}let d=n.sourceFile.getLineAndCharacterOfPosition(n.currentTokenSpan.pos).line,I=n.sourceFile.getLineAndCharacterOfPosition(u).line;return d===I?c===20||c===1:c===240||c===27?!1:n.contextNode.kind===264||n.contextNode.kind===265?!n_(n.currentTokenParent)||!!n.currentTokenParent.type||c!==21:Ql(n.currentTokenParent)?!n.currentTokenParent.initializer:n.currentTokenParent.kind!==248&&n.currentTokenParent.kind!==242&&n.currentTokenParent.kind!==240&&c!==23&&c!==21&&c!==40&&c!==41&&c!==44&&c!==14&&c!==28&&c!==228&&c!==16&&c!==15&&c!==25}function cls(n){return rFe(n.currentTokenSpan.end,n.currentTokenParent,n.sourceFile)}function lls(n){return!Io(n.contextNode)||!du(n.contextNode.expression)||n.contextNode.expression.getText().includes(".")}function uls(n,c){return{options:n,getRules:gls(),host:c}}var GVt;function gls(){return GVt===void 0&&(GVt=dls(LYr())),GVt}function Als(n){let c=0;return n&1&&(c|=28),n&2&&(c|=96),n&28&&(c|=28),n&96&&(c|=96),c}function dls(n){let c=pls(n);return u=>{let d=c[sHr(u.currentTokenSpan.kind,u.nextTokenSpan.kind)];if(d){let I=[],h=0;for(let b of d){let R=~Als(h);b.action&R&&he(b.context,N=>N(u))&&(I.push(b),h|=b.action)}if(I.length)return I}}}function pls(n){let c=new Array(FVt*FVt),u=new Array(c.length);for(let d of n){let I=d.leftTokenRange.isSpecific&&d.rightTokenRange.isSpecific;for(let h of d.leftTokenRange.tokens)for(let b of d.rightTokenRange.tokens){let R=sHr(h,b),N=c[R];N===void 0&&(N=c[R]=[]),fls(N,d.rule,I,u,R)}}return c}function sHr(n,c){return w.assert(n<=165&&c<=165,"Must compute formatting context from tokens"),n*FVt+c}var Que=5,Rqe=31,FVt=166,v0e=(n=>(n[n.StopRulesSpecific=0]="StopRulesSpecific",n[n.StopRulesAny=Que*1]="StopRulesAny",n[n.ContextRulesSpecific=Que*2]="ContextRulesSpecific",n[n.ContextRulesAny=Que*3]="ContextRulesAny",n[n.NoContextRulesSpecific=Que*4]="NoContextRulesSpecific",n[n.NoContextRulesAny=Que*5]="NoContextRulesAny",n))(v0e||{});function fls(n,c,u,d,I){let h=c.action&3?u?0:v0e.StopRulesAny:c.context!==wqe?u?v0e.ContextRulesSpecific:v0e.ContextRulesAny:u?v0e.NoContextRulesSpecific:v0e.NoContextRulesAny,b=d[I]||0;n.splice(Ils(b,h),0,c),d[I]=Cls(b,h)}function Ils(n,c){let u=0;for(let d=0;d<=c;d+=Que)u+=n&Rqe,n>>=Que;return u}function Cls(n,c){let u=(n>>c&Rqe)+1;return w.assert((u&Rqe)===u,"Adding more rules into the sub-bucket than allowed. Maximum allowed is 32 rules."),n&~(Rqe<w.formatSyntaxKind(u)}),d}function mls(n,c,u){let d=c.getLineAndCharacterOfPosition(n).line;if(d===0)return[];let I=TX(d,c);for(;$_(c.text.charCodeAt(I));)I--;HC(c.text.charCodeAt(I))&&I--;let h={pos:uN(d-1,c),end:I+1};return aZe(h,c,u,2)}function hls(n,c,u){let d=ZVt(n,27,c);return oHr(LVt(d),c,u,3)}function _ls(n,c,u){let d=ZVt(n,19,c);if(!d)return[];let I=d.parent,h=LVt(I),b={pos:Vv(h.getStart(c),c),end:n};return aZe(b,c,u,4)}function yls(n,c,u){let d=ZVt(n,20,c);return oHr(LVt(d),c,u,5)}function bls(n,c){let u={pos:0,end:n.text.length};return aZe(u,n,c,0)}function Els(n,c,u,d){let I={pos:Vv(n,u),end:c};return aZe(I,u,d,1)}function ZVt(n,c,u){let d=_m(n,u);return d&&d.kind===c&&n===d.getEnd()?d:void 0}function LVt(n){let c=n;for(;c&&c.parent&&c.parent.end===n.end&&!Bls(c.parent,c);)c=c.parent;return c}function Bls(n,c){switch(n.kind){case 263:case 264:return V2(n.members,c);case 267:let u=n.body;return!!u&&u.kind===268&&V2(u.statements,c);case 307:case 241:case 268:return V2(n.statements,c);case 299:return V2(n.block.statements,c)}return!1}function vls(n,c){return u(c);function u(d){let I=mu(d,h=>O7e(h.getStart(c),h.end,n)&&h);if(I){let h=u(I);if(h)return h}return d}}function Sls(n,c){if(!n.length)return I;let u=n.filter(h=>Iue(c,h.start,h.start+h.length)).sort((h,b)=>h.start-b.start);if(!u.length)return I;let d=0;return h=>{for(;;){if(d>=u.length)return!1;let b=u[d];if(h.end<=b.start)return!1;if(kGe(h.pos,h.end,b.start,b.start+b.length))return!0;d++}};function I(){return!1}}function wls(n,c,u){let d=n.getStart(u);if(d===c.pos&&n.end===c.end)return d;let I=_m(c.pos,u);return!I||I.end>=c.pos?n.pos:I.end}function Tls(n,c,u){let d=-1,I;for(;n;){let h=u.getLineAndCharacterOfPosition(n.getStart(u)).line;if(d!==-1&&h!==d)break;if(FN.shouldIndentChildNode(c,n,I,u))return c.indentSize;d=h,I=n,n=n.parent}return 0}function Nls(n,c,u,d,I,h){let b={pos:n.pos,end:n.end};return BVt(c.text,u,b.pos,b.end,R=>aHr(b,n,d,I,R,h,1,N=>!1,c))}function oHr(n,c,u,d){if(!n)return[];let I={pos:Vv(n.getStart(c),c),end:n.end};return aZe(I,c,u,d)}function aZe(n,c,u,d){let I=vls(n,c);return BVt(c.text,c.languageVariant,wls(I,n,c),n.end,h=>aHr(n,I,FN.getIndentationForNode(I,n,c,u.options),Tls(I,u.options,c),h,u,d,Sls(c.parseDiagnostics,n),c))}function aHr(n,c,u,d,I,{options:h,getRules:b,host:R},N,V,P){var M;let te=new GYr(P,N,h),re,ue,Ae,de,Be,Fe=-1,Ne=[];if(I.advance(),I.isOnToken()){let jt=P.getLineAndCharacterOfPosition(c.getStart(P)).line,mr=jt;FE(c)&&(mr=P.getLineAndCharacterOfPosition(F$(c,P)).line),st(c,c,jt,mr,u,d)}let Qe=I.getCurrentLeadingTrivia();if(Qe){let jt=FN.nodeWillIndentChild(h,c,void 0,P,!1)?u+h.indentSize:u;nt(Qe,jt,!0,mr=>{it(mr,P.getLineAndCharacterOfPosition(mr.pos),c,c,void 0),dt(mr.pos,jt,!1)}),h.trimTrailingWhitespace!==!1&&Kt(Qe)}if(ue&&I.getTokenFullStart()>=n.end){let jt=I.isOnEOF()?I.readEOFTokenRange():I.isOnToken()?I.readTokenInfo(c).token:void 0;if(jt&&jt.pos===re){let mr=((M=_m(jt.end,P,c))==null?void 0:M.parent)||Ae;It(jt,P.getLineAndCharacterOfPosition(jt.pos).line,mr,ue,de,Ae,mr,void 0)}}return Ne;function De(jt,mr,Pt,Vr,Yr){if(Iue(Vr,jt,mr)||Z_e(Vr,jt,mr)){if(Yr!==-1)return Yr}else{let pr=P.getLineAndCharacterOfPosition(jt).line,zr=Vv(jt,P),$n=FN.findFirstNonWhitespaceColumn(zr,jt,P,h);if(pr!==Pt||jt===$n){let bi=FN.getBaseIndentation(h);return bi>$n?bi:$n}}return-1}function lt(jt,mr,Pt,Vr,Yr,pr){let zr=FN.shouldIndentChildNode(h,jt)?h.indentSize:0;return pr===mr?{indentation:mr===Be?Fe:Yr.getIndentation(),delta:Math.min(h.indentSize,Yr.getDelta(jt)+zr)}:Pt===-1?jt.kind===21&&mr===Be?{indentation:Fe,delta:Yr.getDelta(jt)}:FN.childStartsOnTheSameLineWithElseInIfStatement(Vr,jt,mr,P)||FN.childIsUnindentedBranchOfConditionalExpression(Vr,jt,mr,P)||FN.argumentStartsOnSameLineAsPreviousArgument(Vr,jt,mr,P)?{indentation:Yr.getIndentation(),delta:zr}:{indentation:Yr.getIndentation()+Yr.getDelta(jt),delta:zr}:{indentation:Pt,delta:zr}}function Le(jt){if(ew(jt)){let mr=be(jt.modifiers,gg,ke(jt.modifiers,GC));if(mr)return mr.kind}switch(jt.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(jt.asteriskToken)return 42;case 172:case 169:let mr=vl(jt);if(mr)return mr.kind}}function je(jt,mr,Pt,Vr){return{getIndentationForComment:(zr,$n,bi)=>{switch(zr){case 20:case 24:case 22:return Pt+pr(bi)}return $n!==-1?$n:Pt},getIndentationForToken:(zr,$n,bi,Pi)=>!Pi&&Yr(zr,$n,bi)?Pt+pr(bi):Pt,getIndentation:()=>Pt,getDelta:pr,recomputeIndentation:(zr,$n)=>{FN.shouldIndentChildNode(h,$n,jt,P)&&(Pt+=zr?h.indentSize:-h.indentSize,Vr=FN.shouldIndentChildNode(h,jt)?h.indentSize:0)}};function Yr(zr,$n,bi){switch($n){case 19:case 20:case 22:case 93:case 117:case 60:return!1;case 44:case 32:switch(bi.kind){case 286:case 287:case 285:return!1}break;case 23:case 24:if(bi.kind!==200)return!1;break}return mr!==zr&&!(FE(jt)&&$n===Le(jt))}function pr(zr){return FN.nodeWillIndentChild(h,jt,zr,P,!0)?Vr:0}}function st(jt,mr,Pt,Vr,Yr,pr){if(!Iue(n,jt.getStart(P),jt.getEnd()))return;let zr=je(jt,Pt,Yr,pr),$n=mr;for(mu(jt,gi=>{bi(gi,-1,jt,zr,Pt,Vr,!1)},gi=>{Pi(gi,jt,Pt,zr)});I.isOnToken()&&I.getTokenFullStart()Math.min(jt.end,n.end))break;Ns(gi,jt,zr,jt)}function bi(gi,jn,xs,Ec,xi,rc,Vl,ul){if(w.assert(!qd(gi)),wf(gi)||k$(xs,gi))return jn;let Cc=gi.getStart(P),_s=P.getLineAndCharacterOfPosition(Cc).line,Wu=_s;FE(gi)&&(Wu=P.getLineAndCharacterOfPosition(F$(gi,P)).line);let ir=-1;if(Vl&&V2(n,xs)&&(ir=De(Cc,gi.end,xi,n,jn),ir!==-1&&(jn=ir)),!Iue(n,gi.pos,gi.end))return gi.endn.end)return jn;if(Hs.token.end>Cc){Hs.token.pos>Cc&&I.skipToStartOf(gi);break}Ns(Hs,jt,Ec,jt)}if(!I.isOnToken()||I.getTokenFullStart()>=n.end)return jn;if(O9(gi)){let Hs=I.readTokenInfo(gi);if(gi.kind!==12)return w.assert(Hs.token.end===gi.end,"Token end is child end"),Ns(Hs,jt,Ec,gi),jn}let ni=gi.kind===170?_s:rc,gs=lt(gi,_s,ir,jt,Ec,ni);return st(gi,$n,_s,Wu,gs.indentation,gs.delta),$n=jt,ul&&xs.kind===209&&jn===-1&&(jn=gs.indentation),jn}function Pi(gi,jn,xs,Ec){w.assert(gG(gi)),w.assert(!qd(gi));let xi=Rls(jn,gi),rc=Ec,Vl=xs;if(!Iue(n,gi.pos,gi.end)){gi.endgi.pos)break;if(_s.token.kind===xi){Vl=P.getLineAndCharacterOfPosition(_s.token.pos).line,Ns(_s,jn,Ec,jn);let Wu;if(Fe!==-1)Wu=Fe;else{let ir=Vv(_s.token.pos,P);Wu=FN.findFirstNonWhitespaceColumn(ir,_s.token.pos,P,h)}rc=je(jn,xs,Wu,h.indentSize)}else Ns(_s,jn,Ec,jn)}let ul=-1;for(let _s=0;_sdt(gs.pos,ni,!1))}Wu!==-1&&ir&&(dt(gi.token.pos,Wu,ul===1),Be=_s.line,Fe=Wu)}I.advance(),$n=jn}}function nt(jt,mr,Pt,Vr){for(let Yr of jt){let pr=V2(n,Yr);switch(Yr.kind){case 3:pr&&Ye(Yr,mr,!Pt),Pt=!1;break;case 2:Pt&&pr&&Vr(Yr),Pt=!1;break;case 4:Pt=!0;break}}return Pt}function qe(jt,mr,Pt,Vr){for(let Yr of jt)if(OGe(Yr.kind)&&V2(n,Yr)){let pr=P.getLineAndCharacterOfPosition(Yr.pos);it(Yr,pr,mr,Pt,Vr)}}function it(jt,mr,Pt,Vr,Yr){let pr=V(jt),zr=0;if(!pr)if(ue)zr=It(jt,mr.line,Pt,ue,de,Ae,Vr,Yr);else{let $n=P.getLineAndCharacterOfPosition(n.pos);ht($n.line,mr.line)}return ue=jt,re=jt.end,Ae=Pt,de=mr.line,zr}function It(jt,mr,Pt,Vr,Yr,pr,zr,$n){te.updateContext(Vr,pr,jt,Pt,zr);let bi=b(te),Pi=te.options.trimTrailingWhitespace!==!1,Ns=0;return bi?U(bi,gi=>{if(Ns=Dr(gi,Vr,Yr,jt,mr),$n)switch(Ns){case 2:Pt.getStart(P)===jt.pos&&$n.recomputeIndentation(!1,zr);break;case 1:Pt.getStart(P)===jt.pos&&$n.recomputeIndentation(!0,zr);break;default:w.assert(Ns===0)}Pi=Pi&&!(gi.action&16)&&gi.flags!==1}):Pi=Pi&&jt.kind!==1,mr!==Yr&&Pi&&ht(Yr,mr,Vr),Ns}function dt(jt,mr,Pt){let Vr=VVt(mr,h);if(Pt)kt(jt,0,Vr);else{let Yr=P.getLineAndCharacterOfPosition(jt),pr=uN(Yr.line,P);(mr!==wt(pr,Yr.character)||vt(Vr,pr))&&kt(pr,Yr.character,Vr)}}function wt(jt,mr){let Pt=0;for(let Vr=0;Vr0){let rc=VVt(xi,h);kt(xs,Ec.character,rc)}else Lt(xs,Ec.character)}}function ht(jt,mr,Pt){for(let Vr=jt;Vrpr)continue;let zr=Et(Yr,pr);zr!==-1&&(w.assert(zr===Yr||!$_(P.text.charCodeAt(zr-1))),Lt(zr,pr+1-zr))}}function Et(jt,mr){let Pt=mr;for(;Pt>=jt&&$_(P.text.charCodeAt(Pt));)Pt--;return Pt!==mr?Pt+1:-1}function Kt(jt){let mr=ue?ue.end:n.pos;for(let Pt of jt)OGe(Pt.kind)&&(mrF_e(V,c)||c===V.end&&(V.kind===2||c===n.getFullWidth()))}function Rls(n,c){switch(n.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(n.typeParameters===c)return 30;if(n.parameters===c)return 21;break;case 213:case 214:if(n.typeArguments===c)return 30;if(n.arguments===c)return 21;break;case 263:case 231:case 264:case 265:if(n.typeParameters===c)return 30;break;case 183:case 215:case 186:case 233:case 205:if(n.typeArguments===c)return 30;break;case 187:return 19}return 0}function Dls(n){switch(n){case 21:return 22;case 30:return 32;case 19:return 20}return 0}var xqe,S0e,w0e;function VVt(n,c){if((!xqe||xqe.tabSize!==c.tabSize||xqe.indentSize!==c.indentSize)&&(xqe={tabSize:c.tabSize,indentSize:c.indentSize},S0e=w0e=void 0),c.convertTabsToSpaces){let d,I=Math.floor(n/c.indentSize),h=n%c.indentSize;return w0e||(w0e=[]),w0e[I]===void 0?(d=O_e(" ",c.indentSize*I),w0e[I]=d):d=w0e[I],h?d+O_e(" ",h):d}else{let d=Math.floor(n/c.tabSize),I=n-d*c.tabSize,h;return S0e||(S0e=[]),S0e[d]===void 0?S0e[d]=h=O_e(" ",d):h=S0e[d],I?h+O_e(" ",I):h}}var FN;(n=>{let c;(Ye=>{Ye[Ye.Unknown=-1]="Unknown"})(c||(c={}));function u(Ye,ht,Et,Kt=!1){if(Ye>ht.text.length)return R(Et);if(Et.indentStyle===0)return 0;let Tt=_m(Ye,ht,void 0,!0),Lt=cHr(ht,Ye,Tt||null);if(Lt&&Lt.kind===3)return d(ht,Ye,Et,Lt);if(!Tt)return R(Et);if(U7e(Tt.kind)&&Tt.getStart(ht)<=Ye&&Ye=0),Tt<=Lt)return it(uN(Lt,Ye),ht,Ye,Et);let kt=uN(Tt,Ye),{column:Zt,character:Dr}=qe(kt,ht,Ye,Et);return Zt===0?Zt:Ye.text.charCodeAt(kt+Dr)===42?Zt-1:Zt}function I(Ye,ht,Et){let Kt=ht;for(;Kt>0;){let Lt=Ye.text.charCodeAt(Kt);if(!Xm(Lt))break;Kt--}let Tt=Vv(Kt,Ye);return it(Tt,Kt,Ye,Et)}function h(Ye,ht,Et,Kt,Tt,Lt){let kt,Zt=Et;for(;Zt;){if(M7e(Zt,ht,Ye)&&wt(Lt,Zt,kt,Ye,!0)){let jt=ue(Zt,Ye),mr=re(Et,Zt,Kt,Ye),Pt=mr!==0?Tt&&mr===2?Lt.indentSize:0:Kt!==jt.line?Lt.indentSize:0;return N(Zt,jt,void 0,Pt,Ye,!0,Lt)}let Dr=je(Zt,Ye,Lt,!0);if(Dr!==-1)return Dr;kt=Zt,Zt=Zt.parent}return R(Lt)}function b(Ye,ht,Et,Kt){let Tt=Et.getLineAndCharacterOfPosition(Ye.getStart(Et));return N(Ye,Tt,ht,0,Et,!1,Kt)}n.getIndentationForNode=b;function R(Ye){return Ye.baseIndentSize||0}n.getBaseIndentation=R;function N(Ye,ht,Et,Kt,Tt,Lt,kt){var Zt;let Dr=Ye.parent;for(;Dr;){let jt=!0;if(Et){let Yr=Ye.getStart(Tt);jt=YrEt.end}let mr=V(Dr,Ye,Tt),Pt=mr.line===ht.line||de(Dr,Ye,ht.line,Tt);if(jt){let Yr=(Zt=Ne(Ye,Tt))==null?void 0:Zt[0],pr=!!Yr&&ue(Yr,Tt).line>mr.line,zr=je(Ye,Tt,kt,pr);if(zr!==-1||(zr=M(Ye,Dr,ht,Pt,Tt,kt),zr!==-1))return zr+Kt}wt(kt,Dr,Ye,Tt,Lt)&&!Pt&&(Kt+=kt.indentSize);let Vr=Ae(Dr,Ye,ht.line,Tt);Ye=Dr,Dr=Ye.parent,ht=Vr?Tt.getLineAndCharacterOfPosition(Ye.getStart(Tt)):mr}return Kt+R(kt)}function V(Ye,ht,Et){let Kt=Ne(ht,Et),Tt=Kt?Kt.pos:Ye.getStart(Et);return Et.getLineAndCharacterOfPosition(Tt)}function P(Ye,ht,Et){let Kt=hGt(Ye);return Kt&&Kt.listItemIndex>0?st(Kt.list.getChildren(),Kt.listItemIndex-1,ht,Et):-1}function M(Ye,ht,Et,Kt,Tt,Lt){return(DC(Ye)||EX(Ye))&&(ht.kind===307||!Kt)?nt(Et,Tt,Lt):-1}let te;(Ye=>{Ye[Ye.Unknown=0]="Unknown",Ye[Ye.OpenBrace=1]="OpenBrace",Ye[Ye.CloseBrace=2]="CloseBrace"})(te||(te={}));function re(Ye,ht,Et,Kt){let Tt=yY(Ye,ht,Kt);if(!Tt)return 0;if(Tt.kind===19)return 1;if(Tt.kind===20){let Lt=ue(Tt,Kt).line;return Et===Lt?2:0}return 0}function ue(Ye,ht){return ht.getLineAndCharacterOfPosition(Ye.getStart(ht))}function Ae(Ye,ht,Et,Kt){if(!(cu(Ye)&&Ue(Ye.arguments,ht)))return!1;let Tt=Ye.expression.getEnd();return Ll(Kt,Tt).line===Et}n.isArgumentAndStartLineOverlapsExpressionBeingCalled=Ae;function de(Ye,ht,Et,Kt){if(Ye.kind===245&&Ye.elseStatement===ht){let Tt=Od(Ye,93,Kt);return w.assert(Tt!==void 0),ue(Tt,Kt).line===Et}return!1}n.childStartsOnTheSameLineWithElseInIfStatement=de;function Be(Ye,ht,Et,Kt){if(BN(Ye)&&(ht===Ye.whenTrue||ht===Ye.whenFalse)){let Tt=Ll(Kt,Ye.condition.end).line;if(ht===Ye.whenTrue)return Et===Tt;{let Lt=ue(Ye.whenTrue,Kt).line,kt=Ll(Kt,Ye.whenTrue.end).line;return Tt===Lt&&kt===Et}}return!1}n.childIsUnindentedBranchOfConditionalExpression=Be;function Fe(Ye,ht,Et,Kt){if(BB(Ye)){if(!Ye.arguments)return!1;let Tt=be(Ye.arguments,Dr=>Dr.pos===ht.pos);if(!Tt)return!1;let Lt=Ye.arguments.indexOf(Tt);if(Lt===0)return!1;let kt=Ye.arguments[Lt-1],Zt=Ll(Kt,kt.getEnd()).line;if(Et===Zt)return!0}return!1}n.argumentStartsOnSameLineAsPreviousArgument=Fe;function Ne(Ye,ht){return Ye.parent&&De(Ye.getStart(ht),Ye.getEnd(),Ye.parent,ht)}n.getContainingList=Ne;function Qe(Ye,ht,Et){return ht&&De(Ye,Ye,ht,Et)}function De(Ye,ht,Et,Kt){switch(Et.kind){case 183:return Tt(Et.typeArguments);case 210:return Tt(Et.properties);case 209:return Tt(Et.elements);case 187:return Tt(Et.members);case 262:case 218:case 219:case 174:case 173:case 179:case 176:case 185:case 180:return Tt(Et.typeParameters)||Tt(Et.parameters);case 177:return Tt(Et.parameters);case 263:case 231:case 264:case 265:case 345:return Tt(Et.typeParameters);case 214:case 213:return Tt(Et.typeArguments)||Tt(Et.arguments);case 261:return Tt(Et.declarations);case 275:case 279:return Tt(Et.elements);case 206:case 207:return Tt(Et.elements)}function Tt(Lt){return Lt&&Z_e(lt(Et,Lt,Kt),Ye,ht)?Lt:void 0}}function lt(Ye,ht,Et){let Kt=Ye.getChildren(Et);for(let Tt=1;Tt=0&&ht=0;kt--){if(Ye[kt].kind===28)continue;if(Et.getLineAndCharacterOfPosition(Ye[kt].end).line!==Lt.line)return nt(Lt,Et,Kt);Lt=ue(Ye[kt],Et)}return-1}function nt(Ye,ht,Et){let Kt=ht.getPositionOfLineAndCharacter(Ye.line,0);return it(Kt,Kt+Ye.character,ht,Et)}function qe(Ye,ht,Et,Kt){let Tt=0,Lt=0;for(let kt=Ye;ktkls});var xls="providePostPasteEdits";function kls(n,c,u,d,I,h,b,R){return{edits:po.ChangeTracker.with({host:I,formatContext:b,preferences:h},V=>Gls(n,c,u,d,I,h,b,R,V)),fixId:xls}}function Gls(n,c,u,d,I,h,b,R,N){let V;c.length!==u.length&&(V=c.length===1?c:[c.join(` -`)]);let P=[],M=n.text;for(let te=u.length-1;te>=0;te--){let{pos:re,end:ue}=u[te];M=V?M.slice(0,re)+V[0]+M.slice(ue):M.slice(0,re)+c[te]+M.slice(ue)}w.checkDefined(I.runWithTemporaryFileUpdate).call(I,n.fileName,M,(te,re,ue)=>{let Ae=d0.createImportAdder(ue,te,h,I);if(d?.range){w.assert(d.range.length===c.length),d.range.forEach(Fe=>{let Ne=d.file.statements,Qe=ke(Ne,lt=>lt.end>Fe.pos);if(Qe===-1)return;let De=ke(Ne,lt=>lt.end>=Fe.end,Qe);De!==-1&&Fe.end<=Ne[De].getStart()&&De--,P.push(...Ne.slice(Qe,De===-1?Ne.length:De+1))});let de=bFe(d.file,P,re.getTypeChecker(),aZt(ue,P,re.getTypeChecker()));w.assertIsDefined(re);let Be=!Gje(n.fileName,re,I,!!d.file.commonJsModuleIndicator);qFt(d.file,de.targetFileImportsFromOldFile,N,Be),lZt(d.file,de.oldImportsNeededByTargetFile,de.targetFileImportsFromOldFile,re.getTypeChecker(),te,Ae)}else{let de={sourceFile:ue,program:re,cancellationToken:R,host:I,preferences:h,formatContext:b};mu(ue,function Be(Fe){sr(Fe)&&!re?.getTypeChecker().resolveName(Fe.text,Fe,-1,!1)&&Ae.addImportForUnresolvedIdentifier(de,Fe,!0),Fe.forEachChild(Be)})}Ae.writeFixes(N,W2(d?d.file:n,h))}),u.forEach((te,re)=>{N.replaceRangeWithText(n,{pos:te.pos,end:te.end},V?V[0]:c[re])})}var lHr={};o(lHr,{ANONYMOUS:()=>Bje,AccessFlags:()=>Hy,AssertionLevel:()=>_l,AssignmentDeclarationKind:()=>qT,AssignmentKind:()=>URe,Associativity:()=>rDe,BreakpointResolver:()=>Eze,BuilderFileEmit:()=>zxt,BuilderProgramKind:()=>ikt,BuilderState:()=>uT,CallHierarchy:()=>e7,CharacterCodes:()=>iG,CheckFlags:()=>OI,CheckMode:()=>Y8e,ClassificationType:()=>D7e,ClassificationTypeNames:()=>uGt,CommentDirectiveType:()=>vn,Comparison:()=>B,CompletionInfoFlags:()=>nGt,CompletionTriggerKind:()=>N7e,Completions:()=>o7,ContainerFlags:()=>SDt,ContextFlags:()=>Cv,Debug:()=>w,DiagnosticCategory:()=>m1,Diagnostics:()=>Z,DocumentHighlights:()=>CFe,ElementFlags:()=>Kh,EmitFlags:()=>y1,EmitHint:()=>Jy,EmitOnly:()=>mg,EndOfLineState:()=>oGt,ExitStatus:()=>rI,ExportKind:()=>aFt,Extension:()=>_1,ExternalEmitHelpers:()=>bS,FileIncludeKind:()=>wo,FilePreprocessingDiagnosticsKind:()=>fg,FileSystemEntryKind:()=>j_,FileWatcherEventKind:()=>Hw,FindAllReferences:()=>Yp,FlattenLevel:()=>$Dt,FlowFlags:()=>Wr,ForegroundColorEscapeSequences:()=>Qxt,FunctionFlags:()=>$Re,GeneratedIdentifierFlags:()=>dc,GetLiteralTextFlags:()=>Uae,GoToDefinition:()=>Kte,HighlightSpanKind:()=>tGt,IdentifierNameMap:()=>Bte,IdentifierNameMultiMap:()=>XDt,ImportKind:()=>oFt,ImportsNotUsedAsValues:()=>Yw,IndentStyle:()=>rGt,IndexFlags:()=>py,IndexKind:()=>BE,InferenceFlags:()=>hv,InferencePriority:()=>Mw,InlayHintKind:()=>eGt,InlayHints:()=>pqe,InternalEmitFlags:()=>vE,InternalSymbolName:()=>uA,IntersectionFlags:()=>zT,InvalidatedProjectKind:()=>Tkt,JSDocParsingMode:()=>fx,JsDoc:()=>mP,JsTyping:()=>kN,JsxEmit:()=>dp,JsxFlags:()=>mS,JsxReferenceKind:()=>hS,LanguageFeatureMinimumTarget:()=>SE,LanguageServiceMode:()=>qkt,LanguageVariant:()=>eN,LexicalEnvironmentFlags:()=>tN,ListFormat:()=>_v,LogLevel:()=>ie,MapCode:()=>fqe,MemberOverrideStatus:()=>gC,ModifierFlags:()=>k0,ModuleDetectionKind:()=>Qw,ModuleInstanceState:()=>BDt,ModuleKind:()=>zh,ModuleResolutionKind:()=>Rb,ModuleSpecifierEnding:()=>XDe,NavigateTo:()=>NFt,NavigationBar:()=>DFt,NewLineKind:()=>yS,NodeBuilderFlags:()=>Pw,NodeCheckFlags:()=>VA,NodeFactoryFlags:()=>She,NodeFlags:()=>EE,NodeResolutionFeatures:()=>ADt,ObjectFlags:()=>Vf,OperationCanceledException:()=>os,OperatorPrecedence:()=>nDe,OrganizeImports:()=>hP,OrganizeImportsMode:()=>T7e,OuterExpressionKinds:()=>qh,OutliningElementsCollector:()=>mqe,OutliningSpanKind:()=>iGt,OutputFileType:()=>sGt,PackageJsonAutoImportPreference:()=>zkt,PackageJsonDependencyGroup:()=>jkt,PatternMatchKind:()=>Yje,PollingInterval:()=>Wa,PollingWatchKind:()=>d2,PragmaKindFlags:()=>yv,PrivateIdentifierKind:()=>Nhe,ProcessLevel:()=>sxt,ProgramUpdateLevel:()=>Vxt,QuotePreference:()=>GGt,RegularExpressionFlags:()=>at,RelationComparisonResult:()=>I1,Rename:()=>rZe,ScriptElementKind:()=>cGt,ScriptElementKindModifier:()=>lGt,ScriptKind:()=>$T,ScriptSnapshot:()=>BGe,ScriptTarget:()=>Db,SemanticClassificationFormat:()=>$kt,SemanticMeaning:()=>gGt,SemicolonPreference:()=>R7e,SignatureCheckMode:()=>H8e,SignatureFlags:()=>Xy,SignatureHelp:()=>h0e,SignatureInfo:()=>jxt,SignatureKind:()=>_S,SmartSelectionRange:()=>yqe,SnippetKind:()=>Eh,StatisticType:()=>Pkt,StructureIsReused:()=>gf,SymbolAccessibility:()=>K_,SymbolDisplay:()=>MZ,SymbolDisplayPartKind:()=>SGe,SymbolFlags:()=>A2,SymbolFormatFlags:()=>C1,SyntaxKind:()=>g2,SyntheticSymbolKind:()=>Ow,Ternary:()=>xR,ThrottledCancellationToken:()=>PZt,TokenClass:()=>aGt,TokenFlags:()=>$t,TransformFlags:()=>xb,TypeFacts:()=>Q8e,TypeFlags:()=>Am,TypeFormatFlags:()=>Qy,TypeMapKind:()=>mv,TypePredicateKind:()=>jp,TypeReferenceSerializationKind:()=>dy,UnionReduction:()=>Nb,UpToDateStatusType:()=>ykt,VarianceFlags:()=>Yy,Version:()=>Dn,VersionRange:()=>Xc,WatchDirectoryFlags:()=>G0,WatchDirectoryKind:()=>h1,WatchFileKind:()=>An,WatchLogLevel:()=>Pxt,WatchType:()=>hm,accessPrivateIdentifier:()=>zDt,addDisposableResourceHelper:()=>Wxe,addEmitFlags:()=>XS,addEmitHelper:()=>nY,addEmitHelpers:()=>EN,addInternalEmitFlags:()=>eY,addNodeFactoryPatcher:()=>_le,addObjectAllocatorPatcher:()=>pKe,addRange:()=>ai,addRelatedInfo:()=>eg,addSyntheticLeadingComment:()=>i4,addSyntheticTrailingComment:()=>Ele,addToSeen:()=>R2,advancedAsyncSuperHelper:()=>KS,affectsDeclarationPathOptionDeclarations:()=>kRt,affectsEmitOptionDeclarations:()=>xRt,allKeysStartWithDot:()=>Tke,altDirectorySeparator:()=>AC,and:()=>uh,append:()=>Hr,appendIfUnique:()=>sg,arrayFrom:()=>on,arrayIsEqualTo:()=>Cn,arrayIsHomogeneous:()=>txe,arrayIsSorted:()=>nn,arrayOf:()=>og,arrayReverseIterator:()=>Zu,arrayToMap:()=>cA,arrayToMultiMap:()=>No,arrayToNumericMap:()=>HA,arraysEqual:()=>Je,assertType:()=>wb,assign:()=>Bo,assignHelper:()=>hxe,asyncDelegator:()=>yxe,asyncGeneratorHelper:()=>_xe,asyncSuperHelper:()=>Nle,asyncValues:()=>bxe,attachFileToDiagnostics:()=>RZ,awaitHelper:()=>N6,awaiterHelper:()=>Bxe,base64decode:()=>yDe,base64encode:()=>i6,binarySearch:()=>Lg,binarySearchKey:()=>cf,bindSourceFile:()=>wDt,breakIntoCharacterSpans:()=>yFt,breakIntoWordSpans:()=>bFt,buildLinkParts:()=>QGt,buildOpts:()=>zhe,buildOverload:()=>AHr,bundlerModuleNameResolver:()=>dDt,canBeConvertedToAsync:()=>jje,canHaveDecorators:()=>pY,canHaveExportModifier:()=>Xee,canHaveFlowNode:()=>gee,canHaveIllegalDecorators:()=>$Ke,canHaveIllegalModifiers:()=>dRt,canHaveIllegalType:()=>jDr,canHaveIllegalTypeParameters:()=>ARt,canHaveJSDoc:()=>Aee,canHaveLocals:()=>Tv,canHaveModifiers:()=>ew,canHaveSymbol:()=>B2,canIncludeBindAndCheckDiagnsotics:()=>Hee,canJsonReportNoInputFiles:()=>Qle,canProduceDiagnostics:()=>Mke,canUsePropertyAccess:()=>hhe,canWatchAffectingLocation:()=>Akt,canWatchAtTypes:()=>gkt,canWatchDirectoryOrFile:()=>oGe,cartesianProduct:()=>Ef,cast:()=>ps,chainBundle:()=>lT,chainDiagnosticMessages:()=>su,changeAnyExtension:()=>S1,changeCompilerHostLikeToUseCache:()=>cue,changeExtension:()=>BG,changeFullExtension:()=>Iy,changesAffectModuleResolution:()=>wB,changesAffectingProgramStructure:()=>N$,characterToRegularExpressionFlag:()=>dA,childIsDecorated:()=>Z8,classElementOrClassElementParameterIsDecorated:()=>ame,classHasClassThisAssignment:()=>o6e,classHasDeclaredOrExplicitlyAssignedName:()=>a6e,classHasExplicitlyAssignedName:()=>Wke,classOrConstructorParameterIsDecorated:()=>Tx,classPrivateFieldGetHelper:()=>Zxe,classPrivateFieldInHelper:()=>Vxe,classPrivateFieldSetHelper:()=>Lxe,classicNameResolver:()=>bDt,classifier:()=>YZt,cleanExtendedConfigCache:()=>jke,clear:()=>Ur,clearMap:()=>Y0,clearSharedExtendedConfigFileWatcher:()=>_6e,climbPastPropertyAccess:()=>NGe,climbPastPropertyOrElementAccess:()=>fGt,clone:()=>Vd,cloneCompilerOptions:()=>j7e,closeFileWatcher:()=>RB,closeFileWatcherOf:()=>ZB,codefix:()=>d0,collapseTextChangeRangesAcrossMultipleVersions:()=>pt,collectExternalModuleInfo:()=>r6e,combine:()=>Ws,combinePaths:()=>xo,commandLineOptionOfCustomType:()=>VRt,commentPragmas:()=>rN,commonOptionsWithBuild:()=>cke,commonPackageFolders:()=>QDe,compact:()=>Vn,compareBooleans:()=>RA,compareDataObjects:()=>Pce,compareDiagnostics:()=>g6,compareDiagnosticsSkipRelatedInformation:()=>Xce,compareEmitHelpers:()=>Sle,compareNumberOfDirectorySeparators:()=>Qee,comparePaths:()=>Ah,comparePathsCaseInsensitive:()=>dC,comparePathsCaseSensitive:()=>Xw,comparePatternKeys:()=>W8e,compareProperties:()=>Zl,compareStringsCaseInsensitive:()=>fs,compareStringsCaseInsensitiveEslintCompatible:()=>Ao,compareStringsCaseSensitive:()=>Do,compareStringsCaseSensitiveUI:()=>Li,compareTextSpans:()=>Wp,compareValues:()=>Xl,compileOnSaveCommandLineOption:()=>oke,compilerOptionsAffectDeclarationPath:()=>PDe,compilerOptionsAffectEmit:()=>zce,compilerOptionsAffectSemanticDiagnostics:()=>WDe,compilerOptionsDidYouMeanDiagnostics:()=>Ake,compilerOptionsIndicateEsModules:()=>nje,compose:()=>Tm,computeCommonSourceDirectoryOfFilenames:()=>Oxt,computeLineAndCharacterOfPosition:()=>Mp,computeLineOfPosition:()=>jy,computeLineStarts:()=>pc,computePositionOfLineAndCharacter:()=>Lu,computeSignature:()=>skt,computeSignatureWithDiagnostics:()=>M6e,computeSuggestionDiagnostics:()=>Jje,computedOptions:()=>kC,concatenate:()=>vi,concatenateDiagnosticMessageChains:()=>FDe,configDirTemplateSubstitutionOptions:()=>ZRt,configDirTemplateSubstitutionWatchOptions:()=>LRt,consumesNodeCoreModules:()=>aFe,contains:()=>Ue,containsIgnoredPath:()=>y6,containsObjectRestOrSpread:()=>Jhe,containsParseError:()=>HR,containsPath:()=>Bg,convertCompilerOptionsForTelemetry:()=>eDt,convertCompilerOptionsFromJson:()=>okr,convertJsonOption:()=>I4,convertToBase64:()=>Fce,convertToJson:()=>e_e,convertToObject:()=>JRt,convertToOptionsWithAbsolutePaths:()=>Ike,convertToRelativePath:()=>TE,convertToTSConfig:()=>y8e,convertTypeAcquisitionFromJson:()=>akr,copyComments:()=>b4,copyEntries:()=>_8,copyLeadingComments:()=>Pte,copyProperties:()=>Os,copyTrailingAsLeadingComments:()=>U_e,copyTrailingComments:()=>Eue,couldStartTrivia:()=>sN,countWhere:()=>ft,createAbstractBuilder:()=>uFr,createAccessorPropertyBackingField:()=>r8e,createAccessorPropertyGetRedirector:()=>yRt,createAccessorPropertySetRedirector:()=>bRt,createBaseNodeFactory:()=>lxe,createBinaryExpressionTrampoline:()=>nke,createBindingHelper:()=>Tle,createBuildInfo:()=>Xke,createBuilderProgram:()=>Q6e,createBuilderProgramUsingProgramBuildInfo:()=>lkt,createBuilderStatusReporter:()=>fGe,createCacheWithRedirects:()=>D8e,createCacheableExportInfoMap:()=>Fje,createCachedDirectoryStructureHost:()=>Uke,createClassNamedEvaluationHelperBlock:()=>ixt,createClassThisAssignmentBlock:()=>rxt,createClassifier:()=>QZr,createCommentDirectivesMap:()=>Jae,createCompilerDiagnostic:()=>ff,createCompilerDiagnosticForInvalidCustomType:()=>WRt,createCompilerDiagnosticFromMessageChain:()=>Hce,createCompilerHost:()=>Mxt,createCompilerHostFromProgramHost:()=>l7e,createCompilerHostWorker:()=>zke,createDetachedDiagnostic:()=>HQ,createDiagnosticCollection:()=>hG,createDiagnosticForFileFromMessageChain:()=>ne,createDiagnosticForNode:()=>Us,createDiagnosticForNodeArray:()=>P3,createDiagnosticForNodeArrayFromMessageChain:()=>kX,createDiagnosticForNodeFromMessageChain:()=>GS,createDiagnosticForNodeInSourceFile:()=>Lb,createDiagnosticForRange:()=>ze,createDiagnosticMessageChainFromDiagnostic:()=>Ie,createDiagnosticReporter:()=>X6,createDocumentPositionMapper:()=>YDt,createDocumentRegistry:()=>uFt,createDocumentRegistryInternal:()=>Oje,createEmitAndSemanticDiagnosticsBuilderProgram:()=>J6e,createEmitHelperFactory:()=>Rhe,createEmptyExports:()=>Phe,createEvaluator:()=>Ehe,createExpressionForJsxElement:()=>sRt,createExpressionForJsxFragment:()=>oRt,createExpressionForObjectLiteralElementLike:()=>aRt,createExpressionForPropertyName:()=>JKe,createExpressionFromEntityName:()=>Ohe,createExternalHelpersImportDeclarationIfNeeded:()=>jKe,createFileDiagnostic:()=>Im,createFileDiagnosticFromMessageChain:()=>R8,createFlowNode:()=>nD,createForOfBindingStatement:()=>XKe,createFutureSourceFile:()=>fFe,createGetCanonicalFileName:()=>tA,createGetIsolatedDeclarationErrors:()=>Txt,createGetSourceFile:()=>v6e,createGetSymbolAccessibilityDiagnosticForNode:()=>FZ,createGetSymbolAccessibilityDiagnosticForNodeName:()=>wxt,createGetSymbolWalker:()=>TDt,createIncrementalCompilerHost:()=>pGe,createIncrementalProgram:()=>_kt,createJsxFactoryExpression:()=>HKe,createLanguageService:()=>OZt,createLanguageServiceSourceFile:()=>kFe,createMemberAccessForPropertyName:()=>p4,createModeAwareCache:()=>hte,createModeAwareCacheKey:()=>Jle,createModuleNotFoundChain:()=>wX,createModuleResolutionCache:()=>_te,createModuleResolutionLoader:()=>k6e,createModuleResolutionLoaderUsingGlobalCache:()=>Ikt,createModuleSpecifierResolutionHost:()=>j6,createMultiMap:()=>ec,createNameResolver:()=>S6,createNodeConverters:()=>zee,createNodeFactory:()=>dV,createOptionNameMap:()=>uke,createOverload:()=>Gqe,createPackageJsonImportFilter:()=>Ote,createPackageJsonInfo:()=>wje,createParenthesizerRules:()=>uxe,createPatternMatcher:()=>fFt,createPrinter:()=>SV,createPrinterWithDefaults:()=>Zxt,createPrinterWithRemoveComments:()=>h4,createPrinterWithRemoveCommentsNeverAsciiEscape:()=>Lxt,createPrinterWithRemoveCommentsOmitTrailingSemicolon:()=>Jke,createProgram:()=>E_e,createProgramHost:()=>u7e,createPropertyNameNodeForIdentifierOrLiteral:()=>Ale,createQueue:()=>NA,createRange:()=>F1,createRedirectedBuilderProgram:()=>X6e,createResolutionCache:()=>K6e,createRuntimeTypeSerializer:()=>uxt,createScanner:()=>Ft,createSemanticDiagnosticsBuilderProgram:()=>lFr,createSet:()=>Ud,createSolutionBuilder:()=>vkt,createSolutionBuilderHost:()=>Ekt,createSolutionBuilderWithWatch:()=>Skt,createSolutionBuilderWithWatchHost:()=>Bkt,createSortedArray:()=>jr,createSourceFile:()=>L6,createSourceMapGenerator:()=>VDt,createSourceMapSource:()=>DKe,createSuperAccessVariableStatement:()=>Oke,createSymbolTable:()=>Du,createSymlinkCache:()=>rhe,createSyntacticTypeNodeBuilder:()=>Jkt,createSystemWatchFunctions:()=>Sh,createTextChange:()=>P_e,createTextChangeFromStartLength:()=>QGe,createTextChangeRange:()=>Ce,createTextRangeFromNode:()=>$7e,createTextRangeFromSpan:()=>MGe,createTextSpan:()=>bd,createTextSpanFromBounds:()=>Wd,createTextSpanFromNode:()=>Ey,createTextSpanFromRange:()=>TV,createTextSpanFromStringLiteralLikeContent:()=>q7e,createTextWriter:()=>Bee,createTokenRange:()=>Vce,createTypeChecker:()=>ZDt,createTypeReferenceDirectiveResolutionCache:()=>vke,createTypeReferenceResolutionLoader:()=>qke,createWatchCompilerHost:()=>_Fr,createWatchCompilerHostOfConfigFile:()=>g7e,createWatchCompilerHostOfFilesAndCompilerOptions:()=>A7e,createWatchFactory:()=>c7e,createWatchHost:()=>a7e,createWatchProgram:()=>d7e,createWatchStatusReporter:()=>z6e,createWriteFileMeasuringIO:()=>S6e,declarationNameToString:()=>xd,decodeMappings:()=>$8e,decodedTextSpanIntersectsWith:()=>e0,decorateHelper:()=>T6,deduplicate:()=>TA,defaultIncludeSpec:()=>B8e,defaultInitCompilerOptions:()=>p8e,defaultMaximumTruncationLength:()=>_Q,diagnosticCategoryName:()=>jh,diagnosticToString:()=>EY,diagnosticsEqualityComparer:()=>Jce,directoryProbablyExists:()=>k1,directorySeparator:()=>qu,displayPart:()=>Qb,displayPartsToString:()=>o0e,disposeEmitNodes:()=>yle,disposeResourcesHelper:()=>Pxe,documentSpansEqual:()=>uje,dumpTracingLegend:()=>uf,elementAt:()=>ts,elideNodes:()=>_Rt,emitComments:()=>dDe,emitDetachedComments:()=>pDe,emitFiles:()=>m6e,emitFilesAndReportErrors:()=>uGe,emitFilesAndReportErrorsAndGetExitStatus:()=>o7e,emitModuleKindIsNonNodeESM:()=>Kce,emitNewLineBeforeLeadingCommentOfPosition:()=>Gme,emitNewLineBeforeLeadingComments:()=>gDe,emitNewLineBeforeLeadingCommentsOfPosition:()=>ADe,emitResolverSkipsTypeChecking:()=>C6e,emitSkippedWithNoDiagnostics:()=>W6e,emptyArray:()=>v,emptyFileSystemEntries:()=>ghe,emptyMap:()=>G,emptyOptions:()=>Lv,emptySet:()=>T,endsWith:()=>pl,ensurePathIsNonModuleName:()=>Ky,ensureScriptKind:()=>ile,ensureTrailingDirectorySeparator:()=>AA,entityNameToString:()=>t0,enumerateInsertsAndDeletes:()=>PI,equalOwnProperties:()=>$g,equateStringsCaseInsensitive:()=>sp,equateStringsCaseSensitive:()=>lm,equateValues:()=>Og,esDecorateHelper:()=>Cxe,escapeJsxAttributeString:()=>Tme,escapeLeadingUnderscores:()=>Rd,escapeNonAsciiString:()=>Ece,escapeSnippetText:()=>AV,escapeString:()=>tT,escapeTemplateSubstitution:()=>Sme,evaluatorResult:()=>UC,every:()=>he,executeCommandLine:()=>tZr,expandPreOrPostfixIncrementOrDecrementExpression:()=>zxe,explainFiles:()=>t7e,explainIfFileIsRedirectAndImpliedFormat:()=>r7e,exportAssignmentIsAlias:()=>H3,exportStarHelper:()=>Fxe,expressionResultIsUnused:()=>nxe,extend:()=>bA,extendsHelper:()=>vxe,extensionFromPath:()=>m6,extensionIsTS:()=>cle,extensionsNotSupportingExtensionlessResolution:()=>Oee,externalHelpersModuleNameText:()=>vx,factory:()=>_e,fileExtensionIs:()=>gd,fileExtensionIsOneOf:()=>pp,fileIncludeReasonToDiagnostics:()=>s7e,fileShouldUseJavaScriptRequire:()=>Gje,filter:()=>Gt,filterMutate:()=>er,filterSemanticDiagnostics:()=>rGe,find:()=>be,findAncestor:()=>Si,findBestPatternMatch:()=>ly,findChildOfKind:()=>Od,findComputedPropertyNameCacheAssignment:()=>ike,findConfigFile:()=>E6e,findConstructorDeclaration:()=>Uee,findContainingList:()=>GGe,findDiagnosticForNode:()=>tFt,findFirstNonJsxWhitespaceToken:()=>_Gt,findIndex:()=>ke,findLast:()=>Te,findLastIndex:()=>x,findListItemInfo:()=>hGt,findMap:()=>et,findModifier:()=>Lte,findNextToken:()=>yY,findPackageJson:()=>$Gt,findPackageJsons:()=>Sje,findPrecedingMatchingToken:()=>PGe,findPrecedingToken:()=>_m,findSuperStatementIndexPath:()=>Zke,findTokenOnLeftOfPosition:()=>LGe,findUseStrictPrologue:()=>KKe,first:()=>$s,firstDefined:()=>le,firstDefinedIterator:()=>ae,firstIterator:()=>xl,firstOrOnly:()=>Dje,firstOrUndefined:()=>$i,firstOrUndefinedIterator:()=>Ga,fixupCompilerOptions:()=>zje,flatMap:()=>Fr,flatMapIterator:()=>Or,flatMapToMutable:()=>$r,flatten:()=>or,flattenCommaList:()=>ERt,flattenDestructuringAssignment:()=>m4,flattenDestructuringBinding:()=>CY,flattenDiagnosticMessageText:()=>xN,forEach:()=>X,forEachAncestor:()=>R$,forEachAncestorDirectory:()=>iI,forEachChild:()=>mu,forEachChildRecursively:()=>Z6,forEachEmittedFile:()=>d6e,forEachEnclosingBlockScopeContainer:()=>H$,forEachEntry:()=>JC,forEachExternalModuleToImportFrom:()=>Lje,forEachImportClauseDeclaration:()=>HRe,forEachKey:()=>$w,forEachLeadingCommentRange:()=>vf,forEachNameInAccessChainWalkingLeft:()=>DDe,forEachNameOfDefaultExport:()=>Vje,forEachPropertyAssignment:()=>GX,forEachResolvedProjectReference:()=>F6e,forEachReturnStatement:()=>wx,forEachRight:()=>U,forEachTrailingCommentRange:()=>Ix,forEachTsConfigPropArray:()=>U$,forEachUnique:()=>Aje,forEachYieldExpression:()=>TRe,forSomeAncestorDirectory:()=>NDe,formatColorAndReset:()=>mY,formatDiagnostic:()=>w6e,formatDiagnostics:()=>OGr,formatDiagnosticsWithColorAndContext:()=>Xxt,formatGeneratedName:()=>iP,formatGeneratedNamePart:()=>fte,formatLocation:()=>T6e,formatMessage:()=>XQ,formatStringFromArgs:()=>fN,formatting:()=>jC,fullTripleSlashAMDReferencePathRegEx:()=>wRe,fullTripleSlashReferencePathRegEx:()=>SRe,generateDjb2Hash:()=>Bh,generateTSConfig:()=>KRt,generatorHelper:()=>xxe,getAdjustedReferenceLocation:()=>Y7e,getAdjustedRenameLocation:()=>ZGe,getAliasDeclarationFromName:()=>Cme,getAllAccessorDeclarations:()=>xx,getAllDecoratorsOfClass:()=>i6e,getAllDecoratorsOfClassElement:()=>Vke,getAllJSDocTags:()=>o8,getAllJSDocTagsOfKind:()=>QCe,getAllKeys:()=>Hu,getAllProjectOutputs:()=>Hke,getAllSuperTypeNodes:()=>J8,getAllowJSCompilerOption:()=>bG,getAllowSyntheticDefaultImports:()=>JQ,getAncestor:()=>CG,getAnyExtensionFromPath:()=>wE,getAreDeclarationMapsEnabled:()=>Uce,getAssignedExpandoInitializer:()=>RQ,getAssignedName:()=>cQ,getAssignedNameOfIdentifier:()=>nue,getAssignmentDeclarationKind:()=>CI,getAssignmentDeclarationPropertyAccessKind:()=>oee,getAssignmentTargetKind:()=>Nx,getAutomaticTypeDirectiveNames:()=>Eke,getBaseFileName:()=>xA,getBinaryOperatorPrecedence:()=>bee,getBuildInfo:()=>h6e,getBuildInfoFileVersionMap:()=>H6e,getBuildInfoText:()=>Gxt,getBuildOrderFromAnyBuildOrder:()=>w_e,getBuilderCreationParameters:()=>iGe,getBuilderFileEmit:()=>wV,getCanonicalDiagnostic:()=>Mt,getCheckFlags:()=>aI,getClassExtendsHeritageElement:()=>rV,getClassLikeDeclarationOfSymbol:()=>DB,getCombinedLocalAndExportSymbolFlags:()=>PQ,getCombinedModifierFlags:()=>Nh,getCombinedNodeFlags:()=>qy,getCombinedNodeFlagsAlwaysIncludeJSDoc:()=>b2,getCommentRange:()=>JS,getCommonSourceDirectory:()=>aue,getCommonSourceDirectoryOfConfig:()=>H6,getCompilerOptionValue:()=>qce,getCompilerOptionsDiffValue:()=>URt,getConditions:()=>EV,getConfigFileParsingDiagnostics:()=>hY,getConstantValue:()=>o4,getContainerFlags:()=>O8e,getContainerNode:()=>y4,getContainingClass:()=>Um,getContainingClassExcludingClassDecorators:()=>oce,getContainingClassStaticBlock:()=>ZRe,getContainingFunction:()=>Wb,getContainingFunctionDeclaration:()=>sce,getContainingFunctionOrClassStaticBlock:()=>K$,getContainingNodeArray:()=>ixe,getContainingObjectLiteralElement:()=>a0e,getContextualTypeFromParent:()=>$Ge,getContextualTypeFromParentOrAncestorTypeNode:()=>FGe,getCurrentTime:()=>S_e,getDeclarationDiagnostics:()=>Nxt,getDeclarationEmitExtensionForPath:()=>Sce,getDeclarationEmitOutputFilePath:()=>aDe,getDeclarationEmitOutputFilePathWorker:()=>vce,getDeclarationFileExtension:()=>o8e,getDeclarationFromName:()=>X8,getDeclarationModifierFlagsFromSymbol:()=>L1,getDeclarationOfKind:()=>zd,getDeclarationsOfKind:()=>Mae,getDeclaredExpandoInitializer:()=>O8,getDecorators:()=>Uw,getDefaultCompilerOptions:()=>xFe,getDefaultFormatCodeSettings:()=>vGe,getDefaultLibFileName:()=>Ig,getDefaultLibFilePath:()=>MZt,getDefaultLikeExportInfo:()=>IFe,getDefaultLikeExportNameFromDeclaration:()=>lFe,getDiagnosticText:()=>ab,getDiagnosticsWithinSpan:()=>rFt,getDirectoryPath:()=>aa,getDirectoryToWatchFailedLookupLocation:()=>U6e,getDirectoryToWatchFailedLookupLocationFromTypeRoot:()=>pkt,getDocumentPositionMapper:()=>Xje,getDocumentSpansEqualityComparer:()=>gje,getESModuleInterop:()=>IN,getEditsForFileRename:()=>AFt,getEffectiveBaseTypeNode:()=>Dv,getEffectiveConstraintOfTypeParameter:()=>Kw,getEffectiveContainerForJSDocTemplateTag:()=>Ice,getEffectiveImplementsTypeNodes:()=>MX,getEffectiveInitializer:()=>nee,getEffectiveJSDocHost:()=>SZ,getEffectiveModifierFlags:()=>N_,getEffectiveModifierFlagsAlwaysIncludeJSDoc:()=>xce,getEffectiveModifierFlagsNoCache:()=>CDe,getEffectiveReturnTypeNode:()=>rb,getEffectiveSetAccessorTypeAnnotationNode:()=>uDe,getEffectiveTypeAnnotationNode:()=>fC,getEffectiveTypeParameterDeclarations:()=>R1,getEffectiveTypeRoots:()=>Xle,getElementOrPropertyAccessArgumentExpressionOrName:()=>Q8,getElementOrPropertyAccessName:()=>UR,getElementsOfBindingOrAssignmentPattern:()=>pte,getEmitDeclarations:()=>LE,getEmitFlags:()=>Sg,getEmitHelpers:()=>Ble,getEmitModuleDetectionKind:()=>ZDe,getEmitModuleKind:()=>R_,getEmitModuleResolutionKind:()=>s0,getEmitScriptTarget:()=>iA,getEmitStandardClassFields:()=>ehe,getEnclosingBlockScopeContainer:()=>S2,getEnclosingContainer:()=>N8,getEncodedSemanticClassifications:()=>Wje,getEncodedSyntacticClassifications:()=>Pje,getEndLinePosition:()=>TX,getEntityNameFromTypeNode:()=>z$,getEntrypointsFromPackageJsonInfo:()=>Z8e,getErrorCountForSummary:()=>cGe,getErrorSpanForNode:()=>Qi,getErrorSummaryText:()=>$6e,getEscapedTextOfIdentifierOrLiteral:()=>j8,getEscapedTextOfJsxAttributeName:()=>B6,getEscapedTextOfJsxNamespacedName:()=>D2,getExpandoInitializer:()=>BZ,getExportAssignmentExpression:()=>mme,getExportInfoMap:()=>$_e,getExportNeedsImportStarHelper:()=>HDt,getExpressionAssociativity:()=>Bme,getExpressionPrecedence:()=>mG,getExternalHelpersModuleName:()=>eke,getExternalModuleImportEqualsDeclarationExpression:()=>L8,getExternalModuleName:()=>DQ,getExternalModuleNameFromDeclaration:()=>sDe,getExternalModuleNameFromPath:()=>Rme,getExternalModuleNameLiteral:()=>F6,getExternalModuleRequireArgument:()=>lme,getFallbackOptions:()=>h_e,getFileEmitOutput:()=>Kxt,getFileMatcherPatterns:()=>nle,getFileNamesFromConfigSpecs:()=>Yle,getFileWatcherEventKind:()=>bv,getFilesInErrorForSummary:()=>lGe,getFirstConstructorWithBody:()=>dN,getFirstIdentifier:()=>ib,getFirstNonSpaceCharacterPosition:()=>XGt,getFirstProjectOutput:()=>I6e,getFixableErrorSpanExpression:()=>Nje,getFormatCodeSettingsForWriting:()=>dFe,getFullWidth:()=>SX,getFunctionFlags:()=>YI,getHeritageClause:()=>Cee,getHostSignatureFromJSDoc:()=>vZ,getIdentifierAutoGenerate:()=>Ixe,getIdentifierGeneratedImportReference:()=>$d,getIdentifierTypeArguments:()=>xZ,getImmediatelyInvokedFunctionExpression:()=>z9,getImpliedNodeFormatForFile:()=>b_e,getImpliedNodeFormatForFileWorker:()=>tGe,getImportNeedsImportDefaultHelper:()=>t6e,getImportNeedsImportStarHelper:()=>Gke,getIndentSize:()=>JX,getIndentString:()=>XX,getInferredLibraryNameResolveFrom:()=>eGe,getInitializedVariables:()=>c6,getInitializerOfBinaryExpression:()=>fce,getInitializerOfBindingOrAssignmentElement:()=>Yhe,getInterfaceBaseTypeNodes:()=>U8,getInternalEmitFlags:()=>kE,getInvokedExpression:()=>G8,getIsolatedModules:()=>ZE,getJSDocAugmentsTag:()=>s8,getJSDocClassTag:()=>ss,getJSDocCommentRanges:()=>ime,getJSDocCommentsAndTags:()=>Ame,getJSDocDeprecatedTag:()=>Zb,getJSDocDeprecatedTagNoCache:()=>bB,getJSDocEnumTag:()=>lG,getJSDocHost:()=>eV,getJSDocImplementsTags:()=>mx,getJSDocOverloadTags:()=>pme,getJSDocOverrideTagNoCache:()=>N1,getJSDocParameterTags:()=>WR,getJSDocParameterTagsNoCache:()=>r8,getJSDocPrivateTag:()=>La,getJSDocPrivateTagNoCache:()=>gc,getJSDocProtectedTag:()=>IA,getJSDocProtectedTagNoCache:()=>Dd,getJSDocPublicTag:()=>jo,getJSDocPublicTagNoCache:()=>ea,getJSDocReadonlyTag:()=>pm,getJSDocReadonlyTagNoCache:()=>T1,getJSDocReturnTag:()=>P9,getJSDocReturnType:()=>uX,getJSDocRoot:()=>OX,getJSDocSatisfiesExpressionType:()=>yhe,getJSDocSatisfiesTag:()=>d$,getJSDocTags:()=>bx,getJSDocTagsNoCache:()=>MCe,getJSDocTemplateTag:()=>OCe,getJSDocThisTag:()=>hx,getJSDocType:()=>yx,getJSDocTypeAliasName:()=>qKe,getJSDocTypeAssertionType:()=>Wle,getJSDocTypeParameterDeclarations:()=>See,getJSDocTypeParameterTags:()=>i8,getJSDocTypeParameterTagsNoCache:()=>uQ,getJSDocTypeTag:()=>_x,getJSXImplicitImportBase:()=>$ce,getJSXRuntimeImport:()=>ele,getJSXTransformEnabled:()=>Wee,getKeyForCompilerOptions:()=>R8e,getLanguageVariant:()=>Zee,getLastChild:()=>Mce,getLeadingCommentRanges:()=>Gb,getLeadingCommentRangesOfNode:()=>nme,getLeftmostAccessExpression:()=>QQ,getLeftmostExpression:()=>YQ,getLibraryNameFromLibFileName:()=>Z6e,getLineAndCharacterOfPosition:()=>Ll,getLineInfo:()=>q8e,getLineOfLocalPosition:()=>q8,getLineOfLocalPositionFromLineMap:()=>J3,getLineStartPositionForPosition:()=>Vv,getLineStarts:()=>Rc,getLinesBetweenPositionAndNextNonWhitespaceCharacter:()=>wDe,getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter:()=>SDe,getLinesBetweenPositions:()=>Bv,getLinesBetweenRangeEndAndRangeStart:()=>Yme,getLinesBetweenRangeEndPositions:()=>vDe,getLiteralText:()=>Z$,getLocalNameForExternalImport:()=>dte,getLocalSymbolForExportDefault:()=>n6,getLocaleSpecificMessage:()=>eu,getLocaleTimeString:()=>v_e,getMappedContextSpan:()=>dje,getMappedDocumentSpan:()=>KGe,getMappedLocation:()=>_ue,getMatchedFileSpec:()=>n7e,getMatchedIncludeSpec:()=>i7e,getMeaningFromDeclaration:()=>wGe,getMeaningFromLocation:()=>_4,getMembersOfDeclaration:()=>NRe,getModeForFileReference:()=>__e,getModeForResolutionAtIndex:()=>Jxt,getModeForUsageLocation:()=>R6e,getModifiedTime:()=>hd,getModifiers:()=>lN,getModuleInstanceState:()=>FG,getModuleNameStringLiteralAt:()=>B_e,getModuleSpecifierEndingPreference:()=>UDe,getModuleSpecifierResolverHost:()=>ije,getNameForExportedSymbol:()=>cFe,getNameFromImportAttribute:()=>Cle,getNameFromIndexInfo:()=>ece,getNameFromPropertyName:()=>M_e,getNameOfAccessExpression:()=>Kme,getNameOfCompilerOptionValue:()=>b8e,getNameOfDeclaration:()=>vl,getNameOfExpando:()=>ume,getNameOfJSDocTypedef:()=>cN,getNameOfScriptTarget:()=>Vee,getNameOrArgument:()=>see,getNameTable:()=>bze,getNamesForExportedSymbol:()=>nFt,getNamespaceDeclarationNode:()=>WX,getNewLineCharacter:()=>G1,getNewLineKind:()=>q_e,getNewLineOrDefaultFromHost:()=>WZ,getNewTargetContainer:()=>VRe,getNextJSDocCommentLocation:()=>dme,getNodeChildren:()=>QKe,getNodeForGeneratedName:()=>Xhe,getNodeId:()=>sd,getNodeKind:()=>_Y,getNodeModifiers:()=>Cue,getNodeModulePathParts:()=>dle,getNonAssignedNameOfDeclaration:()=>Jw,getNonAssignmentOperatorForCompoundAssignment:()=>eue,getNonAugmentationDeclaration:()=>O$,getNonDecoratorTokenPosOfNode:()=>F$,getNormalizedAbsolutePath:()=>Oc,getNormalizedAbsolutePathWithoutRoot:()=>SS,getNormalizedPathComponents:()=>gh,getObjectFlags:()=>sa,getOperator:()=>bce,getOperatorAssociativity:()=>vme,getOperatorPrecedence:()=>yee,getOptionFromName:()=>I8e,getOptionsForLibraryResolution:()=>x8e,getOptionsNameMap:()=>Cte,getOrCreateEmitNode:()=>xh,getOrCreateExternalHelpersModuleNameIfNeeded:()=>gRt,getOrUpdate:()=>we,getOriginalNode:()=>Tp,getOriginalNodeId:()=>by,getOriginalSourceFile:()=>eKe,getOutputDeclarationFileName:()=>Ste,getOutputDeclarationFileNameWorker:()=>p6e,getOutputExtension:()=>Yke,getOutputFileNames:()=>WGr,getOutputJSFileNameWorker:()=>f6e,getOutputPathsFor:()=>oue,getOutputPathsForBundle:()=>Qke,getOwnEmitOutputFilePath:()=>oDe,getOwnKeys:()=>kl,getOwnValues:()=>us,getPackageJsonInfo:()=>BV,getPackageJsonTypesVersionsPaths:()=>bke,getPackageJsonsVisibleToFile:()=>eFt,getPackageNameFromTypesPackageName:()=>jle,getPackageScopeForPath:()=>Kle,getParameterSymbolFromJSDoc:()=>dee,getParameterTypeNode:()=>SKe,getParentNodeInSpan:()=>Y_e,getParseTreeNode:()=>jc,getParsedCommandLineOfConfigFile:()=>qhe,getPathComponents:()=>Ad,getPathComponentsRelativeTo:()=>C2,getPathFromPathComponents:()=>fy,getPathUpdater:()=>Qje,getPathsBasePath:()=>wce,getPatternFromSpec:()=>HDe,getPendingEmitKind:()=>Rte,getPositionOfLineAndCharacter:()=>Xu,getPossibleGenericSignatures:()=>X7e,getPossibleOriginalInputExtensionForExtension:()=>cDe,getPossibleTypeArgumentsInfo:()=>J7e,getPreEmitDiagnostics:()=>PGr,getPrecedingNonSpaceCharacterPosition:()=>zGe,getPrivateIdentifier:()=>s6e,getProperties:()=>n6e,getProperty:()=>Rt,getPropertyArrayElementValue:()=>FRe,getPropertyAssignmentAliasLikeExpression:()=>qRe,getPropertyNameForPropertyNameNode:()=>nV,getPropertyNameForUniqueESSymbol:()=>qUe,getPropertyNameFromType:()=>k2,getPropertyNameOfBindingOrAssignmentElement:()=>zKe,getPropertySymbolFromBindingElement:()=>UGe,getPropertySymbolsFromContextualType:()=>GFe,getQuoteFromPreference:()=>oje,getQuotePreference:()=>W2,getRangesWhere:()=>ga,getRefactorContextSpan:()=>z6,getReferencedFileLocation:()=>uue,getRegexFromPattern:()=>EG,getRegularExpressionForWildcard:()=>p6,getRegularExpressionsForWildcards:()=>tle,getRelativePathFromDirectory:()=>fp,getRelativePathFromFile:()=>w1,getRelativePathToDirectoryOrUrl:()=>xm,getRenameLocation:()=>J_e,getReplacementSpanForContextToken:()=>z7e,getResolutionDiagnostic:()=>O6e,getResolutionModeOverride:()=>wte,getResolveJsonModule:()=>lV,getResolvePackageJsonExports:()=>$me,getResolvePackageJsonImports:()=>CN,getResolvedExternalModuleName:()=>Bce,getRestIndicatorOfBindingOrAssignmentElement:()=>tke,getRestParameterElementType:()=>sme,getRightMostAssignedExpression:()=>IG,getRootDeclaration:()=>WS,getRootDirectoryOfResolutionCache:()=>fkt,getRootLength:()=>e_,getRootPathSplitLength:()=>pFr,getScriptKind:()=>mje,getScriptKindFromFileName:()=>sle,getScriptTargetFeatures:()=>v8,getSelectedEffectiveModifierFlags:()=>LQ,getSelectedSyntacticModifierFlags:()=>fDe,getSemanticClassifications:()=>cFt,getSemanticJsxChildren:()=>YX,getSetAccessorTypeAnnotationNode:()=>xme,getSetAccessorValueParameter:()=>KX,getSetExternalModuleIndicator:()=>A6,getShebang:()=>aG,getSingleInitializerOfVariableStatementOrPropertyDeclaration:()=>gme,getSingleVariableOfVariableStatement:()=>Y3,getSnapshotText:()=>K6,getSnippetElement:()=>vle,getSourceFileOfModule:()=>b8,getSourceFileOfNode:()=>ls,getSourceFilePathInNewDir:()=>Nce,getSourceFilePathInNewDirWorker:()=>Rce,getSourceFileVersionAsHashFromText:()=>gGe,getSourceFilesToEmit:()=>Tce,getSourceMapRange:()=>Gx,getSourceMapper:()=>BFt,getSourceTextOfNodeFromSourceFile:()=>pG,getSpanOfTokenAtPosition:()=>Rr,getSpellingSuggestion:()=>Nd,getStartPositionOfLine:()=>uN,getStartPositionOfRange:()=>qX,getStartsOnNewLine:()=>SG,getStaticPropertiesAndClassStaticBlock:()=>Lke,getStrictOptionValue:()=>D_,getStringComparer:()=>zl,getSubPatternFromSpec:()=>rle,getSuperCallFromStatement:()=>Fke,getSuperContainer:()=>k8,getSupportedCodeFixes:()=>_ze,getSupportedExtensions:()=>I6,getSupportedExtensionsWithJsonIfResolveJsonModule:()=>Mee,getSwitchedType:()=>Eje,getSymbolId:()=>kg,getSymbolNameForPrivateIdentifier:()=>hee,getSymbolParentOrFail:()=>uFe,getSymbolTarget:()=>hje,getSyntacticClassifications:()=>lFt,getSyntacticModifierFlags:()=>zR,getSyntacticModifierFlagsNoCache:()=>Vme,getSynthesizedDeepClone:()=>Bd,getSynthesizedDeepCloneWithReplacements:()=>X_e,getSynthesizedDeepClones:()=>bY,getSynthesizedDeepClonesWithReplacements:()=>_je,getSyntheticLeadingComments:()=>tY,getSyntheticTrailingComments:()=>s4,getTargetLabel:()=>RGe,getTargetOfBindingOrAssignmentElement:()=>yV,getTemporaryModuleResolutionState:()=>Ule,getTextOfConstantValue:()=>S8,getTextOfIdentifierOrLiteral:()=>T2,getTextOfJSDocComment:()=>gX,getTextOfJsxAttributeName:()=>YS,getTextOfJsxNamespacedName:()=>v6,getTextOfNode:()=>Tf,getTextOfNodeFromSourceText:()=>vQ,getTextOfPropertyName:()=>K9,getThisContainer:()=>r0,getThisParameter:()=>iV,getTokenAtPosition:()=>Qc,getTokenPosOfNode:()=>Sx,getTokenSourceMapRange:()=>kKe,getTouchingPropertyName:()=>lb,getTouchingToken:()=>Fte,getTrailingCommentRanges:()=>m2,getTrailingSemicolonDeferringWriter:()=>Nme,getTransformFlagsSubtreeExclusions:()=>G2,getTransformers:()=>xxt,getTsBuildInfoEmitOutputFilePath:()=>ZZ,getTsConfigObjectLiteralExpression:()=>x8,getTsConfigPropArrayElementValue:()=>ice,getTypeAnnotationNode:()=>lDe,getTypeArgumentOrTypeParameterList:()=>TGt,getTypeKeywordOfTypeOnlyImport:()=>lje,getTypeNode:()=>fxe,getTypeNodeIfAccessible:()=>vue,getTypeParameterFromJsDoc:()=>JRe,getTypeParameterOwner:()=>hr,getTypesPackageName:()=>Nke,getUILocale:()=>na,getUniqueName:()=>E4,getUniqueSymbolId:()=>HGt,getUseDefineForClassFields:()=>Lee,getWatchErrorSummaryDiagnosticMessage:()=>q6e,getWatchFactory:()=>b6e,group:()=>Hl,groupBy:()=>Ff,guessIndentation:()=>Pae,handleNoEmitOptions:()=>P6e,handleWatchOptionsConfigDirTemplateSubstitution:()=>Cke,hasAbstractModifier:()=>aV,hasAccessorModifier:()=>PS,hasAmbientModifier:()=>Lme,hasChangesInResolutions:()=>x$,hasChildOfKind:()=>L_e,hasContextSensitiveParameters:()=>gle,hasDecorators:()=>FE,hasDocComment:()=>SGt,hasDynamicName:()=>jR,hasEffectiveModifier:()=>nb,hasEffectiveModifiers:()=>Fme,hasEffectiveReadonlyModifier:()=>$8,hasExtension:()=>v1,hasIndexSignature:()=>bje,hasInferredType:()=>hle,hasInitializer:()=>qw,hasInvalidEscape:()=>wme,hasJSDocNodes:()=>hy,hasJSDocParameterTags:()=>cG,hasJSFileExtension:()=>mN,hasJsonModuleEmitEnabled:()=>jce,hasOnlyExpressionInitializer:()=>dG,hasOverrideModifier:()=>Dce,hasPossibleExternalModuleReference:()=>$ae,hasProperty:()=>Qa,hasPropertyAccessExpressionWithName:()=>x_e,hasQuestionToken:()=>kQ,hasRecordedExternalHelpers:()=>uRt,hasResolutionModeOverride:()=>cxe,hasRestParameter:()=>S$,hasScopeMarker:()=>Lae,hasStaticModifier:()=>IC,hasSyntacticModifier:()=>ba,hasSyntacticModifiers:()=>Zme,hasTSFileExtension:()=>KQ,hasTabstop:()=>oxe,hasTrailingDirectorySeparator:()=>v_,hasType:()=>XC,hasTypeArguments:()=>JUe,hasZeroOrOneAsteriskCharacter:()=>the,helperString:()=>fV,hostGetCanonicalFileName:()=>Dx,hostUsesCaseSensitiveFileNames:()=>UX,idText:()=>ao,identifierIsThisKeyword:()=>kme,identifierToKeywordKind:()=>VR,identity:()=>Bl,identitySourceMapConsumer:()=>e6e,ignoreSourceNewlines:()=>The,ignoredPaths:()=>vh,importDefaultHelper:()=>Gxe,importFromModuleSpecifier:()=>VX,importStarHelper:()=>xhe,indexOfAnyCharCode:()=>Xe,indexOfNode:()=>L3,indicesOf:()=>Yu,inferredTypesContainingFile:()=>lue,injectClassNamedEvaluationHelperBlockIfMissing:()=>Pke,injectClassThisAssignmentIfMissing:()=>nxt,insertImports:()=>cje,insertLeadingStatement:()=>XDr,insertSorted:()=>Gr,insertStatementAfterCustomPrologue:()=>bZ,insertStatementAfterStandardPrologue:()=>eme,insertStatementsAfterCustomPrologue:()=>E8,insertStatementsAfterStandardPrologue:()=>kS,intersperse:()=>pe,intrinsicTagNameToString:()=>bhe,introducesArgumentsExoticObject:()=>xRe,inverseJsxOptionMap:()=>jhe,isAbstractConstructorSymbol:()=>TDe,isAbstractModifier:()=>lY,isAccessExpression:()=>Cp,isAccessibilityModifier:()=>K7e,isAccessor:()=>jw,isAccessorModifier:()=>Yxe,isAliasSymbolDeclaration:()=>KUe,isAliasableExpression:()=>Iee,isAmbientModule:()=>Yf,isAmbientPropertyDeclaration:()=>M$,isAnonymousFunctionDefinition:()=>z8,isAnyDirectorySeparator:()=>Sp,isAnyImportOrBareOrAccessedRequire:()=>zae,isAnyImportOrReExport:()=>W3,isAnyImportOrRequireStatement:()=>qae,isAnyImportSyntax:()=>fG,isAnySupportedFileExtension:()=>EKe,isApplicableVersionedTypesKey:()=>o_e,isArgumentExpressionOfElementAccess:()=>V7e,isArray:()=>Ra,isArrayBindingElement:()=>R3,isArrayBindingOrAssignmentElement:()=>hX,isArrayBindingOrAssignmentPattern:()=>_$,isArrayBindingPattern:()=>Vu,isArrayLiteralExpression:()=>If,isArrayLiteralOrObjectLiteralDestructuringPattern:()=>VZ,isArrayTypeNode:()=>He,isArrowFunction:()=>fd,isAsExpression:()=>qS,isAssertClause:()=>HNt,isAssertEntry:()=>VDr,isAssertionExpression:()=>DE,isAssertsKeyword:()=>Fhe,isAssignmentDeclaration:()=>P8,isAssignmentExpression:()=>fm,isAssignmentOperator:()=>qR,isAssignmentPattern:()=>H9,isAssignmentTarget:()=>Rx,isAsteriskToken:()=>ste,isAsyncFunction:()=>K8,isAsyncModifier:()=>c4,isAutoAccessorPropertyDeclaration:()=>t_,isAwaitExpression:()=>Ob,isAwaitKeyword:()=>Dle,isBigIntLiteral:()=>K3,isBinaryExpression:()=>no,isBinaryOperatorToken:()=>hRt,isBindableObjectDefinePropertyCall:()=>M3,isBindableStaticAccessExpression:()=>$9,isBindableStaticElementAccessExpression:()=>pce,isBindableStaticNameExpression:()=>Q3,isBindingElement:()=>ml,isBindingElementOfBareOrAccessedRequire:()=>ORe,isBindingName:()=>mZ,isBindingOrAssignmentElement:()=>Fae,isBindingOrAssignmentPattern:()=>CQ,isBindingPattern:()=>pu,isBlock:()=>mc,isBlockLike:()=>Qte,isBlockOrCatchScoped:()=>L$,isBlockScope:()=>Q$,isBlockScopedContainerTopLevel:()=>w8,isBooleanLiteral:()=>IQ,isBreakOrContinueStatement:()=>T3,isBreakStatement:()=>eP,isBuild:()=>Okt,isBuildInfoFile:()=>kxt,isBuilderProgram:()=>mkt,isBundle:()=>UNt,isCallChain:()=>uG,isCallExpression:()=>cu,isCallExpressionTarget:()=>x7e,isCallLikeExpression:()=>AG,isCallLikeOrFunctionLikeExpression:()=>y$,isCallOrNewExpression:()=>BB,isCallOrNewExpressionTarget:()=>k7e,isCallSignatureDeclaration:()=>CV,isCallToHelper:()=>R6,isCaseBlock:()=>xle,isCaseClause:()=>cte,isCaseKeyword:()=>Lhe,isCaseOrDefaultClause:()=>vX,isCatchClause:()=>dY,isCatchClauseVariableDeclaration:()=>sxe,isCatchClauseVariableDeclarationOrBindingElement:()=>V$,isCheckJsEnabledForFile:()=>h6,isChildOfNodeWithKind:()=>WUe,isCircularBuildOrder:()=>J6,isClassDeclaration:()=>bc,isClassElement:()=>rC,isClassExpression:()=>tp,isClassInstanceProperty:()=>A8,isClassLike:()=>Sa,isClassMemberModifier:()=>C$,isClassNamedEvaluationHelperBlock:()=>Y6,isClassOrTypeElement:()=>d8,isClassStaticBlockDeclaration:()=>$p,isClassThisAssignmentBlock:()=>rue,isCollapsedRange:()=>zX,isColonToken:()=>Mxe,isCommaExpression:()=>Mhe,isCommaListExpression:()=>VE,isCommaSequence:()=>Vle,isCommaToken:()=>Oxe,isComment:()=>OGe,isCommonJsExportPropertyAssignment:()=>X$,isCommonJsExportedExpression:()=>RRe,isCompoundAssignment:()=>$le,isComputedNonLiteralName:()=>xX,isComputedPropertyName:()=>xg,isConciseBody:()=>QR,isConditionalExpression:()=>BN,isConditionalTypeNode:()=>Ei,isConstAssertion:()=>Bhe,isConstTypeReference:()=>E2,isConstructSignatureDeclaration:()=>A,isConstructorDeclaration:()=>Rf,isConstructorTypeNode:()=>H,isContextualKeyword:()=>hce,isContinueStatement:()=>RG,isCustomPrologue:()=>ZS,isDebuggerStatement:()=>$S,isDeclaration:()=>DC,isDeclarationBindingElement:()=>CX,isDeclarationFileName:()=>kh,isDeclarationName:()=>eT,isDeclarationNameOfEnumOrNamespace:()=>Xme,isDeclarationReadonly:()=>fu,isDeclarationStatement:()=>bX,isDeclarationWithTypeParameterChildren:()=>DX,isDeclarationWithTypeParameters:()=>Y$,isDecorator:()=>GC,isDecoratorTarget:()=>dGt,isDefaultClause:()=>Gle,isDefaultImport:()=>xQ,isDefaultModifier:()=>ate,isDefaultedExpandoInitializer:()=>MRe,isDeleteExpression:()=>q3,isDeleteTarget:()=>Ime,isDeprecatedDeclaration:()=>gFe,isDestructuringAssignment:()=>kv,isDiagnosticWithLocation:()=>Tje,isDiskPathRoot:()=>V0,isDoStatement:()=>kZ,isDocumentRegistryEntry:()=>e0e,isDotDotDotToken:()=>cY,isDottedName:()=>Nee,isDynamicName:()=>yce,isESSymbolIdentifier:()=>$Ue,isEffectiveExternalModule:()=>U9,isEffectiveModuleDeclaration:()=>jae,isEffectiveStrictModeSourceFile:()=>RX,isElementAccessChain:()=>dX,isElementAccessExpression:()=>hA,isEmittedFileOfProgram:()=>Wxt,isEmptyArrayLiteral:()=>Qme,isEmptyBindingElement:()=>Kc,isEmptyBindingPattern:()=>yo,isEmptyObjectLiteral:()=>xee,isEmptyStatement:()=>Fv,isEmptyStringLiteral:()=>cme,isEntityName:()=>w_,isEntityNameExpression:()=>cp,isEnumConst:()=>Ac,isEnumDeclaration:()=>tP,isEnumMember:()=>_V,isEqualityOperatorKind:()=>eFe,isEqualsGreaterThanToken:()=>Qxe,isExclamationToken:()=>ote,isExcludedFile:()=>zRt,isExclusivelyTypeOnlyImportOrExport:()=>N6e,isExpandoPropertyDeclaration:()=>qQ,isExportAssignment:()=>tf,isExportDeclaration:()=>mC,isExportModifier:()=>Fx,isExportName:()=>qxe,isExportNamespaceAsDefaultDeclaration:()=>BQ,isExportOrDefaultModifier:()=>Hhe,isExportSpecifier:()=>c0,isExportsIdentifier:()=>O3,isExportsOrModuleExportsOrAlias:()=>fY,isExpression:()=>tn,isExpressionNode:()=>NB,isExpressionOfExternalModuleImportEqualsDeclaration:()=>CGt,isExpressionOfOptionalChainRoot:()=>a8,isExpressionStatement:()=>Hf,isExpressionWithTypeArguments:()=>x_,isExpressionWithTypeArgumentsInClassExtendsClause:()=>kce,isExternalModule:()=>mm,isExternalModuleAugmentation:()=>XR,isExternalModuleImportEqualsDeclaration:()=>EZ,isExternalModuleIndicator:()=>D3,isExternalModuleNameRelative:()=>Jl,isExternalModuleReference:()=>DG,isExternalModuleSymbol:()=>G3,isExternalOrCommonJsModule:()=>ia,isFileLevelReservedGeneratedIdentifier:()=>fX,isFileLevelUniqueName:()=>EQ,isFileProbablyExternalModule:()=>Uhe,isFirstDeclarationOfSymbolParameter:()=>pje,isFixablePromiseHandler:()=>Kje,isForInOrOfStatement:()=>yZ,isForInStatement:()=>tD,isForInitializer:()=>P0,isForOfStatement:()=>W1,isForStatement:()=>kB,isFullSourceFile:()=>JR,isFunctionBlock:()=>j9,isFunctionBody:()=>_X,isFunctionDeclaration:()=>mp,isFunctionExpression:()=>WA,isFunctionExpressionOrArrowFunction:()=>vG,isFunctionLike:()=>$l,isFunctionLikeDeclaration:()=>dd,isFunctionLikeKind:()=>PR,isFunctionLikeOrClassStaticBlockDeclaration:()=>N3,isFunctionOrConstructorTypeNode:()=>IX,isFunctionOrModuleBlock:()=>m$,isFunctionSymbol:()=>YRe,isFunctionTypeNode:()=>Y,isFutureReservedKeyword:()=>jUe,isGeneratedIdentifier:()=>Ip,isGeneratedPrivateIdentifier:()=>CZ,isGetAccessor:()=>Nv,isGetAccessorDeclaration:()=>Pb,isGetOrSetAccessorDeclaration:()=>AX,isGlobalDeclaration:()=>PZr,isGlobalScopeAugmentation:()=>v2,isGlobalSourceFile:()=>bs,isGrammarError:()=>k$,isHeritageClause:()=>WE,isHoistedFunction:()=>gN,isHoistedVariableStatement:()=>rce,isIdentifier:()=>sr,isIdentifierANonContextualKeyword:()=>mee,isIdentifierName:()=>zRe,isIdentifierOrThisTypeNode:()=>fRt,isIdentifierPart:()=>h2,isIdentifierStart:()=>zy,isIdentifierText:()=>Ke,isIdentifierTypePredicate:()=>kRe,isIdentifierTypeReference:()=>exe,isIfStatement:()=>H0,isIgnoredFileFromWildCardWatching:()=>m_e,isImplicitGlob:()=>ohe,isImportAttribute:()=>XNt,isImportAttributeName:()=>I$,isImportAttributes:()=>l4,isImportCall:()=>pC,isImportClause:()=>sT,isImportDeclaration:()=>mI,isImportEqualsDeclaration:()=>Cm,isImportKeyword:()=>D6,isImportMeta:()=>Vb,isImportOrExportSpecifier:()=>M9,isImportOrExportSpecifierName:()=>YGt,isImportSpecifier:()=>_y,isImportTypeAssertionContainer:()=>LDr,isImportTypeNode:()=>Tu,isImportableFile:()=>Zje,isInComment:()=>LZ,isInCompoundLikeAssignment:()=>Cce,isInExpressionContext:()=>lce,isInJSDoc:()=>$$,isInJSFile:()=>so,isInJSXText:()=>BGt,isInJsonFile:()=>V8,isInNonReferenceComment:()=>DGt,isInReferenceComment:()=>RGt,isInRightSideOfInternalImportEqualsDeclaration:()=>TGe,isInString:()=>U6,isInTemplateString:()=>H7e,isInTopLevelContext:()=>ace,isInTypeQuery:()=>ZQ,isIncrementalCompilation:()=>d6,isIndexSignatureDeclaration:()=>_,isIndexedAccessTypeNode:()=>hs,isInferTypeNode:()=>bo,isInfinityOrNaNString:()=>b6,isInitializedProperty:()=>g_e,isInitializedVariable:()=>Gee,isInsideJsxElement:()=>WGe,isInsideJsxElementOrAttribute:()=>EGt,isInsideNodeModules:()=>j_e,isInsideTemplateLiteral:()=>W_e,isInstanceOfExpression:()=>r6,isInstantiatedModule:()=>J8e,isInterfaceDeclaration:()=>HI,isInternalDeclaration:()=>Oae,isInternalModuleImportEqualsDeclaration:()=>NQ,isInternalName:()=>UKe,isIntersectionTypeNode:()=>ji,isIntrinsicJsxName:()=>HX,isIterationStatement:()=>MR,isJSDoc:()=>aT,isJSDocAllType:()=>zNt,isJSDocAugmentsTag:()=>G6,isJSDocAuthorTag:()=>MDr,isJSDocCallbackTag:()=>ZKe,isJSDocClassTag:()=>$Nt,isJSDocCommentContainingNode:()=>pf,isJSDocConstructSignature:()=>PX,isJSDocDeprecatedTag:()=>OKe,isJSDocEnumTag:()=>Whe,isJSDocFunctionType:()=>ute,isJSDocImplementsTag:()=>Kxe,isJSDocImportTag:()=>RN,isJSDocIndexSignature:()=>eee,isJSDocLikeText:()=>n8e,isJSDocLink:()=>KNt,isJSDocLinkCode:()=>jNt,isJSDocLinkLike:()=>J9,isJSDocLinkPlain:()=>PDr,isJSDocMemberName:()=>nP,isJSDocNameReference:()=>Fle,isJSDocNamepathType:()=>ODr,isJSDocNamespaceBody:()=>Vae,isJSDocNode:()=>xS,isJSDocNonNullableType:()=>Hxe,isJSDocNullableType:()=>lte,isJSDocOptionalParameter:()=>ple,isJSDocOptionalType:()=>FKe,isJSDocOverloadTag:()=>gte,isJSDocOverrideTag:()=>Jxe,isJSDocParameterTag:()=>FB,isJSDocPrivateTag:()=>VKe,isJSDocPropertyLikeTag:()=>fZ,isJSDocPropertyTag:()=>eRt,isJSDocProtectedTag:()=>WKe,isJSDocPublicTag:()=>LKe,isJSDocReadonlyTag:()=>PKe,isJSDocReturnTag:()=>Uxe,isJSDocSatisfiesExpression:()=>_he,isJSDocSatisfiesTag:()=>jxe,isJSDocSeeTag:()=>QDr,isJSDocSignature:()=>xG,isJSDocTag:()=>X9,isJSDocTemplateTag:()=>Zv,isJSDocThisTag:()=>MKe,isJSDocThrowsTag:()=>HDr,isJSDocTypeAlias:()=>w2,isJSDocTypeAssertion:()=>f4,isJSDocTypeExpression:()=>rP,isJSDocTypeLiteral:()=>A4,isJSDocTypeTag:()=>Zle,isJSDocTypedefTag:()=>d4,isJSDocUnknownTag:()=>YDr,isJSDocUnknownType:()=>qNt,isJSDocVariadicType:()=>Xxe,isJSXTagName:()=>ZX,isJsonEqual:()=>lle,isJsonSourceFile:()=>Ia,isJsxAttribute:()=>NN,isJsxAttributeLike:()=>C8,isJsxAttributeName:()=>axe,isJsxAttributes:()=>AY,isJsxChild:()=>BX,isJsxClosingElement:()=>uY,isJsxClosingFragment:()=>JNt,isJsxElement:()=>Ox,isJsxExpression:()=>kle,isJsxFragment:()=>gY,isJsxNamespacedName:()=>oT,isJsxOpeningElement:()=>TN,isJsxOpeningFragment:()=>g4,isJsxOpeningLikeElement:()=>Jm,isJsxOpeningLikeElementTagName:()=>pGt,isJsxSelfClosingElement:()=>u4,isJsxSpreadAttribute:()=>k6,isJsxTagNameExpression:()=>k3,isJsxText:()=>sY,isJumpStatementTarget:()=>k_e,isKeyword:()=>i0,isKeywordOrPunctuation:()=>mce,isKnownSymbol:()=>_ee,isLabelName:()=>Z7e,isLabelOfLabeledStatement:()=>F7e,isLabeledStatement:()=>nC,isLateVisibilityPaintedStatement:()=>T8,isLeftHandSideExpression:()=>T_,isLeftHandSideOfAssignment:()=>WQ,isLet:()=>oI,isLineBreak:()=>HC,isLiteralComputedPropertyDeclarationName:()=>fee,isLiteralExpression:()=>Sv,isLiteralExpressionOfObject:()=>IZ,isLiteralImportTypeNode:()=>r_,isLiteralKind:()=>pQ,isLiteralLikeAccess:()=>dce,isLiteralLikeElementAccess:()=>iee,isLiteralNameOfPropertyDeclarationOrIndexAccess:()=>DGe,isLiteralTypeLikeExpression:()=>zDr,isLiteralTypeLiteral:()=>DS,isLiteralTypeNode:()=>id,isLocalName:()=>kG,isLogicalOperator:()=>mDe,isLogicalOrCoalescingAssignmentExpression:()=>Wme,isLogicalOrCoalescingAssignmentOperator:()=>e6,isLogicalOrCoalescingBinaryExpression:()=>Tee,isLogicalOrCoalescingBinaryOperator:()=>wee,isMappedTypeNode:()=>Sl,isMemberName:()=>$y,isMetaProperty:()=>vN,isMethodDeclaration:()=>cI,isMethodOrAccessor:()=>hZ,isMethodSignature:()=>jS,isMinusToken:()=>ite,isMissingDeclaration:()=>WDr,isMissingPackageJsonInfo:()=>lDt,isModifier:()=>gg,isModifierKind:()=>wv,isModifierLike:()=>Np,isModuleAugmentationExternal:()=>P$,isModuleBlock:()=>SN,isModuleBody:()=>O0,isModuleDeclaration:()=>CC,isModuleExportsAccessExpression:()=>AN,isModuleIdentifier:()=>M8,isModuleName:()=>mRt,isModuleOrEnumDeclaration:()=>yX,isModuleReference:()=>x3,isModuleSpecifierLike:()=>JGe,isModuleWithStringLiteralName:()=>SQ,isNameOfFunctionDeclaration:()=>P7e,isNameOfModuleDeclaration:()=>W7e,isNamedClassElement:()=>Gae,isNamedDeclaration:()=>Sf,isNamedEvaluation:()=>tb,isNamedEvaluationSource:()=>yme,isNamedExportBindings:()=>l8,isNamedExports:()=>GB,isNamedImportBindings:()=>E$,isNamedImports:()=>wN,isNamedImportsOrExports:()=>Qce,isNamedTupleMember:()=>At,isNamespaceBody:()=>eb,isNamespaceExport:()=>rD,isNamespaceExportDeclaration:()=>Vhe,isNamespaceImport:()=>Px,isNamespaceReexportDeclaration:()=>PRe,isNewExpression:()=>zS,isNewExpressionTarget:()=>fue,isNoSubstitutionTemplateLiteral:()=>oY,isNode:()=>YCe,isNodeArray:()=>gG,isNodeArrayMultiLine:()=>Hme,isNodeDescendantOf:()=>tV,isNodeKind:()=>pX,isNodeLikeSystem:()=>uy,isNodeModulesDirectory:()=>TS,isNodeWithPossibleHoistedDeclaration:()=>jRe,isNonContextualKeyword:()=>_me,isNonExportDefaultModifier:()=>$Dr,isNonGlobalAmbientModule:()=>W$,isNonGlobalDeclaration:()=>sFt,isNonNullAccess:()=>fle,isNonNullChain:()=>c8,isNonNullExpression:()=>iT,isNonStaticMethodOrAccessorWithPrivateName:()=>JDt,isNotEmittedOrPartiallyEmittedNode:()=>JCe,isNotEmittedStatement:()=>GKe,isNullishCoalesce:()=>p$,isNumber:()=>cm,isNumericLiteral:()=>du,isNumericLiteralName:()=>yN,isObjectBindingElementWithoutPropertyName:()=>Q_e,isObjectBindingOrAssignmentElement:()=>mX,isObjectBindingOrAssignmentPattern:()=>h$,isObjectBindingPattern:()=>Vg,isObjectLiteralElement:()=>hQ,isObjectLiteralElementLike:()=>EB,isObjectLiteralExpression:()=>tu,isObjectLiteralMethod:()=>TB,isObjectLiteralOrClassExpressionMethodOrAccessor:()=>J$,isObjectTypeDeclaration:()=>MQ,isOctalDigit:()=>lZ,isOmittedExpression:()=>ef,isOptionalChain:()=>km,isOptionalChainRoot:()=>dQ,isOptionalDeclaration:()=>QS,isOptionalJSDocPropertyLikeTag:()=>Jee,isOptionalTypeNode:()=>Ut,isOuterExpression:()=>$xe,isOutermostOptionalChain:()=>w3,isOverrideModifier:()=>Zhe,isPackageJsonInfo:()=>Bke,isPackedArrayLiteral:()=>mhe,isParameter:()=>Jc,isParameterPropertyDeclaration:()=>Zn,isParameterPropertyModifier:()=>fQ,isParenthesizedExpression:()=>FC,isParenthesizedTypeNode:()=>ro,isParseTreeNode:()=>dZ,isPartOfParameterDeclaration:()=>wZ,isPartOfTypeNode:()=>LS,isPartOfTypeQuery:()=>uce,isPartiallyEmittedExpression:()=>NG,isPatternMatch:()=>um,isPinnedComment:()=>B8,isPlainJsFile:()=>bQ,isPlusToken:()=>Ghe,isPossiblyTypeArgumentPosition:()=>V_e,isPostfixUnaryExpression:()=>Zx,isPrefixUnaryExpression:()=>xB,isPrimitiveLiteralValue:()=>Kee,isPrivateIdentifier:()=>kc,isPrivateIdentifierClassElementDeclaration:()=>Rh,isPrivateIdentifierPropertyAccessExpression:()=>Y9,isPrivateIdentifierSymbol:()=>eDe,isProgramBundleEmitBuildInfo:()=>nkt,isProgramUptoDate:()=>L6e,isPrologueDirective:()=>QI,isPropertyAccessChain:()=>AQ,isPropertyAccessEntityNameExpression:()=>Ree,isPropertyAccessExpression:()=>Io,isPropertyAccessOrQualifiedName:()=>mQ,isPropertyAccessOrQualifiedNameOrImportTypeNode:()=>Zae,isPropertyAssignment:()=>KC,isPropertyDeclaration:()=>Ql,isPropertyName:()=>NI,isPropertyNameLiteral:()=>VS,isPropertySignature:()=>n_,isProtoSetter:()=>tDe,isPrototypeAccess:()=>yG,isPrototypePropertyAssignment:()=>aee,isPunctuation:()=>hme,isPushOrUnshiftIdentifier:()=>bme,isQualifiedName:()=>a0,isQuestionDotToken:()=>a4,isQuestionOrExclamationToken:()=>pRt,isQuestionOrPlusOrMinusToken:()=>CRt,isQuestionToken:()=>wG,isRawSourceMap:()=>ODt,isReadonlyKeyword:()=>IV,isReadonlyKeywordOrPlusOrMinusToken:()=>IRt,isRecognizedTripleSlashComment:()=>G$,isReferenceFileLocation:()=>Tte,isReferencedFile:()=>gP,isRegularExpressionLiteral:()=>khe,isRequireCall:()=>Q0,isRequireVariableStatement:()=>W8,isRestParameter:()=>Rv,isRestTypeNode:()=>cn,isReturnStatement:()=>k_,isReturnStatementWithFixablePromiseHandler:()=>mFe,isRightSideOfAccessExpression:()=>Mme,isRightSideOfInstanceofExpression:()=>_De,isRightSideOfPropertyAccess:()=>kte,isRightSideOfQualifiedName:()=>IGt,isRightSideOfQualifiedNameOrPropertyAccess:()=>t6,isRightSideOfQualifiedNameOrPropertyAccessOrJSDocMemberName:()=>hDe,isRootedDiskPath:()=>yd,isSameEntityName:()=>LX,isSatisfiesExpression:()=>TG,isScopeMarker:()=>b$,isSemicolonClassElement:()=>Wx,isSetAccessor:()=>Dh,isSetAccessorDeclaration:()=>sb,isShebangTrivia:()=>uZ,isShiftOperatorOrHigher:()=>e8e,isShorthandAmbientModuleSymbol:()=>V3,isShorthandPropertyAssignment:()=>G_,isSignedNumericLiteral:()=>_ce,isSimpleCopiableExpression:()=>IY,isSimpleInlineableExpression:()=>DN,isSimpleParameter:()=>qDt,isSimpleParameterList:()=>A_e,isSingleOrDoubleQuote:()=>ree,isSourceFile:()=>Gc,isSourceFileFromLibrary:()=>Mte,isSourceFileJS:()=>n0,isSourceFileNotJS:()=>OUe,isSourceFileNotJson:()=>gce,isSourceMapping:()=>QDt,isSpecialPropertyDeclaration:()=>QRe,isSpreadAssignment:()=>Mx,isSpreadElement:()=>ph,isStatement:()=>Ic,isStatementButNotDeclaration:()=>EX,isStatementOrBlock:()=>zw,isStatementWithLocals:()=>Hae,isStatic:()=>$u,isStaticModifier:()=>nT,isString:()=>Xa,isStringAKeyword:()=>zUe,isStringANonContextualKeyword:()=>FQ,isStringAndEmptyAnonymousObjectIntersection:()=>NGt,isStringDoubleQuoted:()=>Ace,isStringLiteral:()=>bu,isStringLiteralLike:()=>XA,isStringLiteralOrJsxExpression:()=>Wae,isStringLiteralOrTemplate:()=>jGt,isStringOrNumericLiteralLike:()=>GE,isStringOrRegularExpressionOrTemplateLiteral:()=>U7e,isStringTextContainingNode:()=>g8,isSuperCall:()=>Nf,isSuperKeyword:()=>z3,isSuperOrSuperProperty:()=>PUe,isSuperProperty:()=>M0,isSupportedSourceFileName:()=>KDe,isSwitchStatement:()=>Ed,isSyntaxList:()=>Ate,isSyntheticExpression:()=>$3,isSyntheticReference:()=>x6,isTagName:()=>L7e,isTaggedTemplateExpression:()=>V1,isTaggedTemplateTag:()=>AGt,isTemplateExpression:()=>Lx,isTemplateHead:()=>aY,isTemplateLiteral:()=>x1,isTemplateLiteralKind:()=>RS,isTemplateLiteralToken:()=>xae,isTemplateLiteralTypeNode:()=>ep,isTemplateLiteralTypeSpan:()=>tg,isTemplateMiddle:()=>j3,isTemplateMiddleOrTemplateTail:()=>u8,isTemplateSpan:()=>Mb,isTemplateTail:()=>Rle,isTextWhiteSpaceLike:()=>FGt,isThis:()=>Gte,isThisContainerOrFunctionBlock:()=>LRe,isThisIdentifier:()=>_G,isThisInTypeQuery:()=>oV,isThisInitializedDeclaration:()=>cce,isThisInitializedObjectBindingExpression:()=>WRe,isThisProperty:()=>j$,isThisTypeNode:()=>ca,isThisTypeParameter:()=>E6,isThisTypePredicate:()=>GRe,isThrowStatement:()=>F2,isToken:()=>O9,isTokenKind:()=>f$,isTraceEnabled:()=>GG,isTransientSymbol:()=>vB,isTrivia:()=>QX,isTryStatement:()=>ob,isTupleTypeNode:()=>Ct,isTypeAlias:()=>uee,isTypeAliasDeclaration:()=>Wf,isTypeAssertionExpression:()=>mV,isTypeDeclaration:()=>zQ,isTypeElement:()=>Bx,isTypeKeyword:()=>mue,isTypeKeywordToken:()=>tje,isTypeKeywordTokenOrIdentifier:()=>YGe,isTypeLiteralNode:()=>Se,isTypeNode:()=>Ya,isTypeNodeKind:()=>Ume,isTypeOfExpression:()=>eD,isTypeOnlyExportDeclaration:()=>kae,isTypeOnlyImportDeclaration:()=>Q9,isTypeOnlyImportOrExportDeclaration:()=>Ex,isTypeOperatorNode:()=>as,isTypeParameterDeclaration:()=>qp,isTypePredicateNode:()=>S,isTypeQueryNode:()=>oe,isTypeReferenceNode:()=>F,isTypeReferenceType:()=>m8,isTypeUsableAsPropertyName:()=>x2,isUMDExportSymbol:()=>Oce,isUnaryExpression:()=>_Z,isUnaryExpressionWithWrite:()=>p8,isUnicodeIdentifierStart:()=>vg,isUnionTypeNode:()=>Is,isUrl:()=>eC,isValidBigIntString:()=>ule,isValidESSymbolDeclaration:()=>DRe,isValidTypeOnlyAliasUseSite:()=>DZ,isValueSignatureDeclaration:()=>GQ,isVarAwaitUsing:()=>Mg,isVarConst:()=>Qp,isVarConstLike:()=>Pd,isVarUsing:()=>pd,isVariableDeclaration:()=>zs,isVariableDeclarationInVariableStatement:()=>D8,isVariableDeclarationInitializedToBareOrAccessedRequire:()=>q9,isVariableDeclarationInitializedToRequire:()=>tee,isVariableDeclarationList:()=>yl,isVariableLike:()=>TQ,isVariableLikeOrAccessor:()=>nce,isVariableStatement:()=>Rp,isVoidExpression:()=>Cf,isWatchSet:()=>Jme,isWhileStatement:()=>GZ,isWhiteSpaceLike:()=>Xm,isWhiteSpaceSingleLine:()=>$_,isWithStatement:()=>hV,isWriteAccess:()=>OQ,isWriteOnlyAccess:()=>Wce,isYieldExpression:()=>Vx,jsxModeNeedsExplicitImport:()=>kje,keywordPart:()=>OE,last:()=>Na,lastOrUndefined:()=>qo,length:()=>O,libMap:()=>l8e,libs:()=>ake,lineBreakPart:()=>Wte,linkNamePart:()=>MGt,linkPart:()=>Ije,linkTextPart:()=>jGe,listFiles:()=>e7e,loadModuleFromGlobalCache:()=>EDt,loadWithModeAwareCache:()=>y_e,makeIdentifierFromModuleName:()=>Kae,makeImport:()=>NV,makeStringLiteral:()=>hue,mangleScopedPackageName:()=>bte,map:()=>Ot,mapAllOrFail:()=>Br,mapDefined:()=>tr,mapDefinedEntries:()=>Gn,mapDefinedIterator:()=>gn,mapEntries:()=>Qs,mapIterator:()=>dr,mapOneOrMany:()=>Rje,mapToDisplayParts:()=>RV,matchFiles:()=>che,matchPatternOrExact:()=>Ahe,matchedText:()=>_h,matchesExclude:()=>_ke,maybeBind:()=>Hi,maybeSetLocalizedDiagnosticMessages:()=>GDe,memoize:()=>iu,memoizeCached:()=>Jh,memoizeOne:()=>ii,memoizeWeak:()=>NC,metadataHelper:()=>wle,min:()=>uC,minAndMax:()=>qDe,missingFileModifiedTime:()=>EA,modifierToFlag:()=>VQ,modifiersToFlags:()=>xv,moduleOptionDeclaration:()=>NRt,moduleResolutionIsEqualTo:()=>D$,moduleResolutionNameAndModeGetter:()=>x6e,moduleResolutionOptionDeclarations:()=>g8e,moduleResolutionSupportsPackageJsonExportsAndImports:()=>UQ,moduleResolutionUsesNodeModules:()=>HGe,moduleSpecifierToValidIdentifier:()=>z_e,moduleSpecifiers:()=>uP,moduleSymbolToValidIdentifier:()=>wue,moveEmitHelpers:()=>xu,moveRangeEnd:()=>s6,moveRangePastDecorators:()=>$R,moveRangePastModifiers:()=>OS,moveRangePos:()=>TZ,moveSyntheticComments:()=>RI,mutateMap:()=>u6,mutateMapSkippingNewValues:()=>pN,needsParentheses:()=>qGe,needsScopeMarker:()=>f8,newCaseClauseTracker:()=>pFe,newPrivateEnvironment:()=>jDt,noEmitNotification:()=>p_e,noEmitSubstitution:()=>sue,noTransformers:()=>Dxt,noTruncationMaximumTruncationLength:()=>T$,nodeCanBeDecorated:()=>q$,nodeHasName:()=>vv,nodeIsDecorated:()=>FX,nodeIsMissing:()=>wf,nodeIsPresent:()=>xE,nodeIsSynthesized:()=>qd,nodeModuleNameResolver:()=>pDt,nodeModulesPathPart:()=>Qx,nodeNextJsonConfigResolver:()=>fDt,nodeOrChildIsDecorated:()=>F8,nodeOverlapsWithStartEnd:()=>xGe,nodePosToString:()=>Xae,nodeSeenTracker:()=>Zte,nodeStartsNewLexicalEnvironment:()=>Eme,nodeToDisplayParts:()=>FZr,noop:()=>oc,noopFileWatcher:()=>gue,normalizePath:()=>Mc,normalizeSlashes:()=>Af,not:()=>gm,notImplemented:()=>za,notImplementedResolver:()=>Fxt,nullNodeConverters:()=>gxe,nullParenthesizerRules:()=>jee,nullTransformationContext:()=>I_e,objectAllocator:()=>xC,operatorPart:()=>yue,optionDeclarations:()=>cT,optionMapToObject:()=>pke,optionsAffectingProgramStructure:()=>GRt,optionsForBuild:()=>d8e,optionsForWatch:()=>W6,optionsHaveChanges:()=>F3,optionsHaveModuleResolutionChanges:()=>Qae,or:()=>pg,orderedRemoveItem:()=>eA,orderedRemoveItemAt:()=>Nm,packageIdToPackageName:()=>yQ,packageIdToString:()=>YR,paramHelper:()=>Dhe,parameterIsThisKeyword:()=>sV,parameterNamePart:()=>VGt,parseBaseNodeFactory:()=>BRt,parseBigInt:()=>$De,parseBuildCommand:()=>YRt,parseCommandLine:()=>MRt,parseCommandLineWorker:()=>f8e,parseConfigFileTextToJson:()=>C8e,parseConfigFileWithSystem:()=>Ckt,parseConfigHostFromCompilerHostLike:()=>nGe,parseCustomTypeOption:()=>gke,parseIsolatedEntityName:()=>V6,parseIsolatedJSDocComment:()=>SRt,parseJSDocTypeExpressionForTests:()=>_xr,parseJsonConfigFileContent:()=>Kxr,parseJsonSourceFileConfigFileContent:()=>t_e,parseJsonText:()=>Khe,parseListTypeOption:()=>PRt,parseNodeFactory:()=>sP,parseNodeModuleFromPath:()=>i_e,parsePackageName:()=>s_e,parsePseudoBigInt:()=>r4,parseValidBigInt:()=>Ihe,pasteEdits:()=>kqe,patchWriteFileEnsuringDirectory:()=>L0,pathContainsNodeModules:()=>lP,pathIsAbsolute:()=>II,pathIsBareSpecifier:()=>W0,pathIsRelative:()=>Op,patternText:()=>R0,perfLogger:()=>Kl,performIncrementalCompilation:()=>hkt,performance:()=>ap,plainJSErrors:()=>V6e,positionBelongsToNode:()=>M7e,positionIsASICandidate:()=>rFe,positionIsSynthesized:()=>Gv,positionsAreOnSameLine:()=>Z1,preProcessFile:()=>nLr,probablyUsesSemicolons:()=>K_e,processCommentPragmas:()=>a8e,processPragmasIntoFields:()=>c8e,processTaggedTemplateExpression:()=>c6e,programContainsEsModules:()=>kGt,programContainsModules:()=>xGt,projectReferenceIsEqualTo:()=>y8,propKeyHelper:()=>Nxe,propertyNamePart:()=>WGt,pseudoBigIntToString:()=>gV,punctuationPart:()=>A0,pushIfUnique:()=>pa,quote:()=>Bue,quotePreferenceFromString:()=>sje,rangeContainsPosition:()=>G_e,rangeContainsPositionExclusive:()=>F_e,rangeContainsRange:()=>V2,rangeContainsRangeExclusive:()=>mGt,rangeContainsStartEnd:()=>Z_e,rangeEndIsOnSameLineAsRangeStart:()=>a6,rangeEndPositionsAreOnSameLine:()=>EDe,rangeEquals:()=>wi,rangeIsOnSingleLine:()=>NZ,rangeOfNode:()=>phe,rangeOfTypeParameters:()=>fhe,rangeOverlapsWithStartEnd:()=>Iue,rangeStartIsOnSameLineAsRangeEnd:()=>BDe,rangeStartPositionsAreOnSameLine:()=>o6,readBuilderProgram:()=>dGe,readConfigFile:()=>$he,readHelper:()=>wxe,readJson:()=>cV,readJsonConfigFile:()=>HRt,readJsonOrUndefined:()=>kee,reduceEachLeadingCommentRange:()=>Cx,reduceEachTrailingCommentRange:()=>gZ,reduceLeft:()=>Td,reduceLeftIterator:()=>ge,reducePathComponents:()=>tC,refactor:()=>$6,regExpEscape:()=>hKe,regularExpressionFlagToCharacter:()=>tc,relativeComplement:()=>Ji,removeAllComments:()=>tte,removeEmitHelper:()=>iY,removeExtension:()=>e4,removeFileExtension:()=>o0,removeIgnoredPath:()=>sGe,removeMinAndVersionNumbers:()=>fv,removeOptionality:()=>vGt,removePrefix:()=>b_,removeSuffix:()=>Qm,removeTrailingDirectorySeparator:()=>S_,repeatString:()=>O_e,replaceElement:()=>au,replaceFirstStar:()=>$Q,resolutionExtensionIsTSOrJson:()=>C6,resolveConfigFileProjectName:()=>p7e,resolveJSModule:()=>gDt,resolveLibrary:()=>Ske,resolveModuleName:()=>M6,resolveModuleNameFromCache:()=>vkr,resolvePackageNameToPackageJson:()=>N8e,resolvePath:()=>q_,resolveProjectReferencePath:()=>Nte,resolveTripleslashReference:()=>B6e,resolveTypeReferenceDirective:()=>aDt,resolvingEmptyArray:()=>w$,restHelper:()=>Exe,returnFalse:()=>TC,returnNoopFileWatcher:()=>Aue,returnTrue:()=>pI,returnUndefined:()=>SI,returnsPromise:()=>Uje,runInitializersHelper:()=>mxe,sameFlatMap:()=>In,sameMap:()=>Ar,sameMapping:()=>fGr,scanShebangTrivia:()=>oG,scanTokenAtPosition:()=>bn,scanner:()=>X0,screenStartingMessageCodes:()=>j6e,semanticDiagnosticsOptionDeclarations:()=>DRt,serializeCompilerOptions:()=>fke,server:()=>dHr,servicesVersion:()=>$9r,setCommentRange:()=>mA,setConfigFileInOptions:()=>E8e,setConstantValue:()=>dxe,setEachParent:()=>vKe,setEmitFlags:()=>co,setFunctionNameHelper:()=>Rxe,setGetSourceFileAsHashVersioned:()=>AGe,setIdentifierAutoGenerate:()=>pV,setIdentifierGeneratedImportReference:()=>nte,setIdentifierTypeArguments:()=>rT,setInternalEmitFlags:()=>rte,setLocalizedDiagnosticMessages:()=>Fee,setModuleDefaultHelper:()=>kxe,setNodeChildren:()=>tRt,setNodeFlags:()=>rxe,setObjectAllocator:()=>kDe,setOriginalNode:()=>Ho,setParent:()=>kA,setParentRecursive:()=>_N,setPrivateIdentifier:()=>C4,setSnippetElement:()=>Va,setSourceMapRange:()=>Qg,setStackTraceLimit:()=>nN,setStartsOnNewLine:()=>ble,setSyntheticLeadingComments:()=>US,setSyntheticTrailingComments:()=>rY,setSys:()=>Ev,setSysLog:()=>kb,setTextRange:()=>un,setTextRangeEnd:()=>n4,setTextRangePos:()=>_6,setTextRangePosEnd:()=>MS,setTextRangePosWidth:()=>Che,setTokenSourceMapRange:()=>Axe,setTypeNode:()=>pxe,setUILocale:()=>Ks,setValueDeclaration:()=>cee,shouldAllowImportingTsExtension:()=>Ete,shouldPreserveConstEnums:()=>uV,shouldUseUriStyleNodeCoreModules:()=>AFe,showModuleSpecifier:()=>RDe,signatureHasLiteralTypes:()=>U8e,signatureHasRestParameter:()=>u0,signatureToDisplayParts:()=>Cje,single:()=>Dg,singleElementArray:()=>Rm,singleIterator:()=>Za,singleOrMany:()=>hl,singleOrUndefined:()=>wu,skipAlias:()=>dh,skipAssertions:()=>UDr,skipConstraint:()=>rje,skipOuterExpressions:()=>ZC,skipParentheses:()=>jA,skipPartiallyEmittedExpressions:()=>D1,skipTrivia:()=>Ju,skipTypeChecking:()=>jQ,skipTypeParentheses:()=>H8,skipWhile:()=>hE,sliceAfter:()=>dhe,some:()=>lr,sort:()=>Cg,sortAndDeduplicate:()=>Ir,sortAndDeduplicateDiagnostics:()=>nA,sourceFileAffectingCompilerOptions:()=>A8e,sourceFileMayBeEmitted:()=>X3,sourceMapCommentRegExp:()=>j8e,sourceMapCommentRegExpDontCareLineStart:()=>WDt,spacePart:()=>DI,spanMap:()=>ka,spreadArrayHelper:()=>Txe,stableSort:()=>Cl,startEndContainsRange:()=>O7e,startEndOverlapsWithStartEnd:()=>kGe,startOnNewLine:()=>l0,startTracing:()=>bE,startsWith:()=>uc,startsWithDirectory:()=>Th,startsWithUnderscore:()=>xje,startsWithUseStrict:()=>cRt,stringContainsAt:()=>iFt,stringToToken:()=>Hn,stripQuotes:()=>N2,supportedDeclarationExtensions:()=>ole,supportedJSExtensions:()=>lhe,supportedJSExtensionsFlat:()=>$X,supportedLocaleDirectories:()=>S3,supportedTSExtensions:()=>f6,supportedTSExtensionsFlat:()=>Pee,supportedTSImplementationExtensions:()=>ale,suppressLeadingAndTrailingTrivia:()=>ME,suppressLeadingTrivia:()=>yje,suppressTrailingTrivia:()=>JGt,symbolEscapedNameNoDefault:()=>XGe,symbolName:()=>df,symbolNameNoDefault:()=>aje,symbolPart:()=>LGt,symbolToDisplayParts:()=>bue,syntaxMayBeASICandidate:()=>qGt,syntaxRequiresTrailingSemicolonOrASI:()=>tFe,sys:()=>_d,sysLog:()=>Uy,tagNamesAreEquivalent:()=>aP,takeWhile:()=>Zf,targetOptionDeclaration:()=>u8e,templateObjectHelper:()=>Sxe,testFormatSettings:()=>SZr,textChangeRangeIsUnchanged:()=>K,textChangeRangeNewSpan:()=>Ys,textChanges:()=>po,textOrKeywordPart:()=>fje,textPart:()=>P2,textRangeContainsPositionInclusive:()=>_2,textSpanContainsPosition:()=>Cy,textSpanContainsTextSpan:()=>y2,textSpanEnd:()=>Uu,textSpanIntersection:()=>AZ,textSpanIntersectsWith:()=>sI,textSpanIntersectsWithPosition:()=>my,textSpanIntersectsWithTextSpan:()=>pA,textSpanIsEmpty:()=>NE,textSpanOverlap:()=>B3,textSpanOverlapsWith:()=>LR,textSpansEqual:()=>Vte,textToKeywordObj:()=>k,timestamp:()=>ql,toArray:()=>ys,toBuilderFileEmit:()=>akt,toBuilderStateFileInfoForMultiEmit:()=>okt,toEditorSettings:()=>s0e,toFileNameLowerCase:()=>lf,toLowerCase:()=>il,toPath:()=>gA,toProgramEmitPending:()=>ckt,tokenIsIdentifierOrKeyword:()=>MI,tokenIsIdentifierOrKeywordOrGreaterThan:()=>FR,tokenToString:()=>vr,trace:()=>wl,tracing:()=>Mi,tracingEnabled:()=>Ay,transferSourceFileChildren:()=>rRt,transform:()=>lVr,transformClassFields:()=>lxt,transformDeclarations:()=>A6e,transformECMAScriptModule:()=>g6e,transformES2015:()=>Ext,transformES2016:()=>bxt,transformES2017:()=>dxt,transformES2018:()=>pxt,transformES2019:()=>fxt,transformES2020:()=>Ixt,transformES2021:()=>Cxt,transformESDecorators:()=>Axt,transformESNext:()=>mxt,transformGenerators:()=>Bxt,transformJsx:()=>yxt,transformLegacyDecorators:()=>gxt,transformModule:()=>u6e,transformNamedEvaluation:()=>PE,transformNodeModule:()=>Sxt,transformNodes:()=>f_e,transformSystemModule:()=>vxt,transformTypeScript:()=>cxt,transpile:()=>ALr,transpileDeclaration:()=>uLr,transpileModule:()=>SFt,transpileOptionValueCompilerOptions:()=>FRt,tryAddToSet:()=>Zi,tryAndIgnoreErrors:()=>sFe,tryCast:()=>eo,tryDirectoryExists:()=>iFe,tryExtractTSExtension:()=>Gce,tryFileExists:()=>Sue,tryGetClassExtendingExpressionWithTypeArguments:()=>Pme,tryGetClassImplementingOrExtendingExpressionWithTypeArguments:()=>Ome,tryGetDirectories:()=>nFe,tryGetExtensionFromPath:()=>hN,tryGetImportFromModuleSpecifier:()=>lee,tryGetJSDocSatisfiesTypeNode:()=>Ile,tryGetModuleNameFromFile:()=>Qhe,tryGetModuleSpecifierFromDeclaration:()=>Y8,tryGetNativePerformanceHooks:()=>U_,tryGetPropertyAccessOrIdentifierToString:()=>Dee,tryGetPropertyNameOfBindingOrAssignmentElement:()=>rke,tryGetSourceMappingURL:()=>PDt,tryGetTextOfPropertyName:()=>wQ,tryIOAndConsumeErrors:()=>oFe,tryParseJson:()=>Lce,tryParsePattern:()=>t4,tryParsePatterns:()=>Yee,tryParseRawSourceMap:()=>MDt,tryReadDirectory:()=>vje,tryReadFile:()=>Mle,tryRemoveDirectoryPrefix:()=>nhe,tryRemoveExtension:()=>zDe,tryRemovePrefix:()=>Sb,tryRemoveSuffix:()=>f1,typeAcquisitionDeclarations:()=>lke,typeAliasNamePart:()=>PGt,typeDirectiveIsEqualTo:()=>Yae,typeKeywords:()=>eje,typeParameterNamePart:()=>OGt,typeToDisplayParts:()=>H_e,unchangedPollThresholds:()=>Pp,unchangedTextChangeRange:()=>Ze,unescapeLeadingUnderscores:()=>Sc,unmangleScopedPackageName:()=>a_e,unorderedRemoveItem:()=>Oy,unorderedRemoveItemAt:()=>lh,unreachableCodeIsError:()=>LDe,unsetNodeChildren:()=>YKe,unusedLabelIsError:()=>VDe,unwrapInnermostStatementOfLabel:()=>ome,unwrapParenthesizedExpression:()=>mle,updateErrorForNoInputFiles:()=>hke,updateLanguageServiceSourceFile:()=>yze,updateMissingFilePathsWatch:()=>y6e,updateResolutionField:()=>mte,updateSharedExtendedConfigFileWatcher:()=>Kke,updateSourceFile:()=>i8e,updateWatchingWildcardDirectories:()=>C_e,usesExtensionsOnImports:()=>JDe,usingSingleLineStringWriter:()=>Z3,utf16EncodeAsString:()=>Ss,validateLocaleAndSetLanguage:()=>oQ,valuesHelper:()=>Dxe,version:()=>y,versionMajorMinor:()=>m,visitArray:()=>l_e,visitCommaListElements:()=>u_e,visitEachChild:()=>ns,visitFunctionBody:()=>L2,visitIterationBody:()=>yy,visitLexicalEnvironment:()=>K8e,visitNode:()=>xr,visitNodes:()=>ws,visitParameterList:()=>hI,walkUpBindingElementsAndPatterns:()=>fA,walkUpLexicalEnvironments:()=>KDt,walkUpOuterExpressions:()=>lRt,walkUpParenthesizedExpressions:()=>KR,walkUpParenthesizedTypes:()=>pee,walkUpParenthesizedTypesAndGetParentAndChild:()=>fme,whitespaceOrMapCommentRegExp:()=>z8e,writeCommentRange:()=>jX,writeFile:()=>vee,writeFileEnsuringDirectories:()=>Dme,zipWith:()=>fe});var Fls=!0,uHr;function Zls(){return uHr??(uHr=new Dn(y))}function gHr(n,c,u,d,I){let h=c?"DeprecationError: ":"DeprecationWarning: ";return h+=`'${n}' `,h+=d?`has been deprecated since v${d}`:"is deprecated",h+=c?" and can no longer be used.":u?` and will no longer be usable after v${u}.`:".",h+=I?` ${fN(I,[n])}`:"",h}function Lls(n,c,u,d){let I=gHr(n,!0,c,u,d);return()=>{throw new TypeError(I)}}function Vls(n,c,u,d){let I=!1;return()=>{Fls&&!I&&(w.log.warn(gHr(n,!1,c,u,d)),I=!0)}}function Wls(n,c={}){let u=typeof c.typeScriptVersion=="string"?new Dn(c.typeScriptVersion):c.typeScriptVersion??Zls(),d=typeof c.errorAfter=="string"?new Dn(c.errorAfter):c.errorAfter,I=typeof c.warnAfter=="string"?new Dn(c.warnAfter):c.warnAfter,h=typeof c.since=="string"?new Dn(c.since):c.since??I,b=c.error||d&&u.compareTo(d)>=0,R=!I||u.compareTo(I)>=0;return b?Lls(n,d,h,c.message):R?Vls(n,d,h,c.message):oc}function Pls(n,c){return function(){return n(),c.apply(this,arguments)}}function Ols(n,c){let u=Wls(c?.name??w.getFunctionName(n),c);return Pls(u,n)}function Gqe(n,c,u,d){if(Object.defineProperty(h,"name",{...Object.getOwnPropertyDescriptor(h,"name"),value:n}),d)for(let b of Object.keys(d)){let R=+b;!isNaN(R)&&Qa(c,`${R}`)&&(c[R]=Ols(c[R],{...d[R],name:n}))}let I=Mls(c,u);return h;function h(...b){let R=I(b),N=R!==void 0?c[R]:void 0;if(typeof N=="function")return N(...b);throw new TypeError("Invalid arguments")}}function Mls(n,c){return u=>{for(let d=0;Qa(n,`${d}`)&&Qa(c,`${d}`);d++){let I=c[d];if(I(u))return d}}}function AHr(n){return{overload:c=>({bind:u=>({finish:()=>Gqe(n,c,u),deprecate:d=>({finish:()=>Gqe(n,c,u,d)})})})}}var dHr={};o(dHr,{ActionInvalidate:()=>bGe,ActionPackageInstalled:()=>EGe,ActionSet:()=>yGe,ActionWatchTypingLocations:()=>R_e,Arguments:()=>w7e,AutoImportProviderProject:()=>cWt,AuxiliaryProject:()=>oWt,CharRangeSection:()=>DWt,CloseFileWatcherEvent:()=>Uqe,CommandNames:()=>YHr,ConfigFileDiagEvent:()=>Qqe,ConfiguredProject:()=>lWt,ConfiguredProjectLoadKind:()=>fWt,CreateDirectoryWatcherEvent:()=>Jqe,CreateFileWatcherEvent:()=>Xqe,Errors:()=>VG,EventBeginInstallTypes:()=>v7e,EventEndInstallTypes:()=>S7e,EventInitializationFailed:()=>Ukt,EventTypesRegistry:()=>B7e,ExternalProject:()=>Lqe,GcTimer:()=>KVt,InferredProject:()=>sWt,LargeFileReferencedEvent:()=>Mqe,LineIndex:()=>Z0e,LineLeaf:()=>gZe,LineNode:()=>rre,LogLevel:()=>PVt,Msg:()=>OVt,OpenFileInfoTelemetryEvent:()=>uWt,Project:()=>l7,ProjectInfoTelemetryEvent:()=>Hqe,ProjectKind:()=>R0e,ProjectLanguageServiceStateEvent:()=>Yqe,ProjectLoadingFinishEvent:()=>Oqe,ProjectLoadingStartEvent:()=>Pqe,ProjectService:()=>yWt,ProjectsUpdatedInBackgroundEvent:()=>lZe,ScriptInfo:()=>$Vt,ScriptVersionCache:()=>o$e,Session:()=>KHr,TextStorage:()=>qVt,ThrottledOperations:()=>UVt,TypingsCache:()=>eWt,TypingsInstallerAdapter:()=>e5r,allFilesAreJsOrDts:()=>rWt,allRootFilesAreJsOrDts:()=>tWt,asNormalizedPath:()=>CHr,convertCompilerOptions:()=>uZe,convertFormatOptions:()=>$te,convertScriptKindName:()=>jqe,convertTypeAcquisition:()=>AWt,convertUserPreferences:()=>dWt,convertWatchOptions:()=>G0e,countEachFileTypes:()=>D0e,createInstallTypingsRequest:()=>MVt,createModuleSpecifierCache:()=>BWt,createNormalizedPathMap:()=>mHr,createPackageJsonCache:()=>vWt,createSortedArray:()=>JVt,emptyArray:()=>ym,findArgument:()=>pZr,forEachResolvedProjectReferenceProject:()=>e$e,formatDiagnosticToProtocol:()=>F0e,formatMessage:()=>SWt,getBaseConfigFileName:()=>Fqe,getLocationInNewDocument:()=>RWt,hasArgument:()=>dZr,hasNoTypeScriptSource:()=>nWt,indent:()=>pue,isBackgroundProject:()=>k0e,isConfigFile:()=>bWt,isConfiguredProject:()=>QZ,isDynamicFileName:()=>N0e,isExternalProject:()=>x0e,isInferredProject:()=>qte,isInferredProjectName:()=>QVt,isProjectDeferredClose:()=>cZe,makeAutoImportProviderProjectName:()=>HVt,makeAuxiliaryProjectName:()=>XVt,makeInferredProjectName:()=>YVt,maxFileSize:()=>Wqe,maxProgramSizeForNonTsFiles:()=>Vqe,normalizedPathToPath:()=>T0e,nowString:()=>fZr,nullCancellationToken:()=>OHr,nullTypingsInstaller:()=>Zqe,protocol:()=>jVt,removeSorted:()=>hHr,stringifyIndented:()=>AP,toEvent:()=>wWt,toNormalizedPath:()=>Pf,tryConvertScriptKindName:()=>Kqe,typingsInstaller:()=>WVt,updateProjectIfDirty:()=>M2});var WVt={};o(WVt,{TypingsInstaller:()=>Hls,getNpmCommandForInstallation:()=>fHr,installNpmPackages:()=>Yls,typingsName:()=>IHr});var Qls={isEnabled:()=>!1,writeLine:oc};function pHr(n,c,u,d){try{let I=M6(c,xo(n,"index.d.ts"),{moduleResolution:2},u);return I.resolvedModule&&I.resolvedModule.resolvedFileName}catch(I){d.isEnabled()&&d.writeLine(`Failed to resolve ${c} in folder '${n}': ${I.message}`);return}}function Yls(n,c,u,d){let I=!1;for(let h=u.length;h>0;){let b=fHr(n,c,u,h);h=b.remaining,I=d(b.command)||I}return I}function fHr(n,c,u,d){let I=u.length-d,h,b=d;for(;h=`${n} install --ignore-scripts ${(b===u.length?u:u.slice(I,I+b)).join(" ")} --save-dev --user-agent="typesInstaller/${c}"`,!(h.length<8e3);)b=b-Math.floor(b/2);return{command:h,remaining:d-b}}var Hls=class{constructor(n,c,u,d,I,h=Qls){this.installTypingHost=n,this.globalCachePath=c,this.safeListPath=u,this.typesMapLocation=d,this.throttleLimit=I,this.log=h,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 '${c}', safe file path '${u}', types map path ${d}`),this.processCacheLocation(this.globalCachePath)}handleRequest(n){switch(n.kind){case"discover":this.install(n);break;case"closeProject":this.closeProject(n);break;case"typesRegistry":{let c={};this.typesRegistry.forEach((d,I)=>{c[I]=d});let u={kind:B7e,typesRegistry:c};this.sendResponse(u);break}case"installPackage":{this.installPackage(n);break}default:w.assertNever(n)}}closeProject(n){this.closeWatchers(n.projectName)}closeWatchers(n){if(this.log.isEnabled()&&this.log.writeLine(`Closing file watchers for project '${n}'`),!this.projectWatchers.get(n)){this.log.isEnabled()&&this.log.writeLine(`No watchers are registered for project '${n}'`);return}this.projectWatchers.delete(n),this.sendResponse({kind:R_e,projectName:n,files:[]}),this.log.isEnabled()&&this.log.writeLine(`Closing file watchers for project '${n}' - done.`)}install(n){this.log.isEnabled()&&this.log.writeLine(`Got install request${AP(n)}`),n.cachePath&&(this.log.isEnabled()&&this.log.writeLine(`Request specifies cache path '${n.cachePath}', loading cached information...`),this.processCacheLocation(n.cachePath)),this.safeList===void 0&&this.initializeSafeList();let c=kN.discoverTypings(this.installTypingHost,this.log.isEnabled()?u=>this.log.writeLine(u):void 0,n.fileNames,n.projectRootPath,this.safeList,this.packageNameToTypingLocation,n.typeAcquisition,n.unresolvedImports,this.typesRegistry,n.compilerOptions);this.watchFiles(n.projectName,c.filesToWatch),c.newTypingNames.length?this.installTypings(n,n.cachePath||this.globalCachePath,c.cachedTypingPaths,c.newTypingNames):(this.sendResponse(this.createSetTypings(n,c.cachedTypingPaths)),this.log.isEnabled()&&this.log.writeLine("No new typings were requested as a result of typings discovery"))}installPackage(n){let{fileName:c,packageName:u,projectName:d,projectRootPath:I,id:h}=n,b=iI(aa(c),R=>{if(this.installTypingHost.fileExists(xo(R,"package.json")))return R})||I;if(b)this.installWorker(-1,[u],b,R=>{let N=R?`Package ${u} installed.`:`There was an error installing ${u}.`,V={kind:EGe,projectName:d,id:h,success:R,message:N};this.sendResponse(V)});else{let R={kind:EGe,projectName:d,id:h,success:!1,message:"Could not determine a project root path."};this.sendResponse(R)}}initializeSafeList(){if(this.typesMapLocation){let n=kN.loadTypesMap(this.installTypingHost,this.typesMapLocation);if(n){this.log.writeLine(`Loaded safelist from types map file '${this.typesMapLocation}'`),this.safeList=n;return}this.log.writeLine(`Failed to load safelist from types map file '${this.typesMapLocation}'`)}this.safeList=kN.loadSafeList(this.installTypingHost,this.safeListPath)}processCacheLocation(n){if(this.log.isEnabled()&&this.log.writeLine(`Processing cache location '${n}'`),this.knownCachesSet.has(n)){this.log.isEnabled()&&this.log.writeLine("Cache location was already processed...");return}let c=xo(n,"package.json"),u=xo(n,"package-lock.json");if(this.log.isEnabled()&&this.log.writeLine(`Trying to find '${c}'...`),this.installTypingHost.fileExists(c)&&this.installTypingHost.fileExists(u)){let d=JSON.parse(this.installTypingHost.readFile(c)),I=JSON.parse(this.installTypingHost.readFile(u));if(this.log.isEnabled()&&(this.log.writeLine(`Loaded content of '${c}':${AP(d)}`),this.log.writeLine(`Loaded content of '${u}':${AP(I)}`)),d.devDependencies&&I.dependencies)for(let h in d.devDependencies){if(!Qa(I.dependencies,h))continue;let b=xA(h);if(!b)continue;let R=pHr(n,b,this.installTypingHost,this.log);if(!R){this.missingTypingsSet.add(b);continue}let N=this.packageNameToTypingLocation.get(b);if(N){if(N.typingLocation===R)continue;this.log.isEnabled()&&this.log.writeLine(`New typing for package ${b} from '${R}' conflicts with existing typing file '${N}'`)}this.log.isEnabled()&&this.log.writeLine(`Adding entry into typings cache: '${b}' => '${R}'`);let V=Rt(I.dependencies,h),P=V&&V.version;if(!P)continue;let M={typingLocation:R,version:new Dn(P)};this.packageNameToTypingLocation.set(b,M)}}this.log.isEnabled()&&this.log.writeLine(`Finished processing cache location '${n}'`),this.knownCachesSet.add(n)}filterTypings(n){return tr(n,c=>{let u=bte(c);if(this.missingTypingsSet.has(u)){this.log.isEnabled()&&this.log.writeLine(`'${c}':: '${u}' is in missingTypingsSet - skipping...`);return}let d=kN.validatePackageName(c);if(d!==kN.NameValidationResult.Ok){this.missingTypingsSet.add(u),this.log.isEnabled()&&this.log.writeLine(kN.renderPackageNameValidationFailure(d,c));return}if(!this.typesRegistry.has(u)){this.log.isEnabled()&&this.log.writeLine(`'${c}':: Entry for package '${u}' does not exist in local types registry - skipping...`);return}if(this.packageNameToTypingLocation.get(u)&&kN.isTypingUpToDate(this.packageNameToTypingLocation.get(u),this.typesRegistry.get(u))){this.log.isEnabled()&&this.log.writeLine(`'${c}':: '${u}' already has an up-to-date typing - skipping...`);return}return u})}ensurePackageDirectoryExists(n){let c=xo(n,"package.json");this.log.isEnabled()&&this.log.writeLine(`Npm config file: ${c}`),this.installTypingHost.fileExists(c)||(this.log.isEnabled()&&this.log.writeLine(`Npm config file: '${c}' is missing, creating new one...`),this.ensureDirectoryExists(n,this.installTypingHost),this.installTypingHost.writeFile(c,'{ "private": true }'))}installTypings(n,c,u,d){this.log.isEnabled()&&this.log.writeLine(`Installing typings ${JSON.stringify(d)}`);let I=this.filterTypings(d);if(I.length===0){this.log.isEnabled()&&this.log.writeLine("All typings are known to be missing or invalid - no need to install more typings"),this.sendResponse(this.createSetTypings(n,u));return}this.ensurePackageDirectoryExists(c);let h=this.installRunCount;this.installRunCount++,this.sendResponse({kind:v7e,eventId:h,typingsInstallerVersion:y,projectName:n.projectName});let b=I.map(IHr);this.installTypingsAsync(h,b,c,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(let V of I)this.missingTypingsSet.add(V);return}this.log.isEnabled()&&this.log.writeLine(`Installed typings ${JSON.stringify(b)}`);let N=[];for(let V of I){let P=pHr(c,V,this.installTypingHost,this.log);if(!P){this.missingTypingsSet.add(V);continue}let M=this.typesRegistry.get(V),te=new Dn(M[`ts${m}`]||M[this.latestDistTag]),re={typingLocation:P,version:te};this.packageNameToTypingLocation.set(V,re),N.push(P)}this.log.isEnabled()&&this.log.writeLine(`Installed typing files ${JSON.stringify(N)}`),this.sendResponse(this.createSetTypings(n,u.concat(N)))}finally{let N={kind:S7e,eventId:h,projectName:n.projectName,packagesToInstall:b,installSuccess:R,typingsInstallerVersion:y};this.sendResponse(N)}})}ensureDirectoryExists(n,c){let u=aa(n);c.directoryExists(u)||this.ensureDirectoryExists(u,c),c.directoryExists(n)||c.createDirectory(n)}watchFiles(n,c){if(!c.length){this.closeWatchers(n);return}let u=this.projectWatchers.get(n),d=new Set(c);!u||$w(d,I=>!u.has(I))||$w(u,I=>!d.has(I))?(this.projectWatchers.set(n,d),this.sendResponse({kind:R_e,projectName:n,files:c})):this.sendResponse({kind:R_e,projectName:n,files:void 0})}createSetTypings(n,c){return{projectName:n.projectName,typeAcquisition:n.typeAcquisition,compilerOptions:n.compilerOptions,typings:c,unresolvedImports:n.unresolvedImports,kind:yGe}}installTypingsAsync(n,c,u,d){this.pendingRunRequests.unshift({requestId:n,packageNames:c,cwd:u,onRequestCompleted:d}),this.executeWithThrottling()}executeWithThrottling(){for(;this.inFlightRequestCount{this.inFlightRequestCount--,n.onRequestCompleted(c),this.executeWithThrottling()})}}};function IHr(n){return`@types/${n}@ts${m}`}var PVt=(n=>(n[n.terse=0]="terse",n[n.normal=1]="normal",n[n.requestTime=2]="requestTime",n[n.verbose=3]="verbose",n))(PVt||{}),ym=JVt(),OVt=(n=>(n.Err="Err",n.Info="Info",n.Perf="Perf",n))(OVt||{});function MVt(n,c,u,d){return{projectName:n.getProjectName(),fileNames:n.getFileNames(!0,!0).concat(n.getExcludedFiles()),compilerOptions:n.getCompilationSettings(),typeAcquisition:c,unresolvedImports:u,projectRootPath:n.getCurrentDirectory(),cachePath:d,kind:"discover"}}var VG;(n=>{function c(){throw new Error("No Project.")}n.ThrowNoProject=c;function u(){throw new Error("The project's language service is disabled.")}n.ThrowProjectLanguageServiceDisabled=u;function d(I,h){throw new Error(`Project '${h.getProjectName()}' does not contain document '${I}'`)}n.ThrowProjectDoesNotContainDocument=d})(VG||(VG={}));function Pf(n){return Mc(n)}function T0e(n,c,u){let d=yd(n)?n:Oc(n,c);return u(d)}function CHr(n){return n}function mHr(){let n=new Map;return{get(c){return n.get(c)},set(c,u){n.set(c,u)},contains(c){return n.has(c)},remove(c){n.delete(c)}}}function QVt(n){return/dev\/null\/inferredProject\d+\*/.test(n)}function YVt(n){return`/dev/null/inferredProject${n}*`}function HVt(n){return`/dev/null/autoImportProviderProject${n}*`}function XVt(n){return`/dev/null/auxiliaryProject${n}*`}function JVt(){return[]}var UVt=class rPn{constructor(c,u){this.host=c,this.pendingTimeouts=new Map,this.logger=u.hasLevel(3)?u:void 0}schedule(c,u,d){let I=this.pendingTimeouts.get(c);I&&this.host.clearTimeout(I),this.pendingTimeouts.set(c,this.host.setTimeout(rPn.run,u,c,this,d)),this.logger&&this.logger.info(`Scheduled: ${c}${I?", Cancelled earlier one":""}`)}cancel(c){let u=this.pendingTimeouts.get(c);return u?(this.host.clearTimeout(u),this.pendingTimeouts.delete(c)):!1}static run(c,u,d){var I,h;(I=Kl)==null||I.logStartScheduledOperation(c),u.pendingTimeouts.delete(c),u.logger&&u.logger.info(`Running: ${c}`),d(),(h=Kl)==null||h.logStopScheduledOperation()}},KVt=class nPn{constructor(c,u,d){this.host=c,this.delay=u,this.logger=d}scheduleCollect(){!this.host.gc||this.timerId!==void 0||(this.timerId=this.host.setTimeout(nPn.run,this.delay,this))}static run(c){var u,d;c.timerId=void 0,(u=Kl)==null||u.logStartScheduledOperation("GC collect");let I=c.logger.hasLevel(2),h=I&&c.host.getMemoryUsage();if(c.host.gc(),I){let b=c.host.getMemoryUsage();c.logger.perftrc(`GC::before ${h}, after ${b}`)}(d=Kl)==null||d.logStopScheduledOperation()}};function Fqe(n){let c=xA(n);return c==="tsconfig.json"||c==="jsconfig.json"?c:void 0}function hHr(n,c,u){if(!n||n.length===0)return;if(n[0]===c){n.splice(0,1);return}let d=Lg(n,c,Bl,u);d>=0&&n.splice(d,1)}var jVt={};o(jVt,{ClassificationType:()=>D7e,CommandTypes:()=>zVt,CompletionTriggerKind:()=>N7e,IndentStyle:()=>EHr,JsxEmit:()=>BHr,ModuleKind:()=>vHr,ModuleResolutionKind:()=>SHr,NewLineKind:()=>wHr,OrganizeImportsMode:()=>T7e,PollingWatchKind:()=>bHr,ScriptTarget:()=>THr,SemicolonPreference:()=>R7e,WatchDirectoryKind:()=>yHr,WatchFileKind:()=>_Hr});var zVt=(n=>(n.JsxClosingTag="jsxClosingTag",n.LinkedEditingRange="linkedEditingRange",n.Brace="brace",n.BraceFull="brace-full",n.BraceCompletion="braceCompletion",n.GetSpanOfEnclosingComment="getSpanOfEnclosingComment",n.Change="change",n.Close="close",n.Completions="completions",n.CompletionInfo="completionInfo",n.CompletionsFull="completions-full",n.CompletionDetails="completionEntryDetails",n.CompletionDetailsFull="completionEntryDetails-full",n.CompileOnSaveAffectedFileList="compileOnSaveAffectedFileList",n.CompileOnSaveEmitFile="compileOnSaveEmitFile",n.Configure="configure",n.Definition="definition",n.DefinitionFull="definition-full",n.DefinitionAndBoundSpan="definitionAndBoundSpan",n.DefinitionAndBoundSpanFull="definitionAndBoundSpan-full",n.Implementation="implementation",n.ImplementationFull="implementation-full",n.EmitOutput="emit-output",n.Exit="exit",n.FileReferences="fileReferences",n.FileReferencesFull="fileReferences-full",n.Format="format",n.Formatonkey="formatonkey",n.FormatFull="format-full",n.FormatonkeyFull="formatonkey-full",n.FormatRangeFull="formatRange-full",n.Geterr="geterr",n.GeterrForProject="geterrForProject",n.SemanticDiagnosticsSync="semanticDiagnosticsSync",n.SyntacticDiagnosticsSync="syntacticDiagnosticsSync",n.SuggestionDiagnosticsSync="suggestionDiagnosticsSync",n.NavBar="navbar",n.NavBarFull="navbar-full",n.Navto="navto",n.NavtoFull="navto-full",n.NavTree="navtree",n.NavTreeFull="navtree-full",n.DocumentHighlights="documentHighlights",n.DocumentHighlightsFull="documentHighlights-full",n.Open="open",n.Quickinfo="quickinfo",n.QuickinfoFull="quickinfo-full",n.References="references",n.ReferencesFull="references-full",n.Reload="reload",n.Rename="rename",n.RenameInfoFull="rename-full",n.RenameLocationsFull="renameLocations-full",n.Saveto="saveto",n.SignatureHelp="signatureHelp",n.SignatureHelpFull="signatureHelp-full",n.FindSourceDefinition="findSourceDefinition",n.Status="status",n.TypeDefinition="typeDefinition",n.ProjectInfo="projectInfo",n.ReloadProjects="reloadProjects",n.Unknown="unknown",n.OpenExternalProject="openExternalProject",n.OpenExternalProjects="openExternalProjects",n.CloseExternalProject="closeExternalProject",n.SynchronizeProjectList="synchronizeProjectList",n.ApplyChangedToOpenFiles="applyChangedToOpenFiles",n.UpdateOpen="updateOpen",n.EncodedSyntacticClassificationsFull="encodedSyntacticClassifications-full",n.EncodedSemanticClassificationsFull="encodedSemanticClassifications-full",n.Cleanup="cleanup",n.GetOutliningSpans="getOutliningSpans",n.GetOutliningSpansFull="outliningSpans",n.TodoComments="todoComments",n.Indentation="indentation",n.DocCommentTemplate="docCommentTemplate",n.CompilerOptionsDiagnosticsFull="compilerOptionsDiagnostics-full",n.NameOrDottedNameSpan="nameOrDottedNameSpan",n.BreakpointStatement="breakpointStatement",n.CompilerOptionsForInferredProjects="compilerOptionsForInferredProjects",n.GetCodeFixes="getCodeFixes",n.GetCodeFixesFull="getCodeFixes-full",n.GetCombinedCodeFix="getCombinedCodeFix",n.GetCombinedCodeFixFull="getCombinedCodeFix-full",n.ApplyCodeActionCommand="applyCodeActionCommand",n.GetSupportedCodeFixes="getSupportedCodeFixes",n.GetApplicableRefactors="getApplicableRefactors",n.GetEditsForRefactor="getEditsForRefactor",n.GetMoveToRefactoringFileSuggestions="getMoveToRefactoringFileSuggestions",n.GetPasteEdits="getPasteEdits",n.GetEditsForRefactorFull="getEditsForRefactor-full",n.OrganizeImports="organizeImports",n.OrganizeImportsFull="organizeImports-full",n.GetEditsForFileRename="getEditsForFileRename",n.GetEditsForFileRenameFull="getEditsForFileRename-full",n.ConfigurePlugin="configurePlugin",n.SelectionRange="selectionRange",n.SelectionRangeFull="selectionRange-full",n.ToggleLineComment="toggleLineComment",n.ToggleLineCommentFull="toggleLineComment-full",n.ToggleMultilineComment="toggleMultilineComment",n.ToggleMultilineCommentFull="toggleMultilineComment-full",n.CommentSelection="commentSelection",n.CommentSelectionFull="commentSelection-full",n.UncommentSelection="uncommentSelection",n.UncommentSelectionFull="uncommentSelection-full",n.PrepareCallHierarchy="prepareCallHierarchy",n.ProvideCallHierarchyIncomingCalls="provideCallHierarchyIncomingCalls",n.ProvideCallHierarchyOutgoingCalls="provideCallHierarchyOutgoingCalls",n.ProvideInlayHints="provideInlayHints",n.WatchChange="watchChange",n.MapCode="mapCode",n))(zVt||{}),_Hr=(n=>(n.FixedPollingInterval="FixedPollingInterval",n.PriorityPollingInterval="PriorityPollingInterval",n.DynamicPriorityPolling="DynamicPriorityPolling",n.FixedChunkSizePolling="FixedChunkSizePolling",n.UseFsEvents="UseFsEvents",n.UseFsEventsOnParentDirectory="UseFsEventsOnParentDirectory",n))(_Hr||{}),yHr=(n=>(n.UseFsEvents="UseFsEvents",n.FixedPollingInterval="FixedPollingInterval",n.DynamicPriorityPolling="DynamicPriorityPolling",n.FixedChunkSizePolling="FixedChunkSizePolling",n))(yHr||{}),bHr=(n=>(n.FixedInterval="FixedInterval",n.PriorityInterval="PriorityInterval",n.DynamicPriority="DynamicPriority",n.FixedChunkSize="FixedChunkSize",n))(bHr||{}),EHr=(n=>(n.None="None",n.Block="Block",n.Smart="Smart",n))(EHr||{}),BHr=(n=>(n.None="none",n.Preserve="preserve",n.ReactNative="react-native",n.React="react",n.ReactJSX="react-jsx",n.ReactJSXDev="react-jsxdev",n))(BHr||{}),vHr=(n=>(n.None="none",n.CommonJS="commonjs",n.AMD="amd",n.UMD="umd",n.System="system",n.ES6="es6",n.ES2015="es2015",n.ES2020="es2020",n.ES2022="es2022",n.ESNext="esnext",n.Node16="node16",n.NodeNext="nodenext",n.Preserve="preserve",n))(vHr||{}),SHr=(n=>(n.Classic="classic",n.Node="node",n.NodeJs="node",n.Node10="node10",n.Node16="node16",n.NodeNext="nodenext",n.Bundler="bundler",n))(SHr||{}),wHr=(n=>(n.Crlf="Crlf",n.Lf="Lf",n))(wHr||{}),THr=(n=>(n.ES3="es3",n.ES5="es5",n.ES6="es6",n.ES2015="es2015",n.ES2016="es2016",n.ES2017="es2017",n.ES2018="es2018",n.ES2019="es2019",n.ES2020="es2020",n.ES2021="es2021",n.ES2022="es2022",n.ES2023="es2023",n.ESNext="esnext",n.JSON="json",n.Latest="esnext",n))(THr||{}),qVt=class{constructor(n,c,u){this.host=n,this.info=c,this.isOpen=!1,this.ownFileText=!1,this.pendingReloadFromDisk=!1,this.version=u||0}getVersion(){return this.svc?`SVC-${this.version}-${this.svc.getSnapshotVersion()}`:`Text-${this.version}`}hasScriptVersionCache_TestOnly(){return this.svc!==void 0}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(n){this.svc=void 0,this.text=n,this.textSnapshot=void 0,this.lineMap=void 0,this.fileSize=void 0,this.resetSourceMapInfo(),this.version++}edit(n,c,u){this.switchToScriptVersionCache().edit(n,c-n,u),this.ownFileText=!1,this.text=void 0,this.textSnapshot=void 0,this.lineMap=void 0,this.fileSize=void 0,this.resetSourceMapInfo()}reload(n){return w.assert(n!==void 0),this.pendingReloadFromDisk=!1,!this.text&&this.svc&&(this.text=K6(this.svc.getSnapshot())),this.text!==n?(this.useText(n),this.ownFileText=!1,!0):!1}reloadWithFileText(n){let{text:c,fileSize:u}=n||!this.info.isDynamicOrHasMixedContent()?this.getFileTextAndSize(n):{text:"",fileSize:void 0},d=this.reload(c);return this.fileSize=u,this.ownFileText=!n||n===this.info.fileName,this.ownFileText&&this.info.mTime===EA.getTime()&&(this.info.mTime=(this.host.getModifiedTime(this.info.fileName)||EA).getTime()),d}scheduleReloadIfNeeded(){return!this.pendingReloadFromDisk&&!this.ownFileText?this.pendingReloadFromDisk=!0:!1}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 n;return((n=this.tryUseScriptVersionCache())==null?void 0:n.getSnapshot())||(this.textSnapshot??(this.textSnapshot=BGe.fromString(w.checkDefined(this.text))))}getAbsolutePositionAndLineText(n){let c=this.tryUseScriptVersionCache();if(c)return c.getAbsolutePositionAndLineText(n);let u=this.getLineMap();return n<=u.length?{absolutePosition:u[n-1],lineText:this.text.substring(u[n-1],u[n])}:{absolutePosition:this.text.length,lineText:void 0}}lineToTextSpan(n){let c=this.tryUseScriptVersionCache();if(c)return c.lineToTextSpan(n);let u=this.getLineMap(),d=u[n],I=n+1c===void 0?c=this.host.readFile(u)||"":c;if(!KQ(this.info.fileName)){let I=this.host.getFileSize?this.host.getFileSize(u):d().length;if(I>Wqe)return w.assert(!!this.info.containingProjects.length),this.info.containingProjects[0].projectService.logger.info(`Skipped loading contents of large file ${u} for info ${this.info.fileName}: fileSize: ${I}`),this.info.containingProjects[0].projectService.sendLargeFileReferencedEvent(u,I),{text:"",fileSize:I}}return{text:d()}}switchToScriptVersionCache(){return(!this.svc||this.pendingReloadFromDisk)&&(this.svc=o$e.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=o$e.fromString(w.checkDefined(this.text)),this.textSnapshot=void 0),this.svc):this.svc}getOrLoadText(){return(this.text===void 0||this.pendingReloadFromDisk)&&(w.assert(!this.svc||this.pendingReloadFromDisk,"ScriptVersionCache should not be set when reloading from disk"),this.reloadWithFileText()),this.text}getLineMap(){return w.assert(!this.svc,"ScriptVersionCache should not be set"),this.lineMap||(this.lineMap=pc(w.checkDefined(this.text)))}getLineInfo(){let n=this.tryUseScriptVersionCache();if(n)return{getLineCount:()=>n.getLineCount(),getLineText:u=>n.getAbsolutePositionAndLineText(u+1).lineText};let c=this.getLineMap();return q8e(this.text,c)}};function N0e(n){return n[0]==="^"||(n.includes("walkThroughSnippet:/")||n.includes("untitled:/"))&&xA(n)[0]==="^"||n.includes(":^")&&!n.includes(qu)}var $Vt=class{constructor(n,c,u,d,I,h){this.host=n,this.fileName=c,this.scriptKind=u,this.hasMixedContent=d,this.path=I,this.containingProjects=[],this.isDynamic=N0e(c),this.textStorage=new qVt(n,this,h),(d||this.isDynamic)&&(this.realpath=this.path),this.scriptKind=u||sle(c)}isDynamicOrHasMixedContent(){return this.hasMixedContent||this.isDynamic}isScriptOpen(){return this.textStorage.isOpen}open(n){this.textStorage.isOpen=!0,n!==void 0&&this.textStorage.reload(n)&&this.markContainingProjectsAsDirty()}close(n=!0){this.textStorage.isOpen=!1,n&&this.textStorage.scheduleReloadIfNeeded()&&this.markContainingProjectsAsDirty()}getSnapshot(){return this.textStorage.getSnapshot()}ensureRealPath(){if(this.realpath===void 0&&(this.realpath=this.path,this.host.realpath)){w.assert(!!this.containingProjects.length);let n=this.containingProjects[0],c=this.host.realpath(this.path);c&&(this.realpath=n.toPath(c),this.realpath!==this.path&&n.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(n){let c=!this.isAttached(n);return c&&(this.containingProjects.push(n),n.getCompilerOptions().preserveSymlinks||this.ensureRealPath(),n.onFileAddedOrRemoved(this.isSymlink())),c}isAttached(n){switch(this.containingProjects.length){case 0:return!1;case 1:return this.containingProjects[0]===n;case 2:return this.containingProjects[0]===n||this.containingProjects[1]===n;default:return Ue(this.containingProjects,n)}}detachFromProject(n){switch(this.containingProjects.length){case 0:return;case 1:this.containingProjects[0]===n&&(n.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects.pop());break;case 2:this.containingProjects[0]===n?(n.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects[0]=this.containingProjects.pop()):this.containingProjects[1]===n&&(n.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects.pop());break;default:eA(this.containingProjects,n)&&n.onFileAddedOrRemoved(this.isSymlink());break}}detachAllProjects(){for(let n of this.containingProjects){QZ(n)&&n.getCachedDirectoryStructureHost().addOrDeleteFile(this.fileName,this.path,2);let c=n.getRootFilesMap().get(this.path);n.removeFile(this,!1,!1),n.onFileAddedOrRemoved(this.isSymlink()),c&&!qte(n)&&n.addMissingFileRoot(c.fileName)}Ur(this.containingProjects)}getDefaultProject(){switch(this.containingProjects.length){case 0:return VG.ThrowNoProject();case 1:return cZe(this.containingProjects[0])||k0e(this.containingProjects[0])?VG.ThrowNoProject():this.containingProjects[0];default:let n,c,u,d;for(let I=0;I!n.isOrphan())}isContainedByBackgroundProject(){return lr(this.containingProjects,k0e)}lineToTextSpan(n){return this.textStorage.lineToTextSpan(n)}lineOffsetToPosition(n,c,u){return this.textStorage.lineOffsetToPosition(n,c,u)}positionToLineOffset(n){Xls(n);let c=this.textStorage.positionToLineOffset(n);return Jls(c),c}isJavaScript(){return this.scriptKind===1||this.scriptKind===2}closeSourceMapFileWatcher(){this.sourceMapFilePath&&!Xa(this.sourceMapFilePath)&&(ZB(this.sourceMapFilePath),this.sourceMapFilePath=void 0)}};function Xls(n){w.assert(typeof n=="number",`Expected position ${n} to be a number.`),w.assert(n>=0,"Expected position to be non-negative.")}function Jls(n){w.assert(typeof n.line=="number",`Expected line ${n.line} to be a number.`),w.assert(typeof n.offset=="number",`Expected offset ${n.offset} to be a number.`),w.assert(n.line>0,`Expected line to be non-${n.line===0?"zero":"negative"}`),w.assert(n.offset>0,`Expected offset to be non-${n.offset===0?"zero":"negative"}`)}var Zqe={isKnownTypesPackageName:TC,installPackage:za,enqueueInstallTypingsRequest:oc,attach:oc,onProjectClosed:oc,globalTypingsCacheLocation:void 0};function NHr(n,c){if(n===c||(n||ym).length===0&&(c||ym).length===0)return!0;let u=new Map,d=0;for(let I of n)u.get(I)!==!0&&(u.set(I,!0),d++);for(let I of c){let h=u.get(I);if(h===void 0)return!1;h===!0&&(u.set(I,!1),d--)}return d===0}function Uls(n,c){return n.enable!==c.enable||!NHr(n.include,c.include)||!NHr(n.exclude,c.exclude)}function Kls(n,c){return bG(n)!==bG(c)}function jls(n,c){return n===c?!1:!Cn(n,c)}var eWt=class{constructor(n){this.installer=n,this.perProjectCache=new Map}isKnownTypesPackageName(n){return this.installer.isKnownTypesPackageName(n)}installPackage(n){return this.installer.installPackage(n)}enqueueInstallTypingsForProject(n,c,u){let d=n.getTypeAcquisition();if(!d||!d.enable)return;let I=this.perProjectCache.get(n.getProjectName());(u||!I||Uls(d,I.typeAcquisition)||Kls(n.getCompilationSettings(),I.compilerOptions)||jls(c,I.unresolvedImports))&&(this.perProjectCache.set(n.getProjectName(),{compilerOptions:n.getCompilationSettings(),typeAcquisition:d,typings:I?I.typings:ym,unresolvedImports:c,poisoned:!0}),this.installer.enqueueInstallTypingsRequest(n,d,c))}updateTypingsForProject(n,c,u,d,I){let h=Cg(I);return this.perProjectCache.set(n,{compilerOptions:c,typeAcquisition:u,typings:h,unresolvedImports:d,poisoned:!1}),!u||!u.enable?ym:h}onProjectClosed(n){this.perProjectCache.delete(n.getProjectName())&&this.installer.onProjectClosed(n)}},R0e=(n=>(n[n.Inferred=0]="Inferred",n[n.Configured=1]="Configured",n[n.External=2]="External",n[n.AutoImportProvider=3]="AutoImportProvider",n[n.Auxiliary=4]="Auxiliary",n))(R0e||{});function D0e(n,c=!1){let u={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(let d of n){let I=c?d.textStorage.getTelemetryFileSize():0;switch(d.scriptKind){case 1:u.js+=1,u.jsSize+=I;break;case 2:u.jsx+=1,u.jsxSize+=I;break;case 3:kh(d.fileName)?(u.dts+=1,u.dtsSize+=I):(u.ts+=1,u.tsSize+=I);break;case 4:u.tsx+=1,u.tsxSize+=I;break;case 7:u.deferred+=1,u.deferredSize+=I;break}}return u}function zls(n){let c=D0e(n.getScriptInfos());return c.js>0&&c.ts===0&&c.tsx===0}function tWt(n){let c=D0e(n.getRootScriptInfos());return c.ts===0&&c.tsx===0}function rWt(n){let c=D0e(n.getScriptInfos());return c.ts===0&&c.tsx===0}function nWt(n){return!n.some(c=>gd(c,".ts")&&!kh(c)||gd(c,".tsx"))}function iWt(n){return n.generatedFilePath!==void 0}var l7=class iPn{constructor(c,u,d,I,h,b,R,N,V,P,M){switch(this.projectKind=u,this.projectService=d,this.documentRegistry=I,this.compilerOptions=R,this.compileOnSaveEnabled=N,this.watchOptions=V,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=TC,this.dirty=!1,this.typingFiles=ym,this.moduleSpecifierCache=BWt(this),this.createHash=Hi(this.projectService.host,this.projectService.host.createHash),this.globalCacheResolutionModuleName=kN.nonRelativeModuleNameForTypingCache,this.updateFromProjectInProgress=!1,this.projectName=c,this.directoryStructureHost=P,this.currentDirectory=this.projectService.getNormalizedAbsolutePath(M),this.getCanonicalFileName=this.projectService.toCanonicalFileName,this.jsDocParsingMode=this.projectService.jsDocParsingMode,this.cancellationToken=new PZt(this.projectService.cancellationToken,this.projectService.throttleWaitMilliseconds),this.compilerOptions?(h||bG(this.compilerOptions)||this.projectService.hasDeferredExtension())&&(this.compilerOptions.allowNonTsExtensions=!0):(this.compilerOptions=xFe(),this.compilerOptions.allowNonTsExtensions=!0,this.compilerOptions.allowJs=!0),d.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:w.assertNever(d.serverMode)}this.setInternalCompilerOptionsForEmittingJsFiles();let te=this.projectService.host;this.projectService.logger.loggingEnabled()?this.trace=re=>this.writeLog(re):te.trace&&(this.trace=re=>te.trace(re)),this.realpath=Hi(te,te.realpath),this.resolutionCache=K6e(this,this.currentDirectory,!0),this.languageService=OZt(this,this.documentRegistry,this.projectService.serverMode),b&&this.disableLanguageService(b),this.markAsDirty(),k0e(this)||(this.projectService.pendingEnsureProjectForOpenFiles=!0),this.projectService.onProjectCreation(this)}getResolvedProjectReferenceToRedirect(c){}isNonTsProject(){return M2(this),rWt(this)}isJsOnlyProject(){return M2(this),zls(this)}static resolveModule(c,u,d,I){return iPn.importServicePluginSync({name:c},[u],d,I).resolvedModule}static importServicePluginSync(c,u,d,I){w.assertIsDefined(d.require);let h,b;for(let R of u){let N=Af(d.resolvePath(xo(R,"node_modules")));I(`Loading ${c.name} from ${R} (resolved to ${N})`);let V=d.require(N,c.name);if(!V.error){b=V.module;break}let P=V.error.stack||V.error.message||JSON.stringify(V.error);(h??(h=[])).push(`Failed to load module '${c.name}' from ${N}: ${P}`)}return{pluginConfigEntry:c,resolvedModule:b,errorLogs:h}}static async importServicePluginAsync(c,u,d,I){w.assertIsDefined(d.importPlugin);let h,b;for(let R of u){let N=xo(R,"node_modules");I(`Dynamically importing ${c.name} from ${R} (resolved to ${N})`);let V;try{V=await d.importPlugin(N,c.name)}catch(M){V={module:void 0,error:M}}if(!V.error){b=V.module;break}let P=V.error.stack||V.error.message||JSON.stringify(V.error);(h??(h=[])).push(`Failed to dynamically import module '${c.name}' from ${N}: ${P}`)}return{pluginConfigEntry:c,resolvedModule:b,errorLogs:h}}isKnownTypesPackageName(c){return this.typingsCache.isKnownTypesPackageName(c)}installPackage(c){return this.typingsCache.installPackage({...c,projectName:this.projectName,projectRootPath:this.toPath(this.currentDirectory)})}getGlobalTypingsCacheLocation(){return this.getGlobalCache()}get typingsCache(){return this.projectService.typingsCache}getSymlinkCache(){return this.symlinks||(this.symlinks=rhe(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 v;let c;return this.rootFilesMap.forEach(u=>{(this.languageServiceEnabled||u.info&&u.info.isScriptOpen())&&(c||(c=[])).push(u.fileName)}),ai(c,this.typingFiles)||v}getOrCreateScriptInfoAndAttachToProject(c){let u=this.projectService.getOrCreateScriptInfoNotOpenedByClient(c,this.currentDirectory,this.directoryStructureHost,!1);if(u){let d=this.rootFilesMap.get(u.path);d&&d.info!==u&&(d.info=u),u.attachToProject(this)}return u}getScriptKind(c){let u=this.projectService.getScriptInfoForPath(this.toPath(c));return u&&u.scriptKind}getScriptVersion(c){let u=this.projectService.getOrCreateScriptInfoNotOpenedByClient(c,this.currentDirectory,this.directoryStructureHost,!1);return u&&u.getLatestVersion()}getScriptSnapshot(c){let u=this.getOrCreateScriptInfoAndAttachToProject(c);if(u)return u.getSnapshot()}getCancellationToken(){return this.cancellationToken}getCurrentDirectory(){return this.currentDirectory}getDefaultLibFileName(){let c=aa(Mc(this.projectService.getExecutingFilePath()));return xo(c,Ig(this.compilerOptions))}useCaseSensitiveFileNames(){return this.projectService.host.useCaseSensitiveFileNames}readDirectory(c,u,d,I,h){return this.directoryStructureHost.readDirectory(c,u,d,I,h)}readFile(c){return this.projectService.host.readFile(c)}writeFile(c,u){return this.projectService.host.writeFile(c,u)}fileExists(c){let u=this.toPath(c);return!this.isWatchedMissingFile(u)&&this.directoryStructureHost.fileExists(c)}resolveModuleNameLiterals(c,u,d,I,h,b){return this.resolutionCache.resolveModuleNameLiterals(c,u,d,I,h,b)}getModuleResolutionCache(){return this.resolutionCache.getModuleResolutionCache()}resolveTypeReferenceDirectiveReferences(c,u,d,I,h,b){return this.resolutionCache.resolveTypeReferenceDirectiveReferences(c,u,d,I,h,b)}resolveLibrary(c,u,d,I){return this.resolutionCache.resolveLibrary(c,u,d,I)}directoryExists(c){return this.directoryStructureHost.directoryExists(c)}getDirectories(c){return this.directoryStructureHost.getDirectories(c)}getCachedDirectoryStructureHost(){}toPath(c){return gA(c,this.currentDirectory,this.projectService.toCanonicalFileName)}watchDirectoryOfFailedLookupLocation(c,u,d){return this.projectService.watchFactory.watchDirectory(c,u,d,this.projectService.getWatchOptions(this),hm.FailedLookupLocations,this)}watchAffectingFileLocation(c,u){return this.projectService.watchFactory.watchFile(c,u,2e3,this.projectService.getWatchOptions(this),hm.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(c,u,d){return this.projectService.watchFactory.watchDirectory(c,u,d,this.projectService.getWatchOptions(this),hm.TypeRoots,this)}hasChangedAutomaticTypeDirectiveNames(){return this.resolutionCache.hasChangedAutomaticTypeDirectiveNames()}onChangedAutomaticTypeDirectiveNames(){this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)}getGlobalCache(){return this.getTypeAcquisition().enable?this.projectService.typingsInstaller.globalTypingsCacheLocation:void 0}fileIsOpen(c){return this.projectService.openFiles.has(c)}writeLog(c){this.projectService.logger.info(c)}log(c){this.writeLog(c)}error(c){this.projectService.logger.msg(c,"Err")}setInternalCompilerOptionsForEmittingJsFiles(){(this.projectKind===0||this.projectKind===2)&&(this.compilerOptions.noEmitForJsFiles=!0)}getGlobalProjectErrors(){return Gt(this.projectErrors,c=>!c.file)||ym}getAllProjectErrors(){return this.projectErrors||ym}setProjectErrors(c){this.projectErrors=c}getLanguageService(c=!0){return c&&M2(this),this.languageService}getSourceMapper(){return this.getLanguageService().getSourceMapper()}clearSourceMapperCache(){this.languageService.clearSourceMapperCache()}getDocumentPositionMapper(c,u){return this.projectService.getDocumentPositionMapper(this,c,u)}getSourceFileLike(c){return this.projectService.getSourceFileLike(c,this)}shouldEmitFile(c){return c&&!c.isDynamicOrHasMixedContent()&&!this.program.isSourceOfProjectReferenceRedirect(c.path)}getCompileOnSaveAffectedFileList(c){return this.languageServiceEnabled?(M2(this),this.builderState=uT.create(this.program,this.builderState,!0),tr(uT.getFilesAffectedBy(this.builderState,this.program,c.path,this.cancellationToken,this.projectService.host),u=>this.shouldEmitFile(this.projectService.getScriptInfoForPath(u.path))?u.fileName:void 0)):[]}emitFile(c,u){if(!this.languageServiceEnabled||!this.shouldEmitFile(c))return{emitSkipped:!0,diagnostics:ym};let{emitSkipped:d,diagnostics:I,outputFiles:h}=this.getLanguageService().getEmitOutput(c.fileName);if(!d){for(let b of h){let R=Oc(b.name,this.currentDirectory);u(R,b.text,b.writeByteOrderMark)}if(this.builderState&&LE(this.compilerOptions)){let b=h.filter(R=>kh(R.name));if(b.length===1){let R=this.program.getSourceFile(c.fileName),N=this.projectService.host.createHash?this.projectService.host.createHash(b[0].text):Bh(b[0].text);uT.updateSignatureOfFile(this.builderState,N,R.resolvedPath)}}}return{emitSkipped:d,diagnostics:I}}enableLanguageService(){this.languageServiceEnabled||this.projectService.serverMode===2||(this.languageServiceEnabled=!0,this.lastFileExceededProgramSize=void 0,this.projectService.onUpdateLanguageServiceStateForProject(this,!0))}cleanupProgram(){if(this.program){for(let c of this.program.getSourceFiles())this.detachScriptInfoIfNotRoot(c.fileName);this.program.forEachResolvedProjectReference(c=>this.detachScriptInfoFromProject(c.sourceFile.fileName)),this.program=void 0}}disableLanguageService(c){this.languageServiceEnabled&&(w.assert(this.projectService.serverMode!==2),this.languageService.cleanupSemanticCache(),this.languageServiceEnabled=!1,this.cleanupProgram(),this.lastFileExceededProgramSize=c,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(c){return!c||!c.include?c:{...c,include:this.removeExistingTypings(c.include)}}getExternalFiles(c){return Cg(Fr(this.plugins,u=>{if(typeof u.module.getExternalFiles=="function")try{return u.module.getExternalFiles(this,c||0)}catch(d){this.projectService.logger.info(`A plugin threw an exception in getExternalFiles: ${d}`),d.stack&&this.projectService.logger.info(d.stack)}}))}getSourceFile(c){if(this.program)return this.program.getSourceFileByPath(c)}getSourceFileOrConfigFile(c){let u=this.program.getCompilerOptions();return c===u.configFilePath?u.configFile:this.getSourceFile(c)}close(){var c;this.projectService.typingsCache.onProjectClosed(this),this.closeWatchingTypingLocations(),this.cleanupProgram(),X(this.externalFiles,u=>this.detachScriptInfoIfNotRoot(u)),this.rootFilesMap.forEach(u=>{var d;return(d=u.info)==null?void 0:d.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,(c=this.packageJsonWatches)==null||c.forEach(u=>{u.projects.delete(this),u.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&&(Y0(this.missingFilesMap,RB),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(c){let u=this.projectService.getScriptInfo(c);u&&!this.isRoot(u)&&u.detachFromProject(this)}isClosed(){return this.rootFilesMap===void 0}hasRoots(){var c;return!!((c=this.rootFilesMap)!=null&&c.size)}isOrphan(){return!1}getRootFiles(){return this.rootFilesMap&&on(gn(this.rootFilesMap.values(),c=>{var u;return(u=c.info)==null?void 0:u.fileName}))}getRootFilesMap(){return this.rootFilesMap}getRootScriptInfos(){return on(gn(this.rootFilesMap.values(),c=>c.info))}getScriptInfos(){return this.languageServiceEnabled?Ot(this.program.getSourceFiles(),c=>{let u=this.projectService.getScriptInfoForPath(c.resolvedPath);return w.assert(!!u,"getScriptInfo",()=>`scriptInfo for a file '${c.fileName}' Path: '${c.path}' / '${c.resolvedPath}' is missing.`),u}):this.getRootScriptInfos()}getExcludedFiles(){return ym}getFileNames(c,u){if(!this.program)return[];if(!this.languageServiceEnabled){let I=this.getRootFiles();if(this.compilerOptions){let h=MZt(this.compilerOptions);h&&(I||(I=[])).push(h)}return I}let d=[];for(let I of this.program.getSourceFiles())c&&this.program.isSourceFileFromExternalLibrary(I)||d.push(I.fileName);if(!u){let I=this.program.getCompilerOptions().configFile;if(I&&(d.push(I.fileName),I.extendedSourceFiles))for(let h of I.extendedSourceFiles)d.push(h)}return d}getFileNamesWithRedirectInfo(c){return this.getFileNames().map(u=>({fileName:u,isSourceOfProjectReferenceRedirect:c&&this.isSourceOfProjectReferenceRedirect(u)}))}hasConfigFile(c){if(this.program&&this.languageServiceEnabled){let u=this.program.getCompilerOptions().configFile;if(u){if(c===u.fileName)return!0;if(u.extendedSourceFiles){for(let d of u.extendedSourceFiles)if(c===d)return!0}}}return!1}containsScriptInfo(c){if(this.isRoot(c))return!0;if(!this.program)return!1;let u=this.program.getSourceFileByPath(c.path);return!!u&&u.resolvedPath===c.path}containsFile(c,u){let d=this.projectService.getScriptInfoForNormalizedPath(c);return d&&(d.isScriptOpen()||!u)?this.containsScriptInfo(d):!1}isRoot(c){var u,d;return((d=(u=this.rootFilesMap)==null?void 0:u.get(c.path))==null?void 0:d.info)===c}addRoot(c,u){w.assert(!this.isRoot(c)),this.rootFilesMap.set(c.path,{fileName:u||c.fileName,info:c}),c.attachToProject(this),this.markAsDirty()}addMissingFileRoot(c){let u=this.projectService.toPath(c);this.rootFilesMap.set(u,{fileName:c}),this.markAsDirty()}removeFile(c,u,d){this.isRoot(c)&&this.removeRoot(c),u?this.resolutionCache.removeResolutionsOfFile(c.path):this.resolutionCache.invalidateResolutionOfFile(c.path),this.cachedUnresolvedImportsPerFile.delete(c.path),d&&c.detachFromProject(this),this.markAsDirty()}registerFileUpdate(c){(this.updatedFileNames||(this.updatedFileNames=new Set)).add(c)}markFileAsDirty(c){this.markAsDirty(),this.exportMapCache&&!this.exportMapCache.isEmpty()&&(this.changedFilesForExportMapCache||(this.changedFilesForExportMapCache=new Set)).add(c)}markAsDirty(){this.dirty||(this.projectStateVersion++,this.dirty=!0)}markAutoImportProviderAsDirty(){var c;this.autoImportProviderHost||(this.autoImportProviderHost=void 0),(c=this.autoImportProviderHost)==null||c.markAsDirty()}onAutoImportProviderSettingsChanged(){var c;this.autoImportProviderHost===!1?this.autoImportProviderHost=void 0:(c=this.autoImportProviderHost)==null||c.markAsDirty()}onPackageJsonChange(){this.moduleSpecifierCache.clear(),this.autoImportProviderHost&&this.autoImportProviderHost.markAsDirty()}onFileAddedOrRemoved(c){this.hasAddedorRemovedFiles=!0,c&&(this.hasAddedOrRemovedSymlinks=!0)}onDiscoveredSymlink(){this.hasAddedOrRemovedSymlinks=!0}updateFromProject(){M2(this)}updateGraph(){var c,u,d,I;(c=Mi)==null||c.push(Mi.Phase.Session,"updateGraph",{name:this.projectName,kind:R0e[this.projectKind]}),(u=Kl)==null||u.logStartUpdateGraph(),this.resolutionCache.startRecordingFilesWithChangedResolutions();let h=this.updateGraphWorker(),b=this.hasAddedorRemovedFiles;this.hasAddedorRemovedFiles=!1,this.hasAddedOrRemovedSymlinks=!1;let R=this.resolutionCache.finishRecordingFilesWithChangedResolutions()||ym;for(let V of R)this.cachedUnresolvedImportsPerFile.delete(V);this.languageServiceEnabled&&this.projectService.serverMode===0&&!this.isOrphan()?((h||R.length)&&(this.lastCachedUnresolvedImportsList=qls(this.program,this.cachedUnresolvedImportsPerFile)),this.projectService.typingsCache.enqueueInstallTypingsForProject(this,this.lastCachedUnresolvedImportsList,b)):this.lastCachedUnresolvedImportsList=void 0;let N=this.projectProgramVersion===0&&h;return h&&this.projectProgramVersion++,b&&this.markAutoImportProviderAsDirty(),N&&this.getPackageJsonAutoImportProvider(),(d=Kl)==null||d.logStopUpdateGraph(),(I=Mi)==null||I.pop(),!h}updateTypingFiles(c){PI(c,this.typingFiles,zl(!this.useCaseSensitiveFileNames()),oc,u=>this.detachScriptInfoFromProject(u))&&(this.typingFiles=c,this.resolutionCache.setFilesWithInvalidatedNonRelativeUnresolvedImports(this.cachedUnresolvedImportsPerFile),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this))}closeWatchingTypingLocations(){this.typingWatchers&&Y0(this.typingWatchers,RB),this.typingWatchers=void 0}onTypingInstallerWatchInvoke(){this.typingWatchers.isInvoked=!0,this.projectService.updateTypingsForProject({projectName:this.getProjectName(),kind:bGe})}watchTypingLocations(c){if(!c){this.typingWatchers.isInvoked=!1;return}if(!c.length){this.closeWatchingTypingLocations();return}let u=new Map(this.typingWatchers);this.typingWatchers||(this.typingWatchers=new Map),this.typingWatchers.isInvoked=!1;let d=(I,h)=>{let b=this.toPath(I);u.delete(b),this.typingWatchers.has(b)||this.typingWatchers.set(b,h==="FileWatcher"?this.projectService.watchFactory.watchFile(I,()=>this.typingWatchers.isInvoked?this.writeLog("TypingWatchers already invoked"):this.onTypingInstallerWatchInvoke(),2e3,this.projectService.getWatchOptions(this),hm.TypingInstallerLocationFile,this):this.projectService.watchFactory.watchDirectory(I,R=>{if(this.typingWatchers.isInvoked)return this.writeLog("TypingWatchers already invoked");if(!gd(R,".json"))return this.writeLog("Ignoring files that are not *.json");if(Ah(R,xo(this.projectService.typingsInstaller.globalTypingsCacheLocation,"package.json"),!this.useCaseSensitiveFileNames()))return this.writeLog("Ignoring package.json change at global typings location");this.onTypingInstallerWatchInvoke()},1,this.projectService.getWatchOptions(this),hm.TypingInstallerLocationDirectory,this))};for(let I of c){let h=xA(I);if(h==="package.json"||h==="bower.json"){d(I,"FileWatcher");continue}if(Bg(this.currentDirectory,I,this.currentDirectory,!this.useCaseSensitiveFileNames())){let b=I.indexOf(qu,this.currentDirectory.length+1);d(b!==-1?I.substr(0,b):I,"DirectoryWatcher");continue}if(Bg(this.projectService.typingsInstaller.globalTypingsCacheLocation,I,this.currentDirectory,!this.useCaseSensitiveFileNames())){d(this.projectService.typingsInstaller.globalTypingsCacheLocation,"DirectoryWatcher");continue}d(I,"DirectoryWatcher")}u.forEach((I,h)=>{I.close(),this.typingWatchers.delete(h)})}getCurrentProgram(){return this.program}removeExistingTypings(c){let u=Eke(this.getCompilerOptions(),this.directoryStructureHost);return c.filter(d=>!u.includes(d))}updateGraphWorker(){var c,u;let d=this.languageService.getCurrentProgram();w.assert(d===this.program),w.assert(!this.isClosed(),"Called update graph worker of closed project"),this.writeLog(`Starting updateGraphWorker: Project: ${this.getProjectName()}`);let I=ql(),{hasInvalidatedResolutions:h,hasInvalidatedLibResolutions:b}=this.resolutionCache.createHasInvalidatedResolutions(TC,TC);this.hasInvalidatedResolutions=h,this.hasInvalidatedLibResolutions=b,this.resolutionCache.startCachingPerDirectoryResolution(),this.dirty=!1,this.updateFromProjectInProgress=!0,this.program=this.languageService.getProgram(),this.updateFromProjectInProgress=!1,(c=Mi)==null||c.push(Mi.Phase.Session,"finishCachingPerDirectoryResolution"),this.resolutionCache.finishCachingPerDirectoryResolution(this.program,d),(u=Mi)==null||u.pop(),w.assert(d===void 0||this.program!==void 0);let R=!1;if(this.program&&(!d||this.program!==d&&this.program.structureIsReused!==2)){if(R=!0,d){for(let P of d.getSourceFiles()){let M=this.program.getSourceFileByPath(P.resolvedPath);(!M||P.resolvedPath===P.path&&M.resolvedPath!==P.path)&&this.detachScriptInfoFromProject(P.fileName,!!this.program.getSourceFileByPath(P.path),!0)}d.forEachResolvedProjectReference(P=>{this.program.getResolvedProjectReferenceByPath(P.sourceFile.path)||this.detachScriptInfoFromProject(P.sourceFile.fileName,void 0,!0)})}if(this.rootFilesMap.forEach((P,M)=>{var te;let re=this.program.getSourceFileByPath(M),ue=P.info;!re||((te=P.info)==null?void 0:te.path)===re.resolvedPath||(P.info=this.projectService.getScriptInfo(re.fileName),w.assert(P.info.isAttached(this)),ue?.detachFromProject(this))}),y6e(this.program,this.missingFilesMap||(this.missingFilesMap=new Map),(P,M)=>this.addMissingFileWatcher(P,M)),this.generatedFilesMap){let P=this.compilerOptions.outFile;iWt(this.generatedFilesMap)?(!P||!this.isValidGeneratedFileWatcher(o0(P)+".d.ts",this.generatedFilesMap))&&this.clearGeneratedFileWatch():P?this.clearGeneratedFileWatch():this.generatedFilesMap.forEach((M,te)=>{let re=this.program.getSourceFileByPath(te);(!re||re.resolvedPath!==te||!this.isValidGeneratedFileWatcher(vce(re.fileName,this.compilerOptions,this.program),M))&&(ZB(M),this.generatedFilesMap.delete(te))})}this.languageServiceEnabled&&this.projectService.serverMode===0&&this.resolutionCache.updateTypeRootsWatch()}this.projectService.verifyProgram(this),this.exportMapCache&&!this.exportMapCache.isEmpty()&&(this.exportMapCache.releaseSymbols(),this.hasAddedorRemovedFiles||d&&!this.program.structureIsReused?this.exportMapCache.clear():this.changedFilesForExportMapCache&&d&&this.program&&$w(this.changedFilesForExportMapCache,P=>{let M=d.getSourceFileByPath(P),te=this.program.getSourceFileByPath(P);return!M||!te?(this.exportMapCache.clear(),!0):this.exportMapCache.onFileChanged(M,te,!!this.getTypeAcquisition().enable)})),this.changedFilesForExportMapCache&&this.changedFilesForExportMapCache.clear(),(this.hasAddedOrRemovedSymlinks||this.program&&!this.program.structureIsReused&&this.getCompilerOptions().preserveSymlinks)&&(this.symlinks=void 0,this.moduleSpecifierCache.clear());let N=this.externalFiles||ym;this.externalFiles=this.getExternalFiles(),PI(this.externalFiles,N,zl(!this.useCaseSensitiveFileNames()),P=>{let M=this.projectService.getOrCreateScriptInfoNotOpenedByClient(P,this.currentDirectory,this.directoryStructureHost,!1);M?.attachToProject(this)},P=>this.detachScriptInfoFromProject(P));let V=ql()-I;return this.sendPerformanceEvent("UpdateGraph",V),this.writeLog(`Finishing updateGraphWorker: Project: ${this.getProjectName()} projectStateVersion: ${this.projectStateVersion} projectProgramVersion: ${this.projectProgramVersion} structureChanged: ${R}${this.program?` structureIsReused:: ${gf[this.program.structureIsReused]}`:""} Elapsed: ${V}ms`),this.projectService.logger.isTestLogger?this.program!==d?this.print(!0,this.hasAddedorRemovedFiles,!0):this.writeLog("Same program as before"):this.hasAddedorRemovedFiles?this.print(!0,!0,!1):this.program!==d&&this.writeLog("Different program with same set of files"),this.projectService.verifyDocumentRegistry(),R}sendPerformanceEvent(c,u){this.projectService.sendPerformanceEvent(c,u)}detachScriptInfoFromProject(c,u,d){let I=this.projectService.getScriptInfo(c);I&&(I.detachFromProject(this),u||this.resolutionCache.removeResolutionsOfFile(I.path,d))}addMissingFileWatcher(c,u){var d;if(QZ(this)){let h=this.projectService.configFileExistenceInfoCache.get(c);if((d=h?.config)!=null&&d.projects.has(this.canonicalConfigFilePath))return gue}let I=this.projectService.watchFactory.watchFile(Oc(u,this.currentDirectory),(h,b)=>{QZ(this)&&this.getCachedDirectoryStructureHost().addOrDeleteFile(h,c,b),b===0&&this.missingFilesMap.has(c)&&(this.missingFilesMap.delete(c),I.close(),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this))},500,this.projectService.getWatchOptions(this),hm.MissingFile,this);return I}isWatchedMissingFile(c){return!!this.missingFilesMap&&this.missingFilesMap.has(c)}addGeneratedFileWatch(c,u){if(this.compilerOptions.outFile)this.generatedFilesMap||(this.generatedFilesMap=this.createGeneratedFileWatcher(c));else{let d=this.toPath(u);if(this.generatedFilesMap){if(iWt(this.generatedFilesMap)){w.fail(`${this.projectName} Expected to not have --out watcher for generated file with options: ${JSON.stringify(this.compilerOptions)}`);return}if(this.generatedFilesMap.has(d))return}else this.generatedFilesMap=new Map;this.generatedFilesMap.set(d,this.createGeneratedFileWatcher(c))}}createGeneratedFileWatcher(c){return{generatedFilePath:this.toPath(c),watcher:this.projectService.watchFactory.watchFile(c,()=>{this.clearSourceMapperCache(),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)},2e3,this.projectService.getWatchOptions(this),hm.MissingGeneratedFile,this)}}isValidGeneratedFileWatcher(c,u){return this.toPath(c)===u.generatedFilePath}clearGeneratedFileWatch(){this.generatedFilesMap&&(iWt(this.generatedFilesMap)?ZB(this.generatedFilesMap):Y0(this.generatedFilesMap,ZB),this.generatedFilesMap=void 0)}getScriptInfoForNormalizedPath(c){let u=this.projectService.getScriptInfoForPath(this.toPath(c));return u&&!u.isAttached(this)?VG.ThrowProjectDoesNotContainDocument(c,this):u}getScriptInfo(c){return this.projectService.getScriptInfo(c)}filesToString(c){return this.filesToStringWorker(c,!0,!1)}filesToStringWorker(c,u,d){if(this.isInitialLoadPending())return` Files (0) InitialLoadPending +`:d.prefix}}getInsertNodeAfterOptionsWorker(c){switch(c.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 w.assert(Cc(c)||h8(c)),{suffix:this.newLineCharacter}}}insertName(c,u,d){if(w.assert(!u.name),u.kind===219){let I=Qd(u,39,c),h=Qd(u,21,c);h?(this.insertNodesAt(c,h.getStart(c),[_e.createToken(100),_e.createIdentifier(d)],{joiner:" "}),QG(this,c,I)):(this.insertText(c,qs(u.parameters).getStart(c),`function ${d}(`),this.replaceRange(c,I,_e.createToken(22))),u.body.kind!==241&&(this.insertNodesAt(c,u.body.getStart(c),[_e.createToken(19),_e.createToken(107)],{joiner:" ",suffix:" "}),this.insertNodesAt(c,u.body.end,[_e.createToken(27),_e.createToken(20)],{joiner:" "}))}else{let I=Qd(u,u.kind===218?100:86,c).end;this.insertNodeAt(c,I,_e.createIdentifier(d),{prefix:" "})}}insertExportModifier(c,u){this.insertText(c,u.getStart(c),"export ")}insertImportSpecifierAtIndex(c,u,d,I){let h=d.elements[I-1];h?this.insertNodeInListAfter(c,h,u):this.insertNodeBefore(c,d.elements[0],u,!L1(d.elements[0].getStart(),d.parent.parent.getStart(),c))}insertNodeInListAfter(c,u,d,I=zC.SmartIndenter.getContainingList(u,c)){if(!I){w.fail("node is not a list element");return}let h=P3(I,u);if(h<0)return;let b=u.getEnd();if(h!==I.length-1){let R=Hc(c,u.end);if(R&&vqe(u,R)){let N=I[h+1],V=ZMr(c.text,N.getFullStart()),P=`${vr(R.kind)}${c.text.substring(R.end,V)}`;this.insertNodesAt(c,V,[d],{suffix:P})}}else{let R=u.getStart(c),N=Wv(R,c),V,P=!1;if(I.length===1)V=28;else{let Q=ym(u.pos,c);V=vqe(u,Q)?Q.kind:28,P=Wv(I[h-1].getStart(c),c)!==N}if((wcs(c.text,u.end)||!L1(I.pos,I.end,c))&&(P=!0),P){this.replaceRange(c,Z1(b),_e.createToken(V));let Q=zC.SmartIndenter.findFirstNonWhitespaceColumn(N,R,c,this.formatContext.options),te=Uu(c.text,b,!0,!1);for(;te!==b&&XC(c.text.charCodeAt(te-1));)te--;this.replaceRange(c,Z1(te),d,{indentation:Q,prefix:this.newLineCharacter})}else this.replaceRange(c,Z1(b),d,{prefix:`${vr(V)} `})}}parenthesizeExpression(c,u){this.replaceRange(c,Ihe(u),_e.createParenthesizedExpression(u))}finishClassesWithNodesInsertedAtStart(){this.classesWithNodesInsertedAtStart.forEach(({node:c,sourceFile:u})=>{let[d,I]=kcs(c,u);if(d!==void 0&&I!==void 0){let h=Sqe(c).length===0,b=L1(d,I,u);h&&b&&d!==I-1&&this.deleteRange(u,Z1(d,I-1)),b&&this.insertText(u,I-1,this.newLineCharacter)}})}finishDeleteDeclarations(){let c=new Set;for(let{sourceFile:u,node:d}of this.deletedNodes)this.deletedNodes.some(I=>I.sourceFile===u&&yGt(I.node,d))||(Na(d)?this.deleteRange(u,Che(u,d)):SVt.deleteDeclaration(this,c,u,d));c.forEach(u=>{let d=u.getSourceFile(),I=zC.SmartIndenter.getContainingList(u,d);if(u!==Ta(I))return;let h=x(I,b=>!c.has(b),I.length-2);h!==-1&&this.deleteRange(d,{pos:I[h].end,end:BVt(d,I[h+1])})})}getChanges(c){this.finishDeleteDeclarations(),this.finishClassesWithNodesInsertedAtStart();let u=wqe.getTextChangesFromChanges(this.changes,this.newLineCharacter,this.formatContext,c);return this.newFileChanges&&this.newFileChanges.forEach((d,I)=>{u.push(wqe.newFileChanges(I,d,this.newLineCharacter,this.formatContext))}),u}createNewFile(c,u,d){this.insertStatementsInNewFile(u,d,c)}};function Rcs(n){if(n.kind!==219)return n;let c=n.parent.kind===172?n.parent:n.parent.parent;return c.jsDoc=n.jsDoc,c}function Dcs(n,c){if(n.kind===c.kind)switch(n.kind){case 341:{let u=n,d=c;return sr(u.name)&&sr(d.name)&&u.name.escapedText===d.name.escapedText?_e.createJSDocParameterTag(void 0,d.name,!1,d.typeExpression,d.isNameFirst,u.comment):void 0}case 342:return _e.createJSDocReturnTag(void 0,c.typeExpression,n.comment);case 344:return _e.createJSDocTypeTag(void 0,c.typeExpression,n.comment)}}function BVt(n,c){return Uu(n.text,N4(n,c,{leadingTriviaOption:1}),!1,!0)}function xcs(n,c,u,d){let I=BVt(n,d);if(u===void 0||L1($te(n,c,{}),I,n))return I;let h=ym(d.getStart(n),n);if(vqe(c,h)){let b=ym(c.getStart(n),n);if(vqe(u,b)){let R=Uu(n.text,h.getEnd(),!0,!0);if(L1(b.getStart(n),h.getStart(n),n))return XC(n.text.charCodeAt(R-1))?R-1:R;if(XC(n.text.charCodeAt(R)))return R}}return I}function kcs(n,c){let u=Qd(n,19,c),d=Qd(n,20,c);return[u?.end,d?.end]}function Sqe(n){return ru(n)?n.properties:n.members}var wqe;(n=>{function c(R,N,V,P){return tr(Xl(R,Q=>Q.sourceFile.path),Q=>{let te=Q[0].sourceFile,re=ml(Q,(Ae,de)=>Ae.range.pos-de.range.pos||Ae.range.end-de.range.end);for(let Ae=0;Ae`${JSON.stringify(re[Ae].range)} and ${JSON.stringify(re[Ae+1].range)}`);let ue=tr(re,Ae=>{let de=NV(Ae.range),Be=Ae.kind===1?ls(Np(Ae.node))??Ae.sourceFile:Ae.kind===2?ls(Np(Ae.nodes[0]))??Ae.sourceFile:Ae.sourceFile,Fe=I(Ae,Be,te,N,V,P);if(!(de.length===Fe.length&&aFt(Be.text,Fe,de.start)))return Q_e(de,Fe)});return ue.length>0?{fileName:te.fileName,textChanges:ue}:void 0})}n.getTextChangesFromChanges=c;function u(R,N,V,P){let Q=d(ple(R),N,V,P);return{fileName:R,textChanges:[Q_e(Ed(0,0),Q)],isNewFile:!0}}n.newFileChanges=u;function d(R,N,V,P){let Q=Fr(N,ue=>ue.statements.map(Ae=>Ae===4?"":b(Ae,ue.oldFile,V).text)).join(V),te=M6("any file name",Q,{languageVersion:99,jsDocParsingMode:1},!0,R),re=zC.formatDocument(te,P);return vVt(Q,re)+V}n.newFileChangesWorker=d;function I(R,N,V,P,Q,te){var re;if(R.kind===0)return"";if(R.kind===3)return R.text;let{options:ue={},range:{pos:Ae}}=R,de=Ne=>h(Ne,N,V,Ae,ue,P,Q,te),Be=R.kind===2?R.nodes.map(Ne=>Hm(de(Ne),P)).join(((re=R.options)==null?void 0:re.joiner)||P):de(R.node),Fe=ue.indentation!==void 0||Wv(Ae,N)===Ae?Be:Be.replace(/^\s+/,"");return(ue.prefix||"")+Fe+(!ue.suffix||fl(Fe,ue.suffix)?"":ue.suffix)}function h(R,N,V,P,{indentation:Q,prefix:te,delta:re},ue,Ae,de){let{node:Be,text:Fe}=b(R,N,ue);de&&de(Be,Fe);let Ne=fFe(Ae,N),Me=Q!==void 0?Q:zC.SmartIndenter.getIndentation(P,V,Ne,te===ue||Wv(P,N)===P);re===void 0&&(re=zC.SmartIndenter.shouldIndentChildNode(Ne,R)&&Ne.indentSize||0);let De={text:Fe,getLineAndCharacterOfPosition(Le){return Vl(this,Le)}},lt=zC.formatNodeGivenIndentation(Be,De,N.languageVariant,Me,re,{...Ae,options:Ne});return vVt(Fe,lt)}function b(R,N,V){let P=LMr(V),Q=e0e(V);return wV({newLine:Q,neverAsciiEscape:!0,preserveSourceNewlines:!0,terminateUnterminatedLiterals:!0},P).writeNode(4,R,N,P),{text:P.getText(),node:Tqe(R)}}n.getNonformattedText=b})(wqe||(wqe={}));function vVt(n,c){for(let u=c.length-1;u>=0;u--){let{span:d,newText:I}=c[u];n=`${n.substring(0,d.start)}${I}${n.substring(Ku(d))}`}return n}function Gcs(n){return Uu(n,0)===n.length}var Fcs={...m_e,factory:pV(m_e.factory.flags|1,m_e.factory.baseFactory)};function Tqe(n){let c=ns(n,Tqe,Fcs,Zcs,Tqe),u=$d(c)?c:Object.create(c);return MS(u,xMr(n),kMr(n)),u}function Zcs(n,c,u,d,I){let h=ws(n,c,u,d,I);if(!h)return h;w.assert(n);let b=h===n?_e.createNodeArray(h.slice(0)):h;return MS(b,xMr(n),kMr(n)),b}function LMr(n){let c=0,u=See(n),d=He=>{He&&yVt(He,c)},I=He=>{He&&bVt(He,c)},h=He=>{He&&yVt(He,c)},b=He=>{He&&bVt(He,c)},R=He=>{He&&yVt(He,c)},N=He=>{He&&bVt(He,c)};function V(He,ht){if(ht||!Gcs(He)){c=u.getTextPos();let Et=0;for(;Jm(He.charCodeAt(He.length-Et-1));)Et++;c-=Et}}function P(He){u.write(He),V(He,!1)}function Q(He){u.writeComment(He)}function te(He){u.writeKeyword(He),V(He,!1)}function re(He){u.writeOperator(He),V(He,!1)}function ue(He){u.writePunctuation(He),V(He,!1)}function Ae(He){u.writeTrailingSemicolon(He),V(He,!1)}function de(He){u.writeParameter(He),V(He,!1)}function Be(He){u.writeProperty(He),V(He,!1)}function Fe(He){u.writeSpace(He),V(He,!1)}function Ne(He){u.writeStringLiteral(He),V(He,!1)}function Me(He,ht){u.writeSymbol(He,ht),V(He,!1)}function De(He){u.writeLine(He)}function lt(){u.increaseIndent()}function Le(){u.decreaseIndent()}function je(){return u.getText()}function st(He){u.rawWrite(He),V(He,!1)}function nt(He){u.writeLiteral(He),V(He,!0)}function qe(){return u.getTextPos()}function it(){return u.getLine()}function It(){return u.getColumn()}function dt(){return u.getIndent()}function Tt(){return u.isAtStartOfLine()}function St(){u.clear(),c=0}return{onBeforeEmitNode:d,onAfterEmitNode:I,onBeforeEmitNodeArray:h,onAfterEmitNodeArray:b,onBeforeEmitToken:R,onAfterEmitToken:N,write:P,writeComment:Q,writeKeyword:te,writeOperator:re,writePunctuation:ue,writeTrailingSemicolon:Ae,writeParameter:de,writeProperty:Be,writeSpace:Fe,writeStringLiteral:Ne,writeSymbol:Me,writeLine:De,increaseIndent:lt,decreaseIndent:Le,getText:je,rawWrite:st,writeLiteral:nt,getTextPos:qe,getLine:it,getColumn:It,getIndent:dt,isAtStartOfLine:Tt,hasTrailingComment:()=>u.hasTrailingComment(),hasTrailingWhitespace:()=>u.hasTrailingWhitespace(),clear:St}}function Lcs(n){let c;for(let V of n.statements)if(HI(V))c=V;else break;let u=0,d=n.text;if(c)return u=c.end,N(),u;let I=AG(d);I!==void 0&&(u=I.length,N());let h=Zb(d,u);if(!h)return u;let b,R;for(let V of h){if(V.kind===3){if(R8(d,V.pos)){b={range:V,pinnedOrTripleSlash:!0};continue}}else if(Z$(d,V.pos,V.end)){b={range:V,pinnedOrTripleSlash:!0};continue}if(b){if(b.pinnedOrTripleSlash)break;let P=n.getLineAndCharacterOfPosition(V.pos).line,Q=n.getLineAndCharacterOfPosition(b.range.end).line;if(P>=Q+2)break}if(n.statements.length){R===void 0&&(R=n.getLineAndCharacterOfPosition(n.statements[0].getStart()).line);let P=n.getLineAndCharacterOfPosition(V.end).line;if(R{function c(h,b,R,N){switch(N.kind){case 169:{let re=N.parent;Id(re)&&re.parameters.length===1&&!Qd(re,21,R)?h.replaceNodeWithText(R,N,"()"):S0e(h,b,R,N);break}case 272:case 271:let V=R.imports.length&&N===qs(R.imports).parent||N===be(R.statements,_G);QG(h,R,N,{leadingTriviaOption:V?0:_y(N)?2:3});break;case 208:let P=N.parent;P.kind===207&&N!==Ta(P.elements)?QG(h,R,N):S0e(h,b,R,N);break;case 260:I(h,b,R,N);break;case 168:S0e(h,b,R,N);break;case 276:let te=N.parent;te.elements.length===1?d(h,R,te):S0e(h,b,R,N);break;case 274:d(h,R,N);break;case 27:QG(h,R,N,{trailingTriviaOption:0});break;case 100:QG(h,R,N,{leadingTriviaOption:0});break;case 263:case 262:QG(h,R,N,{leadingTriviaOption:_y(N)?2:3});break;default:N.parent?oT(N.parent)&&N.parent.name===N?u(h,R,N.parent):lu(N.parent)&&Ue(N.parent.arguments,N)?S0e(h,b,R,N):QG(h,R,N):QG(h,R,N)}}n.deleteDeclaration=c;function u(h,b,R){if(!R.namedBindings)QG(h,b,R.parent);else{let N=R.name.getStart(b),V=Hc(b,R.name.end);if(V&&V.kind===28){let P=Uu(b.text,V.end,!1,!0);h.deleteRange(b,{pos:N,end:P})}else QG(h,b,R.name)}}function d(h,b,R){if(R.parent.name){let N=w.checkDefined(Hc(b,R.pos-1));h.deleteRange(b,{pos:N.getStart(b),end:R.end})}else{let N=bG(R,272);QG(h,b,N)}}function I(h,b,R,N){let{parent:V}=N;if(V.kind===299){h.deleteNodeRange(R,Qd(V,21,R),Qd(V,22,R));return}if(V.declarations.length!==1){S0e(h,b,R,N);return}let P=V.parent;switch(P.kind){case 250:case 249:h.replaceNode(R,N,_e.createObjectLiteralExpression());break;case 248:QG(h,R,V);break;case 243:QG(h,R,P,{leadingTriviaOption:_y(P)?2:3});break;default:w.assertNever(P)}}})(SVt||(SVt={}));function QG(n,c,u,d={leadingTriviaOption:1}){let I=N4(c,u,d),h=$te(c,u,d);n.deleteRange(c,{pos:I,end:h})}function S0e(n,c,u,d){let I=w.checkDefined(zC.SmartIndenter.getContainingList(d,u)),h=P3(I,d);if(w.assert(h!==-1),I.length===1){QG(n,u,d);return}w.assert(!c.has(d),"Deleting a node twice"),c.add(d),n.deleteRange(u,{pos:BVt(u,d),end:h===I.length-1?$te(u,d,{}):xcs(u,d,I[h-1],I[h+1])})}var zC={};o(zC,{FormattingContext:()=>PMr,FormattingRequestKind:()=>WMr,RuleAction:()=>OMr,RuleFlags:()=>QMr,SmartIndenter:()=>ZN,anyContext:()=>Nqe,createTextRangeWithKind:()=>kqe,formatDocument:()=>Nls,formatNodeGivenIndentation:()=>Zls,formatOnClosingCurly:()=>Tls,formatOnEnter:()=>vls,formatOnOpeningCurly:()=>wls,formatOnSemicolon:()=>Sls,formatSelection:()=>Rls,getAllRules:()=>MMr,getFormatContext:()=>Cls,getFormattingScanner:()=>wVt,getIndentationString:()=>OVt,getRangeOfEnclosingComment:()=>pHr});var WMr=(n=>(n[n.FormatDocument=0]="FormatDocument",n[n.FormatSelection=1]="FormatSelection",n[n.FormatOnEnter=2]="FormatOnEnter",n[n.FormatOnSemicolon=3]="FormatOnSemicolon",n[n.FormatOnOpeningCurlyBrace=4]="FormatOnOpeningCurlyBrace",n[n.FormatOnClosingCurlyBrace=5]="FormatOnClosingCurlyBrace",n))(WMr||{}),PMr=class{constructor(n,c,u){this.sourceFile=n,this.formattingRequestKind=c,this.options=u}updateContext(n,c,u,d,I){this.currentTokenSpan=w.checkDefined(n),this.currentTokenParent=w.checkDefined(c),this.nextTokenSpan=w.checkDefined(u),this.nextTokenParent=w.checkDefined(d),this.contextNode=w.checkDefined(I),this.contextNodeAllOnSameLine=void 0,this.nextNodeAllOnSameLine=void 0,this.tokensAreOnSameLine=void 0,this.contextNodeBlockIsOnOneLine=void 0,this.nextNodeBlockIsOnOneLine=void 0}ContextNodeAllOnSameLine(){return this.contextNodeAllOnSameLine===void 0&&(this.contextNodeAllOnSameLine=this.NodeIsOnOneLine(this.contextNode)),this.contextNodeAllOnSameLine}NextNodeAllOnSameLine(){return this.nextNodeAllOnSameLine===void 0&&(this.nextNodeAllOnSameLine=this.NodeIsOnOneLine(this.nextTokenParent)),this.nextNodeAllOnSameLine}TokensAreOnSameLine(){if(this.tokensAreOnSameLine===void 0){let n=this.sourceFile.getLineAndCharacterOfPosition(this.currentTokenSpan.pos).line,c=this.sourceFile.getLineAndCharacterOfPosition(this.nextTokenSpan.pos).line;this.tokensAreOnSameLine=n===c}return this.tokensAreOnSameLine}ContextNodeBlockIsOnOneLine(){return this.contextNodeBlockIsOnOneLine===void 0&&(this.contextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.contextNode)),this.contextNodeBlockIsOnOneLine}NextNodeBlockIsOnOneLine(){return this.nextNodeBlockIsOnOneLine===void 0&&(this.nextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.nextTokenParent)),this.nextNodeBlockIsOnOneLine}NodeIsOnOneLine(n){let c=this.sourceFile.getLineAndCharacterOfPosition(n.getStart(this.sourceFile)).line,u=this.sourceFile.getLineAndCharacterOfPosition(n.getEnd()).line;return c===u}BlockIsOnOneLine(n){let c=Qd(n,19,this.sourceFile),u=Qd(n,20,this.sourceFile);if(c&&u){let d=this.sourceFile.getLineAndCharacterOfPosition(c.getEnd()).line,I=this.sourceFile.getLineAndCharacterOfPosition(u.getStart(this.sourceFile)).line;return d===I}return!1}},Wcs=Ft(99,!1,0),Pcs=Ft(99,!1,1);function wVt(n,c,u,d,I){let h=c===1?Pcs:Wcs;h.setText(n),h.resetTokenState(u);let b=!0,R,N,V,P,Q,te=I({advance:re,readTokenInfo:De,readEOFTokenRange:Le,isOnToken:je,isOnEOF:st,getCurrentLeadingTrivia:()=>R,lastTrailingTriviaWasNewLine:()=>b,skipToEndOf:qe,skipToStartOf:it,getTokenFullStart:()=>Q?.token.pos??h.getTokenStart(),getStartPos:()=>Q?.token.pos??h.getTokenStart()});return Q=void 0,h.setText(void 0),te;function re(){Q=void 0,h.getTokenFullStart()!==u?b=!!N&&Ta(N).kind===4:h.scan(),R=void 0,N=void 0;let dt=h.getTokenFullStart();for(;dt(n[n.None=0]="None",n[n.StopProcessingSpaceActions=1]="StopProcessingSpaceActions",n[n.StopProcessingTokenActions=2]="StopProcessingTokenActions",n[n.InsertSpace=4]="InsertSpace",n[n.InsertNewLine=8]="InsertNewLine",n[n.DeleteSpace=16]="DeleteSpace",n[n.DeleteToken=32]="DeleteToken",n[n.InsertTrailingSemicolon=64]="InsertTrailingSemicolon",n[n.StopAction=3]="StopAction",n[n.ModifySpaceAction=28]="ModifySpaceAction",n[n.ModifyTokenAction=96]="ModifyTokenAction",n))(OMr||{}),QMr=(n=>(n[n.None=0]="None",n[n.CanDeleteNewLines=1]="CanDeleteNewLines",n))(QMr||{});function MMr(){let n=[];for(let lt=0;lt<=165;lt++)lt!==1&&n.push(lt);function c(...lt){return{tokens:n.filter(Le=>!lt.some(je=>je===Le)),isSpecific:!1}}let u={tokens:n,isSpecific:!1},d=zue([...n,3]),I=zue([...n,1]),h=YMr(83,165),b=YMr(30,79),R=[103,104,165,130,142,152],N=[46,47,55,54],V=[9,10,80,21,23,19,110,105],P=[80,21,110,105],Q=[80,22,24,105],te=[80,21,110,105],re=[80,22,24,105],ue=[2,3],Ae=[80,...rje],de=d,Be=zue([80,32,3,86,95,102]),Fe=zue([22,3,92,113,98,93,85]),Ne=[ba("IgnoreBeforeComment",u,ue,Nqe,1),ba("IgnoreAfterLineComment",2,u,Nqe,1),ba("NotSpaceBeforeColon",u,59,[Kc,oZe,UMr],16),ba("SpaceAfterColon",59,u,[Kc,oZe,nls],4),ba("NoSpaceBeforeQuestionMark",u,58,[Kc,oZe,UMr],16),ba("SpaceAfterQuestionMarkInConditionalOperator",58,u,[Kc,Hcs],4),ba("NoSpaceAfterQuestionMark",58,u,[Kc,Mcs],16),ba("NoSpaceBeforeDot",u,[25,29],[Kc,Ils],16),ba("NoSpaceAfterDot",[25,29],u,[Kc],16),ba("NoSpaceBetweenImportParenInImportType",102,21,[Kc,tls],16),ba("NoSpaceAfterUnaryPrefixOperator",N,V,[Kc,oZe],16),ba("NoSpaceAfterUnaryPreincrementOperator",46,P,[Kc],16),ba("NoSpaceAfterUnaryPredecrementOperator",47,te,[Kc],16),ba("NoSpaceBeforeUnaryPostincrementOperator",Q,46,[Kc,uHr],16),ba("NoSpaceBeforeUnaryPostdecrementOperator",re,47,[Kc,uHr],16),ba("SpaceAfterPostincrementWhenFollowedByAdd",46,40,[Kc,xV],4),ba("SpaceAfterAddWhenFollowedByUnaryPlus",40,40,[Kc,xV],4),ba("SpaceAfterAddWhenFollowedByPreincrement",40,46,[Kc,xV],4),ba("SpaceAfterPostdecrementWhenFollowedBySubtract",47,41,[Kc,xV],4),ba("SpaceAfterSubtractWhenFollowedByUnaryMinus",41,41,[Kc,xV],4),ba("SpaceAfterSubtractWhenFollowedByPredecrement",41,47,[Kc,xV],4),ba("NoSpaceAfterCloseBrace",20,[28,27],[Kc],16),ba("NewLineBeforeCloseBraceInBlockContext",d,20,[jMr],8),ba("SpaceAfterCloseBrace",20,c(22),[Kc,Jcs],4),ba("SpaceBetweenCloseBraceAndElse",20,93,[Kc],4),ba("SpaceBetweenCloseBraceAndWhile",20,117,[Kc],4),ba("NoSpaceBetweenEmptyBraceBrackets",19,20,[Kc,rHr],16),ba("SpaceAfterConditionalClosingParen",22,23,[aZe],4),ba("NoSpaceBetweenFunctionKeywordAndStar",100,42,[$Mr],16),ba("SpaceAfterStarInGeneratorDeclaration",42,80,[$Mr],4),ba("SpaceAfterFunctionInFuncDecl",100,u,[R4],4),ba("NewLineAfterOpenBraceInBlockContext",19,u,[jMr],8),ba("SpaceAfterGetSetInMember",[139,153],80,[R4],4),ba("NoSpaceBetweenYieldKeywordAndStar",127,42,[Kc,lHr],16),ba("SpaceBetweenYieldOrYieldStarAndOperand",[127,42],u,[Kc,lHr],4),ba("NoSpaceBetweenReturnAndSemicolon",107,27,[Kc],16),ba("SpaceAfterCertainKeywords",[115,111,105,91,107,114,135],u,[Kc],4),ba("SpaceAfterLetConstInVariableDeclaration",[121,87],u,[Kc,ols],4),ba("NoSpaceBeforeOpenParenInFuncCall",u,21,[Kc,jcs,zcs],16),ba("SpaceBeforeBinaryKeywordOperator",u,R,[Kc,xV],4),ba("SpaceAfterBinaryKeywordOperator",R,u,[Kc,xV],4),ba("SpaceAfterVoidOperator",116,u,[Kc,gls],4),ba("SpaceBetweenAsyncAndOpenParen",134,21,[els,Kc],4),ba("SpaceBetweenAsyncAndFunctionKeyword",134,[100,80],[Kc],4),ba("NoSpaceBetweenTagAndTemplateString",[80,22],[15,16],[Kc],16),ba("SpaceBeforeJsxAttribute",u,80,[rls,Kc],4),ba("SpaceBeforeSlashInJsxOpeningElement",u,44,[oHr,Kc],4),ba("NoSpaceBeforeGreaterThanTokenInJsxOpeningElement",44,32,[oHr,Kc],16),ba("NoSpaceBeforeEqualInJsxAttribute",u,64,[iHr,Kc],16),ba("NoSpaceAfterEqualInJsxAttribute",64,u,[iHr,Kc],16),ba("NoSpaceBeforeJsxNamespaceColon",80,59,[sHr],16),ba("NoSpaceAfterJsxNamespaceColon",59,80,[sHr],16),ba("NoSpaceAfterModuleImport",[144,149],21,[Kc],16),ba("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],u,[Kc],4),ba("SpaceBeforeCertainTypeScriptKeywords",u,[96,119,161],[Kc],4),ba("SpaceAfterModuleName",11,19,[als],4),ba("SpaceBeforeArrow",u,39,[Kc],4),ba("SpaceAfterArrow",39,u,[Kc],4),ba("NoSpaceAfterEllipsis",26,80,[Kc],16),ba("NoSpaceAfterOptionalParameters",58,[22,28],[Kc,oZe],16),ba("NoSpaceBetweenEmptyInterfaceBraceBrackets",19,20,[Kc,cls],16),ba("NoSpaceBeforeOpenAngularBracket",Ae,30,[Kc,cZe],16),ba("NoSpaceBetweenCloseParenAndAngularBracket",22,30,[Kc,cZe],16),ba("NoSpaceAfterOpenAngularBracket",30,u,[Kc,cZe],16),ba("NoSpaceBeforeCloseAngularBracket",u,32,[Kc,cZe],16),ba("NoSpaceAfterCloseAngularBracket",32,[21,23,32,28],[Kc,cZe,Xcs,uls],16),ba("SpaceBeforeAt",[22,80],60,[Kc],4),ba("NoSpaceAfterAt",60,u,[Kc],16),ba("SpaceAfterDecorator",u,[128,80,95,90,86,126,125,123,124,139,153,23,42],[sls],4),ba("NoSpaceBeforeNonNullAssertionOperator",u,54,[Kc,Als],16),ba("NoSpaceAfterNewKeywordOnConstructorSignature",105,21,[Kc,lls],16),ba("SpaceLessThanAndNonJSXTypeAnnotation",30,30,[Kc],4)],Me=[ba("SpaceAfterConstructor",137,21,[Q2("insertSpaceAfterConstructor"),Kc],4),ba("NoSpaceAfterConstructor",137,21,[FN("insertSpaceAfterConstructor"),Kc],16),ba("SpaceAfterComma",28,u,[Q2("insertSpaceAfterCommaDelimiter"),Kc,GVt,qcs,$cs],4),ba("NoSpaceAfterComma",28,u,[FN("insertSpaceAfterCommaDelimiter"),Kc,GVt],16),ba("SpaceAfterAnonymousFunctionKeyword",[100,42],21,[Q2("insertSpaceAfterFunctionKeywordForAnonymousFunctions"),R4],4),ba("NoSpaceAfterAnonymousFunctionKeyword",[100,42],21,[FN("insertSpaceAfterFunctionKeywordForAnonymousFunctions"),R4],16),ba("SpaceAfterKeywordInControl",h,21,[Q2("insertSpaceAfterKeywordsInControlFlowStatements"),aZe],4),ba("NoSpaceAfterKeywordInControl",h,21,[FN("insertSpaceAfterKeywordsInControlFlowStatements"),aZe],16),ba("SpaceAfterOpenParen",21,u,[Q2("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),Kc],4),ba("SpaceBeforeCloseParen",u,22,[Q2("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),Kc],4),ba("SpaceBetweenOpenParens",21,21,[Q2("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),Kc],4),ba("NoSpaceBetweenParens",21,22,[Kc],16),ba("NoSpaceAfterOpenParen",21,u,[FN("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),Kc],16),ba("NoSpaceBeforeCloseParen",u,22,[FN("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),Kc],16),ba("SpaceAfterOpenBracket",23,u,[Q2("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),Kc],4),ba("SpaceBeforeCloseBracket",u,24,[Q2("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),Kc],4),ba("NoSpaceBetweenBrackets",23,24,[Kc],16),ba("NoSpaceAfterOpenBracket",23,u,[FN("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),Kc],16),ba("NoSpaceBeforeCloseBracket",u,24,[FN("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),Kc],16),ba("SpaceAfterOpenBrace",19,u,[JMr("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),KMr],4),ba("SpaceBeforeCloseBrace",u,20,[JMr("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),KMr],4),ba("NoSpaceBetweenEmptyBraceBrackets",19,20,[Kc,rHr],16),ba("NoSpaceAfterOpenBrace",19,u,[TVt("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),Kc],16),ba("NoSpaceBeforeCloseBrace",u,20,[TVt("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),Kc],16),ba("SpaceBetweenEmptyBraceBrackets",19,20,[Q2("insertSpaceAfterOpeningAndBeforeClosingEmptyBraces")],4),ba("NoSpaceBetweenEmptyBraceBrackets",19,20,[TVt("insertSpaceAfterOpeningAndBeforeClosingEmptyBraces"),Kc],16),ba("SpaceAfterTemplateHeadAndMiddle",[16,17],u,[Q2("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),nHr],4,1),ba("SpaceBeforeTemplateMiddleAndTail",u,[17,18],[Q2("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),Kc],4),ba("NoSpaceAfterTemplateHeadAndMiddle",[16,17],u,[FN("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),nHr],16,1),ba("NoSpaceBeforeTemplateMiddleAndTail",u,[17,18],[FN("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),Kc],16),ba("SpaceAfterOpenBraceInJsxExpression",19,u,[Q2("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),Kc,Dqe],4),ba("SpaceBeforeCloseBraceInJsxExpression",u,20,[Q2("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),Kc,Dqe],4),ba("NoSpaceAfterOpenBraceInJsxExpression",19,u,[FN("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),Kc,Dqe],16),ba("NoSpaceBeforeCloseBraceInJsxExpression",u,20,[FN("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),Kc,Dqe],16),ba("SpaceAfterSemicolonInFor",27,u,[Q2("insertSpaceAfterSemicolonInForStatements"),Kc,RVt],4),ba("NoSpaceAfterSemicolonInFor",27,u,[FN("insertSpaceAfterSemicolonInForStatements"),Kc,RVt],16),ba("SpaceBeforeBinaryOperator",u,b,[Q2("insertSpaceBeforeAndAfterBinaryOperators"),Kc,xV],4),ba("SpaceAfterBinaryOperator",b,u,[Q2("insertSpaceBeforeAndAfterBinaryOperators"),Kc,xV],4),ba("NoSpaceBeforeBinaryOperator",u,b,[FN("insertSpaceBeforeAndAfterBinaryOperators"),Kc,xV],16),ba("NoSpaceAfterBinaryOperator",b,u,[FN("insertSpaceBeforeAndAfterBinaryOperators"),Kc,xV],16),ba("SpaceBeforeOpenParenInFuncDecl",u,21,[Q2("insertSpaceBeforeFunctionParenthesis"),Kc,R4],4),ba("NoSpaceBeforeOpenParenInFuncDecl",u,21,[FN("insertSpaceBeforeFunctionParenthesis"),Kc,R4],16),ba("NewLineBeforeOpenBraceInControl",Fe,19,[Q2("placeOpenBraceOnNewLineForControlBlocks"),aZe,kVt],8,1),ba("NewLineBeforeOpenBraceInFunction",de,19,[Q2("placeOpenBraceOnNewLineForFunctions"),R4,kVt],8,1),ba("NewLineBeforeOpenBraceInTypeScriptDeclWithBlock",Be,19,[Q2("placeOpenBraceOnNewLineForFunctions"),eHr,kVt],8,1),ba("SpaceAfterTypeAssertion",32,u,[Q2("insertSpaceAfterTypeAssertion"),Kc,ZVt],4),ba("NoSpaceAfterTypeAssertion",32,u,[FN("insertSpaceAfterTypeAssertion"),Kc,ZVt],16),ba("SpaceBeforeTypeAnnotation",u,[58,59],[Q2("insertSpaceBeforeTypeAnnotation"),Kc,DVt],4),ba("NoSpaceBeforeTypeAnnotation",u,[58,59],[FN("insertSpaceBeforeTypeAnnotation"),Kc,DVt],16),ba("NoOptionalSemicolon",27,I,[XMr("semicolons","remove"),pls],32),ba("OptionalSemicolon",u,I,[XMr("semicolons","insert"),fls],64)],De=[ba("NoSpaceBeforeSemicolon",u,27,[Kc],16),ba("SpaceBeforeOpenBraceInControl",Fe,19,[NVt("placeOpenBraceOnNewLineForControlBlocks"),aZe,FVt,xVt],4,1),ba("SpaceBeforeOpenBraceInFunction",de,19,[NVt("placeOpenBraceOnNewLineForFunctions"),R4,Rqe,FVt,xVt],4,1),ba("SpaceBeforeOpenBraceInTypeScriptDeclWithBlock",Be,19,[NVt("placeOpenBraceOnNewLineForFunctions"),eHr,FVt,xVt],4,1),ba("NoSpaceBeforeComma",u,28,[Kc],16),ba("NoSpaceBeforeOpenBracket",c(134,84),23,[Kc],16),ba("NoSpaceAfterCloseBracket",24,u,[Kc,ils],16),ba("SpaceAfterSemicolon",27,u,[Kc],4),ba("SpaceBetweenForAndAwaitKeyword",99,135,[Kc],4),ba("SpaceBetweenDotDotDotAndTypeName",26,Ae,[Kc],16),ba("SpaceBetweenStatements",[22,92,93,84],u,[Kc,GVt,Ocs],4),ba("SpaceAfterTryCatchFinally",[113,85,98],19,[Kc],4)];return[...Ne,...Me,...De]}function ba(n,c,u,d,I,h=0){return{leftTokenRange:HMr(c),rightTokenRange:HMr(u),rule:{debugName:n,context:d,action:I,flags:h}}}function zue(n){return{tokens:n,isSpecific:!0}}function HMr(n){return typeof n=="number"?zue([n]):Na(n)?zue(n):n}function YMr(n,c,u=[]){let d=[];for(let I=n;I<=c;I++)Ue(u,I)||d.push(I);return zue(d)}function XMr(n,c){return u=>u.options&&u.options[n]===c}function Q2(n){return c=>c.options&&Qa(c.options,n)&&!!c.options[n]}function TVt(n){return c=>c.options&&Qa(c.options,n)&&!c.options[n]}function FN(n){return c=>!c.options||!Qa(c.options,n)||!c.options[n]}function NVt(n){return c=>!c.options||!Qa(c.options,n)||!c.options[n]||c.TokensAreOnSameLine()}function JMr(n){return c=>!c.options||!Qa(c.options,n)||!!c.options[n]}function RVt(n){return n.contextNode.kind===248}function Ocs(n){return!RVt(n)}function xV(n){switch(n.contextNode.kind){case 226:return n.contextNode.operatorToken.kind!==28;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 n.currentTokenSpan.kind===64||n.nextTokenSpan.kind===64;case 249:case 168:return n.currentTokenSpan.kind===103||n.nextTokenSpan.kind===103||n.currentTokenSpan.kind===64||n.nextTokenSpan.kind===64;case 250:return n.currentTokenSpan.kind===165||n.nextTokenSpan.kind===165}return!1}function oZe(n){return!xV(n)}function UMr(n){return!DVt(n)}function DVt(n){let c=n.contextNode.kind;return c===172||c===171||c===169||c===260||HR(c)}function Qcs(n){return Hl(n.contextNode)&&n.contextNode.questionToken}function Mcs(n){return!Qcs(n)}function Hcs(n){return n.contextNode.kind===227||n.contextNode.kind===194}function xVt(n){return n.TokensAreOnSameLine()||Rqe(n)}function KMr(n){return n.contextNode.kind===206||n.contextNode.kind===200||Ycs(n)}function kVt(n){return Rqe(n)&&!(n.NextNodeAllOnSameLine()||n.NextNodeBlockIsOnOneLine())}function jMr(n){return zMr(n)&&!(n.ContextNodeAllOnSameLine()||n.ContextNodeBlockIsOnOneLine())}function Ycs(n){return zMr(n)&&(n.ContextNodeAllOnSameLine()||n.ContextNodeBlockIsOnOneLine())}function zMr(n){return qMr(n.contextNode)}function Rqe(n){return qMr(n.nextTokenParent)}function qMr(n){if(tHr(n))return!0;switch(n.kind){case 241:case 269:case 210:case 268:return!0}return!1}function R4(n){switch(n.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 Xcs(n){return!R4(n)}function $Mr(n){return n.contextNode.kind===262||n.contextNode.kind===218}function eHr(n){return tHr(n.contextNode)}function tHr(n){switch(n.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 Jcs(n){switch(n.currentTokenParent.kind){case 263:case 267:case 266:case 299:case 268:case 255:return!0;case 241:{let c=n.currentTokenParent.parent;if(!c||c.kind!==219&&c.kind!==218)return!0}}return!1}function aZe(n){switch(n.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 rHr(n){return n.contextNode.kind===210}function Ucs(n){return n.contextNode.kind===213}function Kcs(n){return n.contextNode.kind===214}function jcs(n){return Ucs(n)||Kcs(n)}function zcs(n){return n.currentTokenSpan.kind!==28}function qcs(n){return n.nextTokenSpan.kind!==24}function $cs(n){return n.nextTokenSpan.kind!==22}function els(n){return n.contextNode.kind===219}function tls(n){return n.contextNode.kind===205}function Kc(n){return n.TokensAreOnSameLine()&&n.contextNode.kind!==12}function nHr(n){return n.contextNode.kind!==12}function GVt(n){return n.contextNode.kind!==284&&n.contextNode.kind!==288}function Dqe(n){return n.contextNode.kind===294||n.contextNode.kind===293}function rls(n){return n.nextTokenParent.kind===291||n.nextTokenParent.kind===295&&n.nextTokenParent.parent.kind===291}function iHr(n){return n.contextNode.kind===291}function nls(n){return n.nextTokenParent.kind!==295}function sHr(n){return n.nextTokenParent.kind===295}function oHr(n){return n.contextNode.kind===285}function ils(n){return!R4(n)&&!Rqe(n)}function sls(n){return n.TokensAreOnSameLine()&&LE(n.contextNode)&&aHr(n.currentTokenParent)&&!aHr(n.nextTokenParent)}function aHr(n){for(;n&&tn(n);)n=n.parent;return n&&n.kind===170}function ols(n){return n.currentTokenParent.kind===261&&n.currentTokenParent.getStart(n.sourceFile)===n.currentTokenSpan.pos}function FVt(n){return n.formattingRequestKind!==2}function als(n){return n.contextNode.kind===267}function cls(n){return n.contextNode.kind===187}function lls(n){return n.contextNode.kind===180}function cHr(n,c){if(n.kind!==30&&n.kind!==32)return!1;switch(c.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 cZe(n){return cHr(n.currentTokenSpan,n.currentTokenParent)||cHr(n.nextTokenSpan,n.nextTokenParent)}function ZVt(n){return n.contextNode.kind===216}function uls(n){return!ZVt(n)}function gls(n){return n.currentTokenSpan.kind===116&&n.currentTokenParent.kind===222}function lHr(n){return n.contextNode.kind===229&&n.contextNode.expression!==void 0}function Als(n){return n.contextNode.kind===235}function uHr(n){return!dls(n)}function dls(n){switch(n.contextNode.kind){case 245:case 248:case 249:case 250:case 246:case 247:return!0;default:return!1}}function pls(n){let c=n.nextTokenSpan.kind,u=n.nextTokenSpan.pos;if(XX(c)){let h=n.nextTokenParent===n.currentTokenParent?EM(n.currentTokenParent,Si(n.currentTokenParent,b=>!b.parent),n.sourceFile):n.nextTokenParent.getFirstToken(n.sourceFile);if(!h)return!0;c=h.kind,u=h.getStart(n.sourceFile)}let d=n.sourceFile.getLineAndCharacterOfPosition(n.currentTokenSpan.pos).line,I=n.sourceFile.getLineAndCharacterOfPosition(u).line;return d===I?c===20||c===1:c===240||c===27?!1:n.contextNode.kind===264||n.contextNode.kind===265?!i_(n.currentTokenParent)||!!n.currentTokenParent.type||c!==21:Hl(n.currentTokenParent)?!n.currentTokenParent.initializer:n.currentTokenParent.kind!==248&&n.currentTokenParent.kind!==242&&n.currentTokenParent.kind!==240&&c!==23&&c!==21&&c!==40&&c!==41&&c!==44&&c!==14&&c!==28&&c!==228&&c!==16&&c!==15&&c!==25}function fls(n){return iFe(n.currentTokenSpan.end,n.currentTokenParent,n.sourceFile)}function Ils(n){return!fo(n.contextNode)||!pu(n.contextNode.expression)||n.contextNode.expression.getText().includes(".")}function Cls(n,c){return{options:n,getRules:mls(),host:c}}var LVt;function mls(){return LVt===void 0&&(LVt=_ls(MMr())),LVt}function hls(n){let c=0;return n&1&&(c|=28),n&2&&(c|=96),n&28&&(c|=28),n&96&&(c|=96),c}function _ls(n){let c=yls(n);return u=>{let d=c[gHr(u.currentTokenSpan.kind,u.nextTokenSpan.kind)];if(d){let I=[],h=0;for(let b of d){let R=~hls(h);b.action&R&&he(b.context,N=>N(u))&&(I.push(b),h|=b.action)}if(I.length)return I}}}function yls(n){let c=new Array(VVt*VVt),u=new Array(c.length);for(let d of n){let I=d.leftTokenRange.isSpecific&&d.rightTokenRange.isSpecific;for(let h of d.leftTokenRange.tokens)for(let b of d.rightTokenRange.tokens){let R=gHr(h,b),N=c[R];N===void 0&&(N=c[R]=[]),bls(N,d.rule,I,u,R)}}return c}function gHr(n,c){return w.assert(n<=165&&c<=165,"Must compute formatting context from tokens"),n*VVt+c}var que=5,xqe=31,VVt=166,w0e=(n=>(n[n.StopRulesSpecific=0]="StopRulesSpecific",n[n.StopRulesAny=que*1]="StopRulesAny",n[n.ContextRulesSpecific=que*2]="ContextRulesSpecific",n[n.ContextRulesAny=que*3]="ContextRulesAny",n[n.NoContextRulesSpecific=que*4]="NoContextRulesSpecific",n[n.NoContextRulesAny=que*5]="NoContextRulesAny",n))(w0e||{});function bls(n,c,u,d,I){let h=c.action&3?u?0:w0e.StopRulesAny:c.context!==Nqe?u?w0e.ContextRulesSpecific:w0e.ContextRulesAny:u?w0e.NoContextRulesSpecific:w0e.NoContextRulesAny,b=d[I]||0;n.splice(Els(b,h),0,c),d[I]=Bls(b,h)}function Els(n,c){let u=0;for(let d=0;d<=c;d+=que)u+=n&xqe,n>>=que;return u}function Bls(n,c){let u=(n>>c&xqe)+1;return w.assert((u&xqe)===u,"Adding more rules into the sub-bucket than allowed. Maximum allowed is 32 rules."),n&~(xqe<w.formatSyntaxKind(u)}),d}function vls(n,c,u){let d=c.getLineAndCharacterOfPosition(n).line;if(d===0)return[];let I=DX(d,c);for(;e0(c.text.charCodeAt(I));)I--;XC(c.text.charCodeAt(I))&&I--;let h={pos:gN(d-1,c),end:I+1};return lZe(h,c,u,2)}function Sls(n,c,u){let d=WVt(n,27,c);return AHr(PVt(d),c,u,3)}function wls(n,c,u){let d=WVt(n,19,c);if(!d)return[];let I=d.parent,h=PVt(I),b={pos:Wv(h.getStart(c),c),end:n};return lZe(b,c,u,4)}function Tls(n,c,u){let d=WVt(n,20,c);return AHr(PVt(d),c,u,5)}function Nls(n,c){let u={pos:0,end:n.text.length};return lZe(u,n,c,0)}function Rls(n,c,u,d){let I={pos:Wv(n,u),end:c};return lZe(I,u,d,1)}function WVt(n,c,u){let d=ym(n,u);return d&&d.kind===c&&n===d.getEnd()?d:void 0}function PVt(n){let c=n;for(;c&&c.parent&&c.parent.end===n.end&&!Dls(c.parent,c);)c=c.parent;return c}function Dls(n,c){switch(n.kind){case 263:case 264:return W2(n.members,c);case 267:let u=n.body;return!!u&&u.kind===268&&W2(u.statements,c);case 307:case 241:case 268:return W2(n.statements,c);case 299:return W2(n.block.statements,c)}return!1}function xls(n,c){return u(c);function u(d){let I=hu(d,h=>M7e(h.getStart(c),h.end,n)&&h);if(I){let h=u(I);if(h)return h}return d}}function kls(n,c){if(!n.length)return I;let u=n.filter(h=>vue(c,h.start,h.start+h.length)).sort((h,b)=>h.start-b.start);if(!u.length)return I;let d=0;return h=>{for(;;){if(d>=u.length)return!1;let b=u[d];if(h.end<=b.start)return!1;if(FGe(h.pos,h.end,b.start,b.start+b.length))return!0;d++}};function I(){return!1}}function Gls(n,c,u){let d=n.getStart(u);if(d===c.pos&&n.end===c.end)return d;let I=ym(c.pos,u);return!I||I.end>=c.pos?n.pos:I.end}function Fls(n,c,u){let d=-1,I;for(;n;){let h=u.getLineAndCharacterOfPosition(n.getStart(u)).line;if(d!==-1&&h!==d)break;if(ZN.shouldIndentChildNode(c,n,I,u))return c.indentSize;d=h,I=n,n=n.parent}return 0}function Zls(n,c,u,d,I,h){let b={pos:n.pos,end:n.end};return wVt(c.text,u,b.pos,b.end,R=>dHr(b,n,d,I,R,h,1,N=>!1,c))}function AHr(n,c,u,d){if(!n)return[];let I={pos:Wv(n.getStart(c),c),end:n.end};return lZe(I,c,u,d)}function lZe(n,c,u,d){let I=xls(n,c);return wVt(c.text,c.languageVariant,Gls(I,n,c),n.end,h=>dHr(n,I,ZN.getIndentationForNode(I,n,c,u.options),Fls(I,u.options,c),h,u,d,kls(c.parseDiagnostics,n),c))}function dHr(n,c,u,d,I,{options:h,getRules:b,host:R},N,V,P){var Q;let te=new PMr(P,N,h),re,ue,Ae,de,Be,Fe=-1,Ne=[];if(I.advance(),I.isOnToken()){let jt=P.getLineAndCharacterOfPosition(c.getStart(P)).line,mr=jt;LE(c)&&(mr=P.getLineAndCharacterOfPosition(L$(c,P)).line),st(c,c,jt,mr,u,d)}let Me=I.getCurrentLeadingTrivia();if(Me){let jt=ZN.nodeWillIndentChild(h,c,void 0,P,!1)?u+h.indentSize:u;nt(Me,jt,!0,mr=>{it(mr,P.getLineAndCharacterOfPosition(mr.pos),c,c,void 0),dt(mr.pos,jt,!1)}),h.trimTrailingWhitespace!==!1&&Kt(Me)}if(ue&&I.getTokenFullStart()>=n.end){let jt=I.isOnEOF()?I.readEOFTokenRange():I.isOnToken()?I.readTokenInfo(c).token:void 0;if(jt&&jt.pos===re){let mr=((Q=ym(jt.end,P,c))==null?void 0:Q.parent)||Ae;It(jt,P.getLineAndCharacterOfPosition(jt.pos).line,mr,ue,de,Ae,mr,void 0)}}return Ne;function De(jt,mr,Pt,Vr,Hr){if(vue(Vr,jt,mr)||V_e(Vr,jt,mr)){if(Hr!==-1)return Hr}else{let pr=P.getLineAndCharacterOfPosition(jt).line,zr=Wv(jt,P),$n=ZN.findFirstNonWhitespaceColumn(zr,jt,P,h);if(pr!==Pt||jt===$n){let bi=ZN.getBaseIndentation(h);return bi>$n?bi:$n}}return-1}function lt(jt,mr,Pt,Vr,Hr,pr){let zr=ZN.shouldIndentChildNode(h,jt)?h.indentSize:0;return pr===mr?{indentation:mr===Be?Fe:Hr.getIndentation(),delta:Math.min(h.indentSize,Hr.getDelta(jt)+zr)}:Pt===-1?jt.kind===21&&mr===Be?{indentation:Fe,delta:Hr.getDelta(jt)}:ZN.childStartsOnTheSameLineWithElseInIfStatement(Vr,jt,mr,P)||ZN.childIsUnindentedBranchOfConditionalExpression(Vr,jt,mr,P)||ZN.argumentStartsOnSameLineAsPreviousArgument(Vr,jt,mr,P)?{indentation:Hr.getIndentation(),delta:zr}:{indentation:Hr.getIndentation()+Hr.getDelta(jt),delta:zr}:{indentation:Pt,delta:zr}}function Le(jt){if(tw(jt)){let mr=be(jt.modifiers,Ag,ke(jt.modifiers,FC));if(mr)return mr.kind}switch(jt.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(jt.asteriskToken)return 42;case 172:case 169:let mr=Sl(jt);if(mr)return mr.kind}}function je(jt,mr,Pt,Vr){return{getIndentationForComment:(zr,$n,bi)=>{switch(zr){case 20:case 24:case 22:return Pt+pr(bi)}return $n!==-1?$n:Pt},getIndentationForToken:(zr,$n,bi,Pi)=>!Pi&&Hr(zr,$n,bi)?Pt+pr(bi):Pt,getIndentation:()=>Pt,getDelta:pr,recomputeIndentation:(zr,$n)=>{ZN.shouldIndentChildNode(h,$n,jt,P)&&(Pt+=zr?h.indentSize:-h.indentSize,Vr=ZN.shouldIndentChildNode(h,jt)?h.indentSize:0)}};function Hr(zr,$n,bi){switch($n){case 19:case 20:case 22:case 93:case 117:case 60:return!1;case 44:case 32:switch(bi.kind){case 286:case 287:case 285:return!1}break;case 23:case 24:if(bi.kind!==200)return!1;break}return mr!==zr&&!(LE(jt)&&$n===Le(jt))}function pr(zr){return ZN.nodeWillIndentChild(h,jt,zr,P,!0)?Vr:0}}function st(jt,mr,Pt,Vr,Hr,pr){if(!vue(n,jt.getStart(P),jt.getEnd()))return;let zr=je(jt,Pt,Hr,pr),$n=mr;for(hu(jt,gi=>{bi(gi,-1,jt,zr,Pt,Vr,!1)},gi=>{Pi(gi,jt,Pt,zr)});I.isOnToken()&&I.getTokenFullStart()Math.min(jt.end,n.end))break;Ns(gi,jt,zr,jt)}function bi(gi,jn,xs,Bc,xi,rc,Wl,gl){if(w.assert(!$d(gi)),Tf(gi)||F$(xs,gi))return jn;let mc=gi.getStart(P),_s=P.getLineAndCharacterOfPosition(mc).line,Pu=_s;LE(gi)&&(Pu=P.getLineAndCharacterOfPosition(L$(gi,P)).line);let ir=-1;if(Wl&&W2(n,xs)&&(ir=De(mc,gi.end,xi,n,jn),ir!==-1&&(jn=ir)),!vue(n,gi.pos,gi.end))return gi.endn.end)return jn;if(Hs.token.end>mc){Hs.token.pos>mc&&I.skipToStartOf(gi);break}Ns(Hs,jt,Bc,jt)}if(!I.isOnToken()||I.getTokenFullStart()>=n.end)return jn;if(Q9(gi)){let Hs=I.readTokenInfo(gi);if(gi.kind!==12)return w.assert(Hs.token.end===gi.end,"Token end is child end"),Ns(Hs,jt,Bc,gi),jn}let ni=gi.kind===170?_s:rc,gs=lt(gi,_s,ir,jt,Bc,ni);return st(gi,$n,_s,Pu,gs.indentation,gs.delta),$n=jt,gl&&xs.kind===209&&jn===-1&&(jn=gs.indentation),jn}function Pi(gi,jn,xs,Bc){w.assert(IG(gi)),w.assert(!$d(gi));let xi=Lls(jn,gi),rc=Bc,Wl=xs;if(!vue(n,gi.pos,gi.end)){gi.endgi.pos)break;if(_s.token.kind===xi){Wl=P.getLineAndCharacterOfPosition(_s.token.pos).line,Ns(_s,jn,Bc,jn);let Pu;if(Fe!==-1)Pu=Fe;else{let ir=Wv(_s.token.pos,P);Pu=ZN.findFirstNonWhitespaceColumn(ir,_s.token.pos,P,h)}rc=je(jn,xs,Pu,h.indentSize)}else Ns(_s,jn,Bc,jn)}let gl=-1;for(let _s=0;_sdt(gs.pos,ni,!1))}Pu!==-1&&ir&&(dt(gi.token.pos,Pu,gl===1),Be=_s.line,Fe=Pu)}I.advance(),$n=jn}}function nt(jt,mr,Pt,Vr){for(let Hr of jt){let pr=W2(n,Hr);switch(Hr.kind){case 3:pr&&He(Hr,mr,!Pt),Pt=!1;break;case 2:Pt&&pr&&Vr(Hr),Pt=!1;break;case 4:Pt=!0;break}}return Pt}function qe(jt,mr,Pt,Vr){for(let Hr of jt)if(MGe(Hr.kind)&&W2(n,Hr)){let pr=P.getLineAndCharacterOfPosition(Hr.pos);it(Hr,pr,mr,Pt,Vr)}}function it(jt,mr,Pt,Vr,Hr){let pr=V(jt),zr=0;if(!pr)if(ue)zr=It(jt,mr.line,Pt,ue,de,Ae,Vr,Hr);else{let $n=P.getLineAndCharacterOfPosition(n.pos);ht($n.line,mr.line)}return ue=jt,re=jt.end,Ae=Pt,de=mr.line,zr}function It(jt,mr,Pt,Vr,Hr,pr,zr,$n){te.updateContext(Vr,pr,jt,Pt,zr);let bi=b(te),Pi=te.options.trimTrailingWhitespace!==!1,Ns=0;return bi?U(bi,gi=>{if(Ns=Dr(gi,Vr,Hr,jt,mr),$n)switch(Ns){case 2:Pt.getStart(P)===jt.pos&&$n.recomputeIndentation(!1,zr);break;case 1:Pt.getStart(P)===jt.pos&&$n.recomputeIndentation(!0,zr);break;default:w.assert(Ns===0)}Pi=Pi&&!(gi.action&16)&&gi.flags!==1}):Pi=Pi&&jt.kind!==1,mr!==Hr&&Pi&&ht(Hr,mr,Vr),Ns}function dt(jt,mr,Pt){let Vr=OVt(mr,h);if(Pt)kt(jt,0,Vr);else{let Hr=P.getLineAndCharacterOfPosition(jt),pr=gN(Hr.line,P);(mr!==Tt(pr,Hr.character)||St(Vr,pr))&&kt(pr,Hr.character,Vr)}}function Tt(jt,mr){let Pt=0;for(let Vr=0;Vr0){let rc=OVt(xi,h);kt(xs,Bc.character,rc)}else Lt(xs,Bc.character)}}function ht(jt,mr,Pt){for(let Vr=jt;Vrpr)continue;let zr=Et(Hr,pr);zr!==-1&&(w.assert(zr===Hr||!e0(P.text.charCodeAt(zr-1))),Lt(zr,pr+1-zr))}}function Et(jt,mr){let Pt=mr;for(;Pt>=jt&&e0(P.text.charCodeAt(Pt));)Pt--;return Pt!==mr?Pt+1:-1}function Kt(jt){let mr=ue?ue.end:n.pos;for(let Pt of jt)MGe(Pt.kind)&&(mrL_e(V,c)||c===V.end&&(V.kind===2||c===n.getFullWidth()))}function Lls(n,c){switch(n.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(n.typeParameters===c)return 30;if(n.parameters===c)return 21;break;case 213:case 214:if(n.typeArguments===c)return 30;if(n.arguments===c)return 21;break;case 263:case 231:case 264:case 265:if(n.typeParameters===c)return 30;break;case 183:case 215:case 186:case 233:case 205:if(n.typeArguments===c)return 30;break;case 187:return 19}return 0}function Vls(n){switch(n){case 21:return 22;case 30:return 32;case 19:return 20}return 0}var Gqe,T0e,N0e;function OVt(n,c){if((!Gqe||Gqe.tabSize!==c.tabSize||Gqe.indentSize!==c.indentSize)&&(Gqe={tabSize:c.tabSize,indentSize:c.indentSize},T0e=N0e=void 0),c.convertTabsToSpaces){let d,I=Math.floor(n/c.indentSize),h=n%c.indentSize;return N0e||(N0e=[]),N0e[I]===void 0?(d=M_e(" ",c.indentSize*I),N0e[I]=d):d=N0e[I],h?d+M_e(" ",h):d}else{let d=Math.floor(n/c.tabSize),I=n-d*c.tabSize,h;return T0e||(T0e=[]),T0e[d]===void 0?T0e[d]=h=M_e(" ",d):h=T0e[d],I?h+M_e(" ",I):h}}var ZN;(n=>{let c;(He=>{He[He.Unknown=-1]="Unknown"})(c||(c={}));function u(He,ht,Et,Kt=!1){if(He>ht.text.length)return R(Et);if(Et.indentStyle===0)return 0;let Nt=ym(He,ht,void 0,!0),Lt=pHr(ht,He,Nt||null);if(Lt&&Lt.kind===3)return d(ht,He,Et,Lt);if(!Nt)return R(Et);if(j7e(Nt.kind)&&Nt.getStart(ht)<=He&&He=0),Nt<=Lt)return it(gN(Lt,He),ht,He,Et);let kt=gN(Nt,He),{column:Zt,character:Dr}=qe(kt,ht,He,Et);return Zt===0?Zt:He.text.charCodeAt(kt+Dr)===42?Zt-1:Zt}function I(He,ht,Et){let Kt=ht;for(;Kt>0;){let Lt=He.text.charCodeAt(Kt);if(!Jm(Lt))break;Kt--}let Nt=Wv(Kt,He);return it(Nt,Kt,He,Et)}function h(He,ht,Et,Kt,Nt,Lt){let kt,Zt=Et;for(;Zt;){if(H7e(Zt,ht,He)&&Tt(Lt,Zt,kt,He,!0)){let jt=ue(Zt,He),mr=re(Et,Zt,Kt,He),Pt=mr!==0?Nt&&mr===2?Lt.indentSize:0:Kt!==jt.line?Lt.indentSize:0;return N(Zt,jt,void 0,Pt,He,!0,Lt)}let Dr=je(Zt,He,Lt,!0);if(Dr!==-1)return Dr;kt=Zt,Zt=Zt.parent}return R(Lt)}function b(He,ht,Et,Kt){let Nt=Et.getLineAndCharacterOfPosition(He.getStart(Et));return N(He,Nt,ht,0,Et,!1,Kt)}n.getIndentationForNode=b;function R(He){return He.baseIndentSize||0}n.getBaseIndentation=R;function N(He,ht,Et,Kt,Nt,Lt,kt){var Zt;let Dr=He.parent;for(;Dr;){let jt=!0;if(Et){let Hr=He.getStart(Nt);jt=HrEt.end}let mr=V(Dr,He,Nt),Pt=mr.line===ht.line||de(Dr,He,ht.line,Nt);if(jt){let Hr=(Zt=Ne(He,Nt))==null?void 0:Zt[0],pr=!!Hr&&ue(Hr,Nt).line>mr.line,zr=je(He,Nt,kt,pr);if(zr!==-1||(zr=Q(He,Dr,ht,Pt,Nt,kt),zr!==-1))return zr+Kt}Tt(kt,Dr,He,Nt,Lt)&&!Pt&&(Kt+=kt.indentSize);let Vr=Ae(Dr,He,ht.line,Nt);He=Dr,Dr=He.parent,ht=Vr?Nt.getLineAndCharacterOfPosition(He.getStart(Nt)):mr}return Kt+R(kt)}function V(He,ht,Et){let Kt=Ne(ht,Et),Nt=Kt?Kt.pos:He.getStart(Et);return Et.getLineAndCharacterOfPosition(Nt)}function P(He,ht,Et){let Kt=bGt(He);return Kt&&Kt.listItemIndex>0?st(Kt.list.getChildren(),Kt.listItemIndex-1,ht,Et):-1}function Q(He,ht,Et,Kt,Nt,Lt){return(xC(He)||SX(He))&&(ht.kind===307||!Kt)?nt(Et,Nt,Lt):-1}let te;(He=>{He[He.Unknown=0]="Unknown",He[He.OpenBrace=1]="OpenBrace",He[He.CloseBrace=2]="CloseBrace"})(te||(te={}));function re(He,ht,Et,Kt){let Nt=EM(He,ht,Kt);if(!Nt)return 0;if(Nt.kind===19)return 1;if(Nt.kind===20){let Lt=ue(Nt,Kt).line;return Et===Lt?2:0}return 0}function ue(He,ht){return ht.getLineAndCharacterOfPosition(He.getStart(ht))}function Ae(He,ht,Et,Kt){if(!(lu(He)&&Ue(He.arguments,ht)))return!1;let Nt=He.expression.getEnd();return Vl(Kt,Nt).line===Et}n.isArgumentAndStartLineOverlapsExpressionBeingCalled=Ae;function de(He,ht,Et,Kt){if(He.kind===245&&He.elseStatement===ht){let Nt=Qd(He,93,Kt);return w.assert(Nt!==void 0),ue(Nt,Kt).line===Et}return!1}n.childStartsOnTheSameLineWithElseInIfStatement=de;function Be(He,ht,Et,Kt){if(vN(He)&&(ht===He.whenTrue||ht===He.whenFalse)){let Nt=Vl(Kt,He.condition.end).line;if(ht===He.whenTrue)return Et===Nt;{let Lt=ue(He.whenTrue,Kt).line,kt=Vl(Kt,He.whenTrue.end).line;return Nt===Lt&&kt===Et}}return!1}n.childIsUnindentedBranchOfConditionalExpression=Be;function Fe(He,ht,Et,Kt){if(SB(He)){if(!He.arguments)return!1;let Nt=be(He.arguments,Dr=>Dr.pos===ht.pos);if(!Nt)return!1;let Lt=He.arguments.indexOf(Nt);if(Lt===0)return!1;let kt=He.arguments[Lt-1],Zt=Vl(Kt,kt.getEnd()).line;if(Et===Zt)return!0}return!1}n.argumentStartsOnSameLineAsPreviousArgument=Fe;function Ne(He,ht){return He.parent&&De(He.getStart(ht),He.getEnd(),He.parent,ht)}n.getContainingList=Ne;function Me(He,ht,Et){return ht&&De(He,He,ht,Et)}function De(He,ht,Et,Kt){switch(Et.kind){case 183:return Nt(Et.typeArguments);case 210:return Nt(Et.properties);case 209:return Nt(Et.elements);case 187:return Nt(Et.members);case 262:case 218:case 219:case 174:case 173:case 179:case 176:case 185:case 180:return Nt(Et.typeParameters)||Nt(Et.parameters);case 177:return Nt(Et.parameters);case 263:case 231:case 264:case 265:case 345:return Nt(Et.typeParameters);case 214:case 213:return Nt(Et.typeArguments)||Nt(Et.arguments);case 261:return Nt(Et.declarations);case 275:case 279:return Nt(Et.elements);case 206:case 207:return Nt(Et.elements)}function Nt(Lt){return Lt&&V_e(lt(Et,Lt,Kt),He,ht)?Lt:void 0}}function lt(He,ht,Et){let Kt=He.getChildren(Et);for(let Nt=1;Nt=0&&ht=0;kt--){if(He[kt].kind===28)continue;if(Et.getLineAndCharacterOfPosition(He[kt].end).line!==Lt.line)return nt(Lt,Et,Kt);Lt=ue(He[kt],Et)}return-1}function nt(He,ht,Et){let Kt=ht.getPositionOfLineAndCharacter(He.line,0);return it(Kt,Kt+He.character,ht,Et)}function qe(He,ht,Et,Kt){let Nt=0,Lt=0;for(let kt=He;ktPls});var Wls="providePostPasteEdits";function Pls(n,c,u,d,I,h,b,R){return{edits:Ao.ChangeTracker.with({host:I,formatContext:b,preferences:h},V=>Ols(n,c,u,d,I,h,b,R,V)),fixId:Wls}}function Ols(n,c,u,d,I,h,b,R,N){let V;c.length!==u.length&&(V=c.length===1?c:[c.join(` +`)]);let P=[],Q=n.text;for(let te=u.length-1;te>=0;te--){let{pos:re,end:ue}=u[te];Q=V?Q.slice(0,re)+V[0]+Q.slice(ue):Q.slice(0,re)+c[te]+Q.slice(ue)}w.checkDefined(I.runWithTemporaryFileUpdate).call(I,n.fileName,Q,(te,re,ue)=>{let Ae=p0.createImportAdder(ue,te,h,I);if(d?.range){w.assert(d.range.length===c.length),d.range.forEach(Fe=>{let Ne=d.file.statements,Me=ke(Ne,lt=>lt.end>Fe.pos);if(Me===-1)return;let De=ke(Ne,lt=>lt.end>=Fe.end,Me);De!==-1&&Fe.end<=Ne[De].getStart()&&De--,P.push(...Ne.slice(Me,De===-1?Ne.length:De+1))});let de=BFe(d.file,P,re.getTypeChecker(),uZt(ue,P,re.getTypeChecker()));w.assertIsDefined(re);let Be=!Zje(n.fileName,re,I,!!d.file.commonJsModuleIndicator);tZt(d.file,de.targetFileImportsFromOldFile,N,Be),AZt(d.file,de.oldImportsNeededByTargetFile,de.targetFileImportsFromOldFile,re.getTypeChecker(),te,Ae)}else{let de={sourceFile:ue,program:re,cancellationToken:R,host:I,preferences:h,formatContext:b};hu(ue,function Be(Fe){sr(Fe)&&!re?.getTypeChecker().resolveName(Fe.text,Fe,-1,!1)&&Ae.addImportForUnresolvedIdentifier(de,Fe,!0),Fe.forEachChild(Be)})}Ae.writeFixes(N,P2(d?d.file:n,h))}),u.forEach((te,re)=>{N.replaceRangeWithText(n,{pos:te.pos,end:te.end},V?V[0]:c[re])})}var fHr={};o(fHr,{ANONYMOUS:()=>Sje,AccessFlags:()=>Xy,AssertionLevel:()=>yl,AssignmentDeclarationKind:()=>$T,AssignmentKind:()=>jRe,Associativity:()=>iDe,BreakpointResolver:()=>vze,BuilderFileEmit:()=>ekt,BuilderProgramKind:()=>akt,BuilderState:()=>gT,CallHierarchy:()=>o7,CharacterCodes:()=>lG,CheckFlags:()=>QI,CheckMode:()=>X8e,ClassificationType:()=>k7e,ClassificationTypeNames:()=>dGt,CommentDirectiveType:()=>vn,Comparison:()=>B,CompletionInfoFlags:()=>oGt,CompletionTriggerKind:()=>D7e,Completions:()=>A7,ContainerFlags:()=>NDt,ContextFlags:()=>mv,Debug:()=>w,DiagnosticCategory:()=>h1,Diagnostics:()=>Z,DocumentHighlights:()=>hFe,ElementFlags:()=>jh,EmitFlags:()=>b1,EmitHint:()=>Uy,EmitOnly:()=>hg,EndOfLineState:()=>lGt,ExitStatus:()=>nI,ExportKind:()=>uFt,Extension:()=>y1,ExternalEmitHelpers:()=>ES,FileIncludeKind:()=>So,FilePreprocessingDiagnosticsKind:()=>Ig,FileSystemEntryKind:()=>z_,FileWatcherEventKind:()=>Xw,FindAllReferences:()=>Yp,FlattenLevel:()=>rxt,FlowFlags:()=>Wr,ForegroundColorEscapeSequences:()=>Xxt,FunctionFlags:()=>tDe,GeneratedIdentifierFlags:()=>pc,GetLiteralTextFlags:()=>nce,GoToDefinition:()=>zte,HighlightSpanKind:()=>iGt,IdentifierNameMap:()=>Ste,IdentifierNameMultiMap:()=>KDt,ImportKind:()=>lFt,ImportsNotUsedAsValues:()=>Yw,IndentStyle:()=>sGt,IndexFlags:()=>fy,IndexKind:()=>SE,InferenceFlags:()=>_v,InferencePriority:()=>Mw,InlayHintKind:()=>nGt,InlayHints:()=>Iqe,InternalEmitFlags:()=>wE,InternalSymbolName:()=>gA,IntersectionFlags:()=>qT,InvalidatedProjectKind:()=>Dkt,JSDocParsingMode:()=>yx,JsDoc:()=>yP,JsTyping:()=>GN,JsxEmit:()=>pp,JsxFlags:()=>hS,JsxReferenceKind:()=>_S,LanguageFeatureMinimumTarget:()=>TE,LanguageServiceMode:()=>tGt,LanguageVariant:()=>tN,LexicalEnvironmentFlags:()=>rN,ListFormat:()=>yv,LogLevel:()=>ie,MapCode:()=>Cqe,MemberOverrideStatus:()=>AC,ModifierFlags:()=>G0,ModuleDetectionKind:()=>Hw,ModuleInstanceState:()=>wDt,ModuleKind:()=>qh,ModuleResolutionKind:()=>xb,ModuleSpecifierEnding:()=>UDe,NavigateTo:()=>xFt,NavigationBar:()=>GFt,NewLineKind:()=>bS,NodeBuilderFlags:()=>Ow,NodeCheckFlags:()=>WA,NodeFactoryFlags:()=>The,NodeFlags:()=>vE,NodeResolutionFeatures:()=>fDt,ObjectFlags:()=>Wf,OperationCanceledException:()=>os,OperatorPrecedence:()=>sDe,OrganizeImports:()=>bP,OrganizeImportsMode:()=>R7e,OuterExpressionKinds:()=>$h,OutliningElementsCollector:()=>_qe,OutliningSpanKind:()=>aGt,OutputFileType:()=>cGt,PackageJsonAutoImportPreference:()=>eGt,PackageJsonDependencyGroup:()=>$kt,PatternMatchKind:()=>Xje,PollingInterval:()=>Va,PollingWatchKind:()=>p2,PragmaKindFlags:()=>bv,PrivateIdentifierKind:()=>Dhe,ProcessLevel:()=>cxt,ProgramUpdateLevel:()=>Oxt,QuotePreference:()=>LGt,RegularExpressionFlags:()=>at,RelationComparisonResult:()=>C1,Rename:()=>iZe,ScriptElementKind:()=>gGt,ScriptElementKindModifier:()=>AGt,ScriptKind:()=>eN,ScriptSnapshot:()=>SGe,ScriptTarget:()=>kb,SemanticClassificationFormat:()=>rGt,SemanticMeaning:()=>pGt,SemicolonPreference:()=>x7e,SignatureCheckMode:()=>J8e,SignatureFlags:()=>Jy,SignatureHelp:()=>y0e,SignatureInfo:()=>$xt,SignatureKind:()=>yS,SmartSelectionRange:()=>Eqe,SnippetKind:()=>Bh,StatisticType:()=>Mkt,StructureIsReused:()=>Af,SymbolAccessibility:()=>j_,SymbolDisplay:()=>MZ,SymbolDisplayPartKind:()=>TGe,SymbolFlags:()=>d2,SymbolFormatFlags:()=>m1,SyntaxKind:()=>A2,SyntheticSymbolKind:()=>Qw,Ternary:()=>FR,ThrottledCancellationToken:()=>MZt,TokenClass:()=>uGt,TokenFlags:()=>$t,TransformFlags:()=>Gb,TypeFacts:()=>Y8e,TypeFlags:()=>dm,TypeFormatFlags:()=>Hy,TypeMapKind:()=>hv,TypePredicateKind:()=>zp,TypeReferenceSerializationKind:()=>py,UnionReduction:()=>Db,UpToDateStatusType:()=>Bkt,VarianceFlags:()=>Yy,Version:()=>Dn,VersionRange:()=>Jc,WatchDirectoryFlags:()=>F0,WatchDirectoryKind:()=>_1,WatchFileKind:()=>An,WatchLogLevel:()=>Mxt,WatchType:()=>_m,accessPrivateIdentifier:()=>ext,addDisposableResourceHelper:()=>Oxe,addEmitFlags:()=>JS,addEmitHelper:()=>sM,addEmitHelpers:()=>BN,addInternalEmitFlags:()=>rM,addNodeFactoryPatcher:()=>Nle,addObjectAllocatorPatcher:()=>IKe,addRange:()=>ai,addRelatedInfo:()=>tg,addSyntheticLeadingComment:()=>a4,addSyntheticTrailingComment:()=>xle,addToSeen:()=>D2,advancedAsyncSuperHelper:()=>jS,affectsDeclarationPathOptionDeclarations:()=>ZRt,affectsEmitOptionDeclarations:()=>FRt,allKeysStartWithDot:()=>Rke,altDirectorySeparator:()=>dC,and:()=>gh,append:()=>Yr,appendIfUnique:()=>og,arrayFrom:()=>on,arrayIsEqualTo:()=>Cn,arrayIsHomogeneous:()=>nxe,arrayIsSorted:()=>nn,arrayOf:()=>ag,arrayReverseIterator:()=>Lu,arrayToMap:()=>lA,arrayToMultiMap:()=>To,arrayToNumericMap:()=>XA,arraysEqual:()=>Je,assertType:()=>Nb,assign:()=>Eo,assignHelper:()=>yxe,asyncDelegator:()=>Exe,asyncGeneratorHelper:()=>bxe,asyncSuperHelper:()=>Vle,asyncValues:()=>Bxe,attachFileToDiagnostics:()=>DZ,awaitHelper:()=>F6,awaiterHelper:()=>Sxe,base64decode:()=>EDe,base64encode:()=>u6,binarySearch:()=>Vg,binarySearchKey:()=>lf,bindSourceFile:()=>RDt,breakIntoCharacterSpans:()=>BFt,breakIntoWordSpans:()=>vFt,buildLinkParts:()=>XGt,buildOpts:()=>$he,buildOverload:()=>mHr,bundlerModuleNameResolver:()=>IDt,canBeConvertedToAsync:()=>qje,canHaveDecorators:()=>IM,canHaveExportModifier:()=>Uee,canHaveFlowNode:()=>dee,canHaveIllegalDecorators:()=>t8e,canHaveIllegalModifiers:()=>IRt,canHaveIllegalType:()=>rxr,canHaveIllegalTypeParameters:()=>fRt,canHaveJSDoc:()=>pee,canHaveLocals:()=>Nv,canHaveModifiers:()=>tw,canHaveSymbol:()=>v2,canIncludeBindAndCheckDiagnsotics:()=>Jee,canJsonReportNoInputFiles:()=>qle,canProduceDiagnostics:()=>Hke,canUsePropertyAccess:()=>yhe,canWatchAffectingLocation:()=>fkt,canWatchAtTypes:()=>pkt,canWatchDirectoryOrFile:()=>cGe,cartesianProduct:()=>Bf,cast:()=>ps,chainBundle:()=>uT,chainDiagnosticMessages:()=>ou,changeAnyExtension:()=>w1,changeCompilerHostLikeToUseCache:()=>Cue,changeExtension:()=>NG,changeFullExtension:()=>Cy,changesAffectModuleResolution:()=>NB,changesAffectingProgramStructure:()=>D$,characterToRegularExpressionFlag:()=>pA,childIsDecorated:()=>Q8,classElementOrClassElementParameterIsDecorated:()=>lme,classHasClassThisAssignment:()=>c6e,classHasDeclaredOrExplicitlyAssignedName:()=>l6e,classHasExplicitlyAssignedName:()=>Oke,classOrConstructorParameterIsDecorated:()=>Gx,classPrivateFieldGetHelper:()=>Vxe,classPrivateFieldInHelper:()=>Pxe,classPrivateFieldSetHelper:()=>Wxe,classicNameResolver:()=>vDt,classifier:()=>JZt,cleanExtendedConfigCache:()=>qke,clear:()=>Ur,clearMap:()=>Y0,clearSharedExtendedConfigFileWatcher:()=>b6e,climbPastPropertyAccess:()=>DGe,climbPastPropertyOrElementAccess:()=>mGt,clone:()=>Wd,cloneCompilerOptions:()=>q7e,closeFileWatcher:()=>xB,closeFileWatcherOf:()=>VB,codefix:()=>p0,collapseTextChangeRangesAcrossMultipleVersions:()=>pt,collectExternalModuleInfo:()=>i6e,combine:()=>Vs,combinePaths:()=>Do,commandLineOptionOfCustomType:()=>ORt,commentPragmas:()=>nN,commonOptionsWithBuild:()=>uke,commonPackageFolders:()=>YDe,compact:()=>Vn,compareBooleans:()=>DA,compareDataObjects:()=>Kce,compareDiagnostics:()=>C6,compareDiagnosticsSkipRelatedInformation:()=>tle,compareEmitHelpers:()=>Fle,compareNumberOfDirectorySeparators:()=>Yee,comparePaths:()=>dh,comparePathsCaseInsensitive:()=>pC,comparePathsCaseSensitive:()=>Jw,comparePatternKeys:()=>O8e,compareProperties:()=>Ll,compareStringsCaseInsensitive:()=>fs,compareStringsCaseInsensitiveEslintCompatible:()=>go,compareStringsCaseSensitive:()=>Ro,compareStringsCaseSensitiveUI:()=>Li,compareTextSpans:()=>Pp,compareValues:()=>Jl,compileOnSaveCommandLineOption:()=>cke,compilerOptionsAffectDeclarationPath:()=>QDe,compilerOptionsAffectEmit:()=>ole,compilerOptionsAffectSemanticDiagnostics:()=>ODe,compilerOptionsDidYouMeanDiagnostics:()=>pke,compilerOptionsIndicateEsModules:()=>sje,compose:()=>Nm,computeCommonSourceDirectoryOfFilenames:()=>Hxt,computeLineAndCharacterOfPosition:()=>Mp,computeLineOfPosition:()=>zy,computeLineStarts:()=>fc,computePositionOfLineAndCharacter:()=>Vu,computeSignature:()=>ckt,computeSignatureWithDiagnostics:()=>H6e,computeSuggestionDiagnostics:()=>Kje,computedOptions:()=>GC,concatenate:()=>vi,concatenateDiagnosticMessageChains:()=>LDe,configDirTemplateSubstitutionOptions:()=>WRt,configDirTemplateSubstitutionWatchOptions:()=>PRt,consumesNodeCoreModules:()=>lFe,contains:()=>Ue,containsIgnoredPath:()=>w6,containsObjectRestOrSpread:()=>Khe,containsParseError:()=>UR,containsPath:()=>vg,convertCompilerOptionsForTelemetry:()=>nDt,convertCompilerOptionsFromJson:()=>Akr,convertJsonOption:()=>h4,convertToBase64:()=>Hce,convertToJson:()=>r_e,convertToObject:()=>jRt,convertToOptionsWithAbsolutePaths:()=>mke,convertToRelativePath:()=>RE,convertToTSConfig:()=>E8e,convertTypeAcquisitionFromJson:()=>dkr,copyComments:()=>v4,copyEntries:()=>S8,copyLeadingComments:()=>Qte,copyProperties:()=>Ps,copyTrailingAsLeadingComments:()=>j_e,copyTrailingComments:()=>xue,couldStartTrivia:()=>oN,countWhere:()=>ft,createAbstractBuilder:()=>IFr,createAccessorPropertyBackingField:()=>i8e,createAccessorPropertyGetRedirector:()=>BRt,createAccessorPropertySetRedirector:()=>vRt,createBaseNodeFactory:()=>gxe,createBinaryExpressionTrampoline:()=>ske,createBindingHelper:()=>Lle,createBuildInfo:()=>Uke,createBuilderProgram:()=>Y6e,createBuilderProgramUsingProgramBuildInfo:()=>Akt,createBuilderStatusReporter:()=>CGe,createCacheWithRedirects:()=>k8e,createCacheableExportInfoMap:()=>Lje,createCachedDirectoryStructureHost:()=>jke,createClassNamedEvaluationHelperBlock:()=>axt,createClassThisAssignmentBlock:()=>sxt,createClassifier:()=>KZr,createCommentDirectivesMap:()=>rce,createCompilerDiagnostic:()=>If,createCompilerDiagnosticForInvalidCustomType:()=>QRt,createCompilerDiagnosticFromMessageChain:()=>ele,createCompilerHost:()=>Yxt,createCompilerHostFromProgramHost:()=>g7e,createCompilerHostWorker:()=>$ke,createDetachedDiagnostic:()=>J5,createDiagnosticCollection:()=>BG,createDiagnosticForFileFromMessageChain:()=>ne,createDiagnosticForNode:()=>Js,createDiagnosticForNodeArray:()=>M3,createDiagnosticForNodeArrayFromMessageChain:()=>ZX,createDiagnosticForNodeFromMessageChain:()=>ZS,createDiagnosticForNodeInSourceFile:()=>Wb,createDiagnosticForRange:()=>ze,createDiagnosticMessageChainFromDiagnostic:()=>Ie,createDiagnosticReporter:()=>q6,createDocumentPositionMapper:()=>JDt,createDocumentRegistry:()=>dFt,createDocumentRegistryInternal:()=>Mje,createEmitAndSemanticDiagnosticsBuilderProgram:()=>K6e,createEmitHelperFactory:()=>xhe,createEmptyExports:()=>Qhe,createEvaluator:()=>vhe,createExpressionForJsxElement:()=>cRt,createExpressionForJsxFragment:()=>lRt,createExpressionForObjectLiteralElementLike:()=>uRt,createExpressionForPropertyName:()=>KKe,createExpressionFromEntityName:()=>Mhe,createExternalHelpersImportDeclarationIfNeeded:()=>qKe,createFileDiagnostic:()=>Cm,createFileDiagnosticFromMessageChain:()=>Z8,createFlowNode:()=>oD,createForOfBindingStatement:()=>UKe,createFutureSourceFile:()=>CFe,createGetCanonicalFileName:()=>rA,createGetIsolatedDeclarationErrors:()=>Dxt,createGetSourceFile:()=>w6e,createGetSymbolAccessibilityDiagnosticForNode:()=>ZZ,createGetSymbolAccessibilityDiagnosticForNodeName:()=>Rxt,createGetSymbolWalker:()=>DDt,createIncrementalCompilerHost:()=>IGe,createIncrementalProgram:()=>Ekt,createJsxFactoryExpression:()=>JKe,createLanguageService:()=>HZt,createLanguageServiceSourceFile:()=>FFe,createMemberAccessForPropertyName:()=>C4,createModeAwareCache:()=>yte,createModeAwareCacheKey:()=>rue,createModuleNotFoundChain:()=>RX,createModuleResolutionCache:()=>bte,createModuleResolutionLoader:()=>F6e,createModuleResolutionLoaderUsingGlobalCache:()=>hkt,createModuleSpecifierResolutionHost:()=>r7,createMultiMap:()=>ec,createNameResolver:()=>x6,createNodeConverters:()=>$ee,createNodeFactory:()=>pV,createOptionNameMap:()=>Ake,createOverload:()=>Zqe,createPackageJsonImportFilter:()=>Mte,createPackageJsonInfo:()=>Nje,createParenthesizerRules:()=>Axe,createPatternMatcher:()=>mFt,createPrinter:()=>wV,createPrinterWithDefaults:()=>Wxt,createPrinterWithRemoveComments:()=>b4,createPrinterWithRemoveCommentsNeverAsciiEscape:()=>Pxt,createPrinterWithRemoveCommentsOmitTrailingSemicolon:()=>Kke,createProgram:()=>v_e,createProgramHost:()=>A7e,createPropertyNameNodeForIdentifierOrLiteral:()=>yle,createQueue:()=>RA,createRange:()=>Z1,createRedirectedBuilderProgram:()=>U6e,createResolutionCache:()=>z6e,createRuntimeTypeSerializer:()=>dxt,createScanner:()=>Ft,createSemanticDiagnosticsBuilderProgram:()=>fFr,createSet:()=>Kd,createSolutionBuilder:()=>Tkt,createSolutionBuilderHost:()=>Skt,createSolutionBuilderWithWatch:()=>Nkt,createSolutionBuilderWithWatchHost:()=>wkt,createSortedArray:()=>jr,createSourceFile:()=>M6,createSourceMapGenerator:()=>ODt,createSourceMapSource:()=>kKe,createSuperAccessVariableStatement:()=>Mke,createSymbolTable:()=>xu,createSymlinkCache:()=>ihe,createSyntacticTypeNodeBuilder:()=>jkt,createSystemWatchFunctions:()=>wh,createTextChange:()=>Q_e,createTextChangeFromStartLength:()=>YGe,createTextChangeRange:()=>Ce,createTextRangeFromNode:()=>tje,createTextRangeFromSpan:()=>HGe,createTextSpan:()=>Ed,createTextSpanFromBounds:()=>Pd,createTextSpanFromNode:()=>By,createTextSpanFromRange:()=>NV,createTextSpanFromStringLiteralLikeContent:()=>eje,createTextWriter:()=>See,createTokenRange:()=>Jce,createTypeChecker:()=>WDt,createTypeReferenceDirectiveResolutionCache:()=>wke,createTypeReferenceResolutionLoader:()=>eGe,createWatchCompilerHost:()=>SFr,createWatchCompilerHostOfConfigFile:()=>d7e,createWatchCompilerHostOfFilesAndCompilerOptions:()=>p7e,createWatchFactory:()=>u7e,createWatchHost:()=>l7e,createWatchProgram:()=>f7e,createWatchStatusReporter:()=>$6e,createWriteFileMeasuringIO:()=>T6e,declarationNameToString:()=>kd,decodeMappings:()=>t6e,decodedTextSpanIntersectsWith:()=>t0,decorateHelper:()=>G6,deduplicate:()=>NA,defaultIncludeSpec:()=>S8e,defaultInitCompilerOptions:()=>I8e,defaultMaximumTruncationLength:()=>b5,diagnosticCategoryName:()=>zh,diagnosticToString:()=>vM,diagnosticsEqualityComparer:()=>rle,directoryProbablyExists:()=>G1,directorySeparator:()=>$u,displayPart:()=>Yb,displayPartsToString:()=>c0e,disposeEmitNodes:()=>Rle,disposeResourcesHelper:()=>Qxe,documentSpansEqual:()=>Aje,dumpTracingLegend:()=>gf,elementAt:()=>ts,elideNodes:()=>ERt,emitComments:()=>fDe,emitDetachedComments:()=>IDe,emitFiles:()=>_6e,emitFilesAndReportErrors:()=>AGe,emitFilesAndReportErrorsAndGetExitStatus:()=>c7e,emitModuleKindIsNonNodeESM:()=>ile,emitNewLineBeforeLeadingCommentOfPosition:()=>Zme,emitNewLineBeforeLeadingComments:()=>dDe,emitNewLineBeforeLeadingCommentsOfPosition:()=>pDe,emitResolverSkipsTypeChecking:()=>h6e,emitSkippedWithNoDiagnostics:()=>O6e,emptyArray:()=>v,emptyFileSystemEntries:()=>dhe,emptyMap:()=>k,emptyOptions:()=>Vv,emptySet:()=>T,endsWith:()=>fl,ensurePathIsNonModuleName:()=>jy,ensureScriptKind:()=>dle,ensureTrailingDirectorySeparator:()=>dA,entityNameToString:()=>r0,enumerateInsertsAndDeletes:()=>OI,equalOwnProperties:()=>eA,equateStringsCaseInsensitive:()=>op,equateStringsCaseSensitive:()=>um,equateValues:()=>Qg,esDecorateHelper:()=>hxe,escapeJsxAttributeString:()=>Rme,escapeLeadingUnderscores:()=>Dd,escapeNonAsciiString:()=>xce,escapeSnippetText:()=>dV,escapeString:()=>rT,escapeTemplateSubstitution:()=>Tme,evaluatorResult:()=>KC,every:()=>he,executeCommandLine:()=>aZr,expandPreOrPostfixIncrementOrDecrementExpression:()=>$xe,explainFiles:()=>n7e,explainIfFileIsRedirectAndImpliedFormat:()=>i7e,exportAssignmentIsAlias:()=>U3,exportStarHelper:()=>Lxe,expressionResultIsUnused:()=>sxe,extend:()=>EA,extendsHelper:()=>wxe,extensionFromPath:()=>B6,extensionIsTS:()=>Cle,extensionsNotSupportingExtensionlessResolution:()=>Mee,externalHelpersModuleNameText:()=>Dx,factory:()=>_e,fileExtensionIs:()=>Ad,fileExtensionIsOneOf:()=>fp,fileIncludeReasonToDiagnostics:()=>a7e,fileShouldUseJavaScriptRequire:()=>Zje,filter:()=>Gt,filterMutate:()=>er,filterSemanticDiagnostics:()=>iGe,find:()=>be,findAncestor:()=>Si,findBestPatternMatch:()=>uy,findChildOfKind:()=>Qd,findComputedPropertyNameCacheAssignment:()=>oke,findConfigFile:()=>v6e,findConstructorDeclaration:()=>jee,findContainingList:()=>ZGe,findDiagnosticForNode:()=>iFt,findFirstNonJsxWhitespaceToken:()=>EGt,findIndex:()=>ke,findLast:()=>Te,findLastIndex:()=>x,findListItemInfo:()=>bGt,findMap:()=>et,findModifier:()=>Wte,findNextToken:()=>EM,findPackageJson:()=>rFt,findPackageJsons:()=>Tje,findPrecedingMatchingToken:()=>QGe,findPrecedingToken:()=>ym,findSuperStatementIndexPath:()=>Vke,findTokenOnLeftOfPosition:()=>WGe,findUseStrictPrologue:()=>zKe,first:()=>qs,firstDefined:()=>le,firstDefinedIterator:()=>ae,firstIterator:()=>kl,firstOrOnly:()=>kje,firstOrUndefined:()=>$i,firstOrUndefinedIterator:()=>ka,fixupCompilerOptions:()=>$je,flatMap:()=>Fr,flatMapIterator:()=>Or,flatMapToMutable:()=>$r,flatten:()=>or,flattenCommaList:()=>SRt,flattenDestructuringAssignment:()=>y4,flattenDestructuringBinding:()=>hM,flattenDiagnosticMessageText:()=>kN,forEach:()=>X,forEachAncestor:()=>x$,forEachAncestorDirectory:()=>sI,forEachChild:()=>hu,forEachChildRecursively:()=>Q6,forEachEmittedFile:()=>f6e,forEachEnclosingBlockScopeContainer:()=>J$,forEachEntry:()=>UC,forEachExternalModuleToImportFrom:()=>Wje,forEachImportClauseDeclaration:()=>JRe,forEachKey:()=>eT,forEachLeadingCommentRange:()=>Sf,forEachNameInAccessChainWalkingLeft:()=>kDe,forEachNameOfDefaultExport:()=>Pje,forEachPropertyAssignment:()=>LX,forEachResolvedProjectReference:()=>L6e,forEachReturnStatement:()=>kx,forEachRight:()=>U,forEachTrailingCommentRange:()=>bx,forEachTsConfigPropArray:()=>j$,forEachUnique:()=>pje,forEachYieldExpression:()=>RRe,forSomeAncestorDirectory:()=>DDe,formatColorAndReset:()=>_M,formatDiagnostic:()=>N6e,formatDiagnostics:()=>JGr,formatDiagnosticsWithColorAndContext:()=>Kxt,formatGeneratedName:()=>aP,formatGeneratedNamePart:()=>Cte,formatLocation:()=>R6e,formatMessage:()=>U5,formatStringFromArgs:()=>IN,formatting:()=>zC,fullTripleSlashAMDReferencePathRegEx:()=>NRe,fullTripleSlashReferencePathRegEx:()=>TRe,generateDjb2Hash:()=>vh,generateTSConfig:()=>qRt,generatorHelper:()=>Gxe,getAdjustedReferenceLocation:()=>X7e,getAdjustedRenameLocation:()=>VGe,getAliasDeclarationFromName:()=>hme,getAllAccessorDeclarations:()=>Vx,getAllDecoratorsOfClass:()=>o6e,getAllDecoratorsOfClassElement:()=>Pke,getAllJSDocTags:()=>A8,getAllJSDocTagsOfKind:()=>YCe,getAllKeys:()=>Xu,getAllProjectOutputs:()=>Jke,getAllSuperTypeNodes:()=>$8,getAllowJSCompilerOption:()=>wG,getAllowSyntheticDefaultImports:()=>K5,getAncestor:()=>bG,getAnyExtensionFromPath:()=>NE,getAreDeclarationMapsEnabled:()=>nle,getAssignedExpandoInitializer:()=>x5,getAssignedName:()=>u5,getAssignedNameOfIdentifier:()=>Aue,getAssignmentDeclarationKind:()=>mI,getAssignmentDeclarationPropertyAccessKind:()=>cee,getAssignmentTargetKind:()=>Fx,getAutomaticTypeDirectiveNames:()=>vke,getBaseFileName:()=>kA,getBinaryOperatorPrecedence:()=>Bee,getBuildInfo:()=>y6e,getBuildInfoFileVersionMap:()=>J6e,getBuildInfoText:()=>Lxt,getBuildOrderFromAnyBuildOrder:()=>N_e,getBuilderCreationParameters:()=>oGe,getBuilderFileEmit:()=>TV,getCanonicalDiagnostic:()=>Qt,getCheckFlags:()=>cI,getClassExtendsHeritageElement:()=>nV,getClassLikeDeclarationOfSymbol:()=>kB,getCombinedLocalAndExportSymbolFlags:()=>Q5,getCombinedModifierFlags:()=>Rh,getCombinedNodeFlags:()=>$y,getCombinedNodeFlagsAlwaysIncludeJSDoc:()=>E2,getCommentRange:()=>US,getCommonSourceDirectory:()=>Iue,getCommonSourceDirectoryOfConfig:()=>z6,getCompilerOptionValue:()=>ale,getCompilerOptionsDiffValue:()=>zRt,getConditions:()=>BV,getConfigFileParsingDiagnostics:()=>yM,getConstantValue:()=>l4,getContainerFlags:()=>M8e,getContainerNode:()=>B4,getContainingClass:()=>Km,getContainingClassExcludingClassDecorators:()=>fce,getContainingClassStaticBlock:()=>VRe,getContainingFunction:()=>Ob,getContainingFunctionDeclaration:()=>pce,getContainingFunctionOrClassStaticBlock:()=>z$,getContainingNodeArray:()=>oxe,getContainingObjectLiteralElement:()=>l0e,getContextualTypeFromParent:()=>tFe,getContextualTypeFromParentOrAncestorTypeNode:()=>LGe,getCurrentTime:()=>T_e,getDeclarationDiagnostics:()=>xxt,getDeclarationEmitExtensionForPath:()=>Fce,getDeclarationEmitOutputFilePath:()=>lDe,getDeclarationEmitOutputFilePathWorker:()=>Gce,getDeclarationFileExtension:()=>c8e,getDeclarationFromName:()=>q8,getDeclarationModifierFlagsFromSymbol:()=>V1,getDeclarationOfKind:()=>qd,getDeclarationsOfKind:()=>zae,getDeclaredExpandoInitializer:()=>J8,getDecorators:()=>Kw,getDefaultCompilerOptions:()=>GFe,getDefaultFormatCodeSettings:()=>wGe,getDefaultLibFileName:()=>Cg,getDefaultLibFilePath:()=>YZt,getDefaultLikeExportInfo:()=>mFe,getDefaultLikeExportNameFromDeclaration:()=>gFe,getDiagnosticText:()=>lb,getDiagnosticsWithinSpan:()=>sFt,getDirectoryPath:()=>oa,getDirectoryToWatchFailedLookupLocation:()=>j6e,getDirectoryToWatchFailedLookupLocationFromTypeRoot:()=>Ckt,getDocumentPositionMapper:()=>Uje,getDocumentSpansEqualityComparer:()=>dje,getESModuleInterop:()=>CN,getEditsForFileRename:()=>fFt,getEffectiveBaseTypeNode:()=>xv,getEffectiveConstraintOfTypeParameter:()=>jw,getEffectiveContainerForJSDocTemplateTag:()=>vce,getEffectiveImplementsTypeNodes:()=>YX,getEffectiveInitializer:()=>see,getEffectiveJSDocHost:()=>wZ,getEffectiveModifierFlags:()=>R_,getEffectiveModifierFlagsAlwaysIncludeJSDoc:()=>Oce,getEffectiveModifierFlagsNoCache:()=>hDe,getEffectiveReturnTypeNode:()=>nb,getEffectiveSetAccessorTypeAnnotationNode:()=>ADe,getEffectiveTypeAnnotationNode:()=>IC,getEffectiveTypeParameterDeclarations:()=>D1,getEffectiveTypeRoots:()=>tue,getElementOrPropertyAccessArgumentExpressionOrName:()=>K8,getElementOrPropertyAccessName:()=>zR,getElementsOfBindingOrAssignmentPattern:()=>Ite,getEmitDeclarations:()=>WE,getEmitFlags:()=>wg,getEmitHelpers:()=>kle,getEmitModuleDetectionKind:()=>VDe,getEmitModuleKind:()=>D_,getEmitModuleResolutionKind:()=>o0,getEmitScriptTarget:()=>sA,getEmitStandardClassFields:()=>rhe,getEnclosingBlockScopeContainer:()=>w2,getEnclosingContainer:()=>F8,getEncodedSemanticClassifications:()=>Oje,getEncodedSyntacticClassifications:()=>Qje,getEndLinePosition:()=>DX,getEntityNameFromTypeNode:()=>$$,getEntrypointsFromPackageJsonInfo:()=>V8e,getErrorCountForSummary:()=>uGe,getErrorSpanForNode:()=>Mi,getErrorSummaryText:()=>t7e,getEscapedTextOfIdentifierOrLiteral:()=>r6,getEscapedTextOfJsxAttributeName:()=>R6,getEscapedTextOfJsxNamespacedName:()=>x2,getExpandoInitializer:()=>vZ,getExportAssignmentExpression:()=>_me,getExportInfoMap:()=>t0e,getExportNeedsImportStarHelper:()=>UDt,getExpressionAssociativity:()=>Sme,getExpressionPrecedence:()=>EG,getExternalHelpersModuleName:()=>rke,getExternalModuleImportEqualsDeclarationExpression:()=>M8,getExternalModuleName:()=>k5,getExternalModuleNameFromDeclaration:()=>aDe,getExternalModuleNameFromPath:()=>xme,getExternalModuleNameLiteral:()=>O6,getExternalModuleRequireArgument:()=>gme,getFallbackOptions:()=>y_e,getFileEmitOutput:()=>qxt,getFileMatcherPatterns:()=>Ale,getFileNamesFromConfigSpecs:()=>$le,getFileWatcherEventKind:()=>Ev,getFilesInErrorForSummary:()=>gGe,getFirstConstructorWithBody:()=>pN,getFirstIdentifier:()=>sb,getFirstNonSpaceCharacterPosition:()=>KGt,getFirstProjectOutput:()=>m6e,getFixableErrorSpanExpression:()=>Dje,getFormatCodeSettingsForWriting:()=>fFe,getFullWidth:()=>NX,getFunctionFlags:()=>YI,getHeritageClause:()=>hee,getHostSignatureFromJSDoc:()=>SZ,getIdentifierAutoGenerate:()=>mxe,getIdentifierGeneratedImportReference:()=>ep,getIdentifierTypeArguments:()=>kZ,getImmediatelyInvokedFunctionExpression:()=>q9,getImpliedNodeFormatForFile:()=>B_e,getImpliedNodeFormatForFileWorker:()=>nGe,getImportNeedsImportDefaultHelper:()=>n6e,getImportNeedsImportStarHelper:()=>Zke,getIndentSize:()=>jX,getIndentString:()=>KX,getInferredLibraryNameResolveFrom:()=>rGe,getInitializedVariables:()=>p6,getInitializerOfBinaryExpression:()=>Bce,getInitializerOfBindingOrAssignmentElement:()=>Xhe,getInterfaceBaseTypeNodes:()=>e6,getInternalEmitFlags:()=>FE,getInvokedExpression:()=>P8,getIsolatedModules:()=>VE,getJSDocAugmentsTag:()=>g8,getJSDocClassTag:()=>ss,getJSDocCommentRanges:()=>ome,getJSDocCommentsAndTags:()=>pme,getJSDocDeprecatedTag:()=>Vb,getJSDocDeprecatedTagNoCache:()=>BB,getJSDocEnumTag:()=>pG,getJSDocHost:()=>tV,getJSDocImplementsTags:()=>Bx,getJSDocOverloadTags:()=>Ime,getJSDocOverrideTagNoCache:()=>R1,getJSDocParameterTags:()=>MR,getJSDocParameterTagsNoCache:()=>c8,getJSDocPrivateTag:()=>Za,getJSDocPrivateTagNoCache:()=>gc,getJSDocProtectedTag:()=>CA,getJSDocProtectedTagNoCache:()=>xd,getJSDocPublicTag:()=>Ko,getJSDocPublicTagNoCache:()=>$o,getJSDocReadonlyTag:()=>fm,getJSDocReadonlyTagNoCache:()=>N1,getJSDocReturnTag:()=>O9,getJSDocReturnType:()=>dX,getJSDocRoot:()=>HX,getJSDocSatisfiesExpressionType:()=>Ehe,getJSDocSatisfiesTag:()=>f$,getJSDocTags:()=>Tx,getJSDocTagsNoCache:()=>HCe,getJSDocTemplateTag:()=>MCe,getJSDocThisTag:()=>vx,getJSDocType:()=>wx,getJSDocTypeAliasName:()=>e8e,getJSDocTypeAssertionType:()=>Ule,getJSDocTypeParameterDeclarations:()=>Tee,getJSDocTypeParameterTags:()=>u8,getJSDocTypeParameterTagsNoCache:()=>A5,getJSDocTypeTag:()=>Sx,getJSXImplicitImportBase:()=>cle,getJSXRuntimeImport:()=>lle,getJSXTransformEnabled:()=>Oee,getKeyForCompilerOptions:()=>x8e,getLanguageVariant:()=>Vee,getLastChild:()=>zce,getLeadingCommentRanges:()=>Zb,getLeadingCommentRangesOfNode:()=>sme,getLeftmostAccessExpression:()=>Y5,getLeftmostExpression:()=>X5,getLibraryNameFromLibFileName:()=>V6e,getLineAndCharacterOfPosition:()=>Vl,getLineInfo:()=>e6e,getLineOfLocalPosition:()=>i6,getLineOfLocalPositionFromLineMap:()=>j3,getLineStartPositionForPosition:()=>Wv,getLineStarts:()=>Dc,getLinesBetweenPositionAndNextNonWhitespaceCharacter:()=>NDe,getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter:()=>TDe,getLinesBetweenPositions:()=>vv,getLinesBetweenRangeEndAndRangeStart:()=>Xme,getLinesBetweenRangeEndPositions:()=>wDe,getLiteralText:()=>V$,getLocalNameForExternalImport:()=>fte,getLocalSymbolForExportDefault:()=>l6,getLocaleSpecificMessage:()=>tu,getLocaleTimeString:()=>w_e,getMappedContextSpan:()=>fje,getMappedDocumentSpan:()=>zGe,getMappedLocation:()=>Nue,getMatchedFileSpec:()=>s7e,getMatchedIncludeSpec:()=>o7e,getMeaningFromDeclaration:()=>NGe,getMeaningFromLocation:()=>E4,getMembersOfDeclaration:()=>DRe,getModeForFileReference:()=>b_e,getModeForResolutionAtIndex:()=>jxt,getModeForUsageLocation:()=>x6e,getModifiedTime:()=>_d,getModifiers:()=>uN,getModuleInstanceState:()=>PG,getModuleNameStringLiteralAt:()=>S_e,getModuleSpecifierEndingPreference:()=>jDe,getModuleSpecifierResolverHost:()=>oje,getNameForExportedSymbol:()=>uFe,getNameFromImportAttribute:()=>Sle,getNameFromIndexInfo:()=>lce,getNameFromPropertyName:()=>H_e,getNameOfAccessExpression:()=>zme,getNameOfCompilerOptionValue:()=>B8e,getNameOfDeclaration:()=>Sl,getNameOfExpando:()=>Ame,getNameOfJSDocTypedef:()=>lN,getNameOfScriptTarget:()=>Pee,getNameOrArgument:()=>aee,getNameTable:()=>Bze,getNamesForExportedSymbol:()=>oFt,getNamespaceDeclarationNode:()=>QX,getNewLineCharacter:()=>F1,getNewLineKind:()=>e0e,getNewLineOrDefaultFromHost:()=>PZ,getNewTargetContainer:()=>PRe,getNextJSDocCommentLocation:()=>fme,getNodeChildren:()=>YKe,getNodeForGeneratedName:()=>Uhe,getNodeId:()=>od,getNodeKind:()=>bM,getNodeModifiers:()=>Sue,getNodeModulePathParts:()=>ble,getNonAssignedNameOfDeclaration:()=>Uw,getNonAssignmentOperatorForCompoundAssignment:()=>lue,getNonAugmentationDeclaration:()=>M$,getNonDecoratorTokenPosOfNode:()=>L$,getNormalizedAbsolutePath:()=>Qc,getNormalizedAbsolutePathWithoutRoot:()=>wS,getNormalizedPathComponents:()=>Ah,getObjectFlags:()=>ia,getOperator:()=>Dce,getOperatorAssociativity:()=>wme,getOperatorPrecedence:()=>Eee,getOptionFromName:()=>m8e,getOptionsForLibraryResolution:()=>G8e,getOptionsNameMap:()=>hte,getOrCreateEmitNode:()=>kh,getOrCreateExternalHelpersModuleNameIfNeeded:()=>pRt,getOrUpdate:()=>we,getOriginalNode:()=>Np,getOriginalNodeId:()=>Ey,getOriginalSourceFile:()=>rKe,getOutputDeclarationFileName:()=>Tte,getOutputDeclarationFileNameWorker:()=>I6e,getOutputExtension:()=>Xke,getOutputFileNames:()=>YGr,getOutputJSFileNameWorker:()=>C6e,getOutputPathsFor:()=>fue,getOutputPathsForBundle:()=>Yke,getOwnEmitOutputFilePath:()=>cDe,getOwnKeys:()=>Gl,getOwnValues:()=>us,getPackageJsonInfo:()=>vV,getPackageJsonTypesVersionsPaths:()=>Bke,getPackageJsonsVisibleToFile:()=>nFt,getPackageNameFromTypesPackageName:()=>sue,getPackageScopeForPath:()=>iue,getParameterSymbolFromJSDoc:()=>fee,getParameterTypeNode:()=>TKe,getParentNodeInSpan:()=>X_e,getParseTreeNode:()=>zc,getParsedCommandLineOfConfigFile:()=>e_e,getPathComponents:()=>dd,getPathComponentsRelativeTo:()=>m2,getPathFromPathComponents:()=>Iy,getPathUpdater:()=>Yje,getPathsBasePath:()=>Zce,getPatternFromSpec:()=>JDe,getPendingEmitKind:()=>xte,getPositionOfLineAndCharacter:()=>Ju,getPossibleGenericSignatures:()=>U7e,getPossibleOriginalInputExtensionForExtension:()=>uDe,getPossibleTypeArgumentsInfo:()=>K7e,getPreEmitDiagnostics:()=>XGr,getPrecedingNonSpaceCharacterPosition:()=>$Ge,getPrivateIdentifier:()=>a6e,getProperties:()=>s6e,getProperty:()=>Dt,getPropertyArrayElementValue:()=>LRe,getPropertyAssignmentAliasLikeExpression:()=>eDe,getPropertyNameForPropertyNameNode:()=>iV,getPropertyNameForUniqueESSymbol:()=>eKe,getPropertyNameFromType:()=>G2,getPropertyNameOfBindingOrAssignmentElement:()=>$Ke,getPropertySymbolFromBindingElement:()=>jGe,getPropertySymbolsFromContextualType:()=>ZFe,getQuoteFromPreference:()=>cje,getQuotePreference:()=>P2,getRangesWhere:()=>ua,getRefactorContextSpan:()=>n7,getReferencedFileLocation:()=>hue,getRegexFromPattern:()=>TG,getRegularExpressionForWildcard:()=>_6,getRegularExpressionsForWildcards:()=>ule,getRelativePathFromDirectory:()=>Ip,getRelativePathFromFile:()=>T1,getRelativePathToDirectoryOrUrl:()=>km,getRenameLocation:()=>K_e,getReplacementSpanForContextToken:()=>$7e,getResolutionDiagnostic:()=>M6e,getResolutionModeOverride:()=>Nte,getResolveJsonModule:()=>uV,getResolvePackageJsonExports:()=>the,getResolvePackageJsonImports:()=>mN,getResolvedExternalModuleName:()=>kce,getRestIndicatorOfBindingOrAssignmentElement:()=>nke,getRestParameterElementType:()=>ame,getRightMostAssignedExpression:()=>yG,getRootDeclaration:()=>PS,getRootDirectoryOfResolutionCache:()=>mkt,getRootLength:()=>t_,getRootPathSplitLength:()=>_Fr,getScriptKind:()=>_je,getScriptKindFromFileName:()=>ple,getScriptTargetFeatures:()=>D8,getSelectedEffectiveModifierFlags:()=>W5,getSelectedSyntacticModifierFlags:()=>CDe,getSemanticClassifications:()=>gFt,getSemanticJsxChildren:()=>JX,getSetAccessorTypeAnnotationNode:()=>Gme,getSetAccessorValueParameter:()=>qX,getSetExternalModuleIndicator:()=>m6,getShebang:()=>AG,getSingleInitializerOfVariableStatementOrPropertyDeclaration:()=>dme,getSingleVariableOfVariableStatement:()=>J3,getSnapshotText:()=>t7,getSnippetElement:()=>Gle,getSourceFileOfModule:()=>T8,getSourceFileOfNode:()=>ls,getSourceFilePathInNewDir:()=>Vce,getSourceFilePathInNewDirWorker:()=>Wce,getSourceFileVersionAsHashFromText:()=>dGe,getSourceFilesToEmit:()=>Lce,getSourceMapRange:()=>Px,getSourceMapper:()=>wFt,getSourceTextOfNodeFromSourceFile:()=>hG,getSpanOfTokenAtPosition:()=>Rr,getSpellingSuggestion:()=>Rd,getStartPositionOfLine:()=>gN,getStartPositionOfRange:()=>t4,getStartsOnNewLine:()=>DG,getStaticPropertiesAndClassStaticBlock:()=>Wke,getStrictOptionValue:()=>x_,getStringComparer:()=>ql,getSubPatternFromSpec:()=>gle,getSuperCallFromStatement:()=>Lke,getSuperContainer:()=>W8,getSupportedCodeFixes:()=>bze,getSupportedExtensions:()=>b6,getSupportedExtensionsWithJsonIfResolveJsonModule:()=>Hee,getSwitchedType:()=>vje,getSymbolId:()=>Gg,getSymbolNameForPrivateIdentifier:()=>yee,getSymbolParentOrFail:()=>AFe,getSymbolTarget:()=>yje,getSyntacticClassifications:()=>AFt,getSyntacticModifierFlags:()=>eD,getSyntacticModifierFlagsNoCache:()=>Pme,getSynthesizedDeepClone:()=>vd,getSynthesizedDeepCloneWithReplacements:()=>U_e,getSynthesizedDeepClones:()=>BM,getSynthesizedDeepClonesWithReplacements:()=>bje,getSyntheticLeadingComments:()=>nM,getSyntheticTrailingComments:()=>c4,getTargetLabel:()=>xGe,getTargetOfBindingOrAssignmentElement:()=>bV,getTemporaryModuleResolutionState:()=>nue,getTextOfConstantValue:()=>x8,getTextOfIdentifierOrLiteral:()=>N2,getTextOfJSDocComment:()=>pX,getTextOfJsxAttributeName:()=>YS,getTextOfJsxNamespacedName:()=>D6,getTextOfNode:()=>Nf,getTextOfNodeFromSourceText:()=>w5,getTextOfPropertyName:()=>j9,getThisContainer:()=>n0,getThisParameter:()=>sV,getTokenAtPosition:()=>Hc,getTokenPosOfNode:()=>xx,getTokenSourceMapRange:()=>FKe,getTouchingPropertyName:()=>ub,getTouchingToken:()=>Lte,getTrailingCommentRanges:()=>h2,getTrailingSemicolonDeferringWriter:()=>Dme,getTransformFlagsSubtreeExclusions:()=>F2,getTransformers:()=>Fxt,getTsBuildInfoEmitOutputFilePath:()=>LZ,getTsConfigObjectLiteralExpression:()=>V8,getTsConfigPropArrayElementValue:()=>dce,getTypeAnnotationNode:()=>gDe,getTypeArgumentOrTypeParameterList:()=>DGt,getTypeKeywordOfTypeOnlyImport:()=>gje,getTypeNode:()=>Cxe,getTypeNodeIfAccessible:()=>Gue,getTypeParameterFromJsDoc:()=>KRe,getTypeParameterOwner:()=>hr,getTypesPackageName:()=>Dke,getUILocale:()=>ra,getUniqueName:()=>S4,getUniqueSymbolId:()=>UGt,getUseDefineForClassFields:()=>Wee,getWatchErrorSummaryDiagnosticMessage:()=>e7e,getWatchFactory:()=>B6e,group:()=>Xl,groupBy:()=>Zf,guessIndentation:()=>Kae,handleNoEmitOptions:()=>Q6e,handleWatchOptionsConfigDirTemplateSubstitution:()=>hke,hasAbstractModifier:()=>cV,hasAccessorModifier:()=>OS,hasAmbientModifier:()=>Wme,hasChangesInResolutions:()=>G$,hasChildOfKind:()=>W_e,hasContextSensitiveParameters:()=>_le,hasDecorators:()=>LE,hasDocComment:()=>NGt,hasDynamicName:()=>$R,hasEffectiveModifier:()=>ib,hasEffectiveModifiers:()=>Lme,hasEffectiveReadonlyModifier:()=>s6,hasExtension:()=>S1,hasIndexSignature:()=>Bje,hasInferredType:()=>Tle,hasInitializer:()=>$w,hasInvalidEscape:()=>Nme,hasJSDocNodes:()=>_y,hasJSDocParameterTags:()=>dG,hasJSFileExtension:()=>hN,hasJsonModuleEmitEnabled:()=>sle,hasOnlyExpressionInitializer:()=>mG,hasOverrideModifier:()=>Pce,hasPossibleExternalModuleReference:()=>cce,hasProperty:()=>Qa,hasPropertyAccessExpressionWithName:()=>G_e,hasQuestionToken:()=>F5,hasRecordedExternalHelpers:()=>dRt,hasResolutionModeOverride:()=>uxe,hasRestParameter:()=>T$,hasScopeMarker:()=>Xae,hasStaticModifier:()=>CC,hasSyntacticModifier:()=>ya,hasSyntacticModifiers:()=>Vme,hasTSFileExtension:()=>z5,hasTabstop:()=>cxe,hasTrailingDirectorySeparator:()=>S_,hasType:()=>JC,hasTypeArguments:()=>KUe,hasZeroOrOneAsteriskCharacter:()=>nhe,helperString:()=>IV,hostGetCanonicalFileName:()=>Lx,hostUsesCaseSensitiveFileNames:()=>zX,idText:()=>oo,identifierIsThisKeyword:()=>Fme,identifierToKeywordKind:()=>QR,identity:()=>vl,identitySourceMapConsumer:()=>r6e,ignoreSourceNewlines:()=>Rhe,ignoredPaths:()=>Sh,importDefaultHelper:()=>Zxe,importFromModuleSpecifier:()=>OX,importStarHelper:()=>Ghe,indexOfAnyCharCode:()=>Xe,indexOfNode:()=>P3,indicesOf:()=>Yu,inferredTypesContainingFile:()=>mue,injectClassNamedEvaluationHelperBlockIfMissing:()=>Qke,injectClassThisAssignmentIfMissing:()=>oxt,insertImports:()=>uje,insertLeadingStatement:()=>qDr,insertSorted:()=>Gr,insertStatementAfterCustomPrologue:()=>EZ,insertStatementAfterStandardPrologue:()=>rme,insertStatementsAfterCustomPrologue:()=>N8,insertStatementsAfterStandardPrologue:()=>GS,intersperse:()=>pe,intrinsicTagNameToString:()=>Bhe,introducesArgumentsExoticObject:()=>GRe,inverseJsxOptionMap:()=>qhe,isAbstractConstructorSymbol:()=>RDe,isAbstractModifier:()=>gM,isAccessExpression:()=>mp,isAccessibilityModifier:()=>z7e,isAccessor:()=>zw,isAccessorModifier:()=>Xxe,isAliasSymbolDeclaration:()=>zUe,isAliasableExpression:()=>mee,isAmbientModule:()=>Yf,isAmbientPropertyDeclaration:()=>H$,isAnonymousFunctionDefinition:()=>n6,isAnyDirectorySeparator:()=>wp,isAnyImportOrBareOrAccessedRequire:()=>oce,isAnyImportOrReExport:()=>Q3,isAnyImportOrRequireStatement:()=>ace,isAnyImportSyntax:()=>_G,isAnySupportedFileExtension:()=>vKe,isApplicableVersionedTypesKey:()=>c_e,isArgumentExpressionOfElementAccess:()=>P7e,isArray:()=>Na,isArrayBindingElement:()=>k3,isArrayBindingOrAssignmentElement:()=>bX,isArrayBindingOrAssignmentPattern:()=>b$,isArrayBindingPattern:()=>Wu,isArrayLiteralExpression:()=>Cf,isArrayLiteralOrObjectLiteralDestructuringPattern:()=>WZ,isArrayTypeNode:()=>Ye,isArrowFunction:()=>Id,isAsExpression:()=>$S,isAssertClause:()=>UNt,isAssertEntry:()=>HDr,isAssertionExpression:()=>kE,isAssertsKeyword:()=>Lhe,isAssignmentDeclaration:()=>X8,isAssignmentExpression:()=>Im,isAssignmentOperator:()=>tD,isAssignmentPattern:()=>X9,isAssignmentTarget:()=>Zx,isAsteriskToken:()=>ate,isAsyncFunction:()=>t6,isAsyncModifier:()=>g4,isAutoAccessorPropertyDeclaration:()=>r_,isAwaitExpression:()=>Mb,isAwaitKeyword:()=>Ple,isBigIntLiteral:()=>q3,isBinaryExpression:()=>ro,isBinaryOperatorToken:()=>bRt,isBindableObjectDefinePropertyCall:()=>Y3,isBindableStaticAccessExpression:()=>eV,isBindableStaticElementAccessExpression:()=>Ece,isBindableStaticNameExpression:()=>X3,isBindingElement:()=>hl,isBindingElementOfBareOrAccessedRequire:()=>MRe,isBindingName:()=>hZ,isBindingOrAssignmentElement:()=>Hae,isBindingOrAssignmentPattern:()=>h5,isBindingPattern:()=>fu,isBlock:()=>hc,isBlockLike:()=>Yte,isBlockOrCatchScoped:()=>W$,isBlockScope:()=>Y$,isBlockScopedContainerTopLevel:()=>k8,isBooleanLiteral:()=>m5,isBreakOrContinueStatement:()=>D3,isBreakStatement:()=>nP,isBuild:()=>Hkt,isBuildInfoFile:()=>Zxt,isBuilderProgram:()=>ykt,isBundle:()=>zNt,isCallChain:()=>fG,isCallExpression:()=>lu,isCallExpressionTarget:()=>G7e,isCallLikeExpression:()=>CG,isCallLikeOrFunctionLikeExpression:()=>E$,isCallOrNewExpression:()=>SB,isCallOrNewExpressionTarget:()=>F7e,isCallSignatureDeclaration:()=>mV,isCallToHelper:()=>Z6,isCaseBlock:()=>Ole,isCaseClause:()=>ute,isCaseKeyword:()=>Whe,isCaseOrDefaultClause:()=>TX,isCatchClause:()=>fM,isCatchClauseVariableDeclaration:()=>axe,isCatchClauseVariableDeclarationOrBindingElement:()=>P$,isCheckJsEnabledForFile:()=>v6,isChildOfNodeWithKind:()=>OUe,isCircularBuildOrder:()=>$6,isClassDeclaration:()=>Ec,isClassElement:()=>nC,isClassExpression:()=>rp,isClassInstanceProperty:()=>m8,isClassLike:()=>va,isClassMemberModifier:()=>h$,isClassNamedEvaluationHelperBlock:()=>j6,isClassOrTypeElement:()=>h8,isClassStaticBlockDeclaration:()=>ef,isClassThisAssignmentBlock:()=>gue,isCollapsedRange:()=>e4,isColonToken:()=>Hxe,isCommaExpression:()=>Hhe,isCommaListExpression:()=>PE,isCommaSequence:()=>Jle,isCommaToken:()=>Mxe,isComment:()=>MGe,isCommonJsExportPropertyAssignment:()=>U$,isCommonJsExportedExpression:()=>xRe,isCompoundAssignment:()=>cue,isComputedNonLiteralName:()=>FX,isComputedPropertyName:()=>kg,isConciseBody:()=>XR,isConditionalExpression:()=>vN,isConditionalTypeNode:()=>Ei,isConstAssertion:()=>She,isConstTypeReference:()=>B2,isConstructSignatureDeclaration:()=>A,isConstructorDeclaration:()=>Df,isConstructorTypeNode:()=>Y,isContextualKeyword:()=>Tce,isContinueStatement:()=>FG,isCustomPrologue:()=>LS,isDebuggerStatement:()=>ew,isDeclaration:()=>xC,isDeclarationBindingElement:()=>_X,isDeclarationFileName:()=>Gh,isDeclarationName:()=>tT,isDeclarationNameOfEnumOrNamespace:()=>Ume,isDeclarationReadonly:()=>Iu,isDeclarationStatement:()=>vX,isDeclarationWithTypeParameterChildren:()=>GX,isDeclarationWithTypeParameters:()=>X$,isDecorator:()=>FC,isDecoratorTarget:()=>IGt,isDefaultClause:()=>Mle,isDefaultImport:()=>G5,isDefaultModifier:()=>lte,isDefaultedExpandoInitializer:()=>HRe,isDeleteExpression:()=>tP,isDeleteTarget:()=>mme,isDeprecatedDeclaration:()=>dFe,isDestructuringAssignment:()=>Gv,isDiagnosticWithLocation:()=>Rje,isDiskPathRoot:()=>W0,isDoStatement:()=>GZ,isDocumentRegistryEntry:()=>r0e,isDotDotDotToken:()=>uM,isDottedName:()=>Dee,isDynamicName:()=>Rce,isESSymbolIdentifier:()=>tKe,isEffectiveExternalModule:()=>K9,isEffectiveModuleDeclaration:()=>sce,isEffectiveStrictModeSourceFile:()=>kX,isElementAccessChain:()=>IX,isElementAccessExpression:()=>_A,isEmittedFileOfProgram:()=>Qxt,isEmptyArrayLiteral:()=>Yme,isEmptyBindingElement:()=>jc,isEmptyBindingPattern:()=>_o,isEmptyObjectLiteral:()=>Gee,isEmptyStatement:()=>Zv,isEmptyStringLiteral:()=>ume,isEntityName:()=>T_,isEntityNameExpression:()=>lp,isEnumConst:()=>dc,isEnumDeclaration:()=>iP,isEnumMember:()=>yV,isEqualityOperatorKind:()=>rFe,isEqualsGreaterThanToken:()=>Yxe,isExclamationToken:()=>cte,isExcludedFile:()=>eDt,isExclusivelyTypeOnlyImportOrExport:()=>D6e,isExpandoPropertyDeclaration:()=>eM,isExportAssignment:()=>rf,isExportDeclaration:()=>hC,isExportModifier:()=>Ox,isExportName:()=>eke,isExportNamespaceAsDefaultDeclaration:()=>S5,isExportOrDefaultModifier:()=>Jhe,isExportSpecifier:()=>l0,isExportsIdentifier:()=>H3,isExportsOrModuleExportsOrAlias:()=>CM,isExpression:()=>tn,isExpressionNode:()=>DB,isExpressionOfExternalModuleImportEqualsDeclaration:()=>_Gt,isExpressionOfOptionalChainRoot:()=>d8,isExpressionStatement:()=>Xf,isExpressionWithTypeArguments:()=>k_,isExpressionWithTypeArgumentsInClassExtendsClause:()=>Qce,isExternalModule:()=>hm,isExternalModuleAugmentation:()=>KR,isExternalModuleImportEqualsDeclaration:()=>BZ,isExternalModuleIndicator:()=>G3,isExternalModuleNameRelative:()=>Ul,isExternalModuleReference:()=>ZG,isExternalModuleSymbol:()=>L3,isExternalOrCommonJsModule:()=>na,isFileLevelReservedGeneratedIdentifier:()=>mX,isFileLevelUniqueName:()=>v5,isFileProbablyExternalModule:()=>jhe,isFirstDeclarationOfSymbolParameter:()=>Ije,isFixablePromiseHandler:()=>zje,isForInOrOfStatement:()=>bZ,isForInStatement:()=>iD,isForInitializer:()=>O0,isForOfStatement:()=>P1,isForStatement:()=>FB,isFullSourceFile:()=>jR,isFunctionBlock:()=>z9,isFunctionBody:()=>EX,isFunctionDeclaration:()=>hp,isFunctionExpression:()=>PA,isFunctionExpressionOrArrowFunction:()=>RG,isFunctionLike:()=>eu,isFunctionLikeDeclaration:()=>pd,isFunctionLikeKind:()=>HR,isFunctionLikeOrClassStaticBlockDeclaration:()=>x3,isFunctionOrConstructorTypeNode:()=>hX,isFunctionOrModuleBlock:()=>_$,isFunctionSymbol:()=>XRe,isFunctionTypeNode:()=>H,isFutureReservedKeyword:()=>qUe,isGeneratedIdentifier:()=>Cp,isGeneratedPrivateIdentifier:()=>mZ,isGetAccessor:()=>Rv,isGetAccessorDeclaration:()=>Qb,isGetOrSetAccessorDeclaration:()=>fX,isGlobalDeclaration:()=>XZr,isGlobalScopeAugmentation:()=>S2,isGlobalSourceFile:()=>bs,isGrammarError:()=>F$,isHeritageClause:()=>OE,isHoistedFunction:()=>AN,isHoistedVariableStatement:()=>gce,isIdentifier:()=>sr,isIdentifierANonContextualKeyword:()=>_ee,isIdentifierName:()=>$Re,isIdentifierOrThisTypeNode:()=>mRt,isIdentifierPart:()=>_2,isIdentifierStart:()=>qy,isIdentifierText:()=>Ke,isIdentifierTypePredicate:()=>FRe,isIdentifierTypeReference:()=>rxe,isIfStatement:()=>X0,isIgnoredFileFromWildCardWatching:()=>__e,isImplicitGlob:()=>che,isImportAttribute:()=>KNt,isImportAttributeName:()=>m$,isImportAttributes:()=>A4,isImportCall:()=>fC,isImportClause:()=>oT,isImportDeclaration:()=>hI,isImportEqualsDeclaration:()=>mm,isImportKeyword:()=>L6,isImportMeta:()=>Pb,isImportOrExportSpecifier:()=>M9,isImportOrExportSpecifierName:()=>JGt,isImportSpecifier:()=>yy,isImportTypeAssertionContainer:()=>MDr,isImportTypeNode:()=>Nu,isImportableFile:()=>Vje,isInComment:()=>VZ,isInCompoundLikeAssignment:()=>Sce,isInExpressionContext:()=>mce,isInJSDoc:()=>tee,isInJSFile:()=>io,isInJSXText:()=>wGt,isInJsonFile:()=>H8,isInNonReferenceComment:()=>GGt,isInReferenceComment:()=>kGt,isInRightSideOfInternalImportEqualsDeclaration:()=>RGe,isInString:()=>e7,isInTemplateString:()=>J7e,isInTopLevelContext:()=>Ice,isInTypeQuery:()=>V5,isIncrementalCompilation:()=>h6,isIndexSignatureDeclaration:()=>_,isIndexedAccessTypeNode:()=>hs,isInferTypeNode:()=>yo,isInfinityOrNaNString:()=>T6,isInitializedProperty:()=>d_e,isInitializedVariable:()=>Zee,isInsideJsxElement:()=>OGe,isInsideJsxElementOrAttribute:()=>SGt,isInsideNodeModules:()=>q_e,isInsideTemplateLiteral:()=>O_e,isInstanceOfExpression:()=>c6,isInstantiatedModule:()=>K8e,isInterfaceDeclaration:()=>XI,isInternalDeclaration:()=>jae,isInternalModuleImportEqualsDeclaration:()=>D5,isInternalName:()=>jKe,isIntersectionTypeNode:()=>ji,isIntrinsicJsxName:()=>UX,isIterationStatement:()=>YR,isJSDoc:()=>cT,isJSDocAllType:()=>eRt,isJSDocAugmentsTag:()=>P6,isJSDocAuthorTag:()=>UDr,isJSDocCallbackTag:()=>VKe,isJSDocClassTag:()=>rRt,isJSDocCommentContainingNode:()=>ff,isJSDocConstructSignature:()=>MX,isJSDocDeprecatedTag:()=>MKe,isJSDocEnumTag:()=>Ohe,isJSDocFunctionType:()=>Ate,isJSDocImplementsTag:()=>zxe,isJSDocImportTag:()=>DN,isJSDocIndexSignature:()=>ree,isJSDocLikeText:()=>s8e,isJSDocLink:()=>qNt,isJSDocLinkCode:()=>$Nt,isJSDocLinkLike:()=>U9,isJSDocLinkPlain:()=>XDr,isJSDocMemberName:()=>oP,isJSDocNameReference:()=>Hle,isJSDocNamepathType:()=>JDr,isJSDocNamespaceBody:()=>Jae,isJSDocNode:()=>kS,isJSDocNonNullableType:()=>Jxe,isJSDocNullableType:()=>gte,isJSDocOptionalParameter:()=>Ele,isJSDocOptionalType:()=>LKe,isJSDocOverloadTag:()=>dte,isJSDocOverrideTag:()=>Kxe,isJSDocParameterTag:()=>LB,isJSDocPrivateTag:()=>PKe,isJSDocPropertyLikeTag:()=>IZ,isJSDocPropertyTag:()=>nRt,isJSDocProtectedTag:()=>OKe,isJSDocPublicTag:()=>WKe,isJSDocReadonlyTag:()=>QKe,isJSDocReturnTag:()=>jxe,isJSDocSatisfiesExpression:()=>bhe,isJSDocSatisfiesTag:()=>qxe,isJSDocSeeTag:()=>KDr,isJSDocSignature:()=>LG,isJSDocTag:()=>J9,isJSDocTemplateTag:()=>Lv,isJSDocThisTag:()=>HKe,isJSDocThrowsTag:()=>zDr,isJSDocTypeAlias:()=>T2,isJSDocTypeAssertion:()=>m4,isJSDocTypeExpression:()=>sP,isJSDocTypeLiteral:()=>f4,isJSDocTypeTag:()=>Yle,isJSDocTypedefTag:()=>I4,isJSDocUnknownTag:()=>jDr,isJSDocUnknownType:()=>tRt,isJSDocVariadicType:()=>Uxe,isJSXTagName:()=>WX,isJsonEqual:()=>mle,isJsonSourceFile:()=>fa,isJsxAttribute:()=>RN,isJsxAttributeLike:()=>E8,isJsxAttributeName:()=>lxe,isJsxAttributes:()=>pM,isJsxChild:()=>wX,isJsxClosingElement:()=>AM,isJsxClosingFragment:()=>jNt,isJsxElement:()=>Jx,isJsxExpression:()=>Qle,isJsxFragment:()=>dM,isJsxNamespacedName:()=>aT,isJsxOpeningElement:()=>NN,isJsxOpeningFragment:()=>p4,isJsxOpeningLikeElement:()=>Um,isJsxOpeningLikeElementTagName:()=>CGt,isJsxSelfClosingElement:()=>d4,isJsxSpreadAttribute:()=>W6,isJsxTagNameExpression:()=>Z3,isJsxText:()=>aM,isJumpStatementTarget:()=>F_e,isKeyword:()=>s0,isKeywordOrPunctuation:()=>wce,isKnownSymbol:()=>bee,isLabelName:()=>V7e,isLabelOfLabeledStatement:()=>L7e,isLabeledStatement:()=>iC,isLateVisibilityPaintedStatement:()=>G8,isLeftHandSideExpression:()=>N_,isLeftHandSideOfAssignment:()=>O5,isLet:()=>aI,isLineBreak:()=>XC,isLiteralComputedPropertyDeclarationName:()=>Cee,isLiteralExpression:()=>wv,isLiteralExpressionOfObject:()=>CZ,isLiteralImportTypeNode:()=>n_,isLiteralKind:()=>I5,isLiteralLikeAccess:()=>bce,isLiteralLikeElementAccess:()=>oee,isLiteralNameOfPropertyDeclarationOrIndexAccess:()=>kGe,isLiteralTypeLikeExpression:()=>nxr,isLiteralTypeLiteral:()=>xS,isLiteralTypeNode:()=>sd,isLocalName:()=>VG,isLogicalOperator:()=>_De,isLogicalOrCoalescingAssignmentExpression:()=>Ome,isLogicalOrCoalescingAssignmentOperator:()=>o6,isLogicalOrCoalescingBinaryExpression:()=>Ree,isLogicalOrCoalescingBinaryOperator:()=>Nee,isMappedTypeNode:()=>wl,isMemberName:()=>eb,isMetaProperty:()=>SN,isMethodDeclaration:()=>lI,isMethodOrAccessor:()=>_Z,isMethodSignature:()=>zS,isMinusToken:()=>ote,isMissingDeclaration:()=>YDr,isMissingPackageJsonInfo:()=>ADt,isModifier:()=>Ag,isModifierKind:()=>Tv,isModifierLike:()=>Rp,isModuleAugmentationExternal:()=>Q$,isModuleBlock:()=>wN,isModuleBody:()=>Q0,isModuleDeclaration:()=>mC,isModuleExportsAccessExpression:()=>dN,isModuleIdentifier:()=>U8,isModuleName:()=>yRt,isModuleOrEnumDeclaration:()=>BX,isModuleReference:()=>F3,isModuleSpecifierLike:()=>KGe,isModuleWithStringLiteralName:()=>T5,isNameOfFunctionDeclaration:()=>Q7e,isNameOfModuleDeclaration:()=>O7e,isNamedClassElement:()=>Mae,isNamedDeclaration:()=>wf,isNamedEvaluation:()=>rb,isNamedEvaluationSource:()=>Eme,isNamedExportBindings:()=>f8,isNamedExports:()=>ZB,isNamedImportBindings:()=>v$,isNamedImports:()=>TN,isNamedImportsOrExports:()=>qce,isNamedTupleMember:()=>At,isNamespaceBody:()=>tb,isNamespaceExport:()=>sD,isNamespaceExportDeclaration:()=>Phe,isNamespaceImport:()=>Xx,isNamespaceReexportDeclaration:()=>QRe,isNewExpression:()=>qS,isNewExpressionTarget:()=>Bue,isNoSubstitutionTemplateLiteral:()=>cM,isNode:()=>XCe,isNodeArray:()=>IG,isNodeArrayMultiLine:()=>Jme,isNodeDescendantOf:()=>rV,isNodeKind:()=>CX,isNodeLikeSystem:()=>gy,isNodeModulesDirectory:()=>NS,isNodeWithPossibleHoistedDeclaration:()=>qRe,isNonContextualKeyword:()=>bme,isNonExportDefaultModifier:()=>sxr,isNonGlobalAmbientModule:()=>O$,isNonGlobalDeclaration:()=>cFt,isNonNullAccess:()=>Ble,isNonNullChain:()=>p8,isNonNullExpression:()=>sT,isNonStaticMethodOrAccessorWithPrivateName:()=>jDt,isNotEmittedOrPartiallyEmittedNode:()=>KCe,isNotEmittedStatement:()=>ZKe,isNullishCoalesce:()=>I$,isNumber:()=>lm,isNumericLiteral:()=>pu,isNumericLiteralName:()=>bN,isObjectBindingElementWithoutPropertyName:()=>Y_e,isObjectBindingOrAssignmentElement:()=>yX,isObjectBindingOrAssignmentPattern:()=>y$,isObjectBindingPattern:()=>Wg,isObjectLiteralElement:()=>y5,isObjectLiteralElementLike:()=>vB,isObjectLiteralExpression:()=>ru,isObjectLiteralMethod:()=>RB,isObjectLiteralOrClassExpressionMethodOrAccessor:()=>K$,isObjectTypeDeclaration:()=>H5,isOctalDigit:()=>uZ,isOmittedExpression:()=>tf,isOptionalChain:()=>Gm,isOptionalChainRoot:()=>f5,isOptionalDeclaration:()=>HS,isOptionalJSDocPropertyLikeTag:()=>Kee,isOptionalTypeNode:()=>Ut,isOuterExpression:()=>tke,isOutermostOptionalChain:()=>R3,isOverrideModifier:()=>Vhe,isPackageJsonInfo:()=>Ske,isPackedArrayLiteral:()=>_he,isParameter:()=>Uc,isParameterPropertyDeclaration:()=>Zn,isParameterPropertyModifier:()=>C5,isParenthesizedExpression:()=>ZC,isParenthesizedTypeNode:()=>to,isParseTreeNode:()=>pZ,isPartOfParameterDeclaration:()=>TZ,isPartOfTypeNode:()=>VS,isPartOfTypeQuery:()=>hce,isPartiallyEmittedExpression:()=>GG,isPatternMatch:()=>gm,isPinnedComment:()=>R8,isPlainJsFile:()=>B5,isPlusToken:()=>Zhe,isPossiblyTypeArgumentPosition:()=>P_e,isPostfixUnaryExpression:()=>Qx,isPrefixUnaryExpression:()=>GB,isPrimitiveLiteralValue:()=>zee,isPrivateIdentifier:()=>Gc,isPrivateIdentifierClassElementDeclaration:()=>Dh,isPrivateIdentifierPropertyAccessExpression:()=>Y9,isPrivateIdentifierSymbol:()=>rDe,isProgramBundleEmitBuildInfo:()=>okt,isProgramUptoDate:()=>W6e,isPrologueDirective:()=>HI,isPropertyAccessChain:()=>p5,isPropertyAccessEntityNameExpression:()=>xee,isPropertyAccessExpression:()=>fo,isPropertyAccessOrQualifiedName:()=>_5,isPropertyAccessOrQualifiedNameOrImportTypeNode:()=>Yae,isPropertyAssignment:()=>jC,isPropertyDeclaration:()=>Hl,isPropertyName:()=>RI,isPropertyNameLiteral:()=>WS,isPropertySignature:()=>i_,isProtoSetter:()=>nDe,isPrototypeAccess:()=>SG,isPrototypePropertyAssignment:()=>lee,isPunctuation:()=>yme,isPushOrUnshiftIdentifier:()=>Bme,isQualifiedName:()=>c0,isQuestionDotToken:()=>u4,isQuestionOrExclamationToken:()=>CRt,isQuestionOrPlusOrMinusToken:()=>_Rt,isQuestionToken:()=>xG,isRawSourceMap:()=>HDt,isReadonlyKeyword:()=>CV,isReadonlyKeywordOrPlusOrMinusToken:()=>hRt,isRecognizedTripleSlashComment:()=>Z$,isReferenceFileLocation:()=>Rte,isReferencedFile:()=>pP,isRegularExpressionLiteral:()=>Fhe,isRequireCall:()=>H0,isRequireVariableStatement:()=>Y8,isRestParameter:()=>Dv,isRestTypeNode:()=>cn,isReturnStatement:()=>G_,isReturnStatementWithFixablePromiseHandler:()=>_Fe,isRightSideOfAccessExpression:()=>Hme,isRightSideOfInstanceofExpression:()=>bDe,isRightSideOfPropertyAccess:()=>Fte,isRightSideOfQualifiedName:()=>hGt,isRightSideOfQualifiedNameOrPropertyAccess:()=>a6,isRightSideOfQualifiedNameOrPropertyAccessOrJSDocMemberName:()=>yDe,isRootedDiskPath:()=>bd,isSameEntityName:()=>PX,isSatisfiesExpression:()=>kG,isScopeMarker:()=>B$,isSemicolonClassElement:()=>Yx,isSetAccessor:()=>xh,isSetAccessorDeclaration:()=>ob,isShebangTrivia:()=>gZ,isShiftOperatorOrHigher:()=>r8e,isShorthandAmbientModuleSymbol:()=>O3,isShorthandPropertyAssignment:()=>F_,isSignedNumericLiteral:()=>Nce,isSimpleCopiableExpression:()=>mM,isSimpleInlineableExpression:()=>xN,isSimpleParameter:()=>txt,isSimpleParameterList:()=>p_e,isSingleOrDoubleQuote:()=>iee,isSourceFile:()=>Fc,isSourceFileFromLibrary:()=>Hte,isSourceFileJS:()=>i0,isSourceFileNotJS:()=>MUe,isSourceFileNotJson:()=>_ce,isSourceMapping:()=>XDt,isSpecialPropertyDeclaration:()=>YRe,isSpreadAssignment:()=>Ux,isSpreadElement:()=>fh,isStatement:()=>Cc,isStatementButNotDeclaration:()=>SX,isStatementOrBlock:()=>qw,isStatementWithLocals:()=>ece,isStatic:()=>eg,isStaticModifier:()=>iT,isString:()=>Ya,isStringAKeyword:()=>$Ue,isStringANonContextualKeyword:()=>L5,isStringAndEmptyAnonymousObjectIntersection:()=>xGt,isStringDoubleQuoted:()=>yce,isStringLiteral:()=>Eu,isStringLiteralLike:()=>JA,isStringLiteralOrJsxExpression:()=>Uae,isStringLiteralOrTemplate:()=>$Gt,isStringOrNumericLiteralLike:()=>ZE,isStringOrRegularExpressionOrTemplateLiteral:()=>j7e,isStringTextContainingNode:()=>C8,isSuperCall:()=>Rf,isSuperKeyword:()=>eP,isSuperOrSuperProperty:()=>QUe,isSuperProperty:()=>M0,isSupportedSourceFileName:()=>zDe,isSwitchStatement:()=>Bd,isSyntaxList:()=>pte,isSyntheticExpression:()=>rP,isSyntheticReference:()=>V6,isTagName:()=>W7e,isTaggedTemplateExpression:()=>W1,isTaggedTemplateTag:()=>fGt,isTemplateExpression:()=>Mx,isTemplateHead:()=>lM,isTemplateLiteral:()=>k1,isTemplateLiteralKind:()=>DS,isTemplateLiteralToken:()=>Oae,isTemplateLiteralTypeNode:()=>tp,isTemplateLiteralTypeSpan:()=>rg,isTemplateMiddle:()=>$3,isTemplateMiddleOrTemplateTail:()=>I8,isTemplateSpan:()=>Hb,isTemplateTail:()=>Wle,isTextWhiteSpaceLike:()=>VGt,isThis:()=>Zte,isThisContainerOrFunctionBlock:()=>WRe,isThisIdentifier:()=>vG,isThisInTypeQuery:()=>aV,isThisInitializedDeclaration:()=>Cce,isThisInitializedObjectBindingExpression:()=>ORe,isThisProperty:()=>q$,isThisTypeNode:()=>aa,isThisTypeParameter:()=>N6,isThisTypePredicate:()=>ZRe,isThrowStatement:()=>Z2,isToken:()=>Q9,isTokenKind:()=>C$,isTraceEnabled:()=>WG,isTransientSymbol:()=>wB,isTrivia:()=>XX,isTryStatement:()=>ab,isTupleTypeNode:()=>Ct,isTypeAlias:()=>Aee,isTypeAliasDeclaration:()=>Pf,isTypeAssertionExpression:()=>hV,isTypeDeclaration:()=>$5,isTypeElement:()=>Rx,isTypeKeyword:()=>wue,isTypeKeywordToken:()=>nje,isTypeKeywordTokenOrIdentifier:()=>XGe,isTypeLiteralNode:()=>Se,isTypeNode:()=>Ma,isTypeNodeKind:()=>jme,isTypeOfExpression:()=>nD,isTypeOnlyExportDeclaration:()=>Qae,isTypeOnlyImportDeclaration:()=>H9,isTypeOnlyImportOrExportDeclaration:()=>Nx,isTypeOperatorNode:()=>as,isTypeParameterDeclaration:()=>$p,isTypePredicateNode:()=>S,isTypeQueryNode:()=>oe,isTypeReferenceNode:()=>F,isTypeReferenceType:()=>B8,isTypeUsableAsPropertyName:()=>k2,isUMDExportSymbol:()=>jce,isUnaryExpression:()=>yZ,isUnaryExpressionWithWrite:()=>_8,isUnicodeIdentifierStart:()=>Sg,isUnionTypeNode:()=>Is,isUrl:()=>tC,isValidBigIntString:()=>hle,isValidESSymbolDeclaration:()=>kRe,isValidTypeOnlyAliasUseSite:()=>xZ,isValueSignatureDeclaration:()=>Z5,isVarAwaitUsing:()=>Mg,isVarConst:()=>Hp,isVarConstLike:()=>Od,isVarUsing:()=>fd,isVariableDeclaration:()=>js,isVariableDeclarationInVariableStatement:()=>L8,isVariableDeclarationInitializedToBareOrAccessedRequire:()=>$9,isVariableDeclarationInitializedToRequire:()=>nee,isVariableDeclarationList:()=>bl,isVariableLike:()=>R5,isVariableLikeOrAccessor:()=>Ace,isVariableStatement:()=>Dp,isVoidExpression:()=>mf,isWatchSet:()=>Kme,isWhileStatement:()=>FZ,isWhiteSpaceLike:()=>Jm,isWhiteSpaceSingleLine:()=>e0,isWithStatement:()=>_V,isWriteAccess:()=>M5,isWriteOnlyAccess:()=>Uce,isYieldExpression:()=>Hx,jsxModeNeedsExplicitImport:()=>Fje,keywordPart:()=>ME,last:()=>Ta,lastOrUndefined:()=>zo,length:()=>O,libMap:()=>g8e,libs:()=>lke,lineBreakPart:()=>Ote,linkNamePart:()=>YGt,linkPart:()=>mje,linkTextPart:()=>qGe,listFiles:()=>r7e,loadModuleFromGlobalCache:()=>SDt,loadWithModeAwareCache:()=>E_e,makeIdentifierFromModuleName:()=>ice,makeImport:()=>RV,makeStringLiteral:()=>Tue,mangleScopedPackageName:()=>Bte,map:()=>Ot,mapAllOrFail:()=>Br,mapDefined:()=>tr,mapDefinedEntries:()=>Gn,mapDefinedIterator:()=>gn,mapEntries:()=>Qs,mapIterator:()=>dr,mapOneOrMany:()=>xje,mapToDisplayParts:()=>DV,matchFiles:()=>uhe,matchPatternOrExact:()=>phe,matchedText:()=>yh,matchesExclude:()=>bke,maybeBind:()=>Yi,maybeSetLocalizedDiagnosticMessages:()=>ZDe,memoize:()=>su,memoizeCached:()=>Uh,memoizeOne:()=>ii,memoizeWeak:()=>RC,metadataHelper:()=>Zle,min:()=>gC,minAndMax:()=>exe,missingFileModifiedTime:()=>BA,modifierToFlag:()=>P5,modifiersToFlags:()=>kv,moduleOptionDeclaration:()=>xRt,moduleResolutionIsEqualTo:()=>k$,moduleResolutionNameAndModeGetter:()=>G6e,moduleResolutionOptionDeclarations:()=>d8e,moduleResolutionSupportsPackageJsonExportsAndImports:()=>j5,moduleResolutionUsesNodeModules:()=>JGe,moduleSpecifierToValidIdentifier:()=>$_e,moduleSpecifiers:()=>dP,moduleSymbolToValidIdentifier:()=>Zue,moveEmitHelpers:()=>ku,moveRangeEnd:()=>g6,moveRangePastDecorators:()=>rD,moveRangePastModifiers:()=>QS,moveRangePos:()=>NZ,moveSyntheticComments:()=>DI,mutateMap:()=>I6,mutateMapSkippingNewValues:()=>fN,needsParentheses:()=>eFe,needsScopeMarker:()=>y8,newCaseClauseTracker:()=>IFe,newPrivateEnvironment:()=>$Dt,noEmitNotification:()=>I_e,noEmitSubstitution:()=>pue,noTransformers:()=>Gxt,noTruncationMaximumTruncationLength:()=>R$,nodeCanBeDecorated:()=>eee,nodeHasName:()=>Sv,nodeIsDecorated:()=>VX,nodeIsMissing:()=>Tf,nodeIsPresent:()=>GE,nodeIsSynthesized:()=>$d,nodeModuleNameResolver:()=>CDt,nodeModulesPathPart:()=>Kx,nodeNextJsonConfigResolver:()=>mDt,nodeOrChildIsDecorated:()=>O8,nodeOverlapsWithStartEnd:()=>GGe,nodePosToString:()=>tce,nodeSeenTracker:()=>Vte,nodeStartsNewLexicalEnvironment:()=>vme,nodeToDisplayParts:()=>OZr,noop:()=>oc,noopFileWatcher:()=>_ue,normalizePath:()=>Mc,normalizeSlashes:()=>df,not:()=>Am,notImplemented:()=>ja,notImplementedResolver:()=>Vxt,nullNodeConverters:()=>dxe,nullParenthesizerRules:()=>qee,nullTransformationContext:()=>m_e,objectAllocator:()=>kC,operatorPart:()=>Rue,optionDeclarations:()=>lT,optionMapToObject:()=>Ike,optionsAffectingProgramStructure:()=>LRt,optionsForBuild:()=>f8e,optionsForWatch:()=>Y6,optionsHaveChanges:()=>V3,optionsHaveModuleResolutionChanges:()=>qae,or:()=>fg,orderedRemoveItem:()=>tA,orderedRemoveItemAt:()=>Rm,packageIdToPackageName:()=>E5,packageIdToString:()=>JR,paramHelper:()=>khe,parameterIsThisKeyword:()=>oV,parameterNamePart:()=>OGt,parseBaseNodeFactory:()=>wRt,parseBigInt:()=>txe,parseBuildCommand:()=>JRt,parseCommandLine:()=>YRt,parseCommandLineWorker:()=>C8e,parseConfigFileTextToJson:()=>h8e,parseConfigFileWithSystem:()=>_kt,parseConfigHostFromCompilerHostLike:()=>sGe,parseCustomTypeOption:()=>dke,parseIsolatedEntityName:()=>H6,parseIsolatedJSDocComment:()=>NRt,parseJSDocTypeExpressionForTests:()=>Sxr,parseJsonConfigFileContent:()=>tkr,parseJsonSourceFileConfigFileContent:()=>n_e,parseJsonText:()=>zhe,parseListTypeOption:()=>MRt,parseNodeFactory:()=>cP,parseNodeModuleFromPath:()=>o_e,parsePackageName:()=>a_e,parsePseudoBigInt:()=>s4,parseValidBigInt:()=>mhe,pasteEdits:()=>Fqe,patchWriteFileEnsuringDirectory:()=>V0,pathContainsNodeModules:()=>AP,pathIsAbsolute:()=>CI,pathIsBareSpecifier:()=>P0,pathIsRelative:()=>Qp,patternText:()=>D0,perfLogger:()=>jl,performIncrementalCompilation:()=>bkt,performance:()=>cp,plainJSErrors:()=>P6e,positionBelongsToNode:()=>H7e,positionIsASICandidate:()=>iFe,positionIsSynthesized:()=>Fv,positionsAreOnSameLine:()=>L1,preProcessFile:()=>lLr,probablyUsesSemicolons:()=>z_e,processCommentPragmas:()=>l8e,processPragmasIntoFields:()=>u8e,processTaggedTemplateExpression:()=>u6e,programContainsEsModules:()=>ZGt,programContainsModules:()=>FGt,projectReferenceIsEqualTo:()=>w8,propKeyHelper:()=>Dxe,propertyNamePart:()=>QGt,pseudoBigIntToString:()=>AV,punctuationPart:()=>d0,pushIfUnique:()=>da,quote:()=>kue,quotePreferenceFromString:()=>aje,rangeContainsPosition:()=>Z_e,rangeContainsPositionExclusive:()=>L_e,rangeContainsRange:()=>W2,rangeContainsRangeExclusive:()=>yGt,rangeContainsStartEnd:()=>V_e,rangeEndIsOnSameLineAsRangeStart:()=>d6,rangeEndPositionsAreOnSameLine:()=>vDe,rangeEquals:()=>wi,rangeIsOnSingleLine:()=>RZ,rangeOfNode:()=>Ihe,rangeOfTypeParameters:()=>Che,rangeOverlapsWithStartEnd:()=>vue,rangeStartIsOnSameLineAsRangeEnd:()=>SDe,rangeStartPositionsAreOnSameLine:()=>A6,readBuilderProgram:()=>fGe,readConfigFile:()=>t_e,readHelper:()=>Nxe,readJson:()=>lV,readJsonConfigFile:()=>URt,readJsonOrUndefined:()=>Fee,reduceEachLeadingCommentRange:()=>Ex,reduceEachTrailingCommentRange:()=>AZ,reduceLeft:()=>Nd,reduceLeftIterator:()=>ge,reducePathComponents:()=>rC,refactor:()=>s7,regExpEscape:()=>yKe,regularExpressionFlagToCharacter:()=>tc,relativeComplement:()=>Ji,removeAllComments:()=>nte,removeEmitHelper:()=>oM,removeExtension:()=>n4,removeFileExtension:()=>a0,removeIgnoredPath:()=>aGe,removeMinAndVersionNumbers:()=>Iv,removeOptionality:()=>TGt,removePrefix:()=>E_,removeSuffix:()=>Hm,removeTrailingDirectorySeparator:()=>w_,repeatString:()=>M_e,replaceElement:()=>cu,replaceFirstStar:()=>tM,resolutionExtensionIsTSOrJson:()=>E6,resolveConfigFileProjectName:()=>I7e,resolveJSModule:()=>pDt,resolveLibrary:()=>Tke,resolveModuleName:()=>U6,resolveModuleNameFromCache:()=>Dkr,resolvePackageNameToPackageJson:()=>D8e,resolvePath:()=>$_,resolveProjectReferencePath:()=>Dte,resolveTripleslashReference:()=>S6e,resolveTypeReferenceDirective:()=>uDt,resolvingEmptyArray:()=>N$,restHelper:()=>vxe,returnFalse:()=>NC,returnNoopFileWatcher:()=>yue,returnTrue:()=>fI,returnUndefined:()=>wI,returnsPromise:()=>jje,runInitializersHelper:()=>_xe,sameFlatMap:()=>In,sameMap:()=>Ar,sameMapping:()=>yGr,scanShebangTrivia:()=>gG,scanTokenAtPosition:()=>bn,scanner:()=>J0,screenStartingMessageCodes:()=>q6e,semanticDiagnosticsOptionDeclarations:()=>GRt,serializeCompilerOptions:()=>Cke,server:()=>hHr,servicesVersion:()=>sVr,setCommentRange:()=>hA,setConfigFileInOptions:()=>v8e,setConstantValue:()=>fxe,setEachParent:()=>wKe,setEmitFlags:()=>ao,setFunctionNameHelper:()=>xxe,setGetSourceFileAsHashVersioned:()=>pGe,setIdentifierAutoGenerate:()=>fV,setIdentifierGeneratedImportReference:()=>ste,setIdentifierTypeArguments:()=>nT,setInternalEmitFlags:()=>ite,setLocalizedDiagnosticMessages:()=>Lee,setModuleDefaultHelper:()=>Fxe,setNodeChildren:()=>iRt,setNodeFlags:()=>ixe,setObjectAllocator:()=>FDe,setOriginalNode:()=>Ho,setParent:()=>GA,setParentRecursive:()=>yN,setPrivateIdentifier:()=>_4,setSnippetElement:()=>La,setSourceMapRange:()=>Hg,setStackTraceLimit:()=>iN,setStartsOnNewLine:()=>Dle,setSyntheticLeadingComments:()=>KS,setSyntheticTrailingComments:()=>iM,setSys:()=>Bv,setSysLog:()=>Fb,setTextRange:()=>un,setTextRangeEnd:()=>o4,setTextRangePos:()=>S6,setTextRangePosEnd:()=>MS,setTextRangePosWidth:()=>hhe,setTokenSourceMapRange:()=>pxe,setTypeNode:()=>Ixe,setUILocale:()=>Us,setValueDeclaration:()=>uee,shouldAllowImportingTsExtension:()=>vte,shouldPreserveConstEnums:()=>gV,shouldUseUriStyleNodeCoreModules:()=>pFe,showModuleSpecifier:()=>xDe,signatureHasLiteralTypes:()=>j8e,signatureHasRestParameter:()=>g0,signatureToDisplayParts:()=>hje,single:()=>xg,singleElementArray:()=>Dm,singleIterator:()=>Fa,singleOrMany:()=>_l,singleOrUndefined:()=>Tu,skipAlias:()=>ph,skipAssertions:()=>exr,skipConstraint:()=>ije,skipOuterExpressions:()=>LC,skipParentheses:()=>zA,skipPartiallyEmittedExpressions:()=>x1,skipTrivia:()=>Uu,skipTypeChecking:()=>q5,skipTypeParentheses:()=>z8,skipWhile:()=>yE,sliceAfter:()=>fhe,some:()=>lr,sort:()=>mg,sortAndDeduplicate:()=>Ir,sortAndDeduplicateDiagnostics:()=>iA,sourceFileAffectingCompilerOptions:()=>p8e,sourceFileMayBeEmitted:()=>K3,sourceMapCommentRegExp:()=>q8e,sourceMapCommentRegExpDontCareLineStart:()=>QDt,spacePart:()=>xI,spanMap:()=>xa,spreadArrayHelper:()=>Rxe,stableSort:()=>ml,startEndContainsRange:()=>M7e,startEndOverlapsWithStartEnd:()=>FGe,startOnNewLine:()=>u0,startTracing:()=>BE,startsWith:()=>uc,startsWithDirectory:()=>Nh,startsWithUnderscore:()=>Gje,startsWithUseStrict:()=>gRt,stringContainsAt:()=>aFt,stringToToken:()=>Yn,stripQuotes:()=>R2,supportedDeclarationExtensions:()=>fle,supportedJSExtensions:()=>ghe,supportedJSExtensionsFlat:()=>r4,supportedLocaleDirectories:()=>N3,supportedTSExtensions:()=>y6,supportedTSExtensionsFlat:()=>Qee,supportedTSImplementationExtensions:()=>Ile,suppressLeadingAndTrailingTrivia:()=>HE,suppressLeadingTrivia:()=>Eje,suppressTrailingTrivia:()=>jGt,symbolEscapedNameNoDefault:()=>UGe,symbolName:()=>pf,symbolNameNoDefault:()=>lje,symbolPart:()=>PGt,symbolToDisplayParts:()=>Due,syntaxMayBeASICandidate:()=>tFt,syntaxRequiresTrailingSemicolonOrASI:()=>nFe,sys:()=>yd,sysLog:()=>Ky,tagNamesAreEquivalent:()=>uP,takeWhile:()=>Lf,targetOptionDeclaration:()=>A8e,templateObjectHelper:()=>Txe,testFormatSettings:()=>xZr,textChangeRangeIsUnchanged:()=>K,textChangeRangeNewSpan:()=>Ms,textChanges:()=>Ao,textOrKeywordPart:()=>Cje,textPart:()=>O2,textRangeContainsPositionInclusive:()=>y2,textSpanContainsPosition:()=>my,textSpanContainsTextSpan:()=>b2,textSpanEnd:()=>Ku,textSpanIntersection:()=>dZ,textSpanIntersectsWith:()=>oI,textSpanIntersectsWithPosition:()=>hy,textSpanIntersectsWithTextSpan:()=>fA,textSpanIsEmpty:()=>DE,textSpanOverlap:()=>w3,textSpanOverlapsWith:()=>PR,textSpansEqual:()=>Pte,textToKeywordObj:()=>G,timestamp:()=>$l,toArray:()=>ys,toBuilderFileEmit:()=>ukt,toBuilderStateFileInfoForMultiEmit:()=>lkt,toEditorSettings:()=>a0e,toFileNameLowerCase:()=>uf,toLowerCase:()=>sl,toPath:()=>AA,toProgramEmitPending:()=>gkt,tokenIsIdentifierOrKeyword:()=>MI,tokenIsIdentifierOrKeywordOrGreaterThan:()=>VR,tokenToString:()=>vr,trace:()=>Tl,tracing:()=>Qi,tracingEnabled:()=>dy,transferSourceFileChildren:()=>sRt,transform:()=>fVr,transformClassFields:()=>Axt,transformDeclarations:()=>p6e,transformECMAScriptModule:()=>d6e,transformES2015:()=>Sxt,transformES2016:()=>vxt,transformES2017:()=>Ixt,transformES2018:()=>Cxt,transformES2019:()=>mxt,transformES2020:()=>hxt,transformES2021:()=>_xt,transformESDecorators:()=>fxt,transformESNext:()=>yxt,transformGenerators:()=>wxt,transformJsx:()=>Bxt,transformLegacyDecorators:()=>pxt,transformModule:()=>A6e,transformNamedEvaluation:()=>QE,transformNodeModule:()=>Nxt,transformNodes:()=>C_e,transformSystemModule:()=>Txt,transformTypeScript:()=>gxt,transpile:()=>mLr,transpileDeclaration:()=>ILr,transpileModule:()=>NFt,transpileOptionValueCompilerOptions:()=>VRt,tryAddToSet:()=>Zi,tryAndIgnoreErrors:()=>aFe,tryCast:()=>$s,tryDirectoryExists:()=>oFe,tryExtractTSExtension:()=>Mce,tryFileExists:()=>Fue,tryGetClassExtendingExpressionWithTypeArguments:()=>Qme,tryGetClassImplementingOrExtendingExpressionWithTypeArguments:()=>Mme,tryGetDirectories:()=>sFe,tryGetExtensionFromPath:()=>_N,tryGetImportFromModuleSpecifier:()=>gee,tryGetJSDocSatisfiesTypeNode:()=>vle,tryGetModuleNameFromFile:()=>Yhe,tryGetModuleSpecifierFromDeclaration:()=>j8,tryGetNativePerformanceHooks:()=>K_,tryGetPropertyAccessOrIdentifierToString:()=>kee,tryGetPropertyNameOfBindingOrAssignmentElement:()=>ike,tryGetSourceMappingURL:()=>MDt,tryGetTextOfPropertyName:()=>N5,tryIOAndConsumeErrors:()=>cFe,tryParseJson:()=>Xce,tryParsePattern:()=>i4,tryParsePatterns:()=>Xee,tryParseRawSourceMap:()=>YDt,tryReadDirectory:()=>wje,tryReadFile:()=>zle,tryRemoveDirectoryPrefix:()=>she,tryRemoveExtension:()=>$De,tryRemovePrefix:()=>Tb,tryRemoveSuffix:()=>I1,typeAcquisitionDeclarations:()=>gke,typeAliasNamePart:()=>MGt,typeDirectiveIsEqualTo:()=>$ae,typeKeywords:()=>rje,typeParameterNamePart:()=>HGt,typeToDisplayParts:()=>J_e,unchangedPollThresholds:()=>Op,unchangedTextChangeRange:()=>Ze,unescapeLeadingUnderscores:()=>wc,unmangleScopedPackageName:()=>l_e,unorderedRemoveItem:()=>Qy,unorderedRemoveItemAt:()=>uh,unreachableCodeIsError:()=>WDe,unsetNodeChildren:()=>XKe,unusedLabelIsError:()=>PDe,unwrapInnermostStatementOfLabel:()=>cme,unwrapParenthesizedExpression:()=>wle,updateErrorForNoInputFiles:()=>yke,updateLanguageServiceSourceFile:()=>Eze,updateMissingFilePathsWatch:()=>E6e,updateResolutionField:()=>_te,updateSharedExtendedConfigFileWatcher:()=>zke,updateSourceFile:()=>o8e,updateWatchingWildcardDirectories:()=>h_e,usesExtensionsOnImports:()=>KDe,usingSingleLineStringWriter:()=>W3,utf16EncodeAsString:()=>Ss,validateLocaleAndSetLanguage:()=>c5,valuesHelper:()=>kxe,version:()=>y,versionMajorMinor:()=>m,visitArray:()=>g_e,visitCommaListElements:()=>A_e,visitEachChild:()=>ns,visitFunctionBody:()=>V2,visitIterationBody:()=>by,visitLexicalEnvironment:()=>z8e,visitNode:()=>xr,visitNodes:()=>ws,visitParameterList:()=>_I,walkUpBindingElementsAndPatterns:()=>IA,walkUpLexicalEnvironments:()=>qDt,walkUpOuterExpressions:()=>ARt,walkUpParenthesizedExpressions:()=>qR,walkUpParenthesizedTypes:()=>Iee,walkUpParenthesizedTypesAndGetParentAndChild:()=>Cme,whitespaceOrMapCommentRegExp:()=>$8e,writeCommentRange:()=>$X,writeFile:()=>wee,writeFileEnsuringDirectories:()=>kme,zipWith:()=>fe});var Qls=!0,IHr;function Mls(){return IHr??(IHr=new Dn(y))}function CHr(n,c,u,d,I){let h=c?"DeprecationError: ":"DeprecationWarning: ";return h+=`'${n}' `,h+=d?`has been deprecated since v${d}`:"is deprecated",h+=c?" and can no longer be used.":u?` and will no longer be usable after v${u}.`:".",h+=I?` ${IN(I,[n])}`:"",h}function Hls(n,c,u,d){let I=CHr(n,!0,c,u,d);return()=>{throw new TypeError(I)}}function Yls(n,c,u,d){let I=!1;return()=>{Qls&&!I&&(w.log.warn(CHr(n,!1,c,u,d)),I=!0)}}function Xls(n,c={}){let u=typeof c.typeScriptVersion=="string"?new Dn(c.typeScriptVersion):c.typeScriptVersion??Mls(),d=typeof c.errorAfter=="string"?new Dn(c.errorAfter):c.errorAfter,I=typeof c.warnAfter=="string"?new Dn(c.warnAfter):c.warnAfter,h=typeof c.since=="string"?new Dn(c.since):c.since??I,b=c.error||d&&u.compareTo(d)>=0,R=!I||u.compareTo(I)>=0;return b?Hls(n,d,h,c.message):R?Yls(n,d,h,c.message):oc}function Jls(n,c){return function(){return n(),c.apply(this,arguments)}}function Uls(n,c){let u=Xls(c?.name??w.getFunctionName(n),c);return Jls(u,n)}function Zqe(n,c,u,d){if(Object.defineProperty(h,"name",{...Object.getOwnPropertyDescriptor(h,"name"),value:n}),d)for(let b of Object.keys(d)){let R=+b;!isNaN(R)&&Qa(c,`${R}`)&&(c[R]=Uls(c[R],{...d[R],name:n}))}let I=Kls(c,u);return h;function h(...b){let R=I(b),N=R!==void 0?c[R]:void 0;if(typeof N=="function")return N(...b);throw new TypeError("Invalid arguments")}}function Kls(n,c){return u=>{for(let d=0;Qa(n,`${d}`)&&Qa(c,`${d}`);d++){let I=c[d];if(I(u))return d}}}function mHr(n){return{overload:c=>({bind:u=>({finish:()=>Zqe(n,c,u),deprecate:d=>({finish:()=>Zqe(n,c,u,d)})})})}}var hHr={};o(hHr,{ActionInvalidate:()=>BGe,ActionPackageInstalled:()=>vGe,ActionSet:()=>EGe,ActionWatchTypingLocations:()=>x_e,Arguments:()=>N7e,AutoImportProviderProject:()=>gWt,AuxiliaryProject:()=>lWt,CharRangeSection:()=>GWt,CloseFileWatcherEvent:()=>jqe,CommandNames:()=>jHr,ConfigFileDiagEvent:()=>Yqe,ConfiguredProject:()=>AWt,ConfiguredProjectLoadKind:()=>mWt,CreateDirectoryWatcherEvent:()=>Kqe,CreateFileWatcherEvent:()=>Uqe,Errors:()=>MG,EventBeginInstallTypes:()=>w7e,EventEndInstallTypes:()=>T7e,EventInitializationFailed:()=>zkt,EventTypesRegistry:()=>S7e,ExternalProject:()=>Wqe,GcTimer:()=>qVt,InferredProject:()=>cWt,LargeFileReferencedEvent:()=>Hqe,LineIndex:()=>V0e,LineLeaf:()=>dZe,LineNode:()=>ire,LogLevel:()=>MVt,Msg:()=>HVt,OpenFileInfoTelemetryEvent:()=>dWt,Project:()=>f7,ProjectInfoTelemetryEvent:()=>Jqe,ProjectKind:()=>x0e,ProjectLanguageServiceStateEvent:()=>Xqe,ProjectLoadingFinishEvent:()=>Mqe,ProjectLoadingStartEvent:()=>Qqe,ProjectService:()=>BWt,ProjectsUpdatedInBackgroundEvent:()=>gZe,ScriptInfo:()=>rWt,ScriptVersionCache:()=>c$e,Session:()=>tYr,TextStorage:()=>tWt,ThrottledOperations:()=>zVt,TypingsCache:()=>nWt,TypingsInstallerAdapter:()=>oYr,allFilesAreJsOrDts:()=>sWt,allRootFilesAreJsOrDts:()=>iWt,asNormalizedPath:()=>EHr,convertCompilerOptions:()=>AZe,convertFormatOptions:()=>tre,convertScriptKindName:()=>qqe,convertTypeAcquisition:()=>fWt,convertUserPreferences:()=>IWt,convertWatchOptions:()=>Z0e,countEachFileTypes:()=>k0e,createInstallTypingsRequest:()=>YVt,createModuleSpecifierCache:()=>wWt,createNormalizedPathMap:()=>BHr,createPackageJsonCache:()=>TWt,createSortedArray:()=>jVt,emptyArray:()=>bm,findArgument:()=>_Zr,forEachResolvedProjectReferenceProject:()=>r$e,formatDiagnosticToProtocol:()=>L0e,formatMessage:()=>NWt,getBaseConfigFileName:()=>Lqe,getLocationInNewDocument:()=>kWt,hasArgument:()=>hZr,hasNoTypeScriptSource:()=>oWt,indent:()=>Eue,isBackgroundProject:()=>F0e,isConfigFile:()=>vWt,isConfiguredProject:()=>HZ,isDynamicFileName:()=>D0e,isExternalProject:()=>G0e,isInferredProject:()=>ere,isInferredProjectName:()=>XVt,isProjectDeferredClose:()=>uZe,makeAutoImportProviderProjectName:()=>UVt,makeAuxiliaryProjectName:()=>KVt,makeInferredProjectName:()=>JVt,maxFileSize:()=>Oqe,maxProgramSizeForNonTsFiles:()=>Pqe,normalizedPathToPath:()=>R0e,nowString:()=>yZr,nullCancellationToken:()=>JHr,nullTypingsInstaller:()=>Vqe,protocol:()=>$Vt,removeSorted:()=>vHr,stringifyIndented:()=>fP,toEvent:()=>RWt,toNormalizedPath:()=>Of,tryConvertScriptKindName:()=>zqe,typingsInstaller:()=>QVt,updateProjectIfDirty:()=>M2});var QVt={};o(QVt,{TypingsInstaller:()=>qls,getNpmCommandForInstallation:()=>yHr,installNpmPackages:()=>zls,typingsName:()=>bHr});var jls={isEnabled:()=>!1,writeLine:oc};function _Hr(n,c,u,d){try{let I=U6(c,Do(n,"index.d.ts"),{moduleResolution:2},u);return I.resolvedModule&&I.resolvedModule.resolvedFileName}catch(I){d.isEnabled()&&d.writeLine(`Failed to resolve ${c} in folder '${n}': ${I.message}`);return}}function zls(n,c,u,d){let I=!1;for(let h=u.length;h>0;){let b=yHr(n,c,u,h);h=b.remaining,I=d(b.command)||I}return I}function yHr(n,c,u,d){let I=u.length-d,h,b=d;for(;h=`${n} install --ignore-scripts ${(b===u.length?u:u.slice(I,I+b)).join(" ")} --save-dev --user-agent="typesInstaller/${c}"`,!(h.length<8e3);)b=b-Math.floor(b/2);return{command:h,remaining:d-b}}var qls=class{constructor(n,c,u,d,I,h=jls){this.installTypingHost=n,this.globalCachePath=c,this.safeListPath=u,this.typesMapLocation=d,this.throttleLimit=I,this.log=h,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 '${c}', safe file path '${u}', types map path ${d}`),this.processCacheLocation(this.globalCachePath)}handleRequest(n){switch(n.kind){case"discover":this.install(n);break;case"closeProject":this.closeProject(n);break;case"typesRegistry":{let c={};this.typesRegistry.forEach((d,I)=>{c[I]=d});let u={kind:S7e,typesRegistry:c};this.sendResponse(u);break}case"installPackage":{this.installPackage(n);break}default:w.assertNever(n)}}closeProject(n){this.closeWatchers(n.projectName)}closeWatchers(n){if(this.log.isEnabled()&&this.log.writeLine(`Closing file watchers for project '${n}'`),!this.projectWatchers.get(n)){this.log.isEnabled()&&this.log.writeLine(`No watchers are registered for project '${n}'`);return}this.projectWatchers.delete(n),this.sendResponse({kind:x_e,projectName:n,files:[]}),this.log.isEnabled()&&this.log.writeLine(`Closing file watchers for project '${n}' - done.`)}install(n){this.log.isEnabled()&&this.log.writeLine(`Got install request${fP(n)}`),n.cachePath&&(this.log.isEnabled()&&this.log.writeLine(`Request specifies cache path '${n.cachePath}', loading cached information...`),this.processCacheLocation(n.cachePath)),this.safeList===void 0&&this.initializeSafeList();let c=GN.discoverTypings(this.installTypingHost,this.log.isEnabled()?u=>this.log.writeLine(u):void 0,n.fileNames,n.projectRootPath,this.safeList,this.packageNameToTypingLocation,n.typeAcquisition,n.unresolvedImports,this.typesRegistry,n.compilerOptions);this.watchFiles(n.projectName,c.filesToWatch),c.newTypingNames.length?this.installTypings(n,n.cachePath||this.globalCachePath,c.cachedTypingPaths,c.newTypingNames):(this.sendResponse(this.createSetTypings(n,c.cachedTypingPaths)),this.log.isEnabled()&&this.log.writeLine("No new typings were requested as a result of typings discovery"))}installPackage(n){let{fileName:c,packageName:u,projectName:d,projectRootPath:I,id:h}=n,b=sI(oa(c),R=>{if(this.installTypingHost.fileExists(Do(R,"package.json")))return R})||I;if(b)this.installWorker(-1,[u],b,R=>{let N=R?`Package ${u} installed.`:`There was an error installing ${u}.`,V={kind:vGe,projectName:d,id:h,success:R,message:N};this.sendResponse(V)});else{let R={kind:vGe,projectName:d,id:h,success:!1,message:"Could not determine a project root path."};this.sendResponse(R)}}initializeSafeList(){if(this.typesMapLocation){let n=GN.loadTypesMap(this.installTypingHost,this.typesMapLocation);if(n){this.log.writeLine(`Loaded safelist from types map file '${this.typesMapLocation}'`),this.safeList=n;return}this.log.writeLine(`Failed to load safelist from types map file '${this.typesMapLocation}'`)}this.safeList=GN.loadSafeList(this.installTypingHost,this.safeListPath)}processCacheLocation(n){if(this.log.isEnabled()&&this.log.writeLine(`Processing cache location '${n}'`),this.knownCachesSet.has(n)){this.log.isEnabled()&&this.log.writeLine("Cache location was already processed...");return}let c=Do(n,"package.json"),u=Do(n,"package-lock.json");if(this.log.isEnabled()&&this.log.writeLine(`Trying to find '${c}'...`),this.installTypingHost.fileExists(c)&&this.installTypingHost.fileExists(u)){let d=JSON.parse(this.installTypingHost.readFile(c)),I=JSON.parse(this.installTypingHost.readFile(u));if(this.log.isEnabled()&&(this.log.writeLine(`Loaded content of '${c}':${fP(d)}`),this.log.writeLine(`Loaded content of '${u}':${fP(I)}`)),d.devDependencies&&I.dependencies)for(let h in d.devDependencies){if(!Qa(I.dependencies,h))continue;let b=kA(h);if(!b)continue;let R=_Hr(n,b,this.installTypingHost,this.log);if(!R){this.missingTypingsSet.add(b);continue}let N=this.packageNameToTypingLocation.get(b);if(N){if(N.typingLocation===R)continue;this.log.isEnabled()&&this.log.writeLine(`New typing for package ${b} from '${R}' conflicts with existing typing file '${N}'`)}this.log.isEnabled()&&this.log.writeLine(`Adding entry into typings cache: '${b}' => '${R}'`);let V=Dt(I.dependencies,h),P=V&&V.version;if(!P)continue;let Q={typingLocation:R,version:new Dn(P)};this.packageNameToTypingLocation.set(b,Q)}}this.log.isEnabled()&&this.log.writeLine(`Finished processing cache location '${n}'`),this.knownCachesSet.add(n)}filterTypings(n){return tr(n,c=>{let u=Bte(c);if(this.missingTypingsSet.has(u)){this.log.isEnabled()&&this.log.writeLine(`'${c}':: '${u}' is in missingTypingsSet - skipping...`);return}let d=GN.validatePackageName(c);if(d!==GN.NameValidationResult.Ok){this.missingTypingsSet.add(u),this.log.isEnabled()&&this.log.writeLine(GN.renderPackageNameValidationFailure(d,c));return}if(!this.typesRegistry.has(u)){this.log.isEnabled()&&this.log.writeLine(`'${c}':: Entry for package '${u}' does not exist in local types registry - skipping...`);return}if(this.packageNameToTypingLocation.get(u)&&GN.isTypingUpToDate(this.packageNameToTypingLocation.get(u),this.typesRegistry.get(u))){this.log.isEnabled()&&this.log.writeLine(`'${c}':: '${u}' already has an up-to-date typing - skipping...`);return}return u})}ensurePackageDirectoryExists(n){let c=Do(n,"package.json");this.log.isEnabled()&&this.log.writeLine(`Npm config file: ${c}`),this.installTypingHost.fileExists(c)||(this.log.isEnabled()&&this.log.writeLine(`Npm config file: '${c}' is missing, creating new one...`),this.ensureDirectoryExists(n,this.installTypingHost),this.installTypingHost.writeFile(c,'{ "private": true }'))}installTypings(n,c,u,d){this.log.isEnabled()&&this.log.writeLine(`Installing typings ${JSON.stringify(d)}`);let I=this.filterTypings(d);if(I.length===0){this.log.isEnabled()&&this.log.writeLine("All typings are known to be missing or invalid - no need to install more typings"),this.sendResponse(this.createSetTypings(n,u));return}this.ensurePackageDirectoryExists(c);let h=this.installRunCount;this.installRunCount++,this.sendResponse({kind:w7e,eventId:h,typingsInstallerVersion:y,projectName:n.projectName});let b=I.map(bHr);this.installTypingsAsync(h,b,c,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(let V of I)this.missingTypingsSet.add(V);return}this.log.isEnabled()&&this.log.writeLine(`Installed typings ${JSON.stringify(b)}`);let N=[];for(let V of I){let P=_Hr(c,V,this.installTypingHost,this.log);if(!P){this.missingTypingsSet.add(V);continue}let Q=this.typesRegistry.get(V),te=new Dn(Q[`ts${m}`]||Q[this.latestDistTag]),re={typingLocation:P,version:te};this.packageNameToTypingLocation.set(V,re),N.push(P)}this.log.isEnabled()&&this.log.writeLine(`Installed typing files ${JSON.stringify(N)}`),this.sendResponse(this.createSetTypings(n,u.concat(N)))}finally{let N={kind:T7e,eventId:h,projectName:n.projectName,packagesToInstall:b,installSuccess:R,typingsInstallerVersion:y};this.sendResponse(N)}})}ensureDirectoryExists(n,c){let u=oa(n);c.directoryExists(u)||this.ensureDirectoryExists(u,c),c.directoryExists(n)||c.createDirectory(n)}watchFiles(n,c){if(!c.length){this.closeWatchers(n);return}let u=this.projectWatchers.get(n),d=new Set(c);!u||eT(d,I=>!u.has(I))||eT(u,I=>!d.has(I))?(this.projectWatchers.set(n,d),this.sendResponse({kind:x_e,projectName:n,files:c})):this.sendResponse({kind:x_e,projectName:n,files:void 0})}createSetTypings(n,c){return{projectName:n.projectName,typeAcquisition:n.typeAcquisition,compilerOptions:n.compilerOptions,typings:c,unresolvedImports:n.unresolvedImports,kind:EGe}}installTypingsAsync(n,c,u,d){this.pendingRunRequests.unshift({requestId:n,packageNames:c,cwd:u,onRequestCompleted:d}),this.executeWithThrottling()}executeWithThrottling(){for(;this.inFlightRequestCount{this.inFlightRequestCount--,n.onRequestCompleted(c),this.executeWithThrottling()})}}};function bHr(n){return`@types/${n}@ts${m}`}var MVt=(n=>(n[n.terse=0]="terse",n[n.normal=1]="normal",n[n.requestTime=2]="requestTime",n[n.verbose=3]="verbose",n))(MVt||{}),bm=jVt(),HVt=(n=>(n.Err="Err",n.Info="Info",n.Perf="Perf",n))(HVt||{});function YVt(n,c,u,d){return{projectName:n.getProjectName(),fileNames:n.getFileNames(!0,!0).concat(n.getExcludedFiles()),compilerOptions:n.getCompilationSettings(),typeAcquisition:c,unresolvedImports:u,projectRootPath:n.getCurrentDirectory(),cachePath:d,kind:"discover"}}var MG;(n=>{function c(){throw new Error("No Project.")}n.ThrowNoProject=c;function u(){throw new Error("The project's language service is disabled.")}n.ThrowProjectLanguageServiceDisabled=u;function d(I,h){throw new Error(`Project '${h.getProjectName()}' does not contain document '${I}'`)}n.ThrowProjectDoesNotContainDocument=d})(MG||(MG={}));function Of(n){return Mc(n)}function R0e(n,c,u){let d=bd(n)?n:Qc(n,c);return u(d)}function EHr(n){return n}function BHr(){let n=new Map;return{get(c){return n.get(c)},set(c,u){n.set(c,u)},contains(c){return n.has(c)},remove(c){n.delete(c)}}}function XVt(n){return/dev\/null\/inferredProject\d+\*/.test(n)}function JVt(n){return`/dev/null/inferredProject${n}*`}function UVt(n){return`/dev/null/autoImportProviderProject${n}*`}function KVt(n){return`/dev/null/auxiliaryProject${n}*`}function jVt(){return[]}var zVt=class uPn{constructor(c,u){this.host=c,this.pendingTimeouts=new Map,this.logger=u.hasLevel(3)?u:void 0}schedule(c,u,d){let I=this.pendingTimeouts.get(c);I&&this.host.clearTimeout(I),this.pendingTimeouts.set(c,this.host.setTimeout(uPn.run,u,c,this,d)),this.logger&&this.logger.info(`Scheduled: ${c}${I?", Cancelled earlier one":""}`)}cancel(c){let u=this.pendingTimeouts.get(c);return u?(this.host.clearTimeout(u),this.pendingTimeouts.delete(c)):!1}static run(c,u,d){var I,h;(I=jl)==null||I.logStartScheduledOperation(c),u.pendingTimeouts.delete(c),u.logger&&u.logger.info(`Running: ${c}`),d(),(h=jl)==null||h.logStopScheduledOperation()}},qVt=class gPn{constructor(c,u,d){this.host=c,this.delay=u,this.logger=d}scheduleCollect(){!this.host.gc||this.timerId!==void 0||(this.timerId=this.host.setTimeout(gPn.run,this.delay,this))}static run(c){var u,d;c.timerId=void 0,(u=jl)==null||u.logStartScheduledOperation("GC collect");let I=c.logger.hasLevel(2),h=I&&c.host.getMemoryUsage();if(c.host.gc(),I){let b=c.host.getMemoryUsage();c.logger.perftrc(`GC::before ${h}, after ${b}`)}(d=jl)==null||d.logStopScheduledOperation()}};function Lqe(n){let c=kA(n);return c==="tsconfig.json"||c==="jsconfig.json"?c:void 0}function vHr(n,c,u){if(!n||n.length===0)return;if(n[0]===c){n.splice(0,1);return}let d=Vg(n,c,vl,u);d>=0&&n.splice(d,1)}var $Vt={};o($Vt,{ClassificationType:()=>k7e,CommandTypes:()=>eWt,CompletionTriggerKind:()=>D7e,IndentStyle:()=>NHr,JsxEmit:()=>RHr,ModuleKind:()=>DHr,ModuleResolutionKind:()=>xHr,NewLineKind:()=>kHr,OrganizeImportsMode:()=>R7e,PollingWatchKind:()=>THr,ScriptTarget:()=>GHr,SemicolonPreference:()=>x7e,WatchDirectoryKind:()=>wHr,WatchFileKind:()=>SHr});var eWt=(n=>(n.JsxClosingTag="jsxClosingTag",n.LinkedEditingRange="linkedEditingRange",n.Brace="brace",n.BraceFull="brace-full",n.BraceCompletion="braceCompletion",n.GetSpanOfEnclosingComment="getSpanOfEnclosingComment",n.Change="change",n.Close="close",n.Completions="completions",n.CompletionInfo="completionInfo",n.CompletionsFull="completions-full",n.CompletionDetails="completionEntryDetails",n.CompletionDetailsFull="completionEntryDetails-full",n.CompileOnSaveAffectedFileList="compileOnSaveAffectedFileList",n.CompileOnSaveEmitFile="compileOnSaveEmitFile",n.Configure="configure",n.Definition="definition",n.DefinitionFull="definition-full",n.DefinitionAndBoundSpan="definitionAndBoundSpan",n.DefinitionAndBoundSpanFull="definitionAndBoundSpan-full",n.Implementation="implementation",n.ImplementationFull="implementation-full",n.EmitOutput="emit-output",n.Exit="exit",n.FileReferences="fileReferences",n.FileReferencesFull="fileReferences-full",n.Format="format",n.Formatonkey="formatonkey",n.FormatFull="format-full",n.FormatonkeyFull="formatonkey-full",n.FormatRangeFull="formatRange-full",n.Geterr="geterr",n.GeterrForProject="geterrForProject",n.SemanticDiagnosticsSync="semanticDiagnosticsSync",n.SyntacticDiagnosticsSync="syntacticDiagnosticsSync",n.SuggestionDiagnosticsSync="suggestionDiagnosticsSync",n.NavBar="navbar",n.NavBarFull="navbar-full",n.Navto="navto",n.NavtoFull="navto-full",n.NavTree="navtree",n.NavTreeFull="navtree-full",n.DocumentHighlights="documentHighlights",n.DocumentHighlightsFull="documentHighlights-full",n.Open="open",n.Quickinfo="quickinfo",n.QuickinfoFull="quickinfo-full",n.References="references",n.ReferencesFull="references-full",n.Reload="reload",n.Rename="rename",n.RenameInfoFull="rename-full",n.RenameLocationsFull="renameLocations-full",n.Saveto="saveto",n.SignatureHelp="signatureHelp",n.SignatureHelpFull="signatureHelp-full",n.FindSourceDefinition="findSourceDefinition",n.Status="status",n.TypeDefinition="typeDefinition",n.ProjectInfo="projectInfo",n.ReloadProjects="reloadProjects",n.Unknown="unknown",n.OpenExternalProject="openExternalProject",n.OpenExternalProjects="openExternalProjects",n.CloseExternalProject="closeExternalProject",n.SynchronizeProjectList="synchronizeProjectList",n.ApplyChangedToOpenFiles="applyChangedToOpenFiles",n.UpdateOpen="updateOpen",n.EncodedSyntacticClassificationsFull="encodedSyntacticClassifications-full",n.EncodedSemanticClassificationsFull="encodedSemanticClassifications-full",n.Cleanup="cleanup",n.GetOutliningSpans="getOutliningSpans",n.GetOutliningSpansFull="outliningSpans",n.TodoComments="todoComments",n.Indentation="indentation",n.DocCommentTemplate="docCommentTemplate",n.CompilerOptionsDiagnosticsFull="compilerOptionsDiagnostics-full",n.NameOrDottedNameSpan="nameOrDottedNameSpan",n.BreakpointStatement="breakpointStatement",n.CompilerOptionsForInferredProjects="compilerOptionsForInferredProjects",n.GetCodeFixes="getCodeFixes",n.GetCodeFixesFull="getCodeFixes-full",n.GetCombinedCodeFix="getCombinedCodeFix",n.GetCombinedCodeFixFull="getCombinedCodeFix-full",n.ApplyCodeActionCommand="applyCodeActionCommand",n.GetSupportedCodeFixes="getSupportedCodeFixes",n.GetApplicableRefactors="getApplicableRefactors",n.GetEditsForRefactor="getEditsForRefactor",n.GetMoveToRefactoringFileSuggestions="getMoveToRefactoringFileSuggestions",n.GetPasteEdits="getPasteEdits",n.GetEditsForRefactorFull="getEditsForRefactor-full",n.OrganizeImports="organizeImports",n.OrganizeImportsFull="organizeImports-full",n.GetEditsForFileRename="getEditsForFileRename",n.GetEditsForFileRenameFull="getEditsForFileRename-full",n.ConfigurePlugin="configurePlugin",n.SelectionRange="selectionRange",n.SelectionRangeFull="selectionRange-full",n.ToggleLineComment="toggleLineComment",n.ToggleLineCommentFull="toggleLineComment-full",n.ToggleMultilineComment="toggleMultilineComment",n.ToggleMultilineCommentFull="toggleMultilineComment-full",n.CommentSelection="commentSelection",n.CommentSelectionFull="commentSelection-full",n.UncommentSelection="uncommentSelection",n.UncommentSelectionFull="uncommentSelection-full",n.PrepareCallHierarchy="prepareCallHierarchy",n.ProvideCallHierarchyIncomingCalls="provideCallHierarchyIncomingCalls",n.ProvideCallHierarchyOutgoingCalls="provideCallHierarchyOutgoingCalls",n.ProvideInlayHints="provideInlayHints",n.WatchChange="watchChange",n.MapCode="mapCode",n))(eWt||{}),SHr=(n=>(n.FixedPollingInterval="FixedPollingInterval",n.PriorityPollingInterval="PriorityPollingInterval",n.DynamicPriorityPolling="DynamicPriorityPolling",n.FixedChunkSizePolling="FixedChunkSizePolling",n.UseFsEvents="UseFsEvents",n.UseFsEventsOnParentDirectory="UseFsEventsOnParentDirectory",n))(SHr||{}),wHr=(n=>(n.UseFsEvents="UseFsEvents",n.FixedPollingInterval="FixedPollingInterval",n.DynamicPriorityPolling="DynamicPriorityPolling",n.FixedChunkSizePolling="FixedChunkSizePolling",n))(wHr||{}),THr=(n=>(n.FixedInterval="FixedInterval",n.PriorityInterval="PriorityInterval",n.DynamicPriority="DynamicPriority",n.FixedChunkSize="FixedChunkSize",n))(THr||{}),NHr=(n=>(n.None="None",n.Block="Block",n.Smart="Smart",n))(NHr||{}),RHr=(n=>(n.None="none",n.Preserve="preserve",n.ReactNative="react-native",n.React="react",n.ReactJSX="react-jsx",n.ReactJSXDev="react-jsxdev",n))(RHr||{}),DHr=(n=>(n.None="none",n.CommonJS="commonjs",n.AMD="amd",n.UMD="umd",n.System="system",n.ES6="es6",n.ES2015="es2015",n.ES2020="es2020",n.ES2022="es2022",n.ESNext="esnext",n.Node16="node16",n.NodeNext="nodenext",n.Preserve="preserve",n))(DHr||{}),xHr=(n=>(n.Classic="classic",n.Node="node",n.NodeJs="node",n.Node10="node10",n.Node16="node16",n.NodeNext="nodenext",n.Bundler="bundler",n))(xHr||{}),kHr=(n=>(n.Crlf="Crlf",n.Lf="Lf",n))(kHr||{}),GHr=(n=>(n.ES3="es3",n.ES5="es5",n.ES6="es6",n.ES2015="es2015",n.ES2016="es2016",n.ES2017="es2017",n.ES2018="es2018",n.ES2019="es2019",n.ES2020="es2020",n.ES2021="es2021",n.ES2022="es2022",n.ES2023="es2023",n.ESNext="esnext",n.JSON="json",n.Latest="esnext",n))(GHr||{}),tWt=class{constructor(n,c,u){this.host=n,this.info=c,this.isOpen=!1,this.ownFileText=!1,this.pendingReloadFromDisk=!1,this.version=u||0}getVersion(){return this.svc?`SVC-${this.version}-${this.svc.getSnapshotVersion()}`:`Text-${this.version}`}hasScriptVersionCache_TestOnly(){return this.svc!==void 0}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(n){this.svc=void 0,this.text=n,this.textSnapshot=void 0,this.lineMap=void 0,this.fileSize=void 0,this.resetSourceMapInfo(),this.version++}edit(n,c,u){this.switchToScriptVersionCache().edit(n,c-n,u),this.ownFileText=!1,this.text=void 0,this.textSnapshot=void 0,this.lineMap=void 0,this.fileSize=void 0,this.resetSourceMapInfo()}reload(n){return w.assert(n!==void 0),this.pendingReloadFromDisk=!1,!this.text&&this.svc&&(this.text=t7(this.svc.getSnapshot())),this.text!==n?(this.useText(n),this.ownFileText=!1,!0):!1}reloadWithFileText(n){let{text:c,fileSize:u}=n||!this.info.isDynamicOrHasMixedContent()?this.getFileTextAndSize(n):{text:"",fileSize:void 0},d=this.reload(c);return this.fileSize=u,this.ownFileText=!n||n===this.info.fileName,this.ownFileText&&this.info.mTime===BA.getTime()&&(this.info.mTime=(this.host.getModifiedTime(this.info.fileName)||BA).getTime()),d}scheduleReloadIfNeeded(){return!this.pendingReloadFromDisk&&!this.ownFileText?this.pendingReloadFromDisk=!0:!1}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 n;return((n=this.tryUseScriptVersionCache())==null?void 0:n.getSnapshot())||(this.textSnapshot??(this.textSnapshot=SGe.fromString(w.checkDefined(this.text))))}getAbsolutePositionAndLineText(n){let c=this.tryUseScriptVersionCache();if(c)return c.getAbsolutePositionAndLineText(n);let u=this.getLineMap();return n<=u.length?{absolutePosition:u[n-1],lineText:this.text.substring(u[n-1],u[n])}:{absolutePosition:this.text.length,lineText:void 0}}lineToTextSpan(n){let c=this.tryUseScriptVersionCache();if(c)return c.lineToTextSpan(n);let u=this.getLineMap(),d=u[n],I=n+1c===void 0?c=this.host.readFile(u)||"":c;if(!z5(this.info.fileName)){let I=this.host.getFileSize?this.host.getFileSize(u):d().length;if(I>Oqe)return w.assert(!!this.info.containingProjects.length),this.info.containingProjects[0].projectService.logger.info(`Skipped loading contents of large file ${u} for info ${this.info.fileName}: fileSize: ${I}`),this.info.containingProjects[0].projectService.sendLargeFileReferencedEvent(u,I),{text:"",fileSize:I}}return{text:d()}}switchToScriptVersionCache(){return(!this.svc||this.pendingReloadFromDisk)&&(this.svc=c$e.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=c$e.fromString(w.checkDefined(this.text)),this.textSnapshot=void 0),this.svc):this.svc}getOrLoadText(){return(this.text===void 0||this.pendingReloadFromDisk)&&(w.assert(!this.svc||this.pendingReloadFromDisk,"ScriptVersionCache should not be set when reloading from disk"),this.reloadWithFileText()),this.text}getLineMap(){return w.assert(!this.svc,"ScriptVersionCache should not be set"),this.lineMap||(this.lineMap=fc(w.checkDefined(this.text)))}getLineInfo(){let n=this.tryUseScriptVersionCache();if(n)return{getLineCount:()=>n.getLineCount(),getLineText:u=>n.getAbsolutePositionAndLineText(u+1).lineText};let c=this.getLineMap();return e6e(this.text,c)}};function D0e(n){return n[0]==="^"||(n.includes("walkThroughSnippet:/")||n.includes("untitled:/"))&&kA(n)[0]==="^"||n.includes(":^")&&!n.includes($u)}var rWt=class{constructor(n,c,u,d,I,h){this.host=n,this.fileName=c,this.scriptKind=u,this.hasMixedContent=d,this.path=I,this.containingProjects=[],this.isDynamic=D0e(c),this.textStorage=new tWt(n,this,h),(d||this.isDynamic)&&(this.realpath=this.path),this.scriptKind=u||ple(c)}isDynamicOrHasMixedContent(){return this.hasMixedContent||this.isDynamic}isScriptOpen(){return this.textStorage.isOpen}open(n){this.textStorage.isOpen=!0,n!==void 0&&this.textStorage.reload(n)&&this.markContainingProjectsAsDirty()}close(n=!0){this.textStorage.isOpen=!1,n&&this.textStorage.scheduleReloadIfNeeded()&&this.markContainingProjectsAsDirty()}getSnapshot(){return this.textStorage.getSnapshot()}ensureRealPath(){if(this.realpath===void 0&&(this.realpath=this.path,this.host.realpath)){w.assert(!!this.containingProjects.length);let n=this.containingProjects[0],c=this.host.realpath(this.path);c&&(this.realpath=n.toPath(c),this.realpath!==this.path&&n.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(n){let c=!this.isAttached(n);return c&&(this.containingProjects.push(n),n.getCompilerOptions().preserveSymlinks||this.ensureRealPath(),n.onFileAddedOrRemoved(this.isSymlink())),c}isAttached(n){switch(this.containingProjects.length){case 0:return!1;case 1:return this.containingProjects[0]===n;case 2:return this.containingProjects[0]===n||this.containingProjects[1]===n;default:return Ue(this.containingProjects,n)}}detachFromProject(n){switch(this.containingProjects.length){case 0:return;case 1:this.containingProjects[0]===n&&(n.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects.pop());break;case 2:this.containingProjects[0]===n?(n.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects[0]=this.containingProjects.pop()):this.containingProjects[1]===n&&(n.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects.pop());break;default:tA(this.containingProjects,n)&&n.onFileAddedOrRemoved(this.isSymlink());break}}detachAllProjects(){for(let n of this.containingProjects){HZ(n)&&n.getCachedDirectoryStructureHost().addOrDeleteFile(this.fileName,this.path,2);let c=n.getRootFilesMap().get(this.path);n.removeFile(this,!1,!1),n.onFileAddedOrRemoved(this.isSymlink()),c&&!ere(n)&&n.addMissingFileRoot(c.fileName)}Ur(this.containingProjects)}getDefaultProject(){switch(this.containingProjects.length){case 0:return MG.ThrowNoProject();case 1:return uZe(this.containingProjects[0])||F0e(this.containingProjects[0])?MG.ThrowNoProject():this.containingProjects[0];default:let n,c,u,d;for(let I=0;I!n.isOrphan())}isContainedByBackgroundProject(){return lr(this.containingProjects,F0e)}lineToTextSpan(n){return this.textStorage.lineToTextSpan(n)}lineOffsetToPosition(n,c,u){return this.textStorage.lineOffsetToPosition(n,c,u)}positionToLineOffset(n){$ls(n);let c=this.textStorage.positionToLineOffset(n);return eus(c),c}isJavaScript(){return this.scriptKind===1||this.scriptKind===2}closeSourceMapFileWatcher(){this.sourceMapFilePath&&!Ya(this.sourceMapFilePath)&&(VB(this.sourceMapFilePath),this.sourceMapFilePath=void 0)}};function $ls(n){w.assert(typeof n=="number",`Expected position ${n} to be a number.`),w.assert(n>=0,"Expected position to be non-negative.")}function eus(n){w.assert(typeof n.line=="number",`Expected line ${n.line} to be a number.`),w.assert(typeof n.offset=="number",`Expected offset ${n.offset} to be a number.`),w.assert(n.line>0,`Expected line to be non-${n.line===0?"zero":"negative"}`),w.assert(n.offset>0,`Expected offset to be non-${n.offset===0?"zero":"negative"}`)}var Vqe={isKnownTypesPackageName:NC,installPackage:ja,enqueueInstallTypingsRequest:oc,attach:oc,onProjectClosed:oc,globalTypingsCacheLocation:void 0};function FHr(n,c){if(n===c||(n||bm).length===0&&(c||bm).length===0)return!0;let u=new Map,d=0;for(let I of n)u.get(I)!==!0&&(u.set(I,!0),d++);for(let I of c){let h=u.get(I);if(h===void 0)return!1;h===!0&&(u.set(I,!1),d--)}return d===0}function tus(n,c){return n.enable!==c.enable||!FHr(n.include,c.include)||!FHr(n.exclude,c.exclude)}function rus(n,c){return wG(n)!==wG(c)}function nus(n,c){return n===c?!1:!Cn(n,c)}var nWt=class{constructor(n){this.installer=n,this.perProjectCache=new Map}isKnownTypesPackageName(n){return this.installer.isKnownTypesPackageName(n)}installPackage(n){return this.installer.installPackage(n)}enqueueInstallTypingsForProject(n,c,u){let d=n.getTypeAcquisition();if(!d||!d.enable)return;let I=this.perProjectCache.get(n.getProjectName());(u||!I||tus(d,I.typeAcquisition)||rus(n.getCompilationSettings(),I.compilerOptions)||nus(c,I.unresolvedImports))&&(this.perProjectCache.set(n.getProjectName(),{compilerOptions:n.getCompilationSettings(),typeAcquisition:d,typings:I?I.typings:bm,unresolvedImports:c,poisoned:!0}),this.installer.enqueueInstallTypingsRequest(n,d,c))}updateTypingsForProject(n,c,u,d,I){let h=mg(I);return this.perProjectCache.set(n,{compilerOptions:c,typeAcquisition:u,typings:h,unresolvedImports:d,poisoned:!1}),!u||!u.enable?bm:h}onProjectClosed(n){this.perProjectCache.delete(n.getProjectName())&&this.installer.onProjectClosed(n)}},x0e=(n=>(n[n.Inferred=0]="Inferred",n[n.Configured=1]="Configured",n[n.External=2]="External",n[n.AutoImportProvider=3]="AutoImportProvider",n[n.Auxiliary=4]="Auxiliary",n))(x0e||{});function k0e(n,c=!1){let u={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(let d of n){let I=c?d.textStorage.getTelemetryFileSize():0;switch(d.scriptKind){case 1:u.js+=1,u.jsSize+=I;break;case 2:u.jsx+=1,u.jsxSize+=I;break;case 3:Gh(d.fileName)?(u.dts+=1,u.dtsSize+=I):(u.ts+=1,u.tsSize+=I);break;case 4:u.tsx+=1,u.tsxSize+=I;break;case 7:u.deferred+=1,u.deferredSize+=I;break}}return u}function ius(n){let c=k0e(n.getScriptInfos());return c.js>0&&c.ts===0&&c.tsx===0}function iWt(n){let c=k0e(n.getRootScriptInfos());return c.ts===0&&c.tsx===0}function sWt(n){let c=k0e(n.getScriptInfos());return c.ts===0&&c.tsx===0}function oWt(n){return!n.some(c=>Ad(c,".ts")&&!Gh(c)||Ad(c,".tsx"))}function aWt(n){return n.generatedFilePath!==void 0}var f7=class APn{constructor(c,u,d,I,h,b,R,N,V,P,Q){switch(this.projectKind=u,this.projectService=d,this.documentRegistry=I,this.compilerOptions=R,this.compileOnSaveEnabled=N,this.watchOptions=V,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=NC,this.dirty=!1,this.typingFiles=bm,this.moduleSpecifierCache=wWt(this),this.createHash=Yi(this.projectService.host,this.projectService.host.createHash),this.globalCacheResolutionModuleName=GN.nonRelativeModuleNameForTypingCache,this.updateFromProjectInProgress=!1,this.projectName=c,this.directoryStructureHost=P,this.currentDirectory=this.projectService.getNormalizedAbsolutePath(Q),this.getCanonicalFileName=this.projectService.toCanonicalFileName,this.jsDocParsingMode=this.projectService.jsDocParsingMode,this.cancellationToken=new MZt(this.projectService.cancellationToken,this.projectService.throttleWaitMilliseconds),this.compilerOptions?(h||wG(this.compilerOptions)||this.projectService.hasDeferredExtension())&&(this.compilerOptions.allowNonTsExtensions=!0):(this.compilerOptions=GFe(),this.compilerOptions.allowNonTsExtensions=!0,this.compilerOptions.allowJs=!0),d.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:w.assertNever(d.serverMode)}this.setInternalCompilerOptionsForEmittingJsFiles();let te=this.projectService.host;this.projectService.logger.loggingEnabled()?this.trace=re=>this.writeLog(re):te.trace&&(this.trace=re=>te.trace(re)),this.realpath=Yi(te,te.realpath),this.resolutionCache=z6e(this,this.currentDirectory,!0),this.languageService=HZt(this,this.documentRegistry,this.projectService.serverMode),b&&this.disableLanguageService(b),this.markAsDirty(),F0e(this)||(this.projectService.pendingEnsureProjectForOpenFiles=!0),this.projectService.onProjectCreation(this)}getResolvedProjectReferenceToRedirect(c){}isNonTsProject(){return M2(this),sWt(this)}isJsOnlyProject(){return M2(this),ius(this)}static resolveModule(c,u,d,I){return APn.importServicePluginSync({name:c},[u],d,I).resolvedModule}static importServicePluginSync(c,u,d,I){w.assertIsDefined(d.require);let h,b;for(let R of u){let N=df(d.resolvePath(Do(R,"node_modules")));I(`Loading ${c.name} from ${R} (resolved to ${N})`);let V=d.require(N,c.name);if(!V.error){b=V.module;break}let P=V.error.stack||V.error.message||JSON.stringify(V.error);(h??(h=[])).push(`Failed to load module '${c.name}' from ${N}: ${P}`)}return{pluginConfigEntry:c,resolvedModule:b,errorLogs:h}}static async importServicePluginAsync(c,u,d,I){w.assertIsDefined(d.importPlugin);let h,b;for(let R of u){let N=Do(R,"node_modules");I(`Dynamically importing ${c.name} from ${R} (resolved to ${N})`);let V;try{V=await d.importPlugin(N,c.name)}catch(Q){V={module:void 0,error:Q}}if(!V.error){b=V.module;break}let P=V.error.stack||V.error.message||JSON.stringify(V.error);(h??(h=[])).push(`Failed to dynamically import module '${c.name}' from ${N}: ${P}`)}return{pluginConfigEntry:c,resolvedModule:b,errorLogs:h}}isKnownTypesPackageName(c){return this.typingsCache.isKnownTypesPackageName(c)}installPackage(c){return this.typingsCache.installPackage({...c,projectName:this.projectName,projectRootPath:this.toPath(this.currentDirectory)})}getGlobalTypingsCacheLocation(){return this.getGlobalCache()}get typingsCache(){return this.projectService.typingsCache}getSymlinkCache(){return this.symlinks||(this.symlinks=ihe(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 v;let c;return this.rootFilesMap.forEach(u=>{(this.languageServiceEnabled||u.info&&u.info.isScriptOpen())&&(c||(c=[])).push(u.fileName)}),ai(c,this.typingFiles)||v}getOrCreateScriptInfoAndAttachToProject(c){let u=this.projectService.getOrCreateScriptInfoNotOpenedByClient(c,this.currentDirectory,this.directoryStructureHost,!1);if(u){let d=this.rootFilesMap.get(u.path);d&&d.info!==u&&(d.info=u),u.attachToProject(this)}return u}getScriptKind(c){let u=this.projectService.getScriptInfoForPath(this.toPath(c));return u&&u.scriptKind}getScriptVersion(c){let u=this.projectService.getOrCreateScriptInfoNotOpenedByClient(c,this.currentDirectory,this.directoryStructureHost,!1);return u&&u.getLatestVersion()}getScriptSnapshot(c){let u=this.getOrCreateScriptInfoAndAttachToProject(c);if(u)return u.getSnapshot()}getCancellationToken(){return this.cancellationToken}getCurrentDirectory(){return this.currentDirectory}getDefaultLibFileName(){let c=oa(Mc(this.projectService.getExecutingFilePath()));return Do(c,Cg(this.compilerOptions))}useCaseSensitiveFileNames(){return this.projectService.host.useCaseSensitiveFileNames}readDirectory(c,u,d,I,h){return this.directoryStructureHost.readDirectory(c,u,d,I,h)}readFile(c){return this.projectService.host.readFile(c)}writeFile(c,u){return this.projectService.host.writeFile(c,u)}fileExists(c){let u=this.toPath(c);return!this.isWatchedMissingFile(u)&&this.directoryStructureHost.fileExists(c)}resolveModuleNameLiterals(c,u,d,I,h,b){return this.resolutionCache.resolveModuleNameLiterals(c,u,d,I,h,b)}getModuleResolutionCache(){return this.resolutionCache.getModuleResolutionCache()}resolveTypeReferenceDirectiveReferences(c,u,d,I,h,b){return this.resolutionCache.resolveTypeReferenceDirectiveReferences(c,u,d,I,h,b)}resolveLibrary(c,u,d,I){return this.resolutionCache.resolveLibrary(c,u,d,I)}directoryExists(c){return this.directoryStructureHost.directoryExists(c)}getDirectories(c){return this.directoryStructureHost.getDirectories(c)}getCachedDirectoryStructureHost(){}toPath(c){return AA(c,this.currentDirectory,this.projectService.toCanonicalFileName)}watchDirectoryOfFailedLookupLocation(c,u,d){return this.projectService.watchFactory.watchDirectory(c,u,d,this.projectService.getWatchOptions(this),_m.FailedLookupLocations,this)}watchAffectingFileLocation(c,u){return this.projectService.watchFactory.watchFile(c,u,2e3,this.projectService.getWatchOptions(this),_m.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(c,u,d){return this.projectService.watchFactory.watchDirectory(c,u,d,this.projectService.getWatchOptions(this),_m.TypeRoots,this)}hasChangedAutomaticTypeDirectiveNames(){return this.resolutionCache.hasChangedAutomaticTypeDirectiveNames()}onChangedAutomaticTypeDirectiveNames(){this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)}getGlobalCache(){return this.getTypeAcquisition().enable?this.projectService.typingsInstaller.globalTypingsCacheLocation:void 0}fileIsOpen(c){return this.projectService.openFiles.has(c)}writeLog(c){this.projectService.logger.info(c)}log(c){this.writeLog(c)}error(c){this.projectService.logger.msg(c,"Err")}setInternalCompilerOptionsForEmittingJsFiles(){(this.projectKind===0||this.projectKind===2)&&(this.compilerOptions.noEmitForJsFiles=!0)}getGlobalProjectErrors(){return Gt(this.projectErrors,c=>!c.file)||bm}getAllProjectErrors(){return this.projectErrors||bm}setProjectErrors(c){this.projectErrors=c}getLanguageService(c=!0){return c&&M2(this),this.languageService}getSourceMapper(){return this.getLanguageService().getSourceMapper()}clearSourceMapperCache(){this.languageService.clearSourceMapperCache()}getDocumentPositionMapper(c,u){return this.projectService.getDocumentPositionMapper(this,c,u)}getSourceFileLike(c){return this.projectService.getSourceFileLike(c,this)}shouldEmitFile(c){return c&&!c.isDynamicOrHasMixedContent()&&!this.program.isSourceOfProjectReferenceRedirect(c.path)}getCompileOnSaveAffectedFileList(c){return this.languageServiceEnabled?(M2(this),this.builderState=gT.create(this.program,this.builderState,!0),tr(gT.getFilesAffectedBy(this.builderState,this.program,c.path,this.cancellationToken,this.projectService.host),u=>this.shouldEmitFile(this.projectService.getScriptInfoForPath(u.path))?u.fileName:void 0)):[]}emitFile(c,u){if(!this.languageServiceEnabled||!this.shouldEmitFile(c))return{emitSkipped:!0,diagnostics:bm};let{emitSkipped:d,diagnostics:I,outputFiles:h}=this.getLanguageService().getEmitOutput(c.fileName);if(!d){for(let b of h){let R=Qc(b.name,this.currentDirectory);u(R,b.text,b.writeByteOrderMark)}if(this.builderState&&WE(this.compilerOptions)){let b=h.filter(R=>Gh(R.name));if(b.length===1){let R=this.program.getSourceFile(c.fileName),N=this.projectService.host.createHash?this.projectService.host.createHash(b[0].text):vh(b[0].text);gT.updateSignatureOfFile(this.builderState,N,R.resolvedPath)}}}return{emitSkipped:d,diagnostics:I}}enableLanguageService(){this.languageServiceEnabled||this.projectService.serverMode===2||(this.languageServiceEnabled=!0,this.lastFileExceededProgramSize=void 0,this.projectService.onUpdateLanguageServiceStateForProject(this,!0))}cleanupProgram(){if(this.program){for(let c of this.program.getSourceFiles())this.detachScriptInfoIfNotRoot(c.fileName);this.program.forEachResolvedProjectReference(c=>this.detachScriptInfoFromProject(c.sourceFile.fileName)),this.program=void 0}}disableLanguageService(c){this.languageServiceEnabled&&(w.assert(this.projectService.serverMode!==2),this.languageService.cleanupSemanticCache(),this.languageServiceEnabled=!1,this.cleanupProgram(),this.lastFileExceededProgramSize=c,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(c){return!c||!c.include?c:{...c,include:this.removeExistingTypings(c.include)}}getExternalFiles(c){return mg(Fr(this.plugins,u=>{if(typeof u.module.getExternalFiles=="function")try{return u.module.getExternalFiles(this,c||0)}catch(d){this.projectService.logger.info(`A plugin threw an exception in getExternalFiles: ${d}`),d.stack&&this.projectService.logger.info(d.stack)}}))}getSourceFile(c){if(this.program)return this.program.getSourceFileByPath(c)}getSourceFileOrConfigFile(c){let u=this.program.getCompilerOptions();return c===u.configFilePath?u.configFile:this.getSourceFile(c)}close(){var c;this.projectService.typingsCache.onProjectClosed(this),this.closeWatchingTypingLocations(),this.cleanupProgram(),X(this.externalFiles,u=>this.detachScriptInfoIfNotRoot(u)),this.rootFilesMap.forEach(u=>{var d;return(d=u.info)==null?void 0:d.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,(c=this.packageJsonWatches)==null||c.forEach(u=>{u.projects.delete(this),u.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&&(Y0(this.missingFilesMap,xB),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(c){let u=this.projectService.getScriptInfo(c);u&&!this.isRoot(u)&&u.detachFromProject(this)}isClosed(){return this.rootFilesMap===void 0}hasRoots(){var c;return!!((c=this.rootFilesMap)!=null&&c.size)}isOrphan(){return!1}getRootFiles(){return this.rootFilesMap&&on(gn(this.rootFilesMap.values(),c=>{var u;return(u=c.info)==null?void 0:u.fileName}))}getRootFilesMap(){return this.rootFilesMap}getRootScriptInfos(){return on(gn(this.rootFilesMap.values(),c=>c.info))}getScriptInfos(){return this.languageServiceEnabled?Ot(this.program.getSourceFiles(),c=>{let u=this.projectService.getScriptInfoForPath(c.resolvedPath);return w.assert(!!u,"getScriptInfo",()=>`scriptInfo for a file '${c.fileName}' Path: '${c.path}' / '${c.resolvedPath}' is missing.`),u}):this.getRootScriptInfos()}getExcludedFiles(){return bm}getFileNames(c,u){if(!this.program)return[];if(!this.languageServiceEnabled){let I=this.getRootFiles();if(this.compilerOptions){let h=YZt(this.compilerOptions);h&&(I||(I=[])).push(h)}return I}let d=[];for(let I of this.program.getSourceFiles())c&&this.program.isSourceFileFromExternalLibrary(I)||d.push(I.fileName);if(!u){let I=this.program.getCompilerOptions().configFile;if(I&&(d.push(I.fileName),I.extendedSourceFiles))for(let h of I.extendedSourceFiles)d.push(h)}return d}getFileNamesWithRedirectInfo(c){return this.getFileNames().map(u=>({fileName:u,isSourceOfProjectReferenceRedirect:c&&this.isSourceOfProjectReferenceRedirect(u)}))}hasConfigFile(c){if(this.program&&this.languageServiceEnabled){let u=this.program.getCompilerOptions().configFile;if(u){if(c===u.fileName)return!0;if(u.extendedSourceFiles){for(let d of u.extendedSourceFiles)if(c===d)return!0}}}return!1}containsScriptInfo(c){if(this.isRoot(c))return!0;if(!this.program)return!1;let u=this.program.getSourceFileByPath(c.path);return!!u&&u.resolvedPath===c.path}containsFile(c,u){let d=this.projectService.getScriptInfoForNormalizedPath(c);return d&&(d.isScriptOpen()||!u)?this.containsScriptInfo(d):!1}isRoot(c){var u,d;return((d=(u=this.rootFilesMap)==null?void 0:u.get(c.path))==null?void 0:d.info)===c}addRoot(c,u){w.assert(!this.isRoot(c)),this.rootFilesMap.set(c.path,{fileName:u||c.fileName,info:c}),c.attachToProject(this),this.markAsDirty()}addMissingFileRoot(c){let u=this.projectService.toPath(c);this.rootFilesMap.set(u,{fileName:c}),this.markAsDirty()}removeFile(c,u,d){this.isRoot(c)&&this.removeRoot(c),u?this.resolutionCache.removeResolutionsOfFile(c.path):this.resolutionCache.invalidateResolutionOfFile(c.path),this.cachedUnresolvedImportsPerFile.delete(c.path),d&&c.detachFromProject(this),this.markAsDirty()}registerFileUpdate(c){(this.updatedFileNames||(this.updatedFileNames=new Set)).add(c)}markFileAsDirty(c){this.markAsDirty(),this.exportMapCache&&!this.exportMapCache.isEmpty()&&(this.changedFilesForExportMapCache||(this.changedFilesForExportMapCache=new Set)).add(c)}markAsDirty(){this.dirty||(this.projectStateVersion++,this.dirty=!0)}markAutoImportProviderAsDirty(){var c;this.autoImportProviderHost||(this.autoImportProviderHost=void 0),(c=this.autoImportProviderHost)==null||c.markAsDirty()}onAutoImportProviderSettingsChanged(){var c;this.autoImportProviderHost===!1?this.autoImportProviderHost=void 0:(c=this.autoImportProviderHost)==null||c.markAsDirty()}onPackageJsonChange(){this.moduleSpecifierCache.clear(),this.autoImportProviderHost&&this.autoImportProviderHost.markAsDirty()}onFileAddedOrRemoved(c){this.hasAddedorRemovedFiles=!0,c&&(this.hasAddedOrRemovedSymlinks=!0)}onDiscoveredSymlink(){this.hasAddedOrRemovedSymlinks=!0}updateFromProject(){M2(this)}updateGraph(){var c,u,d,I;(c=Qi)==null||c.push(Qi.Phase.Session,"updateGraph",{name:this.projectName,kind:x0e[this.projectKind]}),(u=jl)==null||u.logStartUpdateGraph(),this.resolutionCache.startRecordingFilesWithChangedResolutions();let h=this.updateGraphWorker(),b=this.hasAddedorRemovedFiles;this.hasAddedorRemovedFiles=!1,this.hasAddedOrRemovedSymlinks=!1;let R=this.resolutionCache.finishRecordingFilesWithChangedResolutions()||bm;for(let V of R)this.cachedUnresolvedImportsPerFile.delete(V);this.languageServiceEnabled&&this.projectService.serverMode===0&&!this.isOrphan()?((h||R.length)&&(this.lastCachedUnresolvedImportsList=sus(this.program,this.cachedUnresolvedImportsPerFile)),this.projectService.typingsCache.enqueueInstallTypingsForProject(this,this.lastCachedUnresolvedImportsList,b)):this.lastCachedUnresolvedImportsList=void 0;let N=this.projectProgramVersion===0&&h;return h&&this.projectProgramVersion++,b&&this.markAutoImportProviderAsDirty(),N&&this.getPackageJsonAutoImportProvider(),(d=jl)==null||d.logStopUpdateGraph(),(I=Qi)==null||I.pop(),!h}updateTypingFiles(c){OI(c,this.typingFiles,ql(!this.useCaseSensitiveFileNames()),oc,u=>this.detachScriptInfoFromProject(u))&&(this.typingFiles=c,this.resolutionCache.setFilesWithInvalidatedNonRelativeUnresolvedImports(this.cachedUnresolvedImportsPerFile),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this))}closeWatchingTypingLocations(){this.typingWatchers&&Y0(this.typingWatchers,xB),this.typingWatchers=void 0}onTypingInstallerWatchInvoke(){this.typingWatchers.isInvoked=!0,this.projectService.updateTypingsForProject({projectName:this.getProjectName(),kind:BGe})}watchTypingLocations(c){if(!c){this.typingWatchers.isInvoked=!1;return}if(!c.length){this.closeWatchingTypingLocations();return}let u=new Map(this.typingWatchers);this.typingWatchers||(this.typingWatchers=new Map),this.typingWatchers.isInvoked=!1;let d=(I,h)=>{let b=this.toPath(I);u.delete(b),this.typingWatchers.has(b)||this.typingWatchers.set(b,h==="FileWatcher"?this.projectService.watchFactory.watchFile(I,()=>this.typingWatchers.isInvoked?this.writeLog("TypingWatchers already invoked"):this.onTypingInstallerWatchInvoke(),2e3,this.projectService.getWatchOptions(this),_m.TypingInstallerLocationFile,this):this.projectService.watchFactory.watchDirectory(I,R=>{if(this.typingWatchers.isInvoked)return this.writeLog("TypingWatchers already invoked");if(!Ad(R,".json"))return this.writeLog("Ignoring files that are not *.json");if(dh(R,Do(this.projectService.typingsInstaller.globalTypingsCacheLocation,"package.json"),!this.useCaseSensitiveFileNames()))return this.writeLog("Ignoring package.json change at global typings location");this.onTypingInstallerWatchInvoke()},1,this.projectService.getWatchOptions(this),_m.TypingInstallerLocationDirectory,this))};for(let I of c){let h=kA(I);if(h==="package.json"||h==="bower.json"){d(I,"FileWatcher");continue}if(vg(this.currentDirectory,I,this.currentDirectory,!this.useCaseSensitiveFileNames())){let b=I.indexOf($u,this.currentDirectory.length+1);d(b!==-1?I.substr(0,b):I,"DirectoryWatcher");continue}if(vg(this.projectService.typingsInstaller.globalTypingsCacheLocation,I,this.currentDirectory,!this.useCaseSensitiveFileNames())){d(this.projectService.typingsInstaller.globalTypingsCacheLocation,"DirectoryWatcher");continue}d(I,"DirectoryWatcher")}u.forEach((I,h)=>{I.close(),this.typingWatchers.delete(h)})}getCurrentProgram(){return this.program}removeExistingTypings(c){let u=vke(this.getCompilerOptions(),this.directoryStructureHost);return c.filter(d=>!u.includes(d))}updateGraphWorker(){var c,u;let d=this.languageService.getCurrentProgram();w.assert(d===this.program),w.assert(!this.isClosed(),"Called update graph worker of closed project"),this.writeLog(`Starting updateGraphWorker: Project: ${this.getProjectName()}`);let I=$l(),{hasInvalidatedResolutions:h,hasInvalidatedLibResolutions:b}=this.resolutionCache.createHasInvalidatedResolutions(NC,NC);this.hasInvalidatedResolutions=h,this.hasInvalidatedLibResolutions=b,this.resolutionCache.startCachingPerDirectoryResolution(),this.dirty=!1,this.updateFromProjectInProgress=!0,this.program=this.languageService.getProgram(),this.updateFromProjectInProgress=!1,(c=Qi)==null||c.push(Qi.Phase.Session,"finishCachingPerDirectoryResolution"),this.resolutionCache.finishCachingPerDirectoryResolution(this.program,d),(u=Qi)==null||u.pop(),w.assert(d===void 0||this.program!==void 0);let R=!1;if(this.program&&(!d||this.program!==d&&this.program.structureIsReused!==2)){if(R=!0,d){for(let P of d.getSourceFiles()){let Q=this.program.getSourceFileByPath(P.resolvedPath);(!Q||P.resolvedPath===P.path&&Q.resolvedPath!==P.path)&&this.detachScriptInfoFromProject(P.fileName,!!this.program.getSourceFileByPath(P.path),!0)}d.forEachResolvedProjectReference(P=>{this.program.getResolvedProjectReferenceByPath(P.sourceFile.path)||this.detachScriptInfoFromProject(P.sourceFile.fileName,void 0,!0)})}if(this.rootFilesMap.forEach((P,Q)=>{var te;let re=this.program.getSourceFileByPath(Q),ue=P.info;!re||((te=P.info)==null?void 0:te.path)===re.resolvedPath||(P.info=this.projectService.getScriptInfo(re.fileName),w.assert(P.info.isAttached(this)),ue?.detachFromProject(this))}),E6e(this.program,this.missingFilesMap||(this.missingFilesMap=new Map),(P,Q)=>this.addMissingFileWatcher(P,Q)),this.generatedFilesMap){let P=this.compilerOptions.outFile;aWt(this.generatedFilesMap)?(!P||!this.isValidGeneratedFileWatcher(a0(P)+".d.ts",this.generatedFilesMap))&&this.clearGeneratedFileWatch():P?this.clearGeneratedFileWatch():this.generatedFilesMap.forEach((Q,te)=>{let re=this.program.getSourceFileByPath(te);(!re||re.resolvedPath!==te||!this.isValidGeneratedFileWatcher(Gce(re.fileName,this.compilerOptions,this.program),Q))&&(VB(Q),this.generatedFilesMap.delete(te))})}this.languageServiceEnabled&&this.projectService.serverMode===0&&this.resolutionCache.updateTypeRootsWatch()}this.projectService.verifyProgram(this),this.exportMapCache&&!this.exportMapCache.isEmpty()&&(this.exportMapCache.releaseSymbols(),this.hasAddedorRemovedFiles||d&&!this.program.structureIsReused?this.exportMapCache.clear():this.changedFilesForExportMapCache&&d&&this.program&&eT(this.changedFilesForExportMapCache,P=>{let Q=d.getSourceFileByPath(P),te=this.program.getSourceFileByPath(P);return!Q||!te?(this.exportMapCache.clear(),!0):this.exportMapCache.onFileChanged(Q,te,!!this.getTypeAcquisition().enable)})),this.changedFilesForExportMapCache&&this.changedFilesForExportMapCache.clear(),(this.hasAddedOrRemovedSymlinks||this.program&&!this.program.structureIsReused&&this.getCompilerOptions().preserveSymlinks)&&(this.symlinks=void 0,this.moduleSpecifierCache.clear());let N=this.externalFiles||bm;this.externalFiles=this.getExternalFiles(),OI(this.externalFiles,N,ql(!this.useCaseSensitiveFileNames()),P=>{let Q=this.projectService.getOrCreateScriptInfoNotOpenedByClient(P,this.currentDirectory,this.directoryStructureHost,!1);Q?.attachToProject(this)},P=>this.detachScriptInfoFromProject(P));let V=$l()-I;return this.sendPerformanceEvent("UpdateGraph",V),this.writeLog(`Finishing updateGraphWorker: Project: ${this.getProjectName()} projectStateVersion: ${this.projectStateVersion} projectProgramVersion: ${this.projectProgramVersion} structureChanged: ${R}${this.program?` structureIsReused:: ${Af[this.program.structureIsReused]}`:""} Elapsed: ${V}ms`),this.projectService.logger.isTestLogger?this.program!==d?this.print(!0,this.hasAddedorRemovedFiles,!0):this.writeLog("Same program as before"):this.hasAddedorRemovedFiles?this.print(!0,!0,!1):this.program!==d&&this.writeLog("Different program with same set of files"),this.projectService.verifyDocumentRegistry(),R}sendPerformanceEvent(c,u){this.projectService.sendPerformanceEvent(c,u)}detachScriptInfoFromProject(c,u,d){let I=this.projectService.getScriptInfo(c);I&&(I.detachFromProject(this),u||this.resolutionCache.removeResolutionsOfFile(I.path,d))}addMissingFileWatcher(c,u){var d;if(HZ(this)){let h=this.projectService.configFileExistenceInfoCache.get(c);if((d=h?.config)!=null&&d.projects.has(this.canonicalConfigFilePath))return _ue}let I=this.projectService.watchFactory.watchFile(Qc(u,this.currentDirectory),(h,b)=>{HZ(this)&&this.getCachedDirectoryStructureHost().addOrDeleteFile(h,c,b),b===0&&this.missingFilesMap.has(c)&&(this.missingFilesMap.delete(c),I.close(),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this))},500,this.projectService.getWatchOptions(this),_m.MissingFile,this);return I}isWatchedMissingFile(c){return!!this.missingFilesMap&&this.missingFilesMap.has(c)}addGeneratedFileWatch(c,u){if(this.compilerOptions.outFile)this.generatedFilesMap||(this.generatedFilesMap=this.createGeneratedFileWatcher(c));else{let d=this.toPath(u);if(this.generatedFilesMap){if(aWt(this.generatedFilesMap)){w.fail(`${this.projectName} Expected to not have --out watcher for generated file with options: ${JSON.stringify(this.compilerOptions)}`);return}if(this.generatedFilesMap.has(d))return}else this.generatedFilesMap=new Map;this.generatedFilesMap.set(d,this.createGeneratedFileWatcher(c))}}createGeneratedFileWatcher(c){return{generatedFilePath:this.toPath(c),watcher:this.projectService.watchFactory.watchFile(c,()=>{this.clearSourceMapperCache(),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)},2e3,this.projectService.getWatchOptions(this),_m.MissingGeneratedFile,this)}}isValidGeneratedFileWatcher(c,u){return this.toPath(c)===u.generatedFilePath}clearGeneratedFileWatch(){this.generatedFilesMap&&(aWt(this.generatedFilesMap)?VB(this.generatedFilesMap):Y0(this.generatedFilesMap,VB),this.generatedFilesMap=void 0)}getScriptInfoForNormalizedPath(c){let u=this.projectService.getScriptInfoForPath(this.toPath(c));return u&&!u.isAttached(this)?MG.ThrowProjectDoesNotContainDocument(c,this):u}getScriptInfo(c){return this.projectService.getScriptInfo(c)}filesToString(c){return this.filesToStringWorker(c,!0,!1)}filesToStringWorker(c,u,d){if(this.isInitialLoadPending())return` Files (0) InitialLoadPending `;if(!this.program)return` Files (0) NoProgram `;let I=this.program.getSourceFiles(),h=` Files (${I.length}) `;if(c){for(let b of I)h+=` ${b.fileName}${d?` ${b.version} ${JSON.stringify(b.text)}`:""} `;u&&(h+=` -`,t7e(this.program,b=>h+=` ${b} -`))}return h}print(c,u,d){var I;this.writeLog(`Project '${this.projectName}' (${R0e[this.projectKind]})`),this.writeLog(this.filesToStringWorker(c&&this.projectService.logger.hasLevel(3),u&&this.projectService.logger.hasLevel(3),d&&this.projectService.logger.hasLevel(3))),this.writeLog("-----------------------------------------------"),this.autoImportProviderHost&&this.autoImportProviderHost.print(!1,!1,!1),(I=this.noDtsResolutionProject)==null||I.print(!1,!1,!1)}setCompilerOptions(c){var u;if(c){c.allowNonTsExtensions=!0;let d=this.compilerOptions;this.compilerOptions=c,this.setInternalCompilerOptionsForEmittingJsFiles(),(u=this.noDtsResolutionProject)==null||u.setCompilerOptions(this.getCompilerOptionsForNoDtsResolutionProject()),wB(d,c)&&(this.cachedUnresolvedImportsPerFile.clear(),this.lastCachedUnresolvedImportsList=void 0,this.resolutionCache.onChangesAffectModuleResolution(),this.moduleSpecifierCache.clear()),this.markAsDirty()}}setWatchOptions(c){this.watchOptions=c}getWatchOptions(){return this.watchOptions}setTypeAcquisition(c){c&&(this.typeAcquisition=this.removeLocalTypingsFromTypeAcquisition(c))}getTypeAcquisition(){return this.typeAcquisition||{}}getChangesSinceVersion(c,u){var d,I;let h=u?N=>on(N.entries(),([V,P])=>({fileName:V,isSourceOfProjectReferenceRedirect:P})):N=>on(N.keys());this.isInitialLoadPending()||M2(this);let b={projectName:this.getProjectName(),version:this.projectProgramVersion,isInferred:qte(this),options:this.getCompilationSettings(),languageServiceDisabled:!this.languageServiceEnabled,lastFileExceededProgramSize:this.lastFileExceededProgramSize},R=this.updatedFileNames;if(this.updatedFileNames=void 0,this.lastReportedFileNames&&c===this.lastReportedVersion){if(this.projectProgramVersion===this.lastReportedVersion&&!R)return{info:b,projectErrors:this.getGlobalProjectErrors()};let N=this.lastReportedFileNames,V=((d=this.externalFiles)==null?void 0:d.map(Ae=>({fileName:Pf(Ae),isSourceOfProjectReferenceRedirect:!1})))||ym,P=cA(this.getFileNamesWithRedirectInfo(!!u).concat(V),Ae=>Ae.fileName,Ae=>Ae.isSourceOfProjectReferenceRedirect),M=new Map,te=new Map,re=R?on(R.keys()):[],ue=[];return JC(P,(Ae,de)=>{N.has(de)?u&&Ae!==N.get(de)&&ue.push({fileName:de,isSourceOfProjectReferenceRedirect:Ae}):M.set(de,Ae)}),JC(N,(Ae,de)=>{P.has(de)||te.set(de,Ae)}),this.lastReportedFileNames=P,this.lastReportedVersion=this.projectProgramVersion,{info:b,changes:{added:h(M),removed:h(te),updated:u?re.map(Ae=>({fileName:Ae,isSourceOfProjectReferenceRedirect:this.isSourceOfProjectReferenceRedirect(Ae)})):re,updatedRedirects:u?ue:void 0},projectErrors:this.getGlobalProjectErrors()}}else{let N=this.getFileNamesWithRedirectInfo(!!u),V=((I=this.externalFiles)==null?void 0:I.map(M=>({fileName:Pf(M),isSourceOfProjectReferenceRedirect:!1})))||ym,P=N.concat(V);return this.lastReportedFileNames=cA(P,M=>M.fileName,M=>M.isSourceOfProjectReferenceRedirect),this.lastReportedVersion=this.projectProgramVersion,{info:b,files:u?P:P.map(M=>M.fileName),projectErrors:this.getGlobalProjectErrors()}}}removeRoot(c){this.rootFilesMap.delete(c.path)}isSourceOfProjectReferenceRedirect(c){return!!this.program&&this.program.isSourceOfProjectReferenceRedirect(c)}getGlobalPluginSearchPaths(){return[...this.projectService.pluginProbeLocations,xo(this.projectService.getExecutingFilePath(),"../../..")]}enableGlobalPlugins(c){if(!this.projectService.globalPlugins.length)return;let u=this.projectService.host;if(!u.require&&!u.importPlugin){this.projectService.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");return}let d=this.getGlobalPluginSearchPaths();for(let I of this.projectService.globalPlugins)I&&(c.plugins&&c.plugins.some(h=>h.name===I)||(this.projectService.logger.info(`Loading global plugin ${I}`),this.enablePlugin({name:I,global:!0},d)))}enablePlugin(c,u){this.projectService.requestEnablePlugin(this,c,u)}enableProxy(c,u){try{if(typeof c!="function"){this.projectService.logger.info(`Skipped loading plugin ${u.name} because it did not expose a proper factory function`);return}let d={config:u,project:this,languageService:this.languageService,languageServiceHost:this,serverHost:this.projectService.host,session:this.projectService.session},I=c({typescript:lHr}),h=I.create(d);for(let b of Object.keys(this.languageService))b in h||(this.projectService.logger.info(`Plugin activation warning: Missing proxied method ${b} in created LS. Patching.`),h[b]=this.languageService[b]);this.projectService.logger.info("Plugin validation succeeded"),this.languageService=h,this.plugins.push({name:u.name,module:I})}catch(d){this.projectService.logger.info(`Plugin activation failed: ${d}`)}}onPluginConfigurationChanged(c,u){this.plugins.filter(d=>d.name===c).forEach(d=>{d.module.onConfigurationChanged&&d.module.onConfigurationChanged(u)})}refreshDiagnostics(){this.projectService.sendProjectsUpdatedInBackgroundEvent()}getPackageJsonsVisibleToFile(c,u){return this.projectService.serverMode!==0?ym:this.projectService.getPackageJsonsVisibleToFile(c,this,u)}getNearestAncestorDirectoryWithPackageJson(c){return this.projectService.getNearestAncestorDirectoryWithPackageJson(c)}getPackageJsonsForAutoImport(c){return this.getPackageJsonsVisibleToFile(xo(this.currentDirectory,lue),c)}getPackageJsonCache(){return this.projectService.packageJsonCache}getCachedExportInfoMap(){return this.exportMapCache||(this.exportMapCache=Fje(this))}clearCachedExportInfoMap(){var c;(c=this.exportMapCache)==null||c.clear()}getModuleSpecifierCache(){return this.moduleSpecifierCache}includePackageJsonAutoImports(){return this.projectService.includePackageJsonAutoImports()===0||!this.languageServiceEnabled||j_e(this.currentDirectory)||!this.isDefaultProjectForOpenFiles()?0:this.projectService.includePackageJsonAutoImports()}getHostForAutoImportProvider(){var c,u;return this.program?{fileExists:this.program.fileExists,directoryExists:this.program.directoryExists,realpath:this.program.realpath||((c=this.projectService.host.realpath)==null?void 0:c.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:(u=this.projectService.host.trace)==null?void 0:u.bind(this.projectService.host),useCaseSensitiveFileNames:this.program.useCaseSensitiveFileNames(),readDirectory:this.projectService.host.readDirectory.bind(this.projectService.host)}:this.projectService.host}getPackageJsonAutoImportProvider(){var c,u,d;if(this.autoImportProviderHost===!1)return;if(this.projectService.serverMode!==0){this.autoImportProviderHost=!1;return}if(this.autoImportProviderHost){if(M2(this.autoImportProviderHost),this.autoImportProviderHost.isEmpty()){this.autoImportProviderHost.close(),this.autoImportProviderHost=void 0;return}return this.autoImportProviderHost.getCurrentProgram()}let I=this.includePackageJsonAutoImports();if(I){(c=Mi)==null||c.push(Mi.Phase.Session,"getPackageJsonAutoImportProvider");let h=ql();if(this.autoImportProviderHost=cWt.create(I,this,this.getHostForAutoImportProvider(),this.documentRegistry),this.autoImportProviderHost)return M2(this.autoImportProviderHost),this.sendPerformanceEvent("CreatePackageJsonAutoImportProvider",ql()-h),(u=Mi)==null||u.pop(),this.autoImportProviderHost.getCurrentProgram();(d=Mi)==null||d.pop()}}isDefaultProjectForOpenFiles(){return!!JC(this.projectService.openFiles,(c,u)=>this.projectService.tryGetDefaultProjectForFile(this.projectService.getScriptInfoForPath(u))===this)}watchNodeModulesForPackageJsonChanges(c){return this.projectService.watchPackageJsonsInNodeModules(c,this)}getIncompleteCompletionsCache(){return this.projectService.getIncompleteCompletionsCache()}getNoDtsResolutionProject(c){return w.assert(this.projectService.serverMode===0),this.noDtsResolutionProject||(this.noDtsResolutionProject=new oWt(this.projectService,this.documentRegistry,this.getCompilerOptionsForNoDtsResolutionProject(),this.currentDirectory)),this.noDtsResolutionProject.rootFile!==c&&(this.projectService.setFileNamesOfAutpImportProviderOrAuxillaryProject(this.noDtsResolutionProject,[c]),this.noDtsResolutionProject.rootFile=c),this.noDtsResolutionProject}runWithTemporaryFileUpdate(c,u,d){var I,h,b,R;let N=this.program,V=w.checkDefined((I=this.program)==null?void 0:I.getSourceFile(c),"Expected file to be part of program"),P=w.checkDefined(V.getText());(h=this.getScriptInfo(c))==null||h.editContent(0,P.length,u),this.updateGraph();try{d(this.program,N,(b=this.program)==null?void 0:b.getSourceFile(c))}finally{(R=this.getScriptInfo(c))==null||R.editContent(0,this.program.getSourceFile(c).getText().length,P)}}getCompilerOptionsForNoDtsResolutionProject(){return{...this.getCompilerOptions(),noDtsResolution:!0,allowJs:!0,maxNodeModuleJsDepth:3,diagnostics:!1,skipLibCheck:!0,sourceMap:!1,types:v,lib:v,noLib:!0}}};function qls(n,c){var u,d;let I=n.getSourceFiles();(u=Mi)==null||u.push(Mi.Phase.Session,"getUnresolvedImports",{count:I.length});let h=n.getTypeChecker().getAmbientModules().map(R=>N2(R.getName())),b=Ir(Fr(I,R=>$ls(n,R,h,c)));return(d=Mi)==null||d.pop(),b}function $ls(n,c,u,d){return we(d,c.path,()=>{let I;return n.forEachResolvedModule(({resolvedModule:h},b)=>{(!h||!C6(h.extension))&&!Jl(b)&&!u.some(R=>R===b)&&(I=Hr(I,s_e(b).packageName))},c),I||ym})}var sWt=class extends l7{constructor(n,c,u,d,I,h,b){super(n.newInferredProjectName(),0,n,c,void 0,void 0,u,!1,d,n.host,h),this._isJsInferredProject=!1,this.typeAcquisition=b,this.projectRootPath=I&&n.toCanonicalFileName(I),!I&&!n.useSingleInferredProject&&(this.canonicalCurrentDirectory=n.toCanonicalFileName(this.currentDirectory)),this.enableGlobalPlugins(this.getCompilerOptions())}toggleJsInferredProject(n){n!==this._isJsInferredProject&&(this._isJsInferredProject=n,this.setCompilerOptions())}setCompilerOptions(n){if(!n&&!this.getCompilationSettings())return;let c=j7e(n||this.getCompilationSettings());this._isJsInferredProject&&typeof c.maxNodeModuleJsDepth!="number"?c.maxNodeModuleJsDepth=2:this._isJsInferredProject||(c.maxNodeModuleJsDepth=void 0),c.allowJs=!0,super.setCompilerOptions(c)}addRoot(n){w.assert(n.isScriptOpen()),this.projectService.startWatchingConfigFilesForInferredProjectRoot(n),!this._isJsInferredProject&&n.isJavaScript()?this.toggleJsInferredProject(!0):this.isOrphan()&&this._isJsInferredProject&&!n.isJavaScript()&&this.toggleJsInferredProject(!1),super.addRoot(n)}removeRoot(n){this.projectService.stopWatchingConfigFilesForScriptInfo(n),super.removeRoot(n),!this.isOrphan()&&this._isJsInferredProject&&n.isJavaScript()&&he(this.getRootScriptInfos(),c=>!c.isJavaScript())&&this.toggleJsInferredProject(!1)}isOrphan(){return!this.hasRoots()}isProjectWithSingleRoot(){return!this.projectRootPath&&!this.projectService.useSingleInferredProject||this.getRootScriptInfos().length===1}close(){X(this.getRootScriptInfos(),n=>this.projectService.stopWatchingConfigFilesForScriptInfo(n)),super.close()}getTypeAcquisition(){return this.typeAcquisition||{enable:tWt(this),include:v,exclude:v}}},oWt=class extends l7{constructor(n,c,u,d){super(n.newAuxiliaryProjectName(),4,n,c,!1,void 0,u,!1,void 0,n.host,d)}isOrphan(){return!0}scheduleInvalidateResolutionsOfFailedLookupLocations(){}},aWt=class $nr extends l7{constructor(c,u,d,I){super(c.projectService.newAutoImportProviderProjectName(),3,c.projectService,d,!1,void 0,I,!1,c.getWatchOptions(),c.projectService.host,c.currentDirectory),this.hostProject=c,this.rootFileNames=u,this.useSourceOfProjectReferenceRedirect=Hi(this.hostProject,this.hostProject.useSourceOfProjectReferenceRedirect),this.getParsedCommandLine=Hi(this.hostProject,this.hostProject.getParsedCommandLine)}static getRootFileNames(c,u,d,I){var h,b;if(!c)return v;let R=u.getCurrentProgram();if(!R)return v;let N=ql(),V,P,M=xo(u.currentDirectory,lue),te=u.getPackageJsonsForAutoImport(xo(u.currentDirectory,M));for(let Qe of te)(h=Qe.dependencies)==null||h.forEach((De,lt)=>Be(lt)),(b=Qe.peerDependencies)==null||b.forEach((De,lt)=>Be(lt));let re=0;if(V){let Qe=u.getSymlinkCache();for(let De of on(V.keys())){if(c===2&&re>this.maxDependencies)return u.log(`AutoImportProviderProject: attempted to add more than ${this.maxDependencies} dependencies. Aborting.`),v;let lt=N8e(De,u.currentDirectory,I,d,R.getModuleResolutionCache());if(lt){let je=Fe(lt,R,Qe);if(je){re+=de(je);continue}}if(!X([u.currentDirectory,u.getGlobalTypingsCacheLocation()],je=>{if(je){let st=N8e(`@types/${De}`,je,I,d,R.getModuleResolutionCache());if(st){let nt=Fe(st,R,Qe);return re+=de(nt),!0}}})&<&&I.allowJs&&I.maxNodeModuleJsDepth){let je=Fe(lt,R,Qe,!0);re+=de(je)}}}let ue=R.getResolvedProjectReferences(),Ae=0;return ue?.length&&u.projectService.getHostPreferences().includeCompletionsForModuleExports&&ue.forEach(Qe=>{if(Qe?.commandLine.options.outFile)Ae+=de(Ne([BG(Qe.commandLine.options.outFile,".d.ts")]));else if(Qe){let De=iu(()=>H6(Qe.commandLine,!u.useCaseSensitiveFileNames()));Ae+=de(Ne(tr(Qe.commandLine.fileNames,lt=>!kh(lt)&&!gd(lt,".json")&&!R.getSourceFile(lt)?Ste(lt,Qe.commandLine,!u.useCaseSensitiveFileNames(),De):void 0)))}}),P?.size&&u.log(`AutoImportProviderProject: found ${P.size} root files in ${re} dependencies ${Ae} referenced projects in ${ql()-N} ms`),P?on(P.values()):v;function de(Qe){return Qe?.length?(P??(P=new Set),Qe.forEach(De=>P.add(De)),1):0}function Be(Qe){uc(Qe,"@types/")||(V||(V=new Set)).add(Qe)}function Fe(Qe,De,lt,Le){var je;let st=Z8e(Qe,I,d,De.getModuleResolutionCache(),Le);if(st){let nt=(je=d.realpath)==null?void 0:je.call(d,Qe.packageDirectory),qe=nt?u.toPath(nt):void 0,it=qe&&qe!==u.toPath(Qe.packageDirectory);return it&<.setSymlinkedDirectory(Qe.packageDirectory,{real:AA(nt),realPath:AA(qe)}),Ne(st,it?It=>It.replace(Qe.packageDirectory,nt):void 0)}}function Ne(Qe,De){return tr(Qe,lt=>{let Le=De?De(lt):lt;if(!R.getSourceFile(Le)&&!(De&&R.getSourceFile(lt)))return Le})}}static create(c,u,d,I){if(c===0)return;let h={...u.getCompilerOptions(),...this.compilerOptionsOverrides},b=this.getRootFileNames(c,u,d,h);if(b.length)return new $nr(u,b,I,h)}isEmpty(){return!lr(this.rootFileNames)}isOrphan(){return!0}updateGraph(){let c=this.rootFileNames;c||(c=$nr.getRootFileNames(this.hostProject.includePackageJsonAutoImports(),this.hostProject,this.hostProject.getHostForAutoImportProvider(),this.getCompilationSettings())),this.projectService.setFileNamesOfAutpImportProviderOrAuxillaryProject(this,c),this.rootFileNames=c;let u=this.getCurrentProgram(),d=super.updateGraph();return u&&u!==this.getCurrentProgram()&&this.hostProject.clearCachedExportInfoMap(),d}scheduleInvalidateResolutionsOfFailedLookupLocations(){}hasRoots(){var c;return!!((c=this.rootFileNames)!=null&&c.length)}markAsDirty(){this.rootFileNames=void 0,super.markAsDirty()}getScriptFileNames(){return this.rootFileNames||v}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 c;return(c=this.hostProject.getCurrentProgram())==null?void 0:c.getModuleResolutionCache()}};aWt.maxDependencies=10,aWt.compilerOptionsOverrides={diagnostics:!1,skipLibCheck:!0,sourceMap:!1,types:v,lib:v,noLib:!0};var cWt=aWt,lWt=class extends l7{constructor(n,c,u,d,I,h){super(n,1,u,d,!1,void 0,{},!1,void 0,I,aa(n)),this.canonicalConfigFilePath=c,this.openFileWatchTriggered=new Map,this.canConfigFileJsonReportNoInputFiles=!1,this.isInitialLoadPending=pI,this.sendLoadingProjectFinish=!1,this.pendingUpdateLevel=2,this.pendingUpdateReason=h}setCompilerHost(n){this.compilerHost=n}getCompilerHost(){return this.compilerHost}useSourceOfProjectReferenceRedirect(){return this.languageServiceEnabled}getParsedCommandLine(n){let c=Mc(n),u=this.projectService.toCanonicalFileName(c),d=this.projectService.configFileExistenceInfoCache.get(u);return d||this.projectService.configFileExistenceInfoCache.set(u,d={exists:this.projectService.host.fileExists(c)}),this.projectService.ensureParsedConfigUptoDate(c,u,d,this),this.languageServiceEnabled&&this.projectService.serverMode===0&&this.projectService.watchWildcards(c,d,this),d.exists?d.config.parsedCommandLine:void 0}onReleaseParsedCommandLine(n){this.releaseParsedConfig(this.projectService.toCanonicalFileName(Mc(n)))}releaseParsedConfig(n){this.projectService.stopWatchingWildCards(n,this),this.projectService.releaseParsedConfig(n,this)}updateGraph(){if(this.deferredClose)return!1;let n=this.dirty;this.isInitialLoadPending=TC;let c=this.pendingUpdateLevel;this.pendingUpdateLevel=0;let u;switch(c){case 1:this.openFileWatchTriggered.clear(),u=this.projectService.reloadFileNamesOfConfiguredProject(this);break;case 2:this.openFileWatchTriggered.clear();let d=w.checkDefined(this.pendingUpdateReason);this.projectService.reloadConfiguredProject(this,d),u=!0;break;default:u=super.updateGraph()}return this.compilerHost=void 0,this.projectService.sendProjectLoadingFinishEvent(this),this.projectService.sendProjectTelemetry(this),c===2||u&&(!n||!this.triggerFileForConfigFileDiag||this.getCurrentProgram().structureIsReused===2)?this.triggerFileForConfigFileDiag=void 0:this.triggerFileForConfigFileDiag||this.projectService.sendConfigFileDiagEvent(this,void 0,!1),u}getCachedDirectoryStructureHost(){return this.directoryStructureHost}getConfigFilePath(){return this.getProjectName()}getProjectReferences(){return this.projectReferences}updateReferences(n){if(typeof process.versions.pnp<"u"){let c=this.getCurrentDirectory(),u=d=>{try{let I=bV(`${d}/`);if(!I)return d;let h=I.findPackageLocator(`${d}/`),{packageLocation:b}=I.getPackageInformation(h),R=xo(h.name,fp(b,d,!1));return I.resolveToUnqualified(R,`${c}/`)}catch{return d}};n=n?.map(d=>({...d,path:u(d.path)}))}this.projectReferences=n,this.potentialProjectReferences=void 0}setPotentialProjectReference(n){w.assert(this.isInitialLoadPending()),(this.potentialProjectReferences||(this.potentialProjectReferences=new Set)).add(n)}getResolvedProjectReferenceToRedirect(n){let c=this.getCurrentProgram();return c&&c.getResolvedProjectReferenceToRedirect(n)}forEachResolvedProjectReference(n){var c;return(c=this.getCurrentProgram())==null?void 0:c.forEachResolvedProjectReference(n)}enablePluginsWithOptions(n){var c;if(this.plugins.length=0,!((c=n.plugins)!=null&&c.length)&&!this.projectService.globalPlugins.length)return;let u=this.projectService.host;if(!u.require&&!u.importPlugin){this.projectService.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");return}let d=this.getGlobalPluginSearchPaths();if(this.projectService.allowLocalPluginLoads){let I=aa(this.canonicalConfigFilePath);this.projectService.logger.info(`Local plugin loading enabled; adding ${I} to search paths`),d.unshift(I)}if(n.plugins)for(let I of n.plugins)this.enablePlugin(I,d);return this.enableGlobalPlugins(n)}getGlobalProjectErrors(){return Gt(this.projectErrors,n=>!n.file)||ym}getAllProjectErrors(){return this.projectErrors||ym}setProjectErrors(n){this.projectErrors=n}close(){this.projectService.configFileExistenceInfoCache.forEach((n,c)=>this.releaseParsedConfig(c)),this.projectErrors=void 0,this.openFileWatchTriggered.clear(),this.compilerHost=void 0,super.close()}markAsDirty(){this.deferredClose||super.markAsDirty()}isSolution(){return this.getRootFilesMap().size===0&&!this.canConfigFileJsonReportNoInputFiles}isOrphan(){return!!this.deferredClose}getEffectiveTypeRoots(){return Xle(this.getCompilationSettings(),this)||[]}updateErrorOnNoInputFiles(n){hke(n,this.getConfigFilePath(),this.getCompilerOptions().configFile.configFileSpecs,this.projectErrors,this.canConfigFileJsonReportNoInputFiles)}},Lqe=class extends l7{constructor(n,c,u,d,I,h,b,R){super(n,2,c,u,!0,I,d,h,R,c.host,aa(b||Af(n))),this.externalProjectName=n,this.compileOnSaveEnabled=h,this.excludedFiles=[],this.enableGlobalPlugins(this.getCompilerOptions())}updateGraph(){let n=super.updateGraph();return this.projectService.sendProjectTelemetry(this),n}getExcludedFiles(){return this.excludedFiles}};function qte(n){return n.projectKind===0}function QZ(n){return n.projectKind===1}function x0e(n){return n.projectKind===2}function k0e(n){return n.projectKind===3||n.projectKind===4}function cZe(n){return QZ(n)&&!!n.deferredClose}var Vqe=20*1024*1024,Wqe=4*1024*1024,lZe="projectsUpdatedInBackground",Pqe="projectLoadingStart",Oqe="projectLoadingFinish",Mqe="largeFileReferenced",Qqe="configFileDiag",Yqe="projectLanguageServiceState",Hqe="projectInfo",uWt="openFileInfo",Xqe="createFileWatcher",Jqe="createDirectoryWatcher",Uqe="closeFileWatcher",RHr="*ensureProjectForOpenFiles*";function DHr(n){let c=new Map;for(let u of n)if(typeof u.type=="object"){let d=u.type;d.forEach(I=>{w.assert(typeof I=="number")}),c.set(u.name,d)}return c}var eus=DHr(cT),tus=DHr(W6),rus=new Map(Object.entries({none:0,block:1,smart:2})),gWt={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 $te(n){return Xa(n.indentStyle)&&(n.indentStyle=rus.get(n.indentStyle.toLowerCase()),w.assert(n.indentStyle!==void 0)),n}function uZe(n){return eus.forEach((c,u)=>{let d=n[u];Xa(d)&&(n[u]=c.get(d.toLowerCase()))}),n}function G0e(n,c){let u,d;return W6.forEach(I=>{let h=n[I.name];if(h===void 0)return;let b=tus.get(I.name);(u||(u={}))[I.name]=b?Xa(h)?b.get(h.toLowerCase()):h:I4(I,h,c||"",d||(d=[]))}),u&&{watchOptions:u,errors:d}}function AWt(n){let c;return lke.forEach(u=>{let d=n[u.name];d!==void 0&&((c||(c={}))[u.name]=d)}),c}function Kqe(n){return Xa(n)?jqe(n):n}function jqe(n){switch(n){case"JS":return 1;case"JSX":return 2;case"TS":return 3;case"TSX":return 4;default:return 0}}function dWt(n){let{lazyConfiguredProjectsFromExternalProject:c,...u}=n;return u}var zqe={getFileName:n=>n,getScriptKind:(n,c)=>{let u;if(c){let d=wE(n);d&&lr(c,I=>I.extension===d?(u=I.scriptKind,!0):!1)}return u},hasMixedContent:(n,c)=>lr(c,u=>u.isMixedContent&&gd(n,u.extension))},qqe={getFileName:n=>n.fileName,getScriptKind:n=>Kqe(n.scriptKind),hasMixedContent:n=>!!n.hasMixedContent};function xHr(n,c){for(let u of c)if(u.getProjectName()===n)return u}var pWt={close:oc};function kHr(n,c){if(!(!c||$qe(n)))return c.get(n.path)}function nus(n){return!!n.containingProjects}function $qe(n){return!!n.configFileInfo}var fWt=(n=>(n[n.Find=0]="Find",n[n.Create=1]="Create",n[n.Reload=2]="Reload",n))(fWt||{});function ius(n,c,u,d,I,h,b,R){for(;;){if(!c.isInitialLoadPending()&&(!c.getCompilerOptions().composite||c.getCompilerOptions().disableSolutionSearching))return;let N=c.projectService.getConfigFileNameForFile({fileName:c.getConfigFilePath(),path:n.path,configFileInfo:!0},d===0);if(!N)return;let V=c.projectService.findCreateOrReloadConfiguredProject(N,d,I,h,void 0,b,!0,R);if(!V)return;V.project.isInitialLoadPending()&&c.getCompilerOptions().composite&&V.project.setPotentialProjectReference(c.canonicalConfigFilePath);let P=u(V.project);if(P)return P;c=V.project}}function e$e(n,c,u,d,I,h,b,R){var N;let V=(N=n.getCurrentProgram())==null?void 0:N.getResolvedProjectReferences();if(!V)return;let P=c?n.getResolvedProjectReferenceToRedirect(c):void 0;if(P){let re=Pf(P.sourceFile.fileName),ue=n.projectService.findConfiguredProjectByProjectName(re,h);if(ue){let Ae=te(ue);if(Ae)return Ae}else if(d!==0){let Ae=IWt(V,n.getCompilerOptions(),(de,Be)=>P===de?M(de,Be):void 0,d,n.projectService);if(Ae)return Ae}}return IWt(V,n.getCompilerOptions(),(re,ue)=>P!==re?M(re,ue):void 0,d,n.projectService);function M(re,ue){let Ae=n.projectService.findCreateOrReloadConfiguredProject(Pf(re.sourceFile.fileName),ue,I,h,b,R);return Ae&&(ue===d?u(Ae.project,Ae.sentConfigFileDiag):te(Ae.project))}function te(re){let ue=!1;switch(d){case 1:ue=VHr(re,b);break;case 2:ue=re.projectService.reloadConfiguredProjectClearingSemanticCache(re,I,R);break;case 0:break;default:w.assertNever(d)}let Ae=u(re,ue);if(Ae)return Ae}}function IWt(n,c,u,d,I,h){let b=c.disableReferencedProjectLoad?0:d;return X(n,R=>{if(!R)return;let N=Pf(R.sourceFile.fileName),V=I.toCanonicalFileName(N),P=h?.get(V);if(P!==void 0&&P>=b)return;let M=u(R,b);return M||((h||(h=new Map)).set(V,b),R.references&&IWt(R.references,R.commandLine.options,u,b,I,h))})}function GHr(n,c){return n.potentialProjectReferences&&$w(n.potentialProjectReferences,c)}function sus(n,c,u,d){return n.getCurrentProgram()?n.forEachResolvedProjectReference(c):n.isInitialLoadPending()?GHr(n,d):X(n.getProjectReferences(),u)}function CWt(n,c,u){let d=u&&n.projectService.configuredProjects.get(u);return d&&c(d)}function FHr(n,c){return sus(n,u=>CWt(n,c,u.sourceFile.path),u=>CWt(n,c,n.toPath(Nte(u))),u=>CWt(n,c,u))}function ous(n,c){return`${Xa(c)?`Config: ${c} `:c?`Project: ${c.getProjectName()} `:""}WatchType: ${n}`}function ZHr(n){return!n.isScriptOpen()&&n.mTime!==void 0}function M2(n){return n.invalidateResolutionsOfFailedLookupLocations(),n.dirty&&!n.updateGraph()}function LHr(n,c,u){if(!u&&(n.invalidateResolutionsOfFailedLookupLocations(),!n.dirty))return!1;n.triggerFileForConfigFileDiag=c;let d=n.pendingUpdateLevel;if(n.updateGraph(),!n.triggerFileForConfigFileDiag&&!u)return d===2;let I=n.projectService.sendConfigFileDiagEvent(n,c,u);return n.triggerFileForConfigFileDiag=void 0,I}function VHr(n,c){if(c){if(LHr(n,c,!1))return!0}else M2(n);return!1}function WHr(n){return`Creating possible configured project for ${n.fileName} to open`}function t$e(n){return`User requested reload projects: ${n}`}function mWt(n){QZ(n)&&(n.projectOptions=!0)}function hWt(n){let c=1;return()=>n(c++)}function _Wt(){return{idToCallbacks:new Map,pathToId:new Map}}function aus(n,c){if(!c||!n.eventHandler||!n.session)return;let u=_Wt(),d=_Wt(),I=_Wt(),h=1;return n.session.addProtocolHandler("watchChange",re=>(V(re.arguments),{responseRequired:!1})),{watchFile:b,watchDirectory:R,getCurrentDirectory:()=>n.host.getCurrentDirectory(),useCaseSensitiveFileNames:n.host.useCaseSensitiveFileNames};function b(re,ue){return N(u,re,ue,Ae=>({eventName:Xqe,data:{id:Ae,path:re}}))}function R(re,ue,Ae){return N(Ae?I:d,re,ue,de=>({eventName:Jqe,data:{id:de,path:re,recursive:!!Ae,ignoreUpdate:re.endsWith("/node_modules")?void 0:!0}}))}function N({pathToId:re,idToCallbacks:ue},Ae,de,Be){let Fe=n.toPath(Ae),Ne=re.get(Fe);Ne||re.set(Fe,Ne=h++);let Qe=ue.get(Ne);return Qe||(ue.set(Ne,Qe=new Set),n.eventHandler(Be(Ne))),Qe.add(de),{close(){let De=ue.get(Ne);De?.delete(de)&&(De.size||(ue.delete(Ne),re.delete(Fe),n.eventHandler({eventName:Uqe,data:{id:Ne}})))}}}function V(re){Ra(re)?re.forEach(P):P(re)}function P({id:re,created:ue,deleted:Ae,updated:de}){M(re,ue,0),M(re,Ae,2),M(re,de,1)}function M(re,ue,Ae){ue?.length&&(te(u,re,ue,(de,Be)=>de(Be,Ae)),te(d,re,ue,(de,Be)=>de(Be)),te(I,re,ue,(de,Be)=>de(Be)))}function te(re,ue,Ae,de){var Be;(Be=re.idToCallbacks.get(ue))==null||Be.forEach(Fe=>{Ae.forEach(Ne=>de(Fe,Af(Ne)))})}}var PHr=class eir{constructor(c){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=hWt(YVt),this.newAutoImportProviderProjectName=hWt(HVt),this.newAuxiliaryProjectName=hWt(XVt),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=gWt,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=oc,this.verifyDocumentRegistry=oc,this.verifyProgram=oc,this.onProjectCreation=oc;var u;this.host=c.host,this.logger=c.logger,this.cancellationToken=c.cancellationToken,this.useSingleInferredProject=c.useSingleInferredProject,this.useInferredProjectPerProjectRoot=c.useInferredProjectPerProjectRoot,this.typingsInstaller=c.typingsInstaller||Zqe,this.throttleWaitMilliseconds=c.throttleWaitMilliseconds,this.eventHandler=c.eventHandler,this.suppressDiagnosticEvents=c.suppressDiagnosticEvents,this.globalPlugins=c.globalPlugins||ym,this.pluginProbeLocations=c.pluginProbeLocations||ym,this.allowLocalPluginLoads=!!c.allowLocalPluginLoads,this.typesMapLocation=c.typesMapLocation===void 0?xo(aa(this.getExecutingFilePath()),"typesMap.json"):c.typesMapLocation,this.session=c.session,this.jsDocParsingMode=c.jsDocParsingMode,c.serverMode!==void 0?this.serverMode=c.serverMode:this.serverMode=0,this.host.realpath&&(this.realpathToScriptInfos=ec()),this.currentDirectory=Pf(this.host.getCurrentDirectory()),this.toCanonicalFileName=tA(this.host.useCaseSensitiveFileNames),this.globalCacheLocationDirectoryPath=this.typingsInstaller.globalTypingsCacheLocation?AA(this.toPath(this.typingsInstaller.globalTypingsCacheLocation)):void 0,this.throttledOperations=new UVt(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 eWt(this.typingsInstaller),this.hostConfiguration={formatCodeOptions:vGe(this.host.newLine),preferences:Lv,hostInfo:"Unknown host",extraFileExtensions:[]},this.documentRegistry=Oje(this.host.useCaseSensitiveFileNames,this.currentDirectory,this.jsDocParsingMode,this);let d=this.logger.hasLevel(3)?2:this.logger.loggingEnabled()?1:0,I=d!==0?h=>this.logger.info(h):oc;this.packageJsonCache=vWt(this),this.watchFactory=this.serverMode!==0?{watchFile:Aue,watchDirectory:Aue}:b6e(aus(this,c.canUseWatchEvents)||this.host,d,I,ous),this.pnpWatcher=this.watchPnpFile(),(u=c.incrementalVerifier)==null||u.call(c,this)}toPath(c){return gA(c,this.currentDirectory,this.toCanonicalFileName)}getExecutingFilePath(){return this.getNormalizedAbsolutePath(this.host.getExecutingFilePath())}getNormalizedAbsolutePath(c){return Oc(c,this.host.getCurrentDirectory())}setDocument(c,u,d){let I=w.checkDefined(this.getScriptInfoForPath(u));I.cacheSourceFile={key:c,sourceFile:d}}getDocument(c,u){let d=this.getScriptInfoForPath(u);return d&&d.cacheSourceFile&&d.cacheSourceFile.key===c?d.cacheSourceFile.sourceFile:void 0}ensureInferredProjectsUpToDate_TestOnly(){this.ensureProjectStructuresUptoDate()}getCompilerOptionsForInferredProjects(){return this.compilerOptionsForInferredProjects}onUpdateLanguageServiceStateForProject(c,u){if(!this.eventHandler)return;let d={eventName:Yqe,data:{project:c,languageServiceEnabled:u}};this.eventHandler(d)}loadTypesMap(){try{let c=this.host.readFile(this.typesMapLocation);if(c===void 0){this.logger.info(`Provided types map file "${this.typesMapLocation}" doesn't exist`);return}let u=JSON.parse(c);for(let d of Object.keys(u.typesMap))u.typesMap[d].match=new RegExp(u.typesMap[d].match,"i");this.safelist=u.typesMap;for(let d in u.simpleMap)Qa(u.simpleMap,d)&&this.legacySafelist.set(d,u.simpleMap[d].toLowerCase())}catch(c){this.logger.info(`Error loading types map: ${c}`),this.safelist=gWt,this.legacySafelist.clear()}}updateTypingsForProject(c){let u=this.findProject(c.projectName);if(u)switch(c.kind){case yGe:u.updateTypingFiles(this.typingsCache.updateTypingsForProject(c.projectName,c.compilerOptions,c.typeAcquisition,c.unresolvedImports,c.typings));return;case bGe:this.typingsCache.enqueueInstallTypingsForProject(u,u.lastCachedUnresolvedImportsList,!0);return}}watchTypingLocations(c){var u;(u=this.findProject(c.projectName))==null||u.watchTypingLocations(c.files)}delayEnsureProjectForOpenFiles(){this.openFiles.size&&(this.pendingEnsureProjectForOpenFiles=!0,this.throttledOperations.schedule(RHr,2500,()=>{this.pendingProjectUpdates.size!==0?this.delayEnsureProjectForOpenFiles():this.pendingEnsureProjectForOpenFiles&&(this.ensureProjectForOpenFiles(),this.sendProjectsUpdatedInBackgroundEvent())}))}delayUpdateProjectGraph(c){if(cZe(c)||(c.markAsDirty(),k0e(c)))return;let u=c.getProjectName();this.pendingProjectUpdates.set(u,c),this.throttledOperations.schedule(u,250,()=>{this.pendingProjectUpdates.delete(u)&&M2(c)})}hasPendingProjectUpdate(c){return this.pendingProjectUpdates.has(c.getProjectName())}sendProjectsUpdatedInBackgroundEvent(){if(!this.eventHandler)return;let c={eventName:lZe,data:{openFiles:on(this.openFiles.keys(),u=>this.getScriptInfoForPath(u).fileName)}};this.eventHandler(c)}sendLargeFileReferencedEvent(c,u){if(!this.eventHandler)return;let d={eventName:Mqe,data:{file:c,fileSize:u,maxFileSize:Wqe}};this.eventHandler(d)}sendProjectLoadingStartEvent(c,u){if(!this.eventHandler)return;c.sendLoadingProjectFinish=!0;let d={eventName:Pqe,data:{project:c,reason:u}};this.eventHandler(d)}sendProjectLoadingFinishEvent(c){if(!this.eventHandler||!c.sendLoadingProjectFinish)return;c.sendLoadingProjectFinish=!1;let u={eventName:Oqe,data:{project:c}};this.eventHandler(u)}sendPerformanceEvent(c,u){this.performanceEventHandler&&this.performanceEventHandler({kind:c,durationMs:u})}delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(c){this.delayUpdateProjectGraph(c),this.delayEnsureProjectForOpenFiles()}delayUpdateProjectGraphs(c,u){if(c.length){for(let d of c)u&&d.clearSourceMapperCache(),this.delayUpdateProjectGraph(d);this.delayEnsureProjectForOpenFiles()}}setCompilerOptionsForInferredProjects(c,u){w.assert(u===void 0||this.useInferredProjectPerProjectRoot,"Setting compiler options per project root path is only supported when useInferredProjectPerProjectRoot is enabled");let d=uZe(c),I=G0e(c,u),h=AWt(c);d.allowNonTsExtensions=!0;let b=u&&this.toCanonicalFileName(u);b?(this.compilerOptionsForInferredProjectsPerProjectRoot.set(b,d),this.watchOptionsForInferredProjectsPerProjectRoot.set(b,I||!1),this.typeAcquisitionForInferredProjectsPerProjectRoot.set(b,h)):(this.compilerOptionsForInferredProjects=d,this.watchOptionsForInferredProjects=I,this.typeAcquisitionForInferredProjects=h);for(let R of this.inferredProjects)(b?R.projectRootPath===b:!R.projectRootPath||!this.compilerOptionsForInferredProjectsPerProjectRoot.has(R.projectRootPath))&&(R.setCompilerOptions(d),R.setTypeAcquisition(h),R.setWatchOptions(I?.watchOptions),R.setProjectErrors(I?.errors),R.compileOnSaveEnabled=d.compileOnSave,R.markAsDirty(),this.delayUpdateProjectGraph(R));this.delayEnsureProjectForOpenFiles()}findProject(c){if(c!==void 0)return QVt(c)?xHr(c,this.inferredProjects):this.findExternalProjectByProjectName(c)||this.findConfiguredProjectByProjectName(Pf(c))}forEachProject(c){this.externalProjects.forEach(c),this.configuredProjects.forEach(c),this.inferredProjects.forEach(c)}forEachEnabledProject(c){this.forEachProject(u=>{!u.isOrphan()&&u.languageServiceEnabled&&c(u)})}getDefaultProjectForFile(c,u){return u?this.ensureDefaultProjectForFile(c):this.tryGetDefaultProjectForFile(c)}tryGetDefaultProjectForFile(c){let u=Xa(c)?this.getScriptInfoForNormalizedPath(c):c;return u&&!u.isOrphan()?u.getDefaultProject():void 0}tryGetDefaultProjectForEnsuringConfiguredProjectForFile(c){var u;let d=Xa(c)?this.getScriptInfoForNormalizedPath(c):c;if(d)return(u=this.pendingOpenFileProjectUpdates)!=null&&u.delete(d.path)&&(this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(d,1),d.isOrphan()&&this.assignOrphanScriptInfoToInferredProject(d,this.openFiles.get(d.path))),this.tryGetDefaultProjectForFile(d)}ensureDefaultProjectForFile(c){return this.tryGetDefaultProjectForEnsuringConfiguredProjectForFile(c)||this.doEnsureDefaultProjectForFile(c)}doEnsureDefaultProjectForFile(c){this.ensureProjectStructuresUptoDate();let u=Xa(c)?this.getScriptInfoForNormalizedPath(c):c;return u?u.getDefaultProject():(this.logErrorForScriptInfoNotFound(Xa(c)?c:c.fileName),VG.ThrowNoProject())}getScriptInfoEnsuringProjectsUptoDate(c){return this.ensureProjectStructuresUptoDate(),this.getScriptInfo(c)}ensureProjectStructuresUptoDate(){let c=this.pendingEnsureProjectForOpenFiles;this.pendingProjectUpdates.clear();let u=d=>{c=M2(d)||c};this.externalProjects.forEach(u),this.configuredProjects.forEach(u),this.inferredProjects.forEach(u),c&&this.ensureProjectForOpenFiles()}getFormatCodeOptions(c){let u=this.getScriptInfoForNormalizedPath(c);return u&&u.getFormatCodeSettings()||this.hostConfiguration.formatCodeOptions}getPreferences(c){let u=this.getScriptInfoForNormalizedPath(c);return{...this.hostConfiguration.preferences,...u&&u.getPreferences()}}getHostFormatCodeOptions(){return this.hostConfiguration.formatCodeOptions}getHostPreferences(){return this.hostConfiguration.preferences}onSourceFileChanged(c,u){w.assert(!c.isScriptOpen()),u===2?this.handleDeletedFile(c,!0):(c.deferredDelete&&(c.deferredDelete=void 0),c.delayReloadNonMixedContentFile(),this.delayUpdateProjectGraphs(c.containingProjects,!1),this.handleSourceMapProjects(c))}handleSourceMapProjects(c){if(c.sourceMapFilePath)if(Xa(c.sourceMapFilePath)){let u=this.getScriptInfoForPath(c.sourceMapFilePath);this.delayUpdateSourceInfoProjects(u?.sourceInfos)}else this.delayUpdateSourceInfoProjects(c.sourceMapFilePath.sourceInfos);this.delayUpdateSourceInfoProjects(c.sourceInfos),c.declarationInfoPath&&this.delayUpdateProjectsOfScriptInfoPath(c.declarationInfoPath)}delayUpdateSourceInfoProjects(c){c&&c.forEach((u,d)=>this.delayUpdateProjectsOfScriptInfoPath(d))}delayUpdateProjectsOfScriptInfoPath(c){let u=this.getScriptInfoForPath(c);u&&this.delayUpdateProjectGraphs(u.containingProjects,!0)}handleDeletedFile(c,u){w.assert(!c.isScriptOpen()),this.delayUpdateProjectGraphs(c.containingProjects,!1),this.handleSourceMapProjects(c),c.detachAllProjects(),u?(c.delayReloadNonMixedContentFile(),c.deferredDelete=!0):this.deleteScriptInfo(c)}watchWildcardDirectory(c,u,d,I){let h=this.watchFactory.watchDirectory(c,R=>{let N=this.toPath(R),V=I.cachedDirectoryStructureHost.addOrDeleteFileOrDirectory(R,N);if(xA(N)==="package.json"&&!j_e(N)&&(V&&V.fileExists||!V&&this.host.fileExists(R))){let M=this.getNormalizedAbsolutePath(R);this.logger.info(`Config: ${d} Detected new package.json: ${M}`),this.packageJsonCache.addOrUpdate(M,N),this.watchPackageJsonFile(M,N,b)}let P=this.findConfiguredProjectByProjectName(d);m_e({watchedDirPath:this.toPath(c),fileOrDirectory:R,fileOrDirectoryPath:N,configFileName:d,extraFileExtensions:this.hostConfiguration.extraFileExtensions,currentDirectory:this.currentDirectory,options:I.parsedCommandLine.options,program:P?.getCurrentProgram()||I.parsedCommandLine.fileNames,useCaseSensitiveFileNames:this.host.useCaseSensitiveFileNames,writeLog:M=>this.logger.info(M),toPath:M=>this.toPath(M),getScriptKind:P?M=>P.getScriptKind(M):void 0})||(I.updateLevel!==2&&(I.updateLevel=1),I.projects.forEach((M,te)=>{var re;if(!M)return;let ue=this.getConfiguredProjectByCanonicalConfigFilePath(te);if(!ue)return;if(P!==ue&&this.getHostPreferences().includeCompletionsForModuleExports){let de=this.toPath(d);be((re=ue.getCurrentProgram())==null?void 0:re.getResolvedProjectReferences(),Be=>Be?.sourceFile.path===de)&&ue.markAutoImportProviderAsDirty()}let Ae=P===ue?1:0;if(!(ue.pendingUpdateLevel>Ae))if(this.openFiles.has(N))if(w.checkDefined(this.getScriptInfoForPath(N)).isAttached(ue)){let Be=Math.max(Ae,ue.openFileWatchTriggered.get(N)||0);ue.openFileWatchTriggered.set(N,Be)}else ue.pendingUpdateLevel=Ae,this.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(ue);else ue.pendingUpdateLevel=Ae,this.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(ue)}))},u,this.getWatchOptionsFromProjectWatchOptions(I.parsedCommandLine.watchOptions,aa(d)),hm.WildcardDirectory,d),b={packageJsonWatches:void 0,close(){var R;h&&(h.close(),h=void 0,(R=b.packageJsonWatches)==null||R.forEach(N=>{N.projects.delete(b),N.close()}),b.packageJsonWatches=void 0)}};return b}delayUpdateProjectsFromParsedConfigOnConfigFileChange(c,u){let d=this.configFileExistenceInfoCache.get(c);if(!d?.config)return!1;let I=!1;return d.config.updateLevel=2,d.config.projects.forEach((h,b)=>{var R;let N=this.getConfiguredProjectByCanonicalConfigFilePath(b);if(N)if(I=!0,b===c){if(N.isInitialLoadPending())return;N.pendingUpdateLevel=2,N.pendingUpdateReason=u,this.delayUpdateProjectGraph(N),N.markAutoImportProviderAsDirty()}else{let V=this.toPath(c);N.resolutionCache.removeResolutionsFromProjectReferenceRedirects(V),this.delayUpdateProjectGraph(N),this.getHostPreferences().includeCompletionsForModuleExports&&be((R=N.getCurrentProgram())==null?void 0:R.getResolvedProjectReferences(),P=>P?.sourceFile.path===V)&&N.markAutoImportProviderAsDirty()}}),I}onConfigFileChanged(c,u,d){let I=this.configFileExistenceInfoCache.get(u),h=this.getConfiguredProjectByCanonicalConfigFilePath(u),b=h?.deferredClose;d===2?(I.exists=!1,h&&(h.deferredClose=!0)):(I.exists=!0,b&&(h.deferredClose=void 0,h.markAsDirty())),this.delayUpdateProjectsFromParsedConfigOnConfigFileChange(u,"Change in config file detected");let R=new Set(h?[h]:void 0);this.openFiles.forEach((N,V)=>{var P,M;let te=this.configFileForOpenFiles.get(V);if(!((P=I.openFilesImpactedByConfigFile)!=null&&P.has(V)))return;this.configFileForOpenFiles.delete(V);let re=this.getScriptInfoForPath(V),ue=this.getConfigFileNameForFile(re,!1);if(!ue)return;let Ae=this.findConfiguredProjectByProjectName(ue)??this.createConfiguredProject(ue,`Change in config file ${c} detected, ${WHr(re)}`);(M=this.pendingOpenFileProjectUpdates)!=null&&M.has(V)||(this.pendingOpenFileProjectUpdates??(this.pendingOpenFileProjectUpdates=new Map)).set(V,te),Zi(R,Ae)&&Ae.isInitialLoadPending()&&this.delayUpdateProjectGraph(Ae)}),this.delayEnsureProjectForOpenFiles()}removeProject(c){switch(this.logger.info("`remove Project::"),c.print(!0,!0,!1),c.close(),w.shouldAssert(1)&&this.filenameToScriptInfo.forEach(u=>w.assert(!u.isAttached(c),"Found script Info still attached to project",()=>`${c.projectName}: ScriptInfos still attached: ${JSON.stringify(on(gn(this.filenameToScriptInfo.values(),d=>d.isAttached(c)?{fileName:d.fileName,projects:d.containingProjects.map(I=>I.projectName),hasMixedContent:d.hasMixedContent}:void 0)),void 0," ")}`)),this.pendingProjectUpdates.delete(c.getProjectName()),c.projectKind){case 2:Oy(this.externalProjects,c),this.projectToSizeMap.delete(c.getProjectName());break;case 1:this.configuredProjects.delete(c.canonicalConfigFilePath),this.projectToSizeMap.delete(c.canonicalConfigFilePath);break;case 0:Oy(this.inferredProjects,c);break}}assignOrphanScriptInfoToInferredProject(c,u){w.assert(c.isOrphan());let d=this.getOrCreateInferredProjectForProjectRootPathIfEnabled(c,u)||this.getOrCreateSingleInferredProjectIfEnabled()||this.getOrCreateSingleInferredWithoutProjectRoot(c.isDynamic?u||this.currentDirectory:aa(yd(c.fileName)?c.fileName:Oc(c.fileName,u?this.getNormalizedAbsolutePath(u):this.currentDirectory)));if(d.addRoot(c),c.containingProjects[0]!==d&&(eA(c.containingProjects,d),c.containingProjects.unshift(d)),d.updateGraph(),!this.useSingleInferredProject&&!d.projectRootPath)for(let I of this.inferredProjects){if(I===d||I.isOrphan())continue;let h=I.getRootScriptInfos();w.assert(h.length===1||!!I.projectRootPath),h.length===1&&X(h[0].containingProjects,b=>b!==h[0].containingProjects[0]&&!b.isOrphan())&&I.removeFile(h[0],!0,!0)}return d}assignOrphanScriptInfosToInferredProject(){this.openFiles.forEach((c,u)=>{let d=this.getScriptInfoForPath(u);d.isOrphan()&&this.assignOrphanScriptInfoToInferredProject(d,c)})}closeOpenFile(c,u){var d;let I=c.isDynamic?!1:this.host.fileExists(c.fileName);c.close(I),this.stopWatchingConfigFilesForScriptInfo(c);let h=this.toCanonicalFileName(c.fileName);this.openFilesWithNonRootedDiskPath.get(h)===c&&this.openFilesWithNonRootedDiskPath.delete(h);let b=!1;for(let R of c.containingProjects){if(QZ(R)){c.hasMixedContent&&c.registerFileUpdate();let N=R.openFileWatchTriggered.get(c.path);N!==void 0&&(R.openFileWatchTriggered.delete(c.path),R.pendingUpdateLevelthis.onConfigFileChanged(c,u,V),2e3,this.getWatchOptionsFromProjectWatchOptions((h=(I=b?.config)==null?void 0:I.parsedCommandLine)==null?void 0:h.watchOptions,aa(c)),hm.ConfigFile,d));let R=b.config.projects;R.set(d.canonicalConfigFilePath,R.get(d.canonicalConfigFilePath)||!1)}releaseParsedConfig(c,u){var d,I,h;let b=this.configFileExistenceInfoCache.get(c);(d=b.config)!=null&&d.projects.delete(u.canonicalConfigFilePath)&&((I=b.config)!=null&&I.projects.size||(b.config=void 0,_6e(c,this.sharedExtendedConfigFileWatchers),w.checkDefined(b.watcher),(h=b.openFilesImpactedByConfigFile)!=null&&h.size?b.inferredProjectRoots?oGe(Ad(aa(c)))||(b.watcher.close(),b.watcher=pWt):(b.watcher.close(),b.watcher=void 0):(b.watcher.close(),this.configFileExistenceInfoCache.delete(c))))}stopWatchingConfigFilesForScriptInfo(c){if(this.serverMode!==0)return;let u=this.rootOfInferredProjects.delete(c),d=c.isScriptOpen();d&&!u||this.forEachConfigFileLocation(c,I=>{var h,b,R;let N=this.configFileExistenceInfoCache.get(I);if(N){if(d){if(!((h=N?.openFilesImpactedByConfigFile)!=null&&h.has(c.path)))return}else if(!((b=N.openFilesImpactedByConfigFile)!=null&&b.delete(c.path)))return;u&&(N.inferredProjectRoots--,N.watcher&&!N.config&&!N.inferredProjectRoots&&(N.watcher.close(),N.watcher=void 0)),!((R=N.openFilesImpactedByConfigFile)!=null&&R.size)&&!N.config&&(w.assert(!N.watcher),this.configFileExistenceInfoCache.delete(I))}})}startWatchingConfigFilesForInferredProjectRoot(c){this.serverMode===0&&(w.assert(c.isScriptOpen()),this.rootOfInferredProjects.add(c),this.forEachConfigFileLocation(c,(u,d)=>{let I=this.configFileExistenceInfoCache.get(u);I?I.inferredProjectRoots=(I.inferredProjectRoots??0)+1:(I={exists:this.host.fileExists(d),inferredProjectRoots:1},this.configFileExistenceInfoCache.set(u,I)),(I.openFilesImpactedByConfigFile??(I.openFilesImpactedByConfigFile=new Set)).add(c.path),I.watcher||(I.watcher=oGe(Ad(aa(u)))?this.watchFactory.watchFile(d,(h,b)=>this.onConfigFileChanged(d,u,b),2e3,this.hostConfiguration.watchOptions,hm.ConfigFileForInferredRoot):pWt)}))}forEachConfigFileLocation(c,u){if(this.serverMode!==0)return;w.assert(!nus(c)||this.openFiles.has(c.path));let d=this.openFiles.get(c.path);if(w.checkDefined(this.getScriptInfo(c.path)).isDynamic)return;let h=aa(c.fileName),b=()=>Bg(d,h,this.currentDirectory,!this.host.useCaseSensitiveFileNames),R=!d||!b(),N=!$qe(c);do{if(N){let P=T0e(h,this.currentDirectory,this.toCanonicalFileName),M=xo(h,"tsconfig.json"),te=u(xo(P,"tsconfig.json"),M);if(te)return M;let re=xo(h,"jsconfig.json");if(te=u(xo(P,"jsconfig.json"),re),te)return re;if(TS(P))break}let V=aa(h);if(V===h)break;h=V,N=!0}while(R||b())}findDefaultConfiguredProject(c){var u;return c.isScriptOpen()?(u=this.tryFindDefaultConfiguredProjectForOpenScriptInfo(c,0))==null?void 0:u.defaultProject:void 0}getConfigFileNameForFileFromCache(c,u){if(u){let d=kHr(c,this.pendingOpenFileProjectUpdates);if(d!==void 0)return d}return kHr(c,this.configFileForOpenFiles)}setConfigFileNameForFileInCache(c,u){this.openFiles.has(c.path)&&($qe(c)||this.configFileForOpenFiles.set(c.path,u||!1))}getConfigFileNameForFile(c,u){let d=this.getConfigFileNameForFileFromCache(c,u);if(d!==void 0)return d||void 0;if(u)return;let I=this.forEachConfigFileLocation(c,(h,b)=>this.configFileExists(b,h,c));return this.logger.info(`getConfigFileNameForFile:: File: ${c.fileName} ProjectRootPath: ${this.openFiles.get(c.path)}:: Result: ${I}`),this.setConfigFileNameForFileInCache(c,I),I}printProjects(){this.logger.hasLevel(1)&&(this.logger.startGroup(),this.externalProjects.forEach(EWt),this.configuredProjects.forEach(EWt),this.inferredProjects.forEach(EWt),this.logger.info("Open files: "),this.openFiles.forEach((c,u)=>{let d=this.getScriptInfoForPath(u);this.logger.info(` FileName: ${d.fileName} ProjectRootPath: ${c}`),this.logger.info(` Projects: ${d.containingProjects.map(I=>I.getProjectName())}`)}),this.logger.endGroup())}findConfiguredProjectByProjectName(c,u){let d=this.toCanonicalFileName(c),I=this.getConfiguredProjectByCanonicalConfigFilePath(d);return u?I:I?.deferredClose?void 0:I}getConfiguredProjectByCanonicalConfigFilePath(c){return this.configuredProjects.get(c)}findExternalProjectByProjectName(c){return xHr(c,this.externalProjects)}getFilenameForExceededTotalSizeLimitForNonTsFiles(c,u,d,I){if(u&&u.disableSizeLimit||!this.host.getFileSize)return;let h=Vqe;this.projectToSizeMap.set(c,0),this.projectToSizeMap.forEach(R=>h-=R||0);let b=0;for(let R of d){let N=I.getFileName(R);if(!KQ(N)&&(b+=this.host.getFileSize(N),b>Vqe||b>h)){let V=d.map(P=>I.getFileName(P)).filter(P=>!KQ(P)).map(P=>({name:P,size:this.host.getFileSize(P)})).sort((P,M)=>M.size-P.size).slice(0,5);return this.logger.info(`Non TS file size exceeded limit (${b}). Largest files: ${V.map(P=>`${P.name}:${P.size}`).join(", ")}`),N}}this.projectToSizeMap.set(c,b)}createExternalProject(c,u,d,I,h){let b=uZe(d),R=G0e(d,aa(Af(c))),N=new Lqe(c,this,this.documentRegistry,b,this.getFilenameForExceededTotalSizeLimitForNonTsFiles(c,b,u,qqe),d.compileOnSave===void 0?!0:d.compileOnSave,void 0,R?.watchOptions);return N.setProjectErrors(R?.errors),N.excludedFiles=h,this.addFilesToNonInferredProject(N,u,qqe,I),this.externalProjects.push(N),N}sendProjectTelemetry(c){if(this.seenProjects.has(c.projectName)){mWt(c);return}if(this.seenProjects.set(c.projectName,!0),!this.eventHandler||!this.host.createSHA256Hash){mWt(c);return}let u=QZ(c)?c.projectOptions:void 0;mWt(c);let d={projectId:this.host.createSHA256Hash(c.projectName),fileStats:D0e(c.getScriptInfos(),!0),compilerOptions:eDt(c.getCompilationSettings()),typeAcquisition:h(c.getTypeAcquisition()),extends:u&&u.configHasExtendsProperty,files:u&&u.configHasFilesProperty,include:u&&u.configHasIncludeProperty,exclude:u&&u.configHasExcludeProperty,compileOnSave:c.compileOnSaveEnabled,configFileName:I(),projectType:c instanceof Lqe?"external":"configured",languageServiceEnabled:c.languageServiceEnabled,version:y};this.eventHandler({eventName:Hqe,data:d});function I(){return QZ(c)&&Fqe(c.getConfigFilePath())||"other"}function h({enable:b,include:R,exclude:N}){return{enable:b,include:R!==void 0&&R.length!==0,exclude:N!==void 0&&N.length!==0}}}addFilesToNonInferredProject(c,u,d,I){this.updateNonInferredProjectFiles(c,u,d),c.setTypeAcquisition(I),c.markAsDirty()}createConfiguredProject(c,u){var d;(d=Mi)==null||d.instant(Mi.Phase.Session,"createConfiguredProject",{configFilePath:c}),this.logger.info(`Creating configuration project ${c}`);let I=this.toCanonicalFileName(c),h=this.configFileExistenceInfoCache.get(I);h?h.exists=!0:this.configFileExistenceInfoCache.set(I,h={exists:!0}),h.config||(h.config={cachedDirectoryStructureHost:Uke(this.host,this.host.getCurrentDirectory(),this.host.useCaseSensitiveFileNames),projects:new Map,updateLevel:2});let b=new lWt(c,I,this,this.documentRegistry,h.config.cachedDirectoryStructureHost,u);return w.assert(!this.configuredProjects.has(I)),this.configuredProjects.set(I,b),this.createConfigFileWatcherForParsedConfig(c,I,b),b}loadConfiguredProject(c,u){var d,I;(d=Mi)==null||d.push(Mi.Phase.Session,"loadConfiguredProject",{configFilePath:c.canonicalConfigFilePath}),this.sendProjectLoadingStartEvent(c,u);let h=Mc(c.getConfigFilePath()),b=this.ensureParsedConfigUptoDate(h,c.canonicalConfigFilePath,this.configFileExistenceInfoCache.get(c.canonicalConfigFilePath),c),R=b.config.parsedCommandLine;w.assert(!!R.fileNames);let N=R.options;c.projectOptions||(c.projectOptions={configHasExtendsProperty:R.raw.extends!==void 0,configHasFilesProperty:R.raw.files!==void 0,configHasIncludeProperty:R.raw.include!==void 0,configHasExcludeProperty:R.raw.exclude!==void 0}),c.canConfigFileJsonReportNoInputFiles=Qle(R.raw),c.setProjectErrors(R.options.configFile.parseDiagnostics),c.updateReferences(R.projectReferences);let V=this.getFilenameForExceededTotalSizeLimitForNonTsFiles(c.canonicalConfigFilePath,N,R.fileNames,zqe);V?(c.disableLanguageService(V),this.configFileExistenceInfoCache.forEach((M,te)=>this.stopWatchingWildCards(te,c))):(c.setCompilerOptions(N),c.setWatchOptions(R.watchOptions),c.enableLanguageService(),this.watchWildcards(h,b,c)),c.enablePluginsWithOptions(N);let P=R.fileNames.concat(c.getExternalFiles(2));this.updateRootAndOptionsOfNonInferredProject(c,P,zqe,N,R.typeAcquisition,R.compileOnSave,R.watchOptions),(I=Mi)==null||I.pop()}ensureParsedConfigUptoDate(c,u,d,I){var h,b,R;if(d.config){if(!d.config.updateLevel)return d;if(d.config.updateLevel===1)return this.reloadFileNamesOfParsedConfig(c,d.config),d}let N=((h=d.config)==null?void 0:h.cachedDirectoryStructureHost)||Uke(this.host,this.host.getCurrentDirectory(),this.host.useCaseSensitiveFileNames),V=Mle(c,Ae=>this.host.readFile(Ae)),P=Khe(c,Xa(V)?V:""),M=P.parseDiagnostics;Xa(V)||M.push(V);let te=aa(c),re=t_e(P,N,te,void 0,c,void 0,this.hostConfiguration.extraFileExtensions,this.extendedConfigCache);re.errors.length&&M.push(...re.errors),this.logger.info(`Config: ${c} : ${JSON.stringify({rootNames:re.fileNames,options:re.options,watchOptions:re.watchOptions,projectReferences:re.projectReferences},void 0," ")}`);let ue=(b=d.config)==null?void 0:b.parsedCommandLine;return d.config?(d.config.parsedCommandLine=re,d.config.watchedDirectoriesStale=!0,d.config.updateLevel=void 0):d.config={parsedCommandLine:re,cachedDirectoryStructureHost:N,projects:new Map},!ue&&!lle(this.getWatchOptionsFromProjectWatchOptions(void 0,te),this.getWatchOptionsFromProjectWatchOptions(re.watchOptions,te))&&((R=d.watcher)==null||R.close(),d.watcher=void 0),this.createConfigFileWatcherForParsedConfig(c,u,I),Kke(u,re.options,this.sharedExtendedConfigFileWatchers,(Ae,de)=>this.watchFactory.watchFile(Ae,()=>{var Be;jke(this.extendedConfigCache,de,Ne=>this.toPath(Ne));let Fe=!1;(Be=this.sharedExtendedConfigFileWatchers.get(de))==null||Be.projects.forEach(Ne=>{Fe=this.delayUpdateProjectsFromParsedConfigOnConfigFileChange(Ne,`Change in extended config file ${Ae} detected`)||Fe}),Fe&&this.delayEnsureProjectForOpenFiles()},2e3,this.hostConfiguration.watchOptions,hm.ExtendedConfigFile,c),Ae=>this.toPath(Ae)),d}watchWildcards(c,{exists:u,config:d},I){if(d.projects.set(I.canonicalConfigFilePath,!0),u){if(d.watchedDirectories&&!d.watchedDirectoriesStale)return;d.watchedDirectoriesStale=!1,C_e(d.watchedDirectories||(d.watchedDirectories=new Map),d.parsedCommandLine.wildcardDirectories,(h,b)=>this.watchWildcardDirectory(h,b,c,d))}else{if(d.watchedDirectoriesStale=!1,!d.watchedDirectories)return;Y0(d.watchedDirectories,ZB),d.watchedDirectories=void 0}}stopWatchingWildCards(c,u){let d=this.configFileExistenceInfoCache.get(c);!d.config||!d.config.projects.get(u.canonicalConfigFilePath)||(d.config.projects.set(u.canonicalConfigFilePath,!1),!JC(d.config.projects,Bl)&&(d.config.watchedDirectories&&(Y0(d.config.watchedDirectories,ZB),d.config.watchedDirectories=void 0),d.config.watchedDirectoriesStale=void 0))}updateNonInferredProjectFiles(c,u,d){var I;let h=c.getRootFilesMap(),b=new Map;for(let R of u){let N=d.getFileName(R),V=Pf(N),P=N0e(V),M;if(!P&&!c.fileExists(N)){M=T0e(V,this.currentDirectory,this.toCanonicalFileName);let te=h.get(M);te?(((I=te.info)==null?void 0:I.path)===M&&(c.removeFile(te.info,!1,!0),te.info=void 0),te.fileName=V):h.set(M,{fileName:V})}else{let te=d.getScriptKind(R,this.hostConfiguration.extraFileExtensions),re=d.hasMixedContent(R,this.hostConfiguration.extraFileExtensions),ue=w.checkDefined(this.getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(V,c.currentDirectory,te,re,c.directoryStructureHost,!1));M=ue.path;let Ae=h.get(M);!Ae||Ae.info!==ue?(c.addRoot(ue,V),ue.isScriptOpen()&&this.removeRootOfInferredProjectIfNowPartOfOtherProject(ue)):Ae.fileName=V}b.set(M,!0)}h.size>b.size&&h.forEach((R,N)=>{b.has(N)||(R.info?c.removeFile(R.info,c.fileExists(R.info.fileName),!0):h.delete(N))})}updateRootAndOptionsOfNonInferredProject(c,u,d,I,h,b,R){c.setCompilerOptions(I),c.setWatchOptions(R),b!==void 0&&(c.compileOnSaveEnabled=b),this.addFilesToNonInferredProject(c,u,d,h)}reloadFileNamesOfConfiguredProject(c){let u=this.reloadFileNamesOfParsedConfig(c.getConfigFilePath(),this.configFileExistenceInfoCache.get(c.canonicalConfigFilePath).config);return c.updateErrorOnNoInputFiles(u),this.updateNonInferredProjectFiles(c,u.concat(c.getExternalFiles(1)),zqe),c.markAsDirty(),c.updateGraph()}reloadFileNamesOfParsedConfig(c,u){if(u.updateLevel===void 0)return u.parsedCommandLine.fileNames;w.assert(u.updateLevel===1);let d=u.parsedCommandLine.options.configFile.configFileSpecs,I=Yle(d,aa(c),u.parsedCommandLine.options,u.cachedDirectoryStructureHost,this.hostConfiguration.extraFileExtensions);return u.parsedCommandLine={...u.parsedCommandLine,fileNames:I},I}setFileNamesOfAutpImportProviderOrAuxillaryProject(c,u){this.updateNonInferredProjectFiles(c,u,zqe)}reloadConfiguredProjectClearingSemanticCache(c,u,d){return Zi(d,c)?(this.clearSemanticCache(c),this.reloadConfiguredProject(c,t$e(u)),!0):!1}reloadConfiguredProject(c,u){c.isInitialLoadPending=TC,c.pendingUpdateReason=void 0,c.pendingUpdateLevel=0,c.getCachedDirectoryStructureHost().clearCache(),this.loadConfiguredProject(c,u),LHr(c,c.triggerFileForConfigFileDiag??c.getConfigFilePath(),!0)}clearSemanticCache(c){c.originalConfiguredProjects=void 0,c.resolutionCache.clear(),c.getLanguageService(!1).cleanupSemanticCache(),c.cleanupProgram(),c.markAsDirty()}sendConfigFileDiagEvent(c,u,d){if(!this.eventHandler||this.suppressDiagnosticEvents)return!1;let I=c.getLanguageService().getCompilerOptionsDiagnostics();return I.push(...c.getAllProjectErrors()),!d&&I.length===(c.configDiagDiagnosticsReported??0)?!1:(c.configDiagDiagnosticsReported=I.length,this.eventHandler({eventName:Qqe,data:{configFileName:c.getConfigFilePath(),diagnostics:I,triggerFile:u??c.getConfigFilePath()}}),!0)}getOrCreateInferredProjectForProjectRootPathIfEnabled(c,u){if(!this.useInferredProjectPerProjectRoot||c.isDynamic&&u===void 0)return;if(u){let I=this.toCanonicalFileName(u);for(let h of this.inferredProjects)if(h.projectRootPath===I)return h;return this.createInferredProject(u,!1,u)}let d;for(let I of this.inferredProjects)I.projectRootPath&&Bg(I.projectRootPath,c.path,this.host.getCurrentDirectory(),!this.host.useCaseSensitiveFileNames)&&(d&&d.projectRootPath.length>I.projectRootPath.length||(d=I));return d}getOrCreateSingleInferredProjectIfEnabled(){if(this.useSingleInferredProject)return this.inferredProjects.length>0&&this.inferredProjects[0].projectRootPath===void 0?this.inferredProjects[0]:this.createInferredProject("",!0)}getOrCreateSingleInferredWithoutProjectRoot(c){w.assert(!this.useSingleInferredProject);let u=this.toCanonicalFileName(this.getNormalizedAbsolutePath(c));for(let d of this.inferredProjects)if(!d.projectRootPath&&d.isOrphan()&&d.canonicalCurrentDirectory===u)return d;return this.createInferredProject(c)}createInferredProject(c,u,d){let I=d&&this.compilerOptionsForInferredProjectsPerProjectRoot.get(d)||this.compilerOptionsForInferredProjects,h,b;d&&(h=this.watchOptionsForInferredProjectsPerProjectRoot.get(d),b=this.typeAcquisitionForInferredProjectsPerProjectRoot.get(d)),h===void 0&&(h=this.watchOptionsForInferredProjects),b===void 0&&(b=this.typeAcquisitionForInferredProjects),h=h||void 0;let R=new sWt(this,this.documentRegistry,I,h?.watchOptions,d,c,b);return R.setProjectErrors(h?.errors),u?this.inferredProjects.unshift(R):this.inferredProjects.push(R),R}getOrCreateScriptInfoNotOpenedByClient(c,u,d,I){return this.getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(Pf(c),u,void 0,void 0,d,I)}getScriptInfo(c){return this.getScriptInfoForNormalizedPath(Pf(c))}getScriptInfoOrConfig(c){let u=Pf(c),d=this.getScriptInfoForNormalizedPath(u);if(d)return d;let I=this.configuredProjects.get(this.toPath(c));return I&&I.getCompilerOptions().configFile}logErrorForScriptInfoNotFound(c){let u=on(gn(this.filenameToScriptInfo.entries(),d=>d[1].deferredDelete?void 0:d),([d,I])=>({path:d,fileName:I.fileName}));this.logger.msg(`Could not find file ${JSON.stringify(c)}. -All files are: ${JSON.stringify(u)}`,"Err")}getSymlinkedProjects(c){let u;if(this.realpathToScriptInfos){let I=c.getRealpathIfDifferent();I&&X(this.realpathToScriptInfos.get(I),d),X(this.realpathToScriptInfos.get(c.path),d)}return u;function d(I){if(I!==c)for(let h of I.containingProjects)h.languageServiceEnabled&&!h.isOrphan()&&!h.getCompilerOptions().preserveSymlinks&&!c.isAttached(h)&&(u?JC(u,(b,R)=>R===I.path?!1:Ue(b,h))||u.add(I.path,h):(u=ec(),u.add(I.path,h)))}}watchClosedScriptInfo(c){if(w.assert(!c.fileWatcher),!c.isDynamicOrHasMixedContent()&&(!this.globalCacheLocationDirectoryPath||!uc(c.path,this.globalCacheLocationDirectoryPath))){let u=c.fileName.indexOf("/node_modules/");!this.host.getModifiedTime||u===-1?c.fileWatcher=this.watchFactory.watchFile(c.fileName,(d,I)=>this.onSourceFileChanged(c,I),500,this.hostConfiguration.watchOptions,hm.ClosedScriptInfo):(c.mTime=this.getModifiedTime(c),c.fileWatcher=this.watchClosedScriptInfoInNodeModules(c.fileName.substring(0,u)))}}createNodeModulesWatcher(c,u){let d=this.watchFactory.watchDirectory(c,h=>{var b;let R=sGe(this.toPath(h));if(!R)return;let N=xA(R);if((b=I.affectedModuleSpecifierCacheProjects)!=null&&b.size&&(N==="package.json"||N==="node_modules")&&I.affectedModuleSpecifierCacheProjects.forEach(V=>{var P;(P=V.getModuleSpecifierCache())==null||P.clear()}),I.refreshScriptInfoRefCount)if(u===R)this.refreshScriptInfosInDirectory(u);else{let V=this.filenameToScriptInfo.get(R);V?ZHr(V)&&this.refreshScriptInfo(V):v1(R)||this.refreshScriptInfosInDirectory(R)}},1,this.hostConfiguration.watchOptions,hm.NodeModules),I={refreshScriptInfoRefCount:0,affectedModuleSpecifierCacheProjects:void 0,close:()=>{var h;d&&!I.refreshScriptInfoRefCount&&!((h=I.affectedModuleSpecifierCacheProjects)!=null&&h.size)&&(d.close(),d=void 0,this.nodeModulesWatchers.delete(u))}};return this.nodeModulesWatchers.set(u,I),I}watchPackageJsonsInNodeModules(c,u){var d;let I=this.toPath(c),h=this.nodeModulesWatchers.get(I)||this.createNodeModulesWatcher(c,I);return w.assert(!((d=h.affectedModuleSpecifierCacheProjects)!=null&&d.has(u))),(h.affectedModuleSpecifierCacheProjects||(h.affectedModuleSpecifierCacheProjects=new Set)).add(u),{close:()=>{var b;(b=h.affectedModuleSpecifierCacheProjects)==null||b.delete(u),h.close()}}}watchClosedScriptInfoInNodeModules(c){let u=c+"/node_modules",d=this.toPath(u),I=this.nodeModulesWatchers.get(d)||this.createNodeModulesWatcher(u,d);return I.refreshScriptInfoRefCount++,{close:()=>{I.refreshScriptInfoRefCount--,I.close()}}}getModifiedTime(c){return(this.host.getModifiedTime(c.fileName)||EA).getTime()}refreshScriptInfo(c){let u=this.getModifiedTime(c);if(u!==c.mTime){let d=bv(c.mTime,u);c.mTime=u,this.onSourceFileChanged(c,d)}}refreshScriptInfosInDirectory(c){c=c+qu,this.filenameToScriptInfo.forEach(u=>{ZHr(u)&&uc(u.path,c)&&this.refreshScriptInfo(u)})}stopWatchingScriptInfo(c){c.fileWatcher&&(c.fileWatcher.close(),c.fileWatcher=void 0)}getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(c,u,d,I,h,b){if(yd(c)||N0e(c))return this.getOrCreateScriptInfoWorker(c,u,!1,void 0,d,!!I,h,b);let R=this.openFilesWithNonRootedDiskPath.get(this.toCanonicalFileName(c));if(R)return R}getOrCreateScriptInfoForNormalizedPath(c,u,d,I,h,b){return this.getOrCreateScriptInfoWorker(c,this.currentDirectory,u,d,I,!!h,b,!1)}getOrCreateScriptInfoWorker(c,u,d,I,h,b,R,N){w.assert(I===void 0||d,"ScriptInfo needs to be opened by client to be able to set its user defined content");let V=T0e(c,u,this.toCanonicalFileName),P=this.filenameToScriptInfo.get(V);if(P){if(P.deferredDelete){if(w.assert(!P.isDynamic),!d&&!(R||this.host).fileExists(c))return N?P:void 0;P.deferredDelete=void 0}}else{let M=N0e(c);if(w.assert(yd(c)||M||d,"",()=>`${JSON.stringify({fileName:c,currentDirectory:u,hostCurrentDirectory:this.currentDirectory,openKeys:on(this.openFilesWithNonRootedDiskPath.keys())})} -Script info with non-dynamic relative file name can only be open script info or in context of host currentDirectory`),w.assert(!yd(c)||this.currentDirectory===u||!this.openFilesWithNonRootedDiskPath.has(this.toCanonicalFileName(c)),"",()=>`${JSON.stringify({fileName:c,currentDirectory:u,hostCurrentDirectory:this.currentDirectory,openKeys:on(this.openFilesWithNonRootedDiskPath.keys())})} -Open script files with non rooted disk path opened with current directory context cannot have same canonical names`),w.assert(!M||this.currentDirectory===u||this.useInferredProjectPerProjectRoot,"",()=>`${JSON.stringify({fileName:c,currentDirectory:u,hostCurrentDirectory:this.currentDirectory,openKeys:on(this.openFilesWithNonRootedDiskPath.keys())})} -Dynamic files must always be opened with service's current directory or service should support inferred project per projectRootPath.`),!d&&!M&&!(R||this.host).fileExists(c))return;P=new $Vt(this.host,c,h,b,V,this.filenameToScriptInfoVersion.get(V)),this.filenameToScriptInfo.set(P.path,P),this.filenameToScriptInfoVersion.delete(P.path),d?!yd(c)&&(!M||this.currentDirectory!==u)&&this.openFilesWithNonRootedDiskPath.set(this.toCanonicalFileName(c),P):this.watchClosedScriptInfo(P)}return d&&(this.stopWatchingScriptInfo(P),P.open(I),b&&P.registerFileUpdate()),P}getScriptInfoForNormalizedPath(c){return!yd(c)&&this.openFilesWithNonRootedDiskPath.get(this.toCanonicalFileName(c))||this.getScriptInfoForPath(T0e(c,this.currentDirectory,this.toCanonicalFileName))}getScriptInfoForPath(c){let u=this.filenameToScriptInfo.get(c);return!u||!u.deferredDelete?u:void 0}getDocumentPositionMapper(c,u,d){let I=this.getOrCreateScriptInfoNotOpenedByClient(u,c.currentDirectory,this.host,!1);if(!I){d&&c.addGeneratedFileWatch(u,d);return}if(I.getSnapshot(),Xa(I.sourceMapFilePath)){let V=this.getScriptInfoForPath(I.sourceMapFilePath);if(V&&(V.getSnapshot(),V.documentPositionMapper!==void 0))return V.sourceInfos=this.addSourceInfoToSourceMap(d,c,V.sourceInfos),V.documentPositionMapper?V.documentPositionMapper:void 0;I.sourceMapFilePath=void 0}else if(I.sourceMapFilePath){I.sourceMapFilePath.sourceInfos=this.addSourceInfoToSourceMap(d,c,I.sourceMapFilePath.sourceInfos);return}else if(I.sourceMapFilePath!==void 0)return;let h,b=(V,P)=>{let M=this.getOrCreateScriptInfoNotOpenedByClient(V,c.currentDirectory,this.host,!0);if(h=M||P,!M||M.deferredDelete)return;let te=M.getSnapshot();return M.documentPositionMapper!==void 0?M.documentPositionMapper:K6(te)},R=c.projectName,N=Xje({getCanonicalFileName:this.toCanonicalFileName,log:V=>this.logger.info(V),getSourceFileLike:V=>this.getSourceFileLike(V,R,I)},I.fileName,I.textStorage.getLineInfo(),b);return b=void 0,h?Xa(h)?I.sourceMapFilePath={watcher:this.addMissingSourceMapFile(c.currentDirectory===this.currentDirectory?h:Oc(h,c.currentDirectory),I.path),sourceInfos:this.addSourceInfoToSourceMap(d,c)}:(I.sourceMapFilePath=h.path,h.declarationInfoPath=I.path,h.deferredDelete||(h.documentPositionMapper=N||!1),h.sourceInfos=this.addSourceInfoToSourceMap(d,c,h.sourceInfos)):I.sourceMapFilePath=!1,N}addSourceInfoToSourceMap(c,u,d){if(c){let I=this.getOrCreateScriptInfoNotOpenedByClient(c,u.currentDirectory,u.directoryStructureHost,!1);(d||(d=new Set)).add(I.path)}return d}addMissingSourceMapFile(c,u){return this.watchFactory.watchFile(c,()=>{let I=this.getScriptInfoForPath(u);I&&I.sourceMapFilePath&&!Xa(I.sourceMapFilePath)&&(this.delayUpdateProjectGraphs(I.containingProjects,!0),this.delayUpdateSourceInfoProjects(I.sourceMapFilePath.sourceInfos),I.closeSourceMapFileWatcher())},2e3,this.hostConfiguration.watchOptions,hm.MissingSourceMapFile)}getSourceFileLike(c,u,d){let I=u.projectName?u:this.findProject(u);if(I){let b=I.toPath(c),R=I.getSourceFile(b);if(R&&R.resolvedPath===b)return R}let h=this.getOrCreateScriptInfoNotOpenedByClient(c,(I||this).currentDirectory,I?I.directoryStructureHost:this.host,!1);if(h){if(d&&Xa(d.sourceMapFilePath)&&h!==d){let b=this.getScriptInfoForPath(d.sourceMapFilePath);b&&(b.sourceInfos??(b.sourceInfos=new Set)).add(h.path)}return h.cacheSourceFile?h.cacheSourceFile.sourceFile:(h.sourceFileLike||(h.sourceFileLike={get text(){return w.fail("shouldnt need text"),""},getLineAndCharacterOfPosition:b=>{let R=h.positionToLineOffset(b);return{line:R.line-1,character:R.offset-1}},getPositionOfLineAndCharacter:(b,R,N)=>h.lineOffsetToPosition(b+1,R+1,N)}),h.sourceFileLike)}}setPerformanceEventHandler(c){this.performanceEventHandler=c}setHostConfiguration(c){var u,d;if(c.file){let I=this.getScriptInfoForNormalizedPath(Pf(c.file));I&&(I.setOptions($te(c.formatOptions),c.preferences),this.logger.info(`Host configuration update for file ${c.file}`))}else{if(c.hostInfo!==void 0&&(this.hostConfiguration.hostInfo=c.hostInfo,this.logger.info(`Host information ${c.hostInfo}`)),c.formatOptions&&(this.hostConfiguration.formatCodeOptions={...this.hostConfiguration.formatCodeOptions,...$te(c.formatOptions)},this.logger.info("Format host information updated")),c.preferences){let{lazyConfiguredProjectsFromExternalProject:I,includePackageJsonAutoImports:h,includeCompletionsForModuleExports:b}=this.hostConfiguration.preferences;this.hostConfiguration.preferences={...this.hostConfiguration.preferences,...c.preferences},I&&!this.hostConfiguration.preferences.lazyConfiguredProjectsFromExternalProject&&this.externalProjectToConfiguredProjectMap.forEach(R=>R.forEach(N=>{!N.deferredClose&&!N.isClosed()&&N.pendingUpdateLevel===2&&!this.hasPendingProjectUpdate(N)&&N.updateGraph()})),(h!==c.preferences.includePackageJsonAutoImports||!!b!=!!c.preferences.includeCompletionsForModuleExports)&&this.forEachProject(R=>{R.onAutoImportProviderSettingsChanged()})}if(c.extraFileExtensions&&(this.hostConfiguration.extraFileExtensions=c.extraFileExtensions,this.reloadProjects(),this.logger.info("Host file extension mappings updated")),c.watchOptions){let I=(u=G0e(c.watchOptions))==null?void 0:u.watchOptions,h=Cke(I,this.currentDirectory);this.hostConfiguration.watchOptions=h,this.hostConfiguration.beforeSubstitution=h===I?void 0:I,this.logger.info(`Host watch options changed to ${JSON.stringify(this.hostConfiguration.watchOptions)}, it will be take effect for next watches.`),(d=this.pnpWatcher)==null||d.close(),this.watchPnpFile()}}}getWatchOptions(c){return this.getWatchOptionsFromProjectWatchOptions(c.getWatchOptions(),c.getCurrentDirectory())}getWatchOptionsFromProjectWatchOptions(c,u){let d=this.hostConfiguration.beforeSubstitution?Cke(this.hostConfiguration.beforeSubstitution,u):this.hostConfiguration.watchOptions;return c&&d?{...d,...c}:c||d}closeLog(){this.logger.close()}reloadProjects(){this.logger.info("reload projects."),this.filenameToScriptInfo.forEach(d=>{this.openFiles.has(d.path)||d.fileWatcher&&this.onSourceFileChanged(d,this.host.fileExists(d.fileName)?d.deferredDelete?0:1:2)}),this.pendingProjectUpdates.forEach((d,I)=>{this.throttledOperations.cancel(I),this.pendingProjectUpdates.delete(I)}),this.throttledOperations.cancel(RHr),this.pendingOpenFileProjectUpdates=void 0,this.pendingEnsureProjectForOpenFiles=!1,this.configFileExistenceInfoCache.forEach(d=>{d.config&&(d.config.updateLevel=2)}),this.configFileForOpenFiles.clear(),this.externalProjects.forEach(d=>{this.clearSemanticCache(d),d.updateGraph()});let c=new Set,u=new Set;this.externalProjectToConfiguredProjectMap.forEach((d,I)=>{let h=`Reloading configured project in external project: ${I}`;d.forEach(b=>{this.getHostPreferences().lazyConfiguredProjectsFromExternalProject?(b.isInitialLoadPending()||(this.clearSemanticCache(b),b.pendingUpdateLevel=2,b.pendingUpdateReason=t$e(h)),u.add(b)):this.reloadConfiguredProjectClearingSemanticCache(b,h,c)})}),this.openFiles.forEach((d,I)=>{let h=this.getScriptInfoForPath(I);be(h.containingProjects,x0e)||this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(h,2,c,u)}),u.forEach(d=>c.add(d)),this.inferredProjects.forEach(d=>this.clearSemanticCache(d)),this.ensureProjectForOpenFiles(),this.cleanupProjectsAndScriptInfos(c,new Set(this.openFiles.keys()),new Set(this.externalProjectToConfiguredProjectMap.keys())),this.logger.info("After reloading projects.."),this.printProjects()}removeRootOfInferredProjectIfNowPartOfOtherProject(c){w.assert(c.containingProjects.length>0);let u=c.containingProjects[0];!u.isOrphan()&&qte(u)&&u.isRoot(c)&&X(c.containingProjects,d=>d!==u&&!d.isOrphan())&&u.removeFile(c,!0,!0)}ensureProjectForOpenFiles(){this.logger.info("Before ensureProjectForOpenFiles:"),this.printProjects();let c=this.pendingOpenFileProjectUpdates;this.pendingOpenFileProjectUpdates=void 0,c?.forEach((u,d)=>this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(this.getScriptInfoForPath(d),1)),this.openFiles.forEach((u,d)=>{let I=this.getScriptInfoForPath(d);I.isOrphan()?this.assignOrphanScriptInfoToInferredProject(I,u):this.removeRootOfInferredProjectIfNowPartOfOtherProject(I)}),this.pendingEnsureProjectForOpenFiles=!1,this.inferredProjects.forEach(M2),this.logger.info("After ensureProjectForOpenFiles:"),this.printProjects()}openClientFile(c,u,d,I){return this.openClientFileWithNormalizedPath(Pf(c),u,d,!1,I?Pf(I):void 0)}getOriginalLocationEnsuringConfiguredProject(c,u){let d=c.isSourceOfProjectReferenceRedirect(u.fileName),I=d?u:c.getSourceMapper().tryGetSourcePosition(u);if(!I)return;let{fileName:h}=I,b=this.getScriptInfo(h);if(!b&&!this.host.fileExists(h))return;let R={fileName:Pf(h),path:this.toPath(h)},N=this.getConfigFileNameForFile(R,!1);if(!N)return;let V=this.findConfiguredProjectByProjectName(N);if(!V){if(c.getCompilerOptions().disableReferencedProjectLoad)return d?u:b?.containingProjects.length?I:u;V=this.createConfiguredProject(N,`Creating project for original file: ${R.fileName}${u!==I?" for location: "+u.fileName:""}`)}M2(V);let P=re=>{let ue=this.getScriptInfo(h);return ue&&re.containsScriptInfo(ue)&&!re.isSourceOfProjectReferenceRedirect(ue.path)};if(V.isSolution()||!P(V)){if(V=e$e(V,h,re=>P(re)?re:void 0,1,`Creating project referenced in solution ${V.projectName} to find possible configured project for original file: ${R.fileName}${u!==I?" for location: "+u.fileName:""}`),!V)return;if(V===c)return I}te(V);let M=this.getScriptInfo(h);if(!M||!M.containingProjects.length)return;return M.containingProjects.forEach(re=>{QZ(re)&&te(re)}),I;function te(re){(c.originalConfiguredProjects??(c.originalConfiguredProjects=new Set)).add(re.canonicalConfigFilePath)}}fileExists(c){return!!this.getScriptInfoForNormalizedPath(c)||this.host.fileExists(c)}findExternalProjectContainingOpenScriptInfo(c){return be(this.externalProjects,u=>(M2(u),u.containsScriptInfo(c)))}getOrCreateOpenScriptInfo(c,u,d,I,h){let b=this.getOrCreateScriptInfoWorker(c,h?this.getNormalizedAbsolutePath(h):this.currentDirectory,!0,u,d,!!I,void 0,!0);return this.openFiles.set(b.path,h),b}assignProjectToOpenedScriptInfo(c){let u,d,I=this.findExternalProjectContainingOpenScriptInfo(c),h,b;if(!I&&this.serverMode===0){let R=this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(c,1);R&&(h=R.seenProjects,b=R.sentConfigDiag,R.defaultProject&&(u=R.defaultProject.getConfigFilePath(),d=R.defaultProject.getAllProjectErrors()))}return c.containingProjects.forEach(M2),c.isOrphan()&&(h?.forEach(R=>{b.has(R)||this.sendConfigFileDiagEvent(R,c.fileName,!0)}),w.assert(this.openFiles.has(c.path)),this.assignOrphanScriptInfoToInferredProject(c,this.openFiles.get(c.path))),w.assert(!c.isOrphan()),{configFileName:u,configFileErrors:d,retainProjects:h}}findCreateOrReloadConfiguredProject(c,u,d,I,h,b,R,N){let V=this.findConfiguredProjectByProjectName(c,I),P=!1;switch(u){case 0:if(!V)return;break;case 1:V??(V=this.createConfiguredProject(c,d)),P=!R&&VHr(V,h);break;case 2:V??(V=this.createConfiguredProject(c,t$e(d))),P=!N&&this.reloadConfiguredProjectClearingSemanticCache(V,d,b),N&&!N.has(V)&&!b.has(V)&&(V.pendingUpdateLevel=2,V.pendingUpdateReason=t$e(d),N.add(V));break;default:w.assertNever(u)}return{project:V,sentConfigFileDiag:P}}tryFindDefaultConfiguredProjectForOpenScriptInfo(c,u,d,I){let h=this.getConfigFileNameForFile(c,u===0);if(!h)return;let b=this.findCreateOrReloadConfiguredProject(h,u,WHr(c),d,c.fileName,I);if(!b)return;let R=new Set,N=new Set(b.sentConfigFileDiag?[b.project]:void 0),V,P;return M(b.project),{defaultProject:V??P,sentConfigDiag:N,seenProjects:R};function M(ue){return te(ue)?V:re(ue)}function te(ue){if(!Zi(R,ue))return;let Ae=ue.containsScriptInfo(c);if(Ae&&!ue.isSourceOfProjectReferenceRedirect(c.path))return V=ue;P??(P=Ae?ue:void 0)}function re(ue){return e$e(ue,c.path,(Ae,de)=>(de&&N.add(Ae),te(Ae)),u,`Creating project referenced in solution ${ue.projectName} to find possible configured project for ${c.fileName} to open`,d,c.fileName,I)}}tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(c,u,d,I){let h=u===0,b=this.tryFindDefaultConfiguredProjectForOpenScriptInfo(c,u,h,d);if(!b)return;let{defaultProject:R,seenProjects:N}=b;return R&&ius(c,R,V=>{N.add(V)},u,`Creating project possibly referencing default composite project ${R.getProjectName()} of open file ${c.fileName}`,h,d,I),b}loadAncestorProjectTree(c){c=c||Gn(this.configuredProjects,(d,I)=>I.isInitialLoadPending()?void 0:[d,!0]);let u=new Set;for(let d of on(this.configuredProjects.values()))GHr(d,I=>c.has(I))&&M2(d),this.ensureProjectChildren(d,c,u)}ensureProjectChildren(c,u,d){var I;if(!Zi(d,c.canonicalConfigFilePath)||c.getCompilerOptions().disableReferencedProjectLoad)return;let h=(I=c.getCurrentProgram())==null?void 0:I.getResolvedProjectReferences();if(h)for(let b of h){if(!b)continue;let R=F6e(b.references,P=>u.has(P.sourceFile.path)?P:void 0);if(!R)continue;let N=Pf(b.sourceFile.fileName),V=this.findConfiguredProjectByProjectName(N)??this.createConfiguredProject(N,`Creating project referenced by : ${c.projectName} as it references project ${R.sourceFile.fileName}`);M2(V),this.ensureProjectChildren(V,u,d)}}cleanupConfiguredProjects(c,u,d){this.getOrphanConfiguredProjects(c,d,u).forEach(I=>this.removeProject(I))}cleanupProjectsAndScriptInfos(c,u,d){this.cleanupConfiguredProjects(c,d,u);for(let I of this.inferredProjects.slice())I.isOrphan()&&this.removeProject(I);this.removeOrphanScriptInfos()}openClientFileWithNormalizedPath(c,u,d,I,h){let b=this.getOrCreateOpenScriptInfo(c,u,d,I,h),{retainProjects:R,...N}=this.assignProjectToOpenedScriptInfo(b);return this.cleanupProjectsAndScriptInfos(R,new Set([b.path]),void 0),this.telemetryOnOpenFile(b),this.printProjects(),N}getOrphanConfiguredProjects(c,u,d){let I=new Set(this.configuredProjects.values()),h=V=>{V.originalConfiguredProjects&&(QZ(V)||!V.isOrphan())&&V.originalConfiguredProjects.forEach((P,M)=>{let te=this.getConfiguredProjectByCanonicalConfigFilePath(M);return te&&N(te)})};return c?.forEach(N),this.inferredProjects.forEach(h),this.externalProjects.forEach(h),this.externalProjectToConfiguredProjectMap.forEach((V,P)=>{d?.has(P)||V.forEach(N)}),this.openFiles.forEach((V,P)=>{if(u?.has(P))return;let M=this.getScriptInfoForPath(P);if(be(M.containingProjects,x0e))return;let te=this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(M,0);te?.defaultProject&&te?.seenProjects.forEach(N)}),this.configuredProjects.forEach(V=>{I.has(V)&&(R(V)||FHr(V,b))&&N(V)}),I;function b(V){return!I.has(V)||R(V)}function R(V){var P,M;return(V.deferredClose||V.projectService.hasPendingProjectUpdate(V))&&!!((M=(P=V.projectService.configFileExistenceInfoCache.get(V.canonicalConfigFilePath))==null?void 0:P.openFilesImpactedByConfigFile)!=null&&M.size)}function N(V){I.delete(V)&&(h(V),FHr(V,N))}}removeOrphanScriptInfos(){let c=new Map(this.filenameToScriptInfo);this.filenameToScriptInfo.forEach(u=>{if(!u.deferredDelete){if(!u.isScriptOpen()&&u.isOrphan()&&!u.isContainedByBackgroundProject()){if(!u.sourceMapFilePath)return;let d;if(Xa(u.sourceMapFilePath)){let I=this.filenameToScriptInfo.get(u.sourceMapFilePath);d=I?.sourceInfos}else d=u.sourceMapFilePath.sourceInfos;if(!d||!$w(d,I=>{let h=this.getScriptInfoForPath(I);return!!h&&(h.isScriptOpen()||!h.isOrphan())}))return}if(c.delete(u.path),u.sourceMapFilePath){let d;if(Xa(u.sourceMapFilePath)){let I=this.filenameToScriptInfo.get(u.sourceMapFilePath);I?.deferredDelete?u.sourceMapFilePath={watcher:this.addMissingSourceMapFile(I.fileName,u.path),sourceInfos:I.sourceInfos}:c.delete(u.sourceMapFilePath),d=I?.sourceInfos}else d=u.sourceMapFilePath.sourceInfos;d&&d.forEach((I,h)=>c.delete(h))}}}),c.forEach(u=>this.deleteScriptInfo(u))}telemetryOnOpenFile(c){if(this.serverMode!==0||!this.eventHandler||!c.isJavaScript()||!R2(this.allJsFilesForOpenFileTelemetry,c.path))return;let u=this.ensureDefaultProjectForFile(c);if(!u.languageServiceEnabled)return;let d=u.getSourceFile(c.path),I=!!d&&!!d.checkJsDirective;this.eventHandler({eventName:uWt,data:{info:{checkJs:I}}})}closeClientFile(c,u){let d=this.getScriptInfoForNormalizedPath(Pf(c)),I=d?this.closeOpenFile(d,u):!1;return u||this.printProjects(),I}collectChanges(c,u,d,I){for(let h of u){let b=be(c,R=>R.projectName===h.getProjectName());I.push(h.getChangesSinceVersion(b&&b.version,d))}}synchronizeProjectList(c,u){let d=[];return this.collectChanges(c,this.externalProjects,u,d),this.collectChanges(c,gn(this.configuredProjects.values(),I=>I.deferredClose?void 0:I),u,d),this.collectChanges(c,this.inferredProjects,u,d),d}applyChangesInOpenFiles(c,u,d){let I,h=!1;if(c)for(let R of c){let N=this.getOrCreateOpenScriptInfo(Pf(R.fileName),R.content,Kqe(R.scriptKind),R.hasMixedContent,R.projectRootPath?Pf(R.projectRootPath):void 0);(I||(I=[])).push(N)}if(u)for(let R of u){let N=this.getScriptInfo(R.fileName);w.assert(!!N),this.applyChangesToFile(N,R.changes)}if(d)for(let R of d)h=this.closeClientFile(R,!0)||h;let b;I?.forEach(R=>{var N;return(N=this.assignProjectToOpenedScriptInfo(R).retainProjects)==null?void 0:N.forEach(V=>(b??(b=new Set)).add(V))}),h&&this.assignOrphanScriptInfosToInferredProject(),I?(this.cleanupProjectsAndScriptInfos(b,new Set(I.map(R=>R.path)),void 0),I.forEach(R=>this.telemetryOnOpenFile(R)),this.printProjects()):O(d)&&this.printProjects()}applyChangesToFile(c,u){for(let d of u)c.editContent(d.span.start,d.span.start+d.span.length,d.newText)}closeExternalProject(c,u){let d=Pf(c);if(this.externalProjectToConfiguredProjectMap.get(d))this.externalProjectToConfiguredProjectMap.delete(d);else{let h=this.findExternalProjectByProjectName(c);h&&this.removeProject(h)}u&&(this.cleanupConfiguredProjects(),this.printProjects())}openExternalProjects(c){let u=new Set(this.externalProjects.map(d=>d.getProjectName()));this.externalProjectToConfiguredProjectMap.forEach((d,I)=>u.add(I));for(let d of c)this.openExternalProject(d,!1),u.delete(d.projectFileName);u.forEach(d=>this.closeExternalProject(d,!1)),this.cleanupConfiguredProjects(),this.printProjects()}static escapeFilenameForRegex(c){return c.replace(this.filenameEscapeRegexp,"\\$&")}resetSafeList(){this.safelist=gWt}applySafeList(c){let u=c.typeAcquisition;w.assert(!!u,"proj.typeAcquisition should be set by now");let d=this.applySafeListWorker(c,c.rootFiles,u);return d?.excludedFiles??[]}applySafeListWorker(c,u,d){if(d.enable===!1||d.disableFilenameBasedTypeAcquisition)return;let I=d.include||(d.include=[]),h=[],b=u.map(M=>Af(M.fileName));for(let M of Object.keys(this.safelist)){let te=this.safelist[M];for(let re of b)if(te.match.test(re)){if(this.logger.info(`Excluding files based on rule ${M} matching file '${re}'`),te.types)for(let ue of te.types)I.includes(ue)||I.push(ue);if(te.exclude)for(let ue of te.exclude){let Ae=re.replace(te.match,(...de)=>ue.map(Be=>typeof Be=="number"?Xa(de[Be])?eir.escapeFilenameForRegex(de[Be]):(this.logger.info(`Incorrect RegExp specification in safelist rule ${M} - not enough groups`),"\\*"):Be).join(""));h.includes(Ae)||h.push(Ae)}else{let ue=eir.escapeFilenameForRegex(re);h.includes(ue)||h.push(ue)}}}let R=h.map(M=>new RegExp(M,"i")),N,V;for(let M=0;Mte.test(b[M])))P(M);else{if(d.enable){let te=xA(lf(b[M]));if(gd(te,"js")){let re=o0(te),ue=fv(re),Ae=this.legacySafelist.get(ue);if(Ae!==void 0){this.logger.info(`Excluded '${b[M]}' because it matched ${ue} from the legacy safelist`),P(M),I.includes(Ae)||I.push(Ae);continue}}}/^.+[.-]min\.js$/.test(b[M])?P(M):N?.push(u[M])}return V?{rootFiles:N,excludedFiles:V}:void 0;function P(M){V||(w.assert(!N),N=u.slice(0,M),V=[]),V.push(b[M])}}openExternalProject(c,u){let d=this.findExternalProjectByProjectName(c.projectFileName),I,h=[];for(let b of c.rootFiles){let R=Pf(b.fileName);if(Fqe(R)){if(this.serverMode===0&&this.host.fileExists(R)){let N=this.findConfiguredProjectByProjectName(R);N||(N=this.createConfiguredProject(R,`Creating configured project in external project: ${c.projectFileName}`),this.getHostPreferences().lazyConfiguredProjectsFromExternalProject||N.updateGraph()),(I??(I=new Set)).add(N),w.assert(!N.isClosed())}}else h.push(b)}if(I)this.externalProjectToConfiguredProjectMap.set(c.projectFileName,I),d&&this.removeProject(d);else{this.externalProjectToConfiguredProjectMap.delete(c.projectFileName);let b=c.typeAcquisition||{};b.include=b.include||[],b.exclude=b.exclude||[],b.enable===void 0&&(b.enable=nWt(h.map(V=>V.fileName)));let R=this.applySafeListWorker(c,h,b),N=R?.excludedFiles??[];if(h=R?.rootFiles??h,d){d.excludedFiles=N;let V=uZe(c.options),P=G0e(c.options,d.getCurrentDirectory()),M=this.getFilenameForExceededTotalSizeLimitForNonTsFiles(c.projectFileName,V,h,qqe);M?d.disableLanguageService(M):d.enableLanguageService(),d.setProjectErrors(P?.errors),this.updateRootAndOptionsOfNonInferredProject(d,h,qqe,V,b,c.options.compileOnSave,P?.watchOptions),d.updateGraph()}else this.createExternalProject(c.projectFileName,h,c.options,b,N).updateGraph()}u&&(this.cleanupConfiguredProjects(I,new Set(c.projectFileName)),this.printProjects())}hasDeferredExtension(){for(let c of this.hostConfiguration.extraFileExtensions)if(c.scriptKind===7)return!0;return!1}requestEnablePlugin(c,u,d){if(!this.host.importPlugin&&!this.host.require){this.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");return}if(this.logger.info(`Enabling plugin ${u.name} from candidate paths: ${d.join(",")}`),!u.name||Jl(u.name)||/[\\/]\.\.?($|[\\/])/.test(u.name)){this.logger.info(`Skipped loading plugin ${u.name||JSON.stringify(u)} because only package name is allowed plugin name`);return}if(this.host.importPlugin){let I=l7.importServicePluginAsync(u,d,this.host,b=>this.logger.info(b));this.pendingPluginEnablements??(this.pendingPluginEnablements=new Map);let h=this.pendingPluginEnablements.get(c);h||this.pendingPluginEnablements.set(c,h=[]),h.push(I);return}this.endEnablePlugin(c,l7.importServicePluginSync(u,d,this.host,I=>this.logger.info(I)))}endEnablePlugin(c,{pluginConfigEntry:u,resolvedModule:d,errorLogs:I}){var h;if(d){let b=(h=this.currentPluginConfigOverrides)==null?void 0:h.get(u.name);if(b){let R=u.name;u=b,u.name=R}c.enableProxy(d,u)}else X(I,b=>this.logger.info(b)),this.logger.info(`Couldn't find ${u.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;let c=on(this.pendingPluginEnablements.entries());this.pendingPluginEnablements=void 0,this.currentPluginEnablementPromise=this.enableRequestedPluginsWorker(c),await this.currentPluginEnablementPromise}async enableRequestedPluginsWorker(c){w.assert(this.currentPluginEnablementPromise===void 0);let u=!1;await Promise.all(Ot(c,async([d,I])=>{let h=await Promise.all(I);if(d.isClosed()||cZe(d)){this.logger.info(`Cancelling plugin enabling for ${d.getProjectName()} as it is ${d.isClosed()?"closed":"deferred close"}`);return}u=!0;for(let b of h)this.endEnablePlugin(d,b);this.delayUpdateProjectGraph(d)})),this.currentPluginEnablementPromise=void 0,u&&this.sendProjectsUpdatedInBackgroundEvent()}configurePlugin(c){this.forEachEnabledProject(u=>u.onPluginConfigurationChanged(c.pluginName,c.configuration)),this.currentPluginConfigOverrides=this.currentPluginConfigOverrides||new Map,this.currentPluginConfigOverrides.set(c.pluginName,c.configuration)}getPackageJsonsVisibleToFile(c,u,d){let I=this.packageJsonCache,h=d&&this.toPath(d),b=[],R=N=>{switch(I.directoryHasPackageJson(N)){case 3:return I.searchDirectoryAndAncestors(N),R(N);case-1:let V=xo(N,"package.json");this.watchPackageJsonFile(V,this.toPath(V),u);let P=I.getInDirectory(N);P&&b.push(P)}if(h&&h===N)return!0};return iI(aa(c),R),b}getNearestAncestorDirectoryWithPackageJson(c){return iI(c,u=>{switch(this.packageJsonCache.directoryHasPackageJson(u)){case-1:return u;case 0:return;case 3:return this.host.fileExists(xo(u,"package.json"))?u:void 0}})}watchPnpFile(){let c=Ikr(__filename);if(c)return this.watchFactory.watchFile(c,()=>{this.forEachProject(u=>{for(let d of u.getScriptInfos())u.resolutionCache.invalidateResolutionOfFile(d.path);u.markAsDirty(),M2(u)}),this.delayEnsureProjectForOpenFiles()},250,this.hostConfiguration.watchOptions,hm.ConfigFile)}watchPackageJsonFile(c,u,d){w.assert(d!==void 0);let I=(this.packageJsonFilesMap??(this.packageJsonFilesMap=new Map)).get(u);if(!I){let h=this.watchFactory.watchFile(c,(b,R)=>{switch(R){case 0:case 1:this.packageJsonCache.addOrUpdate(b,u),this.onPackageJsonChange(I);break;case 2:this.packageJsonCache.delete(u),this.onPackageJsonChange(I),I.projects.clear(),I.close()}},250,this.hostConfiguration.watchOptions,hm.PackageJson);I={projects:new Set,close:()=>{var b;I.projects.size||!h||(h.close(),h=void 0,(b=this.packageJsonFilesMap)==null||b.delete(u),this.packageJsonCache.invalidate(u))}},this.packageJsonFilesMap.set(u,I)}I.projects.add(d),(d.packageJsonWatches??(d.packageJsonWatches=new Set)).add(I)}onPackageJsonChange(c){c.projects.forEach(u=>{var d;return(d=u.onPackageJsonChange)==null?void 0:d.call(u)})}includePackageJsonAutoImports(){switch(this.hostConfiguration.preferences.includePackageJsonAutoImports){case"on":return 1;case"off":return 0;default:return 2}}getIncompleteCompletionsCache(){return this.incompleteCompletionsCache||(this.incompleteCompletionsCache=cus())}};PHr.filenameEscapeRegexp=/[-/\\^$*+?.()|[\]{}]/g;var yWt=PHr;function cus(){let n;return{get(){return n},set(c){n=c},clear(){n=void 0}}}function bWt(n){return n.kind!==void 0}function EWt(n){n.print(!1,!1,!1)}function BWt(n){let c,u,d,I={get(N,V,P,M){if(!(!u||d!==b(N,P,M)))return u.get(V)},set(N,V,P,M,te,re,ue){if(h(N,P,M).set(V,R(te,re,ue,!1)),ue){for(let Ae of re)if(Ae.isInNodeModules){let de=Ae.path.substring(0,Ae.path.indexOf(Qx)+Qx.length-1),Be=n.toPath(de);c?.has(Be)||(c||(c=new Map)).set(Be,n.watchNodeModulesForPackageJsonChanges(de))}}},setModulePaths(N,V,P,M,te){let re=h(N,P,M),ue=re.get(V);ue?ue.modulePaths=te:re.set(V,R(void 0,te,void 0,void 0))},setBlockedByPackageJsonDependencies(N,V,P,M,te){let re=h(N,P,M),ue=re.get(V);ue?ue.isBlockedByPackageJsonDependencies=te:re.set(V,R(void 0,void 0,void 0,te))},clear(){c?.forEach(RB),u?.clear(),c?.clear(),d=void 0},count(){return u?u.size:0}};return w.isDebugging&&Object.defineProperty(I,"__cache",{get:()=>u}),I;function h(N,V,P){let M=b(N,V,P);return u&&d!==M&&I.clear(),d=M,u||(u=new Map)}function b(N,V,P){return`${N},${V.importModuleSpecifierEnding},${V.importModuleSpecifierPreference},${P.overrideImportMode}`}function R(N,V,P,M){return{kind:N,modulePaths:V,moduleSpecifiers:P,isBlockedByPackageJsonDependencies:M}}}function vWt(n){let c=new Map,u=new Map;return{addOrUpdate:d,invalidate:I,delete:b=>{c.delete(b),u.set(aa(b),!0)},getInDirectory:b=>c.get(n.toPath(xo(b,"package.json")))||void 0,directoryHasPackageJson:b=>h(n.toPath(b)),searchDirectoryAndAncestors:b=>{iI(b,R=>{let N=n.toPath(R);if(h(N)!==3)return!0;let V=xo(R,"package.json");Sue(n,V)?d(V,xo(N,"package.json")):u.set(N,!0)})}};function d(b,R){let N=w.checkDefined(wje(b,n.host));c.set(R,N),u.delete(aa(R))}function I(b){c.delete(b),u.delete(aa(b))}function h(b){return c.has(xo(b,"package.json"))?-1:u.has(b)?0:3}}var OHr={isCancellationRequested:()=>!1,setRequest:()=>{},resetRequest:()=>{}};function lus(n){let c=n[0],u=n[1];return(1e9*c+u)/1e6}function MHr(n,c){if((qte(n)||x0e(n))&&n.isJsOnlyProject()){let u=n.getScriptInfoForNormalizedPath(c);return u&&!u.isJavaScript()}return!1}function uus(n){return LE(n)||!!n.emitDecoratorMetadata}function QHr(n,c,u){let d=c.getScriptInfoForNormalizedPath(n);return{start:d.positionToLineOffset(u.start),end:d.positionToLineOffset(u.start+u.length),text:xN(u.messageText,` -`),code:u.code,category:jh(u),reportsUnnecessary:u.reportsUnnecessary,reportsDeprecated:u.reportsDeprecated,source:u.source,relatedInformation:Ot(u.relatedInformation,r$e)}}function r$e(n){return n.file?{span:{start:ere(Ll(n.file,n.start)),end:ere(Ll(n.file,n.start+n.length)),file:n.file.fileName},message:xN(n.messageText,` -`),category:jh(n),code:n.code}:{message:xN(n.messageText,` -`),category:jh(n),code:n.code}}function ere(n){return{line:n.line+1,offset:n.character+1}}function F0e(n,c){let u=n.file&&ere(Ll(n.file,n.start)),d=n.file&&ere(Ll(n.file,n.start+n.length)),I=xN(n.messageText,` -`),{code:h,source:b}=n,R=jh(n),N={start:u,end:d,text:I,code:h,category:R,reportsUnnecessary:n.reportsUnnecessary,reportsDeprecated:n.reportsDeprecated,source:b,relatedInformation:Ot(n.relatedInformation,r$e)};return c?{...N,fileName:n.file&&n.file.fileName}:N}function gus(n,c){return n.every(u=>Uu(u.span)h+=` ${b} +`))}return h}print(c,u,d){var I;this.writeLog(`Project '${this.projectName}' (${x0e[this.projectKind]})`),this.writeLog(this.filesToStringWorker(c&&this.projectService.logger.hasLevel(3),u&&this.projectService.logger.hasLevel(3),d&&this.projectService.logger.hasLevel(3))),this.writeLog("-----------------------------------------------"),this.autoImportProviderHost&&this.autoImportProviderHost.print(!1,!1,!1),(I=this.noDtsResolutionProject)==null||I.print(!1,!1,!1)}setCompilerOptions(c){var u;if(c){c.allowNonTsExtensions=!0;let d=this.compilerOptions;this.compilerOptions=c,this.setInternalCompilerOptionsForEmittingJsFiles(),(u=this.noDtsResolutionProject)==null||u.setCompilerOptions(this.getCompilerOptionsForNoDtsResolutionProject()),NB(d,c)&&(this.cachedUnresolvedImportsPerFile.clear(),this.lastCachedUnresolvedImportsList=void 0,this.resolutionCache.onChangesAffectModuleResolution(),this.moduleSpecifierCache.clear()),this.markAsDirty()}}setWatchOptions(c){this.watchOptions=c}getWatchOptions(){return this.watchOptions}setTypeAcquisition(c){c&&(this.typeAcquisition=this.removeLocalTypingsFromTypeAcquisition(c))}getTypeAcquisition(){return this.typeAcquisition||{}}getChangesSinceVersion(c,u){var d,I;let h=u?N=>on(N.entries(),([V,P])=>({fileName:V,isSourceOfProjectReferenceRedirect:P})):N=>on(N.keys());this.isInitialLoadPending()||M2(this);let b={projectName:this.getProjectName(),version:this.projectProgramVersion,isInferred:ere(this),options:this.getCompilationSettings(),languageServiceDisabled:!this.languageServiceEnabled,lastFileExceededProgramSize:this.lastFileExceededProgramSize},R=this.updatedFileNames;if(this.updatedFileNames=void 0,this.lastReportedFileNames&&c===this.lastReportedVersion){if(this.projectProgramVersion===this.lastReportedVersion&&!R)return{info:b,projectErrors:this.getGlobalProjectErrors()};let N=this.lastReportedFileNames,V=((d=this.externalFiles)==null?void 0:d.map(Ae=>({fileName:Of(Ae),isSourceOfProjectReferenceRedirect:!1})))||bm,P=lA(this.getFileNamesWithRedirectInfo(!!u).concat(V),Ae=>Ae.fileName,Ae=>Ae.isSourceOfProjectReferenceRedirect),Q=new Map,te=new Map,re=R?on(R.keys()):[],ue=[];return UC(P,(Ae,de)=>{N.has(de)?u&&Ae!==N.get(de)&&ue.push({fileName:de,isSourceOfProjectReferenceRedirect:Ae}):Q.set(de,Ae)}),UC(N,(Ae,de)=>{P.has(de)||te.set(de,Ae)}),this.lastReportedFileNames=P,this.lastReportedVersion=this.projectProgramVersion,{info:b,changes:{added:h(Q),removed:h(te),updated:u?re.map(Ae=>({fileName:Ae,isSourceOfProjectReferenceRedirect:this.isSourceOfProjectReferenceRedirect(Ae)})):re,updatedRedirects:u?ue:void 0},projectErrors:this.getGlobalProjectErrors()}}else{let N=this.getFileNamesWithRedirectInfo(!!u),V=((I=this.externalFiles)==null?void 0:I.map(Q=>({fileName:Of(Q),isSourceOfProjectReferenceRedirect:!1})))||bm,P=N.concat(V);return this.lastReportedFileNames=lA(P,Q=>Q.fileName,Q=>Q.isSourceOfProjectReferenceRedirect),this.lastReportedVersion=this.projectProgramVersion,{info:b,files:u?P:P.map(Q=>Q.fileName),projectErrors:this.getGlobalProjectErrors()}}}removeRoot(c){this.rootFilesMap.delete(c.path)}isSourceOfProjectReferenceRedirect(c){return!!this.program&&this.program.isSourceOfProjectReferenceRedirect(c)}getGlobalPluginSearchPaths(){return[...this.projectService.pluginProbeLocations,Do(this.projectService.getExecutingFilePath(),"../../..")]}enableGlobalPlugins(c){if(!this.projectService.globalPlugins.length)return;let u=this.projectService.host;if(!u.require&&!u.importPlugin){this.projectService.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");return}let d=this.getGlobalPluginSearchPaths();for(let I of this.projectService.globalPlugins)I&&(c.plugins&&c.plugins.some(h=>h.name===I)||(this.projectService.logger.info(`Loading global plugin ${I}`),this.enablePlugin({name:I,global:!0},d)))}enablePlugin(c,u){this.projectService.requestEnablePlugin(this,c,u)}enableProxy(c,u){try{if(typeof c!="function"){this.projectService.logger.info(`Skipped loading plugin ${u.name} because it did not expose a proper factory function`);return}let d={config:u,project:this,languageService:this.languageService,languageServiceHost:this,serverHost:this.projectService.host,session:this.projectService.session},I=c({typescript:fHr}),h=I.create(d);for(let b of Object.keys(this.languageService))b in h||(this.projectService.logger.info(`Plugin activation warning: Missing proxied method ${b} in created LS. Patching.`),h[b]=this.languageService[b]);this.projectService.logger.info("Plugin validation succeeded"),this.languageService=h,this.plugins.push({name:u.name,module:I})}catch(d){this.projectService.logger.info(`Plugin activation failed: ${d}`)}}onPluginConfigurationChanged(c,u){this.plugins.filter(d=>d.name===c).forEach(d=>{d.module.onConfigurationChanged&&d.module.onConfigurationChanged(u)})}refreshDiagnostics(){this.projectService.sendProjectsUpdatedInBackgroundEvent()}getPackageJsonsVisibleToFile(c,u){return this.projectService.serverMode!==0?bm:this.projectService.getPackageJsonsVisibleToFile(c,this,u)}getNearestAncestorDirectoryWithPackageJson(c){return this.projectService.getNearestAncestorDirectoryWithPackageJson(c)}getPackageJsonsForAutoImport(c){return this.getPackageJsonsVisibleToFile(Do(this.currentDirectory,mue),c)}getPackageJsonCache(){return this.projectService.packageJsonCache}getCachedExportInfoMap(){return this.exportMapCache||(this.exportMapCache=Lje(this))}clearCachedExportInfoMap(){var c;(c=this.exportMapCache)==null||c.clear()}getModuleSpecifierCache(){return this.moduleSpecifierCache}includePackageJsonAutoImports(){return this.projectService.includePackageJsonAutoImports()===0||!this.languageServiceEnabled||q_e(this.currentDirectory)||!this.isDefaultProjectForOpenFiles()?0:this.projectService.includePackageJsonAutoImports()}getHostForAutoImportProvider(){var c,u;return this.program?{fileExists:this.program.fileExists,directoryExists:this.program.directoryExists,realpath:this.program.realpath||((c=this.projectService.host.realpath)==null?void 0:c.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:(u=this.projectService.host.trace)==null?void 0:u.bind(this.projectService.host),useCaseSensitiveFileNames:this.program.useCaseSensitiveFileNames(),readDirectory:this.projectService.host.readDirectory.bind(this.projectService.host)}:this.projectService.host}getPackageJsonAutoImportProvider(){var c,u,d;if(this.autoImportProviderHost===!1)return;if(this.projectService.serverMode!==0){this.autoImportProviderHost=!1;return}if(this.autoImportProviderHost){if(M2(this.autoImportProviderHost),this.autoImportProviderHost.isEmpty()){this.autoImportProviderHost.close(),this.autoImportProviderHost=void 0;return}return this.autoImportProviderHost.getCurrentProgram()}let I=this.includePackageJsonAutoImports();if(I){(c=Qi)==null||c.push(Qi.Phase.Session,"getPackageJsonAutoImportProvider");let h=$l();if(this.autoImportProviderHost=gWt.create(I,this,this.getHostForAutoImportProvider(),this.documentRegistry),this.autoImportProviderHost)return M2(this.autoImportProviderHost),this.sendPerformanceEvent("CreatePackageJsonAutoImportProvider",$l()-h),(u=Qi)==null||u.pop(),this.autoImportProviderHost.getCurrentProgram();(d=Qi)==null||d.pop()}}isDefaultProjectForOpenFiles(){return!!UC(this.projectService.openFiles,(c,u)=>this.projectService.tryGetDefaultProjectForFile(this.projectService.getScriptInfoForPath(u))===this)}watchNodeModulesForPackageJsonChanges(c){return this.projectService.watchPackageJsonsInNodeModules(c,this)}getIncompleteCompletionsCache(){return this.projectService.getIncompleteCompletionsCache()}getNoDtsResolutionProject(c){return w.assert(this.projectService.serverMode===0),this.noDtsResolutionProject||(this.noDtsResolutionProject=new lWt(this.projectService,this.documentRegistry,this.getCompilerOptionsForNoDtsResolutionProject(),this.currentDirectory)),this.noDtsResolutionProject.rootFile!==c&&(this.projectService.setFileNamesOfAutpImportProviderOrAuxillaryProject(this.noDtsResolutionProject,[c]),this.noDtsResolutionProject.rootFile=c),this.noDtsResolutionProject}runWithTemporaryFileUpdate(c,u,d){var I,h,b,R;let N=this.program,V=w.checkDefined((I=this.program)==null?void 0:I.getSourceFile(c),"Expected file to be part of program"),P=w.checkDefined(V.getText());(h=this.getScriptInfo(c))==null||h.editContent(0,P.length,u),this.updateGraph();try{d(this.program,N,(b=this.program)==null?void 0:b.getSourceFile(c))}finally{(R=this.getScriptInfo(c))==null||R.editContent(0,this.program.getSourceFile(c).getText().length,P)}}getCompilerOptionsForNoDtsResolutionProject(){return{...this.getCompilerOptions(),noDtsResolution:!0,allowJs:!0,maxNodeModuleJsDepth:3,diagnostics:!1,skipLibCheck:!0,sourceMap:!1,types:v,lib:v,noLib:!0}}};function sus(n,c){var u,d;let I=n.getSourceFiles();(u=Qi)==null||u.push(Qi.Phase.Session,"getUnresolvedImports",{count:I.length});let h=n.getTypeChecker().getAmbientModules().map(R=>R2(R.getName())),b=Ir(Fr(I,R=>ous(n,R,h,c)));return(d=Qi)==null||d.pop(),b}function ous(n,c,u,d){return we(d,c.path,()=>{let I;return n.forEachResolvedModule(({resolvedModule:h},b)=>{(!h||!E6(h.extension))&&!Ul(b)&&!u.some(R=>R===b)&&(I=Yr(I,a_e(b).packageName))},c),I||bm})}var cWt=class extends f7{constructor(n,c,u,d,I,h,b){super(n.newInferredProjectName(),0,n,c,void 0,void 0,u,!1,d,n.host,h),this._isJsInferredProject=!1,this.typeAcquisition=b,this.projectRootPath=I&&n.toCanonicalFileName(I),!I&&!n.useSingleInferredProject&&(this.canonicalCurrentDirectory=n.toCanonicalFileName(this.currentDirectory)),this.enableGlobalPlugins(this.getCompilerOptions())}toggleJsInferredProject(n){n!==this._isJsInferredProject&&(this._isJsInferredProject=n,this.setCompilerOptions())}setCompilerOptions(n){if(!n&&!this.getCompilationSettings())return;let c=q7e(n||this.getCompilationSettings());this._isJsInferredProject&&typeof c.maxNodeModuleJsDepth!="number"?c.maxNodeModuleJsDepth=2:this._isJsInferredProject||(c.maxNodeModuleJsDepth=void 0),c.allowJs=!0,super.setCompilerOptions(c)}addRoot(n){w.assert(n.isScriptOpen()),this.projectService.startWatchingConfigFilesForInferredProjectRoot(n),!this._isJsInferredProject&&n.isJavaScript()?this.toggleJsInferredProject(!0):this.isOrphan()&&this._isJsInferredProject&&!n.isJavaScript()&&this.toggleJsInferredProject(!1),super.addRoot(n)}removeRoot(n){this.projectService.stopWatchingConfigFilesForScriptInfo(n),super.removeRoot(n),!this.isOrphan()&&this._isJsInferredProject&&n.isJavaScript()&&he(this.getRootScriptInfos(),c=>!c.isJavaScript())&&this.toggleJsInferredProject(!1)}isOrphan(){return!this.hasRoots()}isProjectWithSingleRoot(){return!this.projectRootPath&&!this.projectService.useSingleInferredProject||this.getRootScriptInfos().length===1}close(){X(this.getRootScriptInfos(),n=>this.projectService.stopWatchingConfigFilesForScriptInfo(n)),super.close()}getTypeAcquisition(){return this.typeAcquisition||{enable:iWt(this),include:v,exclude:v}}},lWt=class extends f7{constructor(n,c,u,d){super(n.newAuxiliaryProjectName(),4,n,c,!1,void 0,u,!1,void 0,n.host,d)}isOrphan(){return!0}scheduleInvalidateResolutionsOfFailedLookupLocations(){}},uWt=class sir extends f7{constructor(c,u,d,I){super(c.projectService.newAutoImportProviderProjectName(),3,c.projectService,d,!1,void 0,I,!1,c.getWatchOptions(),c.projectService.host,c.currentDirectory),this.hostProject=c,this.rootFileNames=u,this.useSourceOfProjectReferenceRedirect=Yi(this.hostProject,this.hostProject.useSourceOfProjectReferenceRedirect),this.getParsedCommandLine=Yi(this.hostProject,this.hostProject.getParsedCommandLine)}static getRootFileNames(c,u,d,I){var h,b;if(!c)return v;let R=u.getCurrentProgram();if(!R)return v;let N=$l(),V,P,Q=Do(u.currentDirectory,mue),te=u.getPackageJsonsForAutoImport(Do(u.currentDirectory,Q));for(let Me of te)(h=Me.dependencies)==null||h.forEach((De,lt)=>Be(lt)),(b=Me.peerDependencies)==null||b.forEach((De,lt)=>Be(lt));let re=0;if(V){let Me=u.getSymlinkCache();for(let De of on(V.keys())){if(c===2&&re>this.maxDependencies)return u.log(`AutoImportProviderProject: attempted to add more than ${this.maxDependencies} dependencies. Aborting.`),v;let lt=D8e(De,u.currentDirectory,I,d,R.getModuleResolutionCache());if(lt){let je=Fe(lt,R,Me);if(je){re+=de(je);continue}}if(!X([u.currentDirectory,u.getGlobalTypingsCacheLocation()],je=>{if(je){let st=D8e(`@types/${De}`,je,I,d,R.getModuleResolutionCache());if(st){let nt=Fe(st,R,Me);return re+=de(nt),!0}}})&<&&I.allowJs&&I.maxNodeModuleJsDepth){let je=Fe(lt,R,Me,!0);re+=de(je)}}}let ue=R.getResolvedProjectReferences(),Ae=0;return ue?.length&&u.projectService.getHostPreferences().includeCompletionsForModuleExports&&ue.forEach(Me=>{if(Me?.commandLine.options.outFile)Ae+=de(Ne([NG(Me.commandLine.options.outFile,".d.ts")]));else if(Me){let De=su(()=>z6(Me.commandLine,!u.useCaseSensitiveFileNames()));Ae+=de(Ne(tr(Me.commandLine.fileNames,lt=>!Gh(lt)&&!Ad(lt,".json")&&!R.getSourceFile(lt)?Tte(lt,Me.commandLine,!u.useCaseSensitiveFileNames(),De):void 0)))}}),P?.size&&u.log(`AutoImportProviderProject: found ${P.size} root files in ${re} dependencies ${Ae} referenced projects in ${$l()-N} ms`),P?on(P.values()):v;function de(Me){return Me?.length?(P??(P=new Set),Me.forEach(De=>P.add(De)),1):0}function Be(Me){uc(Me,"@types/")||(V||(V=new Set)).add(Me)}function Fe(Me,De,lt,Le){var je;let st=V8e(Me,I,d,De.getModuleResolutionCache(),Le);if(st){let nt=(je=d.realpath)==null?void 0:je.call(d,Me.packageDirectory),qe=nt?u.toPath(nt):void 0,it=qe&&qe!==u.toPath(Me.packageDirectory);return it&<.setSymlinkedDirectory(Me.packageDirectory,{real:dA(nt),realPath:dA(qe)}),Ne(st,it?It=>It.replace(Me.packageDirectory,nt):void 0)}}function Ne(Me,De){return tr(Me,lt=>{let Le=De?De(lt):lt;if(!R.getSourceFile(Le)&&!(De&&R.getSourceFile(lt)))return Le})}}static create(c,u,d,I){if(c===0)return;let h={...u.getCompilerOptions(),...this.compilerOptionsOverrides},b=this.getRootFileNames(c,u,d,h);if(b.length)return new sir(u,b,I,h)}isEmpty(){return!lr(this.rootFileNames)}isOrphan(){return!0}updateGraph(){let c=this.rootFileNames;c||(c=sir.getRootFileNames(this.hostProject.includePackageJsonAutoImports(),this.hostProject,this.hostProject.getHostForAutoImportProvider(),this.getCompilationSettings())),this.projectService.setFileNamesOfAutpImportProviderOrAuxillaryProject(this,c),this.rootFileNames=c;let u=this.getCurrentProgram(),d=super.updateGraph();return u&&u!==this.getCurrentProgram()&&this.hostProject.clearCachedExportInfoMap(),d}scheduleInvalidateResolutionsOfFailedLookupLocations(){}hasRoots(){var c;return!!((c=this.rootFileNames)!=null&&c.length)}markAsDirty(){this.rootFileNames=void 0,super.markAsDirty()}getScriptFileNames(){return this.rootFileNames||v}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 c;return(c=this.hostProject.getCurrentProgram())==null?void 0:c.getModuleResolutionCache()}};uWt.maxDependencies=10,uWt.compilerOptionsOverrides={diagnostics:!1,skipLibCheck:!0,sourceMap:!1,types:v,lib:v,noLib:!0};var gWt=uWt,AWt=class extends f7{constructor(n,c,u,d,I,h){super(n,1,u,d,!1,void 0,{},!1,void 0,I,oa(n)),this.canonicalConfigFilePath=c,this.openFileWatchTriggered=new Map,this.canConfigFileJsonReportNoInputFiles=!1,this.isInitialLoadPending=fI,this.sendLoadingProjectFinish=!1,this.pendingUpdateLevel=2,this.pendingUpdateReason=h}setCompilerHost(n){this.compilerHost=n}getCompilerHost(){return this.compilerHost}useSourceOfProjectReferenceRedirect(){return this.languageServiceEnabled}getParsedCommandLine(n){let c=Mc(n),u=this.projectService.toCanonicalFileName(c),d=this.projectService.configFileExistenceInfoCache.get(u);return d||this.projectService.configFileExistenceInfoCache.set(u,d={exists:this.projectService.host.fileExists(c)}),this.projectService.ensureParsedConfigUptoDate(c,u,d,this),this.languageServiceEnabled&&this.projectService.serverMode===0&&this.projectService.watchWildcards(c,d,this),d.exists?d.config.parsedCommandLine:void 0}onReleaseParsedCommandLine(n){this.releaseParsedConfig(this.projectService.toCanonicalFileName(Mc(n)))}releaseParsedConfig(n){this.projectService.stopWatchingWildCards(n,this),this.projectService.releaseParsedConfig(n,this)}updateGraph(){if(this.deferredClose)return!1;let n=this.dirty;this.isInitialLoadPending=NC;let c=this.pendingUpdateLevel;this.pendingUpdateLevel=0;let u;switch(c){case 1:this.openFileWatchTriggered.clear(),u=this.projectService.reloadFileNamesOfConfiguredProject(this);break;case 2:this.openFileWatchTriggered.clear();let d=w.checkDefined(this.pendingUpdateReason);this.projectService.reloadConfiguredProject(this,d),u=!0;break;default:u=super.updateGraph()}return this.compilerHost=void 0,this.projectService.sendProjectLoadingFinishEvent(this),this.projectService.sendProjectTelemetry(this),c===2||u&&(!n||!this.triggerFileForConfigFileDiag||this.getCurrentProgram().structureIsReused===2)?this.triggerFileForConfigFileDiag=void 0:this.triggerFileForConfigFileDiag||this.projectService.sendConfigFileDiagEvent(this,void 0,!1),u}getCachedDirectoryStructureHost(){return this.directoryStructureHost}getConfigFilePath(){return this.getProjectName()}getProjectReferences(){return this.projectReferences}updateReferences(n){if(typeof process.versions.pnp<"u"){let c=this.getCurrentDirectory(),u=d=>{try{let I=EV(`${d}/`);if(!I)return d;let h=I.findPackageLocator(`${d}/`),{packageLocation:b}=I.getPackageInformation(h),R=Do(h.name,Ip(b,d,!1));return I.resolveToUnqualified(R,`${c}/`)}catch{return d}};n=n?.map(d=>({...d,path:u(d.path)}))}this.projectReferences=n,this.potentialProjectReferences=void 0}setPotentialProjectReference(n){w.assert(this.isInitialLoadPending()),(this.potentialProjectReferences||(this.potentialProjectReferences=new Set)).add(n)}getResolvedProjectReferenceToRedirect(n){let c=this.getCurrentProgram();return c&&c.getResolvedProjectReferenceToRedirect(n)}forEachResolvedProjectReference(n){var c;return(c=this.getCurrentProgram())==null?void 0:c.forEachResolvedProjectReference(n)}enablePluginsWithOptions(n){var c;if(this.plugins.length=0,!((c=n.plugins)!=null&&c.length)&&!this.projectService.globalPlugins.length)return;let u=this.projectService.host;if(!u.require&&!u.importPlugin){this.projectService.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");return}let d=this.getGlobalPluginSearchPaths();if(this.projectService.allowLocalPluginLoads){let I=oa(this.canonicalConfigFilePath);this.projectService.logger.info(`Local plugin loading enabled; adding ${I} to search paths`),d.unshift(I)}if(n.plugins)for(let I of n.plugins)this.enablePlugin(I,d);return this.enableGlobalPlugins(n)}getGlobalProjectErrors(){return Gt(this.projectErrors,n=>!n.file)||bm}getAllProjectErrors(){return this.projectErrors||bm}setProjectErrors(n){this.projectErrors=n}close(){this.projectService.configFileExistenceInfoCache.forEach((n,c)=>this.releaseParsedConfig(c)),this.projectErrors=void 0,this.openFileWatchTriggered.clear(),this.compilerHost=void 0,super.close()}markAsDirty(){this.deferredClose||super.markAsDirty()}isSolution(){return this.getRootFilesMap().size===0&&!this.canConfigFileJsonReportNoInputFiles}isOrphan(){return!!this.deferredClose}getEffectiveTypeRoots(){return tue(this.getCompilationSettings(),this)||[]}updateErrorOnNoInputFiles(n){yke(n,this.getConfigFilePath(),this.getCompilerOptions().configFile.configFileSpecs,this.projectErrors,this.canConfigFileJsonReportNoInputFiles)}},Wqe=class extends f7{constructor(n,c,u,d,I,h,b,R){super(n,2,c,u,!0,I,d,h,R,c.host,oa(b||df(n))),this.externalProjectName=n,this.compileOnSaveEnabled=h,this.excludedFiles=[],this.enableGlobalPlugins(this.getCompilerOptions())}updateGraph(){let n=super.updateGraph();return this.projectService.sendProjectTelemetry(this),n}getExcludedFiles(){return this.excludedFiles}};function ere(n){return n.projectKind===0}function HZ(n){return n.projectKind===1}function G0e(n){return n.projectKind===2}function F0e(n){return n.projectKind===3||n.projectKind===4}function uZe(n){return HZ(n)&&!!n.deferredClose}var Pqe=20*1024*1024,Oqe=4*1024*1024,gZe="projectsUpdatedInBackground",Qqe="projectLoadingStart",Mqe="projectLoadingFinish",Hqe="largeFileReferenced",Yqe="configFileDiag",Xqe="projectLanguageServiceState",Jqe="projectInfo",dWt="openFileInfo",Uqe="createFileWatcher",Kqe="createDirectoryWatcher",jqe="closeFileWatcher",ZHr="*ensureProjectForOpenFiles*";function LHr(n){let c=new Map;for(let u of n)if(typeof u.type=="object"){let d=u.type;d.forEach(I=>{w.assert(typeof I=="number")}),c.set(u.name,d)}return c}var aus=LHr(lT),cus=LHr(Y6),lus=new Map(Object.entries({none:0,block:1,smart:2})),pWt={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 tre(n){return Ya(n.indentStyle)&&(n.indentStyle=lus.get(n.indentStyle.toLowerCase()),w.assert(n.indentStyle!==void 0)),n}function AZe(n){return aus.forEach((c,u)=>{let d=n[u];Ya(d)&&(n[u]=c.get(d.toLowerCase()))}),n}function Z0e(n,c){let u,d;return Y6.forEach(I=>{let h=n[I.name];if(h===void 0)return;let b=cus.get(I.name);(u||(u={}))[I.name]=b?Ya(h)?b.get(h.toLowerCase()):h:h4(I,h,c||"",d||(d=[]))}),u&&{watchOptions:u,errors:d}}function fWt(n){let c;return gke.forEach(u=>{let d=n[u.name];d!==void 0&&((c||(c={}))[u.name]=d)}),c}function zqe(n){return Ya(n)?qqe(n):n}function qqe(n){switch(n){case"JS":return 1;case"JSX":return 2;case"TS":return 3;case"TSX":return 4;default:return 0}}function IWt(n){let{lazyConfiguredProjectsFromExternalProject:c,...u}=n;return u}var $qe={getFileName:n=>n,getScriptKind:(n,c)=>{let u;if(c){let d=NE(n);d&&lr(c,I=>I.extension===d?(u=I.scriptKind,!0):!1)}return u},hasMixedContent:(n,c)=>lr(c,u=>u.isMixedContent&&Ad(n,u.extension))},e$e={getFileName:n=>n.fileName,getScriptKind:n=>zqe(n.scriptKind),hasMixedContent:n=>!!n.hasMixedContent};function VHr(n,c){for(let u of c)if(u.getProjectName()===n)return u}var CWt={close:oc};function WHr(n,c){if(!(!c||t$e(n)))return c.get(n.path)}function uus(n){return!!n.containingProjects}function t$e(n){return!!n.configFileInfo}var mWt=(n=>(n[n.Find=0]="Find",n[n.Create=1]="Create",n[n.Reload=2]="Reload",n))(mWt||{});function gus(n,c,u,d,I,h,b,R){for(;;){if(!c.isInitialLoadPending()&&(!c.getCompilerOptions().composite||c.getCompilerOptions().disableSolutionSearching))return;let N=c.projectService.getConfigFileNameForFile({fileName:c.getConfigFilePath(),path:n.path,configFileInfo:!0},d===0);if(!N)return;let V=c.projectService.findCreateOrReloadConfiguredProject(N,d,I,h,void 0,b,!0,R);if(!V)return;V.project.isInitialLoadPending()&&c.getCompilerOptions().composite&&V.project.setPotentialProjectReference(c.canonicalConfigFilePath);let P=u(V.project);if(P)return P;c=V.project}}function r$e(n,c,u,d,I,h,b,R){var N;let V=(N=n.getCurrentProgram())==null?void 0:N.getResolvedProjectReferences();if(!V)return;let P=c?n.getResolvedProjectReferenceToRedirect(c):void 0;if(P){let re=Of(P.sourceFile.fileName),ue=n.projectService.findConfiguredProjectByProjectName(re,h);if(ue){let Ae=te(ue);if(Ae)return Ae}else if(d!==0){let Ae=hWt(V,n.getCompilerOptions(),(de,Be)=>P===de?Q(de,Be):void 0,d,n.projectService);if(Ae)return Ae}}return hWt(V,n.getCompilerOptions(),(re,ue)=>P!==re?Q(re,ue):void 0,d,n.projectService);function Q(re,ue){let Ae=n.projectService.findCreateOrReloadConfiguredProject(Of(re.sourceFile.fileName),ue,I,h,b,R);return Ae&&(ue===d?u(Ae.project,Ae.sentConfigFileDiag):te(Ae.project))}function te(re){let ue=!1;switch(d){case 1:ue=HHr(re,b);break;case 2:ue=re.projectService.reloadConfiguredProjectClearingSemanticCache(re,I,R);break;case 0:break;default:w.assertNever(d)}let Ae=u(re,ue);if(Ae)return Ae}}function hWt(n,c,u,d,I,h){let b=c.disableReferencedProjectLoad?0:d;return X(n,R=>{if(!R)return;let N=Of(R.sourceFile.fileName),V=I.toCanonicalFileName(N),P=h?.get(V);if(P!==void 0&&P>=b)return;let Q=u(R,b);return Q||((h||(h=new Map)).set(V,b),R.references&&hWt(R.references,R.commandLine.options,u,b,I,h))})}function PHr(n,c){return n.potentialProjectReferences&&eT(n.potentialProjectReferences,c)}function Aus(n,c,u,d){return n.getCurrentProgram()?n.forEachResolvedProjectReference(c):n.isInitialLoadPending()?PHr(n,d):X(n.getProjectReferences(),u)}function _Wt(n,c,u){let d=u&&n.projectService.configuredProjects.get(u);return d&&c(d)}function OHr(n,c){return Aus(n,u=>_Wt(n,c,u.sourceFile.path),u=>_Wt(n,c,n.toPath(Dte(u))),u=>_Wt(n,c,u))}function dus(n,c){return`${Ya(c)?`Config: ${c} `:c?`Project: ${c.getProjectName()} `:""}WatchType: ${n}`}function QHr(n){return!n.isScriptOpen()&&n.mTime!==void 0}function M2(n){return n.invalidateResolutionsOfFailedLookupLocations(),n.dirty&&!n.updateGraph()}function MHr(n,c,u){if(!u&&(n.invalidateResolutionsOfFailedLookupLocations(),!n.dirty))return!1;n.triggerFileForConfigFileDiag=c;let d=n.pendingUpdateLevel;if(n.updateGraph(),!n.triggerFileForConfigFileDiag&&!u)return d===2;let I=n.projectService.sendConfigFileDiagEvent(n,c,u);return n.triggerFileForConfigFileDiag=void 0,I}function HHr(n,c){if(c){if(MHr(n,c,!1))return!0}else M2(n);return!1}function YHr(n){return`Creating possible configured project for ${n.fileName} to open`}function n$e(n){return`User requested reload projects: ${n}`}function yWt(n){HZ(n)&&(n.projectOptions=!0)}function bWt(n){let c=1;return()=>n(c++)}function EWt(){return{idToCallbacks:new Map,pathToId:new Map}}function pus(n,c){if(!c||!n.eventHandler||!n.session)return;let u=EWt(),d=EWt(),I=EWt(),h=1;return n.session.addProtocolHandler("watchChange",re=>(V(re.arguments),{responseRequired:!1})),{watchFile:b,watchDirectory:R,getCurrentDirectory:()=>n.host.getCurrentDirectory(),useCaseSensitiveFileNames:n.host.useCaseSensitiveFileNames};function b(re,ue){return N(u,re,ue,Ae=>({eventName:Uqe,data:{id:Ae,path:re}}))}function R(re,ue,Ae){return N(Ae?I:d,re,ue,de=>({eventName:Kqe,data:{id:de,path:re,recursive:!!Ae,ignoreUpdate:re.endsWith("/node_modules")?void 0:!0}}))}function N({pathToId:re,idToCallbacks:ue},Ae,de,Be){let Fe=n.toPath(Ae),Ne=re.get(Fe);Ne||re.set(Fe,Ne=h++);let Me=ue.get(Ne);return Me||(ue.set(Ne,Me=new Set),n.eventHandler(Be(Ne))),Me.add(de),{close(){let De=ue.get(Ne);De?.delete(de)&&(De.size||(ue.delete(Ne),re.delete(Fe),n.eventHandler({eventName:jqe,data:{id:Ne}})))}}}function V(re){Na(re)?re.forEach(P):P(re)}function P({id:re,created:ue,deleted:Ae,updated:de}){Q(re,ue,0),Q(re,Ae,2),Q(re,de,1)}function Q(re,ue,Ae){ue?.length&&(te(u,re,ue,(de,Be)=>de(Be,Ae)),te(d,re,ue,(de,Be)=>de(Be)),te(I,re,ue,(de,Be)=>de(Be)))}function te(re,ue,Ae,de){var Be;(Be=re.idToCallbacks.get(ue))==null||Be.forEach(Fe=>{Ae.forEach(Ne=>de(Fe,df(Ne)))})}}var XHr=class oir{constructor(c){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=bWt(JVt),this.newAutoImportProviderProjectName=bWt(UVt),this.newAuxiliaryProjectName=bWt(KVt),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=pWt,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=oc,this.verifyDocumentRegistry=oc,this.verifyProgram=oc,this.onProjectCreation=oc;var u;this.host=c.host,this.logger=c.logger,this.cancellationToken=c.cancellationToken,this.useSingleInferredProject=c.useSingleInferredProject,this.useInferredProjectPerProjectRoot=c.useInferredProjectPerProjectRoot,this.typingsInstaller=c.typingsInstaller||Vqe,this.throttleWaitMilliseconds=c.throttleWaitMilliseconds,this.eventHandler=c.eventHandler,this.suppressDiagnosticEvents=c.suppressDiagnosticEvents,this.globalPlugins=c.globalPlugins||bm,this.pluginProbeLocations=c.pluginProbeLocations||bm,this.allowLocalPluginLoads=!!c.allowLocalPluginLoads,this.typesMapLocation=c.typesMapLocation===void 0?Do(oa(this.getExecutingFilePath()),"typesMap.json"):c.typesMapLocation,this.session=c.session,this.jsDocParsingMode=c.jsDocParsingMode,c.serverMode!==void 0?this.serverMode=c.serverMode:this.serverMode=0,this.host.realpath&&(this.realpathToScriptInfos=ec()),this.currentDirectory=Of(this.host.getCurrentDirectory()),this.toCanonicalFileName=rA(this.host.useCaseSensitiveFileNames),this.globalCacheLocationDirectoryPath=this.typingsInstaller.globalTypingsCacheLocation?dA(this.toPath(this.typingsInstaller.globalTypingsCacheLocation)):void 0,this.throttledOperations=new zVt(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 nWt(this.typingsInstaller),this.hostConfiguration={formatCodeOptions:wGe(this.host.newLine),preferences:Vv,hostInfo:"Unknown host",extraFileExtensions:[]},this.documentRegistry=Mje(this.host.useCaseSensitiveFileNames,this.currentDirectory,this.jsDocParsingMode,this);let d=this.logger.hasLevel(3)?2:this.logger.loggingEnabled()?1:0,I=d!==0?h=>this.logger.info(h):oc;this.packageJsonCache=TWt(this),this.watchFactory=this.serverMode!==0?{watchFile:yue,watchDirectory:yue}:B6e(pus(this,c.canUseWatchEvents)||this.host,d,I,dus),this.pnpWatcher=this.watchPnpFile(),(u=c.incrementalVerifier)==null||u.call(c,this)}toPath(c){return AA(c,this.currentDirectory,this.toCanonicalFileName)}getExecutingFilePath(){return this.getNormalizedAbsolutePath(this.host.getExecutingFilePath())}getNormalizedAbsolutePath(c){return Qc(c,this.host.getCurrentDirectory())}setDocument(c,u,d){let I=w.checkDefined(this.getScriptInfoForPath(u));I.cacheSourceFile={key:c,sourceFile:d}}getDocument(c,u){let d=this.getScriptInfoForPath(u);return d&&d.cacheSourceFile&&d.cacheSourceFile.key===c?d.cacheSourceFile.sourceFile:void 0}ensureInferredProjectsUpToDate_TestOnly(){this.ensureProjectStructuresUptoDate()}getCompilerOptionsForInferredProjects(){return this.compilerOptionsForInferredProjects}onUpdateLanguageServiceStateForProject(c,u){if(!this.eventHandler)return;let d={eventName:Xqe,data:{project:c,languageServiceEnabled:u}};this.eventHandler(d)}loadTypesMap(){try{let c=this.host.readFile(this.typesMapLocation);if(c===void 0){this.logger.info(`Provided types map file "${this.typesMapLocation}" doesn't exist`);return}let u=JSON.parse(c);for(let d of Object.keys(u.typesMap))u.typesMap[d].match=new RegExp(u.typesMap[d].match,"i");this.safelist=u.typesMap;for(let d in u.simpleMap)Qa(u.simpleMap,d)&&this.legacySafelist.set(d,u.simpleMap[d].toLowerCase())}catch(c){this.logger.info(`Error loading types map: ${c}`),this.safelist=pWt,this.legacySafelist.clear()}}updateTypingsForProject(c){let u=this.findProject(c.projectName);if(u)switch(c.kind){case EGe:u.updateTypingFiles(this.typingsCache.updateTypingsForProject(c.projectName,c.compilerOptions,c.typeAcquisition,c.unresolvedImports,c.typings));return;case BGe:this.typingsCache.enqueueInstallTypingsForProject(u,u.lastCachedUnresolvedImportsList,!0);return}}watchTypingLocations(c){var u;(u=this.findProject(c.projectName))==null||u.watchTypingLocations(c.files)}delayEnsureProjectForOpenFiles(){this.openFiles.size&&(this.pendingEnsureProjectForOpenFiles=!0,this.throttledOperations.schedule(ZHr,2500,()=>{this.pendingProjectUpdates.size!==0?this.delayEnsureProjectForOpenFiles():this.pendingEnsureProjectForOpenFiles&&(this.ensureProjectForOpenFiles(),this.sendProjectsUpdatedInBackgroundEvent())}))}delayUpdateProjectGraph(c){if(uZe(c)||(c.markAsDirty(),F0e(c)))return;let u=c.getProjectName();this.pendingProjectUpdates.set(u,c),this.throttledOperations.schedule(u,250,()=>{this.pendingProjectUpdates.delete(u)&&M2(c)})}hasPendingProjectUpdate(c){return this.pendingProjectUpdates.has(c.getProjectName())}sendProjectsUpdatedInBackgroundEvent(){if(!this.eventHandler)return;let c={eventName:gZe,data:{openFiles:on(this.openFiles.keys(),u=>this.getScriptInfoForPath(u).fileName)}};this.eventHandler(c)}sendLargeFileReferencedEvent(c,u){if(!this.eventHandler)return;let d={eventName:Hqe,data:{file:c,fileSize:u,maxFileSize:Oqe}};this.eventHandler(d)}sendProjectLoadingStartEvent(c,u){if(!this.eventHandler)return;c.sendLoadingProjectFinish=!0;let d={eventName:Qqe,data:{project:c,reason:u}};this.eventHandler(d)}sendProjectLoadingFinishEvent(c){if(!this.eventHandler||!c.sendLoadingProjectFinish)return;c.sendLoadingProjectFinish=!1;let u={eventName:Mqe,data:{project:c}};this.eventHandler(u)}sendPerformanceEvent(c,u){this.performanceEventHandler&&this.performanceEventHandler({kind:c,durationMs:u})}delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(c){this.delayUpdateProjectGraph(c),this.delayEnsureProjectForOpenFiles()}delayUpdateProjectGraphs(c,u){if(c.length){for(let d of c)u&&d.clearSourceMapperCache(),this.delayUpdateProjectGraph(d);this.delayEnsureProjectForOpenFiles()}}setCompilerOptionsForInferredProjects(c,u){w.assert(u===void 0||this.useInferredProjectPerProjectRoot,"Setting compiler options per project root path is only supported when useInferredProjectPerProjectRoot is enabled");let d=AZe(c),I=Z0e(c,u),h=fWt(c);d.allowNonTsExtensions=!0;let b=u&&this.toCanonicalFileName(u);b?(this.compilerOptionsForInferredProjectsPerProjectRoot.set(b,d),this.watchOptionsForInferredProjectsPerProjectRoot.set(b,I||!1),this.typeAcquisitionForInferredProjectsPerProjectRoot.set(b,h)):(this.compilerOptionsForInferredProjects=d,this.watchOptionsForInferredProjects=I,this.typeAcquisitionForInferredProjects=h);for(let R of this.inferredProjects)(b?R.projectRootPath===b:!R.projectRootPath||!this.compilerOptionsForInferredProjectsPerProjectRoot.has(R.projectRootPath))&&(R.setCompilerOptions(d),R.setTypeAcquisition(h),R.setWatchOptions(I?.watchOptions),R.setProjectErrors(I?.errors),R.compileOnSaveEnabled=d.compileOnSave,R.markAsDirty(),this.delayUpdateProjectGraph(R));this.delayEnsureProjectForOpenFiles()}findProject(c){if(c!==void 0)return XVt(c)?VHr(c,this.inferredProjects):this.findExternalProjectByProjectName(c)||this.findConfiguredProjectByProjectName(Of(c))}forEachProject(c){this.externalProjects.forEach(c),this.configuredProjects.forEach(c),this.inferredProjects.forEach(c)}forEachEnabledProject(c){this.forEachProject(u=>{!u.isOrphan()&&u.languageServiceEnabled&&c(u)})}getDefaultProjectForFile(c,u){return u?this.ensureDefaultProjectForFile(c):this.tryGetDefaultProjectForFile(c)}tryGetDefaultProjectForFile(c){let u=Ya(c)?this.getScriptInfoForNormalizedPath(c):c;return u&&!u.isOrphan()?u.getDefaultProject():void 0}tryGetDefaultProjectForEnsuringConfiguredProjectForFile(c){var u;let d=Ya(c)?this.getScriptInfoForNormalizedPath(c):c;if(d)return(u=this.pendingOpenFileProjectUpdates)!=null&&u.delete(d.path)&&(this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(d,1),d.isOrphan()&&this.assignOrphanScriptInfoToInferredProject(d,this.openFiles.get(d.path))),this.tryGetDefaultProjectForFile(d)}ensureDefaultProjectForFile(c){return this.tryGetDefaultProjectForEnsuringConfiguredProjectForFile(c)||this.doEnsureDefaultProjectForFile(c)}doEnsureDefaultProjectForFile(c){this.ensureProjectStructuresUptoDate();let u=Ya(c)?this.getScriptInfoForNormalizedPath(c):c;return u?u.getDefaultProject():(this.logErrorForScriptInfoNotFound(Ya(c)?c:c.fileName),MG.ThrowNoProject())}getScriptInfoEnsuringProjectsUptoDate(c){return this.ensureProjectStructuresUptoDate(),this.getScriptInfo(c)}ensureProjectStructuresUptoDate(){let c=this.pendingEnsureProjectForOpenFiles;this.pendingProjectUpdates.clear();let u=d=>{c=M2(d)||c};this.externalProjects.forEach(u),this.configuredProjects.forEach(u),this.inferredProjects.forEach(u),c&&this.ensureProjectForOpenFiles()}getFormatCodeOptions(c){let u=this.getScriptInfoForNormalizedPath(c);return u&&u.getFormatCodeSettings()||this.hostConfiguration.formatCodeOptions}getPreferences(c){let u=this.getScriptInfoForNormalizedPath(c);return{...this.hostConfiguration.preferences,...u&&u.getPreferences()}}getHostFormatCodeOptions(){return this.hostConfiguration.formatCodeOptions}getHostPreferences(){return this.hostConfiguration.preferences}onSourceFileChanged(c,u){w.assert(!c.isScriptOpen()),u===2?this.handleDeletedFile(c,!0):(c.deferredDelete&&(c.deferredDelete=void 0),c.delayReloadNonMixedContentFile(),this.delayUpdateProjectGraphs(c.containingProjects,!1),this.handleSourceMapProjects(c))}handleSourceMapProjects(c){if(c.sourceMapFilePath)if(Ya(c.sourceMapFilePath)){let u=this.getScriptInfoForPath(c.sourceMapFilePath);this.delayUpdateSourceInfoProjects(u?.sourceInfos)}else this.delayUpdateSourceInfoProjects(c.sourceMapFilePath.sourceInfos);this.delayUpdateSourceInfoProjects(c.sourceInfos),c.declarationInfoPath&&this.delayUpdateProjectsOfScriptInfoPath(c.declarationInfoPath)}delayUpdateSourceInfoProjects(c){c&&c.forEach((u,d)=>this.delayUpdateProjectsOfScriptInfoPath(d))}delayUpdateProjectsOfScriptInfoPath(c){let u=this.getScriptInfoForPath(c);u&&this.delayUpdateProjectGraphs(u.containingProjects,!0)}handleDeletedFile(c,u){w.assert(!c.isScriptOpen()),this.delayUpdateProjectGraphs(c.containingProjects,!1),this.handleSourceMapProjects(c),c.detachAllProjects(),u?(c.delayReloadNonMixedContentFile(),c.deferredDelete=!0):this.deleteScriptInfo(c)}watchWildcardDirectory(c,u,d,I){let h=this.watchFactory.watchDirectory(c,R=>{let N=this.toPath(R),V=I.cachedDirectoryStructureHost.addOrDeleteFileOrDirectory(R,N);if(kA(N)==="package.json"&&!q_e(N)&&(V&&V.fileExists||!V&&this.host.fileExists(R))){let Q=this.getNormalizedAbsolutePath(R);this.logger.info(`Config: ${d} Detected new package.json: ${Q}`),this.packageJsonCache.addOrUpdate(Q,N),this.watchPackageJsonFile(Q,N,b)}let P=this.findConfiguredProjectByProjectName(d);__e({watchedDirPath:this.toPath(c),fileOrDirectory:R,fileOrDirectoryPath:N,configFileName:d,extraFileExtensions:this.hostConfiguration.extraFileExtensions,currentDirectory:this.currentDirectory,options:I.parsedCommandLine.options,program:P?.getCurrentProgram()||I.parsedCommandLine.fileNames,useCaseSensitiveFileNames:this.host.useCaseSensitiveFileNames,writeLog:Q=>this.logger.info(Q),toPath:Q=>this.toPath(Q),getScriptKind:P?Q=>P.getScriptKind(Q):void 0})||(I.updateLevel!==2&&(I.updateLevel=1),I.projects.forEach((Q,te)=>{var re;if(!Q)return;let ue=this.getConfiguredProjectByCanonicalConfigFilePath(te);if(!ue)return;if(P!==ue&&this.getHostPreferences().includeCompletionsForModuleExports){let de=this.toPath(d);be((re=ue.getCurrentProgram())==null?void 0:re.getResolvedProjectReferences(),Be=>Be?.sourceFile.path===de)&&ue.markAutoImportProviderAsDirty()}let Ae=P===ue?1:0;if(!(ue.pendingUpdateLevel>Ae))if(this.openFiles.has(N))if(w.checkDefined(this.getScriptInfoForPath(N)).isAttached(ue)){let Be=Math.max(Ae,ue.openFileWatchTriggered.get(N)||0);ue.openFileWatchTriggered.set(N,Be)}else ue.pendingUpdateLevel=Ae,this.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(ue);else ue.pendingUpdateLevel=Ae,this.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(ue)}))},u,this.getWatchOptionsFromProjectWatchOptions(I.parsedCommandLine.watchOptions,oa(d)),_m.WildcardDirectory,d),b={packageJsonWatches:void 0,close(){var R;h&&(h.close(),h=void 0,(R=b.packageJsonWatches)==null||R.forEach(N=>{N.projects.delete(b),N.close()}),b.packageJsonWatches=void 0)}};return b}delayUpdateProjectsFromParsedConfigOnConfigFileChange(c,u){let d=this.configFileExistenceInfoCache.get(c);if(!d?.config)return!1;let I=!1;return d.config.updateLevel=2,d.config.projects.forEach((h,b)=>{var R;let N=this.getConfiguredProjectByCanonicalConfigFilePath(b);if(N)if(I=!0,b===c){if(N.isInitialLoadPending())return;N.pendingUpdateLevel=2,N.pendingUpdateReason=u,this.delayUpdateProjectGraph(N),N.markAutoImportProviderAsDirty()}else{let V=this.toPath(c);N.resolutionCache.removeResolutionsFromProjectReferenceRedirects(V),this.delayUpdateProjectGraph(N),this.getHostPreferences().includeCompletionsForModuleExports&&be((R=N.getCurrentProgram())==null?void 0:R.getResolvedProjectReferences(),P=>P?.sourceFile.path===V)&&N.markAutoImportProviderAsDirty()}}),I}onConfigFileChanged(c,u,d){let I=this.configFileExistenceInfoCache.get(u),h=this.getConfiguredProjectByCanonicalConfigFilePath(u),b=h?.deferredClose;d===2?(I.exists=!1,h&&(h.deferredClose=!0)):(I.exists=!0,b&&(h.deferredClose=void 0,h.markAsDirty())),this.delayUpdateProjectsFromParsedConfigOnConfigFileChange(u,"Change in config file detected");let R=new Set(h?[h]:void 0);this.openFiles.forEach((N,V)=>{var P,Q;let te=this.configFileForOpenFiles.get(V);if(!((P=I.openFilesImpactedByConfigFile)!=null&&P.has(V)))return;this.configFileForOpenFiles.delete(V);let re=this.getScriptInfoForPath(V),ue=this.getConfigFileNameForFile(re,!1);if(!ue)return;let Ae=this.findConfiguredProjectByProjectName(ue)??this.createConfiguredProject(ue,`Change in config file ${c} detected, ${YHr(re)}`);(Q=this.pendingOpenFileProjectUpdates)!=null&&Q.has(V)||(this.pendingOpenFileProjectUpdates??(this.pendingOpenFileProjectUpdates=new Map)).set(V,te),Zi(R,Ae)&&Ae.isInitialLoadPending()&&this.delayUpdateProjectGraph(Ae)}),this.delayEnsureProjectForOpenFiles()}removeProject(c){switch(this.logger.info("`remove Project::"),c.print(!0,!0,!1),c.close(),w.shouldAssert(1)&&this.filenameToScriptInfo.forEach(u=>w.assert(!u.isAttached(c),"Found script Info still attached to project",()=>`${c.projectName}: ScriptInfos still attached: ${JSON.stringify(on(gn(this.filenameToScriptInfo.values(),d=>d.isAttached(c)?{fileName:d.fileName,projects:d.containingProjects.map(I=>I.projectName),hasMixedContent:d.hasMixedContent}:void 0)),void 0," ")}`)),this.pendingProjectUpdates.delete(c.getProjectName()),c.projectKind){case 2:Qy(this.externalProjects,c),this.projectToSizeMap.delete(c.getProjectName());break;case 1:this.configuredProjects.delete(c.canonicalConfigFilePath),this.projectToSizeMap.delete(c.canonicalConfigFilePath);break;case 0:Qy(this.inferredProjects,c);break}}assignOrphanScriptInfoToInferredProject(c,u){w.assert(c.isOrphan());let d=this.getOrCreateInferredProjectForProjectRootPathIfEnabled(c,u)||this.getOrCreateSingleInferredProjectIfEnabled()||this.getOrCreateSingleInferredWithoutProjectRoot(c.isDynamic?u||this.currentDirectory:oa(bd(c.fileName)?c.fileName:Qc(c.fileName,u?this.getNormalizedAbsolutePath(u):this.currentDirectory)));if(d.addRoot(c),c.containingProjects[0]!==d&&(tA(c.containingProjects,d),c.containingProjects.unshift(d)),d.updateGraph(),!this.useSingleInferredProject&&!d.projectRootPath)for(let I of this.inferredProjects){if(I===d||I.isOrphan())continue;let h=I.getRootScriptInfos();w.assert(h.length===1||!!I.projectRootPath),h.length===1&&X(h[0].containingProjects,b=>b!==h[0].containingProjects[0]&&!b.isOrphan())&&I.removeFile(h[0],!0,!0)}return d}assignOrphanScriptInfosToInferredProject(){this.openFiles.forEach((c,u)=>{let d=this.getScriptInfoForPath(u);d.isOrphan()&&this.assignOrphanScriptInfoToInferredProject(d,c)})}closeOpenFile(c,u){var d;let I=c.isDynamic?!1:this.host.fileExists(c.fileName);c.close(I),this.stopWatchingConfigFilesForScriptInfo(c);let h=this.toCanonicalFileName(c.fileName);this.openFilesWithNonRootedDiskPath.get(h)===c&&this.openFilesWithNonRootedDiskPath.delete(h);let b=!1;for(let R of c.containingProjects){if(HZ(R)){c.hasMixedContent&&c.registerFileUpdate();let N=R.openFileWatchTriggered.get(c.path);N!==void 0&&(R.openFileWatchTriggered.delete(c.path),R.pendingUpdateLevelthis.onConfigFileChanged(c,u,V),2e3,this.getWatchOptionsFromProjectWatchOptions((h=(I=b?.config)==null?void 0:I.parsedCommandLine)==null?void 0:h.watchOptions,oa(c)),_m.ConfigFile,d));let R=b.config.projects;R.set(d.canonicalConfigFilePath,R.get(d.canonicalConfigFilePath)||!1)}releaseParsedConfig(c,u){var d,I,h;let b=this.configFileExistenceInfoCache.get(c);(d=b.config)!=null&&d.projects.delete(u.canonicalConfigFilePath)&&((I=b.config)!=null&&I.projects.size||(b.config=void 0,b6e(c,this.sharedExtendedConfigFileWatchers),w.checkDefined(b.watcher),(h=b.openFilesImpactedByConfigFile)!=null&&h.size?b.inferredProjectRoots?cGe(dd(oa(c)))||(b.watcher.close(),b.watcher=CWt):(b.watcher.close(),b.watcher=void 0):(b.watcher.close(),this.configFileExistenceInfoCache.delete(c))))}stopWatchingConfigFilesForScriptInfo(c){if(this.serverMode!==0)return;let u=this.rootOfInferredProjects.delete(c),d=c.isScriptOpen();d&&!u||this.forEachConfigFileLocation(c,I=>{var h,b,R;let N=this.configFileExistenceInfoCache.get(I);if(N){if(d){if(!((h=N?.openFilesImpactedByConfigFile)!=null&&h.has(c.path)))return}else if(!((b=N.openFilesImpactedByConfigFile)!=null&&b.delete(c.path)))return;u&&(N.inferredProjectRoots--,N.watcher&&!N.config&&!N.inferredProjectRoots&&(N.watcher.close(),N.watcher=void 0)),!((R=N.openFilesImpactedByConfigFile)!=null&&R.size)&&!N.config&&(w.assert(!N.watcher),this.configFileExistenceInfoCache.delete(I))}})}startWatchingConfigFilesForInferredProjectRoot(c){this.serverMode===0&&(w.assert(c.isScriptOpen()),this.rootOfInferredProjects.add(c),this.forEachConfigFileLocation(c,(u,d)=>{let I=this.configFileExistenceInfoCache.get(u);I?I.inferredProjectRoots=(I.inferredProjectRoots??0)+1:(I={exists:this.host.fileExists(d),inferredProjectRoots:1},this.configFileExistenceInfoCache.set(u,I)),(I.openFilesImpactedByConfigFile??(I.openFilesImpactedByConfigFile=new Set)).add(c.path),I.watcher||(I.watcher=cGe(dd(oa(u)))?this.watchFactory.watchFile(d,(h,b)=>this.onConfigFileChanged(d,u,b),2e3,this.hostConfiguration.watchOptions,_m.ConfigFileForInferredRoot):CWt)}))}forEachConfigFileLocation(c,u){if(this.serverMode!==0)return;w.assert(!uus(c)||this.openFiles.has(c.path));let d=this.openFiles.get(c.path);if(w.checkDefined(this.getScriptInfo(c.path)).isDynamic)return;let h=oa(c.fileName),b=()=>vg(d,h,this.currentDirectory,!this.host.useCaseSensitiveFileNames),R=!d||!b(),N=!t$e(c);do{if(N){let P=R0e(h,this.currentDirectory,this.toCanonicalFileName),Q=Do(h,"tsconfig.json"),te=u(Do(P,"tsconfig.json"),Q);if(te)return Q;let re=Do(h,"jsconfig.json");if(te=u(Do(P,"jsconfig.json"),re),te)return re;if(NS(P))break}let V=oa(h);if(V===h)break;h=V,N=!0}while(R||b())}findDefaultConfiguredProject(c){var u;return c.isScriptOpen()?(u=this.tryFindDefaultConfiguredProjectForOpenScriptInfo(c,0))==null?void 0:u.defaultProject:void 0}getConfigFileNameForFileFromCache(c,u){if(u){let d=WHr(c,this.pendingOpenFileProjectUpdates);if(d!==void 0)return d}return WHr(c,this.configFileForOpenFiles)}setConfigFileNameForFileInCache(c,u){this.openFiles.has(c.path)&&(t$e(c)||this.configFileForOpenFiles.set(c.path,u||!1))}getConfigFileNameForFile(c,u){let d=this.getConfigFileNameForFileFromCache(c,u);if(d!==void 0)return d||void 0;if(u)return;let I=this.forEachConfigFileLocation(c,(h,b)=>this.configFileExists(b,h,c));return this.logger.info(`getConfigFileNameForFile:: File: ${c.fileName} ProjectRootPath: ${this.openFiles.get(c.path)}:: Result: ${I}`),this.setConfigFileNameForFileInCache(c,I),I}printProjects(){this.logger.hasLevel(1)&&(this.logger.startGroup(),this.externalProjects.forEach(SWt),this.configuredProjects.forEach(SWt),this.inferredProjects.forEach(SWt),this.logger.info("Open files: "),this.openFiles.forEach((c,u)=>{let d=this.getScriptInfoForPath(u);this.logger.info(` FileName: ${d.fileName} ProjectRootPath: ${c}`),this.logger.info(` Projects: ${d.containingProjects.map(I=>I.getProjectName())}`)}),this.logger.endGroup())}findConfiguredProjectByProjectName(c,u){let d=this.toCanonicalFileName(c),I=this.getConfiguredProjectByCanonicalConfigFilePath(d);return u?I:I?.deferredClose?void 0:I}getConfiguredProjectByCanonicalConfigFilePath(c){return this.configuredProjects.get(c)}findExternalProjectByProjectName(c){return VHr(c,this.externalProjects)}getFilenameForExceededTotalSizeLimitForNonTsFiles(c,u,d,I){if(u&&u.disableSizeLimit||!this.host.getFileSize)return;let h=Pqe;this.projectToSizeMap.set(c,0),this.projectToSizeMap.forEach(R=>h-=R||0);let b=0;for(let R of d){let N=I.getFileName(R);if(!z5(N)&&(b+=this.host.getFileSize(N),b>Pqe||b>h)){let V=d.map(P=>I.getFileName(P)).filter(P=>!z5(P)).map(P=>({name:P,size:this.host.getFileSize(P)})).sort((P,Q)=>Q.size-P.size).slice(0,5);return this.logger.info(`Non TS file size exceeded limit (${b}). Largest files: ${V.map(P=>`${P.name}:${P.size}`).join(", ")}`),N}}this.projectToSizeMap.set(c,b)}createExternalProject(c,u,d,I,h){let b=AZe(d),R=Z0e(d,oa(df(c))),N=new Wqe(c,this,this.documentRegistry,b,this.getFilenameForExceededTotalSizeLimitForNonTsFiles(c,b,u,e$e),d.compileOnSave===void 0?!0:d.compileOnSave,void 0,R?.watchOptions);return N.setProjectErrors(R?.errors),N.excludedFiles=h,this.addFilesToNonInferredProject(N,u,e$e,I),this.externalProjects.push(N),N}sendProjectTelemetry(c){if(this.seenProjects.has(c.projectName)){yWt(c);return}if(this.seenProjects.set(c.projectName,!0),!this.eventHandler||!this.host.createSHA256Hash){yWt(c);return}let u=HZ(c)?c.projectOptions:void 0;yWt(c);let d={projectId:this.host.createSHA256Hash(c.projectName),fileStats:k0e(c.getScriptInfos(),!0),compilerOptions:nDt(c.getCompilationSettings()),typeAcquisition:h(c.getTypeAcquisition()),extends:u&&u.configHasExtendsProperty,files:u&&u.configHasFilesProperty,include:u&&u.configHasIncludeProperty,exclude:u&&u.configHasExcludeProperty,compileOnSave:c.compileOnSaveEnabled,configFileName:I(),projectType:c instanceof Wqe?"external":"configured",languageServiceEnabled:c.languageServiceEnabled,version:y};this.eventHandler({eventName:Jqe,data:d});function I(){return HZ(c)&&Lqe(c.getConfigFilePath())||"other"}function h({enable:b,include:R,exclude:N}){return{enable:b,include:R!==void 0&&R.length!==0,exclude:N!==void 0&&N.length!==0}}}addFilesToNonInferredProject(c,u,d,I){this.updateNonInferredProjectFiles(c,u,d),c.setTypeAcquisition(I),c.markAsDirty()}createConfiguredProject(c,u){var d;(d=Qi)==null||d.instant(Qi.Phase.Session,"createConfiguredProject",{configFilePath:c}),this.logger.info(`Creating configuration project ${c}`);let I=this.toCanonicalFileName(c),h=this.configFileExistenceInfoCache.get(I);h?h.exists=!0:this.configFileExistenceInfoCache.set(I,h={exists:!0}),h.config||(h.config={cachedDirectoryStructureHost:jke(this.host,this.host.getCurrentDirectory(),this.host.useCaseSensitiveFileNames),projects:new Map,updateLevel:2});let b=new AWt(c,I,this,this.documentRegistry,h.config.cachedDirectoryStructureHost,u);return w.assert(!this.configuredProjects.has(I)),this.configuredProjects.set(I,b),this.createConfigFileWatcherForParsedConfig(c,I,b),b}loadConfiguredProject(c,u){var d,I;(d=Qi)==null||d.push(Qi.Phase.Session,"loadConfiguredProject",{configFilePath:c.canonicalConfigFilePath}),this.sendProjectLoadingStartEvent(c,u);let h=Mc(c.getConfigFilePath()),b=this.ensureParsedConfigUptoDate(h,c.canonicalConfigFilePath,this.configFileExistenceInfoCache.get(c.canonicalConfigFilePath),c),R=b.config.parsedCommandLine;w.assert(!!R.fileNames);let N=R.options;c.projectOptions||(c.projectOptions={configHasExtendsProperty:R.raw.extends!==void 0,configHasFilesProperty:R.raw.files!==void 0,configHasIncludeProperty:R.raw.include!==void 0,configHasExcludeProperty:R.raw.exclude!==void 0}),c.canConfigFileJsonReportNoInputFiles=qle(R.raw),c.setProjectErrors(R.options.configFile.parseDiagnostics),c.updateReferences(R.projectReferences);let V=this.getFilenameForExceededTotalSizeLimitForNonTsFiles(c.canonicalConfigFilePath,N,R.fileNames,$qe);V?(c.disableLanguageService(V),this.configFileExistenceInfoCache.forEach((Q,te)=>this.stopWatchingWildCards(te,c))):(c.setCompilerOptions(N),c.setWatchOptions(R.watchOptions),c.enableLanguageService(),this.watchWildcards(h,b,c)),c.enablePluginsWithOptions(N);let P=R.fileNames.concat(c.getExternalFiles(2));this.updateRootAndOptionsOfNonInferredProject(c,P,$qe,N,R.typeAcquisition,R.compileOnSave,R.watchOptions),(I=Qi)==null||I.pop()}ensureParsedConfigUptoDate(c,u,d,I){var h,b,R;if(d.config){if(!d.config.updateLevel)return d;if(d.config.updateLevel===1)return this.reloadFileNamesOfParsedConfig(c,d.config),d}let N=((h=d.config)==null?void 0:h.cachedDirectoryStructureHost)||jke(this.host,this.host.getCurrentDirectory(),this.host.useCaseSensitiveFileNames),V=zle(c,Ae=>this.host.readFile(Ae)),P=zhe(c,Ya(V)?V:""),Q=P.parseDiagnostics;Ya(V)||Q.push(V);let te=oa(c),re=n_e(P,N,te,void 0,c,void 0,this.hostConfiguration.extraFileExtensions,this.extendedConfigCache);re.errors.length&&Q.push(...re.errors),this.logger.info(`Config: ${c} : ${JSON.stringify({rootNames:re.fileNames,options:re.options,watchOptions:re.watchOptions,projectReferences:re.projectReferences},void 0," ")}`);let ue=(b=d.config)==null?void 0:b.parsedCommandLine;return d.config?(d.config.parsedCommandLine=re,d.config.watchedDirectoriesStale=!0,d.config.updateLevel=void 0):d.config={parsedCommandLine:re,cachedDirectoryStructureHost:N,projects:new Map},!ue&&!mle(this.getWatchOptionsFromProjectWatchOptions(void 0,te),this.getWatchOptionsFromProjectWatchOptions(re.watchOptions,te))&&((R=d.watcher)==null||R.close(),d.watcher=void 0),this.createConfigFileWatcherForParsedConfig(c,u,I),zke(u,re.options,this.sharedExtendedConfigFileWatchers,(Ae,de)=>this.watchFactory.watchFile(Ae,()=>{var Be;qke(this.extendedConfigCache,de,Ne=>this.toPath(Ne));let Fe=!1;(Be=this.sharedExtendedConfigFileWatchers.get(de))==null||Be.projects.forEach(Ne=>{Fe=this.delayUpdateProjectsFromParsedConfigOnConfigFileChange(Ne,`Change in extended config file ${Ae} detected`)||Fe}),Fe&&this.delayEnsureProjectForOpenFiles()},2e3,this.hostConfiguration.watchOptions,_m.ExtendedConfigFile,c),Ae=>this.toPath(Ae)),d}watchWildcards(c,{exists:u,config:d},I){if(d.projects.set(I.canonicalConfigFilePath,!0),u){if(d.watchedDirectories&&!d.watchedDirectoriesStale)return;d.watchedDirectoriesStale=!1,h_e(d.watchedDirectories||(d.watchedDirectories=new Map),d.parsedCommandLine.wildcardDirectories,(h,b)=>this.watchWildcardDirectory(h,b,c,d))}else{if(d.watchedDirectoriesStale=!1,!d.watchedDirectories)return;Y0(d.watchedDirectories,VB),d.watchedDirectories=void 0}}stopWatchingWildCards(c,u){let d=this.configFileExistenceInfoCache.get(c);!d.config||!d.config.projects.get(u.canonicalConfigFilePath)||(d.config.projects.set(u.canonicalConfigFilePath,!1),!UC(d.config.projects,vl)&&(d.config.watchedDirectories&&(Y0(d.config.watchedDirectories,VB),d.config.watchedDirectories=void 0),d.config.watchedDirectoriesStale=void 0))}updateNonInferredProjectFiles(c,u,d){var I;let h=c.getRootFilesMap(),b=new Map;for(let R of u){let N=d.getFileName(R),V=Of(N),P=D0e(V),Q;if(!P&&!c.fileExists(N)){Q=R0e(V,this.currentDirectory,this.toCanonicalFileName);let te=h.get(Q);te?(((I=te.info)==null?void 0:I.path)===Q&&(c.removeFile(te.info,!1,!0),te.info=void 0),te.fileName=V):h.set(Q,{fileName:V})}else{let te=d.getScriptKind(R,this.hostConfiguration.extraFileExtensions),re=d.hasMixedContent(R,this.hostConfiguration.extraFileExtensions),ue=w.checkDefined(this.getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(V,c.currentDirectory,te,re,c.directoryStructureHost,!1));Q=ue.path;let Ae=h.get(Q);!Ae||Ae.info!==ue?(c.addRoot(ue,V),ue.isScriptOpen()&&this.removeRootOfInferredProjectIfNowPartOfOtherProject(ue)):Ae.fileName=V}b.set(Q,!0)}h.size>b.size&&h.forEach((R,N)=>{b.has(N)||(R.info?c.removeFile(R.info,c.fileExists(R.info.fileName),!0):h.delete(N))})}updateRootAndOptionsOfNonInferredProject(c,u,d,I,h,b,R){c.setCompilerOptions(I),c.setWatchOptions(R),b!==void 0&&(c.compileOnSaveEnabled=b),this.addFilesToNonInferredProject(c,u,d,h)}reloadFileNamesOfConfiguredProject(c){let u=this.reloadFileNamesOfParsedConfig(c.getConfigFilePath(),this.configFileExistenceInfoCache.get(c.canonicalConfigFilePath).config);return c.updateErrorOnNoInputFiles(u),this.updateNonInferredProjectFiles(c,u.concat(c.getExternalFiles(1)),$qe),c.markAsDirty(),c.updateGraph()}reloadFileNamesOfParsedConfig(c,u){if(u.updateLevel===void 0)return u.parsedCommandLine.fileNames;w.assert(u.updateLevel===1);let d=u.parsedCommandLine.options.configFile.configFileSpecs,I=$le(d,oa(c),u.parsedCommandLine.options,u.cachedDirectoryStructureHost,this.hostConfiguration.extraFileExtensions);return u.parsedCommandLine={...u.parsedCommandLine,fileNames:I},I}setFileNamesOfAutpImportProviderOrAuxillaryProject(c,u){this.updateNonInferredProjectFiles(c,u,$qe)}reloadConfiguredProjectClearingSemanticCache(c,u,d){return Zi(d,c)?(this.clearSemanticCache(c),this.reloadConfiguredProject(c,n$e(u)),!0):!1}reloadConfiguredProject(c,u){c.isInitialLoadPending=NC,c.pendingUpdateReason=void 0,c.pendingUpdateLevel=0,c.getCachedDirectoryStructureHost().clearCache(),this.loadConfiguredProject(c,u),MHr(c,c.triggerFileForConfigFileDiag??c.getConfigFilePath(),!0)}clearSemanticCache(c){c.originalConfiguredProjects=void 0,c.resolutionCache.clear(),c.getLanguageService(!1).cleanupSemanticCache(),c.cleanupProgram(),c.markAsDirty()}sendConfigFileDiagEvent(c,u,d){if(!this.eventHandler||this.suppressDiagnosticEvents)return!1;let I=c.getLanguageService().getCompilerOptionsDiagnostics();return I.push(...c.getAllProjectErrors()),!d&&I.length===(c.configDiagDiagnosticsReported??0)?!1:(c.configDiagDiagnosticsReported=I.length,this.eventHandler({eventName:Yqe,data:{configFileName:c.getConfigFilePath(),diagnostics:I,triggerFile:u??c.getConfigFilePath()}}),!0)}getOrCreateInferredProjectForProjectRootPathIfEnabled(c,u){if(!this.useInferredProjectPerProjectRoot||c.isDynamic&&u===void 0)return;if(u){let I=this.toCanonicalFileName(u);for(let h of this.inferredProjects)if(h.projectRootPath===I)return h;return this.createInferredProject(u,!1,u)}let d;for(let I of this.inferredProjects)I.projectRootPath&&vg(I.projectRootPath,c.path,this.host.getCurrentDirectory(),!this.host.useCaseSensitiveFileNames)&&(d&&d.projectRootPath.length>I.projectRootPath.length||(d=I));return d}getOrCreateSingleInferredProjectIfEnabled(){if(this.useSingleInferredProject)return this.inferredProjects.length>0&&this.inferredProjects[0].projectRootPath===void 0?this.inferredProjects[0]:this.createInferredProject("",!0)}getOrCreateSingleInferredWithoutProjectRoot(c){w.assert(!this.useSingleInferredProject);let u=this.toCanonicalFileName(this.getNormalizedAbsolutePath(c));for(let d of this.inferredProjects)if(!d.projectRootPath&&d.isOrphan()&&d.canonicalCurrentDirectory===u)return d;return this.createInferredProject(c)}createInferredProject(c,u,d){let I=d&&this.compilerOptionsForInferredProjectsPerProjectRoot.get(d)||this.compilerOptionsForInferredProjects,h,b;d&&(h=this.watchOptionsForInferredProjectsPerProjectRoot.get(d),b=this.typeAcquisitionForInferredProjectsPerProjectRoot.get(d)),h===void 0&&(h=this.watchOptionsForInferredProjects),b===void 0&&(b=this.typeAcquisitionForInferredProjects),h=h||void 0;let R=new cWt(this,this.documentRegistry,I,h?.watchOptions,d,c,b);return R.setProjectErrors(h?.errors),u?this.inferredProjects.unshift(R):this.inferredProjects.push(R),R}getOrCreateScriptInfoNotOpenedByClient(c,u,d,I){return this.getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(Of(c),u,void 0,void 0,d,I)}getScriptInfo(c){return this.getScriptInfoForNormalizedPath(Of(c))}getScriptInfoOrConfig(c){let u=Of(c),d=this.getScriptInfoForNormalizedPath(u);if(d)return d;let I=this.configuredProjects.get(this.toPath(c));return I&&I.getCompilerOptions().configFile}logErrorForScriptInfoNotFound(c){let u=on(gn(this.filenameToScriptInfo.entries(),d=>d[1].deferredDelete?void 0:d),([d,I])=>({path:d,fileName:I.fileName}));this.logger.msg(`Could not find file ${JSON.stringify(c)}. +All files are: ${JSON.stringify(u)}`,"Err")}getSymlinkedProjects(c){let u;if(this.realpathToScriptInfos){let I=c.getRealpathIfDifferent();I&&X(this.realpathToScriptInfos.get(I),d),X(this.realpathToScriptInfos.get(c.path),d)}return u;function d(I){if(I!==c)for(let h of I.containingProjects)h.languageServiceEnabled&&!h.isOrphan()&&!h.getCompilerOptions().preserveSymlinks&&!c.isAttached(h)&&(u?UC(u,(b,R)=>R===I.path?!1:Ue(b,h))||u.add(I.path,h):(u=ec(),u.add(I.path,h)))}}watchClosedScriptInfo(c){if(w.assert(!c.fileWatcher),!c.isDynamicOrHasMixedContent()&&(!this.globalCacheLocationDirectoryPath||!uc(c.path,this.globalCacheLocationDirectoryPath))){let u=c.fileName.indexOf("/node_modules/");!this.host.getModifiedTime||u===-1?c.fileWatcher=this.watchFactory.watchFile(c.fileName,(d,I)=>this.onSourceFileChanged(c,I),500,this.hostConfiguration.watchOptions,_m.ClosedScriptInfo):(c.mTime=this.getModifiedTime(c),c.fileWatcher=this.watchClosedScriptInfoInNodeModules(c.fileName.substring(0,u)))}}createNodeModulesWatcher(c,u){let d=this.watchFactory.watchDirectory(c,h=>{var b;let R=aGe(this.toPath(h));if(!R)return;let N=kA(R);if((b=I.affectedModuleSpecifierCacheProjects)!=null&&b.size&&(N==="package.json"||N==="node_modules")&&I.affectedModuleSpecifierCacheProjects.forEach(V=>{var P;(P=V.getModuleSpecifierCache())==null||P.clear()}),I.refreshScriptInfoRefCount)if(u===R)this.refreshScriptInfosInDirectory(u);else{let V=this.filenameToScriptInfo.get(R);V?QHr(V)&&this.refreshScriptInfo(V):S1(R)||this.refreshScriptInfosInDirectory(R)}},1,this.hostConfiguration.watchOptions,_m.NodeModules),I={refreshScriptInfoRefCount:0,affectedModuleSpecifierCacheProjects:void 0,close:()=>{var h;d&&!I.refreshScriptInfoRefCount&&!((h=I.affectedModuleSpecifierCacheProjects)!=null&&h.size)&&(d.close(),d=void 0,this.nodeModulesWatchers.delete(u))}};return this.nodeModulesWatchers.set(u,I),I}watchPackageJsonsInNodeModules(c,u){var d;let I=this.toPath(c),h=this.nodeModulesWatchers.get(I)||this.createNodeModulesWatcher(c,I);return w.assert(!((d=h.affectedModuleSpecifierCacheProjects)!=null&&d.has(u))),(h.affectedModuleSpecifierCacheProjects||(h.affectedModuleSpecifierCacheProjects=new Set)).add(u),{close:()=>{var b;(b=h.affectedModuleSpecifierCacheProjects)==null||b.delete(u),h.close()}}}watchClosedScriptInfoInNodeModules(c){let u=c+"/node_modules",d=this.toPath(u),I=this.nodeModulesWatchers.get(d)||this.createNodeModulesWatcher(u,d);return I.refreshScriptInfoRefCount++,{close:()=>{I.refreshScriptInfoRefCount--,I.close()}}}getModifiedTime(c){return(this.host.getModifiedTime(c.fileName)||BA).getTime()}refreshScriptInfo(c){let u=this.getModifiedTime(c);if(u!==c.mTime){let d=Ev(c.mTime,u);c.mTime=u,this.onSourceFileChanged(c,d)}}refreshScriptInfosInDirectory(c){c=c+$u,this.filenameToScriptInfo.forEach(u=>{QHr(u)&&uc(u.path,c)&&this.refreshScriptInfo(u)})}stopWatchingScriptInfo(c){c.fileWatcher&&(c.fileWatcher.close(),c.fileWatcher=void 0)}getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(c,u,d,I,h,b){if(bd(c)||D0e(c))return this.getOrCreateScriptInfoWorker(c,u,!1,void 0,d,!!I,h,b);let R=this.openFilesWithNonRootedDiskPath.get(this.toCanonicalFileName(c));if(R)return R}getOrCreateScriptInfoForNormalizedPath(c,u,d,I,h,b){return this.getOrCreateScriptInfoWorker(c,this.currentDirectory,u,d,I,!!h,b,!1)}getOrCreateScriptInfoWorker(c,u,d,I,h,b,R,N){w.assert(I===void 0||d,"ScriptInfo needs to be opened by client to be able to set its user defined content");let V=R0e(c,u,this.toCanonicalFileName),P=this.filenameToScriptInfo.get(V);if(P){if(P.deferredDelete){if(w.assert(!P.isDynamic),!d&&!(R||this.host).fileExists(c))return N?P:void 0;P.deferredDelete=void 0}}else{let Q=D0e(c);if(w.assert(bd(c)||Q||d,"",()=>`${JSON.stringify({fileName:c,currentDirectory:u,hostCurrentDirectory:this.currentDirectory,openKeys:on(this.openFilesWithNonRootedDiskPath.keys())})} +Script info with non-dynamic relative file name can only be open script info or in context of host currentDirectory`),w.assert(!bd(c)||this.currentDirectory===u||!this.openFilesWithNonRootedDiskPath.has(this.toCanonicalFileName(c)),"",()=>`${JSON.stringify({fileName:c,currentDirectory:u,hostCurrentDirectory:this.currentDirectory,openKeys:on(this.openFilesWithNonRootedDiskPath.keys())})} +Open script files with non rooted disk path opened with current directory context cannot have same canonical names`),w.assert(!Q||this.currentDirectory===u||this.useInferredProjectPerProjectRoot,"",()=>`${JSON.stringify({fileName:c,currentDirectory:u,hostCurrentDirectory:this.currentDirectory,openKeys:on(this.openFilesWithNonRootedDiskPath.keys())})} +Dynamic files must always be opened with service's current directory or service should support inferred project per projectRootPath.`),!d&&!Q&&!(R||this.host).fileExists(c))return;P=new rWt(this.host,c,h,b,V,this.filenameToScriptInfoVersion.get(V)),this.filenameToScriptInfo.set(P.path,P),this.filenameToScriptInfoVersion.delete(P.path),d?!bd(c)&&(!Q||this.currentDirectory!==u)&&this.openFilesWithNonRootedDiskPath.set(this.toCanonicalFileName(c),P):this.watchClosedScriptInfo(P)}return d&&(this.stopWatchingScriptInfo(P),P.open(I),b&&P.registerFileUpdate()),P}getScriptInfoForNormalizedPath(c){return!bd(c)&&this.openFilesWithNonRootedDiskPath.get(this.toCanonicalFileName(c))||this.getScriptInfoForPath(R0e(c,this.currentDirectory,this.toCanonicalFileName))}getScriptInfoForPath(c){let u=this.filenameToScriptInfo.get(c);return!u||!u.deferredDelete?u:void 0}getDocumentPositionMapper(c,u,d){let I=this.getOrCreateScriptInfoNotOpenedByClient(u,c.currentDirectory,this.host,!1);if(!I){d&&c.addGeneratedFileWatch(u,d);return}if(I.getSnapshot(),Ya(I.sourceMapFilePath)){let V=this.getScriptInfoForPath(I.sourceMapFilePath);if(V&&(V.getSnapshot(),V.documentPositionMapper!==void 0))return V.sourceInfos=this.addSourceInfoToSourceMap(d,c,V.sourceInfos),V.documentPositionMapper?V.documentPositionMapper:void 0;I.sourceMapFilePath=void 0}else if(I.sourceMapFilePath){I.sourceMapFilePath.sourceInfos=this.addSourceInfoToSourceMap(d,c,I.sourceMapFilePath.sourceInfos);return}else if(I.sourceMapFilePath!==void 0)return;let h,b=(V,P)=>{let Q=this.getOrCreateScriptInfoNotOpenedByClient(V,c.currentDirectory,this.host,!0);if(h=Q||P,!Q||Q.deferredDelete)return;let te=Q.getSnapshot();return Q.documentPositionMapper!==void 0?Q.documentPositionMapper:t7(te)},R=c.projectName,N=Uje({getCanonicalFileName:this.toCanonicalFileName,log:V=>this.logger.info(V),getSourceFileLike:V=>this.getSourceFileLike(V,R,I)},I.fileName,I.textStorage.getLineInfo(),b);return b=void 0,h?Ya(h)?I.sourceMapFilePath={watcher:this.addMissingSourceMapFile(c.currentDirectory===this.currentDirectory?h:Qc(h,c.currentDirectory),I.path),sourceInfos:this.addSourceInfoToSourceMap(d,c)}:(I.sourceMapFilePath=h.path,h.declarationInfoPath=I.path,h.deferredDelete||(h.documentPositionMapper=N||!1),h.sourceInfos=this.addSourceInfoToSourceMap(d,c,h.sourceInfos)):I.sourceMapFilePath=!1,N}addSourceInfoToSourceMap(c,u,d){if(c){let I=this.getOrCreateScriptInfoNotOpenedByClient(c,u.currentDirectory,u.directoryStructureHost,!1);(d||(d=new Set)).add(I.path)}return d}addMissingSourceMapFile(c,u){return this.watchFactory.watchFile(c,()=>{let I=this.getScriptInfoForPath(u);I&&I.sourceMapFilePath&&!Ya(I.sourceMapFilePath)&&(this.delayUpdateProjectGraphs(I.containingProjects,!0),this.delayUpdateSourceInfoProjects(I.sourceMapFilePath.sourceInfos),I.closeSourceMapFileWatcher())},2e3,this.hostConfiguration.watchOptions,_m.MissingSourceMapFile)}getSourceFileLike(c,u,d){let I=u.projectName?u:this.findProject(u);if(I){let b=I.toPath(c),R=I.getSourceFile(b);if(R&&R.resolvedPath===b)return R}let h=this.getOrCreateScriptInfoNotOpenedByClient(c,(I||this).currentDirectory,I?I.directoryStructureHost:this.host,!1);if(h){if(d&&Ya(d.sourceMapFilePath)&&h!==d){let b=this.getScriptInfoForPath(d.sourceMapFilePath);b&&(b.sourceInfos??(b.sourceInfos=new Set)).add(h.path)}return h.cacheSourceFile?h.cacheSourceFile.sourceFile:(h.sourceFileLike||(h.sourceFileLike={get text(){return w.fail("shouldnt need text"),""},getLineAndCharacterOfPosition:b=>{let R=h.positionToLineOffset(b);return{line:R.line-1,character:R.offset-1}},getPositionOfLineAndCharacter:(b,R,N)=>h.lineOffsetToPosition(b+1,R+1,N)}),h.sourceFileLike)}}setPerformanceEventHandler(c){this.performanceEventHandler=c}setHostConfiguration(c){var u,d;if(c.file){let I=this.getScriptInfoForNormalizedPath(Of(c.file));I&&(I.setOptions(tre(c.formatOptions),c.preferences),this.logger.info(`Host configuration update for file ${c.file}`))}else{if(c.hostInfo!==void 0&&(this.hostConfiguration.hostInfo=c.hostInfo,this.logger.info(`Host information ${c.hostInfo}`)),c.formatOptions&&(this.hostConfiguration.formatCodeOptions={...this.hostConfiguration.formatCodeOptions,...tre(c.formatOptions)},this.logger.info("Format host information updated")),c.preferences){let{lazyConfiguredProjectsFromExternalProject:I,includePackageJsonAutoImports:h,includeCompletionsForModuleExports:b}=this.hostConfiguration.preferences;this.hostConfiguration.preferences={...this.hostConfiguration.preferences,...c.preferences},I&&!this.hostConfiguration.preferences.lazyConfiguredProjectsFromExternalProject&&this.externalProjectToConfiguredProjectMap.forEach(R=>R.forEach(N=>{!N.deferredClose&&!N.isClosed()&&N.pendingUpdateLevel===2&&!this.hasPendingProjectUpdate(N)&&N.updateGraph()})),(h!==c.preferences.includePackageJsonAutoImports||!!b!=!!c.preferences.includeCompletionsForModuleExports)&&this.forEachProject(R=>{R.onAutoImportProviderSettingsChanged()})}if(c.extraFileExtensions&&(this.hostConfiguration.extraFileExtensions=c.extraFileExtensions,this.reloadProjects(),this.logger.info("Host file extension mappings updated")),c.watchOptions){let I=(u=Z0e(c.watchOptions))==null?void 0:u.watchOptions,h=hke(I,this.currentDirectory);this.hostConfiguration.watchOptions=h,this.hostConfiguration.beforeSubstitution=h===I?void 0:I,this.logger.info(`Host watch options changed to ${JSON.stringify(this.hostConfiguration.watchOptions)}, it will be take effect for next watches.`),(d=this.pnpWatcher)==null||d.close(),this.watchPnpFile()}}}getWatchOptions(c){return this.getWatchOptionsFromProjectWatchOptions(c.getWatchOptions(),c.getCurrentDirectory())}getWatchOptionsFromProjectWatchOptions(c,u){let d=this.hostConfiguration.beforeSubstitution?hke(this.hostConfiguration.beforeSubstitution,u):this.hostConfiguration.watchOptions;return c&&d?{...d,...c}:c||d}closeLog(){this.logger.close()}reloadProjects(){this.logger.info("reload projects."),this.filenameToScriptInfo.forEach(d=>{this.openFiles.has(d.path)||d.fileWatcher&&this.onSourceFileChanged(d,this.host.fileExists(d.fileName)?d.deferredDelete?0:1:2)}),this.pendingProjectUpdates.forEach((d,I)=>{this.throttledOperations.cancel(I),this.pendingProjectUpdates.delete(I)}),this.throttledOperations.cancel(ZHr),this.pendingOpenFileProjectUpdates=void 0,this.pendingEnsureProjectForOpenFiles=!1,this.configFileExistenceInfoCache.forEach(d=>{d.config&&(d.config.updateLevel=2)}),this.configFileForOpenFiles.clear(),this.externalProjects.forEach(d=>{this.clearSemanticCache(d),d.updateGraph()});let c=new Set,u=new Set;this.externalProjectToConfiguredProjectMap.forEach((d,I)=>{let h=`Reloading configured project in external project: ${I}`;d.forEach(b=>{this.getHostPreferences().lazyConfiguredProjectsFromExternalProject?(b.isInitialLoadPending()||(this.clearSemanticCache(b),b.pendingUpdateLevel=2,b.pendingUpdateReason=n$e(h)),u.add(b)):this.reloadConfiguredProjectClearingSemanticCache(b,h,c)})}),this.openFiles.forEach((d,I)=>{let h=this.getScriptInfoForPath(I);be(h.containingProjects,G0e)||this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(h,2,c,u)}),u.forEach(d=>c.add(d)),this.inferredProjects.forEach(d=>this.clearSemanticCache(d)),this.ensureProjectForOpenFiles(),this.cleanupProjectsAndScriptInfos(c,new Set(this.openFiles.keys()),new Set(this.externalProjectToConfiguredProjectMap.keys())),this.logger.info("After reloading projects.."),this.printProjects()}removeRootOfInferredProjectIfNowPartOfOtherProject(c){w.assert(c.containingProjects.length>0);let u=c.containingProjects[0];!u.isOrphan()&&ere(u)&&u.isRoot(c)&&X(c.containingProjects,d=>d!==u&&!d.isOrphan())&&u.removeFile(c,!0,!0)}ensureProjectForOpenFiles(){this.logger.info("Before ensureProjectForOpenFiles:"),this.printProjects();let c=this.pendingOpenFileProjectUpdates;this.pendingOpenFileProjectUpdates=void 0,c?.forEach((u,d)=>this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(this.getScriptInfoForPath(d),1)),this.openFiles.forEach((u,d)=>{let I=this.getScriptInfoForPath(d);I.isOrphan()?this.assignOrphanScriptInfoToInferredProject(I,u):this.removeRootOfInferredProjectIfNowPartOfOtherProject(I)}),this.pendingEnsureProjectForOpenFiles=!1,this.inferredProjects.forEach(M2),this.logger.info("After ensureProjectForOpenFiles:"),this.printProjects()}openClientFile(c,u,d,I){return this.openClientFileWithNormalizedPath(Of(c),u,d,!1,I?Of(I):void 0)}getOriginalLocationEnsuringConfiguredProject(c,u){let d=c.isSourceOfProjectReferenceRedirect(u.fileName),I=d?u:c.getSourceMapper().tryGetSourcePosition(u);if(!I)return;let{fileName:h}=I,b=this.getScriptInfo(h);if(!b&&!this.host.fileExists(h))return;let R={fileName:Of(h),path:this.toPath(h)},N=this.getConfigFileNameForFile(R,!1);if(!N)return;let V=this.findConfiguredProjectByProjectName(N);if(!V){if(c.getCompilerOptions().disableReferencedProjectLoad)return d?u:b?.containingProjects.length?I:u;V=this.createConfiguredProject(N,`Creating project for original file: ${R.fileName}${u!==I?" for location: "+u.fileName:""}`)}M2(V);let P=re=>{let ue=this.getScriptInfo(h);return ue&&re.containsScriptInfo(ue)&&!re.isSourceOfProjectReferenceRedirect(ue.path)};if(V.isSolution()||!P(V)){if(V=r$e(V,h,re=>P(re)?re:void 0,1,`Creating project referenced in solution ${V.projectName} to find possible configured project for original file: ${R.fileName}${u!==I?" for location: "+u.fileName:""}`),!V)return;if(V===c)return I}te(V);let Q=this.getScriptInfo(h);if(!Q||!Q.containingProjects.length)return;return Q.containingProjects.forEach(re=>{HZ(re)&&te(re)}),I;function te(re){(c.originalConfiguredProjects??(c.originalConfiguredProjects=new Set)).add(re.canonicalConfigFilePath)}}fileExists(c){return!!this.getScriptInfoForNormalizedPath(c)||this.host.fileExists(c)}findExternalProjectContainingOpenScriptInfo(c){return be(this.externalProjects,u=>(M2(u),u.containsScriptInfo(c)))}getOrCreateOpenScriptInfo(c,u,d,I,h){let b=this.getOrCreateScriptInfoWorker(c,h?this.getNormalizedAbsolutePath(h):this.currentDirectory,!0,u,d,!!I,void 0,!0);return this.openFiles.set(b.path,h),b}assignProjectToOpenedScriptInfo(c){let u,d,I=this.findExternalProjectContainingOpenScriptInfo(c),h,b;if(!I&&this.serverMode===0){let R=this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(c,1);R&&(h=R.seenProjects,b=R.sentConfigDiag,R.defaultProject&&(u=R.defaultProject.getConfigFilePath(),d=R.defaultProject.getAllProjectErrors()))}return c.containingProjects.forEach(M2),c.isOrphan()&&(h?.forEach(R=>{b.has(R)||this.sendConfigFileDiagEvent(R,c.fileName,!0)}),w.assert(this.openFiles.has(c.path)),this.assignOrphanScriptInfoToInferredProject(c,this.openFiles.get(c.path))),w.assert(!c.isOrphan()),{configFileName:u,configFileErrors:d,retainProjects:h}}findCreateOrReloadConfiguredProject(c,u,d,I,h,b,R,N){let V=this.findConfiguredProjectByProjectName(c,I),P=!1;switch(u){case 0:if(!V)return;break;case 1:V??(V=this.createConfiguredProject(c,d)),P=!R&&HHr(V,h);break;case 2:V??(V=this.createConfiguredProject(c,n$e(d))),P=!N&&this.reloadConfiguredProjectClearingSemanticCache(V,d,b),N&&!N.has(V)&&!b.has(V)&&(V.pendingUpdateLevel=2,V.pendingUpdateReason=n$e(d),N.add(V));break;default:w.assertNever(u)}return{project:V,sentConfigFileDiag:P}}tryFindDefaultConfiguredProjectForOpenScriptInfo(c,u,d,I){let h=this.getConfigFileNameForFile(c,u===0);if(!h)return;let b=this.findCreateOrReloadConfiguredProject(h,u,YHr(c),d,c.fileName,I);if(!b)return;let R=new Set,N=new Set(b.sentConfigFileDiag?[b.project]:void 0),V,P;return Q(b.project),{defaultProject:V??P,sentConfigDiag:N,seenProjects:R};function Q(ue){return te(ue)?V:re(ue)}function te(ue){if(!Zi(R,ue))return;let Ae=ue.containsScriptInfo(c);if(Ae&&!ue.isSourceOfProjectReferenceRedirect(c.path))return V=ue;P??(P=Ae?ue:void 0)}function re(ue){return r$e(ue,c.path,(Ae,de)=>(de&&N.add(Ae),te(Ae)),u,`Creating project referenced in solution ${ue.projectName} to find possible configured project for ${c.fileName} to open`,d,c.fileName,I)}}tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(c,u,d,I){let h=u===0,b=this.tryFindDefaultConfiguredProjectForOpenScriptInfo(c,u,h,d);if(!b)return;let{defaultProject:R,seenProjects:N}=b;return R&&gus(c,R,V=>{N.add(V)},u,`Creating project possibly referencing default composite project ${R.getProjectName()} of open file ${c.fileName}`,h,d,I),b}loadAncestorProjectTree(c){c=c||Gn(this.configuredProjects,(d,I)=>I.isInitialLoadPending()?void 0:[d,!0]);let u=new Set;for(let d of on(this.configuredProjects.values()))PHr(d,I=>c.has(I))&&M2(d),this.ensureProjectChildren(d,c,u)}ensureProjectChildren(c,u,d){var I;if(!Zi(d,c.canonicalConfigFilePath)||c.getCompilerOptions().disableReferencedProjectLoad)return;let h=(I=c.getCurrentProgram())==null?void 0:I.getResolvedProjectReferences();if(h)for(let b of h){if(!b)continue;let R=L6e(b.references,P=>u.has(P.sourceFile.path)?P:void 0);if(!R)continue;let N=Of(b.sourceFile.fileName),V=this.findConfiguredProjectByProjectName(N)??this.createConfiguredProject(N,`Creating project referenced by : ${c.projectName} as it references project ${R.sourceFile.fileName}`);M2(V),this.ensureProjectChildren(V,u,d)}}cleanupConfiguredProjects(c,u,d){this.getOrphanConfiguredProjects(c,d,u).forEach(I=>this.removeProject(I))}cleanupProjectsAndScriptInfos(c,u,d){this.cleanupConfiguredProjects(c,d,u);for(let I of this.inferredProjects.slice())I.isOrphan()&&this.removeProject(I);this.removeOrphanScriptInfos()}openClientFileWithNormalizedPath(c,u,d,I,h){let b=this.getOrCreateOpenScriptInfo(c,u,d,I,h),{retainProjects:R,...N}=this.assignProjectToOpenedScriptInfo(b);return this.cleanupProjectsAndScriptInfos(R,new Set([b.path]),void 0),this.telemetryOnOpenFile(b),this.printProjects(),N}getOrphanConfiguredProjects(c,u,d){let I=new Set(this.configuredProjects.values()),h=V=>{V.originalConfiguredProjects&&(HZ(V)||!V.isOrphan())&&V.originalConfiguredProjects.forEach((P,Q)=>{let te=this.getConfiguredProjectByCanonicalConfigFilePath(Q);return te&&N(te)})};return c?.forEach(N),this.inferredProjects.forEach(h),this.externalProjects.forEach(h),this.externalProjectToConfiguredProjectMap.forEach((V,P)=>{d?.has(P)||V.forEach(N)}),this.openFiles.forEach((V,P)=>{if(u?.has(P))return;let Q=this.getScriptInfoForPath(P);if(be(Q.containingProjects,G0e))return;let te=this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(Q,0);te?.defaultProject&&te?.seenProjects.forEach(N)}),this.configuredProjects.forEach(V=>{I.has(V)&&(R(V)||OHr(V,b))&&N(V)}),I;function b(V){return!I.has(V)||R(V)}function R(V){var P,Q;return(V.deferredClose||V.projectService.hasPendingProjectUpdate(V))&&!!((Q=(P=V.projectService.configFileExistenceInfoCache.get(V.canonicalConfigFilePath))==null?void 0:P.openFilesImpactedByConfigFile)!=null&&Q.size)}function N(V){I.delete(V)&&(h(V),OHr(V,N))}}removeOrphanScriptInfos(){let c=new Map(this.filenameToScriptInfo);this.filenameToScriptInfo.forEach(u=>{if(!u.deferredDelete){if(!u.isScriptOpen()&&u.isOrphan()&&!u.isContainedByBackgroundProject()){if(!u.sourceMapFilePath)return;let d;if(Ya(u.sourceMapFilePath)){let I=this.filenameToScriptInfo.get(u.sourceMapFilePath);d=I?.sourceInfos}else d=u.sourceMapFilePath.sourceInfos;if(!d||!eT(d,I=>{let h=this.getScriptInfoForPath(I);return!!h&&(h.isScriptOpen()||!h.isOrphan())}))return}if(c.delete(u.path),u.sourceMapFilePath){let d;if(Ya(u.sourceMapFilePath)){let I=this.filenameToScriptInfo.get(u.sourceMapFilePath);I?.deferredDelete?u.sourceMapFilePath={watcher:this.addMissingSourceMapFile(I.fileName,u.path),sourceInfos:I.sourceInfos}:c.delete(u.sourceMapFilePath),d=I?.sourceInfos}else d=u.sourceMapFilePath.sourceInfos;d&&d.forEach((I,h)=>c.delete(h))}}}),c.forEach(u=>this.deleteScriptInfo(u))}telemetryOnOpenFile(c){if(this.serverMode!==0||!this.eventHandler||!c.isJavaScript()||!D2(this.allJsFilesForOpenFileTelemetry,c.path))return;let u=this.ensureDefaultProjectForFile(c);if(!u.languageServiceEnabled)return;let d=u.getSourceFile(c.path),I=!!d&&!!d.checkJsDirective;this.eventHandler({eventName:dWt,data:{info:{checkJs:I}}})}closeClientFile(c,u){let d=this.getScriptInfoForNormalizedPath(Of(c)),I=d?this.closeOpenFile(d,u):!1;return u||this.printProjects(),I}collectChanges(c,u,d,I){for(let h of u){let b=be(c,R=>R.projectName===h.getProjectName());I.push(h.getChangesSinceVersion(b&&b.version,d))}}synchronizeProjectList(c,u){let d=[];return this.collectChanges(c,this.externalProjects,u,d),this.collectChanges(c,gn(this.configuredProjects.values(),I=>I.deferredClose?void 0:I),u,d),this.collectChanges(c,this.inferredProjects,u,d),d}applyChangesInOpenFiles(c,u,d){let I,h=!1;if(c)for(let R of c){let N=this.getOrCreateOpenScriptInfo(Of(R.fileName),R.content,zqe(R.scriptKind),R.hasMixedContent,R.projectRootPath?Of(R.projectRootPath):void 0);(I||(I=[])).push(N)}if(u)for(let R of u){let N=this.getScriptInfo(R.fileName);w.assert(!!N),this.applyChangesToFile(N,R.changes)}if(d)for(let R of d)h=this.closeClientFile(R,!0)||h;let b;I?.forEach(R=>{var N;return(N=this.assignProjectToOpenedScriptInfo(R).retainProjects)==null?void 0:N.forEach(V=>(b??(b=new Set)).add(V))}),h&&this.assignOrphanScriptInfosToInferredProject(),I?(this.cleanupProjectsAndScriptInfos(b,new Set(I.map(R=>R.path)),void 0),I.forEach(R=>this.telemetryOnOpenFile(R)),this.printProjects()):O(d)&&this.printProjects()}applyChangesToFile(c,u){for(let d of u)c.editContent(d.span.start,d.span.start+d.span.length,d.newText)}closeExternalProject(c,u){let d=Of(c);if(this.externalProjectToConfiguredProjectMap.get(d))this.externalProjectToConfiguredProjectMap.delete(d);else{let h=this.findExternalProjectByProjectName(c);h&&this.removeProject(h)}u&&(this.cleanupConfiguredProjects(),this.printProjects())}openExternalProjects(c){let u=new Set(this.externalProjects.map(d=>d.getProjectName()));this.externalProjectToConfiguredProjectMap.forEach((d,I)=>u.add(I));for(let d of c)this.openExternalProject(d,!1),u.delete(d.projectFileName);u.forEach(d=>this.closeExternalProject(d,!1)),this.cleanupConfiguredProjects(),this.printProjects()}static escapeFilenameForRegex(c){return c.replace(this.filenameEscapeRegexp,"\\$&")}resetSafeList(){this.safelist=pWt}applySafeList(c){let u=c.typeAcquisition;w.assert(!!u,"proj.typeAcquisition should be set by now");let d=this.applySafeListWorker(c,c.rootFiles,u);return d?.excludedFiles??[]}applySafeListWorker(c,u,d){if(d.enable===!1||d.disableFilenameBasedTypeAcquisition)return;let I=d.include||(d.include=[]),h=[],b=u.map(Q=>df(Q.fileName));for(let Q of Object.keys(this.safelist)){let te=this.safelist[Q];for(let re of b)if(te.match.test(re)){if(this.logger.info(`Excluding files based on rule ${Q} matching file '${re}'`),te.types)for(let ue of te.types)I.includes(ue)||I.push(ue);if(te.exclude)for(let ue of te.exclude){let Ae=re.replace(te.match,(...de)=>ue.map(Be=>typeof Be=="number"?Ya(de[Be])?oir.escapeFilenameForRegex(de[Be]):(this.logger.info(`Incorrect RegExp specification in safelist rule ${Q} - not enough groups`),"\\*"):Be).join(""));h.includes(Ae)||h.push(Ae)}else{let ue=oir.escapeFilenameForRegex(re);h.includes(ue)||h.push(ue)}}}let R=h.map(Q=>new RegExp(Q,"i")),N,V;for(let Q=0;Qte.test(b[Q])))P(Q);else{if(d.enable){let te=kA(uf(b[Q]));if(Ad(te,"js")){let re=a0(te),ue=Iv(re),Ae=this.legacySafelist.get(ue);if(Ae!==void 0){this.logger.info(`Excluded '${b[Q]}' because it matched ${ue} from the legacy safelist`),P(Q),I.includes(Ae)||I.push(Ae);continue}}}/^.+[.-]min\.js$/.test(b[Q])?P(Q):N?.push(u[Q])}return V?{rootFiles:N,excludedFiles:V}:void 0;function P(Q){V||(w.assert(!N),N=u.slice(0,Q),V=[]),V.push(b[Q])}}openExternalProject(c,u){let d=this.findExternalProjectByProjectName(c.projectFileName),I,h=[];for(let b of c.rootFiles){let R=Of(b.fileName);if(Lqe(R)){if(this.serverMode===0&&this.host.fileExists(R)){let N=this.findConfiguredProjectByProjectName(R);N||(N=this.createConfiguredProject(R,`Creating configured project in external project: ${c.projectFileName}`),this.getHostPreferences().lazyConfiguredProjectsFromExternalProject||N.updateGraph()),(I??(I=new Set)).add(N),w.assert(!N.isClosed())}}else h.push(b)}if(I)this.externalProjectToConfiguredProjectMap.set(c.projectFileName,I),d&&this.removeProject(d);else{this.externalProjectToConfiguredProjectMap.delete(c.projectFileName);let b=c.typeAcquisition||{};b.include=b.include||[],b.exclude=b.exclude||[],b.enable===void 0&&(b.enable=oWt(h.map(V=>V.fileName)));let R=this.applySafeListWorker(c,h,b),N=R?.excludedFiles??[];if(h=R?.rootFiles??h,d){d.excludedFiles=N;let V=AZe(c.options),P=Z0e(c.options,d.getCurrentDirectory()),Q=this.getFilenameForExceededTotalSizeLimitForNonTsFiles(c.projectFileName,V,h,e$e);Q?d.disableLanguageService(Q):d.enableLanguageService(),d.setProjectErrors(P?.errors),this.updateRootAndOptionsOfNonInferredProject(d,h,e$e,V,b,c.options.compileOnSave,P?.watchOptions),d.updateGraph()}else this.createExternalProject(c.projectFileName,h,c.options,b,N).updateGraph()}u&&(this.cleanupConfiguredProjects(I,new Set(c.projectFileName)),this.printProjects())}hasDeferredExtension(){for(let c of this.hostConfiguration.extraFileExtensions)if(c.scriptKind===7)return!0;return!1}requestEnablePlugin(c,u,d){if(!this.host.importPlugin&&!this.host.require){this.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");return}if(this.logger.info(`Enabling plugin ${u.name} from candidate paths: ${d.join(",")}`),!u.name||Ul(u.name)||/[\\/]\.\.?($|[\\/])/.test(u.name)){this.logger.info(`Skipped loading plugin ${u.name||JSON.stringify(u)} because only package name is allowed plugin name`);return}if(this.host.importPlugin){let I=f7.importServicePluginAsync(u,d,this.host,b=>this.logger.info(b));this.pendingPluginEnablements??(this.pendingPluginEnablements=new Map);let h=this.pendingPluginEnablements.get(c);h||this.pendingPluginEnablements.set(c,h=[]),h.push(I);return}this.endEnablePlugin(c,f7.importServicePluginSync(u,d,this.host,I=>this.logger.info(I)))}endEnablePlugin(c,{pluginConfigEntry:u,resolvedModule:d,errorLogs:I}){var h;if(d){let b=(h=this.currentPluginConfigOverrides)==null?void 0:h.get(u.name);if(b){let R=u.name;u=b,u.name=R}c.enableProxy(d,u)}else X(I,b=>this.logger.info(b)),this.logger.info(`Couldn't find ${u.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;let c=on(this.pendingPluginEnablements.entries());this.pendingPluginEnablements=void 0,this.currentPluginEnablementPromise=this.enableRequestedPluginsWorker(c),await this.currentPluginEnablementPromise}async enableRequestedPluginsWorker(c){w.assert(this.currentPluginEnablementPromise===void 0);let u=!1;await Promise.all(Ot(c,async([d,I])=>{let h=await Promise.all(I);if(d.isClosed()||uZe(d)){this.logger.info(`Cancelling plugin enabling for ${d.getProjectName()} as it is ${d.isClosed()?"closed":"deferred close"}`);return}u=!0;for(let b of h)this.endEnablePlugin(d,b);this.delayUpdateProjectGraph(d)})),this.currentPluginEnablementPromise=void 0,u&&this.sendProjectsUpdatedInBackgroundEvent()}configurePlugin(c){this.forEachEnabledProject(u=>u.onPluginConfigurationChanged(c.pluginName,c.configuration)),this.currentPluginConfigOverrides=this.currentPluginConfigOverrides||new Map,this.currentPluginConfigOverrides.set(c.pluginName,c.configuration)}getPackageJsonsVisibleToFile(c,u,d){let I=this.packageJsonCache,h=d&&this.toPath(d),b=[],R=N=>{switch(I.directoryHasPackageJson(N)){case 3:return I.searchDirectoryAndAncestors(N),R(N);case-1:let V=Do(N,"package.json");this.watchPackageJsonFile(V,this.toPath(V),u);let P=I.getInDirectory(N);P&&b.push(P)}if(h&&h===N)return!0};return sI(oa(c),R),b}getNearestAncestorDirectoryWithPackageJson(c){return sI(c,u=>{switch(this.packageJsonCache.directoryHasPackageJson(u)){case-1:return u;case 0:return;case 3:return this.host.fileExists(Do(u,"package.json"))?u:void 0}})}watchPnpFile(){let c=bkr(__filename);if(c)return this.watchFactory.watchFile(c,()=>{this.forEachProject(u=>{for(let d of u.getScriptInfos())u.resolutionCache.invalidateResolutionOfFile(d.path);u.markAsDirty(),M2(u)}),this.delayEnsureProjectForOpenFiles()},250,this.hostConfiguration.watchOptions,_m.ConfigFile)}watchPackageJsonFile(c,u,d){w.assert(d!==void 0);let I=(this.packageJsonFilesMap??(this.packageJsonFilesMap=new Map)).get(u);if(!I){let h=this.watchFactory.watchFile(c,(b,R)=>{switch(R){case 0:case 1:this.packageJsonCache.addOrUpdate(b,u),this.onPackageJsonChange(I);break;case 2:this.packageJsonCache.delete(u),this.onPackageJsonChange(I),I.projects.clear(),I.close()}},250,this.hostConfiguration.watchOptions,_m.PackageJson);I={projects:new Set,close:()=>{var b;I.projects.size||!h||(h.close(),h=void 0,(b=this.packageJsonFilesMap)==null||b.delete(u),this.packageJsonCache.invalidate(u))}},this.packageJsonFilesMap.set(u,I)}I.projects.add(d),(d.packageJsonWatches??(d.packageJsonWatches=new Set)).add(I)}onPackageJsonChange(c){c.projects.forEach(u=>{var d;return(d=u.onPackageJsonChange)==null?void 0:d.call(u)})}includePackageJsonAutoImports(){switch(this.hostConfiguration.preferences.includePackageJsonAutoImports){case"on":return 1;case"off":return 0;default:return 2}}getIncompleteCompletionsCache(){return this.incompleteCompletionsCache||(this.incompleteCompletionsCache=fus())}};XHr.filenameEscapeRegexp=/[-/\\^$*+?.()|[\]{}]/g;var BWt=XHr;function fus(){let n;return{get(){return n},set(c){n=c},clear(){n=void 0}}}function vWt(n){return n.kind!==void 0}function SWt(n){n.print(!1,!1,!1)}function wWt(n){let c,u,d,I={get(N,V,P,Q){if(!(!u||d!==b(N,P,Q)))return u.get(V)},set(N,V,P,Q,te,re,ue){if(h(N,P,Q).set(V,R(te,re,ue,!1)),ue){for(let Ae of re)if(Ae.isInNodeModules){let de=Ae.path.substring(0,Ae.path.indexOf(Kx)+Kx.length-1),Be=n.toPath(de);c?.has(Be)||(c||(c=new Map)).set(Be,n.watchNodeModulesForPackageJsonChanges(de))}}},setModulePaths(N,V,P,Q,te){let re=h(N,P,Q),ue=re.get(V);ue?ue.modulePaths=te:re.set(V,R(void 0,te,void 0,void 0))},setBlockedByPackageJsonDependencies(N,V,P,Q,te){let re=h(N,P,Q),ue=re.get(V);ue?ue.isBlockedByPackageJsonDependencies=te:re.set(V,R(void 0,void 0,void 0,te))},clear(){c?.forEach(xB),u?.clear(),c?.clear(),d=void 0},count(){return u?u.size:0}};return w.isDebugging&&Object.defineProperty(I,"__cache",{get:()=>u}),I;function h(N,V,P){let Q=b(N,V,P);return u&&d!==Q&&I.clear(),d=Q,u||(u=new Map)}function b(N,V,P){return`${N},${V.importModuleSpecifierEnding},${V.importModuleSpecifierPreference},${P.overrideImportMode}`}function R(N,V,P,Q){return{kind:N,modulePaths:V,moduleSpecifiers:P,isBlockedByPackageJsonDependencies:Q}}}function TWt(n){let c=new Map,u=new Map;return{addOrUpdate:d,invalidate:I,delete:b=>{c.delete(b),u.set(oa(b),!0)},getInDirectory:b=>c.get(n.toPath(Do(b,"package.json")))||void 0,directoryHasPackageJson:b=>h(n.toPath(b)),searchDirectoryAndAncestors:b=>{sI(b,R=>{let N=n.toPath(R);if(h(N)!==3)return!0;let V=Do(R,"package.json");Fue(n,V)?d(V,Do(N,"package.json")):u.set(N,!0)})}};function d(b,R){let N=w.checkDefined(Nje(b,n.host));c.set(R,N),u.delete(oa(R))}function I(b){c.delete(b),u.delete(oa(b))}function h(b){return c.has(Do(b,"package.json"))?-1:u.has(b)?0:3}}var JHr={isCancellationRequested:()=>!1,setRequest:()=>{},resetRequest:()=>{}};function Ius(n){let c=n[0],u=n[1];return(1e9*c+u)/1e6}function UHr(n,c){if((ere(n)||G0e(n))&&n.isJsOnlyProject()){let u=n.getScriptInfoForNormalizedPath(c);return u&&!u.isJavaScript()}return!1}function Cus(n){return WE(n)||!!n.emitDecoratorMetadata}function KHr(n,c,u){let d=c.getScriptInfoForNormalizedPath(n);return{start:d.positionToLineOffset(u.start),end:d.positionToLineOffset(u.start+u.length),text:kN(u.messageText,` +`),code:u.code,category:zh(u),reportsUnnecessary:u.reportsUnnecessary,reportsDeprecated:u.reportsDeprecated,source:u.source,relatedInformation:Ot(u.relatedInformation,i$e)}}function i$e(n){return n.file?{span:{start:rre(Vl(n.file,n.start)),end:rre(Vl(n.file,n.start+n.length)),file:n.file.fileName},message:kN(n.messageText,` +`),category:zh(n),code:n.code}:{message:kN(n.messageText,` +`),category:zh(n),code:n.code}}function rre(n){return{line:n.line+1,offset:n.character+1}}function L0e(n,c){let u=n.file&&rre(Vl(n.file,n.start)),d=n.file&&rre(Vl(n.file,n.start+n.length)),I=kN(n.messageText,` +`),{code:h,source:b}=n,R=zh(n),N={start:u,end:d,text:I,code:h,category:R,reportsUnnecessary:n.reportsUnnecessary,reportsDeprecated:n.reportsDeprecated,source:b,relatedInformation:Ot(n.relatedInformation,i$e)};return c?{...N,fileName:n.file&&n.file.fileName}:N}function mus(n,c){return n.every(u=>Ku(u.span){this.immediateId=void 0,this.operationHost.executeWithRequestId(u,()=>this.executeAction(c))},n))}delay(n,c,u){let d=this.requestId;w.assert(d===this.operationHost.getCurrentRequestId(),"delay: incorrect request id"),this.setTimerHandle(this.operationHost.getServerHost().setTimeout(()=>{this.timerHandle=void 0,this.operationHost.executeWithRequestId(d,()=>this.executeAction(u))},c,n))}executeAction(n){var c,u,d,I,h,b;let R=!1;try{this.operationHost.isCancellationRequested()?(R=!0,(c=Mi)==null||c.instant(Mi.Phase.Session,"stepCanceled",{seq:this.requestId,early:!0})):((u=Mi)==null||u.push(Mi.Phase.Session,"stepAction",{seq:this.requestId}),n(this),(d=Mi)==null||d.pop())}catch(N){(I=Mi)==null||I.popAll(),R=!0,N instanceof os?(h=Mi)==null||h.instant(Mi.Phase.Session,"stepCanceled",{seq:this.requestId}):((b=Mi)==null||b.instant(Mi.Phase.Session,"stepError",{seq:this.requestId,message:N.message}),this.operationHost.logError(N,`delayed processing of request ${this.requestId}`))}(R||!this.hasPendingWork())&&this.complete()}setTimerHandle(n){this.timerHandle!==void 0&&this.operationHost.getServerHost().clearTimeout(this.timerHandle),this.timerHandle=n}setImmediateId(n){this.immediateId!==void 0&&this.operationHost.getServerHost().clearImmediate(this.immediateId),this.immediateId=n}hasPendingWork(){return!!this.timerHandle||!!this.immediateId}};function wWt(n,c){return{seq:0,type:"event",event:n,body:c}}function dus(n,c,u,d){let I=$r(Ra(u)?u:u.projects,h=>d(h,n));return!Ra(u)&&u.symLinkedProjects&&u.symLinkedProjects.forEach((h,b)=>{let R=c(b);I.push(...Fr(h,N=>d(N,R)))}),TA(I,Og)}function n$e(n){return Ud(({textSpan:c})=>c.start+100003*c.length,gje(n))}function pus(n,c,u,d,I,h,b){let R=HHr(n,c,u,!0,(P,M)=>P.getLanguageService().findRenameLocations(M.fileName,M.pos,d,I,h),(P,M)=>M(Yue(P)));if(Ra(R))return R;let N=[],V=n$e(b);return R.forEach((P,M)=>{for(let te of P)!V.has(te)&&!i$e(Yue(te),M)&&(N.push(te),V.add(te))}),N}function fus(n,c,u){let d=n.getLanguageService().getDefinitionAtPosition(c.fileName,c.pos,!1,u),I=d&&$i(d);return I&&!I.isLocal?{fileName:I.fileName,pos:I.textSpan.start}:void 0}function Ius(n,c,u,d,I){var h,b;let R=HHr(n,c,u,!1,(M,te)=>(I.info(`Finding references to ${te.fileName} position ${te.pos} in project ${M.getProjectName()}`),M.getLanguageService().findReferences(te.fileName,te.pos)),(M,te)=>{te(Yue(M.definition));for(let re of M.references)te(Yue(re))});if(Ra(R))return R;let N=R.get(c);if(((b=(h=N?.[0])==null?void 0:h.references[0])==null?void 0:b.isDefinition)===void 0)R.forEach(M=>{for(let te of M)for(let re of te.references)delete re.isDefinition});else{let M=n$e(d);for(let re of N)for(let ue of re.references)if(ue.isDefinition){M.add(ue);break}let te=new Set;for(;;){let re=!1;if(R.forEach((ue,Ae)=>{if(te.has(Ae))return;Ae.getLanguageService().updateIsDefinitionOfReferencedSymbols(ue,M)&&(te.add(Ae),re=!0)}),!re)break}R.forEach((re,ue)=>{if(!te.has(ue))for(let Ae of re)for(let de of Ae.references)de.isDefinition=!1})}let V=[],P=n$e(d);return R.forEach((M,te)=>{for(let re of M){let ue=i$e(Yue(re.definition),te),Ae=ue===void 0?re.definition:{...re.definition,textSpan:bd(ue.pos,re.definition.textSpan.length),fileName:ue.fileName,contextSpan:hus(re.definition,te)},de=be(V,Be=>uje(Be.definition,Ae,d));de||(de={definition:Ae,references:[]},V.push(de));for(let Be of re.references)!P.has(Be)&&!i$e(Yue(Be),te)&&(P.add(Be),de.references.push(Be))}}),V.filter(M=>M.references.length!==0)}function TWt(n,c,u){for(let d of Ra(n)?n:n.projects)u(d,c);!Ra(n)&&n.symLinkedProjects&&n.symLinkedProjects.forEach((d,I)=>{for(let h of d)u(h,I)})}function HHr(n,c,u,d,I,h){let b=new Map,R=NA();R.enqueue({project:c,location:u}),TWt(n,u.fileName,(Ae,de)=>{let Be={fileName:de,pos:u.pos};R.enqueue({project:Ae,location:Be})});let N=c.projectService,V=c.getCancellationToken(),P=fus(c,u,d),M=iu(()=>c.isSourceOfProjectReferenceRedirect(P.fileName)?P:c.getLanguageService().getSourceMapper().tryGetGeneratedPosition(P)),te=iu(()=>c.isSourceOfProjectReferenceRedirect(P.fileName)?P:c.getLanguageService().getSourceMapper().tryGetSourcePosition(P)),re=new Set;e:for(;!R.isEmpty();){for(;!R.isEmpty();){if(V.isCancellationRequested())break e;let{project:Ae,location:de}=R.dequeue();if(b.has(Ae)||XHr(Ae,de)||(M2(Ae),!Ae.containsFile(Pf(de.fileName))))continue;let Be=ue(Ae,de);b.set(Ae,Be??ym),re.add(mus(Ae))}P&&(N.loadAncestorProjectTree(re),N.forEachEnabledProject(Ae=>{if(V.isCancellationRequested()||b.has(Ae))return;let de=Cus(P,Ae,M,te);de&&R.enqueue({project:Ae,location:de})}))}if(b.size===1)return xl(b.values());return b;function ue(Ae,de){let Be=I(Ae,de);if(Be){for(let Fe of Be)h(Fe,Ne=>{let Qe=N.getOriginalLocationEnsuringConfiguredProject(Ae,Ne);if(!Qe)return;let De=N.getScriptInfo(Qe.fileName);for(let Le of De.containingProjects)!Le.isOrphan()&&!b.has(Le)&&R.enqueue({project:Le,location:Qe});let lt=N.getSymlinkedProjects(De);lt&<.forEach((Le,je)=>{for(let st of Le)!st.isOrphan()&&!b.has(st)&&R.enqueue({project:st,location:{fileName:je,pos:Qe.pos}})})});return Be}}}function Cus(n,c,u,d){if(c.containsFile(Pf(n.fileName))&&!XHr(c,n))return n;let I=u();if(I&&c.containsFile(Pf(I.fileName)))return I;let h=d();return h&&c.containsFile(Pf(h.fileName))?h:void 0}function XHr(n,c){if(!c)return!1;let u=n.getLanguageService().getProgram();if(!u)return!1;let d=u.getSourceFile(c.fileName);return!!d&&d.resolvedPath!==d.path&&d.resolvedPath!==n.toPath(c.fileName)}function mus(n){return QZ(n)?n.canonicalConfigFilePath:n.getProjectName()}function Yue({fileName:n,textSpan:c}){return{fileName:n,pos:c.start}}function i$e(n,c){return _ue(n,c.getSourceMapper(),u=>c.projectService.fileExists(u))}function JHr(n,c){return KGe(n,c.getSourceMapper(),u=>c.projectService.fileExists(u))}function hus(n,c){return dje(n,c.getSourceMapper(),u=>c.projectService.fileExists(u))}var UHr=["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"],_us=[...UHr,"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"],KHr=class OAt{constructor(c){this.changeSeq=0,this.handlers=new Map(Object.entries({status:()=>{let h={version:y};return this.requiredResponse(h)},openExternalProject:h=>(this.projectService.openExternalProject(h.arguments,!0),this.requiredResponse(!0)),openExternalProjects:h=>(this.projectService.openExternalProjects(h.arguments.projects),this.requiredResponse(!0)),closeExternalProject:h=>(this.projectService.closeExternalProject(h.arguments.projectFileName,!0),this.requiredResponse(!0)),synchronizeProjectList:h=>{let b=this.projectService.synchronizeProjectList(h.arguments.knownProjects,h.arguments.includeProjectReferenceRedirectInfo);if(!b.some(N=>N.projectErrors&&N.projectErrors.length!==0))return this.requiredResponse(b);let R=Ot(b,N=>!N.projectErrors||N.projectErrors.length===0?N:{info:N.info,changes:N.changes,files:N.files,projectErrors:this.convertToDiagnosticsWithLinePosition(N.projectErrors,void 0)});return this.requiredResponse(R)},updateOpen:h=>(this.changeSeq++,this.projectService.applyChangesInOpenFiles(h.arguments.openFiles&&dr(h.arguments.openFiles,b=>({fileName:b.file,content:b.fileContent,scriptKind:b.scriptKindName,projectRootPath:b.projectRootPath})),h.arguments.changedFiles&&dr(h.arguments.changedFiles,b=>({fileName:b.fileName,changes:gn(Zu(b.textChanges),R=>{let N=w.checkDefined(this.projectService.getScriptInfo(b.fileName)),V=N.lineOffsetToPosition(R.start.line,R.start.offset),P=N.lineOffsetToPosition(R.end.line,R.end.offset);return V>=0?{span:{start:V,length:P-V},newText:R.newText}:void 0})})),h.arguments.closedFiles),this.requiredResponse(!0)),applyChangedToOpenFiles:h=>(this.changeSeq++,this.projectService.applyChangesInOpenFiles(h.arguments.openFiles,h.arguments.changedFiles&&dr(h.arguments.changedFiles,b=>({fileName:b.fileName,changes:Zu(b.changes)})),h.arguments.closedFiles),this.requiredResponse(!0)),exit:()=>(this.exit(),this.notRequired()),definition:h=>this.requiredResponse(this.getDefinition(h.arguments,!0)),"definition-full":h=>this.requiredResponse(this.getDefinition(h.arguments,!1)),definitionAndBoundSpan:h=>this.requiredResponse(this.getDefinitionAndBoundSpan(h.arguments,!0)),"definitionAndBoundSpan-full":h=>this.requiredResponse(this.getDefinitionAndBoundSpan(h.arguments,!1)),findSourceDefinition:h=>this.requiredResponse(this.findSourceDefinition(h.arguments)),"emit-output":h=>this.requiredResponse(this.getEmitOutput(h.arguments)),typeDefinition:h=>this.requiredResponse(this.getTypeDefinition(h.arguments)),implementation:h=>this.requiredResponse(this.getImplementation(h.arguments,!0)),"implementation-full":h=>this.requiredResponse(this.getImplementation(h.arguments,!1)),references:h=>this.requiredResponse(this.getReferences(h.arguments,!0)),"references-full":h=>this.requiredResponse(this.getReferences(h.arguments,!1)),rename:h=>this.requiredResponse(this.getRenameLocations(h.arguments,!0)),"renameLocations-full":h=>this.requiredResponse(this.getRenameLocations(h.arguments,!1)),"rename-full":h=>this.requiredResponse(this.getRenameInfo(h.arguments)),open:h=>(this.openClientFile(Pf(h.arguments.file),h.arguments.fileContent,jqe(h.arguments.scriptKindName),h.arguments.projectRootPath?Pf(h.arguments.projectRootPath):void 0),this.notRequired()),quickinfo:h=>this.requiredResponse(this.getQuickInfoWorker(h.arguments,!0)),"quickinfo-full":h=>this.requiredResponse(this.getQuickInfoWorker(h.arguments,!1)),getOutliningSpans:h=>this.requiredResponse(this.getOutliningSpans(h.arguments,!0)),outliningSpans:h=>this.requiredResponse(this.getOutliningSpans(h.arguments,!1)),todoComments:h=>this.requiredResponse(this.getTodoComments(h.arguments)),indentation:h=>this.requiredResponse(this.getIndentation(h.arguments)),nameOrDottedNameSpan:h=>this.requiredResponse(this.getNameOrDottedNameSpan(h.arguments)),breakpointStatement:h=>this.requiredResponse(this.getBreakpointStatement(h.arguments)),braceCompletion:h=>this.requiredResponse(this.isValidBraceCompletion(h.arguments)),docCommentTemplate:h=>this.requiredResponse(this.getDocCommentTemplate(h.arguments)),getSpanOfEnclosingComment:h=>this.requiredResponse(this.getSpanOfEnclosingComment(h.arguments)),fileReferences:h=>this.requiredResponse(this.getFileReferences(h.arguments,!0)),"fileReferences-full":h=>this.requiredResponse(this.getFileReferences(h.arguments,!1)),format:h=>this.requiredResponse(this.getFormattingEditsForRange(h.arguments)),formatonkey:h=>this.requiredResponse(this.getFormattingEditsAfterKeystroke(h.arguments)),"format-full":h=>this.requiredResponse(this.getFormattingEditsForDocumentFull(h.arguments)),"formatonkey-full":h=>this.requiredResponse(this.getFormattingEditsAfterKeystrokeFull(h.arguments)),"formatRange-full":h=>this.requiredResponse(this.getFormattingEditsForRangeFull(h.arguments)),completionInfo:h=>this.requiredResponse(this.getCompletions(h.arguments,"completionInfo")),completions:h=>this.requiredResponse(this.getCompletions(h.arguments,"completions")),"completions-full":h=>this.requiredResponse(this.getCompletions(h.arguments,"completions-full")),completionEntryDetails:h=>this.requiredResponse(this.getCompletionEntryDetails(h.arguments,!1)),"completionEntryDetails-full":h=>this.requiredResponse(this.getCompletionEntryDetails(h.arguments,!0)),compileOnSaveAffectedFileList:h=>this.requiredResponse(this.getCompileOnSaveAffectedFileList(h.arguments)),compileOnSaveEmitFile:h=>this.requiredResponse(this.emitFile(h.arguments)),signatureHelp:h=>this.requiredResponse(this.getSignatureHelpItems(h.arguments,!0)),"signatureHelp-full":h=>this.requiredResponse(this.getSignatureHelpItems(h.arguments,!1)),"compilerOptionsDiagnostics-full":h=>this.requiredResponse(this.getCompilerOptionsDiagnostics(h.arguments)),"encodedSyntacticClassifications-full":h=>this.requiredResponse(this.getEncodedSyntacticClassifications(h.arguments)),"encodedSemanticClassifications-full":h=>this.requiredResponse(this.getEncodedSemanticClassifications(h.arguments)),cleanup:()=>(this.cleanup(),this.requiredResponse(!0)),semanticDiagnosticsSync:h=>this.requiredResponse(this.getSemanticDiagnosticsSync(h.arguments)),syntacticDiagnosticsSync:h=>this.requiredResponse(this.getSyntacticDiagnosticsSync(h.arguments)),suggestionDiagnosticsSync:h=>this.requiredResponse(this.getSuggestionDiagnosticsSync(h.arguments)),geterr:h=>(this.errorCheck.startNew(b=>this.getDiagnostics(b,h.arguments.delay,h.arguments.files)),this.notRequired()),geterrForProject:h=>(this.errorCheck.startNew(b=>this.getDiagnosticsForProject(b,h.arguments.delay,h.arguments.file)),this.notRequired()),change:h=>(this.change(h.arguments),this.notRequired()),configure:h=>(this.projectService.setHostConfiguration(h.arguments),this.doOutput(void 0,"configure",h.seq,!0),this.notRequired()),reload:h=>(this.reload(h.arguments,h.seq),this.requiredResponse({reloadFinished:!0})),saveto:h=>{let b=h.arguments;return this.saveToTmp(b.file,b.tmpfile),this.notRequired()},close:h=>{let b=h.arguments;return this.closeClientFile(b.file),this.notRequired()},navto:h=>this.requiredResponse(this.getNavigateToItems(h.arguments,!0)),"navto-full":h=>this.requiredResponse(this.getNavigateToItems(h.arguments,!1)),brace:h=>this.requiredResponse(this.getBraceMatching(h.arguments,!0)),"brace-full":h=>this.requiredResponse(this.getBraceMatching(h.arguments,!1)),navbar:h=>this.requiredResponse(this.getNavigationBarItems(h.arguments,!0)),"navbar-full":h=>this.requiredResponse(this.getNavigationBarItems(h.arguments,!1)),navtree:h=>this.requiredResponse(this.getNavigationTree(h.arguments,!0)),"navtree-full":h=>this.requiredResponse(this.getNavigationTree(h.arguments,!1)),documentHighlights:h=>this.requiredResponse(this.getDocumentHighlights(h.arguments,!0)),"documentHighlights-full":h=>this.requiredResponse(this.getDocumentHighlights(h.arguments,!1)),compilerOptionsForInferredProjects:h=>(this.setCompilerOptionsForInferredProjects(h.arguments),this.requiredResponse(!0)),projectInfo:h=>this.requiredResponse(this.getProjectInfo(h.arguments)),reloadProjects:()=>(this.projectService.reloadProjects(),this.notRequired()),jsxClosingTag:h=>this.requiredResponse(this.getJsxClosingTag(h.arguments)),linkedEditingRange:h=>this.requiredResponse(this.getLinkedEditingRange(h.arguments)),getCodeFixes:h=>this.requiredResponse(this.getCodeFixes(h.arguments,!0)),"getCodeFixes-full":h=>this.requiredResponse(this.getCodeFixes(h.arguments,!1)),getCombinedCodeFix:h=>this.requiredResponse(this.getCombinedCodeFix(h.arguments,!0)),"getCombinedCodeFix-full":h=>this.requiredResponse(this.getCombinedCodeFix(h.arguments,!1)),applyCodeActionCommand:h=>this.requiredResponse(this.applyCodeActionCommand(h.arguments)),getSupportedCodeFixes:h=>this.requiredResponse(this.getSupportedCodeFixes(h.arguments)),getApplicableRefactors:h=>this.requiredResponse(this.getApplicableRefactors(h.arguments)),getEditsForRefactor:h=>this.requiredResponse(this.getEditsForRefactor(h.arguments,!0)),getMoveToRefactoringFileSuggestions:h=>this.requiredResponse(this.getMoveToRefactoringFileSuggestions(h.arguments)),getPasteEdits:h=>this.requiredResponse(this.getPasteEdits(h.arguments)),"getEditsForRefactor-full":h=>this.requiredResponse(this.getEditsForRefactor(h.arguments,!1)),organizeImports:h=>this.requiredResponse(this.organizeImports(h.arguments,!0)),"organizeImports-full":h=>this.requiredResponse(this.organizeImports(h.arguments,!1)),getEditsForFileRename:h=>this.requiredResponse(this.getEditsForFileRename(h.arguments,!0)),"getEditsForFileRename-full":h=>this.requiredResponse(this.getEditsForFileRename(h.arguments,!1)),configurePlugin:h=>(this.configurePlugin(h.arguments),this.doOutput(void 0,"configurePlugin",h.seq,!0),this.notRequired()),selectionRange:h=>this.requiredResponse(this.getSmartSelectionRange(h.arguments,!0)),"selectionRange-full":h=>this.requiredResponse(this.getSmartSelectionRange(h.arguments,!1)),prepareCallHierarchy:h=>this.requiredResponse(this.prepareCallHierarchy(h.arguments)),provideCallHierarchyIncomingCalls:h=>this.requiredResponse(this.provideCallHierarchyIncomingCalls(h.arguments)),provideCallHierarchyOutgoingCalls:h=>this.requiredResponse(this.provideCallHierarchyOutgoingCalls(h.arguments)),toggleLineComment:h=>this.requiredResponse(this.toggleLineComment(h.arguments,!0)),"toggleLineComment-full":h=>this.requiredResponse(this.toggleLineComment(h.arguments,!1)),toggleMultilineComment:h=>this.requiredResponse(this.toggleMultilineComment(h.arguments,!0)),"toggleMultilineComment-full":h=>this.requiredResponse(this.toggleMultilineComment(h.arguments,!1)),commentSelection:h=>this.requiredResponse(this.commentSelection(h.arguments,!0)),"commentSelection-full":h=>this.requiredResponse(this.commentSelection(h.arguments,!1)),uncommentSelection:h=>this.requiredResponse(this.uncommentSelection(h.arguments,!0)),"uncommentSelection-full":h=>this.requiredResponse(this.uncommentSelection(h.arguments,!1)),provideInlayHints:h=>this.requiredResponse(this.provideInlayHints(h.arguments)),mapCode:h=>this.requiredResponse(this.mapCode(h.arguments))})),this.host=c.host,this.cancellationToken=c.cancellationToken,this.typingsInstaller=c.typingsInstaller||Zqe,this.byteLength=c.byteLength,this.hrtime=c.hrtime,this.logger=c.logger,this.canUseEvents=c.canUseEvents,this.suppressDiagnosticEvents=c.suppressDiagnosticEvents,this.noGetErrOnBackgroundUpdate=c.noGetErrOnBackgroundUpdate;let{throttleWaitMilliseconds:u}=c;this.eventHandler=this.canUseEvents?c.eventHandler||(h=>this.defaultEventHandler(h)):void 0;let d={executeWithRequestId:(h,b)=>this.executeWithRequestId(h,b),getCurrentRequestId:()=>this.currentRequestId,getServerHost:()=>this.host,logError:(h,b)=>this.logError(h,b),sendRequestCompletedEvent:h=>this.sendRequestCompletedEvent(h),isCancellationRequested:()=>this.cancellationToken.isCancellationRequested()};this.errorCheck=new Aus(d);let I={host:this.host,logger:this.logger,cancellationToken:this.cancellationToken,useSingleInferredProject:c.useSingleInferredProject,useInferredProjectPerProjectRoot:c.useInferredProjectPerProjectRoot,typingsInstaller:this.typingsInstaller,throttleWaitMilliseconds:u,eventHandler:this.eventHandler,suppressDiagnosticEvents:this.suppressDiagnosticEvents,globalPlugins:c.globalPlugins,pluginProbeLocations:c.pluginProbeLocations,allowLocalPluginLoads:c.allowLocalPluginLoads,typesMapLocation:c.typesMapLocation,serverMode:c.serverMode,session:this,canUseWatchEvents:c.canUseWatchEvents,incrementalVerifier:c.incrementalVerifier};switch(this.projectService=new yWt(I),this.projectService.setPerformanceEventHandler(this.performanceEventHandler.bind(this)),this.gcTimer=new KVt(this.host,7e3,this.logger),this.projectService.serverMode){case 0:break;case 1:UHr.forEach(h=>this.handlers.set(h,b=>{throw new Error(`Request: ${b.command} not allowed in LanguageServiceMode.PartialSemantic`)}));break;case 2:_us.forEach(h=>this.handlers.set(h,b=>{throw new Error(`Request: ${b.command} not allowed in LanguageServiceMode.Syntactic`)}));break;default:w.assertNever(this.projectService.serverMode)}}sendRequestCompletedEvent(c){this.event({request_seq:c},"requestCompleted")}addPerformanceData(c,u){this.performanceData||(this.performanceData={}),this.performanceData[c]=(this.performanceData[c]??0)+u}performanceEventHandler(c){switch(c.kind){case"UpdateGraph":this.addPerformanceData("updateGraphDurationMs",c.durationMs);break;case"CreatePackageJsonAutoImportProvider":this.addPerformanceData("createAutoImportProviderProgramDurationMs",c.durationMs);break}}defaultEventHandler(c){switch(c.eventName){case lZe:this.projectsUpdatedInBackgroundEvent(c.data.openFiles);break;case Pqe:this.event({projectName:c.data.project.getProjectName(),reason:c.data.reason},c.eventName);break;case Oqe:this.event({projectName:c.data.project.getProjectName()},c.eventName);break;case Mqe:case Xqe:case Jqe:case Uqe:this.event(c.data,c.eventName);break;case Qqe:this.event({triggerFile:c.data.triggerFile,configFile:c.data.configFileName,diagnostics:Ot(c.data.diagnostics,u=>F0e(u,!0))},c.eventName);break;case Yqe:{this.event({projectName:c.data.project.getProjectName(),languageServiceEnabled:c.data.languageServiceEnabled},c.eventName);break}case Hqe:{this.event({telemetryEventName:c.eventName,payload:c.data},"telemetry");break}}}projectsUpdatedInBackgroundEvent(c){this.projectService.logger.info(`got projects updated in background ${c}`),c.length&&(!this.suppressDiagnosticEvents&&!this.noGetErrOnBackgroundUpdate&&(this.projectService.logger.info(`Queueing diagnostics update for ${c}`),this.errorCheck.startNew(u=>this.updateErrorCheck(u,c,100,!0))),this.event({openFiles:c},lZe))}logError(c,u){this.logErrorWorker(c,u)}logErrorWorker(c,u,d){let I="Exception on executing command "+u;if(c.message&&(I+=`: -`+pue(c.message),c.stack&&(I+=` -`+pue(c.stack))),this.logger.hasLevel(3)){if(d)try{let{file:h,project:b}=this.getFileAndProject(d),R=b.getScriptInfoForNormalizedPath(h);if(R){let N=K6(R.getSnapshot());I+=` +${h}${d}`}var hus=class{constructor(n){this.operationHost=n}startNew(n){this.complete(),this.requestId=this.operationHost.getCurrentRequestId(),this.executeAction(n)}complete(){this.requestId!==void 0&&(this.operationHost.sendRequestCompletedEvent(this.requestId),this.requestId=void 0),this.setTimerHandle(void 0),this.setImmediateId(void 0)}immediate(n,c){let u=this.requestId;w.assert(u===this.operationHost.getCurrentRequestId(),"immediate: incorrect request id"),this.setImmediateId(this.operationHost.getServerHost().setImmediate(()=>{this.immediateId=void 0,this.operationHost.executeWithRequestId(u,()=>this.executeAction(c))},n))}delay(n,c,u){let d=this.requestId;w.assert(d===this.operationHost.getCurrentRequestId(),"delay: incorrect request id"),this.setTimerHandle(this.operationHost.getServerHost().setTimeout(()=>{this.timerHandle=void 0,this.operationHost.executeWithRequestId(d,()=>this.executeAction(u))},c,n))}executeAction(n){var c,u,d,I,h,b;let R=!1;try{this.operationHost.isCancellationRequested()?(R=!0,(c=Qi)==null||c.instant(Qi.Phase.Session,"stepCanceled",{seq:this.requestId,early:!0})):((u=Qi)==null||u.push(Qi.Phase.Session,"stepAction",{seq:this.requestId}),n(this),(d=Qi)==null||d.pop())}catch(N){(I=Qi)==null||I.popAll(),R=!0,N instanceof os?(h=Qi)==null||h.instant(Qi.Phase.Session,"stepCanceled",{seq:this.requestId}):((b=Qi)==null||b.instant(Qi.Phase.Session,"stepError",{seq:this.requestId,message:N.message}),this.operationHost.logError(N,`delayed processing of request ${this.requestId}`))}(R||!this.hasPendingWork())&&this.complete()}setTimerHandle(n){this.timerHandle!==void 0&&this.operationHost.getServerHost().clearTimeout(this.timerHandle),this.timerHandle=n}setImmediateId(n){this.immediateId!==void 0&&this.operationHost.getServerHost().clearImmediate(this.immediateId),this.immediateId=n}hasPendingWork(){return!!this.timerHandle||!!this.immediateId}};function RWt(n,c){return{seq:0,type:"event",event:n,body:c}}function _us(n,c,u,d){let I=$r(Na(u)?u:u.projects,h=>d(h,n));return!Na(u)&&u.symLinkedProjects&&u.symLinkedProjects.forEach((h,b)=>{let R=c(b);I.push(...Fr(h,N=>d(N,R)))}),NA(I,Qg)}function s$e(n){return Kd(({textSpan:c})=>c.start+100003*c.length,dje(n))}function yus(n,c,u,d,I,h,b){let R=zHr(n,c,u,!0,(P,Q)=>P.getLanguageService().findRenameLocations(Q.fileName,Q.pos,d,I,h),(P,Q)=>Q($ue(P)));if(Na(R))return R;let N=[],V=s$e(b);return R.forEach((P,Q)=>{for(let te of P)!V.has(te)&&!o$e($ue(te),Q)&&(N.push(te),V.add(te))}),N}function bus(n,c,u){let d=n.getLanguageService().getDefinitionAtPosition(c.fileName,c.pos,!1,u),I=d&&$i(d);return I&&!I.isLocal?{fileName:I.fileName,pos:I.textSpan.start}:void 0}function Eus(n,c,u,d,I){var h,b;let R=zHr(n,c,u,!1,(Q,te)=>(I.info(`Finding references to ${te.fileName} position ${te.pos} in project ${Q.getProjectName()}`),Q.getLanguageService().findReferences(te.fileName,te.pos)),(Q,te)=>{te($ue(Q.definition));for(let re of Q.references)te($ue(re))});if(Na(R))return R;let N=R.get(c);if(((b=(h=N?.[0])==null?void 0:h.references[0])==null?void 0:b.isDefinition)===void 0)R.forEach(Q=>{for(let te of Q)for(let re of te.references)delete re.isDefinition});else{let Q=s$e(d);for(let re of N)for(let ue of re.references)if(ue.isDefinition){Q.add(ue);break}let te=new Set;for(;;){let re=!1;if(R.forEach((ue,Ae)=>{if(te.has(Ae))return;Ae.getLanguageService().updateIsDefinitionOfReferencedSymbols(ue,Q)&&(te.add(Ae),re=!0)}),!re)break}R.forEach((re,ue)=>{if(!te.has(ue))for(let Ae of re)for(let de of Ae.references)de.isDefinition=!1})}let V=[],P=s$e(d);return R.forEach((Q,te)=>{for(let re of Q){let ue=o$e($ue(re.definition),te),Ae=ue===void 0?re.definition:{...re.definition,textSpan:Ed(ue.pos,re.definition.textSpan.length),fileName:ue.fileName,contextSpan:Sus(re.definition,te)},de=be(V,Be=>Aje(Be.definition,Ae,d));de||(de={definition:Ae,references:[]},V.push(de));for(let Be of re.references)!P.has(Be)&&!o$e($ue(Be),te)&&(P.add(Be),de.references.push(Be))}}),V.filter(Q=>Q.references.length!==0)}function DWt(n,c,u){for(let d of Na(n)?n:n.projects)u(d,c);!Na(n)&&n.symLinkedProjects&&n.symLinkedProjects.forEach((d,I)=>{for(let h of d)u(h,I)})}function zHr(n,c,u,d,I,h){let b=new Map,R=RA();R.enqueue({project:c,location:u}),DWt(n,u.fileName,(Ae,de)=>{let Be={fileName:de,pos:u.pos};R.enqueue({project:Ae,location:Be})});let N=c.projectService,V=c.getCancellationToken(),P=bus(c,u,d),Q=su(()=>c.isSourceOfProjectReferenceRedirect(P.fileName)?P:c.getLanguageService().getSourceMapper().tryGetGeneratedPosition(P)),te=su(()=>c.isSourceOfProjectReferenceRedirect(P.fileName)?P:c.getLanguageService().getSourceMapper().tryGetSourcePosition(P)),re=new Set;e:for(;!R.isEmpty();){for(;!R.isEmpty();){if(V.isCancellationRequested())break e;let{project:Ae,location:de}=R.dequeue();if(b.has(Ae)||qHr(Ae,de)||(M2(Ae),!Ae.containsFile(Of(de.fileName))))continue;let Be=ue(Ae,de);b.set(Ae,Be??bm),re.add(vus(Ae))}P&&(N.loadAncestorProjectTree(re),N.forEachEnabledProject(Ae=>{if(V.isCancellationRequested()||b.has(Ae))return;let de=Bus(P,Ae,Q,te);de&&R.enqueue({project:Ae,location:de})}))}if(b.size===1)return kl(b.values());return b;function ue(Ae,de){let Be=I(Ae,de);if(Be){for(let Fe of Be)h(Fe,Ne=>{let Me=N.getOriginalLocationEnsuringConfiguredProject(Ae,Ne);if(!Me)return;let De=N.getScriptInfo(Me.fileName);for(let Le of De.containingProjects)!Le.isOrphan()&&!b.has(Le)&&R.enqueue({project:Le,location:Me});let lt=N.getSymlinkedProjects(De);lt&<.forEach((Le,je)=>{for(let st of Le)!st.isOrphan()&&!b.has(st)&&R.enqueue({project:st,location:{fileName:je,pos:Me.pos}})})});return Be}}}function Bus(n,c,u,d){if(c.containsFile(Of(n.fileName))&&!qHr(c,n))return n;let I=u();if(I&&c.containsFile(Of(I.fileName)))return I;let h=d();return h&&c.containsFile(Of(h.fileName))?h:void 0}function qHr(n,c){if(!c)return!1;let u=n.getLanguageService().getProgram();if(!u)return!1;let d=u.getSourceFile(c.fileName);return!!d&&d.resolvedPath!==d.path&&d.resolvedPath!==n.toPath(c.fileName)}function vus(n){return HZ(n)?n.canonicalConfigFilePath:n.getProjectName()}function $ue({fileName:n,textSpan:c}){return{fileName:n,pos:c.start}}function o$e(n,c){return Nue(n,c.getSourceMapper(),u=>c.projectService.fileExists(u))}function $Hr(n,c){return zGe(n,c.getSourceMapper(),u=>c.projectService.fileExists(u))}function Sus(n,c){return fje(n,c.getSourceMapper(),u=>c.projectService.fileExists(u))}var eYr=["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"],wus=[...eYr,"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"],tYr=class MAt{constructor(c){this.changeSeq=0,this.handlers=new Map(Object.entries({status:()=>{let h={version:y};return this.requiredResponse(h)},openExternalProject:h=>(this.projectService.openExternalProject(h.arguments,!0),this.requiredResponse(!0)),openExternalProjects:h=>(this.projectService.openExternalProjects(h.arguments.projects),this.requiredResponse(!0)),closeExternalProject:h=>(this.projectService.closeExternalProject(h.arguments.projectFileName,!0),this.requiredResponse(!0)),synchronizeProjectList:h=>{let b=this.projectService.synchronizeProjectList(h.arguments.knownProjects,h.arguments.includeProjectReferenceRedirectInfo);if(!b.some(N=>N.projectErrors&&N.projectErrors.length!==0))return this.requiredResponse(b);let R=Ot(b,N=>!N.projectErrors||N.projectErrors.length===0?N:{info:N.info,changes:N.changes,files:N.files,projectErrors:this.convertToDiagnosticsWithLinePosition(N.projectErrors,void 0)});return this.requiredResponse(R)},updateOpen:h=>(this.changeSeq++,this.projectService.applyChangesInOpenFiles(h.arguments.openFiles&&dr(h.arguments.openFiles,b=>({fileName:b.file,content:b.fileContent,scriptKind:b.scriptKindName,projectRootPath:b.projectRootPath})),h.arguments.changedFiles&&dr(h.arguments.changedFiles,b=>({fileName:b.fileName,changes:gn(Lu(b.textChanges),R=>{let N=w.checkDefined(this.projectService.getScriptInfo(b.fileName)),V=N.lineOffsetToPosition(R.start.line,R.start.offset),P=N.lineOffsetToPosition(R.end.line,R.end.offset);return V>=0?{span:{start:V,length:P-V},newText:R.newText}:void 0})})),h.arguments.closedFiles),this.requiredResponse(!0)),applyChangedToOpenFiles:h=>(this.changeSeq++,this.projectService.applyChangesInOpenFiles(h.arguments.openFiles,h.arguments.changedFiles&&dr(h.arguments.changedFiles,b=>({fileName:b.fileName,changes:Lu(b.changes)})),h.arguments.closedFiles),this.requiredResponse(!0)),exit:()=>(this.exit(),this.notRequired()),definition:h=>this.requiredResponse(this.getDefinition(h.arguments,!0)),"definition-full":h=>this.requiredResponse(this.getDefinition(h.arguments,!1)),definitionAndBoundSpan:h=>this.requiredResponse(this.getDefinitionAndBoundSpan(h.arguments,!0)),"definitionAndBoundSpan-full":h=>this.requiredResponse(this.getDefinitionAndBoundSpan(h.arguments,!1)),findSourceDefinition:h=>this.requiredResponse(this.findSourceDefinition(h.arguments)),"emit-output":h=>this.requiredResponse(this.getEmitOutput(h.arguments)),typeDefinition:h=>this.requiredResponse(this.getTypeDefinition(h.arguments)),implementation:h=>this.requiredResponse(this.getImplementation(h.arguments,!0)),"implementation-full":h=>this.requiredResponse(this.getImplementation(h.arguments,!1)),references:h=>this.requiredResponse(this.getReferences(h.arguments,!0)),"references-full":h=>this.requiredResponse(this.getReferences(h.arguments,!1)),rename:h=>this.requiredResponse(this.getRenameLocations(h.arguments,!0)),"renameLocations-full":h=>this.requiredResponse(this.getRenameLocations(h.arguments,!1)),"rename-full":h=>this.requiredResponse(this.getRenameInfo(h.arguments)),open:h=>(this.openClientFile(Of(h.arguments.file),h.arguments.fileContent,qqe(h.arguments.scriptKindName),h.arguments.projectRootPath?Of(h.arguments.projectRootPath):void 0),this.notRequired()),quickinfo:h=>this.requiredResponse(this.getQuickInfoWorker(h.arguments,!0)),"quickinfo-full":h=>this.requiredResponse(this.getQuickInfoWorker(h.arguments,!1)),getOutliningSpans:h=>this.requiredResponse(this.getOutliningSpans(h.arguments,!0)),outliningSpans:h=>this.requiredResponse(this.getOutliningSpans(h.arguments,!1)),todoComments:h=>this.requiredResponse(this.getTodoComments(h.arguments)),indentation:h=>this.requiredResponse(this.getIndentation(h.arguments)),nameOrDottedNameSpan:h=>this.requiredResponse(this.getNameOrDottedNameSpan(h.arguments)),breakpointStatement:h=>this.requiredResponse(this.getBreakpointStatement(h.arguments)),braceCompletion:h=>this.requiredResponse(this.isValidBraceCompletion(h.arguments)),docCommentTemplate:h=>this.requiredResponse(this.getDocCommentTemplate(h.arguments)),getSpanOfEnclosingComment:h=>this.requiredResponse(this.getSpanOfEnclosingComment(h.arguments)),fileReferences:h=>this.requiredResponse(this.getFileReferences(h.arguments,!0)),"fileReferences-full":h=>this.requiredResponse(this.getFileReferences(h.arguments,!1)),format:h=>this.requiredResponse(this.getFormattingEditsForRange(h.arguments)),formatonkey:h=>this.requiredResponse(this.getFormattingEditsAfterKeystroke(h.arguments)),"format-full":h=>this.requiredResponse(this.getFormattingEditsForDocumentFull(h.arguments)),"formatonkey-full":h=>this.requiredResponse(this.getFormattingEditsAfterKeystrokeFull(h.arguments)),"formatRange-full":h=>this.requiredResponse(this.getFormattingEditsForRangeFull(h.arguments)),completionInfo:h=>this.requiredResponse(this.getCompletions(h.arguments,"completionInfo")),completions:h=>this.requiredResponse(this.getCompletions(h.arguments,"completions")),"completions-full":h=>this.requiredResponse(this.getCompletions(h.arguments,"completions-full")),completionEntryDetails:h=>this.requiredResponse(this.getCompletionEntryDetails(h.arguments,!1)),"completionEntryDetails-full":h=>this.requiredResponse(this.getCompletionEntryDetails(h.arguments,!0)),compileOnSaveAffectedFileList:h=>this.requiredResponse(this.getCompileOnSaveAffectedFileList(h.arguments)),compileOnSaveEmitFile:h=>this.requiredResponse(this.emitFile(h.arguments)),signatureHelp:h=>this.requiredResponse(this.getSignatureHelpItems(h.arguments,!0)),"signatureHelp-full":h=>this.requiredResponse(this.getSignatureHelpItems(h.arguments,!1)),"compilerOptionsDiagnostics-full":h=>this.requiredResponse(this.getCompilerOptionsDiagnostics(h.arguments)),"encodedSyntacticClassifications-full":h=>this.requiredResponse(this.getEncodedSyntacticClassifications(h.arguments)),"encodedSemanticClassifications-full":h=>this.requiredResponse(this.getEncodedSemanticClassifications(h.arguments)),cleanup:()=>(this.cleanup(),this.requiredResponse(!0)),semanticDiagnosticsSync:h=>this.requiredResponse(this.getSemanticDiagnosticsSync(h.arguments)),syntacticDiagnosticsSync:h=>this.requiredResponse(this.getSyntacticDiagnosticsSync(h.arguments)),suggestionDiagnosticsSync:h=>this.requiredResponse(this.getSuggestionDiagnosticsSync(h.arguments)),geterr:h=>(this.errorCheck.startNew(b=>this.getDiagnostics(b,h.arguments.delay,h.arguments.files)),this.notRequired()),geterrForProject:h=>(this.errorCheck.startNew(b=>this.getDiagnosticsForProject(b,h.arguments.delay,h.arguments.file)),this.notRequired()),change:h=>(this.change(h.arguments),this.notRequired()),configure:h=>(this.projectService.setHostConfiguration(h.arguments),this.doOutput(void 0,"configure",h.seq,!0),this.notRequired()),reload:h=>(this.reload(h.arguments,h.seq),this.requiredResponse({reloadFinished:!0})),saveto:h=>{let b=h.arguments;return this.saveToTmp(b.file,b.tmpfile),this.notRequired()},close:h=>{let b=h.arguments;return this.closeClientFile(b.file),this.notRequired()},navto:h=>this.requiredResponse(this.getNavigateToItems(h.arguments,!0)),"navto-full":h=>this.requiredResponse(this.getNavigateToItems(h.arguments,!1)),brace:h=>this.requiredResponse(this.getBraceMatching(h.arguments,!0)),"brace-full":h=>this.requiredResponse(this.getBraceMatching(h.arguments,!1)),navbar:h=>this.requiredResponse(this.getNavigationBarItems(h.arguments,!0)),"navbar-full":h=>this.requiredResponse(this.getNavigationBarItems(h.arguments,!1)),navtree:h=>this.requiredResponse(this.getNavigationTree(h.arguments,!0)),"navtree-full":h=>this.requiredResponse(this.getNavigationTree(h.arguments,!1)),documentHighlights:h=>this.requiredResponse(this.getDocumentHighlights(h.arguments,!0)),"documentHighlights-full":h=>this.requiredResponse(this.getDocumentHighlights(h.arguments,!1)),compilerOptionsForInferredProjects:h=>(this.setCompilerOptionsForInferredProjects(h.arguments),this.requiredResponse(!0)),projectInfo:h=>this.requiredResponse(this.getProjectInfo(h.arguments)),reloadProjects:()=>(this.projectService.reloadProjects(),this.notRequired()),jsxClosingTag:h=>this.requiredResponse(this.getJsxClosingTag(h.arguments)),linkedEditingRange:h=>this.requiredResponse(this.getLinkedEditingRange(h.arguments)),getCodeFixes:h=>this.requiredResponse(this.getCodeFixes(h.arguments,!0)),"getCodeFixes-full":h=>this.requiredResponse(this.getCodeFixes(h.arguments,!1)),getCombinedCodeFix:h=>this.requiredResponse(this.getCombinedCodeFix(h.arguments,!0)),"getCombinedCodeFix-full":h=>this.requiredResponse(this.getCombinedCodeFix(h.arguments,!1)),applyCodeActionCommand:h=>this.requiredResponse(this.applyCodeActionCommand(h.arguments)),getSupportedCodeFixes:h=>this.requiredResponse(this.getSupportedCodeFixes(h.arguments)),getApplicableRefactors:h=>this.requiredResponse(this.getApplicableRefactors(h.arguments)),getEditsForRefactor:h=>this.requiredResponse(this.getEditsForRefactor(h.arguments,!0)),getMoveToRefactoringFileSuggestions:h=>this.requiredResponse(this.getMoveToRefactoringFileSuggestions(h.arguments)),getPasteEdits:h=>this.requiredResponse(this.getPasteEdits(h.arguments)),"getEditsForRefactor-full":h=>this.requiredResponse(this.getEditsForRefactor(h.arguments,!1)),organizeImports:h=>this.requiredResponse(this.organizeImports(h.arguments,!0)),"organizeImports-full":h=>this.requiredResponse(this.organizeImports(h.arguments,!1)),getEditsForFileRename:h=>this.requiredResponse(this.getEditsForFileRename(h.arguments,!0)),"getEditsForFileRename-full":h=>this.requiredResponse(this.getEditsForFileRename(h.arguments,!1)),configurePlugin:h=>(this.configurePlugin(h.arguments),this.doOutput(void 0,"configurePlugin",h.seq,!0),this.notRequired()),selectionRange:h=>this.requiredResponse(this.getSmartSelectionRange(h.arguments,!0)),"selectionRange-full":h=>this.requiredResponse(this.getSmartSelectionRange(h.arguments,!1)),prepareCallHierarchy:h=>this.requiredResponse(this.prepareCallHierarchy(h.arguments)),provideCallHierarchyIncomingCalls:h=>this.requiredResponse(this.provideCallHierarchyIncomingCalls(h.arguments)),provideCallHierarchyOutgoingCalls:h=>this.requiredResponse(this.provideCallHierarchyOutgoingCalls(h.arguments)),toggleLineComment:h=>this.requiredResponse(this.toggleLineComment(h.arguments,!0)),"toggleLineComment-full":h=>this.requiredResponse(this.toggleLineComment(h.arguments,!1)),toggleMultilineComment:h=>this.requiredResponse(this.toggleMultilineComment(h.arguments,!0)),"toggleMultilineComment-full":h=>this.requiredResponse(this.toggleMultilineComment(h.arguments,!1)),commentSelection:h=>this.requiredResponse(this.commentSelection(h.arguments,!0)),"commentSelection-full":h=>this.requiredResponse(this.commentSelection(h.arguments,!1)),uncommentSelection:h=>this.requiredResponse(this.uncommentSelection(h.arguments,!0)),"uncommentSelection-full":h=>this.requiredResponse(this.uncommentSelection(h.arguments,!1)),provideInlayHints:h=>this.requiredResponse(this.provideInlayHints(h.arguments)),mapCode:h=>this.requiredResponse(this.mapCode(h.arguments))})),this.host=c.host,this.cancellationToken=c.cancellationToken,this.typingsInstaller=c.typingsInstaller||Vqe,this.byteLength=c.byteLength,this.hrtime=c.hrtime,this.logger=c.logger,this.canUseEvents=c.canUseEvents,this.suppressDiagnosticEvents=c.suppressDiagnosticEvents,this.noGetErrOnBackgroundUpdate=c.noGetErrOnBackgroundUpdate;let{throttleWaitMilliseconds:u}=c;this.eventHandler=this.canUseEvents?c.eventHandler||(h=>this.defaultEventHandler(h)):void 0;let d={executeWithRequestId:(h,b)=>this.executeWithRequestId(h,b),getCurrentRequestId:()=>this.currentRequestId,getServerHost:()=>this.host,logError:(h,b)=>this.logError(h,b),sendRequestCompletedEvent:h=>this.sendRequestCompletedEvent(h),isCancellationRequested:()=>this.cancellationToken.isCancellationRequested()};this.errorCheck=new hus(d);let I={host:this.host,logger:this.logger,cancellationToken:this.cancellationToken,useSingleInferredProject:c.useSingleInferredProject,useInferredProjectPerProjectRoot:c.useInferredProjectPerProjectRoot,typingsInstaller:this.typingsInstaller,throttleWaitMilliseconds:u,eventHandler:this.eventHandler,suppressDiagnosticEvents:this.suppressDiagnosticEvents,globalPlugins:c.globalPlugins,pluginProbeLocations:c.pluginProbeLocations,allowLocalPluginLoads:c.allowLocalPluginLoads,typesMapLocation:c.typesMapLocation,serverMode:c.serverMode,session:this,canUseWatchEvents:c.canUseWatchEvents,incrementalVerifier:c.incrementalVerifier};switch(this.projectService=new BWt(I),this.projectService.setPerformanceEventHandler(this.performanceEventHandler.bind(this)),this.gcTimer=new qVt(this.host,7e3,this.logger),this.projectService.serverMode){case 0:break;case 1:eYr.forEach(h=>this.handlers.set(h,b=>{throw new Error(`Request: ${b.command} not allowed in LanguageServiceMode.PartialSemantic`)}));break;case 2:wus.forEach(h=>this.handlers.set(h,b=>{throw new Error(`Request: ${b.command} not allowed in LanguageServiceMode.Syntactic`)}));break;default:w.assertNever(this.projectService.serverMode)}}sendRequestCompletedEvent(c){this.event({request_seq:c},"requestCompleted")}addPerformanceData(c,u){this.performanceData||(this.performanceData={}),this.performanceData[c]=(this.performanceData[c]??0)+u}performanceEventHandler(c){switch(c.kind){case"UpdateGraph":this.addPerformanceData("updateGraphDurationMs",c.durationMs);break;case"CreatePackageJsonAutoImportProvider":this.addPerformanceData("createAutoImportProviderProgramDurationMs",c.durationMs);break}}defaultEventHandler(c){switch(c.eventName){case gZe:this.projectsUpdatedInBackgroundEvent(c.data.openFiles);break;case Qqe:this.event({projectName:c.data.project.getProjectName(),reason:c.data.reason},c.eventName);break;case Mqe:this.event({projectName:c.data.project.getProjectName()},c.eventName);break;case Hqe:case Uqe:case Kqe:case jqe:this.event(c.data,c.eventName);break;case Yqe:this.event({triggerFile:c.data.triggerFile,configFile:c.data.configFileName,diagnostics:Ot(c.data.diagnostics,u=>L0e(u,!0))},c.eventName);break;case Xqe:{this.event({projectName:c.data.project.getProjectName(),languageServiceEnabled:c.data.languageServiceEnabled},c.eventName);break}case Jqe:{this.event({telemetryEventName:c.eventName,payload:c.data},"telemetry");break}}}projectsUpdatedInBackgroundEvent(c){this.projectService.logger.info(`got projects updated in background ${c}`),c.length&&(!this.suppressDiagnosticEvents&&!this.noGetErrOnBackgroundUpdate&&(this.projectService.logger.info(`Queueing diagnostics update for ${c}`),this.errorCheck.startNew(u=>this.updateErrorCheck(u,c,100,!0))),this.event({openFiles:c},gZe))}logError(c,u){this.logErrorWorker(c,u)}logErrorWorker(c,u,d){let I="Exception on executing command "+u;if(c.message&&(I+=`: +`+Eue(c.message),c.stack&&(I+=` +`+Eue(c.stack))),this.logger.hasLevel(3)){if(d)try{let{file:h,project:b}=this.getFileAndProject(d),R=b.getScriptInfoForNormalizedPath(h);if(R){let N=t7(R.getSnapshot());I+=` -File text of ${d.file}:${pue(N)} +File text of ${d.file}:${Eue(N)} `}}catch{}if(c.ProgramFiles){I+=` Program files: ${JSON.stringify(c.ProgramFiles)} @@ -847,263 +847,263 @@ Program files: ${JSON.stringify(c.ProgramFiles)} Projects:: `;let h=0,b=R=>{I+=` -Project '${R.projectName}' (${R0e[R.projectKind]}) ${h} +Project '${R.projectName}' (${x0e[R.projectKind]}) ${h} `,I+=R.filesToString(!0),I+=` ----------------------------------------------- -`,h++};this.projectService.externalProjects.forEach(b),this.projectService.configuredProjects.forEach(b),this.projectService.inferredProjects.forEach(b)}}this.logger.msg(I,"Err")}send(c){if(c.type==="event"&&!this.canUseEvents){this.logger.hasLevel(3)&&this.logger.info(`Session does not support events: ignored event: ${AP(c)}`);return}this.writeMessage(c)}writeMessage(c){var u;let d=SWt(c,this.logger,this.byteLength,this.host.newLine);(u=Kl)==null||u.logEvent(`Response message size: ${d.length}`),this.host.write(d)}event(c,u){this.send(wWt(u,c))}doOutput(c,u,d,I,h){let b={seq:0,type:"response",command:u,request_seq:d,success:I,performanceData:this.performanceData};if(I){let R;if(Ra(c))b.body=c,R=c.metadata,delete c.metadata;else if(typeof c=="object")if(c.metadata){let{metadata:N,...V}=c;b.body=V,R=N}else b.body=c;else b.body=c;R&&(b.metadata=R)}else w.assert(c===void 0);h&&(b.message=h),this.send(b)}semanticCheck(c,u){var d,I;(d=Mi)==null||d.push(Mi.Phase.Session,"semanticCheck",{file:c,configFilePath:u.canonicalConfigFilePath});let h=MHr(u,c)?ym:u.getLanguageService().getSemanticDiagnostics(c).filter(b=>!!b.file);this.sendDiagnosticsEvent(c,u,h,"semanticDiag"),(I=Mi)==null||I.pop()}syntacticCheck(c,u){var d,I;(d=Mi)==null||d.push(Mi.Phase.Session,"syntacticCheck",{file:c,configFilePath:u.canonicalConfigFilePath}),this.sendDiagnosticsEvent(c,u,u.getLanguageService().getSyntacticDiagnostics(c),"syntaxDiag"),(I=Mi)==null||I.pop()}suggestionCheck(c,u){var d,I;(d=Mi)==null||d.push(Mi.Phase.Session,"suggestionCheck",{file:c,configFilePath:u.canonicalConfigFilePath}),this.sendDiagnosticsEvent(c,u,u.getLanguageService().getSuggestionDiagnostics(c),"suggestionDiag"),(I=Mi)==null||I.pop()}sendDiagnosticsEvent(c,u,d,I){try{this.event({file:c,diagnostics:d.map(h=>QHr(c,u,h))},I)}catch(h){this.logError(h,I)}}updateErrorCheck(c,u,d,I=!0){w.assert(!this.suppressDiagnosticEvents);let h=this.changeSeq,b=Math.min(d,200),R=0,N=()=>{R++,u.length>R&&c.delay("checkOne",b,V)},V=()=>{if(this.changeSeq!==h)return;let P=u[R];if(Xa(P)&&(P=this.toPendingErrorCheck(P),!P)){N();return}let{fileName:M,project:te}=P;if(M2(te),!!te.containsFile(M,I)&&(this.syntacticCheck(M,te),this.changeSeq===h)){if(te.projectService.serverMode!==0){N();return}c.immediate("semanticCheck",()=>{if(this.semanticCheck(M,te),this.changeSeq===h){if(this.getPreferences(M).disableSuggestions){N();return}c.immediate("suggestionCheck",()=>{this.suggestionCheck(M,te),N()})}})}};u.length>R&&this.changeSeq===h&&c.delay("checkOne",d,V)}cleanProjects(c,u){if(u){this.logger.info(`cleaning ${c}`);for(let d of u)d.getLanguageService(!1).cleanupSemanticCache(),d.cleanupProgram()}}cleanup(){this.cleanProjects("inferred projects",this.projectService.inferredProjects),this.cleanProjects("configured projects",on(this.projectService.configuredProjects.values())),this.cleanProjects("external projects",this.projectService.externalProjects),this.host.gc&&(this.logger.info("host.gc()"),this.host.gc())}getEncodedSyntacticClassifications(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c);return d.getEncodedSyntacticClassifications(u,c)}getEncodedSemanticClassifications(c){let{file:u,project:d}=this.getFileAndProject(c),I=c.format==="2020"?"2020":"original";return d.getLanguageService().getEncodedSemanticClassifications(u,c,I)}getProject(c){return c===void 0?void 0:this.projectService.findProject(c)}getConfigFileAndProject(c){let u=this.getProject(c.projectFileName),d=Pf(c.file);return{configFile:u&&u.hasConfigFile(d)?d:void 0,project:u}}getConfigFileDiagnostics(c,u,d){let I=u.getAllProjectErrors(),h=u.getLanguageService().getCompilerOptionsDiagnostics(),b=Gt(vi(I,h),R=>!!R.file&&R.file.fileName===c);return d?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(b):Ot(b,R=>F0e(R,!1))}convertToDiagnosticsWithLinePositionFromDiagnosticFile(c){return c.map(u=>({message:xN(u.messageText,this.host.newLine),start:u.start,length:u.length,category:jh(u),code:u.code,source:u.source,startLocation:u.file&&ere(Ll(u.file,u.start)),endLocation:u.file&&ere(Ll(u.file,u.start+u.length)),reportsUnnecessary:u.reportsUnnecessary,reportsDeprecated:u.reportsDeprecated,relatedInformation:Ot(u.relatedInformation,r$e)}))}getCompilerOptionsDiagnostics(c){let u=this.getProject(c.projectFileName);return this.convertToDiagnosticsWithLinePosition(Gt(u.getLanguageService().getCompilerOptionsDiagnostics(),d=>!d.file),void 0)}convertToDiagnosticsWithLinePosition(c,u){return c.map(d=>({message:xN(d.messageText,this.host.newLine),start:d.start,length:d.length,category:jh(d),code:d.code,source:d.source,startLocation:u&&u.positionToLineOffset(d.start),endLocation:u&&u.positionToLineOffset(d.start+d.length),reportsUnnecessary:d.reportsUnnecessary,reportsDeprecated:d.reportsDeprecated,relatedInformation:Ot(d.relatedInformation,r$e)}))}getDiagnosticsWorker(c,u,d,I){let{project:h,file:b}=this.getFileAndProject(c);if(u&&MHr(h,b))return ym;let R=h.getScriptInfoForNormalizedPath(b),N=d(h,b);return I?this.convertToDiagnosticsWithLinePosition(N,R):N.map(V=>QHr(b,h,V))}getDefinition(c,u){let{file:d,project:I}=this.getFileAndProject(c),h=this.getPositionInFile(c,d),b=this.mapDefinitionInfoLocations(I.getLanguageService().getDefinitionAtPosition(d,h)||ym,I);return u?this.mapDefinitionInfo(b,I):b.map(OAt.mapToOriginalLocation)}mapDefinitionInfoLocations(c,u){return c.map(d=>{let I=JHr(d,u);return I?{...I,containerKind:d.containerKind,containerName:d.containerName,kind:d.kind,name:d.name,failedAliasResolution:d.failedAliasResolution,...d.unverified&&{unverified:d.unverified}}:d})}getDefinitionAndBoundSpan(c,u){let{file:d,project:I}=this.getFileAndProject(c),h=this.getPositionInFile(c,d),b=w.checkDefined(I.getScriptInfo(d)),R=I.getLanguageService().getDefinitionAndBoundSpan(d,h);if(!R||!R.definitions)return{definitions:ym,textSpan:void 0};let N=this.mapDefinitionInfoLocations(R.definitions,I),{textSpan:V}=R;return u?{definitions:this.mapDefinitionInfo(N,I),textSpan:sD(V,b)}:{definitions:N.map(OAt.mapToOriginalLocation),textSpan:V}}findSourceDefinition(c){var u;let{file:d,project:I}=this.getFileAndProject(c),h=this.getPositionInFile(c,d),b=I.getLanguageService().getDefinitionAtPosition(d,h),R=this.mapDefinitionInfoLocations(b||ym,I).slice();if(this.projectService.serverMode===0&&(!lr(R,re=>Pf(re.fileName)!==d&&!re.isAmbient)||lr(R,re=>!!re.failedAliasResolution))){let re=Ud(Be=>Be.textSpan.start,gje(this.host.useCaseSensitiveFileNames));R?.forEach(Be=>re.add(Be));let ue=I.getNoDtsResolutionProject(d),Ae=ue.getLanguageService(),de=(u=Ae.getDefinitionAtPosition(d,h,!0,!1))==null?void 0:u.filter(Be=>Pf(Be.fileName)!==d);if(lr(de))for(let Be of de){if(Be.unverified){let Fe=M(Be,I.getLanguageService().getProgram(),Ae.getProgram());if(lr(Fe)){for(let Ne of Fe)re.add(Ne);continue}}re.add(Be)}else{let Be=R.filter(Fe=>Pf(Fe.fileName)!==d&&Fe.isAmbient);for(let Fe of lr(Be)?Be:P()){let Ne=V(Fe.fileName,d,ue);if(!Ne)continue;let Qe=this.projectService.getOrCreateScriptInfoNotOpenedByClient(Ne,ue.currentDirectory,ue.directoryStructureHost,!1);if(!Qe)continue;ue.containsScriptInfo(Qe)||(ue.addRoot(Qe),ue.updateGraph());let De=Ae.getProgram(),lt=w.checkDefined(De.getSourceFile(Ne));for(let Le of te(Fe.name,lt,De))re.add(Le)}}R=on(re.values())}return R=R.filter(re=>!re.isAmbient&&!re.failedAliasResolution),this.mapDefinitionInfo(R,I);function V(re,ue,Ae){var de,Be,Fe;let Ne=dle(re);if(Ne&&re.lastIndexOf(Qx)===Ne.topLevelNodeModulesIndex){let Qe=re.substring(0,Ne.packageRootIndex),De=(de=I.getModuleResolutionCache())==null?void 0:de.getPackageJsonInfoCache(),lt=I.getCompilationSettings(),Le=Kle(Oc(Qe+"/package.json",I.getCurrentDirectory()),Ule(De,I,lt));if(!Le)return;let je=Z8e(Le,{moduleResolution:2},I,I.getModuleResolutionCache()),st=re.substring(Ne.topLevelPackageNameIndex+1,Ne.packageRootIndex),nt=jle(a_e(st)),qe=I.toPath(re);if(je&&lr(je,it=>I.toPath(it)===qe))return(Be=Ae.resolutionCache.resolveSingleModuleNameWithoutWatching(nt,ue).resolvedModule)==null?void 0:Be.resolvedFileName;{let it=re.substring(Ne.packageRootIndex+1),It=`${nt}/${o0(it)}`;return(Fe=Ae.resolutionCache.resolveSingleModuleNameWithoutWatching(It,ue).resolvedModule)==null?void 0:Fe.resolvedFileName}}}function P(){let re=I.getLanguageService(),ue=re.getProgram(),Ae=lb(ue.getSourceFile(d),h);return(XA(Ae)||sr(Ae))&&Cp(Ae.parent)&&DDe(Ae,de=>{var Be;if(de===Ae)return;let Fe=(Be=re.getDefinitionAtPosition(d,de.getStart(),!0,!1))==null?void 0:Be.filter(Ne=>Pf(Ne.fileName)!==d&&Ne.isAmbient).map(Ne=>({fileName:Ne.fileName,name:T2(Ae)}));if(lr(Fe))return Fe})||ym}function M(re,ue,Ae){var de;let Be=Ae.getSourceFile(re.fileName);if(!Be)return;let Fe=lb(ue.getSourceFile(d),h),Ne=ue.getTypeChecker().getSymbolAtLocation(Fe),Qe=Ne&&zd(Ne,276);if(!Qe)return;let De=((de=Qe.propertyName)==null?void 0:de.text)||Qe.name.text;return te(De,Be,Ae)}function te(re,ue,Ae){let de=Yp.Core.getTopMostDeclarationNamesInFile(re,ue);return tr(de,Be=>{let Fe=Ae.getTypeChecker().getSymbolAtLocation(Be),Ne=X8(Be);if(Fe&&Ne)return Kte.createDefinitionInfo(Ne,Ae.getTypeChecker(),Fe,Ne,!0)})}}getEmitOutput(c){let{file:u,project:d}=this.getFileAndProject(c);if(!d.shouldEmitFile(d.getScriptInfo(u)))return{emitSkipped:!0,outputFiles:[],diagnostics:[]};let I=d.getLanguageService().getEmitOutput(u);return c.richResponse?{...I,diagnostics:c.includeLinePosition?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(I.diagnostics):I.diagnostics.map(h=>F0e(h,!0))}:I}mapJSDocTagInfo(c,u,d){return c?c.map(I=>{var h;return{...I,text:d?this.mapDisplayParts(I.text,u):(h=I.text)==null?void 0:h.map(b=>b.text).join("")}}):[]}mapDisplayParts(c,u){return c?c.map(d=>d.kind!=="linkName"?d:{...d,target:this.toFileSpan(d.target.fileName,d.target.textSpan,u)}):[]}mapSignatureHelpItems(c,u,d){return c.map(I=>({...I,documentation:this.mapDisplayParts(I.documentation,u),parameters:I.parameters.map(h=>({...h,documentation:this.mapDisplayParts(h.documentation,u)})),tags:this.mapJSDocTagInfo(I.tags,u,d)}))}mapDefinitionInfo(c,u){return c.map(d=>({...this.toFileSpanWithContext(d.fileName,d.textSpan,d.contextSpan,u),...d.unverified&&{unverified:d.unverified}}))}static mapToOriginalLocation(c){return c.originalFileName?(w.assert(c.originalTextSpan!==void 0,"originalTextSpan should be present if originalFileName is"),{...c,fileName:c.originalFileName,textSpan:c.originalTextSpan,targetFileName:c.fileName,targetTextSpan:c.textSpan,contextSpan:c.originalContextSpan,targetContextSpan:c.contextSpan}):c}toFileSpan(c,u,d){let I=d.getLanguageService(),h=I.toLineColumnOffset(c,u.start),b=I.toLineColumnOffset(c,Uu(u));return{file:c,start:{line:h.line+1,offset:h.character+1},end:{line:b.line+1,offset:b.character+1}}}toFileSpanWithContext(c,u,d,I){let h=this.toFileSpan(c,u,I),b=d&&this.toFileSpan(c,d,I);return b?{...h,contextStart:b.start,contextEnd:b.end}:h}getTypeDefinition(c){let{file:u,project:d}=this.getFileAndProject(c),I=this.getPositionInFile(c,u),h=this.mapDefinitionInfoLocations(d.getLanguageService().getTypeDefinitionAtPosition(u,I)||ym,d);return this.mapDefinitionInfo(h,d)}mapImplementationLocations(c,u){return c.map(d=>{let I=JHr(d,u);return I?{...I,kind:d.kind,displayParts:d.displayParts}:d})}getImplementation(c,u){let{file:d,project:I}=this.getFileAndProject(c),h=this.getPositionInFile(c,d),b=this.mapImplementationLocations(I.getLanguageService().getImplementationAtPosition(d,h)||ym,I);return u?b.map(({fileName:R,textSpan:N,contextSpan:V})=>this.toFileSpanWithContext(R,N,V,I)):b.map(OAt.mapToOriginalLocation)}getSyntacticDiagnosticsSync(c){let{configFile:u}=this.getConfigFileAndProject(c);return u?ym:this.getDiagnosticsWorker(c,!1,(d,I)=>d.getLanguageService().getSyntacticDiagnostics(I),!!c.includeLinePosition)}getSemanticDiagnosticsSync(c){let{configFile:u,project:d}=this.getConfigFileAndProject(c);return u?this.getConfigFileDiagnostics(u,d,!!c.includeLinePosition):this.getDiagnosticsWorker(c,!0,(I,h)=>I.getLanguageService().getSemanticDiagnostics(h).filter(b=>!!b.file),!!c.includeLinePosition)}getSuggestionDiagnosticsSync(c){let{configFile:u}=this.getConfigFileAndProject(c);return u?ym:this.getDiagnosticsWorker(c,!0,(d,I)=>d.getLanguageService().getSuggestionDiagnostics(I),!!c.includeLinePosition)}getJsxClosingTag(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),I=this.getPositionInFile(c,u),h=d.getJsxClosingTagAtPosition(u,I);return h===void 0?void 0:{newText:h.newText,caretOffset:0}}getLinkedEditingRange(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),I=this.getPositionInFile(c,u),h=d.getLinkedEditingRangeAtPosition(u,I),b=this.projectService.getScriptInfoForNormalizedPath(u);if(!(b===void 0||h===void 0))return bus(h,b)}getDocumentHighlights(c,u){let{file:d,project:I}=this.getFileAndProject(c),h=this.getPositionInFile(c,d),b=I.getLanguageService().getDocumentHighlights(d,h,c.filesToSearch);return b?u?b.map(({fileName:R,highlightSpans:N})=>{let V=I.getScriptInfo(R);return{file:R,highlightSpans:N.map(({textSpan:P,kind:M,contextSpan:te})=>({...NWt(P,te,V),kind:M}))}}):b:ym}provideInlayHints(c){let{file:u,project:d}=this.getFileAndProject(c),I=this.projectService.getScriptInfoForNormalizedPath(u);return d.getLanguageService().provideInlayHints(u,c,this.getPreferences(u)).map(b=>{let{position:R,displayParts:N}=b;return{...b,position:I.positionToLineOffset(R),displayParts:N?.map(({text:V,span:P,file:M})=>{if(P){w.assertIsDefined(M,"Target file should be defined together with its span.");let te=this.projectService.getScriptInfo(M);return{text:V,span:{start:te.positionToLineOffset(P.start),end:te.positionToLineOffset(P.start+P.length),file:M}}}else return{text:V}})}})}mapCode(c){var u;let d=this.getHostFormatOptions(),I=this.getHostPreferences(),{file:h,languageService:b}=this.getFileAndLanguageServiceForSyntacticOperation(c),R=this.projectService.getScriptInfoForNormalizedPath(h),N=(u=c.mapping.focusLocations)==null?void 0:u.map(P=>P.map(M=>{let te=R.lineOffsetToPosition(M.start.line,M.start.offset),re=R.lineOffsetToPosition(M.end.line,M.end.offset);return{start:te,length:re-te}})),V=b.mapCode(h,c.mapping.contents,N,d,I);return this.mapTextChangesToCodeEdits(V)}setCompilerOptionsForInferredProjects(c){this.projectService.setCompilerOptionsForInferredProjects(c.options,c.projectRootPath)}getProjectInfo(c){return this.getProjectInfoWorker(c.file,c.projectFileName,c.needFileNameList,!1)}getProjectInfoWorker(c,u,d,I){let{project:h}=this.getFileAndProjectWorker(c,u);return M2(h),{configFileName:h.getProjectName(),languageServiceDisabled:!h.languageServiceEnabled,fileNames:d?h.getFileNames(!1,I):void 0}}getRenameInfo(c){let{file:u,project:d}=this.getFileAndProject(c),I=this.getPositionInFile(c,u),h=this.getPreferences(u);return d.getLanguageService().getRenameInfo(u,I,h)}getProjects(c,u,d){let I,h;if(c.projectFileName){let b=this.getProject(c.projectFileName);b&&(I=[b])}else{let b=u?this.projectService.getScriptInfoEnsuringProjectsUptoDate(c.file):this.projectService.getScriptInfo(c.file);if(b)u||this.projectService.ensureDefaultProjectForFile(b);else return d?ym:(this.projectService.logErrorForScriptInfoNotFound(c.file),VG.ThrowNoProject());I=b.containingProjects,h=this.projectService.getSymlinkedProjects(b)}return I=Gt(I,b=>b.languageServiceEnabled&&!b.isOrphan()),!d&&(!I||!I.length)&&!h?(this.projectService.logErrorForScriptInfoNotFound(c.file??c.projectFileName),VG.ThrowNoProject()):h?{projects:I,symLinkedProjects:h}:I}getDefaultProject(c){if(c.projectFileName){let d=this.getProject(c.projectFileName);if(d)return d;if(!c.file)return VG.ThrowNoProject()}return this.projectService.getScriptInfo(c.file).getDefaultProject()}getRenameLocations(c,u){let d=Pf(c.file),I=this.getPositionInFile(c,d),h=this.getProjects(c),b=this.getDefaultProject(c),R=this.getPreferences(d),N=this.mapRenameInfo(b.getLanguageService().getRenameInfo(d,I,R),w.checkDefined(this.projectService.getScriptInfo(d)));if(!N.canRename)return u?{info:N,locs:[]}:[];let V=pus(h,b,{fileName:c.file,pos:I},!!c.findInStrings,!!c.findInComments,R,this.host.useCaseSensitiveFileNames);return u?{info:N,locs:this.toSpanGroups(V)}:V}mapRenameInfo(c,u){if(c.canRename){let{canRename:d,fileToRename:I,displayName:h,fullDisplayName:b,kind:R,kindModifiers:N,triggerSpan:V}=c;return{canRename:d,fileToRename:I,displayName:h,fullDisplayName:b,kind:R,kindModifiers:N,triggerSpan:sD(V,u)}}else return c}toSpanGroups(c){let u=new Map;for(let{fileName:d,textSpan:I,contextSpan:h,originalContextSpan:b,originalTextSpan:R,originalFileName:N,...V}of c){let P=u.get(d);P||u.set(d,P={file:d,locs:[]});let M=w.checkDefined(this.projectService.getScriptInfo(d));P.locs.push({...NWt(I,h,M),...V})}return on(u.values())}getReferences(c,u){let d=Pf(c.file),I=this.getProjects(c),h=this.getPositionInFile(c,d),b=Ius(I,this.getDefaultProject(c),{fileName:c.file,pos:h},this.host.useCaseSensitiveFileNames,this.logger);if(!u)return b;let R=this.getPreferences(d),N=this.getDefaultProject(c),V=N.getScriptInfoForNormalizedPath(d),P=N.getLanguageService().getQuickInfoAtPosition(d,h),M=P?o0e(P.displayParts):"",te=P&&P.textSpan,re=te?V.positionToLineOffset(te.start).offset:0,ue=te?V.getSnapshot().getText(te.start,Uu(te)):"";return{refs:Fr(b,de=>de.references.map(Be=>zHr(this.projectService,Be,R))),symbolName:ue,symbolStartOffset:re,symbolDisplayString:M}}getFileReferences(c,u){let d=this.getProjects(c),I=c.file,h=this.getPreferences(Pf(I)),b=[],R=n$e(this.host.useCaseSensitiveFileNames);return TWt(d,void 0,V=>{if(V.getCancellationToken().isCancellationRequested())return;let P=V.getLanguageService().getFileReferences(I);if(P)for(let M of P)R.has(M)||(b.push(M),R.add(M))}),u?{refs:b.map(V=>zHr(this.projectService,V,h)),symbolName:`"${c.file}"`}:b}openClientFile(c,u,d,I){this.projectService.openClientFileWithNormalizedPath(c,u,d,!1,I)}getPosition(c,u){return c.position!==void 0?c.position:u.lineOffsetToPosition(c.line,c.offset)}getPositionInFile(c,u){let d=this.projectService.getScriptInfoForNormalizedPath(u);return this.getPosition(c,d)}getFileAndProject(c){return this.getFileAndProjectWorker(c.file,c.projectFileName)}getFileAndLanguageServiceForSyntacticOperation(c){let{file:u,project:d}=this.getFileAndProject(c);return{file:u,languageService:d.getLanguageService(!1)}}getFileAndProjectWorker(c,u){let d=Pf(c),I=this.getProject(u)||this.projectService.ensureDefaultProjectForFile(d);return{file:d,project:I}}getOutliningSpans(c,u){let{file:d,languageService:I}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=I.getOutliningSpans(d);if(u){let b=this.projectService.getScriptInfoForNormalizedPath(d);return h.map(R=>({textSpan:sD(R.textSpan,b),hintSpan:sD(R.hintSpan,b),bannerText:R.bannerText,autoCollapse:R.autoCollapse,kind:R.kind}))}else return h}getTodoComments(c){let{file:u,project:d}=this.getFileAndProject(c);return d.getLanguageService().getTodoComments(u,c.descriptors)}getDocCommentTemplate(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),I=this.getPositionInFile(c,u);return d.getDocCommentTemplateAtPosition(u,I,this.getPreferences(u),this.getFormatOptions(u))}getSpanOfEnclosingComment(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),I=c.onlyMultiLine,h=this.getPositionInFile(c,u);return d.getSpanOfEnclosingComment(u,h,I)}getIndentation(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),I=this.getPositionInFile(c,u),h=c.options?$te(c.options):this.getFormatOptions(u),b=d.getIndentationAtPosition(u,I,h);return{position:I,indentation:b}}getBreakpointStatement(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),I=this.getPositionInFile(c,u);return d.getBreakpointStatementAtPosition(u,I)}getNameOrDottedNameSpan(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),I=this.getPositionInFile(c,u);return d.getNameOrDottedNameSpan(u,I,I)}isValidBraceCompletion(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),I=this.getPositionInFile(c,u);return d.isValidBraceCompletionAtPosition(u,I,c.openingBrace.charCodeAt(0))}getQuickInfoWorker(c,u){let{file:d,project:I}=this.getFileAndProject(c),h=this.projectService.getScriptInfoForNormalizedPath(d),b=I.getLanguageService().getQuickInfoAtPosition(d,this.getPosition(c,h));if(!b)return;let R=!!this.getPreferences(d).displayPartsForJSDoc;if(u){let N=o0e(b.displayParts);return{kind:b.kind,kindModifiers:b.kindModifiers,start:h.positionToLineOffset(b.textSpan.start),end:h.positionToLineOffset(Uu(b.textSpan)),displayString:N,documentation:R?this.mapDisplayParts(b.documentation,I):o0e(b.documentation),tags:this.mapJSDocTagInfo(b.tags,I,R)}}else return R?b:{...b,tags:this.mapJSDocTagInfo(b.tags,I,!1)}}getFormattingEditsForRange(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),I=this.projectService.getScriptInfoForNormalizedPath(u),h=I.lineOffsetToPosition(c.line,c.offset),b=I.lineOffsetToPosition(c.endLine,c.endOffset),R=d.getFormattingEditsForRange(u,h,b,this.getFormatOptions(u));if(R)return R.map(N=>this.convertTextChangeToCodeEdit(N,I))}getFormattingEditsForRangeFull(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),I=c.options?$te(c.options):this.getFormatOptions(u);return d.getFormattingEditsForRange(u,c.position,c.endPosition,I)}getFormattingEditsForDocumentFull(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),I=c.options?$te(c.options):this.getFormatOptions(u);return d.getFormattingEditsForDocument(u,I)}getFormattingEditsAfterKeystrokeFull(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),I=c.options?$te(c.options):this.getFormatOptions(u);return d.getFormattingEditsAfterKeystroke(u,c.position,c.key,I)}getFormattingEditsAfterKeystroke(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),I=this.projectService.getScriptInfoForNormalizedPath(u),h=I.lineOffsetToPosition(c.line,c.offset),b=this.getFormatOptions(u),R=d.getFormattingEditsAfterKeystroke(u,h,c.key,b);if(c.key===` -`&&(!R||R.length===0||gus(R,h))){let{lineText:N,absolutePosition:V}=I.textStorage.getAbsolutePositionAndLineText(c.line);if(N&&N.search("\\S")<0){let P=d.getIndentationAtPosition(u,h,b),M=0,te,re;for(te=0,re=N.length;te({start:I.positionToLineOffset(N.span.start),end:I.positionToLineOffset(Uu(N.span)),newText:N.newText?N.newText:""}))}getCompletions(c,u){let{file:d,project:I}=this.getFileAndProject(c),h=this.projectService.getScriptInfoForNormalizedPath(d),b=this.getPosition(c,h),R=I.getLanguageService().getCompletionsAtPosition(d,b,{...dWt(this.getPreferences(d)),triggerCharacter:c.triggerCharacter,triggerKind:c.triggerKind,includeExternalModuleExports:c.includeExternalModuleExports,includeInsertTextCompletions:c.includeInsertTextCompletions},I.projectService.getFormatCodeOptions(d));if(R===void 0)return;if(u==="completions-full")return R;let N=c.prefix||"",V=tr(R.entries,M=>{if(R.isMemberCompletion||uc(M.name.toLowerCase(),N.toLowerCase())){let{name:te,kind:re,kindModifiers:ue,sortText:Ae,insertText:de,filterText:Be,replacementSpan:Fe,hasAction:Ne,source:Qe,sourceDisplay:De,labelDetails:lt,isSnippet:Le,isRecommended:je,isPackageJsonImport:st,isImportStatementCompletion:nt,data:qe}=M,it=Fe?sD(Fe,h):void 0;return{name:te,kind:re,kindModifiers:ue,sortText:Ae,insertText:de,filterText:Be,replacementSpan:it,isSnippet:Le,hasAction:Ne||void 0,source:Qe,sourceDisplay:De,labelDetails:lt,isRecommended:je,isPackageJsonImport:st,isImportStatementCompletion:nt,data:qe}}});return u==="completions"?(R.metadata&&(V.metadata=R.metadata),V):{...R,optionalReplacementSpan:R.optionalReplacementSpan&&sD(R.optionalReplacementSpan,h),entries:V}}getCompletionEntryDetails(c,u){let{file:d,project:I}=this.getFileAndProject(c),h=this.projectService.getScriptInfoForNormalizedPath(d),b=this.getPosition(c,h),R=I.projectService.getFormatCodeOptions(d),N=!!this.getPreferences(d).displayPartsForJSDoc,V=tr(c.entryNames,P=>{let{name:M,source:te,data:re}=typeof P=="string"?{name:P,source:void 0,data:void 0}:P;return I.getLanguageService().getCompletionEntryDetails(d,b,M,R,te,this.getPreferences(d),re?ps(re,wus):void 0)});return u?N?V:V.map(P=>({...P,tags:this.mapJSDocTagInfo(P.tags,I,!1)})):V.map(P=>({...P,codeActions:Ot(P.codeActions,M=>this.mapCodeAction(M)),documentation:this.mapDisplayParts(P.documentation,I),tags:this.mapJSDocTagInfo(P.tags,I,N)}))}getCompileOnSaveAffectedFileList(c){let u=this.getProjects(c,!0,!0),d=this.projectService.getScriptInfo(c.file);return d?dus(d,I=>this.projectService.getScriptInfoForPath(I),u,(I,h)=>{if(!I.compileOnSaveEnabled||!I.languageServiceEnabled||I.isOrphan())return;let b=I.getCompilationSettings();if(!(b.noEmit||kh(h.fileName)&&!uus(b)))return{projectFileName:I.getProjectName(),fileNames:I.getCompileOnSaveAffectedFileList(h),projectUsesOutFile:!!b.outFile}}):ym}emitFile(c){let{file:u,project:d}=this.getFileAndProject(c);if(d||VG.ThrowNoProject(),!d.languageServiceEnabled)return c.richResponse?{emitSkipped:!0,diagnostics:[]}:!1;let I=d.getScriptInfo(u),{emitSkipped:h,diagnostics:b}=d.emitFile(I,(R,N,V)=>this.host.writeFile(R,N,V));return c.richResponse?{emitSkipped:h,diagnostics:c.includeLinePosition?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(b):b.map(R=>F0e(R,!0))}:!h}getSignatureHelpItems(c,u){let{file:d,project:I}=this.getFileAndProject(c),h=this.projectService.getScriptInfoForNormalizedPath(d),b=this.getPosition(c,h),R=I.getLanguageService().getSignatureHelpItems(d,b,c),N=!!this.getPreferences(d).displayPartsForJSDoc;if(R&&u){let V=R.applicableSpan;return{...R,applicableSpan:{start:h.positionToLineOffset(V.start),end:h.positionToLineOffset(V.start+V.length)},items:this.mapSignatureHelpItems(R.items,I,N)}}else return N||!R?R:{...R,items:R.items.map(V=>({...V,tags:this.mapJSDocTagInfo(V.tags,I,!1)}))}}toPendingErrorCheck(c){let u=Pf(c),d=this.projectService.tryGetDefaultProjectForFile(u);return d&&{fileName:u,project:d}}getDiagnostics(c,u,d){this.suppressDiagnosticEvents||d.length>0&&this.updateErrorCheck(c,d,u)}change(c){let u=this.projectService.getScriptInfo(c.file);w.assert(!!u),u.textStorage.switchToScriptVersionCache();let d=u.lineOffsetToPosition(c.line,c.offset),I=u.lineOffsetToPosition(c.endLine,c.endOffset);d>=0&&(this.changeSeq++,this.projectService.applyChangesToFile(u,Za({span:{start:d,length:I-d},newText:c.insertString})))}reload(c,u){let d=Pf(c.file),I=c.tmpfile===void 0?void 0:Pf(c.tmpfile),h=this.projectService.getScriptInfoForNormalizedPath(d);h&&(this.changeSeq++,h.reloadFromFile(I)&&this.doOutput(void 0,"reload",u,!0))}saveToTmp(c,u){let d=this.projectService.getScriptInfo(c);d&&d.saveTo(u)}closeClientFile(c){if(!c)return;let u=Mc(c);this.projectService.closeClientFile(u)}mapLocationNavigationBarItems(c,u){return Ot(c,d=>({text:d.text,kind:d.kind,kindModifiers:d.kindModifiers,spans:d.spans.map(I=>sD(I,u)),childItems:this.mapLocationNavigationBarItems(d.childItems,u),indent:d.indent}))}getNavigationBarItems(c,u){let{file:d,languageService:I}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=I.getNavigationBarItems(d);return h?u?this.mapLocationNavigationBarItems(h,this.projectService.getScriptInfoForNormalizedPath(d)):h:void 0}toLocationNavigationTree(c,u){return{text:c.text,kind:c.kind,kindModifiers:c.kindModifiers,spans:c.spans.map(d=>sD(d,u)),nameSpan:c.nameSpan&&sD(c.nameSpan,u),childItems:Ot(c.childItems,d=>this.toLocationNavigationTree(d,u))}}getNavigationTree(c,u){let{file:d,languageService:I}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=I.getNavigationTree(d);return h?u?this.toLocationNavigationTree(h,this.projectService.getScriptInfoForNormalizedPath(d)):h:void 0}getNavigateToItems(c,u){let d=this.getFullNavigateToItems(c);return u?Fr(d,({project:I,navigateToItems:h})=>h.map(b=>{let R=I.getScriptInfo(b.fileName),N={name:b.name,kind:b.kind,kindModifiers:b.kindModifiers,isCaseSensitive:b.isCaseSensitive,matchKind:b.matchKind,file:b.fileName,start:R.positionToLineOffset(b.textSpan.start),end:R.positionToLineOffset(Uu(b.textSpan))};return b.kindModifiers&&b.kindModifiers!==""&&(N.kindModifiers=b.kindModifiers),b.containerName&&b.containerName.length>0&&(N.containerName=b.containerName),b.containerKind&&b.containerKind.length>0&&(N.containerKind=b.containerKind),N})):Fr(d,({navigateToItems:I})=>I)}getFullNavigateToItems(c){let{currentFileOnly:u,searchValue:d,maxResultCount:I,projectFileName:h}=c;if(u){w.assertIsDefined(c.file);let{file:te,project:re}=this.getFileAndProject(c);return[{project:re,navigateToItems:re.getLanguageService().getNavigateToItems(d,I,te)}]}let b=this.getHostPreferences(),R=[],N=new Map;if(!c.file&&!h)this.projectService.loadAncestorProjectTree(),this.projectService.forEachEnabledProject(te=>V(te));else{let te=this.getProjects(c);TWt(te,void 0,re=>V(re))}return R;function V(te){let re=te.getLanguageService().getNavigateToItems(d,I,void 0,te.isNonTsProject(),b.excludeLibrarySymbolsInNavTo),ue=Gt(re,Ae=>P(Ae)&&!i$e(Yue(Ae),te));ue.length&&R.push({project:te,navigateToItems:ue})}function P(te){let re=te.name;if(!N.has(re))return N.set(re,[te]),!0;let ue=N.get(re);for(let Ae of ue)if(M(Ae,te))return!1;return ue.push(te),!0}function M(te,re){return te===re?!0:!te||!re?!1:te.containerKind===re.containerKind&&te.containerName===re.containerName&&te.fileName===re.fileName&&te.isCaseSensitive===re.isCaseSensitive&&te.kind===re.kind&&te.kindModifiers===re.kindModifiers&&te.matchKind===re.matchKind&&te.name===re.name&&te.textSpan.start===re.textSpan.start&&te.textSpan.length===re.textSpan.length}}getSupportedCodeFixes(c){if(!c)return _ze();if(c.file){let{file:d,project:I}=this.getFileAndProject(c);return I.getLanguageService().getSupportedCodeFixes(d)}let u=this.getProject(c.projectFileName);return u||VG.ThrowNoProject(),u.getLanguageService().getSupportedCodeFixes()}isLocation(c){return c.line!==void 0}extractPositionOrRange(c,u){let d,I;return this.isLocation(c)?d=h(c):I=this.getRange(c,u),w.checkDefined(d===void 0?I:d);function h(b){return b.position!==void 0?b.position:u.lineOffsetToPosition(b.line,b.offset)}}getRange(c,u){let{startPosition:d,endPosition:I}=this.getStartAndEndPosition(c,u);return{pos:d,end:I}}getApplicableRefactors(c){let{file:u,project:d}=this.getFileAndProject(c),I=d.getScriptInfoForNormalizedPath(u);return d.getLanguageService().getApplicableRefactors(u,this.extractPositionOrRange(c,I),this.getPreferences(u),c.triggerReason,c.kind,c.includeInteractiveActions).map(b=>({...b,actions:b.actions.map(R=>({...R,range:R.range?{start:ere({line:R.range.start.line,character:R.range.start.offset}),end:ere({line:R.range.end.line,character:R.range.end.offset})}:void 0}))}))}getEditsForRefactor(c,u){let{file:d,project:I}=this.getFileAndProject(c),h=I.getScriptInfoForNormalizedPath(d),b=I.getLanguageService().getEditsForRefactor(d,this.getFormatOptions(d),this.extractPositionOrRange(c,h),c.refactor,c.action,this.getPreferences(d),c.interactiveRefactorArguments);if(b===void 0)return{edits:[]};if(u){let{renameFilename:R,renameLocation:N,edits:V}=b,P;if(R!==void 0&&N!==void 0){let M=I.getScriptInfoForNormalizedPath(Pf(R));P=RWt(K6(M.getSnapshot()),R,N,V)}return{renameLocation:P,renameFilename:R,edits:this.mapTextChangesToCodeEdits(V),notApplicableReason:b.notApplicableReason}}return b}getMoveToRefactoringFileSuggestions(c){let{file:u,project:d}=this.getFileAndProject(c),I=d.getScriptInfoForNormalizedPath(u);return d.getLanguageService().getMoveToRefactoringFileSuggestions(u,this.extractPositionOrRange(c,I),this.getPreferences(u))}getPasteEdits(c){let{file:u,project:d}=this.getFileAndProject(c),I=c.copiedFrom?{file:c.copiedFrom.file,range:c.copiedFrom.spans.map(b=>this.getRange({file:c.copiedFrom.file,startLine:b.start.line,startOffset:b.start.offset,endLine:b.end.line,endOffset:b.end.offset},d.getScriptInfoForNormalizedPath(Pf(c.copiedFrom.file))))}:void 0,h=d.getLanguageService().getPasteEdits({targetFile:u,pastedText:c.pastedText,pasteLocations:c.pasteLocations.map(b=>this.getRange({file:u,startLine:b.start.line,startOffset:b.start.offset,endLine:b.end.line,endOffset:b.end.offset},d.getScriptInfoForNormalizedPath(u))),copiedFrom:I,preferences:this.getPreferences(u)},this.getFormatOptions(u));return h&&this.mapPasteEditsAction(h)}organizeImports(c,u){w.assert(c.scope.type==="file");let{file:d,project:I}=this.getFileAndProject(c.scope.args),h=I.getLanguageService().organizeImports({fileName:d,mode:c.mode??(c.skipDestructiveCodeActions?"SortAndCombine":void 0),type:"file"},this.getFormatOptions(d),this.getPreferences(d));return u?this.mapTextChangesToCodeEdits(h):h}getEditsForFileRename(c,u){let d=Pf(c.oldFilePath),I=Pf(c.newFilePath),h=this.getHostFormatOptions(),b=this.getHostPreferences(),R=new Set,N=[];return this.projectService.loadAncestorProjectTree(),this.projectService.forEachEnabledProject(V=>{let P=V.getLanguageService().getEditsForFileRename(d,I,h,b),M=[];for(let te of P)R.has(te.fileName)||(N.push(te),M.push(te.fileName));for(let te of M)R.add(te)}),u?N.map(V=>this.mapTextChangeToCodeEdit(V)):N}getCodeFixes(c,u){let{file:d,project:I}=this.getFileAndProject(c),h=I.getScriptInfoForNormalizedPath(d),{startPosition:b,endPosition:R}=this.getStartAndEndPosition(c,h),N;try{N=I.getLanguageService().getCodeFixesAtPosition(d,b,R,c.errorCodes,this.getFormatOptions(d),this.getPreferences(d))}catch(V){let P=I.getLanguageService(),M=[...P.getSyntacticDiagnostics(d),...P.getSemanticDiagnostics(d),...P.getSuggestionDiagnostics(d)].map(re=>e0(b,R-b,re.start,re.length)&&re.code),te=c.errorCodes.find(re=>!M.includes(re));throw te!==void 0&&(V.message=`BADCLIENT: Bad error code, ${te} not found in range ${b}..${R} (found: ${M.join(", ")}); could have caused this error: -${V.message}`),V}return u?N.map(V=>this.mapCodeFixAction(V)):N}getCombinedCodeFix({scope:c,fixId:u},d){w.assert(c.type==="file");let{file:I,project:h}=this.getFileAndProject(c.args),b=h.getLanguageService().getCombinedCodeFix({type:"file",fileName:I},u,this.getFormatOptions(I),this.getPreferences(I));return d?{changes:this.mapTextChangesToCodeEdits(b.changes),commands:b.commands}:b}applyCodeActionCommand(c){let u=c.command;for(let d of ys(u)){let{file:I,project:h}=this.getFileAndProject(d);h.getLanguageService().applyCodeActionCommand(d,this.getFormatOptions(I)).then(b=>{},b=>{})}return{}}getStartAndEndPosition(c,u){let d,I;return c.startPosition!==void 0?d=c.startPosition:(d=u.lineOffsetToPosition(c.startLine,c.startOffset),c.startPosition=d),c.endPosition!==void 0?I=c.endPosition:(I=u.lineOffsetToPosition(c.endLine,c.endOffset),c.endPosition=I),{startPosition:d,endPosition:I}}mapCodeAction({description:c,changes:u,commands:d}){return{description:c,changes:this.mapTextChangesToCodeEdits(u),commands:d}}mapCodeFixAction({fixName:c,description:u,changes:d,commands:I,fixId:h,fixAllDescription:b}){return{fixName:c,description:u,changes:this.mapTextChangesToCodeEdits(d),commands:I,fixId:h,fixAllDescription:b}}mapPasteEditsAction({edits:c,fixId:u}){return{edits:this.mapTextChangesToCodeEdits(c),fixId:u}}mapTextChangesToCodeEdits(c){return c.map(u=>this.mapTextChangeToCodeEdit(u))}mapTextChangeToCodeEdit(c){let u=this.projectService.getScriptInfoOrConfig(c.fileName);return!!c.isNewFile==!!u&&(u||this.projectService.logErrorForScriptInfoNotFound(c.fileName),w.fail("Expected isNewFile for (only) new files. "+JSON.stringify({isNewFile:!!c.isNewFile,hasScriptInfo:!!u}))),u?{fileName:c.fileName,textChanges:c.textChanges.map(d=>yus(d,u))}:Bus(c)}convertTextChangeToCodeEdit(c,u){return{start:u.positionToLineOffset(c.span.start),end:u.positionToLineOffset(c.span.start+c.span.length),newText:c.newText?c.newText:""}}getBraceMatching(c,u){let{file:d,languageService:I}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.projectService.getScriptInfoForNormalizedPath(d),b=this.getPosition(c,h),R=I.getBraceMatchingAtPosition(d,b);return R?u?R.map(N=>sD(N,h)):R:void 0}getDiagnosticsForProject(c,u,d){if(this.suppressDiagnosticEvents)return;let{fileNames:I,languageServiceDisabled:h}=this.getProjectInfoWorker(d,void 0,!0,!0);if(h)return;let b=I.filter(Ae=>!Ae.includes("lib.d.ts"));if(b.length===0)return;let R=[],N=[],V=[],P=[],M=Pf(d),te=this.projectService.ensureDefaultProjectForFile(M);for(let Ae of b)this.getCanonicalFileName(Ae)===this.getCanonicalFileName(d)?R.push(Ae):this.projectService.getScriptInfo(Ae).isScriptOpen()?N.push(Ae):kh(Ae)?P.push(Ae):V.push(Ae);let ue=[...R,...N,...V,...P].map(Ae=>({fileName:Ae,project:te}));this.updateErrorCheck(c,ue,u,!1)}configurePlugin(c){this.projectService.configurePlugin(c)}getSmartSelectionRange(c,u){let{locations:d}=c,{file:I,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),b=w.checkDefined(this.projectService.getScriptInfo(I));return Ot(d,R=>{let N=this.getPosition(R,b),V=h.getSmartSelectionRange(I,N);return u?this.mapSelectionRange(V,b):V})}toggleLineComment(c,u){let{file:d,languageService:I}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.projectService.getScriptInfo(d),b=this.getRange(c,h),R=I.toggleLineComment(d,b);if(u){let N=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(V=>this.convertTextChangeToCodeEdit(V,N))}return R}toggleMultilineComment(c,u){let{file:d,languageService:I}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.projectService.getScriptInfoForNormalizedPath(d),b=this.getRange(c,h),R=I.toggleMultilineComment(d,b);if(u){let N=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(V=>this.convertTextChangeToCodeEdit(V,N))}return R}commentSelection(c,u){let{file:d,languageService:I}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.projectService.getScriptInfoForNormalizedPath(d),b=this.getRange(c,h),R=I.commentSelection(d,b);if(u){let N=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(V=>this.convertTextChangeToCodeEdit(V,N))}return R}uncommentSelection(c,u){let{file:d,languageService:I}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.projectService.getScriptInfoForNormalizedPath(d),b=this.getRange(c,h),R=I.uncommentSelection(d,b);if(u){let N=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(V=>this.convertTextChangeToCodeEdit(V,N))}return R}mapSelectionRange(c,u){let d={textSpan:sD(c.textSpan,u)};return c.parent&&(d.parent=this.mapSelectionRange(c.parent,u)),d}getScriptInfoFromProjectService(c){let u=Pf(c),d=this.projectService.getScriptInfoForNormalizedPath(u);return d||(this.projectService.logErrorForScriptInfoNotFound(u),VG.ThrowNoProject())}toProtocolCallHierarchyItem(c){let u=this.getScriptInfoFromProjectService(c.file);return{name:c.name,kind:c.kind,kindModifiers:c.kindModifiers,file:c.file,containerName:c.containerName,span:sD(c.span,u),selectionSpan:sD(c.selectionSpan,u)}}toProtocolCallHierarchyIncomingCall(c){let u=this.getScriptInfoFromProjectService(c.from.file);return{from:this.toProtocolCallHierarchyItem(c.from),fromSpans:c.fromSpans.map(d=>sD(d,u))}}toProtocolCallHierarchyOutgoingCall(c,u){return{to:this.toProtocolCallHierarchyItem(c.to),fromSpans:c.fromSpans.map(d=>sD(d,u))}}prepareCallHierarchy(c){let{file:u,project:d}=this.getFileAndProject(c),I=this.projectService.getScriptInfoForNormalizedPath(u);if(I){let h=this.getPosition(c,I),b=d.getLanguageService().prepareCallHierarchy(u,h);return b&&Rje(b,R=>this.toProtocolCallHierarchyItem(R))}}provideCallHierarchyIncomingCalls(c){let{file:u,project:d}=this.getFileAndProject(c),I=this.getScriptInfoFromProjectService(u);return d.getLanguageService().provideCallHierarchyIncomingCalls(u,this.getPosition(c,I)).map(b=>this.toProtocolCallHierarchyIncomingCall(b))}provideCallHierarchyOutgoingCalls(c){let{file:u,project:d}=this.getFileAndProject(c),I=this.getScriptInfoFromProjectService(u);return d.getLanguageService().provideCallHierarchyOutgoingCalls(u,this.getPosition(c,I)).map(b=>this.toProtocolCallHierarchyOutgoingCall(b,I))}getCanonicalFileName(c){let u=this.host.useCaseSensitiveFileNames?c:lf(c);return Mc(u)}exit(){}notRequired(){return{responseRequired:!1}}requiredResponse(c){return{response:c,responseRequired:!0}}addProtocolHandler(c,u){if(this.handlers.has(c))throw new Error(`Protocol handler already exists for command "${c}"`);this.handlers.set(c,u)}setCurrentRequest(c){w.assert(this.currentRequestId===void 0),this.currentRequestId=c,this.cancellationToken.setRequest(c)}resetCurrentRequest(c){w.assert(this.currentRequestId===c),this.currentRequestId=void 0,this.cancellationToken.resetRequest(c)}executeWithRequestId(c,u){try{return this.setCurrentRequest(c),u()}finally{this.resetCurrentRequest(c)}}executeCommand(c){let u=this.handlers.get(c.command);if(u){let d=this.executeWithRequestId(c.seq,()=>u(c));return this.projectService.enableRequestedPlugins(),d}else return this.logger.msg(`Unrecognized JSON command:${AP(c)}`,"Err"),this.doOutput(void 0,"unknown",c.seq,!1,`Unrecognized JSON command: ${c.command}`),{responseRequired:!1}}onMessage(c){var u,d,I,h,b,R,N,V,P,M,te;this.gcTimer.scheduleCollect(),this.performanceData=void 0;let re;this.logger.hasLevel(2)&&(re=this.hrtime(),this.logger.hasLevel(3)&&this.logger.info(`request:${pue(this.toStringMessage(c))}`));let ue,Ae;try{ue=this.parseMessage(c),Ae=ue.arguments&&ue.arguments.file?ue.arguments:void 0,(u=Mi)==null||u.instant(Mi.Phase.Session,"request",{seq:ue.seq,command:ue.command}),(d=Kl)==null||d.logStartCommand(""+ue.command,this.toStringMessage(c).substring(0,100)),(I=Mi)==null||I.push(Mi.Phase.Session,"executeCommand",{seq:ue.seq,command:ue.command},!0);let{response:de,responseRequired:Be}=this.executeCommand(ue);if((h=Mi)==null||h.pop(),this.logger.hasLevel(2)){let Fe=lus(this.hrtime(re)).toFixed(4);Be?this.logger.perftrc(`${ue.seq}::${ue.command}: elapsed time (in milliseconds) ${Fe}`):this.logger.perftrc(`${ue.seq}::${ue.command}: async elapsed time (in milliseconds) ${Fe}`)}(b=Kl)==null||b.logStopCommand(""+ue.command,"Success"),(R=Mi)==null||R.instant(Mi.Phase.Session,"response",{seq:ue.seq,command:ue.command,success:!!de}),de?this.doOutput(de,ue.command,ue.seq,!0):Be&&this.doOutput(void 0,ue.command,ue.seq,!1,"No content available.")}catch(de){if((N=Mi)==null||N.popAll(),de instanceof os){(V=Kl)==null||V.logStopCommand(""+(ue&&ue.command),"Canceled: "+de),(P=Mi)==null||P.instant(Mi.Phase.Session,"commandCanceled",{seq:ue?.seq,command:ue?.command}),this.doOutput({canceled:!0},ue.command,ue.seq,!0);return}this.logErrorWorker(de,this.toStringMessage(c),Ae),(M=Kl)==null||M.logStopCommand(""+(ue&&ue.command),"Error: "+de),(te=Mi)==null||te.instant(Mi.Phase.Session,"commandError",{seq:ue?.seq,command:ue?.command,message:de.message}),this.doOutput(void 0,ue?ue.command:"unknown",ue?ue.seq:0,!1,"Error processing request. "+de.message+` -`+de.stack)}}parseMessage(c){return JSON.parse(c)}toStringMessage(c){return c}getFormatOptions(c){return this.projectService.getFormatCodeOptions(c)}getPreferences(c){return this.projectService.getPreferences(c)}getHostFormatOptions(){return this.projectService.getHostFormatCodeOptions()}getHostPreferences(){return this.projectService.getHostPreferences()}};function sD(n,c){return{start:c.positionToLineOffset(n.start),end:c.positionToLineOffset(Uu(n))}}function NWt(n,c,u){let d=sD(n,u),I=c&&sD(c,u);return I?{...d,contextStart:I.start,contextEnd:I.end}:d}function yus(n,c){return{start:jHr(c,n.span.start),end:jHr(c,Uu(n.span)),newText:n.newText}}function jHr(n,c){return bWt(n)?Eus(n.getLineAndCharacterOfPosition(c)):n.positionToLineOffset(c)}function bus(n,c){let u=n.ranges.map(d=>({start:c.positionToLineOffset(d.start),end:c.positionToLineOffset(d.start+d.length)}));return n.wordPattern?{ranges:u,wordPattern:n.wordPattern}:{ranges:u}}function Eus(n){return{line:n.line+1,offset:n.character+1}}function Bus(n){w.assert(n.textChanges.length===1);let c=$s(n.textChanges);return w.assert(c.span.start===0&&c.span.length===0),{fileName:n.fileName,textChanges:[{start:{line:0,offset:0},end:{line:0,offset:0},newText:c.newText}]}}function RWt(n,c,u,d){let I=vus(n,c,d),{line:h,character:b}=Mp(pc(I),u);return{line:h+1,offset:b+1}}function vus(n,c,u){for(let{fileName:d,textChanges:I}of u)if(d===c)for(let h=I.length-1;h>=0;h--){let{newText:b,span:{start:R,length:N}}=I[h];n=n.slice(0,R)+b+n.slice(R+N)}return n}function zHr(n,{fileName:c,textSpan:u,contextSpan:d,isWriteAccess:I,isDefinition:h},{disableLineTextInReferences:b}){let R=w.checkDefined(n.getScriptInfo(c)),N=NWt(u,d,R),V=b?void 0:Sus(R,N);return{file:c,...N,lineText:V,isWriteAccess:I,isDefinition:h}}function Sus(n,c){let u=n.lineToTextSpan(c.start.line-1);return n.getSnapshot().getText(u.start,Uu(u)).replace(/\r|\n/g,"")}function wus(n){return n===void 0||n&&typeof n=="object"&&typeof n.exportName=="string"&&(n.fileName===void 0||typeof n.fileName=="string")&&(n.ambientModuleName===void 0||typeof n.ambientModuleName=="string"&&(n.isPackageJsonImport===void 0||typeof n.isPackageJsonImport=="boolean"))}var tre=4,DWt=(n=>(n[n.PreStart=0]="PreStart",n[n.Start=1]="Start",n[n.Entire=2]="Entire",n[n.Mid=3]="Mid",n[n.End=4]="End",n[n.PostEnd=5]="PostEnd",n))(DWt||{}),Tus=class{constructor(){this.goSubtree=!0,this.lineIndex=new Z0e,this.endBranch=[],this.state=2,this.initialText="",this.trailingText="",this.lineIndex.root=new rre,this.startPath=[this.lineIndex.root],this.stack=[this.lineIndex.root]}get done(){return!1}insertLines(n,c){c&&(this.trailingText=""),n?n=this.initialText+n+this.trailingText:n=this.initialText+this.trailingText;let d=Z0e.linesFromText(n).lines;d.length>1&&d[d.length-1]===""&&d.pop();let I,h;for(let R=this.endBranch.length-1;R>=0;R--)this.endBranch[R].updateCounts(),this.endBranch[R].charCount()===0&&(h=this.endBranch[R],R>0?I=this.endBranch[R-1]:I=this.branchNode);h&&I.remove(h);let b=this.startPath[this.startPath.length-1];if(d.length>0)if(b.text=d[0],d.length>1){let R=new Array(d.length-1),N=b;for(let M=1;M=0;){let M=this.startPath[V];R=M.insertAt(N,R),V--,N=M}let P=R.length;for(;P>0;){let M=new rre;M.add(this.lineIndex.root),R=M.insertAt(this.lineIndex.root,R),P=R.length,this.lineIndex.root=M}this.lineIndex.root.updateCounts()}else for(let R=this.startPath.length-2;R>=0;R--)this.startPath[R].updateCounts();else{this.startPath[this.startPath.length-2].remove(b);for(let N=this.startPath.length-2;N>=0;N--)this.startPath[N].updateCounts()}return this.lineIndex}post(n,c,u){u===this.lineCollectionAtBranch&&(this.state=4),this.stack.pop()}pre(n,c,u,d,I){let h=this.stack[this.stack.length-1];this.state===2&&I===1&&(this.state=1,this.branchNode=h,this.lineCollectionAtBranch=u);let b;function R(N){return N.isLeaf()?new gZe(""):new rre}switch(I){case 0:this.goSubtree=!1,this.state!==4&&h.add(u);break;case 1:this.state===4?this.goSubtree=!1:(b=R(u),h.add(b),this.startPath.push(b));break;case 2:this.state!==4?(b=R(u),h.add(b),this.startPath.push(b)):u.isLeaf()||(b=R(u),h.add(b),this.endBranch.push(b));break;case 3:this.goSubtree=!1;break;case 4:this.state!==4?this.goSubtree=!1:u.isLeaf()||(b=R(u),h.add(b),this.endBranch.push(b));break;case 5:this.goSubtree=!1,this.state!==1&&h.add(u);break}this.goSubtree&&this.stack.push(b)}leaf(n,c,u){this.state===1?this.initialText=u.text.substring(0,n):this.state===2?(this.initialText=u.text.substring(0,n),this.trailingText=u.text.substring(n+c)):this.trailingText=u.text.substring(n+c)}},Nus=class{constructor(n,c,u){this.pos=n,this.deleteLen=c,this.insertedText=u}getTextChangeRange(){return Ce(bd(this.pos,this.deleteLen),this.insertedText?this.insertedText.length:0)}},s$e=class _U{constructor(){this.changes=[],this.versions=new Array(_U.maxVersions),this.minVersion=0,this.currentVersion=0}versionToIndex(c){if(!(cthis.currentVersion))return c%_U.maxVersions}currentVersionToIndex(){return this.currentVersion%_U.maxVersions}edit(c,u,d){this.changes.push(new Nus(c,u,d)),(this.changes.length>_U.changeNumberThreshold||u>_U.changeLengthThreshold||d&&d.length>_U.changeLengthThreshold)&&this.getSnapshot()}getSnapshot(){return this._getSnapshot()}_getSnapshot(){let c=this.versions[this.currentVersionToIndex()];if(this.changes.length>0){let u=c.index;for(let d of this.changes)u=u.edit(d.pos,d.deleteLen,d.insertedText);c=new qHr(this.currentVersion+1,this,u,this.changes),this.currentVersion=c.version,this.versions[this.currentVersionToIndex()]=c,this.changes=[],this.currentVersion-this.minVersion>=_U.maxVersions&&(this.minVersion=this.currentVersion-_U.maxVersions+1)}return c}getSnapshotVersion(){return this._getSnapshot().version}getAbsolutePositionAndLineText(c){return this._getSnapshot().index.lineNumberToInfo(c)}lineOffsetToPosition(c,u){return this._getSnapshot().index.absolutePositionOfStartOfLine(c)+(u-1)}positionToLineOffset(c){return this._getSnapshot().index.positionToLineOffset(c)}lineToTextSpan(c){let u=this._getSnapshot().index,{lineText:d,absolutePosition:I}=u.lineNumberToInfo(c+1),h=d!==void 0?d.length:u.absolutePositionOfStartOfLine(c+2)-I;return bd(I,h)}getTextChangesBetweenVersions(c,u){if(c=this.minVersion){let d=[];for(let I=c+1;I<=u;I++){let h=this.versions[this.versionToIndex(I)];for(let b of h.changesSincePreviousVersion)d.push(b.getTextChangeRange())}return pt(d)}else return;else return Ze}getLineCount(){return this._getSnapshot().index.getLineCount()}static fromString(c){let u=new _U,d=new qHr(0,u,new Z0e);u.versions[u.currentVersion]=d;let I=Z0e.linesFromText(c);return d.index.load(I.lines),u}};s$e.changeNumberThreshold=8,s$e.changeLengthThreshold=256,s$e.maxVersions=8;var o$e=s$e,qHr=class sPn{constructor(c,u,d,I=ym){this.version=c,this.cache=u,this.index=d,this.changesSincePreviousVersion=I}getText(c,u){return this.index.getText(c,u-c)}getLength(){return this.index.getLength()}getChangeRange(c){if(c instanceof sPn&&this.cache===c.cache)return this.version<=c.version?Ze:this.cache.getTextChangesBetweenVersions(c.version,this.version)}},Z0e=class tir{constructor(){this.checkEdits=!1}absolutePositionOfStartOfLine(c){return this.lineNumberToInfo(c).absolutePosition}positionToLineOffset(c){let{oneBasedLine:u,zeroBasedColumn:d}=this.root.charOffsetToLineInfo(1,c);return{line:u,offset:d+1}}positionToColumnAndLineText(c){return this.root.charOffsetToLineInfo(1,c)}getLineCount(){return this.root.lineCount()}lineNumberToInfo(c){let u=this.getLineCount();if(c<=u){let{position:d,leaf:I}=this.root.lineNumberToInfo(c,0);return{absolutePosition:d,lineText:I&&I.text}}else return{absolutePosition:this.root.charCount(),lineText:void 0}}load(c){if(c.length>0){let u=[];for(let d=0;d0&&c{d=d.concat(b.text.substring(I,I+h))}}),d}getLength(){return this.root.charCount()}every(c,u,d){d||(d=this.root.charCount());let I={goSubtree:!0,done:!1,leaf(h,b,R){c(R,h,b)||(this.done=!0)}};return this.walk(u,d-u,I),!I.done}edit(c,u,d){if(this.root.charCount()===0)return w.assert(u===0),d!==void 0?(this.load(tir.linesFromText(d).lines),this):void 0;{let I;if(this.checkEdits){let R=this.getText(0,this.root.charCount());I=R.slice(0,c)+d+R.slice(c+u)}let h=new Tus,b=!1;if(c>=this.root.charCount()){c=this.root.charCount()-1;let R=this.getText(c,1);d?d=R+d:d=R,u=0,b=!0}else if(u>0){let R=c+u,{zeroBasedColumn:N,lineText:V}=this.positionToColumnAndLineText(R);N===0&&(u+=V.length,d=d?d+V:V)}if(this.root.walk(c,u,h),h.insertLines(d,b),this.checkEdits){let R=h.lineIndex.getText(0,h.lineIndex.getLength());w.assert(I===R,"buffer edit mismatch")}return h.lineIndex}}static buildTreeFromBottom(c){if(c.length0?d[I]=h:d.pop(),{lines:d,lineMap:u}}},rre=class rir{constructor(c=[]){this.children=c,this.totalChars=0,this.totalLines=0,c.length&&this.updateCounts()}isLeaf(){return!1}updateCounts(){this.totalChars=0,this.totalLines=0;for(let c of this.children)this.totalChars+=c.charCount(),this.totalLines+=c.lineCount()}execWalk(c,u,d,I,h){return d.pre&&d.pre(c,u,this.children[I],this,h),d.goSubtree?(this.children[I].walk(c,u,d),d.post&&d.post(c,u,this.children[I],this,h)):d.goSubtree=!0,d.done}skipChild(c,u,d,I,h){I.pre&&!I.done&&(I.pre(c,u,this.children[d],this,h),I.goSubtree=!0)}walk(c,u,d){let I=0,h=this.children[I].charCount(),b=c;for(;b>=h;)this.skipChild(b,u,I,d,0),b-=h,I++,h=this.children[I].charCount();if(b+u<=h){if(this.execWalk(b,u,d,I,2))return}else{if(this.execWalk(b,h-b,d,I,1))return;let R=u-(h-b);for(I++,h=this.children[I].charCount();R>h;){if(this.execWalk(0,h,d,I,3))return;R-=h,I++,h=this.children[I].charCount()}if(R>0&&this.execWalk(0,R,d,I,4))return}if(d.pre){let R=this.children.length;if(Iu)return h.isLeaf()?{oneBasedLine:c,zeroBasedColumn:u,lineText:h.text}:h.charOffsetToLineInfo(c,u);u-=h.charCount(),c+=h.lineCount()}let d=this.lineCount();if(d===0)return{oneBasedLine:1,zeroBasedColumn:0,lineText:void 0};let I=w.checkDefined(this.lineNumberToInfo(d,0).leaf);return{oneBasedLine:d,zeroBasedColumn:I.charCount(),lineText:void 0}}lineNumberToInfo(c,u){for(let d of this.children){let I=d.lineCount();if(I>=c)return d.isLeaf()?{position:u,leaf:d}:d.lineNumberToInfo(c,u);c-=I,u+=d.charCount()}return{position:u,leaf:void 0}}splitAfter(c){let u,d=this.children.length;c++;let I=c;if(c=0;te--)N[te].children.length===0&&N.pop()}b&&N.push(b),this.updateCounts();for(let P=0;P{(this.packageInstalledPromise??(this.packageInstalledPromise=new Map)).set(this.packageInstallId,{resolve:I,reject:h})});return this.installer.send(u),d}attach(c){this.projectService=c,this.installer=this.createInstallerProcess()}onProjectClosed(c){this.installer.send({projectName:c.getProjectName(),kind:"closeProject"})}enqueueInstallTypingsRequest(c,u,d){let I=MVt(c,u,d);this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Scheduling throttled operation:${AP(I)}`),this.activeRequestCount0?this.activeRequestCount--:w.fail("TIAdapter:: Received too many responses");!this.requestQueue.isEmpty();){let I=this.requestQueue.dequeue();if(this.requestMap.get(I.projectName)===I){this.requestMap.delete(I.projectName),this.scheduleRequest(I);break}this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Skipping defunct request for: ${I.projectName}`)}this.projectService.updateTypingsForProject(c),this.event(c,"setTypings");break}case R_e:this.projectService.watchTypingLocations(c);break;default:}}scheduleRequest(c){this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Scheduling request for: ${c.projectName}`),this.activeRequestCount++,this.host.setTimeout(()=>{this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Sending request:${AP(c)}`),this.installer.send(c)},oPn.requestDelayMillis,`${c.projectName}::${c.kind}`)}};$Hr.requestDelayMillis=100;var e5r=$Hr,t5r={};o(t5r,{ActionInvalidate:()=>bGe,ActionPackageInstalled:()=>EGe,ActionSet:()=>yGe,ActionWatchTypingLocations:()=>R_e,Arguments:()=>w7e,AutoImportProviderProject:()=>cWt,AuxiliaryProject:()=>oWt,CharRangeSection:()=>DWt,CloseFileWatcherEvent:()=>Uqe,CommandNames:()=>YHr,ConfigFileDiagEvent:()=>Qqe,ConfiguredProject:()=>lWt,ConfiguredProjectLoadKind:()=>fWt,CreateDirectoryWatcherEvent:()=>Jqe,CreateFileWatcherEvent:()=>Xqe,Errors:()=>VG,EventBeginInstallTypes:()=>v7e,EventEndInstallTypes:()=>S7e,EventInitializationFailed:()=>Ukt,EventTypesRegistry:()=>B7e,ExternalProject:()=>Lqe,GcTimer:()=>KVt,InferredProject:()=>sWt,LargeFileReferencedEvent:()=>Mqe,LineIndex:()=>Z0e,LineLeaf:()=>gZe,LineNode:()=>rre,LogLevel:()=>PVt,Msg:()=>OVt,OpenFileInfoTelemetryEvent:()=>uWt,Project:()=>l7,ProjectInfoTelemetryEvent:()=>Hqe,ProjectKind:()=>R0e,ProjectLanguageServiceStateEvent:()=>Yqe,ProjectLoadingFinishEvent:()=>Oqe,ProjectLoadingStartEvent:()=>Pqe,ProjectService:()=>yWt,ProjectsUpdatedInBackgroundEvent:()=>lZe,ScriptInfo:()=>$Vt,ScriptVersionCache:()=>o$e,Session:()=>KHr,TextStorage:()=>qVt,ThrottledOperations:()=>UVt,TypingsCache:()=>eWt,TypingsInstallerAdapter:()=>e5r,allFilesAreJsOrDts:()=>rWt,allRootFilesAreJsOrDts:()=>tWt,asNormalizedPath:()=>CHr,convertCompilerOptions:()=>uZe,convertFormatOptions:()=>$te,convertScriptKindName:()=>jqe,convertTypeAcquisition:()=>AWt,convertUserPreferences:()=>dWt,convertWatchOptions:()=>G0e,countEachFileTypes:()=>D0e,createInstallTypingsRequest:()=>MVt,createModuleSpecifierCache:()=>BWt,createNormalizedPathMap:()=>mHr,createPackageJsonCache:()=>vWt,createSortedArray:()=>JVt,emptyArray:()=>ym,findArgument:()=>pZr,forEachResolvedProjectReferenceProject:()=>e$e,formatDiagnosticToProtocol:()=>F0e,formatMessage:()=>SWt,getBaseConfigFileName:()=>Fqe,getLocationInNewDocument:()=>RWt,hasArgument:()=>dZr,hasNoTypeScriptSource:()=>nWt,indent:()=>pue,isBackgroundProject:()=>k0e,isConfigFile:()=>bWt,isConfiguredProject:()=>QZ,isDynamicFileName:()=>N0e,isExternalProject:()=>x0e,isInferredProject:()=>qte,isInferredProjectName:()=>QVt,isProjectDeferredClose:()=>cZe,makeAutoImportProviderProjectName:()=>HVt,makeAuxiliaryProjectName:()=>XVt,makeInferredProjectName:()=>YVt,maxFileSize:()=>Wqe,maxProgramSizeForNonTsFiles:()=>Vqe,normalizedPathToPath:()=>T0e,nowString:()=>fZr,nullCancellationToken:()=>OHr,nullTypingsInstaller:()=>Zqe,protocol:()=>jVt,removeSorted:()=>hHr,stringifyIndented:()=>AP,toEvent:()=>wWt,toNormalizedPath:()=>Pf,tryConvertScriptKindName:()=>Kqe,typingsInstaller:()=>WVt,updateProjectIfDirty:()=>M2}),typeof console<"u"&&(w.loggingHost={log(n,c){switch(n){case 1:return console.error(c);case 2:return console.warn(c);case 3:return console.log(c);case 4:return console.log(c)}}})})({get exports(){return $3n},set exports(e){$3n=e,typeof MAt<"u"&&MAt.exports&&(MAt.exports=e)}})});var BPn=z((Bqc,EPn)=>{"use strict";function nDo(e,t){var r=e;t.slice(0,-1).forEach(function(a){r=r[a]||{}});var s=t[t.length-1];return s in r}function yPn(e){return typeof e=="number"||/^0x[0-9a-f]+$/i.test(e)?!0:/^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(e)}function bPn(e,t){return t==="constructor"&&typeof e[t]=="function"||t==="__proto__"}EPn.exports=function(e,t){t||(t={});var r={bools:{},strings:{},unknownFn:null};typeof t.unknown=="function"&&(r.unknownFn=t.unknown),typeof t.boolean=="boolean"&&t.boolean?r.allBools=!0:[].concat(t.boolean).filter(Boolean).forEach(function(ge){r.bools[ge]=!0});var s={};function a(ge){return s[ge].some(function(fe){return r.bools[fe]})}Object.keys(t.alias||{}).forEach(function(ge){s[ge]=[].concat(t.alias[ge]),s[ge].forEach(function(fe){s[fe]=[ge].concat(s[ge].filter(function(pe){return fe!==pe}))})}),[].concat(t.string).filter(Boolean).forEach(function(ge){r.strings[ge]=!0,s[ge]&&[].concat(s[ge]).forEach(function(fe){r.strings[fe]=!0})});var o=t.default||{},g={_:[]};function p(ge,fe){return r.allBools&&/^--[^=]+$/.test(fe)||r.strings[ge]||r.bools[ge]||s[ge]}function f(ge,fe,pe){for(var he=ge,be=0;be{"use strict";var{Transform:iDo}=Dt("stream"),{StringDecoder:sDo}=Dt("string_decoder"),kie=Symbol("last"),XAt=Symbol("decoder");function oDo(e,t,r){let s;if(this.overflow){if(s=this[XAt].write(e).split(this.matcher),s.length===1)return r();s.shift(),this.overflow=!1}else this[kie]+=this[XAt].write(e),s=this[kie].split(this.matcher);this[kie]=s.pop();for(let a=0;athis.maxLength,this.overflow&&!this.skipOverflow){r(new Error("maximum buffer reached"));return}r()}function aDo(e){if(this[kie]+=this[XAt].end(),this[kie])try{SPn(this,this.mapper(this[kie]))}catch(t){return e(t)}e()}function SPn(e,t){t!==void 0&&e.push(t)}function vPn(e){return e}function cDo(e,t,r){switch(e=e||/\r?\n/,t=t||vPn,r=r||{},arguments.length){case 1:typeof e=="function"?(t=e,e=/\r?\n/):typeof e=="object"&&!(e instanceof RegExp)&&!e[Symbol.split]&&(r=e,e=/\r?\n/);break;case 2:typeof e=="function"?(r=t,t=e,e=/\r?\n/):typeof t=="object"&&(r=t,t=vPn)}r=Object.assign({},r),r.autoDestroy=!0,r.transform=oDo,r.flush=aDo,r.readableObjectMode=!0;let s=new iDo(r);return s[kie]="",s[XAt]=new sDo("utf8"),s.matcher=e,s.mapper=t,s.maxLength=r.maxLength,s.skipOverflow=r.skipOverflow||!1,s.overflow=!1,s._destroy=function(a,o){this._writableState.errorEmitted=!1,o(a)},s}wPn.exports=cDo});var DPn={};jf(DPn,{default:()=>RPn});function RPn(e,t){let r=[],s=[],a=[];t={useEquals:!0,shortFlag:!0,...t};let o=(p,f)=>{let m=t.shortFlag&&p.length===1?"-":"--",y=t.allowCamelCase?p:p.replace(/[A-Z]/g,"-$&").toLowerCase();p=m+y,t.useEquals?r.push(p+(f?`=${f}`:"")):(r.push(p),f&&r.push(f))},g=(p,f)=>{r.push(`-${p}`),f&&r.push(f)};for(let[p,f]of Object.entries(e)){let m=o;if(!(Array.isArray(t.excludes)&&NPn(t.excludes,p))&&!(Array.isArray(t.includes)&&!NPn(t.includes,p))){if(typeof t.aliases=="object"&&t.aliases[p]&&(p=t.aliases[p],m=g),p==="--"){if(!Array.isArray(f))throw new TypeError(`Expected key \`--\` to be Array, got ${typeof f}`);a=f;continue}if(p==="_"){if(!Array.isArray(f))throw new TypeError(`Expected key \`_\` to be Array, got ${typeof f}`);s=f;continue}if(f===!0&&!t.ignoreTrue&&m(p,""),f===!1&&!t.ignoreFalse&&m(`no-${p}`),typeof f=="string"&&m(p,f),typeof f=="number"&&!Number.isNaN(f)&&m(p,String(f)),Array.isArray(f))for(let y of f)m(p,y)}}for(let p of s)r.push(String(p));a.length>0&&r.push("--");for(let p of a)r.push(String(p));return r}var NPn,xPn=cc(()=>{NPn=(e,t)=>e.some(r=>r instanceof RegExp?r.test(t):r===t)});var ZPn=z((Sqc,FPn)=>{var{Readable:lDo,Transform:kPn}=Dt("stream"),{execFile:uDo}=Dt("child_process"),gDo=TPn(),GPn="------------------------ >8 ------------------------";function ADo(e){return e=e||{},e.cwd=e.cwd||process.cwd(),e}function dDo(e){return e=e||{},e.format=e.format||"%B",e.from=e.from||"",e.to=e.to||"HEAD",e}async function pDo(e){let{default:t}=await Promise.resolve().then(()=>(xPn(),DPn)),r=`--format=${e.format||""}%n${GPn}`,s=[e.from,e.to].filter(Boolean).join(".."),a=["log",r,s].concat(t(e,{excludes:["debug","from","to","format","path","ignore"]}));return e.path&&a.push("--",...Array.isArray(e.path)?e.path:[e.path]),a}function fDo(e,t){let r=new lDo;r._read=()=>{};let s=dDo(e),a=ADo(t),o=!1;return pDo(s).then(g=>{s.debug&&s.debug(`Your git-log command is: -git `+g.join(" "));let p=typeof s.ignore=="string"?new RegExp(s.ignore):s.ignore,f=p?y=>!p.test(y.toString()):()=>!0,m=uDo("git",g,{cwd:a.cwd,maxBuffer:1/0});m.stdout.pipe(gDo(GPn+` -`)).pipe(new kPn({transform(y,B,v){o=!1,setImmediate(()=>{f(y)&&r.push(y),v()})},flush(y){setImmediate(()=>{o||(r.push(null),r.emit("close")),y()})}})),m.stderr.pipe(new kPn({objectMode:!0,highWaterMark:16,transform(y){o=!0,r.emit("error",new Error(y)),r.emit("close")}}))}),r}FPn.exports=fDo});var KPn=z((a$c,UPn)=>{"use strict";var XPn=Dt("path"),RDo=oQt(),DDo=cQt();function JPn(e,t){let r=e.options.env||process.env,s=process.cwd(),a=e.options.cwd!=null,o=a&&process.chdir!==void 0&&!process.chdir.disabled;if(o)try{process.chdir(e.options.cwd)}catch{}let g;try{g=RDo.sync(e.command,{path:r[DDo({env:r})],pathExt:t?XPn.delimiter:void 0})}catch{}finally{o&&process.chdir(s)}return g&&(g=XPn.resolve(a?e.options.cwd:"",g)),g}function xDo(e){return JPn(e)||JPn(e,!0)}UPn.exports=xDo});var jPn=z((c$c,Iir)=>{"use strict";var fir=/([()\][%!^"`<>&|;, *?])/g;function kDo(e){return e=e.replace(fir,"^$1"),e}function GDo(e,t){return e=`${e}`,e=e.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),e=e.replace(/(?=(\\+?)?)\1$/,"$1$1"),e=`"${e}"`,e=e.replace(fir,"^$1"),t&&(e=e.replace(fir,"^$1")),e}Iir.exports.command=kDo;Iir.exports.argument=GDo});var qPn=z((l$c,zPn)=>{"use strict";var Cir=Dt("fs"),FDo=gQt();function ZDo(e){let r=Buffer.alloc(150),s;try{s=Cir.openSync(e,"r"),Cir.readSync(s,r,0,150,0),Cir.closeSync(s)}catch{}return FDo(r.toString())}zPn.exports=ZDo});var rOn=z((u$c,tOn)=>{"use strict";var LDo=Dt("path"),$Pn=KPn(),eOn=jPn(),VDo=qPn(),WDo=process.platform==="win32",PDo=/\.(?:com|exe)$/i,ODo=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function MDo(e){e.file=$Pn(e);let t=e.file&&VDo(e.file);return t?(e.args.unshift(e.file),e.command=t,$Pn(e)):e.file}function QDo(e){if(!WDo)return e;let t=MDo(e),r=!PDo.test(t);if(e.options.forceShell||r){let s=ODo.test(t);e.command=LDo.normalize(e.command),e.command=eOn.command(e.command),e.args=e.args.map(o=>eOn.argument(o,s));let a=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${a}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e}function YDo(e,t,r){t&&!Array.isArray(t)&&(r=t,t=null),t=t?t.slice(0):[],r=Object.assign({},r);let s={command:e,args:t,options:r,file:void 0,original:{command:e,args:t}};return r.shell?s:QDo(s)}tOn.exports=YDo});var sOn=z((g$c,iOn)=>{"use strict";var mir=process.platform==="win32";function hir(e,t){return Object.assign(new Error(`${t} ${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function HDo(e,t){if(!mir)return;let r=e.emit;e.emit=function(s,a){if(s==="exit"){let o=nOn(a,t);if(o)return r.call(e,"error",o)}return r.apply(e,arguments)}}function nOn(e,t){return mir&&e===1&&!t.file?hir(t.original,"spawn"):null}function XDo(e,t){return mir&&e===1&&!t.file?hir(t.original,"spawnSync"):null}iOn.exports={hookChildProcess:HDo,verifyENOENT:nOn,verifyENOENTSync:XDo,notFoundError:hir}});var cOn=z((A$c,tBe)=>{"use strict";var oOn=Dt("child_process"),_ir=rOn(),yir=sOn();function aOn(e,t,r){let s=_ir(e,t,r),a=oOn.spawn(s.command,s.args,s.options);return yir.hookChildProcess(a,s),a}function JDo(e,t,r){let s=_ir(e,t,r),a=oOn.spawnSync(s.command,s.args,s.options);return a.error=a.error||yir.verifyENOENTSync(a.status,s),a}tBe.exports=aOn;tBe.exports.spawn=aOn;tBe.exports.sync=JDo;tBe.exports._parse=_ir;tBe.exports._enoent=yir});var qde,hOn=cc(()=>{qde=[];qde.push("SIGHUP","SIGINT","SIGTERM");process.platform!=="win32"&&qde.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&qde.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT")});var edt,vir,Sir,Ixo,wir,tdt,Cxo,Tir,Nir,Rir,rdt,W$c,P$c,Dir=cc(()=>{hOn();edt=e=>!!e&&typeof e=="object"&&typeof e.removeListener=="function"&&typeof e.emit=="function"&&typeof e.reallyExit=="function"&&typeof e.listeners=="function"&&typeof e.kill=="function"&&typeof e.pid=="number"&&typeof e.on=="function",vir=Symbol.for("signal-exit emitter"),Sir=globalThis,Ixo=Object.defineProperty.bind(Object),wir=class{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(Sir[vir])return Sir[vir];Ixo(Sir,vir,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(t,r){this.listeners[t].push(r)}removeListener(t,r){let s=this.listeners[t],a=s.indexOf(r);a!==-1&&(a===0&&s.length===1?s.length=0:s.splice(a,1))}emit(t,r,s){if(this.emitted[t])return!1;this.emitted[t]=!0;let a=!1;for(let o of this.listeners[t])a=o(r,s)===!0||a;return t==="exit"&&(a=this.emit("afterExit",r,s)||a),a}},tdt=class{},Cxo=e=>({onExit(t,r){return e.onExit(t,r)},load(){return e.load()},unload(){return e.unload()}}),Tir=class extends tdt{onExit(){return()=>{}}load(){}unload(){}},Nir=class extends tdt{#e=Rir.platform==="win32"?"SIGINT":"SIGHUP";#t=new wir;#r;#n;#i;#a={};#s=!1;constructor(t){super(),this.#r=t,this.#a={};for(let r of qde)this.#a[r]=()=>{let s=this.#r.listeners(r),{count:a}=this.#t,o=t;if(typeof o.__signal_exit_emitter__=="object"&&typeof o.__signal_exit_emitter__.count=="number"&&(a+=o.__signal_exit_emitter__.count),s.length===a){this.unload();let g=this.#t.emit("exit",null,r),p=r==="SIGHUP"?this.#e:r;g||t.kill(t.pid,p)}};this.#i=t.reallyExit,this.#n=t.emit}onExit(t,r){if(!edt(this.#r))return()=>{};this.#s===!1&&this.load();let s=r?.alwaysLast?"afterExit":"exit";return this.#t.on(s,t),()=>{this.#t.removeListener(s,t),this.#t.listeners.exit.length===0&&this.#t.listeners.afterExit.length===0&&this.unload()}}load(){if(!this.#s){this.#s=!0,this.#t.count+=1;for(let t of qde)try{let r=this.#a[t];r&&this.#r.on(t,r)}catch{}this.#r.emit=(t,...r)=>this.#g(t,...r),this.#r.reallyExit=t=>this.#u(t)}}unload(){this.#s&&(this.#s=!1,qde.forEach(t=>{let r=this.#a[t];if(!r)throw new Error("Listener not defined for signal: "+t);try{this.#r.removeListener(t,r)}catch{}}),this.#r.emit=this.#n,this.#r.reallyExit=this.#i,this.#t.count-=1)}#u(t){return edt(this.#r)?(this.#r.exitCode=t||0,this.#t.emit("exit",this.#r.exitCode,null),this.#i.call(this.#r,this.#r.exitCode)):0}#g(t,...r){let s=this.#n;if(t==="exit"&&edt(this.#r)){typeof r[0]=="number"&&(this.#r.exitCode=r[0]);let a=s.call(this.#r,t,...r);return this.#t.emit("exit",this.#r.exitCode,null),a}else return s.call(this.#r,t,...r)}},Rir=globalThis.process,{onExit:rdt,load:W$c,unload:P$c}=Cxo(edt(Rir)?new Nir(Rir):new Tir)});var ZOn=z((Iel,FOn)=>{"use strict";var{PassThrough:Hxo}=Dt("stream");FOn.exports=function(){var e=[],t=new Hxo({objectMode:!0});return t.setMaxListeners(0),t.add=r,t.isEmpty=s,t.on("unpipe",a),Array.prototype.slice.call(arguments).forEach(r),t;function r(o){return Array.isArray(o)?(o.forEach(r),this):(e.push(o),o.once("end",a.bind(null,o)),o.once("error",t.emit.bind(t,"error")),o.pipe(t,{end:!1}),this)}function s(){return e.length==0}function a(o){e=e.filter(function(g){return g!==o}),!e.length&&t.readable&&t.end()}}});var hMn=z((Ttl,mMn)=>{"use strict";var Zko=/()(.+)/gi,Lko="# ------------------------ >8 ------------------------";function Idt(e){let t=e.match(/[^\r\n]/);if(!t)return"";let r=t.index,s=e.length-1;for(;e[s]==="\r"||e[s]===` -`;)s--;return e.substring(r,s+1)}function $de(e,t){return e?e+=` -`+t:e=t,e}function Vko(e){return function(t){return t.charAt(0)!==e}}function Wko(e){let t=e.indexOf(Lko);return t===-1?e:e.slice(0,t)}function CMn(e,t){let r=[],s,a,o=e.match(t.references)!==null?t.references:Zko;for(;s=o.exec(e);){let g=s[1]||null,p=s[2];for(;a=t.referenceParts.exec(p);){let f=null,m=a[1]||"",y=m.split("/");y.length>1&&(f=y.shift(),m=y.join("/"));let B={action:g,owner:f,repository:m||null,issue:a[3],raw:a[0],prefix:a[2]};r.push(B)}}return r}function Pko(){return!0}function Oko(e,t,r){if(!e||!e.trim())throw new TypeError("Expected a raw commit");if(!t||typeof t=="object"&&!Object.keys(t).length)throw new TypeError("Expected options");if(!r)throw new TypeError("Expected regex");let s,a,o={},g=typeof t.commentChar=="string"?Vko(t.commentChar):Pko,p=Ue=>!Ue.match(/^\s*gpg:/),f=Idt(e).split(/\r?\n/),m=Wko(f).filter(g).filter(p),y=!1,B=!0,v=t.headerCorrespondence?.map(function(Ue){return Ue.trim()})||[],G=t.revertCorrespondence?.map(function(Ue){return Ue.trim()})||[],T=t.mergeCorrespondence?.map(function(Ue){return Ue.trim()})||[],O=null,X=null,U=null,le=[],ae=null,ge=[],fe=[],pe=null;if(m.length===0)return{body:O,footer:X,header:U,mentions:le,merge:ae,notes:ge,references:fe,revert:pe,scope:null,subject:null,type:null};ae=m.shift();let he={},be={};O="",X="";let Te=ae.match(t.mergePattern);if(Te&&t.mergePattern){for(ae=Te[0],U=m.shift();U!==void 0&&!U.trim();)U=m.shift();U||(U=""),T.forEach(function(Ue,Je){let Xe=Te[Je+1]||null;he[Ue]=Xe})}else U=ae,ae=null,T.forEach(function(Ue){he[Ue]=null});let ke=U.match(t.headerPattern);if(ke?v.forEach(function(Ue,Je){let Xe=ke[Je+1]||null;be[Ue]=Xe}):v.forEach(function(Ue){be[Ue]=null}),fe.push(...CMn(U,{references:r.references,referenceParts:r.referenceParts})),m.forEach(function(Ue){if(t.fieldPattern){let Gt=t.fieldPattern.exec(Ue);if(Gt){s=Gt[1];return}if(s){o[s]=$de(o[s],Ue);return}}let Je,Xe=Ue.match(r.notes);if(Xe){y=!0,B=!1,X=$de(X,Ue);let Gt={title:Xe[1],text:Xe[2]};ge.push(Gt);return}let ft=CMn(Ue,{references:r.references,referenceParts:r.referenceParts});if(ft.length>0&&(B=!1,Je=!0,y=!1),Array.prototype.push.apply(fe,ft),Je){X=$de(X,Ue);return}if(y){ge[ge.length-1].text=$de(ge[ge.length-1].text,Ue),X=$de(X,Ue);return}B?O=$de(O,Ue):X=$de(X,Ue)}),t.breakingHeaderPattern&&ge.length===0){let Ue=U.match(t.breakingHeaderPattern);if(Ue){let Je=Ue[3];ge.push({title:"BREAKING CHANGE",text:Je})}}for(;a=r.mentions.exec(e);)le.push(a[1]);let x=e.match(t.revertPattern);return x?(pe={},G.forEach(function(Ue,Je){let Xe=x[Je+1]||null;pe[Ue]=Xe})):pe=null,ge.forEach(function(Ue){Ue.text=Idt(Ue.text)}),{...be,...he,merge:ae,header:U,body:O?Idt(O):null,footer:X?Idt(X):null,notes:ge,references:fe,mentions:le,revert:pe,...o}}mMn.exports=Oko});var bMn=z((Ntl,yMn)=>{"use strict";var _Mn=/(?!.*)/;function zir(e,t){return e.map(function(r){return r.trim()}).filter(function(r){return r.length}).join(t)}function Mko(e,t){if(!e)return _Mn;let r=zir(e,"|");return t?t(r):new RegExp("^[\\s|*]*("+r+")[:\\s]+(.*)","i")}function Qko(e,t){if(!e)return _Mn;let r=t?"g":"gi";return new RegExp("(?:.*?)??\\s*([\\w-\\.\\/]*?)??("+zir(e,"|")+")([\\w-]*\\d+)",r)}function Yko(e){if(!e)return/()(.+)/gi;let t=zir(e,"|");return new RegExp("("+t+")(?:\\s+(.*?))(?=(?:"+t+")|$)","gi")}yMn.exports=function(e){e=e||{};let t=Mko(e.noteKeywords,e.notesPattern),r=Qko(e.issuePrefixes,e.issuePrefixesCaseSensitive),s=Yko(e.referenceActions);return{notes:t,referenceParts:r,references:s,mentions:/@([\w-]+)/g}}});var SMn=z((Rtl,qir)=>{"use strict";var{Transform:Hko}=Dt("stream"),EMn=hMn(),BMn=bMn();function vMn(e){return e={headerPattern:/^(\w*)(?:\(([\w$.\-*/ ]*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],referenceActions:["close","closes","closed","fix","fixes","fixed","resolve","resolves","resolved"],issuePrefixes:["#"],noteKeywords:["BREAKING CHANGE","BREAKING-CHANGE"],fieldPattern:/^-(.*?)-$/,revertPattern:/^Revert\s"([\s\S]*)"\s*This reverts commit (\w*)\./,revertCorrespondence:["header","hash"],warn:function(){},mergePattern:null,mergeCorrespondence:null,...e},typeof e.headerPattern=="string"&&(e.headerPattern=new RegExp(e.headerPattern)),typeof e.headerCorrespondence=="string"&&(e.headerCorrespondence=e.headerCorrespondence.split(",")),typeof e.referenceActions=="string"&&(e.referenceActions=e.referenceActions.split(",")),typeof e.issuePrefixes=="string"&&(e.issuePrefixes=e.issuePrefixes.split(",")),typeof e.noteKeywords=="string"&&(e.noteKeywords=e.noteKeywords.split(",")),typeof e.fieldPattern=="string"&&(e.fieldPattern=new RegExp(e.fieldPattern)),typeof e.revertPattern=="string"&&(e.revertPattern=new RegExp(e.revertPattern)),typeof e.revertCorrespondence=="string"&&(e.revertCorrespondence=e.revertCorrespondence.split(",")),typeof e.mergePattern=="string"&&(e.mergePattern=new RegExp(e.mergePattern)),e}function Xko(e){e=vMn(e);let t=BMn(e);return new Hko({objectMode:!0,highWaterMark:16,transform(r,s,a){let o;try{o=EMn(r.toString(),e,t),a(null,o)}catch(g){e.warn===!0?a(g):(e.warn(g.toString()),a(null,""))}}})}function Jko(e,t){t=vMn(t);let r=BMn(t);return EMn(e,t,r)}qir.exports=Xko;qir.exports.sync=Jko});var TMn=z((Dtl,wMn)=>{"use strict";function Uko(){return{headerPattern:/^(\w*)(?:\((.*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],noteKeywords:["BREAKING CHANGE"],revertPattern:/^(?:Revert|revert:)\s"?([\s\S]+?)"?\s*This reverts commit (\w*)\./i,revertCorrespondence:["header","hash"]}}wMn.exports.createParserOpts=Uko});var RMn=z((xtl,NMn)=>{"use strict";var Kko=r7t();async function jko(){let e=zko();return e.mainTemplate="",e.headerPartial="",e.commitPartial="",e.footerPartial="",e}NMn.exports.createWriterOpts=jko;function zko(){return{transform:(e,t)=>{let r=!0,s=[];if(e.notes.forEach(a=>{a.title="BREAKING CHANGES",r=!1}),e.type==="feat")e.type="Features";else if(e.type==="fix")e.type="Bug Fixes";else if(e.type==="perf")e.type="Performance Improvements";else if(e.type==="revert"||e.revert)e.type="Reverts";else{if(r)return;e.type==="docs"?e.type="Documentation":e.type==="style"?e.type="Styles":e.type==="refactor"?e.type="Code Refactoring":e.type==="test"?e.type="Tests":e.type==="build"?e.type="Build System":e.type==="ci"&&(e.type="Continuous Integration")}if(e.scope==="*"&&(e.scope=""),typeof e.hash=="string"&&(e.shortHash=e.hash.substring(0,7)),typeof e.subject=="string"){let a=t.repository?`${t.host}/${t.owner}/${t.repository}`:t.repoUrl;a&&(a=`${a}/issues/`,e.subject=e.subject.replace(/#([0-9]+)/g,(o,g)=>(s.push(g),`[#${g}](${a}${g})`))),t.host&&(e.subject=e.subject.replace(/\B@([a-z0-9](?:-?[a-z0-9/]){0,38})/g,(o,g)=>g.includes("/")?`@${g}`:`[@${g}](${t.host}/${g})`))}return e.references=e.references.filter(a=>s.indexOf(a.issue)===-1),e},groupBy:"type",commitGroupsSort:"title",commitsSort:["scope","subject"],noteGroupsSort:"title",notesSort:Kko}}});var xMn=z((ktl,DMn)=>{"use strict";function qko(e,t){return{parserOpts:e,writerOpts:t}}DMn.exports.createConventionalChangelogOpts=qko});var GMn=z((Gtl,kMn)=>{"use strict";function $ko(e){return{parserOpts:e,whatBump(t){let r=2,s=0,a=0;return t.forEach(o=>{o.notes.length>0?(s+=o.notes.length,r=0):o.type==="feat"&&(a+=1,r===2&&(r=1))}),{level:r,reason:s===1?`There is ${s} BREAKING CHANGE and ${a} features`:`There are ${s} BREAKING CHANGES and ${a} features`}}}}kMn.exports.createConventionalRecommendedBumpOpts=$ko});var ZMn=z((Ftl,FMn)=>{"use strict";var{createParserOpts:eGo}=TMn(),{createWriterOpts:tGo}=RMn(),{createConventionalChangelogOpts:rGo}=xMn(),{createConventionalRecommendedBumpOpts:nGo}=GMn();async function iGo(){let e=eGo(),t=await tGo(),r=nGo(e),s=rGo(e,t);return{parserOpts:e,writerOpts:t,recommendedBumpOpts:r,conventionalChangelog:s}}FMn.exports=iGo});var uQn=z((Ltl,lQn)=>{var oGo=1/0,aGo="[object Symbol]",cGo=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,lGo=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,mdt="\\ud800-\\udfff",JMn="\\u0300-\\u036f\\ufe20-\\ufe23",UMn="\\u20d0-\\u20f0",KMn="\\u2700-\\u27bf",jMn="a-z\\xdf-\\xf6\\xf8-\\xff",uGo="\\xac\\xb1\\xd7\\xf7",gGo="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",AGo="\\u2000-\\u206f",dGo=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",zMn="A-Z\\xc0-\\xd6\\xd8-\\xde",qMn="\\ufe0e\\ufe0f",$Mn=uGo+gGo+AGo+dGo,esr="['\u2019]",pGo="["+mdt+"]",PMn="["+$Mn+"]",Cdt="["+JMn+UMn+"]",eQn="\\d+",fGo="["+KMn+"]",tQn="["+jMn+"]",rQn="[^"+mdt+$Mn+eQn+KMn+jMn+zMn+"]",$ir="\\ud83c[\\udffb-\\udfff]",IGo="(?:"+Cdt+"|"+$ir+")",nQn="[^"+mdt+"]",tsr="(?:\\ud83c[\\udde6-\\uddff]){2}",rsr="[\\ud800-\\udbff][\\udc00-\\udfff]",iBe="["+zMn+"]",iQn="\\u200d",OMn="(?:"+tQn+"|"+rQn+")",CGo="(?:"+iBe+"|"+rQn+")",MMn="(?:"+esr+"(?:d|ll|m|re|s|t|ve))?",QMn="(?:"+esr+"(?:D|LL|M|RE|S|T|VE))?",sQn=IGo+"?",oQn="["+qMn+"]?",mGo="(?:"+iQn+"(?:"+[nQn,tsr,rsr].join("|")+")"+oQn+sQn+")*",aQn=oQn+sQn+mGo,hGo="(?:"+[fGo,tsr,rsr].join("|")+")"+aQn,_Go="(?:"+[nQn+Cdt+"?",Cdt,tsr,rsr,pGo].join("|")+")",yGo=RegExp(esr,"g"),bGo=RegExp(Cdt,"g"),EGo=RegExp($ir+"(?="+$ir+")|"+_Go+aQn,"g"),BGo=RegExp([iBe+"?"+tQn+"+"+MMn+"(?="+[PMn,iBe,"$"].join("|")+")",CGo+"+"+QMn+"(?="+[PMn,iBe+OMn,"$"].join("|")+")",iBe+"?"+OMn+"+"+MMn,iBe+"+"+QMn,eQn,hGo].join("|"),"g"),vGo=RegExp("["+iQn+mdt+JMn+UMn+qMn+"]"),SGo=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,wGo={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},TGo=typeof global=="object"&&global&&global.Object===Object&&global,NGo=typeof self=="object"&&self&&self.Object===Object&&self,RGo=TGo||NGo||Function("return this")();function DGo(e,t,r,s){var a=-1,o=e?e.length:0;for(s&&o&&(r=e[++a]);++aa?0:a+t),r=r>a?a:r,r<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=Array(a);++s=s?e:MGo(e,t,r)}function HGo(e){return function(t){t=hdt(t);var r=cQn(t)?LGo(t):void 0,s=r?r[0]:t.charAt(0),a=r?YGo(r,1).join(""):t.slice(1);return s[e]()+a}}function XGo(e){return function(t){return DGo($Go(zGo(t).replace(yGo,"")),e,"")}}function JGo(e){return!!e&&typeof e=="object"}function UGo(e){return typeof e=="symbol"||JGo(e)&&OGo.call(e)==aGo}function hdt(e){return e==null?"":QGo(e)}var KGo=XGo(function(e,t,r){return t=t.toLowerCase(),e+(r?jGo(t):t)});function jGo(e){return qGo(hdt(e).toLowerCase())}function zGo(e){return e=hdt(e),e&&e.replace(lGo,FGo).replace(bGo,"")}var qGo=HGo("toUpperCase");function $Go(e,t,r){return e=hdt(e),t=r?void 0:t,t===void 0?ZGo(e)?WGo(e):kGo(e):e.match(t)||[]}lQn.exports=KGo});var kQn=z((Vtl,xQn)=>{var eFo=1/0,tFo="[object Symbol]",rFo=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,nFo=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,mQn="\\ud800-\\udfff",iFo="\\u0300-\\u036f\\ufe20-\\ufe23",sFo="\\u20d0-\\u20f0",hQn="\\u2700-\\u27bf",_Qn="a-z\\xdf-\\xf6\\xf8-\\xff",oFo="\\xac\\xb1\\xd7\\xf7",aFo="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",cFo="\\u2000-\\u206f",lFo=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",yQn="A-Z\\xc0-\\xd6\\xd8-\\xde",uFo="\\ufe0e\\ufe0f",bQn=oFo+aFo+cFo+lFo,nsr="['\u2019]",gQn="["+bQn+"]",EQn="["+iFo+sFo+"]",BQn="\\d+",gFo="["+hQn+"]",vQn="["+_Qn+"]",SQn="[^"+mQn+bQn+BQn+hQn+_Qn+yQn+"]",AFo="\\ud83c[\\udffb-\\udfff]",dFo="(?:"+EQn+"|"+AFo+")",pFo="[^"+mQn+"]",wQn="(?:\\ud83c[\\udde6-\\uddff]){2}",TQn="[\\ud800-\\udbff][\\udc00-\\udfff]",sBe="["+yQn+"]",fFo="\\u200d",AQn="(?:"+vQn+"|"+SQn+")",IFo="(?:"+sBe+"|"+SQn+")",dQn="(?:"+nsr+"(?:d|ll|m|re|s|t|ve))?",pQn="(?:"+nsr+"(?:D|LL|M|RE|S|T|VE))?",NQn=dFo+"?",RQn="["+uFo+"]?",CFo="(?:"+fFo+"(?:"+[pFo,wQn,TQn].join("|")+")"+RQn+NQn+")*",mFo=RQn+NQn+CFo,hFo="(?:"+[gFo,wQn,TQn].join("|")+")"+mFo,_Fo=RegExp(nsr,"g"),yFo=RegExp(EQn,"g"),bFo=RegExp([sBe+"?"+vQn+"+"+dQn+"(?="+[gQn,sBe,"$"].join("|")+")",IFo+"+"+pQn+"(?="+[gQn,sBe+AQn,"$"].join("|")+")",sBe+"?"+AQn+"+"+dQn,sBe+"+"+pQn,BQn,hFo].join("|"),"g"),EFo=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,BFo={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},vFo=typeof global=="object"&&global&&global.Object===Object&&global,SFo=typeof self=="object"&&self&&self.Object===Object&&self,wFo=vFo||SFo||Function("return this")();function TFo(e,t,r,s){var a=-1,o=e?e.length:0;for(s&&o&&(r=e[++a]);++a{var QFo=1/0,YFo="[object Symbol]",HFo=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,XFo=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,OQn="\\ud800-\\udfff",JFo="\\u0300-\\u036f\\ufe20-\\ufe23",UFo="\\u20d0-\\u20f0",MQn="\\u2700-\\u27bf",QQn="a-z\\xdf-\\xf6\\xf8-\\xff",KFo="\\xac\\xb1\\xd7\\xf7",jFo="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",zFo="\\u2000-\\u206f",qFo=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",YQn="A-Z\\xc0-\\xd6\\xd8-\\xde",$Fo="\\ufe0e\\ufe0f",HQn=KFo+jFo+zFo+qFo,isr="['\u2019]",GQn="["+HQn+"]",XQn="["+JFo+UFo+"]",JQn="\\d+",eZo="["+MQn+"]",UQn="["+QQn+"]",KQn="[^"+OQn+HQn+JQn+MQn+QQn+YQn+"]",tZo="\\ud83c[\\udffb-\\udfff]",rZo="(?:"+XQn+"|"+tZo+")",nZo="[^"+OQn+"]",jQn="(?:\\ud83c[\\udde6-\\uddff]){2}",zQn="[\\ud800-\\udbff][\\udc00-\\udfff]",oBe="["+YQn+"]",iZo="\\u200d",FQn="(?:"+UQn+"|"+KQn+")",sZo="(?:"+oBe+"|"+KQn+")",ZQn="(?:"+isr+"(?:d|ll|m|re|s|t|ve))?",LQn="(?:"+isr+"(?:D|LL|M|RE|S|T|VE))?",qQn=rZo+"?",$Qn="["+$Fo+"]?",oZo="(?:"+iZo+"(?:"+[nZo,jQn,zQn].join("|")+")"+$Qn+qQn+")*",aZo=$Qn+qQn+oZo,cZo="(?:"+[eZo,jQn,zQn].join("|")+")"+aZo,lZo=RegExp(isr,"g"),uZo=RegExp(XQn,"g"),gZo=RegExp([oBe+"?"+UQn+"+"+ZQn+"(?="+[GQn,oBe,"$"].join("|")+")",sZo+"+"+LQn+"(?="+[GQn,oBe+FQn,"$"].join("|")+")",oBe+"?"+FQn+"+"+ZQn,oBe+"+"+LQn,JQn,cZo].join("|"),"g"),AZo=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,dZo={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},pZo=typeof global=="object"&&global&&global.Object===Object&&global,fZo=typeof self=="object"&&self&&self.Object===Object&&self,IZo=pZo||fZo||Function("return this")();function CZo(e,t,r,s){var a=-1,o=e?e.length:0;for(s&&o&&(r=e[++a]);++a{var xZo=1/0,kZo="[object Symbol]",asr="\\ud800-\\udfff",oYn="\\u0300-\\u036f\\ufe20-\\ufe23",aYn="\\u20d0-\\u20f0",cYn="\\ufe0e\\ufe0f",GZo="["+asr+"]",ssr="["+oYn+aYn+"]",osr="\\ud83c[\\udffb-\\udfff]",FZo="(?:"+ssr+"|"+osr+")",lYn="[^"+asr+"]",uYn="(?:\\ud83c[\\udde6-\\uddff]){2}",gYn="[\\ud800-\\udbff][\\udc00-\\udfff]",AYn="\\u200d",dYn=FZo+"?",pYn="["+cYn+"]?",ZZo="(?:"+AYn+"(?:"+[lYn,uYn,gYn].join("|")+")"+pYn+dYn+")*",LZo=pYn+dYn+ZZo,VZo="(?:"+[lYn+ssr+"?",ssr,uYn,gYn,GZo].join("|")+")",WZo=RegExp(osr+"(?="+osr+")|"+VZo+LZo,"g"),PZo=RegExp("["+AYn+asr+oYn+aYn+cYn+"]"),OZo=typeof global=="object"&&global&&global.Object===Object&&global,MZo=typeof self=="object"&&self&&self.Object===Object&&self,QZo=OZo||MZo||Function("return this")();function YZo(e){return e.split("")}function fYn(e){return PZo.test(e)}function HZo(e){return fYn(e)?XZo(e):YZo(e)}function XZo(e){return e.match(WZo)||[]}var JZo=Object.prototype,UZo=JZo.toString,nYn=QZo.Symbol,iYn=nYn?nYn.prototype:void 0,sYn=iYn?iYn.toString:void 0;function KZo(e,t,r){var s=-1,a=e.length;t<0&&(t=-t>a?0:a+t),r=r>a?a:r,r<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=Array(a);++s=s?e:KZo(e,t,r)}function qZo(e){return function(t){t=tLo(t);var r=fYn(t)?HZo(t):void 0,s=r?r[0]:t.charAt(0),a=r?zZo(r,1).join(""):t.slice(1);return s[e]()+a}}function $Zo(e){return!!e&&typeof e=="object"}function eLo(e){return typeof e=="symbol"||$Zo(e)&&UZo.call(e)==kZo}function tLo(e){return e==null?"":jZo(e)}var rLo=qZo("toUpperCase");IYn.exports=rLo});var MYn=z((Otl,OYn)=>{var nLo=1/0,iLo="[object Symbol]",sLo=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,oLo=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,ydt="\\ud800-\\udfff",vYn="\\u0300-\\u036f\\ufe20-\\ufe23",SYn="\\u20d0-\\u20f0",wYn="\\u2700-\\u27bf",TYn="a-z\\xdf-\\xf6\\xf8-\\xff",aLo="\\xac\\xb1\\xd7\\xf7",cLo="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",lLo="\\u2000-\\u206f",uLo=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",NYn="A-Z\\xc0-\\xd6\\xd8-\\xde",RYn="\\ufe0e\\ufe0f",DYn=aLo+cLo+lLo+uLo,lsr="['\u2019]",gLo="["+ydt+"]",mYn="["+DYn+"]",_dt="["+vYn+SYn+"]",xYn="\\d+",ALo="["+wYn+"]",kYn="["+TYn+"]",GYn="[^"+ydt+DYn+xYn+wYn+TYn+NYn+"]",csr="\\ud83c[\\udffb-\\udfff]",dLo="(?:"+_dt+"|"+csr+")",FYn="[^"+ydt+"]",usr="(?:\\ud83c[\\udde6-\\uddff]){2}",gsr="[\\ud800-\\udbff][\\udc00-\\udfff]",aBe="["+NYn+"]",ZYn="\\u200d",hYn="(?:"+kYn+"|"+GYn+")",pLo="(?:"+aBe+"|"+GYn+")",_Yn="(?:"+lsr+"(?:d|ll|m|re|s|t|ve))?",yYn="(?:"+lsr+"(?:D|LL|M|RE|S|T|VE))?",LYn=dLo+"?",VYn="["+RYn+"]?",fLo="(?:"+ZYn+"(?:"+[FYn,usr,gsr].join("|")+")"+VYn+LYn+")*",WYn=VYn+LYn+fLo,ILo="(?:"+[ALo,usr,gsr].join("|")+")"+WYn,CLo="(?:"+[FYn+_dt+"?",_dt,usr,gsr,gLo].join("|")+")",mLo=RegExp(lsr,"g"),hLo=RegExp(_dt,"g"),_Lo=RegExp(csr+"(?="+csr+")|"+CLo+WYn,"g"),yLo=RegExp([aBe+"?"+kYn+"+"+_Yn+"(?="+[mYn,aBe,"$"].join("|")+")",pLo+"+"+yYn+"(?="+[mYn,aBe+hYn,"$"].join("|")+")",aBe+"?"+hYn+"+"+_Yn,aBe+"+"+yYn,xYn,ILo].join("|"),"g"),bLo=RegExp("["+ZYn+ydt+vYn+SYn+RYn+"]"),ELo=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,BLo={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},vLo=typeof global=="object"&&global&&global.Object===Object&&global,SLo=typeof self=="object"&&self&&self.Object===Object&&self,wLo=vLo||SLo||Function("return this")();function TLo(e,t,r,s){var a=-1,o=e?e.length:0;for(s&&o&&(r=e[++a]);++aa?0:a+t),r=r>a?a:r,r<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=Array(a);++s=s?e:WLo(e,t,r)}function MLo(e){return function(t){t=Asr(t);var r=PYn(t)?GLo(t):void 0,s=r?r[0]:t.charAt(0),a=r?OLo(r,1).join(""):t.slice(1);return s[e]()+a}}function QLo(e){return function(t){return TLo(KLo(XLo(t).replace(mLo,"")),e,"")}}function YLo(e){return!!e&&typeof e=="object"}function HLo(e){return typeof e=="symbol"||YLo(e)&&VLo.call(e)==iLo}function Asr(e){return e==null?"":PLo(e)}function XLo(e){return e=Asr(e),e&&e.replace(oLo,xLo).replace(hLo,"")}var JLo=QLo(function(e,t,r){return e+(r?" ":"")+ULo(t)}),ULo=MLo("toUpperCase");function KLo(e,t,r){return e=Asr(e),t=r?void 0:t,t===void 0?kLo(e)?ZLo(e):RLo(e):e.match(t)||[]}OYn.exports=JLo});var FHn=z(tpe=>{"use strict";Object.defineProperty(tpe,"__esModule",{value:!0});tpe.Application=tpe.MinistoreContext=void 0;var t9o=(Ma(),Ai(Oa)),r9o=Dc(),xOe=t9o.__importStar(Fs()),n9o=Dt("readline");tpe.MinistoreContext=xOe.default.createContext(null);var i9o=({children:e})=>{let{stdin:t,setRawMode:r}=(0,r9o.useStdin)();(0,xOe.useEffect)(()=>{r&&r(!0),t&&(0,n9o.emitKeypressEvents)(t)},[t,r]);let[s,a]=(0,xOe.useState)(new Map),o=(0,xOe.useMemo)(()=>({getAll:()=>s,get:g=>s.get(g),set:(g,p)=>a(new Map([...s,[g,p]]))}),[s,a]);return xOe.default.createElement(tpe.MinistoreContext.Provider,{value:o,children:e})};tpe.Application=i9o});var LHn=z(bsr=>{"use strict";Object.defineProperty(bsr,"__esModule",{value:!0});bsr.useKeypress=o9o;var s9o=Dc(),ZHn=Fs();function o9o({active:e},t,r){let{stdin:s}=(0,s9o.useStdin)(),a=(0,ZHn.useCallback)((o,g)=>t(o,g),r);(0,ZHn.useEffect)(()=>{if(!(!e||!s))return s.on("keypress",a),()=>{s.off("keypress",a)}},[e,a,s])}});var PHn=z(Esr=>{"use strict";Object.defineProperty(Esr,"__esModule",{value:!0});Esr.renderForm=u9o;var a9o=(Ma(),Ai(Oa)),VHn=Dc(),WHn=a9o.__importDefault(Fs()),c9o=FHn(),l9o=LHn();async function u9o(e,t,{stdin:r,stdout:s,stderr:a}){let o,g=f=>{let{exit:m}=(0,VHn.useApp)();(0,l9o.useKeypress)({active:!0},(y,B)=>{B.name==="return"&&(o=f,m())},[m,f])},{waitUntilExit:p}=(0,VHn.render)(WHn.default.createElement(c9o.Application,null,WHn.default.createElement(e,{...t,useSubmit:g})),{stdin:r,stdout:s,stderr:a});return await p(),o}});var QHn=z(vdt=>{"use strict";Object.defineProperty(vdt,"__esModule",{value:!0});vdt.forceStdinTty=void 0;var OHn=MHn(Dt("fs")),g9o=MHn(Dt("tty"));function MHn(e){return e&&e.__esModule?e:{default:e}}var A9o=function(){if(process.stdin.isTTY)return!1;var t=OHn.default.constants,r=t.O_RDONLY,s=t.O_NOCTTY,a=OHn.default.openSync("/dev/tty",r+s),o=new g9o.default.ReadStream(a);return Object.defineProperty(process,"stdin",{configurable:!0,enumerable:!0,get:function(){return o}}),!0};vdt.forceStdinTty=A9o});var HHn=z((rsl,YHn)=>{function d9o(e){let t=e.length-1,r=e[t];for(;r===" "||r===" ";)r=e[--t];return e.substring(0,t+1)}function p9o(e){return e.split(` -`).map(s=>d9o(s)).join(` -`)}YHn.exports=function(e,t){if(t=t||{},e==null)return e;var r=t.width||50,s=typeof t.indent=="string"?t.indent:" ",a=t.newline||` -`+s,o=typeof t.escape=="function"?t.escape:f9o,g=".{1,"+r+"}";t.cut!==!0&&(g+="([\\s\u200B]+|$)|[^\\s\u200B]+?([\\s\u200B]+|$)");var p=new RegExp(g,"g"),f=e.match(p)||[],m=s+f.map(function(y){return y.slice(-1)===` -`&&(y=y.slice(0,y.length-1)),o(y)}).join(a);return t.trim===!0&&(m=p9o(m)),m};function f9o(e){return e}});var JHn=z((nsl,XHn)=>{"use strict";var I9o="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";XHn.exports=I9o});var zHn=z((isl,jHn)=>{"use strict";var C9o=JHn();function UHn(){}function KHn(){}KHn.resetWarningCache=UHn;jHn.exports=function(){function e(s,a,o,g,p,f){if(f!==C9o){var m=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw m.name="Invariant Violation",m}}e.isRequired=e;function t(){return e}var r={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:KHn,resetWarningCache:UHn};return r.PropTypes=r,r}});var uBe=z((asl,qHn)=>{qHn.exports=zHn()();var ssl,osl});var Fsr=z((kOe,ABe)=>{var m9o=200,Gsr="__lodash_hash_undefined__",kdt=1,u5n=2,g5n=9007199254740991,Sdt="[object Arguments]",wsr="[object Array]",h9o="[object AsyncFunction]",A5n="[object Boolean]",d5n="[object Date]",p5n="[object Error]",f5n="[object Function]",_9o="[object GeneratorFunction]",wdt="[object Map]",I5n="[object Number]",y9o="[object Null]",gBe="[object Object]",$Hn="[object Promise]",b9o="[object Proxy]",C5n="[object RegExp]",Tdt="[object Set]",m5n="[object String]",E9o="[object Symbol]",B9o="[object Undefined]",Tsr="[object WeakMap]",h5n="[object ArrayBuffer]",Ndt="[object DataView]",v9o="[object Float32Array]",S9o="[object Float64Array]",w9o="[object Int8Array]",T9o="[object Int16Array]",N9o="[object Int32Array]",R9o="[object Uint8Array]",D9o="[object Uint8ClampedArray]",x9o="[object Uint16Array]",k9o="[object Uint32Array]",G9o=/[\\^$.*+?()[\]{}|]/g,F9o=/^\[object .+?Constructor\]$/,Z9o=/^(?:0|[1-9]\d*)$/,o1={};o1[v9o]=o1[S9o]=o1[w9o]=o1[T9o]=o1[N9o]=o1[R9o]=o1[D9o]=o1[x9o]=o1[k9o]=!0;o1[Sdt]=o1[wsr]=o1[h5n]=o1[A5n]=o1[Ndt]=o1[d5n]=o1[p5n]=o1[f5n]=o1[wdt]=o1[I5n]=o1[gBe]=o1[C5n]=o1[Tdt]=o1[m5n]=o1[Tsr]=!1;var _5n=typeof global=="object"&&global&&global.Object===Object&&global,L9o=typeof self=="object"&&self&&self.Object===Object&&self,uz=_5n||L9o||Function("return this")(),y5n=typeof kOe=="object"&&kOe&&!kOe.nodeType&&kOe,e5n=y5n&&typeof ABe=="object"&&ABe&&!ABe.nodeType&&ABe,b5n=e5n&&e5n.exports===y5n,Bsr=b5n&&_5n.process,t5n=function(){try{return Bsr&&Bsr.binding&&Bsr.binding("util")}catch{}}(),r5n=t5n&&t5n.isTypedArray;function V9o(e,t){for(var r=-1,s=e==null?0:e.length,a=0,o=[];++r-1}function pVo(e,t){var r=this.__data__,s=Fdt(r,e);return s<0?(++this.size,r.push([e,t])):r[s][1]=t,this}gz.prototype.clear=uVo;gz.prototype.delete=gVo;gz.prototype.get=AVo;gz.prototype.has=dVo;gz.prototype.set=pVo;function ipe(e){var t=-1,r=e==null?0:e.length;for(this.clear();++tp))return!1;var m=o.get(e);if(m&&o.get(t))return m==t;var y=-1,B=!0,v=r&u5n?new Ddt:void 0;for(o.set(e,t),o.set(t,e);++y-1&&e%1==0&&e-1&&e%1==0&&e<=g5n}function D5n(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}function ZOe(e){return e!=null&&typeof e=="object"}var x5n=r5n?M9o(r5n):DVo;function HVo(e){return QVo(e)?wVo(e):xVo(e)}function XVo(){return[]}function JVo(){return!1}ABe.exports=YVo});var G5n=z((csl,k5n)=>{"use strict";k5n.exports=(e,t)=>{if(!Array.isArray(e))throw new TypeError(`Expected an array, got ${typeof e}`);let r=e.slice(),s=typeof t=="number"?t:0;return r.splice(-s%r.length).concat(r)}});var Zsr=z((lsl,Z5n)=>{"use strict";var UVo=o7t(),F5n=process.platform,e5={tick:"\u2714",cross:"\u2716",star:"\u2605",square:"\u2587",squareSmall:"\u25FB",squareSmallFilled:"\u25FC",play:"\u25B6",circle:"\u25EF",circleFilled:"\u25C9",circleDotted:"\u25CC",circleDouble:"\u25CE",circleCircle:"\u24DE",circleCross:"\u24E7",circlePipe:"\u24BE",circleQuestionMark:"?\u20DD",bullet:"\u25CF",dot:"\u2024",line:"\u2500",ellipsis:"\u2026",pointer:"\u276F",pointerSmall:"\u203A",info:"\u2139",warning:"\u26A0",hamburger:"\u2630",smiley:"\u32E1",mustache:"\u0DF4",heart:"\u2665",arrowUp:"\u2191",arrowDown:"\u2193",arrowLeft:"\u2190",arrowRight:"\u2192",radioOn:"\u25C9",radioOff:"\u25EF",checkboxOn:"\u2612",checkboxOff:"\u2610",checkboxCircleOn:"\u24E7",checkboxCircleOff:"\u24BE",questionMarkPrefix:"?\u20DD",oneHalf:"\xBD",oneThird:"\u2153",oneQuarter:"\xBC",oneFifth:"\u2155",oneSixth:"\u2159",oneSeventh:"\u2150",oneEighth:"\u215B",oneNinth:"\u2151",oneTenth:"\u2152",twoThirds:"\u2154",twoFifths:"\u2156",threeQuarters:"\xBE",threeFifths:"\u2157",threeEighths:"\u215C",fourFifths:"\u2158",fiveSixths:"\u215A",fiveEighths:"\u215D",sevenEighths:"\u215E"},KVo={tick:"\u221A",cross:"\xD7",star:"*",square:"\u2588",squareSmall:"[ ]",squareSmallFilled:"[\u2588]",play:"\u25BA",circle:"( )",circleFilled:"(*)",circleDotted:"( )",circleDouble:"( )",circleCircle:"(\u25CB)",circleCross:"(\xD7)",circlePipe:"(\u2502)",circleQuestionMark:"(?)",bullet:"*",dot:".",line:"\u2500",ellipsis:"...",pointer:">",pointerSmall:"\xBB",info:"i",warning:"\u203C",hamburger:"\u2261",smiley:"\u263A",mustache:"\u250C\u2500\u2510",heart:e5.heart,arrowUp:e5.arrowUp,arrowDown:e5.arrowDown,arrowLeft:e5.arrowLeft,arrowRight:e5.arrowRight,radioOn:"(*)",radioOff:"( )",checkboxOn:"[\xD7]",checkboxOff:"[ ]",checkboxCircleOn:"(\xD7)",checkboxCircleOff:"( )",questionMarkPrefix:"\uFF1F",oneHalf:"1/2",oneThird:"1/3",oneQuarter:"1/4",oneFifth:"1/5",oneSixth:"1/6",oneSeventh:"1/7",oneEighth:"1/8",oneNinth:"1/9",oneTenth:"1/10",twoThirds:"2/3",twoFifths:"2/5",threeQuarters:"3/4",threeFifths:"3/5",threeEighths:"3/8",fourFifths:"4/5",fiveSixths:"5/6",fiveEighths:"5/8",sevenEighths:"7/8"};F5n==="linux"&&(e5.questionMarkPrefix="?");var Ldt=F5n==="win32"?KVo:e5,jVo=e=>(Ldt===e5||Object.keys(e5).forEach(t=>{e5[t]!==Ldt[t]&&(e=e.replace(new RegExp(UVo(e5[t]),"g"),Ldt[t]))}),e);Z5n.exports=Object.assign(jVo,Ldt)});var W5n=z(Vdt=>{"use strict";Object.defineProperty(Vdt,"__esModule",{value:!0});Vdt.default=void 0;var L5n=Lsr(Fs()),zVo=Lsr(uBe()),V5n=Dc(),qVo=Lsr(Zsr());function Lsr(e){return e&&e.__esModule?e:{default:e}}var Vsr=({isHighlighted:e})=>L5n.default.createElement(V5n.Box,{marginRight:1},L5n.default.createElement(V5n.Text,{color:e?"blue":void 0},e?qVo.default.pointer:" "));Vsr.propTypes={isHighlighted:zVo.default.bool};Vsr.defaultProps={isHighlighted:!1};var $Vo=Vsr;Vdt.default=$Vo});var M5n=z(Wdt=>{"use strict";Object.defineProperty(Wdt,"__esModule",{value:!0});Wdt.default=void 0;var eWo=O5n(Fs()),P5n=O5n(uBe()),tWo=Dc();function O5n(e){return e&&e.__esModule?e:{default:e}}var Wsr=({isHighlighted:e,label:t})=>eWo.default.createElement(tWo.Text,{color:e?"blue":void 0},t);Wsr.propTypes={isHighlighted:P5n.default.bool,label:P5n.default.string.isRequired};Wsr.defaultProps={isHighlighted:!1};var rWo=Wsr;Wdt.default=rWo});var X5n=z(Pdt=>{"use strict";Object.defineProperty(Pdt,"__esModule",{value:!0});Pdt.default=void 0;var Q5n=Psr(Fs()),nWo=Psr(uBe()),Y5n=Dc(),H5n=Psr(Zsr());function Psr(e){return e&&e.__esModule?e:{default:e}}var Osr=({isSelected:e})=>Q5n.default.createElement(Y5n.Box,{marginRight:1},Q5n.default.createElement(Y5n.Text,{color:"green"},e?H5n.default.circleFilled:H5n.default.circle));Osr.propTypes={isSelected:nWo.default.bool};Osr.defaultProps={isSelected:!1};var iWo=Osr;Pdt.default=iWo});var z5n=z(ape=>{"use strict";Object.defineProperty(ape,"__esModule",{value:!0});Object.defineProperty(ape,"Indicator",{enumerable:!0,get:function(){return J5n.default}});Object.defineProperty(ape,"Item",{enumerable:!0,get:function(){return U5n.default}});Object.defineProperty(ape,"CheckBox",{enumerable:!0,get:function(){return K5n.default}});ape.default=void 0;var ope=oWo(Fs()),VF=pBe(uBe()),sWo=pBe(Fsr()),Odt=pBe(G5n()),Msr=Dc(),J5n=pBe(W5n()),U5n=pBe(M5n()),K5n=pBe(X5n());function pBe(e){return e&&e.__esModule?e:{default:e}}function j5n(){if(typeof WeakMap!="function")return null;var e=new WeakMap;return j5n=function(){return e},e}function oWo(e){if(e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var t=j5n();if(t&&t.has(e))return t.get(e);var r={},s=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var a in e)if(Object.prototype.hasOwnProperty.call(e,a)){var o=s?Object.getOwnPropertyDescriptor(e,a):null;o&&(o.get||o.set)?Object.defineProperty(r,a,o):r[a]=e[a]}return r.default=e,t&&t.set(e,r),r}function Qsr(){return Qsr=Object.assign||function(e){for(var t=1;t{let{items:s,focus:a,onHighlight:o,onSubmit:g}=this.props,{rotateIndex:p,highlightedIndex:f}=this.state,m=this.props.selected||this.state.selected,{limit:y,hasLimit:B}=this;if(a===!1)return;let v=String(r);if(v===aWo||v==="k"){let G=(B?y:s.length)-1,T=f===0,O=B?f:G,X=T?p+1:p,U=T?O:f-1;this.setState({rotateIndex:X,highlightedIndex:U});let le=B?(0,Odt.default)(s,X).slice(0,y):s;o(le[U])}if(v===cWo||v==="j"){let G=f===(B?y:s.length)-1,T=B?f:0,O=G?p-1:p,X=G?T:f+1;this.setState({rotateIndex:O,highlightedIndex:X});let U=B?(0,Odt.default)(s,O).slice(0,y):s;o(U[X])}if(v===uWo){let T=(B?(0,Odt.default)(s,p).slice(0,y):s)[f];this.setSelectedState(this.selectItem(T))}v===lWo&&g(m)})}render(){let{items:t,indicatorComponent:r,itemComponent:s,checkboxComponent:a}=this.props,{rotateIndex:o,highlightedIndex:g}=this.state,{limit:p,hasLimit:f}=this,m=f?(0,Odt.default)(t,o).slice(0,p):t;return ope.default.createElement(Msr.Box,{flexDirection:"column"},m.map((y,B)=>{let v=y.key||y.value,G=B===g,T=this.isSelected(y.value);return ope.default.createElement(Msr.Box,{key:v},ope.default.createElement(r,{isHighlighted:G}),ope.default.createElement(a,{isSelected:T}),ope.default.createElement(s,{...y,isHighlighted:G}))}))}componentDidMount(){let{stdin:t,setRawMode:r}=this.props;r(!0),t.on("data",this.handleInput)}componentWillUnmount(){let{stdin:t,setRawMode:r}=this.props;t.removeListener("data",this.handleInput),r(!1)}componentDidUpdate(t){(0,sWo.default)(t.items,this.props.items)||this.setState({rotateIndex:0,highlightedIndex:0})}isSelected(t){return(this.props.selected||this.state.selected).map(({value:s})=>s).includes(t)}selectItem(t){let{onSelect:r,onUnselect:s}=this.props,a=this.props.selected||this.state.selected;return this.isSelected(t.value)?(s(t),a.filter(({value:o})=>o!==t.value)):(r(t),[...a,t])}setSelectedState(t){this.setState({selected:t})}get hasLimit(){let{limit:t,items:r}=this.props;return typeof t=="number"&&r.length>t}get limit(){let{limit:t,items:r}=this.props;return this.hasLimit?Math.min(t,r.length):r.length}};Mdt(VOe,"propTypes",{items:VF.default.array,selected:VF.default.array,defaultSelected:VF.default.array,focus:VF.default.bool,initialIndex:VF.default.number,indicatorComponent:VF.default.func,checkboxComponent:VF.default.func,itemComponent:VF.default.func,limit:VF.default.number,onSelect:VF.default.func,onUnselect:VF.default.func,onSubmit:VF.default.func,onHighlight:VF.default.func,stdin:VF.default.any.isRequired,setRawMode:VF.default.func.isRequired});Mdt(VOe,"defaultProps",{items:[],selected:void 0,defaultSelected:[],focus:!0,initialIndex:0,indicatorComponent:J5n.default,checkboxComponent:K5n.default,itemComponent:U5n.default,limit:null,onSelect(){},onUnselect(){},onSubmit(){},onHighlight(){}});var gWo=e=>{let{stdin:t,setRawMode:r}=(0,Msr.useStdin)();return ope.default.createElement(VOe,Qsr({},e,{stdin:t,setRawMode:r}))};ape.default=gWo});var $5n=z(fBe=>{"use strict";Object.defineProperty(fBe,"__esModule",{value:!0});Object.defineProperty(fBe,"default",{enumerable:!0,get:function(){return Qdt.default}});Object.defineProperty(fBe,"Item",{enumerable:!0,get:function(){return Qdt.Item}});Object.defineProperty(fBe,"Indicator",{enumerable:!0,get:function(){return Qdt.Indicator}});Object.defineProperty(fBe,"CheckBox",{enumerable:!0,get:function(){return Qdt.CheckBox}});var Qdt=AWo(z5n());function q5n(){if(typeof WeakMap!="function")return null;var e=new WeakMap;return q5n=function(){return e},e}function AWo(e){if(e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var t=q5n();if(t&&t.has(e))return t.get(e);var r={},s=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var a in e)if(Object.prototype.hasOwnProperty.call(e,a)){var o=s?Object.getOwnPropertyDescriptor(e,a):null;o&&(o.get||o.set)?Object.defineProperty(r,a,o):r[a]=e[a]}return r.default=e,t&&t.set(e,r),r}});var DXn=z((Eol,RXn)=>{var BBe=1e3,vBe=BBe*60,SBe=vBe*60,lpe=SBe*24,TWo=lpe*7,NWo=lpe*365.25;RXn.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return RWo(e);if(r==="number"&&isFinite(e))return t.long?xWo(e):DWo(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function RWo(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),s=(t[2]||"ms").toLowerCase();switch(s){case"years":case"year":case"yrs":case"yr":case"y":return r*NWo;case"weeks":case"week":case"w":return r*TWo;case"days":case"day":case"d":return r*lpe;case"hours":case"hour":case"hrs":case"hr":case"h":return r*SBe;case"minutes":case"minute":case"mins":case"min":case"m":return r*vBe;case"seconds":case"second":case"secs":case"sec":case"s":return r*BBe;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function DWo(e){var t=Math.abs(e);return t>=lpe?Math.round(e/lpe)+"d":t>=SBe?Math.round(e/SBe)+"h":t>=vBe?Math.round(e/vBe)+"m":t>=BBe?Math.round(e/BBe)+"s":e+"ms"}function xWo(e){var t=Math.abs(e);return t>=lpe?$dt(e,t,lpe,"day"):t>=SBe?$dt(e,t,SBe,"hour"):t>=vBe?$dt(e,t,vBe,"minute"):t>=BBe?$dt(e,t,BBe,"second"):e+" ms"}function $dt(e,t,r,s){var a=t>=r*1.5;return Math.round(e/r)+" "+s+(a?"s":"")}});var sor=z((Bol,xXn)=>{function kWo(e){r.debug=r,r.default=r,r.coerce=f,r.disable=o,r.enable=a,r.enabled=g,r.humanize=DXn(),r.destroy=m,Object.keys(e).forEach(y=>{r[y]=e[y]}),r.names=[],r.skips=[],r.formatters={};function t(y){let B=0;for(let v=0;v{if(pe==="%%")return"%";ge++;let be=r.formatters[he];if(typeof be=="function"){let Te=X[ge];pe=be.call(U,Te),X.splice(ge,1),ge--}return pe}),r.formatArgs.call(U,X),(U.log||r.log).apply(U,X)}return O.namespace=y,O.useColors=r.useColors(),O.color=r.selectColor(y),O.extend=s,O.destroy=r.destroy,Object.defineProperty(O,"enabled",{enumerable:!0,configurable:!1,get:()=>v!==null?v:(G!==r.namespaces&&(G=r.namespaces,T=r.enabled(y)),T),set:X=>{v=X}}),typeof r.init=="function"&&r.init(O),O}function s(y,B){let v=r(this.namespace+(typeof B>"u"?":":B)+y);return v.log=this.log,v}function a(y){r.save(y),r.namespaces=y,r.names=[],r.skips=[];let B,v=(typeof y=="string"?y:"").split(/[\s,]+/),G=v.length;for(B=0;B"-"+B)].join(",");return r.enable(""),y}function g(y){if(y[y.length-1]==="*")return!0;let B,v;for(B=0,v=r.skips.length;B{HW.formatArgs=FWo;HW.save=ZWo;HW.load=LWo;HW.useColors=GWo;HW.storage=VWo();HW.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();HW.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function GWo(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function FWo(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+ept.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,s=0;e[0].replace(/%[a-zA-Z%]/g,a=>{a!=="%%"&&(r++,a==="%c"&&(s=r))}),e.splice(s,0,t)}HW.log=console.debug||console.log||(()=>{});function ZWo(e){try{e?HW.storage.setItem("debug",e):HW.storage.removeItem("debug")}catch{}}function LWo(){let e;try{e=HW.storage.getItem("debug")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function VWo(){try{return localStorage}catch{}}ept.exports=sor()(HW);var{formatters:WWo}=ept.exports;WWo.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var FXn=z((pR,rpt)=>{var PWo=Dt("tty"),tpt=Dt("util");pR.init=JWo;pR.log=YWo;pR.formatArgs=MWo;pR.save=HWo;pR.load=XWo;pR.useColors=OWo;pR.destroy=tpt.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");pR.colors=[6,2,3,4,5,1];try{let e=Dt("supports-color");e&&(e.stderr||e).level>=2&&(pR.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}pR.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(a,o)=>o.toUpperCase()),s=process.env[t];return/^(yes|on|true|enabled)$/i.test(s)?s=!0:/^(no|off|false|disabled)$/i.test(s)?s=!1:s==="null"?s=null:s=Number(s),e[r]=s,e},{});function OWo(){return"colors"in pR.inspectOpts?!!pR.inspectOpts.colors:PWo.isatty(process.stderr.fd)}function MWo(e){let{namespace:t,useColors:r}=this;if(r){let s=this.color,a="\x1B[3"+(s<8?s:"8;5;"+s),o=` ${a};1m${t} \x1B[0m`;e[0]=o+e[0].split(` +`,h++};this.projectService.externalProjects.forEach(b),this.projectService.configuredProjects.forEach(b),this.projectService.inferredProjects.forEach(b)}}this.logger.msg(I,"Err")}send(c){if(c.type==="event"&&!this.canUseEvents){this.logger.hasLevel(3)&&this.logger.info(`Session does not support events: ignored event: ${fP(c)}`);return}this.writeMessage(c)}writeMessage(c){var u;let d=NWt(c,this.logger,this.byteLength,this.host.newLine);(u=jl)==null||u.logEvent(`Response message size: ${d.length}`),this.host.write(d)}event(c,u){this.send(RWt(u,c))}doOutput(c,u,d,I,h){let b={seq:0,type:"response",command:u,request_seq:d,success:I,performanceData:this.performanceData};if(I){let R;if(Na(c))b.body=c,R=c.metadata,delete c.metadata;else if(typeof c=="object")if(c.metadata){let{metadata:N,...V}=c;b.body=V,R=N}else b.body=c;else b.body=c;R&&(b.metadata=R)}else w.assert(c===void 0);h&&(b.message=h),this.send(b)}semanticCheck(c,u){var d,I;(d=Qi)==null||d.push(Qi.Phase.Session,"semanticCheck",{file:c,configFilePath:u.canonicalConfigFilePath});let h=UHr(u,c)?bm:u.getLanguageService().getSemanticDiagnostics(c).filter(b=>!!b.file);this.sendDiagnosticsEvent(c,u,h,"semanticDiag"),(I=Qi)==null||I.pop()}syntacticCheck(c,u){var d,I;(d=Qi)==null||d.push(Qi.Phase.Session,"syntacticCheck",{file:c,configFilePath:u.canonicalConfigFilePath}),this.sendDiagnosticsEvent(c,u,u.getLanguageService().getSyntacticDiagnostics(c),"syntaxDiag"),(I=Qi)==null||I.pop()}suggestionCheck(c,u){var d,I;(d=Qi)==null||d.push(Qi.Phase.Session,"suggestionCheck",{file:c,configFilePath:u.canonicalConfigFilePath}),this.sendDiagnosticsEvent(c,u,u.getLanguageService().getSuggestionDiagnostics(c),"suggestionDiag"),(I=Qi)==null||I.pop()}sendDiagnosticsEvent(c,u,d,I){try{this.event({file:c,diagnostics:d.map(h=>KHr(c,u,h))},I)}catch(h){this.logError(h,I)}}updateErrorCheck(c,u,d,I=!0){w.assert(!this.suppressDiagnosticEvents);let h=this.changeSeq,b=Math.min(d,200),R=0,N=()=>{R++,u.length>R&&c.delay("checkOne",b,V)},V=()=>{if(this.changeSeq!==h)return;let P=u[R];if(Ya(P)&&(P=this.toPendingErrorCheck(P),!P)){N();return}let{fileName:Q,project:te}=P;if(M2(te),!!te.containsFile(Q,I)&&(this.syntacticCheck(Q,te),this.changeSeq===h)){if(te.projectService.serverMode!==0){N();return}c.immediate("semanticCheck",()=>{if(this.semanticCheck(Q,te),this.changeSeq===h){if(this.getPreferences(Q).disableSuggestions){N();return}c.immediate("suggestionCheck",()=>{this.suggestionCheck(Q,te),N()})}})}};u.length>R&&this.changeSeq===h&&c.delay("checkOne",d,V)}cleanProjects(c,u){if(u){this.logger.info(`cleaning ${c}`);for(let d of u)d.getLanguageService(!1).cleanupSemanticCache(),d.cleanupProgram()}}cleanup(){this.cleanProjects("inferred projects",this.projectService.inferredProjects),this.cleanProjects("configured projects",on(this.projectService.configuredProjects.values())),this.cleanProjects("external projects",this.projectService.externalProjects),this.host.gc&&(this.logger.info("host.gc()"),this.host.gc())}getEncodedSyntacticClassifications(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c);return d.getEncodedSyntacticClassifications(u,c)}getEncodedSemanticClassifications(c){let{file:u,project:d}=this.getFileAndProject(c),I=c.format==="2020"?"2020":"original";return d.getLanguageService().getEncodedSemanticClassifications(u,c,I)}getProject(c){return c===void 0?void 0:this.projectService.findProject(c)}getConfigFileAndProject(c){let u=this.getProject(c.projectFileName),d=Of(c.file);return{configFile:u&&u.hasConfigFile(d)?d:void 0,project:u}}getConfigFileDiagnostics(c,u,d){let I=u.getAllProjectErrors(),h=u.getLanguageService().getCompilerOptionsDiagnostics(),b=Gt(vi(I,h),R=>!!R.file&&R.file.fileName===c);return d?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(b):Ot(b,R=>L0e(R,!1))}convertToDiagnosticsWithLinePositionFromDiagnosticFile(c){return c.map(u=>({message:kN(u.messageText,this.host.newLine),start:u.start,length:u.length,category:zh(u),code:u.code,source:u.source,startLocation:u.file&&rre(Vl(u.file,u.start)),endLocation:u.file&&rre(Vl(u.file,u.start+u.length)),reportsUnnecessary:u.reportsUnnecessary,reportsDeprecated:u.reportsDeprecated,relatedInformation:Ot(u.relatedInformation,i$e)}))}getCompilerOptionsDiagnostics(c){let u=this.getProject(c.projectFileName);return this.convertToDiagnosticsWithLinePosition(Gt(u.getLanguageService().getCompilerOptionsDiagnostics(),d=>!d.file),void 0)}convertToDiagnosticsWithLinePosition(c,u){return c.map(d=>({message:kN(d.messageText,this.host.newLine),start:d.start,length:d.length,category:zh(d),code:d.code,source:d.source,startLocation:u&&u.positionToLineOffset(d.start),endLocation:u&&u.positionToLineOffset(d.start+d.length),reportsUnnecessary:d.reportsUnnecessary,reportsDeprecated:d.reportsDeprecated,relatedInformation:Ot(d.relatedInformation,i$e)}))}getDiagnosticsWorker(c,u,d,I){let{project:h,file:b}=this.getFileAndProject(c);if(u&&UHr(h,b))return bm;let R=h.getScriptInfoForNormalizedPath(b),N=d(h,b);return I?this.convertToDiagnosticsWithLinePosition(N,R):N.map(V=>KHr(b,h,V))}getDefinition(c,u){let{file:d,project:I}=this.getFileAndProject(c),h=this.getPositionInFile(c,d),b=this.mapDefinitionInfoLocations(I.getLanguageService().getDefinitionAtPosition(d,h)||bm,I);return u?this.mapDefinitionInfo(b,I):b.map(MAt.mapToOriginalLocation)}mapDefinitionInfoLocations(c,u){return c.map(d=>{let I=$Hr(d,u);return I?{...I,containerKind:d.containerKind,containerName:d.containerName,kind:d.kind,name:d.name,failedAliasResolution:d.failedAliasResolution,...d.unverified&&{unverified:d.unverified}}:d})}getDefinitionAndBoundSpan(c,u){let{file:d,project:I}=this.getFileAndProject(c),h=this.getPositionInFile(c,d),b=w.checkDefined(I.getScriptInfo(d)),R=I.getLanguageService().getDefinitionAndBoundSpan(d,h);if(!R||!R.definitions)return{definitions:bm,textSpan:void 0};let N=this.mapDefinitionInfoLocations(R.definitions,I),{textSpan:V}=R;return u?{definitions:this.mapDefinitionInfo(N,I),textSpan:cD(V,b)}:{definitions:N.map(MAt.mapToOriginalLocation),textSpan:V}}findSourceDefinition(c){var u;let{file:d,project:I}=this.getFileAndProject(c),h=this.getPositionInFile(c,d),b=I.getLanguageService().getDefinitionAtPosition(d,h),R=this.mapDefinitionInfoLocations(b||bm,I).slice();if(this.projectService.serverMode===0&&(!lr(R,re=>Of(re.fileName)!==d&&!re.isAmbient)||lr(R,re=>!!re.failedAliasResolution))){let re=Kd(Be=>Be.textSpan.start,dje(this.host.useCaseSensitiveFileNames));R?.forEach(Be=>re.add(Be));let ue=I.getNoDtsResolutionProject(d),Ae=ue.getLanguageService(),de=(u=Ae.getDefinitionAtPosition(d,h,!0,!1))==null?void 0:u.filter(Be=>Of(Be.fileName)!==d);if(lr(de))for(let Be of de){if(Be.unverified){let Fe=Q(Be,I.getLanguageService().getProgram(),Ae.getProgram());if(lr(Fe)){for(let Ne of Fe)re.add(Ne);continue}}re.add(Be)}else{let Be=R.filter(Fe=>Of(Fe.fileName)!==d&&Fe.isAmbient);for(let Fe of lr(Be)?Be:P()){let Ne=V(Fe.fileName,d,ue);if(!Ne)continue;let Me=this.projectService.getOrCreateScriptInfoNotOpenedByClient(Ne,ue.currentDirectory,ue.directoryStructureHost,!1);if(!Me)continue;ue.containsScriptInfo(Me)||(ue.addRoot(Me),ue.updateGraph());let De=Ae.getProgram(),lt=w.checkDefined(De.getSourceFile(Ne));for(let Le of te(Fe.name,lt,De))re.add(Le)}}R=on(re.values())}return R=R.filter(re=>!re.isAmbient&&!re.failedAliasResolution),this.mapDefinitionInfo(R,I);function V(re,ue,Ae){var de,Be,Fe;let Ne=ble(re);if(Ne&&re.lastIndexOf(Kx)===Ne.topLevelNodeModulesIndex){let Me=re.substring(0,Ne.packageRootIndex),De=(de=I.getModuleResolutionCache())==null?void 0:de.getPackageJsonInfoCache(),lt=I.getCompilationSettings(),Le=iue(Qc(Me+"/package.json",I.getCurrentDirectory()),nue(De,I,lt));if(!Le)return;let je=V8e(Le,{moduleResolution:2},I,I.getModuleResolutionCache()),st=re.substring(Ne.topLevelPackageNameIndex+1,Ne.packageRootIndex),nt=sue(l_e(st)),qe=I.toPath(re);if(je&&lr(je,it=>I.toPath(it)===qe))return(Be=Ae.resolutionCache.resolveSingleModuleNameWithoutWatching(nt,ue).resolvedModule)==null?void 0:Be.resolvedFileName;{let it=re.substring(Ne.packageRootIndex+1),It=`${nt}/${a0(it)}`;return(Fe=Ae.resolutionCache.resolveSingleModuleNameWithoutWatching(It,ue).resolvedModule)==null?void 0:Fe.resolvedFileName}}}function P(){let re=I.getLanguageService(),ue=re.getProgram(),Ae=ub(ue.getSourceFile(d),h);return(JA(Ae)||sr(Ae))&&mp(Ae.parent)&&kDe(Ae,de=>{var Be;if(de===Ae)return;let Fe=(Be=re.getDefinitionAtPosition(d,de.getStart(),!0,!1))==null?void 0:Be.filter(Ne=>Of(Ne.fileName)!==d&&Ne.isAmbient).map(Ne=>({fileName:Ne.fileName,name:N2(Ae)}));if(lr(Fe))return Fe})||bm}function Q(re,ue,Ae){var de;let Be=Ae.getSourceFile(re.fileName);if(!Be)return;let Fe=ub(ue.getSourceFile(d),h),Ne=ue.getTypeChecker().getSymbolAtLocation(Fe),Me=Ne&&qd(Ne,276);if(!Me)return;let De=((de=Me.propertyName)==null?void 0:de.text)||Me.name.text;return te(De,Be,Ae)}function te(re,ue,Ae){let de=Yp.Core.getTopMostDeclarationNamesInFile(re,ue);return tr(de,Be=>{let Fe=Ae.getTypeChecker().getSymbolAtLocation(Be),Ne=q8(Be);if(Fe&&Ne)return zte.createDefinitionInfo(Ne,Ae.getTypeChecker(),Fe,Ne,!0)})}}getEmitOutput(c){let{file:u,project:d}=this.getFileAndProject(c);if(!d.shouldEmitFile(d.getScriptInfo(u)))return{emitSkipped:!0,outputFiles:[],diagnostics:[]};let I=d.getLanguageService().getEmitOutput(u);return c.richResponse?{...I,diagnostics:c.includeLinePosition?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(I.diagnostics):I.diagnostics.map(h=>L0e(h,!0))}:I}mapJSDocTagInfo(c,u,d){return c?c.map(I=>{var h;return{...I,text:d?this.mapDisplayParts(I.text,u):(h=I.text)==null?void 0:h.map(b=>b.text).join("")}}):[]}mapDisplayParts(c,u){return c?c.map(d=>d.kind!=="linkName"?d:{...d,target:this.toFileSpan(d.target.fileName,d.target.textSpan,u)}):[]}mapSignatureHelpItems(c,u,d){return c.map(I=>({...I,documentation:this.mapDisplayParts(I.documentation,u),parameters:I.parameters.map(h=>({...h,documentation:this.mapDisplayParts(h.documentation,u)})),tags:this.mapJSDocTagInfo(I.tags,u,d)}))}mapDefinitionInfo(c,u){return c.map(d=>({...this.toFileSpanWithContext(d.fileName,d.textSpan,d.contextSpan,u),...d.unverified&&{unverified:d.unverified}}))}static mapToOriginalLocation(c){return c.originalFileName?(w.assert(c.originalTextSpan!==void 0,"originalTextSpan should be present if originalFileName is"),{...c,fileName:c.originalFileName,textSpan:c.originalTextSpan,targetFileName:c.fileName,targetTextSpan:c.textSpan,contextSpan:c.originalContextSpan,targetContextSpan:c.contextSpan}):c}toFileSpan(c,u,d){let I=d.getLanguageService(),h=I.toLineColumnOffset(c,u.start),b=I.toLineColumnOffset(c,Ku(u));return{file:c,start:{line:h.line+1,offset:h.character+1},end:{line:b.line+1,offset:b.character+1}}}toFileSpanWithContext(c,u,d,I){let h=this.toFileSpan(c,u,I),b=d&&this.toFileSpan(c,d,I);return b?{...h,contextStart:b.start,contextEnd:b.end}:h}getTypeDefinition(c){let{file:u,project:d}=this.getFileAndProject(c),I=this.getPositionInFile(c,u),h=this.mapDefinitionInfoLocations(d.getLanguageService().getTypeDefinitionAtPosition(u,I)||bm,d);return this.mapDefinitionInfo(h,d)}mapImplementationLocations(c,u){return c.map(d=>{let I=$Hr(d,u);return I?{...I,kind:d.kind,displayParts:d.displayParts}:d})}getImplementation(c,u){let{file:d,project:I}=this.getFileAndProject(c),h=this.getPositionInFile(c,d),b=this.mapImplementationLocations(I.getLanguageService().getImplementationAtPosition(d,h)||bm,I);return u?b.map(({fileName:R,textSpan:N,contextSpan:V})=>this.toFileSpanWithContext(R,N,V,I)):b.map(MAt.mapToOriginalLocation)}getSyntacticDiagnosticsSync(c){let{configFile:u}=this.getConfigFileAndProject(c);return u?bm:this.getDiagnosticsWorker(c,!1,(d,I)=>d.getLanguageService().getSyntacticDiagnostics(I),!!c.includeLinePosition)}getSemanticDiagnosticsSync(c){let{configFile:u,project:d}=this.getConfigFileAndProject(c);return u?this.getConfigFileDiagnostics(u,d,!!c.includeLinePosition):this.getDiagnosticsWorker(c,!0,(I,h)=>I.getLanguageService().getSemanticDiagnostics(h).filter(b=>!!b.file),!!c.includeLinePosition)}getSuggestionDiagnosticsSync(c){let{configFile:u}=this.getConfigFileAndProject(c);return u?bm:this.getDiagnosticsWorker(c,!0,(d,I)=>d.getLanguageService().getSuggestionDiagnostics(I),!!c.includeLinePosition)}getJsxClosingTag(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),I=this.getPositionInFile(c,u),h=d.getJsxClosingTagAtPosition(u,I);return h===void 0?void 0:{newText:h.newText,caretOffset:0}}getLinkedEditingRange(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),I=this.getPositionInFile(c,u),h=d.getLinkedEditingRangeAtPosition(u,I),b=this.projectService.getScriptInfoForNormalizedPath(u);if(!(b===void 0||h===void 0))return Nus(h,b)}getDocumentHighlights(c,u){let{file:d,project:I}=this.getFileAndProject(c),h=this.getPositionInFile(c,d),b=I.getLanguageService().getDocumentHighlights(d,h,c.filesToSearch);return b?u?b.map(({fileName:R,highlightSpans:N})=>{let V=I.getScriptInfo(R);return{file:R,highlightSpans:N.map(({textSpan:P,kind:Q,contextSpan:te})=>({...xWt(P,te,V),kind:Q}))}}):b:bm}provideInlayHints(c){let{file:u,project:d}=this.getFileAndProject(c),I=this.projectService.getScriptInfoForNormalizedPath(u);return d.getLanguageService().provideInlayHints(u,c,this.getPreferences(u)).map(b=>{let{position:R,displayParts:N}=b;return{...b,position:I.positionToLineOffset(R),displayParts:N?.map(({text:V,span:P,file:Q})=>{if(P){w.assertIsDefined(Q,"Target file should be defined together with its span.");let te=this.projectService.getScriptInfo(Q);return{text:V,span:{start:te.positionToLineOffset(P.start),end:te.positionToLineOffset(P.start+P.length),file:Q}}}else return{text:V}})}})}mapCode(c){var u;let d=this.getHostFormatOptions(),I=this.getHostPreferences(),{file:h,languageService:b}=this.getFileAndLanguageServiceForSyntacticOperation(c),R=this.projectService.getScriptInfoForNormalizedPath(h),N=(u=c.mapping.focusLocations)==null?void 0:u.map(P=>P.map(Q=>{let te=R.lineOffsetToPosition(Q.start.line,Q.start.offset),re=R.lineOffsetToPosition(Q.end.line,Q.end.offset);return{start:te,length:re-te}})),V=b.mapCode(h,c.mapping.contents,N,d,I);return this.mapTextChangesToCodeEdits(V)}setCompilerOptionsForInferredProjects(c){this.projectService.setCompilerOptionsForInferredProjects(c.options,c.projectRootPath)}getProjectInfo(c){return this.getProjectInfoWorker(c.file,c.projectFileName,c.needFileNameList,!1)}getProjectInfoWorker(c,u,d,I){let{project:h}=this.getFileAndProjectWorker(c,u);return M2(h),{configFileName:h.getProjectName(),languageServiceDisabled:!h.languageServiceEnabled,fileNames:d?h.getFileNames(!1,I):void 0}}getRenameInfo(c){let{file:u,project:d}=this.getFileAndProject(c),I=this.getPositionInFile(c,u),h=this.getPreferences(u);return d.getLanguageService().getRenameInfo(u,I,h)}getProjects(c,u,d){let I,h;if(c.projectFileName){let b=this.getProject(c.projectFileName);b&&(I=[b])}else{let b=u?this.projectService.getScriptInfoEnsuringProjectsUptoDate(c.file):this.projectService.getScriptInfo(c.file);if(b)u||this.projectService.ensureDefaultProjectForFile(b);else return d?bm:(this.projectService.logErrorForScriptInfoNotFound(c.file),MG.ThrowNoProject());I=b.containingProjects,h=this.projectService.getSymlinkedProjects(b)}return I=Gt(I,b=>b.languageServiceEnabled&&!b.isOrphan()),!d&&(!I||!I.length)&&!h?(this.projectService.logErrorForScriptInfoNotFound(c.file??c.projectFileName),MG.ThrowNoProject()):h?{projects:I,symLinkedProjects:h}:I}getDefaultProject(c){if(c.projectFileName){let d=this.getProject(c.projectFileName);if(d)return d;if(!c.file)return MG.ThrowNoProject()}return this.projectService.getScriptInfo(c.file).getDefaultProject()}getRenameLocations(c,u){let d=Of(c.file),I=this.getPositionInFile(c,d),h=this.getProjects(c),b=this.getDefaultProject(c),R=this.getPreferences(d),N=this.mapRenameInfo(b.getLanguageService().getRenameInfo(d,I,R),w.checkDefined(this.projectService.getScriptInfo(d)));if(!N.canRename)return u?{info:N,locs:[]}:[];let V=yus(h,b,{fileName:c.file,pos:I},!!c.findInStrings,!!c.findInComments,R,this.host.useCaseSensitiveFileNames);return u?{info:N,locs:this.toSpanGroups(V)}:V}mapRenameInfo(c,u){if(c.canRename){let{canRename:d,fileToRename:I,displayName:h,fullDisplayName:b,kind:R,kindModifiers:N,triggerSpan:V}=c;return{canRename:d,fileToRename:I,displayName:h,fullDisplayName:b,kind:R,kindModifiers:N,triggerSpan:cD(V,u)}}else return c}toSpanGroups(c){let u=new Map;for(let{fileName:d,textSpan:I,contextSpan:h,originalContextSpan:b,originalTextSpan:R,originalFileName:N,...V}of c){let P=u.get(d);P||u.set(d,P={file:d,locs:[]});let Q=w.checkDefined(this.projectService.getScriptInfo(d));P.locs.push({...xWt(I,h,Q),...V})}return on(u.values())}getReferences(c,u){let d=Of(c.file),I=this.getProjects(c),h=this.getPositionInFile(c,d),b=Eus(I,this.getDefaultProject(c),{fileName:c.file,pos:h},this.host.useCaseSensitiveFileNames,this.logger);if(!u)return b;let R=this.getPreferences(d),N=this.getDefaultProject(c),V=N.getScriptInfoForNormalizedPath(d),P=N.getLanguageService().getQuickInfoAtPosition(d,h),Q=P?c0e(P.displayParts):"",te=P&&P.textSpan,re=te?V.positionToLineOffset(te.start).offset:0,ue=te?V.getSnapshot().getText(te.start,Ku(te)):"";return{refs:Fr(b,de=>de.references.map(Be=>nYr(this.projectService,Be,R))),symbolName:ue,symbolStartOffset:re,symbolDisplayString:Q}}getFileReferences(c,u){let d=this.getProjects(c),I=c.file,h=this.getPreferences(Of(I)),b=[],R=s$e(this.host.useCaseSensitiveFileNames);return DWt(d,void 0,V=>{if(V.getCancellationToken().isCancellationRequested())return;let P=V.getLanguageService().getFileReferences(I);if(P)for(let Q of P)R.has(Q)||(b.push(Q),R.add(Q))}),u?{refs:b.map(V=>nYr(this.projectService,V,h)),symbolName:`"${c.file}"`}:b}openClientFile(c,u,d,I){this.projectService.openClientFileWithNormalizedPath(c,u,d,!1,I)}getPosition(c,u){return c.position!==void 0?c.position:u.lineOffsetToPosition(c.line,c.offset)}getPositionInFile(c,u){let d=this.projectService.getScriptInfoForNormalizedPath(u);return this.getPosition(c,d)}getFileAndProject(c){return this.getFileAndProjectWorker(c.file,c.projectFileName)}getFileAndLanguageServiceForSyntacticOperation(c){let{file:u,project:d}=this.getFileAndProject(c);return{file:u,languageService:d.getLanguageService(!1)}}getFileAndProjectWorker(c,u){let d=Of(c),I=this.getProject(u)||this.projectService.ensureDefaultProjectForFile(d);return{file:d,project:I}}getOutliningSpans(c,u){let{file:d,languageService:I}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=I.getOutliningSpans(d);if(u){let b=this.projectService.getScriptInfoForNormalizedPath(d);return h.map(R=>({textSpan:cD(R.textSpan,b),hintSpan:cD(R.hintSpan,b),bannerText:R.bannerText,autoCollapse:R.autoCollapse,kind:R.kind}))}else return h}getTodoComments(c){let{file:u,project:d}=this.getFileAndProject(c);return d.getLanguageService().getTodoComments(u,c.descriptors)}getDocCommentTemplate(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),I=this.getPositionInFile(c,u);return d.getDocCommentTemplateAtPosition(u,I,this.getPreferences(u),this.getFormatOptions(u))}getSpanOfEnclosingComment(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),I=c.onlyMultiLine,h=this.getPositionInFile(c,u);return d.getSpanOfEnclosingComment(u,h,I)}getIndentation(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),I=this.getPositionInFile(c,u),h=c.options?tre(c.options):this.getFormatOptions(u),b=d.getIndentationAtPosition(u,I,h);return{position:I,indentation:b}}getBreakpointStatement(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),I=this.getPositionInFile(c,u);return d.getBreakpointStatementAtPosition(u,I)}getNameOrDottedNameSpan(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),I=this.getPositionInFile(c,u);return d.getNameOrDottedNameSpan(u,I,I)}isValidBraceCompletion(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),I=this.getPositionInFile(c,u);return d.isValidBraceCompletionAtPosition(u,I,c.openingBrace.charCodeAt(0))}getQuickInfoWorker(c,u){let{file:d,project:I}=this.getFileAndProject(c),h=this.projectService.getScriptInfoForNormalizedPath(d),b=I.getLanguageService().getQuickInfoAtPosition(d,this.getPosition(c,h));if(!b)return;let R=!!this.getPreferences(d).displayPartsForJSDoc;if(u){let N=c0e(b.displayParts);return{kind:b.kind,kindModifiers:b.kindModifiers,start:h.positionToLineOffset(b.textSpan.start),end:h.positionToLineOffset(Ku(b.textSpan)),displayString:N,documentation:R?this.mapDisplayParts(b.documentation,I):c0e(b.documentation),tags:this.mapJSDocTagInfo(b.tags,I,R)}}else return R?b:{...b,tags:this.mapJSDocTagInfo(b.tags,I,!1)}}getFormattingEditsForRange(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),I=this.projectService.getScriptInfoForNormalizedPath(u),h=I.lineOffsetToPosition(c.line,c.offset),b=I.lineOffsetToPosition(c.endLine,c.endOffset),R=d.getFormattingEditsForRange(u,h,b,this.getFormatOptions(u));if(R)return R.map(N=>this.convertTextChangeToCodeEdit(N,I))}getFormattingEditsForRangeFull(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),I=c.options?tre(c.options):this.getFormatOptions(u);return d.getFormattingEditsForRange(u,c.position,c.endPosition,I)}getFormattingEditsForDocumentFull(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),I=c.options?tre(c.options):this.getFormatOptions(u);return d.getFormattingEditsForDocument(u,I)}getFormattingEditsAfterKeystrokeFull(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),I=c.options?tre(c.options):this.getFormatOptions(u);return d.getFormattingEditsAfterKeystroke(u,c.position,c.key,I)}getFormattingEditsAfterKeystroke(c){let{file:u,languageService:d}=this.getFileAndLanguageServiceForSyntacticOperation(c),I=this.projectService.getScriptInfoForNormalizedPath(u),h=I.lineOffsetToPosition(c.line,c.offset),b=this.getFormatOptions(u),R=d.getFormattingEditsAfterKeystroke(u,h,c.key,b);if(c.key===` +`&&(!R||R.length===0||mus(R,h))){let{lineText:N,absolutePosition:V}=I.textStorage.getAbsolutePositionAndLineText(c.line);if(N&&N.search("\\S")<0){let P=d.getIndentationAtPosition(u,h,b),Q=0,te,re;for(te=0,re=N.length;te({start:I.positionToLineOffset(N.span.start),end:I.positionToLineOffset(Ku(N.span)),newText:N.newText?N.newText:""}))}getCompletions(c,u){let{file:d,project:I}=this.getFileAndProject(c),h=this.projectService.getScriptInfoForNormalizedPath(d),b=this.getPosition(c,h),R=I.getLanguageService().getCompletionsAtPosition(d,b,{...IWt(this.getPreferences(d)),triggerCharacter:c.triggerCharacter,triggerKind:c.triggerKind,includeExternalModuleExports:c.includeExternalModuleExports,includeInsertTextCompletions:c.includeInsertTextCompletions},I.projectService.getFormatCodeOptions(d));if(R===void 0)return;if(u==="completions-full")return R;let N=c.prefix||"",V=tr(R.entries,Q=>{if(R.isMemberCompletion||uc(Q.name.toLowerCase(),N.toLowerCase())){let{name:te,kind:re,kindModifiers:ue,sortText:Ae,insertText:de,filterText:Be,replacementSpan:Fe,hasAction:Ne,source:Me,sourceDisplay:De,labelDetails:lt,isSnippet:Le,isRecommended:je,isPackageJsonImport:st,isImportStatementCompletion:nt,data:qe}=Q,it=Fe?cD(Fe,h):void 0;return{name:te,kind:re,kindModifiers:ue,sortText:Ae,insertText:de,filterText:Be,replacementSpan:it,isSnippet:Le,hasAction:Ne||void 0,source:Me,sourceDisplay:De,labelDetails:lt,isRecommended:je,isPackageJsonImport:st,isImportStatementCompletion:nt,data:qe}}});return u==="completions"?(R.metadata&&(V.metadata=R.metadata),V):{...R,optionalReplacementSpan:R.optionalReplacementSpan&&cD(R.optionalReplacementSpan,h),entries:V}}getCompletionEntryDetails(c,u){let{file:d,project:I}=this.getFileAndProject(c),h=this.projectService.getScriptInfoForNormalizedPath(d),b=this.getPosition(c,h),R=I.projectService.getFormatCodeOptions(d),N=!!this.getPreferences(d).displayPartsForJSDoc,V=tr(c.entryNames,P=>{let{name:Q,source:te,data:re}=typeof P=="string"?{name:P,source:void 0,data:void 0}:P;return I.getLanguageService().getCompletionEntryDetails(d,b,Q,R,te,this.getPreferences(d),re?ps(re,Gus):void 0)});return u?N?V:V.map(P=>({...P,tags:this.mapJSDocTagInfo(P.tags,I,!1)})):V.map(P=>({...P,codeActions:Ot(P.codeActions,Q=>this.mapCodeAction(Q)),documentation:this.mapDisplayParts(P.documentation,I),tags:this.mapJSDocTagInfo(P.tags,I,N)}))}getCompileOnSaveAffectedFileList(c){let u=this.getProjects(c,!0,!0),d=this.projectService.getScriptInfo(c.file);return d?_us(d,I=>this.projectService.getScriptInfoForPath(I),u,(I,h)=>{if(!I.compileOnSaveEnabled||!I.languageServiceEnabled||I.isOrphan())return;let b=I.getCompilationSettings();if(!(b.noEmit||Gh(h.fileName)&&!Cus(b)))return{projectFileName:I.getProjectName(),fileNames:I.getCompileOnSaveAffectedFileList(h),projectUsesOutFile:!!b.outFile}}):bm}emitFile(c){let{file:u,project:d}=this.getFileAndProject(c);if(d||MG.ThrowNoProject(),!d.languageServiceEnabled)return c.richResponse?{emitSkipped:!0,diagnostics:[]}:!1;let I=d.getScriptInfo(u),{emitSkipped:h,diagnostics:b}=d.emitFile(I,(R,N,V)=>this.host.writeFile(R,N,V));return c.richResponse?{emitSkipped:h,diagnostics:c.includeLinePosition?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(b):b.map(R=>L0e(R,!0))}:!h}getSignatureHelpItems(c,u){let{file:d,project:I}=this.getFileAndProject(c),h=this.projectService.getScriptInfoForNormalizedPath(d),b=this.getPosition(c,h),R=I.getLanguageService().getSignatureHelpItems(d,b,c),N=!!this.getPreferences(d).displayPartsForJSDoc;if(R&&u){let V=R.applicableSpan;return{...R,applicableSpan:{start:h.positionToLineOffset(V.start),end:h.positionToLineOffset(V.start+V.length)},items:this.mapSignatureHelpItems(R.items,I,N)}}else return N||!R?R:{...R,items:R.items.map(V=>({...V,tags:this.mapJSDocTagInfo(V.tags,I,!1)}))}}toPendingErrorCheck(c){let u=Of(c),d=this.projectService.tryGetDefaultProjectForFile(u);return d&&{fileName:u,project:d}}getDiagnostics(c,u,d){this.suppressDiagnosticEvents||d.length>0&&this.updateErrorCheck(c,d,u)}change(c){let u=this.projectService.getScriptInfo(c.file);w.assert(!!u),u.textStorage.switchToScriptVersionCache();let d=u.lineOffsetToPosition(c.line,c.offset),I=u.lineOffsetToPosition(c.endLine,c.endOffset);d>=0&&(this.changeSeq++,this.projectService.applyChangesToFile(u,Fa({span:{start:d,length:I-d},newText:c.insertString})))}reload(c,u){let d=Of(c.file),I=c.tmpfile===void 0?void 0:Of(c.tmpfile),h=this.projectService.getScriptInfoForNormalizedPath(d);h&&(this.changeSeq++,h.reloadFromFile(I)&&this.doOutput(void 0,"reload",u,!0))}saveToTmp(c,u){let d=this.projectService.getScriptInfo(c);d&&d.saveTo(u)}closeClientFile(c){if(!c)return;let u=Mc(c);this.projectService.closeClientFile(u)}mapLocationNavigationBarItems(c,u){return Ot(c,d=>({text:d.text,kind:d.kind,kindModifiers:d.kindModifiers,spans:d.spans.map(I=>cD(I,u)),childItems:this.mapLocationNavigationBarItems(d.childItems,u),indent:d.indent}))}getNavigationBarItems(c,u){let{file:d,languageService:I}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=I.getNavigationBarItems(d);return h?u?this.mapLocationNavigationBarItems(h,this.projectService.getScriptInfoForNormalizedPath(d)):h:void 0}toLocationNavigationTree(c,u){return{text:c.text,kind:c.kind,kindModifiers:c.kindModifiers,spans:c.spans.map(d=>cD(d,u)),nameSpan:c.nameSpan&&cD(c.nameSpan,u),childItems:Ot(c.childItems,d=>this.toLocationNavigationTree(d,u))}}getNavigationTree(c,u){let{file:d,languageService:I}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=I.getNavigationTree(d);return h?u?this.toLocationNavigationTree(h,this.projectService.getScriptInfoForNormalizedPath(d)):h:void 0}getNavigateToItems(c,u){let d=this.getFullNavigateToItems(c);return u?Fr(d,({project:I,navigateToItems:h})=>h.map(b=>{let R=I.getScriptInfo(b.fileName),N={name:b.name,kind:b.kind,kindModifiers:b.kindModifiers,isCaseSensitive:b.isCaseSensitive,matchKind:b.matchKind,file:b.fileName,start:R.positionToLineOffset(b.textSpan.start),end:R.positionToLineOffset(Ku(b.textSpan))};return b.kindModifiers&&b.kindModifiers!==""&&(N.kindModifiers=b.kindModifiers),b.containerName&&b.containerName.length>0&&(N.containerName=b.containerName),b.containerKind&&b.containerKind.length>0&&(N.containerKind=b.containerKind),N})):Fr(d,({navigateToItems:I})=>I)}getFullNavigateToItems(c){let{currentFileOnly:u,searchValue:d,maxResultCount:I,projectFileName:h}=c;if(u){w.assertIsDefined(c.file);let{file:te,project:re}=this.getFileAndProject(c);return[{project:re,navigateToItems:re.getLanguageService().getNavigateToItems(d,I,te)}]}let b=this.getHostPreferences(),R=[],N=new Map;if(!c.file&&!h)this.projectService.loadAncestorProjectTree(),this.projectService.forEachEnabledProject(te=>V(te));else{let te=this.getProjects(c);DWt(te,void 0,re=>V(re))}return R;function V(te){let re=te.getLanguageService().getNavigateToItems(d,I,void 0,te.isNonTsProject(),b.excludeLibrarySymbolsInNavTo),ue=Gt(re,Ae=>P(Ae)&&!o$e($ue(Ae),te));ue.length&&R.push({project:te,navigateToItems:ue})}function P(te){let re=te.name;if(!N.has(re))return N.set(re,[te]),!0;let ue=N.get(re);for(let Ae of ue)if(Q(Ae,te))return!1;return ue.push(te),!0}function Q(te,re){return te===re?!0:!te||!re?!1:te.containerKind===re.containerKind&&te.containerName===re.containerName&&te.fileName===re.fileName&&te.isCaseSensitive===re.isCaseSensitive&&te.kind===re.kind&&te.kindModifiers===re.kindModifiers&&te.matchKind===re.matchKind&&te.name===re.name&&te.textSpan.start===re.textSpan.start&&te.textSpan.length===re.textSpan.length}}getSupportedCodeFixes(c){if(!c)return bze();if(c.file){let{file:d,project:I}=this.getFileAndProject(c);return I.getLanguageService().getSupportedCodeFixes(d)}let u=this.getProject(c.projectFileName);return u||MG.ThrowNoProject(),u.getLanguageService().getSupportedCodeFixes()}isLocation(c){return c.line!==void 0}extractPositionOrRange(c,u){let d,I;return this.isLocation(c)?d=h(c):I=this.getRange(c,u),w.checkDefined(d===void 0?I:d);function h(b){return b.position!==void 0?b.position:u.lineOffsetToPosition(b.line,b.offset)}}getRange(c,u){let{startPosition:d,endPosition:I}=this.getStartAndEndPosition(c,u);return{pos:d,end:I}}getApplicableRefactors(c){let{file:u,project:d}=this.getFileAndProject(c),I=d.getScriptInfoForNormalizedPath(u);return d.getLanguageService().getApplicableRefactors(u,this.extractPositionOrRange(c,I),this.getPreferences(u),c.triggerReason,c.kind,c.includeInteractiveActions).map(b=>({...b,actions:b.actions.map(R=>({...R,range:R.range?{start:rre({line:R.range.start.line,character:R.range.start.offset}),end:rre({line:R.range.end.line,character:R.range.end.offset})}:void 0}))}))}getEditsForRefactor(c,u){let{file:d,project:I}=this.getFileAndProject(c),h=I.getScriptInfoForNormalizedPath(d),b=I.getLanguageService().getEditsForRefactor(d,this.getFormatOptions(d),this.extractPositionOrRange(c,h),c.refactor,c.action,this.getPreferences(d),c.interactiveRefactorArguments);if(b===void 0)return{edits:[]};if(u){let{renameFilename:R,renameLocation:N,edits:V}=b,P;if(R!==void 0&&N!==void 0){let Q=I.getScriptInfoForNormalizedPath(Of(R));P=kWt(t7(Q.getSnapshot()),R,N,V)}return{renameLocation:P,renameFilename:R,edits:this.mapTextChangesToCodeEdits(V),notApplicableReason:b.notApplicableReason}}return b}getMoveToRefactoringFileSuggestions(c){let{file:u,project:d}=this.getFileAndProject(c),I=d.getScriptInfoForNormalizedPath(u);return d.getLanguageService().getMoveToRefactoringFileSuggestions(u,this.extractPositionOrRange(c,I),this.getPreferences(u))}getPasteEdits(c){let{file:u,project:d}=this.getFileAndProject(c),I=c.copiedFrom?{file:c.copiedFrom.file,range:c.copiedFrom.spans.map(b=>this.getRange({file:c.copiedFrom.file,startLine:b.start.line,startOffset:b.start.offset,endLine:b.end.line,endOffset:b.end.offset},d.getScriptInfoForNormalizedPath(Of(c.copiedFrom.file))))}:void 0,h=d.getLanguageService().getPasteEdits({targetFile:u,pastedText:c.pastedText,pasteLocations:c.pasteLocations.map(b=>this.getRange({file:u,startLine:b.start.line,startOffset:b.start.offset,endLine:b.end.line,endOffset:b.end.offset},d.getScriptInfoForNormalizedPath(u))),copiedFrom:I,preferences:this.getPreferences(u)},this.getFormatOptions(u));return h&&this.mapPasteEditsAction(h)}organizeImports(c,u){w.assert(c.scope.type==="file");let{file:d,project:I}=this.getFileAndProject(c.scope.args),h=I.getLanguageService().organizeImports({fileName:d,mode:c.mode??(c.skipDestructiveCodeActions?"SortAndCombine":void 0),type:"file"},this.getFormatOptions(d),this.getPreferences(d));return u?this.mapTextChangesToCodeEdits(h):h}getEditsForFileRename(c,u){let d=Of(c.oldFilePath),I=Of(c.newFilePath),h=this.getHostFormatOptions(),b=this.getHostPreferences(),R=new Set,N=[];return this.projectService.loadAncestorProjectTree(),this.projectService.forEachEnabledProject(V=>{let P=V.getLanguageService().getEditsForFileRename(d,I,h,b),Q=[];for(let te of P)R.has(te.fileName)||(N.push(te),Q.push(te.fileName));for(let te of Q)R.add(te)}),u?N.map(V=>this.mapTextChangeToCodeEdit(V)):N}getCodeFixes(c,u){let{file:d,project:I}=this.getFileAndProject(c),h=I.getScriptInfoForNormalizedPath(d),{startPosition:b,endPosition:R}=this.getStartAndEndPosition(c,h),N;try{N=I.getLanguageService().getCodeFixesAtPosition(d,b,R,c.errorCodes,this.getFormatOptions(d),this.getPreferences(d))}catch(V){let P=I.getLanguageService(),Q=[...P.getSyntacticDiagnostics(d),...P.getSemanticDiagnostics(d),...P.getSuggestionDiagnostics(d)].map(re=>t0(b,R-b,re.start,re.length)&&re.code),te=c.errorCodes.find(re=>!Q.includes(re));throw te!==void 0&&(V.message=`BADCLIENT: Bad error code, ${te} not found in range ${b}..${R} (found: ${Q.join(", ")}); could have caused this error: +${V.message}`),V}return u?N.map(V=>this.mapCodeFixAction(V)):N}getCombinedCodeFix({scope:c,fixId:u},d){w.assert(c.type==="file");let{file:I,project:h}=this.getFileAndProject(c.args),b=h.getLanguageService().getCombinedCodeFix({type:"file",fileName:I},u,this.getFormatOptions(I),this.getPreferences(I));return d?{changes:this.mapTextChangesToCodeEdits(b.changes),commands:b.commands}:b}applyCodeActionCommand(c){let u=c.command;for(let d of ys(u)){let{file:I,project:h}=this.getFileAndProject(d);h.getLanguageService().applyCodeActionCommand(d,this.getFormatOptions(I)).then(b=>{},b=>{})}return{}}getStartAndEndPosition(c,u){let d,I;return c.startPosition!==void 0?d=c.startPosition:(d=u.lineOffsetToPosition(c.startLine,c.startOffset),c.startPosition=d),c.endPosition!==void 0?I=c.endPosition:(I=u.lineOffsetToPosition(c.endLine,c.endOffset),c.endPosition=I),{startPosition:d,endPosition:I}}mapCodeAction({description:c,changes:u,commands:d}){return{description:c,changes:this.mapTextChangesToCodeEdits(u),commands:d}}mapCodeFixAction({fixName:c,description:u,changes:d,commands:I,fixId:h,fixAllDescription:b}){return{fixName:c,description:u,changes:this.mapTextChangesToCodeEdits(d),commands:I,fixId:h,fixAllDescription:b}}mapPasteEditsAction({edits:c,fixId:u}){return{edits:this.mapTextChangesToCodeEdits(c),fixId:u}}mapTextChangesToCodeEdits(c){return c.map(u=>this.mapTextChangeToCodeEdit(u))}mapTextChangeToCodeEdit(c){let u=this.projectService.getScriptInfoOrConfig(c.fileName);return!!c.isNewFile==!!u&&(u||this.projectService.logErrorForScriptInfoNotFound(c.fileName),w.fail("Expected isNewFile for (only) new files. "+JSON.stringify({isNewFile:!!c.isNewFile,hasScriptInfo:!!u}))),u?{fileName:c.fileName,textChanges:c.textChanges.map(d=>Tus(d,u))}:Dus(c)}convertTextChangeToCodeEdit(c,u){return{start:u.positionToLineOffset(c.span.start),end:u.positionToLineOffset(c.span.start+c.span.length),newText:c.newText?c.newText:""}}getBraceMatching(c,u){let{file:d,languageService:I}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.projectService.getScriptInfoForNormalizedPath(d),b=this.getPosition(c,h),R=I.getBraceMatchingAtPosition(d,b);return R?u?R.map(N=>cD(N,h)):R:void 0}getDiagnosticsForProject(c,u,d){if(this.suppressDiagnosticEvents)return;let{fileNames:I,languageServiceDisabled:h}=this.getProjectInfoWorker(d,void 0,!0,!0);if(h)return;let b=I.filter(Ae=>!Ae.includes("lib.d.ts"));if(b.length===0)return;let R=[],N=[],V=[],P=[],Q=Of(d),te=this.projectService.ensureDefaultProjectForFile(Q);for(let Ae of b)this.getCanonicalFileName(Ae)===this.getCanonicalFileName(d)?R.push(Ae):this.projectService.getScriptInfo(Ae).isScriptOpen()?N.push(Ae):Gh(Ae)?P.push(Ae):V.push(Ae);let ue=[...R,...N,...V,...P].map(Ae=>({fileName:Ae,project:te}));this.updateErrorCheck(c,ue,u,!1)}configurePlugin(c){this.projectService.configurePlugin(c)}getSmartSelectionRange(c,u){let{locations:d}=c,{file:I,languageService:h}=this.getFileAndLanguageServiceForSyntacticOperation(c),b=w.checkDefined(this.projectService.getScriptInfo(I));return Ot(d,R=>{let N=this.getPosition(R,b),V=h.getSmartSelectionRange(I,N);return u?this.mapSelectionRange(V,b):V})}toggleLineComment(c,u){let{file:d,languageService:I}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.projectService.getScriptInfo(d),b=this.getRange(c,h),R=I.toggleLineComment(d,b);if(u){let N=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(V=>this.convertTextChangeToCodeEdit(V,N))}return R}toggleMultilineComment(c,u){let{file:d,languageService:I}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.projectService.getScriptInfoForNormalizedPath(d),b=this.getRange(c,h),R=I.toggleMultilineComment(d,b);if(u){let N=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(V=>this.convertTextChangeToCodeEdit(V,N))}return R}commentSelection(c,u){let{file:d,languageService:I}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.projectService.getScriptInfoForNormalizedPath(d),b=this.getRange(c,h),R=I.commentSelection(d,b);if(u){let N=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(V=>this.convertTextChangeToCodeEdit(V,N))}return R}uncommentSelection(c,u){let{file:d,languageService:I}=this.getFileAndLanguageServiceForSyntacticOperation(c),h=this.projectService.getScriptInfoForNormalizedPath(d),b=this.getRange(c,h),R=I.uncommentSelection(d,b);if(u){let N=this.projectService.getScriptInfoForNormalizedPath(d);return R.map(V=>this.convertTextChangeToCodeEdit(V,N))}return R}mapSelectionRange(c,u){let d={textSpan:cD(c.textSpan,u)};return c.parent&&(d.parent=this.mapSelectionRange(c.parent,u)),d}getScriptInfoFromProjectService(c){let u=Of(c),d=this.projectService.getScriptInfoForNormalizedPath(u);return d||(this.projectService.logErrorForScriptInfoNotFound(u),MG.ThrowNoProject())}toProtocolCallHierarchyItem(c){let u=this.getScriptInfoFromProjectService(c.file);return{name:c.name,kind:c.kind,kindModifiers:c.kindModifiers,file:c.file,containerName:c.containerName,span:cD(c.span,u),selectionSpan:cD(c.selectionSpan,u)}}toProtocolCallHierarchyIncomingCall(c){let u=this.getScriptInfoFromProjectService(c.from.file);return{from:this.toProtocolCallHierarchyItem(c.from),fromSpans:c.fromSpans.map(d=>cD(d,u))}}toProtocolCallHierarchyOutgoingCall(c,u){return{to:this.toProtocolCallHierarchyItem(c.to),fromSpans:c.fromSpans.map(d=>cD(d,u))}}prepareCallHierarchy(c){let{file:u,project:d}=this.getFileAndProject(c),I=this.projectService.getScriptInfoForNormalizedPath(u);if(I){let h=this.getPosition(c,I),b=d.getLanguageService().prepareCallHierarchy(u,h);return b&&xje(b,R=>this.toProtocolCallHierarchyItem(R))}}provideCallHierarchyIncomingCalls(c){let{file:u,project:d}=this.getFileAndProject(c),I=this.getScriptInfoFromProjectService(u);return d.getLanguageService().provideCallHierarchyIncomingCalls(u,this.getPosition(c,I)).map(b=>this.toProtocolCallHierarchyIncomingCall(b))}provideCallHierarchyOutgoingCalls(c){let{file:u,project:d}=this.getFileAndProject(c),I=this.getScriptInfoFromProjectService(u);return d.getLanguageService().provideCallHierarchyOutgoingCalls(u,this.getPosition(c,I)).map(b=>this.toProtocolCallHierarchyOutgoingCall(b,I))}getCanonicalFileName(c){let u=this.host.useCaseSensitiveFileNames?c:uf(c);return Mc(u)}exit(){}notRequired(){return{responseRequired:!1}}requiredResponse(c){return{response:c,responseRequired:!0}}addProtocolHandler(c,u){if(this.handlers.has(c))throw new Error(`Protocol handler already exists for command "${c}"`);this.handlers.set(c,u)}setCurrentRequest(c){w.assert(this.currentRequestId===void 0),this.currentRequestId=c,this.cancellationToken.setRequest(c)}resetCurrentRequest(c){w.assert(this.currentRequestId===c),this.currentRequestId=void 0,this.cancellationToken.resetRequest(c)}executeWithRequestId(c,u){try{return this.setCurrentRequest(c),u()}finally{this.resetCurrentRequest(c)}}executeCommand(c){let u=this.handlers.get(c.command);if(u){let d=this.executeWithRequestId(c.seq,()=>u(c));return this.projectService.enableRequestedPlugins(),d}else return this.logger.msg(`Unrecognized JSON command:${fP(c)}`,"Err"),this.doOutput(void 0,"unknown",c.seq,!1,`Unrecognized JSON command: ${c.command}`),{responseRequired:!1}}onMessage(c){var u,d,I,h,b,R,N,V,P,Q,te;this.gcTimer.scheduleCollect(),this.performanceData=void 0;let re;this.logger.hasLevel(2)&&(re=this.hrtime(),this.logger.hasLevel(3)&&this.logger.info(`request:${Eue(this.toStringMessage(c))}`));let ue,Ae;try{ue=this.parseMessage(c),Ae=ue.arguments&&ue.arguments.file?ue.arguments:void 0,(u=Qi)==null||u.instant(Qi.Phase.Session,"request",{seq:ue.seq,command:ue.command}),(d=jl)==null||d.logStartCommand(""+ue.command,this.toStringMessage(c).substring(0,100)),(I=Qi)==null||I.push(Qi.Phase.Session,"executeCommand",{seq:ue.seq,command:ue.command},!0);let{response:de,responseRequired:Be}=this.executeCommand(ue);if((h=Qi)==null||h.pop(),this.logger.hasLevel(2)){let Fe=Ius(this.hrtime(re)).toFixed(4);Be?this.logger.perftrc(`${ue.seq}::${ue.command}: elapsed time (in milliseconds) ${Fe}`):this.logger.perftrc(`${ue.seq}::${ue.command}: async elapsed time (in milliseconds) ${Fe}`)}(b=jl)==null||b.logStopCommand(""+ue.command,"Success"),(R=Qi)==null||R.instant(Qi.Phase.Session,"response",{seq:ue.seq,command:ue.command,success:!!de}),de?this.doOutput(de,ue.command,ue.seq,!0):Be&&this.doOutput(void 0,ue.command,ue.seq,!1,"No content available.")}catch(de){if((N=Qi)==null||N.popAll(),de instanceof os){(V=jl)==null||V.logStopCommand(""+(ue&&ue.command),"Canceled: "+de),(P=Qi)==null||P.instant(Qi.Phase.Session,"commandCanceled",{seq:ue?.seq,command:ue?.command}),this.doOutput({canceled:!0},ue.command,ue.seq,!0);return}this.logErrorWorker(de,this.toStringMessage(c),Ae),(Q=jl)==null||Q.logStopCommand(""+(ue&&ue.command),"Error: "+de),(te=Qi)==null||te.instant(Qi.Phase.Session,"commandError",{seq:ue?.seq,command:ue?.command,message:de.message}),this.doOutput(void 0,ue?ue.command:"unknown",ue?ue.seq:0,!1,"Error processing request. "+de.message+` +`+de.stack)}}parseMessage(c){return JSON.parse(c)}toStringMessage(c){return c}getFormatOptions(c){return this.projectService.getFormatCodeOptions(c)}getPreferences(c){return this.projectService.getPreferences(c)}getHostFormatOptions(){return this.projectService.getHostFormatCodeOptions()}getHostPreferences(){return this.projectService.getHostPreferences()}};function cD(n,c){return{start:c.positionToLineOffset(n.start),end:c.positionToLineOffset(Ku(n))}}function xWt(n,c,u){let d=cD(n,u),I=c&&cD(c,u);return I?{...d,contextStart:I.start,contextEnd:I.end}:d}function Tus(n,c){return{start:rYr(c,n.span.start),end:rYr(c,Ku(n.span)),newText:n.newText}}function rYr(n,c){return vWt(n)?Rus(n.getLineAndCharacterOfPosition(c)):n.positionToLineOffset(c)}function Nus(n,c){let u=n.ranges.map(d=>({start:c.positionToLineOffset(d.start),end:c.positionToLineOffset(d.start+d.length)}));return n.wordPattern?{ranges:u,wordPattern:n.wordPattern}:{ranges:u}}function Rus(n){return{line:n.line+1,offset:n.character+1}}function Dus(n){w.assert(n.textChanges.length===1);let c=qs(n.textChanges);return w.assert(c.span.start===0&&c.span.length===0),{fileName:n.fileName,textChanges:[{start:{line:0,offset:0},end:{line:0,offset:0},newText:c.newText}]}}function kWt(n,c,u,d){let I=xus(n,c,d),{line:h,character:b}=Mp(fc(I),u);return{line:h+1,offset:b+1}}function xus(n,c,u){for(let{fileName:d,textChanges:I}of u)if(d===c)for(let h=I.length-1;h>=0;h--){let{newText:b,span:{start:R,length:N}}=I[h];n=n.slice(0,R)+b+n.slice(R+N)}return n}function nYr(n,{fileName:c,textSpan:u,contextSpan:d,isWriteAccess:I,isDefinition:h},{disableLineTextInReferences:b}){let R=w.checkDefined(n.getScriptInfo(c)),N=xWt(u,d,R),V=b?void 0:kus(R,N);return{file:c,...N,lineText:V,isWriteAccess:I,isDefinition:h}}function kus(n,c){let u=n.lineToTextSpan(c.start.line-1);return n.getSnapshot().getText(u.start,Ku(u)).replace(/\r|\n/g,"")}function Gus(n){return n===void 0||n&&typeof n=="object"&&typeof n.exportName=="string"&&(n.fileName===void 0||typeof n.fileName=="string")&&(n.ambientModuleName===void 0||typeof n.ambientModuleName=="string"&&(n.isPackageJsonImport===void 0||typeof n.isPackageJsonImport=="boolean"))}var nre=4,GWt=(n=>(n[n.PreStart=0]="PreStart",n[n.Start=1]="Start",n[n.Entire=2]="Entire",n[n.Mid=3]="Mid",n[n.End=4]="End",n[n.PostEnd=5]="PostEnd",n))(GWt||{}),Fus=class{constructor(){this.goSubtree=!0,this.lineIndex=new V0e,this.endBranch=[],this.state=2,this.initialText="",this.trailingText="",this.lineIndex.root=new ire,this.startPath=[this.lineIndex.root],this.stack=[this.lineIndex.root]}get done(){return!1}insertLines(n,c){c&&(this.trailingText=""),n?n=this.initialText+n+this.trailingText:n=this.initialText+this.trailingText;let d=V0e.linesFromText(n).lines;d.length>1&&d[d.length-1]===""&&d.pop();let I,h;for(let R=this.endBranch.length-1;R>=0;R--)this.endBranch[R].updateCounts(),this.endBranch[R].charCount()===0&&(h=this.endBranch[R],R>0?I=this.endBranch[R-1]:I=this.branchNode);h&&I.remove(h);let b=this.startPath[this.startPath.length-1];if(d.length>0)if(b.text=d[0],d.length>1){let R=new Array(d.length-1),N=b;for(let Q=1;Q=0;){let Q=this.startPath[V];R=Q.insertAt(N,R),V--,N=Q}let P=R.length;for(;P>0;){let Q=new ire;Q.add(this.lineIndex.root),R=Q.insertAt(this.lineIndex.root,R),P=R.length,this.lineIndex.root=Q}this.lineIndex.root.updateCounts()}else for(let R=this.startPath.length-2;R>=0;R--)this.startPath[R].updateCounts();else{this.startPath[this.startPath.length-2].remove(b);for(let N=this.startPath.length-2;N>=0;N--)this.startPath[N].updateCounts()}return this.lineIndex}post(n,c,u){u===this.lineCollectionAtBranch&&(this.state=4),this.stack.pop()}pre(n,c,u,d,I){let h=this.stack[this.stack.length-1];this.state===2&&I===1&&(this.state=1,this.branchNode=h,this.lineCollectionAtBranch=u);let b;function R(N){return N.isLeaf()?new dZe(""):new ire}switch(I){case 0:this.goSubtree=!1,this.state!==4&&h.add(u);break;case 1:this.state===4?this.goSubtree=!1:(b=R(u),h.add(b),this.startPath.push(b));break;case 2:this.state!==4?(b=R(u),h.add(b),this.startPath.push(b)):u.isLeaf()||(b=R(u),h.add(b),this.endBranch.push(b));break;case 3:this.goSubtree=!1;break;case 4:this.state!==4?this.goSubtree=!1:u.isLeaf()||(b=R(u),h.add(b),this.endBranch.push(b));break;case 5:this.goSubtree=!1,this.state!==1&&h.add(u);break}this.goSubtree&&this.stack.push(b)}leaf(n,c,u){this.state===1?this.initialText=u.text.substring(0,n):this.state===2?(this.initialText=u.text.substring(0,n),this.trailingText=u.text.substring(n+c)):this.trailingText=u.text.substring(n+c)}},Zus=class{constructor(n,c,u){this.pos=n,this.deleteLen=c,this.insertedText=u}getTextChangeRange(){return Ce(Ed(this.pos,this.deleteLen),this.insertedText?this.insertedText.length:0)}},a$e=class EU{constructor(){this.changes=[],this.versions=new Array(EU.maxVersions),this.minVersion=0,this.currentVersion=0}versionToIndex(c){if(!(cthis.currentVersion))return c%EU.maxVersions}currentVersionToIndex(){return this.currentVersion%EU.maxVersions}edit(c,u,d){this.changes.push(new Zus(c,u,d)),(this.changes.length>EU.changeNumberThreshold||u>EU.changeLengthThreshold||d&&d.length>EU.changeLengthThreshold)&&this.getSnapshot()}getSnapshot(){return this._getSnapshot()}_getSnapshot(){let c=this.versions[this.currentVersionToIndex()];if(this.changes.length>0){let u=c.index;for(let d of this.changes)u=u.edit(d.pos,d.deleteLen,d.insertedText);c=new iYr(this.currentVersion+1,this,u,this.changes),this.currentVersion=c.version,this.versions[this.currentVersionToIndex()]=c,this.changes=[],this.currentVersion-this.minVersion>=EU.maxVersions&&(this.minVersion=this.currentVersion-EU.maxVersions+1)}return c}getSnapshotVersion(){return this._getSnapshot().version}getAbsolutePositionAndLineText(c){return this._getSnapshot().index.lineNumberToInfo(c)}lineOffsetToPosition(c,u){return this._getSnapshot().index.absolutePositionOfStartOfLine(c)+(u-1)}positionToLineOffset(c){return this._getSnapshot().index.positionToLineOffset(c)}lineToTextSpan(c){let u=this._getSnapshot().index,{lineText:d,absolutePosition:I}=u.lineNumberToInfo(c+1),h=d!==void 0?d.length:u.absolutePositionOfStartOfLine(c+2)-I;return Ed(I,h)}getTextChangesBetweenVersions(c,u){if(c=this.minVersion){let d=[];for(let I=c+1;I<=u;I++){let h=this.versions[this.versionToIndex(I)];for(let b of h.changesSincePreviousVersion)d.push(b.getTextChangeRange())}return pt(d)}else return;else return Ze}getLineCount(){return this._getSnapshot().index.getLineCount()}static fromString(c){let u=new EU,d=new iYr(0,u,new V0e);u.versions[u.currentVersion]=d;let I=V0e.linesFromText(c);return d.index.load(I.lines),u}};a$e.changeNumberThreshold=8,a$e.changeLengthThreshold=256,a$e.maxVersions=8;var c$e=a$e,iYr=class dPn{constructor(c,u,d,I=bm){this.version=c,this.cache=u,this.index=d,this.changesSincePreviousVersion=I}getText(c,u){return this.index.getText(c,u-c)}getLength(){return this.index.getLength()}getChangeRange(c){if(c instanceof dPn&&this.cache===c.cache)return this.version<=c.version?Ze:this.cache.getTextChangesBetweenVersions(c.version,this.version)}},V0e=class air{constructor(){this.checkEdits=!1}absolutePositionOfStartOfLine(c){return this.lineNumberToInfo(c).absolutePosition}positionToLineOffset(c){let{oneBasedLine:u,zeroBasedColumn:d}=this.root.charOffsetToLineInfo(1,c);return{line:u,offset:d+1}}positionToColumnAndLineText(c){return this.root.charOffsetToLineInfo(1,c)}getLineCount(){return this.root.lineCount()}lineNumberToInfo(c){let u=this.getLineCount();if(c<=u){let{position:d,leaf:I}=this.root.lineNumberToInfo(c,0);return{absolutePosition:d,lineText:I&&I.text}}else return{absolutePosition:this.root.charCount(),lineText:void 0}}load(c){if(c.length>0){let u=[];for(let d=0;d0&&c{d=d.concat(b.text.substring(I,I+h))}}),d}getLength(){return this.root.charCount()}every(c,u,d){d||(d=this.root.charCount());let I={goSubtree:!0,done:!1,leaf(h,b,R){c(R,h,b)||(this.done=!0)}};return this.walk(u,d-u,I),!I.done}edit(c,u,d){if(this.root.charCount()===0)return w.assert(u===0),d!==void 0?(this.load(air.linesFromText(d).lines),this):void 0;{let I;if(this.checkEdits){let R=this.getText(0,this.root.charCount());I=R.slice(0,c)+d+R.slice(c+u)}let h=new Fus,b=!1;if(c>=this.root.charCount()){c=this.root.charCount()-1;let R=this.getText(c,1);d?d=R+d:d=R,u=0,b=!0}else if(u>0){let R=c+u,{zeroBasedColumn:N,lineText:V}=this.positionToColumnAndLineText(R);N===0&&(u+=V.length,d=d?d+V:V)}if(this.root.walk(c,u,h),h.insertLines(d,b),this.checkEdits){let R=h.lineIndex.getText(0,h.lineIndex.getLength());w.assert(I===R,"buffer edit mismatch")}return h.lineIndex}}static buildTreeFromBottom(c){if(c.length0?d[I]=h:d.pop(),{lines:d,lineMap:u}}},ire=class cir{constructor(c=[]){this.children=c,this.totalChars=0,this.totalLines=0,c.length&&this.updateCounts()}isLeaf(){return!1}updateCounts(){this.totalChars=0,this.totalLines=0;for(let c of this.children)this.totalChars+=c.charCount(),this.totalLines+=c.lineCount()}execWalk(c,u,d,I,h){return d.pre&&d.pre(c,u,this.children[I],this,h),d.goSubtree?(this.children[I].walk(c,u,d),d.post&&d.post(c,u,this.children[I],this,h)):d.goSubtree=!0,d.done}skipChild(c,u,d,I,h){I.pre&&!I.done&&(I.pre(c,u,this.children[d],this,h),I.goSubtree=!0)}walk(c,u,d){let I=0,h=this.children[I].charCount(),b=c;for(;b>=h;)this.skipChild(b,u,I,d,0),b-=h,I++,h=this.children[I].charCount();if(b+u<=h){if(this.execWalk(b,u,d,I,2))return}else{if(this.execWalk(b,h-b,d,I,1))return;let R=u-(h-b);for(I++,h=this.children[I].charCount();R>h;){if(this.execWalk(0,h,d,I,3))return;R-=h,I++,h=this.children[I].charCount()}if(R>0&&this.execWalk(0,R,d,I,4))return}if(d.pre){let R=this.children.length;if(Iu)return h.isLeaf()?{oneBasedLine:c,zeroBasedColumn:u,lineText:h.text}:h.charOffsetToLineInfo(c,u);u-=h.charCount(),c+=h.lineCount()}let d=this.lineCount();if(d===0)return{oneBasedLine:1,zeroBasedColumn:0,lineText:void 0};let I=w.checkDefined(this.lineNumberToInfo(d,0).leaf);return{oneBasedLine:d,zeroBasedColumn:I.charCount(),lineText:void 0}}lineNumberToInfo(c,u){for(let d of this.children){let I=d.lineCount();if(I>=c)return d.isLeaf()?{position:u,leaf:d}:d.lineNumberToInfo(c,u);c-=I,u+=d.charCount()}return{position:u,leaf:void 0}}splitAfter(c){let u,d=this.children.length;c++;let I=c;if(c=0;te--)N[te].children.length===0&&N.pop()}b&&N.push(b),this.updateCounts();for(let P=0;P{(this.packageInstalledPromise??(this.packageInstalledPromise=new Map)).set(this.packageInstallId,{resolve:I,reject:h})});return this.installer.send(u),d}attach(c){this.projectService=c,this.installer=this.createInstallerProcess()}onProjectClosed(c){this.installer.send({projectName:c.getProjectName(),kind:"closeProject"})}enqueueInstallTypingsRequest(c,u,d){let I=YVt(c,u,d);this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Scheduling throttled operation:${fP(I)}`),this.activeRequestCount0?this.activeRequestCount--:w.fail("TIAdapter:: Received too many responses");!this.requestQueue.isEmpty();){let I=this.requestQueue.dequeue();if(this.requestMap.get(I.projectName)===I){this.requestMap.delete(I.projectName),this.scheduleRequest(I);break}this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Skipping defunct request for: ${I.projectName}`)}this.projectService.updateTypingsForProject(c),this.event(c,"setTypings");break}case x_e:this.projectService.watchTypingLocations(c);break;default:}}scheduleRequest(c){this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Scheduling request for: ${c.projectName}`),this.activeRequestCount++,this.host.setTimeout(()=>{this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Sending request:${fP(c)}`),this.installer.send(c)},pPn.requestDelayMillis,`${c.projectName}::${c.kind}`)}};sYr.requestDelayMillis=100;var oYr=sYr,aYr={};o(aYr,{ActionInvalidate:()=>BGe,ActionPackageInstalled:()=>vGe,ActionSet:()=>EGe,ActionWatchTypingLocations:()=>x_e,Arguments:()=>N7e,AutoImportProviderProject:()=>gWt,AuxiliaryProject:()=>lWt,CharRangeSection:()=>GWt,CloseFileWatcherEvent:()=>jqe,CommandNames:()=>jHr,ConfigFileDiagEvent:()=>Yqe,ConfiguredProject:()=>AWt,ConfiguredProjectLoadKind:()=>mWt,CreateDirectoryWatcherEvent:()=>Kqe,CreateFileWatcherEvent:()=>Uqe,Errors:()=>MG,EventBeginInstallTypes:()=>w7e,EventEndInstallTypes:()=>T7e,EventInitializationFailed:()=>zkt,EventTypesRegistry:()=>S7e,ExternalProject:()=>Wqe,GcTimer:()=>qVt,InferredProject:()=>cWt,LargeFileReferencedEvent:()=>Hqe,LineIndex:()=>V0e,LineLeaf:()=>dZe,LineNode:()=>ire,LogLevel:()=>MVt,Msg:()=>HVt,OpenFileInfoTelemetryEvent:()=>dWt,Project:()=>f7,ProjectInfoTelemetryEvent:()=>Jqe,ProjectKind:()=>x0e,ProjectLanguageServiceStateEvent:()=>Xqe,ProjectLoadingFinishEvent:()=>Mqe,ProjectLoadingStartEvent:()=>Qqe,ProjectService:()=>BWt,ProjectsUpdatedInBackgroundEvent:()=>gZe,ScriptInfo:()=>rWt,ScriptVersionCache:()=>c$e,Session:()=>tYr,TextStorage:()=>tWt,ThrottledOperations:()=>zVt,TypingsCache:()=>nWt,TypingsInstallerAdapter:()=>oYr,allFilesAreJsOrDts:()=>sWt,allRootFilesAreJsOrDts:()=>iWt,asNormalizedPath:()=>EHr,convertCompilerOptions:()=>AZe,convertFormatOptions:()=>tre,convertScriptKindName:()=>qqe,convertTypeAcquisition:()=>fWt,convertUserPreferences:()=>IWt,convertWatchOptions:()=>Z0e,countEachFileTypes:()=>k0e,createInstallTypingsRequest:()=>YVt,createModuleSpecifierCache:()=>wWt,createNormalizedPathMap:()=>BHr,createPackageJsonCache:()=>TWt,createSortedArray:()=>jVt,emptyArray:()=>bm,findArgument:()=>_Zr,forEachResolvedProjectReferenceProject:()=>r$e,formatDiagnosticToProtocol:()=>L0e,formatMessage:()=>NWt,getBaseConfigFileName:()=>Lqe,getLocationInNewDocument:()=>kWt,hasArgument:()=>hZr,hasNoTypeScriptSource:()=>oWt,indent:()=>Eue,isBackgroundProject:()=>F0e,isConfigFile:()=>vWt,isConfiguredProject:()=>HZ,isDynamicFileName:()=>D0e,isExternalProject:()=>G0e,isInferredProject:()=>ere,isInferredProjectName:()=>XVt,isProjectDeferredClose:()=>uZe,makeAutoImportProviderProjectName:()=>UVt,makeAuxiliaryProjectName:()=>KVt,makeInferredProjectName:()=>JVt,maxFileSize:()=>Oqe,maxProgramSizeForNonTsFiles:()=>Pqe,normalizedPathToPath:()=>R0e,nowString:()=>yZr,nullCancellationToken:()=>JHr,nullTypingsInstaller:()=>Vqe,protocol:()=>$Vt,removeSorted:()=>vHr,stringifyIndented:()=>fP,toEvent:()=>RWt,toNormalizedPath:()=>Of,tryConvertScriptKindName:()=>zqe,typingsInstaller:()=>QVt,updateProjectIfDirty:()=>M2}),typeof console<"u"&&(w.loggingHost={log(n,c){switch(n){case 1:return console.error(c);case 2:return console.warn(c);case 3:return console.log(c);case 4:return console.log(c)}}})})({get exports(){return aPn},set exports(e){aPn=e,typeof HAt<"u"&&HAt.exports&&(HAt.exports=e)}})});var xPn=z((Yqc,DPn)=>{"use strict";function mDo(e,t){var r=e;t.slice(0,-1).forEach(function(a){r=r[a]||{}});var s=t[t.length-1];return s in r}function NPn(e){return typeof e=="number"||/^0x[0-9a-f]+$/i.test(e)?!0:/^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(e)}function RPn(e,t){return t==="constructor"&&typeof e[t]=="function"||t==="__proto__"}DPn.exports=function(e,t){t||(t={});var r={bools:{},strings:{},unknownFn:null};typeof t.unknown=="function"&&(r.unknownFn=t.unknown),typeof t.boolean=="boolean"&&t.boolean?r.allBools=!0:[].concat(t.boolean).filter(Boolean).forEach(function(ge){r.bools[ge]=!0});var s={};function a(ge){return s[ge].some(function(fe){return r.bools[fe]})}Object.keys(t.alias||{}).forEach(function(ge){s[ge]=[].concat(t.alias[ge]),s[ge].forEach(function(fe){s[fe]=[ge].concat(s[ge].filter(function(pe){return fe!==pe}))})}),[].concat(t.string).filter(Boolean).forEach(function(ge){r.strings[ge]=!0,s[ge]&&[].concat(s[ge]).forEach(function(fe){r.strings[fe]=!0})});var o=t.default||{},g={_:[]};function p(ge,fe){return r.allBools&&/^--[^=]+$/.test(fe)||r.strings[ge]||r.bools[ge]||s[ge]}function f(ge,fe,pe){for(var he=ge,be=0;be{"use strict";var{Transform:hDo}=xt("stream"),{StringDecoder:_Do}=xt("string_decoder"),Fie=Symbol("last"),UAt=Symbol("decoder");function yDo(e,t,r){let s;if(this.overflow){if(s=this[UAt].write(e).split(this.matcher),s.length===1)return r();s.shift(),this.overflow=!1}else this[Fie]+=this[UAt].write(e),s=this[Fie].split(this.matcher);this[Fie]=s.pop();for(let a=0;athis.maxLength,this.overflow&&!this.skipOverflow){r(new Error("maximum buffer reached"));return}r()}function bDo(e){if(this[Fie]+=this[UAt].end(),this[Fie])try{GPn(this,this.mapper(this[Fie]))}catch(t){return e(t)}e()}function GPn(e,t){t!==void 0&&e.push(t)}function kPn(e){return e}function EDo(e,t,r){switch(e=e||/\r?\n/,t=t||kPn,r=r||{},arguments.length){case 1:typeof e=="function"?(t=e,e=/\r?\n/):typeof e=="object"&&!(e instanceof RegExp)&&!e[Symbol.split]&&(r=e,e=/\r?\n/);break;case 2:typeof e=="function"?(r=t,t=e,e=/\r?\n/):typeof t=="object"&&(r=t,t=kPn)}r=Object.assign({},r),r.autoDestroy=!0,r.transform=yDo,r.flush=bDo,r.readableObjectMode=!0;let s=new hDo(r);return s[Fie]="",s[UAt]=new _Do("utf8"),s.matcher=e,s.mapper=t,s.maxLength=r.maxLength,s.skipOverflow=r.skipOverflow||!1,s.overflow=!1,s._destroy=function(a,o){this._writableState.errorEmitted=!1,o(a)},s}FPn.exports=EDo});var WPn={};zf(WPn,{default:()=>VPn});function VPn(e,t){let r=[],s=[],a=[];t={useEquals:!0,shortFlag:!0,...t};let o=(p,f)=>{let m=t.shortFlag&&p.length===1?"-":"--",y=t.allowCamelCase?p:p.replace(/[A-Z]/g,"-$&").toLowerCase();p=m+y,t.useEquals?r.push(p+(f?`=${f}`:"")):(r.push(p),f&&r.push(f))},g=(p,f)=>{r.push(`-${p}`),f&&r.push(f)};for(let[p,f]of Object.entries(e)){let m=o;if(!(Array.isArray(t.excludes)&&LPn(t.excludes,p))&&!(Array.isArray(t.includes)&&!LPn(t.includes,p))){if(typeof t.aliases=="object"&&t.aliases[p]&&(p=t.aliases[p],m=g),p==="--"){if(!Array.isArray(f))throw new TypeError(`Expected key \`--\` to be Array, got ${typeof f}`);a=f;continue}if(p==="_"){if(!Array.isArray(f))throw new TypeError(`Expected key \`_\` to be Array, got ${typeof f}`);s=f;continue}if(f===!0&&!t.ignoreTrue&&m(p,""),f===!1&&!t.ignoreFalse&&m(`no-${p}`),typeof f=="string"&&m(p,f),typeof f=="number"&&!Number.isNaN(f)&&m(p,String(f)),Array.isArray(f))for(let y of f)m(p,y)}}for(let p of s)r.push(String(p));a.length>0&&r.push("--");for(let p of a)r.push(String(p));return r}var LPn,PPn=cc(()=>{LPn=(e,t)=>e.some(r=>r instanceof RegExp?r.test(t):r===t)});var HPn=z((Jqc,MPn)=>{var{Readable:BDo,Transform:OPn}=xt("stream"),{execFile:vDo}=xt("child_process"),SDo=ZPn(),QPn="------------------------ >8 ------------------------";function wDo(e){return e=e||{},e.cwd=e.cwd||process.cwd(),e}function TDo(e){return e=e||{},e.format=e.format||"%B",e.from=e.from||"",e.to=e.to||"HEAD",e}async function NDo(e){let{default:t}=await Promise.resolve().then(()=>(PPn(),WPn)),r=`--format=${e.format||""}%n${QPn}`,s=[e.from,e.to].filter(Boolean).join(".."),a=["log",r,s].concat(t(e,{excludes:["debug","from","to","format","path","ignore"]}));return e.path&&a.push("--",...Array.isArray(e.path)?e.path:[e.path]),a}function RDo(e,t){let r=new BDo;r._read=()=>{};let s=TDo(e),a=wDo(t),o=!1;return NDo(s).then(g=>{s.debug&&s.debug(`Your git-log command is: +git `+g.join(" "));let p=typeof s.ignore=="string"?new RegExp(s.ignore):s.ignore,f=p?y=>!p.test(y.toString()):()=>!0,m=vDo("git",g,{cwd:a.cwd,maxBuffer:1/0});m.stdout.pipe(SDo(QPn+` +`)).pipe(new OPn({transform(y,B,v){o=!1,setImmediate(()=>{f(y)&&r.push(y),v()})},flush(y){setImmediate(()=>{o||(r.push(null),r.emit("close")),y()})}})),m.stderr.pipe(new OPn({objectMode:!0,highWaterMark:16,transform(y){o=!0,r.emit("error",new Error(y)),r.emit("close")}}))}),r}MPn.exports=RDo});var nOn=z((T$c,rOn)=>{"use strict";var eOn=xt("path"),YDo=l5t(),XDo=g5t();function tOn(e,t){let r=e.options.env||process.env,s=process.cwd(),a=e.options.cwd!=null,o=a&&process.chdir!==void 0&&!process.chdir.disabled;if(o)try{process.chdir(e.options.cwd)}catch{}let g;try{g=YDo.sync(e.command,{path:r[XDo({env:r})],pathExt:t?eOn.delimiter:void 0})}catch{}finally{o&&process.chdir(s)}return g&&(g=eOn.resolve(a?e.options.cwd:"",g)),g}function JDo(e){return tOn(e)||tOn(e,!0)}rOn.exports=JDo});var iOn=z((N$c,bir)=>{"use strict";var yir=/([()\][%!^"`<>&|;, *?])/g;function UDo(e){return e=e.replace(yir,"^$1"),e}function KDo(e,t){return e=`${e}`,e=e.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),e=e.replace(/(?=(\\+?)?)\1$/,"$1$1"),e=`"${e}"`,e=e.replace(yir,"^$1"),t&&(e=e.replace(yir,"^$1")),e}bir.exports.command=UDo;bir.exports.argument=KDo});var oOn=z((R$c,sOn)=>{"use strict";var Eir=xt("fs"),jDo=p5t();function zDo(e){let r=Buffer.alloc(150),s;try{s=Eir.openSync(e,"r"),Eir.readSync(s,r,0,150,0),Eir.closeSync(s)}catch{}return jDo(r.toString())}sOn.exports=zDo});var uOn=z((D$c,lOn)=>{"use strict";var qDo=xt("path"),aOn=nOn(),cOn=iOn(),$Do=oOn(),exo=process.platform==="win32",txo=/\.(?:com|exe)$/i,rxo=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function nxo(e){e.file=aOn(e);let t=e.file&&$Do(e.file);return t?(e.args.unshift(e.file),e.command=t,aOn(e)):e.file}function ixo(e){if(!exo)return e;let t=nxo(e),r=!txo.test(t);if(e.options.forceShell||r){let s=rxo.test(t);e.command=qDo.normalize(e.command),e.command=cOn.command(e.command),e.args=e.args.map(o=>cOn.argument(o,s));let a=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${a}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e}function sxo(e,t,r){t&&!Array.isArray(t)&&(r=t,t=null),t=t?t.slice(0):[],r=Object.assign({},r);let s={command:e,args:t,options:r,file:void 0,original:{command:e,args:t}};return r.shell?s:ixo(s)}lOn.exports=sxo});var dOn=z((x$c,AOn)=>{"use strict";var Bir=process.platform==="win32";function vir(e,t){return Object.assign(new Error(`${t} ${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function oxo(e,t){if(!Bir)return;let r=e.emit;e.emit=function(s,a){if(s==="exit"){let o=gOn(a,t);if(o)return r.call(e,"error",o)}return r.apply(e,arguments)}}function gOn(e,t){return Bir&&e===1&&!t.file?vir(t.original,"spawn"):null}function axo(e,t){return Bir&&e===1&&!t.file?vir(t.original,"spawnSync"):null}AOn.exports={hookChildProcess:oxo,verifyENOENT:gOn,verifyENOENTSync:axo,notFoundError:vir}});var IOn=z((k$c,nBe)=>{"use strict";var pOn=xt("child_process"),Sir=uOn(),wir=dOn();function fOn(e,t,r){let s=Sir(e,t,r),a=pOn.spawn(s.command,s.args,s.options);return wir.hookChildProcess(a,s),a}function cxo(e,t,r){let s=Sir(e,t,r),a=pOn.spawnSync(s.command,s.args,s.options);return a.error=a.error||wir.verifyENOENTSync(a.status,s),a}nBe.exports=fOn;nBe.exports.spawn=fOn;nBe.exports.sync=cxo;nBe.exports._parse=Sir;nBe.exports._enoent=wir});var ape,wOn=cc(()=>{ape=[];ape.push("SIGHUP","SIGINT","SIGTERM");process.platform!=="win32"&&ape.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&ape.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT")});var rdt,Dir,xir,Dxo,kir,ndt,xxo,Gir,Fir,Zir,idt,oel,ael,Lir=cc(()=>{wOn();rdt=e=>!!e&&typeof e=="object"&&typeof e.removeListener=="function"&&typeof e.emit=="function"&&typeof e.reallyExit=="function"&&typeof e.listeners=="function"&&typeof e.kill=="function"&&typeof e.pid=="number"&&typeof e.on=="function",Dir=Symbol.for("signal-exit emitter"),xir=globalThis,Dxo=Object.defineProperty.bind(Object),kir=class{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(xir[Dir])return xir[Dir];Dxo(xir,Dir,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(t,r){this.listeners[t].push(r)}removeListener(t,r){let s=this.listeners[t],a=s.indexOf(r);a!==-1&&(a===0&&s.length===1?s.length=0:s.splice(a,1))}emit(t,r,s){if(this.emitted[t])return!1;this.emitted[t]=!0;let a=!1;for(let o of this.listeners[t])a=o(r,s)===!0||a;return t==="exit"&&(a=this.emit("afterExit",r,s)||a),a}},ndt=class{},xxo=e=>({onExit(t,r){return e.onExit(t,r)},load(){return e.load()},unload(){return e.unload()}}),Gir=class extends ndt{onExit(){return()=>{}}load(){}unload(){}},Fir=class extends ndt{#e=Zir.platform==="win32"?"SIGINT":"SIGHUP";#t=new kir;#r;#n;#i;#a={};#s=!1;constructor(t){super(),this.#r=t,this.#a={};for(let r of ape)this.#a[r]=()=>{let s=this.#r.listeners(r),{count:a}=this.#t,o=t;if(typeof o.__signal_exit_emitter__=="object"&&typeof o.__signal_exit_emitter__.count=="number"&&(a+=o.__signal_exit_emitter__.count),s.length===a){this.unload();let g=this.#t.emit("exit",null,r),p=r==="SIGHUP"?this.#e:r;g||t.kill(t.pid,p)}};this.#i=t.reallyExit,this.#n=t.emit}onExit(t,r){if(!rdt(this.#r))return()=>{};this.#s===!1&&this.load();let s=r?.alwaysLast?"afterExit":"exit";return this.#t.on(s,t),()=>{this.#t.removeListener(s,t),this.#t.listeners.exit.length===0&&this.#t.listeners.afterExit.length===0&&this.unload()}}load(){if(!this.#s){this.#s=!0,this.#t.count+=1;for(let t of ape)try{let r=this.#a[t];r&&this.#r.on(t,r)}catch{}this.#r.emit=(t,...r)=>this.#g(t,...r),this.#r.reallyExit=t=>this.#u(t)}}unload(){this.#s&&(this.#s=!1,ape.forEach(t=>{let r=this.#a[t];if(!r)throw new Error("Listener not defined for signal: "+t);try{this.#r.removeListener(t,r)}catch{}}),this.#r.emit=this.#n,this.#r.reallyExit=this.#i,this.#t.count-=1)}#u(t){return rdt(this.#r)?(this.#r.exitCode=t||0,this.#t.emit("exit",this.#r.exitCode,null),this.#i.call(this.#r,this.#r.exitCode)):0}#g(t,...r){let s=this.#n;if(t==="exit"&&rdt(this.#r)){typeof r[0]=="number"&&(this.#r.exitCode=r[0]);let a=s.call(this.#r,t,...r);return this.#t.emit("exit",this.#r.exitCode,null),a}else return s.call(this.#r,t,...r)}},Zir=globalThis.process,{onExit:idt,load:oel,unload:ael}=xxo(rdt(Zir)?new Fir(Zir):new Gir)});var HOn=z((Lel,MOn)=>{"use strict";var{PassThrough:oko}=xt("stream");MOn.exports=function(){var e=[],t=new oko({objectMode:!0});return t.setMaxListeners(0),t.add=r,t.isEmpty=s,t.on("unpipe",a),Array.prototype.slice.call(arguments).forEach(r),t;function r(o){return Array.isArray(o)?(o.forEach(r),this):(e.push(o),o.once("end",a.bind(null,o)),o.once("error",t.emit.bind(t,"error")),o.pipe(t,{end:!1}),this)}function s(){return e.length==0}function a(o){e=e.filter(function(g){return g!==o}),!e.length&&t.readable&&t.end()}}});var wQn=z((Ktl,SQn)=>{"use strict";var zko=/()(.+)/gi,qko="# ------------------------ >8 ------------------------";function mdt(e){let t=e.match(/[^\r\n]/);if(!t)return"";let r=t.index,s=e.length-1;for(;e[s]==="\r"||e[s]===` +`;)s--;return e.substring(r,s+1)}function cpe(e,t){return e?e+=` +`+t:e=t,e}function $ko(e){return function(t){return t.charAt(0)!==e}}function eGo(e){let t=e.indexOf(qko);return t===-1?e:e.slice(0,t)}function vQn(e,t){let r=[],s,a,o=e.match(t.references)!==null?t.references:zko;for(;s=o.exec(e);){let g=s[1]||null,p=s[2];for(;a=t.referenceParts.exec(p);){let f=null,m=a[1]||"",y=m.split("/");y.length>1&&(f=y.shift(),m=y.join("/"));let B={action:g,owner:f,repository:m||null,issue:a[3],raw:a[0],prefix:a[2]};r.push(B)}}return r}function tGo(){return!0}function rGo(e,t,r){if(!e||!e.trim())throw new TypeError("Expected a raw commit");if(!t||typeof t=="object"&&!Object.keys(t).length)throw new TypeError("Expected options");if(!r)throw new TypeError("Expected regex");let s,a,o={},g=typeof t.commentChar=="string"?$ko(t.commentChar):tGo,p=Ue=>!Ue.match(/^\s*gpg:/),f=mdt(e).split(/\r?\n/),m=eGo(f).filter(g).filter(p),y=!1,B=!0,v=t.headerCorrespondence?.map(function(Ue){return Ue.trim()})||[],k=t.revertCorrespondence?.map(function(Ue){return Ue.trim()})||[],T=t.mergeCorrespondence?.map(function(Ue){return Ue.trim()})||[],O=null,X=null,U=null,le=[],ae=null,ge=[],fe=[],pe=null;if(m.length===0)return{body:O,footer:X,header:U,mentions:le,merge:ae,notes:ge,references:fe,revert:pe,scope:null,subject:null,type:null};ae=m.shift();let he={},be={};O="",X="";let Te=ae.match(t.mergePattern);if(Te&&t.mergePattern){for(ae=Te[0],U=m.shift();U!==void 0&&!U.trim();)U=m.shift();U||(U=""),T.forEach(function(Ue,Je){let Xe=Te[Je+1]||null;he[Ue]=Xe})}else U=ae,ae=null,T.forEach(function(Ue){he[Ue]=null});let ke=U.match(t.headerPattern);if(ke?v.forEach(function(Ue,Je){let Xe=ke[Je+1]||null;be[Ue]=Xe}):v.forEach(function(Ue){be[Ue]=null}),fe.push(...vQn(U,{references:r.references,referenceParts:r.referenceParts})),m.forEach(function(Ue){if(t.fieldPattern){let Gt=t.fieldPattern.exec(Ue);if(Gt){s=Gt[1];return}if(s){o[s]=cpe(o[s],Ue);return}}let Je,Xe=Ue.match(r.notes);if(Xe){y=!0,B=!1,X=cpe(X,Ue);let Gt={title:Xe[1],text:Xe[2]};ge.push(Gt);return}let ft=vQn(Ue,{references:r.references,referenceParts:r.referenceParts});if(ft.length>0&&(B=!1,Je=!0,y=!1),Array.prototype.push.apply(fe,ft),Je){X=cpe(X,Ue);return}if(y){ge[ge.length-1].text=cpe(ge[ge.length-1].text,Ue),X=cpe(X,Ue);return}B?O=cpe(O,Ue):X=cpe(X,Ue)}),t.breakingHeaderPattern&&ge.length===0){let Ue=U.match(t.breakingHeaderPattern);if(Ue){let Je=Ue[3];ge.push({title:"BREAKING CHANGE",text:Je})}}for(;a=r.mentions.exec(e);)le.push(a[1]);let x=e.match(t.revertPattern);return x?(pe={},k.forEach(function(Ue,Je){let Xe=x[Je+1]||null;pe[Ue]=Xe})):pe=null,ge.forEach(function(Ue){Ue.text=mdt(Ue.text)}),{...be,...he,merge:ae,header:U,body:O?mdt(O):null,footer:X?mdt(X):null,notes:ge,references:fe,mentions:le,revert:pe,...o}}SQn.exports=rGo});var RQn=z((jtl,NQn)=>{"use strict";var TQn=/(?!.*)/;function nsr(e,t){return e.map(function(r){return r.trim()}).filter(function(r){return r.length}).join(t)}function nGo(e,t){if(!e)return TQn;let r=nsr(e,"|");return t?t(r):new RegExp("^[\\s|*]*("+r+")[:\\s]+(.*)","i")}function iGo(e,t){if(!e)return TQn;let r=t?"g":"gi";return new RegExp("(?:.*?)??\\s*([\\w-\\.\\/]*?)??("+nsr(e,"|")+")([\\w-]*\\d+)",r)}function sGo(e){if(!e)return/()(.+)/gi;let t=nsr(e,"|");return new RegExp("("+t+")(?:\\s+(.*?))(?=(?:"+t+")|$)","gi")}NQn.exports=function(e){e=e||{};let t=nGo(e.noteKeywords,e.notesPattern),r=iGo(e.issuePrefixes,e.issuePrefixesCaseSensitive),s=sGo(e.referenceActions);return{notes:t,referenceParts:r,references:s,mentions:/@([\w-]+)/g}}});var GQn=z((ztl,isr)=>{"use strict";var{Transform:oGo}=xt("stream"),DQn=wQn(),xQn=RQn();function kQn(e){return e={headerPattern:/^(\w*)(?:\(([\w$.\-*/ ]*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],referenceActions:["close","closes","closed","fix","fixes","fixed","resolve","resolves","resolved"],issuePrefixes:["#"],noteKeywords:["BREAKING CHANGE","BREAKING-CHANGE"],fieldPattern:/^-(.*?)-$/,revertPattern:/^Revert\s"([\s\S]*)"\s*This reverts commit (\w*)\./,revertCorrespondence:["header","hash"],warn:function(){},mergePattern:null,mergeCorrespondence:null,...e},typeof e.headerPattern=="string"&&(e.headerPattern=new RegExp(e.headerPattern)),typeof e.headerCorrespondence=="string"&&(e.headerCorrespondence=e.headerCorrespondence.split(",")),typeof e.referenceActions=="string"&&(e.referenceActions=e.referenceActions.split(",")),typeof e.issuePrefixes=="string"&&(e.issuePrefixes=e.issuePrefixes.split(",")),typeof e.noteKeywords=="string"&&(e.noteKeywords=e.noteKeywords.split(",")),typeof e.fieldPattern=="string"&&(e.fieldPattern=new RegExp(e.fieldPattern)),typeof e.revertPattern=="string"&&(e.revertPattern=new RegExp(e.revertPattern)),typeof e.revertCorrespondence=="string"&&(e.revertCorrespondence=e.revertCorrespondence.split(",")),typeof e.mergePattern=="string"&&(e.mergePattern=new RegExp(e.mergePattern)),e}function aGo(e){e=kQn(e);let t=xQn(e);return new oGo({objectMode:!0,highWaterMark:16,transform(r,s,a){let o;try{o=DQn(r.toString(),e,t),a(null,o)}catch(g){e.warn===!0?a(g):(e.warn(g.toString()),a(null,""))}}})}function cGo(e,t){t=kQn(t);let r=xQn(t);return DQn(e,t,r)}isr.exports=aGo;isr.exports.sync=cGo});var ZQn=z((qtl,FQn)=>{"use strict";function lGo(){return{headerPattern:/^(\w*)(?:\((.*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],noteKeywords:["BREAKING CHANGE"],revertPattern:/^(?:Revert|revert:)\s"?([\s\S]+?)"?\s*This reverts commit (\w*)\./i,revertCorrespondence:["header","hash"]}}FQn.exports.createParserOpts=lGo});var VQn=z(($tl,LQn)=>{"use strict";var uGo=s7t();async function gGo(){let e=AGo();return e.mainTemplate="",e.headerPartial="",e.commitPartial="",e.footerPartial="",e}LQn.exports.createWriterOpts=gGo;function AGo(){return{transform:(e,t)=>{let r=!0,s=[];if(e.notes.forEach(a=>{a.title="BREAKING CHANGES",r=!1}),e.type==="feat")e.type="Features";else if(e.type==="fix")e.type="Bug Fixes";else if(e.type==="perf")e.type="Performance Improvements";else if(e.type==="revert"||e.revert)e.type="Reverts";else{if(r)return;e.type==="docs"?e.type="Documentation":e.type==="style"?e.type="Styles":e.type==="refactor"?e.type="Code Refactoring":e.type==="test"?e.type="Tests":e.type==="build"?e.type="Build System":e.type==="ci"&&(e.type="Continuous Integration")}if(e.scope==="*"&&(e.scope=""),typeof e.hash=="string"&&(e.shortHash=e.hash.substring(0,7)),typeof e.subject=="string"){let a=t.repository?`${t.host}/${t.owner}/${t.repository}`:t.repoUrl;a&&(a=`${a}/issues/`,e.subject=e.subject.replace(/#([0-9]+)/g,(o,g)=>(s.push(g),`[#${g}](${a}${g})`))),t.host&&(e.subject=e.subject.replace(/\B@([a-z0-9](?:-?[a-z0-9/]){0,38})/g,(o,g)=>g.includes("/")?`@${g}`:`[@${g}](${t.host}/${g})`))}return e.references=e.references.filter(a=>s.indexOf(a.issue)===-1),e},groupBy:"type",commitGroupsSort:"title",commitsSort:["scope","subject"],noteGroupsSort:"title",notesSort:uGo}}});var PQn=z((erl,WQn)=>{"use strict";function dGo(e,t){return{parserOpts:e,writerOpts:t}}WQn.exports.createConventionalChangelogOpts=dGo});var QQn=z((trl,OQn)=>{"use strict";function pGo(e){return{parserOpts:e,whatBump(t){let r=2,s=0,a=0;return t.forEach(o=>{o.notes.length>0?(s+=o.notes.length,r=0):o.type==="feat"&&(a+=1,r===2&&(r=1))}),{level:r,reason:s===1?`There is ${s} BREAKING CHANGE and ${a} features`:`There are ${s} BREAKING CHANGES and ${a} features`}}}}OQn.exports.createConventionalRecommendedBumpOpts=pGo});var HQn=z((rrl,MQn)=>{"use strict";var{createParserOpts:fGo}=ZQn(),{createWriterOpts:IGo}=VQn(),{createConventionalChangelogOpts:CGo}=PQn(),{createConventionalRecommendedBumpOpts:mGo}=QQn();async function hGo(){let e=fGo(),t=await IGo(),r=mGo(e),s=CGo(e,t);return{parserOpts:e,writerOpts:t,recommendedBumpOpts:r,conventionalChangelog:s}}MQn.exports=hGo});var m5n=z((irl,C5n)=>{var yGo=1/0,bGo="[object Symbol]",EGo=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,BGo=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,_dt="\\ud800-\\udfff",t5n="\\u0300-\\u036f\\ufe20-\\ufe23",r5n="\\u20d0-\\u20f0",n5n="\\u2700-\\u27bf",i5n="a-z\\xdf-\\xf6\\xf8-\\xff",vGo="\\xac\\xb1\\xd7\\xf7",SGo="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",wGo="\\u2000-\\u206f",TGo=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",s5n="A-Z\\xc0-\\xd6\\xd8-\\xde",o5n="\\ufe0e\\ufe0f",a5n=vGo+SGo+wGo+TGo,osr="['\u2019]",NGo="["+_dt+"]",UQn="["+a5n+"]",hdt="["+t5n+r5n+"]",c5n="\\d+",RGo="["+n5n+"]",l5n="["+i5n+"]",u5n="[^"+_dt+a5n+c5n+n5n+i5n+s5n+"]",ssr="\\ud83c[\\udffb-\\udfff]",DGo="(?:"+hdt+"|"+ssr+")",g5n="[^"+_dt+"]",asr="(?:\\ud83c[\\udde6-\\uddff]){2}",csr="[\\ud800-\\udbff][\\udc00-\\udfff]",oBe="["+s5n+"]",A5n="\\u200d",KQn="(?:"+l5n+"|"+u5n+")",xGo="(?:"+oBe+"|"+u5n+")",jQn="(?:"+osr+"(?:d|ll|m|re|s|t|ve))?",zQn="(?:"+osr+"(?:D|LL|M|RE|S|T|VE))?",d5n=DGo+"?",p5n="["+o5n+"]?",kGo="(?:"+A5n+"(?:"+[g5n,asr,csr].join("|")+")"+p5n+d5n+")*",f5n=p5n+d5n+kGo,GGo="(?:"+[RGo,asr,csr].join("|")+")"+f5n,FGo="(?:"+[g5n+hdt+"?",hdt,asr,csr,NGo].join("|")+")",ZGo=RegExp(osr,"g"),LGo=RegExp(hdt,"g"),VGo=RegExp(ssr+"(?="+ssr+")|"+FGo+f5n,"g"),WGo=RegExp([oBe+"?"+l5n+"+"+jQn+"(?="+[UQn,oBe,"$"].join("|")+")",xGo+"+"+zQn+"(?="+[UQn,oBe+KQn,"$"].join("|")+")",oBe+"?"+KQn+"+"+jQn,oBe+"+"+zQn,c5n,GGo].join("|"),"g"),PGo=RegExp("["+A5n+_dt+t5n+r5n+o5n+"]"),OGo=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,QGo={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},MGo=typeof global=="object"&&global&&global.Object===Object&&global,HGo=typeof self=="object"&&self&&self.Object===Object&&self,YGo=MGo||HGo||Function("return this")();function XGo(e,t,r,s){var a=-1,o=e?e.length:0;for(s&&o&&(r=e[++a]);++aa?0:a+t),r=r>a?a:r,r<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=Array(a);++s=s?e:nFo(e,t,r)}function oFo(e){return function(t){t=ydt(t);var r=I5n(t)?qGo(t):void 0,s=r?r[0]:t.charAt(0),a=r?sFo(r,1).join(""):t.slice(1);return s[e]()+a}}function aFo(e){return function(t){return XGo(pFo(AFo(t).replace(ZGo,"")),e,"")}}function cFo(e){return!!e&&typeof e=="object"}function lFo(e){return typeof e=="symbol"||cFo(e)&&rFo.call(e)==bGo}function ydt(e){return e==null?"":iFo(e)}var uFo=aFo(function(e,t,r){return t=t.toLowerCase(),e+(r?gFo(t):t)});function gFo(e){return dFo(ydt(e).toLowerCase())}function AFo(e){return e=ydt(e),e&&e.replace(BGo,jGo).replace(LGo,"")}var dFo=oFo("toUpperCase");function pFo(e,t,r){return e=ydt(e),t=r?void 0:t,t===void 0?zGo(e)?eFo(e):UGo(e):e.match(t)||[]}C5n.exports=uFo});var O5n=z((srl,P5n)=>{var fFo=1/0,IFo="[object Symbol]",CFo=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,mFo=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,S5n="\\ud800-\\udfff",hFo="\\u0300-\\u036f\\ufe20-\\ufe23",_Fo="\\u20d0-\\u20f0",w5n="\\u2700-\\u27bf",T5n="a-z\\xdf-\\xf6\\xf8-\\xff",yFo="\\xac\\xb1\\xd7\\xf7",bFo="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",EFo="\\u2000-\\u206f",BFo=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",N5n="A-Z\\xc0-\\xd6\\xd8-\\xde",vFo="\\ufe0e\\ufe0f",R5n=yFo+bFo+EFo+BFo,lsr="['\u2019]",h5n="["+R5n+"]",D5n="["+hFo+_Fo+"]",x5n="\\d+",SFo="["+w5n+"]",k5n="["+T5n+"]",G5n="[^"+S5n+R5n+x5n+w5n+T5n+N5n+"]",wFo="\\ud83c[\\udffb-\\udfff]",TFo="(?:"+D5n+"|"+wFo+")",NFo="[^"+S5n+"]",F5n="(?:\\ud83c[\\udde6-\\uddff]){2}",Z5n="[\\ud800-\\udbff][\\udc00-\\udfff]",aBe="["+N5n+"]",RFo="\\u200d",_5n="(?:"+k5n+"|"+G5n+")",DFo="(?:"+aBe+"|"+G5n+")",y5n="(?:"+lsr+"(?:d|ll|m|re|s|t|ve))?",b5n="(?:"+lsr+"(?:D|LL|M|RE|S|T|VE))?",L5n=TFo+"?",V5n="["+vFo+"]?",xFo="(?:"+RFo+"(?:"+[NFo,F5n,Z5n].join("|")+")"+V5n+L5n+")*",kFo=V5n+L5n+xFo,GFo="(?:"+[SFo,F5n,Z5n].join("|")+")"+kFo,FFo=RegExp(lsr,"g"),ZFo=RegExp(D5n,"g"),LFo=RegExp([aBe+"?"+k5n+"+"+y5n+"(?="+[h5n,aBe,"$"].join("|")+")",DFo+"+"+b5n+"(?="+[h5n,aBe+_5n,"$"].join("|")+")",aBe+"?"+_5n+"+"+y5n,aBe+"+"+b5n,x5n,GFo].join("|"),"g"),VFo=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,WFo={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},PFo=typeof global=="object"&&global&&global.Object===Object&&global,OFo=typeof self=="object"&&self&&self.Object===Object&&self,QFo=PFo||OFo||Function("return this")();function MFo(e,t,r,s){var a=-1,o=e?e.length:0;for(s&&o&&(r=e[++a]);++a{var iZo=1/0,sZo="[object Symbol]",oZo=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,aZo=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,K5n="\\ud800-\\udfff",cZo="\\u0300-\\u036f\\ufe20-\\ufe23",lZo="\\u20d0-\\u20f0",j5n="\\u2700-\\u27bf",z5n="a-z\\xdf-\\xf6\\xf8-\\xff",uZo="\\xac\\xb1\\xd7\\xf7",gZo="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",AZo="\\u2000-\\u206f",dZo=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",q5n="A-Z\\xc0-\\xd6\\xd8-\\xde",pZo="\\ufe0e\\ufe0f",$5n=uZo+gZo+AZo+dZo,usr="['\u2019]",Q5n="["+$5n+"]",eMn="["+cZo+lZo+"]",tMn="\\d+",fZo="["+j5n+"]",rMn="["+z5n+"]",nMn="[^"+K5n+$5n+tMn+j5n+z5n+q5n+"]",IZo="\\ud83c[\\udffb-\\udfff]",CZo="(?:"+eMn+"|"+IZo+")",mZo="[^"+K5n+"]",iMn="(?:\\ud83c[\\udde6-\\uddff]){2}",sMn="[\\ud800-\\udbff][\\udc00-\\udfff]",cBe="["+q5n+"]",hZo="\\u200d",M5n="(?:"+rMn+"|"+nMn+")",_Zo="(?:"+cBe+"|"+nMn+")",H5n="(?:"+usr+"(?:d|ll|m|re|s|t|ve))?",Y5n="(?:"+usr+"(?:D|LL|M|RE|S|T|VE))?",oMn=CZo+"?",aMn="["+pZo+"]?",yZo="(?:"+hZo+"(?:"+[mZo,iMn,sMn].join("|")+")"+aMn+oMn+")*",bZo=aMn+oMn+yZo,EZo="(?:"+[fZo,iMn,sMn].join("|")+")"+bZo,BZo=RegExp(usr,"g"),vZo=RegExp(eMn,"g"),SZo=RegExp([cBe+"?"+rMn+"+"+H5n+"(?="+[Q5n,cBe,"$"].join("|")+")",_Zo+"+"+Y5n+"(?="+[Q5n,cBe+M5n,"$"].join("|")+")",cBe+"?"+M5n+"+"+H5n,cBe+"+"+Y5n,tMn,EZo].join("|"),"g"),wZo=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,TZo={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},NZo=typeof global=="object"&&global&&global.Object===Object&&global,RZo=typeof self=="object"&&self&&self.Object===Object&&self,DZo=NZo||RZo||Function("return this")();function xZo(e,t,r,s){var a=-1,o=e?e.length:0;for(s&&o&&(r=e[++a]);++a{var JZo=1/0,UZo="[object Symbol]",dsr="\\ud800-\\udfff",pMn="\\u0300-\\u036f\\ufe20-\\ufe23",fMn="\\u20d0-\\u20f0",IMn="\\ufe0e\\ufe0f",KZo="["+dsr+"]",gsr="["+pMn+fMn+"]",Asr="\\ud83c[\\udffb-\\udfff]",jZo="(?:"+gsr+"|"+Asr+")",CMn="[^"+dsr+"]",mMn="(?:\\ud83c[\\udde6-\\uddff]){2}",hMn="[\\ud800-\\udbff][\\udc00-\\udfff]",_Mn="\\u200d",yMn=jZo+"?",bMn="["+IMn+"]?",zZo="(?:"+_Mn+"(?:"+[CMn,mMn,hMn].join("|")+")"+bMn+yMn+")*",qZo=bMn+yMn+zZo,$Zo="(?:"+[CMn+gsr+"?",gsr,mMn,hMn,KZo].join("|")+")",eLo=RegExp(Asr+"(?="+Asr+")|"+$Zo+qZo,"g"),tLo=RegExp("["+_Mn+dsr+pMn+fMn+IMn+"]"),rLo=typeof global=="object"&&global&&global.Object===Object&&global,nLo=typeof self=="object"&&self&&self.Object===Object&&self,iLo=rLo||nLo||Function("return this")();function sLo(e){return e.split("")}function EMn(e){return tLo.test(e)}function oLo(e){return EMn(e)?aLo(e):sLo(e)}function aLo(e){return e.match(eLo)||[]}var cLo=Object.prototype,lLo=cLo.toString,gMn=iLo.Symbol,AMn=gMn?gMn.prototype:void 0,dMn=AMn?AMn.toString:void 0;function uLo(e,t,r){var s=-1,a=e.length;t<0&&(t=-t>a?0:a+t),r=r>a?a:r,r<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=Array(a);++s=s?e:uLo(e,t,r)}function dLo(e){return function(t){t=ILo(t);var r=EMn(t)?oLo(t):void 0,s=r?r[0]:t.charAt(0),a=r?ALo(r,1).join(""):t.slice(1);return s[e]()+a}}function pLo(e){return!!e&&typeof e=="object"}function fLo(e){return typeof e=="symbol"||pLo(e)&&lLo.call(e)==UZo}function ILo(e){return e==null?"":gLo(e)}var CLo=dLo("toUpperCase");BMn.exports=CLo});var jMn=z((crl,KMn)=>{var mLo=1/0,hLo="[object Symbol]",_Lo=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,yLo=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Edt="\\ud800-\\udfff",kMn="\\u0300-\\u036f\\ufe20-\\ufe23",GMn="\\u20d0-\\u20f0",FMn="\\u2700-\\u27bf",ZMn="a-z\\xdf-\\xf6\\xf8-\\xff",bLo="\\xac\\xb1\\xd7\\xf7",ELo="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",BLo="\\u2000-\\u206f",vLo=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",LMn="A-Z\\xc0-\\xd6\\xd8-\\xde",VMn="\\ufe0e\\ufe0f",WMn=bLo+ELo+BLo+vLo,fsr="['\u2019]",SLo="["+Edt+"]",SMn="["+WMn+"]",bdt="["+kMn+GMn+"]",PMn="\\d+",wLo="["+FMn+"]",OMn="["+ZMn+"]",QMn="[^"+Edt+WMn+PMn+FMn+ZMn+LMn+"]",psr="\\ud83c[\\udffb-\\udfff]",TLo="(?:"+bdt+"|"+psr+")",MMn="[^"+Edt+"]",Isr="(?:\\ud83c[\\udde6-\\uddff]){2}",Csr="[\\ud800-\\udbff][\\udc00-\\udfff]",lBe="["+LMn+"]",HMn="\\u200d",wMn="(?:"+OMn+"|"+QMn+")",NLo="(?:"+lBe+"|"+QMn+")",TMn="(?:"+fsr+"(?:d|ll|m|re|s|t|ve))?",NMn="(?:"+fsr+"(?:D|LL|M|RE|S|T|VE))?",YMn=TLo+"?",XMn="["+VMn+"]?",RLo="(?:"+HMn+"(?:"+[MMn,Isr,Csr].join("|")+")"+XMn+YMn+")*",JMn=XMn+YMn+RLo,DLo="(?:"+[wLo,Isr,Csr].join("|")+")"+JMn,xLo="(?:"+[MMn+bdt+"?",bdt,Isr,Csr,SLo].join("|")+")",kLo=RegExp(fsr,"g"),GLo=RegExp(bdt,"g"),FLo=RegExp(psr+"(?="+psr+")|"+xLo+JMn,"g"),ZLo=RegExp([lBe+"?"+OMn+"+"+TMn+"(?="+[SMn,lBe,"$"].join("|")+")",NLo+"+"+NMn+"(?="+[SMn,lBe+wMn,"$"].join("|")+")",lBe+"?"+wMn+"+"+TMn,lBe+"+"+NMn,PMn,DLo].join("|"),"g"),LLo=RegExp("["+HMn+Edt+kMn+GMn+VMn+"]"),VLo=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,WLo={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"ss"},PLo=typeof global=="object"&&global&&global.Object===Object&&global,OLo=typeof self=="object"&&self&&self.Object===Object&&self,QLo=PLo||OLo||Function("return this")();function MLo(e,t,r,s){var a=-1,o=e?e.length:0;for(s&&o&&(r=e[++a]);++aa?0:a+t),r=r>a?a:r,r<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=Array(a);++s=s?e:e9o(e,t,r)}function n9o(e){return function(t){t=msr(t);var r=UMn(t)?KLo(t):void 0,s=r?r[0]:t.charAt(0),a=r?r9o(r,1).join(""):t.slice(1);return s[e]()+a}}function i9o(e){return function(t){return MLo(u9o(a9o(t).replace(kLo,"")),e,"")}}function s9o(e){return!!e&&typeof e=="object"}function o9o(e){return typeof e=="symbol"||s9o(e)&&$Lo.call(e)==hLo}function msr(e){return e==null?"":t9o(e)}function a9o(e){return e=msr(e),e&&e.replace(yLo,JLo).replace(GLo,"")}var c9o=i9o(function(e,t,r){return e+(r?" ":"")+l9o(t)}),l9o=n9o("toUpperCase");function u9o(e,t,r){return e=msr(e),t=r?void 0:t,t===void 0?ULo(e)?zLo(e):YLo(e):e.match(t)||[]}KMn.exports=c9o});var MHn=z(upe=>{"use strict";Object.defineProperty(upe,"__esModule",{value:!0});upe.Application=upe.MinistoreContext=void 0;var I9o=(Oa(),Ai(Pa)),C9o=xc(),FOe=I9o.__importStar($a()),m9o=xt("readline");upe.MinistoreContext=FOe.default.createContext(null);var h9o=({children:e})=>{let{stdin:t,setRawMode:r}=(0,C9o.useStdin)();(0,FOe.useEffect)(()=>{r&&r(!0),t&&(0,m9o.emitKeypressEvents)(t)},[t,r]);let[s,a]=(0,FOe.useState)(new Map),o=(0,FOe.useMemo)(()=>({getAll:()=>s,get:g=>s.get(g),set:(g,p)=>a(new Map([...s,[g,p]]))}),[s,a]);return FOe.default.createElement(upe.MinistoreContext.Provider,{value:o,children:e})};upe.Application=h9o});var YHn=z(Tsr=>{"use strict";Object.defineProperty(Tsr,"__esModule",{value:!0});Tsr.useKeypress=y9o;var _9o=xc(),HHn=$a();function y9o({active:e},t,r){let{stdin:s}=(0,_9o.useStdin)(),a=(0,HHn.useCallback)((o,g)=>t(o,g),r);(0,HHn.useEffect)(()=>{if(!(!e||!s))return s.on("keypress",a),()=>{s.off("keypress",a)}},[e,a,s])}});var UHn=z(Nsr=>{"use strict";Object.defineProperty(Nsr,"__esModule",{value:!0});Nsr.renderForm=v9o;var b9o=(Oa(),Ai(Pa)),XHn=xc(),JHn=b9o.__importDefault($a()),E9o=MHn(),B9o=YHn();async function v9o(e,t,{stdin:r,stdout:s,stderr:a}){let o,g=f=>{let{exit:m}=(0,XHn.useApp)();(0,B9o.useKeypress)({active:!0},(y,B)=>{B.name==="return"&&(o=f,m())},[m,f])},{waitUntilExit:p}=(0,XHn.render)(JHn.default.createElement(E9o.Application,null,JHn.default.createElement(e,{...t,useSubmit:g})),{stdin:r,stdout:s,stderr:a});return await p(),o}});var zHn=z(wdt=>{"use strict";Object.defineProperty(wdt,"__esModule",{value:!0});wdt.forceStdinTty=void 0;var KHn=jHn(xt("fs")),S9o=jHn(xt("tty"));function jHn(e){return e&&e.__esModule?e:{default:e}}var w9o=function(){if(process.stdin.isTTY)return!1;var t=KHn.default.constants,r=t.O_RDONLY,s=t.O_NOCTTY,a=KHn.default.openSync("/dev/tty",r+s),o=new S9o.default.ReadStream(a);return Object.defineProperty(process,"stdin",{configurable:!0,enumerable:!0,get:function(){return o}}),!0};wdt.forceStdinTty=w9o});var $Hn=z((Esl,qHn)=>{function T9o(e){let t=e.length-1,r=e[t];for(;r===" "||r===" ";)r=e[--t];return e.substring(0,t+1)}function N9o(e){return e.split(` +`).map(s=>T9o(s)).join(` +`)}qHn.exports=function(e,t){if(t=t||{},e==null)return e;var r=t.width||50,s=typeof t.indent=="string"?t.indent:" ",a=t.newline||` +`+s,o=typeof t.escape=="function"?t.escape:R9o,g=".{1,"+r+"}";t.cut!==!0&&(g+="([\\s\u200B]+|$)|[^\\s\u200B]+?([\\s\u200B]+|$)");var p=new RegExp(g,"g"),f=e.match(p)||[],m=s+f.map(function(y){return y.slice(-1)===` +`&&(y=y.slice(0,y.length-1)),o(y)}).join(a);return t.trim===!0&&(m=N9o(m)),m};function R9o(e){return e}});var tYn=z((Bsl,eYn)=>{"use strict";var D9o="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";eYn.exports=D9o});var sYn=z((vsl,iYn)=>{"use strict";var x9o=tYn();function rYn(){}function nYn(){}nYn.resetWarningCache=rYn;iYn.exports=function(){function e(s,a,o,g,p,f){if(f!==x9o){var m=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw m.name="Invariant Violation",m}}e.isRequired=e;function t(){return e}var r={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:nYn,resetWarningCache:rYn};return r.PropTypes=r,r}});var ABe=z((Tsl,oYn)=>{oYn.exports=sYn()();var Ssl,wsl});var Osr=z((ZOe,pBe)=>{var k9o=200,Psr="__lodash_hash_undefined__",Fdt=1,mYn=2,hYn=9007199254740991,Tdt="[object Arguments]",ksr="[object Array]",G9o="[object AsyncFunction]",_Yn="[object Boolean]",yYn="[object Date]",bYn="[object Error]",EYn="[object Function]",F9o="[object GeneratorFunction]",Ndt="[object Map]",BYn="[object Number]",Z9o="[object Null]",dBe="[object Object]",aYn="[object Promise]",L9o="[object Proxy]",vYn="[object RegExp]",Rdt="[object Set]",SYn="[object String]",V9o="[object Symbol]",W9o="[object Undefined]",Gsr="[object WeakMap]",wYn="[object ArrayBuffer]",Ddt="[object DataView]",P9o="[object Float32Array]",O9o="[object Float64Array]",Q9o="[object Int8Array]",M9o="[object Int16Array]",H9o="[object Int32Array]",Y9o="[object Uint8Array]",X9o="[object Uint8ClampedArray]",J9o="[object Uint16Array]",U9o="[object Uint32Array]",K9o=/[\\^$.*+?()[\]{}|]/g,j9o=/^\[object .+?Constructor\]$/,z9o=/^(?:0|[1-9]\d*)$/,c1={};c1[P9o]=c1[O9o]=c1[Q9o]=c1[M9o]=c1[H9o]=c1[Y9o]=c1[X9o]=c1[J9o]=c1[U9o]=!0;c1[Tdt]=c1[ksr]=c1[wYn]=c1[_Yn]=c1[Ddt]=c1[yYn]=c1[bYn]=c1[EYn]=c1[Ndt]=c1[BYn]=c1[dBe]=c1[vYn]=c1[Rdt]=c1[SYn]=c1[Gsr]=!1;var TYn=typeof global=="object"&&global&&global.Object===Object&&global,q9o=typeof self=="object"&&self&&self.Object===Object&&self,Iz=TYn||q9o||Function("return this")(),NYn=typeof ZOe=="object"&&ZOe&&!ZOe.nodeType&&ZOe,cYn=NYn&&typeof pBe=="object"&&pBe&&!pBe.nodeType&&pBe,RYn=cYn&&cYn.exports===NYn,Rsr=RYn&&TYn.process,lYn=function(){try{return Rsr&&Rsr.binding&&Rsr.binding("util")}catch{}}(),uYn=lYn&&lYn.isTypedArray;function $9o(e,t){for(var r=-1,s=e==null?0:e.length,a=0,o=[];++r-1}function NVo(e,t){var r=this.__data__,s=Ldt(r,e);return s<0?(++this.size,r.push([e,t])):r[s][1]=t,this}Cz.prototype.clear=vVo;Cz.prototype.delete=SVo;Cz.prototype.get=wVo;Cz.prototype.has=TVo;Cz.prototype.set=NVo;function dpe(e){var t=-1,r=e==null?0:e.length;for(this.clear();++tp))return!1;var m=o.get(e);if(m&&o.get(t))return m==t;var y=-1,B=!0,v=r&mYn?new kdt:void 0;for(o.set(e,t),o.set(t,e);++y-1&&e%1==0&&e-1&&e%1==0&&e<=hYn}function WYn(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}function WOe(e){return e!=null&&typeof e=="object"}var PYn=uYn?nVo(uYn):XVo;function oWo(e){return iWo(e)?QVo(e):JVo(e)}function aWo(){return[]}function cWo(){return!1}pBe.exports=sWo});var QYn=z((Nsl,OYn)=>{"use strict";OYn.exports=(e,t)=>{if(!Array.isArray(e))throw new TypeError(`Expected an array, got ${typeof e}`);let r=e.slice(),s=typeof t=="number"?t:0;return r.splice(-s%r.length).concat(r)}});var Qsr=z((Rsl,HYn)=>{"use strict";var lWo=l7t(),MYn=process.platform,rY={tick:"\u2714",cross:"\u2716",star:"\u2605",square:"\u2587",squareSmall:"\u25FB",squareSmallFilled:"\u25FC",play:"\u25B6",circle:"\u25EF",circleFilled:"\u25C9",circleDotted:"\u25CC",circleDouble:"\u25CE",circleCircle:"\u24DE",circleCross:"\u24E7",circlePipe:"\u24BE",circleQuestionMark:"?\u20DD",bullet:"\u25CF",dot:"\u2024",line:"\u2500",ellipsis:"\u2026",pointer:"\u276F",pointerSmall:"\u203A",info:"\u2139",warning:"\u26A0",hamburger:"\u2630",smiley:"\u32E1",mustache:"\u0DF4",heart:"\u2665",arrowUp:"\u2191",arrowDown:"\u2193",arrowLeft:"\u2190",arrowRight:"\u2192",radioOn:"\u25C9",radioOff:"\u25EF",checkboxOn:"\u2612",checkboxOff:"\u2610",checkboxCircleOn:"\u24E7",checkboxCircleOff:"\u24BE",questionMarkPrefix:"?\u20DD",oneHalf:"\xBD",oneThird:"\u2153",oneQuarter:"\xBC",oneFifth:"\u2155",oneSixth:"\u2159",oneSeventh:"\u2150",oneEighth:"\u215B",oneNinth:"\u2151",oneTenth:"\u2152",twoThirds:"\u2154",twoFifths:"\u2156",threeQuarters:"\xBE",threeFifths:"\u2157",threeEighths:"\u215C",fourFifths:"\u2158",fiveSixths:"\u215A",fiveEighths:"\u215D",sevenEighths:"\u215E"},uWo={tick:"\u221A",cross:"\xD7",star:"*",square:"\u2588",squareSmall:"[ ]",squareSmallFilled:"[\u2588]",play:"\u25BA",circle:"( )",circleFilled:"(*)",circleDotted:"( )",circleDouble:"( )",circleCircle:"(\u25CB)",circleCross:"(\xD7)",circlePipe:"(\u2502)",circleQuestionMark:"(?)",bullet:"*",dot:".",line:"\u2500",ellipsis:"...",pointer:">",pointerSmall:"\xBB",info:"i",warning:"\u203C",hamburger:"\u2261",smiley:"\u263A",mustache:"\u250C\u2500\u2510",heart:rY.heart,arrowUp:rY.arrowUp,arrowDown:rY.arrowDown,arrowLeft:rY.arrowLeft,arrowRight:rY.arrowRight,radioOn:"(*)",radioOff:"( )",checkboxOn:"[\xD7]",checkboxOff:"[ ]",checkboxCircleOn:"(\xD7)",checkboxCircleOff:"( )",questionMarkPrefix:"\uFF1F",oneHalf:"1/2",oneThird:"1/3",oneQuarter:"1/4",oneFifth:"1/5",oneSixth:"1/6",oneSeventh:"1/7",oneEighth:"1/8",oneNinth:"1/9",oneTenth:"1/10",twoThirds:"2/3",twoFifths:"2/5",threeQuarters:"3/4",threeFifths:"3/5",threeEighths:"3/8",fourFifths:"4/5",fiveSixths:"5/6",fiveEighths:"5/8",sevenEighths:"7/8"};MYn==="linux"&&(rY.questionMarkPrefix="?");var Wdt=MYn==="win32"?uWo:rY,gWo=e=>(Wdt===rY||Object.keys(rY).forEach(t=>{rY[t]!==Wdt[t]&&(e=e.replace(new RegExp(lWo(rY[t]),"g"),Wdt[t]))}),e);HYn.exports=Object.assign(gWo,Wdt)});var JYn=z(Pdt=>{"use strict";Object.defineProperty(Pdt,"__esModule",{value:!0});Pdt.default=void 0;var YYn=Msr($a()),AWo=Msr(ABe()),XYn=xc(),dWo=Msr(Qsr());function Msr(e){return e&&e.__esModule?e:{default:e}}var Hsr=({isHighlighted:e})=>YYn.default.createElement(XYn.Box,{marginRight:1},YYn.default.createElement(XYn.Text,{color:e?"blue":void 0},e?dWo.default.pointer:" "));Hsr.propTypes={isHighlighted:AWo.default.bool};Hsr.defaultProps={isHighlighted:!1};var pWo=Hsr;Pdt.default=pWo});var jYn=z(Odt=>{"use strict";Object.defineProperty(Odt,"__esModule",{value:!0});Odt.default=void 0;var fWo=KYn($a()),UYn=KYn(ABe()),IWo=xc();function KYn(e){return e&&e.__esModule?e:{default:e}}var Ysr=({isHighlighted:e,label:t})=>fWo.default.createElement(IWo.Text,{color:e?"blue":void 0},t);Ysr.propTypes={isHighlighted:UYn.default.bool,label:UYn.default.string.isRequired};Ysr.defaultProps={isHighlighted:!1};var CWo=Ysr;Odt.default=CWo});var eXn=z(Qdt=>{"use strict";Object.defineProperty(Qdt,"__esModule",{value:!0});Qdt.default=void 0;var zYn=Xsr($a()),mWo=Xsr(ABe()),qYn=xc(),$Yn=Xsr(Qsr());function Xsr(e){return e&&e.__esModule?e:{default:e}}var Jsr=({isSelected:e})=>zYn.default.createElement(qYn.Box,{marginRight:1},zYn.default.createElement(qYn.Text,{color:"green"},e?$Yn.default.circleFilled:$Yn.default.circle));Jsr.propTypes={isSelected:mWo.default.bool};Jsr.defaultProps={isSelected:!1};var hWo=Jsr;Qdt.default=hWo});var sXn=z(Ipe=>{"use strict";Object.defineProperty(Ipe,"__esModule",{value:!0});Object.defineProperty(Ipe,"Indicator",{enumerable:!0,get:function(){return tXn.default}});Object.defineProperty(Ipe,"Item",{enumerable:!0,get:function(){return rXn.default}});Object.defineProperty(Ipe,"CheckBox",{enumerable:!0,get:function(){return nXn.default}});Ipe.default=void 0;var fpe=yWo($a()),QF=IBe(ABe()),_Wo=IBe(Osr()),Mdt=IBe(QYn()),Usr=xc(),tXn=IBe(JYn()),rXn=IBe(jYn()),nXn=IBe(eXn());function IBe(e){return e&&e.__esModule?e:{default:e}}function iXn(){if(typeof WeakMap!="function")return null;var e=new WeakMap;return iXn=function(){return e},e}function yWo(e){if(e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var t=iXn();if(t&&t.has(e))return t.get(e);var r={},s=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var a in e)if(Object.prototype.hasOwnProperty.call(e,a)){var o=s?Object.getOwnPropertyDescriptor(e,a):null;o&&(o.get||o.set)?Object.defineProperty(r,a,o):r[a]=e[a]}return r.default=e,t&&t.set(e,r),r}function Ksr(){return Ksr=Object.assign||function(e){for(var t=1;t{let{items:s,focus:a,onHighlight:o,onSubmit:g}=this.props,{rotateIndex:p,highlightedIndex:f}=this.state,m=this.props.selected||this.state.selected,{limit:y,hasLimit:B}=this;if(a===!1)return;let v=String(r);if(v===bWo||v==="k"){let k=(B?y:s.length)-1,T=f===0,O=B?f:k,X=T?p+1:p,U=T?O:f-1;this.setState({rotateIndex:X,highlightedIndex:U});let le=B?(0,Mdt.default)(s,X).slice(0,y):s;o(le[U])}if(v===EWo||v==="j"){let k=f===(B?y:s.length)-1,T=B?f:0,O=k?p-1:p,X=k?T:f+1;this.setState({rotateIndex:O,highlightedIndex:X});let U=B?(0,Mdt.default)(s,O).slice(0,y):s;o(U[X])}if(v===vWo){let T=(B?(0,Mdt.default)(s,p).slice(0,y):s)[f];this.setSelectedState(this.selectItem(T))}v===BWo&&g(m)})}render(){let{items:t,indicatorComponent:r,itemComponent:s,checkboxComponent:a}=this.props,{rotateIndex:o,highlightedIndex:g}=this.state,{limit:p,hasLimit:f}=this,m=f?(0,Mdt.default)(t,o).slice(0,p):t;return fpe.default.createElement(Usr.Box,{flexDirection:"column"},m.map((y,B)=>{let v=y.key||y.value,k=B===g,T=this.isSelected(y.value);return fpe.default.createElement(Usr.Box,{key:v},fpe.default.createElement(r,{isHighlighted:k}),fpe.default.createElement(a,{isSelected:T}),fpe.default.createElement(s,{...y,isHighlighted:k}))}))}componentDidMount(){let{stdin:t,setRawMode:r}=this.props;r(!0),t.on("data",this.handleInput)}componentWillUnmount(){let{stdin:t,setRawMode:r}=this.props;t.removeListener("data",this.handleInput),r(!1)}componentDidUpdate(t){(0,_Wo.default)(t.items,this.props.items)||this.setState({rotateIndex:0,highlightedIndex:0})}isSelected(t){return(this.props.selected||this.state.selected).map(({value:s})=>s).includes(t)}selectItem(t){let{onSelect:r,onUnselect:s}=this.props,a=this.props.selected||this.state.selected;return this.isSelected(t.value)?(s(t),a.filter(({value:o})=>o!==t.value)):(r(t),[...a,t])}setSelectedState(t){this.setState({selected:t})}get hasLimit(){let{limit:t,items:r}=this.props;return typeof t=="number"&&r.length>t}get limit(){let{limit:t,items:r}=this.props;return this.hasLimit?Math.min(t,r.length):r.length}};Hdt(OOe,"propTypes",{items:QF.default.array,selected:QF.default.array,defaultSelected:QF.default.array,focus:QF.default.bool,initialIndex:QF.default.number,indicatorComponent:QF.default.func,checkboxComponent:QF.default.func,itemComponent:QF.default.func,limit:QF.default.number,onSelect:QF.default.func,onUnselect:QF.default.func,onSubmit:QF.default.func,onHighlight:QF.default.func,stdin:QF.default.any.isRequired,setRawMode:QF.default.func.isRequired});Hdt(OOe,"defaultProps",{items:[],selected:void 0,defaultSelected:[],focus:!0,initialIndex:0,indicatorComponent:tXn.default,checkboxComponent:nXn.default,itemComponent:rXn.default,limit:null,onSelect(){},onUnselect(){},onSubmit(){},onHighlight(){}});var SWo=e=>{let{stdin:t,setRawMode:r}=(0,Usr.useStdin)();return fpe.default.createElement(OOe,Ksr({},e,{stdin:t,setRawMode:r}))};Ipe.default=SWo});var aXn=z(CBe=>{"use strict";Object.defineProperty(CBe,"__esModule",{value:!0});Object.defineProperty(CBe,"default",{enumerable:!0,get:function(){return Ydt.default}});Object.defineProperty(CBe,"Item",{enumerable:!0,get:function(){return Ydt.Item}});Object.defineProperty(CBe,"Indicator",{enumerable:!0,get:function(){return Ydt.Indicator}});Object.defineProperty(CBe,"CheckBox",{enumerable:!0,get:function(){return Ydt.CheckBox}});var Ydt=wWo(sXn());function oXn(){if(typeof WeakMap!="function")return null;var e=new WeakMap;return oXn=function(){return e},e}function wWo(e){if(e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var t=oXn();if(t&&t.has(e))return t.get(e);var r={},s=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var a in e)if(Object.prototype.hasOwnProperty.call(e,a)){var o=s?Object.getOwnPropertyDescriptor(e,a):null;o&&(o.get||o.set)?Object.defineProperty(r,a,o):r[a]=e[a]}return r.default=e,t&&t.set(e,r),r}});var WXn=z((Hol,VXn)=>{var wBe=1e3,TBe=wBe*60,NBe=TBe*60,Cpe=NBe*24,MWo=Cpe*7,HWo=Cpe*365.25;VXn.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return YWo(e);if(r==="number"&&isFinite(e))return t.long?JWo(e):XWo(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function YWo(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),s=(t[2]||"ms").toLowerCase();switch(s){case"years":case"year":case"yrs":case"yr":case"y":return r*HWo;case"weeks":case"week":case"w":return r*MWo;case"days":case"day":case"d":return r*Cpe;case"hours":case"hour":case"hrs":case"hr":case"h":return r*NBe;case"minutes":case"minute":case"mins":case"min":case"m":return r*TBe;case"seconds":case"second":case"secs":case"sec":case"s":return r*wBe;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function XWo(e){var t=Math.abs(e);return t>=Cpe?Math.round(e/Cpe)+"d":t>=NBe?Math.round(e/NBe)+"h":t>=TBe?Math.round(e/TBe)+"m":t>=wBe?Math.round(e/wBe)+"s":e+"ms"}function JWo(e){var t=Math.abs(e);return t>=Cpe?tpt(e,t,Cpe,"day"):t>=NBe?tpt(e,t,NBe,"hour"):t>=TBe?tpt(e,t,TBe,"minute"):t>=wBe?tpt(e,t,wBe,"second"):e+" ms"}function tpt(e,t,r,s){var a=t>=r*1.5;return Math.round(e/r)+" "+s+(a?"s":"")}});var gor=z((Yol,PXn)=>{function UWo(e){r.debug=r,r.default=r,r.coerce=f,r.disable=o,r.enable=a,r.enabled=g,r.humanize=WXn(),r.destroy=m,Object.keys(e).forEach(y=>{r[y]=e[y]}),r.names=[],r.skips=[],r.formatters={};function t(y){let B=0;for(let v=0;v{if(pe==="%%")return"%";ge++;let be=r.formatters[he];if(typeof be=="function"){let Te=X[ge];pe=be.call(U,Te),X.splice(ge,1),ge--}return pe}),r.formatArgs.call(U,X),(U.log||r.log).apply(U,X)}return O.namespace=y,O.useColors=r.useColors(),O.color=r.selectColor(y),O.extend=s,O.destroy=r.destroy,Object.defineProperty(O,"enabled",{enumerable:!0,configurable:!1,get:()=>v!==null?v:(k!==r.namespaces&&(k=r.namespaces,T=r.enabled(y)),T),set:X=>{v=X}}),typeof r.init=="function"&&r.init(O),O}function s(y,B){let v=r(this.namespace+(typeof B>"u"?":":B)+y);return v.log=this.log,v}function a(y){r.save(y),r.namespaces=y,r.names=[],r.skips=[];let B,v=(typeof y=="string"?y:"").split(/[\s,]+/),k=v.length;for(B=0;B"-"+B)].join(",");return r.enable(""),y}function g(y){if(y[y.length-1]==="*")return!0;let B,v;for(B=0,v=r.skips.length;B{JW.formatArgs=jWo;JW.save=zWo;JW.load=qWo;JW.useColors=KWo;JW.storage=$Wo();JW.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();JW.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function KWo(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function jWo(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+rpt.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,s=0;e[0].replace(/%[a-zA-Z%]/g,a=>{a!=="%%"&&(r++,a==="%c"&&(s=r))}),e.splice(s,0,t)}JW.log=console.debug||console.log||(()=>{});function zWo(e){try{e?JW.storage.setItem("debug",e):JW.storage.removeItem("debug")}catch{}}function qWo(){let e;try{e=JW.storage.getItem("debug")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function $Wo(){try{return localStorage}catch{}}rpt.exports=gor()(JW);var{formatters:e3o}=rpt.exports;e3o.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var MXn=z((IR,ipt)=>{var t3o=xt("tty"),npt=xt("util");IR.init=c3o;IR.log=s3o;IR.formatArgs=n3o;IR.save=o3o;IR.load=a3o;IR.useColors=r3o;IR.destroy=npt.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");IR.colors=[6,2,3,4,5,1];try{let e=xt("supports-color");e&&(e.stderr||e).level>=2&&(IR.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}IR.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(a,o)=>o.toUpperCase()),s=process.env[t];return/^(yes|on|true|enabled)$/i.test(s)?s=!0:/^(no|off|false|disabled)$/i.test(s)?s=!1:s==="null"?s=null:s=Number(s),e[r]=s,e},{});function r3o(){return"colors"in IR.inspectOpts?!!IR.inspectOpts.colors:t3o.isatty(process.stderr.fd)}function n3o(e){let{namespace:t,useColors:r}=this;if(r){let s=this.color,a="\x1B[3"+(s<8?s:"8;5;"+s),o=` ${a};1m${t} \x1B[0m`;e[0]=o+e[0].split(` `).join(` -`+o),e.push(a+"m+"+rpt.exports.humanize(this.diff)+"\x1B[0m")}else e[0]=QWo()+t+" "+e[0]}function QWo(){return pR.inspectOpts.hideDate?"":new Date().toISOString()+" "}function YWo(...e){return process.stderr.write(tpt.formatWithOptions(pR.inspectOpts,...e)+` -`)}function HWo(e){e?process.env.DEBUG=e:delete process.env.DEBUG}function XWo(){return process.env.DEBUG}function JWo(e){e.inspectOpts={};let t=Object.keys(pR.inspectOpts);for(let r=0;rt.trim()).join(" ")};GXn.O=function(e){return this.inspectOpts.colors=this.useColors,tpt.inspect(e,this.inspectOpts)}});var wk=z((vol,oor)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?oor.exports=kXn():oor.exports=FXn()});var VXn=z((Tol,aor)=>{"use strict";var zWo=Object.prototype.hasOwnProperty,OF="~";function QOe(){}Object.create&&(QOe.prototype=Object.create(null),new QOe().__proto__||(OF=!1));function qWo(e,t,r){this.fn=e,this.context=t,this.once=r||!1}function LXn(e,t,r,s,a){if(typeof r!="function")throw new TypeError("The listener must be a function");var o=new qWo(r,s||e,a),g=OF?OF+t:t;return e._events[g]?e._events[g].fn?e._events[g]=[e._events[g],o]:e._events[g].push(o):(e._events[g]=o,e._eventsCount++),e}function npt(e,t){--e._eventsCount===0?e._events=new QOe:delete e._events[t]}function Tk(){this._events=new QOe,this._eventsCount=0}Tk.prototype.eventNames=function(){var t=[],r,s;if(this._eventsCount===0)return t;for(s in r=this._events)zWo.call(r,s)&&t.push(OF?s.slice(1):s);return Object.getOwnPropertySymbols?t.concat(Object.getOwnPropertySymbols(r)):t};Tk.prototype.listeners=function(t){var r=OF?OF+t:t,s=this._events[r];if(!s)return[];if(s.fn)return[s.fn];for(var a=0,o=s.length,g=new Array(o);a{"use strict";HXn.exports=c3o;function wBe(e){return e instanceof Buffer?Buffer.from(e):new e.constructor(e.buffer.slice(),e.byteOffset,e.length)}function c3o(e){if(e=e||{},e.circles)return l3o(e);let t=new Map;if(t.set(Date,g=>new Date(g)),t.set(Map,(g,p)=>new Map(s(Array.from(g),p))),t.set(Set,(g,p)=>new Set(s(Array.from(g),p))),e.constructorHandlers)for(let g of e.constructorHandlers)t.set(g[0],g[1]);let r=null;return e.proto?o:a;function s(g,p){let f=Object.keys(g),m=new Array(f.length);for(let y=0;ynew Date(f)),s.set(Map,(f,m)=>new Map(o(Array.from(f),m))),s.set(Set,(f,m)=>new Set(o(Array.from(f),m))),e.constructorHandlers)for(let f of e.constructorHandlers)s.set(f[0],f[1]);let a=null;return e.proto?p:g;function o(f,m){let y=Object.keys(f),B=new Array(y.length);for(let v=0;v{spt=globalThis.window?.document!==void 0,hal=globalThis.process?.versions?.node!==void 0,_al=globalThis.process?.versions?.bun!==void 0,yal=globalThis.Deno?.version?.deno!==void 0,bal=globalThis.process?.versions?.electron!==void 0,Eal=globalThis.navigator?.userAgent?.includes("jsdom")===!0,Bal=typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope,val=typeof DedicatedWorkerGlobalScope<"u"&&globalThis instanceof DedicatedWorkerGlobalScope,Sal=typeof SharedWorkerGlobalScope<"u"&&globalThis instanceof SharedWorkerGlobalScope,wal=typeof ServiceWorkerGlobalScope<"u"&&globalThis instanceof ServiceWorkerGlobalScope,YOe=globalThis.navigator?.userAgentData?.platform,Tal=YOe==="macOS"||globalThis.navigator?.platform==="MacIntel"||globalThis.navigator?.userAgent?.includes(" Mac ")===!0||globalThis.process?.platform==="darwin",Nal=YOe==="Windows"||globalThis.navigator?.platform==="Win32"||globalThis.process?.platform==="win32",Ral=YOe==="Linux"||globalThis.navigator?.platform?.startsWith("Linux")===!0||globalThis.navigator?.userAgent?.includes(" Linux ")===!0||globalThis.process?.platform==="linux",Dal=YOe==="iOS"||globalThis.navigator?.platform==="MacIntel"&&globalThis.navigator?.maxTouchPoints>1||/iPad|iPhone|iPod/.test(globalThis.navigator?.platform),xal=YOe==="Android"||globalThis.navigator?.platform==="Android"||globalThis.navigator?.userAgent?.includes(" Android ")===!0||globalThis.process?.platform==="android"});var JOe={};jf(JOe,{beep:()=>F3o,clearScreen:()=>D3o,clearTerminal:()=>x3o,cursorBackward:()=>I3o,cursorDown:()=>p3o,cursorForward:()=>f3o,cursorGetPosition:()=>h3o,cursorHide:()=>b3o,cursorLeft:()=>jXn,cursorMove:()=>d3o,cursorNextLine:()=>_3o,cursorPrevLine:()=>y3o,cursorRestorePosition:()=>m3o,cursorSavePosition:()=>C3o,cursorShow:()=>E3o,cursorTo:()=>A3o,cursorUp:()=>KXn,enterAlternativeScreen:()=>k3o,eraseDown:()=>w3o,eraseEndLine:()=>v3o,eraseLine:()=>zXn,eraseLines:()=>B3o,eraseScreen:()=>lor,eraseStartLine:()=>S3o,eraseUp:()=>T3o,exitAlternativeScreen:()=>G3o,iTerm:()=>V3o,image:()=>L3o,link:()=>Z3o,scrollDown:()=>R3o,scrollUp:()=>N3o});import uor from"node:process";var Q_,XOe,TBe,HOe,UXn,u3o,g3o,A3o,d3o,KXn,p3o,f3o,I3o,jXn,C3o,m3o,h3o,_3o,y3o,b3o,E3o,B3o,v3o,S3o,zXn,w3o,T3o,lor,N3o,R3o,D3o,x3o,k3o,G3o,F3o,Z3o,L3o,V3o,gor=cc(()=>{JXn();Q_="\x1B[",XOe="\x1B]",TBe="\x07",HOe=";",UXn=!spt&&uor.env.TERM_PROGRAM==="Apple_Terminal",u3o=!spt&&uor.platform==="win32",g3o=spt?()=>{throw new Error("`process.cwd()` only works in Node.js, not the browser.")}:uor.cwd,A3o=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");return typeof t!="number"?Q_+(e+1)+"G":Q_+(t+1)+HOe+(e+1)+"H"},d3o=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");let r="";return e<0?r+=Q_+-e+"D":e>0&&(r+=Q_+e+"C"),t<0?r+=Q_+-t+"A":t>0&&(r+=Q_+t+"B"),r},KXn=(e=1)=>Q_+e+"A",p3o=(e=1)=>Q_+e+"B",f3o=(e=1)=>Q_+e+"C",I3o=(e=1)=>Q_+e+"D",jXn=Q_+"G",C3o=UXn?"\x1B7":Q_+"s",m3o=UXn?"\x1B8":Q_+"u",h3o=Q_+"6n",_3o=Q_+"E",y3o=Q_+"F",b3o=Q_+"?25l",E3o=Q_+"?25h",B3o=e=>{let t="";for(let r=0;r[XOe,"8",HOe,HOe,t,TBe,e,XOe,"8",HOe,HOe,TBe].join(""),L3o=(e,t={})=>{let r=`${XOe}1337;File=inline=1`;return t.width&&(r+=`;width=${t.width}`),t.height&&(r+=`;height=${t.height}`),t.preserveAspectRatio===!1&&(r+=";preserveAspectRatio=0"),r+":"+Buffer.from(e).toString("base64")+TBe},V3o={setCwd:(e=g3o())=>`${XOe}50;CurrentDir=${e}${TBe}`,annotation(e,t={}){let r=`${XOe}1337;`,s=t.x!==void 0,a=t.y!==void 0;if((s||a)&&!(s&&a&&t.length!==void 0))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return e=e.replaceAll("|",""),r+=t.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",t.length>0?r+=(s?[e,t.length,t.x,t.y]:[t.length,e]).join("|"):r+=e,r+TBe}}});var qXn=cc(()=>{gor();gor()});function Aor(e,t,{ignoreNonConfigurable:r=!1}={}){let{name:s}=e;for(let a of Reflect.ownKeys(t))W3o(e,t,a,r);return O3o(e,t),H3o(e,t,s),e}var W3o,P3o,O3o,M3o,Q3o,Y3o,H3o,$Xn=cc(()=>{W3o=(e,t,r,s)=>{if(r==="length"||r==="prototype"||r==="arguments"||r==="caller")return;let a=Object.getOwnPropertyDescriptor(e,r),o=Object.getOwnPropertyDescriptor(t,r);!P3o(a,o)&&s||Object.defineProperty(e,r,o)},P3o=function(e,t){return e===void 0||e.configurable||e.writable===t.writable&&e.enumerable===t.enumerable&&e.configurable===t.configurable&&(e.writable||e.value===t.value)},O3o=(e,t)=>{let r=Object.getPrototypeOf(t);r!==Object.getPrototypeOf(e)&&Object.setPrototypeOf(e,r)},M3o=(e,t)=>`/* Wrapped ${e}*/ -${t}`,Q3o=Object.getOwnPropertyDescriptor(Function.prototype,"toString"),Y3o=Object.getOwnPropertyDescriptor(Function.prototype.toString,"name"),H3o=(e,t,r)=>{let s=r===""?"":`with ${r.trim()}() `,a=M3o.bind(null,s,t.toString());Object.defineProperty(a,"name",Y3o);let{writable:o,enumerable:g,configurable:p}=Q3o;Object.defineProperty(e,"toString",{value:a,writable:o,enumerable:g,configurable:p})}});var opt,e4n,t4n,r4n=cc(()=>{$Xn();opt=new WeakMap,e4n=(e,t={})=>{if(typeof e!="function")throw new TypeError("Expected a function");let r,s=0,a=e.displayName||e.name||"",o=function(...g){if(opt.set(o,++s),s===1)r=e.apply(this,g),e=void 0;else if(t.throw===!0)throw new Error(`Function \`${a}\` can only be called once`);return r};return Aor(o,e),opt.set(o,s),o};e4n.callCount=e=>{if(!opt.has(e))throw new Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return opt.get(e)};t4n=e4n});import apt from"node:process";var n4n,X3o,i4n,s4n=cc(()=>{r4n();Dir();n4n=apt.stderr.isTTY?apt.stderr:apt.stdout.isTTY?apt.stdout:void 0,X3o=n4n?t4n(()=>{rdt(()=>{n4n.write("\x1B[?25h")},{alwaysLast:!0})}):()=>{},i4n=X3o});import o4n from"node:process";var cpt,NBe,dor,a4n=cc(()=>{s4n();cpt=!1,NBe={};NBe.show=(e=o4n.stderr)=>{e.isTTY&&(cpt=!1,e.write("\x1B[?25h"))};NBe.hide=(e=o4n.stderr)=>{e.isTTY&&(i4n(),cpt=!0,e.write("\x1B[?25l"))};NBe.toggle=(e,t)=>{e!==void 0&&(cpt=e),cpt?NBe.show(t):NBe.hide(t)};dor=NBe});function c4n(e){return e===161||e===164||e===167||e===168||e===170||e===173||e===174||e>=176&&e<=180||e>=182&&e<=186||e>=188&&e<=191||e===198||e===208||e===215||e===216||e>=222&&e<=225||e===230||e>=232&&e<=234||e===236||e===237||e===240||e===242||e===243||e>=247&&e<=250||e===252||e===254||e===257||e===273||e===275||e===283||e===294||e===295||e===299||e>=305&&e<=307||e===312||e>=319&&e<=322||e===324||e>=328&&e<=331||e===333||e===338||e===339||e===358||e===359||e===363||e===462||e===464||e===466||e===468||e===470||e===472||e===474||e===476||e===593||e===609||e===708||e===711||e>=713&&e<=715||e===717||e===720||e>=728&&e<=731||e===733||e===735||e>=768&&e<=879||e>=913&&e<=929||e>=931&&e<=937||e>=945&&e<=961||e>=963&&e<=969||e===1025||e>=1040&&e<=1103||e===1105||e===8208||e>=8211&&e<=8214||e===8216||e===8217||e===8220||e===8221||e>=8224&&e<=8226||e>=8228&&e<=8231||e===8240||e===8242||e===8243||e===8245||e===8251||e===8254||e===8308||e===8319||e>=8321&&e<=8324||e===8364||e===8451||e===8453||e===8457||e===8467||e===8470||e===8481||e===8482||e===8486||e===8491||e===8531||e===8532||e>=8539&&e<=8542||e>=8544&&e<=8555||e>=8560&&e<=8569||e===8585||e>=8592&&e<=8601||e===8632||e===8633||e===8658||e===8660||e===8679||e===8704||e===8706||e===8707||e===8711||e===8712||e===8715||e===8719||e===8721||e===8725||e===8730||e>=8733&&e<=8736||e===8739||e===8741||e>=8743&&e<=8748||e===8750||e>=8756&&e<=8759||e===8764||e===8765||e===8776||e===8780||e===8786||e===8800||e===8801||e>=8804&&e<=8807||e===8810||e===8811||e===8814||e===8815||e===8834||e===8835||e===8838||e===8839||e===8853||e===8857||e===8869||e===8895||e===8978||e>=9312&&e<=9449||e>=9451&&e<=9547||e>=9552&&e<=9587||e>=9600&&e<=9615||e>=9618&&e<=9621||e===9632||e===9633||e>=9635&&e<=9641||e===9650||e===9651||e===9654||e===9655||e===9660||e===9661||e===9664||e===9665||e>=9670&&e<=9672||e===9675||e>=9678&&e<=9681||e>=9698&&e<=9701||e===9711||e===9733||e===9734||e===9737||e===9742||e===9743||e===9756||e===9758||e===9792||e===9794||e===9824||e===9825||e>=9827&&e<=9829||e>=9831&&e<=9834||e===9836||e===9837||e===9839||e===9886||e===9887||e===9919||e>=9926&&e<=9933||e>=9935&&e<=9939||e>=9941&&e<=9953||e===9955||e===9960||e===9961||e>=9963&&e<=9969||e===9972||e>=9974&&e<=9977||e===9979||e===9980||e===9982||e===9983||e===10045||e>=10102&&e<=10111||e>=11094&&e<=11097||e>=12872&&e<=12879||e>=57344&&e<=63743||e>=65024&&e<=65039||e===65533||e>=127232&&e<=127242||e>=127248&&e<=127277||e>=127280&&e<=127337||e>=127344&&e<=127373||e===127375||e===127376||e>=127387&&e<=127404||e>=917760&&e<=917999||e>=983040&&e<=1048573||e>=1048576&&e<=1114109}function l4n(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function u4n(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var g4n=cc(()=>{});function J3o(e){if(!Number.isSafeInteger(e))throw new TypeError(`Expected a code point, got \`${typeof e}\`.`)}function lpt(e,{ambiguousAsWide:t=!1}={}){return J3o(e),l4n(e)||u4n(e)||t&&c4n(e)?2:1}var por=cc(()=>{g4n()});var d4n=z((qal,A4n)=>{A4n.exports=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g});function lM(e,t={}){if(typeof e!="string"||e.length===0)return 0;let{ambiguousIsNarrow:r=!0,countAnsiEscapeCodes:s=!1}=t;if(s||(e=oz(e)),e.length===0)return 0;let a=0,o={ambiguousAsWide:!r};for(let{segment:g}of U3o.segment(e)){let p=g.codePointAt(0);if(!(p<=31||p>=127&&p<=159)&&!(p>=8203&&p<=8207||p===65279)&&!(p>=768&&p<=879||p>=6832&&p<=6911||p>=7616&&p<=7679||p>=8400&&p<=8447||p>=65056&&p<=65071)&&!(p>=55296&&p<=57343)&&!(p>=65024&&p<=65039)&&!K3o.test(g)){if((0,p4n.default)().test(g)){a+=2;continue}a+=lpt(p,o)}}return a}var p4n,U3o,K3o,Ior=cc(()=>{pOe();por();p4n=xt(d4n(),1),U3o=new Intl.Segmenter,K3o=/^\p{Default_Ignorable_Code_Point}$/u});function q3o(){let e=new Map;for(let[t,r]of Object.entries(q1)){for(let[s,a]of Object.entries(r))q1[s]={open:`\x1B[${a[0]}m`,close:`\x1B[${a[1]}m`},r[s]=q1[s],e.set(a[0],a[1]);Object.defineProperty(q1,t,{value:r,enumerable:!1})}return Object.defineProperty(q1,"codes",{value:e,enumerable:!1}),q1.color.close="\x1B[39m",q1.bgColor.close="\x1B[49m",q1.color.ansi=f4n(),q1.color.ansi256=I4n(),q1.color.ansi16m=C4n(),q1.bgColor.ansi=f4n(10),q1.bgColor.ansi256=I4n(10),q1.bgColor.ansi16m=C4n(10),Object.defineProperties(q1,{rgbToAnsi256:{value:(t,r,s)=>t===r&&r===s?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(s/255*5),enumerable:!1},hexToRgb:{value:t=>{let r=/[a-f\d]{6}|[a-f\d]{3}/i.exec(t.toString(16));if(!r)return[0,0,0];let[s]=r;s.length===3&&(s=[...s].map(o=>o+o).join(""));let a=Number.parseInt(s,16);return[a>>16&255,a>>8&255,a&255]},enumerable:!1},hexToAnsi256:{value:t=>q1.rgbToAnsi256(...q1.hexToRgb(t)),enumerable:!1},ansi256ToAnsi:{value:t=>{if(t<8)return 30+t;if(t<16)return 90+(t-8);let r,s,a;if(t>=232)r=((t-232)*10+8)/255,s=r,a=r;else{t-=16;let p=t%36;r=Math.floor(t/36)/5,s=Math.floor(p/6)/5,a=p%6/5}let o=Math.max(r,s,a)*2;if(o===0)return 30;let g=30+(Math.round(a)<<2|Math.round(s)<<1|Math.round(r));return o===2&&(g+=60),g},enumerable:!1},rgbToAnsi:{value:(t,r,s)=>q1.ansi256ToAnsi(q1.rgbToAnsi256(t,r,s)),enumerable:!1},hexToAnsi:{value:t=>q1.ansi256ToAnsi(q1.hexToAnsi256(t)),enumerable:!1}}),q1}var f4n,I4n,C4n,q1,rcl,j3o,z3o,ncl,$3o,KL,upt=cc(()=>{f4n=(e=0)=>t=>`\x1B[${t+e}m`,I4n=(e=0)=>t=>`\x1B[${38+e};5;${t}m`,C4n=(e=0)=>(t,r,s)=>`\x1B[${38+e};2;${t};${r};${s}m`,q1={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},rcl=Object.keys(q1.modifier),j3o=Object.keys(q1.color),z3o=Object.keys(q1.bgColor),ncl=[...j3o,...z3o];$3o=q3o(),KL=$3o});var b4n={};jf(b4n,{default:()=>dpt});function dpt(e,t,r){return String(e).normalize().replaceAll(`\r +`+o),e.push(a+"m+"+ipt.exports.humanize(this.diff)+"\x1B[0m")}else e[0]=i3o()+t+" "+e[0]}function i3o(){return IR.inspectOpts.hideDate?"":new Date().toISOString()+" "}function s3o(...e){return process.stderr.write(npt.formatWithOptions(IR.inspectOpts,...e)+` +`)}function o3o(e){e?process.env.DEBUG=e:delete process.env.DEBUG}function a3o(){return process.env.DEBUG}function c3o(e){e.inspectOpts={};let t=Object.keys(IR.inspectOpts);for(let r=0;rt.trim()).join(" ")};QXn.O=function(e){return this.inspectOpts.colors=this.useColors,npt.inspect(e,this.inspectOpts)}});var kk=z((Xol,Aor)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?Aor.exports=OXn():Aor.exports=MXn()});var XXn=z((Kol,dor)=>{"use strict";var A3o=Object.prototype.hasOwnProperty,HF="~";function YOe(){}Object.create&&(YOe.prototype=Object.create(null),new YOe().__proto__||(HF=!1));function d3o(e,t,r){this.fn=e,this.context=t,this.once=r||!1}function YXn(e,t,r,s,a){if(typeof r!="function")throw new TypeError("The listener must be a function");var o=new d3o(r,s||e,a),g=HF?HF+t:t;return e._events[g]?e._events[g].fn?e._events[g]=[e._events[g],o]:e._events[g].push(o):(e._events[g]=o,e._eventsCount++),e}function spt(e,t){--e._eventsCount===0?e._events=new YOe:delete e._events[t]}function Gk(){this._events=new YOe,this._eventsCount=0}Gk.prototype.eventNames=function(){var t=[],r,s;if(this._eventsCount===0)return t;for(s in r=this._events)A3o.call(r,s)&&t.push(HF?s.slice(1):s);return Object.getOwnPropertySymbols?t.concat(Object.getOwnPropertySymbols(r)):t};Gk.prototype.listeners=function(t){var r=HF?HF+t:t,s=this._events[r];if(!s)return[];if(s.fn)return[s.fn];for(var a=0,o=s.length,g=new Array(o);a{"use strict";$Xn.exports=E3o;function RBe(e){return e instanceof Buffer?Buffer.from(e):new e.constructor(e.buffer.slice(),e.byteOffset,e.length)}function E3o(e){if(e=e||{},e.circles)return B3o(e);let t=new Map;if(t.set(Date,g=>new Date(g)),t.set(Map,(g,p)=>new Map(s(Array.from(g),p))),t.set(Set,(g,p)=>new Set(s(Array.from(g),p))),e.constructorHandlers)for(let g of e.constructorHandlers)t.set(g[0],g[1]);let r=null;return e.proto?o:a;function s(g,p){let f=Object.keys(g),m=new Array(f.length);for(let y=0;ynew Date(f)),s.set(Map,(f,m)=>new Map(o(Array.from(f),m))),s.set(Set,(f,m)=>new Set(o(Array.from(f),m))),e.constructorHandlers)for(let f of e.constructorHandlers)s.set(f[0],f[1]);let a=null;return e.proto?p:g;function o(f,m){let y=Object.keys(f),B=new Array(y.length);for(let v=0;v{apt=globalThis.window?.document!==void 0,Pal=globalThis.process?.versions?.node!==void 0,Oal=globalThis.process?.versions?.bun!==void 0,Qal=globalThis.Deno?.version?.deno!==void 0,Mal=globalThis.process?.versions?.electron!==void 0,Hal=globalThis.navigator?.userAgent?.includes("jsdom")===!0,Yal=typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope,Xal=typeof DedicatedWorkerGlobalScope<"u"&&globalThis instanceof DedicatedWorkerGlobalScope,Jal=typeof SharedWorkerGlobalScope<"u"&&globalThis instanceof SharedWorkerGlobalScope,Ual=typeof ServiceWorkerGlobalScope<"u"&&globalThis instanceof ServiceWorkerGlobalScope,XOe=globalThis.navigator?.userAgentData?.platform,Kal=XOe==="macOS"||globalThis.navigator?.platform==="MacIntel"||globalThis.navigator?.userAgent?.includes(" Mac ")===!0||globalThis.process?.platform==="darwin",jal=XOe==="Windows"||globalThis.navigator?.platform==="Win32"||globalThis.process?.platform==="win32",zal=XOe==="Linux"||globalThis.navigator?.platform?.startsWith("Linux")===!0||globalThis.navigator?.userAgent?.includes(" Linux ")===!0||globalThis.process?.platform==="linux",qal=XOe==="iOS"||globalThis.navigator?.platform==="MacIntel"&&globalThis.navigator?.maxTouchPoints>1||/iPad|iPhone|iPod/.test(globalThis.navigator?.platform),$al=XOe==="Android"||globalThis.navigator?.platform==="Android"||globalThis.navigator?.userAgent?.includes(" Android ")===!0||globalThis.process?.platform==="android"});var KOe={};zf(KOe,{beep:()=>j3o,clearScreen:()=>X3o,clearTerminal:()=>J3o,cursorBackward:()=>D3o,cursorDown:()=>N3o,cursorForward:()=>R3o,cursorGetPosition:()=>G3o,cursorHide:()=>L3o,cursorLeft:()=>i4n,cursorMove:()=>T3o,cursorNextLine:()=>F3o,cursorPrevLine:()=>Z3o,cursorRestorePosition:()=>k3o,cursorSavePosition:()=>x3o,cursorShow:()=>V3o,cursorTo:()=>w3o,cursorUp:()=>n4n,enterAlternativeScreen:()=>U3o,eraseDown:()=>Q3o,eraseEndLine:()=>P3o,eraseLine:()=>s4n,eraseLines:()=>W3o,eraseScreen:()=>Ior,eraseStartLine:()=>O3o,eraseUp:()=>M3o,exitAlternativeScreen:()=>K3o,iTerm:()=>$3o,image:()=>q3o,link:()=>z3o,scrollDown:()=>Y3o,scrollUp:()=>H3o});import Cor from"node:process";var H_,UOe,DBe,JOe,r4n,v3o,S3o,w3o,T3o,n4n,N3o,R3o,D3o,i4n,x3o,k3o,G3o,F3o,Z3o,L3o,V3o,W3o,P3o,O3o,s4n,Q3o,M3o,Ior,H3o,Y3o,X3o,J3o,U3o,K3o,j3o,z3o,q3o,$3o,mor=cc(()=>{t4n();H_="\x1B[",UOe="\x1B]",DBe="\x07",JOe=";",r4n=!apt&&Cor.env.TERM_PROGRAM==="Apple_Terminal",v3o=!apt&&Cor.platform==="win32",S3o=apt?()=>{throw new Error("`process.cwd()` only works in Node.js, not the browser.")}:Cor.cwd,w3o=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");return typeof t!="number"?H_+(e+1)+"G":H_+(t+1)+JOe+(e+1)+"H"},T3o=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");let r="";return e<0?r+=H_+-e+"D":e>0&&(r+=H_+e+"C"),t<0?r+=H_+-t+"A":t>0&&(r+=H_+t+"B"),r},n4n=(e=1)=>H_+e+"A",N3o=(e=1)=>H_+e+"B",R3o=(e=1)=>H_+e+"C",D3o=(e=1)=>H_+e+"D",i4n=H_+"G",x3o=r4n?"\x1B7":H_+"s",k3o=r4n?"\x1B8":H_+"u",G3o=H_+"6n",F3o=H_+"E",Z3o=H_+"F",L3o=H_+"?25l",V3o=H_+"?25h",W3o=e=>{let t="";for(let r=0;r[UOe,"8",JOe,JOe,t,DBe,e,UOe,"8",JOe,JOe,DBe].join(""),q3o=(e,t={})=>{let r=`${UOe}1337;File=inline=1`;return t.width&&(r+=`;width=${t.width}`),t.height&&(r+=`;height=${t.height}`),t.preserveAspectRatio===!1&&(r+=";preserveAspectRatio=0"),r+":"+Buffer.from(e).toString("base64")+DBe},$3o={setCwd:(e=S3o())=>`${UOe}50;CurrentDir=${e}${DBe}`,annotation(e,t={}){let r=`${UOe}1337;`,s=t.x!==void 0,a=t.y!==void 0;if((s||a)&&!(s&&a&&t.length!==void 0))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return e=e.replaceAll("|",""),r+=t.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",t.length>0?r+=(s?[e,t.length,t.x,t.y]:[t.length,e]).join("|"):r+=e,r+DBe}}});var o4n=cc(()=>{mor();mor()});function hor(e,t,{ignoreNonConfigurable:r=!1}={}){let{name:s}=e;for(let a of Reflect.ownKeys(t))ePo(e,t,a,r);return rPo(e,t),oPo(e,t,s),e}var ePo,tPo,rPo,nPo,iPo,sPo,oPo,a4n=cc(()=>{ePo=(e,t,r,s)=>{if(r==="length"||r==="prototype"||r==="arguments"||r==="caller")return;let a=Object.getOwnPropertyDescriptor(e,r),o=Object.getOwnPropertyDescriptor(t,r);!tPo(a,o)&&s||Object.defineProperty(e,r,o)},tPo=function(e,t){return e===void 0||e.configurable||e.writable===t.writable&&e.enumerable===t.enumerable&&e.configurable===t.configurable&&(e.writable||e.value===t.value)},rPo=(e,t)=>{let r=Object.getPrototypeOf(t);r!==Object.getPrototypeOf(e)&&Object.setPrototypeOf(e,r)},nPo=(e,t)=>`/* Wrapped ${e}*/ +${t}`,iPo=Object.getOwnPropertyDescriptor(Function.prototype,"toString"),sPo=Object.getOwnPropertyDescriptor(Function.prototype.toString,"name"),oPo=(e,t,r)=>{let s=r===""?"":`with ${r.trim()}() `,a=nPo.bind(null,s,t.toString());Object.defineProperty(a,"name",sPo);let{writable:o,enumerable:g,configurable:p}=iPo;Object.defineProperty(e,"toString",{value:a,writable:o,enumerable:g,configurable:p})}});var cpt,c4n,l4n,u4n=cc(()=>{a4n();cpt=new WeakMap,c4n=(e,t={})=>{if(typeof e!="function")throw new TypeError("Expected a function");let r,s=0,a=e.displayName||e.name||"",o=function(...g){if(cpt.set(o,++s),s===1)r=e.apply(this,g),e=void 0;else if(t.throw===!0)throw new Error(`Function \`${a}\` can only be called once`);return r};return hor(o,e),cpt.set(o,s),o};c4n.callCount=e=>{if(!cpt.has(e))throw new Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return cpt.get(e)};l4n=c4n});import lpt from"node:process";var g4n,aPo,A4n,d4n=cc(()=>{u4n();Lir();g4n=lpt.stderr.isTTY?lpt.stderr:lpt.stdout.isTTY?lpt.stdout:void 0,aPo=g4n?l4n(()=>{idt(()=>{g4n.write("\x1B[?25h")},{alwaysLast:!0})}):()=>{},A4n=aPo});import p4n from"node:process";var upt,xBe,_or,f4n=cc(()=>{d4n();upt=!1,xBe={};xBe.show=(e=p4n.stderr)=>{e.isTTY&&(upt=!1,e.write("\x1B[?25h"))};xBe.hide=(e=p4n.stderr)=>{e.isTTY&&(A4n(),upt=!0,e.write("\x1B[?25l"))};xBe.toggle=(e,t)=>{e!==void 0&&(upt=e),upt?xBe.show(t):xBe.hide(t)};_or=xBe});function I4n(e){return e===161||e===164||e===167||e===168||e===170||e===173||e===174||e>=176&&e<=180||e>=182&&e<=186||e>=188&&e<=191||e===198||e===208||e===215||e===216||e>=222&&e<=225||e===230||e>=232&&e<=234||e===236||e===237||e===240||e===242||e===243||e>=247&&e<=250||e===252||e===254||e===257||e===273||e===275||e===283||e===294||e===295||e===299||e>=305&&e<=307||e===312||e>=319&&e<=322||e===324||e>=328&&e<=331||e===333||e===338||e===339||e===358||e===359||e===363||e===462||e===464||e===466||e===468||e===470||e===472||e===474||e===476||e===593||e===609||e===708||e===711||e>=713&&e<=715||e===717||e===720||e>=728&&e<=731||e===733||e===735||e>=768&&e<=879||e>=913&&e<=929||e>=931&&e<=937||e>=945&&e<=961||e>=963&&e<=969||e===1025||e>=1040&&e<=1103||e===1105||e===8208||e>=8211&&e<=8214||e===8216||e===8217||e===8220||e===8221||e>=8224&&e<=8226||e>=8228&&e<=8231||e===8240||e===8242||e===8243||e===8245||e===8251||e===8254||e===8308||e===8319||e>=8321&&e<=8324||e===8364||e===8451||e===8453||e===8457||e===8467||e===8470||e===8481||e===8482||e===8486||e===8491||e===8531||e===8532||e>=8539&&e<=8542||e>=8544&&e<=8555||e>=8560&&e<=8569||e===8585||e>=8592&&e<=8601||e===8632||e===8633||e===8658||e===8660||e===8679||e===8704||e===8706||e===8707||e===8711||e===8712||e===8715||e===8719||e===8721||e===8725||e===8730||e>=8733&&e<=8736||e===8739||e===8741||e>=8743&&e<=8748||e===8750||e>=8756&&e<=8759||e===8764||e===8765||e===8776||e===8780||e===8786||e===8800||e===8801||e>=8804&&e<=8807||e===8810||e===8811||e===8814||e===8815||e===8834||e===8835||e===8838||e===8839||e===8853||e===8857||e===8869||e===8895||e===8978||e>=9312&&e<=9449||e>=9451&&e<=9547||e>=9552&&e<=9587||e>=9600&&e<=9615||e>=9618&&e<=9621||e===9632||e===9633||e>=9635&&e<=9641||e===9650||e===9651||e===9654||e===9655||e===9660||e===9661||e===9664||e===9665||e>=9670&&e<=9672||e===9675||e>=9678&&e<=9681||e>=9698&&e<=9701||e===9711||e===9733||e===9734||e===9737||e===9742||e===9743||e===9756||e===9758||e===9792||e===9794||e===9824||e===9825||e>=9827&&e<=9829||e>=9831&&e<=9834||e===9836||e===9837||e===9839||e===9886||e===9887||e===9919||e>=9926&&e<=9933||e>=9935&&e<=9939||e>=9941&&e<=9953||e===9955||e===9960||e===9961||e>=9963&&e<=9969||e===9972||e>=9974&&e<=9977||e===9979||e===9980||e===9982||e===9983||e===10045||e>=10102&&e<=10111||e>=11094&&e<=11097||e>=12872&&e<=12879||e>=57344&&e<=63743||e>=65024&&e<=65039||e===65533||e>=127232&&e<=127242||e>=127248&&e<=127277||e>=127280&&e<=127337||e>=127344&&e<=127373||e===127375||e===127376||e>=127387&&e<=127404||e>=917760&&e<=917999||e>=983040&&e<=1048573||e>=1048576&&e<=1114109}function C4n(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function m4n(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var h4n=cc(()=>{});function cPo(e){if(!Number.isSafeInteger(e))throw new TypeError(`Expected a code point, got \`${typeof e}\`.`)}function gpt(e,{ambiguousAsWide:t=!1}={}){return cPo(e),C4n(e)||m4n(e)||t&&I4n(e)?2:1}var yor=cc(()=>{h4n()});var y4n=z((hcl,_4n)=>{_4n.exports=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g});function gQ(e,t={}){if(typeof e!="string"||e.length===0)return 0;let{ambiguousIsNarrow:r=!0,countAnsiEscapeCodes:s=!1}=t;if(s||(e=Az(e)),e.length===0)return 0;let a=0,o={ambiguousAsWide:!r};for(let{segment:g}of lPo.segment(e)){let p=g.codePointAt(0);if(!(p<=31||p>=127&&p<=159)&&!(p>=8203&&p<=8207||p===65279)&&!(p>=768&&p<=879||p>=6832&&p<=6911||p>=7616&&p<=7679||p>=8400&&p<=8447||p>=65056&&p<=65071)&&!(p>=55296&&p<=57343)&&!(p>=65024&&p<=65039)&&!uPo.test(g)){if((0,b4n.default)().test(g)){a+=2;continue}a+=gpt(p,o)}}return a}var b4n,lPo,uPo,bor=cc(()=>{COe();yor();b4n=vt(y4n(),1),lPo=new Intl.Segmenter,uPo=/^\p{Default_Ignorable_Code_Point}$/u});function dPo(){let e=new Map;for(let[t,r]of Object.entries($1)){for(let[s,a]of Object.entries(r))$1[s]={open:`\x1B[${a[0]}m`,close:`\x1B[${a[1]}m`},r[s]=$1[s],e.set(a[0],a[1]);Object.defineProperty($1,t,{value:r,enumerable:!1})}return Object.defineProperty($1,"codes",{value:e,enumerable:!1}),$1.color.close="\x1B[39m",$1.bgColor.close="\x1B[49m",$1.color.ansi=E4n(),$1.color.ansi256=B4n(),$1.color.ansi16m=v4n(),$1.bgColor.ansi=E4n(10),$1.bgColor.ansi256=B4n(10),$1.bgColor.ansi16m=v4n(10),Object.defineProperties($1,{rgbToAnsi256:{value:(t,r,s)=>t===r&&r===s?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(s/255*5),enumerable:!1},hexToRgb:{value:t=>{let r=/[a-f\d]{6}|[a-f\d]{3}/i.exec(t.toString(16));if(!r)return[0,0,0];let[s]=r;s.length===3&&(s=[...s].map(o=>o+o).join(""));let a=Number.parseInt(s,16);return[a>>16&255,a>>8&255,a&255]},enumerable:!1},hexToAnsi256:{value:t=>$1.rgbToAnsi256(...$1.hexToRgb(t)),enumerable:!1},ansi256ToAnsi:{value:t=>{if(t<8)return 30+t;if(t<16)return 90+(t-8);let r,s,a;if(t>=232)r=((t-232)*10+8)/255,s=r,a=r;else{t-=16;let p=t%36;r=Math.floor(t/36)/5,s=Math.floor(p/6)/5,a=p%6/5}let o=Math.max(r,s,a)*2;if(o===0)return 30;let g=30+(Math.round(a)<<2|Math.round(s)<<1|Math.round(r));return o===2&&(g+=60),g},enumerable:!1},rgbToAnsi:{value:(t,r,s)=>$1.ansi256ToAnsi($1.rgbToAnsi256(t,r,s)),enumerable:!1},hexToAnsi:{value:t=>$1.ansi256ToAnsi($1.hexToAnsi256(t)),enumerable:!1}}),$1}var E4n,B4n,v4n,$1,Ecl,gPo,APo,Bcl,pPo,jL,Apt=cc(()=>{E4n=(e=0)=>t=>`\x1B[${t+e}m`,B4n=(e=0)=>t=>`\x1B[${38+e};5;${t}m`,v4n=(e=0)=>(t,r,s)=>`\x1B[${38+e};2;${t};${r};${s}m`,$1={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},Ecl=Object.keys($1.modifier),gPo=Object.keys($1.color),APo=Object.keys($1.bgColor),Bcl=[...gPo,...APo];pPo=dPo(),jL=pPo});var R4n={};zf(R4n,{default:()=>fpt});function fpt(e,t,r){return String(e).normalize().replaceAll(`\r `,` `).split(` -`).map(s=>iPo(s,t,r)).join(` -`)}var Apt,ePo,mor,_4n,tPo,y4n,gpt,m4n,h4n,rPo,Cor,nPo,iPo,hor=cc(()=>{Ior();pOe();upt();Apt=new Set(["\x1B","\x9B"]),ePo=39,mor="\x07",_4n="[",tPo="]",y4n="m",gpt=`${tPo}8;;`,m4n=e=>`${Apt.values().next().value}${_4n}${e}${y4n}`,h4n=e=>`${Apt.values().next().value}${gpt}${e}${mor}`,rPo=e=>e.split(" ").map(t=>lM(t)),Cor=(e,t,r)=>{let s=[...t],a=!1,o=!1,g=lM(oz(e.at(-1)));for(let[p,f]of s.entries()){let m=lM(f);if(g+m<=r?e[e.length-1]+=f:(e.push(f),g=0),Apt.has(f)&&(a=!0,o=s.slice(p+1,p+1+gpt.length).join("")===gpt),a){o?f===mor&&(a=!1,o=!1):f===y4n&&(a=!1);continue}g+=m,g===r&&p0&&e.length>1&&(e[e.length-2]+=e.pop())},nPo=e=>{let t=e.split(" "),r=t.length;for(;r>0&&!(lM(t[r-1])>0);)r--;return r===t.length?e:t.slice(0,r).join(" ")+t.slice(r).join("")},iPo=(e,t,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let s="",a,o,g=rPo(e),p=[""];for(let[B,v]of e.split(" ").entries()){r.trim!==!1&&(p[p.length-1]=p.at(-1).trimStart());let G=lM(p.at(-1));if(B!==0&&(G>=t&&(r.wordWrap===!1||r.trim===!1)&&(p.push(""),G=0),(G>0||r.trim===!1)&&(p[p.length-1]+=" ",G++)),r.hard&&g[B]>t){let T=t-G,O=1+Math.floor((g[B]-T-1)/t);Math.floor((g[B]-1)/t)t&&G>0&&g[B]>0){if(r.wordWrap===!1&&Gt&&r.wordWrap===!1){Cor(p,v,t);continue}p[p.length-1]+=v}r.trim!==!1&&(p=p.map(B=>nPo(B)));let f=p.join(` -`),m=[...f],y=0;for(let[B,v]of m.entries()){if(s+=v,Apt.has(v)){let{groups:T}=new RegExp(`(?:\\${_4n}(?\\d+)m|\\${gpt}(?.*)${mor})`).exec(f.slice(y))||{groups:{}};if(T.code!==void 0){let O=Number.parseFloat(T.code);a=O===ePo?void 0:O}else T.uri!==void 0&&(o=T.uri.length===0?void 0:T.uri)}let G=KL.codes.get(Number(a));m[B+1]===` -`?(o&&(s+=h4n("")),a&&G&&(s+=m4n(G))):v===` -`&&(a&&G&&(s+=m4n(a)),o&&(s+=h4n(o))),y+=v.length}return s}});function _or(e){return Number.isInteger(e)?lpt(e)===2:!1}var E4n=cc(()=>{por()});function cPo(e){if(bor.has(e))return e;if(yor.has(e))return yor.get(e);e=e.slice(2),e.includes(";")&&(e=e[0]+"0");let t=KL.codes.get(Number.parseInt(e,10));return t?KL.color.ansi(t):KL.reset.open}function lPo(e){for(let t=0;t=oPo&&r<=aPo)return t}return-1}function uPo(e,t){e=e.slice(t,t+19);let r=lPo(e);if(r!==-1){let s=e.indexOf("m",r);return s===-1&&(s=e.length),e.slice(0,s+1)}}function gPo(e,t=Number.POSITIVE_INFINITY){let r=[],s=0,a=0;for(;s=t)break}return r}function B4n(e){let t=[];for(let r of e)r.code===KL.reset.open?t=[]:bor.has(r.code)?t=t.filter(s=>s.endCode!==r.code):(t=t.filter(s=>s.endCode!==r.endCode),t.push(r));return t}function APo(e){return B4n(e).map(({endCode:s})=>s).reverse().join("")}function Eor(e,t,r){let s=gPo(e,r),a=[],o=0,g="",p=!1;for(let f of s){if(r!==void 0&&o>=r)break;f.type==="ansi"?(a.push(f),p&&(g+=f.code)):(!p&&o>=t&&(p=!0,a=B4n(a),g=a.map(({code:m})=>m).join("")),p&&(g+=f.value),o+=f.isFullWidth?2:f.value.length)}return g+=APo(a),g}var sPo,oPo,aPo,bor,yor,v4n=cc(()=>{upt();E4n();sPo=new Set([27,155]),oPo="0".codePointAt(0),aPo="9".codePointAt(0),bor=new Set,yor=new Map;for(let[e,t]of KL.codes)bor.add(KL.color.ansi(t)),yor.set(KL.color.ansi(e),KL.color.ansi(t))});var w4n={};jf(w4n,{createLogUpdate:()=>vor,default:()=>IPo,logUpdateStderr:()=>CPo});import S4n from"node:process";function vor(e,{showCursor:t=!1}={}){let r=0,s=Bor(e),a="",o=()=>{a="",s=Bor(e),r=0},g=(...p)=>{t||dor.hide();let f=pPo(e,p.join(" ")+` -`),m=Bor(e);f===a&&s===m||(a=f,s=m,f=dpt(f,m,{trim:!1,hard:!0,wordWrap:!1}),e.write(JOe.eraseLines(r)+f),r=f.split(` -`).length)};return g.clear=()=>{e.write(JOe.eraseLines(r)),o()},g.done=()=>{o(),t||dor.show()},g}var dPo,Bor,pPo,fPo,IPo,CPo,T4n=cc(()=>{qXn();a4n();hor();v4n();pOe();dPo=24,Bor=({columns:e=80})=>e,pPo=(e,t)=>{let r=e.rows??dPo,s=t.split(` -`),a=Math.max(0,s.length-r);return a?Eor(t,oz(s.slice(0,a).join(` -`)).length+1):t};fPo=vor(S4n.stdout),IPo=fPo,CPo=vor(S4n.stderr)});function Sor(e){return Number.isInteger(e)?e>=4352&&(e<=4447||e===9001||e===9002||11904<=e&&e<=12871&&e!==12351||12880<=e&&e<=19903||19968<=e&&e<=42182||43360<=e&&e<=43388||44032<=e&&e<=55203||63744<=e&&e<=64255||65040<=e&&e<=65049||65072<=e&&e<=65131||65281<=e&&e<=65376||65504<=e&&e<=65510||110592<=e&&e<=110593||127488<=e&&e<=127569||131072<=e&&e<=262141):!1}var N4n=cc(()=>{});function vU(e,t,r){let s=[...e],a=[],o=typeof r=="number"?r:s.length,g=!1,p,f=0,m="";for(let[y,B]of s.entries()){let v=!1;if(D4n.includes(B)){let G=/\d[^m]*/.exec(e.slice(y,y+18));p=G&&G.length>0?G[0]:void 0,ft&&f<=o)m+=B;else if(f===t&&!g&&p!==void 0)m=R4n(a);else if(f>=o){m+=R4n(a,!0,p);break}}return m}var mPo,D4n,ppt,R4n,x4n=cc(()=>{N4n();upt();mPo=/^[\uD800-\uDBFF][\uDC00-\uDFFF]$/,D4n=["\x1B","\x9B"],ppt=e=>`${D4n[0]}[${e}m`,R4n=(e,t,r)=>{let s=[];e=[...e];for(let a of e){let o=a;a.includes(";")&&(a=a.split(";")[0][0]+"0");let g=KL.codes.get(Number.parseInt(a,10));if(g){let p=e.indexOf(g.toString());p===-1?s.push(ppt(t?g:o)):e.splice(p,1)}else if(t){s.push(ppt(0));break}else s.push(ppt(o))}if(t&&(s=s.filter((a,o)=>s.indexOf(a)===o),r!==void 0)){let a=ppt(KL.codes.get(Number.parseInt(r,10)));s=s.reduce((o,g)=>g===a?[g,...o]:[...o,g],[])}return s.join("")}});var G4n={};jf(G4n,{default:()=>k4n});function fpt(e,t,r){if(e.charAt(t)===" ")return t;let s=r?1:-1;for(let a=0;a<=3;a++){let o=t+a*s;if(e.charAt(o)===" ")return o}return t}function k4n(e,t,r={}){let{position:s="end",space:a=!1,preferTruncationOnSpace:o=!1}=r,{truncationCharacter:g="\u2026"}=r;if(typeof e!="string")throw new TypeError(`Expected \`input\` to be a string, got ${typeof e}`);if(typeof t!="number")throw new TypeError(`Expected \`columns\` to be a number, got ${typeof t}`);if(t<1)return"";if(t===1)return g;let p=lM(e);if(p<=t)return e;if(s==="start"){if(o){let f=fpt(e,p-t+1,!0);return g+vU(e,f,p).trim()}return a===!0&&(g+=" "),g+vU(e,p-t+lM(g),p)}if(s==="middle"){a===!0&&(g=` ${g} `);let f=Math.floor(t/2);if(o){let m=fpt(e,f),y=fpt(e,p-(t-f)+1,!0);return vU(e,0,m)+g+vU(e,y,p).trim()}return vU(e,0,f)+g+vU(e,p-(t-f)+lM(g),p)}if(s==="end"){if(o){let f=fpt(e,t-1);return vU(e,0,f)+g}return a===!0&&(g=` ${g}`),vU(e,0,t-lM(g))+g}throw new Error(`Expected \`options.position\` to be either \`start\`, \`middle\` or \`end\`, got ${s}`)}var F4n=cc(()=>{x4n();Ior()});var jor=z((Qll,LJn)=>{"use strict";var iOo=Dt("child_process").spawn;function sOo(e){if(e){e=e.trim();var t=/your \d+x\d+ screen size is bogus\. expect trouble/gi;return e=e.replace(t,""),e.trim()}}function oOo(e,t,r,s){typeof r=="function"&&(s=r,r=void 0);var a=!1,o=iOo(e,t,r),g="",p="";o.stdout.on("data",function(f){g+=f.toString()}),o.stderr.on("data",function(f){p+=f.toString()}),o.on("error",function(f){a||(a=!0,s(new Error(f)))}),o.on("close",function(f){if(!a){if(a=!0,p=sOo(p),p)return s(new Error(p));s(null,g,f)}})}LJn.exports=oOo});var WJn=z((Yll,VJn)=>{"use strict";var aOo=Dt("os"),cOo=jor();function lOo(e){var t=["-A","-o","ppid,pid"];cOo("ps",t,function(r,s,a){if(r)return e(r);if(a!==0)return e(new Error("pidtree ps command exited with code "+a));try{s=s.split(aOo.EOL);for(var o=[],g=1;g{"use strict";var uOo=Dt("os"),gOo=jor();function AOo(e){var t=["PROCESS","get","ParentProcessId,ProcessId"],r={windowsHide:!0,windowsVerbatimArguments:!0};gOo("wmic",t,r,function(s,a,o){if(s){e(s);return}if(o!==0){e(new Error("pidtree wmic command exited with code "+o));return}try{a=a.split(uOo.EOL);for(var g=[],p=1;p{"use strict";var QJn=Dt("os"),dOo={darwin:"ps",sunos:"ps",freebsd:"ps",netbsd:"ps",win:"wmic",linux:"ps",aix:"ps"},pOo={ps:()=>WJn(),wmic:()=>OJn()},zor=QJn.platform();zor.startsWith("win")&&(zor="win");var MJn=dOo[zor];function fOo(e){MJn===void 0&&e(new Error(QJn.platform()+" is not supported yet, please open an issue (https://github.com/simonepri/pidtree)"));var t=pOo[MJn]();t(e)}YJn.exports=fOo});var JJn=z((Jll,XJn)=>{"use strict";var IOo=HJn();function COo(e,t,r){if(typeof t=="function"&&(r=t,t={}),typeof t!="object"&&(t={}),e=parseInt(e,10),isNaN(e)||e<-1){r(new TypeError("The pid provided is invalid"));return}IOo(function(s,a){if(s){r(s);return}if(e===-1){for(var o=0;o0;){var m=a.pop();f[m[0]]?f[m[0]].push(m[1]):f[m[0]]=[m[1]]}for(var y=0,B=[g];y{"use strict";function mOo(e,t,r){return new Promise(function(s,a){e(t,r,function(o,g){if(o)return a(o);s(g)})})}String.prototype.startsWith||(String.prototype.startsWith=function(e){return this.substring(0,e.length)===e});var UJn=JJn();function hOo(e,t,r){if(typeof t=="function"&&(r=t,t=void 0),typeof r=="function"){UJn(e,t,r);return}return mOo(UJn,e,t)}KJn.exports=hOo});var Y_=z(VD=>{"use strict";var tar=Symbol.for("yaml.alias"),AUn=Symbol.for("yaml.document"),Tpt=Symbol.for("yaml.map"),dUn=Symbol.for("yaml.pair"),rar=Symbol.for("yaml.scalar"),Npt=Symbol.for("yaml.seq"),mz=Symbol.for("yaml.node.type"),SOo=e=>!!e&&typeof e=="object"&&e[mz]===tar,wOo=e=>!!e&&typeof e=="object"&&e[mz]===AUn,TOo=e=>!!e&&typeof e=="object"&&e[mz]===Tpt,NOo=e=>!!e&&typeof e=="object"&&e[mz]===dUn,pUn=e=>!!e&&typeof e=="object"&&e[mz]===rar,ROo=e=>!!e&&typeof e=="object"&&e[mz]===Npt;function fUn(e){if(e&&typeof e=="object")switch(e[mz]){case Tpt:case Npt:return!0}return!1}function DOo(e){if(e&&typeof e=="object")switch(e[mz]){case tar:case Tpt:case rar:case Npt:return!0}return!1}var xOo=e=>(pUn(e)||fUn(e))&&!!e.anchor;VD.ALIAS=tar;VD.DOC=AUn;VD.MAP=Tpt;VD.NODE_TYPE=mz;VD.PAIR=dUn;VD.SCALAR=rar;VD.SEQ=Npt;VD.hasAnchor=xOo;VD.isAlias=SOo;VD.isCollection=fUn;VD.isDocument=wOo;VD.isMap=TOo;VD.isNode=DOo;VD.isPair=NOo;VD.isScalar=pUn;VD.isSeq=ROo});var nMe=z(nar=>{"use strict";var ZT=Y_(),jL=Symbol("break visit"),IUn=Symbol("skip children"),SU=Symbol("remove node");function Rpt(e,t){let r=CUn(t);ZT.isDocument(e)?ZBe(null,e.contents,r,Object.freeze([e]))===SU&&(e.contents=null):ZBe(null,e,r,Object.freeze([]))}Rpt.BREAK=jL;Rpt.SKIP=IUn;Rpt.REMOVE=SU;function ZBe(e,t,r,s){let a=mUn(e,t,r,s);if(ZT.isNode(a)||ZT.isPair(a))return hUn(e,s,a),ZBe(e,a,r,s);if(typeof a!="symbol"){if(ZT.isCollection(t)){s=Object.freeze(s.concat(t));for(let o=0;o{"use strict";var _Un=Y_(),kOo=nMe(),GOo={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},FOo=e=>e.replace(/[!,[\]{}]/g,t=>GOo[t]),iMe=class e{constructor(t,r){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},e.defaultYaml,t),this.tags=Object.assign({},e.defaultTags,r)}clone(){let t=new e(this.yaml,this.tags);return t.docStart=this.docStart,t}atDocument(){let t=new e(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:e.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},e.defaultTags);break}return t}add(t,r){this.atNextDocument&&(this.yaml={explicit:e.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},e.defaultTags),this.atNextDocument=!1);let s=t.trim().split(/[ \t]+/),a=s.shift();switch(a){case"%TAG":{if(s.length!==2&&(r(0,"%TAG directive should contain exactly two parts"),s.length<2))return!1;let[o,g]=s;return this.tags[o]=g,!0}case"%YAML":{if(this.yaml.explicit=!0,s.length!==1)return r(0,"%YAML directive should contain exactly one part"),!1;let[o]=s;if(o==="1.1"||o==="1.2")return this.yaml.version=o,!0;{let g=/^\d+\.\d+$/.test(o);return r(6,`Unsupported YAML version ${o}`,g),!1}}default:return r(0,`Unknown directive ${a}`,!0),!1}}tagName(t,r){if(t==="!")return"!";if(t[0]!=="!")return r(`Not a valid tag: ${t}`),null;if(t[1]==="<"){let g=t.slice(2,-1);return g==="!"||g==="!!"?(r(`Verbatim tags aren't resolved, so ${t} is invalid.`),null):(t[t.length-1]!==">"&&r("Verbatim tags must end with a >"),g)}let[,s,a]=t.match(/^(.*!)([^!]*)$/s);a||r(`The ${t} tag has no suffix`);let o=this.tags[s];if(o)try{return o+decodeURIComponent(a)}catch(g){return r(String(g)),null}return s==="!"?t:(r(`Could not resolve tag: ${t}`),null)}tagString(t){for(let[r,s]of Object.entries(this.tags))if(t.startsWith(s))return r+FOo(t.substring(s.length));return t[0]==="!"?t:`!<${t}>`}toString(t){let r=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],s=Object.entries(this.tags),a;if(t&&s.length>0&&_Un.isNode(t.contents)){let o={};kOo.visit(t.contents,(g,p)=>{_Un.isNode(p)&&p.tag&&(o[p.tag]=!0)}),a=Object.keys(o)}else a=[];for(let[o,g]of s)o==="!!"&&g==="tag:yaml.org,2002:"||(!t||a.some(p=>p.startsWith(g)))&&r.push(`%TAG ${o} ${g}`);return r.join(` -`)}};iMe.defaultYaml={explicit:!1,version:"1.2"};iMe.defaultTags={"!!":"tag:yaml.org,2002:"};yUn.Directives=iMe});var xpt=z(sMe=>{"use strict";var bUn=Y_(),ZOo=nMe();function LOo(e){if(/[\x00-\x19\s,[\]{}]/.test(e)){let r=`Anchor must not contain whitespace or control characters: ${JSON.stringify(e)}`;throw new Error(r)}return!0}function EUn(e){let t=new Set;return ZOo.visit(e,{Value(r,s){s.anchor&&t.add(s.anchor)}}),t}function BUn(e,t){for(let r=1;;++r){let s=`${e}${r}`;if(!t.has(s))return s}}function VOo(e,t){let r=[],s=new Map,a=null;return{onAnchor:o=>{r.push(o),a||(a=EUn(e));let g=BUn(t,a);return a.add(g),g},setAnchors:()=>{for(let o of r){let g=s.get(o);if(typeof g=="object"&&g.anchor&&(bUn.isScalar(g.node)||bUn.isCollection(g.node)))g.node.anchor=g.anchor;else{let p=new Error("Failed to resolve repeated object (this should not happen)");throw p.source=o,p}}},sourceObjects:s}}sMe.anchorIsValid=LOo;sMe.anchorNames=EUn;sMe.createNodeAnchors=VOo;sMe.findNewAnchor=BUn});var sar=z(vUn=>{"use strict";function oMe(e,t,r,s){if(s&&typeof s=="object")if(Array.isArray(s))for(let a=0,o=s.length;a{"use strict";var WOo=Y_();function SUn(e,t,r){if(Array.isArray(e))return e.map((s,a)=>SUn(s,String(a),r));if(e&&typeof e.toJSON=="function"){if(!r||!WOo.hasAnchor(e))return e.toJSON(t,r);let s={aliasCount:0,count:1,res:void 0};r.anchors.set(e,s),r.onCreate=o=>{s.res=o,delete r.onCreate};let a=e.toJSON(t,r);return r.onCreate&&r.onCreate(a),a}return typeof e=="bigint"&&!r?.keep?Number(e):e}wUn.toJS=SUn});var kpt=z(NUn=>{"use strict";var POo=sar(),TUn=Y_(),OOo=Mie(),oar=class{constructor(t){Object.defineProperty(this,TUn.NODE_TYPE,{value:t})}clone(){let t=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(t.range=this.range.slice()),t}toJS(t,{mapAsMap:r,maxAliasCount:s,onAnchor:a,reviver:o}={}){if(!TUn.isDocument(t))throw new TypeError("A document argument is required");let g={anchors:new Map,doc:t,keep:!0,mapAsMap:r===!0,mapKeyWarned:!1,maxAliasCount:typeof s=="number"?s:100},p=OOo.toJS(this,"",g);if(typeof a=="function")for(let{count:f,res:m}of g.anchors.values())a(m,f);return typeof o=="function"?POo.applyReviver(o,{"":p},"",p):p}};NUn.NodeBase=oar});var aMe=z(DUn=>{"use strict";var MOo=xpt(),RUn=nMe(),Gpt=Y_(),QOo=kpt(),YOo=Mie(),aar=class extends QOo.NodeBase{constructor(t){super(Gpt.ALIAS),this.source=t,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(t){let r;return RUn.visit(t,{Node:(s,a)=>{if(a===this)return RUn.visit.BREAK;a.anchor===this.source&&(r=a)}}),r}toJSON(t,r){if(!r)return{source:this.source};let{anchors:s,doc:a,maxAliasCount:o}=r,g=this.resolve(a);if(!g){let f=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(f)}let p=s.get(g);if(p||(YOo.toJS(g,null,r),p=s.get(g)),!p||p.res===void 0){let f="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(f)}if(o>=0&&(p.count+=1,p.aliasCount===0&&(p.aliasCount=Fpt(a,g,s)),p.count*p.aliasCount>o)){let f="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(f)}return p.res}toString(t,r,s){let a=`*${this.source}`;if(t){if(MOo.anchorIsValid(this.source),t.options.verifyAliasOrder&&!t.anchors.has(this.source)){let o=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(o)}if(t.implicitKey)return`${a} `}return a}};function Fpt(e,t,r){if(Gpt.isAlias(t)){let s=t.resolve(e),a=r&&s&&r.get(s);return a?a.count*a.aliasCount:0}else if(Gpt.isCollection(t)){let s=0;for(let a of t.items){let o=Fpt(e,a,r);o>s&&(s=o)}return s}else if(Gpt.isPair(t)){let s=Fpt(e,t.key,r),a=Fpt(e,t.value,r);return Math.max(s,a)}return 1}DUn.Alias=aar});var vw=z(car=>{"use strict";var HOo=Y_(),XOo=kpt(),JOo=Mie(),UOo=e=>!e||typeof e!="function"&&typeof e!="object",Qie=class extends XOo.NodeBase{constructor(t){super(HOo.SCALAR),this.value=t}toJSON(t,r){return r?.keep?this.value:JOo.toJS(this.value,t,r)}toString(){return String(this.value)}};Qie.BLOCK_FOLDED="BLOCK_FOLDED";Qie.BLOCK_LITERAL="BLOCK_LITERAL";Qie.PLAIN="PLAIN";Qie.QUOTE_DOUBLE="QUOTE_DOUBLE";Qie.QUOTE_SINGLE="QUOTE_SINGLE";car.Scalar=Qie;car.isScalarValue=UOo});var cMe=z(kUn=>{"use strict";var KOo=aMe(),dpe=Y_(),xUn=vw(),jOo="tag:yaml.org,2002:";function zOo(e,t,r){if(t){let s=r.filter(o=>o.tag===t),a=s.find(o=>!o.format)??s[0];if(!a)throw new Error(`Tag ${t} not found`);return a}return r.find(s=>s.identify?.(e)&&!s.format)}function qOo(e,t,r){if(dpe.isDocument(e)&&(e=e.contents),dpe.isNode(e))return e;if(dpe.isPair(e)){let B=r.schema[dpe.MAP].createNode?.(r.schema,null,r);return B.items.push(e),B}(e instanceof String||e instanceof Number||e instanceof Boolean||typeof BigInt<"u"&&e instanceof BigInt)&&(e=e.valueOf());let{aliasDuplicateObjects:s,onAnchor:a,onTagObj:o,schema:g,sourceObjects:p}=r,f;if(s&&e&&typeof e=="object"){if(f=p.get(e),f)return f.anchor||(f.anchor=a(e)),new KOo.Alias(f.anchor);f={anchor:null,node:null},p.set(e,f)}t?.startsWith("!!")&&(t=jOo+t.slice(2));let m=zOo(e,t,g.tags);if(!m){if(e&&typeof e.toJSON=="function"&&(e=e.toJSON()),!e||typeof e!="object"){let B=new xUn.Scalar(e);return f&&(f.node=B),B}m=e instanceof Map?g[dpe.MAP]:Symbol.iterator in Object(e)?g[dpe.SEQ]:g[dpe.MAP]}o&&(o(m),delete r.onTagObj);let y=m?.createNode?m.createNode(r.schema,e,r):typeof m?.nodeClass?.from=="function"?m.nodeClass.from(r.schema,e,r):new xUn.Scalar(e);return t?y.tag=t:m.default||(y.tag=m.tag),f&&(f.node=y),y}kUn.createNode=qOo});var Lpt=z(Zpt=>{"use strict";var $Oo=cMe(),wU=Y_(),eMo=kpt();function lar(e,t,r){let s=r;for(let a=t.length-1;a>=0;--a){let o=t[a];if(typeof o=="number"&&Number.isInteger(o)&&o>=0){let g=[];g[o]=s,s=g}else s=new Map([[o,s]])}return $Oo.createNode(s,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:e,sourceObjects:new Map})}var GUn=e=>e==null||typeof e=="object"&&!!e[Symbol.iterator]().next().done,uar=class extends eMo.NodeBase{constructor(t,r){super(t),Object.defineProperty(this,"schema",{value:r,configurable:!0,enumerable:!1,writable:!0})}clone(t){let r=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return t&&(r.schema=t),r.items=r.items.map(s=>wU.isNode(s)||wU.isPair(s)?s.clone(t):s),this.range&&(r.range=this.range.slice()),r}addIn(t,r){if(GUn(t))this.add(r);else{let[s,...a]=t,o=this.get(s,!0);if(wU.isCollection(o))o.addIn(a,r);else if(o===void 0&&this.schema)this.set(s,lar(this.schema,a,r));else throw new Error(`Expected YAML collection at ${s}. Remaining path: ${a}`)}}deleteIn(t){let[r,...s]=t;if(s.length===0)return this.delete(r);let a=this.get(r,!0);if(wU.isCollection(a))return a.deleteIn(s);throw new Error(`Expected YAML collection at ${r}. Remaining path: ${s}`)}getIn(t,r){let[s,...a]=t,o=this.get(s,!0);return a.length===0?!r&&wU.isScalar(o)?o.value:o:wU.isCollection(o)?o.getIn(a,r):void 0}hasAllNullValues(t){return this.items.every(r=>{if(!wU.isPair(r))return!1;let s=r.value;return s==null||t&&wU.isScalar(s)&&s.value==null&&!s.commentBefore&&!s.comment&&!s.tag})}hasIn(t){let[r,...s]=t;if(s.length===0)return this.has(r);let a=this.get(r,!0);return wU.isCollection(a)?a.hasIn(s):!1}setIn(t,r){let[s,...a]=t;if(a.length===0)this.set(s,r);else{let o=this.get(s,!0);if(wU.isCollection(o))o.setIn(a,r);else if(o===void 0&&this.schema)this.set(s,lar(this.schema,a,r));else throw new Error(`Expected YAML collection at ${s}. Remaining path: ${a}`)}}};Zpt.Collection=uar;Zpt.collectionFromPath=lar;Zpt.isEmptyPath=GUn});var lMe=z(Vpt=>{"use strict";var tMo=e=>e.replace(/^(?!$)(?: $)?/gm,"#");function gar(e,t){return/^\n+$/.test(e)?e.substring(1):t?e.replace(/^(?! *$)/gm,t):e}var rMo=(e,t,r)=>e.endsWith(` -`)?gar(r,t):r.includes(` +`).map(s=>hPo(s,t,r)).join(` +`)}var ppt,fPo,Bor,T4n,IPo,N4n,dpt,S4n,w4n,CPo,Eor,mPo,hPo,vor=cc(()=>{bor();COe();Apt();ppt=new Set(["\x1B","\x9B"]),fPo=39,Bor="\x07",T4n="[",IPo="]",N4n="m",dpt=`${IPo}8;;`,S4n=e=>`${ppt.values().next().value}${T4n}${e}${N4n}`,w4n=e=>`${ppt.values().next().value}${dpt}${e}${Bor}`,CPo=e=>e.split(" ").map(t=>gQ(t)),Eor=(e,t,r)=>{let s=[...t],a=!1,o=!1,g=gQ(Az(e.at(-1)));for(let[p,f]of s.entries()){let m=gQ(f);if(g+m<=r?e[e.length-1]+=f:(e.push(f),g=0),ppt.has(f)&&(a=!0,o=s.slice(p+1,p+1+dpt.length).join("")===dpt),a){o?f===Bor&&(a=!1,o=!1):f===N4n&&(a=!1);continue}g+=m,g===r&&p0&&e.length>1&&(e[e.length-2]+=e.pop())},mPo=e=>{let t=e.split(" "),r=t.length;for(;r>0&&!(gQ(t[r-1])>0);)r--;return r===t.length?e:t.slice(0,r).join(" ")+t.slice(r).join("")},hPo=(e,t,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let s="",a,o,g=CPo(e),p=[""];for(let[B,v]of e.split(" ").entries()){r.trim!==!1&&(p[p.length-1]=p.at(-1).trimStart());let k=gQ(p.at(-1));if(B!==0&&(k>=t&&(r.wordWrap===!1||r.trim===!1)&&(p.push(""),k=0),(k>0||r.trim===!1)&&(p[p.length-1]+=" ",k++)),r.hard&&g[B]>t){let T=t-k,O=1+Math.floor((g[B]-T-1)/t);Math.floor((g[B]-1)/t)t&&k>0&&g[B]>0){if(r.wordWrap===!1&&kt&&r.wordWrap===!1){Eor(p,v,t);continue}p[p.length-1]+=v}r.trim!==!1&&(p=p.map(B=>mPo(B)));let f=p.join(` +`),m=[...f],y=0;for(let[B,v]of m.entries()){if(s+=v,ppt.has(v)){let{groups:T}=new RegExp(`(?:\\${T4n}(?\\d+)m|\\${dpt}(?.*)${Bor})`).exec(f.slice(y))||{groups:{}};if(T.code!==void 0){let O=Number.parseFloat(T.code);a=O===fPo?void 0:O}else T.uri!==void 0&&(o=T.uri.length===0?void 0:T.uri)}let k=jL.codes.get(Number(a));m[B+1]===` +`?(o&&(s+=w4n("")),a&&k&&(s+=S4n(k))):v===` +`&&(a&&k&&(s+=S4n(a)),o&&(s+=w4n(o))),y+=v.length}return s}});function Sor(e){return Number.isInteger(e)?gpt(e)===2:!1}var D4n=cc(()=>{yor()});function EPo(e){if(Tor.has(e))return e;if(wor.has(e))return wor.get(e);e=e.slice(2),e.includes(";")&&(e=e[0]+"0");let t=jL.codes.get(Number.parseInt(e,10));return t?jL.color.ansi(t):jL.reset.open}function BPo(e){for(let t=0;t=yPo&&r<=bPo)return t}return-1}function vPo(e,t){e=e.slice(t,t+19);let r=BPo(e);if(r!==-1){let s=e.indexOf("m",r);return s===-1&&(s=e.length),e.slice(0,s+1)}}function SPo(e,t=Number.POSITIVE_INFINITY){let r=[],s=0,a=0;for(;s=t)break}return r}function x4n(e){let t=[];for(let r of e)r.code===jL.reset.open?t=[]:Tor.has(r.code)?t=t.filter(s=>s.endCode!==r.code):(t=t.filter(s=>s.endCode!==r.endCode),t.push(r));return t}function wPo(e){return x4n(e).map(({endCode:s})=>s).reverse().join("")}function Nor(e,t,r){let s=SPo(e,r),a=[],o=0,g="",p=!1;for(let f of s){if(r!==void 0&&o>=r)break;f.type==="ansi"?(a.push(f),p&&(g+=f.code)):(!p&&o>=t&&(p=!0,a=x4n(a),g=a.map(({code:m})=>m).join("")),p&&(g+=f.value),o+=f.isFullWidth?2:f.value.length)}return g+=wPo(a),g}var _Po,yPo,bPo,Tor,wor,k4n=cc(()=>{Apt();D4n();_Po=new Set([27,155]),yPo="0".codePointAt(0),bPo="9".codePointAt(0),Tor=new Set,wor=new Map;for(let[e,t]of jL.codes)Tor.add(jL.color.ansi(t)),wor.set(jL.color.ansi(e),jL.color.ansi(t))});var F4n={};zf(F4n,{createLogUpdate:()=>Dor,default:()=>DPo,logUpdateStderr:()=>xPo});import G4n from"node:process";function Dor(e,{showCursor:t=!1}={}){let r=0,s=Ror(e),a="",o=()=>{a="",s=Ror(e),r=0},g=(...p)=>{t||_or.hide();let f=NPo(e,p.join(" ")+` +`),m=Ror(e);f===a&&s===m||(a=f,s=m,f=fpt(f,m,{trim:!1,hard:!0,wordWrap:!1}),e.write(KOe.eraseLines(r)+f),r=f.split(` +`).length)};return g.clear=()=>{e.write(KOe.eraseLines(r)),o()},g.done=()=>{o(),t||_or.show()},g}var TPo,Ror,NPo,RPo,DPo,xPo,Z4n=cc(()=>{o4n();f4n();vor();k4n();COe();TPo=24,Ror=({columns:e=80})=>e,NPo=(e,t)=>{let r=e.rows??TPo,s=t.split(` +`),a=Math.max(0,s.length-r);return a?Nor(t,Az(s.slice(0,a).join(` +`)).length+1):t};RPo=Dor(G4n.stdout),DPo=RPo,xPo=Dor(G4n.stderr)});function xor(e){return Number.isInteger(e)?e>=4352&&(e<=4447||e===9001||e===9002||11904<=e&&e<=12871&&e!==12351||12880<=e&&e<=19903||19968<=e&&e<=42182||43360<=e&&e<=43388||44032<=e&&e<=55203||63744<=e&&e<=64255||65040<=e&&e<=65049||65072<=e&&e<=65131||65281<=e&&e<=65376||65504<=e&&e<=65510||110592<=e&&e<=110593||127488<=e&&e<=127569||131072<=e&&e<=262141):!1}var L4n=cc(()=>{});function xU(e,t,r){let s=[...e],a=[],o=typeof r=="number"?r:s.length,g=!1,p,f=0,m="";for(let[y,B]of s.entries()){let v=!1;if(W4n.includes(B)){let k=/\d[^m]*/.exec(e.slice(y,y+18));p=k&&k.length>0?k[0]:void 0,ft&&f<=o)m+=B;else if(f===t&&!g&&p!==void 0)m=V4n(a);else if(f>=o){m+=V4n(a,!0,p);break}}return m}var kPo,W4n,Ipt,V4n,P4n=cc(()=>{L4n();Apt();kPo=/^[\uD800-\uDBFF][\uDC00-\uDFFF]$/,W4n=["\x1B","\x9B"],Ipt=e=>`${W4n[0]}[${e}m`,V4n=(e,t,r)=>{let s=[];e=[...e];for(let a of e){let o=a;a.includes(";")&&(a=a.split(";")[0][0]+"0");let g=jL.codes.get(Number.parseInt(a,10));if(g){let p=e.indexOf(g.toString());p===-1?s.push(Ipt(t?g:o)):e.splice(p,1)}else if(t){s.push(Ipt(0));break}else s.push(Ipt(o))}if(t&&(s=s.filter((a,o)=>s.indexOf(a)===o),r!==void 0)){let a=Ipt(jL.codes.get(Number.parseInt(r,10)));s=s.reduce((o,g)=>g===a?[g,...o]:[...o,g],[])}return s.join("")}});var Q4n={};zf(Q4n,{default:()=>O4n});function Cpt(e,t,r){if(e.charAt(t)===" ")return t;let s=r?1:-1;for(let a=0;a<=3;a++){let o=t+a*s;if(e.charAt(o)===" ")return o}return t}function O4n(e,t,r={}){let{position:s="end",space:a=!1,preferTruncationOnSpace:o=!1}=r,{truncationCharacter:g="\u2026"}=r;if(typeof e!="string")throw new TypeError(`Expected \`input\` to be a string, got ${typeof e}`);if(typeof t!="number")throw new TypeError(`Expected \`columns\` to be a number, got ${typeof t}`);if(t<1)return"";if(t===1)return g;let p=gQ(e);if(p<=t)return e;if(s==="start"){if(o){let f=Cpt(e,p-t+1,!0);return g+xU(e,f,p).trim()}return a===!0&&(g+=" "),g+xU(e,p-t+gQ(g),p)}if(s==="middle"){a===!0&&(g=` ${g} `);let f=Math.floor(t/2);if(o){let m=Cpt(e,f),y=Cpt(e,p-(t-f)+1,!0);return xU(e,0,m)+g+xU(e,y,p).trim()}return xU(e,0,f)+g+xU(e,p-(t-f)+gQ(g),p)}if(s==="end"){if(o){let f=Cpt(e,t-1);return xU(e,0,f)+g}return a===!0&&(g=` ${g}`),xU(e,0,t-gQ(g))+g}throw new Error(`Expected \`options.position\` to be either \`start\`, \`middle\` or \`end\`, got ${s}`)}var M4n=cc(()=>{P4n();bor()});var rar=z((uul,YJn)=>{"use strict";var hOo=xt("child_process").spawn;function _Oo(e){if(e){e=e.trim();var t=/your \d+x\d+ screen size is bogus\. expect trouble/gi;return e=e.replace(t,""),e.trim()}}function yOo(e,t,r,s){typeof r=="function"&&(s=r,r=void 0);var a=!1,o=hOo(e,t,r),g="",p="";o.stdout.on("data",function(f){g+=f.toString()}),o.stderr.on("data",function(f){p+=f.toString()}),o.on("error",function(f){a||(a=!0,s(new Error(f)))}),o.on("close",function(f){if(!a){if(a=!0,p=_Oo(p),p)return s(new Error(p));s(null,g,f)}})}YJn.exports=yOo});var JJn=z((gul,XJn)=>{"use strict";var bOo=xt("os"),EOo=rar();function BOo(e){var t=["-A","-o","ppid,pid"];EOo("ps",t,function(r,s,a){if(r)return e(r);if(a!==0)return e(new Error("pidtree ps command exited with code "+a));try{s=s.split(bOo.EOL);for(var o=[],g=1;g{"use strict";var vOo=xt("os"),SOo=rar();function wOo(e){var t=["PROCESS","get","ParentProcessId,ProcessId"],r={windowsHide:!0,windowsVerbatimArguments:!0};SOo("wmic",t,r,function(s,a,o){if(s){e(s);return}if(o!==0){e(new Error("pidtree wmic command exited with code "+o));return}try{a=a.split(vOo.EOL);for(var g=[],p=1;p{"use strict";var zJn=xt("os"),TOo={darwin:"ps",sunos:"ps",freebsd:"ps",netbsd:"ps",win:"wmic",linux:"ps",aix:"ps"},NOo={ps:()=>JJn(),wmic:()=>KJn()},nar=zJn.platform();nar.startsWith("win")&&(nar="win");var jJn=TOo[nar];function ROo(e){jJn===void 0&&e(new Error(zJn.platform()+" is not supported yet, please open an issue (https://github.com/simonepri/pidtree)"));var t=NOo[jJn]();t(e)}qJn.exports=ROo});var tUn=z((pul,eUn)=>{"use strict";var DOo=$Jn();function xOo(e,t,r){if(typeof t=="function"&&(r=t,t={}),typeof t!="object"&&(t={}),e=parseInt(e,10),isNaN(e)||e<-1){r(new TypeError("The pid provided is invalid"));return}DOo(function(s,a){if(s){r(s);return}if(e===-1){for(var o=0;o0;){var m=a.pop();f[m[0]]?f[m[0]].push(m[1]):f[m[0]]=[m[1]]}for(var y=0,B=[g];y{"use strict";function kOo(e,t,r){return new Promise(function(s,a){e(t,r,function(o,g){if(o)return a(o);s(g)})})}String.prototype.startsWith||(String.prototype.startsWith=function(e){return this.substring(0,e.length)===e});var rUn=tUn();function GOo(e,t,r){if(typeof t=="function"&&(r=t,t=void 0),typeof r=="function"){rUn(e,t,r);return}return kOo(rUn,e,t)}nUn.exports=GOo});var Y_=z(QD=>{"use strict";var aar=Symbol.for("yaml.alias"),_Un=Symbol.for("yaml.document"),Rpt=Symbol.for("yaml.map"),yUn=Symbol.for("yaml.pair"),car=Symbol.for("yaml.scalar"),Dpt=Symbol.for("yaml.seq"),_z=Symbol.for("yaml.node.type"),OOo=e=>!!e&&typeof e=="object"&&e[_z]===aar,QOo=e=>!!e&&typeof e=="object"&&e[_z]===_Un,MOo=e=>!!e&&typeof e=="object"&&e[_z]===Rpt,HOo=e=>!!e&&typeof e=="object"&&e[_z]===yUn,bUn=e=>!!e&&typeof e=="object"&&e[_z]===car,YOo=e=>!!e&&typeof e=="object"&&e[_z]===Dpt;function EUn(e){if(e&&typeof e=="object")switch(e[_z]){case Rpt:case Dpt:return!0}return!1}function XOo(e){if(e&&typeof e=="object")switch(e[_z]){case aar:case Rpt:case car:case Dpt:return!0}return!1}var JOo=e=>(bUn(e)||EUn(e))&&!!e.anchor;QD.ALIAS=aar;QD.DOC=_Un;QD.MAP=Rpt;QD.NODE_TYPE=_z;QD.PAIR=yUn;QD.SCALAR=car;QD.SEQ=Dpt;QD.hasAnchor=JOo;QD.isAlias=OOo;QD.isCollection=EUn;QD.isDocument=QOo;QD.isMap=MOo;QD.isNode=XOo;QD.isPair=HOo;QD.isScalar=bUn;QD.isSeq=YOo});var sQe=z(lar=>{"use strict";var LT=Y_(),zL=Symbol("break visit"),BUn=Symbol("skip children"),kU=Symbol("remove node");function xpt(e,t){let r=vUn(t);LT.isDocument(e)?WBe(null,e.contents,r,Object.freeze([e]))===kU&&(e.contents=null):WBe(null,e,r,Object.freeze([]))}xpt.BREAK=zL;xpt.SKIP=BUn;xpt.REMOVE=kU;function WBe(e,t,r,s){let a=SUn(e,t,r,s);if(LT.isNode(a)||LT.isPair(a))return wUn(e,s,a),WBe(e,a,r,s);if(typeof a!="symbol"){if(LT.isCollection(t)){s=Object.freeze(s.concat(t));for(let o=0;o{"use strict";var TUn=Y_(),UOo=sQe(),KOo={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},jOo=e=>e.replace(/[!,[\]{}]/g,t=>KOo[t]),oQe=class e{constructor(t,r){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},e.defaultYaml,t),this.tags=Object.assign({},e.defaultTags,r)}clone(){let t=new e(this.yaml,this.tags);return t.docStart=this.docStart,t}atDocument(){let t=new e(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:e.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},e.defaultTags);break}return t}add(t,r){this.atNextDocument&&(this.yaml={explicit:e.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},e.defaultTags),this.atNextDocument=!1);let s=t.trim().split(/[ \t]+/),a=s.shift();switch(a){case"%TAG":{if(s.length!==2&&(r(0,"%TAG directive should contain exactly two parts"),s.length<2))return!1;let[o,g]=s;return this.tags[o]=g,!0}case"%YAML":{if(this.yaml.explicit=!0,s.length!==1)return r(0,"%YAML directive should contain exactly one part"),!1;let[o]=s;if(o==="1.1"||o==="1.2")return this.yaml.version=o,!0;{let g=/^\d+\.\d+$/.test(o);return r(6,`Unsupported YAML version ${o}`,g),!1}}default:return r(0,`Unknown directive ${a}`,!0),!1}}tagName(t,r){if(t==="!")return"!";if(t[0]!=="!")return r(`Not a valid tag: ${t}`),null;if(t[1]==="<"){let g=t.slice(2,-1);return g==="!"||g==="!!"?(r(`Verbatim tags aren't resolved, so ${t} is invalid.`),null):(t[t.length-1]!==">"&&r("Verbatim tags must end with a >"),g)}let[,s,a]=t.match(/^(.*!)([^!]*)$/s);a||r(`The ${t} tag has no suffix`);let o=this.tags[s];if(o)try{return o+decodeURIComponent(a)}catch(g){return r(String(g)),null}return s==="!"?t:(r(`Could not resolve tag: ${t}`),null)}tagString(t){for(let[r,s]of Object.entries(this.tags))if(t.startsWith(s))return r+jOo(t.substring(s.length));return t[0]==="!"?t:`!<${t}>`}toString(t){let r=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],s=Object.entries(this.tags),a;if(t&&s.length>0&&TUn.isNode(t.contents)){let o={};UOo.visit(t.contents,(g,p)=>{TUn.isNode(p)&&p.tag&&(o[p.tag]=!0)}),a=Object.keys(o)}else a=[];for(let[o,g]of s)o==="!!"&&g==="tag:yaml.org,2002:"||(!t||a.some(p=>p.startsWith(g)))&&r.push(`%TAG ${o} ${g}`);return r.join(` +`)}};oQe.defaultYaml={explicit:!1,version:"1.2"};oQe.defaultTags={"!!":"tag:yaml.org,2002:"};NUn.Directives=oQe});var Gpt=z(aQe=>{"use strict";var RUn=Y_(),zOo=sQe();function qOo(e){if(/[\x00-\x19\s,[\]{}]/.test(e)){let r=`Anchor must not contain whitespace or control characters: ${JSON.stringify(e)}`;throw new Error(r)}return!0}function DUn(e){let t=new Set;return zOo.visit(e,{Value(r,s){s.anchor&&t.add(s.anchor)}}),t}function xUn(e,t){for(let r=1;;++r){let s=`${e}${r}`;if(!t.has(s))return s}}function $Oo(e,t){let r=[],s=new Map,a=null;return{onAnchor:o=>{r.push(o),a||(a=DUn(e));let g=xUn(t,a);return a.add(g),g},setAnchors:()=>{for(let o of r){let g=s.get(o);if(typeof g=="object"&&g.anchor&&(RUn.isScalar(g.node)||RUn.isCollection(g.node)))g.node.anchor=g.anchor;else{let p=new Error("Failed to resolve repeated object (this should not happen)");throw p.source=o,p}}},sourceObjects:s}}aQe.anchorIsValid=qOo;aQe.anchorNames=DUn;aQe.createNodeAnchors=$Oo;aQe.findNewAnchor=xUn});var gar=z(kUn=>{"use strict";function cQe(e,t,r,s){if(s&&typeof s=="object")if(Array.isArray(s))for(let a=0,o=s.length;a{"use strict";var eQo=Y_();function GUn(e,t,r){if(Array.isArray(e))return e.map((s,a)=>GUn(s,String(a),r));if(e&&typeof e.toJSON=="function"){if(!r||!eQo.hasAnchor(e))return e.toJSON(t,r);let s={aliasCount:0,count:1,res:void 0};r.anchors.set(e,s),r.onCreate=o=>{s.res=o,delete r.onCreate};let a=e.toJSON(t,r);return r.onCreate&&r.onCreate(a),a}return typeof e=="bigint"&&!r?.keep?Number(e):e}FUn.toJS=GUn});var Fpt=z(LUn=>{"use strict";var tQo=gar(),ZUn=Y_(),rQo=Yie(),Aar=class{constructor(t){Object.defineProperty(this,ZUn.NODE_TYPE,{value:t})}clone(){let t=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(t.range=this.range.slice()),t}toJS(t,{mapAsMap:r,maxAliasCount:s,onAnchor:a,reviver:o}={}){if(!ZUn.isDocument(t))throw new TypeError("A document argument is required");let g={anchors:new Map,doc:t,keep:!0,mapAsMap:r===!0,mapKeyWarned:!1,maxAliasCount:typeof s=="number"?s:100},p=rQo.toJS(this,"",g);if(typeof a=="function")for(let{count:f,res:m}of g.anchors.values())a(m,f);return typeof o=="function"?tQo.applyReviver(o,{"":p},"",p):p}};LUn.NodeBase=Aar});var lQe=z(WUn=>{"use strict";var nQo=Gpt(),VUn=sQe(),Zpt=Y_(),iQo=Fpt(),sQo=Yie(),dar=class extends iQo.NodeBase{constructor(t){super(Zpt.ALIAS),this.source=t,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(t){let r;return VUn.visit(t,{Node:(s,a)=>{if(a===this)return VUn.visit.BREAK;a.anchor===this.source&&(r=a)}}),r}toJSON(t,r){if(!r)return{source:this.source};let{anchors:s,doc:a,maxAliasCount:o}=r,g=this.resolve(a);if(!g){let f=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(f)}let p=s.get(g);if(p||(sQo.toJS(g,null,r),p=s.get(g)),!p||p.res===void 0){let f="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(f)}if(o>=0&&(p.count+=1,p.aliasCount===0&&(p.aliasCount=Lpt(a,g,s)),p.count*p.aliasCount>o)){let f="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(f)}return p.res}toString(t,r,s){let a=`*${this.source}`;if(t){if(nQo.anchorIsValid(this.source),t.options.verifyAliasOrder&&!t.anchors.has(this.source)){let o=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(o)}if(t.implicitKey)return`${a} `}return a}};function Lpt(e,t,r){if(Zpt.isAlias(t)){let s=t.resolve(e),a=r&&s&&r.get(s);return a?a.count*a.aliasCount:0}else if(Zpt.isCollection(t)){let s=0;for(let a of t.items){let o=Lpt(e,a,r);o>s&&(s=o)}return s}else if(Zpt.isPair(t)){let s=Lpt(e,t.key,r),a=Lpt(e,t.value,r);return Math.max(s,a)}return 1}WUn.Alias=dar});var Sw=z(par=>{"use strict";var oQo=Y_(),aQo=Fpt(),cQo=Yie(),lQo=e=>!e||typeof e!="function"&&typeof e!="object",Xie=class extends aQo.NodeBase{constructor(t){super(oQo.SCALAR),this.value=t}toJSON(t,r){return r?.keep?this.value:cQo.toJS(this.value,t,r)}toString(){return String(this.value)}};Xie.BLOCK_FOLDED="BLOCK_FOLDED";Xie.BLOCK_LITERAL="BLOCK_LITERAL";Xie.PLAIN="PLAIN";Xie.QUOTE_DOUBLE="QUOTE_DOUBLE";Xie.QUOTE_SINGLE="QUOTE_SINGLE";par.Scalar=Xie;par.isScalarValue=lQo});var uQe=z(OUn=>{"use strict";var uQo=lQe(),ype=Y_(),PUn=Sw(),gQo="tag:yaml.org,2002:";function AQo(e,t,r){if(t){let s=r.filter(o=>o.tag===t),a=s.find(o=>!o.format)??s[0];if(!a)throw new Error(`Tag ${t} not found`);return a}return r.find(s=>s.identify?.(e)&&!s.format)}function dQo(e,t,r){if(ype.isDocument(e)&&(e=e.contents),ype.isNode(e))return e;if(ype.isPair(e)){let B=r.schema[ype.MAP].createNode?.(r.schema,null,r);return B.items.push(e),B}(e instanceof String||e instanceof Number||e instanceof Boolean||typeof BigInt<"u"&&e instanceof BigInt)&&(e=e.valueOf());let{aliasDuplicateObjects:s,onAnchor:a,onTagObj:o,schema:g,sourceObjects:p}=r,f;if(s&&e&&typeof e=="object"){if(f=p.get(e),f)return f.anchor||(f.anchor=a(e)),new uQo.Alias(f.anchor);f={anchor:null,node:null},p.set(e,f)}t?.startsWith("!!")&&(t=gQo+t.slice(2));let m=AQo(e,t,g.tags);if(!m){if(e&&typeof e.toJSON=="function"&&(e=e.toJSON()),!e||typeof e!="object"){let B=new PUn.Scalar(e);return f&&(f.node=B),B}m=e instanceof Map?g[ype.MAP]:Symbol.iterator in Object(e)?g[ype.SEQ]:g[ype.MAP]}o&&(o(m),delete r.onTagObj);let y=m?.createNode?m.createNode(r.schema,e,r):typeof m?.nodeClass?.from=="function"?m.nodeClass.from(r.schema,e,r):new PUn.Scalar(e);return t?y.tag=t:m.default||(y.tag=m.tag),f&&(f.node=y),y}OUn.createNode=dQo});var Wpt=z(Vpt=>{"use strict";var pQo=uQe(),GU=Y_(),fQo=Fpt();function far(e,t,r){let s=r;for(let a=t.length-1;a>=0;--a){let o=t[a];if(typeof o=="number"&&Number.isInteger(o)&&o>=0){let g=[];g[o]=s,s=g}else s=new Map([[o,s]])}return pQo.createNode(s,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:e,sourceObjects:new Map})}var QUn=e=>e==null||typeof e=="object"&&!!e[Symbol.iterator]().next().done,Iar=class extends fQo.NodeBase{constructor(t,r){super(t),Object.defineProperty(this,"schema",{value:r,configurable:!0,enumerable:!1,writable:!0})}clone(t){let r=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return t&&(r.schema=t),r.items=r.items.map(s=>GU.isNode(s)||GU.isPair(s)?s.clone(t):s),this.range&&(r.range=this.range.slice()),r}addIn(t,r){if(QUn(t))this.add(r);else{let[s,...a]=t,o=this.get(s,!0);if(GU.isCollection(o))o.addIn(a,r);else if(o===void 0&&this.schema)this.set(s,far(this.schema,a,r));else throw new Error(`Expected YAML collection at ${s}. Remaining path: ${a}`)}}deleteIn(t){let[r,...s]=t;if(s.length===0)return this.delete(r);let a=this.get(r,!0);if(GU.isCollection(a))return a.deleteIn(s);throw new Error(`Expected YAML collection at ${r}. Remaining path: ${s}`)}getIn(t,r){let[s,...a]=t,o=this.get(s,!0);return a.length===0?!r&&GU.isScalar(o)?o.value:o:GU.isCollection(o)?o.getIn(a,r):void 0}hasAllNullValues(t){return this.items.every(r=>{if(!GU.isPair(r))return!1;let s=r.value;return s==null||t&&GU.isScalar(s)&&s.value==null&&!s.commentBefore&&!s.comment&&!s.tag})}hasIn(t){let[r,...s]=t;if(s.length===0)return this.has(r);let a=this.get(r,!0);return GU.isCollection(a)?a.hasIn(s):!1}setIn(t,r){let[s,...a]=t;if(a.length===0)this.set(s,r);else{let o=this.get(s,!0);if(GU.isCollection(o))o.setIn(a,r);else if(o===void 0&&this.schema)this.set(s,far(this.schema,a,r));else throw new Error(`Expected YAML collection at ${s}. Remaining path: ${a}`)}}};Vpt.Collection=Iar;Vpt.collectionFromPath=far;Vpt.isEmptyPath=QUn});var gQe=z(Ppt=>{"use strict";var IQo=e=>e.replace(/^(?!$)(?: $)?/gm,"#");function Car(e,t){return/^\n+$/.test(e)?e.substring(1):t?e.replace(/^(?! *$)/gm,t):e}var CQo=(e,t,r)=>e.endsWith(` +`)?Car(r,t):r.includes(` `)?` -`+gar(r,t):(e.endsWith(" ")?"":" ")+r;Vpt.indentComment=gar;Vpt.lineComment=rMo;Vpt.stringifyComment=tMo});var ZUn=z(uMe=>{"use strict";var nMo="flow",Aar="block",Wpt="quoted";function iMo(e,t,r="flow",{indentAtStart:s,lineWidth:a=80,minContentWidth:o=20,onFold:g,onOverflow:p}={}){if(!a||a<0)return e;aa-Math.max(2,o)?m.push(0):B=a-s);let v,G,T=!1,O=-1,X=-1,U=-1;r===Aar&&(O=FUn(e,O,t.length),O!==-1&&(B=O+f));for(let ae;ae=e[O+=1];){if(r===Wpt&&ae==="\\"){switch(X=O,e[O+1]){case"x":O+=3;break;case"u":O+=5;break;case"U":O+=9;break;default:O+=1}U=O}if(ae===` -`)r===Aar&&(O=FUn(e,O,t.length)),B=O+t.length+f,v=void 0;else{if(ae===" "&&G&&G!==" "&&G!==` -`&&G!==" "){let ge=e[O+1];ge&&ge!==" "&&ge!==` -`&&ge!==" "&&(v=O)}if(O>=B)if(v)m.push(v),B=v+f,v=void 0;else if(r===Wpt){for(;G===" "||G===" ";)G=ae,ae=e[O+=1],T=!0;let ge=O>U+1?O-2:X-1;if(y[ge])return e;m.push(ge),y[ge]=!0,B=ge+f,v=void 0}else T=!0}G=ae}if(T&&p&&p(),m.length===0)return e;g&&g();let le=e.slice(0,m[0]);for(let ae=0;ae{"use strict";var TU=vw(),Yie=ZUn(),Opt=(e,t)=>({indentAtStart:t?e.indent.length:e.indentAtStart,lineWidth:e.options.lineWidth,minContentWidth:e.options.minContentWidth}),Mpt=e=>/^(%|---|\.\.\.)/m.test(e);function sMo(e,t,r){if(!t||t<0)return!1;let s=t-r,a=e.length;if(a<=s)return!1;for(let o=0,g=0;os)return!0;if(g=o+1,a-g<=s)return!1}return!0}function gMe(e,t){let r=JSON.stringify(e);if(t.options.doubleQuotedAsJSON)return r;let{implicitKey:s}=t,a=t.options.doubleQuotedMinMultiLineLength,o=t.indent||(Mpt(e)?" ":""),g="",p=0;for(let f=0,m=r[f];m;m=r[++f])if(m===" "&&r[f+1]==="\\"&&r[f+2]==="n"&&(g+=r.slice(p,f)+"\\ ",f+=1,p=f,m="\\"),m==="\\")switch(r[f+1]){case"u":{g+=r.slice(p,f);let y=r.substr(f+2,4);switch(y){case"0000":g+="\\0";break;case"0007":g+="\\a";break;case"000b":g+="\\v";break;case"001b":g+="\\e";break;case"0085":g+="\\N";break;case"00a0":g+="\\_";break;case"2028":g+="\\L";break;case"2029":g+="\\P";break;default:y.substr(0,2)==="00"?g+="\\x"+y.substr(2):g+=r.substr(f,6)}f+=5,p=f+1}break;case"n":if(s||r[f+2]==='"'||r.length{"use strict";var mQo="flow",mar="block",Opt="quoted";function hQo(e,t,r="flow",{indentAtStart:s,lineWidth:a=80,minContentWidth:o=20,onFold:g,onOverflow:p}={}){if(!a||a<0)return e;aa-Math.max(2,o)?m.push(0):B=a-s);let v,k,T=!1,O=-1,X=-1,U=-1;r===mar&&(O=MUn(e,O,t.length),O!==-1&&(B=O+f));for(let ae;ae=e[O+=1];){if(r===Opt&&ae==="\\"){switch(X=O,e[O+1]){case"x":O+=3;break;case"u":O+=5;break;case"U":O+=9;break;default:O+=1}U=O}if(ae===` +`)r===mar&&(O=MUn(e,O,t.length)),B=O+t.length+f,v=void 0;else{if(ae===" "&&k&&k!==" "&&k!==` +`&&k!==" "){let ge=e[O+1];ge&&ge!==" "&&ge!==` +`&&ge!==" "&&(v=O)}if(O>=B)if(v)m.push(v),B=v+f,v=void 0;else if(r===Opt){for(;k===" "||k===" ";)k=ae,ae=e[O+=1],T=!0;let ge=O>U+1?O-2:X-1;if(y[ge])return e;m.push(ge),y[ge]=!0,B=ge+f,v=void 0}else T=!0}k=ae}if(T&&p&&p(),m.length===0)return e;g&&g();let le=e.slice(0,m[0]);for(let ae=0;ae{"use strict";var FU=Sw(),Jie=HUn(),Mpt=(e,t)=>({indentAtStart:t?e.indent.length:e.indentAtStart,lineWidth:e.options.lineWidth,minContentWidth:e.options.minContentWidth}),Hpt=e=>/^(%|---|\.\.\.)/m.test(e);function _Qo(e,t,r){if(!t||t<0)return!1;let s=t-r,a=e.length;if(a<=s)return!1;for(let o=0,g=0;os)return!0;if(g=o+1,a-g<=s)return!1}return!0}function dQe(e,t){let r=JSON.stringify(e);if(t.options.doubleQuotedAsJSON)return r;let{implicitKey:s}=t,a=t.options.doubleQuotedMinMultiLineLength,o=t.indent||(Hpt(e)?" ":""),g="",p=0;for(let f=0,m=r[f];m;m=r[++f])if(m===" "&&r[f+1]==="\\"&&r[f+2]==="n"&&(g+=r.slice(p,f)+"\\ ",f+=1,p=f,m="\\"),m==="\\")switch(r[f+1]){case"u":{g+=r.slice(p,f);let y=r.substr(f+2,4);switch(y){case"0000":g+="\\0";break;case"0007":g+="\\a";break;case"000b":g+="\\v";break;case"001b":g+="\\e";break;case"0085":g+="\\N";break;case"00a0":g+="\\_";break;case"2028":g+="\\L";break;case"2029":g+="\\P";break;default:y.substr(0,2)==="00"?g+="\\x"+y.substr(2):g+=r.substr(f,6)}f+=5,p=f+1}break;case"n":if(s||r[f+2]==='"'||r.length `;let B,v;for(v=r.length;v>0;--v){let pe=r[v-1];if(pe!==` -`&&pe!==" "&&pe!==" ")break}let G=r.substring(v),T=G.indexOf(` -`);T===-1?B="-":r===G||T!==G.length-1?(B="+",o&&o()):B="",G&&(r=r.slice(0,-G.length),G[G.length-1]===` -`&&(G=G.slice(0,-1)),G=G.replace(par,`$&${m}`));let O=!1,X,U=-1;for(X=0;X")+(O?m?"2":"1":"")+B;if(e&&(ge+=" "+p(e.replace(/ ?[\r\n]+/g," ")),a&&a()),y)return r=r.replace(/\n+/g,`$&${m}`),`${ge} -${m}${le}${r}${G}`;r=r.replace(/\n+/g,` -$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${m}`);let fe=Yie.foldFlowLines(`${le}${r}${G}`,m,Yie.FOLD_BLOCK,Opt(s,!0));return`${ge} -${m}${fe}`}function oMo(e,t,r,s){let{type:a,value:o}=e,{actualString:g,implicitKey:p,indent:f,indentStep:m,inFlow:y}=t;if(p&&o.includes(` -`)||y&&/[[\]{},]/.test(o))return VBe(o,t);if(!o||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(o))return p||y||!o.includes(` -`)?VBe(o,t):Ppt(e,t,r,s);if(!p&&!y&&a!==TU.Scalar.PLAIN&&o.includes(` -`))return Ppt(e,t,r,s);if(Mpt(o)){if(f==="")return t.forceBlockIndent=!0,Ppt(e,t,r,s);if(p&&f===m)return VBe(o,t)}let B=o.replace(/\n+/g,`$& -${f}`);if(g){let v=O=>O.default&&O.tag!=="tag:yaml.org,2002:str"&&O.test?.test(B),{compat:G,tags:T}=t.doc.schema;if(T.some(v)||G?.some(v))return VBe(o,t)}return p?B:Yie.foldFlowLines(B,f,Yie.FOLD_FLOW,Opt(t,!1))}function aMo(e,t,r,s){let{implicitKey:a,inFlow:o}=t,g=typeof e.value=="string"?e:Object.assign({},e,{value:String(e.value)}),{type:p}=e;p!==TU.Scalar.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(g.value)&&(p=TU.Scalar.QUOTE_DOUBLE);let f=y=>{switch(y){case TU.Scalar.BLOCK_FOLDED:case TU.Scalar.BLOCK_LITERAL:return a||o?VBe(g.value,t):Ppt(g,t,r,s);case TU.Scalar.QUOTE_DOUBLE:return gMe(g.value,t);case TU.Scalar.QUOTE_SINGLE:return dar(g.value,t);case TU.Scalar.PLAIN:return oMo(g,t,r,s);default:return null}},m=f(p);if(m===null){let{defaultKeyType:y,defaultStringType:B}=t.options,v=a&&y||B;if(m=f(v),m===null)throw new Error(`Unsupported default string type ${v}`)}return m}LUn.stringifyString=aMo});var dMe=z(far=>{"use strict";var cMo=xpt(),Hie=Y_(),lMo=lMe(),uMo=AMe();function gMo(e,t){let r=Object.assign({blockQuote:!0,commentString:lMo.stringifyComment,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trueStr:"true",verifyAliasOrder:!0},e.schema.toStringOptions,t),s;switch(r.collectionStyle){case"block":s=!1;break;case"flow":s=!0;break;default:s=null}return{anchors:new Set,doc:e,flowCollectionPadding:r.flowCollectionPadding?" ":"",indent:"",indentStep:typeof r.indent=="number"?" ".repeat(r.indent):" ",inFlow:s,options:r}}function AMo(e,t){if(t.tag){let a=e.filter(o=>o.tag===t.tag);if(a.length>0)return a.find(o=>o.format===t.format)??a[0]}let r,s;if(Hie.isScalar(t)){s=t.value;let a=e.filter(o=>o.identify?.(s));r=a.find(o=>o.format===t.format)??a.find(o=>!o.format)}else s=t,r=e.find(a=>a.nodeClass&&s instanceof a.nodeClass);if(!r){let a=s?.constructor?.name??typeof s;throw new Error(`Tag not resolved for ${a} value`)}return r}function dMo(e,t,{anchors:r,doc:s}){if(!s.directives)return"";let a=[],o=(Hie.isScalar(e)||Hie.isCollection(e))&&e.anchor;o&&cMo.anchorIsValid(o)&&(r.add(o),a.push(`&${o}`));let g=e.tag?e.tag:t.default?null:t.tag;return g&&a.push(s.directives.tagString(g)),a.join(" ")}function pMo(e,t,r,s){if(Hie.isPair(e))return e.toString(t,r,s);if(Hie.isAlias(e)){if(t.doc.directives)return e.toString(t);if(t.resolvedAliases?.has(e))throw new TypeError("Cannot stringify circular structure without alias nodes");t.resolvedAliases?t.resolvedAliases.add(e):t.resolvedAliases=new Set([e]),e=e.resolve(t.doc)}let a,o=Hie.isNode(e)?e:t.doc.createNode(e,{onTagObj:f=>a=f});a||(a=AMo(t.doc.schema.tags,o));let g=dMo(o,a,t);g.length>0&&(t.indentAtStart=(t.indentAtStart??0)+g.length+1);let p=typeof a.stringify=="function"?a.stringify(o,t,r,s):Hie.isScalar(o)?uMo.stringifyString(o,t,r,s):o.toString(t,r,s);return g?Hie.isScalar(o)||p[0]==="{"||p[0]==="["?`${g} ${p}`:`${g} -${t.indent}${p}`:p}far.createStringifyContext=gMo;far.stringify=pMo});var OUn=z(PUn=>{"use strict";var hz=Y_(),VUn=vw(),WUn=dMe(),pMe=lMe();function fMo({key:e,value:t},r,s,a){let{allNullValues:o,doc:g,indent:p,indentStep:f,options:{commentString:m,indentSeq:y,simpleKeys:B}}=r,v=hz.isNode(e)&&e.comment||null;if(B){if(v)throw new Error("With simple keys, key nodes cannot have comments");if(hz.isCollection(e)||!hz.isNode(e)&&typeof e=="object"){let he="With simple keys, collection cannot be used as a key value";throw new Error(he)}}let G=!B&&(!e||v&&t==null&&!r.inFlow||hz.isCollection(e)||(hz.isScalar(e)?e.type===VUn.Scalar.BLOCK_FOLDED||e.type===VUn.Scalar.BLOCK_LITERAL:typeof e=="object"));r=Object.assign({},r,{allNullValues:!1,implicitKey:!G&&(B||!o),indent:p+f});let T=!1,O=!1,X=WUn.stringify(e,r,()=>T=!0,()=>O=!0);if(!G&&!r.inFlow&&X.length>1024){if(B)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");G=!0}if(r.inFlow){if(o||t==null)return T&&s&&s(),X===""?"?":G?`? ${X}`:X}else if(o&&!B||t==null&&G)return X=`? ${X}`,v&&!T?X+=pMe.lineComment(X,r.indent,m(v)):O&&a&&a(),X;T&&(v=null),G?(v&&(X+=pMe.lineComment(X,r.indent,m(v))),X=`? ${X} -${p}:`):(X=`${X}:`,v&&(X+=pMe.lineComment(X,r.indent,m(v))));let U,le,ae;hz.isNode(t)?(U=!!t.spaceBefore,le=t.commentBefore,ae=t.comment):(U=!1,le=null,ae=null,t&&typeof t=="object"&&(t=g.createNode(t))),r.implicitKey=!1,!G&&!v&&hz.isScalar(t)&&(r.indentAtStart=X.length+1),O=!1,!y&&f.length>=2&&!r.inFlow&&!G&&hz.isSeq(t)&&!t.flow&&!t.tag&&!t.anchor&&(r.indent=r.indent.substring(2));let ge=!1,fe=WUn.stringify(t,r,()=>ge=!0,()=>O=!0),pe=" ";if(v||U||le){if(pe=U?` +${m}${le}${r}${k}`;r=r.replace(/\n+/g,` +$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${m}`);let fe=Jie.foldFlowLines(`${le}${r}${k}`,m,Jie.FOLD_BLOCK,Mpt(s,!0));return`${ge} +${m}${fe}`}function yQo(e,t,r,s){let{type:a,value:o}=e,{actualString:g,implicitKey:p,indent:f,indentStep:m,inFlow:y}=t;if(p&&o.includes(` +`)||y&&/[[\]{},]/.test(o))return OBe(o,t);if(!o||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(o))return p||y||!o.includes(` +`)?OBe(o,t):Qpt(e,t,r,s);if(!p&&!y&&a!==FU.Scalar.PLAIN&&o.includes(` +`))return Qpt(e,t,r,s);if(Hpt(o)){if(f==="")return t.forceBlockIndent=!0,Qpt(e,t,r,s);if(p&&f===m)return OBe(o,t)}let B=o.replace(/\n+/g,`$& +${f}`);if(g){let v=O=>O.default&&O.tag!=="tag:yaml.org,2002:str"&&O.test?.test(B),{compat:k,tags:T}=t.doc.schema;if(T.some(v)||k?.some(v))return OBe(o,t)}return p?B:Jie.foldFlowLines(B,f,Jie.FOLD_FLOW,Mpt(t,!1))}function bQo(e,t,r,s){let{implicitKey:a,inFlow:o}=t,g=typeof e.value=="string"?e:Object.assign({},e,{value:String(e.value)}),{type:p}=e;p!==FU.Scalar.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(g.value)&&(p=FU.Scalar.QUOTE_DOUBLE);let f=y=>{switch(y){case FU.Scalar.BLOCK_FOLDED:case FU.Scalar.BLOCK_LITERAL:return a||o?OBe(g.value,t):Qpt(g,t,r,s);case FU.Scalar.QUOTE_DOUBLE:return dQe(g.value,t);case FU.Scalar.QUOTE_SINGLE:return har(g.value,t);case FU.Scalar.PLAIN:return yQo(g,t,r,s);default:return null}},m=f(p);if(m===null){let{defaultKeyType:y,defaultStringType:B}=t.options,v=a&&y||B;if(m=f(v),m===null)throw new Error(`Unsupported default string type ${v}`)}return m}YUn.stringifyString=bQo});var fQe=z(yar=>{"use strict";var EQo=Gpt(),Uie=Y_(),BQo=gQe(),vQo=pQe();function SQo(e,t){let r=Object.assign({blockQuote:!0,commentString:BQo.stringifyComment,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trueStr:"true",verifyAliasOrder:!0},e.schema.toStringOptions,t),s;switch(r.collectionStyle){case"block":s=!1;break;case"flow":s=!0;break;default:s=null}return{anchors:new Set,doc:e,flowCollectionPadding:r.flowCollectionPadding?" ":"",indent:"",indentStep:typeof r.indent=="number"?" ".repeat(r.indent):" ",inFlow:s,options:r}}function wQo(e,t){if(t.tag){let a=e.filter(o=>o.tag===t.tag);if(a.length>0)return a.find(o=>o.format===t.format)??a[0]}let r,s;if(Uie.isScalar(t)){s=t.value;let a=e.filter(o=>o.identify?.(s));r=a.find(o=>o.format===t.format)??a.find(o=>!o.format)}else s=t,r=e.find(a=>a.nodeClass&&s instanceof a.nodeClass);if(!r){let a=s?.constructor?.name??typeof s;throw new Error(`Tag not resolved for ${a} value`)}return r}function TQo(e,t,{anchors:r,doc:s}){if(!s.directives)return"";let a=[],o=(Uie.isScalar(e)||Uie.isCollection(e))&&e.anchor;o&&EQo.anchorIsValid(o)&&(r.add(o),a.push(`&${o}`));let g=e.tag?e.tag:t.default?null:t.tag;return g&&a.push(s.directives.tagString(g)),a.join(" ")}function NQo(e,t,r,s){if(Uie.isPair(e))return e.toString(t,r,s);if(Uie.isAlias(e)){if(t.doc.directives)return e.toString(t);if(t.resolvedAliases?.has(e))throw new TypeError("Cannot stringify circular structure without alias nodes");t.resolvedAliases?t.resolvedAliases.add(e):t.resolvedAliases=new Set([e]),e=e.resolve(t.doc)}let a,o=Uie.isNode(e)?e:t.doc.createNode(e,{onTagObj:f=>a=f});a||(a=wQo(t.doc.schema.tags,o));let g=TQo(o,a,t);g.length>0&&(t.indentAtStart=(t.indentAtStart??0)+g.length+1);let p=typeof a.stringify=="function"?a.stringify(o,t,r,s):Uie.isScalar(o)?vQo.stringifyString(o,t,r,s):o.toString(t,r,s);return g?Uie.isScalar(o)||p[0]==="{"||p[0]==="["?`${g} ${p}`:`${g} +${t.indent}${p}`:p}yar.createStringifyContext=SQo;yar.stringify=NQo});var KUn=z(UUn=>{"use strict";var yz=Y_(),XUn=Sw(),JUn=fQe(),IQe=gQe();function RQo({key:e,value:t},r,s,a){let{allNullValues:o,doc:g,indent:p,indentStep:f,options:{commentString:m,indentSeq:y,simpleKeys:B}}=r,v=yz.isNode(e)&&e.comment||null;if(B){if(v)throw new Error("With simple keys, key nodes cannot have comments");if(yz.isCollection(e)||!yz.isNode(e)&&typeof e=="object"){let he="With simple keys, collection cannot be used as a key value";throw new Error(he)}}let k=!B&&(!e||v&&t==null&&!r.inFlow||yz.isCollection(e)||(yz.isScalar(e)?e.type===XUn.Scalar.BLOCK_FOLDED||e.type===XUn.Scalar.BLOCK_LITERAL:typeof e=="object"));r=Object.assign({},r,{allNullValues:!1,implicitKey:!k&&(B||!o),indent:p+f});let T=!1,O=!1,X=JUn.stringify(e,r,()=>T=!0,()=>O=!0);if(!k&&!r.inFlow&&X.length>1024){if(B)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");k=!0}if(r.inFlow){if(o||t==null)return T&&s&&s(),X===""?"?":k?`? ${X}`:X}else if(o&&!B||t==null&&k)return X=`? ${X}`,v&&!T?X+=IQe.lineComment(X,r.indent,m(v)):O&&a&&a(),X;T&&(v=null),k?(v&&(X+=IQe.lineComment(X,r.indent,m(v))),X=`? ${X} +${p}:`):(X=`${X}:`,v&&(X+=IQe.lineComment(X,r.indent,m(v))));let U,le,ae;yz.isNode(t)?(U=!!t.spaceBefore,le=t.commentBefore,ae=t.comment):(U=!1,le=null,ae=null,t&&typeof t=="object"&&(t=g.createNode(t))),r.implicitKey=!1,!k&&!v&&yz.isScalar(t)&&(r.indentAtStart=X.length+1),O=!1,!y&&f.length>=2&&!r.inFlow&&!k&&yz.isSeq(t)&&!t.flow&&!t.tag&&!t.anchor&&(r.indent=r.indent.substring(2));let ge=!1,fe=JUn.stringify(t,r,()=>ge=!0,()=>O=!0),pe=" ";if(v||U||le){if(pe=U?` `:"",le){let he=m(le);pe+=` -${pMe.indentComment(he,r.indent)}`}fe===""&&!r.inFlow?pe===` +${IQe.indentComment(he,r.indent)}`}fe===""&&!r.inFlow?pe===` `&&(pe=` `):pe+=` -${r.indent}`}else if(!G&&hz.isCollection(t)){let he=fe[0],be=fe.indexOf(` +${r.indent}`}else if(!k&&yz.isCollection(t)){let he=fe[0],be=fe.indexOf(` `),Te=be!==-1,ke=r.inFlow??t.flow??t.items.length===0;if(Te||!ke){let x=!1;if(Te&&(he==="&"||he==="!")){let et=fe.indexOf(" ");he==="&"&&et!==-1&&et{"use strict";function IMo(e,...t){e==="debug"&&console.log(...t)}function CMo(e,t){(e==="debug"||e==="warn")&&(typeof process<"u"&&process.emitWarning?process.emitWarning(t):console.warn(t))}Iar.debug=IMo;Iar.warn=CMo});var _ar=z(QUn=>{"use strict";var mMo=Car(),hMo=dMe(),WBe=Y_(),_Mo=vw(),mar=Mie(),MUn="<<";function yMo(e,t,{key:r,value:s}){if(e?.doc.schema.merge&&bMo(r))if(s=WBe.isAlias(s)?s.resolve(e.doc):s,WBe.isSeq(s))for(let a of s.items)har(e,t,a);else if(Array.isArray(s))for(let a of s)har(e,t,a);else har(e,t,s);else{let a=mar.toJS(r,"",e);if(t instanceof Map)t.set(a,mar.toJS(s,a,e));else if(t instanceof Set)t.add(a);else{let o=EMo(r,a,e),g=mar.toJS(s,o,e);o in t?Object.defineProperty(t,o,{value:g,writable:!0,enumerable:!0,configurable:!0}):t[o]=g}}return t}var bMo=e=>e===MUn||WBe.isScalar(e)&&e.value===MUn&&(!e.type||e.type===_Mo.Scalar.PLAIN);function har(e,t,r){let s=e&&WBe.isAlias(r)?r.resolve(e.doc):r;if(!WBe.isMap(s))throw new Error("Merge sources must be maps or map aliases");let a=s.toJSON(null,e,Map);for(let[o,g]of a)t instanceof Map?t.has(o)||t.set(o,g):t instanceof Set?t.add(o):Object.prototype.hasOwnProperty.call(t,o)||Object.defineProperty(t,o,{value:g,writable:!0,enumerable:!0,configurable:!0});return t}function EMo(e,t,r){if(t===null)return"";if(typeof t!="object")return String(t);if(WBe.isNode(e)&&r?.doc){let s=hMo.createStringifyContext(r.doc,{});s.anchors=new Set;for(let o of r.anchors.keys())s.anchors.add(o.anchor);s.inFlow=!0,s.inStringifyKey=!0;let a=e.toString(s);if(!r.mapKeyWarned){let o=JSON.stringify(a);o.length>40&&(o=o.substring(0,36)+'..."'),mMo.warn(r.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${o}. Set mapAsMap: true to use object keys.`),r.mapKeyWarned=!0}return a}return JSON.stringify(t)}QUn.addPairToJSMap=yMo});var Xie=z(yar=>{"use strict";var YUn=cMe(),BMo=OUn(),vMo=_ar(),Qpt=Y_();function SMo(e,t,r){let s=YUn.createNode(e,void 0,r),a=YUn.createNode(t,void 0,r);return new Ypt(s,a)}var Ypt=class e{constructor(t,r=null){Object.defineProperty(this,Qpt.NODE_TYPE,{value:Qpt.PAIR}),this.key=t,this.value=r}clone(t){let{key:r,value:s}=this;return Qpt.isNode(r)&&(r=r.clone(t)),Qpt.isNode(s)&&(s=s.clone(t)),new e(r,s)}toJSON(t,r){let s=r?.mapAsMap?new Map:{};return vMo.addPairToJSMap(r,s,this)}toString(t,r,s){return t?.doc?BMo.stringifyPair(this,t,r,s):JSON.stringify(this)}};yar.Pair=Ypt;yar.createPair=SMo});var bar=z(XUn=>{"use strict";var ppe=Y_(),HUn=dMe(),Hpt=lMe();function wMo(e,t,r){return(t.inFlow??e.flow?NMo:TMo)(e,t,r)}function TMo({comment:e,items:t},r,{blockItemPrefix:s,flowChars:a,itemIndent:o,onChompKeep:g,onComment:p}){let{indent:f,options:{commentString:m}}=r,y=Object.assign({},r,{indent:o,type:null}),B=!1,v=[];for(let T=0;TX=null,()=>B=!0);X&&(U+=Hpt.lineComment(U,o,m(X))),B&&X&&(B=!1),v.push(s+U)}let G;if(v.length===0)G=a.start+a.end;else{G=v[0];for(let T=1;T{"use strict";function DQo(e,...t){e==="debug"&&console.log(...t)}function xQo(e,t){(e==="debug"||e==="warn")&&(typeof process<"u"&&process.emitWarning?process.emitWarning(t):console.warn(t))}bar.debug=DQo;bar.warn=xQo});var war=z(zUn=>{"use strict";var kQo=Ear(),GQo=fQe(),QBe=Y_(),FQo=Sw(),Bar=Yie(),jUn="<<";function ZQo(e,t,{key:r,value:s}){if(e?.doc.schema.merge&&LQo(r))if(s=QBe.isAlias(s)?s.resolve(e.doc):s,QBe.isSeq(s))for(let a of s.items)Sar(e,t,a);else if(Array.isArray(s))for(let a of s)Sar(e,t,a);else Sar(e,t,s);else{let a=Bar.toJS(r,"",e);if(t instanceof Map)t.set(a,Bar.toJS(s,a,e));else if(t instanceof Set)t.add(a);else{let o=VQo(r,a,e),g=Bar.toJS(s,o,e);o in t?Object.defineProperty(t,o,{value:g,writable:!0,enumerable:!0,configurable:!0}):t[o]=g}}return t}var LQo=e=>e===jUn||QBe.isScalar(e)&&e.value===jUn&&(!e.type||e.type===FQo.Scalar.PLAIN);function Sar(e,t,r){let s=e&&QBe.isAlias(r)?r.resolve(e.doc):r;if(!QBe.isMap(s))throw new Error("Merge sources must be maps or map aliases");let a=s.toJSON(null,e,Map);for(let[o,g]of a)t instanceof Map?t.has(o)||t.set(o,g):t instanceof Set?t.add(o):Object.prototype.hasOwnProperty.call(t,o)||Object.defineProperty(t,o,{value:g,writable:!0,enumerable:!0,configurable:!0});return t}function VQo(e,t,r){if(t===null)return"";if(typeof t!="object")return String(t);if(QBe.isNode(e)&&r?.doc){let s=GQo.createStringifyContext(r.doc,{});s.anchors=new Set;for(let o of r.anchors.keys())s.anchors.add(o.anchor);s.inFlow=!0,s.inStringifyKey=!0;let a=e.toString(s);if(!r.mapKeyWarned){let o=JSON.stringify(a);o.length>40&&(o=o.substring(0,36)+'..."'),kQo.warn(r.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${o}. Set mapAsMap: true to use object keys.`),r.mapKeyWarned=!0}return a}return JSON.stringify(t)}zUn.addPairToJSMap=ZQo});var Kie=z(Tar=>{"use strict";var qUn=uQe(),WQo=KUn(),PQo=war(),Ypt=Y_();function OQo(e,t,r){let s=qUn.createNode(e,void 0,r),a=qUn.createNode(t,void 0,r);return new Xpt(s,a)}var Xpt=class e{constructor(t,r=null){Object.defineProperty(this,Ypt.NODE_TYPE,{value:Ypt.PAIR}),this.key=t,this.value=r}clone(t){let{key:r,value:s}=this;return Ypt.isNode(r)&&(r=r.clone(t)),Ypt.isNode(s)&&(s=s.clone(t)),new e(r,s)}toJSON(t,r){let s=r?.mapAsMap?new Map:{};return PQo.addPairToJSMap(r,s,this)}toString(t,r,s){return t?.doc?WQo.stringifyPair(this,t,r,s):JSON.stringify(this)}};Tar.Pair=Xpt;Tar.createPair=OQo});var Nar=z(eKn=>{"use strict";var bpe=Y_(),$Un=fQe(),Jpt=gQe();function QQo(e,t,r){return(t.inFlow??e.flow?HQo:MQo)(e,t,r)}function MQo({comment:e,items:t},r,{blockItemPrefix:s,flowChars:a,itemIndent:o,onChompKeep:g,onComment:p}){let{indent:f,options:{commentString:m}}=r,y=Object.assign({},r,{indent:o,type:null}),B=!1,v=[];for(let T=0;TX=null,()=>B=!0);X&&(U+=Jpt.lineComment(U,o,m(X))),B&&X&&(B=!1),v.push(s+U)}let k;if(v.length===0)k=a.start+a.end;else{k=v[0];for(let T=1;TX=null);Ty||U.includes(` -`))&&(m=!0),B.push(U),y=B.length}let{start:v,end:G}=r;if(B.length===0)return v+G;if(!m){let T=B.reduce((O,X)=>O+X.length+2,2);m=t.options.lineWidth>0&&T>t.options.lineWidth}if(m){let T=v;for(let O of B)T+=O?` +`}}return e?(k+=` +`+Jpt.indentComment(m(e),f),p&&p()):B&&g&&g(),k}function HQo({items:e},t,{flowChars:r,itemIndent:s}){let{indent:a,indentStep:o,flowCollectionPadding:g,options:{commentString:p}}=t;s+=o;let f=Object.assign({},t,{indent:s,inFlow:!0,type:null}),m=!1,y=0,B=[];for(let T=0;TX=null);Ty||U.includes(` +`))&&(m=!0),B.push(U),y=B.length}let{start:v,end:k}=r;if(B.length===0)return v+k;if(!m){let T=B.reduce((O,X)=>O+X.length+2,2);m=t.options.lineWidth>0&&T>t.options.lineWidth}if(m){let T=v;for(let O of B)T+=O?` ${o}${a}${O}`:` `;return`${T} -${a}${G}`}else return`${v}${g}${B.join(" ")}${g}${G}`}function Xpt({indent:e,options:{commentString:t}},r,s,a){if(s&&a&&(s=s.replace(/^\n+/,"")),s){let o=Hpt.indentComment(t(s),e);r.push(o.trimStart())}}XUn.stringifyCollection=wMo});var Uie=z(Bar=>{"use strict";var RMo=bar(),DMo=_ar(),xMo=Lpt(),Jie=Y_(),Jpt=Xie(),kMo=vw();function fMe(e,t){let r=Jie.isScalar(t)?t.value:t;for(let s of e)if(Jie.isPair(s)&&(s.key===t||s.key===r||Jie.isScalar(s.key)&&s.key.value===r))return s}var Ear=class extends xMo.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor(t){super(Jie.MAP,t),this.items=[]}static from(t,r,s){let{keepUndefined:a,replacer:o}=s,g=new this(t),p=(f,m)=>{if(typeof o=="function")m=o.call(r,f,m);else if(Array.isArray(o)&&!o.includes(f))return;(m!==void 0||a)&&g.items.push(Jpt.createPair(f,m,s))};if(r instanceof Map)for(let[f,m]of r)p(f,m);else if(r&&typeof r=="object")for(let f of Object.keys(r))p(f,r[f]);return typeof t.sortMapEntries=="function"&&g.items.sort(t.sortMapEntries),g}add(t,r){let s;Jie.isPair(t)?s=t:!t||typeof t!="object"||!("key"in t)?s=new Jpt.Pair(t,t?.value):s=new Jpt.Pair(t.key,t.value);let a=fMe(this.items,s.key),o=this.schema?.sortMapEntries;if(a){if(!r)throw new Error(`Key ${s.key} already set`);Jie.isScalar(a.value)&&kMo.isScalarValue(s.value)?a.value.value=s.value:a.value=s.value}else if(o){let g=this.items.findIndex(p=>o(s,p)<0);g===-1?this.items.push(s):this.items.splice(g,0,s)}else this.items.push(s)}delete(t){let r=fMe(this.items,t);return r?this.items.splice(this.items.indexOf(r),1).length>0:!1}get(t,r){let a=fMe(this.items,t)?.value;return(!r&&Jie.isScalar(a)?a.value:a)??void 0}has(t){return!!fMe(this.items,t)}set(t,r){this.add(new Jpt.Pair(t,r),!0)}toJSON(t,r,s){let a=s?new s:r?.mapAsMap?new Map:{};r?.onCreate&&r.onCreate(a);for(let o of this.items)DMo.addPairToJSMap(r,a,o);return a}toString(t,r,s){if(!t)return JSON.stringify(this);for(let a of this.items)if(!Jie.isPair(a))throw new Error(`Map items must all be pairs; found ${JSON.stringify(a)} instead`);return!t.allNullValues&&this.hasAllNullValues(!1)&&(t=Object.assign({},t,{allNullValues:!0})),RMo.stringifyCollection(this,t,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:t.indent||"",onChompKeep:s,onComment:r})}};Bar.YAMLMap=Ear;Bar.findPair=fMe});var PBe=z(UUn=>{"use strict";var GMo=Y_(),JUn=Uie(),FMo={collection:"map",default:!0,nodeClass:JUn.YAMLMap,tag:"tag:yaml.org,2002:map",resolve(e,t){return GMo.isMap(e)||t("Expected a mapping for this tag"),e},createNode:(e,t,r)=>JUn.YAMLMap.from(e,t,r)};UUn.map=FMo});var Kie=z(KUn=>{"use strict";var ZMo=cMe(),LMo=bar(),VMo=Lpt(),Kpt=Y_(),WMo=vw(),PMo=Mie(),Sar=class extends VMo.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(t){super(Kpt.SEQ,t),this.items=[]}add(t){this.items.push(t)}delete(t){let r=Upt(t);return typeof r!="number"?!1:this.items.splice(r,1).length>0}get(t,r){let s=Upt(t);if(typeof s!="number")return;let a=this.items[s];return!r&&Kpt.isScalar(a)?a.value:a}has(t){let r=Upt(t);return typeof r=="number"&&r=0?t:null}KUn.YAMLSeq=Sar});var OBe=z(zUn=>{"use strict";var OMo=Y_(),jUn=Kie(),MMo={collection:"seq",default:!0,nodeClass:jUn.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve(e,t){return OMo.isSeq(e)||t("Expected a sequence for this tag"),e},createNode:(e,t,r)=>jUn.YAMLSeq.from(e,t,r)};zUn.seq=MMo});var IMe=z(qUn=>{"use strict";var QMo=AMe(),YMo={identify:e=>typeof e=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:e=>e,stringify(e,t,r,s){return t=Object.assign({actualString:!0},t),QMo.stringifyString(e,t,r,s)}};qUn.string=YMo});var jpt=z(tKn=>{"use strict";var $Un=vw(),eKn={identify:e=>e==null,createNode:()=>new $Un.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new $Un.Scalar(null),stringify:({source:e},t)=>typeof e=="string"&&eKn.test.test(e)?e:t.options.nullStr};tKn.nullTag=eKn});var war=z(nKn=>{"use strict";var HMo=vw(),rKn={identify:e=>typeof e=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:e=>new HMo.Scalar(e[0]==="t"||e[0]==="T"),stringify({source:e,value:t},r){if(e&&rKn.test.test(e)){let s=e[0]==="t"||e[0]==="T";if(t===s)return e}return t?r.options.trueStr:r.options.falseStr}};nKn.boolTag=rKn});var MBe=z(iKn=>{"use strict";function XMo({format:e,minFractionDigits:t,tag:r,value:s}){if(typeof s=="bigint")return String(s);let a=typeof s=="number"?s:Number(s);if(!isFinite(a))return isNaN(a)?".nan":a<0?"-.inf":".inf";let o=JSON.stringify(s);if(!e&&t&&(!r||r==="tag:yaml.org,2002:float")&&/^\d/.test(o)){let g=o.indexOf(".");g<0&&(g=o.length,o+=".");let p=t-(o.length-g-1);for(;p-- >0;)o+="0"}return o}iKn.stringifyNumber=XMo});var Nar=z(zpt=>{"use strict";var JMo=vw(),Tar=MBe(),UMo={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:e=>e.slice(-3).toLowerCase()==="nan"?NaN:e[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:Tar.stringifyNumber},KMo={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:e=>parseFloat(e),stringify(e){let t=Number(e.value);return isFinite(t)?t.toExponential():Tar.stringifyNumber(e)}},jMo={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(e){let t=new JMo.Scalar(parseFloat(e)),r=e.indexOf(".");return r!==-1&&e[e.length-1]==="0"&&(t.minFractionDigits=e.length-r-1),t},stringify:Tar.stringifyNumber};zpt.float=jMo;zpt.floatExp=KMo;zpt.floatNaN=UMo});var Dar=z($pt=>{"use strict";var sKn=MBe(),qpt=e=>typeof e=="bigint"||Number.isInteger(e),Rar=(e,t,r,{intAsBigInt:s})=>s?BigInt(e):parseInt(e.substring(t),r);function oKn(e,t,r){let{value:s}=e;return qpt(s)&&s>=0?r+s.toString(t):sKn.stringifyNumber(e)}var zMo={identify:e=>qpt(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(e,t,r)=>Rar(e,2,8,r),stringify:e=>oKn(e,8,"0o")},qMo={identify:qpt,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(e,t,r)=>Rar(e,0,10,r),stringify:sKn.stringifyNumber},$Mo={identify:e=>qpt(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(e,t,r)=>Rar(e,2,16,r),stringify:e=>oKn(e,16,"0x")};$pt.int=qMo;$pt.intHex=$Mo;$pt.intOct=zMo});var cKn=z(aKn=>{"use strict";var eQo=PBe(),tQo=jpt(),rQo=OBe(),nQo=IMe(),iQo=war(),xar=Nar(),kar=Dar(),sQo=[eQo.map,rQo.seq,nQo.string,tQo.nullTag,iQo.boolTag,kar.intOct,kar.int,kar.intHex,xar.floatNaN,xar.floatExp,xar.float];aKn.schema=sQo});var gKn=z(uKn=>{"use strict";var oQo=vw(),aQo=PBe(),cQo=OBe();function lKn(e){return typeof e=="bigint"||Number.isInteger(e)}var eft=({value:e})=>JSON.stringify(e),lQo=[{identify:e=>typeof e=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:e=>e,stringify:eft},{identify:e=>e==null,createNode:()=>new oQo.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:eft},{identify:e=>typeof e=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true|false$/,resolve:e=>e==="true",stringify:eft},{identify:lKn,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(e,t,{intAsBigInt:r})=>r?BigInt(e):parseInt(e,10),stringify:({value:e})=>lKn(e)?e.toString():JSON.stringify(e)},{identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:e=>parseFloat(e),stringify:eft}],uQo={default:!0,tag:"",test:/^/,resolve(e,t){return t(`Unresolved plain scalar ${JSON.stringify(e)}`),e}},gQo=[aQo.map,cQo.seq].concat(lQo,uQo);uKn.schema=gQo});var Far=z(AKn=>{"use strict";var Gar=vw(),AQo=AMe(),dQo={identify:e=>e instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(e,t){if(typeof Buffer=="function")return Buffer.from(e,"base64");if(typeof atob=="function"){let r=atob(e.replace(/[\n\r]/g,"")),s=new Uint8Array(r.length);for(let a=0;a{"use strict";var tft=Y_(),Zar=Xie(),pQo=vw(),fQo=Kie();function dKn(e,t){if(tft.isSeq(e))for(let r=0;r1&&t("Each pair must have its own sequence indicator");let a=s.items[0]||new Zar.Pair(new pQo.Scalar(null));if(s.commentBefore&&(a.key.commentBefore=a.key.commentBefore?`${s.commentBefore} +${a}${k}`}else return`${v}${g}${B.join(" ")}${g}${k}`}function Upt({indent:e,options:{commentString:t}},r,s,a){if(s&&a&&(s=s.replace(/^\n+/,"")),s){let o=Jpt.indentComment(t(s),e);r.push(o.trimStart())}}eKn.stringifyCollection=QQo});var zie=z(Dar=>{"use strict";var YQo=Nar(),XQo=war(),JQo=Wpt(),jie=Y_(),Kpt=Kie(),UQo=Sw();function CQe(e,t){let r=jie.isScalar(t)?t.value:t;for(let s of e)if(jie.isPair(s)&&(s.key===t||s.key===r||jie.isScalar(s.key)&&s.key.value===r))return s}var Rar=class extends JQo.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor(t){super(jie.MAP,t),this.items=[]}static from(t,r,s){let{keepUndefined:a,replacer:o}=s,g=new this(t),p=(f,m)=>{if(typeof o=="function")m=o.call(r,f,m);else if(Array.isArray(o)&&!o.includes(f))return;(m!==void 0||a)&&g.items.push(Kpt.createPair(f,m,s))};if(r instanceof Map)for(let[f,m]of r)p(f,m);else if(r&&typeof r=="object")for(let f of Object.keys(r))p(f,r[f]);return typeof t.sortMapEntries=="function"&&g.items.sort(t.sortMapEntries),g}add(t,r){let s;jie.isPair(t)?s=t:!t||typeof t!="object"||!("key"in t)?s=new Kpt.Pair(t,t?.value):s=new Kpt.Pair(t.key,t.value);let a=CQe(this.items,s.key),o=this.schema?.sortMapEntries;if(a){if(!r)throw new Error(`Key ${s.key} already set`);jie.isScalar(a.value)&&UQo.isScalarValue(s.value)?a.value.value=s.value:a.value=s.value}else if(o){let g=this.items.findIndex(p=>o(s,p)<0);g===-1?this.items.push(s):this.items.splice(g,0,s)}else this.items.push(s)}delete(t){let r=CQe(this.items,t);return r?this.items.splice(this.items.indexOf(r),1).length>0:!1}get(t,r){let a=CQe(this.items,t)?.value;return(!r&&jie.isScalar(a)?a.value:a)??void 0}has(t){return!!CQe(this.items,t)}set(t,r){this.add(new Kpt.Pair(t,r),!0)}toJSON(t,r,s){let a=s?new s:r?.mapAsMap?new Map:{};r?.onCreate&&r.onCreate(a);for(let o of this.items)XQo.addPairToJSMap(r,a,o);return a}toString(t,r,s){if(!t)return JSON.stringify(this);for(let a of this.items)if(!jie.isPair(a))throw new Error(`Map items must all be pairs; found ${JSON.stringify(a)} instead`);return!t.allNullValues&&this.hasAllNullValues(!1)&&(t=Object.assign({},t,{allNullValues:!0})),YQo.stringifyCollection(this,t,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:t.indent||"",onChompKeep:s,onComment:r})}};Dar.YAMLMap=Rar;Dar.findPair=CQe});var MBe=z(rKn=>{"use strict";var KQo=Y_(),tKn=zie(),jQo={collection:"map",default:!0,nodeClass:tKn.YAMLMap,tag:"tag:yaml.org,2002:map",resolve(e,t){return KQo.isMap(e)||t("Expected a mapping for this tag"),e},createNode:(e,t,r)=>tKn.YAMLMap.from(e,t,r)};rKn.map=jQo});var qie=z(nKn=>{"use strict";var zQo=uQe(),qQo=Nar(),$Qo=Wpt(),zpt=Y_(),e5o=Sw(),t5o=Yie(),xar=class extends $Qo.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(t){super(zpt.SEQ,t),this.items=[]}add(t){this.items.push(t)}delete(t){let r=jpt(t);return typeof r!="number"?!1:this.items.splice(r,1).length>0}get(t,r){let s=jpt(t);if(typeof s!="number")return;let a=this.items[s];return!r&&zpt.isScalar(a)?a.value:a}has(t){let r=jpt(t);return typeof r=="number"&&r=0?t:null}nKn.YAMLSeq=xar});var HBe=z(sKn=>{"use strict";var r5o=Y_(),iKn=qie(),n5o={collection:"seq",default:!0,nodeClass:iKn.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve(e,t){return r5o.isSeq(e)||t("Expected a sequence for this tag"),e},createNode:(e,t,r)=>iKn.YAMLSeq.from(e,t,r)};sKn.seq=n5o});var mQe=z(oKn=>{"use strict";var i5o=pQe(),s5o={identify:e=>typeof e=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:e=>e,stringify(e,t,r,s){return t=Object.assign({actualString:!0},t),i5o.stringifyString(e,t,r,s)}};oKn.string=s5o});var qpt=z(lKn=>{"use strict";var aKn=Sw(),cKn={identify:e=>e==null,createNode:()=>new aKn.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new aKn.Scalar(null),stringify:({source:e},t)=>typeof e=="string"&&cKn.test.test(e)?e:t.options.nullStr};lKn.nullTag=cKn});var kar=z(gKn=>{"use strict";var o5o=Sw(),uKn={identify:e=>typeof e=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:e=>new o5o.Scalar(e[0]==="t"||e[0]==="T"),stringify({source:e,value:t},r){if(e&&uKn.test.test(e)){let s=e[0]==="t"||e[0]==="T";if(t===s)return e}return t?r.options.trueStr:r.options.falseStr}};gKn.boolTag=uKn});var YBe=z(AKn=>{"use strict";function a5o({format:e,minFractionDigits:t,tag:r,value:s}){if(typeof s=="bigint")return String(s);let a=typeof s=="number"?s:Number(s);if(!isFinite(a))return isNaN(a)?".nan":a<0?"-.inf":".inf";let o=JSON.stringify(s);if(!e&&t&&(!r||r==="tag:yaml.org,2002:float")&&/^\d/.test(o)){let g=o.indexOf(".");g<0&&(g=o.length,o+=".");let p=t-(o.length-g-1);for(;p-- >0;)o+="0"}return o}AKn.stringifyNumber=a5o});var Far=z($pt=>{"use strict";var c5o=Sw(),Gar=YBe(),l5o={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:e=>e.slice(-3).toLowerCase()==="nan"?NaN:e[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:Gar.stringifyNumber},u5o={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:e=>parseFloat(e),stringify(e){let t=Number(e.value);return isFinite(t)?t.toExponential():Gar.stringifyNumber(e)}},g5o={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(e){let t=new c5o.Scalar(parseFloat(e)),r=e.indexOf(".");return r!==-1&&e[e.length-1]==="0"&&(t.minFractionDigits=e.length-r-1),t},stringify:Gar.stringifyNumber};$pt.float=g5o;$pt.floatExp=u5o;$pt.floatNaN=l5o});var Lar=z(tft=>{"use strict";var dKn=YBe(),eft=e=>typeof e=="bigint"||Number.isInteger(e),Zar=(e,t,r,{intAsBigInt:s})=>s?BigInt(e):parseInt(e.substring(t),r);function pKn(e,t,r){let{value:s}=e;return eft(s)&&s>=0?r+s.toString(t):dKn.stringifyNumber(e)}var A5o={identify:e=>eft(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(e,t,r)=>Zar(e,2,8,r),stringify:e=>pKn(e,8,"0o")},d5o={identify:eft,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(e,t,r)=>Zar(e,0,10,r),stringify:dKn.stringifyNumber},p5o={identify:e=>eft(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(e,t,r)=>Zar(e,2,16,r),stringify:e=>pKn(e,16,"0x")};tft.int=d5o;tft.intHex=p5o;tft.intOct=A5o});var IKn=z(fKn=>{"use strict";var f5o=MBe(),I5o=qpt(),C5o=HBe(),m5o=mQe(),h5o=kar(),Var=Far(),War=Lar(),_5o=[f5o.map,C5o.seq,m5o.string,I5o.nullTag,h5o.boolTag,War.intOct,War.int,War.intHex,Var.floatNaN,Var.floatExp,Var.float];fKn.schema=_5o});var hKn=z(mKn=>{"use strict";var y5o=Sw(),b5o=MBe(),E5o=HBe();function CKn(e){return typeof e=="bigint"||Number.isInteger(e)}var rft=({value:e})=>JSON.stringify(e),B5o=[{identify:e=>typeof e=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:e=>e,stringify:rft},{identify:e=>e==null,createNode:()=>new y5o.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:rft},{identify:e=>typeof e=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true|false$/,resolve:e=>e==="true",stringify:rft},{identify:CKn,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(e,t,{intAsBigInt:r})=>r?BigInt(e):parseInt(e,10),stringify:({value:e})=>CKn(e)?e.toString():JSON.stringify(e)},{identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:e=>parseFloat(e),stringify:rft}],v5o={default:!0,tag:"",test:/^/,resolve(e,t){return t(`Unresolved plain scalar ${JSON.stringify(e)}`),e}},S5o=[b5o.map,E5o.seq].concat(B5o,v5o);mKn.schema=S5o});var Oar=z(_Kn=>{"use strict";var Par=Sw(),w5o=pQe(),T5o={identify:e=>e instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(e,t){if(typeof Buffer=="function")return Buffer.from(e,"base64");if(typeof atob=="function"){let r=atob(e.replace(/[\n\r]/g,"")),s=new Uint8Array(r.length);for(let a=0;a{"use strict";var nft=Y_(),Qar=Kie(),N5o=Sw(),R5o=qie();function yKn(e,t){if(nft.isSeq(e))for(let r=0;r1&&t("Each pair must have its own sequence indicator");let a=s.items[0]||new Qar.Pair(new N5o.Scalar(null));if(s.commentBefore&&(a.key.commentBefore=a.key.commentBefore?`${s.commentBefore} ${a.key.commentBefore}`:s.commentBefore),s.comment){let o=a.value??a.key;o.comment=o.comment?`${s.comment} -${o.comment}`:s.comment}s=a}e.items[r]=tft.isPair(s)?s:new Zar.Pair(s)}}else t("Expected a sequence for this tag");return e}function pKn(e,t,r){let{replacer:s}=r,a=new fQo.YAMLSeq(e);a.tag="tag:yaml.org,2002:pairs";let o=0;if(t&&Symbol.iterator in Object(t))for(let g of t){typeof s=="function"&&(g=s.call(t,String(o++),g));let p,f;if(Array.isArray(g))if(g.length===2)p=g[0],f=g[1];else throw new TypeError(`Expected [key, value] tuple: ${g}`);else if(g&&g instanceof Object){let m=Object.keys(g);if(m.length===1)p=m[0],f=g[p];else throw new TypeError(`Expected tuple with one key, not ${m.length} keys`)}else p=g;a.items.push(Zar.createPair(p,f,r))}return a}var IQo={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:dKn,createNode:pKn};rft.createPairs=pKn;rft.pairs=IQo;rft.resolvePairs=dKn});var War=z(Var=>{"use strict";var fKn=Y_(),Lar=Mie(),CMe=Uie(),CQo=Kie(),IKn=nft(),fpe=class e extends CQo.YAMLSeq{constructor(){super(),this.add=CMe.YAMLMap.prototype.add.bind(this),this.delete=CMe.YAMLMap.prototype.delete.bind(this),this.get=CMe.YAMLMap.prototype.get.bind(this),this.has=CMe.YAMLMap.prototype.has.bind(this),this.set=CMe.YAMLMap.prototype.set.bind(this),this.tag=e.tag}toJSON(t,r){if(!r)return super.toJSON(t);let s=new Map;r?.onCreate&&r.onCreate(s);for(let a of this.items){let o,g;if(fKn.isPair(a)?(o=Lar.toJS(a.key,"",r),g=Lar.toJS(a.value,o,r)):o=Lar.toJS(a,"",r),s.has(o))throw new Error("Ordered maps must not include duplicate keys");s.set(o,g)}return s}static from(t,r,s){let a=IKn.createPairs(t,r,s),o=new this;return o.items=a.items,o}};fpe.tag="tag:yaml.org,2002:omap";var mQo={collection:"seq",identify:e=>e instanceof Map,nodeClass:fpe,default:!1,tag:"tag:yaml.org,2002:omap",resolve(e,t){let r=IKn.resolvePairs(e,t),s=[];for(let{key:a}of r.items)fKn.isScalar(a)&&(s.includes(a.value)?t(`Ordered maps must not include duplicate keys: ${a.value}`):s.push(a.value));return Object.assign(new fpe,r)},createNode:(e,t,r)=>fpe.from(e,t,r)};Var.YAMLOMap=fpe;Var.omap=mQo});var yKn=z(Par=>{"use strict";var CKn=vw();function mKn({value:e,source:t},r){return t&&(e?hKn:_Kn).test.test(t)?t:e?r.options.trueStr:r.options.falseStr}var hKn={identify:e=>e===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new CKn.Scalar(!0),stringify:mKn},_Kn={identify:e=>e===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new CKn.Scalar(!1),stringify:mKn};Par.falseTag=_Kn;Par.trueTag=hKn});var bKn=z(ift=>{"use strict";var hQo=vw(),Oar=MBe(),_Qo={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:e=>e.slice(-3).toLowerCase()==="nan"?NaN:e[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:Oar.stringifyNumber},yQo={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:e=>parseFloat(e.replace(/_/g,"")),stringify(e){let t=Number(e.value);return isFinite(t)?t.toExponential():Oar.stringifyNumber(e)}},bQo={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(e){let t=new hQo.Scalar(parseFloat(e.replace(/_/g,""))),r=e.indexOf(".");if(r!==-1){let s=e.substring(r+1).replace(/_/g,"");s[s.length-1]==="0"&&(t.minFractionDigits=s.length)}return t},stringify:Oar.stringifyNumber};ift.float=bQo;ift.floatExp=yQo;ift.floatNaN=_Qo});var BKn=z(hMe=>{"use strict";var EKn=MBe(),mMe=e=>typeof e=="bigint"||Number.isInteger(e);function sft(e,t,r,{intAsBigInt:s}){let a=e[0];if((a==="-"||a==="+")&&(t+=1),e=e.substring(t).replace(/_/g,""),s){switch(r){case 2:e=`0b${e}`;break;case 8:e=`0o${e}`;break;case 16:e=`0x${e}`;break}let g=BigInt(e);return a==="-"?BigInt(-1)*g:g}let o=parseInt(e,r);return a==="-"?-1*o:o}function Mar(e,t,r){let{value:s}=e;if(mMe(s)){let a=s.toString(t);return s<0?"-"+r+a.substr(1):r+a}return EKn.stringifyNumber(e)}var EQo={identify:mMe,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(e,t,r)=>sft(e,2,2,r),stringify:e=>Mar(e,2,"0b")},BQo={identify:mMe,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(e,t,r)=>sft(e,1,8,r),stringify:e=>Mar(e,8,"0")},vQo={identify:mMe,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(e,t,r)=>sft(e,0,10,r),stringify:EKn.stringifyNumber},SQo={identify:mMe,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(e,t,r)=>sft(e,2,16,r),stringify:e=>Mar(e,16,"0x")};hMe.int=vQo;hMe.intBin=EQo;hMe.intHex=SQo;hMe.intOct=BQo});var Yar=z(Qar=>{"use strict";var cft=Y_(),oft=Xie(),aft=Uie(),Ipe=class e extends aft.YAMLMap{constructor(t){super(t),this.tag=e.tag}add(t){let r;cft.isPair(t)?r=t:t&&typeof t=="object"&&"key"in t&&"value"in t&&t.value===null?r=new oft.Pair(t.key,null):r=new oft.Pair(t,null),aft.findPair(this.items,r.key)||this.items.push(r)}get(t,r){let s=aft.findPair(this.items,t);return!r&&cft.isPair(s)?cft.isScalar(s.key)?s.key.value:s.key:s}set(t,r){if(typeof r!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof r}`);let s=aft.findPair(this.items,t);s&&!r?this.items.splice(this.items.indexOf(s),1):!s&&r&&this.items.push(new oft.Pair(t))}toJSON(t,r){return super.toJSON(t,r,Set)}toString(t,r,s){if(!t)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},t,{allNullValues:!0}),r,s);throw new Error("Set items must all have null values")}static from(t,r,s){let{replacer:a}=s,o=new this(t);if(r&&Symbol.iterator in Object(r))for(let g of r)typeof a=="function"&&(g=a.call(r,g,g)),o.items.push(oft.createPair(g,null,s));return o}};Ipe.tag="tag:yaml.org,2002:set";var wQo={collection:"map",identify:e=>e instanceof Set,nodeClass:Ipe,default:!1,tag:"tag:yaml.org,2002:set",createNode:(e,t,r)=>Ipe.from(e,t,r),resolve(e,t){if(cft.isMap(e)){if(e.hasAllNullValues(!0))return Object.assign(new Ipe,e);t("Set items must all have null values")}else t("Expected a mapping for this tag");return e}};Qar.YAMLSet=Ipe;Qar.set=wQo});var Xar=z(lft=>{"use strict";var TQo=MBe();function Har(e,t){let r=e[0],s=r==="-"||r==="+"?e.substring(1):e,a=g=>t?BigInt(g):Number(g),o=s.replace(/_/g,"").split(":").reduce((g,p)=>g*a(60)+a(p),a(0));return r==="-"?a(-1)*o:o}function vKn(e){let{value:t}=e,r=g=>g;if(typeof t=="bigint")r=g=>BigInt(g);else if(isNaN(t)||!isFinite(t))return TQo.stringifyNumber(e);let s="";t<0&&(s="-",t*=r(-1));let a=r(60),o=[t%a];return t<60?o.unshift(0):(t=(t-o[0])/a,o.unshift(t%a),t>=60&&(t=(t-o[0])/a,o.unshift(t))),s+o.map(g=>String(g).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var NQo={identify:e=>typeof e=="bigint"||Number.isInteger(e),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(e,t,{intAsBigInt:r})=>Har(e,r),stringify:vKn},RQo={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:e=>Har(e,!1),stringify:vKn},SKn={identify:e=>e instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve(e){let t=e.match(SKn.test);if(!t)throw new Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,r,s,a,o,g,p]=t.map(Number),f=t[7]?Number((t[7]+"00").substr(1,3)):0,m=Date.UTC(r,s-1,a,o||0,g||0,p||0,f),y=t[8];if(y&&y!=="Z"){let B=Har(y,!1);Math.abs(B)<30&&(B*=60),m-=6e4*B}return new Date(m)},stringify:({value:e})=>e.toISOString().replace(/((T00:00)?:00)?\.000Z$/,"")};lft.floatTime=RQo;lft.intTime=NQo;lft.timestamp=SKn});var NKn=z(TKn=>{"use strict";var DQo=PBe(),xQo=jpt(),kQo=OBe(),GQo=IMe(),FQo=Far(),wKn=yKn(),Jar=bKn(),uft=BKn(),ZQo=War(),LQo=nft(),VQo=Yar(),Uar=Xar(),WQo=[DQo.map,kQo.seq,GQo.string,xQo.nullTag,wKn.trueTag,wKn.falseTag,uft.intBin,uft.intOct,uft.int,uft.intHex,Jar.floatNaN,Jar.floatExp,Jar.float,FQo.binary,ZQo.omap,LQo.pairs,VQo.set,Uar.intTime,Uar.floatTime,Uar.timestamp];TKn.schema=WQo});var WKn=z(zar=>{"use strict";var kKn=PBe(),PQo=jpt(),GKn=OBe(),OQo=IMe(),MQo=war(),Kar=Nar(),jar=Dar(),QQo=cKn(),YQo=gKn(),FKn=Far(),ZKn=War(),LKn=nft(),RKn=NKn(),VKn=Yar(),gft=Xar(),DKn=new Map([["core",QQo.schema],["failsafe",[kKn.map,GKn.seq,OQo.string]],["json",YQo.schema],["yaml11",RKn.schema],["yaml-1.1",RKn.schema]]),xKn={binary:FKn.binary,bool:MQo.boolTag,float:Kar.float,floatExp:Kar.floatExp,floatNaN:Kar.floatNaN,floatTime:gft.floatTime,int:jar.int,intHex:jar.intHex,intOct:jar.intOct,intTime:gft.intTime,map:kKn.map,null:PQo.nullTag,omap:ZKn.omap,pairs:LKn.pairs,seq:GKn.seq,set:VKn.set,timestamp:gft.timestamp},HQo={"tag:yaml.org,2002:binary":FKn.binary,"tag:yaml.org,2002:omap":ZKn.omap,"tag:yaml.org,2002:pairs":LKn.pairs,"tag:yaml.org,2002:set":VKn.set,"tag:yaml.org,2002:timestamp":gft.timestamp};function XQo(e,t){let r=DKn.get(t);if(!r)if(Array.isArray(e))r=[];else{let s=Array.from(DKn.keys()).filter(a=>a!=="yaml11").map(a=>JSON.stringify(a)).join(", ");throw new Error(`Unknown schema "${t}"; use one of ${s} or define customTags array`)}if(Array.isArray(e))for(let s of e)r=r.concat(s);else typeof e=="function"&&(r=e(r.slice()));return r.map(s=>{if(typeof s!="string")return s;let a=xKn[s];if(a)return a;let o=Object.keys(xKn).map(g=>JSON.stringify(g)).join(", ");throw new Error(`Unknown custom tag "${s}"; use one of ${o}`)})}zar.coreKnownTags=HQo;zar.getTags=XQo});var ecr=z(PKn=>{"use strict";var qar=Y_(),JQo=PBe(),UQo=OBe(),KQo=IMe(),Aft=WKn(),jQo=(e,t)=>e.keyt.key?1:0,$ar=class e{constructor({compat:t,customTags:r,merge:s,resolveKnownTags:a,schema:o,sortMapEntries:g,toStringDefaults:p}){this.compat=Array.isArray(t)?Aft.getTags(t,"compat"):t?Aft.getTags(null,t):null,this.merge=!!s,this.name=typeof o=="string"&&o||"core",this.knownTags=a?Aft.coreKnownTags:{},this.tags=Aft.getTags(r,this.name),this.toStringOptions=p??null,Object.defineProperty(this,qar.MAP,{value:JQo.map}),Object.defineProperty(this,qar.SCALAR,{value:KQo.string}),Object.defineProperty(this,qar.SEQ,{value:UQo.seq}),this.sortMapEntries=typeof g=="function"?g:g===!0?jQo:null}clone(){let t=Object.create(e.prototype,Object.getOwnPropertyDescriptors(this));return t.tags=this.tags.slice(),t}};PKn.Schema=$ar});var MKn=z(OKn=>{"use strict";var zQo=Y_(),tcr=dMe(),_Me=lMe();function qQo(e,t){let r=[],s=t.directives===!0;if(t.directives!==!1&&e.directives){let f=e.directives.toString(e);f?(r.push(f),s=!0):e.directives.docStart&&(s=!0)}s&&r.push("---");let a=tcr.createStringifyContext(e,t),{commentString:o}=a.options;if(e.commentBefore){r.length!==1&&r.unshift("");let f=o(e.commentBefore);r.unshift(_Me.indentComment(f,""))}let g=!1,p=null;if(e.contents){if(zQo.isNode(e.contents)){if(e.contents.spaceBefore&&s&&r.push(""),e.contents.commentBefore){let y=o(e.contents.commentBefore);r.push(_Me.indentComment(y,""))}a.forceBlockIndent=!!e.comment,p=e.contents.comment}let f=p?void 0:()=>g=!0,m=tcr.stringify(e.contents,a,()=>p=null,f);p&&(m+=_Me.lineComment(m,"",o(p))),(m[0]==="|"||m[0]===">")&&r[r.length-1]==="---"?r[r.length-1]=`--- ${m}`:r.push(m)}else r.push(tcr.stringify(e.contents,a));if(e.directives?.docEnd)if(e.comment){let f=o(e.comment);f.includes(` -`)?(r.push("..."),r.push(_Me.indentComment(f,""))):r.push(`... ${f}`)}else r.push("...");else{let f=e.comment;f&&g&&(f=f.replace(/^\n+/,"")),f&&((!g||p)&&r[r.length-1]!==""&&r.push(""),r.push(_Me.indentComment(o(f),"")))}return r.join(` +${o.comment}`:s.comment}s=a}e.items[r]=nft.isPair(s)?s:new Qar.Pair(s)}}else t("Expected a sequence for this tag");return e}function bKn(e,t,r){let{replacer:s}=r,a=new R5o.YAMLSeq(e);a.tag="tag:yaml.org,2002:pairs";let o=0;if(t&&Symbol.iterator in Object(t))for(let g of t){typeof s=="function"&&(g=s.call(t,String(o++),g));let p,f;if(Array.isArray(g))if(g.length===2)p=g[0],f=g[1];else throw new TypeError(`Expected [key, value] tuple: ${g}`);else if(g&&g instanceof Object){let m=Object.keys(g);if(m.length===1)p=m[0],f=g[p];else throw new TypeError(`Expected tuple with one key, not ${m.length} keys`)}else p=g;a.items.push(Qar.createPair(p,f,r))}return a}var D5o={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:yKn,createNode:bKn};ift.createPairs=bKn;ift.pairs=D5o;ift.resolvePairs=yKn});var Yar=z(Har=>{"use strict";var EKn=Y_(),Mar=Yie(),hQe=zie(),x5o=qie(),BKn=sft(),Epe=class e extends x5o.YAMLSeq{constructor(){super(),this.add=hQe.YAMLMap.prototype.add.bind(this),this.delete=hQe.YAMLMap.prototype.delete.bind(this),this.get=hQe.YAMLMap.prototype.get.bind(this),this.has=hQe.YAMLMap.prototype.has.bind(this),this.set=hQe.YAMLMap.prototype.set.bind(this),this.tag=e.tag}toJSON(t,r){if(!r)return super.toJSON(t);let s=new Map;r?.onCreate&&r.onCreate(s);for(let a of this.items){let o,g;if(EKn.isPair(a)?(o=Mar.toJS(a.key,"",r),g=Mar.toJS(a.value,o,r)):o=Mar.toJS(a,"",r),s.has(o))throw new Error("Ordered maps must not include duplicate keys");s.set(o,g)}return s}static from(t,r,s){let a=BKn.createPairs(t,r,s),o=new this;return o.items=a.items,o}};Epe.tag="tag:yaml.org,2002:omap";var k5o={collection:"seq",identify:e=>e instanceof Map,nodeClass:Epe,default:!1,tag:"tag:yaml.org,2002:omap",resolve(e,t){let r=BKn.resolvePairs(e,t),s=[];for(let{key:a}of r.items)EKn.isScalar(a)&&(s.includes(a.value)?t(`Ordered maps must not include duplicate keys: ${a.value}`):s.push(a.value));return Object.assign(new Epe,r)},createNode:(e,t,r)=>Epe.from(e,t,r)};Har.YAMLOMap=Epe;Har.omap=k5o});var NKn=z(Xar=>{"use strict";var vKn=Sw();function SKn({value:e,source:t},r){return t&&(e?wKn:TKn).test.test(t)?t:e?r.options.trueStr:r.options.falseStr}var wKn={identify:e=>e===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new vKn.Scalar(!0),stringify:SKn},TKn={identify:e=>e===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new vKn.Scalar(!1),stringify:SKn};Xar.falseTag=TKn;Xar.trueTag=wKn});var RKn=z(oft=>{"use strict";var G5o=Sw(),Jar=YBe(),F5o={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:e=>e.slice(-3).toLowerCase()==="nan"?NaN:e[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:Jar.stringifyNumber},Z5o={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:e=>parseFloat(e.replace(/_/g,"")),stringify(e){let t=Number(e.value);return isFinite(t)?t.toExponential():Jar.stringifyNumber(e)}},L5o={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(e){let t=new G5o.Scalar(parseFloat(e.replace(/_/g,""))),r=e.indexOf(".");if(r!==-1){let s=e.substring(r+1).replace(/_/g,"");s[s.length-1]==="0"&&(t.minFractionDigits=s.length)}return t},stringify:Jar.stringifyNumber};oft.float=L5o;oft.floatExp=Z5o;oft.floatNaN=F5o});var xKn=z(yQe=>{"use strict";var DKn=YBe(),_Qe=e=>typeof e=="bigint"||Number.isInteger(e);function aft(e,t,r,{intAsBigInt:s}){let a=e[0];if((a==="-"||a==="+")&&(t+=1),e=e.substring(t).replace(/_/g,""),s){switch(r){case 2:e=`0b${e}`;break;case 8:e=`0o${e}`;break;case 16:e=`0x${e}`;break}let g=BigInt(e);return a==="-"?BigInt(-1)*g:g}let o=parseInt(e,r);return a==="-"?-1*o:o}function Uar(e,t,r){let{value:s}=e;if(_Qe(s)){let a=s.toString(t);return s<0?"-"+r+a.substr(1):r+a}return DKn.stringifyNumber(e)}var V5o={identify:_Qe,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(e,t,r)=>aft(e,2,2,r),stringify:e=>Uar(e,2,"0b")},W5o={identify:_Qe,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(e,t,r)=>aft(e,1,8,r),stringify:e=>Uar(e,8,"0")},P5o={identify:_Qe,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(e,t,r)=>aft(e,0,10,r),stringify:DKn.stringifyNumber},O5o={identify:_Qe,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(e,t,r)=>aft(e,2,16,r),stringify:e=>Uar(e,16,"0x")};yQe.int=P5o;yQe.intBin=V5o;yQe.intHex=O5o;yQe.intOct=W5o});var jar=z(Kar=>{"use strict";var uft=Y_(),cft=Kie(),lft=zie(),Bpe=class e extends lft.YAMLMap{constructor(t){super(t),this.tag=e.tag}add(t){let r;uft.isPair(t)?r=t:t&&typeof t=="object"&&"key"in t&&"value"in t&&t.value===null?r=new cft.Pair(t.key,null):r=new cft.Pair(t,null),lft.findPair(this.items,r.key)||this.items.push(r)}get(t,r){let s=lft.findPair(this.items,t);return!r&&uft.isPair(s)?uft.isScalar(s.key)?s.key.value:s.key:s}set(t,r){if(typeof r!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof r}`);let s=lft.findPair(this.items,t);s&&!r?this.items.splice(this.items.indexOf(s),1):!s&&r&&this.items.push(new cft.Pair(t))}toJSON(t,r){return super.toJSON(t,r,Set)}toString(t,r,s){if(!t)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},t,{allNullValues:!0}),r,s);throw new Error("Set items must all have null values")}static from(t,r,s){let{replacer:a}=s,o=new this(t);if(r&&Symbol.iterator in Object(r))for(let g of r)typeof a=="function"&&(g=a.call(r,g,g)),o.items.push(cft.createPair(g,null,s));return o}};Bpe.tag="tag:yaml.org,2002:set";var Q5o={collection:"map",identify:e=>e instanceof Set,nodeClass:Bpe,default:!1,tag:"tag:yaml.org,2002:set",createNode:(e,t,r)=>Bpe.from(e,t,r),resolve(e,t){if(uft.isMap(e)){if(e.hasAllNullValues(!0))return Object.assign(new Bpe,e);t("Set items must all have null values")}else t("Expected a mapping for this tag");return e}};Kar.YAMLSet=Bpe;Kar.set=Q5o});var qar=z(gft=>{"use strict";var M5o=YBe();function zar(e,t){let r=e[0],s=r==="-"||r==="+"?e.substring(1):e,a=g=>t?BigInt(g):Number(g),o=s.replace(/_/g,"").split(":").reduce((g,p)=>g*a(60)+a(p),a(0));return r==="-"?a(-1)*o:o}function kKn(e){let{value:t}=e,r=g=>g;if(typeof t=="bigint")r=g=>BigInt(g);else if(isNaN(t)||!isFinite(t))return M5o.stringifyNumber(e);let s="";t<0&&(s="-",t*=r(-1));let a=r(60),o=[t%a];return t<60?o.unshift(0):(t=(t-o[0])/a,o.unshift(t%a),t>=60&&(t=(t-o[0])/a,o.unshift(t))),s+o.map(g=>String(g).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var H5o={identify:e=>typeof e=="bigint"||Number.isInteger(e),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(e,t,{intAsBigInt:r})=>zar(e,r),stringify:kKn},Y5o={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:e=>zar(e,!1),stringify:kKn},GKn={identify:e=>e instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve(e){let t=e.match(GKn.test);if(!t)throw new Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,r,s,a,o,g,p]=t.map(Number),f=t[7]?Number((t[7]+"00").substr(1,3)):0,m=Date.UTC(r,s-1,a,o||0,g||0,p||0,f),y=t[8];if(y&&y!=="Z"){let B=zar(y,!1);Math.abs(B)<30&&(B*=60),m-=6e4*B}return new Date(m)},stringify:({value:e})=>e.toISOString().replace(/((T00:00)?:00)?\.000Z$/,"")};gft.floatTime=Y5o;gft.intTime=H5o;gft.timestamp=GKn});var LKn=z(ZKn=>{"use strict";var X5o=MBe(),J5o=qpt(),U5o=HBe(),K5o=mQe(),j5o=Oar(),FKn=NKn(),$ar=RKn(),Aft=xKn(),z5o=Yar(),q5o=sft(),$5o=jar(),ecr=qar(),eMo=[X5o.map,U5o.seq,K5o.string,J5o.nullTag,FKn.trueTag,FKn.falseTag,Aft.intBin,Aft.intOct,Aft.int,Aft.intHex,$ar.floatNaN,$ar.floatExp,$ar.float,j5o.binary,z5o.omap,q5o.pairs,$5o.set,ecr.intTime,ecr.floatTime,ecr.timestamp];ZKn.schema=eMo});var JKn=z(ncr=>{"use strict";var OKn=MBe(),tMo=qpt(),QKn=HBe(),rMo=mQe(),nMo=kar(),tcr=Far(),rcr=Lar(),iMo=IKn(),sMo=hKn(),MKn=Oar(),HKn=Yar(),YKn=sft(),VKn=LKn(),XKn=jar(),dft=qar(),WKn=new Map([["core",iMo.schema],["failsafe",[OKn.map,QKn.seq,rMo.string]],["json",sMo.schema],["yaml11",VKn.schema],["yaml-1.1",VKn.schema]]),PKn={binary:MKn.binary,bool:nMo.boolTag,float:tcr.float,floatExp:tcr.floatExp,floatNaN:tcr.floatNaN,floatTime:dft.floatTime,int:rcr.int,intHex:rcr.intHex,intOct:rcr.intOct,intTime:dft.intTime,map:OKn.map,null:tMo.nullTag,omap:HKn.omap,pairs:YKn.pairs,seq:QKn.seq,set:XKn.set,timestamp:dft.timestamp},oMo={"tag:yaml.org,2002:binary":MKn.binary,"tag:yaml.org,2002:omap":HKn.omap,"tag:yaml.org,2002:pairs":YKn.pairs,"tag:yaml.org,2002:set":XKn.set,"tag:yaml.org,2002:timestamp":dft.timestamp};function aMo(e,t){let r=WKn.get(t);if(!r)if(Array.isArray(e))r=[];else{let s=Array.from(WKn.keys()).filter(a=>a!=="yaml11").map(a=>JSON.stringify(a)).join(", ");throw new Error(`Unknown schema "${t}"; use one of ${s} or define customTags array`)}if(Array.isArray(e))for(let s of e)r=r.concat(s);else typeof e=="function"&&(r=e(r.slice()));return r.map(s=>{if(typeof s!="string")return s;let a=PKn[s];if(a)return a;let o=Object.keys(PKn).map(g=>JSON.stringify(g)).join(", ");throw new Error(`Unknown custom tag "${s}"; use one of ${o}`)})}ncr.coreKnownTags=oMo;ncr.getTags=aMo});var ocr=z(UKn=>{"use strict";var icr=Y_(),cMo=MBe(),lMo=HBe(),uMo=mQe(),pft=JKn(),gMo=(e,t)=>e.keyt.key?1:0,scr=class e{constructor({compat:t,customTags:r,merge:s,resolveKnownTags:a,schema:o,sortMapEntries:g,toStringDefaults:p}){this.compat=Array.isArray(t)?pft.getTags(t,"compat"):t?pft.getTags(null,t):null,this.merge=!!s,this.name=typeof o=="string"&&o||"core",this.knownTags=a?pft.coreKnownTags:{},this.tags=pft.getTags(r,this.name),this.toStringOptions=p??null,Object.defineProperty(this,icr.MAP,{value:cMo.map}),Object.defineProperty(this,icr.SCALAR,{value:uMo.string}),Object.defineProperty(this,icr.SEQ,{value:lMo.seq}),this.sortMapEntries=typeof g=="function"?g:g===!0?gMo:null}clone(){let t=Object.create(e.prototype,Object.getOwnPropertyDescriptors(this));return t.tags=this.tags.slice(),t}};UKn.Schema=scr});var jKn=z(KKn=>{"use strict";var AMo=Y_(),acr=fQe(),bQe=gQe();function dMo(e,t){let r=[],s=t.directives===!0;if(t.directives!==!1&&e.directives){let f=e.directives.toString(e);f?(r.push(f),s=!0):e.directives.docStart&&(s=!0)}s&&r.push("---");let a=acr.createStringifyContext(e,t),{commentString:o}=a.options;if(e.commentBefore){r.length!==1&&r.unshift("");let f=o(e.commentBefore);r.unshift(bQe.indentComment(f,""))}let g=!1,p=null;if(e.contents){if(AMo.isNode(e.contents)){if(e.contents.spaceBefore&&s&&r.push(""),e.contents.commentBefore){let y=o(e.contents.commentBefore);r.push(bQe.indentComment(y,""))}a.forceBlockIndent=!!e.comment,p=e.contents.comment}let f=p?void 0:()=>g=!0,m=acr.stringify(e.contents,a,()=>p=null,f);p&&(m+=bQe.lineComment(m,"",o(p))),(m[0]==="|"||m[0]===">")&&r[r.length-1]==="---"?r[r.length-1]=`--- ${m}`:r.push(m)}else r.push(acr.stringify(e.contents,a));if(e.directives?.docEnd)if(e.comment){let f=o(e.comment);f.includes(` +`)?(r.push("..."),r.push(bQe.indentComment(f,""))):r.push(`... ${f}`)}else r.push("...");else{let f=e.comment;f&&g&&(f=f.replace(/^\n+/,"")),f&&((!g||p)&&r[r.length-1]!==""&&r.push(""),r.push(bQe.indentComment(o(f),"")))}return r.join(` `)+` -`}OKn.stringifyDocument=qQo});var yMe=z(QKn=>{"use strict";var $Qo=aMe(),QBe=Lpt(),gM=Y_(),eYo=Xie(),tYo=Mie(),rYo=ecr(),nYo=MKn(),rcr=xpt(),iYo=sar(),sYo=cMe(),ncr=iar(),icr=class e{constructor(t,r,s){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,gM.NODE_TYPE,{value:gM.DOC});let a=null;typeof r=="function"||Array.isArray(r)?a=r:s===void 0&&r&&(s=r,r=void 0);let o=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,uniqueKeys:!0,version:"1.2"},s);this.options=o;let{version:g}=o;s?._directives?(this.directives=s._directives.atDocument(),this.directives.yaml.explicit&&(g=this.directives.yaml.version)):this.directives=new ncr.Directives({version:g}),this.setSchema(g,s),this.contents=t===void 0?null:this.createNode(t,a,s)}clone(){let t=Object.create(e.prototype,{[gM.NODE_TYPE]:{value:gM.DOC}});return t.commentBefore=this.commentBefore,t.comment=this.comment,t.errors=this.errors.slice(),t.warnings=this.warnings.slice(),t.options=Object.assign({},this.options),this.directives&&(t.directives=this.directives.clone()),t.schema=this.schema.clone(),t.contents=gM.isNode(this.contents)?this.contents.clone(t.schema):this.contents,this.range&&(t.range=this.range.slice()),t}add(t){YBe(this.contents)&&this.contents.add(t)}addIn(t,r){YBe(this.contents)&&this.contents.addIn(t,r)}createAlias(t,r){if(!t.anchor){let s=rcr.anchorNames(this);t.anchor=!r||s.has(r)?rcr.findNewAnchor(r||"a",s):r}return new $Qo.Alias(t.anchor)}createNode(t,r,s){let a;if(typeof r=="function")t=r.call({"":t},"",t),a=r;else if(Array.isArray(r)){let X=le=>typeof le=="number"||le instanceof String||le instanceof Number,U=r.filter(X).map(String);U.length>0&&(r=r.concat(U)),a=r}else s===void 0&&r&&(s=r,r=void 0);let{aliasDuplicateObjects:o,anchorPrefix:g,flow:p,keepUndefined:f,onTagObj:m,tag:y}=s??{},{onAnchor:B,setAnchors:v,sourceObjects:G}=rcr.createNodeAnchors(this,g||"a"),T={aliasDuplicateObjects:o??!0,keepUndefined:f??!1,onAnchor:B,onTagObj:m,replacer:a,schema:this.schema,sourceObjects:G},O=sYo.createNode(t,y,T);return p&&gM.isCollection(O)&&(O.flow=!0),v(),O}createPair(t,r,s={}){let a=this.createNode(t,null,s),o=this.createNode(r,null,s);return new eYo.Pair(a,o)}delete(t){return YBe(this.contents)?this.contents.delete(t):!1}deleteIn(t){return QBe.isEmptyPath(t)?this.contents==null?!1:(this.contents=null,!0):YBe(this.contents)?this.contents.deleteIn(t):!1}get(t,r){return gM.isCollection(this.contents)?this.contents.get(t,r):void 0}getIn(t,r){return QBe.isEmptyPath(t)?!r&&gM.isScalar(this.contents)?this.contents.value:this.contents:gM.isCollection(this.contents)?this.contents.getIn(t,r):void 0}has(t){return gM.isCollection(this.contents)?this.contents.has(t):!1}hasIn(t){return QBe.isEmptyPath(t)?this.contents!==void 0:gM.isCollection(this.contents)?this.contents.hasIn(t):!1}set(t,r){this.contents==null?this.contents=QBe.collectionFromPath(this.schema,[t],r):YBe(this.contents)&&this.contents.set(t,r)}setIn(t,r){QBe.isEmptyPath(t)?this.contents=r:this.contents==null?this.contents=QBe.collectionFromPath(this.schema,Array.from(t),r):YBe(this.contents)&&this.contents.setIn(t,r)}setSchema(t,r={}){typeof t=="number"&&(t=String(t));let s;switch(t){case"1.1":this.directives?this.directives.yaml.version="1.1":this.directives=new ncr.Directives({version:"1.1"}),s={merge:!0,resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":this.directives?this.directives.yaml.version=t:this.directives=new ncr.Directives({version:t}),s={merge:!1,resolveKnownTags:!0,schema:"core"};break;case null:this.directives&&delete this.directives,s=null;break;default:{let a=JSON.stringify(t);throw new Error(`Expected '1.1', '1.2' or null as first argument, but found: ${a}`)}}if(r.schema instanceof Object)this.schema=r.schema;else if(s)this.schema=new rYo.Schema(Object.assign(s,r));else throw new Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:t,jsonArg:r,mapAsMap:s,maxAliasCount:a,onAnchor:o,reviver:g}={}){let p={anchors:new Map,doc:this,keep:!t,mapAsMap:s===!0,mapKeyWarned:!1,maxAliasCount:typeof a=="number"?a:100},f=tYo.toJS(this.contents,r??"",p);if(typeof o=="function")for(let{count:m,res:y}of p.anchors.values())o(y,m);return typeof g=="function"?iYo.applyReviver(g,{"":f},"",f):f}toJSON(t,r){return this.toJS({json:!0,jsonArg:t,mapAsMap:!1,onAnchor:r})}toString(t={}){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");if("indent"in t&&(!Number.isInteger(t.indent)||Number(t.indent)<=0)){let r=JSON.stringify(t.indent);throw new Error(`"indent" option must be a positive integer, not ${r}`)}return nYo.stringifyDocument(this,t)}};function YBe(e){if(gM.isCollection(e))return!0;throw new Error("Expected a YAML collection as document contents")}QKn.Document=icr});var BMe=z(EMe=>{"use strict";var bMe=class extends Error{constructor(t,r,s,a){super(),this.name=t,this.code=s,this.message=a,this.pos=r}},scr=class extends bMe{constructor(t,r,s){super("YAMLParseError",t,r,s)}},ocr=class extends bMe{constructor(t,r,s){super("YAMLWarning",t,r,s)}},oYo=(e,t)=>r=>{if(r.pos[0]===-1)return;r.linePos=r.pos.map(p=>t.linePos(p));let{line:s,col:a}=r.linePos[0];r.message+=` at line ${s}, column ${a}`;let o=a-1,g=e.substring(t.lineStarts[s-1],t.lineStarts[s]).replace(/[\n\r]+$/,"");if(o>=60&&g.length>80){let p=Math.min(o-39,g.length-79);g="\u2026"+g.substring(p),o-=p-1}if(g.length>80&&(g=g.substring(0,79)+"\u2026"),s>1&&/^ *$/.test(g.substring(0,o))){let p=e.substring(t.lineStarts[s-2],t.lineStarts[s-1]);p.length>80&&(p=p.substring(0,79)+`\u2026 +`}KKn.stringifyDocument=dMo});var EQe=z(zKn=>{"use strict";var pMo=lQe(),XBe=Wpt(),dQ=Y_(),fMo=Kie(),IMo=Yie(),CMo=ocr(),mMo=jKn(),ccr=Gpt(),hMo=gar(),_Mo=uQe(),lcr=uar(),ucr=class e{constructor(t,r,s){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,dQ.NODE_TYPE,{value:dQ.DOC});let a=null;typeof r=="function"||Array.isArray(r)?a=r:s===void 0&&r&&(s=r,r=void 0);let o=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,uniqueKeys:!0,version:"1.2"},s);this.options=o;let{version:g}=o;s?._directives?(this.directives=s._directives.atDocument(),this.directives.yaml.explicit&&(g=this.directives.yaml.version)):this.directives=new lcr.Directives({version:g}),this.setSchema(g,s),this.contents=t===void 0?null:this.createNode(t,a,s)}clone(){let t=Object.create(e.prototype,{[dQ.NODE_TYPE]:{value:dQ.DOC}});return t.commentBefore=this.commentBefore,t.comment=this.comment,t.errors=this.errors.slice(),t.warnings=this.warnings.slice(),t.options=Object.assign({},this.options),this.directives&&(t.directives=this.directives.clone()),t.schema=this.schema.clone(),t.contents=dQ.isNode(this.contents)?this.contents.clone(t.schema):this.contents,this.range&&(t.range=this.range.slice()),t}add(t){JBe(this.contents)&&this.contents.add(t)}addIn(t,r){JBe(this.contents)&&this.contents.addIn(t,r)}createAlias(t,r){if(!t.anchor){let s=ccr.anchorNames(this);t.anchor=!r||s.has(r)?ccr.findNewAnchor(r||"a",s):r}return new pMo.Alias(t.anchor)}createNode(t,r,s){let a;if(typeof r=="function")t=r.call({"":t},"",t),a=r;else if(Array.isArray(r)){let X=le=>typeof le=="number"||le instanceof String||le instanceof Number,U=r.filter(X).map(String);U.length>0&&(r=r.concat(U)),a=r}else s===void 0&&r&&(s=r,r=void 0);let{aliasDuplicateObjects:o,anchorPrefix:g,flow:p,keepUndefined:f,onTagObj:m,tag:y}=s??{},{onAnchor:B,setAnchors:v,sourceObjects:k}=ccr.createNodeAnchors(this,g||"a"),T={aliasDuplicateObjects:o??!0,keepUndefined:f??!1,onAnchor:B,onTagObj:m,replacer:a,schema:this.schema,sourceObjects:k},O=_Mo.createNode(t,y,T);return p&&dQ.isCollection(O)&&(O.flow=!0),v(),O}createPair(t,r,s={}){let a=this.createNode(t,null,s),o=this.createNode(r,null,s);return new fMo.Pair(a,o)}delete(t){return JBe(this.contents)?this.contents.delete(t):!1}deleteIn(t){return XBe.isEmptyPath(t)?this.contents==null?!1:(this.contents=null,!0):JBe(this.contents)?this.contents.deleteIn(t):!1}get(t,r){return dQ.isCollection(this.contents)?this.contents.get(t,r):void 0}getIn(t,r){return XBe.isEmptyPath(t)?!r&&dQ.isScalar(this.contents)?this.contents.value:this.contents:dQ.isCollection(this.contents)?this.contents.getIn(t,r):void 0}has(t){return dQ.isCollection(this.contents)?this.contents.has(t):!1}hasIn(t){return XBe.isEmptyPath(t)?this.contents!==void 0:dQ.isCollection(this.contents)?this.contents.hasIn(t):!1}set(t,r){this.contents==null?this.contents=XBe.collectionFromPath(this.schema,[t],r):JBe(this.contents)&&this.contents.set(t,r)}setIn(t,r){XBe.isEmptyPath(t)?this.contents=r:this.contents==null?this.contents=XBe.collectionFromPath(this.schema,Array.from(t),r):JBe(this.contents)&&this.contents.setIn(t,r)}setSchema(t,r={}){typeof t=="number"&&(t=String(t));let s;switch(t){case"1.1":this.directives?this.directives.yaml.version="1.1":this.directives=new lcr.Directives({version:"1.1"}),s={merge:!0,resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":this.directives?this.directives.yaml.version=t:this.directives=new lcr.Directives({version:t}),s={merge:!1,resolveKnownTags:!0,schema:"core"};break;case null:this.directives&&delete this.directives,s=null;break;default:{let a=JSON.stringify(t);throw new Error(`Expected '1.1', '1.2' or null as first argument, but found: ${a}`)}}if(r.schema instanceof Object)this.schema=r.schema;else if(s)this.schema=new CMo.Schema(Object.assign(s,r));else throw new Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:t,jsonArg:r,mapAsMap:s,maxAliasCount:a,onAnchor:o,reviver:g}={}){let p={anchors:new Map,doc:this,keep:!t,mapAsMap:s===!0,mapKeyWarned:!1,maxAliasCount:typeof a=="number"?a:100},f=IMo.toJS(this.contents,r??"",p);if(typeof o=="function")for(let{count:m,res:y}of p.anchors.values())o(y,m);return typeof g=="function"?hMo.applyReviver(g,{"":f},"",f):f}toJSON(t,r){return this.toJS({json:!0,jsonArg:t,mapAsMap:!1,onAnchor:r})}toString(t={}){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");if("indent"in t&&(!Number.isInteger(t.indent)||Number(t.indent)<=0)){let r=JSON.stringify(t.indent);throw new Error(`"indent" option must be a positive integer, not ${r}`)}return mMo.stringifyDocument(this,t)}};function JBe(e){if(dQ.isCollection(e))return!0;throw new Error("Expected a YAML collection as document contents")}zKn.Document=ucr});var SQe=z(vQe=>{"use strict";var BQe=class extends Error{constructor(t,r,s,a){super(),this.name=t,this.code=s,this.message=a,this.pos=r}},gcr=class extends BQe{constructor(t,r,s){super("YAMLParseError",t,r,s)}},Acr=class extends BQe{constructor(t,r,s){super("YAMLWarning",t,r,s)}},yMo=(e,t)=>r=>{if(r.pos[0]===-1)return;r.linePos=r.pos.map(p=>t.linePos(p));let{line:s,col:a}=r.linePos[0];r.message+=` at line ${s}, column ${a}`;let o=a-1,g=e.substring(t.lineStarts[s-1],t.lineStarts[s]).replace(/[\n\r]+$/,"");if(o>=60&&g.length>80){let p=Math.min(o-39,g.length-79);g="\u2026"+g.substring(p),o-=p-1}if(g.length>80&&(g=g.substring(0,79)+"\u2026"),s>1&&/^ *$/.test(g.substring(0,o))){let p=e.substring(t.lineStarts[s-2],t.lineStarts[s-1]);p.length>80&&(p=p.substring(0,79)+`\u2026 `),g=p+g}if(/[^ ]/.test(g)){let p=1,f=r.linePos[1];f&&f.line===s&&f.col>a&&(p=Math.max(1,Math.min(f.col-a,80-o)));let m=" ".repeat(o)+"^".repeat(p);r.message+=`: ${g} ${m} -`}};EMe.YAMLError=bMe;EMe.YAMLParseError=scr;EMe.YAMLWarning=ocr;EMe.prettifyError=oYo});var vMe=z(YKn=>{"use strict";function aYo(e,{flow:t,indicator:r,next:s,offset:a,onError:o,parentIndent:g,startOnNewline:p}){let f=!1,m=p,y=p,B="",v="",G=!1,T=!1,O=null,X=null,U=null,le=null,ae=null,ge=null,fe=null;for(let be of e)switch(T&&(be.type!=="space"&&be.type!=="newline"&&be.type!=="comma"&&o(be.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),T=!1),O&&(m&&be.type!=="comment"&&be.type!=="newline"&&o(O,"TAB_AS_INDENT","Tabs are not allowed as indentation"),O=null),be.type){case"space":!t&&(r!=="doc-start"||s?.type!=="flow-collection")&&be.source.includes(" ")&&(O=be),y=!0;break;case"comment":{y||o(be,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let Te=be.source.substring(1)||" ";B?B+=v+Te:B=Te,v="",m=!1;break}case"newline":m?B?B+=be.source:f=!0:v+=be.source,m=!0,G=!0,(X||U)&&(le=be),y=!0;break;case"anchor":X&&o(be,"MULTIPLE_ANCHORS","A node can have at most one anchor"),be.source.endsWith(":")&&o(be.offset+be.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0),X=be,fe===null&&(fe=be.offset),m=!1,y=!1,T=!0;break;case"tag":{U&&o(be,"MULTIPLE_TAGS","A node can have at most one tag"),U=be,fe===null&&(fe=be.offset),m=!1,y=!1,T=!0;break}case r:(X||U)&&o(be,"BAD_PROP_ORDER",`Anchors and tags must be after the ${be.source} indicator`),ge&&o(be,"UNEXPECTED_TOKEN",`Unexpected ${be.source} in ${t??"collection"}`),ge=be,m=r==="seq-item-ind"||r==="explicit-key-ind",y=!1;break;case"comma":if(t){ae&&o(be,"UNEXPECTED_TOKEN",`Unexpected , in ${t}`),ae=be,m=!1,y=!1;break}default:o(be,"UNEXPECTED_TOKEN",`Unexpected ${be.type} token`),m=!1,y=!1}let pe=e[e.length-1],he=pe?pe.offset+pe.source.length:a;return T&&s&&s.type!=="space"&&s.type!=="newline"&&s.type!=="comma"&&(s.type!=="scalar"||s.source!=="")&&o(s.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),O&&(m&&O.indent<=g||s?.type==="block-map"||s?.type==="block-seq")&&o(O,"TAB_AS_INDENT","Tabs are not allowed as indentation"),{comma:ae,found:ge,spaceBefore:f,comment:B,hasNewline:G,anchor:X,tag:U,newlineAfterProp:le,end:he,start:fe??he}}YKn.resolveProps=aYo});var dft=z(HKn=>{"use strict";function acr(e){if(!e)return null;switch(e.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(e.source.includes(` -`))return!0;if(e.end){for(let t of e.end)if(t.type==="newline")return!0}return!1;case"flow-collection":for(let t of e.items){for(let r of t.start)if(r.type==="newline")return!0;if(t.sep){for(let r of t.sep)if(r.type==="newline")return!0}if(acr(t.key)||acr(t.value))return!0}return!1;default:return!0}}HKn.containsNewline=acr});var ccr=z(XKn=>{"use strict";var cYo=dft();function lYo(e,t,r){if(t?.type==="flow-collection"){let s=t.end[0];s.indent===e&&(s.source==="]"||s.source==="}")&&cYo.containsNewline(t)&&r(s,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}XKn.flowIndentCheck=lYo});var lcr=z(UKn=>{"use strict";var JKn=Y_();function uYo(e,t,r){let{uniqueKeys:s}=e.options;if(s===!1)return!1;let a=typeof s=="function"?s:(o,g)=>o===g||JKn.isScalar(o)&&JKn.isScalar(g)&&o.value===g.value&&!(o.value==="<<"&&e.schema.merge);return t.some(o=>a(o.key,r))}UKn.mapIncludes=uYo});var e8n=z($Kn=>{"use strict";var KKn=Xie(),gYo=Uie(),jKn=vMe(),AYo=dft(),zKn=ccr(),dYo=lcr(),qKn="All mapping items must start at the same column";function pYo({composeNode:e,composeEmptyNode:t},r,s,a,o){let g=o?.nodeClass??gYo.YAMLMap,p=new g(r.schema);r.atRoot&&(r.atRoot=!1);let f=s.offset,m=null;for(let y of s.items){let{start:B,key:v,sep:G,value:T}=y,O=jKn.resolveProps(B,{indicator:"explicit-key-ind",next:v??G?.[0],offset:f,onError:a,parentIndent:s.indent,startOnNewline:!0}),X=!O.found;if(X){if(v&&(v.type==="block-seq"?a(f,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key"):"indent"in v&&v.indent!==s.indent&&a(f,"BAD_INDENT",qKn)),!O.anchor&&!O.tag&&!G){m=O.end,O.comment&&(p.comment?p.comment+=` -`+O.comment:p.comment=O.comment);continue}(O.newlineAfterProp||AYo.containsNewline(v))&&a(v??B[B.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else O.found?.indent!==s.indent&&a(f,"BAD_INDENT",qKn);let U=O.end,le=v?e(r,v,O,a):t(r,U,B,null,O,a);r.schema.compat&&zKn.flowIndentCheck(s.indent,v,a),dYo.mapIncludes(r,p.items,le)&&a(U,"DUPLICATE_KEY","Map keys must be unique");let ae=jKn.resolveProps(G??[],{indicator:"map-value-ind",next:T,offset:le.range[2],onError:a,parentIndent:s.indent,startOnNewline:!v||v.type==="block-scalar"});if(f=ae.end,ae.found){X&&(T?.type==="block-map"&&!ae.hasNewline&&a(f,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings"),r.options.strict&&O.start{"use strict";var fYo=Kie(),IYo=vMe(),CYo=ccr();function mYo({composeNode:e,composeEmptyNode:t},r,s,a,o){let g=o?.nodeClass??fYo.YAMLSeq,p=new g(r.schema);r.atRoot&&(r.atRoot=!1);let f=s.offset,m=null;for(let{start:y,value:B}of s.items){let v=IYo.resolveProps(y,{indicator:"seq-item-ind",next:B,offset:f,onError:a,parentIndent:s.indent,startOnNewline:!0});if(!v.found)if(v.anchor||v.tag||B)B&&B.type==="block-seq"?a(v.end,"BAD_INDENT","All sequence items must start at the same column"):a(f,"MISSING_CHAR","Sequence item without - indicator");else{m=v.end,v.comment&&(p.comment=v.comment);continue}let G=B?e(r,B,v,a):t(r,v.end,y,null,v,a);r.schema.compat&&CYo.flowIndentCheck(s.indent,B,a),f=G.range[2],p.items.push(G)}return p.range=[s.offset,f,m??f],p}t8n.resolveBlockSeq=mYo});var HBe=z(n8n=>{"use strict";function hYo(e,t,r,s){let a="";if(e){let o=!1,g="";for(let p of e){let{source:f,type:m}=p;switch(m){case"space":o=!0;break;case"comment":{r&&!o&&s(p,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let y=f.substring(1)||" ";a?a+=g+y:a=y,g="";break}case"newline":a&&(g+=f),o=!0;break;default:s(p,"UNEXPECTED_TOKEN",`Unexpected ${m} at node end`)}t+=f.length}}return{comment:a,offset:t}}n8n.resolveEnd=hYo});var a8n=z(o8n=>{"use strict";var _Yo=Y_(),yYo=Xie(),i8n=Uie(),bYo=Kie(),EYo=HBe(),s8n=vMe(),BYo=dft(),vYo=lcr(),ucr="Block collections are not allowed within flow collections",gcr=e=>e&&(e.type==="block-map"||e.type==="block-seq");function SYo({composeNode:e,composeEmptyNode:t},r,s,a,o){let g=s.start.source==="{",p=g?"flow map":"flow sequence",f=o?.nodeClass??(g?i8n.YAMLMap:bYo.YAMLSeq),m=new f(r.schema);m.flow=!0;let y=r.atRoot;y&&(r.atRoot=!1);let B=s.offset+s.start.source.length;for(let X=0;X0){let X=EYo.resolveEnd(T,O,r.options.strict,a);X.comment&&(m.comment?m.comment+=` -`+X.comment:m.comment=X.comment),m.range=[s.offset,O,X.offset]}else m.range=[s.offset,O,O];return m}o8n.resolveFlowCollection=SYo});var l8n=z(c8n=>{"use strict";var wYo=Y_(),TYo=vw(),NYo=Uie(),RYo=Kie(),DYo=e8n(),xYo=r8n(),kYo=a8n();function Acr(e,t,r,s,a,o){let g=r.type==="block-map"?DYo.resolveBlockMap(e,t,r,s,o):r.type==="block-seq"?xYo.resolveBlockSeq(e,t,r,s,o):kYo.resolveFlowCollection(e,t,r,s,o),p=g.constructor;return a==="!"||a===p.tagName?(g.tag=p.tagName,g):(a&&(g.tag=a),g)}function GYo(e,t,r,s,a){let o=s.tag,g=o?t.directives.tagName(o.source,v=>a(o,"TAG_RESOLVE_FAILED",v)):null;if(r.type==="block-seq"){let{anchor:v,newlineAfterProp:G}=s,T=v&&o?v.offset>o.offset?v:o:v??o;T&&(!G||G.offsetv.tag===g&&v.collection===p);if(!f){let v=t.schema.knownTags[g];if(v&&v.collection===p)t.schema.tags.push(Object.assign({},v,{default:!1})),f=v;else return v?.collection?a(o,"BAD_COLLECTION_TYPE",`${v.tag} used for ${p} collection, but expects ${v.collection}`,!0):a(o,"TAG_RESOLVE_FAILED",`Unresolved tag: ${g}`,!0),Acr(e,t,r,a,g)}let m=Acr(e,t,r,a,g,f),y=f.resolve?.(m,v=>a(o,"TAG_RESOLVE_FAILED",v),t.options)??m,B=wYo.isNode(y)?y:new TYo.Scalar(y);return B.range=m.range,B.tag=g,f?.format&&(B.format=f.format),B}c8n.composeCollection=GYo});var pcr=z(u8n=>{"use strict";var dcr=vw();function FYo(e,t,r){let s=t.offset,a=ZYo(t,e.options.strict,r);if(!a)return{value:"",type:null,comment:"",range:[s,s,s]};let o=a.mode===">"?dcr.Scalar.BLOCK_FOLDED:dcr.Scalar.BLOCK_LITERAL,g=t.source?LYo(t.source):[],p=g.length;for(let O=g.length-1;O>=0;--O){let X=g[O][1];if(X===""||X==="\r")p=O;else break}if(p===0){let O=a.chomp==="+"&&g.length>0?` -`.repeat(Math.max(1,g.length-1)):"",X=s+a.length;return t.source&&(X+=t.source.length),{value:O,type:o,comment:a.comment,range:[s,X,X]}}let f=t.indent+a.indent,m=t.offset+a.length,y=0;for(let O=0;Of&&(f=X.length);else{X.length=p;--O)g[O][0].length>f&&(p=O+1);let B="",v="",G=!1;for(let O=0;O{"use strict";function bMo(e,{flow:t,indicator:r,next:s,offset:a,onError:o,parentIndent:g,startOnNewline:p}){let f=!1,m=p,y=p,B="",v="",k=!1,T=!1,O=null,X=null,U=null,le=null,ae=null,ge=null,fe=null;for(let be of e)switch(T&&(be.type!=="space"&&be.type!=="newline"&&be.type!=="comma"&&o(be.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),T=!1),O&&(m&&be.type!=="comment"&&be.type!=="newline"&&o(O,"TAB_AS_INDENT","Tabs are not allowed as indentation"),O=null),be.type){case"space":!t&&(r!=="doc-start"||s?.type!=="flow-collection")&&be.source.includes(" ")&&(O=be),y=!0;break;case"comment":{y||o(be,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let Te=be.source.substring(1)||" ";B?B+=v+Te:B=Te,v="",m=!1;break}case"newline":m?B?B+=be.source:f=!0:v+=be.source,m=!0,k=!0,(X||U)&&(le=be),y=!0;break;case"anchor":X&&o(be,"MULTIPLE_ANCHORS","A node can have at most one anchor"),be.source.endsWith(":")&&o(be.offset+be.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0),X=be,fe===null&&(fe=be.offset),m=!1,y=!1,T=!0;break;case"tag":{U&&o(be,"MULTIPLE_TAGS","A node can have at most one tag"),U=be,fe===null&&(fe=be.offset),m=!1,y=!1,T=!0;break}case r:(X||U)&&o(be,"BAD_PROP_ORDER",`Anchors and tags must be after the ${be.source} indicator`),ge&&o(be,"UNEXPECTED_TOKEN",`Unexpected ${be.source} in ${t??"collection"}`),ge=be,m=r==="seq-item-ind"||r==="explicit-key-ind",y=!1;break;case"comma":if(t){ae&&o(be,"UNEXPECTED_TOKEN",`Unexpected , in ${t}`),ae=be,m=!1,y=!1;break}default:o(be,"UNEXPECTED_TOKEN",`Unexpected ${be.type} token`),m=!1,y=!1}let pe=e[e.length-1],he=pe?pe.offset+pe.source.length:a;return T&&s&&s.type!=="space"&&s.type!=="newline"&&s.type!=="comma"&&(s.type!=="scalar"||s.source!=="")&&o(s.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),O&&(m&&O.indent<=g||s?.type==="block-map"||s?.type==="block-seq")&&o(O,"TAB_AS_INDENT","Tabs are not allowed as indentation"),{comma:ae,found:ge,spaceBefore:f,comment:B,hasNewline:k,anchor:X,tag:U,newlineAfterProp:le,end:he,start:fe??he}}qKn.resolveProps=bMo});var fft=z($Kn=>{"use strict";function dcr(e){if(!e)return null;switch(e.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(e.source.includes(` +`))return!0;if(e.end){for(let t of e.end)if(t.type==="newline")return!0}return!1;case"flow-collection":for(let t of e.items){for(let r of t.start)if(r.type==="newline")return!0;if(t.sep){for(let r of t.sep)if(r.type==="newline")return!0}if(dcr(t.key)||dcr(t.value))return!0}return!1;default:return!0}}$Kn.containsNewline=dcr});var pcr=z(e8n=>{"use strict";var EMo=fft();function BMo(e,t,r){if(t?.type==="flow-collection"){let s=t.end[0];s.indent===e&&(s.source==="]"||s.source==="}")&&EMo.containsNewline(t)&&r(s,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}e8n.flowIndentCheck=BMo});var fcr=z(r8n=>{"use strict";var t8n=Y_();function vMo(e,t,r){let{uniqueKeys:s}=e.options;if(s===!1)return!1;let a=typeof s=="function"?s:(o,g)=>o===g||t8n.isScalar(o)&&t8n.isScalar(g)&&o.value===g.value&&!(o.value==="<<"&&e.schema.merge);return t.some(o=>a(o.key,r))}r8n.mapIncludes=vMo});var c8n=z(a8n=>{"use strict";var n8n=Kie(),SMo=zie(),i8n=wQe(),wMo=fft(),s8n=pcr(),TMo=fcr(),o8n="All mapping items must start at the same column";function NMo({composeNode:e,composeEmptyNode:t},r,s,a,o){let g=o?.nodeClass??SMo.YAMLMap,p=new g(r.schema);r.atRoot&&(r.atRoot=!1);let f=s.offset,m=null;for(let y of s.items){let{start:B,key:v,sep:k,value:T}=y,O=i8n.resolveProps(B,{indicator:"explicit-key-ind",next:v??k?.[0],offset:f,onError:a,parentIndent:s.indent,startOnNewline:!0}),X=!O.found;if(X){if(v&&(v.type==="block-seq"?a(f,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key"):"indent"in v&&v.indent!==s.indent&&a(f,"BAD_INDENT",o8n)),!O.anchor&&!O.tag&&!k){m=O.end,O.comment&&(p.comment?p.comment+=` +`+O.comment:p.comment=O.comment);continue}(O.newlineAfterProp||wMo.containsNewline(v))&&a(v??B[B.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else O.found?.indent!==s.indent&&a(f,"BAD_INDENT",o8n);let U=O.end,le=v?e(r,v,O,a):t(r,U,B,null,O,a);r.schema.compat&&s8n.flowIndentCheck(s.indent,v,a),TMo.mapIncludes(r,p.items,le)&&a(U,"DUPLICATE_KEY","Map keys must be unique");let ae=i8n.resolveProps(k??[],{indicator:"map-value-ind",next:T,offset:le.range[2],onError:a,parentIndent:s.indent,startOnNewline:!v||v.type==="block-scalar"});if(f=ae.end,ae.found){X&&(T?.type==="block-map"&&!ae.hasNewline&&a(f,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings"),r.options.strict&&O.start{"use strict";var RMo=qie(),DMo=wQe(),xMo=pcr();function kMo({composeNode:e,composeEmptyNode:t},r,s,a,o){let g=o?.nodeClass??RMo.YAMLSeq,p=new g(r.schema);r.atRoot&&(r.atRoot=!1);let f=s.offset,m=null;for(let{start:y,value:B}of s.items){let v=DMo.resolveProps(y,{indicator:"seq-item-ind",next:B,offset:f,onError:a,parentIndent:s.indent,startOnNewline:!0});if(!v.found)if(v.anchor||v.tag||B)B&&B.type==="block-seq"?a(v.end,"BAD_INDENT","All sequence items must start at the same column"):a(f,"MISSING_CHAR","Sequence item without - indicator");else{m=v.end,v.comment&&(p.comment=v.comment);continue}let k=B?e(r,B,v,a):t(r,v.end,y,null,v,a);r.schema.compat&&xMo.flowIndentCheck(s.indent,B,a),f=k.range[2],p.items.push(k)}return p.range=[s.offset,f,m??f],p}l8n.resolveBlockSeq=kMo});var UBe=z(g8n=>{"use strict";function GMo(e,t,r,s){let a="";if(e){let o=!1,g="";for(let p of e){let{source:f,type:m}=p;switch(m){case"space":o=!0;break;case"comment":{r&&!o&&s(p,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let y=f.substring(1)||" ";a?a+=g+y:a=y,g="";break}case"newline":a&&(g+=f),o=!0;break;default:s(p,"UNEXPECTED_TOKEN",`Unexpected ${m} at node end`)}t+=f.length}}return{comment:a,offset:t}}g8n.resolveEnd=GMo});var f8n=z(p8n=>{"use strict";var FMo=Y_(),ZMo=Kie(),A8n=zie(),LMo=qie(),VMo=UBe(),d8n=wQe(),WMo=fft(),PMo=fcr(),Icr="Block collections are not allowed within flow collections",Ccr=e=>e&&(e.type==="block-map"||e.type==="block-seq");function OMo({composeNode:e,composeEmptyNode:t},r,s,a,o){let g=s.start.source==="{",p=g?"flow map":"flow sequence",f=o?.nodeClass??(g?A8n.YAMLMap:LMo.YAMLSeq),m=new f(r.schema);m.flow=!0;let y=r.atRoot;y&&(r.atRoot=!1);let B=s.offset+s.start.source.length;for(let X=0;X0){let X=VMo.resolveEnd(T,O,r.options.strict,a);X.comment&&(m.comment?m.comment+=` +`+X.comment:m.comment=X.comment),m.range=[s.offset,O,X.offset]}else m.range=[s.offset,O,O];return m}p8n.resolveFlowCollection=OMo});var C8n=z(I8n=>{"use strict";var QMo=Y_(),MMo=Sw(),HMo=zie(),YMo=qie(),XMo=c8n(),JMo=u8n(),UMo=f8n();function mcr(e,t,r,s,a,o){let g=r.type==="block-map"?XMo.resolveBlockMap(e,t,r,s,o):r.type==="block-seq"?JMo.resolveBlockSeq(e,t,r,s,o):UMo.resolveFlowCollection(e,t,r,s,o),p=g.constructor;return a==="!"||a===p.tagName?(g.tag=p.tagName,g):(a&&(g.tag=a),g)}function KMo(e,t,r,s,a){let o=s.tag,g=o?t.directives.tagName(o.source,v=>a(o,"TAG_RESOLVE_FAILED",v)):null;if(r.type==="block-seq"){let{anchor:v,newlineAfterProp:k}=s,T=v&&o?v.offset>o.offset?v:o:v??o;T&&(!k||k.offsetv.tag===g&&v.collection===p);if(!f){let v=t.schema.knownTags[g];if(v&&v.collection===p)t.schema.tags.push(Object.assign({},v,{default:!1})),f=v;else return v?.collection?a(o,"BAD_COLLECTION_TYPE",`${v.tag} used for ${p} collection, but expects ${v.collection}`,!0):a(o,"TAG_RESOLVE_FAILED",`Unresolved tag: ${g}`,!0),mcr(e,t,r,a,g)}let m=mcr(e,t,r,a,g,f),y=f.resolve?.(m,v=>a(o,"TAG_RESOLVE_FAILED",v),t.options)??m,B=QMo.isNode(y)?y:new MMo.Scalar(y);return B.range=m.range,B.tag=g,f?.format&&(B.format=f.format),B}I8n.composeCollection=KMo});var _cr=z(m8n=>{"use strict";var hcr=Sw();function jMo(e,t,r){let s=t.offset,a=zMo(t,e.options.strict,r);if(!a)return{value:"",type:null,comment:"",range:[s,s,s]};let o=a.mode===">"?hcr.Scalar.BLOCK_FOLDED:hcr.Scalar.BLOCK_LITERAL,g=t.source?qMo(t.source):[],p=g.length;for(let O=g.length-1;O>=0;--O){let X=g[O][1];if(X===""||X==="\r")p=O;else break}if(p===0){let O=a.chomp==="+"&&g.length>0?` +`.repeat(Math.max(1,g.length-1)):"",X=s+a.length;return t.source&&(X+=t.source.length),{value:O,type:o,comment:a.comment,range:[s,X,X]}}let f=t.indent+a.indent,m=t.offset+a.length,y=0;for(let O=0;Of&&(f=X.length);else{X.length=p;--O)g[O][0].length>f&&(p=O+1);let B="",v="",k=!1;for(let O=0;Of||U[0]===" "?(v===" "?v=` -`:!G&&v===` +`:!k&&v===` `&&(v=` `),B+=v+X.slice(f)+U,v=` -`,G=!0):U===""?v===` +`,k=!0):U===""?v===` `?B+=` `:v=` -`:(B+=v+U,v=" ",G=!1)}switch(a.chomp){case"-":break;case"+":for(let O=p;O{"use strict";var fcr=vw(),VYo=HBe();function WYo(e,t,r){let{offset:s,type:a,source:o,end:g}=e,p,f,m=(v,G,T)=>r(s+v,G,T);switch(a){case"scalar":p=fcr.Scalar.PLAIN,f=PYo(o,m);break;case"single-quoted-scalar":p=fcr.Scalar.QUOTE_SINGLE,f=OYo(o,m);break;case"double-quoted-scalar":p=fcr.Scalar.QUOTE_DOUBLE,f=MYo(o,m);break;default:return r(e,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${a}`),{value:"",type:null,comment:"",range:[s,s+o.length,s+o.length]}}let y=s+o.length,B=VYo.resolveEnd(g,y,t,r);return{value:f,type:p,comment:B.comment,range:[s,y,B.offset]}}function PYo(e,t){let r="";switch(e[0]){case" ":r="a tab character";break;case",":r="flow indicator character ,";break;case"%":r="directive indicator character %";break;case"|":case">":{r=`block scalar indicator ${e[0]}`;break}case"@":case"`":{r=`reserved character ${e[0]}`;break}}return r&&t(0,"BAD_SCALAR_START",`Plain value cannot start with ${r}`),g8n(e)}function OYo(e,t){return(e[e.length-1]!=="'"||e.length===1)&&t(e.length,"MISSING_CHAR","Missing closing 'quote"),g8n(e.slice(1,-1)).replace(/''/g,"'")}function g8n(e){let t,r;try{t=new RegExp(`(.*?)(?{"use strict";var ycr=Sw(),$Mo=UBe();function eHo(e,t,r){let{offset:s,type:a,source:o,end:g}=e,p,f,m=(v,k,T)=>r(s+v,k,T);switch(a){case"scalar":p=ycr.Scalar.PLAIN,f=tHo(o,m);break;case"single-quoted-scalar":p=ycr.Scalar.QUOTE_SINGLE,f=rHo(o,m);break;case"double-quoted-scalar":p=ycr.Scalar.QUOTE_DOUBLE,f=nHo(o,m);break;default:return r(e,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${a}`),{value:"",type:null,comment:"",range:[s,s+o.length,s+o.length]}}let y=s+o.length,B=$Mo.resolveEnd(g,y,t,r);return{value:f,type:p,comment:B.comment,range:[s,y,B.offset]}}function tHo(e,t){let r="";switch(e[0]){case" ":r="a tab character";break;case",":r="flow indicator character ,";break;case"%":r="directive indicator character %";break;case"|":case">":{r=`block scalar indicator ${e[0]}`;break}case"@":case"`":{r=`reserved character ${e[0]}`;break}}return r&&t(0,"BAD_SCALAR_START",`Plain value cannot start with ${r}`),h8n(e)}function rHo(e,t){return(e[e.length-1]!=="'"||e.length===1)&&t(e.length,"MISSING_CHAR","Missing closing 'quote"),h8n(e.slice(1,-1)).replace(/''/g,"'")}function h8n(e){let t,r;try{t=new RegExp(`(.*?)(?o?e.slice(o,s+1):a)}else r+=a}return(e[e.length-1]!=='"'||e.length===1)&&t(e.length,"MISSING_CHAR",'Missing closing "quote'),r}function QYo(e,t){let r="",s=e[t+1];for(;(s===" "||s===" "||s===` +`)&&(r+=s>o?e.slice(o,s+1):a)}else r+=a}return(e[e.length-1]!=='"'||e.length===1)&&t(e.length,"MISSING_CHAR",'Missing closing "quote'),r}function iHo(e,t){let r="",s=e[t+1];for(;(s===" "||s===" "||s===` `||s==="\r")&&!(s==="\r"&&e[t+2]!==` `);)s===` `&&(r+=` -`),t+=1,s=e[t+1];return r||(r=" "),{fold:r,offset:t}}var YYo={0:"\0",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:` -`,r:"\r",t:" ",v:"\v",N:"\x85",_:"\xA0",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\"," ":" "};function HYo(e,t,r,s){let a=e.substr(t,r),g=a.length===r&&/^[0-9a-fA-F]+$/.test(a)?parseInt(a,16):NaN;if(isNaN(g)){let p=e.substr(t-2,r+2);return s(t-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${p}`),p}return String.fromCodePoint(g)}A8n.resolveFlowScalar=WYo});var f8n=z(p8n=>{"use strict";var XBe=Y_(),d8n=vw(),XYo=pcr(),JYo=Icr();function UYo(e,t,r,s){let{value:a,type:o,comment:g,range:p}=t.type==="block-scalar"?XYo.resolveBlockScalar(e,t,s):JYo.resolveFlowScalar(t,e.options.strict,s),f=r?e.directives.tagName(r.source,B=>s(r,"TAG_RESOLVE_FAILED",B)):null,m=r&&f?KYo(e.schema,a,f,r,s):t.type==="scalar"?jYo(e,a,t,s):e.schema[XBe.SCALAR],y;try{let B=m.resolve(a,v=>s(r??t,"TAG_RESOLVE_FAILED",v),e.options);y=XBe.isScalar(B)?B:new d8n.Scalar(B)}catch(B){let v=B instanceof Error?B.message:String(B);s(r??t,"TAG_RESOLVE_FAILED",v),y=new d8n.Scalar(a)}return y.range=p,y.source=a,o&&(y.type=o),f&&(y.tag=f),m.format&&(y.format=m.format),g&&(y.comment=g),y}function KYo(e,t,r,s,a){if(r==="!")return e[XBe.SCALAR];let o=[];for(let p of e.tags)if(!p.collection&&p.tag===r)if(p.default&&p.test)o.push(p);else return p;for(let p of o)if(p.test?.test(t))return p;let g=e.knownTags[r];return g&&!g.collection?(e.tags.push(Object.assign({},g,{default:!1,test:void 0})),g):(a(s,"TAG_RESOLVE_FAILED",`Unresolved tag: ${r}`,r!=="tag:yaml.org,2002:str"),e[XBe.SCALAR])}function jYo({directives:e,schema:t},r,s,a){let o=t.tags.find(g=>g.default&&g.test?.test(r))||t[XBe.SCALAR];if(t.compat){let g=t.compat.find(p=>p.default&&p.test?.test(r))??t[XBe.SCALAR];if(o.tag!==g.tag){let p=e.tagString(o.tag),f=e.tagString(g.tag),m=`Value may be parsed as either ${p} or ${f}`;a(s,"TAG_RESOLVE_FAILED",m,!0)}}return o}p8n.composeScalar=UYo});var C8n=z(I8n=>{"use strict";function zYo(e,t,r){if(t){r===null&&(r=t.length);for(let s=r-1;s>=0;--s){let a=t[s];switch(a.type){case"space":case"comment":case"newline":e-=a.source.length;continue}for(a=t[++s];a?.type==="space";)e+=a.source.length,a=t[++s];break}}return e}I8n.emptyScalarPosition=zYo});var _8n=z(mcr=>{"use strict";var qYo=aMe(),$Yo=l8n(),m8n=f8n(),eHo=HBe(),tHo=C8n(),rHo={composeNode:h8n,composeEmptyNode:Ccr};function h8n(e,t,r,s){let{spaceBefore:a,comment:o,anchor:g,tag:p}=r,f,m=!0;switch(t.type){case"alias":f=nHo(e,t,s),(g||p)&&s(t,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":f=m8n.composeScalar(e,t,p,s),g&&(f.anchor=g.source.substring(1));break;case"block-map":case"block-seq":case"flow-collection":f=$Yo.composeCollection(rHo,e,t,r,s),g&&(f.anchor=g.source.substring(1));break;default:{let y=t.type==="error"?t.message:`Unsupported token (type: ${t.type})`;s(t,"UNEXPECTED_TOKEN",y),f=Ccr(e,t.offset,void 0,null,r,s),m=!1}}return g&&f.anchor===""&&s(g,"BAD_ALIAS","Anchor cannot be an empty string"),a&&(f.spaceBefore=!0),o&&(t.type==="scalar"&&t.source===""?f.comment=o:f.commentBefore=o),e.options.keepSourceTokens&&m&&(f.srcToken=t),f}function Ccr(e,t,r,s,{spaceBefore:a,comment:o,anchor:g,tag:p,end:f},m){let y={type:"scalar",offset:tHo.emptyScalarPosition(t,r,s),indent:-1,source:""},B=m8n.composeScalar(e,y,p,m);return g&&(B.anchor=g.source.substring(1),B.anchor===""&&m(g,"BAD_ALIAS","Anchor cannot be an empty string")),a&&(B.spaceBefore=!0),o&&(B.comment=o,B.range[2]=f),B}function nHo({options:e},{offset:t,source:r,end:s},a){let o=new qYo.Alias(r.substring(1));o.source===""&&a(t,"BAD_ALIAS","Alias cannot be an empty string"),o.source.endsWith(":")&&a(t+r.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let g=t+r.length,p=eHo.resolveEnd(s,g,e.strict,a);return o.range=[t,g,p.offset],p.comment&&(o.comment=p.comment),o}mcr.composeEmptyNode=Ccr;mcr.composeNode=h8n});var E8n=z(b8n=>{"use strict";var iHo=yMe(),y8n=_8n(),sHo=HBe(),oHo=vMe();function aHo(e,t,{offset:r,start:s,value:a,end:o},g){let p=Object.assign({_directives:t},e),f=new iHo.Document(void 0,p),m={atRoot:!0,directives:f.directives,options:f.options,schema:f.schema},y=oHo.resolveProps(s,{indicator:"doc-start",next:a??o?.[0],offset:r,onError:g,parentIndent:0,startOnNewline:!0});y.found&&(f.directives.docStart=!0,a&&(a.type==="block-map"||a.type==="block-seq")&&!y.hasNewline&&g(y.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")),f.contents=a?y8n.composeNode(m,a,y,g):y8n.composeEmptyNode(m,y.end,s,null,y,g);let B=f.contents.range[2],v=sHo.resolveEnd(o,B,!1,g);return v.comment&&(f.comment=v.comment),f.range=[r,B,v.offset],f}b8n.composeDoc=aHo});var _cr=z(S8n=>{"use strict";var cHo=iar(),lHo=yMe(),SMe=BMe(),B8n=Y_(),uHo=E8n(),gHo=HBe();function wMe(e){if(typeof e=="number")return[e,e+1];if(Array.isArray(e))return e.length===2?e:[e[0],e[1]];let{offset:t,source:r}=e;return[t,t+(typeof r=="string"?r.length:1)]}function v8n(e){let t="",r=!1,s=!1;for(let a=0;a{"use strict";var KBe=Y_(),y8n=Sw(),aHo=_cr(),cHo=bcr();function lHo(e,t,r,s){let{value:a,type:o,comment:g,range:p}=t.type==="block-scalar"?aHo.resolveBlockScalar(e,t,s):cHo.resolveFlowScalar(t,e.options.strict,s),f=r?e.directives.tagName(r.source,B=>s(r,"TAG_RESOLVE_FAILED",B)):null,m=r&&f?uHo(e.schema,a,f,r,s):t.type==="scalar"?gHo(e,a,t,s):e.schema[KBe.SCALAR],y;try{let B=m.resolve(a,v=>s(r??t,"TAG_RESOLVE_FAILED",v),e.options);y=KBe.isScalar(B)?B:new y8n.Scalar(B)}catch(B){let v=B instanceof Error?B.message:String(B);s(r??t,"TAG_RESOLVE_FAILED",v),y=new y8n.Scalar(a)}return y.range=p,y.source=a,o&&(y.type=o),f&&(y.tag=f),m.format&&(y.format=m.format),g&&(y.comment=g),y}function uHo(e,t,r,s,a){if(r==="!")return e[KBe.SCALAR];let o=[];for(let p of e.tags)if(!p.collection&&p.tag===r)if(p.default&&p.test)o.push(p);else return p;for(let p of o)if(p.test?.test(t))return p;let g=e.knownTags[r];return g&&!g.collection?(e.tags.push(Object.assign({},g,{default:!1,test:void 0})),g):(a(s,"TAG_RESOLVE_FAILED",`Unresolved tag: ${r}`,r!=="tag:yaml.org,2002:str"),e[KBe.SCALAR])}function gHo({directives:e,schema:t},r,s,a){let o=t.tags.find(g=>g.default&&g.test?.test(r))||t[KBe.SCALAR];if(t.compat){let g=t.compat.find(p=>p.default&&p.test?.test(r))??t[KBe.SCALAR];if(o.tag!==g.tag){let p=e.tagString(o.tag),f=e.tagString(g.tag),m=`Value may be parsed as either ${p} or ${f}`;a(s,"TAG_RESOLVE_FAILED",m,!0)}}return o}b8n.composeScalar=lHo});var v8n=z(B8n=>{"use strict";function AHo(e,t,r){if(t){r===null&&(r=t.length);for(let s=r-1;s>=0;--s){let a=t[s];switch(a.type){case"space":case"comment":case"newline":e-=a.source.length;continue}for(a=t[++s];a?.type==="space";)e+=a.source.length,a=t[++s];break}}return e}B8n.emptyScalarPosition=AHo});var T8n=z(Bcr=>{"use strict";var dHo=lQe(),pHo=C8n(),S8n=E8n(),fHo=UBe(),IHo=v8n(),CHo={composeNode:w8n,composeEmptyNode:Ecr};function w8n(e,t,r,s){let{spaceBefore:a,comment:o,anchor:g,tag:p}=r,f,m=!0;switch(t.type){case"alias":f=mHo(e,t,s),(g||p)&&s(t,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":f=S8n.composeScalar(e,t,p,s),g&&(f.anchor=g.source.substring(1));break;case"block-map":case"block-seq":case"flow-collection":f=pHo.composeCollection(CHo,e,t,r,s),g&&(f.anchor=g.source.substring(1));break;default:{let y=t.type==="error"?t.message:`Unsupported token (type: ${t.type})`;s(t,"UNEXPECTED_TOKEN",y),f=Ecr(e,t.offset,void 0,null,r,s),m=!1}}return g&&f.anchor===""&&s(g,"BAD_ALIAS","Anchor cannot be an empty string"),a&&(f.spaceBefore=!0),o&&(t.type==="scalar"&&t.source===""?f.comment=o:f.commentBefore=o),e.options.keepSourceTokens&&m&&(f.srcToken=t),f}function Ecr(e,t,r,s,{spaceBefore:a,comment:o,anchor:g,tag:p,end:f},m){let y={type:"scalar",offset:IHo.emptyScalarPosition(t,r,s),indent:-1,source:""},B=S8n.composeScalar(e,y,p,m);return g&&(B.anchor=g.source.substring(1),B.anchor===""&&m(g,"BAD_ALIAS","Anchor cannot be an empty string")),a&&(B.spaceBefore=!0),o&&(B.comment=o,B.range[2]=f),B}function mHo({options:e},{offset:t,source:r,end:s},a){let o=new dHo.Alias(r.substring(1));o.source===""&&a(t,"BAD_ALIAS","Alias cannot be an empty string"),o.source.endsWith(":")&&a(t+r.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let g=t+r.length,p=fHo.resolveEnd(s,g,e.strict,a);return o.range=[t,g,p.offset],p.comment&&(o.comment=p.comment),o}Bcr.composeEmptyNode=Ecr;Bcr.composeNode=w8n});var D8n=z(R8n=>{"use strict";var hHo=EQe(),N8n=T8n(),_Ho=UBe(),yHo=wQe();function bHo(e,t,{offset:r,start:s,value:a,end:o},g){let p=Object.assign({_directives:t},e),f=new hHo.Document(void 0,p),m={atRoot:!0,directives:f.directives,options:f.options,schema:f.schema},y=yHo.resolveProps(s,{indicator:"doc-start",next:a??o?.[0],offset:r,onError:g,parentIndent:0,startOnNewline:!0});y.found&&(f.directives.docStart=!0,a&&(a.type==="block-map"||a.type==="block-seq")&&!y.hasNewline&&g(y.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")),f.contents=a?N8n.composeNode(m,a,y,g):N8n.composeEmptyNode(m,y.end,s,null,y,g);let B=f.contents.range[2],v=_Ho.resolveEnd(o,B,!1,g);return v.comment&&(f.comment=v.comment),f.range=[r,B,v.offset],f}R8n.composeDoc=bHo});var Scr=z(G8n=>{"use strict";var EHo=uar(),BHo=EQe(),TQe=SQe(),x8n=Y_(),vHo=D8n(),SHo=UBe();function NQe(e){if(typeof e=="number")return[e,e+1];if(Array.isArray(e))return e.length===2?e:[e[0],e[1]];let{offset:t,source:r}=e;return[t,t+(typeof r=="string"?r.length:1)]}function k8n(e){let t="",r=!1,s=!1;for(let a=0;a{let g=wMe(r);o?this.warnings.push(new SMe.YAMLWarning(g,s,a)):this.errors.push(new SMe.YAMLParseError(g,s,a))},this.directives=new cHo.Directives({version:t.version||"1.2"}),this.options=t}decorate(t,r){let{comment:s,afterEmptyLine:a}=v8n(this.prelude);if(s){let o=t.contents;if(r)t.comment=t.comment?`${t.comment} -${s}`:s;else if(a||t.directives.docStart||!o)t.commentBefore=s;else if(B8n.isCollection(o)&&!o.flow&&o.items.length>0){let g=o.items[0];B8n.isPair(g)&&(g=g.key);let p=g.commentBefore;g.commentBefore=p?`${s} +`)+(o.substring(1)||" "),r=!0,s=!1;break;case"%":e[a+1]?.[0]!=="#"&&(a+=1),r=!1;break;default:r||(s=!0),r=!1}}return{comment:t,afterEmptyLine:s}}var vcr=class{constructor(t={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(r,s,a,o)=>{let g=NQe(r);o?this.warnings.push(new TQe.YAMLWarning(g,s,a)):this.errors.push(new TQe.YAMLParseError(g,s,a))},this.directives=new EHo.Directives({version:t.version||"1.2"}),this.options=t}decorate(t,r){let{comment:s,afterEmptyLine:a}=k8n(this.prelude);if(s){let o=t.contents;if(r)t.comment=t.comment?`${t.comment} +${s}`:s;else if(a||t.directives.docStart||!o)t.commentBefore=s;else if(x8n.isCollection(o)&&!o.flow&&o.items.length>0){let g=o.items[0];x8n.isPair(g)&&(g=g.key);let p=g.commentBefore;g.commentBefore=p?`${s} ${p}`:s}else{let g=o.commentBefore;o.commentBefore=g?`${s} -${g}`:s}}r?(Array.prototype.push.apply(t.errors,this.errors),Array.prototype.push.apply(t.warnings,this.warnings)):(t.errors=this.errors,t.warnings=this.warnings),this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:v8n(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(t,r=!1,s=-1){for(let a of t)yield*this.next(a);yield*this.end(r,s)}*next(t){switch(process.env.LOG_STREAM&&console.dir(t,{depth:null}),t.type){case"directive":this.directives.add(t.source,(r,s,a)=>{let o=wMe(t);o[0]+=r,this.onError(o,"BAD_DIRECTIVE",s,a)}),this.prelude.push(t.source),this.atDirectives=!0;break;case"document":{let r=uHo.composeDoc(this.options,this.directives,t,this.onError);this.atDirectives&&!r.directives.docStart&&this.onError(t,"MISSING_CHAR","Missing directives-end/doc-start indicator line"),this.decorate(r,!1),this.doc&&(yield this.doc),this.doc=r,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(t.source);break;case"error":{let r=t.source?`${t.message}: ${JSON.stringify(t.source)}`:t.message,s=new SMe.YAMLParseError(wMe(t),"UNEXPECTED_TOKEN",r);this.atDirectives||!this.doc?this.errors.push(s):this.doc.errors.push(s);break}case"doc-end":{if(!this.doc){let s="Unexpected doc-end without preceding document";this.errors.push(new SMe.YAMLParseError(wMe(t),"UNEXPECTED_TOKEN",s));break}this.doc.directives.docEnd=!0;let r=gHo.resolveEnd(t.end,t.offset+t.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),r.comment){let s=this.doc.comment;this.doc.comment=s?`${s} -${r.comment}`:r.comment}this.doc.range[2]=r.offset;break}default:this.errors.push(new SMe.YAMLParseError(wMe(t),"UNEXPECTED_TOKEN",`Unsupported token ${t.type}`))}}*end(t=!1,r=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(t){let s=Object.assign({_directives:this.directives},this.options),a=new lHo.Document(void 0,s);this.atDirectives&&this.onError(r,"MISSING_CHAR","Missing directives-end indicator line"),a.range=[0,r,r],this.decorate(a,!1),yield a}}};S8n.Composer=hcr});var N8n=z(pft=>{"use strict";var AHo=pcr(),dHo=Icr(),pHo=BMe(),w8n=AMe();function fHo(e,t=!0,r){if(e){let s=(a,o,g)=>{let p=typeof a=="number"?a:Array.isArray(a)?a[0]:a.offset;if(r)r(p,o,g);else throw new pHo.YAMLParseError([p,p+1],o,g)};switch(e.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return dHo.resolveFlowScalar(e,t,s);case"block-scalar":return AHo.resolveBlockScalar({options:{strict:t}},e,s)}}return null}function IHo(e,t){let{implicitKey:r=!1,indent:s,inFlow:a=!1,offset:o=-1,type:g="PLAIN"}=t,p=w8n.stringifyString({type:g,value:e},{implicitKey:r,indent:s>0?" ".repeat(s):"",inFlow:a,options:{blockQuote:!0,lineWidth:-1}}),f=t.end??[{type:"newline",offset:-1,indent:s,source:` +${g}`:s}}r?(Array.prototype.push.apply(t.errors,this.errors),Array.prototype.push.apply(t.warnings,this.warnings)):(t.errors=this.errors,t.warnings=this.warnings),this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:k8n(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(t,r=!1,s=-1){for(let a of t)yield*this.next(a);yield*this.end(r,s)}*next(t){switch(process.env.LOG_STREAM&&console.dir(t,{depth:null}),t.type){case"directive":this.directives.add(t.source,(r,s,a)=>{let o=NQe(t);o[0]+=r,this.onError(o,"BAD_DIRECTIVE",s,a)}),this.prelude.push(t.source),this.atDirectives=!0;break;case"document":{let r=vHo.composeDoc(this.options,this.directives,t,this.onError);this.atDirectives&&!r.directives.docStart&&this.onError(t,"MISSING_CHAR","Missing directives-end/doc-start indicator line"),this.decorate(r,!1),this.doc&&(yield this.doc),this.doc=r,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(t.source);break;case"error":{let r=t.source?`${t.message}: ${JSON.stringify(t.source)}`:t.message,s=new TQe.YAMLParseError(NQe(t),"UNEXPECTED_TOKEN",r);this.atDirectives||!this.doc?this.errors.push(s):this.doc.errors.push(s);break}case"doc-end":{if(!this.doc){let s="Unexpected doc-end without preceding document";this.errors.push(new TQe.YAMLParseError(NQe(t),"UNEXPECTED_TOKEN",s));break}this.doc.directives.docEnd=!0;let r=SHo.resolveEnd(t.end,t.offset+t.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),r.comment){let s=this.doc.comment;this.doc.comment=s?`${s} +${r.comment}`:r.comment}this.doc.range[2]=r.offset;break}default:this.errors.push(new TQe.YAMLParseError(NQe(t),"UNEXPECTED_TOKEN",`Unsupported token ${t.type}`))}}*end(t=!1,r=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(t){let s=Object.assign({_directives:this.directives},this.options),a=new BHo.Document(void 0,s);this.atDirectives&&this.onError(r,"MISSING_CHAR","Missing directives-end indicator line"),a.range=[0,r,r],this.decorate(a,!1),yield a}}};G8n.Composer=vcr});var L8n=z(Ift=>{"use strict";var wHo=_cr(),THo=bcr(),NHo=SQe(),F8n=pQe();function RHo(e,t=!0,r){if(e){let s=(a,o,g)=>{let p=typeof a=="number"?a:Array.isArray(a)?a[0]:a.offset;if(r)r(p,o,g);else throw new NHo.YAMLParseError([p,p+1],o,g)};switch(e.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return THo.resolveFlowScalar(e,t,s);case"block-scalar":return wHo.resolveBlockScalar({options:{strict:t}},e,s)}}return null}function DHo(e,t){let{implicitKey:r=!1,indent:s,inFlow:a=!1,offset:o=-1,type:g="PLAIN"}=t,p=F8n.stringifyString({type:g,value:e},{implicitKey:r,indent:s>0?" ".repeat(s):"",inFlow:a,options:{blockQuote:!0,lineWidth:-1}}),f=t.end??[{type:"newline",offset:-1,indent:s,source:` `}];switch(p[0]){case"|":case">":{let m=p.indexOf(` `),y=p.substring(0,m),B=p.substring(m+1)+` -`,v=[{type:"block-scalar-header",offset:o,indent:s,source:y}];return T8n(v,f)||v.push({type:"newline",offset:-1,indent:s,source:` -`}),{type:"block-scalar",offset:o,indent:s,props:v,source:B}}case'"':return{type:"double-quoted-scalar",offset:o,indent:s,source:p,end:f};case"'":return{type:"single-quoted-scalar",offset:o,indent:s,source:p,end:f};default:return{type:"scalar",offset:o,indent:s,source:p,end:f}}}function CHo(e,t,r={}){let{afterKey:s=!1,implicitKey:a=!1,inFlow:o=!1,type:g}=r,p="indent"in e?e.indent:null;if(s&&typeof p=="number"&&(p+=2),!g)switch(e.type){case"single-quoted-scalar":g="QUOTE_SINGLE";break;case"double-quoted-scalar":g="QUOTE_DOUBLE";break;case"block-scalar":{let m=e.props[0];if(m.type!=="block-scalar-header")throw new Error("Invalid block scalar header");g=m.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:g="PLAIN"}let f=w8n.stringifyString({type:g,value:t},{implicitKey:a||p===null,indent:p!==null&&p>0?" ".repeat(p):"",inFlow:o,options:{blockQuote:!0,lineWidth:-1}});switch(f[0]){case"|":case">":mHo(e,f);break;case'"':ycr(e,f,"double-quoted-scalar");break;case"'":ycr(e,f,"single-quoted-scalar");break;default:ycr(e,f,"scalar")}}function mHo(e,t){let r=t.indexOf(` +`,v=[{type:"block-scalar-header",offset:o,indent:s,source:y}];return Z8n(v,f)||v.push({type:"newline",offset:-1,indent:s,source:` +`}),{type:"block-scalar",offset:o,indent:s,props:v,source:B}}case'"':return{type:"double-quoted-scalar",offset:o,indent:s,source:p,end:f};case"'":return{type:"single-quoted-scalar",offset:o,indent:s,source:p,end:f};default:return{type:"scalar",offset:o,indent:s,source:p,end:f}}}function xHo(e,t,r={}){let{afterKey:s=!1,implicitKey:a=!1,inFlow:o=!1,type:g}=r,p="indent"in e?e.indent:null;if(s&&typeof p=="number"&&(p+=2),!g)switch(e.type){case"single-quoted-scalar":g="QUOTE_SINGLE";break;case"double-quoted-scalar":g="QUOTE_DOUBLE";break;case"block-scalar":{let m=e.props[0];if(m.type!=="block-scalar-header")throw new Error("Invalid block scalar header");g=m.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:g="PLAIN"}let f=F8n.stringifyString({type:g,value:t},{implicitKey:a||p===null,indent:p!==null&&p>0?" ".repeat(p):"",inFlow:o,options:{blockQuote:!0,lineWidth:-1}});switch(f[0]){case"|":case">":kHo(e,f);break;case'"':wcr(e,f,"double-quoted-scalar");break;case"'":wcr(e,f,"single-quoted-scalar");break;default:wcr(e,f,"scalar")}}function kHo(e,t){let r=t.indexOf(` `),s=t.substring(0,r),a=t.substring(r+1)+` -`;if(e.type==="block-scalar"){let o=e.props[0];if(o.type!=="block-scalar-header")throw new Error("Invalid block scalar header");o.source=s,e.source=a}else{let{offset:o}=e,g="indent"in e?e.indent:-1,p=[{type:"block-scalar-header",offset:o,indent:g,source:s}];T8n(p,"end"in e?e.end:void 0)||p.push({type:"newline",offset:-1,indent:g,source:` -`});for(let f of Object.keys(e))f!=="type"&&f!=="offset"&&delete e[f];Object.assign(e,{type:"block-scalar",indent:g,props:p,source:a})}}function T8n(e,t){if(t)for(let r of t)switch(r.type){case"space":case"comment":e.push(r);break;case"newline":return e.push(r),!0}return!1}function ycr(e,t,r){switch(e.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":e.type=r,e.source=t;break;case"block-scalar":{let s=e.props.slice(1),a=t.length;e.props[0].type==="block-scalar-header"&&(a-=e.props[0].source.length);for(let o of s)o.offset+=a;delete e.props,Object.assign(e,{type:r,source:t,end:s});break}case"block-map":case"block-seq":{let a={type:"newline",offset:e.offset+t.length,indent:e.indent,source:` -`};delete e.items,Object.assign(e,{type:r,source:t,end:[a]});break}default:{let s="indent"in e?e.indent:-1,a="end"in e&&Array.isArray(e.end)?e.end.filter(o=>o.type==="space"||o.type==="comment"||o.type==="newline"):[];for(let o of Object.keys(e))o!=="type"&&o!=="offset"&&delete e[o];Object.assign(e,{type:r,indent:s,source:t,end:a})}}}pft.createScalarToken=IHo;pft.resolveAsScalar=fHo;pft.setScalarValue=CHo});var D8n=z(R8n=>{"use strict";var hHo=e=>"type"in e?Ift(e):fft(e);function Ift(e){switch(e.type){case"block-scalar":{let t="";for(let r of e.props)t+=Ift(r);return t+e.source}case"block-map":case"block-seq":{let t="";for(let r of e.items)t+=fft(r);return t}case"flow-collection":{let t=e.start.source;for(let r of e.items)t+=fft(r);for(let r of e.end)t+=r.source;return t}case"document":{let t=fft(e);if(e.end)for(let r of e.end)t+=r.source;return t}default:{let t=e.source;if("end"in e&&e.end)for(let r of e.end)t+=r.source;return t}}}function fft({start:e,key:t,sep:r,value:s}){let a="";for(let o of e)a+=o.source;if(t&&(a+=Ift(t)),r)for(let o of r)a+=o.source;return s&&(a+=Ift(s)),a}R8n.stringify=hHo});var F8n=z(G8n=>{"use strict";var bcr=Symbol("break visit"),_Ho=Symbol("skip children"),x8n=Symbol("remove item");function Cpe(e,t){"type"in e&&e.type==="document"&&(e={start:e.start,value:e.value}),k8n(Object.freeze([]),e,t)}Cpe.BREAK=bcr;Cpe.SKIP=_Ho;Cpe.REMOVE=x8n;Cpe.itemAtPath=(e,t)=>{let r=e;for(let[s,a]of t){let o=r?.[s];if(o&&"items"in o)r=o.items[a];else return}return r};Cpe.parentCollection=(e,t)=>{let r=Cpe.itemAtPath(e,t.slice(0,-1)),s=t[t.length-1][0],a=r?.[s];if(a&&"items"in a)return a;throw new Error("Parent collection not found")};function k8n(e,t,r){let s=r(t,e);if(typeof s=="symbol")return s;for(let a of["key","value"]){let o=t[a];if(o&&"items"in o){for(let g=0;g{"use strict";var Ecr=N8n(),yHo=D8n(),bHo=F8n(),Bcr="\uFEFF",vcr="",Scr="",wcr="",EHo=e=>!!e&&"items"in e,BHo=e=>!!e&&(e.type==="scalar"||e.type==="single-quoted-scalar"||e.type==="double-quoted-scalar"||e.type==="block-scalar");function vHo(e){switch(e){case Bcr:return"";case vcr:return"";case Scr:return"";case wcr:return"";default:return JSON.stringify(e)}}function SHo(e){switch(e){case Bcr:return"byte-order-mark";case vcr:return"doc-mode";case Scr:return"flow-error-end";case wcr:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case` +`;if(e.type==="block-scalar"){let o=e.props[0];if(o.type!=="block-scalar-header")throw new Error("Invalid block scalar header");o.source=s,e.source=a}else{let{offset:o}=e,g="indent"in e?e.indent:-1,p=[{type:"block-scalar-header",offset:o,indent:g,source:s}];Z8n(p,"end"in e?e.end:void 0)||p.push({type:"newline",offset:-1,indent:g,source:` +`});for(let f of Object.keys(e))f!=="type"&&f!=="offset"&&delete e[f];Object.assign(e,{type:"block-scalar",indent:g,props:p,source:a})}}function Z8n(e,t){if(t)for(let r of t)switch(r.type){case"space":case"comment":e.push(r);break;case"newline":return e.push(r),!0}return!1}function wcr(e,t,r){switch(e.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":e.type=r,e.source=t;break;case"block-scalar":{let s=e.props.slice(1),a=t.length;e.props[0].type==="block-scalar-header"&&(a-=e.props[0].source.length);for(let o of s)o.offset+=a;delete e.props,Object.assign(e,{type:r,source:t,end:s});break}case"block-map":case"block-seq":{let a={type:"newline",offset:e.offset+t.length,indent:e.indent,source:` +`};delete e.items,Object.assign(e,{type:r,source:t,end:[a]});break}default:{let s="indent"in e?e.indent:-1,a="end"in e&&Array.isArray(e.end)?e.end.filter(o=>o.type==="space"||o.type==="comment"||o.type==="newline"):[];for(let o of Object.keys(e))o!=="type"&&o!=="offset"&&delete e[o];Object.assign(e,{type:r,indent:s,source:t,end:a})}}}Ift.createScalarToken=DHo;Ift.resolveAsScalar=RHo;Ift.setScalarValue=xHo});var W8n=z(V8n=>{"use strict";var GHo=e=>"type"in e?mft(e):Cft(e);function mft(e){switch(e.type){case"block-scalar":{let t="";for(let r of e.props)t+=mft(r);return t+e.source}case"block-map":case"block-seq":{let t="";for(let r of e.items)t+=Cft(r);return t}case"flow-collection":{let t=e.start.source;for(let r of e.items)t+=Cft(r);for(let r of e.end)t+=r.source;return t}case"document":{let t=Cft(e);if(e.end)for(let r of e.end)t+=r.source;return t}default:{let t=e.source;if("end"in e&&e.end)for(let r of e.end)t+=r.source;return t}}}function Cft({start:e,key:t,sep:r,value:s}){let a="";for(let o of e)a+=o.source;if(t&&(a+=mft(t)),r)for(let o of r)a+=o.source;return s&&(a+=mft(s)),a}V8n.stringify=GHo});var M8n=z(Q8n=>{"use strict";var Tcr=Symbol("break visit"),FHo=Symbol("skip children"),P8n=Symbol("remove item");function vpe(e,t){"type"in e&&e.type==="document"&&(e={start:e.start,value:e.value}),O8n(Object.freeze([]),e,t)}vpe.BREAK=Tcr;vpe.SKIP=FHo;vpe.REMOVE=P8n;vpe.itemAtPath=(e,t)=>{let r=e;for(let[s,a]of t){let o=r?.[s];if(o&&"items"in o)r=o.items[a];else return}return r};vpe.parentCollection=(e,t)=>{let r=vpe.itemAtPath(e,t.slice(0,-1)),s=t[t.length-1][0],a=r?.[s];if(a&&"items"in a)return a;throw new Error("Parent collection not found")};function O8n(e,t,r){let s=r(t,e);if(typeof s=="symbol")return s;for(let a of["key","value"]){let o=t[a];if(o&&"items"in o){for(let g=0;g{"use strict";var Ncr=L8n(),ZHo=W8n(),LHo=M8n(),Rcr="\uFEFF",Dcr="",xcr="",kcr="",VHo=e=>!!e&&"items"in e,WHo=e=>!!e&&(e.type==="scalar"||e.type==="single-quoted-scalar"||e.type==="double-quoted-scalar"||e.type==="block-scalar");function PHo(e){switch(e){case Rcr:return"";case Dcr:return"";case xcr:return"";case kcr:return"";default:return JSON.stringify(e)}}function OHo(e){switch(e){case Rcr:return"byte-order-mark";case Dcr:return"doc-mode";case xcr:return"flow-error-end";case kcr:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case` `:case`\r -`:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(e[0]){case" ":case" ":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}zL.createScalarToken=Ecr.createScalarToken;zL.resolveAsScalar=Ecr.resolveAsScalar;zL.setScalarValue=Ecr.setScalarValue;zL.stringify=yHo.stringify;zL.visit=bHo.visit;zL.BOM=Bcr;zL.DOCUMENT=vcr;zL.FLOW_END=Scr;zL.SCALAR=wcr;zL.isCollection=EHo;zL.isScalar=BHo;zL.prettyToken=vHo;zL.tokenType=SHo});var Rcr=z(L8n=>{"use strict";var TMe=Cft();function r5(e){switch(e){case void 0:case" ":case` -`:case"\r":case" ":return!0;default:return!1}}var Z8n=new Set("0123456789ABCDEFabcdef"),wHo=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),mft=new Set(",[]{}"),THo=new Set(` ,[]{} -\r `),Tcr=e=>!e||THo.has(e),Ncr=class{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(t,r=!1){if(t){if(typeof t!="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+t:t,this.lineEndPos=null}this.atEnd=!r;let s=this.next??"stream";for(;s&&(r||this.hasChars(1));)s=yield*this.parseNext(s)}atLineEnd(){let t=this.pos,r=this.buffer[t];for(;r===" "||r===" ";)r=this.buffer[++t];return!r||r==="#"||r===` +`:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(e[0]){case" ":case" ":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}qL.createScalarToken=Ncr.createScalarToken;qL.resolveAsScalar=Ncr.resolveAsScalar;qL.setScalarValue=Ncr.setScalarValue;qL.stringify=ZHo.stringify;qL.visit=LHo.visit;qL.BOM=Rcr;qL.DOCUMENT=Dcr;qL.FLOW_END=xcr;qL.SCALAR=kcr;qL.isCollection=VHo;qL.isScalar=WHo;qL.prettyToken=PHo;qL.tokenType=OHo});var Zcr=z(Y8n=>{"use strict";var RQe=hft();function iY(e){switch(e){case void 0:case" ":case` +`:case"\r":case" ":return!0;default:return!1}}var H8n=new Set("0123456789ABCDEFabcdef"),QHo=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),_ft=new Set(",[]{}"),MHo=new Set(` ,[]{} +\r `),Gcr=e=>!e||MHo.has(e),Fcr=class{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(t,r=!1){if(t){if(typeof t!="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+t:t,this.lineEndPos=null}this.atEnd=!r;let s=this.next??"stream";for(;s&&(r||this.hasChars(1));)s=yield*this.parseNext(s)}atLineEnd(){let t=this.pos,r=this.buffer[t];for(;r===" "||r===" ";)r=this.buffer[++t];return!r||r==="#"||r===` `?!0:r==="\r"?this.buffer[t+1]===` `:!1}charAt(t){return this.buffer[this.pos+t]}continueScalar(t){let r=this.buffer[t];if(this.indentNext>0){let s=0;for(;r===" ";)r=this.buffer[++s+t];if(r==="\r"){let a=this.buffer[s+t+1];if(a===` `||!a&&!this.atEnd)return t+s+1}return r===` -`||s>=this.indentNext||!r&&!this.atEnd?t+s:-1}if(r==="-"||r==="."){let s=this.buffer.substr(t,3);if((s==="---"||s==="...")&&r5(this.buffer[t+3]))return-1}return t}getLine(){let t=this.lineEndPos;return(typeof t!="number"||t!==-1&&tthis.indentValue&&!r5(this.charAt(1))&&(this.indentNext=this.indentValue),yield*this.parseBlockStart()}*parseBlockStart(){let[t,r]=this.peek(2);if(!r&&!this.atEnd)return this.setNext("block-start");if((t==="-"||t==="?"||t===":")&&r5(r)){let s=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=s,yield*this.parseBlockStart()}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);let t=this.getLine();if(t===null)return this.setNext("doc");let r=yield*this.pushIndicators();switch(t[r]){case"#":yield*this.pushCount(t.length-r);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(Tcr),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return r+=yield*this.parseBlockScalarHeader(),r+=yield*this.pushSpaces(!0),yield*this.pushCount(t.length-r),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let t,r,s=-1;do t=yield*this.pushNewline(),t>0?(r=yield*this.pushSpaces(!1),this.indentValue=s=r):r=0,r+=yield*this.pushSpaces(!0);while(t+r>0);let a=this.getLine();if(a===null)return this.setNext("flow");if((s!==-1&&s=this.indentNext||!r&&!this.atEnd?t+s:-1}if(r==="-"||r==="."){let s=this.buffer.substr(t,3);if((s==="---"||s==="...")&&iY(this.buffer[t+3]))return-1}return t}getLine(){let t=this.lineEndPos;return(typeof t!="number"||t!==-1&&tthis.indentValue&&!iY(this.charAt(1))&&(this.indentNext=this.indentValue),yield*this.parseBlockStart()}*parseBlockStart(){let[t,r]=this.peek(2);if(!r&&!this.atEnd)return this.setNext("block-start");if((t==="-"||t==="?"||t===":")&&iY(r)){let s=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=s,yield*this.parseBlockStart()}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);let t=this.getLine();if(t===null)return this.setNext("doc");let r=yield*this.pushIndicators();switch(t[r]){case"#":yield*this.pushCount(t.length-r);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(Gcr),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return r+=yield*this.parseBlockScalarHeader(),r+=yield*this.pushSpaces(!0),yield*this.pushCount(t.length-r),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let t,r,s=-1;do t=yield*this.pushNewline(),t>0?(r=yield*this.pushSpaces(!1),this.indentValue=s=r):r=0,r+=yield*this.pushSpaces(!0);while(t+r>0);let a=this.getLine();if(a===null)return this.setNext("flow");if((s!==-1&&s"0"&&r<="9")this.blockScalarIndent=Number(r)-1;else if(r!=="-")break}return yield*this.pushUntil(r=>r5(r)||r==="#")}*parseBlockScalar(){let t=this.pos-1,r=0,s;e:for(let o=this.pos;s=this.buffer[o];++o)switch(s){case" ":r+=1;break;case` +`,o)}a!==-1&&(r=a-(s[a-1]==="\r"?2:1))}if(r===-1){if(!this.atEnd)return this.setNext("quoted-scalar");r=this.buffer.length}return yield*this.pushToIndex(r+1,!1),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let t=this.pos;for(;;){let r=this.buffer[++t];if(r==="+")this.blockScalarKeep=!0;else if(r>"0"&&r<="9")this.blockScalarIndent=Number(r)-1;else if(r!=="-")break}return yield*this.pushUntil(r=>iY(r)||r==="#")}*parseBlockScalar(){let t=this.pos-1,r=0,s;e:for(let o=this.pos;s=this.buffer[o];++o)switch(s){case" ":r+=1;break;case` `:t=o,r=0;break;case"\r":{let g=this.buffer[o+1];if(!g&&!this.atEnd)return this.setNext("block-scalar");if(g===` `)break}default:break e}if(!s&&!this.atEnd)return this.setNext("block-scalar");if(r>=this.indentNext){this.blockScalarIndent===-1?this.indentNext=r:this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{let o=this.continueScalar(t+1);if(o===-1)break;t=this.buffer.indexOf(` `,o)}while(t!==-1);if(t===-1){if(!this.atEnd)return this.setNext("block-scalar");t=this.buffer.length}}let a=t+1;for(s=this.buffer[a];s===" ";)s=this.buffer[++a];if(s===" "){for(;s===" "||s===" "||s==="\r"||s===` `;)s=this.buffer[++a];t=a-1}else if(!this.blockScalarKeep)do{let o=t-1,g=this.buffer[o];g==="\r"&&(g=this.buffer[--o]);let p=o;for(;g===" ";)g=this.buffer[--o];if(g===` -`&&o>=this.pos&&o+1+r>p)t=o;else break}while(!0);return yield TMe.SCALAR,yield*this.pushToIndex(t+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){let t=this.flowLevel>0,r=this.pos-1,s=this.pos-1,a;for(;a=this.buffer[++s];)if(a===":"){let o=this.buffer[s+1];if(r5(o)||t&&mft.has(o))break;r=s}else if(r5(a)){let o=this.buffer[s+1];if(a==="\r"&&(o===` +`&&o>=this.pos&&o+1+r>p)t=o;else break}while(!0);return yield RQe.SCALAR,yield*this.pushToIndex(t+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){let t=this.flowLevel>0,r=this.pos-1,s=this.pos-1,a;for(;a=this.buffer[++s];)if(a===":"){let o=this.buffer[s+1];if(iY(o)||t&&_ft.has(o))break;r=s}else if(iY(a)){let o=this.buffer[s+1];if(a==="\r"&&(o===` `?(s+=1,a=` -`,o=this.buffer[s+1]):r=s),o==="#"||t&&mft.has(o))break;if(a===` -`){let g=this.continueScalar(s+1);if(g===-1)break;s=Math.max(s,g-2)}}else{if(t&&mft.has(a))break;r=s}return!a&&!this.atEnd?this.setNext("plain-scalar"):(yield TMe.SCALAR,yield*this.pushToIndex(r+1,!0),t?"flow":"doc")}*pushCount(t){return t>0?(yield this.buffer.substr(this.pos,t),this.pos+=t,t):0}*pushToIndex(t,r){let s=this.buffer.slice(this.pos,t);return s?(yield s,this.pos+=s.length,s.length):(r&&(yield""),0)}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*this.pushTag())+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"&":return(yield*this.pushUntil(Tcr))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{let t=this.flowLevel>0,r=this.charAt(1);if(r5(r)||t&&mft.has(r))return t?this.flowKey&&(this.flowKey=!1):this.indentNext=this.indentValue+1,(yield*this.pushCount(1))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators())}}return 0}*pushTag(){if(this.charAt(1)==="<"){let t=this.pos+2,r=this.buffer[t];for(;!r5(r)&&r!==">";)r=this.buffer[++t];return yield*this.pushToIndex(r===">"?t+1:t,!1)}else{let t=this.pos+1,r=this.buffer[t];for(;r;)if(wHo.has(r))r=this.buffer[++t];else if(r==="%"&&Z8n.has(this.buffer[t+1])&&Z8n.has(this.buffer[t+2]))r=this.buffer[t+=3];else break;return yield*this.pushToIndex(t,!1)}}*pushNewline(){let t=this.buffer[this.pos];return t===` +`,o=this.buffer[s+1]):r=s),o==="#"||t&&_ft.has(o))break;if(a===` +`){let g=this.continueScalar(s+1);if(g===-1)break;s=Math.max(s,g-2)}}else{if(t&&_ft.has(a))break;r=s}return!a&&!this.atEnd?this.setNext("plain-scalar"):(yield RQe.SCALAR,yield*this.pushToIndex(r+1,!0),t?"flow":"doc")}*pushCount(t){return t>0?(yield this.buffer.substr(this.pos,t),this.pos+=t,t):0}*pushToIndex(t,r){let s=this.buffer.slice(this.pos,t);return s?(yield s,this.pos+=s.length,s.length):(r&&(yield""),0)}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*this.pushTag())+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"&":return(yield*this.pushUntil(Gcr))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{let t=this.flowLevel>0,r=this.charAt(1);if(iY(r)||t&&_ft.has(r))return t?this.flowKey&&(this.flowKey=!1):this.indentNext=this.indentValue+1,(yield*this.pushCount(1))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators())}}return 0}*pushTag(){if(this.charAt(1)==="<"){let t=this.pos+2,r=this.buffer[t];for(;!iY(r)&&r!==">";)r=this.buffer[++t];return yield*this.pushToIndex(r===">"?t+1:t,!1)}else{let t=this.pos+1,r=this.buffer[t];for(;r;)if(QHo.has(r))r=this.buffer[++t];else if(r==="%"&&H8n.has(this.buffer[t+1])&&H8n.has(this.buffer[t+2]))r=this.buffer[t+=3];else break;return yield*this.pushToIndex(t,!1)}}*pushNewline(){let t=this.buffer[this.pos];return t===` `?yield*this.pushCount(1):t==="\r"&&this.charAt(1)===` -`?yield*this.pushCount(2):0}*pushSpaces(t){let r=this.pos-1,s;do s=this.buffer[++r];while(s===" "||t&&s===" ");let a=r-this.pos;return a>0&&(yield this.buffer.substr(this.pos,a),this.pos=r),a}*pushUntil(t){let r=this.pos,s=this.buffer[r];for(;!t(s);)s=this.buffer[++r];return yield*this.pushToIndex(r,!1)}};L8n.Lexer=Ncr});var xcr=z(V8n=>{"use strict";var Dcr=class{constructor(){this.lineStarts=[],this.addNewLine=t=>this.lineStarts.push(t),this.linePos=t=>{let r=0,s=this.lineStarts.length;for(;r>1;this.lineStarts[o]{"use strict";var W8n=Cft(),NHo=Rcr();function mpe(e,t){for(let r=0;r=0;)switch(e[t].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break e}for(;e[++t]?.type==="space";);return e.splice(t,e.length)}function O8n(e){if(e.start.type==="flow-seq-start")for(let t of e.items)t.sep&&!t.value&&!mpe(t.start,"explicit-key-ind")&&!mpe(t.sep,"map-value-ind")&&(t.key&&(t.value=t.key),delete t.key,M8n(t.value)?t.value.end?Array.prototype.push.apply(t.value.end,t.sep):t.value.end=t.sep:Array.prototype.push.apply(t.start,t.sep),delete t.sep)}var kcr=class{constructor(t){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new NHo.Lexer,this.onNewLine=t}*parse(t,r=!1){this.onNewLine&&this.offset===0&&this.onNewLine(0);for(let s of this.lexer.lex(t,r))yield*this.next(s);r||(yield*this.end())}*next(t){if(this.source=t,process.env.LOG_TOKENS&&console.log("|",W8n.prettyToken(t)),this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=t.length;return}let r=W8n.tokenType(t);if(r)if(r==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=r,yield*this.step(),r){case"newline":this.atNewLine=!0,this.indent=0,this.onNewLine&&this.onNewLine(this.offset+t.length);break;case"space":this.atNewLine&&t[0]===" "&&(this.indent+=t.length);break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":this.atNewLine&&(this.indent+=t.length);break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=t.length}else{let s=`Not a YAML token: ${t}`;yield*this.pop({type:"error",offset:this.offset,message:s,source:t}),this.offset+=t.length}}*end(){for(;this.stack.length>0;)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){let t=this.peek(1);if(this.type==="doc-end"&&(!t||t.type!=="doc-end")){for(;this.stack.length>0;)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!t)return yield*this.stream();switch(t.type){case"document":return yield*this.document(t);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(t);case"block-scalar":return yield*this.blockScalar(t);case"block-map":return yield*this.blockMap(t);case"block-seq":return yield*this.blockSequence(t);case"flow-collection":return yield*this.flowCollection(t);case"doc-end":return yield*this.documentEnd(t)}yield*this.pop()}peek(t){return this.stack[this.stack.length-t]}*pop(t){let r=t??this.stack.pop();if(!r)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield r;else{let s=this.peek(1);switch(r.type==="block-scalar"?r.indent="indent"in s?s.indent:0:r.type==="flow-collection"&&s.type==="document"&&(r.indent=0),r.type==="flow-collection"&&O8n(r),s.type){case"document":s.value=r;break;case"block-scalar":s.props.push(r);break;case"block-map":{let a=s.items[s.items.length-1];if(a.value){s.items.push({start:[],key:r,sep:[]}),this.onKeyLine=!0;return}else if(a.sep)a.value=r;else{Object.assign(a,{key:r,sep:[]}),this.onKeyLine=!a.explicitKey;return}break}case"block-seq":{let a=s.items[s.items.length-1];a.value?s.items.push({start:[],value:r}):a.value=r;break}case"flow-collection":{let a=s.items[s.items.length-1];!a||a.value?s.items.push({start:[],key:r,sep:[]}):a.sep?a.value=r:Object.assign(a,{key:r,sep:[]});return}default:yield*this.pop(),yield*this.pop(r)}if((s.type==="document"||s.type==="block-map"||s.type==="block-seq")&&(r.type==="block-map"||r.type==="block-seq")){let a=r.items[r.items.length-1];a&&!a.sep&&!a.value&&a.start.length>0&&P8n(a.start)===-1&&(r.indent===0||a.start.every(o=>o.type!=="comment"||o.indent0&&(yield this.buffer.substr(this.pos,a),this.pos=r),a}*pushUntil(t){let r=this.pos,s=this.buffer[r];for(;!t(s);)s=this.buffer[++r];return yield*this.pushToIndex(r,!1)}};Y8n.Lexer=Fcr});var Vcr=z(X8n=>{"use strict";var Lcr=class{constructor(){this.lineStarts=[],this.addNewLine=t=>this.lineStarts.push(t),this.linePos=t=>{let r=0,s=this.lineStarts.length;for(;r>1;this.lineStarts[o]{"use strict";var J8n=hft(),HHo=Zcr();function Spe(e,t){for(let r=0;r=0;)switch(e[t].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break e}for(;e[++t]?.type==="space";);return e.splice(t,e.length)}function K8n(e){if(e.start.type==="flow-seq-start")for(let t of e.items)t.sep&&!t.value&&!Spe(t.start,"explicit-key-ind")&&!Spe(t.sep,"map-value-ind")&&(t.key&&(t.value=t.key),delete t.key,j8n(t.value)?t.value.end?Array.prototype.push.apply(t.value.end,t.sep):t.value.end=t.sep:Array.prototype.push.apply(t.start,t.sep),delete t.sep)}var Wcr=class{constructor(t){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new HHo.Lexer,this.onNewLine=t}*parse(t,r=!1){this.onNewLine&&this.offset===0&&this.onNewLine(0);for(let s of this.lexer.lex(t,r))yield*this.next(s);r||(yield*this.end())}*next(t){if(this.source=t,process.env.LOG_TOKENS&&console.log("|",J8n.prettyToken(t)),this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=t.length;return}let r=J8n.tokenType(t);if(r)if(r==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=r,yield*this.step(),r){case"newline":this.atNewLine=!0,this.indent=0,this.onNewLine&&this.onNewLine(this.offset+t.length);break;case"space":this.atNewLine&&t[0]===" "&&(this.indent+=t.length);break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":this.atNewLine&&(this.indent+=t.length);break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=t.length}else{let s=`Not a YAML token: ${t}`;yield*this.pop({type:"error",offset:this.offset,message:s,source:t}),this.offset+=t.length}}*end(){for(;this.stack.length>0;)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){let t=this.peek(1);if(this.type==="doc-end"&&(!t||t.type!=="doc-end")){for(;this.stack.length>0;)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!t)return yield*this.stream();switch(t.type){case"document":return yield*this.document(t);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(t);case"block-scalar":return yield*this.blockScalar(t);case"block-map":return yield*this.blockMap(t);case"block-seq":return yield*this.blockSequence(t);case"flow-collection":return yield*this.flowCollection(t);case"doc-end":return yield*this.documentEnd(t)}yield*this.pop()}peek(t){return this.stack[this.stack.length-t]}*pop(t){let r=t??this.stack.pop();if(!r)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield r;else{let s=this.peek(1);switch(r.type==="block-scalar"?r.indent="indent"in s?s.indent:0:r.type==="flow-collection"&&s.type==="document"&&(r.indent=0),r.type==="flow-collection"&&K8n(r),s.type){case"document":s.value=r;break;case"block-scalar":s.props.push(r);break;case"block-map":{let a=s.items[s.items.length-1];if(a.value){s.items.push({start:[],key:r,sep:[]}),this.onKeyLine=!0;return}else if(a.sep)a.value=r;else{Object.assign(a,{key:r,sep:[]}),this.onKeyLine=!a.explicitKey;return}break}case"block-seq":{let a=s.items[s.items.length-1];a.value?s.items.push({start:[],value:r}):a.value=r;break}case"flow-collection":{let a=s.items[s.items.length-1];!a||a.value?s.items.push({start:[],key:r,sep:[]}):a.sep?a.value=r:Object.assign(a,{key:r,sep:[]});return}default:yield*this.pop(),yield*this.pop(r)}if((s.type==="document"||s.type==="block-map"||s.type==="block-seq")&&(r.type==="block-map"||r.type==="block-seq")){let a=r.items[r.items.length-1];a&&!a.sep&&!a.value&&a.start.length>0&&U8n(a.start)===-1&&(r.indent===0||a.start.every(o=>o.type!=="comment"||o.indent=t.indent){let s=!this.onKeyLine&&this.indent===t.indent,a=s&&(r.sep||r.explicitKey)&&this.type!=="seq-item-ind",o=[];if(a&&r.sep&&!r.value){let g=[];for(let p=0;pt.indent&&(g.length=0);break;default:g.length=0}}g.length>=2&&(o=r.sep.splice(g[1]))}switch(this.type){case"anchor":case"tag":a||r.value?(o.push(this.sourceToken),t.items.push({start:o}),this.onKeyLine=!0):r.sep?r.sep.push(this.sourceToken):r.start.push(this.sourceToken);return;case"explicit-key-ind":!r.sep&&!r.explicitKey?(r.start.push(this.sourceToken),r.explicitKey=!0):a||r.value?(o.push(this.sourceToken),t.items.push({start:o,explicitKey:!0})):this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]}),this.onKeyLine=!0;return;case"map-value-ind":if(r.explicitKey)if(r.sep)if(r.value)t.items.push({start:[],key:null,sep:[this.sourceToken]});else if(mpe(r.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:o,key:null,sep:[this.sourceToken]}]});else if(M8n(r.key)&&!mpe(r.sep,"newline")){let g=JBe(r.start),p=r.key,f=r.sep;f.push(this.sourceToken),delete r.key,delete r.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:g,key:p,sep:f}]})}else o.length>0?r.sep=r.sep.concat(o,this.sourceToken):r.sep.push(this.sourceToken);else if(mpe(r.start,"newline"))Object.assign(r,{key:null,sep:[this.sourceToken]});else{let g=JBe(r.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:g,key:null,sep:[this.sourceToken]}]})}else r.sep?r.value||a?t.items.push({start:o,key:null,sep:[this.sourceToken]}):mpe(r.sep,"map-value-ind")?this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]}):r.sep.push(this.sourceToken):Object.assign(r,{key:null,sep:[this.sourceToken]});this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let g=this.flowScalar(this.type);a||r.value?(t.items.push({start:o,key:g,sep:[]}),this.onKeyLine=!0):r.sep?this.stack.push(g):(Object.assign(r,{key:g,sep:[]}),this.onKeyLine=!0);return}default:{let g=this.startBlockValue(t);if(g){s&&g.type!=="block-seq"&&t.items.push({start:o}),this.stack.push(g);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(t){let r=t.items[t.items.length-1];switch(this.type){case"newline":if(r.value){let s="end"in r.value?r.value.end:void 0;(Array.isArray(s)?s[s.length-1]:void 0)?.type==="comment"?s?.push(this.sourceToken):t.items.push({start:[this.sourceToken]})}else r.start.push(this.sourceToken);return;case"space":case"comment":if(r.value)t.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(r.start,t.indent)){let a=t.items[t.items.length-2]?.value?.end;if(Array.isArray(a)){Array.prototype.push.apply(a,r.start),a.push(this.sourceToken),t.items.pop();return}}r.start.push(this.sourceToken)}return;case"anchor":case"tag":if(r.value||this.indent<=t.indent)break;r.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==t.indent)break;r.value||mpe(r.start,"seq-item-ind")?t.items.push({start:[this.sourceToken]}):r.start.push(this.sourceToken);return}if(this.indent>t.indent){let s=this.startBlockValue(t);if(s){this.stack.push(s);return}}yield*this.pop(),yield*this.step()}*flowCollection(t){let r=t.items[t.items.length-1];if(this.type==="flow-error-end"){let s;do yield*this.pop(),s=this.peek(1);while(s&&s.type==="flow-collection")}else if(t.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":!r||r.sep?t.items.push({start:[this.sourceToken]}):r.start.push(this.sourceToken);return;case"map-value-ind":!r||r.value?t.items.push({start:[],key:null,sep:[this.sourceToken]}):r.sep?r.sep.push(this.sourceToken):Object.assign(r,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":!r||r.value?t.items.push({start:[this.sourceToken]}):r.sep?r.sep.push(this.sourceToken):r.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let a=this.flowScalar(this.type);!r||r.value?t.items.push({start:[],key:a,sep:[]}):r.sep?this.stack.push(a):Object.assign(r,{key:a,sep:[]});return}case"flow-map-end":case"flow-seq-end":t.end.push(this.sourceToken);return}let s=this.startBlockValue(t);s?this.stack.push(s):(yield*this.pop(),yield*this.step())}else{let s=this.peek(2);if(s.type==="block-map"&&(this.type==="map-value-ind"&&s.indent===t.indent||this.type==="newline"&&!s.items[s.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&s.type!=="flow-collection"){let a=hft(s),o=JBe(a);O8n(t);let g=t.end.splice(1,t.end.length);g.push(this.sourceToken);let p={type:"block-map",offset:t.offset,indent:t.indent,items:[{start:o,key:t,sep:g}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=p}else yield*this.lineEnd(t)}}flowScalar(t){if(this.onNewLine){let r=this.source.indexOf(` +`,r)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap(t){let r=t.items[t.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,r.value){let s="end"in r.value?r.value.end:void 0;(Array.isArray(s)?s[s.length-1]:void 0)?.type==="comment"?s?.push(this.sourceToken):t.items.push({start:[this.sourceToken]})}else r.sep?r.sep.push(this.sourceToken):r.start.push(this.sourceToken);return;case"space":case"comment":if(r.value)t.items.push({start:[this.sourceToken]});else if(r.sep)r.sep.push(this.sourceToken);else{if(this.atIndentedComment(r.start,t.indent)){let a=t.items[t.items.length-2]?.value?.end;if(Array.isArray(a)){Array.prototype.push.apply(a,r.start),a.push(this.sourceToken),t.items.pop();return}}r.start.push(this.sourceToken)}return}if(this.indent>=t.indent){let s=!this.onKeyLine&&this.indent===t.indent,a=s&&(r.sep||r.explicitKey)&&this.type!=="seq-item-ind",o=[];if(a&&r.sep&&!r.value){let g=[];for(let p=0;pt.indent&&(g.length=0);break;default:g.length=0}}g.length>=2&&(o=r.sep.splice(g[1]))}switch(this.type){case"anchor":case"tag":a||r.value?(o.push(this.sourceToken),t.items.push({start:o}),this.onKeyLine=!0):r.sep?r.sep.push(this.sourceToken):r.start.push(this.sourceToken);return;case"explicit-key-ind":!r.sep&&!r.explicitKey?(r.start.push(this.sourceToken),r.explicitKey=!0):a||r.value?(o.push(this.sourceToken),t.items.push({start:o,explicitKey:!0})):this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]}),this.onKeyLine=!0;return;case"map-value-ind":if(r.explicitKey)if(r.sep)if(r.value)t.items.push({start:[],key:null,sep:[this.sourceToken]});else if(Spe(r.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:o,key:null,sep:[this.sourceToken]}]});else if(j8n(r.key)&&!Spe(r.sep,"newline")){let g=jBe(r.start),p=r.key,f=r.sep;f.push(this.sourceToken),delete r.key,delete r.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:g,key:p,sep:f}]})}else o.length>0?r.sep=r.sep.concat(o,this.sourceToken):r.sep.push(this.sourceToken);else if(Spe(r.start,"newline"))Object.assign(r,{key:null,sep:[this.sourceToken]});else{let g=jBe(r.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:g,key:null,sep:[this.sourceToken]}]})}else r.sep?r.value||a?t.items.push({start:o,key:null,sep:[this.sourceToken]}):Spe(r.sep,"map-value-ind")?this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]}):r.sep.push(this.sourceToken):Object.assign(r,{key:null,sep:[this.sourceToken]});this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let g=this.flowScalar(this.type);a||r.value?(t.items.push({start:o,key:g,sep:[]}),this.onKeyLine=!0):r.sep?this.stack.push(g):(Object.assign(r,{key:g,sep:[]}),this.onKeyLine=!0);return}default:{let g=this.startBlockValue(t);if(g){s&&g.type!=="block-seq"&&t.items.push({start:o}),this.stack.push(g);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(t){let r=t.items[t.items.length-1];switch(this.type){case"newline":if(r.value){let s="end"in r.value?r.value.end:void 0;(Array.isArray(s)?s[s.length-1]:void 0)?.type==="comment"?s?.push(this.sourceToken):t.items.push({start:[this.sourceToken]})}else r.start.push(this.sourceToken);return;case"space":case"comment":if(r.value)t.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(r.start,t.indent)){let a=t.items[t.items.length-2]?.value?.end;if(Array.isArray(a)){Array.prototype.push.apply(a,r.start),a.push(this.sourceToken),t.items.pop();return}}r.start.push(this.sourceToken)}return;case"anchor":case"tag":if(r.value||this.indent<=t.indent)break;r.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==t.indent)break;r.value||Spe(r.start,"seq-item-ind")?t.items.push({start:[this.sourceToken]}):r.start.push(this.sourceToken);return}if(this.indent>t.indent){let s=this.startBlockValue(t);if(s){this.stack.push(s);return}}yield*this.pop(),yield*this.step()}*flowCollection(t){let r=t.items[t.items.length-1];if(this.type==="flow-error-end"){let s;do yield*this.pop(),s=this.peek(1);while(s&&s.type==="flow-collection")}else if(t.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":!r||r.sep?t.items.push({start:[this.sourceToken]}):r.start.push(this.sourceToken);return;case"map-value-ind":!r||r.value?t.items.push({start:[],key:null,sep:[this.sourceToken]}):r.sep?r.sep.push(this.sourceToken):Object.assign(r,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":!r||r.value?t.items.push({start:[this.sourceToken]}):r.sep?r.sep.push(this.sourceToken):r.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let a=this.flowScalar(this.type);!r||r.value?t.items.push({start:[],key:a,sep:[]}):r.sep?this.stack.push(a):Object.assign(r,{key:a,sep:[]});return}case"flow-map-end":case"flow-seq-end":t.end.push(this.sourceToken);return}let s=this.startBlockValue(t);s?this.stack.push(s):(yield*this.pop(),yield*this.step())}else{let s=this.peek(2);if(s.type==="block-map"&&(this.type==="map-value-ind"&&s.indent===t.indent||this.type==="newline"&&!s.items[s.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&s.type!=="flow-collection"){let a=yft(s),o=jBe(a);K8n(t);let g=t.end.splice(1,t.end.length);g.push(this.sourceToken);let p={type:"block-map",offset:t.offset,indent:t.indent,items:[{start:o,key:t,sep:g}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=p}else yield*this.lineEnd(t)}}flowScalar(t){if(this.onNewLine){let r=this.source.indexOf(` `)+1;for(;r!==0;)this.onNewLine(this.offset+r),r=this.source.indexOf(` -`,r)+1}return{type:t,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(t){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;let r=hft(t),s=JBe(r);return s.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:s,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let r=hft(t),s=JBe(r);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:s,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(t,r){return this.type!=="comment"||this.indent<=r?!1:t.every(s=>s.type==="newline"||s.type==="space")}*documentEnd(t){this.type!=="doc-mode"&&(t.end?t.end.push(this.sourceToken):t.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop()))}*lineEnd(t){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:t.end?t.end.push(this.sourceToken):t.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop())}}};Q8n.Parser=kcr});var U8n=z(RMe=>{"use strict";var Y8n=_cr(),RHo=yMe(),NMe=BMe(),DHo=Car(),xHo=xcr(),H8n=Gcr();function X8n(e){let t=e.prettyErrors!==!1;return{lineCounter:e.lineCounter||t&&new xHo.LineCounter||null,prettyErrors:t}}function kHo(e,t={}){let{lineCounter:r,prettyErrors:s}=X8n(t),a=new H8n.Parser(r?.addNewLine),o=new Y8n.Composer(t),g=Array.from(o.compose(a.parse(e)));if(s&&r)for(let p of g)p.errors.forEach(NMe.prettifyError(e,r)),p.warnings.forEach(NMe.prettifyError(e,r));return g.length>0?g:Object.assign([],{empty:!0},o.streamInfo())}function J8n(e,t={}){let{lineCounter:r,prettyErrors:s}=X8n(t),a=new H8n.Parser(r?.addNewLine),o=new Y8n.Composer(t),g=null;for(let p of o.compose(a.parse(e),!0,e.length))if(!g)g=p;else if(g.options.logLevel!=="silent"){g.errors.push(new NMe.YAMLParseError(p.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}return s&&r&&(g.errors.forEach(NMe.prettifyError(e,r)),g.warnings.forEach(NMe.prettifyError(e,r))),g}function GHo(e,t,r){let s;typeof t=="function"?s=t:r===void 0&&t&&typeof t=="object"&&(r=t);let a=J8n(e,r);if(!a)return null;if(a.warnings.forEach(o=>DHo.warn(a.options.logLevel,o)),a.errors.length>0){if(a.options.logLevel!=="silent")throw a.errors[0];a.errors=[]}return a.toJS(Object.assign({reviver:s},r))}function FHo(e,t,r){let s=null;if(typeof t=="function"||Array.isArray(t)?s=t:r===void 0&&t&&(r=t),typeof r=="string"&&(r=r.length),typeof r=="number"){let a=Math.round(r);r=a<1?void 0:a>8?{indent:8}:{indent:a}}if(e===void 0){let{keepUndefined:a}=r??t??{};if(!a)return}return new RHo.Document(e,s,r).toString(r)}RMe.parse=GHo;RMe.parseAllDocuments=kHo;RMe.parseDocument=J8n;RMe.stringify=FHo});var j8n=z(w0=>{"use strict";var ZHo=_cr(),LHo=yMe(),VHo=ecr(),Fcr=BMe(),WHo=aMe(),jie=Y_(),PHo=Xie(),OHo=vw(),MHo=Uie(),QHo=Kie(),YHo=Cft(),HHo=Rcr(),XHo=xcr(),JHo=Gcr(),_ft=U8n(),K8n=nMe();w0.Composer=ZHo.Composer;w0.Document=LHo.Document;w0.Schema=VHo.Schema;w0.YAMLError=Fcr.YAMLError;w0.YAMLParseError=Fcr.YAMLParseError;w0.YAMLWarning=Fcr.YAMLWarning;w0.Alias=WHo.Alias;w0.isAlias=jie.isAlias;w0.isCollection=jie.isCollection;w0.isDocument=jie.isDocument;w0.isMap=jie.isMap;w0.isNode=jie.isNode;w0.isPair=jie.isPair;w0.isScalar=jie.isScalar;w0.isSeq=jie.isSeq;w0.Pair=PHo.Pair;w0.Scalar=OHo.Scalar;w0.YAMLMap=MHo.YAMLMap;w0.YAMLSeq=QHo.YAMLSeq;w0.CST=YHo;w0.Lexer=HHo.Lexer;w0.LineCounter=XHo.LineCounter;w0.Parser=JHo.Parser;w0.parse=_ft.parse;w0.parseAllDocuments=_ft.parseAllDocuments;w0.parseDocument=_ft.parseDocument;w0.stringify=_ft.stringify;w0.visit=K8n.visit;w0.visitAsync=K8n.visitAsync});var i6n=z((Fgl,xMe)=>{var n5=Dt("path"),DMe=Dt("fs"),jHo=Dt("os"),q8n=DMe.promises.readFile;function zHo(e,t){return["package.json",`.${e}rc.json`,`.${e}rc.js`,`.${e}rc.cjs`,...t?[]:[`.${e}rc.mjs`],`.config/${e}rc`,`.config/${e}rc.json`,`.config/${e}rc.js`,`.config/${e}rc.cjs`,...t?[]:[`.config/${e}rc.mjs`],`${e}.config.js`,`${e}.config.cjs`,...t?[]:[`${e}.config.mjs`]]}function Sft(e){return n5.dirname(e)||n5.sep}var Vcr=(e,t)=>JSON.parse(t),vft=typeof __webpack_require__=="function"?__non_webpack_require__:Dt,$8n=Object.freeze({".js":vft,".json":vft,".cjs":vft,noExt:Vcr});xMe.exports.defaultLoadersSync=$8n;var Lcr=async e=>{try{return(await import(e)).default}catch(t){try{return vft(e)}catch(r){throw r.code==="ERR_REQUIRE_ESM"||r instanceof SyntaxError&&r.toString().includes("Cannot use import statement outside a module")?t:r}}},e6n=Object.freeze({".js":Lcr,".mjs":Lcr,".cjs":Lcr,".json":Vcr,noExt:Vcr});xMe.exports.defaultLoaders=e6n;function t6n(e,t,r){let s={stopDir:jHo.homedir(),searchPlaces:zHo(e,r),ignoreEmptySearchPlaces:!0,cache:!0,transform:a=>a,packageProp:[e],...t,loaders:{...r?$8n:e6n,...t.loaders}};return s.searchPlaces.forEach(a=>{let o=n5.extname(a)||"noExt",g=s.loaders[o];if(!g)throw new Error(`Missing loader for extension "${a}"`);if(typeof g!="function")throw new Error(`Loader for extension "${a}" is not a function: Received ${typeof g}.`)}),s}function wft(e,t){return typeof e=="string"&&e in t?t[e]:(Array.isArray(e)?e:e.split(".")).reduce((r,s)=>r===void 0?r:r[s],t)||null}function r6n(e){if(!e)throw new Error("load must pass a non-empty string")}function Tft(e,t){if(!e)throw new Error(`No loader specified for extension "${t}"`);if(typeof e!="function")throw new Error("loader is not a function")}var n6n=e=>(t,r,s)=>(e&&t.set(r,s),s);xMe.exports.lilconfig=function(t,r){let{ignoreEmptySearchPlaces:s,loaders:a,packageProp:o,searchPlaces:g,stopDir:p,transform:f,cache:m}=t6n(t,r??{},!1),y=new Map,B=new Map,v=n6n(m);return{async search(G=process.cwd()){let T={config:null,filepath:""},O=new Set,X=G;e:for(;;){if(m){let le=y.get(X);if(le!==void 0){for(let ae of O)y.set(ae,le);return le}O.add(X)}for(let le of g){let ae=n5.join(X,le);try{await DMe.promises.access(ae)}catch{continue}let ge=String(await q8n(ae)),fe=n5.extname(le)||"noExt",pe=a[fe];if(le==="package.json"){let be=await pe(ae,ge),Te=wft(o,be);if(Te!=null){T.config=Te,T.filepath=ae;break e}continue}let he=ge.trim()==="";if(!(he&&s)){he?(T.isEmpty=!0,T.config=void 0):(Tft(pe,fe),T.config=await pe(ae,ge)),T.filepath=ae;break e}}if(X===p||X===Sft(X))break e;X=Sft(X)}let U=T.filepath===""&&T.config===null?f(null):f(T);if(m)for(let le of O)y.set(le,U);return U},async load(G){r6n(G);let T=n5.resolve(process.cwd(),G);if(m&&B.has(T))return B.get(T);let{base:O,ext:X}=n5.parse(T),U=X||"noExt",le=a[U];Tft(le,U);let ae=String(await q8n(T));if(O==="package.json"){let pe=await le(T,ae);return v(B,T,f({config:wft(o,pe),filepath:T}))}let ge={config:null,filepath:T},fe=ae.trim()==="";return fe&&s?v(B,T,f({config:void 0,filepath:T,isEmpty:!0})):(ge.config=fe?void 0:await le(T,ae),v(B,T,f(fe?{...ge,isEmpty:fe,config:void 0}:ge)))},clearLoadCache(){m&&B.clear()},clearSearchCache(){m&&y.clear()},clearCaches(){m&&(B.clear(),y.clear())}}};xMe.exports.lilconfigSync=function(t,r){let{ignoreEmptySearchPlaces:s,loaders:a,packageProp:o,searchPlaces:g,stopDir:p,transform:f,cache:m}=t6n(t,r??{},!0),y=new Map,B=new Map,v=n6n(m);return{search(G=process.cwd()){let T={config:null,filepath:""},O=new Set,X=G;e:for(;;){if(m){let le=y.get(X);if(le!==void 0){for(let ae of O)y.set(ae,le);return le}O.add(X)}for(let le of g){let ae=n5.join(X,le);try{DMe.accessSync(ae)}catch{continue}let ge=n5.extname(le)||"noExt",fe=a[ge],pe=String(DMe.readFileSync(ae));if(le==="package.json"){let be=fe(ae,pe),Te=wft(o,be);if(Te!=null){T.config=Te,T.filepath=ae;break e}continue}let he=pe.trim()==="";if(!(he&&s)){he?(T.isEmpty=!0,T.config=void 0):(Tft(fe,ge),T.config=fe(ae,pe)),T.filepath=ae;break e}}if(X===p||X===Sft(X))break e;X=Sft(X)}let U=T.filepath===""&&T.config===null?f(null):f(T);if(m)for(let le of O)y.set(le,U);return U},load(G){r6n(G);let T=n5.resolve(process.cwd(),G);if(m&&B.has(T))return B.get(T);let{base:O,ext:X}=n5.parse(T),U=X||"noExt",le=a[U];Tft(le,U);let ae=String(DMe.readFileSync(T));if(O==="package.json"){let pe=le(T,ae);return f({config:wft(o,pe),filepath:T})}let ge={config:null,filepath:T},fe=ae.trim()==="";return fe&&s?v(B,T,f({filepath:T,config:void 0,isEmpty:!0})):(ge.config=fe?void 0:le(T,ae),v(B,T,f(fe?{...ge,isEmpty:fe,config:void 0}:ge)))},clearLoadCache(){m&&B.clear()},clearSearchCache(){m&&y.clear()},clearCaches(){m&&(B.clear(),y.clear())}}}});var Ycr=z((qAl,D6n)=>{D6n.exports=Dt("stream")});var L6n=z(($Al,Z6n)=>{"use strict";function x6n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);t&&(s=s.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,s)}return r}function k6n(e){for(var t=1;t0?this.tail.next=s:this.head=s,this.tail=s,++this.length}},{key:"unshift",value:function(r){var s={data:r,next:this.head};this.length===0&&(this.tail=s),this.head=s,++this.length}},{key:"shift",value:function(){if(this.length!==0){var r=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,r}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(r){if(this.length===0)return"";for(var s=this.head,a=""+s.data;s=s.next;)a+=r+s.data;return a}},{key:"concat",value:function(r){if(this.length===0)return kft.alloc(0);for(var s=kft.allocUnsafe(r>>>0),a=this.head,o=0;a;)E5o(a.data,s,o),o+=a.data.length,a=a.next;return s}},{key:"consume",value:function(r,s){var a;return rg.length?g.length:r;if(p===g.length?o+=g:o+=g.slice(0,r),r-=p,r===0){p===g.length?(++a,s.next?this.head=s.next:this.head=this.tail=null):(this.head=s,s.data=g.slice(p));break}++a}return this.length-=a,o}},{key:"_getBuffer",value:function(r){var s=kft.allocUnsafe(r),a=this.head,o=1;for(a.data.copy(s),r-=a.data.length;a=a.next;){var g=a.data,p=r>g.length?g.length:r;if(g.copy(s,s.length-r,0,p),r-=p,r===0){p===g.length?(++o,a.next?this.head=a.next:this.head=this.tail=null):(this.head=a,a.data=g.slice(p));break}++o}return this.length-=o,s}},{key:b5o,value:function(r,s){return Hcr(this,k6n(k6n({},s),{},{depth:0,customInspect:!1}))}}]),e}()});var Jcr=z((edl,W6n)=>{"use strict";function B5o(e,t){var r=this,s=this._readableState&&this._readableState.destroyed,a=this._writableState&&this._writableState.destroyed;return s||a?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(Xcr,this,e)):process.nextTick(Xcr,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,function(o){!t&&o?r._writableState?r._writableState.errorEmitted?process.nextTick(Gft,r):(r._writableState.errorEmitted=!0,process.nextTick(V6n,r,o)):process.nextTick(V6n,r,o):t?(process.nextTick(Gft,r),t(o)):process.nextTick(Gft,r)}),this)}function V6n(e,t){Xcr(e,t),Gft(e)}function Gft(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function v5o(){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)}function Xcr(e,t){e.emit("error",t)}function S5o(e,t){var r=e._readableState,s=e._writableState;r&&r.autoDestroy||s&&s.autoDestroy?e.destroy(t):e.emit("error",t)}W6n.exports={destroy:B5o,undestroy:v5o,errorOrDestroy:S5o}});var zie=z((tdl,M6n)=>{"use strict";var O6n={};function AM(e,t,r){r||(r=Error);function s(o,g,p){return typeof t=="string"?t:t(o,g,p)}class a extends r{constructor(g,p,f){super(s(g,p,f))}}a.prototype.name=r.name,a.prototype.code=e,O6n[e]=a}function P6n(e,t){if(Array.isArray(e)){let r=e.length;return e=e.map(s=>String(s)),r>2?`one of ${t} ${e.slice(0,r-1).join(", ")}, or `+e[r-1]:r===2?`one of ${t} ${e[0]} or ${e[1]}`:`of ${t} ${e[0]}`}else return`of ${t} ${String(e)}`}function w5o(e,t,r){return e.substr(!r||r<0?0:+r,t.length)===t}function T5o(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function N5o(e,t,r){return typeof r!="number"&&(r=0),r+t.length>e.length?!1:e.indexOf(t,r)!==-1}AM("ERR_INVALID_OPT_VALUE",function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'},TypeError);AM("ERR_INVALID_ARG_TYPE",function(e,t,r){let s;typeof t=="string"&&w5o(t,"not ")?(s="must not be",t=t.replace(/^not /,"")):s="must be";let a;if(T5o(e," argument"))a=`The ${e} ${s} ${P6n(t,"type")}`;else{let o=N5o(e,".")?"property":"argument";a=`The "${e}" ${o} ${s} ${P6n(t,"type")}`}return a+=`. Received type ${typeof r}`,a},TypeError);AM("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");AM("ERR_METHOD_NOT_IMPLEMENTED",function(e){return"The "+e+" method is not implemented"});AM("ERR_STREAM_PREMATURE_CLOSE","Premature close");AM("ERR_STREAM_DESTROYED",function(e){return"Cannot call "+e+" after a stream was destroyed"});AM("ERR_MULTIPLE_CALLBACK","Callback called multiple times");AM("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");AM("ERR_STREAM_WRITE_AFTER_END","write after end");AM("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);AM("ERR_UNKNOWN_ENCODING",function(e){return"Unknown encoding: "+e},TypeError);AM("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");M6n.exports.codes=O6n});var Ucr=z((rdl,Q6n)=>{"use strict";var R5o=zie().codes.ERR_INVALID_OPT_VALUE;function D5o(e,t,r){return e.highWaterMark!=null?e.highWaterMark:t?e[r]:null}function x5o(e,t,r,s){var a=D5o(t,s,r);if(a!=null){if(!(isFinite(a)&&Math.floor(a)===a)||a<0){var o=s?r:"highWaterMark";throw new R5o(o,a)}return Math.floor(a)}return e.objectMode?16:16*1024}Q6n.exports={getHighWaterMark:x5o}});var Y6n=z((ndl,Kcr)=>{typeof Object.create=="function"?Kcr.exports=function(t,r){r&&(t.super_=r,t.prototype=Object.create(r.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:Kcr.exports=function(t,r){if(r){t.super_=r;var s=function(){};s.prototype=r.prototype,t.prototype=new s,t.prototype.constructor=t}}});var qie=z((idl,zcr)=>{try{if(jcr=Dt("util"),typeof jcr.inherits!="function")throw"";zcr.exports=jcr.inherits}catch{zcr.exports=Y6n()}var jcr});var X6n=z((sdl,H6n)=>{H6n.exports=Dt("util").deprecate});var elr=z((odl,q6n)=>{"use strict";q6n.exports=tv;function U6n(e){var t=this;this.next=null,this.entry=null,this.finish=function(){sXo(t,e)}}var jBe;tv.WritableState=VMe;var k5o={deprecate:X6n()},K6n=Ycr(),Zft=Dt("buffer").Buffer,G5o=(typeof global<"u"?global:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){};function F5o(e){return Zft.from(e)}function Z5o(e){return Zft.isBuffer(e)||e instanceof G5o}var $cr=Jcr(),L5o=Ucr(),V5o=L5o.getHighWaterMark,$ie=zie().codes,W5o=$ie.ERR_INVALID_ARG_TYPE,P5o=$ie.ERR_METHOD_NOT_IMPLEMENTED,O5o=$ie.ERR_MULTIPLE_CALLBACK,M5o=$ie.ERR_STREAM_CANNOT_PIPE,Q5o=$ie.ERR_STREAM_DESTROYED,Y5o=$ie.ERR_STREAM_NULL_VALUES,H5o=$ie.ERR_STREAM_WRITE_AFTER_END,X5o=$ie.ERR_UNKNOWN_ENCODING,zBe=$cr.errorOrDestroy;qie()(tv,K6n);function J5o(){}function VMe(e,t,r){jBe=jBe||hpe(),e=e||{},typeof r!="boolean"&&(r=t instanceof jBe),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=V5o(this,e,"writableHighWaterMark",r),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var s=e.decodeStrings===!1;this.decodeStrings=!s,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(a){eXo(t,a)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new U6n(this)}VMe.prototype.getBuffer=function(){for(var t=this.bufferedRequest,r=[];t;)r.push(t),t=t.next;return r};(function(){try{Object.defineProperty(VMe.prototype,"buffer",{get:k5o.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch{}})();var Fft;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(Fft=Function.prototype[Symbol.hasInstance],Object.defineProperty(tv,Symbol.hasInstance,{value:function(t){return Fft.call(this,t)?!0:this!==tv?!1:t&&t._writableState instanceof VMe}})):Fft=function(t){return t instanceof this};function tv(e){jBe=jBe||hpe();var t=this instanceof jBe;if(!t&&!Fft.call(tv,this))return new tv(e);this._writableState=new VMe(e,this,t),this.writable=!0,e&&(typeof e.write=="function"&&(this._write=e.write),typeof e.writev=="function"&&(this._writev=e.writev),typeof e.destroy=="function"&&(this._destroy=e.destroy),typeof e.final=="function"&&(this._final=e.final)),K6n.call(this)}tv.prototype.pipe=function(){zBe(this,new M5o)};function U5o(e,t){var r=new H5o;zBe(e,r),process.nextTick(t,r)}function K5o(e,t,r,s){var a;return r===null?a=new Y5o:typeof r!="string"&&!t.objectMode&&(a=new W5o("chunk",["string","Buffer"],r)),a?(zBe(e,a),process.nextTick(s,a),!1):!0}tv.prototype.write=function(e,t,r){var s=this._writableState,a=!1,o=!s.objectMode&&Z5o(e);return o&&!Zft.isBuffer(e)&&(e=F5o(e)),typeof t=="function"&&(r=t,t=null),o?t="buffer":t||(t=s.defaultEncoding),typeof r!="function"&&(r=J5o),s.ending?U5o(this,r):(o||K5o(this,s,e,r))&&(s.pendingcb++,a=z5o(this,s,o,e,t,r)),a};tv.prototype.cork=function(){this._writableState.corked++};tv.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,!e.writing&&!e.corked&&!e.bufferProcessing&&e.bufferedRequest&&j6n(this,e))};tv.prototype.setDefaultEncoding=function(t){if(typeof t=="string"&&(t=t.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((t+"").toLowerCase())>-1))throw new X5o(t);return this._writableState.defaultEncoding=t,this};Object.defineProperty(tv.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function j5o(e,t,r){return!e.objectMode&&e.decodeStrings!==!1&&typeof t=="string"&&(t=Zft.from(t,r)),t}Object.defineProperty(tv.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function z5o(e,t,r,s,a,o){if(!r){var g=j5o(t,s,a);s!==g&&(r=!0,a="buffer",s=g)}var p=t.objectMode?1:s.length;t.length+=p;var f=t.length{"use strict";var oXo=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e7n.exports=NU;var $6n=nlr(),rlr=elr();qie()(NU,$6n);for(tlr=oXo(rlr.prototype),Lft=0;Lft{var Wft=Dt("buffer"),RU=Wft.Buffer;function t7n(e,t){for(var r in e)t[r]=e[r]}RU.from&&RU.alloc&&RU.allocUnsafe&&RU.allocUnsafeSlow?r7n.exports=Wft:(t7n(Wft,ilr),ilr.Buffer=_pe);function _pe(e,t,r){return RU(e,t,r)}_pe.prototype=Object.create(RU.prototype);t7n(RU,_pe);_pe.from=function(e,t,r){if(typeof e=="number")throw new TypeError("Argument must not be a number");return RU(e,t,r)};_pe.alloc=function(e,t,r){if(typeof e!="number")throw new TypeError("Argument must be a number");var s=RU(e);return t!==void 0?typeof r=="string"?s.fill(t,r):s.fill(t):s.fill(0),s};_pe.allocUnsafe=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return RU(e)};_pe.allocUnsafeSlow=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return Wft.SlowBuffer(e)}});var alr=z(s7n=>{"use strict";var olr=n7n().Buffer,i7n=olr.isEncoding||function(e){switch(e=""+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 lXo(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}}function uXo(e){var t=lXo(e);if(typeof t!="string"&&(olr.isEncoding===i7n||!i7n(e)))throw new Error("Unknown encoding: "+e);return t||e}s7n.StringDecoder=WMe;function WMe(e){this.encoding=uXo(e);var t;switch(this.encoding){case"utf16le":this.text=IXo,this.end=CXo,t=4;break;case"utf8":this.fillLast=dXo,t=4;break;case"base64":this.text=mXo,this.end=hXo,t=3;break;default:this.write=_Xo,this.end=yXo;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=olr.allocUnsafe(t)}WMe.prototype.write=function(e){if(e.length===0)return"";var t,r;if(this.lastNeed){if(t=this.fillLast(e),t===void 0)return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r>5===6?2:e>>4===14?3:e>>3===30?4:e>>6===2?-1:-2}function gXo(e,t,r){var s=t.length-1;if(s=0?(a>0&&(e.lastNeed=a-1),a):--s=0?(a>0&&(e.lastNeed=a-2),a):--s=0?(a>0&&(a===2?a=0:e.lastNeed=a-3),a):0))}function AXo(e,t,r){if((t[0]&192)!==128)return e.lastNeed=0,"\uFFFD";if(e.lastNeed>1&&t.length>1){if((t[1]&192)!==128)return e.lastNeed=1,"\uFFFD";if(e.lastNeed>2&&t.length>2&&(t[2]&192)!==128)return e.lastNeed=2,"\uFFFD"}}function dXo(e){var t=this.lastTotal-this.lastNeed,r=AXo(this,e,t);if(r!==void 0)return r;if(this.lastNeed<=e.length)return e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,t,0,e.length),this.lastNeed-=e.length}function pXo(e,t){var r=gXo(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var s=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,s),e.toString("utf8",t,s)}function fXo(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"\uFFFD":t}function IXo(e,t){if((e.length-t)%2===0){var r=e.toString("utf16le",t);if(r){var s=r.charCodeAt(r.length-1);if(s>=55296&&s<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function CXo(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function mXo(e,t){var r=(e.length-t)%3;return r===0?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,r===1?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-r))}function hXo(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function _Xo(e){return e.toString(this.encoding)}function yXo(e){return e&&e.length?this.write(e):""}});var Pft=z((ldl,c7n)=>{"use strict";var o7n=zie().codes.ERR_STREAM_PREMATURE_CLOSE;function bXo(e){var t=!1;return function(){if(!t){t=!0;for(var r=arguments.length,s=new Array(r),a=0;a{"use strict";var Oft;function ese(e,t,r){return t=vXo(t),t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function vXo(e){var t=SXo(e,"string");return typeof t=="symbol"?t:String(t)}function SXo(e,t){if(typeof e!="object"||e===null)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var s=r.call(e,t||"default");if(typeof s!="object")return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var wXo=Pft(),tse=Symbol("lastResolve"),ype=Symbol("lastReject"),PMe=Symbol("error"),Mft=Symbol("ended"),bpe=Symbol("lastPromise"),clr=Symbol("handlePromise"),Epe=Symbol("stream");function rse(e,t){return{value:e,done:t}}function TXo(e){var t=e[tse];if(t!==null){var r=e[Epe].read();r!==null&&(e[bpe]=null,e[tse]=null,e[ype]=null,t(rse(r,!1)))}}function NXo(e){process.nextTick(TXo,e)}function RXo(e,t){return function(r,s){e.then(function(){if(t[Mft]){r(rse(void 0,!0));return}t[clr](r,s)},s)}}var DXo=Object.getPrototypeOf(function(){}),xXo=Object.setPrototypeOf((Oft={get stream(){return this[Epe]},next:function(){var t=this,r=this[PMe];if(r!==null)return Promise.reject(r);if(this[Mft])return Promise.resolve(rse(void 0,!0));if(this[Epe].destroyed)return new Promise(function(g,p){process.nextTick(function(){t[PMe]?p(t[PMe]):g(rse(void 0,!0))})});var s=this[bpe],a;if(s)a=new Promise(RXo(s,this));else{var o=this[Epe].read();if(o!==null)return Promise.resolve(rse(o,!1));a=new Promise(this[clr])}return this[bpe]=a,a}},ese(Oft,Symbol.asyncIterator,function(){return this}),ese(Oft,"return",function(){var t=this;return new Promise(function(r,s){t[Epe].destroy(null,function(a){if(a){s(a);return}r(rse(void 0,!0))})})}),Oft),DXo),kXo=function(t){var r,s=Object.create(xXo,(r={},ese(r,Epe,{value:t,writable:!0}),ese(r,tse,{value:null,writable:!0}),ese(r,ype,{value:null,writable:!0}),ese(r,PMe,{value:null,writable:!0}),ese(r,Mft,{value:t._readableState.endEmitted,writable:!0}),ese(r,clr,{value:function(o,g){var p=s[Epe].read();p?(s[bpe]=null,s[tse]=null,s[ype]=null,o(rse(p,!1))):(s[tse]=o,s[ype]=g)},writable:!0}),r));return s[bpe]=null,wXo(t,function(a){if(a&&a.code!=="ERR_STREAM_PREMATURE_CLOSE"){var o=s[ype];o!==null&&(s[bpe]=null,s[tse]=null,s[ype]=null,o(a)),s[PMe]=a;return}var g=s[tse];g!==null&&(s[bpe]=null,s[tse]=null,s[ype]=null,g(rse(void 0,!0))),s[Mft]=!0}),t.on("readable",NXo.bind(null,s)),s};l7n.exports=kXo});var p7n=z((gdl,d7n)=>{"use strict";function g7n(e,t,r,s,a,o,g){try{var p=e[o](g),f=p.value}catch(m){r(m);return}p.done?t(f):Promise.resolve(f).then(s,a)}function GXo(e){return function(){var t=this,r=arguments;return new Promise(function(s,a){var o=e.apply(t,r);function g(f){g7n(o,s,a,g,p,"next",f)}function p(f){g7n(o,s,a,g,p,"throw",f)}g(void 0)})}}function A7n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);t&&(s=s.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,s)}return r}function FXo(e){for(var t=1;t{"use strict";B7n.exports=Ph;var qBe;Ph.ReadableState=m7n;var Adl=Dt("events").EventEmitter,C7n=function(t,r){return t.listeners(r).length},MMe=Ycr(),Qft=Dt("buffer").Buffer,OXo=(typeof global<"u"?global:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){};function MXo(e){return Qft.from(e)}function QXo(e){return Qft.isBuffer(e)||e instanceof OXo}var llr=Dt("util"),rm;llr&&llr.debuglog?rm=llr.debuglog("stream"):rm=function(){};var YXo=L6n(),Ilr=Jcr(),HXo=Ucr(),XXo=HXo.getHighWaterMark,Yft=zie().codes,JXo=Yft.ERR_INVALID_ARG_TYPE,UXo=Yft.ERR_STREAM_PUSH_AFTER_EOF,KXo=Yft.ERR_METHOD_NOT_IMPLEMENTED,jXo=Yft.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,$Be,ulr,glr;qie()(Ph,MMe);var OMe=Ilr.errorOrDestroy,Alr=["error","close","destroy","pause","resume"];function zXo(e,t,r){if(typeof e.prependListener=="function")return e.prependListener(t,r);!e._events||!e._events[t]?e.on(t,r):Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]}function m7n(e,t,r){qBe=qBe||hpe(),e=e||{},typeof r!="boolean"&&(r=t instanceof qBe),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=XXo(this,e,"readableHighWaterMark",r),this.buffer=new YXo,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=e.emitClose!==!1,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&&($Be||($Be=alr().StringDecoder),this.decoder=new $Be(e.encoding),this.encoding=e.encoding)}function Ph(e){if(qBe=qBe||hpe(),!(this instanceof Ph))return new Ph(e);var t=this instanceof qBe;this._readableState=new m7n(e,this,t),this.readable=!0,e&&(typeof e.read=="function"&&(this._read=e.read),typeof e.destroy=="function"&&(this._destroy=e.destroy)),MMe.call(this)}Object.defineProperty(Ph.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(t){this._readableState&&(this._readableState.destroyed=t)}});Ph.prototype.destroy=Ilr.destroy;Ph.prototype._undestroy=Ilr.undestroy;Ph.prototype._destroy=function(e,t){t(e)};Ph.prototype.push=function(e,t){var r=this._readableState,s;return r.objectMode?s=!0:typeof e=="string"&&(t=t||r.defaultEncoding,t!==r.encoding&&(e=Qft.from(e,t),t=""),s=!0),h7n(this,e,t,!1,s)};Ph.prototype.unshift=function(e){return h7n(this,e,null,!0,!1)};function h7n(e,t,r,s,a){rm("readableAddChunk",t);var o=e._readableState;if(t===null)o.reading=!1,e4o(e,o);else{var g;if(a||(g=qXo(o,t)),g)OMe(e,g);else if(o.objectMode||t&&t.length>0)if(typeof t!="string"&&!o.objectMode&&Object.getPrototypeOf(t)!==Qft.prototype&&(t=MXo(t)),s)o.endEmitted?OMe(e,new jXo):dlr(e,o,t,!0);else if(o.ended)OMe(e,new UXo);else{if(o.destroyed)return!1;o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||t.length!==0?dlr(e,o,t,!1):flr(e,o)):dlr(e,o,t,!1)}else s||(o.reading=!1,flr(e,o))}return!o.ended&&(o.length=f7n?e=f7n:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}function I7n(e,t){return e<=0||t.length===0&&t.ended?0:t.objectMode?1:e!==e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=$Xo(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}Ph.prototype.read=function(e){rm("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(e!==0&&(t.emittedReadable=!1),e===0&&t.needReadable&&((t.highWaterMark!==0?t.length>=t.highWaterMark:t.length>0)||t.ended))return rm("read: emitReadable",t.length,t.ended),t.length===0&&t.ended?plr(this):Hft(this),null;if(e=I7n(e,t),e===0&&t.ended)return t.length===0&&plr(this),null;var s=t.needReadable;rm("need readable",s),(t.length===0||t.length-e0?a=b7n(e,t):a=null,a===null?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),t.length===0&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&plr(this)),a!==null&&this.emit("data",a),a};function e4o(e,t){if(rm("onEofChunk"),!t.ended){if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,t.sync?Hft(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,_7n(e)))}}function Hft(e){var t=e._readableState;rm("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(rm("emitReadable",t.flowing),t.emittedReadable=!0,process.nextTick(_7n,e))}function _7n(e){var t=e._readableState;rm("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,Clr(e)}function flr(e,t){t.readingMore||(t.readingMore=!0,process.nextTick(t4o,e,t))}function t4o(e,t){for(;!t.reading&&!t.ended&&(t.length1&&E7n(s.pipes,e)!==-1)&&!m&&(rm("false write response, pause",s.awaitDrain),s.awaitDrain++),r.pause())}function v(X){rm("onerror",X),O(),e.removeListener("error",v),C7n(e,"error")===0&&OMe(e,X)}zXo(e,"error",v);function G(){e.removeListener("finish",T),O()}e.once("close",G);function T(){rm("onfinish"),e.removeListener("close",G),O()}e.once("finish",T);function O(){rm("unpipe"),r.unpipe(e)}return e.emit("pipe",r),s.flowing||(rm("pipe resume"),r.resume()),e};function r4o(e){return function(){var r=e._readableState;rm("pipeOnDrain",r.awaitDrain),r.awaitDrain&&r.awaitDrain--,r.awaitDrain===0&&C7n(e,"data")&&(r.flowing=!0,Clr(e))}}Ph.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(t.pipesCount===0)return this;if(t.pipesCount===1)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r),this);if(!e){var s=t.pipes,a=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;o0,s.flowing!==!1&&this.resume()):e==="readable"&&!s.endEmitted&&!s.readableListening&&(s.readableListening=s.needReadable=!0,s.flowing=!1,s.emittedReadable=!1,rm("on readable",s.length,s.reading),s.length?Hft(this):s.reading||process.nextTick(n4o,this)),r};Ph.prototype.addListener=Ph.prototype.on;Ph.prototype.removeListener=function(e,t){var r=MMe.prototype.removeListener.call(this,e,t);return e==="readable"&&process.nextTick(y7n,this),r};Ph.prototype.removeAllListeners=function(e){var t=MMe.prototype.removeAllListeners.apply(this,arguments);return(e==="readable"||e===void 0)&&process.nextTick(y7n,this),t};function y7n(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 n4o(e){rm("readable nexttick read 0"),e.read(0)}Ph.prototype.resume=function(){var e=this._readableState;return e.flowing||(rm("resume"),e.flowing=!e.readableListening,i4o(this,e)),e.paused=!1,this};function i4o(e,t){t.resumeScheduled||(t.resumeScheduled=!0,process.nextTick(s4o,e,t))}function s4o(e,t){rm("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),Clr(e),t.flowing&&!t.reading&&e.read(0)}Ph.prototype.pause=function(){return rm("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(rm("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function Clr(e){var t=e._readableState;for(rm("flow",t.flowing);t.flowing&&e.read()!==null;);}Ph.prototype.wrap=function(e){var t=this,r=this._readableState,s=!1;e.on("end",function(){if(rm("wrapped end"),r.decoder&&!r.ended){var g=r.decoder.end();g&&g.length&&t.push(g)}t.push(null)}),e.on("data",function(g){if(rm("wrapped data"),r.decoder&&(g=r.decoder.write(g)),!(r.objectMode&&g==null)&&!(!r.objectMode&&(!g||!g.length))){var p=t.push(g);p||(s=!0,e.pause())}});for(var a in e)this[a]===void 0&&typeof e[a]=="function"&&(this[a]=function(p){return function(){return e[p].apply(e,arguments)}}(a));for(var o=0;o=t.length?(t.decoder?r=t.buffer.join(""):t.buffer.length===1?r=t.buffer.first():r=t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r}function plr(e){var t=e._readableState;rm("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,process.nextTick(o4o,t,e))}function o4o(e,t){if(rm("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&e.length===0&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}typeof Symbol=="function"&&(Ph.from=function(e,t){return glr===void 0&&(glr=p7n()),glr(Ph,e,t)});function E7n(e,t){for(var r=0,s=e.length;r{"use strict";S7n.exports=yz;var Xft=zie().codes,a4o=Xft.ERR_METHOD_NOT_IMPLEMENTED,c4o=Xft.ERR_MULTIPLE_CALLBACK,l4o=Xft.ERR_TRANSFORM_ALREADY_TRANSFORMING,u4o=Xft.ERR_TRANSFORM_WITH_LENGTH_0,Jft=hpe();qie()(yz,Jft);function g4o(e,t){var r=this._transformState;r.transforming=!1;var s=r.writecb;if(s===null)return this.emit("error",new c4o);r.writechunk=null,r.writecb=null,t!=null&&this.push(t),s(e);var a=this._readableState;a.reading=!1,(a.needReadable||a.length{"use strict";T7n.exports=QMe;var w7n=mlr();qie()(QMe,w7n);function QMe(e){if(!(this instanceof QMe))return new QMe(e);w7n.call(this,e)}QMe.prototype._transform=function(e,t,r){r(null,e)}});var G7n=z((Idl,k7n)=>{"use strict";var hlr;function d4o(e){var t=!1;return function(){t||(t=!0,e.apply(void 0,arguments))}}var x7n=zie().codes,p4o=x7n.ERR_MISSING_ARGS,f4o=x7n.ERR_STREAM_DESTROYED;function R7n(e){if(e)throw e}function I4o(e){return e.setHeader&&typeof e.abort=="function"}function C4o(e,t,r,s){s=d4o(s);var a=!1;e.on("close",function(){a=!0}),hlr===void 0&&(hlr=Pft()),hlr(e,{readable:t,writable:r},function(g){if(g)return s(g);a=!0,s()});var o=!1;return function(g){if(!a&&!o){if(o=!0,I4o(e))return e.abort();if(typeof e.destroy=="function")return e.destroy();s(g||new f4o("pipe"))}}}function D7n(e){e()}function m4o(e,t){return e.pipe(t)}function h4o(e){return!e.length||typeof e[e.length-1]!="function"?R7n:e.pop()}function _4o(){for(var e=arguments.length,t=new Array(e),r=0;r0;return C4o(g,f,m,function(y){a||(a=y),y&&o.forEach(D7n),!f&&(o.forEach(D7n),s(a))})});return t.reduce(m4o)}k7n.exports=_4o});var eve=z((dM,HMe)=>{var YMe=Dt("stream");process.env.READABLE_STREAM==="disable"&&YMe?(HMe.exports=YMe.Readable,Object.assign(HMe.exports,YMe),HMe.exports.Stream=YMe):(dM=HMe.exports=nlr(),dM.Stream=YMe||dM,dM.Readable=dM,dM.Writable=elr(),dM.Duplex=hpe(),dM.Transform=mlr(),dM.PassThrough=N7n(),dM.finished=Pft(),dM.pipeline=G7n())});var L7n=z((Cdl,Z7n)=>{"use strict";var{Buffer:i5}=Dt("buffer"),F7n=Symbol.for("BufferList");function uE(e){if(!(this instanceof uE))return new uE(e);uE._init.call(this,e)}uE._init=function(t){Object.defineProperty(this,F7n,{value:!0}),this._bufs=[],this.length=0,t&&this.append(t)};uE.prototype._new=function(t){return new uE(t)};uE.prototype._offset=function(t){if(t===0)return[0,0];let r=0;for(let s=0;sthis.length||t<0)return;let r=this._offset(t);return this._bufs[r[0]][r[1]]};uE.prototype.slice=function(t,r){return typeof t=="number"&&t<0&&(t+=this.length),typeof r=="number"&&r<0&&(r+=this.length),this.copy(null,0,t,r)};uE.prototype.copy=function(t,r,s,a){if((typeof s!="number"||s<0)&&(s=0),(typeof a!="number"||a>this.length)&&(a=this.length),s>=this.length||a<=0)return t||i5.alloc(0);let o=!!t,g=this._offset(s),p=a-s,f=p,m=o&&r||0,y=g[1];if(s===0&&a===this.length){if(!o)return this._bufs.length===1?this._bufs[0]:i5.concat(this._bufs,this.length);for(let B=0;Bv)this._bufs[B].copy(t,m,y),m+=v;else{this._bufs[B].copy(t,m,y,y+f),m+=v;break}f-=v,y&&(y=0)}return t.length>m?t.slice(0,m):t};uE.prototype.shallowSlice=function(t,r){if(t=t||0,r=typeof r!="number"?this.length:r,t<0&&(t+=this.length),r<0&&(r+=this.length),t===r)return this._new();let s=this._offset(t),a=this._offset(r),o=this._bufs.slice(s[0],a[0]+1);return a[1]===0?o.pop():o[o.length-1]=o[o.length-1].slice(0,a[1]),s[1]!==0&&(o[0]=o[0].slice(s[1])),this._new(o)};uE.prototype.toString=function(t,r,s){return this.slice(r,s).toString(t)};uE.prototype.consume=function(t){if(t=Math.trunc(t),Number.isNaN(t)||t<=0)return this;for(;this._bufs.length;)if(t>=this._bufs[0].length)t-=this._bufs[0].length,this.length-=this._bufs[0].length,this._bufs.shift();else{this._bufs[0]=this._bufs[0].slice(t),this.length-=t;break}return this};uE.prototype.duplicate=function(){let t=this._new();for(let r=0;rthis.length?this.length:t;let s=this._offset(t),a=s[0],o=s[1];for(;a=e.length){let f=g.indexOf(e,o);if(f!==-1)return this._reverseOffset([a,f]);o=g.length-e.length+1}else{let f=this._reverseOffset([a,o]);if(this._match(f,e))return f;o++}o=0}return-1};uE.prototype._match=function(e,t){if(this.length-e{"use strict";var _lr=eve().Duplex,y4o=qie(),XMe=L7n();function Rk(e){if(!(this instanceof Rk))return new Rk(e);if(typeof e=="function"){this._callback=e;let t=function(s){this._callback&&(this._callback(s),this._callback=null)}.bind(this);this.on("pipe",function(s){s.on("error",t)}),this.on("unpipe",function(s){s.removeListener("error",t)}),e=null}XMe._init.call(this,e),_lr.call(this)}y4o(Rk,_lr);Object.assign(Rk.prototype,XMe.prototype);Rk.prototype._new=function(t){return new Rk(t)};Rk.prototype._write=function(t,r,s){this._appendBuffer(t),typeof s=="function"&&s()};Rk.prototype._read=function(t){if(!this.length)return this.push(null);t=Math.min(t,this.length),this.push(this.slice(0,t)),this.consume(t)};Rk.prototype.end=function(t){_lr.prototype.end.call(this,t),this._callback&&(this._callback(null,this.slice()),this._callback=null)};Rk.prototype._destroy=function(t,r){this._bufs.length=0,this.length=0,r(t)};Rk.prototype._isBufferList=function(t){return t instanceof Rk||t instanceof XMe||Rk.isBufferList(t)};Rk.isBufferList=XMe.isBufferList;Uft.exports=Rk;Uft.exports.BufferListStream=Rk;Uft.exports.BufferList=XMe});var Blr=z(rve=>{var b4o=Buffer.alloc,E4o="0000000000000000000",B4o="7777777777777777777",V7n=48,W7n=Buffer.from("ustar\0","binary"),v4o=Buffer.from("00","binary"),S4o=Buffer.from("ustar ","binary"),w4o=Buffer.from(" \0","binary"),T4o=parseInt("7777",8),JMe=257,Elr=263,N4o=function(e,t,r){return typeof e!="number"?r:(e=~~e,e>=t?t:e>=0||(e+=t,e>=0)?e:0)},R4o=function(e){switch(e){case 0:return"file";case 1:return"link";case 2:return"symlink";case 3:return"character-device";case 4:return"block-device";case 5:return"directory";case 6:return"fifo";case 7:return"contiguous-file";case 72:return"pax-header";case 55:return"pax-global-header";case 27:return"gnu-long-link-path";case 28:case 30:return"gnu-long-path"}return null},D4o=function(e){switch(e){case"file":return 0;case"link":return 1;case"symlink":return 2;case"character-device":return 3;case"block-device":return 4;case"directory":return 5;case"fifo":return 6;case"contiguous-file":return 7;case"pax-header":return 72}return 0},P7n=function(e,t,r,s){for(;rt?B4o.slice(0,t)+" ":E4o.slice(0,t-e.length)+e+" "};function x4o(e){var t;if(e[0]===128)t=!0;else if(e[0]===255)t=!1;else return null;for(var r=[],s=e.length-1;s>0;s--){var a=e[s];t?r.push(a):r.push(255-a)}var o=0,g=r.length;for(s=0;s=Math.pow(10,r)&&r++,t+r+e};rve.decodeLongPath=function(e,t){return tve(e,0,e.length,t)};rve.encodePax=function(e){var t="";e.name&&(t+=blr(" path="+e.name+` -`)),e.linkname&&(t+=blr(" linkpath="+e.linkname+` -`));var r=e.pax;if(r)for(var s in r)t+=blr(" "+s+"="+r[s]+` -`);return Buffer.from(t)};rve.decodePax=function(e){for(var t={};e.length;){for(var r=0;r100;){var a=r.indexOf("/");if(a===-1)return null;s+=s?"/"+r.slice(0,a):r.slice(0,a),r=r.slice(a+1)}return Buffer.byteLength(r)>100||Buffer.byteLength(s)>155||e.linkname&&Buffer.byteLength(e.linkname)>100?null:(t.write(r),t.write(nse(e.mode&T4o,6),100),t.write(nse(e.uid,6),108),t.write(nse(e.gid,6),116),t.write(nse(e.size,11),124),t.write(nse(e.mtime.getTime()/1e3|0,11),136),t[156]=V7n+D4o(e.type),e.linkname&&t.write(e.linkname,157),W7n.copy(t,JMe),v4o.copy(t,Elr),e.uname&&t.write(e.uname,265),e.gname&&t.write(e.gname,297),t.write(nse(e.devmajor||0,6),329),t.write(nse(e.devminor||0,6),337),s&&t.write(s,345),t.write(nse(O7n(t),6),148),t)};rve.decode=function(e,t,r){var s=e[156]===0?0:e[156]-V7n,a=tve(e,0,100,t),o=ise(e,100,8),g=ise(e,108,8),p=ise(e,116,8),f=ise(e,124,12),m=ise(e,136,12),y=R4o(s),B=e[157]===0?null:tve(e,157,100,t),v=tve(e,265,32),G=tve(e,297,32),T=ise(e,329,8),O=ise(e,337,8),X=O7n(e);if(X===8*32)return null;if(X!==ise(e,148,8))throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?");if(W7n.compare(e,JMe,JMe+6)===0)e[345]&&(a=tve(e,345,155,t)+"/"+a);else if(!(S4o.compare(e,JMe,JMe+6)===0&&w4o.compare(e,Elr,Elr+2)===0)){if(!r)throw new Error("Invalid tar header: unknown format.")}return s===0&&a&&a[a.length-1]==="/"&&(s=5),{name:a,mode:o,uid:g,gid:p,size:f,mtime:new Date(1e3*m),type:y,linkname:B,uname:v,gname:G,devmajor:T,devminor:O}}});var U7n=z((_dl,J7n)=>{var Q7n=Dt("util"),k4o=ylr(),UMe=Blr(),Y7n=eve().Writable,H7n=eve().PassThrough,X7n=function(){},M7n=function(e){return e&=511,e&&512-e},G4o=function(e,t){var r=new Kft(e,t);return r.end(),r},F4o=function(e,t){return t.path&&(e.name=t.path),t.linkpath&&(e.linkname=t.linkpath),t.size&&(e.size=parseInt(t.size,10)),e.pax=t,e},Kft=function(e,t){this._parent=e,this.offset=t,H7n.call(this,{autoDestroy:!1})};Q7n.inherits(Kft,H7n);Kft.prototype.destroy=function(e){this._parent.destroy(e)};var bz=function(e){if(!(this instanceof bz))return new bz(e);Y7n.call(this,e),e=e||{},this._offset=0,this._buffer=k4o(),this._missing=0,this._partial=!1,this._onparse=X7n,this._header=null,this._stream=null,this._overflow=null,this._cb=null,this._locked=!1,this._destroyed=!1,this._pax=null,this._paxGlobal=null,this._gnuLongPath=null,this._gnuLongLinkPath=null;var t=this,r=t._buffer,s=function(){t._continue()},a=function(v){if(t._locked=!1,v)return t.destroy(v);t._stream||s()},o=function(){t._stream=null;var v=M7n(t._header.size);v?t._parse(v,g):t._parse(512,B),t._locked||s()},g=function(){t._buffer.consume(M7n(t._header.size)),t._parse(512,B),s()},p=function(){var v=t._header.size;t._paxGlobal=UMe.decodePax(r.slice(0,v)),r.consume(v),o()},f=function(){var v=t._header.size;t._pax=UMe.decodePax(r.slice(0,v)),t._paxGlobal&&(t._pax=Object.assign({},t._paxGlobal,t._pax)),r.consume(v),o()},m=function(){var v=t._header.size;this._gnuLongPath=UMe.decodeLongPath(r.slice(0,v),e.filenameEncoding),r.consume(v),o()},y=function(){var v=t._header.size;this._gnuLongLinkPath=UMe.decodeLongPath(r.slice(0,v),e.filenameEncoding),r.consume(v),o()},B=function(){var v=t._offset,G;try{G=t._header=UMe.decode(r.slice(0,512),e.filenameEncoding,e.allowUnknownFormat)}catch(T){t.emit("error",T)}if(r.consume(512),!G){t._parse(512,B),s();return}if(G.type==="gnu-long-path"){t._parse(G.size,m),s();return}if(G.type==="gnu-long-link-path"){t._parse(G.size,y),s();return}if(G.type==="pax-global-header"){t._parse(G.size,p),s();return}if(G.type==="pax-header"){t._parse(G.size,f),s();return}if(t._gnuLongPath&&(G.name=t._gnuLongPath,t._gnuLongPath=null),t._gnuLongLinkPath&&(G.linkname=t._gnuLongLinkPath,t._gnuLongLinkPath=null),t._pax&&(t._header=G=F4o(G,t._pax),t._pax=null),t._locked=!0,!G.size||G.type==="directory"){t._parse(512,B),t.emit("entry",G,G4o(t,v),a);return}t._stream=new Kft(t,v),t.emit("entry",G,t._stream,a),t._parse(G.size,o),s()};this._onheader=B,this._parse(512,B)};Q7n.inherits(bz,Y7n);bz.prototype.destroy=function(e){this._destroyed||(this._destroyed=!0,e&&this.emit("error",e),this.emit("close"),this._stream&&this._stream.emit("close"))};bz.prototype._parse=function(e,t){this._destroyed||(this._offset+=e,this._missing=e,t===this._onheader&&(this._partial=!1),this._onparse=t)};bz.prototype._continue=function(){if(!this._destroyed){var e=this._cb;this._cb=X7n,this._overflow?this._write(this._overflow,void 0,e):e()}};bz.prototype._write=function(e,t,r){if(!this._destroyed){var s=this._stream,a=this._buffer,o=this._missing;if(e.length&&(this._partial=!0),e.lengtho&&(g=e.slice(o),e=e.slice(0,o)),s?s.end(e):a.append(e),this._overflow=g,this._onparse()}};bz.prototype._final=function(e){if(this._partial)return this.destroy(new Error("Unexpected end of data"));e()};J7n.exports=bz});var j7n=z((ydl,K7n)=>{K7n.exports=Dt("fs").constants||Dt("constants")});var tjn=z((bdl,ejn)=>{var nve=j7n(),z7n=hXt(),zft=qie(),Z4o=Buffer.alloc,q7n=eve().Readable,ive=eve().Writable,L4o=Dt("string_decoder").StringDecoder,jft=Blr(),V4o=parseInt("755",8),W4o=parseInt("644",8),$7n=Z4o(1024),Slr=function(){},vlr=function(e,t){t&=511,t&&e.push($7n.slice(0,512-t))};function P4o(e){switch(e&nve.S_IFMT){case nve.S_IFBLK:return"block-device";case nve.S_IFCHR:return"character-device";case nve.S_IFDIR:return"directory";case nve.S_IFIFO:return"fifo";case nve.S_IFLNK:return"symlink"}return"file"}var qft=function(e){ive.call(this),this.written=0,this._to=e,this._destroyed=!1};zft(qft,ive);qft.prototype._write=function(e,t,r){if(this.written+=e.length,this._to.push(e))return r();this._to._drain=r};qft.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var $ft=function(){ive.call(this),this.linkname="",this._decoder=new L4o("utf-8"),this._destroyed=!1};zft($ft,ive);$ft.prototype._write=function(e,t,r){this.linkname+=this._decoder.write(e),r()};$ft.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var KMe=function(){ive.call(this),this._destroyed=!1};zft(KMe,ive);KMe.prototype._write=function(e,t,r){r(new Error("No body allowed for this entry"))};KMe.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var DU=function(e){if(!(this instanceof DU))return new DU(e);q7n.call(this,e),this._drain=Slr,this._finalized=!1,this._finalizing=!1,this._destroyed=!1,this._stream=null};zft(DU,q7n);DU.prototype.entry=function(e,t,r){if(this._stream)throw new Error("already piping an entry");if(!(this._finalized||this._destroyed)){typeof t=="function"&&(r=t,t=null),r||(r=Slr);var s=this;if((!e.size||e.type==="symlink")&&(e.size=0),e.type||(e.type=P4o(e.mode)),e.mode||(e.mode=e.type==="directory"?V4o:W4o),e.uid||(e.uid=0),e.gid||(e.gid=0),e.mtime||(e.mtime=new Date),typeof t=="string"&&(t=Buffer.from(t)),Buffer.isBuffer(t)){e.size=t.length,this._encode(e);var a=this.push(t);return vlr(s,e.size),a?process.nextTick(r):this._drain=r,new KMe}if(e.type==="symlink"&&!e.linkname){var o=new $ft;return z7n(o,function(p){if(p)return s.destroy(),r(p);e.linkname=o.linkname,s._encode(e),r()}),o}if(this._encode(e),e.type!=="file"&&e.type!=="contiguous-file")return process.nextTick(r),new KMe;var g=new qft(this);return this._stream=g,z7n(g,function(p){if(s._stream=null,p)return s.destroy(),r(p);if(g.written!==e.size)return s.destroy(),r(new Error("size mismatch"));vlr(s,e.size),s._finalizing&&s.finalize(),r()}),g}};DU.prototype.finalize=function(){if(this._stream){this._finalizing=!0;return}this._finalized||(this._finalized=!0,this.push($7n),this.push(null))};DU.prototype.destroy=function(e){this._destroyed||(this._destroyed=!0,e&&this.emit("error",e),this.emit("close"),this._stream&&this._stream.destroy&&this._stream.destroy())};DU.prototype._encode=function(e){if(!e.pax){var t=jft.encode(e);if(t){this.push(t);return}}this._encodePax(e)};DU.prototype._encodePax=function(e){var t=jft.encodePax({name:e.name,linkname:e.linkname,pax:e.pax}),r={name:"PaxHeader",mode:e.mode,uid:e.uid,gid:e.gid,size:t.length,mtime:e.mtime,type:"pax-header",linkname:e.linkname&&"PaxHeader",uname:e.uname,gname:e.gname,devmajor:e.devmajor,devminor:e.devminor};this.push(jft.encode(r)),this.push(t),vlr(this,t.length),r.size=e.size,r.type=e.type,this.push(jft.encode(r))};DU.prototype._read=function(e){var t=this._drain;this._drain=Slr,t()};ejn.exports=DU});var rjn=z(wlr=>{wlr.extract=U7n();wlr.pack=tjn()});var Tlr=z(pM=>{"use strict";Object.defineProperty(pM,"__esModule",{value:!0});pM.genPackList=pM.genPackageManifest=pM.genPackStream=pM.prepareForPack=pM.hasPackScripts=void 0;var ajn=(Ma(),Ai(Oa)),jMe=Bn(),SC=Ro(),njn=ajn.__importDefault(sk()),O4o=ajn.__importDefault(rjn()),M4o=Dt("zlib"),Q4o=["/package.json","/readme","/readme.*","/license","/license.*","/licence","/licence.*","/changelog","/changelog.*"],Y4o=["/package.tgz",".github",".git",".hg","node_modules",".npmignore",".gitignore",".#*",".DS_Store"];async function H4o(e){return!!(jMe.scriptUtils.hasWorkspaceScript(e,"prepack")||jMe.scriptUtils.hasWorkspaceScript(e,"postpack"))}pM.hasPackScripts=H4o;async function X4o(e,{report:t},r){await jMe.scriptUtils.maybeExecuteWorkspaceLifecycleScript(e,"prepack",{report:t});try{let s=SC.ppath.join(e.cwd,jMe.Manifest.fileName);await SC.xfs.existsPromise(s)&&await e.manifest.loadFile(s,{baseFs:SC.xfs}),await r()}finally{await jMe.scriptUtils.maybeExecuteWorkspaceLifecycleScript(e,"postpack",{report:t})}}pM.prepareForPack=X4o;async function J4o(e,t){typeof t>"u"&&(t=await ljn(e));let r=new Set;for(let o of e.manifest.publishConfig?.executableFiles??new Set)r.add(SC.ppath.normalize(o));for(let o of e.manifest.bin.values())r.add(SC.ppath.normalize(o));let s=O4o.default.pack();process.nextTick(async()=>{for(let o of t){let g=SC.ppath.normalize(o),p=SC.ppath.resolve(e.cwd,g),f=SC.ppath.join("package",g),m=await SC.xfs.lstatPromise(p),y={name:f,mtime:new Date(SC.constants.SAFE_TIME*1e3)},B=r.has(g)?493:420,v,G,T=new Promise((X,U)=>{v=X,G=U}),O=X=>{X?G(X):v()};if(m.isFile()){let X;g==="package.json"?X=Buffer.from(JSON.stringify(await cjn(e),null,2)):X=await SC.xfs.readFilePromise(p),s.entry({...y,mode:B,type:"file"},X,O)}else m.isSymbolicLink()?s.entry({...y,mode:B,type:"symlink",linkname:await SC.xfs.readlinkPromise(p)},O):O(new Error(`Unsupported file type ${m.mode} for ${SC.npath.fromPortablePath(g)}`));await T}s.finalize()});let a=(0,M4o.createGzip)();return s.pipe(a),a}pM.genPackStream=J4o;async function cjn(e){let t=JSON.parse(JSON.stringify(e.manifest.raw));return await e.project.configuration.triggerHook(r=>r.beforeWorkspacePacking,e,t),t}pM.genPackageManifest=cjn;async function ljn(e){let t=e.project,r=t.configuration,s={accept:[],reject:[]};for(let B of Y4o)s.reject.push(B);for(let B of Q4o)s.accept.push(B);s.reject.push(r.get("rcFilename"));let a=B=>{if(B===null||!B.startsWith(`${e.cwd}/`))return;let v=SC.ppath.relative(e.cwd,B),G=SC.ppath.resolve(SC.PortablePath.root,v);s.reject.push(G)};a(SC.ppath.resolve(t.cwd,SC.Filename.lockfile)),a(r.get("cacheFolder")),a(r.get("globalFolder")),a(r.get("installStatePath")),a(r.get("virtualFolder")),a(r.get("yarnPath")),await r.triggerHook(B=>B.populateYarnPaths,t,B=>{a(B)});for(let B of t.workspaces){let v=SC.ppath.relative(e.cwd,B.cwd);v!==""&&!v.match(/^(\.\.)?\//)&&s.reject.push(`/${v}`)}let o={accept:[],reject:[]},g=e.manifest.publishConfig?.main??e.manifest.main,p=e.manifest.publishConfig?.module??e.manifest.module,f=e.manifest.publishConfig?.browser??e.manifest.browser,m=e.manifest.publishConfig?.bin??e.manifest.bin;g!=null&&o.accept.push(SC.ppath.resolve(SC.PortablePath.root,g)),p!=null&&o.accept.push(SC.ppath.resolve(SC.PortablePath.root,p)),typeof f=="string"&&o.accept.push(SC.ppath.resolve(SC.PortablePath.root,f));for(let B of m.values())o.accept.push(SC.ppath.resolve(SC.PortablePath.root,B));if(f instanceof Map)for(let[B,v]of f.entries())o.accept.push(SC.ppath.resolve(SC.PortablePath.root,B)),typeof v=="string"&&o.accept.push(SC.ppath.resolve(SC.PortablePath.root,v));let y=e.manifest.files!==null;if(y){o.reject.push("/*");for(let B of e.manifest.files)ujn(o.accept,B,{cwd:SC.PortablePath.root})}return await U4o(e.cwd,{hasExplicitFileList:y,globalList:s,ignoreList:o})}pM.genPackList=ljn;async function U4o(e,{hasExplicitFileList:t,globalList:r,ignoreList:s}){let a=[],o=new SC.JailFS(e),g=[[SC.PortablePath.root,[s]]];for(;g.length>0;){let[p,f]=g.pop(),m=await o.lstatPromise(p);if(!sjn(p,{globalList:r,ignoreLists:m.isDirectory()?null:f}))if(m.isDirectory()){let y=await o.readdirPromise(p),B=!1,v=!1;if(!t||p!==SC.PortablePath.root)for(let O of y)B=B||O===".gitignore",v=v||O===".npmignore";let G=v?await ijn(o,p,".npmignore"):B?await ijn(o,p,".gitignore"):null,T=G!==null?[G].concat(f):f;sjn(p,{globalList:r,ignoreLists:f})&&(T=[...f,{accept:[],reject:["**/*"]}]);for(let O of y)g.push([SC.ppath.resolve(p,O),T])}else(m.isFile()||m.isSymbolicLink())&&a.push(SC.ppath.relative(SC.PortablePath.root,p))}return a.sort()}async function ijn(e,t,r){let s={accept:[],reject:[]},a=await e.readFilePromise(SC.ppath.join(t,r),"utf8");for(let o of a.split(/\n/g))ujn(s.reject,o,{cwd:t});return s}function K4o(e,{cwd:t}){let r=e[0]==="!";return r&&(e=e.slice(1)),e.match(/\.{0,1}\//)&&(e=SC.ppath.resolve(t,e)),r&&(e=`!${e}`),e}function ujn(e,t,{cwd:r}){let s=t.trim();s===""||s[0]==="#"||e.push(K4o(s,{cwd:r}))}var XW;(function(e){e[e.None=0]="None",e[e.Match=1]="Match",e[e.NegatedMatch=2]="NegatedMatch"})(XW||(XW={}));function sjn(e,{globalList:t,ignoreLists:r}){let s=eIt(e,t.accept);if(s!==XW.None)return s===XW.NegatedMatch;let a=eIt(e,t.reject);if(a!==XW.None)return a===XW.Match;if(r!==null)for(let o of r){let g=eIt(e,o.accept);if(g!==XW.None)return g===XW.NegatedMatch;let p=eIt(e,o.reject);if(p!==XW.None)return p===XW.Match}return!1}function eIt(e,t){let r=t,s=[];for(let a=0;a{"use strict";Object.defineProperty(Nlr,"__esModule",{value:!0});var j4o=(Ma(),Ai(Oa)),gjn=nl(),Ez=Bn(),sse=Ro(),sve=(Fl(),Ai(dg)),tIt=j4o.__importStar(Tlr()),zMe=class extends gjn.BaseCommand{constructor(){super(...arguments),this.installIfNeeded=sve.Option.Boolean("--install-if-needed",!1,{description:"Run a preliminary `yarn install` if the package contains build scripts"}),this.dryRun=sve.Option.Boolean("-n,--dry-run",!1,{description:"Print the file paths without actually generating the package archive"}),this.json=sve.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.out=sve.Option.String("-o,--out",{description:"Create the archive at the specified path"}),this.filename=sve.Option.String("--filename",{hidden:!0})}async execute(){let t=await Ez.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await Ez.Project.find(t,this.context.cwd);if(!s)throw new gjn.WorkspaceRequiredError(r.cwd,this.context.cwd);await tIt.hasPackScripts(s)&&(this.installIfNeeded?await r.install({cache:await Ez.Cache.find(t),report:new Ez.ThrowReport}):await r.restoreInstallState());let a=this.out??this.filename,o=typeof a<"u"?sse.ppath.resolve(this.context.cwd,z4o(a,{workspace:s})):sse.ppath.resolve(s.cwd,"package.tgz");return(await Ez.StreamReport.start({configuration:t,stdout:this.context.stdout,json:this.json},async p=>{await tIt.prepareForPack(s,{report:p},async()=>{p.reportJson({base:sse.npath.fromPortablePath(s.cwd)});let f=await tIt.genPackList(s);for(let m of f)p.reportInfo(null,sse.npath.fromPortablePath(m)),p.reportJson({location:sse.npath.fromPortablePath(m)});if(!this.dryRun){let m=await tIt.genPackStream(s,f),y=sse.xfs.createWriteStream(o);m.pipe(y),await new Promise(B=>{y.on("finish",B)})}}),this.dryRun||(p.reportInfo(Ez.MessageName.UNNAMED,`Package archive generated in ${Ez.formatUtils.pretty(t,o,Ez.formatUtils.Type.PATH)}`),p.reportJson({output:sse.npath.fromPortablePath(o)}))})).exitCode()}};zMe.paths=[["pack"]];zMe.usage=sve.Command.Usage({description:"generate a tarball from the active workspace",details:"\n This command will turn the active workspace into a compressed archive suitable for publishing. The archive will by default be stored at the root of the workspace (`package.tgz`).\n\n If the `-o,---out` is set the archive will be created at the specified path. The `%s` and `%v` variables can be used within the path and will be respectively replaced by the package name and version.\n ",examples:[["Create an archive from the active workspace","yarn pack"],["List the files that would be made part of the workspace's archive","yarn pack --dry-run"],["Name and output the archive in a dedicated folder","yarn pack --out /artifacts/%s-%v.tgz"]]});Nlr.default=zMe;function z4o(e,{workspace:t}){let r=e.replace("%s",q4o(t)).replace("%v",$4o(t));return sse.npath.toPortablePath(r)}function q4o(e){return e.manifest.name!==null?Ez.structUtils.slugifyIdent(e.manifest.name):"package"}function $4o(e){return e.manifest.version!==null?e.manifest.version:"unknown"}});var vpe=z(Bpe=>{"use strict";Object.defineProperty(Bpe,"__esModule",{value:!0});Bpe.packUtils=Bpe.PackCommand=void 0;var pjn=(Ma(),Ai(Oa)),qMe=Bn(),djn=Bn(),fjn=pjn.__importDefault(Ajn());Bpe.PackCommand=fjn.default;var eJo=pjn.__importStar(Tlr());Bpe.packUtils=eJo;var tJo=["dependencies","devDependencies","peerDependencies"],rJo="workspace:",nJo=(e,t)=>{t.publishConfig&&(t.publishConfig.type&&(t.type=t.publishConfig.type),t.publishConfig.main&&(t.main=t.publishConfig.main),t.publishConfig.browser&&(t.browser=t.publishConfig.browser),t.publishConfig.module&&(t.module=t.publishConfig.module),t.publishConfig.exports&&(t.exports=t.publishConfig.exports),t.publishConfig.imports&&(t.imports=t.publishConfig.imports),t.publishConfig.bin&&(t.bin=t.publishConfig.bin));let r=e.project;for(let s of tJo)for(let a of e.manifest.getForScope(s).values()){let o=r.tryWorkspaceByDescriptor(a),g=qMe.structUtils.parseRange(a.range);if(g.protocol===rJo)if(o===null){if(r.tryWorkspaceByIdent(a)===null)throw new djn.ReportError(djn.MessageName.WORKSPACE_NOT_FOUND,`${qMe.structUtils.prettyDescriptor(r.configuration,a)}: No local workspace found for this range`)}else{let p;qMe.structUtils.areDescriptorsEqual(a,o.anchoredDescriptor)||g.selector==="*"?p=o.manifest.version??"0.0.0":g.selector==="~"||g.selector==="^"?p=`${g.selector}${o.manifest.version??"0.0.0"}`:p=g.selector;let f=s==="dependencies"?qMe.structUtils.makeDescriptor(a,"unknown"):null,m=f!==null&&e.manifest.ensureDependencyMeta(f).optional?"optionalDependencies":s;t[m][qMe.structUtils.stringifyIdent(a)]=p}}},iJo={hooks:{beforeWorkspacePacking:nJo},commands:[fjn.default]};Bpe.default=iJo});var Ejn=z((Tdl,bjn)=>{bjn.exports=typeof queueMicrotask=="function"?queueMicrotask:e=>Promise.resolve().then(e)});var vjn=z((Ndl,Bjn)=>{Bjn.exports=typeof process<"u"&&typeof process.nextTick=="function"?process.nextTick.bind(process):Ejn()});var wjn=z((Ddl,Sjn)=>{Sjn.exports=class{constructor(t){if(!(t>0)||t-1&t)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(t),this.mask=t-1,this.top=0,this.btm=0,this.next=null}clear(){this.top=this.btm=0,this.next=null,this.buffer.fill(void 0)}push(t){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=t,this.top=this.top+1&this.mask,!0)}shift(){let t=this.buffer[this.btm];if(t!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,t}peek(){return this.buffer[this.btm]}isEmpty(){return this.buffer[this.btm]===void 0}}});var xlr=z((kdl,Njn)=>{var Tjn=wjn();Njn.exports=class{constructor(t){this.hwm=t||16,this.head=new Tjn(this.hwm),this.tail=this.head,this.length=0}clear(){this.head=this.tail,this.head.clear(),this.length=0}push(t){if(this.length++,!this.head.push(t)){let r=this.head;this.head=r.next=new Tjn(2*this.head.buffer.length),this.head.push(t)}}shift(){this.length!==0&&this.length--;let t=this.tail.shift();if(t===void 0&&this.tail.next){let r=this.tail.next;return this.tail.next=null,this.tail=r,this.tail.shift()}return t}peek(){let t=this.tail.peek();return t===void 0&&this.tail.next?this.tail.next.peek():t}isEmpty(){return this.length===0}}});var Djn=z((Fdl,Rjn)=>{Rjn.exports=class{constructor(t){this.encoding=t}get remaining(){return 0}decode(t){return t.toString(this.encoding)}flush(){return""}}});var kjn=z((Ldl,xjn)=>{xjn.exports=class{constructor(){this.codePoint=0,this.bytesSeen=0,this.bytesNeeded=0,this.lowerBoundary=128,this.upperBoundary=191}get remaining(){return this.bytesSeen}decode(t){if(this.bytesNeeded===0){let s=!0;for(let a=Math.max(0,t.byteLength-4),o=t.byteLength;a=194&&o<=223?(this.bytesNeeded=2,this.codePoint=o&31):o>=224&&o<=239?(o===224?this.lowerBoundary=160:o===237&&(this.upperBoundary=159),this.bytesNeeded=3,this.codePoint=o&15):o>=240&&o<=244?(o===240&&(this.lowerBoundary=144),o===244&&(this.upperBoundary=143),this.bytesNeeded=4,this.codePoint=o&7):r+="\uFFFD");continue}if(othis.upperBoundary){this.codePoint=0,this.bytesNeeded=0,this.bytesSeen=0,this.lowerBoundary=128,this.upperBoundary=191,r+="\uFFFD";continue}this.lowerBoundary=128,this.upperBoundary=191,this.codePoint=this.codePoint<<6|o&63,this.bytesSeen++,this.bytesSeen===this.bytesNeeded&&(r+=String.fromCodePoint(this.codePoint),this.codePoint=0,this.bytesNeeded=0,this.bytesSeen=0)}return r}flush(){let t=this.bytesNeeded>0?"\uFFFD":"";return this.codePoint=0,this.bytesNeeded=0,this.bytesSeen=0,this.lowerBoundary=128,this.upperBoundary=191,t}}});var Fjn=z((Wdl,Gjn)=>{var sJo=Djn(),oJo=kjn();Gjn.exports=class{constructor(t="utf8"){switch(this.encoding=aJo(t),this.encoding){case"utf8":this.decoder=new oJo;break;case"utf16le":case"base64":throw new Error("Unsupported encoding: "+this.encoding);default:this.decoder=new sJo(this.encoding)}}get remaining(){return this.decoder.remaining}push(t){return typeof t=="string"?t:this.decoder.decode(t)}write(t){return this.push(t)}end(t){let r="";return t&&(r=this.push(t)),r+=this.decoder.flush(),r}};function aJo(e){switch(e=e.toLowerCase(),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:throw new Error("Unknown encoding: "+e)}}});var Ulr=z((Pdl,ozn)=>{var{EventEmitter:cJo}=Dt("events"),cIt=new Error("Stream was destroyed"),klr=new Error("Premature close"),Ojn=vjn(),Mjn=xlr(),lJo=Fjn(),lB=(1<<29)-1,Rpe=1,Plr=2,Spe=4,$Me=8,Qjn=lB^Rpe,uJo=lB^Plr,sQe=16,eQe=32,uve=64,ose=128,oQe=256,Olr=512,wpe=1024,Glr=2048,Mlr=4096,Qlr=8192,s5=16384,ove=32768,lIt=65536,Tpe=131072,Yjn=oQe|Olr,gJo=sQe|lIt,AJo=uve|sQe,dJo=Mlr|ose,Ylr=oQe|Tpe,pJo=lB^sQe,fJo=lB^uve,IJo=lB^(uve|lIt),Zjn=lB^lIt,CJo=lB^oQe,mJo=lB^(ose|Qlr),hJo=lB^wpe,Ljn=lB^Yjn,Hjn=lB^ove,_Jo=lB^eQe,Xjn=lB^Tpe,yJo=lB^Ylr,ase=1<<18,cve=2<<18,aQe=4<<18,Npe=8<<18,cQe=16<<18,Dpe=32<<18,Flr=64<<18,ave=128<<18,Hlr=256<<18,lve=512<<18,uIt=1024<<18,Jjn=lB^(ase|Hlr),Ujn=lB^aQe,bJo=lB^lve,EJo=lB^cQe,BJo=lB^Npe,Kjn=lB^ave,vJo=lB^cve,jjn=lB^uIt,tQe=sQe|ase,zjn=lB^tQe,Xlr=s5|Dpe,Bz=Spe|$Me|Plr,JW=Bz|Rpe,qjn=Bz|Xlr,SJo=Ujn&fJo,Jlr=ave|ove,wJo=Jlr&zjn,$jn=JW|wJo,TJo=JW|wpe|s5,Vjn=JW|s5|ose,NJo=JW|wpe|ose,RJo=JW|Mlr|ose|Qlr,DJo=JW|sQe|wpe|s5|lIt|Tpe,xJo=Bz|wpe|s5,kJo=eQe|JW|ove|uve,GJo=JW|lve|Dpe,FJo=Npe|cQe,ezn=Npe|ase,ZJo=Npe|cQe|JW|ase,Wjn=JW|ase|Npe|uIt,LJo=aQe|ase,VJo=ase|Hlr,WJo=JW|lve|ezn|Dpe,PJo=cQe|Bz|lve|Dpe,OJo=cve|JW|ave|aQe,nIt=Symbol.asyncIterator||Symbol("asyncIterator"),iIt=class{constructor(t,{highWaterMark:r=16384,map:s=null,mapWritable:a,byteLength:o,byteLengthWritable:g}={}){this.stream=t,this.queue=new Mjn,this.highWaterMark=r,this.buffered=0,this.error=null,this.pipeline=null,this.drains=null,this.byteLength=g||o||szn,this.map=a||s,this.afterWrite=YJo.bind(this),this.afterUpdateNextTick=JJo.bind(this)}get ended(){return(this.stream._duplexState&Dpe)!==0}push(t){return this.map!==null&&(t=this.map(t)),this.buffered+=this.byteLength(t),this.queue.push(t),this.buffered0,this.error=null,this.pipeline=null,this.byteLength=g||o||szn,this.map=a||s,this.pipeTo=null,this.afterRead=HJo.bind(this),this.afterUpdateNextTick=XJo.bind(this)}get ended(){return(this.stream._duplexState&s5)!==0}pipe(t,r){if(this.pipeTo!==null)throw new Error("Can only pipe to one destination");if(typeof r!="function"&&(r=null),this.stream._duplexState|=Olr,this.pipeTo=t,this.pipeline=new Vlr(this.stream,t,r),r&&this.stream.on("error",Pjn),iQe(t))t._writableState.pipeline=this.pipeline,r&&t.on("error",Pjn),t.on("finish",this.pipeline.finished.bind(this.pipeline));else{let s=this.pipeline.done.bind(this.pipeline,t),a=this.pipeline.done.bind(this.pipeline,t,null);t.on("error",s),t.on("close",a),t.on("finish",this.pipeline.finished.bind(this.pipeline))}t.on("drain",MJo.bind(this)),this.stream.emit("piping",t),t.emit("pipe",this.stream)}push(t){let r=this.stream;return t===null?(this.highWaterMark=0,r._duplexState=(r._duplexState|wpe)&IJo,!1):this.map!==null&&(t=this.map(t),t===null)?(r._duplexState&=Zjn,this.buffered0;)r.push(this.shift());for(let s=0;s0;)s.drains.shift().resolve(!1);s.pipeline!==null&&s.pipeline.done(t,e)}}function YJo(e){let t=this.stream;e&&t.destroy(e),t._duplexState&=Jjn,this.drains!==null&&UJo(this.drains),(t._duplexState&ZJo)===cQe&&(t._duplexState&=EJo,(t._duplexState&Flr)===Flr&&t.emit("drain")),this.updateCallback()}function HJo(e){e&&this.stream.destroy(e),this.stream._duplexState&=pJo,this.readAhead===!1&&!(this.stream._duplexState&oQe)&&(this.stream._duplexState&=Xjn),this.updateCallback()}function XJo(){this.stream._duplexState&eQe||(this.stream._duplexState&=Hjn,this.update())}function JJo(){this.stream._duplexState&cve||(this.stream._duplexState&=Kjn,this.update())}function UJo(e){for(let t=0;t0)?null:s(g)}}_read(t){t(null)}pipe(t,r){return this._readableState.updateNextTick(),this._readableState.pipe(t,r),t}read(){return this._readableState.updateNextTick(),this._readableState.read()}push(t){return this._readableState.updateNextTick(),this._readableState.push(t)}unshift(t){return this._readableState.updateNextTick(),this._readableState.unshift(t)}resume(){return this._duplexState|=Ylr,this._readableState.updateNextTick(),this}pause(){return this._duplexState&=this._readableState.readAhead===!1?yJo:CJo,this}static _fromAsyncIterator(t,r){let s,a=new e({...r,read(g){t.next().then(o).then(g.bind(null,null)).catch(g)},predestroy(){s=t.return()},destroy(g){if(!s)return g(null);s.then(g.bind(null,null)).catch(g)}});return a;function o(g){g.done?a.push(null):a.push(g.value)}}static from(t,r){if(nUo(t))return t;if(t[nIt])return this._fromAsyncIterator(t[nIt](),r);Array.isArray(t)||(t=t===void 0?[]:[t]);let s=0;return new e({...r,read(a){this.push(s===t.length?null:t[s++]),a(null)}})}static isBackpressured(t){return(t._duplexState&xJo)!==0||t._readableState.buffered>=t._readableState.highWaterMark}static isPaused(t){return(t._duplexState&oQe)===0}[nIt](){let t=this,r=null,s=null,a=null;return this.on("error",m=>{r=m}),this.on("readable",o),this.on("close",g),{[nIt](){return this},next(){return new Promise(function(m,y){s=m,a=y;let B=t.read();B!==null?p(B):t._duplexState&$Me&&p(null)})},return(){return f(null)},throw(m){return f(m)}};function o(){s!==null&&p(t.read())}function g(){s!==null&&p(null)}function p(m){a!==null&&(r?a(r):m===null&&!(t._duplexState&s5)?a(cIt):s({value:m,done:m===null}),a=s=null)}function f(m){return t.destroy(m),new Promise((y,B)=>{if(t._duplexState&$Me)return y({value:void 0,done:!0});t.once("close",function(){m?B(m):y({value:void 0,done:!0})})})}}},oIt=class extends rQe{constructor(t){super(t),this._duplexState|=Rpe|s5,this._writableState=new iIt(this,t),t&&(t.writev&&(this._writev=t.writev),t.write&&(this._write=t.write),t.final&&(this._final=t.final),t.eagerOpen&&this._writableState.updateNextTick())}cork(){this._duplexState|=uIt}uncork(){this._duplexState&=jjn,this._writableState.updateNextTick()}_writev(t,r){r(null)}_write(t,r){this._writableState.autoBatch(t,r)}_final(t){t(null)}static isBackpressured(t){return(t._duplexState&PJo)!==0}static drained(t){if(t.destroyed)return Promise.resolve(!1);let r=t._writableState,a=(oUo(t)?Math.min(1,r.queue.length):r.queue.length)+(t._duplexState&Hlr?1:0);return a===0?Promise.resolve(!0):(r.drains===null&&(r.drains=[]),new Promise(o=>{r.drains.push({writes:a,resolve:o})}))}write(t){return this._writableState.updateNextTick(),this._writableState.push(t)}end(t){return this._writableState.updateNextTick(),this._writableState.end(t),this}},nQe=class extends sIt{constructor(t){super(t),this._duplexState=Rpe|this._duplexState&Tpe,this._writableState=new iIt(this,t),t&&(t.writev&&(this._writev=t.writev),t.write&&(this._write=t.write),t.final&&(this._final=t.final))}cork(){this._duplexState|=uIt}uncork(){this._duplexState&=jjn,this._writableState.updateNextTick()}_writev(t,r){r(null)}_write(t,r){this._writableState.autoBatch(t,r)}_final(t){t(null)}write(t){return this._writableState.updateNextTick(),this._writableState.push(t)}end(t){return this._writableState.updateNextTick(),this._writableState.end(t),this}},aIt=class extends nQe{constructor(t){super(t),this._transformState=new Llr(this),t&&(t.transform&&(this._transform=t.transform),t.flush&&(this._flush=t.flush))}_write(t,r){this._readableState.buffered>=this._readableState.highWaterMark?this._transformState.data=t:this._transform(t,this._transformState.afterTransform)}_read(t){if(this._transformState.data!==null){let r=this._transformState.data;this._transformState.data=null,t(null),this._transform(r,this._transformState.afterTransform)}else t(null)}destroy(t){super.destroy(t),this._transformState.data!==null&&(this._transformState.data=null,this._transformState.afterTransform())}_transform(t,r){r(null,t)}_flush(t){t(null)}_final(t){this._transformState.afterFinal=t,this._flush(zJo.bind(this))}},Wlr=class extends aIt{};function zJo(e,t){let r=this._transformState.afterFinal;if(e)return r(e);t!=null&&this.push(t),this.push(null),r(null)}function qJo(...e){return new Promise((t,r)=>nzn(...e,s=>{if(s)return r(s);t()}))}function nzn(e,...t){let r=Array.isArray(e)?[...e,...t]:[e,...t],s=r.length&&typeof r[r.length-1]=="function"?r.pop():null;if(r.length<2)throw new Error("Pipeline requires at least 2 streams");let a=r[0],o=null,g=null;for(let m=1;m1,f),a.pipe(o)),a=o;if(s){let m=!1,y=iQe(o)||!!(o._writableState&&o._writableState.autoDestroy);o.on("error",B=>{g===null&&(g=B)}),o.on("finish",()=>{m=!0,y||s(g)}),y&&o.on("close",()=>s(g||(m?null:klr)))}return o;function p(m,y,B,v){m.on("error",v),m.on("close",G);function G(){if(y&&m._readableState&&!m._readableState.ended||B&&m._writableState&&!m._writableState.ended)return v(klr)}}function f(m){if(!(!m||g)){g=m;for(let y of r)y.destroy(m)}}}function $Jo(e){return e}function izn(e){return!!e._readableState||!!e._writableState}function iQe(e){return typeof e._duplexState=="number"&&izn(e)}function eUo(e){return!!e._readableState&&e._readableState.ended}function tUo(e){return!!e._writableState&&e._writableState.ended}function rUo(e,t={}){let r=e._readableState&&e._readableState.error||e._writableState&&e._writableState.error;return!t.all&&r===cIt?null:r}function nUo(e){return iQe(e)&&e.readable}function iUo(e){return typeof e=="object"&&e!==null&&typeof e.byteLength=="number"}function szn(e){return iUo(e)?e.byteLength:1024}function Pjn(){}function sUo(){this.destroy(new Error("Stream aborted."))}function oUo(e){return e._writev!==oIt.prototype._writev&&e._writev!==nQe.prototype._writev}ozn.exports={pipeline:nzn,pipelinePromise:qJo,isStream:izn,isStreamx:iQe,isEnded:eUo,isFinished:tUo,getStreamError:rUo,Stream:rQe,Writable:oIt,Readable:sIt,Duplex:nQe,Transform:aIt,PassThrough:Wlr}});var gIt=z((Odl,azn)=>{function aUo(e){return Buffer.isBuffer(e)||e instanceof Uint8Array}function cUo(e){return Buffer.isEncoding(e)}function lUo(e,t,r){return Buffer.alloc(e,t,r)}function uUo(e){return Buffer.allocUnsafe(e)}function gUo(e){return Buffer.allocUnsafeSlow(e)}function AUo(e,t){return Buffer.byteLength(e,t)}function dUo(e,t){return Buffer.compare(e,t)}function pUo(e,t){return Buffer.concat(e,t)}function fUo(e,t,r,s,a){return Ly(e).copy(t,r,s,a)}function IUo(e,t){return Ly(e).equals(t)}function CUo(e,t,r,s,a){return Ly(e).fill(t,r,s,a)}function mUo(e,t,r){return Buffer.from(e,t,r)}function hUo(e,t,r,s){return Ly(e).includes(t,r,s)}function _Uo(e,t,r,s){return Ly(e).indexOf(t,r,s)}function yUo(e,t,r,s){return Ly(e).lastIndexOf(t,r,s)}function bUo(e){return Ly(e).swap16()}function EUo(e){return Ly(e).swap32()}function BUo(e){return Ly(e).swap64()}function Ly(e){return Buffer.isBuffer(e)?e:Buffer.from(e.buffer,e.byteOffset,e.byteLength)}function vUo(e,t,r,s){return Ly(e).toString(t,r,s)}function SUo(e,t,r,s,a){return Ly(e).write(t,r,s,a)}function wUo(e,t,r){return Ly(e).writeDoubleLE(t,r)}function TUo(e,t,r){return Ly(e).writeFloatLE(t,r)}function NUo(e,t,r){return Ly(e).writeUInt32LE(t,r)}function RUo(e,t,r){return Ly(e).writeInt32LE(t,r)}function DUo(e,t){return Ly(e).readDoubleLE(t)}function xUo(e,t){return Ly(e).readFloatLE(t)}function kUo(e,t){return Ly(e).readUInt32LE(t)}function GUo(e,t){return Ly(e).readInt32LE(t)}function FUo(e,t,r){return Ly(e).writeDoubleBE(t,r)}function ZUo(e,t,r){return Ly(e).writeFloatBE(t,r)}function LUo(e,t,r){return Ly(e).writeUInt32BE(t,r)}function VUo(e,t,r){return Ly(e).writeInt32BE(t,r)}function WUo(e,t){return Ly(e).readDoubleBE(t)}function PUo(e,t){return Ly(e).readFloatBE(t)}function OUo(e,t){return Ly(e).readUInt32BE(t)}function MUo(e,t){return Ly(e).readInt32BE(t)}azn.exports={isBuffer:aUo,isEncoding:cUo,alloc:lUo,allocUnsafe:uUo,allocUnsafeSlow:gUo,byteLength:AUo,compare:dUo,concat:pUo,copy:fUo,equals:IUo,fill:CUo,from:mUo,includes:hUo,indexOf:_Uo,lastIndexOf:yUo,swap16:bUo,swap32:EUo,swap64:BUo,toBuffer:Ly,toString:vUo,write:SUo,writeDoubleLE:wUo,writeFloatLE:TUo,writeUInt32LE:NUo,writeInt32LE:RUo,readDoubleLE:DUo,readFloatLE:xUo,readUInt32LE:kUo,readInt32LE:GUo,writeDoubleBE:FUo,writeFloatBE:ZUo,writeUInt32BE:LUo,writeInt32BE:VUo,readDoubleBE:WUo,readFloatBE:PUo,readUInt32BE:OUo,readInt32BE:MUo}});var zlr=z(Ave=>{var Ch=gIt(),QUo="0000000000000000000",YUo="7777777777777777777",AIt=48,czn=Ch.from([117,115,116,97,114,0]),HUo=Ch.from([AIt,AIt]),XUo=Ch.from([117,115,116,97,114,32]),JUo=Ch.from([32,0]),UUo=4095,lQe=257,jlr=263;Ave.decodeLongPath=function(t,r){return gve(t,0,t.length,r)};Ave.encodePax=function(t){let r="";t.name&&(r+=Klr(" path="+t.name+` -`)),t.linkname&&(r+=Klr(" linkpath="+t.linkname+` -`));let s=t.pax;if(s)for(let a in s)r+=Klr(" "+a+"="+s[a]+` -`);return Ch.from(r)};Ave.decodePax=function(t){let r={};for(;t.length;){let s=0;for(;s100;){let o=s.indexOf("/");if(o===-1)return null;a+=a?"/"+s.slice(0,o):s.slice(0,o),s=s.slice(o+1)}return Ch.byteLength(s)>100||Ch.byteLength(a)>155||t.linkname&&Ch.byteLength(t.linkname)>100?null:(Ch.write(r,s),Ch.write(r,lse(t.mode&UUo,6),100),Ch.write(r,lse(t.uid,6),108),Ch.write(r,lse(t.gid,6),116),tKo(t.size,r,124),Ch.write(r,lse(t.mtime.getTime()/1e3|0,11),136),r[156]=AIt+$Uo(t.type),t.linkname&&Ch.write(r,t.linkname,157),Ch.copy(czn,r,lQe),Ch.copy(HUo,r,jlr),t.uname&&Ch.write(r,t.uname,265),t.gname&&Ch.write(r,t.gname,297),Ch.write(r,lse(t.devmajor||0,6),329),Ch.write(r,lse(t.devminor||0,6),337),a&&Ch.write(r,a,345),Ch.write(r,lse(uzn(r),6),148),r)};Ave.decode=function(t,r,s){let a=t[156]===0?0:t[156]-AIt,o=gve(t,0,100,r),g=cse(t,100,8),p=cse(t,108,8),f=cse(t,116,8),m=cse(t,124,12),y=cse(t,136,12),B=qUo(a),v=t[157]===0?null:gve(t,157,100,r),G=gve(t,265,32),T=gve(t,297,32),O=cse(t,329,8),X=cse(t,337,8),U=uzn(t);if(U===8*32)return null;if(U!==cse(t,148,8))throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?");if(KUo(t))t[345]&&(o=gve(t,345,155,r)+"/"+o);else if(!jUo(t)){if(!s)throw new Error("Invalid tar header: unknown format.")}return a===0&&o&&o[o.length-1]==="/"&&(a=5),{name:o,mode:g,uid:p,gid:f,size:m,mtime:new Date(1e3*y),type:B,linkname:v,uname:G,gname:T,devmajor:O,devminor:X,pax:null}};function KUo(e){return Ch.equals(czn,e.subarray(lQe,lQe+6))}function jUo(e){return Ch.equals(XUo,e.subarray(lQe,lQe+6))&&Ch.equals(JUo,e.subarray(jlr,jlr+2))}function zUo(e,t,r){return typeof e!="number"?r:(e=~~e,e>=t?t:e>=0||(e+=t,e>=0)?e:0)}function qUo(e){switch(e){case 0:return"file";case 1:return"link";case 2:return"symlink";case 3:return"character-device";case 4:return"block-device";case 5:return"directory";case 6:return"fifo";case 7:return"contiguous-file";case 72:return"pax-header";case 55:return"pax-global-header";case 27:return"gnu-long-link-path";case 28:case 30:return"gnu-long-path"}return null}function $Uo(e){switch(e){case"file":return 0;case"link":return 1;case"symlink":return 2;case"character-device":return 3;case"block-device":return 4;case"directory":return 5;case"fifo":return 6;case"contiguous-file":return 7;case"pax-header":return 72}return 0}function lzn(e,t,r,s){for(;rt?YUo.slice(0,t)+" ":QUo.slice(0,t-e.length)+e+" "}function eKo(e,t,r){t[r]=128;for(let s=11;s>0;s--)t[r+s]=e&255,e=Math.floor(e/256)}function tKo(e,t,r){e.toString(8).length>11?eKo(e,t,r):Ch.write(t,lse(e,11),r)}function rKo(e){let t;if(e[0]===128)t=!0;else if(e[0]===255)t=!1;else return null;let r=[],s;for(s=e.length-1;s>0;s--){let g=e[s];t?r.push(g):r.push(255-g)}let a=0,o=r.length;for(s=0;s=Math.pow(10,r)&&r++,t+r+e}});var fzn=z((Qdl,pzn)=>{var{Writable:nKo,Readable:iKo,getStreamError:gzn}=Ulr(),sKo=xlr(),Azn=gIt(),dve=zlr(),oKo=Azn.alloc(0),$lr=class{constructor(){this.buffered=0,this.shifted=0,this.queue=new sKo,this._offset=0}push(t){this.buffered+=t.byteLength,this.queue.push(t)}shiftFirst(t){return this._buffered===0?null:this._next(t)}shift(t){if(t>this.buffered)return null;if(t===0)return oKo;let r=this._next(t);if(t===r.byteLength)return r;let s=[r];for(;(t-=r.byteLength)>0;)r=this._next(t),s.push(r);return Azn.concat(s)}_next(t){let r=this.queue.peek(),s=r.byteLength-this._offset;if(t>=s){let a=this._offset?r.subarray(this._offset,r.byteLength):r;return this.queue.shift(),this._offset=0,this.buffered-=s,this.shifted+=s,a}return this.buffered-=t,this.shifted+=t,r.subarray(this._offset,this._offset+=t)}},eur=class extends iKo{constructor(t,r,s){super(),this.header=r,this.offset=s,this._parent=t}_read(t){this.header.size===0&&this.push(null),this._parent._stream===this&&this._parent._update(),t(null)}_predestroy(){this._parent.destroy(gzn(this))}_detach(){this._parent._stream===this&&(this._parent._stream=null,this._parent._missing=dzn(this.header.size),this._parent._update())}_destroy(t){this._detach(),t(null)}},tur=class extends nKo{constructor(t){super(t),t||(t={}),this._buffer=new $lr,this._offset=0,this._header=null,this._stream=null,this._missing=0,this._longHeader=!1,this._callback=qlr,this._locked=!1,this._finished=!1,this._pax=null,this._paxGlobal=null,this._gnuLongPath=null,this._gnuLongLinkPath=null,this._filenameEncoding=t.filenameEncoding||"utf-8",this._allowUnknownFormat=!!t.allowUnknownFormat,this._unlockBound=this._unlock.bind(this)}_unlock(t){if(this._locked=!1,t){this.destroy(t),this._continueWrite(t);return}this._update()}_consumeHeader(){if(this._locked)return!1;this._offset=this._buffer.shifted;try{this._header=dve.decode(this._buffer.shift(512),this._filenameEncoding,this._allowUnknownFormat)}catch(t){return this._continueWrite(t),!1}if(!this._header)return!0;switch(this._header.type){case"gnu-long-path":case"gnu-long-link-path":case"pax-global-header":case"pax-header":return this._longHeader=!0,this._missing=this._header.size,!0}return this._locked=!0,this._applyLongHeaders(),this._header.size===0||this._header.type==="directory"?(this.emit("entry",this._header,this._createStream(),this._unlockBound),!0):(this._stream=this._createStream(),this._missing=this._header.size,this.emit("entry",this._header,this._stream,this._unlockBound),!0)}_applyLongHeaders(){this._gnuLongPath&&(this._header.name=this._gnuLongPath,this._gnuLongPath=null),this._gnuLongLinkPath&&(this._header.linkname=this._gnuLongLinkPath,this._gnuLongLinkPath=null),this._pax&&(this._pax.path&&(this._header.name=this._pax.path),this._pax.linkpath&&(this._header.linkname=this._pax.linkpath),this._pax.size&&(this._header.size=parseInt(this._pax.size,10)),this._header.pax=this._pax,this._pax=null)}_decodeLongHeader(t){switch(this._header.type){case"gnu-long-path":this._gnuLongPath=dve.decodeLongPath(t,this._filenameEncoding);break;case"gnu-long-link-path":this._gnuLongLinkPath=dve.decodeLongPath(t,this._filenameEncoding);break;case"pax-global-header":this._paxGlobal=dve.decodePax(t);break;case"pax-header":this._pax=this._paxGlobal===null?dve.decodePax(t):Object.assign({},this._paxGlobal,dve.decodePax(t));break}}_consumeLongHeader(){this._longHeader=!1,this._missing=dzn(this._header.size);let t=this._buffer.shift(this._header.size);try{this._decodeLongHeader(t)}catch(r){return this._continueWrite(r),!1}return!0}_consumeStream(){let t=this._buffer.shiftFirst(this._missing);if(t===null)return!1;this._missing-=t.byteLength;let r=this._stream.push(t);return this._missing===0?(this._stream.push(null),r&&this._stream._detach(),r&&this._locked===!1):r}_createStream(){return new eur(this,this._header,this._offset)}_update(){for(;this._buffer.buffered>0&&!this.destroying;){if(this._missing>0){if(this._stream!==null){if(this._consumeStream()===!1)return;continue}if(this._longHeader===!0){if(this._missing>this._buffer.buffered)break;if(this._consumeLongHeader()===!1)return!1;continue}let t=this._buffer.shiftFirst(this._missing);t!==null&&(this._missing-=t.byteLength);continue}if(this._buffer.buffered<512)break;if(this._stream!==null||this._consumeHeader()===!1)return}this._continueWrite(null)}_continueWrite(t){let r=this._callback;this._callback=qlr,r(t)}_write(t,r){this._callback=r,this._buffer.push(t),this._update()}_final(t){this._finished=this._missing===0&&this._buffer.buffered===0,t(this._finished?null:new Error("Unexpected end of data"))}_predestroy(){this._continueWrite(null)}_destroy(t){this._stream&&this._stream.destroy(gzn(this)),t(null)}[Symbol.asyncIterator](){let t=null,r=null,s=null,a=null,o=null,g=this;return this.on("entry",m),this.on("error",v=>{t=v}),this.on("close",y),{[Symbol.asyncIterator](){return this},next(){return new Promise(f)},return(){return B(null)},throw(v){return B(v)}};function p(v){if(!o)return;let G=o;o=null,G(v)}function f(v,G){if(t)return G(t);if(a){v({value:a,done:!1}),a=null;return}r=v,s=G,p(null),g._finished&&r&&(r({value:void 0,done:!0}),r=s=null)}function m(v,G,T){o=T,G.on("error",qlr),r?(r({value:G,done:!1}),r=s=null):a=G}function y(){p(t),r&&(t?s(t):r({value:void 0,done:!0}),r=s=null)}function B(v){return g.destroy(v),p(v),new Promise((G,T)=>{if(g.destroyed)return G({value:void 0,done:!0});g.once("close",function(){v?T(v):G({value:void 0,done:!0})})})}}};pzn.exports=function(t){return new tur(t)};function qlr(){}function dzn(e){return e&=511,e&&512-e}});var Czn=z((Ydl,rur)=>{var Izn={S_IFMT:61440,S_IFDIR:16384,S_IFCHR:8192,S_IFBLK:24576,S_IFIFO:4096,S_IFLNK:40960};try{rur.exports=Dt("fs").constants||Izn}catch{rur.exports=Izn}});var bzn=z((Hdl,yzn)=>{var{Readable:aKo,Writable:cKo,getStreamError:mzn}=Ulr(),xpe=gIt(),pve=Czn(),dIt=zlr(),lKo=493,uKo=420,hzn=xpe.alloc(1024),iur=class extends cKo{constructor(t,r,s){super({mapWritable:AKo,eagerOpen:!0}),this.written=0,this.header=r,this._callback=s,this._linkname=null,this._isLinkname=r.type==="symlink"&&!r.linkname,this._isVoid=r.type!=="file"&&r.type!=="contiguous-file",this._finished=!1,this._pack=t,this._openCallback=null,this._pack._stream===null?this._pack._stream=this:this._pack._pending.push(this)}_open(t){this._openCallback=t,this._pack._stream===this&&this._continueOpen()}_continuePack(t){if(this._callback===null)return;let r=this._callback;this._callback=null,r(t)}_continueOpen(){this._pack._stream===null&&(this._pack._stream=this);let t=this._openCallback;if(this._openCallback=null,t!==null){if(this._pack.destroying)return t(new Error("pack stream destroyed"));if(this._pack._finalized)return t(new Error("pack stream is already finalized"));this._pack._stream=this,this._isLinkname||this._pack._encode(this.header),this._isVoid&&(this._finish(),this._continuePack(null)),t(null)}}_write(t,r){if(this._isLinkname)return this._linkname=this._linkname?xpe.concat([this._linkname,t]):t,r(null);if(this._isVoid)return t.byteLength>0?r(new Error("No body allowed for this entry")):r();if(this.written+=t.byteLength,this._pack.push(t))return r();this._pack._drain=r}_finish(){this._finished||(this._finished=!0,this._isLinkname&&(this.header.linkname=this._linkname?xpe.toString(this._linkname,"utf-8"):"",this._pack._encode(this.header)),_zn(this._pack,this.header.size),this._pack._done(this))}_final(t){if(this.written!==this.header.size)return t(new Error("Size mismatch"));this._finish(),t(null)}_getError(){return mzn(this)||new Error("tar entry destroyed")}_predestroy(){this._pack.destroy(this._getError())}_destroy(t){this._pack._done(this),this._continuePack(this._finished?null:this._getError()),t()}},sur=class extends aKo{constructor(t){super(t),this._drain=nur,this._finalized=!1,this._finalizing=!1,this._pending=[],this._stream=null}entry(t,r,s){if(this._finalized||this.destroying)throw new Error("already finalized or destroyed");typeof r=="function"&&(s=r,r=null),s||(s=nur),(!t.size||t.type==="symlink")&&(t.size=0),t.type||(t.type=gKo(t.mode)),t.mode||(t.mode=t.type==="directory"?lKo:uKo),t.uid||(t.uid=0),t.gid||(t.gid=0),t.mtime||(t.mtime=new Date),typeof r=="string"&&(r=xpe.from(r));let a=new iur(this,t,s);return xpe.isBuffer(r)?(t.size=r.byteLength,a.write(r),a.end(),a):(a._isVoid,a)}finalize(){if(this._stream||this._pending.length>0){this._finalizing=!0;return}this._finalized||(this._finalized=!0,this.push(hzn),this.push(null))}_done(t){t===this._stream&&(this._stream=null,this._finalizing&&this.finalize(),this._pending.length&&this._pending.shift()._continueOpen())}_encode(t){if(!t.pax){let r=dIt.encode(t);if(r){this.push(r);return}}this._encodePax(t)}_encodePax(t){let r=dIt.encodePax({name:t.name,linkname:t.linkname,pax:t.pax}),s={name:"PaxHeader",mode:t.mode,uid:t.uid,gid:t.gid,size:r.byteLength,mtime:t.mtime,type:"pax-header",linkname:t.linkname&&"PaxHeader",uname:t.uname,gname:t.gname,devmajor:t.devmajor,devminor:t.devminor};this.push(dIt.encode(s)),this.push(r),_zn(this,r.byteLength),s.size=t.size,s.type=t.type,this.push(dIt.encode(s))}_doDrain(){let t=this._drain;this._drain=nur,t()}_predestroy(){let t=mzn(this);for(this._stream&&this._stream.destroy(t);this._pending.length;){let r=this._pending.shift();r.destroy(t),r._continueOpen()}this._doDrain()}_read(t){this._doDrain(),t()}};yzn.exports=function(t){return new sur(t)};function gKo(e){switch(e&pve.S_IFMT){case pve.S_IFBLK:return"block-device";case pve.S_IFCHR:return"character-device";case pve.S_IFDIR:return"directory";case pve.S_IFIFO:return"fifo";case pve.S_IFLNK:return"symlink"}return"file"}function nur(){}function _zn(e,t){t&=511,t&&e.push(hzn.subarray(0,512-t))}function AKo(e){return xpe.isBuffer(e)?e:xpe.from(e)}});var Ezn=z(our=>{our.extract=fzn();our.pack=bzn()});var tqn=z((Spl,eqn)=>{"use strict";var CKo=Drt(),Cve=uYt();function $zn(e){if(/^\d{3,4}$/.test(e)){let r=/(\d{1,2})(\d{2})/.exec(e);return{major:0,minor:parseInt(r[1],10),patch:parseInt(r[2],10)}}let t=(e||"").split(".").map(r=>parseInt(r,10));return{major:t[0],minor:t[1],patch:t[2]}}function pur(e){let{env:t}=process;if("FORCE_HYPERLINK"in t)return!(t.FORCE_HYPERLINK.length>0&&parseInt(t.FORCE_HYPERLINK,10)===0);if(Cve("no-hyperlink")||Cve("no-hyperlinks")||Cve("hyperlink=false")||Cve("hyperlink=never"))return!1;if(Cve("hyperlink=true")||Cve("hyperlink=always")||"NETLIFY"in t)return!0;if(!CKo.supportsColor(e)||e&&!e.isTTY||process.platform==="win32"||"CI"in t||"TEAMCITY_VERSION"in t)return!1;if("TERM_PROGRAM"in t){let r=$zn(t.TERM_PROGRAM_VERSION);switch(t.TERM_PROGRAM){case"iTerm.app":return r.major===3?r.minor>=1:r.major>3;case"WezTerm":return r.major>=20200620;case"vscode":return r.major>1||r.major===1&&r.minor>=72}}if("VTE_VERSION"in t){if(t.VTE_VERSION==="0.50.0")return!1;let r=$zn(t.VTE_VERSION);return r.major>0||r.minor>=50}return!1}eqn.exports={supportsHyperlink:pur,stdout:pur(process.stdout),stderr:pur(process.stderr)}});var Cur=z(($pl,gqn)=>{"use strict";var BKo=function(t){return vKo(t)&&!SKo(t)};function vKo(e){return!!e&&typeof e=="object"}function SKo(e){var t=Object.prototype.toString.call(e);return t==="[object RegExp]"||t==="[object Date]"||NKo(e)}var wKo=typeof Symbol=="function"&&Symbol.for,TKo=wKo?Symbol.for("react.element"):60103;function NKo(e){return e.$$typeof===TKo}function RKo(e){return Array.isArray(e)?[]:{}}function AQe(e,t){return t.clone!==!1&&t.isMergeableObject(e)?hve(RKo(e),e,t):e}function DKo(e,t,r){return e.concat(t).map(function(s){return AQe(s,r)})}function xKo(e,t){if(!t.customMerge)return hve;var r=t.customMerge(e);return typeof r=="function"?r:hve}function kKo(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter(function(t){return Object.propertyIsEnumerable.call(e,t)}):[]}function lqn(e){return Object.keys(e).concat(kKo(e))}function uqn(e,t){try{return t in e}catch{return!1}}function GKo(e,t){return uqn(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))}function FKo(e,t,r){var s={};return r.isMergeableObject(e)&&lqn(e).forEach(function(a){s[a]=AQe(e[a],r)}),lqn(t).forEach(function(a){GKo(e,a)||(uqn(e,a)&&r.isMergeableObject(t[a])?s[a]=xKo(a,r)(e[a],t[a],r):s[a]=AQe(t[a],r))}),s}function hve(e,t,r){r=r||{},r.arrayMerge=r.arrayMerge||DKo,r.isMergeableObject=r.isMergeableObject||BKo,r.cloneUnlessOtherwiseSpecified=AQe;var s=Array.isArray(t),a=Array.isArray(e),o=s===a;return o?s?r.arrayMerge(e,t,r):FKo(e,t,r):AQe(t,r)}hve.all=function(t,r){if(!Array.isArray(t))throw new Error("first argument should be an array");return t.reduce(function(s,a){return hve(s,a,r)},{})};var ZKo=hve;gqn.exports=ZKo});var Eli=z((l0l,bli)=>{bli.exports=function(t,r){var s,a;typeof r=="function"?a=r:s=r;var o=Object.keys(t);return(s||[]).concat(o.sort(a)).reduce(function(g,p){return o.indexOf(p)!==-1&&(g[p]=t[p]),g},Object.create(null))}});var kli=z((m0l,Nmt)=>{"use strict";Nmt.exports=function(e){if(typeof e!="string")throw new TypeError("Expected a string");var t=e.match(/(?:\r?\n)/g)||[];if(t.length===0)return null;var r=t.filter(function(a){return a===`\r +`,r)+1}return{type:t,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(t){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;let r=yft(t),s=jBe(r);return s.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:s,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let r=yft(t),s=jBe(r);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:s,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(t,r){return this.type!=="comment"||this.indent<=r?!1:t.every(s=>s.type==="newline"||s.type==="space")}*documentEnd(t){this.type!=="doc-mode"&&(t.end?t.end.push(this.sourceToken):t.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop()))}*lineEnd(t){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:t.end?t.end.push(this.sourceToken):t.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop())}}};z8n.Parser=Wcr});var r6n=z(xQe=>{"use strict";var q8n=Scr(),YHo=EQe(),DQe=SQe(),XHo=Ear(),JHo=Vcr(),$8n=Pcr();function e6n(e){let t=e.prettyErrors!==!1;return{lineCounter:e.lineCounter||t&&new JHo.LineCounter||null,prettyErrors:t}}function UHo(e,t={}){let{lineCounter:r,prettyErrors:s}=e6n(t),a=new $8n.Parser(r?.addNewLine),o=new q8n.Composer(t),g=Array.from(o.compose(a.parse(e)));if(s&&r)for(let p of g)p.errors.forEach(DQe.prettifyError(e,r)),p.warnings.forEach(DQe.prettifyError(e,r));return g.length>0?g:Object.assign([],{empty:!0},o.streamInfo())}function t6n(e,t={}){let{lineCounter:r,prettyErrors:s}=e6n(t),a=new $8n.Parser(r?.addNewLine),o=new q8n.Composer(t),g=null;for(let p of o.compose(a.parse(e),!0,e.length))if(!g)g=p;else if(g.options.logLevel!=="silent"){g.errors.push(new DQe.YAMLParseError(p.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}return s&&r&&(g.errors.forEach(DQe.prettifyError(e,r)),g.warnings.forEach(DQe.prettifyError(e,r))),g}function KHo(e,t,r){let s;typeof t=="function"?s=t:r===void 0&&t&&typeof t=="object"&&(r=t);let a=t6n(e,r);if(!a)return null;if(a.warnings.forEach(o=>XHo.warn(a.options.logLevel,o)),a.errors.length>0){if(a.options.logLevel!=="silent")throw a.errors[0];a.errors=[]}return a.toJS(Object.assign({reviver:s},r))}function jHo(e,t,r){let s=null;if(typeof t=="function"||Array.isArray(t)?s=t:r===void 0&&t&&(r=t),typeof r=="string"&&(r=r.length),typeof r=="number"){let a=Math.round(r);r=a<1?void 0:a>8?{indent:8}:{indent:a}}if(e===void 0){let{keepUndefined:a}=r??t??{};if(!a)return}return new YHo.Document(e,s,r).toString(r)}xQe.parse=KHo;xQe.parseAllDocuments=UHo;xQe.parseDocument=t6n;xQe.stringify=jHo});var i6n=z(T0=>{"use strict";var zHo=Scr(),qHo=EQe(),$Ho=ocr(),Ocr=SQe(),eYo=lQe(),$ie=Y_(),tYo=Kie(),rYo=Sw(),nYo=zie(),iYo=qie(),sYo=hft(),oYo=Zcr(),aYo=Vcr(),cYo=Pcr(),bft=r6n(),n6n=sQe();T0.Composer=zHo.Composer;T0.Document=qHo.Document;T0.Schema=$Ho.Schema;T0.YAMLError=Ocr.YAMLError;T0.YAMLParseError=Ocr.YAMLParseError;T0.YAMLWarning=Ocr.YAMLWarning;T0.Alias=eYo.Alias;T0.isAlias=$ie.isAlias;T0.isCollection=$ie.isCollection;T0.isDocument=$ie.isDocument;T0.isMap=$ie.isMap;T0.isNode=$ie.isNode;T0.isPair=$ie.isPair;T0.isScalar=$ie.isScalar;T0.isSeq=$ie.isSeq;T0.Pair=tYo.Pair;T0.Scalar=rYo.Scalar;T0.YAMLMap=nYo.YAMLMap;T0.YAMLSeq=iYo.YAMLSeq;T0.CST=sYo;T0.Lexer=oYo.Lexer;T0.LineCounter=aYo.LineCounter;T0.Parser=cYo.Parser;T0.parse=bft.parse;T0.parseAllDocuments=bft.parseAllDocuments;T0.parseDocument=bft.parseDocument;T0.stringify=bft.stringify;T0.visit=n6n.visit;T0.visitAsync=n6n.visitAsync});var A6n=z((rAl,GQe)=>{var sY=xt("path"),kQe=xt("fs"),gYo=xt("os"),o6n=kQe.promises.readFile;function AYo(e,t){return["package.json",`.${e}rc.json`,`.${e}rc.js`,`.${e}rc.cjs`,...t?[]:[`.${e}rc.mjs`],`.config/${e}rc`,`.config/${e}rc.json`,`.config/${e}rc.js`,`.config/${e}rc.cjs`,...t?[]:[`.config/${e}rc.mjs`],`${e}.config.js`,`${e}.config.cjs`,...t?[]:[`${e}.config.mjs`]]}function Tft(e){return sY.dirname(e)||sY.sep}var Hcr=(e,t)=>JSON.parse(t),wft=typeof __webpack_require__=="function"?__non_webpack_require__:xt,a6n=Object.freeze({".js":wft,".json":wft,".cjs":wft,noExt:Hcr});GQe.exports.defaultLoadersSync=a6n;var Mcr=async e=>{try{return(await import(e)).default}catch(t){try{return wft(e)}catch(r){throw r.code==="ERR_REQUIRE_ESM"||r instanceof SyntaxError&&r.toString().includes("Cannot use import statement outside a module")?t:r}}},c6n=Object.freeze({".js":Mcr,".mjs":Mcr,".cjs":Mcr,".json":Hcr,noExt:Hcr});GQe.exports.defaultLoaders=c6n;function l6n(e,t,r){let s={stopDir:gYo.homedir(),searchPlaces:AYo(e,r),ignoreEmptySearchPlaces:!0,cache:!0,transform:a=>a,packageProp:[e],...t,loaders:{...r?a6n:c6n,...t.loaders}};return s.searchPlaces.forEach(a=>{let o=sY.extname(a)||"noExt",g=s.loaders[o];if(!g)throw new Error(`Missing loader for extension "${a}"`);if(typeof g!="function")throw new Error(`Loader for extension "${a}" is not a function: Received ${typeof g}.`)}),s}function Nft(e,t){return typeof e=="string"&&e in t?t[e]:(Array.isArray(e)?e:e.split(".")).reduce((r,s)=>r===void 0?r:r[s],t)||null}function u6n(e){if(!e)throw new Error("load must pass a non-empty string")}function Rft(e,t){if(!e)throw new Error(`No loader specified for extension "${t}"`);if(typeof e!="function")throw new Error("loader is not a function")}var g6n=e=>(t,r,s)=>(e&&t.set(r,s),s);GQe.exports.lilconfig=function(t,r){let{ignoreEmptySearchPlaces:s,loaders:a,packageProp:o,searchPlaces:g,stopDir:p,transform:f,cache:m}=l6n(t,r??{},!1),y=new Map,B=new Map,v=g6n(m);return{async search(k=process.cwd()){let T={config:null,filepath:""},O=new Set,X=k;e:for(;;){if(m){let le=y.get(X);if(le!==void 0){for(let ae of O)y.set(ae,le);return le}O.add(X)}for(let le of g){let ae=sY.join(X,le);try{await kQe.promises.access(ae)}catch{continue}let ge=String(await o6n(ae)),fe=sY.extname(le)||"noExt",pe=a[fe];if(le==="package.json"){let be=await pe(ae,ge),Te=Nft(o,be);if(Te!=null){T.config=Te,T.filepath=ae;break e}continue}let he=ge.trim()==="";if(!(he&&s)){he?(T.isEmpty=!0,T.config=void 0):(Rft(pe,fe),T.config=await pe(ae,ge)),T.filepath=ae;break e}}if(X===p||X===Tft(X))break e;X=Tft(X)}let U=T.filepath===""&&T.config===null?f(null):f(T);if(m)for(let le of O)y.set(le,U);return U},async load(k){u6n(k);let T=sY.resolve(process.cwd(),k);if(m&&B.has(T))return B.get(T);let{base:O,ext:X}=sY.parse(T),U=X||"noExt",le=a[U];Rft(le,U);let ae=String(await o6n(T));if(O==="package.json"){let pe=await le(T,ae);return v(B,T,f({config:Nft(o,pe),filepath:T}))}let ge={config:null,filepath:T},fe=ae.trim()==="";return fe&&s?v(B,T,f({config:void 0,filepath:T,isEmpty:!0})):(ge.config=fe?void 0:await le(T,ae),v(B,T,f(fe?{...ge,isEmpty:fe,config:void 0}:ge)))},clearLoadCache(){m&&B.clear()},clearSearchCache(){m&&y.clear()},clearCaches(){m&&(B.clear(),y.clear())}}};GQe.exports.lilconfigSync=function(t,r){let{ignoreEmptySearchPlaces:s,loaders:a,packageProp:o,searchPlaces:g,stopDir:p,transform:f,cache:m}=l6n(t,r??{},!0),y=new Map,B=new Map,v=g6n(m);return{search(k=process.cwd()){let T={config:null,filepath:""},O=new Set,X=k;e:for(;;){if(m){let le=y.get(X);if(le!==void 0){for(let ae of O)y.set(ae,le);return le}O.add(X)}for(let le of g){let ae=sY.join(X,le);try{kQe.accessSync(ae)}catch{continue}let ge=sY.extname(le)||"noExt",fe=a[ge],pe=String(kQe.readFileSync(ae));if(le==="package.json"){let be=fe(ae,pe),Te=Nft(o,be);if(Te!=null){T.config=Te,T.filepath=ae;break e}continue}let he=pe.trim()==="";if(!(he&&s)){he?(T.isEmpty=!0,T.config=void 0):(Rft(fe,ge),T.config=fe(ae,pe)),T.filepath=ae;break e}}if(X===p||X===Tft(X))break e;X=Tft(X)}let U=T.filepath===""&&T.config===null?f(null):f(T);if(m)for(let le of O)y.set(le,U);return U},load(k){u6n(k);let T=sY.resolve(process.cwd(),k);if(m&&B.has(T))return B.get(T);let{base:O,ext:X}=sY.parse(T),U=X||"noExt",le=a[U];Rft(le,U);let ae=String(kQe.readFileSync(T));if(O==="package.json"){let pe=le(T,ae);return f({config:Nft(o,pe),filepath:T})}let ge={config:null,filepath:T},fe=ae.trim()==="";return fe&&s?v(B,T,f({filepath:T,config:void 0,isEmpty:!0})):(ge.config=fe?void 0:le(T,ae),v(B,T,f(fe?{...ge,isEmpty:fe,config:void 0}:ge)))},clearLoadCache(){m&&B.clear()},clearSearchCache(){m&&y.clear()},clearCaches(){m&&(B.clear(),y.clear())}}}});var jcr=z((_dl,W6n)=>{W6n.exports=xt("stream")});var Y6n=z((ydl,H6n)=>{"use strict";function P6n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);t&&(s=s.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,s)}return r}function O6n(e){for(var t=1;t0?this.tail.next=s:this.head=s,this.tail=s,++this.length}},{key:"unshift",value:function(r){var s={data:r,next:this.head};this.length===0&&(this.tail=s),this.head=s,++this.length}},{key:"shift",value:function(){if(this.length!==0){var r=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,r}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(r){if(this.length===0)return"";for(var s=this.head,a=""+s.data;s=s.next;)a+=r+s.data;return a}},{key:"concat",value:function(r){if(this.length===0)return Fft.alloc(0);for(var s=Fft.allocUnsafe(r>>>0),a=this.head,o=0;a;)WYo(a.data,s,o),o+=a.data.length,a=a.next;return s}},{key:"consume",value:function(r,s){var a;return rg.length?g.length:r;if(p===g.length?o+=g:o+=g.slice(0,r),r-=p,r===0){p===g.length?(++a,s.next?this.head=s.next:this.head=this.tail=null):(this.head=s,s.data=g.slice(p));break}++a}return this.length-=a,o}},{key:"_getBuffer",value:function(r){var s=Fft.allocUnsafe(r),a=this.head,o=1;for(a.data.copy(s),r-=a.data.length;a=a.next;){var g=a.data,p=r>g.length?g.length:r;if(g.copy(s,s.length-r,0,p),r-=p,r===0){p===g.length?(++o,a.next?this.head=a.next:this.head=this.tail=null):(this.head=a,a.data=g.slice(p));break}++o}return this.length-=o,s}},{key:VYo,value:function(r,s){return zcr(this,O6n(O6n({},s),{},{depth:0,customInspect:!1}))}}]),e}()});var $cr=z((bdl,J6n)=>{"use strict";function PYo(e,t){var r=this,s=this._readableState&&this._readableState.destroyed,a=this._writableState&&this._writableState.destroyed;return s||a?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(qcr,this,e)):process.nextTick(qcr,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,function(o){!t&&o?r._writableState?r._writableState.errorEmitted?process.nextTick(Zft,r):(r._writableState.errorEmitted=!0,process.nextTick(X6n,r,o)):process.nextTick(X6n,r,o):t?(process.nextTick(Zft,r),t(o)):process.nextTick(Zft,r)}),this)}function X6n(e,t){qcr(e,t),Zft(e)}function Zft(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function OYo(){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)}function qcr(e,t){e.emit("error",t)}function QYo(e,t){var r=e._readableState,s=e._writableState;r&&r.autoDestroy||s&&s.autoDestroy?e.destroy(t):e.emit("error",t)}J6n.exports={destroy:PYo,undestroy:OYo,errorOrDestroy:QYo}});var ese=z((Edl,j6n)=>{"use strict";var K6n={};function pQ(e,t,r){r||(r=Error);function s(o,g,p){return typeof t=="string"?t:t(o,g,p)}class a extends r{constructor(g,p,f){super(s(g,p,f))}}a.prototype.name=r.name,a.prototype.code=e,K6n[e]=a}function U6n(e,t){if(Array.isArray(e)){let r=e.length;return e=e.map(s=>String(s)),r>2?`one of ${t} ${e.slice(0,r-1).join(", ")}, or `+e[r-1]:r===2?`one of ${t} ${e[0]} or ${e[1]}`:`of ${t} ${e[0]}`}else return`of ${t} ${String(e)}`}function MYo(e,t,r){return e.substr(!r||r<0?0:+r,t.length)===t}function HYo(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function YYo(e,t,r){return typeof r!="number"&&(r=0),r+t.length>e.length?!1:e.indexOf(t,r)!==-1}pQ("ERR_INVALID_OPT_VALUE",function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'},TypeError);pQ("ERR_INVALID_ARG_TYPE",function(e,t,r){let s;typeof t=="string"&&MYo(t,"not ")?(s="must not be",t=t.replace(/^not /,"")):s="must be";let a;if(HYo(e," argument"))a=`The ${e} ${s} ${U6n(t,"type")}`;else{let o=YYo(e,".")?"property":"argument";a=`The "${e}" ${o} ${s} ${U6n(t,"type")}`}return a+=`. Received type ${typeof r}`,a},TypeError);pQ("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");pQ("ERR_METHOD_NOT_IMPLEMENTED",function(e){return"The "+e+" method is not implemented"});pQ("ERR_STREAM_PREMATURE_CLOSE","Premature close");pQ("ERR_STREAM_DESTROYED",function(e){return"Cannot call "+e+" after a stream was destroyed"});pQ("ERR_MULTIPLE_CALLBACK","Callback called multiple times");pQ("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");pQ("ERR_STREAM_WRITE_AFTER_END","write after end");pQ("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);pQ("ERR_UNKNOWN_ENCODING",function(e){return"Unknown encoding: "+e},TypeError);pQ("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");j6n.exports.codes=K6n});var elr=z((Bdl,z6n)=>{"use strict";var XYo=ese().codes.ERR_INVALID_OPT_VALUE;function JYo(e,t,r){return e.highWaterMark!=null?e.highWaterMark:t?e[r]:null}function UYo(e,t,r,s){var a=JYo(t,s,r);if(a!=null){if(!(isFinite(a)&&Math.floor(a)===a)||a<0){var o=s?r:"highWaterMark";throw new XYo(o,a)}return Math.floor(a)}return e.objectMode?16:16*1024}z6n.exports={getHighWaterMark:UYo}});var q6n=z((vdl,tlr)=>{typeof Object.create=="function"?tlr.exports=function(t,r){r&&(t.super_=r,t.prototype=Object.create(r.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:tlr.exports=function(t,r){if(r){t.super_=r;var s=function(){};s.prototype=r.prototype,t.prototype=new s,t.prototype.constructor=t}}});var tse=z((Sdl,nlr)=>{try{if(rlr=xt("util"),typeof rlr.inherits!="function")throw"";nlr.exports=rlr.inherits}catch{nlr.exports=q6n()}var rlr});var e7n=z((wdl,$6n)=>{$6n.exports=xt("util").deprecate});var olr=z((Tdl,o7n)=>{"use strict";o7n.exports=nv;function r7n(e){var t=this;this.next=null,this.entry=null,this.finish=function(){yXo(t,e)}}var $Be;nv.WritableState=PQe;var KYo={deprecate:e7n()},n7n=jcr(),Vft=xt("buffer").Buffer,jYo=(typeof global<"u"?global:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){};function zYo(e){return Vft.from(e)}function qYo(e){return Vft.isBuffer(e)||e instanceof jYo}var slr=$cr(),$Yo=elr(),eXo=$Yo.getHighWaterMark,rse=ese().codes,tXo=rse.ERR_INVALID_ARG_TYPE,rXo=rse.ERR_METHOD_NOT_IMPLEMENTED,nXo=rse.ERR_MULTIPLE_CALLBACK,iXo=rse.ERR_STREAM_CANNOT_PIPE,sXo=rse.ERR_STREAM_DESTROYED,oXo=rse.ERR_STREAM_NULL_VALUES,aXo=rse.ERR_STREAM_WRITE_AFTER_END,cXo=rse.ERR_UNKNOWN_ENCODING,eve=slr.errorOrDestroy;tse()(nv,n7n);function lXo(){}function PQe(e,t,r){$Be=$Be||wpe(),e=e||{},typeof r!="boolean"&&(r=t instanceof $Be),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=eXo(this,e,"writableHighWaterMark",r),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var s=e.decodeStrings===!1;this.decodeStrings=!s,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(a){IXo(t,a)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new r7n(this)}PQe.prototype.getBuffer=function(){for(var t=this.bufferedRequest,r=[];t;)r.push(t),t=t.next;return r};(function(){try{Object.defineProperty(PQe.prototype,"buffer",{get:KYo.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch{}})();var Lft;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(Lft=Function.prototype[Symbol.hasInstance],Object.defineProperty(nv,Symbol.hasInstance,{value:function(t){return Lft.call(this,t)?!0:this!==nv?!1:t&&t._writableState instanceof PQe}})):Lft=function(t){return t instanceof this};function nv(e){$Be=$Be||wpe();var t=this instanceof $Be;if(!t&&!Lft.call(nv,this))return new nv(e);this._writableState=new PQe(e,this,t),this.writable=!0,e&&(typeof e.write=="function"&&(this._write=e.write),typeof e.writev=="function"&&(this._writev=e.writev),typeof e.destroy=="function"&&(this._destroy=e.destroy),typeof e.final=="function"&&(this._final=e.final)),n7n.call(this)}nv.prototype.pipe=function(){eve(this,new iXo)};function uXo(e,t){var r=new aXo;eve(e,r),process.nextTick(t,r)}function gXo(e,t,r,s){var a;return r===null?a=new oXo:typeof r!="string"&&!t.objectMode&&(a=new tXo("chunk",["string","Buffer"],r)),a?(eve(e,a),process.nextTick(s,a),!1):!0}nv.prototype.write=function(e,t,r){var s=this._writableState,a=!1,o=!s.objectMode&&qYo(e);return o&&!Vft.isBuffer(e)&&(e=zYo(e)),typeof t=="function"&&(r=t,t=null),o?t="buffer":t||(t=s.defaultEncoding),typeof r!="function"&&(r=lXo),s.ending?uXo(this,r):(o||gXo(this,s,e,r))&&(s.pendingcb++,a=dXo(this,s,o,e,t,r)),a};nv.prototype.cork=function(){this._writableState.corked++};nv.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,!e.writing&&!e.corked&&!e.bufferProcessing&&e.bufferedRequest&&i7n(this,e))};nv.prototype.setDefaultEncoding=function(t){if(typeof t=="string"&&(t=t.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((t+"").toLowerCase())>-1))throw new cXo(t);return this._writableState.defaultEncoding=t,this};Object.defineProperty(nv.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function AXo(e,t,r){return!e.objectMode&&e.decodeStrings!==!1&&typeof t=="string"&&(t=Vft.from(t,r)),t}Object.defineProperty(nv.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function dXo(e,t,r,s,a,o){if(!r){var g=AXo(t,s,a);s!==g&&(r=!0,a="buffer",s=g)}var p=t.objectMode?1:s.length;t.length+=p;var f=t.length{"use strict";var bXo=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};c7n.exports=ZU;var a7n=llr(),clr=olr();tse()(ZU,a7n);for(alr=bXo(clr.prototype),Wft=0;Wft{var Oft=xt("buffer"),LU=Oft.Buffer;function l7n(e,t){for(var r in e)t[r]=e[r]}LU.from&&LU.alloc&&LU.allocUnsafe&&LU.allocUnsafeSlow?u7n.exports=Oft:(l7n(Oft,ulr),ulr.Buffer=Tpe);function Tpe(e,t,r){return LU(e,t,r)}Tpe.prototype=Object.create(LU.prototype);l7n(LU,Tpe);Tpe.from=function(e,t,r){if(typeof e=="number")throw new TypeError("Argument must not be a number");return LU(e,t,r)};Tpe.alloc=function(e,t,r){if(typeof e!="number")throw new TypeError("Argument must be a number");var s=LU(e);return t!==void 0?typeof r=="string"?s.fill(t,r):s.fill(t):s.fill(0),s};Tpe.allocUnsafe=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return LU(e)};Tpe.allocUnsafeSlow=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return Oft.SlowBuffer(e)}});var dlr=z(d7n=>{"use strict";var Alr=g7n().Buffer,A7n=Alr.isEncoding||function(e){switch(e=""+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 vXo(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}}function SXo(e){var t=vXo(e);if(typeof t!="string"&&(Alr.isEncoding===A7n||!A7n(e)))throw new Error("Unknown encoding: "+e);return t||e}d7n.StringDecoder=OQe;function OQe(e){this.encoding=SXo(e);var t;switch(this.encoding){case"utf16le":this.text=xXo,this.end=kXo,t=4;break;case"utf8":this.fillLast=NXo,t=4;break;case"base64":this.text=GXo,this.end=FXo,t=3;break;default:this.write=ZXo,this.end=LXo;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=Alr.allocUnsafe(t)}OQe.prototype.write=function(e){if(e.length===0)return"";var t,r;if(this.lastNeed){if(t=this.fillLast(e),t===void 0)return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r>5===6?2:e>>4===14?3:e>>3===30?4:e>>6===2?-1:-2}function wXo(e,t,r){var s=t.length-1;if(s=0?(a>0&&(e.lastNeed=a-1),a):--s=0?(a>0&&(e.lastNeed=a-2),a):--s=0?(a>0&&(a===2?a=0:e.lastNeed=a-3),a):0))}function TXo(e,t,r){if((t[0]&192)!==128)return e.lastNeed=0,"\uFFFD";if(e.lastNeed>1&&t.length>1){if((t[1]&192)!==128)return e.lastNeed=1,"\uFFFD";if(e.lastNeed>2&&t.length>2&&(t[2]&192)!==128)return e.lastNeed=2,"\uFFFD"}}function NXo(e){var t=this.lastTotal-this.lastNeed,r=TXo(this,e,t);if(r!==void 0)return r;if(this.lastNeed<=e.length)return e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,t,0,e.length),this.lastNeed-=e.length}function RXo(e,t){var r=wXo(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var s=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,s),e.toString("utf8",t,s)}function DXo(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"\uFFFD":t}function xXo(e,t){if((e.length-t)%2===0){var r=e.toString("utf16le",t);if(r){var s=r.charCodeAt(r.length-1);if(s>=55296&&s<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function kXo(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function GXo(e,t){var r=(e.length-t)%3;return r===0?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,r===1?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-r))}function FXo(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function ZXo(e){return e.toString(this.encoding)}function LXo(e){return e&&e.length?this.write(e):""}});var Qft=z((Ddl,I7n)=>{"use strict";var p7n=ese().codes.ERR_STREAM_PREMATURE_CLOSE;function VXo(e){var t=!1;return function(){if(!t){t=!0;for(var r=arguments.length,s=new Array(r),a=0;a{"use strict";var Mft;function nse(e,t,r){return t=OXo(t),t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function OXo(e){var t=QXo(e,"string");return typeof t=="symbol"?t:String(t)}function QXo(e,t){if(typeof e!="object"||e===null)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var s=r.call(e,t||"default");if(typeof s!="object")return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var MXo=Qft(),ise=Symbol("lastResolve"),Npe=Symbol("lastReject"),QQe=Symbol("error"),Hft=Symbol("ended"),Rpe=Symbol("lastPromise"),plr=Symbol("handlePromise"),Dpe=Symbol("stream");function sse(e,t){return{value:e,done:t}}function HXo(e){var t=e[ise];if(t!==null){var r=e[Dpe].read();r!==null&&(e[Rpe]=null,e[ise]=null,e[Npe]=null,t(sse(r,!1)))}}function YXo(e){process.nextTick(HXo,e)}function XXo(e,t){return function(r,s){e.then(function(){if(t[Hft]){r(sse(void 0,!0));return}t[plr](r,s)},s)}}var JXo=Object.getPrototypeOf(function(){}),UXo=Object.setPrototypeOf((Mft={get stream(){return this[Dpe]},next:function(){var t=this,r=this[QQe];if(r!==null)return Promise.reject(r);if(this[Hft])return Promise.resolve(sse(void 0,!0));if(this[Dpe].destroyed)return new Promise(function(g,p){process.nextTick(function(){t[QQe]?p(t[QQe]):g(sse(void 0,!0))})});var s=this[Rpe],a;if(s)a=new Promise(XXo(s,this));else{var o=this[Dpe].read();if(o!==null)return Promise.resolve(sse(o,!1));a=new Promise(this[plr])}return this[Rpe]=a,a}},nse(Mft,Symbol.asyncIterator,function(){return this}),nse(Mft,"return",function(){var t=this;return new Promise(function(r,s){t[Dpe].destroy(null,function(a){if(a){s(a);return}r(sse(void 0,!0))})})}),Mft),JXo),KXo=function(t){var r,s=Object.create(UXo,(r={},nse(r,Dpe,{value:t,writable:!0}),nse(r,ise,{value:null,writable:!0}),nse(r,Npe,{value:null,writable:!0}),nse(r,QQe,{value:null,writable:!0}),nse(r,Hft,{value:t._readableState.endEmitted,writable:!0}),nse(r,plr,{value:function(o,g){var p=s[Dpe].read();p?(s[Rpe]=null,s[ise]=null,s[Npe]=null,o(sse(p,!1))):(s[ise]=o,s[Npe]=g)},writable:!0}),r));return s[Rpe]=null,MXo(t,function(a){if(a&&a.code!=="ERR_STREAM_PREMATURE_CLOSE"){var o=s[Npe];o!==null&&(s[Rpe]=null,s[ise]=null,s[Npe]=null,o(a)),s[QQe]=a;return}var g=s[ise];g!==null&&(s[Rpe]=null,s[ise]=null,s[Npe]=null,g(sse(void 0,!0))),s[Hft]=!0}),t.on("readable",YXo.bind(null,s)),s};C7n.exports=KXo});var b7n=z((kdl,y7n)=>{"use strict";function h7n(e,t,r,s,a,o,g){try{var p=e[o](g),f=p.value}catch(m){r(m);return}p.done?t(f):Promise.resolve(f).then(s,a)}function jXo(e){return function(){var t=this,r=arguments;return new Promise(function(s,a){var o=e.apply(t,r);function g(f){h7n(o,s,a,g,p,"next",f)}function p(f){h7n(o,s,a,g,p,"throw",f)}g(void 0)})}}function _7n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);t&&(s=s.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,s)}return r}function zXo(e){for(var t=1;t{"use strict";x7n.exports=Oh;var tve;Oh.ReadableState=S7n;var Gdl=xt("events").EventEmitter,v7n=function(t,r){return t.listeners(r).length},HQe=jcr(),Yft=xt("buffer").Buffer,n4o=(typeof global<"u"?global:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){};function i4o(e){return Yft.from(e)}function s4o(e){return Yft.isBuffer(e)||e instanceof n4o}var flr=xt("util"),nm;flr&&flr.debuglog?nm=flr.debuglog("stream"):nm=function(){};var o4o=Y6n(),blr=$cr(),a4o=elr(),c4o=a4o.getHighWaterMark,Xft=ese().codes,l4o=Xft.ERR_INVALID_ARG_TYPE,u4o=Xft.ERR_STREAM_PUSH_AFTER_EOF,g4o=Xft.ERR_METHOD_NOT_IMPLEMENTED,A4o=Xft.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,rve,Ilr,Clr;tse()(Oh,HQe);var MQe=blr.errorOrDestroy,mlr=["error","close","destroy","pause","resume"];function d4o(e,t,r){if(typeof e.prependListener=="function")return e.prependListener(t,r);!e._events||!e._events[t]?e.on(t,r):Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]}function S7n(e,t,r){tve=tve||wpe(),e=e||{},typeof r!="boolean"&&(r=t instanceof tve),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=c4o(this,e,"readableHighWaterMark",r),this.buffer=new o4o,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=e.emitClose!==!1,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&&(rve||(rve=dlr().StringDecoder),this.decoder=new rve(e.encoding),this.encoding=e.encoding)}function Oh(e){if(tve=tve||wpe(),!(this instanceof Oh))return new Oh(e);var t=this instanceof tve;this._readableState=new S7n(e,this,t),this.readable=!0,e&&(typeof e.read=="function"&&(this._read=e.read),typeof e.destroy=="function"&&(this._destroy=e.destroy)),HQe.call(this)}Object.defineProperty(Oh.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(t){this._readableState&&(this._readableState.destroyed=t)}});Oh.prototype.destroy=blr.destroy;Oh.prototype._undestroy=blr.undestroy;Oh.prototype._destroy=function(e,t){t(e)};Oh.prototype.push=function(e,t){var r=this._readableState,s;return r.objectMode?s=!0:typeof e=="string"&&(t=t||r.defaultEncoding,t!==r.encoding&&(e=Yft.from(e,t),t=""),s=!0),w7n(this,e,t,!1,s)};Oh.prototype.unshift=function(e){return w7n(this,e,null,!0,!1)};function w7n(e,t,r,s,a){nm("readableAddChunk",t);var o=e._readableState;if(t===null)o.reading=!1,I4o(e,o);else{var g;if(a||(g=p4o(o,t)),g)MQe(e,g);else if(o.objectMode||t&&t.length>0)if(typeof t!="string"&&!o.objectMode&&Object.getPrototypeOf(t)!==Yft.prototype&&(t=i4o(t)),s)o.endEmitted?MQe(e,new A4o):hlr(e,o,t,!0);else if(o.ended)MQe(e,new u4o);else{if(o.destroyed)return!1;o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||t.length!==0?hlr(e,o,t,!1):ylr(e,o)):hlr(e,o,t,!1)}else s||(o.reading=!1,ylr(e,o))}return!o.ended&&(o.length=E7n?e=E7n:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}function B7n(e,t){return e<=0||t.length===0&&t.ended?0:t.objectMode?1:e!==e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=f4o(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}Oh.prototype.read=function(e){nm("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(e!==0&&(t.emittedReadable=!1),e===0&&t.needReadable&&((t.highWaterMark!==0?t.length>=t.highWaterMark:t.length>0)||t.ended))return nm("read: emitReadable",t.length,t.ended),t.length===0&&t.ended?_lr(this):Jft(this),null;if(e=B7n(e,t),e===0&&t.ended)return t.length===0&&_lr(this),null;var s=t.needReadable;nm("need readable",s),(t.length===0||t.length-e0?a=R7n(e,t):a=null,a===null?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),t.length===0&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&_lr(this)),a!==null&&this.emit("data",a),a};function I4o(e,t){if(nm("onEofChunk"),!t.ended){if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,t.sync?Jft(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,T7n(e)))}}function Jft(e){var t=e._readableState;nm("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(nm("emitReadable",t.flowing),t.emittedReadable=!0,process.nextTick(T7n,e))}function T7n(e){var t=e._readableState;nm("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,Elr(e)}function ylr(e,t){t.readingMore||(t.readingMore=!0,process.nextTick(C4o,e,t))}function C4o(e,t){for(;!t.reading&&!t.ended&&(t.length1&&D7n(s.pipes,e)!==-1)&&!m&&(nm("false write response, pause",s.awaitDrain),s.awaitDrain++),r.pause())}function v(X){nm("onerror",X),O(),e.removeListener("error",v),v7n(e,"error")===0&&MQe(e,X)}d4o(e,"error",v);function k(){e.removeListener("finish",T),O()}e.once("close",k);function T(){nm("onfinish"),e.removeListener("close",k),O()}e.once("finish",T);function O(){nm("unpipe"),r.unpipe(e)}return e.emit("pipe",r),s.flowing||(nm("pipe resume"),r.resume()),e};function m4o(e){return function(){var r=e._readableState;nm("pipeOnDrain",r.awaitDrain),r.awaitDrain&&r.awaitDrain--,r.awaitDrain===0&&v7n(e,"data")&&(r.flowing=!0,Elr(e))}}Oh.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(t.pipesCount===0)return this;if(t.pipesCount===1)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r),this);if(!e){var s=t.pipes,a=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;o0,s.flowing!==!1&&this.resume()):e==="readable"&&!s.endEmitted&&!s.readableListening&&(s.readableListening=s.needReadable=!0,s.flowing=!1,s.emittedReadable=!1,nm("on readable",s.length,s.reading),s.length?Jft(this):s.reading||process.nextTick(h4o,this)),r};Oh.prototype.addListener=Oh.prototype.on;Oh.prototype.removeListener=function(e,t){var r=HQe.prototype.removeListener.call(this,e,t);return e==="readable"&&process.nextTick(N7n,this),r};Oh.prototype.removeAllListeners=function(e){var t=HQe.prototype.removeAllListeners.apply(this,arguments);return(e==="readable"||e===void 0)&&process.nextTick(N7n,this),t};function N7n(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 h4o(e){nm("readable nexttick read 0"),e.read(0)}Oh.prototype.resume=function(){var e=this._readableState;return e.flowing||(nm("resume"),e.flowing=!e.readableListening,_4o(this,e)),e.paused=!1,this};function _4o(e,t){t.resumeScheduled||(t.resumeScheduled=!0,process.nextTick(y4o,e,t))}function y4o(e,t){nm("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),Elr(e),t.flowing&&!t.reading&&e.read(0)}Oh.prototype.pause=function(){return nm("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(nm("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function Elr(e){var t=e._readableState;for(nm("flow",t.flowing);t.flowing&&e.read()!==null;);}Oh.prototype.wrap=function(e){var t=this,r=this._readableState,s=!1;e.on("end",function(){if(nm("wrapped end"),r.decoder&&!r.ended){var g=r.decoder.end();g&&g.length&&t.push(g)}t.push(null)}),e.on("data",function(g){if(nm("wrapped data"),r.decoder&&(g=r.decoder.write(g)),!(r.objectMode&&g==null)&&!(!r.objectMode&&(!g||!g.length))){var p=t.push(g);p||(s=!0,e.pause())}});for(var a in e)this[a]===void 0&&typeof e[a]=="function"&&(this[a]=function(p){return function(){return e[p].apply(e,arguments)}}(a));for(var o=0;o=t.length?(t.decoder?r=t.buffer.join(""):t.buffer.length===1?r=t.buffer.first():r=t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r}function _lr(e){var t=e._readableState;nm("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,process.nextTick(b4o,t,e))}function b4o(e,t){if(nm("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&e.length===0&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}typeof Symbol=="function"&&(Oh.from=function(e,t){return Clr===void 0&&(Clr=b7n()),Clr(Oh,e,t)});function D7n(e,t){for(var r=0,s=e.length;r{"use strict";G7n.exports=Ez;var Uft=ese().codes,E4o=Uft.ERR_METHOD_NOT_IMPLEMENTED,B4o=Uft.ERR_MULTIPLE_CALLBACK,v4o=Uft.ERR_TRANSFORM_ALREADY_TRANSFORMING,S4o=Uft.ERR_TRANSFORM_WITH_LENGTH_0,Kft=wpe();tse()(Ez,Kft);function w4o(e,t){var r=this._transformState;r.transforming=!1;var s=r.writecb;if(s===null)return this.emit("error",new B4o);r.writechunk=null,r.writecb=null,t!=null&&this.push(t),s(e);var a=this._readableState;a.reading=!1,(a.needReadable||a.length{"use strict";Z7n.exports=YQe;var F7n=Blr();tse()(YQe,F7n);function YQe(e){if(!(this instanceof YQe))return new YQe(e);F7n.call(this,e)}YQe.prototype._transform=function(e,t,r){r(null,e)}});var Q7n=z((Vdl,O7n)=>{"use strict";var vlr;function N4o(e){var t=!1;return function(){t||(t=!0,e.apply(void 0,arguments))}}var P7n=ese().codes,R4o=P7n.ERR_MISSING_ARGS,D4o=P7n.ERR_STREAM_DESTROYED;function V7n(e){if(e)throw e}function x4o(e){return e.setHeader&&typeof e.abort=="function"}function k4o(e,t,r,s){s=N4o(s);var a=!1;e.on("close",function(){a=!0}),vlr===void 0&&(vlr=Qft()),vlr(e,{readable:t,writable:r},function(g){if(g)return s(g);a=!0,s()});var o=!1;return function(g){if(!a&&!o){if(o=!0,x4o(e))return e.abort();if(typeof e.destroy=="function")return e.destroy();s(g||new D4o("pipe"))}}}function W7n(e){e()}function G4o(e,t){return e.pipe(t)}function F4o(e){return!e.length||typeof e[e.length-1]!="function"?V7n:e.pop()}function Z4o(){for(var e=arguments.length,t=new Array(e),r=0;r0;return k4o(g,f,m,function(y){a||(a=y),y&&o.forEach(W7n),!f&&(o.forEach(W7n),s(a))})});return t.reduce(G4o)}O7n.exports=Z4o});var nve=z((fQ,JQe)=>{var XQe=xt("stream");process.env.READABLE_STREAM==="disable"&&XQe?(JQe.exports=XQe.Readable,Object.assign(JQe.exports,XQe),JQe.exports.Stream=XQe):(fQ=JQe.exports=llr(),fQ.Stream=XQe||fQ,fQ.Readable=fQ,fQ.Writable=olr(),fQ.Duplex=wpe(),fQ.Transform=Blr(),fQ.PassThrough=L7n(),fQ.finished=Qft(),fQ.pipeline=Q7n())});var Y7n=z((Wdl,H7n)=>{"use strict";var{Buffer:oY}=xt("buffer"),M7n=Symbol.for("BufferList");function AE(e){if(!(this instanceof AE))return new AE(e);AE._init.call(this,e)}AE._init=function(t){Object.defineProperty(this,M7n,{value:!0}),this._bufs=[],this.length=0,t&&this.append(t)};AE.prototype._new=function(t){return new AE(t)};AE.prototype._offset=function(t){if(t===0)return[0,0];let r=0;for(let s=0;sthis.length||t<0)return;let r=this._offset(t);return this._bufs[r[0]][r[1]]};AE.prototype.slice=function(t,r){return typeof t=="number"&&t<0&&(t+=this.length),typeof r=="number"&&r<0&&(r+=this.length),this.copy(null,0,t,r)};AE.prototype.copy=function(t,r,s,a){if((typeof s!="number"||s<0)&&(s=0),(typeof a!="number"||a>this.length)&&(a=this.length),s>=this.length||a<=0)return t||oY.alloc(0);let o=!!t,g=this._offset(s),p=a-s,f=p,m=o&&r||0,y=g[1];if(s===0&&a===this.length){if(!o)return this._bufs.length===1?this._bufs[0]:oY.concat(this._bufs,this.length);for(let B=0;Bv)this._bufs[B].copy(t,m,y),m+=v;else{this._bufs[B].copy(t,m,y,y+f),m+=v;break}f-=v,y&&(y=0)}return t.length>m?t.slice(0,m):t};AE.prototype.shallowSlice=function(t,r){if(t=t||0,r=typeof r!="number"?this.length:r,t<0&&(t+=this.length),r<0&&(r+=this.length),t===r)return this._new();let s=this._offset(t),a=this._offset(r),o=this._bufs.slice(s[0],a[0]+1);return a[1]===0?o.pop():o[o.length-1]=o[o.length-1].slice(0,a[1]),s[1]!==0&&(o[0]=o[0].slice(s[1])),this._new(o)};AE.prototype.toString=function(t,r,s){return this.slice(r,s).toString(t)};AE.prototype.consume=function(t){if(t=Math.trunc(t),Number.isNaN(t)||t<=0)return this;for(;this._bufs.length;)if(t>=this._bufs[0].length)t-=this._bufs[0].length,this.length-=this._bufs[0].length,this._bufs.shift();else{this._bufs[0]=this._bufs[0].slice(t),this.length-=t;break}return this};AE.prototype.duplicate=function(){let t=this._new();for(let r=0;rthis.length?this.length:t;let s=this._offset(t),a=s[0],o=s[1];for(;a=e.length){let f=g.indexOf(e,o);if(f!==-1)return this._reverseOffset([a,f]);o=g.length-e.length+1}else{let f=this._reverseOffset([a,o]);if(this._match(f,e))return f;o++}o=0}return-1};AE.prototype._match=function(e,t){if(this.length-e{"use strict";var Slr=nve().Duplex,L4o=tse(),UQe=Y7n();function Zk(e){if(!(this instanceof Zk))return new Zk(e);if(typeof e=="function"){this._callback=e;let t=function(s){this._callback&&(this._callback(s),this._callback=null)}.bind(this);this.on("pipe",function(s){s.on("error",t)}),this.on("unpipe",function(s){s.removeListener("error",t)}),e=null}UQe._init.call(this,e),Slr.call(this)}L4o(Zk,Slr);Object.assign(Zk.prototype,UQe.prototype);Zk.prototype._new=function(t){return new Zk(t)};Zk.prototype._write=function(t,r,s){this._appendBuffer(t),typeof s=="function"&&s()};Zk.prototype._read=function(t){if(!this.length)return this.push(null);t=Math.min(t,this.length),this.push(this.slice(0,t)),this.consume(t)};Zk.prototype.end=function(t){Slr.prototype.end.call(this,t),this._callback&&(this._callback(null,this.slice()),this._callback=null)};Zk.prototype._destroy=function(t,r){this._bufs.length=0,this.length=0,r(t)};Zk.prototype._isBufferList=function(t){return t instanceof Zk||t instanceof UQe||Zk.isBufferList(t)};Zk.isBufferList=UQe.isBufferList;jft.exports=Zk;jft.exports.BufferListStream=Zk;jft.exports.BufferList=UQe});var Rlr=z(sve=>{var V4o=Buffer.alloc,W4o="0000000000000000000",P4o="7777777777777777777",X7n=48,J7n=Buffer.from("ustar\0","binary"),O4o=Buffer.from("00","binary"),Q4o=Buffer.from("ustar ","binary"),M4o=Buffer.from(" \0","binary"),H4o=parseInt("7777",8),KQe=257,Nlr=263,Y4o=function(e,t,r){return typeof e!="number"?r:(e=~~e,e>=t?t:e>=0||(e+=t,e>=0)?e:0)},X4o=function(e){switch(e){case 0:return"file";case 1:return"link";case 2:return"symlink";case 3:return"character-device";case 4:return"block-device";case 5:return"directory";case 6:return"fifo";case 7:return"contiguous-file";case 72:return"pax-header";case 55:return"pax-global-header";case 27:return"gnu-long-link-path";case 28:case 30:return"gnu-long-path"}return null},J4o=function(e){switch(e){case"file":return 0;case"link":return 1;case"symlink":return 2;case"character-device":return 3;case"block-device":return 4;case"directory":return 5;case"fifo":return 6;case"contiguous-file":return 7;case"pax-header":return 72}return 0},U7n=function(e,t,r,s){for(;rt?P4o.slice(0,t)+" ":W4o.slice(0,t-e.length)+e+" "};function U4o(e){var t;if(e[0]===128)t=!0;else if(e[0]===255)t=!1;else return null;for(var r=[],s=e.length-1;s>0;s--){var a=e[s];t?r.push(a):r.push(255-a)}var o=0,g=r.length;for(s=0;s=Math.pow(10,r)&&r++,t+r+e};sve.decodeLongPath=function(e,t){return ive(e,0,e.length,t)};sve.encodePax=function(e){var t="";e.name&&(t+=Tlr(" path="+e.name+` +`)),e.linkname&&(t+=Tlr(" linkpath="+e.linkname+` +`));var r=e.pax;if(r)for(var s in r)t+=Tlr(" "+s+"="+r[s]+` +`);return Buffer.from(t)};sve.decodePax=function(e){for(var t={};e.length;){for(var r=0;r100;){var a=r.indexOf("/");if(a===-1)return null;s+=s?"/"+r.slice(0,a):r.slice(0,a),r=r.slice(a+1)}return Buffer.byteLength(r)>100||Buffer.byteLength(s)>155||e.linkname&&Buffer.byteLength(e.linkname)>100?null:(t.write(r),t.write(ose(e.mode&H4o,6),100),t.write(ose(e.uid,6),108),t.write(ose(e.gid,6),116),t.write(ose(e.size,11),124),t.write(ose(e.mtime.getTime()/1e3|0,11),136),t[156]=X7n+J4o(e.type),e.linkname&&t.write(e.linkname,157),J7n.copy(t,KQe),O4o.copy(t,Nlr),e.uname&&t.write(e.uname,265),e.gname&&t.write(e.gname,297),t.write(ose(e.devmajor||0,6),329),t.write(ose(e.devminor||0,6),337),s&&t.write(s,345),t.write(ose(K7n(t),6),148),t)};sve.decode=function(e,t,r){var s=e[156]===0?0:e[156]-X7n,a=ive(e,0,100,t),o=ase(e,100,8),g=ase(e,108,8),p=ase(e,116,8),f=ase(e,124,12),m=ase(e,136,12),y=X4o(s),B=e[157]===0?null:ive(e,157,100,t),v=ive(e,265,32),k=ive(e,297,32),T=ase(e,329,8),O=ase(e,337,8),X=K7n(e);if(X===8*32)return null;if(X!==ase(e,148,8))throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?");if(J7n.compare(e,KQe,KQe+6)===0)e[345]&&(a=ive(e,345,155,t)+"/"+a);else if(!(Q4o.compare(e,KQe,KQe+6)===0&&M4o.compare(e,Nlr,Nlr+2)===0)){if(!r)throw new Error("Invalid tar header: unknown format.")}return s===0&&a&&a[a.length-1]==="/"&&(s=5),{name:a,mode:o,uid:g,gid:p,size:f,mtime:new Date(1e3*m),type:y,linkname:B,uname:v,gname:k,devmajor:T,devminor:O}}});var rjn=z((Qdl,tjn)=>{var z7n=xt("util"),K4o=wlr(),jQe=Rlr(),q7n=nve().Writable,$7n=nve().PassThrough,ejn=function(){},j7n=function(e){return e&=511,e&&512-e},j4o=function(e,t){var r=new zft(e,t);return r.end(),r},z4o=function(e,t){return t.path&&(e.name=t.path),t.linkpath&&(e.linkname=t.linkpath),t.size&&(e.size=parseInt(t.size,10)),e.pax=t,e},zft=function(e,t){this._parent=e,this.offset=t,$7n.call(this,{autoDestroy:!1})};z7n.inherits(zft,$7n);zft.prototype.destroy=function(e){this._parent.destroy(e)};var Bz=function(e){if(!(this instanceof Bz))return new Bz(e);q7n.call(this,e),e=e||{},this._offset=0,this._buffer=K4o(),this._missing=0,this._partial=!1,this._onparse=ejn,this._header=null,this._stream=null,this._overflow=null,this._cb=null,this._locked=!1,this._destroyed=!1,this._pax=null,this._paxGlobal=null,this._gnuLongPath=null,this._gnuLongLinkPath=null;var t=this,r=t._buffer,s=function(){t._continue()},a=function(v){if(t._locked=!1,v)return t.destroy(v);t._stream||s()},o=function(){t._stream=null;var v=j7n(t._header.size);v?t._parse(v,g):t._parse(512,B),t._locked||s()},g=function(){t._buffer.consume(j7n(t._header.size)),t._parse(512,B),s()},p=function(){var v=t._header.size;t._paxGlobal=jQe.decodePax(r.slice(0,v)),r.consume(v),o()},f=function(){var v=t._header.size;t._pax=jQe.decodePax(r.slice(0,v)),t._paxGlobal&&(t._pax=Object.assign({},t._paxGlobal,t._pax)),r.consume(v),o()},m=function(){var v=t._header.size;this._gnuLongPath=jQe.decodeLongPath(r.slice(0,v),e.filenameEncoding),r.consume(v),o()},y=function(){var v=t._header.size;this._gnuLongLinkPath=jQe.decodeLongPath(r.slice(0,v),e.filenameEncoding),r.consume(v),o()},B=function(){var v=t._offset,k;try{k=t._header=jQe.decode(r.slice(0,512),e.filenameEncoding,e.allowUnknownFormat)}catch(T){t.emit("error",T)}if(r.consume(512),!k){t._parse(512,B),s();return}if(k.type==="gnu-long-path"){t._parse(k.size,m),s();return}if(k.type==="gnu-long-link-path"){t._parse(k.size,y),s();return}if(k.type==="pax-global-header"){t._parse(k.size,p),s();return}if(k.type==="pax-header"){t._parse(k.size,f),s();return}if(t._gnuLongPath&&(k.name=t._gnuLongPath,t._gnuLongPath=null),t._gnuLongLinkPath&&(k.linkname=t._gnuLongLinkPath,t._gnuLongLinkPath=null),t._pax&&(t._header=k=z4o(k,t._pax),t._pax=null),t._locked=!0,!k.size||k.type==="directory"){t._parse(512,B),t.emit("entry",k,j4o(t,v),a);return}t._stream=new zft(t,v),t.emit("entry",k,t._stream,a),t._parse(k.size,o),s()};this._onheader=B,this._parse(512,B)};z7n.inherits(Bz,q7n);Bz.prototype.destroy=function(e){this._destroyed||(this._destroyed=!0,e&&this.emit("error",e),this.emit("close"),this._stream&&this._stream.emit("close"))};Bz.prototype._parse=function(e,t){this._destroyed||(this._offset+=e,this._missing=e,t===this._onheader&&(this._partial=!1),this._onparse=t)};Bz.prototype._continue=function(){if(!this._destroyed){var e=this._cb;this._cb=ejn,this._overflow?this._write(this._overflow,void 0,e):e()}};Bz.prototype._write=function(e,t,r){if(!this._destroyed){var s=this._stream,a=this._buffer,o=this._missing;if(e.length&&(this._partial=!0),e.lengtho&&(g=e.slice(o),e=e.slice(0,o)),s?s.end(e):a.append(e),this._overflow=g,this._onparse()}};Bz.prototype._final=function(e){if(this._partial)return this.destroy(new Error("Unexpected end of data"));e()};tjn.exports=Bz});var ijn=z((Mdl,njn)=>{njn.exports=xt("fs").constants||xt("constants")});var ljn=z((Hdl,cjn)=>{var ove=ijn(),sjn=bXt(),$ft=tse(),q4o=Buffer.alloc,ojn=nve().Readable,ave=nve().Writable,$4o=xt("string_decoder").StringDecoder,qft=Rlr(),eJo=parseInt("755",8),tJo=parseInt("644",8),ajn=q4o(1024),xlr=function(){},Dlr=function(e,t){t&=511,t&&e.push(ajn.slice(0,512-t))};function rJo(e){switch(e&ove.S_IFMT){case ove.S_IFBLK:return"block-device";case ove.S_IFCHR:return"character-device";case ove.S_IFDIR:return"directory";case ove.S_IFIFO:return"fifo";case ove.S_IFLNK:return"symlink"}return"file"}var eIt=function(e){ave.call(this),this.written=0,this._to=e,this._destroyed=!1};$ft(eIt,ave);eIt.prototype._write=function(e,t,r){if(this.written+=e.length,this._to.push(e))return r();this._to._drain=r};eIt.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var tIt=function(){ave.call(this),this.linkname="",this._decoder=new $4o("utf-8"),this._destroyed=!1};$ft(tIt,ave);tIt.prototype._write=function(e,t,r){this.linkname+=this._decoder.write(e),r()};tIt.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var zQe=function(){ave.call(this),this._destroyed=!1};$ft(zQe,ave);zQe.prototype._write=function(e,t,r){r(new Error("No body allowed for this entry"))};zQe.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var VU=function(e){if(!(this instanceof VU))return new VU(e);ojn.call(this,e),this._drain=xlr,this._finalized=!1,this._finalizing=!1,this._destroyed=!1,this._stream=null};$ft(VU,ojn);VU.prototype.entry=function(e,t,r){if(this._stream)throw new Error("already piping an entry");if(!(this._finalized||this._destroyed)){typeof t=="function"&&(r=t,t=null),r||(r=xlr);var s=this;if((!e.size||e.type==="symlink")&&(e.size=0),e.type||(e.type=rJo(e.mode)),e.mode||(e.mode=e.type==="directory"?eJo:tJo),e.uid||(e.uid=0),e.gid||(e.gid=0),e.mtime||(e.mtime=new Date),typeof t=="string"&&(t=Buffer.from(t)),Buffer.isBuffer(t)){e.size=t.length,this._encode(e);var a=this.push(t);return Dlr(s,e.size),a?process.nextTick(r):this._drain=r,new zQe}if(e.type==="symlink"&&!e.linkname){var o=new tIt;return sjn(o,function(p){if(p)return s.destroy(),r(p);e.linkname=o.linkname,s._encode(e),r()}),o}if(this._encode(e),e.type!=="file"&&e.type!=="contiguous-file")return process.nextTick(r),new zQe;var g=new eIt(this);return this._stream=g,sjn(g,function(p){if(s._stream=null,p)return s.destroy(),r(p);if(g.written!==e.size)return s.destroy(),r(new Error("size mismatch"));Dlr(s,e.size),s._finalizing&&s.finalize(),r()}),g}};VU.prototype.finalize=function(){if(this._stream){this._finalizing=!0;return}this._finalized||(this._finalized=!0,this.push(ajn),this.push(null))};VU.prototype.destroy=function(e){this._destroyed||(this._destroyed=!0,e&&this.emit("error",e),this.emit("close"),this._stream&&this._stream.destroy&&this._stream.destroy())};VU.prototype._encode=function(e){if(!e.pax){var t=qft.encode(e);if(t){this.push(t);return}}this._encodePax(e)};VU.prototype._encodePax=function(e){var t=qft.encodePax({name:e.name,linkname:e.linkname,pax:e.pax}),r={name:"PaxHeader",mode:e.mode,uid:e.uid,gid:e.gid,size:t.length,mtime:e.mtime,type:"pax-header",linkname:e.linkname&&"PaxHeader",uname:e.uname,gname:e.gname,devmajor:e.devmajor,devminor:e.devminor};this.push(qft.encode(r)),this.push(t),Dlr(this,t.length),r.size=e.size,r.type=e.type,this.push(qft.encode(r))};VU.prototype._read=function(e){var t=this._drain;this._drain=xlr,t()};cjn.exports=VU});var ujn=z(klr=>{klr.extract=rjn();klr.pack=ljn()});var Glr=z(IQ=>{"use strict";Object.defineProperty(IQ,"__esModule",{value:!0});IQ.genPackList=IQ.genPackageManifest=IQ.genPackStream=IQ.prepareForPack=IQ.hasPackScripts=void 0;var fjn=(Oa(),Ai(Pa)),qQe=Bn(),wC=No(),gjn=fjn.__importDefault(gk()),nJo=fjn.__importDefault(ujn()),iJo=xt("zlib"),sJo=["/package.json","/readme","/readme.*","/license","/license.*","/licence","/licence.*","/changelog","/changelog.*"],oJo=["/package.tgz",".github",".git",".hg","node_modules",".npmignore",".gitignore",".#*",".DS_Store"];async function aJo(e){return!!(qQe.scriptUtils.hasWorkspaceScript(e,"prepack")||qQe.scriptUtils.hasWorkspaceScript(e,"postpack"))}IQ.hasPackScripts=aJo;async function cJo(e,{report:t},r){await qQe.scriptUtils.maybeExecuteWorkspaceLifecycleScript(e,"prepack",{report:t});try{let s=wC.ppath.join(e.cwd,qQe.Manifest.fileName);await wC.xfs.existsPromise(s)&&await e.manifest.loadFile(s,{baseFs:wC.xfs}),await r()}finally{await qQe.scriptUtils.maybeExecuteWorkspaceLifecycleScript(e,"postpack",{report:t})}}IQ.prepareForPack=cJo;async function lJo(e,t){typeof t>"u"&&(t=await Cjn(e));let r=new Set;for(let o of e.manifest.publishConfig?.executableFiles??new Set)r.add(wC.ppath.normalize(o));for(let o of e.manifest.bin.values())r.add(wC.ppath.normalize(o));let s=nJo.default.pack();process.nextTick(async()=>{for(let o of t){let g=wC.ppath.normalize(o),p=wC.ppath.resolve(e.cwd,g),f=wC.ppath.join("package",g),m=await wC.xfs.lstatPromise(p),y={name:f,mtime:new Date(wC.constants.SAFE_TIME*1e3)},B=r.has(g)?493:420,v,k,T=new Promise((X,U)=>{v=X,k=U}),O=X=>{X?k(X):v()};if(m.isFile()){let X;g==="package.json"?X=Buffer.from(JSON.stringify(await Ijn(e),null,2)):X=await wC.xfs.readFilePromise(p),s.entry({...y,mode:B,type:"file"},X,O)}else m.isSymbolicLink()?s.entry({...y,mode:B,type:"symlink",linkname:await wC.xfs.readlinkPromise(p)},O):O(new Error(`Unsupported file type ${m.mode} for ${wC.npath.fromPortablePath(g)}`));await T}s.finalize()});let a=(0,iJo.createGzip)();return s.pipe(a),a}IQ.genPackStream=lJo;async function Ijn(e){let t=JSON.parse(JSON.stringify(e.manifest.raw));return await e.project.configuration.triggerHook(r=>r.beforeWorkspacePacking,e,t),t}IQ.genPackageManifest=Ijn;async function Cjn(e){let t=e.project,r=t.configuration,s={accept:[],reject:[]};for(let B of oJo)s.reject.push(B);for(let B of sJo)s.accept.push(B);s.reject.push(r.get("rcFilename"));let a=B=>{if(B===null||!B.startsWith(`${e.cwd}/`))return;let v=wC.ppath.relative(e.cwd,B),k=wC.ppath.resolve(wC.PortablePath.root,v);s.reject.push(k)};a(wC.ppath.resolve(t.cwd,wC.Filename.lockfile)),a(r.get("cacheFolder")),a(r.get("globalFolder")),a(r.get("installStatePath")),a(r.get("virtualFolder")),a(r.get("yarnPath")),await r.triggerHook(B=>B.populateYarnPaths,t,B=>{a(B)});for(let B of t.workspaces){let v=wC.ppath.relative(e.cwd,B.cwd);v!==""&&!v.match(/^(\.\.)?\//)&&s.reject.push(`/${v}`)}let o={accept:[],reject:[]},g=e.manifest.publishConfig?.main??e.manifest.main,p=e.manifest.publishConfig?.module??e.manifest.module,f=e.manifest.publishConfig?.browser??e.manifest.browser,m=e.manifest.publishConfig?.bin??e.manifest.bin;g!=null&&o.accept.push(wC.ppath.resolve(wC.PortablePath.root,g)),p!=null&&o.accept.push(wC.ppath.resolve(wC.PortablePath.root,p)),typeof f=="string"&&o.accept.push(wC.ppath.resolve(wC.PortablePath.root,f));for(let B of m.values())o.accept.push(wC.ppath.resolve(wC.PortablePath.root,B));if(f instanceof Map)for(let[B,v]of f.entries())o.accept.push(wC.ppath.resolve(wC.PortablePath.root,B)),typeof v=="string"&&o.accept.push(wC.ppath.resolve(wC.PortablePath.root,v));let y=e.manifest.files!==null;if(y){o.reject.push("/*");for(let B of e.manifest.files)mjn(o.accept,B,{cwd:wC.PortablePath.root})}return await uJo(e.cwd,{hasExplicitFileList:y,globalList:s,ignoreList:o})}IQ.genPackList=Cjn;async function uJo(e,{hasExplicitFileList:t,globalList:r,ignoreList:s}){let a=[],o=new wC.JailFS(e),g=[[wC.PortablePath.root,[s]]];for(;g.length>0;){let[p,f]=g.pop(),m=await o.lstatPromise(p);if(!djn(p,{globalList:r,ignoreLists:m.isDirectory()?null:f}))if(m.isDirectory()){let y=await o.readdirPromise(p),B=!1,v=!1;if(!t||p!==wC.PortablePath.root)for(let O of y)B=B||O===".gitignore",v=v||O===".npmignore";let k=v?await Ajn(o,p,".npmignore"):B?await Ajn(o,p,".gitignore"):null,T=k!==null?[k].concat(f):f;djn(p,{globalList:r,ignoreLists:f})&&(T=[...f,{accept:[],reject:["**/*"]}]);for(let O of y)g.push([wC.ppath.resolve(p,O),T])}else(m.isFile()||m.isSymbolicLink())&&a.push(wC.ppath.relative(wC.PortablePath.root,p))}return a.sort()}async function Ajn(e,t,r){let s={accept:[],reject:[]},a=await e.readFilePromise(wC.ppath.join(t,r),"utf8");for(let o of a.split(/\n/g))mjn(s.reject,o,{cwd:t});return s}function gJo(e,{cwd:t}){let r=e[0]==="!";return r&&(e=e.slice(1)),e.match(/\.{0,1}\//)&&(e=wC.ppath.resolve(t,e)),r&&(e=`!${e}`),e}function mjn(e,t,{cwd:r}){let s=t.trim();s===""||s[0]==="#"||e.push(gJo(s,{cwd:r}))}var UW;(function(e){e[e.None=0]="None",e[e.Match=1]="Match",e[e.NegatedMatch=2]="NegatedMatch"})(UW||(UW={}));function djn(e,{globalList:t,ignoreLists:r}){let s=rIt(e,t.accept);if(s!==UW.None)return s===UW.NegatedMatch;let a=rIt(e,t.reject);if(a!==UW.None)return a===UW.Match;if(r!==null)for(let o of r){let g=rIt(e,o.accept);if(g!==UW.None)return g===UW.NegatedMatch;let p=rIt(e,o.reject);if(p!==UW.None)return p===UW.Match}return!1}function rIt(e,t){let r=t,s=[];for(let a=0;a{"use strict";Object.defineProperty(Flr,"__esModule",{value:!0});var AJo=(Oa(),Ai(Pa)),hjn=il(),vz=Bn(),cse=No(),cve=(Zl(),Ai(pg)),nIt=AJo.__importStar(Glr()),$Qe=class extends hjn.BaseCommand{constructor(){super(...arguments),this.installIfNeeded=cve.Option.Boolean("--install-if-needed",!1,{description:"Run a preliminary `yarn install` if the package contains build scripts"}),this.dryRun=cve.Option.Boolean("-n,--dry-run",!1,{description:"Print the file paths without actually generating the package archive"}),this.json=cve.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.out=cve.Option.String("-o,--out",{description:"Create the archive at the specified path"}),this.filename=cve.Option.String("--filename",{hidden:!0})}async execute(){let t=await vz.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await vz.Project.find(t,this.context.cwd);if(!s)throw new hjn.WorkspaceRequiredError(r.cwd,this.context.cwd);await nIt.hasPackScripts(s)&&(this.installIfNeeded?await r.install({cache:await vz.Cache.find(t),report:new vz.ThrowReport}):await r.restoreInstallState());let a=this.out??this.filename,o=typeof a<"u"?cse.ppath.resolve(this.context.cwd,dJo(a,{workspace:s})):cse.ppath.resolve(s.cwd,"package.tgz");return(await vz.StreamReport.start({configuration:t,stdout:this.context.stdout,json:this.json},async p=>{await nIt.prepareForPack(s,{report:p},async()=>{p.reportJson({base:cse.npath.fromPortablePath(s.cwd)});let f=await nIt.genPackList(s);for(let m of f)p.reportInfo(null,cse.npath.fromPortablePath(m)),p.reportJson({location:cse.npath.fromPortablePath(m)});if(!this.dryRun){let m=await nIt.genPackStream(s,f),y=cse.xfs.createWriteStream(o);m.pipe(y),await new Promise(B=>{y.on("finish",B)})}}),this.dryRun||(p.reportInfo(vz.MessageName.UNNAMED,`Package archive generated in ${vz.formatUtils.pretty(t,o,vz.formatUtils.Type.PATH)}`),p.reportJson({output:cse.npath.fromPortablePath(o)}))})).exitCode()}};$Qe.paths=[["pack"]];$Qe.usage=cve.Command.Usage({description:"generate a tarball from the active workspace",details:"\n This command will turn the active workspace into a compressed archive suitable for publishing. The archive will by default be stored at the root of the workspace (`package.tgz`).\n\n If the `-o,---out` is set the archive will be created at the specified path. The `%s` and `%v` variables can be used within the path and will be respectively replaced by the package name and version.\n ",examples:[["Create an archive from the active workspace","yarn pack"],["List the files that would be made part of the workspace's archive","yarn pack --dry-run"],["Name and output the archive in a dedicated folder","yarn pack --out /artifacts/%s-%v.tgz"]]});Flr.default=$Qe;function dJo(e,{workspace:t}){let r=e.replace("%s",pJo(t)).replace("%v",fJo(t));return cse.npath.toPortablePath(r)}function pJo(e){return e.manifest.name!==null?vz.structUtils.slugifyIdent(e.manifest.name):"package"}function fJo(e){return e.manifest.version!==null?e.manifest.version:"unknown"}});var kpe=z(xpe=>{"use strict";Object.defineProperty(xpe,"__esModule",{value:!0});xpe.packUtils=xpe.PackCommand=void 0;var bjn=(Oa(),Ai(Pa)),e5e=Bn(),yjn=Bn(),Ejn=bjn.__importDefault(_jn());xpe.PackCommand=Ejn.default;var IJo=bjn.__importStar(Glr());xpe.packUtils=IJo;var CJo=["dependencies","devDependencies","peerDependencies"],mJo="workspace:",hJo=(e,t)=>{t.publishConfig&&(t.publishConfig.type&&(t.type=t.publishConfig.type),t.publishConfig.main&&(t.main=t.publishConfig.main),t.publishConfig.browser&&(t.browser=t.publishConfig.browser),t.publishConfig.module&&(t.module=t.publishConfig.module),t.publishConfig.exports&&(t.exports=t.publishConfig.exports),t.publishConfig.imports&&(t.imports=t.publishConfig.imports),t.publishConfig.bin&&(t.bin=t.publishConfig.bin));let r=e.project;for(let s of CJo)for(let a of e.manifest.getForScope(s).values()){let o=r.tryWorkspaceByDescriptor(a),g=e5e.structUtils.parseRange(a.range);if(g.protocol===mJo)if(o===null){if(r.tryWorkspaceByIdent(a)===null)throw new yjn.ReportError(yjn.MessageName.WORKSPACE_NOT_FOUND,`${e5e.structUtils.prettyDescriptor(r.configuration,a)}: No local workspace found for this range`)}else{let p;e5e.structUtils.areDescriptorsEqual(a,o.anchoredDescriptor)||g.selector==="*"?p=o.manifest.version??"0.0.0":g.selector==="~"||g.selector==="^"?p=`${g.selector}${o.manifest.version??"0.0.0"}`:p=g.selector;let f=s==="dependencies"?e5e.structUtils.makeDescriptor(a,"unknown"):null,m=f!==null&&e.manifest.ensureDependencyMeta(f).optional?"optionalDependencies":s;t[m][e5e.structUtils.stringifyIdent(a)]=p}}},_Jo={hooks:{beforeWorkspacePacking:hJo},commands:[Ejn.default]};xpe.default=_Jo});var Djn=z((jdl,Rjn)=>{Rjn.exports=typeof queueMicrotask=="function"?queueMicrotask:e=>Promise.resolve().then(e)});var kjn=z((zdl,xjn)=>{xjn.exports=typeof process<"u"&&typeof process.nextTick=="function"?process.nextTick.bind(process):Djn()});var Fjn=z(($dl,Gjn)=>{Gjn.exports=class{constructor(t){if(!(t>0)||t-1&t)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(t),this.mask=t-1,this.top=0,this.btm=0,this.next=null}clear(){this.top=this.btm=0,this.next=null,this.buffer.fill(void 0)}push(t){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=t,this.top=this.top+1&this.mask,!0)}shift(){let t=this.buffer[this.btm];if(t!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,t}peek(){return this.buffer[this.btm]}isEmpty(){return this.buffer[this.btm]===void 0}}});var Vlr=z((tpl,Ljn)=>{var Zjn=Fjn();Ljn.exports=class{constructor(t){this.hwm=t||16,this.head=new Zjn(this.hwm),this.tail=this.head,this.length=0}clear(){this.head=this.tail,this.head.clear(),this.length=0}push(t){if(this.length++,!this.head.push(t)){let r=this.head;this.head=r.next=new Zjn(2*this.head.buffer.length),this.head.push(t)}}shift(){this.length!==0&&this.length--;let t=this.tail.shift();if(t===void 0&&this.tail.next){let r=this.tail.next;return this.tail.next=null,this.tail=r,this.tail.shift()}return t}peek(){let t=this.tail.peek();return t===void 0&&this.tail.next?this.tail.next.peek():t}isEmpty(){return this.length===0}}});var Wjn=z((npl,Vjn)=>{Vjn.exports=class{constructor(t){this.encoding=t}get remaining(){return 0}decode(t){return t.toString(this.encoding)}flush(){return""}}});var Ojn=z((spl,Pjn)=>{Pjn.exports=class{constructor(){this.codePoint=0,this.bytesSeen=0,this.bytesNeeded=0,this.lowerBoundary=128,this.upperBoundary=191}get remaining(){return this.bytesSeen}decode(t){if(this.bytesNeeded===0){let s=!0;for(let a=Math.max(0,t.byteLength-4),o=t.byteLength;a=194&&o<=223?(this.bytesNeeded=2,this.codePoint=o&31):o>=224&&o<=239?(o===224?this.lowerBoundary=160:o===237&&(this.upperBoundary=159),this.bytesNeeded=3,this.codePoint=o&15):o>=240&&o<=244?(o===240&&(this.lowerBoundary=144),o===244&&(this.upperBoundary=143),this.bytesNeeded=4,this.codePoint=o&7):r+="\uFFFD");continue}if(othis.upperBoundary){this.codePoint=0,this.bytesNeeded=0,this.bytesSeen=0,this.lowerBoundary=128,this.upperBoundary=191,r+="\uFFFD";continue}this.lowerBoundary=128,this.upperBoundary=191,this.codePoint=this.codePoint<<6|o&63,this.bytesSeen++,this.bytesSeen===this.bytesNeeded&&(r+=String.fromCodePoint(this.codePoint),this.codePoint=0,this.bytesNeeded=0,this.bytesSeen=0)}return r}flush(){let t=this.bytesNeeded>0?"\uFFFD":"";return this.codePoint=0,this.bytesNeeded=0,this.bytesSeen=0,this.lowerBoundary=128,this.upperBoundary=191,t}}});var Mjn=z((apl,Qjn)=>{var yJo=Wjn(),bJo=Ojn();Qjn.exports=class{constructor(t="utf8"){switch(this.encoding=EJo(t),this.encoding){case"utf8":this.decoder=new bJo;break;case"utf16le":case"base64":throw new Error("Unsupported encoding: "+this.encoding);default:this.decoder=new yJo(this.encoding)}}get remaining(){return this.decoder.remaining}push(t){return typeof t=="string"?t:this.decoder.decode(t)}write(t){return this.push(t)}end(t){let r="";return t&&(r=this.push(t)),r+=this.decoder.flush(),r}};function EJo(e){switch(e=e.toLowerCase(),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:throw new Error("Unknown encoding: "+e)}}});var eur=z((cpl,pzn)=>{var{EventEmitter:BJo}=xt("events"),uIt=new Error("Stream was destroyed"),Wlr=new Error("Premature close"),Kjn=kjn(),jjn=Vlr(),vJo=Mjn(),uB=(1<<29)-1,Vpe=1,Xlr=2,Gpe=4,t5e=8,zjn=uB^Vpe,SJo=uB^Xlr,a5e=16,r5e=32,dve=64,lse=128,c5e=256,Jlr=512,Fpe=1024,Plr=2048,Ulr=4096,Klr=8192,aY=16384,lve=32768,gIt=65536,Zpe=131072,qjn=c5e|Jlr,wJo=a5e|gIt,TJo=dve|a5e,NJo=Ulr|lse,jlr=c5e|Zpe,RJo=uB^a5e,DJo=uB^dve,xJo=uB^(dve|gIt),Hjn=uB^gIt,kJo=uB^c5e,GJo=uB^(lse|Klr),FJo=uB^Fpe,Yjn=uB^qjn,$jn=uB^lve,ZJo=uB^r5e,ezn=uB^Zpe,LJo=uB^jlr,use=1<<18,gve=2<<18,l5e=4<<18,Lpe=8<<18,u5e=16<<18,Wpe=32<<18,Olr=64<<18,uve=128<<18,zlr=256<<18,Ave=512<<18,AIt=1024<<18,tzn=uB^(use|zlr),rzn=uB^l5e,VJo=uB^Ave,WJo=uB^u5e,PJo=uB^Lpe,nzn=uB^uve,OJo=uB^gve,izn=uB^AIt,n5e=a5e|use,szn=uB^n5e,qlr=aY|Wpe,Sz=Gpe|t5e|Xlr,KW=Sz|Vpe,ozn=Sz|qlr,QJo=rzn&DJo,$lr=uve|lve,MJo=$lr&szn,azn=KW|MJo,HJo=KW|Fpe|aY,Xjn=KW|aY|lse,YJo=KW|Fpe|lse,XJo=KW|Ulr|lse|Klr,JJo=KW|a5e|Fpe|aY|gIt|Zpe,UJo=Sz|Fpe|aY,KJo=r5e|KW|lve|dve,jJo=KW|Ave|Wpe,zJo=Lpe|u5e,czn=Lpe|use,qJo=Lpe|u5e|KW|use,Jjn=KW|use|Lpe|AIt,$Jo=l5e|use,eUo=use|zlr,tUo=KW|Ave|czn|Wpe,rUo=u5e|Sz|Ave|Wpe,nUo=gve|KW|uve|l5e,sIt=Symbol.asyncIterator||Symbol("asyncIterator"),oIt=class{constructor(t,{highWaterMark:r=16384,map:s=null,mapWritable:a,byteLength:o,byteLengthWritable:g}={}){this.stream=t,this.queue=new jjn,this.highWaterMark=r,this.buffered=0,this.error=null,this.pipeline=null,this.drains=null,this.byteLength=g||o||dzn,this.map=a||s,this.afterWrite=oUo.bind(this),this.afterUpdateNextTick=lUo.bind(this)}get ended(){return(this.stream._duplexState&Wpe)!==0}push(t){return this.map!==null&&(t=this.map(t)),this.buffered+=this.byteLength(t),this.queue.push(t),this.buffered0,this.error=null,this.pipeline=null,this.byteLength=g||o||dzn,this.map=a||s,this.pipeTo=null,this.afterRead=aUo.bind(this),this.afterUpdateNextTick=cUo.bind(this)}get ended(){return(this.stream._duplexState&aY)!==0}pipe(t,r){if(this.pipeTo!==null)throw new Error("Can only pipe to one destination");if(typeof r!="function"&&(r=null),this.stream._duplexState|=Jlr,this.pipeTo=t,this.pipeline=new Hlr(this.stream,t,r),r&&this.stream.on("error",Ujn),o5e(t))t._writableState.pipeline=this.pipeline,r&&t.on("error",Ujn),t.on("finish",this.pipeline.finished.bind(this.pipeline));else{let s=this.pipeline.done.bind(this.pipeline,t),a=this.pipeline.done.bind(this.pipeline,t,null);t.on("error",s),t.on("close",a),t.on("finish",this.pipeline.finished.bind(this.pipeline))}t.on("drain",iUo.bind(this)),this.stream.emit("piping",t),t.emit("pipe",this.stream)}push(t){let r=this.stream;return t===null?(this.highWaterMark=0,r._duplexState=(r._duplexState|Fpe)&xJo,!1):this.map!==null&&(t=this.map(t),t===null)?(r._duplexState&=Hjn,this.buffered0;)r.push(this.shift());for(let s=0;s0;)s.drains.shift().resolve(!1);s.pipeline!==null&&s.pipeline.done(t,e)}}function oUo(e){let t=this.stream;e&&t.destroy(e),t._duplexState&=tzn,this.drains!==null&&uUo(this.drains),(t._duplexState&qJo)===u5e&&(t._duplexState&=WJo,(t._duplexState&Olr)===Olr&&t.emit("drain")),this.updateCallback()}function aUo(e){e&&this.stream.destroy(e),this.stream._duplexState&=RJo,this.readAhead===!1&&!(this.stream._duplexState&c5e)&&(this.stream._duplexState&=ezn),this.updateCallback()}function cUo(){this.stream._duplexState&r5e||(this.stream._duplexState&=$jn,this.update())}function lUo(){this.stream._duplexState&gve||(this.stream._duplexState&=nzn,this.update())}function uUo(e){for(let t=0;t0)?null:s(g)}}_read(t){t(null)}pipe(t,r){return this._readableState.updateNextTick(),this._readableState.pipe(t,r),t}read(){return this._readableState.updateNextTick(),this._readableState.read()}push(t){return this._readableState.updateNextTick(),this._readableState.push(t)}unshift(t){return this._readableState.updateNextTick(),this._readableState.unshift(t)}resume(){return this._duplexState|=jlr,this._readableState.updateNextTick(),this}pause(){return this._duplexState&=this._readableState.readAhead===!1?LJo:kJo,this}static _fromAsyncIterator(t,r){let s,a=new e({...r,read(g){t.next().then(o).then(g.bind(null,null)).catch(g)},predestroy(){s=t.return()},destroy(g){if(!s)return g(null);s.then(g.bind(null,null)).catch(g)}});return a;function o(g){g.done?a.push(null):a.push(g.value)}}static from(t,r){if(hUo(t))return t;if(t[sIt])return this._fromAsyncIterator(t[sIt](),r);Array.isArray(t)||(t=t===void 0?[]:[t]);let s=0;return new e({...r,read(a){this.push(s===t.length?null:t[s++]),a(null)}})}static isBackpressured(t){return(t._duplexState&UJo)!==0||t._readableState.buffered>=t._readableState.highWaterMark}static isPaused(t){return(t._duplexState&c5e)===0}[sIt](){let t=this,r=null,s=null,a=null;return this.on("error",m=>{r=m}),this.on("readable",o),this.on("close",g),{[sIt](){return this},next(){return new Promise(function(m,y){s=m,a=y;let B=t.read();B!==null?p(B):t._duplexState&t5e&&p(null)})},return(){return f(null)},throw(m){return f(m)}};function o(){s!==null&&p(t.read())}function g(){s!==null&&p(null)}function p(m){a!==null&&(r?a(r):m===null&&!(t._duplexState&aY)?a(uIt):s({value:m,done:m===null}),a=s=null)}function f(m){return t.destroy(m),new Promise((y,B)=>{if(t._duplexState&t5e)return y({value:void 0,done:!0});t.once("close",function(){m?B(m):y({value:void 0,done:!0})})})}}},cIt=class extends i5e{constructor(t){super(t),this._duplexState|=Vpe|aY,this._writableState=new oIt(this,t),t&&(t.writev&&(this._writev=t.writev),t.write&&(this._write=t.write),t.final&&(this._final=t.final),t.eagerOpen&&this._writableState.updateNextTick())}cork(){this._duplexState|=AIt}uncork(){this._duplexState&=izn,this._writableState.updateNextTick()}_writev(t,r){r(null)}_write(t,r){this._writableState.autoBatch(t,r)}_final(t){t(null)}static isBackpressured(t){return(t._duplexState&rUo)!==0}static drained(t){if(t.destroyed)return Promise.resolve(!1);let r=t._writableState,a=(bUo(t)?Math.min(1,r.queue.length):r.queue.length)+(t._duplexState&zlr?1:0);return a===0?Promise.resolve(!0):(r.drains===null&&(r.drains=[]),new Promise(o=>{r.drains.push({writes:a,resolve:o})}))}write(t){return this._writableState.updateNextTick(),this._writableState.push(t)}end(t){return this._writableState.updateNextTick(),this._writableState.end(t),this}},s5e=class extends aIt{constructor(t){super(t),this._duplexState=Vpe|this._duplexState&Zpe,this._writableState=new oIt(this,t),t&&(t.writev&&(this._writev=t.writev),t.write&&(this._write=t.write),t.final&&(this._final=t.final))}cork(){this._duplexState|=AIt}uncork(){this._duplexState&=izn,this._writableState.updateNextTick()}_writev(t,r){r(null)}_write(t,r){this._writableState.autoBatch(t,r)}_final(t){t(null)}write(t){return this._writableState.updateNextTick(),this._writableState.push(t)}end(t){return this._writableState.updateNextTick(),this._writableState.end(t),this}},lIt=class extends s5e{constructor(t){super(t),this._transformState=new Mlr(this),t&&(t.transform&&(this._transform=t.transform),t.flush&&(this._flush=t.flush))}_write(t,r){this._readableState.buffered>=this._readableState.highWaterMark?this._transformState.data=t:this._transform(t,this._transformState.afterTransform)}_read(t){if(this._transformState.data!==null){let r=this._transformState.data;this._transformState.data=null,t(null),this._transform(r,this._transformState.afterTransform)}else t(null)}destroy(t){super.destroy(t),this._transformState.data!==null&&(this._transformState.data=null,this._transformState.afterTransform())}_transform(t,r){r(null,t)}_flush(t){t(null)}_final(t){this._transformState.afterFinal=t,this._flush(dUo.bind(this))}},Ylr=class extends lIt{};function dUo(e,t){let r=this._transformState.afterFinal;if(e)return r(e);t!=null&&this.push(t),this.push(null),r(null)}function pUo(...e){return new Promise((t,r)=>gzn(...e,s=>{if(s)return r(s);t()}))}function gzn(e,...t){let r=Array.isArray(e)?[...e,...t]:[e,...t],s=r.length&&typeof r[r.length-1]=="function"?r.pop():null;if(r.length<2)throw new Error("Pipeline requires at least 2 streams");let a=r[0],o=null,g=null;for(let m=1;m1,f),a.pipe(o)),a=o;if(s){let m=!1,y=o5e(o)||!!(o._writableState&&o._writableState.autoDestroy);o.on("error",B=>{g===null&&(g=B)}),o.on("finish",()=>{m=!0,y||s(g)}),y&&o.on("close",()=>s(g||(m?null:Wlr)))}return o;function p(m,y,B,v){m.on("error",v),m.on("close",k);function k(){if(y&&m._readableState&&!m._readableState.ended||B&&m._writableState&&!m._writableState.ended)return v(Wlr)}}function f(m){if(!(!m||g)){g=m;for(let y of r)y.destroy(m)}}}function fUo(e){return e}function Azn(e){return!!e._readableState||!!e._writableState}function o5e(e){return typeof e._duplexState=="number"&&Azn(e)}function IUo(e){return!!e._readableState&&e._readableState.ended}function CUo(e){return!!e._writableState&&e._writableState.ended}function mUo(e,t={}){let r=e._readableState&&e._readableState.error||e._writableState&&e._writableState.error;return!t.all&&r===uIt?null:r}function hUo(e){return o5e(e)&&e.readable}function _Uo(e){return typeof e=="object"&&e!==null&&typeof e.byteLength=="number"}function dzn(e){return _Uo(e)?e.byteLength:1024}function Ujn(){}function yUo(){this.destroy(new Error("Stream aborted."))}function bUo(e){return e._writev!==cIt.prototype._writev&&e._writev!==s5e.prototype._writev}pzn.exports={pipeline:gzn,pipelinePromise:pUo,isStream:Azn,isStreamx:o5e,isEnded:IUo,isFinished:CUo,getStreamError:mUo,Stream:i5e,Writable:cIt,Readable:aIt,Duplex:s5e,Transform:lIt,PassThrough:Ylr}});var dIt=z((lpl,fzn)=>{function EUo(e){return Buffer.isBuffer(e)||e instanceof Uint8Array}function BUo(e){return Buffer.isEncoding(e)}function vUo(e,t,r){return Buffer.alloc(e,t,r)}function SUo(e){return Buffer.allocUnsafe(e)}function wUo(e){return Buffer.allocUnsafeSlow(e)}function TUo(e,t){return Buffer.byteLength(e,t)}function NUo(e,t){return Buffer.compare(e,t)}function RUo(e,t){return Buffer.concat(e,t)}function DUo(e,t,r,s,a){return Vy(e).copy(t,r,s,a)}function xUo(e,t){return Vy(e).equals(t)}function kUo(e,t,r,s,a){return Vy(e).fill(t,r,s,a)}function GUo(e,t,r){return Buffer.from(e,t,r)}function FUo(e,t,r,s){return Vy(e).includes(t,r,s)}function ZUo(e,t,r,s){return Vy(e).indexOf(t,r,s)}function LUo(e,t,r,s){return Vy(e).lastIndexOf(t,r,s)}function VUo(e){return Vy(e).swap16()}function WUo(e){return Vy(e).swap32()}function PUo(e){return Vy(e).swap64()}function Vy(e){return Buffer.isBuffer(e)?e:Buffer.from(e.buffer,e.byteOffset,e.byteLength)}function OUo(e,t,r,s){return Vy(e).toString(t,r,s)}function QUo(e,t,r,s,a){return Vy(e).write(t,r,s,a)}function MUo(e,t,r){return Vy(e).writeDoubleLE(t,r)}function HUo(e,t,r){return Vy(e).writeFloatLE(t,r)}function YUo(e,t,r){return Vy(e).writeUInt32LE(t,r)}function XUo(e,t,r){return Vy(e).writeInt32LE(t,r)}function JUo(e,t){return Vy(e).readDoubleLE(t)}function UUo(e,t){return Vy(e).readFloatLE(t)}function KUo(e,t){return Vy(e).readUInt32LE(t)}function jUo(e,t){return Vy(e).readInt32LE(t)}function zUo(e,t,r){return Vy(e).writeDoubleBE(t,r)}function qUo(e,t,r){return Vy(e).writeFloatBE(t,r)}function $Uo(e,t,r){return Vy(e).writeUInt32BE(t,r)}function eKo(e,t,r){return Vy(e).writeInt32BE(t,r)}function tKo(e,t){return Vy(e).readDoubleBE(t)}function rKo(e,t){return Vy(e).readFloatBE(t)}function nKo(e,t){return Vy(e).readUInt32BE(t)}function iKo(e,t){return Vy(e).readInt32BE(t)}fzn.exports={isBuffer:EUo,isEncoding:BUo,alloc:vUo,allocUnsafe:SUo,allocUnsafeSlow:wUo,byteLength:TUo,compare:NUo,concat:RUo,copy:DUo,equals:xUo,fill:kUo,from:GUo,includes:FUo,indexOf:ZUo,lastIndexOf:LUo,swap16:VUo,swap32:WUo,swap64:PUo,toBuffer:Vy,toString:OUo,write:QUo,writeDoubleLE:MUo,writeFloatLE:HUo,writeUInt32LE:YUo,writeInt32LE:XUo,readDoubleLE:JUo,readFloatLE:UUo,readUInt32LE:KUo,readInt32LE:jUo,writeDoubleBE:zUo,writeFloatBE:qUo,writeUInt32BE:$Uo,writeInt32BE:eKo,readDoubleBE:tKo,readFloatBE:rKo,readUInt32BE:nKo,readInt32BE:iKo}});var nur=z(fve=>{var mh=dIt(),sKo="0000000000000000000",oKo="7777777777777777777",pIt=48,Izn=mh.from([117,115,116,97,114,0]),aKo=mh.from([pIt,pIt]),cKo=mh.from([117,115,116,97,114,32]),lKo=mh.from([32,0]),uKo=4095,g5e=257,rur=263;fve.decodeLongPath=function(t,r){return pve(t,0,t.length,r)};fve.encodePax=function(t){let r="";t.name&&(r+=tur(" path="+t.name+` +`)),t.linkname&&(r+=tur(" linkpath="+t.linkname+` +`));let s=t.pax;if(s)for(let a in s)r+=tur(" "+a+"="+s[a]+` +`);return mh.from(r)};fve.decodePax=function(t){let r={};for(;t.length;){let s=0;for(;s100;){let o=s.indexOf("/");if(o===-1)return null;a+=a?"/"+s.slice(0,o):s.slice(0,o),s=s.slice(o+1)}return mh.byteLength(s)>100||mh.byteLength(a)>155||t.linkname&&mh.byteLength(t.linkname)>100?null:(mh.write(r,s),mh.write(r,Ase(t.mode&uKo,6),100),mh.write(r,Ase(t.uid,6),108),mh.write(r,Ase(t.gid,6),116),CKo(t.size,r,124),mh.write(r,Ase(t.mtime.getTime()/1e3|0,11),136),r[156]=pIt+fKo(t.type),t.linkname&&mh.write(r,t.linkname,157),mh.copy(Izn,r,g5e),mh.copy(aKo,r,rur),t.uname&&mh.write(r,t.uname,265),t.gname&&mh.write(r,t.gname,297),mh.write(r,Ase(t.devmajor||0,6),329),mh.write(r,Ase(t.devminor||0,6),337),a&&mh.write(r,a,345),mh.write(r,Ase(mzn(r),6),148),r)};fve.decode=function(t,r,s){let a=t[156]===0?0:t[156]-pIt,o=pve(t,0,100,r),g=gse(t,100,8),p=gse(t,108,8),f=gse(t,116,8),m=gse(t,124,12),y=gse(t,136,12),B=pKo(a),v=t[157]===0?null:pve(t,157,100,r),k=pve(t,265,32),T=pve(t,297,32),O=gse(t,329,8),X=gse(t,337,8),U=mzn(t);if(U===8*32)return null;if(U!==gse(t,148,8))throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?");if(gKo(t))t[345]&&(o=pve(t,345,155,r)+"/"+o);else if(!AKo(t)){if(!s)throw new Error("Invalid tar header: unknown format.")}return a===0&&o&&o[o.length-1]==="/"&&(a=5),{name:o,mode:g,uid:p,gid:f,size:m,mtime:new Date(1e3*y),type:B,linkname:v,uname:k,gname:T,devmajor:O,devminor:X,pax:null}};function gKo(e){return mh.equals(Izn,e.subarray(g5e,g5e+6))}function AKo(e){return mh.equals(cKo,e.subarray(g5e,g5e+6))&&mh.equals(lKo,e.subarray(rur,rur+2))}function dKo(e,t,r){return typeof e!="number"?r:(e=~~e,e>=t?t:e>=0||(e+=t,e>=0)?e:0)}function pKo(e){switch(e){case 0:return"file";case 1:return"link";case 2:return"symlink";case 3:return"character-device";case 4:return"block-device";case 5:return"directory";case 6:return"fifo";case 7:return"contiguous-file";case 72:return"pax-header";case 55:return"pax-global-header";case 27:return"gnu-long-link-path";case 28:case 30:return"gnu-long-path"}return null}function fKo(e){switch(e){case"file":return 0;case"link":return 1;case"symlink":return 2;case"character-device":return 3;case"block-device":return 4;case"directory":return 5;case"fifo":return 6;case"contiguous-file":return 7;case"pax-header":return 72}return 0}function Czn(e,t,r,s){for(;rt?oKo.slice(0,t)+" ":sKo.slice(0,t-e.length)+e+" "}function IKo(e,t,r){t[r]=128;for(let s=11;s>0;s--)t[r+s]=e&255,e=Math.floor(e/256)}function CKo(e,t,r){e.toString(8).length>11?IKo(e,t,r):mh.write(t,Ase(e,11),r)}function mKo(e){let t;if(e[0]===128)t=!0;else if(e[0]===255)t=!1;else return null;let r=[],s;for(s=e.length-1;s>0;s--){let g=e[s];t?r.push(g):r.push(255-g)}let a=0,o=r.length;for(s=0;s=Math.pow(10,r)&&r++,t+r+e}});var Ezn=z((gpl,bzn)=>{var{Writable:hKo,Readable:_Ko,getStreamError:hzn}=eur(),yKo=Vlr(),_zn=dIt(),Ive=nur(),bKo=_zn.alloc(0),sur=class{constructor(){this.buffered=0,this.shifted=0,this.queue=new yKo,this._offset=0}push(t){this.buffered+=t.byteLength,this.queue.push(t)}shiftFirst(t){return this._buffered===0?null:this._next(t)}shift(t){if(t>this.buffered)return null;if(t===0)return bKo;let r=this._next(t);if(t===r.byteLength)return r;let s=[r];for(;(t-=r.byteLength)>0;)r=this._next(t),s.push(r);return _zn.concat(s)}_next(t){let r=this.queue.peek(),s=r.byteLength-this._offset;if(t>=s){let a=this._offset?r.subarray(this._offset,r.byteLength):r;return this.queue.shift(),this._offset=0,this.buffered-=s,this.shifted+=s,a}return this.buffered-=t,this.shifted+=t,r.subarray(this._offset,this._offset+=t)}},our=class extends _Ko{constructor(t,r,s){super(),this.header=r,this.offset=s,this._parent=t}_read(t){this.header.size===0&&this.push(null),this._parent._stream===this&&this._parent._update(),t(null)}_predestroy(){this._parent.destroy(hzn(this))}_detach(){this._parent._stream===this&&(this._parent._stream=null,this._parent._missing=yzn(this.header.size),this._parent._update())}_destroy(t){this._detach(),t(null)}},aur=class extends hKo{constructor(t){super(t),t||(t={}),this._buffer=new sur,this._offset=0,this._header=null,this._stream=null,this._missing=0,this._longHeader=!1,this._callback=iur,this._locked=!1,this._finished=!1,this._pax=null,this._paxGlobal=null,this._gnuLongPath=null,this._gnuLongLinkPath=null,this._filenameEncoding=t.filenameEncoding||"utf-8",this._allowUnknownFormat=!!t.allowUnknownFormat,this._unlockBound=this._unlock.bind(this)}_unlock(t){if(this._locked=!1,t){this.destroy(t),this._continueWrite(t);return}this._update()}_consumeHeader(){if(this._locked)return!1;this._offset=this._buffer.shifted;try{this._header=Ive.decode(this._buffer.shift(512),this._filenameEncoding,this._allowUnknownFormat)}catch(t){return this._continueWrite(t),!1}if(!this._header)return!0;switch(this._header.type){case"gnu-long-path":case"gnu-long-link-path":case"pax-global-header":case"pax-header":return this._longHeader=!0,this._missing=this._header.size,!0}return this._locked=!0,this._applyLongHeaders(),this._header.size===0||this._header.type==="directory"?(this.emit("entry",this._header,this._createStream(),this._unlockBound),!0):(this._stream=this._createStream(),this._missing=this._header.size,this.emit("entry",this._header,this._stream,this._unlockBound),!0)}_applyLongHeaders(){this._gnuLongPath&&(this._header.name=this._gnuLongPath,this._gnuLongPath=null),this._gnuLongLinkPath&&(this._header.linkname=this._gnuLongLinkPath,this._gnuLongLinkPath=null),this._pax&&(this._pax.path&&(this._header.name=this._pax.path),this._pax.linkpath&&(this._header.linkname=this._pax.linkpath),this._pax.size&&(this._header.size=parseInt(this._pax.size,10)),this._header.pax=this._pax,this._pax=null)}_decodeLongHeader(t){switch(this._header.type){case"gnu-long-path":this._gnuLongPath=Ive.decodeLongPath(t,this._filenameEncoding);break;case"gnu-long-link-path":this._gnuLongLinkPath=Ive.decodeLongPath(t,this._filenameEncoding);break;case"pax-global-header":this._paxGlobal=Ive.decodePax(t);break;case"pax-header":this._pax=this._paxGlobal===null?Ive.decodePax(t):Object.assign({},this._paxGlobal,Ive.decodePax(t));break}}_consumeLongHeader(){this._longHeader=!1,this._missing=yzn(this._header.size);let t=this._buffer.shift(this._header.size);try{this._decodeLongHeader(t)}catch(r){return this._continueWrite(r),!1}return!0}_consumeStream(){let t=this._buffer.shiftFirst(this._missing);if(t===null)return!1;this._missing-=t.byteLength;let r=this._stream.push(t);return this._missing===0?(this._stream.push(null),r&&this._stream._detach(),r&&this._locked===!1):r}_createStream(){return new our(this,this._header,this._offset)}_update(){for(;this._buffer.buffered>0&&!this.destroying;){if(this._missing>0){if(this._stream!==null){if(this._consumeStream()===!1)return;continue}if(this._longHeader===!0){if(this._missing>this._buffer.buffered)break;if(this._consumeLongHeader()===!1)return!1;continue}let t=this._buffer.shiftFirst(this._missing);t!==null&&(this._missing-=t.byteLength);continue}if(this._buffer.buffered<512)break;if(this._stream!==null||this._consumeHeader()===!1)return}this._continueWrite(null)}_continueWrite(t){let r=this._callback;this._callback=iur,r(t)}_write(t,r){this._callback=r,this._buffer.push(t),this._update()}_final(t){this._finished=this._missing===0&&this._buffer.buffered===0,t(this._finished?null:new Error("Unexpected end of data"))}_predestroy(){this._continueWrite(null)}_destroy(t){this._stream&&this._stream.destroy(hzn(this)),t(null)}[Symbol.asyncIterator](){let t=null,r=null,s=null,a=null,o=null,g=this;return this.on("entry",m),this.on("error",v=>{t=v}),this.on("close",y),{[Symbol.asyncIterator](){return this},next(){return new Promise(f)},return(){return B(null)},throw(v){return B(v)}};function p(v){if(!o)return;let k=o;o=null,k(v)}function f(v,k){if(t)return k(t);if(a){v({value:a,done:!1}),a=null;return}r=v,s=k,p(null),g._finished&&r&&(r({value:void 0,done:!0}),r=s=null)}function m(v,k,T){o=T,k.on("error",iur),r?(r({value:k,done:!1}),r=s=null):a=k}function y(){p(t),r&&(t?s(t):r({value:void 0,done:!0}),r=s=null)}function B(v){return g.destroy(v),p(v),new Promise((k,T)=>{if(g.destroyed)return k({value:void 0,done:!0});g.once("close",function(){v?T(v):k({value:void 0,done:!0})})})}}};bzn.exports=function(t){return new aur(t)};function iur(){}function yzn(e){return e&=511,e&&512-e}});var vzn=z((Apl,cur)=>{var Bzn={S_IFMT:61440,S_IFDIR:16384,S_IFCHR:8192,S_IFBLK:24576,S_IFIFO:4096,S_IFLNK:40960};try{cur.exports=xt("fs").constants||Bzn}catch{cur.exports=Bzn}});var Rzn=z((dpl,Nzn)=>{var{Readable:EKo,Writable:BKo,getStreamError:Szn}=eur(),Ppe=dIt(),Cve=vzn(),fIt=nur(),vKo=493,SKo=420,wzn=Ppe.alloc(1024),uur=class extends BKo{constructor(t,r,s){super({mapWritable:TKo,eagerOpen:!0}),this.written=0,this.header=r,this._callback=s,this._linkname=null,this._isLinkname=r.type==="symlink"&&!r.linkname,this._isVoid=r.type!=="file"&&r.type!=="contiguous-file",this._finished=!1,this._pack=t,this._openCallback=null,this._pack._stream===null?this._pack._stream=this:this._pack._pending.push(this)}_open(t){this._openCallback=t,this._pack._stream===this&&this._continueOpen()}_continuePack(t){if(this._callback===null)return;let r=this._callback;this._callback=null,r(t)}_continueOpen(){this._pack._stream===null&&(this._pack._stream=this);let t=this._openCallback;if(this._openCallback=null,t!==null){if(this._pack.destroying)return t(new Error("pack stream destroyed"));if(this._pack._finalized)return t(new Error("pack stream is already finalized"));this._pack._stream=this,this._isLinkname||this._pack._encode(this.header),this._isVoid&&(this._finish(),this._continuePack(null)),t(null)}}_write(t,r){if(this._isLinkname)return this._linkname=this._linkname?Ppe.concat([this._linkname,t]):t,r(null);if(this._isVoid)return t.byteLength>0?r(new Error("No body allowed for this entry")):r();if(this.written+=t.byteLength,this._pack.push(t))return r();this._pack._drain=r}_finish(){this._finished||(this._finished=!0,this._isLinkname&&(this.header.linkname=this._linkname?Ppe.toString(this._linkname,"utf-8"):"",this._pack._encode(this.header)),Tzn(this._pack,this.header.size),this._pack._done(this))}_final(t){if(this.written!==this.header.size)return t(new Error("Size mismatch"));this._finish(),t(null)}_getError(){return Szn(this)||new Error("tar entry destroyed")}_predestroy(){this._pack.destroy(this._getError())}_destroy(t){this._pack._done(this),this._continuePack(this._finished?null:this._getError()),t()}},gur=class extends EKo{constructor(t){super(t),this._drain=lur,this._finalized=!1,this._finalizing=!1,this._pending=[],this._stream=null}entry(t,r,s){if(this._finalized||this.destroying)throw new Error("already finalized or destroyed");typeof r=="function"&&(s=r,r=null),s||(s=lur),(!t.size||t.type==="symlink")&&(t.size=0),t.type||(t.type=wKo(t.mode)),t.mode||(t.mode=t.type==="directory"?vKo:SKo),t.uid||(t.uid=0),t.gid||(t.gid=0),t.mtime||(t.mtime=new Date),typeof r=="string"&&(r=Ppe.from(r));let a=new uur(this,t,s);return Ppe.isBuffer(r)?(t.size=r.byteLength,a.write(r),a.end(),a):(a._isVoid,a)}finalize(){if(this._stream||this._pending.length>0){this._finalizing=!0;return}this._finalized||(this._finalized=!0,this.push(wzn),this.push(null))}_done(t){t===this._stream&&(this._stream=null,this._finalizing&&this.finalize(),this._pending.length&&this._pending.shift()._continueOpen())}_encode(t){if(!t.pax){let r=fIt.encode(t);if(r){this.push(r);return}}this._encodePax(t)}_encodePax(t){let r=fIt.encodePax({name:t.name,linkname:t.linkname,pax:t.pax}),s={name:"PaxHeader",mode:t.mode,uid:t.uid,gid:t.gid,size:r.byteLength,mtime:t.mtime,type:"pax-header",linkname:t.linkname&&"PaxHeader",uname:t.uname,gname:t.gname,devmajor:t.devmajor,devminor:t.devminor};this.push(fIt.encode(s)),this.push(r),Tzn(this,r.byteLength),s.size=t.size,s.type=t.type,this.push(fIt.encode(s))}_doDrain(){let t=this._drain;this._drain=lur,t()}_predestroy(){let t=Szn(this);for(this._stream&&this._stream.destroy(t);this._pending.length;){let r=this._pending.shift();r.destroy(t),r._continueOpen()}this._doDrain()}_read(t){this._doDrain(),t()}};Nzn.exports=function(t){return new gur(t)};function wKo(e){switch(e&Cve.S_IFMT){case Cve.S_IFBLK:return"block-device";case Cve.S_IFCHR:return"character-device";case Cve.S_IFDIR:return"directory";case Cve.S_IFIFO:return"fifo";case Cve.S_IFLNK:return"symlink"}return"file"}function lur(){}function Tzn(e,t){t&=511,t&&e.push(wzn.subarray(0,512-t))}function TKo(e){return Ppe.isBuffer(e)?e:Ppe.from(e)}});var Dzn=z(Aur=>{Aur.extract=Ezn();Aur.pack=Rzn()});var lqn=z((Upl,cqn)=>{"use strict";var kKo=krt(),_ve=dMt();function aqn(e){if(/^\d{3,4}$/.test(e)){let r=/(\d{1,2})(\d{2})/.exec(e);return{major:0,minor:parseInt(r[1],10),patch:parseInt(r[2],10)}}let t=(e||"").split(".").map(r=>parseInt(r,10));return{major:t[0],minor:t[1],patch:t[2]}}function _ur(e){let{env:t}=process;if("FORCE_HYPERLINK"in t)return!(t.FORCE_HYPERLINK.length>0&&parseInt(t.FORCE_HYPERLINK,10)===0);if(_ve("no-hyperlink")||_ve("no-hyperlinks")||_ve("hyperlink=false")||_ve("hyperlink=never"))return!1;if(_ve("hyperlink=true")||_ve("hyperlink=always")||"NETLIFY"in t)return!0;if(!kKo.supportsColor(e)||e&&!e.isTTY||process.platform==="win32"||"CI"in t||"TEAMCITY_VERSION"in t)return!1;if("TERM_PROGRAM"in t){let r=aqn(t.TERM_PROGRAM_VERSION);switch(t.TERM_PROGRAM){case"iTerm.app":return r.major===3?r.minor>=1:r.major>3;case"WezTerm":return r.major>=20200620;case"vscode":return r.major>1||r.major===1&&r.minor>=72}}if("VTE_VERSION"in t){if(t.VTE_VERSION==="0.50.0")return!1;let r=aqn(t.VTE_VERSION);return r.major>0||r.minor>=50}return!1}cqn.exports={supportsHyperlink:_ur,stdout:_ur(process.stdout),stderr:_ur(process.stderr)}});var bur=z((yfl,hqn)=>{"use strict";var PKo=function(t){return OKo(t)&&!QKo(t)};function OKo(e){return!!e&&typeof e=="object"}function QKo(e){var t=Object.prototype.toString.call(e);return t==="[object RegExp]"||t==="[object Date]"||YKo(e)}var MKo=typeof Symbol=="function"&&Symbol.for,HKo=MKo?Symbol.for("react.element"):60103;function YKo(e){return e.$$typeof===HKo}function XKo(e){return Array.isArray(e)?[]:{}}function p5e(e,t){return t.clone!==!1&&t.isMergeableObject(e)?bve(XKo(e),e,t):e}function JKo(e,t,r){return e.concat(t).map(function(s){return p5e(s,r)})}function UKo(e,t){if(!t.customMerge)return bve;var r=t.customMerge(e);return typeof r=="function"?r:bve}function KKo(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter(function(t){return Object.propertyIsEnumerable.call(e,t)}):[]}function Cqn(e){return Object.keys(e).concat(KKo(e))}function mqn(e,t){try{return t in e}catch{return!1}}function jKo(e,t){return mqn(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))}function zKo(e,t,r){var s={};return r.isMergeableObject(e)&&Cqn(e).forEach(function(a){s[a]=p5e(e[a],r)}),Cqn(t).forEach(function(a){jKo(e,a)||(mqn(e,a)&&r.isMergeableObject(t[a])?s[a]=UKo(a,r)(e[a],t[a],r):s[a]=p5e(t[a],r))}),s}function bve(e,t,r){r=r||{},r.arrayMerge=r.arrayMerge||JKo,r.isMergeableObject=r.isMergeableObject||PKo,r.cloneUnlessOtherwiseSpecified=p5e;var s=Array.isArray(t),a=Array.isArray(e),o=s===a;return o?s?r.arrayMerge(e,t,r):zKo(e,t,r):p5e(t,r)}bve.all=function(t,r){if(!Array.isArray(t))throw new Error("first argument should be an array");return t.reduce(function(s,a){return bve(s,a,r)},{})};var qKo=bve;hqn.exports=qKo});var Dli=z((D0l,Rli)=>{Rli.exports=function(t,r){var s,a;typeof r=="function"?a=r:s=r;var o=Object.keys(t);return(s||[]).concat(o.sort(a)).reduce(function(g,p){return o.indexOf(p)!==-1&&(g[p]=t[p]),g},Object.create(null))}});var Oli=z((P0l,xmt)=>{"use strict";xmt.exports=function(e){if(typeof e!="string")throw new TypeError("Expected a string");var t=e.match(/(?:\r?\n)/g)||[];if(t.length===0)return null;var r=t.filter(function(a){return a===`\r `}).length,s=t.length-r;return r>s?`\r `:` -`};Nmt.exports.graceful=function(e){return Nmt.exports(e)||` -`}});var Vpr=z((h0l,Gli)=>{"use strict";var v_a=Dt("os");Gli.exports=v_a.homedir||function(){var t=process.env.HOME,r=process.env.LOGNAME||process.env.USER||process.env.LNAME||process.env.USERNAME;return process.platform==="win32"?process.env.USERPROFILE||process.env.HOMEDRIVE+process.env.HOMEPATH||t||null:process.platform==="darwin"?t||(r?"/Users/"+r:null):process.platform==="linux"?t||(process.getuid()===0?"/root":r?"/home/"+r:null):t||null}});var Wpr=z((_0l,Fli)=>{Fli.exports=function(){var e=Error.prepareStackTrace;Error.prepareStackTrace=function(r,s){return s};var t=new Error().stack;return Error.prepareStackTrace=e,t[2].getFileName()}});var Zli=z((y0l,XYe)=>{"use strict";var S_a=process.platform==="win32",w_a=/^(((?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?[\\\/]?)(?:[^\\\/]*[\\\/])*)((\.{1,2}|[^\\\/]+?|)(\.[^.\/\\]*|))[\\\/]*$/,Ppr={};function T_a(e){return w_a.exec(e).slice(1)}Ppr.parse=function(e){if(typeof e!="string")throw new TypeError("Parameter 'pathString' must be a string, not "+typeof e);var t=T_a(e);if(!t||t.length!==5)throw new TypeError("Invalid path '"+e+"'");return{root:t[1],dir:t[0]===t[1]?t[0]:t[0].slice(0,-1),base:t[2],ext:t[4],name:t[3]}};var N_a=/^((\/?)(?:[^\/]*\/)*)((\.{1,2}|[^\/]+?|)(\.[^.\/]*|))[\/]*$/,Opr={};function R_a(e){return N_a.exec(e).slice(1)}Opr.parse=function(e){if(typeof e!="string")throw new TypeError("Parameter 'pathString' must be a string, not "+typeof e);var t=R_a(e);if(!t||t.length!==5)throw new TypeError("Invalid path '"+e+"'");return{root:t[1],dir:t[0].slice(0,-1),base:t[2],ext:t[4],name:t[3]}};S_a?XYe.exports=Ppr.parse:XYe.exports=Opr.parse;XYe.exports.posix=Opr.parse;XYe.exports.win32=Ppr.parse});var Mpr=z((b0l,Pli)=>{var Wli=Dt("path"),Lli=Wli.parse||Zli(),Vli=function(t,r){var s="/";/^([A-Za-z]:)/.test(t)?s="":/^\\\\/.test(t)&&(s="\\\\");for(var a=[t],o=Lli(t);o.dir!==a[a.length-1];)a.push(o.dir),o=Lli(o.dir);return a.reduce(function(g,p){return g.concat(r.map(function(f){return Wli.resolve(s,p,f)}))},[])};Pli.exports=function(t,r,s){var a=r&&r.moduleDirectory?[].concat(r.moduleDirectory):["node_modules"];if(r&&typeof r.paths=="function")return r.paths(s,t,function(){return Vli(t,a)},r);var o=Vli(t,a);return r&&r.paths?o.concat(r.paths):o}});var Qpr=z((E0l,Oli)=>{var JYe=Dt("path");Oli.exports=function(e,t){if(t=t||{},t.forceNodeResolution||!process.versions.pnp)return t;let{findPnpApi:r}=Dt("module"),s=(m,y)=>{let B=m.match(/^((?:@[^/]+\/)?[^/]+)(\/.*)?/);if(!B)throw new Error(`Assertion failed: Expected the "resolve" package to call the "paths" callback with package names only (got "${m}")`);y.charAt(y.length-1)!=="/"&&(y=JYe.join(y,"/"));let v=r(y);if(v===null)return;let G;try{G=v.resolveToUnqualified(`${B[1]}/package.json`,y,{considerBuiltins:!1})}catch{return null}if(G===null)throw new Error(`Assertion failed: The resolution thinks that "${B[1]}" is a Node builtin`);let T=JYe.dirname(G),O=typeof B[2]<"u"?JYe.join(T,B[2]):T;return{packagePath:T,unqualifiedPath:O}},a=(m,y)=>{for(let B=0;B{let G=[y].concat(o),T=a(m,G);return T==null?B():[T.unqualifiedPath]},p=(m,y,B,v)=>{let G=[y].concat(o),T=a(m,G);if(T==null)return B().concat(o);let O=JYe.dirname(T.packagePath);return m.match(/^@[^/]+\//)&&(O=JYe.dirname(O)),[O]},f=!1;return t.__skipPackageIterator||(t.packageIterator=function(m,y,B,v){f=!0;try{return g(m,y,B,v)}finally{f=!1}}),t.paths=function(m,y,B,v){return f?B().concat(o):p(m,y,B,v)},t}});var Yli=z((B0l,Qli)=>{"use strict";var D_a="Function.prototype.bind called on incompatible ",x_a=Object.prototype.toString,k_a=Math.max,G_a="[object Function]",Mli=function(t,r){for(var s=[],a=0;a{"use strict";var L_a=Yli();Hli.exports=Function.prototype.bind||L_a});var Uli=z((S0l,Jli)=>{"use strict";var V_a=Function.prototype.call,W_a=Object.prototype.hasOwnProperty,P_a=Xli();Jli.exports=P_a.call(V_a,W_a)});var Kli=z((w0l,O_a)=>{O_a.exports={assert:!0,"node:assert":[">= 14.18 && < 15",">= 16"],"assert/strict":">= 15","node:assert/strict":">= 16",async_hooks:">= 8","node:async_hooks":[">= 14.18 && < 15",">= 16"],buffer_ieee754:">= 0.5 && < 0.9.7",buffer:!0,"node:buffer":[">= 14.18 && < 15",">= 16"],child_process:!0,"node:child_process":[">= 14.18 && < 15",">= 16"],cluster:">= 0.5","node:cluster":[">= 14.18 && < 15",">= 16"],console:!0,"node:console":[">= 14.18 && < 15",">= 16"],constants:!0,"node:constants":[">= 14.18 && < 15",">= 16"],crypto:!0,"node:crypto":[">= 14.18 && < 15",">= 16"],_debug_agent:">= 1 && < 8",_debugger:"< 8",dgram:!0,"node:dgram":[">= 14.18 && < 15",">= 16"],diagnostics_channel:[">= 14.17 && < 15",">= 15.1"],"node:diagnostics_channel":[">= 14.18 && < 15",">= 16"],dns:!0,"node:dns":[">= 14.18 && < 15",">= 16"],"dns/promises":">= 15","node:dns/promises":">= 16",domain:">= 0.7.12","node:domain":[">= 14.18 && < 15",">= 16"],events:!0,"node:events":[">= 14.18 && < 15",">= 16"],freelist:"< 6",fs:!0,"node:fs":[">= 14.18 && < 15",">= 16"],"fs/promises":[">= 10 && < 10.1",">= 14"],"node:fs/promises":[">= 14.18 && < 15",">= 16"],_http_agent:">= 0.11.1","node:_http_agent":[">= 14.18 && < 15",">= 16"],_http_client:">= 0.11.1","node:_http_client":[">= 14.18 && < 15",">= 16"],_http_common:">= 0.11.1","node:_http_common":[">= 14.18 && < 15",">= 16"],_http_incoming:">= 0.11.1","node:_http_incoming":[">= 14.18 && < 15",">= 16"],_http_outgoing:">= 0.11.1","node:_http_outgoing":[">= 14.18 && < 15",">= 16"],_http_server:">= 0.11.1","node:_http_server":[">= 14.18 && < 15",">= 16"],http:!0,"node:http":[">= 14.18 && < 15",">= 16"],http2:">= 8.8","node:http2":[">= 14.18 && < 15",">= 16"],https:!0,"node:https":[">= 14.18 && < 15",">= 16"],inspector:">= 8","node:inspector":[">= 14.18 && < 15",">= 16"],"inspector/promises":[">= 19"],"node:inspector/promises":[">= 19"],_linklist:"< 8",module:!0,"node:module":[">= 14.18 && < 15",">= 16"],net:!0,"node:net":[">= 14.18 && < 15",">= 16"],"node-inspect/lib/_inspect":">= 7.6 && < 12","node-inspect/lib/internal/inspect_client":">= 7.6 && < 12","node-inspect/lib/internal/inspect_repl":">= 7.6 && < 12",os:!0,"node:os":[">= 14.18 && < 15",">= 16"],path:!0,"node:path":[">= 14.18 && < 15",">= 16"],"path/posix":">= 15.3","node:path/posix":">= 16","path/win32":">= 15.3","node:path/win32":">= 16",perf_hooks:">= 8.5","node:perf_hooks":[">= 14.18 && < 15",">= 16"],process:">= 1","node:process":[">= 14.18 && < 15",">= 16"],punycode:">= 0.5","node:punycode":[">= 14.18 && < 15",">= 16"],querystring:!0,"node:querystring":[">= 14.18 && < 15",">= 16"],readline:!0,"node:readline":[">= 14.18 && < 15",">= 16"],"readline/promises":">= 17","node:readline/promises":">= 17",repl:!0,"node:repl":[">= 14.18 && < 15",">= 16"],"node:sea":[">= 20.12 && < 21",">= 21.7"],smalloc:">= 0.11.5 && < 3",_stream_duplex:">= 0.9.4","node:_stream_duplex":[">= 14.18 && < 15",">= 16"],_stream_transform:">= 0.9.4","node:_stream_transform":[">= 14.18 && < 15",">= 16"],_stream_wrap:">= 1.4.1","node:_stream_wrap":[">= 14.18 && < 15",">= 16"],_stream_passthrough:">= 0.9.4","node:_stream_passthrough":[">= 14.18 && < 15",">= 16"],_stream_readable:">= 0.9.4","node:_stream_readable":[">= 14.18 && < 15",">= 16"],_stream_writable:">= 0.9.4","node:_stream_writable":[">= 14.18 && < 15",">= 16"],stream:!0,"node:stream":[">= 14.18 && < 15",">= 16"],"stream/consumers":">= 16.7","node:stream/consumers":">= 16.7","stream/promises":">= 15","node:stream/promises":">= 16","stream/web":">= 16.5","node:stream/web":">= 16.5",string_decoder:!0,"node:string_decoder":[">= 14.18 && < 15",">= 16"],sys:[">= 0.4 && < 0.7",">= 0.8"],"node:sys":[">= 14.18 && < 15",">= 16"],"test/reporters":">= 19.9 && < 20.2","node:test/reporters":[">= 18.17 && < 19",">= 19.9",">= 20"],"test/mock_loader":">= 22.3 && < 22.7","node:test/mock_loader":">= 22.3 && < 22.7","node:test":[">= 16.17 && < 17",">= 18"],timers:!0,"node:timers":[">= 14.18 && < 15",">= 16"],"timers/promises":">= 15","node:timers/promises":">= 16",_tls_common:">= 0.11.13","node:_tls_common":[">= 14.18 && < 15",">= 16"],_tls_legacy:">= 0.11.3 && < 10",_tls_wrap:">= 0.11.3","node:_tls_wrap":[">= 14.18 && < 15",">= 16"],tls:!0,"node:tls":[">= 14.18 && < 15",">= 16"],trace_events:">= 10","node:trace_events":[">= 14.18 && < 15",">= 16"],tty:!0,"node:tty":[">= 14.18 && < 15",">= 16"],url:!0,"node:url":[">= 14.18 && < 15",">= 16"],util:!0,"node:util":[">= 14.18 && < 15",">= 16"],"util/types":">= 15.3","node:util/types":">= 16","v8/tools/arguments":">= 10 && < 12","v8/tools/codemap":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/consarray":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/csvparser":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/logreader":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/profile_view":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/splaytree":[">= 4.4 && < 5",">= 5.2 && < 12"],v8:">= 1","node:v8":[">= 14.18 && < 15",">= 16"],vm:!0,"node:vm":[">= 14.18 && < 15",">= 16"],wasi:[">= 13.4 && < 13.5",">= 18.17 && < 19",">= 20"],"node:wasi":[">= 18.17 && < 19",">= 20"],worker_threads:">= 11.7","node:worker_threads":[">= 14.18 && < 15",">= 16"],zlib:">= 0.5","node:zlib":[">= 14.18 && < 15",">= 16"]}});var UYe=z((T0l,qli)=>{"use strict";var M_a=Uli();function Q_a(e,t){for(var r=e.split("."),s=t.split(" "),a=s.length>1?s[0]:"=",o=(s.length>1?s[1]:s[0]).split("."),g=0;g<3;++g){var p=parseInt(r[g]||0,10),f=parseInt(o[g]||0,10);if(p!==f)return a==="<"?p="?p>=f:!1}return a===">="}function jli(e,t){var r=t.split(/ ?&& ?/);if(r.length===0)return!1;for(var s=0;s"u"?process.versions&&process.versions.node:e;if(typeof r!="string")throw new TypeError(typeof e>"u"?"Unable to determine current node version":"If provided, a valid node version is required");if(t&&typeof t=="object"){for(var s=0;s{var kfe=Dt("fs"),H_a=Vpr(),Tw=Dt("path"),X_a=Wpr(),J_a=Mpr(),U_a=Qpr(),K_a=UYe(),j_a=process.platform!=="win32"&&kfe.realpath&&typeof kfe.realpath.native=="function"?kfe.realpath.native:kfe.realpath,$li=H_a(),z_a=function(){return[Tw.join($li,".node_modules"),Tw.join($li,".node_libraries")]},q_a=function(t,r){kfe.stat(t,function(s,a){return s?s.code==="ENOENT"||s.code==="ENOTDIR"?r(null,!1):r(s):r(null,a.isFile()||a.isFIFO())})},$_a=function(t,r){kfe.stat(t,function(s,a){return s?s.code==="ENOENT"||s.code==="ENOTDIR"?r(null,!1):r(s):r(null,a.isDirectory())})},e0a=function(t,r){j_a(t,function(s,a){s&&s.code!=="ENOENT"?r(s):r(null,s?t:a)})},KYe=function(t,r,s,a){s&&s.preserveSymlinks===!1?t(r,a):a(null,r)},t0a=function(t,r,s){t(r,function(a,o){if(a)s(a);else try{var g=JSON.parse(o);s(null,g)}catch{s(null)}})},r0a=function(t,r,s){for(var a=J_a(r,s,t),o=0;o{n0a.exports={assert:!0,"node:assert":[">= 14.18 && < 15",">= 16"],"assert/strict":">= 15","node:assert/strict":">= 16",async_hooks:">= 8","node:async_hooks":[">= 14.18 && < 15",">= 16"],buffer_ieee754:">= 0.5 && < 0.9.7",buffer:!0,"node:buffer":[">= 14.18 && < 15",">= 16"],child_process:!0,"node:child_process":[">= 14.18 && < 15",">= 16"],cluster:">= 0.5","node:cluster":[">= 14.18 && < 15",">= 16"],console:!0,"node:console":[">= 14.18 && < 15",">= 16"],constants:!0,"node:constants":[">= 14.18 && < 15",">= 16"],crypto:!0,"node:crypto":[">= 14.18 && < 15",">= 16"],_debug_agent:">= 1 && < 8",_debugger:"< 8",dgram:!0,"node:dgram":[">= 14.18 && < 15",">= 16"],diagnostics_channel:[">= 14.17 && < 15",">= 15.1"],"node:diagnostics_channel":[">= 14.18 && < 15",">= 16"],dns:!0,"node:dns":[">= 14.18 && < 15",">= 16"],"dns/promises":">= 15","node:dns/promises":">= 16",domain:">= 0.7.12","node:domain":[">= 14.18 && < 15",">= 16"],events:!0,"node:events":[">= 14.18 && < 15",">= 16"],freelist:"< 6",fs:!0,"node:fs":[">= 14.18 && < 15",">= 16"],"fs/promises":[">= 10 && < 10.1",">= 14"],"node:fs/promises":[">= 14.18 && < 15",">= 16"],_http_agent:">= 0.11.1","node:_http_agent":[">= 14.18 && < 15",">= 16"],_http_client:">= 0.11.1","node:_http_client":[">= 14.18 && < 15",">= 16"],_http_common:">= 0.11.1","node:_http_common":[">= 14.18 && < 15",">= 16"],_http_incoming:">= 0.11.1","node:_http_incoming":[">= 14.18 && < 15",">= 16"],_http_outgoing:">= 0.11.1","node:_http_outgoing":[">= 14.18 && < 15",">= 16"],_http_server:">= 0.11.1","node:_http_server":[">= 14.18 && < 15",">= 16"],http:!0,"node:http":[">= 14.18 && < 15",">= 16"],http2:">= 8.8","node:http2":[">= 14.18 && < 15",">= 16"],https:!0,"node:https":[">= 14.18 && < 15",">= 16"],inspector:">= 8","node:inspector":[">= 14.18 && < 15",">= 16"],"inspector/promises":[">= 19"],"node:inspector/promises":[">= 19"],_linklist:"< 8",module:!0,"node:module":[">= 14.18 && < 15",">= 16"],net:!0,"node:net":[">= 14.18 && < 15",">= 16"],"node-inspect/lib/_inspect":">= 7.6 && < 12","node-inspect/lib/internal/inspect_client":">= 7.6 && < 12","node-inspect/lib/internal/inspect_repl":">= 7.6 && < 12",os:!0,"node:os":[">= 14.18 && < 15",">= 16"],path:!0,"node:path":[">= 14.18 && < 15",">= 16"],"path/posix":">= 15.3","node:path/posix":">= 16","path/win32":">= 15.3","node:path/win32":">= 16",perf_hooks:">= 8.5","node:perf_hooks":[">= 14.18 && < 15",">= 16"],process:">= 1","node:process":[">= 14.18 && < 15",">= 16"],punycode:">= 0.5","node:punycode":[">= 14.18 && < 15",">= 16"],querystring:!0,"node:querystring":[">= 14.18 && < 15",">= 16"],readline:!0,"node:readline":[">= 14.18 && < 15",">= 16"],"readline/promises":">= 17","node:readline/promises":">= 17",repl:!0,"node:repl":[">= 14.18 && < 15",">= 16"],smalloc:">= 0.11.5 && < 3",_stream_duplex:">= 0.9.4","node:_stream_duplex":[">= 14.18 && < 15",">= 16"],_stream_transform:">= 0.9.4","node:_stream_transform":[">= 14.18 && < 15",">= 16"],_stream_wrap:">= 1.4.1","node:_stream_wrap":[">= 14.18 && < 15",">= 16"],_stream_passthrough:">= 0.9.4","node:_stream_passthrough":[">= 14.18 && < 15",">= 16"],_stream_readable:">= 0.9.4","node:_stream_readable":[">= 14.18 && < 15",">= 16"],_stream_writable:">= 0.9.4","node:_stream_writable":[">= 14.18 && < 15",">= 16"],stream:!0,"node:stream":[">= 14.18 && < 15",">= 16"],"stream/consumers":">= 16.7","node:stream/consumers":">= 16.7","stream/promises":">= 15","node:stream/promises":">= 16","stream/web":">= 16.5","node:stream/web":">= 16.5",string_decoder:!0,"node:string_decoder":[">= 14.18 && < 15",">= 16"],sys:[">= 0.4 && < 0.7",">= 0.8"],"node:sys":[">= 14.18 && < 15",">= 16"],"test/reporters":">= 19.9 && < 20.2","node:test/reporters":[">= 18.17 && < 19",">= 19.9",">= 20"],"node:test":[">= 16.17 && < 17",">= 18"],timers:!0,"node:timers":[">= 14.18 && < 15",">= 16"],"timers/promises":">= 15","node:timers/promises":">= 16",_tls_common:">= 0.11.13","node:_tls_common":[">= 14.18 && < 15",">= 16"],_tls_legacy:">= 0.11.3 && < 10",_tls_wrap:">= 0.11.3","node:_tls_wrap":[">= 14.18 && < 15",">= 16"],tls:!0,"node:tls":[">= 14.18 && < 15",">= 16"],trace_events:">= 10","node:trace_events":[">= 14.18 && < 15",">= 16"],tty:!0,"node:tty":[">= 14.18 && < 15",">= 16"],url:!0,"node:url":[">= 14.18 && < 15",">= 16"],util:!0,"node:util":[">= 14.18 && < 15",">= 16"],"util/types":">= 15.3","node:util/types":">= 16","v8/tools/arguments":">= 10 && < 12","v8/tools/codemap":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/consarray":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/csvparser":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/logreader":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/profile_view":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/splaytree":[">= 4.4 && < 5",">= 5.2 && < 12"],v8:">= 1","node:v8":[">= 14.18 && < 15",">= 16"],vm:!0,"node:vm":[">= 14.18 && < 15",">= 16"],wasi:[">= 13.4 && < 13.5",">= 18.17 && < 19",">= 20"],"node:wasi":[">= 18.17 && < 19",">= 20"],worker_threads:">= 11.7","node:worker_threads":[">= 14.18 && < 15",">= 16"],zlib:">= 0.5","node:zlib":[">= 14.18 && < 15",">= 16"]}});var oui=z((D0l,sui)=>{"use strict";var i0a=UYe(),nui=rui(),iui={};for(Rmt in nui)Object.prototype.hasOwnProperty.call(nui,Rmt)&&(iui[Rmt]=i0a(Rmt));var Rmt;sui.exports=iui});var cui=z((x0l,aui)=>{var s0a=UYe();aui.exports=function(t){return s0a(t)}});var gui=z((k0l,uui)=>{var o0a=UYe(),Gfe=Dt("fs"),Fk=Dt("path"),a0a=Vpr(),c0a=Wpr(),l0a=Mpr(),u0a=Qpr(),g0a=process.platform!=="win32"&&Gfe.realpathSync&&typeof Gfe.realpathSync.native=="function"?Gfe.realpathSync.native:Gfe.realpathSync,lui=a0a(),A0a=function(){return[Fk.join(lui,".node_modules"),Fk.join(lui,".node_libraries")]},d0a=function(t){try{var r=Gfe.statSync(t,{throwIfNoEntry:!1})}catch(s){if(s&&(s.code==="ENOENT"||s.code==="ENOTDIR"))return!1;throw s}return!!r&&(r.isFile()||r.isFIFO())},p0a=function(t){try{var r=Gfe.statSync(t,{throwIfNoEntry:!1})}catch(s){if(s&&(s.code==="ENOENT"||s.code==="ENOTDIR"))return!1;throw s}return!!r&&r.isDirectory()},f0a=function(t){try{return g0a(t)}catch(r){if(r.code!=="ENOENT")throw r}return t},jYe=function(t,r,s){return s&&s.preserveSymlinks===!1?t(r):r},I0a=function(t,r){var s=t(r);try{var a=JSON.parse(s);return a}catch{}},C0a=function(t,r,s){for(var a=l0a(r,s,t),o=0;o{var Dmt=tui();Dmt.core=oui();Dmt.isCore=cui();Dmt.sync=gui();Aui.exports=Dmt});var fui=z((F0l,pui)=>{"use strict";var{builtinModules:m0a}=Dt("module"),h0a=["sys"];pui.exports=(m0a||(process.binding?Object.keys(process.binding("natives")):[])||[]).filter(e=>!/^_|^(internal|v8|node-inspect)\/|\//.test(e)&&!h0a.includes(e)).sort()});var mui=z((Z0l,Cui)=>{"use strict";var _0a=fui(),y0a=new Set(_0a),Iui="node:";Cui.exports=e=>{if(typeof e!="string")throw new TypeError("Expected a string");e.startsWith(Iui)&&(e=e.slice(Iui.length));let t=e.indexOf("/");return t!==-1&&t!==e.length-1&&(e=e.slice(0,t)),y0a.has(e)}});var yui=z(Ypr=>{"use strict";Object.defineProperty(Ypr,"__esModule",{value:!0});var b0a=Dt("path"),E0a=dui(),B0a=mui();function v0a(e){if(e.length===1){let r=e;return s=>{let a=s.defaultMember||s.namespaceMember||s.namedMembers[0].alias;return r(a)}}let t=e;return(r,s)=>{let a=r.defaultMember||r.namespaceMember||r.namedMembers[0].alias,o=s.defaultMember||s.namespaceMember||s.namedMembers[0].alias;return t(a,o)}}function S0a(e){if(e.length===1){let r=e;return s=>{let a=s.moduleName;return r(a)}}let t=e;return(r,s)=>{let a=r.moduleName,o=s.moduleName;return t(a,o)}}function w0a(e){return(t,r)=>e(t.name,r.name)}function T0a(e){return(t,r)=>e(t.alias,r.alias)}function N0a(){return!0}function R0a(e){return t=>!e(t)}function D0a(...e){return t=>e.every(r=>r(t))}function x0a(...e){return t=>e.some(r=>r(t))}function zYe(e){return!!e.defaultMember}function VSe(e){return!!e.namespaceMember}function qYe(e){return e.namedMembers.length>0}function hui(e){return zYe(e)||VSe(e)||qYe(e)}function k0a(e){return!hui(e)}function G0a(e){return zYe(e)&&!VSe(e)&&!qYe(e)}function F0a(e){return!zYe(e)&&VSe(e)&&!qYe(e)}function Z0a(e){return!zYe(e)&&!VSe(e)&&qYe(e)}function L0a(e){return e.namedMembers.length+(e.defaultMember?1:0)+(e.namespaceMember?1:0)>1}function V0a(e){return e.namedMembers.length+(e.defaultMember?1:0)===1&&!VSe(e)}function W0a(e){return B0a(e.moduleName)}function _ui(e){return e.moduleName.indexOf(".")===0}function P0a(e){return!_ui(e)}function O0a(e){return t=>{try{return E0a.sync(t.moduleName,{basedir:b0a.dirname(e)}).includes("node_modules")}catch{return!1}}}function M0a(e){return e.moduleName.startsWith("@")}function Q0a(e){let t=e.charAt(0);return e.charAt(0)===t.toUpperCase()}function Y0a(e){let t=e.charAt(0);return e.charAt(0)===t.toLowerCase()}function H0a(e){return!!e.match(/^[A-Za-z0-9]/)}function X0a(...e){return t=>e.some(r=>t.startsWith(r))}function J0a(e,t){return e.localeCompare(t,"en")}function U0a(e,t){return et?1:0}function K0a(e,t){let r=/\.+(?=\/)/g,s=(e.moduleName.match(r)||[]).join("").length,a=(t.moduleName.match(r)||[]).join("").length;return s>a?-1:s{"use strict";Object.defineProperty($Ye,"__esModule",{value:!0});var z0a=kli(),q0a=yui();function $0a(e,t,r,s,a){let o,g=typeof t=="string"?Dt(t):t;return typeof r=="string"?(o=Dt(r),o.default&&(o=o.default)):o=r,bui(e,g,o,s,a)}$Ye.default=$0a;function bui(e,t,r,s,a){let o=rya(r,s,a||{})(q0a.default),g=o.map(()=>[]),p=t.parseImports(e,{file:s});if(p.length===0)return{code:e,changes:[]};let f=z0a.graceful(e),m=[];for(let fe of p){let pe=fe,he=o.findIndex(be=>(pe=eya(fe,be.sortNamedMembers),!!be.match&&be.match(pe)));he!==-1&&g[he].push(pe)}g.forEach((fe,pe)=>{let{sort:he}=o[pe];if(!he)return;if(!Array.isArray(he)){fe.sort(he);return}let be=he;if(be.length===0)return;let Te=(ke,x)=>{let et=0,Ue=0;for(;Ue===0&&be[et];)Ue=be[et](ke,x),et+=1;return Ue};fe.sort(Te)});let y="",B=!1;g.forEach((fe,pe)=>{fe.length>0&&B&&(y+=f,B=!1),fe.forEach(he=>{let be=t.formatImport(e,he,f);y+=be+f}),o[pe].separator&&y!==""&&(B=!0)});let v=e;p.slice().reverse().forEach(fe=>{let pe=fe.end;v.charAt(fe.end).match(/\s/)&&(pe+=1),m.push({start:fe.start,end:pe,code:"",note:"import-remove"}),v=v.slice(0,fe.start)+v.slice(pe,e.length)});let{start:G}=p[0],T=e.substring(0,G),O=v.substring(G,v.length),X=T.length,U=O.length,le,ae;T=T.replace(/\s+$/,fe=>(le={start:G-fe.length,end:G,code:f+f,note:"before-collapse"},f+f)),O=O.replace(/^\s+/,fe=>(ae={start:G,end:G+fe.length,code:f,note:"after-collapse"},f)),T.match(/^\s+$/)&&(le={start:G-X,end:G,code:"",note:"before-trim"},T=""),O.match(/^\s+$/)&&(ae={start:G,end:G+U,code:"",note:"after-trim"},O=""),ae&&m.push(ae),le&&m.push(le);let ge={start:T.length,end:T.length,code:y,note:"imports"};return m.push(ge),e===T+y+O?{code:e,changes:[]}:{code:T+y+O,changes:m}}$Ye.sortImports=bui;function eya(e,t){let r=t;if(!r)return e;if(!Array.isArray(r)){let g=Object.assign({},e);return g.namedMembers=[...e.namedMembers].sort(r),g}let s=r;if(s.length===0)return e;let a=(g,p)=>{let f=0,m=0;for(;m===0&&s[f];)m=s[f](g,p),f+=1;return m},o=Object.assign({},e);return o.namedMembers=[...e.namedMembers].sort(a),o}function tya(e,t){let r=e;for(let s of t)r=r.slice(0,s.start)+s.code+r.slice(s.end,r.length);return r}$Ye.applyChanges=tya;function rya(e,t,r){return s=>{let a=[{separator:!0},{match:s.always}];return e(s,t,r).concat(a)}}});var Jui=z((Uyl,Xui)=>{"use strict";var Ffe=class e extends Error{constructor(t,r,s){super("[ParserError] "+t,r,s),this.name="ParserError",this.code="ParserError",Error.captureStackTrace&&Error.captureStackTrace(this,e)}},Gmt=class{constructor(t){this.parser=t,this.buf="",this.returned=null,this.result=null,this.resultTable=null,this.resultArr=null}},tHe=class{constructor(){this.pos=0,this.col=0,this.line=0,this.obj={},this.ctx=this.obj,this.stack=[],this._buf="",this.char=null,this.ii=0,this.state=new Gmt(this.parseStart)}parse(t){if(t.length===0||t.length==null)return;this._buf=String(t),this.ii=-1,this.char=-1;let r;for(;r===!1||this.nextChar();)r=this.runOne();this._buf=null}nextChar(){return this.char===10&&(++this.line,this.col=-1),++this.ii,this.char=this._buf.codePointAt(this.ii),++this.pos,++this.col,this.haveBuffer()}haveBuffer(){return this.ii{"use strict";Uui.exports=e=>{let t=new Date(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var Fmt=z((jyl,jui)=>{"use strict";jui.exports=(e,t)=>{for(t=String(t);t.length{"use strict";var WSe=Fmt(),Kpr=class extends Date{constructor(t){super(t+"Z"),this.isFloating=!0}toISOString(){let t=`${this.getUTCFullYear()}-${WSe(2,this.getUTCMonth()+1)}-${WSe(2,this.getUTCDate())}`,r=`${WSe(2,this.getUTCHours())}:${WSe(2,this.getUTCMinutes())}:${WSe(2,this.getUTCSeconds())}.${WSe(3,this.getUTCMilliseconds())}`;return`${t}T${r}`}};zui.exports=e=>{let t=new Kpr(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var tgi=z((qyl,egi)=>{"use strict";var $ui=Fmt(),wya=global.Date,jpr=class extends wya{constructor(t){super(t),this.isDate=!0}toISOString(){return`${this.getUTCFullYear()}-${$ui(2,this.getUTCMonth()+1)}-${$ui(2,this.getUTCDate())}`}};egi.exports=e=>{let t=new jpr(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var ngi=z(($yl,rgi)=>{"use strict";var Zmt=Fmt(),zpr=class extends Date{constructor(t){super(`0000-01-01T${t}Z`),this.isTime=!0}toISOString(){return`${Zmt(2,this.getUTCHours())}:${Zmt(2,this.getUTCMinutes())}:${Zmt(2,this.getUTCSeconds())}.${Zmt(3,this.getUTCMilliseconds())}`}};rgi.exports=e=>{let t=new zpr(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var Lmt=z((exports,module)=>{"use strict";module.exports=makeParserClass(Jui());module.exports.makeParserClass=makeParserClass;var TomlError=class e extends Error{constructor(t){super(t),this.name="TomlError",Error.captureStackTrace&&Error.captureStackTrace(this,e),this.fromTOML=!0,this.wrapped=null}};TomlError.wrap=e=>{let t=new TomlError(e.message);return t.code=e.code,t.wrapped=e,t};module.exports.TomlError=TomlError;var createDateTime=Kui(),createDateTimeFloat=qui(),createDate=tgi(),createTime=ngi(),CTRL_I=9,CTRL_J=10,CTRL_M=13,CTRL_CHAR_BOUNDARY=31,CHAR_SP=32,CHAR_QUOT=34,CHAR_NUM=35,CHAR_APOS=39,CHAR_PLUS=43,CHAR_COMMA=44,CHAR_HYPHEN=45,CHAR_PERIOD=46,CHAR_0=48,CHAR_1=49,CHAR_7=55,CHAR_9=57,CHAR_COLON=58,CHAR_EQUALS=61,CHAR_A=65,CHAR_E=69,CHAR_F=70,CHAR_T=84,CHAR_U=85,CHAR_Z=90,CHAR_LOWBAR=95,CHAR_a=97,CHAR_b=98,CHAR_e=101,CHAR_f=102,CHAR_i=105,CHAR_l=108,CHAR_n=110,CHAR_o=111,CHAR_r=114,CHAR_s=115,CHAR_t=116,CHAR_u=117,CHAR_x=120,CHAR_z=122,CHAR_LCUB=123,CHAR_RCUB=125,CHAR_LSQB=91,CHAR_BSOL=92,CHAR_RSQB=93,CHAR_DEL=127,SURROGATE_FIRST=55296,SURROGATE_LAST=57343,escapes={[CHAR_b]:"\b",[CHAR_t]:" ",[CHAR_n]:` -`,[CHAR_f]:"\f",[CHAR_r]:"\r",[CHAR_QUOT]:'"',[CHAR_BSOL]:"\\"};function isDigit(e){return e>=CHAR_0&&e<=CHAR_9}function isHexit(e){return e>=CHAR_A&&e<=CHAR_F||e>=CHAR_a&&e<=CHAR_f||e>=CHAR_0&&e<=CHAR_9}function isBit(e){return e===CHAR_1||e===CHAR_0}function isOctit(e){return e>=CHAR_0&&e<=CHAR_7}function isAlphaNumQuoteHyphen(e){return e>=CHAR_A&&e<=CHAR_Z||e>=CHAR_a&&e<=CHAR_z||e>=CHAR_0&&e<=CHAR_9||e===CHAR_APOS||e===CHAR_QUOT||e===CHAR_LOWBAR||e===CHAR_HYPHEN}function isAlphaNumHyphen(e){return e>=CHAR_A&&e<=CHAR_Z||e>=CHAR_a&&e<=CHAR_z||e>=CHAR_0&&e<=CHAR_9||e===CHAR_LOWBAR||e===CHAR_HYPHEN}var _type=Symbol("type"),_declared=Symbol("declared"),hasOwnProperty=Object.prototype.hasOwnProperty,defineProperty=Object.defineProperty,descriptor={configurable:!0,enumerable:!0,writable:!0,value:void 0};function hasKey(e,t){return hasOwnProperty.call(e,t)?!0:(t==="__proto__"&&defineProperty(e,"__proto__",descriptor),!1)}var INLINE_TABLE=Symbol("inline-table");function InlineTable(){return Object.defineProperties({},{[_type]:{value:INLINE_TABLE}})}function isInlineTable(e){return e===null||typeof e!="object"?!1:e[_type]===INLINE_TABLE}var TABLE=Symbol("table");function Table(){return Object.defineProperties({},{[_type]:{value:TABLE},[_declared]:{value:!1,writable:!0}})}function isTable(e){return e===null||typeof e!="object"?!1:e[_type]===TABLE}var _contentType=Symbol("content-type"),INLINE_LIST=Symbol("inline-list");function InlineList(e){return Object.defineProperties([],{[_type]:{value:INLINE_LIST},[_contentType]:{value:e}})}function isInlineList(e){return e===null||typeof e!="object"?!1:e[_type]===INLINE_LIST}var LIST=Symbol("list");function List(){return Object.defineProperties([],{[_type]:{value:LIST}})}function isList(e){return e===null||typeof e!="object"?!1:e[_type]===LIST}var _custom;try{let utilInspect=eval("require('util').inspect");_custom=utilInspect.custom}catch(e){}var _inspect=_custom||"inspect",BoxedBigInt=class{constructor(t){try{this.value=global.BigInt.asIntN(64,t)}catch{this.value=null}Object.defineProperty(this,_type,{value:INTEGER})}isNaN(){return this.value===null}toString(){return String(this.value)}[_inspect](){return`[BigInt: ${this.toString()}]}`}valueOf(){return this.value}},INTEGER=Symbol("integer");function Integer(e){let t=Number(e);return Object.is(t,-0)&&(t=0),global.BigInt&&!Number.isSafeInteger(t)?new BoxedBigInt(e):Object.defineProperties(new Number(t),{isNaN:{value:function(){return isNaN(this)}},[_type]:{value:INTEGER},[_inspect]:{value:()=>`[Integer: ${e}]`}})}function isInteger(e){return e===null||typeof e!="object"?!1:e[_type]===INTEGER}var FLOAT=Symbol("float");function Float(e){return Object.defineProperties(new Number(e),{[_type]:{value:FLOAT},[_inspect]:{value:()=>`[Float: ${e}]`}})}function isFloat(e){return e===null||typeof e!="object"?!1:e[_type]===FLOAT}function tomlType(e){let t=typeof e;if(t==="object"){if(e===null)return"null";if(e instanceof Date)return"datetime";if(_type in e)switch(e[_type]){case INLINE_TABLE:return"inline-table";case INLINE_LIST:return"inline-list";case TABLE:return"table";case LIST:return"list";case FLOAT:return"float";case INTEGER:return"integer"}}return t}function makeParserClass(e){class t extends e{constructor(){super(),this.ctx=this.obj=Table()}atEndOfWord(){return this.char===CHAR_NUM||this.char===CTRL_I||this.char===CHAR_SP||this.atEndOfLine()}atEndOfLine(){return this.char===e.END||this.char===CTRL_J||this.char===CTRL_M}parseStart(){if(this.char===e.END)return null;if(this.char===CHAR_LSQB)return this.call(this.parseTableOrList);if(this.char===CHAR_NUM)return this.call(this.parseComment);if(this.char===CTRL_J||this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M)return null;if(isAlphaNumQuoteHyphen(this.char))return this.callNow(this.parseAssignStatement);throw this.error(new TomlError(`Unknown character "${this.char}"`))}parseWhitespaceToEOL(){if(this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M)return null;if(this.char===CHAR_NUM)return this.goto(this.parseComment);if(this.char===e.END||this.char===CTRL_J)return this.return();throw this.error(new TomlError("Unexpected character, expected only whitespace or comments till end of line"))}parseAssignStatement(){return this.callNow(this.parseAssign,this.recordAssignStatement)}recordAssignStatement(s){let a=this.ctx,o=s.key.pop();for(let g of s.key){if(hasKey(a,g)&&(!isTable(a[g])||a[g][_declared]))throw this.error(new TomlError("Can't redefine existing key"));a=a[g]=a[g]||Table()}if(hasKey(a,o))throw this.error(new TomlError("Can't redefine existing key"));return isInteger(s.value)||isFloat(s.value)?a[o]=s.value.valueOf():a[o]=s.value,this.goto(this.parseWhitespaceToEOL)}parseAssign(){return this.callNow(this.parseKeyword,this.recordAssignKeyword)}recordAssignKeyword(s){return this.state.resultTable?this.state.resultTable.push(s):this.state.resultTable=[s],this.goto(this.parseAssignKeywordPreDot)}parseAssignKeywordPreDot(){if(this.char===CHAR_PERIOD)return this.next(this.parseAssignKeywordPostDot);if(this.char!==CHAR_SP&&this.char!==CTRL_I)return this.goto(this.parseAssignEqual)}parseAssignKeywordPostDot(){if(this.char!==CHAR_SP&&this.char!==CTRL_I)return this.callNow(this.parseKeyword,this.recordAssignKeyword)}parseAssignEqual(){if(this.char===CHAR_EQUALS)return this.next(this.parseAssignPreValue);throw this.error(new TomlError('Invalid character, expected "="'))}parseAssignPreValue(){return this.char===CHAR_SP||this.char===CTRL_I?null:this.callNow(this.parseValue,this.recordAssignValue)}recordAssignValue(s){return this.returnNow({key:this.state.resultTable,value:s})}parseComment(){do if(this.char===e.END||this.char===CTRL_J)return this.return();while(this.nextChar())}parseTableOrList(){if(this.char===CHAR_LSQB)this.next(this.parseList);else return this.goto(this.parseTable)}parseTable(){return this.ctx=this.obj,this.goto(this.parseTableNext)}parseTableNext(){return this.char===CHAR_SP||this.char===CTRL_I?null:this.callNow(this.parseKeyword,this.parseTableMore)}parseTableMore(s){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===CHAR_RSQB){if(hasKey(this.ctx,s)&&(!isTable(this.ctx[s])||this.ctx[s][_declared]))throw this.error(new TomlError("Can't redefine existing key"));return this.ctx=this.ctx[s]=this.ctx[s]||Table(),this.ctx[_declared]=!0,this.next(this.parseWhitespaceToEOL)}else if(this.char===CHAR_PERIOD){if(!hasKey(this.ctx,s))this.ctx=this.ctx[s]=Table();else if(isTable(this.ctx[s]))this.ctx=this.ctx[s];else if(isList(this.ctx[s]))this.ctx=this.ctx[s][this.ctx[s].length-1];else throw this.error(new TomlError("Can't redefine existing key"));return this.next(this.parseTableNext)}else throw this.error(new TomlError("Unexpected character, expected whitespace, . or ]"))}parseList(){return this.ctx=this.obj,this.goto(this.parseListNext)}parseListNext(){return this.char===CHAR_SP||this.char===CTRL_I?null:this.callNow(this.parseKeyword,this.parseListMore)}parseListMore(s){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===CHAR_RSQB){if(hasKey(this.ctx,s)||(this.ctx[s]=List()),isInlineList(this.ctx[s]))throw this.error(new TomlError("Can't extend an inline array"));if(isList(this.ctx[s])){let a=Table();this.ctx[s].push(a),this.ctx=a}else throw this.error(new TomlError("Can't redefine an existing key"));return this.next(this.parseListEnd)}else if(this.char===CHAR_PERIOD){if(!hasKey(this.ctx,s))this.ctx=this.ctx[s]=Table();else{if(isInlineList(this.ctx[s]))throw this.error(new TomlError("Can't extend an inline array"));if(isInlineTable(this.ctx[s]))throw this.error(new TomlError("Can't extend an inline table"));if(isList(this.ctx[s]))this.ctx=this.ctx[s][this.ctx[s].length-1];else if(isTable(this.ctx[s]))this.ctx=this.ctx[s];else throw this.error(new TomlError("Can't redefine an existing key"))}return this.next(this.parseListNext)}else throw this.error(new TomlError("Unexpected character, expected whitespace, . or ]"))}parseListEnd(s){if(this.char===CHAR_RSQB)return this.next(this.parseWhitespaceToEOL);throw this.error(new TomlError("Unexpected character, expected whitespace, . or ]"))}parseValue(){if(this.char===e.END)throw this.error(new TomlError("Key without value"));if(this.char===CHAR_QUOT)return this.next(this.parseDoubleString);if(this.char===CHAR_APOS)return this.next(this.parseSingleString);if(this.char===CHAR_HYPHEN||this.char===CHAR_PLUS)return this.goto(this.parseNumberSign);if(this.char===CHAR_i)return this.next(this.parseInf);if(this.char===CHAR_n)return this.next(this.parseNan);if(isDigit(this.char))return this.goto(this.parseNumberOrDateTime);if(this.char===CHAR_t||this.char===CHAR_f)return this.goto(this.parseBoolean);if(this.char===CHAR_LSQB)return this.call(this.parseInlineList,this.recordValue);if(this.char===CHAR_LCUB)return this.call(this.parseInlineTable,this.recordValue);throw this.error(new TomlError("Unexpected character, expecting string, number, datetime, boolean, inline array or inline table"))}recordValue(s){return this.returnNow(s)}parseInf(){if(this.char===CHAR_n)return this.next(this.parseInf2);throw this.error(new TomlError('Unexpected character, expected "inf", "+inf" or "-inf"'))}parseInf2(){if(this.char===CHAR_f)return this.state.buf==="-"?this.return(-1/0):this.return(1/0);throw this.error(new TomlError('Unexpected character, expected "inf", "+inf" or "-inf"'))}parseNan(){if(this.char===CHAR_a)return this.next(this.parseNan2);throw this.error(new TomlError('Unexpected character, expected "nan"'))}parseNan2(){if(this.char===CHAR_n)return this.return(NaN);throw this.error(new TomlError('Unexpected character, expected "nan"'))}parseKeyword(){return this.char===CHAR_QUOT?this.next(this.parseBasicString):this.char===CHAR_APOS?this.next(this.parseLiteralString):this.goto(this.parseBareKey)}parseBareKey(){do{if(this.char===e.END)throw this.error(new TomlError("Key ended without value"));if(isAlphaNumHyphen(this.char))this.consume();else{if(this.state.buf.length===0)throw this.error(new TomlError("Empty bare keys are not allowed"));return this.returnNow()}}while(this.nextChar())}parseSingleString(){return this.char===CHAR_APOS?this.next(this.parseLiteralMultiStringMaybe):this.goto(this.parseLiteralString)}parseLiteralString(){do{if(this.char===CHAR_APOS)return this.return();if(this.atEndOfLine())throw this.error(new TomlError("Unterminated string"));if(this.char===CHAR_DEL||this.char<=CTRL_CHAR_BOUNDARY&&this.char!==CTRL_I)throw this.errorControlCharInString();this.consume()}while(this.nextChar())}parseLiteralMultiStringMaybe(){return this.char===CHAR_APOS?this.next(this.parseLiteralMultiString):this.returnNow()}parseLiteralMultiString(){return this.char===CTRL_M?null:this.char===CTRL_J?this.next(this.parseLiteralMultiStringContent):this.goto(this.parseLiteralMultiStringContent)}parseLiteralMultiStringContent(){do{if(this.char===CHAR_APOS)return this.next(this.parseLiteralMultiEnd);if(this.char===e.END)throw this.error(new TomlError("Unterminated multi-line string"));if(this.char===CHAR_DEL||this.char<=CTRL_CHAR_BOUNDARY&&this.char!==CTRL_I&&this.char!==CTRL_J&&this.char!==CTRL_M)throw this.errorControlCharInString();this.consume()}while(this.nextChar())}parseLiteralMultiEnd(){return this.char===CHAR_APOS?this.next(this.parseLiteralMultiEnd2):(this.state.buf+="'",this.goto(this.parseLiteralMultiStringContent))}parseLiteralMultiEnd2(){return this.char===CHAR_APOS?this.return():(this.state.buf+="''",this.goto(this.parseLiteralMultiStringContent))}parseDoubleString(){return this.char===CHAR_QUOT?this.next(this.parseMultiStringMaybe):this.goto(this.parseBasicString)}parseBasicString(){do{if(this.char===CHAR_BSOL)return this.call(this.parseEscape,this.recordEscapeReplacement);if(this.char===CHAR_QUOT)return this.return();if(this.atEndOfLine())throw this.error(new TomlError("Unterminated string"));if(this.char===CHAR_DEL||this.char<=CTRL_CHAR_BOUNDARY&&this.char!==CTRL_I)throw this.errorControlCharInString();this.consume()}while(this.nextChar())}recordEscapeReplacement(s){return this.state.buf+=s,this.goto(this.parseBasicString)}parseMultiStringMaybe(){return this.char===CHAR_QUOT?this.next(this.parseMultiString):this.returnNow()}parseMultiString(){return this.char===CTRL_M?null:this.char===CTRL_J?this.next(this.parseMultiStringContent):this.goto(this.parseMultiStringContent)}parseMultiStringContent(){do{if(this.char===CHAR_BSOL)return this.call(this.parseMultiEscape,this.recordMultiEscapeReplacement);if(this.char===CHAR_QUOT)return this.next(this.parseMultiEnd);if(this.char===e.END)throw this.error(new TomlError("Unterminated multi-line string"));if(this.char===CHAR_DEL||this.char<=CTRL_CHAR_BOUNDARY&&this.char!==CTRL_I&&this.char!==CTRL_J&&this.char!==CTRL_M)throw this.errorControlCharInString();this.consume()}while(this.nextChar())}errorControlCharInString(){let s="\\u00";return this.char<16&&(s+="0"),s+=this.char.toString(16),this.error(new TomlError(`Control characters (codes < 0x1f and 0x7f) are not allowed in strings, use ${s} instead`))}recordMultiEscapeReplacement(s){return this.state.buf+=s,this.goto(this.parseMultiStringContent)}parseMultiEnd(){return this.char===CHAR_QUOT?this.next(this.parseMultiEnd2):(this.state.buf+='"',this.goto(this.parseMultiStringContent))}parseMultiEnd2(){return this.char===CHAR_QUOT?this.return():(this.state.buf+='""',this.goto(this.parseMultiStringContent))}parseMultiEscape(){return this.char===CTRL_M||this.char===CTRL_J?this.next(this.parseMultiTrim):this.char===CHAR_SP||this.char===CTRL_I?this.next(this.parsePreMultiTrim):this.goto(this.parseEscape)}parsePreMultiTrim(){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===CTRL_M||this.char===CTRL_J)return this.next(this.parseMultiTrim);throw this.error(new TomlError("Can't escape whitespace"))}parseMultiTrim(){return this.char===CTRL_J||this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M?null:this.returnNow()}parseEscape(){if(this.char in escapes)return this.return(escapes[this.char]);if(this.char===CHAR_u)return this.call(this.parseSmallUnicode,this.parseUnicodeReturn);if(this.char===CHAR_U)return this.call(this.parseLargeUnicode,this.parseUnicodeReturn);throw this.error(new TomlError("Unknown escape character: "+this.char))}parseUnicodeReturn(s){try{let a=parseInt(s,16);if(a>=SURROGATE_FIRST&&a<=SURROGATE_LAST)throw this.error(new TomlError("Invalid unicode, character in range 0xD800 - 0xDFFF is reserved"));return this.returnNow(String.fromCodePoint(a))}catch(a){throw this.error(TomlError.wrap(a))}}parseSmallUnicode(){if(isHexit(this.char)){if(this.consume(),this.state.buf.length>=4)return this.return()}else throw this.error(new TomlError("Invalid character in unicode sequence, expected hex"))}parseLargeUnicode(){if(isHexit(this.char)){if(this.consume(),this.state.buf.length>=8)return this.return()}else throw this.error(new TomlError("Invalid character in unicode sequence, expected hex"))}parseNumberSign(){return this.consume(),this.next(this.parseMaybeSignedInfOrNan)}parseMaybeSignedInfOrNan(){return this.char===CHAR_i?this.next(this.parseInf):this.char===CHAR_n?this.next(this.parseNan):this.callNow(this.parseNoUnder,this.parseNumberIntegerStart)}parseNumberIntegerStart(){return this.char===CHAR_0?(this.consume(),this.next(this.parseNumberIntegerExponentOrDecimal)):this.goto(this.parseNumberInteger)}parseNumberIntegerExponentOrDecimal(){return this.char===CHAR_PERIOD?(this.consume(),this.call(this.parseNoUnder,this.parseNumberFloat)):this.char===CHAR_E||this.char===CHAR_e?(this.consume(),this.next(this.parseNumberExponentSign)):this.returnNow(Integer(this.state.buf))}parseNumberInteger(){if(isDigit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnder);if(this.char===CHAR_E||this.char===CHAR_e)return this.consume(),this.next(this.parseNumberExponentSign);if(this.char===CHAR_PERIOD)return this.consume(),this.call(this.parseNoUnder,this.parseNumberFloat);{let s=Integer(this.state.buf);if(s.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(s)}}}parseNoUnder(){if(this.char===CHAR_LOWBAR||this.char===CHAR_PERIOD||this.char===CHAR_E||this.char===CHAR_e)throw this.error(new TomlError("Unexpected character, expected digit"));if(this.atEndOfWord())throw this.error(new TomlError("Incomplete number"));return this.returnNow()}parseNoUnderHexOctBinLiteral(){if(this.char===CHAR_LOWBAR||this.char===CHAR_PERIOD)throw this.error(new TomlError("Unexpected character, expected digit"));if(this.atEndOfWord())throw this.error(new TomlError("Incomplete number"));return this.returnNow()}parseNumberFloat(){if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnder,this.parseNumberFloat);if(isDigit(this.char))this.consume();else return this.char===CHAR_E||this.char===CHAR_e?(this.consume(),this.next(this.parseNumberExponentSign)):this.returnNow(Float(this.state.buf))}parseNumberExponentSign(){if(isDigit(this.char))return this.goto(this.parseNumberExponent);if(this.char===CHAR_HYPHEN||this.char===CHAR_PLUS)this.consume(),this.call(this.parseNoUnder,this.parseNumberExponent);else throw this.error(new TomlError("Unexpected character, expected -, + or digit"))}parseNumberExponent(){if(isDigit(this.char))this.consume();else return this.char===CHAR_LOWBAR?this.call(this.parseNoUnder):this.returnNow(Float(this.state.buf))}parseNumberOrDateTime(){return this.char===CHAR_0?(this.consume(),this.next(this.parseNumberBaseOrDateTime)):this.goto(this.parseNumberOrDateTimeOnly)}parseNumberOrDateTimeOnly(){if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnder,this.parseNumberInteger);if(isDigit(this.char))this.consume(),this.state.buf.length>4&&this.next(this.parseNumberInteger);else return this.char===CHAR_E||this.char===CHAR_e?(this.consume(),this.next(this.parseNumberExponentSign)):this.char===CHAR_PERIOD?(this.consume(),this.call(this.parseNoUnder,this.parseNumberFloat)):this.char===CHAR_HYPHEN?this.goto(this.parseDateTime):this.char===CHAR_COLON?this.goto(this.parseOnlyTimeHour):this.returnNow(Integer(this.state.buf))}parseDateTimeOnly(){if(this.state.buf.length<4){if(isDigit(this.char))return this.consume();if(this.char===CHAR_COLON)return this.goto(this.parseOnlyTimeHour);throw this.error(new TomlError("Expected digit while parsing year part of a date"))}else{if(this.char===CHAR_HYPHEN)return this.goto(this.parseDateTime);throw this.error(new TomlError("Expected hyphen (-) while parsing year part of date"))}}parseNumberBaseOrDateTime(){return this.char===CHAR_b?(this.consume(),this.call(this.parseNoUnderHexOctBinLiteral,this.parseIntegerBin)):this.char===CHAR_o?(this.consume(),this.call(this.parseNoUnderHexOctBinLiteral,this.parseIntegerOct)):this.char===CHAR_x?(this.consume(),this.call(this.parseNoUnderHexOctBinLiteral,this.parseIntegerHex)):this.char===CHAR_PERIOD?this.goto(this.parseNumberInteger):isDigit(this.char)?this.goto(this.parseDateTimeOnly):this.returnNow(Integer(this.state.buf))}parseIntegerHex(){if(isHexit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnderHexOctBinLiteral);{let s=Integer(this.state.buf);if(s.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(s)}}}parseIntegerOct(){if(isOctit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnderHexOctBinLiteral);{let s=Integer(this.state.buf);if(s.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(s)}}}parseIntegerBin(){if(isBit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnderHexOctBinLiteral);{let s=Integer(this.state.buf);if(s.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(s)}}}parseDateTime(){if(this.state.buf.length<4)throw this.error(new TomlError("Years less than 1000 must be zero padded to four characters"));return this.state.result=this.state.buf,this.state.buf="",this.next(this.parseDateMonth)}parseDateMonth(){if(this.char===CHAR_HYPHEN){if(this.state.buf.length<2)throw this.error(new TomlError("Months less than 10 must be zero padded to two characters"));return this.state.result+="-"+this.state.buf,this.state.buf="",this.next(this.parseDateDay)}else if(isDigit(this.char))this.consume();else throw this.error(new TomlError("Incomplete datetime"))}parseDateDay(){if(this.char===CHAR_T||this.char===CHAR_SP){if(this.state.buf.length<2)throw this.error(new TomlError("Days less than 10 must be zero padded to two characters"));return this.state.result+="-"+this.state.buf,this.state.buf="",this.next(this.parseStartTimeHour)}else{if(this.atEndOfWord())return this.returnNow(createDate(this.state.result+"-"+this.state.buf));if(isDigit(this.char))this.consume();else throw this.error(new TomlError("Incomplete datetime"))}}parseStartTimeHour(){return this.atEndOfWord()?this.returnNow(createDate(this.state.result)):this.goto(this.parseTimeHour)}parseTimeHour(){if(this.char===CHAR_COLON){if(this.state.buf.length<2)throw this.error(new TomlError("Hours less than 10 must be zero padded to two characters"));return this.state.result+="T"+this.state.buf,this.state.buf="",this.next(this.parseTimeMin)}else if(isDigit(this.char))this.consume();else throw this.error(new TomlError("Incomplete datetime"))}parseTimeMin(){if(this.state.buf.length<2&&isDigit(this.char))this.consume();else{if(this.state.buf.length===2&&this.char===CHAR_COLON)return this.state.result+=":"+this.state.buf,this.state.buf="",this.next(this.parseTimeSec);throw this.error(new TomlError("Incomplete datetime"))}}parseTimeSec(){if(isDigit(this.char)){if(this.consume(),this.state.buf.length===2)return this.state.result+=":"+this.state.buf,this.state.buf="",this.next(this.parseTimeZoneOrFraction)}else throw this.error(new TomlError("Incomplete datetime"))}parseOnlyTimeHour(){if(this.char===CHAR_COLON){if(this.state.buf.length<2)throw this.error(new TomlError("Hours less than 10 must be zero padded to two characters"));return this.state.result=this.state.buf,this.state.buf="",this.next(this.parseOnlyTimeMin)}else throw this.error(new TomlError("Incomplete time"))}parseOnlyTimeMin(){if(this.state.buf.length<2&&isDigit(this.char))this.consume();else{if(this.state.buf.length===2&&this.char===CHAR_COLON)return this.state.result+=":"+this.state.buf,this.state.buf="",this.next(this.parseOnlyTimeSec);throw this.error(new TomlError("Incomplete time"))}}parseOnlyTimeSec(){if(isDigit(this.char)){if(this.consume(),this.state.buf.length===2)return this.next(this.parseOnlyTimeFractionMaybe)}else throw this.error(new TomlError("Incomplete time"))}parseOnlyTimeFractionMaybe(){if(this.state.result+=":"+this.state.buf,this.char===CHAR_PERIOD)this.state.buf="",this.next(this.parseOnlyTimeFraction);else return this.return(createTime(this.state.result))}parseOnlyTimeFraction(){if(isDigit(this.char))this.consume();else if(this.atEndOfWord()){if(this.state.buf.length===0)throw this.error(new TomlError("Expected digit in milliseconds"));return this.returnNow(createTime(this.state.result+"."+this.state.buf))}else throw this.error(new TomlError("Unexpected character in datetime, expected period (.), minus (-), plus (+) or Z"))}parseTimeZoneOrFraction(){if(this.char===CHAR_PERIOD)this.consume(),this.next(this.parseDateTimeFraction);else if(this.char===CHAR_HYPHEN||this.char===CHAR_PLUS)this.consume(),this.next(this.parseTimeZoneHour);else{if(this.char===CHAR_Z)return this.consume(),this.return(createDateTime(this.state.result+this.state.buf));if(this.atEndOfWord())return this.returnNow(createDateTimeFloat(this.state.result+this.state.buf));throw this.error(new TomlError("Unexpected character in datetime, expected period (.), minus (-), plus (+) or Z"))}}parseDateTimeFraction(){if(isDigit(this.char))this.consume();else{if(this.state.buf.length===1)throw this.error(new TomlError("Expected digit in milliseconds"));if(this.char===CHAR_HYPHEN||this.char===CHAR_PLUS)this.consume(),this.next(this.parseTimeZoneHour);else{if(this.char===CHAR_Z)return this.consume(),this.return(createDateTime(this.state.result+this.state.buf));if(this.atEndOfWord())return this.returnNow(createDateTimeFloat(this.state.result+this.state.buf));throw this.error(new TomlError("Unexpected character in datetime, expected period (.), minus (-), plus (+) or Z"))}}}parseTimeZoneHour(){if(isDigit(this.char)){if(this.consume(),/\d\d$/.test(this.state.buf))return this.next(this.parseTimeZoneSep)}else throw this.error(new TomlError("Unexpected character in datetime, expected digit"))}parseTimeZoneSep(){if(this.char===CHAR_COLON)this.consume(),this.next(this.parseTimeZoneMin);else throw this.error(new TomlError("Unexpected character in datetime, expected colon"))}parseTimeZoneMin(){if(isDigit(this.char)){if(this.consume(),/\d\d$/.test(this.state.buf))return this.return(createDateTime(this.state.result+this.state.buf))}else throw this.error(new TomlError("Unexpected character in datetime, expected digit"))}parseBoolean(){if(this.char===CHAR_t)return this.consume(),this.next(this.parseTrue_r);if(this.char===CHAR_f)return this.consume(),this.next(this.parseFalse_a)}parseTrue_r(){if(this.char===CHAR_r)return this.consume(),this.next(this.parseTrue_u);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseTrue_u(){if(this.char===CHAR_u)return this.consume(),this.next(this.parseTrue_e);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseTrue_e(){if(this.char===CHAR_e)return this.return(!0);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_a(){if(this.char===CHAR_a)return this.consume(),this.next(this.parseFalse_l);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_l(){if(this.char===CHAR_l)return this.consume(),this.next(this.parseFalse_s);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_s(){if(this.char===CHAR_s)return this.consume(),this.next(this.parseFalse_e);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_e(){if(this.char===CHAR_e)return this.return(!1);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseInlineList(){if(this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M||this.char===CTRL_J)return null;if(this.char===e.END)throw this.error(new TomlError("Unterminated inline array"));return this.char===CHAR_NUM?this.call(this.parseComment):this.char===CHAR_RSQB?this.return(this.state.resultArr||InlineList()):this.callNow(this.parseValue,this.recordInlineListValue)}recordInlineListValue(s){if(this.state.resultArr){let a=this.state.resultArr[_contentType],o=tomlType(s);if(a!==o)throw this.error(new TomlError(`Inline lists must be a single type, not a mix of ${a} and ${o}`))}else this.state.resultArr=InlineList(tomlType(s));return isFloat(s)||isInteger(s)?this.state.resultArr.push(s.valueOf()):this.state.resultArr.push(s),this.goto(this.parseInlineListNext)}parseInlineListNext(){if(this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M||this.char===CTRL_J)return null;if(this.char===CHAR_NUM)return this.call(this.parseComment);if(this.char===CHAR_COMMA)return this.next(this.parseInlineList);if(this.char===CHAR_RSQB)return this.goto(this.parseInlineList);throw this.error(new TomlError("Invalid character, expected whitespace, comma (,) or close bracket (])"))}parseInlineTable(){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===e.END||this.char===CHAR_NUM||this.char===CTRL_J||this.char===CTRL_M)throw this.error(new TomlError("Unterminated inline array"));return this.char===CHAR_RCUB?this.return(this.state.resultTable||InlineTable()):(this.state.resultTable||(this.state.resultTable=InlineTable()),this.callNow(this.parseAssign,this.recordInlineTableValue))}recordInlineTableValue(s){let a=this.state.resultTable,o=s.key.pop();for(let g of s.key){if(hasKey(a,g)&&(!isTable(a[g])||a[g][_declared]))throw this.error(new TomlError("Can't redefine existing key"));a=a[g]=a[g]||Table()}if(hasKey(a,o))throw this.error(new TomlError("Can't redefine existing key"));return isInteger(s.value)||isFloat(s.value)?a[o]=s.value.valueOf():a[o]=s.value,this.goto(this.parseInlineTableNext)}parseInlineTableNext(){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===e.END||this.char===CHAR_NUM||this.char===CTRL_J||this.char===CTRL_M)throw this.error(new TomlError("Unterminated inline array"));if(this.char===CHAR_COMMA)return this.next(this.parseInlineTable);if(this.char===CHAR_RCUB)return this.goto(this.parseInlineTable);throw this.error(new TomlError("Invalid character, expected whitespace, comma (,) or close bracket (])"))}}return t}});var Vmt=z((ebl,igi)=>{"use strict";igi.exports=Tya;function Tya(e,t){if(e.pos==null||e.line==null)return e;let r=e.message;if(r+=` at row ${e.line+1}, col ${e.col+1}, pos ${e.pos}: +`};xmt.exports.graceful=function(e){return xmt.exports(e)||` +`}});var Mpr=z((O0l,Qli)=>{"use strict";var O_a=xt("os");Qli.exports=O_a.homedir||function(){var t=process.env.HOME,r=process.env.LOGNAME||process.env.USER||process.env.LNAME||process.env.USERNAME;return process.platform==="win32"?process.env.USERPROFILE||process.env.HOMEDRIVE+process.env.HOMEPATH||t||null:process.platform==="darwin"?t||(r?"/Users/"+r:null):process.platform==="linux"?t||(process.getuid()===0?"/root":r?"/home/"+r:null):t||null}});var Hpr=z((Q0l,Mli)=>{Mli.exports=function(){var e=Error.prepareStackTrace;Error.prepareStackTrace=function(r,s){return s};var t=new Error().stack;return Error.prepareStackTrace=e,t[2].getFileName()}});var Hli=z((M0l,UMe)=>{"use strict";var Q_a=process.platform==="win32",M_a=/^(((?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?[\\\/]?)(?:[^\\\/]*[\\\/])*)((\.{1,2}|[^\\\/]+?|)(\.[^.\/\\]*|))[\\\/]*$/,Ypr={};function H_a(e){return M_a.exec(e).slice(1)}Ypr.parse=function(e){if(typeof e!="string")throw new TypeError("Parameter 'pathString' must be a string, not "+typeof e);var t=H_a(e);if(!t||t.length!==5)throw new TypeError("Invalid path '"+e+"'");return{root:t[1],dir:t[0]===t[1]?t[0]:t[0].slice(0,-1),base:t[2],ext:t[4],name:t[3]}};var Y_a=/^((\/?)(?:[^\/]*\/)*)((\.{1,2}|[^\/]+?|)(\.[^.\/]*|))[\/]*$/,Xpr={};function X_a(e){return Y_a.exec(e).slice(1)}Xpr.parse=function(e){if(typeof e!="string")throw new TypeError("Parameter 'pathString' must be a string, not "+typeof e);var t=X_a(e);if(!t||t.length!==5)throw new TypeError("Invalid path '"+e+"'");return{root:t[1],dir:t[0].slice(0,-1),base:t[2],ext:t[4],name:t[3]}};Q_a?UMe.exports=Ypr.parse:UMe.exports=Xpr.parse;UMe.exports.posix=Xpr.parse;UMe.exports.win32=Ypr.parse});var Jpr=z((H0l,Uli)=>{var Jli=xt("path"),Yli=Jli.parse||Hli(),Xli=function(t,r){var s="/";/^([A-Za-z]:)/.test(t)?s="":/^\\\\/.test(t)&&(s="\\\\");for(var a=[t],o=Yli(t);o.dir!==a[a.length-1];)a.push(o.dir),o=Yli(o.dir);return a.reduce(function(g,p){return g.concat(r.map(function(f){return Jli.resolve(s,p,f)}))},[])};Uli.exports=function(t,r,s){var a=r&&r.moduleDirectory?[].concat(r.moduleDirectory):["node_modules"];if(r&&typeof r.paths=="function")return r.paths(s,t,function(){return Xli(t,a)},r);var o=Xli(t,a);return r&&r.paths?o.concat(r.paths):o}});var Upr=z((Y0l,Kli)=>{var KMe=xt("path");Kli.exports=function(e,t){if(t=t||{},t.forceNodeResolution||!process.versions.pnp)return t;let{findPnpApi:r}=xt("module"),s=(m,y)=>{let B=m.match(/^((?:@[^/]+\/)?[^/]+)(\/.*)?/);if(!B)throw new Error(`Assertion failed: Expected the "resolve" package to call the "paths" callback with package names only (got "${m}")`);y.charAt(y.length-1)!=="/"&&(y=KMe.join(y,"/"));let v=r(y);if(v===null)return;let k;try{k=v.resolveToUnqualified(`${B[1]}/package.json`,y,{considerBuiltins:!1})}catch{return null}if(k===null)throw new Error(`Assertion failed: The resolution thinks that "${B[1]}" is a Node builtin`);let T=KMe.dirname(k),O=typeof B[2]<"u"?KMe.join(T,B[2]):T;return{packagePath:T,unqualifiedPath:O}},a=(m,y)=>{for(let B=0;B{let k=[y].concat(o),T=a(m,k);return T==null?B():[T.unqualifiedPath]},p=(m,y,B,v)=>{let k=[y].concat(o),T=a(m,k);if(T==null)return B().concat(o);let O=KMe.dirname(T.packagePath);return m.match(/^@[^/]+\//)&&(O=KMe.dirname(O)),[O]},f=!1;return t.__skipPackageIterator||(t.packageIterator=function(m,y,B,v){f=!0;try{return g(m,y,B,v)}finally{f=!1}}),t.paths=function(m,y,B,v){return f?B().concat(o):p(m,y,B,v)},t}});var qli=z((X0l,zli)=>{"use strict";var J_a="Function.prototype.bind called on incompatible ",U_a=Object.prototype.toString,K_a=Math.max,j_a="[object Function]",jli=function(t,r){for(var s=[],a=0;a{"use strict";var $_a=qli();$li.exports=Function.prototype.bind||$_a});var rui=z((U0l,tui)=>{"use strict";var e0a=Function.prototype.call,t0a=Object.prototype.hasOwnProperty,r0a=eui();tui.exports=r0a.call(e0a,t0a)});var nui=z((K0l,n0a)=>{n0a.exports={assert:!0,"node:assert":[">= 14.18 && < 15",">= 16"],"assert/strict":">= 15","node:assert/strict":">= 16",async_hooks:">= 8","node:async_hooks":[">= 14.18 && < 15",">= 16"],buffer_ieee754:">= 0.5 && < 0.9.7",buffer:!0,"node:buffer":[">= 14.18 && < 15",">= 16"],child_process:!0,"node:child_process":[">= 14.18 && < 15",">= 16"],cluster:">= 0.5","node:cluster":[">= 14.18 && < 15",">= 16"],console:!0,"node:console":[">= 14.18 && < 15",">= 16"],constants:!0,"node:constants":[">= 14.18 && < 15",">= 16"],crypto:!0,"node:crypto":[">= 14.18 && < 15",">= 16"],_debug_agent:">= 1 && < 8",_debugger:"< 8",dgram:!0,"node:dgram":[">= 14.18 && < 15",">= 16"],diagnostics_channel:[">= 14.17 && < 15",">= 15.1"],"node:diagnostics_channel":[">= 14.18 && < 15",">= 16"],dns:!0,"node:dns":[">= 14.18 && < 15",">= 16"],"dns/promises":">= 15","node:dns/promises":">= 16",domain:">= 0.7.12","node:domain":[">= 14.18 && < 15",">= 16"],events:!0,"node:events":[">= 14.18 && < 15",">= 16"],freelist:"< 6",fs:!0,"node:fs":[">= 14.18 && < 15",">= 16"],"fs/promises":[">= 10 && < 10.1",">= 14"],"node:fs/promises":[">= 14.18 && < 15",">= 16"],_http_agent:">= 0.11.1","node:_http_agent":[">= 14.18 && < 15",">= 16"],_http_client:">= 0.11.1","node:_http_client":[">= 14.18 && < 15",">= 16"],_http_common:">= 0.11.1","node:_http_common":[">= 14.18 && < 15",">= 16"],_http_incoming:">= 0.11.1","node:_http_incoming":[">= 14.18 && < 15",">= 16"],_http_outgoing:">= 0.11.1","node:_http_outgoing":[">= 14.18 && < 15",">= 16"],_http_server:">= 0.11.1","node:_http_server":[">= 14.18 && < 15",">= 16"],http:!0,"node:http":[">= 14.18 && < 15",">= 16"],http2:">= 8.8","node:http2":[">= 14.18 && < 15",">= 16"],https:!0,"node:https":[">= 14.18 && < 15",">= 16"],inspector:">= 8","node:inspector":[">= 14.18 && < 15",">= 16"],"inspector/promises":[">= 19"],"node:inspector/promises":[">= 19"],_linklist:"< 8",module:!0,"node:module":[">= 14.18 && < 15",">= 16"],net:!0,"node:net":[">= 14.18 && < 15",">= 16"],"node-inspect/lib/_inspect":">= 7.6 && < 12","node-inspect/lib/internal/inspect_client":">= 7.6 && < 12","node-inspect/lib/internal/inspect_repl":">= 7.6 && < 12",os:!0,"node:os":[">= 14.18 && < 15",">= 16"],path:!0,"node:path":[">= 14.18 && < 15",">= 16"],"path/posix":">= 15.3","node:path/posix":">= 16","path/win32":">= 15.3","node:path/win32":">= 16",perf_hooks:">= 8.5","node:perf_hooks":[">= 14.18 && < 15",">= 16"],process:">= 1","node:process":[">= 14.18 && < 15",">= 16"],punycode:">= 0.5","node:punycode":[">= 14.18 && < 15",">= 16"],querystring:!0,"node:querystring":[">= 14.18 && < 15",">= 16"],readline:!0,"node:readline":[">= 14.18 && < 15",">= 16"],"readline/promises":">= 17","node:readline/promises":">= 17",repl:!0,"node:repl":[">= 14.18 && < 15",">= 16"],"node:sea":[">= 20.12 && < 21",">= 21.7"],smalloc:">= 0.11.5 && < 3",_stream_duplex:">= 0.9.4","node:_stream_duplex":[">= 14.18 && < 15",">= 16"],_stream_transform:">= 0.9.4","node:_stream_transform":[">= 14.18 && < 15",">= 16"],_stream_wrap:">= 1.4.1","node:_stream_wrap":[">= 14.18 && < 15",">= 16"],_stream_passthrough:">= 0.9.4","node:_stream_passthrough":[">= 14.18 && < 15",">= 16"],_stream_readable:">= 0.9.4","node:_stream_readable":[">= 14.18 && < 15",">= 16"],_stream_writable:">= 0.9.4","node:_stream_writable":[">= 14.18 && < 15",">= 16"],stream:!0,"node:stream":[">= 14.18 && < 15",">= 16"],"stream/consumers":">= 16.7","node:stream/consumers":">= 16.7","stream/promises":">= 15","node:stream/promises":">= 16","stream/web":">= 16.5","node:stream/web":">= 16.5",string_decoder:!0,"node:string_decoder":[">= 14.18 && < 15",">= 16"],sys:[">= 0.4 && < 0.7",">= 0.8"],"node:sys":[">= 14.18 && < 15",">= 16"],"test/reporters":">= 19.9 && < 20.2","node:test/reporters":[">= 18.17 && < 19",">= 19.9",">= 20"],"test/mock_loader":">= 22.3 && < 22.7","node:test/mock_loader":">= 22.3 && < 22.7","node:test":[">= 16.17 && < 17",">= 18"],timers:!0,"node:timers":[">= 14.18 && < 15",">= 16"],"timers/promises":">= 15","node:timers/promises":">= 16",_tls_common:">= 0.11.13","node:_tls_common":[">= 14.18 && < 15",">= 16"],_tls_legacy:">= 0.11.3 && < 10",_tls_wrap:">= 0.11.3","node:_tls_wrap":[">= 14.18 && < 15",">= 16"],tls:!0,"node:tls":[">= 14.18 && < 15",">= 16"],trace_events:">= 10","node:trace_events":[">= 14.18 && < 15",">= 16"],tty:!0,"node:tty":[">= 14.18 && < 15",">= 16"],url:!0,"node:url":[">= 14.18 && < 15",">= 16"],util:!0,"node:util":[">= 14.18 && < 15",">= 16"],"util/types":">= 15.3","node:util/types":">= 16","v8/tools/arguments":">= 10 && < 12","v8/tools/codemap":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/consarray":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/csvparser":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/logreader":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/profile_view":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/splaytree":[">= 4.4 && < 5",">= 5.2 && < 12"],v8:">= 1","node:v8":[">= 14.18 && < 15",">= 16"],vm:!0,"node:vm":[">= 14.18 && < 15",">= 16"],wasi:[">= 13.4 && < 13.5",">= 18.17 && < 19",">= 20"],"node:wasi":[">= 18.17 && < 19",">= 20"],worker_threads:">= 11.7","node:worker_threads":[">= 14.18 && < 15",">= 16"],zlib:">= 0.5","node:zlib":[">= 14.18 && < 15",">= 16"]}});var jMe=z((j0l,oui)=>{"use strict";var i0a=rui();function s0a(e,t){for(var r=e.split("."),s=t.split(" "),a=s.length>1?s[0]:"=",o=(s.length>1?s[1]:s[0]).split("."),g=0;g<3;++g){var p=parseInt(r[g]||0,10),f=parseInt(o[g]||0,10);if(p!==f)return a==="<"?p="?p>=f:!1}return a===">="}function iui(e,t){var r=t.split(/ ?&& ?/);if(r.length===0)return!1;for(var s=0;s"u"?process.versions&&process.versions.node:e;if(typeof r!="string")throw new TypeError(typeof e>"u"?"Unable to determine current node version":"If provided, a valid node version is required");if(t&&typeof t=="object"){for(var s=0;s{var Wfe=xt("fs"),a0a=Mpr(),Nw=xt("path"),c0a=Hpr(),l0a=Jpr(),u0a=Upr(),g0a=jMe(),A0a=process.platform!=="win32"&&Wfe.realpath&&typeof Wfe.realpath.native=="function"?Wfe.realpath.native:Wfe.realpath,aui=a0a(),d0a=function(){return[Nw.join(aui,".node_modules"),Nw.join(aui,".node_libraries")]},p0a=function(t,r){Wfe.stat(t,function(s,a){return s?s.code==="ENOENT"||s.code==="ENOTDIR"?r(null,!1):r(s):r(null,a.isFile()||a.isFIFO())})},f0a=function(t,r){Wfe.stat(t,function(s,a){return s?s.code==="ENOENT"||s.code==="ENOTDIR"?r(null,!1):r(s):r(null,a.isDirectory())})},I0a=function(t,r){A0a(t,function(s,a){s&&s.code!=="ENOENT"?r(s):r(null,s?t:a)})},zMe=function(t,r,s,a){s&&s.preserveSymlinks===!1?t(r,a):a(null,r)},C0a=function(t,r,s){t(r,function(a,o){if(a)s(a);else try{var g=JSON.parse(o);s(null,g)}catch{s(null)}})},m0a=function(t,r,s){for(var a=l0a(r,s,t),o=0;o{h0a.exports={assert:!0,"node:assert":[">= 14.18 && < 15",">= 16"],"assert/strict":">= 15","node:assert/strict":">= 16",async_hooks:">= 8","node:async_hooks":[">= 14.18 && < 15",">= 16"],buffer_ieee754:">= 0.5 && < 0.9.7",buffer:!0,"node:buffer":[">= 14.18 && < 15",">= 16"],child_process:!0,"node:child_process":[">= 14.18 && < 15",">= 16"],cluster:">= 0.5","node:cluster":[">= 14.18 && < 15",">= 16"],console:!0,"node:console":[">= 14.18 && < 15",">= 16"],constants:!0,"node:constants":[">= 14.18 && < 15",">= 16"],crypto:!0,"node:crypto":[">= 14.18 && < 15",">= 16"],_debug_agent:">= 1 && < 8",_debugger:"< 8",dgram:!0,"node:dgram":[">= 14.18 && < 15",">= 16"],diagnostics_channel:[">= 14.17 && < 15",">= 15.1"],"node:diagnostics_channel":[">= 14.18 && < 15",">= 16"],dns:!0,"node:dns":[">= 14.18 && < 15",">= 16"],"dns/promises":">= 15","node:dns/promises":">= 16",domain:">= 0.7.12","node:domain":[">= 14.18 && < 15",">= 16"],events:!0,"node:events":[">= 14.18 && < 15",">= 16"],freelist:"< 6",fs:!0,"node:fs":[">= 14.18 && < 15",">= 16"],"fs/promises":[">= 10 && < 10.1",">= 14"],"node:fs/promises":[">= 14.18 && < 15",">= 16"],_http_agent:">= 0.11.1","node:_http_agent":[">= 14.18 && < 15",">= 16"],_http_client:">= 0.11.1","node:_http_client":[">= 14.18 && < 15",">= 16"],_http_common:">= 0.11.1","node:_http_common":[">= 14.18 && < 15",">= 16"],_http_incoming:">= 0.11.1","node:_http_incoming":[">= 14.18 && < 15",">= 16"],_http_outgoing:">= 0.11.1","node:_http_outgoing":[">= 14.18 && < 15",">= 16"],_http_server:">= 0.11.1","node:_http_server":[">= 14.18 && < 15",">= 16"],http:!0,"node:http":[">= 14.18 && < 15",">= 16"],http2:">= 8.8","node:http2":[">= 14.18 && < 15",">= 16"],https:!0,"node:https":[">= 14.18 && < 15",">= 16"],inspector:">= 8","node:inspector":[">= 14.18 && < 15",">= 16"],"inspector/promises":[">= 19"],"node:inspector/promises":[">= 19"],_linklist:"< 8",module:!0,"node:module":[">= 14.18 && < 15",">= 16"],net:!0,"node:net":[">= 14.18 && < 15",">= 16"],"node-inspect/lib/_inspect":">= 7.6 && < 12","node-inspect/lib/internal/inspect_client":">= 7.6 && < 12","node-inspect/lib/internal/inspect_repl":">= 7.6 && < 12",os:!0,"node:os":[">= 14.18 && < 15",">= 16"],path:!0,"node:path":[">= 14.18 && < 15",">= 16"],"path/posix":">= 15.3","node:path/posix":">= 16","path/win32":">= 15.3","node:path/win32":">= 16",perf_hooks:">= 8.5","node:perf_hooks":[">= 14.18 && < 15",">= 16"],process:">= 1","node:process":[">= 14.18 && < 15",">= 16"],punycode:">= 0.5","node:punycode":[">= 14.18 && < 15",">= 16"],querystring:!0,"node:querystring":[">= 14.18 && < 15",">= 16"],readline:!0,"node:readline":[">= 14.18 && < 15",">= 16"],"readline/promises":">= 17","node:readline/promises":">= 17",repl:!0,"node:repl":[">= 14.18 && < 15",">= 16"],smalloc:">= 0.11.5 && < 3",_stream_duplex:">= 0.9.4","node:_stream_duplex":[">= 14.18 && < 15",">= 16"],_stream_transform:">= 0.9.4","node:_stream_transform":[">= 14.18 && < 15",">= 16"],_stream_wrap:">= 1.4.1","node:_stream_wrap":[">= 14.18 && < 15",">= 16"],_stream_passthrough:">= 0.9.4","node:_stream_passthrough":[">= 14.18 && < 15",">= 16"],_stream_readable:">= 0.9.4","node:_stream_readable":[">= 14.18 && < 15",">= 16"],_stream_writable:">= 0.9.4","node:_stream_writable":[">= 14.18 && < 15",">= 16"],stream:!0,"node:stream":[">= 14.18 && < 15",">= 16"],"stream/consumers":">= 16.7","node:stream/consumers":">= 16.7","stream/promises":">= 15","node:stream/promises":">= 16","stream/web":">= 16.5","node:stream/web":">= 16.5",string_decoder:!0,"node:string_decoder":[">= 14.18 && < 15",">= 16"],sys:[">= 0.4 && < 0.7",">= 0.8"],"node:sys":[">= 14.18 && < 15",">= 16"],"test/reporters":">= 19.9 && < 20.2","node:test/reporters":[">= 18.17 && < 19",">= 19.9",">= 20"],"node:test":[">= 16.17 && < 17",">= 18"],timers:!0,"node:timers":[">= 14.18 && < 15",">= 16"],"timers/promises":">= 15","node:timers/promises":">= 16",_tls_common:">= 0.11.13","node:_tls_common":[">= 14.18 && < 15",">= 16"],_tls_legacy:">= 0.11.3 && < 10",_tls_wrap:">= 0.11.3","node:_tls_wrap":[">= 14.18 && < 15",">= 16"],tls:!0,"node:tls":[">= 14.18 && < 15",">= 16"],trace_events:">= 10","node:trace_events":[">= 14.18 && < 15",">= 16"],tty:!0,"node:tty":[">= 14.18 && < 15",">= 16"],url:!0,"node:url":[">= 14.18 && < 15",">= 16"],util:!0,"node:util":[">= 14.18 && < 15",">= 16"],"util/types":">= 15.3","node:util/types":">= 16","v8/tools/arguments":">= 10 && < 12","v8/tools/codemap":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/consarray":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/csvparser":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/logreader":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/profile_view":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/splaytree":[">= 4.4 && < 5",">= 5.2 && < 12"],v8:">= 1","node:v8":[">= 14.18 && < 15",">= 16"],vm:!0,"node:vm":[">= 14.18 && < 15",">= 16"],wasi:[">= 13.4 && < 13.5",">= 18.17 && < 19",">= 20"],"node:wasi":[">= 18.17 && < 19",">= 20"],worker_threads:">= 11.7","node:worker_threads":[">= 14.18 && < 15",">= 16"],zlib:">= 0.5","node:zlib":[">= 14.18 && < 15",">= 16"]}});var pui=z(($0l,dui)=>{"use strict";var _0a=jMe(),gui=uui(),Aui={};for(kmt in gui)Object.prototype.hasOwnProperty.call(gui,kmt)&&(Aui[kmt]=_0a(kmt));var kmt;dui.exports=Aui});var Iui=z((eyl,fui)=>{var y0a=jMe();fui.exports=function(t){return y0a(t)}});var hui=z((tyl,mui)=>{var b0a=jMe(),Pfe=xt("fs"),Ok=xt("path"),E0a=Mpr(),B0a=Hpr(),v0a=Jpr(),S0a=Upr(),w0a=process.platform!=="win32"&&Pfe.realpathSync&&typeof Pfe.realpathSync.native=="function"?Pfe.realpathSync.native:Pfe.realpathSync,Cui=E0a(),T0a=function(){return[Ok.join(Cui,".node_modules"),Ok.join(Cui,".node_libraries")]},N0a=function(t){try{var r=Pfe.statSync(t,{throwIfNoEntry:!1})}catch(s){if(s&&(s.code==="ENOENT"||s.code==="ENOTDIR"))return!1;throw s}return!!r&&(r.isFile()||r.isFIFO())},R0a=function(t){try{var r=Pfe.statSync(t,{throwIfNoEntry:!1})}catch(s){if(s&&(s.code==="ENOENT"||s.code==="ENOTDIR"))return!1;throw s}return!!r&&r.isDirectory()},D0a=function(t){try{return w0a(t)}catch(r){if(r.code!=="ENOENT")throw r}return t},qMe=function(t,r,s){return s&&s.preserveSymlinks===!1?t(r):r},x0a=function(t,r){var s=t(r);try{var a=JSON.parse(s);return a}catch{}},k0a=function(t,r,s){for(var a=v0a(r,s,t),o=0;o{var Gmt=lui();Gmt.core=pui();Gmt.isCore=Iui();Gmt.sync=hui();_ui.exports=Gmt});var Eui=z((nyl,bui)=>{"use strict";var{builtinModules:G0a}=xt("module"),F0a=["sys"];bui.exports=(G0a||(process.binding?Object.keys(process.binding("natives")):[])||[]).filter(e=>!/^_|^(internal|v8|node-inspect)\/|\//.test(e)&&!F0a.includes(e)).sort()});var Sui=z((iyl,vui)=>{"use strict";var Z0a=Eui(),L0a=new Set(Z0a),Bui="node:";vui.exports=e=>{if(typeof e!="string")throw new TypeError("Expected a string");e.startsWith(Bui)&&(e=e.slice(Bui.length));let t=e.indexOf("/");return t!==-1&&t!==e.length-1&&(e=e.slice(0,t)),L0a.has(e)}});var Nui=z(Kpr=>{"use strict";Object.defineProperty(Kpr,"__esModule",{value:!0});var V0a=xt("path"),W0a=yui(),P0a=Sui();function O0a(e){if(e.length===1){let r=e;return s=>{let a=s.defaultMember||s.namespaceMember||s.namedMembers[0].alias;return r(a)}}let t=e;return(r,s)=>{let a=r.defaultMember||r.namespaceMember||r.namedMembers[0].alias,o=s.defaultMember||s.namespaceMember||s.namedMembers[0].alias;return t(a,o)}}function Q0a(e){if(e.length===1){let r=e;return s=>{let a=s.moduleName;return r(a)}}let t=e;return(r,s)=>{let a=r.moduleName,o=s.moduleName;return t(a,o)}}function M0a(e){return(t,r)=>e(t.name,r.name)}function H0a(e){return(t,r)=>e(t.alias,r.alias)}function Y0a(){return!0}function X0a(e){return t=>!e(t)}function J0a(...e){return t=>e.every(r=>r(t))}function U0a(...e){return t=>e.some(r=>r(t))}function $Me(e){return!!e.defaultMember}function OSe(e){return!!e.namespaceMember}function eHe(e){return e.namedMembers.length>0}function wui(e){return $Me(e)||OSe(e)||eHe(e)}function K0a(e){return!wui(e)}function j0a(e){return $Me(e)&&!OSe(e)&&!eHe(e)}function z0a(e){return!$Me(e)&&OSe(e)&&!eHe(e)}function q0a(e){return!$Me(e)&&!OSe(e)&&eHe(e)}function $0a(e){return e.namedMembers.length+(e.defaultMember?1:0)+(e.namespaceMember?1:0)>1}function eya(e){return e.namedMembers.length+(e.defaultMember?1:0)===1&&!OSe(e)}function tya(e){return P0a(e.moduleName)}function Tui(e){return e.moduleName.indexOf(".")===0}function rya(e){return!Tui(e)}function nya(e){return t=>{try{return W0a.sync(t.moduleName,{basedir:V0a.dirname(e)}).includes("node_modules")}catch{return!1}}}function iya(e){return e.moduleName.startsWith("@")}function sya(e){let t=e.charAt(0);return e.charAt(0)===t.toUpperCase()}function oya(e){let t=e.charAt(0);return e.charAt(0)===t.toLowerCase()}function aya(e){return!!e.match(/^[A-Za-z0-9]/)}function cya(...e){return t=>e.some(r=>t.startsWith(r))}function lya(e,t){return e.localeCompare(t,"en")}function uya(e,t){return et?1:0}function gya(e,t){let r=/\.+(?=\/)/g,s=(e.moduleName.match(r)||[]).join("").length,a=(t.moduleName.match(r)||[]).join("").length;return s>a?-1:s{"use strict";Object.defineProperty(tHe,"__esModule",{value:!0});var dya=Oli(),pya=Nui();function fya(e,t,r,s,a){let o,g=typeof t=="string"?xt(t):t;return typeof r=="string"?(o=xt(r),o.default&&(o=o.default)):o=r,Rui(e,g,o,s,a)}tHe.default=fya;function Rui(e,t,r,s,a){let o=mya(r,s,a||{})(pya.default),g=o.map(()=>[]),p=t.parseImports(e,{file:s});if(p.length===0)return{code:e,changes:[]};let f=dya.graceful(e),m=[];for(let fe of p){let pe=fe,he=o.findIndex(be=>(pe=Iya(fe,be.sortNamedMembers),!!be.match&&be.match(pe)));he!==-1&&g[he].push(pe)}g.forEach((fe,pe)=>{let{sort:he}=o[pe];if(!he)return;if(!Array.isArray(he)){fe.sort(he);return}let be=he;if(be.length===0)return;let Te=(ke,x)=>{let et=0,Ue=0;for(;Ue===0&&be[et];)Ue=be[et](ke,x),et+=1;return Ue};fe.sort(Te)});let y="",B=!1;g.forEach((fe,pe)=>{fe.length>0&&B&&(y+=f,B=!1),fe.forEach(he=>{let be=t.formatImport(e,he,f);y+=be+f}),o[pe].separator&&y!==""&&(B=!0)});let v=e;p.slice().reverse().forEach(fe=>{let pe=fe.end;v.charAt(fe.end).match(/\s/)&&(pe+=1),m.push({start:fe.start,end:pe,code:"",note:"import-remove"}),v=v.slice(0,fe.start)+v.slice(pe,e.length)});let{start:k}=p[0],T=e.substring(0,k),O=v.substring(k,v.length),X=T.length,U=O.length,le,ae;T=T.replace(/\s+$/,fe=>(le={start:k-fe.length,end:k,code:f+f,note:"before-collapse"},f+f)),O=O.replace(/^\s+/,fe=>(ae={start:k,end:k+fe.length,code:f,note:"after-collapse"},f)),T.match(/^\s+$/)&&(le={start:k-X,end:k,code:"",note:"before-trim"},T=""),O.match(/^\s+$/)&&(ae={start:k,end:k+U,code:"",note:"after-trim"},O=""),ae&&m.push(ae),le&&m.push(le);let ge={start:T.length,end:T.length,code:y,note:"imports"};return m.push(ge),e===T+y+O?{code:e,changes:[]}:{code:T+y+O,changes:m}}tHe.sortImports=Rui;function Iya(e,t){let r=t;if(!r)return e;if(!Array.isArray(r)){let g=Object.assign({},e);return g.namedMembers=[...e.namedMembers].sort(r),g}let s=r;if(s.length===0)return e;let a=(g,p)=>{let f=0,m=0;for(;m===0&&s[f];)m=s[f](g,p),f+=1;return m},o=Object.assign({},e);return o.namedMembers=[...e.namedMembers].sort(a),o}function Cya(e,t){let r=e;for(let s of t)r=r.slice(0,s.start)+s.code+r.slice(s.end,r.length);return r}tHe.applyChanges=Cya;function mya(e,t,r){return s=>{let a=[{separator:!0},{match:s.always}];return e(s,t,r).concat(a)}}});var tgi=z((Ibl,egi)=>{"use strict";var Ofe=class e extends Error{constructor(t,r,s){super("[ParserError] "+t,r,s),this.name="ParserError",this.code="ParserError",Error.captureStackTrace&&Error.captureStackTrace(this,e)}},Lmt=class{constructor(t){this.parser=t,this.buf="",this.returned=null,this.result=null,this.resultTable=null,this.resultArr=null}},nHe=class{constructor(){this.pos=0,this.col=0,this.line=0,this.obj={},this.ctx=this.obj,this.stack=[],this._buf="",this.char=null,this.ii=0,this.state=new Lmt(this.parseStart)}parse(t){if(t.length===0||t.length==null)return;this._buf=String(t),this.ii=-1,this.char=-1;let r;for(;r===!1||this.nextChar();)r=this.runOne();this._buf=null}nextChar(){return this.char===10&&(++this.line,this.col=-1),++this.ii,this.char=this._buf.codePointAt(this.ii),++this.pos,++this.col,this.haveBuffer()}haveBuffer(){return this.ii{"use strict";rgi.exports=e=>{let t=new Date(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var Vmt=z((mbl,igi)=>{"use strict";igi.exports=(e,t)=>{for(t=String(t);t.length{"use strict";var QSe=Vmt(),efr=class extends Date{constructor(t){super(t+"Z"),this.isFloating=!0}toISOString(){let t=`${this.getUTCFullYear()}-${QSe(2,this.getUTCMonth()+1)}-${QSe(2,this.getUTCDate())}`,r=`${QSe(2,this.getUTCHours())}:${QSe(2,this.getUTCMinutes())}:${QSe(2,this.getUTCSeconds())}.${QSe(3,this.getUTCMilliseconds())}`;return`${t}T${r}`}};sgi.exports=e=>{let t=new efr(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var lgi=z((_bl,cgi)=>{"use strict";var agi=Vmt(),Mya=global.Date,tfr=class extends Mya{constructor(t){super(t),this.isDate=!0}toISOString(){return`${this.getUTCFullYear()}-${agi(2,this.getUTCMonth()+1)}-${agi(2,this.getUTCDate())}`}};cgi.exports=e=>{let t=new tfr(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var ggi=z((ybl,ugi)=>{"use strict";var Wmt=Vmt(),rfr=class extends Date{constructor(t){super(`0000-01-01T${t}Z`),this.isTime=!0}toISOString(){return`${Wmt(2,this.getUTCHours())}:${Wmt(2,this.getUTCMinutes())}:${Wmt(2,this.getUTCSeconds())}.${Wmt(3,this.getUTCMilliseconds())}`}};ugi.exports=e=>{let t=new rfr(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var Pmt=z((exports,module)=>{"use strict";module.exports=makeParserClass(tgi());module.exports.makeParserClass=makeParserClass;var TomlError=class e extends Error{constructor(t){super(t),this.name="TomlError",Error.captureStackTrace&&Error.captureStackTrace(this,e),this.fromTOML=!0,this.wrapped=null}};TomlError.wrap=e=>{let t=new TomlError(e.message);return t.code=e.code,t.wrapped=e,t};module.exports.TomlError=TomlError;var createDateTime=ngi(),createDateTimeFloat=ogi(),createDate=lgi(),createTime=ggi(),CTRL_I=9,CTRL_J=10,CTRL_M=13,CTRL_CHAR_BOUNDARY=31,CHAR_SP=32,CHAR_QUOT=34,CHAR_NUM=35,CHAR_APOS=39,CHAR_PLUS=43,CHAR_COMMA=44,CHAR_HYPHEN=45,CHAR_PERIOD=46,CHAR_0=48,CHAR_1=49,CHAR_7=55,CHAR_9=57,CHAR_COLON=58,CHAR_EQUALS=61,CHAR_A=65,CHAR_E=69,CHAR_F=70,CHAR_T=84,CHAR_U=85,CHAR_Z=90,CHAR_LOWBAR=95,CHAR_a=97,CHAR_b=98,CHAR_e=101,CHAR_f=102,CHAR_i=105,CHAR_l=108,CHAR_n=110,CHAR_o=111,CHAR_r=114,CHAR_s=115,CHAR_t=116,CHAR_u=117,CHAR_x=120,CHAR_z=122,CHAR_LCUB=123,CHAR_RCUB=125,CHAR_LSQB=91,CHAR_BSOL=92,CHAR_RSQB=93,CHAR_DEL=127,SURROGATE_FIRST=55296,SURROGATE_LAST=57343,escapes={[CHAR_b]:"\b",[CHAR_t]:" ",[CHAR_n]:` +`,[CHAR_f]:"\f",[CHAR_r]:"\r",[CHAR_QUOT]:'"',[CHAR_BSOL]:"\\"};function isDigit(e){return e>=CHAR_0&&e<=CHAR_9}function isHexit(e){return e>=CHAR_A&&e<=CHAR_F||e>=CHAR_a&&e<=CHAR_f||e>=CHAR_0&&e<=CHAR_9}function isBit(e){return e===CHAR_1||e===CHAR_0}function isOctit(e){return e>=CHAR_0&&e<=CHAR_7}function isAlphaNumQuoteHyphen(e){return e>=CHAR_A&&e<=CHAR_Z||e>=CHAR_a&&e<=CHAR_z||e>=CHAR_0&&e<=CHAR_9||e===CHAR_APOS||e===CHAR_QUOT||e===CHAR_LOWBAR||e===CHAR_HYPHEN}function isAlphaNumHyphen(e){return e>=CHAR_A&&e<=CHAR_Z||e>=CHAR_a&&e<=CHAR_z||e>=CHAR_0&&e<=CHAR_9||e===CHAR_LOWBAR||e===CHAR_HYPHEN}var _type=Symbol("type"),_declared=Symbol("declared"),hasOwnProperty=Object.prototype.hasOwnProperty,defineProperty=Object.defineProperty,descriptor={configurable:!0,enumerable:!0,writable:!0,value:void 0};function hasKey(e,t){return hasOwnProperty.call(e,t)?!0:(t==="__proto__"&&defineProperty(e,"__proto__",descriptor),!1)}var INLINE_TABLE=Symbol("inline-table");function InlineTable(){return Object.defineProperties({},{[_type]:{value:INLINE_TABLE}})}function isInlineTable(e){return e===null||typeof e!="object"?!1:e[_type]===INLINE_TABLE}var TABLE=Symbol("table");function Table(){return Object.defineProperties({},{[_type]:{value:TABLE},[_declared]:{value:!1,writable:!0}})}function isTable(e){return e===null||typeof e!="object"?!1:e[_type]===TABLE}var _contentType=Symbol("content-type"),INLINE_LIST=Symbol("inline-list");function InlineList(e){return Object.defineProperties([],{[_type]:{value:INLINE_LIST},[_contentType]:{value:e}})}function isInlineList(e){return e===null||typeof e!="object"?!1:e[_type]===INLINE_LIST}var LIST=Symbol("list");function List(){return Object.defineProperties([],{[_type]:{value:LIST}})}function isList(e){return e===null||typeof e!="object"?!1:e[_type]===LIST}var _custom;try{let utilInspect=eval("require('util').inspect");_custom=utilInspect.custom}catch(e){}var _inspect=_custom||"inspect",BoxedBigInt=class{constructor(t){try{this.value=global.BigInt.asIntN(64,t)}catch{this.value=null}Object.defineProperty(this,_type,{value:INTEGER})}isNaN(){return this.value===null}toString(){return String(this.value)}[_inspect](){return`[BigInt: ${this.toString()}]}`}valueOf(){return this.value}},INTEGER=Symbol("integer");function Integer(e){let t=Number(e);return Object.is(t,-0)&&(t=0),global.BigInt&&!Number.isSafeInteger(t)?new BoxedBigInt(e):Object.defineProperties(new Number(t),{isNaN:{value:function(){return isNaN(this)}},[_type]:{value:INTEGER},[_inspect]:{value:()=>`[Integer: ${e}]`}})}function isInteger(e){return e===null||typeof e!="object"?!1:e[_type]===INTEGER}var FLOAT=Symbol("float");function Float(e){return Object.defineProperties(new Number(e),{[_type]:{value:FLOAT},[_inspect]:{value:()=>`[Float: ${e}]`}})}function isFloat(e){return e===null||typeof e!="object"?!1:e[_type]===FLOAT}function tomlType(e){let t=typeof e;if(t==="object"){if(e===null)return"null";if(e instanceof Date)return"datetime";if(_type in e)switch(e[_type]){case INLINE_TABLE:return"inline-table";case INLINE_LIST:return"inline-list";case TABLE:return"table";case LIST:return"list";case FLOAT:return"float";case INTEGER:return"integer"}}return t}function makeParserClass(e){class t extends e{constructor(){super(),this.ctx=this.obj=Table()}atEndOfWord(){return this.char===CHAR_NUM||this.char===CTRL_I||this.char===CHAR_SP||this.atEndOfLine()}atEndOfLine(){return this.char===e.END||this.char===CTRL_J||this.char===CTRL_M}parseStart(){if(this.char===e.END)return null;if(this.char===CHAR_LSQB)return this.call(this.parseTableOrList);if(this.char===CHAR_NUM)return this.call(this.parseComment);if(this.char===CTRL_J||this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M)return null;if(isAlphaNumQuoteHyphen(this.char))return this.callNow(this.parseAssignStatement);throw this.error(new TomlError(`Unknown character "${this.char}"`))}parseWhitespaceToEOL(){if(this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M)return null;if(this.char===CHAR_NUM)return this.goto(this.parseComment);if(this.char===e.END||this.char===CTRL_J)return this.return();throw this.error(new TomlError("Unexpected character, expected only whitespace or comments till end of line"))}parseAssignStatement(){return this.callNow(this.parseAssign,this.recordAssignStatement)}recordAssignStatement(s){let a=this.ctx,o=s.key.pop();for(let g of s.key){if(hasKey(a,g)&&(!isTable(a[g])||a[g][_declared]))throw this.error(new TomlError("Can't redefine existing key"));a=a[g]=a[g]||Table()}if(hasKey(a,o))throw this.error(new TomlError("Can't redefine existing key"));return isInteger(s.value)||isFloat(s.value)?a[o]=s.value.valueOf():a[o]=s.value,this.goto(this.parseWhitespaceToEOL)}parseAssign(){return this.callNow(this.parseKeyword,this.recordAssignKeyword)}recordAssignKeyword(s){return this.state.resultTable?this.state.resultTable.push(s):this.state.resultTable=[s],this.goto(this.parseAssignKeywordPreDot)}parseAssignKeywordPreDot(){if(this.char===CHAR_PERIOD)return this.next(this.parseAssignKeywordPostDot);if(this.char!==CHAR_SP&&this.char!==CTRL_I)return this.goto(this.parseAssignEqual)}parseAssignKeywordPostDot(){if(this.char!==CHAR_SP&&this.char!==CTRL_I)return this.callNow(this.parseKeyword,this.recordAssignKeyword)}parseAssignEqual(){if(this.char===CHAR_EQUALS)return this.next(this.parseAssignPreValue);throw this.error(new TomlError('Invalid character, expected "="'))}parseAssignPreValue(){return this.char===CHAR_SP||this.char===CTRL_I?null:this.callNow(this.parseValue,this.recordAssignValue)}recordAssignValue(s){return this.returnNow({key:this.state.resultTable,value:s})}parseComment(){do if(this.char===e.END||this.char===CTRL_J)return this.return();while(this.nextChar())}parseTableOrList(){if(this.char===CHAR_LSQB)this.next(this.parseList);else return this.goto(this.parseTable)}parseTable(){return this.ctx=this.obj,this.goto(this.parseTableNext)}parseTableNext(){return this.char===CHAR_SP||this.char===CTRL_I?null:this.callNow(this.parseKeyword,this.parseTableMore)}parseTableMore(s){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===CHAR_RSQB){if(hasKey(this.ctx,s)&&(!isTable(this.ctx[s])||this.ctx[s][_declared]))throw this.error(new TomlError("Can't redefine existing key"));return this.ctx=this.ctx[s]=this.ctx[s]||Table(),this.ctx[_declared]=!0,this.next(this.parseWhitespaceToEOL)}else if(this.char===CHAR_PERIOD){if(!hasKey(this.ctx,s))this.ctx=this.ctx[s]=Table();else if(isTable(this.ctx[s]))this.ctx=this.ctx[s];else if(isList(this.ctx[s]))this.ctx=this.ctx[s][this.ctx[s].length-1];else throw this.error(new TomlError("Can't redefine existing key"));return this.next(this.parseTableNext)}else throw this.error(new TomlError("Unexpected character, expected whitespace, . or ]"))}parseList(){return this.ctx=this.obj,this.goto(this.parseListNext)}parseListNext(){return this.char===CHAR_SP||this.char===CTRL_I?null:this.callNow(this.parseKeyword,this.parseListMore)}parseListMore(s){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===CHAR_RSQB){if(hasKey(this.ctx,s)||(this.ctx[s]=List()),isInlineList(this.ctx[s]))throw this.error(new TomlError("Can't extend an inline array"));if(isList(this.ctx[s])){let a=Table();this.ctx[s].push(a),this.ctx=a}else throw this.error(new TomlError("Can't redefine an existing key"));return this.next(this.parseListEnd)}else if(this.char===CHAR_PERIOD){if(!hasKey(this.ctx,s))this.ctx=this.ctx[s]=Table();else{if(isInlineList(this.ctx[s]))throw this.error(new TomlError("Can't extend an inline array"));if(isInlineTable(this.ctx[s]))throw this.error(new TomlError("Can't extend an inline table"));if(isList(this.ctx[s]))this.ctx=this.ctx[s][this.ctx[s].length-1];else if(isTable(this.ctx[s]))this.ctx=this.ctx[s];else throw this.error(new TomlError("Can't redefine an existing key"))}return this.next(this.parseListNext)}else throw this.error(new TomlError("Unexpected character, expected whitespace, . or ]"))}parseListEnd(s){if(this.char===CHAR_RSQB)return this.next(this.parseWhitespaceToEOL);throw this.error(new TomlError("Unexpected character, expected whitespace, . or ]"))}parseValue(){if(this.char===e.END)throw this.error(new TomlError("Key without value"));if(this.char===CHAR_QUOT)return this.next(this.parseDoubleString);if(this.char===CHAR_APOS)return this.next(this.parseSingleString);if(this.char===CHAR_HYPHEN||this.char===CHAR_PLUS)return this.goto(this.parseNumberSign);if(this.char===CHAR_i)return this.next(this.parseInf);if(this.char===CHAR_n)return this.next(this.parseNan);if(isDigit(this.char))return this.goto(this.parseNumberOrDateTime);if(this.char===CHAR_t||this.char===CHAR_f)return this.goto(this.parseBoolean);if(this.char===CHAR_LSQB)return this.call(this.parseInlineList,this.recordValue);if(this.char===CHAR_LCUB)return this.call(this.parseInlineTable,this.recordValue);throw this.error(new TomlError("Unexpected character, expecting string, number, datetime, boolean, inline array or inline table"))}recordValue(s){return this.returnNow(s)}parseInf(){if(this.char===CHAR_n)return this.next(this.parseInf2);throw this.error(new TomlError('Unexpected character, expected "inf", "+inf" or "-inf"'))}parseInf2(){if(this.char===CHAR_f)return this.state.buf==="-"?this.return(-1/0):this.return(1/0);throw this.error(new TomlError('Unexpected character, expected "inf", "+inf" or "-inf"'))}parseNan(){if(this.char===CHAR_a)return this.next(this.parseNan2);throw this.error(new TomlError('Unexpected character, expected "nan"'))}parseNan2(){if(this.char===CHAR_n)return this.return(NaN);throw this.error(new TomlError('Unexpected character, expected "nan"'))}parseKeyword(){return this.char===CHAR_QUOT?this.next(this.parseBasicString):this.char===CHAR_APOS?this.next(this.parseLiteralString):this.goto(this.parseBareKey)}parseBareKey(){do{if(this.char===e.END)throw this.error(new TomlError("Key ended without value"));if(isAlphaNumHyphen(this.char))this.consume();else{if(this.state.buf.length===0)throw this.error(new TomlError("Empty bare keys are not allowed"));return this.returnNow()}}while(this.nextChar())}parseSingleString(){return this.char===CHAR_APOS?this.next(this.parseLiteralMultiStringMaybe):this.goto(this.parseLiteralString)}parseLiteralString(){do{if(this.char===CHAR_APOS)return this.return();if(this.atEndOfLine())throw this.error(new TomlError("Unterminated string"));if(this.char===CHAR_DEL||this.char<=CTRL_CHAR_BOUNDARY&&this.char!==CTRL_I)throw this.errorControlCharInString();this.consume()}while(this.nextChar())}parseLiteralMultiStringMaybe(){return this.char===CHAR_APOS?this.next(this.parseLiteralMultiString):this.returnNow()}parseLiteralMultiString(){return this.char===CTRL_M?null:this.char===CTRL_J?this.next(this.parseLiteralMultiStringContent):this.goto(this.parseLiteralMultiStringContent)}parseLiteralMultiStringContent(){do{if(this.char===CHAR_APOS)return this.next(this.parseLiteralMultiEnd);if(this.char===e.END)throw this.error(new TomlError("Unterminated multi-line string"));if(this.char===CHAR_DEL||this.char<=CTRL_CHAR_BOUNDARY&&this.char!==CTRL_I&&this.char!==CTRL_J&&this.char!==CTRL_M)throw this.errorControlCharInString();this.consume()}while(this.nextChar())}parseLiteralMultiEnd(){return this.char===CHAR_APOS?this.next(this.parseLiteralMultiEnd2):(this.state.buf+="'",this.goto(this.parseLiteralMultiStringContent))}parseLiteralMultiEnd2(){return this.char===CHAR_APOS?this.return():(this.state.buf+="''",this.goto(this.parseLiteralMultiStringContent))}parseDoubleString(){return this.char===CHAR_QUOT?this.next(this.parseMultiStringMaybe):this.goto(this.parseBasicString)}parseBasicString(){do{if(this.char===CHAR_BSOL)return this.call(this.parseEscape,this.recordEscapeReplacement);if(this.char===CHAR_QUOT)return this.return();if(this.atEndOfLine())throw this.error(new TomlError("Unterminated string"));if(this.char===CHAR_DEL||this.char<=CTRL_CHAR_BOUNDARY&&this.char!==CTRL_I)throw this.errorControlCharInString();this.consume()}while(this.nextChar())}recordEscapeReplacement(s){return this.state.buf+=s,this.goto(this.parseBasicString)}parseMultiStringMaybe(){return this.char===CHAR_QUOT?this.next(this.parseMultiString):this.returnNow()}parseMultiString(){return this.char===CTRL_M?null:this.char===CTRL_J?this.next(this.parseMultiStringContent):this.goto(this.parseMultiStringContent)}parseMultiStringContent(){do{if(this.char===CHAR_BSOL)return this.call(this.parseMultiEscape,this.recordMultiEscapeReplacement);if(this.char===CHAR_QUOT)return this.next(this.parseMultiEnd);if(this.char===e.END)throw this.error(new TomlError("Unterminated multi-line string"));if(this.char===CHAR_DEL||this.char<=CTRL_CHAR_BOUNDARY&&this.char!==CTRL_I&&this.char!==CTRL_J&&this.char!==CTRL_M)throw this.errorControlCharInString();this.consume()}while(this.nextChar())}errorControlCharInString(){let s="\\u00";return this.char<16&&(s+="0"),s+=this.char.toString(16),this.error(new TomlError(`Control characters (codes < 0x1f and 0x7f) are not allowed in strings, use ${s} instead`))}recordMultiEscapeReplacement(s){return this.state.buf+=s,this.goto(this.parseMultiStringContent)}parseMultiEnd(){return this.char===CHAR_QUOT?this.next(this.parseMultiEnd2):(this.state.buf+='"',this.goto(this.parseMultiStringContent))}parseMultiEnd2(){return this.char===CHAR_QUOT?this.return():(this.state.buf+='""',this.goto(this.parseMultiStringContent))}parseMultiEscape(){return this.char===CTRL_M||this.char===CTRL_J?this.next(this.parseMultiTrim):this.char===CHAR_SP||this.char===CTRL_I?this.next(this.parsePreMultiTrim):this.goto(this.parseEscape)}parsePreMultiTrim(){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===CTRL_M||this.char===CTRL_J)return this.next(this.parseMultiTrim);throw this.error(new TomlError("Can't escape whitespace"))}parseMultiTrim(){return this.char===CTRL_J||this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M?null:this.returnNow()}parseEscape(){if(this.char in escapes)return this.return(escapes[this.char]);if(this.char===CHAR_u)return this.call(this.parseSmallUnicode,this.parseUnicodeReturn);if(this.char===CHAR_U)return this.call(this.parseLargeUnicode,this.parseUnicodeReturn);throw this.error(new TomlError("Unknown escape character: "+this.char))}parseUnicodeReturn(s){try{let a=parseInt(s,16);if(a>=SURROGATE_FIRST&&a<=SURROGATE_LAST)throw this.error(new TomlError("Invalid unicode, character in range 0xD800 - 0xDFFF is reserved"));return this.returnNow(String.fromCodePoint(a))}catch(a){throw this.error(TomlError.wrap(a))}}parseSmallUnicode(){if(isHexit(this.char)){if(this.consume(),this.state.buf.length>=4)return this.return()}else throw this.error(new TomlError("Invalid character in unicode sequence, expected hex"))}parseLargeUnicode(){if(isHexit(this.char)){if(this.consume(),this.state.buf.length>=8)return this.return()}else throw this.error(new TomlError("Invalid character in unicode sequence, expected hex"))}parseNumberSign(){return this.consume(),this.next(this.parseMaybeSignedInfOrNan)}parseMaybeSignedInfOrNan(){return this.char===CHAR_i?this.next(this.parseInf):this.char===CHAR_n?this.next(this.parseNan):this.callNow(this.parseNoUnder,this.parseNumberIntegerStart)}parseNumberIntegerStart(){return this.char===CHAR_0?(this.consume(),this.next(this.parseNumberIntegerExponentOrDecimal)):this.goto(this.parseNumberInteger)}parseNumberIntegerExponentOrDecimal(){return this.char===CHAR_PERIOD?(this.consume(),this.call(this.parseNoUnder,this.parseNumberFloat)):this.char===CHAR_E||this.char===CHAR_e?(this.consume(),this.next(this.parseNumberExponentSign)):this.returnNow(Integer(this.state.buf))}parseNumberInteger(){if(isDigit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnder);if(this.char===CHAR_E||this.char===CHAR_e)return this.consume(),this.next(this.parseNumberExponentSign);if(this.char===CHAR_PERIOD)return this.consume(),this.call(this.parseNoUnder,this.parseNumberFloat);{let s=Integer(this.state.buf);if(s.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(s)}}}parseNoUnder(){if(this.char===CHAR_LOWBAR||this.char===CHAR_PERIOD||this.char===CHAR_E||this.char===CHAR_e)throw this.error(new TomlError("Unexpected character, expected digit"));if(this.atEndOfWord())throw this.error(new TomlError("Incomplete number"));return this.returnNow()}parseNoUnderHexOctBinLiteral(){if(this.char===CHAR_LOWBAR||this.char===CHAR_PERIOD)throw this.error(new TomlError("Unexpected character, expected digit"));if(this.atEndOfWord())throw this.error(new TomlError("Incomplete number"));return this.returnNow()}parseNumberFloat(){if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnder,this.parseNumberFloat);if(isDigit(this.char))this.consume();else return this.char===CHAR_E||this.char===CHAR_e?(this.consume(),this.next(this.parseNumberExponentSign)):this.returnNow(Float(this.state.buf))}parseNumberExponentSign(){if(isDigit(this.char))return this.goto(this.parseNumberExponent);if(this.char===CHAR_HYPHEN||this.char===CHAR_PLUS)this.consume(),this.call(this.parseNoUnder,this.parseNumberExponent);else throw this.error(new TomlError("Unexpected character, expected -, + or digit"))}parseNumberExponent(){if(isDigit(this.char))this.consume();else return this.char===CHAR_LOWBAR?this.call(this.parseNoUnder):this.returnNow(Float(this.state.buf))}parseNumberOrDateTime(){return this.char===CHAR_0?(this.consume(),this.next(this.parseNumberBaseOrDateTime)):this.goto(this.parseNumberOrDateTimeOnly)}parseNumberOrDateTimeOnly(){if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnder,this.parseNumberInteger);if(isDigit(this.char))this.consume(),this.state.buf.length>4&&this.next(this.parseNumberInteger);else return this.char===CHAR_E||this.char===CHAR_e?(this.consume(),this.next(this.parseNumberExponentSign)):this.char===CHAR_PERIOD?(this.consume(),this.call(this.parseNoUnder,this.parseNumberFloat)):this.char===CHAR_HYPHEN?this.goto(this.parseDateTime):this.char===CHAR_COLON?this.goto(this.parseOnlyTimeHour):this.returnNow(Integer(this.state.buf))}parseDateTimeOnly(){if(this.state.buf.length<4){if(isDigit(this.char))return this.consume();if(this.char===CHAR_COLON)return this.goto(this.parseOnlyTimeHour);throw this.error(new TomlError("Expected digit while parsing year part of a date"))}else{if(this.char===CHAR_HYPHEN)return this.goto(this.parseDateTime);throw this.error(new TomlError("Expected hyphen (-) while parsing year part of date"))}}parseNumberBaseOrDateTime(){return this.char===CHAR_b?(this.consume(),this.call(this.parseNoUnderHexOctBinLiteral,this.parseIntegerBin)):this.char===CHAR_o?(this.consume(),this.call(this.parseNoUnderHexOctBinLiteral,this.parseIntegerOct)):this.char===CHAR_x?(this.consume(),this.call(this.parseNoUnderHexOctBinLiteral,this.parseIntegerHex)):this.char===CHAR_PERIOD?this.goto(this.parseNumberInteger):isDigit(this.char)?this.goto(this.parseDateTimeOnly):this.returnNow(Integer(this.state.buf))}parseIntegerHex(){if(isHexit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnderHexOctBinLiteral);{let s=Integer(this.state.buf);if(s.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(s)}}}parseIntegerOct(){if(isOctit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnderHexOctBinLiteral);{let s=Integer(this.state.buf);if(s.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(s)}}}parseIntegerBin(){if(isBit(this.char))this.consume();else{if(this.char===CHAR_LOWBAR)return this.call(this.parseNoUnderHexOctBinLiteral);{let s=Integer(this.state.buf);if(s.isNaN())throw this.error(new TomlError("Invalid number"));return this.returnNow(s)}}}parseDateTime(){if(this.state.buf.length<4)throw this.error(new TomlError("Years less than 1000 must be zero padded to four characters"));return this.state.result=this.state.buf,this.state.buf="",this.next(this.parseDateMonth)}parseDateMonth(){if(this.char===CHAR_HYPHEN){if(this.state.buf.length<2)throw this.error(new TomlError("Months less than 10 must be zero padded to two characters"));return this.state.result+="-"+this.state.buf,this.state.buf="",this.next(this.parseDateDay)}else if(isDigit(this.char))this.consume();else throw this.error(new TomlError("Incomplete datetime"))}parseDateDay(){if(this.char===CHAR_T||this.char===CHAR_SP){if(this.state.buf.length<2)throw this.error(new TomlError("Days less than 10 must be zero padded to two characters"));return this.state.result+="-"+this.state.buf,this.state.buf="",this.next(this.parseStartTimeHour)}else{if(this.atEndOfWord())return this.returnNow(createDate(this.state.result+"-"+this.state.buf));if(isDigit(this.char))this.consume();else throw this.error(new TomlError("Incomplete datetime"))}}parseStartTimeHour(){return this.atEndOfWord()?this.returnNow(createDate(this.state.result)):this.goto(this.parseTimeHour)}parseTimeHour(){if(this.char===CHAR_COLON){if(this.state.buf.length<2)throw this.error(new TomlError("Hours less than 10 must be zero padded to two characters"));return this.state.result+="T"+this.state.buf,this.state.buf="",this.next(this.parseTimeMin)}else if(isDigit(this.char))this.consume();else throw this.error(new TomlError("Incomplete datetime"))}parseTimeMin(){if(this.state.buf.length<2&&isDigit(this.char))this.consume();else{if(this.state.buf.length===2&&this.char===CHAR_COLON)return this.state.result+=":"+this.state.buf,this.state.buf="",this.next(this.parseTimeSec);throw this.error(new TomlError("Incomplete datetime"))}}parseTimeSec(){if(isDigit(this.char)){if(this.consume(),this.state.buf.length===2)return this.state.result+=":"+this.state.buf,this.state.buf="",this.next(this.parseTimeZoneOrFraction)}else throw this.error(new TomlError("Incomplete datetime"))}parseOnlyTimeHour(){if(this.char===CHAR_COLON){if(this.state.buf.length<2)throw this.error(new TomlError("Hours less than 10 must be zero padded to two characters"));return this.state.result=this.state.buf,this.state.buf="",this.next(this.parseOnlyTimeMin)}else throw this.error(new TomlError("Incomplete time"))}parseOnlyTimeMin(){if(this.state.buf.length<2&&isDigit(this.char))this.consume();else{if(this.state.buf.length===2&&this.char===CHAR_COLON)return this.state.result+=":"+this.state.buf,this.state.buf="",this.next(this.parseOnlyTimeSec);throw this.error(new TomlError("Incomplete time"))}}parseOnlyTimeSec(){if(isDigit(this.char)){if(this.consume(),this.state.buf.length===2)return this.next(this.parseOnlyTimeFractionMaybe)}else throw this.error(new TomlError("Incomplete time"))}parseOnlyTimeFractionMaybe(){if(this.state.result+=":"+this.state.buf,this.char===CHAR_PERIOD)this.state.buf="",this.next(this.parseOnlyTimeFraction);else return this.return(createTime(this.state.result))}parseOnlyTimeFraction(){if(isDigit(this.char))this.consume();else if(this.atEndOfWord()){if(this.state.buf.length===0)throw this.error(new TomlError("Expected digit in milliseconds"));return this.returnNow(createTime(this.state.result+"."+this.state.buf))}else throw this.error(new TomlError("Unexpected character in datetime, expected period (.), minus (-), plus (+) or Z"))}parseTimeZoneOrFraction(){if(this.char===CHAR_PERIOD)this.consume(),this.next(this.parseDateTimeFraction);else if(this.char===CHAR_HYPHEN||this.char===CHAR_PLUS)this.consume(),this.next(this.parseTimeZoneHour);else{if(this.char===CHAR_Z)return this.consume(),this.return(createDateTime(this.state.result+this.state.buf));if(this.atEndOfWord())return this.returnNow(createDateTimeFloat(this.state.result+this.state.buf));throw this.error(new TomlError("Unexpected character in datetime, expected period (.), minus (-), plus (+) or Z"))}}parseDateTimeFraction(){if(isDigit(this.char))this.consume();else{if(this.state.buf.length===1)throw this.error(new TomlError("Expected digit in milliseconds"));if(this.char===CHAR_HYPHEN||this.char===CHAR_PLUS)this.consume(),this.next(this.parseTimeZoneHour);else{if(this.char===CHAR_Z)return this.consume(),this.return(createDateTime(this.state.result+this.state.buf));if(this.atEndOfWord())return this.returnNow(createDateTimeFloat(this.state.result+this.state.buf));throw this.error(new TomlError("Unexpected character in datetime, expected period (.), minus (-), plus (+) or Z"))}}}parseTimeZoneHour(){if(isDigit(this.char)){if(this.consume(),/\d\d$/.test(this.state.buf))return this.next(this.parseTimeZoneSep)}else throw this.error(new TomlError("Unexpected character in datetime, expected digit"))}parseTimeZoneSep(){if(this.char===CHAR_COLON)this.consume(),this.next(this.parseTimeZoneMin);else throw this.error(new TomlError("Unexpected character in datetime, expected colon"))}parseTimeZoneMin(){if(isDigit(this.char)){if(this.consume(),/\d\d$/.test(this.state.buf))return this.return(createDateTime(this.state.result+this.state.buf))}else throw this.error(new TomlError("Unexpected character in datetime, expected digit"))}parseBoolean(){if(this.char===CHAR_t)return this.consume(),this.next(this.parseTrue_r);if(this.char===CHAR_f)return this.consume(),this.next(this.parseFalse_a)}parseTrue_r(){if(this.char===CHAR_r)return this.consume(),this.next(this.parseTrue_u);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseTrue_u(){if(this.char===CHAR_u)return this.consume(),this.next(this.parseTrue_e);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseTrue_e(){if(this.char===CHAR_e)return this.return(!0);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_a(){if(this.char===CHAR_a)return this.consume(),this.next(this.parseFalse_l);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_l(){if(this.char===CHAR_l)return this.consume(),this.next(this.parseFalse_s);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_s(){if(this.char===CHAR_s)return this.consume(),this.next(this.parseFalse_e);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseFalse_e(){if(this.char===CHAR_e)return this.return(!1);throw this.error(new TomlError("Invalid boolean, expected true or false"))}parseInlineList(){if(this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M||this.char===CTRL_J)return null;if(this.char===e.END)throw this.error(new TomlError("Unterminated inline array"));return this.char===CHAR_NUM?this.call(this.parseComment):this.char===CHAR_RSQB?this.return(this.state.resultArr||InlineList()):this.callNow(this.parseValue,this.recordInlineListValue)}recordInlineListValue(s){if(this.state.resultArr){let a=this.state.resultArr[_contentType],o=tomlType(s);if(a!==o)throw this.error(new TomlError(`Inline lists must be a single type, not a mix of ${a} and ${o}`))}else this.state.resultArr=InlineList(tomlType(s));return isFloat(s)||isInteger(s)?this.state.resultArr.push(s.valueOf()):this.state.resultArr.push(s),this.goto(this.parseInlineListNext)}parseInlineListNext(){if(this.char===CHAR_SP||this.char===CTRL_I||this.char===CTRL_M||this.char===CTRL_J)return null;if(this.char===CHAR_NUM)return this.call(this.parseComment);if(this.char===CHAR_COMMA)return this.next(this.parseInlineList);if(this.char===CHAR_RSQB)return this.goto(this.parseInlineList);throw this.error(new TomlError("Invalid character, expected whitespace, comma (,) or close bracket (])"))}parseInlineTable(){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===e.END||this.char===CHAR_NUM||this.char===CTRL_J||this.char===CTRL_M)throw this.error(new TomlError("Unterminated inline array"));return this.char===CHAR_RCUB?this.return(this.state.resultTable||InlineTable()):(this.state.resultTable||(this.state.resultTable=InlineTable()),this.callNow(this.parseAssign,this.recordInlineTableValue))}recordInlineTableValue(s){let a=this.state.resultTable,o=s.key.pop();for(let g of s.key){if(hasKey(a,g)&&(!isTable(a[g])||a[g][_declared]))throw this.error(new TomlError("Can't redefine existing key"));a=a[g]=a[g]||Table()}if(hasKey(a,o))throw this.error(new TomlError("Can't redefine existing key"));return isInteger(s.value)||isFloat(s.value)?a[o]=s.value.valueOf():a[o]=s.value,this.goto(this.parseInlineTableNext)}parseInlineTableNext(){if(this.char===CHAR_SP||this.char===CTRL_I)return null;if(this.char===e.END||this.char===CHAR_NUM||this.char===CTRL_J||this.char===CTRL_M)throw this.error(new TomlError("Unterminated inline array"));if(this.char===CHAR_COMMA)return this.next(this.parseInlineTable);if(this.char===CHAR_RCUB)return this.goto(this.parseInlineTable);throw this.error(new TomlError("Invalid character, expected whitespace, comma (,) or close bracket (])"))}}return t}});var Omt=z((bbl,Agi)=>{"use strict";Agi.exports=Hya;function Hya(e,t){if(e.pos==null||e.line==null)return e;let r=e.message;if(r+=` at row ${e.line+1}, col ${e.col+1}, pos ${e.pos}: `,t&&t.split){let s=t.split(/\n/),a=String(Math.min(s.length,e.line+3)).length,o=" ";for(;o.length "+s[g]+` `,r+=o+" ";for(let f=0;f{"use strict";sgi.exports=Dya;var Nya=Lmt(),Rya=Vmt();function Dya(e){global.Buffer&&global.Buffer.isBuffer(e)&&(e=e.toString("utf8"));let t=new Nya;try{return t.parse(e),t.finish()}catch(r){throw Rya(r,e)}}});var lgi=z((rbl,cgi)=>{"use strict";cgi.exports=kya;var xya=Lmt(),agi=Vmt();function kya(e,t){t||(t={});let r=0,s=t.blocksize||40960,a=new xya;return new Promise((g,p)=>{setImmediate(o,r,s,g,p)});function o(g,p,f,m){if(g>=e.length)try{return f(a.finish())}catch(y){return m(agi(y,e))}try{a.parse(e.slice(g,g+p)),setImmediate(o,g+p,p,f,m)}catch(y){m(agi(y,e))}}}});var Agi=z((nbl,ggi)=>{"use strict";ggi.exports=Fya;var Gya=Dt("stream"),ugi=Lmt();function Fya(e){return e?Zya(e):Lya(e)}function Zya(e){let t=new ugi;return e.setEncoding("utf8"),new Promise((r,s)=>{let a,o=!1,g=!1;function p(){if(o=!0,!a)try{r(t.finish())}catch(y){s(y)}}function f(y){g=!0,s(y)}e.once("end",p),e.once("error",f),m();function m(){a=!0;let y;for(;(y=e.read())!==null;)try{t.parse(y)}catch(B){return f(B)}if(a=!1,o)return p();g||e.once("readable",m)}})}function Lya(){let e=new ugi;return new Gya.Transform({objectMode:!0,transform(t,r,s){try{e.parse(t.toString(r))}catch(a){this.emit("error",a)}s()},flush(t){try{this.push(e.finish())}catch(r){this.emit("error",r)}t()}})}});var dgi=z((ibl,rHe)=>{"use strict";rHe.exports=ogi();rHe.exports.async=lgi();rHe.exports.stream=Agi();rHe.exports.prettyError=Vmt()});var ygi=z((sbl,efr)=>{"use strict";efr.exports=Vya;efr.exports.value=$pr;function Vya(e){if(e===null)throw Zfe("null");if(e===void 0)throw Zfe("undefined");if(typeof e!="object")throw Zfe(typeof e);if(typeof e.toJSON=="function"&&(e=e.toJSON()),e==null)return null;let t=d9(e);if(t!=="table")throw Zfe(t);return qpr("","",e)}function Zfe(e){return new Error("Can only stringify objects, not "+e)}function Wya(){return new Error("Array values can't have mixed types")}function pgi(e){return Object.keys(e).filter(t=>fgi(e[t]))}function Pya(e){return Object.keys(e).filter(t=>!fgi(e[t]))}function Wmt(e){let t=Array.isArray(e)?[]:Object.prototype.hasOwnProperty.call(e,"__proto__")?{["__proto__"]:void 0}:{};for(let r of Object.keys(e))e[r]&&typeof e[r].toJSON=="function"&&!("toISOString"in e[r])?t[r]=e[r].toJSON():t[r]=e[r];return t}function qpr(e,t,r){r=Wmt(r);var s,a;s=pgi(r),a=Pya(r);var o=[],g=t||"";s.forEach(f=>{var m=d9(r[f]);m!=="undefined"&&m!=="null"&&o.push(g+Pmt(f)+" = "+mgi(r[f],!0))}),o.length>0&&o.push("");var p=e&&s.length>0?t+" ":"";return a.forEach(f=>{o.push(zya(e,p,f,r[f]))}),o.join(` -`)}function fgi(e){switch(d9(e)){case"undefined":case"null":case"integer":case"nan":case"float":case"boolean":case"string":case"datetime":return!0;case"array":return e.length===0||d9(e[0])!=="table";case"table":return Object.keys(e).length===0;default:return!1}}function d9(e){return e===void 0?"undefined":e===null?"null":typeof e=="bigint"||Number.isInteger(e)&&!Object.is(e,-0)?"integer":typeof e=="number"?"float":typeof e=="boolean"?"boolean":typeof e=="string"?"string":"toISOString"in e?isNaN(e)?"undefined":"datetime":Array.isArray(e)?"array":"table"}function Pmt(e){var t=String(e);return/^[-A-Za-z0-9_]+$/.test(t)?t:Igi(t)}function Igi(e){return'"'+Cgi(e).replace(/"/g,'\\"')+'"'}function Oya(e){return"'"+e+"'"}function Mya(e,t){for(;t.length"\\u"+Mya(4,t.codePointAt(0).toString(16)))}function Qya(e){let t=e.split(/\n/).map(r=>Cgi(r).replace(/"(?="")/g,'\\"')).join(` +`,e}});var pgi=z((Ebl,dgi)=>{"use strict";dgi.exports=Jya;var Yya=Pmt(),Xya=Omt();function Jya(e){global.Buffer&&global.Buffer.isBuffer(e)&&(e=e.toString("utf8"));let t=new Yya;try{return t.parse(e),t.finish()}catch(r){throw Xya(r,e)}}});var Cgi=z((Bbl,Igi)=>{"use strict";Igi.exports=Kya;var Uya=Pmt(),fgi=Omt();function Kya(e,t){t||(t={});let r=0,s=t.blocksize||40960,a=new Uya;return new Promise((g,p)=>{setImmediate(o,r,s,g,p)});function o(g,p,f,m){if(g>=e.length)try{return f(a.finish())}catch(y){return m(fgi(y,e))}try{a.parse(e.slice(g,g+p)),setImmediate(o,g+p,p,f,m)}catch(y){m(fgi(y,e))}}}});var _gi=z((vbl,hgi)=>{"use strict";hgi.exports=zya;var jya=xt("stream"),mgi=Pmt();function zya(e){return e?qya(e):$ya(e)}function qya(e){let t=new mgi;return e.setEncoding("utf8"),new Promise((r,s)=>{let a,o=!1,g=!1;function p(){if(o=!0,!a)try{r(t.finish())}catch(y){s(y)}}function f(y){g=!0,s(y)}e.once("end",p),e.once("error",f),m();function m(){a=!0;let y;for(;(y=e.read())!==null;)try{t.parse(y)}catch(B){return f(B)}if(a=!1,o)return p();g||e.once("readable",m)}})}function $ya(){let e=new mgi;return new jya.Transform({objectMode:!0,transform(t,r,s){try{e.parse(t.toString(r))}catch(a){this.emit("error",a)}s()},flush(t){try{this.push(e.finish())}catch(r){this.emit("error",r)}t()}})}});var ygi=z((Sbl,iHe)=>{"use strict";iHe.exports=pgi();iHe.exports.async=Cgi();iHe.exports.stream=_gi();iHe.exports.prettyError=Omt()});var Ngi=z((wbl,sfr)=>{"use strict";sfr.exports=eba;sfr.exports.value=ifr;function eba(e){if(e===null)throw Qfe("null");if(e===void 0)throw Qfe("undefined");if(typeof e!="object")throw Qfe(typeof e);if(typeof e.toJSON=="function"&&(e=e.toJSON()),e==null)return null;let t=p9(e);if(t!=="table")throw Qfe(t);return nfr("","",e)}function Qfe(e){return new Error("Can only stringify objects, not "+e)}function tba(){return new Error("Array values can't have mixed types")}function bgi(e){return Object.keys(e).filter(t=>Egi(e[t]))}function rba(e){return Object.keys(e).filter(t=>!Egi(e[t]))}function Qmt(e){let t=Array.isArray(e)?[]:Object.prototype.hasOwnProperty.call(e,"__proto__")?{["__proto__"]:void 0}:{};for(let r of Object.keys(e))e[r]&&typeof e[r].toJSON=="function"&&!("toISOString"in e[r])?t[r]=e[r].toJSON():t[r]=e[r];return t}function nfr(e,t,r){r=Qmt(r);var s,a;s=bgi(r),a=rba(r);var o=[],g=t||"";s.forEach(f=>{var m=p9(r[f]);m!=="undefined"&&m!=="null"&&o.push(g+Mmt(f)+" = "+Sgi(r[f],!0))}),o.length>0&&o.push("");var p=e&&s.length>0?t+" ":"";return a.forEach(f=>{o.push(dba(e,p,f,r[f]))}),o.join(` +`)}function Egi(e){switch(p9(e)){case"undefined":case"null":case"integer":case"nan":case"float":case"boolean":case"string":case"datetime":return!0;case"array":return e.length===0||p9(e[0])!=="table";case"table":return Object.keys(e).length===0;default:return!1}}function p9(e){return e===void 0?"undefined":e===null?"null":typeof e=="bigint"||Number.isInteger(e)&&!Object.is(e,-0)?"integer":typeof e=="number"?"float":typeof e=="boolean"?"boolean":typeof e=="string"?"string":"toISOString"in e?isNaN(e)?"undefined":"datetime":Array.isArray(e)?"array":"table"}function Mmt(e){var t=String(e);return/^[-A-Za-z0-9_]+$/.test(t)?t:Bgi(t)}function Bgi(e){return'"'+vgi(e).replace(/"/g,'\\"')+'"'}function nba(e){return"'"+e+"'"}function iba(e,t){for(;t.length"\\u"+iba(4,t.codePointAt(0).toString(16)))}function sba(e){let t=e.split(/\n/).map(r=>vgi(r).replace(/"(?="")/g,'\\"')).join(` `);return t.slice(-1)==='"'&&(t+=`\\ `),`""" -`+t+'"""'}function mgi(e,t){let r=d9(e);return r==="string"&&(t&&/\n/.test(e)?r="string-multiline":!/[\b\t\n\f\r']/.test(e)&&/"/.test(e)&&(r="string-literal")),$pr(e,r)}function $pr(e,t){switch(t||(t=d9(e)),t){case"string-multiline":return Qya(e);case"string":return Igi(e);case"string-literal":return Oya(e);case"integer":return hgi(e);case"float":return Yya(e);case"boolean":return Hya(e);case"datetime":return Xya(e);case"array":return Kya(e.filter(r=>d9(r)!=="null"&&d9(r)!=="undefined"&&d9(r)!=="nan"));case"table":return jya(e);default:throw Zfe(t)}}function hgi(e){return String(e).replace(/\B(?=(\d{3})+(?!\d))/g,"_")}function Yya(e){if(e===1/0)return"inf";if(e===-1/0)return"-inf";if(Object.is(e,NaN))return"nan";if(Object.is(e,-0))return"-0.0";var t=String(e).split("."),r=t[0],s=t[1]||0;return hgi(r)+"."+s}function Hya(e){return String(e)}function Xya(e){return e.toISOString()}function Jya(e){return e==="float"||e==="integer"}function Uya(e){var t=d9(e[0]);return e.every(r=>d9(r)===t)?t:e.every(r=>Jya(d9(r)))?"float":"mixed"}function _gi(e){let t=Uya(e);if(t==="mixed")throw Wya();return t}function Kya(e){e=Wmt(e);let t=_gi(e);var r="[",s=e.map(a=>$pr(a,t));return s.join(", ").length>60||/\n/.test(s)?r+=` +`+t+'"""'}function Sgi(e,t){let r=p9(e);return r==="string"&&(t&&/\n/.test(e)?r="string-multiline":!/[\b\t\n\f\r']/.test(e)&&/"/.test(e)&&(r="string-literal")),ifr(e,r)}function ifr(e,t){switch(t||(t=p9(e)),t){case"string-multiline":return sba(e);case"string":return Bgi(e);case"string-literal":return nba(e);case"integer":return wgi(e);case"float":return oba(e);case"boolean":return aba(e);case"datetime":return cba(e);case"array":return gba(e.filter(r=>p9(r)!=="null"&&p9(r)!=="undefined"&&p9(r)!=="nan"));case"table":return Aba(e);default:throw Qfe(t)}}function wgi(e){return String(e).replace(/\B(?=(\d{3})+(?!\d))/g,"_")}function oba(e){if(e===1/0)return"inf";if(e===-1/0)return"-inf";if(Object.is(e,NaN))return"nan";if(Object.is(e,-0))return"-0.0";var t=String(e).split("."),r=t[0],s=t[1]||0;return wgi(r)+"."+s}function aba(e){return String(e)}function cba(e){return e.toISOString()}function lba(e){return e==="float"||e==="integer"}function uba(e){var t=p9(e[0]);return e.every(r=>p9(r)===t)?t:e.every(r=>lba(p9(r)))?"float":"mixed"}function Tgi(e){let t=uba(e);if(t==="mixed")throw tba();return t}function gba(e){e=Qmt(e);let t=Tgi(e);var r="[",s=e.map(a=>ifr(a,t));return s.join(", ").length>60||/\n/.test(s)?r+=` `+s.join(`, `)+` -`:r+=" "+s.join(", ")+(s.length>0?" ":""),r+"]"}function jya(e){e=Wmt(e);var t=[];return Object.keys(e).forEach(r=>{t.push(Pmt(r)+" = "+mgi(e[r],!1))}),"{ "+t.join(", ")+(t.length>0?" ":"")+"}"}function zya(e,t,r,s){var a=d9(s);if(a==="array")return qya(e,t,r,s);if(a==="table")return $ya(e,t,r,s);throw Zfe(a)}function qya(e,t,r,s){s=Wmt(s),_gi(s);var a=d9(s[0]);if(a!=="table")throw Zfe(a);var o=e+Pmt(r),g="";return s.forEach(p=>{g.length>0&&(g+=` +`:r+=" "+s.join(", ")+(s.length>0?" ":""),r+"]"}function Aba(e){e=Qmt(e);var t=[];return Object.keys(e).forEach(r=>{t.push(Mmt(r)+" = "+Sgi(e[r],!1))}),"{ "+t.join(", ")+(t.length>0?" ":"")+"}"}function dba(e,t,r,s){var a=p9(s);if(a==="array")return pba(e,t,r,s);if(a==="table")return fba(e,t,r,s);throw Qfe(a)}function pba(e,t,r,s){s=Qmt(s),Tgi(s);var a=p9(s[0]);if(a!=="table")throw Qfe(a);var o=e+Mmt(r),g="";return s.forEach(p=>{g.length>0&&(g+=` `),g+=t+"[["+o+`]] -`,g+=qpr(o+".",t,p)}),g}function $ya(e,t,r,s){var a=e+Pmt(r),o="";return pgi(s).length>0&&(o+=t+"["+a+`] -`),o+qpr(a+".",t,s)}});var bgi=z(tfr=>{"use strict";tfr.parse=dgi();tfr.stringify=ygi()});var Mmt=z(rl=>{"use strict";Object.defineProperty(rl,"__esModule",{value:!0});rl.link=rl.trueColorBg=rl.trueColor=rl.ansi256Bg=rl.ansi256=rl.bgLightGray=rl.bgLightCyan=rl.bgLightMagenta=rl.bgLightBlue=rl.bgLightYellow=rl.bgLightGreen=rl.bgLightRed=rl.bgGray=rl.bgWhite=rl.bgCyan=rl.bgMagenta=rl.bgBlue=rl.bgYellow=rl.bgGreen=rl.bgRed=rl.bgBlack=rl.lightCyan=rl.lightMagenta=rl.lightBlue=rl.lightYellow=rl.lightGreen=rl.lightRed=rl.lightGray=rl.gray=rl.white=rl.cyan=rl.magenta=rl.blue=rl.yellow=rl.green=rl.red=rl.black=rl.strikethrough=rl.hidden=rl.inverse=rl.underline=rl.italic=rl.dim=rl.bold=rl.reset=rl.stripColors=rl.options=void 0;var Vfe=!0,PSe=typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{},sHe=0;if(PSe.process&&PSe.process.env&&PSe.process.stdout){let{FORCE_COLOR:e,NODE_DISABLE_COLORS:t,NO_COLOR:r,TERM:s,COLORTERM:a}=PSe.process.env;t||r||e==="0"?Vfe=!1:e==="1"||e==="2"||e==="3"?Vfe=!0:s==="dumb"?Vfe=!1:"CI"in PSe.process.env&&["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE","DRONE"].some(o=>o in PSe.process.env)?Vfe=!0:Vfe=process.stdout.isTTY,Vfe&&(process.platform==="win32"||a&&(a==="truecolor"||a==="24bit")?sHe=3:s&&(s.endsWith("-256color")||s.endsWith("256"))?sHe=2:sHe=1)}rl.options={enabled:Vfe,supportLevel:sHe};function bI(e,t,r=1){let s=`\x1B[${e}m`,a=`\x1B[${t}m`,o=new RegExp(`\\x1b\\[${t}m`,"g");return g=>rl.options.enabled&&rl.options.supportLevel>=r?s+(""+g).replace(o,s)+a:""+g}function Fgi(e,t,r){return e>>4===t>>4&&t>>4===r>>4?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(t/255*5)+Math.round(r/255*5)}function sba(e){return(""+e).replace(/\x1b\[[0-9;]+m/g,"").replace(/\x1b\]8;;.*?\x07(.*?)\x1b\]8;;\x07/g,(t,r)=>r)}rl.stripColors=sba;rl.reset=bI(0,0);rl.bold=bI(1,22);rl.dim=bI(2,22);rl.italic=bI(3,23);rl.underline=bI(4,24);rl.inverse=bI(7,27);rl.hidden=bI(8,28);rl.strikethrough=bI(9,29);rl.black=bI(30,39);rl.red=bI(31,39);rl.green=bI(32,39);rl.yellow=bI(33,39);rl.blue=bI(34,39);rl.magenta=bI(35,39);rl.cyan=bI(36,39);rl.white=bI(97,39);rl.gray=bI(90,39);rl.lightGray=bI(37,39);rl.lightRed=bI(91,39);rl.lightGreen=bI(92,39);rl.lightYellow=bI(93,39);rl.lightBlue=bI(94,39);rl.lightMagenta=bI(95,39);rl.lightCyan=bI(96,39);rl.bgBlack=bI(40,49);rl.bgRed=bI(41,49);rl.bgGreen=bI(42,49);rl.bgYellow=bI(43,49);rl.bgBlue=bI(44,49);rl.bgMagenta=bI(45,49);rl.bgCyan=bI(46,49);rl.bgWhite=bI(107,49);rl.bgGray=bI(100,49);rl.bgLightRed=bI(101,49);rl.bgLightGreen=bI(102,49);rl.bgLightYellow=bI(103,49);rl.bgLightBlue=bI(104,49);rl.bgLightMagenta=bI(105,49);rl.bgLightCyan=bI(106,49);rl.bgLightGray=bI(47,49);var oba=e=>bI("38;5;"+e,0,2);rl.ansi256=oba;var aba=e=>bI("48;5;"+e,0,2);rl.ansi256Bg=aba;var cba=(e,t,r)=>rl.options.supportLevel===2?rl.ansi256(Fgi(e,t,r)):bI(`38;2;${e};${t};${r}`,0,3);rl.trueColor=cba;var lba=(e,t,r)=>rl.options.supportLevel===2?rl.ansi256Bg(Fgi(e,t,r)):bI(`48;2;${e};${t};${r}`,0,3);rl.trueColorBg=lba;var kgi="\x1B]",Ggi="\x07",Omt=";";function uba(e,t){return rl.options.enabled?kgi+"8"+Omt+Omt+t+Ggi+e+kgi+"8"+Omt+Omt+Ggi:`${e} (\u200B${t}\u200B)`}rl.link=uba});var Hmt=z(zI=>{"use strict";var gba=zI&&zI.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Aba=zI&&zI.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Zgi=zI&&zI.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&gba(t,e,r);return Aba(t,e),t};Object.defineProperty(zI,"__esModule",{value:!0});zI.writeTextFile=zI.readTextFile=zI.writeJson=zI.readJson=zI.getNewLineChars=zI.exec=zI.ExecError=zI.timeAgo=zI.prettyTime=zI.findProjectDir=zI.fileExists=zI.JsrPackage=zI.JsrPackageNameError=zI.logDebug=zI.setDebug=zI.DEBUG=void 0;var h5=Zgi(Dt("node:path")),Wfe=Zgi(Dt("node:fs")),dba=Dt("node:child_process");zI.DEBUG=!1;function pba(e){zI.DEBUG=e}zI.setDebug=pba;function Mse(e){zI.DEBUG&&console.log(e)}zI.logDebug=Mse;var fba=/^@([a-z0-9-]+)\/([a-z0-9-]+)(@(.+))?$/,Iba=/^@jsr\/([a-z0-9-]+)__([a-z0-9-]+)(@(.+))?$/,Qmt=class extends Error{};zI.JsrPackageNameError=Qmt;var sfr=class e{scope;name;version;static from(t){let r=t.match(fba);if(r!==null){let a=r[1],o=r[2],g=r[4]??null;return new e(a,o,g)}let s=t.match(Iba);if(s!==null){let a=s[1],o=s[2],g=s[4]??null;return new e(a,o,g)}throw new Qmt(`Invalid jsr package name: A jsr package name must have the format @/, but got "${t}"`)}constructor(t,r,s){this.scope=t,this.name=r,this.version=s}toNpmPackage(){let t=this.version!==null?`@${this.version}`:"";return`@jsr/${this.scope}__${this.name}${t}`}toString(){let t=this.version!==null?`@${this.version}`:"";return`@${this.scope}/${this.name}${t}`}};zI.JsrPackage=sfr;async function oq(e){try{return(await Wfe.promises.stat(e)).isFile()}catch{return!1}}zI.fileExists=oq;async function Lgi(e,t=e,r={projectDir:e,pkgManagerName:null,pkgJsonPath:null,root:null}){if(r.pkgJsonPath===null){let m=h5.join(t,"package.json");await oq(m)&&(Mse(`Found package.json at ${m}`),Mse(`Setting project directory to ${t}`),r.projectDir=t,r.pkgJsonPath=m)}else{let m=h5.join(t,"package.json");if(await oq(m)){let y=await Vgi(m);(Array.isArray(y.workspaces)||await oq(h5.join(t,"pnpm-workspace.yaml")))&&(r.root=t)}}let s=h5.join(t,"package-lock.json");if(await oq(s))return Mse(`Detected npm from lockfile ${s}`),r.pkgManagerName="npm",r;let a=h5.join(t,"bun.lockb");if(await oq(a))return Mse(`Detected bun from lockfile ${a}`),r.pkgManagerName="bun",r;let o=h5.join(t,"bun.lock");if(await oq(o))return Mse(`Detected bun from lockfile ${o}`),r.pkgManagerName="bun",r;let g=h5.join(t,"yarn.lock");if(await oq(g))return Mse(`Detected yarn from lockfile ${g}`),r.pkgManagerName="yarn",r;let p=h5.join(t,"pnpm-lock.yaml");if(await oq(p))return Mse(`Detected pnpm from lockfile ${p}`),r.pkgManagerName="pnpm",r;let f=t;return t=h5.dirname(t),t===f?r:Lgi(e,t,r)}zI.findProjectDir=Lgi;var sv={year:365*24*60*60*1e3,month:30*24*60*60*1e3,week:7*24*60*60*1e3,day:24*60*60*1e3,hour:60*60*1e3,minute:60*1e3,seconds:1e3};function Cba(e){return e>sv.day?Math.floor(e/sv.day)+"d":e>sv.hour?Math.floor(e/sv.hour)+"h":e>sv.minute?Math.floor(e/sv.minute)+"m":e>sv.seconds?Math.floor(e/sv.seconds)+"s":e+"ms"}zI.prettyTime=Cba;function mba(e){if(e>sv.year){let t=Math.floor(e/sv.year);return`${t} year${t>1?"s":""} ago`}else if(e>sv.month){let t=Math.floor(e/sv.month);return`${t} month${t>1?"s":""} ago`}else if(e>sv.week){let t=Math.floor(e/sv.week);return`${t} week${t>1?"s":""} ago`}else if(e>sv.day){let t=Math.floor(e/sv.day);return`${t} day${t>1?"s":""} ago`}else if(e>sv.hour){let t=Math.floor(e/sv.hour);return`${t} hour${t>1?"s":""} ago`}else if(e>sv.minute){let t=Math.floor(e/sv.minute);return`${t} minute${t>1?"s":""} ago`}else if(e>sv.seconds){let t=Math.floor(e/sv.seconds);return`${t} second${t>1?"s":""} ago`}return"just now"}zI.timeAgo=mba;var Ymt=class extends Error{code;constructor(t){super(`Child process exited with: ${t}`),this.code=t}};zI.ExecError=Ymt;async function hba(e,t,r,s,a){let o=(0,dba.spawn)(e,t.map(m=>process.platform==="win32"?`"${m}"`:`'${m}'`),{stdio:a?"pipe":"inherit",cwd:r,shell:!0,env:s}),g="",p="",f="";return a&&(o.stdout?.on("data",m=>{g+=m,p+=m}),o.stderr?.on("data",m=>{g+=m,f+=m})),new Promise((m,y)=>{o.on("exit",B=>{B===0?m({combined:g,stdout:p,stderr:f}):y(new Ymt(B??1))})})}zI.exec=hba;function _ba(e){var t=e.indexOf(` +`,g+=nfr(o+".",t,p)}),g}function fba(e,t,r,s){var a=e+Mmt(r),o="";return bgi(s).length>0&&(o+=t+"["+a+`] +`),o+nfr(a+".",t,s)}});var Rgi=z(ofr=>{"use strict";ofr.parse=ygi();ofr.stringify=Ngi()});var Ymt=z(nl=>{"use strict";Object.defineProperty(nl,"__esModule",{value:!0});nl.link=nl.trueColorBg=nl.trueColor=nl.ansi256Bg=nl.ansi256=nl.bgLightGray=nl.bgLightCyan=nl.bgLightMagenta=nl.bgLightBlue=nl.bgLightYellow=nl.bgLightGreen=nl.bgLightRed=nl.bgGray=nl.bgWhite=nl.bgCyan=nl.bgMagenta=nl.bgBlue=nl.bgYellow=nl.bgGreen=nl.bgRed=nl.bgBlack=nl.lightCyan=nl.lightMagenta=nl.lightBlue=nl.lightYellow=nl.lightGreen=nl.lightRed=nl.lightGray=nl.gray=nl.white=nl.cyan=nl.magenta=nl.blue=nl.yellow=nl.green=nl.red=nl.black=nl.strikethrough=nl.hidden=nl.inverse=nl.underline=nl.italic=nl.dim=nl.bold=nl.reset=nl.stripColors=nl.options=void 0;var Hfe=!0,MSe=typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{},aHe=0;if(MSe.process&&MSe.process.env&&MSe.process.stdout){let{FORCE_COLOR:e,NODE_DISABLE_COLORS:t,NO_COLOR:r,TERM:s,COLORTERM:a}=MSe.process.env;t||r||e==="0"?Hfe=!1:e==="1"||e==="2"||e==="3"?Hfe=!0:s==="dumb"?Hfe=!1:"CI"in MSe.process.env&&["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE","DRONE"].some(o=>o in MSe.process.env)?Hfe=!0:Hfe=process.stdout.isTTY,Hfe&&(process.platform==="win32"||a&&(a==="truecolor"||a==="24bit")?aHe=3:s&&(s.endsWith("-256color")||s.endsWith("256"))?aHe=2:aHe=1)}nl.options={enabled:Hfe,supportLevel:aHe};function EI(e,t,r=1){let s=`\x1B[${e}m`,a=`\x1B[${t}m`,o=new RegExp(`\\x1b\\[${t}m`,"g");return g=>nl.options.enabled&&nl.options.supportLevel>=r?s+(""+g).replace(o,s)+a:""+g}function Mgi(e,t,r){return e>>4===t>>4&&t>>4===r>>4?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(t/255*5)+Math.round(r/255*5)}function yba(e){return(""+e).replace(/\x1b\[[0-9;]+m/g,"").replace(/\x1b\]8;;.*?\x07(.*?)\x1b\]8;;\x07/g,(t,r)=>r)}nl.stripColors=yba;nl.reset=EI(0,0);nl.bold=EI(1,22);nl.dim=EI(2,22);nl.italic=EI(3,23);nl.underline=EI(4,24);nl.inverse=EI(7,27);nl.hidden=EI(8,28);nl.strikethrough=EI(9,29);nl.black=EI(30,39);nl.red=EI(31,39);nl.green=EI(32,39);nl.yellow=EI(33,39);nl.blue=EI(34,39);nl.magenta=EI(35,39);nl.cyan=EI(36,39);nl.white=EI(97,39);nl.gray=EI(90,39);nl.lightGray=EI(37,39);nl.lightRed=EI(91,39);nl.lightGreen=EI(92,39);nl.lightYellow=EI(93,39);nl.lightBlue=EI(94,39);nl.lightMagenta=EI(95,39);nl.lightCyan=EI(96,39);nl.bgBlack=EI(40,49);nl.bgRed=EI(41,49);nl.bgGreen=EI(42,49);nl.bgYellow=EI(43,49);nl.bgBlue=EI(44,49);nl.bgMagenta=EI(45,49);nl.bgCyan=EI(46,49);nl.bgWhite=EI(107,49);nl.bgGray=EI(100,49);nl.bgLightRed=EI(101,49);nl.bgLightGreen=EI(102,49);nl.bgLightYellow=EI(103,49);nl.bgLightBlue=EI(104,49);nl.bgLightMagenta=EI(105,49);nl.bgLightCyan=EI(106,49);nl.bgLightGray=EI(47,49);var bba=e=>EI("38;5;"+e,0,2);nl.ansi256=bba;var Eba=e=>EI("48;5;"+e,0,2);nl.ansi256Bg=Eba;var Bba=(e,t,r)=>nl.options.supportLevel===2?nl.ansi256(Mgi(e,t,r)):EI(`38;2;${e};${t};${r}`,0,3);nl.trueColor=Bba;var vba=(e,t,r)=>nl.options.supportLevel===2?nl.ansi256Bg(Mgi(e,t,r)):EI(`48;2;${e};${t};${r}`,0,3);nl.trueColorBg=vba;var Ogi="\x1B]",Qgi="\x07",Hmt=";";function Sba(e,t){return nl.options.enabled?Ogi+"8"+Hmt+Hmt+t+Qgi+e+Ogi+"8"+Hmt+Hmt+Qgi:`${e} (\u200B${t}\u200B)`}nl.link=Sba});var Umt=z(qI=>{"use strict";var wba=qI&&qI.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Tba=qI&&qI.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Hgi=qI&&qI.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&wba(t,e,r);return Tba(t,e),t};Object.defineProperty(qI,"__esModule",{value:!0});qI.writeTextFile=qI.readTextFile=qI.writeJson=qI.readJson=qI.getNewLineChars=qI.exec=qI.ExecError=qI.timeAgo=qI.prettyTime=qI.findProjectDir=qI.fileExists=qI.JsrPackage=qI.JsrPackageNameError=qI.logDebug=qI.setDebug=qI.DEBUG=void 0;var yY=Hgi(xt("node:path")),Yfe=Hgi(xt("node:fs")),Nba=xt("node:child_process");qI.DEBUG=!1;function Rba(e){qI.DEBUG=e}qI.setDebug=Rba;function Jse(e){qI.DEBUG&&console.log(e)}qI.logDebug=Jse;var Dba=/^@([a-z0-9-]+)\/([a-z0-9-]+)(@(.+))?$/,xba=/^@jsr\/([a-z0-9-]+)__([a-z0-9-]+)(@(.+))?$/,Xmt=class extends Error{};qI.JsrPackageNameError=Xmt;var ufr=class e{scope;name;version;static from(t){let r=t.match(Dba);if(r!==null){let a=r[1],o=r[2],g=r[4]??null;return new e(a,o,g)}let s=t.match(xba);if(s!==null){let a=s[1],o=s[2],g=s[4]??null;return new e(a,o,g)}throw new Xmt(`Invalid jsr package name: A jsr package name must have the format @/, but got "${t}"`)}constructor(t,r,s){this.scope=t,this.name=r,this.version=s}toNpmPackage(){let t=this.version!==null?`@${this.version}`:"";return`@jsr/${this.scope}__${this.name}${t}`}toString(){let t=this.version!==null?`@${this.version}`:"";return`@${this.scope}/${this.name}${t}`}};qI.JsrPackage=ufr;async function aq(e){try{return(await Yfe.promises.stat(e)).isFile()}catch{return!1}}qI.fileExists=aq;async function Ygi(e,t=e,r={projectDir:e,pkgManagerName:null,pkgJsonPath:null,root:null}){if(r.pkgJsonPath===null){let m=yY.join(t,"package.json");await aq(m)&&(Jse(`Found package.json at ${m}`),Jse(`Setting project directory to ${t}`),r.projectDir=t,r.pkgJsonPath=m)}else{let m=yY.join(t,"package.json");if(await aq(m)){let y=await Xgi(m);(Array.isArray(y.workspaces)||await aq(yY.join(t,"pnpm-workspace.yaml")))&&(r.root=t)}}let s=yY.join(t,"package-lock.json");if(await aq(s))return Jse(`Detected npm from lockfile ${s}`),r.pkgManagerName="npm",r;let a=yY.join(t,"bun.lockb");if(await aq(a))return Jse(`Detected bun from lockfile ${a}`),r.pkgManagerName="bun",r;let o=yY.join(t,"bun.lock");if(await aq(o))return Jse(`Detected bun from lockfile ${o}`),r.pkgManagerName="bun",r;let g=yY.join(t,"yarn.lock");if(await aq(g))return Jse(`Detected yarn from lockfile ${g}`),r.pkgManagerName="yarn",r;let p=yY.join(t,"pnpm-lock.yaml");if(await aq(p))return Jse(`Detected pnpm from lockfile ${p}`),r.pkgManagerName="pnpm",r;let f=t;return t=yY.dirname(t),t===f?r:Ygi(e,t,r)}qI.findProjectDir=Ygi;var ov={year:365*24*60*60*1e3,month:30*24*60*60*1e3,week:7*24*60*60*1e3,day:24*60*60*1e3,hour:60*60*1e3,minute:60*1e3,seconds:1e3};function kba(e){return e>ov.day?Math.floor(e/ov.day)+"d":e>ov.hour?Math.floor(e/ov.hour)+"h":e>ov.minute?Math.floor(e/ov.minute)+"m":e>ov.seconds?Math.floor(e/ov.seconds)+"s":e+"ms"}qI.prettyTime=kba;function Gba(e){if(e>ov.year){let t=Math.floor(e/ov.year);return`${t} year${t>1?"s":""} ago`}else if(e>ov.month){let t=Math.floor(e/ov.month);return`${t} month${t>1?"s":""} ago`}else if(e>ov.week){let t=Math.floor(e/ov.week);return`${t} week${t>1?"s":""} ago`}else if(e>ov.day){let t=Math.floor(e/ov.day);return`${t} day${t>1?"s":""} ago`}else if(e>ov.hour){let t=Math.floor(e/ov.hour);return`${t} hour${t>1?"s":""} ago`}else if(e>ov.minute){let t=Math.floor(e/ov.minute);return`${t} minute${t>1?"s":""} ago`}else if(e>ov.seconds){let t=Math.floor(e/ov.seconds);return`${t} second${t>1?"s":""} ago`}return"just now"}qI.timeAgo=Gba;var Jmt=class extends Error{code;constructor(t){super(`Child process exited with: ${t}`),this.code=t}};qI.ExecError=Jmt;async function Fba(e,t,r,s,a){let o=(0,Nba.spawn)(e,t.map(m=>process.platform==="win32"?`"${m}"`:`'${m}'`),{stdio:a?"pipe":"inherit",cwd:r,shell:!0,env:s}),g="",p="",f="";return a&&(o.stdout?.on("data",m=>{g+=m,p+=m}),o.stderr?.on("data",m=>{g+=m,f+=m})),new Promise((m,y)=>{o.on("exit",B=>{B===0?m({combined:g,stdout:p,stderr:f}):y(new Jmt(B??1))})})}qI.exec=Fba;function Zba(e){var t=e.indexOf(` `);return e[t-1]==="\r"?`\r `:` -`}zI.getNewLineChars=_ba;async function Vgi(e){let t=await Wfe.promises.readFile(e,"utf-8");return JSON.parse(t)}zI.readJson=Vgi;async function yba(e,t){try{await Wfe.promises.mkdir(h5.dirname(e),{recursive:!0})}catch{}await Wfe.promises.writeFile(e,JSON.stringify(t,null,2),"utf-8")}zI.writeJson=yba;async function bba(e){return Wfe.promises.readFile(e,"utf-8")}zI.readTextFile=bba;async function Eba(e,t){try{await Wfe.promises.mkdir(h5.dirname(e),{recursive:!0})}catch{}await Wfe.promises.writeFile(e,t,"utf-8")}zI.writeTextFile=Eba});var ofr=z(NM=>{"use strict";Object.defineProperty(NM,"__esModule",{value:!0});NM.getNpmPackageInfo=NM.getLatestPackageVersion=NM.getPackageMeta=NM.JSR_URL=void 0;NM.JSR_URL=process.env.JSR_URL??"https://jsr.io";async function Wgi(e){let t=`${NM.JSR_URL}/@${e.scope}/${e.name}/meta.json`,r=await fetch(t);if(!r.ok)throw await r.body?.cancel(),new Error(`Received ${r.status} from ${t}`);return await r.json()}NM.getPackageMeta=Wgi;async function Bba(e){let t=await Wgi(e),{latest:r}=t;if(r===void 0)throw new Error(`Unable to find latest version of ${e}`);return r}NM.getLatestPackageVersion=Bba;async function vba(e){let t=new URL(`${NM.JSR_URL}/@jsr/${e.scope}__${e.name}`),r=`${t.protocol}//npm.${t.host}${t.pathname}`,s=await fetch(r);if(!s.ok)throw await s.body?.cancel(),new Error(`Received ${s.status} from ${t}`);return await s.json()}NM.getNpmPackageInfo=vba});var cfr=z((Rbl,Pgi)=>{var afr=new Intl.Collator(0,{numeric:1}).compare;Pgi.exports=function(e,t,r){return e=e.split("."),t=t.split("."),afr(e[0],t[0])||afr(e[1],t[1])||(t[2]=t.slice(2).join("."),r=/[.-]/.test(e[2]=e.slice(2).join(".")),r==/[.-]/.test(t[2])?afr(e[2],t[2]):r?-1:1)}});var Mgi=z(Zk=>{"use strict";var Sba=Zk&&Zk.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),wba=Zk&&Zk.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Tba=Zk&&Zk.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Sba(t,e,r);return wba(t,e),t},Nba=Zk&&Zk.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Zk,"__esModule",{value:!0});Zk.getPkgManager=Zk.Bun=Zk.YarnBerry=void 0;var Rba=ofr(),Pfe=Hmt(),Dba=Tba(Mmt()),xba=Nba(cfr());async function p9(e,t,r){return console.log(Dba.dim(`$ ${e} ${t.join(" ")}`)),(0,Pfe.exec)(e,t,r)}function Ogi(e){return e==="dev"?"--save-dev":e==="optional"?"--save-optional":""}function gfr(e){return e==="dev"?"--dev":e==="optional"?"--optional":""}function oHe(e){return e.map(t=>`@${t.scope}/${t.name}@npm:${t.toNpmPackage()}`)}async function kba(e){let r=(await(0,Pfe.exec)("yarn",["--version"],e,void 0,!0)).stdout;return r?r.startsWith("1.")?((0,Pfe.logDebug)("Detected yarn classic from version"),!1):((0,Pfe.logDebug)("Detected yarn berry from version"),!0):((0,Pfe.logDebug)("Unable to detect yarn version, assuming classic"),!1)}var lfr=class{cwd;constructor(t){this.cwd=t}async install(t,r){let s=["install"],a=Ogi(r.mode);a!==""&&s.push(a),s.push(...oHe(t)),await p9("npm",s,this.cwd)}async remove(t){await p9("npm",["remove",...t.map(r=>r.toString())],this.cwd)}async runScript(t){await p9("npm",["run",t],this.cwd)}},Xmt=class{cwd;constructor(t){this.cwd=t}async install(t,r){let s=["add"],a=gfr(r.mode);a!==""&&s.push(a),s.push(...oHe(t)),await p9("yarn",s,this.cwd)}async remove(t){await p9("yarn",["remove",...t.map(r=>r.toString())],this.cwd)}async runScript(t){await p9("yarn",[t],this.cwd)}},Jmt=class extends Xmt{async install(t,r){let s=["add"],a=gfr(r.mode);a!==""&&s.push(a),s.push(...await this.toPackageArgs(t)),await p9("yarn",s,this.cwd)}async setConfigValue(t,r){await p9("yarn",["config","set",t,r],this.cwd)}async toPackageArgs(t){return await Promise.all(t.map(async r=>{r.version??=`^${await(0,Rba.getLatestPackageVersion)(r)}`})),oHe(t)}};Zk.YarnBerry=Jmt;var ufr=class{cwd;constructor(t){this.cwd=t}async install(t,r){let s=["add"],a=Ogi(r.mode);a!==""&&s.push(a),s.push(...oHe(t)),await p9("pnpm",s,this.cwd)}async remove(t){await p9("pnpm",["remove",...t.map(r=>r.toString())],this.cwd)}async runScript(t){await p9("pnpm",[t],this.cwd)}},Umt=class{cwd;constructor(t){this.cwd=t}async install(t,r){let s=["add"],a=gfr(r.mode);a!==""&&s.push(a),s.push(...oHe(t)),await p9("bun",s,this.cwd)}async remove(t){await p9("bun",["remove",...t.map(r=>r.toString())],this.cwd)}async runScript(t){await p9("bun",["run",t],this.cwd)}async isNpmrcSupported(){let r=(await(0,Pfe.exec)("bun",["--version"],this.cwd,void 0,!0)).stdout;return r!=null&&(0,xba.default)(r,"1.1.18")>=0}};Zk.Bun=Umt;function Gba(e){return e.startsWith("pnpm/")?"pnpm":e.startsWith("yarn/")?"yarn":e.startsWith("npm/")?"npm":e.startsWith("bun/")?"bun":null}async function Fba(e,t){let r=process.env.npm_config_user_agent,s=r!==void 0?Gba(r):null,{projectDir:a,pkgManagerName:o,root:g}=await(0,Pfe.findProjectDir)(e),p=g||a,f=t||o||s||"npm",m;return f==="yarn"?m=await kba(a)?new Jmt(a):new Xmt(a):f==="pnpm"?m=new ufr(a):f==="bun"?m=new Umt(a):m=new lfr(a),{root:p,pkgManager:m}}Zk.getPkgManager=Fba});var Ugi=z((kbl,Jgi)=>{var RM=Dt("fs"),Zba=Dt("util"),OSe=Dt("path"),mfr=Dt("events"),Qgi=Dt("zlib"),Xgi=Dt("stream"),Su={LOCHDR:30,LOCSIG:67324752,LOCVER:4,LOCFLG:6,LOCHOW:8,LOCTIM:10,LOCCRC:14,LOCSIZ:18,LOCLEN:22,LOCNAM:26,LOCEXT:28,EXTSIG:134695760,EXTHDR:16,EXTCRC:4,EXTSIZ:8,EXTLEN:12,CENHDR:46,CENSIG:33639248,CENVEM:4,CENVER:6,CENFLG:8,CENHOW:10,CENTIM:12,CENCRC:16,CENSIZ:20,CENLEN:24,CENNAM:28,CENEXT:30,CENCOM:32,CENDSK:34,CENATT:36,CENATX:38,CENOFF:42,ENDHDR:22,ENDSIG:101010256,ENDSIGFIRST:80,ENDSUB:8,ENDTOT:10,ENDSIZ:12,ENDOFF:16,ENDCOM:20,MAXFILECOMMENT:65535,ENDL64HDR:20,ENDL64SIG:117853008,ENDL64SIGFIRST:80,ENDL64OFS:8,END64HDR:56,END64SIG:101075792,END64SIGFIRST:80,END64SUB:24,END64TOT:32,END64SIZ:40,END64OFF:48,STORED:0,SHRUNK:1,REDUCED1:2,REDUCED2:3,REDUCED3:4,REDUCED4:5,IMPLODED:6,DEFLATED:8,ENHANCED_DEFLATED:9,PKWARE:10,BZIP2:12,LZMA:14,IBM_TERSE:18,IBM_LZ77:19,FLG_ENC:0,FLG_COMP1:1,FLG_COMP2:2,FLG_DESC:4,FLG_ENH:8,FLG_STR:16,FLG_LNG:1024,FLG_MSK:4096,FLG_ENTRY_ENC:1,EF_ID:0,EF_SIZE:2,ID_ZIP64:1,ID_AVINFO:7,ID_PFS:8,ID_OS2:9,ID_NTFS:10,ID_OPENVMS:12,ID_UNIX:13,ID_FORK:14,ID_PATCH:15,ID_X509_PKCS7:20,ID_X509_CERTID_F:21,ID_X509_CERTID_C:22,ID_STRONGENC:23,ID_RECORD_MGT:24,ID_X509_PKCS7_RL:25,ID_IBM1:101,ID_IBM2:102,ID_POSZIP:18064,EF_ZIP64_OR_32:4294967295,EF_ZIP64_OR_16:65535},Xse=function(e){let t,r,s,a,o,g,f=this,m=e.storeEntries!==!1?{}:null,y=e.file,B=e.nameEncoding?new TextDecoder(e.nameEncoding):null;v();function v(){e.fd?(t=e.fd,G()):RM.open(y,"r",(Ue,Je)=>{if(Ue)return f.emit("error",Ue);t=Je,G()})}function G(){RM.fstat(t,(Ue,Je)=>{if(Ue)return f.emit("error",Ue);r=Je.size,s=e.chunkSize||Math.round(r/1e3),s=Math.max(Math.min(s,Math.min(128*1024,r)),Math.min(1024,r)),O()})}function T(Ue,Je){if(Ue||!Je)return f.emit("error",Ue||new Error("Archive read error"));let Xe=a.lastPos,ft=Xe-a.win.position,Gt=a.win.buffer,er=a.minPos;for(;--Xe>=er&&--ft>=0;)if(Gt.length-ft>=4&&Gt[ft]===a.firstByte&&Gt.readUInt32LE(ft)===a.sig){a.lastBufferPosition=ft,a.lastBytesRead=Je,a.complete();return}if(Xe===er)return f.emit("error",new Error("Bad archive"));if(a.lastPos=Xe+1,a.chunkSize*=2,Xe<=er)return f.emit("error",new Error("Bad archive"));let Ur=Math.min(a.chunkSize,Xe-er);a.win.expandLeft(Ur,T)}function O(){let Ue=Math.min(Su.ENDHDR+Su.MAXFILECOMMENT,r);a={win:new Kmt(t),totalReadLength:Ue,minPos:r-Ue,lastPos:r,chunkSize:Math.min(1024,s),firstByte:Su.ENDSIGFIRST,sig:Su.ENDSIG,complete:X},a.win.read(r-a.chunkSize,a.chunkSize,T)}function X(){let Ue=a.win.buffer,Je=a.lastBufferPosition;try{o=new Afr,o.read(Ue.slice(Je,Je+Su.ENDHDR)),o.headerOffset=a.win.position+Je,o.commentLength?f.comment=Ue.slice(Je+Su.ENDHDR,Je+Su.ENDHDR+o.commentLength).toString():f.comment=null,f.entriesCount=o.volumeEntries,f.centralDirectory=o,o.volumeEntries===Su.EF_ZIP64_OR_16&&o.totalEntries===Su.EF_ZIP64_OR_16||o.size===Su.EF_ZIP64_OR_32||o.offset===Su.EF_ZIP64_OR_32?U():(a={},ge())}catch(Xe){f.emit("error",Xe)}}function U(){let Ue=Su.ENDL64HDR;a.lastBufferPosition>Ue?(a.lastBufferPosition-=Ue,le()):(a={win:a.win,totalReadLength:Ue,minPos:a.win.position-Ue,lastPos:a.win.position,chunkSize:a.chunkSize,firstByte:Su.ENDL64SIGFIRST,sig:Su.ENDL64SIG,complete:le},a.win.read(a.lastPos-a.chunkSize,a.chunkSize,T))}function le(){let Ue=a.win.buffer,Je=new dfr;Je.read(Ue.slice(a.lastBufferPosition,a.lastBufferPosition+Su.ENDL64HDR));let Xe=r-Je.headerOffset;a={win:a.win,totalReadLength:Xe,minPos:Je.headerOffset,lastPos:a.lastPos,chunkSize:a.chunkSize,firstByte:Su.END64SIGFIRST,sig:Su.END64SIG,complete:ae},a.win.read(r-a.chunkSize,a.chunkSize,T)}function ae(){let Ue=a.win.buffer,Je=new pfr;Je.read(Ue.slice(a.lastBufferPosition,a.lastBufferPosition+Su.END64HDR)),f.centralDirectory.volumeEntries=Je.volumeEntries,f.centralDirectory.totalEntries=Je.totalEntries,f.centralDirectory.size=Je.size,f.centralDirectory.offset=Je.offset,f.entriesCount=Je.volumeEntries,a={},ge()}function ge(){a={win:new Kmt(t),pos:o.offset,chunkSize:s,entriesLeft:o.volumeEntries},a.win.read(a.pos,Math.min(s,r-a.pos),fe)}function fe(Ue,Je){if(Ue||!Je)return f.emit("error",Ue||new Error("Entries read error"));let Xe=a.pos-a.win.position,ft=a.entry,Gt=a.win.buffer,er=Gt.length;try{for(;a.entriesLeft>0;){ft||(ft=new ffr,ft.readHeader(Gt,Xe),ft.headerOffset=a.win.position+Xe,a.entry=ft,a.pos+=Su.CENHDR,Xe+=Su.CENHDR);let Ur=ft.fnameLen+ft.extraLen+ft.comLen,Ot=Ur+(a.entriesLeft>1?Su.CENHDR:0);if(er-Xe{if(Xe)return Je(Xe);let Gt=he(ft),er=new Ifr(t,Gt,ft.compressedSize);if(ft.method!==Su.STORED)if(ft.method===Su.DEFLATED)er=er.pipe(Qgi.createInflateRaw());else return Je(new Error("Unknown compression method: "+ft.method));be(ft)&&(er=er.pipe(new Cfr(er,ft.crc,ft.size))),Je(null,er)},!1)},this.entryDataSync=function(Ue){let Je=null;if(this.openEntry(Ue,(ft,Gt)=>{Je=ft,Ue=Gt},!0),Je)throw Je;let Xe=Buffer.alloc(Ue.compressedSize);if(new Yse(t,Xe,0,Ue.compressedSize,he(Ue),ft=>{Je=ft}).read(!0),Je)throw Je;if(Ue.method!==Su.STORED)if(Ue.method===Su.DEFLATED||Ue.method===Su.ENHANCED_DEFLATED)Xe=Qgi.inflateRawSync(Xe);else throw new Error("Unknown compression method: "+Ue.method);if(Xe.length!==Ue.size)throw new Error("Invalid size");return be(Ue)&&new jmt(Ue.crc,Ue.size).data(Xe),Xe},this.openEntry=function(Ue,Je,Xe){if(typeof Ue=="string"&&(pe(),Ue=m[Ue],!Ue))return Je(new Error("Entry not found"));if(!Ue.isFile)return Je(new Error("Entry is not file"));if(!t)return Je(new Error("Archive closed"));let ft=Buffer.alloc(Su.LOCHDR);new Yse(t,ft,0,ft.length,Ue.offset,Gt=>{if(Gt)return Je(Gt);let er;try{Ue.readDataHeader(ft),Ue.encrypted&&(er=new Error("Entry encrypted"))}catch(Ur){er=Ur}Je(er,Ue)}).read(Xe)};function he(Ue){return Ue.offset+Su.LOCHDR+Ue.fnameLen+Ue.extraLen}function be(Ue){return(Ue.flags&8)!==8}function Te(Ue,Je,Xe){f.stream(Ue,(ft,Gt)=>{if(ft)Xe(ft);else{let er,Ur;Gt.on("error",Ot=>{Ur=Ot,er&&(Gt.unpipe(er),er.close(()=>{Xe(Ot)}))}),RM.open(Je,"w",(Ot,dr)=>{if(Ot)return Xe(Ot);if(Ur){RM.close(t,()=>{Xe(Ur)});return}er=RM.createWriteStream(Je,{fd:dr}),er.on("finish",()=>{f.emit("extract",Ue,Je),Ur||Xe()}),Gt.pipe(er)})}})}function ke(Ue,Je,Xe){if(!Je.length)return Xe();let ft=Je.shift();ft=OSe.join(Ue,OSe.join(...ft)),RM.mkdir(ft,{recursive:!0},Gt=>{if(Gt&&Gt.code!=="EEXIST")return Xe(Gt);ke(Ue,Je,Xe)})}function x(Ue,Je,Xe,ft,Gt){if(!Xe.length)return ft(null,Gt);let er=Xe.shift(),Ur=OSe.join(Ue,er.name.replace(Je,""));Te(er,Ur,Ot=>{if(Ot)return ft(Ot,Gt);x(Ue,Je,Xe,ft,Gt+1)})}this.extract=function(Ue,Je,Xe){let ft=Ue||"";if(typeof Ue=="string"&&(Ue=this.entry(Ue),Ue?ft=Ue.name:ft.length&&ft[ft.length-1]!=="/"&&(ft+="/")),!Ue||Ue.isDirectory){let Gt=[],er=[],Ur={};for(let Ot in m)if(Object.prototype.hasOwnProperty.call(m,Ot)&&Ot.lastIndexOf(ft,0)===0){let dr=Ot.replace(ft,""),Ar=m[Ot];if(Ar.isFile&&(Gt.push(Ar),dr=OSe.dirname(dr)),dr&&!Ur[dr]&&dr!=="."){Ur[dr]=!0;let or=dr.split("/").filter(Fr=>Fr);for(or.length&&er.push(or);or.length>1;){or=or.slice(0,or.length-1);let Fr=or.join("/");if(Ur[Fr]||Fr===".")break;Ur[Fr]=!0,er.push(or)}}}er.sort((Ot,dr)=>Ot.length-dr.length),er.length?ke(Je,er,Ot=>{Ot?Xe(Ot):x(Je,ft,Gt,Xe,0)}):x(Je,ft,Gt,Xe,0)}else RM.stat(Je,(Gt,er)=>{er&&er.isDirectory()?Te(Ue,OSe.join(Je,OSe.basename(Ue.name)),Xe):Te(Ue,Je,Xe)})},this.close=function(Ue){g||!t?(g=!0,Ue&&Ue()):(g=!0,RM.close(t,Je=>{t=null,Ue&&Ue(Je)}))};let et=mfr.EventEmitter.prototype.emit;this.emit=function(...Ue){if(!g)return et.call(this,...Ue)}};Xse.setFs=function(e){RM=e};Xse.debugLog=(...e)=>{Xse.debug&&console.log(...e)};Zba.inherits(Xse,mfr.EventEmitter);var Qse=Symbol("zip");Xse.async=class extends mfr.EventEmitter{constructor(t){super();let r=new Xse(t);r.on("entry",s=>this.emit("entry",s)),r.on("extract",(s,a)=>this.emit("extract",s,a)),this[Qse]=new Promise((s,a)=>{r.on("ready",()=>{r.removeListener("error",a),s(r)}),r.on("error",a)})}get entriesCount(){return this[Qse].then(t=>t.entriesCount)}get comment(){return this[Qse].then(t=>t.comment)}async entry(t){return(await this[Qse]).entry(t)}async entries(){return(await this[Qse]).entries()}async stream(t){let r=await this[Qse];return new Promise((s,a)=>{r.stream(t,(o,g)=>{o?a(o):s(g)})})}async entryData(t){let r=await this.stream(t);return new Promise((s,a)=>{let o=[];r.on("data",g=>o.push(g)),r.on("end",()=>{s(Buffer.concat(o))}),r.on("error",g=>{r.removeAllListeners("end"),a(g)})})}async extract(t,r){let s=await this[Qse];return new Promise((a,o)=>{s.extract(t,r,(g,p)=>{g?o(g):a(p)})})}async close(){let t=await this[Qse];return new Promise((r,s)=>{t.close(a=>{a?s(a):r()})})}};var Afr=class{read(t){if(t.length!==Su.ENDHDR||t.readUInt32LE(0)!==Su.ENDSIG)throw new Error("Invalid central directory");this.volumeEntries=t.readUInt16LE(Su.ENDSUB),this.totalEntries=t.readUInt16LE(Su.ENDTOT),this.size=t.readUInt32LE(Su.ENDSIZ),this.offset=t.readUInt32LE(Su.ENDOFF),this.commentLength=t.readUInt16LE(Su.ENDCOM)}},dfr=class{read(t){if(t.length!==Su.ENDL64HDR||t.readUInt32LE(0)!==Su.ENDL64SIG)throw new Error("Invalid zip64 central directory locator");this.headerOffset=Hse(t,Su.ENDSUB)}},pfr=class{read(t){if(t.length!==Su.END64HDR||t.readUInt32LE(0)!==Su.END64SIG)throw new Error("Invalid central directory");this.volumeEntries=Hse(t,Su.END64SUB),this.totalEntries=Hse(t,Su.END64TOT),this.size=Hse(t,Su.END64SIZ),this.offset=Hse(t,Su.END64OFF)}},ffr=class{readHeader(t,r){if(t.length=8&&this.size===Su.EF_ZIP64_OR_32&&(this.size=Hse(t,r),r+=8,s-=8),s>=8&&this.compressedSize===Su.EF_ZIP64_OR_32&&(this.compressedSize=Hse(t,r),r+=8,s-=8),s>=8&&this.offset===Su.EF_ZIP64_OR_32&&(this.offset=Hse(t,r),r+=8,s-=8),s>=4&&this.diskStart===Su.EF_ZIP64_OR_16&&(this.diskStart=t.readUInt32LE(r))}get encrypted(){return(this.flags&Su.FLG_ENTRY_ENC)===Su.FLG_ENTRY_ENC}get isFile(){return!this.isDirectory}},Yse=class{constructor(t,r,s,a,o,g){this.fd=t,this.buffer=r,this.offset=s,this.length=a,this.position=o,this.callback=g,this.bytesRead=0,this.waiting=!1}read(t){Xse.debugLog("read",this.position,this.bytesRead,this.length,this.offset),this.waiting=!0;let r;if(t){let s=0;try{s=RM.readSync(this.fd,this.buffer,this.offset+this.bytesRead,this.length-this.bytesRead,this.position+this.bytesRead)}catch(a){r=a}this.readCallback(t,r,r?s:null)}else RM.read(this.fd,this.buffer,this.offset+this.bytesRead,this.length-this.bytesRead,this.position+this.bytesRead,this.readCallback.bind(this,t))}readCallback(t,r,s){if(typeof s=="number"&&(this.bytesRead+=s),r||!s||this.bytesRead===this.length)return this.waiting=!1,this.callback(r,this.bytesRead);this.read(t)}},Kmt=class{constructor(t){this.position=0,this.buffer=Buffer.alloc(0),this.fd=t,this.fsOp=null}checkOp(){if(this.fsOp&&this.fsOp.waiting)throw new Error("Operation in progress")}read(t,r,s){this.checkOp(),this.buffer.length{this.emit("error",a)})}_transform(t,r,s){let a;try{this.verify.data(t)}catch(o){a=o}s(a,t)}},jmt=class e{constructor(t,r){this.crc=t,this.size=r,this.state={crc:-1,size:0}}data(t){let r=e.getCrcTable(),s=this.state.crc,a=0,o=t.length;for(;--o>=0;)s=r[(s^t[a++])&255]^s>>>8;if(this.state.crc=s,this.state.size+=t.length,this.state.size>=this.size){let g=Buffer.alloc(4);if(g.writeInt32LE(~this.state.crc&4294967295,0),s=g.readUInt32LE(0),s!==this.crc)throw new Error("Invalid CRC");if(this.state.size!==this.size)throw new Error("Invalid size")}}static getCrcTable(){let t=e.crcTable;if(!t){e.crcTable=t=[];let r=Buffer.alloc(4);for(let s=0;s<256;s++){let a=s;for(let o=8;--o>=0;)a&1?a=3988292384^a>>>1:a=a>>>1;a<0&&(r.writeInt32LE(a,0),a=r.readUInt32LE(0)),t[s]=a}}return t}};function Ygi(e,t){let r=Hgi(e,16),s=Hgi(t,16),a={h:parseInt(r.slice(0,5).join(""),2),m:parseInt(r.slice(5,11).join(""),2),s:parseInt(r.slice(11,16).join(""),2)*2,Y:parseInt(s.slice(0,7).join(""),2)+1980,M:parseInt(s.slice(7,11).join(""),2),D:parseInt(s.slice(11,16).join(""),2)},o=[a.Y,a.M,a.D].join("-")+" "+[a.h,a.m,a.s].join(":")+" GMT+0";return new Date(o).getTime()}function Hgi(e,t){let r=(e>>>0).toString(2);for(;r.length{"use strict";var Lba=DM&&DM.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Vba=DM&&DM.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Ofe=DM&&DM.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Lba(t,e,r);return Vba(t,e),t};Object.defineProperty(DM,"__esModule",{value:!0});DM.downloadDeno=DM.getDenoDownloadUrl=void 0;var Wba=Ofe(Dt("node:os")),aHe=Ofe(Dt("node:fs")),hfr=Ofe(Dt("node:path")),Pba=Ofe(Dt("node:util")),Oba=Ofe(Dt("node:stream")),_fr=Ofe(Mmt()),Mba=Ofe(Ugi()),Qba=Pba.promisify(Oba.finished),Yba="https://dl.deno.land/canary-latest.txt",Hba="https://dl.deno.land/release-latest.txt",Kgi={"darwin arm64":"deno-aarch64-apple-darwin","darwin x64":"deno-x86_64-apple-darwin","linux arm64":"deno-aarch64-unknown-linux-gnu","linux x64":"deno-x86_64-unknown-linux-gnu","win32 x64":"deno-x86_64-pc-windows-msvc"};async function Xba(e){let t=`${process.platform} ${Wba.arch()}`;if(!(t in Kgi))throw new Error(`Unsupported platform: ${t}`);let s=Kgi[t]+".zip",a=e?Yba:Hba,o=await fetch(a);if(!o.ok)throw await o.body?.cancel(),new Error(`${o.status}: Unable to retrieve ${e?"canary":"release"} version information from ${a}.`);let g=(await o.text()).trim();return{canary:e,url:e?`https://dl.deno.land/canary/${decodeURI(g)}/${s}`:`https://dl.deno.land/release/${decodeURI(g)}/${s}`,filename:s,version:g}}DM.getDenoDownloadUrl=Xba;async function Jba(e,t){let r=hfr.dirname(e);await aHe.promises.mkdir(r,{recursive:!0});let s=await fetch(t.url),a=Number(s.headers.get("content-length")??1/0);if(s.body==null)throw new Error("Unexpected empty body");console.log(`Downloading JSR ${t.canary?"canary":"release"} binary...`),await Uba(async o=>{let g=hfr.join(r,t.filename+".part"),p=aHe.createWriteStream(g,"utf-8");for await(let y of Kba(s.body))o(y.length),p.write(y);p.end(),await Qba(p);let f=hfr.join(r,t.filename);await aHe.promises.rename(g,f);let m=new Mba.async({file:f});await m.extract(null,r),await m.close(),await aHe.promises.chmod(e,493),await aHe.promises.rm(f)},{max:a})}DM.downloadDeno=Jba;async function Uba(e,t){let r=0,s=Date.now(),a=0,o=!1,g=jba(()=>{a=Date.now()-s;let m=String(Math.floor(a/1e3/60)).padStart(2,"0"),y=String(Math.floor(a/1e3)%60).padStart(2,"0"),B=`[${m}:${y}]`,v=`${jgi(r)}/${jgi(t.max)}`,G=process.stdout.columns,T=B;if(G-B.length-v.length+4>10){let O=Math.min(G,50),X=Math.floor(100/t.max*r),U="#".repeat(O/100*X)+">",le=_fr.blue("-".repeat(Math.max(O-U.length,0)));T+=` [${_fr.cyan(U)}${le}] `}T+=_fr.dim(v),process.stdout.isTTY&&(o&&process.stdout.write("\r\x1B[K"),o=!0,process.stdout.write(T))},16),f=await e(m=>{r+=m,g()});return process.stdout.isTTY?process.stdout.write(` -`):console.log("Download completed"),f}async function*Kba(e){let t=e.getReader();try{for(;;){let{done:r,value:s}=await t.read();if(r)return;yield s}}finally{t.releaseLock()}}function jgi(e,t=1){if(Math.abs(e)<1024)return e+" B";let s=["KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"],a=-1,o=10**t;do e/=1024,++a;while(Math.round(Math.abs(e)*o)/o>=1024&&a{r===null&&(e(),r=setTimeout(()=>{r=null},t))}}});var oAi=z(i2=>{"use strict";var zba=i2&&i2.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),qba=i2&&i2.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),yfr=i2&&i2.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&zba(t,e,r);return qba(t,e),t},$ba=i2&&i2.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(i2,"__esModule",{value:!0});i2.showPackageInfo=i2.runScript=i2.publish=i2.remove=i2.install=i2.setupBunfigToml=i2.setupNpmRc=void 0;var bfr=yfr(Dt("node:path")),Mfe=yfr(Dt("node:fs")),qU=yfr(Mmt()),lHe=Hmt(),cHe=Mgi(),qgi=zgi(),$gi=ofr(),eEa=$ba(cfr()),eAi=".npmrc",tAi="bunfig.toml",Efr="https://npm.jsr.io",rAi=`@jsr:registry=${Efr} -`,nAi=`[install.scopes] -"@jsr" = "${Efr}" -`,tEa="npmScopes.jsr.npmRegistryServer";async function zmt(e,t){process.stdout.write(e+"...");try{await t(),process.stdout.write(qU.green("ok")+` -`)}catch(r){throw process.stdout.write(qU.red("error")+` -`),r}}async function iAi(e){let t=bfr.join(e,eAi),r=`Setting up ${eAi}`;try{let s=await Mfe.promises.readFile(t,"utf-8");if(!s.includes("@jsr:registry=")){let a=(0,lHe.getNewLineChars)(s),o=s.endsWith(a)?"":a;s+=o+rAi,await zmt(r,async()=>{await Mfe.promises.writeFile(t,s)})}}catch(s){if(s instanceof Error&&s.code==="ENOENT")await zmt(r,async()=>{await Mfe.promises.writeFile(t,rAi)});else throw s}}i2.setupNpmRc=iAi;async function sAi(e){let t=bfr.join(e,tAi),r=`Setting up ${tAi}`;try{let s=await Mfe.promises.readFile(t,"utf-8");/^"@jsr"\s+=/gm.test(s)||(s+=nAi,await zmt(r,async()=>{await Mfe.promises.writeFile(t,s)}))}catch(s){if(s instanceof Error&&s.code==="ENOENT")await zmt(r,async()=>{await Mfe.promises.writeFile(t,nAi)});else throw s}}i2.setupBunfigToml=sAi;async function rEa(e,t){let{pkgManager:r,root:s}=await(0,cHe.getPkgManager)(process.cwd(),t.pkgManagerName);e.length>0&&(r instanceof cHe.Bun&&!await r.isNpmrcSupported()?await sAi(s):r instanceof cHe.YarnBerry?await r.setConfigValue(tEa,Efr):await iAi(s),console.log(`Installing ${qU.cyan(e.join(", "))}...`)),await r.install(e,t)}i2.install=rEa;async function nEa(e,t){let{pkgManager:r}=await(0,cHe.getPkgManager)(process.cwd(),t.pkgManagerName);console.log(`Removing ${qU.cyan(e.join(", "))}...`),await r.remove(e)}i2.remove=nEa;async function iEa(e,t){let r=await(0,qgi.getDenoDownloadUrl)(t),s=bfr.join(e,r.version,process.platform,process.platform==="win32"?"deno.exe":"deno");if(!await(0,lHe.fileExists)(s)){try{await Mfe.promises.rm(e,{recursive:!0})}catch(a){if(!(a instanceof Error)||a.code!=="ENOENT")throw a}await(0,qgi.downloadDeno)(s,r)}return s}async function sEa(e,t){let r=process.env.DENO_BIN_PATH??await iEa(t.binFolder,t.canary),s=["publish"],a={...process.env};t.pkgJsonPath!==null&&(s.push("--unstable-bare-node-builtins","--unstable-sloppy-imports","--unstable-byonm","--no-check"),a.DENO_DISABLE_PEDANTIC_NODE_WARNINGS="true"),s.push(...t.publishArgs.filter(o=>o!=="--verbose")),await(0,lHe.exec)(r,s,e,a)}i2.publish=sEa;async function oEa(e,t,r){let{pkgManager:s}=await(0,cHe.getPkgManager)(e,r.pkgManagerName);await s.runScript(t)}i2.runScript=oEa;async function aEa(e){let t=lHe.JsrPackage.from(e),r=await(0,$gi.getPackageMeta)(t);if(t.version===null){let f=r.latest;if(f===void 0)throw new Error(`Missing latest version for ${t}`);if(f===null){let m=Object.keys(r.versions);if(m.length===0)throw new Error(`Could not find published version for ${t}`);m.sort(eEa.default),t.version=m[0]}else t.version=f}let s=Object.keys(r.versions).length,a=await(0,$gi.getNpmPackageInfo)(t),o=a.versions[t.version],g=a.time[t.version],p=new Date(g).getTime();console.log(),console.log(qU.cyan(`@${t.scope}/${t.name}@${t.version}`)+` | latest: ${qU.magenta(r.latest??"-")} | versions: ${qU.magenta(s)}`),console.log(a.description),console.log(),console.log(`npm tarball: ${qU.cyan(o.dist.tarball)}`),console.log(`npm integrity: ${qU.cyan(o.dist.integrity)}`),console.log(),console.log(`published: ${qU.magenta((0,lHe.timeAgo)(Date.now()-p))}`)}i2.showPackageInfo=aEa});var cAi=z(xM=>{"use strict";Object.defineProperty(xM,"__esModule",{value:!0});xM.JsrPackageNameError=xM.JsrPackage=xM.remove=xM.publish=xM.install=void 0;var Bfr=oAi();Object.defineProperty(xM,"install",{enumerable:!0,get:function(){return Bfr.install}});Object.defineProperty(xM,"publish",{enumerable:!0,get:function(){return Bfr.publish}});Object.defineProperty(xM,"remove",{enumerable:!0,get:function(){return Bfr.remove}});var aAi=Hmt();Object.defineProperty(xM,"JsrPackage",{enumerable:!0,get:function(){return aAi.JsrPackage}});Object.defineProperty(xM,"JsrPackageNameError",{enumerable:!0,get:function(){return aAi.JsrPackageNameError}})});var zfr=z((b2l,Wdi)=>{"use strict";Wdi.exports=function(t,r){return function(){for(var a=new Array(arguments.length),o=0;o{"use strict";var i1a=zfr(),Ufe=Object.prototype.toString;function eIr(e){return Ufe.call(e)==="[object Array]"}function qfr(e){return typeof e>"u"}function s1a(e){return e!==null&&!qfr(e)&&e.constructor!==null&&!qfr(e.constructor)&&typeof e.constructor.isBuffer=="function"&&e.constructor.isBuffer(e)}function o1a(e){return Ufe.call(e)==="[object ArrayBuffer]"}function a1a(e){return typeof FormData<"u"&&e instanceof FormData}function c1a(e){var t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&e.buffer instanceof ArrayBuffer,t}function l1a(e){return typeof e=="string"}function u1a(e){return typeof e=="number"}function Pdi(e){return e!==null&&typeof e=="object"}function uht(e){if(Ufe.call(e)!=="[object Object]")return!1;var t=Object.getPrototypeOf(e);return t===null||t===Object.prototype}function g1a(e){return Ufe.call(e)==="[object Date]"}function A1a(e){return Ufe.call(e)==="[object File]"}function d1a(e){return Ufe.call(e)==="[object Blob]"}function Odi(e){return Ufe.call(e)==="[object Function]"}function p1a(e){return Pdi(e)&&Odi(e.pipe)}function f1a(e){return typeof URLSearchParams<"u"&&e instanceof URLSearchParams}function I1a(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}function C1a(){return typeof navigator<"u"&&(navigator.product==="ReactNative"||navigator.product==="NativeScript"||navigator.product==="NS")?!1:typeof window<"u"&&typeof document<"u"}function tIr(e,t){if(!(e===null||typeof e>"u"))if(typeof e!="object"&&(e=[e]),eIr(e))for(var r=0,s=e.length;r{"use strict";var XSe=UF();function Qdi(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}Ydi.exports=function(t,r,s){if(!r)return t;var a;if(s)a=s(r);else if(XSe.isURLSearchParams(r))a=r.toString();else{var o=[];XSe.forEach(r,function(f,m){f===null||typeof f>"u"||(XSe.isArray(f)?m=m+"[]":f=[f],XSe.forEach(f,function(B){XSe.isDate(B)?B=B.toISOString():XSe.isObject(B)&&(B=JSON.stringify(B)),o.push(Qdi(m)+"="+Qdi(B))}))}),a=o.join("&")}if(a){var g=t.indexOf("#");g!==-1&&(t=t.slice(0,g)),t+=(t.indexOf("?")===-1?"?":"&")+a}return t}});var Xdi=z((v2l,Hdi)=>{"use strict";var _1a=UF();function Aht(){this.handlers=[]}Aht.prototype.use=function(t,r,s){return this.handlers.push({fulfilled:t,rejected:r,synchronous:s?s.synchronous:!1,runWhen:s?s.runWhen:null}),this.handlers.length-1};Aht.prototype.eject=function(t){this.handlers[t]&&(this.handlers[t]=null)};Aht.prototype.forEach=function(t){_1a.forEach(this.handlers,function(s){s!==null&&t(s)})};Hdi.exports=Aht});var Udi=z((S2l,Jdi)=>{"use strict";var y1a=UF();Jdi.exports=function(t,r){y1a.forEach(t,function(a,o){o!==r&&o.toUpperCase()===r.toUpperCase()&&(t[r]=a,delete t[o])})}});var dht=z((w2l,Kdi)=>{"use strict";Kdi.exports=function(t,r,s,a,o){return t.config=r,s&&(t.code=s),t.request=a,t.response=o,t.isAxiosError=!0,t.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:this.config,code:this.code}},t}});var pht=z((T2l,jdi)=>{"use strict";var b1a=dht();jdi.exports=function(t,r,s,a,o){var g=new Error(t);return b1a(g,r,s,a,o)}});var rIr=z((N2l,zdi)=>{"use strict";var E1a=pht();zdi.exports=function(t,r,s){var a=s.config.validateStatus;!s.status||!a||a(s.status)?t(s):r(E1a("Request failed with status code "+s.status,s.config,null,s.request,s))}});var $di=z((R2l,qdi)=>{"use strict";var fht=UF();qdi.exports=fht.isStandardBrowserEnv()?function(){return{write:function(r,s,a,o,g,p){var f=[];f.push(r+"="+encodeURIComponent(s)),fht.isNumber(a)&&f.push("expires="+new Date(a).toGMTString()),fht.isString(o)&&f.push("path="+o),fht.isString(g)&&f.push("domain="+g),p===!0&&f.push("secure"),document.cookie=f.join("; ")},read:function(r){var s=document.cookie.match(new RegExp("(^|;\\s*)("+r+")=([^;]*)"));return s?decodeURIComponent(s[3]):null},remove:function(r){this.write(r,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}()});var tpi=z((D2l,epi)=>{"use strict";epi.exports=function(t){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(t)}});var npi=z((x2l,rpi)=>{"use strict";rpi.exports=function(t,r){return r?t.replace(/\/+$/,"")+"/"+r.replace(/^\/+/,""):t}});var nIr=z((k2l,ipi)=>{"use strict";var B1a=tpi(),v1a=npi();ipi.exports=function(t,r){return t&&!B1a(r)?v1a(t,r):r}});var opi=z((G2l,spi)=>{"use strict";var iIr=UF(),S1a=["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"];spi.exports=function(t){var r={},s,a,o;return t&&iIr.forEach(t.split(` -`),function(p){if(o=p.indexOf(":"),s=iIr.trim(p.substr(0,o)).toLowerCase(),a=iIr.trim(p.substr(o+1)),s){if(r[s]&&S1a.indexOf(s)>=0)return;s==="set-cookie"?r[s]=(r[s]?r[s]:[]).concat([a]):r[s]=r[s]?r[s]+", "+a:a}}),r}});var lpi=z((F2l,cpi)=>{"use strict";var api=UF();cpi.exports=api.isStandardBrowserEnv()?function(){var t=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a"),s;function a(o){var g=o;return t&&(r.setAttribute("href",g),g=r.href),r.setAttribute("href",g),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:r.pathname.charAt(0)==="/"?r.pathname:"/"+r.pathname}}return s=a(window.location.href),function(g){var p=api.isString(g)?a(g):g;return p.protocol===s.protocol&&p.host===s.host}}():function(){return function(){return!0}}()});var gpi=z((Z2l,upi)=>{"use strict";var Iht=UF(),w1a=rIr(),T1a=$di(),N1a=ght(),R1a=nIr(),D1a=opi(),x1a=lpi(),sIr=pht();upi.exports=function(t){return new Promise(function(s,a){var o=t.data,g=t.headers,p=t.responseType;Iht.isFormData(o)&&delete g["Content-Type"];var f=new XMLHttpRequest;if(t.auth){var m=t.auth.username||"",y=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";g.Authorization="Basic "+btoa(m+":"+y)}var B=R1a(t.baseURL,t.url);f.open(t.method.toUpperCase(),N1a(B,t.params,t.paramsSerializer),!0),f.timeout=t.timeout;function v(){if(f){var T="getAllResponseHeaders"in f?D1a(f.getAllResponseHeaders()):null,O=!p||p==="text"||p==="json"?f.responseText:f.response,X={data:O,status:f.status,statusText:f.statusText,headers:T,config:t,request:f};w1a(s,a,X),f=null}}if("onloadend"in f?f.onloadend=v:f.onreadystatechange=function(){!f||f.readyState!==4||f.status===0&&!(f.responseURL&&f.responseURL.indexOf("file:")===0)||setTimeout(v)},f.onabort=function(){f&&(a(sIr("Request aborted",t,"ECONNABORTED",f)),f=null)},f.onerror=function(){a(sIr("Network Error",t,null,f)),f=null},f.ontimeout=function(){var O="timeout of "+t.timeout+"ms exceeded";t.timeoutErrorMessage&&(O=t.timeoutErrorMessage),a(sIr(O,t,t.transitional&&t.transitional.clarifyTimeoutError?"ETIMEDOUT":"ECONNABORTED",f)),f=null},Iht.isStandardBrowserEnv()){var G=(t.withCredentials||x1a(B))&&t.xsrfCookieName?T1a.read(t.xsrfCookieName):void 0;G&&(g[t.xsrfHeaderName]=G)}"setRequestHeader"in f&&Iht.forEach(g,function(O,X){typeof o>"u"&&X.toLowerCase()==="content-type"?delete g[X]:f.setRequestHeader(X,O)}),Iht.isUndefined(t.withCredentials)||(f.withCredentials=!!t.withCredentials),p&&p!=="json"&&(f.responseType=t.responseType),typeof t.onDownloadProgress=="function"&&f.addEventListener("progress",t.onDownloadProgress),typeof t.onUploadProgress=="function"&&f.upload&&f.upload.addEventListener("progress",t.onUploadProgress),t.cancelToken&&t.cancelToken.promise.then(function(O){f&&(f.abort(),a(O),f=null)}),o||(o=null),f.send(o)})}});var dpi=z((L2l,Api)=>{var hHe;Api.exports=function(){if(!hHe){try{hHe=Dt("debug")("follow-redirects")}catch{}typeof hHe!="function"&&(hHe=function(){})}hHe.apply(null,arguments)}});var mIr=z((V2l,CIr)=>{var yHe=Dt("url"),_He=yHe.URL,k1a=Dt("http"),G1a=Dt("https"),uIr=Dt("stream").Writable,gIr=Dt("assert"),ppi=dpi();(function(){var t=typeof process<"u",r=typeof window<"u"&&typeof document<"u",s=jfe(Error.captureStackTrace);!t&&(r||!s)&&console.warn("The follow-redirects package should be excluded from browser builds.")})();var AIr=!1;try{gIr(new _He(""))}catch(e){AIr=e.code==="ERR_INVALID_URL"}var F1a=["auth","host","hostname","href","path","pathname","port","protocol","query","search","hash"],dIr=["abort","aborted","connect","error","socket","timeout"],pIr=Object.create(null);dIr.forEach(function(e){pIr[e]=function(t,r,s){this._redirectable.emit(e,t,r,s)}});var aIr=bHe("ERR_INVALID_URL","Invalid URL",TypeError),cIr=bHe("ERR_FR_REDIRECTION_FAILURE","Redirected request failed"),Z1a=bHe("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded",cIr),L1a=bHe("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),V1a=bHe("ERR_STREAM_WRITE_AFTER_END","write after end"),W1a=uIr.prototype.destroy||Ipi;function I9(e,t){uIr.call(this),this._sanitizeOptions(e),this._options=e,this._ended=!1,this._ending=!1,this._redirectCount=0,this._redirects=[],this._requestBodyLength=0,this._requestBodyBuffers=[],t&&this.on("response",t);var r=this;this._onNativeResponse=function(s){try{r._processResponse(s)}catch(a){r.emit("error",a instanceof cIr?a:new cIr({cause:a}))}},this._performRequest()}I9.prototype=Object.create(uIr.prototype);I9.prototype.abort=function(){IIr(this._currentRequest),this._currentRequest.abort(),this.emit("abort")};I9.prototype.destroy=function(e){return IIr(this._currentRequest,e),W1a.call(this,e),this};I9.prototype.write=function(e,t,r){if(this._ending)throw new V1a;if(!Kfe(e)&&!M1a(e))throw new TypeError("data should be a string, Buffer or Uint8Array");if(jfe(t)&&(r=t,t=null),e.length===0){r&&r();return}this._requestBodyLength+e.length<=this._options.maxBodyLength?(this._requestBodyLength+=e.length,this._requestBodyBuffers.push({data:e,encoding:t}),this._currentRequest.write(e,t,r)):(this.emit("error",new L1a),this.abort())};I9.prototype.end=function(e,t,r){if(jfe(e)?(r=e,e=t=null):jfe(t)&&(r=t,t=null),!e)this._ended=this._ending=!0,this._currentRequest.end(null,null,r);else{var s=this,a=this._currentRequest;this.write(e,t,function(){s._ended=!0,a.end(null,null,r)}),this._ending=!0}};I9.prototype.setHeader=function(e,t){this._options.headers[e]=t,this._currentRequest.setHeader(e,t)};I9.prototype.removeHeader=function(e){delete this._options.headers[e],this._currentRequest.removeHeader(e)};I9.prototype.setTimeout=function(e,t){var r=this;function s(g){g.setTimeout(e),g.removeListener("timeout",g.destroy),g.addListener("timeout",g.destroy)}function a(g){r._timeout&&clearTimeout(r._timeout),r._timeout=setTimeout(function(){r.emit("timeout"),o()},e),s(g)}function o(){r._timeout&&(clearTimeout(r._timeout),r._timeout=null),r.removeListener("abort",o),r.removeListener("error",o),r.removeListener("response",o),r.removeListener("close",o),t&&r.removeListener("timeout",t),r.socket||r._currentRequest.removeListener("socket",a)}return t&&this.on("timeout",t),this.socket?a(this.socket):this._currentRequest.once("socket",a),this.on("socket",s),this.on("abort",o),this.on("error",o),this.on("response",o),this.on("close",o),this};["flushHeaders","getHeader","setNoDelay","setSocketKeepAlive"].forEach(function(e){I9.prototype[e]=function(t,r){return this._currentRequest[e](t,r)}});["aborted","connection","socket"].forEach(function(e){Object.defineProperty(I9.prototype,e,{get:function(){return this._currentRequest[e]}})});I9.prototype._sanitizeOptions=function(e){if(e.headers||(e.headers={}),e.host&&(e.hostname||(e.hostname=e.host),delete e.host),!e.pathname&&e.path){var t=e.path.indexOf("?");t<0?e.pathname=e.path:(e.pathname=e.path.substring(0,t),e.search=e.path.substring(t))}};I9.prototype._performRequest=function(){var e=this._options.protocol,t=this._options.nativeProtocols[e];if(!t)throw new TypeError("Unsupported protocol "+e);if(this._options.agents){var r=e.slice(0,-1);this._options.agent=this._options.agents[r]}var s=this._currentRequest=t.request(this._options,this._onNativeResponse);s._redirectable=this;for(var a of dIr)s.on(a,pIr[a]);if(this._currentUrl=/^\//.test(this._options.path)?yHe.format(this._options):this._options.path,this._isRedirect){var o=0,g=this,p=this._requestBodyBuffers;(function f(m){if(s===g._currentRequest)if(m)g.emit("error",m);else if(o=400){e.responseUrl=this._currentUrl,e.redirects=this._redirects,this.emit("response",e),this._requestBodyBuffers=[];return}if(IIr(this._currentRequest),e.destroy(),++this._redirectCount>this._options.maxRedirects)throw new Z1a;var s,a=this._options.beforeRedirect;a&&(s=Object.assign({Host:e.req.getHeader("host")},this._options.headers));var o=this._options.method;((t===301||t===302)&&this._options.method==="POST"||t===303&&!/^(?:GET|HEAD)$/.test(this._options.method))&&(this._options.method="GET",this._requestBodyBuffers=[],oIr(/^content-/i,this._options.headers));var g=oIr(/^host$/i,this._options.headers),p=fIr(this._currentUrl),f=g||p.host,m=/^\w+:/.test(r)?this._currentUrl:yHe.format(Object.assign(p,{host:f})),y=P1a(r,m);if(ppi("redirecting to",y.href),this._isRedirect=!0,lIr(y,this._options),(y.protocol!==p.protocol&&y.protocol!=="https:"||y.host!==f&&!O1a(y.host,f))&&oIr(/^(?:(?:proxy-)?authorization|cookie)$/i,this._options.headers),jfe(a)){var B={headers:e.headers,statusCode:t},v={url:m,method:o,headers:s};a(this._options,B,v),this._sanitizeOptions(this._options)}this._performRequest()};function fpi(e){var t={maxRedirects:21,maxBodyLength:10485760},r={};return Object.keys(e).forEach(function(s){var a=s+":",o=r[a]=e[s],g=t[s]=Object.create(o);function p(m,y,B){return Q1a(m)?m=lIr(m):Kfe(m)?m=lIr(fIr(m)):(B=y,y=Cpi(m),m={protocol:a}),jfe(y)&&(B=y,y=null),y=Object.assign({maxRedirects:t.maxRedirects,maxBodyLength:t.maxBodyLength},m,y),y.nativeProtocols=r,!Kfe(y.host)&&!Kfe(y.hostname)&&(y.hostname="::1"),gIr.equal(y.protocol,a,"protocol mismatch"),ppi("options",y),new I9(y,B)}function f(m,y,B){var v=g.request(m,y,B);return v.end(),v}Object.defineProperties(g,{request:{value:p,configurable:!0,enumerable:!0,writable:!0},get:{value:f,configurable:!0,enumerable:!0,writable:!0}})}),t}function Ipi(){}function fIr(e){var t;if(AIr)t=new _He(e);else if(t=Cpi(yHe.parse(e)),!Kfe(t.protocol))throw new aIr({input:e});return t}function P1a(e,t){return AIr?new _He(e,t):fIr(yHe.resolve(t,e))}function Cpi(e){if(/^\[/.test(e.hostname)&&!/^\[[:0-9a-f]+\]$/i.test(e.hostname))throw new aIr({input:e.href||e});if(/^\[/.test(e.host)&&!/^\[[:0-9a-f]+\](:\d+)?$/i.test(e.host))throw new aIr({input:e.href||e});return e}function lIr(e,t){var r=t||{};for(var s of F1a)r[s]=e[s];return r.hostname.startsWith("[")&&(r.hostname=r.hostname.slice(1,-1)),r.port!==""&&(r.port=Number(r.port)),r.path=r.search?r.pathname+r.search:r.pathname,r}function oIr(e,t){var r;for(var s in t)e.test(s)&&(r=t[s],delete t[s]);return r===null||typeof r>"u"?void 0:String(r).trim()}function bHe(e,t,r){function s(a){jfe(Error.captureStackTrace)&&Error.captureStackTrace(this,this.constructor),Object.assign(this,a||{}),this.code=e,this.message=this.cause?t+": "+this.cause.message:t}return s.prototype=new(r||Error),Object.defineProperties(s.prototype,{constructor:{value:s,enumerable:!1},name:{value:"Error ["+e+"]",enumerable:!1}}),s}function IIr(e,t){for(var r of dIr)e.removeListener(r,pIr[r]);e.on("error",Ipi),e.destroy(t)}function O1a(e,t){gIr(Kfe(e)&&Kfe(t));var r=e.length-t.length-1;return r>0&&e[r]==="."&&e.endsWith(t)}function Kfe(e){return typeof e=="string"||e instanceof String}function jfe(e){return typeof e=="function"}function M1a(e){return typeof e=="object"&&"length"in e}function Q1a(e){return _He&&e instanceof _He}CIr.exports=fpi({http:k1a,https:G1a});CIr.exports.wrap=fpi});var hIr=z((W2l,Y1a)=>{Y1a.exports={name:"axios",version:"0.21.4",description:"Promise based HTTP client for the browser and node.js",main:"index.js",scripts:{test:"grunt test",start:"node ./sandbox/server.js",build:"NODE_ENV=production grunt build",preversion:"npm test",version:"npm run build && grunt version && git add -A dist && git add CHANGELOG.md bower.json package.json",postversion:"git push && git push --tags",examples:"node ./examples/server.js",coveralls:"cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js",fix:"eslint --fix lib/**/*.js"},repository:{type:"git",url:"https://github.com/axios/axios.git"},keywords:["xhr","http","ajax","promise","node"],author:"Matt Zabriskie",license:"MIT",bugs:{url:"https://github.com/axios/axios/issues"},homepage:"https://axios-http.com",devDependencies:{coveralls:"^3.0.0","es6-promise":"^4.2.4",grunt:"^1.3.0","grunt-banner":"^0.6.0","grunt-cli":"^1.2.0","grunt-contrib-clean":"^1.1.0","grunt-contrib-watch":"^1.0.0","grunt-eslint":"^23.0.0","grunt-karma":"^4.0.0","grunt-mocha-test":"^0.13.3","grunt-ts":"^6.0.0-beta.19","grunt-webpack":"^4.0.2","istanbul-instrumenter-loader":"^1.0.0","jasmine-core":"^2.4.1",karma:"^6.3.2","karma-chrome-launcher":"^3.1.0","karma-firefox-launcher":"^2.1.0","karma-jasmine":"^1.1.1","karma-jasmine-ajax":"^0.1.13","karma-safari-launcher":"^1.0.0","karma-sauce-launcher":"^4.3.6","karma-sinon":"^1.0.5","karma-sourcemap-loader":"^0.3.8","karma-webpack":"^4.0.2","load-grunt-tasks":"^3.5.2",minimist:"^1.2.0",mocha:"^8.2.1",sinon:"^4.5.0","terser-webpack-plugin":"^4.2.3",typescript:"^4.0.5","url-search-params":"^0.10.0",webpack:"^4.44.2","webpack-dev-server":"^3.11.0"},browser:{"./lib/adapters/http.js":"./lib/adapters/xhr.js"},jsdelivr:"dist/axios.min.js",unpkg:"dist/axios.min.js",typings:"./index.d.ts",dependencies:{"follow-redirects":"^1.14.0"},bundlesize:[{path:"./dist/axios.min.js",threshold:"5kB"}]}});var Epi=z((P2l,bpi)=>{"use strict";var EHe=UF(),mpi=rIr(),H1a=nIr(),X1a=ght(),J1a=Dt("http"),U1a=Dt("https"),K1a=mIr().http,j1a=mIr().https,hpi=Dt("url"),z1a=Dt("zlib"),q1a=hIr(),Cht=pht(),_Ir=dht(),_pi=/https:?/;function ypi(e,t,r){if(e.hostname=t.host,e.host=t.host,e.port=t.port,e.path=r,t.auth){var s=Buffer.from(t.auth.username+":"+t.auth.password,"utf8").toString("base64");e.headers["Proxy-Authorization"]="Basic "+s}e.beforeRedirect=function(o){o.headers.host=o.host,ypi(o,t,o.href)}}bpi.exports=function(t){return new Promise(function(s,a){var o=function(er){s(er)},g=function(er){a(er)},p=t.data,f=t.headers;if("User-Agent"in f||"user-agent"in f?!f["User-Agent"]&&!f["user-agent"]&&(delete f["User-Agent"],delete f["user-agent"]):f["User-Agent"]="axios/"+q1a.version,p&&!EHe.isStream(p)){if(!Buffer.isBuffer(p))if(EHe.isArrayBuffer(p))p=Buffer.from(new Uint8Array(p));else if(EHe.isString(p))p=Buffer.from(p,"utf-8");else return g(Cht("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",t));f["Content-Length"]=p.length}var m=void 0;if(t.auth){var y=t.auth.username||"",B=t.auth.password||"";m=y+":"+B}var v=H1a(t.baseURL,t.url),G=hpi.parse(v),T=G.protocol||"http:";if(!m&&G.auth){var O=G.auth.split(":"),X=O[0]||"",U=O[1]||"";m=X+":"+U}m&&delete f.Authorization;var le=_pi.test(T),ae=le?t.httpsAgent:t.httpAgent,ge={path:X1a(G.path,t.params,t.paramsSerializer).replace(/^\?/,""),method:t.method.toUpperCase(),headers:f,agent:ae,agents:{http:t.httpAgent,https:t.httpsAgent},auth:m};t.socketPath?ge.socketPath=t.socketPath:(ge.hostname=G.hostname,ge.port=G.port);var fe=t.proxy;if(!fe&&fe!==!1){var pe=T.slice(0,-1)+"_proxy",he=process.env[pe]||process.env[pe.toUpperCase()];if(he){var be=hpi.parse(he),Te=process.env.no_proxy||process.env.NO_PROXY,ke=!0;if(Te){var x=Te.split(",").map(function(er){return er.trim()});ke=!x.some(function(er){return er?er==="*"||er[0]==="."&&G.hostname.substr(G.hostname.length-er.length)===er?!0:G.hostname===er:!1})}if(ke&&(fe={host:be.hostname,port:be.port,protocol:be.protocol},be.auth)){var et=be.auth.split(":");fe.auth={username:et[0],password:et[1]}}}}fe&&(ge.headers.host=G.hostname+(G.port?":"+G.port:""),ypi(ge,fe,T+"//"+G.hostname+(G.port?":"+G.port:"")+ge.path));var Ue,Je=le&&(fe?_pi.test(fe.protocol):!0);t.transport?Ue=t.transport:t.maxRedirects===0?Ue=Je?U1a:J1a:(t.maxRedirects&&(ge.maxRedirects=t.maxRedirects),Ue=Je?j1a:K1a),t.maxBodyLength>-1&&(ge.maxBodyLength=t.maxBodyLength);var Xe=Ue.request(ge,function(er){if(!Xe.aborted){var Ur=er,Ot=er.req||Xe;if(er.statusCode!==204&&Ot.method!=="HEAD"&&t.decompress!==!1)switch(er.headers["content-encoding"]){case"gzip":case"compress":case"deflate":Ur=Ur.pipe(z1a.createUnzip()),delete er.headers["content-encoding"];break}var dr={status:er.statusCode,statusText:er.statusMessage,headers:er.headers,config:t,request:Ot};if(t.responseType==="stream")dr.data=Ur,mpi(o,g,dr);else{var Ar=[],or=0;Ur.on("data",function($r){Ar.push($r),or+=$r.length,t.maxContentLength>-1&&or>t.maxContentLength&&(Ur.destroy(),g(Cht("maxContentLength size of "+t.maxContentLength+" exceeded",t,null,Ot)))}),Ur.on("error",function($r){Xe.aborted||g(_Ir($r,t,null,Ot))}),Ur.on("end",function(){var $r=Buffer.concat(Ar);t.responseType!=="arraybuffer"&&($r=$r.toString(t.responseEncoding),(!t.responseEncoding||t.responseEncoding==="utf8")&&($r=EHe.stripBOM($r))),dr.data=$r,mpi(o,g,dr)})}}});if(Xe.on("error",function(er){Xe.aborted&&er.code!=="ERR_FR_TOO_MANY_REDIRECTS"||g(_Ir(er,t,null,Xe))}),t.timeout){var ft=parseInt(t.timeout,10);if(isNaN(ft)){g(Cht("error trying to parse `config.timeout` to int",t,"ERR_PARSE_TIMEOUT",Xe));return}Xe.setTimeout(ft,function(){Xe.abort(),g(Cht("timeout of "+ft+"ms exceeded",t,t.transitional&&t.transitional.clarifyTimeoutError?"ETIMEDOUT":"ECONNABORTED",Xe))})}t.cancelToken&&t.cancelToken.promise.then(function(er){Xe.aborted||(Xe.abort(),g(er))}),EHe.isStream(p)?p.on("error",function(er){g(_Ir(er,t,null,Xe))}).pipe(Xe):Xe.end(p)})}});var hht=z((O2l,Spi)=>{"use strict";var UD=UF(),Bpi=Udi(),$1a=dht(),e2a={"Content-Type":"application/x-www-form-urlencoded"};function vpi(e,t){!UD.isUndefined(e)&&UD.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}function t2a(){var e;return typeof XMLHttpRequest<"u"?e=gpi():typeof process<"u"&&Object.prototype.toString.call(process)==="[object process]"&&(e=Epi()),e}function r2a(e,t,r){if(UD.isString(e))try{return(t||JSON.parse)(e),UD.trim(e)}catch(s){if(s.name!=="SyntaxError")throw s}return(r||JSON.stringify)(e)}var mht={transitional:{silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},adapter:t2a(),transformRequest:[function(t,r){return Bpi(r,"Accept"),Bpi(r,"Content-Type"),UD.isFormData(t)||UD.isArrayBuffer(t)||UD.isBuffer(t)||UD.isStream(t)||UD.isFile(t)||UD.isBlob(t)?t:UD.isArrayBufferView(t)?t.buffer:UD.isURLSearchParams(t)?(vpi(r,"application/x-www-form-urlencoded;charset=utf-8"),t.toString()):UD.isObject(t)||r&&r["Content-Type"]==="application/json"?(vpi(r,"application/json"),r2a(t)):t}],transformResponse:[function(t){var r=this.transitional,s=r&&r.silentJSONParsing,a=r&&r.forcedJSONParsing,o=!s&&this.responseType==="json";if(o||a&&UD.isString(t)&&t.length)try{return JSON.parse(t)}catch(g){if(o)throw g.name==="SyntaxError"?$1a(g,this,"E_JSON_PARSE"):g}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,validateStatus:function(t){return t>=200&&t<300}};mht.headers={common:{Accept:"application/json, text/plain, */*"}};UD.forEach(["delete","get","head"],function(t){mht.headers[t]={}});UD.forEach(["post","put","patch"],function(t){mht.headers[t]=UD.merge(e2a)});Spi.exports=mht});var Tpi=z((M2l,wpi)=>{"use strict";var n2a=UF(),i2a=hht();wpi.exports=function(t,r,s){var a=this||i2a;return n2a.forEach(s,function(g){t=g.call(a,t,r)}),t}});var yIr=z((Q2l,Npi)=>{"use strict";Npi.exports=function(t){return!!(t&&t.__CANCEL__)}});var xpi=z((Y2l,Dpi)=>{"use strict";var Rpi=UF(),bIr=Tpi(),s2a=yIr(),o2a=hht();function EIr(e){e.cancelToken&&e.cancelToken.throwIfRequested()}Dpi.exports=function(t){EIr(t),t.headers=t.headers||{},t.data=bIr.call(t,t.data,t.headers,t.transformRequest),t.headers=Rpi.merge(t.headers.common||{},t.headers[t.method]||{},t.headers),Rpi.forEach(["delete","get","head","post","put","patch","common"],function(a){delete t.headers[a]});var r=t.adapter||o2a.adapter;return r(t).then(function(a){return EIr(t),a.data=bIr.call(t,a.data,a.headers,t.transformResponse),a},function(a){return s2a(a)||(EIr(t),a&&a.response&&(a.response.data=bIr.call(t,a.response.data,a.response.headers,t.transformResponse))),Promise.reject(a)})}});var BIr=z((H2l,kpi)=>{"use strict";var Wk=UF();kpi.exports=function(t,r){r=r||{};var s={},a=["url","method","data"],o=["headers","auth","proxy","params"],g=["baseURL","transformRequest","transformResponse","paramsSerializer","timeout","timeoutMessage","withCredentials","adapter","responseType","xsrfCookieName","xsrfHeaderName","onUploadProgress","onDownloadProgress","decompress","maxContentLength","maxBodyLength","maxRedirects","transport","httpAgent","httpsAgent","cancelToken","socketPath","responseEncoding"],p=["validateStatus"];function f(v,G){return Wk.isPlainObject(v)&&Wk.isPlainObject(G)?Wk.merge(v,G):Wk.isPlainObject(G)?Wk.merge({},G):Wk.isArray(G)?G.slice():G}function m(v){Wk.isUndefined(r[v])?Wk.isUndefined(t[v])||(s[v]=f(void 0,t[v])):s[v]=f(t[v],r[v])}Wk.forEach(a,function(G){Wk.isUndefined(r[G])||(s[G]=f(void 0,r[G]))}),Wk.forEach(o,m),Wk.forEach(g,function(G){Wk.isUndefined(r[G])?Wk.isUndefined(t[G])||(s[G]=f(void 0,t[G])):s[G]=f(void 0,r[G])}),Wk.forEach(p,function(G){G in r?s[G]=f(t[G],r[G]):G in t&&(s[G]=f(void 0,t[G]))});var y=a.concat(o).concat(g).concat(p),B=Object.keys(t).concat(Object.keys(r)).filter(function(G){return y.indexOf(G)===-1});return Wk.forEach(B,m),s}});var Vpi=z((X2l,Lpi)=>{"use strict";var Fpi=hIr(),vIr={};["object","boolean","number","function","string","symbol"].forEach(function(e,t){vIr[e]=function(s){return typeof s===e||"a"+(t<1?"n ":" ")+e}});var Gpi={},a2a=Fpi.version.split(".");function Zpi(e,t){for(var r=t?t.split("."):a2a,s=e.split("."),a=0;a<3;a++){if(r[a]>s[a])return!0;if(r[a]0;){var o=s[a],g=t[o];if(g){var p=e[o],f=p===void 0||g(p,o,e);if(f!==!0)throw new TypeError("option "+o+" must be "+f);continue}if(r!==!0)throw Error("Unknown option "+o)}}Lpi.exports={isOlderVersion:Zpi,assertOptions:c2a,validators:vIr}});var Ypi=z((J2l,Qpi)=>{"use strict";var Opi=UF(),l2a=ght(),Wpi=Xdi(),Ppi=xpi(),_ht=BIr(),Mpi=Vpi(),JSe=Mpi.validators;function BHe(e){this.defaults=e,this.interceptors={request:new Wpi,response:new Wpi}}BHe.prototype.request=function(t){typeof t=="string"?(t=arguments[1]||{},t.url=arguments[0]):t=t||{},t=_ht(this.defaults,t),t.method?t.method=t.method.toLowerCase():this.defaults.method?t.method=this.defaults.method.toLowerCase():t.method="get";var r=t.transitional;r!==void 0&&Mpi.assertOptions(r,{silentJSONParsing:JSe.transitional(JSe.boolean,"1.0.0"),forcedJSONParsing:JSe.transitional(JSe.boolean,"1.0.0"),clarifyTimeoutError:JSe.transitional(JSe.boolean,"1.0.0")},!1);var s=[],a=!0;this.interceptors.request.forEach(function(v){typeof v.runWhen=="function"&&v.runWhen(t)===!1||(a=a&&v.synchronous,s.unshift(v.fulfilled,v.rejected))});var o=[];this.interceptors.response.forEach(function(v){o.push(v.fulfilled,v.rejected)});var g;if(!a){var p=[Ppi,void 0];for(Array.prototype.unshift.apply(p,s),p=p.concat(o),g=Promise.resolve(t);p.length;)g=g.then(p.shift(),p.shift());return g}for(var f=t;s.length;){var m=s.shift(),y=s.shift();try{f=m(f)}catch(B){y(B);break}}try{g=Ppi(f)}catch(B){return Promise.reject(B)}for(;o.length;)g=g.then(o.shift(),o.shift());return g};BHe.prototype.getUri=function(t){return t=_ht(this.defaults,t),l2a(t.url,t.params,t.paramsSerializer).replace(/^\?/,"")};Opi.forEach(["delete","get","head","options"],function(t){BHe.prototype[t]=function(r,s){return this.request(_ht(s||{},{method:t,url:r,data:(s||{}).data}))}});Opi.forEach(["post","put","patch"],function(t){BHe.prototype[t]=function(r,s,a){return this.request(_ht(a||{},{method:t,url:r,data:s}))}});Qpi.exports=BHe});var wIr=z((U2l,Hpi)=>{"use strict";function SIr(e){this.message=e}SIr.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")};SIr.prototype.__CANCEL__=!0;Hpi.exports=SIr});var Jpi=z((K2l,Xpi)=>{"use strict";var u2a=wIr();function yht(e){if(typeof e!="function")throw new TypeError("executor must be a function.");var t;this.promise=new Promise(function(a){t=a});var r=this;e(function(a){r.reason||(r.reason=new u2a(a),t(r.reason))})}yht.prototype.throwIfRequested=function(){if(this.reason)throw this.reason};yht.source=function(){var t,r=new yht(function(a){t=a});return{token:r,cancel:t}};Xpi.exports=yht});var Kpi=z((j2l,Upi)=>{"use strict";Upi.exports=function(t){return function(s){return t.apply(null,s)}}});var zpi=z((z2l,jpi)=>{"use strict";jpi.exports=function(t){return typeof t=="object"&&t.isAxiosError===!0}});var efi=z((q2l,TIr)=>{"use strict";var qpi=UF(),g2a=zfr(),bht=Ypi(),A2a=BIr(),d2a=hht();function $pi(e){var t=new bht(e),r=g2a(bht.prototype.request,t);return qpi.extend(r,bht.prototype,t),qpi.extend(r,t),r}var _5=$pi(d2a);_5.Axios=bht;_5.create=function(t){return $pi(A2a(_5.defaults,t))};_5.Cancel=wIr();_5.CancelToken=Jpi();_5.isCancel=yIr();_5.all=function(t){return Promise.all(t)};_5.spread=Kpi();_5.isAxiosError=zpi();TIr.exports=_5;TIr.exports.default=_5});var rfi=z(($2l,tfi)=>{tfi.exports=efi()});var ifi=z((eBl,nfi)=>{var USe=1e3,KSe=USe*60,jSe=KSe*60,zfe=jSe*24,p2a=zfe*7,f2a=zfe*365.25;nfi.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return I2a(e);if(r==="number"&&isFinite(e))return t.long?m2a(e):C2a(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function I2a(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),s=(t[2]||"ms").toLowerCase();switch(s){case"years":case"year":case"yrs":case"yr":case"y":return r*f2a;case"weeks":case"week":case"w":return r*p2a;case"days":case"day":case"d":return r*zfe;case"hours":case"hour":case"hrs":case"hr":case"h":return r*jSe;case"minutes":case"minute":case"mins":case"min":case"m":return r*KSe;case"seconds":case"second":case"secs":case"sec":case"s":return r*USe;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function C2a(e){var t=Math.abs(e);return t>=zfe?Math.round(e/zfe)+"d":t>=jSe?Math.round(e/jSe)+"h":t>=KSe?Math.round(e/KSe)+"m":t>=USe?Math.round(e/USe)+"s":e+"ms"}function m2a(e){var t=Math.abs(e);return t>=zfe?Eht(e,t,zfe,"day"):t>=jSe?Eht(e,t,jSe,"hour"):t>=KSe?Eht(e,t,KSe,"minute"):t>=USe?Eht(e,t,USe,"second"):e+" ms"}function Eht(e,t,r,s){var a=t>=r*1.5;return Math.round(e/r)+" "+s+(a?"s":"")}});var NIr=z((tBl,sfi)=>{function h2a(e){r.debug=r,r.default=r,r.coerce=f,r.disable=o,r.enable=a,r.enabled=g,r.humanize=ifi(),r.destroy=m,Object.keys(e).forEach(y=>{r[y]=e[y]}),r.names=[],r.skips=[],r.formatters={};function t(y){let B=0;for(let v=0;v{if(pe==="%%")return"%";ge++;let be=r.formatters[he];if(typeof be=="function"){let Te=X[ge];pe=be.call(U,Te),X.splice(ge,1),ge--}return pe}),r.formatArgs.call(U,X),(U.log||r.log).apply(U,X)}return O.namespace=y,O.useColors=r.useColors(),O.color=r.selectColor(y),O.extend=s,O.destroy=r.destroy,Object.defineProperty(O,"enabled",{enumerable:!0,configurable:!1,get:()=>v!==null?v:(G!==r.namespaces&&(G=r.namespaces,T=r.enabled(y)),T),set:X=>{v=X}}),typeof r.init=="function"&&r.init(O),O}function s(y,B){let v=r(this.namespace+(typeof B>"u"?":":B)+y);return v.log=this.log,v}function a(y){r.save(y),r.namespaces=y,r.names=[],r.skips=[];let B,v=(typeof y=="string"?y:"").split(/[\s,]+/),G=v.length;for(B=0;B"-"+B)].join(",");return r.enable(""),y}function g(y){if(y[y.length-1]==="*")return!0;let B,v;for(B=0,v=r.skips.length;B{r3.formatArgs=y2a;r3.save=b2a;r3.load=E2a;r3.useColors=_2a;r3.storage=B2a();r3.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();r3.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function _2a(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function y2a(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+Bht.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,s=0;e[0].replace(/%[a-zA-Z%]/g,a=>{a!=="%%"&&(r++,a==="%c"&&(s=r))}),e.splice(s,0,t)}r3.log=console.debug||console.log||(()=>{});function b2a(e){try{e?r3.storage.setItem("debug",e):r3.storage.removeItem("debug")}catch{}}function E2a(){let e;try{e=r3.storage.getItem("debug")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function B2a(){try{return localStorage}catch{}}Bht.exports=NIr()(r3);var{formatters:v2a}=Bht.exports;v2a.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var cfi=z((KD,Sht)=>{var S2a=Dt("tty"),vht=Dt("util");KD.init=k2a;KD.log=R2a;KD.formatArgs=T2a;KD.save=D2a;KD.load=x2a;KD.useColors=w2a;KD.destroy=vht.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");KD.colors=[6,2,3,4,5,1];try{let e=Dt("supports-color");e&&(e.stderr||e).level>=2&&(KD.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}KD.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(a,o)=>o.toUpperCase()),s=process.env[t];return/^(yes|on|true|enabled)$/i.test(s)?s=!0:/^(no|off|false|disabled)$/i.test(s)?s=!1:s==="null"?s=null:s=Number(s),e[r]=s,e},{});function w2a(){return"colors"in KD.inspectOpts?!!KD.inspectOpts.colors:S2a.isatty(process.stderr.fd)}function T2a(e){let{namespace:t,useColors:r}=this;if(r){let s=this.color,a="\x1B[3"+(s<8?s:"8;5;"+s),o=` ${a};1m${t} \x1B[0m`;e[0]=o+e[0].split(` +`}qI.getNewLineChars=Zba;async function Xgi(e){let t=await Yfe.promises.readFile(e,"utf-8");return JSON.parse(t)}qI.readJson=Xgi;async function Lba(e,t){try{await Yfe.promises.mkdir(yY.dirname(e),{recursive:!0})}catch{}await Yfe.promises.writeFile(e,JSON.stringify(t,null,2),"utf-8")}qI.writeJson=Lba;async function Vba(e){return Yfe.promises.readFile(e,"utf-8")}qI.readTextFile=Vba;async function Wba(e,t){try{await Yfe.promises.mkdir(yY.dirname(e),{recursive:!0})}catch{}await Yfe.promises.writeFile(e,t,"utf-8")}qI.writeTextFile=Wba});var gfr=z(DQ=>{"use strict";Object.defineProperty(DQ,"__esModule",{value:!0});DQ.getNpmPackageInfo=DQ.getLatestPackageVersion=DQ.getPackageMeta=DQ.JSR_URL=void 0;DQ.JSR_URL=process.env.JSR_URL??"https://jsr.io";async function Jgi(e){let t=`${DQ.JSR_URL}/@${e.scope}/${e.name}/meta.json`,r=await fetch(t);if(!r.ok)throw await r.body?.cancel(),new Error(`Received ${r.status} from ${t}`);return await r.json()}DQ.getPackageMeta=Jgi;async function Pba(e){let t=await Jgi(e),{latest:r}=t;if(r===void 0)throw new Error(`Unable to find latest version of ${e}`);return r}DQ.getLatestPackageVersion=Pba;async function Oba(e){let t=new URL(`${DQ.JSR_URL}/@jsr/${e.scope}__${e.name}`),r=`${t.protocol}//npm.${t.host}${t.pathname}`,s=await fetch(r);if(!s.ok)throw await s.body?.cancel(),new Error(`Received ${s.status} from ${t}`);return await s.json()}DQ.getNpmPackageInfo=Oba});var dfr=z((qbl,Ugi)=>{var Afr=new Intl.Collator(0,{numeric:1}).compare;Ugi.exports=function(e,t,r){return e=e.split("."),t=t.split("."),Afr(e[0],t[0])||Afr(e[1],t[1])||(t[2]=t.slice(2).join("."),r=/[.-]/.test(e[2]=e.slice(2).join(".")),r==/[.-]/.test(t[2])?Afr(e[2],t[2]):r?-1:1)}});var jgi=z(Qk=>{"use strict";var Qba=Qk&&Qk.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Mba=Qk&&Qk.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Hba=Qk&&Qk.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Qba(t,e,r);return Mba(t,e),t},Yba=Qk&&Qk.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Qk,"__esModule",{value:!0});Qk.getPkgManager=Qk.Bun=Qk.YarnBerry=void 0;var Xba=gfr(),Xfe=Umt(),Jba=Hba(Ymt()),Uba=Yba(dfr());async function f9(e,t,r){return console.log(Jba.dim(`$ ${e} ${t.join(" ")}`)),(0,Xfe.exec)(e,t,r)}function Kgi(e){return e==="dev"?"--save-dev":e==="optional"?"--save-optional":""}function Ifr(e){return e==="dev"?"--dev":e==="optional"?"--optional":""}function cHe(e){return e.map(t=>`@${t.scope}/${t.name}@npm:${t.toNpmPackage()}`)}async function Kba(e){let r=(await(0,Xfe.exec)("yarn",["--version"],e,void 0,!0)).stdout;return r?r.startsWith("1.")?((0,Xfe.logDebug)("Detected yarn classic from version"),!1):((0,Xfe.logDebug)("Detected yarn berry from version"),!0):((0,Xfe.logDebug)("Unable to detect yarn version, assuming classic"),!1)}var pfr=class{cwd;constructor(t){this.cwd=t}async install(t,r){let s=["install"],a=Kgi(r.mode);a!==""&&s.push(a),s.push(...cHe(t)),await f9("npm",s,this.cwd)}async remove(t){await f9("npm",["remove",...t.map(r=>r.toString())],this.cwd)}async runScript(t){await f9("npm",["run",t],this.cwd)}},Kmt=class{cwd;constructor(t){this.cwd=t}async install(t,r){let s=["add"],a=Ifr(r.mode);a!==""&&s.push(a),s.push(...cHe(t)),await f9("yarn",s,this.cwd)}async remove(t){await f9("yarn",["remove",...t.map(r=>r.toString())],this.cwd)}async runScript(t){await f9("yarn",[t],this.cwd)}},jmt=class extends Kmt{async install(t,r){let s=["add"],a=Ifr(r.mode);a!==""&&s.push(a),s.push(...await this.toPackageArgs(t)),await f9("yarn",s,this.cwd)}async setConfigValue(t,r){await f9("yarn",["config","set",t,r],this.cwd)}async toPackageArgs(t){return await Promise.all(t.map(async r=>{r.version??=`^${await(0,Xba.getLatestPackageVersion)(r)}`})),cHe(t)}};Qk.YarnBerry=jmt;var ffr=class{cwd;constructor(t){this.cwd=t}async install(t,r){let s=["add"],a=Kgi(r.mode);a!==""&&s.push(a),s.push(...cHe(t)),await f9("pnpm",s,this.cwd)}async remove(t){await f9("pnpm",["remove",...t.map(r=>r.toString())],this.cwd)}async runScript(t){await f9("pnpm",[t],this.cwd)}},zmt=class{cwd;constructor(t){this.cwd=t}async install(t,r){let s=["add"],a=Ifr(r.mode);a!==""&&s.push(a),s.push(...cHe(t)),await f9("bun",s,this.cwd)}async remove(t){await f9("bun",["remove",...t.map(r=>r.toString())],this.cwd)}async runScript(t){await f9("bun",["run",t],this.cwd)}async isNpmrcSupported(){let r=(await(0,Xfe.exec)("bun",["--version"],this.cwd,void 0,!0)).stdout;return r!=null&&(0,Uba.default)(r,"1.1.18")>=0}};Qk.Bun=zmt;function jba(e){return e.startsWith("pnpm/")?"pnpm":e.startsWith("yarn/")?"yarn":e.startsWith("npm/")?"npm":e.startsWith("bun/")?"bun":null}async function zba(e,t){let r=process.env.npm_config_user_agent,s=r!==void 0?jba(r):null,{projectDir:a,pkgManagerName:o,root:g}=await(0,Xfe.findProjectDir)(e),p=g||a,f=t||o||s||"npm",m;return f==="yarn"?m=await Kba(a)?new jmt(a):new Kmt(a):f==="pnpm"?m=new ffr(a):f==="bun"?m=new zmt(a):m=new pfr(a),{root:p,pkgManager:m}}Qk.getPkgManager=zba});var rAi=z((tEl,tAi)=>{var xQ=xt("fs"),qba=xt("util"),HSe=xt("path"),Efr=xt("events"),zgi=xt("zlib"),eAi=xt("stream"),wu={LOCHDR:30,LOCSIG:67324752,LOCVER:4,LOCFLG:6,LOCHOW:8,LOCTIM:10,LOCCRC:14,LOCSIZ:18,LOCLEN:22,LOCNAM:26,LOCEXT:28,EXTSIG:134695760,EXTHDR:16,EXTCRC:4,EXTSIZ:8,EXTLEN:12,CENHDR:46,CENSIG:33639248,CENVEM:4,CENVER:6,CENFLG:8,CENHOW:10,CENTIM:12,CENCRC:16,CENSIZ:20,CENLEN:24,CENNAM:28,CENEXT:30,CENCOM:32,CENDSK:34,CENATT:36,CENATX:38,CENOFF:42,ENDHDR:22,ENDSIG:101010256,ENDSIGFIRST:80,ENDSUB:8,ENDTOT:10,ENDSIZ:12,ENDOFF:16,ENDCOM:20,MAXFILECOMMENT:65535,ENDL64HDR:20,ENDL64SIG:117853008,ENDL64SIGFIRST:80,ENDL64OFS:8,END64HDR:56,END64SIG:101075792,END64SIGFIRST:80,END64SUB:24,END64TOT:32,END64SIZ:40,END64OFF:48,STORED:0,SHRUNK:1,REDUCED1:2,REDUCED2:3,REDUCED3:4,REDUCED4:5,IMPLODED:6,DEFLATED:8,ENHANCED_DEFLATED:9,PKWARE:10,BZIP2:12,LZMA:14,IBM_TERSE:18,IBM_LZ77:19,FLG_ENC:0,FLG_COMP1:1,FLG_COMP2:2,FLG_DESC:4,FLG_ENH:8,FLG_STR:16,FLG_LNG:1024,FLG_MSK:4096,FLG_ENTRY_ENC:1,EF_ID:0,EF_SIZE:2,ID_ZIP64:1,ID_AVINFO:7,ID_PFS:8,ID_OS2:9,ID_NTFS:10,ID_OPENVMS:12,ID_UNIX:13,ID_FORK:14,ID_PATCH:15,ID_X509_PKCS7:20,ID_X509_CERTID_F:21,ID_X509_CERTID_C:22,ID_STRONGENC:23,ID_RECORD_MGT:24,ID_X509_PKCS7_RL:25,ID_IBM1:101,ID_IBM2:102,ID_POSZIP:18064,EF_ZIP64_OR_32:4294967295,EF_ZIP64_OR_16:65535},zse=function(e){let t,r,s,a,o,g,f=this,m=e.storeEntries!==!1?{}:null,y=e.file,B=e.nameEncoding?new TextDecoder(e.nameEncoding):null;v();function v(){e.fd?(t=e.fd,k()):xQ.open(y,"r",(Ue,Je)=>{if(Ue)return f.emit("error",Ue);t=Je,k()})}function k(){xQ.fstat(t,(Ue,Je)=>{if(Ue)return f.emit("error",Ue);r=Je.size,s=e.chunkSize||Math.round(r/1e3),s=Math.max(Math.min(s,Math.min(128*1024,r)),Math.min(1024,r)),O()})}function T(Ue,Je){if(Ue||!Je)return f.emit("error",Ue||new Error("Archive read error"));let Xe=a.lastPos,ft=Xe-a.win.position,Gt=a.win.buffer,er=a.minPos;for(;--Xe>=er&&--ft>=0;)if(Gt.length-ft>=4&&Gt[ft]===a.firstByte&&Gt.readUInt32LE(ft)===a.sig){a.lastBufferPosition=ft,a.lastBytesRead=Je,a.complete();return}if(Xe===er)return f.emit("error",new Error("Bad archive"));if(a.lastPos=Xe+1,a.chunkSize*=2,Xe<=er)return f.emit("error",new Error("Bad archive"));let Ur=Math.min(a.chunkSize,Xe-er);a.win.expandLeft(Ur,T)}function O(){let Ue=Math.min(wu.ENDHDR+wu.MAXFILECOMMENT,r);a={win:new qmt(t),totalReadLength:Ue,minPos:r-Ue,lastPos:r,chunkSize:Math.min(1024,s),firstByte:wu.ENDSIGFIRST,sig:wu.ENDSIG,complete:X},a.win.read(r-a.chunkSize,a.chunkSize,T)}function X(){let Ue=a.win.buffer,Je=a.lastBufferPosition;try{o=new Cfr,o.read(Ue.slice(Je,Je+wu.ENDHDR)),o.headerOffset=a.win.position+Je,o.commentLength?f.comment=Ue.slice(Je+wu.ENDHDR,Je+wu.ENDHDR+o.commentLength).toString():f.comment=null,f.entriesCount=o.volumeEntries,f.centralDirectory=o,o.volumeEntries===wu.EF_ZIP64_OR_16&&o.totalEntries===wu.EF_ZIP64_OR_16||o.size===wu.EF_ZIP64_OR_32||o.offset===wu.EF_ZIP64_OR_32?U():(a={},ge())}catch(Xe){f.emit("error",Xe)}}function U(){let Ue=wu.ENDL64HDR;a.lastBufferPosition>Ue?(a.lastBufferPosition-=Ue,le()):(a={win:a.win,totalReadLength:Ue,minPos:a.win.position-Ue,lastPos:a.win.position,chunkSize:a.chunkSize,firstByte:wu.ENDL64SIGFIRST,sig:wu.ENDL64SIG,complete:le},a.win.read(a.lastPos-a.chunkSize,a.chunkSize,T))}function le(){let Ue=a.win.buffer,Je=new mfr;Je.read(Ue.slice(a.lastBufferPosition,a.lastBufferPosition+wu.ENDL64HDR));let Xe=r-Je.headerOffset;a={win:a.win,totalReadLength:Xe,minPos:Je.headerOffset,lastPos:a.lastPos,chunkSize:a.chunkSize,firstByte:wu.END64SIGFIRST,sig:wu.END64SIG,complete:ae},a.win.read(r-a.chunkSize,a.chunkSize,T)}function ae(){let Ue=a.win.buffer,Je=new hfr;Je.read(Ue.slice(a.lastBufferPosition,a.lastBufferPosition+wu.END64HDR)),f.centralDirectory.volumeEntries=Je.volumeEntries,f.centralDirectory.totalEntries=Je.totalEntries,f.centralDirectory.size=Je.size,f.centralDirectory.offset=Je.offset,f.entriesCount=Je.volumeEntries,a={},ge()}function ge(){a={win:new qmt(t),pos:o.offset,chunkSize:s,entriesLeft:o.volumeEntries},a.win.read(a.pos,Math.min(s,r-a.pos),fe)}function fe(Ue,Je){if(Ue||!Je)return f.emit("error",Ue||new Error("Entries read error"));let Xe=a.pos-a.win.position,ft=a.entry,Gt=a.win.buffer,er=Gt.length;try{for(;a.entriesLeft>0;){ft||(ft=new _fr,ft.readHeader(Gt,Xe),ft.headerOffset=a.win.position+Xe,a.entry=ft,a.pos+=wu.CENHDR,Xe+=wu.CENHDR);let Ur=ft.fnameLen+ft.extraLen+ft.comLen,Ot=Ur+(a.entriesLeft>1?wu.CENHDR:0);if(er-Xe{if(Xe)return Je(Xe);let Gt=he(ft),er=new yfr(t,Gt,ft.compressedSize);if(ft.method!==wu.STORED)if(ft.method===wu.DEFLATED)er=er.pipe(zgi.createInflateRaw());else return Je(new Error("Unknown compression method: "+ft.method));be(ft)&&(er=er.pipe(new bfr(er,ft.crc,ft.size))),Je(null,er)},!1)},this.entryDataSync=function(Ue){let Je=null;if(this.openEntry(Ue,(ft,Gt)=>{Je=ft,Ue=Gt},!0),Je)throw Je;let Xe=Buffer.alloc(Ue.compressedSize);if(new Kse(t,Xe,0,Ue.compressedSize,he(Ue),ft=>{Je=ft}).read(!0),Je)throw Je;if(Ue.method!==wu.STORED)if(Ue.method===wu.DEFLATED||Ue.method===wu.ENHANCED_DEFLATED)Xe=zgi.inflateRawSync(Xe);else throw new Error("Unknown compression method: "+Ue.method);if(Xe.length!==Ue.size)throw new Error("Invalid size");return be(Ue)&&new $mt(Ue.crc,Ue.size).data(Xe),Xe},this.openEntry=function(Ue,Je,Xe){if(typeof Ue=="string"&&(pe(),Ue=m[Ue],!Ue))return Je(new Error("Entry not found"));if(!Ue.isFile)return Je(new Error("Entry is not file"));if(!t)return Je(new Error("Archive closed"));let ft=Buffer.alloc(wu.LOCHDR);new Kse(t,ft,0,ft.length,Ue.offset,Gt=>{if(Gt)return Je(Gt);let er;try{Ue.readDataHeader(ft),Ue.encrypted&&(er=new Error("Entry encrypted"))}catch(Ur){er=Ur}Je(er,Ue)}).read(Xe)};function he(Ue){return Ue.offset+wu.LOCHDR+Ue.fnameLen+Ue.extraLen}function be(Ue){return(Ue.flags&8)!==8}function Te(Ue,Je,Xe){f.stream(Ue,(ft,Gt)=>{if(ft)Xe(ft);else{let er,Ur;Gt.on("error",Ot=>{Ur=Ot,er&&(Gt.unpipe(er),er.close(()=>{Xe(Ot)}))}),xQ.open(Je,"w",(Ot,dr)=>{if(Ot)return Xe(Ot);if(Ur){xQ.close(t,()=>{Xe(Ur)});return}er=xQ.createWriteStream(Je,{fd:dr}),er.on("finish",()=>{f.emit("extract",Ue,Je),Ur||Xe()}),Gt.pipe(er)})}})}function ke(Ue,Je,Xe){if(!Je.length)return Xe();let ft=Je.shift();ft=HSe.join(Ue,HSe.join(...ft)),xQ.mkdir(ft,{recursive:!0},Gt=>{if(Gt&&Gt.code!=="EEXIST")return Xe(Gt);ke(Ue,Je,Xe)})}function x(Ue,Je,Xe,ft,Gt){if(!Xe.length)return ft(null,Gt);let er=Xe.shift(),Ur=HSe.join(Ue,er.name.replace(Je,""));Te(er,Ur,Ot=>{if(Ot)return ft(Ot,Gt);x(Ue,Je,Xe,ft,Gt+1)})}this.extract=function(Ue,Je,Xe){let ft=Ue||"";if(typeof Ue=="string"&&(Ue=this.entry(Ue),Ue?ft=Ue.name:ft.length&&ft[ft.length-1]!=="/"&&(ft+="/")),!Ue||Ue.isDirectory){let Gt=[],er=[],Ur={};for(let Ot in m)if(Object.prototype.hasOwnProperty.call(m,Ot)&&Ot.lastIndexOf(ft,0)===0){let dr=Ot.replace(ft,""),Ar=m[Ot];if(Ar.isFile&&(Gt.push(Ar),dr=HSe.dirname(dr)),dr&&!Ur[dr]&&dr!=="."){Ur[dr]=!0;let or=dr.split("/").filter(Fr=>Fr);for(or.length&&er.push(or);or.length>1;){or=or.slice(0,or.length-1);let Fr=or.join("/");if(Ur[Fr]||Fr===".")break;Ur[Fr]=!0,er.push(or)}}}er.sort((Ot,dr)=>Ot.length-dr.length),er.length?ke(Je,er,Ot=>{Ot?Xe(Ot):x(Je,ft,Gt,Xe,0)}):x(Je,ft,Gt,Xe,0)}else xQ.stat(Je,(Gt,er)=>{er&&er.isDirectory()?Te(Ue,HSe.join(Je,HSe.basename(Ue.name)),Xe):Te(Ue,Je,Xe)})},this.close=function(Ue){g||!t?(g=!0,Ue&&Ue()):(g=!0,xQ.close(t,Je=>{t=null,Ue&&Ue(Je)}))};let et=Efr.EventEmitter.prototype.emit;this.emit=function(...Ue){if(!g)return et.call(this,...Ue)}};zse.setFs=function(e){xQ=e};zse.debugLog=(...e)=>{zse.debug&&console.log(...e)};qba.inherits(zse,Efr.EventEmitter);var Use=Symbol("zip");zse.async=class extends Efr.EventEmitter{constructor(t){super();let r=new zse(t);r.on("entry",s=>this.emit("entry",s)),r.on("extract",(s,a)=>this.emit("extract",s,a)),this[Use]=new Promise((s,a)=>{r.on("ready",()=>{r.removeListener("error",a),s(r)}),r.on("error",a)})}get entriesCount(){return this[Use].then(t=>t.entriesCount)}get comment(){return this[Use].then(t=>t.comment)}async entry(t){return(await this[Use]).entry(t)}async entries(){return(await this[Use]).entries()}async stream(t){let r=await this[Use];return new Promise((s,a)=>{r.stream(t,(o,g)=>{o?a(o):s(g)})})}async entryData(t){let r=await this.stream(t);return new Promise((s,a)=>{let o=[];r.on("data",g=>o.push(g)),r.on("end",()=>{s(Buffer.concat(o))}),r.on("error",g=>{r.removeAllListeners("end"),a(g)})})}async extract(t,r){let s=await this[Use];return new Promise((a,o)=>{s.extract(t,r,(g,p)=>{g?o(g):a(p)})})}async close(){let t=await this[Use];return new Promise((r,s)=>{t.close(a=>{a?s(a):r()})})}};var Cfr=class{read(t){if(t.length!==wu.ENDHDR||t.readUInt32LE(0)!==wu.ENDSIG)throw new Error("Invalid central directory");this.volumeEntries=t.readUInt16LE(wu.ENDSUB),this.totalEntries=t.readUInt16LE(wu.ENDTOT),this.size=t.readUInt32LE(wu.ENDSIZ),this.offset=t.readUInt32LE(wu.ENDOFF),this.commentLength=t.readUInt16LE(wu.ENDCOM)}},mfr=class{read(t){if(t.length!==wu.ENDL64HDR||t.readUInt32LE(0)!==wu.ENDL64SIG)throw new Error("Invalid zip64 central directory locator");this.headerOffset=jse(t,wu.ENDSUB)}},hfr=class{read(t){if(t.length!==wu.END64HDR||t.readUInt32LE(0)!==wu.END64SIG)throw new Error("Invalid central directory");this.volumeEntries=jse(t,wu.END64SUB),this.totalEntries=jse(t,wu.END64TOT),this.size=jse(t,wu.END64SIZ),this.offset=jse(t,wu.END64OFF)}},_fr=class{readHeader(t,r){if(t.length=8&&this.size===wu.EF_ZIP64_OR_32&&(this.size=jse(t,r),r+=8,s-=8),s>=8&&this.compressedSize===wu.EF_ZIP64_OR_32&&(this.compressedSize=jse(t,r),r+=8,s-=8),s>=8&&this.offset===wu.EF_ZIP64_OR_32&&(this.offset=jse(t,r),r+=8,s-=8),s>=4&&this.diskStart===wu.EF_ZIP64_OR_16&&(this.diskStart=t.readUInt32LE(r))}get encrypted(){return(this.flags&wu.FLG_ENTRY_ENC)===wu.FLG_ENTRY_ENC}get isFile(){return!this.isDirectory}},Kse=class{constructor(t,r,s,a,o,g){this.fd=t,this.buffer=r,this.offset=s,this.length=a,this.position=o,this.callback=g,this.bytesRead=0,this.waiting=!1}read(t){zse.debugLog("read",this.position,this.bytesRead,this.length,this.offset),this.waiting=!0;let r;if(t){let s=0;try{s=xQ.readSync(this.fd,this.buffer,this.offset+this.bytesRead,this.length-this.bytesRead,this.position+this.bytesRead)}catch(a){r=a}this.readCallback(t,r,r?s:null)}else xQ.read(this.fd,this.buffer,this.offset+this.bytesRead,this.length-this.bytesRead,this.position+this.bytesRead,this.readCallback.bind(this,t))}readCallback(t,r,s){if(typeof s=="number"&&(this.bytesRead+=s),r||!s||this.bytesRead===this.length)return this.waiting=!1,this.callback(r,this.bytesRead);this.read(t)}},qmt=class{constructor(t){this.position=0,this.buffer=Buffer.alloc(0),this.fd=t,this.fsOp=null}checkOp(){if(this.fsOp&&this.fsOp.waiting)throw new Error("Operation in progress")}read(t,r,s){this.checkOp(),this.buffer.length{this.emit("error",a)})}_transform(t,r,s){let a;try{this.verify.data(t)}catch(o){a=o}s(a,t)}},$mt=class e{constructor(t,r){this.crc=t,this.size=r,this.state={crc:-1,size:0}}data(t){let r=e.getCrcTable(),s=this.state.crc,a=0,o=t.length;for(;--o>=0;)s=r[(s^t[a++])&255]^s>>>8;if(this.state.crc=s,this.state.size+=t.length,this.state.size>=this.size){let g=Buffer.alloc(4);if(g.writeInt32LE(~this.state.crc&4294967295,0),s=g.readUInt32LE(0),s!==this.crc)throw new Error("Invalid CRC");if(this.state.size!==this.size)throw new Error("Invalid size")}}static getCrcTable(){let t=e.crcTable;if(!t){e.crcTable=t=[];let r=Buffer.alloc(4);for(let s=0;s<256;s++){let a=s;for(let o=8;--o>=0;)a&1?a=3988292384^a>>>1:a=a>>>1;a<0&&(r.writeInt32LE(a,0),a=r.readUInt32LE(0)),t[s]=a}}return t}};function qgi(e,t){let r=$gi(e,16),s=$gi(t,16),a={h:parseInt(r.slice(0,5).join(""),2),m:parseInt(r.slice(5,11).join(""),2),s:parseInt(r.slice(11,16).join(""),2)*2,Y:parseInt(s.slice(0,7).join(""),2)+1980,M:parseInt(s.slice(7,11).join(""),2),D:parseInt(s.slice(11,16).join(""),2)},o=[a.Y,a.M,a.D].join("-")+" "+[a.h,a.m,a.s].join(":")+" GMT+0";return new Date(o).getTime()}function $gi(e,t){let r=(e>>>0).toString(2);for(;r.length{"use strict";var $ba=kQ&&kQ.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),eEa=kQ&&kQ.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Jfe=kQ&&kQ.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&$ba(t,e,r);return eEa(t,e),t};Object.defineProperty(kQ,"__esModule",{value:!0});kQ.downloadDeno=kQ.getDenoDownloadUrl=void 0;var tEa=Jfe(xt("node:os")),lHe=Jfe(xt("node:fs")),Bfr=Jfe(xt("node:path")),rEa=Jfe(xt("node:util")),nEa=Jfe(xt("node:stream")),vfr=Jfe(Ymt()),iEa=Jfe(rAi()),sEa=rEa.promisify(nEa.finished),oEa="https://dl.deno.land/canary-latest.txt",aEa="https://dl.deno.land/release-latest.txt",nAi={"darwin arm64":"deno-aarch64-apple-darwin","darwin x64":"deno-x86_64-apple-darwin","linux arm64":"deno-aarch64-unknown-linux-gnu","linux x64":"deno-x86_64-unknown-linux-gnu","win32 x64":"deno-x86_64-pc-windows-msvc"};async function cEa(e){let t=`${process.platform} ${tEa.arch()}`;if(!(t in nAi))throw new Error(`Unsupported platform: ${t}`);let s=nAi[t]+".zip",a=e?oEa:aEa,o=await fetch(a);if(!o.ok)throw await o.body?.cancel(),new Error(`${o.status}: Unable to retrieve ${e?"canary":"release"} version information from ${a}.`);let g=(await o.text()).trim();return{canary:e,url:e?`https://dl.deno.land/canary/${decodeURI(g)}/${s}`:`https://dl.deno.land/release/${decodeURI(g)}/${s}`,filename:s,version:g}}kQ.getDenoDownloadUrl=cEa;async function lEa(e,t){let r=Bfr.dirname(e);await lHe.promises.mkdir(r,{recursive:!0});let s=await fetch(t.url),a=Number(s.headers.get("content-length")??1/0);if(s.body==null)throw new Error("Unexpected empty body");console.log(`Downloading JSR ${t.canary?"canary":"release"} binary...`),await uEa(async o=>{let g=Bfr.join(r,t.filename+".part"),p=lHe.createWriteStream(g,"utf-8");for await(let y of gEa(s.body))o(y.length),p.write(y);p.end(),await sEa(p);let f=Bfr.join(r,t.filename);await lHe.promises.rename(g,f);let m=new iEa.async({file:f});await m.extract(null,r),await m.close(),await lHe.promises.chmod(e,493),await lHe.promises.rm(f)},{max:a})}kQ.downloadDeno=lEa;async function uEa(e,t){let r=0,s=Date.now(),a=0,o=!1,g=AEa(()=>{a=Date.now()-s;let m=String(Math.floor(a/1e3/60)).padStart(2,"0"),y=String(Math.floor(a/1e3)%60).padStart(2,"0"),B=`[${m}:${y}]`,v=`${iAi(r)}/${iAi(t.max)}`,k=process.stdout.columns,T=B;if(k-B.length-v.length+4>10){let O=Math.min(k,50),X=Math.floor(100/t.max*r),U="#".repeat(O/100*X)+">",le=vfr.blue("-".repeat(Math.max(O-U.length,0)));T+=` [${vfr.cyan(U)}${le}] `}T+=vfr.dim(v),process.stdout.isTTY&&(o&&process.stdout.write("\r\x1B[K"),o=!0,process.stdout.write(T))},16),f=await e(m=>{r+=m,g()});return process.stdout.isTTY?process.stdout.write(` +`):console.log("Download completed"),f}async function*gEa(e){let t=e.getReader();try{for(;;){let{done:r,value:s}=await t.read();if(r)return;yield s}}finally{t.releaseLock()}}function iAi(e,t=1){if(Math.abs(e)<1024)return e+" B";let s=["KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"],a=-1,o=10**t;do e/=1024,++a;while(Math.round(Math.abs(e)*o)/o>=1024&&a{r===null&&(e(),r=setTimeout(()=>{r=null},t))}}});var pAi=z(s2=>{"use strict";var dEa=s2&&s2.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),pEa=s2&&s2.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Sfr=s2&&s2.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&dEa(t,e,r);return pEa(t,e),t},fEa=s2&&s2.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(s2,"__esModule",{value:!0});s2.showPackageInfo=s2.runScript=s2.publish=s2.remove=s2.install=s2.setupBunfigToml=s2.setupNpmRc=void 0;var wfr=Sfr(xt("node:path")),Ufe=Sfr(xt("node:fs")),oK=Sfr(Ymt()),gHe=Umt(),uHe=jgi(),oAi=sAi(),aAi=gfr(),IEa=fEa(dfr()),cAi=".npmrc",lAi="bunfig.toml",Tfr="https://npm.jsr.io",uAi=`@jsr:registry=${Tfr} +`,gAi=`[install.scopes] +"@jsr" = "${Tfr}" +`,CEa="npmScopes.jsr.npmRegistryServer";async function eht(e,t){process.stdout.write(e+"...");try{await t(),process.stdout.write(oK.green("ok")+` +`)}catch(r){throw process.stdout.write(oK.red("error")+` +`),r}}async function AAi(e){let t=wfr.join(e,cAi),r=`Setting up ${cAi}`;try{let s=await Ufe.promises.readFile(t,"utf-8");if(!s.includes("@jsr:registry=")){let a=(0,gHe.getNewLineChars)(s),o=s.endsWith(a)?"":a;s+=o+uAi,await eht(r,async()=>{await Ufe.promises.writeFile(t,s)})}}catch(s){if(s instanceof Error&&s.code==="ENOENT")await eht(r,async()=>{await Ufe.promises.writeFile(t,uAi)});else throw s}}s2.setupNpmRc=AAi;async function dAi(e){let t=wfr.join(e,lAi),r=`Setting up ${lAi}`;try{let s=await Ufe.promises.readFile(t,"utf-8");/^"@jsr"\s+=/gm.test(s)||(s+=gAi,await eht(r,async()=>{await Ufe.promises.writeFile(t,s)}))}catch(s){if(s instanceof Error&&s.code==="ENOENT")await eht(r,async()=>{await Ufe.promises.writeFile(t,gAi)});else throw s}}s2.setupBunfigToml=dAi;async function mEa(e,t){let{pkgManager:r,root:s}=await(0,uHe.getPkgManager)(process.cwd(),t.pkgManagerName);e.length>0&&(r instanceof uHe.Bun&&!await r.isNpmrcSupported()?await dAi(s):r instanceof uHe.YarnBerry?await r.setConfigValue(CEa,Tfr):await AAi(s),console.log(`Installing ${oK.cyan(e.join(", "))}...`)),await r.install(e,t)}s2.install=mEa;async function hEa(e,t){let{pkgManager:r}=await(0,uHe.getPkgManager)(process.cwd(),t.pkgManagerName);console.log(`Removing ${oK.cyan(e.join(", "))}...`),await r.remove(e)}s2.remove=hEa;async function _Ea(e,t){let r=await(0,oAi.getDenoDownloadUrl)(t),s=wfr.join(e,r.version,process.platform,process.platform==="win32"?"deno.exe":"deno");if(!await(0,gHe.fileExists)(s)){try{await Ufe.promises.rm(e,{recursive:!0})}catch(a){if(!(a instanceof Error)||a.code!=="ENOENT")throw a}await(0,oAi.downloadDeno)(s,r)}return s}async function yEa(e,t){let r=process.env.DENO_BIN_PATH??await _Ea(t.binFolder,t.canary),s=["publish"],a={...process.env};t.pkgJsonPath!==null&&(s.push("--unstable-bare-node-builtins","--unstable-sloppy-imports","--unstable-byonm","--no-check"),a.DENO_DISABLE_PEDANTIC_NODE_WARNINGS="true"),s.push(...t.publishArgs.filter(o=>o!=="--verbose")),await(0,gHe.exec)(r,s,e,a)}s2.publish=yEa;async function bEa(e,t,r){let{pkgManager:s}=await(0,uHe.getPkgManager)(e,r.pkgManagerName);await s.runScript(t)}s2.runScript=bEa;async function EEa(e){let t=gHe.JsrPackage.from(e),r=await(0,aAi.getPackageMeta)(t);if(t.version===null){let f=r.latest;if(f===void 0)throw new Error(`Missing latest version for ${t}`);if(f===null){let m=Object.keys(r.versions);if(m.length===0)throw new Error(`Could not find published version for ${t}`);m.sort(IEa.default),t.version=m[0]}else t.version=f}let s=Object.keys(r.versions).length,a=await(0,aAi.getNpmPackageInfo)(t),o=a.versions[t.version],g=a.time[t.version],p=new Date(g).getTime();console.log(),console.log(oK.cyan(`@${t.scope}/${t.name}@${t.version}`)+` | latest: ${oK.magenta(r.latest??"-")} | versions: ${oK.magenta(s)}`),console.log(a.description),console.log(),console.log(`npm tarball: ${oK.cyan(o.dist.tarball)}`),console.log(`npm integrity: ${oK.cyan(o.dist.integrity)}`),console.log(),console.log(`published: ${oK.magenta((0,gHe.timeAgo)(Date.now()-p))}`)}s2.showPackageInfo=EEa});var IAi=z(GQ=>{"use strict";Object.defineProperty(GQ,"__esModule",{value:!0});GQ.JsrPackageNameError=GQ.JsrPackage=GQ.remove=GQ.publish=GQ.install=void 0;var Nfr=pAi();Object.defineProperty(GQ,"install",{enumerable:!0,get:function(){return Nfr.install}});Object.defineProperty(GQ,"publish",{enumerable:!0,get:function(){return Nfr.publish}});Object.defineProperty(GQ,"remove",{enumerable:!0,get:function(){return Nfr.remove}});var fAi=Umt();Object.defineProperty(GQ,"JsrPackage",{enumerable:!0,get:function(){return fAi.JsrPackage}});Object.defineProperty(GQ,"JsrPackageNameError",{enumerable:!0,get:function(){return fAi.JsrPackageNameError}})});var rIr=z((H2l,Jdi)=>{"use strict";Jdi.exports=function(t,r){return function(){for(var a=new Array(arguments.length),o=0;o{"use strict";var _1a=rIr(),qfe=Object.prototype.toString;function sIr(e){return qfe.call(e)==="[object Array]"}function nIr(e){return typeof e>"u"}function y1a(e){return e!==null&&!nIr(e)&&e.constructor!==null&&!nIr(e.constructor)&&typeof e.constructor.isBuffer=="function"&&e.constructor.isBuffer(e)}function b1a(e){return qfe.call(e)==="[object ArrayBuffer]"}function E1a(e){return typeof FormData<"u"&&e instanceof FormData}function B1a(e){var t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&e.buffer instanceof ArrayBuffer,t}function v1a(e){return typeof e=="string"}function S1a(e){return typeof e=="number"}function Udi(e){return e!==null&&typeof e=="object"}function dht(e){if(qfe.call(e)!=="[object Object]")return!1;var t=Object.getPrototypeOf(e);return t===null||t===Object.prototype}function w1a(e){return qfe.call(e)==="[object Date]"}function T1a(e){return qfe.call(e)==="[object File]"}function N1a(e){return qfe.call(e)==="[object Blob]"}function Kdi(e){return qfe.call(e)==="[object Function]"}function R1a(e){return Udi(e)&&Kdi(e.pipe)}function D1a(e){return typeof URLSearchParams<"u"&&e instanceof URLSearchParams}function x1a(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}function k1a(){return typeof navigator<"u"&&(navigator.product==="ReactNative"||navigator.product==="NativeScript"||navigator.product==="NS")?!1:typeof window<"u"&&typeof document<"u"}function oIr(e,t){if(!(e===null||typeof e>"u"))if(typeof e!="object"&&(e=[e]),sIr(e))for(var r=0,s=e.length;r{"use strict";var KSe=jF();function zdi(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}qdi.exports=function(t,r,s){if(!r)return t;var a;if(s)a=s(r);else if(KSe.isURLSearchParams(r))a=r.toString();else{var o=[];KSe.forEach(r,function(f,m){f===null||typeof f>"u"||(KSe.isArray(f)?m=m+"[]":f=[f],KSe.forEach(f,function(B){KSe.isDate(B)?B=B.toISOString():KSe.isObject(B)&&(B=JSON.stringify(B)),o.push(zdi(m)+"="+zdi(B))}))}),a=o.join("&")}if(a){var g=t.indexOf("#");g!==-1&&(t=t.slice(0,g)),t+=(t.indexOf("?")===-1?"?":"&")+a}return t}});var epi=z((J2l,$di)=>{"use strict";var Z1a=jF();function fht(){this.handlers=[]}fht.prototype.use=function(t,r,s){return this.handlers.push({fulfilled:t,rejected:r,synchronous:s?s.synchronous:!1,runWhen:s?s.runWhen:null}),this.handlers.length-1};fht.prototype.eject=function(t){this.handlers[t]&&(this.handlers[t]=null)};fht.prototype.forEach=function(t){Z1a.forEach(this.handlers,function(s){s!==null&&t(s)})};$di.exports=fht});var rpi=z((U2l,tpi)=>{"use strict";var L1a=jF();tpi.exports=function(t,r){L1a.forEach(t,function(a,o){o!==r&&o.toUpperCase()===r.toUpperCase()&&(t[r]=a,delete t[o])})}});var Iht=z((K2l,npi)=>{"use strict";npi.exports=function(t,r,s,a,o){return t.config=r,s&&(t.code=s),t.request=a,t.response=o,t.isAxiosError=!0,t.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:this.config,code:this.code}},t}});var Cht=z((j2l,ipi)=>{"use strict";var V1a=Iht();ipi.exports=function(t,r,s,a,o){var g=new Error(t);return V1a(g,r,s,a,o)}});var aIr=z((z2l,spi)=>{"use strict";var W1a=Cht();spi.exports=function(t,r,s){var a=s.config.validateStatus;!s.status||!a||a(s.status)?t(s):r(W1a("Request failed with status code "+s.status,s.config,null,s.request,s))}});var api=z((q2l,opi)=>{"use strict";var mht=jF();opi.exports=mht.isStandardBrowserEnv()?function(){return{write:function(r,s,a,o,g,p){var f=[];f.push(r+"="+encodeURIComponent(s)),mht.isNumber(a)&&f.push("expires="+new Date(a).toGMTString()),mht.isString(o)&&f.push("path="+o),mht.isString(g)&&f.push("domain="+g),p===!0&&f.push("secure"),document.cookie=f.join("; ")},read:function(r){var s=document.cookie.match(new RegExp("(^|;\\s*)("+r+")=([^;]*)"));return s?decodeURIComponent(s[3]):null},remove:function(r){this.write(r,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}()});var lpi=z(($2l,cpi)=>{"use strict";cpi.exports=function(t){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(t)}});var gpi=z((eBl,upi)=>{"use strict";upi.exports=function(t,r){return r?t.replace(/\/+$/,"")+"/"+r.replace(/^\/+/,""):t}});var cIr=z((tBl,Api)=>{"use strict";var P1a=lpi(),O1a=gpi();Api.exports=function(t,r){return t&&!P1a(r)?O1a(t,r):r}});var ppi=z((rBl,dpi)=>{"use strict";var lIr=jF(),Q1a=["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"];dpi.exports=function(t){var r={},s,a,o;return t&&lIr.forEach(t.split(` +`),function(p){if(o=p.indexOf(":"),s=lIr.trim(p.substr(0,o)).toLowerCase(),a=lIr.trim(p.substr(o+1)),s){if(r[s]&&Q1a.indexOf(s)>=0)return;s==="set-cookie"?r[s]=(r[s]?r[s]:[]).concat([a]):r[s]=r[s]?r[s]+", "+a:a}}),r}});var Cpi=z((nBl,Ipi)=>{"use strict";var fpi=jF();Ipi.exports=fpi.isStandardBrowserEnv()?function(){var t=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a"),s;function a(o){var g=o;return t&&(r.setAttribute("href",g),g=r.href),r.setAttribute("href",g),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:r.pathname.charAt(0)==="/"?r.pathname:"/"+r.pathname}}return s=a(window.location.href),function(g){var p=fpi.isString(g)?a(g):g;return p.protocol===s.protocol&&p.host===s.host}}():function(){return function(){return!0}}()});var hpi=z((iBl,mpi)=>{"use strict";var hht=jF(),M1a=aIr(),H1a=api(),Y1a=pht(),X1a=cIr(),J1a=ppi(),U1a=Cpi(),uIr=Cht();mpi.exports=function(t){return new Promise(function(s,a){var o=t.data,g=t.headers,p=t.responseType;hht.isFormData(o)&&delete g["Content-Type"];var f=new XMLHttpRequest;if(t.auth){var m=t.auth.username||"",y=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";g.Authorization="Basic "+btoa(m+":"+y)}var B=X1a(t.baseURL,t.url);f.open(t.method.toUpperCase(),Y1a(B,t.params,t.paramsSerializer),!0),f.timeout=t.timeout;function v(){if(f){var T="getAllResponseHeaders"in f?J1a(f.getAllResponseHeaders()):null,O=!p||p==="text"||p==="json"?f.responseText:f.response,X={data:O,status:f.status,statusText:f.statusText,headers:T,config:t,request:f};M1a(s,a,X),f=null}}if("onloadend"in f?f.onloadend=v:f.onreadystatechange=function(){!f||f.readyState!==4||f.status===0&&!(f.responseURL&&f.responseURL.indexOf("file:")===0)||setTimeout(v)},f.onabort=function(){f&&(a(uIr("Request aborted",t,"ECONNABORTED",f)),f=null)},f.onerror=function(){a(uIr("Network Error",t,null,f)),f=null},f.ontimeout=function(){var O="timeout of "+t.timeout+"ms exceeded";t.timeoutErrorMessage&&(O=t.timeoutErrorMessage),a(uIr(O,t,t.transitional&&t.transitional.clarifyTimeoutError?"ETIMEDOUT":"ECONNABORTED",f)),f=null},hht.isStandardBrowserEnv()){var k=(t.withCredentials||U1a(B))&&t.xsrfCookieName?H1a.read(t.xsrfCookieName):void 0;k&&(g[t.xsrfHeaderName]=k)}"setRequestHeader"in f&&hht.forEach(g,function(O,X){typeof o>"u"&&X.toLowerCase()==="content-type"?delete g[X]:f.setRequestHeader(X,O)}),hht.isUndefined(t.withCredentials)||(f.withCredentials=!!t.withCredentials),p&&p!=="json"&&(f.responseType=t.responseType),typeof t.onDownloadProgress=="function"&&f.addEventListener("progress",t.onDownloadProgress),typeof t.onUploadProgress=="function"&&f.upload&&f.upload.addEventListener("progress",t.onUploadProgress),t.cancelToken&&t.cancelToken.promise.then(function(O){f&&(f.abort(),a(O),f=null)}),o||(o=null),f.send(o)})}});var ypi=z((sBl,_pi)=>{var yHe;_pi.exports=function(){if(!yHe){try{yHe=xt("debug")("follow-redirects")}catch{}typeof yHe!="function"&&(yHe=function(){})}yHe.apply(null,arguments)}});var EIr=z((oBl,bIr)=>{var EHe=xt("url"),bHe=EHe.URL,K1a=xt("http"),j1a=xt("https"),fIr=xt("stream").Writable,IIr=xt("assert"),bpi=ypi();(function(){var t=typeof process<"u",r=typeof window<"u"&&typeof document<"u",s=eIe(Error.captureStackTrace);!t&&(r||!s)&&console.warn("The follow-redirects package should be excluded from browser builds.")})();var CIr=!1;try{IIr(new bHe(""))}catch(e){CIr=e.code==="ERR_INVALID_URL"}var z1a=["auth","host","hostname","href","path","pathname","port","protocol","query","search","hash"],mIr=["abort","aborted","connect","error","socket","timeout"],hIr=Object.create(null);mIr.forEach(function(e){hIr[e]=function(t,r,s){this._redirectable.emit(e,t,r,s)}});var AIr=BHe("ERR_INVALID_URL","Invalid URL",TypeError),dIr=BHe("ERR_FR_REDIRECTION_FAILURE","Redirected request failed"),q1a=BHe("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded",dIr),$1a=BHe("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),e2a=BHe("ERR_STREAM_WRITE_AFTER_END","write after end"),t2a=fIr.prototype.destroy||Bpi;function C9(e,t){fIr.call(this),this._sanitizeOptions(e),this._options=e,this._ended=!1,this._ending=!1,this._redirectCount=0,this._redirects=[],this._requestBodyLength=0,this._requestBodyBuffers=[],t&&this.on("response",t);var r=this;this._onNativeResponse=function(s){try{r._processResponse(s)}catch(a){r.emit("error",a instanceof dIr?a:new dIr({cause:a}))}},this._performRequest()}C9.prototype=Object.create(fIr.prototype);C9.prototype.abort=function(){yIr(this._currentRequest),this._currentRequest.abort(),this.emit("abort")};C9.prototype.destroy=function(e){return yIr(this._currentRequest,e),t2a.call(this,e),this};C9.prototype.write=function(e,t,r){if(this._ending)throw new e2a;if(!$fe(e)&&!i2a(e))throw new TypeError("data should be a string, Buffer or Uint8Array");if(eIe(t)&&(r=t,t=null),e.length===0){r&&r();return}this._requestBodyLength+e.length<=this._options.maxBodyLength?(this._requestBodyLength+=e.length,this._requestBodyBuffers.push({data:e,encoding:t}),this._currentRequest.write(e,t,r)):(this.emit("error",new $1a),this.abort())};C9.prototype.end=function(e,t,r){if(eIe(e)?(r=e,e=t=null):eIe(t)&&(r=t,t=null),!e)this._ended=this._ending=!0,this._currentRequest.end(null,null,r);else{var s=this,a=this._currentRequest;this.write(e,t,function(){s._ended=!0,a.end(null,null,r)}),this._ending=!0}};C9.prototype.setHeader=function(e,t){this._options.headers[e]=t,this._currentRequest.setHeader(e,t)};C9.prototype.removeHeader=function(e){delete this._options.headers[e],this._currentRequest.removeHeader(e)};C9.prototype.setTimeout=function(e,t){var r=this;function s(g){g.setTimeout(e),g.removeListener("timeout",g.destroy),g.addListener("timeout",g.destroy)}function a(g){r._timeout&&clearTimeout(r._timeout),r._timeout=setTimeout(function(){r.emit("timeout"),o()},e),s(g)}function o(){r._timeout&&(clearTimeout(r._timeout),r._timeout=null),r.removeListener("abort",o),r.removeListener("error",o),r.removeListener("response",o),r.removeListener("close",o),t&&r.removeListener("timeout",t),r.socket||r._currentRequest.removeListener("socket",a)}return t&&this.on("timeout",t),this.socket?a(this.socket):this._currentRequest.once("socket",a),this.on("socket",s),this.on("abort",o),this.on("error",o),this.on("response",o),this.on("close",o),this};["flushHeaders","getHeader","setNoDelay","setSocketKeepAlive"].forEach(function(e){C9.prototype[e]=function(t,r){return this._currentRequest[e](t,r)}});["aborted","connection","socket"].forEach(function(e){Object.defineProperty(C9.prototype,e,{get:function(){return this._currentRequest[e]}})});C9.prototype._sanitizeOptions=function(e){if(e.headers||(e.headers={}),e.host&&(e.hostname||(e.hostname=e.host),delete e.host),!e.pathname&&e.path){var t=e.path.indexOf("?");t<0?e.pathname=e.path:(e.pathname=e.path.substring(0,t),e.search=e.path.substring(t))}};C9.prototype._performRequest=function(){var e=this._options.protocol,t=this._options.nativeProtocols[e];if(!t)throw new TypeError("Unsupported protocol "+e);if(this._options.agents){var r=e.slice(0,-1);this._options.agent=this._options.agents[r]}var s=this._currentRequest=t.request(this._options,this._onNativeResponse);s._redirectable=this;for(var a of mIr)s.on(a,hIr[a]);if(this._currentUrl=/^\//.test(this._options.path)?EHe.format(this._options):this._options.path,this._isRedirect){var o=0,g=this,p=this._requestBodyBuffers;(function f(m){if(s===g._currentRequest)if(m)g.emit("error",m);else if(o=400){e.responseUrl=this._currentUrl,e.redirects=this._redirects,this.emit("response",e),this._requestBodyBuffers=[];return}if(yIr(this._currentRequest),e.destroy(),++this._redirectCount>this._options.maxRedirects)throw new q1a;var s,a=this._options.beforeRedirect;a&&(s=Object.assign({Host:e.req.getHeader("host")},this._options.headers));var o=this._options.method;((t===301||t===302)&&this._options.method==="POST"||t===303&&!/^(?:GET|HEAD)$/.test(this._options.method))&&(this._options.method="GET",this._requestBodyBuffers=[],gIr(/^content-/i,this._options.headers));var g=gIr(/^host$/i,this._options.headers),p=_Ir(this._currentUrl),f=g||p.host,m=/^\w+:/.test(r)?this._currentUrl:EHe.format(Object.assign(p,{host:f})),y=r2a(r,m);if(bpi("redirecting to",y.href),this._isRedirect=!0,pIr(y,this._options),(y.protocol!==p.protocol&&y.protocol!=="https:"||y.host!==f&&!n2a(y.host,f))&&gIr(/^(?:(?:proxy-)?authorization|cookie)$/i,this._options.headers),eIe(a)){var B={headers:e.headers,statusCode:t},v={url:m,method:o,headers:s};a(this._options,B,v),this._sanitizeOptions(this._options)}this._performRequest()};function Epi(e){var t={maxRedirects:21,maxBodyLength:10485760},r={};return Object.keys(e).forEach(function(s){var a=s+":",o=r[a]=e[s],g=t[s]=Object.create(o);function p(m,y,B){return s2a(m)?m=pIr(m):$fe(m)?m=pIr(_Ir(m)):(B=y,y=vpi(m),m={protocol:a}),eIe(y)&&(B=y,y=null),y=Object.assign({maxRedirects:t.maxRedirects,maxBodyLength:t.maxBodyLength},m,y),y.nativeProtocols=r,!$fe(y.host)&&!$fe(y.hostname)&&(y.hostname="::1"),IIr.equal(y.protocol,a,"protocol mismatch"),bpi("options",y),new C9(y,B)}function f(m,y,B){var v=g.request(m,y,B);return v.end(),v}Object.defineProperties(g,{request:{value:p,configurable:!0,enumerable:!0,writable:!0},get:{value:f,configurable:!0,enumerable:!0,writable:!0}})}),t}function Bpi(){}function _Ir(e){var t;if(CIr)t=new bHe(e);else if(t=vpi(EHe.parse(e)),!$fe(t.protocol))throw new AIr({input:e});return t}function r2a(e,t){return CIr?new bHe(e,t):_Ir(EHe.resolve(t,e))}function vpi(e){if(/^\[/.test(e.hostname)&&!/^\[[:0-9a-f]+\]$/i.test(e.hostname))throw new AIr({input:e.href||e});if(/^\[/.test(e.host)&&!/^\[[:0-9a-f]+\](:\d+)?$/i.test(e.host))throw new AIr({input:e.href||e});return e}function pIr(e,t){var r=t||{};for(var s of z1a)r[s]=e[s];return r.hostname.startsWith("[")&&(r.hostname=r.hostname.slice(1,-1)),r.port!==""&&(r.port=Number(r.port)),r.path=r.search?r.pathname+r.search:r.pathname,r}function gIr(e,t){var r;for(var s in t)e.test(s)&&(r=t[s],delete t[s]);return r===null||typeof r>"u"?void 0:String(r).trim()}function BHe(e,t,r){function s(a){eIe(Error.captureStackTrace)&&Error.captureStackTrace(this,this.constructor),Object.assign(this,a||{}),this.code=e,this.message=this.cause?t+": "+this.cause.message:t}return s.prototype=new(r||Error),Object.defineProperties(s.prototype,{constructor:{value:s,enumerable:!1},name:{value:"Error ["+e+"]",enumerable:!1}}),s}function yIr(e,t){for(var r of mIr)e.removeListener(r,hIr[r]);e.on("error",Bpi),e.destroy(t)}function n2a(e,t){IIr($fe(e)&&$fe(t));var r=e.length-t.length-1;return r>0&&e[r]==="."&&e.endsWith(t)}function $fe(e){return typeof e=="string"||e instanceof String}function eIe(e){return typeof e=="function"}function i2a(e){return typeof e=="object"&&"length"in e}function s2a(e){return bHe&&e instanceof bHe}bIr.exports=Epi({http:K1a,https:j1a});bIr.exports.wrap=Epi});var BIr=z((aBl,o2a)=>{o2a.exports={name:"axios",version:"0.21.4",description:"Promise based HTTP client for the browser and node.js",main:"index.js",scripts:{test:"grunt test",start:"node ./sandbox/server.js",build:"NODE_ENV=production grunt build",preversion:"npm test",version:"npm run build && grunt version && git add -A dist && git add CHANGELOG.md bower.json package.json",postversion:"git push && git push --tags",examples:"node ./examples/server.js",coveralls:"cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js",fix:"eslint --fix lib/**/*.js"},repository:{type:"git",url:"https://github.com/axios/axios.git"},keywords:["xhr","http","ajax","promise","node"],author:"Matt Zabriskie",license:"MIT",bugs:{url:"https://github.com/axios/axios/issues"},homepage:"https://axios-http.com",devDependencies:{coveralls:"^3.0.0","es6-promise":"^4.2.4",grunt:"^1.3.0","grunt-banner":"^0.6.0","grunt-cli":"^1.2.0","grunt-contrib-clean":"^1.1.0","grunt-contrib-watch":"^1.0.0","grunt-eslint":"^23.0.0","grunt-karma":"^4.0.0","grunt-mocha-test":"^0.13.3","grunt-ts":"^6.0.0-beta.19","grunt-webpack":"^4.0.2","istanbul-instrumenter-loader":"^1.0.0","jasmine-core":"^2.4.1",karma:"^6.3.2","karma-chrome-launcher":"^3.1.0","karma-firefox-launcher":"^2.1.0","karma-jasmine":"^1.1.1","karma-jasmine-ajax":"^0.1.13","karma-safari-launcher":"^1.0.0","karma-sauce-launcher":"^4.3.6","karma-sinon":"^1.0.5","karma-sourcemap-loader":"^0.3.8","karma-webpack":"^4.0.2","load-grunt-tasks":"^3.5.2",minimist:"^1.2.0",mocha:"^8.2.1",sinon:"^4.5.0","terser-webpack-plugin":"^4.2.3",typescript:"^4.0.5","url-search-params":"^0.10.0",webpack:"^4.44.2","webpack-dev-server":"^3.11.0"},browser:{"./lib/adapters/http.js":"./lib/adapters/xhr.js"},jsdelivr:"dist/axios.min.js",unpkg:"dist/axios.min.js",typings:"./index.d.ts",dependencies:{"follow-redirects":"^1.14.0"},bundlesize:[{path:"./dist/axios.min.js",threshold:"5kB"}]}});var Dpi=z((cBl,Rpi)=>{"use strict";var vHe=jF(),Spi=aIr(),a2a=cIr(),c2a=pht(),l2a=xt("http"),u2a=xt("https"),g2a=EIr().http,A2a=EIr().https,wpi=xt("url"),d2a=xt("zlib"),p2a=BIr(),_ht=Cht(),vIr=Iht(),Tpi=/https:?/;function Npi(e,t,r){if(e.hostname=t.host,e.host=t.host,e.port=t.port,e.path=r,t.auth){var s=Buffer.from(t.auth.username+":"+t.auth.password,"utf8").toString("base64");e.headers["Proxy-Authorization"]="Basic "+s}e.beforeRedirect=function(o){o.headers.host=o.host,Npi(o,t,o.href)}}Rpi.exports=function(t){return new Promise(function(s,a){var o=function(er){s(er)},g=function(er){a(er)},p=t.data,f=t.headers;if("User-Agent"in f||"user-agent"in f?!f["User-Agent"]&&!f["user-agent"]&&(delete f["User-Agent"],delete f["user-agent"]):f["User-Agent"]="axios/"+p2a.version,p&&!vHe.isStream(p)){if(!Buffer.isBuffer(p))if(vHe.isArrayBuffer(p))p=Buffer.from(new Uint8Array(p));else if(vHe.isString(p))p=Buffer.from(p,"utf-8");else return g(_ht("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",t));f["Content-Length"]=p.length}var m=void 0;if(t.auth){var y=t.auth.username||"",B=t.auth.password||"";m=y+":"+B}var v=a2a(t.baseURL,t.url),k=wpi.parse(v),T=k.protocol||"http:";if(!m&&k.auth){var O=k.auth.split(":"),X=O[0]||"",U=O[1]||"";m=X+":"+U}m&&delete f.Authorization;var le=Tpi.test(T),ae=le?t.httpsAgent:t.httpAgent,ge={path:c2a(k.path,t.params,t.paramsSerializer).replace(/^\?/,""),method:t.method.toUpperCase(),headers:f,agent:ae,agents:{http:t.httpAgent,https:t.httpsAgent},auth:m};t.socketPath?ge.socketPath=t.socketPath:(ge.hostname=k.hostname,ge.port=k.port);var fe=t.proxy;if(!fe&&fe!==!1){var pe=T.slice(0,-1)+"_proxy",he=process.env[pe]||process.env[pe.toUpperCase()];if(he){var be=wpi.parse(he),Te=process.env.no_proxy||process.env.NO_PROXY,ke=!0;if(Te){var x=Te.split(",").map(function(er){return er.trim()});ke=!x.some(function(er){return er?er==="*"||er[0]==="."&&k.hostname.substr(k.hostname.length-er.length)===er?!0:k.hostname===er:!1})}if(ke&&(fe={host:be.hostname,port:be.port,protocol:be.protocol},be.auth)){var et=be.auth.split(":");fe.auth={username:et[0],password:et[1]}}}}fe&&(ge.headers.host=k.hostname+(k.port?":"+k.port:""),Npi(ge,fe,T+"//"+k.hostname+(k.port?":"+k.port:"")+ge.path));var Ue,Je=le&&(fe?Tpi.test(fe.protocol):!0);t.transport?Ue=t.transport:t.maxRedirects===0?Ue=Je?u2a:l2a:(t.maxRedirects&&(ge.maxRedirects=t.maxRedirects),Ue=Je?A2a:g2a),t.maxBodyLength>-1&&(ge.maxBodyLength=t.maxBodyLength);var Xe=Ue.request(ge,function(er){if(!Xe.aborted){var Ur=er,Ot=er.req||Xe;if(er.statusCode!==204&&Ot.method!=="HEAD"&&t.decompress!==!1)switch(er.headers["content-encoding"]){case"gzip":case"compress":case"deflate":Ur=Ur.pipe(d2a.createUnzip()),delete er.headers["content-encoding"];break}var dr={status:er.statusCode,statusText:er.statusMessage,headers:er.headers,config:t,request:Ot};if(t.responseType==="stream")dr.data=Ur,Spi(o,g,dr);else{var Ar=[],or=0;Ur.on("data",function($r){Ar.push($r),or+=$r.length,t.maxContentLength>-1&&or>t.maxContentLength&&(Ur.destroy(),g(_ht("maxContentLength size of "+t.maxContentLength+" exceeded",t,null,Ot)))}),Ur.on("error",function($r){Xe.aborted||g(vIr($r,t,null,Ot))}),Ur.on("end",function(){var $r=Buffer.concat(Ar);t.responseType!=="arraybuffer"&&($r=$r.toString(t.responseEncoding),(!t.responseEncoding||t.responseEncoding==="utf8")&&($r=vHe.stripBOM($r))),dr.data=$r,Spi(o,g,dr)})}}});if(Xe.on("error",function(er){Xe.aborted&&er.code!=="ERR_FR_TOO_MANY_REDIRECTS"||g(vIr(er,t,null,Xe))}),t.timeout){var ft=parseInt(t.timeout,10);if(isNaN(ft)){g(_ht("error trying to parse `config.timeout` to int",t,"ERR_PARSE_TIMEOUT",Xe));return}Xe.setTimeout(ft,function(){Xe.abort(),g(_ht("timeout of "+ft+"ms exceeded",t,t.transitional&&t.transitional.clarifyTimeoutError?"ETIMEDOUT":"ECONNABORTED",Xe))})}t.cancelToken&&t.cancelToken.promise.then(function(er){Xe.aborted||(Xe.abort(),g(er))}),vHe.isStream(p)?p.on("error",function(er){g(vIr(er,t,null,Xe))}).pipe(Xe):Xe.end(p)})}});var bht=z((lBl,Gpi)=>{"use strict";var ex=jF(),xpi=rpi(),f2a=Iht(),I2a={"Content-Type":"application/x-www-form-urlencoded"};function kpi(e,t){!ex.isUndefined(e)&&ex.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}function C2a(){var e;return typeof XMLHttpRequest<"u"?e=hpi():typeof process<"u"&&Object.prototype.toString.call(process)==="[object process]"&&(e=Dpi()),e}function m2a(e,t,r){if(ex.isString(e))try{return(t||JSON.parse)(e),ex.trim(e)}catch(s){if(s.name!=="SyntaxError")throw s}return(r||JSON.stringify)(e)}var yht={transitional:{silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},adapter:C2a(),transformRequest:[function(t,r){return xpi(r,"Accept"),xpi(r,"Content-Type"),ex.isFormData(t)||ex.isArrayBuffer(t)||ex.isBuffer(t)||ex.isStream(t)||ex.isFile(t)||ex.isBlob(t)?t:ex.isArrayBufferView(t)?t.buffer:ex.isURLSearchParams(t)?(kpi(r,"application/x-www-form-urlencoded;charset=utf-8"),t.toString()):ex.isObject(t)||r&&r["Content-Type"]==="application/json"?(kpi(r,"application/json"),m2a(t)):t}],transformResponse:[function(t){var r=this.transitional,s=r&&r.silentJSONParsing,a=r&&r.forcedJSONParsing,o=!s&&this.responseType==="json";if(o||a&&ex.isString(t)&&t.length)try{return JSON.parse(t)}catch(g){if(o)throw g.name==="SyntaxError"?f2a(g,this,"E_JSON_PARSE"):g}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,validateStatus:function(t){return t>=200&&t<300}};yht.headers={common:{Accept:"application/json, text/plain, */*"}};ex.forEach(["delete","get","head"],function(t){yht.headers[t]={}});ex.forEach(["post","put","patch"],function(t){yht.headers[t]=ex.merge(I2a)});Gpi.exports=yht});var Zpi=z((uBl,Fpi)=>{"use strict";var h2a=jF(),_2a=bht();Fpi.exports=function(t,r,s){var a=this||_2a;return h2a.forEach(s,function(g){t=g.call(a,t,r)}),t}});var SIr=z((gBl,Lpi)=>{"use strict";Lpi.exports=function(t){return!!(t&&t.__CANCEL__)}});var Ppi=z((ABl,Wpi)=>{"use strict";var Vpi=jF(),wIr=Zpi(),y2a=SIr(),b2a=bht();function TIr(e){e.cancelToken&&e.cancelToken.throwIfRequested()}Wpi.exports=function(t){TIr(t),t.headers=t.headers||{},t.data=wIr.call(t,t.data,t.headers,t.transformRequest),t.headers=Vpi.merge(t.headers.common||{},t.headers[t.method]||{},t.headers),Vpi.forEach(["delete","get","head","post","put","patch","common"],function(a){delete t.headers[a]});var r=t.adapter||b2a.adapter;return r(t).then(function(a){return TIr(t),a.data=wIr.call(t,a.data,a.headers,t.transformResponse),a},function(a){return y2a(a)||(TIr(t),a&&a.response&&(a.response.data=wIr.call(t,a.response.data,a.response.headers,t.transformResponse))),Promise.reject(a)})}});var NIr=z((dBl,Opi)=>{"use strict";var Mk=jF();Opi.exports=function(t,r){r=r||{};var s={},a=["url","method","data"],o=["headers","auth","proxy","params"],g=["baseURL","transformRequest","transformResponse","paramsSerializer","timeout","timeoutMessage","withCredentials","adapter","responseType","xsrfCookieName","xsrfHeaderName","onUploadProgress","onDownloadProgress","decompress","maxContentLength","maxBodyLength","maxRedirects","transport","httpAgent","httpsAgent","cancelToken","socketPath","responseEncoding"],p=["validateStatus"];function f(v,k){return Mk.isPlainObject(v)&&Mk.isPlainObject(k)?Mk.merge(v,k):Mk.isPlainObject(k)?Mk.merge({},k):Mk.isArray(k)?k.slice():k}function m(v){Mk.isUndefined(r[v])?Mk.isUndefined(t[v])||(s[v]=f(void 0,t[v])):s[v]=f(t[v],r[v])}Mk.forEach(a,function(k){Mk.isUndefined(r[k])||(s[k]=f(void 0,r[k]))}),Mk.forEach(o,m),Mk.forEach(g,function(k){Mk.isUndefined(r[k])?Mk.isUndefined(t[k])||(s[k]=f(void 0,t[k])):s[k]=f(void 0,r[k])}),Mk.forEach(p,function(k){k in r?s[k]=f(t[k],r[k]):k in t&&(s[k]=f(void 0,t[k]))});var y=a.concat(o).concat(g).concat(p),B=Object.keys(t).concat(Object.keys(r)).filter(function(k){return y.indexOf(k)===-1});return Mk.forEach(B,m),s}});var Xpi=z((pBl,Ypi)=>{"use strict";var Mpi=BIr(),RIr={};["object","boolean","number","function","string","symbol"].forEach(function(e,t){RIr[e]=function(s){return typeof s===e||"a"+(t<1?"n ":" ")+e}});var Qpi={},E2a=Mpi.version.split(".");function Hpi(e,t){for(var r=t?t.split("."):E2a,s=e.split("."),a=0;a<3;a++){if(r[a]>s[a])return!0;if(r[a]0;){var o=s[a],g=t[o];if(g){var p=e[o],f=p===void 0||g(p,o,e);if(f!==!0)throw new TypeError("option "+o+" must be "+f);continue}if(r!==!0)throw Error("Unknown option "+o)}}Ypi.exports={isOlderVersion:Hpi,assertOptions:B2a,validators:RIr}});var qpi=z((fBl,zpi)=>{"use strict";var Kpi=jF(),v2a=pht(),Jpi=epi(),Upi=Ppi(),Eht=NIr(),jpi=Xpi(),jSe=jpi.validators;function SHe(e){this.defaults=e,this.interceptors={request:new Jpi,response:new Jpi}}SHe.prototype.request=function(t){typeof t=="string"?(t=arguments[1]||{},t.url=arguments[0]):t=t||{},t=Eht(this.defaults,t),t.method?t.method=t.method.toLowerCase():this.defaults.method?t.method=this.defaults.method.toLowerCase():t.method="get";var r=t.transitional;r!==void 0&&jpi.assertOptions(r,{silentJSONParsing:jSe.transitional(jSe.boolean,"1.0.0"),forcedJSONParsing:jSe.transitional(jSe.boolean,"1.0.0"),clarifyTimeoutError:jSe.transitional(jSe.boolean,"1.0.0")},!1);var s=[],a=!0;this.interceptors.request.forEach(function(v){typeof v.runWhen=="function"&&v.runWhen(t)===!1||(a=a&&v.synchronous,s.unshift(v.fulfilled,v.rejected))});var o=[];this.interceptors.response.forEach(function(v){o.push(v.fulfilled,v.rejected)});var g;if(!a){var p=[Upi,void 0];for(Array.prototype.unshift.apply(p,s),p=p.concat(o),g=Promise.resolve(t);p.length;)g=g.then(p.shift(),p.shift());return g}for(var f=t;s.length;){var m=s.shift(),y=s.shift();try{f=m(f)}catch(B){y(B);break}}try{g=Upi(f)}catch(B){return Promise.reject(B)}for(;o.length;)g=g.then(o.shift(),o.shift());return g};SHe.prototype.getUri=function(t){return t=Eht(this.defaults,t),v2a(t.url,t.params,t.paramsSerializer).replace(/^\?/,"")};Kpi.forEach(["delete","get","head","options"],function(t){SHe.prototype[t]=function(r,s){return this.request(Eht(s||{},{method:t,url:r,data:(s||{}).data}))}});Kpi.forEach(["post","put","patch"],function(t){SHe.prototype[t]=function(r,s,a){return this.request(Eht(a||{},{method:t,url:r,data:s}))}});zpi.exports=SHe});var xIr=z((IBl,$pi)=>{"use strict";function DIr(e){this.message=e}DIr.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")};DIr.prototype.__CANCEL__=!0;$pi.exports=DIr});var tfi=z((CBl,efi)=>{"use strict";var S2a=xIr();function Bht(e){if(typeof e!="function")throw new TypeError("executor must be a function.");var t;this.promise=new Promise(function(a){t=a});var r=this;e(function(a){r.reason||(r.reason=new S2a(a),t(r.reason))})}Bht.prototype.throwIfRequested=function(){if(this.reason)throw this.reason};Bht.source=function(){var t,r=new Bht(function(a){t=a});return{token:r,cancel:t}};efi.exports=Bht});var nfi=z((mBl,rfi)=>{"use strict";rfi.exports=function(t){return function(s){return t.apply(null,s)}}});var sfi=z((hBl,ifi)=>{"use strict";ifi.exports=function(t){return typeof t=="object"&&t.isAxiosError===!0}});var cfi=z((_Bl,kIr)=>{"use strict";var ofi=jF(),w2a=rIr(),vht=qpi(),T2a=NIr(),N2a=bht();function afi(e){var t=new vht(e),r=w2a(vht.prototype.request,t);return ofi.extend(r,vht.prototype,t),ofi.extend(r,t),r}var bY=afi(N2a);bY.Axios=vht;bY.create=function(t){return afi(T2a(bY.defaults,t))};bY.Cancel=xIr();bY.CancelToken=tfi();bY.isCancel=SIr();bY.all=function(t){return Promise.all(t)};bY.spread=nfi();bY.isAxiosError=sfi();kIr.exports=bY;kIr.exports.default=bY});var ufi=z((yBl,lfi)=>{lfi.exports=cfi()});var Afi=z((bBl,gfi)=>{var zSe=1e3,qSe=zSe*60,$Se=qSe*60,tIe=$Se*24,R2a=tIe*7,D2a=tIe*365.25;gfi.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return x2a(e);if(r==="number"&&isFinite(e))return t.long?G2a(e):k2a(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function x2a(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),s=(t[2]||"ms").toLowerCase();switch(s){case"years":case"year":case"yrs":case"yr":case"y":return r*D2a;case"weeks":case"week":case"w":return r*R2a;case"days":case"day":case"d":return r*tIe;case"hours":case"hour":case"hrs":case"hr":case"h":return r*$Se;case"minutes":case"minute":case"mins":case"min":case"m":return r*qSe;case"seconds":case"second":case"secs":case"sec":case"s":return r*zSe;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function k2a(e){var t=Math.abs(e);return t>=tIe?Math.round(e/tIe)+"d":t>=$Se?Math.round(e/$Se)+"h":t>=qSe?Math.round(e/qSe)+"m":t>=zSe?Math.round(e/zSe)+"s":e+"ms"}function G2a(e){var t=Math.abs(e);return t>=tIe?Sht(e,t,tIe,"day"):t>=$Se?Sht(e,t,$Se,"hour"):t>=qSe?Sht(e,t,qSe,"minute"):t>=zSe?Sht(e,t,zSe,"second"):e+" ms"}function Sht(e,t,r,s){var a=t>=r*1.5;return Math.round(e/r)+" "+s+(a?"s":"")}});var GIr=z((EBl,dfi)=>{function F2a(e){r.debug=r,r.default=r,r.coerce=f,r.disable=o,r.enable=a,r.enabled=g,r.humanize=Afi(),r.destroy=m,Object.keys(e).forEach(y=>{r[y]=e[y]}),r.names=[],r.skips=[],r.formatters={};function t(y){let B=0;for(let v=0;v{if(pe==="%%")return"%";ge++;let be=r.formatters[he];if(typeof be=="function"){let Te=X[ge];pe=be.call(U,Te),X.splice(ge,1),ge--}return pe}),r.formatArgs.call(U,X),(U.log||r.log).apply(U,X)}return O.namespace=y,O.useColors=r.useColors(),O.color=r.selectColor(y),O.extend=s,O.destroy=r.destroy,Object.defineProperty(O,"enabled",{enumerable:!0,configurable:!1,get:()=>v!==null?v:(k!==r.namespaces&&(k=r.namespaces,T=r.enabled(y)),T),set:X=>{v=X}}),typeof r.init=="function"&&r.init(O),O}function s(y,B){let v=r(this.namespace+(typeof B>"u"?":":B)+y);return v.log=this.log,v}function a(y){r.save(y),r.namespaces=y,r.names=[],r.skips=[];let B,v=(typeof y=="string"?y:"").split(/[\s,]+/),k=v.length;for(B=0;B"-"+B)].join(",");return r.enable(""),y}function g(y){if(y[y.length-1]==="*")return!0;let B,v;for(B=0,v=r.skips.length;B{i3.formatArgs=L2a;i3.save=V2a;i3.load=W2a;i3.useColors=Z2a;i3.storage=P2a();i3.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();i3.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function Z2a(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function L2a(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+wht.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,s=0;e[0].replace(/%[a-zA-Z%]/g,a=>{a!=="%%"&&(r++,a==="%c"&&(s=r))}),e.splice(s,0,t)}i3.log=console.debug||console.log||(()=>{});function V2a(e){try{e?i3.storage.setItem("debug",e):i3.storage.removeItem("debug")}catch{}}function W2a(){let e;try{e=i3.storage.getItem("debug")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function P2a(){try{return localStorage}catch{}}wht.exports=GIr()(i3);var{formatters:O2a}=wht.exports;O2a.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var Ifi=z((tx,Nht)=>{var Q2a=xt("tty"),Tht=xt("util");tx.init=K2a;tx.log=X2a;tx.formatArgs=H2a;tx.save=J2a;tx.load=U2a;tx.useColors=M2a;tx.destroy=Tht.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");tx.colors=[6,2,3,4,5,1];try{let e=xt("supports-color");e&&(e.stderr||e).level>=2&&(tx.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}tx.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(a,o)=>o.toUpperCase()),s=process.env[t];return/^(yes|on|true|enabled)$/i.test(s)?s=!0:/^(no|off|false|disabled)$/i.test(s)?s=!1:s==="null"?s=null:s=Number(s),e[r]=s,e},{});function M2a(){return"colors"in tx.inspectOpts?!!tx.inspectOpts.colors:Q2a.isatty(process.stderr.fd)}function H2a(e){let{namespace:t,useColors:r}=this;if(r){let s=this.color,a="\x1B[3"+(s<8?s:"8;5;"+s),o=` ${a};1m${t} \x1B[0m`;e[0]=o+e[0].split(` `).join(` -`+o),e.push(a+"m+"+Sht.exports.humanize(this.diff)+"\x1B[0m")}else e[0]=N2a()+t+" "+e[0]}function N2a(){return KD.inspectOpts.hideDate?"":new Date().toISOString()+" "}function R2a(...e){return process.stderr.write(vht.format(...e)+` -`)}function D2a(e){e?process.env.DEBUG=e:delete process.env.DEBUG}function x2a(){return process.env.DEBUG}function k2a(e){e.inspectOpts={};let t=Object.keys(KD.inspectOpts);for(let r=0;rt.trim()).join(" ")};afi.O=function(e){return this.inspectOpts.colors=this.useColors,vht.inspect(e,this.inspectOpts)}});var DIr=z((rBl,RIr)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?RIr.exports=ofi():RIr.exports=cfi()});var ufi=z((nBl,lfi)=>{var{Transform:G2a}=Dt("stream"),xIr=class extends G2a{constructor(t={}){super(t),this.host=t.host||"localhost",this.replaced=!1}_transform(t,r,s){s(null,this.replaced?t:t.toString().replace(/(\r\n[Hh]ost: )\S+/,(a,o)=>(this.replaced=!0,o+this.host)))}};lfi.exports=xIr});var dfi=z((sBl,Afi)=>{var{EventEmitter:F2a}=Dt("events"),eK=DIr()("localtunnel:client"),kIr=Dt("fs"),gfi=Dt("net"),Z2a=Dt("tls"),L2a=ufi();Afi.exports=class extends F2a{constructor(t={}){super(t),this.opts=t}open(){let t=this.opts,r=t.remote_ip||t.remote_host,s=t.remote_port,a=t.local_host||"localhost",o=t.local_port,g=t.local_https?"https":"http",p=t.allow_invalid_cert;eK("establishing tunnel %s://%s:%s <> %s:%s",g,a,o,r,s);let f=gfi.connect({host:r,port:s});f.setKeepAlive(!0),f.on("error",y=>{eK("got remote connection error",y.message),y.code==="ECONNREFUSED"&&this.emit("error",new Error(`connection refused: ${r}:${s} (check your firewall settings)`)),f.end()});let m=()=>{if(f.destroyed){eK("remote destroyed"),this.emit("dead");return}eK("connecting locally to %s://%s:%d",g,a,o),f.pause(),p&&eK("allowing invalid certificates");let y=()=>p?{rejectUnauthorized:!1}:{cert:kIr.readFileSync(t.local_cert),key:kIr.readFileSync(t.local_key),ca:t.local_ca?[kIr.readFileSync(t.local_ca)]:void 0},B=t.local_https?Z2a.connect({host:a,port:o,...y()}):gfi.connect({host:a,port:o}),v=()=>{eK("remote close"),this.emit("dead"),B.end()};f.once("close",v),B.once("error",G=>{if(eK("local error %s",G.message),B.end(),f.removeListener("close",v),G.code!=="ECONNREFUSED")return f.end();setTimeout(m,1e3)}),B.once("connect",()=>{eK("connected locally"),f.resume();let G=f;t.local_host&&(eK("transform Host header to %s",t.local_host),G=f.pipe(new L2a({host:t.local_host}))),G.pipe(B).pipe(f),B.once("close",T=>{eK("local connection closed [%s]",T)})})};f.on("data",y=>{let B=y.toString().match(/^(\w+) (\S+)/);B&&this.emit("request",{method:B[1],path:B[2]})}),f.once("connect",()=>{this.emit("open",f),m()})}}});var Ifi=z((aBl,ffi)=>{var{parse:V2a}=Dt("url"),{EventEmitter:pfi}=Dt("events"),W2a=rfi(),vHe=DIr()("localtunnel:client"),P2a=dfi();ffi.exports=class extends pfi{constructor(t={}){super(t),this.opts=t,this.closed=!1,this.opts.host||(this.opts.host="https://localtunnel.me")}_getInfo(t){let{id:r,ip:s,port:a,url:o,cached_url:g,max_conn_count:p}=t,{host:f,port:m,local_host:y}=this.opts,{local_https:B,local_cert:v,local_key:G,local_ca:T,allow_invalid_cert:O}=this.opts;return{name:r,url:o,cached_url:g,max_conn:p||1,remote_host:V2a(f).hostname,remote_ip:s,remote_port:a,local_port:m,local_host:y,local_https:B,local_cert:v,local_key:G,local_ca:T,allow_invalid_cert:O}}_init(t){let r=this.opts,s=this._getInfo.bind(this),a={responseType:"json"},o=`${r.host}/`,g=r.subdomain,p=o+(g||"?new");(function f(){W2a.get(p,a).then(m=>{let y=m.data;if(vHe("got tunnel information",m.data),m.status!==200){let B=new Error(y&&y.message||"localtunnel server returned an error, please try again");return t(B)}t(null,s(y))}).catch(m=>(vHe(`tunnel server offline: ${m.message}, retry 1s`),setTimeout(f,1e3)))})()}_establish(t){this.setMaxListeners(t.max_conn+(pfi.defaultMaxListeners||10)),this.tunnelCluster=new P2a(t),this.tunnelCluster.once("open",()=>{this.emit("url",t.url)}),this.tunnelCluster.on("error",s=>{vHe("got socket error",s.message),this.emit("error",s)});let r=0;this.tunnelCluster.on("open",s=>{r++,vHe("tunnel open [total: %d]",r);let a=()=>{s.destroy()};if(this.closed)return a();this.once("close",a),s.once("close",()=>{this.removeListener("close",a)})}),this.tunnelCluster.on("dead",()=>{r--,vHe("tunnel dead [total: %d]",r),!this.closed&&this.tunnelCluster.open()}),this.tunnelCluster.on("request",s=>{this.emit("request",s)});for(let s=0;s{if(r)return t(r);this.clientId=s.name,this.url=s.url,s.cached_url&&(this.cachedUrl=s.cached_url),this._establish(s),t()})}close(){this.closed=!0,this.emit("close")}}});var mfi=z((cBl,Cfi)=>{var O2a=Ifi();Cfi.exports=function(t,r,s){let a=typeof t=="object"?t:{...r,port:t},o=typeof t=="object"?r:s,g=new O2a(a);return o?(g.open(p=>p?o(p):o(null,g)),g):new Promise((p,f)=>g.open(m=>m?f(m):p(g)))}});var Zfi=z(Ffi=>{"use strict";Object.defineProperty(Ffi,"__esModule",{value:!0})});var Vfi=z(Lfi=>{"use strict";Object.defineProperty(Lfi,"__esModule",{value:!0})});var Wfi=z(RHe=>{"use strict";Object.defineProperty(RHe,"__esModule",{value:!0});RHe.SeverityNumber=void 0;var j2a;(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.TRACE=1]="TRACE",e[e.TRACE2=2]="TRACE2",e[e.TRACE3=3]="TRACE3",e[e.TRACE4=4]="TRACE4",e[e.DEBUG=5]="DEBUG",e[e.DEBUG2=6]="DEBUG2",e[e.DEBUG3=7]="DEBUG3",e[e.DEBUG4=8]="DEBUG4",e[e.INFO=9]="INFO",e[e.INFO2=10]="INFO2",e[e.INFO3=11]="INFO3",e[e.INFO4=12]="INFO4",e[e.WARN=13]="WARN",e[e.WARN2=14]="WARN2",e[e.WARN3=15]="WARN3",e[e.WARN4=16]="WARN4",e[e.ERROR=17]="ERROR",e[e.ERROR2=18]="ERROR2",e[e.ERROR3=19]="ERROR3",e[e.ERROR4=20]="ERROR4",e[e.FATAL=21]="FATAL",e[e.FATAL2=22]="FATAL2",e[e.FATAL3=23]="FATAL3",e[e.FATAL4=24]="FATAL4"})(j2a=RHe.SeverityNumber||(RHe.SeverityNumber={}))});var Ofi=z(Pfi=>{"use strict";Object.defineProperty(Pfi,"__esModule",{value:!0})});var VIr=z(qSe=>{"use strict";Object.defineProperty(qSe,"__esModule",{value:!0});qSe.NOOP_LOGGER=qSe.NoopLogger=void 0;var Dht=class{emit(t){}};qSe.NoopLogger=Dht;qSe.NOOP_LOGGER=new Dht});var WIr=z($Se=>{"use strict";Object.defineProperty($Se,"__esModule",{value:!0});$Se.NOOP_LOGGER_PROVIDER=$Se.NoopLoggerProvider=void 0;var z2a=VIr(),xht=class{getLogger(t,r,s){return new z2a.NoopLogger}};$Se.NoopLoggerProvider=xht;$Se.NOOP_LOGGER_PROVIDER=new xht});var Mfi=z(kht=>{"use strict";Object.defineProperty(kht,"__esModule",{value:!0});kht._globalThis=void 0;kht._globalThis=typeof globalThis=="object"?globalThis:global});var Qfi=z($fe=>{"use strict";var q2a=$fe&&$fe.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),$2a=$fe&&$fe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&q2a(t,e,r)};Object.defineProperty($fe,"__esModule",{value:!0});$2a(Mfi(),$fe)});var Yfi=z(eIe=>{"use strict";var eBa=eIe&&eIe.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),tBa=eIe&&eIe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&eBa(t,e,r)};Object.defineProperty(eIe,"__esModule",{value:!0});tBa(Qfi(),eIe)});var Hfi=z(tK=>{"use strict";Object.defineProperty(tK,"__esModule",{value:!0});tK.API_BACKWARDS_COMPATIBILITY_VERSION=tK.makeGetter=tK._global=tK.GLOBAL_LOGS_API_KEY=void 0;var rBa=Yfi();tK.GLOBAL_LOGS_API_KEY=Symbol.for("io.opentelemetry.js.api.logs");tK._global=rBa._globalThis;function nBa(e,t,r){return s=>s===e?t:r}tK.makeGetter=nBa;tK.API_BACKWARDS_COMPATIBILITY_VERSION=1});var Jfi=z(Ght=>{"use strict";Object.defineProperty(Ght,"__esModule",{value:!0});Ght.LogsAPI=void 0;var kM=Hfi(),Xfi=WIr(),PIr=class e{constructor(){}static getInstance(){return this._instance||(this._instance=new e),this._instance}setGlobalLoggerProvider(t){return kM._global[kM.GLOBAL_LOGS_API_KEY]?this.getLoggerProvider():(kM._global[kM.GLOBAL_LOGS_API_KEY]=(0,kM.makeGetter)(kM.API_BACKWARDS_COMPATIBILITY_VERSION,t,Xfi.NOOP_LOGGER_PROVIDER),t)}getLoggerProvider(){var t,r;return(r=(t=kM._global[kM.GLOBAL_LOGS_API_KEY])===null||t===void 0?void 0:t.call(kM._global,kM.API_BACKWARDS_COMPATIBILITY_VERSION))!==null&&r!==void 0?r:Xfi.NOOP_LOGGER_PROVIDER}getLogger(t,r,s){return this.getLoggerProvider().getLogger(t,r,s)}disable(){delete kM._global[kM.GLOBAL_LOGS_API_KEY]}};Ght.LogsAPI=PIr});var twe=z(C9=>{"use strict";var iBa=C9&&C9.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),ewe=C9&&C9.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&iBa(t,e,r)};Object.defineProperty(C9,"__esModule",{value:!0});C9.logs=void 0;ewe(Zfi(),C9);ewe(Vfi(),C9);ewe(Wfi(),C9);ewe(Ofi(),C9);ewe(VIr(),C9);ewe(WIr(),C9);var sBa=Jfi();C9.logs=sBa.LogsAPI.getInstance()});var Ufi,Kfi=cc(()=>{Ufi=typeof globalThis=="object"?globalThis:global});var jfi=cc(()=>{Kfi()});var zfi=cc(()=>{jfi()});var cq,OIr=cc(()=>{cq="1.9.0"});function oBa(e){var t=new Set([e]),r=new Set,s=e.match(qfi);if(!s)return function(){return!1};var a={major:+s[1],minor:+s[2],patch:+s[3],prerelease:s[4]};if(a.prerelease!=null)return function(f){return f===e};function o(p){return r.add(p),!1}function g(p){return t.add(p),!0}return function(f){if(t.has(f))return!0;if(r.has(f))return!1;var m=f.match(qfi);if(!m)return o(f);var y={major:+m[1],minor:+m[2],patch:+m[3],prerelease:m[4]};return y.prerelease!=null||a.major!==y.major?o(f):a.major===0?a.minor===y.minor&&a.patch<=y.patch?g(f):o(f):a.minor<=y.minor?g(f):o(f)}}var qfi,$fi,eIi=cc(()=>{OIr();qfi=/^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;$fi=oBa(cq)});function rK(e,t,r,s){var a;s===void 0&&(s=!1);var o=xHe[DHe]=(a=xHe[DHe])!==null&&a!==void 0?a:{version:cq};if(!s&&o[e]){var g=new Error("@opentelemetry/api: Attempted duplicate registration of API: "+e);return r.error(g.stack||g.message),!1}if(o.version!==cq){var g=new Error("@opentelemetry/api: Registration of version v"+o.version+" for "+e+" does not match previously registered API v"+cq);return r.error(g.stack||g.message),!1}return o[e]=t,r.debug("@opentelemetry/api: Registered a global for "+e+" v"+cq+"."),!0}function n3(e){var t,r,s=(t=xHe[DHe])===null||t===void 0?void 0:t.version;if(!(!s||!$fi(s)))return(r=xHe[DHe])===null||r===void 0?void 0:r[e]}function nK(e,t){t.debug("@opentelemetry/api: Unregistering a global for "+e+" v"+cq+".");var r=xHe[DHe];r&&delete r[e]}var aBa,DHe,xHe,tIe=cc(()=>{zfi();OIr();eIi();aBa=cq.split(".")[0],DHe=Symbol.for("opentelemetry.js.api."+aBa),xHe=Ufi});function kHe(e,t,r){var s=n3("diag");if(s)return r.unshift(t),s[e].apply(s,lBa([],cBa(r),!1))}var cBa,lBa,tIi,rIi=cc(()=>{tIe();cBa=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},lBa=function(e,t,r){if(r||arguments.length===2)for(var s=0,a=t.length,o;s{(function(e){e[e.NONE=0]="NONE",e[e.ERROR=30]="ERROR",e[e.WARN=50]="WARN",e[e.INFO=60]="INFO",e[e.DEBUG=70]="DEBUG",e[e.VERBOSE=80]="VERBOSE",e[e.ALL=9999]="ALL"})(jD||(jD={}))});function nIi(e,t){ejD.ALL&&(e=jD.ALL),t=t||{};function r(s,a){var o=t[s];return typeof o=="function"&&e>=a?o.bind(t):function(){}}return{error:r("error",jD.ERROR),warn:r("warn",jD.WARN),info:r("info",jD.INFO),debug:r("debug",jD.DEBUG),verbose:r("verbose",jD.VERBOSE)}}var iIi=cc(()=>{Fht()});var uBa,gBa,ABa,Pk,rIe=cc(()=>{rIi();iIi();Fht();tIe();uBa=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},gBa=function(e,t,r){if(r||arguments.length===2)for(var s=0,a=t.length,o;s";y.warn("Current logger will be overwritten from "+v),B.warn("Current logger will overwrite one already registered from "+v)}return rK("diag",B,r,!0)};r.setLogger=s,r.disable=function(){nK(ABa,r)},r.createComponentLogger=function(a){return new tIi(a)},r.verbose=t("verbose"),r.debug=t("debug"),r.info=t("info"),r.warn=t("warn"),r.error=t("error")}return e.instance=function(){return this._instance||(this._instance=new e),this._instance},e}()});var dBa,pBa,sIi,oIi=cc(()=>{dBa=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},pBa=function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],s=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&s>=e.length&&(e=void 0),{value:e&&e[s++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},sIi=function(){function e(t){this._entries=t?new Map(t):new Map}return e.prototype.getEntry=function(t){var r=this._entries.get(t);if(r)return Object.assign({},r)},e.prototype.getAllEntries=function(){return Array.from(this._entries.entries()).map(function(t){var r=dBa(t,2),s=r[0],a=r[1];return[s,a]})},e.prototype.setEntry=function(t,r){var s=new e(this._entries);return s._entries.set(t,r),s},e.prototype.removeEntry=function(t){var r=new e(this._entries);return r._entries.delete(t),r},e.prototype.removeEntries=function(){for(var t,r,s=[],a=0;a{aIi=Symbol("BaggageEntryMetadata")});function lIi(e){return e===void 0&&(e={}),new sIi(new Map(Object.entries(e)))}function uIi(e){return typeof e!="string"&&(fBa.error("Cannot create baggage metadata from unknown type: "+typeof e),e=""),{__TYPE__:aIi,toString:function(){return e}}}var fBa,MIr=cc(()=>{rIe();oIi();cIi();fBa=Pk.instance()});function rwe(e){return Symbol.for(e)}var IBa,Zht,GHe=cc(()=>{IBa=function(){function e(t){var r=this;r._currentContext=t?new Map(t):new Map,r.getValue=function(s){return r._currentContext.get(s)},r.setValue=function(s,a){var o=new e(r._currentContext);return o._currentContext.set(s,a),o},r.deleteValue=function(s){var a=new e(r._currentContext);return a._currentContext.delete(s),a}}return e}(),Zht=new IBa});var QIr,gIi,AIi=cc(()=>{QIr=[{n:"error",c:"error"},{n:"warn",c:"warn"},{n:"info",c:"info"},{n:"debug",c:"debug"},{n:"verbose",c:"trace"}],gIi=function(){function e(){function t(s){return function(){for(var a=[],o=0;o{nIe=function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}(),CBa=function(){function e(){}return e.prototype.createGauge=function(t,r){return SBa},e.prototype.createHistogram=function(t,r){return wBa},e.prototype.createCounter=function(t,r){return vBa},e.prototype.createUpDownCounter=function(t,r){return TBa},e.prototype.createObservableGauge=function(t,r){return RBa},e.prototype.createObservableCounter=function(t,r){return NBa},e.prototype.createObservableUpDownCounter=function(t,r){return DBa},e.prototype.addBatchObservableCallback=function(t,r){},e.prototype.removeBatchObservableCallback=function(t){},e}(),Lht=function(){function e(){}return e}(),mBa=function(e){nIe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.add=function(r,s){},t}(Lht),hBa=function(e){nIe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.add=function(r,s){},t}(Lht),_Ba=function(e){nIe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.record=function(r,s){},t}(Lht),yBa=function(e){nIe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.record=function(r,s){},t}(Lht),YIr=function(){function e(){}return e.prototype.addCallback=function(t){},e.prototype.removeCallback=function(t){},e}(),bBa=function(e){nIe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(YIr),EBa=function(e){nIe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(YIr),BBa=function(e){nIe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(YIr),HIr=new CBa,vBa=new mBa,SBa=new _Ba,wBa=new yBa,TBa=new hBa,NBa=new bBa,RBa=new EBa,DBa=new BBa});var Vht,pIi=cc(()=>{(function(e){e[e.INT=0]="INT",e[e.DOUBLE=1]="DOUBLE"})(Vht||(Vht={}))});var Wht,Pht,JIr=cc(()=>{Wht={get:function(e,t){if(e!=null)return e[t]},keys:function(e){return e==null?[]:Object.keys(e)}},Pht={set:function(e,t,r){e!=null&&(e[t]=r)}}});var xBa,kBa,fIi,IIi=cc(()=>{GHe();xBa=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},kBa=function(e,t,r){if(r||arguments.length===2)for(var s=0,a=t.length,o;s{IIi();tIe();rIe();GBa=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},FBa=function(e,t,r){if(r||arguments.length===2)for(var s=0,a=t.length,o;s{(function(e){e[e.NONE=0]="NONE",e[e.SAMPLED=1]="SAMPLED"})(nwe||(nwe={}))});var ZHe,LHe,Oht,Mht=cc(()=>{KIr();ZHe="0000000000000000",LHe="00000000000000000000000000000000",Oht={traceId:LHe,spanId:ZHe,traceFlags:nwe.NONE}});var jse,Qht=cc(()=>{Mht();jse=function(){function e(t){t===void 0&&(t=Oht),this._spanContext=t}return e.prototype.spanContext=function(){return this._spanContext},e.prototype.setAttribute=function(t,r){return this},e.prototype.setAttributes=function(t){return this},e.prototype.addEvent=function(t,r){return this},e.prototype.addLink=function(t){return this},e.prototype.addLinks=function(t){return this},e.prototype.setStatus=function(t){return this},e.prototype.updateName=function(t){return this},e.prototype.end=function(t){},e.prototype.isRecording=function(){return!1},e.prototype.recordException=function(t,r){},e}()});function Yht(e){return e.getValue(jIr)||void 0}function CIi(){return Yht(Kse.getInstance().active())}function VHe(e,t){return e.setValue(jIr,t)}function mIi(e){return e.deleteValue(jIr)}function hIi(e,t){return VHe(e,new jse(t))}function Hht(e){var t;return(t=Yht(e))===null||t===void 0?void 0:t.spanContext()}var jIr,zIr=cc(()=>{GHe();Qht();FHe();jIr=rwe("OpenTelemetry Context Key SPAN")});function qIr(e){return LBa.test(e)&&e!==LHe}function $Ir(e){return VBa.test(e)&&e!==ZHe}function iwe(e){return qIr(e.traceId)&&$Ir(e.spanId)}function _Ii(e){return new jse(e)}var LBa,VBa,Xht=cc(()=>{Mht();Qht();LBa=/^([0-9a-f]{32})$/i,VBa=/^[0-9a-f]{16}$/i});function WBa(e){return typeof e=="object"&&typeof e.spanId=="string"&&typeof e.traceId=="string"&&typeof e.traceFlags=="number"}var eCr,Jht,tCr=cc(()=>{FHe();zIr();Qht();Xht();eCr=Kse.getInstance(),Jht=function(){function e(){}return e.prototype.startSpan=function(t,r,s){s===void 0&&(s=eCr.active());var a=!!r?.root;if(a)return new jse;var o=s&&Hht(s);return WBa(o)&&iwe(o)?new jse(o):new jse},e.prototype.startActiveSpan=function(t,r,s,a){var o,g,p;if(!(arguments.length<2)){arguments.length===2?p=r:arguments.length===3?(o=r,p=s):(o=r,g=s,p=a);var f=g??eCr.active(),m=this.startSpan(t,o,f),y=VHe(f,m);return eCr.with(y,p,void 0,m)}},e}()});var PBa,Uht,rCr=cc(()=>{tCr();PBa=new Jht,Uht=function(){function e(t,r,s,a){this._provider=t,this.name=r,this.version=s,this.options=a}return e.prototype.startSpan=function(t,r,s){return this._getTracer().startSpan(t,r,s)},e.prototype.startActiveSpan=function(t,r,s,a){var o=this._getTracer();return Reflect.apply(o.startActiveSpan,o,arguments)},e.prototype._getTracer=function(){if(this._delegate)return this._delegate;var t=this._provider.getDelegateTracer(this.name,this.version,this.options);return t?(this._delegate=t,this._delegate):PBa},e}()});var yIi,bIi=cc(()=>{tCr();yIi=function(){function e(){}return e.prototype.getTracer=function(t,r,s){return new Jht},e}()});var OBa,WHe,nCr=cc(()=>{rCr();bIi();OBa=new yIi,WHe=function(){function e(){}return e.prototype.getTracer=function(t,r,s){var a;return(a=this.getDelegateTracer(t,r,s))!==null&&a!==void 0?a:new Uht(this,t,r,s)},e.prototype.getDelegate=function(){var t;return(t=this._delegate)!==null&&t!==void 0?t:OBa},e.prototype.setDelegate=function(t){this._delegate=t},e.prototype.getDelegateTracer=function(t,r,s){var a;return(a=this._delegate)===null||a===void 0?void 0:a.getTracer(t,r,s)},e}()});var Kht,EIi=cc(()=>{(function(e){e[e.NOT_RECORD=0]="NOT_RECORD",e[e.RECORD=1]="RECORD",e[e.RECORD_AND_SAMPLED=2]="RECORD_AND_SAMPLED"})(Kht||(Kht={}))});var jht,BIi=cc(()=>{(function(e){e[e.INTERNAL=0]="INTERNAL",e[e.SERVER=1]="SERVER",e[e.CLIENT=2]="CLIENT",e[e.PRODUCER=3]="PRODUCER",e[e.CONSUMER=4]="CONSUMER"})(jht||(jht={}))});var zht,vIi=cc(()=>{(function(e){e[e.UNSET=0]="UNSET",e[e.OK=1]="OK",e[e.ERROR=2]="ERROR"})(zht||(zht={}))});function SIi(e){return YBa.test(e)}function wIi(e){return HBa.test(e)&&!XBa.test(e)}var iCr,MBa,QBa,YBa,HBa,XBa,TIi=cc(()=>{iCr="[_0-9a-z-*/]",MBa="[a-z]"+iCr+"{0,255}",QBa="[a-z0-9]"+iCr+"{0,240}@[a-z]"+iCr+"{0,13}",YBa=new RegExp("^(?:"+MBa+"|"+QBa+")$"),HBa=/^[ -~]{0,255}[!-~]$/,XBa=/,|=/});var NIi,JBa,RIi,DIi,xIi,kIi=cc(()=>{TIi();NIi=32,JBa=512,RIi=",",DIi="=",xIi=function(){function e(t){this._internalState=new Map,t&&this._parse(t)}return e.prototype.set=function(t,r){var s=this._clone();return s._internalState.has(t)&&s._internalState.delete(t),s._internalState.set(t,r),s},e.prototype.unset=function(t){var r=this._clone();return r._internalState.delete(t),r},e.prototype.get=function(t){return this._internalState.get(t)},e.prototype.serialize=function(){var t=this;return this._keys().reduce(function(r,s){return r.push(s+DIi+t.get(s)),r},[]).join(RIi)},e.prototype._parse=function(t){t.length>JBa||(this._internalState=t.split(RIi).reverse().reduce(function(r,s){var a=s.trim(),o=a.indexOf(DIi);if(o!==-1){var g=a.slice(0,o),p=a.slice(o+1,s.length);SIi(g)&&wIi(p)&&r.set(g,p)}return r},new Map),this._internalState.size>NIi&&(this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,NIi))))},e.prototype._keys=function(){return Array.from(this._internalState.keys()).reverse()},e.prototype._clone=function(){var t=new e;return t._internalState=new Map(this._internalState),t},e}()});function GIi(e){return new xIi(e)}var FIi=cc(()=>{kIi()});var sCr,ZIi=cc(()=>{FHe();sCr=Kse.getInstance()});var oCr,LIi=cc(()=>{rIe();oCr=Pk.instance()});var UBa,VIi,WIi=cc(()=>{XIr();UBa=function(){function e(){}return e.prototype.getMeter=function(t,r,s){return HIr},e}(),VIi=new UBa});var aCr,PIi,OIi=cc(()=>{WIi();tIe();rIe();aCr="metrics",PIi=function(){function e(){}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalMeterProvider=function(t){return rK(aCr,t,Pk.instance())},e.prototype.getMeterProvider=function(){return n3(aCr)||VIi},e.prototype.getMeter=function(t,r,s){return this.getMeterProvider().getMeter(t,r,s)},e.prototype.disable=function(){nK(aCr,Pk.instance())},e}()});var cCr,MIi=cc(()=>{OIi();cCr=PIi.getInstance()});var QIi,YIi=cc(()=>{QIi=function(){function e(){}return e.prototype.inject=function(t,r){},e.prototype.extract=function(t,r){return t},e.prototype.fields=function(){return[]},e}()});function uCr(e){return e.getValue(lCr)||void 0}function HIi(){return uCr(Kse.getInstance().active())}function XIi(e,t){return e.setValue(lCr,t)}function JIi(e){return e.deleteValue(lCr)}var lCr,UIi=cc(()=>{FHe();GHe();lCr=rwe("OpenTelemetry Baggage Key")});var gCr,KBa,KIi,jIi=cc(()=>{tIe();YIi();JIr();UIi();MIr();rIe();gCr="propagation",KBa=new QIi,KIi=function(){function e(){this.createBaggage=lIi,this.getBaggage=uCr,this.getActiveBaggage=HIi,this.setBaggage=XIi,this.deleteBaggage=JIi}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalPropagator=function(t){return rK(gCr,t,Pk.instance())},e.prototype.inject=function(t,r,s){return s===void 0&&(s=Pht),this._getGlobalPropagator().inject(t,r,s)},e.prototype.extract=function(t,r,s){return s===void 0&&(s=Wht),this._getGlobalPropagator().extract(t,r,s)},e.prototype.fields=function(){return this._getGlobalPropagator().fields()},e.prototype.disable=function(){nK(gCr,Pk.instance())},e.prototype._getGlobalPropagator=function(){return n3(gCr)||KBa},e}()});var ACr,zIi=cc(()=>{jIi();ACr=KIi.getInstance()});var dCr,qIi,$Ii=cc(()=>{tIe();nCr();Xht();zIr();rIe();dCr="trace",qIi=function(){function e(){this._proxyTracerProvider=new WHe,this.wrapSpanContext=_Ii,this.isSpanContextValid=iwe,this.deleteSpan=mIi,this.getSpan=Yht,this.getActiveSpan=CIi,this.getSpanContext=Hht,this.setSpan=VHe,this.setSpanContext=hIi}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalTracerProvider=function(t){var r=rK(dCr,this._proxyTracerProvider,Pk.instance());return r&&this._proxyTracerProvider.setDelegate(t),r},e.prototype.getTracerProvider=function(){return n3(dCr)||this._proxyTracerProvider},e.prototype.getTracer=function(t,r){return this.getTracerProvider().getTracer(t,r)},e.prototype.disable=function(){nK(dCr,Pk.instance()),this._proxyTracerProvider=new WHe},e}()});var pCr,eCi=cc(()=>{$Ii();pCr=qIi.getInstance()});var EI={};jf(EI,{DiagConsoleLogger:()=>gIi,DiagLogLevel:()=>jD,INVALID_SPANID:()=>ZHe,INVALID_SPAN_CONTEXT:()=>Oht,INVALID_TRACEID:()=>LHe,ProxyTracer:()=>Uht,ProxyTracerProvider:()=>WHe,ROOT_CONTEXT:()=>Zht,SamplingDecision:()=>Kht,SpanKind:()=>jht,SpanStatusCode:()=>zht,TraceFlags:()=>nwe,ValueType:()=>Vht,baggageEntryMetadataFromString:()=>uIi,context:()=>sCr,createContextKey:()=>rwe,createNoopMeter:()=>dIi,createTraceState:()=>GIi,default:()=>jBa,defaultTextMapGetter:()=>Wht,defaultTextMapSetter:()=>Pht,diag:()=>oCr,isSpanContextValid:()=>iwe,isValidSpanId:()=>$Ir,isValidTraceId:()=>qIr,metrics:()=>cCr,propagation:()=>ACr,trace:()=>pCr});var jBa,BI=cc(()=>{MIr();GHe();AIi();Fht();XIr();pIi();JIr();rCr();nCr();EIi();BIi();vIi();KIr();FIi();Xht();Mht();ZIi();LIi();MIi();zIi();eCi();jBa={context:sCr,diag:oCr,metrics:cCr,propagation:ACr,trace:pCr}});var tCi=z(N0=>{"use strict";Object.defineProperty(N0,"__esModule",{value:!0});N0.MessageTypeValues=N0.RpcGrpcStatusCodeValues=N0.MessagingOperationValues=N0.MessagingDestinationKindValues=N0.HttpFlavorValues=N0.NetHostConnectionSubtypeValues=N0.NetHostConnectionTypeValues=N0.NetTransportValues=N0.FaasInvokedProviderValues=N0.FaasDocumentOperationValues=N0.FaasTriggerValues=N0.DbCassandraConsistencyLevelValues=N0.DbSystemValues=N0.SemanticAttributes=void 0;N0.SemanticAttributes={AWS_LAMBDA_INVOKED_ARN:"aws.lambda.invoked_arn",DB_SYSTEM:"db.system",DB_CONNECTION_STRING:"db.connection_string",DB_USER:"db.user",DB_JDBC_DRIVER_CLASSNAME:"db.jdbc.driver_classname",DB_NAME:"db.name",DB_STATEMENT:"db.statement",DB_OPERATION:"db.operation",DB_MSSQL_INSTANCE_NAME:"db.mssql.instance_name",DB_CASSANDRA_KEYSPACE:"db.cassandra.keyspace",DB_CASSANDRA_PAGE_SIZE:"db.cassandra.page_size",DB_CASSANDRA_CONSISTENCY_LEVEL:"db.cassandra.consistency_level",DB_CASSANDRA_TABLE:"db.cassandra.table",DB_CASSANDRA_IDEMPOTENCE:"db.cassandra.idempotence",DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT:"db.cassandra.speculative_execution_count",DB_CASSANDRA_COORDINATOR_ID:"db.cassandra.coordinator.id",DB_CASSANDRA_COORDINATOR_DC:"db.cassandra.coordinator.dc",DB_HBASE_NAMESPACE:"db.hbase.namespace",DB_REDIS_DATABASE_INDEX:"db.redis.database_index",DB_MONGODB_COLLECTION:"db.mongodb.collection",DB_SQL_TABLE:"db.sql.table",EXCEPTION_TYPE:"exception.type",EXCEPTION_MESSAGE:"exception.message",EXCEPTION_STACKTRACE:"exception.stacktrace",EXCEPTION_ESCAPED:"exception.escaped",FAAS_TRIGGER:"faas.trigger",FAAS_EXECUTION:"faas.execution",FAAS_DOCUMENT_COLLECTION:"faas.document.collection",FAAS_DOCUMENT_OPERATION:"faas.document.operation",FAAS_DOCUMENT_TIME:"faas.document.time",FAAS_DOCUMENT_NAME:"faas.document.name",FAAS_TIME:"faas.time",FAAS_CRON:"faas.cron",FAAS_COLDSTART:"faas.coldstart",FAAS_INVOKED_NAME:"faas.invoked_name",FAAS_INVOKED_PROVIDER:"faas.invoked_provider",FAAS_INVOKED_REGION:"faas.invoked_region",NET_TRANSPORT:"net.transport",NET_PEER_IP:"net.peer.ip",NET_PEER_PORT:"net.peer.port",NET_PEER_NAME:"net.peer.name",NET_HOST_IP:"net.host.ip",NET_HOST_PORT:"net.host.port",NET_HOST_NAME:"net.host.name",NET_HOST_CONNECTION_TYPE:"net.host.connection.type",NET_HOST_CONNECTION_SUBTYPE:"net.host.connection.subtype",NET_HOST_CARRIER_NAME:"net.host.carrier.name",NET_HOST_CARRIER_MCC:"net.host.carrier.mcc",NET_HOST_CARRIER_MNC:"net.host.carrier.mnc",NET_HOST_CARRIER_ICC:"net.host.carrier.icc",PEER_SERVICE:"peer.service",ENDUSER_ID:"enduser.id",ENDUSER_ROLE:"enduser.role",ENDUSER_SCOPE:"enduser.scope",THREAD_ID:"thread.id",THREAD_NAME:"thread.name",CODE_FUNCTION:"code.function",CODE_NAMESPACE:"code.namespace",CODE_FILEPATH:"code.filepath",CODE_LINENO:"code.lineno",HTTP_METHOD:"http.method",HTTP_URL:"http.url",HTTP_TARGET:"http.target",HTTP_HOST:"http.host",HTTP_SCHEME:"http.scheme",HTTP_STATUS_CODE:"http.status_code",HTTP_FLAVOR:"http.flavor",HTTP_USER_AGENT:"http.user_agent",HTTP_REQUEST_CONTENT_LENGTH:"http.request_content_length",HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED:"http.request_content_length_uncompressed",HTTP_RESPONSE_CONTENT_LENGTH:"http.response_content_length",HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED:"http.response_content_length_uncompressed",HTTP_SERVER_NAME:"http.server_name",HTTP_ROUTE:"http.route",HTTP_CLIENT_IP:"http.client_ip",AWS_DYNAMODB_TABLE_NAMES:"aws.dynamodb.table_names",AWS_DYNAMODB_CONSUMED_CAPACITY:"aws.dynamodb.consumed_capacity",AWS_DYNAMODB_ITEM_COLLECTION_METRICS:"aws.dynamodb.item_collection_metrics",AWS_DYNAMODB_PROVISIONED_READ_CAPACITY:"aws.dynamodb.provisioned_read_capacity",AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY:"aws.dynamodb.provisioned_write_capacity",AWS_DYNAMODB_CONSISTENT_READ:"aws.dynamodb.consistent_read",AWS_DYNAMODB_PROJECTION:"aws.dynamodb.projection",AWS_DYNAMODB_LIMIT:"aws.dynamodb.limit",AWS_DYNAMODB_ATTRIBUTES_TO_GET:"aws.dynamodb.attributes_to_get",AWS_DYNAMODB_INDEX_NAME:"aws.dynamodb.index_name",AWS_DYNAMODB_SELECT:"aws.dynamodb.select",AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES:"aws.dynamodb.global_secondary_indexes",AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES:"aws.dynamodb.local_secondary_indexes",AWS_DYNAMODB_EXCLUSIVE_START_TABLE:"aws.dynamodb.exclusive_start_table",AWS_DYNAMODB_TABLE_COUNT:"aws.dynamodb.table_count",AWS_DYNAMODB_SCAN_FORWARD:"aws.dynamodb.scan_forward",AWS_DYNAMODB_SEGMENT:"aws.dynamodb.segment",AWS_DYNAMODB_TOTAL_SEGMENTS:"aws.dynamodb.total_segments",AWS_DYNAMODB_COUNT:"aws.dynamodb.count",AWS_DYNAMODB_SCANNED_COUNT:"aws.dynamodb.scanned_count",AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS:"aws.dynamodb.attribute_definitions",AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES:"aws.dynamodb.global_secondary_index_updates",MESSAGING_SYSTEM:"messaging.system",MESSAGING_DESTINATION:"messaging.destination",MESSAGING_DESTINATION_KIND:"messaging.destination_kind",MESSAGING_TEMP_DESTINATION:"messaging.temp_destination",MESSAGING_PROTOCOL:"messaging.protocol",MESSAGING_PROTOCOL_VERSION:"messaging.protocol_version",MESSAGING_URL:"messaging.url",MESSAGING_MESSAGE_ID:"messaging.message_id",MESSAGING_CONVERSATION_ID:"messaging.conversation_id",MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES:"messaging.message_payload_size_bytes",MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES:"messaging.message_payload_compressed_size_bytes",MESSAGING_OPERATION:"messaging.operation",MESSAGING_CONSUMER_ID:"messaging.consumer_id",MESSAGING_RABBITMQ_ROUTING_KEY:"messaging.rabbitmq.routing_key",MESSAGING_KAFKA_MESSAGE_KEY:"messaging.kafka.message_key",MESSAGING_KAFKA_CONSUMER_GROUP:"messaging.kafka.consumer_group",MESSAGING_KAFKA_CLIENT_ID:"messaging.kafka.client_id",MESSAGING_KAFKA_PARTITION:"messaging.kafka.partition",MESSAGING_KAFKA_TOMBSTONE:"messaging.kafka.tombstone",RPC_SYSTEM:"rpc.system",RPC_SERVICE:"rpc.service",RPC_METHOD:"rpc.method",RPC_GRPC_STATUS_CODE:"rpc.grpc.status_code",RPC_JSONRPC_VERSION:"rpc.jsonrpc.version",RPC_JSONRPC_REQUEST_ID:"rpc.jsonrpc.request_id",RPC_JSONRPC_ERROR_CODE:"rpc.jsonrpc.error_code",RPC_JSONRPC_ERROR_MESSAGE:"rpc.jsonrpc.error_message",MESSAGE_TYPE:"message.type",MESSAGE_ID:"message.id",MESSAGE_COMPRESSED_SIZE:"message.compressed_size",MESSAGE_UNCOMPRESSED_SIZE:"message.uncompressed_size"};N0.DbSystemValues={OTHER_SQL:"other_sql",MSSQL:"mssql",MYSQL:"mysql",ORACLE:"oracle",DB2:"db2",POSTGRESQL:"postgresql",REDSHIFT:"redshift",HIVE:"hive",CLOUDSCAPE:"cloudscape",HSQLDB:"hsqldb",PROGRESS:"progress",MAXDB:"maxdb",HANADB:"hanadb",INGRES:"ingres",FIRSTSQL:"firstsql",EDB:"edb",CACHE:"cache",ADABAS:"adabas",FIREBIRD:"firebird",DERBY:"derby",FILEMAKER:"filemaker",INFORMIX:"informix",INSTANTDB:"instantdb",INTERBASE:"interbase",MARIADB:"mariadb",NETEZZA:"netezza",PERVASIVE:"pervasive",POINTBASE:"pointbase",SQLITE:"sqlite",SYBASE:"sybase",TERADATA:"teradata",VERTICA:"vertica",H2:"h2",COLDFUSION:"coldfusion",CASSANDRA:"cassandra",HBASE:"hbase",MONGODB:"mongodb",REDIS:"redis",COUCHBASE:"couchbase",COUCHDB:"couchdb",COSMOSDB:"cosmosdb",DYNAMODB:"dynamodb",NEO4J:"neo4j",GEODE:"geode",ELASTICSEARCH:"elasticsearch",MEMCACHED:"memcached",COCKROACHDB:"cockroachdb"};N0.DbCassandraConsistencyLevelValues={ALL:"all",EACH_QUORUM:"each_quorum",QUORUM:"quorum",LOCAL_QUORUM:"local_quorum",ONE:"one",TWO:"two",THREE:"three",LOCAL_ONE:"local_one",ANY:"any",SERIAL:"serial",LOCAL_SERIAL:"local_serial"};N0.FaasTriggerValues={DATASOURCE:"datasource",HTTP:"http",PUBSUB:"pubsub",TIMER:"timer",OTHER:"other"};N0.FaasDocumentOperationValues={INSERT:"insert",EDIT:"edit",DELETE:"delete"};N0.FaasInvokedProviderValues={ALIBABA_CLOUD:"alibaba_cloud",AWS:"aws",AZURE:"azure",GCP:"gcp"};N0.NetTransportValues={IP_TCP:"ip_tcp",IP_UDP:"ip_udp",IP:"ip",UNIX:"unix",PIPE:"pipe",INPROC:"inproc",OTHER:"other"};N0.NetHostConnectionTypeValues={WIFI:"wifi",WIRED:"wired",CELL:"cell",UNAVAILABLE:"unavailable",UNKNOWN:"unknown"};N0.NetHostConnectionSubtypeValues={GPRS:"gprs",EDGE:"edge",UMTS:"umts",CDMA:"cdma",EVDO_0:"evdo_0",EVDO_A:"evdo_a",CDMA2000_1XRTT:"cdma2000_1xrtt",HSDPA:"hsdpa",HSUPA:"hsupa",HSPA:"hspa",IDEN:"iden",EVDO_B:"evdo_b",LTE:"lte",EHRPD:"ehrpd",HSPAP:"hspap",GSM:"gsm",TD_SCDMA:"td_scdma",IWLAN:"iwlan",NR:"nr",NRNSA:"nrnsa",LTE_CA:"lte_ca"};N0.HttpFlavorValues={HTTP_1_0:"1.0",HTTP_1_1:"1.1",HTTP_2_0:"2.0",SPDY:"SPDY",QUIC:"QUIC"};N0.MessagingDestinationKindValues={QUEUE:"queue",TOPIC:"topic"};N0.MessagingOperationValues={RECEIVE:"receive",PROCESS:"process"};N0.RpcGrpcStatusCodeValues={OK:0,CANCELLED:1,UNKNOWN:2,INVALID_ARGUMENT:3,DEADLINE_EXCEEDED:4,NOT_FOUND:5,ALREADY_EXISTS:6,PERMISSION_DENIED:7,RESOURCE_EXHAUSTED:8,FAILED_PRECONDITION:9,ABORTED:10,OUT_OF_RANGE:11,UNIMPLEMENTED:12,INTERNAL:13,UNAVAILABLE:14,DATA_LOSS:15,UNAUTHENTICATED:16};N0.MessageTypeValues={SENT:"SENT",RECEIVED:"RECEIVED"}});var rCi=z(iIe=>{"use strict";var zBa=iIe&&iIe.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),qBa=iIe&&iIe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&zBa(t,e,r)};Object.defineProperty(iIe,"__esModule",{value:!0});qBa(tCi(),iIe)});var nCi=z(Ok=>{"use strict";Object.defineProperty(Ok,"__esModule",{value:!0});Ok.TelemetrySdkLanguageValues=Ok.OsTypeValues=Ok.HostArchValues=Ok.AwsEcsLaunchtypeValues=Ok.CloudPlatformValues=Ok.CloudProviderValues=Ok.SemanticResourceAttributes=void 0;Ok.SemanticResourceAttributes={CLOUD_PROVIDER:"cloud.provider",CLOUD_ACCOUNT_ID:"cloud.account.id",CLOUD_REGION:"cloud.region",CLOUD_AVAILABILITY_ZONE:"cloud.availability_zone",CLOUD_PLATFORM:"cloud.platform",AWS_ECS_CONTAINER_ARN:"aws.ecs.container.arn",AWS_ECS_CLUSTER_ARN:"aws.ecs.cluster.arn",AWS_ECS_LAUNCHTYPE:"aws.ecs.launchtype",AWS_ECS_TASK_ARN:"aws.ecs.task.arn",AWS_ECS_TASK_FAMILY:"aws.ecs.task.family",AWS_ECS_TASK_REVISION:"aws.ecs.task.revision",AWS_EKS_CLUSTER_ARN:"aws.eks.cluster.arn",AWS_LOG_GROUP_NAMES:"aws.log.group.names",AWS_LOG_GROUP_ARNS:"aws.log.group.arns",AWS_LOG_STREAM_NAMES:"aws.log.stream.names",AWS_LOG_STREAM_ARNS:"aws.log.stream.arns",CONTAINER_NAME:"container.name",CONTAINER_ID:"container.id",CONTAINER_RUNTIME:"container.runtime",CONTAINER_IMAGE_NAME:"container.image.name",CONTAINER_IMAGE_TAG:"container.image.tag",DEPLOYMENT_ENVIRONMENT:"deployment.environment",DEVICE_ID:"device.id",DEVICE_MODEL_IDENTIFIER:"device.model.identifier",DEVICE_MODEL_NAME:"device.model.name",FAAS_NAME:"faas.name",FAAS_ID:"faas.id",FAAS_VERSION:"faas.version",FAAS_INSTANCE:"faas.instance",FAAS_MAX_MEMORY:"faas.max_memory",HOST_ID:"host.id",HOST_NAME:"host.name",HOST_TYPE:"host.type",HOST_ARCH:"host.arch",HOST_IMAGE_NAME:"host.image.name",HOST_IMAGE_ID:"host.image.id",HOST_IMAGE_VERSION:"host.image.version",K8S_CLUSTER_NAME:"k8s.cluster.name",K8S_NODE_NAME:"k8s.node.name",K8S_NODE_UID:"k8s.node.uid",K8S_NAMESPACE_NAME:"k8s.namespace.name",K8S_POD_UID:"k8s.pod.uid",K8S_POD_NAME:"k8s.pod.name",K8S_CONTAINER_NAME:"k8s.container.name",K8S_REPLICASET_UID:"k8s.replicaset.uid",K8S_REPLICASET_NAME:"k8s.replicaset.name",K8S_DEPLOYMENT_UID:"k8s.deployment.uid",K8S_DEPLOYMENT_NAME:"k8s.deployment.name",K8S_STATEFULSET_UID:"k8s.statefulset.uid",K8S_STATEFULSET_NAME:"k8s.statefulset.name",K8S_DAEMONSET_UID:"k8s.daemonset.uid",K8S_DAEMONSET_NAME:"k8s.daemonset.name",K8S_JOB_UID:"k8s.job.uid",K8S_JOB_NAME:"k8s.job.name",K8S_CRONJOB_UID:"k8s.cronjob.uid",K8S_CRONJOB_NAME:"k8s.cronjob.name",OS_TYPE:"os.type",OS_DESCRIPTION:"os.description",OS_NAME:"os.name",OS_VERSION:"os.version",PROCESS_PID:"process.pid",PROCESS_EXECUTABLE_NAME:"process.executable.name",PROCESS_EXECUTABLE_PATH:"process.executable.path",PROCESS_COMMAND:"process.command",PROCESS_COMMAND_LINE:"process.command_line",PROCESS_COMMAND_ARGS:"process.command_args",PROCESS_OWNER:"process.owner",PROCESS_RUNTIME_NAME:"process.runtime.name",PROCESS_RUNTIME_VERSION:"process.runtime.version",PROCESS_RUNTIME_DESCRIPTION:"process.runtime.description",SERVICE_NAME:"service.name",SERVICE_NAMESPACE:"service.namespace",SERVICE_INSTANCE_ID:"service.instance.id",SERVICE_VERSION:"service.version",TELEMETRY_SDK_NAME:"telemetry.sdk.name",TELEMETRY_SDK_LANGUAGE:"telemetry.sdk.language",TELEMETRY_SDK_VERSION:"telemetry.sdk.version",TELEMETRY_AUTO_VERSION:"telemetry.auto.version",WEBENGINE_NAME:"webengine.name",WEBENGINE_VERSION:"webengine.version",WEBENGINE_DESCRIPTION:"webengine.description"};Ok.CloudProviderValues={ALIBABA_CLOUD:"alibaba_cloud",AWS:"aws",AZURE:"azure",GCP:"gcp"};Ok.CloudPlatformValues={ALIBABA_CLOUD_ECS:"alibaba_cloud_ecs",ALIBABA_CLOUD_FC:"alibaba_cloud_fc",AWS_EC2:"aws_ec2",AWS_ECS:"aws_ecs",AWS_EKS:"aws_eks",AWS_LAMBDA:"aws_lambda",AWS_ELASTIC_BEANSTALK:"aws_elastic_beanstalk",AZURE_VM:"azure_vm",AZURE_CONTAINER_INSTANCES:"azure_container_instances",AZURE_AKS:"azure_aks",AZURE_FUNCTIONS:"azure_functions",AZURE_APP_SERVICE:"azure_app_service",GCP_COMPUTE_ENGINE:"gcp_compute_engine",GCP_CLOUD_RUN:"gcp_cloud_run",GCP_KUBERNETES_ENGINE:"gcp_kubernetes_engine",GCP_CLOUD_FUNCTIONS:"gcp_cloud_functions",GCP_APP_ENGINE:"gcp_app_engine"};Ok.AwsEcsLaunchtypeValues={EC2:"ec2",FARGATE:"fargate"};Ok.HostArchValues={AMD64:"amd64",ARM32:"arm32",ARM64:"arm64",IA64:"ia64",PPC32:"ppc32",PPC64:"ppc64",X86:"x86"};Ok.OsTypeValues={WINDOWS:"windows",LINUX:"linux",DARWIN:"darwin",FREEBSD:"freebsd",NETBSD:"netbsd",OPENBSD:"openbsd",DRAGONFLYBSD:"dragonflybsd",HPUX:"hpux",AIX:"aix",SOLARIS:"solaris",Z_OS:"z_os"};Ok.TelemetrySdkLanguageValues={CPP:"cpp",DOTNET:"dotnet",ERLANG:"erlang",GO:"go",JAVA:"java",NODEJS:"nodejs",PHP:"php",PYTHON:"python",RUBY:"ruby",WEBJS:"webjs"}});var iCi=z(sIe=>{"use strict";var $Ba=sIe&&sIe.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),eva=sIe&&sIe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&$Ba(t,e,r)};Object.defineProperty(sIe,"__esModule",{value:!0});eva(nCi(),sIe)});var qse=z(zse=>{"use strict";var tva=zse&&zse.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),sCi=zse&&zse.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&tva(t,e,r)};Object.defineProperty(zse,"__esModule",{value:!0});sCi(rCi(),zse);sCi(iCi(),zse)});var PHe=z($se=>{"use strict";Object.defineProperty($se,"__esModule",{value:!0});$se.isTracingSuppressed=$se.unsuppressTracing=$se.suppressTracing=void 0;var rva=(BI(),Ai(EI)),fCr=(0,rva.createContextKey)("OpenTelemetry SDK Context Key SUPPRESS_TRACING");function nva(e){return e.setValue(fCr,!0)}$se.suppressTracing=nva;function iva(e){return e.deleteValue(fCr)}$se.unsuppressTracing=iva;function sva(e){return e.getValue(fCr)===!0}$se.isTracingSuppressed=sva});var ICr=z(Mk=>{"use strict";Object.defineProperty(Mk,"__esModule",{value:!0});Mk.BAGGAGE_MAX_TOTAL_LENGTH=Mk.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=Mk.BAGGAGE_MAX_NAME_VALUE_PAIRS=Mk.BAGGAGE_HEADER=Mk.BAGGAGE_ITEMS_SEPARATOR=Mk.BAGGAGE_PROPERTIES_SEPARATOR=Mk.BAGGAGE_KEY_PAIR_SEPARATOR=void 0;Mk.BAGGAGE_KEY_PAIR_SEPARATOR="=";Mk.BAGGAGE_PROPERTIES_SEPARATOR=";";Mk.BAGGAGE_ITEMS_SEPARATOR=",";Mk.BAGGAGE_HEADER="baggage";Mk.BAGGAGE_MAX_NAME_VALUE_PAIRS=180;Mk.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=4096;Mk.BAGGAGE_MAX_TOTAL_LENGTH=8192});var CCr=z(iK=>{"use strict";Object.defineProperty(iK,"__esModule",{value:!0});iK.parseKeyPairsIntoRecord=iK.parsePairKeyValue=iK.getKeyPairs=iK.serializeKeyPairs=void 0;var ova=(BI(),Ai(EI)),oIe=ICr();function ava(e){return e.reduce((t,r)=>{let s=`${t}${t!==""?oIe.BAGGAGE_ITEMS_SEPARATOR:""}${r}`;return s.length>oIe.BAGGAGE_MAX_TOTAL_LENGTH?t:s},"")}iK.serializeKeyPairs=ava;function cva(e){return e.getAllEntries().map(([t,r])=>{let s=`${encodeURIComponent(t)}=${encodeURIComponent(r.value)}`;return r.metadata!==void 0&&(s+=oIe.BAGGAGE_PROPERTIES_SEPARATOR+r.metadata.toString()),s})}iK.getKeyPairs=cva;function oCi(e){let t=e.split(oIe.BAGGAGE_PROPERTIES_SEPARATOR);if(t.length<=0)return;let r=t.shift();if(!r)return;let s=r.indexOf(oIe.BAGGAGE_KEY_PAIR_SEPARATOR);if(s<=0)return;let a=decodeURIComponent(r.substring(0,s).trim()),o=decodeURIComponent(r.substring(s+1).trim()),g;return t.length>0&&(g=(0,ova.baggageEntryMetadataFromString)(t.join(oIe.BAGGAGE_PROPERTIES_SEPARATOR))),{key:a,value:o,metadata:g}}iK.parsePairKeyValue=oCi;function lva(e){return typeof e!="string"||e.length===0?{}:e.split(oIe.BAGGAGE_ITEMS_SEPARATOR).map(t=>oCi(t)).filter(t=>t!==void 0&&t.value.length>0).reduce((t,r)=>(t[r.key]=r.value,t),{})}iK.parseKeyPairsIntoRecord=lva});var aCi=z(qht=>{"use strict";Object.defineProperty(qht,"__esModule",{value:!0});qht.W3CBaggagePropagator=void 0;var mCr=(BI(),Ai(EI)),uva=PHe(),aIe=ICr(),hCr=CCr(),_Cr=class{inject(t,r,s){let a=mCr.propagation.getBaggage(t);if(!a||(0,uva.isTracingSuppressed)(t))return;let o=(0,hCr.getKeyPairs)(a).filter(p=>p.length<=aIe.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS).slice(0,aIe.BAGGAGE_MAX_NAME_VALUE_PAIRS),g=(0,hCr.serializeKeyPairs)(o);g.length>0&&s.set(r,aIe.BAGGAGE_HEADER,g)}extract(t,r,s){let a=s.get(r,aIe.BAGGAGE_HEADER),o=Array.isArray(a)?a.join(aIe.BAGGAGE_ITEMS_SEPARATOR):a;if(!o)return t;let g={};return o.length===0||(o.split(aIe.BAGGAGE_ITEMS_SEPARATOR).forEach(f=>{let m=(0,hCr.parsePairKeyValue)(f);if(m){let y={value:m.value};m.metadata&&(y.metadata=m.metadata),g[m.key]=y}}),Object.entries(g).length===0)?t:mCr.propagation.setBaggage(t,mCr.propagation.createBaggage(g))}fields(){return[aIe.BAGGAGE_HEADER]}};qht.W3CBaggagePropagator=_Cr});var cCi=z($ht=>{"use strict";Object.defineProperty($ht,"__esModule",{value:!0});$ht.AnchoredClock=void 0;var yCr=class{constructor(t,r){this._monotonicClock=r,this._epochMillis=t.now(),this._performanceMillis=r.now()}now(){let t=this._monotonicClock.now()-this._performanceMillis;return this._epochMillis+t}};$ht.AnchoredClock=yCr});var dCi=z(eoe=>{"use strict";Object.defineProperty(eoe,"__esModule",{value:!0});eoe.isAttributeValue=eoe.isAttributeKey=eoe.sanitizeAttributes=void 0;var lCi=(BI(),Ai(EI));function gva(e){let t={};if(typeof e!="object"||e==null)return t;for(let[r,s]of Object.entries(e)){if(!uCi(r)){lCi.diag.warn(`Invalid attribute key: ${r}`);continue}if(!gCi(s)){lCi.diag.warn(`Invalid attribute value set for key: ${r}`);continue}Array.isArray(s)?t[r]=s.slice():t[r]=s}return t}eoe.sanitizeAttributes=gva;function uCi(e){return typeof e=="string"&&e.length>0}eoe.isAttributeKey=uCi;function gCi(e){return e==null?!0:Array.isArray(e)?Ava(e):ACi(e)}eoe.isAttributeValue=gCi;function Ava(e){let t;for(let r of e)if(r!=null){if(!t){if(ACi(r)){t=typeof r;continue}return!1}if(typeof r!==t)return!1}return!0}function ACi(e){switch(typeof e){case"number":case"boolean":case"string":return!0}return!1}});var bCr=z(e_t=>{"use strict";Object.defineProperty(e_t,"__esModule",{value:!0});e_t.loggingErrorHandler=void 0;var dva=(BI(),Ai(EI));function pva(){return e=>{dva.diag.error(fva(e))}}e_t.loggingErrorHandler=pva;function fva(e){return typeof e=="string"?e:JSON.stringify(Iva(e))}function Iva(e){let t={},r=e;for(;r!==null;)Object.getOwnPropertyNames(r).forEach(s=>{if(t[s])return;let a=r[s];a&&(t[s]=String(a))}),r=Object.getPrototypeOf(r);return t}});var ECr=z(swe=>{"use strict";Object.defineProperty(swe,"__esModule",{value:!0});swe.globalErrorHandler=swe.setGlobalErrorHandler=void 0;var Cva=bCr(),pCi=(0,Cva.loggingErrorHandler)();function mva(e){pCi=e}swe.setGlobalErrorHandler=mva;function hva(e){try{pCi(e)}catch{}}swe.globalErrorHandler=hva});var BCr=z(OHe=>{"use strict";Object.defineProperty(OHe,"__esModule",{value:!0});OHe.TracesSamplerValues=void 0;var _va;(function(e){e.AlwaysOff="always_off",e.AlwaysOn="always_on",e.ParentBasedAlwaysOff="parentbased_always_off",e.ParentBasedAlwaysOn="parentbased_always_on",e.ParentBasedTraceIdRatio="parentbased_traceidratio",e.TraceIdRatio="traceidratio"})(_va=OHe.TracesSamplerValues||(OHe.TracesSamplerValues={}))});var fCi=z(t_t=>{"use strict";Object.defineProperty(t_t,"__esModule",{value:!0});t_t._globalThis=void 0;t_t._globalThis=typeof globalThis=="object"?globalThis:typeof self=="object"?self:typeof window=="object"?window:typeof global=="object"?global:{}});var SCr=z(c1=>{"use strict";Object.defineProperty(c1,"__esModule",{value:!0});c1.getEnvWithoutDefaults=c1.parseEnvironment=c1.DEFAULT_ENVIRONMENT=c1.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=c1.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=c1.DEFAULT_ATTRIBUTE_COUNT_LIMIT=c1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=void 0;var toe=(BI(),Ai(EI)),yva=BCr(),bva=fCi(),Eva=",",Bva=["OTEL_SDK_DISABLED"];function vva(e){return Bva.indexOf(e)>-1}var Sva=["OTEL_BSP_EXPORT_TIMEOUT","OTEL_BSP_MAX_EXPORT_BATCH_SIZE","OTEL_BSP_MAX_QUEUE_SIZE","OTEL_BSP_SCHEDULE_DELAY","OTEL_BLRP_EXPORT_TIMEOUT","OTEL_BLRP_MAX_EXPORT_BATCH_SIZE","OTEL_BLRP_MAX_QUEUE_SIZE","OTEL_BLRP_SCHEDULE_DELAY","OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_EVENT_COUNT_LIMIT","OTEL_SPAN_LINK_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT","OTEL_EXPORTER_OTLP_TIMEOUT","OTEL_EXPORTER_OTLP_TRACES_TIMEOUT","OTEL_EXPORTER_OTLP_METRICS_TIMEOUT","OTEL_EXPORTER_OTLP_LOGS_TIMEOUT","OTEL_EXPORTER_JAEGER_AGENT_PORT"];function wva(e){return Sva.indexOf(e)>-1}var Tva=["OTEL_NO_PATCH_MODULES","OTEL_PROPAGATORS"];function Nva(e){return Tva.indexOf(e)>-1}c1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=1/0;c1.DEFAULT_ATTRIBUTE_COUNT_LIMIT=128;c1.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=128;c1.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=128;c1.DEFAULT_ENVIRONMENT={OTEL_SDK_DISABLED:!1,CONTAINER_NAME:"",ECS_CONTAINER_METADATA_URI_V4:"",ECS_CONTAINER_METADATA_URI:"",HOSTNAME:"",KUBERNETES_SERVICE_HOST:"",NAMESPACE:"",OTEL_BSP_EXPORT_TIMEOUT:3e4,OTEL_BSP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BSP_MAX_QUEUE_SIZE:2048,OTEL_BSP_SCHEDULE_DELAY:5e3,OTEL_BLRP_EXPORT_TIMEOUT:3e4,OTEL_BLRP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BLRP_MAX_QUEUE_SIZE:2048,OTEL_BLRP_SCHEDULE_DELAY:5e3,OTEL_EXPORTER_JAEGER_AGENT_HOST:"",OTEL_EXPORTER_JAEGER_AGENT_PORT:6832,OTEL_EXPORTER_JAEGER_ENDPOINT:"",OTEL_EXPORTER_JAEGER_PASSWORD:"",OTEL_EXPORTER_JAEGER_USER:"",OTEL_EXPORTER_OTLP_ENDPOINT:"",OTEL_EXPORTER_OTLP_TRACES_ENDPOINT:"",OTEL_EXPORTER_OTLP_METRICS_ENDPOINT:"",OTEL_EXPORTER_OTLP_LOGS_ENDPOINT:"",OTEL_EXPORTER_OTLP_HEADERS:"",OTEL_EXPORTER_OTLP_TRACES_HEADERS:"",OTEL_EXPORTER_OTLP_METRICS_HEADERS:"",OTEL_EXPORTER_OTLP_LOGS_HEADERS:"",OTEL_EXPORTER_OTLP_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_TRACES_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_METRICS_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_LOGS_TIMEOUT:1e4,OTEL_EXPORTER_ZIPKIN_ENDPOINT:"http://localhost:9411/api/v2/spans",OTEL_LOG_LEVEL:toe.DiagLogLevel.INFO,OTEL_NO_PATCH_MODULES:[],OTEL_PROPAGATORS:["tracecontext","baggage"],OTEL_RESOURCE_ATTRIBUTES:"",OTEL_SERVICE_NAME:"",OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT:c1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_ATTRIBUTE_COUNT_LIMIT:c1.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT:c1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT:c1.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT:c1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT:c1.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_EVENT_COUNT_LIMIT:128,OTEL_SPAN_LINK_COUNT_LIMIT:128,OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT:c1.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT:c1.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT,OTEL_TRACES_EXPORTER:"",OTEL_TRACES_SAMPLER:yva.TracesSamplerValues.ParentBasedAlwaysOn,OTEL_TRACES_SAMPLER_ARG:"",OTEL_LOGS_EXPORTER:"",OTEL_EXPORTER_OTLP_INSECURE:"",OTEL_EXPORTER_OTLP_TRACES_INSECURE:"",OTEL_EXPORTER_OTLP_METRICS_INSECURE:"",OTEL_EXPORTER_OTLP_LOGS_INSECURE:"",OTEL_EXPORTER_OTLP_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_COMPRESSION:"",OTEL_EXPORTER_OTLP_TRACES_COMPRESSION:"",OTEL_EXPORTER_OTLP_METRICS_COMPRESSION:"",OTEL_EXPORTER_OTLP_LOGS_COMPRESSION:"",OTEL_EXPORTER_OTLP_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_TRACES_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_LOGS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE:"cumulative"};function Rva(e,t,r){if(typeof r[e]>"u")return;let s=String(r[e]);t[e]=s.toLowerCase()==="true"}function Dva(e,t,r,s=-1/0,a=1/0){if(typeof r[e]<"u"){let o=Number(r[e]);isNaN(o)||(oa?t[e]=a:t[e]=o)}}function xva(e,t,r,s=Eva){let a=r[e];typeof a=="string"&&(t[e]=a.split(s).map(o=>o.trim()))}var kva={ALL:toe.DiagLogLevel.ALL,VERBOSE:toe.DiagLogLevel.VERBOSE,DEBUG:toe.DiagLogLevel.DEBUG,INFO:toe.DiagLogLevel.INFO,WARN:toe.DiagLogLevel.WARN,ERROR:toe.DiagLogLevel.ERROR,NONE:toe.DiagLogLevel.NONE};function Gva(e,t,r){let s=r[e];if(typeof s=="string"){let a=kva[s.toUpperCase()];a!=null&&(t[e]=a)}}function vCr(e){let t={};for(let r in c1.DEFAULT_ENVIRONMENT){let s=r;switch(s){case"OTEL_LOG_LEVEL":Gva(s,t,e);break;default:if(vva(s))Rva(s,t,e);else if(wva(s))Dva(s,t,e);else if(Nva(s))xva(s,t,e);else{let a=e[s];typeof a<"u"&&a!==null&&(t[s]=String(a))}}}return t}c1.parseEnvironment=vCr;function Fva(){return typeof process<"u"&&process&&process.env?vCr(process.env):vCr(bva._globalThis)}c1.getEnvWithoutDefaults=Fva});var CCi=z(r_t=>{"use strict";Object.defineProperty(r_t,"__esModule",{value:!0});r_t.getEnv=void 0;var Zva=Dt("os"),ICi=SCr();function Lva(){let e=(0,ICi.parseEnvironment)(process.env);return Object.assign({HOSTNAME:Zva.hostname()},ICi.DEFAULT_ENVIRONMENT,e)}r_t.getEnv=Lva});var mCi=z(n_t=>{"use strict";Object.defineProperty(n_t,"__esModule",{value:!0});n_t._globalThis=void 0;n_t._globalThis=typeof globalThis=="object"?globalThis:global});var _Ci=z(i_t=>{"use strict";Object.defineProperty(i_t,"__esModule",{value:!0});i_t.hexToBase64=void 0;function hCi(e){return e>=48&&e<=57?e-48:e>=97&&e<=102?e-87:e-55}var Vva=Buffer.alloc(8),Wva=Buffer.alloc(16);function Pva(e){let t;e.length===16?t=Vva:e.length===32?t=Wva:t=Buffer.alloc(e.length/2);let r=0;for(let s=0;s{"use strict";Object.defineProperty(o_t,"__esModule",{value:!0});o_t.RandomIdGenerator=void 0;var Ova=8,bCi=16,wCr=class{constructor(){this.generateTraceId=yCi(bCi),this.generateSpanId=yCi(Ova)}};o_t.RandomIdGenerator=wCr;var s_t=Buffer.allocUnsafe(bCi);function yCi(e){return function(){for(let r=0;r>>0,r*4);for(let r=0;r0);r++)r===e-1&&(s_t[e-1]=1);return s_t.toString("hex",0,e)}}});var BCi=z(a_t=>{"use strict";Object.defineProperty(a_t,"__esModule",{value:!0});a_t.otperformance=void 0;var Mva=Dt("perf_hooks");a_t.otperformance=Mva.performance});var l_t=z(c_t=>{"use strict";Object.defineProperty(c_t,"__esModule",{value:!0});c_t.VERSION=void 0;c_t.VERSION="1.16.0"});var vCi=z(u_t=>{"use strict";Object.defineProperty(u_t,"__esModule",{value:!0});u_t.SDK_INFO=void 0;var Qva=l_t(),MHe=qse();u_t.SDK_INFO={[MHe.SemanticResourceAttributes.TELEMETRY_SDK_NAME]:"opentelemetry",[MHe.SemanticResourceAttributes.PROCESS_RUNTIME_NAME]:"node",[MHe.SemanticResourceAttributes.TELEMETRY_SDK_LANGUAGE]:MHe.TelemetrySdkLanguageValues.NODEJS,[MHe.SemanticResourceAttributes.TELEMETRY_SDK_VERSION]:Qva.VERSION}});var SCi=z(g_t=>{"use strict";Object.defineProperty(g_t,"__esModule",{value:!0});g_t.unrefTimer=void 0;function Yva(e){e.unref()}g_t.unrefTimer=Yva});var wCi=z(i3=>{"use strict";var Hva=i3&&i3.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),cIe=i3&&i3.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Hva(t,e,r)};Object.defineProperty(i3,"__esModule",{value:!0});cIe(CCi(),i3);cIe(mCi(),i3);cIe(_Ci(),i3);cIe(ECi(),i3);cIe(BCi(),i3);cIe(vCi(),i3);cIe(SCi(),i3)});var TCr=z(lIe=>{"use strict";var Xva=lIe&&lIe.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Jva=lIe&&lIe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Xva(t,e,r)};Object.defineProperty(lIe,"__esModule",{value:!0});Jva(wCi(),lIe)});var DCi=z(dE=>{"use strict";Object.defineProperty(dE,"__esModule",{value:!0});dE.addHrTimes=dE.isTimeInput=dE.isTimeInputHrTime=dE.hrTimeToMicroseconds=dE.hrTimeToMilliseconds=dE.hrTimeToNanoseconds=dE.hrTimeToTimeStamp=dE.hrTimeDuration=dE.timeInputToHrTime=dE.hrTime=dE.getTimeOrigin=dE.millisToHrTime=void 0;var NCr=TCr(),TCi=9,Uva=6,Kva=Math.pow(10,Uva),A_t=Math.pow(10,TCi);function QHe(e){let t=e/1e3,r=Math.trunc(t),s=Math.round(e%1e3*Kva);return[r,s]}dE.millisToHrTime=QHe;function RCr(){let e=NCr.otperformance.timeOrigin;if(typeof e!="number"){let t=NCr.otperformance;e=t.timing&&t.timing.fetchStart}return e}dE.getTimeOrigin=RCr;function NCi(e){let t=QHe(RCr()),r=QHe(typeof e=="number"?e:NCr.otperformance.now());return RCi(t,r)}dE.hrTime=NCi;function jva(e){if(DCr(e))return e;if(typeof e=="number")return e=A_t&&(r[1]-=A_t,r[0]+=1),r}dE.addHrTimes=RCi});var kCi=z(xCi=>{"use strict";Object.defineProperty(xCi,"__esModule",{value:!0})});var GCi=z(YHe=>{"use strict";Object.defineProperty(YHe,"__esModule",{value:!0});YHe.ExportResultCode=void 0;var nSa;(function(e){e[e.SUCCESS=0]="SUCCESS",e[e.FAILED=1]="FAILED"})(nSa=YHe.ExportResultCode||(YHe.ExportResultCode={}))});var ZCi=z(d_t=>{"use strict";Object.defineProperty(d_t,"__esModule",{value:!0});d_t.CompositePropagator=void 0;var FCi=(BI(),Ai(EI)),xCr=class{constructor(t={}){var r;this._propagators=(r=t.propagators)!==null&&r!==void 0?r:[],this._fields=Array.from(new Set(this._propagators.map(s=>typeof s.fields=="function"?s.fields():[]).reduce((s,a)=>s.concat(a),[])))}inject(t,r,s){for(let a of this._propagators)try{a.inject(t,r,s)}catch(o){FCi.diag.warn(`Failed to inject with ${a.constructor.name}. Err: ${o.message}`)}}extract(t,r,s){return this._propagators.reduce((a,o)=>{try{return o.extract(a,r,s)}catch(g){FCi.diag.warn(`Failed to inject with ${o.constructor.name}. Err: ${g.message}`)}return a},t)}fields(){return this._fields.slice()}};d_t.CompositePropagator=xCr});var LCi=z(owe=>{"use strict";Object.defineProperty(owe,"__esModule",{value:!0});owe.validateValue=owe.validateKey=void 0;var kCr="[_0-9a-z-*/]",iSa=`[a-z]${kCr}{0,255}`,sSa=`[a-z0-9]${kCr}{0,240}@[a-z]${kCr}{0,13}`,oSa=new RegExp(`^(?:${iSa}|${sSa})$`),aSa=/^[ -~]{0,255}[!-~]$/,cSa=/,|=/;function lSa(e){return oSa.test(e)}owe.validateKey=lSa;function uSa(e){return aSa.test(e)&&!cSa.test(e)}owe.validateValue=uSa});var FCr=z(p_t=>{"use strict";Object.defineProperty(p_t,"__esModule",{value:!0});p_t.TraceState=void 0;var VCi=LCi(),WCi=32,gSa=512,PCi=",",OCi="=",GCr=class e{constructor(t){this._internalState=new Map,t&&this._parse(t)}set(t,r){let s=this._clone();return s._internalState.has(t)&&s._internalState.delete(t),s._internalState.set(t,r),s}unset(t){let r=this._clone();return r._internalState.delete(t),r}get(t){return this._internalState.get(t)}serialize(){return this._keys().reduce((t,r)=>(t.push(r+OCi+this.get(r)),t),[]).join(PCi)}_parse(t){t.length>gSa||(this._internalState=t.split(PCi).reverse().reduce((r,s)=>{let a=s.trim(),o=a.indexOf(OCi);if(o!==-1){let g=a.slice(0,o),p=a.slice(o+1,s.length);(0,VCi.validateKey)(g)&&(0,VCi.validateValue)(p)&&r.set(g,p)}return r},new Map),this._internalState.size>WCi&&(this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,WCi))))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let t=new e;return t._internalState=new Map(this._internalState),t}};p_t.TraceState=GCr});var QCi=z(Qk=>{"use strict";Object.defineProperty(Qk,"__esModule",{value:!0});Qk.W3CTraceContextPropagator=Qk.parseTraceParent=Qk.TRACE_STATE_HEADER=Qk.TRACE_PARENT_HEADER=void 0;var f_t=(BI(),Ai(EI)),ASa=PHe(),dSa=FCr();Qk.TRACE_PARENT_HEADER="traceparent";Qk.TRACE_STATE_HEADER="tracestate";var pSa="00",fSa="(?!ff)[\\da-f]{2}",ISa="(?![0]{32})[\\da-f]{32}",CSa="(?![0]{16})[\\da-f]{16}",mSa="[\\da-f]{2}",hSa=new RegExp(`^\\s?(${fSa})-(${ISa})-(${CSa})-(${mSa})(-.*)?\\s?$`);function MCi(e){let t=hSa.exec(e);return!t||t[1]==="00"&&t[5]?null:{traceId:t[2],spanId:t[3],traceFlags:parseInt(t[4],16)}}Qk.parseTraceParent=MCi;var ZCr=class{inject(t,r,s){let a=f_t.trace.getSpanContext(t);if(!a||(0,ASa.isTracingSuppressed)(t)||!(0,f_t.isSpanContextValid)(a))return;let o=`${pSa}-${a.traceId}-${a.spanId}-0${Number(a.traceFlags||f_t.TraceFlags.NONE).toString(16)}`;s.set(r,Qk.TRACE_PARENT_HEADER,o),a.traceState&&s.set(r,Qk.TRACE_STATE_HEADER,a.traceState.serialize())}extract(t,r,s){let a=s.get(r,Qk.TRACE_PARENT_HEADER);if(!a)return t;let o=Array.isArray(a)?a[0]:a;if(typeof o!="string")return t;let g=MCi(o);if(!g)return t;g.isRemote=!0;let p=s.get(r,Qk.TRACE_STATE_HEADER);if(p){let f=Array.isArray(p)?p.join(","):p;g.traceState=new dSa.TraceState(typeof f=="string"?f:void 0)}return f_t.trace.setSpanContext(t,g)}fields(){return[Qk.TRACE_PARENT_HEADER,Qk.TRACE_STATE_HEADER]}};Qk.W3CTraceContextPropagator=ZCr});var HCi=z(YCi=>{"use strict";Object.defineProperty(YCi,"__esModule",{value:!0})});var XCi=z(y5=>{"use strict";Object.defineProperty(y5,"__esModule",{value:!0});y5.getRPCMetadata=y5.deleteRPCMetadata=y5.setRPCMetadata=y5.RPCType=void 0;var _Sa=(BI(),Ai(EI)),LCr=(0,_Sa.createContextKey)("OpenTelemetry SDK Context Key RPC_METADATA"),ySa;(function(e){e.HTTP="http"})(ySa=y5.RPCType||(y5.RPCType={}));function bSa(e,t){return e.setValue(LCr,t)}y5.setRPCMetadata=bSa;function ESa(e){return e.deleteValue(LCr)}y5.deleteRPCMetadata=ESa;function BSa(e){return e.getValue(LCr)}y5.getRPCMetadata=BSa});var WCr=z(I_t=>{"use strict";Object.defineProperty(I_t,"__esModule",{value:!0});I_t.AlwaysOffSampler=void 0;var vSa=(BI(),Ai(EI)),VCr=class{shouldSample(){return{decision:vSa.SamplingDecision.NOT_RECORD}}toString(){return"AlwaysOffSampler"}};I_t.AlwaysOffSampler=VCr});var OCr=z(C_t=>{"use strict";Object.defineProperty(C_t,"__esModule",{value:!0});C_t.AlwaysOnSampler=void 0;var SSa=(BI(),Ai(EI)),PCr=class{shouldSample(){return{decision:SSa.SamplingDecision.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}};C_t.AlwaysOnSampler=PCr});var UCi=z(h_t=>{"use strict";Object.defineProperty(h_t,"__esModule",{value:!0});h_t.ParentBasedSampler=void 0;var m_t=(BI(),Ai(EI)),wSa=ECr(),JCi=WCr(),MCr=OCr(),QCr=class{constructor(t){var r,s,a,o;this._root=t.root,this._root||((0,wSa.globalErrorHandler)(new Error("ParentBasedSampler must have a root sampler configured")),this._root=new MCr.AlwaysOnSampler),this._remoteParentSampled=(r=t.remoteParentSampled)!==null&&r!==void 0?r:new MCr.AlwaysOnSampler,this._remoteParentNotSampled=(s=t.remoteParentNotSampled)!==null&&s!==void 0?s:new JCi.AlwaysOffSampler,this._localParentSampled=(a=t.localParentSampled)!==null&&a!==void 0?a:new MCr.AlwaysOnSampler,this._localParentNotSampled=(o=t.localParentNotSampled)!==null&&o!==void 0?o:new JCi.AlwaysOffSampler}shouldSample(t,r,s,a,o,g){let p=m_t.trace.getSpanContext(t);return!p||!(0,m_t.isSpanContextValid)(p)?this._root.shouldSample(t,r,s,a,o,g):p.isRemote?p.traceFlags&m_t.TraceFlags.SAMPLED?this._remoteParentSampled.shouldSample(t,r,s,a,o,g):this._remoteParentNotSampled.shouldSample(t,r,s,a,o,g):p.traceFlags&m_t.TraceFlags.SAMPLED?this._localParentSampled.shouldSample(t,r,s,a,o,g):this._localParentNotSampled.shouldSample(t,r,s,a,o,g)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}};h_t.ParentBasedSampler=QCr});var KCi=z(__t=>{"use strict";Object.defineProperty(__t,"__esModule",{value:!0});__t.TraceIdRatioBasedSampler=void 0;var YCr=(BI(),Ai(EI)),HCr=class{constructor(t=0){this._ratio=t,this._ratio=this._normalize(t),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(t,r){return{decision:(0,YCr.isValidTraceId)(r)&&this._accumulate(r)=1?1:t<=0?0:t}_accumulate(t){let r=0;for(let s=0;s>>0}return r}};__t.TraceIdRatioBasedSampler=HCr});var emi=z(y_t=>{"use strict";Object.defineProperty(y_t,"__esModule",{value:!0});y_t.isPlainObject=void 0;var TSa="[object Object]",NSa="[object Null]",RSa="[object Undefined]",DSa=Function.prototype,jCi=DSa.toString,xSa=jCi.call(Object),kSa=GSa(Object.getPrototypeOf,Object),zCi=Object.prototype,qCi=zCi.hasOwnProperty,uIe=Symbol?Symbol.toStringTag:void 0,$Ci=zCi.toString;function GSa(e,t){return function(r){return e(t(r))}}function FSa(e){if(!ZSa(e)||LSa(e)!==TSa)return!1;let t=kSa(e);if(t===null)return!0;let r=qCi.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&jCi.call(r)===xSa}y_t.isPlainObject=FSa;function ZSa(e){return e!=null&&typeof e=="object"}function LSa(e){return e==null?e===void 0?RSa:NSa:uIe&&uIe in Object(e)?VSa(e):WSa(e)}function VSa(e){let t=qCi.call(e,uIe),r=e[uIe],s=!1;try{e[uIe]=void 0,s=!0}catch{}let a=$Ci.call(e);return s&&(t?e[uIe]=r:delete e[uIe]),a}function WSa(e){return $Ci.call(e)}});var smi=z(B_t=>{"use strict";Object.defineProperty(B_t,"__esModule",{value:!0});B_t.merge=void 0;var tmi=emi(),PSa=20;function OSa(...e){let t=e.shift(),r=new WeakMap;for(;e.length>0;)t=nmi(t,e.shift(),0,r);return t}B_t.merge=OSa;function XCr(e){return E_t(e)?e.slice():e}function nmi(e,t,r=0,s){let a;if(!(r>PSa)){if(r++,b_t(e)||b_t(t)||imi(t))a=XCr(t);else if(E_t(e)){if(a=e.slice(),E_t(t))for(let o=0,g=t.length;o"u"?delete a[f]:a[f]=m;else{let y=a[f],B=m;if(rmi(e,f,s)||rmi(t,f,s))delete a[f];else{if(HHe(y)&&HHe(B)){let v=s.get(y)||[],G=s.get(B)||[];v.push({obj:e,key:f}),G.push({obj:t,key:f}),s.set(y,v),s.set(B,G)}a[f]=nmi(a[f],m,r,s)}}}}else a=t;return a}}function rmi(e,t,r){let s=r.get(e[t])||[];for(let a=0,o=s.length;a"u"||e instanceof Date||e instanceof RegExp||e===null}function MSa(e,t){return!(!(0,tmi.isPlainObject)(e)||!(0,tmi.isPlainObject)(t))}});var omi=z(awe=>{"use strict";Object.defineProperty(awe,"__esModule",{value:!0});awe.callWithTimeout=awe.TimeoutError=void 0;var v_t=class e extends Error{constructor(t){super(t),Object.setPrototypeOf(this,e.prototype)}};awe.TimeoutError=v_t;function QSa(e,t){let r,s=new Promise(function(o,g){r=setTimeout(function(){g(new v_t("Operation timed out."))},t)});return Promise.race([e,s]).then(a=>(clearTimeout(r),a),a=>{throw clearTimeout(r),a})}awe.callWithTimeout=QSa});var cmi=z(cwe=>{"use strict";Object.defineProperty(cwe,"__esModule",{value:!0});cwe.isUrlIgnored=cwe.urlMatches=void 0;function ami(e,t){return typeof t=="string"?e===t:!!e.match(t)}cwe.urlMatches=ami;function YSa(e,t){if(!t)return!1;for(let r of t)if(ami(e,r))return!0;return!1}cwe.isUrlIgnored=YSa});var lmi=z(S_t=>{"use strict";Object.defineProperty(S_t,"__esModule",{value:!0});S_t.isWrapped=void 0;function HSa(e){return typeof e=="function"&&typeof e.__original=="function"&&typeof e.__unwrap=="function"&&e.__wrapped===!0}S_t.isWrapped=HSa});var umi=z(w_t=>{"use strict";Object.defineProperty(w_t,"__esModule",{value:!0});w_t.Deferred=void 0;var JCr=class{constructor(){this._promise=new Promise((t,r)=>{this._resolve=t,this._reject=r})}get promise(){return this._promise}resolve(t){this._resolve(t)}reject(t){this._reject(t)}};w_t.Deferred=JCr});var gmi=z(T_t=>{"use strict";Object.defineProperty(T_t,"__esModule",{value:!0});T_t.BindOnceFuture=void 0;var XSa=umi(),UCr=class{constructor(t,r){this._callback=t,this._that=r,this._isCalled=!1,this._deferred=new XSa.Deferred}get isCalled(){return this._isCalled}get promise(){return this._deferred.promise}call(...t){if(!this._isCalled){this._isCalled=!0;try{Promise.resolve(this._callback.call(this._that,...t)).then(r=>this._deferred.resolve(r),r=>this._deferred.reject(r))}catch(r){this._deferred.reject(r)}}return this._deferred.promise}};T_t.BindOnceFuture=UCr});var dmi=z(N_t=>{"use strict";Object.defineProperty(N_t,"__esModule",{value:!0});N_t._export=void 0;var Ami=(BI(),Ai(EI)),JSa=PHe();function USa(e,t){return new Promise(r=>{Ami.context.with((0,JSa.suppressTracing)(Ami.context.active()),()=>{e.export(t,s=>{r(s)})})})}N_t._export=USa});var GM=z(nm=>{"use strict";var KSa=nm&&nm.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Vy=nm&&nm.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&KSa(t,e,r)};Object.defineProperty(nm,"__esModule",{value:!0});nm.internal=nm.baggageUtils=void 0;Vy(aCi(),nm);Vy(cCi(),nm);Vy(dCi(),nm);Vy(ECr(),nm);Vy(bCr(),nm);Vy(DCi(),nm);Vy(kCi(),nm);Vy(GCi(),nm);Vy(l_t(),nm);nm.baggageUtils=CCr();Vy(TCr(),nm);Vy(ZCi(),nm);Vy(QCi(),nm);Vy(HCi(),nm);Vy(XCi(),nm);Vy(WCr(),nm);Vy(OCr(),nm);Vy(UCi(),nm);Vy(KCi(),nm);Vy(PHe(),nm);Vy(FCr(),nm);Vy(SCr(),nm);Vy(smi(),nm);Vy(BCr(),nm);Vy(omi(),nm);Vy(cmi(),nm);Vy(lmi(),nm);Vy(gmi(),nm);Vy(l_t(),nm);var jSa=dmi();nm.internal={_export:jSa._export}});var pmi=z(R_t=>{"use strict";Object.defineProperty(R_t,"__esModule",{value:!0});R_t.defaultServiceName=void 0;function zSa(){return`unknown_service:${process.argv0}`}R_t.defaultServiceName=zSa});var KCr=z(lwe=>{"use strict";Object.defineProperty(lwe,"__esModule",{value:!0});lwe.normalizeType=lwe.normalizeArch=void 0;var qSa=e=>{switch(e){case"arm":return"arm32";case"ppc":return"ppc32";case"x64":return"amd64";default:return e}};lwe.normalizeArch=qSa;var $Sa=e=>{switch(e){case"sunos":return"solaris";case"win32":return"windows";default:return e}};lwe.normalizeType=$Sa});var x_t=z(D_t=>{"use strict";Object.defineProperty(D_t,"__esModule",{value:!0});D_t.execAsync=void 0;var ewa=Dt("child_process"),twa=Dt("util");D_t.execAsync=twa.promisify(ewa.exec)});var fmi=z(k_t=>{"use strict";Object.defineProperty(k_t,"__esModule",{value:!0});k_t.getMachineId=void 0;var rwa=x_t(),nwa=(BI(),Ai(EI));async function iwa(){try{let t=(await(0,rwa.execAsync)('ioreg -rd1 -c "IOPlatformExpertDevice"')).stdout.split(` -`).find(s=>s.includes("IOPlatformUUID"));if(!t)return"";let r=t.split('" = "');if(r.length===2)return r[1].slice(0,-1)}catch(e){nwa.diag.debug(`error reading machine id: ${e}`)}return""}k_t.getMachineId=iwa});var Imi=z(G_t=>{"use strict";Object.defineProperty(G_t,"__esModule",{value:!0});G_t.getMachineId=void 0;var swa=Dt("fs"),owa=(BI(),Ai(EI));async function awa(){let e=["/etc/machine-id","/var/lib/dbus/machine-id"];for(let t of e)try{return(await swa.promises.readFile(t,{encoding:"utf8"})).trim()}catch(r){owa.diag.debug(`error reading machine id: ${r}`)}return""}G_t.getMachineId=awa});var mmi=z(F_t=>{"use strict";Object.defineProperty(F_t,"__esModule",{value:!0});F_t.getMachineId=void 0;var cwa=Dt("fs"),lwa=x_t(),Cmi=(BI(),Ai(EI));async function uwa(){try{return(await cwa.promises.readFile("/etc/hostid",{encoding:"utf8"})).trim()}catch(e){Cmi.diag.debug(`error reading machine id: ${e}`)}try{return(await(0,lwa.execAsync)("kenv -q smbios.system.uuid")).stdout.trim()}catch(e){Cmi.diag.debug(`error reading machine id: ${e}`)}return""}F_t.getMachineId=uwa});var _mi=z(Z_t=>{"use strict";Object.defineProperty(Z_t,"__esModule",{value:!0});Z_t.getMachineId=void 0;var hmi=Dt("process"),gwa=x_t(),Awa=(BI(),Ai(EI));async function dwa(){let e="QUERY HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Cryptography /v MachineGuid",t="%windir%\\System32\\REG.exe";hmi.arch==="ia32"&&"PROCESSOR_ARCHITEW6432"in hmi.env&&(t="%windir%\\sysnative\\cmd.exe /c "+t);try{let s=(await(0,gwa.execAsync)(`${t} ${e}`)).stdout.split("REG_SZ");if(s.length===2)return s[1].trim()}catch(r){Awa.diag.debug(`error reading machine id: ${r}`)}return""}Z_t.getMachineId=dwa});var ymi=z(L_t=>{"use strict";Object.defineProperty(L_t,"__esModule",{value:!0});L_t.getMachineId=void 0;var pwa=(BI(),Ai(EI));async function fwa(){return pwa.diag.debug("could not read machine-id: unsupported platform"),""}L_t.getMachineId=fwa});var bmi=z(lq=>{"use strict";Object.defineProperty(lq,"__esModule",{value:!0});lq.getMachineId=void 0;var Iwa=Dt("process"),uwe;lq.getMachineId=uwe;switch(Iwa.platform){case"darwin":lq.getMachineId=uwe=fmi().getMachineId;break;case"linux":lq.getMachineId=uwe=Imi().getMachineId;break;case"freebsd":lq.getMachineId=uwe=mmi().getMachineId;break;case"win32":lq.getMachineId=uwe=_mi().getMachineId;break;default:lq.getMachineId=uwe=ymi().getMachineId}});var qCr=z(V_t=>{"use strict";Object.defineProperty(V_t,"__esModule",{value:!0});V_t.hostDetectorSync=void 0;var jCr=qse(),Cwa=gIe(),Emi=Dt("os"),mwa=KCr(),hwa=bmi(),zCr=class{detect(t){let r={[jCr.SemanticResourceAttributes.HOST_NAME]:(0,Emi.hostname)(),[jCr.SemanticResourceAttributes.HOST_ARCH]:(0,mwa.normalizeArch)((0,Emi.arch)())};return new Cwa.Resource(r,this._getAsyncAttributes())}_getAsyncAttributes(){return(0,hwa.getMachineId)().then(t=>{let r={};return t&&(r[jCr.SemanticResourceAttributes.HOST_ID]=t),r})}};V_t.hostDetectorSync=new zCr});var Bmi=z(W_t=>{"use strict";Object.defineProperty(W_t,"__esModule",{value:!0});W_t.hostDetector=void 0;var _wa=qCr(),$Cr=class{detect(t){return Promise.resolve(_wa.hostDetectorSync.detect(t))}};W_t.hostDetector=new $Cr});var tmr=z(P_t=>{"use strict";Object.defineProperty(P_t,"__esModule",{value:!0});P_t.osDetectorSync=void 0;var vmi=qse(),ywa=gIe(),Smi=Dt("os"),bwa=KCr(),emr=class{detect(t){let r={[vmi.SemanticResourceAttributes.OS_TYPE]:(0,bwa.normalizeType)((0,Smi.platform)()),[vmi.SemanticResourceAttributes.OS_VERSION]:(0,Smi.release)()};return new ywa.Resource(r)}};P_t.osDetectorSync=new emr});var wmi=z(O_t=>{"use strict";Object.defineProperty(O_t,"__esModule",{value:!0});O_t.osDetector=void 0;var Ewa=tmr(),rmr=class{detect(t){return Promise.resolve(Ewa.osDetectorSync.detect(t))}};O_t.osDetector=new rmr});var imr=z(M_t=>{"use strict";Object.defineProperty(M_t,"__esModule",{value:!0});M_t.processDetectorSync=void 0;var Bwa=(BI(),Ai(EI)),uq=qse(),vwa=gIe(),Swa=Dt("os"),nmr=class{detect(t){let r={[uq.SemanticResourceAttributes.PROCESS_PID]:process.pid,[uq.SemanticResourceAttributes.PROCESS_EXECUTABLE_NAME]:process.title,[uq.SemanticResourceAttributes.PROCESS_EXECUTABLE_PATH]:process.execPath,[uq.SemanticResourceAttributes.PROCESS_COMMAND_ARGS]:[process.argv[0],...process.execArgv,...process.argv.slice(1)],[uq.SemanticResourceAttributes.PROCESS_RUNTIME_VERSION]:process.versions.node,[uq.SemanticResourceAttributes.PROCESS_RUNTIME_NAME]:"nodejs",[uq.SemanticResourceAttributes.PROCESS_RUNTIME_DESCRIPTION]:"Node.js"};process.argv.length>1&&(r[uq.SemanticResourceAttributes.PROCESS_COMMAND]=process.argv[1]);try{let s=Swa.userInfo();r[uq.SemanticResourceAttributes.PROCESS_OWNER]=s.username}catch(s){Bwa.diag.debug(`error obtaining process owner: ${s}`)}return new vwa.Resource(r)}};M_t.processDetectorSync=new nmr});var Tmi=z(Q_t=>{"use strict";Object.defineProperty(Q_t,"__esModule",{value:!0});Q_t.processDetector=void 0;var wwa=imr(),smr=class{detect(t){return Promise.resolve(wwa.processDetectorSync.detect(t))}};Q_t.processDetector=new smr});var Nmi=z(s3=>{"use strict";var Twa=s3&&s3.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),AIe=s3&&s3.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Twa(t,e,r)};Object.defineProperty(s3,"__esModule",{value:!0});AIe(pmi(),s3);AIe(Bmi(),s3);AIe(wmi(),s3);AIe(qCr(),s3);AIe(tmr(),s3);AIe(Tmi(),s3);AIe(imr(),s3)});var omr=z(dIe=>{"use strict";var Nwa=dIe&&dIe.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Rwa=dIe&&dIe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Nwa(t,e,r)};Object.defineProperty(dIe,"__esModule",{value:!0});Rwa(Nmi(),dIe)});var gIe=z(Y_t=>{"use strict";Object.defineProperty(Y_t,"__esModule",{value:!0});Y_t.Resource=void 0;var Rmi=(BI(),Ai(EI)),pIe=qse(),amr=GM(),Dwa=omr(),XHe=class e{constructor(t,r){var s;this._attributes=t,this.asyncAttributesPending=r!=null,this._syncAttributes=(s=this._attributes)!==null&&s!==void 0?s:{},this._asyncAttributesPromise=r?.then(a=>(this._attributes=Object.assign({},this._attributes,a),this.asyncAttributesPending=!1,a),a=>(Rmi.diag.debug("a resource's async attributes promise rejected: %s",a),this.asyncAttributesPending=!1,{}))}static empty(){return e.EMPTY}static default(){return new e({[pIe.SemanticResourceAttributes.SERVICE_NAME]:(0,Dwa.defaultServiceName)(),[pIe.SemanticResourceAttributes.TELEMETRY_SDK_LANGUAGE]:amr.SDK_INFO[pIe.SemanticResourceAttributes.TELEMETRY_SDK_LANGUAGE],[pIe.SemanticResourceAttributes.TELEMETRY_SDK_NAME]:amr.SDK_INFO[pIe.SemanticResourceAttributes.TELEMETRY_SDK_NAME],[pIe.SemanticResourceAttributes.TELEMETRY_SDK_VERSION]:amr.SDK_INFO[pIe.SemanticResourceAttributes.TELEMETRY_SDK_VERSION]})}get attributes(){var t;return this.asyncAttributesPending&&Rmi.diag.error("Accessing resource attributes before async attributes settled"),(t=this._attributes)!==null&&t!==void 0?t:{}}async waitForAsyncAttributes(){this.asyncAttributesPending&&await this._asyncAttributesPromise}merge(t){var r;if(!t)return this;let s=Object.assign(Object.assign({},this._syncAttributes),(r=t._syncAttributes)!==null&&r!==void 0?r:t.attributes);if(!this._asyncAttributesPromise&&!t._asyncAttributesPromise)return new e(s);let a=Promise.all([this._asyncAttributesPromise,t._asyncAttributesPromise]).then(([o,g])=>{var p;return Object.assign(Object.assign(Object.assign(Object.assign({},this._syncAttributes),o),(p=t._syncAttributes)!==null&&p!==void 0?p:t.attributes),g)});return new e(s,a)}};Y_t.Resource=XHe;XHe.EMPTY=new XHe({})});var xmi=z(Dmi=>{"use strict";Object.defineProperty(Dmi,"__esModule",{value:!0})});var Gmi=z(kmi=>{"use strict";Object.defineProperty(kmi,"__esModule",{value:!0})});var Zmi=z(Fmi=>{"use strict";Object.defineProperty(Fmi,"__esModule",{value:!0})});var Lmi=z(H_t=>{"use strict";Object.defineProperty(H_t,"__esModule",{value:!0});H_t.browserDetector=void 0;var xwa=X_t(),cmr=class{detect(t){return Promise.resolve(xwa.browserDetectorSync.detect(t))}};H_t.browserDetector=new cmr});var umr=z(J_t=>{"use strict";Object.defineProperty(J_t,"__esModule",{value:!0});J_t.envDetectorSync=void 0;var kwa=(BI(),Ai(EI)),Gwa=GM(),Fwa=qse(),Zwa=gIe(),lmr=class{constructor(){this._MAX_LENGTH=255,this._COMMA_SEPARATOR=",",this._LABEL_KEY_VALUE_SPLITTER="=",this._ERROR_MESSAGE_INVALID_CHARS="should be a ASCII string with a length greater than 0 and not exceed "+this._MAX_LENGTH+" characters.",this._ERROR_MESSAGE_INVALID_VALUE="should be a ASCII string with a length not exceed "+this._MAX_LENGTH+" characters."}detect(t){let r={},s=(0,Gwa.getEnv)(),a=s.OTEL_RESOURCE_ATTRIBUTES,o=s.OTEL_SERVICE_NAME;if(a)try{let g=this._parseResourceAttributes(a);Object.assign(r,g)}catch(g){kwa.diag.debug(`EnvDetector failed: ${g.message}`)}return o&&(r[Fwa.SemanticResourceAttributes.SERVICE_NAME]=o),new Zwa.Resource(r)}_parseResourceAttributes(t){if(!t)return{};let r={},s=t.split(this._COMMA_SEPARATOR,-1);for(let a of s){let o=a.split(this._LABEL_KEY_VALUE_SPLITTER,-1);if(o.length!==2)continue;let[g,p]=o;if(g=g.trim(),p=p.trim().split(/^"|"$/).join(""),!this._isValidAndNotEmpty(g))throw new Error(`Attribute key ${this._ERROR_MESSAGE_INVALID_CHARS}`);if(!this._isValid(p))throw new Error(`Attribute value ${this._ERROR_MESSAGE_INVALID_VALUE}`);r[g]=decodeURIComponent(p)}return r}_isValid(t){return t.length<=this._MAX_LENGTH&&this._isBaggageOctetString(t)}_isBaggageOctetString(t){for(let r=0;r126)return!1}return!0}_isValidAndNotEmpty(t){return t.length>0&&this._isValid(t)}};J_t.envDetectorSync=new lmr});var Vmi=z(U_t=>{"use strict";Object.defineProperty(U_t,"__esModule",{value:!0});U_t.envDetector=void 0;var Lwa=umr(),gmr=class{detect(t){return Promise.resolve(Lwa.envDetectorSync.detect(t))}};U_t.envDetector=new gmr});var Wmi=z(j_t=>{"use strict";Object.defineProperty(j_t,"__esModule",{value:!0});j_t.browserDetectorSync=void 0;var K_t=qse(),Amr=X_t(),Vwa=(BI(),Ai(EI)),dmr=class{detect(t){if(!(typeof navigator<"u"))return Amr.Resource.empty();let s={[K_t.SemanticResourceAttributes.PROCESS_RUNTIME_NAME]:"browser",[K_t.SemanticResourceAttributes.PROCESS_RUNTIME_DESCRIPTION]:"Web Browser",[K_t.SemanticResourceAttributes.PROCESS_RUNTIME_VERSION]:navigator.userAgent};return this._getResourceAttributes(s,t)}_getResourceAttributes(t,r){return t[K_t.SemanticResourceAttributes.PROCESS_RUNTIME_VERSION]===""?(Vwa.diag.debug("BrowserDetector failed: Unable to find required browser resources. "),Amr.Resource.empty()):new Amr.Resource(Object.assign({},t))}};j_t.browserDetectorSync=new dmr});var Pmi=z(sK=>{"use strict";var Wwa=sK&&sK.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),z_t=sK&&sK.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Wwa(t,e,r)};Object.defineProperty(sK,"__esModule",{value:!0});z_t(Lmi(),sK);z_t(Vmi(),sK);z_t(Wmi(),sK);z_t(umr(),sK)});var Omi=z(q_t=>{"use strict";Object.defineProperty(q_t,"__esModule",{value:!0});q_t.isPromiseLike=void 0;var Pwa=e=>e!==null&&typeof e=="object"&&typeof e.then=="function";q_t.isPromiseLike=Pwa});var Qmi=z(Awe=>{"use strict";Object.defineProperty(Awe,"__esModule",{value:!0});Awe.detectResourcesSync=Awe.detectResources=void 0;var JHe=gIe(),gwe=(BI(),Ai(EI)),Owa=Omi(),Mwa=async(e={})=>{let t=await Promise.all((e.detectors||[]).map(async r=>{try{let s=await r.detect(e);return gwe.diag.debug(`${r.constructor.name} found resource.`,s),s}catch(s){return gwe.diag.debug(`${r.constructor.name} failed: ${s.message}`),JHe.Resource.empty()}}));return Mmi(t),t.reduce((r,s)=>r.merge(s),JHe.Resource.empty())};Awe.detectResources=Mwa;var Qwa=(e={})=>{var t;let r=((t=e.detectors)!==null&&t!==void 0?t:[]).map(a=>{try{let o=a.detect(e),g;if((0,Owa.isPromiseLike)(o)){let p=async()=>(await o).attributes;g=new JHe.Resource({},p())}else g=o;return g.waitForAsyncAttributes?g.waitForAsyncAttributes().then(()=>gwe.diag.debug(`${a.constructor.name} found resource.`,g)):gwe.diag.debug(`${a.constructor.name} found resource.`,g),g}catch(o){return gwe.diag.error(`${a.constructor.name} failed: ${o.message}`),JHe.Resource.empty()}}),s=r.reduce((a,o)=>a.merge(o),JHe.Resource.empty());return s.waitForAsyncAttributes&&s.waitForAsyncAttributes().then(()=>{Mmi(r)}),s};Awe.detectResourcesSync=Qwa;var Mmi=e=>{e.forEach(t=>{if(Object.keys(t.attributes).length>0){let r=JSON.stringify(t.attributes,null,4);gwe.diag.verbose(r)}})}});var X_t=z(o3=>{"use strict";var Ywa=o3&&o3.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),fIe=o3&&o3.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Ywa(t,e,r)};Object.defineProperty(o3,"__esModule",{value:!0});fIe(gIe(),o3);fIe(xmi(),o3);fIe(omr(),o3);fIe(Gmi(),o3);fIe(Zmi(),o3);fIe(Pmi(),o3);fIe(Qmi(),o3)});var Imr=z($_t=>{"use strict";Object.defineProperty($_t,"__esModule",{value:!0});$_t.LogRecord=void 0;var Hwa=(BI(),Ai(EI)),UHe=(BI(),Ai(EI)),pmr=GM(),fmr=class{constructor(t,r){this.attributes={},this._isReadonly=!1;let{timestamp:s,observedTimestamp:a,severityNumber:o,severityText:g,body:p,attributes:f={},context:m}=r,y=Date.now();if(this.hrTime=(0,pmr.timeInputToHrTime)(s??y),this.hrTimeObserved=(0,pmr.timeInputToHrTime)(a??y),m){let B=UHe.trace.getSpanContext(m);B&&UHe.isSpanContextValid(B)&&(this.spanContext=B)}this.severityNumber=o,this.severityText=g,this.body=p,this.resource=t.resource,this.instrumentationScope=t.instrumentationScope,this._logRecordLimits=t.getLogRecordLimits(),this.setAttributes(f)}set severityText(t){this._isLogRecordReadonly()||(this._severityText=t)}get severityText(){return this._severityText}set severityNumber(t){this._isLogRecordReadonly()||(this._severityNumber=t)}get severityNumber(){return this._severityNumber}set body(t){this._isLogRecordReadonly()||(this._body=t)}get body(){return this._body}setAttribute(t,r){return this._isLogRecordReadonly()?this:r===null?this:(typeof r=="object"&&!Array.isArray(r)&&Object.keys(r).length>0&&(this.attributes[t]=r),t.length===0?(UHe.diag.warn(`Invalid attribute key: ${t}`),this):(0,pmr.isAttributeValue)(r)?Object.keys(this.attributes).length>=this._logRecordLimits.attributeCountLimit&&!Object.prototype.hasOwnProperty.call(this.attributes,t)?this:(this.attributes[t]=this._truncateToSize(r),this):(UHe.diag.warn(`Invalid attribute value set for key: ${t}`),this))}setAttributes(t){for(let[r,s]of Object.entries(t))this.setAttribute(r,s);return this}setBody(t){return this.body=t,this}setSeverityNumber(t){return this.severityNumber=t,this}setSeverityText(t){return this.severityText=t,this}makeReadonly(){this._isReadonly=!0}_truncateToSize(t){let r=this._logRecordLimits.attributeValueLengthLimit||0;return r<=0?(UHe.diag.warn(`Attribute value limit must be positive, got ${r}`),t):typeof t=="string"?this._truncateToLimitUtil(t,r):Array.isArray(t)?t.map(s=>typeof s=="string"?this._truncateToLimitUtil(s,r):s):t}_truncateToLimitUtil(t,r){return t.length<=r?t:t.substring(0,r)}_isLogRecordReadonly(){return this._isReadonly&&Hwa.diag.warn("Can not execute the operation on emitted log record"),this._isReadonly}};$_t.LogRecord=fmr});var Cmr=z(oK=>{"use strict";Object.defineProperty(oK,"__esModule",{value:!0});oK.DEFAULT_EVENT_DOMAIN=oK.mergeConfig=oK.reconfigureLimits=oK.loadDefaultConfig=void 0;var KHe=GM();function Ymi(){return{forceFlushTimeoutMillis:3e4,logRecordLimits:{attributeValueLengthLimit:(0,KHe.getEnv)().OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT,attributeCountLimit:(0,KHe.getEnv)().OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT},includeTraceContext:!0}}oK.loadDefaultConfig=Ymi;function Xwa(e){var t,r,s,a,o,g,p,f;let m=Object.assign({},e.logRecordLimits),y=(0,KHe.getEnvWithoutDefaults)();return m.attributeCountLimit=(a=(s=(r=(t=e.logRecordLimits)===null||t===void 0?void 0:t.attributeCountLimit)!==null&&r!==void 0?r:y.OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT)!==null&&s!==void 0?s:y.OTEL_ATTRIBUTE_COUNT_LIMIT)!==null&&a!==void 0?a:KHe.DEFAULT_ATTRIBUTE_COUNT_LIMIT,m.attributeValueLengthLimit=(f=(p=(g=(o=e.logRecordLimits)===null||o===void 0?void 0:o.attributeValueLengthLimit)!==null&&g!==void 0?g:y.OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT)!==null&&p!==void 0?p:y.OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT)!==null&&f!==void 0?f:KHe.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,Object.assign({},e,{logRecordLimits:m})}oK.reconfigureLimits=Xwa;function Jwa(e){let t=Ymi(),r=Object.assign({},t,e);return r.logRecordLimits=Object.assign({},t.logRecordLimits,e.logRecordLimits||{}),r}oK.mergeConfig=Jwa;oK.DEFAULT_EVENT_DOMAIN="default"});var hmr=z(e0t=>{"use strict";Object.defineProperty(e0t,"__esModule",{value:!0});e0t.Logger=void 0;var Uwa=(BI(),Ai(EI)),Kwa=Imr(),jwa=Cmr(),mmr=class{constructor(t,r,s){this.instrumentationScope=t,this._loggerProvider=s,this._loggerConfig=(0,jwa.mergeConfig)(r),this.resource=s.resource}emit(t){let r=t.context||Uwa.context.active(),s=new Kwa.LogRecord(this,Object.assign({context:r},t));this.getActiveLogRecordProcessor().onEmit(s,r),s.makeReadonly()}getLogRecordLimits(){return this._loggerConfig.logRecordLimits}getActiveLogRecordProcessor(){return this._loggerProvider.getActiveLogRecordProcessor()}};e0t.Logger=mmr});var Hmi=z(t0t=>{"use strict";Object.defineProperty(t0t,"__esModule",{value:!0});t0t.MultiLogRecordProcessor=void 0;var zwa=GM(),_mr=class{constructor(t,r){this.processors=t,this.forceFlushTimeoutMillis=r}async forceFlush(){let t=this.forceFlushTimeoutMillis;await Promise.all(this.processors.map(r=>(0,zwa.callWithTimeout)(r.forceFlush(),t)))}onEmit(t){this.processors.forEach(r=>r.onEmit(t))}async shutdown(){await Promise.all(this.processors.map(t=>t.shutdown()))}};t0t.MultiLogRecordProcessor=_mr});var bmr=z(r0t=>{"use strict";Object.defineProperty(r0t,"__esModule",{value:!0});r0t.NoopLogRecordProcessor=void 0;var ymr=class{forceFlush(){return Promise.resolve()}onEmit(t){}shutdown(){return Promise.resolve()}};r0t.NoopLogRecordProcessor=ymr});var jmi=z(IIe=>{"use strict";Object.defineProperty(IIe,"__esModule",{value:!0});IIe.LoggerProvider=IIe.DEFAULT_LOGGER_NAME=void 0;var jHe=(BI(),Ai(EI)),qwa=twe(),Xmi=X_t(),Jmi=GM(),$wa=hmr(),Umi=Cmr(),Kmi=Hmi(),eTa=bmr();IIe.DEFAULT_LOGGER_NAME="unknown";var Emr=class{constructor(t={}){this._loggers=new Map,this._registeredLogRecordProcessors=[];let{resource:r=Xmi.Resource.empty(),logRecordLimits:s,forceFlushTimeoutMillis:a}=(0,Jmi.merge)({},(0,Umi.loadDefaultConfig)(),(0,Umi.reconfigureLimits)(t));this.resource=Xmi.Resource.default().merge(r),this._config={logRecordLimits:s,resource:this.resource,forceFlushTimeoutMillis:a},this._shutdownOnce=new Jmi.BindOnceFuture(this._shutdown,this),this._activeProcessor=new Kmi.MultiLogRecordProcessor([new eTa.NoopLogRecordProcessor],a)}getLogger(t,r,s){if(this._shutdownOnce.isCalled)return jHe.diag.warn("A shutdown LoggerProvider cannot provide a Logger"),qwa.NOOP_LOGGER;t||jHe.diag.warn("Logger requested without instrumentation scope name.");let a=t||IIe.DEFAULT_LOGGER_NAME,o=`${a}@${r||""}:${s?.schemaUrl||""}`;return this._loggers.has(o)||this._loggers.set(o,new $wa.Logger({name:a,version:r,schemaUrl:s?.schemaUrl},{logRecordLimits:this._config.logRecordLimits},this)),this._loggers.get(o)}addLogRecordProcessor(t){this._registeredLogRecordProcessors.length===0&&this._activeProcessor.shutdown().catch(r=>jHe.diag.error("Error while trying to shutdown current log record processor",r)),this._registeredLogRecordProcessors.push(t),this._activeProcessor=new Kmi.MultiLogRecordProcessor(this._registeredLogRecordProcessors,this._config.forceFlushTimeoutMillis)}forceFlush(){return this._shutdownOnce.isCalled?(jHe.diag.warn("invalid attempt to force flush after LoggerProvider shutdown"),this._shutdownOnce.promise):this._activeProcessor.forceFlush()}shutdown(){return this._shutdownOnce.isCalled?(jHe.diag.warn("shutdown may only be called once per LoggerProvider"),this._shutdownOnce.promise):this._shutdownOnce.call()}getActiveLogRecordProcessor(){return this._activeProcessor}getActiveLoggers(){return this._loggers}_shutdown(){return this._activeProcessor.shutdown()}};IIe.LoggerProvider=Emr});var zmi=z(n0t=>{"use strict";Object.defineProperty(n0t,"__esModule",{value:!0});n0t.ConsoleLogRecordExporter=void 0;var tTa=GM(),rTa=GM(),Bmr=class{export(t,r){this._sendLogRecords(t,r)}shutdown(){return Promise.resolve()}_exportInfo(t){var r,s,a;return{timestamp:(0,tTa.hrTimeToMicroseconds)(t.hrTime),traceId:(r=t.spanContext)===null||r===void 0?void 0:r.traceId,spanId:(s=t.spanContext)===null||s===void 0?void 0:s.spanId,traceFlags:(a=t.spanContext)===null||a===void 0?void 0:a.traceFlags,severityText:t.severityText,severityNumber:t.severityNumber,body:t.body,attributes:t.attributes}}_sendLogRecords(t,r){for(let s of t)console.dir(this._exportInfo(s),{depth:3});r?.({code:rTa.ExportResultCode.SUCCESS})}};n0t.ConsoleLogRecordExporter=Bmr});var qmi=z(i0t=>{"use strict";Object.defineProperty(i0t,"__esModule",{value:!0});i0t.SimpleLogRecordProcessor=void 0;var vmr=GM(),Smr=class{constructor(t){this._exporter=t,this._shutdownOnce=new vmr.BindOnceFuture(this._shutdown,this)}onEmit(t){this._shutdownOnce.isCalled||this._exporter.export([t],r=>{var s;if(r.code!==vmr.ExportResultCode.SUCCESS){(0,vmr.globalErrorHandler)((s=r.error)!==null&&s!==void 0?s:new Error(`SimpleLogRecordProcessor: log record export failed (status ${r})`));return}})}forceFlush(){return Promise.resolve()}shutdown(){return this._shutdownOnce.call()}_shutdown(){return this._exporter.shutdown()}};i0t.SimpleLogRecordProcessor=Smr});var ehi=z(s0t=>{"use strict";Object.defineProperty(s0t,"__esModule",{value:!0});s0t.InMemoryLogRecordExporter=void 0;var $mi=GM(),wmr=class{constructor(){this._finishedLogRecords=[],this._stopped=!1}export(t,r){if(this._stopped)return r({code:$mi.ExportResultCode.FAILED,error:new Error("Exporter has been stopped")});this._finishedLogRecords.push(...t),r({code:$mi.ExportResultCode.SUCCESS})}shutdown(){return this._stopped=!0,this.reset(),Promise.resolve()}getFinishedLogRecords(){return this._finishedLogRecords}reset(){this._finishedLogRecords=[]}};s0t.InMemoryLogRecordExporter=wmr});var thi=z(o0t=>{"use strict";Object.defineProperty(o0t,"__esModule",{value:!0});o0t.BatchLogRecordProcessorBase=void 0;var nTa=(BI(),Ai(EI)),dwe=GM(),Tmr=class{constructor(t,r){var s,a,o,g;this._exporter=t,this._finishedLogRecords=[];let p=(0,dwe.getEnv)();this._maxExportBatchSize=(s=r?.maxExportBatchSize)!==null&&s!==void 0?s:p.OTEL_BLRP_MAX_EXPORT_BATCH_SIZE,this._maxQueueSize=(a=r?.maxQueueSize)!==null&&a!==void 0?a:p.OTEL_BLRP_MAX_QUEUE_SIZE,this._scheduledDelayMillis=(o=r?.scheduledDelayMillis)!==null&&o!==void 0?o:p.OTEL_BLRP_SCHEDULE_DELAY,this._exportTimeoutMillis=(g=r?.exportTimeoutMillis)!==null&&g!==void 0?g:p.OTEL_BLRP_EXPORT_TIMEOUT,this._shutdownOnce=new dwe.BindOnceFuture(this._shutdown,this),this._maxExportBatchSize>this._maxQueueSize&&(nTa.diag.warn("BatchLogRecordProcessor: maxExportBatchSize must be smaller or equal to maxQueueSize, setting maxExportBatchSize to match maxQueueSize"),this._maxExportBatchSize=this._maxQueueSize)}onEmit(t){this._shutdownOnce.isCalled||this._addToBuffer(t)}forceFlush(){return this._shutdownOnce.isCalled?this._shutdownOnce.promise:this._flushAll()}shutdown(){return this._shutdownOnce.call()}async _shutdown(){this.onShutdown(),await this._flushAll(),await this._exporter.shutdown()}_addToBuffer(t){this._finishedLogRecords.length>=this._maxQueueSize||(this._finishedLogRecords.push(t),this._maybeStartTimer())}_flushAll(){return new Promise((t,r)=>{let s=[],a=Math.ceil(this._finishedLogRecords.length/this._maxExportBatchSize);for(let o=0;o{t()}).catch(r)})}_flushOneBatch(){return this._clearTimer(),this._finishedLogRecords.length===0?Promise.resolve():new Promise((t,r)=>{(0,dwe.callWithTimeout)(this._export(this._finishedLogRecords.splice(0,this._maxExportBatchSize)),this._exportTimeoutMillis).then(()=>t()).catch(r)})}_maybeStartTimer(){this._timer===void 0&&(this._timer=setTimeout(()=>{this._flushOneBatch().then(()=>{this._finishedLogRecords.length>0&&(this._clearTimer(),this._maybeStartTimer())}).catch(t=>{(0,dwe.globalErrorHandler)(t)})},this._scheduledDelayMillis),(0,dwe.unrefTimer)(this._timer))}_clearTimer(){this._timer!==void 0&&(clearTimeout(this._timer),this._timer=void 0)}_export(t){return new Promise((r,s)=>{this._exporter.export(t,a=>{var o;if(a.code!==dwe.ExportResultCode.SUCCESS){s((o=a.error)!==null&&o!==void 0?o:new Error(`BatchLogRecordProcessorBase: log record export failed (status ${a})`));return}r(a)})})}};o0t.BatchLogRecordProcessorBase=Tmr});var rhi=z(a0t=>{"use strict";Object.defineProperty(a0t,"__esModule",{value:!0});a0t.BatchLogRecordProcessor=void 0;var iTa=thi(),Nmr=class extends iTa.BatchLogRecordProcessorBase{onShutdown(){}};a0t.BatchLogRecordProcessor=Nmr});var nhi=z(c0t=>{"use strict";Object.defineProperty(c0t,"__esModule",{value:!0});c0t.BatchLogRecordProcessor=void 0;var sTa=rhi();Object.defineProperty(c0t,"BatchLogRecordProcessor",{enumerable:!0,get:function(){return sTa.BatchLogRecordProcessor}})});var ihi=z(l0t=>{"use strict";Object.defineProperty(l0t,"__esModule",{value:!0});l0t.BatchLogRecordProcessor=void 0;var oTa=nhi();Object.defineProperty(l0t,"BatchLogRecordProcessor",{enumerable:!0,get:function(){return oTa.BatchLogRecordProcessor}})});var zHe=z(yR=>{"use strict";Object.defineProperty(yR,"__esModule",{value:!0});yR.BatchLogRecordProcessor=yR.InMemoryLogRecordExporter=yR.SimpleLogRecordProcessor=yR.ConsoleLogRecordExporter=yR.NoopLogRecordProcessor=yR.LogRecord=yR.Logger=yR.LoggerProvider=void 0;var aTa=jmi();Object.defineProperty(yR,"LoggerProvider",{enumerable:!0,get:function(){return aTa.LoggerProvider}});var cTa=hmr();Object.defineProperty(yR,"Logger",{enumerable:!0,get:function(){return cTa.Logger}});var lTa=Imr();Object.defineProperty(yR,"LogRecord",{enumerable:!0,get:function(){return lTa.LogRecord}});var uTa=bmr();Object.defineProperty(yR,"NoopLogRecordProcessor",{enumerable:!0,get:function(){return uTa.NoopLogRecordProcessor}});var gTa=zmi();Object.defineProperty(yR,"ConsoleLogRecordExporter",{enumerable:!0,get:function(){return gTa.ConsoleLogRecordExporter}});var ATa=qmi();Object.defineProperty(yR,"SimpleLogRecordProcessor",{enumerable:!0,get:function(){return ATa.SimpleLogRecordProcessor}});var dTa=ehi();Object.defineProperty(yR,"InMemoryLogRecordExporter",{enumerable:!0,get:function(){return dTa.InMemoryLogRecordExporter}});var pTa=ihi();Object.defineProperty(yR,"BatchLogRecordProcessor",{enumerable:!0,get:function(){return pTa.BatchLogRecordProcessor}})});var qHe=z(roe=>{"use strict";Object.defineProperty(roe,"__esModule",{value:!0});roe.isTracingSuppressed=roe.unsuppressTracing=roe.suppressTracing=void 0;var fTa=(BI(),Ai(EI)),Dmr=(0,fTa.createContextKey)("OpenTelemetry SDK Context Key SUPPRESS_TRACING");function ITa(e){return e.setValue(Dmr,!0)}roe.suppressTracing=ITa;function CTa(e){return e.deleteValue(Dmr)}roe.unsuppressTracing=CTa;function mTa(e){return e.getValue(Dmr)===!0}roe.isTracingSuppressed=mTa});var xmr=z(Yk=>{"use strict";Object.defineProperty(Yk,"__esModule",{value:!0});Yk.BAGGAGE_MAX_TOTAL_LENGTH=Yk.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=Yk.BAGGAGE_MAX_NAME_VALUE_PAIRS=Yk.BAGGAGE_HEADER=Yk.BAGGAGE_ITEMS_SEPARATOR=Yk.BAGGAGE_PROPERTIES_SEPARATOR=Yk.BAGGAGE_KEY_PAIR_SEPARATOR=void 0;Yk.BAGGAGE_KEY_PAIR_SEPARATOR="=";Yk.BAGGAGE_PROPERTIES_SEPARATOR=";";Yk.BAGGAGE_ITEMS_SEPARATOR=",";Yk.BAGGAGE_HEADER="baggage";Yk.BAGGAGE_MAX_NAME_VALUE_PAIRS=180;Yk.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=4096;Yk.BAGGAGE_MAX_TOTAL_LENGTH=8192});var kmr=z(aK=>{"use strict";Object.defineProperty(aK,"__esModule",{value:!0});aK.parseKeyPairsIntoRecord=aK.parsePairKeyValue=aK.getKeyPairs=aK.serializeKeyPairs=void 0;var hTa=(BI(),Ai(EI)),CIe=xmr();function _Ta(e){return e.reduce((t,r)=>{let s=`${t}${t!==""?CIe.BAGGAGE_ITEMS_SEPARATOR:""}${r}`;return s.length>CIe.BAGGAGE_MAX_TOTAL_LENGTH?t:s},"")}aK.serializeKeyPairs=_Ta;function yTa(e){return e.getAllEntries().map(([t,r])=>{let s=`${encodeURIComponent(t)}=${encodeURIComponent(r.value)}`;return r.metadata!==void 0&&(s+=CIe.BAGGAGE_PROPERTIES_SEPARATOR+r.metadata.toString()),s})}aK.getKeyPairs=yTa;function shi(e){let t=e.split(CIe.BAGGAGE_PROPERTIES_SEPARATOR);if(t.length<=0)return;let r=t.shift();if(!r)return;let s=r.indexOf(CIe.BAGGAGE_KEY_PAIR_SEPARATOR);if(s<=0)return;let a=decodeURIComponent(r.substring(0,s).trim()),o=decodeURIComponent(r.substring(s+1).trim()),g;return t.length>0&&(g=(0,hTa.baggageEntryMetadataFromString)(t.join(CIe.BAGGAGE_PROPERTIES_SEPARATOR))),{key:a,value:o,metadata:g}}aK.parsePairKeyValue=shi;function bTa(e){return typeof e!="string"||e.length===0?{}:e.split(CIe.BAGGAGE_ITEMS_SEPARATOR).map(t=>shi(t)).filter(t=>t!==void 0&&t.value.length>0).reduce((t,r)=>(t[r.key]=r.value,t),{})}aK.parseKeyPairsIntoRecord=bTa});var ohi=z(u0t=>{"use strict";Object.defineProperty(u0t,"__esModule",{value:!0});u0t.W3CBaggagePropagator=void 0;var Gmr=(BI(),Ai(EI)),ETa=qHe(),mIe=xmr(),Fmr=kmr(),Zmr=class{inject(t,r,s){let a=Gmr.propagation.getBaggage(t);if(!a||(0,ETa.isTracingSuppressed)(t))return;let o=(0,Fmr.getKeyPairs)(a).filter(p=>p.length<=mIe.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS).slice(0,mIe.BAGGAGE_MAX_NAME_VALUE_PAIRS),g=(0,Fmr.serializeKeyPairs)(o);g.length>0&&s.set(r,mIe.BAGGAGE_HEADER,g)}extract(t,r,s){let a=s.get(r,mIe.BAGGAGE_HEADER),o=Array.isArray(a)?a.join(mIe.BAGGAGE_ITEMS_SEPARATOR):a;if(!o)return t;let g={};return o.length===0||(o.split(mIe.BAGGAGE_ITEMS_SEPARATOR).forEach(f=>{let m=(0,Fmr.parsePairKeyValue)(f);if(m){let y={value:m.value};m.metadata&&(y.metadata=m.metadata),g[m.key]=y}}),Object.entries(g).length===0)?t:Gmr.propagation.setBaggage(t,Gmr.propagation.createBaggage(g))}fields(){return[mIe.BAGGAGE_HEADER]}};u0t.W3CBaggagePropagator=Zmr});var ahi=z(g0t=>{"use strict";Object.defineProperty(g0t,"__esModule",{value:!0});g0t.AnchoredClock=void 0;var Lmr=class{constructor(t,r){this._monotonicClock=r,this._epochMillis=t.now(),this._performanceMillis=r.now()}now(){let t=this._monotonicClock.now()-this._performanceMillis;return this._epochMillis+t}};g0t.AnchoredClock=Lmr});var Ahi=z(noe=>{"use strict";Object.defineProperty(noe,"__esModule",{value:!0});noe.isAttributeValue=noe.isAttributeKey=noe.sanitizeAttributes=void 0;var chi=(BI(),Ai(EI));function BTa(e){let t={};if(typeof e!="object"||e==null)return t;for(let[r,s]of Object.entries(e)){if(!lhi(r)){chi.diag.warn(`Invalid attribute key: ${r}`);continue}if(!uhi(s)){chi.diag.warn(`Invalid attribute value set for key: ${r}`);continue}Array.isArray(s)?t[r]=s.slice():t[r]=s}return t}noe.sanitizeAttributes=BTa;function lhi(e){return typeof e=="string"&&e.length>0}noe.isAttributeKey=lhi;function uhi(e){return e==null?!0:Array.isArray(e)?vTa(e):ghi(e)}noe.isAttributeValue=uhi;function vTa(e){let t;for(let r of e)if(r!=null){if(!t){if(ghi(r)){t=typeof r;continue}return!1}if(typeof r!==t)return!1}return!0}function ghi(e){switch(typeof e){case"number":case"boolean":case"string":return!0}return!1}});var Vmr=z(A0t=>{"use strict";Object.defineProperty(A0t,"__esModule",{value:!0});A0t.loggingErrorHandler=void 0;var STa=(BI(),Ai(EI));function wTa(){return e=>{STa.diag.error(TTa(e))}}A0t.loggingErrorHandler=wTa;function TTa(e){return typeof e=="string"?e:JSON.stringify(NTa(e))}function NTa(e){let t={},r=e;for(;r!==null;)Object.getOwnPropertyNames(r).forEach(s=>{if(t[s])return;let a=r[s];a&&(t[s]=String(a))}),r=Object.getPrototypeOf(r);return t}});var Wmr=z(pwe=>{"use strict";Object.defineProperty(pwe,"__esModule",{value:!0});pwe.globalErrorHandler=pwe.setGlobalErrorHandler=void 0;var RTa=Vmr(),dhi=(0,RTa.loggingErrorHandler)();function DTa(e){dhi=e}pwe.setGlobalErrorHandler=DTa;function xTa(e){try{dhi(e)}catch{}}pwe.globalErrorHandler=xTa});var Pmr=z($He=>{"use strict";Object.defineProperty($He,"__esModule",{value:!0});$He.TracesSamplerValues=void 0;var kTa;(function(e){e.AlwaysOff="always_off",e.AlwaysOn="always_on",e.ParentBasedAlwaysOff="parentbased_always_off",e.ParentBasedAlwaysOn="parentbased_always_on",e.ParentBasedTraceIdRatio="parentbased_traceidratio",e.TraceIdRatio="traceidratio"})(kTa=$He.TracesSamplerValues||($He.TracesSamplerValues={}))});var Omr=z(AB=>{"use strict";Object.defineProperty(AB,"__esModule",{value:!0});AB.parseEnvironment=AB.DEFAULT_ENVIRONMENT=AB.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=AB.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=AB.DEFAULT_ATTRIBUTE_COUNT_LIMIT=AB.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=void 0;var ioe=(BI(),Ai(EI)),GTa=Pmr(),FTa=",",ZTa=["OTEL_SDK_DISABLED"];function LTa(e){return ZTa.indexOf(e)>-1}var VTa=["OTEL_BSP_EXPORT_TIMEOUT","OTEL_BSP_MAX_EXPORT_BATCH_SIZE","OTEL_BSP_MAX_QUEUE_SIZE","OTEL_BSP_SCHEDULE_DELAY","OTEL_BLRP_EXPORT_TIMEOUT","OTEL_BLRP_MAX_EXPORT_BATCH_SIZE","OTEL_BLRP_MAX_QUEUE_SIZE","OTEL_BLRP_SCHEDULE_DELAY","OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_EVENT_COUNT_LIMIT","OTEL_SPAN_LINK_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT","OTEL_EXPORTER_OTLP_TIMEOUT","OTEL_EXPORTER_OTLP_TRACES_TIMEOUT","OTEL_EXPORTER_OTLP_METRICS_TIMEOUT","OTEL_EXPORTER_OTLP_LOGS_TIMEOUT","OTEL_EXPORTER_JAEGER_AGENT_PORT"];function WTa(e){return VTa.indexOf(e)>-1}var PTa=["OTEL_NO_PATCH_MODULES","OTEL_PROPAGATORS","OTEL_SEMCONV_STABILITY_OPT_IN"];function OTa(e){return PTa.indexOf(e)>-1}AB.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=1/0;AB.DEFAULT_ATTRIBUTE_COUNT_LIMIT=128;AB.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=128;AB.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=128;AB.DEFAULT_ENVIRONMENT={OTEL_SDK_DISABLED:!1,CONTAINER_NAME:"",ECS_CONTAINER_METADATA_URI_V4:"",ECS_CONTAINER_METADATA_URI:"",HOSTNAME:"",KUBERNETES_SERVICE_HOST:"",NAMESPACE:"",OTEL_BSP_EXPORT_TIMEOUT:3e4,OTEL_BSP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BSP_MAX_QUEUE_SIZE:2048,OTEL_BSP_SCHEDULE_DELAY:5e3,OTEL_BLRP_EXPORT_TIMEOUT:3e4,OTEL_BLRP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BLRP_MAX_QUEUE_SIZE:2048,OTEL_BLRP_SCHEDULE_DELAY:5e3,OTEL_EXPORTER_JAEGER_AGENT_HOST:"",OTEL_EXPORTER_JAEGER_AGENT_PORT:6832,OTEL_EXPORTER_JAEGER_ENDPOINT:"",OTEL_EXPORTER_JAEGER_PASSWORD:"",OTEL_EXPORTER_JAEGER_USER:"",OTEL_EXPORTER_OTLP_ENDPOINT:"",OTEL_EXPORTER_OTLP_TRACES_ENDPOINT:"",OTEL_EXPORTER_OTLP_METRICS_ENDPOINT:"",OTEL_EXPORTER_OTLP_LOGS_ENDPOINT:"",OTEL_EXPORTER_OTLP_HEADERS:"",OTEL_EXPORTER_OTLP_TRACES_HEADERS:"",OTEL_EXPORTER_OTLP_METRICS_HEADERS:"",OTEL_EXPORTER_OTLP_LOGS_HEADERS:"",OTEL_EXPORTER_OTLP_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_TRACES_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_METRICS_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_LOGS_TIMEOUT:1e4,OTEL_EXPORTER_ZIPKIN_ENDPOINT:"http://localhost:9411/api/v2/spans",OTEL_LOG_LEVEL:ioe.DiagLogLevel.INFO,OTEL_NO_PATCH_MODULES:[],OTEL_PROPAGATORS:["tracecontext","baggage"],OTEL_RESOURCE_ATTRIBUTES:"",OTEL_SERVICE_NAME:"",OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT:AB.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_ATTRIBUTE_COUNT_LIMIT:AB.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT:AB.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT:AB.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT:AB.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT:AB.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_EVENT_COUNT_LIMIT:128,OTEL_SPAN_LINK_COUNT_LIMIT:128,OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT:AB.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT:AB.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT,OTEL_TRACES_EXPORTER:"",OTEL_TRACES_SAMPLER:GTa.TracesSamplerValues.ParentBasedAlwaysOn,OTEL_TRACES_SAMPLER_ARG:"",OTEL_LOGS_EXPORTER:"",OTEL_EXPORTER_OTLP_INSECURE:"",OTEL_EXPORTER_OTLP_TRACES_INSECURE:"",OTEL_EXPORTER_OTLP_METRICS_INSECURE:"",OTEL_EXPORTER_OTLP_LOGS_INSECURE:"",OTEL_EXPORTER_OTLP_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_COMPRESSION:"",OTEL_EXPORTER_OTLP_TRACES_COMPRESSION:"",OTEL_EXPORTER_OTLP_METRICS_COMPRESSION:"",OTEL_EXPORTER_OTLP_LOGS_COMPRESSION:"",OTEL_EXPORTER_OTLP_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_TRACES_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_LOGS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE:"cumulative",OTEL_SEMCONV_STABILITY_OPT_IN:[]};function MTa(e,t,r){if(typeof r[e]>"u")return;let s=String(r[e]);t[e]=s.toLowerCase()==="true"}function QTa(e,t,r,s=-1/0,a=1/0){if(typeof r[e]<"u"){let o=Number(r[e]);isNaN(o)||(oa?t[e]=a:t[e]=o)}}function YTa(e,t,r,s=FTa){let a=r[e];typeof a=="string"&&(t[e]=a.split(s).map(o=>o.trim()))}var HTa={ALL:ioe.DiagLogLevel.ALL,VERBOSE:ioe.DiagLogLevel.VERBOSE,DEBUG:ioe.DiagLogLevel.DEBUG,INFO:ioe.DiagLogLevel.INFO,WARN:ioe.DiagLogLevel.WARN,ERROR:ioe.DiagLogLevel.ERROR,NONE:ioe.DiagLogLevel.NONE};function XTa(e,t,r){let s=r[e];if(typeof s=="string"){let a=HTa[s.toUpperCase()];a!=null&&(t[e]=a)}}function JTa(e){let t={};for(let r in AB.DEFAULT_ENVIRONMENT){let s=r;switch(s){case"OTEL_LOG_LEVEL":XTa(s,t,e);break;default:if(LTa(s))MTa(s,t,e);else if(WTa(s))QTa(s,t,e);else if(OTa(s))YTa(s,t,e);else{let a=e[s];typeof a<"u"&&a!==null&&(t[s]=String(a))}}}return t}AB.parseEnvironment=JTa});var phi=z(fwe=>{"use strict";Object.defineProperty(fwe,"__esModule",{value:!0});fwe.getEnvWithoutDefaults=fwe.getEnv=void 0;var Mmr=Omr();function UTa(){let e=(0,Mmr.parseEnvironment)(process.env);return Object.assign({},Mmr.DEFAULT_ENVIRONMENT,e)}fwe.getEnv=UTa;function KTa(){return(0,Mmr.parseEnvironment)(process.env)}fwe.getEnvWithoutDefaults=KTa});var fhi=z(d0t=>{"use strict";Object.defineProperty(d0t,"__esModule",{value:!0});d0t._globalThis=void 0;d0t._globalThis=typeof globalThis=="object"?globalThis:global});var Qmr=z(p0t=>{"use strict";Object.defineProperty(p0t,"__esModule",{value:!0});p0t.hexToBinary=void 0;function Ihi(e){return e>=48&&e<=57?e-48:e>=97&&e<=102?e-87:e-55}function jTa(e){let t=new Uint8Array(e.length/2),r=0;for(let s=0;s{"use strict";Object.defineProperty(f0t,"__esModule",{value:!0});f0t.hexToBase64=void 0;var zTa=Qmr();function qTa(e){return Buffer.from((0,zTa.hexToBinary)(e)).toString("base64")}f0t.hexToBase64=qTa});var _hi=z(C0t=>{"use strict";Object.defineProperty(C0t,"__esModule",{value:!0});C0t.RandomIdGenerator=void 0;var $Ta=8,hhi=16,Ymr=class{constructor(){this.generateTraceId=mhi(hhi),this.generateSpanId=mhi($Ta)}};C0t.RandomIdGenerator=Ymr;var I0t=Buffer.allocUnsafe(hhi);function mhi(e){return function(){for(let r=0;r>>0,r*4);for(let r=0;r0);r++)r===e-1&&(I0t[e-1]=1);return I0t.toString("hex",0,e)}}});var yhi=z(m0t=>{"use strict";Object.defineProperty(m0t,"__esModule",{value:!0});m0t.otperformance=void 0;var eNa=Dt("perf_hooks");m0t.otperformance=eNa.performance});var Hmr=z(h0t=>{"use strict";Object.defineProperty(h0t,"__esModule",{value:!0});h0t.VERSION=void 0;h0t.VERSION="1.27.0"});function cS(e){for(var t={},r=e.length,s=0;s{});var bhi,Ehi,Bhi,vhi,Shi,whi,Thi,Nhi,Rhi,Dhi,xhi,khi,Ghi,Fhi,Zhi,Lhi,Vhi,Whi,Phi,Ohi,Mhi,Qhi,Yhi,Hhi,Xhi,Jhi,Uhi,Khi,jhi,zhi,qhi,$hi,e_i,t_i,r_i,n_i,i_i,s_i,o_i,a_i,c_i,l_i,u_i,g_i,A_i,d_i,p_i,f_i,I_i,C_i,m_i,h_i,__i,y_i,b_i,E_i,B_i,v_i,S_i,w_i,T_i,N_i,R_i,D_i,x_i,k_i,G_i,F_i,Z_i,L_i,V_i,W_i,P_i,O_i,M_i,Q_i,Y_i,H_i,X_i,J_i,U_i,K_i,j_i,z_i,q_i,$_i,e0i,t0i,r0i,n0i,i0i,s0i,o0i,a0i,c0i,l0i,u0i,g0i,A0i,d0i,p0i,f0i,I0i,C0i,m0i,h0i,_0i,y0i,b0i,E0i,B0i,v0i,S0i,w0i,T0i,N0i,R0i,D0i,x0i,k0i,G0i,F0i,Z0i,L0i,V0i,W0i,P0i,O0i,tNa,rNa,nNa,iNa,sNa,oNa,aNa,cNa,lNa,uNa,gNa,ANa,dNa,pNa,fNa,INa,CNa,mNa,hNa,_Na,yNa,bNa,ENa,BNa,vNa,SNa,wNa,TNa,NNa,RNa,DNa,xNa,kNa,GNa,FNa,ZNa,LNa,VNa,WNa,PNa,ONa,MNa,QNa,YNa,HNa,XNa,JNa,UNa,KNa,jNa,zNa,qNa,$Na,eRa,tRa,rRa,nRa,iRa,sRa,oRa,aRa,cRa,lRa,uRa,gRa,ARa,dRa,pRa,fRa,IRa,CRa,mRa,hRa,_Ra,yRa,bRa,ERa,BRa,vRa,SRa,wRa,TRa,NRa,RRa,DRa,xRa,kRa,GRa,FRa,ZRa,LRa,VRa,WRa,PRa,ORa,MRa,QRa,YRa,HRa,XRa,JRa,URa,KRa,jRa,zRa,qRa,$Ra,eDa,tDa,rDa,nDa,iDa,sDa,oDa,aDa,cDa,lDa,uDa,gDa,ADa,dDa,pDa,fDa,IDa,CDa,mDa,hDa,_Da,yDa,M0i,Q0i,Y0i,H0i,X0i,J0i,U0i,K0i,j0i,z0i,q0i,$0i,eyi,tyi,ryi,nyi,iyi,syi,oyi,ayi,cyi,lyi,uyi,gyi,Ayi,dyi,pyi,fyi,Iyi,Cyi,myi,hyi,_yi,yyi,byi,Eyi,Byi,vyi,Syi,wyi,Tyi,Nyi,Ryi,Dyi,xyi,kyi,Gyi,bDa,EDa,BDa,vDa,SDa,wDa,TDa,NDa,RDa,DDa,xDa,kDa,GDa,FDa,ZDa,LDa,VDa,WDa,PDa,ODa,MDa,QDa,YDa,HDa,XDa,JDa,UDa,KDa,jDa,zDa,qDa,$Da,exa,txa,rxa,nxa,ixa,sxa,oxa,axa,cxa,lxa,uxa,gxa,Axa,dxa,pxa,fxa,Fyi,Zyi,Lyi,Vyi,Wyi,Pyi,Oyi,Myi,Qyi,Yyi,Hyi,Ixa,Cxa,mxa,hxa,_xa,yxa,bxa,Exa,Bxa,vxa,Sxa,wxa,Xyi,Jyi,Uyi,Kyi,jyi,Txa,Nxa,Rxa,Dxa,xxa,kxa,zyi,qyi,$yi,Gxa,Fxa,Zxa,Lxa,ebi,tbi,rbi,nbi,Vxa,Wxa,Pxa,Oxa,Mxa,ibi,sbi,obi,abi,cbi,lbi,ubi,Qxa,Yxa,Hxa,Xxa,Jxa,Uxa,Kxa,jxa,gbi,Abi,dbi,pbi,fbi,zxa,qxa,$xa,eka,tka,rka,Ibi,Cbi,mbi,hbi,_bi,ybi,bbi,Ebi,Bbi,vbi,Sbi,wbi,Tbi,Nbi,Rbi,Dbi,xbi,kbi,Gbi,Fbi,Zbi,nka,ika,ska,oka,aka,cka,lka,uka,gka,Aka,dka,pka,fka,Ika,Cka,mka,hka,_ka,yka,bka,Eka,Bka,Lbi,Vbi,Wbi,Pbi,Obi,vka,Ska,wka,Tka,Nka,Rka,Mbi,Qbi,Dka,xka,kka,Ybi,Hbi,Gka,Fka,Zka,Xbi,Jbi,Ubi,Kbi,jbi,zbi,qbi,$bi,eEi,tEi,rEi,nEi,iEi,sEi,oEi,aEi,cEi,Lka,Vka,Wka,Pka,Oka,Mka,Qka,Yka,Hka,Xka,Jka,Uka,Kka,jka,zka,qka,$ka,eGa,lEi,uEi,tGa,rGa,nGa,gEi=cc(()=>{Xmr();bhi="aws.lambda.invoked_arn",Ehi="db.system",Bhi="db.connection_string",vhi="db.user",Shi="db.jdbc.driver_classname",whi="db.name",Thi="db.statement",Nhi="db.operation",Rhi="db.mssql.instance_name",Dhi="db.cassandra.keyspace",xhi="db.cassandra.page_size",khi="db.cassandra.consistency_level",Ghi="db.cassandra.table",Fhi="db.cassandra.idempotence",Zhi="db.cassandra.speculative_execution_count",Lhi="db.cassandra.coordinator.id",Vhi="db.cassandra.coordinator.dc",Whi="db.hbase.namespace",Phi="db.redis.database_index",Ohi="db.mongodb.collection",Mhi="db.sql.table",Qhi="exception.type",Yhi="exception.message",Hhi="exception.stacktrace",Xhi="exception.escaped",Jhi="faas.trigger",Uhi="faas.execution",Khi="faas.document.collection",jhi="faas.document.operation",zhi="faas.document.time",qhi="faas.document.name",$hi="faas.time",e_i="faas.cron",t_i="faas.coldstart",r_i="faas.invoked_name",n_i="faas.invoked_provider",i_i="faas.invoked_region",s_i="net.transport",o_i="net.peer.ip",a_i="net.peer.port",c_i="net.peer.name",l_i="net.host.ip",u_i="net.host.port",g_i="net.host.name",A_i="net.host.connection.type",d_i="net.host.connection.subtype",p_i="net.host.carrier.name",f_i="net.host.carrier.mcc",I_i="net.host.carrier.mnc",C_i="net.host.carrier.icc",m_i="peer.service",h_i="enduser.id",__i="enduser.role",y_i="enduser.scope",b_i="thread.id",E_i="thread.name",B_i="code.function",v_i="code.namespace",S_i="code.filepath",w_i="code.lineno",T_i="http.method",N_i="http.url",R_i="http.target",D_i="http.host",x_i="http.scheme",k_i="http.status_code",G_i="http.flavor",F_i="http.user_agent",Z_i="http.request_content_length",L_i="http.request_content_length_uncompressed",V_i="http.response_content_length",W_i="http.response_content_length_uncompressed",P_i="http.server_name",O_i="http.route",M_i="http.client_ip",Q_i="aws.dynamodb.table_names",Y_i="aws.dynamodb.consumed_capacity",H_i="aws.dynamodb.item_collection_metrics",X_i="aws.dynamodb.provisioned_read_capacity",J_i="aws.dynamodb.provisioned_write_capacity",U_i="aws.dynamodb.consistent_read",K_i="aws.dynamodb.projection",j_i="aws.dynamodb.limit",z_i="aws.dynamodb.attributes_to_get",q_i="aws.dynamodb.index_name",$_i="aws.dynamodb.select",e0i="aws.dynamodb.global_secondary_indexes",t0i="aws.dynamodb.local_secondary_indexes",r0i="aws.dynamodb.exclusive_start_table",n0i="aws.dynamodb.table_count",i0i="aws.dynamodb.scan_forward",s0i="aws.dynamodb.segment",o0i="aws.dynamodb.total_segments",a0i="aws.dynamodb.count",c0i="aws.dynamodb.scanned_count",l0i="aws.dynamodb.attribute_definitions",u0i="aws.dynamodb.global_secondary_index_updates",g0i="messaging.system",A0i="messaging.destination",d0i="messaging.destination_kind",p0i="messaging.temp_destination",f0i="messaging.protocol",I0i="messaging.protocol_version",C0i="messaging.url",m0i="messaging.message_id",h0i="messaging.conversation_id",_0i="messaging.message_payload_size_bytes",y0i="messaging.message_payload_compressed_size_bytes",b0i="messaging.operation",E0i="messaging.consumer_id",B0i="messaging.rabbitmq.routing_key",v0i="messaging.kafka.message_key",S0i="messaging.kafka.consumer_group",w0i="messaging.kafka.client_id",T0i="messaging.kafka.partition",N0i="messaging.kafka.tombstone",R0i="rpc.system",D0i="rpc.service",x0i="rpc.method",k0i="rpc.grpc.status_code",G0i="rpc.jsonrpc.version",F0i="rpc.jsonrpc.request_id",Z0i="rpc.jsonrpc.error_code",L0i="rpc.jsonrpc.error_message",V0i="message.type",W0i="message.id",P0i="message.compressed_size",O0i="message.uncompressed_size",tNa=bhi,rNa=Ehi,nNa=Bhi,iNa=vhi,sNa=Shi,oNa=whi,aNa=Thi,cNa=Nhi,lNa=Rhi,uNa=Dhi,gNa=xhi,ANa=khi,dNa=Ghi,pNa=Fhi,fNa=Zhi,INa=Lhi,CNa=Vhi,mNa=Whi,hNa=Phi,_Na=Ohi,yNa=Mhi,bNa=Qhi,ENa=Yhi,BNa=Hhi,vNa=Xhi,SNa=Jhi,wNa=Uhi,TNa=Khi,NNa=jhi,RNa=zhi,DNa=qhi,xNa=$hi,kNa=e_i,GNa=t_i,FNa=r_i,ZNa=n_i,LNa=i_i,VNa=s_i,WNa=o_i,PNa=a_i,ONa=c_i,MNa=l_i,QNa=u_i,YNa=g_i,HNa=A_i,XNa=d_i,JNa=p_i,UNa=f_i,KNa=I_i,jNa=C_i,zNa=m_i,qNa=h_i,$Na=__i,eRa=y_i,tRa=b_i,rRa=E_i,nRa=B_i,iRa=v_i,sRa=S_i,oRa=w_i,aRa=T_i,cRa=N_i,lRa=R_i,uRa=D_i,gRa=x_i,ARa=k_i,dRa=G_i,pRa=F_i,fRa=Z_i,IRa=L_i,CRa=V_i,mRa=W_i,hRa=P_i,_Ra=O_i,yRa=M_i,bRa=Q_i,ERa=Y_i,BRa=H_i,vRa=X_i,SRa=J_i,wRa=U_i,TRa=K_i,NRa=j_i,RRa=z_i,DRa=q_i,xRa=$_i,kRa=e0i,GRa=t0i,FRa=r0i,ZRa=n0i,LRa=i0i,VRa=s0i,WRa=o0i,PRa=a0i,ORa=c0i,MRa=l0i,QRa=u0i,YRa=g0i,HRa=A0i,XRa=d0i,JRa=p0i,URa=f0i,KRa=I0i,jRa=C0i,zRa=m0i,qRa=h0i,$Ra=_0i,eDa=y0i,tDa=b0i,rDa=E0i,nDa=B0i,iDa=v0i,sDa=S0i,oDa=w0i,aDa=T0i,cDa=N0i,lDa=R0i,uDa=D0i,gDa=x0i,ADa=k0i,dDa=G0i,pDa=F0i,fDa=Z0i,IDa=L0i,CDa=V0i,mDa=W0i,hDa=P0i,_Da=O0i,yDa=cS([bhi,Ehi,Bhi,vhi,Shi,whi,Thi,Nhi,Rhi,Dhi,xhi,khi,Ghi,Fhi,Zhi,Lhi,Vhi,Whi,Phi,Ohi,Mhi,Qhi,Yhi,Hhi,Xhi,Jhi,Uhi,Khi,jhi,zhi,qhi,$hi,e_i,t_i,r_i,n_i,i_i,s_i,o_i,a_i,c_i,l_i,u_i,g_i,A_i,d_i,p_i,f_i,I_i,C_i,m_i,h_i,__i,y_i,b_i,E_i,B_i,v_i,S_i,w_i,T_i,N_i,R_i,D_i,x_i,k_i,G_i,F_i,Z_i,L_i,V_i,W_i,P_i,O_i,M_i,Q_i,Y_i,H_i,X_i,J_i,U_i,K_i,j_i,z_i,q_i,$_i,e0i,t0i,r0i,n0i,i0i,s0i,o0i,a0i,c0i,l0i,u0i,g0i,A0i,d0i,p0i,f0i,I0i,C0i,m0i,h0i,_0i,y0i,b0i,E0i,B0i,v0i,S0i,w0i,T0i,N0i,R0i,D0i,x0i,k0i,G0i,F0i,Z0i,L0i,V0i,W0i,P0i,O0i]),M0i="other_sql",Q0i="mssql",Y0i="mysql",H0i="oracle",X0i="db2",J0i="postgresql",U0i="redshift",K0i="hive",j0i="cloudscape",z0i="hsqldb",q0i="progress",$0i="maxdb",eyi="hanadb",tyi="ingres",ryi="firstsql",nyi="edb",iyi="cache",syi="adabas",oyi="firebird",ayi="derby",cyi="filemaker",lyi="informix",uyi="instantdb",gyi="interbase",Ayi="mariadb",dyi="netezza",pyi="pervasive",fyi="pointbase",Iyi="sqlite",Cyi="sybase",myi="teradata",hyi="vertica",_yi="h2",yyi="coldfusion",byi="cassandra",Eyi="hbase",Byi="mongodb",vyi="redis",Syi="couchbase",wyi="couchdb",Tyi="cosmosdb",Nyi="dynamodb",Ryi="neo4j",Dyi="geode",xyi="elasticsearch",kyi="memcached",Gyi="cockroachdb",bDa=M0i,EDa=Q0i,BDa=Y0i,vDa=H0i,SDa=X0i,wDa=J0i,TDa=U0i,NDa=K0i,RDa=j0i,DDa=z0i,xDa=q0i,kDa=$0i,GDa=eyi,FDa=tyi,ZDa=ryi,LDa=nyi,VDa=iyi,WDa=syi,PDa=oyi,ODa=ayi,MDa=cyi,QDa=lyi,YDa=uyi,HDa=gyi,XDa=Ayi,JDa=dyi,UDa=pyi,KDa=fyi,jDa=Iyi,zDa=Cyi,qDa=myi,$Da=hyi,exa=_yi,txa=yyi,rxa=byi,nxa=Eyi,ixa=Byi,sxa=vyi,oxa=Syi,axa=wyi,cxa=Tyi,lxa=Nyi,uxa=Ryi,gxa=Dyi,Axa=xyi,dxa=kyi,pxa=Gyi,fxa=cS([M0i,Q0i,Y0i,H0i,X0i,J0i,U0i,K0i,j0i,z0i,q0i,$0i,eyi,tyi,ryi,nyi,iyi,syi,oyi,ayi,cyi,lyi,uyi,gyi,Ayi,dyi,pyi,fyi,Iyi,Cyi,myi,hyi,_yi,yyi,byi,Eyi,Byi,vyi,Syi,wyi,Tyi,Nyi,Ryi,Dyi,xyi,kyi,Gyi]),Fyi="all",Zyi="each_quorum",Lyi="quorum",Vyi="local_quorum",Wyi="one",Pyi="two",Oyi="three",Myi="local_one",Qyi="any",Yyi="serial",Hyi="local_serial",Ixa=Fyi,Cxa=Zyi,mxa=Lyi,hxa=Vyi,_xa=Wyi,yxa=Pyi,bxa=Oyi,Exa=Myi,Bxa=Qyi,vxa=Yyi,Sxa=Hyi,wxa=cS([Fyi,Zyi,Lyi,Vyi,Wyi,Pyi,Oyi,Myi,Qyi,Yyi,Hyi]),Xyi="datasource",Jyi="http",Uyi="pubsub",Kyi="timer",jyi="other",Txa=Xyi,Nxa=Jyi,Rxa=Uyi,Dxa=Kyi,xxa=jyi,kxa=cS([Xyi,Jyi,Uyi,Kyi,jyi]),zyi="insert",qyi="edit",$yi="delete",Gxa=zyi,Fxa=qyi,Zxa=$yi,Lxa=cS([zyi,qyi,$yi]),ebi="alibaba_cloud",tbi="aws",rbi="azure",nbi="gcp",Vxa=ebi,Wxa=tbi,Pxa=rbi,Oxa=nbi,Mxa=cS([ebi,tbi,rbi,nbi]),ibi="ip_tcp",sbi="ip_udp",obi="ip",abi="unix",cbi="pipe",lbi="inproc",ubi="other",Qxa=ibi,Yxa=sbi,Hxa=obi,Xxa=abi,Jxa=cbi,Uxa=lbi,Kxa=ubi,jxa=cS([ibi,sbi,obi,abi,cbi,lbi,ubi]),gbi="wifi",Abi="wired",dbi="cell",pbi="unavailable",fbi="unknown",zxa=gbi,qxa=Abi,$xa=dbi,eka=pbi,tka=fbi,rka=cS([gbi,Abi,dbi,pbi,fbi]),Ibi="gprs",Cbi="edge",mbi="umts",hbi="cdma",_bi="evdo_0",ybi="evdo_a",bbi="cdma2000_1xrtt",Ebi="hsdpa",Bbi="hsupa",vbi="hspa",Sbi="iden",wbi="evdo_b",Tbi="lte",Nbi="ehrpd",Rbi="hspap",Dbi="gsm",xbi="td_scdma",kbi="iwlan",Gbi="nr",Fbi="nrnsa",Zbi="lte_ca",nka=Ibi,ika=Cbi,ska=mbi,oka=hbi,aka=_bi,cka=ybi,lka=bbi,uka=Ebi,gka=Bbi,Aka=vbi,dka=Sbi,pka=wbi,fka=Tbi,Ika=Nbi,Cka=Rbi,mka=Dbi,hka=xbi,_ka=kbi,yka=Gbi,bka=Fbi,Eka=Zbi,Bka=cS([Ibi,Cbi,mbi,hbi,_bi,ybi,bbi,Ebi,Bbi,vbi,Sbi,wbi,Tbi,Nbi,Rbi,Dbi,xbi,kbi,Gbi,Fbi,Zbi]),Lbi="1.0",Vbi="1.1",Wbi="2.0",Pbi="SPDY",Obi="QUIC",vka=Lbi,Ska=Vbi,wka=Wbi,Tka=Pbi,Nka=Obi,Rka={HTTP_1_0:Lbi,HTTP_1_1:Vbi,HTTP_2_0:Wbi,SPDY:Pbi,QUIC:Obi},Mbi="queue",Qbi="topic",Dka=Mbi,xka=Qbi,kka=cS([Mbi,Qbi]),Ybi="receive",Hbi="process",Gka=Ybi,Fka=Hbi,Zka=cS([Ybi,Hbi]),Xbi=0,Jbi=1,Ubi=2,Kbi=3,jbi=4,zbi=5,qbi=6,$bi=7,eEi=8,tEi=9,rEi=10,nEi=11,iEi=12,sEi=13,oEi=14,aEi=15,cEi=16,Lka=Xbi,Vka=Jbi,Wka=Ubi,Pka=Kbi,Oka=jbi,Mka=zbi,Qka=qbi,Yka=$bi,Hka=eEi,Xka=tEi,Jka=rEi,Uka=nEi,Kka=iEi,jka=sEi,zka=oEi,qka=aEi,$ka=cEi,eGa={OK:Xbi,CANCELLED:Jbi,UNKNOWN:Ubi,INVALID_ARGUMENT:Kbi,DEADLINE_EXCEEDED:jbi,NOT_FOUND:zbi,ALREADY_EXISTS:qbi,PERMISSION_DENIED:$bi,RESOURCE_EXHAUSTED:eEi,FAILED_PRECONDITION:tEi,ABORTED:rEi,OUT_OF_RANGE:nEi,UNIMPLEMENTED:iEi,INTERNAL:sEi,UNAVAILABLE:oEi,DATA_LOSS:aEi,UNAUTHENTICATED:cEi},lEi="SENT",uEi="RECEIVED",tGa=lEi,rGa=uEi,nGa=cS([lEi,uEi])});var AEi=cc(()=>{gEi()});var dEi,pEi,fEi,IEi,CEi,mEi,hEi,_Ei,yEi,bEi,EEi,BEi,vEi,SEi,wEi,TEi,NEi,REi,DEi,xEi,kEi,GEi,FEi,ZEi,LEi,VEi,WEi,PEi,OEi,MEi,QEi,YEi,HEi,XEi,JEi,UEi,KEi,jEi,zEi,qEi,$Ei,e1i,t1i,r1i,n1i,i1i,s1i,o1i,a1i,c1i,l1i,u1i,g1i,A1i,d1i,p1i,f1i,I1i,C1i,m1i,h1i,_1i,y1i,b1i,E1i,B1i,v1i,S1i,w1i,T1i,N1i,R1i,D1i,x1i,k1i,G1i,F1i,Z1i,L1i,V1i,W1i,iGa,sGa,oGa,aGa,cGa,lGa,uGa,gGa,AGa,dGa,pGa,fGa,IGa,CGa,mGa,hGa,_Ga,yGa,bGa,EGa,BGa,vGa,SGa,wGa,TGa,NGa,RGa,DGa,xGa,kGa,GGa,FGa,ZGa,LGa,VGa,WGa,PGa,OGa,MGa,QGa,YGa,HGa,XGa,JGa,UGa,KGa,jGa,zGa,qGa,$Ga,eFa,tFa,rFa,nFa,iFa,sFa,oFa,aFa,cFa,lFa,uFa,gFa,AFa,dFa,pFa,fFa,IFa,CFa,mFa,hFa,_Fa,yFa,bFa,EFa,BFa,vFa,SFa,wFa,TFa,NFa,RFa,DFa,P1i,O1i,M1i,Q1i,xFa,kFa,GFa,FFa,ZFa,Y1i,H1i,X1i,J1i,U1i,K1i,j1i,z1i,q1i,$1i,e2i,t2i,r2i,n2i,i2i,s2i,o2i,LFa,VFa,WFa,PFa,OFa,MFa,QFa,YFa,HFa,XFa,JFa,UFa,KFa,jFa,zFa,qFa,$Fa,eZa,a2i,c2i,tZa,rZa,nZa,l2i,u2i,g2i,A2i,d2i,p2i,f2i,iZa,sZa,oZa,aZa,cZa,lZa,uZa,gZa,I2i,C2i,m2i,h2i,_2i,y2i,b2i,E2i,B2i,v2i,S2i,AZa,dZa,pZa,fZa,IZa,CZa,mZa,hZa,_Za,yZa,bZa,EZa,w2i,T2i,N2i,R2i,D2i,x2i,k2i,G2i,F2i,Z2i,BZa,vZa,SZa,wZa,TZa,NZa,RZa,DZa,xZa,kZa,GZa,L2i=cc(()=>{Xmr();dEi="cloud.provider",pEi="cloud.account.id",fEi="cloud.region",IEi="cloud.availability_zone",CEi="cloud.platform",mEi="aws.ecs.container.arn",hEi="aws.ecs.cluster.arn",_Ei="aws.ecs.launchtype",yEi="aws.ecs.task.arn",bEi="aws.ecs.task.family",EEi="aws.ecs.task.revision",BEi="aws.eks.cluster.arn",vEi="aws.log.group.names",SEi="aws.log.group.arns",wEi="aws.log.stream.names",TEi="aws.log.stream.arns",NEi="container.name",REi="container.id",DEi="container.runtime",xEi="container.image.name",kEi="container.image.tag",GEi="deployment.environment",FEi="device.id",ZEi="device.model.identifier",LEi="device.model.name",VEi="faas.name",WEi="faas.id",PEi="faas.version",OEi="faas.instance",MEi="faas.max_memory",QEi="host.id",YEi="host.name",HEi="host.type",XEi="host.arch",JEi="host.image.name",UEi="host.image.id",KEi="host.image.version",jEi="k8s.cluster.name",zEi="k8s.node.name",qEi="k8s.node.uid",$Ei="k8s.namespace.name",e1i="k8s.pod.uid",t1i="k8s.pod.name",r1i="k8s.container.name",n1i="k8s.replicaset.uid",i1i="k8s.replicaset.name",s1i="k8s.deployment.uid",o1i="k8s.deployment.name",a1i="k8s.statefulset.uid",c1i="k8s.statefulset.name",l1i="k8s.daemonset.uid",u1i="k8s.daemonset.name",g1i="k8s.job.uid",A1i="k8s.job.name",d1i="k8s.cronjob.uid",p1i="k8s.cronjob.name",f1i="os.type",I1i="os.description",C1i="os.name",m1i="os.version",h1i="process.pid",_1i="process.executable.name",y1i="process.executable.path",b1i="process.command",E1i="process.command_line",B1i="process.command_args",v1i="process.owner",S1i="process.runtime.name",w1i="process.runtime.version",T1i="process.runtime.description",N1i="service.name",R1i="service.namespace",D1i="service.instance.id",x1i="service.version",k1i="telemetry.sdk.name",G1i="telemetry.sdk.language",F1i="telemetry.sdk.version",Z1i="telemetry.auto.version",L1i="webengine.name",V1i="webengine.version",W1i="webengine.description",iGa=dEi,sGa=pEi,oGa=fEi,aGa=IEi,cGa=CEi,lGa=mEi,uGa=hEi,gGa=_Ei,AGa=yEi,dGa=bEi,pGa=EEi,fGa=BEi,IGa=vEi,CGa=SEi,mGa=wEi,hGa=TEi,_Ga=NEi,yGa=REi,bGa=DEi,EGa=xEi,BGa=kEi,vGa=GEi,SGa=FEi,wGa=ZEi,TGa=LEi,NGa=VEi,RGa=WEi,DGa=PEi,xGa=OEi,kGa=MEi,GGa=QEi,FGa=YEi,ZGa=HEi,LGa=XEi,VGa=JEi,WGa=UEi,PGa=KEi,OGa=jEi,MGa=zEi,QGa=qEi,YGa=$Ei,HGa=e1i,XGa=t1i,JGa=r1i,UGa=n1i,KGa=i1i,jGa=s1i,zGa=o1i,qGa=a1i,$Ga=c1i,eFa=l1i,tFa=u1i,rFa=g1i,nFa=A1i,iFa=d1i,sFa=p1i,oFa=f1i,aFa=I1i,cFa=C1i,lFa=m1i,uFa=h1i,gFa=_1i,AFa=y1i,dFa=b1i,pFa=E1i,fFa=B1i,IFa=v1i,CFa=S1i,mFa=w1i,hFa=T1i,_Fa=N1i,yFa=R1i,bFa=D1i,EFa=x1i,BFa=k1i,vFa=G1i,SFa=F1i,wFa=Z1i,TFa=L1i,NFa=V1i,RFa=W1i,DFa=cS([dEi,pEi,fEi,IEi,CEi,mEi,hEi,_Ei,yEi,bEi,EEi,BEi,vEi,SEi,wEi,TEi,NEi,REi,DEi,xEi,kEi,GEi,FEi,ZEi,LEi,VEi,WEi,PEi,OEi,MEi,QEi,YEi,HEi,XEi,JEi,UEi,KEi,jEi,zEi,qEi,$Ei,e1i,t1i,r1i,n1i,i1i,s1i,o1i,a1i,c1i,l1i,u1i,g1i,A1i,d1i,p1i,f1i,I1i,C1i,m1i,h1i,_1i,y1i,b1i,E1i,B1i,v1i,S1i,w1i,T1i,N1i,R1i,D1i,x1i,k1i,G1i,F1i,Z1i,L1i,V1i,W1i]),P1i="alibaba_cloud",O1i="aws",M1i="azure",Q1i="gcp",xFa=P1i,kFa=O1i,GFa=M1i,FFa=Q1i,ZFa=cS([P1i,O1i,M1i,Q1i]),Y1i="alibaba_cloud_ecs",H1i="alibaba_cloud_fc",X1i="aws_ec2",J1i="aws_ecs",U1i="aws_eks",K1i="aws_lambda",j1i="aws_elastic_beanstalk",z1i="azure_vm",q1i="azure_container_instances",$1i="azure_aks",e2i="azure_functions",t2i="azure_app_service",r2i="gcp_compute_engine",n2i="gcp_cloud_run",i2i="gcp_kubernetes_engine",s2i="gcp_cloud_functions",o2i="gcp_app_engine",LFa=Y1i,VFa=H1i,WFa=X1i,PFa=J1i,OFa=U1i,MFa=K1i,QFa=j1i,YFa=z1i,HFa=q1i,XFa=$1i,JFa=e2i,UFa=t2i,KFa=r2i,jFa=n2i,zFa=i2i,qFa=s2i,$Fa=o2i,eZa=cS([Y1i,H1i,X1i,J1i,U1i,K1i,j1i,z1i,q1i,$1i,e2i,t2i,r2i,n2i,i2i,s2i,o2i]),a2i="ec2",c2i="fargate",tZa=a2i,rZa=c2i,nZa=cS([a2i,c2i]),l2i="amd64",u2i="arm32",g2i="arm64",A2i="ia64",d2i="ppc32",p2i="ppc64",f2i="x86",iZa=l2i,sZa=u2i,oZa=g2i,aZa=A2i,cZa=d2i,lZa=p2i,uZa=f2i,gZa=cS([l2i,u2i,g2i,A2i,d2i,p2i,f2i]),I2i="windows",C2i="linux",m2i="darwin",h2i="freebsd",_2i="netbsd",y2i="openbsd",b2i="dragonflybsd",E2i="hpux",B2i="aix",v2i="solaris",S2i="z_os",AZa=I2i,dZa=C2i,pZa=m2i,fZa=h2i,IZa=_2i,CZa=y2i,mZa=b2i,hZa=E2i,_Za=B2i,yZa=v2i,bZa=S2i,EZa=cS([I2i,C2i,m2i,h2i,_2i,y2i,b2i,E2i,B2i,v2i,S2i]),w2i="cpp",T2i="dotnet",N2i="erlang",R2i="go",D2i="java",x2i="nodejs",k2i="php",G2i="python",F2i="ruby",Z2i="webjs",BZa=w2i,vZa=T2i,SZa=N2i,wZa=R2i,TZa=D2i,NZa=x2i,RZa=k2i,DZa=G2i,xZa=F2i,kZa=Z2i,GZa=cS([w2i,T2i,N2i,R2i,D2i,x2i,k2i,G2i,F2i,Z2i])});var V2i=cc(()=>{L2i()});var FZa,ZZa,LZa,VZa,WZa,PZa,OZa,MZa,QZa,YZa,HZa,XZa,JZa,UZa,KZa,jZa,zZa,qZa,$Za,eLa,tLa,rLa,nLa,iLa,sLa,oLa,aLa,cLa,lLa,uLa,gLa,ALa,dLa,pLa,fLa,ILa,CLa,mLa,hLa,_La,yLa,bLa,ELa,BLa,vLa,SLa,wLa,TLa,NLa,RLa,DLa,xLa,kLa,GLa,FLa,ZLa,LLa,VLa,WLa,PLa,OLa,MLa,QLa,YLa,HLa,XLa,JLa,ULa,KLa,jLa,zLa,qLa,$La,e9a,t9a,r9a,n9a,i9a,s9a,o9a,a9a,c9a,l9a,u9a,g9a,A9a,d9a,p9a,f9a,I9a,C9a,m9a,h9a,_9a,y9a,b9a,E9a,B9a,v9a,S9a,w9a,T9a,N9a,R9a,D9a,x9a,k9a,G9a,F9a,Z9a,W2i=cc(()=>{FZa="aspnetcore.rate_limiting.result",ZZa="acquired",LZa="endpoint_limiter",VZa="global_limiter",WZa="request_canceled",PZa="telemetry.sdk.language",OZa="cpp",MZa="dotnet",QZa="erlang",YZa="go",HZa="java",XZa="nodejs",JZa="php",UZa="python",KZa="ruby",jZa="rust",zZa="swift",qZa="webjs",$Za="telemetry.sdk.name",eLa="telemetry.sdk.version",tLa="aspnetcore.diagnostics.handler.type",rLa="aspnetcore.diagnostics.exception.result",nLa="aborted",iLa="handled",sLa="skipped",oLa="unhandled",aLa="aspnetcore.rate_limiting.policy",cLa="aspnetcore.request.is_unhandled",lLa="aspnetcore.routing.is_fallback",uLa="aspnetcore.routing.match_status",gLa="failure",ALa="success",dLa="client.address",pLa="client.port",fLa="error.type",ILa="_OTHER",CLa="exception.escaped",mLa="exception.message",hLa="exception.stacktrace",_La="exception.type",yLa=function(e){return"http.request.header."+e},bLa="http.request.method",ELa="_OTHER",BLa="CONNECT",vLa="DELETE",SLa="GET",wLa="HEAD",TLa="OPTIONS",NLa="PATCH",RLa="POST",DLa="PUT",xLa="TRACE",kLa="http.request.method_original",GLa="http.request.resend_count",FLa=function(e){return"http.response.header."+e},ZLa="http.response.status_code",LLa="http.route",VLa="jvm.gc.action",WLa="jvm.gc.name",PLa="jvm.memory.pool.name",OLa="jvm.memory.type",MLa="heap",QLa="non_heap",YLa="jvm.thread.daemon",HLa="jvm.thread.state",XLa="blocked",JLa="new",ULa="runnable",KLa="terminated",jLa="timed_waiting",zLa="waiting",qLa="network.local.address",$La="network.local.port",e9a="network.peer.address",t9a="network.peer.port",r9a="network.protocol.name",n9a="network.protocol.version",i9a="network.transport",s9a="pipe",o9a="quic",a9a="tcp",c9a="udp",l9a="unix",u9a="network.type",g9a="ipv4",A9a="ipv6",d9a="otel.scope.name",p9a="otel.scope.version",f9a="otel.status_code",I9a="ERROR",C9a="OK",m9a="otel.status_description",h9a="server.address",_9a="server.port",y9a="service.name",b9a="service.version",E9a="signalr.connection.status",B9a="app_shutdown",v9a="normal_closure",S9a="timeout",w9a="signalr.transport",T9a="long_polling",N9a="server_sent_events",R9a="web_sockets",D9a="url.fragment",x9a="url.full",k9a="url.path",G9a="url.query",F9a="url.scheme",Z9a="user_agent.original"});var L9a,V9a,W9a,P9a,O9a,M9a,Q9a,Y9a,H9a,X9a,J9a,U9a,K9a,j9a,z9a,q9a,$9a,eVa,tVa,rVa,nVa,iVa,sVa,oVa,aVa,cVa,lVa,uVa,gVa,AVa,dVa,P2i=cc(()=>{L9a="aspnetcore.diagnostics.exceptions",V9a="aspnetcore.rate_limiting.active_request_leases",W9a="aspnetcore.rate_limiting.queued_requests",P9a="aspnetcore.rate_limiting.request.time_in_queue",O9a="aspnetcore.rate_limiting.request_lease.duration",M9a="aspnetcore.rate_limiting.requests",Q9a="aspnetcore.routing.match_attempts",Y9a="http.client.request.duration",H9a="http.server.request.duration",X9a="jvm.class.count",J9a="jvm.class.loaded",U9a="jvm.class.unloaded",K9a="jvm.cpu.count",j9a="jvm.cpu.recent_utilization",z9a="jvm.cpu.time",q9a="jvm.gc.duration",$9a="jvm.memory.committed",eVa="jvm.memory.limit",tVa="jvm.memory.used",rVa="jvm.memory.used_after_last_gc",nVa="jvm.thread.count",iVa="kestrel.active_connections",sVa="kestrel.active_tls_handshakes",oVa="kestrel.connection.duration",aVa="kestrel.queued_connections",cVa="kestrel.queued_requests",lVa="kestrel.rejected_connections",uVa="kestrel.tls_handshake.duration",gVa="kestrel.upgraded_connections",AVa="signalr.server.active_connections",dVa="signalr.server.connection.duration"});var O2i={};jf(O2i,{ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED:()=>nLa,ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED:()=>iLa,ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED:()=>sLa,ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED:()=>oLa,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED:()=>ZZa,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER:()=>LZa,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER:()=>VZa,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED:()=>WZa,ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE:()=>gLa,ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS:()=>ALa,ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT:()=>rLa,ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE:()=>tLa,ATTR_ASPNETCORE_RATE_LIMITING_POLICY:()=>aLa,ATTR_ASPNETCORE_RATE_LIMITING_RESULT:()=>FZa,ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED:()=>cLa,ATTR_ASPNETCORE_ROUTING_IS_FALLBACK:()=>lLa,ATTR_ASPNETCORE_ROUTING_MATCH_STATUS:()=>uLa,ATTR_CLIENT_ADDRESS:()=>dLa,ATTR_CLIENT_PORT:()=>pLa,ATTR_ERROR_TYPE:()=>fLa,ATTR_EXCEPTION_ESCAPED:()=>CLa,ATTR_EXCEPTION_MESSAGE:()=>mLa,ATTR_EXCEPTION_STACKTRACE:()=>hLa,ATTR_EXCEPTION_TYPE:()=>_La,ATTR_HTTP_REQUEST_HEADER:()=>yLa,ATTR_HTTP_REQUEST_METHOD:()=>bLa,ATTR_HTTP_REQUEST_METHOD_ORIGINAL:()=>kLa,ATTR_HTTP_REQUEST_RESEND_COUNT:()=>GLa,ATTR_HTTP_RESPONSE_HEADER:()=>FLa,ATTR_HTTP_RESPONSE_STATUS_CODE:()=>ZLa,ATTR_HTTP_ROUTE:()=>LLa,ATTR_JVM_GC_ACTION:()=>VLa,ATTR_JVM_GC_NAME:()=>WLa,ATTR_JVM_MEMORY_POOL_NAME:()=>PLa,ATTR_JVM_MEMORY_TYPE:()=>OLa,ATTR_JVM_THREAD_DAEMON:()=>YLa,ATTR_JVM_THREAD_STATE:()=>HLa,ATTR_NETWORK_LOCAL_ADDRESS:()=>qLa,ATTR_NETWORK_LOCAL_PORT:()=>$La,ATTR_NETWORK_PEER_ADDRESS:()=>e9a,ATTR_NETWORK_PEER_PORT:()=>t9a,ATTR_NETWORK_PROTOCOL_NAME:()=>r9a,ATTR_NETWORK_PROTOCOL_VERSION:()=>n9a,ATTR_NETWORK_TRANSPORT:()=>i9a,ATTR_NETWORK_TYPE:()=>u9a,ATTR_OTEL_SCOPE_NAME:()=>d9a,ATTR_OTEL_SCOPE_VERSION:()=>p9a,ATTR_OTEL_STATUS_CODE:()=>f9a,ATTR_OTEL_STATUS_DESCRIPTION:()=>m9a,ATTR_SERVER_ADDRESS:()=>h9a,ATTR_SERVER_PORT:()=>_9a,ATTR_SERVICE_NAME:()=>y9a,ATTR_SERVICE_VERSION:()=>b9a,ATTR_SIGNALR_CONNECTION_STATUS:()=>E9a,ATTR_SIGNALR_TRANSPORT:()=>w9a,ATTR_TELEMETRY_SDK_LANGUAGE:()=>PZa,ATTR_TELEMETRY_SDK_NAME:()=>$Za,ATTR_TELEMETRY_SDK_VERSION:()=>eLa,ATTR_URL_FRAGMENT:()=>D9a,ATTR_URL_FULL:()=>x9a,ATTR_URL_PATH:()=>k9a,ATTR_URL_QUERY:()=>G9a,ATTR_URL_SCHEME:()=>F9a,ATTR_USER_AGENT_ORIGINAL:()=>Z9a,AWSECSLAUNCHTYPEVALUES_EC2:()=>tZa,AWSECSLAUNCHTYPEVALUES_FARGATE:()=>rZa,AwsEcsLaunchtypeValues:()=>nZa,CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS:()=>LFa,CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC:()=>VFa,CLOUDPLATFORMVALUES_AWS_EC2:()=>WFa,CLOUDPLATFORMVALUES_AWS_ECS:()=>PFa,CLOUDPLATFORMVALUES_AWS_EKS:()=>OFa,CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK:()=>QFa,CLOUDPLATFORMVALUES_AWS_LAMBDA:()=>MFa,CLOUDPLATFORMVALUES_AZURE_AKS:()=>XFa,CLOUDPLATFORMVALUES_AZURE_APP_SERVICE:()=>UFa,CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES:()=>HFa,CLOUDPLATFORMVALUES_AZURE_FUNCTIONS:()=>JFa,CLOUDPLATFORMVALUES_AZURE_VM:()=>YFa,CLOUDPLATFORMVALUES_GCP_APP_ENGINE:()=>$Fa,CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS:()=>qFa,CLOUDPLATFORMVALUES_GCP_CLOUD_RUN:()=>jFa,CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE:()=>KFa,CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE:()=>zFa,CLOUDPROVIDERVALUES_ALIBABA_CLOUD:()=>xFa,CLOUDPROVIDERVALUES_AWS:()=>kFa,CLOUDPROVIDERVALUES_AZURE:()=>GFa,CLOUDPROVIDERVALUES_GCP:()=>FFa,CloudPlatformValues:()=>eZa,CloudProviderValues:()=>ZFa,DBCASSANDRACONSISTENCYLEVELVALUES_ALL:()=>Ixa,DBCASSANDRACONSISTENCYLEVELVALUES_ANY:()=>Bxa,DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM:()=>Cxa,DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE:()=>Exa,DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM:()=>hxa,DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL:()=>Sxa,DBCASSANDRACONSISTENCYLEVELVALUES_ONE:()=>_xa,DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM:()=>mxa,DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL:()=>vxa,DBCASSANDRACONSISTENCYLEVELVALUES_THREE:()=>bxa,DBCASSANDRACONSISTENCYLEVELVALUES_TWO:()=>yxa,DBSYSTEMVALUES_ADABAS:()=>WDa,DBSYSTEMVALUES_CACHE:()=>VDa,DBSYSTEMVALUES_CASSANDRA:()=>rxa,DBSYSTEMVALUES_CLOUDSCAPE:()=>RDa,DBSYSTEMVALUES_COCKROACHDB:()=>pxa,DBSYSTEMVALUES_COLDFUSION:()=>txa,DBSYSTEMVALUES_COSMOSDB:()=>cxa,DBSYSTEMVALUES_COUCHBASE:()=>oxa,DBSYSTEMVALUES_COUCHDB:()=>axa,DBSYSTEMVALUES_DB2:()=>SDa,DBSYSTEMVALUES_DERBY:()=>ODa,DBSYSTEMVALUES_DYNAMODB:()=>lxa,DBSYSTEMVALUES_EDB:()=>LDa,DBSYSTEMVALUES_ELASTICSEARCH:()=>Axa,DBSYSTEMVALUES_FILEMAKER:()=>MDa,DBSYSTEMVALUES_FIREBIRD:()=>PDa,DBSYSTEMVALUES_FIRSTSQL:()=>ZDa,DBSYSTEMVALUES_GEODE:()=>gxa,DBSYSTEMVALUES_H2:()=>exa,DBSYSTEMVALUES_HANADB:()=>GDa,DBSYSTEMVALUES_HBASE:()=>nxa,DBSYSTEMVALUES_HIVE:()=>NDa,DBSYSTEMVALUES_HSQLDB:()=>DDa,DBSYSTEMVALUES_INFORMIX:()=>QDa,DBSYSTEMVALUES_INGRES:()=>FDa,DBSYSTEMVALUES_INSTANTDB:()=>YDa,DBSYSTEMVALUES_INTERBASE:()=>HDa,DBSYSTEMVALUES_MARIADB:()=>XDa,DBSYSTEMVALUES_MAXDB:()=>kDa,DBSYSTEMVALUES_MEMCACHED:()=>dxa,DBSYSTEMVALUES_MONGODB:()=>ixa,DBSYSTEMVALUES_MSSQL:()=>EDa,DBSYSTEMVALUES_MYSQL:()=>BDa,DBSYSTEMVALUES_NEO4J:()=>uxa,DBSYSTEMVALUES_NETEZZA:()=>JDa,DBSYSTEMVALUES_ORACLE:()=>vDa,DBSYSTEMVALUES_OTHER_SQL:()=>bDa,DBSYSTEMVALUES_PERVASIVE:()=>UDa,DBSYSTEMVALUES_POINTBASE:()=>KDa,DBSYSTEMVALUES_POSTGRESQL:()=>wDa,DBSYSTEMVALUES_PROGRESS:()=>xDa,DBSYSTEMVALUES_REDIS:()=>sxa,DBSYSTEMVALUES_REDSHIFT:()=>TDa,DBSYSTEMVALUES_SQLITE:()=>jDa,DBSYSTEMVALUES_SYBASE:()=>zDa,DBSYSTEMVALUES_TERADATA:()=>qDa,DBSYSTEMVALUES_VERTICA:()=>$Da,DbCassandraConsistencyLevelValues:()=>wxa,DbSystemValues:()=>fxa,ERROR_TYPE_VALUE_OTHER:()=>ILa,FAASDOCUMENTOPERATIONVALUES_DELETE:()=>Zxa,FAASDOCUMENTOPERATIONVALUES_EDIT:()=>Fxa,FAASDOCUMENTOPERATIONVALUES_INSERT:()=>Gxa,FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD:()=>Vxa,FAASINVOKEDPROVIDERVALUES_AWS:()=>Wxa,FAASINVOKEDPROVIDERVALUES_AZURE:()=>Pxa,FAASINVOKEDPROVIDERVALUES_GCP:()=>Oxa,FAASTRIGGERVALUES_DATASOURCE:()=>Txa,FAASTRIGGERVALUES_HTTP:()=>Nxa,FAASTRIGGERVALUES_OTHER:()=>xxa,FAASTRIGGERVALUES_PUBSUB:()=>Rxa,FAASTRIGGERVALUES_TIMER:()=>Dxa,FaasDocumentOperationValues:()=>Lxa,FaasInvokedProviderValues:()=>Mxa,FaasTriggerValues:()=>kxa,HOSTARCHVALUES_AMD64:()=>iZa,HOSTARCHVALUES_ARM32:()=>sZa,HOSTARCHVALUES_ARM64:()=>oZa,HOSTARCHVALUES_IA64:()=>aZa,HOSTARCHVALUES_PPC32:()=>cZa,HOSTARCHVALUES_PPC64:()=>lZa,HOSTARCHVALUES_X86:()=>uZa,HTTPFLAVORVALUES_HTTP_1_0:()=>vka,HTTPFLAVORVALUES_HTTP_1_1:()=>Ska,HTTPFLAVORVALUES_HTTP_2_0:()=>wka,HTTPFLAVORVALUES_QUIC:()=>Nka,HTTPFLAVORVALUES_SPDY:()=>Tka,HTTP_REQUEST_METHOD_VALUE_CONNECT:()=>BLa,HTTP_REQUEST_METHOD_VALUE_DELETE:()=>vLa,HTTP_REQUEST_METHOD_VALUE_GET:()=>SLa,HTTP_REQUEST_METHOD_VALUE_HEAD:()=>wLa,HTTP_REQUEST_METHOD_VALUE_OPTIONS:()=>TLa,HTTP_REQUEST_METHOD_VALUE_OTHER:()=>ELa,HTTP_REQUEST_METHOD_VALUE_PATCH:()=>NLa,HTTP_REQUEST_METHOD_VALUE_POST:()=>RLa,HTTP_REQUEST_METHOD_VALUE_PUT:()=>DLa,HTTP_REQUEST_METHOD_VALUE_TRACE:()=>xLa,HostArchValues:()=>gZa,HttpFlavorValues:()=>Rka,JVM_MEMORY_TYPE_VALUE_HEAP:()=>MLa,JVM_MEMORY_TYPE_VALUE_NON_HEAP:()=>QLa,JVM_THREAD_STATE_VALUE_BLOCKED:()=>XLa,JVM_THREAD_STATE_VALUE_NEW:()=>JLa,JVM_THREAD_STATE_VALUE_RUNNABLE:()=>ULa,JVM_THREAD_STATE_VALUE_TERMINATED:()=>KLa,JVM_THREAD_STATE_VALUE_TIMED_WAITING:()=>jLa,JVM_THREAD_STATE_VALUE_WAITING:()=>zLa,MESSAGETYPEVALUES_RECEIVED:()=>rGa,MESSAGETYPEVALUES_SENT:()=>tGa,MESSAGINGDESTINATIONKINDVALUES_QUEUE:()=>Dka,MESSAGINGDESTINATIONKINDVALUES_TOPIC:()=>xka,MESSAGINGOPERATIONVALUES_PROCESS:()=>Fka,MESSAGINGOPERATIONVALUES_RECEIVE:()=>Gka,METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS:()=>L9a,METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES:()=>V9a,METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS:()=>W9a,METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS:()=>M9a,METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION:()=>O9a,METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE:()=>P9a,METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS:()=>Q9a,METRIC_HTTP_CLIENT_REQUEST_DURATION:()=>Y9a,METRIC_HTTP_SERVER_REQUEST_DURATION:()=>H9a,METRIC_JVM_CLASS_COUNT:()=>X9a,METRIC_JVM_CLASS_LOADED:()=>J9a,METRIC_JVM_CLASS_UNLOADED:()=>U9a,METRIC_JVM_CPU_COUNT:()=>K9a,METRIC_JVM_CPU_RECENT_UTILIZATION:()=>j9a,METRIC_JVM_CPU_TIME:()=>z9a,METRIC_JVM_GC_DURATION:()=>q9a,METRIC_JVM_MEMORY_COMMITTED:()=>$9a,METRIC_JVM_MEMORY_LIMIT:()=>eVa,METRIC_JVM_MEMORY_USED:()=>tVa,METRIC_JVM_MEMORY_USED_AFTER_LAST_GC:()=>rVa,METRIC_JVM_THREAD_COUNT:()=>nVa,METRIC_KESTREL_ACTIVE_CONNECTIONS:()=>iVa,METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES:()=>sVa,METRIC_KESTREL_CONNECTION_DURATION:()=>oVa,METRIC_KESTREL_QUEUED_CONNECTIONS:()=>aVa,METRIC_KESTREL_QUEUED_REQUESTS:()=>cVa,METRIC_KESTREL_REJECTED_CONNECTIONS:()=>lVa,METRIC_KESTREL_TLS_HANDSHAKE_DURATION:()=>uVa,METRIC_KESTREL_UPGRADED_CONNECTIONS:()=>gVa,METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS:()=>AVa,METRIC_SIGNALR_SERVER_CONNECTION_DURATION:()=>dVa,MessageTypeValues:()=>nGa,MessagingDestinationKindValues:()=>kka,MessagingOperationValues:()=>Zka,NETHOSTCONNECTIONSUBTYPEVALUES_CDMA:()=>oka,NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT:()=>lka,NETHOSTCONNECTIONSUBTYPEVALUES_EDGE:()=>ika,NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD:()=>Ika,NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0:()=>aka,NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A:()=>cka,NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B:()=>pka,NETHOSTCONNECTIONSUBTYPEVALUES_GPRS:()=>nka,NETHOSTCONNECTIONSUBTYPEVALUES_GSM:()=>mka,NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA:()=>uka,NETHOSTCONNECTIONSUBTYPEVALUES_HSPA:()=>Aka,NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP:()=>Cka,NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA:()=>gka,NETHOSTCONNECTIONSUBTYPEVALUES_IDEN:()=>dka,NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN:()=>_ka,NETHOSTCONNECTIONSUBTYPEVALUES_LTE:()=>fka,NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA:()=>Eka,NETHOSTCONNECTIONSUBTYPEVALUES_NR:()=>yka,NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA:()=>bka,NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA:()=>hka,NETHOSTCONNECTIONSUBTYPEVALUES_UMTS:()=>ska,NETHOSTCONNECTIONTYPEVALUES_CELL:()=>$xa,NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE:()=>eka,NETHOSTCONNECTIONTYPEVALUES_UNKNOWN:()=>tka,NETHOSTCONNECTIONTYPEVALUES_WIFI:()=>zxa,NETHOSTCONNECTIONTYPEVALUES_WIRED:()=>qxa,NETTRANSPORTVALUES_INPROC:()=>Uxa,NETTRANSPORTVALUES_IP:()=>Hxa,NETTRANSPORTVALUES_IP_TCP:()=>Qxa,NETTRANSPORTVALUES_IP_UDP:()=>Yxa,NETTRANSPORTVALUES_OTHER:()=>Kxa,NETTRANSPORTVALUES_PIPE:()=>Jxa,NETTRANSPORTVALUES_UNIX:()=>Xxa,NETWORK_TRANSPORT_VALUE_PIPE:()=>s9a,NETWORK_TRANSPORT_VALUE_QUIC:()=>o9a,NETWORK_TRANSPORT_VALUE_TCP:()=>a9a,NETWORK_TRANSPORT_VALUE_UDP:()=>c9a,NETWORK_TRANSPORT_VALUE_UNIX:()=>l9a,NETWORK_TYPE_VALUE_IPV4:()=>g9a,NETWORK_TYPE_VALUE_IPV6:()=>A9a,NetHostConnectionSubtypeValues:()=>Bka,NetHostConnectionTypeValues:()=>rka,NetTransportValues:()=>jxa,OSTYPEVALUES_AIX:()=>_Za,OSTYPEVALUES_DARWIN:()=>pZa,OSTYPEVALUES_DRAGONFLYBSD:()=>mZa,OSTYPEVALUES_FREEBSD:()=>fZa,OSTYPEVALUES_HPUX:()=>hZa,OSTYPEVALUES_LINUX:()=>dZa,OSTYPEVALUES_NETBSD:()=>IZa,OSTYPEVALUES_OPENBSD:()=>CZa,OSTYPEVALUES_SOLARIS:()=>yZa,OSTYPEVALUES_WINDOWS:()=>AZa,OSTYPEVALUES_Z_OS:()=>bZa,OTEL_STATUS_CODE_VALUE_ERROR:()=>I9a,OTEL_STATUS_CODE_VALUE_OK:()=>C9a,OsTypeValues:()=>EZa,RPCGRPCSTATUSCODEVALUES_ABORTED:()=>Jka,RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS:()=>Qka,RPCGRPCSTATUSCODEVALUES_CANCELLED:()=>Vka,RPCGRPCSTATUSCODEVALUES_DATA_LOSS:()=>qka,RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED:()=>Oka,RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION:()=>Xka,RPCGRPCSTATUSCODEVALUES_INTERNAL:()=>jka,RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT:()=>Pka,RPCGRPCSTATUSCODEVALUES_NOT_FOUND:()=>Mka,RPCGRPCSTATUSCODEVALUES_OK:()=>Lka,RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE:()=>Uka,RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED:()=>Yka,RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED:()=>Hka,RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED:()=>$ka,RPCGRPCSTATUSCODEVALUES_UNAVAILABLE:()=>zka,RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED:()=>Kka,RPCGRPCSTATUSCODEVALUES_UNKNOWN:()=>Wka,RpcGrpcStatusCodeValues:()=>eGa,SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET:()=>RRa,SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS:()=>MRa,SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ:()=>wRa,SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY:()=>ERa,SEMATTRS_AWS_DYNAMODB_COUNT:()=>PRa,SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE:()=>FRa,SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES:()=>kRa,SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES:()=>QRa,SEMATTRS_AWS_DYNAMODB_INDEX_NAME:()=>DRa,SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS:()=>BRa,SEMATTRS_AWS_DYNAMODB_LIMIT:()=>NRa,SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES:()=>GRa,SEMATTRS_AWS_DYNAMODB_PROJECTION:()=>TRa,SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY:()=>vRa,SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY:()=>SRa,SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT:()=>ORa,SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD:()=>LRa,SEMATTRS_AWS_DYNAMODB_SEGMENT:()=>VRa,SEMATTRS_AWS_DYNAMODB_SELECT:()=>xRa,SEMATTRS_AWS_DYNAMODB_TABLE_COUNT:()=>ZRa,SEMATTRS_AWS_DYNAMODB_TABLE_NAMES:()=>bRa,SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS:()=>WRa,SEMATTRS_AWS_LAMBDA_INVOKED_ARN:()=>tNa,SEMATTRS_CODE_FILEPATH:()=>sRa,SEMATTRS_CODE_FUNCTION:()=>nRa,SEMATTRS_CODE_LINENO:()=>oRa,SEMATTRS_CODE_NAMESPACE:()=>iRa,SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL:()=>ANa,SEMATTRS_DB_CASSANDRA_COORDINATOR_DC:()=>CNa,SEMATTRS_DB_CASSANDRA_COORDINATOR_ID:()=>INa,SEMATTRS_DB_CASSANDRA_IDEMPOTENCE:()=>pNa,SEMATTRS_DB_CASSANDRA_KEYSPACE:()=>uNa,SEMATTRS_DB_CASSANDRA_PAGE_SIZE:()=>gNa,SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT:()=>fNa,SEMATTRS_DB_CASSANDRA_TABLE:()=>dNa,SEMATTRS_DB_CONNECTION_STRING:()=>nNa,SEMATTRS_DB_HBASE_NAMESPACE:()=>mNa,SEMATTRS_DB_JDBC_DRIVER_CLASSNAME:()=>sNa,SEMATTRS_DB_MONGODB_COLLECTION:()=>_Na,SEMATTRS_DB_MSSQL_INSTANCE_NAME:()=>lNa,SEMATTRS_DB_NAME:()=>oNa,SEMATTRS_DB_OPERATION:()=>cNa,SEMATTRS_DB_REDIS_DATABASE_INDEX:()=>hNa,SEMATTRS_DB_SQL_TABLE:()=>yNa,SEMATTRS_DB_STATEMENT:()=>aNa,SEMATTRS_DB_SYSTEM:()=>rNa,SEMATTRS_DB_USER:()=>iNa,SEMATTRS_ENDUSER_ID:()=>qNa,SEMATTRS_ENDUSER_ROLE:()=>$Na,SEMATTRS_ENDUSER_SCOPE:()=>eRa,SEMATTRS_EXCEPTION_ESCAPED:()=>vNa,SEMATTRS_EXCEPTION_MESSAGE:()=>ENa,SEMATTRS_EXCEPTION_STACKTRACE:()=>BNa,SEMATTRS_EXCEPTION_TYPE:()=>bNa,SEMATTRS_FAAS_COLDSTART:()=>GNa,SEMATTRS_FAAS_CRON:()=>kNa,SEMATTRS_FAAS_DOCUMENT_COLLECTION:()=>TNa,SEMATTRS_FAAS_DOCUMENT_NAME:()=>DNa,SEMATTRS_FAAS_DOCUMENT_OPERATION:()=>NNa,SEMATTRS_FAAS_DOCUMENT_TIME:()=>RNa,SEMATTRS_FAAS_EXECUTION:()=>wNa,SEMATTRS_FAAS_INVOKED_NAME:()=>FNa,SEMATTRS_FAAS_INVOKED_PROVIDER:()=>ZNa,SEMATTRS_FAAS_INVOKED_REGION:()=>LNa,SEMATTRS_FAAS_TIME:()=>xNa,SEMATTRS_FAAS_TRIGGER:()=>SNa,SEMATTRS_HTTP_CLIENT_IP:()=>yRa,SEMATTRS_HTTP_FLAVOR:()=>dRa,SEMATTRS_HTTP_HOST:()=>uRa,SEMATTRS_HTTP_METHOD:()=>aRa,SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH:()=>fRa,SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED:()=>IRa,SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH:()=>CRa,SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED:()=>mRa,SEMATTRS_HTTP_ROUTE:()=>_Ra,SEMATTRS_HTTP_SCHEME:()=>gRa,SEMATTRS_HTTP_SERVER_NAME:()=>hRa,SEMATTRS_HTTP_STATUS_CODE:()=>ARa,SEMATTRS_HTTP_TARGET:()=>lRa,SEMATTRS_HTTP_URL:()=>cRa,SEMATTRS_HTTP_USER_AGENT:()=>pRa,SEMATTRS_MESSAGE_COMPRESSED_SIZE:()=>hDa,SEMATTRS_MESSAGE_ID:()=>mDa,SEMATTRS_MESSAGE_TYPE:()=>CDa,SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE:()=>_Da,SEMATTRS_MESSAGING_CONSUMER_ID:()=>rDa,SEMATTRS_MESSAGING_CONVERSATION_ID:()=>qRa,SEMATTRS_MESSAGING_DESTINATION:()=>HRa,SEMATTRS_MESSAGING_DESTINATION_KIND:()=>XRa,SEMATTRS_MESSAGING_KAFKA_CLIENT_ID:()=>oDa,SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP:()=>sDa,SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY:()=>iDa,SEMATTRS_MESSAGING_KAFKA_PARTITION:()=>aDa,SEMATTRS_MESSAGING_KAFKA_TOMBSTONE:()=>cDa,SEMATTRS_MESSAGING_MESSAGE_ID:()=>zRa,SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES:()=>eDa,SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES:()=>$Ra,SEMATTRS_MESSAGING_OPERATION:()=>tDa,SEMATTRS_MESSAGING_PROTOCOL:()=>URa,SEMATTRS_MESSAGING_PROTOCOL_VERSION:()=>KRa,SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY:()=>nDa,SEMATTRS_MESSAGING_SYSTEM:()=>YRa,SEMATTRS_MESSAGING_TEMP_DESTINATION:()=>JRa,SEMATTRS_MESSAGING_URL:()=>jRa,SEMATTRS_NET_HOST_CARRIER_ICC:()=>jNa,SEMATTRS_NET_HOST_CARRIER_MCC:()=>UNa,SEMATTRS_NET_HOST_CARRIER_MNC:()=>KNa,SEMATTRS_NET_HOST_CARRIER_NAME:()=>JNa,SEMATTRS_NET_HOST_CONNECTION_SUBTYPE:()=>XNa,SEMATTRS_NET_HOST_CONNECTION_TYPE:()=>HNa,SEMATTRS_NET_HOST_IP:()=>MNa,SEMATTRS_NET_HOST_NAME:()=>YNa,SEMATTRS_NET_HOST_PORT:()=>QNa,SEMATTRS_NET_PEER_IP:()=>WNa,SEMATTRS_NET_PEER_NAME:()=>ONa,SEMATTRS_NET_PEER_PORT:()=>PNa,SEMATTRS_NET_TRANSPORT:()=>VNa,SEMATTRS_PEER_SERVICE:()=>zNa,SEMATTRS_RPC_GRPC_STATUS_CODE:()=>ADa,SEMATTRS_RPC_JSONRPC_ERROR_CODE:()=>fDa,SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE:()=>IDa,SEMATTRS_RPC_JSONRPC_REQUEST_ID:()=>pDa,SEMATTRS_RPC_JSONRPC_VERSION:()=>dDa,SEMATTRS_RPC_METHOD:()=>gDa,SEMATTRS_RPC_SERVICE:()=>uDa,SEMATTRS_RPC_SYSTEM:()=>lDa,SEMATTRS_THREAD_ID:()=>tRa,SEMATTRS_THREAD_NAME:()=>rRa,SEMRESATTRS_AWS_ECS_CLUSTER_ARN:()=>uGa,SEMRESATTRS_AWS_ECS_CONTAINER_ARN:()=>lGa,SEMRESATTRS_AWS_ECS_LAUNCHTYPE:()=>gGa,SEMRESATTRS_AWS_ECS_TASK_ARN:()=>AGa,SEMRESATTRS_AWS_ECS_TASK_FAMILY:()=>dGa,SEMRESATTRS_AWS_ECS_TASK_REVISION:()=>pGa,SEMRESATTRS_AWS_EKS_CLUSTER_ARN:()=>fGa,SEMRESATTRS_AWS_LOG_GROUP_ARNS:()=>CGa,SEMRESATTRS_AWS_LOG_GROUP_NAMES:()=>IGa,SEMRESATTRS_AWS_LOG_STREAM_ARNS:()=>hGa,SEMRESATTRS_AWS_LOG_STREAM_NAMES:()=>mGa,SEMRESATTRS_CLOUD_ACCOUNT_ID:()=>sGa,SEMRESATTRS_CLOUD_AVAILABILITY_ZONE:()=>aGa,SEMRESATTRS_CLOUD_PLATFORM:()=>cGa,SEMRESATTRS_CLOUD_PROVIDER:()=>iGa,SEMRESATTRS_CLOUD_REGION:()=>oGa,SEMRESATTRS_CONTAINER_ID:()=>yGa,SEMRESATTRS_CONTAINER_IMAGE_NAME:()=>EGa,SEMRESATTRS_CONTAINER_IMAGE_TAG:()=>BGa,SEMRESATTRS_CONTAINER_NAME:()=>_Ga,SEMRESATTRS_CONTAINER_RUNTIME:()=>bGa,SEMRESATTRS_DEPLOYMENT_ENVIRONMENT:()=>vGa,SEMRESATTRS_DEVICE_ID:()=>SGa,SEMRESATTRS_DEVICE_MODEL_IDENTIFIER:()=>wGa,SEMRESATTRS_DEVICE_MODEL_NAME:()=>TGa,SEMRESATTRS_FAAS_ID:()=>RGa,SEMRESATTRS_FAAS_INSTANCE:()=>xGa,SEMRESATTRS_FAAS_MAX_MEMORY:()=>kGa,SEMRESATTRS_FAAS_NAME:()=>NGa,SEMRESATTRS_FAAS_VERSION:()=>DGa,SEMRESATTRS_HOST_ARCH:()=>LGa,SEMRESATTRS_HOST_ID:()=>GGa,SEMRESATTRS_HOST_IMAGE_ID:()=>WGa,SEMRESATTRS_HOST_IMAGE_NAME:()=>VGa,SEMRESATTRS_HOST_IMAGE_VERSION:()=>PGa,SEMRESATTRS_HOST_NAME:()=>FGa,SEMRESATTRS_HOST_TYPE:()=>ZGa,SEMRESATTRS_K8S_CLUSTER_NAME:()=>OGa,SEMRESATTRS_K8S_CONTAINER_NAME:()=>JGa,SEMRESATTRS_K8S_CRONJOB_NAME:()=>sFa,SEMRESATTRS_K8S_CRONJOB_UID:()=>iFa,SEMRESATTRS_K8S_DAEMONSET_NAME:()=>tFa,SEMRESATTRS_K8S_DAEMONSET_UID:()=>eFa,SEMRESATTRS_K8S_DEPLOYMENT_NAME:()=>zGa,SEMRESATTRS_K8S_DEPLOYMENT_UID:()=>jGa,SEMRESATTRS_K8S_JOB_NAME:()=>nFa,SEMRESATTRS_K8S_JOB_UID:()=>rFa,SEMRESATTRS_K8S_NAMESPACE_NAME:()=>YGa,SEMRESATTRS_K8S_NODE_NAME:()=>MGa,SEMRESATTRS_K8S_NODE_UID:()=>QGa,SEMRESATTRS_K8S_POD_NAME:()=>XGa,SEMRESATTRS_K8S_POD_UID:()=>HGa,SEMRESATTRS_K8S_REPLICASET_NAME:()=>KGa,SEMRESATTRS_K8S_REPLICASET_UID:()=>UGa,SEMRESATTRS_K8S_STATEFULSET_NAME:()=>$Ga,SEMRESATTRS_K8S_STATEFULSET_UID:()=>qGa,SEMRESATTRS_OS_DESCRIPTION:()=>aFa,SEMRESATTRS_OS_NAME:()=>cFa,SEMRESATTRS_OS_TYPE:()=>oFa,SEMRESATTRS_OS_VERSION:()=>lFa,SEMRESATTRS_PROCESS_COMMAND:()=>dFa,SEMRESATTRS_PROCESS_COMMAND_ARGS:()=>fFa,SEMRESATTRS_PROCESS_COMMAND_LINE:()=>pFa,SEMRESATTRS_PROCESS_EXECUTABLE_NAME:()=>gFa,SEMRESATTRS_PROCESS_EXECUTABLE_PATH:()=>AFa,SEMRESATTRS_PROCESS_OWNER:()=>IFa,SEMRESATTRS_PROCESS_PID:()=>uFa,SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION:()=>hFa,SEMRESATTRS_PROCESS_RUNTIME_NAME:()=>CFa,SEMRESATTRS_PROCESS_RUNTIME_VERSION:()=>mFa,SEMRESATTRS_SERVICE_INSTANCE_ID:()=>bFa,SEMRESATTRS_SERVICE_NAME:()=>_Fa,SEMRESATTRS_SERVICE_NAMESPACE:()=>yFa,SEMRESATTRS_SERVICE_VERSION:()=>EFa,SEMRESATTRS_TELEMETRY_AUTO_VERSION:()=>wFa,SEMRESATTRS_TELEMETRY_SDK_LANGUAGE:()=>vFa,SEMRESATTRS_TELEMETRY_SDK_NAME:()=>BFa,SEMRESATTRS_TELEMETRY_SDK_VERSION:()=>SFa,SEMRESATTRS_WEBENGINE_DESCRIPTION:()=>RFa,SEMRESATTRS_WEBENGINE_NAME:()=>TFa,SEMRESATTRS_WEBENGINE_VERSION:()=>NFa,SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN:()=>B9a,SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE:()=>v9a,SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT:()=>S9a,SIGNALR_TRANSPORT_VALUE_LONG_POLLING:()=>T9a,SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS:()=>N9a,SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS:()=>R9a,SemanticAttributes:()=>yDa,SemanticResourceAttributes:()=>DFa,TELEMETRYSDKLANGUAGEVALUES_CPP:()=>BZa,TELEMETRYSDKLANGUAGEVALUES_DOTNET:()=>vZa,TELEMETRYSDKLANGUAGEVALUES_ERLANG:()=>SZa,TELEMETRYSDKLANGUAGEVALUES_GO:()=>wZa,TELEMETRYSDKLANGUAGEVALUES_JAVA:()=>TZa,TELEMETRYSDKLANGUAGEVALUES_NODEJS:()=>NZa,TELEMETRYSDKLANGUAGEVALUES_PHP:()=>RZa,TELEMETRYSDKLANGUAGEVALUES_PYTHON:()=>DZa,TELEMETRYSDKLANGUAGEVALUES_RUBY:()=>xZa,TELEMETRYSDKLANGUAGEVALUES_WEBJS:()=>kZa,TELEMETRY_SDK_LANGUAGE_VALUE_CPP:()=>OZa,TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET:()=>MZa,TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG:()=>QZa,TELEMETRY_SDK_LANGUAGE_VALUE_GO:()=>YZa,TELEMETRY_SDK_LANGUAGE_VALUE_JAVA:()=>HZa,TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS:()=>XZa,TELEMETRY_SDK_LANGUAGE_VALUE_PHP:()=>JZa,TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON:()=>UZa,TELEMETRY_SDK_LANGUAGE_VALUE_RUBY:()=>KZa,TELEMETRY_SDK_LANGUAGE_VALUE_RUST:()=>jZa,TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT:()=>zZa,TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS:()=>qZa,TelemetrySdkLanguageValues:()=>GZa});var M2i=cc(()=>{AEi();V2i();W2i();P2i()});var Q2i=z(_0t=>{"use strict";Object.defineProperty(_0t,"__esModule",{value:!0});_0t.SDK_INFO=void 0;var pVa=Hmr(),e5e=(M2i(),Ai(O2i));_0t.SDK_INFO={[e5e.SEMRESATTRS_TELEMETRY_SDK_NAME]:"opentelemetry",[e5e.SEMRESATTRS_PROCESS_RUNTIME_NAME]:"node",[e5e.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE]:e5e.TELEMETRYSDKLANGUAGEVALUES_NODEJS,[e5e.SEMRESATTRS_TELEMETRY_SDK_VERSION]:pVa.VERSION}});var Y2i=z(y0t=>{"use strict";Object.defineProperty(y0t,"__esModule",{value:!0});y0t.unrefTimer=void 0;function fVa(e){e.unref()}y0t.unrefTimer=fVa});var X2i=z(bR=>{"use strict";Object.defineProperty(bR,"__esModule",{value:!0});bR.unrefTimer=bR.SDK_INFO=bR.otperformance=bR.RandomIdGenerator=bR.hexToBase64=bR._globalThis=bR.getEnv=bR.getEnvWithoutDefaults=void 0;var H2i=phi();Object.defineProperty(bR,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return H2i.getEnvWithoutDefaults}});Object.defineProperty(bR,"getEnv",{enumerable:!0,get:function(){return H2i.getEnv}});var IVa=fhi();Object.defineProperty(bR,"_globalThis",{enumerable:!0,get:function(){return IVa._globalThis}});var CVa=Chi();Object.defineProperty(bR,"hexToBase64",{enumerable:!0,get:function(){return CVa.hexToBase64}});var mVa=_hi();Object.defineProperty(bR,"RandomIdGenerator",{enumerable:!0,get:function(){return mVa.RandomIdGenerator}});var hVa=yhi();Object.defineProperty(bR,"otperformance",{enumerable:!0,get:function(){return hVa.otperformance}});var _Va=Q2i();Object.defineProperty(bR,"SDK_INFO",{enumerable:!0,get:function(){return _Va.SDK_INFO}});var yVa=Y2i();Object.defineProperty(bR,"unrefTimer",{enumerable:!0,get:function(){return yVa.unrefTimer}})});var Jmr=z(ER=>{"use strict";Object.defineProperty(ER,"__esModule",{value:!0});ER.unrefTimer=ER.otperformance=ER.hexToBase64=ER.getEnvWithoutDefaults=ER.getEnv=ER._globalThis=ER.SDK_INFO=ER.RandomIdGenerator=void 0;var soe=X2i();Object.defineProperty(ER,"RandomIdGenerator",{enumerable:!0,get:function(){return soe.RandomIdGenerator}});Object.defineProperty(ER,"SDK_INFO",{enumerable:!0,get:function(){return soe.SDK_INFO}});Object.defineProperty(ER,"_globalThis",{enumerable:!0,get:function(){return soe._globalThis}});Object.defineProperty(ER,"getEnv",{enumerable:!0,get:function(){return soe.getEnv}});Object.defineProperty(ER,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return soe.getEnvWithoutDefaults}});Object.defineProperty(ER,"hexToBase64",{enumerable:!0,get:function(){return soe.hexToBase64}});Object.defineProperty(ER,"otperformance",{enumerable:!0,get:function(){return soe.otperformance}});Object.defineProperty(ER,"unrefTimer",{enumerable:!0,get:function(){return soe.unrefTimer}})});var j2i=z(pE=>{"use strict";Object.defineProperty(pE,"__esModule",{value:!0});pE.addHrTimes=pE.isTimeInput=pE.isTimeInputHrTime=pE.hrTimeToMicroseconds=pE.hrTimeToMilliseconds=pE.hrTimeToNanoseconds=pE.hrTimeToTimeStamp=pE.hrTimeDuration=pE.timeInputToHrTime=pE.hrTime=pE.getTimeOrigin=pE.millisToHrTime=void 0;var Umr=Jmr(),J2i=9,bVa=6,EVa=Math.pow(10,bVa),b0t=Math.pow(10,J2i);function t5e(e){let t=e/1e3,r=Math.trunc(t),s=Math.round(e%1e3*EVa);return[r,s]}pE.millisToHrTime=t5e;function Kmr(){let e=Umr.otperformance.timeOrigin;if(typeof e!="number"){let t=Umr.otperformance;e=t.timing&&t.timing.fetchStart}return e}pE.getTimeOrigin=Kmr;function U2i(e){let t=t5e(Kmr()),r=t5e(typeof e=="number"?e:Umr.otperformance.now());return K2i(t,r)}pE.hrTime=U2i;function BVa(e){if(jmr(e))return e;if(typeof e=="number")return e=b0t&&(r[1]-=b0t,r[0]+=1),r}pE.addHrTimes=K2i});var z2i=z(r5e=>{"use strict";Object.defineProperty(r5e,"__esModule",{value:!0});r5e.ExportResultCode=void 0;var DVa;(function(e){e[e.SUCCESS=0]="SUCCESS",e[e.FAILED=1]="FAILED"})(DVa=r5e.ExportResultCode||(r5e.ExportResultCode={}))});var $2i=z(E0t=>{"use strict";Object.defineProperty(E0t,"__esModule",{value:!0});E0t.CompositePropagator=void 0;var q2i=(BI(),Ai(EI)),zmr=class{constructor(t={}){var r;this._propagators=(r=t.propagators)!==null&&r!==void 0?r:[],this._fields=Array.from(new Set(this._propagators.map(s=>typeof s.fields=="function"?s.fields():[]).reduce((s,a)=>s.concat(a),[])))}inject(t,r,s){for(let a of this._propagators)try{a.inject(t,r,s)}catch(o){q2i.diag.warn(`Failed to inject with ${a.constructor.name}. Err: ${o.message}`)}}extract(t,r,s){return this._propagators.reduce((a,o)=>{try{return o.extract(a,r,s)}catch(g){q2i.diag.warn(`Failed to extract with ${o.constructor.name}. Err: ${g.message}`)}return a},t)}fields(){return this._fields.slice()}};E0t.CompositePropagator=zmr});var eBi=z(Iwe=>{"use strict";Object.defineProperty(Iwe,"__esModule",{value:!0});Iwe.validateValue=Iwe.validateKey=void 0;var qmr="[_0-9a-z-*/]",xVa=`[a-z]${qmr}{0,255}`,kVa=`[a-z0-9]${qmr}{0,240}@[a-z]${qmr}{0,13}`,GVa=new RegExp(`^(?:${xVa}|${kVa})$`),FVa=/^[ -~]{0,255}[!-~]$/,ZVa=/,|=/;function LVa(e){return GVa.test(e)}Iwe.validateKey=LVa;function VVa(e){return FVa.test(e)&&!ZVa.test(e)}Iwe.validateValue=VVa});var ehr=z(B0t=>{"use strict";Object.defineProperty(B0t,"__esModule",{value:!0});B0t.TraceState=void 0;var tBi=eBi(),rBi=32,WVa=512,nBi=",",iBi="=",$mr=class e{constructor(t){this._internalState=new Map,t&&this._parse(t)}set(t,r){let s=this._clone();return s._internalState.has(t)&&s._internalState.delete(t),s._internalState.set(t,r),s}unset(t){let r=this._clone();return r._internalState.delete(t),r}get(t){return this._internalState.get(t)}serialize(){return this._keys().reduce((t,r)=>(t.push(r+iBi+this.get(r)),t),[]).join(nBi)}_parse(t){t.length>WVa||(this._internalState=t.split(nBi).reverse().reduce((r,s)=>{let a=s.trim(),o=a.indexOf(iBi);if(o!==-1){let g=a.slice(0,o),p=a.slice(o+1,s.length);(0,tBi.validateKey)(g)&&(0,tBi.validateValue)(p)&&r.set(g,p)}return r},new Map),this._internalState.size>rBi&&(this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,rBi))))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let t=new e;return t._internalState=new Map(this._internalState),t}};B0t.TraceState=$mr});var oBi=z(Hk=>{"use strict";Object.defineProperty(Hk,"__esModule",{value:!0});Hk.W3CTraceContextPropagator=Hk.parseTraceParent=Hk.TRACE_STATE_HEADER=Hk.TRACE_PARENT_HEADER=void 0;var v0t=(BI(),Ai(EI)),PVa=qHe(),OVa=ehr();Hk.TRACE_PARENT_HEADER="traceparent";Hk.TRACE_STATE_HEADER="tracestate";var MVa="00",QVa="(?!ff)[\\da-f]{2}",YVa="(?![0]{32})[\\da-f]{32}",HVa="(?![0]{16})[\\da-f]{16}",XVa="[\\da-f]{2}",JVa=new RegExp(`^\\s?(${QVa})-(${YVa})-(${HVa})-(${XVa})(-.*)?\\s?$`);function sBi(e){let t=JVa.exec(e);return!t||t[1]==="00"&&t[5]?null:{traceId:t[2],spanId:t[3],traceFlags:parseInt(t[4],16)}}Hk.parseTraceParent=sBi;var thr=class{inject(t,r,s){let a=v0t.trace.getSpanContext(t);if(!a||(0,PVa.isTracingSuppressed)(t)||!(0,v0t.isSpanContextValid)(a))return;let o=`${MVa}-${a.traceId}-${a.spanId}-0${Number(a.traceFlags||v0t.TraceFlags.NONE).toString(16)}`;s.set(r,Hk.TRACE_PARENT_HEADER,o),a.traceState&&s.set(r,Hk.TRACE_STATE_HEADER,a.traceState.serialize())}extract(t,r,s){let a=s.get(r,Hk.TRACE_PARENT_HEADER);if(!a)return t;let o=Array.isArray(a)?a[0]:a;if(typeof o!="string")return t;let g=sBi(o);if(!g)return t;g.isRemote=!0;let p=s.get(r,Hk.TRACE_STATE_HEADER);if(p){let f=Array.isArray(p)?p.join(","):p;g.traceState=new OVa.TraceState(typeof f=="string"?f:void 0)}return v0t.trace.setSpanContext(t,g)}fields(){return[Hk.TRACE_PARENT_HEADER,Hk.TRACE_STATE_HEADER]}};Hk.W3CTraceContextPropagator=thr});var aBi=z(b5=>{"use strict";Object.defineProperty(b5,"__esModule",{value:!0});b5.getRPCMetadata=b5.deleteRPCMetadata=b5.setRPCMetadata=b5.RPCType=void 0;var UVa=(BI(),Ai(EI)),rhr=(0,UVa.createContextKey)("OpenTelemetry SDK Context Key RPC_METADATA"),KVa;(function(e){e.HTTP="http"})(KVa=b5.RPCType||(b5.RPCType={}));function jVa(e,t){return e.setValue(rhr,t)}b5.setRPCMetadata=jVa;function zVa(e){return e.deleteValue(rhr)}b5.deleteRPCMetadata=zVa;function qVa(e){return e.getValue(rhr)}b5.getRPCMetadata=qVa});var ihr=z(S0t=>{"use strict";Object.defineProperty(S0t,"__esModule",{value:!0});S0t.AlwaysOffSampler=void 0;var $Va=(BI(),Ai(EI)),nhr=class{shouldSample(){return{decision:$Va.SamplingDecision.NOT_RECORD}}toString(){return"AlwaysOffSampler"}};S0t.AlwaysOffSampler=nhr});var ohr=z(w0t=>{"use strict";Object.defineProperty(w0t,"__esModule",{value:!0});w0t.AlwaysOnSampler=void 0;var eWa=(BI(),Ai(EI)),shr=class{shouldSample(){return{decision:eWa.SamplingDecision.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}};w0t.AlwaysOnSampler=shr});var lBi=z(N0t=>{"use strict";Object.defineProperty(N0t,"__esModule",{value:!0});N0t.ParentBasedSampler=void 0;var T0t=(BI(),Ai(EI)),tWa=Wmr(),cBi=ihr(),ahr=ohr(),chr=class{constructor(t){var r,s,a,o;this._root=t.root,this._root||((0,tWa.globalErrorHandler)(new Error("ParentBasedSampler must have a root sampler configured")),this._root=new ahr.AlwaysOnSampler),this._remoteParentSampled=(r=t.remoteParentSampled)!==null&&r!==void 0?r:new ahr.AlwaysOnSampler,this._remoteParentNotSampled=(s=t.remoteParentNotSampled)!==null&&s!==void 0?s:new cBi.AlwaysOffSampler,this._localParentSampled=(a=t.localParentSampled)!==null&&a!==void 0?a:new ahr.AlwaysOnSampler,this._localParentNotSampled=(o=t.localParentNotSampled)!==null&&o!==void 0?o:new cBi.AlwaysOffSampler}shouldSample(t,r,s,a,o,g){let p=T0t.trace.getSpanContext(t);return!p||!(0,T0t.isSpanContextValid)(p)?this._root.shouldSample(t,r,s,a,o,g):p.isRemote?p.traceFlags&T0t.TraceFlags.SAMPLED?this._remoteParentSampled.shouldSample(t,r,s,a,o,g):this._remoteParentNotSampled.shouldSample(t,r,s,a,o,g):p.traceFlags&T0t.TraceFlags.SAMPLED?this._localParentSampled.shouldSample(t,r,s,a,o,g):this._localParentNotSampled.shouldSample(t,r,s,a,o,g)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}};N0t.ParentBasedSampler=chr});var uBi=z(R0t=>{"use strict";Object.defineProperty(R0t,"__esModule",{value:!0});R0t.TraceIdRatioBasedSampler=void 0;var lhr=(BI(),Ai(EI)),uhr=class{constructor(t=0){this._ratio=t,this._ratio=this._normalize(t),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(t,r){return{decision:(0,lhr.isValidTraceId)(r)&&this._accumulate(r)=1?1:t<=0?0:t}_accumulate(t){let r=0;for(let s=0;s>>0}return r}};R0t.TraceIdRatioBasedSampler=uhr});var fBi=z(D0t=>{"use strict";Object.defineProperty(D0t,"__esModule",{value:!0});D0t.isPlainObject=void 0;var rWa="[object Object]",nWa="[object Null]",iWa="[object Undefined]",sWa=Function.prototype,gBi=sWa.toString,oWa=gBi.call(Object),aWa=cWa(Object.getPrototypeOf,Object),ABi=Object.prototype,dBi=ABi.hasOwnProperty,hIe=Symbol?Symbol.toStringTag:void 0,pBi=ABi.toString;function cWa(e,t){return function(r){return e(t(r))}}function lWa(e){if(!uWa(e)||gWa(e)!==rWa)return!1;let t=aWa(e);if(t===null)return!0;let r=dBi.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&gBi.call(r)===oWa}D0t.isPlainObject=lWa;function uWa(e){return e!=null&&typeof e=="object"}function gWa(e){return e==null?e===void 0?iWa:nWa:hIe&&hIe in Object(e)?AWa(e):dWa(e)}function AWa(e){let t=dBi.call(e,hIe),r=e[hIe],s=!1;try{e[hIe]=void 0,s=!0}catch{}let a=pBi.call(e);return s&&(t?e[hIe]=r:delete e[hIe]),a}function dWa(e){return pBi.call(e)}});var _Bi=z(G0t=>{"use strict";Object.defineProperty(G0t,"__esModule",{value:!0});G0t.merge=void 0;var IBi=fBi(),pWa=20;function fWa(...e){let t=e.shift(),r=new WeakMap;for(;e.length>0;)t=mBi(t,e.shift(),0,r);return t}G0t.merge=fWa;function ghr(e){return k0t(e)?e.slice():e}function mBi(e,t,r=0,s){let a;if(!(r>pWa)){if(r++,x0t(e)||x0t(t)||hBi(t))a=ghr(t);else if(k0t(e)){if(a=e.slice(),k0t(t))for(let o=0,g=t.length;o"u"?delete a[f]:a[f]=m;else{let y=a[f],B=m;if(CBi(e,f,s)||CBi(t,f,s))delete a[f];else{if(n5e(y)&&n5e(B)){let v=s.get(y)||[],G=s.get(B)||[];v.push({obj:e,key:f}),G.push({obj:t,key:f}),s.set(y,v),s.set(B,G)}a[f]=mBi(a[f],m,r,s)}}}}else a=t;return a}}function CBi(e,t,r){let s=r.get(e[t])||[];for(let a=0,o=s.length;a"u"||e instanceof Date||e instanceof RegExp||e===null}function IWa(e,t){return!(!(0,IBi.isPlainObject)(e)||!(0,IBi.isPlainObject)(t))}});var yBi=z(Cwe=>{"use strict";Object.defineProperty(Cwe,"__esModule",{value:!0});Cwe.callWithTimeout=Cwe.TimeoutError=void 0;var F0t=class e extends Error{constructor(t){super(t),Object.setPrototypeOf(this,e.prototype)}};Cwe.TimeoutError=F0t;function CWa(e,t){let r,s=new Promise(function(o,g){r=setTimeout(function(){g(new F0t("Operation timed out."))},t)});return Promise.race([e,s]).then(a=>(clearTimeout(r),a),a=>{throw clearTimeout(r),a})}Cwe.callWithTimeout=CWa});var EBi=z(mwe=>{"use strict";Object.defineProperty(mwe,"__esModule",{value:!0});mwe.isUrlIgnored=mwe.urlMatches=void 0;function bBi(e,t){return typeof t=="string"?e===t:!!e.match(t)}mwe.urlMatches=bBi;function mWa(e,t){if(!t)return!1;for(let r of t)if(bBi(e,r))return!0;return!1}mwe.isUrlIgnored=mWa});var BBi=z(Z0t=>{"use strict";Object.defineProperty(Z0t,"__esModule",{value:!0});Z0t.isWrapped=void 0;function hWa(e){return typeof e=="function"&&typeof e.__original=="function"&&typeof e.__unwrap=="function"&&e.__wrapped===!0}Z0t.isWrapped=hWa});var vBi=z(L0t=>{"use strict";Object.defineProperty(L0t,"__esModule",{value:!0});L0t.Deferred=void 0;var Ahr=class{constructor(){this._promise=new Promise((t,r)=>{this._resolve=t,this._reject=r})}get promise(){return this._promise}resolve(t){this._resolve(t)}reject(t){this._reject(t)}};L0t.Deferred=Ahr});var SBi=z(V0t=>{"use strict";Object.defineProperty(V0t,"__esModule",{value:!0});V0t.BindOnceFuture=void 0;var _Wa=vBi(),dhr=class{constructor(t,r){this._callback=t,this._that=r,this._isCalled=!1,this._deferred=new _Wa.Deferred}get isCalled(){return this._isCalled}get promise(){return this._deferred.promise}call(...t){if(!this._isCalled){this._isCalled=!0;try{Promise.resolve(this._callback.call(this._that,...t)).then(r=>this._deferred.resolve(r),r=>this._deferred.reject(r))}catch(r){this._deferred.reject(r)}}return this._deferred.promise}};V0t.BindOnceFuture=dhr});var TBi=z(W0t=>{"use strict";Object.defineProperty(W0t,"__esModule",{value:!0});W0t._export=void 0;var wBi=(BI(),Ai(EI)),yWa=qHe();function bWa(e,t){return new Promise(r=>{wBi.context.with((0,yWa.suppressTracing)(wBi.context.active()),()=>{e.export(t,s=>{r(s)})})})}W0t._export=bWa});var Ihr=z(xa=>{"use strict";Object.defineProperty(xa,"__esModule",{value:!0});xa.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=xa.DEFAULT_ATTRIBUTE_COUNT_LIMIT=xa.TraceState=xa.unsuppressTracing=xa.suppressTracing=xa.isTracingSuppressed=xa.TraceIdRatioBasedSampler=xa.ParentBasedSampler=xa.AlwaysOnSampler=xa.AlwaysOffSampler=xa.setRPCMetadata=xa.getRPCMetadata=xa.deleteRPCMetadata=xa.RPCType=xa.parseTraceParent=xa.W3CTraceContextPropagator=xa.TRACE_STATE_HEADER=xa.TRACE_PARENT_HEADER=xa.CompositePropagator=xa.unrefTimer=xa.otperformance=xa.hexToBase64=xa.getEnvWithoutDefaults=xa.getEnv=xa._globalThis=xa.SDK_INFO=xa.RandomIdGenerator=xa.baggageUtils=xa.ExportResultCode=xa.hexToBinary=xa.timeInputToHrTime=xa.millisToHrTime=xa.isTimeInputHrTime=xa.isTimeInput=xa.hrTimeToTimeStamp=xa.hrTimeToNanoseconds=xa.hrTimeToMilliseconds=xa.hrTimeToMicroseconds=xa.hrTimeDuration=xa.hrTime=xa.getTimeOrigin=xa.addHrTimes=xa.loggingErrorHandler=xa.setGlobalErrorHandler=xa.globalErrorHandler=xa.sanitizeAttributes=xa.isAttributeValue=xa.isAttributeKey=xa.AnchoredClock=xa.W3CBaggagePropagator=void 0;xa.internal=xa.VERSION=xa.BindOnceFuture=xa.isWrapped=xa.urlMatches=xa.isUrlIgnored=xa.callWithTimeout=xa.TimeoutError=xa.TracesSamplerValues=xa.merge=xa.parseEnvironment=xa.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=xa.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=xa.DEFAULT_ENVIRONMENT=void 0;var EWa=ohi();Object.defineProperty(xa,"W3CBaggagePropagator",{enumerable:!0,get:function(){return EWa.W3CBaggagePropagator}});var BWa=ahi();Object.defineProperty(xa,"AnchoredClock",{enumerable:!0,get:function(){return BWa.AnchoredClock}});var phr=Ahi();Object.defineProperty(xa,"isAttributeKey",{enumerable:!0,get:function(){return phr.isAttributeKey}});Object.defineProperty(xa,"isAttributeValue",{enumerable:!0,get:function(){return phr.isAttributeValue}});Object.defineProperty(xa,"sanitizeAttributes",{enumerable:!0,get:function(){return phr.sanitizeAttributes}});var NBi=Wmr();Object.defineProperty(xa,"globalErrorHandler",{enumerable:!0,get:function(){return NBi.globalErrorHandler}});Object.defineProperty(xa,"setGlobalErrorHandler",{enumerable:!0,get:function(){return NBi.setGlobalErrorHandler}});var vWa=Vmr();Object.defineProperty(xa,"loggingErrorHandler",{enumerable:!0,get:function(){return vWa.loggingErrorHandler}});var FM=j2i();Object.defineProperty(xa,"addHrTimes",{enumerable:!0,get:function(){return FM.addHrTimes}});Object.defineProperty(xa,"getTimeOrigin",{enumerable:!0,get:function(){return FM.getTimeOrigin}});Object.defineProperty(xa,"hrTime",{enumerable:!0,get:function(){return FM.hrTime}});Object.defineProperty(xa,"hrTimeDuration",{enumerable:!0,get:function(){return FM.hrTimeDuration}});Object.defineProperty(xa,"hrTimeToMicroseconds",{enumerable:!0,get:function(){return FM.hrTimeToMicroseconds}});Object.defineProperty(xa,"hrTimeToMilliseconds",{enumerable:!0,get:function(){return FM.hrTimeToMilliseconds}});Object.defineProperty(xa,"hrTimeToNanoseconds",{enumerable:!0,get:function(){return FM.hrTimeToNanoseconds}});Object.defineProperty(xa,"hrTimeToTimeStamp",{enumerable:!0,get:function(){return FM.hrTimeToTimeStamp}});Object.defineProperty(xa,"isTimeInput",{enumerable:!0,get:function(){return FM.isTimeInput}});Object.defineProperty(xa,"isTimeInputHrTime",{enumerable:!0,get:function(){return FM.isTimeInputHrTime}});Object.defineProperty(xa,"millisToHrTime",{enumerable:!0,get:function(){return FM.millisToHrTime}});Object.defineProperty(xa,"timeInputToHrTime",{enumerable:!0,get:function(){return FM.timeInputToHrTime}});var SWa=Qmr();Object.defineProperty(xa,"hexToBinary",{enumerable:!0,get:function(){return SWa.hexToBinary}});var wWa=z2i();Object.defineProperty(xa,"ExportResultCode",{enumerable:!0,get:function(){return wWa.ExportResultCode}});var P0t=kmr();xa.baggageUtils={getKeyPairs:P0t.getKeyPairs,serializeKeyPairs:P0t.serializeKeyPairs,parseKeyPairsIntoRecord:P0t.parseKeyPairsIntoRecord,parsePairKeyValue:P0t.parsePairKeyValue};var ooe=Jmr();Object.defineProperty(xa,"RandomIdGenerator",{enumerable:!0,get:function(){return ooe.RandomIdGenerator}});Object.defineProperty(xa,"SDK_INFO",{enumerable:!0,get:function(){return ooe.SDK_INFO}});Object.defineProperty(xa,"_globalThis",{enumerable:!0,get:function(){return ooe._globalThis}});Object.defineProperty(xa,"getEnv",{enumerable:!0,get:function(){return ooe.getEnv}});Object.defineProperty(xa,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return ooe.getEnvWithoutDefaults}});Object.defineProperty(xa,"hexToBase64",{enumerable:!0,get:function(){return ooe.hexToBase64}});Object.defineProperty(xa,"otperformance",{enumerable:!0,get:function(){return ooe.otperformance}});Object.defineProperty(xa,"unrefTimer",{enumerable:!0,get:function(){return ooe.unrefTimer}});var TWa=$2i();Object.defineProperty(xa,"CompositePropagator",{enumerable:!0,get:function(){return TWa.CompositePropagator}});var O0t=oBi();Object.defineProperty(xa,"TRACE_PARENT_HEADER",{enumerable:!0,get:function(){return O0t.TRACE_PARENT_HEADER}});Object.defineProperty(xa,"TRACE_STATE_HEADER",{enumerable:!0,get:function(){return O0t.TRACE_STATE_HEADER}});Object.defineProperty(xa,"W3CTraceContextPropagator",{enumerable:!0,get:function(){return O0t.W3CTraceContextPropagator}});Object.defineProperty(xa,"parseTraceParent",{enumerable:!0,get:function(){return O0t.parseTraceParent}});var M0t=aBi();Object.defineProperty(xa,"RPCType",{enumerable:!0,get:function(){return M0t.RPCType}});Object.defineProperty(xa,"deleteRPCMetadata",{enumerable:!0,get:function(){return M0t.deleteRPCMetadata}});Object.defineProperty(xa,"getRPCMetadata",{enumerable:!0,get:function(){return M0t.getRPCMetadata}});Object.defineProperty(xa,"setRPCMetadata",{enumerable:!0,get:function(){return M0t.setRPCMetadata}});var NWa=ihr();Object.defineProperty(xa,"AlwaysOffSampler",{enumerable:!0,get:function(){return NWa.AlwaysOffSampler}});var RWa=ohr();Object.defineProperty(xa,"AlwaysOnSampler",{enumerable:!0,get:function(){return RWa.AlwaysOnSampler}});var DWa=lBi();Object.defineProperty(xa,"ParentBasedSampler",{enumerable:!0,get:function(){return DWa.ParentBasedSampler}});var xWa=uBi();Object.defineProperty(xa,"TraceIdRatioBasedSampler",{enumerable:!0,get:function(){return xWa.TraceIdRatioBasedSampler}});var fhr=qHe();Object.defineProperty(xa,"isTracingSuppressed",{enumerable:!0,get:function(){return fhr.isTracingSuppressed}});Object.defineProperty(xa,"suppressTracing",{enumerable:!0,get:function(){return fhr.suppressTracing}});Object.defineProperty(xa,"unsuppressTracing",{enumerable:!0,get:function(){return fhr.unsuppressTracing}});var kWa=ehr();Object.defineProperty(xa,"TraceState",{enumerable:!0,get:function(){return kWa.TraceState}});var hwe=Omr();Object.defineProperty(xa,"DEFAULT_ATTRIBUTE_COUNT_LIMIT",{enumerable:!0,get:function(){return hwe.DEFAULT_ATTRIBUTE_COUNT_LIMIT}});Object.defineProperty(xa,"DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT",{enumerable:!0,get:function(){return hwe.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT}});Object.defineProperty(xa,"DEFAULT_ENVIRONMENT",{enumerable:!0,get:function(){return hwe.DEFAULT_ENVIRONMENT}});Object.defineProperty(xa,"DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT",{enumerable:!0,get:function(){return hwe.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT}});Object.defineProperty(xa,"DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT",{enumerable:!0,get:function(){return hwe.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT}});Object.defineProperty(xa,"parseEnvironment",{enumerable:!0,get:function(){return hwe.parseEnvironment}});var GWa=_Bi();Object.defineProperty(xa,"merge",{enumerable:!0,get:function(){return GWa.merge}});var FWa=Pmr();Object.defineProperty(xa,"TracesSamplerValues",{enumerable:!0,get:function(){return FWa.TracesSamplerValues}});var RBi=yBi();Object.defineProperty(xa,"TimeoutError",{enumerable:!0,get:function(){return RBi.TimeoutError}});Object.defineProperty(xa,"callWithTimeout",{enumerable:!0,get:function(){return RBi.callWithTimeout}});var DBi=EBi();Object.defineProperty(xa,"isUrlIgnored",{enumerable:!0,get:function(){return DBi.isUrlIgnored}});Object.defineProperty(xa,"urlMatches",{enumerable:!0,get:function(){return DBi.urlMatches}});var ZWa=BBi();Object.defineProperty(xa,"isWrapped",{enumerable:!0,get:function(){return ZWa.isWrapped}});var LWa=SBi();Object.defineProperty(xa,"BindOnceFuture",{enumerable:!0,get:function(){return LWa.BindOnceFuture}});var VWa=Hmr();Object.defineProperty(xa,"VERSION",{enumerable:!0,get:function(){return VWa.VERSION}});var WWa=TBi();xa.internal={_export:WWa._export}});var GBi=z((dRl,Chr)=>{"use strict";if(typeof SharedArrayBuffer<"u"&&typeof Atomics<"u"){let t=function(r){if((r>0&&r<1/0)===!1)throw typeof r!="number"&&typeof r!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");Atomics.wait(e,0,0,Number(r))},e=new Int32Array(new SharedArrayBuffer(4));Chr.exports=t}else{let e=function(t){if((t>0&&t<1/0)===!1)throw typeof t!="number"&&typeof t!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");let s=Date.now()+Number(t);for(;s>Date.now(););};Chr.exports=e}});var MBi=z((pRl,OBi)=>{"use strict";var lS=Dt("fs"),PWa=Dt("events"),OWa=Dt("util").inherits,FBi=Dt("path"),hhr=GBi(),Y0t=100,H0t=Buffer.allocUnsafe(0),MWa=16*1024,ZBi="buffer",LBi="utf8";function VBi(e,t){t._opening=!0,t._writing=!0,t._asyncDrainScheduled=!1;function r(o,g){if(o){t._reopening=!1,t._writing=!1,t._opening=!1,t.sync?process.nextTick(()=>{t.listenerCount("error")>0&&t.emit("error",o)}):t.emit("error",o);return}let p=t._reopening;t.fd=g,t.file=e,t._reopening=!1,t._opening=!1,t._writing=!1,t.sync?process.nextTick(()=>t.emit("ready")):t.emit("ready"),!t.destroyed&&(!t._writing&&t._len>t.minLength||t._flushPending?t._actualWrite():p&&process.nextTick(()=>t.emit("drain")))}let s=t.append?"a":"w",a=t.mode;if(t.sync)try{t.mkdir&&lS.mkdirSync(FBi.dirname(e),{recursive:!0});let o=lS.openSync(e,s,a);r(null,o)}catch(o){throw r(o),o}else t.mkdir?lS.mkdir(FBi.dirname(e),{recursive:!0},o=>{if(o)return r(o);lS.open(e,s,a,r)}):lS.open(e,s,a,r)}function E5(e){if(!(this instanceof E5))return new E5(e);let{fd:t,dest:r,minLength:s,maxLength:a,maxWrite:o,sync:g,append:p=!0,mkdir:f,retryEAGAIN:m,fsync:y,contentMode:B,mode:v}=e||{};t=t||r,this._len=0,this.fd=-1,this._bufs=[],this._lens=[],this._writing=!1,this._ending=!1,this._reopening=!1,this._asyncDrainScheduled=!1,this._flushPending=!1,this._hwm=Math.max(s||0,16387),this.file=null,this.destroyed=!1,this.minLength=s||0,this.maxLength=a||0,this.maxWrite=o||MWa,this.sync=g||!1,this.writable=!0,this._fsync=y||!1,this.append=p||!1,this.mode=v,this.retryEAGAIN=m||(()=>!0),this.mkdir=f||!1;let G,T;if(B===ZBi)this._writingBuf=H0t,this.write=HWa,this.flush=JWa,this.flushSync=KWa,this._actualWrite=zWa,G=()=>lS.writeSync(this.fd,this._writingBuf),T=()=>lS.write(this.fd,this._writingBuf,this.release);else if(B===void 0||B===LBi)this._writingBuf="",this.write=YWa,this.flush=XWa,this.flushSync=UWa,this._actualWrite=jWa,G=()=>lS.writeSync(this.fd,this._writingBuf,"utf8"),T=()=>lS.write(this.fd,this._writingBuf,"utf8",this.release);else throw new Error(`SonicBoom supports "${LBi}" and "${ZBi}", but passed ${B}`);if(typeof t=="number")this.fd=t,process.nextTick(()=>this.emit("ready"));else if(typeof t=="string")VBi(t,this);else throw new Error("SonicBoom supports only file descriptors and files");if(this.minLength>=this.maxWrite)throw new Error(`minLength should be smaller than maxWrite (${this.maxWrite})`);this.release=(O,X)=>{if(O){if((O.code==="EAGAIN"||O.code==="EBUSY")&&this.retryEAGAIN(O,this._writingBuf.length,this._len-this._writingBuf.length))if(this.sync)try{hhr(Y0t),this.release(void 0,0)}catch(ae){this.release(ae)}else setTimeout(T,Y0t);else this._writing=!1,this.emit("error",O);return}this.emit("write",X);let U=mhr(this._writingBuf,this._len,X);if(this._len=U.len,this._writingBuf=U.writingBuf,this._writingBuf.length){if(!this.sync){T();return}try{do{let ae=G(),ge=mhr(this._writingBuf,this._len,ae);this._len=ge.len,this._writingBuf=ge.writingBuf}while(this._writingBuf.length)}catch(ae){this.release(ae);return}}this._fsync&&lS.fsyncSync(this.fd);let le=this._len;this._reopening?(this._writing=!1,this._reopening=!1,this.reopen()):le>this.minLength?this._actualWrite():this._ending?le>0?this._actualWrite():(this._writing=!1,X0t(this)):(this._writing=!1,this.sync?this._asyncDrainScheduled||(this._asyncDrainScheduled=!0,process.nextTick(QWa,this)):this.emit("drain"))},this.on("newListener",function(O){O==="drain"&&(this._asyncDrainScheduled=!1)})}function mhr(e,t,r){return typeof e=="string"&&Buffer.byteLength(e)!==r&&(r=Buffer.from(e).subarray(0,r).toString().length),t=Math.max(t-r,0),e=e.slice(r),{writingBuf:e,len:t}}function QWa(e){e.listenerCount("drain")>0&&(e._asyncDrainScheduled=!1,e.emit("drain"))}OWa(E5,PWa);function WBi(e,t){return e.length===0?H0t:e.length===1?e[0]:Buffer.concat(e,t)}function YWa(e){if(this.destroyed)throw new Error("SonicBoom destroyed");let t=this._len+e.length,r=this._bufs;return this.maxLength&&t>this.maxLength?(this.emit("drop",e),this._lenthis.maxWrite?r.push(""+e):r[r.length-1]+=e,this._len=t,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._lenthis.maxLength?(this.emit("drop",e),this._lenthis.maxWrite?(r.push([e]),s.push(e.length)):(r[r.length-1].push(e),s[s.length-1]+=e.length),this._len=t,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._len{this._fsync?(this._flushPending=!1,e()):lS.fsync(this.fd,s=>{this._flushPending=!1,e(s)}),this.off("error",r)},r=s=>{this._flushPending=!1,e(s),this.off("drain",t)};this.once("drain",t),this.once("error",r)}function XWa(e){if(e!=null&&typeof e!="function")throw new Error("flush cb must be a function");if(this.destroyed){let t=new Error("SonicBoom destroyed");if(e){e(t);return}throw t}if(this.minLength<=0){e?.();return}e&&PBi.call(this,e),!this._writing&&(this._bufs.length===0&&this._bufs.push(""),this._actualWrite())}function JWa(e){if(e!=null&&typeof e!="function")throw new Error("flush cb must be a function");if(this.destroyed){let t=new Error("SonicBoom destroyed");if(e){e(t);return}throw t}if(this.minLength<=0){e?.();return}e&&PBi.call(this,e),!this._writing&&(this._bufs.length===0&&(this._bufs.push([]),this._lens.push(0)),this._actualWrite())}E5.prototype.reopen=function(e){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.reopen(e)});return}if(this._ending)return;if(!this.file)throw new Error("Unable to reopen a file descriptor, you must pass a file to SonicBoom");if(e&&(this.file=e),this._reopening=!0,this._writing)return;let t=this.fd;this.once("ready",()=>{t!==this.fd&&lS.close(t,r=>{if(r)return this.emit("error",r)})}),VBi(this.file,this)};E5.prototype.end=function(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.end()});return}this._ending||(this._ending=!0,!this._writing&&(this._len>0&&this.fd>=0?this._actualWrite():X0t(this)))};function UWa(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift(this._writingBuf),this._writingBuf="");let e="";for(;this._bufs.length||e;){e.length<=0&&(e=this._bufs[0]);try{let t=lS.writeSync(this.fd,e,"utf8"),r=mhr(e,this._len,t);e=r.writingBuf,this._len=r.len,e.length<=0&&this._bufs.shift()}catch(t){if((t.code==="EAGAIN"||t.code==="EBUSY")&&!this.retryEAGAIN(t,e.length,this._len-e.length))throw t;hhr(Y0t)}}try{lS.fsyncSync(this.fd)}catch{}}function KWa(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift([this._writingBuf]),this._writingBuf=H0t);let e=H0t;for(;this._bufs.length||e.length;){e.length<=0&&(e=WBi(this._bufs[0],this._lens[0]));try{let t=lS.writeSync(this.fd,e);e=e.subarray(t),this._len=Math.max(this._len-t,0),e.length<=0&&(this._bufs.shift(),this._lens.shift())}catch(t){if((t.code==="EAGAIN"||t.code==="EBUSY")&&!this.retryEAGAIN(t,e.length,this._len-e.length))throw t;hhr(Y0t)}}}E5.prototype.destroy=function(){this.destroyed||X0t(this)};function jWa(){let e=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf||this._bufs.shift()||"",this.sync)try{let t=lS.writeSync(this.fd,this._writingBuf,"utf8");e(null,t)}catch(t){e(t)}else lS.write(this.fd,this._writingBuf,"utf8",e)}function zWa(){let e=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf.length?this._writingBuf:WBi(this._bufs.shift(),this._lens.shift()),this.sync)try{let t=lS.writeSync(this.fd,this._writingBuf);e(null,t)}catch(t){e(t)}else lS.write(this.fd,this._writingBuf,e)}function X0t(e){if(e.fd===-1){e.once("ready",X0t.bind(null,e));return}e.destroyed=!0,e._bufs=[],e._lens=[],lS.fsync(e.fd,t);function t(){e.fd!==1&&e.fd!==2?lS.close(e.fd,r):r()}function r(s){if(s){e.emit("error",s);return}e._ending&&!e._writing&&e.emit("finish"),e.emit("close")}}E5.SonicBoom=E5;E5.default=E5;OBi.exports=E5});var UBi=z((fRl,JBi)=>{"use strict";var B5={exit:[],beforeExit:[]},QBi={exit:e3a,beforeExit:t3a},_we;function qWa(){_we===void 0&&(_we=new FinalizationRegistry(r3a))}function $Wa(e){B5[e].length>0||process.on(e,QBi[e])}function YBi(e){B5[e].length>0||(process.removeListener(e,QBi[e]),B5.exit.length===0&&B5.beforeExit.length===0&&(_we=void 0))}function e3a(){HBi("exit")}function t3a(){HBi("beforeExit")}function HBi(e){for(let t of B5[e]){let r=t.deref(),s=t.fn;r!==void 0&&s(r,e)}B5[e]=[]}function r3a(e){for(let t of["exit","beforeExit"]){let r=B5[t].indexOf(e);B5[t].splice(r,r+1),YBi(t)}}function XBi(e,t,r){if(t===void 0)throw new Error("the object can't be undefined");$Wa(e);let s=new WeakRef(t);s.fn=r,qWa(),_we.register(t,s),B5[e].push(s)}function n3a(e,t){XBi("exit",e,t)}function i3a(e,t){XBi("beforeExit",e,t)}function s3a(e){if(_we!==void 0){_we.unregister(e);for(let t of["exit","beforeExit"])B5[t]=B5[t].filter(r=>{let s=r.deref();return s&&s!==e}),YBi(t)}}JBi.exports={register:n3a,registerBeforeExit:i3a,unregister:s3a}});var ivi=z((Bhr,vhr)=>{(function(e,t){typeof Bhr=="object"&&typeof vhr<"u"?vhr.exports=t():typeof define=="function"&&define.amd?define(t):(e=typeof globalThis<"u"?globalThis:e||self,e.uniqolor=t())})(Bhr,function(){"use strict";function e(Te,ke){var x=Te==null?null:typeof Symbol<"u"&&Te[Symbol.iterator]||Te["@@iterator"];if(x!=null){var et,Ue,Je,Xe,ft=[],Gt=!0,er=!1;try{if(Je=(x=x.call(Te)).next,ke===0){if(Object(x)!==x)return;Gt=!1}else for(;!(Gt=(et=Je.call(x)).done)&&(ft.push(et.value),ft.length!==ke);Gt=!0);}catch(Ur){er=!0,Ue=Ur}finally{try{if(!Gt&&x.return!=null&&(Xe=x.return(),Object(Xe)!==Xe))return}finally{if(er)throw Ue}}return ft}}function t(Te,ke){return a(Te)||e(Te,ke)||g(Te,ke)||m()}function r(Te){return s(Te)||o(Te)||g(Te)||f()}function s(Te){if(Array.isArray(Te))return p(Te)}function a(Te){if(Array.isArray(Te))return Te}function o(Te){if(typeof Symbol<"u"&&Te[Symbol.iterator]!=null||Te["@@iterator"]!=null)return Array.from(Te)}function g(Te,ke){if(Te){if(typeof Te=="string")return p(Te,ke);var x=Object.prototype.toString.call(Te).slice(8,-1);if(x==="Object"&&Te.constructor&&(x=Te.constructor.name),x==="Map"||x==="Set")return Array.from(Te);if(x==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(x))return p(Te,ke)}}function p(Te,ke){(ke==null||ke>Te.length)&&(ke=Te.length);for(var x=0,et=new Array(ke);xt.trim()).join(" ")};ffi.O=function(e){return this.inspectOpts.colors=this.useColors,Tht.inspect(e,this.inspectOpts)}});var ZIr=z((BBl,FIr)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?FIr.exports=pfi():FIr.exports=Ifi()});var mfi=z((vBl,Cfi)=>{var{Transform:j2a}=xt("stream"),LIr=class extends j2a{constructor(t={}){super(t),this.host=t.host||"localhost",this.replaced=!1}_transform(t,r,s){s(null,this.replaced?t:t.toString().replace(/(\r\n[Hh]ost: )\S+/,(a,o)=>(this.replaced=!0,o+this.host)))}};Cfi.exports=LIr});var yfi=z((wBl,_fi)=>{var{EventEmitter:z2a}=xt("events"),cK=ZIr()("localtunnel:client"),VIr=xt("fs"),hfi=xt("net"),q2a=xt("tls"),$2a=mfi();_fi.exports=class extends z2a{constructor(t={}){super(t),this.opts=t}open(){let t=this.opts,r=t.remote_ip||t.remote_host,s=t.remote_port,a=t.local_host||"localhost",o=t.local_port,g=t.local_https?"https":"http",p=t.allow_invalid_cert;cK("establishing tunnel %s://%s:%s <> %s:%s",g,a,o,r,s);let f=hfi.connect({host:r,port:s});f.setKeepAlive(!0),f.on("error",y=>{cK("got remote connection error",y.message),y.code==="ECONNREFUSED"&&this.emit("error",new Error(`connection refused: ${r}:${s} (check your firewall settings)`)),f.end()});let m=()=>{if(f.destroyed){cK("remote destroyed"),this.emit("dead");return}cK("connecting locally to %s://%s:%d",g,a,o),f.pause(),p&&cK("allowing invalid certificates");let y=()=>p?{rejectUnauthorized:!1}:{cert:VIr.readFileSync(t.local_cert),key:VIr.readFileSync(t.local_key),ca:t.local_ca?[VIr.readFileSync(t.local_ca)]:void 0},B=t.local_https?q2a.connect({host:a,port:o,...y()}):hfi.connect({host:a,port:o}),v=()=>{cK("remote close"),this.emit("dead"),B.end()};f.once("close",v),B.once("error",k=>{if(cK("local error %s",k.message),B.end(),f.removeListener("close",v),k.code!=="ECONNREFUSED")return f.end();setTimeout(m,1e3)}),B.once("connect",()=>{cK("connected locally"),f.resume();let k=f;t.local_host&&(cK("transform Host header to %s",t.local_host),k=f.pipe(new $2a({host:t.local_host}))),k.pipe(B).pipe(f),B.once("close",T=>{cK("local connection closed [%s]",T)})})};f.on("data",y=>{let B=y.toString().match(/^(\w+) (\S+)/);B&&this.emit("request",{method:B[1],path:B[2]})}),f.once("connect",()=>{this.emit("open",f),m()})}}});var Bfi=z((NBl,Efi)=>{var{parse:eBa}=xt("url"),{EventEmitter:bfi}=xt("events"),tBa=ufi(),wHe=ZIr()("localtunnel:client"),rBa=yfi();Efi.exports=class extends bfi{constructor(t={}){super(t),this.opts=t,this.closed=!1,this.opts.host||(this.opts.host="https://localtunnel.me")}_getInfo(t){let{id:r,ip:s,port:a,url:o,cached_url:g,max_conn_count:p}=t,{host:f,port:m,local_host:y}=this.opts,{local_https:B,local_cert:v,local_key:k,local_ca:T,allow_invalid_cert:O}=this.opts;return{name:r,url:o,cached_url:g,max_conn:p||1,remote_host:eBa(f).hostname,remote_ip:s,remote_port:a,local_port:m,local_host:y,local_https:B,local_cert:v,local_key:k,local_ca:T,allow_invalid_cert:O}}_init(t){let r=this.opts,s=this._getInfo.bind(this),a={responseType:"json"},o=`${r.host}/`,g=r.subdomain,p=o+(g||"?new");(function f(){tBa.get(p,a).then(m=>{let y=m.data;if(wHe("got tunnel information",m.data),m.status!==200){let B=new Error(y&&y.message||"localtunnel server returned an error, please try again");return t(B)}t(null,s(y))}).catch(m=>(wHe(`tunnel server offline: ${m.message}, retry 1s`),setTimeout(f,1e3)))})()}_establish(t){this.setMaxListeners(t.max_conn+(bfi.defaultMaxListeners||10)),this.tunnelCluster=new rBa(t),this.tunnelCluster.once("open",()=>{this.emit("url",t.url)}),this.tunnelCluster.on("error",s=>{wHe("got socket error",s.message),this.emit("error",s)});let r=0;this.tunnelCluster.on("open",s=>{r++,wHe("tunnel open [total: %d]",r);let a=()=>{s.destroy()};if(this.closed)return a();this.once("close",a),s.once("close",()=>{this.removeListener("close",a)})}),this.tunnelCluster.on("dead",()=>{r--,wHe("tunnel dead [total: %d]",r),!this.closed&&this.tunnelCluster.open()}),this.tunnelCluster.on("request",s=>{this.emit("request",s)});for(let s=0;s{if(r)return t(r);this.clientId=s.name,this.url=s.url,s.cached_url&&(this.cachedUrl=s.cached_url),this._establish(s),t()})}close(){this.closed=!0,this.emit("close")}}});var Sfi=z((RBl,vfi)=>{var nBa=Bfi();vfi.exports=function(t,r,s){let a=typeof t=="object"?t:{...r,port:t},o=typeof t=="object"?r:s,g=new nBa(a);return o?(g.open(p=>p?o(p):o(null,g)),g):new Promise((p,f)=>g.open(m=>m?f(m):p(g)))}});var Hfi=z(Mfi=>{"use strict";Object.defineProperty(Mfi,"__esModule",{value:!0})});var Xfi=z(Yfi=>{"use strict";Object.defineProperty(Yfi,"__esModule",{value:!0})});var Jfi=z(xHe=>{"use strict";Object.defineProperty(xHe,"__esModule",{value:!0});xHe.SeverityNumber=void 0;var ABa;(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.TRACE=1]="TRACE",e[e.TRACE2=2]="TRACE2",e[e.TRACE3=3]="TRACE3",e[e.TRACE4=4]="TRACE4",e[e.DEBUG=5]="DEBUG",e[e.DEBUG2=6]="DEBUG2",e[e.DEBUG3=7]="DEBUG3",e[e.DEBUG4=8]="DEBUG4",e[e.INFO=9]="INFO",e[e.INFO2=10]="INFO2",e[e.INFO3=11]="INFO3",e[e.INFO4=12]="INFO4",e[e.WARN=13]="WARN",e[e.WARN2=14]="WARN2",e[e.WARN3=15]="WARN3",e[e.WARN4=16]="WARN4",e[e.ERROR=17]="ERROR",e[e.ERROR2=18]="ERROR2",e[e.ERROR3=19]="ERROR3",e[e.ERROR4=20]="ERROR4",e[e.FATAL=21]="FATAL",e[e.FATAL2=22]="FATAL2",e[e.FATAL3=23]="FATAL3",e[e.FATAL4=24]="FATAL4"})(ABa=xHe.SeverityNumber||(xHe.SeverityNumber={}))});var Kfi=z(Ufi=>{"use strict";Object.defineProperty(Ufi,"__esModule",{value:!0})});var MIr=z(ewe=>{"use strict";Object.defineProperty(ewe,"__esModule",{value:!0});ewe.NOOP_LOGGER=ewe.NoopLogger=void 0;var Ght=class{emit(t){}};ewe.NoopLogger=Ght;ewe.NOOP_LOGGER=new Ght});var HIr=z(twe=>{"use strict";Object.defineProperty(twe,"__esModule",{value:!0});twe.NOOP_LOGGER_PROVIDER=twe.NoopLoggerProvider=void 0;var dBa=MIr(),Fht=class{getLogger(t,r,s){return new dBa.NoopLogger}};twe.NoopLoggerProvider=Fht;twe.NOOP_LOGGER_PROVIDER=new Fht});var jfi=z(Zht=>{"use strict";Object.defineProperty(Zht,"__esModule",{value:!0});Zht._globalThis=void 0;Zht._globalThis=typeof globalThis=="object"?globalThis:global});var zfi=z(nIe=>{"use strict";var pBa=nIe&&nIe.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),fBa=nIe&&nIe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&pBa(t,e,r)};Object.defineProperty(nIe,"__esModule",{value:!0});fBa(jfi(),nIe)});var qfi=z(iIe=>{"use strict";var IBa=iIe&&iIe.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),CBa=iIe&&iIe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&IBa(t,e,r)};Object.defineProperty(iIe,"__esModule",{value:!0});CBa(zfi(),iIe)});var $fi=z(lK=>{"use strict";Object.defineProperty(lK,"__esModule",{value:!0});lK.API_BACKWARDS_COMPATIBILITY_VERSION=lK.makeGetter=lK._global=lK.GLOBAL_LOGS_API_KEY=void 0;var mBa=qfi();lK.GLOBAL_LOGS_API_KEY=Symbol.for("io.opentelemetry.js.api.logs");lK._global=mBa._globalThis;function hBa(e,t,r){return s=>s===e?t:r}lK.makeGetter=hBa;lK.API_BACKWARDS_COMPATIBILITY_VERSION=1});var tIi=z(Lht=>{"use strict";Object.defineProperty(Lht,"__esModule",{value:!0});Lht.LogsAPI=void 0;var FQ=$fi(),eIi=HIr(),YIr=class e{constructor(){}static getInstance(){return this._instance||(this._instance=new e),this._instance}setGlobalLoggerProvider(t){return FQ._global[FQ.GLOBAL_LOGS_API_KEY]?this.getLoggerProvider():(FQ._global[FQ.GLOBAL_LOGS_API_KEY]=(0,FQ.makeGetter)(FQ.API_BACKWARDS_COMPATIBILITY_VERSION,t,eIi.NOOP_LOGGER_PROVIDER),t)}getLoggerProvider(){var t,r;return(r=(t=FQ._global[FQ.GLOBAL_LOGS_API_KEY])===null||t===void 0?void 0:t.call(FQ._global,FQ.API_BACKWARDS_COMPATIBILITY_VERSION))!==null&&r!==void 0?r:eIi.NOOP_LOGGER_PROVIDER}getLogger(t,r,s){return this.getLoggerProvider().getLogger(t,r,s)}disable(){delete FQ._global[FQ.GLOBAL_LOGS_API_KEY]}};Lht.LogsAPI=YIr});var nwe=z(m9=>{"use strict";var _Ba=m9&&m9.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),rwe=m9&&m9.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&_Ba(t,e,r)};Object.defineProperty(m9,"__esModule",{value:!0});m9.logs=void 0;rwe(Hfi(),m9);rwe(Xfi(),m9);rwe(Jfi(),m9);rwe(Kfi(),m9);rwe(MIr(),m9);rwe(HIr(),m9);var yBa=tIi();m9.logs=yBa.LogsAPI.getInstance()});var rIi,nIi=cc(()=>{rIi=typeof globalThis=="object"?globalThis:global});var iIi=cc(()=>{nIi()});var sIi=cc(()=>{iIi()});var lq,XIr=cc(()=>{lq="1.9.0"});function bBa(e){var t=new Set([e]),r=new Set,s=e.match(oIi);if(!s)return function(){return!1};var a={major:+s[1],minor:+s[2],patch:+s[3],prerelease:s[4]};if(a.prerelease!=null)return function(f){return f===e};function o(p){return r.add(p),!1}function g(p){return t.add(p),!0}return function(f){if(t.has(f))return!0;if(r.has(f))return!1;var m=f.match(oIi);if(!m)return o(f);var y={major:+m[1],minor:+m[2],patch:+m[3],prerelease:m[4]};return y.prerelease!=null||a.major!==y.major?o(f):a.major===0?a.minor===y.minor&&a.patch<=y.patch?g(f):o(f):a.minor<=y.minor?g(f):o(f)}}var oIi,aIi,cIi=cc(()=>{XIr();oIi=/^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;aIi=bBa(lq)});function uK(e,t,r,s){var a;s===void 0&&(s=!1);var o=GHe[kHe]=(a=GHe[kHe])!==null&&a!==void 0?a:{version:lq};if(!s&&o[e]){var g=new Error("@opentelemetry/api: Attempted duplicate registration of API: "+e);return r.error(g.stack||g.message),!1}if(o.version!==lq){var g=new Error("@opentelemetry/api: Registration of version v"+o.version+" for "+e+" does not match previously registered API v"+lq);return r.error(g.stack||g.message),!1}return o[e]=t,r.debug("@opentelemetry/api: Registered a global for "+e+" v"+lq+"."),!0}function s3(e){var t,r,s=(t=GHe[kHe])===null||t===void 0?void 0:t.version;if(!(!s||!aIi(s)))return(r=GHe[kHe])===null||r===void 0?void 0:r[e]}function gK(e,t){t.debug("@opentelemetry/api: Unregistering a global for "+e+" v"+lq+".");var r=GHe[kHe];r&&delete r[e]}var EBa,kHe,GHe,sIe=cc(()=>{sIi();XIr();cIi();EBa=lq.split(".")[0],kHe=Symbol.for("opentelemetry.js.api."+EBa),GHe=rIi});function FHe(e,t,r){var s=s3("diag");if(s)return r.unshift(t),s[e].apply(s,vBa([],BBa(r),!1))}var BBa,vBa,lIi,uIi=cc(()=>{sIe();BBa=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},vBa=function(e,t,r){if(r||arguments.length===2)for(var s=0,a=t.length,o;s{(function(e){e[e.NONE=0]="NONE",e[e.ERROR=30]="ERROR",e[e.WARN=50]="WARN",e[e.INFO=60]="INFO",e[e.DEBUG=70]="DEBUG",e[e.VERBOSE=80]="VERBOSE",e[e.ALL=9999]="ALL"})(rx||(rx={}))});function gIi(e,t){erx.ALL&&(e=rx.ALL),t=t||{};function r(s,a){var o=t[s];return typeof o=="function"&&e>=a?o.bind(t):function(){}}return{error:r("error",rx.ERROR),warn:r("warn",rx.WARN),info:r("info",rx.INFO),debug:r("debug",rx.DEBUG),verbose:r("verbose",rx.VERBOSE)}}var AIi=cc(()=>{Vht()});var SBa,wBa,TBa,Hk,oIe=cc(()=>{uIi();AIi();Vht();sIe();SBa=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},wBa=function(e,t,r){if(r||arguments.length===2)for(var s=0,a=t.length,o;s";y.warn("Current logger will be overwritten from "+v),B.warn("Current logger will overwrite one already registered from "+v)}return uK("diag",B,r,!0)};r.setLogger=s,r.disable=function(){gK(TBa,r)},r.createComponentLogger=function(a){return new lIi(a)},r.verbose=t("verbose"),r.debug=t("debug"),r.info=t("info"),r.warn=t("warn"),r.error=t("error")}return e.instance=function(){return this._instance||(this._instance=new e),this._instance},e}()});var NBa,RBa,dIi,pIi=cc(()=>{NBa=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},RBa=function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],s=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&s>=e.length&&(e=void 0),{value:e&&e[s++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},dIi=function(){function e(t){this._entries=t?new Map(t):new Map}return e.prototype.getEntry=function(t){var r=this._entries.get(t);if(r)return Object.assign({},r)},e.prototype.getAllEntries=function(){return Array.from(this._entries.entries()).map(function(t){var r=NBa(t,2),s=r[0],a=r[1];return[s,a]})},e.prototype.setEntry=function(t,r){var s=new e(this._entries);return s._entries.set(t,r),s},e.prototype.removeEntry=function(t){var r=new e(this._entries);return r._entries.delete(t),r},e.prototype.removeEntries=function(){for(var t,r,s=[],a=0;a{fIi=Symbol("BaggageEntryMetadata")});function CIi(e){return e===void 0&&(e={}),new dIi(new Map(Object.entries(e)))}function mIi(e){return typeof e!="string"&&(DBa.error("Cannot create baggage metadata from unknown type: "+typeof e),e=""),{__TYPE__:fIi,toString:function(){return e}}}var DBa,JIr=cc(()=>{oIe();pIi();IIi();DBa=Hk.instance()});function iwe(e){return Symbol.for(e)}var xBa,Wht,ZHe=cc(()=>{xBa=function(){function e(t){var r=this;r._currentContext=t?new Map(t):new Map,r.getValue=function(s){return r._currentContext.get(s)},r.setValue=function(s,a){var o=new e(r._currentContext);return o._currentContext.set(s,a),o},r.deleteValue=function(s){var a=new e(r._currentContext);return a._currentContext.delete(s),a}}return e}(),Wht=new xBa});var UIr,hIi,_Ii=cc(()=>{UIr=[{n:"error",c:"error"},{n:"warn",c:"warn"},{n:"info",c:"info"},{n:"debug",c:"debug"},{n:"verbose",c:"trace"}],hIi=function(){function e(){function t(s){return function(){for(var a=[],o=0;o{aIe=function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}(),kBa=function(){function e(){}return e.prototype.createGauge=function(t,r){return QBa},e.prototype.createHistogram=function(t,r){return MBa},e.prototype.createCounter=function(t,r){return OBa},e.prototype.createUpDownCounter=function(t,r){return HBa},e.prototype.createObservableGauge=function(t,r){return XBa},e.prototype.createObservableCounter=function(t,r){return YBa},e.prototype.createObservableUpDownCounter=function(t,r){return JBa},e.prototype.addBatchObservableCallback=function(t,r){},e.prototype.removeBatchObservableCallback=function(t){},e}(),Pht=function(){function e(){}return e}(),GBa=function(e){aIe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.add=function(r,s){},t}(Pht),FBa=function(e){aIe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.add=function(r,s){},t}(Pht),ZBa=function(e){aIe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.record=function(r,s){},t}(Pht),LBa=function(e){aIe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.record=function(r,s){},t}(Pht),KIr=function(){function e(){}return e.prototype.addCallback=function(t){},e.prototype.removeCallback=function(t){},e}(),VBa=function(e){aIe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(KIr),WBa=function(e){aIe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(KIr),PBa=function(e){aIe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(KIr),jIr=new kBa,OBa=new GBa,QBa=new ZBa,MBa=new LBa,HBa=new FBa,YBa=new VBa,XBa=new WBa,JBa=new PBa});var Oht,bIi=cc(()=>{(function(e){e[e.INT=0]="INT",e[e.DOUBLE=1]="DOUBLE"})(Oht||(Oht={}))});var Qht,Mht,qIr=cc(()=>{Qht={get:function(e,t){if(e!=null)return e[t]},keys:function(e){return e==null?[]:Object.keys(e)}},Mht={set:function(e,t,r){e!=null&&(e[t]=r)}}});var UBa,KBa,EIi,BIi=cc(()=>{ZHe();UBa=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},KBa=function(e,t,r){if(r||arguments.length===2)for(var s=0,a=t.length,o;s{BIi();sIe();oIe();jBa=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},zBa=function(e,t,r){if(r||arguments.length===2)for(var s=0,a=t.length,o;s{(function(e){e[e.NONE=0]="NONE",e[e.SAMPLED=1]="SAMPLED"})(swe||(swe={}))});var VHe,WHe,Hht,Yht=cc(()=>{eCr();VHe="0000000000000000",WHe="00000000000000000000000000000000",Hht={traceId:WHe,spanId:VHe,traceFlags:swe.NONE}});var ioe,Xht=cc(()=>{Yht();ioe=function(){function e(t){t===void 0&&(t=Hht),this._spanContext=t}return e.prototype.spanContext=function(){return this._spanContext},e.prototype.setAttribute=function(t,r){return this},e.prototype.setAttributes=function(t){return this},e.prototype.addEvent=function(t,r){return this},e.prototype.addLink=function(t){return this},e.prototype.addLinks=function(t){return this},e.prototype.setStatus=function(t){return this},e.prototype.updateName=function(t){return this},e.prototype.end=function(t){},e.prototype.isRecording=function(){return!1},e.prototype.recordException=function(t,r){},e}()});function Jht(e){return e.getValue(tCr)||void 0}function vIi(){return Jht(noe.getInstance().active())}function PHe(e,t){return e.setValue(tCr,t)}function SIi(e){return e.deleteValue(tCr)}function wIi(e,t){return PHe(e,new ioe(t))}function Uht(e){var t;return(t=Jht(e))===null||t===void 0?void 0:t.spanContext()}var tCr,rCr=cc(()=>{ZHe();Xht();LHe();tCr=iwe("OpenTelemetry Context Key SPAN")});function nCr(e){return $Ba.test(e)&&e!==WHe}function iCr(e){return eva.test(e)&&e!==VHe}function owe(e){return nCr(e.traceId)&&iCr(e.spanId)}function TIi(e){return new ioe(e)}var $Ba,eva,Kht=cc(()=>{Yht();Xht();$Ba=/^([0-9a-f]{32})$/i,eva=/^[0-9a-f]{16}$/i});function tva(e){return typeof e=="object"&&typeof e.spanId=="string"&&typeof e.traceId=="string"&&typeof e.traceFlags=="number"}var sCr,jht,oCr=cc(()=>{LHe();rCr();Xht();Kht();sCr=noe.getInstance(),jht=function(){function e(){}return e.prototype.startSpan=function(t,r,s){s===void 0&&(s=sCr.active());var a=!!r?.root;if(a)return new ioe;var o=s&&Uht(s);return tva(o)&&owe(o)?new ioe(o):new ioe},e.prototype.startActiveSpan=function(t,r,s,a){var o,g,p;if(!(arguments.length<2)){arguments.length===2?p=r:arguments.length===3?(o=r,p=s):(o=r,g=s,p=a);var f=g??sCr.active(),m=this.startSpan(t,o,f),y=PHe(f,m);return sCr.with(y,p,void 0,m)}},e}()});var rva,zht,aCr=cc(()=>{oCr();rva=new jht,zht=function(){function e(t,r,s,a){this._provider=t,this.name=r,this.version=s,this.options=a}return e.prototype.startSpan=function(t,r,s){return this._getTracer().startSpan(t,r,s)},e.prototype.startActiveSpan=function(t,r,s,a){var o=this._getTracer();return Reflect.apply(o.startActiveSpan,o,arguments)},e.prototype._getTracer=function(){if(this._delegate)return this._delegate;var t=this._provider.getDelegateTracer(this.name,this.version,this.options);return t?(this._delegate=t,this._delegate):rva},e}()});var NIi,RIi=cc(()=>{oCr();NIi=function(){function e(){}return e.prototype.getTracer=function(t,r,s){return new jht},e}()});var nva,OHe,cCr=cc(()=>{aCr();RIi();nva=new NIi,OHe=function(){function e(){}return e.prototype.getTracer=function(t,r,s){var a;return(a=this.getDelegateTracer(t,r,s))!==null&&a!==void 0?a:new zht(this,t,r,s)},e.prototype.getDelegate=function(){var t;return(t=this._delegate)!==null&&t!==void 0?t:nva},e.prototype.setDelegate=function(t){this._delegate=t},e.prototype.getDelegateTracer=function(t,r,s){var a;return(a=this._delegate)===null||a===void 0?void 0:a.getTracer(t,r,s)},e}()});var qht,DIi=cc(()=>{(function(e){e[e.NOT_RECORD=0]="NOT_RECORD",e[e.RECORD=1]="RECORD",e[e.RECORD_AND_SAMPLED=2]="RECORD_AND_SAMPLED"})(qht||(qht={}))});var $ht,xIi=cc(()=>{(function(e){e[e.INTERNAL=0]="INTERNAL",e[e.SERVER=1]="SERVER",e[e.CLIENT=2]="CLIENT",e[e.PRODUCER=3]="PRODUCER",e[e.CONSUMER=4]="CONSUMER"})($ht||($ht={}))});var e_t,kIi=cc(()=>{(function(e){e[e.UNSET=0]="UNSET",e[e.OK=1]="OK",e[e.ERROR=2]="ERROR"})(e_t||(e_t={}))});function GIi(e){return ova.test(e)}function FIi(e){return ava.test(e)&&!cva.test(e)}var lCr,iva,sva,ova,ava,cva,ZIi=cc(()=>{lCr="[_0-9a-z-*/]",iva="[a-z]"+lCr+"{0,255}",sva="[a-z0-9]"+lCr+"{0,240}@[a-z]"+lCr+"{0,13}",ova=new RegExp("^(?:"+iva+"|"+sva+")$"),ava=/^[ -~]{0,255}[!-~]$/,cva=/,|=/});var LIi,lva,VIi,WIi,PIi,OIi=cc(()=>{ZIi();LIi=32,lva=512,VIi=",",WIi="=",PIi=function(){function e(t){this._internalState=new Map,t&&this._parse(t)}return e.prototype.set=function(t,r){var s=this._clone();return s._internalState.has(t)&&s._internalState.delete(t),s._internalState.set(t,r),s},e.prototype.unset=function(t){var r=this._clone();return r._internalState.delete(t),r},e.prototype.get=function(t){return this._internalState.get(t)},e.prototype.serialize=function(){var t=this;return this._keys().reduce(function(r,s){return r.push(s+WIi+t.get(s)),r},[]).join(VIi)},e.prototype._parse=function(t){t.length>lva||(this._internalState=t.split(VIi).reverse().reduce(function(r,s){var a=s.trim(),o=a.indexOf(WIi);if(o!==-1){var g=a.slice(0,o),p=a.slice(o+1,s.length);GIi(g)&&FIi(p)&&r.set(g,p)}return r},new Map),this._internalState.size>LIi&&(this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,LIi))))},e.prototype._keys=function(){return Array.from(this._internalState.keys()).reverse()},e.prototype._clone=function(){var t=new e;return t._internalState=new Map(this._internalState),t},e}()});function QIi(e){return new PIi(e)}var MIi=cc(()=>{OIi()});var uCr,HIi=cc(()=>{LHe();uCr=noe.getInstance()});var gCr,YIi=cc(()=>{oIe();gCr=Hk.instance()});var uva,XIi,JIi=cc(()=>{zIr();uva=function(){function e(){}return e.prototype.getMeter=function(t,r,s){return jIr},e}(),XIi=new uva});var ACr,UIi,KIi=cc(()=>{JIi();sIe();oIe();ACr="metrics",UIi=function(){function e(){}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalMeterProvider=function(t){return uK(ACr,t,Hk.instance())},e.prototype.getMeterProvider=function(){return s3(ACr)||XIi},e.prototype.getMeter=function(t,r,s){return this.getMeterProvider().getMeter(t,r,s)},e.prototype.disable=function(){gK(ACr,Hk.instance())},e}()});var dCr,jIi=cc(()=>{KIi();dCr=UIi.getInstance()});var zIi,qIi=cc(()=>{zIi=function(){function e(){}return e.prototype.inject=function(t,r){},e.prototype.extract=function(t,r){return t},e.prototype.fields=function(){return[]},e}()});function fCr(e){return e.getValue(pCr)||void 0}function $Ii(){return fCr(noe.getInstance().active())}function eCi(e,t){return e.setValue(pCr,t)}function tCi(e){return e.deleteValue(pCr)}var pCr,rCi=cc(()=>{LHe();ZHe();pCr=iwe("OpenTelemetry Baggage Key")});var ICr,gva,nCi,iCi=cc(()=>{sIe();qIi();qIr();rCi();JIr();oIe();ICr="propagation",gva=new zIi,nCi=function(){function e(){this.createBaggage=CIi,this.getBaggage=fCr,this.getActiveBaggage=$Ii,this.setBaggage=eCi,this.deleteBaggage=tCi}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalPropagator=function(t){return uK(ICr,t,Hk.instance())},e.prototype.inject=function(t,r,s){return s===void 0&&(s=Mht),this._getGlobalPropagator().inject(t,r,s)},e.prototype.extract=function(t,r,s){return s===void 0&&(s=Qht),this._getGlobalPropagator().extract(t,r,s)},e.prototype.fields=function(){return this._getGlobalPropagator().fields()},e.prototype.disable=function(){gK(ICr,Hk.instance())},e.prototype._getGlobalPropagator=function(){return s3(ICr)||gva},e}()});var CCr,sCi=cc(()=>{iCi();CCr=nCi.getInstance()});var mCr,oCi,aCi=cc(()=>{sIe();cCr();Kht();rCr();oIe();mCr="trace",oCi=function(){function e(){this._proxyTracerProvider=new OHe,this.wrapSpanContext=TIi,this.isSpanContextValid=owe,this.deleteSpan=SIi,this.getSpan=Jht,this.getActiveSpan=vIi,this.getSpanContext=Uht,this.setSpan=PHe,this.setSpanContext=wIi}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalTracerProvider=function(t){var r=uK(mCr,this._proxyTracerProvider,Hk.instance());return r&&this._proxyTracerProvider.setDelegate(t),r},e.prototype.getTracerProvider=function(){return s3(mCr)||this._proxyTracerProvider},e.prototype.getTracer=function(t,r){return this.getTracerProvider().getTracer(t,r)},e.prototype.disable=function(){gK(mCr,Hk.instance()),this._proxyTracerProvider=new OHe},e}()});var hCr,cCi=cc(()=>{aCi();hCr=oCi.getInstance()});var BI={};zf(BI,{DiagConsoleLogger:()=>hIi,DiagLogLevel:()=>rx,INVALID_SPANID:()=>VHe,INVALID_SPAN_CONTEXT:()=>Hht,INVALID_TRACEID:()=>WHe,ProxyTracer:()=>zht,ProxyTracerProvider:()=>OHe,ROOT_CONTEXT:()=>Wht,SamplingDecision:()=>qht,SpanKind:()=>$ht,SpanStatusCode:()=>e_t,TraceFlags:()=>swe,ValueType:()=>Oht,baggageEntryMetadataFromString:()=>mIi,context:()=>uCr,createContextKey:()=>iwe,createNoopMeter:()=>yIi,createTraceState:()=>QIi,default:()=>Ava,defaultTextMapGetter:()=>Qht,defaultTextMapSetter:()=>Mht,diag:()=>gCr,isSpanContextValid:()=>owe,isValidSpanId:()=>iCr,isValidTraceId:()=>nCr,metrics:()=>dCr,propagation:()=>CCr,trace:()=>hCr});var Ava,vI=cc(()=>{JIr();ZHe();_Ii();Vht();zIr();bIi();qIr();aCr();cCr();DIi();xIi();kIi();eCr();MIi();Kht();Yht();HIi();YIi();jIi();sCi();cCi();Ava={context:uCr,diag:gCr,metrics:dCr,propagation:CCr,trace:hCr}});var lCi=z(R0=>{"use strict";Object.defineProperty(R0,"__esModule",{value:!0});R0.MessageTypeValues=R0.RpcGrpcStatusCodeValues=R0.MessagingOperationValues=R0.MessagingDestinationKindValues=R0.HttpFlavorValues=R0.NetHostConnectionSubtypeValues=R0.NetHostConnectionTypeValues=R0.NetTransportValues=R0.FaasInvokedProviderValues=R0.FaasDocumentOperationValues=R0.FaasTriggerValues=R0.DbCassandraConsistencyLevelValues=R0.DbSystemValues=R0.SemanticAttributes=void 0;R0.SemanticAttributes={AWS_LAMBDA_INVOKED_ARN:"aws.lambda.invoked_arn",DB_SYSTEM:"db.system",DB_CONNECTION_STRING:"db.connection_string",DB_USER:"db.user",DB_JDBC_DRIVER_CLASSNAME:"db.jdbc.driver_classname",DB_NAME:"db.name",DB_STATEMENT:"db.statement",DB_OPERATION:"db.operation",DB_MSSQL_INSTANCE_NAME:"db.mssql.instance_name",DB_CASSANDRA_KEYSPACE:"db.cassandra.keyspace",DB_CASSANDRA_PAGE_SIZE:"db.cassandra.page_size",DB_CASSANDRA_CONSISTENCY_LEVEL:"db.cassandra.consistency_level",DB_CASSANDRA_TABLE:"db.cassandra.table",DB_CASSANDRA_IDEMPOTENCE:"db.cassandra.idempotence",DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT:"db.cassandra.speculative_execution_count",DB_CASSANDRA_COORDINATOR_ID:"db.cassandra.coordinator.id",DB_CASSANDRA_COORDINATOR_DC:"db.cassandra.coordinator.dc",DB_HBASE_NAMESPACE:"db.hbase.namespace",DB_REDIS_DATABASE_INDEX:"db.redis.database_index",DB_MONGODB_COLLECTION:"db.mongodb.collection",DB_SQL_TABLE:"db.sql.table",EXCEPTION_TYPE:"exception.type",EXCEPTION_MESSAGE:"exception.message",EXCEPTION_STACKTRACE:"exception.stacktrace",EXCEPTION_ESCAPED:"exception.escaped",FAAS_TRIGGER:"faas.trigger",FAAS_EXECUTION:"faas.execution",FAAS_DOCUMENT_COLLECTION:"faas.document.collection",FAAS_DOCUMENT_OPERATION:"faas.document.operation",FAAS_DOCUMENT_TIME:"faas.document.time",FAAS_DOCUMENT_NAME:"faas.document.name",FAAS_TIME:"faas.time",FAAS_CRON:"faas.cron",FAAS_COLDSTART:"faas.coldstart",FAAS_INVOKED_NAME:"faas.invoked_name",FAAS_INVOKED_PROVIDER:"faas.invoked_provider",FAAS_INVOKED_REGION:"faas.invoked_region",NET_TRANSPORT:"net.transport",NET_PEER_IP:"net.peer.ip",NET_PEER_PORT:"net.peer.port",NET_PEER_NAME:"net.peer.name",NET_HOST_IP:"net.host.ip",NET_HOST_PORT:"net.host.port",NET_HOST_NAME:"net.host.name",NET_HOST_CONNECTION_TYPE:"net.host.connection.type",NET_HOST_CONNECTION_SUBTYPE:"net.host.connection.subtype",NET_HOST_CARRIER_NAME:"net.host.carrier.name",NET_HOST_CARRIER_MCC:"net.host.carrier.mcc",NET_HOST_CARRIER_MNC:"net.host.carrier.mnc",NET_HOST_CARRIER_ICC:"net.host.carrier.icc",PEER_SERVICE:"peer.service",ENDUSER_ID:"enduser.id",ENDUSER_ROLE:"enduser.role",ENDUSER_SCOPE:"enduser.scope",THREAD_ID:"thread.id",THREAD_NAME:"thread.name",CODE_FUNCTION:"code.function",CODE_NAMESPACE:"code.namespace",CODE_FILEPATH:"code.filepath",CODE_LINENO:"code.lineno",HTTP_METHOD:"http.method",HTTP_URL:"http.url",HTTP_TARGET:"http.target",HTTP_HOST:"http.host",HTTP_SCHEME:"http.scheme",HTTP_STATUS_CODE:"http.status_code",HTTP_FLAVOR:"http.flavor",HTTP_USER_AGENT:"http.user_agent",HTTP_REQUEST_CONTENT_LENGTH:"http.request_content_length",HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED:"http.request_content_length_uncompressed",HTTP_RESPONSE_CONTENT_LENGTH:"http.response_content_length",HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED:"http.response_content_length_uncompressed",HTTP_SERVER_NAME:"http.server_name",HTTP_ROUTE:"http.route",HTTP_CLIENT_IP:"http.client_ip",AWS_DYNAMODB_TABLE_NAMES:"aws.dynamodb.table_names",AWS_DYNAMODB_CONSUMED_CAPACITY:"aws.dynamodb.consumed_capacity",AWS_DYNAMODB_ITEM_COLLECTION_METRICS:"aws.dynamodb.item_collection_metrics",AWS_DYNAMODB_PROVISIONED_READ_CAPACITY:"aws.dynamodb.provisioned_read_capacity",AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY:"aws.dynamodb.provisioned_write_capacity",AWS_DYNAMODB_CONSISTENT_READ:"aws.dynamodb.consistent_read",AWS_DYNAMODB_PROJECTION:"aws.dynamodb.projection",AWS_DYNAMODB_LIMIT:"aws.dynamodb.limit",AWS_DYNAMODB_ATTRIBUTES_TO_GET:"aws.dynamodb.attributes_to_get",AWS_DYNAMODB_INDEX_NAME:"aws.dynamodb.index_name",AWS_DYNAMODB_SELECT:"aws.dynamodb.select",AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES:"aws.dynamodb.global_secondary_indexes",AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES:"aws.dynamodb.local_secondary_indexes",AWS_DYNAMODB_EXCLUSIVE_START_TABLE:"aws.dynamodb.exclusive_start_table",AWS_DYNAMODB_TABLE_COUNT:"aws.dynamodb.table_count",AWS_DYNAMODB_SCAN_FORWARD:"aws.dynamodb.scan_forward",AWS_DYNAMODB_SEGMENT:"aws.dynamodb.segment",AWS_DYNAMODB_TOTAL_SEGMENTS:"aws.dynamodb.total_segments",AWS_DYNAMODB_COUNT:"aws.dynamodb.count",AWS_DYNAMODB_SCANNED_COUNT:"aws.dynamodb.scanned_count",AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS:"aws.dynamodb.attribute_definitions",AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES:"aws.dynamodb.global_secondary_index_updates",MESSAGING_SYSTEM:"messaging.system",MESSAGING_DESTINATION:"messaging.destination",MESSAGING_DESTINATION_KIND:"messaging.destination_kind",MESSAGING_TEMP_DESTINATION:"messaging.temp_destination",MESSAGING_PROTOCOL:"messaging.protocol",MESSAGING_PROTOCOL_VERSION:"messaging.protocol_version",MESSAGING_URL:"messaging.url",MESSAGING_MESSAGE_ID:"messaging.message_id",MESSAGING_CONVERSATION_ID:"messaging.conversation_id",MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES:"messaging.message_payload_size_bytes",MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES:"messaging.message_payload_compressed_size_bytes",MESSAGING_OPERATION:"messaging.operation",MESSAGING_CONSUMER_ID:"messaging.consumer_id",MESSAGING_RABBITMQ_ROUTING_KEY:"messaging.rabbitmq.routing_key",MESSAGING_KAFKA_MESSAGE_KEY:"messaging.kafka.message_key",MESSAGING_KAFKA_CONSUMER_GROUP:"messaging.kafka.consumer_group",MESSAGING_KAFKA_CLIENT_ID:"messaging.kafka.client_id",MESSAGING_KAFKA_PARTITION:"messaging.kafka.partition",MESSAGING_KAFKA_TOMBSTONE:"messaging.kafka.tombstone",RPC_SYSTEM:"rpc.system",RPC_SERVICE:"rpc.service",RPC_METHOD:"rpc.method",RPC_GRPC_STATUS_CODE:"rpc.grpc.status_code",RPC_JSONRPC_VERSION:"rpc.jsonrpc.version",RPC_JSONRPC_REQUEST_ID:"rpc.jsonrpc.request_id",RPC_JSONRPC_ERROR_CODE:"rpc.jsonrpc.error_code",RPC_JSONRPC_ERROR_MESSAGE:"rpc.jsonrpc.error_message",MESSAGE_TYPE:"message.type",MESSAGE_ID:"message.id",MESSAGE_COMPRESSED_SIZE:"message.compressed_size",MESSAGE_UNCOMPRESSED_SIZE:"message.uncompressed_size"};R0.DbSystemValues={OTHER_SQL:"other_sql",MSSQL:"mssql",MYSQL:"mysql",ORACLE:"oracle",DB2:"db2",POSTGRESQL:"postgresql",REDSHIFT:"redshift",HIVE:"hive",CLOUDSCAPE:"cloudscape",HSQLDB:"hsqldb",PROGRESS:"progress",MAXDB:"maxdb",HANADB:"hanadb",INGRES:"ingres",FIRSTSQL:"firstsql",EDB:"edb",CACHE:"cache",ADABAS:"adabas",FIREBIRD:"firebird",DERBY:"derby",FILEMAKER:"filemaker",INFORMIX:"informix",INSTANTDB:"instantdb",INTERBASE:"interbase",MARIADB:"mariadb",NETEZZA:"netezza",PERVASIVE:"pervasive",POINTBASE:"pointbase",SQLITE:"sqlite",SYBASE:"sybase",TERADATA:"teradata",VERTICA:"vertica",H2:"h2",COLDFUSION:"coldfusion",CASSANDRA:"cassandra",HBASE:"hbase",MONGODB:"mongodb",REDIS:"redis",COUCHBASE:"couchbase",COUCHDB:"couchdb",COSMOSDB:"cosmosdb",DYNAMODB:"dynamodb",NEO4J:"neo4j",GEODE:"geode",ELASTICSEARCH:"elasticsearch",MEMCACHED:"memcached",COCKROACHDB:"cockroachdb"};R0.DbCassandraConsistencyLevelValues={ALL:"all",EACH_QUORUM:"each_quorum",QUORUM:"quorum",LOCAL_QUORUM:"local_quorum",ONE:"one",TWO:"two",THREE:"three",LOCAL_ONE:"local_one",ANY:"any",SERIAL:"serial",LOCAL_SERIAL:"local_serial"};R0.FaasTriggerValues={DATASOURCE:"datasource",HTTP:"http",PUBSUB:"pubsub",TIMER:"timer",OTHER:"other"};R0.FaasDocumentOperationValues={INSERT:"insert",EDIT:"edit",DELETE:"delete"};R0.FaasInvokedProviderValues={ALIBABA_CLOUD:"alibaba_cloud",AWS:"aws",AZURE:"azure",GCP:"gcp"};R0.NetTransportValues={IP_TCP:"ip_tcp",IP_UDP:"ip_udp",IP:"ip",UNIX:"unix",PIPE:"pipe",INPROC:"inproc",OTHER:"other"};R0.NetHostConnectionTypeValues={WIFI:"wifi",WIRED:"wired",CELL:"cell",UNAVAILABLE:"unavailable",UNKNOWN:"unknown"};R0.NetHostConnectionSubtypeValues={GPRS:"gprs",EDGE:"edge",UMTS:"umts",CDMA:"cdma",EVDO_0:"evdo_0",EVDO_A:"evdo_a",CDMA2000_1XRTT:"cdma2000_1xrtt",HSDPA:"hsdpa",HSUPA:"hsupa",HSPA:"hspa",IDEN:"iden",EVDO_B:"evdo_b",LTE:"lte",EHRPD:"ehrpd",HSPAP:"hspap",GSM:"gsm",TD_SCDMA:"td_scdma",IWLAN:"iwlan",NR:"nr",NRNSA:"nrnsa",LTE_CA:"lte_ca"};R0.HttpFlavorValues={HTTP_1_0:"1.0",HTTP_1_1:"1.1",HTTP_2_0:"2.0",SPDY:"SPDY",QUIC:"QUIC"};R0.MessagingDestinationKindValues={QUEUE:"queue",TOPIC:"topic"};R0.MessagingOperationValues={RECEIVE:"receive",PROCESS:"process"};R0.RpcGrpcStatusCodeValues={OK:0,CANCELLED:1,UNKNOWN:2,INVALID_ARGUMENT:3,DEADLINE_EXCEEDED:4,NOT_FOUND:5,ALREADY_EXISTS:6,PERMISSION_DENIED:7,RESOURCE_EXHAUSTED:8,FAILED_PRECONDITION:9,ABORTED:10,OUT_OF_RANGE:11,UNIMPLEMENTED:12,INTERNAL:13,UNAVAILABLE:14,DATA_LOSS:15,UNAUTHENTICATED:16};R0.MessageTypeValues={SENT:"SENT",RECEIVED:"RECEIVED"}});var uCi=z(cIe=>{"use strict";var dva=cIe&&cIe.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),pva=cIe&&cIe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&dva(t,e,r)};Object.defineProperty(cIe,"__esModule",{value:!0});pva(lCi(),cIe)});var gCi=z(Yk=>{"use strict";Object.defineProperty(Yk,"__esModule",{value:!0});Yk.TelemetrySdkLanguageValues=Yk.OsTypeValues=Yk.HostArchValues=Yk.AwsEcsLaunchtypeValues=Yk.CloudPlatformValues=Yk.CloudProviderValues=Yk.SemanticResourceAttributes=void 0;Yk.SemanticResourceAttributes={CLOUD_PROVIDER:"cloud.provider",CLOUD_ACCOUNT_ID:"cloud.account.id",CLOUD_REGION:"cloud.region",CLOUD_AVAILABILITY_ZONE:"cloud.availability_zone",CLOUD_PLATFORM:"cloud.platform",AWS_ECS_CONTAINER_ARN:"aws.ecs.container.arn",AWS_ECS_CLUSTER_ARN:"aws.ecs.cluster.arn",AWS_ECS_LAUNCHTYPE:"aws.ecs.launchtype",AWS_ECS_TASK_ARN:"aws.ecs.task.arn",AWS_ECS_TASK_FAMILY:"aws.ecs.task.family",AWS_ECS_TASK_REVISION:"aws.ecs.task.revision",AWS_EKS_CLUSTER_ARN:"aws.eks.cluster.arn",AWS_LOG_GROUP_NAMES:"aws.log.group.names",AWS_LOG_GROUP_ARNS:"aws.log.group.arns",AWS_LOG_STREAM_NAMES:"aws.log.stream.names",AWS_LOG_STREAM_ARNS:"aws.log.stream.arns",CONTAINER_NAME:"container.name",CONTAINER_ID:"container.id",CONTAINER_RUNTIME:"container.runtime",CONTAINER_IMAGE_NAME:"container.image.name",CONTAINER_IMAGE_TAG:"container.image.tag",DEPLOYMENT_ENVIRONMENT:"deployment.environment",DEVICE_ID:"device.id",DEVICE_MODEL_IDENTIFIER:"device.model.identifier",DEVICE_MODEL_NAME:"device.model.name",FAAS_NAME:"faas.name",FAAS_ID:"faas.id",FAAS_VERSION:"faas.version",FAAS_INSTANCE:"faas.instance",FAAS_MAX_MEMORY:"faas.max_memory",HOST_ID:"host.id",HOST_NAME:"host.name",HOST_TYPE:"host.type",HOST_ARCH:"host.arch",HOST_IMAGE_NAME:"host.image.name",HOST_IMAGE_ID:"host.image.id",HOST_IMAGE_VERSION:"host.image.version",K8S_CLUSTER_NAME:"k8s.cluster.name",K8S_NODE_NAME:"k8s.node.name",K8S_NODE_UID:"k8s.node.uid",K8S_NAMESPACE_NAME:"k8s.namespace.name",K8S_POD_UID:"k8s.pod.uid",K8S_POD_NAME:"k8s.pod.name",K8S_CONTAINER_NAME:"k8s.container.name",K8S_REPLICASET_UID:"k8s.replicaset.uid",K8S_REPLICASET_NAME:"k8s.replicaset.name",K8S_DEPLOYMENT_UID:"k8s.deployment.uid",K8S_DEPLOYMENT_NAME:"k8s.deployment.name",K8S_STATEFULSET_UID:"k8s.statefulset.uid",K8S_STATEFULSET_NAME:"k8s.statefulset.name",K8S_DAEMONSET_UID:"k8s.daemonset.uid",K8S_DAEMONSET_NAME:"k8s.daemonset.name",K8S_JOB_UID:"k8s.job.uid",K8S_JOB_NAME:"k8s.job.name",K8S_CRONJOB_UID:"k8s.cronjob.uid",K8S_CRONJOB_NAME:"k8s.cronjob.name",OS_TYPE:"os.type",OS_DESCRIPTION:"os.description",OS_NAME:"os.name",OS_VERSION:"os.version",PROCESS_PID:"process.pid",PROCESS_EXECUTABLE_NAME:"process.executable.name",PROCESS_EXECUTABLE_PATH:"process.executable.path",PROCESS_COMMAND:"process.command",PROCESS_COMMAND_LINE:"process.command_line",PROCESS_COMMAND_ARGS:"process.command_args",PROCESS_OWNER:"process.owner",PROCESS_RUNTIME_NAME:"process.runtime.name",PROCESS_RUNTIME_VERSION:"process.runtime.version",PROCESS_RUNTIME_DESCRIPTION:"process.runtime.description",SERVICE_NAME:"service.name",SERVICE_NAMESPACE:"service.namespace",SERVICE_INSTANCE_ID:"service.instance.id",SERVICE_VERSION:"service.version",TELEMETRY_SDK_NAME:"telemetry.sdk.name",TELEMETRY_SDK_LANGUAGE:"telemetry.sdk.language",TELEMETRY_SDK_VERSION:"telemetry.sdk.version",TELEMETRY_AUTO_VERSION:"telemetry.auto.version",WEBENGINE_NAME:"webengine.name",WEBENGINE_VERSION:"webengine.version",WEBENGINE_DESCRIPTION:"webengine.description"};Yk.CloudProviderValues={ALIBABA_CLOUD:"alibaba_cloud",AWS:"aws",AZURE:"azure",GCP:"gcp"};Yk.CloudPlatformValues={ALIBABA_CLOUD_ECS:"alibaba_cloud_ecs",ALIBABA_CLOUD_FC:"alibaba_cloud_fc",AWS_EC2:"aws_ec2",AWS_ECS:"aws_ecs",AWS_EKS:"aws_eks",AWS_LAMBDA:"aws_lambda",AWS_ELASTIC_BEANSTALK:"aws_elastic_beanstalk",AZURE_VM:"azure_vm",AZURE_CONTAINER_INSTANCES:"azure_container_instances",AZURE_AKS:"azure_aks",AZURE_FUNCTIONS:"azure_functions",AZURE_APP_SERVICE:"azure_app_service",GCP_COMPUTE_ENGINE:"gcp_compute_engine",GCP_CLOUD_RUN:"gcp_cloud_run",GCP_KUBERNETES_ENGINE:"gcp_kubernetes_engine",GCP_CLOUD_FUNCTIONS:"gcp_cloud_functions",GCP_APP_ENGINE:"gcp_app_engine"};Yk.AwsEcsLaunchtypeValues={EC2:"ec2",FARGATE:"fargate"};Yk.HostArchValues={AMD64:"amd64",ARM32:"arm32",ARM64:"arm64",IA64:"ia64",PPC32:"ppc32",PPC64:"ppc64",X86:"x86"};Yk.OsTypeValues={WINDOWS:"windows",LINUX:"linux",DARWIN:"darwin",FREEBSD:"freebsd",NETBSD:"netbsd",OPENBSD:"openbsd",DRAGONFLYBSD:"dragonflybsd",HPUX:"hpux",AIX:"aix",SOLARIS:"solaris",Z_OS:"z_os"};Yk.TelemetrySdkLanguageValues={CPP:"cpp",DOTNET:"dotnet",ERLANG:"erlang",GO:"go",JAVA:"java",NODEJS:"nodejs",PHP:"php",PYTHON:"python",RUBY:"ruby",WEBJS:"webjs"}});var ACi=z(lIe=>{"use strict";var fva=lIe&&lIe.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Iva=lIe&&lIe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&fva(t,e,r)};Object.defineProperty(lIe,"__esModule",{value:!0});Iva(gCi(),lIe)});var ooe=z(soe=>{"use strict";var Cva=soe&&soe.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),dCi=soe&&soe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Cva(t,e,r)};Object.defineProperty(soe,"__esModule",{value:!0});dCi(uCi(),soe);dCi(ACi(),soe)});var QHe=z(aoe=>{"use strict";Object.defineProperty(aoe,"__esModule",{value:!0});aoe.isTracingSuppressed=aoe.unsuppressTracing=aoe.suppressTracing=void 0;var mva=(vI(),Ai(BI)),_Cr=(0,mva.createContextKey)("OpenTelemetry SDK Context Key SUPPRESS_TRACING");function hva(e){return e.setValue(_Cr,!0)}aoe.suppressTracing=hva;function _va(e){return e.deleteValue(_Cr)}aoe.unsuppressTracing=_va;function yva(e){return e.getValue(_Cr)===!0}aoe.isTracingSuppressed=yva});var yCr=z(Xk=>{"use strict";Object.defineProperty(Xk,"__esModule",{value:!0});Xk.BAGGAGE_MAX_TOTAL_LENGTH=Xk.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=Xk.BAGGAGE_MAX_NAME_VALUE_PAIRS=Xk.BAGGAGE_HEADER=Xk.BAGGAGE_ITEMS_SEPARATOR=Xk.BAGGAGE_PROPERTIES_SEPARATOR=Xk.BAGGAGE_KEY_PAIR_SEPARATOR=void 0;Xk.BAGGAGE_KEY_PAIR_SEPARATOR="=";Xk.BAGGAGE_PROPERTIES_SEPARATOR=";";Xk.BAGGAGE_ITEMS_SEPARATOR=",";Xk.BAGGAGE_HEADER="baggage";Xk.BAGGAGE_MAX_NAME_VALUE_PAIRS=180;Xk.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=4096;Xk.BAGGAGE_MAX_TOTAL_LENGTH=8192});var bCr=z(AK=>{"use strict";Object.defineProperty(AK,"__esModule",{value:!0});AK.parseKeyPairsIntoRecord=AK.parsePairKeyValue=AK.getKeyPairs=AK.serializeKeyPairs=void 0;var bva=(vI(),Ai(BI)),uIe=yCr();function Eva(e){return e.reduce((t,r)=>{let s=`${t}${t!==""?uIe.BAGGAGE_ITEMS_SEPARATOR:""}${r}`;return s.length>uIe.BAGGAGE_MAX_TOTAL_LENGTH?t:s},"")}AK.serializeKeyPairs=Eva;function Bva(e){return e.getAllEntries().map(([t,r])=>{let s=`${encodeURIComponent(t)}=${encodeURIComponent(r.value)}`;return r.metadata!==void 0&&(s+=uIe.BAGGAGE_PROPERTIES_SEPARATOR+r.metadata.toString()),s})}AK.getKeyPairs=Bva;function pCi(e){let t=e.split(uIe.BAGGAGE_PROPERTIES_SEPARATOR);if(t.length<=0)return;let r=t.shift();if(!r)return;let s=r.indexOf(uIe.BAGGAGE_KEY_PAIR_SEPARATOR);if(s<=0)return;let a=decodeURIComponent(r.substring(0,s).trim()),o=decodeURIComponent(r.substring(s+1).trim()),g;return t.length>0&&(g=(0,bva.baggageEntryMetadataFromString)(t.join(uIe.BAGGAGE_PROPERTIES_SEPARATOR))),{key:a,value:o,metadata:g}}AK.parsePairKeyValue=pCi;function vva(e){return typeof e!="string"||e.length===0?{}:e.split(uIe.BAGGAGE_ITEMS_SEPARATOR).map(t=>pCi(t)).filter(t=>t!==void 0&&t.value.length>0).reduce((t,r)=>(t[r.key]=r.value,t),{})}AK.parseKeyPairsIntoRecord=vva});var fCi=z(t_t=>{"use strict";Object.defineProperty(t_t,"__esModule",{value:!0});t_t.W3CBaggagePropagator=void 0;var ECr=(vI(),Ai(BI)),Sva=QHe(),gIe=yCr(),BCr=bCr(),vCr=class{inject(t,r,s){let a=ECr.propagation.getBaggage(t);if(!a||(0,Sva.isTracingSuppressed)(t))return;let o=(0,BCr.getKeyPairs)(a).filter(p=>p.length<=gIe.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS).slice(0,gIe.BAGGAGE_MAX_NAME_VALUE_PAIRS),g=(0,BCr.serializeKeyPairs)(o);g.length>0&&s.set(r,gIe.BAGGAGE_HEADER,g)}extract(t,r,s){let a=s.get(r,gIe.BAGGAGE_HEADER),o=Array.isArray(a)?a.join(gIe.BAGGAGE_ITEMS_SEPARATOR):a;if(!o)return t;let g={};return o.length===0||(o.split(gIe.BAGGAGE_ITEMS_SEPARATOR).forEach(f=>{let m=(0,BCr.parsePairKeyValue)(f);if(m){let y={value:m.value};m.metadata&&(y.metadata=m.metadata),g[m.key]=y}}),Object.entries(g).length===0)?t:ECr.propagation.setBaggage(t,ECr.propagation.createBaggage(g))}fields(){return[gIe.BAGGAGE_HEADER]}};t_t.W3CBaggagePropagator=vCr});var ICi=z(r_t=>{"use strict";Object.defineProperty(r_t,"__esModule",{value:!0});r_t.AnchoredClock=void 0;var SCr=class{constructor(t,r){this._monotonicClock=r,this._epochMillis=t.now(),this._performanceMillis=r.now()}now(){let t=this._monotonicClock.now()-this._performanceMillis;return this._epochMillis+t}};r_t.AnchoredClock=SCr});var yCi=z(coe=>{"use strict";Object.defineProperty(coe,"__esModule",{value:!0});coe.isAttributeValue=coe.isAttributeKey=coe.sanitizeAttributes=void 0;var CCi=(vI(),Ai(BI));function wva(e){let t={};if(typeof e!="object"||e==null)return t;for(let[r,s]of Object.entries(e)){if(!mCi(r)){CCi.diag.warn(`Invalid attribute key: ${r}`);continue}if(!hCi(s)){CCi.diag.warn(`Invalid attribute value set for key: ${r}`);continue}Array.isArray(s)?t[r]=s.slice():t[r]=s}return t}coe.sanitizeAttributes=wva;function mCi(e){return typeof e=="string"&&e.length>0}coe.isAttributeKey=mCi;function hCi(e){return e==null?!0:Array.isArray(e)?Tva(e):_Ci(e)}coe.isAttributeValue=hCi;function Tva(e){let t;for(let r of e)if(r!=null){if(!t){if(_Ci(r)){t=typeof r;continue}return!1}if(typeof r!==t)return!1}return!0}function _Ci(e){switch(typeof e){case"number":case"boolean":case"string":return!0}return!1}});var wCr=z(n_t=>{"use strict";Object.defineProperty(n_t,"__esModule",{value:!0});n_t.loggingErrorHandler=void 0;var Nva=(vI(),Ai(BI));function Rva(){return e=>{Nva.diag.error(Dva(e))}}n_t.loggingErrorHandler=Rva;function Dva(e){return typeof e=="string"?e:JSON.stringify(xva(e))}function xva(e){let t={},r=e;for(;r!==null;)Object.getOwnPropertyNames(r).forEach(s=>{if(t[s])return;let a=r[s];a&&(t[s]=String(a))}),r=Object.getPrototypeOf(r);return t}});var TCr=z(awe=>{"use strict";Object.defineProperty(awe,"__esModule",{value:!0});awe.globalErrorHandler=awe.setGlobalErrorHandler=void 0;var kva=wCr(),bCi=(0,kva.loggingErrorHandler)();function Gva(e){bCi=e}awe.setGlobalErrorHandler=Gva;function Fva(e){try{bCi(e)}catch{}}awe.globalErrorHandler=Fva});var NCr=z(MHe=>{"use strict";Object.defineProperty(MHe,"__esModule",{value:!0});MHe.TracesSamplerValues=void 0;var Zva;(function(e){e.AlwaysOff="always_off",e.AlwaysOn="always_on",e.ParentBasedAlwaysOff="parentbased_always_off",e.ParentBasedAlwaysOn="parentbased_always_on",e.ParentBasedTraceIdRatio="parentbased_traceidratio",e.TraceIdRatio="traceidratio"})(Zva=MHe.TracesSamplerValues||(MHe.TracesSamplerValues={}))});var ECi=z(i_t=>{"use strict";Object.defineProperty(i_t,"__esModule",{value:!0});i_t._globalThis=void 0;i_t._globalThis=typeof globalThis=="object"?globalThis:typeof self=="object"?self:typeof window=="object"?window:typeof global=="object"?global:{}});var DCr=z(u1=>{"use strict";Object.defineProperty(u1,"__esModule",{value:!0});u1.getEnvWithoutDefaults=u1.parseEnvironment=u1.DEFAULT_ENVIRONMENT=u1.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=u1.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=u1.DEFAULT_ATTRIBUTE_COUNT_LIMIT=u1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=void 0;var loe=(vI(),Ai(BI)),Lva=NCr(),Vva=ECi(),Wva=",",Pva=["OTEL_SDK_DISABLED"];function Ova(e){return Pva.indexOf(e)>-1}var Qva=["OTEL_BSP_EXPORT_TIMEOUT","OTEL_BSP_MAX_EXPORT_BATCH_SIZE","OTEL_BSP_MAX_QUEUE_SIZE","OTEL_BSP_SCHEDULE_DELAY","OTEL_BLRP_EXPORT_TIMEOUT","OTEL_BLRP_MAX_EXPORT_BATCH_SIZE","OTEL_BLRP_MAX_QUEUE_SIZE","OTEL_BLRP_SCHEDULE_DELAY","OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_EVENT_COUNT_LIMIT","OTEL_SPAN_LINK_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT","OTEL_EXPORTER_OTLP_TIMEOUT","OTEL_EXPORTER_OTLP_TRACES_TIMEOUT","OTEL_EXPORTER_OTLP_METRICS_TIMEOUT","OTEL_EXPORTER_OTLP_LOGS_TIMEOUT","OTEL_EXPORTER_JAEGER_AGENT_PORT"];function Mva(e){return Qva.indexOf(e)>-1}var Hva=["OTEL_NO_PATCH_MODULES","OTEL_PROPAGATORS"];function Yva(e){return Hva.indexOf(e)>-1}u1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=1/0;u1.DEFAULT_ATTRIBUTE_COUNT_LIMIT=128;u1.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=128;u1.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=128;u1.DEFAULT_ENVIRONMENT={OTEL_SDK_DISABLED:!1,CONTAINER_NAME:"",ECS_CONTAINER_METADATA_URI_V4:"",ECS_CONTAINER_METADATA_URI:"",HOSTNAME:"",KUBERNETES_SERVICE_HOST:"",NAMESPACE:"",OTEL_BSP_EXPORT_TIMEOUT:3e4,OTEL_BSP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BSP_MAX_QUEUE_SIZE:2048,OTEL_BSP_SCHEDULE_DELAY:5e3,OTEL_BLRP_EXPORT_TIMEOUT:3e4,OTEL_BLRP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BLRP_MAX_QUEUE_SIZE:2048,OTEL_BLRP_SCHEDULE_DELAY:5e3,OTEL_EXPORTER_JAEGER_AGENT_HOST:"",OTEL_EXPORTER_JAEGER_AGENT_PORT:6832,OTEL_EXPORTER_JAEGER_ENDPOINT:"",OTEL_EXPORTER_JAEGER_PASSWORD:"",OTEL_EXPORTER_JAEGER_USER:"",OTEL_EXPORTER_OTLP_ENDPOINT:"",OTEL_EXPORTER_OTLP_TRACES_ENDPOINT:"",OTEL_EXPORTER_OTLP_METRICS_ENDPOINT:"",OTEL_EXPORTER_OTLP_LOGS_ENDPOINT:"",OTEL_EXPORTER_OTLP_HEADERS:"",OTEL_EXPORTER_OTLP_TRACES_HEADERS:"",OTEL_EXPORTER_OTLP_METRICS_HEADERS:"",OTEL_EXPORTER_OTLP_LOGS_HEADERS:"",OTEL_EXPORTER_OTLP_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_TRACES_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_METRICS_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_LOGS_TIMEOUT:1e4,OTEL_EXPORTER_ZIPKIN_ENDPOINT:"http://localhost:9411/api/v2/spans",OTEL_LOG_LEVEL:loe.DiagLogLevel.INFO,OTEL_NO_PATCH_MODULES:[],OTEL_PROPAGATORS:["tracecontext","baggage"],OTEL_RESOURCE_ATTRIBUTES:"",OTEL_SERVICE_NAME:"",OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT:u1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_ATTRIBUTE_COUNT_LIMIT:u1.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT:u1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT:u1.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT:u1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT:u1.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_EVENT_COUNT_LIMIT:128,OTEL_SPAN_LINK_COUNT_LIMIT:128,OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT:u1.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT:u1.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT,OTEL_TRACES_EXPORTER:"",OTEL_TRACES_SAMPLER:Lva.TracesSamplerValues.ParentBasedAlwaysOn,OTEL_TRACES_SAMPLER_ARG:"",OTEL_LOGS_EXPORTER:"",OTEL_EXPORTER_OTLP_INSECURE:"",OTEL_EXPORTER_OTLP_TRACES_INSECURE:"",OTEL_EXPORTER_OTLP_METRICS_INSECURE:"",OTEL_EXPORTER_OTLP_LOGS_INSECURE:"",OTEL_EXPORTER_OTLP_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_COMPRESSION:"",OTEL_EXPORTER_OTLP_TRACES_COMPRESSION:"",OTEL_EXPORTER_OTLP_METRICS_COMPRESSION:"",OTEL_EXPORTER_OTLP_LOGS_COMPRESSION:"",OTEL_EXPORTER_OTLP_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_TRACES_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_LOGS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE:"cumulative"};function Xva(e,t,r){if(typeof r[e]>"u")return;let s=String(r[e]);t[e]=s.toLowerCase()==="true"}function Jva(e,t,r,s=-1/0,a=1/0){if(typeof r[e]<"u"){let o=Number(r[e]);isNaN(o)||(oa?t[e]=a:t[e]=o)}}function Uva(e,t,r,s=Wva){let a=r[e];typeof a=="string"&&(t[e]=a.split(s).map(o=>o.trim()))}var Kva={ALL:loe.DiagLogLevel.ALL,VERBOSE:loe.DiagLogLevel.VERBOSE,DEBUG:loe.DiagLogLevel.DEBUG,INFO:loe.DiagLogLevel.INFO,WARN:loe.DiagLogLevel.WARN,ERROR:loe.DiagLogLevel.ERROR,NONE:loe.DiagLogLevel.NONE};function jva(e,t,r){let s=r[e];if(typeof s=="string"){let a=Kva[s.toUpperCase()];a!=null&&(t[e]=a)}}function RCr(e){let t={};for(let r in u1.DEFAULT_ENVIRONMENT){let s=r;switch(s){case"OTEL_LOG_LEVEL":jva(s,t,e);break;default:if(Ova(s))Xva(s,t,e);else if(Mva(s))Jva(s,t,e);else if(Yva(s))Uva(s,t,e);else{let a=e[s];typeof a<"u"&&a!==null&&(t[s]=String(a))}}}return t}u1.parseEnvironment=RCr;function zva(){return typeof process<"u"&&process&&process.env?RCr(process.env):RCr(Vva._globalThis)}u1.getEnvWithoutDefaults=zva});var vCi=z(s_t=>{"use strict";Object.defineProperty(s_t,"__esModule",{value:!0});s_t.getEnv=void 0;var qva=xt("os"),BCi=DCr();function $va(){let e=(0,BCi.parseEnvironment)(process.env);return Object.assign({HOSTNAME:qva.hostname()},BCi.DEFAULT_ENVIRONMENT,e)}s_t.getEnv=$va});var SCi=z(o_t=>{"use strict";Object.defineProperty(o_t,"__esModule",{value:!0});o_t._globalThis=void 0;o_t._globalThis=typeof globalThis=="object"?globalThis:global});var TCi=z(a_t=>{"use strict";Object.defineProperty(a_t,"__esModule",{value:!0});a_t.hexToBase64=void 0;function wCi(e){return e>=48&&e<=57?e-48:e>=97&&e<=102?e-87:e-55}var eSa=Buffer.alloc(8),tSa=Buffer.alloc(16);function rSa(e){let t;e.length===16?t=eSa:e.length===32?t=tSa:t=Buffer.alloc(e.length/2);let r=0;for(let s=0;s{"use strict";Object.defineProperty(l_t,"__esModule",{value:!0});l_t.RandomIdGenerator=void 0;var nSa=8,RCi=16,xCr=class{constructor(){this.generateTraceId=NCi(RCi),this.generateSpanId=NCi(nSa)}};l_t.RandomIdGenerator=xCr;var c_t=Buffer.allocUnsafe(RCi);function NCi(e){return function(){for(let r=0;r>>0,r*4);for(let r=0;r0);r++)r===e-1&&(c_t[e-1]=1);return c_t.toString("hex",0,e)}}});var xCi=z(u_t=>{"use strict";Object.defineProperty(u_t,"__esModule",{value:!0});u_t.otperformance=void 0;var iSa=xt("perf_hooks");u_t.otperformance=iSa.performance});var A_t=z(g_t=>{"use strict";Object.defineProperty(g_t,"__esModule",{value:!0});g_t.VERSION=void 0;g_t.VERSION="1.16.0"});var kCi=z(d_t=>{"use strict";Object.defineProperty(d_t,"__esModule",{value:!0});d_t.SDK_INFO=void 0;var sSa=A_t(),HHe=ooe();d_t.SDK_INFO={[HHe.SemanticResourceAttributes.TELEMETRY_SDK_NAME]:"opentelemetry",[HHe.SemanticResourceAttributes.PROCESS_RUNTIME_NAME]:"node",[HHe.SemanticResourceAttributes.TELEMETRY_SDK_LANGUAGE]:HHe.TelemetrySdkLanguageValues.NODEJS,[HHe.SemanticResourceAttributes.TELEMETRY_SDK_VERSION]:sSa.VERSION}});var GCi=z(p_t=>{"use strict";Object.defineProperty(p_t,"__esModule",{value:!0});p_t.unrefTimer=void 0;function oSa(e){e.unref()}p_t.unrefTimer=oSa});var FCi=z(o3=>{"use strict";var aSa=o3&&o3.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),AIe=o3&&o3.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&aSa(t,e,r)};Object.defineProperty(o3,"__esModule",{value:!0});AIe(vCi(),o3);AIe(SCi(),o3);AIe(TCi(),o3);AIe(DCi(),o3);AIe(xCi(),o3);AIe(kCi(),o3);AIe(GCi(),o3)});var kCr=z(dIe=>{"use strict";var cSa=dIe&&dIe.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),lSa=dIe&&dIe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&cSa(t,e,r)};Object.defineProperty(dIe,"__esModule",{value:!0});lSa(FCi(),dIe)});var WCi=z(pE=>{"use strict";Object.defineProperty(pE,"__esModule",{value:!0});pE.addHrTimes=pE.isTimeInput=pE.isTimeInputHrTime=pE.hrTimeToMicroseconds=pE.hrTimeToMilliseconds=pE.hrTimeToNanoseconds=pE.hrTimeToTimeStamp=pE.hrTimeDuration=pE.timeInputToHrTime=pE.hrTime=pE.getTimeOrigin=pE.millisToHrTime=void 0;var GCr=kCr(),ZCi=9,uSa=6,gSa=Math.pow(10,uSa),f_t=Math.pow(10,ZCi);function YHe(e){let t=e/1e3,r=Math.trunc(t),s=Math.round(e%1e3*gSa);return[r,s]}pE.millisToHrTime=YHe;function FCr(){let e=GCr.otperformance.timeOrigin;if(typeof e!="number"){let t=GCr.otperformance;e=t.timing&&t.timing.fetchStart}return e}pE.getTimeOrigin=FCr;function LCi(e){let t=YHe(FCr()),r=YHe(typeof e=="number"?e:GCr.otperformance.now());return VCi(t,r)}pE.hrTime=LCi;function ASa(e){if(ZCr(e))return e;if(typeof e=="number")return e=f_t&&(r[1]-=f_t,r[0]+=1),r}pE.addHrTimes=VCi});var OCi=z(PCi=>{"use strict";Object.defineProperty(PCi,"__esModule",{value:!0})});var QCi=z(XHe=>{"use strict";Object.defineProperty(XHe,"__esModule",{value:!0});XHe.ExportResultCode=void 0;var hSa;(function(e){e[e.SUCCESS=0]="SUCCESS",e[e.FAILED=1]="FAILED"})(hSa=XHe.ExportResultCode||(XHe.ExportResultCode={}))});var HCi=z(I_t=>{"use strict";Object.defineProperty(I_t,"__esModule",{value:!0});I_t.CompositePropagator=void 0;var MCi=(vI(),Ai(BI)),LCr=class{constructor(t={}){var r;this._propagators=(r=t.propagators)!==null&&r!==void 0?r:[],this._fields=Array.from(new Set(this._propagators.map(s=>typeof s.fields=="function"?s.fields():[]).reduce((s,a)=>s.concat(a),[])))}inject(t,r,s){for(let a of this._propagators)try{a.inject(t,r,s)}catch(o){MCi.diag.warn(`Failed to inject with ${a.constructor.name}. Err: ${o.message}`)}}extract(t,r,s){return this._propagators.reduce((a,o)=>{try{return o.extract(a,r,s)}catch(g){MCi.diag.warn(`Failed to inject with ${o.constructor.name}. Err: ${g.message}`)}return a},t)}fields(){return this._fields.slice()}};I_t.CompositePropagator=LCr});var YCi=z(cwe=>{"use strict";Object.defineProperty(cwe,"__esModule",{value:!0});cwe.validateValue=cwe.validateKey=void 0;var VCr="[_0-9a-z-*/]",_Sa=`[a-z]${VCr}{0,255}`,ySa=`[a-z0-9]${VCr}{0,240}@[a-z]${VCr}{0,13}`,bSa=new RegExp(`^(?:${_Sa}|${ySa})$`),ESa=/^[ -~]{0,255}[!-~]$/,BSa=/,|=/;function vSa(e){return bSa.test(e)}cwe.validateKey=vSa;function SSa(e){return ESa.test(e)&&!BSa.test(e)}cwe.validateValue=SSa});var PCr=z(C_t=>{"use strict";Object.defineProperty(C_t,"__esModule",{value:!0});C_t.TraceState=void 0;var XCi=YCi(),JCi=32,wSa=512,UCi=",",KCi="=",WCr=class e{constructor(t){this._internalState=new Map,t&&this._parse(t)}set(t,r){let s=this._clone();return s._internalState.has(t)&&s._internalState.delete(t),s._internalState.set(t,r),s}unset(t){let r=this._clone();return r._internalState.delete(t),r}get(t){return this._internalState.get(t)}serialize(){return this._keys().reduce((t,r)=>(t.push(r+KCi+this.get(r)),t),[]).join(UCi)}_parse(t){t.length>wSa||(this._internalState=t.split(UCi).reverse().reduce((r,s)=>{let a=s.trim(),o=a.indexOf(KCi);if(o!==-1){let g=a.slice(0,o),p=a.slice(o+1,s.length);(0,XCi.validateKey)(g)&&(0,XCi.validateValue)(p)&&r.set(g,p)}return r},new Map),this._internalState.size>JCi&&(this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,JCi))))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let t=new e;return t._internalState=new Map(this._internalState),t}};C_t.TraceState=WCr});var zCi=z(Jk=>{"use strict";Object.defineProperty(Jk,"__esModule",{value:!0});Jk.W3CTraceContextPropagator=Jk.parseTraceParent=Jk.TRACE_STATE_HEADER=Jk.TRACE_PARENT_HEADER=void 0;var m_t=(vI(),Ai(BI)),TSa=QHe(),NSa=PCr();Jk.TRACE_PARENT_HEADER="traceparent";Jk.TRACE_STATE_HEADER="tracestate";var RSa="00",DSa="(?!ff)[\\da-f]{2}",xSa="(?![0]{32})[\\da-f]{32}",kSa="(?![0]{16})[\\da-f]{16}",GSa="[\\da-f]{2}",FSa=new RegExp(`^\\s?(${DSa})-(${xSa})-(${kSa})-(${GSa})(-.*)?\\s?$`);function jCi(e){let t=FSa.exec(e);return!t||t[1]==="00"&&t[5]?null:{traceId:t[2],spanId:t[3],traceFlags:parseInt(t[4],16)}}Jk.parseTraceParent=jCi;var OCr=class{inject(t,r,s){let a=m_t.trace.getSpanContext(t);if(!a||(0,TSa.isTracingSuppressed)(t)||!(0,m_t.isSpanContextValid)(a))return;let o=`${RSa}-${a.traceId}-${a.spanId}-0${Number(a.traceFlags||m_t.TraceFlags.NONE).toString(16)}`;s.set(r,Jk.TRACE_PARENT_HEADER,o),a.traceState&&s.set(r,Jk.TRACE_STATE_HEADER,a.traceState.serialize())}extract(t,r,s){let a=s.get(r,Jk.TRACE_PARENT_HEADER);if(!a)return t;let o=Array.isArray(a)?a[0]:a;if(typeof o!="string")return t;let g=jCi(o);if(!g)return t;g.isRemote=!0;let p=s.get(r,Jk.TRACE_STATE_HEADER);if(p){let f=Array.isArray(p)?p.join(","):p;g.traceState=new NSa.TraceState(typeof f=="string"?f:void 0)}return m_t.trace.setSpanContext(t,g)}fields(){return[Jk.TRACE_PARENT_HEADER,Jk.TRACE_STATE_HEADER]}};Jk.W3CTraceContextPropagator=OCr});var $Ci=z(qCi=>{"use strict";Object.defineProperty(qCi,"__esModule",{value:!0})});var emi=z(EY=>{"use strict";Object.defineProperty(EY,"__esModule",{value:!0});EY.getRPCMetadata=EY.deleteRPCMetadata=EY.setRPCMetadata=EY.RPCType=void 0;var ZSa=(vI(),Ai(BI)),QCr=(0,ZSa.createContextKey)("OpenTelemetry SDK Context Key RPC_METADATA"),LSa;(function(e){e.HTTP="http"})(LSa=EY.RPCType||(EY.RPCType={}));function VSa(e,t){return e.setValue(QCr,t)}EY.setRPCMetadata=VSa;function WSa(e){return e.deleteValue(QCr)}EY.deleteRPCMetadata=WSa;function PSa(e){return e.getValue(QCr)}EY.getRPCMetadata=PSa});var HCr=z(h_t=>{"use strict";Object.defineProperty(h_t,"__esModule",{value:!0});h_t.AlwaysOffSampler=void 0;var OSa=(vI(),Ai(BI)),MCr=class{shouldSample(){return{decision:OSa.SamplingDecision.NOT_RECORD}}toString(){return"AlwaysOffSampler"}};h_t.AlwaysOffSampler=MCr});var XCr=z(__t=>{"use strict";Object.defineProperty(__t,"__esModule",{value:!0});__t.AlwaysOnSampler=void 0;var QSa=(vI(),Ai(BI)),YCr=class{shouldSample(){return{decision:QSa.SamplingDecision.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}};__t.AlwaysOnSampler=YCr});var rmi=z(b_t=>{"use strict";Object.defineProperty(b_t,"__esModule",{value:!0});b_t.ParentBasedSampler=void 0;var y_t=(vI(),Ai(BI)),MSa=TCr(),tmi=HCr(),JCr=XCr(),UCr=class{constructor(t){var r,s,a,o;this._root=t.root,this._root||((0,MSa.globalErrorHandler)(new Error("ParentBasedSampler must have a root sampler configured")),this._root=new JCr.AlwaysOnSampler),this._remoteParentSampled=(r=t.remoteParentSampled)!==null&&r!==void 0?r:new JCr.AlwaysOnSampler,this._remoteParentNotSampled=(s=t.remoteParentNotSampled)!==null&&s!==void 0?s:new tmi.AlwaysOffSampler,this._localParentSampled=(a=t.localParentSampled)!==null&&a!==void 0?a:new JCr.AlwaysOnSampler,this._localParentNotSampled=(o=t.localParentNotSampled)!==null&&o!==void 0?o:new tmi.AlwaysOffSampler}shouldSample(t,r,s,a,o,g){let p=y_t.trace.getSpanContext(t);return!p||!(0,y_t.isSpanContextValid)(p)?this._root.shouldSample(t,r,s,a,o,g):p.isRemote?p.traceFlags&y_t.TraceFlags.SAMPLED?this._remoteParentSampled.shouldSample(t,r,s,a,o,g):this._remoteParentNotSampled.shouldSample(t,r,s,a,o,g):p.traceFlags&y_t.TraceFlags.SAMPLED?this._localParentSampled.shouldSample(t,r,s,a,o,g):this._localParentNotSampled.shouldSample(t,r,s,a,o,g)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}};b_t.ParentBasedSampler=UCr});var nmi=z(E_t=>{"use strict";Object.defineProperty(E_t,"__esModule",{value:!0});E_t.TraceIdRatioBasedSampler=void 0;var KCr=(vI(),Ai(BI)),jCr=class{constructor(t=0){this._ratio=t,this._ratio=this._normalize(t),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(t,r){return{decision:(0,KCr.isValidTraceId)(r)&&this._accumulate(r)=1?1:t<=0?0:t}_accumulate(t){let r=0;for(let s=0;s>>0}return r}};E_t.TraceIdRatioBasedSampler=jCr});var cmi=z(B_t=>{"use strict";Object.defineProperty(B_t,"__esModule",{value:!0});B_t.isPlainObject=void 0;var HSa="[object Object]",YSa="[object Null]",XSa="[object Undefined]",JSa=Function.prototype,imi=JSa.toString,USa=imi.call(Object),KSa=jSa(Object.getPrototypeOf,Object),smi=Object.prototype,omi=smi.hasOwnProperty,pIe=Symbol?Symbol.toStringTag:void 0,ami=smi.toString;function jSa(e,t){return function(r){return e(t(r))}}function zSa(e){if(!qSa(e)||$Sa(e)!==HSa)return!1;let t=KSa(e);if(t===null)return!0;let r=omi.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&imi.call(r)===USa}B_t.isPlainObject=zSa;function qSa(e){return e!=null&&typeof e=="object"}function $Sa(e){return e==null?e===void 0?XSa:YSa:pIe&&pIe in Object(e)?ewa(e):twa(e)}function ewa(e){let t=omi.call(e,pIe),r=e[pIe],s=!1;try{e[pIe]=void 0,s=!0}catch{}let a=ami.call(e);return s&&(t?e[pIe]=r:delete e[pIe]),a}function twa(e){return ami.call(e)}});var dmi=z(w_t=>{"use strict";Object.defineProperty(w_t,"__esModule",{value:!0});w_t.merge=void 0;var lmi=cmi(),rwa=20;function nwa(...e){let t=e.shift(),r=new WeakMap;for(;e.length>0;)t=gmi(t,e.shift(),0,r);return t}w_t.merge=nwa;function zCr(e){return S_t(e)?e.slice():e}function gmi(e,t,r=0,s){let a;if(!(r>rwa)){if(r++,v_t(e)||v_t(t)||Ami(t))a=zCr(t);else if(S_t(e)){if(a=e.slice(),S_t(t))for(let o=0,g=t.length;o"u"?delete a[f]:a[f]=m;else{let y=a[f],B=m;if(umi(e,f,s)||umi(t,f,s))delete a[f];else{if(JHe(y)&&JHe(B)){let v=s.get(y)||[],k=s.get(B)||[];v.push({obj:e,key:f}),k.push({obj:t,key:f}),s.set(y,v),s.set(B,k)}a[f]=gmi(a[f],m,r,s)}}}}else a=t;return a}}function umi(e,t,r){let s=r.get(e[t])||[];for(let a=0,o=s.length;a"u"||e instanceof Date||e instanceof RegExp||e===null}function iwa(e,t){return!(!(0,lmi.isPlainObject)(e)||!(0,lmi.isPlainObject)(t))}});var pmi=z(lwe=>{"use strict";Object.defineProperty(lwe,"__esModule",{value:!0});lwe.callWithTimeout=lwe.TimeoutError=void 0;var T_t=class e extends Error{constructor(t){super(t),Object.setPrototypeOf(this,e.prototype)}};lwe.TimeoutError=T_t;function swa(e,t){let r,s=new Promise(function(o,g){r=setTimeout(function(){g(new T_t("Operation timed out."))},t)});return Promise.race([e,s]).then(a=>(clearTimeout(r),a),a=>{throw clearTimeout(r),a})}lwe.callWithTimeout=swa});var Imi=z(uwe=>{"use strict";Object.defineProperty(uwe,"__esModule",{value:!0});uwe.isUrlIgnored=uwe.urlMatches=void 0;function fmi(e,t){return typeof t=="string"?e===t:!!e.match(t)}uwe.urlMatches=fmi;function owa(e,t){if(!t)return!1;for(let r of t)if(fmi(e,r))return!0;return!1}uwe.isUrlIgnored=owa});var Cmi=z(N_t=>{"use strict";Object.defineProperty(N_t,"__esModule",{value:!0});N_t.isWrapped=void 0;function awa(e){return typeof e=="function"&&typeof e.__original=="function"&&typeof e.__unwrap=="function"&&e.__wrapped===!0}N_t.isWrapped=awa});var mmi=z(R_t=>{"use strict";Object.defineProperty(R_t,"__esModule",{value:!0});R_t.Deferred=void 0;var qCr=class{constructor(){this._promise=new Promise((t,r)=>{this._resolve=t,this._reject=r})}get promise(){return this._promise}resolve(t){this._resolve(t)}reject(t){this._reject(t)}};R_t.Deferred=qCr});var hmi=z(D_t=>{"use strict";Object.defineProperty(D_t,"__esModule",{value:!0});D_t.BindOnceFuture=void 0;var cwa=mmi(),$Cr=class{constructor(t,r){this._callback=t,this._that=r,this._isCalled=!1,this._deferred=new cwa.Deferred}get isCalled(){return this._isCalled}get promise(){return this._deferred.promise}call(...t){if(!this._isCalled){this._isCalled=!0;try{Promise.resolve(this._callback.call(this._that,...t)).then(r=>this._deferred.resolve(r),r=>this._deferred.reject(r))}catch(r){this._deferred.reject(r)}}return this._deferred.promise}};D_t.BindOnceFuture=$Cr});var ymi=z(x_t=>{"use strict";Object.defineProperty(x_t,"__esModule",{value:!0});x_t._export=void 0;var _mi=(vI(),Ai(BI)),lwa=QHe();function uwa(e,t){return new Promise(r=>{_mi.context.with((0,lwa.suppressTracing)(_mi.context.active()),()=>{e.export(t,s=>{r(s)})})})}x_t._export=uwa});var ZQ=z(im=>{"use strict";var gwa=im&&im.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Wy=im&&im.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&gwa(t,e,r)};Object.defineProperty(im,"__esModule",{value:!0});im.internal=im.baggageUtils=void 0;Wy(fCi(),im);Wy(ICi(),im);Wy(yCi(),im);Wy(TCr(),im);Wy(wCr(),im);Wy(WCi(),im);Wy(OCi(),im);Wy(QCi(),im);Wy(A_t(),im);im.baggageUtils=bCr();Wy(kCr(),im);Wy(HCi(),im);Wy(zCi(),im);Wy($Ci(),im);Wy(emi(),im);Wy(HCr(),im);Wy(XCr(),im);Wy(rmi(),im);Wy(nmi(),im);Wy(QHe(),im);Wy(PCr(),im);Wy(DCr(),im);Wy(dmi(),im);Wy(NCr(),im);Wy(pmi(),im);Wy(Imi(),im);Wy(Cmi(),im);Wy(hmi(),im);Wy(A_t(),im);var Awa=ymi();im.internal={_export:Awa._export}});var bmi=z(k_t=>{"use strict";Object.defineProperty(k_t,"__esModule",{value:!0});k_t.defaultServiceName=void 0;function dwa(){return`unknown_service:${process.argv0}`}k_t.defaultServiceName=dwa});var emr=z(gwe=>{"use strict";Object.defineProperty(gwe,"__esModule",{value:!0});gwe.normalizeType=gwe.normalizeArch=void 0;var pwa=e=>{switch(e){case"arm":return"arm32";case"ppc":return"ppc32";case"x64":return"amd64";default:return e}};gwe.normalizeArch=pwa;var fwa=e=>{switch(e){case"sunos":return"solaris";case"win32":return"windows";default:return e}};gwe.normalizeType=fwa});var F_t=z(G_t=>{"use strict";Object.defineProperty(G_t,"__esModule",{value:!0});G_t.execAsync=void 0;var Iwa=xt("child_process"),Cwa=xt("util");G_t.execAsync=Cwa.promisify(Iwa.exec)});var Emi=z(Z_t=>{"use strict";Object.defineProperty(Z_t,"__esModule",{value:!0});Z_t.getMachineId=void 0;var mwa=F_t(),hwa=(vI(),Ai(BI));async function _wa(){try{let t=(await(0,mwa.execAsync)('ioreg -rd1 -c "IOPlatformExpertDevice"')).stdout.split(` +`).find(s=>s.includes("IOPlatformUUID"));if(!t)return"";let r=t.split('" = "');if(r.length===2)return r[1].slice(0,-1)}catch(e){hwa.diag.debug(`error reading machine id: ${e}`)}return""}Z_t.getMachineId=_wa});var Bmi=z(L_t=>{"use strict";Object.defineProperty(L_t,"__esModule",{value:!0});L_t.getMachineId=void 0;var ywa=xt("fs"),bwa=(vI(),Ai(BI));async function Ewa(){let e=["/etc/machine-id","/var/lib/dbus/machine-id"];for(let t of e)try{return(await ywa.promises.readFile(t,{encoding:"utf8"})).trim()}catch(r){bwa.diag.debug(`error reading machine id: ${r}`)}return""}L_t.getMachineId=Ewa});var Smi=z(V_t=>{"use strict";Object.defineProperty(V_t,"__esModule",{value:!0});V_t.getMachineId=void 0;var Bwa=xt("fs"),vwa=F_t(),vmi=(vI(),Ai(BI));async function Swa(){try{return(await Bwa.promises.readFile("/etc/hostid",{encoding:"utf8"})).trim()}catch(e){vmi.diag.debug(`error reading machine id: ${e}`)}try{return(await(0,vwa.execAsync)("kenv -q smbios.system.uuid")).stdout.trim()}catch(e){vmi.diag.debug(`error reading machine id: ${e}`)}return""}V_t.getMachineId=Swa});var Tmi=z(W_t=>{"use strict";Object.defineProperty(W_t,"__esModule",{value:!0});W_t.getMachineId=void 0;var wmi=xt("process"),wwa=F_t(),Twa=(vI(),Ai(BI));async function Nwa(){let e="QUERY HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Cryptography /v MachineGuid",t="%windir%\\System32\\REG.exe";wmi.arch==="ia32"&&"PROCESSOR_ARCHITEW6432"in wmi.env&&(t="%windir%\\sysnative\\cmd.exe /c "+t);try{let s=(await(0,wwa.execAsync)(`${t} ${e}`)).stdout.split("REG_SZ");if(s.length===2)return s[1].trim()}catch(r){Twa.diag.debug(`error reading machine id: ${r}`)}return""}W_t.getMachineId=Nwa});var Nmi=z(P_t=>{"use strict";Object.defineProperty(P_t,"__esModule",{value:!0});P_t.getMachineId=void 0;var Rwa=(vI(),Ai(BI));async function Dwa(){return Rwa.diag.debug("could not read machine-id: unsupported platform"),""}P_t.getMachineId=Dwa});var Rmi=z(uq=>{"use strict";Object.defineProperty(uq,"__esModule",{value:!0});uq.getMachineId=void 0;var xwa=xt("process"),Awe;uq.getMachineId=Awe;switch(xwa.platform){case"darwin":uq.getMachineId=Awe=Emi().getMachineId;break;case"linux":uq.getMachineId=Awe=Bmi().getMachineId;break;case"freebsd":uq.getMachineId=Awe=Smi().getMachineId;break;case"win32":uq.getMachineId=Awe=Tmi().getMachineId;break;default:uq.getMachineId=Awe=Nmi().getMachineId}});var nmr=z(O_t=>{"use strict";Object.defineProperty(O_t,"__esModule",{value:!0});O_t.hostDetectorSync=void 0;var tmr=ooe(),kwa=fIe(),Dmi=xt("os"),Gwa=emr(),Fwa=Rmi(),rmr=class{detect(t){let r={[tmr.SemanticResourceAttributes.HOST_NAME]:(0,Dmi.hostname)(),[tmr.SemanticResourceAttributes.HOST_ARCH]:(0,Gwa.normalizeArch)((0,Dmi.arch)())};return new kwa.Resource(r,this._getAsyncAttributes())}_getAsyncAttributes(){return(0,Fwa.getMachineId)().then(t=>{let r={};return t&&(r[tmr.SemanticResourceAttributes.HOST_ID]=t),r})}};O_t.hostDetectorSync=new rmr});var xmi=z(Q_t=>{"use strict";Object.defineProperty(Q_t,"__esModule",{value:!0});Q_t.hostDetector=void 0;var Zwa=nmr(),imr=class{detect(t){return Promise.resolve(Zwa.hostDetectorSync.detect(t))}};Q_t.hostDetector=new imr});var omr=z(M_t=>{"use strict";Object.defineProperty(M_t,"__esModule",{value:!0});M_t.osDetectorSync=void 0;var kmi=ooe(),Lwa=fIe(),Gmi=xt("os"),Vwa=emr(),smr=class{detect(t){let r={[kmi.SemanticResourceAttributes.OS_TYPE]:(0,Vwa.normalizeType)((0,Gmi.platform)()),[kmi.SemanticResourceAttributes.OS_VERSION]:(0,Gmi.release)()};return new Lwa.Resource(r)}};M_t.osDetectorSync=new smr});var Fmi=z(H_t=>{"use strict";Object.defineProperty(H_t,"__esModule",{value:!0});H_t.osDetector=void 0;var Wwa=omr(),amr=class{detect(t){return Promise.resolve(Wwa.osDetectorSync.detect(t))}};H_t.osDetector=new amr});var lmr=z(Y_t=>{"use strict";Object.defineProperty(Y_t,"__esModule",{value:!0});Y_t.processDetectorSync=void 0;var Pwa=(vI(),Ai(BI)),gq=ooe(),Owa=fIe(),Qwa=xt("os"),cmr=class{detect(t){let r={[gq.SemanticResourceAttributes.PROCESS_PID]:process.pid,[gq.SemanticResourceAttributes.PROCESS_EXECUTABLE_NAME]:process.title,[gq.SemanticResourceAttributes.PROCESS_EXECUTABLE_PATH]:process.execPath,[gq.SemanticResourceAttributes.PROCESS_COMMAND_ARGS]:[process.argv[0],...process.execArgv,...process.argv.slice(1)],[gq.SemanticResourceAttributes.PROCESS_RUNTIME_VERSION]:process.versions.node,[gq.SemanticResourceAttributes.PROCESS_RUNTIME_NAME]:"nodejs",[gq.SemanticResourceAttributes.PROCESS_RUNTIME_DESCRIPTION]:"Node.js"};process.argv.length>1&&(r[gq.SemanticResourceAttributes.PROCESS_COMMAND]=process.argv[1]);try{let s=Qwa.userInfo();r[gq.SemanticResourceAttributes.PROCESS_OWNER]=s.username}catch(s){Pwa.diag.debug(`error obtaining process owner: ${s}`)}return new Owa.Resource(r)}};Y_t.processDetectorSync=new cmr});var Zmi=z(X_t=>{"use strict";Object.defineProperty(X_t,"__esModule",{value:!0});X_t.processDetector=void 0;var Mwa=lmr(),umr=class{detect(t){return Promise.resolve(Mwa.processDetectorSync.detect(t))}};X_t.processDetector=new umr});var Lmi=z(a3=>{"use strict";var Hwa=a3&&a3.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),IIe=a3&&a3.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Hwa(t,e,r)};Object.defineProperty(a3,"__esModule",{value:!0});IIe(bmi(),a3);IIe(xmi(),a3);IIe(Fmi(),a3);IIe(nmr(),a3);IIe(omr(),a3);IIe(Zmi(),a3);IIe(lmr(),a3)});var gmr=z(CIe=>{"use strict";var Ywa=CIe&&CIe.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Xwa=CIe&&CIe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Ywa(t,e,r)};Object.defineProperty(CIe,"__esModule",{value:!0});Xwa(Lmi(),CIe)});var fIe=z(J_t=>{"use strict";Object.defineProperty(J_t,"__esModule",{value:!0});J_t.Resource=void 0;var Vmi=(vI(),Ai(BI)),mIe=ooe(),Amr=ZQ(),Jwa=gmr(),UHe=class e{constructor(t,r){var s;this._attributes=t,this.asyncAttributesPending=r!=null,this._syncAttributes=(s=this._attributes)!==null&&s!==void 0?s:{},this._asyncAttributesPromise=r?.then(a=>(this._attributes=Object.assign({},this._attributes,a),this.asyncAttributesPending=!1,a),a=>(Vmi.diag.debug("a resource's async attributes promise rejected: %s",a),this.asyncAttributesPending=!1,{}))}static empty(){return e.EMPTY}static default(){return new e({[mIe.SemanticResourceAttributes.SERVICE_NAME]:(0,Jwa.defaultServiceName)(),[mIe.SemanticResourceAttributes.TELEMETRY_SDK_LANGUAGE]:Amr.SDK_INFO[mIe.SemanticResourceAttributes.TELEMETRY_SDK_LANGUAGE],[mIe.SemanticResourceAttributes.TELEMETRY_SDK_NAME]:Amr.SDK_INFO[mIe.SemanticResourceAttributes.TELEMETRY_SDK_NAME],[mIe.SemanticResourceAttributes.TELEMETRY_SDK_VERSION]:Amr.SDK_INFO[mIe.SemanticResourceAttributes.TELEMETRY_SDK_VERSION]})}get attributes(){var t;return this.asyncAttributesPending&&Vmi.diag.error("Accessing resource attributes before async attributes settled"),(t=this._attributes)!==null&&t!==void 0?t:{}}async waitForAsyncAttributes(){this.asyncAttributesPending&&await this._asyncAttributesPromise}merge(t){var r;if(!t)return this;let s=Object.assign(Object.assign({},this._syncAttributes),(r=t._syncAttributes)!==null&&r!==void 0?r:t.attributes);if(!this._asyncAttributesPromise&&!t._asyncAttributesPromise)return new e(s);let a=Promise.all([this._asyncAttributesPromise,t._asyncAttributesPromise]).then(([o,g])=>{var p;return Object.assign(Object.assign(Object.assign(Object.assign({},this._syncAttributes),o),(p=t._syncAttributes)!==null&&p!==void 0?p:t.attributes),g)});return new e(s,a)}};J_t.Resource=UHe;UHe.EMPTY=new UHe({})});var Pmi=z(Wmi=>{"use strict";Object.defineProperty(Wmi,"__esModule",{value:!0})});var Qmi=z(Omi=>{"use strict";Object.defineProperty(Omi,"__esModule",{value:!0})});var Hmi=z(Mmi=>{"use strict";Object.defineProperty(Mmi,"__esModule",{value:!0})});var Ymi=z(U_t=>{"use strict";Object.defineProperty(U_t,"__esModule",{value:!0});U_t.browserDetector=void 0;var Uwa=K_t(),dmr=class{detect(t){return Promise.resolve(Uwa.browserDetectorSync.detect(t))}};U_t.browserDetector=new dmr});var fmr=z(j_t=>{"use strict";Object.defineProperty(j_t,"__esModule",{value:!0});j_t.envDetectorSync=void 0;var Kwa=(vI(),Ai(BI)),jwa=ZQ(),zwa=ooe(),qwa=fIe(),pmr=class{constructor(){this._MAX_LENGTH=255,this._COMMA_SEPARATOR=",",this._LABEL_KEY_VALUE_SPLITTER="=",this._ERROR_MESSAGE_INVALID_CHARS="should be a ASCII string with a length greater than 0 and not exceed "+this._MAX_LENGTH+" characters.",this._ERROR_MESSAGE_INVALID_VALUE="should be a ASCII string with a length not exceed "+this._MAX_LENGTH+" characters."}detect(t){let r={},s=(0,jwa.getEnv)(),a=s.OTEL_RESOURCE_ATTRIBUTES,o=s.OTEL_SERVICE_NAME;if(a)try{let g=this._parseResourceAttributes(a);Object.assign(r,g)}catch(g){Kwa.diag.debug(`EnvDetector failed: ${g.message}`)}return o&&(r[zwa.SemanticResourceAttributes.SERVICE_NAME]=o),new qwa.Resource(r)}_parseResourceAttributes(t){if(!t)return{};let r={},s=t.split(this._COMMA_SEPARATOR,-1);for(let a of s){let o=a.split(this._LABEL_KEY_VALUE_SPLITTER,-1);if(o.length!==2)continue;let[g,p]=o;if(g=g.trim(),p=p.trim().split(/^"|"$/).join(""),!this._isValidAndNotEmpty(g))throw new Error(`Attribute key ${this._ERROR_MESSAGE_INVALID_CHARS}`);if(!this._isValid(p))throw new Error(`Attribute value ${this._ERROR_MESSAGE_INVALID_VALUE}`);r[g]=decodeURIComponent(p)}return r}_isValid(t){return t.length<=this._MAX_LENGTH&&this._isBaggageOctetString(t)}_isBaggageOctetString(t){for(let r=0;r126)return!1}return!0}_isValidAndNotEmpty(t){return t.length>0&&this._isValid(t)}};j_t.envDetectorSync=new pmr});var Xmi=z(z_t=>{"use strict";Object.defineProperty(z_t,"__esModule",{value:!0});z_t.envDetector=void 0;var $wa=fmr(),Imr=class{detect(t){return Promise.resolve($wa.envDetectorSync.detect(t))}};z_t.envDetector=new Imr});var Jmi=z($_t=>{"use strict";Object.defineProperty($_t,"__esModule",{value:!0});$_t.browserDetectorSync=void 0;var q_t=ooe(),Cmr=K_t(),eTa=(vI(),Ai(BI)),mmr=class{detect(t){if(!(typeof navigator<"u"))return Cmr.Resource.empty();let s={[q_t.SemanticResourceAttributes.PROCESS_RUNTIME_NAME]:"browser",[q_t.SemanticResourceAttributes.PROCESS_RUNTIME_DESCRIPTION]:"Web Browser",[q_t.SemanticResourceAttributes.PROCESS_RUNTIME_VERSION]:navigator.userAgent};return this._getResourceAttributes(s,t)}_getResourceAttributes(t,r){return t[q_t.SemanticResourceAttributes.PROCESS_RUNTIME_VERSION]===""?(eTa.diag.debug("BrowserDetector failed: Unable to find required browser resources. "),Cmr.Resource.empty()):new Cmr.Resource(Object.assign({},t))}};$_t.browserDetectorSync=new mmr});var Umi=z(dK=>{"use strict";var tTa=dK&&dK.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),e0t=dK&&dK.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&tTa(t,e,r)};Object.defineProperty(dK,"__esModule",{value:!0});e0t(Ymi(),dK);e0t(Xmi(),dK);e0t(Jmi(),dK);e0t(fmr(),dK)});var Kmi=z(t0t=>{"use strict";Object.defineProperty(t0t,"__esModule",{value:!0});t0t.isPromiseLike=void 0;var rTa=e=>e!==null&&typeof e=="object"&&typeof e.then=="function";t0t.isPromiseLike=rTa});var zmi=z(pwe=>{"use strict";Object.defineProperty(pwe,"__esModule",{value:!0});pwe.detectResourcesSync=pwe.detectResources=void 0;var KHe=fIe(),dwe=(vI(),Ai(BI)),nTa=Kmi(),iTa=async(e={})=>{let t=await Promise.all((e.detectors||[]).map(async r=>{try{let s=await r.detect(e);return dwe.diag.debug(`${r.constructor.name} found resource.`,s),s}catch(s){return dwe.diag.debug(`${r.constructor.name} failed: ${s.message}`),KHe.Resource.empty()}}));return jmi(t),t.reduce((r,s)=>r.merge(s),KHe.Resource.empty())};pwe.detectResources=iTa;var sTa=(e={})=>{var t;let r=((t=e.detectors)!==null&&t!==void 0?t:[]).map(a=>{try{let o=a.detect(e),g;if((0,nTa.isPromiseLike)(o)){let p=async()=>(await o).attributes;g=new KHe.Resource({},p())}else g=o;return g.waitForAsyncAttributes?g.waitForAsyncAttributes().then(()=>dwe.diag.debug(`${a.constructor.name} found resource.`,g)):dwe.diag.debug(`${a.constructor.name} found resource.`,g),g}catch(o){return dwe.diag.error(`${a.constructor.name} failed: ${o.message}`),KHe.Resource.empty()}}),s=r.reduce((a,o)=>a.merge(o),KHe.Resource.empty());return s.waitForAsyncAttributes&&s.waitForAsyncAttributes().then(()=>{jmi(r)}),s};pwe.detectResourcesSync=sTa;var jmi=e=>{e.forEach(t=>{if(Object.keys(t.attributes).length>0){let r=JSON.stringify(t.attributes,null,4);dwe.diag.verbose(r)}})}});var K_t=z(c3=>{"use strict";var oTa=c3&&c3.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),hIe=c3&&c3.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&oTa(t,e,r)};Object.defineProperty(c3,"__esModule",{value:!0});hIe(fIe(),c3);hIe(Pmi(),c3);hIe(gmr(),c3);hIe(Qmi(),c3);hIe(Hmi(),c3);hIe(Umi(),c3);hIe(zmi(),c3)});var ymr=z(r0t=>{"use strict";Object.defineProperty(r0t,"__esModule",{value:!0});r0t.LogRecord=void 0;var aTa=(vI(),Ai(BI)),jHe=(vI(),Ai(BI)),hmr=ZQ(),_mr=class{constructor(t,r){this.attributes={},this._isReadonly=!1;let{timestamp:s,observedTimestamp:a,severityNumber:o,severityText:g,body:p,attributes:f={},context:m}=r,y=Date.now();if(this.hrTime=(0,hmr.timeInputToHrTime)(s??y),this.hrTimeObserved=(0,hmr.timeInputToHrTime)(a??y),m){let B=jHe.trace.getSpanContext(m);B&&jHe.isSpanContextValid(B)&&(this.spanContext=B)}this.severityNumber=o,this.severityText=g,this.body=p,this.resource=t.resource,this.instrumentationScope=t.instrumentationScope,this._logRecordLimits=t.getLogRecordLimits(),this.setAttributes(f)}set severityText(t){this._isLogRecordReadonly()||(this._severityText=t)}get severityText(){return this._severityText}set severityNumber(t){this._isLogRecordReadonly()||(this._severityNumber=t)}get severityNumber(){return this._severityNumber}set body(t){this._isLogRecordReadonly()||(this._body=t)}get body(){return this._body}setAttribute(t,r){return this._isLogRecordReadonly()?this:r===null?this:(typeof r=="object"&&!Array.isArray(r)&&Object.keys(r).length>0&&(this.attributes[t]=r),t.length===0?(jHe.diag.warn(`Invalid attribute key: ${t}`),this):(0,hmr.isAttributeValue)(r)?Object.keys(this.attributes).length>=this._logRecordLimits.attributeCountLimit&&!Object.prototype.hasOwnProperty.call(this.attributes,t)?this:(this.attributes[t]=this._truncateToSize(r),this):(jHe.diag.warn(`Invalid attribute value set for key: ${t}`),this))}setAttributes(t){for(let[r,s]of Object.entries(t))this.setAttribute(r,s);return this}setBody(t){return this.body=t,this}setSeverityNumber(t){return this.severityNumber=t,this}setSeverityText(t){return this.severityText=t,this}makeReadonly(){this._isReadonly=!0}_truncateToSize(t){let r=this._logRecordLimits.attributeValueLengthLimit||0;return r<=0?(jHe.diag.warn(`Attribute value limit must be positive, got ${r}`),t):typeof t=="string"?this._truncateToLimitUtil(t,r):Array.isArray(t)?t.map(s=>typeof s=="string"?this._truncateToLimitUtil(s,r):s):t}_truncateToLimitUtil(t,r){return t.length<=r?t:t.substring(0,r)}_isLogRecordReadonly(){return this._isReadonly&&aTa.diag.warn("Can not execute the operation on emitted log record"),this._isReadonly}};r0t.LogRecord=_mr});var bmr=z(pK=>{"use strict";Object.defineProperty(pK,"__esModule",{value:!0});pK.DEFAULT_EVENT_DOMAIN=pK.mergeConfig=pK.reconfigureLimits=pK.loadDefaultConfig=void 0;var zHe=ZQ();function qmi(){return{forceFlushTimeoutMillis:3e4,logRecordLimits:{attributeValueLengthLimit:(0,zHe.getEnv)().OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT,attributeCountLimit:(0,zHe.getEnv)().OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT},includeTraceContext:!0}}pK.loadDefaultConfig=qmi;function cTa(e){var t,r,s,a,o,g,p,f;let m=Object.assign({},e.logRecordLimits),y=(0,zHe.getEnvWithoutDefaults)();return m.attributeCountLimit=(a=(s=(r=(t=e.logRecordLimits)===null||t===void 0?void 0:t.attributeCountLimit)!==null&&r!==void 0?r:y.OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT)!==null&&s!==void 0?s:y.OTEL_ATTRIBUTE_COUNT_LIMIT)!==null&&a!==void 0?a:zHe.DEFAULT_ATTRIBUTE_COUNT_LIMIT,m.attributeValueLengthLimit=(f=(p=(g=(o=e.logRecordLimits)===null||o===void 0?void 0:o.attributeValueLengthLimit)!==null&&g!==void 0?g:y.OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT)!==null&&p!==void 0?p:y.OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT)!==null&&f!==void 0?f:zHe.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,Object.assign({},e,{logRecordLimits:m})}pK.reconfigureLimits=cTa;function lTa(e){let t=qmi(),r=Object.assign({},t,e);return r.logRecordLimits=Object.assign({},t.logRecordLimits,e.logRecordLimits||{}),r}pK.mergeConfig=lTa;pK.DEFAULT_EVENT_DOMAIN="default"});var Bmr=z(n0t=>{"use strict";Object.defineProperty(n0t,"__esModule",{value:!0});n0t.Logger=void 0;var uTa=(vI(),Ai(BI)),gTa=ymr(),ATa=bmr(),Emr=class{constructor(t,r,s){this.instrumentationScope=t,this._loggerProvider=s,this._loggerConfig=(0,ATa.mergeConfig)(r),this.resource=s.resource}emit(t){let r=t.context||uTa.context.active(),s=new gTa.LogRecord(this,Object.assign({context:r},t));this.getActiveLogRecordProcessor().onEmit(s,r),s.makeReadonly()}getLogRecordLimits(){return this._loggerConfig.logRecordLimits}getActiveLogRecordProcessor(){return this._loggerProvider.getActiveLogRecordProcessor()}};n0t.Logger=Emr});var $mi=z(i0t=>{"use strict";Object.defineProperty(i0t,"__esModule",{value:!0});i0t.MultiLogRecordProcessor=void 0;var dTa=ZQ(),vmr=class{constructor(t,r){this.processors=t,this.forceFlushTimeoutMillis=r}async forceFlush(){let t=this.forceFlushTimeoutMillis;await Promise.all(this.processors.map(r=>(0,dTa.callWithTimeout)(r.forceFlush(),t)))}onEmit(t){this.processors.forEach(r=>r.onEmit(t))}async shutdown(){await Promise.all(this.processors.map(t=>t.shutdown()))}};i0t.MultiLogRecordProcessor=vmr});var wmr=z(s0t=>{"use strict";Object.defineProperty(s0t,"__esModule",{value:!0});s0t.NoopLogRecordProcessor=void 0;var Smr=class{forceFlush(){return Promise.resolve()}onEmit(t){}shutdown(){return Promise.resolve()}};s0t.NoopLogRecordProcessor=Smr});var ihi=z(_Ie=>{"use strict";Object.defineProperty(_Ie,"__esModule",{value:!0});_Ie.LoggerProvider=_Ie.DEFAULT_LOGGER_NAME=void 0;var qHe=(vI(),Ai(BI)),pTa=nwe(),ehi=K_t(),thi=ZQ(),fTa=Bmr(),rhi=bmr(),nhi=$mi(),ITa=wmr();_Ie.DEFAULT_LOGGER_NAME="unknown";var Tmr=class{constructor(t={}){this._loggers=new Map,this._registeredLogRecordProcessors=[];let{resource:r=ehi.Resource.empty(),logRecordLimits:s,forceFlushTimeoutMillis:a}=(0,thi.merge)({},(0,rhi.loadDefaultConfig)(),(0,rhi.reconfigureLimits)(t));this.resource=ehi.Resource.default().merge(r),this._config={logRecordLimits:s,resource:this.resource,forceFlushTimeoutMillis:a},this._shutdownOnce=new thi.BindOnceFuture(this._shutdown,this),this._activeProcessor=new nhi.MultiLogRecordProcessor([new ITa.NoopLogRecordProcessor],a)}getLogger(t,r,s){if(this._shutdownOnce.isCalled)return qHe.diag.warn("A shutdown LoggerProvider cannot provide a Logger"),pTa.NOOP_LOGGER;t||qHe.diag.warn("Logger requested without instrumentation scope name.");let a=t||_Ie.DEFAULT_LOGGER_NAME,o=`${a}@${r||""}:${s?.schemaUrl||""}`;return this._loggers.has(o)||this._loggers.set(o,new fTa.Logger({name:a,version:r,schemaUrl:s?.schemaUrl},{logRecordLimits:this._config.logRecordLimits},this)),this._loggers.get(o)}addLogRecordProcessor(t){this._registeredLogRecordProcessors.length===0&&this._activeProcessor.shutdown().catch(r=>qHe.diag.error("Error while trying to shutdown current log record processor",r)),this._registeredLogRecordProcessors.push(t),this._activeProcessor=new nhi.MultiLogRecordProcessor(this._registeredLogRecordProcessors,this._config.forceFlushTimeoutMillis)}forceFlush(){return this._shutdownOnce.isCalled?(qHe.diag.warn("invalid attempt to force flush after LoggerProvider shutdown"),this._shutdownOnce.promise):this._activeProcessor.forceFlush()}shutdown(){return this._shutdownOnce.isCalled?(qHe.diag.warn("shutdown may only be called once per LoggerProvider"),this._shutdownOnce.promise):this._shutdownOnce.call()}getActiveLogRecordProcessor(){return this._activeProcessor}getActiveLoggers(){return this._loggers}_shutdown(){return this._activeProcessor.shutdown()}};_Ie.LoggerProvider=Tmr});var shi=z(o0t=>{"use strict";Object.defineProperty(o0t,"__esModule",{value:!0});o0t.ConsoleLogRecordExporter=void 0;var CTa=ZQ(),mTa=ZQ(),Nmr=class{export(t,r){this._sendLogRecords(t,r)}shutdown(){return Promise.resolve()}_exportInfo(t){var r,s,a;return{timestamp:(0,CTa.hrTimeToMicroseconds)(t.hrTime),traceId:(r=t.spanContext)===null||r===void 0?void 0:r.traceId,spanId:(s=t.spanContext)===null||s===void 0?void 0:s.spanId,traceFlags:(a=t.spanContext)===null||a===void 0?void 0:a.traceFlags,severityText:t.severityText,severityNumber:t.severityNumber,body:t.body,attributes:t.attributes}}_sendLogRecords(t,r){for(let s of t)console.dir(this._exportInfo(s),{depth:3});r?.({code:mTa.ExportResultCode.SUCCESS})}};o0t.ConsoleLogRecordExporter=Nmr});var ohi=z(a0t=>{"use strict";Object.defineProperty(a0t,"__esModule",{value:!0});a0t.SimpleLogRecordProcessor=void 0;var Rmr=ZQ(),Dmr=class{constructor(t){this._exporter=t,this._shutdownOnce=new Rmr.BindOnceFuture(this._shutdown,this)}onEmit(t){this._shutdownOnce.isCalled||this._exporter.export([t],r=>{var s;if(r.code!==Rmr.ExportResultCode.SUCCESS){(0,Rmr.globalErrorHandler)((s=r.error)!==null&&s!==void 0?s:new Error(`SimpleLogRecordProcessor: log record export failed (status ${r})`));return}})}forceFlush(){return Promise.resolve()}shutdown(){return this._shutdownOnce.call()}_shutdown(){return this._exporter.shutdown()}};a0t.SimpleLogRecordProcessor=Dmr});var chi=z(c0t=>{"use strict";Object.defineProperty(c0t,"__esModule",{value:!0});c0t.InMemoryLogRecordExporter=void 0;var ahi=ZQ(),xmr=class{constructor(){this._finishedLogRecords=[],this._stopped=!1}export(t,r){if(this._stopped)return r({code:ahi.ExportResultCode.FAILED,error:new Error("Exporter has been stopped")});this._finishedLogRecords.push(...t),r({code:ahi.ExportResultCode.SUCCESS})}shutdown(){return this._stopped=!0,this.reset(),Promise.resolve()}getFinishedLogRecords(){return this._finishedLogRecords}reset(){this._finishedLogRecords=[]}};c0t.InMemoryLogRecordExporter=xmr});var lhi=z(l0t=>{"use strict";Object.defineProperty(l0t,"__esModule",{value:!0});l0t.BatchLogRecordProcessorBase=void 0;var hTa=(vI(),Ai(BI)),fwe=ZQ(),kmr=class{constructor(t,r){var s,a,o,g;this._exporter=t,this._finishedLogRecords=[];let p=(0,fwe.getEnv)();this._maxExportBatchSize=(s=r?.maxExportBatchSize)!==null&&s!==void 0?s:p.OTEL_BLRP_MAX_EXPORT_BATCH_SIZE,this._maxQueueSize=(a=r?.maxQueueSize)!==null&&a!==void 0?a:p.OTEL_BLRP_MAX_QUEUE_SIZE,this._scheduledDelayMillis=(o=r?.scheduledDelayMillis)!==null&&o!==void 0?o:p.OTEL_BLRP_SCHEDULE_DELAY,this._exportTimeoutMillis=(g=r?.exportTimeoutMillis)!==null&&g!==void 0?g:p.OTEL_BLRP_EXPORT_TIMEOUT,this._shutdownOnce=new fwe.BindOnceFuture(this._shutdown,this),this._maxExportBatchSize>this._maxQueueSize&&(hTa.diag.warn("BatchLogRecordProcessor: maxExportBatchSize must be smaller or equal to maxQueueSize, setting maxExportBatchSize to match maxQueueSize"),this._maxExportBatchSize=this._maxQueueSize)}onEmit(t){this._shutdownOnce.isCalled||this._addToBuffer(t)}forceFlush(){return this._shutdownOnce.isCalled?this._shutdownOnce.promise:this._flushAll()}shutdown(){return this._shutdownOnce.call()}async _shutdown(){this.onShutdown(),await this._flushAll(),await this._exporter.shutdown()}_addToBuffer(t){this._finishedLogRecords.length>=this._maxQueueSize||(this._finishedLogRecords.push(t),this._maybeStartTimer())}_flushAll(){return new Promise((t,r)=>{let s=[],a=Math.ceil(this._finishedLogRecords.length/this._maxExportBatchSize);for(let o=0;o{t()}).catch(r)})}_flushOneBatch(){return this._clearTimer(),this._finishedLogRecords.length===0?Promise.resolve():new Promise((t,r)=>{(0,fwe.callWithTimeout)(this._export(this._finishedLogRecords.splice(0,this._maxExportBatchSize)),this._exportTimeoutMillis).then(()=>t()).catch(r)})}_maybeStartTimer(){this._timer===void 0&&(this._timer=setTimeout(()=>{this._flushOneBatch().then(()=>{this._finishedLogRecords.length>0&&(this._clearTimer(),this._maybeStartTimer())}).catch(t=>{(0,fwe.globalErrorHandler)(t)})},this._scheduledDelayMillis),(0,fwe.unrefTimer)(this._timer))}_clearTimer(){this._timer!==void 0&&(clearTimeout(this._timer),this._timer=void 0)}_export(t){return new Promise((r,s)=>{this._exporter.export(t,a=>{var o;if(a.code!==fwe.ExportResultCode.SUCCESS){s((o=a.error)!==null&&o!==void 0?o:new Error(`BatchLogRecordProcessorBase: log record export failed (status ${a})`));return}r(a)})})}};l0t.BatchLogRecordProcessorBase=kmr});var uhi=z(u0t=>{"use strict";Object.defineProperty(u0t,"__esModule",{value:!0});u0t.BatchLogRecordProcessor=void 0;var _Ta=lhi(),Gmr=class extends _Ta.BatchLogRecordProcessorBase{onShutdown(){}};u0t.BatchLogRecordProcessor=Gmr});var ghi=z(g0t=>{"use strict";Object.defineProperty(g0t,"__esModule",{value:!0});g0t.BatchLogRecordProcessor=void 0;var yTa=uhi();Object.defineProperty(g0t,"BatchLogRecordProcessor",{enumerable:!0,get:function(){return yTa.BatchLogRecordProcessor}})});var Ahi=z(A0t=>{"use strict";Object.defineProperty(A0t,"__esModule",{value:!0});A0t.BatchLogRecordProcessor=void 0;var bTa=ghi();Object.defineProperty(A0t,"BatchLogRecordProcessor",{enumerable:!0,get:function(){return bTa.BatchLogRecordProcessor}})});var $He=z(BR=>{"use strict";Object.defineProperty(BR,"__esModule",{value:!0});BR.BatchLogRecordProcessor=BR.InMemoryLogRecordExporter=BR.SimpleLogRecordProcessor=BR.ConsoleLogRecordExporter=BR.NoopLogRecordProcessor=BR.LogRecord=BR.Logger=BR.LoggerProvider=void 0;var ETa=ihi();Object.defineProperty(BR,"LoggerProvider",{enumerable:!0,get:function(){return ETa.LoggerProvider}});var BTa=Bmr();Object.defineProperty(BR,"Logger",{enumerable:!0,get:function(){return BTa.Logger}});var vTa=ymr();Object.defineProperty(BR,"LogRecord",{enumerable:!0,get:function(){return vTa.LogRecord}});var STa=wmr();Object.defineProperty(BR,"NoopLogRecordProcessor",{enumerable:!0,get:function(){return STa.NoopLogRecordProcessor}});var wTa=shi();Object.defineProperty(BR,"ConsoleLogRecordExporter",{enumerable:!0,get:function(){return wTa.ConsoleLogRecordExporter}});var TTa=ohi();Object.defineProperty(BR,"SimpleLogRecordProcessor",{enumerable:!0,get:function(){return TTa.SimpleLogRecordProcessor}});var NTa=chi();Object.defineProperty(BR,"InMemoryLogRecordExporter",{enumerable:!0,get:function(){return NTa.InMemoryLogRecordExporter}});var RTa=Ahi();Object.defineProperty(BR,"BatchLogRecordProcessor",{enumerable:!0,get:function(){return RTa.BatchLogRecordProcessor}})});var eYe=z(uoe=>{"use strict";Object.defineProperty(uoe,"__esModule",{value:!0});uoe.isTracingSuppressed=uoe.unsuppressTracing=uoe.suppressTracing=void 0;var DTa=(vI(),Ai(BI)),Zmr=(0,DTa.createContextKey)("OpenTelemetry SDK Context Key SUPPRESS_TRACING");function xTa(e){return e.setValue(Zmr,!0)}uoe.suppressTracing=xTa;function kTa(e){return e.deleteValue(Zmr)}uoe.unsuppressTracing=kTa;function GTa(e){return e.getValue(Zmr)===!0}uoe.isTracingSuppressed=GTa});var Lmr=z(Uk=>{"use strict";Object.defineProperty(Uk,"__esModule",{value:!0});Uk.BAGGAGE_MAX_TOTAL_LENGTH=Uk.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=Uk.BAGGAGE_MAX_NAME_VALUE_PAIRS=Uk.BAGGAGE_HEADER=Uk.BAGGAGE_ITEMS_SEPARATOR=Uk.BAGGAGE_PROPERTIES_SEPARATOR=Uk.BAGGAGE_KEY_PAIR_SEPARATOR=void 0;Uk.BAGGAGE_KEY_PAIR_SEPARATOR="=";Uk.BAGGAGE_PROPERTIES_SEPARATOR=";";Uk.BAGGAGE_ITEMS_SEPARATOR=",";Uk.BAGGAGE_HEADER="baggage";Uk.BAGGAGE_MAX_NAME_VALUE_PAIRS=180;Uk.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=4096;Uk.BAGGAGE_MAX_TOTAL_LENGTH=8192});var Vmr=z(fK=>{"use strict";Object.defineProperty(fK,"__esModule",{value:!0});fK.parseKeyPairsIntoRecord=fK.parsePairKeyValue=fK.getKeyPairs=fK.serializeKeyPairs=void 0;var FTa=(vI(),Ai(BI)),yIe=Lmr();function ZTa(e){return e.reduce((t,r)=>{let s=`${t}${t!==""?yIe.BAGGAGE_ITEMS_SEPARATOR:""}${r}`;return s.length>yIe.BAGGAGE_MAX_TOTAL_LENGTH?t:s},"")}fK.serializeKeyPairs=ZTa;function LTa(e){return e.getAllEntries().map(([t,r])=>{let s=`${encodeURIComponent(t)}=${encodeURIComponent(r.value)}`;return r.metadata!==void 0&&(s+=yIe.BAGGAGE_PROPERTIES_SEPARATOR+r.metadata.toString()),s})}fK.getKeyPairs=LTa;function dhi(e){let t=e.split(yIe.BAGGAGE_PROPERTIES_SEPARATOR);if(t.length<=0)return;let r=t.shift();if(!r)return;let s=r.indexOf(yIe.BAGGAGE_KEY_PAIR_SEPARATOR);if(s<=0)return;let a=decodeURIComponent(r.substring(0,s).trim()),o=decodeURIComponent(r.substring(s+1).trim()),g;return t.length>0&&(g=(0,FTa.baggageEntryMetadataFromString)(t.join(yIe.BAGGAGE_PROPERTIES_SEPARATOR))),{key:a,value:o,metadata:g}}fK.parsePairKeyValue=dhi;function VTa(e){return typeof e!="string"||e.length===0?{}:e.split(yIe.BAGGAGE_ITEMS_SEPARATOR).map(t=>dhi(t)).filter(t=>t!==void 0&&t.value.length>0).reduce((t,r)=>(t[r.key]=r.value,t),{})}fK.parseKeyPairsIntoRecord=VTa});var phi=z(d0t=>{"use strict";Object.defineProperty(d0t,"__esModule",{value:!0});d0t.W3CBaggagePropagator=void 0;var Wmr=(vI(),Ai(BI)),WTa=eYe(),bIe=Lmr(),Pmr=Vmr(),Omr=class{inject(t,r,s){let a=Wmr.propagation.getBaggage(t);if(!a||(0,WTa.isTracingSuppressed)(t))return;let o=(0,Pmr.getKeyPairs)(a).filter(p=>p.length<=bIe.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS).slice(0,bIe.BAGGAGE_MAX_NAME_VALUE_PAIRS),g=(0,Pmr.serializeKeyPairs)(o);g.length>0&&s.set(r,bIe.BAGGAGE_HEADER,g)}extract(t,r,s){let a=s.get(r,bIe.BAGGAGE_HEADER),o=Array.isArray(a)?a.join(bIe.BAGGAGE_ITEMS_SEPARATOR):a;if(!o)return t;let g={};return o.length===0||(o.split(bIe.BAGGAGE_ITEMS_SEPARATOR).forEach(f=>{let m=(0,Pmr.parsePairKeyValue)(f);if(m){let y={value:m.value};m.metadata&&(y.metadata=m.metadata),g[m.key]=y}}),Object.entries(g).length===0)?t:Wmr.propagation.setBaggage(t,Wmr.propagation.createBaggage(g))}fields(){return[bIe.BAGGAGE_HEADER]}};d0t.W3CBaggagePropagator=Omr});var fhi=z(p0t=>{"use strict";Object.defineProperty(p0t,"__esModule",{value:!0});p0t.AnchoredClock=void 0;var Qmr=class{constructor(t,r){this._monotonicClock=r,this._epochMillis=t.now(),this._performanceMillis=r.now()}now(){let t=this._monotonicClock.now()-this._performanceMillis;return this._epochMillis+t}};p0t.AnchoredClock=Qmr});var _hi=z(goe=>{"use strict";Object.defineProperty(goe,"__esModule",{value:!0});goe.isAttributeValue=goe.isAttributeKey=goe.sanitizeAttributes=void 0;var Ihi=(vI(),Ai(BI));function PTa(e){let t={};if(typeof e!="object"||e==null)return t;for(let[r,s]of Object.entries(e)){if(!Chi(r)){Ihi.diag.warn(`Invalid attribute key: ${r}`);continue}if(!mhi(s)){Ihi.diag.warn(`Invalid attribute value set for key: ${r}`);continue}Array.isArray(s)?t[r]=s.slice():t[r]=s}return t}goe.sanitizeAttributes=PTa;function Chi(e){return typeof e=="string"&&e.length>0}goe.isAttributeKey=Chi;function mhi(e){return e==null?!0:Array.isArray(e)?OTa(e):hhi(e)}goe.isAttributeValue=mhi;function OTa(e){let t;for(let r of e)if(r!=null){if(!t){if(hhi(r)){t=typeof r;continue}return!1}if(typeof r!==t)return!1}return!0}function hhi(e){switch(typeof e){case"number":case"boolean":case"string":return!0}return!1}});var Mmr=z(f0t=>{"use strict";Object.defineProperty(f0t,"__esModule",{value:!0});f0t.loggingErrorHandler=void 0;var QTa=(vI(),Ai(BI));function MTa(){return e=>{QTa.diag.error(HTa(e))}}f0t.loggingErrorHandler=MTa;function HTa(e){return typeof e=="string"?e:JSON.stringify(YTa(e))}function YTa(e){let t={},r=e;for(;r!==null;)Object.getOwnPropertyNames(r).forEach(s=>{if(t[s])return;let a=r[s];a&&(t[s]=String(a))}),r=Object.getPrototypeOf(r);return t}});var Hmr=z(Iwe=>{"use strict";Object.defineProperty(Iwe,"__esModule",{value:!0});Iwe.globalErrorHandler=Iwe.setGlobalErrorHandler=void 0;var XTa=Mmr(),yhi=(0,XTa.loggingErrorHandler)();function JTa(e){yhi=e}Iwe.setGlobalErrorHandler=JTa;function UTa(e){try{yhi(e)}catch{}}Iwe.globalErrorHandler=UTa});var Ymr=z(tYe=>{"use strict";Object.defineProperty(tYe,"__esModule",{value:!0});tYe.TracesSamplerValues=void 0;var KTa;(function(e){e.AlwaysOff="always_off",e.AlwaysOn="always_on",e.ParentBasedAlwaysOff="parentbased_always_off",e.ParentBasedAlwaysOn="parentbased_always_on",e.ParentBasedTraceIdRatio="parentbased_traceidratio",e.TraceIdRatio="traceidratio"})(KTa=tYe.TracesSamplerValues||(tYe.TracesSamplerValues={}))});var Xmr=z(pB=>{"use strict";Object.defineProperty(pB,"__esModule",{value:!0});pB.parseEnvironment=pB.DEFAULT_ENVIRONMENT=pB.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=pB.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=pB.DEFAULT_ATTRIBUTE_COUNT_LIMIT=pB.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=void 0;var Aoe=(vI(),Ai(BI)),jTa=Ymr(),zTa=",",qTa=["OTEL_SDK_DISABLED"];function $Ta(e){return qTa.indexOf(e)>-1}var eNa=["OTEL_BSP_EXPORT_TIMEOUT","OTEL_BSP_MAX_EXPORT_BATCH_SIZE","OTEL_BSP_MAX_QUEUE_SIZE","OTEL_BSP_SCHEDULE_DELAY","OTEL_BLRP_EXPORT_TIMEOUT","OTEL_BLRP_MAX_EXPORT_BATCH_SIZE","OTEL_BLRP_MAX_QUEUE_SIZE","OTEL_BLRP_SCHEDULE_DELAY","OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_EVENT_COUNT_LIMIT","OTEL_SPAN_LINK_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT","OTEL_EXPORTER_OTLP_TIMEOUT","OTEL_EXPORTER_OTLP_TRACES_TIMEOUT","OTEL_EXPORTER_OTLP_METRICS_TIMEOUT","OTEL_EXPORTER_OTLP_LOGS_TIMEOUT","OTEL_EXPORTER_JAEGER_AGENT_PORT"];function tNa(e){return eNa.indexOf(e)>-1}var rNa=["OTEL_NO_PATCH_MODULES","OTEL_PROPAGATORS","OTEL_SEMCONV_STABILITY_OPT_IN"];function nNa(e){return rNa.indexOf(e)>-1}pB.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=1/0;pB.DEFAULT_ATTRIBUTE_COUNT_LIMIT=128;pB.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=128;pB.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=128;pB.DEFAULT_ENVIRONMENT={OTEL_SDK_DISABLED:!1,CONTAINER_NAME:"",ECS_CONTAINER_METADATA_URI_V4:"",ECS_CONTAINER_METADATA_URI:"",HOSTNAME:"",KUBERNETES_SERVICE_HOST:"",NAMESPACE:"",OTEL_BSP_EXPORT_TIMEOUT:3e4,OTEL_BSP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BSP_MAX_QUEUE_SIZE:2048,OTEL_BSP_SCHEDULE_DELAY:5e3,OTEL_BLRP_EXPORT_TIMEOUT:3e4,OTEL_BLRP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BLRP_MAX_QUEUE_SIZE:2048,OTEL_BLRP_SCHEDULE_DELAY:5e3,OTEL_EXPORTER_JAEGER_AGENT_HOST:"",OTEL_EXPORTER_JAEGER_AGENT_PORT:6832,OTEL_EXPORTER_JAEGER_ENDPOINT:"",OTEL_EXPORTER_JAEGER_PASSWORD:"",OTEL_EXPORTER_JAEGER_USER:"",OTEL_EXPORTER_OTLP_ENDPOINT:"",OTEL_EXPORTER_OTLP_TRACES_ENDPOINT:"",OTEL_EXPORTER_OTLP_METRICS_ENDPOINT:"",OTEL_EXPORTER_OTLP_LOGS_ENDPOINT:"",OTEL_EXPORTER_OTLP_HEADERS:"",OTEL_EXPORTER_OTLP_TRACES_HEADERS:"",OTEL_EXPORTER_OTLP_METRICS_HEADERS:"",OTEL_EXPORTER_OTLP_LOGS_HEADERS:"",OTEL_EXPORTER_OTLP_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_TRACES_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_METRICS_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_LOGS_TIMEOUT:1e4,OTEL_EXPORTER_ZIPKIN_ENDPOINT:"http://localhost:9411/api/v2/spans",OTEL_LOG_LEVEL:Aoe.DiagLogLevel.INFO,OTEL_NO_PATCH_MODULES:[],OTEL_PROPAGATORS:["tracecontext","baggage"],OTEL_RESOURCE_ATTRIBUTES:"",OTEL_SERVICE_NAME:"",OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT:pB.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_ATTRIBUTE_COUNT_LIMIT:pB.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT:pB.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT:pB.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT:pB.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT:pB.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_EVENT_COUNT_LIMIT:128,OTEL_SPAN_LINK_COUNT_LIMIT:128,OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT:pB.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT:pB.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT,OTEL_TRACES_EXPORTER:"",OTEL_TRACES_SAMPLER:jTa.TracesSamplerValues.ParentBasedAlwaysOn,OTEL_TRACES_SAMPLER_ARG:"",OTEL_LOGS_EXPORTER:"",OTEL_EXPORTER_OTLP_INSECURE:"",OTEL_EXPORTER_OTLP_TRACES_INSECURE:"",OTEL_EXPORTER_OTLP_METRICS_INSECURE:"",OTEL_EXPORTER_OTLP_LOGS_INSECURE:"",OTEL_EXPORTER_OTLP_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_COMPRESSION:"",OTEL_EXPORTER_OTLP_TRACES_COMPRESSION:"",OTEL_EXPORTER_OTLP_METRICS_COMPRESSION:"",OTEL_EXPORTER_OTLP_LOGS_COMPRESSION:"",OTEL_EXPORTER_OTLP_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_TRACES_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_LOGS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE:"cumulative",OTEL_SEMCONV_STABILITY_OPT_IN:[]};function iNa(e,t,r){if(typeof r[e]>"u")return;let s=String(r[e]);t[e]=s.toLowerCase()==="true"}function sNa(e,t,r,s=-1/0,a=1/0){if(typeof r[e]<"u"){let o=Number(r[e]);isNaN(o)||(oa?t[e]=a:t[e]=o)}}function oNa(e,t,r,s=zTa){let a=r[e];typeof a=="string"&&(t[e]=a.split(s).map(o=>o.trim()))}var aNa={ALL:Aoe.DiagLogLevel.ALL,VERBOSE:Aoe.DiagLogLevel.VERBOSE,DEBUG:Aoe.DiagLogLevel.DEBUG,INFO:Aoe.DiagLogLevel.INFO,WARN:Aoe.DiagLogLevel.WARN,ERROR:Aoe.DiagLogLevel.ERROR,NONE:Aoe.DiagLogLevel.NONE};function cNa(e,t,r){let s=r[e];if(typeof s=="string"){let a=aNa[s.toUpperCase()];a!=null&&(t[e]=a)}}function lNa(e){let t={};for(let r in pB.DEFAULT_ENVIRONMENT){let s=r;switch(s){case"OTEL_LOG_LEVEL":cNa(s,t,e);break;default:if($Ta(s))iNa(s,t,e);else if(tNa(s))sNa(s,t,e);else if(nNa(s))oNa(s,t,e);else{let a=e[s];typeof a<"u"&&a!==null&&(t[s]=String(a))}}}return t}pB.parseEnvironment=lNa});var bhi=z(Cwe=>{"use strict";Object.defineProperty(Cwe,"__esModule",{value:!0});Cwe.getEnvWithoutDefaults=Cwe.getEnv=void 0;var Jmr=Xmr();function uNa(){let e=(0,Jmr.parseEnvironment)(process.env);return Object.assign({},Jmr.DEFAULT_ENVIRONMENT,e)}Cwe.getEnv=uNa;function gNa(){return(0,Jmr.parseEnvironment)(process.env)}Cwe.getEnvWithoutDefaults=gNa});var Ehi=z(I0t=>{"use strict";Object.defineProperty(I0t,"__esModule",{value:!0});I0t._globalThis=void 0;I0t._globalThis=typeof globalThis=="object"?globalThis:global});var Umr=z(C0t=>{"use strict";Object.defineProperty(C0t,"__esModule",{value:!0});C0t.hexToBinary=void 0;function Bhi(e){return e>=48&&e<=57?e-48:e>=97&&e<=102?e-87:e-55}function ANa(e){let t=new Uint8Array(e.length/2),r=0;for(let s=0;s{"use strict";Object.defineProperty(m0t,"__esModule",{value:!0});m0t.hexToBase64=void 0;var dNa=Umr();function pNa(e){return Buffer.from((0,dNa.hexToBinary)(e)).toString("base64")}m0t.hexToBase64=pNa});var Thi=z(_0t=>{"use strict";Object.defineProperty(_0t,"__esModule",{value:!0});_0t.RandomIdGenerator=void 0;var fNa=8,whi=16,Kmr=class{constructor(){this.generateTraceId=Shi(whi),this.generateSpanId=Shi(fNa)}};_0t.RandomIdGenerator=Kmr;var h0t=Buffer.allocUnsafe(whi);function Shi(e){return function(){for(let r=0;r>>0,r*4);for(let r=0;r0);r++)r===e-1&&(h0t[e-1]=1);return h0t.toString("hex",0,e)}}});var Nhi=z(y0t=>{"use strict";Object.defineProperty(y0t,"__esModule",{value:!0});y0t.otperformance=void 0;var INa=xt("perf_hooks");y0t.otperformance=INa.performance});var jmr=z(b0t=>{"use strict";Object.defineProperty(b0t,"__esModule",{value:!0});b0t.VERSION=void 0;b0t.VERSION="1.27.0"});function lS(e){for(var t={},r=e.length,s=0;s{});var Rhi,Dhi,xhi,khi,Ghi,Fhi,Zhi,Lhi,Vhi,Whi,Phi,Ohi,Qhi,Mhi,Hhi,Yhi,Xhi,Jhi,Uhi,Khi,jhi,zhi,qhi,$hi,e_i,t_i,r_i,n_i,i_i,s_i,o_i,a_i,c_i,l_i,u_i,g_i,A_i,d_i,p_i,f_i,I_i,C_i,m_i,h_i,__i,y_i,b_i,E_i,B_i,v_i,S_i,w_i,T_i,N_i,R_i,D_i,x_i,k_i,G_i,F_i,Z_i,L_i,V_i,W_i,P_i,O_i,Q_i,M_i,H_i,Y_i,X_i,J_i,U_i,K_i,j_i,z_i,q_i,$_i,e0i,t0i,r0i,n0i,i0i,s0i,o0i,a0i,c0i,l0i,u0i,g0i,A0i,d0i,p0i,f0i,I0i,C0i,m0i,h0i,_0i,y0i,b0i,E0i,B0i,v0i,S0i,w0i,T0i,N0i,R0i,D0i,x0i,k0i,G0i,F0i,Z0i,L0i,V0i,W0i,P0i,O0i,Q0i,M0i,H0i,Y0i,X0i,J0i,U0i,K0i,CNa,mNa,hNa,_Na,yNa,bNa,ENa,BNa,vNa,SNa,wNa,TNa,NNa,RNa,DNa,xNa,kNa,GNa,FNa,ZNa,LNa,VNa,WNa,PNa,ONa,QNa,MNa,HNa,YNa,XNa,JNa,UNa,KNa,jNa,zNa,qNa,$Na,eRa,tRa,rRa,nRa,iRa,sRa,oRa,aRa,cRa,lRa,uRa,gRa,ARa,dRa,pRa,fRa,IRa,CRa,mRa,hRa,_Ra,yRa,bRa,ERa,BRa,vRa,SRa,wRa,TRa,NRa,RRa,DRa,xRa,kRa,GRa,FRa,ZRa,LRa,VRa,WRa,PRa,ORa,QRa,MRa,HRa,YRa,XRa,JRa,URa,KRa,jRa,zRa,qRa,$Ra,eDa,tDa,rDa,nDa,iDa,sDa,oDa,aDa,cDa,lDa,uDa,gDa,ADa,dDa,pDa,fDa,IDa,CDa,mDa,hDa,_Da,yDa,bDa,EDa,BDa,vDa,SDa,wDa,TDa,NDa,RDa,DDa,xDa,kDa,GDa,FDa,ZDa,LDa,j0i,z0i,q0i,$0i,eyi,tyi,ryi,nyi,iyi,syi,oyi,ayi,cyi,lyi,uyi,gyi,Ayi,dyi,pyi,fyi,Iyi,Cyi,myi,hyi,_yi,yyi,byi,Eyi,Byi,vyi,Syi,wyi,Tyi,Nyi,Ryi,Dyi,xyi,kyi,Gyi,Fyi,Zyi,Lyi,Vyi,Wyi,Pyi,Oyi,Qyi,VDa,WDa,PDa,ODa,QDa,MDa,HDa,YDa,XDa,JDa,UDa,KDa,jDa,zDa,qDa,$Da,exa,txa,rxa,nxa,ixa,sxa,oxa,axa,cxa,lxa,uxa,gxa,Axa,dxa,pxa,fxa,Ixa,Cxa,mxa,hxa,_xa,yxa,bxa,Exa,Bxa,vxa,Sxa,wxa,Txa,Nxa,Rxa,Dxa,Myi,Hyi,Yyi,Xyi,Jyi,Uyi,Kyi,jyi,zyi,qyi,$yi,xxa,kxa,Gxa,Fxa,Zxa,Lxa,Vxa,Wxa,Pxa,Oxa,Qxa,Mxa,ebi,tbi,rbi,nbi,ibi,Hxa,Yxa,Xxa,Jxa,Uxa,Kxa,sbi,obi,abi,jxa,zxa,qxa,$xa,cbi,lbi,ubi,gbi,eka,tka,rka,nka,ika,Abi,dbi,pbi,fbi,Ibi,Cbi,mbi,ska,oka,aka,cka,lka,uka,gka,Aka,hbi,_bi,ybi,bbi,Ebi,dka,pka,fka,Ika,Cka,mka,Bbi,vbi,Sbi,wbi,Tbi,Nbi,Rbi,Dbi,xbi,kbi,Gbi,Fbi,Zbi,Lbi,Vbi,Wbi,Pbi,Obi,Qbi,Mbi,Hbi,hka,_ka,yka,bka,Eka,Bka,vka,Ska,wka,Tka,Nka,Rka,Dka,xka,kka,Gka,Fka,Zka,Lka,Vka,Wka,Pka,Ybi,Xbi,Jbi,Ubi,Kbi,Oka,Qka,Mka,Hka,Yka,Xka,jbi,zbi,Jka,Uka,Kka,qbi,$bi,jka,zka,qka,eEi,tEi,rEi,nEi,iEi,sEi,oEi,aEi,cEi,lEi,uEi,gEi,AEi,dEi,pEi,fEi,IEi,$ka,eGa,tGa,rGa,nGa,iGa,sGa,oGa,aGa,cGa,lGa,uGa,gGa,AGa,dGa,pGa,fGa,IGa,CEi,mEi,CGa,mGa,hGa,hEi=cc(()=>{zmr();Rhi="aws.lambda.invoked_arn",Dhi="db.system",xhi="db.connection_string",khi="db.user",Ghi="db.jdbc.driver_classname",Fhi="db.name",Zhi="db.statement",Lhi="db.operation",Vhi="db.mssql.instance_name",Whi="db.cassandra.keyspace",Phi="db.cassandra.page_size",Ohi="db.cassandra.consistency_level",Qhi="db.cassandra.table",Mhi="db.cassandra.idempotence",Hhi="db.cassandra.speculative_execution_count",Yhi="db.cassandra.coordinator.id",Xhi="db.cassandra.coordinator.dc",Jhi="db.hbase.namespace",Uhi="db.redis.database_index",Khi="db.mongodb.collection",jhi="db.sql.table",zhi="exception.type",qhi="exception.message",$hi="exception.stacktrace",e_i="exception.escaped",t_i="faas.trigger",r_i="faas.execution",n_i="faas.document.collection",i_i="faas.document.operation",s_i="faas.document.time",o_i="faas.document.name",a_i="faas.time",c_i="faas.cron",l_i="faas.coldstart",u_i="faas.invoked_name",g_i="faas.invoked_provider",A_i="faas.invoked_region",d_i="net.transport",p_i="net.peer.ip",f_i="net.peer.port",I_i="net.peer.name",C_i="net.host.ip",m_i="net.host.port",h_i="net.host.name",__i="net.host.connection.type",y_i="net.host.connection.subtype",b_i="net.host.carrier.name",E_i="net.host.carrier.mcc",B_i="net.host.carrier.mnc",v_i="net.host.carrier.icc",S_i="peer.service",w_i="enduser.id",T_i="enduser.role",N_i="enduser.scope",R_i="thread.id",D_i="thread.name",x_i="code.function",k_i="code.namespace",G_i="code.filepath",F_i="code.lineno",Z_i="http.method",L_i="http.url",V_i="http.target",W_i="http.host",P_i="http.scheme",O_i="http.status_code",Q_i="http.flavor",M_i="http.user_agent",H_i="http.request_content_length",Y_i="http.request_content_length_uncompressed",X_i="http.response_content_length",J_i="http.response_content_length_uncompressed",U_i="http.server_name",K_i="http.route",j_i="http.client_ip",z_i="aws.dynamodb.table_names",q_i="aws.dynamodb.consumed_capacity",$_i="aws.dynamodb.item_collection_metrics",e0i="aws.dynamodb.provisioned_read_capacity",t0i="aws.dynamodb.provisioned_write_capacity",r0i="aws.dynamodb.consistent_read",n0i="aws.dynamodb.projection",i0i="aws.dynamodb.limit",s0i="aws.dynamodb.attributes_to_get",o0i="aws.dynamodb.index_name",a0i="aws.dynamodb.select",c0i="aws.dynamodb.global_secondary_indexes",l0i="aws.dynamodb.local_secondary_indexes",u0i="aws.dynamodb.exclusive_start_table",g0i="aws.dynamodb.table_count",A0i="aws.dynamodb.scan_forward",d0i="aws.dynamodb.segment",p0i="aws.dynamodb.total_segments",f0i="aws.dynamodb.count",I0i="aws.dynamodb.scanned_count",C0i="aws.dynamodb.attribute_definitions",m0i="aws.dynamodb.global_secondary_index_updates",h0i="messaging.system",_0i="messaging.destination",y0i="messaging.destination_kind",b0i="messaging.temp_destination",E0i="messaging.protocol",B0i="messaging.protocol_version",v0i="messaging.url",S0i="messaging.message_id",w0i="messaging.conversation_id",T0i="messaging.message_payload_size_bytes",N0i="messaging.message_payload_compressed_size_bytes",R0i="messaging.operation",D0i="messaging.consumer_id",x0i="messaging.rabbitmq.routing_key",k0i="messaging.kafka.message_key",G0i="messaging.kafka.consumer_group",F0i="messaging.kafka.client_id",Z0i="messaging.kafka.partition",L0i="messaging.kafka.tombstone",V0i="rpc.system",W0i="rpc.service",P0i="rpc.method",O0i="rpc.grpc.status_code",Q0i="rpc.jsonrpc.version",M0i="rpc.jsonrpc.request_id",H0i="rpc.jsonrpc.error_code",Y0i="rpc.jsonrpc.error_message",X0i="message.type",J0i="message.id",U0i="message.compressed_size",K0i="message.uncompressed_size",CNa=Rhi,mNa=Dhi,hNa=xhi,_Na=khi,yNa=Ghi,bNa=Fhi,ENa=Zhi,BNa=Lhi,vNa=Vhi,SNa=Whi,wNa=Phi,TNa=Ohi,NNa=Qhi,RNa=Mhi,DNa=Hhi,xNa=Yhi,kNa=Xhi,GNa=Jhi,FNa=Uhi,ZNa=Khi,LNa=jhi,VNa=zhi,WNa=qhi,PNa=$hi,ONa=e_i,QNa=t_i,MNa=r_i,HNa=n_i,YNa=i_i,XNa=s_i,JNa=o_i,UNa=a_i,KNa=c_i,jNa=l_i,zNa=u_i,qNa=g_i,$Na=A_i,eRa=d_i,tRa=p_i,rRa=f_i,nRa=I_i,iRa=C_i,sRa=m_i,oRa=h_i,aRa=__i,cRa=y_i,lRa=b_i,uRa=E_i,gRa=B_i,ARa=v_i,dRa=S_i,pRa=w_i,fRa=T_i,IRa=N_i,CRa=R_i,mRa=D_i,hRa=x_i,_Ra=k_i,yRa=G_i,bRa=F_i,ERa=Z_i,BRa=L_i,vRa=V_i,SRa=W_i,wRa=P_i,TRa=O_i,NRa=Q_i,RRa=M_i,DRa=H_i,xRa=Y_i,kRa=X_i,GRa=J_i,FRa=U_i,ZRa=K_i,LRa=j_i,VRa=z_i,WRa=q_i,PRa=$_i,ORa=e0i,QRa=t0i,MRa=r0i,HRa=n0i,YRa=i0i,XRa=s0i,JRa=o0i,URa=a0i,KRa=c0i,jRa=l0i,zRa=u0i,qRa=g0i,$Ra=A0i,eDa=d0i,tDa=p0i,rDa=f0i,nDa=I0i,iDa=C0i,sDa=m0i,oDa=h0i,aDa=_0i,cDa=y0i,lDa=b0i,uDa=E0i,gDa=B0i,ADa=v0i,dDa=S0i,pDa=w0i,fDa=T0i,IDa=N0i,CDa=R0i,mDa=D0i,hDa=x0i,_Da=k0i,yDa=G0i,bDa=F0i,EDa=Z0i,BDa=L0i,vDa=V0i,SDa=W0i,wDa=P0i,TDa=O0i,NDa=Q0i,RDa=M0i,DDa=H0i,xDa=Y0i,kDa=X0i,GDa=J0i,FDa=U0i,ZDa=K0i,LDa=lS([Rhi,Dhi,xhi,khi,Ghi,Fhi,Zhi,Lhi,Vhi,Whi,Phi,Ohi,Qhi,Mhi,Hhi,Yhi,Xhi,Jhi,Uhi,Khi,jhi,zhi,qhi,$hi,e_i,t_i,r_i,n_i,i_i,s_i,o_i,a_i,c_i,l_i,u_i,g_i,A_i,d_i,p_i,f_i,I_i,C_i,m_i,h_i,__i,y_i,b_i,E_i,B_i,v_i,S_i,w_i,T_i,N_i,R_i,D_i,x_i,k_i,G_i,F_i,Z_i,L_i,V_i,W_i,P_i,O_i,Q_i,M_i,H_i,Y_i,X_i,J_i,U_i,K_i,j_i,z_i,q_i,$_i,e0i,t0i,r0i,n0i,i0i,s0i,o0i,a0i,c0i,l0i,u0i,g0i,A0i,d0i,p0i,f0i,I0i,C0i,m0i,h0i,_0i,y0i,b0i,E0i,B0i,v0i,S0i,w0i,T0i,N0i,R0i,D0i,x0i,k0i,G0i,F0i,Z0i,L0i,V0i,W0i,P0i,O0i,Q0i,M0i,H0i,Y0i,X0i,J0i,U0i,K0i]),j0i="other_sql",z0i="mssql",q0i="mysql",$0i="oracle",eyi="db2",tyi="postgresql",ryi="redshift",nyi="hive",iyi="cloudscape",syi="hsqldb",oyi="progress",ayi="maxdb",cyi="hanadb",lyi="ingres",uyi="firstsql",gyi="edb",Ayi="cache",dyi="adabas",pyi="firebird",fyi="derby",Iyi="filemaker",Cyi="informix",myi="instantdb",hyi="interbase",_yi="mariadb",yyi="netezza",byi="pervasive",Eyi="pointbase",Byi="sqlite",vyi="sybase",Syi="teradata",wyi="vertica",Tyi="h2",Nyi="coldfusion",Ryi="cassandra",Dyi="hbase",xyi="mongodb",kyi="redis",Gyi="couchbase",Fyi="couchdb",Zyi="cosmosdb",Lyi="dynamodb",Vyi="neo4j",Wyi="geode",Pyi="elasticsearch",Oyi="memcached",Qyi="cockroachdb",VDa=j0i,WDa=z0i,PDa=q0i,ODa=$0i,QDa=eyi,MDa=tyi,HDa=ryi,YDa=nyi,XDa=iyi,JDa=syi,UDa=oyi,KDa=ayi,jDa=cyi,zDa=lyi,qDa=uyi,$Da=gyi,exa=Ayi,txa=dyi,rxa=pyi,nxa=fyi,ixa=Iyi,sxa=Cyi,oxa=myi,axa=hyi,cxa=_yi,lxa=yyi,uxa=byi,gxa=Eyi,Axa=Byi,dxa=vyi,pxa=Syi,fxa=wyi,Ixa=Tyi,Cxa=Nyi,mxa=Ryi,hxa=Dyi,_xa=xyi,yxa=kyi,bxa=Gyi,Exa=Fyi,Bxa=Zyi,vxa=Lyi,Sxa=Vyi,wxa=Wyi,Txa=Pyi,Nxa=Oyi,Rxa=Qyi,Dxa=lS([j0i,z0i,q0i,$0i,eyi,tyi,ryi,nyi,iyi,syi,oyi,ayi,cyi,lyi,uyi,gyi,Ayi,dyi,pyi,fyi,Iyi,Cyi,myi,hyi,_yi,yyi,byi,Eyi,Byi,vyi,Syi,wyi,Tyi,Nyi,Ryi,Dyi,xyi,kyi,Gyi,Fyi,Zyi,Lyi,Vyi,Wyi,Pyi,Oyi,Qyi]),Myi="all",Hyi="each_quorum",Yyi="quorum",Xyi="local_quorum",Jyi="one",Uyi="two",Kyi="three",jyi="local_one",zyi="any",qyi="serial",$yi="local_serial",xxa=Myi,kxa=Hyi,Gxa=Yyi,Fxa=Xyi,Zxa=Jyi,Lxa=Uyi,Vxa=Kyi,Wxa=jyi,Pxa=zyi,Oxa=qyi,Qxa=$yi,Mxa=lS([Myi,Hyi,Yyi,Xyi,Jyi,Uyi,Kyi,jyi,zyi,qyi,$yi]),ebi="datasource",tbi="http",rbi="pubsub",nbi="timer",ibi="other",Hxa=ebi,Yxa=tbi,Xxa=rbi,Jxa=nbi,Uxa=ibi,Kxa=lS([ebi,tbi,rbi,nbi,ibi]),sbi="insert",obi="edit",abi="delete",jxa=sbi,zxa=obi,qxa=abi,$xa=lS([sbi,obi,abi]),cbi="alibaba_cloud",lbi="aws",ubi="azure",gbi="gcp",eka=cbi,tka=lbi,rka=ubi,nka=gbi,ika=lS([cbi,lbi,ubi,gbi]),Abi="ip_tcp",dbi="ip_udp",pbi="ip",fbi="unix",Ibi="pipe",Cbi="inproc",mbi="other",ska=Abi,oka=dbi,aka=pbi,cka=fbi,lka=Ibi,uka=Cbi,gka=mbi,Aka=lS([Abi,dbi,pbi,fbi,Ibi,Cbi,mbi]),hbi="wifi",_bi="wired",ybi="cell",bbi="unavailable",Ebi="unknown",dka=hbi,pka=_bi,fka=ybi,Ika=bbi,Cka=Ebi,mka=lS([hbi,_bi,ybi,bbi,Ebi]),Bbi="gprs",vbi="edge",Sbi="umts",wbi="cdma",Tbi="evdo_0",Nbi="evdo_a",Rbi="cdma2000_1xrtt",Dbi="hsdpa",xbi="hsupa",kbi="hspa",Gbi="iden",Fbi="evdo_b",Zbi="lte",Lbi="ehrpd",Vbi="hspap",Wbi="gsm",Pbi="td_scdma",Obi="iwlan",Qbi="nr",Mbi="nrnsa",Hbi="lte_ca",hka=Bbi,_ka=vbi,yka=Sbi,bka=wbi,Eka=Tbi,Bka=Nbi,vka=Rbi,Ska=Dbi,wka=xbi,Tka=kbi,Nka=Gbi,Rka=Fbi,Dka=Zbi,xka=Lbi,kka=Vbi,Gka=Wbi,Fka=Pbi,Zka=Obi,Lka=Qbi,Vka=Mbi,Wka=Hbi,Pka=lS([Bbi,vbi,Sbi,wbi,Tbi,Nbi,Rbi,Dbi,xbi,kbi,Gbi,Fbi,Zbi,Lbi,Vbi,Wbi,Pbi,Obi,Qbi,Mbi,Hbi]),Ybi="1.0",Xbi="1.1",Jbi="2.0",Ubi="SPDY",Kbi="QUIC",Oka=Ybi,Qka=Xbi,Mka=Jbi,Hka=Ubi,Yka=Kbi,Xka={HTTP_1_0:Ybi,HTTP_1_1:Xbi,HTTP_2_0:Jbi,SPDY:Ubi,QUIC:Kbi},jbi="queue",zbi="topic",Jka=jbi,Uka=zbi,Kka=lS([jbi,zbi]),qbi="receive",$bi="process",jka=qbi,zka=$bi,qka=lS([qbi,$bi]),eEi=0,tEi=1,rEi=2,nEi=3,iEi=4,sEi=5,oEi=6,aEi=7,cEi=8,lEi=9,uEi=10,gEi=11,AEi=12,dEi=13,pEi=14,fEi=15,IEi=16,$ka=eEi,eGa=tEi,tGa=rEi,rGa=nEi,nGa=iEi,iGa=sEi,sGa=oEi,oGa=aEi,aGa=cEi,cGa=lEi,lGa=uEi,uGa=gEi,gGa=AEi,AGa=dEi,dGa=pEi,pGa=fEi,fGa=IEi,IGa={OK:eEi,CANCELLED:tEi,UNKNOWN:rEi,INVALID_ARGUMENT:nEi,DEADLINE_EXCEEDED:iEi,NOT_FOUND:sEi,ALREADY_EXISTS:oEi,PERMISSION_DENIED:aEi,RESOURCE_EXHAUSTED:cEi,FAILED_PRECONDITION:lEi,ABORTED:uEi,OUT_OF_RANGE:gEi,UNIMPLEMENTED:AEi,INTERNAL:dEi,UNAVAILABLE:pEi,DATA_LOSS:fEi,UNAUTHENTICATED:IEi},CEi="SENT",mEi="RECEIVED",CGa=CEi,mGa=mEi,hGa=lS([CEi,mEi])});var _Ei=cc(()=>{hEi()});var yEi,bEi,EEi,BEi,vEi,SEi,wEi,TEi,NEi,REi,DEi,xEi,kEi,GEi,FEi,ZEi,LEi,VEi,WEi,PEi,OEi,QEi,MEi,HEi,YEi,XEi,JEi,UEi,KEi,jEi,zEi,qEi,$Ei,e1i,t1i,r1i,n1i,i1i,s1i,o1i,a1i,c1i,l1i,u1i,g1i,A1i,d1i,p1i,f1i,I1i,C1i,m1i,h1i,_1i,y1i,b1i,E1i,B1i,v1i,S1i,w1i,T1i,N1i,R1i,D1i,x1i,k1i,G1i,F1i,Z1i,L1i,V1i,W1i,P1i,O1i,Q1i,M1i,H1i,Y1i,X1i,J1i,_Ga,yGa,bGa,EGa,BGa,vGa,SGa,wGa,TGa,NGa,RGa,DGa,xGa,kGa,GGa,FGa,ZGa,LGa,VGa,WGa,PGa,OGa,QGa,MGa,HGa,YGa,XGa,JGa,UGa,KGa,jGa,zGa,qGa,$Ga,eFa,tFa,rFa,nFa,iFa,sFa,oFa,aFa,cFa,lFa,uFa,gFa,AFa,dFa,pFa,fFa,IFa,CFa,mFa,hFa,_Fa,yFa,bFa,EFa,BFa,vFa,SFa,wFa,TFa,NFa,RFa,DFa,xFa,kFa,GFa,FFa,ZFa,LFa,VFa,WFa,PFa,OFa,QFa,MFa,HFa,YFa,XFa,JFa,U1i,K1i,j1i,z1i,UFa,KFa,jFa,zFa,qFa,q1i,$1i,e2i,t2i,r2i,n2i,i2i,s2i,o2i,a2i,c2i,l2i,u2i,g2i,A2i,d2i,p2i,$Fa,eZa,tZa,rZa,nZa,iZa,sZa,oZa,aZa,cZa,lZa,uZa,gZa,AZa,dZa,pZa,fZa,IZa,f2i,I2i,CZa,mZa,hZa,C2i,m2i,h2i,_2i,y2i,b2i,E2i,_Za,yZa,bZa,EZa,BZa,vZa,SZa,wZa,B2i,v2i,S2i,w2i,T2i,N2i,R2i,D2i,x2i,k2i,G2i,TZa,NZa,RZa,DZa,xZa,kZa,GZa,FZa,ZZa,LZa,VZa,WZa,F2i,Z2i,L2i,V2i,W2i,P2i,O2i,Q2i,M2i,H2i,PZa,OZa,QZa,MZa,HZa,YZa,XZa,JZa,UZa,KZa,jZa,Y2i=cc(()=>{zmr();yEi="cloud.provider",bEi="cloud.account.id",EEi="cloud.region",BEi="cloud.availability_zone",vEi="cloud.platform",SEi="aws.ecs.container.arn",wEi="aws.ecs.cluster.arn",TEi="aws.ecs.launchtype",NEi="aws.ecs.task.arn",REi="aws.ecs.task.family",DEi="aws.ecs.task.revision",xEi="aws.eks.cluster.arn",kEi="aws.log.group.names",GEi="aws.log.group.arns",FEi="aws.log.stream.names",ZEi="aws.log.stream.arns",LEi="container.name",VEi="container.id",WEi="container.runtime",PEi="container.image.name",OEi="container.image.tag",QEi="deployment.environment",MEi="device.id",HEi="device.model.identifier",YEi="device.model.name",XEi="faas.name",JEi="faas.id",UEi="faas.version",KEi="faas.instance",jEi="faas.max_memory",zEi="host.id",qEi="host.name",$Ei="host.type",e1i="host.arch",t1i="host.image.name",r1i="host.image.id",n1i="host.image.version",i1i="k8s.cluster.name",s1i="k8s.node.name",o1i="k8s.node.uid",a1i="k8s.namespace.name",c1i="k8s.pod.uid",l1i="k8s.pod.name",u1i="k8s.container.name",g1i="k8s.replicaset.uid",A1i="k8s.replicaset.name",d1i="k8s.deployment.uid",p1i="k8s.deployment.name",f1i="k8s.statefulset.uid",I1i="k8s.statefulset.name",C1i="k8s.daemonset.uid",m1i="k8s.daemonset.name",h1i="k8s.job.uid",_1i="k8s.job.name",y1i="k8s.cronjob.uid",b1i="k8s.cronjob.name",E1i="os.type",B1i="os.description",v1i="os.name",S1i="os.version",w1i="process.pid",T1i="process.executable.name",N1i="process.executable.path",R1i="process.command",D1i="process.command_line",x1i="process.command_args",k1i="process.owner",G1i="process.runtime.name",F1i="process.runtime.version",Z1i="process.runtime.description",L1i="service.name",V1i="service.namespace",W1i="service.instance.id",P1i="service.version",O1i="telemetry.sdk.name",Q1i="telemetry.sdk.language",M1i="telemetry.sdk.version",H1i="telemetry.auto.version",Y1i="webengine.name",X1i="webengine.version",J1i="webengine.description",_Ga=yEi,yGa=bEi,bGa=EEi,EGa=BEi,BGa=vEi,vGa=SEi,SGa=wEi,wGa=TEi,TGa=NEi,NGa=REi,RGa=DEi,DGa=xEi,xGa=kEi,kGa=GEi,GGa=FEi,FGa=ZEi,ZGa=LEi,LGa=VEi,VGa=WEi,WGa=PEi,PGa=OEi,OGa=QEi,QGa=MEi,MGa=HEi,HGa=YEi,YGa=XEi,XGa=JEi,JGa=UEi,UGa=KEi,KGa=jEi,jGa=zEi,zGa=qEi,qGa=$Ei,$Ga=e1i,eFa=t1i,tFa=r1i,rFa=n1i,nFa=i1i,iFa=s1i,sFa=o1i,oFa=a1i,aFa=c1i,cFa=l1i,lFa=u1i,uFa=g1i,gFa=A1i,AFa=d1i,dFa=p1i,pFa=f1i,fFa=I1i,IFa=C1i,CFa=m1i,mFa=h1i,hFa=_1i,_Fa=y1i,yFa=b1i,bFa=E1i,EFa=B1i,BFa=v1i,vFa=S1i,SFa=w1i,wFa=T1i,TFa=N1i,NFa=R1i,RFa=D1i,DFa=x1i,xFa=k1i,kFa=G1i,GFa=F1i,FFa=Z1i,ZFa=L1i,LFa=V1i,VFa=W1i,WFa=P1i,PFa=O1i,OFa=Q1i,QFa=M1i,MFa=H1i,HFa=Y1i,YFa=X1i,XFa=J1i,JFa=lS([yEi,bEi,EEi,BEi,vEi,SEi,wEi,TEi,NEi,REi,DEi,xEi,kEi,GEi,FEi,ZEi,LEi,VEi,WEi,PEi,OEi,QEi,MEi,HEi,YEi,XEi,JEi,UEi,KEi,jEi,zEi,qEi,$Ei,e1i,t1i,r1i,n1i,i1i,s1i,o1i,a1i,c1i,l1i,u1i,g1i,A1i,d1i,p1i,f1i,I1i,C1i,m1i,h1i,_1i,y1i,b1i,E1i,B1i,v1i,S1i,w1i,T1i,N1i,R1i,D1i,x1i,k1i,G1i,F1i,Z1i,L1i,V1i,W1i,P1i,O1i,Q1i,M1i,H1i,Y1i,X1i,J1i]),U1i="alibaba_cloud",K1i="aws",j1i="azure",z1i="gcp",UFa=U1i,KFa=K1i,jFa=j1i,zFa=z1i,qFa=lS([U1i,K1i,j1i,z1i]),q1i="alibaba_cloud_ecs",$1i="alibaba_cloud_fc",e2i="aws_ec2",t2i="aws_ecs",r2i="aws_eks",n2i="aws_lambda",i2i="aws_elastic_beanstalk",s2i="azure_vm",o2i="azure_container_instances",a2i="azure_aks",c2i="azure_functions",l2i="azure_app_service",u2i="gcp_compute_engine",g2i="gcp_cloud_run",A2i="gcp_kubernetes_engine",d2i="gcp_cloud_functions",p2i="gcp_app_engine",$Fa=q1i,eZa=$1i,tZa=e2i,rZa=t2i,nZa=r2i,iZa=n2i,sZa=i2i,oZa=s2i,aZa=o2i,cZa=a2i,lZa=c2i,uZa=l2i,gZa=u2i,AZa=g2i,dZa=A2i,pZa=d2i,fZa=p2i,IZa=lS([q1i,$1i,e2i,t2i,r2i,n2i,i2i,s2i,o2i,a2i,c2i,l2i,u2i,g2i,A2i,d2i,p2i]),f2i="ec2",I2i="fargate",CZa=f2i,mZa=I2i,hZa=lS([f2i,I2i]),C2i="amd64",m2i="arm32",h2i="arm64",_2i="ia64",y2i="ppc32",b2i="ppc64",E2i="x86",_Za=C2i,yZa=m2i,bZa=h2i,EZa=_2i,BZa=y2i,vZa=b2i,SZa=E2i,wZa=lS([C2i,m2i,h2i,_2i,y2i,b2i,E2i]),B2i="windows",v2i="linux",S2i="darwin",w2i="freebsd",T2i="netbsd",N2i="openbsd",R2i="dragonflybsd",D2i="hpux",x2i="aix",k2i="solaris",G2i="z_os",TZa=B2i,NZa=v2i,RZa=S2i,DZa=w2i,xZa=T2i,kZa=N2i,GZa=R2i,FZa=D2i,ZZa=x2i,LZa=k2i,VZa=G2i,WZa=lS([B2i,v2i,S2i,w2i,T2i,N2i,R2i,D2i,x2i,k2i,G2i]),F2i="cpp",Z2i="dotnet",L2i="erlang",V2i="go",W2i="java",P2i="nodejs",O2i="php",Q2i="python",M2i="ruby",H2i="webjs",PZa=F2i,OZa=Z2i,QZa=L2i,MZa=V2i,HZa=W2i,YZa=P2i,XZa=O2i,JZa=Q2i,UZa=M2i,KZa=H2i,jZa=lS([F2i,Z2i,L2i,V2i,W2i,P2i,O2i,Q2i,M2i,H2i])});var X2i=cc(()=>{Y2i()});var zZa,qZa,$Za,eLa,tLa,rLa,nLa,iLa,sLa,oLa,aLa,cLa,lLa,uLa,gLa,ALa,dLa,pLa,fLa,ILa,CLa,mLa,hLa,_La,yLa,bLa,ELa,BLa,vLa,SLa,wLa,TLa,NLa,RLa,DLa,xLa,kLa,GLa,FLa,ZLa,LLa,VLa,WLa,PLa,OLa,QLa,MLa,HLa,YLa,XLa,JLa,ULa,KLa,jLa,zLa,qLa,$La,e9a,t9a,r9a,n9a,i9a,s9a,o9a,a9a,c9a,l9a,u9a,g9a,A9a,d9a,p9a,f9a,I9a,C9a,m9a,h9a,_9a,y9a,b9a,E9a,B9a,v9a,S9a,w9a,T9a,N9a,R9a,D9a,x9a,k9a,G9a,F9a,Z9a,L9a,V9a,W9a,P9a,O9a,Q9a,M9a,H9a,Y9a,X9a,J9a,U9a,K9a,j9a,z9a,q9a,J2i=cc(()=>{zZa="aspnetcore.rate_limiting.result",qZa="acquired",$Za="endpoint_limiter",eLa="global_limiter",tLa="request_canceled",rLa="telemetry.sdk.language",nLa="cpp",iLa="dotnet",sLa="erlang",oLa="go",aLa="java",cLa="nodejs",lLa="php",uLa="python",gLa="ruby",ALa="rust",dLa="swift",pLa="webjs",fLa="telemetry.sdk.name",ILa="telemetry.sdk.version",CLa="aspnetcore.diagnostics.handler.type",mLa="aspnetcore.diagnostics.exception.result",hLa="aborted",_La="handled",yLa="skipped",bLa="unhandled",ELa="aspnetcore.rate_limiting.policy",BLa="aspnetcore.request.is_unhandled",vLa="aspnetcore.routing.is_fallback",SLa="aspnetcore.routing.match_status",wLa="failure",TLa="success",NLa="client.address",RLa="client.port",DLa="error.type",xLa="_OTHER",kLa="exception.escaped",GLa="exception.message",FLa="exception.stacktrace",ZLa="exception.type",LLa=function(e){return"http.request.header."+e},VLa="http.request.method",WLa="_OTHER",PLa="CONNECT",OLa="DELETE",QLa="GET",MLa="HEAD",HLa="OPTIONS",YLa="PATCH",XLa="POST",JLa="PUT",ULa="TRACE",KLa="http.request.method_original",jLa="http.request.resend_count",zLa=function(e){return"http.response.header."+e},qLa="http.response.status_code",$La="http.route",e9a="jvm.gc.action",t9a="jvm.gc.name",r9a="jvm.memory.pool.name",n9a="jvm.memory.type",i9a="heap",s9a="non_heap",o9a="jvm.thread.daemon",a9a="jvm.thread.state",c9a="blocked",l9a="new",u9a="runnable",g9a="terminated",A9a="timed_waiting",d9a="waiting",p9a="network.local.address",f9a="network.local.port",I9a="network.peer.address",C9a="network.peer.port",m9a="network.protocol.name",h9a="network.protocol.version",_9a="network.transport",y9a="pipe",b9a="quic",E9a="tcp",B9a="udp",v9a="unix",S9a="network.type",w9a="ipv4",T9a="ipv6",N9a="otel.scope.name",R9a="otel.scope.version",D9a="otel.status_code",x9a="ERROR",k9a="OK",G9a="otel.status_description",F9a="server.address",Z9a="server.port",L9a="service.name",V9a="service.version",W9a="signalr.connection.status",P9a="app_shutdown",O9a="normal_closure",Q9a="timeout",M9a="signalr.transport",H9a="long_polling",Y9a="server_sent_events",X9a="web_sockets",J9a="url.fragment",U9a="url.full",K9a="url.path",j9a="url.query",z9a="url.scheme",q9a="user_agent.original"});var $9a,eVa,tVa,rVa,nVa,iVa,sVa,oVa,aVa,cVa,lVa,uVa,gVa,AVa,dVa,pVa,fVa,IVa,CVa,mVa,hVa,_Va,yVa,bVa,EVa,BVa,vVa,SVa,wVa,TVa,NVa,U2i=cc(()=>{$9a="aspnetcore.diagnostics.exceptions",eVa="aspnetcore.rate_limiting.active_request_leases",tVa="aspnetcore.rate_limiting.queued_requests",rVa="aspnetcore.rate_limiting.request.time_in_queue",nVa="aspnetcore.rate_limiting.request_lease.duration",iVa="aspnetcore.rate_limiting.requests",sVa="aspnetcore.routing.match_attempts",oVa="http.client.request.duration",aVa="http.server.request.duration",cVa="jvm.class.count",lVa="jvm.class.loaded",uVa="jvm.class.unloaded",gVa="jvm.cpu.count",AVa="jvm.cpu.recent_utilization",dVa="jvm.cpu.time",pVa="jvm.gc.duration",fVa="jvm.memory.committed",IVa="jvm.memory.limit",CVa="jvm.memory.used",mVa="jvm.memory.used_after_last_gc",hVa="jvm.thread.count",_Va="kestrel.active_connections",yVa="kestrel.active_tls_handshakes",bVa="kestrel.connection.duration",EVa="kestrel.queued_connections",BVa="kestrel.queued_requests",vVa="kestrel.rejected_connections",SVa="kestrel.tls_handshake.duration",wVa="kestrel.upgraded_connections",TVa="signalr.server.active_connections",NVa="signalr.server.connection.duration"});var K2i={};zf(K2i,{ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED:()=>hLa,ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED:()=>_La,ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED:()=>yLa,ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED:()=>bLa,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED:()=>qZa,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER:()=>$Za,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER:()=>eLa,ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED:()=>tLa,ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE:()=>wLa,ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS:()=>TLa,ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT:()=>mLa,ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE:()=>CLa,ATTR_ASPNETCORE_RATE_LIMITING_POLICY:()=>ELa,ATTR_ASPNETCORE_RATE_LIMITING_RESULT:()=>zZa,ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED:()=>BLa,ATTR_ASPNETCORE_ROUTING_IS_FALLBACK:()=>vLa,ATTR_ASPNETCORE_ROUTING_MATCH_STATUS:()=>SLa,ATTR_CLIENT_ADDRESS:()=>NLa,ATTR_CLIENT_PORT:()=>RLa,ATTR_ERROR_TYPE:()=>DLa,ATTR_EXCEPTION_ESCAPED:()=>kLa,ATTR_EXCEPTION_MESSAGE:()=>GLa,ATTR_EXCEPTION_STACKTRACE:()=>FLa,ATTR_EXCEPTION_TYPE:()=>ZLa,ATTR_HTTP_REQUEST_HEADER:()=>LLa,ATTR_HTTP_REQUEST_METHOD:()=>VLa,ATTR_HTTP_REQUEST_METHOD_ORIGINAL:()=>KLa,ATTR_HTTP_REQUEST_RESEND_COUNT:()=>jLa,ATTR_HTTP_RESPONSE_HEADER:()=>zLa,ATTR_HTTP_RESPONSE_STATUS_CODE:()=>qLa,ATTR_HTTP_ROUTE:()=>$La,ATTR_JVM_GC_ACTION:()=>e9a,ATTR_JVM_GC_NAME:()=>t9a,ATTR_JVM_MEMORY_POOL_NAME:()=>r9a,ATTR_JVM_MEMORY_TYPE:()=>n9a,ATTR_JVM_THREAD_DAEMON:()=>o9a,ATTR_JVM_THREAD_STATE:()=>a9a,ATTR_NETWORK_LOCAL_ADDRESS:()=>p9a,ATTR_NETWORK_LOCAL_PORT:()=>f9a,ATTR_NETWORK_PEER_ADDRESS:()=>I9a,ATTR_NETWORK_PEER_PORT:()=>C9a,ATTR_NETWORK_PROTOCOL_NAME:()=>m9a,ATTR_NETWORK_PROTOCOL_VERSION:()=>h9a,ATTR_NETWORK_TRANSPORT:()=>_9a,ATTR_NETWORK_TYPE:()=>S9a,ATTR_OTEL_SCOPE_NAME:()=>N9a,ATTR_OTEL_SCOPE_VERSION:()=>R9a,ATTR_OTEL_STATUS_CODE:()=>D9a,ATTR_OTEL_STATUS_DESCRIPTION:()=>G9a,ATTR_SERVER_ADDRESS:()=>F9a,ATTR_SERVER_PORT:()=>Z9a,ATTR_SERVICE_NAME:()=>L9a,ATTR_SERVICE_VERSION:()=>V9a,ATTR_SIGNALR_CONNECTION_STATUS:()=>W9a,ATTR_SIGNALR_TRANSPORT:()=>M9a,ATTR_TELEMETRY_SDK_LANGUAGE:()=>rLa,ATTR_TELEMETRY_SDK_NAME:()=>fLa,ATTR_TELEMETRY_SDK_VERSION:()=>ILa,ATTR_URL_FRAGMENT:()=>J9a,ATTR_URL_FULL:()=>U9a,ATTR_URL_PATH:()=>K9a,ATTR_URL_QUERY:()=>j9a,ATTR_URL_SCHEME:()=>z9a,ATTR_USER_AGENT_ORIGINAL:()=>q9a,AWSECSLAUNCHTYPEVALUES_EC2:()=>CZa,AWSECSLAUNCHTYPEVALUES_FARGATE:()=>mZa,AwsEcsLaunchtypeValues:()=>hZa,CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS:()=>$Fa,CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC:()=>eZa,CLOUDPLATFORMVALUES_AWS_EC2:()=>tZa,CLOUDPLATFORMVALUES_AWS_ECS:()=>rZa,CLOUDPLATFORMVALUES_AWS_EKS:()=>nZa,CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK:()=>sZa,CLOUDPLATFORMVALUES_AWS_LAMBDA:()=>iZa,CLOUDPLATFORMVALUES_AZURE_AKS:()=>cZa,CLOUDPLATFORMVALUES_AZURE_APP_SERVICE:()=>uZa,CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES:()=>aZa,CLOUDPLATFORMVALUES_AZURE_FUNCTIONS:()=>lZa,CLOUDPLATFORMVALUES_AZURE_VM:()=>oZa,CLOUDPLATFORMVALUES_GCP_APP_ENGINE:()=>fZa,CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS:()=>pZa,CLOUDPLATFORMVALUES_GCP_CLOUD_RUN:()=>AZa,CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE:()=>gZa,CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE:()=>dZa,CLOUDPROVIDERVALUES_ALIBABA_CLOUD:()=>UFa,CLOUDPROVIDERVALUES_AWS:()=>KFa,CLOUDPROVIDERVALUES_AZURE:()=>jFa,CLOUDPROVIDERVALUES_GCP:()=>zFa,CloudPlatformValues:()=>IZa,CloudProviderValues:()=>qFa,DBCASSANDRACONSISTENCYLEVELVALUES_ALL:()=>xxa,DBCASSANDRACONSISTENCYLEVELVALUES_ANY:()=>Pxa,DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM:()=>kxa,DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE:()=>Wxa,DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM:()=>Fxa,DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL:()=>Qxa,DBCASSANDRACONSISTENCYLEVELVALUES_ONE:()=>Zxa,DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM:()=>Gxa,DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL:()=>Oxa,DBCASSANDRACONSISTENCYLEVELVALUES_THREE:()=>Vxa,DBCASSANDRACONSISTENCYLEVELVALUES_TWO:()=>Lxa,DBSYSTEMVALUES_ADABAS:()=>txa,DBSYSTEMVALUES_CACHE:()=>exa,DBSYSTEMVALUES_CASSANDRA:()=>mxa,DBSYSTEMVALUES_CLOUDSCAPE:()=>XDa,DBSYSTEMVALUES_COCKROACHDB:()=>Rxa,DBSYSTEMVALUES_COLDFUSION:()=>Cxa,DBSYSTEMVALUES_COSMOSDB:()=>Bxa,DBSYSTEMVALUES_COUCHBASE:()=>bxa,DBSYSTEMVALUES_COUCHDB:()=>Exa,DBSYSTEMVALUES_DB2:()=>QDa,DBSYSTEMVALUES_DERBY:()=>nxa,DBSYSTEMVALUES_DYNAMODB:()=>vxa,DBSYSTEMVALUES_EDB:()=>$Da,DBSYSTEMVALUES_ELASTICSEARCH:()=>Txa,DBSYSTEMVALUES_FILEMAKER:()=>ixa,DBSYSTEMVALUES_FIREBIRD:()=>rxa,DBSYSTEMVALUES_FIRSTSQL:()=>qDa,DBSYSTEMVALUES_GEODE:()=>wxa,DBSYSTEMVALUES_H2:()=>Ixa,DBSYSTEMVALUES_HANADB:()=>jDa,DBSYSTEMVALUES_HBASE:()=>hxa,DBSYSTEMVALUES_HIVE:()=>YDa,DBSYSTEMVALUES_HSQLDB:()=>JDa,DBSYSTEMVALUES_INFORMIX:()=>sxa,DBSYSTEMVALUES_INGRES:()=>zDa,DBSYSTEMVALUES_INSTANTDB:()=>oxa,DBSYSTEMVALUES_INTERBASE:()=>axa,DBSYSTEMVALUES_MARIADB:()=>cxa,DBSYSTEMVALUES_MAXDB:()=>KDa,DBSYSTEMVALUES_MEMCACHED:()=>Nxa,DBSYSTEMVALUES_MONGODB:()=>_xa,DBSYSTEMVALUES_MSSQL:()=>WDa,DBSYSTEMVALUES_MYSQL:()=>PDa,DBSYSTEMVALUES_NEO4J:()=>Sxa,DBSYSTEMVALUES_NETEZZA:()=>lxa,DBSYSTEMVALUES_ORACLE:()=>ODa,DBSYSTEMVALUES_OTHER_SQL:()=>VDa,DBSYSTEMVALUES_PERVASIVE:()=>uxa,DBSYSTEMVALUES_POINTBASE:()=>gxa,DBSYSTEMVALUES_POSTGRESQL:()=>MDa,DBSYSTEMVALUES_PROGRESS:()=>UDa,DBSYSTEMVALUES_REDIS:()=>yxa,DBSYSTEMVALUES_REDSHIFT:()=>HDa,DBSYSTEMVALUES_SQLITE:()=>Axa,DBSYSTEMVALUES_SYBASE:()=>dxa,DBSYSTEMVALUES_TERADATA:()=>pxa,DBSYSTEMVALUES_VERTICA:()=>fxa,DbCassandraConsistencyLevelValues:()=>Mxa,DbSystemValues:()=>Dxa,ERROR_TYPE_VALUE_OTHER:()=>xLa,FAASDOCUMENTOPERATIONVALUES_DELETE:()=>qxa,FAASDOCUMENTOPERATIONVALUES_EDIT:()=>zxa,FAASDOCUMENTOPERATIONVALUES_INSERT:()=>jxa,FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD:()=>eka,FAASINVOKEDPROVIDERVALUES_AWS:()=>tka,FAASINVOKEDPROVIDERVALUES_AZURE:()=>rka,FAASINVOKEDPROVIDERVALUES_GCP:()=>nka,FAASTRIGGERVALUES_DATASOURCE:()=>Hxa,FAASTRIGGERVALUES_HTTP:()=>Yxa,FAASTRIGGERVALUES_OTHER:()=>Uxa,FAASTRIGGERVALUES_PUBSUB:()=>Xxa,FAASTRIGGERVALUES_TIMER:()=>Jxa,FaasDocumentOperationValues:()=>$xa,FaasInvokedProviderValues:()=>ika,FaasTriggerValues:()=>Kxa,HOSTARCHVALUES_AMD64:()=>_Za,HOSTARCHVALUES_ARM32:()=>yZa,HOSTARCHVALUES_ARM64:()=>bZa,HOSTARCHVALUES_IA64:()=>EZa,HOSTARCHVALUES_PPC32:()=>BZa,HOSTARCHVALUES_PPC64:()=>vZa,HOSTARCHVALUES_X86:()=>SZa,HTTPFLAVORVALUES_HTTP_1_0:()=>Oka,HTTPFLAVORVALUES_HTTP_1_1:()=>Qka,HTTPFLAVORVALUES_HTTP_2_0:()=>Mka,HTTPFLAVORVALUES_QUIC:()=>Yka,HTTPFLAVORVALUES_SPDY:()=>Hka,HTTP_REQUEST_METHOD_VALUE_CONNECT:()=>PLa,HTTP_REQUEST_METHOD_VALUE_DELETE:()=>OLa,HTTP_REQUEST_METHOD_VALUE_GET:()=>QLa,HTTP_REQUEST_METHOD_VALUE_HEAD:()=>MLa,HTTP_REQUEST_METHOD_VALUE_OPTIONS:()=>HLa,HTTP_REQUEST_METHOD_VALUE_OTHER:()=>WLa,HTTP_REQUEST_METHOD_VALUE_PATCH:()=>YLa,HTTP_REQUEST_METHOD_VALUE_POST:()=>XLa,HTTP_REQUEST_METHOD_VALUE_PUT:()=>JLa,HTTP_REQUEST_METHOD_VALUE_TRACE:()=>ULa,HostArchValues:()=>wZa,HttpFlavorValues:()=>Xka,JVM_MEMORY_TYPE_VALUE_HEAP:()=>i9a,JVM_MEMORY_TYPE_VALUE_NON_HEAP:()=>s9a,JVM_THREAD_STATE_VALUE_BLOCKED:()=>c9a,JVM_THREAD_STATE_VALUE_NEW:()=>l9a,JVM_THREAD_STATE_VALUE_RUNNABLE:()=>u9a,JVM_THREAD_STATE_VALUE_TERMINATED:()=>g9a,JVM_THREAD_STATE_VALUE_TIMED_WAITING:()=>A9a,JVM_THREAD_STATE_VALUE_WAITING:()=>d9a,MESSAGETYPEVALUES_RECEIVED:()=>mGa,MESSAGETYPEVALUES_SENT:()=>CGa,MESSAGINGDESTINATIONKINDVALUES_QUEUE:()=>Jka,MESSAGINGDESTINATIONKINDVALUES_TOPIC:()=>Uka,MESSAGINGOPERATIONVALUES_PROCESS:()=>zka,MESSAGINGOPERATIONVALUES_RECEIVE:()=>jka,METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS:()=>$9a,METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES:()=>eVa,METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS:()=>tVa,METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS:()=>iVa,METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION:()=>nVa,METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE:()=>rVa,METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS:()=>sVa,METRIC_HTTP_CLIENT_REQUEST_DURATION:()=>oVa,METRIC_HTTP_SERVER_REQUEST_DURATION:()=>aVa,METRIC_JVM_CLASS_COUNT:()=>cVa,METRIC_JVM_CLASS_LOADED:()=>lVa,METRIC_JVM_CLASS_UNLOADED:()=>uVa,METRIC_JVM_CPU_COUNT:()=>gVa,METRIC_JVM_CPU_RECENT_UTILIZATION:()=>AVa,METRIC_JVM_CPU_TIME:()=>dVa,METRIC_JVM_GC_DURATION:()=>pVa,METRIC_JVM_MEMORY_COMMITTED:()=>fVa,METRIC_JVM_MEMORY_LIMIT:()=>IVa,METRIC_JVM_MEMORY_USED:()=>CVa,METRIC_JVM_MEMORY_USED_AFTER_LAST_GC:()=>mVa,METRIC_JVM_THREAD_COUNT:()=>hVa,METRIC_KESTREL_ACTIVE_CONNECTIONS:()=>_Va,METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES:()=>yVa,METRIC_KESTREL_CONNECTION_DURATION:()=>bVa,METRIC_KESTREL_QUEUED_CONNECTIONS:()=>EVa,METRIC_KESTREL_QUEUED_REQUESTS:()=>BVa,METRIC_KESTREL_REJECTED_CONNECTIONS:()=>vVa,METRIC_KESTREL_TLS_HANDSHAKE_DURATION:()=>SVa,METRIC_KESTREL_UPGRADED_CONNECTIONS:()=>wVa,METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS:()=>TVa,METRIC_SIGNALR_SERVER_CONNECTION_DURATION:()=>NVa,MessageTypeValues:()=>hGa,MessagingDestinationKindValues:()=>Kka,MessagingOperationValues:()=>qka,NETHOSTCONNECTIONSUBTYPEVALUES_CDMA:()=>bka,NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT:()=>vka,NETHOSTCONNECTIONSUBTYPEVALUES_EDGE:()=>_ka,NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD:()=>xka,NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0:()=>Eka,NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A:()=>Bka,NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B:()=>Rka,NETHOSTCONNECTIONSUBTYPEVALUES_GPRS:()=>hka,NETHOSTCONNECTIONSUBTYPEVALUES_GSM:()=>Gka,NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA:()=>Ska,NETHOSTCONNECTIONSUBTYPEVALUES_HSPA:()=>Tka,NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP:()=>kka,NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA:()=>wka,NETHOSTCONNECTIONSUBTYPEVALUES_IDEN:()=>Nka,NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN:()=>Zka,NETHOSTCONNECTIONSUBTYPEVALUES_LTE:()=>Dka,NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA:()=>Wka,NETHOSTCONNECTIONSUBTYPEVALUES_NR:()=>Lka,NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA:()=>Vka,NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA:()=>Fka,NETHOSTCONNECTIONSUBTYPEVALUES_UMTS:()=>yka,NETHOSTCONNECTIONTYPEVALUES_CELL:()=>fka,NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE:()=>Ika,NETHOSTCONNECTIONTYPEVALUES_UNKNOWN:()=>Cka,NETHOSTCONNECTIONTYPEVALUES_WIFI:()=>dka,NETHOSTCONNECTIONTYPEVALUES_WIRED:()=>pka,NETTRANSPORTVALUES_INPROC:()=>uka,NETTRANSPORTVALUES_IP:()=>aka,NETTRANSPORTVALUES_IP_TCP:()=>ska,NETTRANSPORTVALUES_IP_UDP:()=>oka,NETTRANSPORTVALUES_OTHER:()=>gka,NETTRANSPORTVALUES_PIPE:()=>lka,NETTRANSPORTVALUES_UNIX:()=>cka,NETWORK_TRANSPORT_VALUE_PIPE:()=>y9a,NETWORK_TRANSPORT_VALUE_QUIC:()=>b9a,NETWORK_TRANSPORT_VALUE_TCP:()=>E9a,NETWORK_TRANSPORT_VALUE_UDP:()=>B9a,NETWORK_TRANSPORT_VALUE_UNIX:()=>v9a,NETWORK_TYPE_VALUE_IPV4:()=>w9a,NETWORK_TYPE_VALUE_IPV6:()=>T9a,NetHostConnectionSubtypeValues:()=>Pka,NetHostConnectionTypeValues:()=>mka,NetTransportValues:()=>Aka,OSTYPEVALUES_AIX:()=>ZZa,OSTYPEVALUES_DARWIN:()=>RZa,OSTYPEVALUES_DRAGONFLYBSD:()=>GZa,OSTYPEVALUES_FREEBSD:()=>DZa,OSTYPEVALUES_HPUX:()=>FZa,OSTYPEVALUES_LINUX:()=>NZa,OSTYPEVALUES_NETBSD:()=>xZa,OSTYPEVALUES_OPENBSD:()=>kZa,OSTYPEVALUES_SOLARIS:()=>LZa,OSTYPEVALUES_WINDOWS:()=>TZa,OSTYPEVALUES_Z_OS:()=>VZa,OTEL_STATUS_CODE_VALUE_ERROR:()=>x9a,OTEL_STATUS_CODE_VALUE_OK:()=>k9a,OsTypeValues:()=>WZa,RPCGRPCSTATUSCODEVALUES_ABORTED:()=>lGa,RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS:()=>sGa,RPCGRPCSTATUSCODEVALUES_CANCELLED:()=>eGa,RPCGRPCSTATUSCODEVALUES_DATA_LOSS:()=>pGa,RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED:()=>nGa,RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION:()=>cGa,RPCGRPCSTATUSCODEVALUES_INTERNAL:()=>AGa,RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT:()=>rGa,RPCGRPCSTATUSCODEVALUES_NOT_FOUND:()=>iGa,RPCGRPCSTATUSCODEVALUES_OK:()=>$ka,RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE:()=>uGa,RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED:()=>oGa,RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED:()=>aGa,RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED:()=>fGa,RPCGRPCSTATUSCODEVALUES_UNAVAILABLE:()=>dGa,RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED:()=>gGa,RPCGRPCSTATUSCODEVALUES_UNKNOWN:()=>tGa,RpcGrpcStatusCodeValues:()=>IGa,SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET:()=>XRa,SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS:()=>iDa,SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ:()=>MRa,SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY:()=>WRa,SEMATTRS_AWS_DYNAMODB_COUNT:()=>rDa,SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE:()=>zRa,SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES:()=>KRa,SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES:()=>sDa,SEMATTRS_AWS_DYNAMODB_INDEX_NAME:()=>JRa,SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS:()=>PRa,SEMATTRS_AWS_DYNAMODB_LIMIT:()=>YRa,SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES:()=>jRa,SEMATTRS_AWS_DYNAMODB_PROJECTION:()=>HRa,SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY:()=>ORa,SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY:()=>QRa,SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT:()=>nDa,SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD:()=>$Ra,SEMATTRS_AWS_DYNAMODB_SEGMENT:()=>eDa,SEMATTRS_AWS_DYNAMODB_SELECT:()=>URa,SEMATTRS_AWS_DYNAMODB_TABLE_COUNT:()=>qRa,SEMATTRS_AWS_DYNAMODB_TABLE_NAMES:()=>VRa,SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS:()=>tDa,SEMATTRS_AWS_LAMBDA_INVOKED_ARN:()=>CNa,SEMATTRS_CODE_FILEPATH:()=>yRa,SEMATTRS_CODE_FUNCTION:()=>hRa,SEMATTRS_CODE_LINENO:()=>bRa,SEMATTRS_CODE_NAMESPACE:()=>_Ra,SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL:()=>TNa,SEMATTRS_DB_CASSANDRA_COORDINATOR_DC:()=>kNa,SEMATTRS_DB_CASSANDRA_COORDINATOR_ID:()=>xNa,SEMATTRS_DB_CASSANDRA_IDEMPOTENCE:()=>RNa,SEMATTRS_DB_CASSANDRA_KEYSPACE:()=>SNa,SEMATTRS_DB_CASSANDRA_PAGE_SIZE:()=>wNa,SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT:()=>DNa,SEMATTRS_DB_CASSANDRA_TABLE:()=>NNa,SEMATTRS_DB_CONNECTION_STRING:()=>hNa,SEMATTRS_DB_HBASE_NAMESPACE:()=>GNa,SEMATTRS_DB_JDBC_DRIVER_CLASSNAME:()=>yNa,SEMATTRS_DB_MONGODB_COLLECTION:()=>ZNa,SEMATTRS_DB_MSSQL_INSTANCE_NAME:()=>vNa,SEMATTRS_DB_NAME:()=>bNa,SEMATTRS_DB_OPERATION:()=>BNa,SEMATTRS_DB_REDIS_DATABASE_INDEX:()=>FNa,SEMATTRS_DB_SQL_TABLE:()=>LNa,SEMATTRS_DB_STATEMENT:()=>ENa,SEMATTRS_DB_SYSTEM:()=>mNa,SEMATTRS_DB_USER:()=>_Na,SEMATTRS_ENDUSER_ID:()=>pRa,SEMATTRS_ENDUSER_ROLE:()=>fRa,SEMATTRS_ENDUSER_SCOPE:()=>IRa,SEMATTRS_EXCEPTION_ESCAPED:()=>ONa,SEMATTRS_EXCEPTION_MESSAGE:()=>WNa,SEMATTRS_EXCEPTION_STACKTRACE:()=>PNa,SEMATTRS_EXCEPTION_TYPE:()=>VNa,SEMATTRS_FAAS_COLDSTART:()=>jNa,SEMATTRS_FAAS_CRON:()=>KNa,SEMATTRS_FAAS_DOCUMENT_COLLECTION:()=>HNa,SEMATTRS_FAAS_DOCUMENT_NAME:()=>JNa,SEMATTRS_FAAS_DOCUMENT_OPERATION:()=>YNa,SEMATTRS_FAAS_DOCUMENT_TIME:()=>XNa,SEMATTRS_FAAS_EXECUTION:()=>MNa,SEMATTRS_FAAS_INVOKED_NAME:()=>zNa,SEMATTRS_FAAS_INVOKED_PROVIDER:()=>qNa,SEMATTRS_FAAS_INVOKED_REGION:()=>$Na,SEMATTRS_FAAS_TIME:()=>UNa,SEMATTRS_FAAS_TRIGGER:()=>QNa,SEMATTRS_HTTP_CLIENT_IP:()=>LRa,SEMATTRS_HTTP_FLAVOR:()=>NRa,SEMATTRS_HTTP_HOST:()=>SRa,SEMATTRS_HTTP_METHOD:()=>ERa,SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH:()=>DRa,SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED:()=>xRa,SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH:()=>kRa,SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED:()=>GRa,SEMATTRS_HTTP_ROUTE:()=>ZRa,SEMATTRS_HTTP_SCHEME:()=>wRa,SEMATTRS_HTTP_SERVER_NAME:()=>FRa,SEMATTRS_HTTP_STATUS_CODE:()=>TRa,SEMATTRS_HTTP_TARGET:()=>vRa,SEMATTRS_HTTP_URL:()=>BRa,SEMATTRS_HTTP_USER_AGENT:()=>RRa,SEMATTRS_MESSAGE_COMPRESSED_SIZE:()=>FDa,SEMATTRS_MESSAGE_ID:()=>GDa,SEMATTRS_MESSAGE_TYPE:()=>kDa,SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE:()=>ZDa,SEMATTRS_MESSAGING_CONSUMER_ID:()=>mDa,SEMATTRS_MESSAGING_CONVERSATION_ID:()=>pDa,SEMATTRS_MESSAGING_DESTINATION:()=>aDa,SEMATTRS_MESSAGING_DESTINATION_KIND:()=>cDa,SEMATTRS_MESSAGING_KAFKA_CLIENT_ID:()=>bDa,SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP:()=>yDa,SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY:()=>_Da,SEMATTRS_MESSAGING_KAFKA_PARTITION:()=>EDa,SEMATTRS_MESSAGING_KAFKA_TOMBSTONE:()=>BDa,SEMATTRS_MESSAGING_MESSAGE_ID:()=>dDa,SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES:()=>IDa,SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES:()=>fDa,SEMATTRS_MESSAGING_OPERATION:()=>CDa,SEMATTRS_MESSAGING_PROTOCOL:()=>uDa,SEMATTRS_MESSAGING_PROTOCOL_VERSION:()=>gDa,SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY:()=>hDa,SEMATTRS_MESSAGING_SYSTEM:()=>oDa,SEMATTRS_MESSAGING_TEMP_DESTINATION:()=>lDa,SEMATTRS_MESSAGING_URL:()=>ADa,SEMATTRS_NET_HOST_CARRIER_ICC:()=>ARa,SEMATTRS_NET_HOST_CARRIER_MCC:()=>uRa,SEMATTRS_NET_HOST_CARRIER_MNC:()=>gRa,SEMATTRS_NET_HOST_CARRIER_NAME:()=>lRa,SEMATTRS_NET_HOST_CONNECTION_SUBTYPE:()=>cRa,SEMATTRS_NET_HOST_CONNECTION_TYPE:()=>aRa,SEMATTRS_NET_HOST_IP:()=>iRa,SEMATTRS_NET_HOST_NAME:()=>oRa,SEMATTRS_NET_HOST_PORT:()=>sRa,SEMATTRS_NET_PEER_IP:()=>tRa,SEMATTRS_NET_PEER_NAME:()=>nRa,SEMATTRS_NET_PEER_PORT:()=>rRa,SEMATTRS_NET_TRANSPORT:()=>eRa,SEMATTRS_PEER_SERVICE:()=>dRa,SEMATTRS_RPC_GRPC_STATUS_CODE:()=>TDa,SEMATTRS_RPC_JSONRPC_ERROR_CODE:()=>DDa,SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE:()=>xDa,SEMATTRS_RPC_JSONRPC_REQUEST_ID:()=>RDa,SEMATTRS_RPC_JSONRPC_VERSION:()=>NDa,SEMATTRS_RPC_METHOD:()=>wDa,SEMATTRS_RPC_SERVICE:()=>SDa,SEMATTRS_RPC_SYSTEM:()=>vDa,SEMATTRS_THREAD_ID:()=>CRa,SEMATTRS_THREAD_NAME:()=>mRa,SEMRESATTRS_AWS_ECS_CLUSTER_ARN:()=>SGa,SEMRESATTRS_AWS_ECS_CONTAINER_ARN:()=>vGa,SEMRESATTRS_AWS_ECS_LAUNCHTYPE:()=>wGa,SEMRESATTRS_AWS_ECS_TASK_ARN:()=>TGa,SEMRESATTRS_AWS_ECS_TASK_FAMILY:()=>NGa,SEMRESATTRS_AWS_ECS_TASK_REVISION:()=>RGa,SEMRESATTRS_AWS_EKS_CLUSTER_ARN:()=>DGa,SEMRESATTRS_AWS_LOG_GROUP_ARNS:()=>kGa,SEMRESATTRS_AWS_LOG_GROUP_NAMES:()=>xGa,SEMRESATTRS_AWS_LOG_STREAM_ARNS:()=>FGa,SEMRESATTRS_AWS_LOG_STREAM_NAMES:()=>GGa,SEMRESATTRS_CLOUD_ACCOUNT_ID:()=>yGa,SEMRESATTRS_CLOUD_AVAILABILITY_ZONE:()=>EGa,SEMRESATTRS_CLOUD_PLATFORM:()=>BGa,SEMRESATTRS_CLOUD_PROVIDER:()=>_Ga,SEMRESATTRS_CLOUD_REGION:()=>bGa,SEMRESATTRS_CONTAINER_ID:()=>LGa,SEMRESATTRS_CONTAINER_IMAGE_NAME:()=>WGa,SEMRESATTRS_CONTAINER_IMAGE_TAG:()=>PGa,SEMRESATTRS_CONTAINER_NAME:()=>ZGa,SEMRESATTRS_CONTAINER_RUNTIME:()=>VGa,SEMRESATTRS_DEPLOYMENT_ENVIRONMENT:()=>OGa,SEMRESATTRS_DEVICE_ID:()=>QGa,SEMRESATTRS_DEVICE_MODEL_IDENTIFIER:()=>MGa,SEMRESATTRS_DEVICE_MODEL_NAME:()=>HGa,SEMRESATTRS_FAAS_ID:()=>XGa,SEMRESATTRS_FAAS_INSTANCE:()=>UGa,SEMRESATTRS_FAAS_MAX_MEMORY:()=>KGa,SEMRESATTRS_FAAS_NAME:()=>YGa,SEMRESATTRS_FAAS_VERSION:()=>JGa,SEMRESATTRS_HOST_ARCH:()=>$Ga,SEMRESATTRS_HOST_ID:()=>jGa,SEMRESATTRS_HOST_IMAGE_ID:()=>tFa,SEMRESATTRS_HOST_IMAGE_NAME:()=>eFa,SEMRESATTRS_HOST_IMAGE_VERSION:()=>rFa,SEMRESATTRS_HOST_NAME:()=>zGa,SEMRESATTRS_HOST_TYPE:()=>qGa,SEMRESATTRS_K8S_CLUSTER_NAME:()=>nFa,SEMRESATTRS_K8S_CONTAINER_NAME:()=>lFa,SEMRESATTRS_K8S_CRONJOB_NAME:()=>yFa,SEMRESATTRS_K8S_CRONJOB_UID:()=>_Fa,SEMRESATTRS_K8S_DAEMONSET_NAME:()=>CFa,SEMRESATTRS_K8S_DAEMONSET_UID:()=>IFa,SEMRESATTRS_K8S_DEPLOYMENT_NAME:()=>dFa,SEMRESATTRS_K8S_DEPLOYMENT_UID:()=>AFa,SEMRESATTRS_K8S_JOB_NAME:()=>hFa,SEMRESATTRS_K8S_JOB_UID:()=>mFa,SEMRESATTRS_K8S_NAMESPACE_NAME:()=>oFa,SEMRESATTRS_K8S_NODE_NAME:()=>iFa,SEMRESATTRS_K8S_NODE_UID:()=>sFa,SEMRESATTRS_K8S_POD_NAME:()=>cFa,SEMRESATTRS_K8S_POD_UID:()=>aFa,SEMRESATTRS_K8S_REPLICASET_NAME:()=>gFa,SEMRESATTRS_K8S_REPLICASET_UID:()=>uFa,SEMRESATTRS_K8S_STATEFULSET_NAME:()=>fFa,SEMRESATTRS_K8S_STATEFULSET_UID:()=>pFa,SEMRESATTRS_OS_DESCRIPTION:()=>EFa,SEMRESATTRS_OS_NAME:()=>BFa,SEMRESATTRS_OS_TYPE:()=>bFa,SEMRESATTRS_OS_VERSION:()=>vFa,SEMRESATTRS_PROCESS_COMMAND:()=>NFa,SEMRESATTRS_PROCESS_COMMAND_ARGS:()=>DFa,SEMRESATTRS_PROCESS_COMMAND_LINE:()=>RFa,SEMRESATTRS_PROCESS_EXECUTABLE_NAME:()=>wFa,SEMRESATTRS_PROCESS_EXECUTABLE_PATH:()=>TFa,SEMRESATTRS_PROCESS_OWNER:()=>xFa,SEMRESATTRS_PROCESS_PID:()=>SFa,SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION:()=>FFa,SEMRESATTRS_PROCESS_RUNTIME_NAME:()=>kFa,SEMRESATTRS_PROCESS_RUNTIME_VERSION:()=>GFa,SEMRESATTRS_SERVICE_INSTANCE_ID:()=>VFa,SEMRESATTRS_SERVICE_NAME:()=>ZFa,SEMRESATTRS_SERVICE_NAMESPACE:()=>LFa,SEMRESATTRS_SERVICE_VERSION:()=>WFa,SEMRESATTRS_TELEMETRY_AUTO_VERSION:()=>MFa,SEMRESATTRS_TELEMETRY_SDK_LANGUAGE:()=>OFa,SEMRESATTRS_TELEMETRY_SDK_NAME:()=>PFa,SEMRESATTRS_TELEMETRY_SDK_VERSION:()=>QFa,SEMRESATTRS_WEBENGINE_DESCRIPTION:()=>XFa,SEMRESATTRS_WEBENGINE_NAME:()=>HFa,SEMRESATTRS_WEBENGINE_VERSION:()=>YFa,SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN:()=>P9a,SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE:()=>O9a,SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT:()=>Q9a,SIGNALR_TRANSPORT_VALUE_LONG_POLLING:()=>H9a,SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS:()=>Y9a,SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS:()=>X9a,SemanticAttributes:()=>LDa,SemanticResourceAttributes:()=>JFa,TELEMETRYSDKLANGUAGEVALUES_CPP:()=>PZa,TELEMETRYSDKLANGUAGEVALUES_DOTNET:()=>OZa,TELEMETRYSDKLANGUAGEVALUES_ERLANG:()=>QZa,TELEMETRYSDKLANGUAGEVALUES_GO:()=>MZa,TELEMETRYSDKLANGUAGEVALUES_JAVA:()=>HZa,TELEMETRYSDKLANGUAGEVALUES_NODEJS:()=>YZa,TELEMETRYSDKLANGUAGEVALUES_PHP:()=>XZa,TELEMETRYSDKLANGUAGEVALUES_PYTHON:()=>JZa,TELEMETRYSDKLANGUAGEVALUES_RUBY:()=>UZa,TELEMETRYSDKLANGUAGEVALUES_WEBJS:()=>KZa,TELEMETRY_SDK_LANGUAGE_VALUE_CPP:()=>nLa,TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET:()=>iLa,TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG:()=>sLa,TELEMETRY_SDK_LANGUAGE_VALUE_GO:()=>oLa,TELEMETRY_SDK_LANGUAGE_VALUE_JAVA:()=>aLa,TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS:()=>cLa,TELEMETRY_SDK_LANGUAGE_VALUE_PHP:()=>lLa,TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON:()=>uLa,TELEMETRY_SDK_LANGUAGE_VALUE_RUBY:()=>gLa,TELEMETRY_SDK_LANGUAGE_VALUE_RUST:()=>ALa,TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT:()=>dLa,TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS:()=>pLa,TelemetrySdkLanguageValues:()=>jZa});var j2i=cc(()=>{_Ei();X2i();J2i();U2i()});var z2i=z(E0t=>{"use strict";Object.defineProperty(E0t,"__esModule",{value:!0});E0t.SDK_INFO=void 0;var RVa=jmr(),rYe=(j2i(),Ai(K2i));E0t.SDK_INFO={[rYe.SEMRESATTRS_TELEMETRY_SDK_NAME]:"opentelemetry",[rYe.SEMRESATTRS_PROCESS_RUNTIME_NAME]:"node",[rYe.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE]:rYe.TELEMETRYSDKLANGUAGEVALUES_NODEJS,[rYe.SEMRESATTRS_TELEMETRY_SDK_VERSION]:RVa.VERSION}});var q2i=z(B0t=>{"use strict";Object.defineProperty(B0t,"__esModule",{value:!0});B0t.unrefTimer=void 0;function DVa(e){e.unref()}B0t.unrefTimer=DVa});var eBi=z(vR=>{"use strict";Object.defineProperty(vR,"__esModule",{value:!0});vR.unrefTimer=vR.SDK_INFO=vR.otperformance=vR.RandomIdGenerator=vR.hexToBase64=vR._globalThis=vR.getEnv=vR.getEnvWithoutDefaults=void 0;var $2i=bhi();Object.defineProperty(vR,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return $2i.getEnvWithoutDefaults}});Object.defineProperty(vR,"getEnv",{enumerable:!0,get:function(){return $2i.getEnv}});var xVa=Ehi();Object.defineProperty(vR,"_globalThis",{enumerable:!0,get:function(){return xVa._globalThis}});var kVa=vhi();Object.defineProperty(vR,"hexToBase64",{enumerable:!0,get:function(){return kVa.hexToBase64}});var GVa=Thi();Object.defineProperty(vR,"RandomIdGenerator",{enumerable:!0,get:function(){return GVa.RandomIdGenerator}});var FVa=Nhi();Object.defineProperty(vR,"otperformance",{enumerable:!0,get:function(){return FVa.otperformance}});var ZVa=z2i();Object.defineProperty(vR,"SDK_INFO",{enumerable:!0,get:function(){return ZVa.SDK_INFO}});var LVa=q2i();Object.defineProperty(vR,"unrefTimer",{enumerable:!0,get:function(){return LVa.unrefTimer}})});var qmr=z(SR=>{"use strict";Object.defineProperty(SR,"__esModule",{value:!0});SR.unrefTimer=SR.otperformance=SR.hexToBase64=SR.getEnvWithoutDefaults=SR.getEnv=SR._globalThis=SR.SDK_INFO=SR.RandomIdGenerator=void 0;var doe=eBi();Object.defineProperty(SR,"RandomIdGenerator",{enumerable:!0,get:function(){return doe.RandomIdGenerator}});Object.defineProperty(SR,"SDK_INFO",{enumerable:!0,get:function(){return doe.SDK_INFO}});Object.defineProperty(SR,"_globalThis",{enumerable:!0,get:function(){return doe._globalThis}});Object.defineProperty(SR,"getEnv",{enumerable:!0,get:function(){return doe.getEnv}});Object.defineProperty(SR,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return doe.getEnvWithoutDefaults}});Object.defineProperty(SR,"hexToBase64",{enumerable:!0,get:function(){return doe.hexToBase64}});Object.defineProperty(SR,"otperformance",{enumerable:!0,get:function(){return doe.otperformance}});Object.defineProperty(SR,"unrefTimer",{enumerable:!0,get:function(){return doe.unrefTimer}})});var iBi=z(fE=>{"use strict";Object.defineProperty(fE,"__esModule",{value:!0});fE.addHrTimes=fE.isTimeInput=fE.isTimeInputHrTime=fE.hrTimeToMicroseconds=fE.hrTimeToMilliseconds=fE.hrTimeToNanoseconds=fE.hrTimeToTimeStamp=fE.hrTimeDuration=fE.timeInputToHrTime=fE.hrTime=fE.getTimeOrigin=fE.millisToHrTime=void 0;var $mr=qmr(),tBi=9,VVa=6,WVa=Math.pow(10,VVa),v0t=Math.pow(10,tBi);function nYe(e){let t=e/1e3,r=Math.trunc(t),s=Math.round(e%1e3*WVa);return[r,s]}fE.millisToHrTime=nYe;function ehr(){let e=$mr.otperformance.timeOrigin;if(typeof e!="number"){let t=$mr.otperformance;e=t.timing&&t.timing.fetchStart}return e}fE.getTimeOrigin=ehr;function rBi(e){let t=nYe(ehr()),r=nYe(typeof e=="number"?e:$mr.otperformance.now());return nBi(t,r)}fE.hrTime=rBi;function PVa(e){if(thr(e))return e;if(typeof e=="number")return e=v0t&&(r[1]-=v0t,r[0]+=1),r}fE.addHrTimes=nBi});var sBi=z(iYe=>{"use strict";Object.defineProperty(iYe,"__esModule",{value:!0});iYe.ExportResultCode=void 0;var JVa;(function(e){e[e.SUCCESS=0]="SUCCESS",e[e.FAILED=1]="FAILED"})(JVa=iYe.ExportResultCode||(iYe.ExportResultCode={}))});var aBi=z(S0t=>{"use strict";Object.defineProperty(S0t,"__esModule",{value:!0});S0t.CompositePropagator=void 0;var oBi=(vI(),Ai(BI)),rhr=class{constructor(t={}){var r;this._propagators=(r=t.propagators)!==null&&r!==void 0?r:[],this._fields=Array.from(new Set(this._propagators.map(s=>typeof s.fields=="function"?s.fields():[]).reduce((s,a)=>s.concat(a),[])))}inject(t,r,s){for(let a of this._propagators)try{a.inject(t,r,s)}catch(o){oBi.diag.warn(`Failed to inject with ${a.constructor.name}. Err: ${o.message}`)}}extract(t,r,s){return this._propagators.reduce((a,o)=>{try{return o.extract(a,r,s)}catch(g){oBi.diag.warn(`Failed to extract with ${o.constructor.name}. Err: ${g.message}`)}return a},t)}fields(){return this._fields.slice()}};S0t.CompositePropagator=rhr});var cBi=z(mwe=>{"use strict";Object.defineProperty(mwe,"__esModule",{value:!0});mwe.validateValue=mwe.validateKey=void 0;var nhr="[_0-9a-z-*/]",UVa=`[a-z]${nhr}{0,255}`,KVa=`[a-z0-9]${nhr}{0,240}@[a-z]${nhr}{0,13}`,jVa=new RegExp(`^(?:${UVa}|${KVa})$`),zVa=/^[ -~]{0,255}[!-~]$/,qVa=/,|=/;function $Va(e){return jVa.test(e)}mwe.validateKey=$Va;function eWa(e){return zVa.test(e)&&!qVa.test(e)}mwe.validateValue=eWa});var shr=z(w0t=>{"use strict";Object.defineProperty(w0t,"__esModule",{value:!0});w0t.TraceState=void 0;var lBi=cBi(),uBi=32,tWa=512,gBi=",",ABi="=",ihr=class e{constructor(t){this._internalState=new Map,t&&this._parse(t)}set(t,r){let s=this._clone();return s._internalState.has(t)&&s._internalState.delete(t),s._internalState.set(t,r),s}unset(t){let r=this._clone();return r._internalState.delete(t),r}get(t){return this._internalState.get(t)}serialize(){return this._keys().reduce((t,r)=>(t.push(r+ABi+this.get(r)),t),[]).join(gBi)}_parse(t){t.length>tWa||(this._internalState=t.split(gBi).reverse().reduce((r,s)=>{let a=s.trim(),o=a.indexOf(ABi);if(o!==-1){let g=a.slice(0,o),p=a.slice(o+1,s.length);(0,lBi.validateKey)(g)&&(0,lBi.validateValue)(p)&&r.set(g,p)}return r},new Map),this._internalState.size>uBi&&(this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,uBi))))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let t=new e;return t._internalState=new Map(this._internalState),t}};w0t.TraceState=ihr});var pBi=z(Kk=>{"use strict";Object.defineProperty(Kk,"__esModule",{value:!0});Kk.W3CTraceContextPropagator=Kk.parseTraceParent=Kk.TRACE_STATE_HEADER=Kk.TRACE_PARENT_HEADER=void 0;var T0t=(vI(),Ai(BI)),rWa=eYe(),nWa=shr();Kk.TRACE_PARENT_HEADER="traceparent";Kk.TRACE_STATE_HEADER="tracestate";var iWa="00",sWa="(?!ff)[\\da-f]{2}",oWa="(?![0]{32})[\\da-f]{32}",aWa="(?![0]{16})[\\da-f]{16}",cWa="[\\da-f]{2}",lWa=new RegExp(`^\\s?(${sWa})-(${oWa})-(${aWa})-(${cWa})(-.*)?\\s?$`);function dBi(e){let t=lWa.exec(e);return!t||t[1]==="00"&&t[5]?null:{traceId:t[2],spanId:t[3],traceFlags:parseInt(t[4],16)}}Kk.parseTraceParent=dBi;var ohr=class{inject(t,r,s){let a=T0t.trace.getSpanContext(t);if(!a||(0,rWa.isTracingSuppressed)(t)||!(0,T0t.isSpanContextValid)(a))return;let o=`${iWa}-${a.traceId}-${a.spanId}-0${Number(a.traceFlags||T0t.TraceFlags.NONE).toString(16)}`;s.set(r,Kk.TRACE_PARENT_HEADER,o),a.traceState&&s.set(r,Kk.TRACE_STATE_HEADER,a.traceState.serialize())}extract(t,r,s){let a=s.get(r,Kk.TRACE_PARENT_HEADER);if(!a)return t;let o=Array.isArray(a)?a[0]:a;if(typeof o!="string")return t;let g=dBi(o);if(!g)return t;g.isRemote=!0;let p=s.get(r,Kk.TRACE_STATE_HEADER);if(p){let f=Array.isArray(p)?p.join(","):p;g.traceState=new nWa.TraceState(typeof f=="string"?f:void 0)}return T0t.trace.setSpanContext(t,g)}fields(){return[Kk.TRACE_PARENT_HEADER,Kk.TRACE_STATE_HEADER]}};Kk.W3CTraceContextPropagator=ohr});var fBi=z(BY=>{"use strict";Object.defineProperty(BY,"__esModule",{value:!0});BY.getRPCMetadata=BY.deleteRPCMetadata=BY.setRPCMetadata=BY.RPCType=void 0;var uWa=(vI(),Ai(BI)),ahr=(0,uWa.createContextKey)("OpenTelemetry SDK Context Key RPC_METADATA"),gWa;(function(e){e.HTTP="http"})(gWa=BY.RPCType||(BY.RPCType={}));function AWa(e,t){return e.setValue(ahr,t)}BY.setRPCMetadata=AWa;function dWa(e){return e.deleteValue(ahr)}BY.deleteRPCMetadata=dWa;function pWa(e){return e.getValue(ahr)}BY.getRPCMetadata=pWa});var lhr=z(N0t=>{"use strict";Object.defineProperty(N0t,"__esModule",{value:!0});N0t.AlwaysOffSampler=void 0;var fWa=(vI(),Ai(BI)),chr=class{shouldSample(){return{decision:fWa.SamplingDecision.NOT_RECORD}}toString(){return"AlwaysOffSampler"}};N0t.AlwaysOffSampler=chr});var ghr=z(R0t=>{"use strict";Object.defineProperty(R0t,"__esModule",{value:!0});R0t.AlwaysOnSampler=void 0;var IWa=(vI(),Ai(BI)),uhr=class{shouldSample(){return{decision:IWa.SamplingDecision.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}};R0t.AlwaysOnSampler=uhr});var CBi=z(x0t=>{"use strict";Object.defineProperty(x0t,"__esModule",{value:!0});x0t.ParentBasedSampler=void 0;var D0t=(vI(),Ai(BI)),CWa=Hmr(),IBi=lhr(),Ahr=ghr(),dhr=class{constructor(t){var r,s,a,o;this._root=t.root,this._root||((0,CWa.globalErrorHandler)(new Error("ParentBasedSampler must have a root sampler configured")),this._root=new Ahr.AlwaysOnSampler),this._remoteParentSampled=(r=t.remoteParentSampled)!==null&&r!==void 0?r:new Ahr.AlwaysOnSampler,this._remoteParentNotSampled=(s=t.remoteParentNotSampled)!==null&&s!==void 0?s:new IBi.AlwaysOffSampler,this._localParentSampled=(a=t.localParentSampled)!==null&&a!==void 0?a:new Ahr.AlwaysOnSampler,this._localParentNotSampled=(o=t.localParentNotSampled)!==null&&o!==void 0?o:new IBi.AlwaysOffSampler}shouldSample(t,r,s,a,o,g){let p=D0t.trace.getSpanContext(t);return!p||!(0,D0t.isSpanContextValid)(p)?this._root.shouldSample(t,r,s,a,o,g):p.isRemote?p.traceFlags&D0t.TraceFlags.SAMPLED?this._remoteParentSampled.shouldSample(t,r,s,a,o,g):this._remoteParentNotSampled.shouldSample(t,r,s,a,o,g):p.traceFlags&D0t.TraceFlags.SAMPLED?this._localParentSampled.shouldSample(t,r,s,a,o,g):this._localParentNotSampled.shouldSample(t,r,s,a,o,g)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}};x0t.ParentBasedSampler=dhr});var mBi=z(k0t=>{"use strict";Object.defineProperty(k0t,"__esModule",{value:!0});k0t.TraceIdRatioBasedSampler=void 0;var phr=(vI(),Ai(BI)),fhr=class{constructor(t=0){this._ratio=t,this._ratio=this._normalize(t),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(t,r){return{decision:(0,phr.isValidTraceId)(r)&&this._accumulate(r)=1?1:t<=0?0:t}_accumulate(t){let r=0;for(let s=0;s>>0}return r}};k0t.TraceIdRatioBasedSampler=fhr});var EBi=z(G0t=>{"use strict";Object.defineProperty(G0t,"__esModule",{value:!0});G0t.isPlainObject=void 0;var mWa="[object Object]",hWa="[object Null]",_Wa="[object Undefined]",yWa=Function.prototype,hBi=yWa.toString,bWa=hBi.call(Object),EWa=BWa(Object.getPrototypeOf,Object),_Bi=Object.prototype,yBi=_Bi.hasOwnProperty,EIe=Symbol?Symbol.toStringTag:void 0,bBi=_Bi.toString;function BWa(e,t){return function(r){return e(t(r))}}function vWa(e){if(!SWa(e)||wWa(e)!==mWa)return!1;let t=EWa(e);if(t===null)return!0;let r=yBi.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&hBi.call(r)===bWa}G0t.isPlainObject=vWa;function SWa(e){return e!=null&&typeof e=="object"}function wWa(e){return e==null?e===void 0?_Wa:hWa:EIe&&EIe in Object(e)?TWa(e):NWa(e)}function TWa(e){let t=yBi.call(e,EIe),r=e[EIe],s=!1;try{e[EIe]=void 0,s=!0}catch{}let a=bBi.call(e);return s&&(t?e[EIe]=r:delete e[EIe]),a}function NWa(e){return bBi.call(e)}});var TBi=z(L0t=>{"use strict";Object.defineProperty(L0t,"__esModule",{value:!0});L0t.merge=void 0;var BBi=EBi(),RWa=20;function DWa(...e){let t=e.shift(),r=new WeakMap;for(;e.length>0;)t=SBi(t,e.shift(),0,r);return t}L0t.merge=DWa;function Ihr(e){return Z0t(e)?e.slice():e}function SBi(e,t,r=0,s){let a;if(!(r>RWa)){if(r++,F0t(e)||F0t(t)||wBi(t))a=Ihr(t);else if(Z0t(e)){if(a=e.slice(),Z0t(t))for(let o=0,g=t.length;o"u"?delete a[f]:a[f]=m;else{let y=a[f],B=m;if(vBi(e,f,s)||vBi(t,f,s))delete a[f];else{if(sYe(y)&&sYe(B)){let v=s.get(y)||[],k=s.get(B)||[];v.push({obj:e,key:f}),k.push({obj:t,key:f}),s.set(y,v),s.set(B,k)}a[f]=SBi(a[f],m,r,s)}}}}else a=t;return a}}function vBi(e,t,r){let s=r.get(e[t])||[];for(let a=0,o=s.length;a"u"||e instanceof Date||e instanceof RegExp||e===null}function xWa(e,t){return!(!(0,BBi.isPlainObject)(e)||!(0,BBi.isPlainObject)(t))}});var NBi=z(hwe=>{"use strict";Object.defineProperty(hwe,"__esModule",{value:!0});hwe.callWithTimeout=hwe.TimeoutError=void 0;var V0t=class e extends Error{constructor(t){super(t),Object.setPrototypeOf(this,e.prototype)}};hwe.TimeoutError=V0t;function kWa(e,t){let r,s=new Promise(function(o,g){r=setTimeout(function(){g(new V0t("Operation timed out."))},t)});return Promise.race([e,s]).then(a=>(clearTimeout(r),a),a=>{throw clearTimeout(r),a})}hwe.callWithTimeout=kWa});var DBi=z(_we=>{"use strict";Object.defineProperty(_we,"__esModule",{value:!0});_we.isUrlIgnored=_we.urlMatches=void 0;function RBi(e,t){return typeof t=="string"?e===t:!!e.match(t)}_we.urlMatches=RBi;function GWa(e,t){if(!t)return!1;for(let r of t)if(RBi(e,r))return!0;return!1}_we.isUrlIgnored=GWa});var xBi=z(W0t=>{"use strict";Object.defineProperty(W0t,"__esModule",{value:!0});W0t.isWrapped=void 0;function FWa(e){return typeof e=="function"&&typeof e.__original=="function"&&typeof e.__unwrap=="function"&&e.__wrapped===!0}W0t.isWrapped=FWa});var kBi=z(P0t=>{"use strict";Object.defineProperty(P0t,"__esModule",{value:!0});P0t.Deferred=void 0;var Chr=class{constructor(){this._promise=new Promise((t,r)=>{this._resolve=t,this._reject=r})}get promise(){return this._promise}resolve(t){this._resolve(t)}reject(t){this._reject(t)}};P0t.Deferred=Chr});var GBi=z(O0t=>{"use strict";Object.defineProperty(O0t,"__esModule",{value:!0});O0t.BindOnceFuture=void 0;var ZWa=kBi(),mhr=class{constructor(t,r){this._callback=t,this._that=r,this._isCalled=!1,this._deferred=new ZWa.Deferred}get isCalled(){return this._isCalled}get promise(){return this._deferred.promise}call(...t){if(!this._isCalled){this._isCalled=!0;try{Promise.resolve(this._callback.call(this._that,...t)).then(r=>this._deferred.resolve(r),r=>this._deferred.reject(r))}catch(r){this._deferred.reject(r)}}return this._deferred.promise}};O0t.BindOnceFuture=mhr});var ZBi=z(Q0t=>{"use strict";Object.defineProperty(Q0t,"__esModule",{value:!0});Q0t._export=void 0;var FBi=(vI(),Ai(BI)),LWa=eYe();function VWa(e,t){return new Promise(r=>{FBi.context.with((0,LWa.suppressTracing)(FBi.context.active()),()=>{e.export(t,s=>{r(s)})})})}Q0t._export=VWa});var yhr=z(Da=>{"use strict";Object.defineProperty(Da,"__esModule",{value:!0});Da.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=Da.DEFAULT_ATTRIBUTE_COUNT_LIMIT=Da.TraceState=Da.unsuppressTracing=Da.suppressTracing=Da.isTracingSuppressed=Da.TraceIdRatioBasedSampler=Da.ParentBasedSampler=Da.AlwaysOnSampler=Da.AlwaysOffSampler=Da.setRPCMetadata=Da.getRPCMetadata=Da.deleteRPCMetadata=Da.RPCType=Da.parseTraceParent=Da.W3CTraceContextPropagator=Da.TRACE_STATE_HEADER=Da.TRACE_PARENT_HEADER=Da.CompositePropagator=Da.unrefTimer=Da.otperformance=Da.hexToBase64=Da.getEnvWithoutDefaults=Da.getEnv=Da._globalThis=Da.SDK_INFO=Da.RandomIdGenerator=Da.baggageUtils=Da.ExportResultCode=Da.hexToBinary=Da.timeInputToHrTime=Da.millisToHrTime=Da.isTimeInputHrTime=Da.isTimeInput=Da.hrTimeToTimeStamp=Da.hrTimeToNanoseconds=Da.hrTimeToMilliseconds=Da.hrTimeToMicroseconds=Da.hrTimeDuration=Da.hrTime=Da.getTimeOrigin=Da.addHrTimes=Da.loggingErrorHandler=Da.setGlobalErrorHandler=Da.globalErrorHandler=Da.sanitizeAttributes=Da.isAttributeValue=Da.isAttributeKey=Da.AnchoredClock=Da.W3CBaggagePropagator=void 0;Da.internal=Da.VERSION=Da.BindOnceFuture=Da.isWrapped=Da.urlMatches=Da.isUrlIgnored=Da.callWithTimeout=Da.TimeoutError=Da.TracesSamplerValues=Da.merge=Da.parseEnvironment=Da.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=Da.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=Da.DEFAULT_ENVIRONMENT=void 0;var WWa=phi();Object.defineProperty(Da,"W3CBaggagePropagator",{enumerable:!0,get:function(){return WWa.W3CBaggagePropagator}});var PWa=fhi();Object.defineProperty(Da,"AnchoredClock",{enumerable:!0,get:function(){return PWa.AnchoredClock}});var hhr=_hi();Object.defineProperty(Da,"isAttributeKey",{enumerable:!0,get:function(){return hhr.isAttributeKey}});Object.defineProperty(Da,"isAttributeValue",{enumerable:!0,get:function(){return hhr.isAttributeValue}});Object.defineProperty(Da,"sanitizeAttributes",{enumerable:!0,get:function(){return hhr.sanitizeAttributes}});var LBi=Hmr();Object.defineProperty(Da,"globalErrorHandler",{enumerable:!0,get:function(){return LBi.globalErrorHandler}});Object.defineProperty(Da,"setGlobalErrorHandler",{enumerable:!0,get:function(){return LBi.setGlobalErrorHandler}});var OWa=Mmr();Object.defineProperty(Da,"loggingErrorHandler",{enumerable:!0,get:function(){return OWa.loggingErrorHandler}});var LQ=iBi();Object.defineProperty(Da,"addHrTimes",{enumerable:!0,get:function(){return LQ.addHrTimes}});Object.defineProperty(Da,"getTimeOrigin",{enumerable:!0,get:function(){return LQ.getTimeOrigin}});Object.defineProperty(Da,"hrTime",{enumerable:!0,get:function(){return LQ.hrTime}});Object.defineProperty(Da,"hrTimeDuration",{enumerable:!0,get:function(){return LQ.hrTimeDuration}});Object.defineProperty(Da,"hrTimeToMicroseconds",{enumerable:!0,get:function(){return LQ.hrTimeToMicroseconds}});Object.defineProperty(Da,"hrTimeToMilliseconds",{enumerable:!0,get:function(){return LQ.hrTimeToMilliseconds}});Object.defineProperty(Da,"hrTimeToNanoseconds",{enumerable:!0,get:function(){return LQ.hrTimeToNanoseconds}});Object.defineProperty(Da,"hrTimeToTimeStamp",{enumerable:!0,get:function(){return LQ.hrTimeToTimeStamp}});Object.defineProperty(Da,"isTimeInput",{enumerable:!0,get:function(){return LQ.isTimeInput}});Object.defineProperty(Da,"isTimeInputHrTime",{enumerable:!0,get:function(){return LQ.isTimeInputHrTime}});Object.defineProperty(Da,"millisToHrTime",{enumerable:!0,get:function(){return LQ.millisToHrTime}});Object.defineProperty(Da,"timeInputToHrTime",{enumerable:!0,get:function(){return LQ.timeInputToHrTime}});var QWa=Umr();Object.defineProperty(Da,"hexToBinary",{enumerable:!0,get:function(){return QWa.hexToBinary}});var MWa=sBi();Object.defineProperty(Da,"ExportResultCode",{enumerable:!0,get:function(){return MWa.ExportResultCode}});var M0t=Vmr();Da.baggageUtils={getKeyPairs:M0t.getKeyPairs,serializeKeyPairs:M0t.serializeKeyPairs,parseKeyPairsIntoRecord:M0t.parseKeyPairsIntoRecord,parsePairKeyValue:M0t.parsePairKeyValue};var poe=qmr();Object.defineProperty(Da,"RandomIdGenerator",{enumerable:!0,get:function(){return poe.RandomIdGenerator}});Object.defineProperty(Da,"SDK_INFO",{enumerable:!0,get:function(){return poe.SDK_INFO}});Object.defineProperty(Da,"_globalThis",{enumerable:!0,get:function(){return poe._globalThis}});Object.defineProperty(Da,"getEnv",{enumerable:!0,get:function(){return poe.getEnv}});Object.defineProperty(Da,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return poe.getEnvWithoutDefaults}});Object.defineProperty(Da,"hexToBase64",{enumerable:!0,get:function(){return poe.hexToBase64}});Object.defineProperty(Da,"otperformance",{enumerable:!0,get:function(){return poe.otperformance}});Object.defineProperty(Da,"unrefTimer",{enumerable:!0,get:function(){return poe.unrefTimer}});var HWa=aBi();Object.defineProperty(Da,"CompositePropagator",{enumerable:!0,get:function(){return HWa.CompositePropagator}});var H0t=pBi();Object.defineProperty(Da,"TRACE_PARENT_HEADER",{enumerable:!0,get:function(){return H0t.TRACE_PARENT_HEADER}});Object.defineProperty(Da,"TRACE_STATE_HEADER",{enumerable:!0,get:function(){return H0t.TRACE_STATE_HEADER}});Object.defineProperty(Da,"W3CTraceContextPropagator",{enumerable:!0,get:function(){return H0t.W3CTraceContextPropagator}});Object.defineProperty(Da,"parseTraceParent",{enumerable:!0,get:function(){return H0t.parseTraceParent}});var Y0t=fBi();Object.defineProperty(Da,"RPCType",{enumerable:!0,get:function(){return Y0t.RPCType}});Object.defineProperty(Da,"deleteRPCMetadata",{enumerable:!0,get:function(){return Y0t.deleteRPCMetadata}});Object.defineProperty(Da,"getRPCMetadata",{enumerable:!0,get:function(){return Y0t.getRPCMetadata}});Object.defineProperty(Da,"setRPCMetadata",{enumerable:!0,get:function(){return Y0t.setRPCMetadata}});var YWa=lhr();Object.defineProperty(Da,"AlwaysOffSampler",{enumerable:!0,get:function(){return YWa.AlwaysOffSampler}});var XWa=ghr();Object.defineProperty(Da,"AlwaysOnSampler",{enumerable:!0,get:function(){return XWa.AlwaysOnSampler}});var JWa=CBi();Object.defineProperty(Da,"ParentBasedSampler",{enumerable:!0,get:function(){return JWa.ParentBasedSampler}});var UWa=mBi();Object.defineProperty(Da,"TraceIdRatioBasedSampler",{enumerable:!0,get:function(){return UWa.TraceIdRatioBasedSampler}});var _hr=eYe();Object.defineProperty(Da,"isTracingSuppressed",{enumerable:!0,get:function(){return _hr.isTracingSuppressed}});Object.defineProperty(Da,"suppressTracing",{enumerable:!0,get:function(){return _hr.suppressTracing}});Object.defineProperty(Da,"unsuppressTracing",{enumerable:!0,get:function(){return _hr.unsuppressTracing}});var KWa=shr();Object.defineProperty(Da,"TraceState",{enumerable:!0,get:function(){return KWa.TraceState}});var ywe=Xmr();Object.defineProperty(Da,"DEFAULT_ATTRIBUTE_COUNT_LIMIT",{enumerable:!0,get:function(){return ywe.DEFAULT_ATTRIBUTE_COUNT_LIMIT}});Object.defineProperty(Da,"DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT",{enumerable:!0,get:function(){return ywe.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT}});Object.defineProperty(Da,"DEFAULT_ENVIRONMENT",{enumerable:!0,get:function(){return ywe.DEFAULT_ENVIRONMENT}});Object.defineProperty(Da,"DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT",{enumerable:!0,get:function(){return ywe.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT}});Object.defineProperty(Da,"DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT",{enumerable:!0,get:function(){return ywe.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT}});Object.defineProperty(Da,"parseEnvironment",{enumerable:!0,get:function(){return ywe.parseEnvironment}});var jWa=TBi();Object.defineProperty(Da,"merge",{enumerable:!0,get:function(){return jWa.merge}});var zWa=Ymr();Object.defineProperty(Da,"TracesSamplerValues",{enumerable:!0,get:function(){return zWa.TracesSamplerValues}});var VBi=NBi();Object.defineProperty(Da,"TimeoutError",{enumerable:!0,get:function(){return VBi.TimeoutError}});Object.defineProperty(Da,"callWithTimeout",{enumerable:!0,get:function(){return VBi.callWithTimeout}});var WBi=DBi();Object.defineProperty(Da,"isUrlIgnored",{enumerable:!0,get:function(){return WBi.isUrlIgnored}});Object.defineProperty(Da,"urlMatches",{enumerable:!0,get:function(){return WBi.urlMatches}});var qWa=xBi();Object.defineProperty(Da,"isWrapped",{enumerable:!0,get:function(){return qWa.isWrapped}});var $Wa=GBi();Object.defineProperty(Da,"BindOnceFuture",{enumerable:!0,get:function(){return $Wa.BindOnceFuture}});var e3a=jmr();Object.defineProperty(Da,"VERSION",{enumerable:!0,get:function(){return e3a.VERSION}});var t3a=ZBi();Da.internal={_export:t3a._export}});var QBi=z((FRl,bhr)=>{"use strict";if(typeof SharedArrayBuffer<"u"&&typeof Atomics<"u"){let t=function(r){if((r>0&&r<1/0)===!1)throw typeof r!="number"&&typeof r!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");Atomics.wait(e,0,0,Number(r))},e=new Int32Array(new SharedArrayBuffer(4));bhr.exports=t}else{let e=function(t){if((t>0&&t<1/0)===!1)throw typeof t!="number"&&typeof t!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");let s=Date.now()+Number(t);for(;s>Date.now(););};bhr.exports=e}});var jBi=z((ZRl,KBi)=>{"use strict";var uS=xt("fs"),r3a=xt("events"),n3a=xt("util").inherits,MBi=xt("path"),Bhr=QBi(),J0t=100,U0t=Buffer.allocUnsafe(0),i3a=16*1024,HBi="buffer",YBi="utf8";function XBi(e,t){t._opening=!0,t._writing=!0,t._asyncDrainScheduled=!1;function r(o,g){if(o){t._reopening=!1,t._writing=!1,t._opening=!1,t.sync?process.nextTick(()=>{t.listenerCount("error")>0&&t.emit("error",o)}):t.emit("error",o);return}let p=t._reopening;t.fd=g,t.file=e,t._reopening=!1,t._opening=!1,t._writing=!1,t.sync?process.nextTick(()=>t.emit("ready")):t.emit("ready"),!t.destroyed&&(!t._writing&&t._len>t.minLength||t._flushPending?t._actualWrite():p&&process.nextTick(()=>t.emit("drain")))}let s=t.append?"a":"w",a=t.mode;if(t.sync)try{t.mkdir&&uS.mkdirSync(MBi.dirname(e),{recursive:!0});let o=uS.openSync(e,s,a);r(null,o)}catch(o){throw r(o),o}else t.mkdir?uS.mkdir(MBi.dirname(e),{recursive:!0},o=>{if(o)return r(o);uS.open(e,s,a,r)}):uS.open(e,s,a,r)}function vY(e){if(!(this instanceof vY))return new vY(e);let{fd:t,dest:r,minLength:s,maxLength:a,maxWrite:o,sync:g,append:p=!0,mkdir:f,retryEAGAIN:m,fsync:y,contentMode:B,mode:v}=e||{};t=t||r,this._len=0,this.fd=-1,this._bufs=[],this._lens=[],this._writing=!1,this._ending=!1,this._reopening=!1,this._asyncDrainScheduled=!1,this._flushPending=!1,this._hwm=Math.max(s||0,16387),this.file=null,this.destroyed=!1,this.minLength=s||0,this.maxLength=a||0,this.maxWrite=o||i3a,this.sync=g||!1,this.writable=!0,this._fsync=y||!1,this.append=p||!1,this.mode=v,this.retryEAGAIN=m||(()=>!0),this.mkdir=f||!1;let k,T;if(B===HBi)this._writingBuf=U0t,this.write=a3a,this.flush=l3a,this.flushSync=g3a,this._actualWrite=d3a,k=()=>uS.writeSync(this.fd,this._writingBuf),T=()=>uS.write(this.fd,this._writingBuf,this.release);else if(B===void 0||B===YBi)this._writingBuf="",this.write=o3a,this.flush=c3a,this.flushSync=u3a,this._actualWrite=A3a,k=()=>uS.writeSync(this.fd,this._writingBuf,"utf8"),T=()=>uS.write(this.fd,this._writingBuf,"utf8",this.release);else throw new Error(`SonicBoom supports "${YBi}" and "${HBi}", but passed ${B}`);if(typeof t=="number")this.fd=t,process.nextTick(()=>this.emit("ready"));else if(typeof t=="string")XBi(t,this);else throw new Error("SonicBoom supports only file descriptors and files");if(this.minLength>=this.maxWrite)throw new Error(`minLength should be smaller than maxWrite (${this.maxWrite})`);this.release=(O,X)=>{if(O){if((O.code==="EAGAIN"||O.code==="EBUSY")&&this.retryEAGAIN(O,this._writingBuf.length,this._len-this._writingBuf.length))if(this.sync)try{Bhr(J0t),this.release(void 0,0)}catch(ae){this.release(ae)}else setTimeout(T,J0t);else this._writing=!1,this.emit("error",O);return}this.emit("write",X);let U=Ehr(this._writingBuf,this._len,X);if(this._len=U.len,this._writingBuf=U.writingBuf,this._writingBuf.length){if(!this.sync){T();return}try{do{let ae=k(),ge=Ehr(this._writingBuf,this._len,ae);this._len=ge.len,this._writingBuf=ge.writingBuf}while(this._writingBuf.length)}catch(ae){this.release(ae);return}}this._fsync&&uS.fsyncSync(this.fd);let le=this._len;this._reopening?(this._writing=!1,this._reopening=!1,this.reopen()):le>this.minLength?this._actualWrite():this._ending?le>0?this._actualWrite():(this._writing=!1,K0t(this)):(this._writing=!1,this.sync?this._asyncDrainScheduled||(this._asyncDrainScheduled=!0,process.nextTick(s3a,this)):this.emit("drain"))},this.on("newListener",function(O){O==="drain"&&(this._asyncDrainScheduled=!1)})}function Ehr(e,t,r){return typeof e=="string"&&Buffer.byteLength(e)!==r&&(r=Buffer.from(e).subarray(0,r).toString().length),t=Math.max(t-r,0),e=e.slice(r),{writingBuf:e,len:t}}function s3a(e){e.listenerCount("drain")>0&&(e._asyncDrainScheduled=!1,e.emit("drain"))}n3a(vY,r3a);function JBi(e,t){return e.length===0?U0t:e.length===1?e[0]:Buffer.concat(e,t)}function o3a(e){if(this.destroyed)throw new Error("SonicBoom destroyed");let t=this._len+e.length,r=this._bufs;return this.maxLength&&t>this.maxLength?(this.emit("drop",e),this._lenthis.maxWrite?r.push(""+e):r[r.length-1]+=e,this._len=t,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._lenthis.maxLength?(this.emit("drop",e),this._lenthis.maxWrite?(r.push([e]),s.push(e.length)):(r[r.length-1].push(e),s[s.length-1]+=e.length),this._len=t,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._len{this._fsync?(this._flushPending=!1,e()):uS.fsync(this.fd,s=>{this._flushPending=!1,e(s)}),this.off("error",r)},r=s=>{this._flushPending=!1,e(s),this.off("drain",t)};this.once("drain",t),this.once("error",r)}function c3a(e){if(e!=null&&typeof e!="function")throw new Error("flush cb must be a function");if(this.destroyed){let t=new Error("SonicBoom destroyed");if(e){e(t);return}throw t}if(this.minLength<=0){e?.();return}e&&UBi.call(this,e),!this._writing&&(this._bufs.length===0&&this._bufs.push(""),this._actualWrite())}function l3a(e){if(e!=null&&typeof e!="function")throw new Error("flush cb must be a function");if(this.destroyed){let t=new Error("SonicBoom destroyed");if(e){e(t);return}throw t}if(this.minLength<=0){e?.();return}e&&UBi.call(this,e),!this._writing&&(this._bufs.length===0&&(this._bufs.push([]),this._lens.push(0)),this._actualWrite())}vY.prototype.reopen=function(e){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.reopen(e)});return}if(this._ending)return;if(!this.file)throw new Error("Unable to reopen a file descriptor, you must pass a file to SonicBoom");if(e&&(this.file=e),this._reopening=!0,this._writing)return;let t=this.fd;this.once("ready",()=>{t!==this.fd&&uS.close(t,r=>{if(r)return this.emit("error",r)})}),XBi(this.file,this)};vY.prototype.end=function(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.end()});return}this._ending||(this._ending=!0,!this._writing&&(this._len>0&&this.fd>=0?this._actualWrite():K0t(this)))};function u3a(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift(this._writingBuf),this._writingBuf="");let e="";for(;this._bufs.length||e;){e.length<=0&&(e=this._bufs[0]);try{let t=uS.writeSync(this.fd,e,"utf8"),r=Ehr(e,this._len,t);e=r.writingBuf,this._len=r.len,e.length<=0&&this._bufs.shift()}catch(t){if((t.code==="EAGAIN"||t.code==="EBUSY")&&!this.retryEAGAIN(t,e.length,this._len-e.length))throw t;Bhr(J0t)}}try{uS.fsyncSync(this.fd)}catch{}}function g3a(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift([this._writingBuf]),this._writingBuf=U0t);let e=U0t;for(;this._bufs.length||e.length;){e.length<=0&&(e=JBi(this._bufs[0],this._lens[0]));try{let t=uS.writeSync(this.fd,e);e=e.subarray(t),this._len=Math.max(this._len-t,0),e.length<=0&&(this._bufs.shift(),this._lens.shift())}catch(t){if((t.code==="EAGAIN"||t.code==="EBUSY")&&!this.retryEAGAIN(t,e.length,this._len-e.length))throw t;Bhr(J0t)}}}vY.prototype.destroy=function(){this.destroyed||K0t(this)};function A3a(){let e=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf||this._bufs.shift()||"",this.sync)try{let t=uS.writeSync(this.fd,this._writingBuf,"utf8");e(null,t)}catch(t){e(t)}else uS.write(this.fd,this._writingBuf,"utf8",e)}function d3a(){let e=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf.length?this._writingBuf:JBi(this._bufs.shift(),this._lens.shift()),this.sync)try{let t=uS.writeSync(this.fd,this._writingBuf);e(null,t)}catch(t){e(t)}else uS.write(this.fd,this._writingBuf,e)}function K0t(e){if(e.fd===-1){e.once("ready",K0t.bind(null,e));return}e.destroyed=!0,e._bufs=[],e._lens=[],uS.fsync(e.fd,t);function t(){e.fd!==1&&e.fd!==2?uS.close(e.fd,r):r()}function r(s){if(s){e.emit("error",s);return}e._ending&&!e._writing&&e.emit("finish"),e.emit("close")}}vY.SonicBoom=vY;vY.default=vY;KBi.exports=vY});var rvi=z((LRl,tvi)=>{"use strict";var SY={exit:[],beforeExit:[]},zBi={exit:I3a,beforeExit:C3a},bwe;function p3a(){bwe===void 0&&(bwe=new FinalizationRegistry(m3a))}function f3a(e){SY[e].length>0||process.on(e,zBi[e])}function qBi(e){SY[e].length>0||(process.removeListener(e,zBi[e]),SY.exit.length===0&&SY.beforeExit.length===0&&(bwe=void 0))}function I3a(){$Bi("exit")}function C3a(){$Bi("beforeExit")}function $Bi(e){for(let t of SY[e]){let r=t.deref(),s=t.fn;r!==void 0&&s(r,e)}SY[e]=[]}function m3a(e){for(let t of["exit","beforeExit"]){let r=SY[t].indexOf(e);SY[t].splice(r,r+1),qBi(t)}}function evi(e,t,r){if(t===void 0)throw new Error("the object can't be undefined");f3a(e);let s=new WeakRef(t);s.fn=r,p3a(),bwe.register(t,s),SY[e].push(s)}function h3a(e,t){evi("exit",e,t)}function _3a(e,t){evi("beforeExit",e,t)}function y3a(e){if(bwe!==void 0){bwe.unregister(e);for(let t of["exit","beforeExit"])SY[t]=SY[t].filter(r=>{let s=r.deref();return s&&s!==e}),qBi(t)}}tvi.exports={register:h3a,registerBeforeExit:_3a,unregister:y3a}});var Avi=z((Nhr,Rhr)=>{(function(e,t){typeof Nhr=="object"&&typeof Rhr<"u"?Rhr.exports=t():typeof define=="function"&&define.amd?define(t):(e=typeof globalThis<"u"?globalThis:e||self,e.uniqolor=t())})(Nhr,function(){"use strict";function e(Te,ke){var x=Te==null?null:typeof Symbol<"u"&&Te[Symbol.iterator]||Te["@@iterator"];if(x!=null){var et,Ue,Je,Xe,ft=[],Gt=!0,er=!1;try{if(Je=(x=x.call(Te)).next,ke===0){if(Object(x)!==x)return;Gt=!1}else for(;!(Gt=(et=Je.call(x)).done)&&(ft.push(et.value),ft.length!==ke);Gt=!0);}catch(Ur){er=!0,Ue=Ur}finally{try{if(!Gt&&x.return!=null&&(Xe=x.return(),Object(Xe)!==Xe))return}finally{if(er)throw Ue}}return ft}}function t(Te,ke){return a(Te)||e(Te,ke)||g(Te,ke)||m()}function r(Te){return s(Te)||o(Te)||g(Te)||f()}function s(Te){if(Array.isArray(Te))return p(Te)}function a(Te){if(Array.isArray(Te))return Te}function o(Te){if(typeof Symbol<"u"&&Te[Symbol.iterator]!=null||Te["@@iterator"]!=null)return Array.from(Te)}function g(Te,ke){if(Te){if(typeof Te=="string")return p(Te,ke);var x=Object.prototype.toString.call(Te).slice(8,-1);if(x==="Object"&&Te.constructor&&(x=Te.constructor.name),x==="Map"||x==="Set")return Array.from(Te);if(x==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(x))return p(Te,ke)}}function p(Te,ke){(ke==null||ke>Te.length)&&(ke=Te.length);for(var x=0,et=new Array(ke);x=Xe[0]&&Ue<=Xe[1])return Te(ke,x,et)}return Ue},X=function(ke){for(var x=ke.length,et=0,Ue=0;Ue1&&(et-=1),et<1/6?ke+(x-ke)*6*et:et<1/2?x:et<2/3?ke+(x-ke)*(2/3-et)*6:ke},ge=function(ke,x,et){var Ue,Je,Xe;if(ke/=360,x/=100,et/=100,x===0)Ue=Je=Xe=et;else{var ft=et<.5?et*(1+x):et+x-et*x,Gt=2*et-ft;Ue=ae(Gt,ft,ke+1/3),Je=ae(Gt,ft,ke),Xe=ae(Gt,ft,ke-1/3)}return[Math.round(Ue*255),Math.round(Je*255),Math.round(Xe*255)]},fe=function(ke,x,et,Ue){return(ke*299+x*587+et*114)/1e3>=Ue},pe=function(ke,x,et){return"hsl(".concat(ke,", ").concat(x,"%, ").concat(et,"%)")},he=function(ke,x,et,Ue){switch(Ue){case"rgb":return"rgb(".concat(ke,", ").concat(x,", ").concat(et,")");case"hex":default:return"#".concat(v(ke.toString(16))).concat(v(x.toString(16))).concat(v(et.toString(16)))}},be=function(ke){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},et=x.format,Ue=et===void 0?"hex":et,Je=x.saturation,Xe=Je===void 0?[50,55]:Je,ft=x.lightness,Gt=ft===void 0?[50,60]:ft,er=x.differencePoint,Ur=er===void 0?130:er,Ot=Math.abs(X(String(ke))),dr=U(Ot,[0,360]),Ar=U(Ot,le(Xe,y)),or=U(Ot,le(Gt,B)),Fr=ge(dr,Ar,or),$r=t(Fr,3),Or=$r[0],In=$r[1],Br=$r[2];return{color:Ue==="hsl"?pe(dr,Ar,or):he(Or,In,Br,Ue),isLight:fe(Or,In,Br,Ur)}};return be.random=function(){var Te=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},ke=Te.format,x=ke===void 0?"hex":ke,et=Te.saturation,Ue=et===void 0?[50,55]:et,Je=Te.lightness,Xe=Je===void 0?[50,60]:Je,ft=Te.differencePoint,Gt=ft===void 0?130:ft,er=Te.excludeHue;Ue=le(Ue,y),Xe=le(Xe,B);var Ur=er?O(0,359,er):T(0,359),Ot=typeof Ue=="number"?Ue:T.apply(void 0,r(Ue)),dr=typeof Xe=="number"?Xe:T.apply(void 0,r(Xe)),Ar=ge(Ur,Ot,dr),or=t(Ar,3),Fr=or[0],$r=or[1],Or=or[2];return{color:x==="hsl"?pe(Ur,Ot,dr):he(Fr,$r,Or,x),isLight:fe(Fr,$r,Or,Gt)}},be})});var Nhr=z(cK=>{"use strict";Object.defineProperty(cK,"__esModule",{value:!0});cK.TOKEN_TYPE_TO_HIGHLIGHT=cK.HighlightSubject=cK.TokenType=void 0;var m9;(function(e){e[e.WHITESPACE=0]="WHITESPACE",e[e.WORD=1]="WORD",e[e.QUOTE=2]="QUOTE",e[e.BACKTICK_QUOTE=3]="BACKTICK_QUOTE",e[e.RESERVED=4]="RESERVED",e[e.RESERVED_TOPLEVEL=5]="RESERVED_TOPLEVEL",e[e.RESERVED_NEWLINE=6]="RESERVED_NEWLINE",e[e.BOUNDARY=7]="BOUNDARY",e[e.COMMENT=8]="COMMENT",e[e.BLOCK_COMMENT=9]="BLOCK_COMMENT",e[e.NUMBER=10]="NUMBER",e[e.ERROR=11]="ERROR",e[e.VARIABLE=12]="VARIABLE",e[e.LITERAL=13]="LITERAL",e[e.BUILT_IN=14]="BUILT_IN"})(m9=cK.TokenType||(cK.TokenType={}));var h9;(function(e){e.BOUNDARY="boundary",e.WORD="word",e.BACKTICK_QUOTE="backtickQuote",e.QUOTE="quote",e.RESERVED="reserved",e.NUMBER="number",e.VARIABLE="variable",e.COMMENT="comment",e.FUNCTIONS="functions",e.LITERAL="literal",e.BUILT_IN="builtIn"})(h9=cK.HighlightSubject||(cK.HighlightSubject={}));cK.TOKEN_TYPE_TO_HIGHLIGHT={[m9.BOUNDARY]:h9.BOUNDARY,[m9.WORD]:h9.WORD,[m9.BACKTICK_QUOTE]:h9.BACKTICK_QUOTE,[m9.QUOTE]:h9.QUOTE,[m9.RESERVED]:h9.RESERVED,[m9.RESERVED_TOPLEVEL]:h9.RESERVED,[m9.RESERVED_NEWLINE]:h9.RESERVED,[m9.NUMBER]:h9.NUMBER,[m9.VARIABLE]:h9.VARIABLE,[m9.COMMENT]:h9.COMMENT,[m9.BLOCK_COMMENT]:h9.COMMENT,[m9.LITERAL]:h9.LITERAL,[m9.BUILT_IN]:h9.BUILT_IN}});var Dhr=z(eyt=>{"use strict";Object.defineProperty(eyt,"__esModule",{value:!0});eyt.Tokenizer=void 0;var zD=Nhr(),Rhr=class{constructor(){this.literal=["true","false","null","unknown"],this.builtIn=["array","bigint","binary","bit","blob","bool","boolean","char","character","date","dec","decimal","float","int","int8","integer","interval","number","numeric","real","record","serial","serial8","smallint","text","time","timestamp","tinyint","varchar","varchar2","varying","void"],this.reserved=["accessible","action","after","against","aggregate","algorithm","all","alter","analyse","analyze","as","asc","autocommit","auto_increment","backup","begin","between","binlog","both","cascade","case","change","changed","character set","charset","check","checksum","collate","collation","column","columns","comment","commit","committed","compressed","concurrent","constraint","contains","convert","create","cross","current_timestamp","database","databases","day","day_hour","day_minute","day_second","default","definer","delayed","delete","desc","describe","deterministic","distinct","distinctrow","div","do","dumpfile","duplicate","dynamic","else","enclosed","end","engine","engine_type","engines","escape","escaped","events","exec","execute","exists","explain","extended","fast","fields","file","first","fixed","flush","for","force","foreign","full","fulltext","function","global","grant","grants","group_concat","heap","high_priority","hosts","hour","hour_minute","hour_second","identified","if","ifnull","ignore","in","index","indexes","infile","insert","insert_id","insert_method","interval","into","invoker","is","isolation","key","keys","kill","last_insert_id","leading","level","like","linear","lines","load","local","lock","locks","logs","low_priority","maria","master","master_connect_retry","master_host","master_log_file","match","max_connections_per_hour","max_queries_per_hour","max_rows","max_updates_per_hour","max_user_connections","medium","merge","minute","minute_second","min_rows","mode","month","mrg_myisam","myisam","names","natural","not","now()","null","offset","on","open","optimize","option","optionally","on update","on delete","outfile","pack_keys","page","partial","partition","partitions","password","primary","privileges","procedure","process","processlist","purge","quick","range","raid0","raid_chunks","raid_chunksize","raid_type","read","read_only","read_write","references","regexp","reload","rename","repair","repeatable","replace","replication","reset","restore","restrict","return","returns","revoke","rlike","rollback","row","rows","row_format","second","security","separator","serializable","session","share","show","shutdown","slave","soname","sounds","sql","sql_auto_is_null","sql_big_result","sql_big_selects","sql_big_tables","sql_buffer_result","sql_calc_found_rows","sql_log_bin","sql_log_off","sql_log_update","sql_low_priority_updates","sql_max_join_size","sql_quote_show_create","sql_safe_updates","sql_select_limit","sql_slave_skip_counter","sql_small_result","sql_warnings","sql_cache","sql_no_cache","start","starting","status","stop","storage","straight_join","string","striped","super","table","tables","temporary","terminated","then","to","trailing","transactional","true","truncate","type","types","uncommitted","unique","unlock","unsigned","usage","use","using","variables","view","when","with","work","write","year_month"],this.reservedToplevel=["select","from","where","set","order by","group by","limit","drop","values","update","having","add","change","modify","alter table","delete from","union all","union","except","intersect"],this.reservedNewline=["left outer join","right outer join","left join","right join","outer join","inner join","join","xor","or","and"],this.functions=["abs","acos","adddate","addtime","aes_decrypt","aes_encrypt","area","asbinary","ascii","asin","astext","atan","atan2","avg","bdmpolyfromtext","bdmpolyfromwkb","bdpolyfromtext","bdpolyfromwkb","benchmark","bin","bit_and","bit_count","bit_length","bit_or","bit_xor","boundary","buffer","cast","ceil","ceiling","centroid","char","character_length","charset","char_length","coalesce","coercibility","collation","compress","concat","concat_ws","connection_id","contains","conv","convert","convert_tz","convexhull","cos","cot","count","crc32","crosses","curdate","current_date","current_time","current_timestamp","current_user","curtime","database","date","datediff","date_add","date_diff","date_format","date_sub","day","dayname","dayofmonth","dayofweek","dayofyear","decode","default","degrees","des_decrypt","des_encrypt","difference","dimension","disjoint","distance","elt","encode","encrypt","endpoint","envelope","equals","exp","export_set","exteriorring","extract","extractvalue","field","find_in_set","floor","format","found_rows","from_days","from_unixtime","geomcollfromtext","geomcollfromwkb","geometrycollection","geometrycollectionfromtext","geometrycollectionfromwkb","geometryfromtext","geometryfromwkb","geometryn","geometrytype","geomfromtext","geomfromwkb","get_format","get_lock","glength","greatest","group_concat","group_unique_users","hex","hour","if","ifnull","inet_aton","inet_ntoa","insert","instr","interiorringn","intersection","intersects","interval","isclosed","isempty","isnull","isring","issimple","is_free_lock","is_used_lock","last_day","last_insert_id","lcase","least","left","length","linefromtext","linefromwkb","linestring","linestringfromtext","linestringfromwkb","ln","load_file","localtime","localtimestamp","locate","log","log10","log2","lower","lpad","ltrim","makedate","maketime","make_set","master_pos_wait","max","mbrcontains","mbrdisjoint","mbrequal","mbrintersects","mbroverlaps","mbrtouches","mbrwithin","md5","microsecond","mid","min","minute","mlinefromtext","mlinefromwkb","mod","month","monthname","mpointfromtext","mpointfromwkb","mpolyfromtext","mpolyfromwkb","multilinestring","multilinestringfromtext","multilinestringfromwkb","multipoint","multipointfromtext","multipointfromwkb","multipolygon","multipolygonfromtext","multipolygonfromwkb","name_const","nullif","numgeometries","numinteriorrings","numpoints","oct","octet_length","old_password","ord","overlaps","password","period_add","period_diff","pi","point","pointfromtext","pointfromwkb","pointn","pointonsurface","polyfromtext","polyfromwkb","polygon","polygonfromtext","polygonfromwkb","position","pow","power","quarter","quote","radians","rand","related","release_lock","repeat","replace","reverse","right","round","row_count","rpad","rtrim","schema","second","sec_to_time","session_user","sha","sha1","sign","sin","sleep","soundex","space","sqrt","srid","startpoint","std","stddev","stddev_pop","stddev_samp","strcmp","str_to_date","subdate","substr","substring","substring_index","subtime","sum","symdifference","sysdate","system_user","tan","time","timediff","timestamp","timestampadd","timestampdiff","time_format","time_to_sec","touches","to_days","trim","truncate","ucase","uncompress","uncompressed_length","unhex","unique_users","unix_timestamp","updatexml","upper","user","utc_date","utc_time","utc_timestamp","uuid","variance","var_pop","var_samp","version","week","weekday","weekofyear","within","x","y","year","yearweek"],this.boundaries=[",",";",":",")","(",".","=","<",">","+","-","*","/","!","^","%","|","&","#"],this.regexBoundaries="("+this.quoteRegex(this.boundaries).join("|")+")",this.regexReserved="("+this.quoteRegex(this.reserved).join("|")+")",this.regexReservedToplevel=`(${this.quoteRegex(this.reservedToplevel).join("|")})`.replace(/ /g,"\\s+"),this.regexReservedNewline=`(${this.quoteRegex(this.reservedNewline).join("|")})`.replace(/ /g,"\\s+"),this.regexFunction="("+this.quoteRegex(this.functions).join("|")+")",this.regexLiteral="("+this.quoteRegex(this.literal).join("|")+")",this.regexBuiltIn="("+this.quoteRegex(this.builtIn).join("|")+")"}tokenize(t){let r=[],s=t.length+1,a,o=t.length;for(;o;){if(s<=o)return r.push({type:zD.TokenType.ERROR,value:t}),r;s=o,a=this.createNextToken(t,a);let g=a.value.length;r.push(a),t=t.substr(g),o-=g}return r}createNextToken(t,r){let s;if(s=t.match(/^\s+/),s)return{type:zD.TokenType.WHITESPACE,value:s[0]};if(t[0]==="#"||t[1]&&t[0]==="-"&&t[1]==="-"||t[1]&&t[0]==="/"&&t[1]==="*"){let o,g;return t[0]==="-"||t[0]==="#"?(g=t.indexOf(` -`),o=zD.TokenType.COMMENT):(g=t.indexOf("*/",2)+2,o=zD.TokenType.BLOCK_COMMENT),g===-1&&(g=t.length),{type:o,value:t.substr(0,g)}}if(['"',"'","`","["].includes(t[0]))return{type:t[0]==="`"||t[0]==="["?zD.TokenType.BACKTICK_QUOTE:zD.TokenType.QUOTE,value:this.getQuotedString(t)};if((t[0]==="@"||t[0]===":")&&t[1]){if(['"',"'","`"].includes(t[1])){let o=t[0]+this.getQuotedString(t.substr(1));return{type:zD.TokenType.VARIABLE,value:o}}if(s=new RegExp(`^(${t[0]}[a-zA-Z0-9._$]+)`).exec(t),s)return{type:zD.TokenType.VARIABLE,value:s[1]}}if(s=new RegExp(`^([0-9]+(.[0-9]+)?|0x[0-9a-fA-F]+|0b[01]+)($|\\s|"'\`|${this.regexBoundaries})`).exec(t),s)return{type:zD.TokenType.NUMBER,value:s[1]};if(s=new RegExp(`^(${this.regexBoundaries})`).exec(t),s)return{type:zD.TokenType.BOUNDARY,value:s[1]};let a=t.toLowerCase();if(!r||r.value!=="."){if(s=new RegExp(`^(${this.regexReservedToplevel})($|\\s|${this.regexBoundaries})`).exec(a),s)return{type:zD.TokenType.RESERVED_TOPLEVEL,value:t.substr(0,s[1].length)};if(s=new RegExp(`^(${this.regexReservedNewline})($|\\s|${this.regexBoundaries})`).exec(a),s)return{type:zD.TokenType.RESERVED_NEWLINE,value:t.substr(0,s[1].length)};if(s=new RegExp(`^(${this.regexLiteral})($|\\s|${this.regexBoundaries})`).exec(a),s)return{type:zD.TokenType.LITERAL,value:t.substr(0,s[1].length)};if(s=new RegExp(`^(${this.regexBuiltIn})($|\\s|${this.regexBoundaries})`).exec(a),s)return{type:zD.TokenType.BUILT_IN,value:t.substr(0,s[1].length)};if(s=new RegExp(`^(${this.regexReserved})($|\\s|${this.regexBoundaries})`).exec(a),s)return{type:zD.TokenType.RESERVED,value:t.substr(0,s[1].length)}}return s=new RegExp(`^(${this.regexFunction}[(]|\\s|[)])`).exec(a),s?{type:zD.TokenType.RESERVED,value:t.substr(0,s[1].length-1)}:(s=new RegExp(`^(.*?)($|\\s|["'\`]|${this.regexBoundaries})`).exec(t),{type:zD.TokenType.WORD,value:s[1]})}quoteRegex(t){return t.map(r=>r.replace(new RegExp("[.\\\\+*?\\[^\\]$(){}=!<>|:\\/-]","g"),"\\$&"))}getQuotedString(t){var r;let s=`^(((\`[^\`]*($|\`))+)|((\\[[^\\]]*($|\\]))(\\][^\\]]*($|\\]))*)|(("[^"\\\\]*(?:\\\\.[^"\\\\]*)*("|$))+)|(('[^'\\\\]*(?:\\\\.[^'\\\\]*)*('|$))+))`,a=new RegExp(s,"s").exec(t);return(r=a?.[1])!==null&&r!==void 0?r:""}};eyt.Tokenizer=Rhr});var uvi=z((sDl,i5e)=>{"use strict";var I3a=typeof process<"u"&&process.env.TERM_PROGRAM==="Hyper",C3a=typeof process<"u"&&process.platform==="win32",avi=typeof process<"u"&&process.platform==="linux",xhr={ballotDisabled:"\u2612",ballotOff:"\u2610",ballotOn:"\u2611",bullet:"\u2022",bulletWhite:"\u25E6",fullBlock:"\u2588",heart:"\u2764",identicalTo:"\u2261",line:"\u2500",mark:"\u203B",middot:"\xB7",minus:"\uFF0D",multiplication:"\xD7",obelus:"\xF7",pencilDownRight:"\u270E",pencilRight:"\u270F",pencilUpRight:"\u2710",percent:"%",pilcrow2:"\u2761",pilcrow:"\xB6",plusMinus:"\xB1",question:"?",section:"\xA7",starsOff:"\u2606",starsOn:"\u2605",upDownArrow:"\u2195"},cvi=Object.assign({},xhr,{check:"\u221A",cross:"\xD7",ellipsisLarge:"...",ellipsis:"...",info:"i",questionSmall:"?",pointer:">",pointerSmall:"\xBB",radioOff:"( )",radioOn:"(*)",warning:"\u203C"}),lvi=Object.assign({},xhr,{ballotCross:"\u2718",check:"\u2714",cross:"\u2716",ellipsisLarge:"\u22EF",ellipsis:"\u2026",info:"\u2139",questionFull:"\uFF1F",questionSmall:"\uFE56",pointer:avi?"\u25B8":"\u276F",pointerSmall:avi?"\u2023":"\u203A",radioOff:"\u25EF",radioOn:"\u25C9",warning:"\u26A0"});i5e.exports=C3a&&!I3a?cvi:lvi;Reflect.defineProperty(i5e.exports,"common",{enumerable:!1,value:xhr});Reflect.defineProperty(i5e.exports,"windows",{enumerable:!1,value:cvi});Reflect.defineProperty(i5e.exports,"other",{enumerable:!1,value:lvi})});var s5e=z((oDl,khr)=>{"use strict";var m3a=e=>e!==null&&typeof e=="object"&&!Array.isArray(e),h3a=/[\u001b\u009b][[\]#;?()]*(?:(?:(?:[^\W_]*;?[^\W_]*)\u0007)|(?:(?:[0-9]{1,4}(;[0-9]{0,4})*)?[~0-9=<>cf-nqrtyA-PRZ]))/g,_3a=()=>typeof process<"u"?process.env.FORCE_COLOR!=="0":!1,gvi=()=>{let e={enabled:_3a(),visible:!0,styles:{},keys:{}},t=o=>{let g=o.open=`\x1B[${o.codes[0]}m`,p=o.close=`\x1B[${o.codes[1]}m`,f=o.regex=new RegExp(`\\u001b\\[${o.codes[1]}m`,"g");return o.wrap=(m,y)=>{m.includes(p)&&(m=m.replace(f,p+g));let B=g+m+p;return y?B.replace(/\r*\n/g,`${p}$&${g}`):B},o},r=(o,g,p)=>typeof o=="function"?o(g):o.wrap(g,p),s=(o,g)=>{if(o===""||o==null)return"";if(e.enabled===!1)return o;if(e.visible===!1)return"";let p=""+o,f=p.includes(` -`),m=g.length;for(m>0&&g.includes("unstyle")&&(g=[...new Set(["unstyle",...g])].reverse());m-- >0;)p=r(e.styles[g[m]],p,f);return p},a=(o,g,p)=>{e.styles[o]=t({name:o,codes:g}),(e.keys[p]||(e.keys[p]=[])).push(o),Reflect.defineProperty(e,o,{configurable:!0,enumerable:!0,set(m){e.alias(o,m)},get(){let m=y=>s(y,m.stack);return Reflect.setPrototypeOf(m,e),m.stack=this.stack?this.stack.concat(o):[o],m}})};return a("reset",[0,0],"modifier"),a("bold",[1,22],"modifier"),a("dim",[2,22],"modifier"),a("italic",[3,23],"modifier"),a("underline",[4,24],"modifier"),a("inverse",[7,27],"modifier"),a("hidden",[8,28],"modifier"),a("strikethrough",[9,29],"modifier"),a("black",[30,39],"color"),a("red",[31,39],"color"),a("green",[32,39],"color"),a("yellow",[33,39],"color"),a("blue",[34,39],"color"),a("magenta",[35,39],"color"),a("cyan",[36,39],"color"),a("white",[37,39],"color"),a("gray",[90,39],"color"),a("grey",[90,39],"color"),a("bgBlack",[40,49],"bg"),a("bgRed",[41,49],"bg"),a("bgGreen",[42,49],"bg"),a("bgYellow",[43,49],"bg"),a("bgBlue",[44,49],"bg"),a("bgMagenta",[45,49],"bg"),a("bgCyan",[46,49],"bg"),a("bgWhite",[47,49],"bg"),a("blackBright",[90,39],"bright"),a("redBright",[91,39],"bright"),a("greenBright",[92,39],"bright"),a("yellowBright",[93,39],"bright"),a("blueBright",[94,39],"bright"),a("magentaBright",[95,39],"bright"),a("cyanBright",[96,39],"bright"),a("whiteBright",[97,39],"bright"),a("bgBlackBright",[100,49],"bgBright"),a("bgRedBright",[101,49],"bgBright"),a("bgGreenBright",[102,49],"bgBright"),a("bgYellowBright",[103,49],"bgBright"),a("bgBlueBright",[104,49],"bgBright"),a("bgMagentaBright",[105,49],"bgBright"),a("bgCyanBright",[106,49],"bgBright"),a("bgWhiteBright",[107,49],"bgBright"),e.ansiRegex=h3a,e.hasColor=e.hasAnsi=o=>(e.ansiRegex.lastIndex=0,typeof o=="string"&&o!==""&&e.ansiRegex.test(o)),e.alias=(o,g)=>{let p=typeof g=="string"?e[g]:g;if(typeof p!="function")throw new TypeError("Expected alias to be the name of an existing color (string) or a function");p.stack||(Reflect.defineProperty(p,"name",{value:o}),e.styles[o]=p,p.stack=[o]),Reflect.defineProperty(e,o,{configurable:!0,enumerable:!0,set(f){e.alias(o,f)},get(){let f=m=>s(m,f.stack);return Reflect.setPrototypeOf(f,e),f.stack=this.stack?this.stack.concat(p.stack):p.stack,f}})},e.theme=o=>{if(!m3a(o))throw new TypeError("Expected theme to be an object");for(let g of Object.keys(o))e.alias(g,o[g]);return e},e.alias("unstyle",o=>typeof o=="string"&&o!==""?(e.ansiRegex.lastIndex=0,o.replace(e.ansiRegex,"")):""),e.alias("noop",o=>o),e.none=e.clear=e.noop,e.stripColor=e.unstyle,e.symbols=uvi(),e.define=a,e};khr.exports=gvi();khr.exports.create=gvi});var Avi=z(bwe=>{"use strict";var y3a=bwe&&bwe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(bwe,"__esModule",{value:!0});bwe.SqlHighlighter=void 0;var lK=y3a(s5e()),b3a=Dhr(),KF=Nhr(),tyt=class e{constructor(t={}){this.theme=t,this.tokenizer=new b3a.Tokenizer,this.theme=Object.assign(Object.assign({},e.DEFAULT_THEME),this.theme)}highlight(t){let r=this.tokenizer.tokenize(t),s,a="",o=0;for(;s=r[o++];)a+=this.highlightToken(s.type,s.value);return a}highlightToken(t,r){return t===KF.TokenType.BOUNDARY&&["(",")"].includes(r)?r:this.colorize(t,r)}colorize(t,r){return!KF.TOKEN_TYPE_TO_HIGHLIGHT[t]||!this.theme[KF.TOKEN_TYPE_TO_HIGHLIGHT[t]]?r:this.theme[KF.TOKEN_TYPE_TO_HIGHLIGHT[t]](r)}};bwe.SqlHighlighter=tyt;tyt.DEFAULT_THEME={[KF.HighlightSubject.QUOTE]:lK.default.yellow,[KF.HighlightSubject.BACKTICK_QUOTE]:lK.default.yellow,[KF.HighlightSubject.RESERVED]:lK.default.white.bold,[KF.HighlightSubject.BOUNDARY]:lK.default.reset,[KF.HighlightSubject.NUMBER]:lK.default.green,[KF.HighlightSubject.WORD]:void 0,[KF.HighlightSubject.COMMENT]:lK.default.green.dim,[KF.HighlightSubject.VARIABLE]:lK.default.yellow,[KF.HighlightSubject.FUNCTIONS]:lK.default.green.bold,[KF.HighlightSubject.BUILT_IN]:lK.default.cyan,[KF.HighlightSubject.LITERAL]:lK.default.cyan}});var pvi=z(aoe=>{"use strict";var E3a=aoe&&aoe.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),dvi=aoe&&aoe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!t.hasOwnProperty(r)&&E3a(t,e,r)};Object.defineProperty(aoe,"__esModule",{value:!0});dvi(Dhr(),aoe);dvi(Avi(),aoe)});var Ivi=z((fvi,ryt)=>{(function(e,t){typeof ryt=="object"&&ryt.exports?ryt.exports=t():e.nearley=t()})(fvi,function(){function e(f,m,y){return this.id=++e.highestId,this.name=f,this.symbols=m,this.postprocess=y,this}e.highestId=0,e.prototype.toString=function(f){var m=typeof f>"u"?this.symbols.map(p).join(" "):this.symbols.slice(0,f).map(p).join(" ")+" \u25CF "+this.symbols.slice(f).map(p).join(" ");return this.name+" \u2192 "+m};function t(f,m,y,B){this.rule=f,this.dot=m,this.reference=y,this.data=[],this.wantedBy=B,this.isComplete=this.dot===f.symbols.length}t.prototype.toString=function(){return"{"+this.rule.toString(this.dot)+"}, from: "+(this.reference||0)},t.prototype.nextState=function(f){var m=new t(this.rule,this.dot+1,this.reference,this.wantedBy);return m.left=this,m.right=f,m.isComplete&&(m.data=m.build(),m.right=void 0),m},t.prototype.build=function(){var f=[],m=this;do f.push(m.right.data),m=m.left;while(m.left);return f.reverse(),f},t.prototype.finish=function(){this.rule.postprocess&&(this.data=this.rule.postprocess(this.data,this.reference,o.fail))};function r(f,m){this.grammar=f,this.index=m,this.states=[],this.wants={},this.scannable=[],this.completed={}}r.prototype.process=function(f){for(var m=this.states,y=this.wants,B=this.completed,v=0;v=Xe[0]&&Ue<=Xe[1])return Te(ke,x,et)}return Ue},X=function(ke){for(var x=ke.length,et=0,Ue=0;Ue1&&(et-=1),et<1/6?ke+(x-ke)*6*et:et<1/2?x:et<2/3?ke+(x-ke)*(2/3-et)*6:ke},ge=function(ke,x,et){var Ue,Je,Xe;if(ke/=360,x/=100,et/=100,x===0)Ue=Je=Xe=et;else{var ft=et<.5?et*(1+x):et+x-et*x,Gt=2*et-ft;Ue=ae(Gt,ft,ke+1/3),Je=ae(Gt,ft,ke),Xe=ae(Gt,ft,ke-1/3)}return[Math.round(Ue*255),Math.round(Je*255),Math.round(Xe*255)]},fe=function(ke,x,et,Ue){return(ke*299+x*587+et*114)/1e3>=Ue},pe=function(ke,x,et){return"hsl(".concat(ke,", ").concat(x,"%, ").concat(et,"%)")},he=function(ke,x,et,Ue){switch(Ue){case"rgb":return"rgb(".concat(ke,", ").concat(x,", ").concat(et,")");case"hex":default:return"#".concat(v(ke.toString(16))).concat(v(x.toString(16))).concat(v(et.toString(16)))}},be=function(ke){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},et=x.format,Ue=et===void 0?"hex":et,Je=x.saturation,Xe=Je===void 0?[50,55]:Je,ft=x.lightness,Gt=ft===void 0?[50,60]:ft,er=x.differencePoint,Ur=er===void 0?130:er,Ot=Math.abs(X(String(ke))),dr=U(Ot,[0,360]),Ar=U(Ot,le(Xe,y)),or=U(Ot,le(Gt,B)),Fr=ge(dr,Ar,or),$r=t(Fr,3),Or=$r[0],In=$r[1],Br=$r[2];return{color:Ue==="hsl"?pe(dr,Ar,or):he(Or,In,Br,Ue),isLight:fe(Or,In,Br,Ur)}};return be.random=function(){var Te=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},ke=Te.format,x=ke===void 0?"hex":ke,et=Te.saturation,Ue=et===void 0?[50,55]:et,Je=Te.lightness,Xe=Je===void 0?[50,60]:Je,ft=Te.differencePoint,Gt=ft===void 0?130:ft,er=Te.excludeHue;Ue=le(Ue,y),Xe=le(Xe,B);var Ur=er?O(0,359,er):T(0,359),Ot=typeof Ue=="number"?Ue:T.apply(void 0,r(Ue)),dr=typeof Xe=="number"?Xe:T.apply(void 0,r(Xe)),Ar=ge(Ur,Ot,dr),or=t(Ar,3),Fr=or[0],$r=or[1],Or=or[2];return{color:x==="hsl"?pe(Ur,Ot,dr):he(Fr,$r,Or,x),isLight:fe(Fr,$r,Or,Gt)}},be})});var Ghr=z(IK=>{"use strict";Object.defineProperty(IK,"__esModule",{value:!0});IK.TOKEN_TYPE_TO_HIGHLIGHT=IK.HighlightSubject=IK.TokenType=void 0;var h9;(function(e){e[e.WHITESPACE=0]="WHITESPACE",e[e.WORD=1]="WORD",e[e.QUOTE=2]="QUOTE",e[e.BACKTICK_QUOTE=3]="BACKTICK_QUOTE",e[e.RESERVED=4]="RESERVED",e[e.RESERVED_TOPLEVEL=5]="RESERVED_TOPLEVEL",e[e.RESERVED_NEWLINE=6]="RESERVED_NEWLINE",e[e.BOUNDARY=7]="BOUNDARY",e[e.COMMENT=8]="COMMENT",e[e.BLOCK_COMMENT=9]="BLOCK_COMMENT",e[e.NUMBER=10]="NUMBER",e[e.ERROR=11]="ERROR",e[e.VARIABLE=12]="VARIABLE",e[e.LITERAL=13]="LITERAL",e[e.BUILT_IN=14]="BUILT_IN"})(h9=IK.TokenType||(IK.TokenType={}));var _9;(function(e){e.BOUNDARY="boundary",e.WORD="word",e.BACKTICK_QUOTE="backtickQuote",e.QUOTE="quote",e.RESERVED="reserved",e.NUMBER="number",e.VARIABLE="variable",e.COMMENT="comment",e.FUNCTIONS="functions",e.LITERAL="literal",e.BUILT_IN="builtIn"})(_9=IK.HighlightSubject||(IK.HighlightSubject={}));IK.TOKEN_TYPE_TO_HIGHLIGHT={[h9.BOUNDARY]:_9.BOUNDARY,[h9.WORD]:_9.WORD,[h9.BACKTICK_QUOTE]:_9.BACKTICK_QUOTE,[h9.QUOTE]:_9.QUOTE,[h9.RESERVED]:_9.RESERVED,[h9.RESERVED_TOPLEVEL]:_9.RESERVED,[h9.RESERVED_NEWLINE]:_9.RESERVED,[h9.NUMBER]:_9.NUMBER,[h9.VARIABLE]:_9.VARIABLE,[h9.COMMENT]:_9.COMMENT,[h9.BLOCK_COMMENT]:_9.COMMENT,[h9.LITERAL]:_9.LITERAL,[h9.BUILT_IN]:_9.BUILT_IN}});var Zhr=z(nyt=>{"use strict";Object.defineProperty(nyt,"__esModule",{value:!0});nyt.Tokenizer=void 0;var nx=Ghr(),Fhr=class{constructor(){this.literal=["true","false","null","unknown"],this.builtIn=["array","bigint","binary","bit","blob","bool","boolean","char","character","date","dec","decimal","float","int","int8","integer","interval","number","numeric","real","record","serial","serial8","smallint","text","time","timestamp","tinyint","varchar","varchar2","varying","void"],this.reserved=["accessible","action","after","against","aggregate","algorithm","all","alter","analyse","analyze","as","asc","autocommit","auto_increment","backup","begin","between","binlog","both","cascade","case","change","changed","character set","charset","check","checksum","collate","collation","column","columns","comment","commit","committed","compressed","concurrent","constraint","contains","convert","create","cross","current_timestamp","database","databases","day","day_hour","day_minute","day_second","default","definer","delayed","delete","desc","describe","deterministic","distinct","distinctrow","div","do","dumpfile","duplicate","dynamic","else","enclosed","end","engine","engine_type","engines","escape","escaped","events","exec","execute","exists","explain","extended","fast","fields","file","first","fixed","flush","for","force","foreign","full","fulltext","function","global","grant","grants","group_concat","heap","high_priority","hosts","hour","hour_minute","hour_second","identified","if","ifnull","ignore","in","index","indexes","infile","insert","insert_id","insert_method","interval","into","invoker","is","isolation","key","keys","kill","last_insert_id","leading","level","like","linear","lines","load","local","lock","locks","logs","low_priority","maria","master","master_connect_retry","master_host","master_log_file","match","max_connections_per_hour","max_queries_per_hour","max_rows","max_updates_per_hour","max_user_connections","medium","merge","minute","minute_second","min_rows","mode","month","mrg_myisam","myisam","names","natural","not","now()","null","offset","on","open","optimize","option","optionally","on update","on delete","outfile","pack_keys","page","partial","partition","partitions","password","primary","privileges","procedure","process","processlist","purge","quick","range","raid0","raid_chunks","raid_chunksize","raid_type","read","read_only","read_write","references","regexp","reload","rename","repair","repeatable","replace","replication","reset","restore","restrict","return","returns","revoke","rlike","rollback","row","rows","row_format","second","security","separator","serializable","session","share","show","shutdown","slave","soname","sounds","sql","sql_auto_is_null","sql_big_result","sql_big_selects","sql_big_tables","sql_buffer_result","sql_calc_found_rows","sql_log_bin","sql_log_off","sql_log_update","sql_low_priority_updates","sql_max_join_size","sql_quote_show_create","sql_safe_updates","sql_select_limit","sql_slave_skip_counter","sql_small_result","sql_warnings","sql_cache","sql_no_cache","start","starting","status","stop","storage","straight_join","string","striped","super","table","tables","temporary","terminated","then","to","trailing","transactional","true","truncate","type","types","uncommitted","unique","unlock","unsigned","usage","use","using","variables","view","when","with","work","write","year_month"],this.reservedToplevel=["select","from","where","set","order by","group by","limit","drop","values","update","having","add","change","modify","alter table","delete from","union all","union","except","intersect"],this.reservedNewline=["left outer join","right outer join","left join","right join","outer join","inner join","join","xor","or","and"],this.functions=["abs","acos","adddate","addtime","aes_decrypt","aes_encrypt","area","asbinary","ascii","asin","astext","atan","atan2","avg","bdmpolyfromtext","bdmpolyfromwkb","bdpolyfromtext","bdpolyfromwkb","benchmark","bin","bit_and","bit_count","bit_length","bit_or","bit_xor","boundary","buffer","cast","ceil","ceiling","centroid","char","character_length","charset","char_length","coalesce","coercibility","collation","compress","concat","concat_ws","connection_id","contains","conv","convert","convert_tz","convexhull","cos","cot","count","crc32","crosses","curdate","current_date","current_time","current_timestamp","current_user","curtime","database","date","datediff","date_add","date_diff","date_format","date_sub","day","dayname","dayofmonth","dayofweek","dayofyear","decode","default","degrees","des_decrypt","des_encrypt","difference","dimension","disjoint","distance","elt","encode","encrypt","endpoint","envelope","equals","exp","export_set","exteriorring","extract","extractvalue","field","find_in_set","floor","format","found_rows","from_days","from_unixtime","geomcollfromtext","geomcollfromwkb","geometrycollection","geometrycollectionfromtext","geometrycollectionfromwkb","geometryfromtext","geometryfromwkb","geometryn","geometrytype","geomfromtext","geomfromwkb","get_format","get_lock","glength","greatest","group_concat","group_unique_users","hex","hour","if","ifnull","inet_aton","inet_ntoa","insert","instr","interiorringn","intersection","intersects","interval","isclosed","isempty","isnull","isring","issimple","is_free_lock","is_used_lock","last_day","last_insert_id","lcase","least","left","length","linefromtext","linefromwkb","linestring","linestringfromtext","linestringfromwkb","ln","load_file","localtime","localtimestamp","locate","log","log10","log2","lower","lpad","ltrim","makedate","maketime","make_set","master_pos_wait","max","mbrcontains","mbrdisjoint","mbrequal","mbrintersects","mbroverlaps","mbrtouches","mbrwithin","md5","microsecond","mid","min","minute","mlinefromtext","mlinefromwkb","mod","month","monthname","mpointfromtext","mpointfromwkb","mpolyfromtext","mpolyfromwkb","multilinestring","multilinestringfromtext","multilinestringfromwkb","multipoint","multipointfromtext","multipointfromwkb","multipolygon","multipolygonfromtext","multipolygonfromwkb","name_const","nullif","numgeometries","numinteriorrings","numpoints","oct","octet_length","old_password","ord","overlaps","password","period_add","period_diff","pi","point","pointfromtext","pointfromwkb","pointn","pointonsurface","polyfromtext","polyfromwkb","polygon","polygonfromtext","polygonfromwkb","position","pow","power","quarter","quote","radians","rand","related","release_lock","repeat","replace","reverse","right","round","row_count","rpad","rtrim","schema","second","sec_to_time","session_user","sha","sha1","sign","sin","sleep","soundex","space","sqrt","srid","startpoint","std","stddev","stddev_pop","stddev_samp","strcmp","str_to_date","subdate","substr","substring","substring_index","subtime","sum","symdifference","sysdate","system_user","tan","time","timediff","timestamp","timestampadd","timestampdiff","time_format","time_to_sec","touches","to_days","trim","truncate","ucase","uncompress","uncompressed_length","unhex","unique_users","unix_timestamp","updatexml","upper","user","utc_date","utc_time","utc_timestamp","uuid","variance","var_pop","var_samp","version","week","weekday","weekofyear","within","x","y","year","yearweek"],this.boundaries=[",",";",":",")","(",".","=","<",">","+","-","*","/","!","^","%","|","&","#"],this.regexBoundaries="("+this.quoteRegex(this.boundaries).join("|")+")",this.regexReserved="("+this.quoteRegex(this.reserved).join("|")+")",this.regexReservedToplevel=`(${this.quoteRegex(this.reservedToplevel).join("|")})`.replace(/ /g,"\\s+"),this.regexReservedNewline=`(${this.quoteRegex(this.reservedNewline).join("|")})`.replace(/ /g,"\\s+"),this.regexFunction="("+this.quoteRegex(this.functions).join("|")+")",this.regexLiteral="("+this.quoteRegex(this.literal).join("|")+")",this.regexBuiltIn="("+this.quoteRegex(this.builtIn).join("|")+")"}tokenize(t){let r=[],s=t.length+1,a,o=t.length;for(;o;){if(s<=o)return r.push({type:nx.TokenType.ERROR,value:t}),r;s=o,a=this.createNextToken(t,a);let g=a.value.length;r.push(a),t=t.substr(g),o-=g}return r}createNextToken(t,r){let s;if(s=t.match(/^\s+/),s)return{type:nx.TokenType.WHITESPACE,value:s[0]};if(t[0]==="#"||t[1]&&t[0]==="-"&&t[1]==="-"||t[1]&&t[0]==="/"&&t[1]==="*"){let o,g;return t[0]==="-"||t[0]==="#"?(g=t.indexOf(` +`),o=nx.TokenType.COMMENT):(g=t.indexOf("*/",2)+2,o=nx.TokenType.BLOCK_COMMENT),g===-1&&(g=t.length),{type:o,value:t.substr(0,g)}}if(['"',"'","`","["].includes(t[0]))return{type:t[0]==="`"||t[0]==="["?nx.TokenType.BACKTICK_QUOTE:nx.TokenType.QUOTE,value:this.getQuotedString(t)};if((t[0]==="@"||t[0]===":")&&t[1]){if(['"',"'","`"].includes(t[1])){let o=t[0]+this.getQuotedString(t.substr(1));return{type:nx.TokenType.VARIABLE,value:o}}if(s=new RegExp(`^(${t[0]}[a-zA-Z0-9._$]+)`).exec(t),s)return{type:nx.TokenType.VARIABLE,value:s[1]}}if(s=new RegExp(`^([0-9]+(.[0-9]+)?|0x[0-9a-fA-F]+|0b[01]+)($|\\s|"'\`|${this.regexBoundaries})`).exec(t),s)return{type:nx.TokenType.NUMBER,value:s[1]};if(s=new RegExp(`^(${this.regexBoundaries})`).exec(t),s)return{type:nx.TokenType.BOUNDARY,value:s[1]};let a=t.toLowerCase();if(!r||r.value!=="."){if(s=new RegExp(`^(${this.regexReservedToplevel})($|\\s|${this.regexBoundaries})`).exec(a),s)return{type:nx.TokenType.RESERVED_TOPLEVEL,value:t.substr(0,s[1].length)};if(s=new RegExp(`^(${this.regexReservedNewline})($|\\s|${this.regexBoundaries})`).exec(a),s)return{type:nx.TokenType.RESERVED_NEWLINE,value:t.substr(0,s[1].length)};if(s=new RegExp(`^(${this.regexLiteral})($|\\s|${this.regexBoundaries})`).exec(a),s)return{type:nx.TokenType.LITERAL,value:t.substr(0,s[1].length)};if(s=new RegExp(`^(${this.regexBuiltIn})($|\\s|${this.regexBoundaries})`).exec(a),s)return{type:nx.TokenType.BUILT_IN,value:t.substr(0,s[1].length)};if(s=new RegExp(`^(${this.regexReserved})($|\\s|${this.regexBoundaries})`).exec(a),s)return{type:nx.TokenType.RESERVED,value:t.substr(0,s[1].length)}}return s=new RegExp(`^(${this.regexFunction}[(]|\\s|[)])`).exec(a),s?{type:nx.TokenType.RESERVED,value:t.substr(0,s[1].length-1)}:(s=new RegExp(`^(.*?)($|\\s|["'\`]|${this.regexBoundaries})`).exec(t),{type:nx.TokenType.WORD,value:s[1]})}quoteRegex(t){return t.map(r=>r.replace(new RegExp("[.\\\\+*?\\[^\\]$(){}=!<>|:\\/-]","g"),"\\$&"))}getQuotedString(t){var r;let s=`^(((\`[^\`]*($|\`))+)|((\\[[^\\]]*($|\\]))(\\][^\\]]*($|\\]))*)|(("[^"\\\\]*(?:\\\\.[^"\\\\]*)*("|$))+)|(('[^'\\\\]*(?:\\\\.[^'\\\\]*)*('|$))+))`,a=new RegExp(s,"s").exec(t);return(r=a?.[1])!==null&&r!==void 0?r:""}};nyt.Tokenizer=Fhr});var mvi=z((wDl,oYe)=>{"use strict";var x3a=typeof process<"u"&&process.env.TERM_PROGRAM==="Hyper",k3a=typeof process<"u"&&process.platform==="win32",fvi=typeof process<"u"&&process.platform==="linux",Lhr={ballotDisabled:"\u2612",ballotOff:"\u2610",ballotOn:"\u2611",bullet:"\u2022",bulletWhite:"\u25E6",fullBlock:"\u2588",heart:"\u2764",identicalTo:"\u2261",line:"\u2500",mark:"\u203B",middot:"\xB7",minus:"\uFF0D",multiplication:"\xD7",obelus:"\xF7",pencilDownRight:"\u270E",pencilRight:"\u270F",pencilUpRight:"\u2710",percent:"%",pilcrow2:"\u2761",pilcrow:"\xB6",plusMinus:"\xB1",question:"?",section:"\xA7",starsOff:"\u2606",starsOn:"\u2605",upDownArrow:"\u2195"},Ivi=Object.assign({},Lhr,{check:"\u221A",cross:"\xD7",ellipsisLarge:"...",ellipsis:"...",info:"i",questionSmall:"?",pointer:">",pointerSmall:"\xBB",radioOff:"( )",radioOn:"(*)",warning:"\u203C"}),Cvi=Object.assign({},Lhr,{ballotCross:"\u2718",check:"\u2714",cross:"\u2716",ellipsisLarge:"\u22EF",ellipsis:"\u2026",info:"\u2139",questionFull:"\uFF1F",questionSmall:"\uFE56",pointer:fvi?"\u25B8":"\u276F",pointerSmall:fvi?"\u2023":"\u203A",radioOff:"\u25EF",radioOn:"\u25C9",warning:"\u26A0"});oYe.exports=k3a&&!x3a?Ivi:Cvi;Reflect.defineProperty(oYe.exports,"common",{enumerable:!1,value:Lhr});Reflect.defineProperty(oYe.exports,"windows",{enumerable:!1,value:Ivi});Reflect.defineProperty(oYe.exports,"other",{enumerable:!1,value:Cvi})});var aYe=z((TDl,Vhr)=>{"use strict";var G3a=e=>e!==null&&typeof e=="object"&&!Array.isArray(e),F3a=/[\u001b\u009b][[\]#;?()]*(?:(?:(?:[^\W_]*;?[^\W_]*)\u0007)|(?:(?:[0-9]{1,4}(;[0-9]{0,4})*)?[~0-9=<>cf-nqrtyA-PRZ]))/g,Z3a=()=>typeof process<"u"?process.env.FORCE_COLOR!=="0":!1,hvi=()=>{let e={enabled:Z3a(),visible:!0,styles:{},keys:{}},t=o=>{let g=o.open=`\x1B[${o.codes[0]}m`,p=o.close=`\x1B[${o.codes[1]}m`,f=o.regex=new RegExp(`\\u001b\\[${o.codes[1]}m`,"g");return o.wrap=(m,y)=>{m.includes(p)&&(m=m.replace(f,p+g));let B=g+m+p;return y?B.replace(/\r*\n/g,`${p}$&${g}`):B},o},r=(o,g,p)=>typeof o=="function"?o(g):o.wrap(g,p),s=(o,g)=>{if(o===""||o==null)return"";if(e.enabled===!1)return o;if(e.visible===!1)return"";let p=""+o,f=p.includes(` +`),m=g.length;for(m>0&&g.includes("unstyle")&&(g=[...new Set(["unstyle",...g])].reverse());m-- >0;)p=r(e.styles[g[m]],p,f);return p},a=(o,g,p)=>{e.styles[o]=t({name:o,codes:g}),(e.keys[p]||(e.keys[p]=[])).push(o),Reflect.defineProperty(e,o,{configurable:!0,enumerable:!0,set(m){e.alias(o,m)},get(){let m=y=>s(y,m.stack);return Reflect.setPrototypeOf(m,e),m.stack=this.stack?this.stack.concat(o):[o],m}})};return a("reset",[0,0],"modifier"),a("bold",[1,22],"modifier"),a("dim",[2,22],"modifier"),a("italic",[3,23],"modifier"),a("underline",[4,24],"modifier"),a("inverse",[7,27],"modifier"),a("hidden",[8,28],"modifier"),a("strikethrough",[9,29],"modifier"),a("black",[30,39],"color"),a("red",[31,39],"color"),a("green",[32,39],"color"),a("yellow",[33,39],"color"),a("blue",[34,39],"color"),a("magenta",[35,39],"color"),a("cyan",[36,39],"color"),a("white",[37,39],"color"),a("gray",[90,39],"color"),a("grey",[90,39],"color"),a("bgBlack",[40,49],"bg"),a("bgRed",[41,49],"bg"),a("bgGreen",[42,49],"bg"),a("bgYellow",[43,49],"bg"),a("bgBlue",[44,49],"bg"),a("bgMagenta",[45,49],"bg"),a("bgCyan",[46,49],"bg"),a("bgWhite",[47,49],"bg"),a("blackBright",[90,39],"bright"),a("redBright",[91,39],"bright"),a("greenBright",[92,39],"bright"),a("yellowBright",[93,39],"bright"),a("blueBright",[94,39],"bright"),a("magentaBright",[95,39],"bright"),a("cyanBright",[96,39],"bright"),a("whiteBright",[97,39],"bright"),a("bgBlackBright",[100,49],"bgBright"),a("bgRedBright",[101,49],"bgBright"),a("bgGreenBright",[102,49],"bgBright"),a("bgYellowBright",[103,49],"bgBright"),a("bgBlueBright",[104,49],"bgBright"),a("bgMagentaBright",[105,49],"bgBright"),a("bgCyanBright",[106,49],"bgBright"),a("bgWhiteBright",[107,49],"bgBright"),e.ansiRegex=F3a,e.hasColor=e.hasAnsi=o=>(e.ansiRegex.lastIndex=0,typeof o=="string"&&o!==""&&e.ansiRegex.test(o)),e.alias=(o,g)=>{let p=typeof g=="string"?e[g]:g;if(typeof p!="function")throw new TypeError("Expected alias to be the name of an existing color (string) or a function");p.stack||(Reflect.defineProperty(p,"name",{value:o}),e.styles[o]=p,p.stack=[o]),Reflect.defineProperty(e,o,{configurable:!0,enumerable:!0,set(f){e.alias(o,f)},get(){let f=m=>s(m,f.stack);return Reflect.setPrototypeOf(f,e),f.stack=this.stack?this.stack.concat(p.stack):p.stack,f}})},e.theme=o=>{if(!G3a(o))throw new TypeError("Expected theme to be an object");for(let g of Object.keys(o))e.alias(g,o[g]);return e},e.alias("unstyle",o=>typeof o=="string"&&o!==""?(e.ansiRegex.lastIndex=0,o.replace(e.ansiRegex,"")):""),e.alias("noop",o=>o),e.none=e.clear=e.noop,e.stripColor=e.unstyle,e.symbols=mvi(),e.define=a,e};Vhr.exports=hvi();Vhr.exports.create=hvi});var _vi=z(Bwe=>{"use strict";var L3a=Bwe&&Bwe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Bwe,"__esModule",{value:!0});Bwe.SqlHighlighter=void 0;var CK=L3a(aYe()),V3a=Zhr(),zF=Ghr(),iyt=class e{constructor(t={}){this.theme=t,this.tokenizer=new V3a.Tokenizer,this.theme=Object.assign(Object.assign({},e.DEFAULT_THEME),this.theme)}highlight(t){let r=this.tokenizer.tokenize(t),s,a="",o=0;for(;s=r[o++];)a+=this.highlightToken(s.type,s.value);return a}highlightToken(t,r){return t===zF.TokenType.BOUNDARY&&["(",")"].includes(r)?r:this.colorize(t,r)}colorize(t,r){return!zF.TOKEN_TYPE_TO_HIGHLIGHT[t]||!this.theme[zF.TOKEN_TYPE_TO_HIGHLIGHT[t]]?r:this.theme[zF.TOKEN_TYPE_TO_HIGHLIGHT[t]](r)}};Bwe.SqlHighlighter=iyt;iyt.DEFAULT_THEME={[zF.HighlightSubject.QUOTE]:CK.default.yellow,[zF.HighlightSubject.BACKTICK_QUOTE]:CK.default.yellow,[zF.HighlightSubject.RESERVED]:CK.default.white.bold,[zF.HighlightSubject.BOUNDARY]:CK.default.reset,[zF.HighlightSubject.NUMBER]:CK.default.green,[zF.HighlightSubject.WORD]:void 0,[zF.HighlightSubject.COMMENT]:CK.default.green.dim,[zF.HighlightSubject.VARIABLE]:CK.default.yellow,[zF.HighlightSubject.FUNCTIONS]:CK.default.green.bold,[zF.HighlightSubject.BUILT_IN]:CK.default.cyan,[zF.HighlightSubject.LITERAL]:CK.default.cyan}});var bvi=z(foe=>{"use strict";var W3a=foe&&foe.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),yvi=foe&&foe.__exportStar||function(e,t){for(var r in e)r!=="default"&&!t.hasOwnProperty(r)&&W3a(t,e,r)};Object.defineProperty(foe,"__esModule",{value:!0});yvi(Zhr(),foe);yvi(_vi(),foe)});var Bvi=z((Evi,syt)=>{(function(e,t){typeof syt=="object"&&syt.exports?syt.exports=t():e.nearley=t()})(Evi,function(){function e(f,m,y){return this.id=++e.highestId,this.name=f,this.symbols=m,this.postprocess=y,this}e.highestId=0,e.prototype.toString=function(f){var m=typeof f>"u"?this.symbols.map(p).join(" "):this.symbols.slice(0,f).map(p).join(" ")+" \u25CF "+this.symbols.slice(f).map(p).join(" ");return this.name+" \u2192 "+m};function t(f,m,y,B){this.rule=f,this.dot=m,this.reference=y,this.data=[],this.wantedBy=B,this.isComplete=this.dot===f.symbols.length}t.prototype.toString=function(){return"{"+this.rule.toString(this.dot)+"}, from: "+(this.reference||0)},t.prototype.nextState=function(f){var m=new t(this.rule,this.dot+1,this.reference,this.wantedBy);return m.left=this,m.right=f,m.isComplete&&(m.data=m.build(),m.right=void 0),m},t.prototype.build=function(){var f=[],m=this;do f.push(m.right.data),m=m.left;while(m.left);return f.reverse(),f},t.prototype.finish=function(){this.rule.postprocess&&(this.data=this.rule.postprocess(this.data,this.reference,o.fail))};function r(f,m){this.grammar=f,this.index=m,this.states=[],this.wants={},this.scannable=[],this.completed={}}r.prototype.process=function(f){for(var m=this.states,y=this.wants,B=this.completed,v=0;v0&&m.push(" ^ "+B+" more lines identical to this"),B=0,m.push(" "+T)),y=T}},o.prototype.getSymbolDisplay=function(f){return g(f)},o.prototype.buildFirstStateStack=function(f,m){if(m.indexOf(f)!==-1)return null;if(f.wantedBy.length===0)return[f];var y=f.wantedBy[0],B=[f].concat(m),v=this.buildFirstStateStack(y,B);return v===null?null:[f].concat(v)},o.prototype.save=function(){var f=this.table[this.current];return f.lexerState=this.lexerState,f},o.prototype.restore=function(f){var m=f.index;this.current=m,this.table[m]=f,this.table.splice(m+1),this.lexerState=f.lexerState,this.results=this.finish()},o.prototype.rewind=function(f){if(!this.options.keepHistory)throw new Error("set option `keepHistory` to enable rewinding");this.restore(this.table[f])},o.prototype.finish=function(){var f=[],m=this.grammar.start,y=this.table[this.table.length-1];return y.states.forEach(function(B){B.rule.name===m&&B.dot===B.rule.symbols.length&&B.reference===0&&B.data!==o.fail&&f.push(B)}),f.map(function(B){return B.data})};function g(f){var m=typeof f;if(m==="string")return f;if(m==="object"){if(f.literal)return JSON.stringify(f.literal);if(f instanceof RegExp)return"character matching "+f;if(f.type)return f.type+" token";if(f.test)return"token matching "+String(f.test);throw new Error("Unknown symbol type: "+f)}}function p(f){var m=typeof f;if(m==="string")return f;if(m==="object"){if(f.literal)return JSON.stringify(f.literal);if(f instanceof RegExp)return f.toString();if(f.type)return"%"+f.type;if(f.test)return"<"+String(f.test)+">";throw new Error("Unknown symbol type: "+f)}}return{Parser:o,Grammar:s,Rule:e}})});var V_r=z((Z_r,L_r)=>{(function(e,t){typeof Z_r=="object"&&typeof L_r<"u"?L_r.exports=t():typeof define=="function"&&define.amd?define(t):e.deepmerge=t()})(Z_r,function(){"use strict";var e=function(G){return t(G)&&!r(G)};function t(v){return!!v&&typeof v=="object"}function r(v){var G=Object.prototype.toString.call(v);return G==="[object RegExp]"||G==="[object Date]"||o(v)}var s=typeof Symbol=="function"&&Symbol.for,a=s?Symbol.for("react.element"):60103;function o(v){return v.$$typeof===a}function g(v){return Array.isArray(v)?[]:{}}function p(v,G){var T=G&&G.clone===!0;return T&&e(v)?y(g(v),v,G):v}function f(v,G,T){var O=v.slice();return G.forEach(function(X,U){typeof O[U]>"u"?O[U]=p(X,T):e(X)?O[U]=y(v[U],X,T):v.indexOf(X)===-1&&O.push(p(X,T))}),O}function m(v,G,T){var O={};return e(v)&&Object.keys(v).forEach(function(X){O[X]=p(v[X],T)}),Object.keys(G).forEach(function(X){!e(G[X])||!v[X]?O[X]=p(G[X],T):O[X]=y(v[X],G[X],T)}),O}function y(v,G,T){var O=Array.isArray(G),X=Array.isArray(v),U=T||{arrayMerge:f},le=O===X;if(le)if(O){var ae=U.arrayMerge||f;return ae(v,G,T)}else return m(v,G,T);else return p(G,T)}y.all=function(G,T){if(!Array.isArray(G)||G.length<2)throw new Error("first argument should be an array with at least two elements");return G.reduce(function(O,X){return y(O,X,T)})};var B=y;return B})});var W_r=z((DGl,jwi)=>{var zQa=V_r();jwi.exports=function(t){return class extends t{constructor(...r){super(...r),this.store=new Map}extend(r){return this.shorthands=r,r.forEach(s=>{this[s]=a=>this.set(s,a)}),this}clear(){return this.store.clear(),this}delete(r){return this.store.delete(r),this}order(){let r=[...this.store].reduce((o,[g,p])=>(o[g]=p,o),{}),s=Object.keys(r),a=[...s];return s.forEach(o=>{if(!r[o])return;let{__before:g,__after:p}=r[o];g&&a.includes(g)?(a.splice(a.indexOf(o),1),a.splice(a.indexOf(g),0,o)):p&&a.includes(p)&&(a.splice(a.indexOf(o),1),a.splice(a.indexOf(p)+1,0,o))}),{entries:r,order:a}}entries(){let{entries:r,order:s}=this.order();if(s.length)return r}values(){let{entries:r,order:s}=this.order();return s.map(a=>r[a])}get(r){return this.store.get(r)}getOrCompute(r,s){return this.has(r)||this.set(r,s()),this.get(r)}has(r){return this.store.has(r)}set(r,s){return this.store.set(r,s),this}merge(r,s=[]){return Object.keys(r).forEach(a=>{if(s.includes(a))return;let o=r[a];!Array.isArray(o)&&typeof o!="object"||o===null||!this.has(a)?this.set(a,o):this.set(a,zQa(this.get(a),o))}),this}clean(r){return Object.keys(r).reduce((s,a)=>{let o=r[a];return o===void 0||Array.isArray(o)&&!o.length||Object.prototype.toString.call(o)==="[object Object]"&&!Object.keys(o).length||(s[a]=o),s},{})}when(r,s=Function.prototype,a=Function.prototype){return r?s(this):a(this),this}}}});var hyt=z((kGl,zwi)=>{zwi.exports=function(t){return class extends t{constructor(r){super(),this.parent=r}batch(r){return r(this),this}end(){return this.parent}}}});var dK=z((FGl,qwi)=>{var qQa=W_r(),$Qa=hyt();qwi.exports=qQa($Qa(Object))});var eTi=z((ZGl,$wi)=>{$wi.exports=class extends Function{constructor(){return super(),new Proxy(this,{apply:(e,t,r)=>e.classCall(...r)})}classCall(){throw new Error("not implemented")}}});var rTi=z((VGl,tTi)=>{tTi.exports=function(t){return class extends t{constructor(...r){super(...r),this.value=void 0,this.useMap=!0}set(...r){return this.useMap=!0,this.value=void 0,super.set(...r)}clear(){return this.value=void 0,super.clear()}classCall(r){return this.clear(),this.useMap=!1,this.value=r,this.parent}entries(){return this.useMap?super.entries():this.value}values(){return this.useMap?super.values():this.value}}}});var _yt=z((PGl,nTi)=>{var eYa=eTi(),tYa=W_r(),rYa=hyt(),nYa=rTi();nTi.exports=nYa(tYa(rYa(eYa)))});var sTi=z((OGl,iTi)=>{iTi.exports=function(t){return class extends t{constructor(...r){super(...r),this.store=new Set}add(r){return this.store.add(r),this}prepend(r){return this.store=new Set([r,...this.store]),this}clear(){return this.store.clear(),this}delete(r){return this.store.delete(r),this}values(){return[...this.store]}has(r){return this.store.has(r)}merge(r){return this.store=new Set([...this.store,...r]),this}when(r,s=Function.prototype,a=Function.prototype){return r?s(this):a(this),this}}}});var xwe=z((QGl,oTi)=>{var iYa=sTi(),sYa=hyt();oTi.exports=iYa(sYa(Object))});var yyt=z((YGl,aTi)=>{aTi.exports=e=>class extends e{before(t){if(this.__after)throw new Error(`Unable to set .before(${JSON.stringify(t)}) with existing value for .after()`);return this.__before=t,this}after(t){if(this.__before)throw new Error(`Unable to set .after(${JSON.stringify(t)}) with existing value for .before()`);return this.__after=t,this}merge(t,r=[]){return t.before&&this.before(t.before),t.after&&this.after(t.after),super.merge(t,[...r,"before","after"])}}});var byt=z((XGl,cTi)=>{var oYa=dK(),aYa=yyt();cTi.exports=aYa(class extends oYa{constructor(e,t,r="plugin"){super(e),this.name=t,this.type=r,this.extend(["init"]),this.init((s,a=[])=>typeof s=="function"?new s(...a):s)}use(e,t=[]){return this.set("plugin",e).set("args",t)}tap(e){if(!this.has("plugin"))throw new Error(`Cannot call .tap() on a plugin that has not yet been defined. Call ${this.type}('${this.name}').use() first.`);return this.set("args",e(this.get("args")||[])),this}set(e,t){if(e==="args"&&!Array.isArray(t))throw new Error("args must be an array of arguments");return super.set(e,t)}merge(e,t=[]){return"plugin"in e&&this.set("plugin",e.plugin),"args"in e&&this.set("args",e.args),super.merge(e,[...t,"args","plugin"])}toConfig(){let e=this.get("init"),t=this.get("plugin"),r=this.get("args"),s=null;if(t===void 0)throw new Error(`Invalid ${this.type} configuration: ${this.type}('${this.name}').use() was not called to specify the plugin`);typeof t=="string"&&(s=t,t=Dt(s));let a=t.__expression?`(${t.__expression})`:t.name,o=e(t,r);return Object.defineProperties(o,{__pluginName:{value:this.name},__pluginType:{value:this.type},__pluginArgs:{value:r},__pluginConstructorName:{value:a},__pluginPath:{value:s}}),o}})});var Eyt=z((KGl,lTi)=>{var kwe=dK(),w5=xwe(),cYa=byt();lTi.exports=class extends kwe{constructor(e){super(e),this.alias=new kwe(this),this.aliasFields=new w5(this),this.conditionNames=new w5(this),this.descriptionFiles=new w5(this),this.extensionAlias=new kwe(this),this.extensions=new w5(this),this.mainFields=new w5(this),this.mainFiles=new w5(this),this.exportsFields=new w5(this),this.importsFields=new w5(this),this.restrictions=new w5(this),this.roots=new w5(this),this.modules=new w5(this),this.plugins=new kwe(this),this.fallback=new kwe(this),this.byDependency=new kwe(this),this.extend(["cachePredicate","cacheWithContext","enforceExtension","symlinks","unsafeCache","useSyncFileSystemCalls","preferRelative","preferAbsolute"])}plugin(e){return this.plugins.getOrCompute(e,()=>new cYa(this,e,"resolve.plugin"))}toConfig(){return this.clean(Object.assign(this.entries()||{},{alias:this.alias.entries(),aliasFields:this.aliasFields.values(),conditionNames:this.conditionNames.values(),descriptionFiles:this.descriptionFiles.values(),extensionAlias:this.extensionAlias.entries(),extensions:this.extensions.values(),mainFields:this.mainFields.values(),mainFiles:this.mainFiles.values(),modules:this.modules.values(),exportsFields:this.exportsFields.values(),importsFields:this.importsFields.values(),restrictions:this.restrictions.values(),roots:this.roots.values(),fallback:this.fallback.entries(),byDependency:this.byDependency.entries(),plugins:this.plugins.values().map(e=>e.toConfig())}))}merge(e,t=[]){let r=["alias","aliasFields","conditionNames","descriptionFiles","extensionAlias","extensions","mainFields","mainFiles","modules","exportsFields","importsFields","restrictions","roots","fallback","byDependency"];return!t.includes("plugin")&&"plugin"in e&&Object.keys(e.plugin).forEach(s=>this.plugin(s).merge(e.plugin[s])),r.forEach(s=>{!t.includes(s)&&s in e&&this[s].merge(e[s])}),super.merge(e,[...t,...r,"plugin"])}}});var gTi=z((zGl,uTi)=>{var lYa=Eyt(),P_r=xwe();uTi.exports=class extends lYa{constructor(e){super(e),this.modules=new P_r(this),this.moduleExtensions=new P_r(this),this.packageMains=new P_r(this)}toConfig(){return this.clean({modules:this.modules.values(),moduleExtensions:this.moduleExtensions.values(),packageMains:this.packageMains.values(),...super.toConfig()})}merge(e,t=[]){let r=["modules","moduleExtensions","packageMains"];return r.forEach(s=>{!t.includes(s)&&s in e&&this[s].merge(e[s])}),super.merge(e,[...t,...r])}}});var dTi=z(($Gl,ATi)=>{var uYa=dK();ATi.exports=class extends uYa{constructor(e){super(e),this.extend(["asyncChunks","auxiliaryComment","charset","chunkFilename","chunkLoadTimeout","chunkLoadingGlobal","chunkLoading","chunkFormat","enabledChunkLoadingTypes","crossOriginLoading","devtoolFallbackModuleFilenameTemplate","devtoolModuleFilenameTemplate","devtoolNamespace","filename","assetModuleFilename","globalObject","uniqueName","hashDigest","hashDigestLength","hashFunction","hashSalt","hotUpdateChunkFilename","hotUpdateGlobal","hotUpdateMainFilename","library","libraryExport","libraryTarget","importFunctionName","path","pathinfo","publicPath","scriptType","sourceMapFilename","sourcePrefix","strictModuleErrorHandling","strictModuleExceptionHandling","umdNamedDefine","workerChunkLoading","enabledLibraryTypes","environment","compareBeforeEmit","wasmLoading","enabledWasmLoadingTypes","iife","module","clean"])}}});var fTi=z((tFl,pTi)=>{var gYa=dK(),AYa=xwe();pTi.exports=class extends gYa{constructor(e){super(e),this.allowedHosts=new AYa(this),this.extend(["after","before","bonjour","clientLogLevel","compress","contentBase","contentBasePublicPath","disableHostCheck","filename","headers","historyApiFallback","host","hot","hotOnly","http2","https","index","injectClient","injectHot","inline","lazy","liveReload","mimeTypes","noInfo","onListening","open","openPage","overlay","pfx","pfxPassphrase","port","proxy","progress","public","publicPath","quiet","serveIndex","setup","socket","sockHost","sockPath","sockPort","staticOptions","stats","stdin","transportMode","useLocalIp","watchContentBase","watchOptions","writeToDisk"])}toConfig(){return this.clean({allowedHosts:this.allowedHosts.values(),...this.entries()||{}})}merge(e,t=[]){return!t.includes("allowedHosts")&&"allowedHosts"in e&&this.allowedHosts.merge(e.allowedHosts),super.merge(e,["allowedHosts"])}}});var CTi=z((nFl,ITi)=>{var dYa=V_r(),pYa=dK(),fYa=yyt();ITi.exports=fYa(class extends pYa{constructor(e,t){super(e),this.name=t,this.extend(["loader","options"])}tap(e){return this.options(e(this.get("options"))),this}merge(e,t=[]){return!t.includes("loader")&&"loader"in e&&this.loader(e.loader),!t.includes("options")&&"options"in e&&this.options(dYa(this.store.get("options")||{},e.options)),super.merge(e,[...t,"loader","options"])}toConfig(){let e=this.clean(this.entries()||{});return Object.defineProperties(e,{__useName:{value:this.name},__ruleNames:{value:this.parent&&this.parent.names},__ruleTypes:{value:this.parent&&this.parent.ruleTypes}}),e}})});var yTi=z((sFl,_Ti)=>{var Byt=dK(),mTi=xwe(),IYa=yyt(),CYa=CTi(),mYa=Eyt();function hTi(e){return Array.isArray(e)?e:[e]}var vyt=IYa(class extends Byt{constructor(e,t,r="rule"){super(e),this.ruleName=t,this.names=[],this.ruleType=r,this.ruleTypes=[];let s=this;for(;s instanceof vyt;)this.names.unshift(s.ruleName),this.ruleTypes.unshift(s.ruleType),s=s.parent;this.uses=new Byt(this),this.include=new mTi(this),this.exclude=new mTi(this),this.rules=new Byt(this),this.oneOfs=new Byt(this),this.resolve=new mYa(this),this.resolve.extend(["fullySpecified"]),this.extend(["enforce","issuer","issuerLayer","layer","mimetype","parser","generator","resource","resourceQuery","sideEffects","test","type"])}use(e){return this.uses.getOrCompute(e,()=>new CYa(this,e))}rule(e){return this.rules.getOrCompute(e,()=>new vyt(this,e,"rule"))}oneOf(e){return this.oneOfs.getOrCompute(e,()=>new vyt(this,e,"oneOf"))}pre(){return this.enforce("pre")}post(){return this.enforce("post")}toConfig(){let e=this.clean(Object.assign(this.entries()||{},{include:this.include.values(),exclude:this.exclude.values(),rules:this.rules.values().map(t=>t.toConfig()),oneOf:this.oneOfs.values().map(t=>t.toConfig()),use:this.uses.values().map(t=>t.toConfig()),resolve:this.resolve.toConfig()}));return Object.defineProperties(e,{__ruleNames:{value:this.names},__ruleTypes:{value:this.ruleTypes}}),e}merge(e,t=[]){return!t.includes("include")&&"include"in e&&this.include.merge(hTi(e.include)),!t.includes("exclude")&&"exclude"in e&&this.exclude.merge(hTi(e.exclude)),!t.includes("use")&&"use"in e&&Object.keys(e.use).forEach(r=>this.use(r).merge(e.use[r])),!t.includes("rules")&&"rules"in e&&Object.keys(e.rules).forEach(r=>this.rule(r).merge(e.rules[r])),!t.includes("oneOf")&&"oneOf"in e&&Object.keys(e.oneOf).forEach(r=>this.oneOf(r).merge(e.oneOf[r])),!t.includes("resolve")&&"resolve"in e&&this.resolve.merge(e.resolve),!t.includes("test")&&"test"in e&&this.test(e.test instanceof RegExp||typeof e.test=="function"?e.test:new RegExp(e.test)),super.merge(e,[...t,"include","exclude","use","rules","oneOf","resolve","test"])}});_Ti.exports=vyt});var BTi=z((aFl,ETi)=>{var h5e=dK(),bTi=yTi();ETi.exports=class extends h5e{constructor(e){super(e),this.rules=new h5e(this),this.defaultRules=new h5e(this),this.generator=new h5e(this),this.parser=new h5e(this),this.extend(["noParse","unsafeCache","wrappedContextCritical","exprContextRegExp","wrappedContextRecursive","strictExportPresence","wrappedContextRegExp"])}defaultRule(e){return this.defaultRules.getOrCompute(e,()=>new bTi(this,e,"defaultRule"))}rule(e){return this.rules.getOrCompute(e,()=>new bTi(this,e,"rule"))}toConfig(){return this.clean(Object.assign(this.entries()||{},{defaultRules:this.defaultRules.values().map(e=>e.toConfig()),generator:this.generator.entries(),parser:this.parser.entries(),rules:this.rules.values().map(e=>e.toConfig())}))}merge(e,t=[]){return!t.includes("rule")&&"rule"in e&&Object.keys(e.rule).forEach(r=>this.rule(r).merge(e.rule[r])),!t.includes("defaultRule")&&"defaultRule"in e&&Object.keys(e.defaultRule).forEach(r=>this.defaultRule(r).merge(e.defaultRule[r])),super.merge(e,["rule","defaultRule"])}}});var wTi=z((lFl,STi)=>{var vTi=dK(),hYa=_yt(),_Ya=byt();STi.exports=class extends vTi{constructor(e){super(e),this.minimizers=new vTi(this),this.splitChunks=new hYa(this),this.extend(["minimize","runtimeChunk","emitOnErrors","moduleIds","chunkIds","nodeEnv","mangleWasmImports","removeAvailableModules","removeEmptyChunks","mergeDuplicateChunks","flagIncludedChunks","providedExports","usedExports","concatenateModules","sideEffects","portableRecords","mangleExports","innerGraph","realContentHash"])}minimizer(e){if(Array.isArray(e))throw new Error("optimization.minimizer() no longer supports being passed an array. Either switch to the new syntax (https://github.com/neutrinojs/webpack-chain#config-optimization-minimizers-adding) or downgrade to webpack-chain 4. If using Vue this likely means a Vue plugin has not yet been updated to support Vue CLI 4+.");return this.minimizers.getOrCompute(e,()=>new _Ya(this,e,"optimization.minimizer"))}toConfig(){return this.clean(Object.assign(this.entries()||{},{splitChunks:this.splitChunks.entries(),minimizer:this.minimizers.values().map(e=>e.toConfig())}))}merge(e,t=[]){return!t.includes("minimizer")&&"minimizer"in e&&Object.keys(e.minimizer).forEach(r=>this.minimizer(r).merge(e.minimizer[r])),super.merge(e,[...t,"minimizer"])}}});var NTi=z((gFl,TTi)=>{var yYa=_yt();TTi.exports=class extends yYa{constructor(e){super(e),this.extend(["assetFilter","hints","maxAssetSize","maxEntrypointSize"])}}});var _5e=z(a3=>{"use strict";Object.defineProperty(a3,"__esModule",{value:!0});a3.stringifyPath=a3.quoteKey=a3.isValidVariableName=a3.IS_VALID_IDENTIFIER=a3.quoteString=void 0;var bYa=/[\\\'\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,EYa=new Map([["\b","\\b"],[" ","\\t"],[` -`,"\\n"],["\f","\\f"],["\r","\\r"],["'","\\'"],['"','\\"'],["\\","\\\\"]]);function BYa(e){return EYa.get(e)||`\\u${`0000${e.charCodeAt(0).toString(16)}`.slice(-4)}`}function vYa(e){return`'${e.replace(bYa,BYa)}'`}a3.quoteString=vYa;var SYa=new Set("break else new var case finally return void catch for switch while continue function this with default if throw delete in try do instanceof typeof abstract enum int short boolean export interface static byte extends long super char final native synchronized class float package throws const goto private transient debugger implements protected volatile double import public let yield".split(" "));a3.IS_VALID_IDENTIFIER=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function O_r(e){return typeof e=="string"&&!SYa.has(e)&&a3.IS_VALID_IDENTIFIER.test(e)}a3.isValidVariableName=O_r;function wYa(e,t){return O_r(e)?e:t(e)}a3.quoteKey=wYa;function TYa(e,t){let r="";for(let s of e)O_r(s)?r+=`.${s}`:r+=`[${t(s)}]`;return r}a3.stringifyPath=TYa});var M_r=z(T5=>{"use strict";Object.defineProperty(T5,"__esModule",{value:!0});T5.FunctionParser=T5.dedentFunction=T5.functionToString=T5.USED_METHOD_KEY=void 0;var RTi=_5e(),NYa={" "(){}}[" "].toString().charAt(0)==='"',RYa={Function:"function ",GeneratorFunction:"function* ",AsyncFunction:"async function ",AsyncGeneratorFunction:"async function* "},DYa={Function:"",GeneratorFunction:"*",AsyncFunction:"async ",AsyncGeneratorFunction:"async *"},xYa=new Set("case delete else in instanceof new return throw typeof void , ; : + - ! ~ & | ^ * / % < > ? =".split(" "));T5.USED_METHOD_KEY=new WeakSet;var kYa=(e,t,r,s)=>{let a=typeof s=="string"?s:void 0;return a!==void 0&&T5.USED_METHOD_KEY.add(e),new Syt(e,t,r,a).stringify()};T5.functionToString=kYa;function DTi(e){let t;for(let r of e.split(` +`);var T=k.map(function(O){return this.buildFirstStateStack(O,[])||[O]},this);T.forEach(function(O){var X=O[0],U=X.rule.symbols[X.dot],le=this.getSymbolDisplay(U);y.push("A "+le+" based on:"),this.displayStateStack(O,y)},this)}return y.push(""),y.join(` +`)},o.prototype.displayStateStack=function(f,m){for(var y,B=0,v=0;v0&&m.push(" ^ "+B+" more lines identical to this"),B=0,m.push(" "+T)),y=T}},o.prototype.getSymbolDisplay=function(f){return g(f)},o.prototype.buildFirstStateStack=function(f,m){if(m.indexOf(f)!==-1)return null;if(f.wantedBy.length===0)return[f];var y=f.wantedBy[0],B=[f].concat(m),v=this.buildFirstStateStack(y,B);return v===null?null:[f].concat(v)},o.prototype.save=function(){var f=this.table[this.current];return f.lexerState=this.lexerState,f},o.prototype.restore=function(f){var m=f.index;this.current=m,this.table[m]=f,this.table.splice(m+1),this.lexerState=f.lexerState,this.results=this.finish()},o.prototype.rewind=function(f){if(!this.options.keepHistory)throw new Error("set option `keepHistory` to enable rewinding");this.restore(this.table[f])},o.prototype.finish=function(){var f=[],m=this.grammar.start,y=this.table[this.table.length-1];return y.states.forEach(function(B){B.rule.name===m&&B.dot===B.rule.symbols.length&&B.reference===0&&B.data!==o.fail&&f.push(B)}),f.map(function(B){return B.data})};function g(f){var m=typeof f;if(m==="string")return f;if(m==="object"){if(f.literal)return JSON.stringify(f.literal);if(f instanceof RegExp)return"character matching "+f;if(f.type)return f.type+" token";if(f.test)return"token matching "+String(f.test);throw new Error("Unknown symbol type: "+f)}}function p(f){var m=typeof f;if(m==="string")return f;if(m==="object"){if(f.literal)return JSON.stringify(f.literal);if(f instanceof RegExp)return f.toString();if(f.type)return"%"+f.type;if(f.test)return"<"+String(f.test)+">";throw new Error("Unknown symbol type: "+f)}}return{Parser:o,Grammar:s,Rule:e}})});var H_r=z((Q_r,M_r)=>{(function(e,t){typeof Q_r=="object"&&typeof M_r<"u"?M_r.exports=t():typeof define=="function"&&define.amd?define(t):e.deepmerge=t()})(Q_r,function(){"use strict";var e=function(k){return t(k)&&!r(k)};function t(v){return!!v&&typeof v=="object"}function r(v){var k=Object.prototype.toString.call(v);return k==="[object RegExp]"||k==="[object Date]"||o(v)}var s=typeof Symbol=="function"&&Symbol.for,a=s?Symbol.for("react.element"):60103;function o(v){return v.$$typeof===a}function g(v){return Array.isArray(v)?[]:{}}function p(v,k){var T=k&&k.clone===!0;return T&&e(v)?y(g(v),v,k):v}function f(v,k,T){var O=v.slice();return k.forEach(function(X,U){typeof O[U]>"u"?O[U]=p(X,T):e(X)?O[U]=y(v[U],X,T):v.indexOf(X)===-1&&O.push(p(X,T))}),O}function m(v,k,T){var O={};return e(v)&&Object.keys(v).forEach(function(X){O[X]=p(v[X],T)}),Object.keys(k).forEach(function(X){!e(k[X])||!v[X]?O[X]=p(k[X],T):O[X]=y(v[X],k[X],T)}),O}function y(v,k,T){var O=Array.isArray(k),X=Array.isArray(v),U=T||{arrayMerge:f},le=O===X;if(le)if(O){var ae=U.arrayMerge||f;return ae(v,k,T)}else return m(v,k,T);else return p(k,T)}y.all=function(k,T){if(!Array.isArray(k)||k.length<2)throw new Error("first argument should be an array with at least two elements");return k.reduce(function(O,X){return y(O,X,T)})};var B=y;return B})});var Y_r=z(($Gl,nTi)=>{var dMa=H_r();nTi.exports=function(t){return class extends t{constructor(...r){super(...r),this.store=new Map}extend(r){return this.shorthands=r,r.forEach(s=>{this[s]=a=>this.set(s,a)}),this}clear(){return this.store.clear(),this}delete(r){return this.store.delete(r),this}order(){let r=[...this.store].reduce((o,[g,p])=>(o[g]=p,o),{}),s=Object.keys(r),a=[...s];return s.forEach(o=>{if(!r[o])return;let{__before:g,__after:p}=r[o];g&&a.includes(g)?(a.splice(a.indexOf(o),1),a.splice(a.indexOf(g),0,o)):p&&a.includes(p)&&(a.splice(a.indexOf(o),1),a.splice(a.indexOf(p)+1,0,o))}),{entries:r,order:a}}entries(){let{entries:r,order:s}=this.order();if(s.length)return r}values(){let{entries:r,order:s}=this.order();return s.map(a=>r[a])}get(r){return this.store.get(r)}getOrCompute(r,s){return this.has(r)||this.set(r,s()),this.get(r)}has(r){return this.store.has(r)}set(r,s){return this.store.set(r,s),this}merge(r,s=[]){return Object.keys(r).forEach(a=>{if(s.includes(a))return;let o=r[a];!Array.isArray(o)&&typeof o!="object"||o===null||!this.has(a)?this.set(a,o):this.set(a,dMa(this.get(a),o))}),this}clean(r){return Object.keys(r).reduce((s,a)=>{let o=r[a];return o===void 0||Array.isArray(o)&&!o.length||Object.prototype.toString.call(o)==="[object Object]"&&!Object.keys(o).length||(s[a]=o),s},{})}when(r,s=Function.prototype,a=Function.prototype){return r?s(this):a(this),this}}}});var byt=z((tFl,iTi)=>{iTi.exports=function(t){return class extends t{constructor(r){super(),this.parent=r}batch(r){return r(this),this}end(){return this.parent}}}});var hK=z((nFl,sTi)=>{var pMa=Y_r(),fMa=byt();sTi.exports=pMa(fMa(Object))});var aTi=z((iFl,oTi)=>{oTi.exports=class extends Function{constructor(){return super(),new Proxy(this,{apply:(e,t,r)=>e.classCall(...r)})}classCall(){throw new Error("not implemented")}}});var lTi=z((oFl,cTi)=>{cTi.exports=function(t){return class extends t{constructor(...r){super(...r),this.value=void 0,this.useMap=!0}set(...r){return this.useMap=!0,this.value=void 0,super.set(...r)}clear(){return this.value=void 0,super.clear()}classCall(r){return this.clear(),this.useMap=!1,this.value=r,this.parent}entries(){return this.useMap?super.entries():this.value}values(){return this.useMap?super.values():this.value}}}});var Eyt=z((cFl,uTi)=>{var IMa=aTi(),CMa=Y_r(),mMa=byt(),hMa=lTi();uTi.exports=hMa(CMa(mMa(IMa)))});var ATi=z((lFl,gTi)=>{gTi.exports=function(t){return class extends t{constructor(...r){super(...r),this.store=new Set}add(r){return this.store.add(r),this}prepend(r){return this.store=new Set([r,...this.store]),this}clear(){return this.store.clear(),this}delete(r){return this.store.delete(r),this}values(){return[...this.store]}has(r){return this.store.has(r)}merge(r){return this.store=new Set([...this.store,...r]),this}when(r,s=Function.prototype,a=Function.prototype){return r?s(this):a(this),this}}}});var Gwe=z((gFl,dTi)=>{var _Ma=ATi(),yMa=byt();dTi.exports=_Ma(yMa(Object))});var Byt=z((AFl,pTi)=>{pTi.exports=e=>class extends e{before(t){if(this.__after)throw new Error(`Unable to set .before(${JSON.stringify(t)}) with existing value for .after()`);return this.__before=t,this}after(t){if(this.__before)throw new Error(`Unable to set .after(${JSON.stringify(t)}) with existing value for .before()`);return this.__after=t,this}merge(t,r=[]){return t.before&&this.before(t.before),t.after&&this.after(t.after),super.merge(t,[...r,"before","after"])}}});var vyt=z((pFl,fTi)=>{var bMa=hK(),EMa=Byt();fTi.exports=EMa(class extends bMa{constructor(e,t,r="plugin"){super(e),this.name=t,this.type=r,this.extend(["init"]),this.init((s,a=[])=>typeof s=="function"?new s(...a):s)}use(e,t=[]){return this.set("plugin",e).set("args",t)}tap(e){if(!this.has("plugin"))throw new Error(`Cannot call .tap() on a plugin that has not yet been defined. Call ${this.type}('${this.name}').use() first.`);return this.set("args",e(this.get("args")||[])),this}set(e,t){if(e==="args"&&!Array.isArray(t))throw new Error("args must be an array of arguments");return super.set(e,t)}merge(e,t=[]){return"plugin"in e&&this.set("plugin",e.plugin),"args"in e&&this.set("args",e.args),super.merge(e,[...t,"args","plugin"])}toConfig(){let e=this.get("init"),t=this.get("plugin"),r=this.get("args"),s=null;if(t===void 0)throw new Error(`Invalid ${this.type} configuration: ${this.type}('${this.name}').use() was not called to specify the plugin`);typeof t=="string"&&(s=t,t=xt(s));let a=t.__expression?`(${t.__expression})`:t.name,o=e(t,r);return Object.defineProperties(o,{__pluginName:{value:this.name},__pluginType:{value:this.type},__pluginArgs:{value:r},__pluginConstructorName:{value:a},__pluginPath:{value:s}}),o}})});var Syt=z((CFl,ITi)=>{var Fwe=hK(),RY=Gwe(),BMa=vyt();ITi.exports=class extends Fwe{constructor(e){super(e),this.alias=new Fwe(this),this.aliasFields=new RY(this),this.conditionNames=new RY(this),this.descriptionFiles=new RY(this),this.extensionAlias=new Fwe(this),this.extensions=new RY(this),this.mainFields=new RY(this),this.mainFiles=new RY(this),this.exportsFields=new RY(this),this.importsFields=new RY(this),this.restrictions=new RY(this),this.roots=new RY(this),this.modules=new RY(this),this.plugins=new Fwe(this),this.fallback=new Fwe(this),this.byDependency=new Fwe(this),this.extend(["cachePredicate","cacheWithContext","enforceExtension","symlinks","unsafeCache","useSyncFileSystemCalls","preferRelative","preferAbsolute"])}plugin(e){return this.plugins.getOrCompute(e,()=>new BMa(this,e,"resolve.plugin"))}toConfig(){return this.clean(Object.assign(this.entries()||{},{alias:this.alias.entries(),aliasFields:this.aliasFields.values(),conditionNames:this.conditionNames.values(),descriptionFiles:this.descriptionFiles.values(),extensionAlias:this.extensionAlias.entries(),extensions:this.extensions.values(),mainFields:this.mainFields.values(),mainFiles:this.mainFiles.values(),modules:this.modules.values(),exportsFields:this.exportsFields.values(),importsFields:this.importsFields.values(),restrictions:this.restrictions.values(),roots:this.roots.values(),fallback:this.fallback.entries(),byDependency:this.byDependency.entries(),plugins:this.plugins.values().map(e=>e.toConfig())}))}merge(e,t=[]){let r=["alias","aliasFields","conditionNames","descriptionFiles","extensionAlias","extensions","mainFields","mainFiles","modules","exportsFields","importsFields","restrictions","roots","fallback","byDependency"];return!t.includes("plugin")&&"plugin"in e&&Object.keys(e.plugin).forEach(s=>this.plugin(s).merge(e.plugin[s])),r.forEach(s=>{!t.includes(s)&&s in e&&this[s].merge(e[s])}),super.merge(e,[...t,...r,"plugin"])}}});var mTi=z((hFl,CTi)=>{var vMa=Syt(),X_r=Gwe();CTi.exports=class extends vMa{constructor(e){super(e),this.modules=new X_r(this),this.moduleExtensions=new X_r(this),this.packageMains=new X_r(this)}toConfig(){return this.clean({modules:this.modules.values(),moduleExtensions:this.moduleExtensions.values(),packageMains:this.packageMains.values(),...super.toConfig()})}merge(e,t=[]){let r=["modules","moduleExtensions","packageMains"];return r.forEach(s=>{!t.includes(s)&&s in e&&this[s].merge(e[s])}),super.merge(e,[...t,...r])}}});var _Ti=z((yFl,hTi)=>{var SMa=hK();hTi.exports=class extends SMa{constructor(e){super(e),this.extend(["asyncChunks","auxiliaryComment","charset","chunkFilename","chunkLoadTimeout","chunkLoadingGlobal","chunkLoading","chunkFormat","enabledChunkLoadingTypes","crossOriginLoading","devtoolFallbackModuleFilenameTemplate","devtoolModuleFilenameTemplate","devtoolNamespace","filename","assetModuleFilename","globalObject","uniqueName","hashDigest","hashDigestLength","hashFunction","hashSalt","hotUpdateChunkFilename","hotUpdateGlobal","hotUpdateMainFilename","library","libraryExport","libraryTarget","importFunctionName","path","pathinfo","publicPath","scriptType","sourceMapFilename","sourcePrefix","strictModuleErrorHandling","strictModuleExceptionHandling","umdNamedDefine","workerChunkLoading","enabledLibraryTypes","environment","compareBeforeEmit","wasmLoading","enabledWasmLoadingTypes","iife","module","clean"])}}});var bTi=z((EFl,yTi)=>{var wMa=hK(),TMa=Gwe();yTi.exports=class extends wMa{constructor(e){super(e),this.allowedHosts=new TMa(this),this.extend(["after","before","bonjour","clientLogLevel","compress","contentBase","contentBasePublicPath","disableHostCheck","filename","headers","historyApiFallback","host","hot","hotOnly","http2","https","index","injectClient","injectHot","inline","lazy","liveReload","mimeTypes","noInfo","onListening","open","openPage","overlay","pfx","pfxPassphrase","port","proxy","progress","public","publicPath","quiet","serveIndex","setup","socket","sockHost","sockPath","sockPort","staticOptions","stats","stdin","transportMode","useLocalIp","watchContentBase","watchOptions","writeToDisk"])}toConfig(){return this.clean({allowedHosts:this.allowedHosts.values(),...this.entries()||{}})}merge(e,t=[]){return!t.includes("allowedHosts")&&"allowedHosts"in e&&this.allowedHosts.merge(e.allowedHosts),super.merge(e,["allowedHosts"])}}});var BTi=z((vFl,ETi)=>{var NMa=H_r(),RMa=hK(),DMa=Byt();ETi.exports=DMa(class extends RMa{constructor(e,t){super(e),this.name=t,this.extend(["loader","options"])}tap(e){return this.options(e(this.get("options"))),this}merge(e,t=[]){return!t.includes("loader")&&"loader"in e&&this.loader(e.loader),!t.includes("options")&&"options"in e&&this.options(NMa(this.store.get("options")||{},e.options)),super.merge(e,[...t,"loader","options"])}toConfig(){let e=this.clean(this.entries()||{});return Object.defineProperties(e,{__useName:{value:this.name},__ruleNames:{value:this.parent&&this.parent.names},__ruleTypes:{value:this.parent&&this.parent.ruleTypes}}),e}})});var TTi=z((wFl,wTi)=>{var wyt=hK(),vTi=Gwe(),xMa=Byt(),kMa=BTi(),GMa=Syt();function STi(e){return Array.isArray(e)?e:[e]}var Tyt=xMa(class extends wyt{constructor(e,t,r="rule"){super(e),this.ruleName=t,this.names=[],this.ruleType=r,this.ruleTypes=[];let s=this;for(;s instanceof Tyt;)this.names.unshift(s.ruleName),this.ruleTypes.unshift(s.ruleType),s=s.parent;this.uses=new wyt(this),this.include=new vTi(this),this.exclude=new vTi(this),this.rules=new wyt(this),this.oneOfs=new wyt(this),this.resolve=new GMa(this),this.resolve.extend(["fullySpecified"]),this.extend(["enforce","issuer","issuerLayer","layer","mimetype","parser","generator","resource","resourceQuery","sideEffects","test","type"])}use(e){return this.uses.getOrCompute(e,()=>new kMa(this,e))}rule(e){return this.rules.getOrCompute(e,()=>new Tyt(this,e,"rule"))}oneOf(e){return this.oneOfs.getOrCompute(e,()=>new Tyt(this,e,"oneOf"))}pre(){return this.enforce("pre")}post(){return this.enforce("post")}toConfig(){let e=this.clean(Object.assign(this.entries()||{},{include:this.include.values(),exclude:this.exclude.values(),rules:this.rules.values().map(t=>t.toConfig()),oneOf:this.oneOfs.values().map(t=>t.toConfig()),use:this.uses.values().map(t=>t.toConfig()),resolve:this.resolve.toConfig()}));return Object.defineProperties(e,{__ruleNames:{value:this.names},__ruleTypes:{value:this.ruleTypes}}),e}merge(e,t=[]){return!t.includes("include")&&"include"in e&&this.include.merge(STi(e.include)),!t.includes("exclude")&&"exclude"in e&&this.exclude.merge(STi(e.exclude)),!t.includes("use")&&"use"in e&&Object.keys(e.use).forEach(r=>this.use(r).merge(e.use[r])),!t.includes("rules")&&"rules"in e&&Object.keys(e.rules).forEach(r=>this.rule(r).merge(e.rules[r])),!t.includes("oneOf")&&"oneOf"in e&&Object.keys(e.oneOf).forEach(r=>this.oneOf(r).merge(e.oneOf[r])),!t.includes("resolve")&&"resolve"in e&&this.resolve.merge(e.resolve),!t.includes("test")&&"test"in e&&this.test(e.test instanceof RegExp||typeof e.test=="function"?e.test:new RegExp(e.test)),super.merge(e,[...t,"include","exclude","use","rules","oneOf","resolve","test"])}});wTi.exports=Tyt});var DTi=z((NFl,RTi)=>{var yYe=hK(),NTi=TTi();RTi.exports=class extends yYe{constructor(e){super(e),this.rules=new yYe(this),this.defaultRules=new yYe(this),this.generator=new yYe(this),this.parser=new yYe(this),this.extend(["noParse","unsafeCache","wrappedContextCritical","exprContextRegExp","wrappedContextRecursive","strictExportPresence","wrappedContextRegExp"])}defaultRule(e){return this.defaultRules.getOrCompute(e,()=>new NTi(this,e,"defaultRule"))}rule(e){return this.rules.getOrCompute(e,()=>new NTi(this,e,"rule"))}toConfig(){return this.clean(Object.assign(this.entries()||{},{defaultRules:this.defaultRules.values().map(e=>e.toConfig()),generator:this.generator.entries(),parser:this.parser.entries(),rules:this.rules.values().map(e=>e.toConfig())}))}merge(e,t=[]){return!t.includes("rule")&&"rule"in e&&Object.keys(e.rule).forEach(r=>this.rule(r).merge(e.rule[r])),!t.includes("defaultRule")&&"defaultRule"in e&&Object.keys(e.defaultRule).forEach(r=>this.defaultRule(r).merge(e.defaultRule[r])),super.merge(e,["rule","defaultRule"])}}});var GTi=z((DFl,kTi)=>{var xTi=hK(),FMa=Eyt(),ZMa=vyt();kTi.exports=class extends xTi{constructor(e){super(e),this.minimizers=new xTi(this),this.splitChunks=new FMa(this),this.extend(["minimize","runtimeChunk","emitOnErrors","moduleIds","chunkIds","nodeEnv","mangleWasmImports","removeAvailableModules","removeEmptyChunks","mergeDuplicateChunks","flagIncludedChunks","providedExports","usedExports","concatenateModules","sideEffects","portableRecords","mangleExports","innerGraph","realContentHash"])}minimizer(e){if(Array.isArray(e))throw new Error("optimization.minimizer() no longer supports being passed an array. Either switch to the new syntax (https://github.com/neutrinojs/webpack-chain#config-optimization-minimizers-adding) or downgrade to webpack-chain 4. If using Vue this likely means a Vue plugin has not yet been updated to support Vue CLI 4+.");return this.minimizers.getOrCompute(e,()=>new ZMa(this,e,"optimization.minimizer"))}toConfig(){return this.clean(Object.assign(this.entries()||{},{splitChunks:this.splitChunks.entries(),minimizer:this.minimizers.values().map(e=>e.toConfig())}))}merge(e,t=[]){return!t.includes("minimizer")&&"minimizer"in e&&Object.keys(e.minimizer).forEach(r=>this.minimizer(r).merge(e.minimizer[r])),super.merge(e,[...t,"minimizer"])}}});var ZTi=z((kFl,FTi)=>{var LMa=Eyt();FTi.exports=class extends LMa{constructor(e){super(e),this.extend(["assetFilter","hints","maxAssetSize","maxEntrypointSize"])}}});var bYe=z(u3=>{"use strict";Object.defineProperty(u3,"__esModule",{value:!0});u3.stringifyPath=u3.quoteKey=u3.isValidVariableName=u3.IS_VALID_IDENTIFIER=u3.quoteString=void 0;var VMa=/[\\\'\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,WMa=new Map([["\b","\\b"],[" ","\\t"],[` +`,"\\n"],["\f","\\f"],["\r","\\r"],["'","\\'"],['"','\\"'],["\\","\\\\"]]);function PMa(e){return WMa.get(e)||`\\u${`0000${e.charCodeAt(0).toString(16)}`.slice(-4)}`}function OMa(e){return`'${e.replace(VMa,PMa)}'`}u3.quoteString=OMa;var QMa=new Set("break else new var case finally return void catch for switch while continue function this with default if throw delete in try do instanceof typeof abstract enum int short boolean export interface static byte extends long super char final native synchronized class float package throws const goto private transient debugger implements protected volatile double import public let yield".split(" "));u3.IS_VALID_IDENTIFIER=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function J_r(e){return typeof e=="string"&&!QMa.has(e)&&u3.IS_VALID_IDENTIFIER.test(e)}u3.isValidVariableName=J_r;function MMa(e,t){return J_r(e)?e:t(e)}u3.quoteKey=MMa;function HMa(e,t){let r="";for(let s of e)J_r(s)?r+=`.${s}`:r+=`[${t(s)}]`;return r}u3.stringifyPath=HMa});var U_r=z(DY=>{"use strict";Object.defineProperty(DY,"__esModule",{value:!0});DY.FunctionParser=DY.dedentFunction=DY.functionToString=DY.USED_METHOD_KEY=void 0;var LTi=bYe(),YMa={" "(){}}[" "].toString().charAt(0)==='"',XMa={Function:"function ",GeneratorFunction:"function* ",AsyncFunction:"async function ",AsyncGeneratorFunction:"async function* "},JMa={Function:"",GeneratorFunction:"*",AsyncFunction:"async ",AsyncGeneratorFunction:"async *"},UMa=new Set("case delete else in instanceof new return throw typeof void , ; : + - ! ~ & | ^ * / % < > ? =".split(" "));DY.USED_METHOD_KEY=new WeakSet;var KMa=(e,t,r,s)=>{let a=typeof s=="string"?s:void 0;return a!==void 0&&DY.USED_METHOD_KEY.add(e),new Nyt(e,t,r,a).stringify()};DY.functionToString=KMa;function VTi(e){let t;for(let r of e.split(` `).slice(1)){let s=/^[\s\t]+/.exec(r);if(!s)return e;let[a]=s;(t===void 0||a.length")return this.keyPrefix+this.fnString;this.pos=s;case'"':case"'":case"[]":return this.getPrefix()+this.fnString.substr(this.pos)}}}tryStrippingName(){if(NYa)return;let t=this.pos,r=this.fnString.substr(this.pos,this.fn.name.length);if(r===this.fn.name&&(this.pos+=r.length,this.consumeSyntax()==="()"&&this.consumeSyntax()==="{}"&&this.pos===this.fnString.length))return(this.isMethodCandidate||!RTi.isValidVariableName(r))&&(t+=r.length),this.getPrefix()+this.fnString.substr(t);this.pos=t}tryParsePrefixTokens(){let t=this.pos;switch(this.hadKeyword=!1,this.fnType){case"AsyncFunction":if(this.consumeSyntax()!=="async")return!1;t=this.pos;case"Function":return this.consumeSyntax()==="function"?this.hadKeyword=!0:this.pos=t,!0;case"AsyncGeneratorFunction":if(this.consumeSyntax()!=="async")return!1;case"GeneratorFunction":let r=this.consumeSyntax();return r==="function"&&(r=this.consumeSyntax(),this.hadKeyword=!0),r==="*"}}consumeSyntax(t){let r=this.consumeMatch(/^(?:([A-Za-z_0-9$\xA0-\uFFFF]+)|=>|\+\+|\-\-|.)/);if(!r)return;let[s,a]=r;if(this.consumeWhitespace(),a)return t||a;switch(s){case"(":return this.consumeSyntaxUntil("(",")");case"[":return this.consumeSyntaxUntil("[","]");case"{":return this.consumeSyntaxUntil("{","}");case"`":return this.consumeTemplate();case'"':return this.consumeRegExp(/^(?:[^\\"]|\\.)*"/,'"');case"'":return this.consumeRegExp(/^(?:[^\\']|\\.)*'/,"'")}return s}consumeSyntaxUntil(t,r){let s=!0;for(;;){let a=this.consumeSyntax();if(a===r)return t+r;if(!a||a===")"||a==="]"||a==="}")return;a==="/"&&s&&this.consumeMatch(/^(?:\\.|[^\\\/\n[]|\[(?:\\.|[^\]])*\])+\/[a-z]*/)?(s=!1,this.consumeWhitespace()):s=xYa.has(a)}}consumeMatch(t){let r=t.exec(this.fnString.substr(this.pos));return r&&(this.pos+=r[0].length),r}consumeRegExp(t,r){let s=t.exec(this.fnString.substr(this.pos));if(s)return this.pos+=s[0].length,this.consumeWhitespace(),r}consumeTemplate(){for(;;){if(this.consumeMatch(/^(?:[^`$\\]|\\.|\$(?!{))*/),this.fnString[this.pos]==="`")return this.pos++,this.consumeWhitespace(),"`";if(!(this.fnString.substr(this.pos,2)==="${"&&(this.pos+=2,this.consumeWhitespace(),this.consumeSyntaxUntil("{","}"))))return}}consumeWhitespace(){this.consumeMatch(/^(?:\s|\/\/.*|\/\*[^]*?\*\/)*/)}};T5.FunctionParser=Syt});var xTi=z(wyt=>{"use strict";Object.defineProperty(wyt,"__esModule",{value:!0});wyt.arrayToString=void 0;var GYa=(e,t,r)=>{let s=e.map(function(o,g){let p=r(o,g);return p===void 0?String(p):t+p.split(` +`):e}DY.dedentFunction=VTi;var Nyt=class{constructor(t,r,s,a){this.fn=t,this.indent=r,this.next=s,this.key=a,this.pos=0,this.hadKeyword=!1,this.fnString=Function.prototype.toString.call(t),this.fnType=t.constructor.name,this.keyQuote=a===void 0?"":LTi.quoteKey(a,s),this.keyPrefix=a===void 0?"":`${this.keyQuote}:${r?" ":""}`,this.isMethodCandidate=a===void 0?!1:this.fn.name===""||this.fn.name===a}stringify(){let t=this.tryParse();return t?VTi(t):`${this.keyPrefix}void ${this.next(this.fnString)}`}getPrefix(){return this.isMethodCandidate&&!this.hadKeyword?JMa[this.fnType]+this.keyQuote:this.keyPrefix+XMa[this.fnType]}tryParse(){if(this.fnString[this.fnString.length-1]!=="}")return this.keyPrefix+this.fnString;if(this.fn.name){let r=this.tryStrippingName();if(r)return r}let t=this.pos;if(this.consumeSyntax()==="class")return this.fnString;if(this.pos=t,this.tryParsePrefixTokens()){let r=this.tryStrippingName();if(r)return r;let s=this.pos;switch(this.consumeSyntax("WORD_LIKE")){case"WORD_LIKE":this.isMethodCandidate&&!this.hadKeyword&&(s=this.pos);case"()":if(this.fnString.substr(this.pos,2)==="=>")return this.keyPrefix+this.fnString;this.pos=s;case'"':case"'":case"[]":return this.getPrefix()+this.fnString.substr(this.pos)}}}tryStrippingName(){if(YMa)return;let t=this.pos,r=this.fnString.substr(this.pos,this.fn.name.length);if(r===this.fn.name&&(this.pos+=r.length,this.consumeSyntax()==="()"&&this.consumeSyntax()==="{}"&&this.pos===this.fnString.length))return(this.isMethodCandidate||!LTi.isValidVariableName(r))&&(t+=r.length),this.getPrefix()+this.fnString.substr(t);this.pos=t}tryParsePrefixTokens(){let t=this.pos;switch(this.hadKeyword=!1,this.fnType){case"AsyncFunction":if(this.consumeSyntax()!=="async")return!1;t=this.pos;case"Function":return this.consumeSyntax()==="function"?this.hadKeyword=!0:this.pos=t,!0;case"AsyncGeneratorFunction":if(this.consumeSyntax()!=="async")return!1;case"GeneratorFunction":let r=this.consumeSyntax();return r==="function"&&(r=this.consumeSyntax(),this.hadKeyword=!0),r==="*"}}consumeSyntax(t){let r=this.consumeMatch(/^(?:([A-Za-z_0-9$\xA0-\uFFFF]+)|=>|\+\+|\-\-|.)/);if(!r)return;let[s,a]=r;if(this.consumeWhitespace(),a)return t||a;switch(s){case"(":return this.consumeSyntaxUntil("(",")");case"[":return this.consumeSyntaxUntil("[","]");case"{":return this.consumeSyntaxUntil("{","}");case"`":return this.consumeTemplate();case'"':return this.consumeRegExp(/^(?:[^\\"]|\\.)*"/,'"');case"'":return this.consumeRegExp(/^(?:[^\\']|\\.)*'/,"'")}return s}consumeSyntaxUntil(t,r){let s=!0;for(;;){let a=this.consumeSyntax();if(a===r)return t+r;if(!a||a===")"||a==="]"||a==="}")return;a==="/"&&s&&this.consumeMatch(/^(?:\\.|[^\\\/\n[]|\[(?:\\.|[^\]])*\])+\/[a-z]*/)?(s=!1,this.consumeWhitespace()):s=UMa.has(a)}}consumeMatch(t){let r=t.exec(this.fnString.substr(this.pos));return r&&(this.pos+=r[0].length),r}consumeRegExp(t,r){let s=t.exec(this.fnString.substr(this.pos));if(s)return this.pos+=s[0].length,this.consumeWhitespace(),r}consumeTemplate(){for(;;){if(this.consumeMatch(/^(?:[^`$\\]|\\.|\$(?!{))*/),this.fnString[this.pos]==="`")return this.pos++,this.consumeWhitespace(),"`";if(!(this.fnString.substr(this.pos,2)==="${"&&(this.pos+=2,this.consumeWhitespace(),this.consumeSyntaxUntil("{","}"))))return}}consumeWhitespace(){this.consumeMatch(/^(?:\s|\/\/.*|\/\*[^]*?\*\/)*/)}};DY.FunctionParser=Nyt});var WTi=z(Ryt=>{"use strict";Object.defineProperty(Ryt,"__esModule",{value:!0});Ryt.arrayToString=void 0;var jMa=(e,t,r)=>{let s=e.map(function(o,g){let p=r(o,g);return p===void 0?String(p):t+p.split(` `).join(` ${t}`)}).join(t?`, `:","),a=t&&s?` -`:"";return`[${a}${s}${a}]`};wyt.arrayToString=GYa});var kTi=z(Tyt=>{"use strict";Object.defineProperty(Tyt,"__esModule",{value:!0});Tyt.objectToString=void 0;var FYa=_5e(),ZYa=M_r(),LYa=xTi(),VYa=(e,t,r,s)=>{if(typeof Buffer=="function"&&Buffer.isBuffer(e))return`Buffer.from(${r(e.toString("base64"))}, 'base64')`;if(typeof global=="object"&&e===global)return Q_r(e,t,r,s);let a=PYa[Object.prototype.toString.call(e)];return a?a(e,t,r,s):void 0};Tyt.objectToString=VYa;var WYa=(e,t,r,s)=>{let a=t?` +`:"";return`[${a}${s}${a}]`};Ryt.arrayToString=jMa});var PTi=z(Dyt=>{"use strict";Object.defineProperty(Dyt,"__esModule",{value:!0});Dyt.objectToString=void 0;var zMa=bYe(),qMa=U_r(),$Ma=WTi(),eHa=(e,t,r,s)=>{if(typeof Buffer=="function"&&Buffer.isBuffer(e))return`Buffer.from(${r(e.toString("base64"))}, 'base64')`;if(typeof global=="object"&&e===global)return K_r(e,t,r,s);let a=rHa[Object.prototype.toString.call(e)];return a?a(e,t,r,s):void 0};Dyt.objectToString=eHa;var tHa=(e,t,r,s)=>{let a=t?` `:"",o=t?" ":"",g=Object.keys(e).reduce(function(p,f){let m=e[f],y=r(m,f);if(y===void 0)return p;let B=y.split(` `).join(` -${t}`);return ZYa.USED_METHOD_KEY.has(m)?(p.push(`${t}${B}`),p):(p.push(`${t}${FYa.quoteKey(f,r)}:${o}${B}`),p)},[]).join(`,${a}`);return g===""?"{}":`{${a}${g}${a}}`},Q_r=(e,t,r)=>`Function(${r("return this")})()`,PYa={"[object Array]":LYa.arrayToString,"[object Object]":WYa,"[object Error]":(e,t,r)=>`new Error(${r(e.message)})`,"[object Date]":e=>`new Date(${e.getTime()})`,"[object String]":(e,t,r)=>`new String(${r(e.toString())})`,"[object Number]":e=>`new Number(${e})`,"[object Boolean]":e=>`new Boolean(${e})`,"[object Set]":(e,t,r)=>`new Set(${r(Array.from(e))})`,"[object Map]":(e,t,r)=>`new Map(${r(Array.from(e))})`,"[object RegExp]":String,"[object global]":Q_r,"[object Window]":Q_r}});var GTi=z(Nyt=>{"use strict";Object.defineProperty(Nyt,"__esModule",{value:!0});Nyt.toString=void 0;var OYa=_5e(),MYa=kTi(),QYa=M_r(),YYa={string:OYa.quoteString,number:e=>Object.is(e,-0)?"-0":String(e),boolean:String,symbol:(e,t,r)=>{let s=Symbol.keyFor(e);return s!==void 0?`Symbol.for(${r(s)})`:`Symbol(${r(e.description)})`},bigint:(e,t,r)=>`BigInt(${r(String(e))})`,undefined:String,object:MYa.objectToString,function:QYa.functionToString},HYa=(e,t,r,s)=>e===null?"null":YYa[typeof e](e,t,r,s);Nyt.toString=HYa});var VTi=z(Ryt=>{"use strict";Object.defineProperty(Ryt,"__esModule",{value:!0});Ryt.stringify=void 0;var FTi=GTi(),ZTi=_5e(),LTi=Symbol("root");function XYa(e,t,r,s={}){let a=typeof r=="string"?r:" ".repeat(r||0),o=[],g=new Set,p=new Map,f=new Map,m=0,{maxDepth:y=100,references:B=!1,skipUndefinedProperties:v=!1,maxValues:G=1e5}=s,T=JYa(t),O=(le,ae)=>{if(++m>G||v&&le===void 0||o.length>y)return;if(ae===void 0)return T(le,a,O,ae);o.push(ae);let ge=X(le,ae===LTi?void 0:ae);return o.pop(),ge},X=B?(le,ae)=>{if(le!==null&&(typeof le=="object"||typeof le=="function"||typeof le=="symbol")){if(p.has(le))return f.set(o.slice(1),p.get(le)),T(void 0,a,O,ae);p.set(le,o.slice(1))}return T(le,a,O,ae)}:(le,ae)=>{if(g.has(le))return;g.add(le);let ge=T(le,a,O,ae);return g.delete(le),ge},U=O(e,LTi);if(f.size){let le=a?" ":"",ae=a?` -`:"",ge=`var x${le}=${le}${U};${ae}`;for(let[fe,pe]of f.entries()){let he=ZTi.stringifyPath(fe,O),be=ZTi.stringifyPath(pe,O);ge+=`x${he}${le}=${le}x${be};${ae}`}return`(function${le}()${le}{${ae}${ge}return x;${ae}}())`}return U}Ryt.stringify=XYa;function JYa(e){return e?(t,r,s,a)=>e(t,r,o=>FTi.toString(o,r,s,a),a):FTi.toString}});var WTi=z((hFl,H_r)=>{var Y_r=dK(),UYa=_yt(),KYa=xwe(),jYa=Eyt(),zYa=gTi(),qYa=dTi(),$Ya=fTi(),eHa=byt(),tHa=BTi(),rHa=wTi(),nHa=NTi();H_r.exports=class extends Y_r{constructor(){super(),this.entryPoints=new Y_r(this),this.output=new qYa(this),this.module=new tHa(this),this.resolve=new jYa(this),this.resolveLoader=new zYa(this),this.optimization=new rHa(this),this.plugins=new Y_r(this),this.devServer=new $Ya(this),this.performance=new nHa(this),this.node=new UYa(this),this.extend(["context","mode","devtool","target","watch","watchOptions","externals","externalsType","externalsPresets","stats","experiments","amd","bail","cache","dependencies","ignoreWarnings","loader","parallelism","profile","recordsPath","recordsInputPath","recordsOutputPath","name","infrastructureLogging","snapshot"])}static toString(e,{verbose:t=!1,configPrefix:r="config"}={}){let{stringify:s}=VTi();return s(e,(a,o,g)=>{if(a&&a.__pluginName){let p=`/* ${r}.${a.__pluginType}('${a.__pluginName}') */ +${t}`);return qMa.USED_METHOD_KEY.has(m)?(p.push(`${t}${B}`),p):(p.push(`${t}${zMa.quoteKey(f,r)}:${o}${B}`),p)},[]).join(`,${a}`);return g===""?"{}":`{${a}${g}${a}}`},K_r=(e,t,r)=>`Function(${r("return this")})()`,rHa={"[object Array]":$Ma.arrayToString,"[object Object]":tHa,"[object Error]":(e,t,r)=>`new Error(${r(e.message)})`,"[object Date]":e=>`new Date(${e.getTime()})`,"[object String]":(e,t,r)=>`new String(${r(e.toString())})`,"[object Number]":e=>`new Number(${e})`,"[object Boolean]":e=>`new Boolean(${e})`,"[object Set]":(e,t,r)=>`new Set(${r(Array.from(e))})`,"[object Map]":(e,t,r)=>`new Map(${r(Array.from(e))})`,"[object RegExp]":String,"[object global]":K_r,"[object Window]":K_r}});var OTi=z(xyt=>{"use strict";Object.defineProperty(xyt,"__esModule",{value:!0});xyt.toString=void 0;var nHa=bYe(),iHa=PTi(),sHa=U_r(),oHa={string:nHa.quoteString,number:e=>Object.is(e,-0)?"-0":String(e),boolean:String,symbol:(e,t,r)=>{let s=Symbol.keyFor(e);return s!==void 0?`Symbol.for(${r(s)})`:`Symbol(${r(e.description)})`},bigint:(e,t,r)=>`BigInt(${r(String(e))})`,undefined:String,object:iHa.objectToString,function:sHa.functionToString},aHa=(e,t,r,s)=>e===null?"null":oHa[typeof e](e,t,r,s);xyt.toString=aHa});var YTi=z(kyt=>{"use strict";Object.defineProperty(kyt,"__esModule",{value:!0});kyt.stringify=void 0;var QTi=OTi(),MTi=bYe(),HTi=Symbol("root");function cHa(e,t,r,s={}){let a=typeof r=="string"?r:" ".repeat(r||0),o=[],g=new Set,p=new Map,f=new Map,m=0,{maxDepth:y=100,references:B=!1,skipUndefinedProperties:v=!1,maxValues:k=1e5}=s,T=lHa(t),O=(le,ae)=>{if(++m>k||v&&le===void 0||o.length>y)return;if(ae===void 0)return T(le,a,O,ae);o.push(ae);let ge=X(le,ae===HTi?void 0:ae);return o.pop(),ge},X=B?(le,ae)=>{if(le!==null&&(typeof le=="object"||typeof le=="function"||typeof le=="symbol")){if(p.has(le))return f.set(o.slice(1),p.get(le)),T(void 0,a,O,ae);p.set(le,o.slice(1))}return T(le,a,O,ae)}:(le,ae)=>{if(g.has(le))return;g.add(le);let ge=T(le,a,O,ae);return g.delete(le),ge},U=O(e,HTi);if(f.size){let le=a?" ":"",ae=a?` +`:"",ge=`var x${le}=${le}${U};${ae}`;for(let[fe,pe]of f.entries()){let he=MTi.stringifyPath(fe,O),be=MTi.stringifyPath(pe,O);ge+=`x${he}${le}=${le}x${be};${ae}`}return`(function${le}()${le}{${ae}${ge}return x;${ae}}())`}return U}kyt.stringify=cHa;function lHa(e){return e?(t,r,s,a)=>e(t,r,o=>QTi.toString(o,r,s,a),a):QTi.toString}});var XTi=z((OFl,z_r)=>{var j_r=hK(),uHa=Eyt(),gHa=Gwe(),AHa=Syt(),dHa=mTi(),pHa=_Ti(),fHa=bTi(),IHa=vyt(),CHa=DTi(),mHa=GTi(),hHa=ZTi();z_r.exports=class extends j_r{constructor(){super(),this.entryPoints=new j_r(this),this.output=new pHa(this),this.module=new CHa(this),this.resolve=new AHa(this),this.resolveLoader=new dHa(this),this.optimization=new mHa(this),this.plugins=new j_r(this),this.devServer=new fHa(this),this.performance=new hHa(this),this.node=new uHa(this),this.extend(["context","mode","devtool","target","watch","watchOptions","externals","externalsType","externalsPresets","stats","experiments","amd","bail","cache","dependencies","ignoreWarnings","loader","parallelism","profile","recordsPath","recordsInputPath","recordsOutputPath","name","infrastructureLogging","snapshot"])}static toString(e,{verbose:t=!1,configPrefix:r="config"}={}){let{stringify:s}=YTi();return s(e,(a,o,g)=>{if(a&&a.__pluginName){let p=`/* ${r}.${a.__pluginType}('${a.__pluginName}') */ `,f=a.__pluginPath?`(require(${g(a.__pluginPath)}))`:a.__pluginConstructorName;if(f){let m=g(a.__pluginArgs).slice(1,-1);return`${p}new ${f}(${m})`}return p+g(a.__pluginArgs&&a.__pluginArgs.length?{args:a.__pluginArgs}:{})}if(a&&a.__ruleNames){let p=a.__ruleTypes;return`/* ${r}.module${a.__ruleNames.map((m,y)=>`.${p?p[y]:"rule"}('${m}')`).join("")}${a.__useName?`.use('${a.__useName}')`:""} */ -`+g(a)}return a&&a.__expression?a.__expression:typeof a=="function"&&!t&&a.toString().length>100?"function () { /* omitted long function */ }":g(a)},2)}entry(e){return this.entryPoints.getOrCompute(e,()=>new KYa(this))}plugin(e){return this.plugins.getOrCompute(e,()=>new eHa(this,e))}toConfig(){let e=this.entryPoints.entries()||{},t=this.entries()||{};return this.clean(Object.assign(t,{node:this.node.entries(),output:this.output.entries(),resolve:this.resolve.toConfig(),resolveLoader:this.resolveLoader.toConfig(),devServer:this.devServer.toConfig(),module:this.module.toConfig(),optimization:this.optimization.toConfig(),plugins:this.plugins.values().map(r=>r.toConfig()),performance:this.performance.entries(),entry:Object.keys(e).reduce((r,s)=>Object.assign(r,{[s]:e[s].values()}),{})}))}toString(e){return H_r.exports.toString(this.toConfig(),e)}merge(e={},t=[]){let r=["node","output","resolve","resolveLoader","devServer","optimization","performance","module"];return!t.includes("entry")&&"entry"in e&&Object.keys(e.entry).forEach(s=>this.entry(s).merge([].concat(e.entry[s]))),!t.includes("plugin")&&"plugin"in e&&Object.keys(e.plugin).forEach(s=>this.plugin(s).merge(e.plugin[s])),r.forEach(s=>{!t.includes(s)&&s in e&&this[s].merge(e[s])}),super.merge(e,[...t,...r,"entry","plugin"])}}});var SIe=z(Gyt=>{"use strict";Object.defineProperty(Gyt,"__esModule",{value:!0});Gyt.isJsonObject=fHa;Gyt.isJsonArray=IHa;function fHa(e){return e!=null&&typeof e=="object"&&!Array.isArray(e)}function IHa(e){return Array.isArray(e)}});var Fyt=z(z_r=>{"use strict";Object.defineProperty(z_r,"__esModule",{value:!0});z_r.getTypesOfSchema=b5e;var qTi=SIe(),$Ti=["string","integer","number","object","array","boolean","null"];function b5e(e){if(!e)return new Set;if(e===!0)return new Set($Ti);let t;if(typeof e.type=="string")t=new Set([e.type]);else if(Array.isArray(e.type))t=new Set(e.type);else if((0,qTi.isJsonArray)(e.enum)){t=new Set;for(let r of e.enum)switch(typeof r){case"string":case"number":case"boolean":t.add(typeof r);break;case"object":Array.isArray(r)?t.add("array"):r===null?t.add("null"):t.add("object");break}}else t=new Set($Ti);if((0,qTi.isJsonObject)(e.not)){let r=b5e(e.not);t=new Set([...t].filter(s=>!r.has(s)))}if(Array.isArray(e.allOf))for(let r of e.allOf){let s=b5e(r);t=new Set([...s].filter(a=>t.has(a)))}if(Array.isArray(e.oneOf)){let r=new Set;for(let s of e.oneOf){let a=b5e(s);r=new Set([...r,...a])}t=new Set([...r].filter(s=>t.has(s)))}if(Array.isArray(e.anyOf)){let r=new Set;for(let s of e.anyOf){let a=b5e(s);r=new Set([...r,...a])}t=new Set([...r].filter(s=>t.has(s)))}return e.properties?t.add("object"):e.items&&t.add("array"),t}});var rNi=z(q_r=>{"use strict";Object.defineProperty(q_r,"__esModule",{value:!0});q_r.addUndefinedDefaults=tNi;var doe=SIe(),eNi=Fyt();function tNi(e,t,r){if(typeof r=="boolean"||r===void 0)return e;e??=r.default;let s=(0,eNi.getTypesOfSchema)(r);if(s.size===0)return e;let a;if(s.size===1)a=Array.from(s)[0];else if(s.size===2&&s.has("array")&&s.has("object"))a="array";else if(r.properties&&s.has("object"))a="object";else if(r.items&&s.has("array"))a="array";else return e;if(a==="array")return e??[];if(a==="object"){let o;if(e==null)o={};else if((0,doe.isJsonObject)(e))o=e;else return e;if(!(0,doe.isJsonObject)(r.properties))return o;for(let[g,p]of Object.entries(r.properties)){if(g==="$schema"||!(0,doe.isJsonObject)(p))continue;let f=o[g];if(f===void 0)o[g]=p.default;else if((0,doe.isJsonObject)(f)){let m=p.oneOf||p.anyOf,y=Object.keys(f),B=(0,doe.isJsonArray)(m)&&m.find(v=>{if(!(0,doe.isJsonObject)(v))return!1;let G=(0,eNi.getTypesOfSchema)(v);if(G.size===1&&G.has("object")&&(0,doe.isJsonObject)(v.properties)){let T=Object.keys(v.properties);return y.every(O=>T.includes(O))}return!1});B&&(0,doe.isJsonObject)(B)&&(o[g]=tNi(f,t,B))}}return o}return e}});var iNi=z(nNi=>{"use strict";Object.defineProperty(nNi,"__esModule",{value:!0})});var e0r=z(E5e=>{"use strict";Object.defineProperty(E5e,"__esModule",{value:!0});E5e.buildJsonPointer=$_r;E5e.joinJsonPointer=CHa;E5e.parseJsonPointer=mHa;function $_r(e){return"/"+e.map(t=>t.replace(/~/g,"~0").replace(/\//g,"~1")).join("/")}function CHa(e,...t){return e=="/"?$_r(t):e+$_r(t)}function mHa(e){if(e==="")return[];if(e.charAt(0)!=="/")throw new Error("Relative pointer: "+e);return e.substring(1).split(/\//).map(t=>t.replace(/~1/g,"/").replace(/~0/g,"~"))}});var S5e=z(Mh=>{"use strict";Object.defineProperty(Mh,"__esModule",{value:!0});Mh.regexpCode=Mh.getEsmExportName=Mh.getProperty=Mh.safeStringify=Mh.stringify=Mh.strConcat=Mh.addCodeArg=Mh.str=Mh._=Mh.nil=Mh._Code=Mh.Name=Mh.IDENTIFIER=Mh._CodeOrName=void 0;var B5e=class{};Mh._CodeOrName=B5e;Mh.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var wIe=class extends B5e{constructor(t){if(super(),!Mh.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};Mh.Name=wIe;var LM=class extends B5e{constructor(t){super(),this._items=typeof t=="string"?[t]:t}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let t=this._items[0];return t===""||t==='""'}get str(){var t;return(t=this._str)!==null&&t!==void 0?t:this._str=this._items.reduce((r,s)=>`${r}${s}`,"")}get names(){var t;return(t=this._names)!==null&&t!==void 0?t:this._names=this._items.reduce((r,s)=>(s instanceof wIe&&(r[s.str]=(r[s.str]||0)+1),r),{})}};Mh._Code=LM;Mh.nil=new LM("");function sNi(e,...t){let r=[e[0]],s=0;for(;s{"use strict";Object.defineProperty(y9,"__esModule",{value:!0});y9.ValueScope=y9.ValueScopeName=y9.Scope=y9.varKinds=y9.UsedValueState=void 0;var _9=S5e(),n0r=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value}},Zyt;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(Zyt||(y9.UsedValueState=Zyt={}));y9.varKinds={const:new _9.Name("const"),let:new _9.Name("let"),var:new _9.Name("var")};var Lyt=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof _9.Name?t:this.name(t)}name(t){return new _9.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return`${t}${r.index++}`}_nameGroup(t){var r,s;if(!((s=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||s===void 0)&&s.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};y9.Scope=Lyt;var Vyt=class extends _9.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:s}){this.value=t,this.scopePath=(0,_9._)`.${new _9.Name(r)}[${s}]`}};y9.ValueScopeName=Vyt;var wHa=(0,_9._)`\n`,i0r=class extends Lyt{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?wHa:_9.nil}}get(){return this._scope}name(t){return new Vyt(t,this._newName(t))}value(t,r){var s;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let a=this.toName(t),{prefix:o}=a,g=(s=r.key)!==null&&s!==void 0?s:r.ref,p=this._values[o];if(p){let y=p.get(g);if(y)return y}else p=this._values[o]=new Map;p.set(g,a);let f=this._scope[o]||(this._scope[o]=[]),m=f.length;return f[m]=r.ref,a.setValue(r,{property:o,itemIndex:m}),a}getValue(t,r){let s=this._values[t];if(s)return s.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,s=>{if(s.scopePath===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return(0,_9._)`${t}${s.scopePath}`})}scopeCode(t=this._values,r,s){return this._reduceValues(t,a=>{if(a.value===void 0)throw new Error(`CodeGen: name "${a}" has no value`);return a.value.code},r,s)}_reduceValues(t,r,s={},a){let o=_9.nil;for(let g in t){let p=t[g];if(!p)continue;let f=s[g]=s[g]||new Map;p.forEach(m=>{if(f.has(m))return;f.set(m,Zyt.Started);let y=r(m);if(y){let B=this.opts.es5?y9.varKinds.var:y9.varKinds.const;o=(0,_9._)`${o}${B} ${m} = ${y};${this.opts._n}`}else if(y=a?.(m))o=(0,_9._)`${o}${y}${this.opts._n}`;else throw new n0r(m);f.set(m,Zyt.Completed)})}return o}};y9.ValueScope=i0r});var wC=z(OC=>{"use strict";Object.defineProperty(OC,"__esModule",{value:!0});OC.or=OC.and=OC.not=OC.CodeGen=OC.operators=OC.varKinds=OC.ValueScopeName=OC.ValueScope=OC.Scope=OC.Name=OC.regexpCode=OC.stringify=OC.getProperty=OC.nil=OC.strConcat=OC.str=OC._=void 0;var ah=S5e(),N5=s0r(),poe=S5e();Object.defineProperty(OC,"_",{enumerable:!0,get:function(){return poe._}});Object.defineProperty(OC,"str",{enumerable:!0,get:function(){return poe.str}});Object.defineProperty(OC,"strConcat",{enumerable:!0,get:function(){return poe.strConcat}});Object.defineProperty(OC,"nil",{enumerable:!0,get:function(){return poe.nil}});Object.defineProperty(OC,"getProperty",{enumerable:!0,get:function(){return poe.getProperty}});Object.defineProperty(OC,"stringify",{enumerable:!0,get:function(){return poe.stringify}});Object.defineProperty(OC,"regexpCode",{enumerable:!0,get:function(){return poe.regexpCode}});Object.defineProperty(OC,"Name",{enumerable:!0,get:function(){return poe.Name}});var Myt=s0r();Object.defineProperty(OC,"Scope",{enumerable:!0,get:function(){return Myt.Scope}});Object.defineProperty(OC,"ValueScope",{enumerable:!0,get:function(){return Myt.ValueScope}});Object.defineProperty(OC,"ValueScopeName",{enumerable:!0,get:function(){return Myt.ValueScopeName}});Object.defineProperty(OC,"varKinds",{enumerable:!0,get:function(){return Myt.varKinds}});OC.operators={GT:new ah._Code(">"),GTE:new ah._Code(">="),LT:new ah._Code("<"),LTE:new ah._Code("<="),EQ:new ah._Code("==="),NEQ:new ah._Code("!=="),NOT:new ah._Code("!"),OR:new ah._Code("||"),AND:new ah._Code("&&"),ADD:new ah._Code("+")};var dq=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},o0r=class extends dq{constructor(t,r,s){super(),this.varKind=t,this.name=r,this.rhs=s}render({es5:t,_n:r}){let s=t?N5.varKinds.var:this.varKind,a=this.rhs===void 0?"":` = ${this.rhs}`;return`${s} ${this.name}${a};`+r}optimizeNames(t,r){if(t[this.name.str])return this.rhs&&(this.rhs=Fwe(this.rhs,t,r)),this}get names(){return this.rhs instanceof ah._CodeOrName?this.rhs.names:{}}},Wyt=class extends dq{constructor(t,r,s){super(),this.lhs=t,this.rhs=r,this.sideEffects=s}render({_n:t}){return`${this.lhs} = ${this.rhs};`+t}optimizeNames(t,r){if(!(this.lhs instanceof ah.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=Fwe(this.rhs,t,r),this}get names(){let t=this.lhs instanceof ah.Name?{}:{...this.lhs.names};return Oyt(t,this.rhs)}},a0r=class extends Wyt{constructor(t,r,s,a){super(t,s,a),this.op=r}render({_n:t}){return`${this.lhs} ${this.op}= ${this.rhs};`+t}},c0r=class extends dq{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`${this.label}:`+t}},l0r=class extends dq{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`break${this.label?` ${this.label}`:""};`+t}},u0r=class extends dq{constructor(t){super(),this.error=t}render({_n:t}){return`throw ${this.error};`+t}get names(){return this.error.names}},g0r=class extends dq{constructor(t){super(),this.code=t}render({_n:t}){return`${this.code};`+t}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(t,r){return this.code=Fwe(this.code,t,r),this}get names(){return this.code instanceof ah._CodeOrName?this.code.names:{}}},w5e=class extends dq{constructor(t=[]){super(),this.nodes=t}render(t){return this.nodes.reduce((r,s)=>r+s.render(t),"")}optimizeNodes(){let{nodes:t}=this,r=t.length;for(;r--;){let s=t[r].optimizeNodes();Array.isArray(s)?t.splice(r,1,...s):s?t[r]=s:t.splice(r,1)}return t.length>0?this:void 0}optimizeNames(t,r){let{nodes:s}=this,a=s.length;for(;a--;){let o=s[a];o.optimizeNames(t,r)||(THa(t,o.names),s.splice(a,1))}return s.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>RIe(t,r.names),{})}},pq=class extends w5e{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},A0r=class extends w5e{},Gwe=class extends pq{};Gwe.kind="else";var TIe=class e extends pq{constructor(t,r){super(r),this.condition=t}render(t){let r=`if(${this.condition})`+super.render(t);return this.else&&(r+="else "+this.else.render(t)),r}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let r=this.else;if(r){let s=r.optimizeNodes();r=this.else=Array.isArray(s)?new Gwe(s):s}if(r)return t===!1?r instanceof e?r:r.nodes:this.nodes.length?this:new e(aNi(t),r instanceof e?[r]:r.nodes);if(!(t===!1||!this.nodes.length))return this}optimizeNames(t,r){var s;if(this.else=(s=this.else)===null||s===void 0?void 0:s.optimizeNames(t,r),!!(super.optimizeNames(t,r)||this.else))return this.condition=Fwe(this.condition,t,r),this}get names(){let t=super.names;return Oyt(t,this.condition),this.else&&RIe(t,this.else.names),t}};TIe.kind="if";var NIe=class extends pq{};NIe.kind="for";var d0r=class extends NIe{constructor(t){super(),this.iteration=t}render(t){return`for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=Fwe(this.iteration,t,r),this}get names(){return RIe(super.names,this.iteration.names)}},p0r=class extends NIe{constructor(t,r,s,a){super(),this.varKind=t,this.name=r,this.from=s,this.to=a}render(t){let r=t.es5?N5.varKinds.var:this.varKind,{name:s,from:a,to:o}=this;return`for(${r} ${s}=${a}; ${s}<${o}; ${s}++)`+super.render(t)}get names(){let t=Oyt(super.names,this.from);return Oyt(t,this.to)}},Pyt=class extends NIe{constructor(t,r,s,a){super(),this.loop=t,this.varKind=r,this.name=s,this.iterable=a}render(t){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iterable=Fwe(this.iterable,t,r),this}get names(){return RIe(super.names,this.iterable.names)}},T5e=class extends pq{constructor(t,r,s){super(),this.name=t,this.args=r,this.async=s}render(t){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}};T5e.kind="func";var N5e=class extends w5e{render(t){return"return "+super.render(t)}};N5e.kind="return";var f0r=class extends pq{render(t){let r="try"+super.render(t);return this.catch&&(r+=this.catch.render(t)),this.finally&&(r+=this.finally.render(t)),r}optimizeNodes(){var t,r;return super.optimizeNodes(),(t=this.catch)===null||t===void 0||t.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(t,r){var s,a;return super.optimizeNames(t,r),(s=this.catch)===null||s===void 0||s.optimizeNames(t,r),(a=this.finally)===null||a===void 0||a.optimizeNames(t,r),this}get names(){let t=super.names;return this.catch&&RIe(t,this.catch.names),this.finally&&RIe(t,this.finally.names),t}},R5e=class extends pq{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}};R5e.kind="catch";var D5e=class extends pq{render(t){return"finally"+super.render(t)}};D5e.kind="finally";var I0r=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` -`:""},this._extScope=t,this._scope=new N5.Scope({parent:t}),this._nodes=[new A0r]}toString(){return this._root.render(this.opts)}name(t){return this._scope.name(t)}scopeName(t){return this._extScope.name(t)}scopeValue(t,r){let s=this._extScope.value(t,r);return(this._values[s.prefix]||(this._values[s.prefix]=new Set)).add(s),s}getScopeValue(t,r){return this._extScope.getValue(t,r)}scopeRefs(t){return this._extScope.scopeRefs(t,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(t,r,s,a){let o=this._scope.toName(r);return s!==void 0&&a&&(this._constants[o.str]=s),this._leafNode(new o0r(t,o,s)),o}const(t,r,s){return this._def(N5.varKinds.const,t,r,s)}let(t,r,s){return this._def(N5.varKinds.let,t,r,s)}var(t,r,s){return this._def(N5.varKinds.var,t,r,s)}assign(t,r,s){return this._leafNode(new Wyt(t,r,s))}add(t,r){return this._leafNode(new a0r(t,OC.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==ah.nil&&this._leafNode(new g0r(t)),this}object(...t){let r=["{"];for(let[s,a]of t)r.length>1&&r.push(","),r.push(s),(s!==a||this.opts.es5)&&(r.push(":"),(0,ah.addCodeArg)(r,a));return r.push("}"),new ah._Code(r)}if(t,r,s){if(this._blockNode(new TIe(t)),r&&s)this.code(r).else().code(s).endIf();else if(r)this.code(r).endIf();else if(s)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(t){return this._elseNode(new TIe(t))}else(){return this._elseNode(new Gwe)}endIf(){return this._endBlockNode(TIe,Gwe)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new d0r(t),r)}forRange(t,r,s,a,o=this.opts.es5?N5.varKinds.var:N5.varKinds.let){let g=this._scope.toName(t);return this._for(new p0r(o,g,r,s),()=>a(g))}forOf(t,r,s,a=N5.varKinds.const){let o=this._scope.toName(t);if(this.opts.es5){let g=r instanceof ah.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,ah._)`${g}.length`,p=>{this.var(o,(0,ah._)`${g}[${p}]`),s(o)})}return this._for(new Pyt("of",a,o,r),()=>s(o))}forIn(t,r,s,a=this.opts.es5?N5.varKinds.var:N5.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0,ah._)`Object.keys(${r})`,s);let o=this._scope.toName(t);return this._for(new Pyt("in",a,o,r),()=>s(o))}endFor(){return this._endBlockNode(NIe)}label(t){return this._leafNode(new c0r(t))}break(t){return this._leafNode(new l0r(t))}return(t){let r=new N5e;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(N5e)}try(t,r,s){if(!r&&!s)throw new Error('CodeGen: "try" without "catch" and "finally"');let a=new f0r;if(this._blockNode(a),this.code(t),r){let o=this.name("e");this._currNode=a.catch=new R5e(o),r(o)}return s&&(this._currNode=a.finally=new D5e,this.code(s)),this._endBlockNode(R5e,D5e)}throw(t){return this._leafNode(new u0r(t))}block(t,r){return this._blockStarts.push(this._nodes.length),t&&this.code(t).endBlock(r),this}endBlock(t){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let s=this._nodes.length-r;if(s<0||t!==void 0&&s!==t)throw new Error(`CodeGen: wrong number of nodes: ${s} vs ${t} expected`);return this._nodes.length=r,this}func(t,r=ah.nil,s,a){return this._blockNode(new T5e(t,r,s)),a&&this.code(a).endFunc(),this}endFunc(){return this._endBlockNode(T5e)}optimize(t=1){for(;t-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(t){return this._currNode.nodes.push(t),this}_blockNode(t){this._currNode.nodes.push(t),this._nodes.push(t)}_endBlockNode(t,r){let s=this._currNode;if(s instanceof t||r&&s instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${t.kind}/${r.kind}`:t.kind}"`)}_elseNode(t){let r=this._currNode;if(!(r instanceof TIe))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=t,this}get _root(){return this._nodes[0]}get _currNode(){let t=this._nodes;return t[t.length-1]}set _currNode(t){let r=this._nodes;r[r.length-1]=t}};OC.CodeGen=I0r;function RIe(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function Oyt(e,t){return t instanceof ah._CodeOrName?RIe(e,t.names):e}function Fwe(e,t,r){if(e instanceof ah.Name)return s(e);if(!a(e))return e;return new ah._Code(e._items.reduce((o,g)=>(g instanceof ah.Name&&(g=s(g)),g instanceof ah._Code?o.push(...g._items):o.push(g),o),[]));function s(o){let g=r[o.str];return g===void 0||t[o.str]!==1?o:(delete t[o.str],g)}function a(o){return o instanceof ah._Code&&o._items.some(g=>g instanceof ah.Name&&t[g.str]===1&&r[g.str]!==void 0)}}function THa(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function aNi(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,ah._)`!${C0r(e)}`}OC.not=aNi;var NHa=cNi(OC.operators.AND);function RHa(...e){return e.reduce(NHa)}OC.and=RHa;var DHa=cNi(OC.operators.OR);function xHa(...e){return e.reduce(DHa)}OC.or=xHa;function cNi(e){return(t,r)=>t===ah.nil?r:r===ah.nil?t:(0,ah._)`${C0r(t)} ${e} ${C0r(r)}`}function C0r(e){return e instanceof ah.Name?e:(0,ah._)`(${e})`}});var Qh=z(im=>{"use strict";Object.defineProperty(im,"__esModule",{value:!0});im.checkStrictMode=im.getErrorPath=im.Type=im.useFunc=im.setEvaluated=im.evaluatedPropsToName=im.mergeEvaluated=im.eachItem=im.unescapeJsonPointer=im.escapeJsonPointer=im.escapeFragment=im.unescapeFragment=im.schemaRefOrVal=im.schemaHasRulesButRef=im.schemaHasRules=im.checkUnknownRules=im.alwaysValidSchema=im.toHash=void 0;var bb=wC(),kHa=S5e();function GHa(e){let t={};for(let r of e)t[r]=!0;return t}im.toHash=GHa;function FHa(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:(gNi(e,t),!ANi(t,e.self.RULES.all))}im.alwaysValidSchema=FHa;function gNi(e,t=e.schema){let{opts:r,self:s}=e;if(!r.strictSchema||typeof t=="boolean")return;let a=s.RULES.keywords;for(let o in t)a[o]||fNi(e,`unknown keyword: "${o}"`)}im.checkUnknownRules=gNi;function ANi(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}im.schemaHasRules=ANi;function ZHa(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}im.schemaHasRulesButRef=ZHa;function LHa({topSchemaRef:e,schemaPath:t},r,s,a){if(!a){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,bb._)`${r}`}return(0,bb._)`${e}${t}${(0,bb.getProperty)(s)}`}im.schemaRefOrVal=LHa;function VHa(e){return dNi(decodeURIComponent(e))}im.unescapeFragment=VHa;function WHa(e){return encodeURIComponent(h0r(e))}im.escapeFragment=WHa;function h0r(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}im.escapeJsonPointer=h0r;function dNi(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}im.unescapeJsonPointer=dNi;function PHa(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}im.eachItem=PHa;function lNi({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:s}){return(a,o,g,p)=>{let f=g===void 0?o:g instanceof bb.Name?(o instanceof bb.Name?e(a,o,g):t(a,o,g),g):o instanceof bb.Name?(t(a,g,o),o):r(o,g);return p===bb.Name&&!(f instanceof bb.Name)?s(a,f):f}}im.mergeEvaluated={props:lNi({mergeNames:(e,t,r)=>e.if((0,bb._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,bb._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,bb._)`${r} || {}`).code((0,bb._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,bb._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,bb._)`${r} || {}`),_0r(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:pNi}),items:lNi({mergeNames:(e,t,r)=>e.if((0,bb._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,bb._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,bb._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,bb._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function pNi(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,bb._)`{}`);return t!==void 0&&_0r(e,r,t),r}im.evaluatedPropsToName=pNi;function _0r(e,t,r){Object.keys(r).forEach(s=>e.assign((0,bb._)`${t}${(0,bb.getProperty)(s)}`,!0))}im.setEvaluated=_0r;var uNi={};function OHa(e,t){return e.scopeValue("func",{ref:t,code:uNi[t.code]||(uNi[t.code]=new kHa._Code(t.code))})}im.useFunc=OHa;var m0r;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(m0r||(im.Type=m0r={}));function MHa(e,t,r){if(e instanceof bb.Name){let s=t===m0r.Num;return r?s?(0,bb._)`"[" + ${e} + "]"`:(0,bb._)`"['" + ${e} + "']"`:s?(0,bb._)`"/" + ${e}`:(0,bb._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,bb.getProperty)(e).toString():"/"+h0r(e)}im.getErrorPath=MHa;function fNi(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===!0)throw new Error(t);e.self.logger.warn(t)}}im.checkStrictMode=fNi});var fq=z(y0r=>{"use strict";Object.defineProperty(y0r,"__esModule",{value:!0});var Xk=wC(),QHa={data:new Xk.Name("data"),valCxt:new Xk.Name("valCxt"),instancePath:new Xk.Name("instancePath"),parentData:new Xk.Name("parentData"),parentDataProperty:new Xk.Name("parentDataProperty"),rootData:new Xk.Name("rootData"),dynamicAnchors:new Xk.Name("dynamicAnchors"),vErrors:new Xk.Name("vErrors"),errors:new Xk.Name("errors"),this:new Xk.Name("this"),self:new Xk.Name("self"),scope:new Xk.Name("scope"),json:new Xk.Name("json"),jsonPos:new Xk.Name("jsonPos"),jsonLen:new Xk.Name("jsonLen"),jsonPart:new Xk.Name("jsonPart")};y0r.default=QHa});var x5e=z(Jk=>{"use strict";Object.defineProperty(Jk,"__esModule",{value:!0});Jk.extendErrors=Jk.resetErrorsCount=Jk.reportExtraError=Jk.reportError=Jk.keyword$DataError=Jk.keywordError=void 0;var hh=wC(),Qyt=Qh(),qF=fq();Jk.keywordError={message:({keyword:e})=>(0,hh.str)`must pass "${e}" keyword validation`};Jk.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,hh.str)`"${e}" keyword must be ${t} ($data)`:(0,hh.str)`"${e}" keyword is invalid ($data)`};function YHa(e,t=Jk.keywordError,r,s){let{it:a}=e,{gen:o,compositeRule:g,allErrors:p}=a,f=mNi(e,t,r);s??(g||p)?INi(o,f):CNi(a,(0,hh._)`[${f}]`)}Jk.reportError=YHa;function HHa(e,t=Jk.keywordError,r){let{it:s}=e,{gen:a,compositeRule:o,allErrors:g}=s,p=mNi(e,t,r);INi(a,p),o||g||CNi(s,qF.default.vErrors)}Jk.reportExtraError=HHa;function XHa(e,t){e.assign(qF.default.errors,t),e.if((0,hh._)`${qF.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,hh._)`${qF.default.vErrors}.length`,t),()=>e.assign(qF.default.vErrors,null)))}Jk.resetErrorsCount=XHa;function JHa({gen:e,keyword:t,schemaValue:r,data:s,errsCount:a,it:o}){if(a===void 0)throw new Error("ajv implementation error");let g=e.name("err");e.forRange("i",a,qF.default.errors,p=>{e.const(g,(0,hh._)`${qF.default.vErrors}[${p}]`),e.if((0,hh._)`${g}.instancePath === undefined`,()=>e.assign((0,hh._)`${g}.instancePath`,(0,hh.strConcat)(qF.default.instancePath,o.errorPath))),e.assign((0,hh._)`${g}.schemaPath`,(0,hh.str)`${o.errSchemaPath}/${t}`),o.opts.verbose&&(e.assign((0,hh._)`${g}.schema`,r),e.assign((0,hh._)`${g}.data`,s))})}Jk.extendErrors=JHa;function INi(e,t){let r=e.const("err",t);e.if((0,hh._)`${qF.default.vErrors} === null`,()=>e.assign(qF.default.vErrors,(0,hh._)`[${r}]`),(0,hh._)`${qF.default.vErrors}.push(${r})`),e.code((0,hh._)`${qF.default.errors}++`)}function CNi(e,t){let{gen:r,validateName:s,schemaEnv:a}=e;a.$async?r.throw((0,hh._)`new ${e.ValidationError}(${t})`):(r.assign((0,hh._)`${s}.errors`,t),r.return(!1))}var DIe={keyword:new hh.Name("keyword"),schemaPath:new hh.Name("schemaPath"),params:new hh.Name("params"),propertyName:new hh.Name("propertyName"),message:new hh.Name("message"),schema:new hh.Name("schema"),parentSchema:new hh.Name("parentSchema")};function mNi(e,t,r){let{createErrors:s}=e.it;return s===!1?(0,hh._)`{}`:UHa(e,t,r)}function UHa(e,t,r={}){let{gen:s,it:a}=e,o=[KHa(a,r),jHa(e,r)];return zHa(e,t,o),s.object(...o)}function KHa({errorPath:e},{instancePath:t}){let r=t?(0,hh.str)`${e}${(0,Qyt.getErrorPath)(t,Qyt.Type.Str)}`:e;return[qF.default.instancePath,(0,hh.strConcat)(qF.default.instancePath,r)]}function jHa({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:s}){let a=s?t:(0,hh.str)`${t}/${e}`;return r&&(a=(0,hh.str)`${a}${(0,Qyt.getErrorPath)(r,Qyt.Type.Str)}`),[DIe.schemaPath,a]}function zHa(e,{params:t,message:r},s){let{keyword:a,data:o,schemaValue:g,it:p}=e,{opts:f,propertyName:m,topSchemaRef:y,schemaPath:B}=p;s.push([DIe.keyword,a],[DIe.params,typeof t=="function"?t(e):t||(0,hh._)`{}`]),f.messages&&s.push([DIe.message,typeof r=="function"?r(e):r]),f.verbose&&s.push([DIe.schema,g],[DIe.parentSchema,(0,hh._)`${y}${B}`],[qF.default.data,o]),m&&s.push([DIe.propertyName,m])}});var _Ni=z(Zwe=>{"use strict";Object.defineProperty(Zwe,"__esModule",{value:!0});Zwe.boolOrEmptySchema=Zwe.topBoolOrEmptySchema=void 0;var qHa=x5e(),$Ha=wC(),e5a=fq(),t5a={message:"boolean schema is false"};function r5a(e){let{gen:t,schema:r,validateName:s}=e;r===!1?hNi(e,!1):typeof r=="object"&&r.$async===!0?t.return(e5a.default.data):(t.assign((0,$Ha._)`${s}.errors`,null),t.return(!0))}Zwe.topBoolOrEmptySchema=r5a;function n5a(e,t){let{gen:r,schema:s}=e;s===!1?(r.var(t,!1),hNi(e)):r.var(t,!0)}Zwe.boolOrEmptySchema=n5a;function hNi(e,t){let{gen:r,data:s}=e,a={gen:r,keyword:"false schema",data:s,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,qHa.reportError)(a,t5a,void 0,t)}});var b0r=z(Lwe=>{"use strict";Object.defineProperty(Lwe,"__esModule",{value:!0});Lwe.getRules=Lwe.isJSONType=void 0;var i5a=["string","number","integer","boolean","null","object","array"],s5a=new Set(i5a);function o5a(e){return typeof e=="string"&&s5a.has(e)}Lwe.isJSONType=o5a;function a5a(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}Lwe.getRules=a5a});var E0r=z(foe=>{"use strict";Object.defineProperty(foe,"__esModule",{value:!0});foe.shouldUseRule=foe.shouldUseGroup=foe.schemaHasRulesForType=void 0;function c5a({schema:e,self:t},r){let s=t.RULES.types[r];return s&&s!==!0&&yNi(e,s)}foe.schemaHasRulesForType=c5a;function yNi(e,t){return t.rules.some(r=>bNi(e,r))}foe.shouldUseGroup=yNi;function bNi(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some(s=>e[s]!==void 0))}foe.shouldUseRule=bNi});var k5e=z(Uk=>{"use strict";Object.defineProperty(Uk,"__esModule",{value:!0});Uk.reportTypeError=Uk.checkDataTypes=Uk.checkDataType=Uk.coerceAndCheckDataType=Uk.getJSONTypes=Uk.getSchemaTypes=Uk.DataType=void 0;var l5a=b0r(),u5a=E0r(),g5a=x5e(),lC=wC(),ENi=Qh(),Vwe;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(Vwe||(Uk.DataType=Vwe={}));function A5a(e){let t=BNi(e.type);if(t.includes("null")){if(e.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!t.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===!0&&t.push("null")}return t}Uk.getSchemaTypes=A5a;function BNi(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(l5a.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}Uk.getJSONTypes=BNi;function d5a(e,t){let{gen:r,data:s,opts:a}=e,o=p5a(t,a.coerceTypes),g=t.length>0&&!(o.length===0&&t.length===1&&(0,u5a.schemaHasRulesForType)(e,t[0]));if(g){let p=v0r(t,s,a.strictNumbers,Vwe.Wrong);r.if(p,()=>{o.length?f5a(e,t,o):S0r(e)})}return g}Uk.coerceAndCheckDataType=d5a;var vNi=new Set(["string","number","integer","boolean","null"]);function p5a(e,t){return t?e.filter(r=>vNi.has(r)||t==="array"&&r==="array"):[]}function f5a(e,t,r){let{gen:s,data:a,opts:o}=e,g=s.let("dataType",(0,lC._)`typeof ${a}`),p=s.let("coerced",(0,lC._)`undefined`);o.coerceTypes==="array"&&s.if((0,lC._)`${g} == 'object' && Array.isArray(${a}) && ${a}.length == 1`,()=>s.assign(a,(0,lC._)`${a}[0]`).assign(g,(0,lC._)`typeof ${a}`).if(v0r(t,a,o.strictNumbers),()=>s.assign(p,a))),s.if((0,lC._)`${p} !== undefined`);for(let m of r)(vNi.has(m)||m==="array"&&o.coerceTypes==="array")&&f(m);s.else(),S0r(e),s.endIf(),s.if((0,lC._)`${p} !== undefined`,()=>{s.assign(a,p),I5a(e,p)});function f(m){switch(m){case"string":s.elseIf((0,lC._)`${g} == "number" || ${g} == "boolean"`).assign(p,(0,lC._)`"" + ${a}`).elseIf((0,lC._)`${a} === null`).assign(p,(0,lC._)`""`);return;case"number":s.elseIf((0,lC._)`${g} == "boolean" || ${a} === null - || (${g} == "string" && ${a} && ${a} == +${a})`).assign(p,(0,lC._)`+${a}`);return;case"integer":s.elseIf((0,lC._)`${g} === "boolean" || ${a} === null - || (${g} === "string" && ${a} && ${a} == +${a} && !(${a} % 1))`).assign(p,(0,lC._)`+${a}`);return;case"boolean":s.elseIf((0,lC._)`${a} === "false" || ${a} === 0 || ${a} === null`).assign(p,!1).elseIf((0,lC._)`${a} === "true" || ${a} === 1`).assign(p,!0);return;case"null":s.elseIf((0,lC._)`${a} === "" || ${a} === 0 || ${a} === false`),s.assign(p,null);return;case"array":s.elseIf((0,lC._)`${g} === "string" || ${g} === "number" - || ${g} === "boolean" || ${a} === null`).assign(p,(0,lC._)`[${a}]`)}}}function I5a({gen:e,parentData:t,parentDataProperty:r},s){e.if((0,lC._)`${t} !== undefined`,()=>e.assign((0,lC._)`${t}[${r}]`,s))}function B0r(e,t,r,s=Vwe.Correct){let a=s===Vwe.Correct?lC.operators.EQ:lC.operators.NEQ,o;switch(e){case"null":return(0,lC._)`${t} ${a} null`;case"array":o=(0,lC._)`Array.isArray(${t})`;break;case"object":o=(0,lC._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":o=g((0,lC._)`!(${t} % 1) && !isNaN(${t})`);break;case"number":o=g();break;default:return(0,lC._)`typeof ${t} ${a} ${e}`}return s===Vwe.Correct?o:(0,lC.not)(o);function g(p=lC.nil){return(0,lC.and)((0,lC._)`typeof ${t} == "number"`,p,r?(0,lC._)`isFinite(${t})`:lC.nil)}}Uk.checkDataType=B0r;function v0r(e,t,r,s){if(e.length===1)return B0r(e[0],t,r,s);let a,o=(0,ENi.toHash)(e);if(o.array&&o.object){let g=(0,lC._)`typeof ${t} != "object"`;a=o.null?g:(0,lC._)`!${t} || ${g}`,delete o.null,delete o.array,delete o.object}else a=lC.nil;o.number&&delete o.integer;for(let g in o)a=(0,lC.and)(a,B0r(g,t,r,s));return a}Uk.checkDataTypes=v0r;var C5a={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,lC._)`{type: ${e}}`:(0,lC._)`{type: ${t}}`};function S0r(e){let t=m5a(e);(0,g5a.reportError)(t,C5a)}Uk.reportTypeError=S0r;function m5a(e){let{gen:t,data:r,schema:s}=e,a=(0,ENi.schemaRefOrVal)(e,s,"type");return{gen:t,keyword:"type",data:r,schema:s.type,schemaCode:a,schemaValue:a,parentSchema:s,params:{},it:e}}});var wNi=z(Yyt=>{"use strict";Object.defineProperty(Yyt,"__esModule",{value:!0});Yyt.assignDefaults=void 0;var Wwe=wC(),h5a=Qh();function _5a(e,t){let{properties:r,items:s}=e.schema;if(t==="object"&&r)for(let a in r)SNi(e,a,r[a].default);else t==="array"&&Array.isArray(s)&&s.forEach((a,o)=>SNi(e,o,a.default))}Yyt.assignDefaults=_5a;function SNi(e,t,r){let{gen:s,compositeRule:a,data:o,opts:g}=e;if(r===void 0)return;let p=(0,Wwe._)`${o}${(0,Wwe.getProperty)(t)}`;if(a){(0,h5a.checkStrictMode)(e,`default is ignored for: ${p}`);return}let f=(0,Wwe._)`${p} === undefined`;g.useDefaults==="empty"&&(f=(0,Wwe._)`${f} || ${p} === null || ${p} === ""`),s.if(f,(0,Wwe._)`${p} = ${(0,Wwe.stringify)(r)}`)}});var VM=z(Wy=>{"use strict";Object.defineProperty(Wy,"__esModule",{value:!0});Wy.validateUnion=Wy.validateArray=Wy.usePattern=Wy.callValidateCode=Wy.schemaProperties=Wy.allSchemaProperties=Wy.noPropertyInData=Wy.propertyInData=Wy.isOwnProperty=Wy.hasPropFunc=Wy.reportMissingProp=Wy.checkMissingProp=Wy.checkReportMissingProp=void 0;var u1=wC(),w0r=Qh(),Ioe=fq(),y5a=Qh();function b5a(e,t){let{gen:r,data:s,it:a}=e;r.if(N0r(r,s,t,a.opts.ownProperties),()=>{e.setParams({missingProperty:(0,u1._)`${t}`},!0),e.error()})}Wy.checkReportMissingProp=b5a;function E5a({gen:e,data:t,it:{opts:r}},s,a){return(0,u1.or)(...s.map(o=>(0,u1.and)(N0r(e,t,o,r.ownProperties),(0,u1._)`${a} = ${o}`)))}Wy.checkMissingProp=E5a;function B5a(e,t){e.setParams({missingProperty:t},!0),e.error()}Wy.reportMissingProp=B5a;function TNi(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,u1._)`Object.prototype.hasOwnProperty`})}Wy.hasPropFunc=TNi;function T0r(e,t,r){return(0,u1._)`${TNi(e)}.call(${t}, ${r})`}Wy.isOwnProperty=T0r;function v5a(e,t,r,s){let a=(0,u1._)`${t}${(0,u1.getProperty)(r)} !== undefined`;return s?(0,u1._)`${a} && ${T0r(e,t,r)}`:a}Wy.propertyInData=v5a;function N0r(e,t,r,s){let a=(0,u1._)`${t}${(0,u1.getProperty)(r)} === undefined`;return s?(0,u1.or)(a,(0,u1.not)(T0r(e,t,r))):a}Wy.noPropertyInData=N0r;function NNi(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}Wy.allSchemaProperties=NNi;function S5a(e,t){return NNi(t).filter(r=>!(0,w0r.alwaysValidSchema)(e,t[r]))}Wy.schemaProperties=S5a;function w5a({schemaCode:e,data:t,it:{gen:r,topSchemaRef:s,schemaPath:a,errorPath:o},it:g},p,f,m){let y=m?(0,u1._)`${e}, ${t}, ${s}${a}`:t,B=[[Ioe.default.instancePath,(0,u1.strConcat)(Ioe.default.instancePath,o)],[Ioe.default.parentData,g.parentData],[Ioe.default.parentDataProperty,g.parentDataProperty],[Ioe.default.rootData,Ioe.default.rootData]];g.opts.dynamicRef&&B.push([Ioe.default.dynamicAnchors,Ioe.default.dynamicAnchors]);let v=(0,u1._)`${y}, ${r.object(...B)}`;return f!==u1.nil?(0,u1._)`${p}.call(${f}, ${v})`:(0,u1._)`${p}(${v})`}Wy.callValidateCode=w5a;var T5a=(0,u1._)`new RegExp`;function N5a({gen:e,it:{opts:t}},r){let s=t.unicodeRegExp?"u":"",{regExp:a}=t.code,o=a(r,s);return e.scopeValue("pattern",{key:o.toString(),ref:o,code:(0,u1._)`${a.code==="new RegExp"?T5a:(0,y5a.useFunc)(e,a)}(${r}, ${s})`})}Wy.usePattern=N5a;function R5a(e){let{gen:t,data:r,keyword:s,it:a}=e,o=t.name("valid");if(a.allErrors){let p=t.let("valid",!0);return g(()=>t.assign(p,!1)),p}return t.var(o,!0),g(()=>t.break()),o;function g(p){let f=t.const("len",(0,u1._)`${r}.length`);t.forRange("i",0,f,m=>{e.subschema({keyword:s,dataProp:m,dataPropType:w0r.Type.Num},o),t.if((0,u1.not)(o),p)})}}Wy.validateArray=R5a;function D5a(e){let{gen:t,schema:r,keyword:s,it:a}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(f=>(0,w0r.alwaysValidSchema)(a,f))&&!a.opts.unevaluated)return;let g=t.let("valid",!1),p=t.name("_valid");t.block(()=>r.forEach((f,m)=>{let y=e.subschema({keyword:s,schemaProp:m,compositeRule:!0},p);t.assign(g,(0,u1._)`${g} || ${p}`),e.mergeValidEvaluated(y,p)||t.if((0,u1.not)(g))})),e.result(g,()=>e.reset(),()=>e.error(!0))}Wy.validateUnion=D5a});var xNi=z(pK=>{"use strict";Object.defineProperty(pK,"__esModule",{value:!0});pK.validateKeywordUsage=pK.validSchemaType=pK.funcKeywordCode=pK.macroKeywordCode=void 0;var $F=wC(),xIe=fq(),x5a=VM(),k5a=x5e();function G5a(e,t){let{gen:r,keyword:s,schema:a,parentSchema:o,it:g}=e,p=t.macro.call(g.self,a,o,g),f=DNi(r,s,p);g.opts.validateSchema!==!1&&g.self.validateSchema(p,!0);let m=r.name("valid");e.subschema({schema:p,schemaPath:$F.nil,errSchemaPath:`${g.errSchemaPath}/${s}`,topSchemaRef:f,compositeRule:!0},m),e.pass(m,()=>e.error(!0))}pK.macroKeywordCode=G5a;function F5a(e,t){var r;let{gen:s,keyword:a,schema:o,parentSchema:g,$data:p,it:f}=e;L5a(f,t);let m=!p&&t.compile?t.compile.call(f.self,o,g,f):t.validate,y=DNi(s,a,m),B=s.let("valid");e.block$data(B,v),e.ok((r=t.valid)!==null&&r!==void 0?r:B);function v(){if(t.errors===!1)O(),t.modifying&&RNi(e),X(()=>e.error());else{let U=t.async?G():T();t.modifying&&RNi(e),X(()=>Z5a(e,U))}}function G(){let U=s.let("ruleErrs",null);return s.try(()=>O((0,$F._)`await `),le=>s.assign(B,!1).if((0,$F._)`${le} instanceof ${f.ValidationError}`,()=>s.assign(U,(0,$F._)`${le}.errors`),()=>s.throw(le))),U}function T(){let U=(0,$F._)`${y}.errors`;return s.assign(U,null),O($F.nil),U}function O(U=t.async?(0,$F._)`await `:$F.nil){let le=f.opts.passContext?xIe.default.this:xIe.default.self,ae=!("compile"in t&&!p||t.schema===!1);s.assign(B,(0,$F._)`${U}${(0,x5a.callValidateCode)(e,y,le,ae)}`,t.modifying)}function X(U){var le;s.if((0,$F.not)((le=t.valid)!==null&&le!==void 0?le:B),U)}}pK.funcKeywordCode=F5a;function RNi(e){let{gen:t,data:r,it:s}=e;t.if(s.parentData,()=>t.assign(r,(0,$F._)`${s.parentData}[${s.parentDataProperty}]`))}function Z5a(e,t){let{gen:r}=e;r.if((0,$F._)`Array.isArray(${t})`,()=>{r.assign(xIe.default.vErrors,(0,$F._)`${xIe.default.vErrors} === null ? ${t} : ${xIe.default.vErrors}.concat(${t})`).assign(xIe.default.errors,(0,$F._)`${xIe.default.vErrors}.length`),(0,k5a.extendErrors)(e)},()=>e.error())}function L5a({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function DNi(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,$F.stringify)(r)})}function V5a(e,t,r=!1){return!t.length||t.some(s=>s==="array"?Array.isArray(e):s==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==s||r&&typeof e>"u")}pK.validSchemaType=V5a;function W5a({schema:e,opts:t,self:r,errSchemaPath:s},a,o){if(Array.isArray(a.keyword)?!a.keyword.includes(o):a.keyword!==o)throw new Error("ajv implementation error");let g=a.dependencies;if(g?.some(p=>!Object.prototype.hasOwnProperty.call(e,p)))throw new Error(`parent schema must have dependencies of ${o}: ${g.join(",")}`);if(a.validateSchema&&!a.validateSchema(e[o])){let f=`keyword "${o}" value is invalid at path "${s}": `+r.errorsText(a.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(f);else throw new Error(f)}}pK.validateKeywordUsage=W5a});var GNi=z(Coe=>{"use strict";Object.defineProperty(Coe,"__esModule",{value:!0});Coe.extendSubschemaMode=Coe.extendSubschemaData=Coe.getSubschema=void 0;var fK=wC(),kNi=Qh();function P5a(e,{keyword:t,schemaProp:r,schema:s,schemaPath:a,errSchemaPath:o,topSchemaRef:g}){if(t!==void 0&&s!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let p=e.schema[t];return r===void 0?{schema:p,schemaPath:(0,fK._)`${e.schemaPath}${(0,fK.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:p[r],schemaPath:(0,fK._)`${e.schemaPath}${(0,fK.getProperty)(t)}${(0,fK.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,kNi.escapeFragment)(r)}`}}if(s!==void 0){if(a===void 0||o===void 0||g===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:s,schemaPath:a,topSchemaRef:g,errSchemaPath:o}}throw new Error('either "keyword" or "schema" must be passed')}Coe.getSubschema=P5a;function O5a(e,t,{dataProp:r,dataPropType:s,data:a,dataTypes:o,propertyName:g}){if(a!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:p}=t;if(r!==void 0){let{errorPath:m,dataPathArr:y,opts:B}=t,v=p.let("data",(0,fK._)`${t.data}${(0,fK.getProperty)(r)}`,!0);f(v),e.errorPath=(0,fK.str)`${m}${(0,kNi.getErrorPath)(r,s,B.jsPropertySyntax)}`,e.parentDataProperty=(0,fK._)`${r}`,e.dataPathArr=[...y,e.parentDataProperty]}if(a!==void 0){let m=a instanceof fK.Name?a:p.let("data",a,!0);f(m),g!==void 0&&(e.propertyName=g)}o&&(e.dataTypes=o);function f(m){e.data=m,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,m]}}Coe.extendSubschemaData=O5a;function M5a(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:s,createErrors:a,allErrors:o}){s!==void 0&&(e.compositeRule=s),a!==void 0&&(e.createErrors=a),o!==void 0&&(e.allErrors=o),e.jtdDiscriminator=t,e.jtdMetadata=r}Coe.extendSubschemaMode=M5a});var R0r=z((BZl,FNi)=>{"use strict";FNi.exports=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var s,a,o;if(Array.isArray(t)){if(s=t.length,s!=r.length)return!1;for(a=s;a--!==0;)if(!e(t[a],r[a]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(o=Object.keys(t),s=o.length,s!==Object.keys(r).length)return!1;for(a=s;a--!==0;)if(!Object.prototype.hasOwnProperty.call(r,o[a]))return!1;for(a=s;a--!==0;){var g=o[a];if(!e(t[g],r[g]))return!1}return!0}return t!==t&&r!==r}});var LNi=z((vZl,ZNi)=>{"use strict";var moe=ZNi.exports=function(e,t,r){typeof t=="function"&&(r=t,t={}),r=t.cb||r;var s=typeof r=="function"?r:r.pre||function(){},a=r.post||function(){};Hyt(t,s,a,e,"",e)};moe.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};moe.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};moe.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};moe.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function Hyt(e,t,r,s,a,o,g,p,f,m){if(s&&typeof s=="object"&&!Array.isArray(s)){t(s,a,o,g,p,f,m);for(var y in s){var B=s[y];if(Array.isArray(B)){if(y in moe.arrayKeywords)for(var v=0;v{"use strict";Object.defineProperty(b9,"__esModule",{value:!0});b9.getSchemaRefs=b9.resolveUrl=b9.normalizeId=b9._getFullPath=b9.getFullPath=b9.inlineRef=void 0;var Y5a=Qh(),H5a=R0r(),X5a=LNi(),J5a=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function U5a(e,t=!0){return typeof e=="boolean"?!0:t===!0?!D0r(e):t?VNi(e)<=t:!1}b9.inlineRef=U5a;var K5a=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function D0r(e){for(let t in e){if(K5a.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(D0r)||typeof r=="object"&&D0r(r))return!0}return!1}function VNi(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!J5a.has(r)&&(typeof e[r]=="object"&&(0,Y5a.eachItem)(e[r],s=>t+=VNi(s)),t===1/0))return 1/0}return t}function WNi(e,t="",r){r!==!1&&(t=Pwe(t));let s=e.parse(t);return PNi(e,s)}b9.getFullPath=WNi;function PNi(e,t){return e.serialize(t).split("#")[0]+"#"}b9._getFullPath=PNi;var j5a=/#\/?$/;function Pwe(e){return e?e.replace(j5a,""):""}b9.normalizeId=Pwe;function z5a(e,t,r){return r=Pwe(r),e.resolve(t,r)}b9.resolveUrl=z5a;var q5a=/^[a-z_][-a-z0-9._]*$/i;function $5a(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:s}=this.opts,a=Pwe(e[r]||t),o={"":a},g=WNi(s,a,!1),p={},f=new Set;return X5a(e,{allKeys:!0},(B,v,G,T)=>{if(T===void 0)return;let O=g+v,X=o[T];typeof B[r]=="string"&&(X=U.call(this,B[r])),le.call(this,B.$anchor),le.call(this,B.$dynamicAnchor),o[v]=X;function U(ae){let ge=this.opts.uriResolver.resolve;if(ae=Pwe(X?ge(X,ae):ae),f.has(ae))throw y(ae);f.add(ae);let fe=this.refs[ae];return typeof fe=="string"&&(fe=this.refs[fe]),typeof fe=="object"?m(B,fe.schema,ae):ae!==Pwe(O)&&(ae[0]==="#"?(m(B,p[ae],ae),p[ae]=B):this.refs[ae]=O),ae}function le(ae){if(typeof ae=="string"){if(!q5a.test(ae))throw new Error(`invalid anchor "${ae}"`);U.call(this,`#${ae}`)}}}),p;function m(B,v,G){if(v!==void 0&&!H5a(B,v))throw y(G)}function y(B){return new Error(`reference "${B}" resolves to more than one schema`)}}b9.getSchemaRefs=$5a});var L5e=z(hoe=>{"use strict";Object.defineProperty(hoe,"__esModule",{value:!0});hoe.getData=hoe.KeywordCxt=hoe.validateFunctionCode=void 0;var HNi=_Ni(),ONi=k5e(),k0r=E0r(),Xyt=k5e(),eXa=wNi(),Z5e=xNi(),x0r=GNi(),wd=wC(),$f=fq(),tXa=G5e(),Iq=Qh(),F5e=x5e();function rXa(e){if(UNi(e)&&(KNi(e),JNi(e))){sXa(e);return}XNi(e,()=>(0,HNi.topBoolOrEmptySchema)(e))}hoe.validateFunctionCode=rXa;function XNi({gen:e,validateName:t,schema:r,schemaEnv:s,opts:a},o){a.code.es5?e.func(t,(0,wd._)`${$f.default.data}, ${$f.default.valCxt}`,s.$async,()=>{e.code((0,wd._)`"use strict"; ${MNi(r,a)}`),iXa(e,a),e.code(o)}):e.func(t,(0,wd._)`${$f.default.data}, ${nXa(a)}`,s.$async,()=>e.code(MNi(r,a)).code(o))}function nXa(e){return(0,wd._)`{${$f.default.instancePath}="", ${$f.default.parentData}, ${$f.default.parentDataProperty}, ${$f.default.rootData}=${$f.default.data}${e.dynamicRef?(0,wd._)`, ${$f.default.dynamicAnchors}={}`:wd.nil}}={}`}function iXa(e,t){e.if($f.default.valCxt,()=>{e.var($f.default.instancePath,(0,wd._)`${$f.default.valCxt}.${$f.default.instancePath}`),e.var($f.default.parentData,(0,wd._)`${$f.default.valCxt}.${$f.default.parentData}`),e.var($f.default.parentDataProperty,(0,wd._)`${$f.default.valCxt}.${$f.default.parentDataProperty}`),e.var($f.default.rootData,(0,wd._)`${$f.default.valCxt}.${$f.default.rootData}`),t.dynamicRef&&e.var($f.default.dynamicAnchors,(0,wd._)`${$f.default.valCxt}.${$f.default.dynamicAnchors}`)},()=>{e.var($f.default.instancePath,(0,wd._)`""`),e.var($f.default.parentData,(0,wd._)`undefined`),e.var($f.default.parentDataProperty,(0,wd._)`undefined`),e.var($f.default.rootData,$f.default.data),t.dynamicRef&&e.var($f.default.dynamicAnchors,(0,wd._)`{}`)})}function sXa(e){let{schema:t,opts:r,gen:s}=e;XNi(e,()=>{r.$comment&&t.$comment&&zNi(e),uXa(e),s.let($f.default.vErrors,null),s.let($f.default.errors,0),r.unevaluated&&oXa(e),jNi(e),dXa(e)})}function oXa(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0,wd._)`${r}.evaluated`),t.if((0,wd._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,wd._)`${e.evaluated}.props`,(0,wd._)`undefined`)),t.if((0,wd._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,wd._)`${e.evaluated}.items`,(0,wd._)`undefined`))}function MNi(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0,wd._)`/*# sourceURL=${r} */`:wd.nil}function aXa(e,t){if(UNi(e)&&(KNi(e),JNi(e))){cXa(e,t);return}(0,HNi.boolOrEmptySchema)(e,t)}function JNi({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function UNi(e){return typeof e.schema!="boolean"}function cXa(e,t){let{schema:r,gen:s,opts:a}=e;a.$comment&&r.$comment&&zNi(e),gXa(e),AXa(e);let o=s.const("_errs",$f.default.errors);jNi(e,o),s.var(t,(0,wd._)`${o} === ${$f.default.errors}`)}function KNi(e){(0,Iq.checkUnknownRules)(e),lXa(e)}function jNi(e,t){if(e.opts.jtd)return QNi(e,[],!1,t);let r=(0,ONi.getSchemaTypes)(e.schema),s=(0,ONi.coerceAndCheckDataType)(e,r);QNi(e,r,!s,t)}function lXa(e){let{schema:t,errSchemaPath:r,opts:s,self:a}=e;t.$ref&&s.ignoreKeywordsWithRef&&(0,Iq.schemaHasRulesButRef)(t,a.RULES)&&a.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function uXa(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Iq.checkStrictMode)(e,"default is ignored in the schema root")}function gXa(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,tXa.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function AXa(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function zNi({gen:e,schemaEnv:t,schema:r,errSchemaPath:s,opts:a}){let o=r.$comment;if(a.$comment===!0)e.code((0,wd._)`${$f.default.self}.logger.log(${o})`);else if(typeof a.$comment=="function"){let g=(0,wd.str)`${s}/$comment`,p=e.scopeValue("root",{ref:t.root});e.code((0,wd._)`${$f.default.self}.opts.$comment(${o}, ${g}, ${p}.schema)`)}}function dXa(e){let{gen:t,schemaEnv:r,validateName:s,ValidationError:a,opts:o}=e;r.$async?t.if((0,wd._)`${$f.default.errors} === 0`,()=>t.return($f.default.data),()=>t.throw((0,wd._)`new ${a}(${$f.default.vErrors})`)):(t.assign((0,wd._)`${s}.errors`,$f.default.vErrors),o.unevaluated&&pXa(e),t.return((0,wd._)`${$f.default.errors} === 0`))}function pXa({gen:e,evaluated:t,props:r,items:s}){r instanceof wd.Name&&e.assign((0,wd._)`${t}.props`,r),s instanceof wd.Name&&e.assign((0,wd._)`${t}.items`,s)}function QNi(e,t,r,s){let{gen:a,schema:o,data:g,allErrors:p,opts:f,self:m}=e,{RULES:y}=m;if(o.$ref&&(f.ignoreKeywordsWithRef||!(0,Iq.schemaHasRulesButRef)(o,y))){a.block(()=>$Ni(e,"$ref",y.all.$ref.definition));return}f.jtd||fXa(e,t),a.block(()=>{for(let v of y.rules)B(v);B(y.post)});function B(v){(0,k0r.shouldUseGroup)(o,v)&&(v.type?(a.if((0,Xyt.checkDataType)(v.type,g,f.strictNumbers)),YNi(e,v),t.length===1&&t[0]===v.type&&r&&(a.else(),(0,Xyt.reportTypeError)(e)),a.endIf()):YNi(e,v),p||a.if((0,wd._)`${$f.default.errors} === ${s||0}`))}}function YNi(e,t){let{gen:r,schema:s,opts:{useDefaults:a}}=e;a&&(0,eXa.assignDefaults)(e,t.type),r.block(()=>{for(let o of t.rules)(0,k0r.shouldUseRule)(s,o)&&$Ni(e,o.keyword,o.definition,t.type)})}function fXa(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(IXa(e,t),e.opts.allowUnionTypes||CXa(e,t),mXa(e,e.dataTypes))}function IXa(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{qNi(e.dataTypes,r)||G0r(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),_Xa(e,t)}}function CXa(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&G0r(e,"use allowUnionTypes to allow union type keyword")}function mXa(e,t){let r=e.self.RULES.all;for(let s in r){let a=r[s];if(typeof a=="object"&&(0,k0r.shouldUseRule)(e.schema,a)){let{type:o}=a.definition;o.length&&!o.some(g=>hXa(t,g))&&G0r(e,`missing type "${o.join(",")}" for keyword "${s}"`)}}}function hXa(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function qNi(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function _Xa(e,t){let r=[];for(let s of e.dataTypes)qNi(t,s)?r.push(s):t.includes("integer")&&s==="number"&&r.push("integer");e.dataTypes=r}function G0r(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,Iq.checkStrictMode)(e,t,e.opts.strictTypes)}var Jyt=class{constructor(t,r,s){if((0,Z5e.validateKeywordUsage)(t,r,s),this.gen=t.gen,this.allErrors=t.allErrors,this.keyword=s,this.data=t.data,this.schema=t.schema[s],this.$data=r.$data&&t.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Iq.schemaRefOrVal)(t,this.schema,s,this.$data),this.schemaType=r.schemaType,this.parentSchema=t.schema,this.params={},this.it=t,this.def=r,this.$data)this.schemaCode=t.gen.const("vSchema",eRi(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,Z5e.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${s} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=t.gen.const("_errs",$f.default.errors))}result(t,r,s){this.failResult((0,wd.not)(t),r,s)}failResult(t,r,s){this.gen.if(t),s?s():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(t,r){this.failResult((0,wd.not)(t),void 0,r)}fail(t){if(t===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(t),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(t){if(!this.$data)return this.fail(t);let{schemaCode:r}=this;this.fail((0,wd._)`${r} !== undefined && (${(0,wd.or)(this.invalid$data(),t)})`)}error(t,r,s){if(r){this.setParams(r),this._error(t,s),this.setParams({});return}this._error(t,s)}_error(t,r){(t?F5e.reportExtraError:F5e.reportError)(this,this.def.error,r)}$dataError(){(0,F5e.reportError)(this,this.def.$dataError||F5e.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,F5e.resetErrorsCount)(this.gen,this.errsCount)}ok(t){this.allErrors||this.gen.if(t)}setParams(t,r){r?Object.assign(this.params,t):this.params=t}block$data(t,r,s=wd.nil){this.gen.block(()=>{this.check$data(t,s),r()})}check$data(t=wd.nil,r=wd.nil){if(!this.$data)return;let{gen:s,schemaCode:a,schemaType:o,def:g}=this;s.if((0,wd.or)((0,wd._)`${a} === undefined`,r)),t!==wd.nil&&s.assign(t,!0),(o.length||g.validateSchema)&&(s.elseIf(this.invalid$data()),this.$dataError(),t!==wd.nil&&s.assign(t,!1)),s.else()}invalid$data(){let{gen:t,schemaCode:r,schemaType:s,def:a,it:o}=this;return(0,wd.or)(g(),p());function g(){if(s.length){if(!(r instanceof wd.Name))throw new Error("ajv implementation error");let f=Array.isArray(s)?s:[s];return(0,wd._)`${(0,Xyt.checkDataTypes)(f,r,o.opts.strictNumbers,Xyt.DataType.Wrong)}`}return wd.nil}function p(){if(a.validateSchema){let f=t.scopeValue("validate$data",{ref:a.validateSchema});return(0,wd._)`!${f}(${r})`}return wd.nil}}subschema(t,r){let s=(0,x0r.getSubschema)(this.it,t);(0,x0r.extendSubschemaData)(s,this.it,t),(0,x0r.extendSubschemaMode)(s,t);let a={...this.it,...s,items:void 0,props:void 0};return aXa(a,r),a}mergeEvaluated(t,r){let{it:s,gen:a}=this;s.opts.unevaluated&&(s.props!==!0&&t.props!==void 0&&(s.props=Iq.mergeEvaluated.props(a,t.props,s.props,r)),s.items!==!0&&t.items!==void 0&&(s.items=Iq.mergeEvaluated.items(a,t.items,s.items,r)))}mergeValidEvaluated(t,r){let{it:s,gen:a}=this;if(s.opts.unevaluated&&(s.props!==!0||s.items!==!0))return a.if(r,()=>this.mergeEvaluated(t,wd.Name)),!0}};hoe.KeywordCxt=Jyt;function $Ni(e,t,r,s){let a=new Jyt(e,r,t);"code"in r?r.code(a,s):a.$data&&r.validate?(0,Z5e.funcKeywordCode)(a,r):"macro"in r?(0,Z5e.macroKeywordCode)(a,r):(r.compile||r.validate)&&(0,Z5e.funcKeywordCode)(a,r)}var yXa=/^\/(?:[^~]|~0|~1)*$/,bXa=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function eRi(e,{dataLevel:t,dataNames:r,dataPathArr:s}){let a,o;if(e==="")return $f.default.rootData;if(e[0]==="/"){if(!yXa.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);a=e,o=$f.default.rootData}else{let m=bXa.exec(e);if(!m)throw new Error(`Invalid JSON-pointer: ${e}`);let y=+m[1];if(a=m[2],a==="#"){if(y>=t)throw new Error(f("property/index",y));return s[t-y]}if(y>t)throw new Error(f("data",y));if(o=r[t-y],!a)return o}let g=o,p=a.split("/");for(let m of p)m&&(o=(0,wd._)`${o}${(0,wd.getProperty)((0,Iq.unescapeJsonPointer)(m))}`,g=(0,wd._)`${g} && ${o}`);return g;function f(m,y){return`Cannot access ${m} ${y} levels up, current level is ${t}`}}hoe.getData=eRi});var Uyt=z(Z0r=>{"use strict";Object.defineProperty(Z0r,"__esModule",{value:!0});var F0r=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}};Z0r.default=F0r});var V5e=z(W0r=>{"use strict";Object.defineProperty(W0r,"__esModule",{value:!0});var L0r=G5e(),V0r=class extends Error{constructor(t,r,s,a){super(a||`can't resolve reference ${s} from id ${r}`),this.missingRef=(0,L0r.resolveUrl)(t,r,s),this.missingSchema=(0,L0r.normalizeId)((0,L0r.getFullPath)(t,this.missingRef))}};W0r.default=V0r});var jyt=z(WM=>{"use strict";Object.defineProperty(WM,"__esModule",{value:!0});WM.resolveSchema=WM.getCompilingSchema=WM.resolveRef=WM.compileSchema=WM.SchemaEnv=void 0;var R5=wC(),EXa=Uyt(),kIe=fq(),D5=G5e(),tRi=Qh(),BXa=L5e(),Owe=class{constructor(t){var r;this.refs={},this.dynamicAnchors={};let s;typeof t.schema=="object"&&(s=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0,D5.normalizeId)(s?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=s?.$async,this.refs={}}};WM.SchemaEnv=Owe;function O0r(e){let t=rRi.call(this,e);if(t)return t;let r=(0,D5.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:s,lines:a}=this.opts.code,{ownProperties:o}=this.opts,g=new R5.CodeGen(this.scope,{es5:s,lines:a,ownProperties:o}),p;e.$async&&(p=g.scopeValue("Error",{ref:EXa.default,code:(0,R5._)`require("ajv/dist/runtime/validation_error").default`}));let f=g.scopeName("validate");e.validateName=f;let m={gen:g,allErrors:this.opts.allErrors,data:kIe.default.data,parentData:kIe.default.parentData,parentDataProperty:kIe.default.parentDataProperty,dataNames:[kIe.default.data],dataPathArr:[R5.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:g.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:(0,R5.stringify)(e.schema)}:{ref:e.schema}),validateName:f,ValidationError:p,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:R5.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,R5._)`""`,opts:this.opts,self:this},y;try{this._compilations.add(e),(0,BXa.validateFunctionCode)(m),g.optimize(this.opts.code.optimize);let B=g.toString();y=`${g.scopeRefs(kIe.default.scope)}return ${B}`,this.opts.code.process&&(y=this.opts.code.process(y,e));let G=new Function(`${kIe.default.self}`,`${kIe.default.scope}`,y)(this,this.scope.get());if(this.scope.value(f,{ref:G}),G.errors=null,G.schema=e.schema,G.schemaEnv=e,e.$async&&(G.$async=!0),this.opts.code.source===!0&&(G.source={validateName:f,validateCode:B,scopeValues:g._values}),this.opts.unevaluated){let{props:T,items:O}=m;G.evaluated={props:T instanceof R5.Name?void 0:T,items:O instanceof R5.Name?void 0:O,dynamicProps:T instanceof R5.Name,dynamicItems:O instanceof R5.Name},G.source&&(G.source.evaluated=(0,R5.stringify)(G.evaluated))}return e.validate=G,e}catch(B){throw delete e.validate,delete e.validateName,y&&this.logger.error("Error compiling schema, function code:",y),B}finally{this._compilations.delete(e)}}WM.compileSchema=O0r;function vXa(e,t,r){var s;r=(0,D5.resolveUrl)(this.opts.uriResolver,t,r);let a=e.refs[r];if(a)return a;let o=TXa.call(this,e,r);if(o===void 0){let g=(s=e.localRefs)===null||s===void 0?void 0:s[r],{schemaId:p}=this.opts;g&&(o=new Owe({schema:g,schemaId:p,root:e,baseId:t}))}if(o!==void 0)return e.refs[r]=SXa.call(this,o)}WM.resolveRef=vXa;function SXa(e){return(0,D5.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:O0r.call(this,e)}function rRi(e){for(let t of this._compilations)if(wXa(t,e))return t}WM.getCompilingSchema=rRi;function wXa(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function TXa(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||Kyt.call(this,e,t)}function Kyt(e,t){let r=this.opts.uriResolver.parse(t),s=(0,D5._getFullPath)(this.opts.uriResolver,r),a=(0,D5.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&s===a)return P0r.call(this,r,e);let o=(0,D5.normalizeId)(s),g=this.refs[o]||this.schemas[o];if(typeof g=="string"){let p=Kyt.call(this,e,g);return typeof p?.schema!="object"?void 0:P0r.call(this,r,p)}if(typeof g?.schema=="object"){if(g.validate||O0r.call(this,g),o===(0,D5.normalizeId)(t)){let{schema:p}=g,{schemaId:f}=this.opts,m=p[f];return m&&(a=(0,D5.resolveUrl)(this.opts.uriResolver,a,m)),new Owe({schema:p,schemaId:f,root:e,baseId:a})}return P0r.call(this,r,g)}}WM.resolveSchema=Kyt;var NXa=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function P0r(e,{baseId:t,schema:r,root:s}){var a;if(((a=e.fragment)===null||a===void 0?void 0:a[0])!=="/")return;for(let p of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let f=r[(0,tRi.unescapeFragment)(p)];if(f===void 0)return;r=f;let m=typeof r=="object"&&r[this.opts.schemaId];!NXa.has(p)&&m&&(t=(0,D5.resolveUrl)(this.opts.uriResolver,t,m))}let o;if(typeof r!="boolean"&&r.$ref&&!(0,tRi.schemaHasRulesButRef)(r,this.RULES)){let p=(0,D5.resolveUrl)(this.opts.uriResolver,t,r.$ref);o=Kyt.call(this,s,p)}let{schemaId:g}=this.opts;if(o=o||new Owe({schema:r,schemaId:g,root:s,baseId:t}),o.schema!==o.root.schema)return o}});var nRi=z((DZl,RXa)=>{RXa.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var sRi=z((xZl,iRi)=>{"use strict";var DXa={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};iRi.exports={HEX:DXa}});var dRi=z((kZl,ARi)=>{"use strict";var{HEX:xXa}=sRi();function lRi(e){if(gRi(e,".")<3)return{host:e,isIPV4:!1};let t=e.match(/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/u)||[],[r]=t;return r?{host:GXa(r,"."),isIPV4:!0}:{host:e,isIPV4:!1}}function M0r(e,t=!1){let r="",s=!0;for(let a of e){if(xXa[a]===void 0)return;a!=="0"&&s===!0&&(s=!1),s||(r+=a)}return t&&r.length===0&&(r="0"),r}function kXa(e){let t=0,r={error:!1,address:"",zone:""},s=[],a=[],o=!1,g=!1,p=!1;function f(){if(a.length){if(o===!1){let m=M0r(a);if(m!==void 0)s.push(m);else return r.error=!0,!1}a.length=0}return!0}for(let m=0;m7){r.error=!0;break}m-1>=0&&e[m-1]===":"&&(g=!0);continue}else if(y==="%"){if(!f())break;o=!0}else{a.push(y);continue}}return a.length&&(o?r.zone=a.join(""):p?s.push(a.join("")):s.push(M0r(a))),r.address=s.join(""),r}function uRi(e,t={}){if(gRi(e,":")<2)return{host:e,isIPV6:!1};let r=kXa(e);if(r.error)return{host:e,isIPV6:!1};{let s=r.address,a=r.address;return r.zone&&(s+="%"+r.zone,a+="%25"+r.zone),{host:s,escapedHost:a,isIPV6:!0}}}function GXa(e,t){let r="",s=!0,a=e.length;for(let o=0;o{"use strict";var WXa=/^[\da-f]{8}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{12}$/iu,PXa=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function pRi(e){return typeof e.secure=="boolean"?e.secure:String(e.scheme).toLowerCase()==="wss"}function fRi(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function IRi(e){let t=String(e.scheme).toLowerCase()==="https";return(e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function OXa(e){return e.secure=pRi(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function MXa(e){if((e.port===(pRi(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function QXa(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(PXa);if(r){let s=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let a=`${s}:${t.nid||e.nid}`,o=Q0r[a];e.path=void 0,o&&(e=o.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function YXa(e,t){let r=t.scheme||e.scheme||"urn",s=e.nid.toLowerCase(),a=`${r}:${t.nid||s}`,o=Q0r[a];o&&(e=o.serialize(e,t));let g=e,p=e.nss;return g.path=`${s||t.nid}:${p}`,t.skipEscape=!0,g}function HXa(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!WXa.test(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function XXa(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var CRi={scheme:"http",domainHost:!0,parse:fRi,serialize:IRi},JXa={scheme:"https",domainHost:CRi.domainHost,parse:fRi,serialize:IRi},zyt={scheme:"ws",domainHost:!0,parse:OXa,serialize:MXa},UXa={scheme:"wss",domainHost:zyt.domainHost,parse:zyt.parse,serialize:zyt.serialize},KXa={scheme:"urn",parse:QXa,serialize:YXa,skipNormalize:!0},jXa={scheme:"urn:uuid",parse:HXa,serialize:XXa,skipNormalize:!0},Q0r={http:CRi,https:JXa,ws:zyt,wss:UXa,urn:KXa,"urn:uuid":jXa};mRi.exports=Q0r});var yRi=z((FZl,$yt)=>{"use strict";var{normalizeIPv6:zXa,normalizeIPv4:qXa,removeDotSegments:W5e,recomposeAuthority:$Xa,normalizeComponentEncoding:qyt}=dRi(),Y0r=hRi();function e4a(e,t){return typeof e=="string"?e=IK(Cq(e,t),t):typeof e=="object"&&(e=Cq(IK(e,t),t)),e}function t4a(e,t,r){let s=Object.assign({scheme:"null"},r),a=_Ri(Cq(e,s),Cq(t,s),s,!0);return IK(a,{...s,skipEscape:!0})}function _Ri(e,t,r,s){let a={};return s||(e=Cq(IK(e,r),r),t=Cq(IK(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(a.scheme=t.scheme,a.userinfo=t.userinfo,a.host=t.host,a.port=t.port,a.path=W5e(t.path||""),a.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(a.userinfo=t.userinfo,a.host=t.host,a.port=t.port,a.path=W5e(t.path||""),a.query=t.query):(t.path?(t.path.charAt(0)==="/"?a.path=W5e(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?a.path="/"+t.path:e.path?a.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:a.path=t.path,a.path=W5e(a.path)),a.query=t.query):(a.path=e.path,t.query!==void 0?a.query=t.query:a.query=e.query),a.userinfo=e.userinfo,a.host=e.host,a.port=e.port),a.scheme=e.scheme),a.fragment=t.fragment,a}function r4a(e,t,r){return typeof e=="string"?(e=unescape(e),e=IK(qyt(Cq(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=IK(qyt(e,!0),{...r,skipEscape:!0})),typeof t=="string"?(t=unescape(t),t=IK(qyt(Cq(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=IK(qyt(t,!0),{...r,skipEscape:!0})),e.toLowerCase()===t.toLowerCase()}function IK(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},s=Object.assign({},t),a=[],o=Y0r[(s.scheme||r.scheme||"").toLowerCase()];o&&o.serialize&&o.serialize(r,s),r.path!==void 0&&(s.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),s.reference!=="suffix"&&r.scheme&&a.push(r.scheme,":");let g=$Xa(r,s);if(g!==void 0&&(s.reference!=="suffix"&&a.push("//"),a.push(g),r.path&&r.path.charAt(0)!=="/"&&a.push("/")),r.path!==void 0){let p=r.path;!s.absolutePath&&(!o||!o.absolutePath)&&(p=W5e(p)),g===void 0&&(p=p.replace(/^\/\//u,"/%2F")),a.push(p)}return r.query!==void 0&&a.push("?",r.query),r.fragment!==void 0&&a.push("#",r.fragment),a.join("")}var n4a=Array.from({length:127},(e,t)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(t)));function i4a(e){let t=0;for(let r=0,s=e.length;r126||n4a[t])return!0;return!1}var s4a=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Cq(e,t){let r=Object.assign({},t),s={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},a=e.indexOf("%")!==-1,o=!1;r.reference==="suffix"&&(e=(r.scheme?r.scheme+":":"")+"//"+e);let g=e.match(s4a);if(g){if(s.scheme=g[1],s.userinfo=g[3],s.host=g[4],s.port=parseInt(g[5],10),s.path=g[6]||"",s.query=g[7],s.fragment=g[8],isNaN(s.port)&&(s.port=g[5]),s.host){let f=qXa(s.host);if(f.isIPV4===!1){let m=zXa(f.host,{isIPV4:!1});s.host=m.host.toLowerCase(),o=m.isIPV6}else s.host=f.host,o=!0}s.scheme===void 0&&s.userinfo===void 0&&s.host===void 0&&s.port===void 0&&!s.path&&s.query===void 0?s.reference="same-document":s.scheme===void 0?s.reference="relative":s.fragment===void 0?s.reference="absolute":s.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==s.reference&&(s.error=s.error||"URI is not a "+r.reference+" reference.");let p=Y0r[(r.scheme||s.scheme||"").toLowerCase()];if(!r.unicodeSupport&&(!p||!p.unicodeSupport)&&s.host&&(r.domainHost||p&&p.domainHost)&&o===!1&&i4a(s.host))try{s.host=URL.domainToASCII(s.host.toLowerCase())}catch(f){s.error=s.error||"Host's domain name can not be converted to ASCII: "+f}(!p||p&&!p.skipNormalize)&&(a&&s.scheme!==void 0&&(s.scheme=unescape(s.scheme)),a&&s.host!==void 0&&(s.host=unescape(s.host)),s.path!==void 0&&s.path.length&&(s.path=escape(unescape(s.path))),s.fragment!==void 0&&s.fragment.length&&(s.fragment=encodeURI(decodeURIComponent(s.fragment)))),p&&p.parse&&p.parse(s,r)}else s.error=s.error||"URI can not be parsed.";return s}var H0r={SCHEMES:Y0r,normalize:e4a,resolve:t4a,resolveComponents:_Ri,equal:r4a,serialize:IK,parse:Cq};$yt.exports=H0r;$yt.exports.default=H0r;$yt.exports.fastUri=H0r});var ERi=z(X0r=>{"use strict";Object.defineProperty(X0r,"__esModule",{value:!0});var bRi=yRi();bRi.code='require("ajv/dist/runtime/uri").default';X0r.default=bRi});var DRi=z(ex=>{"use strict";Object.defineProperty(ex,"__esModule",{value:!0});ex.CodeGen=ex.Name=ex.nil=ex.stringify=ex.str=ex._=ex.KeywordCxt=void 0;var o4a=L5e();Object.defineProperty(ex,"KeywordCxt",{enumerable:!0,get:function(){return o4a.KeywordCxt}});var Mwe=wC();Object.defineProperty(ex,"_",{enumerable:!0,get:function(){return Mwe._}});Object.defineProperty(ex,"str",{enumerable:!0,get:function(){return Mwe.str}});Object.defineProperty(ex,"stringify",{enumerable:!0,get:function(){return Mwe.stringify}});Object.defineProperty(ex,"nil",{enumerable:!0,get:function(){return Mwe.nil}});Object.defineProperty(ex,"Name",{enumerable:!0,get:function(){return Mwe.Name}});Object.defineProperty(ex,"CodeGen",{enumerable:!0,get:function(){return Mwe.CodeGen}});var a4a=Uyt(),TRi=V5e(),c4a=b0r(),P5e=jyt(),l4a=wC(),O5e=G5e(),ebt=k5e(),U0r=Qh(),BRi=nRi(),u4a=ERi(),NRi=(e,t)=>new RegExp(e,t);NRi.code="new RegExp";var g4a=["removeAdditional","useDefaults","coerceTypes"],A4a=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),d4a={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},p4a={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},vRi=200;function f4a(e){var t,r,s,a,o,g,p,f,m,y,B,v,G,T,O,X,U,le,ae,ge,fe,pe,he,be,Te;let ke=e.strict,x=(t=e.code)===null||t===void 0?void 0:t.optimize,et=x===!0||x===void 0?1:x||0,Ue=(s=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&s!==void 0?s:NRi,Je=(a=e.uriResolver)!==null&&a!==void 0?a:u4a.default;return{strictSchema:(g=(o=e.strictSchema)!==null&&o!==void 0?o:ke)!==null&&g!==void 0?g:!0,strictNumbers:(f=(p=e.strictNumbers)!==null&&p!==void 0?p:ke)!==null&&f!==void 0?f:!0,strictTypes:(y=(m=e.strictTypes)!==null&&m!==void 0?m:ke)!==null&&y!==void 0?y:"log",strictTuples:(v=(B=e.strictTuples)!==null&&B!==void 0?B:ke)!==null&&v!==void 0?v:"log",strictRequired:(T=(G=e.strictRequired)!==null&&G!==void 0?G:ke)!==null&&T!==void 0?T:!1,code:e.code?{...e.code,optimize:et,regExp:Ue}:{optimize:et,regExp:Ue},loopRequired:(O=e.loopRequired)!==null&&O!==void 0?O:vRi,loopEnum:(X=e.loopEnum)!==null&&X!==void 0?X:vRi,meta:(U=e.meta)!==null&&U!==void 0?U:!0,messages:(le=e.messages)!==null&&le!==void 0?le:!0,inlineRefs:(ae=e.inlineRefs)!==null&&ae!==void 0?ae:!0,schemaId:(ge=e.schemaId)!==null&&ge!==void 0?ge:"$id",addUsedSchema:(fe=e.addUsedSchema)!==null&&fe!==void 0?fe:!0,validateSchema:(pe=e.validateSchema)!==null&&pe!==void 0?pe:!0,validateFormats:(he=e.validateFormats)!==null&&he!==void 0?he:!0,unicodeRegExp:(be=e.unicodeRegExp)!==null&&be!==void 0?be:!0,int32range:(Te=e.int32range)!==null&&Te!==void 0?Te:!0,uriResolver:Je}}var M5e=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...f4a(t)};let{es5:r,lines:s}=this.opts.code;this.scope=new l4a.ValueScope({scope:{},prefixes:A4a,es5:r,lines:s}),this.logger=y4a(t.logger);let a=t.validateFormats;t.validateFormats=!1,this.RULES=(0,c4a.getRules)(),SRi.call(this,d4a,t,"NOT SUPPORTED"),SRi.call(this,p4a,t,"DEPRECATED","warn"),this._metaOpts=h4a.call(this),t.formats&&C4a.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&m4a.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),I4a.call(this),t.validateFormats=a}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:s}=this.opts,a=BRi;s==="id"&&(a={...BRi},a.id=a.$id,delete a.$id),r&&t&&this.addMetaSchema(a,a[s],!1)}defaultMeta(){let{meta:t,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof t=="object"?t[r]||t:void 0}validate(t,r){let s;if(typeof t=="string"){if(s=this.getSchema(t),!s)throw new Error(`no schema with key or ref "${t}"`)}else s=this.compile(t);let a=s(r);return"$async"in s||(this.errors=s.errors),a}compile(t,r){let s=this._addSchema(t,r);return s.validate||this._compileSchemaEnv(s)}compileAsync(t,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:s}=this.opts;return a.call(this,t,r);async function a(y,B){await o.call(this,y.$schema);let v=this._addSchema(y,B);return v.validate||g.call(this,v)}async function o(y){y&&!this.getSchema(y)&&await a.call(this,{$ref:y},!0)}async function g(y){try{return this._compileSchemaEnv(y)}catch(B){if(!(B instanceof TRi.default))throw B;return p.call(this,B),await f.call(this,B.missingSchema),g.call(this,y)}}function p({missingSchema:y,missingRef:B}){if(this.refs[y])throw new Error(`AnySchema ${y} is loaded but ${B} cannot be resolved`)}async function f(y){let B=await m.call(this,y);this.refs[y]||await o.call(this,B.$schema),this.refs[y]||this.addSchema(B,y,r)}async function m(y){let B=this._loading[y];if(B)return B;try{return await(this._loading[y]=s(y))}finally{delete this._loading[y]}}}addSchema(t,r,s,a=this.opts.validateSchema){if(Array.isArray(t)){for(let g of t)this.addSchema(g,void 0,s,a);return this}let o;if(typeof t=="object"){let{schemaId:g}=this.opts;if(o=t[g],o!==void 0&&typeof o!="string")throw new Error(`schema ${g} must be string`)}return r=(0,O5e.normalizeId)(r||o),this._checkUnique(r),this.schemas[r]=this._addSchema(t,s,r,a,!0),this}addMetaSchema(t,r,s=this.opts.validateSchema){return this.addSchema(t,r,!0,s),this}validateSchema(t,r){if(typeof t=="boolean")return!0;let s;if(s=t.$schema,s!==void 0&&typeof s!="string")throw new Error("$schema must be a string");if(s=s||this.opts.defaultMeta||this.defaultMeta(),!s)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let a=this.validate(s,t);if(!a&&r){let o="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(o);else throw new Error(o)}return a}getSchema(t){let r;for(;typeof(r=wRi.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:s}=this.opts,a=new P5e.SchemaEnv({schema:{},schemaId:s});if(r=P5e.resolveSchema.call(this,a,t),!r)return;this.refs[t]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(t){if(t instanceof RegExp)return this._removeAllSchemas(this.schemas,t),this._removeAllSchemas(this.refs,t),this;switch(typeof t){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=wRi.call(this,t);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[t],delete this.refs[t],this}case"object":{let r=t;this._cache.delete(r);let s=t[this.opts.schemaId];return s&&(s=(0,O5e.normalizeId)(s),delete this.schemas[s],delete this.refs[s]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(t){for(let r of t)this.addKeyword(r);return this}addKeyword(t,r){let s;if(typeof t=="string")s=t,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=s);else if(typeof t=="object"&&r===void 0){if(r=t,s=r.keyword,Array.isArray(s)&&!s.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(E4a.call(this,s,r),!r)return(0,U0r.eachItem)(s,o=>J0r.call(this,o)),this;v4a.call(this,r);let a={...r,type:(0,ebt.getJSONTypes)(r.type),schemaType:(0,ebt.getJSONTypes)(r.schemaType)};return(0,U0r.eachItem)(s,a.type.length===0?o=>J0r.call(this,o,a):o=>a.type.forEach(g=>J0r.call(this,o,a,g))),this}getKeyword(t){let r=this.RULES.all[t];return typeof r=="object"?r.definition:!!r}removeKeyword(t){let{RULES:r}=this;delete r.keywords[t],delete r.all[t];for(let s of r.rules){let a=s.rules.findIndex(o=>o.keyword===t);a>=0&&s.rules.splice(a,1)}return this}addFormat(t,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[t]=r,this}errorsText(t=this.errors,{separator:r=", ",dataVar:s="data"}={}){return!t||t.length===0?"No errors":t.map(a=>`${s}${a.instancePath} ${a.message}`).reduce((a,o)=>a+r+o)}$dataMetaSchema(t,r){let s=this.RULES.all;t=JSON.parse(JSON.stringify(t));for(let a of r){let o=a.split("/").slice(1),g=t;for(let p of o)g=g[p];for(let p in s){let f=s[p];if(typeof f!="object")continue;let{$data:m}=f.definition,y=g[p];m&&y&&(g[p]=RRi(y))}}return t}_removeAllSchemas(t,r){for(let s in t){let a=t[s];(!r||r.test(s))&&(typeof a=="string"?delete t[s]:a&&!a.meta&&(this._cache.delete(a.schema),delete t[s]))}}_addSchema(t,r,s,a=this.opts.validateSchema,o=this.opts.addUsedSchema){let g,{schemaId:p}=this.opts;if(typeof t=="object")g=t[p];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof t!="boolean")throw new Error("schema must be object or boolean")}let f=this._cache.get(t);if(f!==void 0)return f;s=(0,O5e.normalizeId)(g||s);let m=O5e.getSchemaRefs.call(this,t,s);return f=new P5e.SchemaEnv({schema:t,schemaId:p,meta:r,baseId:s,localRefs:m}),this._cache.set(f.schema,f),o&&!s.startsWith("#")&&(s&&this._checkUnique(s),this.refs[s]=f),a&&this.validateSchema(t,!0),f}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):P5e.compileSchema.call(this,t),!t.validate)throw new Error("ajv implementation error");return t.validate}_compileMetaSchema(t){let r=this.opts;this.opts=this._metaOpts;try{P5e.compileSchema.call(this,t)}finally{this.opts=r}}};M5e.ValidationError=a4a.default;M5e.MissingRefError=TRi.default;ex.default=M5e;function SRi(e,t,r,s="error"){for(let a in e){let o=a;o in t&&this.logger[s](`${r}: option ${a}. ${e[o]}`)}}function wRi(e){return e=(0,O5e.normalizeId)(e),this.schemas[e]||this.refs[e]}function I4a(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function C4a(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function m4a(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r)}}function h4a(){let e={...this.opts};for(let t of g4a)delete e[t];return e}var _4a={log(){},warn(){},error(){}};function y4a(e){if(e===!1)return _4a;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw new Error("logger must implement log, warn and error methods")}var b4a=/^[a-z_$][a-z0-9_$:-]*$/i;function E4a(e,t){let{RULES:r}=this;if((0,U0r.eachItem)(e,s=>{if(r.keywords[s])throw new Error(`Keyword ${s} is already defined`);if(!b4a.test(s))throw new Error(`Keyword ${s} has invalid name`)}),!!t&&t.$data&&!("code"in t||"validate"in t))throw new Error('$data keyword must have "code" or "validate" function')}function J0r(e,t,r){var s;let a=t?.post;if(r&&a)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:o}=this,g=a?o.post:o.rules.find(({type:f})=>f===r);if(g||(g={type:r,rules:[]},o.rules.push(g)),o.keywords[e]=!0,!t)return;let p={keyword:e,definition:{...t,type:(0,ebt.getJSONTypes)(t.type),schemaType:(0,ebt.getJSONTypes)(t.schemaType)}};t.before?B4a.call(this,g,p,t.before):g.rules.push(p),o.all[e]=p,(s=t.implements)===null||s===void 0||s.forEach(f=>this.addKeyword(f))}function B4a(e,t,r){let s=e.rules.findIndex(a=>a.keyword===r);s>=0?e.rules.splice(s,0,t):(e.rules.push(t),this.logger.warn(`rule ${r} is not defined`))}function v4a(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=RRi(t)),e.validateSchema=this.compile(t,!0))}var S4a={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function RRi(e){return{anyOf:[e,S4a]}}});var xRi=z(K0r=>{"use strict";Object.defineProperty(K0r,"__esModule",{value:!0});var w4a={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};K0r.default=w4a});var ZRi=z(GIe=>{"use strict";Object.defineProperty(GIe,"__esModule",{value:!0});GIe.callRef=GIe.getValidate=void 0;var T4a=V5e(),kRi=VM(),E9=wC(),Qwe=fq(),GRi=jyt(),tbt=Qh(),N4a={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:s}=e,{baseId:a,schemaEnv:o,validateName:g,opts:p,self:f}=s,{root:m}=o;if((r==="#"||r==="#/")&&a===m.baseId)return B();let y=GRi.resolveRef.call(f,m,a,r);if(y===void 0)throw new T4a.default(s.opts.uriResolver,a,r);if(y instanceof GRi.SchemaEnv)return v(y);return G(y);function B(){if(o===m)return rbt(e,g,o,o.$async);let T=t.scopeValue("root",{ref:m});return rbt(e,(0,E9._)`${T}.validate`,m,m.$async)}function v(T){let O=FRi(e,T);rbt(e,O,T,T.$async)}function G(T){let O=t.scopeValue("schema",p.code.source===!0?{ref:T,code:(0,E9.stringify)(T)}:{ref:T}),X=t.name("valid"),U=e.subschema({schema:T,dataTypes:[],schemaPath:E9.nil,topSchemaRef:O,errSchemaPath:r},X);e.mergeEvaluated(U),e.ok(X)}}};function FRi(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,E9._)`${r.scopeValue("wrapper",{ref:t})}.validate`}GIe.getValidate=FRi;function rbt(e,t,r,s){let{gen:a,it:o}=e,{allErrors:g,schemaEnv:p,opts:f}=o,m=f.passContext?Qwe.default.this:E9.nil;s?y():B();function y(){if(!p.$async)throw new Error("async schema referenced by sync schema");let T=a.let("valid");a.try(()=>{a.code((0,E9._)`await ${(0,kRi.callValidateCode)(e,t,m)}`),G(t),g||a.assign(T,!0)},O=>{a.if((0,E9._)`!(${O} instanceof ${o.ValidationError})`,()=>a.throw(O)),v(O),g||a.assign(T,!1)}),e.ok(T)}function B(){e.result((0,kRi.callValidateCode)(e,t,m),()=>G(t),()=>v(t))}function v(T){let O=(0,E9._)`${T}.errors`;a.assign(Qwe.default.vErrors,(0,E9._)`${Qwe.default.vErrors} === null ? ${O} : ${Qwe.default.vErrors}.concat(${O})`),a.assign(Qwe.default.errors,(0,E9._)`${Qwe.default.vErrors}.length`)}function G(T){var O;if(!o.opts.unevaluated)return;let X=(O=r?.validate)===null||O===void 0?void 0:O.evaluated;if(o.props!==!0)if(X&&!X.dynamicProps)X.props!==void 0&&(o.props=tbt.mergeEvaluated.props(a,X.props,o.props));else{let U=a.var("props",(0,E9._)`${T}.evaluated.props`);o.props=tbt.mergeEvaluated.props(a,U,o.props,E9.Name)}if(o.items!==!0)if(X&&!X.dynamicItems)X.items!==void 0&&(o.items=tbt.mergeEvaluated.items(a,X.items,o.items));else{let U=a.var("items",(0,E9._)`${T}.evaluated.items`);o.items=tbt.mergeEvaluated.items(a,U,o.items,E9.Name)}}}GIe.callRef=rbt;GIe.default=N4a});var LRi=z(j0r=>{"use strict";Object.defineProperty(j0r,"__esModule",{value:!0});var R4a=xRi(),D4a=ZRi(),x4a=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",R4a.default,D4a.default];j0r.default=x4a});var VRi=z(z0r=>{"use strict";Object.defineProperty(z0r,"__esModule",{value:!0});var nbt=wC(),_oe=nbt.operators,ibt={maximum:{okStr:"<=",ok:_oe.LTE,fail:_oe.GT},minimum:{okStr:">=",ok:_oe.GTE,fail:_oe.LT},exclusiveMaximum:{okStr:"<",ok:_oe.LT,fail:_oe.GTE},exclusiveMinimum:{okStr:">",ok:_oe.GT,fail:_oe.LTE}},k4a={message:({keyword:e,schemaCode:t})=>(0,nbt.str)`must be ${ibt[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,nbt._)`{comparison: ${ibt[e].okStr}, limit: ${t}}`},G4a={keyword:Object.keys(ibt),type:"number",schemaType:"number",$data:!0,error:k4a,code(e){let{keyword:t,data:r,schemaCode:s}=e;e.fail$data((0,nbt._)`${r} ${ibt[t].fail} ${s} || isNaN(${r})`)}};z0r.default=G4a});var WRi=z(q0r=>{"use strict";Object.defineProperty(q0r,"__esModule",{value:!0});var Q5e=wC(),F4a={message:({schemaCode:e})=>(0,Q5e.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,Q5e._)`{multipleOf: ${e}}`},Z4a={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:F4a,code(e){let{gen:t,data:r,schemaCode:s,it:a}=e,o=a.opts.multipleOfPrecision,g=t.let("res"),p=o?(0,Q5e._)`Math.abs(Math.round(${g}) - ${g}) > 1e-${o}`:(0,Q5e._)`${g} !== parseInt(${g})`;e.fail$data((0,Q5e._)`(${s} === 0 || (${g} = ${r}/${s}, ${p}))`)}};q0r.default=Z4a});var ORi=z($0r=>{"use strict";Object.defineProperty($0r,"__esModule",{value:!0});function PRi(e){let t=e.length,r=0,s=0,a;for(;s=55296&&a<=56319&&s{"use strict";Object.defineProperty(eyr,"__esModule",{value:!0});var FIe=wC(),L4a=Qh(),V4a=ORi(),W4a={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return(0,FIe.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0,FIe._)`{limit: ${e}}`},P4a={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:W4a,code(e){let{keyword:t,data:r,schemaCode:s,it:a}=e,o=t==="maxLength"?FIe.operators.GT:FIe.operators.LT,g=a.opts.unicode===!1?(0,FIe._)`${r}.length`:(0,FIe._)`${(0,L4a.useFunc)(e.gen,V4a.default)}(${r})`;e.fail$data((0,FIe._)`${g} ${o} ${s}`)}};eyr.default=P4a});var QRi=z(tyr=>{"use strict";Object.defineProperty(tyr,"__esModule",{value:!0});var O4a=VM(),sbt=wC(),M4a={message:({schemaCode:e})=>(0,sbt.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,sbt._)`{pattern: ${e}}`},Q4a={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:M4a,code(e){let{data:t,$data:r,schema:s,schemaCode:a,it:o}=e,g=o.opts.unicodeRegExp?"u":"",p=r?(0,sbt._)`(new RegExp(${a}, ${g}))`:(0,O4a.usePattern)(e,s);e.fail$data((0,sbt._)`!${p}.test(${t})`)}};tyr.default=Q4a});var YRi=z(ryr=>{"use strict";Object.defineProperty(ryr,"__esModule",{value:!0});var Y5e=wC(),Y4a={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return(0,Y5e.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,Y5e._)`{limit: ${e}}`},H4a={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:Y4a,code(e){let{keyword:t,data:r,schemaCode:s}=e,a=t==="maxProperties"?Y5e.operators.GT:Y5e.operators.LT;e.fail$data((0,Y5e._)`Object.keys(${r}).length ${a} ${s}`)}};ryr.default=H4a});var HRi=z(nyr=>{"use strict";Object.defineProperty(nyr,"__esModule",{value:!0});var H5e=VM(),X5e=wC(),X4a=Qh(),J4a={message:({params:{missingProperty:e}})=>(0,X5e.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,X5e._)`{missingProperty: ${e}}`},U4a={keyword:"required",type:"object",schemaType:"array",$data:!0,error:J4a,code(e){let{gen:t,schema:r,schemaCode:s,data:a,$data:o,it:g}=e,{opts:p}=g;if(!o&&r.length===0)return;let f=r.length>=p.loopRequired;if(g.allErrors?m():y(),p.strictRequired){let G=e.parentSchema.properties,{definedProperties:T}=e.it;for(let O of r)if(G?.[O]===void 0&&!T.has(O)){let X=g.schemaEnv.baseId+g.errSchemaPath,U=`required property "${O}" is not defined at "${X}" (strictRequired)`;(0,X4a.checkStrictMode)(g,U,g.opts.strictRequired)}}function m(){if(f||o)e.block$data(X5e.nil,B);else for(let G of r)(0,H5e.checkReportMissingProp)(e,G)}function y(){let G=t.let("missing");if(f||o){let T=t.let("valid",!0);e.block$data(T,()=>v(G,T)),e.ok(T)}else t.if((0,H5e.checkMissingProp)(e,r,G)),(0,H5e.reportMissingProp)(e,G),t.else()}function B(){t.forOf("prop",s,G=>{e.setParams({missingProperty:G}),t.if((0,H5e.noPropertyInData)(t,a,G,p.ownProperties),()=>e.error())})}function v(G,T){e.setParams({missingProperty:G}),t.forOf(G,s,()=>{t.assign(T,(0,H5e.propertyInData)(t,a,G,p.ownProperties)),t.if((0,X5e.not)(T),()=>{e.error(),t.break()})},X5e.nil)}}};nyr.default=U4a});var XRi=z(iyr=>{"use strict";Object.defineProperty(iyr,"__esModule",{value:!0});var J5e=wC(),K4a={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return(0,J5e.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,J5e._)`{limit: ${e}}`},j4a={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:K4a,code(e){let{keyword:t,data:r,schemaCode:s}=e,a=t==="maxItems"?J5e.operators.GT:J5e.operators.LT;e.fail$data((0,J5e._)`${r}.length ${a} ${s}`)}};iyr.default=j4a});var obt=z(syr=>{"use strict";Object.defineProperty(syr,"__esModule",{value:!0});var JRi=R0r();JRi.code='require("ajv/dist/runtime/equal").default';syr.default=JRi});var URi=z(ayr=>{"use strict";Object.defineProperty(ayr,"__esModule",{value:!0});var oyr=k5e(),tx=wC(),z4a=Qh(),q4a=obt(),$4a={message:({params:{i:e,j:t}})=>(0,tx.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,tx._)`{i: ${e}, j: ${t}}`},eJa={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:$4a,code(e){let{gen:t,data:r,$data:s,schema:a,parentSchema:o,schemaCode:g,it:p}=e;if(!s&&!a)return;let f=t.let("valid"),m=o.items?(0,oyr.getSchemaTypes)(o.items):[];e.block$data(f,y,(0,tx._)`${g} === false`),e.ok(f);function y(){let T=t.let("i",(0,tx._)`${r}.length`),O=t.let("j");e.setParams({i:T,j:O}),t.assign(f,!0),t.if((0,tx._)`${T} > 1`,()=>(B()?v:G)(T,O))}function B(){return m.length>0&&!m.some(T=>T==="object"||T==="array")}function v(T,O){let X=t.name("item"),U=(0,oyr.checkDataTypes)(m,X,p.opts.strictNumbers,oyr.DataType.Wrong),le=t.const("indices",(0,tx._)`{}`);t.for((0,tx._)`;${T}--;`,()=>{t.let(X,(0,tx._)`${r}[${T}]`),t.if(U,(0,tx._)`continue`),m.length>1&&t.if((0,tx._)`typeof ${X} == "string"`,(0,tx._)`${X} += "_"`),t.if((0,tx._)`typeof ${le}[${X}] == "number"`,()=>{t.assign(O,(0,tx._)`${le}[${X}]`),e.error(),t.assign(f,!1).break()}).code((0,tx._)`${le}[${X}] = ${T}`)})}function G(T,O){let X=(0,z4a.useFunc)(t,q4a.default),U=t.name("outer");t.label(U).for((0,tx._)`;${T}--;`,()=>t.for((0,tx._)`${O} = ${T}; ${O}--;`,()=>t.if((0,tx._)`${X}(${r}[${T}], ${r}[${O}])`,()=>{e.error(),t.assign(f,!1).break(U)})))}}};ayr.default=eJa});var KRi=z(lyr=>{"use strict";Object.defineProperty(lyr,"__esModule",{value:!0});var cyr=wC(),tJa=Qh(),rJa=obt(),nJa={message:"must be equal to constant",params:({schemaCode:e})=>(0,cyr._)`{allowedValue: ${e}}`},iJa={keyword:"const",$data:!0,error:nJa,code(e){let{gen:t,data:r,$data:s,schemaCode:a,schema:o}=e;s||o&&typeof o=="object"?e.fail$data((0,cyr._)`!${(0,tJa.useFunc)(t,rJa.default)}(${r}, ${a})`):e.fail((0,cyr._)`${o} !== ${r}`)}};lyr.default=iJa});var jRi=z(uyr=>{"use strict";Object.defineProperty(uyr,"__esModule",{value:!0});var U5e=wC(),sJa=Qh(),oJa=obt(),aJa={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,U5e._)`{allowedValues: ${e}}`},cJa={keyword:"enum",schemaType:"array",$data:!0,error:aJa,code(e){let{gen:t,data:r,$data:s,schema:a,schemaCode:o,it:g}=e;if(!s&&a.length===0)throw new Error("enum must have non-empty array");let p=a.length>=g.opts.loopEnum,f,m=()=>f??(f=(0,sJa.useFunc)(t,oJa.default)),y;if(p||s)y=t.let("valid"),e.block$data(y,B);else{if(!Array.isArray(a))throw new Error("ajv implementation error");let G=t.const("vSchema",o);y=(0,U5e.or)(...a.map((T,O)=>v(G,O)))}e.pass(y);function B(){t.assign(y,!1),t.forOf("v",o,G=>t.if((0,U5e._)`${m()}(${r}, ${G})`,()=>t.assign(y,!0).break()))}function v(G,T){let O=a[T];return typeof O=="object"&&O!==null?(0,U5e._)`${m()}(${r}, ${G}[${T}])`:(0,U5e._)`${r} === ${O}`}}};uyr.default=cJa});var zRi=z(gyr=>{"use strict";Object.defineProperty(gyr,"__esModule",{value:!0});var lJa=VRi(),uJa=WRi(),gJa=MRi(),AJa=QRi(),dJa=YRi(),pJa=HRi(),fJa=XRi(),IJa=URi(),CJa=KRi(),mJa=jRi(),hJa=[lJa.default,uJa.default,gJa.default,AJa.default,dJa.default,pJa.default,fJa.default,IJa.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},CJa.default,mJa.default];gyr.default=hJa});var dyr=z(K5e=>{"use strict";Object.defineProperty(K5e,"__esModule",{value:!0});K5e.validateAdditionalItems=void 0;var ZIe=wC(),Ayr=Qh(),_Ja={message:({params:{len:e}})=>(0,ZIe.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,ZIe._)`{limit: ${e}}`},yJa={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:_Ja,code(e){let{parentSchema:t,it:r}=e,{items:s}=t;if(!Array.isArray(s)){(0,Ayr.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}qRi(e,s)}};function qRi(e,t){let{gen:r,schema:s,data:a,keyword:o,it:g}=e;g.items=!0;let p=r.const("len",(0,ZIe._)`${a}.length`);if(s===!1)e.setParams({len:t.length}),e.pass((0,ZIe._)`${p} <= ${t.length}`);else if(typeof s=="object"&&!(0,Ayr.alwaysValidSchema)(g,s)){let m=r.var("valid",(0,ZIe._)`${p} <= ${t.length}`);r.if((0,ZIe.not)(m),()=>f(m)),e.ok(m)}function f(m){r.forRange("i",t.length,p,y=>{e.subschema({keyword:o,dataProp:y,dataPropType:Ayr.Type.Num},m),g.allErrors||r.if((0,ZIe.not)(m),()=>r.break())})}}K5e.validateAdditionalItems=qRi;K5e.default=yJa});var pyr=z(j5e=>{"use strict";Object.defineProperty(j5e,"__esModule",{value:!0});j5e.validateTuple=void 0;var $Ri=wC(),abt=Qh(),bJa=VM(),EJa={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return eDi(e,"additionalItems",t);r.items=!0,!(0,abt.alwaysValidSchema)(r,t)&&e.ok((0,bJa.validateArray)(e))}};function eDi(e,t,r=e.schema){let{gen:s,parentSchema:a,data:o,keyword:g,it:p}=e;y(a),p.opts.unevaluated&&r.length&&p.items!==!0&&(p.items=abt.mergeEvaluated.items(s,r.length,p.items));let f=s.name("valid"),m=s.const("len",(0,$Ri._)`${o}.length`);r.forEach((B,v)=>{(0,abt.alwaysValidSchema)(p,B)||(s.if((0,$Ri._)`${m} > ${v}`,()=>e.subschema({keyword:g,schemaProp:v,dataProp:v},f)),e.ok(f))});function y(B){let{opts:v,errSchemaPath:G}=p,T=r.length,O=T===B.minItems&&(T===B.maxItems||B[t]===!1);if(v.strictTuples&&!O){let X=`"${g}" is ${T}-tuple, but minItems or maxItems/${t} are not specified or different at path "${G}"`;(0,abt.checkStrictMode)(p,X,v.strictTuples)}}}j5e.validateTuple=eDi;j5e.default=EJa});var tDi=z(fyr=>{"use strict";Object.defineProperty(fyr,"__esModule",{value:!0});var BJa=pyr(),vJa={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,BJa.validateTuple)(e,"items")};fyr.default=vJa});var nDi=z(Iyr=>{"use strict";Object.defineProperty(Iyr,"__esModule",{value:!0});var rDi=wC(),SJa=Qh(),wJa=VM(),TJa=dyr(),NJa={message:({params:{len:e}})=>(0,rDi.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,rDi._)`{limit: ${e}}`},RJa={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:NJa,code(e){let{schema:t,parentSchema:r,it:s}=e,{prefixItems:a}=r;s.items=!0,!(0,SJa.alwaysValidSchema)(s,t)&&(a?(0,TJa.validateAdditionalItems)(e,a):e.ok((0,wJa.validateArray)(e)))}};Iyr.default=RJa});var iDi=z(Cyr=>{"use strict";Object.defineProperty(Cyr,"__esModule",{value:!0});var PM=wC(),cbt=Qh(),DJa={message:({params:{min:e,max:t}})=>t===void 0?(0,PM.str)`must contain at least ${e} valid item(s)`:(0,PM.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,PM._)`{minContains: ${e}}`:(0,PM._)`{minContains: ${e}, maxContains: ${t}}`},xJa={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:DJa,code(e){let{gen:t,schema:r,parentSchema:s,data:a,it:o}=e,g,p,{minContains:f,maxContains:m}=s;o.opts.next?(g=f===void 0?1:f,p=m):g=1;let y=t.const("len",(0,PM._)`${a}.length`);if(e.setParams({min:g,max:p}),p===void 0&&g===0){(0,cbt.checkStrictMode)(o,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(p!==void 0&&g>p){(0,cbt.checkStrictMode)(o,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,cbt.alwaysValidSchema)(o,r)){let O=(0,PM._)`${y} >= ${g}`;p!==void 0&&(O=(0,PM._)`${O} && ${y} <= ${p}`),e.pass(O);return}o.items=!0;let B=t.name("valid");p===void 0&&g===1?G(B,()=>t.if(B,()=>t.break())):g===0?(t.let(B,!0),p!==void 0&&t.if((0,PM._)`${a}.length > 0`,v)):(t.let(B,!1),v()),e.result(B,()=>e.reset());function v(){let O=t.name("_valid"),X=t.let("count",0);G(O,()=>t.if(O,()=>T(X)))}function G(O,X){t.forRange("i",0,y,U=>{e.subschema({keyword:"contains",dataProp:U,dataPropType:cbt.Type.Num,compositeRule:!0},O),X()})}function T(O){t.code((0,PM._)`${O}++`),p===void 0?t.if((0,PM._)`${O} >= ${g}`,()=>t.assign(B,!0).break()):(t.if((0,PM._)`${O} > ${p}`,()=>t.assign(B,!1).break()),g===1?t.assign(B,!0):t.if((0,PM._)`${O} >= ${g}`,()=>t.assign(B,!0)))}}};Cyr.default=xJa});var aDi=z(CK=>{"use strict";Object.defineProperty(CK,"__esModule",{value:!0});CK.validateSchemaDeps=CK.validatePropertyDeps=CK.error=void 0;var myr=wC(),kJa=Qh(),z5e=VM();CK.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let s=t===1?"property":"properties";return(0,myr.str)`must have ${s} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:s}})=>(0,myr._)`{property: ${e}, +`+g(a)}return a&&a.__expression?a.__expression:typeof a=="function"&&!t&&a.toString().length>100?"function () { /* omitted long function */ }":g(a)},2)}entry(e){return this.entryPoints.getOrCompute(e,()=>new gHa(this))}plugin(e){return this.plugins.getOrCompute(e,()=>new IHa(this,e))}toConfig(){let e=this.entryPoints.entries()||{},t=this.entries()||{};return this.clean(Object.assign(t,{node:this.node.entries(),output:this.output.entries(),resolve:this.resolve.toConfig(),resolveLoader:this.resolveLoader.toConfig(),devServer:this.devServer.toConfig(),module:this.module.toConfig(),optimization:this.optimization.toConfig(),plugins:this.plugins.values().map(r=>r.toConfig()),performance:this.performance.entries(),entry:Object.keys(e).reduce((r,s)=>Object.assign(r,{[s]:e[s].values()}),{})}))}toString(e){return z_r.exports.toString(this.toConfig(),e)}merge(e={},t=[]){let r=["node","output","resolve","resolveLoader","devServer","optimization","performance","module"];return!t.includes("entry")&&"entry"in e&&Object.keys(e.entry).forEach(s=>this.entry(s).merge([].concat(e.entry[s]))),!t.includes("plugin")&&"plugin"in e&&Object.keys(e.plugin).forEach(s=>this.plugin(s).merge(e.plugin[s])),r.forEach(s=>{!t.includes(s)&&s in e&&this[s].merge(e[s])}),super.merge(e,[...t,...r,"entry","plugin"])}}});var TIe=z(Lyt=>{"use strict";Object.defineProperty(Lyt,"__esModule",{value:!0});Lyt.isJsonObject=DHa;Lyt.isJsonArray=xHa;function DHa(e){return e!=null&&typeof e=="object"&&!Array.isArray(e)}function xHa(e){return Array.isArray(e)}});var Vyt=z(n0r=>{"use strict";Object.defineProperty(n0r,"__esModule",{value:!0});n0r.getTypesOfSchema=BYe;var sNi=TIe(),oNi=["string","integer","number","object","array","boolean","null"];function BYe(e){if(!e)return new Set;if(e===!0)return new Set(oNi);let t;if(typeof e.type=="string")t=new Set([e.type]);else if(Array.isArray(e.type))t=new Set(e.type);else if((0,sNi.isJsonArray)(e.enum)){t=new Set;for(let r of e.enum)switch(typeof r){case"string":case"number":case"boolean":t.add(typeof r);break;case"object":Array.isArray(r)?t.add("array"):r===null?t.add("null"):t.add("object");break}}else t=new Set(oNi);if((0,sNi.isJsonObject)(e.not)){let r=BYe(e.not);t=new Set([...t].filter(s=>!r.has(s)))}if(Array.isArray(e.allOf))for(let r of e.allOf){let s=BYe(r);t=new Set([...s].filter(a=>t.has(a)))}if(Array.isArray(e.oneOf)){let r=new Set;for(let s of e.oneOf){let a=BYe(s);r=new Set([...r,...a])}t=new Set([...r].filter(s=>t.has(s)))}if(Array.isArray(e.anyOf)){let r=new Set;for(let s of e.anyOf){let a=BYe(s);r=new Set([...r,...a])}t=new Set([...r].filter(s=>t.has(s)))}return e.properties?t.add("object"):e.items&&t.add("array"),t}});var lNi=z(i0r=>{"use strict";Object.defineProperty(i0r,"__esModule",{value:!0});i0r.addUndefinedDefaults=cNi;var boe=TIe(),aNi=Vyt();function cNi(e,t,r){if(typeof r=="boolean"||r===void 0)return e;e??=r.default;let s=(0,aNi.getTypesOfSchema)(r);if(s.size===0)return e;let a;if(s.size===1)a=Array.from(s)[0];else if(s.size===2&&s.has("array")&&s.has("object"))a="array";else if(r.properties&&s.has("object"))a="object";else if(r.items&&s.has("array"))a="array";else return e;if(a==="array")return e??[];if(a==="object"){let o;if(e==null)o={};else if((0,boe.isJsonObject)(e))o=e;else return e;if(!(0,boe.isJsonObject)(r.properties))return o;for(let[g,p]of Object.entries(r.properties)){if(g==="$schema"||!(0,boe.isJsonObject)(p))continue;let f=o[g];if(f===void 0)o[g]=p.default;else if((0,boe.isJsonObject)(f)){let m=p.oneOf||p.anyOf,y=Object.keys(f),B=(0,boe.isJsonArray)(m)&&m.find(v=>{if(!(0,boe.isJsonObject)(v))return!1;let k=(0,aNi.getTypesOfSchema)(v);if(k.size===1&&k.has("object")&&(0,boe.isJsonObject)(v.properties)){let T=Object.keys(v.properties);return y.every(O=>T.includes(O))}return!1});B&&(0,boe.isJsonObject)(B)&&(o[g]=cNi(f,t,B))}}return o}return e}});var gNi=z(uNi=>{"use strict";Object.defineProperty(uNi,"__esModule",{value:!0})});var o0r=z(vYe=>{"use strict";Object.defineProperty(vYe,"__esModule",{value:!0});vYe.buildJsonPointer=s0r;vYe.joinJsonPointer=kHa;vYe.parseJsonPointer=GHa;function s0r(e){return"/"+e.map(t=>t.replace(/~/g,"~0").replace(/\//g,"~1")).join("/")}function kHa(e,...t){return e=="/"?s0r(t):e+s0r(t)}function GHa(e){if(e==="")return[];if(e.charAt(0)!=="/")throw new Error("Relative pointer: "+e);return e.substring(1).split(/\//).map(t=>t.replace(/~1/g,"/").replace(/~0/g,"~"))}});var TYe=z(Mh=>{"use strict";Object.defineProperty(Mh,"__esModule",{value:!0});Mh.regexpCode=Mh.getEsmExportName=Mh.getProperty=Mh.safeStringify=Mh.stringify=Mh.strConcat=Mh.addCodeArg=Mh.str=Mh._=Mh.nil=Mh._Code=Mh.Name=Mh.IDENTIFIER=Mh._CodeOrName=void 0;var SYe=class{};Mh._CodeOrName=SYe;Mh.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var NIe=class extends SYe{constructor(t){if(super(),!Mh.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};Mh.Name=NIe;var WQ=class extends SYe{constructor(t){super(),this._items=typeof t=="string"?[t]:t}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let t=this._items[0];return t===""||t==='""'}get str(){var t;return(t=this._str)!==null&&t!==void 0?t:this._str=this._items.reduce((r,s)=>`${r}${s}`,"")}get names(){var t;return(t=this._names)!==null&&t!==void 0?t:this._names=this._items.reduce((r,s)=>(s instanceof NIe&&(r[s.str]=(r[s.str]||0)+1),r),{})}};Mh._Code=WQ;Mh.nil=new WQ("");function ANi(e,...t){let r=[e[0]],s=0;for(;s{"use strict";Object.defineProperty(b9,"__esModule",{value:!0});b9.ValueScope=b9.ValueScopeName=b9.Scope=b9.varKinds=b9.UsedValueState=void 0;var y9=TYe(),l0r=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value}},Wyt;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(Wyt||(b9.UsedValueState=Wyt={}));b9.varKinds={const:new y9.Name("const"),let:new y9.Name("let"),var:new y9.Name("var")};var Pyt=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof y9.Name?t:this.name(t)}name(t){return new y9.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return`${t}${r.index++}`}_nameGroup(t){var r,s;if(!((s=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||s===void 0)&&s.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};b9.Scope=Pyt;var Oyt=class extends y9.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:s}){this.value=t,this.scopePath=(0,y9._)`.${new y9.Name(r)}[${s}]`}};b9.ValueScopeName=Oyt;var MHa=(0,y9._)`\n`,u0r=class extends Pyt{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?MHa:y9.nil}}get(){return this._scope}name(t){return new Oyt(t,this._newName(t))}value(t,r){var s;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let a=this.toName(t),{prefix:o}=a,g=(s=r.key)!==null&&s!==void 0?s:r.ref,p=this._values[o];if(p){let y=p.get(g);if(y)return y}else p=this._values[o]=new Map;p.set(g,a);let f=this._scope[o]||(this._scope[o]=[]),m=f.length;return f[m]=r.ref,a.setValue(r,{property:o,itemIndex:m}),a}getValue(t,r){let s=this._values[t];if(s)return s.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,s=>{if(s.scopePath===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return(0,y9._)`${t}${s.scopePath}`})}scopeCode(t=this._values,r,s){return this._reduceValues(t,a=>{if(a.value===void 0)throw new Error(`CodeGen: name "${a}" has no value`);return a.value.code},r,s)}_reduceValues(t,r,s={},a){let o=y9.nil;for(let g in t){let p=t[g];if(!p)continue;let f=s[g]=s[g]||new Map;p.forEach(m=>{if(f.has(m))return;f.set(m,Wyt.Started);let y=r(m);if(y){let B=this.opts.es5?b9.varKinds.var:b9.varKinds.const;o=(0,y9._)`${o}${B} ${m} = ${y};${this.opts._n}`}else if(y=a?.(m))o=(0,y9._)`${o}${y}${this.opts._n}`;else throw new l0r(m);f.set(m,Wyt.Completed)})}return o}};b9.ValueScope=u0r});var TC=z(QC=>{"use strict";Object.defineProperty(QC,"__esModule",{value:!0});QC.or=QC.and=QC.not=QC.CodeGen=QC.operators=QC.varKinds=QC.ValueScopeName=QC.ValueScope=QC.Scope=QC.Name=QC.regexpCode=QC.stringify=QC.getProperty=QC.nil=QC.strConcat=QC.str=QC._=void 0;var ch=TYe(),xY=g0r(),Eoe=TYe();Object.defineProperty(QC,"_",{enumerable:!0,get:function(){return Eoe._}});Object.defineProperty(QC,"str",{enumerable:!0,get:function(){return Eoe.str}});Object.defineProperty(QC,"strConcat",{enumerable:!0,get:function(){return Eoe.strConcat}});Object.defineProperty(QC,"nil",{enumerable:!0,get:function(){return Eoe.nil}});Object.defineProperty(QC,"getProperty",{enumerable:!0,get:function(){return Eoe.getProperty}});Object.defineProperty(QC,"stringify",{enumerable:!0,get:function(){return Eoe.stringify}});Object.defineProperty(QC,"regexpCode",{enumerable:!0,get:function(){return Eoe.regexpCode}});Object.defineProperty(QC,"Name",{enumerable:!0,get:function(){return Eoe.Name}});var Yyt=g0r();Object.defineProperty(QC,"Scope",{enumerable:!0,get:function(){return Yyt.Scope}});Object.defineProperty(QC,"ValueScope",{enumerable:!0,get:function(){return Yyt.ValueScope}});Object.defineProperty(QC,"ValueScopeName",{enumerable:!0,get:function(){return Yyt.ValueScopeName}});Object.defineProperty(QC,"varKinds",{enumerable:!0,get:function(){return Yyt.varKinds}});QC.operators={GT:new ch._Code(">"),GTE:new ch._Code(">="),LT:new ch._Code("<"),LTE:new ch._Code("<="),EQ:new ch._Code("==="),NEQ:new ch._Code("!=="),NOT:new ch._Code("!"),OR:new ch._Code("||"),AND:new ch._Code("&&"),ADD:new ch._Code("+")};var fq=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},A0r=class extends fq{constructor(t,r,s){super(),this.varKind=t,this.name=r,this.rhs=s}render({es5:t,_n:r}){let s=t?xY.varKinds.var:this.varKind,a=this.rhs===void 0?"":` = ${this.rhs}`;return`${s} ${this.name}${a};`+r}optimizeNames(t,r){if(t[this.name.str])return this.rhs&&(this.rhs=Lwe(this.rhs,t,r)),this}get names(){return this.rhs instanceof ch._CodeOrName?this.rhs.names:{}}},Qyt=class extends fq{constructor(t,r,s){super(),this.lhs=t,this.rhs=r,this.sideEffects=s}render({_n:t}){return`${this.lhs} = ${this.rhs};`+t}optimizeNames(t,r){if(!(this.lhs instanceof ch.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=Lwe(this.rhs,t,r),this}get names(){let t=this.lhs instanceof ch.Name?{}:{...this.lhs.names};return Hyt(t,this.rhs)}},d0r=class extends Qyt{constructor(t,r,s,a){super(t,s,a),this.op=r}render({_n:t}){return`${this.lhs} ${this.op}= ${this.rhs};`+t}},p0r=class extends fq{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`${this.label}:`+t}},f0r=class extends fq{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`break${this.label?` ${this.label}`:""};`+t}},I0r=class extends fq{constructor(t){super(),this.error=t}render({_n:t}){return`throw ${this.error};`+t}get names(){return this.error.names}},C0r=class extends fq{constructor(t){super(),this.code=t}render({_n:t}){return`${this.code};`+t}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(t,r){return this.code=Lwe(this.code,t,r),this}get names(){return this.code instanceof ch._CodeOrName?this.code.names:{}}},NYe=class extends fq{constructor(t=[]){super(),this.nodes=t}render(t){return this.nodes.reduce((r,s)=>r+s.render(t),"")}optimizeNodes(){let{nodes:t}=this,r=t.length;for(;r--;){let s=t[r].optimizeNodes();Array.isArray(s)?t.splice(r,1,...s):s?t[r]=s:t.splice(r,1)}return t.length>0?this:void 0}optimizeNames(t,r){let{nodes:s}=this,a=s.length;for(;a--;){let o=s[a];o.optimizeNames(t,r)||(HHa(t,o.names),s.splice(a,1))}return s.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>xIe(t,r.names),{})}},Iq=class extends NYe{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},m0r=class extends NYe{},Zwe=class extends Iq{};Zwe.kind="else";var RIe=class e extends Iq{constructor(t,r){super(r),this.condition=t}render(t){let r=`if(${this.condition})`+super.render(t);return this.else&&(r+="else "+this.else.render(t)),r}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let r=this.else;if(r){let s=r.optimizeNodes();r=this.else=Array.isArray(s)?new Zwe(s):s}if(r)return t===!1?r instanceof e?r:r.nodes:this.nodes.length?this:new e(pNi(t),r instanceof e?[r]:r.nodes);if(!(t===!1||!this.nodes.length))return this}optimizeNames(t,r){var s;if(this.else=(s=this.else)===null||s===void 0?void 0:s.optimizeNames(t,r),!!(super.optimizeNames(t,r)||this.else))return this.condition=Lwe(this.condition,t,r),this}get names(){let t=super.names;return Hyt(t,this.condition),this.else&&xIe(t,this.else.names),t}};RIe.kind="if";var DIe=class extends Iq{};DIe.kind="for";var h0r=class extends DIe{constructor(t){super(),this.iteration=t}render(t){return`for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=Lwe(this.iteration,t,r),this}get names(){return xIe(super.names,this.iteration.names)}},_0r=class extends DIe{constructor(t,r,s,a){super(),this.varKind=t,this.name=r,this.from=s,this.to=a}render(t){let r=t.es5?xY.varKinds.var:this.varKind,{name:s,from:a,to:o}=this;return`for(${r} ${s}=${a}; ${s}<${o}; ${s}++)`+super.render(t)}get names(){let t=Hyt(super.names,this.from);return Hyt(t,this.to)}},Myt=class extends DIe{constructor(t,r,s,a){super(),this.loop=t,this.varKind=r,this.name=s,this.iterable=a}render(t){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iterable=Lwe(this.iterable,t,r),this}get names(){return xIe(super.names,this.iterable.names)}},RYe=class extends Iq{constructor(t,r,s){super(),this.name=t,this.args=r,this.async=s}render(t){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}};RYe.kind="func";var DYe=class extends NYe{render(t){return"return "+super.render(t)}};DYe.kind="return";var y0r=class extends Iq{render(t){let r="try"+super.render(t);return this.catch&&(r+=this.catch.render(t)),this.finally&&(r+=this.finally.render(t)),r}optimizeNodes(){var t,r;return super.optimizeNodes(),(t=this.catch)===null||t===void 0||t.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(t,r){var s,a;return super.optimizeNames(t,r),(s=this.catch)===null||s===void 0||s.optimizeNames(t,r),(a=this.finally)===null||a===void 0||a.optimizeNames(t,r),this}get names(){let t=super.names;return this.catch&&xIe(t,this.catch.names),this.finally&&xIe(t,this.finally.names),t}},xYe=class extends Iq{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}};xYe.kind="catch";var kYe=class extends Iq{render(t){return"finally"+super.render(t)}};kYe.kind="finally";var b0r=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` +`:""},this._extScope=t,this._scope=new xY.Scope({parent:t}),this._nodes=[new m0r]}toString(){return this._root.render(this.opts)}name(t){return this._scope.name(t)}scopeName(t){return this._extScope.name(t)}scopeValue(t,r){let s=this._extScope.value(t,r);return(this._values[s.prefix]||(this._values[s.prefix]=new Set)).add(s),s}getScopeValue(t,r){return this._extScope.getValue(t,r)}scopeRefs(t){return this._extScope.scopeRefs(t,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(t,r,s,a){let o=this._scope.toName(r);return s!==void 0&&a&&(this._constants[o.str]=s),this._leafNode(new A0r(t,o,s)),o}const(t,r,s){return this._def(xY.varKinds.const,t,r,s)}let(t,r,s){return this._def(xY.varKinds.let,t,r,s)}var(t,r,s){return this._def(xY.varKinds.var,t,r,s)}assign(t,r,s){return this._leafNode(new Qyt(t,r,s))}add(t,r){return this._leafNode(new d0r(t,QC.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==ch.nil&&this._leafNode(new C0r(t)),this}object(...t){let r=["{"];for(let[s,a]of t)r.length>1&&r.push(","),r.push(s),(s!==a||this.opts.es5)&&(r.push(":"),(0,ch.addCodeArg)(r,a));return r.push("}"),new ch._Code(r)}if(t,r,s){if(this._blockNode(new RIe(t)),r&&s)this.code(r).else().code(s).endIf();else if(r)this.code(r).endIf();else if(s)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(t){return this._elseNode(new RIe(t))}else(){return this._elseNode(new Zwe)}endIf(){return this._endBlockNode(RIe,Zwe)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new h0r(t),r)}forRange(t,r,s,a,o=this.opts.es5?xY.varKinds.var:xY.varKinds.let){let g=this._scope.toName(t);return this._for(new _0r(o,g,r,s),()=>a(g))}forOf(t,r,s,a=xY.varKinds.const){let o=this._scope.toName(t);if(this.opts.es5){let g=r instanceof ch.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,ch._)`${g}.length`,p=>{this.var(o,(0,ch._)`${g}[${p}]`),s(o)})}return this._for(new Myt("of",a,o,r),()=>s(o))}forIn(t,r,s,a=this.opts.es5?xY.varKinds.var:xY.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0,ch._)`Object.keys(${r})`,s);let o=this._scope.toName(t);return this._for(new Myt("in",a,o,r),()=>s(o))}endFor(){return this._endBlockNode(DIe)}label(t){return this._leafNode(new p0r(t))}break(t){return this._leafNode(new f0r(t))}return(t){let r=new DYe;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(DYe)}try(t,r,s){if(!r&&!s)throw new Error('CodeGen: "try" without "catch" and "finally"');let a=new y0r;if(this._blockNode(a),this.code(t),r){let o=this.name("e");this._currNode=a.catch=new xYe(o),r(o)}return s&&(this._currNode=a.finally=new kYe,this.code(s)),this._endBlockNode(xYe,kYe)}throw(t){return this._leafNode(new I0r(t))}block(t,r){return this._blockStarts.push(this._nodes.length),t&&this.code(t).endBlock(r),this}endBlock(t){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let s=this._nodes.length-r;if(s<0||t!==void 0&&s!==t)throw new Error(`CodeGen: wrong number of nodes: ${s} vs ${t} expected`);return this._nodes.length=r,this}func(t,r=ch.nil,s,a){return this._blockNode(new RYe(t,r,s)),a&&this.code(a).endFunc(),this}endFunc(){return this._endBlockNode(RYe)}optimize(t=1){for(;t-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(t){return this._currNode.nodes.push(t),this}_blockNode(t){this._currNode.nodes.push(t),this._nodes.push(t)}_endBlockNode(t,r){let s=this._currNode;if(s instanceof t||r&&s instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${t.kind}/${r.kind}`:t.kind}"`)}_elseNode(t){let r=this._currNode;if(!(r instanceof RIe))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=t,this}get _root(){return this._nodes[0]}get _currNode(){let t=this._nodes;return t[t.length-1]}set _currNode(t){let r=this._nodes;r[r.length-1]=t}};QC.CodeGen=b0r;function xIe(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function Hyt(e,t){return t instanceof ch._CodeOrName?xIe(e,t.names):e}function Lwe(e,t,r){if(e instanceof ch.Name)return s(e);if(!a(e))return e;return new ch._Code(e._items.reduce((o,g)=>(g instanceof ch.Name&&(g=s(g)),g instanceof ch._Code?o.push(...g._items):o.push(g),o),[]));function s(o){let g=r[o.str];return g===void 0||t[o.str]!==1?o:(delete t[o.str],g)}function a(o){return o instanceof ch._Code&&o._items.some(g=>g instanceof ch.Name&&t[g.str]===1&&r[g.str]!==void 0)}}function HHa(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function pNi(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,ch._)`!${E0r(e)}`}QC.not=pNi;var YHa=fNi(QC.operators.AND);function XHa(...e){return e.reduce(YHa)}QC.and=XHa;var JHa=fNi(QC.operators.OR);function UHa(...e){return e.reduce(JHa)}QC.or=UHa;function fNi(e){return(t,r)=>t===ch.nil?r:r===ch.nil?t:(0,ch._)`${E0r(t)} ${e} ${E0r(r)}`}function E0r(e){return e instanceof ch.Name?e:(0,ch._)`(${e})`}});var Hh=z(sm=>{"use strict";Object.defineProperty(sm,"__esModule",{value:!0});sm.checkStrictMode=sm.getErrorPath=sm.Type=sm.useFunc=sm.setEvaluated=sm.evaluatedPropsToName=sm.mergeEvaluated=sm.eachItem=sm.unescapeJsonPointer=sm.escapeJsonPointer=sm.escapeFragment=sm.unescapeFragment=sm.schemaRefOrVal=sm.schemaHasRulesButRef=sm.schemaHasRules=sm.checkUnknownRules=sm.alwaysValidSchema=sm.toHash=void 0;var Bb=TC(),KHa=TYe();function jHa(e){let t={};for(let r of e)t[r]=!0;return t}sm.toHash=jHa;function zHa(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:(mNi(e,t),!hNi(t,e.self.RULES.all))}sm.alwaysValidSchema=zHa;function mNi(e,t=e.schema){let{opts:r,self:s}=e;if(!r.strictSchema||typeof t=="boolean")return;let a=s.RULES.keywords;for(let o in t)a[o]||bNi(e,`unknown keyword: "${o}"`)}sm.checkUnknownRules=mNi;function hNi(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}sm.schemaHasRules=hNi;function qHa(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}sm.schemaHasRulesButRef=qHa;function $Ha({topSchemaRef:e,schemaPath:t},r,s,a){if(!a){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,Bb._)`${r}`}return(0,Bb._)`${e}${t}${(0,Bb.getProperty)(s)}`}sm.schemaRefOrVal=$Ha;function eYa(e){return _Ni(decodeURIComponent(e))}sm.unescapeFragment=eYa;function tYa(e){return encodeURIComponent(v0r(e))}sm.escapeFragment=tYa;function v0r(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}sm.escapeJsonPointer=v0r;function _Ni(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}sm.unescapeJsonPointer=_Ni;function rYa(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}sm.eachItem=rYa;function INi({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:s}){return(a,o,g,p)=>{let f=g===void 0?o:g instanceof Bb.Name?(o instanceof Bb.Name?e(a,o,g):t(a,o,g),g):o instanceof Bb.Name?(t(a,g,o),o):r(o,g);return p===Bb.Name&&!(f instanceof Bb.Name)?s(a,f):f}}sm.mergeEvaluated={props:INi({mergeNames:(e,t,r)=>e.if((0,Bb._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,Bb._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,Bb._)`${r} || {}`).code((0,Bb._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,Bb._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,Bb._)`${r} || {}`),S0r(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:yNi}),items:INi({mergeNames:(e,t,r)=>e.if((0,Bb._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,Bb._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,Bb._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,Bb._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function yNi(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,Bb._)`{}`);return t!==void 0&&S0r(e,r,t),r}sm.evaluatedPropsToName=yNi;function S0r(e,t,r){Object.keys(r).forEach(s=>e.assign((0,Bb._)`${t}${(0,Bb.getProperty)(s)}`,!0))}sm.setEvaluated=S0r;var CNi={};function nYa(e,t){return e.scopeValue("func",{ref:t,code:CNi[t.code]||(CNi[t.code]=new KHa._Code(t.code))})}sm.useFunc=nYa;var B0r;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(B0r||(sm.Type=B0r={}));function iYa(e,t,r){if(e instanceof Bb.Name){let s=t===B0r.Num;return r?s?(0,Bb._)`"[" + ${e} + "]"`:(0,Bb._)`"['" + ${e} + "']"`:s?(0,Bb._)`"/" + ${e}`:(0,Bb._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,Bb.getProperty)(e).toString():"/"+v0r(e)}sm.getErrorPath=iYa;function bNi(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===!0)throw new Error(t);e.self.logger.warn(t)}}sm.checkStrictMode=bNi});var Cq=z(w0r=>{"use strict";Object.defineProperty(w0r,"__esModule",{value:!0});var zk=TC(),sYa={data:new zk.Name("data"),valCxt:new zk.Name("valCxt"),instancePath:new zk.Name("instancePath"),parentData:new zk.Name("parentData"),parentDataProperty:new zk.Name("parentDataProperty"),rootData:new zk.Name("rootData"),dynamicAnchors:new zk.Name("dynamicAnchors"),vErrors:new zk.Name("vErrors"),errors:new zk.Name("errors"),this:new zk.Name("this"),self:new zk.Name("self"),scope:new zk.Name("scope"),json:new zk.Name("json"),jsonPos:new zk.Name("jsonPos"),jsonLen:new zk.Name("jsonLen"),jsonPart:new zk.Name("jsonPart")};w0r.default=sYa});var GYe=z(qk=>{"use strict";Object.defineProperty(qk,"__esModule",{value:!0});qk.extendErrors=qk.resetErrorsCount=qk.reportExtraError=qk.reportError=qk.keyword$DataError=qk.keywordError=void 0;var _h=TC(),Xyt=Hh(),$F=Cq();qk.keywordError={message:({keyword:e})=>(0,_h.str)`must pass "${e}" keyword validation`};qk.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,_h.str)`"${e}" keyword must be ${t} ($data)`:(0,_h.str)`"${e}" keyword is invalid ($data)`};function oYa(e,t=qk.keywordError,r,s){let{it:a}=e,{gen:o,compositeRule:g,allErrors:p}=a,f=vNi(e,t,r);s??(g||p)?ENi(o,f):BNi(a,(0,_h._)`[${f}]`)}qk.reportError=oYa;function aYa(e,t=qk.keywordError,r){let{it:s}=e,{gen:a,compositeRule:o,allErrors:g}=s,p=vNi(e,t,r);ENi(a,p),o||g||BNi(s,$F.default.vErrors)}qk.reportExtraError=aYa;function cYa(e,t){e.assign($F.default.errors,t),e.if((0,_h._)`${$F.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,_h._)`${$F.default.vErrors}.length`,t),()=>e.assign($F.default.vErrors,null)))}qk.resetErrorsCount=cYa;function lYa({gen:e,keyword:t,schemaValue:r,data:s,errsCount:a,it:o}){if(a===void 0)throw new Error("ajv implementation error");let g=e.name("err");e.forRange("i",a,$F.default.errors,p=>{e.const(g,(0,_h._)`${$F.default.vErrors}[${p}]`),e.if((0,_h._)`${g}.instancePath === undefined`,()=>e.assign((0,_h._)`${g}.instancePath`,(0,_h.strConcat)($F.default.instancePath,o.errorPath))),e.assign((0,_h._)`${g}.schemaPath`,(0,_h.str)`${o.errSchemaPath}/${t}`),o.opts.verbose&&(e.assign((0,_h._)`${g}.schema`,r),e.assign((0,_h._)`${g}.data`,s))})}qk.extendErrors=lYa;function ENi(e,t){let r=e.const("err",t);e.if((0,_h._)`${$F.default.vErrors} === null`,()=>e.assign($F.default.vErrors,(0,_h._)`[${r}]`),(0,_h._)`${$F.default.vErrors}.push(${r})`),e.code((0,_h._)`${$F.default.errors}++`)}function BNi(e,t){let{gen:r,validateName:s,schemaEnv:a}=e;a.$async?r.throw((0,_h._)`new ${e.ValidationError}(${t})`):(r.assign((0,_h._)`${s}.errors`,t),r.return(!1))}var kIe={keyword:new _h.Name("keyword"),schemaPath:new _h.Name("schemaPath"),params:new _h.Name("params"),propertyName:new _h.Name("propertyName"),message:new _h.Name("message"),schema:new _h.Name("schema"),parentSchema:new _h.Name("parentSchema")};function vNi(e,t,r){let{createErrors:s}=e.it;return s===!1?(0,_h._)`{}`:uYa(e,t,r)}function uYa(e,t,r={}){let{gen:s,it:a}=e,o=[gYa(a,r),AYa(e,r)];return dYa(e,t,o),s.object(...o)}function gYa({errorPath:e},{instancePath:t}){let r=t?(0,_h.str)`${e}${(0,Xyt.getErrorPath)(t,Xyt.Type.Str)}`:e;return[$F.default.instancePath,(0,_h.strConcat)($F.default.instancePath,r)]}function AYa({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:s}){let a=s?t:(0,_h.str)`${t}/${e}`;return r&&(a=(0,_h.str)`${a}${(0,Xyt.getErrorPath)(r,Xyt.Type.Str)}`),[kIe.schemaPath,a]}function dYa(e,{params:t,message:r},s){let{keyword:a,data:o,schemaValue:g,it:p}=e,{opts:f,propertyName:m,topSchemaRef:y,schemaPath:B}=p;s.push([kIe.keyword,a],[kIe.params,typeof t=="function"?t(e):t||(0,_h._)`{}`]),f.messages&&s.push([kIe.message,typeof r=="function"?r(e):r]),f.verbose&&s.push([kIe.schema,g],[kIe.parentSchema,(0,_h._)`${y}${B}`],[$F.default.data,o]),m&&s.push([kIe.propertyName,m])}});var wNi=z(Vwe=>{"use strict";Object.defineProperty(Vwe,"__esModule",{value:!0});Vwe.boolOrEmptySchema=Vwe.topBoolOrEmptySchema=void 0;var pYa=GYe(),fYa=TC(),IYa=Cq(),CYa={message:"boolean schema is false"};function mYa(e){let{gen:t,schema:r,validateName:s}=e;r===!1?SNi(e,!1):typeof r=="object"&&r.$async===!0?t.return(IYa.default.data):(t.assign((0,fYa._)`${s}.errors`,null),t.return(!0))}Vwe.topBoolOrEmptySchema=mYa;function hYa(e,t){let{gen:r,schema:s}=e;s===!1?(r.var(t,!1),SNi(e)):r.var(t,!0)}Vwe.boolOrEmptySchema=hYa;function SNi(e,t){let{gen:r,data:s}=e,a={gen:r,keyword:"false schema",data:s,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,pYa.reportError)(a,CYa,void 0,t)}});var T0r=z(Wwe=>{"use strict";Object.defineProperty(Wwe,"__esModule",{value:!0});Wwe.getRules=Wwe.isJSONType=void 0;var _Ya=["string","number","integer","boolean","null","object","array"],yYa=new Set(_Ya);function bYa(e){return typeof e=="string"&&yYa.has(e)}Wwe.isJSONType=bYa;function EYa(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}Wwe.getRules=EYa});var N0r=z(Boe=>{"use strict";Object.defineProperty(Boe,"__esModule",{value:!0});Boe.shouldUseRule=Boe.shouldUseGroup=Boe.schemaHasRulesForType=void 0;function BYa({schema:e,self:t},r){let s=t.RULES.types[r];return s&&s!==!0&&TNi(e,s)}Boe.schemaHasRulesForType=BYa;function TNi(e,t){return t.rules.some(r=>NNi(e,r))}Boe.shouldUseGroup=TNi;function NNi(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some(s=>e[s]!==void 0))}Boe.shouldUseRule=NNi});var FYe=z($k=>{"use strict";Object.defineProperty($k,"__esModule",{value:!0});$k.reportTypeError=$k.checkDataTypes=$k.checkDataType=$k.coerceAndCheckDataType=$k.getJSONTypes=$k.getSchemaTypes=$k.DataType=void 0;var vYa=T0r(),SYa=N0r(),wYa=GYe(),uC=TC(),RNi=Hh(),Pwe;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(Pwe||($k.DataType=Pwe={}));function TYa(e){let t=DNi(e.type);if(t.includes("null")){if(e.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!t.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===!0&&t.push("null")}return t}$k.getSchemaTypes=TYa;function DNi(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(vYa.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}$k.getJSONTypes=DNi;function NYa(e,t){let{gen:r,data:s,opts:a}=e,o=RYa(t,a.coerceTypes),g=t.length>0&&!(o.length===0&&t.length===1&&(0,SYa.schemaHasRulesForType)(e,t[0]));if(g){let p=D0r(t,s,a.strictNumbers,Pwe.Wrong);r.if(p,()=>{o.length?DYa(e,t,o):x0r(e)})}return g}$k.coerceAndCheckDataType=NYa;var xNi=new Set(["string","number","integer","boolean","null"]);function RYa(e,t){return t?e.filter(r=>xNi.has(r)||t==="array"&&r==="array"):[]}function DYa(e,t,r){let{gen:s,data:a,opts:o}=e,g=s.let("dataType",(0,uC._)`typeof ${a}`),p=s.let("coerced",(0,uC._)`undefined`);o.coerceTypes==="array"&&s.if((0,uC._)`${g} == 'object' && Array.isArray(${a}) && ${a}.length == 1`,()=>s.assign(a,(0,uC._)`${a}[0]`).assign(g,(0,uC._)`typeof ${a}`).if(D0r(t,a,o.strictNumbers),()=>s.assign(p,a))),s.if((0,uC._)`${p} !== undefined`);for(let m of r)(xNi.has(m)||m==="array"&&o.coerceTypes==="array")&&f(m);s.else(),x0r(e),s.endIf(),s.if((0,uC._)`${p} !== undefined`,()=>{s.assign(a,p),xYa(e,p)});function f(m){switch(m){case"string":s.elseIf((0,uC._)`${g} == "number" || ${g} == "boolean"`).assign(p,(0,uC._)`"" + ${a}`).elseIf((0,uC._)`${a} === null`).assign(p,(0,uC._)`""`);return;case"number":s.elseIf((0,uC._)`${g} == "boolean" || ${a} === null + || (${g} == "string" && ${a} && ${a} == +${a})`).assign(p,(0,uC._)`+${a}`);return;case"integer":s.elseIf((0,uC._)`${g} === "boolean" || ${a} === null + || (${g} === "string" && ${a} && ${a} == +${a} && !(${a} % 1))`).assign(p,(0,uC._)`+${a}`);return;case"boolean":s.elseIf((0,uC._)`${a} === "false" || ${a} === 0 || ${a} === null`).assign(p,!1).elseIf((0,uC._)`${a} === "true" || ${a} === 1`).assign(p,!0);return;case"null":s.elseIf((0,uC._)`${a} === "" || ${a} === 0 || ${a} === false`),s.assign(p,null);return;case"array":s.elseIf((0,uC._)`${g} === "string" || ${g} === "number" + || ${g} === "boolean" || ${a} === null`).assign(p,(0,uC._)`[${a}]`)}}}function xYa({gen:e,parentData:t,parentDataProperty:r},s){e.if((0,uC._)`${t} !== undefined`,()=>e.assign((0,uC._)`${t}[${r}]`,s))}function R0r(e,t,r,s=Pwe.Correct){let a=s===Pwe.Correct?uC.operators.EQ:uC.operators.NEQ,o;switch(e){case"null":return(0,uC._)`${t} ${a} null`;case"array":o=(0,uC._)`Array.isArray(${t})`;break;case"object":o=(0,uC._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":o=g((0,uC._)`!(${t} % 1) && !isNaN(${t})`);break;case"number":o=g();break;default:return(0,uC._)`typeof ${t} ${a} ${e}`}return s===Pwe.Correct?o:(0,uC.not)(o);function g(p=uC.nil){return(0,uC.and)((0,uC._)`typeof ${t} == "number"`,p,r?(0,uC._)`isFinite(${t})`:uC.nil)}}$k.checkDataType=R0r;function D0r(e,t,r,s){if(e.length===1)return R0r(e[0],t,r,s);let a,o=(0,RNi.toHash)(e);if(o.array&&o.object){let g=(0,uC._)`typeof ${t} != "object"`;a=o.null?g:(0,uC._)`!${t} || ${g}`,delete o.null,delete o.array,delete o.object}else a=uC.nil;o.number&&delete o.integer;for(let g in o)a=(0,uC.and)(a,R0r(g,t,r,s));return a}$k.checkDataTypes=D0r;var kYa={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,uC._)`{type: ${e}}`:(0,uC._)`{type: ${t}}`};function x0r(e){let t=GYa(e);(0,wYa.reportError)(t,kYa)}$k.reportTypeError=x0r;function GYa(e){let{gen:t,data:r,schema:s}=e,a=(0,RNi.schemaRefOrVal)(e,s,"type");return{gen:t,keyword:"type",data:r,schema:s.type,schemaCode:a,schemaValue:a,parentSchema:s,params:{},it:e}}});var GNi=z(Jyt=>{"use strict";Object.defineProperty(Jyt,"__esModule",{value:!0});Jyt.assignDefaults=void 0;var Owe=TC(),FYa=Hh();function ZYa(e,t){let{properties:r,items:s}=e.schema;if(t==="object"&&r)for(let a in r)kNi(e,a,r[a].default);else t==="array"&&Array.isArray(s)&&s.forEach((a,o)=>kNi(e,o,a.default))}Jyt.assignDefaults=ZYa;function kNi(e,t,r){let{gen:s,compositeRule:a,data:o,opts:g}=e;if(r===void 0)return;let p=(0,Owe._)`${o}${(0,Owe.getProperty)(t)}`;if(a){(0,FYa.checkStrictMode)(e,`default is ignored for: ${p}`);return}let f=(0,Owe._)`${p} === undefined`;g.useDefaults==="empty"&&(f=(0,Owe._)`${f} || ${p} === null || ${p} === ""`),s.if(f,(0,Owe._)`${p} = ${(0,Owe.stringify)(r)}`)}});var PQ=z(Py=>{"use strict";Object.defineProperty(Py,"__esModule",{value:!0});Py.validateUnion=Py.validateArray=Py.usePattern=Py.callValidateCode=Py.schemaProperties=Py.allSchemaProperties=Py.noPropertyInData=Py.propertyInData=Py.isOwnProperty=Py.hasPropFunc=Py.reportMissingProp=Py.checkMissingProp=Py.checkReportMissingProp=void 0;var g1=TC(),k0r=Hh(),voe=Cq(),LYa=Hh();function VYa(e,t){let{gen:r,data:s,it:a}=e;r.if(F0r(r,s,t,a.opts.ownProperties),()=>{e.setParams({missingProperty:(0,g1._)`${t}`},!0),e.error()})}Py.checkReportMissingProp=VYa;function WYa({gen:e,data:t,it:{opts:r}},s,a){return(0,g1.or)(...s.map(o=>(0,g1.and)(F0r(e,t,o,r.ownProperties),(0,g1._)`${a} = ${o}`)))}Py.checkMissingProp=WYa;function PYa(e,t){e.setParams({missingProperty:t},!0),e.error()}Py.reportMissingProp=PYa;function FNi(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,g1._)`Object.prototype.hasOwnProperty`})}Py.hasPropFunc=FNi;function G0r(e,t,r){return(0,g1._)`${FNi(e)}.call(${t}, ${r})`}Py.isOwnProperty=G0r;function OYa(e,t,r,s){let a=(0,g1._)`${t}${(0,g1.getProperty)(r)} !== undefined`;return s?(0,g1._)`${a} && ${G0r(e,t,r)}`:a}Py.propertyInData=OYa;function F0r(e,t,r,s){let a=(0,g1._)`${t}${(0,g1.getProperty)(r)} === undefined`;return s?(0,g1.or)(a,(0,g1.not)(G0r(e,t,r))):a}Py.noPropertyInData=F0r;function ZNi(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}Py.allSchemaProperties=ZNi;function QYa(e,t){return ZNi(t).filter(r=>!(0,k0r.alwaysValidSchema)(e,t[r]))}Py.schemaProperties=QYa;function MYa({schemaCode:e,data:t,it:{gen:r,topSchemaRef:s,schemaPath:a,errorPath:o},it:g},p,f,m){let y=m?(0,g1._)`${e}, ${t}, ${s}${a}`:t,B=[[voe.default.instancePath,(0,g1.strConcat)(voe.default.instancePath,o)],[voe.default.parentData,g.parentData],[voe.default.parentDataProperty,g.parentDataProperty],[voe.default.rootData,voe.default.rootData]];g.opts.dynamicRef&&B.push([voe.default.dynamicAnchors,voe.default.dynamicAnchors]);let v=(0,g1._)`${y}, ${r.object(...B)}`;return f!==g1.nil?(0,g1._)`${p}.call(${f}, ${v})`:(0,g1._)`${p}(${v})`}Py.callValidateCode=MYa;var HYa=(0,g1._)`new RegExp`;function YYa({gen:e,it:{opts:t}},r){let s=t.unicodeRegExp?"u":"",{regExp:a}=t.code,o=a(r,s);return e.scopeValue("pattern",{key:o.toString(),ref:o,code:(0,g1._)`${a.code==="new RegExp"?HYa:(0,LYa.useFunc)(e,a)}(${r}, ${s})`})}Py.usePattern=YYa;function XYa(e){let{gen:t,data:r,keyword:s,it:a}=e,o=t.name("valid");if(a.allErrors){let p=t.let("valid",!0);return g(()=>t.assign(p,!1)),p}return t.var(o,!0),g(()=>t.break()),o;function g(p){let f=t.const("len",(0,g1._)`${r}.length`);t.forRange("i",0,f,m=>{e.subschema({keyword:s,dataProp:m,dataPropType:k0r.Type.Num},o),t.if((0,g1.not)(o),p)})}}Py.validateArray=XYa;function JYa(e){let{gen:t,schema:r,keyword:s,it:a}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(f=>(0,k0r.alwaysValidSchema)(a,f))&&!a.opts.unevaluated)return;let g=t.let("valid",!1),p=t.name("_valid");t.block(()=>r.forEach((f,m)=>{let y=e.subschema({keyword:s,schemaProp:m,compositeRule:!0},p);t.assign(g,(0,g1._)`${g} || ${p}`),e.mergeValidEvaluated(y,p)||t.if((0,g1.not)(g))})),e.result(g,()=>e.reset(),()=>e.error(!0))}Py.validateUnion=JYa});var WNi=z(_K=>{"use strict";Object.defineProperty(_K,"__esModule",{value:!0});_K.validateKeywordUsage=_K.validSchemaType=_K.funcKeywordCode=_K.macroKeywordCode=void 0;var eZ=TC(),GIe=Cq(),UYa=PQ(),KYa=GYe();function jYa(e,t){let{gen:r,keyword:s,schema:a,parentSchema:o,it:g}=e,p=t.macro.call(g.self,a,o,g),f=VNi(r,s,p);g.opts.validateSchema!==!1&&g.self.validateSchema(p,!0);let m=r.name("valid");e.subschema({schema:p,schemaPath:eZ.nil,errSchemaPath:`${g.errSchemaPath}/${s}`,topSchemaRef:f,compositeRule:!0},m),e.pass(m,()=>e.error(!0))}_K.macroKeywordCode=jYa;function zYa(e,t){var r;let{gen:s,keyword:a,schema:o,parentSchema:g,$data:p,it:f}=e;$Ya(f,t);let m=!p&&t.compile?t.compile.call(f.self,o,g,f):t.validate,y=VNi(s,a,m),B=s.let("valid");e.block$data(B,v),e.ok((r=t.valid)!==null&&r!==void 0?r:B);function v(){if(t.errors===!1)O(),t.modifying&&LNi(e),X(()=>e.error());else{let U=t.async?k():T();t.modifying&&LNi(e),X(()=>qYa(e,U))}}function k(){let U=s.let("ruleErrs",null);return s.try(()=>O((0,eZ._)`await `),le=>s.assign(B,!1).if((0,eZ._)`${le} instanceof ${f.ValidationError}`,()=>s.assign(U,(0,eZ._)`${le}.errors`),()=>s.throw(le))),U}function T(){let U=(0,eZ._)`${y}.errors`;return s.assign(U,null),O(eZ.nil),U}function O(U=t.async?(0,eZ._)`await `:eZ.nil){let le=f.opts.passContext?GIe.default.this:GIe.default.self,ae=!("compile"in t&&!p||t.schema===!1);s.assign(B,(0,eZ._)`${U}${(0,UYa.callValidateCode)(e,y,le,ae)}`,t.modifying)}function X(U){var le;s.if((0,eZ.not)((le=t.valid)!==null&&le!==void 0?le:B),U)}}_K.funcKeywordCode=zYa;function LNi(e){let{gen:t,data:r,it:s}=e;t.if(s.parentData,()=>t.assign(r,(0,eZ._)`${s.parentData}[${s.parentDataProperty}]`))}function qYa(e,t){let{gen:r}=e;r.if((0,eZ._)`Array.isArray(${t})`,()=>{r.assign(GIe.default.vErrors,(0,eZ._)`${GIe.default.vErrors} === null ? ${t} : ${GIe.default.vErrors}.concat(${t})`).assign(GIe.default.errors,(0,eZ._)`${GIe.default.vErrors}.length`),(0,KYa.extendErrors)(e)},()=>e.error())}function $Ya({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function VNi(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,eZ.stringify)(r)})}function eXa(e,t,r=!1){return!t.length||t.some(s=>s==="array"?Array.isArray(e):s==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==s||r&&typeof e>"u")}_K.validSchemaType=eXa;function tXa({schema:e,opts:t,self:r,errSchemaPath:s},a,o){if(Array.isArray(a.keyword)?!a.keyword.includes(o):a.keyword!==o)throw new Error("ajv implementation error");let g=a.dependencies;if(g?.some(p=>!Object.prototype.hasOwnProperty.call(e,p)))throw new Error(`parent schema must have dependencies of ${o}: ${g.join(",")}`);if(a.validateSchema&&!a.validateSchema(e[o])){let f=`keyword "${o}" value is invalid at path "${s}": `+r.errorsText(a.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(f);else throw new Error(f)}}_K.validateKeywordUsage=tXa});var ONi=z(Soe=>{"use strict";Object.defineProperty(Soe,"__esModule",{value:!0});Soe.extendSubschemaMode=Soe.extendSubschemaData=Soe.getSubschema=void 0;var yK=TC(),PNi=Hh();function rXa(e,{keyword:t,schemaProp:r,schema:s,schemaPath:a,errSchemaPath:o,topSchemaRef:g}){if(t!==void 0&&s!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let p=e.schema[t];return r===void 0?{schema:p,schemaPath:(0,yK._)`${e.schemaPath}${(0,yK.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:p[r],schemaPath:(0,yK._)`${e.schemaPath}${(0,yK.getProperty)(t)}${(0,yK.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,PNi.escapeFragment)(r)}`}}if(s!==void 0){if(a===void 0||o===void 0||g===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:s,schemaPath:a,topSchemaRef:g,errSchemaPath:o}}throw new Error('either "keyword" or "schema" must be passed')}Soe.getSubschema=rXa;function nXa(e,t,{dataProp:r,dataPropType:s,data:a,dataTypes:o,propertyName:g}){if(a!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:p}=t;if(r!==void 0){let{errorPath:m,dataPathArr:y,opts:B}=t,v=p.let("data",(0,yK._)`${t.data}${(0,yK.getProperty)(r)}`,!0);f(v),e.errorPath=(0,yK.str)`${m}${(0,PNi.getErrorPath)(r,s,B.jsPropertySyntax)}`,e.parentDataProperty=(0,yK._)`${r}`,e.dataPathArr=[...y,e.parentDataProperty]}if(a!==void 0){let m=a instanceof yK.Name?a:p.let("data",a,!0);f(m),g!==void 0&&(e.propertyName=g)}o&&(e.dataTypes=o);function f(m){e.data=m,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,m]}}Soe.extendSubschemaData=nXa;function iXa(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:s,createErrors:a,allErrors:o}){s!==void 0&&(e.compositeRule=s),a!==void 0&&(e.createErrors=a),o!==void 0&&(e.allErrors=o),e.jtdDiscriminator=t,e.jtdMetadata=r}Soe.extendSubschemaMode=iXa});var Z0r=z((XZl,QNi)=>{"use strict";QNi.exports=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var s,a,o;if(Array.isArray(t)){if(s=t.length,s!=r.length)return!1;for(a=s;a--!==0;)if(!e(t[a],r[a]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(o=Object.keys(t),s=o.length,s!==Object.keys(r).length)return!1;for(a=s;a--!==0;)if(!Object.prototype.hasOwnProperty.call(r,o[a]))return!1;for(a=s;a--!==0;){var g=o[a];if(!e(t[g],r[g]))return!1}return!0}return t!==t&&r!==r}});var HNi=z((JZl,MNi)=>{"use strict";var woe=MNi.exports=function(e,t,r){typeof t=="function"&&(r=t,t={}),r=t.cb||r;var s=typeof r=="function"?r:r.pre||function(){},a=r.post||function(){};Uyt(t,s,a,e,"",e)};woe.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};woe.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};woe.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};woe.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function Uyt(e,t,r,s,a,o,g,p,f,m){if(s&&typeof s=="object"&&!Array.isArray(s)){t(s,a,o,g,p,f,m);for(var y in s){var B=s[y];if(Array.isArray(B)){if(y in woe.arrayKeywords)for(var v=0;v{"use strict";Object.defineProperty(E9,"__esModule",{value:!0});E9.getSchemaRefs=E9.resolveUrl=E9.normalizeId=E9._getFullPath=E9.getFullPath=E9.inlineRef=void 0;var oXa=Hh(),aXa=Z0r(),cXa=HNi(),lXa=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function uXa(e,t=!0){return typeof e=="boolean"?!0:t===!0?!L0r(e):t?YNi(e)<=t:!1}E9.inlineRef=uXa;var gXa=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function L0r(e){for(let t in e){if(gXa.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(L0r)||typeof r=="object"&&L0r(r))return!0}return!1}function YNi(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!lXa.has(r)&&(typeof e[r]=="object"&&(0,oXa.eachItem)(e[r],s=>t+=YNi(s)),t===1/0))return 1/0}return t}function XNi(e,t="",r){r!==!1&&(t=Qwe(t));let s=e.parse(t);return JNi(e,s)}E9.getFullPath=XNi;function JNi(e,t){return e.serialize(t).split("#")[0]+"#"}E9._getFullPath=JNi;var AXa=/#\/?$/;function Qwe(e){return e?e.replace(AXa,""):""}E9.normalizeId=Qwe;function dXa(e,t,r){return r=Qwe(r),e.resolve(t,r)}E9.resolveUrl=dXa;var pXa=/^[a-z_][-a-z0-9._]*$/i;function fXa(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:s}=this.opts,a=Qwe(e[r]||t),o={"":a},g=XNi(s,a,!1),p={},f=new Set;return cXa(e,{allKeys:!0},(B,v,k,T)=>{if(T===void 0)return;let O=g+v,X=o[T];typeof B[r]=="string"&&(X=U.call(this,B[r])),le.call(this,B.$anchor),le.call(this,B.$dynamicAnchor),o[v]=X;function U(ae){let ge=this.opts.uriResolver.resolve;if(ae=Qwe(X?ge(X,ae):ae),f.has(ae))throw y(ae);f.add(ae);let fe=this.refs[ae];return typeof fe=="string"&&(fe=this.refs[fe]),typeof fe=="object"?m(B,fe.schema,ae):ae!==Qwe(O)&&(ae[0]==="#"?(m(B,p[ae],ae),p[ae]=B):this.refs[ae]=O),ae}function le(ae){if(typeof ae=="string"){if(!pXa.test(ae))throw new Error(`invalid anchor "${ae}"`);U.call(this,`#${ae}`)}}}),p;function m(B,v,k){if(v!==void 0&&!aXa(B,v))throw y(k)}function y(B){return new Error(`reference "${B}" resolves to more than one schema`)}}E9.getSchemaRefs=fXa});var WYe=z(Toe=>{"use strict";Object.defineProperty(Toe,"__esModule",{value:!0});Toe.getData=Toe.KeywordCxt=Toe.validateFunctionCode=void 0;var qNi=wNi(),UNi=FYe(),W0r=N0r(),Kyt=FYe(),IXa=GNi(),VYe=WNi(),V0r=ONi(),Td=TC(),eI=Cq(),CXa=ZYe(),mq=Hh(),LYe=GYe();function mXa(e){if(tRi(e)&&(rRi(e),eRi(e))){yXa(e);return}$Ni(e,()=>(0,qNi.topBoolOrEmptySchema)(e))}Toe.validateFunctionCode=mXa;function $Ni({gen:e,validateName:t,schema:r,schemaEnv:s,opts:a},o){a.code.es5?e.func(t,(0,Td._)`${eI.default.data}, ${eI.default.valCxt}`,s.$async,()=>{e.code((0,Td._)`"use strict"; ${KNi(r,a)}`),_Xa(e,a),e.code(o)}):e.func(t,(0,Td._)`${eI.default.data}, ${hXa(a)}`,s.$async,()=>e.code(KNi(r,a)).code(o))}function hXa(e){return(0,Td._)`{${eI.default.instancePath}="", ${eI.default.parentData}, ${eI.default.parentDataProperty}, ${eI.default.rootData}=${eI.default.data}${e.dynamicRef?(0,Td._)`, ${eI.default.dynamicAnchors}={}`:Td.nil}}={}`}function _Xa(e,t){e.if(eI.default.valCxt,()=>{e.var(eI.default.instancePath,(0,Td._)`${eI.default.valCxt}.${eI.default.instancePath}`),e.var(eI.default.parentData,(0,Td._)`${eI.default.valCxt}.${eI.default.parentData}`),e.var(eI.default.parentDataProperty,(0,Td._)`${eI.default.valCxt}.${eI.default.parentDataProperty}`),e.var(eI.default.rootData,(0,Td._)`${eI.default.valCxt}.${eI.default.rootData}`),t.dynamicRef&&e.var(eI.default.dynamicAnchors,(0,Td._)`${eI.default.valCxt}.${eI.default.dynamicAnchors}`)},()=>{e.var(eI.default.instancePath,(0,Td._)`""`),e.var(eI.default.parentData,(0,Td._)`undefined`),e.var(eI.default.parentDataProperty,(0,Td._)`undefined`),e.var(eI.default.rootData,eI.default.data),t.dynamicRef&&e.var(eI.default.dynamicAnchors,(0,Td._)`{}`)})}function yXa(e){let{schema:t,opts:r,gen:s}=e;$Ni(e,()=>{r.$comment&&t.$comment&&iRi(e),SXa(e),s.let(eI.default.vErrors,null),s.let(eI.default.errors,0),r.unevaluated&&bXa(e),nRi(e),NXa(e)})}function bXa(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0,Td._)`${r}.evaluated`),t.if((0,Td._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,Td._)`${e.evaluated}.props`,(0,Td._)`undefined`)),t.if((0,Td._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,Td._)`${e.evaluated}.items`,(0,Td._)`undefined`))}function KNi(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0,Td._)`/*# sourceURL=${r} */`:Td.nil}function EXa(e,t){if(tRi(e)&&(rRi(e),eRi(e))){BXa(e,t);return}(0,qNi.boolOrEmptySchema)(e,t)}function eRi({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function tRi(e){return typeof e.schema!="boolean"}function BXa(e,t){let{schema:r,gen:s,opts:a}=e;a.$comment&&r.$comment&&iRi(e),wXa(e),TXa(e);let o=s.const("_errs",eI.default.errors);nRi(e,o),s.var(t,(0,Td._)`${o} === ${eI.default.errors}`)}function rRi(e){(0,mq.checkUnknownRules)(e),vXa(e)}function nRi(e,t){if(e.opts.jtd)return jNi(e,[],!1,t);let r=(0,UNi.getSchemaTypes)(e.schema),s=(0,UNi.coerceAndCheckDataType)(e,r);jNi(e,r,!s,t)}function vXa(e){let{schema:t,errSchemaPath:r,opts:s,self:a}=e;t.$ref&&s.ignoreKeywordsWithRef&&(0,mq.schemaHasRulesButRef)(t,a.RULES)&&a.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function SXa(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,mq.checkStrictMode)(e,"default is ignored in the schema root")}function wXa(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,CXa.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function TXa(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function iRi({gen:e,schemaEnv:t,schema:r,errSchemaPath:s,opts:a}){let o=r.$comment;if(a.$comment===!0)e.code((0,Td._)`${eI.default.self}.logger.log(${o})`);else if(typeof a.$comment=="function"){let g=(0,Td.str)`${s}/$comment`,p=e.scopeValue("root",{ref:t.root});e.code((0,Td._)`${eI.default.self}.opts.$comment(${o}, ${g}, ${p}.schema)`)}}function NXa(e){let{gen:t,schemaEnv:r,validateName:s,ValidationError:a,opts:o}=e;r.$async?t.if((0,Td._)`${eI.default.errors} === 0`,()=>t.return(eI.default.data),()=>t.throw((0,Td._)`new ${a}(${eI.default.vErrors})`)):(t.assign((0,Td._)`${s}.errors`,eI.default.vErrors),o.unevaluated&&RXa(e),t.return((0,Td._)`${eI.default.errors} === 0`))}function RXa({gen:e,evaluated:t,props:r,items:s}){r instanceof Td.Name&&e.assign((0,Td._)`${t}.props`,r),s instanceof Td.Name&&e.assign((0,Td._)`${t}.items`,s)}function jNi(e,t,r,s){let{gen:a,schema:o,data:g,allErrors:p,opts:f,self:m}=e,{RULES:y}=m;if(o.$ref&&(f.ignoreKeywordsWithRef||!(0,mq.schemaHasRulesButRef)(o,y))){a.block(()=>oRi(e,"$ref",y.all.$ref.definition));return}f.jtd||DXa(e,t),a.block(()=>{for(let v of y.rules)B(v);B(y.post)});function B(v){(0,W0r.shouldUseGroup)(o,v)&&(v.type?(a.if((0,Kyt.checkDataType)(v.type,g,f.strictNumbers)),zNi(e,v),t.length===1&&t[0]===v.type&&r&&(a.else(),(0,Kyt.reportTypeError)(e)),a.endIf()):zNi(e,v),p||a.if((0,Td._)`${eI.default.errors} === ${s||0}`))}}function zNi(e,t){let{gen:r,schema:s,opts:{useDefaults:a}}=e;a&&(0,IXa.assignDefaults)(e,t.type),r.block(()=>{for(let o of t.rules)(0,W0r.shouldUseRule)(s,o)&&oRi(e,o.keyword,o.definition,t.type)})}function DXa(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(xXa(e,t),e.opts.allowUnionTypes||kXa(e,t),GXa(e,e.dataTypes))}function xXa(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{sRi(e.dataTypes,r)||P0r(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),ZXa(e,t)}}function kXa(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&P0r(e,"use allowUnionTypes to allow union type keyword")}function GXa(e,t){let r=e.self.RULES.all;for(let s in r){let a=r[s];if(typeof a=="object"&&(0,W0r.shouldUseRule)(e.schema,a)){let{type:o}=a.definition;o.length&&!o.some(g=>FXa(t,g))&&P0r(e,`missing type "${o.join(",")}" for keyword "${s}"`)}}}function FXa(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function sRi(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function ZXa(e,t){let r=[];for(let s of e.dataTypes)sRi(t,s)?r.push(s):t.includes("integer")&&s==="number"&&r.push("integer");e.dataTypes=r}function P0r(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,mq.checkStrictMode)(e,t,e.opts.strictTypes)}var jyt=class{constructor(t,r,s){if((0,VYe.validateKeywordUsage)(t,r,s),this.gen=t.gen,this.allErrors=t.allErrors,this.keyword=s,this.data=t.data,this.schema=t.schema[s],this.$data=r.$data&&t.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,mq.schemaRefOrVal)(t,this.schema,s,this.$data),this.schemaType=r.schemaType,this.parentSchema=t.schema,this.params={},this.it=t,this.def=r,this.$data)this.schemaCode=t.gen.const("vSchema",aRi(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,VYe.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${s} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=t.gen.const("_errs",eI.default.errors))}result(t,r,s){this.failResult((0,Td.not)(t),r,s)}failResult(t,r,s){this.gen.if(t),s?s():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(t,r){this.failResult((0,Td.not)(t),void 0,r)}fail(t){if(t===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(t),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(t){if(!this.$data)return this.fail(t);let{schemaCode:r}=this;this.fail((0,Td._)`${r} !== undefined && (${(0,Td.or)(this.invalid$data(),t)})`)}error(t,r,s){if(r){this.setParams(r),this._error(t,s),this.setParams({});return}this._error(t,s)}_error(t,r){(t?LYe.reportExtraError:LYe.reportError)(this,this.def.error,r)}$dataError(){(0,LYe.reportError)(this,this.def.$dataError||LYe.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,LYe.resetErrorsCount)(this.gen,this.errsCount)}ok(t){this.allErrors||this.gen.if(t)}setParams(t,r){r?Object.assign(this.params,t):this.params=t}block$data(t,r,s=Td.nil){this.gen.block(()=>{this.check$data(t,s),r()})}check$data(t=Td.nil,r=Td.nil){if(!this.$data)return;let{gen:s,schemaCode:a,schemaType:o,def:g}=this;s.if((0,Td.or)((0,Td._)`${a} === undefined`,r)),t!==Td.nil&&s.assign(t,!0),(o.length||g.validateSchema)&&(s.elseIf(this.invalid$data()),this.$dataError(),t!==Td.nil&&s.assign(t,!1)),s.else()}invalid$data(){let{gen:t,schemaCode:r,schemaType:s,def:a,it:o}=this;return(0,Td.or)(g(),p());function g(){if(s.length){if(!(r instanceof Td.Name))throw new Error("ajv implementation error");let f=Array.isArray(s)?s:[s];return(0,Td._)`${(0,Kyt.checkDataTypes)(f,r,o.opts.strictNumbers,Kyt.DataType.Wrong)}`}return Td.nil}function p(){if(a.validateSchema){let f=t.scopeValue("validate$data",{ref:a.validateSchema});return(0,Td._)`!${f}(${r})`}return Td.nil}}subschema(t,r){let s=(0,V0r.getSubschema)(this.it,t);(0,V0r.extendSubschemaData)(s,this.it,t),(0,V0r.extendSubschemaMode)(s,t);let a={...this.it,...s,items:void 0,props:void 0};return EXa(a,r),a}mergeEvaluated(t,r){let{it:s,gen:a}=this;s.opts.unevaluated&&(s.props!==!0&&t.props!==void 0&&(s.props=mq.mergeEvaluated.props(a,t.props,s.props,r)),s.items!==!0&&t.items!==void 0&&(s.items=mq.mergeEvaluated.items(a,t.items,s.items,r)))}mergeValidEvaluated(t,r){let{it:s,gen:a}=this;if(s.opts.unevaluated&&(s.props!==!0||s.items!==!0))return a.if(r,()=>this.mergeEvaluated(t,Td.Name)),!0}};Toe.KeywordCxt=jyt;function oRi(e,t,r,s){let a=new jyt(e,r,t);"code"in r?r.code(a,s):a.$data&&r.validate?(0,VYe.funcKeywordCode)(a,r):"macro"in r?(0,VYe.macroKeywordCode)(a,r):(r.compile||r.validate)&&(0,VYe.funcKeywordCode)(a,r)}var LXa=/^\/(?:[^~]|~0|~1)*$/,VXa=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function aRi(e,{dataLevel:t,dataNames:r,dataPathArr:s}){let a,o;if(e==="")return eI.default.rootData;if(e[0]==="/"){if(!LXa.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);a=e,o=eI.default.rootData}else{let m=VXa.exec(e);if(!m)throw new Error(`Invalid JSON-pointer: ${e}`);let y=+m[1];if(a=m[2],a==="#"){if(y>=t)throw new Error(f("property/index",y));return s[t-y]}if(y>t)throw new Error(f("data",y));if(o=r[t-y],!a)return o}let g=o,p=a.split("/");for(let m of p)m&&(o=(0,Td._)`${o}${(0,Td.getProperty)((0,mq.unescapeJsonPointer)(m))}`,g=(0,Td._)`${g} && ${o}`);return g;function f(m,y){return`Cannot access ${m} ${y} levels up, current level is ${t}`}}Toe.getData=aRi});var zyt=z(Q0r=>{"use strict";Object.defineProperty(Q0r,"__esModule",{value:!0});var O0r=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}};Q0r.default=O0r});var PYe=z(Y0r=>{"use strict";Object.defineProperty(Y0r,"__esModule",{value:!0});var M0r=ZYe(),H0r=class extends Error{constructor(t,r,s,a){super(a||`can't resolve reference ${s} from id ${r}`),this.missingRef=(0,M0r.resolveUrl)(t,r,s),this.missingSchema=(0,M0r.normalizeId)((0,M0r.getFullPath)(t,this.missingRef))}};Y0r.default=H0r});var $yt=z(OQ=>{"use strict";Object.defineProperty(OQ,"__esModule",{value:!0});OQ.resolveSchema=OQ.getCompilingSchema=OQ.resolveRef=OQ.compileSchema=OQ.SchemaEnv=void 0;var kY=TC(),WXa=zyt(),FIe=Cq(),GY=ZYe(),cRi=Hh(),PXa=WYe(),Mwe=class{constructor(t){var r;this.refs={},this.dynamicAnchors={};let s;typeof t.schema=="object"&&(s=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0,GY.normalizeId)(s?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=s?.$async,this.refs={}}};OQ.SchemaEnv=Mwe;function J0r(e){let t=lRi.call(this,e);if(t)return t;let r=(0,GY.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:s,lines:a}=this.opts.code,{ownProperties:o}=this.opts,g=new kY.CodeGen(this.scope,{es5:s,lines:a,ownProperties:o}),p;e.$async&&(p=g.scopeValue("Error",{ref:WXa.default,code:(0,kY._)`require("ajv/dist/runtime/validation_error").default`}));let f=g.scopeName("validate");e.validateName=f;let m={gen:g,allErrors:this.opts.allErrors,data:FIe.default.data,parentData:FIe.default.parentData,parentDataProperty:FIe.default.parentDataProperty,dataNames:[FIe.default.data],dataPathArr:[kY.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:g.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:(0,kY.stringify)(e.schema)}:{ref:e.schema}),validateName:f,ValidationError:p,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:kY.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,kY._)`""`,opts:this.opts,self:this},y;try{this._compilations.add(e),(0,PXa.validateFunctionCode)(m),g.optimize(this.opts.code.optimize);let B=g.toString();y=`${g.scopeRefs(FIe.default.scope)}return ${B}`,this.opts.code.process&&(y=this.opts.code.process(y,e));let k=new Function(`${FIe.default.self}`,`${FIe.default.scope}`,y)(this,this.scope.get());if(this.scope.value(f,{ref:k}),k.errors=null,k.schema=e.schema,k.schemaEnv=e,e.$async&&(k.$async=!0),this.opts.code.source===!0&&(k.source={validateName:f,validateCode:B,scopeValues:g._values}),this.opts.unevaluated){let{props:T,items:O}=m;k.evaluated={props:T instanceof kY.Name?void 0:T,items:O instanceof kY.Name?void 0:O,dynamicProps:T instanceof kY.Name,dynamicItems:O instanceof kY.Name},k.source&&(k.source.evaluated=(0,kY.stringify)(k.evaluated))}return e.validate=k,e}catch(B){throw delete e.validate,delete e.validateName,y&&this.logger.error("Error compiling schema, function code:",y),B}finally{this._compilations.delete(e)}}OQ.compileSchema=J0r;function OXa(e,t,r){var s;r=(0,GY.resolveUrl)(this.opts.uriResolver,t,r);let a=e.refs[r];if(a)return a;let o=HXa.call(this,e,r);if(o===void 0){let g=(s=e.localRefs)===null||s===void 0?void 0:s[r],{schemaId:p}=this.opts;g&&(o=new Mwe({schema:g,schemaId:p,root:e,baseId:t}))}if(o!==void 0)return e.refs[r]=QXa.call(this,o)}OQ.resolveRef=OXa;function QXa(e){return(0,GY.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:J0r.call(this,e)}function lRi(e){for(let t of this._compilations)if(MXa(t,e))return t}OQ.getCompilingSchema=lRi;function MXa(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function HXa(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||qyt.call(this,e,t)}function qyt(e,t){let r=this.opts.uriResolver.parse(t),s=(0,GY._getFullPath)(this.opts.uriResolver,r),a=(0,GY.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&s===a)return X0r.call(this,r,e);let o=(0,GY.normalizeId)(s),g=this.refs[o]||this.schemas[o];if(typeof g=="string"){let p=qyt.call(this,e,g);return typeof p?.schema!="object"?void 0:X0r.call(this,r,p)}if(typeof g?.schema=="object"){if(g.validate||J0r.call(this,g),o===(0,GY.normalizeId)(t)){let{schema:p}=g,{schemaId:f}=this.opts,m=p[f];return m&&(a=(0,GY.resolveUrl)(this.opts.uriResolver,a,m)),new Mwe({schema:p,schemaId:f,root:e,baseId:a})}return X0r.call(this,r,g)}}OQ.resolveSchema=qyt;var YXa=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function X0r(e,{baseId:t,schema:r,root:s}){var a;if(((a=e.fragment)===null||a===void 0?void 0:a[0])!=="/")return;for(let p of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let f=r[(0,cRi.unescapeFragment)(p)];if(f===void 0)return;r=f;let m=typeof r=="object"&&r[this.opts.schemaId];!YXa.has(p)&&m&&(t=(0,GY.resolveUrl)(this.opts.uriResolver,t,m))}let o;if(typeof r!="boolean"&&r.$ref&&!(0,cRi.schemaHasRulesButRef)(r,this.RULES)){let p=(0,GY.resolveUrl)(this.opts.uriResolver,t,r.$ref);o=qyt.call(this,s,p)}let{schemaId:g}=this.opts;if(o=o||new Mwe({schema:r,schemaId:g,root:s,baseId:t}),o.schema!==o.root.schema)return o}});var uRi=z(($Zl,XXa)=>{XXa.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var ARi=z((eLl,gRi)=>{"use strict";var JXa={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};gRi.exports={HEX:JXa}});var _Ri=z((tLl,hRi)=>{"use strict";var{HEX:UXa}=ARi();function IRi(e){if(mRi(e,".")<3)return{host:e,isIPV4:!1};let t=e.match(/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/u)||[],[r]=t;return r?{host:jXa(r,"."),isIPV4:!0}:{host:e,isIPV4:!1}}function U0r(e,t=!1){let r="",s=!0;for(let a of e){if(UXa[a]===void 0)return;a!=="0"&&s===!0&&(s=!1),s||(r+=a)}return t&&r.length===0&&(r="0"),r}function KXa(e){let t=0,r={error:!1,address:"",zone:""},s=[],a=[],o=!1,g=!1,p=!1;function f(){if(a.length){if(o===!1){let m=U0r(a);if(m!==void 0)s.push(m);else return r.error=!0,!1}a.length=0}return!0}for(let m=0;m7){r.error=!0;break}m-1>=0&&e[m-1]===":"&&(g=!0);continue}else if(y==="%"){if(!f())break;o=!0}else{a.push(y);continue}}return a.length&&(o?r.zone=a.join(""):p?s.push(a.join("")):s.push(U0r(a))),r.address=s.join(""),r}function CRi(e,t={}){if(mRi(e,":")<2)return{host:e,isIPV6:!1};let r=KXa(e);if(r.error)return{host:e,isIPV6:!1};{let s=r.address,a=r.address;return r.zone&&(s+="%"+r.zone,a+="%25"+r.zone),{host:s,escapedHost:a,isIPV6:!0}}}function jXa(e,t){let r="",s=!0,a=e.length;for(let o=0;o{"use strict";var t4a=/^[\da-f]{8}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{12}$/iu,r4a=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function yRi(e){return typeof e.secure=="boolean"?e.secure:String(e.scheme).toLowerCase()==="wss"}function bRi(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function ERi(e){let t=String(e.scheme).toLowerCase()==="https";return(e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function n4a(e){return e.secure=yRi(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function i4a(e){if((e.port===(yRi(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function s4a(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(r4a);if(r){let s=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let a=`${s}:${t.nid||e.nid}`,o=K0r[a];e.path=void 0,o&&(e=o.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function o4a(e,t){let r=t.scheme||e.scheme||"urn",s=e.nid.toLowerCase(),a=`${r}:${t.nid||s}`,o=K0r[a];o&&(e=o.serialize(e,t));let g=e,p=e.nss;return g.path=`${s||t.nid}:${p}`,t.skipEscape=!0,g}function a4a(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!t4a.test(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function c4a(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var BRi={scheme:"http",domainHost:!0,parse:bRi,serialize:ERi},l4a={scheme:"https",domainHost:BRi.domainHost,parse:bRi,serialize:ERi},ebt={scheme:"ws",domainHost:!0,parse:n4a,serialize:i4a},u4a={scheme:"wss",domainHost:ebt.domainHost,parse:ebt.parse,serialize:ebt.serialize},g4a={scheme:"urn",parse:s4a,serialize:o4a,skipNormalize:!0},A4a={scheme:"urn:uuid",parse:a4a,serialize:c4a,skipNormalize:!0},K0r={http:BRi,https:l4a,ws:ebt,wss:u4a,urn:g4a,"urn:uuid":A4a};vRi.exports=K0r});var TRi=z((nLl,rbt)=>{"use strict";var{normalizeIPv6:d4a,normalizeIPv4:p4a,removeDotSegments:OYe,recomposeAuthority:f4a,normalizeComponentEncoding:tbt}=_Ri(),j0r=SRi();function I4a(e,t){return typeof e=="string"?e=bK(hq(e,t),t):typeof e=="object"&&(e=hq(bK(e,t),t)),e}function C4a(e,t,r){let s=Object.assign({scheme:"null"},r),a=wRi(hq(e,s),hq(t,s),s,!0);return bK(a,{...s,skipEscape:!0})}function wRi(e,t,r,s){let a={};return s||(e=hq(bK(e,r),r),t=hq(bK(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(a.scheme=t.scheme,a.userinfo=t.userinfo,a.host=t.host,a.port=t.port,a.path=OYe(t.path||""),a.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(a.userinfo=t.userinfo,a.host=t.host,a.port=t.port,a.path=OYe(t.path||""),a.query=t.query):(t.path?(t.path.charAt(0)==="/"?a.path=OYe(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?a.path="/"+t.path:e.path?a.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:a.path=t.path,a.path=OYe(a.path)),a.query=t.query):(a.path=e.path,t.query!==void 0?a.query=t.query:a.query=e.query),a.userinfo=e.userinfo,a.host=e.host,a.port=e.port),a.scheme=e.scheme),a.fragment=t.fragment,a}function m4a(e,t,r){return typeof e=="string"?(e=unescape(e),e=bK(tbt(hq(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=bK(tbt(e,!0),{...r,skipEscape:!0})),typeof t=="string"?(t=unescape(t),t=bK(tbt(hq(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=bK(tbt(t,!0),{...r,skipEscape:!0})),e.toLowerCase()===t.toLowerCase()}function bK(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},s=Object.assign({},t),a=[],o=j0r[(s.scheme||r.scheme||"").toLowerCase()];o&&o.serialize&&o.serialize(r,s),r.path!==void 0&&(s.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),s.reference!=="suffix"&&r.scheme&&a.push(r.scheme,":");let g=f4a(r,s);if(g!==void 0&&(s.reference!=="suffix"&&a.push("//"),a.push(g),r.path&&r.path.charAt(0)!=="/"&&a.push("/")),r.path!==void 0){let p=r.path;!s.absolutePath&&(!o||!o.absolutePath)&&(p=OYe(p)),g===void 0&&(p=p.replace(/^\/\//u,"/%2F")),a.push(p)}return r.query!==void 0&&a.push("?",r.query),r.fragment!==void 0&&a.push("#",r.fragment),a.join("")}var h4a=Array.from({length:127},(e,t)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(t)));function _4a(e){let t=0;for(let r=0,s=e.length;r126||h4a[t])return!0;return!1}var y4a=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function hq(e,t){let r=Object.assign({},t),s={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},a=e.indexOf("%")!==-1,o=!1;r.reference==="suffix"&&(e=(r.scheme?r.scheme+":":"")+"//"+e);let g=e.match(y4a);if(g){if(s.scheme=g[1],s.userinfo=g[3],s.host=g[4],s.port=parseInt(g[5],10),s.path=g[6]||"",s.query=g[7],s.fragment=g[8],isNaN(s.port)&&(s.port=g[5]),s.host){let f=p4a(s.host);if(f.isIPV4===!1){let m=d4a(f.host,{isIPV4:!1});s.host=m.host.toLowerCase(),o=m.isIPV6}else s.host=f.host,o=!0}s.scheme===void 0&&s.userinfo===void 0&&s.host===void 0&&s.port===void 0&&!s.path&&s.query===void 0?s.reference="same-document":s.scheme===void 0?s.reference="relative":s.fragment===void 0?s.reference="absolute":s.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==s.reference&&(s.error=s.error||"URI is not a "+r.reference+" reference.");let p=j0r[(r.scheme||s.scheme||"").toLowerCase()];if(!r.unicodeSupport&&(!p||!p.unicodeSupport)&&s.host&&(r.domainHost||p&&p.domainHost)&&o===!1&&_4a(s.host))try{s.host=URL.domainToASCII(s.host.toLowerCase())}catch(f){s.error=s.error||"Host's domain name can not be converted to ASCII: "+f}(!p||p&&!p.skipNormalize)&&(a&&s.scheme!==void 0&&(s.scheme=unescape(s.scheme)),a&&s.host!==void 0&&(s.host=unescape(s.host)),s.path!==void 0&&s.path.length&&(s.path=escape(unescape(s.path))),s.fragment!==void 0&&s.fragment.length&&(s.fragment=encodeURI(decodeURIComponent(s.fragment)))),p&&p.parse&&p.parse(s,r)}else s.error=s.error||"URI can not be parsed.";return s}var z0r={SCHEMES:j0r,normalize:I4a,resolve:C4a,resolveComponents:wRi,equal:m4a,serialize:bK,parse:hq};rbt.exports=z0r;rbt.exports.default=z0r;rbt.exports.fastUri=z0r});var RRi=z(q0r=>{"use strict";Object.defineProperty(q0r,"__esModule",{value:!0});var NRi=TRi();NRi.code='require("ajv/dist/runtime/uri").default';q0r.default=NRi});var VRi=z(ox=>{"use strict";Object.defineProperty(ox,"__esModule",{value:!0});ox.CodeGen=ox.Name=ox.nil=ox.stringify=ox.str=ox._=ox.KeywordCxt=void 0;var b4a=WYe();Object.defineProperty(ox,"KeywordCxt",{enumerable:!0,get:function(){return b4a.KeywordCxt}});var Hwe=TC();Object.defineProperty(ox,"_",{enumerable:!0,get:function(){return Hwe._}});Object.defineProperty(ox,"str",{enumerable:!0,get:function(){return Hwe.str}});Object.defineProperty(ox,"stringify",{enumerable:!0,get:function(){return Hwe.stringify}});Object.defineProperty(ox,"nil",{enumerable:!0,get:function(){return Hwe.nil}});Object.defineProperty(ox,"Name",{enumerable:!0,get:function(){return Hwe.Name}});Object.defineProperty(ox,"CodeGen",{enumerable:!0,get:function(){return Hwe.CodeGen}});var E4a=zyt(),FRi=PYe(),B4a=T0r(),QYe=$yt(),v4a=TC(),MYe=ZYe(),nbt=FYe(),eyr=Hh(),DRi=uRi(),S4a=RRi(),ZRi=(e,t)=>new RegExp(e,t);ZRi.code="new RegExp";var w4a=["removeAdditional","useDefaults","coerceTypes"],T4a=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),N4a={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},R4a={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},xRi=200;function D4a(e){var t,r,s,a,o,g,p,f,m,y,B,v,k,T,O,X,U,le,ae,ge,fe,pe,he,be,Te;let ke=e.strict,x=(t=e.code)===null||t===void 0?void 0:t.optimize,et=x===!0||x===void 0?1:x||0,Ue=(s=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&s!==void 0?s:ZRi,Je=(a=e.uriResolver)!==null&&a!==void 0?a:S4a.default;return{strictSchema:(g=(o=e.strictSchema)!==null&&o!==void 0?o:ke)!==null&&g!==void 0?g:!0,strictNumbers:(f=(p=e.strictNumbers)!==null&&p!==void 0?p:ke)!==null&&f!==void 0?f:!0,strictTypes:(y=(m=e.strictTypes)!==null&&m!==void 0?m:ke)!==null&&y!==void 0?y:"log",strictTuples:(v=(B=e.strictTuples)!==null&&B!==void 0?B:ke)!==null&&v!==void 0?v:"log",strictRequired:(T=(k=e.strictRequired)!==null&&k!==void 0?k:ke)!==null&&T!==void 0?T:!1,code:e.code?{...e.code,optimize:et,regExp:Ue}:{optimize:et,regExp:Ue},loopRequired:(O=e.loopRequired)!==null&&O!==void 0?O:xRi,loopEnum:(X=e.loopEnum)!==null&&X!==void 0?X:xRi,meta:(U=e.meta)!==null&&U!==void 0?U:!0,messages:(le=e.messages)!==null&&le!==void 0?le:!0,inlineRefs:(ae=e.inlineRefs)!==null&&ae!==void 0?ae:!0,schemaId:(ge=e.schemaId)!==null&&ge!==void 0?ge:"$id",addUsedSchema:(fe=e.addUsedSchema)!==null&&fe!==void 0?fe:!0,validateSchema:(pe=e.validateSchema)!==null&&pe!==void 0?pe:!0,validateFormats:(he=e.validateFormats)!==null&&he!==void 0?he:!0,unicodeRegExp:(be=e.unicodeRegExp)!==null&&be!==void 0?be:!0,int32range:(Te=e.int32range)!==null&&Te!==void 0?Te:!0,uriResolver:Je}}var HYe=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...D4a(t)};let{es5:r,lines:s}=this.opts.code;this.scope=new v4a.ValueScope({scope:{},prefixes:T4a,es5:r,lines:s}),this.logger=L4a(t.logger);let a=t.validateFormats;t.validateFormats=!1,this.RULES=(0,B4a.getRules)(),kRi.call(this,N4a,t,"NOT SUPPORTED"),kRi.call(this,R4a,t,"DEPRECATED","warn"),this._metaOpts=F4a.call(this),t.formats&&k4a.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&G4a.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),x4a.call(this),t.validateFormats=a}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:s}=this.opts,a=DRi;s==="id"&&(a={...DRi},a.id=a.$id,delete a.$id),r&&t&&this.addMetaSchema(a,a[s],!1)}defaultMeta(){let{meta:t,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof t=="object"?t[r]||t:void 0}validate(t,r){let s;if(typeof t=="string"){if(s=this.getSchema(t),!s)throw new Error(`no schema with key or ref "${t}"`)}else s=this.compile(t);let a=s(r);return"$async"in s||(this.errors=s.errors),a}compile(t,r){let s=this._addSchema(t,r);return s.validate||this._compileSchemaEnv(s)}compileAsync(t,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:s}=this.opts;return a.call(this,t,r);async function a(y,B){await o.call(this,y.$schema);let v=this._addSchema(y,B);return v.validate||g.call(this,v)}async function o(y){y&&!this.getSchema(y)&&await a.call(this,{$ref:y},!0)}async function g(y){try{return this._compileSchemaEnv(y)}catch(B){if(!(B instanceof FRi.default))throw B;return p.call(this,B),await f.call(this,B.missingSchema),g.call(this,y)}}function p({missingSchema:y,missingRef:B}){if(this.refs[y])throw new Error(`AnySchema ${y} is loaded but ${B} cannot be resolved`)}async function f(y){let B=await m.call(this,y);this.refs[y]||await o.call(this,B.$schema),this.refs[y]||this.addSchema(B,y,r)}async function m(y){let B=this._loading[y];if(B)return B;try{return await(this._loading[y]=s(y))}finally{delete this._loading[y]}}}addSchema(t,r,s,a=this.opts.validateSchema){if(Array.isArray(t)){for(let g of t)this.addSchema(g,void 0,s,a);return this}let o;if(typeof t=="object"){let{schemaId:g}=this.opts;if(o=t[g],o!==void 0&&typeof o!="string")throw new Error(`schema ${g} must be string`)}return r=(0,MYe.normalizeId)(r||o),this._checkUnique(r),this.schemas[r]=this._addSchema(t,s,r,a,!0),this}addMetaSchema(t,r,s=this.opts.validateSchema){return this.addSchema(t,r,!0,s),this}validateSchema(t,r){if(typeof t=="boolean")return!0;let s;if(s=t.$schema,s!==void 0&&typeof s!="string")throw new Error("$schema must be a string");if(s=s||this.opts.defaultMeta||this.defaultMeta(),!s)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let a=this.validate(s,t);if(!a&&r){let o="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(o);else throw new Error(o)}return a}getSchema(t){let r;for(;typeof(r=GRi.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:s}=this.opts,a=new QYe.SchemaEnv({schema:{},schemaId:s});if(r=QYe.resolveSchema.call(this,a,t),!r)return;this.refs[t]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(t){if(t instanceof RegExp)return this._removeAllSchemas(this.schemas,t),this._removeAllSchemas(this.refs,t),this;switch(typeof t){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=GRi.call(this,t);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[t],delete this.refs[t],this}case"object":{let r=t;this._cache.delete(r);let s=t[this.opts.schemaId];return s&&(s=(0,MYe.normalizeId)(s),delete this.schemas[s],delete this.refs[s]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(t){for(let r of t)this.addKeyword(r);return this}addKeyword(t,r){let s;if(typeof t=="string")s=t,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=s);else if(typeof t=="object"&&r===void 0){if(r=t,s=r.keyword,Array.isArray(s)&&!s.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(W4a.call(this,s,r),!r)return(0,eyr.eachItem)(s,o=>$0r.call(this,o)),this;O4a.call(this,r);let a={...r,type:(0,nbt.getJSONTypes)(r.type),schemaType:(0,nbt.getJSONTypes)(r.schemaType)};return(0,eyr.eachItem)(s,a.type.length===0?o=>$0r.call(this,o,a):o=>a.type.forEach(g=>$0r.call(this,o,a,g))),this}getKeyword(t){let r=this.RULES.all[t];return typeof r=="object"?r.definition:!!r}removeKeyword(t){let{RULES:r}=this;delete r.keywords[t],delete r.all[t];for(let s of r.rules){let a=s.rules.findIndex(o=>o.keyword===t);a>=0&&s.rules.splice(a,1)}return this}addFormat(t,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[t]=r,this}errorsText(t=this.errors,{separator:r=", ",dataVar:s="data"}={}){return!t||t.length===0?"No errors":t.map(a=>`${s}${a.instancePath} ${a.message}`).reduce((a,o)=>a+r+o)}$dataMetaSchema(t,r){let s=this.RULES.all;t=JSON.parse(JSON.stringify(t));for(let a of r){let o=a.split("/").slice(1),g=t;for(let p of o)g=g[p];for(let p in s){let f=s[p];if(typeof f!="object")continue;let{$data:m}=f.definition,y=g[p];m&&y&&(g[p]=LRi(y))}}return t}_removeAllSchemas(t,r){for(let s in t){let a=t[s];(!r||r.test(s))&&(typeof a=="string"?delete t[s]:a&&!a.meta&&(this._cache.delete(a.schema),delete t[s]))}}_addSchema(t,r,s,a=this.opts.validateSchema,o=this.opts.addUsedSchema){let g,{schemaId:p}=this.opts;if(typeof t=="object")g=t[p];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof t!="boolean")throw new Error("schema must be object or boolean")}let f=this._cache.get(t);if(f!==void 0)return f;s=(0,MYe.normalizeId)(g||s);let m=MYe.getSchemaRefs.call(this,t,s);return f=new QYe.SchemaEnv({schema:t,schemaId:p,meta:r,baseId:s,localRefs:m}),this._cache.set(f.schema,f),o&&!s.startsWith("#")&&(s&&this._checkUnique(s),this.refs[s]=f),a&&this.validateSchema(t,!0),f}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):QYe.compileSchema.call(this,t),!t.validate)throw new Error("ajv implementation error");return t.validate}_compileMetaSchema(t){let r=this.opts;this.opts=this._metaOpts;try{QYe.compileSchema.call(this,t)}finally{this.opts=r}}};HYe.ValidationError=E4a.default;HYe.MissingRefError=FRi.default;ox.default=HYe;function kRi(e,t,r,s="error"){for(let a in e){let o=a;o in t&&this.logger[s](`${r}: option ${a}. ${e[o]}`)}}function GRi(e){return e=(0,MYe.normalizeId)(e),this.schemas[e]||this.refs[e]}function x4a(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function k4a(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function G4a(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r)}}function F4a(){let e={...this.opts};for(let t of w4a)delete e[t];return e}var Z4a={log(){},warn(){},error(){}};function L4a(e){if(e===!1)return Z4a;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw new Error("logger must implement log, warn and error methods")}var V4a=/^[a-z_$][a-z0-9_$:-]*$/i;function W4a(e,t){let{RULES:r}=this;if((0,eyr.eachItem)(e,s=>{if(r.keywords[s])throw new Error(`Keyword ${s} is already defined`);if(!V4a.test(s))throw new Error(`Keyword ${s} has invalid name`)}),!!t&&t.$data&&!("code"in t||"validate"in t))throw new Error('$data keyword must have "code" or "validate" function')}function $0r(e,t,r){var s;let a=t?.post;if(r&&a)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:o}=this,g=a?o.post:o.rules.find(({type:f})=>f===r);if(g||(g={type:r,rules:[]},o.rules.push(g)),o.keywords[e]=!0,!t)return;let p={keyword:e,definition:{...t,type:(0,nbt.getJSONTypes)(t.type),schemaType:(0,nbt.getJSONTypes)(t.schemaType)}};t.before?P4a.call(this,g,p,t.before):g.rules.push(p),o.all[e]=p,(s=t.implements)===null||s===void 0||s.forEach(f=>this.addKeyword(f))}function P4a(e,t,r){let s=e.rules.findIndex(a=>a.keyword===r);s>=0?e.rules.splice(s,0,t):(e.rules.push(t),this.logger.warn(`rule ${r} is not defined`))}function O4a(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=LRi(t)),e.validateSchema=this.compile(t,!0))}var Q4a={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function LRi(e){return{anyOf:[e,Q4a]}}});var WRi=z(tyr=>{"use strict";Object.defineProperty(tyr,"__esModule",{value:!0});var M4a={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};tyr.default=M4a});var MRi=z(ZIe=>{"use strict";Object.defineProperty(ZIe,"__esModule",{value:!0});ZIe.callRef=ZIe.getValidate=void 0;var H4a=PYe(),PRi=PQ(),B9=TC(),Ywe=Cq(),ORi=$yt(),ibt=Hh(),Y4a={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:s}=e,{baseId:a,schemaEnv:o,validateName:g,opts:p,self:f}=s,{root:m}=o;if((r==="#"||r==="#/")&&a===m.baseId)return B();let y=ORi.resolveRef.call(f,m,a,r);if(y===void 0)throw new H4a.default(s.opts.uriResolver,a,r);if(y instanceof ORi.SchemaEnv)return v(y);return k(y);function B(){if(o===m)return sbt(e,g,o,o.$async);let T=t.scopeValue("root",{ref:m});return sbt(e,(0,B9._)`${T}.validate`,m,m.$async)}function v(T){let O=QRi(e,T);sbt(e,O,T,T.$async)}function k(T){let O=t.scopeValue("schema",p.code.source===!0?{ref:T,code:(0,B9.stringify)(T)}:{ref:T}),X=t.name("valid"),U=e.subschema({schema:T,dataTypes:[],schemaPath:B9.nil,topSchemaRef:O,errSchemaPath:r},X);e.mergeEvaluated(U),e.ok(X)}}};function QRi(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,B9._)`${r.scopeValue("wrapper",{ref:t})}.validate`}ZIe.getValidate=QRi;function sbt(e,t,r,s){let{gen:a,it:o}=e,{allErrors:g,schemaEnv:p,opts:f}=o,m=f.passContext?Ywe.default.this:B9.nil;s?y():B();function y(){if(!p.$async)throw new Error("async schema referenced by sync schema");let T=a.let("valid");a.try(()=>{a.code((0,B9._)`await ${(0,PRi.callValidateCode)(e,t,m)}`),k(t),g||a.assign(T,!0)},O=>{a.if((0,B9._)`!(${O} instanceof ${o.ValidationError})`,()=>a.throw(O)),v(O),g||a.assign(T,!1)}),e.ok(T)}function B(){e.result((0,PRi.callValidateCode)(e,t,m),()=>k(t),()=>v(t))}function v(T){let O=(0,B9._)`${T}.errors`;a.assign(Ywe.default.vErrors,(0,B9._)`${Ywe.default.vErrors} === null ? ${O} : ${Ywe.default.vErrors}.concat(${O})`),a.assign(Ywe.default.errors,(0,B9._)`${Ywe.default.vErrors}.length`)}function k(T){var O;if(!o.opts.unevaluated)return;let X=(O=r?.validate)===null||O===void 0?void 0:O.evaluated;if(o.props!==!0)if(X&&!X.dynamicProps)X.props!==void 0&&(o.props=ibt.mergeEvaluated.props(a,X.props,o.props));else{let U=a.var("props",(0,B9._)`${T}.evaluated.props`);o.props=ibt.mergeEvaluated.props(a,U,o.props,B9.Name)}if(o.items!==!0)if(X&&!X.dynamicItems)X.items!==void 0&&(o.items=ibt.mergeEvaluated.items(a,X.items,o.items));else{let U=a.var("items",(0,B9._)`${T}.evaluated.items`);o.items=ibt.mergeEvaluated.items(a,U,o.items,B9.Name)}}}ZIe.callRef=sbt;ZIe.default=Y4a});var HRi=z(ryr=>{"use strict";Object.defineProperty(ryr,"__esModule",{value:!0});var X4a=WRi(),J4a=MRi(),U4a=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",X4a.default,J4a.default];ryr.default=U4a});var YRi=z(nyr=>{"use strict";Object.defineProperty(nyr,"__esModule",{value:!0});var obt=TC(),Noe=obt.operators,abt={maximum:{okStr:"<=",ok:Noe.LTE,fail:Noe.GT},minimum:{okStr:">=",ok:Noe.GTE,fail:Noe.LT},exclusiveMaximum:{okStr:"<",ok:Noe.LT,fail:Noe.GTE},exclusiveMinimum:{okStr:">",ok:Noe.GT,fail:Noe.LTE}},K4a={message:({keyword:e,schemaCode:t})=>(0,obt.str)`must be ${abt[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,obt._)`{comparison: ${abt[e].okStr}, limit: ${t}}`},j4a={keyword:Object.keys(abt),type:"number",schemaType:"number",$data:!0,error:K4a,code(e){let{keyword:t,data:r,schemaCode:s}=e;e.fail$data((0,obt._)`${r} ${abt[t].fail} ${s} || isNaN(${r})`)}};nyr.default=j4a});var XRi=z(iyr=>{"use strict";Object.defineProperty(iyr,"__esModule",{value:!0});var YYe=TC(),z4a={message:({schemaCode:e})=>(0,YYe.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,YYe._)`{multipleOf: ${e}}`},q4a={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:z4a,code(e){let{gen:t,data:r,schemaCode:s,it:a}=e,o=a.opts.multipleOfPrecision,g=t.let("res"),p=o?(0,YYe._)`Math.abs(Math.round(${g}) - ${g}) > 1e-${o}`:(0,YYe._)`${g} !== parseInt(${g})`;e.fail$data((0,YYe._)`(${s} === 0 || (${g} = ${r}/${s}, ${p}))`)}};iyr.default=q4a});var URi=z(syr=>{"use strict";Object.defineProperty(syr,"__esModule",{value:!0});function JRi(e){let t=e.length,r=0,s=0,a;for(;s=55296&&a<=56319&&s{"use strict";Object.defineProperty(oyr,"__esModule",{value:!0});var LIe=TC(),$4a=Hh(),eJa=URi(),tJa={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return(0,LIe.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0,LIe._)`{limit: ${e}}`},rJa={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:tJa,code(e){let{keyword:t,data:r,schemaCode:s,it:a}=e,o=t==="maxLength"?LIe.operators.GT:LIe.operators.LT,g=a.opts.unicode===!1?(0,LIe._)`${r}.length`:(0,LIe._)`${(0,$4a.useFunc)(e.gen,eJa.default)}(${r})`;e.fail$data((0,LIe._)`${g} ${o} ${s}`)}};oyr.default=rJa});var jRi=z(ayr=>{"use strict";Object.defineProperty(ayr,"__esModule",{value:!0});var nJa=PQ(),cbt=TC(),iJa={message:({schemaCode:e})=>(0,cbt.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,cbt._)`{pattern: ${e}}`},sJa={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:iJa,code(e){let{data:t,$data:r,schema:s,schemaCode:a,it:o}=e,g=o.opts.unicodeRegExp?"u":"",p=r?(0,cbt._)`(new RegExp(${a}, ${g}))`:(0,nJa.usePattern)(e,s);e.fail$data((0,cbt._)`!${p}.test(${t})`)}};ayr.default=sJa});var zRi=z(cyr=>{"use strict";Object.defineProperty(cyr,"__esModule",{value:!0});var XYe=TC(),oJa={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return(0,XYe.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,XYe._)`{limit: ${e}}`},aJa={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:oJa,code(e){let{keyword:t,data:r,schemaCode:s}=e,a=t==="maxProperties"?XYe.operators.GT:XYe.operators.LT;e.fail$data((0,XYe._)`Object.keys(${r}).length ${a} ${s}`)}};cyr.default=aJa});var qRi=z(lyr=>{"use strict";Object.defineProperty(lyr,"__esModule",{value:!0});var JYe=PQ(),UYe=TC(),cJa=Hh(),lJa={message:({params:{missingProperty:e}})=>(0,UYe.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,UYe._)`{missingProperty: ${e}}`},uJa={keyword:"required",type:"object",schemaType:"array",$data:!0,error:lJa,code(e){let{gen:t,schema:r,schemaCode:s,data:a,$data:o,it:g}=e,{opts:p}=g;if(!o&&r.length===0)return;let f=r.length>=p.loopRequired;if(g.allErrors?m():y(),p.strictRequired){let k=e.parentSchema.properties,{definedProperties:T}=e.it;for(let O of r)if(k?.[O]===void 0&&!T.has(O)){let X=g.schemaEnv.baseId+g.errSchemaPath,U=`required property "${O}" is not defined at "${X}" (strictRequired)`;(0,cJa.checkStrictMode)(g,U,g.opts.strictRequired)}}function m(){if(f||o)e.block$data(UYe.nil,B);else for(let k of r)(0,JYe.checkReportMissingProp)(e,k)}function y(){let k=t.let("missing");if(f||o){let T=t.let("valid",!0);e.block$data(T,()=>v(k,T)),e.ok(T)}else t.if((0,JYe.checkMissingProp)(e,r,k)),(0,JYe.reportMissingProp)(e,k),t.else()}function B(){t.forOf("prop",s,k=>{e.setParams({missingProperty:k}),t.if((0,JYe.noPropertyInData)(t,a,k,p.ownProperties),()=>e.error())})}function v(k,T){e.setParams({missingProperty:k}),t.forOf(k,s,()=>{t.assign(T,(0,JYe.propertyInData)(t,a,k,p.ownProperties)),t.if((0,UYe.not)(T),()=>{e.error(),t.break()})},UYe.nil)}}};lyr.default=uJa});var $Ri=z(uyr=>{"use strict";Object.defineProperty(uyr,"__esModule",{value:!0});var KYe=TC(),gJa={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return(0,KYe.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,KYe._)`{limit: ${e}}`},AJa={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:gJa,code(e){let{keyword:t,data:r,schemaCode:s}=e,a=t==="maxItems"?KYe.operators.GT:KYe.operators.LT;e.fail$data((0,KYe._)`${r}.length ${a} ${s}`)}};uyr.default=AJa});var lbt=z(gyr=>{"use strict";Object.defineProperty(gyr,"__esModule",{value:!0});var eDi=Z0r();eDi.code='require("ajv/dist/runtime/equal").default';gyr.default=eDi});var tDi=z(dyr=>{"use strict";Object.defineProperty(dyr,"__esModule",{value:!0});var Ayr=FYe(),ax=TC(),dJa=Hh(),pJa=lbt(),fJa={message:({params:{i:e,j:t}})=>(0,ax.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,ax._)`{i: ${e}, j: ${t}}`},IJa={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:fJa,code(e){let{gen:t,data:r,$data:s,schema:a,parentSchema:o,schemaCode:g,it:p}=e;if(!s&&!a)return;let f=t.let("valid"),m=o.items?(0,Ayr.getSchemaTypes)(o.items):[];e.block$data(f,y,(0,ax._)`${g} === false`),e.ok(f);function y(){let T=t.let("i",(0,ax._)`${r}.length`),O=t.let("j");e.setParams({i:T,j:O}),t.assign(f,!0),t.if((0,ax._)`${T} > 1`,()=>(B()?v:k)(T,O))}function B(){return m.length>0&&!m.some(T=>T==="object"||T==="array")}function v(T,O){let X=t.name("item"),U=(0,Ayr.checkDataTypes)(m,X,p.opts.strictNumbers,Ayr.DataType.Wrong),le=t.const("indices",(0,ax._)`{}`);t.for((0,ax._)`;${T}--;`,()=>{t.let(X,(0,ax._)`${r}[${T}]`),t.if(U,(0,ax._)`continue`),m.length>1&&t.if((0,ax._)`typeof ${X} == "string"`,(0,ax._)`${X} += "_"`),t.if((0,ax._)`typeof ${le}[${X}] == "number"`,()=>{t.assign(O,(0,ax._)`${le}[${X}]`),e.error(),t.assign(f,!1).break()}).code((0,ax._)`${le}[${X}] = ${T}`)})}function k(T,O){let X=(0,dJa.useFunc)(t,pJa.default),U=t.name("outer");t.label(U).for((0,ax._)`;${T}--;`,()=>t.for((0,ax._)`${O} = ${T}; ${O}--;`,()=>t.if((0,ax._)`${X}(${r}[${T}], ${r}[${O}])`,()=>{e.error(),t.assign(f,!1).break(U)})))}}};dyr.default=IJa});var rDi=z(fyr=>{"use strict";Object.defineProperty(fyr,"__esModule",{value:!0});var pyr=TC(),CJa=Hh(),mJa=lbt(),hJa={message:"must be equal to constant",params:({schemaCode:e})=>(0,pyr._)`{allowedValue: ${e}}`},_Ja={keyword:"const",$data:!0,error:hJa,code(e){let{gen:t,data:r,$data:s,schemaCode:a,schema:o}=e;s||o&&typeof o=="object"?e.fail$data((0,pyr._)`!${(0,CJa.useFunc)(t,mJa.default)}(${r}, ${a})`):e.fail((0,pyr._)`${o} !== ${r}`)}};fyr.default=_Ja});var nDi=z(Iyr=>{"use strict";Object.defineProperty(Iyr,"__esModule",{value:!0});var jYe=TC(),yJa=Hh(),bJa=lbt(),EJa={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,jYe._)`{allowedValues: ${e}}`},BJa={keyword:"enum",schemaType:"array",$data:!0,error:EJa,code(e){let{gen:t,data:r,$data:s,schema:a,schemaCode:o,it:g}=e;if(!s&&a.length===0)throw new Error("enum must have non-empty array");let p=a.length>=g.opts.loopEnum,f,m=()=>f??(f=(0,yJa.useFunc)(t,bJa.default)),y;if(p||s)y=t.let("valid"),e.block$data(y,B);else{if(!Array.isArray(a))throw new Error("ajv implementation error");let k=t.const("vSchema",o);y=(0,jYe.or)(...a.map((T,O)=>v(k,O)))}e.pass(y);function B(){t.assign(y,!1),t.forOf("v",o,k=>t.if((0,jYe._)`${m()}(${r}, ${k})`,()=>t.assign(y,!0).break()))}function v(k,T){let O=a[T];return typeof O=="object"&&O!==null?(0,jYe._)`${m()}(${r}, ${k}[${T}])`:(0,jYe._)`${r} === ${O}`}}};Iyr.default=BJa});var iDi=z(Cyr=>{"use strict";Object.defineProperty(Cyr,"__esModule",{value:!0});var vJa=YRi(),SJa=XRi(),wJa=KRi(),TJa=jRi(),NJa=zRi(),RJa=qRi(),DJa=$Ri(),xJa=tDi(),kJa=rDi(),GJa=nDi(),FJa=[vJa.default,SJa.default,wJa.default,TJa.default,NJa.default,RJa.default,DJa.default,xJa.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},kJa.default,GJa.default];Cyr.default=FJa});var hyr=z(zYe=>{"use strict";Object.defineProperty(zYe,"__esModule",{value:!0});zYe.validateAdditionalItems=void 0;var VIe=TC(),myr=Hh(),ZJa={message:({params:{len:e}})=>(0,VIe.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,VIe._)`{limit: ${e}}`},LJa={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:ZJa,code(e){let{parentSchema:t,it:r}=e,{items:s}=t;if(!Array.isArray(s)){(0,myr.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}sDi(e,s)}};function sDi(e,t){let{gen:r,schema:s,data:a,keyword:o,it:g}=e;g.items=!0;let p=r.const("len",(0,VIe._)`${a}.length`);if(s===!1)e.setParams({len:t.length}),e.pass((0,VIe._)`${p} <= ${t.length}`);else if(typeof s=="object"&&!(0,myr.alwaysValidSchema)(g,s)){let m=r.var("valid",(0,VIe._)`${p} <= ${t.length}`);r.if((0,VIe.not)(m),()=>f(m)),e.ok(m)}function f(m){r.forRange("i",t.length,p,y=>{e.subschema({keyword:o,dataProp:y,dataPropType:myr.Type.Num},m),g.allErrors||r.if((0,VIe.not)(m),()=>r.break())})}}zYe.validateAdditionalItems=sDi;zYe.default=LJa});var _yr=z(qYe=>{"use strict";Object.defineProperty(qYe,"__esModule",{value:!0});qYe.validateTuple=void 0;var oDi=TC(),ubt=Hh(),VJa=PQ(),WJa={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return aDi(e,"additionalItems",t);r.items=!0,!(0,ubt.alwaysValidSchema)(r,t)&&e.ok((0,VJa.validateArray)(e))}};function aDi(e,t,r=e.schema){let{gen:s,parentSchema:a,data:o,keyword:g,it:p}=e;y(a),p.opts.unevaluated&&r.length&&p.items!==!0&&(p.items=ubt.mergeEvaluated.items(s,r.length,p.items));let f=s.name("valid"),m=s.const("len",(0,oDi._)`${o}.length`);r.forEach((B,v)=>{(0,ubt.alwaysValidSchema)(p,B)||(s.if((0,oDi._)`${m} > ${v}`,()=>e.subschema({keyword:g,schemaProp:v,dataProp:v},f)),e.ok(f))});function y(B){let{opts:v,errSchemaPath:k}=p,T=r.length,O=T===B.minItems&&(T===B.maxItems||B[t]===!1);if(v.strictTuples&&!O){let X=`"${g}" is ${T}-tuple, but minItems or maxItems/${t} are not specified or different at path "${k}"`;(0,ubt.checkStrictMode)(p,X,v.strictTuples)}}}qYe.validateTuple=aDi;qYe.default=WJa});var cDi=z(yyr=>{"use strict";Object.defineProperty(yyr,"__esModule",{value:!0});var PJa=_yr(),OJa={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,PJa.validateTuple)(e,"items")};yyr.default=OJa});var uDi=z(byr=>{"use strict";Object.defineProperty(byr,"__esModule",{value:!0});var lDi=TC(),QJa=Hh(),MJa=PQ(),HJa=hyr(),YJa={message:({params:{len:e}})=>(0,lDi.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,lDi._)`{limit: ${e}}`},XJa={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:YJa,code(e){let{schema:t,parentSchema:r,it:s}=e,{prefixItems:a}=r;s.items=!0,!(0,QJa.alwaysValidSchema)(s,t)&&(a?(0,HJa.validateAdditionalItems)(e,a):e.ok((0,MJa.validateArray)(e)))}};byr.default=XJa});var gDi=z(Eyr=>{"use strict";Object.defineProperty(Eyr,"__esModule",{value:!0});var QQ=TC(),gbt=Hh(),JJa={message:({params:{min:e,max:t}})=>t===void 0?(0,QQ.str)`must contain at least ${e} valid item(s)`:(0,QQ.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,QQ._)`{minContains: ${e}}`:(0,QQ._)`{minContains: ${e}, maxContains: ${t}}`},UJa={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:JJa,code(e){let{gen:t,schema:r,parentSchema:s,data:a,it:o}=e,g,p,{minContains:f,maxContains:m}=s;o.opts.next?(g=f===void 0?1:f,p=m):g=1;let y=t.const("len",(0,QQ._)`${a}.length`);if(e.setParams({min:g,max:p}),p===void 0&&g===0){(0,gbt.checkStrictMode)(o,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(p!==void 0&&g>p){(0,gbt.checkStrictMode)(o,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,gbt.alwaysValidSchema)(o,r)){let O=(0,QQ._)`${y} >= ${g}`;p!==void 0&&(O=(0,QQ._)`${O} && ${y} <= ${p}`),e.pass(O);return}o.items=!0;let B=t.name("valid");p===void 0&&g===1?k(B,()=>t.if(B,()=>t.break())):g===0?(t.let(B,!0),p!==void 0&&t.if((0,QQ._)`${a}.length > 0`,v)):(t.let(B,!1),v()),e.result(B,()=>e.reset());function v(){let O=t.name("_valid"),X=t.let("count",0);k(O,()=>t.if(O,()=>T(X)))}function k(O,X){t.forRange("i",0,y,U=>{e.subschema({keyword:"contains",dataProp:U,dataPropType:gbt.Type.Num,compositeRule:!0},O),X()})}function T(O){t.code((0,QQ._)`${O}++`),p===void 0?t.if((0,QQ._)`${O} >= ${g}`,()=>t.assign(B,!0).break()):(t.if((0,QQ._)`${O} > ${p}`,()=>t.assign(B,!1).break()),g===1?t.assign(B,!0):t.if((0,QQ._)`${O} >= ${g}`,()=>t.assign(B,!0)))}}};Eyr.default=UJa});var pDi=z(EK=>{"use strict";Object.defineProperty(EK,"__esModule",{value:!0});EK.validateSchemaDeps=EK.validatePropertyDeps=EK.error=void 0;var Byr=TC(),KJa=Hh(),$Ye=PQ();EK.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let s=t===1?"property":"properties";return(0,Byr.str)`must have ${s} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:s}})=>(0,Byr._)`{property: ${e}, missingProperty: ${s}, depsCount: ${t}, - deps: ${r}}`};var GJa={keyword:"dependencies",type:"object",schemaType:"object",error:CK.error,code(e){let[t,r]=FJa(e);sDi(e,t),oDi(e,r)}};function FJa({schema:e}){let t={},r={};for(let s in e){if(s==="__proto__")continue;let a=Array.isArray(e[s])?t:r;a[s]=e[s]}return[t,r]}function sDi(e,t=e.schema){let{gen:r,data:s,it:a}=e;if(Object.keys(t).length===0)return;let o=r.let("missing");for(let g in t){let p=t[g];if(p.length===0)continue;let f=(0,z5e.propertyInData)(r,s,g,a.opts.ownProperties);e.setParams({property:g,depsCount:p.length,deps:p.join(", ")}),a.allErrors?r.if(f,()=>{for(let m of p)(0,z5e.checkReportMissingProp)(e,m)}):(r.if((0,myr._)`${f} && (${(0,z5e.checkMissingProp)(e,p,o)})`),(0,z5e.reportMissingProp)(e,o),r.else())}}CK.validatePropertyDeps=sDi;function oDi(e,t=e.schema){let{gen:r,data:s,keyword:a,it:o}=e,g=r.name("valid");for(let p in t)(0,kJa.alwaysValidSchema)(o,t[p])||(r.if((0,z5e.propertyInData)(r,s,p,o.opts.ownProperties),()=>{let f=e.subschema({keyword:a,schemaProp:p},g);e.mergeValidEvaluated(f,g)},()=>r.var(g,!0)),e.ok(g))}CK.validateSchemaDeps=oDi;CK.default=GJa});var lDi=z(hyr=>{"use strict";Object.defineProperty(hyr,"__esModule",{value:!0});var cDi=wC(),ZJa=Qh(),LJa={message:"property name must be valid",params:({params:e})=>(0,cDi._)`{propertyName: ${e.propertyName}}`},VJa={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:LJa,code(e){let{gen:t,schema:r,data:s,it:a}=e;if((0,ZJa.alwaysValidSchema)(a,r))return;let o=t.name("valid");t.forIn("key",s,g=>{e.setParams({propertyName:g}),e.subschema({keyword:"propertyNames",data:g,dataTypes:["string"],propertyName:g,compositeRule:!0},o),t.if((0,cDi.not)(o),()=>{e.error(!0),a.allErrors||t.break()})}),e.ok(o)}};hyr.default=VJa});var yyr=z(_yr=>{"use strict";Object.defineProperty(_yr,"__esModule",{value:!0});var lbt=VM(),x5=wC(),WJa=fq(),ubt=Qh(),PJa={message:"must NOT have additional properties",params:({params:e})=>(0,x5._)`{additionalProperty: ${e.additionalProperty}}`},OJa={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:PJa,code(e){let{gen:t,schema:r,parentSchema:s,data:a,errsCount:o,it:g}=e;if(!o)throw new Error("ajv implementation error");let{allErrors:p,opts:f}=g;if(g.props=!0,f.removeAdditional!=="all"&&(0,ubt.alwaysValidSchema)(g,r))return;let m=(0,lbt.allSchemaProperties)(s.properties),y=(0,lbt.allSchemaProperties)(s.patternProperties);B(),e.ok((0,x5._)`${o} === ${WJa.default.errors}`);function B(){t.forIn("key",a,X=>{!m.length&&!y.length?T(X):t.if(v(X),()=>T(X))})}function v(X){let U;if(m.length>8){let le=(0,ubt.schemaRefOrVal)(g,s.properties,"properties");U=(0,lbt.isOwnProperty)(t,le,X)}else m.length?U=(0,x5.or)(...m.map(le=>(0,x5._)`${X} === ${le}`)):U=x5.nil;return y.length&&(U=(0,x5.or)(U,...y.map(le=>(0,x5._)`${(0,lbt.usePattern)(e,le)}.test(${X})`))),(0,x5.not)(U)}function G(X){t.code((0,x5._)`delete ${a}[${X}]`)}function T(X){if(f.removeAdditional==="all"||f.removeAdditional&&r===!1){G(X);return}if(r===!1){e.setParams({additionalProperty:X}),e.error(),p||t.break();return}if(typeof r=="object"&&!(0,ubt.alwaysValidSchema)(g,r)){let U=t.name("valid");f.removeAdditional==="failing"?(O(X,U,!1),t.if((0,x5.not)(U),()=>{e.reset(),G(X)})):(O(X,U),p||t.if((0,x5.not)(U),()=>t.break()))}}function O(X,U,le){let ae={keyword:"additionalProperties",dataProp:X,dataPropType:ubt.Type.Str};le===!1&&Object.assign(ae,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(ae,U)}}};_yr.default=OJa});var ADi=z(Eyr=>{"use strict";Object.defineProperty(Eyr,"__esModule",{value:!0});var MJa=L5e(),uDi=VM(),byr=Qh(),gDi=yyr(),QJa={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:s,data:a,it:o}=e;o.opts.removeAdditional==="all"&&s.additionalProperties===void 0&&gDi.default.code(new MJa.KeywordCxt(o,gDi.default,"additionalProperties"));let g=(0,uDi.allSchemaProperties)(r);for(let B of g)o.definedProperties.add(B);o.opts.unevaluated&&g.length&&o.props!==!0&&(o.props=byr.mergeEvaluated.props(t,(0,byr.toHash)(g),o.props));let p=g.filter(B=>!(0,byr.alwaysValidSchema)(o,r[B]));if(p.length===0)return;let f=t.name("valid");for(let B of p)m(B)?y(B):(t.if((0,uDi.propertyInData)(t,a,B,o.opts.ownProperties)),y(B),o.allErrors||t.else().var(f,!0),t.endIf()),e.it.definedProperties.add(B),e.ok(f);function m(B){return o.opts.useDefaults&&!o.compositeRule&&r[B].default!==void 0}function y(B){e.subschema({keyword:"properties",schemaProp:B,dataProp:B},f)}}};Eyr.default=QJa});var IDi=z(Byr=>{"use strict";Object.defineProperty(Byr,"__esModule",{value:!0});var dDi=VM(),gbt=wC(),pDi=Qh(),fDi=Qh(),YJa={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:s,parentSchema:a,it:o}=e,{opts:g}=o,p=(0,dDi.allSchemaProperties)(r),f=p.filter(O=>(0,pDi.alwaysValidSchema)(o,r[O]));if(p.length===0||f.length===p.length&&(!o.opts.unevaluated||o.props===!0))return;let m=g.strictSchema&&!g.allowMatchingProperties&&a.properties,y=t.name("valid");o.props!==!0&&!(o.props instanceof gbt.Name)&&(o.props=(0,fDi.evaluatedPropsToName)(t,o.props));let{props:B}=o;v();function v(){for(let O of p)m&&G(O),o.allErrors?T(O):(t.var(y,!0),T(O),t.if(y))}function G(O){for(let X in m)new RegExp(O).test(X)&&(0,pDi.checkStrictMode)(o,`property ${X} matches pattern ${O} (use allowMatchingProperties)`)}function T(O){t.forIn("key",s,X=>{t.if((0,gbt._)`${(0,dDi.usePattern)(e,O)}.test(${X})`,()=>{let U=f.includes(O);U||e.subschema({keyword:"patternProperties",schemaProp:O,dataProp:X,dataPropType:fDi.Type.Str},y),o.opts.unevaluated&&B!==!0?t.assign((0,gbt._)`${B}[${X}]`,!0):!U&&!o.allErrors&&t.if((0,gbt.not)(y),()=>t.break())})})}}};Byr.default=YJa});var CDi=z(vyr=>{"use strict";Object.defineProperty(vyr,"__esModule",{value:!0});var HJa=Qh(),XJa={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:s}=e;if((0,HJa.alwaysValidSchema)(s,r)){e.fail();return}let a=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},a),e.failResult(a,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};vyr.default=XJa});var mDi=z(Syr=>{"use strict";Object.defineProperty(Syr,"__esModule",{value:!0});var JJa=VM(),UJa={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:JJa.validateUnion,error:{message:"must match a schema in anyOf"}};Syr.default=UJa});var hDi=z(wyr=>{"use strict";Object.defineProperty(wyr,"__esModule",{value:!0});var Abt=wC(),KJa=Qh(),jJa={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,Abt._)`{passingSchemas: ${e.passing}}`},zJa={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:jJa,code(e){let{gen:t,schema:r,parentSchema:s,it:a}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(a.opts.discriminator&&s.discriminator)return;let o=r,g=t.let("valid",!1),p=t.let("passing",null),f=t.name("_valid");e.setParams({passing:p}),t.block(m),e.result(g,()=>e.reset(),()=>e.error(!0));function m(){o.forEach((y,B)=>{let v;(0,KJa.alwaysValidSchema)(a,y)?t.var(f,!0):v=e.subschema({keyword:"oneOf",schemaProp:B,compositeRule:!0},f),B>0&&t.if((0,Abt._)`${f} && ${g}`).assign(g,!1).assign(p,(0,Abt._)`[${p}, ${B}]`).else(),t.if(f,()=>{t.assign(g,!0),t.assign(p,B),v&&e.mergeEvaluated(v,Abt.Name)})})}}};wyr.default=zJa});var _Di=z(Tyr=>{"use strict";Object.defineProperty(Tyr,"__esModule",{value:!0});var qJa=Qh(),$Ja={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:s}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");let a=t.name("valid");r.forEach((o,g)=>{if((0,qJa.alwaysValidSchema)(s,o))return;let p=e.subschema({keyword:"allOf",schemaProp:g},a);e.ok(a),e.mergeEvaluated(p)})}};Tyr.default=$Ja});var EDi=z(Nyr=>{"use strict";Object.defineProperty(Nyr,"__esModule",{value:!0});var dbt=wC(),bDi=Qh(),eUa={message:({params:e})=>(0,dbt.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,dbt._)`{failingKeyword: ${e.ifClause}}`},tUa={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:eUa,code(e){let{gen:t,parentSchema:r,it:s}=e;r.then===void 0&&r.else===void 0&&(0,bDi.checkStrictMode)(s,'"if" without "then" and "else" is ignored');let a=yDi(s,"then"),o=yDi(s,"else");if(!a&&!o)return;let g=t.let("valid",!0),p=t.name("_valid");if(f(),e.reset(),a&&o){let y=t.let("ifClause");e.setParams({ifClause:y}),t.if(p,m("then",y),m("else",y))}else a?t.if(p,m("then")):t.if((0,dbt.not)(p),m("else"));e.pass(g,()=>e.error(!0));function f(){let y=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},p);e.mergeEvaluated(y)}function m(y,B){return()=>{let v=e.subschema({keyword:y},p);t.assign(g,p),e.mergeValidEvaluated(v,g),B?t.assign(B,(0,dbt._)`${y}`):e.setParams({ifClause:y})}}}};function yDi(e,t){let r=e.schema[t];return r!==void 0&&!(0,bDi.alwaysValidSchema)(e,r)}Nyr.default=tUa});var BDi=z(Ryr=>{"use strict";Object.defineProperty(Ryr,"__esModule",{value:!0});var rUa=Qh(),nUa={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,rUa.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};Ryr.default=nUa});var vDi=z(Dyr=>{"use strict";Object.defineProperty(Dyr,"__esModule",{value:!0});var iUa=dyr(),sUa=tDi(),oUa=pyr(),aUa=nDi(),cUa=iDi(),lUa=aDi(),uUa=lDi(),gUa=yyr(),AUa=ADi(),dUa=IDi(),pUa=CDi(),fUa=mDi(),IUa=hDi(),CUa=_Di(),mUa=EDi(),hUa=BDi();function _Ua(e=!1){let t=[pUa.default,fUa.default,IUa.default,CUa.default,mUa.default,hUa.default,uUa.default,gUa.default,lUa.default,AUa.default,dUa.default];return e?t.push(sUa.default,aUa.default):t.push(iUa.default,oUa.default),t.push(cUa.default),t}Dyr.default=_Ua});var SDi=z(xyr=>{"use strict";Object.defineProperty(xyr,"__esModule",{value:!0});var uS=wC(),yUa={message:({schemaCode:e})=>(0,uS.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,uS._)`{format: ${e}}`},bUa={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:yUa,code(e,t){let{gen:r,data:s,$data:a,schema:o,schemaCode:g,it:p}=e,{opts:f,errSchemaPath:m,schemaEnv:y,self:B}=p;if(!f.validateFormats)return;a?v():G();function v(){let T=r.scopeValue("formats",{ref:B.formats,code:f.code.formats}),O=r.const("fDef",(0,uS._)`${T}[${g}]`),X=r.let("fType"),U=r.let("format");r.if((0,uS._)`typeof ${O} == "object" && !(${O} instanceof RegExp)`,()=>r.assign(X,(0,uS._)`${O}.type || "string"`).assign(U,(0,uS._)`${O}.validate`),()=>r.assign(X,(0,uS._)`"string"`).assign(U,O)),e.fail$data((0,uS.or)(le(),ae()));function le(){return f.strictSchema===!1?uS.nil:(0,uS._)`${g} && !${U}`}function ae(){let ge=y.$async?(0,uS._)`(${O}.async ? await ${U}(${s}) : ${U}(${s}))`:(0,uS._)`${U}(${s})`,fe=(0,uS._)`(typeof ${U} == "function" ? ${ge} : ${U}.test(${s}))`;return(0,uS._)`${U} && ${U} !== true && ${X} === ${t} && !${fe}`}}function G(){let T=B.formats[o];if(!T){le();return}if(T===!0)return;let[O,X,U]=ae(T);O===t&&e.pass(ge());function le(){if(f.strictSchema===!1){B.logger.warn(fe());return}throw new Error(fe());function fe(){return`unknown format "${o}" ignored in schema at path "${m}"`}}function ae(fe){let pe=fe instanceof RegExp?(0,uS.regexpCode)(fe):f.code.formats?(0,uS._)`${f.code.formats}${(0,uS.getProperty)(o)}`:void 0,he=r.scopeValue("formats",{key:o,ref:fe,code:pe});return typeof fe=="object"&&!(fe instanceof RegExp)?[fe.type||"string",fe.validate,(0,uS._)`${he}.validate`]:["string",fe,he]}function ge(){if(typeof T=="object"&&!(T instanceof RegExp)&&T.async){if(!y.$async)throw new Error("async format in sync schema");return(0,uS._)`await ${U}(${s})`}return typeof X=="function"?(0,uS._)`${U}(${s})`:(0,uS._)`${U}.test(${s})`}}}};xyr.default=bUa});var wDi=z(kyr=>{"use strict";Object.defineProperty(kyr,"__esModule",{value:!0});var EUa=SDi(),BUa=[EUa.default];kyr.default=BUa});var TDi=z(Ywe=>{"use strict";Object.defineProperty(Ywe,"__esModule",{value:!0});Ywe.contentVocabulary=Ywe.metadataVocabulary=void 0;Ywe.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Ywe.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var RDi=z(Gyr=>{"use strict";Object.defineProperty(Gyr,"__esModule",{value:!0});var vUa=LRi(),SUa=zRi(),wUa=vDi(),TUa=wDi(),NDi=TDi(),NUa=[vUa.default,SUa.default,(0,wUa.default)(),TUa.default,NDi.metadataVocabulary,NDi.contentVocabulary];Gyr.default=NUa});var xDi=z(pbt=>{"use strict";Object.defineProperty(pbt,"__esModule",{value:!0});pbt.DiscrError=void 0;var DDi;(function(e){e.Tag="tag",e.Mapping="mapping"})(DDi||(pbt.DiscrError=DDi={}))});var GDi=z(Zyr=>{"use strict";Object.defineProperty(Zyr,"__esModule",{value:!0});var Hwe=wC(),Fyr=xDi(),kDi=jyt(),RUa=V5e(),DUa=Qh(),xUa={message:({params:{discrError:e,tagName:t}})=>e===Fyr.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0,Hwe._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},kUa={keyword:"discriminator",type:"object",schemaType:"object",error:xUa,code(e){let{gen:t,data:r,schema:s,parentSchema:a,it:o}=e,{oneOf:g}=a;if(!o.opts.discriminator)throw new Error("discriminator: requires discriminator option");let p=s.propertyName;if(typeof p!="string")throw new Error("discriminator: requires propertyName");if(s.mapping)throw new Error("discriminator: mapping is not supported");if(!g)throw new Error("discriminator: requires oneOf keyword");let f=t.let("valid",!1),m=t.const("tag",(0,Hwe._)`${r}${(0,Hwe.getProperty)(p)}`);t.if((0,Hwe._)`typeof ${m} == "string"`,()=>y(),()=>e.error(!1,{discrError:Fyr.DiscrError.Tag,tag:m,tagName:p})),e.ok(f);function y(){let G=v();t.if(!1);for(let T in G)t.elseIf((0,Hwe._)`${m} === ${T}`),t.assign(f,B(G[T]));t.else(),e.error(!1,{discrError:Fyr.DiscrError.Mapping,tag:m,tagName:p}),t.endIf()}function B(G){let T=t.name("valid"),O=e.subschema({keyword:"oneOf",schemaProp:G},T);return e.mergeEvaluated(O,Hwe.Name),T}function v(){var G;let T={},O=U(a),X=!0;for(let ge=0;ge{GUa.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var Vyr=z((g1,Lyr)=>{"use strict";Object.defineProperty(g1,"__esModule",{value:!0});g1.MissingRefError=g1.ValidationError=g1.CodeGen=g1.Name=g1.nil=g1.stringify=g1.str=g1._=g1.KeywordCxt=g1.Ajv=void 0;var FUa=DRi(),ZUa=RDi(),LUa=GDi(),ZDi=FDi(),VUa=["/properties"],fbt="http://json-schema.org/draft-07/schema",Xwe=class extends FUa.default{_addVocabularies(){super._addVocabularies(),ZUa.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(LUa.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(ZDi,VUa):ZDi;this.addMetaSchema(t,fbt,!1),this.refs["http://json-schema.org/schema"]=fbt}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(fbt)?fbt:void 0)}};g1.Ajv=Xwe;Lyr.exports=g1=Xwe;Lyr.exports.Ajv=Xwe;Object.defineProperty(g1,"__esModule",{value:!0});g1.default=Xwe;var WUa=L5e();Object.defineProperty(g1,"KeywordCxt",{enumerable:!0,get:function(){return WUa.KeywordCxt}});var Jwe=wC();Object.defineProperty(g1,"_",{enumerable:!0,get:function(){return Jwe._}});Object.defineProperty(g1,"str",{enumerable:!0,get:function(){return Jwe.str}});Object.defineProperty(g1,"stringify",{enumerable:!0,get:function(){return Jwe.stringify}});Object.defineProperty(g1,"nil",{enumerable:!0,get:function(){return Jwe.nil}});Object.defineProperty(g1,"Name",{enumerable:!0,get:function(){return Jwe.Name}});Object.defineProperty(g1,"CodeGen",{enumerable:!0,get:function(){return Jwe.CodeGen}});var PUa=Uyt();Object.defineProperty(g1,"ValidationError",{enumerable:!0,get:function(){return PUa.default}});var OUa=V5e();Object.defineProperty(g1,"MissingRefError",{enumerable:!0,get:function(){return OUa.default}})});var YDi=z(hK=>{"use strict";Object.defineProperty(hK,"__esModule",{value:!0});hK.formatNames=hK.fastFormats=hK.fullFormats=void 0;function mK(e,t){return{validate:e,compare:t}}hK.fullFormats={date:mK(PDi,Myr),time:mK(Pyr(!0),Qyr),"date-time":mK(LDi(!0),MDi),"iso-time":mK(Pyr(),ODi),"iso-date-time":mK(LDi(),QDi),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:JUa,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:eKa,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:UUa,int32:{type:"number",validate:zUa},int64:{type:"number",validate:qUa},float:{type:"number",validate:WDi},double:{type:"number",validate:WDi},password:!0,binary:!0};hK.fastFormats={...hK.fullFormats,date:mK(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Myr),time:mK(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Qyr),"date-time":mK(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,MDi),"iso-time":mK(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,ODi),"iso-date-time":mK(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,QDi),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};hK.formatNames=Object.keys(hK.fullFormats);function MUa(e){return e%4===0&&(e%100!==0||e%400===0)}var QUa=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,YUa=[0,31,28,31,30,31,30,31,31,30,31,30,31];function PDi(e){let t=QUa.exec(e);if(!t)return!1;let r=+t[1],s=+t[2],a=+t[3];return s>=1&&s<=12&&a>=1&&a<=(s===2&&MUa(r)?29:YUa[s])}function Myr(e,t){if(e&&t)return e>t?1:e23||y>59||e&&!p)return!1;if(a<=23&&o<=59&&g<60)return!0;let B=o-y*f,v=a-m*f-(B<0?1:0);return(v===23||v===-1)&&(B===59||B===-1)&&g<61}}function Qyr(e,t){if(!(e&&t))return;let r=new Date("2020-01-01T"+e).valueOf(),s=new Date("2020-01-01T"+t).valueOf();if(r&&s)return r-s}function ODi(e,t){if(!(e&&t))return;let r=Wyr.exec(e),s=Wyr.exec(t);if(r&&s)return e=r[1]+r[2]+r[3],t=s[1]+s[2]+s[3],e>t?1:e=KUa}function qUa(e){return Number.isInteger(e)}function WDi(){return!0}var $Ua=/[^\\]\\Z/;function eKa(e){if($Ua.test(e))return!1;try{return new RegExp(e),!0}catch{return!1}}});var HDi=z(Uwe=>{"use strict";Object.defineProperty(Uwe,"__esModule",{value:!0});Uwe.formatLimitDefinition=void 0;var tKa=Vyr(),k5=wC(),yoe=k5.operators,Ibt={formatMaximum:{okStr:"<=",ok:yoe.LTE,fail:yoe.GT},formatMinimum:{okStr:">=",ok:yoe.GTE,fail:yoe.LT},formatExclusiveMaximum:{okStr:"<",ok:yoe.LT,fail:yoe.GTE},formatExclusiveMinimum:{okStr:">",ok:yoe.GT,fail:yoe.LTE}},rKa={message:({keyword:e,schemaCode:t})=>(0,k5.str)`should be ${Ibt[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,k5._)`{comparison: ${Ibt[e].okStr}, limit: ${t}}`};Uwe.formatLimitDefinition={keyword:Object.keys(Ibt),type:"string",schemaType:"string",$data:!0,error:rKa,code(e){let{gen:t,data:r,schemaCode:s,keyword:a,it:o}=e,{opts:g,self:p}=o;if(!g.validateFormats)return;let f=new tKa.KeywordCxt(o,p.RULES.all.format.definition,"format");f.$data?m():y();function m(){let v=t.scopeValue("formats",{ref:p.formats,code:g.code.formats}),G=t.const("fmt",(0,k5._)`${v}[${f.schemaCode}]`);e.fail$data((0,k5.or)((0,k5._)`typeof ${G} != "object"`,(0,k5._)`${G} instanceof RegExp`,(0,k5._)`typeof ${G}.compare != "function"`,B(G)))}function y(){let v=f.schema,G=p.formats[v];if(!G||G===!0)return;if(typeof G!="object"||G instanceof RegExp||typeof G.compare!="function")throw new Error(`"${a}": format "${v}" does not define "compare" function`);let T=t.scopeValue("formats",{key:v,ref:G,code:g.code.formats?(0,k5._)`${g.code.formats}${(0,k5.getProperty)(v)}`:void 0});e.fail$data(B(T))}function B(v){return(0,k5._)`${v}.compare(${r}, ${s}) ${Ibt[a].fail} 0`}},dependencies:["format"]};var nKa=e=>(e.addKeyword(Uwe.formatLimitDefinition),e);Uwe.default=nKa});var KDi=z((q5e,UDi)=>{"use strict";Object.defineProperty(q5e,"__esModule",{value:!0});var Kwe=YDi(),iKa=HDi(),Yyr=wC(),XDi=new Yyr.Name("fullFormats"),sKa=new Yyr.Name("fastFormats"),Hyr=(e,t={keywords:!0})=>{if(Array.isArray(t))return JDi(e,t,Kwe.fullFormats,XDi),e;let[r,s]=t.mode==="fast"?[Kwe.fastFormats,sKa]:[Kwe.fullFormats,XDi],a=t.formats||Kwe.formatNames;return JDi(e,a,r,s),t.keywords&&(0,iKa.default)(e),e};Hyr.get=(e,t="full")=>{let s=(t==="fast"?Kwe.fastFormats:Kwe.fullFormats)[e];if(!s)throw new Error(`Unknown format "${e}"`);return s};function JDi(e,t,r,s){var a,o;(a=(o=e.opts.code).formats)!==null&&a!==void 0||(o.formats=(0,Yyr._)`require("ajv-formats/dist/formats").${s}`);for(let g of t)e.addFormat(g,r[g])}UDi.exports=q5e=Hyr;Object.defineProperty(q5e,"__esModule",{value:!0});q5e.default=Hyr});var cy=z(Cbt=>{"use strict";Object.defineProperty(Cbt,"__esModule",{value:!0});Cbt.isFunction=void 0;function oKa(e){return typeof e=="function"}Cbt.isFunction=oKa});var boe=z(mbt=>{"use strict";Object.defineProperty(mbt,"__esModule",{value:!0});mbt.createErrorClass=void 0;function aKa(e){var t=function(s){Error.call(s),s.stack=new Error().stack},r=e(t);return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}mbt.createErrorClass=aKa});var Xyr=z(hbt=>{"use strict";Object.defineProperty(hbt,"__esModule",{value:!0});hbt.UnsubscriptionError=void 0;var cKa=boe();hbt.UnsubscriptionError=cKa.createErrorClass(function(e){return function(r){e(this),this.message=r?r.length+` errors occurred during unsubscription: + deps: ${r}}`};var jJa={keyword:"dependencies",type:"object",schemaType:"object",error:EK.error,code(e){let[t,r]=zJa(e);ADi(e,t),dDi(e,r)}};function zJa({schema:e}){let t={},r={};for(let s in e){if(s==="__proto__")continue;let a=Array.isArray(e[s])?t:r;a[s]=e[s]}return[t,r]}function ADi(e,t=e.schema){let{gen:r,data:s,it:a}=e;if(Object.keys(t).length===0)return;let o=r.let("missing");for(let g in t){let p=t[g];if(p.length===0)continue;let f=(0,$Ye.propertyInData)(r,s,g,a.opts.ownProperties);e.setParams({property:g,depsCount:p.length,deps:p.join(", ")}),a.allErrors?r.if(f,()=>{for(let m of p)(0,$Ye.checkReportMissingProp)(e,m)}):(r.if((0,Byr._)`${f} && (${(0,$Ye.checkMissingProp)(e,p,o)})`),(0,$Ye.reportMissingProp)(e,o),r.else())}}EK.validatePropertyDeps=ADi;function dDi(e,t=e.schema){let{gen:r,data:s,keyword:a,it:o}=e,g=r.name("valid");for(let p in t)(0,KJa.alwaysValidSchema)(o,t[p])||(r.if((0,$Ye.propertyInData)(r,s,p,o.opts.ownProperties),()=>{let f=e.subschema({keyword:a,schemaProp:p},g);e.mergeValidEvaluated(f,g)},()=>r.var(g,!0)),e.ok(g))}EK.validateSchemaDeps=dDi;EK.default=jJa});var IDi=z(vyr=>{"use strict";Object.defineProperty(vyr,"__esModule",{value:!0});var fDi=TC(),qJa=Hh(),$Ja={message:"property name must be valid",params:({params:e})=>(0,fDi._)`{propertyName: ${e.propertyName}}`},eUa={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:$Ja,code(e){let{gen:t,schema:r,data:s,it:a}=e;if((0,qJa.alwaysValidSchema)(a,r))return;let o=t.name("valid");t.forIn("key",s,g=>{e.setParams({propertyName:g}),e.subschema({keyword:"propertyNames",data:g,dataTypes:["string"],propertyName:g,compositeRule:!0},o),t.if((0,fDi.not)(o),()=>{e.error(!0),a.allErrors||t.break()})}),e.ok(o)}};vyr.default=eUa});var wyr=z(Syr=>{"use strict";Object.defineProperty(Syr,"__esModule",{value:!0});var Abt=PQ(),FY=TC(),tUa=Cq(),dbt=Hh(),rUa={message:"must NOT have additional properties",params:({params:e})=>(0,FY._)`{additionalProperty: ${e.additionalProperty}}`},nUa={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:rUa,code(e){let{gen:t,schema:r,parentSchema:s,data:a,errsCount:o,it:g}=e;if(!o)throw new Error("ajv implementation error");let{allErrors:p,opts:f}=g;if(g.props=!0,f.removeAdditional!=="all"&&(0,dbt.alwaysValidSchema)(g,r))return;let m=(0,Abt.allSchemaProperties)(s.properties),y=(0,Abt.allSchemaProperties)(s.patternProperties);B(),e.ok((0,FY._)`${o} === ${tUa.default.errors}`);function B(){t.forIn("key",a,X=>{!m.length&&!y.length?T(X):t.if(v(X),()=>T(X))})}function v(X){let U;if(m.length>8){let le=(0,dbt.schemaRefOrVal)(g,s.properties,"properties");U=(0,Abt.isOwnProperty)(t,le,X)}else m.length?U=(0,FY.or)(...m.map(le=>(0,FY._)`${X} === ${le}`)):U=FY.nil;return y.length&&(U=(0,FY.or)(U,...y.map(le=>(0,FY._)`${(0,Abt.usePattern)(e,le)}.test(${X})`))),(0,FY.not)(U)}function k(X){t.code((0,FY._)`delete ${a}[${X}]`)}function T(X){if(f.removeAdditional==="all"||f.removeAdditional&&r===!1){k(X);return}if(r===!1){e.setParams({additionalProperty:X}),e.error(),p||t.break();return}if(typeof r=="object"&&!(0,dbt.alwaysValidSchema)(g,r)){let U=t.name("valid");f.removeAdditional==="failing"?(O(X,U,!1),t.if((0,FY.not)(U),()=>{e.reset(),k(X)})):(O(X,U),p||t.if((0,FY.not)(U),()=>t.break()))}}function O(X,U,le){let ae={keyword:"additionalProperties",dataProp:X,dataPropType:dbt.Type.Str};le===!1&&Object.assign(ae,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(ae,U)}}};Syr.default=nUa});var hDi=z(Nyr=>{"use strict";Object.defineProperty(Nyr,"__esModule",{value:!0});var iUa=WYe(),CDi=PQ(),Tyr=Hh(),mDi=wyr(),sUa={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:s,data:a,it:o}=e;o.opts.removeAdditional==="all"&&s.additionalProperties===void 0&&mDi.default.code(new iUa.KeywordCxt(o,mDi.default,"additionalProperties"));let g=(0,CDi.allSchemaProperties)(r);for(let B of g)o.definedProperties.add(B);o.opts.unevaluated&&g.length&&o.props!==!0&&(o.props=Tyr.mergeEvaluated.props(t,(0,Tyr.toHash)(g),o.props));let p=g.filter(B=>!(0,Tyr.alwaysValidSchema)(o,r[B]));if(p.length===0)return;let f=t.name("valid");for(let B of p)m(B)?y(B):(t.if((0,CDi.propertyInData)(t,a,B,o.opts.ownProperties)),y(B),o.allErrors||t.else().var(f,!0),t.endIf()),e.it.definedProperties.add(B),e.ok(f);function m(B){return o.opts.useDefaults&&!o.compositeRule&&r[B].default!==void 0}function y(B){e.subschema({keyword:"properties",schemaProp:B,dataProp:B},f)}}};Nyr.default=sUa});var EDi=z(Ryr=>{"use strict";Object.defineProperty(Ryr,"__esModule",{value:!0});var _Di=PQ(),pbt=TC(),yDi=Hh(),bDi=Hh(),oUa={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:s,parentSchema:a,it:o}=e,{opts:g}=o,p=(0,_Di.allSchemaProperties)(r),f=p.filter(O=>(0,yDi.alwaysValidSchema)(o,r[O]));if(p.length===0||f.length===p.length&&(!o.opts.unevaluated||o.props===!0))return;let m=g.strictSchema&&!g.allowMatchingProperties&&a.properties,y=t.name("valid");o.props!==!0&&!(o.props instanceof pbt.Name)&&(o.props=(0,bDi.evaluatedPropsToName)(t,o.props));let{props:B}=o;v();function v(){for(let O of p)m&&k(O),o.allErrors?T(O):(t.var(y,!0),T(O),t.if(y))}function k(O){for(let X in m)new RegExp(O).test(X)&&(0,yDi.checkStrictMode)(o,`property ${X} matches pattern ${O} (use allowMatchingProperties)`)}function T(O){t.forIn("key",s,X=>{t.if((0,pbt._)`${(0,_Di.usePattern)(e,O)}.test(${X})`,()=>{let U=f.includes(O);U||e.subschema({keyword:"patternProperties",schemaProp:O,dataProp:X,dataPropType:bDi.Type.Str},y),o.opts.unevaluated&&B!==!0?t.assign((0,pbt._)`${B}[${X}]`,!0):!U&&!o.allErrors&&t.if((0,pbt.not)(y),()=>t.break())})})}}};Ryr.default=oUa});var BDi=z(Dyr=>{"use strict";Object.defineProperty(Dyr,"__esModule",{value:!0});var aUa=Hh(),cUa={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:s}=e;if((0,aUa.alwaysValidSchema)(s,r)){e.fail();return}let a=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},a),e.failResult(a,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};Dyr.default=cUa});var vDi=z(xyr=>{"use strict";Object.defineProperty(xyr,"__esModule",{value:!0});var lUa=PQ(),uUa={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:lUa.validateUnion,error:{message:"must match a schema in anyOf"}};xyr.default=uUa});var SDi=z(kyr=>{"use strict";Object.defineProperty(kyr,"__esModule",{value:!0});var fbt=TC(),gUa=Hh(),AUa={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,fbt._)`{passingSchemas: ${e.passing}}`},dUa={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:AUa,code(e){let{gen:t,schema:r,parentSchema:s,it:a}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(a.opts.discriminator&&s.discriminator)return;let o=r,g=t.let("valid",!1),p=t.let("passing",null),f=t.name("_valid");e.setParams({passing:p}),t.block(m),e.result(g,()=>e.reset(),()=>e.error(!0));function m(){o.forEach((y,B)=>{let v;(0,gUa.alwaysValidSchema)(a,y)?t.var(f,!0):v=e.subschema({keyword:"oneOf",schemaProp:B,compositeRule:!0},f),B>0&&t.if((0,fbt._)`${f} && ${g}`).assign(g,!1).assign(p,(0,fbt._)`[${p}, ${B}]`).else(),t.if(f,()=>{t.assign(g,!0),t.assign(p,B),v&&e.mergeEvaluated(v,fbt.Name)})})}}};kyr.default=dUa});var wDi=z(Gyr=>{"use strict";Object.defineProperty(Gyr,"__esModule",{value:!0});var pUa=Hh(),fUa={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:s}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");let a=t.name("valid");r.forEach((o,g)=>{if((0,pUa.alwaysValidSchema)(s,o))return;let p=e.subschema({keyword:"allOf",schemaProp:g},a);e.ok(a),e.mergeEvaluated(p)})}};Gyr.default=fUa});var RDi=z(Fyr=>{"use strict";Object.defineProperty(Fyr,"__esModule",{value:!0});var Ibt=TC(),NDi=Hh(),IUa={message:({params:e})=>(0,Ibt.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,Ibt._)`{failingKeyword: ${e.ifClause}}`},CUa={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:IUa,code(e){let{gen:t,parentSchema:r,it:s}=e;r.then===void 0&&r.else===void 0&&(0,NDi.checkStrictMode)(s,'"if" without "then" and "else" is ignored');let a=TDi(s,"then"),o=TDi(s,"else");if(!a&&!o)return;let g=t.let("valid",!0),p=t.name("_valid");if(f(),e.reset(),a&&o){let y=t.let("ifClause");e.setParams({ifClause:y}),t.if(p,m("then",y),m("else",y))}else a?t.if(p,m("then")):t.if((0,Ibt.not)(p),m("else"));e.pass(g,()=>e.error(!0));function f(){let y=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},p);e.mergeEvaluated(y)}function m(y,B){return()=>{let v=e.subschema({keyword:y},p);t.assign(g,p),e.mergeValidEvaluated(v,g),B?t.assign(B,(0,Ibt._)`${y}`):e.setParams({ifClause:y})}}}};function TDi(e,t){let r=e.schema[t];return r!==void 0&&!(0,NDi.alwaysValidSchema)(e,r)}Fyr.default=CUa});var DDi=z(Zyr=>{"use strict";Object.defineProperty(Zyr,"__esModule",{value:!0});var mUa=Hh(),hUa={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,mUa.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};Zyr.default=hUa});var xDi=z(Lyr=>{"use strict";Object.defineProperty(Lyr,"__esModule",{value:!0});var _Ua=hyr(),yUa=cDi(),bUa=_yr(),EUa=uDi(),BUa=gDi(),vUa=pDi(),SUa=IDi(),wUa=wyr(),TUa=hDi(),NUa=EDi(),RUa=BDi(),DUa=vDi(),xUa=SDi(),kUa=wDi(),GUa=RDi(),FUa=DDi();function ZUa(e=!1){let t=[RUa.default,DUa.default,xUa.default,kUa.default,GUa.default,FUa.default,SUa.default,wUa.default,vUa.default,TUa.default,NUa.default];return e?t.push(yUa.default,EUa.default):t.push(_Ua.default,bUa.default),t.push(BUa.default),t}Lyr.default=ZUa});var kDi=z(Vyr=>{"use strict";Object.defineProperty(Vyr,"__esModule",{value:!0});var gS=TC(),LUa={message:({schemaCode:e})=>(0,gS.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,gS._)`{format: ${e}}`},VUa={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:LUa,code(e,t){let{gen:r,data:s,$data:a,schema:o,schemaCode:g,it:p}=e,{opts:f,errSchemaPath:m,schemaEnv:y,self:B}=p;if(!f.validateFormats)return;a?v():k();function v(){let T=r.scopeValue("formats",{ref:B.formats,code:f.code.formats}),O=r.const("fDef",(0,gS._)`${T}[${g}]`),X=r.let("fType"),U=r.let("format");r.if((0,gS._)`typeof ${O} == "object" && !(${O} instanceof RegExp)`,()=>r.assign(X,(0,gS._)`${O}.type || "string"`).assign(U,(0,gS._)`${O}.validate`),()=>r.assign(X,(0,gS._)`"string"`).assign(U,O)),e.fail$data((0,gS.or)(le(),ae()));function le(){return f.strictSchema===!1?gS.nil:(0,gS._)`${g} && !${U}`}function ae(){let ge=y.$async?(0,gS._)`(${O}.async ? await ${U}(${s}) : ${U}(${s}))`:(0,gS._)`${U}(${s})`,fe=(0,gS._)`(typeof ${U} == "function" ? ${ge} : ${U}.test(${s}))`;return(0,gS._)`${U} && ${U} !== true && ${X} === ${t} && !${fe}`}}function k(){let T=B.formats[o];if(!T){le();return}if(T===!0)return;let[O,X,U]=ae(T);O===t&&e.pass(ge());function le(){if(f.strictSchema===!1){B.logger.warn(fe());return}throw new Error(fe());function fe(){return`unknown format "${o}" ignored in schema at path "${m}"`}}function ae(fe){let pe=fe instanceof RegExp?(0,gS.regexpCode)(fe):f.code.formats?(0,gS._)`${f.code.formats}${(0,gS.getProperty)(o)}`:void 0,he=r.scopeValue("formats",{key:o,ref:fe,code:pe});return typeof fe=="object"&&!(fe instanceof RegExp)?[fe.type||"string",fe.validate,(0,gS._)`${he}.validate`]:["string",fe,he]}function ge(){if(typeof T=="object"&&!(T instanceof RegExp)&&T.async){if(!y.$async)throw new Error("async format in sync schema");return(0,gS._)`await ${U}(${s})`}return typeof X=="function"?(0,gS._)`${U}(${s})`:(0,gS._)`${U}.test(${s})`}}}};Vyr.default=VUa});var GDi=z(Wyr=>{"use strict";Object.defineProperty(Wyr,"__esModule",{value:!0});var WUa=kDi(),PUa=[WUa.default];Wyr.default=PUa});var FDi=z(Xwe=>{"use strict";Object.defineProperty(Xwe,"__esModule",{value:!0});Xwe.contentVocabulary=Xwe.metadataVocabulary=void 0;Xwe.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Xwe.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var LDi=z(Pyr=>{"use strict";Object.defineProperty(Pyr,"__esModule",{value:!0});var OUa=HRi(),QUa=iDi(),MUa=xDi(),HUa=GDi(),ZDi=FDi(),YUa=[OUa.default,QUa.default,(0,MUa.default)(),HUa.default,ZDi.metadataVocabulary,ZDi.contentVocabulary];Pyr.default=YUa});var WDi=z(Cbt=>{"use strict";Object.defineProperty(Cbt,"__esModule",{value:!0});Cbt.DiscrError=void 0;var VDi;(function(e){e.Tag="tag",e.Mapping="mapping"})(VDi||(Cbt.DiscrError=VDi={}))});var ODi=z(Qyr=>{"use strict";Object.defineProperty(Qyr,"__esModule",{value:!0});var Jwe=TC(),Oyr=WDi(),PDi=$yt(),XUa=PYe(),JUa=Hh(),UUa={message:({params:{discrError:e,tagName:t}})=>e===Oyr.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0,Jwe._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},KUa={keyword:"discriminator",type:"object",schemaType:"object",error:UUa,code(e){let{gen:t,data:r,schema:s,parentSchema:a,it:o}=e,{oneOf:g}=a;if(!o.opts.discriminator)throw new Error("discriminator: requires discriminator option");let p=s.propertyName;if(typeof p!="string")throw new Error("discriminator: requires propertyName");if(s.mapping)throw new Error("discriminator: mapping is not supported");if(!g)throw new Error("discriminator: requires oneOf keyword");let f=t.let("valid",!1),m=t.const("tag",(0,Jwe._)`${r}${(0,Jwe.getProperty)(p)}`);t.if((0,Jwe._)`typeof ${m} == "string"`,()=>y(),()=>e.error(!1,{discrError:Oyr.DiscrError.Tag,tag:m,tagName:p})),e.ok(f);function y(){let k=v();t.if(!1);for(let T in k)t.elseIf((0,Jwe._)`${m} === ${T}`),t.assign(f,B(k[T]));t.else(),e.error(!1,{discrError:Oyr.DiscrError.Mapping,tag:m,tagName:p}),t.endIf()}function B(k){let T=t.name("valid"),O=e.subschema({keyword:"oneOf",schemaProp:k},T);return e.mergeEvaluated(O,Jwe.Name),T}function v(){var k;let T={},O=U(a),X=!0;for(let ge=0;ge{jUa.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var Hyr=z((A1,Myr)=>{"use strict";Object.defineProperty(A1,"__esModule",{value:!0});A1.MissingRefError=A1.ValidationError=A1.CodeGen=A1.Name=A1.nil=A1.stringify=A1.str=A1._=A1.KeywordCxt=A1.Ajv=void 0;var zUa=VRi(),qUa=LDi(),$Ua=ODi(),MDi=QDi(),eKa=["/properties"],mbt="http://json-schema.org/draft-07/schema",Uwe=class extends zUa.default{_addVocabularies(){super._addVocabularies(),qUa.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword($Ua.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(MDi,eKa):MDi;this.addMetaSchema(t,mbt,!1),this.refs["http://json-schema.org/schema"]=mbt}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(mbt)?mbt:void 0)}};A1.Ajv=Uwe;Myr.exports=A1=Uwe;Myr.exports.Ajv=Uwe;Object.defineProperty(A1,"__esModule",{value:!0});A1.default=Uwe;var tKa=WYe();Object.defineProperty(A1,"KeywordCxt",{enumerable:!0,get:function(){return tKa.KeywordCxt}});var Kwe=TC();Object.defineProperty(A1,"_",{enumerable:!0,get:function(){return Kwe._}});Object.defineProperty(A1,"str",{enumerable:!0,get:function(){return Kwe.str}});Object.defineProperty(A1,"stringify",{enumerable:!0,get:function(){return Kwe.stringify}});Object.defineProperty(A1,"nil",{enumerable:!0,get:function(){return Kwe.nil}});Object.defineProperty(A1,"Name",{enumerable:!0,get:function(){return Kwe.Name}});Object.defineProperty(A1,"CodeGen",{enumerable:!0,get:function(){return Kwe.CodeGen}});var rKa=zyt();Object.defineProperty(A1,"ValidationError",{enumerable:!0,get:function(){return rKa.default}});var nKa=PYe();Object.defineProperty(A1,"MissingRefError",{enumerable:!0,get:function(){return nKa.default}})});var zDi=z(vK=>{"use strict";Object.defineProperty(vK,"__esModule",{value:!0});vK.formatNames=vK.fastFormats=vK.fullFormats=void 0;function BK(e,t){return{validate:e,compare:t}}vK.fullFormats={date:BK(JDi,Uyr),time:BK(Xyr(!0),Kyr),"date-time":BK(HDi(!0),KDi),"iso-time":BK(Xyr(),UDi),"iso-date-time":BK(HDi(),jDi),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:lKa,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:IKa,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:uKa,int32:{type:"number",validate:dKa},int64:{type:"number",validate:pKa},float:{type:"number",validate:XDi},double:{type:"number",validate:XDi},password:!0,binary:!0};vK.fastFormats={...vK.fullFormats,date:BK(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Uyr),time:BK(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Kyr),"date-time":BK(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,KDi),"iso-time":BK(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,UDi),"iso-date-time":BK(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,jDi),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};vK.formatNames=Object.keys(vK.fullFormats);function iKa(e){return e%4===0&&(e%100!==0||e%400===0)}var sKa=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,oKa=[0,31,28,31,30,31,30,31,31,30,31,30,31];function JDi(e){let t=sKa.exec(e);if(!t)return!1;let r=+t[1],s=+t[2],a=+t[3];return s>=1&&s<=12&&a>=1&&a<=(s===2&&iKa(r)?29:oKa[s])}function Uyr(e,t){if(e&&t)return e>t?1:e23||y>59||e&&!p)return!1;if(a<=23&&o<=59&&g<60)return!0;let B=o-y*f,v=a-m*f-(B<0?1:0);return(v===23||v===-1)&&(B===59||B===-1)&&g<61}}function Kyr(e,t){if(!(e&&t))return;let r=new Date("2020-01-01T"+e).valueOf(),s=new Date("2020-01-01T"+t).valueOf();if(r&&s)return r-s}function UDi(e,t){if(!(e&&t))return;let r=Yyr.exec(e),s=Yyr.exec(t);if(r&&s)return e=r[1]+r[2]+r[3],t=s[1]+s[2]+s[3],e>t?1:e=gKa}function pKa(e){return Number.isInteger(e)}function XDi(){return!0}var fKa=/[^\\]\\Z/;function IKa(e){if(fKa.test(e))return!1;try{return new RegExp(e),!0}catch{return!1}}});var qDi=z(jwe=>{"use strict";Object.defineProperty(jwe,"__esModule",{value:!0});jwe.formatLimitDefinition=void 0;var CKa=Hyr(),ZY=TC(),Roe=ZY.operators,hbt={formatMaximum:{okStr:"<=",ok:Roe.LTE,fail:Roe.GT},formatMinimum:{okStr:">=",ok:Roe.GTE,fail:Roe.LT},formatExclusiveMaximum:{okStr:"<",ok:Roe.LT,fail:Roe.GTE},formatExclusiveMinimum:{okStr:">",ok:Roe.GT,fail:Roe.LTE}},mKa={message:({keyword:e,schemaCode:t})=>(0,ZY.str)`should be ${hbt[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,ZY._)`{comparison: ${hbt[e].okStr}, limit: ${t}}`};jwe.formatLimitDefinition={keyword:Object.keys(hbt),type:"string",schemaType:"string",$data:!0,error:mKa,code(e){let{gen:t,data:r,schemaCode:s,keyword:a,it:o}=e,{opts:g,self:p}=o;if(!g.validateFormats)return;let f=new CKa.KeywordCxt(o,p.RULES.all.format.definition,"format");f.$data?m():y();function m(){let v=t.scopeValue("formats",{ref:p.formats,code:g.code.formats}),k=t.const("fmt",(0,ZY._)`${v}[${f.schemaCode}]`);e.fail$data((0,ZY.or)((0,ZY._)`typeof ${k} != "object"`,(0,ZY._)`${k} instanceof RegExp`,(0,ZY._)`typeof ${k}.compare != "function"`,B(k)))}function y(){let v=f.schema,k=p.formats[v];if(!k||k===!0)return;if(typeof k!="object"||k instanceof RegExp||typeof k.compare!="function")throw new Error(`"${a}": format "${v}" does not define "compare" function`);let T=t.scopeValue("formats",{key:v,ref:k,code:g.code.formats?(0,ZY._)`${g.code.formats}${(0,ZY.getProperty)(v)}`:void 0});e.fail$data(B(T))}function B(v){return(0,ZY._)`${v}.compare(${r}, ${s}) ${hbt[a].fail} 0`}},dependencies:["format"]};var hKa=e=>(e.addKeyword(jwe.formatLimitDefinition),e);jwe.default=hKa});var rxi=z((eXe,txi)=>{"use strict";Object.defineProperty(eXe,"__esModule",{value:!0});var zwe=zDi(),_Ka=qDi(),jyr=TC(),$Di=new jyr.Name("fullFormats"),yKa=new jyr.Name("fastFormats"),zyr=(e,t={keywords:!0})=>{if(Array.isArray(t))return exi(e,t,zwe.fullFormats,$Di),e;let[r,s]=t.mode==="fast"?[zwe.fastFormats,yKa]:[zwe.fullFormats,$Di],a=t.formats||zwe.formatNames;return exi(e,a,r,s),t.keywords&&(0,_Ka.default)(e),e};zyr.get=(e,t="full")=>{let s=(t==="fast"?zwe.fastFormats:zwe.fullFormats)[e];if(!s)throw new Error(`Unknown format "${e}"`);return s};function exi(e,t,r,s){var a,o;(a=(o=e.opts.code).formats)!==null&&a!==void 0||(o.formats=(0,jyr._)`require("ajv-formats/dist/formats").${s}`);for(let g of t)e.addFormat(g,r[g])}txi.exports=eXe=zyr;Object.defineProperty(eXe,"__esModule",{value:!0});eXe.default=zyr});var ly=z(_bt=>{"use strict";Object.defineProperty(_bt,"__esModule",{value:!0});_bt.isFunction=void 0;function bKa(e){return typeof e=="function"}_bt.isFunction=bKa});var Doe=z(ybt=>{"use strict";Object.defineProperty(ybt,"__esModule",{value:!0});ybt.createErrorClass=void 0;function EKa(e){var t=function(s){Error.call(s),s.stack=new Error().stack},r=e(t);return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}ybt.createErrorClass=EKa});var qyr=z(bbt=>{"use strict";Object.defineProperty(bbt,"__esModule",{value:!0});bbt.UnsubscriptionError=void 0;var BKa=Doe();bbt.UnsubscriptionError=BKa.createErrorClass(function(e){return function(r){e(this),this.message=r?r.length+` errors occurred during unsubscription: `+r.map(function(s,a){return a+1+") "+s.toString()}).join(` - `):"",this.name="UnsubscriptionError",this.errors=r}})});var mq=z(_bt=>{"use strict";Object.defineProperty(_bt,"__esModule",{value:!0});_bt.arrRemove=void 0;function lKa(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}_bt.arrRemove=lKa});var c3=z(B9=>{"use strict";var jDi=B9&&B9.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],s=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&s>=e.length&&(e=void 0),{value:e&&e[s++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},zDi=B9&&B9.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},qDi=B9&&B9.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";Object.defineProperty(ybt,"__esModule",{value:!0});ybt.config=void 0;ybt.config={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1}});var Kyr=z(_K=>{"use strict";var txi=_K&&_K.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},rxi=_K&&_K.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";Object.defineProperty(bbt,"__esModule",{value:!0});bbt.reportUnhandledError=void 0;var gKa=jwe(),AKa=Kyr();function dKa(e){AKa.timeoutProvider.setTimeout(function(){var t=gKa.config.onUnhandledError;if(t)t(e);else throw e})}bbt.reportUnhandledError=dKa});var rx=z(Ebt=>{"use strict";Object.defineProperty(Ebt,"__esModule",{value:!0});Ebt.noop=void 0;function pKa(){}Ebt.noop=pKa});var nxi=z(yK=>{"use strict";Object.defineProperty(yK,"__esModule",{value:!0});yK.createNotification=yK.nextNotification=yK.errorNotification=yK.COMPLETE_NOTIFICATION=void 0;yK.COMPLETE_NOTIFICATION=function(){return Bbt("C",void 0,void 0)}();function fKa(e){return Bbt("E",void 0,e)}yK.errorNotification=fKa;function IKa(e){return Bbt("N",e,void 0)}yK.nextNotification=IKa;function Bbt(e,t,r){return{kind:e,value:t,error:r}}yK.createNotification=Bbt});var vbt=z(zwe=>{"use strict";Object.defineProperty(zwe,"__esModule",{value:!0});zwe.captureError=zwe.errorContext=void 0;var ixi=jwe(),LIe=null;function CKa(e){if(ixi.config.useDeprecatedSynchronousErrorHandling){var t=!LIe;if(t&&(LIe={errorThrown:!1,error:null}),e(),t){var r=LIe,s=r.errorThrown,a=r.error;if(LIe=null,s)throw a}}else e()}zwe.errorContext=CKa;function mKa(e){ixi.config.useDeprecatedSynchronousErrorHandling&&LIe&&(LIe.errorThrown=!0,LIe.error=e)}zwe.captureError=mKa});var qwe=z(G5=>{"use strict";var axi=G5&&G5.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(G5,"__esModule",{value:!0});G5.EMPTY_OBSERVER=G5.SafeSubscriber=G5.Subscriber=void 0;var hKa=cy(),sxi=c3(),ebr=jwe(),_Ka=jyr(),oxi=rx(),zyr=nxi(),yKa=Kyr(),bKa=vbt(),cxi=function(e){axi(t,e);function t(r){var s=e.call(this)||this;return s.isStopped=!1,r?(s.destination=r,sxi.isSubscription(r)&&r.add(s)):s.destination=G5.EMPTY_OBSERVER,s}return t.create=function(r,s,a){return new lxi(r,s,a)},t.prototype.next=function(r){this.isStopped?$yr(zyr.nextNotification(r),this):this._next(r)},t.prototype.error=function(r){this.isStopped?$yr(zyr.errorNotification(r),this):(this.isStopped=!0,this._error(r))},t.prototype.complete=function(){this.isStopped?$yr(zyr.COMPLETE_NOTIFICATION,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(r){this.destination.next(r)},t.prototype._error=function(r){try{this.destination.error(r)}finally{this.unsubscribe()}},t.prototype._complete=function(){try{this.destination.complete()}finally{this.unsubscribe()}},t}(sxi.Subscription);G5.Subscriber=cxi;var EKa=Function.prototype.bind;function qyr(e,t){return EKa.call(e,t)}var BKa=function(){function e(t){this.partialObserver=t}return e.prototype.next=function(t){var r=this.partialObserver;if(r.next)try{r.next(t)}catch(s){Sbt(s)}},e.prototype.error=function(t){var r=this.partialObserver;if(r.error)try{r.error(t)}catch(s){Sbt(s)}else Sbt(t)},e.prototype.complete=function(){var t=this.partialObserver;if(t.complete)try{t.complete()}catch(r){Sbt(r)}},e}(),lxi=function(e){axi(t,e);function t(r,s,a){var o=e.call(this)||this,g;if(hKa.isFunction(r)||!r)g={next:r??void 0,error:s??void 0,complete:a??void 0};else{var p;o&&ebr.config.useDeprecatedNextContext?(p=Object.create(r),p.unsubscribe=function(){return o.unsubscribe()},g={next:r.next&&qyr(r.next,p),error:r.error&&qyr(r.error,p),complete:r.complete&&qyr(r.complete,p)}):g=r}return o.destination=new BKa(g),o}return t}(cxi);G5.SafeSubscriber=lxi;function Sbt(e){ebr.config.useDeprecatedSynchronousErrorHandling?bKa.captureError(e):_Ka.reportUnhandledError(e)}function vKa(e){throw e}function $yr(e,t){var r=ebr.config.onStoppedNotification;r&&yKa.timeoutProvider.setTimeout(function(){return r(e,t)})}G5.EMPTY_OBSERVER={closed:!0,next:oxi.noop,error:vKa,complete:oxi.noop}});var eXe=z(wbt=>{"use strict";Object.defineProperty(wbt,"__esModule",{value:!0});wbt.observable=void 0;wbt.observable=function(){return typeof Symbol=="function"&&Symbol.observable||"@@observable"}()});var nx=z(Tbt=>{"use strict";Object.defineProperty(Tbt,"__esModule",{value:!0});Tbt.identity=void 0;function SKa(e){return e}Tbt.identity=SKa});var tXe=z($we=>{"use strict";Object.defineProperty($we,"__esModule",{value:!0});$we.pipeFromArray=$we.pipe=void 0;var wKa=nx();function TKa(){for(var e=[],t=0;t{"use strict";Object.defineProperty(Nbt,"__esModule",{value:!0});Nbt.Observable=void 0;var rbr=qwe(),NKa=c3(),RKa=eXe(),DKa=tXe(),xKa=jwe(),tbr=cy(),kKa=vbt(),GKa=function(){function e(t){t&&(this._subscribe=t)}return e.prototype.lift=function(t){var r=new e;return r.source=this,r.operator=t,r},e.prototype.subscribe=function(t,r,s){var a=this,o=ZKa(t)?t:new rbr.SafeSubscriber(t,r,s);return kKa.errorContext(function(){var g=a,p=g.operator,f=g.source;o.add(p?p.call(o,f):f?a._subscribe(o):a._trySubscribe(o))}),o},e.prototype._trySubscribe=function(t){try{return this._subscribe(t)}catch(r){t.error(r)}},e.prototype.forEach=function(t,r){var s=this;return r=gxi(r),new r(function(a,o){var g=new rbr.SafeSubscriber({next:function(p){try{t(p)}catch(f){o(f),g.unsubscribe()}},error:o,complete:a});s.subscribe(g)})},e.prototype._subscribe=function(t){var r;return(r=this.source)===null||r===void 0?void 0:r.subscribe(t)},e.prototype[RKa.observable]=function(){return this},e.prototype.pipe=function(){for(var t=[],r=0;r{"use strict";Object.defineProperty(eTe,"__esModule",{value:!0});eTe.operate=eTe.hasLift=void 0;var LKa=cy();function Axi(e){return LKa.isFunction(e?.lift)}eTe.hasLift=Axi;function VKa(e){return function(t){if(Axi(t))return t.lift(function(r){try{return e(r,this)}catch(s){this.error(s)}});throw new TypeError("Unable to lift unknown Observable type")}}eTe.operate=VKa});var ld=z(Eoe=>{"use strict";var WKa=Eoe&&Eoe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(Eoe,"__esModule",{value:!0});Eoe.OperatorSubscriber=Eoe.createOperatorSubscriber=void 0;var PKa=qwe();function OKa(e,t,r,s,a){return new dxi(e,t,r,s,a)}Eoe.createOperatorSubscriber=OKa;var dxi=function(e){WKa(t,e);function t(r,s,a,o,g,p){var f=e.call(this,r)||this;return f.onFinalize=g,f.shouldUnsubscribe=p,f._next=s?function(m){try{s(m)}catch(y){r.error(y)}}:e.prototype._next,f._error=o?function(m){try{o(m)}catch(y){r.error(y)}finally{this.unsubscribe()}}:e.prototype._error,f._complete=a?function(){try{a()}catch(m){r.error(m)}finally{this.unsubscribe()}}:e.prototype._complete,f}return t.prototype.unsubscribe=function(){var r;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var s=this.closed;e.prototype.unsubscribe.call(this),!s&&((r=this.onFinalize)===null||r===void 0||r.call(this))}},t}(PKa.Subscriber);Eoe.OperatorSubscriber=dxi});var Dbt=z(Rbt=>{"use strict";Object.defineProperty(Rbt,"__esModule",{value:!0});Rbt.refCount=void 0;var MKa=Zg(),QKa=ld();function YKa(){return MKa.operate(function(e,t){var r=null;e._refCount++;var s=QKa.createOperatorSubscriber(t,void 0,void 0,void 0,function(){if(!e||e._refCount<=0||0<--e._refCount){r=null;return}var a=e._connection,o=r;r=null,a&&(!o||a===o)&&a.unsubscribe(),t.unsubscribe()});e.subscribe(s),s.closed||(r=e.connect())})}Rbt.refCount=YKa});var rXe=z(tTe=>{"use strict";var HKa=tTe&&tTe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(tTe,"__esModule",{value:!0});tTe.ConnectableObservable=void 0;var XKa=Py(),pxi=c3(),JKa=Dbt(),UKa=ld(),KKa=Zg(),jKa=function(e){HKa(t,e);function t(r,s){var a=e.call(this)||this;return a.source=r,a.subjectFactory=s,a._subject=null,a._refCount=0,a._connection=null,KKa.hasLift(r)&&(a.lift=r.lift),a}return t.prototype._subscribe=function(r){return this.getSubject().subscribe(r)},t.prototype.getSubject=function(){var r=this._subject;return(!r||r.isStopped)&&(this._subject=this.subjectFactory()),this._subject},t.prototype._teardown=function(){this._refCount=0;var r=this._connection;this._subject=this._connection=null,r?.unsubscribe()},t.prototype.connect=function(){var r=this,s=this._connection;if(!s){s=this._connection=new pxi.Subscription;var a=this.getSubject();s.add(this.source.subscribe(UKa.createOperatorSubscriber(a,void 0,function(){r._teardown(),a.complete()},function(o){r._teardown(),a.error(o)},function(){return r._teardown()}))),s.closed&&(this._connection=null,s=pxi.Subscription.EMPTY)}return s},t.prototype.refCount=function(){return JKa.refCount()(this)},t}(XKa.Observable);tTe.ConnectableObservable=jKa});var fxi=z(nXe=>{"use strict";Object.defineProperty(nXe,"__esModule",{value:!0});nXe.performanceTimestampProvider=void 0;nXe.performanceTimestampProvider={now:function(){return(nXe.performanceTimestampProvider.delegate||performance).now()},delegate:void 0}});var nbr=z(F5=>{"use strict";var Ixi=F5&&F5.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},Cxi=F5&&F5.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";Object.defineProperty(xbt,"__esModule",{value:!0});xbt.animationFrames=void 0;var qKa=Py(),$Ka=fxi(),mxi=nbr();function e8a(e){return e?hxi(e):t8a}xbt.animationFrames=e8a;function hxi(e){return new qKa.Observable(function(t){var r=e||$Ka.performanceTimestampProvider,s=r.now(),a=0,o=function(){t.closed||(a=mxi.animationFrameProvider.requestAnimationFrame(function(g){a=0;var p=r.now();t.next({timestamp:e?p:g,elapsed:p-s}),o()}))};return o(),function(){a&&mxi.animationFrameProvider.cancelAnimationFrame(a)}})}var t8a=hxi()});var ibr=z(kbt=>{"use strict";Object.defineProperty(kbt,"__esModule",{value:!0});kbt.ObjectUnsubscribedError=void 0;var r8a=boe();kbt.ObjectUnsubscribedError=r8a.createErrorClass(function(e){return function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}})});var ix=z(bK=>{"use strict";var bxi=bK&&bK.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}(),n8a=bK&&bK.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],s=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&s>=e.length&&(e=void 0),{value:e&&e[s++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(bK,"__esModule",{value:!0});bK.AnonymousSubject=bK.Subject=void 0;var yxi=Py(),obr=c3(),i8a=ibr(),s8a=mq(),sbr=vbt(),Exi=function(e){bxi(t,e);function t(){var r=e.call(this)||this;return r.closed=!1,r.currentObservers=null,r.observers=[],r.isStopped=!1,r.hasError=!1,r.thrownError=null,r}return t.prototype.lift=function(r){var s=new abr(this,this);return s.operator=r,s},t.prototype._throwIfClosed=function(){if(this.closed)throw new i8a.ObjectUnsubscribedError},t.prototype.next=function(r){var s=this;sbr.errorContext(function(){var a,o;if(s._throwIfClosed(),!s.isStopped){s.currentObservers||(s.currentObservers=Array.from(s.observers));try{for(var g=n8a(s.currentObservers),p=g.next();!p.done;p=g.next()){var f=p.value;f.next(r)}}catch(m){a={error:m}}finally{try{p&&!p.done&&(o=g.return)&&o.call(g)}finally{if(a)throw a.error}}}})},t.prototype.error=function(r){var s=this;sbr.errorContext(function(){if(s._throwIfClosed(),!s.isStopped){s.hasError=s.isStopped=!0,s.thrownError=r;for(var a=s.observers;a.length;)a.shift().error(r)}})},t.prototype.complete=function(){var r=this;sbr.errorContext(function(){if(r._throwIfClosed(),!r.isStopped){r.isStopped=!0;for(var s=r.observers;s.length;)s.shift().complete()}})},t.prototype.unsubscribe=function(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null},Object.defineProperty(t.prototype,"observed",{get:function(){var r;return((r=this.observers)===null||r===void 0?void 0:r.length)>0},enumerable:!1,configurable:!0}),t.prototype._trySubscribe=function(r){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,r)},t.prototype._subscribe=function(r){return this._throwIfClosed(),this._checkFinalizedStatuses(r),this._innerSubscribe(r)},t.prototype._innerSubscribe=function(r){var s=this,a=this,o=a.hasError,g=a.isStopped,p=a.observers;return o||g?obr.EMPTY_SUBSCRIPTION:(this.currentObservers=null,p.push(r),new obr.Subscription(function(){s.currentObservers=null,s8a.arrRemove(p,r)}))},t.prototype._checkFinalizedStatuses=function(r){var s=this,a=s.hasError,o=s.thrownError,g=s.isStopped;a?r.error(o):g&&r.complete()},t.prototype.asObservable=function(){var r=new yxi.Observable;return r.source=this,r},t.create=function(r,s){return new abr(r,s)},t}(yxi.Observable);bK.Subject=Exi;var abr=function(e){bxi(t,e);function t(r,s){var a=e.call(this)||this;return a.destination=r,a.source=s,a}return t.prototype.next=function(r){var s,a;(a=(s=this.destination)===null||s===void 0?void 0:s.next)===null||a===void 0||a.call(s,r)},t.prototype.error=function(r){var s,a;(a=(s=this.destination)===null||s===void 0?void 0:s.error)===null||a===void 0||a.call(s,r)},t.prototype.complete=function(){var r,s;(s=(r=this.destination)===null||r===void 0?void 0:r.complete)===null||s===void 0||s.call(r)},t.prototype._subscribe=function(r){var s,a;return(a=(s=this.source)===null||s===void 0?void 0:s.subscribe(r))!==null&&a!==void 0?a:obr.EMPTY_SUBSCRIPTION},t}(Exi);bK.AnonymousSubject=abr});var cbr=z(rTe=>{"use strict";var o8a=rTe&&rTe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(rTe,"__esModule",{value:!0});rTe.BehaviorSubject=void 0;var a8a=ix(),c8a=function(e){o8a(t,e);function t(r){var s=e.call(this)||this;return s._value=r,s}return Object.defineProperty(t.prototype,"value",{get:function(){return this.getValue()},enumerable:!1,configurable:!0}),t.prototype._subscribe=function(r){var s=e.prototype._subscribe.call(this,r);return!s.closed&&r.next(this._value),s},t.prototype.getValue=function(){var r=this,s=r.hasError,a=r.thrownError,o=r._value;if(s)throw a;return this._throwIfClosed(),o},t.prototype.next=function(r){e.prototype.next.call(this,this._value=r)},t}(a8a.Subject);rTe.BehaviorSubject=c8a});var Gbt=z(iXe=>{"use strict";Object.defineProperty(iXe,"__esModule",{value:!0});iXe.dateTimestampProvider=void 0;iXe.dateTimestampProvider={now:function(){return(iXe.dateTimestampProvider.delegate||Date).now()},delegate:void 0}});var Fbt=z(nTe=>{"use strict";var l8a=nTe&&nTe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(nTe,"__esModule",{value:!0});nTe.ReplaySubject=void 0;var u8a=ix(),g8a=Gbt(),A8a=function(e){l8a(t,e);function t(r,s,a){r===void 0&&(r=1/0),s===void 0&&(s=1/0),a===void 0&&(a=g8a.dateTimestampProvider);var o=e.call(this)||this;return o._bufferSize=r,o._windowTime=s,o._timestampProvider=a,o._buffer=[],o._infiniteTimeWindow=!0,o._infiniteTimeWindow=s===1/0,o._bufferSize=Math.max(1,r),o._windowTime=Math.max(1,s),o}return t.prototype.next=function(r){var s=this,a=s.isStopped,o=s._buffer,g=s._infiniteTimeWindow,p=s._timestampProvider,f=s._windowTime;a||(o.push(r),!g&&o.push(p.now()+f)),this._trimBuffer(),e.prototype.next.call(this,r)},t.prototype._subscribe=function(r){this._throwIfClosed(),this._trimBuffer();for(var s=this._innerSubscribe(r),a=this,o=a._infiniteTimeWindow,g=a._buffer,p=g.slice(),f=0;f{"use strict";var d8a=iTe&&iTe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(iTe,"__esModule",{value:!0});iTe.AsyncSubject=void 0;var p8a=ix(),f8a=function(e){d8a(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r._value=null,r._hasValue=!1,r._isComplete=!1,r}return t.prototype._checkFinalizedStatuses=function(r){var s=this,a=s.hasError,o=s._hasValue,g=s._value,p=s.thrownError,f=s.isStopped,m=s._isComplete;a?r.error(p):(f||m)&&(o&&r.next(g),r.complete())},t.prototype.next=function(r){this.isStopped||(this._value=r,this._hasValue=!0)},t.prototype.complete=function(){var r=this,s=r._hasValue,a=r._value,o=r._isComplete;o||(this._isComplete=!0,s&&e.prototype.next.call(this,a),e.prototype.complete.call(this))},t}(p8a.Subject);iTe.AsyncSubject=f8a});var Bxi=z(sTe=>{"use strict";var I8a=sTe&&sTe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(sTe,"__esModule",{value:!0});sTe.Action=void 0;var C8a=c3(),m8a=function(e){I8a(t,e);function t(r,s){return e.call(this)||this}return t.prototype.schedule=function(r,s){return s===void 0&&(s=0),this},t}(C8a.Subscription);sTe.Action=m8a});var wxi=z(EK=>{"use strict";var vxi=EK&&EK.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},Sxi=EK&&EK.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";var h8a=oTe&&oTe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(oTe,"__esModule",{value:!0});oTe.AsyncAction=void 0;var _8a=Bxi(),Txi=wxi(),y8a=mq(),b8a=function(e){h8a(t,e);function t(r,s){var a=e.call(this,r,s)||this;return a.scheduler=r,a.work=s,a.pending=!1,a}return t.prototype.schedule=function(r,s){var a;if(s===void 0&&(s=0),this.closed)return this;this.state=r;var o=this.id,g=this.scheduler;return o!=null&&(this.id=this.recycleAsyncId(g,o,s)),this.pending=!0,this.delay=s,this.id=(a=this.id)!==null&&a!==void 0?a:this.requestAsyncId(g,this.id,s),this},t.prototype.requestAsyncId=function(r,s,a){return a===void 0&&(a=0),Txi.intervalProvider.setInterval(r.flush.bind(r,this),a)},t.prototype.recycleAsyncId=function(r,s,a){if(a===void 0&&(a=0),a!=null&&this.delay===a&&this.pending===!1)return s;s!=null&&Txi.intervalProvider.clearInterval(s)},t.prototype.execute=function(r,s){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var a=this._execute(r,s);if(a)return a;this.pending===!1&&this.id!=null&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))},t.prototype._execute=function(r,s){var a=!1,o;try{this.work(r)}catch(g){a=!0,o=g||new Error("Scheduled action threw falsy error")}if(a)return this.unsubscribe(),o},t.prototype.unsubscribe=function(){if(!this.closed){var r=this,s=r.id,a=r.scheduler,o=a.actions;this.work=this.state=this.scheduler=null,this.pending=!1,y8a.arrRemove(o,this),s!=null&&(this.id=this.recycleAsyncId(a,s,null)),this.delay=null,e.prototype.unsubscribe.call(this)}},t}(_8a.Action);oTe.AsyncAction=b8a});var Rxi=z(cTe=>{"use strict";Object.defineProperty(cTe,"__esModule",{value:!0});cTe.TestTools=cTe.Immediate=void 0;var E8a=1,lbr,Lbt={};function Nxi(e){return e in Lbt?(delete Lbt[e],!0):!1}cTe.Immediate={setImmediate:function(e){var t=E8a++;return Lbt[t]=!0,lbr||(lbr=Promise.resolve()),lbr.then(function(){return Nxi(t)&&e()}),t},clearImmediate:function(e){Nxi(e)}};cTe.TestTools={pending:function(){return Object.keys(Lbt).length}}});var xxi=z(BK=>{"use strict";var B8a=BK&&BK.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},v8a=BK&&BK.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";var T8a=lTe&&lTe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(lTe,"__esModule",{value:!0});lTe.AsapAction=void 0;var N8a=aTe(),kxi=xxi(),R8a=function(e){T8a(t,e);function t(r,s){var a=e.call(this,r,s)||this;return a.scheduler=r,a.work=s,a}return t.prototype.requestAsyncId=function(r,s,a){return a===void 0&&(a=0),a!==null&&a>0?e.prototype.requestAsyncId.call(this,r,s,a):(r.actions.push(this),r._scheduled||(r._scheduled=kxi.immediateProvider.setImmediate(r.flush.bind(r,void 0))))},t.prototype.recycleAsyncId=function(r,s,a){var o;if(a===void 0&&(a=0),a!=null?a>0:this.delay>0)return e.prototype.recycleAsyncId.call(this,r,s,a);var g=r.actions;s!=null&&((o=g[g.length-1])===null||o===void 0?void 0:o.id)!==s&&(kxi.immediateProvider.clearImmediate(s),r._scheduled===s&&(r._scheduled=void 0))},t}(N8a.AsyncAction);lTe.AsapAction=R8a});var ubr=z(Vbt=>{"use strict";Object.defineProperty(Vbt,"__esModule",{value:!0});Vbt.Scheduler=void 0;var D8a=Gbt(),x8a=function(){function e(t,r){r===void 0&&(r=e.now),this.schedulerActionCtor=t,this.now=r}return e.prototype.schedule=function(t,r,s){return r===void 0&&(r=0),new this.schedulerActionCtor(this,t).schedule(s,r)},e.now=D8a.dateTimestampProvider.now,e}();Vbt.Scheduler=x8a});var gTe=z(uTe=>{"use strict";var k8a=uTe&&uTe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(uTe,"__esModule",{value:!0});uTe.AsyncScheduler=void 0;var Fxi=ubr(),G8a=function(e){k8a(t,e);function t(r,s){s===void 0&&(s=Fxi.Scheduler.now);var a=e.call(this,r,s)||this;return a.actions=[],a._active=!1,a}return t.prototype.flush=function(r){var s=this.actions;if(this._active){s.push(r);return}var a;this._active=!0;do if(a=r.execute(r.state,r.delay))break;while(r=s.shift());if(this._active=!1,a){for(;r=s.shift();)r.unsubscribe();throw a}},t}(Fxi.Scheduler);uTe.AsyncScheduler=G8a});var Zxi=z(ATe=>{"use strict";var F8a=ATe&&ATe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(ATe,"__esModule",{value:!0});ATe.AsapScheduler=void 0;var Z8a=gTe(),L8a=function(e){F8a(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.flush=function(r){this._active=!0;var s=this._scheduled;this._scheduled=void 0;var a=this.actions,o;r=r||a.shift();do if(o=r.execute(r.state,r.delay))break;while((r=a[0])&&r.id===s&&a.shift());if(this._active=!1,o){for(;(r=a[0])&&r.id===s&&a.shift();)r.unsubscribe();throw o}},t}(Z8a.AsyncScheduler);ATe.AsapScheduler=L8a});var Lxi=z(VIe=>{"use strict";Object.defineProperty(VIe,"__esModule",{value:!0});VIe.asap=VIe.asapScheduler=void 0;var V8a=Gxi(),W8a=Zxi();VIe.asapScheduler=new W8a.AsapScheduler(V8a.AsapAction);VIe.asap=VIe.asapScheduler});var v9=z(WIe=>{"use strict";Object.defineProperty(WIe,"__esModule",{value:!0});WIe.async=WIe.asyncScheduler=void 0;var P8a=aTe(),O8a=gTe();WIe.asyncScheduler=new O8a.AsyncScheduler(P8a.AsyncAction);WIe.async=WIe.asyncScheduler});var Vxi=z(dTe=>{"use strict";var M8a=dTe&&dTe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(dTe,"__esModule",{value:!0});dTe.QueueAction=void 0;var Q8a=aTe(),Y8a=function(e){M8a(t,e);function t(r,s){var a=e.call(this,r,s)||this;return a.scheduler=r,a.work=s,a}return t.prototype.schedule=function(r,s){return s===void 0&&(s=0),s>0?e.prototype.schedule.call(this,r,s):(this.delay=s,this.state=r,this.scheduler.flush(this),this)},t.prototype.execute=function(r,s){return s>0||this.closed?e.prototype.execute.call(this,r,s):this._execute(r,s)},t.prototype.requestAsyncId=function(r,s,a){return a===void 0&&(a=0),a!=null&&a>0||a==null&&this.delay>0?e.prototype.requestAsyncId.call(this,r,s,a):(r.flush(this),0)},t}(Q8a.AsyncAction);dTe.QueueAction=Y8a});var Wxi=z(pTe=>{"use strict";var H8a=pTe&&pTe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(pTe,"__esModule",{value:!0});pTe.QueueScheduler=void 0;var X8a=gTe(),J8a=function(e){H8a(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(X8a.AsyncScheduler);pTe.QueueScheduler=J8a});var Pxi=z(PIe=>{"use strict";Object.defineProperty(PIe,"__esModule",{value:!0});PIe.queue=PIe.queueScheduler=void 0;var U8a=Vxi(),K8a=Wxi();PIe.queueScheduler=new K8a.QueueScheduler(U8a.QueueAction);PIe.queue=PIe.queueScheduler});var Mxi=z(fTe=>{"use strict";var j8a=fTe&&fTe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(fTe,"__esModule",{value:!0});fTe.AnimationFrameAction=void 0;var z8a=aTe(),Oxi=nbr(),q8a=function(e){j8a(t,e);function t(r,s){var a=e.call(this,r,s)||this;return a.scheduler=r,a.work=s,a}return t.prototype.requestAsyncId=function(r,s,a){return a===void 0&&(a=0),a!==null&&a>0?e.prototype.requestAsyncId.call(this,r,s,a):(r.actions.push(this),r._scheduled||(r._scheduled=Oxi.animationFrameProvider.requestAnimationFrame(function(){return r.flush(void 0)})))},t.prototype.recycleAsyncId=function(r,s,a){var o;if(a===void 0&&(a=0),a!=null?a>0:this.delay>0)return e.prototype.recycleAsyncId.call(this,r,s,a);var g=r.actions;s!=null&&((o=g[g.length-1])===null||o===void 0?void 0:o.id)!==s&&(Oxi.animationFrameProvider.cancelAnimationFrame(s),r._scheduled=void 0)},t}(z8a.AsyncAction);fTe.AnimationFrameAction=q8a});var Qxi=z(ITe=>{"use strict";var $8a=ITe&&ITe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(ITe,"__esModule",{value:!0});ITe.AnimationFrameScheduler=void 0;var e6a=gTe(),t6a=function(e){$8a(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.flush=function(r){this._active=!0;var s=this._scheduled;this._scheduled=void 0;var a=this.actions,o;r=r||a.shift();do if(o=r.execute(r.state,r.delay))break;while((r=a[0])&&r.id===s&&a.shift());if(this._active=!1,o){for(;(r=a[0])&&r.id===s&&a.shift();)r.unsubscribe();throw o}},t}(e6a.AsyncScheduler);ITe.AnimationFrameScheduler=t6a});var Yxi=z(OIe=>{"use strict";Object.defineProperty(OIe,"__esModule",{value:!0});OIe.animationFrame=OIe.animationFrameScheduler=void 0;var r6a=Mxi(),n6a=Qxi();OIe.animationFrameScheduler=new n6a.AnimationFrameScheduler(r6a.AnimationFrameAction);OIe.animationFrame=OIe.animationFrameScheduler});var Jxi=z(Boe=>{"use strict";var Hxi=Boe&&Boe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(Boe,"__esModule",{value:!0});Boe.VirtualAction=Boe.VirtualTimeScheduler=void 0;var i6a=aTe(),s6a=c3(),o6a=gTe(),a6a=function(e){Hxi(t,e);function t(r,s){r===void 0&&(r=Xxi),s===void 0&&(s=1/0);var a=e.call(this,r,function(){return a.frame})||this;return a.maxFrames=s,a.frame=0,a.index=-1,a}return t.prototype.flush=function(){for(var r=this,s=r.actions,a=r.maxFrames,o,g;(g=s[0])&&g.delay<=a&&(s.shift(),this.frame=g.delay,!(o=g.execute(g.state,g.delay))););if(o){for(;g=s.shift();)g.unsubscribe();throw o}},t.frameTimeFactor=10,t}(o6a.AsyncScheduler);Boe.VirtualTimeScheduler=a6a;var Xxi=function(e){Hxi(t,e);function t(r,s,a){a===void 0&&(a=r.index+=1);var o=e.call(this,r,s)||this;return o.scheduler=r,o.work=s,o.index=a,o.active=!0,o.index=r.index=a,o}return t.prototype.schedule=function(r,s){if(s===void 0&&(s=0),Number.isFinite(s)){if(!this.id)return e.prototype.schedule.call(this,r,s);this.active=!1;var a=new t(this.scheduler,this.work);return this.add(a),a.schedule(r,s)}else return s6a.Subscription.EMPTY},t.prototype.requestAsyncId=function(r,s,a){a===void 0&&(a=0),this.delay=r.frame+a;var o=r.actions;return o.push(this),o.sort(t.sortActions),1},t.prototype.recycleAsyncId=function(r,s,a){a===void 0&&(a=0)},t.prototype._execute=function(r,s){if(this.active===!0)return e.prototype._execute.call(this,r,s)},t.sortActions=function(r,s){return r.delay===s.delay?r.index===s.index?0:r.index>s.index?1:-1:r.delay>s.delay?1:-1},t}(i6a.AsyncAction);Boe.VirtualAction=Xxi});var Z5=z(MIe=>{"use strict";Object.defineProperty(MIe,"__esModule",{value:!0});MIe.empty=MIe.EMPTY=void 0;var Uxi=Py();MIe.EMPTY=new Uxi.Observable(function(e){return e.complete()});function c6a(e){return e?l6a(e):MIe.EMPTY}MIe.empty=c6a;function l6a(e){return new Uxi.Observable(function(t){return e.schedule(function(){return t.complete()})})}});var sXe=z(Wbt=>{"use strict";Object.defineProperty(Wbt,"__esModule",{value:!0});Wbt.isScheduler=void 0;var u6a=cy();function g6a(e){return e&&u6a.isFunction(e.schedule)}Wbt.isScheduler=g6a});var S9=z(voe=>{"use strict";Object.defineProperty(voe,"__esModule",{value:!0});voe.popNumber=voe.popScheduler=voe.popResultSelector=void 0;var A6a=cy(),d6a=sXe();function gbr(e){return e[e.length-1]}function p6a(e){return A6a.isFunction(gbr(e))?e.pop():void 0}voe.popResultSelector=p6a;function f6a(e){return d6a.isScheduler(gbr(e))?e.pop():void 0}voe.popScheduler=f6a;function I6a(e,t){return typeof gbr(e)=="number"?e.pop():t}voe.popNumber=I6a});var Obt=z(Pbt=>{"use strict";Object.defineProperty(Pbt,"__esModule",{value:!0});Pbt.isArrayLike=void 0;Pbt.isArrayLike=function(e){return e&&typeof e.length=="number"&&typeof e!="function"}});var Abr=z(Mbt=>{"use strict";Object.defineProperty(Mbt,"__esModule",{value:!0});Mbt.isPromise=void 0;var C6a=cy();function m6a(e){return C6a.isFunction(e?.then)}Mbt.isPromise=m6a});var dbr=z(Qbt=>{"use strict";Object.defineProperty(Qbt,"__esModule",{value:!0});Qbt.isInteropObservable=void 0;var h6a=eXe(),_6a=cy();function y6a(e){return _6a.isFunction(e[h6a.observable])}Qbt.isInteropObservable=y6a});var pbr=z(Ybt=>{"use strict";Object.defineProperty(Ybt,"__esModule",{value:!0});Ybt.isAsyncIterable=void 0;var b6a=cy();function E6a(e){return Symbol.asyncIterator&&b6a.isFunction(e?.[Symbol.asyncIterator])}Ybt.isAsyncIterable=E6a});var fbr=z(Hbt=>{"use strict";Object.defineProperty(Hbt,"__esModule",{value:!0});Hbt.createInvalidObservableTypeError=void 0;function B6a(e){return new TypeError("You provided "+(e!==null&&typeof e=="object"?"an invalid object":"'"+e+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}Hbt.createInvalidObservableTypeError=B6a});var Ibr=z(CTe=>{"use strict";Object.defineProperty(CTe,"__esModule",{value:!0});CTe.iterator=CTe.getSymbolIterator=void 0;function Kxi(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}CTe.getSymbolIterator=Kxi;CTe.iterator=Kxi()});var Cbr=z(Xbt=>{"use strict";Object.defineProperty(Xbt,"__esModule",{value:!0});Xbt.isIterable=void 0;var v6a=Ibr(),S6a=cy();function w6a(e){return S6a.isFunction(e?.[v6a.iterator])}Xbt.isIterable=w6a});var Jbt=z(OM=>{"use strict";var T6a=OM&&OM.__generator||function(e,t){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},s,a,o,g;return g={next:p(0),throw:p(1),return:p(2)},typeof Symbol=="function"&&(g[Symbol.iterator]=function(){return this}),g;function p(m){return function(y){return f([m,y])}}function f(m){if(s)throw new TypeError("Generator is already executing.");for(;r;)try{if(s=1,a&&(o=m[0]&2?a.return:m[0]?a.throw||((o=a.return)&&o.call(a),0):a.next)&&!(o=o.call(a,m[1])).done)return o;switch(a=0,o&&(m=[m[0]&2,o.value]),m[0]){case 0:case 1:o=m;break;case 4:return r.label++,{value:m[1],done:!1};case 5:r.label++,a=m[1],m=[0];continue;case 7:m=r.ops.pop(),r.trys.pop();continue;default:if(o=r.trys,!(o=o.length>0&&o[o.length-1])&&(m[0]===6||m[0]===2)){r=0;continue}if(m[0]===3&&(!o||m[1]>o[0]&&m[1]1||p(v,G)})})}function p(v,G){try{f(s[v](G))}catch(T){B(o[0][3],T)}}function f(v){v.value instanceof mTe?Promise.resolve(v.value.v).then(m,y):B(o[0][2],v)}function m(v){p("next",v)}function y(v){p("throw",v)}function B(v,G){v(G),o.shift(),o.length&&p(o[0][0],o[0][1])}};Object.defineProperty(OM,"__esModule",{value:!0});OM.isReadableStreamLike=OM.readableStreamLikeToAsyncGenerator=void 0;var R6a=cy();function D6a(e){return N6a(this,arguments,function(){var r,s,a,o;return T6a(this,function(g){switch(g.label){case 0:r=e.getReader(),g.label=1;case 1:g.trys.push([1,,9,10]),g.label=2;case 2:return[4,mTe(r.read())];case 3:return s=g.sent(),a=s.value,o=s.done,o?[4,mTe(void 0)]:[3,5];case 4:return[2,g.sent()];case 5:return[4,mTe(a)];case 6:return[4,g.sent()];case 7:return g.sent(),[3,2];case 8:return[3,10];case 9:return r.releaseLock(),[7];case 10:return[2]}})})}OM.readableStreamLikeToAsyncGenerator=D6a;function x6a(e){return R6a.isFunction(e?.getReader)}OM.isReadableStreamLike=x6a});var qI=z(s2=>{"use strict";var k6a=s2&&s2.__awaiter||function(e,t,r,s){function a(o){return o instanceof r?o:new r(function(g){g(o)})}return new(r||(r=Promise))(function(o,g){function p(y){try{m(s.next(y))}catch(B){g(B)}}function f(y){try{m(s.throw(y))}catch(B){g(B)}}function m(y){y.done?o(y.value):a(y.value).then(p,f)}m((s=s.apply(e,t||[])).next())})},G6a=s2&&s2.__generator||function(e,t){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},s,a,o,g;return g={next:p(0),throw:p(1),return:p(2)},typeof Symbol=="function"&&(g[Symbol.iterator]=function(){return this}),g;function p(m){return function(y){return f([m,y])}}function f(m){if(s)throw new TypeError("Generator is already executing.");for(;r;)try{if(s=1,a&&(o=m[0]&2?a.return:m[0]?a.throw||((o=a.return)&&o.call(a),0):a.next)&&!(o=o.call(a,m[1])).done)return o;switch(a=0,o&&(m=[m[0]&2,o.value]),m[0]){case 0:case 1:o=m;break;case 4:return r.label++,{value:m[1],done:!1};case 5:r.label++,a=m[1],m=[0];continue;case 7:m=r.ops.pop(),r.trys.pop();continue;default:if(o=r.trys,!(o=o.length>0&&o[o.length-1])&&(m[0]===6||m[0]===2)){r=0;continue}if(m[0]===3&&(!o||m[1]>o[0]&&m[1]=e.length&&(e=void 0),{value:e&&e[s++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(s2,"__esModule",{value:!0});s2.fromReadableStreamLike=s2.fromAsyncIterable=s2.fromIterable=s2.fromPromise=s2.fromArrayLike=s2.fromInteropObservable=s2.innerFrom=void 0;var Z6a=Obt(),L6a=Abr(),hTe=Py(),V6a=dbr(),W6a=pbr(),P6a=fbr(),O6a=Cbr(),jxi=Jbt(),M6a=cy(),Q6a=jyr(),Y6a=eXe();function H6a(e){if(e instanceof hTe.Observable)return e;if(e!=null){if(V6a.isInteropObservable(e))return zxi(e);if(Z6a.isArrayLike(e))return qxi(e);if(L6a.isPromise(e))return $xi(e);if(W6a.isAsyncIterable(e))return hbr(e);if(O6a.isIterable(e))return eki(e);if(jxi.isReadableStreamLike(e))return tki(e)}throw P6a.createInvalidObservableTypeError(e)}s2.innerFrom=H6a;function zxi(e){return new hTe.Observable(function(t){var r=e[Y6a.observable]();if(M6a.isFunction(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}s2.fromInteropObservable=zxi;function qxi(e){return new hTe.Observable(function(t){for(var r=0;r{"use strict";Object.defineProperty(Ubt,"__esModule",{value:!0});Ubt.executeSchedule=void 0;function J6a(e,t,r,s,a){s===void 0&&(s=0),a===void 0&&(a=!1);var o=t.schedule(function(){r(),a?e.add(this.schedule(null,s)):this.unsubscribe()},s);if(e.add(o),!a)return o}Ubt.executeSchedule=J6a});var _Te=z(Kbt=>{"use strict";Object.defineProperty(Kbt,"__esModule",{value:!0});Kbt.observeOn=void 0;var _br=hq(),U6a=Zg(),K6a=ld();function j6a(e,t){return t===void 0&&(t=0),U6a.operate(function(r,s){r.subscribe(K6a.createOperatorSubscriber(s,function(a){return _br.executeSchedule(s,e,function(){return s.next(a)},t)},function(){return _br.executeSchedule(s,e,function(){return s.complete()},t)},function(a){return _br.executeSchedule(s,e,function(){return s.error(a)},t)}))})}Kbt.observeOn=j6a});var yTe=z(jbt=>{"use strict";Object.defineProperty(jbt,"__esModule",{value:!0});jbt.subscribeOn=void 0;var z6a=Zg();function q6a(e,t){return t===void 0&&(t=0),z6a.operate(function(r,s){s.add(e.schedule(function(){return r.subscribe(s)},t))})}jbt.subscribeOn=q6a});var rki=z(zbt=>{"use strict";Object.defineProperty(zbt,"__esModule",{value:!0});zbt.scheduleObservable=void 0;var $6a=qI(),e7a=_Te(),t7a=yTe();function r7a(e,t){return $6a.innerFrom(e).pipe(t7a.subscribeOn(t),e7a.observeOn(t))}zbt.scheduleObservable=r7a});var nki=z(qbt=>{"use strict";Object.defineProperty(qbt,"__esModule",{value:!0});qbt.schedulePromise=void 0;var n7a=qI(),i7a=_Te(),s7a=yTe();function o7a(e,t){return n7a.innerFrom(e).pipe(s7a.subscribeOn(t),i7a.observeOn(t))}qbt.schedulePromise=o7a});var iki=z($bt=>{"use strict";Object.defineProperty($bt,"__esModule",{value:!0});$bt.scheduleArray=void 0;var a7a=Py();function c7a(e,t){return new a7a.Observable(function(r){var s=0;return t.schedule(function(){s===e.length?r.complete():(r.next(e[s++]),r.closed||this.schedule())})})}$bt.scheduleArray=c7a});var ybr=z(eEt=>{"use strict";Object.defineProperty(eEt,"__esModule",{value:!0});eEt.scheduleIterable=void 0;var l7a=Py(),u7a=Ibr(),g7a=cy(),ski=hq();function A7a(e,t){return new l7a.Observable(function(r){var s;return ski.executeSchedule(r,t,function(){s=e[u7a.iterator](),ski.executeSchedule(r,t,function(){var a,o,g;try{a=s.next(),o=a.value,g=a.done}catch(p){r.error(p);return}g?r.complete():r.next(o)},0,!0)}),function(){return g7a.isFunction(s?.return)&&s.return()}})}eEt.scheduleIterable=A7a});var bbr=z(tEt=>{"use strict";Object.defineProperty(tEt,"__esModule",{value:!0});tEt.scheduleAsyncIterable=void 0;var d7a=Py(),oki=hq();function p7a(e,t){if(!e)throw new Error("Iterable cannot be null");return new d7a.Observable(function(r){oki.executeSchedule(r,t,function(){var s=e[Symbol.asyncIterator]();oki.executeSchedule(r,t,function(){s.next().then(function(a){a.done?r.complete():r.next(a.value)})},0,!0)})})}tEt.scheduleAsyncIterable=p7a});var aki=z(rEt=>{"use strict";Object.defineProperty(rEt,"__esModule",{value:!0});rEt.scheduleReadableStreamLike=void 0;var f7a=bbr(),I7a=Jbt();function C7a(e,t){return f7a.scheduleAsyncIterable(I7a.readableStreamLikeToAsyncGenerator(e),t)}rEt.scheduleReadableStreamLike=C7a});var Ebr=z(nEt=>{"use strict";Object.defineProperty(nEt,"__esModule",{value:!0});nEt.scheduled=void 0;var m7a=rki(),h7a=nki(),_7a=iki(),y7a=ybr(),b7a=bbr(),E7a=dbr(),B7a=Abr(),v7a=Obt(),S7a=Cbr(),w7a=pbr(),T7a=fbr(),N7a=Jbt(),R7a=aki();function D7a(e,t){if(e!=null){if(E7a.isInteropObservable(e))return m7a.scheduleObservable(e,t);if(v7a.isArrayLike(e))return _7a.scheduleArray(e,t);if(B7a.isPromise(e))return h7a.schedulePromise(e,t);if(w7a.isAsyncIterable(e))return b7a.scheduleAsyncIterable(e,t);if(S7a.isIterable(e))return y7a.scheduleIterable(e,t);if(N7a.isReadableStreamLike(e))return R7a.scheduleReadableStreamLike(e,t)}throw T7a.createInvalidObservableTypeError(e)}nEt.scheduled=D7a});var _q=z(iEt=>{"use strict";Object.defineProperty(iEt,"__esModule",{value:!0});iEt.from=void 0;var x7a=Ebr(),k7a=qI();function G7a(e,t){return t?x7a.scheduled(e,t):k7a.innerFrom(e)}iEt.from=G7a});var oEt=z(sEt=>{"use strict";Object.defineProperty(sEt,"__esModule",{value:!0});sEt.of=void 0;var F7a=S9(),Z7a=_q();function L7a(){for(var e=[],t=0;t{"use strict";Object.defineProperty(aEt,"__esModule",{value:!0});aEt.throwError=void 0;var V7a=Py(),W7a=cy();function P7a(e,t){var r=W7a.isFunction(e)?e:function(){return e},s=function(a){return a.error(r())};return new V7a.Observable(t?function(a){return t.schedule(s,0,a)}:s)}aEt.throwError=P7a});var cEt=z(yq=>{"use strict";Object.defineProperty(yq,"__esModule",{value:!0});yq.observeNotification=yq.Notification=yq.NotificationKind=void 0;var O7a=Z5(),M7a=oEt(),Q7a=Bbr(),Y7a=cy(),H7a;(function(e){e.NEXT="N",e.ERROR="E",e.COMPLETE="C"})(H7a=yq.NotificationKind||(yq.NotificationKind={}));var X7a=function(){function e(t,r,s){this.kind=t,this.value=r,this.error=s,this.hasValue=t==="N"}return e.prototype.observe=function(t){return cki(this,t)},e.prototype.do=function(t,r,s){var a=this,o=a.kind,g=a.value,p=a.error;return o==="N"?t?.(g):o==="E"?r?.(p):s?.()},e.prototype.accept=function(t,r,s){var a;return Y7a.isFunction((a=t)===null||a===void 0?void 0:a.next)?this.observe(t):this.do(t,r,s)},e.prototype.toObservable=function(){var t=this,r=t.kind,s=t.value,a=t.error,o=r==="N"?M7a.of(s):r==="E"?Q7a.throwError(function(){return a}):r==="C"?O7a.EMPTY:0;if(!o)throw new TypeError("Unexpected notification kind "+r);return o},e.createNext=function(t){return new e("N",t)},e.createError=function(t){return new e("E",void 0,t)},e.createComplete=function(){return e.completeNotification},e.completeNotification=new e("C"),e}();yq.Notification=X7a;function cki(e,t){var r,s,a,o=e,g=o.kind,p=o.value,f=o.error;if(typeof g!="string")throw new TypeError('Invalid notification, missing "kind"');g==="N"?(r=t.next)===null||r===void 0||r.call(t,p):g==="E"?(s=t.error)===null||s===void 0||s.call(t,f):(a=t.complete)===null||a===void 0||a.call(t)}yq.observeNotification=cki});var uki=z(lEt=>{"use strict";Object.defineProperty(lEt,"__esModule",{value:!0});lEt.isObservable=void 0;var J7a=Py(),lki=cy();function U7a(e){return!!e&&(e instanceof J7a.Observable||lki.isFunction(e.lift)&&lki.isFunction(e.subscribe))}lEt.isObservable=U7a});var Soe=z(uEt=>{"use strict";Object.defineProperty(uEt,"__esModule",{value:!0});uEt.EmptyError=void 0;var K7a=boe();uEt.EmptyError=K7a.createErrorClass(function(e){return function(){e(this),this.name="EmptyError",this.message="no elements in sequence"}})});var gki=z(gEt=>{"use strict";Object.defineProperty(gEt,"__esModule",{value:!0});gEt.lastValueFrom=void 0;var j7a=Soe();function z7a(e,t){var r=typeof t=="object";return new Promise(function(s,a){var o=!1,g;e.subscribe({next:function(p){g=p,o=!0},error:a,complete:function(){o?s(g):r?s(t.defaultValue):a(new j7a.EmptyError)}})})}gEt.lastValueFrom=z7a});var Aki=z(AEt=>{"use strict";Object.defineProperty(AEt,"__esModule",{value:!0});AEt.firstValueFrom=void 0;var q7a=Soe(),$7a=qwe();function eja(e,t){var r=typeof t=="object";return new Promise(function(s,a){var o=new $7a.SafeSubscriber({next:function(g){s(g),o.unsubscribe()},error:a,complete:function(){r?s(t.defaultValue):a(new q7a.EmptyError)}});e.subscribe(o)})}AEt.firstValueFrom=eja});var vbr=z(dEt=>{"use strict";Object.defineProperty(dEt,"__esModule",{value:!0});dEt.ArgumentOutOfRangeError=void 0;var tja=boe();dEt.ArgumentOutOfRangeError=tja.createErrorClass(function(e){return function(){e(this),this.name="ArgumentOutOfRangeError",this.message="argument out of range"}})});var Sbr=z(pEt=>{"use strict";Object.defineProperty(pEt,"__esModule",{value:!0});pEt.NotFoundError=void 0;var rja=boe();pEt.NotFoundError=rja.createErrorClass(function(e){return function(r){e(this),this.name="NotFoundError",this.message=r}})});var wbr=z(fEt=>{"use strict";Object.defineProperty(fEt,"__esModule",{value:!0});fEt.SequenceError=void 0;var nja=boe();fEt.SequenceError=nja.createErrorClass(function(e){return function(r){e(this),this.name="SequenceError",this.message=r}})});var CEt=z(IEt=>{"use strict";Object.defineProperty(IEt,"__esModule",{value:!0});IEt.isValidDate=void 0;function ija(e){return e instanceof Date&&!isNaN(e)}IEt.isValidDate=ija});var oXe=z(QIe=>{"use strict";Object.defineProperty(QIe,"__esModule",{value:!0});QIe.timeout=QIe.TimeoutError=void 0;var sja=v9(),oja=CEt(),aja=Zg(),cja=qI(),lja=boe(),uja=ld(),gja=hq();QIe.TimeoutError=lja.createErrorClass(function(e){return function(r){r===void 0&&(r=null),e(this),this.message="Timeout has occurred",this.name="TimeoutError",this.info=r}});function Aja(e,t){var r=oja.isValidDate(e)?{first:e}:typeof e=="number"?{each:e}:e,s=r.first,a=r.each,o=r.with,g=o===void 0?dja:o,p=r.scheduler,f=p===void 0?t??sja.asyncScheduler:p,m=r.meta,y=m===void 0?null:m;if(s==null&&a==null)throw new TypeError("No timeout provided.");return aja.operate(function(B,v){var G,T,O=null,X=0,U=function(le){T=gja.executeSchedule(v,f,function(){try{G.unsubscribe(),cja.innerFrom(g({meta:y,lastValue:O,seen:X})).subscribe(v)}catch(ae){v.error(ae)}},le)};G=B.subscribe(uja.createOperatorSubscriber(v,function(le){T?.unsubscribe(),X++,v.next(O=le),a>0&&U(a)},void 0,void 0,function(){T?.closed||T?.unsubscribe(),O=null})),!X&&U(s!=null?typeof s=="number"?s:+s-f.now():a)})}QIe.timeout=Aja;function dja(e){throw new QIe.TimeoutError(e)}});var bq=z(mEt=>{"use strict";Object.defineProperty(mEt,"__esModule",{value:!0});mEt.map=void 0;var pja=Zg(),fja=ld();function Ija(e,t){return pja.operate(function(r,s){var a=0;r.subscribe(fja.createOperatorSubscriber(s,function(o){s.next(e.call(t,o,a++))}))})}mEt.map=Ija});var Toe=z(woe=>{"use strict";var Cja=woe&&woe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},mja=woe&&woe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";var Eja=Noe&&Noe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},dki=Noe&&Noe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";Object.defineProperty(hEt,"__esModule",{value:!0});hEt.bindCallback=void 0;var Rja=Nbr();function Dja(e,t,r){return Rja.bindCallbackInternals(!1,e,t,r)}hEt.bindCallback=Dja});var fki=z(_Et=>{"use strict";Object.defineProperty(_Et,"__esModule",{value:!0});_Et.bindNodeCallback=void 0;var xja=Nbr();function kja(e,t,r){return xja.bindCallbackInternals(!0,e,t,r)}_Et.bindNodeCallback=kja});var Rbr=z(yEt=>{"use strict";Object.defineProperty(yEt,"__esModule",{value:!0});yEt.argsArgArrayOrObject=void 0;var Gja=Array.isArray,Fja=Object.getPrototypeOf,Zja=Object.prototype,Lja=Object.keys;function Vja(e){if(e.length===1){var t=e[0];if(Gja(t))return{args:t,keys:null};if(Wja(t)){var r=Lja(t);return{args:r.map(function(s){return t[s]}),keys:r}}}return{args:e,keys:null}}yEt.argsArgArrayOrObject=Vja;function Wja(e){return e&&typeof e=="object"&&Fja(e)===Zja}});var Dbr=z(bEt=>{"use strict";Object.defineProperty(bEt,"__esModule",{value:!0});bEt.createObject=void 0;function Pja(e,t){return e.reduce(function(r,s,a){return r[s]=t[a],r},{})}bEt.createObject=Pja});var EEt=z(bTe=>{"use strict";Object.defineProperty(bTe,"__esModule",{value:!0});bTe.combineLatestInit=bTe.combineLatest=void 0;var Oja=Py(),Mja=Rbr(),mki=_q(),hki=nx(),Qja=Toe(),Iki=S9(),Yja=Dbr(),Hja=ld(),Xja=hq();function Jja(){for(var e=[],t=0;t{"use strict";Object.defineProperty(BEt,"__esModule",{value:!0});BEt.mergeInternals=void 0;var Uja=qI(),Kja=hq(),yki=ld();function jja(e,t,r,s,a,o,g,p){var f=[],m=0,y=0,B=!1,v=function(){B&&!f.length&&!m&&t.complete()},G=function(O){return m{"use strict";Object.defineProperty(SEt,"__esModule",{value:!0});SEt.mergeMap=void 0;var zja=bq(),qja=qI(),$ja=Zg(),eza=vEt(),tza=cy();function bki(e,t,r){return r===void 0&&(r=1/0),tza.isFunction(t)?bki(function(s,a){return zja.map(function(o,g){return t(s,o,a,g)})(qja.innerFrom(e(s,a)))},r):(typeof t=="number"&&(r=t),$ja.operate(function(s,a){return eza.mergeInternals(s,a,e,r)}))}SEt.mergeMap=bki});var ETe=z(wEt=>{"use strict";Object.defineProperty(wEt,"__esModule",{value:!0});wEt.mergeAll=void 0;var rza=vK(),nza=nx();function iza(e){return e===void 0&&(e=1/0),rza.mergeMap(nza.identity,e)}wEt.mergeAll=iza});var aXe=z(TEt=>{"use strict";Object.defineProperty(TEt,"__esModule",{value:!0});TEt.concatAll=void 0;var sza=ETe();function oza(){return sza.mergeAll(1)}TEt.concatAll=oza});var cXe=z(NEt=>{"use strict";Object.defineProperty(NEt,"__esModule",{value:!0});NEt.concat=void 0;var aza=aXe(),cza=S9(),lza=_q();function uza(){for(var e=[],t=0;t{"use strict";Object.defineProperty(REt,"__esModule",{value:!0});REt.defer=void 0;var gza=Py(),Aza=qI();function dza(e){return new gza.Observable(function(t){Aza.innerFrom(e()).subscribe(t)})}REt.defer=dza});var Eki=z(DEt=>{"use strict";Object.defineProperty(DEt,"__esModule",{value:!0});DEt.connectable=void 0;var pza=ix(),fza=Py(),Iza=lXe(),Cza={connector:function(){return new pza.Subject},resetOnDisconnect:!0};function mza(e,t){t===void 0&&(t=Cza);var r=null,s=t.connector,a=t.resetOnDisconnect,o=a===void 0?!0:a,g=s(),p=new fza.Observable(function(f){return g.subscribe(f)});return p.connect=function(){return(!r||r.closed)&&(r=Iza.defer(function(){return e}).subscribe(g),o&&r.add(function(){return g=s()})),r},p}DEt.connectable=mza});var Bki=z(xEt=>{"use strict";Object.defineProperty(xEt,"__esModule",{value:!0});xEt.forkJoin=void 0;var hza=Py(),_za=Rbr(),yza=qI(),bza=S9(),Eza=ld(),Bza=Toe(),vza=Dbr();function Sza(){for(var e=[],t=0;t{"use strict";var wza=BTe&&BTe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o};Object.defineProperty(BTe,"__esModule",{value:!0});BTe.fromEvent=void 0;var Tza=qI(),Nza=Py(),Rza=vK(),Dza=Obt(),YIe=cy(),xza=Toe(),kza=["addListener","removeListener"],Gza=["addEventListener","removeEventListener"],Fza=["on","off"];function xbr(e,t,r,s){if(YIe.isFunction(r)&&(s=r,r=void 0),s)return xbr(e,t,r).pipe(xza.mapOneOrManyArgs(s));var a=wza(Vza(e)?Gza.map(function(p){return function(f){return e[p](t,f,r)}}):Zza(e)?kza.map(vki(e,t)):Lza(e)?Fza.map(vki(e,t)):[],2),o=a[0],g=a[1];if(!o&&Dza.isArrayLike(e))return Rza.mergeMap(function(p){return xbr(p,t,r)})(Tza.innerFrom(e));if(!o)throw new TypeError("Invalid event target");return new Nza.Observable(function(p){var f=function(){for(var m=[],y=0;y{"use strict";Object.defineProperty(kEt,"__esModule",{value:!0});kEt.fromEventPattern=void 0;var Wza=Py(),Pza=cy(),Oza=Toe();function wki(e,t,r){return r?wki(e,t).pipe(Oza.mapOneOrManyArgs(r)):new Wza.Observable(function(s){var a=function(){for(var g=[],p=0;p{"use strict";var Mza=vTe&&vTe.__generator||function(e,t){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},s,a,o,g;return g={next:p(0),throw:p(1),return:p(2)},typeof Symbol=="function"&&(g[Symbol.iterator]=function(){return this}),g;function p(m){return function(y){return f([m,y])}}function f(m){if(s)throw new TypeError("Generator is already executing.");for(;r;)try{if(s=1,a&&(o=m[0]&2?a.return:m[0]?a.throw||((o=a.return)&&o.call(a),0):a.next)&&!(o=o.call(a,m[1])).done)return o;switch(a=0,o&&(m=[m[0]&2,o.value]),m[0]){case 0:case 1:o=m;break;case 4:return r.label++,{value:m[1],done:!1};case 5:r.label++,a=m[1],m=[0];continue;case 7:m=r.ops.pop(),r.trys.pop();continue;default:if(o=r.trys,!(o=o.length>0&&o[o.length-1])&&(m[0]===6||m[0]===2)){r=0;continue}if(m[0]===3&&(!o||m[1]>o[0]&&m[1]{"use strict";Object.defineProperty(GEt,"__esModule",{value:!0});GEt.iif=void 0;var Jza=lXe();function Uza(e,t,r){return Jza.defer(function(){return e()?t:r})}GEt.iif=Uza});var Roe=z(FEt=>{"use strict";Object.defineProperty(FEt,"__esModule",{value:!0});FEt.timer=void 0;var Kza=Py(),jza=v9(),zza=sXe(),qza=CEt();function $za(e,t,r){e===void 0&&(e=0),r===void 0&&(r=jza.async);var s=-1;return t!=null&&(zza.isScheduler(t)?r=t:s=t),new Kza.Observable(function(a){var o=qza.isValidDate(e)?+e-r.now():e;o<0&&(o=0);var g=0;return r.schedule(function(){a.closed||(a.next(g++),0<=s?this.schedule(void 0,s):a.complete())},o)})}FEt.timer=$za});var kbr=z(ZEt=>{"use strict";Object.defineProperty(ZEt,"__esModule",{value:!0});ZEt.interval=void 0;var eqa=v9(),tqa=Roe();function rqa(e,t){return e===void 0&&(e=0),t===void 0&&(t=eqa.asyncScheduler),e<0&&(e=0),tqa.timer(e,e,t)}ZEt.interval=rqa});var kki=z(LEt=>{"use strict";Object.defineProperty(LEt,"__esModule",{value:!0});LEt.merge=void 0;var nqa=ETe(),iqa=qI(),sqa=Z5(),xki=S9(),oqa=_q();function aqa(){for(var e=[],t=0;t{"use strict";Object.defineProperty(HIe,"__esModule",{value:!0});HIe.never=HIe.NEVER=void 0;var cqa=Py(),lqa=rx();HIe.NEVER=new cqa.Observable(lqa.noop);function uqa(){return HIe.NEVER}HIe.never=uqa});var Doe=z(VEt=>{"use strict";Object.defineProperty(VEt,"__esModule",{value:!0});VEt.argsOrArgArray=void 0;var gqa=Array.isArray;function Aqa(e){return e.length===1&&gqa(e[0])?e[0]:e}VEt.argsOrArgArray=Aqa});var Fbr=z(WEt=>{"use strict";Object.defineProperty(WEt,"__esModule",{value:!0});WEt.onErrorResumeNext=void 0;var dqa=Py(),pqa=Doe(),fqa=ld(),Gki=rx(),Iqa=qI();function Cqa(){for(var e=[],t=0;t{"use strict";Object.defineProperty(PEt,"__esModule",{value:!0});PEt.pairs=void 0;var mqa=_q();function hqa(e,t){return mqa.from(Object.entries(e),t)}PEt.pairs=hqa});var Zbr=z(OEt=>{"use strict";Object.defineProperty(OEt,"__esModule",{value:!0});OEt.not=void 0;function _qa(e,t){return function(r,s){return!e.call(t,r,s)}}OEt.not=_qa});var Eq=z(MEt=>{"use strict";Object.defineProperty(MEt,"__esModule",{value:!0});MEt.filter=void 0;var yqa=Zg(),bqa=ld();function Eqa(e,t){return yqa.operate(function(r,s){var a=0;r.subscribe(bqa.createOperatorSubscriber(s,function(o){return e.call(t,o,a++)&&s.next(o)}))})}MEt.filter=Eqa});var Vki=z(QEt=>{"use strict";Object.defineProperty(QEt,"__esModule",{value:!0});QEt.partition=void 0;var Bqa=Zbr(),Zki=Eq(),Lki=qI();function vqa(e,t,r){return[Zki.filter(t,r)(Lki.innerFrom(e)),Zki.filter(Bqa.not(t,r))(Lki.innerFrom(e))]}QEt.partition=vqa});var Lbr=z(STe=>{"use strict";Object.defineProperty(STe,"__esModule",{value:!0});STe.raceInit=STe.race=void 0;var Sqa=Py(),Wki=qI(),wqa=Doe(),Tqa=ld();function Nqa(){for(var e=[],t=0;t{"use strict";Object.defineProperty(YEt,"__esModule",{value:!0});YEt.range=void 0;var Rqa=Py(),Dqa=Z5();function xqa(e,t,r){if(t==null&&(t=e,e=0),t<=0)return Dqa.EMPTY;var s=t+e;return new Rqa.Observable(r?function(a){var o=e;return r.schedule(function(){o{"use strict";Object.defineProperty(HEt,"__esModule",{value:!0});HEt.using=void 0;var kqa=Py(),Gqa=qI(),Fqa=Z5();function Zqa(e,t){return new kqa.Observable(function(r){var s=e(),a=t(s),o=a?Gqa.innerFrom(a):Fqa.EMPTY;return o.subscribe(r),function(){s&&s.unsubscribe()}})}HEt.using=Zqa});var XEt=z(xoe=>{"use strict";var Lqa=xoe&&xoe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},Vqa=xoe&&xoe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";Object.defineProperty(Qki,"__esModule",{value:!0})});var UEt=z(JEt=>{"use strict";Object.defineProperty(JEt,"__esModule",{value:!0});JEt.audit=void 0;var Xqa=Zg(),Jqa=qI(),Hki=ld();function Uqa(e){return Xqa.operate(function(t,r){var s=!1,a=null,o=null,g=!1,p=function(){if(o?.unsubscribe(),o=null,s){s=!1;var m=a;a=null,r.next(m)}g&&r.complete()},f=function(){o=null,g&&r.complete()};t.subscribe(Hki.createOperatorSubscriber(r,function(m){s=!0,a=m,o||Jqa.innerFrom(e(m)).subscribe(o=Hki.createOperatorSubscriber(r,p,f))},function(){g=!0,(!s||!o||o.closed)&&r.complete()}))})}JEt.audit=Uqa});var Vbr=z(KEt=>{"use strict";Object.defineProperty(KEt,"__esModule",{value:!0});KEt.auditTime=void 0;var Kqa=v9(),jqa=UEt(),zqa=Roe();function qqa(e,t){return t===void 0&&(t=Kqa.asyncScheduler),jqa.audit(function(){return zqa.timer(e,t)})}KEt.auditTime=qqa});var Wbr=z(jEt=>{"use strict";Object.defineProperty(jEt,"__esModule",{value:!0});jEt.buffer=void 0;var $qa=Zg(),e$a=rx(),Xki=ld(),t$a=qI();function r$a(e){return $qa.operate(function(t,r){var s=[];return t.subscribe(Xki.createOperatorSubscriber(r,function(a){return s.push(a)},function(){r.next(s),r.complete()})),t$a.innerFrom(e).subscribe(Xki.createOperatorSubscriber(r,function(){var a=s;s=[],r.next(a)},e$a.noop)),function(){s=null}})}jEt.buffer=r$a});var Obr=z(wTe=>{"use strict";var Pbr=wTe&&wTe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],s=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&s>=e.length&&(e=void 0),{value:e&&e[s++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(wTe,"__esModule",{value:!0});wTe.bufferCount=void 0;var n$a=Zg(),i$a=ld(),s$a=mq();function o$a(e,t){return t===void 0&&(t=null),t=t??e,n$a.operate(function(r,s){var a=[],o=0;r.subscribe(i$a.createOperatorSubscriber(s,function(g){var p,f,m,y,B=null;o++%t===0&&a.push([]);try{for(var v=Pbr(a),G=v.next();!G.done;G=v.next()){var T=G.value;T.push(g),e<=T.length&&(B=B??[],B.push(T))}}catch(U){p={error:U}}finally{try{G&&!G.done&&(f=v.return)&&f.call(v)}finally{if(p)throw p.error}}if(B)try{for(var O=Pbr(B),X=O.next();!X.done;X=O.next()){var T=X.value;s$a.arrRemove(a,T),s.next(T)}}catch(U){m={error:U}}finally{try{X&&!X.done&&(y=O.return)&&y.call(O)}finally{if(m)throw m.error}}},function(){var g,p;try{for(var f=Pbr(a),m=f.next();!m.done;m=f.next()){var y=m.value;s.next(y)}}catch(B){g={error:B}}finally{try{m&&!m.done&&(p=f.return)&&p.call(f)}finally{if(g)throw g.error}}s.complete()},void 0,function(){a=null}))})}wTe.bufferCount=o$a});var Mbr=z(TTe=>{"use strict";var a$a=TTe&&TTe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],s=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&s>=e.length&&(e=void 0),{value:e&&e[s++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(TTe,"__esModule",{value:!0});TTe.bufferTime=void 0;var c$a=c3(),l$a=Zg(),u$a=ld(),g$a=mq(),A$a=v9(),d$a=S9(),Jki=hq();function p$a(e){for(var t,r,s=[],a=1;a=0?Jki.executeSchedule(m,o,G,g,!0):B=!0,G();var T=u$a.createOperatorSubscriber(m,function(O){var X,U,le=y.slice();try{for(var ae=a$a(le),ge=ae.next();!ge.done;ge=ae.next()){var fe=ge.value,pe=fe.buffer;pe.push(O),p<=pe.length&&v(fe)}}catch(he){X={error:he}}finally{try{ge&&!ge.done&&(U=ae.return)&&U.call(ae)}finally{if(X)throw X.error}}},function(){for(;y?.length;)m.next(y.shift().buffer);T?.unsubscribe(),m.complete(),m.unsubscribe()},void 0,function(){return y=null});f.subscribe(T)})}TTe.bufferTime=p$a});var Ybr=z(NTe=>{"use strict";var f$a=NTe&&NTe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],s=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&s>=e.length&&(e=void 0),{value:e&&e[s++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(NTe,"__esModule",{value:!0});NTe.bufferToggle=void 0;var I$a=c3(),C$a=Zg(),Uki=qI(),Qbr=ld(),Kki=rx(),m$a=mq();function h$a(e,t){return C$a.operate(function(r,s){var a=[];Uki.innerFrom(e).subscribe(Qbr.createOperatorSubscriber(s,function(o){var g=[];a.push(g);var p=new I$a.Subscription,f=function(){m$a.arrRemove(a,g),s.next(g),p.unsubscribe()};p.add(Uki.innerFrom(t(o)).subscribe(Qbr.createOperatorSubscriber(s,f,Kki.noop)))},Kki.noop)),r.subscribe(Qbr.createOperatorSubscriber(s,function(o){var g,p;try{for(var f=f$a(a),m=f.next();!m.done;m=f.next()){var y=m.value;y.push(o)}}catch(B){g={error:B}}finally{try{m&&!m.done&&(p=f.return)&&p.call(f)}finally{if(g)throw g.error}}},function(){for(;a.length>0;)s.next(a.shift());s.complete()}))})}NTe.bufferToggle=h$a});var Hbr=z(zEt=>{"use strict";Object.defineProperty(zEt,"__esModule",{value:!0});zEt.bufferWhen=void 0;var _$a=Zg(),y$a=rx(),jki=ld(),b$a=qI();function E$a(e){return _$a.operate(function(t,r){var s=null,a=null,o=function(){a?.unsubscribe();var g=s;s=[],g&&r.next(g),b$a.innerFrom(e()).subscribe(a=jki.createOperatorSubscriber(r,o,y$a.noop))};o(),t.subscribe(jki.createOperatorSubscriber(r,function(g){return s?.push(g)},function(){s&&r.next(s),r.complete()},void 0,function(){return s=a=null}))})}zEt.bufferWhen=E$a});var Xbr=z(qEt=>{"use strict";Object.defineProperty(qEt,"__esModule",{value:!0});qEt.catchError=void 0;var B$a=qI(),v$a=ld(),S$a=Zg();function zki(e){return S$a.operate(function(t,r){var s=null,a=!1,o;s=t.subscribe(v$a.createOperatorSubscriber(r,void 0,void 0,function(g){o=B$a.innerFrom(e(g,zki(e)(t))),s?(s.unsubscribe(),s=null,o.subscribe(r)):a=!0})),a&&(s.unsubscribe(),s=null,o.subscribe(r))})}qEt.catchError=zki});var Jbr=z($Et=>{"use strict";Object.defineProperty($Et,"__esModule",{value:!0});$Et.scanInternals=void 0;var w$a=ld();function T$a(e,t,r,s,a){return function(o,g){var p=r,f=t,m=0;o.subscribe(w$a.createOperatorSubscriber(g,function(y){var B=m++;f=p?e(f,y,B):(p=!0,y),s&&g.next(f)},a&&function(){p&&g.next(f),g.complete()}))}}$Et.scanInternals=T$a});var XIe=z(e1t=>{"use strict";Object.defineProperty(e1t,"__esModule",{value:!0});e1t.reduce=void 0;var N$a=Jbr(),R$a=Zg();function D$a(e,t){return R$a.operate(N$a.scanInternals(e,t,arguments.length>=2,!1,!0))}e1t.reduce=D$a});var r1t=z(t1t=>{"use strict";Object.defineProperty(t1t,"__esModule",{value:!0});t1t.toArray=void 0;var x$a=XIe(),k$a=Zg(),G$a=function(e,t){return e.push(t),e};function F$a(){return k$a.operate(function(e,t){x$a.reduce(G$a,[])(e).subscribe(t)})}t1t.toArray=F$a});var Ubr=z(n1t=>{"use strict";Object.defineProperty(n1t,"__esModule",{value:!0});n1t.joinAllInternals=void 0;var Z$a=nx(),L$a=Toe(),V$a=tXe(),W$a=vK(),P$a=r1t();function O$a(e,t){return V$a.pipe(P$a.toArray(),W$a.mergeMap(function(r){return e(r)}),t?L$a.mapOneOrManyArgs(t):Z$a.identity)}n1t.joinAllInternals=O$a});var s1t=z(i1t=>{"use strict";Object.defineProperty(i1t,"__esModule",{value:!0});i1t.combineLatestAll=void 0;var M$a=EEt(),Q$a=Ubr();function Y$a(e){return Q$a.joinAllInternals(M$a.combineLatest,e)}i1t.combineLatestAll=Y$a});var Kbr=z(o1t=>{"use strict";Object.defineProperty(o1t,"__esModule",{value:!0});o1t.combineAll=void 0;var H$a=s1t();o1t.combineAll=H$a.combineLatestAll});var jbr=z(koe=>{"use strict";var qki=koe&&koe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},$ki=koe&&koe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";var q$a=Goe&&Goe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},$$a=Goe&&Goe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";Object.defineProperty(a1t,"__esModule",{value:!0});a1t.concatMap=void 0;var tGi=vK(),rec=cy();function nec(e,t){return rec.isFunction(t)?tGi.mergeMap(e,t,1):tGi.mergeMap(e,1)}a1t.concatMap=nec});var qbr=z(l1t=>{"use strict";Object.defineProperty(l1t,"__esModule",{value:!0});l1t.concatMapTo=void 0;var rGi=c1t(),iec=cy();function sec(e,t){return iec.isFunction(t)?rGi.concatMap(function(){return e},t):rGi.concatMap(function(){return e})}l1t.concatMapTo=sec});var $br=z(Foe=>{"use strict";var oec=Foe&&Foe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},aec=Foe&&Foe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";var dec=Zoe&&Zoe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},pec=Zoe&&Zoe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";Object.defineProperty(u1t,"__esModule",{value:!0});u1t.fromSubscribable=void 0;var Cec=Py();function mec(e){return new Cec.Observable(function(t){return e.subscribe(t)})}u1t.fromSubscribable=mec});var uXe=z(g1t=>{"use strict";Object.defineProperty(g1t,"__esModule",{value:!0});g1t.connect=void 0;var hec=ix(),_ec=qI(),yec=Zg(),bec=nGi(),Eec={connector:function(){return new hec.Subject}};function Bec(e,t){t===void 0&&(t=Eec);var r=t.connector;return yec.operate(function(s,a){var o=r();_ec.innerFrom(e(bec.fromSubscribable(o))).subscribe(a),a.add(s.subscribe(o))})}g1t.connect=Bec});var tEr=z(A1t=>{"use strict";Object.defineProperty(A1t,"__esModule",{value:!0});A1t.count=void 0;var vec=XIe();function Sec(e){return vec.reduce(function(t,r,s){return!e||e(r,s)?t+1:t},0)}A1t.count=Sec});var rEr=z(d1t=>{"use strict";Object.defineProperty(d1t,"__esModule",{value:!0});d1t.debounce=void 0;var wec=Zg(),Tec=rx(),iGi=ld(),Nec=qI();function Rec(e){return wec.operate(function(t,r){var s=!1,a=null,o=null,g=function(){if(o?.unsubscribe(),o=null,s){s=!1;var p=a;a=null,r.next(p)}};t.subscribe(iGi.createOperatorSubscriber(r,function(p){o?.unsubscribe(),s=!0,a=p,o=iGi.createOperatorSubscriber(r,g,Tec.noop),Nec.innerFrom(e(p)).subscribe(o)},function(){g(),r.complete()},void 0,function(){a=o=null}))})}d1t.debounce=Rec});var nEr=z(p1t=>{"use strict";Object.defineProperty(p1t,"__esModule",{value:!0});p1t.debounceTime=void 0;var Dec=v9(),xec=Zg(),kec=ld();function Gec(e,t){return t===void 0&&(t=Dec.asyncScheduler),xec.operate(function(r,s){var a=null,o=null,g=null,p=function(){if(a){a.unsubscribe(),a=null;var m=o;o=null,s.next(m)}};function f(){var m=g+e,y=t.now();if(y{"use strict";Object.defineProperty(f1t,"__esModule",{value:!0});f1t.defaultIfEmpty=void 0;var Fec=Zg(),Zec=ld();function Lec(e){return Fec.operate(function(t,r){var s=!1;t.subscribe(Zec.createOperatorSubscriber(r,function(a){s=!0,r.next(a)},function(){s||r.next(e),r.complete()}))})}f1t.defaultIfEmpty=Lec});var DTe=z(I1t=>{"use strict";Object.defineProperty(I1t,"__esModule",{value:!0});I1t.take=void 0;var Vec=Z5(),Wec=Zg(),Pec=ld();function Oec(e){return e<=0?function(){return Vec.EMPTY}:Wec.operate(function(t,r){var s=0;t.subscribe(Pec.createOperatorSubscriber(r,function(a){++s<=e&&(r.next(a),e<=s&&r.complete())}))})}I1t.take=Oec});var m1t=z(C1t=>{"use strict";Object.defineProperty(C1t,"__esModule",{value:!0});C1t.ignoreElements=void 0;var Mec=Zg(),Qec=ld(),Yec=rx();function Hec(){return Mec.operate(function(e,t){e.subscribe(Qec.createOperatorSubscriber(t,Yec.noop))})}C1t.ignoreElements=Hec});var _1t=z(h1t=>{"use strict";Object.defineProperty(h1t,"__esModule",{value:!0});h1t.mapTo=void 0;var Xec=bq();function Jec(e){return Xec.map(function(){return e})}h1t.mapTo=Jec});var b1t=z(y1t=>{"use strict";Object.defineProperty(y1t,"__esModule",{value:!0});y1t.delayWhen=void 0;var Uec=cXe(),sGi=DTe(),Kec=m1t(),jec=_1t(),zec=vK(),qec=qI();function oGi(e,t){return t?function(r){return Uec.concat(t.pipe(sGi.take(1),Kec.ignoreElements()),r.pipe(oGi(e)))}:zec.mergeMap(function(r,s){return qec.innerFrom(e(r,s)).pipe(sGi.take(1),jec.mapTo(r))})}y1t.delayWhen=oGi});var iEr=z(E1t=>{"use strict";Object.defineProperty(E1t,"__esModule",{value:!0});E1t.delay=void 0;var $ec=v9(),etc=b1t(),ttc=Roe();function rtc(e,t){t===void 0&&(t=$ec.asyncScheduler);var r=ttc.timer(e,t);return etc.delayWhen(function(){return r})}E1t.delay=rtc});var sEr=z(B1t=>{"use strict";Object.defineProperty(B1t,"__esModule",{value:!0});B1t.dematerialize=void 0;var ntc=cEt(),itc=Zg(),stc=ld();function otc(){return itc.operate(function(e,t){e.subscribe(stc.createOperatorSubscriber(t,function(r){return ntc.observeNotification(r,t)}))})}B1t.dematerialize=otc});var oEr=z(v1t=>{"use strict";Object.defineProperty(v1t,"__esModule",{value:!0});v1t.distinct=void 0;var atc=Zg(),aGi=ld(),ctc=rx(),ltc=qI();function utc(e,t){return atc.operate(function(r,s){var a=new Set;r.subscribe(aGi.createOperatorSubscriber(s,function(o){var g=e?e(o):o;a.has(g)||(a.add(g),s.next(o))})),t&<c.innerFrom(t).subscribe(aGi.createOperatorSubscriber(s,function(){return a.clear()},ctc.noop))})}v1t.distinct=utc});var w1t=z(S1t=>{"use strict";Object.defineProperty(S1t,"__esModule",{value:!0});S1t.distinctUntilChanged=void 0;var gtc=nx(),Atc=Zg(),dtc=ld();function ptc(e,t){return t===void 0&&(t=gtc.identity),e=e??ftc,Atc.operate(function(r,s){var a,o=!0;r.subscribe(dtc.createOperatorSubscriber(s,function(g){var p=t(g);(o||!e(a,p))&&(o=!1,a=p,s.next(g))}))})}S1t.distinctUntilChanged=ptc;function ftc(e,t){return e===t}});var aEr=z(T1t=>{"use strict";Object.defineProperty(T1t,"__esModule",{value:!0});T1t.distinctUntilKeyChanged=void 0;var Itc=w1t();function Ctc(e,t){return Itc.distinctUntilChanged(function(r,s){return t?t(r[e],s[e]):r[e]===s[e]})}T1t.distinctUntilKeyChanged=Ctc});var xTe=z(N1t=>{"use strict";Object.defineProperty(N1t,"__esModule",{value:!0});N1t.throwIfEmpty=void 0;var mtc=Soe(),htc=Zg(),_tc=ld();function ytc(e){return e===void 0&&(e=btc),htc.operate(function(t,r){var s=!1;t.subscribe(_tc.createOperatorSubscriber(r,function(a){s=!0,r.next(a)},function(){return s?r.complete():r.error(e())}))})}N1t.throwIfEmpty=ytc;function btc(){return new mtc.EmptyError}});var cEr=z(R1t=>{"use strict";Object.defineProperty(R1t,"__esModule",{value:!0});R1t.elementAt=void 0;var cGi=vbr(),Etc=Eq(),Btc=xTe(),vtc=RTe(),Stc=DTe();function wtc(e,t){if(e<0)throw new cGi.ArgumentOutOfRangeError;var r=arguments.length>=2;return function(s){return s.pipe(Etc.filter(function(a,o){return o===e}),Stc.take(1),r?vtc.defaultIfEmpty(t):Btc.throwIfEmpty(function(){return new cGi.ArgumentOutOfRangeError}))}}R1t.elementAt=wtc});var lEr=z(Loe=>{"use strict";var Ttc=Loe&&Loe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},Ntc=Loe&&Loe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";Object.defineProperty(D1t,"__esModule",{value:!0});D1t.every=void 0;var ktc=Zg(),Gtc=ld();function Ftc(e,t){return ktc.operate(function(r,s){var a=0;r.subscribe(Gtc.createOperatorSubscriber(s,function(o){e.call(t,o,a++,r)||(s.next(!1),s.complete())},function(){s.next(!0),s.complete()}))})}D1t.every=Ftc});var k1t=z(x1t=>{"use strict";Object.defineProperty(x1t,"__esModule",{value:!0});x1t.exhaustMap=void 0;var Ztc=bq(),lGi=qI(),Ltc=Zg(),uGi=ld();function gGi(e,t){return t?function(r){return r.pipe(gGi(function(s,a){return lGi.innerFrom(e(s,a)).pipe(Ztc.map(function(o,g){return t(s,o,a,g)}))}))}:Ltc.operate(function(r,s){var a=0,o=null,g=!1;r.subscribe(uGi.createOperatorSubscriber(s,function(p){o||(o=uGi.createOperatorSubscriber(s,void 0,function(){o=null,g&&s.complete()}),lGi.innerFrom(e(p,a++)).subscribe(o))},function(){g=!0,!o&&s.complete()}))})}x1t.exhaustMap=gGi});var F1t=z(G1t=>{"use strict";Object.defineProperty(G1t,"__esModule",{value:!0});G1t.exhaustAll=void 0;var Vtc=k1t(),Wtc=nx();function Ptc(){return Vtc.exhaustMap(Wtc.identity)}G1t.exhaustAll=Ptc});var gEr=z(Z1t=>{"use strict";Object.defineProperty(Z1t,"__esModule",{value:!0});Z1t.exhaust=void 0;var Otc=F1t();Z1t.exhaust=Otc.exhaustAll});var AEr=z(L1t=>{"use strict";Object.defineProperty(L1t,"__esModule",{value:!0});L1t.expand=void 0;var Mtc=Zg(),Qtc=vEt();function Ytc(e,t,r){return t===void 0&&(t=1/0),t=(t||0)<1?1/0:t,Mtc.operate(function(s,a){return Qtc.mergeInternals(s,a,e,t,void 0,!0,r)})}L1t.expand=Ytc});var dEr=z(V1t=>{"use strict";Object.defineProperty(V1t,"__esModule",{value:!0});V1t.finalize=void 0;var Htc=Zg();function Xtc(e){return Htc.operate(function(t,r){try{t.subscribe(r)}finally{r.add(e)}})}V1t.finalize=Xtc});var W1t=z(kTe=>{"use strict";Object.defineProperty(kTe,"__esModule",{value:!0});kTe.createFind=kTe.find=void 0;var Jtc=Zg(),Utc=ld();function Ktc(e,t){return Jtc.operate(AGi(e,t,"value"))}kTe.find=Ktc;function AGi(e,t,r){var s=r==="index";return function(a,o){var g=0;a.subscribe(Utc.createOperatorSubscriber(o,function(p){var f=g++;e.call(t,p,f,a)&&(o.next(s?f:p),o.complete())},function(){o.next(s?-1:void 0),o.complete()}))}}kTe.createFind=AGi});var pEr=z(P1t=>{"use strict";Object.defineProperty(P1t,"__esModule",{value:!0});P1t.findIndex=void 0;var jtc=Zg(),ztc=W1t();function qtc(e,t){return jtc.operate(ztc.createFind(e,t,"index"))}P1t.findIndex=qtc});var fEr=z(O1t=>{"use strict";Object.defineProperty(O1t,"__esModule",{value:!0});O1t.first=void 0;var $tc=Soe(),erc=Eq(),trc=DTe(),rrc=RTe(),nrc=xTe(),irc=nx();function src(e,t){var r=arguments.length>=2;return function(s){return s.pipe(e?erc.filter(function(a,o){return e(a,o,s)}):irc.identity,trc.take(1),r?rrc.defaultIfEmpty(t):nrc.throwIfEmpty(function(){return new $tc.EmptyError}))}}O1t.first=src});var IEr=z(M1t=>{"use strict";Object.defineProperty(M1t,"__esModule",{value:!0});M1t.groupBy=void 0;var orc=Py(),arc=qI(),crc=ix(),lrc=Zg(),dGi=ld();function urc(e,t,r,s){return lrc.operate(function(a,o){var g;!t||typeof t=="function"?g=t:(r=t.duration,g=t.element,s=t.connector);var p=new Map,f=function(T){p.forEach(T),T(o)},m=function(T){return f(function(O){return O.error(T)})},y=0,B=!1,v=new dGi.OperatorSubscriber(o,function(T){try{var O=e(T),X=p.get(O);if(!X){p.set(O,X=s?s():new crc.Subject);var U=G(O,X);if(o.next(U),r){var le=dGi.createOperatorSubscriber(X,function(){X.complete(),le?.unsubscribe()},void 0,void 0,function(){return p.delete(O)});v.add(arc.innerFrom(r(U)).subscribe(le))}}X.next(g?g(T):T)}catch(ae){m(ae)}},function(){return f(function(T){return T.complete()})},m,function(){return p.clear()},function(){return B=!0,y===0});a.subscribe(v);function G(T,O){var X=new orc.Observable(function(U){y++;var le=O.subscribe(U);return function(){le.unsubscribe(),--y===0&&B&&v.unsubscribe()}});return X.key=T,X}})}M1t.groupBy=urc});var CEr=z(Q1t=>{"use strict";Object.defineProperty(Q1t,"__esModule",{value:!0});Q1t.isEmpty=void 0;var grc=Zg(),Arc=ld();function drc(){return grc.operate(function(e,t){e.subscribe(Arc.createOperatorSubscriber(t,function(){t.next(!1),t.complete()},function(){t.next(!0),t.complete()}))})}Q1t.isEmpty=drc});var Y1t=z(GTe=>{"use strict";var prc=GTe&>e.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],s=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&s>=e.length&&(e=void 0),{value:e&&e[s++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(GTe,"__esModule",{value:!0});GTe.takeLast=void 0;var frc=Z5(),Irc=Zg(),Crc=ld();function mrc(e){return e<=0?function(){return frc.EMPTY}:Irc.operate(function(t,r){var s=[];t.subscribe(Crc.createOperatorSubscriber(r,function(a){s.push(a),e{"use strict";Object.defineProperty(H1t,"__esModule",{value:!0});H1t.last=void 0;var hrc=Soe(),_rc=Eq(),yrc=Y1t(),brc=xTe(),Erc=RTe(),Brc=nx();function vrc(e,t){var r=arguments.length>=2;return function(s){return s.pipe(e?_rc.filter(function(a,o){return e(a,o,s)}):Brc.identity,yrc.takeLast(1),r?Erc.defaultIfEmpty(t):brc.throwIfEmpty(function(){return new hrc.EmptyError}))}}H1t.last=vrc});var _Er=z(X1t=>{"use strict";Object.defineProperty(X1t,"__esModule",{value:!0});X1t.materialize=void 0;var hEr=cEt(),Src=Zg(),wrc=ld();function Trc(){return Src.operate(function(e,t){e.subscribe(wrc.createOperatorSubscriber(t,function(r){t.next(hEr.Notification.createNext(r))},function(){t.next(hEr.Notification.createComplete()),t.complete()},function(r){t.next(hEr.Notification.createError(r)),t.complete()}))})}X1t.materialize=Trc});var yEr=z(J1t=>{"use strict";Object.defineProperty(J1t,"__esModule",{value:!0});J1t.max=void 0;var Nrc=XIe(),Rrc=cy();function Drc(e){return Nrc.reduce(Rrc.isFunction(e)?function(t,r){return e(t,r)>0?t:r}:function(t,r){return t>r?t:r})}J1t.max=Drc});var bEr=z(U1t=>{"use strict";Object.defineProperty(U1t,"__esModule",{value:!0});U1t.flatMap=void 0;var xrc=vK();U1t.flatMap=xrc.mergeMap});var EEr=z(K1t=>{"use strict";Object.defineProperty(K1t,"__esModule",{value:!0});K1t.mergeMapTo=void 0;var pGi=vK(),krc=cy();function Grc(e,t,r){return r===void 0&&(r=1/0),krc.isFunction(t)?pGi.mergeMap(function(){return e},t,r):(typeof t=="number"&&(r=t),pGi.mergeMap(function(){return e},r))}K1t.mergeMapTo=Grc});var BEr=z(j1t=>{"use strict";Object.defineProperty(j1t,"__esModule",{value:!0});j1t.mergeScan=void 0;var Frc=Zg(),Zrc=vEt();function Lrc(e,t,r){return r===void 0&&(r=1/0),Frc.operate(function(s,a){var o=t;return Zrc.mergeInternals(s,a,function(g,p){return e(o,g,p)},r,function(g){o=g},!1,void 0,function(){return o=null})})}j1t.mergeScan=Lrc});var vEr=z(Voe=>{"use strict";var Vrc=Voe&&Voe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},Wrc=Voe&&Voe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";var Hrc=Woe&&Woe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},Xrc=Woe&&Woe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";Object.defineProperty(z1t,"__esModule",{value:!0});z1t.min=void 0;var Krc=XIe(),jrc=cy();function zrc(e){return Krc.reduce(jrc.isFunction(e)?function(t,r){return e(t,r)<0?t:r}:function(t,r){return t{"use strict";Object.defineProperty(q1t,"__esModule",{value:!0});q1t.multicast=void 0;var qrc=rXe(),IGi=cy(),$rc=uXe();function enc(e,t){var r=IGi.isFunction(e)?e:function(){return e};return IGi.isFunction(t)?$rc.connect(t,{connector:r}):function(s){return new qrc.ConnectableObservable(s,r)}}q1t.multicast=enc});var TEr=z(SK=>{"use strict";var tnc=SK&&SK.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},rnc=SK&&SK.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";Object.defineProperty($1t,"__esModule",{value:!0});$1t.pairwise=void 0;var snc=Zg(),onc=ld();function anc(){return snc.operate(function(e,t){var r,s=!1;e.subscribe(onc.createOperatorSubscriber(t,function(a){var o=r;r=a,s&&t.next([o,a]),s=!0}))})}$1t.pairwise=anc});var REr=z(e2t=>{"use strict";Object.defineProperty(e2t,"__esModule",{value:!0});e2t.pluck=void 0;var cnc=bq();function lnc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(t2t,"__esModule",{value:!0});t2t.publish=void 0;var unc=ix(),gnc=gXe(),Anc=uXe();function dnc(e){return e?function(t){return Anc.connect(e)(t)}:function(t){return gnc.multicast(new unc.Subject)(t)}}t2t.publish=dnc});var xEr=z(r2t=>{"use strict";Object.defineProperty(r2t,"__esModule",{value:!0});r2t.publishBehavior=void 0;var pnc=cbr(),fnc=rXe();function Inc(e){return function(t){var r=new pnc.BehaviorSubject(e);return new fnc.ConnectableObservable(t,function(){return r})}}r2t.publishBehavior=Inc});var kEr=z(n2t=>{"use strict";Object.defineProperty(n2t,"__esModule",{value:!0});n2t.publishLast=void 0;var Cnc=Zbt(),mnc=rXe();function hnc(){return function(e){var t=new Cnc.AsyncSubject;return new mnc.ConnectableObservable(e,function(){return t})}}n2t.publishLast=hnc});var GEr=z(i2t=>{"use strict";Object.defineProperty(i2t,"__esModule",{value:!0});i2t.publishReplay=void 0;var _nc=Fbt(),ync=gXe(),mGi=cy();function bnc(e,t,r,s){r&&!mGi.isFunction(r)&&(s=r);var a=mGi.isFunction(r)?r:void 0;return function(o){return ync.multicast(new _nc.ReplaySubject(e,t,s),a)(o)}}i2t.publishReplay=bnc});var s2t=z(Poe=>{"use strict";var Enc=Poe&&Poe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},Bnc=Poe&&Poe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";Object.defineProperty(o2t,"__esModule",{value:!0});o2t.repeat=void 0;var Nnc=Z5(),Rnc=Zg(),hGi=ld(),Dnc=qI(),xnc=Roe();function knc(e){var t,r=1/0,s;return e!=null&&(typeof e=="object"?(t=e.count,r=t===void 0?1/0:t,s=e.delay):r=e),r<=0?function(){return Nnc.EMPTY}:Rnc.operate(function(a,o){var g=0,p,f=function(){if(p?.unsubscribe(),p=null,s!=null){var y=typeof s=="number"?xnc.timer(s):Dnc.innerFrom(s(g)),B=hGi.createOperatorSubscriber(o,function(){B.unsubscribe(),m()});y.subscribe(B)}else m()},m=function(){var y=!1;p=a.subscribe(hGi.createOperatorSubscriber(o,void 0,function(){++g{"use strict";Object.defineProperty(a2t,"__esModule",{value:!0});a2t.repeatWhen=void 0;var Gnc=qI(),Fnc=ix(),Znc=Zg(),_Gi=ld();function Lnc(e){return Znc.operate(function(t,r){var s,a=!1,o,g=!1,p=!1,f=function(){return p&&g&&(r.complete(),!0)},m=function(){return o||(o=new Fnc.Subject,Gnc.innerFrom(e(o)).subscribe(_Gi.createOperatorSubscriber(r,function(){s?y():a=!0},function(){g=!0,f()}))),o},y=function(){p=!1,s=t.subscribe(_Gi.createOperatorSubscriber(r,void 0,function(){p=!0,!f()&&m().next()})),a&&(s.unsubscribe(),s=null,a=!1,y())};y()})}a2t.repeatWhen=Lnc});var LEr=z(c2t=>{"use strict";Object.defineProperty(c2t,"__esModule",{value:!0});c2t.retry=void 0;var Vnc=Zg(),yGi=ld(),Wnc=nx(),Pnc=Roe(),Onc=qI();function Mnc(e){e===void 0&&(e=1/0);var t;e&&typeof e=="object"?t=e:t={count:e};var r=t.count,s=r===void 0?1/0:r,a=t.delay,o=t.resetOnSuccess,g=o===void 0?!1:o;return s<=0?Wnc.identity:Vnc.operate(function(p,f){var m=0,y,B=function(){var v=!1;y=p.subscribe(yGi.createOperatorSubscriber(f,function(G){g&&(m=0),f.next(G)},void 0,function(G){if(m++{"use strict";Object.defineProperty(l2t,"__esModule",{value:!0});l2t.retryWhen=void 0;var Qnc=qI(),Ync=ix(),Hnc=Zg(),bGi=ld();function Xnc(e){return Hnc.operate(function(t,r){var s,a=!1,o,g=function(){s=t.subscribe(bGi.createOperatorSubscriber(r,void 0,void 0,function(p){o||(o=new Ync.Subject,Qnc.innerFrom(e(o)).subscribe(bGi.createOperatorSubscriber(r,function(){return s?g():a=!0}))),o&&o.next(p)})),a&&(s.unsubscribe(),s=null,a=!1,g())};g()})}l2t.retryWhen=Xnc});var g2t=z(u2t=>{"use strict";Object.defineProperty(u2t,"__esModule",{value:!0});u2t.sample=void 0;var Jnc=qI(),Unc=Zg(),Knc=rx(),EGi=ld();function jnc(e){return Unc.operate(function(t,r){var s=!1,a=null;t.subscribe(EGi.createOperatorSubscriber(r,function(o){s=!0,a=o})),Jnc.innerFrom(e).subscribe(EGi.createOperatorSubscriber(r,function(){if(s){s=!1;var o=a;a=null,r.next(o)}},Knc.noop))})}u2t.sample=jnc});var WEr=z(A2t=>{"use strict";Object.defineProperty(A2t,"__esModule",{value:!0});A2t.sampleTime=void 0;var znc=v9(),qnc=g2t(),$nc=kbr();function eic(e,t){return t===void 0&&(t=znc.asyncScheduler),qnc.sample($nc.interval(e,t))}A2t.sampleTime=eic});var PEr=z(d2t=>{"use strict";Object.defineProperty(d2t,"__esModule",{value:!0});d2t.scan=void 0;var tic=Zg(),ric=Jbr();function nic(e,t){return tic.operate(ric.scanInternals(e,t,arguments.length>=2,!0))}d2t.scan=nic});var OEr=z(p2t=>{"use strict";Object.defineProperty(p2t,"__esModule",{value:!0});p2t.sequenceEqual=void 0;var iic=Zg(),sic=ld(),oic=qI();function aic(e,t){return t===void 0&&(t=function(r,s){return r===s}),iic.operate(function(r,s){var a=BGi(),o=BGi(),g=function(f){s.next(f),s.complete()},p=function(f,m){var y=sic.createOperatorSubscriber(s,function(B){var v=m.buffer,G=m.complete;v.length===0?G?g(!1):f.buffer.push(B):!t(B,v.shift())&&g(!1)},function(){f.complete=!0;var B=m.complete,v=m.buffer;B&&g(v.length===0),y?.unsubscribe()});return y};r.subscribe(p(a,o)),oic.innerFrom(e).subscribe(p(o,a))})}p2t.sequenceEqual=aic;function BGi(){return{buffer:[],complete:!1}}});var f2t=z(Ooe=>{"use strict";var cic=Ooe&&Ooe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},lic=Ooe&&Ooe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r0&&(y=new SGi.SafeSubscriber({next:function(pe){return fe.next(pe)},error:function(pe){O=!0,X(),B=MEr(U,a,pe),fe.error(pe)},complete:function(){T=!0,X(),B=MEr(U,g),fe.complete()}}),vGi.innerFrom(ae).subscribe(y))})(m)}}Ooe.share=Aic;function MEr(e,t){for(var r=[],s=2;s{"use strict";Object.defineProperty(I2t,"__esModule",{value:!0});I2t.shareReplay=void 0;var dic=Fbt(),pic=f2t();function fic(e,t,r){var s,a,o,g,p=!1;return e&&typeof e=="object"?(s=e.bufferSize,g=s===void 0?1/0:s,a=e.windowTime,t=a===void 0?1/0:a,o=e.refCount,p=o===void 0?!1:o,r=e.scheduler):g=e??1/0,pic.share({connector:function(){return new dic.ReplaySubject(g,t,r)},resetOnError:!0,resetOnComplete:!1,resetOnRefCountZero:p})}I2t.shareReplay=fic});var YEr=z(C2t=>{"use strict";Object.defineProperty(C2t,"__esModule",{value:!0});C2t.single=void 0;var Iic=Soe(),Cic=wbr(),mic=Sbr(),hic=Zg(),_ic=ld();function yic(e){return hic.operate(function(t,r){var s=!1,a,o=!1,g=0;t.subscribe(_ic.createOperatorSubscriber(r,function(p){o=!0,(!e||e(p,g++,t))&&(s&&r.error(new Cic.SequenceError("Too many matching values")),s=!0,a=p)},function(){s?(r.next(a),r.complete()):r.error(o?new mic.NotFoundError("No matching values"):new Iic.EmptyError)}))})}C2t.single=yic});var HEr=z(m2t=>{"use strict";Object.defineProperty(m2t,"__esModule",{value:!0});m2t.skip=void 0;var bic=Eq();function Eic(e){return bic.filter(function(t,r){return e<=r})}m2t.skip=Eic});var XEr=z(h2t=>{"use strict";Object.defineProperty(h2t,"__esModule",{value:!0});h2t.skipLast=void 0;var Bic=nx(),vic=Zg(),Sic=ld();function wic(e){return e<=0?Bic.identity:vic.operate(function(t,r){var s=new Array(e),a=0;return t.subscribe(Sic.createOperatorSubscriber(r,function(o){var g=a++;if(g{"use strict";Object.defineProperty(_2t,"__esModule",{value:!0});_2t.skipUntil=void 0;var Tic=Zg(),wGi=ld(),Nic=qI(),Ric=rx();function Dic(e){return Tic.operate(function(t,r){var s=!1,a=wGi.createOperatorSubscriber(r,function(){a?.unsubscribe(),s=!0},Ric.noop);Nic.innerFrom(e).subscribe(a),t.subscribe(wGi.createOperatorSubscriber(r,function(o){return s&&r.next(o)}))})}_2t.skipUntil=Dic});var UEr=z(y2t=>{"use strict";Object.defineProperty(y2t,"__esModule",{value:!0});y2t.skipWhile=void 0;var xic=Zg(),kic=ld();function Gic(e){return xic.operate(function(t,r){var s=!1,a=0;t.subscribe(kic.createOperatorSubscriber(r,function(o){return(s||(s=!e(o,a++)))&&r.next(o)}))})}y2t.skipWhile=Gic});var KEr=z(b2t=>{"use strict";Object.defineProperty(b2t,"__esModule",{value:!0});b2t.startWith=void 0;var TGi=cXe(),Fic=S9(),Zic=Zg();function Lic(){for(var e=[],t=0;t{"use strict";Object.defineProperty(E2t,"__esModule",{value:!0});E2t.switchMap=void 0;var Vic=qI(),Wic=Zg(),NGi=ld();function Pic(e,t){return Wic.operate(function(r,s){var a=null,o=0,g=!1,p=function(){return g&&!a&&s.complete()};r.subscribe(NGi.createOperatorSubscriber(s,function(f){a?.unsubscribe();var m=0,y=o++;Vic.innerFrom(e(f,y)).subscribe(a=NGi.createOperatorSubscriber(s,function(B){return s.next(t?t(f,B,y,m++):B)},function(){a=null,p()}))},function(){g=!0,p()}))})}E2t.switchMap=Pic});var jEr=z(B2t=>{"use strict";Object.defineProperty(B2t,"__esModule",{value:!0});B2t.switchAll=void 0;var Oic=FTe(),Mic=nx();function Qic(){return Oic.switchMap(Mic.identity)}B2t.switchAll=Qic});var zEr=z(v2t=>{"use strict";Object.defineProperty(v2t,"__esModule",{value:!0});v2t.switchMapTo=void 0;var RGi=FTe(),Yic=cy();function Hic(e,t){return Yic.isFunction(t)?RGi.switchMap(function(){return e},t):RGi.switchMap(function(){return e})}v2t.switchMapTo=Hic});var qEr=z(S2t=>{"use strict";Object.defineProperty(S2t,"__esModule",{value:!0});S2t.switchScan=void 0;var Xic=FTe(),Jic=Zg();function Uic(e,t){return Jic.operate(function(r,s){var a=t;return Xic.switchMap(function(o,g){return e(a,o,g)},function(o,g){return a=g,g})(r).subscribe(s),function(){a=null}})}S2t.switchScan=Uic});var $Er=z(w2t=>{"use strict";Object.defineProperty(w2t,"__esModule",{value:!0});w2t.takeUntil=void 0;var Kic=Zg(),jic=ld(),zic=qI(),qic=rx();function $ic(e){return Kic.operate(function(t,r){zic.innerFrom(e).subscribe(jic.createOperatorSubscriber(r,function(){return r.complete()},qic.noop)),!r.closed&&t.subscribe(r)})}w2t.takeUntil=$ic});var e1r=z(T2t=>{"use strict";Object.defineProperty(T2t,"__esModule",{value:!0});T2t.takeWhile=void 0;var esc=Zg(),tsc=ld();function rsc(e,t){return t===void 0&&(t=!1),esc.operate(function(r,s){var a=0;r.subscribe(tsc.createOperatorSubscriber(s,function(o){var g=e(o,a++);(g||t)&&s.next(o),!g&&s.complete()}))})}T2t.takeWhile=rsc});var t1r=z(N2t=>{"use strict";Object.defineProperty(N2t,"__esModule",{value:!0});N2t.tap=void 0;var nsc=cy(),isc=Zg(),ssc=ld(),osc=nx();function asc(e,t,r){var s=nsc.isFunction(e)||t||r?{next:e,error:t,complete:r}:e;return s?isc.operate(function(a,o){var g;(g=s.subscribe)===null||g===void 0||g.call(s);var p=!0;a.subscribe(ssc.createOperatorSubscriber(o,function(f){var m;(m=s.next)===null||m===void 0||m.call(s,f),o.next(f)},function(){var f;p=!1,(f=s.complete)===null||f===void 0||f.call(s),o.complete()},function(f){var m;p=!1,(m=s.error)===null||m===void 0||m.call(s,f),o.error(f)},function(){var f,m;p&&((f=s.unsubscribe)===null||f===void 0||f.call(s)),(m=s.finalize)===null||m===void 0||m.call(s)}))}):osc.identity}N2t.tap=asc});var D2t=z(R2t=>{"use strict";Object.defineProperty(R2t,"__esModule",{value:!0});R2t.throttle=void 0;var csc=Zg(),DGi=ld(),lsc=qI();function usc(e,t){return csc.operate(function(r,s){var a=t??{},o=a.leading,g=o===void 0?!0:o,p=a.trailing,f=p===void 0?!1:p,m=!1,y=null,B=null,v=!1,G=function(){B?.unsubscribe(),B=null,f&&(X(),v&&s.complete())},T=function(){B=null,v&&s.complete()},O=function(U){return B=lsc.innerFrom(e(U)).subscribe(DGi.createOperatorSubscriber(s,G,T))},X=function(){if(m){m=!1;var U=y;y=null,s.next(U),!v&&O(U)}};r.subscribe(DGi.createOperatorSubscriber(s,function(U){m=!0,y=U,!(B&&!B.closed)&&(g?X():O(U))},function(){v=!0,!(f&&m&&B&&!B.closed)&&s.complete()}))})}R2t.throttle=usc});var r1r=z(x2t=>{"use strict";Object.defineProperty(x2t,"__esModule",{value:!0});x2t.throttleTime=void 0;var gsc=v9(),Asc=D2t(),dsc=Roe();function psc(e,t,r){t===void 0&&(t=gsc.asyncScheduler);var s=dsc.timer(e,t);return Asc.throttle(function(){return s},r)}x2t.throttleTime=psc});var n1r=z(ZTe=>{"use strict";Object.defineProperty(ZTe,"__esModule",{value:!0});ZTe.TimeInterval=ZTe.timeInterval=void 0;var fsc=v9(),Isc=Zg(),Csc=ld();function msc(e){return e===void 0&&(e=fsc.asyncScheduler),Isc.operate(function(t,r){var s=e.now();t.subscribe(Csc.createOperatorSubscriber(r,function(a){var o=e.now(),g=o-s;s=o,r.next(new xGi(a,g))}))})}ZTe.timeInterval=msc;var xGi=function(){function e(t,r){this.value=t,this.interval=r}return e}();ZTe.TimeInterval=xGi});var i1r=z(k2t=>{"use strict";Object.defineProperty(k2t,"__esModule",{value:!0});k2t.timeoutWith=void 0;var hsc=v9(),_sc=CEt(),ysc=oXe();function bsc(e,t,r){var s,a,o;if(r=r??hsc.async,_sc.isValidDate(e)?s=e:typeof e=="number"&&(a=e),t)o=function(){return t};else throw new TypeError("No observable provided to switch to");if(s==null&&a==null)throw new TypeError("No timeout provided.");return ysc.timeout({first:s,each:a,scheduler:r,with:o})}k2t.timeoutWith=bsc});var s1r=z(G2t=>{"use strict";Object.defineProperty(G2t,"__esModule",{value:!0});G2t.timestamp=void 0;var Esc=Gbt(),Bsc=bq();function vsc(e){return e===void 0&&(e=Esc.dateTimestampProvider),Bsc.map(function(t){return{value:t,timestamp:e.now()}})}G2t.timestamp=vsc});var o1r=z(F2t=>{"use strict";Object.defineProperty(F2t,"__esModule",{value:!0});F2t.window=void 0;var kGi=ix(),Ssc=Zg(),GGi=ld(),wsc=rx(),Tsc=qI();function Nsc(e){return Ssc.operate(function(t,r){var s=new kGi.Subject;r.next(s.asObservable());var a=function(o){s.error(o),r.error(o)};return t.subscribe(GGi.createOperatorSubscriber(r,function(o){return s?.next(o)},function(){s.complete(),r.complete()},a)),Tsc.innerFrom(e).subscribe(GGi.createOperatorSubscriber(r,function(){s.complete(),r.next(s=new kGi.Subject)},wsc.noop,a)),function(){s?.unsubscribe(),s=null}})}F2t.window=Nsc});var a1r=z(LTe=>{"use strict";var Rsc=LTe&<e.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],s=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&s>=e.length&&(e=void 0),{value:e&&e[s++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(LTe,"__esModule",{value:!0});LTe.windowCount=void 0;var FGi=ix(),Dsc=Zg(),xsc=ld();function ksc(e,t){t===void 0&&(t=0);var r=t>0?t:e;return Dsc.operate(function(s,a){var o=[new FGi.Subject],g=[],p=0;a.next(o[0].asObservable()),s.subscribe(xsc.createOperatorSubscriber(a,function(f){var m,y;try{for(var B=Rsc(o),v=B.next();!v.done;v=B.next()){var G=v.value;G.next(f)}}catch(X){m={error:X}}finally{try{v&&!v.done&&(y=B.return)&&y.call(B)}finally{if(m)throw m.error}}var T=p-e+1;if(T>=0&&T%r===0&&o.shift().complete(),++p%r===0){var O=new FGi.Subject;o.push(O),a.next(O.asObservable())}},function(){for(;o.length>0;)o.shift().complete();a.complete()},function(f){for(;o.length>0;)o.shift().error(f);a.error(f)},function(){g=null,o=null}))})}LTe.windowCount=ksc});var c1r=z(Z2t=>{"use strict";Object.defineProperty(Z2t,"__esModule",{value:!0});Z2t.windowTime=void 0;var Gsc=ix(),Fsc=v9(),Zsc=c3(),Lsc=Zg(),Vsc=ld(),Wsc=mq(),Psc=S9(),ZGi=hq();function Osc(e){for(var t,r,s=[],a=1;a=0?ZGi.executeSchedule(m,o,G,g,!0):B=!0,G();var T=function(X){return y.slice().forEach(X)},O=function(X){T(function(U){var le=U.window;return X(le)}),X(m),m.unsubscribe()};return f.subscribe(Vsc.createOperatorSubscriber(m,function(X){T(function(U){U.window.next(X),p<=++U.seen&&v(U)})},function(){return O(function(X){return X.complete()})},function(X){return O(function(U){return U.error(X)})})),function(){y=null}})}Z2t.windowTime=Osc});var u1r=z(VTe=>{"use strict";var Msc=VTe&&VTe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],s=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&s>=e.length&&(e=void 0),{value:e&&e[s++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(VTe,"__esModule",{value:!0});VTe.windowToggle=void 0;var Qsc=ix(),Ysc=c3(),Hsc=Zg(),LGi=qI(),l1r=ld(),VGi=rx(),Xsc=mq();function Jsc(e,t){return Hsc.operate(function(r,s){var a=[],o=function(g){for(;0{"use strict";Object.defineProperty(L2t,"__esModule",{value:!0});L2t.windowWhen=void 0;var Usc=ix(),Ksc=Zg(),WGi=ld(),jsc=qI();function zsc(e){return Ksc.operate(function(t,r){var s,a,o=function(p){s.error(p),r.error(p)},g=function(){a?.unsubscribe(),s?.complete(),s=new Usc.Subject,r.next(s.asObservable());var p;try{p=jsc.innerFrom(e())}catch(f){o(f);return}p.subscribe(a=WGi.createOperatorSubscriber(r,g,g,o))};g(),t.subscribe(WGi.createOperatorSubscriber(r,function(p){return s.next(p)},function(){s.complete(),r.complete()},o,function(){a?.unsubscribe(),s=null}))})}L2t.windowWhen=zsc});var A1r=z(Moe=>{"use strict";var PGi=Moe&&Moe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},OGi=Moe&&Moe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";Object.defineProperty(V2t,"__esModule",{value:!0});V2t.zipAll=void 0;var ioc=XEt(),soc=Ubr();function ooc(e){return soc.joinAllInternals(ioc.zip,e)}V2t.zipAll=ooc});var p1r=z(Qoe=>{"use strict";var aoc=Qoe&&Qoe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},coc=Qoe&&Qoe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";var Aoc=Yoe&&Yoe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},doc=Yoe&&Yoe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";var Ioc=fn&&fn.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Coc=fn&&fn.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Ioc(t,e,r)};Object.defineProperty(fn,"__esModule",{value:!0});fn.interval=fn.iif=fn.generate=fn.fromEventPattern=fn.fromEvent=fn.from=fn.forkJoin=fn.empty=fn.defer=fn.connectable=fn.concat=fn.combineLatest=fn.bindNodeCallback=fn.bindCallback=fn.UnsubscriptionError=fn.TimeoutError=fn.SequenceError=fn.ObjectUnsubscribedError=fn.NotFoundError=fn.EmptyError=fn.ArgumentOutOfRangeError=fn.firstValueFrom=fn.lastValueFrom=fn.isObservable=fn.identity=fn.noop=fn.pipe=fn.NotificationKind=fn.Notification=fn.Subscriber=fn.Subscription=fn.Scheduler=fn.VirtualAction=fn.VirtualTimeScheduler=fn.animationFrameScheduler=fn.animationFrame=fn.queueScheduler=fn.queue=fn.asyncScheduler=fn.async=fn.asapScheduler=fn.asap=fn.AsyncSubject=fn.ReplaySubject=fn.BehaviorSubject=fn.Subject=fn.animationFrames=fn.observable=fn.ConnectableObservable=fn.Observable=void 0;fn.filter=fn.expand=fn.exhaustMap=fn.exhaustAll=fn.exhaust=fn.every=fn.endWith=fn.elementAt=fn.distinctUntilKeyChanged=fn.distinctUntilChanged=fn.distinct=fn.dematerialize=fn.delayWhen=fn.delay=fn.defaultIfEmpty=fn.debounceTime=fn.debounce=fn.count=fn.connect=fn.concatWith=fn.concatMapTo=fn.concatMap=fn.concatAll=fn.combineLatestWith=fn.combineLatestAll=fn.combineAll=fn.catchError=fn.bufferWhen=fn.bufferToggle=fn.bufferTime=fn.bufferCount=fn.buffer=fn.auditTime=fn.audit=fn.config=fn.NEVER=fn.EMPTY=fn.scheduled=fn.zip=fn.using=fn.timer=fn.throwError=fn.range=fn.race=fn.partition=fn.pairs=fn.onErrorResumeNext=fn.of=fn.never=fn.merge=void 0;fn.switchMap=fn.switchAll=fn.subscribeOn=fn.startWith=fn.skipWhile=fn.skipUntil=fn.skipLast=fn.skip=fn.single=fn.shareReplay=fn.share=fn.sequenceEqual=fn.scan=fn.sampleTime=fn.sample=fn.refCount=fn.retryWhen=fn.retry=fn.repeatWhen=fn.repeat=fn.reduce=fn.raceWith=fn.publishReplay=fn.publishLast=fn.publishBehavior=fn.publish=fn.pluck=fn.pairwise=fn.onErrorResumeNextWith=fn.observeOn=fn.multicast=fn.min=fn.mergeWith=fn.mergeScan=fn.mergeMapTo=fn.mergeMap=fn.flatMap=fn.mergeAll=fn.max=fn.materialize=fn.mapTo=fn.map=fn.last=fn.isEmpty=fn.ignoreElements=fn.groupBy=fn.first=fn.findIndex=fn.find=fn.finalize=void 0;fn.zipWith=fn.zipAll=fn.withLatestFrom=fn.windowWhen=fn.windowToggle=fn.windowTime=fn.windowCount=fn.window=fn.toArray=fn.timestamp=fn.timeoutWith=fn.timeout=fn.timeInterval=fn.throwIfEmpty=fn.throttleTime=fn.throttle=fn.tap=fn.takeWhile=fn.takeUntil=fn.takeLast=fn.take=fn.switchScan=fn.switchMapTo=void 0;var moc=Py();Object.defineProperty(fn,"Observable",{enumerable:!0,get:function(){return moc.Observable}});var hoc=rXe();Object.defineProperty(fn,"ConnectableObservable",{enumerable:!0,get:function(){return hoc.ConnectableObservable}});var _oc=eXe();Object.defineProperty(fn,"observable",{enumerable:!0,get:function(){return _oc.observable}});var yoc=_xi();Object.defineProperty(fn,"animationFrames",{enumerable:!0,get:function(){return yoc.animationFrames}});var boc=ix();Object.defineProperty(fn,"Subject",{enumerable:!0,get:function(){return boc.Subject}});var Eoc=cbr();Object.defineProperty(fn,"BehaviorSubject",{enumerable:!0,get:function(){return Eoc.BehaviorSubject}});var Boc=Fbt();Object.defineProperty(fn,"ReplaySubject",{enumerable:!0,get:function(){return Boc.ReplaySubject}});var voc=Zbt();Object.defineProperty(fn,"AsyncSubject",{enumerable:!0,get:function(){return voc.AsyncSubject}});var QGi=Lxi();Object.defineProperty(fn,"asap",{enumerable:!0,get:function(){return QGi.asap}});Object.defineProperty(fn,"asapScheduler",{enumerable:!0,get:function(){return QGi.asapScheduler}});var YGi=v9();Object.defineProperty(fn,"async",{enumerable:!0,get:function(){return YGi.async}});Object.defineProperty(fn,"asyncScheduler",{enumerable:!0,get:function(){return YGi.asyncScheduler}});var HGi=Pxi();Object.defineProperty(fn,"queue",{enumerable:!0,get:function(){return HGi.queue}});Object.defineProperty(fn,"queueScheduler",{enumerable:!0,get:function(){return HGi.queueScheduler}});var XGi=Yxi();Object.defineProperty(fn,"animationFrame",{enumerable:!0,get:function(){return XGi.animationFrame}});Object.defineProperty(fn,"animationFrameScheduler",{enumerable:!0,get:function(){return XGi.animationFrameScheduler}});var JGi=Jxi();Object.defineProperty(fn,"VirtualTimeScheduler",{enumerable:!0,get:function(){return JGi.VirtualTimeScheduler}});Object.defineProperty(fn,"VirtualAction",{enumerable:!0,get:function(){return JGi.VirtualAction}});var Soc=ubr();Object.defineProperty(fn,"Scheduler",{enumerable:!0,get:function(){return Soc.Scheduler}});var woc=c3();Object.defineProperty(fn,"Subscription",{enumerable:!0,get:function(){return woc.Subscription}});var Toc=qwe();Object.defineProperty(fn,"Subscriber",{enumerable:!0,get:function(){return Toc.Subscriber}});var UGi=cEt();Object.defineProperty(fn,"Notification",{enumerable:!0,get:function(){return UGi.Notification}});Object.defineProperty(fn,"NotificationKind",{enumerable:!0,get:function(){return UGi.NotificationKind}});var Noc=tXe();Object.defineProperty(fn,"pipe",{enumerable:!0,get:function(){return Noc.pipe}});var Roc=rx();Object.defineProperty(fn,"noop",{enumerable:!0,get:function(){return Roc.noop}});var Doc=nx();Object.defineProperty(fn,"identity",{enumerable:!0,get:function(){return Doc.identity}});var xoc=uki();Object.defineProperty(fn,"isObservable",{enumerable:!0,get:function(){return xoc.isObservable}});var koc=gki();Object.defineProperty(fn,"lastValueFrom",{enumerable:!0,get:function(){return koc.lastValueFrom}});var Goc=Aki();Object.defineProperty(fn,"firstValueFrom",{enumerable:!0,get:function(){return Goc.firstValueFrom}});var Foc=vbr();Object.defineProperty(fn,"ArgumentOutOfRangeError",{enumerable:!0,get:function(){return Foc.ArgumentOutOfRangeError}});var Zoc=Soe();Object.defineProperty(fn,"EmptyError",{enumerable:!0,get:function(){return Zoc.EmptyError}});var Loc=Sbr();Object.defineProperty(fn,"NotFoundError",{enumerable:!0,get:function(){return Loc.NotFoundError}});var Voc=ibr();Object.defineProperty(fn,"ObjectUnsubscribedError",{enumerable:!0,get:function(){return Voc.ObjectUnsubscribedError}});var Woc=wbr();Object.defineProperty(fn,"SequenceError",{enumerable:!0,get:function(){return Woc.SequenceError}});var Poc=oXe();Object.defineProperty(fn,"TimeoutError",{enumerable:!0,get:function(){return Poc.TimeoutError}});var Ooc=Xyr();Object.defineProperty(fn,"UnsubscriptionError",{enumerable:!0,get:function(){return Ooc.UnsubscriptionError}});var Moc=pki();Object.defineProperty(fn,"bindCallback",{enumerable:!0,get:function(){return Moc.bindCallback}});var Qoc=fki();Object.defineProperty(fn,"bindNodeCallback",{enumerable:!0,get:function(){return Qoc.bindNodeCallback}});var Yoc=EEt();Object.defineProperty(fn,"combineLatest",{enumerable:!0,get:function(){return Yoc.combineLatest}});var Hoc=cXe();Object.defineProperty(fn,"concat",{enumerable:!0,get:function(){return Hoc.concat}});var Xoc=Eki();Object.defineProperty(fn,"connectable",{enumerable:!0,get:function(){return Xoc.connectable}});var Joc=lXe();Object.defineProperty(fn,"defer",{enumerable:!0,get:function(){return Joc.defer}});var Uoc=Z5();Object.defineProperty(fn,"empty",{enumerable:!0,get:function(){return Uoc.empty}});var Koc=Bki();Object.defineProperty(fn,"forkJoin",{enumerable:!0,get:function(){return Koc.forkJoin}});var joc=_q();Object.defineProperty(fn,"from",{enumerable:!0,get:function(){return joc.from}});var zoc=Ski();Object.defineProperty(fn,"fromEvent",{enumerable:!0,get:function(){return zoc.fromEvent}});var qoc=Tki();Object.defineProperty(fn,"fromEventPattern",{enumerable:!0,get:function(){return qoc.fromEventPattern}});var $oc=Rki();Object.defineProperty(fn,"generate",{enumerable:!0,get:function(){return $oc.generate}});var eac=Dki();Object.defineProperty(fn,"iif",{enumerable:!0,get:function(){return eac.iif}});var tac=kbr();Object.defineProperty(fn,"interval",{enumerable:!0,get:function(){return tac.interval}});var rac=kki();Object.defineProperty(fn,"merge",{enumerable:!0,get:function(){return rac.merge}});var nac=Gbr();Object.defineProperty(fn,"never",{enumerable:!0,get:function(){return nac.never}});var iac=oEt();Object.defineProperty(fn,"of",{enumerable:!0,get:function(){return iac.of}});var sac=Fbr();Object.defineProperty(fn,"onErrorResumeNext",{enumerable:!0,get:function(){return sac.onErrorResumeNext}});var oac=Fki();Object.defineProperty(fn,"pairs",{enumerable:!0,get:function(){return oac.pairs}});var aac=Vki();Object.defineProperty(fn,"partition",{enumerable:!0,get:function(){return aac.partition}});var cac=Lbr();Object.defineProperty(fn,"race",{enumerable:!0,get:function(){return cac.race}});var lac=Oki();Object.defineProperty(fn,"range",{enumerable:!0,get:function(){return lac.range}});var uac=Bbr();Object.defineProperty(fn,"throwError",{enumerable:!0,get:function(){return uac.throwError}});var gac=Roe();Object.defineProperty(fn,"timer",{enumerable:!0,get:function(){return gac.timer}});var Aac=Mki();Object.defineProperty(fn,"using",{enumerable:!0,get:function(){return Aac.using}});var dac=XEt();Object.defineProperty(fn,"zip",{enumerable:!0,get:function(){return dac.zip}});var pac=Ebr();Object.defineProperty(fn,"scheduled",{enumerable:!0,get:function(){return pac.scheduled}});var fac=Z5();Object.defineProperty(fn,"EMPTY",{enumerable:!0,get:function(){return fac.EMPTY}});var Iac=Gbr();Object.defineProperty(fn,"NEVER",{enumerable:!0,get:function(){return Iac.NEVER}});Coc(Yki(),fn);var Cac=jwe();Object.defineProperty(fn,"config",{enumerable:!0,get:function(){return Cac.config}});var mac=UEt();Object.defineProperty(fn,"audit",{enumerable:!0,get:function(){return mac.audit}});var hac=Vbr();Object.defineProperty(fn,"auditTime",{enumerable:!0,get:function(){return hac.auditTime}});var _ac=Wbr();Object.defineProperty(fn,"buffer",{enumerable:!0,get:function(){return _ac.buffer}});var yac=Obr();Object.defineProperty(fn,"bufferCount",{enumerable:!0,get:function(){return yac.bufferCount}});var bac=Mbr();Object.defineProperty(fn,"bufferTime",{enumerable:!0,get:function(){return bac.bufferTime}});var Eac=Ybr();Object.defineProperty(fn,"bufferToggle",{enumerable:!0,get:function(){return Eac.bufferToggle}});var Bac=Hbr();Object.defineProperty(fn,"bufferWhen",{enumerable:!0,get:function(){return Bac.bufferWhen}});var vac=Xbr();Object.defineProperty(fn,"catchError",{enumerable:!0,get:function(){return vac.catchError}});var Sac=Kbr();Object.defineProperty(fn,"combineAll",{enumerable:!0,get:function(){return Sac.combineAll}});var wac=s1t();Object.defineProperty(fn,"combineLatestAll",{enumerable:!0,get:function(){return wac.combineLatestAll}});var Tac=zbr();Object.defineProperty(fn,"combineLatestWith",{enumerable:!0,get:function(){return Tac.combineLatestWith}});var Nac=aXe();Object.defineProperty(fn,"concatAll",{enumerable:!0,get:function(){return Nac.concatAll}});var Rac=c1t();Object.defineProperty(fn,"concatMap",{enumerable:!0,get:function(){return Rac.concatMap}});var Dac=qbr();Object.defineProperty(fn,"concatMapTo",{enumerable:!0,get:function(){return Dac.concatMapTo}});var xac=eEr();Object.defineProperty(fn,"concatWith",{enumerable:!0,get:function(){return xac.concatWith}});var kac=uXe();Object.defineProperty(fn,"connect",{enumerable:!0,get:function(){return kac.connect}});var Gac=tEr();Object.defineProperty(fn,"count",{enumerable:!0,get:function(){return Gac.count}});var Fac=rEr();Object.defineProperty(fn,"debounce",{enumerable:!0,get:function(){return Fac.debounce}});var Zac=nEr();Object.defineProperty(fn,"debounceTime",{enumerable:!0,get:function(){return Zac.debounceTime}});var Lac=RTe();Object.defineProperty(fn,"defaultIfEmpty",{enumerable:!0,get:function(){return Lac.defaultIfEmpty}});var Vac=iEr();Object.defineProperty(fn,"delay",{enumerable:!0,get:function(){return Vac.delay}});var Wac=b1t();Object.defineProperty(fn,"delayWhen",{enumerable:!0,get:function(){return Wac.delayWhen}});var Pac=sEr();Object.defineProperty(fn,"dematerialize",{enumerable:!0,get:function(){return Pac.dematerialize}});var Oac=oEr();Object.defineProperty(fn,"distinct",{enumerable:!0,get:function(){return Oac.distinct}});var Mac=w1t();Object.defineProperty(fn,"distinctUntilChanged",{enumerable:!0,get:function(){return Mac.distinctUntilChanged}});var Qac=aEr();Object.defineProperty(fn,"distinctUntilKeyChanged",{enumerable:!0,get:function(){return Qac.distinctUntilKeyChanged}});var Yac=cEr();Object.defineProperty(fn,"elementAt",{enumerable:!0,get:function(){return Yac.elementAt}});var Hac=lEr();Object.defineProperty(fn,"endWith",{enumerable:!0,get:function(){return Hac.endWith}});var Xac=uEr();Object.defineProperty(fn,"every",{enumerable:!0,get:function(){return Xac.every}});var Jac=gEr();Object.defineProperty(fn,"exhaust",{enumerable:!0,get:function(){return Jac.exhaust}});var Uac=F1t();Object.defineProperty(fn,"exhaustAll",{enumerable:!0,get:function(){return Uac.exhaustAll}});var Kac=k1t();Object.defineProperty(fn,"exhaustMap",{enumerable:!0,get:function(){return Kac.exhaustMap}});var jac=AEr();Object.defineProperty(fn,"expand",{enumerable:!0,get:function(){return jac.expand}});var zac=Eq();Object.defineProperty(fn,"filter",{enumerable:!0,get:function(){return zac.filter}});var qac=dEr();Object.defineProperty(fn,"finalize",{enumerable:!0,get:function(){return qac.finalize}});var $ac=W1t();Object.defineProperty(fn,"find",{enumerable:!0,get:function(){return $ac.find}});var ecc=pEr();Object.defineProperty(fn,"findIndex",{enumerable:!0,get:function(){return ecc.findIndex}});var tcc=fEr();Object.defineProperty(fn,"first",{enumerable:!0,get:function(){return tcc.first}});var rcc=IEr();Object.defineProperty(fn,"groupBy",{enumerable:!0,get:function(){return rcc.groupBy}});var ncc=m1t();Object.defineProperty(fn,"ignoreElements",{enumerable:!0,get:function(){return ncc.ignoreElements}});var icc=CEr();Object.defineProperty(fn,"isEmpty",{enumerable:!0,get:function(){return icc.isEmpty}});var scc=mEr();Object.defineProperty(fn,"last",{enumerable:!0,get:function(){return scc.last}});var occ=bq();Object.defineProperty(fn,"map",{enumerable:!0,get:function(){return occ.map}});var acc=_1t();Object.defineProperty(fn,"mapTo",{enumerable:!0,get:function(){return acc.mapTo}});var ccc=_Er();Object.defineProperty(fn,"materialize",{enumerable:!0,get:function(){return ccc.materialize}});var lcc=yEr();Object.defineProperty(fn,"max",{enumerable:!0,get:function(){return lcc.max}});var ucc=ETe();Object.defineProperty(fn,"mergeAll",{enumerable:!0,get:function(){return ucc.mergeAll}});var gcc=bEr();Object.defineProperty(fn,"flatMap",{enumerable:!0,get:function(){return gcc.flatMap}});var Acc=vK();Object.defineProperty(fn,"mergeMap",{enumerable:!0,get:function(){return Acc.mergeMap}});var dcc=EEr();Object.defineProperty(fn,"mergeMapTo",{enumerable:!0,get:function(){return dcc.mergeMapTo}});var pcc=BEr();Object.defineProperty(fn,"mergeScan",{enumerable:!0,get:function(){return pcc.mergeScan}});var fcc=SEr();Object.defineProperty(fn,"mergeWith",{enumerable:!0,get:function(){return fcc.mergeWith}});var Icc=wEr();Object.defineProperty(fn,"min",{enumerable:!0,get:function(){return Icc.min}});var Ccc=gXe();Object.defineProperty(fn,"multicast",{enumerable:!0,get:function(){return Ccc.multicast}});var mcc=_Te();Object.defineProperty(fn,"observeOn",{enumerable:!0,get:function(){return mcc.observeOn}});var hcc=TEr();Object.defineProperty(fn,"onErrorResumeNextWith",{enumerable:!0,get:function(){return hcc.onErrorResumeNextWith}});var _cc=NEr();Object.defineProperty(fn,"pairwise",{enumerable:!0,get:function(){return _cc.pairwise}});var ycc=REr();Object.defineProperty(fn,"pluck",{enumerable:!0,get:function(){return ycc.pluck}});var bcc=DEr();Object.defineProperty(fn,"publish",{enumerable:!0,get:function(){return bcc.publish}});var Ecc=xEr();Object.defineProperty(fn,"publishBehavior",{enumerable:!0,get:function(){return Ecc.publishBehavior}});var Bcc=kEr();Object.defineProperty(fn,"publishLast",{enumerable:!0,get:function(){return Bcc.publishLast}});var vcc=GEr();Object.defineProperty(fn,"publishReplay",{enumerable:!0,get:function(){return vcc.publishReplay}});var Scc=s2t();Object.defineProperty(fn,"raceWith",{enumerable:!0,get:function(){return Scc.raceWith}});var wcc=XIe();Object.defineProperty(fn,"reduce",{enumerable:!0,get:function(){return wcc.reduce}});var Tcc=FEr();Object.defineProperty(fn,"repeat",{enumerable:!0,get:function(){return Tcc.repeat}});var Ncc=ZEr();Object.defineProperty(fn,"repeatWhen",{enumerable:!0,get:function(){return Ncc.repeatWhen}});var Rcc=LEr();Object.defineProperty(fn,"retry",{enumerable:!0,get:function(){return Rcc.retry}});var Dcc=VEr();Object.defineProperty(fn,"retryWhen",{enumerable:!0,get:function(){return Dcc.retryWhen}});var xcc=Dbt();Object.defineProperty(fn,"refCount",{enumerable:!0,get:function(){return xcc.refCount}});var kcc=g2t();Object.defineProperty(fn,"sample",{enumerable:!0,get:function(){return kcc.sample}});var Gcc=WEr();Object.defineProperty(fn,"sampleTime",{enumerable:!0,get:function(){return Gcc.sampleTime}});var Fcc=PEr();Object.defineProperty(fn,"scan",{enumerable:!0,get:function(){return Fcc.scan}});var Zcc=OEr();Object.defineProperty(fn,"sequenceEqual",{enumerable:!0,get:function(){return Zcc.sequenceEqual}});var Lcc=f2t();Object.defineProperty(fn,"share",{enumerable:!0,get:function(){return Lcc.share}});var Vcc=QEr();Object.defineProperty(fn,"shareReplay",{enumerable:!0,get:function(){return Vcc.shareReplay}});var Wcc=YEr();Object.defineProperty(fn,"single",{enumerable:!0,get:function(){return Wcc.single}});var Pcc=HEr();Object.defineProperty(fn,"skip",{enumerable:!0,get:function(){return Pcc.skip}});var Occ=XEr();Object.defineProperty(fn,"skipLast",{enumerable:!0,get:function(){return Occ.skipLast}});var Mcc=JEr();Object.defineProperty(fn,"skipUntil",{enumerable:!0,get:function(){return Mcc.skipUntil}});var Qcc=UEr();Object.defineProperty(fn,"skipWhile",{enumerable:!0,get:function(){return Qcc.skipWhile}});var Ycc=KEr();Object.defineProperty(fn,"startWith",{enumerable:!0,get:function(){return Ycc.startWith}});var Hcc=yTe();Object.defineProperty(fn,"subscribeOn",{enumerable:!0,get:function(){return Hcc.subscribeOn}});var Xcc=jEr();Object.defineProperty(fn,"switchAll",{enumerable:!0,get:function(){return Xcc.switchAll}});var Jcc=FTe();Object.defineProperty(fn,"switchMap",{enumerable:!0,get:function(){return Jcc.switchMap}});var Ucc=zEr();Object.defineProperty(fn,"switchMapTo",{enumerable:!0,get:function(){return Ucc.switchMapTo}});var Kcc=qEr();Object.defineProperty(fn,"switchScan",{enumerable:!0,get:function(){return Kcc.switchScan}});var jcc=DTe();Object.defineProperty(fn,"take",{enumerable:!0,get:function(){return jcc.take}});var zcc=Y1t();Object.defineProperty(fn,"takeLast",{enumerable:!0,get:function(){return zcc.takeLast}});var qcc=$Er();Object.defineProperty(fn,"takeUntil",{enumerable:!0,get:function(){return qcc.takeUntil}});var $cc=e1r();Object.defineProperty(fn,"takeWhile",{enumerable:!0,get:function(){return $cc.takeWhile}});var elc=t1r();Object.defineProperty(fn,"tap",{enumerable:!0,get:function(){return elc.tap}});var tlc=D2t();Object.defineProperty(fn,"throttle",{enumerable:!0,get:function(){return tlc.throttle}});var rlc=r1r();Object.defineProperty(fn,"throttleTime",{enumerable:!0,get:function(){return rlc.throttleTime}});var nlc=xTe();Object.defineProperty(fn,"throwIfEmpty",{enumerable:!0,get:function(){return nlc.throwIfEmpty}});var ilc=n1r();Object.defineProperty(fn,"timeInterval",{enumerable:!0,get:function(){return ilc.timeInterval}});var slc=oXe();Object.defineProperty(fn,"timeout",{enumerable:!0,get:function(){return slc.timeout}});var olc=i1r();Object.defineProperty(fn,"timeoutWith",{enumerable:!0,get:function(){return olc.timeoutWith}});var alc=s1r();Object.defineProperty(fn,"timestamp",{enumerable:!0,get:function(){return alc.timestamp}});var clc=r1t();Object.defineProperty(fn,"toArray",{enumerable:!0,get:function(){return clc.toArray}});var llc=o1r();Object.defineProperty(fn,"window",{enumerable:!0,get:function(){return llc.window}});var ulc=a1r();Object.defineProperty(fn,"windowCount",{enumerable:!0,get:function(){return ulc.windowCount}});var glc=c1r();Object.defineProperty(fn,"windowTime",{enumerable:!0,get:function(){return glc.windowTime}});var Alc=u1r();Object.defineProperty(fn,"windowToggle",{enumerable:!0,get:function(){return Alc.windowToggle}});var dlc=g1r();Object.defineProperty(fn,"windowWhen",{enumerable:!0,get:function(){return dlc.windowWhen}});var plc=A1r();Object.defineProperty(fn,"withLatestFrom",{enumerable:!0,get:function(){return plc.withLatestFrom}});var flc=d1r();Object.defineProperty(fn,"zipAll",{enumerable:!0,get:function(){return flc.zipAll}});var Ilc=f1r();Object.defineProperty(fn,"zipWith",{enumerable:!0,get:function(){return Ilc.zipWith}})});var Bq=z(w9=>{"use strict";Object.defineProperty(w9,"__esModule",{value:!0});w9.PathIsFileException=w9.PathIsDirectoryException=w9.FileAlreadyExistException=w9.FileDoesNotExistException=w9.UnknownException=w9.BaseException=void 0;var Hoe=class extends Error{constructor(t=""){super(t)}};w9.BaseException=Hoe;var I1r=class extends Hoe{constructor(t){super(t)}};w9.UnknownException=I1r;var C1r=class extends Hoe{constructor(t){super(`Path "${t}" does not exist.`)}};w9.FileDoesNotExistException=C1r;var m1r=class extends Hoe{constructor(t){super(`Path "${t}" already exist.`)}};w9.FileAlreadyExistException=m1r;var h1r=class extends Hoe{constructor(t){super(`Path "${t}" is a directory.`)}};w9.PathIsDirectoryException=h1r;var _1r=class extends Hoe{constructor(t){super(`Path "${t}" is a file.`)}};w9.PathIsFileException=_1r});var jGi=z(JIe=>{"use strict";Object.defineProperty(JIe,"__esModule",{value:!0});JIe.oneLine=Clc;JIe.indentBy=mlc;JIe.stripIndent=KGi;JIe.stripIndents=hlc;JIe.trimNewlines=_lc;function Clc(e,...t){return String.raw(e,...t).replace(/(?:\r?\n(?:\s*))+/gm," ").trim()}function mlc(e){let t="";for(;e--;)t+=" ";return(r,...s)=>t+KGi(r,...s).replace(/\n/g,` -`+t)}function KGi(e,...t){let r=String.raw(e,...t),s=r.match(/^[ \t]*(?=\S)/gm);if(s===null)return r;let a=Math.min(...s.map(g=>g.length)),o=new RegExp("^[ \\t]{"+a+"}","gm");return(a>0?r.replace(o,""):r).trim()}function hlc(e,...t){return String.raw(e,...t).split(` + `):"",this.name="UnsubscriptionError",this.errors=r}})});var _q=z(Ebt=>{"use strict";Object.defineProperty(Ebt,"__esModule",{value:!0});Ebt.arrRemove=void 0;function vKa(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}Ebt.arrRemove=vKa});var g3=z(v9=>{"use strict";var nxi=v9&&v9.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],s=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&s>=e.length&&(e=void 0),{value:e&&e[s++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},ixi=v9&&v9.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},sxi=v9&&v9.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";Object.defineProperty(Bbt,"__esModule",{value:!0});Bbt.config=void 0;Bbt.config={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1}});var tbr=z(SK=>{"use strict";var cxi=SK&&SK.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},lxi=SK&&SK.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";Object.defineProperty(vbt,"__esModule",{value:!0});vbt.reportUnhandledError=void 0;var wKa=qwe(),TKa=tbr();function NKa(e){TKa.timeoutProvider.setTimeout(function(){var t=wKa.config.onUnhandledError;if(t)t(e);else throw e})}vbt.reportUnhandledError=NKa});var cx=z(Sbt=>{"use strict";Object.defineProperty(Sbt,"__esModule",{value:!0});Sbt.noop=void 0;function RKa(){}Sbt.noop=RKa});var uxi=z(wK=>{"use strict";Object.defineProperty(wK,"__esModule",{value:!0});wK.createNotification=wK.nextNotification=wK.errorNotification=wK.COMPLETE_NOTIFICATION=void 0;wK.COMPLETE_NOTIFICATION=function(){return wbt("C",void 0,void 0)}();function DKa(e){return wbt("E",void 0,e)}wK.errorNotification=DKa;function xKa(e){return wbt("N",e,void 0)}wK.nextNotification=xKa;function wbt(e,t,r){return{kind:e,value:t,error:r}}wK.createNotification=wbt});var Tbt=z($we=>{"use strict";Object.defineProperty($we,"__esModule",{value:!0});$we.captureError=$we.errorContext=void 0;var gxi=qwe(),WIe=null;function kKa(e){if(gxi.config.useDeprecatedSynchronousErrorHandling){var t=!WIe;if(t&&(WIe={errorThrown:!1,error:null}),e(),t){var r=WIe,s=r.errorThrown,a=r.error;if(WIe=null,s)throw a}}else e()}$we.errorContext=kKa;function GKa(e){gxi.config.useDeprecatedSynchronousErrorHandling&&WIe&&(WIe.errorThrown=!0,WIe.error=e)}$we.captureError=GKa});var eTe=z(LY=>{"use strict";var pxi=LY&&LY.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(LY,"__esModule",{value:!0});LY.EMPTY_OBSERVER=LY.SafeSubscriber=LY.Subscriber=void 0;var FKa=ly(),Axi=g3(),obr=qwe(),ZKa=rbr(),dxi=cx(),nbr=uxi(),LKa=tbr(),VKa=Tbt(),fxi=function(e){pxi(t,e);function t(r){var s=e.call(this)||this;return s.isStopped=!1,r?(s.destination=r,Axi.isSubscription(r)&&r.add(s)):s.destination=LY.EMPTY_OBSERVER,s}return t.create=function(r,s,a){return new Ixi(r,s,a)},t.prototype.next=function(r){this.isStopped?sbr(nbr.nextNotification(r),this):this._next(r)},t.prototype.error=function(r){this.isStopped?sbr(nbr.errorNotification(r),this):(this.isStopped=!0,this._error(r))},t.prototype.complete=function(){this.isStopped?sbr(nbr.COMPLETE_NOTIFICATION,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(r){this.destination.next(r)},t.prototype._error=function(r){try{this.destination.error(r)}finally{this.unsubscribe()}},t.prototype._complete=function(){try{this.destination.complete()}finally{this.unsubscribe()}},t}(Axi.Subscription);LY.Subscriber=fxi;var WKa=Function.prototype.bind;function ibr(e,t){return WKa.call(e,t)}var PKa=function(){function e(t){this.partialObserver=t}return e.prototype.next=function(t){var r=this.partialObserver;if(r.next)try{r.next(t)}catch(s){Nbt(s)}},e.prototype.error=function(t){var r=this.partialObserver;if(r.error)try{r.error(t)}catch(s){Nbt(s)}else Nbt(t)},e.prototype.complete=function(){var t=this.partialObserver;if(t.complete)try{t.complete()}catch(r){Nbt(r)}},e}(),Ixi=function(e){pxi(t,e);function t(r,s,a){var o=e.call(this)||this,g;if(FKa.isFunction(r)||!r)g={next:r??void 0,error:s??void 0,complete:a??void 0};else{var p;o&&obr.config.useDeprecatedNextContext?(p=Object.create(r),p.unsubscribe=function(){return o.unsubscribe()},g={next:r.next&&ibr(r.next,p),error:r.error&&ibr(r.error,p),complete:r.complete&&ibr(r.complete,p)}):g=r}return o.destination=new PKa(g),o}return t}(fxi);LY.SafeSubscriber=Ixi;function Nbt(e){obr.config.useDeprecatedSynchronousErrorHandling?VKa.captureError(e):ZKa.reportUnhandledError(e)}function OKa(e){throw e}function sbr(e,t){var r=obr.config.onStoppedNotification;r&&LKa.timeoutProvider.setTimeout(function(){return r(e,t)})}LY.EMPTY_OBSERVER={closed:!0,next:dxi.noop,error:OKa,complete:dxi.noop}});var rXe=z(Rbt=>{"use strict";Object.defineProperty(Rbt,"__esModule",{value:!0});Rbt.observable=void 0;Rbt.observable=function(){return typeof Symbol=="function"&&Symbol.observable||"@@observable"}()});var lx=z(Dbt=>{"use strict";Object.defineProperty(Dbt,"__esModule",{value:!0});Dbt.identity=void 0;function QKa(e){return e}Dbt.identity=QKa});var nXe=z(tTe=>{"use strict";Object.defineProperty(tTe,"__esModule",{value:!0});tTe.pipeFromArray=tTe.pipe=void 0;var MKa=lx();function HKa(){for(var e=[],t=0;t{"use strict";Object.defineProperty(xbt,"__esModule",{value:!0});xbt.Observable=void 0;var cbr=eTe(),YKa=g3(),XKa=rXe(),JKa=nXe(),UKa=qwe(),abr=ly(),KKa=Tbt(),jKa=function(){function e(t){t&&(this._subscribe=t)}return e.prototype.lift=function(t){var r=new e;return r.source=this,r.operator=t,r},e.prototype.subscribe=function(t,r,s){var a=this,o=qKa(t)?t:new cbr.SafeSubscriber(t,r,s);return KKa.errorContext(function(){var g=a,p=g.operator,f=g.source;o.add(p?p.call(o,f):f?a._subscribe(o):a._trySubscribe(o))}),o},e.prototype._trySubscribe=function(t){try{return this._subscribe(t)}catch(r){t.error(r)}},e.prototype.forEach=function(t,r){var s=this;return r=mxi(r),new r(function(a,o){var g=new cbr.SafeSubscriber({next:function(p){try{t(p)}catch(f){o(f),g.unsubscribe()}},error:o,complete:a});s.subscribe(g)})},e.prototype._subscribe=function(t){var r;return(r=this.source)===null||r===void 0?void 0:r.subscribe(t)},e.prototype[XKa.observable]=function(){return this},e.prototype.pipe=function(){for(var t=[],r=0;r{"use strict";Object.defineProperty(rTe,"__esModule",{value:!0});rTe.operate=rTe.hasLift=void 0;var $Ka=ly();function hxi(e){return $Ka.isFunction(e?.lift)}rTe.hasLift=hxi;function e8a(e){return function(t){if(hxi(t))return t.lift(function(r){try{return e(r,this)}catch(s){this.error(s)}});throw new TypeError("Unable to lift unknown Observable type")}}rTe.operate=e8a});var ud=z(xoe=>{"use strict";var t8a=xoe&&xoe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(xoe,"__esModule",{value:!0});xoe.OperatorSubscriber=xoe.createOperatorSubscriber=void 0;var r8a=eTe();function n8a(e,t,r,s,a){return new _xi(e,t,r,s,a)}xoe.createOperatorSubscriber=n8a;var _xi=function(e){t8a(t,e);function t(r,s,a,o,g,p){var f=e.call(this,r)||this;return f.onFinalize=g,f.shouldUnsubscribe=p,f._next=s?function(m){try{s(m)}catch(y){r.error(y)}}:e.prototype._next,f._error=o?function(m){try{o(m)}catch(y){r.error(y)}finally{this.unsubscribe()}}:e.prototype._error,f._complete=a?function(){try{a()}catch(m){r.error(m)}finally{this.unsubscribe()}}:e.prototype._complete,f}return t.prototype.unsubscribe=function(){var r;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var s=this.closed;e.prototype.unsubscribe.call(this),!s&&((r=this.onFinalize)===null||r===void 0||r.call(this))}},t}(r8a.Subscriber);xoe.OperatorSubscriber=_xi});var Gbt=z(kbt=>{"use strict";Object.defineProperty(kbt,"__esModule",{value:!0});kbt.refCount=void 0;var i8a=Lg(),s8a=ud();function o8a(){return i8a.operate(function(e,t){var r=null;e._refCount++;var s=s8a.createOperatorSubscriber(t,void 0,void 0,void 0,function(){if(!e||e._refCount<=0||0<--e._refCount){r=null;return}var a=e._connection,o=r;r=null,a&&(!o||a===o)&&a.unsubscribe(),t.unsubscribe()});e.subscribe(s),s.closed||(r=e.connect())})}kbt.refCount=o8a});var iXe=z(nTe=>{"use strict";var a8a=nTe&&nTe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(nTe,"__esModule",{value:!0});nTe.ConnectableObservable=void 0;var c8a=Oy(),yxi=g3(),l8a=Gbt(),u8a=ud(),g8a=Lg(),A8a=function(e){a8a(t,e);function t(r,s){var a=e.call(this)||this;return a.source=r,a.subjectFactory=s,a._subject=null,a._refCount=0,a._connection=null,g8a.hasLift(r)&&(a.lift=r.lift),a}return t.prototype._subscribe=function(r){return this.getSubject().subscribe(r)},t.prototype.getSubject=function(){var r=this._subject;return(!r||r.isStopped)&&(this._subject=this.subjectFactory()),this._subject},t.prototype._teardown=function(){this._refCount=0;var r=this._connection;this._subject=this._connection=null,r?.unsubscribe()},t.prototype.connect=function(){var r=this,s=this._connection;if(!s){s=this._connection=new yxi.Subscription;var a=this.getSubject();s.add(this.source.subscribe(u8a.createOperatorSubscriber(a,void 0,function(){r._teardown(),a.complete()},function(o){r._teardown(),a.error(o)},function(){return r._teardown()}))),s.closed&&(this._connection=null,s=yxi.Subscription.EMPTY)}return s},t.prototype.refCount=function(){return l8a.refCount()(this)},t}(c8a.Observable);nTe.ConnectableObservable=A8a});var bxi=z(sXe=>{"use strict";Object.defineProperty(sXe,"__esModule",{value:!0});sXe.performanceTimestampProvider=void 0;sXe.performanceTimestampProvider={now:function(){return(sXe.performanceTimestampProvider.delegate||performance).now()},delegate:void 0}});var lbr=z(VY=>{"use strict";var Exi=VY&&VY.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},Bxi=VY&&VY.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";Object.defineProperty(Fbt,"__esModule",{value:!0});Fbt.animationFrames=void 0;var p8a=Oy(),f8a=bxi(),vxi=lbr();function I8a(e){return e?Sxi(e):C8a}Fbt.animationFrames=I8a;function Sxi(e){return new p8a.Observable(function(t){var r=e||f8a.performanceTimestampProvider,s=r.now(),a=0,o=function(){t.closed||(a=vxi.animationFrameProvider.requestAnimationFrame(function(g){a=0;var p=r.now();t.next({timestamp:e?p:g,elapsed:p-s}),o()}))};return o(),function(){a&&vxi.animationFrameProvider.cancelAnimationFrame(a)}})}var C8a=Sxi()});var ubr=z(Zbt=>{"use strict";Object.defineProperty(Zbt,"__esModule",{value:!0});Zbt.ObjectUnsubscribedError=void 0;var m8a=Doe();Zbt.ObjectUnsubscribedError=m8a.createErrorClass(function(e){return function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}})});var ux=z(TK=>{"use strict";var Nxi=TK&&TK.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}(),h8a=TK&&TK.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],s=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&s>=e.length&&(e=void 0),{value:e&&e[s++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(TK,"__esModule",{value:!0});TK.AnonymousSubject=TK.Subject=void 0;var Txi=Oy(),Abr=g3(),_8a=ubr(),y8a=_q(),gbr=Tbt(),Rxi=function(e){Nxi(t,e);function t(){var r=e.call(this)||this;return r.closed=!1,r.currentObservers=null,r.observers=[],r.isStopped=!1,r.hasError=!1,r.thrownError=null,r}return t.prototype.lift=function(r){var s=new dbr(this,this);return s.operator=r,s},t.prototype._throwIfClosed=function(){if(this.closed)throw new _8a.ObjectUnsubscribedError},t.prototype.next=function(r){var s=this;gbr.errorContext(function(){var a,o;if(s._throwIfClosed(),!s.isStopped){s.currentObservers||(s.currentObservers=Array.from(s.observers));try{for(var g=h8a(s.currentObservers),p=g.next();!p.done;p=g.next()){var f=p.value;f.next(r)}}catch(m){a={error:m}}finally{try{p&&!p.done&&(o=g.return)&&o.call(g)}finally{if(a)throw a.error}}}})},t.prototype.error=function(r){var s=this;gbr.errorContext(function(){if(s._throwIfClosed(),!s.isStopped){s.hasError=s.isStopped=!0,s.thrownError=r;for(var a=s.observers;a.length;)a.shift().error(r)}})},t.prototype.complete=function(){var r=this;gbr.errorContext(function(){if(r._throwIfClosed(),!r.isStopped){r.isStopped=!0;for(var s=r.observers;s.length;)s.shift().complete()}})},t.prototype.unsubscribe=function(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null},Object.defineProperty(t.prototype,"observed",{get:function(){var r;return((r=this.observers)===null||r===void 0?void 0:r.length)>0},enumerable:!1,configurable:!0}),t.prototype._trySubscribe=function(r){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,r)},t.prototype._subscribe=function(r){return this._throwIfClosed(),this._checkFinalizedStatuses(r),this._innerSubscribe(r)},t.prototype._innerSubscribe=function(r){var s=this,a=this,o=a.hasError,g=a.isStopped,p=a.observers;return o||g?Abr.EMPTY_SUBSCRIPTION:(this.currentObservers=null,p.push(r),new Abr.Subscription(function(){s.currentObservers=null,y8a.arrRemove(p,r)}))},t.prototype._checkFinalizedStatuses=function(r){var s=this,a=s.hasError,o=s.thrownError,g=s.isStopped;a?r.error(o):g&&r.complete()},t.prototype.asObservable=function(){var r=new Txi.Observable;return r.source=this,r},t.create=function(r,s){return new dbr(r,s)},t}(Txi.Observable);TK.Subject=Rxi;var dbr=function(e){Nxi(t,e);function t(r,s){var a=e.call(this)||this;return a.destination=r,a.source=s,a}return t.prototype.next=function(r){var s,a;(a=(s=this.destination)===null||s===void 0?void 0:s.next)===null||a===void 0||a.call(s,r)},t.prototype.error=function(r){var s,a;(a=(s=this.destination)===null||s===void 0?void 0:s.error)===null||a===void 0||a.call(s,r)},t.prototype.complete=function(){var r,s;(s=(r=this.destination)===null||r===void 0?void 0:r.complete)===null||s===void 0||s.call(r)},t.prototype._subscribe=function(r){var s,a;return(a=(s=this.source)===null||s===void 0?void 0:s.subscribe(r))!==null&&a!==void 0?a:Abr.EMPTY_SUBSCRIPTION},t}(Rxi);TK.AnonymousSubject=dbr});var pbr=z(iTe=>{"use strict";var b8a=iTe&&iTe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(iTe,"__esModule",{value:!0});iTe.BehaviorSubject=void 0;var E8a=ux(),B8a=function(e){b8a(t,e);function t(r){var s=e.call(this)||this;return s._value=r,s}return Object.defineProperty(t.prototype,"value",{get:function(){return this.getValue()},enumerable:!1,configurable:!0}),t.prototype._subscribe=function(r){var s=e.prototype._subscribe.call(this,r);return!s.closed&&r.next(this._value),s},t.prototype.getValue=function(){var r=this,s=r.hasError,a=r.thrownError,o=r._value;if(s)throw a;return this._throwIfClosed(),o},t.prototype.next=function(r){e.prototype.next.call(this,this._value=r)},t}(E8a.Subject);iTe.BehaviorSubject=B8a});var Lbt=z(oXe=>{"use strict";Object.defineProperty(oXe,"__esModule",{value:!0});oXe.dateTimestampProvider=void 0;oXe.dateTimestampProvider={now:function(){return(oXe.dateTimestampProvider.delegate||Date).now()},delegate:void 0}});var Vbt=z(sTe=>{"use strict";var v8a=sTe&&sTe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(sTe,"__esModule",{value:!0});sTe.ReplaySubject=void 0;var S8a=ux(),w8a=Lbt(),T8a=function(e){v8a(t,e);function t(r,s,a){r===void 0&&(r=1/0),s===void 0&&(s=1/0),a===void 0&&(a=w8a.dateTimestampProvider);var o=e.call(this)||this;return o._bufferSize=r,o._windowTime=s,o._timestampProvider=a,o._buffer=[],o._infiniteTimeWindow=!0,o._infiniteTimeWindow=s===1/0,o._bufferSize=Math.max(1,r),o._windowTime=Math.max(1,s),o}return t.prototype.next=function(r){var s=this,a=s.isStopped,o=s._buffer,g=s._infiniteTimeWindow,p=s._timestampProvider,f=s._windowTime;a||(o.push(r),!g&&o.push(p.now()+f)),this._trimBuffer(),e.prototype.next.call(this,r)},t.prototype._subscribe=function(r){this._throwIfClosed(),this._trimBuffer();for(var s=this._innerSubscribe(r),a=this,o=a._infiniteTimeWindow,g=a._buffer,p=g.slice(),f=0;f{"use strict";var N8a=oTe&&oTe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(oTe,"__esModule",{value:!0});oTe.AsyncSubject=void 0;var R8a=ux(),D8a=function(e){N8a(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r._value=null,r._hasValue=!1,r._isComplete=!1,r}return t.prototype._checkFinalizedStatuses=function(r){var s=this,a=s.hasError,o=s._hasValue,g=s._value,p=s.thrownError,f=s.isStopped,m=s._isComplete;a?r.error(p):(f||m)&&(o&&r.next(g),r.complete())},t.prototype.next=function(r){this.isStopped||(this._value=r,this._hasValue=!0)},t.prototype.complete=function(){var r=this,s=r._hasValue,a=r._value,o=r._isComplete;o||(this._isComplete=!0,s&&e.prototype.next.call(this,a),e.prototype.complete.call(this))},t}(R8a.Subject);oTe.AsyncSubject=D8a});var Dxi=z(aTe=>{"use strict";var x8a=aTe&&aTe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(aTe,"__esModule",{value:!0});aTe.Action=void 0;var k8a=g3(),G8a=function(e){x8a(t,e);function t(r,s){return e.call(this)||this}return t.prototype.schedule=function(r,s){return s===void 0&&(s=0),this},t}(k8a.Subscription);aTe.Action=G8a});var Gxi=z(NK=>{"use strict";var xxi=NK&&NK.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},kxi=NK&&NK.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";var F8a=cTe&&cTe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(cTe,"__esModule",{value:!0});cTe.AsyncAction=void 0;var Z8a=Dxi(),Fxi=Gxi(),L8a=_q(),V8a=function(e){F8a(t,e);function t(r,s){var a=e.call(this,r,s)||this;return a.scheduler=r,a.work=s,a.pending=!1,a}return t.prototype.schedule=function(r,s){var a;if(s===void 0&&(s=0),this.closed)return this;this.state=r;var o=this.id,g=this.scheduler;return o!=null&&(this.id=this.recycleAsyncId(g,o,s)),this.pending=!0,this.delay=s,this.id=(a=this.id)!==null&&a!==void 0?a:this.requestAsyncId(g,this.id,s),this},t.prototype.requestAsyncId=function(r,s,a){return a===void 0&&(a=0),Fxi.intervalProvider.setInterval(r.flush.bind(r,this),a)},t.prototype.recycleAsyncId=function(r,s,a){if(a===void 0&&(a=0),a!=null&&this.delay===a&&this.pending===!1)return s;s!=null&&Fxi.intervalProvider.clearInterval(s)},t.prototype.execute=function(r,s){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var a=this._execute(r,s);if(a)return a;this.pending===!1&&this.id!=null&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))},t.prototype._execute=function(r,s){var a=!1,o;try{this.work(r)}catch(g){a=!0,o=g||new Error("Scheduled action threw falsy error")}if(a)return this.unsubscribe(),o},t.prototype.unsubscribe=function(){if(!this.closed){var r=this,s=r.id,a=r.scheduler,o=a.actions;this.work=this.state=this.scheduler=null,this.pending=!1,L8a.arrRemove(o,this),s!=null&&(this.id=this.recycleAsyncId(a,s,null)),this.delay=null,e.prototype.unsubscribe.call(this)}},t}(Z8a.Action);cTe.AsyncAction=V8a});var Lxi=z(uTe=>{"use strict";Object.defineProperty(uTe,"__esModule",{value:!0});uTe.TestTools=uTe.Immediate=void 0;var W8a=1,fbr,Pbt={};function Zxi(e){return e in Pbt?(delete Pbt[e],!0):!1}uTe.Immediate={setImmediate:function(e){var t=W8a++;return Pbt[t]=!0,fbr||(fbr=Promise.resolve()),fbr.then(function(){return Zxi(t)&&e()}),t},clearImmediate:function(e){Zxi(e)}};uTe.TestTools={pending:function(){return Object.keys(Pbt).length}}});var Wxi=z(RK=>{"use strict";var P8a=RK&&RK.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},O8a=RK&&RK.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";var H8a=gTe&&gTe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(gTe,"__esModule",{value:!0});gTe.AsapAction=void 0;var Y8a=lTe(),Pxi=Wxi(),X8a=function(e){H8a(t,e);function t(r,s){var a=e.call(this,r,s)||this;return a.scheduler=r,a.work=s,a}return t.prototype.requestAsyncId=function(r,s,a){return a===void 0&&(a=0),a!==null&&a>0?e.prototype.requestAsyncId.call(this,r,s,a):(r.actions.push(this),r._scheduled||(r._scheduled=Pxi.immediateProvider.setImmediate(r.flush.bind(r,void 0))))},t.prototype.recycleAsyncId=function(r,s,a){var o;if(a===void 0&&(a=0),a!=null?a>0:this.delay>0)return e.prototype.recycleAsyncId.call(this,r,s,a);var g=r.actions;s!=null&&((o=g[g.length-1])===null||o===void 0?void 0:o.id)!==s&&(Pxi.immediateProvider.clearImmediate(s),r._scheduled===s&&(r._scheduled=void 0))},t}(Y8a.AsyncAction);gTe.AsapAction=X8a});var Ibr=z(Obt=>{"use strict";Object.defineProperty(Obt,"__esModule",{value:!0});Obt.Scheduler=void 0;var J8a=Lbt(),U8a=function(){function e(t,r){r===void 0&&(r=e.now),this.schedulerActionCtor=t,this.now=r}return e.prototype.schedule=function(t,r,s){return r===void 0&&(r=0),new this.schedulerActionCtor(this,t).schedule(s,r)},e.now=J8a.dateTimestampProvider.now,e}();Obt.Scheduler=U8a});var dTe=z(ATe=>{"use strict";var K8a=ATe&&ATe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(ATe,"__esModule",{value:!0});ATe.AsyncScheduler=void 0;var Qxi=Ibr(),j8a=function(e){K8a(t,e);function t(r,s){s===void 0&&(s=Qxi.Scheduler.now);var a=e.call(this,r,s)||this;return a.actions=[],a._active=!1,a}return t.prototype.flush=function(r){var s=this.actions;if(this._active){s.push(r);return}var a;this._active=!0;do if(a=r.execute(r.state,r.delay))break;while(r=s.shift());if(this._active=!1,a){for(;r=s.shift();)r.unsubscribe();throw a}},t}(Qxi.Scheduler);ATe.AsyncScheduler=j8a});var Mxi=z(pTe=>{"use strict";var z8a=pTe&&pTe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(pTe,"__esModule",{value:!0});pTe.AsapScheduler=void 0;var q8a=dTe(),$8a=function(e){z8a(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.flush=function(r){this._active=!0;var s=this._scheduled;this._scheduled=void 0;var a=this.actions,o;r=r||a.shift();do if(o=r.execute(r.state,r.delay))break;while((r=a[0])&&r.id===s&&a.shift());if(this._active=!1,o){for(;(r=a[0])&&r.id===s&&a.shift();)r.unsubscribe();throw o}},t}(q8a.AsyncScheduler);pTe.AsapScheduler=$8a});var Hxi=z(PIe=>{"use strict";Object.defineProperty(PIe,"__esModule",{value:!0});PIe.asap=PIe.asapScheduler=void 0;var e6a=Oxi(),t6a=Mxi();PIe.asapScheduler=new t6a.AsapScheduler(e6a.AsapAction);PIe.asap=PIe.asapScheduler});var S9=z(OIe=>{"use strict";Object.defineProperty(OIe,"__esModule",{value:!0});OIe.async=OIe.asyncScheduler=void 0;var r6a=lTe(),n6a=dTe();OIe.asyncScheduler=new n6a.AsyncScheduler(r6a.AsyncAction);OIe.async=OIe.asyncScheduler});var Yxi=z(fTe=>{"use strict";var i6a=fTe&&fTe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(fTe,"__esModule",{value:!0});fTe.QueueAction=void 0;var s6a=lTe(),o6a=function(e){i6a(t,e);function t(r,s){var a=e.call(this,r,s)||this;return a.scheduler=r,a.work=s,a}return t.prototype.schedule=function(r,s){return s===void 0&&(s=0),s>0?e.prototype.schedule.call(this,r,s):(this.delay=s,this.state=r,this.scheduler.flush(this),this)},t.prototype.execute=function(r,s){return s>0||this.closed?e.prototype.execute.call(this,r,s):this._execute(r,s)},t.prototype.requestAsyncId=function(r,s,a){return a===void 0&&(a=0),a!=null&&a>0||a==null&&this.delay>0?e.prototype.requestAsyncId.call(this,r,s,a):(r.flush(this),0)},t}(s6a.AsyncAction);fTe.QueueAction=o6a});var Xxi=z(ITe=>{"use strict";var a6a=ITe&&ITe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(ITe,"__esModule",{value:!0});ITe.QueueScheduler=void 0;var c6a=dTe(),l6a=function(e){a6a(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(c6a.AsyncScheduler);ITe.QueueScheduler=l6a});var Jxi=z(QIe=>{"use strict";Object.defineProperty(QIe,"__esModule",{value:!0});QIe.queue=QIe.queueScheduler=void 0;var u6a=Yxi(),g6a=Xxi();QIe.queueScheduler=new g6a.QueueScheduler(u6a.QueueAction);QIe.queue=QIe.queueScheduler});var Kxi=z(CTe=>{"use strict";var A6a=CTe&&CTe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(CTe,"__esModule",{value:!0});CTe.AnimationFrameAction=void 0;var d6a=lTe(),Uxi=lbr(),p6a=function(e){A6a(t,e);function t(r,s){var a=e.call(this,r,s)||this;return a.scheduler=r,a.work=s,a}return t.prototype.requestAsyncId=function(r,s,a){return a===void 0&&(a=0),a!==null&&a>0?e.prototype.requestAsyncId.call(this,r,s,a):(r.actions.push(this),r._scheduled||(r._scheduled=Uxi.animationFrameProvider.requestAnimationFrame(function(){return r.flush(void 0)})))},t.prototype.recycleAsyncId=function(r,s,a){var o;if(a===void 0&&(a=0),a!=null?a>0:this.delay>0)return e.prototype.recycleAsyncId.call(this,r,s,a);var g=r.actions;s!=null&&((o=g[g.length-1])===null||o===void 0?void 0:o.id)!==s&&(Uxi.animationFrameProvider.cancelAnimationFrame(s),r._scheduled=void 0)},t}(d6a.AsyncAction);CTe.AnimationFrameAction=p6a});var jxi=z(mTe=>{"use strict";var f6a=mTe&&mTe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(mTe,"__esModule",{value:!0});mTe.AnimationFrameScheduler=void 0;var I6a=dTe(),C6a=function(e){f6a(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.flush=function(r){this._active=!0;var s=this._scheduled;this._scheduled=void 0;var a=this.actions,o;r=r||a.shift();do if(o=r.execute(r.state,r.delay))break;while((r=a[0])&&r.id===s&&a.shift());if(this._active=!1,o){for(;(r=a[0])&&r.id===s&&a.shift();)r.unsubscribe();throw o}},t}(I6a.AsyncScheduler);mTe.AnimationFrameScheduler=C6a});var zxi=z(MIe=>{"use strict";Object.defineProperty(MIe,"__esModule",{value:!0});MIe.animationFrame=MIe.animationFrameScheduler=void 0;var m6a=Kxi(),h6a=jxi();MIe.animationFrameScheduler=new h6a.AnimationFrameScheduler(m6a.AnimationFrameAction);MIe.animationFrame=MIe.animationFrameScheduler});var eki=z(koe=>{"use strict";var qxi=koe&&koe.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,a){s.__proto__=a}||function(s,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(s[o]=a[o])},e(t,r)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function s(){this.constructor=t}t.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(koe,"__esModule",{value:!0});koe.VirtualAction=koe.VirtualTimeScheduler=void 0;var _6a=lTe(),y6a=g3(),b6a=dTe(),E6a=function(e){qxi(t,e);function t(r,s){r===void 0&&(r=$xi),s===void 0&&(s=1/0);var a=e.call(this,r,function(){return a.frame})||this;return a.maxFrames=s,a.frame=0,a.index=-1,a}return t.prototype.flush=function(){for(var r=this,s=r.actions,a=r.maxFrames,o,g;(g=s[0])&&g.delay<=a&&(s.shift(),this.frame=g.delay,!(o=g.execute(g.state,g.delay))););if(o){for(;g=s.shift();)g.unsubscribe();throw o}},t.frameTimeFactor=10,t}(b6a.AsyncScheduler);koe.VirtualTimeScheduler=E6a;var $xi=function(e){qxi(t,e);function t(r,s,a){a===void 0&&(a=r.index+=1);var o=e.call(this,r,s)||this;return o.scheduler=r,o.work=s,o.index=a,o.active=!0,o.index=r.index=a,o}return t.prototype.schedule=function(r,s){if(s===void 0&&(s=0),Number.isFinite(s)){if(!this.id)return e.prototype.schedule.call(this,r,s);this.active=!1;var a=new t(this.scheduler,this.work);return this.add(a),a.schedule(r,s)}else return y6a.Subscription.EMPTY},t.prototype.requestAsyncId=function(r,s,a){a===void 0&&(a=0),this.delay=r.frame+a;var o=r.actions;return o.push(this),o.sort(t.sortActions),1},t.prototype.recycleAsyncId=function(r,s,a){a===void 0&&(a=0)},t.prototype._execute=function(r,s){if(this.active===!0)return e.prototype._execute.call(this,r,s)},t.sortActions=function(r,s){return r.delay===s.delay?r.index===s.index?0:r.index>s.index?1:-1:r.delay>s.delay?1:-1},t}(_6a.AsyncAction);koe.VirtualAction=$xi});var WY=z(HIe=>{"use strict";Object.defineProperty(HIe,"__esModule",{value:!0});HIe.empty=HIe.EMPTY=void 0;var tki=Oy();HIe.EMPTY=new tki.Observable(function(e){return e.complete()});function B6a(e){return e?v6a(e):HIe.EMPTY}HIe.empty=B6a;function v6a(e){return new tki.Observable(function(t){return e.schedule(function(){return t.complete()})})}});var aXe=z(Qbt=>{"use strict";Object.defineProperty(Qbt,"__esModule",{value:!0});Qbt.isScheduler=void 0;var S6a=ly();function w6a(e){return e&&S6a.isFunction(e.schedule)}Qbt.isScheduler=w6a});var w9=z(Goe=>{"use strict";Object.defineProperty(Goe,"__esModule",{value:!0});Goe.popNumber=Goe.popScheduler=Goe.popResultSelector=void 0;var T6a=ly(),N6a=aXe();function Cbr(e){return e[e.length-1]}function R6a(e){return T6a.isFunction(Cbr(e))?e.pop():void 0}Goe.popResultSelector=R6a;function D6a(e){return N6a.isScheduler(Cbr(e))?e.pop():void 0}Goe.popScheduler=D6a;function x6a(e,t){return typeof Cbr(e)=="number"?e.pop():t}Goe.popNumber=x6a});var Hbt=z(Mbt=>{"use strict";Object.defineProperty(Mbt,"__esModule",{value:!0});Mbt.isArrayLike=void 0;Mbt.isArrayLike=function(e){return e&&typeof e.length=="number"&&typeof e!="function"}});var mbr=z(Ybt=>{"use strict";Object.defineProperty(Ybt,"__esModule",{value:!0});Ybt.isPromise=void 0;var k6a=ly();function G6a(e){return k6a.isFunction(e?.then)}Ybt.isPromise=G6a});var hbr=z(Xbt=>{"use strict";Object.defineProperty(Xbt,"__esModule",{value:!0});Xbt.isInteropObservable=void 0;var F6a=rXe(),Z6a=ly();function L6a(e){return Z6a.isFunction(e[F6a.observable])}Xbt.isInteropObservable=L6a});var _br=z(Jbt=>{"use strict";Object.defineProperty(Jbt,"__esModule",{value:!0});Jbt.isAsyncIterable=void 0;var V6a=ly();function W6a(e){return Symbol.asyncIterator&&V6a.isFunction(e?.[Symbol.asyncIterator])}Jbt.isAsyncIterable=W6a});var ybr=z(Ubt=>{"use strict";Object.defineProperty(Ubt,"__esModule",{value:!0});Ubt.createInvalidObservableTypeError=void 0;function P6a(e){return new TypeError("You provided "+(e!==null&&typeof e=="object"?"an invalid object":"'"+e+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}Ubt.createInvalidObservableTypeError=P6a});var bbr=z(hTe=>{"use strict";Object.defineProperty(hTe,"__esModule",{value:!0});hTe.iterator=hTe.getSymbolIterator=void 0;function rki(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}hTe.getSymbolIterator=rki;hTe.iterator=rki()});var Ebr=z(Kbt=>{"use strict";Object.defineProperty(Kbt,"__esModule",{value:!0});Kbt.isIterable=void 0;var O6a=bbr(),Q6a=ly();function M6a(e){return Q6a.isFunction(e?.[O6a.iterator])}Kbt.isIterable=M6a});var jbt=z(MQ=>{"use strict";var H6a=MQ&&MQ.__generator||function(e,t){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},s,a,o,g;return g={next:p(0),throw:p(1),return:p(2)},typeof Symbol=="function"&&(g[Symbol.iterator]=function(){return this}),g;function p(m){return function(y){return f([m,y])}}function f(m){if(s)throw new TypeError("Generator is already executing.");for(;r;)try{if(s=1,a&&(o=m[0]&2?a.return:m[0]?a.throw||((o=a.return)&&o.call(a),0):a.next)&&!(o=o.call(a,m[1])).done)return o;switch(a=0,o&&(m=[m[0]&2,o.value]),m[0]){case 0:case 1:o=m;break;case 4:return r.label++,{value:m[1],done:!1};case 5:r.label++,a=m[1],m=[0];continue;case 7:m=r.ops.pop(),r.trys.pop();continue;default:if(o=r.trys,!(o=o.length>0&&o[o.length-1])&&(m[0]===6||m[0]===2)){r=0;continue}if(m[0]===3&&(!o||m[1]>o[0]&&m[1]1||p(v,k)})})}function p(v,k){try{f(s[v](k))}catch(T){B(o[0][3],T)}}function f(v){v.value instanceof _Te?Promise.resolve(v.value.v).then(m,y):B(o[0][2],v)}function m(v){p("next",v)}function y(v){p("throw",v)}function B(v,k){v(k),o.shift(),o.length&&p(o[0][0],o[0][1])}};Object.defineProperty(MQ,"__esModule",{value:!0});MQ.isReadableStreamLike=MQ.readableStreamLikeToAsyncGenerator=void 0;var X6a=ly();function J6a(e){return Y6a(this,arguments,function(){var r,s,a,o;return H6a(this,function(g){switch(g.label){case 0:r=e.getReader(),g.label=1;case 1:g.trys.push([1,,9,10]),g.label=2;case 2:return[4,_Te(r.read())];case 3:return s=g.sent(),a=s.value,o=s.done,o?[4,_Te(void 0)]:[3,5];case 4:return[2,g.sent()];case 5:return[4,_Te(a)];case 6:return[4,g.sent()];case 7:return g.sent(),[3,2];case 8:return[3,10];case 9:return r.releaseLock(),[7];case 10:return[2]}})})}MQ.readableStreamLikeToAsyncGenerator=J6a;function U6a(e){return X6a.isFunction(e?.getReader)}MQ.isReadableStreamLike=U6a});var $I=z(o2=>{"use strict";var K6a=o2&&o2.__awaiter||function(e,t,r,s){function a(o){return o instanceof r?o:new r(function(g){g(o)})}return new(r||(r=Promise))(function(o,g){function p(y){try{m(s.next(y))}catch(B){g(B)}}function f(y){try{m(s.throw(y))}catch(B){g(B)}}function m(y){y.done?o(y.value):a(y.value).then(p,f)}m((s=s.apply(e,t||[])).next())})},j6a=o2&&o2.__generator||function(e,t){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},s,a,o,g;return g={next:p(0),throw:p(1),return:p(2)},typeof Symbol=="function"&&(g[Symbol.iterator]=function(){return this}),g;function p(m){return function(y){return f([m,y])}}function f(m){if(s)throw new TypeError("Generator is already executing.");for(;r;)try{if(s=1,a&&(o=m[0]&2?a.return:m[0]?a.throw||((o=a.return)&&o.call(a),0):a.next)&&!(o=o.call(a,m[1])).done)return o;switch(a=0,o&&(m=[m[0]&2,o.value]),m[0]){case 0:case 1:o=m;break;case 4:return r.label++,{value:m[1],done:!1};case 5:r.label++,a=m[1],m=[0];continue;case 7:m=r.ops.pop(),r.trys.pop();continue;default:if(o=r.trys,!(o=o.length>0&&o[o.length-1])&&(m[0]===6||m[0]===2)){r=0;continue}if(m[0]===3&&(!o||m[1]>o[0]&&m[1]=e.length&&(e=void 0),{value:e&&e[s++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(o2,"__esModule",{value:!0});o2.fromReadableStreamLike=o2.fromAsyncIterable=o2.fromIterable=o2.fromPromise=o2.fromArrayLike=o2.fromInteropObservable=o2.innerFrom=void 0;var q6a=Hbt(),$6a=mbr(),yTe=Oy(),e7a=hbr(),t7a=_br(),r7a=ybr(),n7a=Ebr(),nki=jbt(),i7a=ly(),s7a=rbr(),o7a=rXe();function a7a(e){if(e instanceof yTe.Observable)return e;if(e!=null){if(e7a.isInteropObservable(e))return iki(e);if(q6a.isArrayLike(e))return ski(e);if($6a.isPromise(e))return oki(e);if(t7a.isAsyncIterable(e))return vbr(e);if(n7a.isIterable(e))return aki(e);if(nki.isReadableStreamLike(e))return cki(e)}throw r7a.createInvalidObservableTypeError(e)}o2.innerFrom=a7a;function iki(e){return new yTe.Observable(function(t){var r=e[o7a.observable]();if(i7a.isFunction(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}o2.fromInteropObservable=iki;function ski(e){return new yTe.Observable(function(t){for(var r=0;r{"use strict";Object.defineProperty(zbt,"__esModule",{value:!0});zbt.executeSchedule=void 0;function l7a(e,t,r,s,a){s===void 0&&(s=0),a===void 0&&(a=!1);var o=t.schedule(function(){r(),a?e.add(this.schedule(null,s)):this.unsubscribe()},s);if(e.add(o),!a)return o}zbt.executeSchedule=l7a});var bTe=z(qbt=>{"use strict";Object.defineProperty(qbt,"__esModule",{value:!0});qbt.observeOn=void 0;var Sbr=yq(),u7a=Lg(),g7a=ud();function A7a(e,t){return t===void 0&&(t=0),u7a.operate(function(r,s){r.subscribe(g7a.createOperatorSubscriber(s,function(a){return Sbr.executeSchedule(s,e,function(){return s.next(a)},t)},function(){return Sbr.executeSchedule(s,e,function(){return s.complete()},t)},function(a){return Sbr.executeSchedule(s,e,function(){return s.error(a)},t)}))})}qbt.observeOn=A7a});var ETe=z($bt=>{"use strict";Object.defineProperty($bt,"__esModule",{value:!0});$bt.subscribeOn=void 0;var d7a=Lg();function p7a(e,t){return t===void 0&&(t=0),d7a.operate(function(r,s){s.add(e.schedule(function(){return r.subscribe(s)},t))})}$bt.subscribeOn=p7a});var lki=z(eEt=>{"use strict";Object.defineProperty(eEt,"__esModule",{value:!0});eEt.scheduleObservable=void 0;var f7a=$I(),I7a=bTe(),C7a=ETe();function m7a(e,t){return f7a.innerFrom(e).pipe(C7a.subscribeOn(t),I7a.observeOn(t))}eEt.scheduleObservable=m7a});var uki=z(tEt=>{"use strict";Object.defineProperty(tEt,"__esModule",{value:!0});tEt.schedulePromise=void 0;var h7a=$I(),_7a=bTe(),y7a=ETe();function b7a(e,t){return h7a.innerFrom(e).pipe(y7a.subscribeOn(t),_7a.observeOn(t))}tEt.schedulePromise=b7a});var gki=z(rEt=>{"use strict";Object.defineProperty(rEt,"__esModule",{value:!0});rEt.scheduleArray=void 0;var E7a=Oy();function B7a(e,t){return new E7a.Observable(function(r){var s=0;return t.schedule(function(){s===e.length?r.complete():(r.next(e[s++]),r.closed||this.schedule())})})}rEt.scheduleArray=B7a});var wbr=z(nEt=>{"use strict";Object.defineProperty(nEt,"__esModule",{value:!0});nEt.scheduleIterable=void 0;var v7a=Oy(),S7a=bbr(),w7a=ly(),Aki=yq();function T7a(e,t){return new v7a.Observable(function(r){var s;return Aki.executeSchedule(r,t,function(){s=e[S7a.iterator](),Aki.executeSchedule(r,t,function(){var a,o,g;try{a=s.next(),o=a.value,g=a.done}catch(p){r.error(p);return}g?r.complete():r.next(o)},0,!0)}),function(){return w7a.isFunction(s?.return)&&s.return()}})}nEt.scheduleIterable=T7a});var Tbr=z(iEt=>{"use strict";Object.defineProperty(iEt,"__esModule",{value:!0});iEt.scheduleAsyncIterable=void 0;var N7a=Oy(),dki=yq();function R7a(e,t){if(!e)throw new Error("Iterable cannot be null");return new N7a.Observable(function(r){dki.executeSchedule(r,t,function(){var s=e[Symbol.asyncIterator]();dki.executeSchedule(r,t,function(){s.next().then(function(a){a.done?r.complete():r.next(a.value)})},0,!0)})})}iEt.scheduleAsyncIterable=R7a});var pki=z(sEt=>{"use strict";Object.defineProperty(sEt,"__esModule",{value:!0});sEt.scheduleReadableStreamLike=void 0;var D7a=Tbr(),x7a=jbt();function k7a(e,t){return D7a.scheduleAsyncIterable(x7a.readableStreamLikeToAsyncGenerator(e),t)}sEt.scheduleReadableStreamLike=k7a});var Nbr=z(oEt=>{"use strict";Object.defineProperty(oEt,"__esModule",{value:!0});oEt.scheduled=void 0;var G7a=lki(),F7a=uki(),Z7a=gki(),L7a=wbr(),V7a=Tbr(),W7a=hbr(),P7a=mbr(),O7a=Hbt(),Q7a=Ebr(),M7a=_br(),H7a=ybr(),Y7a=jbt(),X7a=pki();function J7a(e,t){if(e!=null){if(W7a.isInteropObservable(e))return G7a.scheduleObservable(e,t);if(O7a.isArrayLike(e))return Z7a.scheduleArray(e,t);if(P7a.isPromise(e))return F7a.schedulePromise(e,t);if(M7a.isAsyncIterable(e))return V7a.scheduleAsyncIterable(e,t);if(Q7a.isIterable(e))return L7a.scheduleIterable(e,t);if(Y7a.isReadableStreamLike(e))return X7a.scheduleReadableStreamLike(e,t)}throw H7a.createInvalidObservableTypeError(e)}oEt.scheduled=J7a});var bq=z(aEt=>{"use strict";Object.defineProperty(aEt,"__esModule",{value:!0});aEt.from=void 0;var U7a=Nbr(),K7a=$I();function j7a(e,t){return t?U7a.scheduled(e,t):K7a.innerFrom(e)}aEt.from=j7a});var lEt=z(cEt=>{"use strict";Object.defineProperty(cEt,"__esModule",{value:!0});cEt.of=void 0;var z7a=w9(),q7a=bq();function $7a(){for(var e=[],t=0;t{"use strict";Object.defineProperty(uEt,"__esModule",{value:!0});uEt.throwError=void 0;var eja=Oy(),tja=ly();function rja(e,t){var r=tja.isFunction(e)?e:function(){return e},s=function(a){return a.error(r())};return new eja.Observable(t?function(a){return t.schedule(s,0,a)}:s)}uEt.throwError=rja});var gEt=z(Eq=>{"use strict";Object.defineProperty(Eq,"__esModule",{value:!0});Eq.observeNotification=Eq.Notification=Eq.NotificationKind=void 0;var nja=WY(),ija=lEt(),sja=Rbr(),oja=ly(),aja;(function(e){e.NEXT="N",e.ERROR="E",e.COMPLETE="C"})(aja=Eq.NotificationKind||(Eq.NotificationKind={}));var cja=function(){function e(t,r,s){this.kind=t,this.value=r,this.error=s,this.hasValue=t==="N"}return e.prototype.observe=function(t){return fki(this,t)},e.prototype.do=function(t,r,s){var a=this,o=a.kind,g=a.value,p=a.error;return o==="N"?t?.(g):o==="E"?r?.(p):s?.()},e.prototype.accept=function(t,r,s){var a;return oja.isFunction((a=t)===null||a===void 0?void 0:a.next)?this.observe(t):this.do(t,r,s)},e.prototype.toObservable=function(){var t=this,r=t.kind,s=t.value,a=t.error,o=r==="N"?ija.of(s):r==="E"?sja.throwError(function(){return a}):r==="C"?nja.EMPTY:0;if(!o)throw new TypeError("Unexpected notification kind "+r);return o},e.createNext=function(t){return new e("N",t)},e.createError=function(t){return new e("E",void 0,t)},e.createComplete=function(){return e.completeNotification},e.completeNotification=new e("C"),e}();Eq.Notification=cja;function fki(e,t){var r,s,a,o=e,g=o.kind,p=o.value,f=o.error;if(typeof g!="string")throw new TypeError('Invalid notification, missing "kind"');g==="N"?(r=t.next)===null||r===void 0||r.call(t,p):g==="E"?(s=t.error)===null||s===void 0||s.call(t,f):(a=t.complete)===null||a===void 0||a.call(t)}Eq.observeNotification=fki});var Cki=z(AEt=>{"use strict";Object.defineProperty(AEt,"__esModule",{value:!0});AEt.isObservable=void 0;var lja=Oy(),Iki=ly();function uja(e){return!!e&&(e instanceof lja.Observable||Iki.isFunction(e.lift)&&Iki.isFunction(e.subscribe))}AEt.isObservable=uja});var Foe=z(dEt=>{"use strict";Object.defineProperty(dEt,"__esModule",{value:!0});dEt.EmptyError=void 0;var gja=Doe();dEt.EmptyError=gja.createErrorClass(function(e){return function(){e(this),this.name="EmptyError",this.message="no elements in sequence"}})});var mki=z(pEt=>{"use strict";Object.defineProperty(pEt,"__esModule",{value:!0});pEt.lastValueFrom=void 0;var Aja=Foe();function dja(e,t){var r=typeof t=="object";return new Promise(function(s,a){var o=!1,g;e.subscribe({next:function(p){g=p,o=!0},error:a,complete:function(){o?s(g):r?s(t.defaultValue):a(new Aja.EmptyError)}})})}pEt.lastValueFrom=dja});var hki=z(fEt=>{"use strict";Object.defineProperty(fEt,"__esModule",{value:!0});fEt.firstValueFrom=void 0;var pja=Foe(),fja=eTe();function Ija(e,t){var r=typeof t=="object";return new Promise(function(s,a){var o=new fja.SafeSubscriber({next:function(g){s(g),o.unsubscribe()},error:a,complete:function(){r?s(t.defaultValue):a(new pja.EmptyError)}});e.subscribe(o)})}fEt.firstValueFrom=Ija});var Dbr=z(IEt=>{"use strict";Object.defineProperty(IEt,"__esModule",{value:!0});IEt.ArgumentOutOfRangeError=void 0;var Cja=Doe();IEt.ArgumentOutOfRangeError=Cja.createErrorClass(function(e){return function(){e(this),this.name="ArgumentOutOfRangeError",this.message="argument out of range"}})});var xbr=z(CEt=>{"use strict";Object.defineProperty(CEt,"__esModule",{value:!0});CEt.NotFoundError=void 0;var mja=Doe();CEt.NotFoundError=mja.createErrorClass(function(e){return function(r){e(this),this.name="NotFoundError",this.message=r}})});var kbr=z(mEt=>{"use strict";Object.defineProperty(mEt,"__esModule",{value:!0});mEt.SequenceError=void 0;var hja=Doe();mEt.SequenceError=hja.createErrorClass(function(e){return function(r){e(this),this.name="SequenceError",this.message=r}})});var _Et=z(hEt=>{"use strict";Object.defineProperty(hEt,"__esModule",{value:!0});hEt.isValidDate=void 0;function _ja(e){return e instanceof Date&&!isNaN(e)}hEt.isValidDate=_ja});var cXe=z(YIe=>{"use strict";Object.defineProperty(YIe,"__esModule",{value:!0});YIe.timeout=YIe.TimeoutError=void 0;var yja=S9(),bja=_Et(),Eja=Lg(),Bja=$I(),vja=Doe(),Sja=ud(),wja=yq();YIe.TimeoutError=vja.createErrorClass(function(e){return function(r){r===void 0&&(r=null),e(this),this.message="Timeout has occurred",this.name="TimeoutError",this.info=r}});function Tja(e,t){var r=bja.isValidDate(e)?{first:e}:typeof e=="number"?{each:e}:e,s=r.first,a=r.each,o=r.with,g=o===void 0?Nja:o,p=r.scheduler,f=p===void 0?t??yja.asyncScheduler:p,m=r.meta,y=m===void 0?null:m;if(s==null&&a==null)throw new TypeError("No timeout provided.");return Eja.operate(function(B,v){var k,T,O=null,X=0,U=function(le){T=wja.executeSchedule(v,f,function(){try{k.unsubscribe(),Bja.innerFrom(g({meta:y,lastValue:O,seen:X})).subscribe(v)}catch(ae){v.error(ae)}},le)};k=B.subscribe(Sja.createOperatorSubscriber(v,function(le){T?.unsubscribe(),X++,v.next(O=le),a>0&&U(a)},void 0,void 0,function(){T?.closed||T?.unsubscribe(),O=null})),!X&&U(s!=null?typeof s=="number"?s:+s-f.now():a)})}YIe.timeout=Tja;function Nja(e){throw new YIe.TimeoutError(e)}});var Bq=z(yEt=>{"use strict";Object.defineProperty(yEt,"__esModule",{value:!0});yEt.map=void 0;var Rja=Lg(),Dja=ud();function xja(e,t){return Rja.operate(function(r,s){var a=0;r.subscribe(Dja.createOperatorSubscriber(s,function(o){s.next(e.call(t,o,a++))}))})}yEt.map=xja});var Loe=z(Zoe=>{"use strict";var kja=Zoe&&Zoe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},Gja=Zoe&&Zoe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";var Wja=Voe&&Voe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},_ki=Voe&&Voe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";Object.defineProperty(bEt,"__esModule",{value:!0});bEt.bindCallback=void 0;var Xja=Fbr();function Jja(e,t,r){return Xja.bindCallbackInternals(!1,e,t,r)}bEt.bindCallback=Jja});var bki=z(EEt=>{"use strict";Object.defineProperty(EEt,"__esModule",{value:!0});EEt.bindNodeCallback=void 0;var Uja=Fbr();function Kja(e,t,r){return Uja.bindCallbackInternals(!0,e,t,r)}EEt.bindNodeCallback=Kja});var Zbr=z(BEt=>{"use strict";Object.defineProperty(BEt,"__esModule",{value:!0});BEt.argsArgArrayOrObject=void 0;var jja=Array.isArray,zja=Object.getPrototypeOf,qja=Object.prototype,$ja=Object.keys;function eza(e){if(e.length===1){var t=e[0];if(jja(t))return{args:t,keys:null};if(tza(t)){var r=$ja(t);return{args:r.map(function(s){return t[s]}),keys:r}}}return{args:e,keys:null}}BEt.argsArgArrayOrObject=eza;function tza(e){return e&&typeof e=="object"&&zja(e)===qja}});var Lbr=z(vEt=>{"use strict";Object.defineProperty(vEt,"__esModule",{value:!0});vEt.createObject=void 0;function rza(e,t){return e.reduce(function(r,s,a){return r[s]=t[a],r},{})}vEt.createObject=rza});var SEt=z(BTe=>{"use strict";Object.defineProperty(BTe,"__esModule",{value:!0});BTe.combineLatestInit=BTe.combineLatest=void 0;var nza=Oy(),iza=Zbr(),vki=bq(),Ski=lx(),sza=Loe(),Eki=w9(),oza=Lbr(),aza=ud(),cza=yq();function lza(){for(var e=[],t=0;t{"use strict";Object.defineProperty(wEt,"__esModule",{value:!0});wEt.mergeInternals=void 0;var uza=$I(),gza=yq(),Tki=ud();function Aza(e,t,r,s,a,o,g,p){var f=[],m=0,y=0,B=!1,v=function(){B&&!f.length&&!m&&t.complete()},k=function(O){return m{"use strict";Object.defineProperty(NEt,"__esModule",{value:!0});NEt.mergeMap=void 0;var dza=Bq(),pza=$I(),fza=Lg(),Iza=TEt(),Cza=ly();function Nki(e,t,r){return r===void 0&&(r=1/0),Cza.isFunction(t)?Nki(function(s,a){return dza.map(function(o,g){return t(s,o,a,g)})(pza.innerFrom(e(s,a)))},r):(typeof t=="number"&&(r=t),fza.operate(function(s,a){return Iza.mergeInternals(s,a,e,r)}))}NEt.mergeMap=Nki});var vTe=z(REt=>{"use strict";Object.defineProperty(REt,"__esModule",{value:!0});REt.mergeAll=void 0;var mza=DK(),hza=lx();function _za(e){return e===void 0&&(e=1/0),mza.mergeMap(hza.identity,e)}REt.mergeAll=_za});var lXe=z(DEt=>{"use strict";Object.defineProperty(DEt,"__esModule",{value:!0});DEt.concatAll=void 0;var yza=vTe();function bza(){return yza.mergeAll(1)}DEt.concatAll=bza});var uXe=z(xEt=>{"use strict";Object.defineProperty(xEt,"__esModule",{value:!0});xEt.concat=void 0;var Eza=lXe(),Bza=w9(),vza=bq();function Sza(){for(var e=[],t=0;t{"use strict";Object.defineProperty(kEt,"__esModule",{value:!0});kEt.defer=void 0;var wza=Oy(),Tza=$I();function Nza(e){return new wza.Observable(function(t){Tza.innerFrom(e()).subscribe(t)})}kEt.defer=Nza});var Rki=z(GEt=>{"use strict";Object.defineProperty(GEt,"__esModule",{value:!0});GEt.connectable=void 0;var Rza=ux(),Dza=Oy(),xza=gXe(),kza={connector:function(){return new Rza.Subject},resetOnDisconnect:!0};function Gza(e,t){t===void 0&&(t=kza);var r=null,s=t.connector,a=t.resetOnDisconnect,o=a===void 0?!0:a,g=s(),p=new Dza.Observable(function(f){return g.subscribe(f)});return p.connect=function(){return(!r||r.closed)&&(r=xza.defer(function(){return e}).subscribe(g),o&&r.add(function(){return g=s()})),r},p}GEt.connectable=Gza});var Dki=z(FEt=>{"use strict";Object.defineProperty(FEt,"__esModule",{value:!0});FEt.forkJoin=void 0;var Fza=Oy(),Zza=Zbr(),Lza=$I(),Vza=w9(),Wza=ud(),Pza=Loe(),Oza=Lbr();function Qza(){for(var e=[],t=0;t{"use strict";var Mza=STe&&STe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o};Object.defineProperty(STe,"__esModule",{value:!0});STe.fromEvent=void 0;var Hza=$I(),Yza=Oy(),Xza=DK(),Jza=Hbt(),XIe=ly(),Uza=Loe(),Kza=["addListener","removeListener"],jza=["addEventListener","removeEventListener"],zza=["on","off"];function Vbr(e,t,r,s){if(XIe.isFunction(r)&&(s=r,r=void 0),s)return Vbr(e,t,r).pipe(Uza.mapOneOrManyArgs(s));var a=Mza(eqa(e)?jza.map(function(p){return function(f){return e[p](t,f,r)}}):qza(e)?Kza.map(xki(e,t)):$za(e)?zza.map(xki(e,t)):[],2),o=a[0],g=a[1];if(!o&&Jza.isArrayLike(e))return Xza.mergeMap(function(p){return Vbr(p,t,r)})(Hza.innerFrom(e));if(!o)throw new TypeError("Invalid event target");return new Yza.Observable(function(p){var f=function(){for(var m=[],y=0;y{"use strict";Object.defineProperty(ZEt,"__esModule",{value:!0});ZEt.fromEventPattern=void 0;var tqa=Oy(),rqa=ly(),nqa=Loe();function Gki(e,t,r){return r?Gki(e,t).pipe(nqa.mapOneOrManyArgs(r)):new tqa.Observable(function(s){var a=function(){for(var g=[],p=0;p{"use strict";var iqa=wTe&&wTe.__generator||function(e,t){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},s,a,o,g;return g={next:p(0),throw:p(1),return:p(2)},typeof Symbol=="function"&&(g[Symbol.iterator]=function(){return this}),g;function p(m){return function(y){return f([m,y])}}function f(m){if(s)throw new TypeError("Generator is already executing.");for(;r;)try{if(s=1,a&&(o=m[0]&2?a.return:m[0]?a.throw||((o=a.return)&&o.call(a),0):a.next)&&!(o=o.call(a,m[1])).done)return o;switch(a=0,o&&(m=[m[0]&2,o.value]),m[0]){case 0:case 1:o=m;break;case 4:return r.label++,{value:m[1],done:!1};case 5:r.label++,a=m[1],m=[0];continue;case 7:m=r.ops.pop(),r.trys.pop();continue;default:if(o=r.trys,!(o=o.length>0&&o[o.length-1])&&(m[0]===6||m[0]===2)){r=0;continue}if(m[0]===3&&(!o||m[1]>o[0]&&m[1]{"use strict";Object.defineProperty(LEt,"__esModule",{value:!0});LEt.iif=void 0;var lqa=gXe();function uqa(e,t,r){return lqa.defer(function(){return e()?t:r})}LEt.iif=uqa});var Woe=z(VEt=>{"use strict";Object.defineProperty(VEt,"__esModule",{value:!0});VEt.timer=void 0;var gqa=Oy(),Aqa=S9(),dqa=aXe(),pqa=_Et();function fqa(e,t,r){e===void 0&&(e=0),r===void 0&&(r=Aqa.async);var s=-1;return t!=null&&(dqa.isScheduler(t)?r=t:s=t),new gqa.Observable(function(a){var o=pqa.isValidDate(e)?+e-r.now():e;o<0&&(o=0);var g=0;return r.schedule(function(){a.closed||(a.next(g++),0<=s?this.schedule(void 0,s):a.complete())},o)})}VEt.timer=fqa});var Wbr=z(WEt=>{"use strict";Object.defineProperty(WEt,"__esModule",{value:!0});WEt.interval=void 0;var Iqa=S9(),Cqa=Woe();function mqa(e,t){return e===void 0&&(e=0),t===void 0&&(t=Iqa.asyncScheduler),e<0&&(e=0),Cqa.timer(e,e,t)}WEt.interval=mqa});var Pki=z(PEt=>{"use strict";Object.defineProperty(PEt,"__esModule",{value:!0});PEt.merge=void 0;var hqa=vTe(),_qa=$I(),yqa=WY(),Wki=w9(),bqa=bq();function Eqa(){for(var e=[],t=0;t{"use strict";Object.defineProperty(JIe,"__esModule",{value:!0});JIe.never=JIe.NEVER=void 0;var Bqa=Oy(),vqa=cx();JIe.NEVER=new Bqa.Observable(vqa.noop);function Sqa(){return JIe.NEVER}JIe.never=Sqa});var Poe=z(OEt=>{"use strict";Object.defineProperty(OEt,"__esModule",{value:!0});OEt.argsOrArgArray=void 0;var wqa=Array.isArray;function Tqa(e){return e.length===1&&wqa(e[0])?e[0]:e}OEt.argsOrArgArray=Tqa});var Obr=z(QEt=>{"use strict";Object.defineProperty(QEt,"__esModule",{value:!0});QEt.onErrorResumeNext=void 0;var Nqa=Oy(),Rqa=Poe(),Dqa=ud(),Oki=cx(),xqa=$I();function kqa(){for(var e=[],t=0;t{"use strict";Object.defineProperty(MEt,"__esModule",{value:!0});MEt.pairs=void 0;var Gqa=bq();function Fqa(e,t){return Gqa.from(Object.entries(e),t)}MEt.pairs=Fqa});var Qbr=z(HEt=>{"use strict";Object.defineProperty(HEt,"__esModule",{value:!0});HEt.not=void 0;function Zqa(e,t){return function(r,s){return!e.call(t,r,s)}}HEt.not=Zqa});var vq=z(YEt=>{"use strict";Object.defineProperty(YEt,"__esModule",{value:!0});YEt.filter=void 0;var Lqa=Lg(),Vqa=ud();function Wqa(e,t){return Lqa.operate(function(r,s){var a=0;r.subscribe(Vqa.createOperatorSubscriber(s,function(o){return e.call(t,o,a++)&&s.next(o)}))})}YEt.filter=Wqa});var Yki=z(XEt=>{"use strict";Object.defineProperty(XEt,"__esModule",{value:!0});XEt.partition=void 0;var Pqa=Qbr(),Mki=vq(),Hki=$I();function Oqa(e,t,r){return[Mki.filter(t,r)(Hki.innerFrom(e)),Mki.filter(Pqa.not(t,r))(Hki.innerFrom(e))]}XEt.partition=Oqa});var Mbr=z(TTe=>{"use strict";Object.defineProperty(TTe,"__esModule",{value:!0});TTe.raceInit=TTe.race=void 0;var Qqa=Oy(),Xki=$I(),Mqa=Poe(),Hqa=ud();function Yqa(){for(var e=[],t=0;t{"use strict";Object.defineProperty(JEt,"__esModule",{value:!0});JEt.range=void 0;var Xqa=Oy(),Jqa=WY();function Uqa(e,t,r){if(t==null&&(t=e,e=0),t<=0)return Jqa.EMPTY;var s=t+e;return new Xqa.Observable(r?function(a){var o=e;return r.schedule(function(){o{"use strict";Object.defineProperty(UEt,"__esModule",{value:!0});UEt.using=void 0;var Kqa=Oy(),jqa=$I(),zqa=WY();function qqa(e,t){return new Kqa.Observable(function(r){var s=e(),a=t(s),o=a?jqa.innerFrom(a):zqa.EMPTY;return o.subscribe(r),function(){s&&s.unsubscribe()}})}UEt.using=qqa});var KEt=z(Ooe=>{"use strict";var $qa=Ooe&&Ooe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},e$a=Ooe&&Ooe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";Object.defineProperty(jki,"__esModule",{value:!0})});var zEt=z(jEt=>{"use strict";Object.defineProperty(jEt,"__esModule",{value:!0});jEt.audit=void 0;var c$a=Lg(),l$a=$I(),qki=ud();function u$a(e){return c$a.operate(function(t,r){var s=!1,a=null,o=null,g=!1,p=function(){if(o?.unsubscribe(),o=null,s){s=!1;var m=a;a=null,r.next(m)}g&&r.complete()},f=function(){o=null,g&&r.complete()};t.subscribe(qki.createOperatorSubscriber(r,function(m){s=!0,a=m,o||l$a.innerFrom(e(m)).subscribe(o=qki.createOperatorSubscriber(r,p,f))},function(){g=!0,(!s||!o||o.closed)&&r.complete()}))})}jEt.audit=u$a});var Hbr=z(qEt=>{"use strict";Object.defineProperty(qEt,"__esModule",{value:!0});qEt.auditTime=void 0;var g$a=S9(),A$a=zEt(),d$a=Woe();function p$a(e,t){return t===void 0&&(t=g$a.asyncScheduler),A$a.audit(function(){return d$a.timer(e,t)})}qEt.auditTime=p$a});var Ybr=z($Et=>{"use strict";Object.defineProperty($Et,"__esModule",{value:!0});$Et.buffer=void 0;var f$a=Lg(),I$a=cx(),$ki=ud(),C$a=$I();function m$a(e){return f$a.operate(function(t,r){var s=[];return t.subscribe($ki.createOperatorSubscriber(r,function(a){return s.push(a)},function(){r.next(s),r.complete()})),C$a.innerFrom(e).subscribe($ki.createOperatorSubscriber(r,function(){var a=s;s=[],r.next(a)},I$a.noop)),function(){s=null}})}$Et.buffer=m$a});var Jbr=z(NTe=>{"use strict";var Xbr=NTe&&NTe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],s=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&s>=e.length&&(e=void 0),{value:e&&e[s++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(NTe,"__esModule",{value:!0});NTe.bufferCount=void 0;var h$a=Lg(),_$a=ud(),y$a=_q();function b$a(e,t){return t===void 0&&(t=null),t=t??e,h$a.operate(function(r,s){var a=[],o=0;r.subscribe(_$a.createOperatorSubscriber(s,function(g){var p,f,m,y,B=null;o++%t===0&&a.push([]);try{for(var v=Xbr(a),k=v.next();!k.done;k=v.next()){var T=k.value;T.push(g),e<=T.length&&(B=B??[],B.push(T))}}catch(U){p={error:U}}finally{try{k&&!k.done&&(f=v.return)&&f.call(v)}finally{if(p)throw p.error}}if(B)try{for(var O=Xbr(B),X=O.next();!X.done;X=O.next()){var T=X.value;y$a.arrRemove(a,T),s.next(T)}}catch(U){m={error:U}}finally{try{X&&!X.done&&(y=O.return)&&y.call(O)}finally{if(m)throw m.error}}},function(){var g,p;try{for(var f=Xbr(a),m=f.next();!m.done;m=f.next()){var y=m.value;s.next(y)}}catch(B){g={error:B}}finally{try{m&&!m.done&&(p=f.return)&&p.call(f)}finally{if(g)throw g.error}}s.complete()},void 0,function(){a=null}))})}NTe.bufferCount=b$a});var Ubr=z(RTe=>{"use strict";var E$a=RTe&&RTe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],s=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&s>=e.length&&(e=void 0),{value:e&&e[s++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(RTe,"__esModule",{value:!0});RTe.bufferTime=void 0;var B$a=g3(),v$a=Lg(),S$a=ud(),w$a=_q(),T$a=S9(),N$a=w9(),eGi=yq();function R$a(e){for(var t,r,s=[],a=1;a=0?eGi.executeSchedule(m,o,k,g,!0):B=!0,k();var T=S$a.createOperatorSubscriber(m,function(O){var X,U,le=y.slice();try{for(var ae=E$a(le),ge=ae.next();!ge.done;ge=ae.next()){var fe=ge.value,pe=fe.buffer;pe.push(O),p<=pe.length&&v(fe)}}catch(he){X={error:he}}finally{try{ge&&!ge.done&&(U=ae.return)&&U.call(ae)}finally{if(X)throw X.error}}},function(){for(;y?.length;)m.next(y.shift().buffer);T?.unsubscribe(),m.complete(),m.unsubscribe()},void 0,function(){return y=null});f.subscribe(T)})}RTe.bufferTime=R$a});var jbr=z(DTe=>{"use strict";var D$a=DTe&&DTe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],s=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&s>=e.length&&(e=void 0),{value:e&&e[s++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(DTe,"__esModule",{value:!0});DTe.bufferToggle=void 0;var x$a=g3(),k$a=Lg(),tGi=$I(),Kbr=ud(),rGi=cx(),G$a=_q();function F$a(e,t){return k$a.operate(function(r,s){var a=[];tGi.innerFrom(e).subscribe(Kbr.createOperatorSubscriber(s,function(o){var g=[];a.push(g);var p=new x$a.Subscription,f=function(){G$a.arrRemove(a,g),s.next(g),p.unsubscribe()};p.add(tGi.innerFrom(t(o)).subscribe(Kbr.createOperatorSubscriber(s,f,rGi.noop)))},rGi.noop)),r.subscribe(Kbr.createOperatorSubscriber(s,function(o){var g,p;try{for(var f=D$a(a),m=f.next();!m.done;m=f.next()){var y=m.value;y.push(o)}}catch(B){g={error:B}}finally{try{m&&!m.done&&(p=f.return)&&p.call(f)}finally{if(g)throw g.error}}},function(){for(;a.length>0;)s.next(a.shift());s.complete()}))})}DTe.bufferToggle=F$a});var zbr=z(e1t=>{"use strict";Object.defineProperty(e1t,"__esModule",{value:!0});e1t.bufferWhen=void 0;var Z$a=Lg(),L$a=cx(),nGi=ud(),V$a=$I();function W$a(e){return Z$a.operate(function(t,r){var s=null,a=null,o=function(){a?.unsubscribe();var g=s;s=[],g&&r.next(g),V$a.innerFrom(e()).subscribe(a=nGi.createOperatorSubscriber(r,o,L$a.noop))};o(),t.subscribe(nGi.createOperatorSubscriber(r,function(g){return s?.push(g)},function(){s&&r.next(s),r.complete()},void 0,function(){return s=a=null}))})}e1t.bufferWhen=W$a});var qbr=z(t1t=>{"use strict";Object.defineProperty(t1t,"__esModule",{value:!0});t1t.catchError=void 0;var P$a=$I(),O$a=ud(),Q$a=Lg();function iGi(e){return Q$a.operate(function(t,r){var s=null,a=!1,o;s=t.subscribe(O$a.createOperatorSubscriber(r,void 0,void 0,function(g){o=P$a.innerFrom(e(g,iGi(e)(t))),s?(s.unsubscribe(),s=null,o.subscribe(r)):a=!0})),a&&(s.unsubscribe(),s=null,o.subscribe(r))})}t1t.catchError=iGi});var $br=z(r1t=>{"use strict";Object.defineProperty(r1t,"__esModule",{value:!0});r1t.scanInternals=void 0;var M$a=ud();function H$a(e,t,r,s,a){return function(o,g){var p=r,f=t,m=0;o.subscribe(M$a.createOperatorSubscriber(g,function(y){var B=m++;f=p?e(f,y,B):(p=!0,y),s&&g.next(f)},a&&function(){p&&g.next(f),g.complete()}))}}r1t.scanInternals=H$a});var UIe=z(n1t=>{"use strict";Object.defineProperty(n1t,"__esModule",{value:!0});n1t.reduce=void 0;var Y$a=$br(),X$a=Lg();function J$a(e,t){return X$a.operate(Y$a.scanInternals(e,t,arguments.length>=2,!1,!0))}n1t.reduce=J$a});var s1t=z(i1t=>{"use strict";Object.defineProperty(i1t,"__esModule",{value:!0});i1t.toArray=void 0;var U$a=UIe(),K$a=Lg(),j$a=function(e,t){return e.push(t),e};function z$a(){return K$a.operate(function(e,t){U$a.reduce(j$a,[])(e).subscribe(t)})}i1t.toArray=z$a});var eEr=z(o1t=>{"use strict";Object.defineProperty(o1t,"__esModule",{value:!0});o1t.joinAllInternals=void 0;var q$a=lx(),$$a=Loe(),eec=nXe(),tec=DK(),rec=s1t();function nec(e,t){return eec.pipe(rec.toArray(),tec.mergeMap(function(r){return e(r)}),t?$$a.mapOneOrManyArgs(t):q$a.identity)}o1t.joinAllInternals=nec});var c1t=z(a1t=>{"use strict";Object.defineProperty(a1t,"__esModule",{value:!0});a1t.combineLatestAll=void 0;var iec=SEt(),sec=eEr();function oec(e){return sec.joinAllInternals(iec.combineLatest,e)}a1t.combineLatestAll=oec});var tEr=z(l1t=>{"use strict";Object.defineProperty(l1t,"__esModule",{value:!0});l1t.combineAll=void 0;var aec=c1t();l1t.combineAll=aec.combineLatestAll});var rEr=z(Qoe=>{"use strict";var sGi=Qoe&&Qoe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},oGi=Qoe&&Qoe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";var pec=Moe&&Moe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},fec=Moe&&Moe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";Object.defineProperty(u1t,"__esModule",{value:!0});u1t.concatMap=void 0;var cGi=DK(),mec=ly();function hec(e,t){return mec.isFunction(t)?cGi.mergeMap(e,t,1):cGi.mergeMap(e,1)}u1t.concatMap=hec});var iEr=z(A1t=>{"use strict";Object.defineProperty(A1t,"__esModule",{value:!0});A1t.concatMapTo=void 0;var lGi=g1t(),_ec=ly();function yec(e,t){return _ec.isFunction(t)?lGi.concatMap(function(){return e},t):lGi.concatMap(function(){return e})}A1t.concatMapTo=yec});var sEr=z(Hoe=>{"use strict";var bec=Hoe&&Hoe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},Eec=Hoe&&Hoe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";var Nec=Yoe&&Yoe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},Rec=Yoe&&Yoe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";Object.defineProperty(d1t,"__esModule",{value:!0});d1t.fromSubscribable=void 0;var kec=Oy();function Gec(e){return new kec.Observable(function(t){return e.subscribe(t)})}d1t.fromSubscribable=Gec});var AXe=z(p1t=>{"use strict";Object.defineProperty(p1t,"__esModule",{value:!0});p1t.connect=void 0;var Fec=ux(),Zec=$I(),Lec=Lg(),Vec=uGi(),Wec={connector:function(){return new Fec.Subject}};function Pec(e,t){t===void 0&&(t=Wec);var r=t.connector;return Lec.operate(function(s,a){var o=r();Zec.innerFrom(e(Vec.fromSubscribable(o))).subscribe(a),a.add(s.subscribe(o))})}p1t.connect=Pec});var aEr=z(f1t=>{"use strict";Object.defineProperty(f1t,"__esModule",{value:!0});f1t.count=void 0;var Oec=UIe();function Qec(e){return Oec.reduce(function(t,r,s){return!e||e(r,s)?t+1:t},0)}f1t.count=Qec});var cEr=z(I1t=>{"use strict";Object.defineProperty(I1t,"__esModule",{value:!0});I1t.debounce=void 0;var Mec=Lg(),Hec=cx(),gGi=ud(),Yec=$I();function Xec(e){return Mec.operate(function(t,r){var s=!1,a=null,o=null,g=function(){if(o?.unsubscribe(),o=null,s){s=!1;var p=a;a=null,r.next(p)}};t.subscribe(gGi.createOperatorSubscriber(r,function(p){o?.unsubscribe(),s=!0,a=p,o=gGi.createOperatorSubscriber(r,g,Hec.noop),Yec.innerFrom(e(p)).subscribe(o)},function(){g(),r.complete()},void 0,function(){a=o=null}))})}I1t.debounce=Xec});var lEr=z(C1t=>{"use strict";Object.defineProperty(C1t,"__esModule",{value:!0});C1t.debounceTime=void 0;var Jec=S9(),Uec=Lg(),Kec=ud();function jec(e,t){return t===void 0&&(t=Jec.asyncScheduler),Uec.operate(function(r,s){var a=null,o=null,g=null,p=function(){if(a){a.unsubscribe(),a=null;var m=o;o=null,s.next(m)}};function f(){var m=g+e,y=t.now();if(y{"use strict";Object.defineProperty(m1t,"__esModule",{value:!0});m1t.defaultIfEmpty=void 0;var zec=Lg(),qec=ud();function $ec(e){return zec.operate(function(t,r){var s=!1;t.subscribe(qec.createOperatorSubscriber(r,function(a){s=!0,r.next(a)},function(){s||r.next(e),r.complete()}))})}m1t.defaultIfEmpty=$ec});var kTe=z(h1t=>{"use strict";Object.defineProperty(h1t,"__esModule",{value:!0});h1t.take=void 0;var etc=WY(),ttc=Lg(),rtc=ud();function ntc(e){return e<=0?function(){return etc.EMPTY}:ttc.operate(function(t,r){var s=0;t.subscribe(rtc.createOperatorSubscriber(r,function(a){++s<=e&&(r.next(a),e<=s&&r.complete())}))})}h1t.take=ntc});var y1t=z(_1t=>{"use strict";Object.defineProperty(_1t,"__esModule",{value:!0});_1t.ignoreElements=void 0;var itc=Lg(),stc=ud(),otc=cx();function atc(){return itc.operate(function(e,t){e.subscribe(stc.createOperatorSubscriber(t,otc.noop))})}_1t.ignoreElements=atc});var E1t=z(b1t=>{"use strict";Object.defineProperty(b1t,"__esModule",{value:!0});b1t.mapTo=void 0;var ctc=Bq();function ltc(e){return ctc.map(function(){return e})}b1t.mapTo=ltc});var v1t=z(B1t=>{"use strict";Object.defineProperty(B1t,"__esModule",{value:!0});B1t.delayWhen=void 0;var utc=uXe(),AGi=kTe(),gtc=y1t(),Atc=E1t(),dtc=DK(),ptc=$I();function dGi(e,t){return t?function(r){return utc.concat(t.pipe(AGi.take(1),gtc.ignoreElements()),r.pipe(dGi(e)))}:dtc.mergeMap(function(r,s){return ptc.innerFrom(e(r,s)).pipe(AGi.take(1),Atc.mapTo(r))})}B1t.delayWhen=dGi});var uEr=z(S1t=>{"use strict";Object.defineProperty(S1t,"__esModule",{value:!0});S1t.delay=void 0;var ftc=S9(),Itc=v1t(),Ctc=Woe();function mtc(e,t){t===void 0&&(t=ftc.asyncScheduler);var r=Ctc.timer(e,t);return Itc.delayWhen(function(){return r})}S1t.delay=mtc});var gEr=z(w1t=>{"use strict";Object.defineProperty(w1t,"__esModule",{value:!0});w1t.dematerialize=void 0;var htc=gEt(),_tc=Lg(),ytc=ud();function btc(){return _tc.operate(function(e,t){e.subscribe(ytc.createOperatorSubscriber(t,function(r){return htc.observeNotification(r,t)}))})}w1t.dematerialize=btc});var AEr=z(T1t=>{"use strict";Object.defineProperty(T1t,"__esModule",{value:!0});T1t.distinct=void 0;var Etc=Lg(),pGi=ud(),Btc=cx(),vtc=$I();function Stc(e,t){return Etc.operate(function(r,s){var a=new Set;r.subscribe(pGi.createOperatorSubscriber(s,function(o){var g=e?e(o):o;a.has(g)||(a.add(g),s.next(o))})),t&&vtc.innerFrom(t).subscribe(pGi.createOperatorSubscriber(s,function(){return a.clear()},Btc.noop))})}T1t.distinct=Stc});var R1t=z(N1t=>{"use strict";Object.defineProperty(N1t,"__esModule",{value:!0});N1t.distinctUntilChanged=void 0;var wtc=lx(),Ttc=Lg(),Ntc=ud();function Rtc(e,t){return t===void 0&&(t=wtc.identity),e=e??Dtc,Ttc.operate(function(r,s){var a,o=!0;r.subscribe(Ntc.createOperatorSubscriber(s,function(g){var p=t(g);(o||!e(a,p))&&(o=!1,a=p,s.next(g))}))})}N1t.distinctUntilChanged=Rtc;function Dtc(e,t){return e===t}});var dEr=z(D1t=>{"use strict";Object.defineProperty(D1t,"__esModule",{value:!0});D1t.distinctUntilKeyChanged=void 0;var xtc=R1t();function ktc(e,t){return xtc.distinctUntilChanged(function(r,s){return t?t(r[e],s[e]):r[e]===s[e]})}D1t.distinctUntilKeyChanged=ktc});var GTe=z(x1t=>{"use strict";Object.defineProperty(x1t,"__esModule",{value:!0});x1t.throwIfEmpty=void 0;var Gtc=Foe(),Ftc=Lg(),Ztc=ud();function Ltc(e){return e===void 0&&(e=Vtc),Ftc.operate(function(t,r){var s=!1;t.subscribe(Ztc.createOperatorSubscriber(r,function(a){s=!0,r.next(a)},function(){return s?r.complete():r.error(e())}))})}x1t.throwIfEmpty=Ltc;function Vtc(){return new Gtc.EmptyError}});var pEr=z(k1t=>{"use strict";Object.defineProperty(k1t,"__esModule",{value:!0});k1t.elementAt=void 0;var fGi=Dbr(),Wtc=vq(),Ptc=GTe(),Otc=xTe(),Qtc=kTe();function Mtc(e,t){if(e<0)throw new fGi.ArgumentOutOfRangeError;var r=arguments.length>=2;return function(s){return s.pipe(Wtc.filter(function(a,o){return o===e}),Qtc.take(1),r?Otc.defaultIfEmpty(t):Ptc.throwIfEmpty(function(){return new fGi.ArgumentOutOfRangeError}))}}k1t.elementAt=Mtc});var fEr=z(Xoe=>{"use strict";var Htc=Xoe&&Xoe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},Ytc=Xoe&&Xoe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";Object.defineProperty(G1t,"__esModule",{value:!0});G1t.every=void 0;var Ktc=Lg(),jtc=ud();function ztc(e,t){return Ktc.operate(function(r,s){var a=0;r.subscribe(jtc.createOperatorSubscriber(s,function(o){e.call(t,o,a++,r)||(s.next(!1),s.complete())},function(){s.next(!0),s.complete()}))})}G1t.every=ztc});var Z1t=z(F1t=>{"use strict";Object.defineProperty(F1t,"__esModule",{value:!0});F1t.exhaustMap=void 0;var qtc=Bq(),IGi=$I(),$tc=Lg(),CGi=ud();function mGi(e,t){return t?function(r){return r.pipe(mGi(function(s,a){return IGi.innerFrom(e(s,a)).pipe(qtc.map(function(o,g){return t(s,o,a,g)}))}))}:$tc.operate(function(r,s){var a=0,o=null,g=!1;r.subscribe(CGi.createOperatorSubscriber(s,function(p){o||(o=CGi.createOperatorSubscriber(s,void 0,function(){o=null,g&&s.complete()}),IGi.innerFrom(e(p,a++)).subscribe(o))},function(){g=!0,!o&&s.complete()}))})}F1t.exhaustMap=mGi});var V1t=z(L1t=>{"use strict";Object.defineProperty(L1t,"__esModule",{value:!0});L1t.exhaustAll=void 0;var erc=Z1t(),trc=lx();function rrc(){return erc.exhaustMap(trc.identity)}L1t.exhaustAll=rrc});var CEr=z(W1t=>{"use strict";Object.defineProperty(W1t,"__esModule",{value:!0});W1t.exhaust=void 0;var nrc=V1t();W1t.exhaust=nrc.exhaustAll});var mEr=z(P1t=>{"use strict";Object.defineProperty(P1t,"__esModule",{value:!0});P1t.expand=void 0;var irc=Lg(),src=TEt();function orc(e,t,r){return t===void 0&&(t=1/0),t=(t||0)<1?1/0:t,irc.operate(function(s,a){return src.mergeInternals(s,a,e,t,void 0,!0,r)})}P1t.expand=orc});var hEr=z(O1t=>{"use strict";Object.defineProperty(O1t,"__esModule",{value:!0});O1t.finalize=void 0;var arc=Lg();function crc(e){return arc.operate(function(t,r){try{t.subscribe(r)}finally{r.add(e)}})}O1t.finalize=crc});var Q1t=z(FTe=>{"use strict";Object.defineProperty(FTe,"__esModule",{value:!0});FTe.createFind=FTe.find=void 0;var lrc=Lg(),urc=ud();function grc(e,t){return lrc.operate(hGi(e,t,"value"))}FTe.find=grc;function hGi(e,t,r){var s=r==="index";return function(a,o){var g=0;a.subscribe(urc.createOperatorSubscriber(o,function(p){var f=g++;e.call(t,p,f,a)&&(o.next(s?f:p),o.complete())},function(){o.next(s?-1:void 0),o.complete()}))}}FTe.createFind=hGi});var _Er=z(M1t=>{"use strict";Object.defineProperty(M1t,"__esModule",{value:!0});M1t.findIndex=void 0;var Arc=Lg(),drc=Q1t();function prc(e,t){return Arc.operate(drc.createFind(e,t,"index"))}M1t.findIndex=prc});var yEr=z(H1t=>{"use strict";Object.defineProperty(H1t,"__esModule",{value:!0});H1t.first=void 0;var frc=Foe(),Irc=vq(),Crc=kTe(),mrc=xTe(),hrc=GTe(),_rc=lx();function yrc(e,t){var r=arguments.length>=2;return function(s){return s.pipe(e?Irc.filter(function(a,o){return e(a,o,s)}):_rc.identity,Crc.take(1),r?mrc.defaultIfEmpty(t):hrc.throwIfEmpty(function(){return new frc.EmptyError}))}}H1t.first=yrc});var bEr=z(Y1t=>{"use strict";Object.defineProperty(Y1t,"__esModule",{value:!0});Y1t.groupBy=void 0;var brc=Oy(),Erc=$I(),Brc=ux(),vrc=Lg(),_Gi=ud();function Src(e,t,r,s){return vrc.operate(function(a,o){var g;!t||typeof t=="function"?g=t:(r=t.duration,g=t.element,s=t.connector);var p=new Map,f=function(T){p.forEach(T),T(o)},m=function(T){return f(function(O){return O.error(T)})},y=0,B=!1,v=new _Gi.OperatorSubscriber(o,function(T){try{var O=e(T),X=p.get(O);if(!X){p.set(O,X=s?s():new Brc.Subject);var U=k(O,X);if(o.next(U),r){var le=_Gi.createOperatorSubscriber(X,function(){X.complete(),le?.unsubscribe()},void 0,void 0,function(){return p.delete(O)});v.add(Erc.innerFrom(r(U)).subscribe(le))}}X.next(g?g(T):T)}catch(ae){m(ae)}},function(){return f(function(T){return T.complete()})},m,function(){return p.clear()},function(){return B=!0,y===0});a.subscribe(v);function k(T,O){var X=new brc.Observable(function(U){y++;var le=O.subscribe(U);return function(){le.unsubscribe(),--y===0&&B&&v.unsubscribe()}});return X.key=T,X}})}Y1t.groupBy=Src});var EEr=z(X1t=>{"use strict";Object.defineProperty(X1t,"__esModule",{value:!0});X1t.isEmpty=void 0;var wrc=Lg(),Trc=ud();function Nrc(){return wrc.operate(function(e,t){e.subscribe(Trc.createOperatorSubscriber(t,function(){t.next(!1),t.complete()},function(){t.next(!0),t.complete()}))})}X1t.isEmpty=Nrc});var J1t=z(ZTe=>{"use strict";var Rrc=ZTe&&ZTe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],s=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&s>=e.length&&(e=void 0),{value:e&&e[s++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(ZTe,"__esModule",{value:!0});ZTe.takeLast=void 0;var Drc=WY(),xrc=Lg(),krc=ud();function Grc(e){return e<=0?function(){return Drc.EMPTY}:xrc.operate(function(t,r){var s=[];t.subscribe(krc.createOperatorSubscriber(r,function(a){s.push(a),e{"use strict";Object.defineProperty(U1t,"__esModule",{value:!0});U1t.last=void 0;var Frc=Foe(),Zrc=vq(),Lrc=J1t(),Vrc=GTe(),Wrc=xTe(),Prc=lx();function Orc(e,t){var r=arguments.length>=2;return function(s){return s.pipe(e?Zrc.filter(function(a,o){return e(a,o,s)}):Prc.identity,Lrc.takeLast(1),r?Wrc.defaultIfEmpty(t):Vrc.throwIfEmpty(function(){return new Frc.EmptyError}))}}U1t.last=Orc});var SEr=z(K1t=>{"use strict";Object.defineProperty(K1t,"__esModule",{value:!0});K1t.materialize=void 0;var vEr=gEt(),Qrc=Lg(),Mrc=ud();function Hrc(){return Qrc.operate(function(e,t){e.subscribe(Mrc.createOperatorSubscriber(t,function(r){t.next(vEr.Notification.createNext(r))},function(){t.next(vEr.Notification.createComplete()),t.complete()},function(r){t.next(vEr.Notification.createError(r)),t.complete()}))})}K1t.materialize=Hrc});var wEr=z(j1t=>{"use strict";Object.defineProperty(j1t,"__esModule",{value:!0});j1t.max=void 0;var Yrc=UIe(),Xrc=ly();function Jrc(e){return Yrc.reduce(Xrc.isFunction(e)?function(t,r){return e(t,r)>0?t:r}:function(t,r){return t>r?t:r})}j1t.max=Jrc});var TEr=z(z1t=>{"use strict";Object.defineProperty(z1t,"__esModule",{value:!0});z1t.flatMap=void 0;var Urc=DK();z1t.flatMap=Urc.mergeMap});var NEr=z(q1t=>{"use strict";Object.defineProperty(q1t,"__esModule",{value:!0});q1t.mergeMapTo=void 0;var yGi=DK(),Krc=ly();function jrc(e,t,r){return r===void 0&&(r=1/0),Krc.isFunction(t)?yGi.mergeMap(function(){return e},t,r):(typeof t=="number"&&(r=t),yGi.mergeMap(function(){return e},r))}q1t.mergeMapTo=jrc});var REr=z($1t=>{"use strict";Object.defineProperty($1t,"__esModule",{value:!0});$1t.mergeScan=void 0;var zrc=Lg(),qrc=TEt();function $rc(e,t,r){return r===void 0&&(r=1/0),zrc.operate(function(s,a){var o=t;return qrc.mergeInternals(s,a,function(g,p){return e(o,g,p)},r,function(g){o=g},!1,void 0,function(){return o=null})})}$1t.mergeScan=$rc});var DEr=z(Joe=>{"use strict";var enc=Joe&&Joe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},tnc=Joe&&Joe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";var anc=Uoe&&Uoe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},cnc=Uoe&&Uoe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";Object.defineProperty(e2t,"__esModule",{value:!0});e2t.min=void 0;var gnc=UIe(),Anc=ly();function dnc(e){return gnc.reduce(Anc.isFunction(e)?function(t,r){return e(t,r)<0?t:r}:function(t,r){return t{"use strict";Object.defineProperty(t2t,"__esModule",{value:!0});t2t.multicast=void 0;var pnc=iXe(),EGi=ly(),fnc=AXe();function Inc(e,t){var r=EGi.isFunction(e)?e:function(){return e};return EGi.isFunction(t)?fnc.connect(t,{connector:r}):function(s){return new pnc.ConnectableObservable(s,r)}}t2t.multicast=Inc});var GEr=z(xK=>{"use strict";var Cnc=xK&&xK.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},mnc=xK&&xK.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";Object.defineProperty(r2t,"__esModule",{value:!0});r2t.pairwise=void 0;var ync=Lg(),bnc=ud();function Enc(){return ync.operate(function(e,t){var r,s=!1;e.subscribe(bnc.createOperatorSubscriber(t,function(a){var o=r;r=a,s&&t.next([o,a]),s=!0}))})}r2t.pairwise=Enc});var ZEr=z(n2t=>{"use strict";Object.defineProperty(n2t,"__esModule",{value:!0});n2t.pluck=void 0;var Bnc=Bq();function vnc(){for(var e=[],t=0;t{"use strict";Object.defineProperty(i2t,"__esModule",{value:!0});i2t.publish=void 0;var Snc=ux(),wnc=dXe(),Tnc=AXe();function Nnc(e){return e?function(t){return Tnc.connect(e)(t)}:function(t){return wnc.multicast(new Snc.Subject)(t)}}i2t.publish=Nnc});var VEr=z(s2t=>{"use strict";Object.defineProperty(s2t,"__esModule",{value:!0});s2t.publishBehavior=void 0;var Rnc=pbr(),Dnc=iXe();function xnc(e){return function(t){var r=new Rnc.BehaviorSubject(e);return new Dnc.ConnectableObservable(t,function(){return r})}}s2t.publishBehavior=xnc});var WEr=z(o2t=>{"use strict";Object.defineProperty(o2t,"__esModule",{value:!0});o2t.publishLast=void 0;var knc=Wbt(),Gnc=iXe();function Fnc(){return function(e){var t=new knc.AsyncSubject;return new Gnc.ConnectableObservable(e,function(){return t})}}o2t.publishLast=Fnc});var PEr=z(a2t=>{"use strict";Object.defineProperty(a2t,"__esModule",{value:!0});a2t.publishReplay=void 0;var Znc=Vbt(),Lnc=dXe(),vGi=ly();function Vnc(e,t,r,s){r&&!vGi.isFunction(r)&&(s=r);var a=vGi.isFunction(r)?r:void 0;return function(o){return Lnc.multicast(new Znc.ReplaySubject(e,t,s),a)(o)}}a2t.publishReplay=Vnc});var c2t=z(Koe=>{"use strict";var Wnc=Koe&&Koe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},Pnc=Koe&&Koe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";Object.defineProperty(l2t,"__esModule",{value:!0});l2t.repeat=void 0;var Ync=WY(),Xnc=Lg(),SGi=ud(),Jnc=$I(),Unc=Woe();function Knc(e){var t,r=1/0,s;return e!=null&&(typeof e=="object"?(t=e.count,r=t===void 0?1/0:t,s=e.delay):r=e),r<=0?function(){return Ync.EMPTY}:Xnc.operate(function(a,o){var g=0,p,f=function(){if(p?.unsubscribe(),p=null,s!=null){var y=typeof s=="number"?Unc.timer(s):Jnc.innerFrom(s(g)),B=SGi.createOperatorSubscriber(o,function(){B.unsubscribe(),m()});y.subscribe(B)}else m()},m=function(){var y=!1;p=a.subscribe(SGi.createOperatorSubscriber(o,void 0,function(){++g{"use strict";Object.defineProperty(u2t,"__esModule",{value:!0});u2t.repeatWhen=void 0;var jnc=$I(),znc=ux(),qnc=Lg(),wGi=ud();function $nc(e){return qnc.operate(function(t,r){var s,a=!1,o,g=!1,p=!1,f=function(){return p&&g&&(r.complete(),!0)},m=function(){return o||(o=new znc.Subject,jnc.innerFrom(e(o)).subscribe(wGi.createOperatorSubscriber(r,function(){s?y():a=!0},function(){g=!0,f()}))),o},y=function(){p=!1,s=t.subscribe(wGi.createOperatorSubscriber(r,void 0,function(){p=!0,!f()&&m().next()})),a&&(s.unsubscribe(),s=null,a=!1,y())};y()})}u2t.repeatWhen=$nc});var MEr=z(g2t=>{"use strict";Object.defineProperty(g2t,"__esModule",{value:!0});g2t.retry=void 0;var eic=Lg(),TGi=ud(),tic=lx(),ric=Woe(),nic=$I();function iic(e){e===void 0&&(e=1/0);var t;e&&typeof e=="object"?t=e:t={count:e};var r=t.count,s=r===void 0?1/0:r,a=t.delay,o=t.resetOnSuccess,g=o===void 0?!1:o;return s<=0?tic.identity:eic.operate(function(p,f){var m=0,y,B=function(){var v=!1;y=p.subscribe(TGi.createOperatorSubscriber(f,function(k){g&&(m=0),f.next(k)},void 0,function(k){if(m++{"use strict";Object.defineProperty(A2t,"__esModule",{value:!0});A2t.retryWhen=void 0;var sic=$I(),oic=ux(),aic=Lg(),NGi=ud();function cic(e){return aic.operate(function(t,r){var s,a=!1,o,g=function(){s=t.subscribe(NGi.createOperatorSubscriber(r,void 0,void 0,function(p){o||(o=new oic.Subject,sic.innerFrom(e(o)).subscribe(NGi.createOperatorSubscriber(r,function(){return s?g():a=!0}))),o&&o.next(p)})),a&&(s.unsubscribe(),s=null,a=!1,g())};g()})}A2t.retryWhen=cic});var p2t=z(d2t=>{"use strict";Object.defineProperty(d2t,"__esModule",{value:!0});d2t.sample=void 0;var lic=$I(),uic=Lg(),gic=cx(),RGi=ud();function Aic(e){return uic.operate(function(t,r){var s=!1,a=null;t.subscribe(RGi.createOperatorSubscriber(r,function(o){s=!0,a=o})),lic.innerFrom(e).subscribe(RGi.createOperatorSubscriber(r,function(){if(s){s=!1;var o=a;a=null,r.next(o)}},gic.noop))})}d2t.sample=Aic});var YEr=z(f2t=>{"use strict";Object.defineProperty(f2t,"__esModule",{value:!0});f2t.sampleTime=void 0;var dic=S9(),pic=p2t(),fic=Wbr();function Iic(e,t){return t===void 0&&(t=dic.asyncScheduler),pic.sample(fic.interval(e,t))}f2t.sampleTime=Iic});var XEr=z(I2t=>{"use strict";Object.defineProperty(I2t,"__esModule",{value:!0});I2t.scan=void 0;var Cic=Lg(),mic=$br();function hic(e,t){return Cic.operate(mic.scanInternals(e,t,arguments.length>=2,!0))}I2t.scan=hic});var JEr=z(C2t=>{"use strict";Object.defineProperty(C2t,"__esModule",{value:!0});C2t.sequenceEqual=void 0;var _ic=Lg(),yic=ud(),bic=$I();function Eic(e,t){return t===void 0&&(t=function(r,s){return r===s}),_ic.operate(function(r,s){var a=DGi(),o=DGi(),g=function(f){s.next(f),s.complete()},p=function(f,m){var y=yic.createOperatorSubscriber(s,function(B){var v=m.buffer,k=m.complete;v.length===0?k?g(!1):f.buffer.push(B):!t(B,v.shift())&&g(!1)},function(){f.complete=!0;var B=m.complete,v=m.buffer;B&&g(v.length===0),y?.unsubscribe()});return y};r.subscribe(p(a,o)),bic.innerFrom(e).subscribe(p(o,a))})}C2t.sequenceEqual=Eic;function DGi(){return{buffer:[],complete:!1}}});var m2t=z(joe=>{"use strict";var Bic=joe&&joe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},vic=joe&&joe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r0&&(y=new kGi.SafeSubscriber({next:function(pe){return fe.next(pe)},error:function(pe){O=!0,X(),B=UEr(U,a,pe),fe.error(pe)},complete:function(){T=!0,X(),B=UEr(U,g),fe.complete()}}),xGi.innerFrom(ae).subscribe(y))})(m)}}joe.share=Tic;function UEr(e,t){for(var r=[],s=2;s{"use strict";Object.defineProperty(h2t,"__esModule",{value:!0});h2t.shareReplay=void 0;var Nic=Vbt(),Ric=m2t();function Dic(e,t,r){var s,a,o,g,p=!1;return e&&typeof e=="object"?(s=e.bufferSize,g=s===void 0?1/0:s,a=e.windowTime,t=a===void 0?1/0:a,o=e.refCount,p=o===void 0?!1:o,r=e.scheduler):g=e??1/0,Ric.share({connector:function(){return new Nic.ReplaySubject(g,t,r)},resetOnError:!0,resetOnComplete:!1,resetOnRefCountZero:p})}h2t.shareReplay=Dic});var jEr=z(_2t=>{"use strict";Object.defineProperty(_2t,"__esModule",{value:!0});_2t.single=void 0;var xic=Foe(),kic=kbr(),Gic=xbr(),Fic=Lg(),Zic=ud();function Lic(e){return Fic.operate(function(t,r){var s=!1,a,o=!1,g=0;t.subscribe(Zic.createOperatorSubscriber(r,function(p){o=!0,(!e||e(p,g++,t))&&(s&&r.error(new kic.SequenceError("Too many matching values")),s=!0,a=p)},function(){s?(r.next(a),r.complete()):r.error(o?new Gic.NotFoundError("No matching values"):new xic.EmptyError)}))})}_2t.single=Lic});var zEr=z(y2t=>{"use strict";Object.defineProperty(y2t,"__esModule",{value:!0});y2t.skip=void 0;var Vic=vq();function Wic(e){return Vic.filter(function(t,r){return e<=r})}y2t.skip=Wic});var qEr=z(b2t=>{"use strict";Object.defineProperty(b2t,"__esModule",{value:!0});b2t.skipLast=void 0;var Pic=lx(),Oic=Lg(),Qic=ud();function Mic(e){return e<=0?Pic.identity:Oic.operate(function(t,r){var s=new Array(e),a=0;return t.subscribe(Qic.createOperatorSubscriber(r,function(o){var g=a++;if(g{"use strict";Object.defineProperty(E2t,"__esModule",{value:!0});E2t.skipUntil=void 0;var Hic=Lg(),GGi=ud(),Yic=$I(),Xic=cx();function Jic(e){return Hic.operate(function(t,r){var s=!1,a=GGi.createOperatorSubscriber(r,function(){a?.unsubscribe(),s=!0},Xic.noop);Yic.innerFrom(e).subscribe(a),t.subscribe(GGi.createOperatorSubscriber(r,function(o){return s&&r.next(o)}))})}E2t.skipUntil=Jic});var e1r=z(B2t=>{"use strict";Object.defineProperty(B2t,"__esModule",{value:!0});B2t.skipWhile=void 0;var Uic=Lg(),Kic=ud();function jic(e){return Uic.operate(function(t,r){var s=!1,a=0;t.subscribe(Kic.createOperatorSubscriber(r,function(o){return(s||(s=!e(o,a++)))&&r.next(o)}))})}B2t.skipWhile=jic});var t1r=z(v2t=>{"use strict";Object.defineProperty(v2t,"__esModule",{value:!0});v2t.startWith=void 0;var FGi=uXe(),zic=w9(),qic=Lg();function $ic(){for(var e=[],t=0;t{"use strict";Object.defineProperty(S2t,"__esModule",{value:!0});S2t.switchMap=void 0;var esc=$I(),tsc=Lg(),ZGi=ud();function rsc(e,t){return tsc.operate(function(r,s){var a=null,o=0,g=!1,p=function(){return g&&!a&&s.complete()};r.subscribe(ZGi.createOperatorSubscriber(s,function(f){a?.unsubscribe();var m=0,y=o++;esc.innerFrom(e(f,y)).subscribe(a=ZGi.createOperatorSubscriber(s,function(B){return s.next(t?t(f,B,y,m++):B)},function(){a=null,p()}))},function(){g=!0,p()}))})}S2t.switchMap=rsc});var r1r=z(w2t=>{"use strict";Object.defineProperty(w2t,"__esModule",{value:!0});w2t.switchAll=void 0;var nsc=LTe(),isc=lx();function ssc(){return nsc.switchMap(isc.identity)}w2t.switchAll=ssc});var n1r=z(T2t=>{"use strict";Object.defineProperty(T2t,"__esModule",{value:!0});T2t.switchMapTo=void 0;var LGi=LTe(),osc=ly();function asc(e,t){return osc.isFunction(t)?LGi.switchMap(function(){return e},t):LGi.switchMap(function(){return e})}T2t.switchMapTo=asc});var i1r=z(N2t=>{"use strict";Object.defineProperty(N2t,"__esModule",{value:!0});N2t.switchScan=void 0;var csc=LTe(),lsc=Lg();function usc(e,t){return lsc.operate(function(r,s){var a=t;return csc.switchMap(function(o,g){return e(a,o,g)},function(o,g){return a=g,g})(r).subscribe(s),function(){a=null}})}N2t.switchScan=usc});var s1r=z(R2t=>{"use strict";Object.defineProperty(R2t,"__esModule",{value:!0});R2t.takeUntil=void 0;var gsc=Lg(),Asc=ud(),dsc=$I(),psc=cx();function fsc(e){return gsc.operate(function(t,r){dsc.innerFrom(e).subscribe(Asc.createOperatorSubscriber(r,function(){return r.complete()},psc.noop)),!r.closed&&t.subscribe(r)})}R2t.takeUntil=fsc});var o1r=z(D2t=>{"use strict";Object.defineProperty(D2t,"__esModule",{value:!0});D2t.takeWhile=void 0;var Isc=Lg(),Csc=ud();function msc(e,t){return t===void 0&&(t=!1),Isc.operate(function(r,s){var a=0;r.subscribe(Csc.createOperatorSubscriber(s,function(o){var g=e(o,a++);(g||t)&&s.next(o),!g&&s.complete()}))})}D2t.takeWhile=msc});var a1r=z(x2t=>{"use strict";Object.defineProperty(x2t,"__esModule",{value:!0});x2t.tap=void 0;var hsc=ly(),_sc=Lg(),ysc=ud(),bsc=lx();function Esc(e,t,r){var s=hsc.isFunction(e)||t||r?{next:e,error:t,complete:r}:e;return s?_sc.operate(function(a,o){var g;(g=s.subscribe)===null||g===void 0||g.call(s);var p=!0;a.subscribe(ysc.createOperatorSubscriber(o,function(f){var m;(m=s.next)===null||m===void 0||m.call(s,f),o.next(f)},function(){var f;p=!1,(f=s.complete)===null||f===void 0||f.call(s),o.complete()},function(f){var m;p=!1,(m=s.error)===null||m===void 0||m.call(s,f),o.error(f)},function(){var f,m;p&&((f=s.unsubscribe)===null||f===void 0||f.call(s)),(m=s.finalize)===null||m===void 0||m.call(s)}))}):bsc.identity}x2t.tap=Esc});var G2t=z(k2t=>{"use strict";Object.defineProperty(k2t,"__esModule",{value:!0});k2t.throttle=void 0;var Bsc=Lg(),VGi=ud(),vsc=$I();function Ssc(e,t){return Bsc.operate(function(r,s){var a=t??{},o=a.leading,g=o===void 0?!0:o,p=a.trailing,f=p===void 0?!1:p,m=!1,y=null,B=null,v=!1,k=function(){B?.unsubscribe(),B=null,f&&(X(),v&&s.complete())},T=function(){B=null,v&&s.complete()},O=function(U){return B=vsc.innerFrom(e(U)).subscribe(VGi.createOperatorSubscriber(s,k,T))},X=function(){if(m){m=!1;var U=y;y=null,s.next(U),!v&&O(U)}};r.subscribe(VGi.createOperatorSubscriber(s,function(U){m=!0,y=U,!(B&&!B.closed)&&(g?X():O(U))},function(){v=!0,!(f&&m&&B&&!B.closed)&&s.complete()}))})}k2t.throttle=Ssc});var c1r=z(F2t=>{"use strict";Object.defineProperty(F2t,"__esModule",{value:!0});F2t.throttleTime=void 0;var wsc=S9(),Tsc=G2t(),Nsc=Woe();function Rsc(e,t,r){t===void 0&&(t=wsc.asyncScheduler);var s=Nsc.timer(e,t);return Tsc.throttle(function(){return s},r)}F2t.throttleTime=Rsc});var l1r=z(VTe=>{"use strict";Object.defineProperty(VTe,"__esModule",{value:!0});VTe.TimeInterval=VTe.timeInterval=void 0;var Dsc=S9(),xsc=Lg(),ksc=ud();function Gsc(e){return e===void 0&&(e=Dsc.asyncScheduler),xsc.operate(function(t,r){var s=e.now();t.subscribe(ksc.createOperatorSubscriber(r,function(a){var o=e.now(),g=o-s;s=o,r.next(new WGi(a,g))}))})}VTe.timeInterval=Gsc;var WGi=function(){function e(t,r){this.value=t,this.interval=r}return e}();VTe.TimeInterval=WGi});var u1r=z(Z2t=>{"use strict";Object.defineProperty(Z2t,"__esModule",{value:!0});Z2t.timeoutWith=void 0;var Fsc=S9(),Zsc=_Et(),Lsc=cXe();function Vsc(e,t,r){var s,a,o;if(r=r??Fsc.async,Zsc.isValidDate(e)?s=e:typeof e=="number"&&(a=e),t)o=function(){return t};else throw new TypeError("No observable provided to switch to");if(s==null&&a==null)throw new TypeError("No timeout provided.");return Lsc.timeout({first:s,each:a,scheduler:r,with:o})}Z2t.timeoutWith=Vsc});var g1r=z(L2t=>{"use strict";Object.defineProperty(L2t,"__esModule",{value:!0});L2t.timestamp=void 0;var Wsc=Lbt(),Psc=Bq();function Osc(e){return e===void 0&&(e=Wsc.dateTimestampProvider),Psc.map(function(t){return{value:t,timestamp:e.now()}})}L2t.timestamp=Osc});var A1r=z(V2t=>{"use strict";Object.defineProperty(V2t,"__esModule",{value:!0});V2t.window=void 0;var PGi=ux(),Qsc=Lg(),OGi=ud(),Msc=cx(),Hsc=$I();function Ysc(e){return Qsc.operate(function(t,r){var s=new PGi.Subject;r.next(s.asObservable());var a=function(o){s.error(o),r.error(o)};return t.subscribe(OGi.createOperatorSubscriber(r,function(o){return s?.next(o)},function(){s.complete(),r.complete()},a)),Hsc.innerFrom(e).subscribe(OGi.createOperatorSubscriber(r,function(){s.complete(),r.next(s=new PGi.Subject)},Msc.noop,a)),function(){s?.unsubscribe(),s=null}})}V2t.window=Ysc});var d1r=z(WTe=>{"use strict";var Xsc=WTe&&WTe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],s=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&s>=e.length&&(e=void 0),{value:e&&e[s++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(WTe,"__esModule",{value:!0});WTe.windowCount=void 0;var QGi=ux(),Jsc=Lg(),Usc=ud();function Ksc(e,t){t===void 0&&(t=0);var r=t>0?t:e;return Jsc.operate(function(s,a){var o=[new QGi.Subject],g=[],p=0;a.next(o[0].asObservable()),s.subscribe(Usc.createOperatorSubscriber(a,function(f){var m,y;try{for(var B=Xsc(o),v=B.next();!v.done;v=B.next()){var k=v.value;k.next(f)}}catch(X){m={error:X}}finally{try{v&&!v.done&&(y=B.return)&&y.call(B)}finally{if(m)throw m.error}}var T=p-e+1;if(T>=0&&T%r===0&&o.shift().complete(),++p%r===0){var O=new QGi.Subject;o.push(O),a.next(O.asObservable())}},function(){for(;o.length>0;)o.shift().complete();a.complete()},function(f){for(;o.length>0;)o.shift().error(f);a.error(f)},function(){g=null,o=null}))})}WTe.windowCount=Ksc});var p1r=z(W2t=>{"use strict";Object.defineProperty(W2t,"__esModule",{value:!0});W2t.windowTime=void 0;var jsc=ux(),zsc=S9(),qsc=g3(),$sc=Lg(),eoc=ud(),toc=_q(),roc=w9(),MGi=yq();function noc(e){for(var t,r,s=[],a=1;a=0?MGi.executeSchedule(m,o,k,g,!0):B=!0,k();var T=function(X){return y.slice().forEach(X)},O=function(X){T(function(U){var le=U.window;return X(le)}),X(m),m.unsubscribe()};return f.subscribe(eoc.createOperatorSubscriber(m,function(X){T(function(U){U.window.next(X),p<=++U.seen&&v(U)})},function(){return O(function(X){return X.complete()})},function(X){return O(function(U){return U.error(X)})})),function(){y=null}})}W2t.windowTime=noc});var I1r=z(PTe=>{"use strict";var ioc=PTe&&PTe.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],s=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&s>=e.length&&(e=void 0),{value:e&&e[s++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(PTe,"__esModule",{value:!0});PTe.windowToggle=void 0;var soc=ux(),ooc=g3(),aoc=Lg(),HGi=$I(),f1r=ud(),YGi=cx(),coc=_q();function loc(e,t){return aoc.operate(function(r,s){var a=[],o=function(g){for(;0{"use strict";Object.defineProperty(P2t,"__esModule",{value:!0});P2t.windowWhen=void 0;var uoc=ux(),goc=Lg(),XGi=ud(),Aoc=$I();function doc(e){return goc.operate(function(t,r){var s,a,o=function(p){s.error(p),r.error(p)},g=function(){a?.unsubscribe(),s?.complete(),s=new uoc.Subject,r.next(s.asObservable());var p;try{p=Aoc.innerFrom(e())}catch(f){o(f);return}p.subscribe(a=XGi.createOperatorSubscriber(r,g,g,o))};g(),t.subscribe(XGi.createOperatorSubscriber(r,function(p){return s.next(p)},function(){s.complete(),r.complete()},o,function(){a?.unsubscribe(),s=null}))})}P2t.windowWhen=doc});var m1r=z(zoe=>{"use strict";var JGi=zoe&&zoe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},UGi=zoe&&zoe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";Object.defineProperty(O2t,"__esModule",{value:!0});O2t.zipAll=void 0;var _oc=KEt(),yoc=eEr();function boc(e){return yoc.joinAllInternals(_oc.zip,e)}O2t.zipAll=boc});var _1r=z(qoe=>{"use strict";var Eoc=qoe&&qoe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},Boc=qoe&&qoe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";var Toc=$oe&&$oe.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},Noc=$oe&&$oe.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";var xoc=fn&&fn.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),koc=fn&&fn.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&xoc(t,e,r)};Object.defineProperty(fn,"__esModule",{value:!0});fn.interval=fn.iif=fn.generate=fn.fromEventPattern=fn.fromEvent=fn.from=fn.forkJoin=fn.empty=fn.defer=fn.connectable=fn.concat=fn.combineLatest=fn.bindNodeCallback=fn.bindCallback=fn.UnsubscriptionError=fn.TimeoutError=fn.SequenceError=fn.ObjectUnsubscribedError=fn.NotFoundError=fn.EmptyError=fn.ArgumentOutOfRangeError=fn.firstValueFrom=fn.lastValueFrom=fn.isObservable=fn.identity=fn.noop=fn.pipe=fn.NotificationKind=fn.Notification=fn.Subscriber=fn.Subscription=fn.Scheduler=fn.VirtualAction=fn.VirtualTimeScheduler=fn.animationFrameScheduler=fn.animationFrame=fn.queueScheduler=fn.queue=fn.asyncScheduler=fn.async=fn.asapScheduler=fn.asap=fn.AsyncSubject=fn.ReplaySubject=fn.BehaviorSubject=fn.Subject=fn.animationFrames=fn.observable=fn.ConnectableObservable=fn.Observable=void 0;fn.filter=fn.expand=fn.exhaustMap=fn.exhaustAll=fn.exhaust=fn.every=fn.endWith=fn.elementAt=fn.distinctUntilKeyChanged=fn.distinctUntilChanged=fn.distinct=fn.dematerialize=fn.delayWhen=fn.delay=fn.defaultIfEmpty=fn.debounceTime=fn.debounce=fn.count=fn.connect=fn.concatWith=fn.concatMapTo=fn.concatMap=fn.concatAll=fn.combineLatestWith=fn.combineLatestAll=fn.combineAll=fn.catchError=fn.bufferWhen=fn.bufferToggle=fn.bufferTime=fn.bufferCount=fn.buffer=fn.auditTime=fn.audit=fn.config=fn.NEVER=fn.EMPTY=fn.scheduled=fn.zip=fn.using=fn.timer=fn.throwError=fn.range=fn.race=fn.partition=fn.pairs=fn.onErrorResumeNext=fn.of=fn.never=fn.merge=void 0;fn.switchMap=fn.switchAll=fn.subscribeOn=fn.startWith=fn.skipWhile=fn.skipUntil=fn.skipLast=fn.skip=fn.single=fn.shareReplay=fn.share=fn.sequenceEqual=fn.scan=fn.sampleTime=fn.sample=fn.refCount=fn.retryWhen=fn.retry=fn.repeatWhen=fn.repeat=fn.reduce=fn.raceWith=fn.publishReplay=fn.publishLast=fn.publishBehavior=fn.publish=fn.pluck=fn.pairwise=fn.onErrorResumeNextWith=fn.observeOn=fn.multicast=fn.min=fn.mergeWith=fn.mergeScan=fn.mergeMapTo=fn.mergeMap=fn.flatMap=fn.mergeAll=fn.max=fn.materialize=fn.mapTo=fn.map=fn.last=fn.isEmpty=fn.ignoreElements=fn.groupBy=fn.first=fn.findIndex=fn.find=fn.finalize=void 0;fn.zipWith=fn.zipAll=fn.withLatestFrom=fn.windowWhen=fn.windowToggle=fn.windowTime=fn.windowCount=fn.window=fn.toArray=fn.timestamp=fn.timeoutWith=fn.timeout=fn.timeInterval=fn.throwIfEmpty=fn.throttleTime=fn.throttle=fn.tap=fn.takeWhile=fn.takeUntil=fn.takeLast=fn.take=fn.switchScan=fn.switchMapTo=void 0;var Goc=Oy();Object.defineProperty(fn,"Observable",{enumerable:!0,get:function(){return Goc.Observable}});var Foc=iXe();Object.defineProperty(fn,"ConnectableObservable",{enumerable:!0,get:function(){return Foc.ConnectableObservable}});var Zoc=rXe();Object.defineProperty(fn,"observable",{enumerable:!0,get:function(){return Zoc.observable}});var Loc=wxi();Object.defineProperty(fn,"animationFrames",{enumerable:!0,get:function(){return Loc.animationFrames}});var Voc=ux();Object.defineProperty(fn,"Subject",{enumerable:!0,get:function(){return Voc.Subject}});var Woc=pbr();Object.defineProperty(fn,"BehaviorSubject",{enumerable:!0,get:function(){return Woc.BehaviorSubject}});var Poc=Vbt();Object.defineProperty(fn,"ReplaySubject",{enumerable:!0,get:function(){return Poc.ReplaySubject}});var Ooc=Wbt();Object.defineProperty(fn,"AsyncSubject",{enumerable:!0,get:function(){return Ooc.AsyncSubject}});var jGi=Hxi();Object.defineProperty(fn,"asap",{enumerable:!0,get:function(){return jGi.asap}});Object.defineProperty(fn,"asapScheduler",{enumerable:!0,get:function(){return jGi.asapScheduler}});var zGi=S9();Object.defineProperty(fn,"async",{enumerable:!0,get:function(){return zGi.async}});Object.defineProperty(fn,"asyncScheduler",{enumerable:!0,get:function(){return zGi.asyncScheduler}});var qGi=Jxi();Object.defineProperty(fn,"queue",{enumerable:!0,get:function(){return qGi.queue}});Object.defineProperty(fn,"queueScheduler",{enumerable:!0,get:function(){return qGi.queueScheduler}});var $Gi=zxi();Object.defineProperty(fn,"animationFrame",{enumerable:!0,get:function(){return $Gi.animationFrame}});Object.defineProperty(fn,"animationFrameScheduler",{enumerable:!0,get:function(){return $Gi.animationFrameScheduler}});var eFi=eki();Object.defineProperty(fn,"VirtualTimeScheduler",{enumerable:!0,get:function(){return eFi.VirtualTimeScheduler}});Object.defineProperty(fn,"VirtualAction",{enumerable:!0,get:function(){return eFi.VirtualAction}});var Qoc=Ibr();Object.defineProperty(fn,"Scheduler",{enumerable:!0,get:function(){return Qoc.Scheduler}});var Moc=g3();Object.defineProperty(fn,"Subscription",{enumerable:!0,get:function(){return Moc.Subscription}});var Hoc=eTe();Object.defineProperty(fn,"Subscriber",{enumerable:!0,get:function(){return Hoc.Subscriber}});var tFi=gEt();Object.defineProperty(fn,"Notification",{enumerable:!0,get:function(){return tFi.Notification}});Object.defineProperty(fn,"NotificationKind",{enumerable:!0,get:function(){return tFi.NotificationKind}});var Yoc=nXe();Object.defineProperty(fn,"pipe",{enumerable:!0,get:function(){return Yoc.pipe}});var Xoc=cx();Object.defineProperty(fn,"noop",{enumerable:!0,get:function(){return Xoc.noop}});var Joc=lx();Object.defineProperty(fn,"identity",{enumerable:!0,get:function(){return Joc.identity}});var Uoc=Cki();Object.defineProperty(fn,"isObservable",{enumerable:!0,get:function(){return Uoc.isObservable}});var Koc=mki();Object.defineProperty(fn,"lastValueFrom",{enumerable:!0,get:function(){return Koc.lastValueFrom}});var joc=hki();Object.defineProperty(fn,"firstValueFrom",{enumerable:!0,get:function(){return joc.firstValueFrom}});var zoc=Dbr();Object.defineProperty(fn,"ArgumentOutOfRangeError",{enumerable:!0,get:function(){return zoc.ArgumentOutOfRangeError}});var qoc=Foe();Object.defineProperty(fn,"EmptyError",{enumerable:!0,get:function(){return qoc.EmptyError}});var $oc=xbr();Object.defineProperty(fn,"NotFoundError",{enumerable:!0,get:function(){return $oc.NotFoundError}});var eac=ubr();Object.defineProperty(fn,"ObjectUnsubscribedError",{enumerable:!0,get:function(){return eac.ObjectUnsubscribedError}});var tac=kbr();Object.defineProperty(fn,"SequenceError",{enumerable:!0,get:function(){return tac.SequenceError}});var rac=cXe();Object.defineProperty(fn,"TimeoutError",{enumerable:!0,get:function(){return rac.TimeoutError}});var nac=qyr();Object.defineProperty(fn,"UnsubscriptionError",{enumerable:!0,get:function(){return nac.UnsubscriptionError}});var iac=yki();Object.defineProperty(fn,"bindCallback",{enumerable:!0,get:function(){return iac.bindCallback}});var sac=bki();Object.defineProperty(fn,"bindNodeCallback",{enumerable:!0,get:function(){return sac.bindNodeCallback}});var oac=SEt();Object.defineProperty(fn,"combineLatest",{enumerable:!0,get:function(){return oac.combineLatest}});var aac=uXe();Object.defineProperty(fn,"concat",{enumerable:!0,get:function(){return aac.concat}});var cac=Rki();Object.defineProperty(fn,"connectable",{enumerable:!0,get:function(){return cac.connectable}});var lac=gXe();Object.defineProperty(fn,"defer",{enumerable:!0,get:function(){return lac.defer}});var uac=WY();Object.defineProperty(fn,"empty",{enumerable:!0,get:function(){return uac.empty}});var gac=Dki();Object.defineProperty(fn,"forkJoin",{enumerable:!0,get:function(){return gac.forkJoin}});var Aac=bq();Object.defineProperty(fn,"from",{enumerable:!0,get:function(){return Aac.from}});var dac=kki();Object.defineProperty(fn,"fromEvent",{enumerable:!0,get:function(){return dac.fromEvent}});var pac=Fki();Object.defineProperty(fn,"fromEventPattern",{enumerable:!0,get:function(){return pac.fromEventPattern}});var fac=Lki();Object.defineProperty(fn,"generate",{enumerable:!0,get:function(){return fac.generate}});var Iac=Vki();Object.defineProperty(fn,"iif",{enumerable:!0,get:function(){return Iac.iif}});var Cac=Wbr();Object.defineProperty(fn,"interval",{enumerable:!0,get:function(){return Cac.interval}});var mac=Pki();Object.defineProperty(fn,"merge",{enumerable:!0,get:function(){return mac.merge}});var hac=Pbr();Object.defineProperty(fn,"never",{enumerable:!0,get:function(){return hac.never}});var _ac=lEt();Object.defineProperty(fn,"of",{enumerable:!0,get:function(){return _ac.of}});var yac=Obr();Object.defineProperty(fn,"onErrorResumeNext",{enumerable:!0,get:function(){return yac.onErrorResumeNext}});var bac=Qki();Object.defineProperty(fn,"pairs",{enumerable:!0,get:function(){return bac.pairs}});var Eac=Yki();Object.defineProperty(fn,"partition",{enumerable:!0,get:function(){return Eac.partition}});var Bac=Mbr();Object.defineProperty(fn,"race",{enumerable:!0,get:function(){return Bac.race}});var vac=Uki();Object.defineProperty(fn,"range",{enumerable:!0,get:function(){return vac.range}});var Sac=Rbr();Object.defineProperty(fn,"throwError",{enumerable:!0,get:function(){return Sac.throwError}});var wac=Woe();Object.defineProperty(fn,"timer",{enumerable:!0,get:function(){return wac.timer}});var Tac=Kki();Object.defineProperty(fn,"using",{enumerable:!0,get:function(){return Tac.using}});var Nac=KEt();Object.defineProperty(fn,"zip",{enumerable:!0,get:function(){return Nac.zip}});var Rac=Nbr();Object.defineProperty(fn,"scheduled",{enumerable:!0,get:function(){return Rac.scheduled}});var Dac=WY();Object.defineProperty(fn,"EMPTY",{enumerable:!0,get:function(){return Dac.EMPTY}});var xac=Pbr();Object.defineProperty(fn,"NEVER",{enumerable:!0,get:function(){return xac.NEVER}});koc(zki(),fn);var kac=qwe();Object.defineProperty(fn,"config",{enumerable:!0,get:function(){return kac.config}});var Gac=zEt();Object.defineProperty(fn,"audit",{enumerable:!0,get:function(){return Gac.audit}});var Fac=Hbr();Object.defineProperty(fn,"auditTime",{enumerable:!0,get:function(){return Fac.auditTime}});var Zac=Ybr();Object.defineProperty(fn,"buffer",{enumerable:!0,get:function(){return Zac.buffer}});var Lac=Jbr();Object.defineProperty(fn,"bufferCount",{enumerable:!0,get:function(){return Lac.bufferCount}});var Vac=Ubr();Object.defineProperty(fn,"bufferTime",{enumerable:!0,get:function(){return Vac.bufferTime}});var Wac=jbr();Object.defineProperty(fn,"bufferToggle",{enumerable:!0,get:function(){return Wac.bufferToggle}});var Pac=zbr();Object.defineProperty(fn,"bufferWhen",{enumerable:!0,get:function(){return Pac.bufferWhen}});var Oac=qbr();Object.defineProperty(fn,"catchError",{enumerable:!0,get:function(){return Oac.catchError}});var Qac=tEr();Object.defineProperty(fn,"combineAll",{enumerable:!0,get:function(){return Qac.combineAll}});var Mac=c1t();Object.defineProperty(fn,"combineLatestAll",{enumerable:!0,get:function(){return Mac.combineLatestAll}});var Hac=nEr();Object.defineProperty(fn,"combineLatestWith",{enumerable:!0,get:function(){return Hac.combineLatestWith}});var Yac=lXe();Object.defineProperty(fn,"concatAll",{enumerable:!0,get:function(){return Yac.concatAll}});var Xac=g1t();Object.defineProperty(fn,"concatMap",{enumerable:!0,get:function(){return Xac.concatMap}});var Jac=iEr();Object.defineProperty(fn,"concatMapTo",{enumerable:!0,get:function(){return Jac.concatMapTo}});var Uac=oEr();Object.defineProperty(fn,"concatWith",{enumerable:!0,get:function(){return Uac.concatWith}});var Kac=AXe();Object.defineProperty(fn,"connect",{enumerable:!0,get:function(){return Kac.connect}});var jac=aEr();Object.defineProperty(fn,"count",{enumerable:!0,get:function(){return jac.count}});var zac=cEr();Object.defineProperty(fn,"debounce",{enumerable:!0,get:function(){return zac.debounce}});var qac=lEr();Object.defineProperty(fn,"debounceTime",{enumerable:!0,get:function(){return qac.debounceTime}});var $ac=xTe();Object.defineProperty(fn,"defaultIfEmpty",{enumerable:!0,get:function(){return $ac.defaultIfEmpty}});var ecc=uEr();Object.defineProperty(fn,"delay",{enumerable:!0,get:function(){return ecc.delay}});var tcc=v1t();Object.defineProperty(fn,"delayWhen",{enumerable:!0,get:function(){return tcc.delayWhen}});var rcc=gEr();Object.defineProperty(fn,"dematerialize",{enumerable:!0,get:function(){return rcc.dematerialize}});var ncc=AEr();Object.defineProperty(fn,"distinct",{enumerable:!0,get:function(){return ncc.distinct}});var icc=R1t();Object.defineProperty(fn,"distinctUntilChanged",{enumerable:!0,get:function(){return icc.distinctUntilChanged}});var scc=dEr();Object.defineProperty(fn,"distinctUntilKeyChanged",{enumerable:!0,get:function(){return scc.distinctUntilKeyChanged}});var occ=pEr();Object.defineProperty(fn,"elementAt",{enumerable:!0,get:function(){return occ.elementAt}});var acc=fEr();Object.defineProperty(fn,"endWith",{enumerable:!0,get:function(){return acc.endWith}});var ccc=IEr();Object.defineProperty(fn,"every",{enumerable:!0,get:function(){return ccc.every}});var lcc=CEr();Object.defineProperty(fn,"exhaust",{enumerable:!0,get:function(){return lcc.exhaust}});var ucc=V1t();Object.defineProperty(fn,"exhaustAll",{enumerable:!0,get:function(){return ucc.exhaustAll}});var gcc=Z1t();Object.defineProperty(fn,"exhaustMap",{enumerable:!0,get:function(){return gcc.exhaustMap}});var Acc=mEr();Object.defineProperty(fn,"expand",{enumerable:!0,get:function(){return Acc.expand}});var dcc=vq();Object.defineProperty(fn,"filter",{enumerable:!0,get:function(){return dcc.filter}});var pcc=hEr();Object.defineProperty(fn,"finalize",{enumerable:!0,get:function(){return pcc.finalize}});var fcc=Q1t();Object.defineProperty(fn,"find",{enumerable:!0,get:function(){return fcc.find}});var Icc=_Er();Object.defineProperty(fn,"findIndex",{enumerable:!0,get:function(){return Icc.findIndex}});var Ccc=yEr();Object.defineProperty(fn,"first",{enumerable:!0,get:function(){return Ccc.first}});var mcc=bEr();Object.defineProperty(fn,"groupBy",{enumerable:!0,get:function(){return mcc.groupBy}});var hcc=y1t();Object.defineProperty(fn,"ignoreElements",{enumerable:!0,get:function(){return hcc.ignoreElements}});var _cc=EEr();Object.defineProperty(fn,"isEmpty",{enumerable:!0,get:function(){return _cc.isEmpty}});var ycc=BEr();Object.defineProperty(fn,"last",{enumerable:!0,get:function(){return ycc.last}});var bcc=Bq();Object.defineProperty(fn,"map",{enumerable:!0,get:function(){return bcc.map}});var Ecc=E1t();Object.defineProperty(fn,"mapTo",{enumerable:!0,get:function(){return Ecc.mapTo}});var Bcc=SEr();Object.defineProperty(fn,"materialize",{enumerable:!0,get:function(){return Bcc.materialize}});var vcc=wEr();Object.defineProperty(fn,"max",{enumerable:!0,get:function(){return vcc.max}});var Scc=vTe();Object.defineProperty(fn,"mergeAll",{enumerable:!0,get:function(){return Scc.mergeAll}});var wcc=TEr();Object.defineProperty(fn,"flatMap",{enumerable:!0,get:function(){return wcc.flatMap}});var Tcc=DK();Object.defineProperty(fn,"mergeMap",{enumerable:!0,get:function(){return Tcc.mergeMap}});var Ncc=NEr();Object.defineProperty(fn,"mergeMapTo",{enumerable:!0,get:function(){return Ncc.mergeMapTo}});var Rcc=REr();Object.defineProperty(fn,"mergeScan",{enumerable:!0,get:function(){return Rcc.mergeScan}});var Dcc=xEr();Object.defineProperty(fn,"mergeWith",{enumerable:!0,get:function(){return Dcc.mergeWith}});var xcc=kEr();Object.defineProperty(fn,"min",{enumerable:!0,get:function(){return xcc.min}});var kcc=dXe();Object.defineProperty(fn,"multicast",{enumerable:!0,get:function(){return kcc.multicast}});var Gcc=bTe();Object.defineProperty(fn,"observeOn",{enumerable:!0,get:function(){return Gcc.observeOn}});var Fcc=GEr();Object.defineProperty(fn,"onErrorResumeNextWith",{enumerable:!0,get:function(){return Fcc.onErrorResumeNextWith}});var Zcc=FEr();Object.defineProperty(fn,"pairwise",{enumerable:!0,get:function(){return Zcc.pairwise}});var Lcc=ZEr();Object.defineProperty(fn,"pluck",{enumerable:!0,get:function(){return Lcc.pluck}});var Vcc=LEr();Object.defineProperty(fn,"publish",{enumerable:!0,get:function(){return Vcc.publish}});var Wcc=VEr();Object.defineProperty(fn,"publishBehavior",{enumerable:!0,get:function(){return Wcc.publishBehavior}});var Pcc=WEr();Object.defineProperty(fn,"publishLast",{enumerable:!0,get:function(){return Pcc.publishLast}});var Occ=PEr();Object.defineProperty(fn,"publishReplay",{enumerable:!0,get:function(){return Occ.publishReplay}});var Qcc=c2t();Object.defineProperty(fn,"raceWith",{enumerable:!0,get:function(){return Qcc.raceWith}});var Mcc=UIe();Object.defineProperty(fn,"reduce",{enumerable:!0,get:function(){return Mcc.reduce}});var Hcc=OEr();Object.defineProperty(fn,"repeat",{enumerable:!0,get:function(){return Hcc.repeat}});var Ycc=QEr();Object.defineProperty(fn,"repeatWhen",{enumerable:!0,get:function(){return Ycc.repeatWhen}});var Xcc=MEr();Object.defineProperty(fn,"retry",{enumerable:!0,get:function(){return Xcc.retry}});var Jcc=HEr();Object.defineProperty(fn,"retryWhen",{enumerable:!0,get:function(){return Jcc.retryWhen}});var Ucc=Gbt();Object.defineProperty(fn,"refCount",{enumerable:!0,get:function(){return Ucc.refCount}});var Kcc=p2t();Object.defineProperty(fn,"sample",{enumerable:!0,get:function(){return Kcc.sample}});var jcc=YEr();Object.defineProperty(fn,"sampleTime",{enumerable:!0,get:function(){return jcc.sampleTime}});var zcc=XEr();Object.defineProperty(fn,"scan",{enumerable:!0,get:function(){return zcc.scan}});var qcc=JEr();Object.defineProperty(fn,"sequenceEqual",{enumerable:!0,get:function(){return qcc.sequenceEqual}});var $cc=m2t();Object.defineProperty(fn,"share",{enumerable:!0,get:function(){return $cc.share}});var elc=KEr();Object.defineProperty(fn,"shareReplay",{enumerable:!0,get:function(){return elc.shareReplay}});var tlc=jEr();Object.defineProperty(fn,"single",{enumerable:!0,get:function(){return tlc.single}});var rlc=zEr();Object.defineProperty(fn,"skip",{enumerable:!0,get:function(){return rlc.skip}});var nlc=qEr();Object.defineProperty(fn,"skipLast",{enumerable:!0,get:function(){return nlc.skipLast}});var ilc=$Er();Object.defineProperty(fn,"skipUntil",{enumerable:!0,get:function(){return ilc.skipUntil}});var slc=e1r();Object.defineProperty(fn,"skipWhile",{enumerable:!0,get:function(){return slc.skipWhile}});var olc=t1r();Object.defineProperty(fn,"startWith",{enumerable:!0,get:function(){return olc.startWith}});var alc=ETe();Object.defineProperty(fn,"subscribeOn",{enumerable:!0,get:function(){return alc.subscribeOn}});var clc=r1r();Object.defineProperty(fn,"switchAll",{enumerable:!0,get:function(){return clc.switchAll}});var llc=LTe();Object.defineProperty(fn,"switchMap",{enumerable:!0,get:function(){return llc.switchMap}});var ulc=n1r();Object.defineProperty(fn,"switchMapTo",{enumerable:!0,get:function(){return ulc.switchMapTo}});var glc=i1r();Object.defineProperty(fn,"switchScan",{enumerable:!0,get:function(){return glc.switchScan}});var Alc=kTe();Object.defineProperty(fn,"take",{enumerable:!0,get:function(){return Alc.take}});var dlc=J1t();Object.defineProperty(fn,"takeLast",{enumerable:!0,get:function(){return dlc.takeLast}});var plc=s1r();Object.defineProperty(fn,"takeUntil",{enumerable:!0,get:function(){return plc.takeUntil}});var flc=o1r();Object.defineProperty(fn,"takeWhile",{enumerable:!0,get:function(){return flc.takeWhile}});var Ilc=a1r();Object.defineProperty(fn,"tap",{enumerable:!0,get:function(){return Ilc.tap}});var Clc=G2t();Object.defineProperty(fn,"throttle",{enumerable:!0,get:function(){return Clc.throttle}});var mlc=c1r();Object.defineProperty(fn,"throttleTime",{enumerable:!0,get:function(){return mlc.throttleTime}});var hlc=GTe();Object.defineProperty(fn,"throwIfEmpty",{enumerable:!0,get:function(){return hlc.throwIfEmpty}});var _lc=l1r();Object.defineProperty(fn,"timeInterval",{enumerable:!0,get:function(){return _lc.timeInterval}});var ylc=cXe();Object.defineProperty(fn,"timeout",{enumerable:!0,get:function(){return ylc.timeout}});var blc=u1r();Object.defineProperty(fn,"timeoutWith",{enumerable:!0,get:function(){return blc.timeoutWith}});var Elc=g1r();Object.defineProperty(fn,"timestamp",{enumerable:!0,get:function(){return Elc.timestamp}});var Blc=s1t();Object.defineProperty(fn,"toArray",{enumerable:!0,get:function(){return Blc.toArray}});var vlc=A1r();Object.defineProperty(fn,"window",{enumerable:!0,get:function(){return vlc.window}});var Slc=d1r();Object.defineProperty(fn,"windowCount",{enumerable:!0,get:function(){return Slc.windowCount}});var wlc=p1r();Object.defineProperty(fn,"windowTime",{enumerable:!0,get:function(){return wlc.windowTime}});var Tlc=I1r();Object.defineProperty(fn,"windowToggle",{enumerable:!0,get:function(){return Tlc.windowToggle}});var Nlc=C1r();Object.defineProperty(fn,"windowWhen",{enumerable:!0,get:function(){return Nlc.windowWhen}});var Rlc=m1r();Object.defineProperty(fn,"withLatestFrom",{enumerable:!0,get:function(){return Rlc.withLatestFrom}});var Dlc=h1r();Object.defineProperty(fn,"zipAll",{enumerable:!0,get:function(){return Dlc.zipAll}});var xlc=y1r();Object.defineProperty(fn,"zipWith",{enumerable:!0,get:function(){return xlc.zipWith}})});var Sq=z(T9=>{"use strict";Object.defineProperty(T9,"__esModule",{value:!0});T9.PathIsFileException=T9.PathIsDirectoryException=T9.FileAlreadyExistException=T9.FileDoesNotExistException=T9.UnknownException=T9.BaseException=void 0;var eae=class extends Error{constructor(t=""){super(t)}};T9.BaseException=eae;var b1r=class extends eae{constructor(t){super(t)}};T9.UnknownException=b1r;var E1r=class extends eae{constructor(t){super(`Path "${t}" does not exist.`)}};T9.FileDoesNotExistException=E1r;var B1r=class extends eae{constructor(t){super(`Path "${t}" already exist.`)}};T9.FileAlreadyExistException=B1r;var v1r=class extends eae{constructor(t){super(`Path "${t}" is a directory.`)}};T9.PathIsDirectoryException=v1r;var S1r=class extends eae{constructor(t){super(`Path "${t}" is a file.`)}};T9.PathIsFileException=S1r});var nFi=z(KIe=>{"use strict";Object.defineProperty(KIe,"__esModule",{value:!0});KIe.oneLine=klc;KIe.indentBy=Glc;KIe.stripIndent=rFi;KIe.stripIndents=Flc;KIe.trimNewlines=Zlc;function klc(e,...t){return String.raw(e,...t).replace(/(?:\r?\n(?:\s*))+/gm," ").trim()}function Glc(e){let t="";for(;e--;)t+=" ";return(r,...s)=>t+rFi(r,...s).replace(/\n/g,` +`+t)}function rFi(e,...t){let r=String.raw(e,...t),s=r.match(/^[ \t]*(?=\S)/gm);if(s===null)return r;let a=Math.min(...s.map(g=>g.length)),o=new RegExp("^[ \\t]{"+a+"}","gm");return(a>0?r.replace(o,""):r).trim()}function Flc(e,...t){return String.raw(e,...t).split(` `).map(r=>r.trim()).join(` -`).trim()}function _lc(e,...t){return String.raw(e,...t).replace(/^(?:\r?\n)+/,"").replace(/(?:\r?\n(?:\s*))$/,"")}});var eFi=z(vq=>{"use strict";Object.defineProperty(vq,"__esModule",{value:!0});vq.decamelize=zGi;vq.dasherize=Slc;vq.camelize=qGi;vq.classify=wlc;vq.underscore=Tlc;vq.capitalize=$Gi;vq.levenshtein=Nlc;var ylc=/[ _]/g,blc=/([a-z\d])([A-Z])/g,Elc=/(-|_|\.|\s)+(.)?/g,Blc=/([a-z\d])([A-Z]+)/g,vlc=/-|\s+/g;function zGi(e){return e.replace(blc,"$1_$2").toLowerCase()}function Slc(e){return zGi(e).replace(ylc,"-")}function qGi(e){return e.replace(Elc,(t,r,s)=>s?s.toUpperCase():"").replace(/^([A-Z])/,t=>t.toLowerCase())}function wlc(e){return e.split(".").map(t=>$Gi(qGi(t))).join("")}function Tlc(e){return e.replace(Blc,"$1_$2").replace(vlc,"_").toLowerCase()}function $Gi(e){return e.charAt(0).toUpperCase()+e.slice(1)}function Nlc(e,t){if(e.length==0)return t.length;if(t.length==0)return e.length;let r=[];for(let s=0;s<=t.length;s++)r[s]=[s];for(let s=0;s<=e.length;s++)r[0][s]=s;for(let s=1;s<=t.length;s++)for(let a=1;a<=e.length;a++)t.charAt(s-1)==e.charAt(a-1)?r[s][a]=r[s-1][a-1]:r[s][a]=Math.min(r[s-1][a-1]+1,r[s][a-1]+1,r[s-1][a]+1);return r[t.length][e.length]}});var tFi=z(b1r=>{"use strict";Object.defineProperty(b1r,"__esModule",{value:!0});b1r.deepCopy=y1r;var W2t=Symbol();function y1r(e){if(Array.isArray(e))return e.map(t=>y1r(t));if(e&&typeof e=="object"){let t=e;if(t[W2t])return t[W2t];if(t.toJSON)return JSON.parse(t.toJSON());let r=Object.create(Object.getPrototypeOf(t));t[W2t]=r;for(let s of Object.getOwnPropertyNames(t))r[s]=y1r(t[s]);return delete t[W2t],r}else return e}});var iFi=z(nFi=>{var rFi="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");nFi.encode=function(e){if(0<=e&&e{var Rlc=iFi(),sFi=5,oFi=1<>>=sFi,a>0&&(s|=xlc),r+=Rlc.encode(s);while(a>0);return r}});var dXe=z(Kk=>{function Glc(e,t,r){if(t in e)return e[t];if(arguments.length===3)return r;throw new Error('"'+t+'" is a required argument.')}Kk.getArg=Glc;var cFi=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,Flc=/^data:.+\,.+$/;function AXe(e){let t=e.match(cFi);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}Kk.urlParse=AXe;function WTe(e){let t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}Kk.urlGenerate=WTe;var Zlc=32;function Llc(e){let t=[];return function(r){for(let a=0;aZlc&&t.pop(),s}}var B1r=Llc(function(t){let r=t,s=AXe(t);if(s){if(!s.path)return t;r=s.path}let a=Kk.isAbsolute(r),o=[],g=0,p=0;for(;;)if(g=p,p=r.indexOf("/",g),p===-1){o.push(r.slice(g));break}else for(o.push(r.slice(g,p));p=0;p--){let m=o[p];m==="."?o.splice(p,1):m===".."?f++:f>0&&(m===""?(o.splice(p+1,f),f=0):(o.splice(p,2),f--))}return r=o.join("/"),r===""&&(r=a?"/":"."),s?(s.path=r,WTe(s)):r});Kk.normalize=B1r;function lFi(e,t){e===""&&(e="."),t===""&&(t=".");let r=AXe(t),s=AXe(e);if(s&&(e=s.path||"/"),r&&!r.scheme)return s&&(r.scheme=s.scheme),WTe(r);if(r||t.match(Flc))return t;if(s&&!s.host&&!s.path)return s.host=t,WTe(s);let a=t.charAt(0)==="/"?t:B1r(e.replace(/\/+$/,"")+"/"+t);return s?(s.path=a,WTe(s)):a}Kk.join=lFi;Kk.isAbsolute=function(e){return e.charAt(0)==="/"||cFi.test(e)};function Vlc(e,t){e===""&&(e="."),e=e.replace(/\/$/,"");let r=0;for(;t.indexOf(e+"/")!==0;){let s=e.lastIndexOf("/");if(s<0||(e=e.slice(0,s),e.match(/^([^\/]+:\/)?\/*$/)))return t;++r}return Array(r+1).join("../")+t.substr(e.length+1)}Kk.relative=Vlc;var uFi=function(){return!("__proto__"in Object.create(null))}();function gFi(e){return e}function Wlc(e){return AFi(e)?"$"+e:e}Kk.toSetString=uFi?gFi:Wlc;function Plc(e){return AFi(e)?e.slice(1):e}Kk.fromSetString=uFi?gFi:Plc;function AFi(e){if(!e)return!1;let t=e.length;if(t<9||e.charCodeAt(t-1)!==95||e.charCodeAt(t-2)!==95||e.charCodeAt(t-3)!==111||e.charCodeAt(t-4)!==116||e.charCodeAt(t-5)!==111||e.charCodeAt(t-6)!==114||e.charCodeAt(t-7)!==112||e.charCodeAt(t-8)!==95||e.charCodeAt(t-9)!==95)return!1;for(let r=t-10;r>=0;r--)if(e.charCodeAt(r)!==36)return!1;return!0}function Olc(e,t,r){let s=PTe(e.source,t.source);return s!==0||(s=e.originalLine-t.originalLine,s!==0)||(s=e.originalColumn-t.originalColumn,s!==0||r)||(s=e.generatedColumn-t.generatedColumn,s!==0)||(s=e.generatedLine-t.generatedLine,s!==0)?s:PTe(e.name,t.name)}Kk.compareByOriginalPositions=Olc;function Mlc(e,t,r){let s=e.generatedLine-t.generatedLine;return s!==0||(s=e.generatedColumn-t.generatedColumn,s!==0||r)||(s=PTe(e.source,t.source),s!==0)||(s=e.originalLine-t.originalLine,s!==0)||(s=e.originalColumn-t.originalColumn,s!==0)?s:PTe(e.name,t.name)}Kk.compareByGeneratedPositionsDeflated=Mlc;function PTe(e,t){return e===t?0:e===null?1:t===null?-1:e>t?1:-1}function Qlc(e,t){let r=e.generatedLine-t.generatedLine;return r!==0||(r=e.generatedColumn-t.generatedColumn,r!==0)||(r=PTe(e.source,t.source),r!==0)||(r=e.originalLine-t.originalLine,r!==0)||(r=e.originalColumn-t.originalColumn,r!==0)?r:PTe(e.name,t.name)}Kk.compareByGeneratedPositionsInflated=Qlc;function Ylc(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))}Kk.parseSourceMapInput=Ylc;function Hlc(e,t,r){if(t=t||"",e&&(e[e.length-1]!=="/"&&t[0]!=="/"&&(e+="/"),t=e+t),r){let s=AXe(r);if(!s)throw new Error("sourceMapURL could not be parsed");if(s.path){let a=s.path.lastIndexOf("/");a>=0&&(s.path=s.path.substring(0,a+1))}t=lFi(WTe(s),t)}return B1r(t)}Kk.computeSourceURL=Hlc});var S1r=z(dFi=>{var v1r=class e{constructor(){this._array=[],this._set=new Map}static fromArray(t,r){let s=new e;for(let a=0,o=t.length;a=0)return r;throw new Error('"'+t+'" is not in the set.')}at(t){if(t>=0&&t{var pFi=dXe();function Xlc(e,t){let r=e.generatedLine,s=t.generatedLine,a=e.generatedColumn,o=t.generatedColumn;return s>r||s==r&&o>=a||pFi.compareByGeneratedPositionsInflated(e,t)<=0}var w1r=class{constructor(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}unsortedForEach(t,r){this._array.forEach(t,r)}add(t){Xlc(this._last,t)?(this._last=t,this._array.push(t)):(this._sorted=!1,this._array.push(t))}toArray(){return this._sorted||(this._array.sort(pFi.compareByGeneratedPositionsInflated),this._sorted=!0),this._array}};fFi.MappingList=w1r});var T1r=z(CFi=>{var pXe=E1r(),Nw=dXe(),P2t=S1r().ArraySet,Jlc=IFi().MappingList,O2t=class e{constructor(t){t||(t={}),this._file=Nw.getArg(t,"file",null),this._sourceRoot=Nw.getArg(t,"sourceRoot",null),this._skipValidation=Nw.getArg(t,"skipValidation",!1),this._sources=new P2t,this._names=new P2t,this._mappings=new Jlc,this._sourcesContents=null}static fromSourceMap(t){let r=t.sourceRoot,s=new e({file:t.file,sourceRoot:r});return t.eachMapping(function(a){let o={generated:{line:a.generatedLine,column:a.generatedColumn}};a.source!=null&&(o.source=a.source,r!=null&&(o.source=Nw.relative(r,o.source)),o.original={line:a.originalLine,column:a.originalColumn},a.name!=null&&(o.name=a.name)),s.addMapping(o)}),t.sources.forEach(function(a){let o=a;r!==null&&(o=Nw.relative(r,a)),s._sources.has(o)||s._sources.add(o);let g=t.sourceContentFor(a);g!=null&&s.setSourceContent(a,g)}),s}addMapping(t){let r=Nw.getArg(t,"generated"),s=Nw.getArg(t,"original",null),a=Nw.getArg(t,"source",null),o=Nw.getArg(t,"name",null);this._skipValidation||this._validateMapping(r,s,a,o),a!=null&&(a=String(a),this._sources.has(a)||this._sources.add(a)),o!=null&&(o=String(o),this._names.has(o)||this._names.add(o)),this._mappings.add({generatedLine:r.line,generatedColumn:r.column,originalLine:s!=null&&s.line,originalColumn:s!=null&&s.column,source:a,name:o})}setSourceContent(t,r){let s=t;this._sourceRoot!=null&&(s=Nw.relative(this._sourceRoot,s)),r!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[Nw.toSetString(s)]=r):this._sourcesContents&&(delete this._sourcesContents[Nw.toSetString(s)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))}applySourceMap(t,r,s){let a=r;if(r==null){if(t.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);a=t.file}let o=this._sourceRoot;o!=null&&(a=Nw.relative(o,a));let g=this._mappings.toArray().length>0?new P2t:this._sources,p=new P2t;this._mappings.unsortedForEach(function(f){if(f.source===a&&f.originalLine!=null){let B=t.originalPositionFor({line:f.originalLine,column:f.originalColumn});B.source!=null&&(f.source=B.source,s!=null&&(f.source=Nw.join(s,f.source)),o!=null&&(f.source=Nw.relative(o,f.source)),f.originalLine=B.line,f.originalColumn=B.column,B.name!=null&&(f.name=B.name))}let m=f.source;m!=null&&!g.has(m)&&g.add(m);let y=f.name;y!=null&&!p.has(y)&&p.add(y)},this),this._sources=g,this._names=p,t.sources.forEach(function(f){let m=t.sourceContentFor(f);m!=null&&(s!=null&&(f=Nw.join(s,f)),o!=null&&(f=Nw.relative(o,f)),this.setSourceContent(f,m))},this)}_validateMapping(t,r,s,a){if(r&&typeof r.line!="number"&&typeof r.column!="number")throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(!(t&&"line"in t&&"column"in t&&t.line>0&&t.column>=0&&!r&&!s&&!a)){if(!(t&&"line"in t&&"column"in t&&r&&"line"in r&&"column"in r&&t.line>0&&t.column>=0&&r.line>0&&r.column>=0&&s))throw new Error("Invalid mapping: "+JSON.stringify({generated:t,source:s,original:r,name:a}))}}_serializeMappings(){let t=0,r=1,s=0,a=0,o=0,g=0,p="",f,m,y,B,v=this._mappings.toArray();for(let G=0,T=v.length;G0){if(!Nw.compareByGeneratedPositionsInflated(m,v[G-1]))continue;f+=","}f+=pXe.encode(m.generatedColumn-t),t=m.generatedColumn,m.source!=null&&(B=this._sources.indexOf(m.source),f+=pXe.encode(B-g),g=B,f+=pXe.encode(m.originalLine-1-a),a=m.originalLine-1,f+=pXe.encode(m.originalColumn-s),s=m.originalColumn,m.name!=null&&(y=this._names.indexOf(m.name),f+=pXe.encode(y-o),o=y)),p+=f}return p}_generateSourcesContent(t,r){return t.map(function(s){if(!this._sourcesContents)return null;r!=null&&(s=Nw.relative(r,s));let a=Nw.toSetString(s);return Object.prototype.hasOwnProperty.call(this._sourcesContents,a)?this._sourcesContents[a]:null},this)}toJSON(){let t={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(t.file=this._file),this._sourceRoot!=null&&(t.sourceRoot=this._sourceRoot),this._sourcesContents&&(t.sourcesContent=this._generateSourcesContent(t.sources,t.sourceRoot)),t}toString(){return JSON.stringify(this.toJSON())}};O2t.prototype._version=3;CFi.SourceMapGenerator=O2t});var mFi=z(UIe=>{UIe.GREATEST_LOWER_BOUND=1;UIe.LEAST_UPPER_BOUND=2;function N1r(e,t,r,s,a,o){let g=Math.floor((t-e)/2)+e,p=a(r,s[g],!0);return p===0?g:p>0?t-g>1?N1r(g,t,r,s,a,o):o==UIe.LEAST_UPPER_BOUND?t1?N1r(e,g,r,s,a,o):o==UIe.LEAST_UPPER_BOUND?g:e<0?-1:e}UIe.search=function(t,r,s,a){if(r.length===0)return-1;let o=N1r(-1,r.length,t,r,s,a||UIe.GREATEST_LOWER_BOUND);if(o<0)return-1;for(;o-1>=0&&s(r[o],r[o-1],!0)===0;)--o;return o}});var R1r=z((Y3l,fXe)=>{var Ulc=function(){return typeof window<"u"&&this===window}.call();if(Ulc){let e=null;fXe.exports=function(){if(typeof e=="string")return fetch(e).then(r=>r.arrayBuffer());if(e instanceof ArrayBuffer)return Promise.resolve(e);throw new Error("You must provide the string URL or ArrayBuffer contents of lib/mappings.wasm by calling SourceMapConsumer.initialize({ 'lib/mappings.wasm': ... }) before using SourceMapConsumer")},fXe.exports.initialize=t=>e=t}else{let e=Dt("fs"),t=Dt("path");fXe.exports=function(){return new Promise((s,a)=>{let o=t.join(__dirname,"mappings.wasm");e.readFile(o,null,(g,p)=>{if(g){a(g);return}s(p.buffer)})})},fXe.exports.initialize=r=>{console.debug("SourceMapConsumer.initialize is a no-op when running in node.js")}}});var _Fi=z((H3l,hFi)=>{var Klc=R1r();function jlc(){this.generatedLine=0,this.generatedColumn=0,this.lastGeneratedColumn=null,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}var IXe=null;hFi.exports=function(){if(IXe)return IXe;let t=[];return IXe=Klc().then(r=>WebAssembly.instantiate(r,{env:{mapping_callback(s,a,o,g,p,f,m,y,B,v){let G=new jlc;G.generatedLine=s+1,G.generatedColumn=a,o&&(G.lastGeneratedColumn=g-1),p&&(G.source=f,G.originalLine=m+1,G.originalColumn=y,B&&(G.name=v)),t[t.length-1](G)},start_all_generated_locations_for(){console.time("all_generated_locations_for")},end_all_generated_locations_for(){console.timeEnd("all_generated_locations_for")},start_compute_column_spans(){console.time("compute_column_spans")},end_compute_column_spans(){console.timeEnd("compute_column_spans")},start_generated_location_for(){console.time("generated_location_for")},end_generated_location_for(){console.timeEnd("generated_location_for")},start_original_location_for(){console.time("original_location_for")},end_original_location_for(){console.timeEnd("original_location_for")},start_parse_mappings(){console.time("parse_mappings")},end_parse_mappings(){console.timeEnd("parse_mappings")},start_sort_by_generated_location(){console.time("sort_by_generated_location")},end_sort_by_generated_location(){console.timeEnd("sort_by_generated_location")},start_sort_by_original_location(){console.time("sort_by_original_location")},end_sort_by_original_location(){console.timeEnd("sort_by_original_location")}}})).then(r=>({exports:r.instance.exports,withMappingCallback:(s,a)=>{t.push(s);try{a()}finally{t.pop()}}})).then(null,r=>{throw IXe=null,r}),IXe}});var yFi=z(Y2t=>{var Fd=dXe(),D1r=mFi(),M2t=S1r().ArraySet,X3l=E1r(),zlc=R1r(),qlc=_Fi(),x1r=Symbol("smcInternal"),ov=class e{constructor(t,r){return t==x1r?Promise.resolve(this):$lc(t,r)}static initialize(t){zlc.initialize(t["lib/mappings.wasm"])}static fromSourceMap(t,r){return euc(t,r)}static async with(t,r,s){let a=await new e(t,r);try{return await s(a)}finally{a.destroy()}}_parseMappings(t,r){throw new Error("Subclasses must implement _parseMappings")}eachMapping(t,r,s){throw new Error("Subclasses must implement eachMapping")}allGeneratedPositionsFor(t){throw new Error("Subclasses must implement allGeneratedPositionsFor")}destroy(){throw new Error("Subclasses must implement destroy")}};ov.prototype._version=3;ov.GENERATED_ORDER=1;ov.ORIGINAL_ORDER=2;ov.GREATEST_LOWER_BOUND=1;ov.LEAST_UPPER_BOUND=2;Y2t.SourceMapConsumer=ov;var OTe=class e extends ov{constructor(t,r){return super(x1r).then(s=>{let a=t;typeof t=="string"&&(a=Fd.parseSourceMapInput(t));let o=Fd.getArg(a,"version"),g=Fd.getArg(a,"sources"),p=Fd.getArg(a,"names",[]),f=Fd.getArg(a,"sourceRoot",null),m=Fd.getArg(a,"sourcesContent",null),y=Fd.getArg(a,"mappings"),B=Fd.getArg(a,"file",null);if(o!=s._version)throw new Error("Unsupported version: "+o);return f&&(f=Fd.normalize(f)),g=g.map(String).map(Fd.normalize).map(function(v){return f&&Fd.isAbsolute(f)&&Fd.isAbsolute(v)?Fd.relative(f,v):v}),s._names=M2t.fromArray(p.map(String),!0),s._sources=M2t.fromArray(g,!0),s._absoluteSources=s._sources.toArray().map(function(v){return Fd.computeSourceURL(f,v,r)}),s.sourceRoot=f,s.sourcesContent=m,s._mappings=y,s._sourceMapURL=r,s.file=B,s._computedColumnSpans=!1,s._mappingsPtr=0,s._wasm=null,qlc().then(v=>(s._wasm=v,s))})}_findSourceIndex(t){let r=t;if(this.sourceRoot!=null&&(r=Fd.relative(this.sourceRoot,r)),this._sources.has(r))return this._sources.indexOf(r);for(let s=0;s{p.source!==null&&(p.source=this._sources.at(p.source),p.source=Fd.computeSourceURL(g,p.source,this._sourceMapURL),p.name!==null&&(p.name=this._names.at(p.name))),t.call(a,p)},()=>{switch(o){case ov.GENERATED_ORDER:this._wasm.exports.by_generated_location(this._getMappingsPtr());break;case ov.ORIGINAL_ORDER:this._wasm.exports.by_original_location(this._getMappingsPtr());break;default:throw new Error("Unknown order of iteration.")}})}allGeneratedPositionsFor(t){let r=Fd.getArg(t,"source"),s=Fd.getArg(t,"line"),a=t.column||0;if(r=this._findSourceIndex(r),r<0)return[];if(s<1)throw new Error("Line numbers must be >= 1");if(a<0)throw new Error("Column numbers must be >= 0");let o=[];return this._wasm.withMappingCallback(g=>{let p=g.lastGeneratedColumn;this._computedColumnSpans&&p===null&&(p=1/0),o.push({line:g.generatedLine,column:g.generatedColumn,lastColumn:p})},()=>{this._wasm.exports.all_generated_locations_for(this._getMappingsPtr(),r,s-1,"column"in t,a)}),o}destroy(){this._mappingsPtr!==0&&(this._wasm.exports.free_mappings(this._mappingsPtr),this._mappingsPtr=0)}computeColumnSpans(){this._computedColumnSpans||(this._wasm.exports.compute_column_spans(this._getMappingsPtr()),this._computedColumnSpans=!0)}originalPositionFor(t){let r={generatedLine:Fd.getArg(t,"line"),generatedColumn:Fd.getArg(t,"column")};if(r.generatedLine<1)throw new Error("Line numbers must be >= 1");if(r.generatedColumn<0)throw new Error("Column numbers must be >= 0");let s=Fd.getArg(t,"bias",ov.GREATEST_LOWER_BOUND);s==null&&(s=ov.GREATEST_LOWER_BOUND);let a;if(this._wasm.withMappingCallback(o=>a=o,()=>{this._wasm.exports.original_location_for(this._getMappingsPtr(),r.generatedLine-1,r.generatedColumn,s)}),a&&a.generatedLine===r.generatedLine){let o=Fd.getArg(a,"source",null);o!==null&&(o=this._sources.at(o),o=Fd.computeSourceURL(this.sourceRoot,o,this._sourceMapURL));let g=Fd.getArg(a,"name",null);return g!==null&&(g=this._names.at(g)),{source:o,line:Fd.getArg(a,"originalLine",null),column:Fd.getArg(a,"originalColumn",null),name:g}}return{source:null,line:null,column:null,name:null}}hasContentsOfAllSources(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(t){return t==null}):!1}sourceContentFor(t,r){if(!this.sourcesContent)return null;let s=this._findSourceIndex(t);if(s>=0)return this.sourcesContent[s];let a=t;this.sourceRoot!=null&&(a=Fd.relative(this.sourceRoot,a));let o;if(this.sourceRoot!=null&&(o=Fd.urlParse(this.sourceRoot))){let g=a.replace(/^file:\/\//,"");if(o.scheme=="file"&&this._sources.has(g))return this.sourcesContent[this._sources.indexOf(g)];if((!o.path||o.path=="/")&&this._sources.has("/"+a))return this.sourcesContent[this._sources.indexOf("/"+a)]}if(r)return null;throw new Error('"'+a+'" is not in the SourceMap.')}generatedPositionFor(t){let r=Fd.getArg(t,"source");if(r=this._findSourceIndex(r),r<0)return{line:null,column:null,lastColumn:null};let s={source:r,originalLine:Fd.getArg(t,"line"),originalColumn:Fd.getArg(t,"column")};if(s.originalLine<1)throw new Error("Line numbers must be >= 1");if(s.originalColumn<0)throw new Error("Column numbers must be >= 0");let a=Fd.getArg(t,"bias",ov.GREATEST_LOWER_BOUND);a==null&&(a=ov.GREATEST_LOWER_BOUND);let o;if(this._wasm.withMappingCallback(g=>o=g,()=>{this._wasm.exports.generated_location_for(this._getMappingsPtr(),s.source,s.originalLine-1,s.originalColumn,a)}),o&&o.source===s.source){let g=o.lastGeneratedColumn;return this._computedColumnSpans&&g===null&&(g=1/0),{line:Fd.getArg(o,"generatedLine",null),column:Fd.getArg(o,"generatedColumn",null),lastColumn:g}}return{line:null,column:null,lastColumn:null}}};OTe.prototype.consumer=ov;Y2t.BasicSourceMapConsumer=OTe;var Q2t=class extends ov{constructor(t,r){return super(x1r).then(s=>{let a=t;typeof t=="string"&&(a=Fd.parseSourceMapInput(t));let o=Fd.getArg(a,"version"),g=Fd.getArg(a,"sections");if(o!=s._version)throw new Error("Unsupported version: "+o);s._sources=new M2t,s._names=new M2t,s.__generatedMappings=null,s.__originalMappings=null,s.__generatedMappingsUnsorted=null,s.__originalMappingsUnsorted=null;let p={line:-1,column:0};return Promise.all(g.map(f=>{if(f.url)throw new Error("Support for url field in sections not implemented.");let m=Fd.getArg(f,"offset"),y=Fd.getArg(m,"line"),B=Fd.getArg(m,"column");if(y({generatedOffset:{generatedLine:y+1,generatedColumn:B+1},consumer:G}))})).then(f=>(s._sections=f,s))})}get _generatedMappings(){return this.__generatedMappings||this._sortGeneratedMappings(),this.__generatedMappings}get _originalMappings(){return this.__originalMappings||this._sortOriginalMappings(),this.__originalMappings}get _generatedMappingsUnsorted(){return this.__generatedMappingsUnsorted||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappingsUnsorted}get _originalMappingsUnsorted(){return this.__originalMappingsUnsorted||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappingsUnsorted}_sortGeneratedMappings(){let t=this._generatedMappingsUnsorted;t.sort(Fd.compareByGeneratedPositionsDeflated),this.__generatedMappings=t}_sortOriginalMappings(){let t=this._originalMappingsUnsorted;t.sort(Fd.compareByOriginalPositions),this.__originalMappings=t}get sources(){let t=[];for(let r=0;rp.push(f));for(let f=0;f= 1");if(s.originalColumn<0)throw new Error("Column numbers must be >= 0");let a=[],o=this._findMapping(s,this._originalMappings,"originalLine","originalColumn",Fd.compareByOriginalPositions,D1r.LEAST_UPPER_BOUND);if(o>=0){let g=this._originalMappings[o];if(t.column===void 0){let p=g.originalLine;for(;g&&g.originalLine===p;){let f=g.lastGeneratedColumn;this._computedColumnSpans&&f===null&&(f=1/0),a.push({line:Fd.getArg(g,"generatedLine",null),column:Fd.getArg(g,"generatedColumn",null),lastColumn:f}),g=this._originalMappings[++o]}}else{let p=g.originalColumn;for(;g&&g.originalLine===r&&g.originalColumn==p;){let f=g.lastGeneratedColumn;this._computedColumnSpans&&f===null&&(f=1/0),a.push({line:Fd.getArg(g,"generatedLine",null),column:Fd.getArg(g,"generatedColumn",null),lastColumn:f}),g=this._originalMappings[++o]}}}return a}destroy(){for(let t=0;t{var tuc=T1r().SourceMapGenerator,H2t=dXe(),ruc=/(\r?\n)/,nuc=10,MTe="$$$isSourceNode$$$",k1r=class e{constructor(t,r,s,a,o){this.children=[],this.sourceContents={},this.line=t??null,this.column=r??null,this.source=s??null,this.name=o??null,this[MTe]=!0,a!=null&&this.add(a)}static fromStringWithSourceMap(t,r,s){let a=new e,o=t.split(ruc),g=0,p=function(){let G=O(),T=O()||"";return G+T;function O(){return g=0;r--)this.prepend(t[r]);else if(t[MTe]||typeof t=="string")this.children.unshift(t);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+t);return this}walk(t){let r;for(let s=0,a=this.children.length;s0){for(r=[],s=0;s{X2t.SourceMapGenerator=T1r().SourceMapGenerator;X2t.SourceMapConsumer=yFi().SourceMapConsumer;X2t.SourceNode=EFi().SourceNode});var wFi=z(J2t=>{"use strict";Object.defineProperty(J2t,"__esModule",{value:!0});J2t.templateParser=SFi;J2t.template=uuc;var eZ=BFi(),iuc=/<%=([\s\S]+?)%>/g,suc=/<%#([\s\S]+?)%>/g,ouc=/<%-([\s\S]+?)%>/g,auc=/<%([\s\S]+?)%>/g,G1r={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},vFi=new RegExp(`[${Object.keys(G1r).join("")}]`,"g");function QTe(e,t){let r=1,s=0;for(let a=0;ay.source).join("|")+"|$","g"),o=e.split(a),g=0,p=QTe(e,g),f,m=s.length+1;for(let y=0;y{"use strict";Object.defineProperty(wq,"__esModule",{value:!0});wq.decamelize=iFi;wq.dasherize=Qlc;wq.camelize=sFi;wq.classify=Mlc;wq.underscore=Hlc;wq.capitalize=oFi;wq.levenshtein=Ylc;var Llc=/[ _]/g,Vlc=/([a-z\d])([A-Z])/g,Wlc=/(-|_|\.|\s)+(.)?/g,Plc=/([a-z\d])([A-Z]+)/g,Olc=/-|\s+/g;function iFi(e){return e.replace(Vlc,"$1_$2").toLowerCase()}function Qlc(e){return iFi(e).replace(Llc,"-")}function sFi(e){return e.replace(Wlc,(t,r,s)=>s?s.toUpperCase():"").replace(/^([A-Z])/,t=>t.toLowerCase())}function Mlc(e){return e.split(".").map(t=>oFi(sFi(t))).join("")}function Hlc(e){return e.replace(Plc,"$1_$2").replace(Olc,"_").toLowerCase()}function oFi(e){return e.charAt(0).toUpperCase()+e.slice(1)}function Ylc(e,t){if(e.length==0)return t.length;if(t.length==0)return e.length;let r=[];for(let s=0;s<=t.length;s++)r[s]=[s];for(let s=0;s<=e.length;s++)r[0][s]=s;for(let s=1;s<=t.length;s++)for(let a=1;a<=e.length;a++)t.charAt(s-1)==e.charAt(a-1)?r[s][a]=r[s-1][a-1]:r[s][a]=Math.min(r[s-1][a-1]+1,r[s][a-1]+1,r[s-1][a]+1);return r[t.length][e.length]}});var cFi=z(T1r=>{"use strict";Object.defineProperty(T1r,"__esModule",{value:!0});T1r.deepCopy=w1r;var Q2t=Symbol();function w1r(e){if(Array.isArray(e))return e.map(t=>w1r(t));if(e&&typeof e=="object"){let t=e;if(t[Q2t])return t[Q2t];if(t.toJSON)return JSON.parse(t.toJSON());let r=Object.create(Object.getPrototypeOf(t));t[Q2t]=r;for(let s of Object.getOwnPropertyNames(t))r[s]=w1r(t[s]);return delete t[Q2t],r}else return e}});var gFi=z(uFi=>{var lFi="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");uFi.encode=function(e){if(0<=e&&e{var Xlc=gFi(),AFi=5,dFi=1<>>=AFi,a>0&&(s|=Ulc),r+=Xlc.encode(s);while(a>0);return r}});var fXe=z(eG=>{function jlc(e,t,r){if(t in e)return e[t];if(arguments.length===3)return r;throw new Error('"'+t+'" is a required argument.')}eG.getArg=jlc;var fFi=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,zlc=/^data:.+\,.+$/;function pXe(e){let t=e.match(fFi);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}eG.urlParse=pXe;function OTe(e){let t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}eG.urlGenerate=OTe;var qlc=32;function $lc(e){let t=[];return function(r){for(let a=0;aqlc&&t.pop(),s}}var R1r=$lc(function(t){let r=t,s=pXe(t);if(s){if(!s.path)return t;r=s.path}let a=eG.isAbsolute(r),o=[],g=0,p=0;for(;;)if(g=p,p=r.indexOf("/",g),p===-1){o.push(r.slice(g));break}else for(o.push(r.slice(g,p));p=0;p--){let m=o[p];m==="."?o.splice(p,1):m===".."?f++:f>0&&(m===""?(o.splice(p+1,f),f=0):(o.splice(p,2),f--))}return r=o.join("/"),r===""&&(r=a?"/":"."),s?(s.path=r,OTe(s)):r});eG.normalize=R1r;function IFi(e,t){e===""&&(e="."),t===""&&(t=".");let r=pXe(t),s=pXe(e);if(s&&(e=s.path||"/"),r&&!r.scheme)return s&&(r.scheme=s.scheme),OTe(r);if(r||t.match(zlc))return t;if(s&&!s.host&&!s.path)return s.host=t,OTe(s);let a=t.charAt(0)==="/"?t:R1r(e.replace(/\/+$/,"")+"/"+t);return s?(s.path=a,OTe(s)):a}eG.join=IFi;eG.isAbsolute=function(e){return e.charAt(0)==="/"||fFi.test(e)};function euc(e,t){e===""&&(e="."),e=e.replace(/\/$/,"");let r=0;for(;t.indexOf(e+"/")!==0;){let s=e.lastIndexOf("/");if(s<0||(e=e.slice(0,s),e.match(/^([^\/]+:\/)?\/*$/)))return t;++r}return Array(r+1).join("../")+t.substr(e.length+1)}eG.relative=euc;var CFi=function(){return!("__proto__"in Object.create(null))}();function mFi(e){return e}function tuc(e){return hFi(e)?"$"+e:e}eG.toSetString=CFi?mFi:tuc;function ruc(e){return hFi(e)?e.slice(1):e}eG.fromSetString=CFi?mFi:ruc;function hFi(e){if(!e)return!1;let t=e.length;if(t<9||e.charCodeAt(t-1)!==95||e.charCodeAt(t-2)!==95||e.charCodeAt(t-3)!==111||e.charCodeAt(t-4)!==116||e.charCodeAt(t-5)!==111||e.charCodeAt(t-6)!==114||e.charCodeAt(t-7)!==112||e.charCodeAt(t-8)!==95||e.charCodeAt(t-9)!==95)return!1;for(let r=t-10;r>=0;r--)if(e.charCodeAt(r)!==36)return!1;return!0}function nuc(e,t,r){let s=QTe(e.source,t.source);return s!==0||(s=e.originalLine-t.originalLine,s!==0)||(s=e.originalColumn-t.originalColumn,s!==0||r)||(s=e.generatedColumn-t.generatedColumn,s!==0)||(s=e.generatedLine-t.generatedLine,s!==0)?s:QTe(e.name,t.name)}eG.compareByOriginalPositions=nuc;function iuc(e,t,r){let s=e.generatedLine-t.generatedLine;return s!==0||(s=e.generatedColumn-t.generatedColumn,s!==0||r)||(s=QTe(e.source,t.source),s!==0)||(s=e.originalLine-t.originalLine,s!==0)||(s=e.originalColumn-t.originalColumn,s!==0)?s:QTe(e.name,t.name)}eG.compareByGeneratedPositionsDeflated=iuc;function QTe(e,t){return e===t?0:e===null?1:t===null?-1:e>t?1:-1}function suc(e,t){let r=e.generatedLine-t.generatedLine;return r!==0||(r=e.generatedColumn-t.generatedColumn,r!==0)||(r=QTe(e.source,t.source),r!==0)||(r=e.originalLine-t.originalLine,r!==0)||(r=e.originalColumn-t.originalColumn,r!==0)?r:QTe(e.name,t.name)}eG.compareByGeneratedPositionsInflated=suc;function ouc(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))}eG.parseSourceMapInput=ouc;function auc(e,t,r){if(t=t||"",e&&(e[e.length-1]!=="/"&&t[0]!=="/"&&(e+="/"),t=e+t),r){let s=pXe(r);if(!s)throw new Error("sourceMapURL could not be parsed");if(s.path){let a=s.path.lastIndexOf("/");a>=0&&(s.path=s.path.substring(0,a+1))}t=IFi(OTe(s),t)}return R1r(t)}eG.computeSourceURL=auc});var x1r=z(_Fi=>{var D1r=class e{constructor(){this._array=[],this._set=new Map}static fromArray(t,r){let s=new e;for(let a=0,o=t.length;a=0)return r;throw new Error('"'+t+'" is not in the set.')}at(t){if(t>=0&&t{var yFi=fXe();function cuc(e,t){let r=e.generatedLine,s=t.generatedLine,a=e.generatedColumn,o=t.generatedColumn;return s>r||s==r&&o>=a||yFi.compareByGeneratedPositionsInflated(e,t)<=0}var k1r=class{constructor(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}unsortedForEach(t,r){this._array.forEach(t,r)}add(t){cuc(this._last,t)?(this._last=t,this._array.push(t)):(this._sorted=!1,this._array.push(t))}toArray(){return this._sorted||(this._array.sort(yFi.compareByGeneratedPositionsInflated),this._sorted=!0),this._array}};bFi.MappingList=k1r});var G1r=z(BFi=>{var IXe=N1r(),Rw=fXe(),M2t=x1r().ArraySet,luc=EFi().MappingList,H2t=class e{constructor(t){t||(t={}),this._file=Rw.getArg(t,"file",null),this._sourceRoot=Rw.getArg(t,"sourceRoot",null),this._skipValidation=Rw.getArg(t,"skipValidation",!1),this._sources=new M2t,this._names=new M2t,this._mappings=new luc,this._sourcesContents=null}static fromSourceMap(t){let r=t.sourceRoot,s=new e({file:t.file,sourceRoot:r});return t.eachMapping(function(a){let o={generated:{line:a.generatedLine,column:a.generatedColumn}};a.source!=null&&(o.source=a.source,r!=null&&(o.source=Rw.relative(r,o.source)),o.original={line:a.originalLine,column:a.originalColumn},a.name!=null&&(o.name=a.name)),s.addMapping(o)}),t.sources.forEach(function(a){let o=a;r!==null&&(o=Rw.relative(r,a)),s._sources.has(o)||s._sources.add(o);let g=t.sourceContentFor(a);g!=null&&s.setSourceContent(a,g)}),s}addMapping(t){let r=Rw.getArg(t,"generated"),s=Rw.getArg(t,"original",null),a=Rw.getArg(t,"source",null),o=Rw.getArg(t,"name",null);this._skipValidation||this._validateMapping(r,s,a,o),a!=null&&(a=String(a),this._sources.has(a)||this._sources.add(a)),o!=null&&(o=String(o),this._names.has(o)||this._names.add(o)),this._mappings.add({generatedLine:r.line,generatedColumn:r.column,originalLine:s!=null&&s.line,originalColumn:s!=null&&s.column,source:a,name:o})}setSourceContent(t,r){let s=t;this._sourceRoot!=null&&(s=Rw.relative(this._sourceRoot,s)),r!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[Rw.toSetString(s)]=r):this._sourcesContents&&(delete this._sourcesContents[Rw.toSetString(s)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))}applySourceMap(t,r,s){let a=r;if(r==null){if(t.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);a=t.file}let o=this._sourceRoot;o!=null&&(a=Rw.relative(o,a));let g=this._mappings.toArray().length>0?new M2t:this._sources,p=new M2t;this._mappings.unsortedForEach(function(f){if(f.source===a&&f.originalLine!=null){let B=t.originalPositionFor({line:f.originalLine,column:f.originalColumn});B.source!=null&&(f.source=B.source,s!=null&&(f.source=Rw.join(s,f.source)),o!=null&&(f.source=Rw.relative(o,f.source)),f.originalLine=B.line,f.originalColumn=B.column,B.name!=null&&(f.name=B.name))}let m=f.source;m!=null&&!g.has(m)&&g.add(m);let y=f.name;y!=null&&!p.has(y)&&p.add(y)},this),this._sources=g,this._names=p,t.sources.forEach(function(f){let m=t.sourceContentFor(f);m!=null&&(s!=null&&(f=Rw.join(s,f)),o!=null&&(f=Rw.relative(o,f)),this.setSourceContent(f,m))},this)}_validateMapping(t,r,s,a){if(r&&typeof r.line!="number"&&typeof r.column!="number")throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(!(t&&"line"in t&&"column"in t&&t.line>0&&t.column>=0&&!r&&!s&&!a)){if(!(t&&"line"in t&&"column"in t&&r&&"line"in r&&"column"in r&&t.line>0&&t.column>=0&&r.line>0&&r.column>=0&&s))throw new Error("Invalid mapping: "+JSON.stringify({generated:t,source:s,original:r,name:a}))}}_serializeMappings(){let t=0,r=1,s=0,a=0,o=0,g=0,p="",f,m,y,B,v=this._mappings.toArray();for(let k=0,T=v.length;k0){if(!Rw.compareByGeneratedPositionsInflated(m,v[k-1]))continue;f+=","}f+=IXe.encode(m.generatedColumn-t),t=m.generatedColumn,m.source!=null&&(B=this._sources.indexOf(m.source),f+=IXe.encode(B-g),g=B,f+=IXe.encode(m.originalLine-1-a),a=m.originalLine-1,f+=IXe.encode(m.originalColumn-s),s=m.originalColumn,m.name!=null&&(y=this._names.indexOf(m.name),f+=IXe.encode(y-o),o=y)),p+=f}return p}_generateSourcesContent(t,r){return t.map(function(s){if(!this._sourcesContents)return null;r!=null&&(s=Rw.relative(r,s));let a=Rw.toSetString(s);return Object.prototype.hasOwnProperty.call(this._sourcesContents,a)?this._sourcesContents[a]:null},this)}toJSON(){let t={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(t.file=this._file),this._sourceRoot!=null&&(t.sourceRoot=this._sourceRoot),this._sourcesContents&&(t.sourcesContent=this._generateSourcesContent(t.sources,t.sourceRoot)),t}toString(){return JSON.stringify(this.toJSON())}};H2t.prototype._version=3;BFi.SourceMapGenerator=H2t});var vFi=z(jIe=>{jIe.GREATEST_LOWER_BOUND=1;jIe.LEAST_UPPER_BOUND=2;function F1r(e,t,r,s,a,o){let g=Math.floor((t-e)/2)+e,p=a(r,s[g],!0);return p===0?g:p>0?t-g>1?F1r(g,t,r,s,a,o):o==jIe.LEAST_UPPER_BOUND?t1?F1r(e,g,r,s,a,o):o==jIe.LEAST_UPPER_BOUND?g:e<0?-1:e}jIe.search=function(t,r,s,a){if(r.length===0)return-1;let o=F1r(-1,r.length,t,r,s,a||jIe.GREATEST_LOWER_BOUND);if(o<0)return-1;for(;o-1>=0&&s(r[o],r[o-1],!0)===0;)--o;return o}});var Z1r=z((APl,CXe)=>{var uuc=function(){return typeof window<"u"&&this===window}.call();if(uuc){let e=null;CXe.exports=function(){if(typeof e=="string")return fetch(e).then(r=>r.arrayBuffer());if(e instanceof ArrayBuffer)return Promise.resolve(e);throw new Error("You must provide the string URL or ArrayBuffer contents of lib/mappings.wasm by calling SourceMapConsumer.initialize({ 'lib/mappings.wasm': ... }) before using SourceMapConsumer")},CXe.exports.initialize=t=>e=t}else{let e=xt("fs"),t=xt("path");CXe.exports=function(){return new Promise((s,a)=>{let o=t.join(__dirname,"mappings.wasm");e.readFile(o,null,(g,p)=>{if(g){a(g);return}s(p.buffer)})})},CXe.exports.initialize=r=>{console.debug("SourceMapConsumer.initialize is a no-op when running in node.js")}}});var wFi=z((dPl,SFi)=>{var guc=Z1r();function Auc(){this.generatedLine=0,this.generatedColumn=0,this.lastGeneratedColumn=null,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}var mXe=null;SFi.exports=function(){if(mXe)return mXe;let t=[];return mXe=guc().then(r=>WebAssembly.instantiate(r,{env:{mapping_callback(s,a,o,g,p,f,m,y,B,v){let k=new Auc;k.generatedLine=s+1,k.generatedColumn=a,o&&(k.lastGeneratedColumn=g-1),p&&(k.source=f,k.originalLine=m+1,k.originalColumn=y,B&&(k.name=v)),t[t.length-1](k)},start_all_generated_locations_for(){console.time("all_generated_locations_for")},end_all_generated_locations_for(){console.timeEnd("all_generated_locations_for")},start_compute_column_spans(){console.time("compute_column_spans")},end_compute_column_spans(){console.timeEnd("compute_column_spans")},start_generated_location_for(){console.time("generated_location_for")},end_generated_location_for(){console.timeEnd("generated_location_for")},start_original_location_for(){console.time("original_location_for")},end_original_location_for(){console.timeEnd("original_location_for")},start_parse_mappings(){console.time("parse_mappings")},end_parse_mappings(){console.timeEnd("parse_mappings")},start_sort_by_generated_location(){console.time("sort_by_generated_location")},end_sort_by_generated_location(){console.timeEnd("sort_by_generated_location")},start_sort_by_original_location(){console.time("sort_by_original_location")},end_sort_by_original_location(){console.timeEnd("sort_by_original_location")}}})).then(r=>({exports:r.instance.exports,withMappingCallback:(s,a)=>{t.push(s);try{a()}finally{t.pop()}}})).then(null,r=>{throw mXe=null,r}),mXe}});var TFi=z(J2t=>{var Zd=fXe(),L1r=vFi(),Y2t=x1r().ArraySet,pPl=N1r(),duc=Z1r(),puc=wFi(),V1r=Symbol("smcInternal"),av=class e{constructor(t,r){return t==V1r?Promise.resolve(this):fuc(t,r)}static initialize(t){duc.initialize(t["lib/mappings.wasm"])}static fromSourceMap(t,r){return Iuc(t,r)}static async with(t,r,s){let a=await new e(t,r);try{return await s(a)}finally{a.destroy()}}_parseMappings(t,r){throw new Error("Subclasses must implement _parseMappings")}eachMapping(t,r,s){throw new Error("Subclasses must implement eachMapping")}allGeneratedPositionsFor(t){throw new Error("Subclasses must implement allGeneratedPositionsFor")}destroy(){throw new Error("Subclasses must implement destroy")}};av.prototype._version=3;av.GENERATED_ORDER=1;av.ORIGINAL_ORDER=2;av.GREATEST_LOWER_BOUND=1;av.LEAST_UPPER_BOUND=2;J2t.SourceMapConsumer=av;var MTe=class e extends av{constructor(t,r){return super(V1r).then(s=>{let a=t;typeof t=="string"&&(a=Zd.parseSourceMapInput(t));let o=Zd.getArg(a,"version"),g=Zd.getArg(a,"sources"),p=Zd.getArg(a,"names",[]),f=Zd.getArg(a,"sourceRoot",null),m=Zd.getArg(a,"sourcesContent",null),y=Zd.getArg(a,"mappings"),B=Zd.getArg(a,"file",null);if(o!=s._version)throw new Error("Unsupported version: "+o);return f&&(f=Zd.normalize(f)),g=g.map(String).map(Zd.normalize).map(function(v){return f&&Zd.isAbsolute(f)&&Zd.isAbsolute(v)?Zd.relative(f,v):v}),s._names=Y2t.fromArray(p.map(String),!0),s._sources=Y2t.fromArray(g,!0),s._absoluteSources=s._sources.toArray().map(function(v){return Zd.computeSourceURL(f,v,r)}),s.sourceRoot=f,s.sourcesContent=m,s._mappings=y,s._sourceMapURL=r,s.file=B,s._computedColumnSpans=!1,s._mappingsPtr=0,s._wasm=null,puc().then(v=>(s._wasm=v,s))})}_findSourceIndex(t){let r=t;if(this.sourceRoot!=null&&(r=Zd.relative(this.sourceRoot,r)),this._sources.has(r))return this._sources.indexOf(r);for(let s=0;s{p.source!==null&&(p.source=this._sources.at(p.source),p.source=Zd.computeSourceURL(g,p.source,this._sourceMapURL),p.name!==null&&(p.name=this._names.at(p.name))),t.call(a,p)},()=>{switch(o){case av.GENERATED_ORDER:this._wasm.exports.by_generated_location(this._getMappingsPtr());break;case av.ORIGINAL_ORDER:this._wasm.exports.by_original_location(this._getMappingsPtr());break;default:throw new Error("Unknown order of iteration.")}})}allGeneratedPositionsFor(t){let r=Zd.getArg(t,"source"),s=Zd.getArg(t,"line"),a=t.column||0;if(r=this._findSourceIndex(r),r<0)return[];if(s<1)throw new Error("Line numbers must be >= 1");if(a<0)throw new Error("Column numbers must be >= 0");let o=[];return this._wasm.withMappingCallback(g=>{let p=g.lastGeneratedColumn;this._computedColumnSpans&&p===null&&(p=1/0),o.push({line:g.generatedLine,column:g.generatedColumn,lastColumn:p})},()=>{this._wasm.exports.all_generated_locations_for(this._getMappingsPtr(),r,s-1,"column"in t,a)}),o}destroy(){this._mappingsPtr!==0&&(this._wasm.exports.free_mappings(this._mappingsPtr),this._mappingsPtr=0)}computeColumnSpans(){this._computedColumnSpans||(this._wasm.exports.compute_column_spans(this._getMappingsPtr()),this._computedColumnSpans=!0)}originalPositionFor(t){let r={generatedLine:Zd.getArg(t,"line"),generatedColumn:Zd.getArg(t,"column")};if(r.generatedLine<1)throw new Error("Line numbers must be >= 1");if(r.generatedColumn<0)throw new Error("Column numbers must be >= 0");let s=Zd.getArg(t,"bias",av.GREATEST_LOWER_BOUND);s==null&&(s=av.GREATEST_LOWER_BOUND);let a;if(this._wasm.withMappingCallback(o=>a=o,()=>{this._wasm.exports.original_location_for(this._getMappingsPtr(),r.generatedLine-1,r.generatedColumn,s)}),a&&a.generatedLine===r.generatedLine){let o=Zd.getArg(a,"source",null);o!==null&&(o=this._sources.at(o),o=Zd.computeSourceURL(this.sourceRoot,o,this._sourceMapURL));let g=Zd.getArg(a,"name",null);return g!==null&&(g=this._names.at(g)),{source:o,line:Zd.getArg(a,"originalLine",null),column:Zd.getArg(a,"originalColumn",null),name:g}}return{source:null,line:null,column:null,name:null}}hasContentsOfAllSources(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(t){return t==null}):!1}sourceContentFor(t,r){if(!this.sourcesContent)return null;let s=this._findSourceIndex(t);if(s>=0)return this.sourcesContent[s];let a=t;this.sourceRoot!=null&&(a=Zd.relative(this.sourceRoot,a));let o;if(this.sourceRoot!=null&&(o=Zd.urlParse(this.sourceRoot))){let g=a.replace(/^file:\/\//,"");if(o.scheme=="file"&&this._sources.has(g))return this.sourcesContent[this._sources.indexOf(g)];if((!o.path||o.path=="/")&&this._sources.has("/"+a))return this.sourcesContent[this._sources.indexOf("/"+a)]}if(r)return null;throw new Error('"'+a+'" is not in the SourceMap.')}generatedPositionFor(t){let r=Zd.getArg(t,"source");if(r=this._findSourceIndex(r),r<0)return{line:null,column:null,lastColumn:null};let s={source:r,originalLine:Zd.getArg(t,"line"),originalColumn:Zd.getArg(t,"column")};if(s.originalLine<1)throw new Error("Line numbers must be >= 1");if(s.originalColumn<0)throw new Error("Column numbers must be >= 0");let a=Zd.getArg(t,"bias",av.GREATEST_LOWER_BOUND);a==null&&(a=av.GREATEST_LOWER_BOUND);let o;if(this._wasm.withMappingCallback(g=>o=g,()=>{this._wasm.exports.generated_location_for(this._getMappingsPtr(),s.source,s.originalLine-1,s.originalColumn,a)}),o&&o.source===s.source){let g=o.lastGeneratedColumn;return this._computedColumnSpans&&g===null&&(g=1/0),{line:Zd.getArg(o,"generatedLine",null),column:Zd.getArg(o,"generatedColumn",null),lastColumn:g}}return{line:null,column:null,lastColumn:null}}};MTe.prototype.consumer=av;J2t.BasicSourceMapConsumer=MTe;var X2t=class extends av{constructor(t,r){return super(V1r).then(s=>{let a=t;typeof t=="string"&&(a=Zd.parseSourceMapInput(t));let o=Zd.getArg(a,"version"),g=Zd.getArg(a,"sections");if(o!=s._version)throw new Error("Unsupported version: "+o);s._sources=new Y2t,s._names=new Y2t,s.__generatedMappings=null,s.__originalMappings=null,s.__generatedMappingsUnsorted=null,s.__originalMappingsUnsorted=null;let p={line:-1,column:0};return Promise.all(g.map(f=>{if(f.url)throw new Error("Support for url field in sections not implemented.");let m=Zd.getArg(f,"offset"),y=Zd.getArg(m,"line"),B=Zd.getArg(m,"column");if(y({generatedOffset:{generatedLine:y+1,generatedColumn:B+1},consumer:k}))})).then(f=>(s._sections=f,s))})}get _generatedMappings(){return this.__generatedMappings||this._sortGeneratedMappings(),this.__generatedMappings}get _originalMappings(){return this.__originalMappings||this._sortOriginalMappings(),this.__originalMappings}get _generatedMappingsUnsorted(){return this.__generatedMappingsUnsorted||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappingsUnsorted}get _originalMappingsUnsorted(){return this.__originalMappingsUnsorted||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappingsUnsorted}_sortGeneratedMappings(){let t=this._generatedMappingsUnsorted;t.sort(Zd.compareByGeneratedPositionsDeflated),this.__generatedMappings=t}_sortOriginalMappings(){let t=this._originalMappingsUnsorted;t.sort(Zd.compareByOriginalPositions),this.__originalMappings=t}get sources(){let t=[];for(let r=0;rp.push(f));for(let f=0;f= 1");if(s.originalColumn<0)throw new Error("Column numbers must be >= 0");let a=[],o=this._findMapping(s,this._originalMappings,"originalLine","originalColumn",Zd.compareByOriginalPositions,L1r.LEAST_UPPER_BOUND);if(o>=0){let g=this._originalMappings[o];if(t.column===void 0){let p=g.originalLine;for(;g&&g.originalLine===p;){let f=g.lastGeneratedColumn;this._computedColumnSpans&&f===null&&(f=1/0),a.push({line:Zd.getArg(g,"generatedLine",null),column:Zd.getArg(g,"generatedColumn",null),lastColumn:f}),g=this._originalMappings[++o]}}else{let p=g.originalColumn;for(;g&&g.originalLine===r&&g.originalColumn==p;){let f=g.lastGeneratedColumn;this._computedColumnSpans&&f===null&&(f=1/0),a.push({line:Zd.getArg(g,"generatedLine",null),column:Zd.getArg(g,"generatedColumn",null),lastColumn:f}),g=this._originalMappings[++o]}}}return a}destroy(){for(let t=0;t{var Cuc=G1r().SourceMapGenerator,U2t=fXe(),muc=/(\r?\n)/,huc=10,HTe="$$$isSourceNode$$$",W1r=class e{constructor(t,r,s,a,o){this.children=[],this.sourceContents={},this.line=t??null,this.column=r??null,this.source=s??null,this.name=o??null,this[HTe]=!0,a!=null&&this.add(a)}static fromStringWithSourceMap(t,r,s){let a=new e,o=t.split(muc),g=0,p=function(){let k=O(),T=O()||"";return k+T;function O(){return g=0;r--)this.prepend(t[r]);else if(t[HTe]||typeof t=="string")this.children.unshift(t);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+t);return this}walk(t){let r;for(let s=0,a=this.children.length;s0){for(r=[],s=0;s{K2t.SourceMapGenerator=G1r().SourceMapGenerator;K2t.SourceMapConsumer=TFi().SourceMapConsumer;K2t.SourceNode=RFi().SourceNode});var GFi=z(j2t=>{"use strict";Object.defineProperty(j2t,"__esModule",{value:!0});j2t.templateParser=kFi;j2t.template=Suc;var tZ=DFi(),_uc=/<%=([\s\S]+?)%>/g,yuc=/<%#([\s\S]+?)%>/g,buc=/<%-([\s\S]+?)%>/g,Euc=/<%([\s\S]+?)%>/g,P1r={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},xFi=new RegExp(`[${Object.keys(P1r).join("")}]`,"g");function YTe(e,t){let r=1,s=0;for(let a=0;ay.source).join("|")+"|$","g"),o=e.split(a),g=0,p=YTe(e,g),f,m=s.length+1;for(let y=0;y{let B="";switch(y.kind){case"content":B=[new eZ.SourceNode(y.start.line,y.start.column,r,"__p = __p"),...y.content.split(` -`).map((v,G,T)=>new eZ.SourceNode(y.start.line+G,G==0?y.start.column:0,r,` - + `+JSON.stringify(v+(G==T.length-1?"":` -`)))),new eZ.SourceNode(y.end.line,y.end.column,r,`; -`)];break;case"interpolate":B=[new eZ.SourceNode(y.start.line,y.start.column,r,"__p += ((__t = "),...y.expression.split(` -`).map((v,G,T)=>new eZ.SourceNode(y.start.line+G,G==0?y.start.column:0,r,v+(G==T.length-1?"":` -`))),new eZ.SourceNode(y.end.line,y.end.column,r,`) == null ? "" : __t); -`)];break;case"escape":B=[new eZ.SourceNode(y.start.line,y.start.column,r,"__p += __e("),...y.expression.split(` -`).map((v,G,T)=>new eZ.SourceNode(y.start.line+G,G==0?y.start.column:0,r,v+(G==T.length-1?"":` -`))),new eZ.SourceNode(y.end.line,y.end.column,r,`); +`])),g=e.children.length?e.children[e.children.length-1].end:{line:0,column:0},f=e.children.reduce((m,y)=>{let B="";switch(y.kind){case"content":B=[new tZ.SourceNode(y.start.line,y.start.column,r,"__p = __p"),...y.content.split(` +`).map((v,k,T)=>new tZ.SourceNode(y.start.line+k,k==0?y.start.column:0,r,` + + `+JSON.stringify(v+(k==T.length-1?"":` +`)))),new tZ.SourceNode(y.end.line,y.end.column,r,`; +`)];break;case"interpolate":B=[new tZ.SourceNode(y.start.line,y.start.column,r,"__p += ((__t = "),...y.expression.split(` +`).map((v,k,T)=>new tZ.SourceNode(y.start.line+k,k==0?y.start.column:0,r,v+(k==T.length-1?"":` +`))),new tZ.SourceNode(y.end.line,y.end.column,r,`) == null ? "" : __t); +`)];break;case"escape":B=[new tZ.SourceNode(y.start.line,y.start.column,r,"__p += __e("),...y.expression.split(` +`).map((v,k,T)=>new tZ.SourceNode(y.start.line+k,k==0?y.start.column:0,r,v+(k==T.length-1?"":` +`))),new tZ.SourceNode(y.end.line,y.end.column,r,`); `)];break;case"evaluate":B=[...y.expression.split(` -`).map((v,G,T)=>new eZ.SourceNode(y.start.line+G,G==0?y.start.column:0,r,v+(G==T.length-1?"":` -`))),new eZ.SourceNode(y.end.line,y.end.column,r,` -`)];break}return m.add(new eZ.SourceNode(y.start.line,y.start.column,r,B))},o).add(new eZ.SourceNode(g.line,g.column,r,[` }; +`).map((v,k,T)=>new tZ.SourceNode(y.start.line+k,k==0?y.start.column:0,r,v+(k==T.length-1?"":` +`))),new tZ.SourceNode(y.end.line,y.end.column,r,` +`)];break}return m.add(new tZ.SourceNode(y.start.line,y.start.column,r,B))},o).add(new tZ.SourceNode(g.line,g.column,r,[` }; `,` `,` return __p; `,`} `])).toStringWithSourceMap({file:r,sourceRoot:t&&t.sourceRoot||"."});return f.map.setSourceContent(r,e.content),f.code+` -//# sourceMappingURL=data:application/json;base64,`+Buffer.from(f.map.toString()).toString("base64")}function uuc(e,t){let r=t&&t.sourceURL||"ejs",s=SFi(e,r),a;t&&t.sourceMap?a=luc(s,t):a=cuc(s,t);let o=Function("module",a),g=t&&t.module?t.module===!0?{exports:{}}:t.module:null,p=o(g);return p.source=a,p}});var NFi=z(Xoe=>{"use strict";Object.defineProperty(Xoe,"__esModule",{value:!0});Xoe.PartiallyOrderedSet=Xoe.CircularDependencyFoundException=Xoe.DependencyNotFoundException=void 0;var TFi=Bq(),U2t=class extends TFi.BaseException{constructor(){super("One of the dependencies is not part of the set.")}};Xoe.DependencyNotFoundException=U2t;var CXe=class extends TFi.BaseException{constructor(){super("Circular dependencies found.")}};Xoe.CircularDependencyFoundException=CXe;var F1r=class{_items=new Map;_checkCircularDependencies(t,r){if(r.has(t))throw new CXe;r.forEach(s=>this._checkCircularDependencies(t,this._items.get(s)||new Set))}clear(){this._items.clear()}has(t){return this._items.has(t)}get size(){return this._items.size}forEach(t,r){for(let s of this)t.call(r,s,s,this)}*entries(){for(let t of this)yield[t,t]}keys(){return this.values()}values(){return this[Symbol.iterator]()}add(t,r=new Set){if(Array.isArray(r)&&(r=new Set(r)),this._items.has(t)){let s=this._items.get(t)||new Set,a=!0;for(let o of r)if(!s.has(o)){a=!1;break}if(a){for(let o of s)if(!r.has(o)){a=!1;break}}if(a)return this;this._items.delete(t)}for(let s of r)if(!this._items.has(s))throw new U2t;return this._checkCircularDependencies(t,r),this._items.set(t,new Set(r)),this}delete(t){return this._items.has(t)?(this._items.forEach(r=>r.delete(t)),this._items.delete(t)):!1}*[Symbol.iterator](){let t=new Map(this._items);for(let[r,s]of t.entries())t.set(r,new Set(s));for(;t.size>0;){let r=[];for(let[s,a]of t.entries())a.size==0&&r.push(s);for(let s of r)t.forEach(a=>a.delete(s)),t.delete(s),yield s;if(r.length==0)throw new CXe}}get[Symbol.toStringTag](){return"Set"}};Xoe.PartiallyOrderedSet=F1r});var RFi=z(K2t=>{"use strict";Object.defineProperty(K2t,"__esModule",{value:!0});K2t.PriorityQueue=void 0;var Z1r=class{_comparator;_items=new Array;constructor(t){this._comparator=t}clear(){this._items=new Array}push(t){let r=this._items.findIndex(s=>this._comparator(t,s)<=0);r===-1?this._items.push(t):this._items.splice(r,0,t)}pop(){if(this._items.length!==0)return this._items.splice(0,1)[0]}peek(){if(this._items.length!==0)return this._items[0]}get size(){return this._items.length}toArray(){return this._items.slice()}};K2t.PriorityQueue=Z1r});var DFi=z(L1r=>{"use strict";Object.defineProperty(L1r,"__esModule",{value:!0});L1r.isPromise=guc;function guc(e){return!!e&&typeof e.then=="function"}});var V1r=z(PT=>{"use strict";var xFi=PT&&PT.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Auc=PT&&PT.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),kFi=PT&&PT.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var s=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(s[s.length]=a);return s},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var s=e(t),a=0;a{"use strict";Object.defineProperty(j2t,"__esModule",{value:!0});j2t.visitJson=fuc;j2t.visitJsonSchema=Iuc;var jk=Eb(),Joe=e0r();function GFi(e,t){if(!(typeof e!="object"||e===null)){if(typeof e.properties=="object"||e.type=="object")return typeof e.properties=="object"&&typeof e.properties[t]=="object"?e.properties[t]:typeof e.additionalProperties=="object"?e.additionalProperties:void 0;if(typeof e.items=="object"||e.type=="array")return typeof e.items=="object"?e.items:void 0}}function W1r(e,t,r,s,a,o,g){if((s===!0||s===!1)&&(s=void 0),s&&s.hasOwnProperty("$ref")&&typeof s.$ref=="string"&&a){let f=a(s.$ref,o);s=f.schema,o=f.context}let p=t(e,r,s,g);return((0,jk.isObservable)(p)?p:(0,jk.of)(p)).pipe((0,jk.concatMap)(f=>Array.isArray(f)?(0,jk.concat)((0,jk.from)(f).pipe((0,jk.mergeMap)((m,y)=>W1r(m,t,(0,Joe.joinJsonPointer)(r,""+y),GFi(s,""+y),a,o,g||f).pipe((0,jk.tap)(B=>f[y]=B))),(0,jk.ignoreElements)()),(0,jk.of)(f)):typeof f=="object"&&f!==null?(0,jk.concat)((0,jk.from)(Object.getOwnPropertyNames(f)).pipe((0,jk.mergeMap)(m=>W1r(f[m],t,(0,Joe.joinJsonPointer)(r,m),GFi(s,m),a,o,g||f).pipe((0,jk.tap)(y=>{let B=Object.getOwnPropertyDescriptor(f,m);B&&B.writable&&f[m]!==y&&(f[m]=y)}))),(0,jk.ignoreElements)()),(0,jk.of)(f)):(0,jk.of)(f)))}function fuc(e,t,r,s,a){return W1r(e,t,(0,Joe.buildJsonPointer)([]),r,s,a)}function Iuc(e,t){if(e===!1||e===!0)return;let r={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0},s={items:!0,allOf:!0,anyOf:!0,oneOf:!0},a={definitions:!0,properties:!0,patternProperties:!0,additionalProperties:!0,dependencies:!0,items:!0};function o(g,p,f,m,y){if(g&&typeof g=="object"&&!Array.isArray(g)){t(g,p,m,y);for(let B of Object.keys(g)){let v=g[B];if(B in a){if(v&&typeof v=="object")for(let G of Object.keys(v))o(v[G],(0,Joe.joinJsonPointer)(p,B,G),f,g,G)}else if(B in r)o(v,(0,Joe.joinJsonPointer)(p,B),f,g,B);else if(B in s){if(Array.isArray(v))for(let G=0;G{"use strict";var Cuc=T9&&T9.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),muc=T9&&T9.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),H1r=T9&&T9.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var s=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(s[s.length]=a);return s},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var s=e(t),a=0;a{"use strict";Object.defineProperty(tae,"__esModule",{value:!0});tae.PartiallyOrderedSet=tae.CircularDependencyFoundException=tae.DependencyNotFoundException=void 0;var FFi=Sq(),z2t=class extends FFi.BaseException{constructor(){super("One of the dependencies is not part of the set.")}};tae.DependencyNotFoundException=z2t;var hXe=class extends FFi.BaseException{constructor(){super("Circular dependencies found.")}};tae.CircularDependencyFoundException=hXe;var O1r=class{_items=new Map;_checkCircularDependencies(t,r){if(r.has(t))throw new hXe;r.forEach(s=>this._checkCircularDependencies(t,this._items.get(s)||new Set))}clear(){this._items.clear()}has(t){return this._items.has(t)}get size(){return this._items.size}forEach(t,r){for(let s of this)t.call(r,s,s,this)}*entries(){for(let t of this)yield[t,t]}keys(){return this.values()}values(){return this[Symbol.iterator]()}add(t,r=new Set){if(Array.isArray(r)&&(r=new Set(r)),this._items.has(t)){let s=this._items.get(t)||new Set,a=!0;for(let o of r)if(!s.has(o)){a=!1;break}if(a){for(let o of s)if(!r.has(o)){a=!1;break}}if(a)return this;this._items.delete(t)}for(let s of r)if(!this._items.has(s))throw new z2t;return this._checkCircularDependencies(t,r),this._items.set(t,new Set(r)),this}delete(t){return this._items.has(t)?(this._items.forEach(r=>r.delete(t)),this._items.delete(t)):!1}*[Symbol.iterator](){let t=new Map(this._items);for(let[r,s]of t.entries())t.set(r,new Set(s));for(;t.size>0;){let r=[];for(let[s,a]of t.entries())a.size==0&&r.push(s);for(let s of r)t.forEach(a=>a.delete(s)),t.delete(s),yield s;if(r.length==0)throw new hXe}}get[Symbol.toStringTag](){return"Set"}};tae.PartiallyOrderedSet=O1r});var LFi=z(q2t=>{"use strict";Object.defineProperty(q2t,"__esModule",{value:!0});q2t.PriorityQueue=void 0;var Q1r=class{_comparator;_items=new Array;constructor(t){this._comparator=t}clear(){this._items=new Array}push(t){let r=this._items.findIndex(s=>this._comparator(t,s)<=0);r===-1?this._items.push(t):this._items.splice(r,0,t)}pop(){if(this._items.length!==0)return this._items.splice(0,1)[0]}peek(){if(this._items.length!==0)return this._items[0]}get size(){return this._items.length}toArray(){return this._items.slice()}};q2t.PriorityQueue=Q1r});var VFi=z(M1r=>{"use strict";Object.defineProperty(M1r,"__esModule",{value:!0});M1r.isPromise=wuc;function wuc(e){return!!e&&typeof e.then=="function"}});var H1r=z(OT=>{"use strict";var WFi=OT&&OT.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Tuc=OT&&OT.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),PFi=OT&&OT.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var s=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(s[s.length]=a);return s},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var s=e(t),a=0;a{"use strict";Object.defineProperty($2t,"__esModule",{value:!0});$2t.visitJson=Duc;$2t.visitJsonSchema=xuc;var tG=vb(),rae=o0r();function OFi(e,t){if(!(typeof e!="object"||e===null)){if(typeof e.properties=="object"||e.type=="object")return typeof e.properties=="object"&&typeof e.properties[t]=="object"?e.properties[t]:typeof e.additionalProperties=="object"?e.additionalProperties:void 0;if(typeof e.items=="object"||e.type=="array")return typeof e.items=="object"?e.items:void 0}}function Y1r(e,t,r,s,a,o,g){if((s===!0||s===!1)&&(s=void 0),s&&s.hasOwnProperty("$ref")&&typeof s.$ref=="string"&&a){let f=a(s.$ref,o);s=f.schema,o=f.context}let p=t(e,r,s,g);return((0,tG.isObservable)(p)?p:(0,tG.of)(p)).pipe((0,tG.concatMap)(f=>Array.isArray(f)?(0,tG.concat)((0,tG.from)(f).pipe((0,tG.mergeMap)((m,y)=>Y1r(m,t,(0,rae.joinJsonPointer)(r,""+y),OFi(s,""+y),a,o,g||f).pipe((0,tG.tap)(B=>f[y]=B))),(0,tG.ignoreElements)()),(0,tG.of)(f)):typeof f=="object"&&f!==null?(0,tG.concat)((0,tG.from)(Object.getOwnPropertyNames(f)).pipe((0,tG.mergeMap)(m=>Y1r(f[m],t,(0,rae.joinJsonPointer)(r,m),OFi(s,m),a,o,g||f).pipe((0,tG.tap)(y=>{let B=Object.getOwnPropertyDescriptor(f,m);B&&B.writable&&f[m]!==y&&(f[m]=y)}))),(0,tG.ignoreElements)()),(0,tG.of)(f)):(0,tG.of)(f)))}function Duc(e,t,r,s,a){return Y1r(e,t,(0,rae.buildJsonPointer)([]),r,s,a)}function xuc(e,t){if(e===!1||e===!0)return;let r={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0},s={items:!0,allOf:!0,anyOf:!0,oneOf:!0},a={definitions:!0,properties:!0,patternProperties:!0,additionalProperties:!0,dependencies:!0,items:!0};function o(g,p,f,m,y){if(g&&typeof g=="object"&&!Array.isArray(g)){t(g,p,m,y);for(let B of Object.keys(g)){let v=g[B];if(B in a){if(v&&typeof v=="object")for(let k of Object.keys(v))o(v[k],(0,rae.joinJsonPointer)(p,B,k),f,g,k)}else if(B in r)o(v,(0,rae.joinJsonPointer)(p,B),f,g,B);else if(B in s){if(Array.isArray(v))for(let k=0;k{"use strict";var kuc=N9&&N9.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Guc=N9&&N9.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),z1r=N9&&N9.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var s=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(s[s.length]=a);return s},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var s=e(t),a=0;a{let a=`Data path ${JSON.stringify(s.instancePath)} ${s.message}`;if(s.params)switch(s.keyword){case"additionalProperties":a+=`(${s.params.additionalProperty})`;break;case"enum":a+=`. Allowed values are: ${s.params.allowedValues?.map(o=>`"${o}"`).join(", ")}`;break}return a+"."})}};T9.SchemaValidationException=Q1r;var Y1r=class e{_ajv;_uriCache=new Map;_uriHandlers=new Set;_pre=new M1r.PartiallyOrderedSet;_post=new M1r.PartiallyOrderedSet;_currentCompilationSchemaInfo;_smartDefaultKeyword=!1;_promptProvider;_sourceMap=new Map;constructor(t=[]){this._ajv=new O1r.default({strict:!1,loadSchema:r=>this._fetch(r),passContext:!0}),(0,huc.default)(this._ajv);for(let r of t)this.addFormat(r)}async _fetch(t){let r=this._uriCache.get(t);if(r)return r;for(let s of this._uriHandlers){let a=s(t);if(a==null)continue;(0,Sq.isObservable)(a)&&(a=(0,Sq.lastValueFrom)(a));let o=await a;return this._uriCache.set(t,o),o}return new Promise((s,a)=>{let o=new FFi.URL(t);(o.protocol==="https:"?yuc:_uc).get(o,p=>{if(!p.statusCode||p.statusCode>=300)p.resume(),a(new Error(`Request failed. Status Code: ${p.statusCode}`));else{p.setEncoding("utf8");let f="";p.on("data",m=>{f+=m}),p.on("end",()=>{try{let m=JSON.parse(f);this._uriCache.set(t,m),s(m)}catch(m){a(m)}})}})})}addPreTransform(t,r){this._pre.add(t,r)}addPostTransform(t,r){this._post.add(t,r)}_resolver(t,r){if(!r||!t)return{};let s=r.schemaEnv.root.schema,a=typeof s=="object"?s.$id:null,o=t;typeof a=="string"&&(o=FFi.resolve(a,t),t.startsWith("#")&&(o=a+o));let g=this._ajv.getSchema(o);return{context:g?.schemaEnv.validate,schema:g?.schema}}async \u0275flatten(t){this._ajv.removeSchema(t),this._currentCompilationSchemaInfo=void 0;let r=await this._ajv.compileAsync(t),s=this;function a(g,p,f,m){if(g&&f&&m&&(0,Euc.isJsonObject)(g)&&Object.prototype.hasOwnProperty.call(g,"$ref")&&typeof g.$ref=="string"){let y=s._resolver(g.$ref,r);y.schema&&(f[m]=y.schema)}}let o=(0,M1r.deepCopy)(r.schema);return(0,z2t.visitJsonSchema)(o,a),o}async compile(t){let r=await this._compile(t);return(s,a)=>r(s,a)}async _compile(t){if(typeof t=="boolean")return async a=>({success:t,data:a});let r={smartDefaultRecord:new Map,promptDefinitions:[]};this._ajv.removeSchema(t);let s;try{this._currentCompilationSchemaInfo=r,s=this._ajv.compile(t)}catch(a){if(!(a instanceof O1r.default.MissingRefError))throw a;s=await this._ajv.compileAsync(t)}finally{this._currentCompilationSchemaInfo=void 0}return async(a,o)=>{let g={withPrompts:!0,applyPostTransforms:!0,applyPreTransforms:!0,...o},p={promptFieldsWithValue:new Set};if(g.applyPreTransforms)for(let f of this._pre.values())a=await(0,Sq.lastValueFrom)((0,z2t.visitJson)(a,f,t,this._resolver.bind(this),s));if(await this._applySmartDefaults(a,r.smartDefaultRecord),g.withPrompts){let f=(y,B)=>(y!==void 0&&p.promptFieldsWithValue.add(B),y);typeof t=="object"&&await(0,Sq.lastValueFrom)((0,z2t.visitJson)(a,f,t,this._resolver.bind(this),s));let m=r.promptDefinitions.filter(y=>!p.promptFieldsWithValue.has(y.id));m.length>0&&await this._applyPrompts(a,m)}try{let f=await s.call(p,a);if(!f)return{data:a,success:f,errors:s.errors??[]}}catch(f){if(f instanceof O1r.default.ValidationError)return{data:a,success:!1,errors:f.errors};throw f}if(g.applyPostTransforms)for(let f of this._post.values())a=await(0,Sq.lastValueFrom)((0,z2t.visitJson)(a,f,t,this._resolver.bind(this),s));return{data:a,success:!0}}}addFormat(t){this._ajv.addFormat(t.name,t.formatter)}addSmartDefaultProvider(t,r){if(this._sourceMap.has(t))throw new Error(t);this._sourceMap.set(t,r),this._smartDefaultKeyword||(this._smartDefaultKeyword=!0,this._ajv.addKeyword({keyword:"$default",errors:!1,valid:!0,compile:(s,a,o)=>{let g=this._currentCompilationSchemaInfo;if(g===void 0)return()=>!0;let p=this.normalizeDataPathArr(o);return g.smartDefaultRecord.set(JSON.stringify(p),s),()=>!0},metaSchema:{type:"object",properties:{$source:{type:"string"}},additionalProperties:!0,required:["$source"]}}))}registerUriHandler(t){this._uriHandlers.add(t)}usePromptProvider(t){let r=!!this._promptProvider;this._promptProvider=t,!r&&this._ajv.addKeyword({keyword:"x-prompt",errors:!1,valid:!0,compile:(s,a,o)=>{let g=this._currentCompilationSchemaInfo;if(!g)return()=>!0;let p="/"+this.normalizeDataPathArr(o).join("/"),f,m,y;typeof s=="string"?y=s:(y=s.message,f=s.type,m=s.items);let B=(0,Buc.getTypesOfSchema)(a);f||(B.size===1&&B.has("boolean")?f="confirmation":Array.isArray(a.enum)||B.size===1&&B.has("array")&&a.items&&Array.isArray(a.items.enum)?f="list":f="input");let v;if(f==="list"){v=s.multiselect===void 0?B.size===1&&B.has("array"):s.multiselect;let T=v?a.items&&a.items.enum:a.enum;if(!m&&Array.isArray(T)){m=[];for(let O of T)typeof O=="string"?m.push(O):typeof O=="object"||m.push({label:O.toString(),value:O})}}let G={id:p,type:f,message:y,raw:s,items:m,multiselect:v,propertyTypes:B,default:typeof a.default=="object"&&a.default!==null&&!Array.isArray(a.default)?void 0:a.default,async validator(T){try{let O=await o.self.validate(a,T);if(O)return O;if(o.self.errors?.length)return o.self.errors[0].message}catch(O){let X=O;if(Array.isArray(X.errors)&&X.errors.length)return X.errors[0].message}return!1}};return g.promptDefinitions.push(G),function(){return this&&this.promptFieldsWithValue&&this.promptFieldsWithValue.add(p),!0}},metaSchema:{oneOf:[{type:"string"},{type:"object",properties:{type:{type:"string"},message:{type:"string"}},additionalProperties:!0,required:["message"]}]}})}async _applyPrompts(t,r){let s=this._promptProvider;if(!s)return;let a=await(0,Sq.lastValueFrom)((0,Sq.from)(s(r)));for(let o in a){let g=o.split("/").slice(1);e._set(t,g,a[o],null,void 0,!0)}}static _set(t,r,s,a=null,o,g){for(let p=0;p(r&&t(`Option "${o?.parentDataProperty}" is deprecated${typeof r=="string"?": "+r:"."}`),!0),errors:!1})}normalizeDataPathArr(t){return t.dataPathArr.slice(1,t.dataLevel+1).map(r=>typeof r=="number"?r:r.str.replace(/"/g,""))}};T9.CoreSchemaRegistry=Y1r});var VFi=z(q2t=>{"use strict";Object.defineProperty(q2t,"__esModule",{value:!0});q2t.isJsonSchema=Suc;q2t.mergeSchemas=wuc;var vuc=SIe();function Suc(e){return(0,vuc.isJsonObject)(e)||e===!1||e===!0}function wuc(...e){return e.reduce((t,r)=>r===void 0?t:t===!1||r===!1?!1:t===!0?r:r===!0?t:Array.isArray(t.allOf)?Array.isArray(r.allOf)?{...t,allOf:[...t.allOf,...r.allOf]}:{...t,allOf:[...t.allOf,r]}:Array.isArray(r.allOf)?{...t,allOf:[t,...r.allOf]}:{...t,allOf:[t,r]},!0)}});var PFi=z(wR=>{"use strict";var WFi=wR&&wR.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Tuc=wR&&wR.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Nuc=wR&&wR.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var s=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(s[s.length]=a);return s},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var s=e(t),a=0;a{"use strict";var OFi=l3&&l3.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Duc=l3&&l3.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),xuc=l3&&l3.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var s=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(s[s.length]=a);return s},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var s=e(t),a=0;a{"use strict";Object.defineProperty(eBt,"__esModule",{value:!0});eBt.Logger=void 0;var X1r=Eb(),J1r=class extends X1r.Observable{name;parent;_subject=new X1r.Subject;_metadata;_obs=X1r.EMPTY;_subscription=null;get _observable(){return this._obs}set _observable(t){this._subscription&&this._subscription.unsubscribe(),this._obs=t,this.parent&&(this._subscription=this.subscribe(r=>{this.parent&&this.parent._subject.next(r)},r=>{this.parent&&this.parent._subject.error(r)},()=>{this._subscription&&this._subscription.unsubscribe(),this._subscription=null}))}constructor(t,r=null){super(),this.name=t,this.parent=r;let s=[],a=r;for(;a;)s.push(a.name),a=a.parent;this._metadata={name:t,path:s},this._observable=this._subject.asObservable(),this.parent&&this.parent._subject&&this.parent._subject.subscribe(void 0,void 0,()=>this.complete())}asApi(){return{createChild:t=>this.createChild(t),log:(t,r,s)=>this.log(t,r,s),debug:(t,r)=>this.debug(t,r),info:(t,r)=>this.info(t,r),warn:(t,r)=>this.warn(t,r),error:(t,r)=>this.error(t,r),fatal:(t,r)=>this.fatal(t,r)}}createChild(t){return new this.constructor(t,this)}complete(){this._subject.complete()}log(t,r,s={}){let a=Object.assign({},s,this._metadata,{level:t,message:r,timestamp:+Date.now()});this._subject.next(a)}next(t){this._subject.next(t)}debug(t,r={}){return this.log("debug",t,r)}info(t,r={}){return this.log("info",t,r)}warn(t,r={}){return this.log("warn",t,r)}error(t,r={}){return this.log("error",t,r)}fatal(t,r={}){return this.log("fatal",t,r)}toString(){return``}lift(t){return this._observable.lift(t)}subscribe(t,r,s){return this._observable.subscribe.apply(this._observable,arguments)}forEach(t,r=Promise){return this._observable.forEach(t,r)}};eBt.Logger=J1r});var MFi=z(tBt=>{"use strict";Object.defineProperty(tBt,"__esModule",{value:!0});tBt.IndentLogger=void 0;var Fuc=Eb(),Zuc=HTe(),U1r={},K1r=class extends Zuc.Logger{constructor(t,r=null,s=" "){super(t,r),U1r[s]=U1r[s]||[""];let a=U1r[s];this._observable=this._observable.pipe((0,Fuc.map)(o=>{let g=o.path.filter(p=>!!p).length;if(g>=a.length){let p=a[a.length-1];for(;g>=a.length;)p+=s,a.push(p)}return o.message=a[g]+o.message.split(/\n/).join(` -`+a[g]),o}))}};tBt.IndentLogger=K1r});var QFi=z(XTe=>{"use strict";Object.defineProperty(XTe,"__esModule",{value:!0});XTe.LevelCapLogger=XTe.LevelTransformLogger=void 0;var Luc=HTe(),rBt=class e extends Luc.Logger{name;parent;levelTransform;constructor(t,r=null,s){super(t,r),this.name=t,this.parent=r,this.levelTransform=s}log(t,r,s={}){return super.log(this.levelTransform(t),r,s)}createChild(t){return new e(t,this,this.levelTransform)}};XTe.LevelTransformLogger=rBt;var j1r=class e extends rBt{name;parent;levelCap;static levelMap={debug:{debug:"debug",info:"debug",warn:"debug",error:"debug",fatal:"debug"},info:{debug:"debug",info:"info",warn:"info",error:"info",fatal:"info"},warn:{debug:"debug",info:"info",warn:"warn",error:"warn",fatal:"warn"},error:{debug:"debug",info:"info",warn:"warn",error:"error",fatal:"error"},fatal:{debug:"debug",info:"info",warn:"warn",error:"error",fatal:"fatal"}};constructor(t,r=null,s){super(t,r,a=>e.levelMap[s][a]||a),this.name=t,this.parent=r,this.levelCap=s}};XTe.LevelCapLogger=j1r});var YFi=z(nBt=>{"use strict";Object.defineProperty(nBt,"__esModule",{value:!0});nBt.NullLogger=void 0;var Vuc=Eb(),Wuc=HTe(),z1r=class e extends Wuc.Logger{constructor(t=null){super("",t),this._observable=Vuc.EMPTY}asApi(){return{createChild:()=>new e(this),log(){},debug(){},info(){},warn(){},error(){},fatal(){}}}};nBt.NullLogger=z1r});var HFi=z(iBt=>{"use strict";Object.defineProperty(iBt,"__esModule",{value:!0});iBt.TransformLogger=void 0;var Puc=HTe(),q1r=class extends Puc.Logger{constructor(t,r,s=null){super(t,s),this._observable=r(this._observable)}};iBt.TransformLogger=q1r});var XFi=z(L5=>{"use strict";var Ouc=L5&&L5.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),hXe=L5&&L5.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Ouc(t,e,r)};Object.defineProperty(L5,"__esModule",{value:!0});hXe(MFi(),L5);hXe(QFi(),L5);hXe(HTe(),L5);hXe(YFi(),L5);hXe(HFi(),L5)});var e2r=z(JTe=>{"use strict";Object.defineProperty(JTe,"__esModule",{value:!0});JTe.TargetDefinitionCollection=JTe.ProjectDefinitionCollection=void 0;var sBt=class{_listener;_map;constructor(t,r){this._listener=r,this._map=new Map(t&&Object.entries(t))}delete(t){let r=this._map.delete(t);return r&&this._listener?.(t,void 0,this),r}set(t,r){return r!==this.get(t)&&(this._map.set(t,r),this._listener?.(t,r,this)),this}forEach(t,r){this._map.forEach((s,a)=>t(s,a,this),r)}get(t){return this._map.get(t)}has(t){return this._map.has(t)}get size(){return this._map.size}[Symbol.iterator](){return this._map[Symbol.iterator]()}entries(){return this._map.entries()}keys(){return this._map.keys()}values(){return this._map.values()}};function JFi(e){let t=new Set;switch(typeof e){case"boolean":case"number":case"string":return!0;case"object":if(e===null)return!0;t.add(e);for(let r of Object.values(e))if(!(typeof e=="object"&&t.has(r))&&!JFi(r))return!1;return!0;default:return!1}}var $1r=class extends sBt{constructor(t,r){super(t,r)}add(t){if(this.has(t.name))throw new Error("Project name already exists.");this._validateName(t.name);let r={root:t.root,prefix:t.prefix,sourceRoot:t.sourceRoot,targets:new oBt,extensions:{}};if(t.targets)for(let[s,a]of Object.entries(t.targets))a&&r.targets.set(s,a);for(let[s,a]of Object.entries(t))switch(s){case"name":case"root":case"sourceRoot":case"prefix":case"targets":break;default:if(JFi(a))r.extensions[s]=a;else throw new TypeError(`"${s}" must be a JSON value.`);break}return super.set(t.name,r),r}set(t,r){return this._validateName(t),super.set(t,r),this}_validateName(t){if(typeof t!="string"||!/^(?:@\w[\w.-]*\/)?\w[\w.-]*$/.test(t))throw new Error("Project name must be a valid npm package name.")}};JTe.ProjectDefinitionCollection=$1r;var oBt=class extends sBt{constructor(t,r){super(t,r)}add(t){if(this.has(t.name))throw new Error("Target name already exists.");this._validateName(t.name);let r={builder:t.builder,options:t.options,configurations:t.configurations,defaultConfiguration:t.defaultConfiguration};return super.set(t.name,r),r}set(t,r){return this._validateName(t),super.set(t,r),this}_validateName(t){if(typeof t!="string")throw new TypeError("Target name must be a string.")}};JTe.TargetDefinitionCollection=oBt});var UTe=z(vI=>{"use strict";Object.defineProperty(vI,"__esModule",{value:!0});vI.path=vI.NormalizedRoot=vI.NormalizedSep=vI.PathCannotBeFragmentException=vI.PathMustBeAbsoluteException=vI.InvalidPathException=void 0;vI.split=t2r;vI.extname=Muc;vI.basename=UFi;vI.dirname=Quc;vI.join=KFi;vI.isAbsolute=lBt;vI.relative=Yuc;vI.resolve=Huc;vI.fragment=uBt;vI.resetNormalizeCache=Xuc;vI.normalize=yXe;vI.noCacheNormalize=jFi;vI.asWindowsPath=zFi;vI.asPosixPath=Uuc;vI.getSystemPath=Kuc;var n2r=Bq(),aBt=class extends n2r.BaseException{constructor(t){super(`Path ${JSON.stringify(t)} is invalid.`)}};vI.InvalidPathException=aBt;var _Xe=class extends n2r.BaseException{constructor(t){super(`Path ${JSON.stringify(t)} must be absolute.`)}};vI.PathMustBeAbsoluteException=_Xe;var cBt=class extends n2r.BaseException{constructor(t){super(`Path ${JSON.stringify(t)} cannot be made a fragment.`)}};vI.PathCannotBeFragmentException=cBt;vI.NormalizedSep="/";vI.NormalizedRoot=vI.NormalizedSep;function t2r(e){let t=e.split(vI.NormalizedSep).map(r=>uBt(r));return t[t.length-1].length===0&&t.pop(),t}function Muc(e){let t=UFi(e),r=t.lastIndexOf(".");return r<1?"":t.slice(r)}function UFi(e){return e.lastIndexOf(vI.NormalizedSep)==-1?uBt(e):uBt(e.slice(e.lastIndexOf(vI.NormalizedSep)+1))}function Quc(e){let t=e.lastIndexOf(vI.NormalizedSep);if(t===-1)return"";let r=t===0?1:t;return yXe(e.slice(0,r))}function KFi(e,...t){return t.length>0?yXe((e?e+vI.NormalizedSep:"")+t.join(vI.NormalizedSep)):e}function lBt(e){return e.startsWith(vI.NormalizedSep)}function Yuc(e,t){if(!lBt(e))throw new _Xe(e);if(!lBt(t))throw new _Xe(t);let r;if(e==t)r="";else{let s=t2r(e),a=t2r(t);for(;s.length>0&&a.length>0&&s[0]==a[0];)s.shift(),a.shift();s.length==0?r=a.join(vI.NormalizedSep):r=s.map(()=>"..").concat(a).join(vI.NormalizedSep)}return yXe(r)}function Huc(e,t){return lBt(t)?t:KFi(e,t)}function uBt(e){if(e.indexOf(vI.NormalizedSep)!=-1)throw new cBt(e);return e}var r2r=new Map;function Xuc(){r2r=new Map}function yXe(e){let t=r2r.get(e);return t||(t=jFi(e),r2r.set(e,t)),t}function jFi(e){if(e==""||e==".")return"";if(e==vI.NormalizedRoot)return vI.NormalizedRoot;let t=e;e.match(/^[A-Z]:[/\\]/i)&&(e="\\"+e[0].toUpperCase()+"\\"+e.slice(3));let r=e.split(/[/\\]/g),s=!1,a=1;for(r[0]!=""&&(r.unshift("."),s=!0);a=2&&r[a-1]!=".."?(r.splice(a-1,2),a--):a++}else r[a]==""?r.splice(a,1):a++;return r.length==1?r[0]==""?vI.NormalizedSep:"":(r[0]=="."&&r.shift(),r.join(vI.NormalizedSep))}var Juc=(e,...t)=>yXe(String.raw(e,...t));vI.path=Juc;function zFi(e){let t=e.match(/^\/(\w)(?:\/(.*))?$/);if(t){let r=t[2]?t[2].replace(/\//g,"\\"):"";return`${t[1]}:\\${r}`}return e.replace(/\//g,"\\")}function Uuc(e){return e}function Kuc(e){return process.platform.startsWith("win32")?zFi(e):e}});var i2r=z(gBt=>{"use strict";Object.defineProperty(gBt,"__esModule",{value:!0});gBt.stringToFileBuffer=juc;gBt.fileBufferToString=zuc;var qFi=Dt("node:util");function juc(e){return new qFi.TextEncoder().encode(e).buffer}function zuc(e){return e.toString.length===1?e.toString("utf-8"):new qFi.TextDecoder("utf-8").decode(new Uint8Array(e))}});var s2r=z(ABt=>{"use strict";Object.defineProperty(ABt,"__esModule",{value:!0});ABt.HostWatchEventType=void 0;var $Fi;(function(e){e[e.Changed=0]="Changed",e[e.Created=1]="Created",e[e.Deleted=2]="Deleted",e[e.Renamed=3]="Renamed"})($Fi||(ABt.HostWatchEventType=$Fi={}))});var pBt=z(dBt=>{"use strict";Object.defineProperty(dBt,"__esModule",{value:!0});dBt.SimpleMemoryHost=void 0;var wK=Eb(),wq=Bq(),gS=UTe(),KTe=s2r(),o2r=class{_cache=new Map;_watchers=new Map;_newDirStats(){return{inspect(){return""},isFile(){return!1},isDirectory(){return!0},size:0,atime:new Date,ctime:new Date,mtime:new Date,birthtime:new Date,content:null}}_newFileStats(t,r){return{inspect(){return``},isFile(){return!0},isDirectory(){return!1},size:t.byteLength,atime:r?r.atime:new Date,ctime:new Date,mtime:new Date,birthtime:r?r.birthtime:new Date,content:t}}constructor(){this._cache.set((0,gS.normalize)("/"),this._newDirStats())}_toAbsolute(t){return(0,gS.isAbsolute)(t)?t:(0,gS.normalize)("/"+t)}_updateWatchers(t,r){let s=new Date,a=t,o=null;if(this._watchers.size==0)return;let g=this._watchers.get(a);g&&g.forEach(p=>{let[f,m]=p;m.next({path:t,time:s,type:r}),!f.persistent&&r==KTe.HostWatchEventType.Deleted&&(m.complete(),this._watchers.delete(a))});do{a=o!==null?o:a,o=(0,gS.dirname)(a);let p=this._watchers.get(a);p&&p.forEach(f=>{let[m,y]=f;m.recursive&&(y.next({path:t,time:s,type:r}),!m.persistent&&r==KTe.HostWatchEventType.Deleted&&(y.complete(),this._watchers.delete(a)))})}while(o!=a)}get capabilities(){return{synchronous:!0}}_write(t,r){t=this._toAbsolute(t);let s=this._cache.get(t);if(s&&s.isDirectory())throw new wq.PathIsDirectoryException(t);let a=(0,gS.split)(t),o=(0,gS.normalize)("/");for(let p of a){o=(0,gS.join)(o,p);let f=this._cache.get(p);if(f){if(f.isFile())throw new wq.PathIsFileException(o)}else this._cache.set(o,this._newDirStats())}let g=this._newFileStats(r,s);this._cache.set(t,g),this._updateWatchers(t,s?KTe.HostWatchEventType.Changed:KTe.HostWatchEventType.Created)}_read(t){t=this._toAbsolute(t);let r=this._cache.get(t);if(r){if(r.isDirectory())throw new wq.PathIsDirectoryException(t);if(r.content)return r.content;throw new wq.PathIsDirectoryException(t)}else throw new wq.FileDoesNotExistException(t)}_delete(t){if(t=this._toAbsolute(t),this._isDirectory(t))for(let[r]of this._cache.entries())(r.startsWith(t+gS.NormalizedSep)||r===t)&&this._cache.delete(r);else this._cache.delete(t);this._updateWatchers(t,KTe.HostWatchEventType.Deleted)}_rename(t,r){if(t=this._toAbsolute(t),r=this._toAbsolute(r),this._cache.has(t)){if(this._cache.has(r))throw new wq.FileAlreadyExistException(r)}else throw new wq.FileDoesNotExistException(t);if(this._isDirectory(t)){for(let s of this._cache.keys())if(s.startsWith(t+gS.NormalizedSep)){let a=this._cache.get(s);a&&this._cache.set((0,gS.join)(r,gS.NormalizedSep,s.slice(t.length)),a)}}else{let s=this._cache.get(t);if(s){let a=(0,gS.split)(r),o=[],g=(0,gS.normalize)("/");for(let p of a){g=(0,gS.join)(g,p);let f=this._cache.get(p);if(f){if(f.isFile())throw new wq.PathIsFileException(g)}else o.push(g)}for(let p of o)this._cache.set(p,this._newDirStats());this._cache.delete(t),this._cache.set(r,s)}}this._updateWatchers(t,KTe.HostWatchEventType.Renamed)}_list(t){if(t=this._toAbsolute(t),this._isFile(t))throw new wq.PathIsFileException(t);let r=(0,gS.split)(t),s=new Set;if(t!==gS.NormalizedRoot)for(let a of this._cache.keys())a.startsWith(t+gS.NormalizedSep)&&s.add((0,gS.split)(a)[r.length]);else for(let a of this._cache.keys())a.startsWith(gS.NormalizedSep)&&a!==gS.NormalizedRoot&&s.add((0,gS.split)(a)[1]);return[...s]}_exists(t){return!!this._cache.get(this._toAbsolute(t))}_isDirectory(t){let r=this._cache.get(this._toAbsolute(t));return r?r.isDirectory():!1}_isFile(t){let r=this._cache.get(this._toAbsolute(t));return r?r.isFile():!1}_stat(t){let r=this._cache.get(this._toAbsolute(t));return r||null}_watch(t,r){t=this._toAbsolute(t);let s=new wK.Subject,a=this._watchers.get(t);return a||(a=[],this._watchers.set(t,a)),a.push([r||{},s]),s.asObservable()}write(t,r){return new wK.Observable(s=>{this._write(t,r),s.next(),s.complete()})}read(t){return new wK.Observable(r=>{let s=this._read(t);r.next(s),r.complete()})}delete(t){return new wK.Observable(r=>{this._delete(t),r.next(),r.complete()})}rename(t,r){return new wK.Observable(s=>{this._rename(t,r),s.next(),s.complete()})}list(t){return new wK.Observable(r=>{r.next(this._list(t)),r.complete()})}exists(t){return new wK.Observable(r=>{r.next(this._exists(t)),r.complete()})}isDirectory(t){return new wK.Observable(r=>{r.next(this._isDirectory(t)),r.complete()})}isFile(t){return new wK.Observable(r=>{r.next(this._isFile(t)),r.complete()})}stat(t){return new wK.Observable(r=>{r.next(this._stat(t)),r.complete()})}watch(t,r){return this._watch(t,r)}reset(){this._cache.clear(),this._watchers.clear()}};dBt.SimpleMemoryHost=o2r});var c2r=z(jTe=>{"use strict";Object.defineProperty(jTe,"__esModule",{value:!0});jTe.SyncDelegateHost=jTe.SynchronousDelegateExpectedException=void 0;var quc=Bq(),bXe=class extends quc.BaseException{constructor(){super("Expected a synchronous delegate but got an asynchronous one.")}};jTe.SynchronousDelegateExpectedException=bXe;var a2r=class{_delegate;constructor(t){if(this._delegate=t,!t.capabilities.synchronous)throw new bXe}_doSyncCall(t){let r=!1,s,a;if(t.subscribe(o=>s=o,o=>a=o,()=>r=!0),a!==void 0)throw a;if(!r)throw new bXe;return s}get capabilities(){return this._delegate.capabilities}get delegate(){return this._delegate}write(t,r){return this._doSyncCall(this._delegate.write(t,r))}read(t){return this._doSyncCall(this._delegate.read(t))}delete(t){return this._doSyncCall(this._delegate.delete(t))}rename(t,r){return this._doSyncCall(this._delegate.rename(t,r))}list(t){return this._doSyncCall(this._delegate.list(t))}exists(t){return this._doSyncCall(this._delegate.exists(t))}isDirectory(t){return this._doSyncCall(this._delegate.isDirectory(t))}isFile(t){return this._doSyncCall(this._delegate.isFile(t))}stat(t){let r=this._delegate.stat(t);return r?this._doSyncCall(r):null}watch(t,r){return this._delegate.watch(t,r)}};jTe.SyncDelegateHost=a2r});var eZi=z(fBt=>{"use strict";Object.defineProperty(fBt,"__esModule",{value:!0});fBt.TestHost=void 0;var Tq=UTe(),l2r=i2r(),$uc=pBt(),egc=c2r(),u2r=class e extends $uc.SimpleMemoryHost{_records=[];_sync=null;constructor(t={}){super();for(let r of Object.getOwnPropertyNames(t))this._write((0,Tq.normalize)(r),(0,l2r.stringToFileBuffer)(t[r]))}get records(){return[...this._records]}clearRecords(){this._records=[]}get files(){let t=this.sync;function r(s){return t.list(s).map(a=>(0,Tq.join)(s,a)).reduce((a,o)=>t.isDirectory(o)?a.concat(r(o)):a.concat(o),[])}return r((0,Tq.normalize)("/"))}get sync(){return this._sync||(this._sync=new egc.SyncDelegateHost(this)),this._sync}clone(){let t=new e;return t._cache=new Map(this._cache),t}_write(t,r){return this._records.push({kind:"write",path:t}),super._write(t,r)}_read(t){return this._records.push({kind:"read",path:t}),super._read(t)}_delete(t){return this._records.push({kind:"delete",path:t}),super._delete(t)}_rename(t,r){return this._records.push({kind:"rename",from:t,to:r}),super._rename(t,r)}_list(t){return this._records.push({kind:"list",path:t}),super._list(t)}_exists(t){return this._records.push({kind:"exists",path:t}),super._exists(t)}_isDirectory(t){return this._records.push({kind:"isDirectory",path:t}),super._isDirectory(t)}_isFile(t){return this._records.push({kind:"isFile",path:t}),super._isFile(t)}_stat(t){return this._records.push({kind:"stat",path:t}),super._stat(t)}_watch(t,r){return this._records.push({kind:"watch",path:t}),super._watch(t,r)}$write(t,r){return super._write((0,Tq.normalize)(t),(0,l2r.stringToFileBuffer)(r))}$read(t){return(0,l2r.fileBufferToString)(super._read((0,Tq.normalize)(t)))}$list(t){return super._list((0,Tq.normalize)(t))}$exists(t){return super._exists((0,Tq.normalize)(t))}$isDirectory(t){return super._isDirectory((0,Tq.normalize)(t))}$isFile(t){return super._isFile((0,Tq.normalize)(t))}};fBt.TestHost=u2r});var EXe=z(IBt=>{"use strict";Object.defineProperty(IBt,"__esModule",{value:!0});IBt.ResolverHost=void 0;var g2r=class{_delegate;constructor(t){this._delegate=t}get capabilities(){return this._delegate.capabilities}write(t,r){return this._delegate.write(this._resolve(t),r)}read(t){return this._delegate.read(this._resolve(t))}delete(t){return this._delegate.delete(this._resolve(t))}rename(t,r){return this._delegate.rename(this._resolve(t),this._resolve(r))}list(t){return this._delegate.list(this._resolve(t))}exists(t){return this._delegate.exists(this._resolve(t))}isDirectory(t){return this._delegate.isDirectory(this._resolve(t))}isFile(t){return this._delegate.isFile(this._resolve(t))}stat(t){return this._delegate.stat(this._resolve(t))}watch(t,r){return this._delegate.watch(this._resolve(t),r)}};IBt.ResolverHost=g2r});var tZi=z(mBt=>{"use strict";Object.defineProperty(mBt,"__esModule",{value:!0});mBt.AliasHost=void 0;var CBt=UTe(),tgc=EXe(),A2r=class extends tgc.ResolverHost{_aliases=new Map;_resolve(t){let r=this._aliases.get(t),s=(0,CBt.split)(t),a=[];for(;!r&&s.length>0;){let o=(0,CBt.join)(CBt.NormalizedRoot,...s);r=this._aliases.get(o),r&&(r=(0,CBt.join)(r,...a)),a.unshift(s.pop())}return r||t}get aliases(){return this._aliases}};mBt.AliasHost=A2r});var rZi=z(d2r=>{"use strict";Object.defineProperty(d2r,"__esModule",{value:!0});d2r.createSyncHost=ngc;var rgc=Eb();function Nq(e){return new rgc.Observable(t=>{t.next(e()),t.complete()})}function ngc(e){return new class{get capabilities(){return{synchronous:!0}}read(t){return Nq(()=>e.read(t))}list(t){return Nq(()=>e.list(t))}exists(t){return Nq(()=>e.exists(t))}isDirectory(t){return Nq(()=>e.isDirectory(t))}isFile(t){return Nq(()=>e.isFile(t))}stat(t){return Nq(()=>e.stat(t))}write(t,r){return Nq(()=>e.write(t,r))}delete(t){return Nq(()=>e.delete(t))}rename(t,r){return Nq(()=>e.rename(t,r))}watch(){return null}}}});var nZi=z(hBt=>{"use strict";Object.defineProperty(hBt,"__esModule",{value:!0});hBt.Empty=void 0;var zTe=Eb(),igc=Bq(),p2r=class{capabilities={synchronous:!0};read(t){return(0,zTe.throwError)(new igc.FileDoesNotExistException(t))}list(t){return(0,zTe.of)([])}exists(t){return(0,zTe.of)(!1)}isDirectory(t){return(0,zTe.of)(!1)}isFile(t){return(0,zTe.of)(!1)}stat(t){return(0,zTe.of)(null)}};hBt.Empty=p2r});var BXe=z((BPl,cZi)=>{"use strict";var TK="\\\\/",iZi=`[^${TK}]`,Rq="\\.",sgc="\\+",ogc="\\?",_Bt="\\/",agc="(?=.)",sZi="[^/]",f2r=`(?:${_Bt}|$)`,oZi=`(?:^|${_Bt})`,I2r=`${Rq}{1,2}${f2r}`,cgc=`(?!${Rq})`,lgc=`(?!${oZi}${I2r})`,ugc=`(?!${Rq}{0,1}${f2r})`,ggc=`(?!${I2r})`,Agc=`[^.${_Bt}]`,dgc=`${sZi}*?`,pgc="/",aZi={DOT_LITERAL:Rq,PLUS_LITERAL:sgc,QMARK_LITERAL:ogc,SLASH_LITERAL:_Bt,ONE_CHAR:agc,QMARK:sZi,END_ANCHOR:f2r,DOTS_SLASH:I2r,NO_DOT:cgc,NO_DOTS:lgc,NO_DOT_SLASH:ugc,NO_DOTS_SLASH:ggc,QMARK_NO_DOT:Agc,STAR:dgc,START_ANCHOR:oZi,SEP:pgc},fgc={...aZi,SLASH_LITERAL:`[${TK}]`,QMARK:iZi,STAR:`${iZi}*?`,DOTS_SLASH:`${Rq}{1,2}(?:[${TK}]|$)`,NO_DOT:`(?!${Rq})`,NO_DOTS:`(?!(?:^|[${TK}])${Rq}{1,2}(?:[${TK}]|$))`,NO_DOT_SLASH:`(?!${Rq}{0,1}(?:[${TK}]|$))`,NO_DOTS_SLASH:`(?!${Rq}{1,2}(?:[${TK}]|$))`,QMARK_NO_DOT:`[^.${TK}]`,START_ANCHOR:`(?:^|[${TK}])`,END_ANCHOR:`(?:[${TK}]|$)`,SEP:"\\"},Igc={alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};cZi.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:Igc,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,extglobChars(e){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${e.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(e){return e===!0?fgc:aZi}}});var vXe=z(N9=>{"use strict";var{REGEX_BACKSLASH:Cgc,REGEX_REMOVE_BACKSLASH:mgc,REGEX_SPECIAL_CHARS:hgc,REGEX_SPECIAL_CHARS_GLOBAL:_gc}=BXe();N9.isObject=e=>e!==null&&typeof e=="object"&&!Array.isArray(e);N9.hasRegexChars=e=>hgc.test(e);N9.isRegexChar=e=>e.length===1&&N9.hasRegexChars(e);N9.escapeRegex=e=>e.replace(_gc,"\\$1");N9.toPosixSlashes=e=>e.replace(Cgc,"/");N9.isWindows=()=>{if(typeof navigator<"u"&&navigator.platform){let e=navigator.platform.toLowerCase();return e==="win32"||e==="windows"}return typeof process<"u"&&process.platform?process.platform==="win32":!1};N9.removeBackslashes=e=>e.replace(mgc,t=>t==="\\"?"":t);N9.escapeLast=(e,t,r)=>{let s=e.lastIndexOf(t,r);return s===-1?e:e[s-1]==="\\"?N9.escapeLast(e,t,s-1):`${e.slice(0,s)}\\${e.slice(s)}`};N9.removePrefix=(e,t={})=>{let r=e;return r.startsWith("./")&&(r=r.slice(2),t.prefix="./"),r};N9.wrapOutput=(e,t={},r={})=>{let s=r.contains?"":"^",a=r.contains?"":"$",o=`${s}(?:${e})${a}`;return t.negated===!0&&(o=`(?:^(?!${o}).*$)`),o};N9.basename=(e,{windows:t}={})=>{let r=e.split(t?/[\\/]/:"/"),s=r[r.length-1];return s===""?r[r.length-2]:s}});var IZi=z((SPl,fZi)=>{"use strict";var lZi=vXe(),{CHAR_ASTERISK:C2r,CHAR_AT:ygc,CHAR_BACKWARD_SLASH:SXe,CHAR_COMMA:bgc,CHAR_DOT:m2r,CHAR_EXCLAMATION_MARK:h2r,CHAR_FORWARD_SLASH:pZi,CHAR_LEFT_CURLY_BRACE:_2r,CHAR_LEFT_PARENTHESES:y2r,CHAR_LEFT_SQUARE_BRACKET:Egc,CHAR_PLUS:Bgc,CHAR_QUESTION_MARK:uZi,CHAR_RIGHT_CURLY_BRACE:vgc,CHAR_RIGHT_PARENTHESES:gZi,CHAR_RIGHT_SQUARE_BRACKET:Sgc}=BXe(),AZi=e=>e===pZi||e===SXe,dZi=e=>{e.isPrefix!==!0&&(e.depth=e.isGlobstar?1/0:1)},wgc=(e,t)=>{let r=t||{},s=e.length-1,a=r.parts===!0||r.scanToEnd===!0,o=[],g=[],p=[],f=e,m=-1,y=0,B=0,v=!1,G=!1,T=!1,O=!1,X=!1,U=!1,le=!1,ae=!1,ge=!1,fe=!1,pe=0,he,be,Te={value:"",depth:0,isGlob:!1},ke=()=>m>=s,x=()=>f.charCodeAt(m+1),et=()=>(he=be,f.charCodeAt(++m));for(;m0&&(Je=f.slice(0,y),f=f.slice(y),B-=y),Ue&&T===!0&&B>0?(Ue=f.slice(0,B),Xe=f.slice(B)):T===!0?(Ue="",Xe=f):Ue=f,Ue&&Ue!==""&&Ue!=="/"&&Ue!==f&&AZi(Ue.charCodeAt(Ue.length-1))&&(Ue=Ue.slice(0,-1)),r.unescape===!0&&(Xe&&(Xe=lZi.removeBackslashes(Xe)),Ue&&le===!0&&(Ue=lZi.removeBackslashes(Ue)));let ft={prefix:Je,input:e,start:y,base:Ue,glob:Xe,isBrace:v,isBracket:G,isGlob:T,isExtglob:O,isGlobstar:X,negated:ae,negatedExtglob:ge};if(r.tokens===!0&&(ft.maxDepth=0,AZi(be)||g.push(Te),ft.tokens=g),r.parts===!0||r.tokens===!0){let Gt;for(let er=0;er{"use strict";var yBt=BXe(),NK=vXe(),{MAX_LENGTH:bBt,POSIX_REGEX_SOURCE:Tgc,REGEX_NON_SPECIAL_CHARS:Ngc,REGEX_SPECIAL_CHARS_BACKREF:Rgc,REPLACEMENTS:CZi}=yBt,Dgc=(e,t)=>{if(typeof t.expandRange=="function")return t.expandRange(...e,t);e.sort();let r=`[${e.join("-")}]`;try{new RegExp(r)}catch{return e.map(a=>NK.escapeRegex(a)).join("..")}return r},qTe=(e,t)=>`Missing ${e}: "${t}" - use "\\\\${t}" to match literal characters`,b2r=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");e=CZi[e]||e;let r={...t},s=typeof r.maxLength=="number"?Math.min(bBt,r.maxLength):bBt,a=e.length;if(a>s)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${s}`);let o={type:"bos",value:"",output:r.prepend||""},g=[o],p=r.capture?"":"?:",f=yBt.globChars(r.windows),m=yBt.extglobChars(f),{DOT_LITERAL:y,PLUS_LITERAL:B,SLASH_LITERAL:v,ONE_CHAR:G,DOTS_SLASH:T,NO_DOT:O,NO_DOT_SLASH:X,NO_DOTS_SLASH:U,QMARK:le,QMARK_NO_DOT:ae,STAR:ge,START_ANCHOR:fe}=f,pe=Br=>`(${p}(?:(?!${fe}${Br.dot?T:y}).)*?)`,he=r.dot?"":O,be=r.dot?le:ae,Te=r.bash===!0?pe(r):ge;r.capture&&(Te=`(${Te})`),typeof r.noext=="boolean"&&(r.noextglob=r.noext);let ke={input:e,index:-1,start:0,dot:r.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:g};e=NK.removePrefix(e,ke),a=e.length;let x=[],et=[],Ue=[],Je=o,Xe,ft=()=>ke.index===a-1,Gt=ke.peek=(Br=1)=>e[ke.index+Br],er=ke.advance=()=>e[++ke.index]||"",Ur=()=>e.slice(ke.index+1),Ot=(Br="",tr=0)=>{ke.consumed+=Br,ke.index+=tr},dr=Br=>{ke.output+=Br.output!=null?Br.output:Br.value,Ot(Br.value)},Ar=()=>{let Br=1;for(;Gt()==="!"&&(Gt(2)!=="("||Gt(3)==="?");)er(),ke.start++,Br++;return Br%2===0?!1:(ke.negated=!0,ke.start++,!0)},or=Br=>{ke[Br]++,Ue.push(Br)},Fr=Br=>{ke[Br]--,Ue.pop()},$r=Br=>{if(Je.type==="globstar"){let tr=ke.braces>0&&(Br.type==="comma"||Br.type==="brace"),gn=Br.extglob===!0||x.length&&(Br.type==="pipe"||Br.type==="paren");Br.type!=="slash"&&Br.type!=="paren"&&!tr&&!gn&&(ke.output=ke.output.slice(0,-Je.output.length),Je.type="star",Je.value="*",Je.output=Te,ke.output+=Je.output)}if(x.length&&Br.type!=="paren"&&(x[x.length-1].inner+=Br.value),(Br.value||Br.output)&&dr(Br),Je&&Je.type==="text"&&Br.type==="text"){Je.output=(Je.output||Je.value)+Br.value,Je.value+=Br.value;return}Br.prev=Je,g.push(Br),Je=Br},Or=(Br,tr)=>{let gn={...m[tr],conditions:1,inner:""};gn.prev=Je,gn.parens=ke.parens,gn.output=ke.output;let Gn=(r.capture?"(":"")+gn.open;or("parens"),$r({type:Br,value:tr,output:ke.output?"":G}),$r({type:"paren",extglob:!0,value:er(),output:Gn}),x.push(gn)},In=Br=>{let tr=Br.close+(r.capture?")":""),gn;if(Br.type==="negate"){let Gn=Te;if(Br.inner&&Br.inner.length>1&&Br.inner.includes("/")&&(Gn=pe(r)),(Gn!==Te||ft()||/^\)+$/.test(Ur()))&&(tr=Br.close=`)$))${Gn}`),Br.inner.includes("*")&&(gn=Ur())&&/^\.[^\\/.]+$/.test(gn)){let we=b2r(gn,{...t,fastpaths:!1}).output;tr=Br.close=`)${we})${Gn})`}Br.prev.type==="bos"&&(ke.negatedExtglob=!0)}$r({type:"paren",extglob:!0,value:Xe,output:tr}),Fr("parens")};if(r.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(e)){let Br=!1,tr=e.replace(Rgc,(gn,Gn,we,Zi,Za,ka)=>Zi==="\\"?(Br=!0,gn):Zi==="?"?Gn?Gn+Zi+(Za?le.repeat(Za.length):""):ka===0?be+(Za?le.repeat(Za.length):""):le.repeat(we.length):Zi==="."?y.repeat(we.length):Zi==="*"?Gn?Gn+Zi+(Za?Te:""):Te:Gn?gn:`\\${gn}`);return Br===!0&&(r.unescape===!0?tr=tr.replace(/\\/g,""):tr=tr.replace(/\\+/g,gn=>gn.length%2===0?"\\\\":gn?"\\":"")),tr===e&&r.contains===!0?(ke.output=e,ke):(ke.output=NK.wrapOutput(tr,ke,t),ke)}for(;!ft();){if(Xe=er(),Xe==="\0")continue;if(Xe==="\\"){let gn=Gt();if(gn==="/"&&r.bash!==!0||gn==="."||gn===";")continue;if(!gn){Xe+="\\",$r({type:"text",value:Xe});continue}let Gn=/^\\+/.exec(Ur()),we=0;if(Gn&&Gn[0].length>2&&(we=Gn[0].length,ke.index+=we,we%2!==0&&(Xe+="\\")),r.unescape===!0?Xe=er():Xe+=er(),ke.brackets===0){$r({type:"text",value:Xe});continue}}if(ke.brackets>0&&(Xe!=="]"||Je.value==="["||Je.value==="[^")){if(r.posix!==!1&&Xe===":"){let gn=Je.value.slice(1);if(gn.includes("[")&&(Je.posix=!0,gn.includes(":"))){let Gn=Je.value.lastIndexOf("["),we=Je.value.slice(0,Gn),Zi=Je.value.slice(Gn+2),Za=Tgc[Zi];if(Za){Je.value=we+Za,ke.backtrack=!0,er(),!o.output&&g.indexOf(Je)===1&&(o.output=G);continue}}}(Xe==="["&&Gt()!==":"||Xe==="-"&&Gt()==="]")&&(Xe=`\\${Xe}`),Xe==="]"&&(Je.value==="["||Je.value==="[^")&&(Xe=`\\${Xe}`),r.posix===!0&&Xe==="!"&&Je.value==="["&&(Xe="^"),Je.value+=Xe,dr({value:Xe});continue}if(ke.quotes===1&&Xe!=='"'){Xe=NK.escapeRegex(Xe),Je.value+=Xe,dr({value:Xe});continue}if(Xe==='"'){ke.quotes=ke.quotes===1?0:1,r.keepQuotes===!0&&$r({type:"text",value:Xe});continue}if(Xe==="("){or("parens"),$r({type:"paren",value:Xe});continue}if(Xe===")"){if(ke.parens===0&&r.strictBrackets===!0)throw new SyntaxError(qTe("opening","("));let gn=x[x.length-1];if(gn&&ke.parens===gn.parens+1){In(x.pop());continue}$r({type:"paren",value:Xe,output:ke.parens?")":"\\)"}),Fr("parens");continue}if(Xe==="["){if(r.nobracket===!0||!Ur().includes("]")){if(r.nobracket!==!0&&r.strictBrackets===!0)throw new SyntaxError(qTe("closing","]"));Xe=`\\${Xe}`}else or("brackets");$r({type:"bracket",value:Xe});continue}if(Xe==="]"){if(r.nobracket===!0||Je&&Je.type==="bracket"&&Je.value.length===1){$r({type:"text",value:Xe,output:`\\${Xe}`});continue}if(ke.brackets===0){if(r.strictBrackets===!0)throw new SyntaxError(qTe("opening","["));$r({type:"text",value:Xe,output:`\\${Xe}`});continue}Fr("brackets");let gn=Je.value.slice(1);if(Je.posix!==!0&&gn[0]==="^"&&!gn.includes("/")&&(Xe=`/${Xe}`),Je.value+=Xe,dr({value:Xe}),r.literalBrackets===!1||NK.hasRegexChars(gn))continue;let Gn=NK.escapeRegex(Je.value);if(ke.output=ke.output.slice(0,-Je.value.length),r.literalBrackets===!0){ke.output+=Gn,Je.value=Gn;continue}Je.value=`(${p}${Gn}|${Je.value})`,ke.output+=Je.value;continue}if(Xe==="{"&&r.nobrace!==!0){or("braces");let gn={type:"brace",value:Xe,output:"(",outputIndex:ke.output.length,tokensIndex:ke.tokens.length};et.push(gn),$r(gn);continue}if(Xe==="}"){let gn=et[et.length-1];if(r.nobrace===!0||!gn){$r({type:"text",value:Xe,output:Xe});continue}let Gn=")";if(gn.dots===!0){let we=g.slice(),Zi=[];for(let Za=we.length-1;Za>=0&&(g.pop(),we[Za].type!=="brace");Za--)we[Za].type!=="dots"&&Zi.unshift(we[Za].value);Gn=Dgc(Zi,r),ke.backtrack=!0}if(gn.comma!==!0&&gn.dots!==!0){let we=ke.output.slice(0,gn.outputIndex),Zi=ke.tokens.slice(gn.tokensIndex);gn.value=gn.output="\\{",Xe=Gn="\\}",ke.output=we;for(let Za of Zi)ke.output+=Za.output||Za.value}$r({type:"brace",value:Xe,output:Gn}),Fr("braces"),et.pop();continue}if(Xe==="|"){x.length>0&&x[x.length-1].conditions++,$r({type:"text",value:Xe});continue}if(Xe===","){let gn=Xe,Gn=et[et.length-1];Gn&&Ue[Ue.length-1]==="braces"&&(Gn.comma=!0,gn="|"),$r({type:"comma",value:Xe,output:gn});continue}if(Xe==="/"){if(Je.type==="dot"&&ke.index===ke.start+1){ke.start=ke.index+1,ke.consumed="",ke.output="",g.pop(),Je=o;continue}$r({type:"slash",value:Xe,output:v});continue}if(Xe==="."){if(ke.braces>0&&Je.type==="dot"){Je.value==="."&&(Je.output=y);let gn=et[et.length-1];Je.type="dots",Je.output+=Xe,Je.value+=Xe,gn.dots=!0;continue}if(ke.braces+ke.parens===0&&Je.type!=="bos"&&Je.type!=="slash"){$r({type:"text",value:Xe,output:y});continue}$r({type:"dot",value:Xe,output:y});continue}if(Xe==="?"){if(!(Je&&Je.value==="(")&&r.noextglob!==!0&&Gt()==="("&&Gt(2)!=="?"){Or("qmark",Xe);continue}if(Je&&Je.type==="paren"){let Gn=Gt(),we=Xe;(Je.value==="("&&!/[!=<:]/.test(Gn)||Gn==="<"&&!/<([!=]|\w+>)/.test(Ur()))&&(we=`\\${Xe}`),$r({type:"text",value:Xe,output:we});continue}if(r.dot!==!0&&(Je.type==="slash"||Je.type==="bos")){$r({type:"qmark",value:Xe,output:ae});continue}$r({type:"qmark",value:Xe,output:le});continue}if(Xe==="!"){if(r.noextglob!==!0&&Gt()==="("&&(Gt(2)!=="?"||!/[!=<:]/.test(Gt(3)))){Or("negate",Xe);continue}if(r.nonegate!==!0&&ke.index===0){Ar();continue}}if(Xe==="+"){if(r.noextglob!==!0&&Gt()==="("&&Gt(2)!=="?"){Or("plus",Xe);continue}if(Je&&Je.value==="("||r.regex===!1){$r({type:"plus",value:Xe,output:B});continue}if(Je&&(Je.type==="bracket"||Je.type==="paren"||Je.type==="brace")||ke.parens>0){$r({type:"plus",value:Xe});continue}$r({type:"plus",value:B});continue}if(Xe==="@"){if(r.noextglob!==!0&&Gt()==="("&&Gt(2)!=="?"){$r({type:"at",extglob:!0,value:Xe,output:""});continue}$r({type:"text",value:Xe});continue}if(Xe!=="*"){(Xe==="$"||Xe==="^")&&(Xe=`\\${Xe}`);let gn=Ngc.exec(Ur());gn&&(Xe+=gn[0],ke.index+=gn[0].length),$r({type:"text",value:Xe});continue}if(Je&&(Je.type==="globstar"||Je.star===!0)){Je.type="star",Je.star=!0,Je.value+=Xe,Je.output=Te,ke.backtrack=!0,ke.globstar=!0,Ot(Xe);continue}let Br=Ur();if(r.noextglob!==!0&&/^\([^?]/.test(Br)){Or("star",Xe);continue}if(Je.type==="star"){if(r.noglobstar===!0){Ot(Xe);continue}let gn=Je.prev,Gn=gn.prev,we=gn.type==="slash"||gn.type==="bos",Zi=Gn&&(Gn.type==="star"||Gn.type==="globstar");if(r.bash===!0&&(!we||Br[0]&&Br[0]!=="/")){$r({type:"star",value:Xe,output:""});continue}let Za=ke.braces>0&&(gn.type==="comma"||gn.type==="brace"),ka=x.length&&(gn.type==="pipe"||gn.type==="paren");if(!we&&gn.type!=="paren"&&!Za&&!ka){$r({type:"star",value:Xe,output:""});continue}for(;Br.slice(0,3)==="/**";){let Qs=e[ke.index+4];if(Qs&&Qs!=="/")break;Br=Br.slice(3),Ot("/**",3)}if(gn.type==="bos"&&ft()){Je.type="globstar",Je.value+=Xe,Je.output=pe(r),ke.output=Je.output,ke.globstar=!0,Ot(Xe);continue}if(gn.type==="slash"&&gn.prev.type!=="bos"&&!Zi&&ft()){ke.output=ke.output.slice(0,-(gn.output+Je.output).length),gn.output=`(?:${gn.output}`,Je.type="globstar",Je.output=pe(r)+(r.strictSlashes?")":"|$)"),Je.value+=Xe,ke.globstar=!0,ke.output+=gn.output+Je.output,Ot(Xe);continue}if(gn.type==="slash"&&gn.prev.type!=="bos"&&Br[0]==="/"){let Qs=Br[1]!==void 0?"|$":"";ke.output=ke.output.slice(0,-(gn.output+Je.output).length),gn.output=`(?:${gn.output}`,Je.type="globstar",Je.output=`${pe(r)}${v}|${v}${Qs})`,Je.value+=Xe,ke.output+=gn.output+Je.output,ke.globstar=!0,Ot(Xe+er()),$r({type:"slash",value:"/",output:""});continue}if(gn.type==="bos"&&Br[0]==="/"){Je.type="globstar",Je.value+=Xe,Je.output=`(?:^|${v}|${pe(r)}${v})`,ke.output=Je.output,ke.globstar=!0,Ot(Xe+er()),$r({type:"slash",value:"/",output:""});continue}ke.output=ke.output.slice(0,-Je.output.length),Je.type="globstar",Je.output=pe(r),Je.value+=Xe,ke.output+=Je.output,ke.globstar=!0,Ot(Xe);continue}let tr={type:"star",value:Xe,output:Te};if(r.bash===!0){tr.output=".*?",(Je.type==="bos"||Je.type==="slash")&&(tr.output=he+tr.output),$r(tr);continue}if(Je&&(Je.type==="bracket"||Je.type==="paren")&&r.regex===!0){tr.output=Xe,$r(tr);continue}(ke.index===ke.start||Je.type==="slash"||Je.type==="dot")&&(Je.type==="dot"?(ke.output+=X,Je.output+=X):r.dot===!0?(ke.output+=U,Je.output+=U):(ke.output+=he,Je.output+=he),Gt()!=="*"&&(ke.output+=G,Je.output+=G)),$r(tr)}for(;ke.brackets>0;){if(r.strictBrackets===!0)throw new SyntaxError(qTe("closing","]"));ke.output=NK.escapeLast(ke.output,"["),Fr("brackets")}for(;ke.parens>0;){if(r.strictBrackets===!0)throw new SyntaxError(qTe("closing",")"));ke.output=NK.escapeLast(ke.output,"("),Fr("parens")}for(;ke.braces>0;){if(r.strictBrackets===!0)throw new SyntaxError(qTe("closing","}"));ke.output=NK.escapeLast(ke.output,"{"),Fr("braces")}if(r.strictSlashes!==!0&&(Je.type==="star"||Je.type==="bracket")&&$r({type:"maybe_slash",value:"",output:`${v}?`}),ke.backtrack===!0){ke.output="";for(let Br of ke.tokens)ke.output+=Br.output!=null?Br.output:Br.value,Br.suffix&&(ke.output+=Br.suffix)}return ke};b2r.fastpaths=(e,t)=>{let r={...t},s=typeof r.maxLength=="number"?Math.min(bBt,r.maxLength):bBt,a=e.length;if(a>s)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${s}`);e=CZi[e]||e;let{DOT_LITERAL:o,SLASH_LITERAL:g,ONE_CHAR:p,DOTS_SLASH:f,NO_DOT:m,NO_DOTS:y,NO_DOTS_SLASH:B,STAR:v,START_ANCHOR:G}=yBt.globChars(r.windows),T=r.dot?y:m,O=r.dot?B:m,X=r.capture?"":"?:",U={negated:!1,prefix:""},le=r.bash===!0?".*?":v;r.capture&&(le=`(${le})`);let ae=he=>he.noglobstar===!0?le:`(${X}(?:(?!${G}${he.dot?f:o}).)*?)`,ge=he=>{switch(he){case"*":return`${T}${p}${le}`;case".*":return`${o}${p}${le}`;case"*.*":return`${T}${le}${o}${p}${le}`;case"*/*":return`${T}${le}${g}${p}${O}${le}`;case"**":return T+ae(r);case"**/*":return`(?:${T}${ae(r)}${g})?${O}${p}${le}`;case"**/*.*":return`(?:${T}${ae(r)}${g})?${O}${le}${o}${p}${le}`;case"**/.*":return`(?:${T}${ae(r)}${g})?${o}${p}${le}`;default:{let be=/^(.*?)\.(\w+)$/.exec(he);if(!be)return;let Te=ge(be[1]);return Te?Te+o+be[2]:void 0}}},fe=NK.removePrefix(e,U),pe=ge(fe);return pe&&r.strictSlashes!==!0&&(pe+=`${g}?`),pe};mZi.exports=b2r});var bZi=z((TPl,yZi)=>{"use strict";var xgc=IZi(),E2r=hZi(),_Zi=vXe(),kgc=BXe(),Ggc=e=>e&&typeof e=="object"&&!Array.isArray(e),AS=(e,t,r=!1)=>{if(Array.isArray(e)){let y=e.map(v=>AS(v,t,r));return v=>{for(let G of y){let T=G(v);if(T)return T}return!1}}let s=Ggc(e)&&e.tokens&&e.input;if(e===""||typeof e!="string"&&!s)throw new TypeError("Expected pattern to be a non-empty string");let a=t||{},o=a.windows,g=s?AS.compileRe(e,t):AS.makeRe(e,t,!1,!0),p=g.state;delete g.state;let f=()=>!1;if(a.ignore){let y={...t,ignore:null,onMatch:null,onResult:null};f=AS(a.ignore,y,r)}let m=(y,B=!1)=>{let{isMatch:v,match:G,output:T}=AS.test(y,g,t,{glob:e,posix:o}),O={glob:e,state:p,regex:g,posix:o,input:y,output:T,match:G,isMatch:v};return typeof a.onResult=="function"&&a.onResult(O),v===!1?(O.isMatch=!1,B?O:!1):f(y)?(typeof a.onIgnore=="function"&&a.onIgnore(O),O.isMatch=!1,B?O:!1):(typeof a.onMatch=="function"&&a.onMatch(O),B?O:!0)};return r&&(m.state=p),m};AS.test=(e,t,r,{glob:s,posix:a}={})=>{if(typeof e!="string")throw new TypeError("Expected input to be a string");if(e==="")return{isMatch:!1,output:""};let o=r||{},g=o.format||(a?_Zi.toPosixSlashes:null),p=e===s,f=p&&g?g(e):e;return p===!1&&(f=g?g(e):e,p=f===s),(p===!1||o.capture===!0)&&(o.matchBase===!0||o.basename===!0?p=AS.matchBase(e,t,r,a):p=t.exec(f)),{isMatch:!!p,match:p,output:f}};AS.matchBase=(e,t,r)=>(t instanceof RegExp?t:AS.makeRe(t,r)).test(_Zi.basename(e));AS.isMatch=(e,t,r)=>AS(t,r)(e);AS.parse=(e,t)=>Array.isArray(e)?e.map(r=>AS.parse(r,t)):E2r(e,{...t,fastpaths:!1});AS.scan=(e,t)=>xgc(e,t);AS.compileRe=(e,t,r=!1,s=!1)=>{if(r===!0)return e.output;let a=t||{},o=a.contains?"":"^",g=a.contains?"":"$",p=`${o}(?:${e.output})${g}`;e&&e.negated===!0&&(p=`^(?!${p}).*$`);let f=AS.toRegex(p,t);return s===!0&&(f.state=e),f};AS.makeRe=(e,t={},r=!1,s=!1)=>{if(!e||typeof e!="string")throw new TypeError("Expected a non-empty string");let a={negated:!1,fastpaths:!0};return t.fastpaths!==!1&&(e[0]==="."||e[0]==="*")&&(a.output=E2r.fastpaths(e,t)),a.output||(a=E2r(e,t)),AS.compileRe(a,t,r,s)};AS.toRegex=(e,t)=>{try{let r=t||{};return new RegExp(e,r.flags||(r.nocase?"i":""))}catch(r){if(t&&t.debug===!0)throw r;return/$^/}};AS.constants=kgc;yZi.exports=AS});var SZi=z((NPl,vZi)=>{"use strict";var EZi=bZi(),Fgc=vXe();function BZi(e,t,r=!1){return t&&(t.windows===null||t.windows===void 0)&&(t={...t,windows:Fgc.isWindows()}),EZi(e,t,r)}Object.assign(BZi,EZi);vZi.exports=BZi});var wZi=z(EBt=>{"use strict";Object.defineProperty(EBt,"__esModule",{value:!0});EBt.PatternMatchingHost=void 0;var Zgc=SZi(),Lgc=EXe(),B2r=class extends Lgc.ResolverHost{_patterns=new Map;addPattern(t,r){let s=Array.isArray(t)?t:[t];for(let a of s){let{output:o}=(0,Zgc.parse)(a);this._patterns.set(new RegExp(`^${o}$`),r)}}_resolve(t){let r=t;return this._patterns.forEach((s,a)=>{a.test(t)&&(r=s(r))}),r}};EBt.PatternMatchingHost=B2r});var TZi=z(BBt=>{"use strict";Object.defineProperty(BBt,"__esModule",{value:!0});BBt.CordHost=void 0;var Yh=Eb(),Dq=Bq(),Vgc=pBt(),v2r=class e extends Vgc.SimpleMemoryHost{_back;_filesToCreate=new Set;_filesToRename=new Map;_filesToRenameRevert=new Map;_filesToDelete=new Set;_filesToOverwrite=new Set;constructor(t){super(),this._back=t}get backend(){return this._back}get capabilities(){return{synchronous:this._back.capabilities.synchronous}}clone(){let t=new e(this._back);return t._cache=new Map(this._cache),t._filesToCreate=new Set(this._filesToCreate),t._filesToRename=new Map(this._filesToRename),t._filesToRenameRevert=new Map(this._filesToRenameRevert),t._filesToDelete=new Set(this._filesToDelete),t._filesToOverwrite=new Set(this._filesToOverwrite),t}commit(t,r=!1){return(0,Yh.from)(this.records()).pipe((0,Yh.concatMap)(s=>{switch(s.kind){case"delete":return t.delete(s.path);case"rename":return t.rename(s.from,s.to);case"create":return t.exists(s.path).pipe((0,Yh.switchMap)(a=>a&&!r?(0,Yh.throwError)(new Dq.FileAlreadyExistException(s.path)):t.write(s.path,s.content)));case"overwrite":return t.exists(s.path).pipe((0,Yh.switchMap)(a=>!a&&!r?(0,Yh.throwError)(new Dq.FileDoesNotExistException(s.path)):t.write(s.path,s.content)))}}),(0,Yh.reduce)(()=>{}))}records(){return[...[...this._filesToDelete.values()].map(t=>({kind:"delete",path:t})),...[...this._filesToRename.entries()].map(([t,r])=>({kind:"rename",from:t,to:r})),...[...this._filesToCreate.values()].map(t=>({kind:"create",path:t,content:this._read(t)})),...[...this._filesToOverwrite.values()].map(t=>({kind:"overwrite",path:t,content:this._read(t)}))]}create(t,r){if(super._exists(t))throw new Dq.FileAlreadyExistException(t);return this._filesToDelete.has(t)?(this._filesToDelete.delete(t),this._filesToOverwrite.add(t)):this._filesToCreate.add(t),super.write(t,r)}overwrite(t,r){return this.isDirectory(t).pipe((0,Yh.switchMap)(s=>s?(0,Yh.throwError)(new Dq.PathIsDirectoryException(t)):this.exists(t)),(0,Yh.switchMap)(s=>s?(this._filesToCreate.has(t)||this._filesToOverwrite.add(t),super.write(t,r)):(0,Yh.throwError)(new Dq.FileDoesNotExistException(t))))}write(t,r){return this.exists(t).pipe((0,Yh.switchMap)(s=>s?this.willRename(t)||this.willDelete(t)?this.create(t,r):this.overwrite(t,r):this.create(t,r)))}read(t){return this._exists(t)?super.read(t):this._back.read(t)}delete(t){if(this._exists(t)){if(this._filesToCreate.has(t))this._filesToCreate.delete(t);else if(this._filesToOverwrite.has(t))this._filesToOverwrite.delete(t),this._filesToDelete.add(t);else{let r=this._filesToRenameRevert.get(t);if(r)this._filesToRenameRevert.delete(t),this._filesToRename.delete(r),this._filesToDelete.add(r);else return(0,Yh.throwError)(new Dq.UnknownException(`This should never happen. Path: ${JSON.stringify(t)}.`))}return super.delete(t)}else return this._back.exists(t).pipe((0,Yh.switchMap)(r=>r?(this._filesToDelete.add(t),(0,Yh.of)()):(0,Yh.throwError)(new Dq.FileDoesNotExistException(t))))}rename(t,r){return(0,Yh.concat)(this.exists(r),this.exists(t)).pipe((0,Yh.toArray)(),(0,Yh.switchMap)(([s,a])=>{if(!a)return(0,Yh.throwError)(new Dq.FileDoesNotExistException(t));if(t===r)return Yh.EMPTY;if(s)return(0,Yh.throwError)(new Dq.FileAlreadyExistException(r));if(this._filesToCreate.has(t))return this._filesToCreate.delete(t),this._filesToCreate.add(r),super.rename(t,r);if(this._filesToOverwrite.has(t))return this._filesToOverwrite.delete(t),(0,Yh.concat)(this.rename(t,r),new Yh.Observable(g=>{this._filesToOverwrite.add(r),g.complete()}));if(this._filesToDelete.has(r))return this._filesToDelete.delete(r),this._filesToDelete.add(t),this._filesToOverwrite.add(r),this.read(t).pipe((0,Yh.map)(g=>this._write(r,g)));let o=this._filesToRenameRevert.get(t);return o&&(this._filesToRename.delete(o),this._filesToRenameRevert.delete(t),t=o),this._filesToRename.set(t,r),this._filesToRenameRevert.set(r,t),this._exists(t)?super.rename(t,r):this._back.read(t).pipe((0,Yh.switchMap)(g=>super.write(r,g)))}))}list(t){return(0,Yh.concat)(super.list(t),this._back.list(t)).pipe((0,Yh.reduce)((r,s)=>(s.forEach(a=>r.add(a)),r),new Set),(0,Yh.map)(r=>[...r]))}exists(t){return this._exists(t)?(0,Yh.of)(!0):this.willDelete(t)||this.willRename(t)?(0,Yh.of)(!1):this._back.exists(t)}isDirectory(t){return this._exists(t)?super.isDirectory(t):this._back.isDirectory(t)}isFile(t){return this._exists(t)?super.isFile(t):this.willDelete(t)||this.willRename(t)?(0,Yh.of)(!1):this._back.isFile(t)}stat(t){return this._exists(t)?super.stat(t):this.willDelete(t)||this.willRename(t)?(0,Yh.of)(null):this._back.stat(t)}watch(t,r){return null}willCreate(t){return this._filesToCreate.has(t)}willOverwrite(t){return this._filesToOverwrite.has(t)}willDelete(t){return this._filesToDelete.has(t)}willRename(t){return this._filesToRename.has(t)}willRenameTo(t,r){return this._filesToRename.get(t)===r}};BBt.CordHost=v2r});var NZi=z(vBt=>{"use strict";Object.defineProperty(vBt,"__esModule",{value:!0});vBt.SafeReadonlyHost=void 0;var Uoe=Eb(),S2r=class{_delegate;constructor(t){this._delegate=t}get capabilities(){return this._delegate.capabilities}read(t){return this._delegate.read(t)}list(t){return this._delegate.list(t).pipe((0,Uoe.catchError)(()=>(0,Uoe.of)([])))}exists(t){return this._delegate.exists(t)}isDirectory(t){return this._delegate.isDirectory(t).pipe((0,Uoe.catchError)(()=>(0,Uoe.of)(!1)))}isFile(t){return this._delegate.isFile(t).pipe((0,Uoe.catchError)(()=>(0,Uoe.of)(!1)))}stat(t){let r=this._delegate.stat(t);return r&&r.pipe((0,Uoe.catchError)(()=>(0,Uoe.of)(null)))}};vBt.SafeReadonlyHost=S2r});var DZi=z(SBt=>{"use strict";Object.defineProperty(SBt,"__esModule",{value:!0});SBt.ScopedHost=void 0;var RZi=UTe(),Wgc=EXe(),w2r=class extends Wgc.ResolverHost{_root;constructor(t,r=RZi.NormalizedRoot){super(t),this._root=r}_resolve(t){return(0,RZi.join)(this._root,t)}};SBt.ScopedHost=w2r});var kZi=z(o2=>{"use strict";var xZi=o2&&o2.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Pgc=o2&&o2.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Ogc=o2&&o2.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var s=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(s[s.length]=a);return s},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var s=e(t),a=0;a{"use strict";var GZi=u3&&u3.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Qgc=u3&&u3.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Ygc=u3&&u3.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var s=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(s[s.length]=a);return s},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var s=e(t),a=0;a{"use strict";Object.defineProperty(T2r,"__esModule",{value:!0});T2r.createWorkspaceHost=Jgc;var TBt=Eb(),$Te=wBt();function Jgc(e){return{async readFile(r){let s=await(0,TBt.lastValueFrom)(e.read((0,$Te.normalize)(r)));return $Te.virtualFs.fileBufferToString(s)},async writeFile(r,s){return(0,TBt.lastValueFrom)(e.write((0,$Te.normalize)(r),$Te.virtualFs.stringToFileBuffer(s)))},async isDirectory(r){try{return await(0,TBt.lastValueFrom)(e.isDirectory((0,$Te.normalize)(r)))}catch{return!1}},async isFile(r){try{return await(0,TBt.lastValueFrom)(e.isFile((0,$Te.normalize)(r)))}catch{return!1}}}}});var RBt=z((ZZi,NBt)=>{(function(e){if(typeof NBt=="object"&&typeof NBt.exports=="object"){var t=e(Dt,ZZi);t!==void 0&&(NBt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.createScanner=void 0;function r(p,f=!1){let m=p.length,y=0,B="",v=0,G=16,T=0,O=0,X=0,U=0,le=0;function ae(ke,x){let et=0,Ue=0;for(;et=48&&Je<=57)Ue=Ue*16+Je-48;else if(Je>=65&&Je<=70)Ue=Ue*16+Je-65+10;else if(Je>=97&&Je<=102)Ue=Ue*16+Je-97+10;else break;y++,et++}return et=m){ke+=p.substring(x,y),le=2;break}let et=p.charCodeAt(y);if(et===34){ke+=p.substring(x,y),y++;break}if(et===92){if(ke+=p.substring(x,y),y++,y>=m){le=2;break}switch(p.charCodeAt(y++)){case 34:ke+='"';break;case 92:ke+="\\";break;case 47:ke+="/";break;case 98:ke+="\b";break;case 102:ke+="\f";break;case 110:ke+=` -`;break;case 114:ke+="\r";break;case 116:ke+=" ";break;case 117:let Je=ae(4,!0);Je>=0?ke+=String.fromCharCode(Je):le=4;break;default:le=5}x=y;continue}if(et>=0&&et<=31)if(a(et)){ke+=p.substring(x,y),le=2;break}else le=6;y++}return ke}function he(){if(B="",le=0,v=y,O=T,U=X,y>=m)return v=m,G=17;let ke=p.charCodeAt(y);if(s(ke)){do y++,B+=String.fromCharCode(ke),ke=p.charCodeAt(y);while(s(ke));return G=15}if(a(ke))return y++,B+=String.fromCharCode(ke),ke===13&&p.charCodeAt(y)===10&&(y++,B+=` -`),T++,X=y,G=14;switch(ke){case 123:return y++,G=1;case 125:return y++,G=2;case 91:return y++,G=3;case 93:return y++,G=4;case 58:return y++,G=6;case 44:return y++,G=5;case 34:return y++,B=pe(),G=10;case 47:let x=y-1;if(p.charCodeAt(y+1)===47){for(y+=2;y=12&&ke<=15);return ke}return{setPosition:ge,getPosition:()=>y,scan:f?Te:he,getToken:()=>G,getTokenValue:()=>B,getTokenOffset:()=>v,getTokenLength:()=>y-v,getTokenStartLine:()=>O,getTokenStartCharacter:()=>v-U,getTokenError:()=>le}}t.createScanner=r;function s(p){return p===32||p===9}function a(p){return p===10||p===13}function o(p){return p>=48&&p<=57}var g;(function(p){p[p.lineFeed=10]="lineFeed",p[p.carriageReturn=13]="carriageReturn",p[p.space=32]="space",p[p._0=48]="_0",p[p._1=49]="_1",p[p._2=50]="_2",p[p._3=51]="_3",p[p._4=52]="_4",p[p._5=53]="_5",p[p._6=54]="_6",p[p._7=55]="_7",p[p._8=56]="_8",p[p._9=57]="_9",p[p.a=97]="a",p[p.b=98]="b",p[p.c=99]="c",p[p.d=100]="d",p[p.e=101]="e",p[p.f=102]="f",p[p.g=103]="g",p[p.h=104]="h",p[p.i=105]="i",p[p.j=106]="j",p[p.k=107]="k",p[p.l=108]="l",p[p.m=109]="m",p[p.n=110]="n",p[p.o=111]="o",p[p.p=112]="p",p[p.q=113]="q",p[p.r=114]="r",p[p.s=115]="s",p[p.t=116]="t",p[p.u=117]="u",p[p.v=118]="v",p[p.w=119]="w",p[p.x=120]="x",p[p.y=121]="y",p[p.z=122]="z",p[p.A=65]="A",p[p.B=66]="B",p[p.C=67]="C",p[p.D=68]="D",p[p.E=69]="E",p[p.F=70]="F",p[p.G=71]="G",p[p.H=72]="H",p[p.I=73]="I",p[p.J=74]="J",p[p.K=75]="K",p[p.L=76]="L",p[p.M=77]="M",p[p.N=78]="N",p[p.O=79]="O",p[p.P=80]="P",p[p.Q=81]="Q",p[p.R=82]="R",p[p.S=83]="S",p[p.T=84]="T",p[p.U=85]="U",p[p.V=86]="V",p[p.W=87]="W",p[p.X=88]="X",p[p.Y=89]="Y",p[p.Z=90]="Z",p[p.asterisk=42]="asterisk",p[p.backslash=92]="backslash",p[p.closeBrace=125]="closeBrace",p[p.closeBracket=93]="closeBracket",p[p.colon=58]="colon",p[p.comma=44]="comma",p[p.dot=46]="dot",p[p.doubleQuote=34]="doubleQuote",p[p.minus=45]="minus",p[p.openBrace=123]="openBrace",p[p.openBracket=91]="openBracket",p[p.plus=43]="plus",p[p.slash=47]="slash",p[p.formFeed=12]="formFeed",p[p.tab=9]="tab"})(g||(g={}))})});var VZi=z((LZi,DBt)=>{(function(e){if(typeof DBt=="object"&&typeof DBt.exports=="object"){var t=e(Dt,LZi);t!==void 0&&(DBt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.supportedEols=t.cachedBreakLinesWithSpaces=t.cachedSpaces=void 0,t.cachedSpaces=new Array(20).fill(0).map((s,a)=>" ".repeat(a));let r=200;t.cachedBreakLinesWithSpaces={" ":{"\n":new Array(r).fill(0).map((s,a)=>` + `)}`),this.errors=t}static createMessages(t){return!t||t.length===0?[]:t.map(s=>{let a=`Data path ${JSON.stringify(s.instancePath)} ${s.message}`;if(s.params)switch(s.keyword){case"additionalProperties":a+=`(${s.params.additionalProperty})`;break;case"enum":a+=`. Allowed values are: ${s.params.allowedValues?.map(o=>`"${o}"`).join(", ")}`;break}return a+"."})}};N9.SchemaValidationException=K1r;var j1r=class e{_ajv;_uriCache=new Map;_uriHandlers=new Set;_pre=new U1r.PartiallyOrderedSet;_post=new U1r.PartiallyOrderedSet;_currentCompilationSchemaInfo;_smartDefaultKeyword=!1;_promptProvider;_sourceMap=new Map;constructor(t=[]){this._ajv=new J1r.default({strict:!1,loadSchema:r=>this._fetch(r),passContext:!0}),(0,Fuc.default)(this._ajv);for(let r of t)this.addFormat(r)}async _fetch(t){let r=this._uriCache.get(t);if(r)return r;for(let s of this._uriHandlers){let a=s(t);if(a==null)continue;(0,Tq.isObservable)(a)&&(a=(0,Tq.lastValueFrom)(a));let o=await a;return this._uriCache.set(t,o),o}return new Promise((s,a)=>{let o=new QFi.URL(t);(o.protocol==="https:"?Luc:Zuc).get(o,p=>{if(!p.statusCode||p.statusCode>=300)p.resume(),a(new Error(`Request failed. Status Code: ${p.statusCode}`));else{p.setEncoding("utf8");let f="";p.on("data",m=>{f+=m}),p.on("end",()=>{try{let m=JSON.parse(f);this._uriCache.set(t,m),s(m)}catch(m){a(m)}})}})})}addPreTransform(t,r){this._pre.add(t,r)}addPostTransform(t,r){this._post.add(t,r)}_resolver(t,r){if(!r||!t)return{};let s=r.schemaEnv.root.schema,a=typeof s=="object"?s.$id:null,o=t;typeof a=="string"&&(o=QFi.resolve(a,t),t.startsWith("#")&&(o=a+o));let g=this._ajv.getSchema(o);return{context:g?.schemaEnv.validate,schema:g?.schema}}async \u0275flatten(t){this._ajv.removeSchema(t),this._currentCompilationSchemaInfo=void 0;let r=await this._ajv.compileAsync(t),s=this;function a(g,p,f,m){if(g&&f&&m&&(0,Wuc.isJsonObject)(g)&&Object.prototype.hasOwnProperty.call(g,"$ref")&&typeof g.$ref=="string"){let y=s._resolver(g.$ref,r);y.schema&&(f[m]=y.schema)}}let o=(0,U1r.deepCopy)(r.schema);return(0,eBt.visitJsonSchema)(o,a),o}async compile(t){let r=await this._compile(t);return(s,a)=>r(s,a)}async _compile(t){if(typeof t=="boolean")return async a=>({success:t,data:a});let r={smartDefaultRecord:new Map,promptDefinitions:[]};this._ajv.removeSchema(t);let s;try{this._currentCompilationSchemaInfo=r,s=this._ajv.compile(t)}catch(a){if(!(a instanceof J1r.default.MissingRefError))throw a;s=await this._ajv.compileAsync(t)}finally{this._currentCompilationSchemaInfo=void 0}return async(a,o)=>{let g={withPrompts:!0,applyPostTransforms:!0,applyPreTransforms:!0,...o},p={promptFieldsWithValue:new Set};if(g.applyPreTransforms)for(let f of this._pre.values())a=await(0,Tq.lastValueFrom)((0,eBt.visitJson)(a,f,t,this._resolver.bind(this),s));if(await this._applySmartDefaults(a,r.smartDefaultRecord),g.withPrompts){let f=(y,B)=>(y!==void 0&&p.promptFieldsWithValue.add(B),y);typeof t=="object"&&await(0,Tq.lastValueFrom)((0,eBt.visitJson)(a,f,t,this._resolver.bind(this),s));let m=r.promptDefinitions.filter(y=>!p.promptFieldsWithValue.has(y.id));m.length>0&&await this._applyPrompts(a,m)}try{let f=await s.call(p,a);if(!f)return{data:a,success:f,errors:s.errors??[]}}catch(f){if(f instanceof J1r.default.ValidationError)return{data:a,success:!1,errors:f.errors};throw f}if(g.applyPostTransforms)for(let f of this._post.values())a=await(0,Tq.lastValueFrom)((0,eBt.visitJson)(a,f,t,this._resolver.bind(this),s));return{data:a,success:!0}}}addFormat(t){this._ajv.addFormat(t.name,t.formatter)}addSmartDefaultProvider(t,r){if(this._sourceMap.has(t))throw new Error(t);this._sourceMap.set(t,r),this._smartDefaultKeyword||(this._smartDefaultKeyword=!0,this._ajv.addKeyword({keyword:"$default",errors:!1,valid:!0,compile:(s,a,o)=>{let g=this._currentCompilationSchemaInfo;if(g===void 0)return()=>!0;let p=this.normalizeDataPathArr(o);return g.smartDefaultRecord.set(JSON.stringify(p),s),()=>!0},metaSchema:{type:"object",properties:{$source:{type:"string"}},additionalProperties:!0,required:["$source"]}}))}registerUriHandler(t){this._uriHandlers.add(t)}usePromptProvider(t){let r=!!this._promptProvider;this._promptProvider=t,!r&&this._ajv.addKeyword({keyword:"x-prompt",errors:!1,valid:!0,compile:(s,a,o)=>{let g=this._currentCompilationSchemaInfo;if(!g)return()=>!0;let p="/"+this.normalizeDataPathArr(o).join("/"),f,m,y;typeof s=="string"?y=s:(y=s.message,f=s.type,m=s.items);let B=(0,Puc.getTypesOfSchema)(a);f||(B.size===1&&B.has("boolean")?f="confirmation":Array.isArray(a.enum)||B.size===1&&B.has("array")&&a.items&&Array.isArray(a.items.enum)?f="list":f="input");let v;if(f==="list"){v=s.multiselect===void 0?B.size===1&&B.has("array"):s.multiselect;let T=v?a.items&&a.items.enum:a.enum;if(!m&&Array.isArray(T)){m=[];for(let O of T)typeof O=="string"?m.push(O):typeof O=="object"||m.push({label:O.toString(),value:O})}}let k={id:p,type:f,message:y,raw:s,items:m,multiselect:v,propertyTypes:B,default:typeof a.default=="object"&&a.default!==null&&!Array.isArray(a.default)?void 0:a.default,async validator(T){try{let O=await o.self.validate(a,T);if(O)return O;if(o.self.errors?.length)return o.self.errors[0].message}catch(O){let X=O;if(Array.isArray(X.errors)&&X.errors.length)return X.errors[0].message}return!1}};return g.promptDefinitions.push(k),function(){return this&&this.promptFieldsWithValue&&this.promptFieldsWithValue.add(p),!0}},metaSchema:{oneOf:[{type:"string"},{type:"object",properties:{type:{type:"string"},message:{type:"string"}},additionalProperties:!0,required:["message"]}]}})}async _applyPrompts(t,r){let s=this._promptProvider;if(!s)return;let a=await(0,Tq.lastValueFrom)((0,Tq.from)(s(r)));for(let o in a){let g=o.split("/").slice(1);e._set(t,g,a[o],null,void 0,!0)}}static _set(t,r,s,a=null,o,g){for(let p=0;p(r&&t(`Option "${o?.parentDataProperty}" is deprecated${typeof r=="string"?": "+r:"."}`),!0),errors:!1})}normalizeDataPathArr(t){return t.dataPathArr.slice(1,t.dataLevel+1).map(r=>typeof r=="number"?r:r.str.replace(/"/g,""))}};N9.CoreSchemaRegistry=j1r});var YFi=z(tBt=>{"use strict";Object.defineProperty(tBt,"__esModule",{value:!0});tBt.isJsonSchema=Quc;tBt.mergeSchemas=Muc;var Ouc=TIe();function Quc(e){return(0,Ouc.isJsonObject)(e)||e===!1||e===!0}function Muc(...e){return e.reduce((t,r)=>r===void 0?t:t===!1||r===!1?!1:t===!0?r:r===!0?t:Array.isArray(t.allOf)?Array.isArray(r.allOf)?{...t,allOf:[...t.allOf,...r.allOf]}:{...t,allOf:[...t.allOf,r]}:Array.isArray(r.allOf)?{...t,allOf:[t,...r.allOf]}:{...t,allOf:[t,r]},!0)}});var JFi=z(RR=>{"use strict";var XFi=RR&&RR.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Huc=RR&&RR.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Yuc=RR&&RR.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var s=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(s[s.length]=a);return s},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var s=e(t),a=0;a{"use strict";var UFi=A3&&A3.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Juc=A3&&A3.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Uuc=A3&&A3.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var s=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(s[s.length]=a);return s},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var s=e(t),a=0;a{"use strict";Object.defineProperty(nBt,"__esModule",{value:!0});nBt.Logger=void 0;var q1r=vb(),$1r=class extends q1r.Observable{name;parent;_subject=new q1r.Subject;_metadata;_obs=q1r.EMPTY;_subscription=null;get _observable(){return this._obs}set _observable(t){this._subscription&&this._subscription.unsubscribe(),this._obs=t,this.parent&&(this._subscription=this.subscribe(r=>{this.parent&&this.parent._subject.next(r)},r=>{this.parent&&this.parent._subject.error(r)},()=>{this._subscription&&this._subscription.unsubscribe(),this._subscription=null}))}constructor(t,r=null){super(),this.name=t,this.parent=r;let s=[],a=r;for(;a;)s.push(a.name),a=a.parent;this._metadata={name:t,path:s},this._observable=this._subject.asObservable(),this.parent&&this.parent._subject&&this.parent._subject.subscribe(void 0,void 0,()=>this.complete())}asApi(){return{createChild:t=>this.createChild(t),log:(t,r,s)=>this.log(t,r,s),debug:(t,r)=>this.debug(t,r),info:(t,r)=>this.info(t,r),warn:(t,r)=>this.warn(t,r),error:(t,r)=>this.error(t,r),fatal:(t,r)=>this.fatal(t,r)}}createChild(t){return new this.constructor(t,this)}complete(){this._subject.complete()}log(t,r,s={}){let a=Object.assign({},s,this._metadata,{level:t,message:r,timestamp:+Date.now()});this._subject.next(a)}next(t){this._subject.next(t)}debug(t,r={}){return this.log("debug",t,r)}info(t,r={}){return this.log("info",t,r)}warn(t,r={}){return this.log("warn",t,r)}error(t,r={}){return this.log("error",t,r)}fatal(t,r={}){return this.log("fatal",t,r)}toString(){return``}lift(t){return this._observable.lift(t)}subscribe(t,r,s){return this._observable.subscribe.apply(this._observable,arguments)}forEach(t,r=Promise){return this._observable.forEach(t,r)}};nBt.Logger=$1r});var KFi=z(iBt=>{"use strict";Object.defineProperty(iBt,"__esModule",{value:!0});iBt.IndentLogger=void 0;var zuc=vb(),quc=JTe(),e2r={},t2r=class extends quc.Logger{constructor(t,r=null,s=" "){super(t,r),e2r[s]=e2r[s]||[""];let a=e2r[s];this._observable=this._observable.pipe((0,zuc.map)(o=>{let g=o.path.filter(p=>!!p).length;if(g>=a.length){let p=a[a.length-1];for(;g>=a.length;)p+=s,a.push(p)}return o.message=a[g]+o.message.split(/\n/).join(` +`+a[g]),o}))}};iBt.IndentLogger=t2r});var jFi=z(UTe=>{"use strict";Object.defineProperty(UTe,"__esModule",{value:!0});UTe.LevelCapLogger=UTe.LevelTransformLogger=void 0;var $uc=JTe(),sBt=class e extends $uc.Logger{name;parent;levelTransform;constructor(t,r=null,s){super(t,r),this.name=t,this.parent=r,this.levelTransform=s}log(t,r,s={}){return super.log(this.levelTransform(t),r,s)}createChild(t){return new e(t,this,this.levelTransform)}};UTe.LevelTransformLogger=sBt;var r2r=class e extends sBt{name;parent;levelCap;static levelMap={debug:{debug:"debug",info:"debug",warn:"debug",error:"debug",fatal:"debug"},info:{debug:"debug",info:"info",warn:"info",error:"info",fatal:"info"},warn:{debug:"debug",info:"info",warn:"warn",error:"warn",fatal:"warn"},error:{debug:"debug",info:"info",warn:"warn",error:"error",fatal:"error"},fatal:{debug:"debug",info:"info",warn:"warn",error:"error",fatal:"fatal"}};constructor(t,r=null,s){super(t,r,a=>e.levelMap[s][a]||a),this.name=t,this.parent=r,this.levelCap=s}};UTe.LevelCapLogger=r2r});var zFi=z(oBt=>{"use strict";Object.defineProperty(oBt,"__esModule",{value:!0});oBt.NullLogger=void 0;var egc=vb(),tgc=JTe(),n2r=class e extends tgc.Logger{constructor(t=null){super("",t),this._observable=egc.EMPTY}asApi(){return{createChild:()=>new e(this),log(){},debug(){},info(){},warn(){},error(){},fatal(){}}}};oBt.NullLogger=n2r});var qFi=z(aBt=>{"use strict";Object.defineProperty(aBt,"__esModule",{value:!0});aBt.TransformLogger=void 0;var rgc=JTe(),i2r=class extends rgc.Logger{constructor(t,r,s=null){super(t,s),this._observable=r(this._observable)}};aBt.TransformLogger=i2r});var $Fi=z(PY=>{"use strict";var ngc=PY&&PY.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),yXe=PY&&PY.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&ngc(t,e,r)};Object.defineProperty(PY,"__esModule",{value:!0});yXe(KFi(),PY);yXe(jFi(),PY);yXe(JTe(),PY);yXe(zFi(),PY);yXe(qFi(),PY)});var o2r=z(KTe=>{"use strict";Object.defineProperty(KTe,"__esModule",{value:!0});KTe.TargetDefinitionCollection=KTe.ProjectDefinitionCollection=void 0;var cBt=class{_listener;_map;constructor(t,r){this._listener=r,this._map=new Map(t&&Object.entries(t))}delete(t){let r=this._map.delete(t);return r&&this._listener?.(t,void 0,this),r}set(t,r){return r!==this.get(t)&&(this._map.set(t,r),this._listener?.(t,r,this)),this}forEach(t,r){this._map.forEach((s,a)=>t(s,a,this),r)}get(t){return this._map.get(t)}has(t){return this._map.has(t)}get size(){return this._map.size}[Symbol.iterator](){return this._map[Symbol.iterator]()}entries(){return this._map.entries()}keys(){return this._map.keys()}values(){return this._map.values()}};function eZi(e){let t=new Set;switch(typeof e){case"boolean":case"number":case"string":return!0;case"object":if(e===null)return!0;t.add(e);for(let r of Object.values(e))if(!(typeof e=="object"&&t.has(r))&&!eZi(r))return!1;return!0;default:return!1}}var s2r=class extends cBt{constructor(t,r){super(t,r)}add(t){if(this.has(t.name))throw new Error("Project name already exists.");this._validateName(t.name);let r={root:t.root,prefix:t.prefix,sourceRoot:t.sourceRoot,targets:new lBt,extensions:{}};if(t.targets)for(let[s,a]of Object.entries(t.targets))a&&r.targets.set(s,a);for(let[s,a]of Object.entries(t))switch(s){case"name":case"root":case"sourceRoot":case"prefix":case"targets":break;default:if(eZi(a))r.extensions[s]=a;else throw new TypeError(`"${s}" must be a JSON value.`);break}return super.set(t.name,r),r}set(t,r){return this._validateName(t),super.set(t,r),this}_validateName(t){if(typeof t!="string"||!/^(?:@\w[\w.-]*\/)?\w[\w.-]*$/.test(t))throw new Error("Project name must be a valid npm package name.")}};KTe.ProjectDefinitionCollection=s2r;var lBt=class extends cBt{constructor(t,r){super(t,r)}add(t){if(this.has(t.name))throw new Error("Target name already exists.");this._validateName(t.name);let r={builder:t.builder,options:t.options,configurations:t.configurations,defaultConfiguration:t.defaultConfiguration};return super.set(t.name,r),r}set(t,r){return this._validateName(t),super.set(t,r),this}_validateName(t){if(typeof t!="string")throw new TypeError("Target name must be a string.")}};KTe.TargetDefinitionCollection=lBt});var jTe=z(SI=>{"use strict";Object.defineProperty(SI,"__esModule",{value:!0});SI.path=SI.NormalizedRoot=SI.NormalizedSep=SI.PathCannotBeFragmentException=SI.PathMustBeAbsoluteException=SI.InvalidPathException=void 0;SI.split=a2r;SI.extname=igc;SI.basename=tZi;SI.dirname=sgc;SI.join=rZi;SI.isAbsolute=ABt;SI.relative=ogc;SI.resolve=agc;SI.fragment=dBt;SI.resetNormalizeCache=cgc;SI.normalize=EXe;SI.noCacheNormalize=nZi;SI.asWindowsPath=iZi;SI.asPosixPath=ugc;SI.getSystemPath=ggc;var l2r=Sq(),uBt=class extends l2r.BaseException{constructor(t){super(`Path ${JSON.stringify(t)} is invalid.`)}};SI.InvalidPathException=uBt;var bXe=class extends l2r.BaseException{constructor(t){super(`Path ${JSON.stringify(t)} must be absolute.`)}};SI.PathMustBeAbsoluteException=bXe;var gBt=class extends l2r.BaseException{constructor(t){super(`Path ${JSON.stringify(t)} cannot be made a fragment.`)}};SI.PathCannotBeFragmentException=gBt;SI.NormalizedSep="/";SI.NormalizedRoot=SI.NormalizedSep;function a2r(e){let t=e.split(SI.NormalizedSep).map(r=>dBt(r));return t[t.length-1].length===0&&t.pop(),t}function igc(e){let t=tZi(e),r=t.lastIndexOf(".");return r<1?"":t.slice(r)}function tZi(e){return e.lastIndexOf(SI.NormalizedSep)==-1?dBt(e):dBt(e.slice(e.lastIndexOf(SI.NormalizedSep)+1))}function sgc(e){let t=e.lastIndexOf(SI.NormalizedSep);if(t===-1)return"";let r=t===0?1:t;return EXe(e.slice(0,r))}function rZi(e,...t){return t.length>0?EXe((e?e+SI.NormalizedSep:"")+t.join(SI.NormalizedSep)):e}function ABt(e){return e.startsWith(SI.NormalizedSep)}function ogc(e,t){if(!ABt(e))throw new bXe(e);if(!ABt(t))throw new bXe(t);let r;if(e==t)r="";else{let s=a2r(e),a=a2r(t);for(;s.length>0&&a.length>0&&s[0]==a[0];)s.shift(),a.shift();s.length==0?r=a.join(SI.NormalizedSep):r=s.map(()=>"..").concat(a).join(SI.NormalizedSep)}return EXe(r)}function agc(e,t){return ABt(t)?t:rZi(e,t)}function dBt(e){if(e.indexOf(SI.NormalizedSep)!=-1)throw new gBt(e);return e}var c2r=new Map;function cgc(){c2r=new Map}function EXe(e){let t=c2r.get(e);return t||(t=nZi(e),c2r.set(e,t)),t}function nZi(e){if(e==""||e==".")return"";if(e==SI.NormalizedRoot)return SI.NormalizedRoot;let t=e;e.match(/^[A-Z]:[/\\]/i)&&(e="\\"+e[0].toUpperCase()+"\\"+e.slice(3));let r=e.split(/[/\\]/g),s=!1,a=1;for(r[0]!=""&&(r.unshift("."),s=!0);a=2&&r[a-1]!=".."?(r.splice(a-1,2),a--):a++}else r[a]==""?r.splice(a,1):a++;return r.length==1?r[0]==""?SI.NormalizedSep:"":(r[0]=="."&&r.shift(),r.join(SI.NormalizedSep))}var lgc=(e,...t)=>EXe(String.raw(e,...t));SI.path=lgc;function iZi(e){let t=e.match(/^\/(\w)(?:\/(.*))?$/);if(t){let r=t[2]?t[2].replace(/\//g,"\\"):"";return`${t[1]}:\\${r}`}return e.replace(/\//g,"\\")}function ugc(e){return e}function ggc(e){return process.platform.startsWith("win32")?iZi(e):e}});var u2r=z(pBt=>{"use strict";Object.defineProperty(pBt,"__esModule",{value:!0});pBt.stringToFileBuffer=Agc;pBt.fileBufferToString=dgc;var sZi=xt("node:util");function Agc(e){return new sZi.TextEncoder().encode(e).buffer}function dgc(e){return e.toString.length===1?e.toString("utf-8"):new sZi.TextDecoder("utf-8").decode(new Uint8Array(e))}});var g2r=z(fBt=>{"use strict";Object.defineProperty(fBt,"__esModule",{value:!0});fBt.HostWatchEventType=void 0;var oZi;(function(e){e[e.Changed=0]="Changed",e[e.Created=1]="Created",e[e.Deleted=2]="Deleted",e[e.Renamed=3]="Renamed"})(oZi||(fBt.HostWatchEventType=oZi={}))});var CBt=z(IBt=>{"use strict";Object.defineProperty(IBt,"__esModule",{value:!0});IBt.SimpleMemoryHost=void 0;var kK=vb(),Nq=Sq(),AS=jTe(),zTe=g2r(),A2r=class{_cache=new Map;_watchers=new Map;_newDirStats(){return{inspect(){return""},isFile(){return!1},isDirectory(){return!0},size:0,atime:new Date,ctime:new Date,mtime:new Date,birthtime:new Date,content:null}}_newFileStats(t,r){return{inspect(){return``},isFile(){return!0},isDirectory(){return!1},size:t.byteLength,atime:r?r.atime:new Date,ctime:new Date,mtime:new Date,birthtime:r?r.birthtime:new Date,content:t}}constructor(){this._cache.set((0,AS.normalize)("/"),this._newDirStats())}_toAbsolute(t){return(0,AS.isAbsolute)(t)?t:(0,AS.normalize)("/"+t)}_updateWatchers(t,r){let s=new Date,a=t,o=null;if(this._watchers.size==0)return;let g=this._watchers.get(a);g&&g.forEach(p=>{let[f,m]=p;m.next({path:t,time:s,type:r}),!f.persistent&&r==zTe.HostWatchEventType.Deleted&&(m.complete(),this._watchers.delete(a))});do{a=o!==null?o:a,o=(0,AS.dirname)(a);let p=this._watchers.get(a);p&&p.forEach(f=>{let[m,y]=f;m.recursive&&(y.next({path:t,time:s,type:r}),!m.persistent&&r==zTe.HostWatchEventType.Deleted&&(y.complete(),this._watchers.delete(a)))})}while(o!=a)}get capabilities(){return{synchronous:!0}}_write(t,r){t=this._toAbsolute(t);let s=this._cache.get(t);if(s&&s.isDirectory())throw new Nq.PathIsDirectoryException(t);let a=(0,AS.split)(t),o=(0,AS.normalize)("/");for(let p of a){o=(0,AS.join)(o,p);let f=this._cache.get(p);if(f){if(f.isFile())throw new Nq.PathIsFileException(o)}else this._cache.set(o,this._newDirStats())}let g=this._newFileStats(r,s);this._cache.set(t,g),this._updateWatchers(t,s?zTe.HostWatchEventType.Changed:zTe.HostWatchEventType.Created)}_read(t){t=this._toAbsolute(t);let r=this._cache.get(t);if(r){if(r.isDirectory())throw new Nq.PathIsDirectoryException(t);if(r.content)return r.content;throw new Nq.PathIsDirectoryException(t)}else throw new Nq.FileDoesNotExistException(t)}_delete(t){if(t=this._toAbsolute(t),this._isDirectory(t))for(let[r]of this._cache.entries())(r.startsWith(t+AS.NormalizedSep)||r===t)&&this._cache.delete(r);else this._cache.delete(t);this._updateWatchers(t,zTe.HostWatchEventType.Deleted)}_rename(t,r){if(t=this._toAbsolute(t),r=this._toAbsolute(r),this._cache.has(t)){if(this._cache.has(r))throw new Nq.FileAlreadyExistException(r)}else throw new Nq.FileDoesNotExistException(t);if(this._isDirectory(t)){for(let s of this._cache.keys())if(s.startsWith(t+AS.NormalizedSep)){let a=this._cache.get(s);a&&this._cache.set((0,AS.join)(r,AS.NormalizedSep,s.slice(t.length)),a)}}else{let s=this._cache.get(t);if(s){let a=(0,AS.split)(r),o=[],g=(0,AS.normalize)("/");for(let p of a){g=(0,AS.join)(g,p);let f=this._cache.get(p);if(f){if(f.isFile())throw new Nq.PathIsFileException(g)}else o.push(g)}for(let p of o)this._cache.set(p,this._newDirStats());this._cache.delete(t),this._cache.set(r,s)}}this._updateWatchers(t,zTe.HostWatchEventType.Renamed)}_list(t){if(t=this._toAbsolute(t),this._isFile(t))throw new Nq.PathIsFileException(t);let r=(0,AS.split)(t),s=new Set;if(t!==AS.NormalizedRoot)for(let a of this._cache.keys())a.startsWith(t+AS.NormalizedSep)&&s.add((0,AS.split)(a)[r.length]);else for(let a of this._cache.keys())a.startsWith(AS.NormalizedSep)&&a!==AS.NormalizedRoot&&s.add((0,AS.split)(a)[1]);return[...s]}_exists(t){return!!this._cache.get(this._toAbsolute(t))}_isDirectory(t){let r=this._cache.get(this._toAbsolute(t));return r?r.isDirectory():!1}_isFile(t){let r=this._cache.get(this._toAbsolute(t));return r?r.isFile():!1}_stat(t){let r=this._cache.get(this._toAbsolute(t));return r||null}_watch(t,r){t=this._toAbsolute(t);let s=new kK.Subject,a=this._watchers.get(t);return a||(a=[],this._watchers.set(t,a)),a.push([r||{},s]),s.asObservable()}write(t,r){return new kK.Observable(s=>{this._write(t,r),s.next(),s.complete()})}read(t){return new kK.Observable(r=>{let s=this._read(t);r.next(s),r.complete()})}delete(t){return new kK.Observable(r=>{this._delete(t),r.next(),r.complete()})}rename(t,r){return new kK.Observable(s=>{this._rename(t,r),s.next(),s.complete()})}list(t){return new kK.Observable(r=>{r.next(this._list(t)),r.complete()})}exists(t){return new kK.Observable(r=>{r.next(this._exists(t)),r.complete()})}isDirectory(t){return new kK.Observable(r=>{r.next(this._isDirectory(t)),r.complete()})}isFile(t){return new kK.Observable(r=>{r.next(this._isFile(t)),r.complete()})}stat(t){return new kK.Observable(r=>{r.next(this._stat(t)),r.complete()})}watch(t,r){return this._watch(t,r)}reset(){this._cache.clear(),this._watchers.clear()}};IBt.SimpleMemoryHost=A2r});var p2r=z(qTe=>{"use strict";Object.defineProperty(qTe,"__esModule",{value:!0});qTe.SyncDelegateHost=qTe.SynchronousDelegateExpectedException=void 0;var pgc=Sq(),BXe=class extends pgc.BaseException{constructor(){super("Expected a synchronous delegate but got an asynchronous one.")}};qTe.SynchronousDelegateExpectedException=BXe;var d2r=class{_delegate;constructor(t){if(this._delegate=t,!t.capabilities.synchronous)throw new BXe}_doSyncCall(t){let r=!1,s,a;if(t.subscribe(o=>s=o,o=>a=o,()=>r=!0),a!==void 0)throw a;if(!r)throw new BXe;return s}get capabilities(){return this._delegate.capabilities}get delegate(){return this._delegate}write(t,r){return this._doSyncCall(this._delegate.write(t,r))}read(t){return this._doSyncCall(this._delegate.read(t))}delete(t){return this._doSyncCall(this._delegate.delete(t))}rename(t,r){return this._doSyncCall(this._delegate.rename(t,r))}list(t){return this._doSyncCall(this._delegate.list(t))}exists(t){return this._doSyncCall(this._delegate.exists(t))}isDirectory(t){return this._doSyncCall(this._delegate.isDirectory(t))}isFile(t){return this._doSyncCall(this._delegate.isFile(t))}stat(t){let r=this._delegate.stat(t);return r?this._doSyncCall(r):null}watch(t,r){return this._delegate.watch(t,r)}};qTe.SyncDelegateHost=d2r});var aZi=z(mBt=>{"use strict";Object.defineProperty(mBt,"__esModule",{value:!0});mBt.TestHost=void 0;var Rq=jTe(),f2r=u2r(),fgc=CBt(),Igc=p2r(),I2r=class e extends fgc.SimpleMemoryHost{_records=[];_sync=null;constructor(t={}){super();for(let r of Object.getOwnPropertyNames(t))this._write((0,Rq.normalize)(r),(0,f2r.stringToFileBuffer)(t[r]))}get records(){return[...this._records]}clearRecords(){this._records=[]}get files(){let t=this.sync;function r(s){return t.list(s).map(a=>(0,Rq.join)(s,a)).reduce((a,o)=>t.isDirectory(o)?a.concat(r(o)):a.concat(o),[])}return r((0,Rq.normalize)("/"))}get sync(){return this._sync||(this._sync=new Igc.SyncDelegateHost(this)),this._sync}clone(){let t=new e;return t._cache=new Map(this._cache),t}_write(t,r){return this._records.push({kind:"write",path:t}),super._write(t,r)}_read(t){return this._records.push({kind:"read",path:t}),super._read(t)}_delete(t){return this._records.push({kind:"delete",path:t}),super._delete(t)}_rename(t,r){return this._records.push({kind:"rename",from:t,to:r}),super._rename(t,r)}_list(t){return this._records.push({kind:"list",path:t}),super._list(t)}_exists(t){return this._records.push({kind:"exists",path:t}),super._exists(t)}_isDirectory(t){return this._records.push({kind:"isDirectory",path:t}),super._isDirectory(t)}_isFile(t){return this._records.push({kind:"isFile",path:t}),super._isFile(t)}_stat(t){return this._records.push({kind:"stat",path:t}),super._stat(t)}_watch(t,r){return this._records.push({kind:"watch",path:t}),super._watch(t,r)}$write(t,r){return super._write((0,Rq.normalize)(t),(0,f2r.stringToFileBuffer)(r))}$read(t){return(0,f2r.fileBufferToString)(super._read((0,Rq.normalize)(t)))}$list(t){return super._list((0,Rq.normalize)(t))}$exists(t){return super._exists((0,Rq.normalize)(t))}$isDirectory(t){return super._isDirectory((0,Rq.normalize)(t))}$isFile(t){return super._isFile((0,Rq.normalize)(t))}};mBt.TestHost=I2r});var vXe=z(hBt=>{"use strict";Object.defineProperty(hBt,"__esModule",{value:!0});hBt.ResolverHost=void 0;var C2r=class{_delegate;constructor(t){this._delegate=t}get capabilities(){return this._delegate.capabilities}write(t,r){return this._delegate.write(this._resolve(t),r)}read(t){return this._delegate.read(this._resolve(t))}delete(t){return this._delegate.delete(this._resolve(t))}rename(t,r){return this._delegate.rename(this._resolve(t),this._resolve(r))}list(t){return this._delegate.list(this._resolve(t))}exists(t){return this._delegate.exists(this._resolve(t))}isDirectory(t){return this._delegate.isDirectory(this._resolve(t))}isFile(t){return this._delegate.isFile(this._resolve(t))}stat(t){return this._delegate.stat(this._resolve(t))}watch(t,r){return this._delegate.watch(this._resolve(t),r)}};hBt.ResolverHost=C2r});var cZi=z(yBt=>{"use strict";Object.defineProperty(yBt,"__esModule",{value:!0});yBt.AliasHost=void 0;var _Bt=jTe(),Cgc=vXe(),m2r=class extends Cgc.ResolverHost{_aliases=new Map;_resolve(t){let r=this._aliases.get(t),s=(0,_Bt.split)(t),a=[];for(;!r&&s.length>0;){let o=(0,_Bt.join)(_Bt.NormalizedRoot,...s);r=this._aliases.get(o),r&&(r=(0,_Bt.join)(r,...a)),a.unshift(s.pop())}return r||t}get aliases(){return this._aliases}};yBt.AliasHost=m2r});var lZi=z(h2r=>{"use strict";Object.defineProperty(h2r,"__esModule",{value:!0});h2r.createSyncHost=hgc;var mgc=vb();function Dq(e){return new mgc.Observable(t=>{t.next(e()),t.complete()})}function hgc(e){return new class{get capabilities(){return{synchronous:!0}}read(t){return Dq(()=>e.read(t))}list(t){return Dq(()=>e.list(t))}exists(t){return Dq(()=>e.exists(t))}isDirectory(t){return Dq(()=>e.isDirectory(t))}isFile(t){return Dq(()=>e.isFile(t))}stat(t){return Dq(()=>e.stat(t))}write(t,r){return Dq(()=>e.write(t,r))}delete(t){return Dq(()=>e.delete(t))}rename(t,r){return Dq(()=>e.rename(t,r))}watch(){return null}}}});var uZi=z(bBt=>{"use strict";Object.defineProperty(bBt,"__esModule",{value:!0});bBt.Empty=void 0;var $Te=vb(),_gc=Sq(),_2r=class{capabilities={synchronous:!0};read(t){return(0,$Te.throwError)(new _gc.FileDoesNotExistException(t))}list(t){return(0,$Te.of)([])}exists(t){return(0,$Te.of)(!1)}isDirectory(t){return(0,$Te.of)(!1)}isFile(t){return(0,$Te.of)(!1)}stat(t){return(0,$Te.of)(null)}};bBt.Empty=_2r});var SXe=z((XPl,fZi)=>{"use strict";var GK="\\\\/",gZi=`[^${GK}]`,xq="\\.",ygc="\\+",bgc="\\?",EBt="\\/",Egc="(?=.)",AZi="[^/]",y2r=`(?:${EBt}|$)`,dZi=`(?:^|${EBt})`,b2r=`${xq}{1,2}${y2r}`,Bgc=`(?!${xq})`,vgc=`(?!${dZi}${b2r})`,Sgc=`(?!${xq}{0,1}${y2r})`,wgc=`(?!${b2r})`,Tgc=`[^.${EBt}]`,Ngc=`${AZi}*?`,Rgc="/",pZi={DOT_LITERAL:xq,PLUS_LITERAL:ygc,QMARK_LITERAL:bgc,SLASH_LITERAL:EBt,ONE_CHAR:Egc,QMARK:AZi,END_ANCHOR:y2r,DOTS_SLASH:b2r,NO_DOT:Bgc,NO_DOTS:vgc,NO_DOT_SLASH:Sgc,NO_DOTS_SLASH:wgc,QMARK_NO_DOT:Tgc,STAR:Ngc,START_ANCHOR:dZi,SEP:Rgc},Dgc={...pZi,SLASH_LITERAL:`[${GK}]`,QMARK:gZi,STAR:`${gZi}*?`,DOTS_SLASH:`${xq}{1,2}(?:[${GK}]|$)`,NO_DOT:`(?!${xq})`,NO_DOTS:`(?!(?:^|[${GK}])${xq}{1,2}(?:[${GK}]|$))`,NO_DOT_SLASH:`(?!${xq}{0,1}(?:[${GK}]|$))`,NO_DOTS_SLASH:`(?!${xq}{1,2}(?:[${GK}]|$))`,QMARK_NO_DOT:`[^.${GK}]`,START_ANCHOR:`(?:^|[${GK}])`,END_ANCHOR:`(?:[${GK}]|$)`,SEP:"\\"},xgc={alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};fZi.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:xgc,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,extglobChars(e){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${e.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(e){return e===!0?Dgc:pZi}}});var wXe=z(R9=>{"use strict";var{REGEX_BACKSLASH:kgc,REGEX_REMOVE_BACKSLASH:Ggc,REGEX_SPECIAL_CHARS:Fgc,REGEX_SPECIAL_CHARS_GLOBAL:Zgc}=SXe();R9.isObject=e=>e!==null&&typeof e=="object"&&!Array.isArray(e);R9.hasRegexChars=e=>Fgc.test(e);R9.isRegexChar=e=>e.length===1&&R9.hasRegexChars(e);R9.escapeRegex=e=>e.replace(Zgc,"\\$1");R9.toPosixSlashes=e=>e.replace(kgc,"/");R9.isWindows=()=>{if(typeof navigator<"u"&&navigator.platform){let e=navigator.platform.toLowerCase();return e==="win32"||e==="windows"}return typeof process<"u"&&process.platform?process.platform==="win32":!1};R9.removeBackslashes=e=>e.replace(Ggc,t=>t==="\\"?"":t);R9.escapeLast=(e,t,r)=>{let s=e.lastIndexOf(t,r);return s===-1?e:e[s-1]==="\\"?R9.escapeLast(e,t,s-1):`${e.slice(0,s)}\\${e.slice(s)}`};R9.removePrefix=(e,t={})=>{let r=e;return r.startsWith("./")&&(r=r.slice(2),t.prefix="./"),r};R9.wrapOutput=(e,t={},r={})=>{let s=r.contains?"":"^",a=r.contains?"":"$",o=`${s}(?:${e})${a}`;return t.negated===!0&&(o=`(?:^(?!${o}).*$)`),o};R9.basename=(e,{windows:t}={})=>{let r=e.split(t?/[\\/]/:"/"),s=r[r.length-1];return s===""?r[r.length-2]:s}});var EZi=z((UPl,bZi)=>{"use strict";var IZi=wXe(),{CHAR_ASTERISK:E2r,CHAR_AT:Lgc,CHAR_BACKWARD_SLASH:TXe,CHAR_COMMA:Vgc,CHAR_DOT:B2r,CHAR_EXCLAMATION_MARK:v2r,CHAR_FORWARD_SLASH:yZi,CHAR_LEFT_CURLY_BRACE:S2r,CHAR_LEFT_PARENTHESES:w2r,CHAR_LEFT_SQUARE_BRACKET:Wgc,CHAR_PLUS:Pgc,CHAR_QUESTION_MARK:CZi,CHAR_RIGHT_CURLY_BRACE:Ogc,CHAR_RIGHT_PARENTHESES:mZi,CHAR_RIGHT_SQUARE_BRACKET:Qgc}=SXe(),hZi=e=>e===yZi||e===TXe,_Zi=e=>{e.isPrefix!==!0&&(e.depth=e.isGlobstar?1/0:1)},Mgc=(e,t)=>{let r=t||{},s=e.length-1,a=r.parts===!0||r.scanToEnd===!0,o=[],g=[],p=[],f=e,m=-1,y=0,B=0,v=!1,k=!1,T=!1,O=!1,X=!1,U=!1,le=!1,ae=!1,ge=!1,fe=!1,pe=0,he,be,Te={value:"",depth:0,isGlob:!1},ke=()=>m>=s,x=()=>f.charCodeAt(m+1),et=()=>(he=be,f.charCodeAt(++m));for(;m0&&(Je=f.slice(0,y),f=f.slice(y),B-=y),Ue&&T===!0&&B>0?(Ue=f.slice(0,B),Xe=f.slice(B)):T===!0?(Ue="",Xe=f):Ue=f,Ue&&Ue!==""&&Ue!=="/"&&Ue!==f&&hZi(Ue.charCodeAt(Ue.length-1))&&(Ue=Ue.slice(0,-1)),r.unescape===!0&&(Xe&&(Xe=IZi.removeBackslashes(Xe)),Ue&&le===!0&&(Ue=IZi.removeBackslashes(Ue)));let ft={prefix:Je,input:e,start:y,base:Ue,glob:Xe,isBrace:v,isBracket:k,isGlob:T,isExtglob:O,isGlobstar:X,negated:ae,negatedExtglob:ge};if(r.tokens===!0&&(ft.maxDepth=0,hZi(be)||g.push(Te),ft.tokens=g),r.parts===!0||r.tokens===!0){let Gt;for(let er=0;er{"use strict";var BBt=SXe(),FK=wXe(),{MAX_LENGTH:vBt,POSIX_REGEX_SOURCE:Hgc,REGEX_NON_SPECIAL_CHARS:Ygc,REGEX_SPECIAL_CHARS_BACKREF:Xgc,REPLACEMENTS:BZi}=BBt,Jgc=(e,t)=>{if(typeof t.expandRange=="function")return t.expandRange(...e,t);e.sort();let r=`[${e.join("-")}]`;try{new RegExp(r)}catch{return e.map(a=>FK.escapeRegex(a)).join("..")}return r},eNe=(e,t)=>`Missing ${e}: "${t}" - use "\\\\${t}" to match literal characters`,T2r=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");e=BZi[e]||e;let r={...t},s=typeof r.maxLength=="number"?Math.min(vBt,r.maxLength):vBt,a=e.length;if(a>s)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${s}`);let o={type:"bos",value:"",output:r.prepend||""},g=[o],p=r.capture?"":"?:",f=BBt.globChars(r.windows),m=BBt.extglobChars(f),{DOT_LITERAL:y,PLUS_LITERAL:B,SLASH_LITERAL:v,ONE_CHAR:k,DOTS_SLASH:T,NO_DOT:O,NO_DOT_SLASH:X,NO_DOTS_SLASH:U,QMARK:le,QMARK_NO_DOT:ae,STAR:ge,START_ANCHOR:fe}=f,pe=Br=>`(${p}(?:(?!${fe}${Br.dot?T:y}).)*?)`,he=r.dot?"":O,be=r.dot?le:ae,Te=r.bash===!0?pe(r):ge;r.capture&&(Te=`(${Te})`),typeof r.noext=="boolean"&&(r.noextglob=r.noext);let ke={input:e,index:-1,start:0,dot:r.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:g};e=FK.removePrefix(e,ke),a=e.length;let x=[],et=[],Ue=[],Je=o,Xe,ft=()=>ke.index===a-1,Gt=ke.peek=(Br=1)=>e[ke.index+Br],er=ke.advance=()=>e[++ke.index]||"",Ur=()=>e.slice(ke.index+1),Ot=(Br="",tr=0)=>{ke.consumed+=Br,ke.index+=tr},dr=Br=>{ke.output+=Br.output!=null?Br.output:Br.value,Ot(Br.value)},Ar=()=>{let Br=1;for(;Gt()==="!"&&(Gt(2)!=="("||Gt(3)==="?");)er(),ke.start++,Br++;return Br%2===0?!1:(ke.negated=!0,ke.start++,!0)},or=Br=>{ke[Br]++,Ue.push(Br)},Fr=Br=>{ke[Br]--,Ue.pop()},$r=Br=>{if(Je.type==="globstar"){let tr=ke.braces>0&&(Br.type==="comma"||Br.type==="brace"),gn=Br.extglob===!0||x.length&&(Br.type==="pipe"||Br.type==="paren");Br.type!=="slash"&&Br.type!=="paren"&&!tr&&!gn&&(ke.output=ke.output.slice(0,-Je.output.length),Je.type="star",Je.value="*",Je.output=Te,ke.output+=Je.output)}if(x.length&&Br.type!=="paren"&&(x[x.length-1].inner+=Br.value),(Br.value||Br.output)&&dr(Br),Je&&Je.type==="text"&&Br.type==="text"){Je.output=(Je.output||Je.value)+Br.value,Je.value+=Br.value;return}Br.prev=Je,g.push(Br),Je=Br},Or=(Br,tr)=>{let gn={...m[tr],conditions:1,inner:""};gn.prev=Je,gn.parens=ke.parens,gn.output=ke.output;let Gn=(r.capture?"(":"")+gn.open;or("parens"),$r({type:Br,value:tr,output:ke.output?"":k}),$r({type:"paren",extglob:!0,value:er(),output:Gn}),x.push(gn)},In=Br=>{let tr=Br.close+(r.capture?")":""),gn;if(Br.type==="negate"){let Gn=Te;if(Br.inner&&Br.inner.length>1&&Br.inner.includes("/")&&(Gn=pe(r)),(Gn!==Te||ft()||/^\)+$/.test(Ur()))&&(tr=Br.close=`)$))${Gn}`),Br.inner.includes("*")&&(gn=Ur())&&/^\.[^\\/.]+$/.test(gn)){let we=T2r(gn,{...t,fastpaths:!1}).output;tr=Br.close=`)${we})${Gn})`}Br.prev.type==="bos"&&(ke.negatedExtglob=!0)}$r({type:"paren",extglob:!0,value:Xe,output:tr}),Fr("parens")};if(r.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(e)){let Br=!1,tr=e.replace(Xgc,(gn,Gn,we,Zi,Fa,xa)=>Zi==="\\"?(Br=!0,gn):Zi==="?"?Gn?Gn+Zi+(Fa?le.repeat(Fa.length):""):xa===0?be+(Fa?le.repeat(Fa.length):""):le.repeat(we.length):Zi==="."?y.repeat(we.length):Zi==="*"?Gn?Gn+Zi+(Fa?Te:""):Te:Gn?gn:`\\${gn}`);return Br===!0&&(r.unescape===!0?tr=tr.replace(/\\/g,""):tr=tr.replace(/\\+/g,gn=>gn.length%2===0?"\\\\":gn?"\\":"")),tr===e&&r.contains===!0?(ke.output=e,ke):(ke.output=FK.wrapOutput(tr,ke,t),ke)}for(;!ft();){if(Xe=er(),Xe==="\0")continue;if(Xe==="\\"){let gn=Gt();if(gn==="/"&&r.bash!==!0||gn==="."||gn===";")continue;if(!gn){Xe+="\\",$r({type:"text",value:Xe});continue}let Gn=/^\\+/.exec(Ur()),we=0;if(Gn&&Gn[0].length>2&&(we=Gn[0].length,ke.index+=we,we%2!==0&&(Xe+="\\")),r.unescape===!0?Xe=er():Xe+=er(),ke.brackets===0){$r({type:"text",value:Xe});continue}}if(ke.brackets>0&&(Xe!=="]"||Je.value==="["||Je.value==="[^")){if(r.posix!==!1&&Xe===":"){let gn=Je.value.slice(1);if(gn.includes("[")&&(Je.posix=!0,gn.includes(":"))){let Gn=Je.value.lastIndexOf("["),we=Je.value.slice(0,Gn),Zi=Je.value.slice(Gn+2),Fa=Hgc[Zi];if(Fa){Je.value=we+Fa,ke.backtrack=!0,er(),!o.output&&g.indexOf(Je)===1&&(o.output=k);continue}}}(Xe==="["&&Gt()!==":"||Xe==="-"&&Gt()==="]")&&(Xe=`\\${Xe}`),Xe==="]"&&(Je.value==="["||Je.value==="[^")&&(Xe=`\\${Xe}`),r.posix===!0&&Xe==="!"&&Je.value==="["&&(Xe="^"),Je.value+=Xe,dr({value:Xe});continue}if(ke.quotes===1&&Xe!=='"'){Xe=FK.escapeRegex(Xe),Je.value+=Xe,dr({value:Xe});continue}if(Xe==='"'){ke.quotes=ke.quotes===1?0:1,r.keepQuotes===!0&&$r({type:"text",value:Xe});continue}if(Xe==="("){or("parens"),$r({type:"paren",value:Xe});continue}if(Xe===")"){if(ke.parens===0&&r.strictBrackets===!0)throw new SyntaxError(eNe("opening","("));let gn=x[x.length-1];if(gn&&ke.parens===gn.parens+1){In(x.pop());continue}$r({type:"paren",value:Xe,output:ke.parens?")":"\\)"}),Fr("parens");continue}if(Xe==="["){if(r.nobracket===!0||!Ur().includes("]")){if(r.nobracket!==!0&&r.strictBrackets===!0)throw new SyntaxError(eNe("closing","]"));Xe=`\\${Xe}`}else or("brackets");$r({type:"bracket",value:Xe});continue}if(Xe==="]"){if(r.nobracket===!0||Je&&Je.type==="bracket"&&Je.value.length===1){$r({type:"text",value:Xe,output:`\\${Xe}`});continue}if(ke.brackets===0){if(r.strictBrackets===!0)throw new SyntaxError(eNe("opening","["));$r({type:"text",value:Xe,output:`\\${Xe}`});continue}Fr("brackets");let gn=Je.value.slice(1);if(Je.posix!==!0&&gn[0]==="^"&&!gn.includes("/")&&(Xe=`/${Xe}`),Je.value+=Xe,dr({value:Xe}),r.literalBrackets===!1||FK.hasRegexChars(gn))continue;let Gn=FK.escapeRegex(Je.value);if(ke.output=ke.output.slice(0,-Je.value.length),r.literalBrackets===!0){ke.output+=Gn,Je.value=Gn;continue}Je.value=`(${p}${Gn}|${Je.value})`,ke.output+=Je.value;continue}if(Xe==="{"&&r.nobrace!==!0){or("braces");let gn={type:"brace",value:Xe,output:"(",outputIndex:ke.output.length,tokensIndex:ke.tokens.length};et.push(gn),$r(gn);continue}if(Xe==="}"){let gn=et[et.length-1];if(r.nobrace===!0||!gn){$r({type:"text",value:Xe,output:Xe});continue}let Gn=")";if(gn.dots===!0){let we=g.slice(),Zi=[];for(let Fa=we.length-1;Fa>=0&&(g.pop(),we[Fa].type!=="brace");Fa--)we[Fa].type!=="dots"&&Zi.unshift(we[Fa].value);Gn=Jgc(Zi,r),ke.backtrack=!0}if(gn.comma!==!0&&gn.dots!==!0){let we=ke.output.slice(0,gn.outputIndex),Zi=ke.tokens.slice(gn.tokensIndex);gn.value=gn.output="\\{",Xe=Gn="\\}",ke.output=we;for(let Fa of Zi)ke.output+=Fa.output||Fa.value}$r({type:"brace",value:Xe,output:Gn}),Fr("braces"),et.pop();continue}if(Xe==="|"){x.length>0&&x[x.length-1].conditions++,$r({type:"text",value:Xe});continue}if(Xe===","){let gn=Xe,Gn=et[et.length-1];Gn&&Ue[Ue.length-1]==="braces"&&(Gn.comma=!0,gn="|"),$r({type:"comma",value:Xe,output:gn});continue}if(Xe==="/"){if(Je.type==="dot"&&ke.index===ke.start+1){ke.start=ke.index+1,ke.consumed="",ke.output="",g.pop(),Je=o;continue}$r({type:"slash",value:Xe,output:v});continue}if(Xe==="."){if(ke.braces>0&&Je.type==="dot"){Je.value==="."&&(Je.output=y);let gn=et[et.length-1];Je.type="dots",Je.output+=Xe,Je.value+=Xe,gn.dots=!0;continue}if(ke.braces+ke.parens===0&&Je.type!=="bos"&&Je.type!=="slash"){$r({type:"text",value:Xe,output:y});continue}$r({type:"dot",value:Xe,output:y});continue}if(Xe==="?"){if(!(Je&&Je.value==="(")&&r.noextglob!==!0&&Gt()==="("&&Gt(2)!=="?"){Or("qmark",Xe);continue}if(Je&&Je.type==="paren"){let Gn=Gt(),we=Xe;(Je.value==="("&&!/[!=<:]/.test(Gn)||Gn==="<"&&!/<([!=]|\w+>)/.test(Ur()))&&(we=`\\${Xe}`),$r({type:"text",value:Xe,output:we});continue}if(r.dot!==!0&&(Je.type==="slash"||Je.type==="bos")){$r({type:"qmark",value:Xe,output:ae});continue}$r({type:"qmark",value:Xe,output:le});continue}if(Xe==="!"){if(r.noextglob!==!0&&Gt()==="("&&(Gt(2)!=="?"||!/[!=<:]/.test(Gt(3)))){Or("negate",Xe);continue}if(r.nonegate!==!0&&ke.index===0){Ar();continue}}if(Xe==="+"){if(r.noextglob!==!0&&Gt()==="("&&Gt(2)!=="?"){Or("plus",Xe);continue}if(Je&&Je.value==="("||r.regex===!1){$r({type:"plus",value:Xe,output:B});continue}if(Je&&(Je.type==="bracket"||Je.type==="paren"||Je.type==="brace")||ke.parens>0){$r({type:"plus",value:Xe});continue}$r({type:"plus",value:B});continue}if(Xe==="@"){if(r.noextglob!==!0&&Gt()==="("&&Gt(2)!=="?"){$r({type:"at",extglob:!0,value:Xe,output:""});continue}$r({type:"text",value:Xe});continue}if(Xe!=="*"){(Xe==="$"||Xe==="^")&&(Xe=`\\${Xe}`);let gn=Ygc.exec(Ur());gn&&(Xe+=gn[0],ke.index+=gn[0].length),$r({type:"text",value:Xe});continue}if(Je&&(Je.type==="globstar"||Je.star===!0)){Je.type="star",Je.star=!0,Je.value+=Xe,Je.output=Te,ke.backtrack=!0,ke.globstar=!0,Ot(Xe);continue}let Br=Ur();if(r.noextglob!==!0&&/^\([^?]/.test(Br)){Or("star",Xe);continue}if(Je.type==="star"){if(r.noglobstar===!0){Ot(Xe);continue}let gn=Je.prev,Gn=gn.prev,we=gn.type==="slash"||gn.type==="bos",Zi=Gn&&(Gn.type==="star"||Gn.type==="globstar");if(r.bash===!0&&(!we||Br[0]&&Br[0]!=="/")){$r({type:"star",value:Xe,output:""});continue}let Fa=ke.braces>0&&(gn.type==="comma"||gn.type==="brace"),xa=x.length&&(gn.type==="pipe"||gn.type==="paren");if(!we&&gn.type!=="paren"&&!Fa&&!xa){$r({type:"star",value:Xe,output:""});continue}for(;Br.slice(0,3)==="/**";){let Qs=e[ke.index+4];if(Qs&&Qs!=="/")break;Br=Br.slice(3),Ot("/**",3)}if(gn.type==="bos"&&ft()){Je.type="globstar",Je.value+=Xe,Je.output=pe(r),ke.output=Je.output,ke.globstar=!0,Ot(Xe);continue}if(gn.type==="slash"&&gn.prev.type!=="bos"&&!Zi&&ft()){ke.output=ke.output.slice(0,-(gn.output+Je.output).length),gn.output=`(?:${gn.output}`,Je.type="globstar",Je.output=pe(r)+(r.strictSlashes?")":"|$)"),Je.value+=Xe,ke.globstar=!0,ke.output+=gn.output+Je.output,Ot(Xe);continue}if(gn.type==="slash"&&gn.prev.type!=="bos"&&Br[0]==="/"){let Qs=Br[1]!==void 0?"|$":"";ke.output=ke.output.slice(0,-(gn.output+Je.output).length),gn.output=`(?:${gn.output}`,Je.type="globstar",Je.output=`${pe(r)}${v}|${v}${Qs})`,Je.value+=Xe,ke.output+=gn.output+Je.output,ke.globstar=!0,Ot(Xe+er()),$r({type:"slash",value:"/",output:""});continue}if(gn.type==="bos"&&Br[0]==="/"){Je.type="globstar",Je.value+=Xe,Je.output=`(?:^|${v}|${pe(r)}${v})`,ke.output=Je.output,ke.globstar=!0,Ot(Xe+er()),$r({type:"slash",value:"/",output:""});continue}ke.output=ke.output.slice(0,-Je.output.length),Je.type="globstar",Je.output=pe(r),Je.value+=Xe,ke.output+=Je.output,ke.globstar=!0,Ot(Xe);continue}let tr={type:"star",value:Xe,output:Te};if(r.bash===!0){tr.output=".*?",(Je.type==="bos"||Je.type==="slash")&&(tr.output=he+tr.output),$r(tr);continue}if(Je&&(Je.type==="bracket"||Je.type==="paren")&&r.regex===!0){tr.output=Xe,$r(tr);continue}(ke.index===ke.start||Je.type==="slash"||Je.type==="dot")&&(Je.type==="dot"?(ke.output+=X,Je.output+=X):r.dot===!0?(ke.output+=U,Je.output+=U):(ke.output+=he,Je.output+=he),Gt()!=="*"&&(ke.output+=k,Je.output+=k)),$r(tr)}for(;ke.brackets>0;){if(r.strictBrackets===!0)throw new SyntaxError(eNe("closing","]"));ke.output=FK.escapeLast(ke.output,"["),Fr("brackets")}for(;ke.parens>0;){if(r.strictBrackets===!0)throw new SyntaxError(eNe("closing",")"));ke.output=FK.escapeLast(ke.output,"("),Fr("parens")}for(;ke.braces>0;){if(r.strictBrackets===!0)throw new SyntaxError(eNe("closing","}"));ke.output=FK.escapeLast(ke.output,"{"),Fr("braces")}if(r.strictSlashes!==!0&&(Je.type==="star"||Je.type==="bracket")&&$r({type:"maybe_slash",value:"",output:`${v}?`}),ke.backtrack===!0){ke.output="";for(let Br of ke.tokens)ke.output+=Br.output!=null?Br.output:Br.value,Br.suffix&&(ke.output+=Br.suffix)}return ke};T2r.fastpaths=(e,t)=>{let r={...t},s=typeof r.maxLength=="number"?Math.min(vBt,r.maxLength):vBt,a=e.length;if(a>s)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${s}`);e=BZi[e]||e;let{DOT_LITERAL:o,SLASH_LITERAL:g,ONE_CHAR:p,DOTS_SLASH:f,NO_DOT:m,NO_DOTS:y,NO_DOTS_SLASH:B,STAR:v,START_ANCHOR:k}=BBt.globChars(r.windows),T=r.dot?y:m,O=r.dot?B:m,X=r.capture?"":"?:",U={negated:!1,prefix:""},le=r.bash===!0?".*?":v;r.capture&&(le=`(${le})`);let ae=he=>he.noglobstar===!0?le:`(${X}(?:(?!${k}${he.dot?f:o}).)*?)`,ge=he=>{switch(he){case"*":return`${T}${p}${le}`;case".*":return`${o}${p}${le}`;case"*.*":return`${T}${le}${o}${p}${le}`;case"*/*":return`${T}${le}${g}${p}${O}${le}`;case"**":return T+ae(r);case"**/*":return`(?:${T}${ae(r)}${g})?${O}${p}${le}`;case"**/*.*":return`(?:${T}${ae(r)}${g})?${O}${le}${o}${p}${le}`;case"**/.*":return`(?:${T}${ae(r)}${g})?${o}${p}${le}`;default:{let be=/^(.*?)\.(\w+)$/.exec(he);if(!be)return;let Te=ge(be[1]);return Te?Te+o+be[2]:void 0}}},fe=FK.removePrefix(e,U),pe=ge(fe);return pe&&r.strictSlashes!==!0&&(pe+=`${g}?`),pe};vZi.exports=T2r});var NZi=z((jPl,TZi)=>{"use strict";var Ugc=EZi(),N2r=SZi(),wZi=wXe(),Kgc=SXe(),jgc=e=>e&&typeof e=="object"&&!Array.isArray(e),dS=(e,t,r=!1)=>{if(Array.isArray(e)){let y=e.map(v=>dS(v,t,r));return v=>{for(let k of y){let T=k(v);if(T)return T}return!1}}let s=jgc(e)&&e.tokens&&e.input;if(e===""||typeof e!="string"&&!s)throw new TypeError("Expected pattern to be a non-empty string");let a=t||{},o=a.windows,g=s?dS.compileRe(e,t):dS.makeRe(e,t,!1,!0),p=g.state;delete g.state;let f=()=>!1;if(a.ignore){let y={...t,ignore:null,onMatch:null,onResult:null};f=dS(a.ignore,y,r)}let m=(y,B=!1)=>{let{isMatch:v,match:k,output:T}=dS.test(y,g,t,{glob:e,posix:o}),O={glob:e,state:p,regex:g,posix:o,input:y,output:T,match:k,isMatch:v};return typeof a.onResult=="function"&&a.onResult(O),v===!1?(O.isMatch=!1,B?O:!1):f(y)?(typeof a.onIgnore=="function"&&a.onIgnore(O),O.isMatch=!1,B?O:!1):(typeof a.onMatch=="function"&&a.onMatch(O),B?O:!0)};return r&&(m.state=p),m};dS.test=(e,t,r,{glob:s,posix:a}={})=>{if(typeof e!="string")throw new TypeError("Expected input to be a string");if(e==="")return{isMatch:!1,output:""};let o=r||{},g=o.format||(a?wZi.toPosixSlashes:null),p=e===s,f=p&&g?g(e):e;return p===!1&&(f=g?g(e):e,p=f===s),(p===!1||o.capture===!0)&&(o.matchBase===!0||o.basename===!0?p=dS.matchBase(e,t,r,a):p=t.exec(f)),{isMatch:!!p,match:p,output:f}};dS.matchBase=(e,t,r)=>(t instanceof RegExp?t:dS.makeRe(t,r)).test(wZi.basename(e));dS.isMatch=(e,t,r)=>dS(t,r)(e);dS.parse=(e,t)=>Array.isArray(e)?e.map(r=>dS.parse(r,t)):N2r(e,{...t,fastpaths:!1});dS.scan=(e,t)=>Ugc(e,t);dS.compileRe=(e,t,r=!1,s=!1)=>{if(r===!0)return e.output;let a=t||{},o=a.contains?"":"^",g=a.contains?"":"$",p=`${o}(?:${e.output})${g}`;e&&e.negated===!0&&(p=`^(?!${p}).*$`);let f=dS.toRegex(p,t);return s===!0&&(f.state=e),f};dS.makeRe=(e,t={},r=!1,s=!1)=>{if(!e||typeof e!="string")throw new TypeError("Expected a non-empty string");let a={negated:!1,fastpaths:!0};return t.fastpaths!==!1&&(e[0]==="."||e[0]==="*")&&(a.output=N2r.fastpaths(e,t)),a.output||(a=N2r(e,t)),dS.compileRe(a,t,r,s)};dS.toRegex=(e,t)=>{try{let r=t||{};return new RegExp(e,r.flags||(r.nocase?"i":""))}catch(r){if(t&&t.debug===!0)throw r;return/$^/}};dS.constants=Kgc;TZi.exports=dS});var kZi=z((zPl,xZi)=>{"use strict";var RZi=NZi(),zgc=wXe();function DZi(e,t,r=!1){return t&&(t.windows===null||t.windows===void 0)&&(t={...t,windows:zgc.isWindows()}),RZi(e,t,r)}Object.assign(DZi,RZi);xZi.exports=DZi});var GZi=z(SBt=>{"use strict";Object.defineProperty(SBt,"__esModule",{value:!0});SBt.PatternMatchingHost=void 0;var qgc=kZi(),$gc=vXe(),R2r=class extends $gc.ResolverHost{_patterns=new Map;addPattern(t,r){let s=Array.isArray(t)?t:[t];for(let a of s){let{output:o}=(0,qgc.parse)(a);this._patterns.set(new RegExp(`^${o}$`),r)}}_resolve(t){let r=t;return this._patterns.forEach((s,a)=>{a.test(t)&&(r=s(r))}),r}};SBt.PatternMatchingHost=R2r});var FZi=z(wBt=>{"use strict";Object.defineProperty(wBt,"__esModule",{value:!0});wBt.CordHost=void 0;var Yh=vb(),kq=Sq(),eAc=CBt(),D2r=class e extends eAc.SimpleMemoryHost{_back;_filesToCreate=new Set;_filesToRename=new Map;_filesToRenameRevert=new Map;_filesToDelete=new Set;_filesToOverwrite=new Set;constructor(t){super(),this._back=t}get backend(){return this._back}get capabilities(){return{synchronous:this._back.capabilities.synchronous}}clone(){let t=new e(this._back);return t._cache=new Map(this._cache),t._filesToCreate=new Set(this._filesToCreate),t._filesToRename=new Map(this._filesToRename),t._filesToRenameRevert=new Map(this._filesToRenameRevert),t._filesToDelete=new Set(this._filesToDelete),t._filesToOverwrite=new Set(this._filesToOverwrite),t}commit(t,r=!1){return(0,Yh.from)(this.records()).pipe((0,Yh.concatMap)(s=>{switch(s.kind){case"delete":return t.delete(s.path);case"rename":return t.rename(s.from,s.to);case"create":return t.exists(s.path).pipe((0,Yh.switchMap)(a=>a&&!r?(0,Yh.throwError)(new kq.FileAlreadyExistException(s.path)):t.write(s.path,s.content)));case"overwrite":return t.exists(s.path).pipe((0,Yh.switchMap)(a=>!a&&!r?(0,Yh.throwError)(new kq.FileDoesNotExistException(s.path)):t.write(s.path,s.content)))}}),(0,Yh.reduce)(()=>{}))}records(){return[...[...this._filesToDelete.values()].map(t=>({kind:"delete",path:t})),...[...this._filesToRename.entries()].map(([t,r])=>({kind:"rename",from:t,to:r})),...[...this._filesToCreate.values()].map(t=>({kind:"create",path:t,content:this._read(t)})),...[...this._filesToOverwrite.values()].map(t=>({kind:"overwrite",path:t,content:this._read(t)}))]}create(t,r){if(super._exists(t))throw new kq.FileAlreadyExistException(t);return this._filesToDelete.has(t)?(this._filesToDelete.delete(t),this._filesToOverwrite.add(t)):this._filesToCreate.add(t),super.write(t,r)}overwrite(t,r){return this.isDirectory(t).pipe((0,Yh.switchMap)(s=>s?(0,Yh.throwError)(new kq.PathIsDirectoryException(t)):this.exists(t)),(0,Yh.switchMap)(s=>s?(this._filesToCreate.has(t)||this._filesToOverwrite.add(t),super.write(t,r)):(0,Yh.throwError)(new kq.FileDoesNotExistException(t))))}write(t,r){return this.exists(t).pipe((0,Yh.switchMap)(s=>s?this.willRename(t)||this.willDelete(t)?this.create(t,r):this.overwrite(t,r):this.create(t,r)))}read(t){return this._exists(t)?super.read(t):this._back.read(t)}delete(t){if(this._exists(t)){if(this._filesToCreate.has(t))this._filesToCreate.delete(t);else if(this._filesToOverwrite.has(t))this._filesToOverwrite.delete(t),this._filesToDelete.add(t);else{let r=this._filesToRenameRevert.get(t);if(r)this._filesToRenameRevert.delete(t),this._filesToRename.delete(r),this._filesToDelete.add(r);else return(0,Yh.throwError)(new kq.UnknownException(`This should never happen. Path: ${JSON.stringify(t)}.`))}return super.delete(t)}else return this._back.exists(t).pipe((0,Yh.switchMap)(r=>r?(this._filesToDelete.add(t),(0,Yh.of)()):(0,Yh.throwError)(new kq.FileDoesNotExistException(t))))}rename(t,r){return(0,Yh.concat)(this.exists(r),this.exists(t)).pipe((0,Yh.toArray)(),(0,Yh.switchMap)(([s,a])=>{if(!a)return(0,Yh.throwError)(new kq.FileDoesNotExistException(t));if(t===r)return Yh.EMPTY;if(s)return(0,Yh.throwError)(new kq.FileAlreadyExistException(r));if(this._filesToCreate.has(t))return this._filesToCreate.delete(t),this._filesToCreate.add(r),super.rename(t,r);if(this._filesToOverwrite.has(t))return this._filesToOverwrite.delete(t),(0,Yh.concat)(this.rename(t,r),new Yh.Observable(g=>{this._filesToOverwrite.add(r),g.complete()}));if(this._filesToDelete.has(r))return this._filesToDelete.delete(r),this._filesToDelete.add(t),this._filesToOverwrite.add(r),this.read(t).pipe((0,Yh.map)(g=>this._write(r,g)));let o=this._filesToRenameRevert.get(t);return o&&(this._filesToRename.delete(o),this._filesToRenameRevert.delete(t),t=o),this._filesToRename.set(t,r),this._filesToRenameRevert.set(r,t),this._exists(t)?super.rename(t,r):this._back.read(t).pipe((0,Yh.switchMap)(g=>super.write(r,g)))}))}list(t){return(0,Yh.concat)(super.list(t),this._back.list(t)).pipe((0,Yh.reduce)((r,s)=>(s.forEach(a=>r.add(a)),r),new Set),(0,Yh.map)(r=>[...r]))}exists(t){return this._exists(t)?(0,Yh.of)(!0):this.willDelete(t)||this.willRename(t)?(0,Yh.of)(!1):this._back.exists(t)}isDirectory(t){return this._exists(t)?super.isDirectory(t):this._back.isDirectory(t)}isFile(t){return this._exists(t)?super.isFile(t):this.willDelete(t)||this.willRename(t)?(0,Yh.of)(!1):this._back.isFile(t)}stat(t){return this._exists(t)?super.stat(t):this.willDelete(t)||this.willRename(t)?(0,Yh.of)(null):this._back.stat(t)}watch(t,r){return null}willCreate(t){return this._filesToCreate.has(t)}willOverwrite(t){return this._filesToOverwrite.has(t)}willDelete(t){return this._filesToDelete.has(t)}willRename(t){return this._filesToRename.has(t)}willRenameTo(t,r){return this._filesToRename.get(t)===r}};wBt.CordHost=D2r});var ZZi=z(TBt=>{"use strict";Object.defineProperty(TBt,"__esModule",{value:!0});TBt.SafeReadonlyHost=void 0;var nae=vb(),x2r=class{_delegate;constructor(t){this._delegate=t}get capabilities(){return this._delegate.capabilities}read(t){return this._delegate.read(t)}list(t){return this._delegate.list(t).pipe((0,nae.catchError)(()=>(0,nae.of)([])))}exists(t){return this._delegate.exists(t)}isDirectory(t){return this._delegate.isDirectory(t).pipe((0,nae.catchError)(()=>(0,nae.of)(!1)))}isFile(t){return this._delegate.isFile(t).pipe((0,nae.catchError)(()=>(0,nae.of)(!1)))}stat(t){let r=this._delegate.stat(t);return r&&r.pipe((0,nae.catchError)(()=>(0,nae.of)(null)))}};TBt.SafeReadonlyHost=x2r});var VZi=z(NBt=>{"use strict";Object.defineProperty(NBt,"__esModule",{value:!0});NBt.ScopedHost=void 0;var LZi=jTe(),tAc=vXe(),k2r=class extends tAc.ResolverHost{_root;constructor(t,r=LZi.NormalizedRoot){super(t),this._root=r}_resolve(t){return(0,LZi.join)(this._root,t)}};NBt.ScopedHost=k2r});var PZi=z(a2=>{"use strict";var WZi=a2&&a2.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),rAc=a2&&a2.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),nAc=a2&&a2.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var s=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(s[s.length]=a);return s},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var s=e(t),a=0;a{"use strict";var OZi=d3&&d3.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),sAc=d3&&d3.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),oAc=d3&&d3.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var s=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(s[s.length]=a);return s},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var s=e(t),a=0;a{"use strict";Object.defineProperty(G2r,"__esModule",{value:!0});G2r.createWorkspaceHost=lAc;var DBt=vb(),tNe=RBt();function lAc(e){return{async readFile(r){let s=await(0,DBt.lastValueFrom)(e.read((0,tNe.normalize)(r)));return tNe.virtualFs.fileBufferToString(s)},async writeFile(r,s){return(0,DBt.lastValueFrom)(e.write((0,tNe.normalize)(r),tNe.virtualFs.stringToFileBuffer(s)))},async isDirectory(r){try{return await(0,DBt.lastValueFrom)(e.isDirectory((0,tNe.normalize)(r)))}catch{return!1}},async isFile(r){try{return await(0,DBt.lastValueFrom)(e.isFile((0,tNe.normalize)(r)))}catch{return!1}}}}});var kBt=z((MZi,xBt)=>{(function(e){if(typeof xBt=="object"&&typeof xBt.exports=="object"){var t=e(xt,MZi);t!==void 0&&(xBt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.createScanner=void 0;function r(p,f=!1){let m=p.length,y=0,B="",v=0,k=16,T=0,O=0,X=0,U=0,le=0;function ae(ke,x){let et=0,Ue=0;for(;et=48&&Je<=57)Ue=Ue*16+Je-48;else if(Je>=65&&Je<=70)Ue=Ue*16+Je-65+10;else if(Je>=97&&Je<=102)Ue=Ue*16+Je-97+10;else break;y++,et++}return et=m){ke+=p.substring(x,y),le=2;break}let et=p.charCodeAt(y);if(et===34){ke+=p.substring(x,y),y++;break}if(et===92){if(ke+=p.substring(x,y),y++,y>=m){le=2;break}switch(p.charCodeAt(y++)){case 34:ke+='"';break;case 92:ke+="\\";break;case 47:ke+="/";break;case 98:ke+="\b";break;case 102:ke+="\f";break;case 110:ke+=` +`;break;case 114:ke+="\r";break;case 116:ke+=" ";break;case 117:let Je=ae(4,!0);Je>=0?ke+=String.fromCharCode(Je):le=4;break;default:le=5}x=y;continue}if(et>=0&&et<=31)if(a(et)){ke+=p.substring(x,y),le=2;break}else le=6;y++}return ke}function he(){if(B="",le=0,v=y,O=T,U=X,y>=m)return v=m,k=17;let ke=p.charCodeAt(y);if(s(ke)){do y++,B+=String.fromCharCode(ke),ke=p.charCodeAt(y);while(s(ke));return k=15}if(a(ke))return y++,B+=String.fromCharCode(ke),ke===13&&p.charCodeAt(y)===10&&(y++,B+=` +`),T++,X=y,k=14;switch(ke){case 123:return y++,k=1;case 125:return y++,k=2;case 91:return y++,k=3;case 93:return y++,k=4;case 58:return y++,k=6;case 44:return y++,k=5;case 34:return y++,B=pe(),k=10;case 47:let x=y-1;if(p.charCodeAt(y+1)===47){for(y+=2;y=12&&ke<=15);return ke}return{setPosition:ge,getPosition:()=>y,scan:f?Te:he,getToken:()=>k,getTokenValue:()=>B,getTokenOffset:()=>v,getTokenLength:()=>y-v,getTokenStartLine:()=>O,getTokenStartCharacter:()=>v-U,getTokenError:()=>le}}t.createScanner=r;function s(p){return p===32||p===9}function a(p){return p===10||p===13}function o(p){return p>=48&&p<=57}var g;(function(p){p[p.lineFeed=10]="lineFeed",p[p.carriageReturn=13]="carriageReturn",p[p.space=32]="space",p[p._0=48]="_0",p[p._1=49]="_1",p[p._2=50]="_2",p[p._3=51]="_3",p[p._4=52]="_4",p[p._5=53]="_5",p[p._6=54]="_6",p[p._7=55]="_7",p[p._8=56]="_8",p[p._9=57]="_9",p[p.a=97]="a",p[p.b=98]="b",p[p.c=99]="c",p[p.d=100]="d",p[p.e=101]="e",p[p.f=102]="f",p[p.g=103]="g",p[p.h=104]="h",p[p.i=105]="i",p[p.j=106]="j",p[p.k=107]="k",p[p.l=108]="l",p[p.m=109]="m",p[p.n=110]="n",p[p.o=111]="o",p[p.p=112]="p",p[p.q=113]="q",p[p.r=114]="r",p[p.s=115]="s",p[p.t=116]="t",p[p.u=117]="u",p[p.v=118]="v",p[p.w=119]="w",p[p.x=120]="x",p[p.y=121]="y",p[p.z=122]="z",p[p.A=65]="A",p[p.B=66]="B",p[p.C=67]="C",p[p.D=68]="D",p[p.E=69]="E",p[p.F=70]="F",p[p.G=71]="G",p[p.H=72]="H",p[p.I=73]="I",p[p.J=74]="J",p[p.K=75]="K",p[p.L=76]="L",p[p.M=77]="M",p[p.N=78]="N",p[p.O=79]="O",p[p.P=80]="P",p[p.Q=81]="Q",p[p.R=82]="R",p[p.S=83]="S",p[p.T=84]="T",p[p.U=85]="U",p[p.V=86]="V",p[p.W=87]="W",p[p.X=88]="X",p[p.Y=89]="Y",p[p.Z=90]="Z",p[p.asterisk=42]="asterisk",p[p.backslash=92]="backslash",p[p.closeBrace=125]="closeBrace",p[p.closeBracket=93]="closeBracket",p[p.colon=58]="colon",p[p.comma=44]="comma",p[p.dot=46]="dot",p[p.doubleQuote=34]="doubleQuote",p[p.minus=45]="minus",p[p.openBrace=123]="openBrace",p[p.openBracket=91]="openBracket",p[p.plus=43]="plus",p[p.slash=47]="slash",p[p.formFeed=12]="formFeed",p[p.tab=9]="tab"})(g||(g={}))})});var YZi=z((HZi,GBt)=>{(function(e){if(typeof GBt=="object"&&typeof GBt.exports=="object"){var t=e(xt,HZi);t!==void 0&&(GBt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.supportedEols=t.cachedBreakLinesWithSpaces=t.cachedSpaces=void 0,t.cachedSpaces=new Array(20).fill(0).map((s,a)=>" ".repeat(a));let r=200;t.cachedBreakLinesWithSpaces={" ":{"\n":new Array(r).fill(0).map((s,a)=>` `+" ".repeat(a)),"\r":new Array(r).fill(0).map((s,a)=>"\r"+" ".repeat(a)),"\r\n":new Array(r).fill(0).map((s,a)=>`\r `+" ".repeat(a))}," ":{"\n":new Array(r).fill(0).map((s,a)=>` `+" ".repeat(a)),"\r":new Array(r).fill(0).map((s,a)=>"\r"+" ".repeat(a)),"\r\n":new Array(r).fill(0).map((s,a)=>`\r `+" ".repeat(a))}},t.supportedEols=[` `,"\r",`\r -`]})});var N2r=z((WZi,xBt)=>{var Ugc=RBt(),tZ=VZi();(function(e){if(typeof xBt=="object"&&typeof xBt.exports=="object"){var t=e(Dt,WZi);t!==void 0&&(xBt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./scanner","./string-intern"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isEOL=t.format=void 0;function r(p,f,m){let y,B,v,G,T;if(f){for(G=f.offset,T=G+f.length,v=G;v>0&&!g(p,v-1);)v--;let et=T;for(;et1)return s(O,U)+s(ae,y+le);let et=ae.length*(y+le);return!X||et>tZ.cachedBreakLinesWithSpaces[ge][O].length?O+s(ae,y+le):et<=0?O:tZ.cachedBreakLinesWithSpaces[ge][O][et]}function be(){let et=fe.scan();for(U=0;et===15||et===14;)et===14&&m.keepLines?U+=1:et===14&&(U=1),et=fe.scan();return pe=et===16||fe.getTokenError()!==0,et}let Te=[];function ke(et,Ue,Je){!pe&&(!f||UeG)&&p.substring(Ue,Je)!==et&&Te.push({offset:Ue,length:Je-Ue,content:et})}let x=be();if(m.keepLines&&U>0&&ke(s(O,U),0,0),x!==17){let et=fe.getTokenOffset()+v,Ue=ae.length*y<20&&m.insertSpaces?tZ.cachedSpaces[ae.length*y]:s(ae,y);ke(Ue,v,et)}for(;x!==17;){let et=fe.getTokenOffset()+fe.getTokenLength()+v,Ue=be(),Je="",Xe=!1;for(;U===0&&(Ue===12||Ue===13);){let Gt=fe.getTokenOffset()+v;ke(tZ.cachedSpaces[1],et,Gt),et=fe.getTokenOffset()+fe.getTokenLength()+v,Xe=Ue===12,Je=Xe?he():"",Ue=be()}if(Ue===2)x!==1&&le--,m.keepLines&&U>0||!m.keepLines&&x!==1?Je=he():m.keepLines&&(Je=tZ.cachedSpaces[1]);else if(Ue===4)x!==3&&le--,m.keepLines&&U>0||!m.keepLines&&x!==3?Je=he():m.keepLines&&(Je=tZ.cachedSpaces[1]);else{switch(x){case 3:case 1:le++,m.keepLines&&U>0||!m.keepLines?Je=he():Je=tZ.cachedSpaces[1];break;case 5:m.keepLines&&U>0||!m.keepLines?Je=he():Je=tZ.cachedSpaces[1];break;case 12:Je=he();break;case 13:U>0?Je=he():Xe||(Je=tZ.cachedSpaces[1]);break;case 6:m.keepLines&&U>0?Je=he():Xe||(Je=tZ.cachedSpaces[1]);break;case 10:m.keepLines&&U>0?Je=he():Ue===6&&!Xe&&(Je="");break;case 7:case 8:case 9:case 11:case 2:case 4:m.keepLines&&U>0?Je=he():(Ue===12||Ue===13)&&!Xe?Je=tZ.cachedSpaces[1]:Ue!==5&&Ue!==17&&(pe=!0);break;case 16:pe=!0;break}U>0&&(Ue===12||Ue===13)&&(Je=he())}Ue===17&&(m.keepLines&&U>0?Je=he():Je=m.insertFinalNewline?O:"");let ft=fe.getTokenOffset()+v;ke(Je,et,ft),x=Ue}return Te}t.format=r;function s(p,f){let m="";for(let y=0;y{var uAc=kBt(),rZ=YZi();(function(e){if(typeof FBt=="object"&&typeof FBt.exports=="object"){var t=e(xt,XZi);t!==void 0&&(FBt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./scanner","./string-intern"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isEOL=t.format=void 0;function r(p,f,m){let y,B,v,k,T;if(f){for(k=f.offset,T=k+f.length,v=k;v>0&&!g(p,v-1);)v--;let et=T;for(;et1)return s(O,U)+s(ae,y+le);let et=ae.length*(y+le);return!X||et>rZ.cachedBreakLinesWithSpaces[ge][O].length?O+s(ae,y+le):et<=0?O:rZ.cachedBreakLinesWithSpaces[ge][O][et]}function be(){let et=fe.scan();for(U=0;et===15||et===14;)et===14&&m.keepLines?U+=1:et===14&&(U=1),et=fe.scan();return pe=et===16||fe.getTokenError()!==0,et}let Te=[];function ke(et,Ue,Je){!pe&&(!f||Uek)&&p.substring(Ue,Je)!==et&&Te.push({offset:Ue,length:Je-Ue,content:et})}let x=be();if(m.keepLines&&U>0&&ke(s(O,U),0,0),x!==17){let et=fe.getTokenOffset()+v,Ue=ae.length*y<20&&m.insertSpaces?rZ.cachedSpaces[ae.length*y]:s(ae,y);ke(Ue,v,et)}for(;x!==17;){let et=fe.getTokenOffset()+fe.getTokenLength()+v,Ue=be(),Je="",Xe=!1;for(;U===0&&(Ue===12||Ue===13);){let Gt=fe.getTokenOffset()+v;ke(rZ.cachedSpaces[1],et,Gt),et=fe.getTokenOffset()+fe.getTokenLength()+v,Xe=Ue===12,Je=Xe?he():"",Ue=be()}if(Ue===2)x!==1&&le--,m.keepLines&&U>0||!m.keepLines&&x!==1?Je=he():m.keepLines&&(Je=rZ.cachedSpaces[1]);else if(Ue===4)x!==3&&le--,m.keepLines&&U>0||!m.keepLines&&x!==3?Je=he():m.keepLines&&(Je=rZ.cachedSpaces[1]);else{switch(x){case 3:case 1:le++,m.keepLines&&U>0||!m.keepLines?Je=he():Je=rZ.cachedSpaces[1];break;case 5:m.keepLines&&U>0||!m.keepLines?Je=he():Je=rZ.cachedSpaces[1];break;case 12:Je=he();break;case 13:U>0?Je=he():Xe||(Je=rZ.cachedSpaces[1]);break;case 6:m.keepLines&&U>0?Je=he():Xe||(Je=rZ.cachedSpaces[1]);break;case 10:m.keepLines&&U>0?Je=he():Ue===6&&!Xe&&(Je="");break;case 7:case 8:case 9:case 11:case 2:case 4:m.keepLines&&U>0?Je=he():(Ue===12||Ue===13)&&!Xe?Je=rZ.cachedSpaces[1]:Ue!==5&&Ue!==17&&(pe=!0);break;case 16:pe=!0;break}U>0&&(Ue===12||Ue===13)&&(Je=he())}Ue===17&&(m.keepLines&&U>0?Je=he():Je=m.insertFinalNewline?O:"");let ft=fe.getTokenOffset()+v;ke(Je,et,ft),x=Ue}return Te}t.format=r;function s(p,f){let m="";for(let y=0;y{var PZi=RBt();(function(e){if(typeof kBt=="object"&&typeof kBt.exports=="object"){var t=e(Dt,OZi);t!==void 0&&(kBt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./scanner"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getNodeType=t.stripComments=t.visit=t.findNodeAtOffset=t.contains=t.getNodeValue=t.getNodePath=t.findNodeAtLocation=t.parseTree=t.parse=t.getLocation=void 0;var r;(function(T){T.DEFAULT={allowTrailingComma:!1}})(r||(r={}));function s(T,O){let X=[],U=new Object,le,ae={value:{},offset:0,length:0,type:"object",parent:void 0},ge=!1;function fe(pe,he,be,Te){ae.value=pe,ae.offset=he,ae.length=be,ae.type=Te,ae.colonOffset=void 0,le=ae}try{B(T,{onObjectBegin:(pe,he)=>{if(O<=pe)throw U;le=void 0,ge=O>pe,X.push("")},onObjectProperty:(pe,he,be)=>{if(O{if(O<=pe)throw U;le=void 0,X.pop()},onArrayBegin:(pe,he)=>{if(O<=pe)throw U;le=void 0,X.push(0)},onArrayEnd:(pe,he)=>{if(O<=pe)throw U;le=void 0,X.pop()},onLiteralValue:(pe,he,be)=>{if(O{if(O<=he)throw U;if(pe===":"&&le&&le.type==="property")le.colonOffset=he,ge=!1,le=void 0;else if(pe===","){let Te=X[X.length-1];typeof Te=="number"?X[X.length-1]=Te+1:(ge=!0,X[X.length-1]=""),le=void 0}}})}catch(pe){if(pe!==U)throw pe}return{path:X,previousNode:le,isAtPropertyKey:ge,matches:pe=>{let he=0;for(let be=0;he{let pe={};ge(pe),ae.push(le),le=pe,U=null},onObjectProperty:pe=>{U=pe},onObjectEnd:()=>{le=ae.pop()},onArrayBegin:()=>{let pe=[];ge(pe),ae.push(le),le=pe,U=null},onArrayEnd:()=>{le=ae.pop()},onLiteralValue:ge,onError:(pe,he,be)=>{O.push({error:pe,offset:he,length:be})}},X),le[0]}t.parse=a;function o(T,O=[],X=r.DEFAULT){let U={type:"array",offset:-1,length:-1,children:[],parent:void 0};function le(pe){U.type==="property"&&(U.length=pe-U.offset,U=U.parent)}function ae(pe){return U.children.push(pe),pe}B(T,{onObjectBegin:pe=>{U=ae({type:"object",offset:pe,length:-1,parent:U,children:[]})},onObjectProperty:(pe,he,be)=>{U=ae({type:"property",offset:he,length:-1,parent:U,children:[]}),U.children.push({type:"string",value:pe,offset:he,length:be,parent:U})},onObjectEnd:(pe,he)=>{le(pe+he),U.length=pe+he-U.offset,U=U.parent,le(pe+he)},onArrayBegin:(pe,he)=>{U=ae({type:"array",offset:pe,length:-1,parent:U,children:[]})},onArrayEnd:(pe,he)=>{U.length=pe+he-U.offset,U=U.parent,le(pe+he)},onLiteralValue:(pe,he,be)=>{ae({type:G(pe),offset:he,length:be,parent:U,value:pe}),le(he+be)},onSeparator:(pe,he,be)=>{U.type==="property"&&(pe===":"?U.colonOffset=he:pe===","&&le(he))},onError:(pe,he,be)=>{O.push({error:pe,offset:he,length:be})}},X);let fe=U.children[0];return fe&&delete fe.parent,fe}t.parseTree=o;function g(T,O){if(!T)return;let X=T;for(let U of O)if(typeof U=="string"){if(X.type!=="object"||!Array.isArray(X.children))return;let le=!1;for(let ae of X.children)if(Array.isArray(ae.children)&&ae.children[0].value===U&&ae.children.length===2){X=ae.children[1],le=!0;break}if(!le)return}else{let le=U;if(X.type!=="array"||le<0||!Array.isArray(X.children)||le>=X.children.length)return;X=X.children[le]}return X}t.findNodeAtLocation=g;function p(T){if(!T.parent||!T.parent.children)return[];let O=p(T.parent);if(T.parent.type==="property"){let X=T.parent.children[0].value;O.push(X)}else if(T.parent.type==="array"){let X=T.parent.children.indexOf(T);X!==-1&&O.push(X)}return O}t.getNodePath=p;function f(T){switch(T.type){case"array":return T.children.map(f);case"object":let O=Object.create(null);for(let X of T.children){let U=X.children[1];U&&(O[X.children[0].value]=f(U))}return O;case"null":case"string":case"number":case"boolean":return T.value;default:return}}t.getNodeValue=f;function m(T,O,X=!1){return O>=T.offset&&Oae===0&&Br(U.getTokenOffset(),U.getTokenLength(),U.getTokenStartLine(),U.getTokenStartCharacter()):()=>!0}function fe(Br){return Br?tr=>ae===0&&Br(tr,U.getTokenOffset(),U.getTokenLength(),U.getTokenStartLine(),U.getTokenStartCharacter()):()=>!0}function pe(Br){return Br?tr=>ae===0&&Br(tr,U.getTokenOffset(),U.getTokenLength(),U.getTokenStartLine(),U.getTokenStartCharacter(),()=>le.slice()):()=>!0}function he(Br){return Br?()=>{ae>0?ae++:Br(U.getTokenOffset(),U.getTokenLength(),U.getTokenStartLine(),U.getTokenStartCharacter(),()=>le.slice())===!1&&(ae=1)}:()=>!0}function be(Br){return Br?()=>{ae>0&&ae--,ae===0&&Br(U.getTokenOffset(),U.getTokenLength(),U.getTokenStartLine(),U.getTokenStartCharacter())}:()=>!0}let Te=he(O.onObjectBegin),ke=pe(O.onObjectProperty),x=be(O.onObjectEnd),et=he(O.onArrayBegin),Ue=be(O.onArrayEnd),Je=pe(O.onLiteralValue),Xe=fe(O.onSeparator),ft=ge(O.onComment),Gt=fe(O.onError),er=X&&X.disallowComments,Ur=X&&X.allowTrailingComma;function Ot(){for(;;){let Br=U.scan();switch(U.getTokenError()){case 4:dr(14);break;case 5:dr(15);break;case 3:dr(13);break;case 1:er||dr(11);break;case 2:dr(12);break;case 6:dr(16);break}switch(Br){case 12:case 13:er?dr(10):ft();break;case 16:dr(1);break;case 15:case 14:break;default:return Br}}}function dr(Br,tr=[],gn=[]){if(Gt(Br),tr.length+gn.length>0){let Gn=U.getToken();for(;Gn!==17;){if(tr.indexOf(Gn)!==-1){Ot();break}else if(gn.indexOf(Gn)!==-1)break;Gn=Ot()}}}function Ar(Br){let tr=U.getTokenValue();return Br?Je(tr):(ke(tr),le.push(tr)),Ot(),!0}function or(){switch(U.getToken()){case 11:let Br=U.getTokenValue(),tr=Number(Br);isNaN(tr)&&(dr(2),tr=0),Je(tr);break;case 7:Je(null);break;case 8:Je(!0);break;case 9:Je(!1);break;default:return!1}return Ot(),!0}function Fr(){return U.getToken()!==10?(dr(3,[],[2,5]),!1):(Ar(!1),U.getToken()===6?(Xe(":"),Ot(),In()||dr(4,[],[2,5])):dr(5,[],[2,5]),le.pop(),!0)}function $r(){Te(),Ot();let Br=!1;for(;U.getToken()!==2&&U.getToken()!==17;){if(U.getToken()===5){if(Br||dr(4,[],[]),Xe(","),Ot(),U.getToken()===2&&Ur)break}else Br&&dr(6,[],[]);Fr()||dr(4,[],[2,5]),Br=!0}return x(),U.getToken()!==2?dr(7,[2],[]):Ot(),!0}function Or(){et(),Ot();let Br=!0,tr=!1;for(;U.getToken()!==4&&U.getToken()!==17;){if(U.getToken()===5){if(tr||dr(4,[],[]),Xe(","),Ot(),U.getToken()===4&&Ur)break}else tr&&dr(6,[],[]);Br?(le.push(0),Br=!1):le[le.length-1]++,In()||dr(4,[],[4,5]),tr=!0}return Ue(),Br||le.pop(),U.getToken()!==4?dr(8,[4],[]):Ot(),!0}function In(){switch(U.getToken()){case 3:return Or();case 1:return $r();case 10:return Ar(!0);default:return or()}}return Ot(),U.getToken()===17?X.allowEmptyContent?!0:(dr(4,[],[]),!1):In()?(U.getToken()!==17&&dr(9,[],[]),!0):(dr(4,[],[]),!1)}t.visit=B;function v(T,O){let X=(0,PZi.createScanner)(T),U=[],le,ae=0,ge;do switch(ge=X.getPosition(),le=X.scan(),le){case 12:case 13:case 17:ae!==ge&&U.push(T.substring(ae,ge)),O!==void 0&&U.push(X.getTokenValue().replace(/[^\r\n]/g,O)),ae=X.getPosition();break}while(le!==17);return U.join("")}t.stripComments=v;function G(T){switch(typeof T){case"boolean":return"boolean";case"number":return"number";case"string":return"string";case"object":{if(T){if(Array.isArray(T))return"array"}else return"null";return"object"}default:return"null"}}t.getNodeType=G})});var QZi=z((MZi,GBt)=>{var D2r=N2r(),x2r=R2r();(function(e){if(typeof GBt=="object"&&typeof GBt.exports=="object"){var t=e(Dt,MZi);t!==void 0&&(GBt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./format","./parser"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isWS=t.applyEdit=t.setProperty=t.removeProperty=void 0;function r(p,f,m){return s(p,f,void 0,m)}t.removeProperty=r;function s(p,f,m,y){let B=f.slice(),v=[],G=(0,x2r.parseTree)(p,v),T,O;for(;B.length>0&&(O=B.pop(),T=(0,x2r.findNodeAtLocation)(G,B),T===void 0&&m!==void 0);)typeof O=="string"?m={[O]:m}:m=[m];if(T)if(T.type==="object"&&typeof O=="string"&&Array.isArray(T.children)){let X=(0,x2r.findNodeAtLocation)(T,[O]);if(X!==void 0)if(m===void 0){if(!X.parent)throw new Error("Malformed AST");let U=T.children.indexOf(X.parent),le,ae=X.parent.offset+X.parent.length;if(U>0){let ge=T.children[U-1];le=ge.offset+ge.length}else le=T.offset+1,T.children.length>1&&(ae=T.children[1].offset);return a(p,{offset:le,length:ae-le,content:""},y)}else return a(p,{offset:X.offset,length:X.length,content:JSON.stringify(m)},y);else{if(m===void 0)return[];let U=`${JSON.stringify(O)}: ${JSON.stringify(m)}`,le=y.getInsertionIndex?y.getInsertionIndex(T.children.map(ge=>ge.children[0].value)):T.children.length,ae;if(le>0){let ge=T.children[le-1];ae={offset:ge.offset+ge.length,length:0,content:","+U}}else T.children.length===0?ae={offset:T.offset+1,length:0,content:U}:ae={offset:T.offset+1,length:0,content:U+","};return a(p,ae,y)}}else if(T.type==="array"&&typeof O=="number"&&Array.isArray(T.children)){let X=O;if(X===-1){let U=`${JSON.stringify(m)}`,le;if(T.children.length===0)le={offset:T.offset+1,length:0,content:U};else{let ae=T.children[T.children.length-1];le={offset:ae.offset+ae.length,length:0,content:","+U}}return a(p,le,y)}else if(m===void 0&&T.children.length>=0){let U=O,le=T.children[U],ae;if(T.children.length===1)ae={offset:T.offset+1,length:T.length-2,content:""};else if(T.children.length-1===U){let ge=T.children[U-1],fe=ge.offset+ge.length,pe=T.offset+T.length;ae={offset:fe,length:pe-2-fe,content:""}}else ae={offset:le.offset,length:T.children[U+1].offset-le.offset,content:""};return a(p,ae,y)}else if(m!==void 0){let U,le=`${JSON.stringify(m)}`;if(!y.isArrayInsertion&&T.children.length>O){let ae=T.children[O];U={offset:ae.offset,length:ae.length,content:le}}else if(T.children.length===0||O===0)U={offset:T.offset+1,length:0,content:T.children.length===0?le:le+","};else{let ae=O>T.children.length?T.children.length:O,ge=T.children[ae-1];U={offset:ge.offset+ge.length,length:0,content:","+le}}return a(p,U,y)}else throw new Error(`Can not ${m===void 0?"remove":y.isArrayInsertion?"insert":"modify"} Array index ${X} as length is not sufficient`)}else throw new Error(`Can not add ${typeof O!="number"?"index":"property"} to parent of type ${T.type}`);else{if(m===void 0)throw new Error("Can not delete in empty document");return a(p,{offset:G?G.offset:0,length:G?G.length:0,content:JSON.stringify(m)},y)}}t.setProperty=s;function a(p,f,m){if(!m.formattingOptions)return[f];let y=o(p,f),B=f.offset,v=f.offset+f.content.length;if(f.length===0||f.content.length===0){for(;B>0&&!(0,D2r.isEOL)(y,B-1);)B--;for(;v=0;O--){let X=G[O];y=o(y,X),B=Math.min(B,X.offset),v=Math.max(v,X.offset+X.length),v+=X.content.length-X.length}let T=p.length-(y.length-v)-B;return[{offset:B,length:T,content:y.substring(B,v)}]}function o(p,f){return p.substring(0,f.offset)+f.content+p.substring(f.offset+f.length)}t.applyEdit=o;function g(p,f){return`\r - `.indexOf(p.charAt(f))!==-1}t.isWS=g})});var eNe=z((HZi,FBt)=>{var Kgc=N2r(),YZi=QZi(),jgc=RBt(),xq=R2r();(function(e){if(typeof FBt=="object"&&typeof FBt.exports=="object"){var t=e(Dt,HZi);t!==void 0&&(FBt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./impl/format","./impl/edit","./impl/scanner","./impl/parser"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.applyEdits=t.modify=t.format=t.printParseErrorCode=t.ParseErrorCode=t.stripComments=t.visit=t.getNodeValue=t.getNodePath=t.findNodeAtOffset=t.findNodeAtLocation=t.parseTree=t.parse=t.getLocation=t.SyntaxKind=t.ScanError=t.createScanner=void 0,t.createScanner=jgc.createScanner;var r;(function(m){m[m.None=0]="None",m[m.UnexpectedEndOfComment=1]="UnexpectedEndOfComment",m[m.UnexpectedEndOfString=2]="UnexpectedEndOfString",m[m.UnexpectedEndOfNumber=3]="UnexpectedEndOfNumber",m[m.InvalidUnicode=4]="InvalidUnicode",m[m.InvalidEscapeCharacter=5]="InvalidEscapeCharacter",m[m.InvalidCharacter=6]="InvalidCharacter"})(r||(t.ScanError=r={}));var s;(function(m){m[m.OpenBraceToken=1]="OpenBraceToken",m[m.CloseBraceToken=2]="CloseBraceToken",m[m.OpenBracketToken=3]="OpenBracketToken",m[m.CloseBracketToken=4]="CloseBracketToken",m[m.CommaToken=5]="CommaToken",m[m.ColonToken=6]="ColonToken",m[m.NullKeyword=7]="NullKeyword",m[m.TrueKeyword=8]="TrueKeyword",m[m.FalseKeyword=9]="FalseKeyword",m[m.StringLiteral=10]="StringLiteral",m[m.NumericLiteral=11]="NumericLiteral",m[m.LineCommentTrivia=12]="LineCommentTrivia",m[m.BlockCommentTrivia=13]="BlockCommentTrivia",m[m.LineBreakTrivia=14]="LineBreakTrivia",m[m.Trivia=15]="Trivia",m[m.Unknown=16]="Unknown",m[m.EOF=17]="EOF"})(s||(t.SyntaxKind=s={})),t.getLocation=xq.getLocation,t.parse=xq.parse,t.parseTree=xq.parseTree,t.findNodeAtLocation=xq.findNodeAtLocation,t.findNodeAtOffset=xq.findNodeAtOffset,t.getNodePath=xq.getNodePath,t.getNodeValue=xq.getNodeValue,t.visit=xq.visit,t.stripComments=xq.stripComments;var a;(function(m){m[m.InvalidSymbol=1]="InvalidSymbol",m[m.InvalidNumberFormat=2]="InvalidNumberFormat",m[m.PropertyNameExpected=3]="PropertyNameExpected",m[m.ValueExpected=4]="ValueExpected",m[m.ColonExpected=5]="ColonExpected",m[m.CommaExpected=6]="CommaExpected",m[m.CloseBraceExpected=7]="CloseBraceExpected",m[m.CloseBracketExpected=8]="CloseBracketExpected",m[m.EndOfFileExpected=9]="EndOfFileExpected",m[m.InvalidCommentToken=10]="InvalidCommentToken",m[m.UnexpectedEndOfComment=11]="UnexpectedEndOfComment",m[m.UnexpectedEndOfString=12]="UnexpectedEndOfString",m[m.UnexpectedEndOfNumber=13]="UnexpectedEndOfNumber",m[m.InvalidUnicode=14]="InvalidUnicode",m[m.InvalidEscapeCharacter=15]="InvalidEscapeCharacter",m[m.InvalidCharacter=16]="InvalidCharacter"})(a||(t.ParseErrorCode=a={}));function o(m){switch(m){case 1:return"InvalidSymbol";case 2:return"InvalidNumberFormat";case 3:return"PropertyNameExpected";case 4:return"ValueExpected";case 5:return"ColonExpected";case 6:return"CommaExpected";case 7:return"CloseBraceExpected";case 8:return"CloseBracketExpected";case 9:return"EndOfFileExpected";case 10:return"InvalidCommentToken";case 11:return"UnexpectedEndOfComment";case 12:return"UnexpectedEndOfString";case 13:return"UnexpectedEndOfNumber";case 14:return"InvalidUnicode";case 15:return"InvalidEscapeCharacter";case 16:return"InvalidCharacter"}return""}t.printParseErrorCode=o;function g(m,y,B){return Kgc.format(m,y,B)}t.format=g;function p(m,y,B,v){return YZi.setProperty(m,y,B,v)}t.modify=p;function f(m,y){let B=y.slice(0).sort((G,T)=>{let O=G.offset-T.offset;return O===0?G.length-T.length:O}),v=m.length;for(let G=B.length-1;G>=0;G--){let T=B[G];if(T.offset+T.length<=v)m=YZi.applyEdit(m,T);else throw new Error("Overlapping edit");v=T.offset}return m}t.applyEdits=f})});var G2r=z(tNe=>{"use strict";Object.defineProperty(tNe,"__esModule",{value:!0});tNe.JsonWorkspaceMetadata=tNe.JsonWorkspaceSymbol=void 0;var XZi=eNe();tNe.JsonWorkspaceSymbol=Symbol.for("@angular/core:workspace-json");function JZi(e){return e.replace("~","~0").replace("/","~1")}var k2r=class{filePath;ast;raw;changes=new Map;hasLegacyTargetsName=!0;constructor(t,r,s){this.filePath=t,this.ast=r,this.raw=s}get hasChanges(){return this.changes.size>0}get changeCount(){return this.changes.size}getNodeValueFromAst(t){let r=(0,XZi.findNodeAtLocation)(this.ast,t);return r&&(0,XZi.getNodeValue)(r)}findChangesForPath(t){return this.changes.get(t)}addChange(t,r,s){let a="";for(let g=0;gJZi(g)).join("/");for(let g of this.changes.keys())g.startsWith(o+"/")&&this.changes.delete(g);this.changes.set(o,{jsonPath:t,type:s,value:r})}};tNe.JsonWorkspaceMetadata=k2r});var jZi=z(F2r=>{"use strict";Object.defineProperty(F2r,"__esModule",{value:!0});F2r.createVirtualAstObject=qgc;var zgc=$2t();function qgc(e,t={}){let r=(s,a,o,g)=>{t.listener&&(o===g||JSON.stringify(o)===JSON.stringify(g)||(Array.isArray(a)?t.listener(s.slice(0,-1),a):t.listener(s,g)))};return KZi(Array.isArray(e)?[...e]:{...e},[],r,new Set(t.exclude),t.include?.length?new Set(t.include):void 0)}function KZi(e,t,r,s=new Set,a){return new Proxy(e,{getOwnPropertyDescriptor(o,g){if(!(s.has(g)||a&&!a.has(g)))return Reflect.getOwnPropertyDescriptor(o,g)},has(o,g){return typeof g=="symbol"||s.has(g)?!1:Reflect.has(o,g)},get(o,g){if(s.has(g)||a&&!a.has(g))return;let p=Reflect.get(o,g);return typeof g=="symbol"?p:(0,zgc.isJsonObject)(p)&&!(p instanceof Map)||Array.isArray(p)?KZi(p,[...t,g],r):p},set(o,g,p){if(s.has(g)||a&&!a.has(g))return!1;if(p===void 0)return this.deleteProperty?.(o,g)??!1;if(typeof g=="symbol")return Reflect.set(o,g,p);let f=UZi(o,g);return Reflect.set(o,g,p)?(r([...t,g],o,f,p),!0):!1},deleteProperty(o,g){if(s.has(g))return!1;if(typeof g=="symbol")return Reflect.deleteProperty(o,g);let p=UZi(o,g);return Reflect.deleteProperty(o,g)&&r([...t,g],o,p,void 0),!0},defineProperty(o,g,p){return typeof g=="symbol"?Reflect.defineProperty(o,g,p):!1},ownKeys(o){return Reflect.ownKeys(o).filter(g=>!s.has(g)&&(!a||a.has(g)))}})}function UZi(e,t){if(Array.isArray(e)&&isFinite(+t))return e[+t];if(e&&t in e)return e[t]}});var $Zi=z(Z2r=>{"use strict";Object.defineProperty(Z2r,"__esModule",{value:!0});Z2r.readJsonWorkspace=tAc;var kq=eNe(),LBt=SIe(),zZi=e2r(),qZi=G2r(),ZBt=jZi(),$gc=Object.freeze(["cli","newProjectRoot","schematics"]),eAc=Object.freeze(["cli","schematics","projectType","i18n"]);async function tAc(e,t,r={}){let s=await t.readFile(e);if(s===void 0)throw new Error("Unable to read workspace file.");let a=(0,kq.parseTree)(s,void 0,{allowTrailingComma:!0,disallowComments:!1});if(a?.type!=="object"||!a.children)throw new Error("Invalid workspace file - expected JSON object.");let o=(0,kq.findNodeAtLocation)(a,["version"]);if(!o)throw new Error("Unknown format - version specifier not found.");let g=o.value;if(g!==1)throw new Error(`Invalid format version detected - Expected:[ 1 ] Found: [ ${g} ]`);let p={host:t,metadata:new qZi.JsonWorkspaceMetadata(e,a,s),trackChanges:!0,unprefixedWorkspaceExtensions:new Set([...$gc,...r.allowedWorkspaceExtensions??[]]),unprefixedProjectExtensions:new Set([...eAc,...r.allowedProjectExtensions??[]]),error(m,y){throw new Error(m)},warn(m,y){console.warn(m)}};return rAc(a,p)}function rAc(e,t){let r=t.metadata,s,a;t.trackChanges||(a=Object.create(null));let o=(0,kq.getNodeValue)(e);for(let[f,m]of Object.entries(o))if(!(f==="$schema"||f==="version"))if(f==="projects"){let y=(0,kq.findNodeAtLocation)(e,["projects"]);if(!(0,LBt.isJsonObject)(m)||!y){t.error('Invalid "projects" field found; expected an object.',m);continue}s=nAc(y,t)}else!t.unprefixedWorkspaceExtensions.has(f)&&!/^[a-z]{1,3}-.*/.test(f)&&t.warn(`Workspace extension with invalid name (${f}) found.`,f),a&&(a[f]=m);let g;t.trackChanges&&(g=(f,m)=>{r.addChange(["projects",f],m,"project")});let p=new zZi.ProjectDefinitionCollection(s,g);return{[qZi.JsonWorkspaceSymbol]:r,projects:p,extensions:a??(0,ZBt.createVirtualAstObject)(o,{exclude:["$schema","version","projects"],listener(f,m){r.addChange(f,m)}})}}function nAc(e,t){let r=Object.create(null);for(let[s,a]of Object.entries((0,kq.getNodeValue)(e))){let o=(0,kq.findNodeAtLocation)(e,[s]);if(!(0,LBt.isJsonObject)(a)||!o){t.warn("Skipping invalid project value; expected an object.",a);continue}r[s]=iAc(s,o,t)}return r}function iAc(e,t,r){let s=r.metadata,a,o=!1,g,p;r.trackChanges||(g=Object.create(null),p=Object.create(null));let f=(0,kq.getNodeValue)(t);if(!("root"in f))throw new Error(`Project "${e}" is missing a required property "root".`);for(let[G,T]of Object.entries(f))switch(G){case"targets":case"architect":{let O=(0,kq.findNodeAtLocation)(t,[G]);if(!(0,LBt.isJsonObject)(T)||!O){r.error(`Invalid "${G}" field found; expected an object.`,T);break}o=!0,a=sAc(e,O,r),s.hasLegacyTargetsName=G==="architect";break}case"prefix":case"root":case"sourceRoot":typeof T!="string"&&r.warn(`Project property "${G}" should be a string.`,T),p&&(p[G]=T);break;default:!r.unprefixedProjectExtensions.has(G)&&!/^[a-z]{1,3}-.*/.test(G)&&r.warn(`Project '${e}' contains extension with invalid name (${G}).`,G),g&&(g[G]=T);break}let m;r.trackChanges&&(m=(G,T,O)=>{o?s.addChange(["projects",e,"targets",G],T,"target"):s.addChange(["projects",e,"targets"],O,"targetcollection")});let y={targets:new zZi.TargetDefinitionCollection(a,m),extensions:g??(0,ZBt.createVirtualAstObject)(f,{exclude:["architect","prefix","root","sourceRoot","targets"],listener(G,T){s.addChange(["projects",e,...G],T)}})},B=new Set(Object.keys(y)),v=p??(0,ZBt.createVirtualAstObject)(f,{include:["prefix","root","sourceRoot",...B],listener(G,T){B.has(G[0])||s.addChange(["projects",e,...G],T)}});return Object.assign(v,y)}function sAc(e,t,r){let s=r.metadata,a=Object.create(null);for(let[o,g]of Object.entries((0,kq.getNodeValue)(t))){if(!(0,LBt.isJsonObject)(g)){r.warn("Skipping invalid target value; expected an object.",g);continue}r.trackChanges?a[o]=(0,ZBt.createVirtualAstObject)(g,{include:["builder","options","configurations","defaultConfiguration"],listener(p,f){s.addChange(["projects",e,"targets",o,...p],f)}}):a[o]=g}return a}});var nLi=z(V2r=>{"use strict";Object.defineProperty(V2r,"__esModule",{value:!0});V2r.writeJsonWorkspace=cAc;var eLi=eNe(),oAc=Dt("node:os"),aAc=G2r();async function cAc(e,t,r,s={}){let a=e[aAc.JsonWorkspaceSymbol];if(a){if(!a.hasChanges)return;let o=AAc(a);return t.writeFile(r??a.filePath,o)}else{if(!r)throw new Error("path option is required");let o=lAc(e,s.schema),g=JSON.stringify(o,null,2);return t.writeFile(r,g)}}function lAc(e,t){return{$schema:t||"./node_modules/@angular/cli/lib/config/schema.json",version:1,...e.extensions,...wXe(e.projects)?{}:{projects:tLi(e.projects)}}}function tLi(e){let t=Object.create(null);for(let[r,s]of e)t[r]=rLi(s);return t}function rLi(e){let t;if(e.targets.size>0){t=Object.create(null);for(let[s,a]of e.targets)t[s]=L2r(a)}return{...e.extensions,root:e.root,...e.sourceRoot===void 0?{}:{sourceRoot:e.sourceRoot},...e.prefix===void 0?{}:{prefix:e.prefix},...t===void 0?{}:{architect:t}}}function wXe(e){return e===void 0||Object.keys(e).length===0}function L2r(e){return{builder:e.builder,...wXe(e.options)?{}:{options:e.options},...wXe(e.configurations)?{}:{configurations:e.configurations},...e.defaultConfiguration===void 0?{}:{defaultConfiguration:e.defaultConfiguration}}}function uAc(e){let t=Object.create(null);for(let[r,s]of e)t[r]=L2r(s);return t}function gAc(e,t){if(e!==void 0)switch(t){case"project":return rLi(e);case"projectcollection":{let r=tLi(e);return wXe(r)?void 0:r}case"target":return L2r(e);case"targetcollection":{let r=uAc(e);return wXe(r)?void 0:r}default:return e}}function AAc(e){let{raw:t}=e,{changes:r,hasLegacyTargetsName:s}=e;for(let{jsonPath:a,value:o,type:g}of r.values()){s&&a[2]==="targets"&&(a[2]="architect");let p=(0,eLi.modify)(t,a,gAc(o,g),{formattingOptions:{insertSpaces:!0,tabSize:2,eol:dAc(t)}});t=(0,eLi.applyEdits)(t,p)}return t}function dAc(e){let t=`\r +`.indexOf(p.charAt(f))!==-1}t.isEOL=g})});var Z2r=z((UZi,ZBt)=>{var JZi=kBt();(function(e){if(typeof ZBt=="object"&&typeof ZBt.exports=="object"){var t=e(xt,UZi);t!==void 0&&(ZBt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./scanner"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getNodeType=t.stripComments=t.visit=t.findNodeAtOffset=t.contains=t.getNodeValue=t.getNodePath=t.findNodeAtLocation=t.parseTree=t.parse=t.getLocation=void 0;var r;(function(T){T.DEFAULT={allowTrailingComma:!1}})(r||(r={}));function s(T,O){let X=[],U=new Object,le,ae={value:{},offset:0,length:0,type:"object",parent:void 0},ge=!1;function fe(pe,he,be,Te){ae.value=pe,ae.offset=he,ae.length=be,ae.type=Te,ae.colonOffset=void 0,le=ae}try{B(T,{onObjectBegin:(pe,he)=>{if(O<=pe)throw U;le=void 0,ge=O>pe,X.push("")},onObjectProperty:(pe,he,be)=>{if(O{if(O<=pe)throw U;le=void 0,X.pop()},onArrayBegin:(pe,he)=>{if(O<=pe)throw U;le=void 0,X.push(0)},onArrayEnd:(pe,he)=>{if(O<=pe)throw U;le=void 0,X.pop()},onLiteralValue:(pe,he,be)=>{if(O{if(O<=he)throw U;if(pe===":"&&le&&le.type==="property")le.colonOffset=he,ge=!1,le=void 0;else if(pe===","){let Te=X[X.length-1];typeof Te=="number"?X[X.length-1]=Te+1:(ge=!0,X[X.length-1]=""),le=void 0}}})}catch(pe){if(pe!==U)throw pe}return{path:X,previousNode:le,isAtPropertyKey:ge,matches:pe=>{let he=0;for(let be=0;he{let pe={};ge(pe),ae.push(le),le=pe,U=null},onObjectProperty:pe=>{U=pe},onObjectEnd:()=>{le=ae.pop()},onArrayBegin:()=>{let pe=[];ge(pe),ae.push(le),le=pe,U=null},onArrayEnd:()=>{le=ae.pop()},onLiteralValue:ge,onError:(pe,he,be)=>{O.push({error:pe,offset:he,length:be})}},X),le[0]}t.parse=a;function o(T,O=[],X=r.DEFAULT){let U={type:"array",offset:-1,length:-1,children:[],parent:void 0};function le(pe){U.type==="property"&&(U.length=pe-U.offset,U=U.parent)}function ae(pe){return U.children.push(pe),pe}B(T,{onObjectBegin:pe=>{U=ae({type:"object",offset:pe,length:-1,parent:U,children:[]})},onObjectProperty:(pe,he,be)=>{U=ae({type:"property",offset:he,length:-1,parent:U,children:[]}),U.children.push({type:"string",value:pe,offset:he,length:be,parent:U})},onObjectEnd:(pe,he)=>{le(pe+he),U.length=pe+he-U.offset,U=U.parent,le(pe+he)},onArrayBegin:(pe,he)=>{U=ae({type:"array",offset:pe,length:-1,parent:U,children:[]})},onArrayEnd:(pe,he)=>{U.length=pe+he-U.offset,U=U.parent,le(pe+he)},onLiteralValue:(pe,he,be)=>{ae({type:k(pe),offset:he,length:be,parent:U,value:pe}),le(he+be)},onSeparator:(pe,he,be)=>{U.type==="property"&&(pe===":"?U.colonOffset=he:pe===","&&le(he))},onError:(pe,he,be)=>{O.push({error:pe,offset:he,length:be})}},X);let fe=U.children[0];return fe&&delete fe.parent,fe}t.parseTree=o;function g(T,O){if(!T)return;let X=T;for(let U of O)if(typeof U=="string"){if(X.type!=="object"||!Array.isArray(X.children))return;let le=!1;for(let ae of X.children)if(Array.isArray(ae.children)&&ae.children[0].value===U&&ae.children.length===2){X=ae.children[1],le=!0;break}if(!le)return}else{let le=U;if(X.type!=="array"||le<0||!Array.isArray(X.children)||le>=X.children.length)return;X=X.children[le]}return X}t.findNodeAtLocation=g;function p(T){if(!T.parent||!T.parent.children)return[];let O=p(T.parent);if(T.parent.type==="property"){let X=T.parent.children[0].value;O.push(X)}else if(T.parent.type==="array"){let X=T.parent.children.indexOf(T);X!==-1&&O.push(X)}return O}t.getNodePath=p;function f(T){switch(T.type){case"array":return T.children.map(f);case"object":let O=Object.create(null);for(let X of T.children){let U=X.children[1];U&&(O[X.children[0].value]=f(U))}return O;case"null":case"string":case"number":case"boolean":return T.value;default:return}}t.getNodeValue=f;function m(T,O,X=!1){return O>=T.offset&&Oae===0&&Br(U.getTokenOffset(),U.getTokenLength(),U.getTokenStartLine(),U.getTokenStartCharacter()):()=>!0}function fe(Br){return Br?tr=>ae===0&&Br(tr,U.getTokenOffset(),U.getTokenLength(),U.getTokenStartLine(),U.getTokenStartCharacter()):()=>!0}function pe(Br){return Br?tr=>ae===0&&Br(tr,U.getTokenOffset(),U.getTokenLength(),U.getTokenStartLine(),U.getTokenStartCharacter(),()=>le.slice()):()=>!0}function he(Br){return Br?()=>{ae>0?ae++:Br(U.getTokenOffset(),U.getTokenLength(),U.getTokenStartLine(),U.getTokenStartCharacter(),()=>le.slice())===!1&&(ae=1)}:()=>!0}function be(Br){return Br?()=>{ae>0&&ae--,ae===0&&Br(U.getTokenOffset(),U.getTokenLength(),U.getTokenStartLine(),U.getTokenStartCharacter())}:()=>!0}let Te=he(O.onObjectBegin),ke=pe(O.onObjectProperty),x=be(O.onObjectEnd),et=he(O.onArrayBegin),Ue=be(O.onArrayEnd),Je=pe(O.onLiteralValue),Xe=fe(O.onSeparator),ft=ge(O.onComment),Gt=fe(O.onError),er=X&&X.disallowComments,Ur=X&&X.allowTrailingComma;function Ot(){for(;;){let Br=U.scan();switch(U.getTokenError()){case 4:dr(14);break;case 5:dr(15);break;case 3:dr(13);break;case 1:er||dr(11);break;case 2:dr(12);break;case 6:dr(16);break}switch(Br){case 12:case 13:er?dr(10):ft();break;case 16:dr(1);break;case 15:case 14:break;default:return Br}}}function dr(Br,tr=[],gn=[]){if(Gt(Br),tr.length+gn.length>0){let Gn=U.getToken();for(;Gn!==17;){if(tr.indexOf(Gn)!==-1){Ot();break}else if(gn.indexOf(Gn)!==-1)break;Gn=Ot()}}}function Ar(Br){let tr=U.getTokenValue();return Br?Je(tr):(ke(tr),le.push(tr)),Ot(),!0}function or(){switch(U.getToken()){case 11:let Br=U.getTokenValue(),tr=Number(Br);isNaN(tr)&&(dr(2),tr=0),Je(tr);break;case 7:Je(null);break;case 8:Je(!0);break;case 9:Je(!1);break;default:return!1}return Ot(),!0}function Fr(){return U.getToken()!==10?(dr(3,[],[2,5]),!1):(Ar(!1),U.getToken()===6?(Xe(":"),Ot(),In()||dr(4,[],[2,5])):dr(5,[],[2,5]),le.pop(),!0)}function $r(){Te(),Ot();let Br=!1;for(;U.getToken()!==2&&U.getToken()!==17;){if(U.getToken()===5){if(Br||dr(4,[],[]),Xe(","),Ot(),U.getToken()===2&&Ur)break}else Br&&dr(6,[],[]);Fr()||dr(4,[],[2,5]),Br=!0}return x(),U.getToken()!==2?dr(7,[2],[]):Ot(),!0}function Or(){et(),Ot();let Br=!0,tr=!1;for(;U.getToken()!==4&&U.getToken()!==17;){if(U.getToken()===5){if(tr||dr(4,[],[]),Xe(","),Ot(),U.getToken()===4&&Ur)break}else tr&&dr(6,[],[]);Br?(le.push(0),Br=!1):le[le.length-1]++,In()||dr(4,[],[4,5]),tr=!0}return Ue(),Br||le.pop(),U.getToken()!==4?dr(8,[4],[]):Ot(),!0}function In(){switch(U.getToken()){case 3:return Or();case 1:return $r();case 10:return Ar(!0);default:return or()}}return Ot(),U.getToken()===17?X.allowEmptyContent?!0:(dr(4,[],[]),!1):In()?(U.getToken()!==17&&dr(9,[],[]),!0):(dr(4,[],[]),!1)}t.visit=B;function v(T,O){let X=(0,JZi.createScanner)(T),U=[],le,ae=0,ge;do switch(ge=X.getPosition(),le=X.scan(),le){case 12:case 13:case 17:ae!==ge&&U.push(T.substring(ae,ge)),O!==void 0&&U.push(X.getTokenValue().replace(/[^\r\n]/g,O)),ae=X.getPosition();break}while(le!==17);return U.join("")}t.stripComments=v;function k(T){switch(typeof T){case"boolean":return"boolean";case"number":return"number";case"string":return"string";case"object":{if(T){if(Array.isArray(T))return"array"}else return"null";return"object"}default:return"null"}}t.getNodeType=k})});var jZi=z((KZi,LBt)=>{var L2r=F2r(),V2r=Z2r();(function(e){if(typeof LBt=="object"&&typeof LBt.exports=="object"){var t=e(xt,KZi);t!==void 0&&(LBt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./format","./parser"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isWS=t.applyEdit=t.setProperty=t.removeProperty=void 0;function r(p,f,m){return s(p,f,void 0,m)}t.removeProperty=r;function s(p,f,m,y){let B=f.slice(),v=[],k=(0,V2r.parseTree)(p,v),T,O;for(;B.length>0&&(O=B.pop(),T=(0,V2r.findNodeAtLocation)(k,B),T===void 0&&m!==void 0);)typeof O=="string"?m={[O]:m}:m=[m];if(T)if(T.type==="object"&&typeof O=="string"&&Array.isArray(T.children)){let X=(0,V2r.findNodeAtLocation)(T,[O]);if(X!==void 0)if(m===void 0){if(!X.parent)throw new Error("Malformed AST");let U=T.children.indexOf(X.parent),le,ae=X.parent.offset+X.parent.length;if(U>0){let ge=T.children[U-1];le=ge.offset+ge.length}else le=T.offset+1,T.children.length>1&&(ae=T.children[1].offset);return a(p,{offset:le,length:ae-le,content:""},y)}else return a(p,{offset:X.offset,length:X.length,content:JSON.stringify(m)},y);else{if(m===void 0)return[];let U=`${JSON.stringify(O)}: ${JSON.stringify(m)}`,le=y.getInsertionIndex?y.getInsertionIndex(T.children.map(ge=>ge.children[0].value)):T.children.length,ae;if(le>0){let ge=T.children[le-1];ae={offset:ge.offset+ge.length,length:0,content:","+U}}else T.children.length===0?ae={offset:T.offset+1,length:0,content:U}:ae={offset:T.offset+1,length:0,content:U+","};return a(p,ae,y)}}else if(T.type==="array"&&typeof O=="number"&&Array.isArray(T.children)){let X=O;if(X===-1){let U=`${JSON.stringify(m)}`,le;if(T.children.length===0)le={offset:T.offset+1,length:0,content:U};else{let ae=T.children[T.children.length-1];le={offset:ae.offset+ae.length,length:0,content:","+U}}return a(p,le,y)}else if(m===void 0&&T.children.length>=0){let U=O,le=T.children[U],ae;if(T.children.length===1)ae={offset:T.offset+1,length:T.length-2,content:""};else if(T.children.length-1===U){let ge=T.children[U-1],fe=ge.offset+ge.length,pe=T.offset+T.length;ae={offset:fe,length:pe-2-fe,content:""}}else ae={offset:le.offset,length:T.children[U+1].offset-le.offset,content:""};return a(p,ae,y)}else if(m!==void 0){let U,le=`${JSON.stringify(m)}`;if(!y.isArrayInsertion&&T.children.length>O){let ae=T.children[O];U={offset:ae.offset,length:ae.length,content:le}}else if(T.children.length===0||O===0)U={offset:T.offset+1,length:0,content:T.children.length===0?le:le+","};else{let ae=O>T.children.length?T.children.length:O,ge=T.children[ae-1];U={offset:ge.offset+ge.length,length:0,content:","+le}}return a(p,U,y)}else throw new Error(`Can not ${m===void 0?"remove":y.isArrayInsertion?"insert":"modify"} Array index ${X} as length is not sufficient`)}else throw new Error(`Can not add ${typeof O!="number"?"index":"property"} to parent of type ${T.type}`);else{if(m===void 0)throw new Error("Can not delete in empty document");return a(p,{offset:k?k.offset:0,length:k?k.length:0,content:JSON.stringify(m)},y)}}t.setProperty=s;function a(p,f,m){if(!m.formattingOptions)return[f];let y=o(p,f),B=f.offset,v=f.offset+f.content.length;if(f.length===0||f.content.length===0){for(;B>0&&!(0,L2r.isEOL)(y,B-1);)B--;for(;v=0;O--){let X=k[O];y=o(y,X),B=Math.min(B,X.offset),v=Math.max(v,X.offset+X.length),v+=X.content.length-X.length}let T=p.length-(y.length-v)-B;return[{offset:B,length:T,content:y.substring(B,v)}]}function o(p,f){return p.substring(0,f.offset)+f.content+p.substring(f.offset+f.length)}t.applyEdit=o;function g(p,f){return`\r + `.indexOf(p.charAt(f))!==-1}t.isWS=g})});var rNe=z((qZi,VBt)=>{var gAc=F2r(),zZi=jZi(),AAc=kBt(),Gq=Z2r();(function(e){if(typeof VBt=="object"&&typeof VBt.exports=="object"){var t=e(xt,qZi);t!==void 0&&(VBt.exports=t)}else typeof define=="function"&&define.amd&&define(["require","exports","./impl/format","./impl/edit","./impl/scanner","./impl/parser"],e)})(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.applyEdits=t.modify=t.format=t.printParseErrorCode=t.ParseErrorCode=t.stripComments=t.visit=t.getNodeValue=t.getNodePath=t.findNodeAtOffset=t.findNodeAtLocation=t.parseTree=t.parse=t.getLocation=t.SyntaxKind=t.ScanError=t.createScanner=void 0,t.createScanner=AAc.createScanner;var r;(function(m){m[m.None=0]="None",m[m.UnexpectedEndOfComment=1]="UnexpectedEndOfComment",m[m.UnexpectedEndOfString=2]="UnexpectedEndOfString",m[m.UnexpectedEndOfNumber=3]="UnexpectedEndOfNumber",m[m.InvalidUnicode=4]="InvalidUnicode",m[m.InvalidEscapeCharacter=5]="InvalidEscapeCharacter",m[m.InvalidCharacter=6]="InvalidCharacter"})(r||(t.ScanError=r={}));var s;(function(m){m[m.OpenBraceToken=1]="OpenBraceToken",m[m.CloseBraceToken=2]="CloseBraceToken",m[m.OpenBracketToken=3]="OpenBracketToken",m[m.CloseBracketToken=4]="CloseBracketToken",m[m.CommaToken=5]="CommaToken",m[m.ColonToken=6]="ColonToken",m[m.NullKeyword=7]="NullKeyword",m[m.TrueKeyword=8]="TrueKeyword",m[m.FalseKeyword=9]="FalseKeyword",m[m.StringLiteral=10]="StringLiteral",m[m.NumericLiteral=11]="NumericLiteral",m[m.LineCommentTrivia=12]="LineCommentTrivia",m[m.BlockCommentTrivia=13]="BlockCommentTrivia",m[m.LineBreakTrivia=14]="LineBreakTrivia",m[m.Trivia=15]="Trivia",m[m.Unknown=16]="Unknown",m[m.EOF=17]="EOF"})(s||(t.SyntaxKind=s={})),t.getLocation=Gq.getLocation,t.parse=Gq.parse,t.parseTree=Gq.parseTree,t.findNodeAtLocation=Gq.findNodeAtLocation,t.findNodeAtOffset=Gq.findNodeAtOffset,t.getNodePath=Gq.getNodePath,t.getNodeValue=Gq.getNodeValue,t.visit=Gq.visit,t.stripComments=Gq.stripComments;var a;(function(m){m[m.InvalidSymbol=1]="InvalidSymbol",m[m.InvalidNumberFormat=2]="InvalidNumberFormat",m[m.PropertyNameExpected=3]="PropertyNameExpected",m[m.ValueExpected=4]="ValueExpected",m[m.ColonExpected=5]="ColonExpected",m[m.CommaExpected=6]="CommaExpected",m[m.CloseBraceExpected=7]="CloseBraceExpected",m[m.CloseBracketExpected=8]="CloseBracketExpected",m[m.EndOfFileExpected=9]="EndOfFileExpected",m[m.InvalidCommentToken=10]="InvalidCommentToken",m[m.UnexpectedEndOfComment=11]="UnexpectedEndOfComment",m[m.UnexpectedEndOfString=12]="UnexpectedEndOfString",m[m.UnexpectedEndOfNumber=13]="UnexpectedEndOfNumber",m[m.InvalidUnicode=14]="InvalidUnicode",m[m.InvalidEscapeCharacter=15]="InvalidEscapeCharacter",m[m.InvalidCharacter=16]="InvalidCharacter"})(a||(t.ParseErrorCode=a={}));function o(m){switch(m){case 1:return"InvalidSymbol";case 2:return"InvalidNumberFormat";case 3:return"PropertyNameExpected";case 4:return"ValueExpected";case 5:return"ColonExpected";case 6:return"CommaExpected";case 7:return"CloseBraceExpected";case 8:return"CloseBracketExpected";case 9:return"EndOfFileExpected";case 10:return"InvalidCommentToken";case 11:return"UnexpectedEndOfComment";case 12:return"UnexpectedEndOfString";case 13:return"UnexpectedEndOfNumber";case 14:return"InvalidUnicode";case 15:return"InvalidEscapeCharacter";case 16:return"InvalidCharacter"}return""}t.printParseErrorCode=o;function g(m,y,B){return gAc.format(m,y,B)}t.format=g;function p(m,y,B,v){return zZi.setProperty(m,y,B,v)}t.modify=p;function f(m,y){let B=y.slice(0).sort((k,T)=>{let O=k.offset-T.offset;return O===0?k.length-T.length:O}),v=m.length;for(let k=B.length-1;k>=0;k--){let T=B[k];if(T.offset+T.length<=v)m=zZi.applyEdit(m,T);else throw new Error("Overlapping edit");v=T.offset}return m}t.applyEdits=f})});var P2r=z(nNe=>{"use strict";Object.defineProperty(nNe,"__esModule",{value:!0});nNe.JsonWorkspaceMetadata=nNe.JsonWorkspaceSymbol=void 0;var $Zi=rNe();nNe.JsonWorkspaceSymbol=Symbol.for("@angular/core:workspace-json");function eLi(e){return e.replace("~","~0").replace("/","~1")}var W2r=class{filePath;ast;raw;changes=new Map;hasLegacyTargetsName=!0;constructor(t,r,s){this.filePath=t,this.ast=r,this.raw=s}get hasChanges(){return this.changes.size>0}get changeCount(){return this.changes.size}getNodeValueFromAst(t){let r=(0,$Zi.findNodeAtLocation)(this.ast,t);return r&&(0,$Zi.getNodeValue)(r)}findChangesForPath(t){return this.changes.get(t)}addChange(t,r,s){let a="";for(let g=0;geLi(g)).join("/");for(let g of this.changes.keys())g.startsWith(o+"/")&&this.changes.delete(g);this.changes.set(o,{jsonPath:t,type:s,value:r})}};nNe.JsonWorkspaceMetadata=W2r});var nLi=z(O2r=>{"use strict";Object.defineProperty(O2r,"__esModule",{value:!0});O2r.createVirtualAstObject=pAc;var dAc=rBt();function pAc(e,t={}){let r=(s,a,o,g)=>{t.listener&&(o===g||JSON.stringify(o)===JSON.stringify(g)||(Array.isArray(a)?t.listener(s.slice(0,-1),a):t.listener(s,g)))};return rLi(Array.isArray(e)?[...e]:{...e},[],r,new Set(t.exclude),t.include?.length?new Set(t.include):void 0)}function rLi(e,t,r,s=new Set,a){return new Proxy(e,{getOwnPropertyDescriptor(o,g){if(!(s.has(g)||a&&!a.has(g)))return Reflect.getOwnPropertyDescriptor(o,g)},has(o,g){return typeof g=="symbol"||s.has(g)?!1:Reflect.has(o,g)},get(o,g){if(s.has(g)||a&&!a.has(g))return;let p=Reflect.get(o,g);return typeof g=="symbol"?p:(0,dAc.isJsonObject)(p)&&!(p instanceof Map)||Array.isArray(p)?rLi(p,[...t,g],r):p},set(o,g,p){if(s.has(g)||a&&!a.has(g))return!1;if(p===void 0)return this.deleteProperty?.(o,g)??!1;if(typeof g=="symbol")return Reflect.set(o,g,p);let f=tLi(o,g);return Reflect.set(o,g,p)?(r([...t,g],o,f,p),!0):!1},deleteProperty(o,g){if(s.has(g))return!1;if(typeof g=="symbol")return Reflect.deleteProperty(o,g);let p=tLi(o,g);return Reflect.deleteProperty(o,g)&&r([...t,g],o,p,void 0),!0},defineProperty(o,g,p){return typeof g=="symbol"?Reflect.defineProperty(o,g,p):!1},ownKeys(o){return Reflect.ownKeys(o).filter(g=>!s.has(g)&&(!a||a.has(g)))}})}function tLi(e,t){if(Array.isArray(e)&&isFinite(+t))return e[+t];if(e&&t in e)return e[t]}});var oLi=z(Q2r=>{"use strict";Object.defineProperty(Q2r,"__esModule",{value:!0});Q2r.readJsonWorkspace=CAc;var Fq=rNe(),PBt=TIe(),iLi=o2r(),sLi=P2r(),WBt=nLi(),fAc=Object.freeze(["cli","newProjectRoot","schematics"]),IAc=Object.freeze(["cli","schematics","projectType","i18n"]);async function CAc(e,t,r={}){let s=await t.readFile(e);if(s===void 0)throw new Error("Unable to read workspace file.");let a=(0,Fq.parseTree)(s,void 0,{allowTrailingComma:!0,disallowComments:!1});if(a?.type!=="object"||!a.children)throw new Error("Invalid workspace file - expected JSON object.");let o=(0,Fq.findNodeAtLocation)(a,["version"]);if(!o)throw new Error("Unknown format - version specifier not found.");let g=o.value;if(g!==1)throw new Error(`Invalid format version detected - Expected:[ 1 ] Found: [ ${g} ]`);let p={host:t,metadata:new sLi.JsonWorkspaceMetadata(e,a,s),trackChanges:!0,unprefixedWorkspaceExtensions:new Set([...fAc,...r.allowedWorkspaceExtensions??[]]),unprefixedProjectExtensions:new Set([...IAc,...r.allowedProjectExtensions??[]]),error(m,y){throw new Error(m)},warn(m,y){console.warn(m)}};return mAc(a,p)}function mAc(e,t){let r=t.metadata,s,a;t.trackChanges||(a=Object.create(null));let o=(0,Fq.getNodeValue)(e);for(let[f,m]of Object.entries(o))if(!(f==="$schema"||f==="version"))if(f==="projects"){let y=(0,Fq.findNodeAtLocation)(e,["projects"]);if(!(0,PBt.isJsonObject)(m)||!y){t.error('Invalid "projects" field found; expected an object.',m);continue}s=hAc(y,t)}else!t.unprefixedWorkspaceExtensions.has(f)&&!/^[a-z]{1,3}-.*/.test(f)&&t.warn(`Workspace extension with invalid name (${f}) found.`,f),a&&(a[f]=m);let g;t.trackChanges&&(g=(f,m)=>{r.addChange(["projects",f],m,"project")});let p=new iLi.ProjectDefinitionCollection(s,g);return{[sLi.JsonWorkspaceSymbol]:r,projects:p,extensions:a??(0,WBt.createVirtualAstObject)(o,{exclude:["$schema","version","projects"],listener(f,m){r.addChange(f,m)}})}}function hAc(e,t){let r=Object.create(null);for(let[s,a]of Object.entries((0,Fq.getNodeValue)(e))){let o=(0,Fq.findNodeAtLocation)(e,[s]);if(!(0,PBt.isJsonObject)(a)||!o){t.warn("Skipping invalid project value; expected an object.",a);continue}r[s]=_Ac(s,o,t)}return r}function _Ac(e,t,r){let s=r.metadata,a,o=!1,g,p;r.trackChanges||(g=Object.create(null),p=Object.create(null));let f=(0,Fq.getNodeValue)(t);if(!("root"in f))throw new Error(`Project "${e}" is missing a required property "root".`);for(let[k,T]of Object.entries(f))switch(k){case"targets":case"architect":{let O=(0,Fq.findNodeAtLocation)(t,[k]);if(!(0,PBt.isJsonObject)(T)||!O){r.error(`Invalid "${k}" field found; expected an object.`,T);break}o=!0,a=yAc(e,O,r),s.hasLegacyTargetsName=k==="architect";break}case"prefix":case"root":case"sourceRoot":typeof T!="string"&&r.warn(`Project property "${k}" should be a string.`,T),p&&(p[k]=T);break;default:!r.unprefixedProjectExtensions.has(k)&&!/^[a-z]{1,3}-.*/.test(k)&&r.warn(`Project '${e}' contains extension with invalid name (${k}).`,k),g&&(g[k]=T);break}let m;r.trackChanges&&(m=(k,T,O)=>{o?s.addChange(["projects",e,"targets",k],T,"target"):s.addChange(["projects",e,"targets"],O,"targetcollection")});let y={targets:new iLi.TargetDefinitionCollection(a,m),extensions:g??(0,WBt.createVirtualAstObject)(f,{exclude:["architect","prefix","root","sourceRoot","targets"],listener(k,T){s.addChange(["projects",e,...k],T)}})},B=new Set(Object.keys(y)),v=p??(0,WBt.createVirtualAstObject)(f,{include:["prefix","root","sourceRoot",...B],listener(k,T){B.has(k[0])||s.addChange(["projects",e,...k],T)}});return Object.assign(v,y)}function yAc(e,t,r){let s=r.metadata,a=Object.create(null);for(let[o,g]of Object.entries((0,Fq.getNodeValue)(t))){if(!(0,PBt.isJsonObject)(g)){r.warn("Skipping invalid target value; expected an object.",g);continue}r.trackChanges?a[o]=(0,WBt.createVirtualAstObject)(g,{include:["builder","options","configurations","defaultConfiguration"],listener(p,f){s.addChange(["projects",e,"targets",o,...p],f)}}):a[o]=g}return a}});var uLi=z(H2r=>{"use strict";Object.defineProperty(H2r,"__esModule",{value:!0});H2r.writeJsonWorkspace=BAc;var aLi=rNe(),bAc=xt("node:os"),EAc=P2r();async function BAc(e,t,r,s={}){let a=e[EAc.JsonWorkspaceSymbol];if(a){if(!a.hasChanges)return;let o=TAc(a);return t.writeFile(r??a.filePath,o)}else{if(!r)throw new Error("path option is required");let o=vAc(e,s.schema),g=JSON.stringify(o,null,2);return t.writeFile(r,g)}}function vAc(e,t){return{$schema:t||"./node_modules/@angular/cli/lib/config/schema.json",version:1,...e.extensions,...NXe(e.projects)?{}:{projects:cLi(e.projects)}}}function cLi(e){let t=Object.create(null);for(let[r,s]of e)t[r]=lLi(s);return t}function lLi(e){let t;if(e.targets.size>0){t=Object.create(null);for(let[s,a]of e.targets)t[s]=M2r(a)}return{...e.extensions,root:e.root,...e.sourceRoot===void 0?{}:{sourceRoot:e.sourceRoot},...e.prefix===void 0?{}:{prefix:e.prefix},...t===void 0?{}:{architect:t}}}function NXe(e){return e===void 0||Object.keys(e).length===0}function M2r(e){return{builder:e.builder,...NXe(e.options)?{}:{options:e.options},...NXe(e.configurations)?{}:{configurations:e.configurations},...e.defaultConfiguration===void 0?{}:{defaultConfiguration:e.defaultConfiguration}}}function SAc(e){let t=Object.create(null);for(let[r,s]of e)t[r]=M2r(s);return t}function wAc(e,t){if(e!==void 0)switch(t){case"project":return lLi(e);case"projectcollection":{let r=cLi(e);return NXe(r)?void 0:r}case"target":return M2r(e);case"targetcollection":{let r=SAc(e);return NXe(r)?void 0:r}default:return e}}function TAc(e){let{raw:t}=e,{changes:r,hasLegacyTargetsName:s}=e;for(let{jsonPath:a,value:o,type:g}of r.values()){s&&a[2]==="targets"&&(a[2]="architect");let p=(0,aLi.modify)(t,a,wAc(o,g),{formattingOptions:{insertSpaces:!0,tabSize:2,eol:NAc(t)}});t=(0,aLi.applyEdits)(t,p)}return t}function NAc(e){let t=`\r `,r=` -`,s=e.match(/(?:\r?\n)/g);if(s?.length){let a=s.filter(g=>g===t).length,o=s.length-a;return a>o?t:r}return oAc.EOL}});var sLi=z(Koe=>{"use strict";Object.defineProperty(Koe,"__esModule",{value:!0});Koe.WorkspaceFormat=void 0;Koe._test_addWorkspaceFile=IAc;Koe._test_removeWorkspaceFile=CAc;Koe.readWorkspace=mAc;Koe.writeWorkspace=hAc;var TXe=wBt(),pAc=$Zi(),fAc=nLi(),iLi=new WeakMap,KIe;(function(e){e[e.JSON=0]="JSON"})(KIe||(Koe.WorkspaceFormat=KIe={}));function IAc(e,t){NXe[e]=t}function CAc(e){delete NXe[e]}var NXe={"angular.json":KIe.JSON,".angular.json":KIe.JSON};async function mAc(e,t,r){if(await t.isDirectory(e)){let a=(0,TXe.normalize)(e),o=!1;for(let[g,p]of Object.entries(NXe)){if(r!==void 0&&r!==p)continue;let f=(0,TXe.getSystemPath)((0,TXe.join)(a,g));if(await t.isFile(f)){e=f,r=p,o=!0;break}}if(!o)throw new Error("Unable to locate a workspace file for workspace path. Are you missing an `angular.json` or `.angular.json` file?")}else if(r===void 0){let a=(0,TXe.basename)((0,TXe.normalize)(e));a in NXe&&(r=NXe[a])}if(r===void 0)throw new Error("Unable to determine format for workspace path.");let s;switch(r){case KIe.JSON:s=await(0,pAc.readJsonWorkspace)(e,t);break;default:throw new Error("Unsupported workspace format.")}return iLi.set(s,KIe.JSON),{workspace:s}}async function hAc(e,t,r,s){if(s===void 0&&(s=iLi.get(e),s===void 0))throw new Error("A format is required for custom workspace objects.");switch(s){case KIe.JSON:return(0,fAc.writeJsonWorkspace)(e,t,r);default:throw new Error("Unsupported workspace format.")}}});var oLi=z(rZ=>{"use strict";var _Ac=rZ&&rZ.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),yAc=rZ&&rZ.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&_Ac(t,e,r)};Object.defineProperty(rZ,"__esModule",{value:!0});rZ.writeWorkspace=rZ.readWorkspace=rZ.WorkspaceFormat=rZ.createWorkspaceHost=void 0;yAc(e2r(),rZ);var bAc=FZi();Object.defineProperty(rZ,"createWorkspaceHost",{enumerable:!0,get:function(){return bAc.createWorkspaceHost}});var W2r=sLi();Object.defineProperty(rZ,"WorkspaceFormat",{enumerable:!0,get:function(){return W2r.WorkspaceFormat}});Object.defineProperty(rZ,"readWorkspace",{enumerable:!0,get:function(){return W2r.readWorkspace}});Object.defineProperty(rZ,"writeWorkspace",{enumerable:!0,get:function(){return W2r.writeWorkspace}})});var a2=z(Rw=>{"use strict";var aLi=Rw&&Rw.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),EAc=Rw&&Rw.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),P2r=Rw&&Rw.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var s=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(s[s.length]=a);return s},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var s=e(t),a=0;a{"use strict";Object.defineProperty(WBt,"__esModule",{value:!0});WBt.htmlSelectorFormat=void 0;var wAc=[[192,214],[216,246],[248,893],[895,8191],[8204,8205],[8255,8256],[8304,8591],[11264,12271],[12289,55295],[63744,64975],[65008,65533],[65536,983039]];function TAc(e){let t="^[a-zA-Z][";t+="-.0-9_a-zA-Z\\u{B7}";for(let r of wAc)t+=`\\u{${r[0].toString(16)}}-\\u{${r[1].toString(16)}}`;return t+="]*$",new RegExp(t,"u").test(e)}WBt.htmlSelectorFormat={name:"html-selector",formatter:{async:!1,validate:e=>typeof e=="string"&&TAc(e)}}});var M2r=z(PBt=>{"use strict";Object.defineProperty(PBt,"__esModule",{value:!0});PBt.pathFormat=void 0;var NAc=a2();PBt.pathFormat={name:"path",formatter:{async:!1,validate:e=>e===(0,NAc.normalize)(e)}}});var Q2r=z(joe=>{"use strict";Object.defineProperty(joe,"__esModule",{value:!0});joe.standardFormats=joe.pathFormat=joe.htmlSelectorFormat=void 0;var RAc=O2r(),DAc=M2r(),xAc=O2r();Object.defineProperty(joe,"htmlSelectorFormat",{enumerable:!0,get:function(){return xAc.htmlSelectorFormat}});var kAc=M2r();Object.defineProperty(joe,"pathFormat",{enumerable:!0,get:function(){return kAc.pathFormat}});joe.standardFormats=[RAc.htmlSelectorFormat,DAc.pathFormat]});var QM=z(V5=>{"use strict";Object.defineProperty(V5,"__esModule",{value:!0});V5.Tree=V5.TreeSymbol=V5.FileVisitorCancelToken=V5.MergeStrategy=void 0;var cLi;(function(e){e[e.AllowOverwriteConflict=2]="AllowOverwriteConflict",e[e.AllowCreationConflict=4]="AllowCreationConflict",e[e.AllowDeleteConflict=8]="AllowDeleteConflict",e[e.Default=0]="Default",e[e.Error=1]="Error",e[e.ContentOnly=2]="ContentOnly",e[e.Overwrite=14]="Overwrite"})(cLi||(V5.MergeStrategy=cLi={}));V5.FileVisitorCancelToken=Symbol();V5.TreeSymbol=function(){let e=typeof window=="object"&&window.window===window&&window.Symbol||typeof self=="object"&&self.self===self&&self.Symbol||typeof global=="object"&&global.global===global&&global.Symbol;return e?(e.schematicTree||(e.schematicTree=Symbol("schematic-tree")),e.schematicTree):Symbol("schematic-tree")}();V5.Tree=Object.freeze({isTree(e){return V5.TreeSymbol in e}})});var W5=z(TR=>{"use strict";Object.defineProperty(TR,"__esModule",{value:!0});TR.UnimplementedException=TR.UnsuccessfulWorkflowExecution=TR.MergeConflictException=TR.InvalidUpdateRecordException=TR.ContentHasMutatedException=TR.FileAlreadyExistException=TR.FileDoesNotExistException=TR.SchematicsException=void 0;var zoe=a2(),Y2r=class extends zoe.BaseException{};TR.SchematicsException=Y2r;var H2r=class extends zoe.BaseException{constructor(t){super(`Path "${t}" does not exist.`)}};TR.FileDoesNotExistException=H2r;var X2r=class extends zoe.BaseException{constructor(t){super(`Path "${t}" already exist.`)}};TR.FileAlreadyExistException=X2r;var J2r=class extends zoe.BaseException{constructor(t){super(`Content at path "${t}" has changed between the start and the end of an update.`)}};TR.ContentHasMutatedException=J2r;var U2r=class extends zoe.BaseException{constructor(){super("Invalid record instance.")}};TR.InvalidUpdateRecordException=U2r;var K2r=class extends zoe.BaseException{constructor(t){super(`A merge conflicted on path "${t}".`)}};TR.MergeConflictException=K2r;var j2r=class extends zoe.BaseException{constructor(){super("Workflow did not execute successfully.")}};TR.UnsuccessfulWorkflowExecution=j2r;var z2r=class extends zoe.BaseException{constructor(){super("This function is unimplemented.")}};TR.UnimplementedException=z2r});var MBt=z(OBt=>{"use strict";Object.defineProperty(OBt,"__esModule",{value:!0});OBt.DelegateTree=void 0;var GAc=QM(),q2r=class{_other;constructor(t){this._other=t}branch(){return this._other.branch()}merge(t,r){this._other.merge(t,r)}get root(){return this._other.root}read(t){return this._other.read(t)}readText(t){return this._other.readText(t)}readJson(t){return this._other.readJson(t)}exists(t){return this._other.exists(t)}get(t){return this._other.get(t)}getDir(t){return this._other.getDir(t)}visit(t){return this._other.visit(t)}overwrite(t,r){return this._other.overwrite(t,r)}beginUpdate(t){return this._other.beginUpdate(t)}commitUpdate(t){return this._other.commitUpdate(t)}create(t,r){return this._other.create(t,r)}delete(t){return this._other.delete(t)}rename(t,r){return this._other.rename(t,r)}apply(t,r){return this._other.apply(t,r)}get actions(){return this._other.actions}[GAc.TreeSymbol](){return this}};OBt.DelegateTree=q2r});var lLi=z(rNe=>{"use strict";Object.defineProperty(rNe,"__esModule",{value:!0});rNe.LazyFileEntry=rNe.SimpleFileEntry=void 0;var $2r=class{_path;_content;constructor(t,r){this._path=t,this._content=r}get path(){return this._path}get content(){return this._content}};rNe.SimpleFileEntry=$2r;var eBr=class{_path;_load;_content=null;constructor(t,r){this._path=t,this._load=r}get path(){return this._path}get content(){return this._content||(this._content=this._load(this._path))}};rNe.LazyFileEntry=eBr});var gLi=z((QBt,uLi)=>{(function(e,t){typeof QBt=="object"&&typeof uLi<"u"?t(QBt):typeof define=="function"&&define.amd?define(["exports"],t):(e=typeof globalThis<"u"?globalThis:e||self,t(e.sourcemapCodec={}))})(QBt,function(e){"use strict";let s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=new Uint8Array(64),o=new Uint8Array(128);for(let Te=0;Te>>=1,Je&&(x=-2147483648|-x),ke+x}function p(Te,ke,x){let et=ke-x;et=et<0?-et<<1|1:et<<1;do{let Ue=et&31;et>>>=5,et>0&&(Ue|=32),Te.write(a[Ue])}while(et>0);return ke}function f(Te,ke){return Te.pos>=ke?!1:Te.peek()!==44}let m=1024*16,y=typeof TextDecoder<"u"?new TextDecoder:typeof Buffer<"u"?{decode(Te){return Buffer.from(Te.buffer,Te.byteOffset,Te.byteLength).toString()}}:{decode(Te){let ke="";for(let x=0;x0?x+y.decode(ke.subarray(0,et)):x}}class v{constructor(ke){this.pos=0,this.buffer=ke}next(){return this.buffer.charCodeAt(this.pos++)}peek(){return this.buffer.charCodeAt(this.pos)}indexOf(ke){let{buffer:x,pos:et}=this,Ue=x.indexOf(ke,et);return Ue===-1?x.length:Ue}}let G=[];function T(Te){let{length:ke}=Te,x=new v(Te),et=[],Ue=[],Je=0;for(;x.pos0&&x.write(44),et[0]=p(x,Je,et[0]),p(x,Xe,0),p(x,er,0);let Ot=Ue.length===6?1:0;p(x,Ot,0),Ue.length===6&&p(x,Ue[5],0);for(let dr of Ur)p(x,dr,0);for(ke++;keft||Ar===ft&&or>=Gt)break;ke=X(Te,ke,x,et)}return x.write(44),et[0]=p(x,ft,et[0]),p(x,Gt,0),ke}function U(Te){let{length:ke}=Te,x=new v(Te),et=[],Ue=[],Je=0,Xe=0,ft=0,Gt=0,er=0,Ur=0,Ot=0,dr=0;do{let Ar=x.indexOf(";"),or=0;for(;x.posGn;Zi--){let Za=Ot;Ot=g(x,Ot),dr=g(x,Ot===Za?dr:0);let ka=g(x,0);we.push([ka,Ot,dr])}}else we=[[Gn]];tr.push(we)}while(f(x,Ar))}gn.bindings=tr,et.push(gn),Ue.push(gn)}Je++,x.pos=Ar+1}while(x.pos0&&x.write(44),et[1]=p(x,Ue[1],et[1]);let dr=(Ue.length===6?1:0)|(Ur?2:0)|(er?4:0);if(p(x,dr,0),Ue.length===6){let{4:Ar,5:or}=Ue;Ar!==et[2]&&(et[3]=0),et[2]=p(x,Ar,et[2]),et[3]=p(x,or,et[3])}if(Ur){let{0:Ar,1:or,2:Fr}=Ue.callsite;Ar!==et[4]?(et[5]=0,et[6]=0):or!==et[5]&&(et[6]=0),et[4]=p(x,Ar,et[4]),et[5]=p(x,or,et[5]),et[6]=p(x,Fr,et[6])}if(Ot)for(let Ar of Ot){Ar.length>1&&p(x,-Ar.length,0);let or=Ar[0][0];p(x,or,0);let Fr=Je,$r=Xe;for(let Or=1;Orft||or===ft&&Fr>=Gt)break;ke=ae(Te,ke,x,et)}return et[0]0&&ke.write(59),ft.length===0)continue;let Gt=0;for(let er=0;er0&&ke.write(44),Gt=p(ke,Ur[0],Gt),Ur.length!==1&&(x=p(ke,Ur[1],x),et=p(ke,Ur[2],et),Ue=p(ke,Ur[3],Ue),Ur.length!==4&&(Je=p(ke,Ur[4],Je)))}}return ke.flush()}e.decode=fe,e.decodeGeneratedRanges=U,e.decodeOriginalScopes=T,e.encode=be,e.encodeGeneratedRanges=le,e.encodeOriginalScopes=O,Object.defineProperty(e,"__esModule",{value:!0})})});var ILi=z((nOl,fLi)=>{"use strict";var FAc=gLi(),YBt=class e{constructor(t){this.bits=t instanceof e?t.bits.slice():[]}add(t){this.bits[t>>5]|=1<<(t&31)}has(t){return!!(this.bits[t>>5]&1<<(t&31))}},HBt=class e{constructor(t,r,s){this.start=t,this.end=r,this.original=s,this.intro="",this.outro="",this.content=s,this.storeName=!1,this.edited=!1,this.previous=null,this.next=null}appendLeft(t){this.outro+=t}appendRight(t){this.intro=this.intro+t}clone(){let t=new e(this.start,this.end,this.original);return t.intro=this.intro,t.outro=this.outro,t.content=this.content,t.storeName=this.storeName,t.edited=this.edited,t}contains(t){return this.startglobalThis.btoa(unescape(encodeURIComponent(e))):typeof Buffer=="function"?e=>Buffer.from(e,"utf-8").toString("base64"):()=>{throw new Error("Unsupported environment: `window.btoa` or `Buffer` should be supported.")}}var LAc=ZAc(),DXe=class{constructor(t){this.version=3,this.file=t.file,this.sources=t.sources,this.sourcesContent=t.sourcesContent,this.names=t.names,this.mappings=FAc.encode(t.mappings),typeof t.x_google_ignoreList<"u"&&(this.x_google_ignoreList=t.x_google_ignoreList),typeof t.debugId<"u"&&(this.debugId=t.debugId)}toString(){return JSON.stringify(this)}toUrl(){return"data:application/json;charset=utf-8;base64,"+LAc(this.toString())}};function VAc(e){let t=e.split(` -`),r=t.filter(o=>/^\t+/.test(o)),s=t.filter(o=>/^ {2,}/.test(o));if(r.length===0&&s.length===0)return null;if(r.length>=s.length)return" ";let a=s.reduce((o,g)=>{let p=/^ +/.exec(g)[0].length;return Math.min(p,o)},1/0);return new Array(a+1).join(" ")}function dLi(e,t){let r=e.split(/[/\\]/),s=t.split(/[/\\]/);for(r.pop();r[0]===s[0];)r.shift(),s.shift();if(r.length){let a=r.length;for(;a--;)r[a]=".."}return r.concat(s).join("/")}var WAc=Object.prototype.toString;function pLi(e){return WAc.call(e)==="[object Object]"}function tBr(e){let t=e.split(` -`),r=[];for(let s=0,a=0;s>1;ag===t).length,o=s.length-a;return a>o?t:r}return bAc.EOL}});var ALi=z(iae=>{"use strict";Object.defineProperty(iae,"__esModule",{value:!0});iae.WorkspaceFormat=void 0;iae._test_addWorkspaceFile=xAc;iae._test_removeWorkspaceFile=kAc;iae.readWorkspace=GAc;iae.writeWorkspace=FAc;var RXe=RBt(),RAc=oLi(),DAc=uLi(),gLi=new WeakMap,zIe;(function(e){e[e.JSON=0]="JSON"})(zIe||(iae.WorkspaceFormat=zIe={}));function xAc(e,t){DXe[e]=t}function kAc(e){delete DXe[e]}var DXe={"angular.json":zIe.JSON,".angular.json":zIe.JSON};async function GAc(e,t,r){if(await t.isDirectory(e)){let a=(0,RXe.normalize)(e),o=!1;for(let[g,p]of Object.entries(DXe)){if(r!==void 0&&r!==p)continue;let f=(0,RXe.getSystemPath)((0,RXe.join)(a,g));if(await t.isFile(f)){e=f,r=p,o=!0;break}}if(!o)throw new Error("Unable to locate a workspace file for workspace path. Are you missing an `angular.json` or `.angular.json` file?")}else if(r===void 0){let a=(0,RXe.basename)((0,RXe.normalize)(e));a in DXe&&(r=DXe[a])}if(r===void 0)throw new Error("Unable to determine format for workspace path.");let s;switch(r){case zIe.JSON:s=await(0,RAc.readJsonWorkspace)(e,t);break;default:throw new Error("Unsupported workspace format.")}return gLi.set(s,zIe.JSON),{workspace:s}}async function FAc(e,t,r,s){if(s===void 0&&(s=gLi.get(e),s===void 0))throw new Error("A format is required for custom workspace objects.");switch(s){case zIe.JSON:return(0,DAc.writeJsonWorkspace)(e,t,r);default:throw new Error("Unsupported workspace format.")}}});var dLi=z(nZ=>{"use strict";var ZAc=nZ&&nZ.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),LAc=nZ&&nZ.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&ZAc(t,e,r)};Object.defineProperty(nZ,"__esModule",{value:!0});nZ.writeWorkspace=nZ.readWorkspace=nZ.WorkspaceFormat=nZ.createWorkspaceHost=void 0;LAc(o2r(),nZ);var VAc=QZi();Object.defineProperty(nZ,"createWorkspaceHost",{enumerable:!0,get:function(){return VAc.createWorkspaceHost}});var Y2r=ALi();Object.defineProperty(nZ,"WorkspaceFormat",{enumerable:!0,get:function(){return Y2r.WorkspaceFormat}});Object.defineProperty(nZ,"readWorkspace",{enumerable:!0,get:function(){return Y2r.readWorkspace}});Object.defineProperty(nZ,"writeWorkspace",{enumerable:!0,get:function(){return Y2r.writeWorkspace}})});var c2=z(Dw=>{"use strict";var pLi=Dw&&Dw.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),WAc=Dw&&Dw.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),X2r=Dw&&Dw.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var s=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(s[s.length]=a);return s},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var s=e(t),a=0;a{"use strict";Object.defineProperty(QBt,"__esModule",{value:!0});QBt.htmlSelectorFormat=void 0;var MAc=[[192,214],[216,246],[248,893],[895,8191],[8204,8205],[8255,8256],[8304,8591],[11264,12271],[12289,55295],[63744,64975],[65008,65533],[65536,983039]];function HAc(e){let t="^[a-zA-Z][";t+="-.0-9_a-zA-Z\\u{B7}";for(let r of MAc)t+=`\\u{${r[0].toString(16)}}-\\u{${r[1].toString(16)}}`;return t+="]*$",new RegExp(t,"u").test(e)}QBt.htmlSelectorFormat={name:"html-selector",formatter:{async:!1,validate:e=>typeof e=="string"&&HAc(e)}}});var U2r=z(MBt=>{"use strict";Object.defineProperty(MBt,"__esModule",{value:!0});MBt.pathFormat=void 0;var YAc=c2();MBt.pathFormat={name:"path",formatter:{async:!1,validate:e=>e===(0,YAc.normalize)(e)}}});var K2r=z(sae=>{"use strict";Object.defineProperty(sae,"__esModule",{value:!0});sae.standardFormats=sae.pathFormat=sae.htmlSelectorFormat=void 0;var XAc=J2r(),JAc=U2r(),UAc=J2r();Object.defineProperty(sae,"htmlSelectorFormat",{enumerable:!0,get:function(){return UAc.htmlSelectorFormat}});var KAc=U2r();Object.defineProperty(sae,"pathFormat",{enumerable:!0,get:function(){return KAc.pathFormat}});sae.standardFormats=[XAc.htmlSelectorFormat,JAc.pathFormat]});var YQ=z(OY=>{"use strict";Object.defineProperty(OY,"__esModule",{value:!0});OY.Tree=OY.TreeSymbol=OY.FileVisitorCancelToken=OY.MergeStrategy=void 0;var fLi;(function(e){e[e.AllowOverwriteConflict=2]="AllowOverwriteConflict",e[e.AllowCreationConflict=4]="AllowCreationConflict",e[e.AllowDeleteConflict=8]="AllowDeleteConflict",e[e.Default=0]="Default",e[e.Error=1]="Error",e[e.ContentOnly=2]="ContentOnly",e[e.Overwrite=14]="Overwrite"})(fLi||(OY.MergeStrategy=fLi={}));OY.FileVisitorCancelToken=Symbol();OY.TreeSymbol=function(){let e=typeof window=="object"&&window.window===window&&window.Symbol||typeof self=="object"&&self.self===self&&self.Symbol||typeof global=="object"&&global.global===global&&global.Symbol;return e?(e.schematicTree||(e.schematicTree=Symbol("schematic-tree")),e.schematicTree):Symbol("schematic-tree")}();OY.Tree=Object.freeze({isTree(e){return OY.TreeSymbol in e}})});var QY=z(DR=>{"use strict";Object.defineProperty(DR,"__esModule",{value:!0});DR.UnimplementedException=DR.UnsuccessfulWorkflowExecution=DR.MergeConflictException=DR.InvalidUpdateRecordException=DR.ContentHasMutatedException=DR.FileAlreadyExistException=DR.FileDoesNotExistException=DR.SchematicsException=void 0;var oae=c2(),j2r=class extends oae.BaseException{};DR.SchematicsException=j2r;var z2r=class extends oae.BaseException{constructor(t){super(`Path "${t}" does not exist.`)}};DR.FileDoesNotExistException=z2r;var q2r=class extends oae.BaseException{constructor(t){super(`Path "${t}" already exist.`)}};DR.FileAlreadyExistException=q2r;var $2r=class extends oae.BaseException{constructor(t){super(`Content at path "${t}" has changed between the start and the end of an update.`)}};DR.ContentHasMutatedException=$2r;var eBr=class extends oae.BaseException{constructor(){super("Invalid record instance.")}};DR.InvalidUpdateRecordException=eBr;var tBr=class extends oae.BaseException{constructor(t){super(`A merge conflicted on path "${t}".`)}};DR.MergeConflictException=tBr;var rBr=class extends oae.BaseException{constructor(){super("Workflow did not execute successfully.")}};DR.UnsuccessfulWorkflowExecution=rBr;var nBr=class extends oae.BaseException{constructor(){super("This function is unimplemented.")}};DR.UnimplementedException=nBr});var YBt=z(HBt=>{"use strict";Object.defineProperty(HBt,"__esModule",{value:!0});HBt.DelegateTree=void 0;var jAc=YQ(),iBr=class{_other;constructor(t){this._other=t}branch(){return this._other.branch()}merge(t,r){this._other.merge(t,r)}get root(){return this._other.root}read(t){return this._other.read(t)}readText(t){return this._other.readText(t)}readJson(t){return this._other.readJson(t)}exists(t){return this._other.exists(t)}get(t){return this._other.get(t)}getDir(t){return this._other.getDir(t)}visit(t){return this._other.visit(t)}overwrite(t,r){return this._other.overwrite(t,r)}beginUpdate(t){return this._other.beginUpdate(t)}commitUpdate(t){return this._other.commitUpdate(t)}create(t,r){return this._other.create(t,r)}delete(t){return this._other.delete(t)}rename(t,r){return this._other.rename(t,r)}apply(t,r){return this._other.apply(t,r)}get actions(){return this._other.actions}[jAc.TreeSymbol](){return this}};HBt.DelegateTree=iBr});var ILi=z(iNe=>{"use strict";Object.defineProperty(iNe,"__esModule",{value:!0});iNe.LazyFileEntry=iNe.SimpleFileEntry=void 0;var sBr=class{_path;_content;constructor(t,r){this._path=t,this._content=r}get path(){return this._path}get content(){return this._content}};iNe.SimpleFileEntry=sBr;var oBr=class{_path;_load;_content=null;constructor(t,r){this._path=t,this._load=r}get path(){return this._path}get content(){return this._content||(this._content=this._load(this._path))}};iNe.LazyFileEntry=oBr});var mLi=z((XBt,CLi)=>{(function(e,t){typeof XBt=="object"&&typeof CLi<"u"?t(XBt):typeof define=="function"&&define.amd?define(["exports"],t):(e=typeof globalThis<"u"?globalThis:e||self,t(e.sourcemapCodec={}))})(XBt,function(e){"use strict";let s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=new Uint8Array(64),o=new Uint8Array(128);for(let Te=0;Te>>=1,Je&&(x=-2147483648|-x),ke+x}function p(Te,ke,x){let et=ke-x;et=et<0?-et<<1|1:et<<1;do{let Ue=et&31;et>>>=5,et>0&&(Ue|=32),Te.write(a[Ue])}while(et>0);return ke}function f(Te,ke){return Te.pos>=ke?!1:Te.peek()!==44}let m=1024*16,y=typeof TextDecoder<"u"?new TextDecoder:typeof Buffer<"u"?{decode(Te){return Buffer.from(Te.buffer,Te.byteOffset,Te.byteLength).toString()}}:{decode(Te){let ke="";for(let x=0;x0?x+y.decode(ke.subarray(0,et)):x}}class v{constructor(ke){this.pos=0,this.buffer=ke}next(){return this.buffer.charCodeAt(this.pos++)}peek(){return this.buffer.charCodeAt(this.pos)}indexOf(ke){let{buffer:x,pos:et}=this,Ue=x.indexOf(ke,et);return Ue===-1?x.length:Ue}}let k=[];function T(Te){let{length:ke}=Te,x=new v(Te),et=[],Ue=[],Je=0;for(;x.pos0&&x.write(44),et[0]=p(x,Je,et[0]),p(x,Xe,0),p(x,er,0);let Ot=Ue.length===6?1:0;p(x,Ot,0),Ue.length===6&&p(x,Ue[5],0);for(let dr of Ur)p(x,dr,0);for(ke++;keft||Ar===ft&&or>=Gt)break;ke=X(Te,ke,x,et)}return x.write(44),et[0]=p(x,ft,et[0]),p(x,Gt,0),ke}function U(Te){let{length:ke}=Te,x=new v(Te),et=[],Ue=[],Je=0,Xe=0,ft=0,Gt=0,er=0,Ur=0,Ot=0,dr=0;do{let Ar=x.indexOf(";"),or=0;for(;x.posGn;Zi--){let Fa=Ot;Ot=g(x,Ot),dr=g(x,Ot===Fa?dr:0);let xa=g(x,0);we.push([xa,Ot,dr])}}else we=[[Gn]];tr.push(we)}while(f(x,Ar))}gn.bindings=tr,et.push(gn),Ue.push(gn)}Je++,x.pos=Ar+1}while(x.pos0&&x.write(44),et[1]=p(x,Ue[1],et[1]);let dr=(Ue.length===6?1:0)|(Ur?2:0)|(er?4:0);if(p(x,dr,0),Ue.length===6){let{4:Ar,5:or}=Ue;Ar!==et[2]&&(et[3]=0),et[2]=p(x,Ar,et[2]),et[3]=p(x,or,et[3])}if(Ur){let{0:Ar,1:or,2:Fr}=Ue.callsite;Ar!==et[4]?(et[5]=0,et[6]=0):or!==et[5]&&(et[6]=0),et[4]=p(x,Ar,et[4]),et[5]=p(x,or,et[5]),et[6]=p(x,Fr,et[6])}if(Ot)for(let Ar of Ot){Ar.length>1&&p(x,-Ar.length,0);let or=Ar[0][0];p(x,or,0);let Fr=Je,$r=Xe;for(let Or=1;Orft||or===ft&&Fr>=Gt)break;ke=ae(Te,ke,x,et)}return et[0]0&&ke.write(59),ft.length===0)continue;let Gt=0;for(let er=0;er0&&ke.write(44),Gt=p(ke,Ur[0],Gt),Ur.length!==1&&(x=p(ke,Ur[1],x),et=p(ke,Ur[2],et),Ue=p(ke,Ur[3],Ue),Ur.length!==4&&(Je=p(ke,Ur[4],Je)))}}return ke.flush()}e.decode=fe,e.decodeGeneratedRanges=U,e.decodeOriginalScopes=T,e.encode=be,e.encodeGeneratedRanges=le,e.encodeOriginalScopes=O,Object.defineProperty(e,"__esModule",{value:!0})})});var ELi=z((vOl,bLi)=>{"use strict";var zAc=mLi(),JBt=class e{constructor(t){this.bits=t instanceof e?t.bits.slice():[]}add(t){this.bits[t>>5]|=1<<(t&31)}has(t){return!!(this.bits[t>>5]&1<<(t&31))}},UBt=class e{constructor(t,r,s){this.start=t,this.end=r,this.original=s,this.intro="",this.outro="",this.content=s,this.storeName=!1,this.edited=!1,this.previous=null,this.next=null}appendLeft(t){this.outro+=t}appendRight(t){this.intro=this.intro+t}clone(){let t=new e(this.start,this.end,this.original);return t.intro=this.intro,t.outro=this.outro,t.content=this.content,t.storeName=this.storeName,t.edited=this.edited,t}contains(t){return this.startglobalThis.btoa(unescape(encodeURIComponent(e))):typeof Buffer=="function"?e=>Buffer.from(e,"utf-8").toString("base64"):()=>{throw new Error("Unsupported environment: `window.btoa` or `Buffer` should be supported.")}}var $Ac=qAc(),kXe=class{constructor(t){this.version=3,this.file=t.file,this.sources=t.sources,this.sourcesContent=t.sourcesContent,this.names=t.names,this.mappings=zAc.encode(t.mappings),typeof t.x_google_ignoreList<"u"&&(this.x_google_ignoreList=t.x_google_ignoreList),typeof t.debugId<"u"&&(this.debugId=t.debugId)}toString(){return JSON.stringify(this)}toUrl(){return"data:application/json;charset=utf-8;base64,"+$Ac(this.toString())}};function edc(e){let t=e.split(` +`),r=t.filter(o=>/^\t+/.test(o)),s=t.filter(o=>/^ {2,}/.test(o));if(r.length===0&&s.length===0)return null;if(r.length>=s.length)return" ";let a=s.reduce((o,g)=>{let p=/^ +/.exec(g)[0].length;return Math.min(p,o)},1/0);return new Array(a+1).join(" ")}function _Li(e,t){let r=e.split(/[/\\]/),s=t.split(/[/\\]/);for(r.pop();r[0]===s[0];)r.shift(),s.shift();if(r.length){let a=r.length;for(;a--;)r[a]=".."}return r.concat(s).join("/")}var tdc=Object.prototype.toString;function yLi(e){return tdc.call(e)==="[object Object]"}function aBr(e){let t=e.split(` +`),r=[];for(let s=0,a=0;s>1;a=0&&o>g;){let m=[this.generatedCodeColumn,t,s.line,s.column];a>=0&&m.push(a),this.rawSegments.push(m),this.generatedCodeLine+=1,this.raw[this.generatedCodeLine]=this.rawSegments=[],this.generatedCodeColumn=0,p=g,g=r.indexOf(` `,g+1)}let f=[this.generatedCodeColumn,t,s.line,s.column];a>=0&&f.push(a),this.rawSegments.push(f),this.advance(r.slice(p+1))}else this.pending&&(this.rawSegments.push(this.pending),this.advance(r));this.pending=null}addUneditedChunk(t,r,s,a,o){let g=r.start,p=!0,f=!1;for(;g1){for(let s=0;s{let p=o(g.start);g.intro.length&&a.advance(g.intro),g.edited?a.addEdit(r,g.content,p,g.storeName?s.indexOf(g.original):-1):a.addUneditedChunk(r,g,this.original,p,this.sourcemapLocations),g.outro.length&&a.advance(g.outro)}),{file:t.file?t.file.split(/[/\\]/).pop():void 0,sources:[t.source?dLi(t.file||"",t.source):t.file||""],sourcesContent:t.includeContent?[this.original]:void 0,names:s,mappings:a.raw,x_google_ignoreList:this.ignoreList?[r]:void 0}}generateMap(t){return new DXe(this.generateDecodedMap(t))}_ensureindentStr(){this.indentStr===void 0&&(this.indentStr=VAc(this.original))}_getRawIndentString(){return this._ensureindentStr(),this.indentStr}getIndentString(){return this._ensureindentStr(),this.indentStr===null?" ":this.indentStr}indent(t,r){let s=/^[^\r\n]/gm;if(pLi(t)&&(r=t,t=void 0),t===void 0&&(this._ensureindentStr(),t=this.indentStr||" "),t==="")return this;r=r||{};let a={};r.exclude&&(typeof r.exclude[0]=="number"?[r.exclude]:r.exclude).forEach(y=>{for(let B=y[0];Bo?`${t}${m}`:(o=!0,m);this.intro=this.intro.replace(s,g);let p=0,f=this.firstChunk;for(;f;){let m=f.end;if(f.edited)a[p]||(f.content=f.content.replace(s,g),f.content.length&&(o=f.content[f.content.length-1]===` +`)a.line+=1,a.column=0,this.generatedCodeLine+=1,this.raw[this.generatedCodeLine]=this.rawSegments=[],this.generatedCodeColumn=0,p=!0,f=!1;else{if(this.hires||p||o.has(g)){let m=[this.generatedCodeColumn,t,a.line,a.column];this.hires==="boundary"?rdc.test(s[g])?f||(this.rawSegments.push(m),f=!0):(this.rawSegments.push(m),f=!1):this.rawSegments.push(m)}a.column+=1,this.generatedCodeColumn+=1,p=!1}g+=1}this.pending=null}advance(t){if(!t)return;let r=t.split(` +`);if(r.length>1){for(let s=0;s{let p=o(g.start);g.intro.length&&a.advance(g.intro),g.edited?a.addEdit(r,g.content,p,g.storeName?s.indexOf(g.original):-1):a.addUneditedChunk(r,g,this.original,p,this.sourcemapLocations),g.outro.length&&a.advance(g.outro)}),{file:t.file?t.file.split(/[/\\]/).pop():void 0,sources:[t.source?_Li(t.file||"",t.source):t.file||""],sourcesContent:t.includeContent?[this.original]:void 0,names:s,mappings:a.raw,x_google_ignoreList:this.ignoreList?[r]:void 0}}generateMap(t){return new kXe(this.generateDecodedMap(t))}_ensureindentStr(){this.indentStr===void 0&&(this.indentStr=edc(this.original))}_getRawIndentString(){return this._ensureindentStr(),this.indentStr}getIndentString(){return this._ensureindentStr(),this.indentStr===null?" ":this.indentStr}indent(t,r){let s=/^[^\r\n]/gm;if(yLi(t)&&(r=t,t=void 0),t===void 0&&(this._ensureindentStr(),t=this.indentStr||" "),t==="")return this;r=r||{};let a={};r.exclude&&(typeof r.exclude[0]=="number"?[r.exclude]:r.exclude).forEach(y=>{for(let B=y[0];Bo?`${t}${m}`:(o=!0,m);this.intro=this.intro.replace(s,g);let p=0,f=this.firstChunk;for(;f;){let m=f.end;if(f.edited)a[p]||(f.content=f.content.replace(s,g),f.content.length&&(o=f.content[f.content.length-1]===` `));else for(p=f.start;p=t&&s<=r)throw new Error("Cannot move a selection inside itself");this._split(t),this._split(r),this._split(s);let a=this.byStart[t],o=this.byEnd[r],g=a.previous,p=o.next,f=this.byStart[s];if(!f&&o===this.lastChunk)return this;let m=f?f.previous:this.lastChunk;return g&&(g.next=p),p&&(p.previous=g),m&&(m.next=a),f&&(f.previous=o),a.previous||(this.firstChunk=o.next),o.next||(this.lastChunk=a.previous,this.lastChunk.next=null),a.previous=m,o.next=f||null,m||(this.firstChunk=a),f||(this.lastChunk=o),this}overwrite(t,r,s,a){return a=a||{},this.update(t,r,s,{...a,overwrite:!a.contentOnly})}update(t,r,s,a){if(t=t+this.offset,r=r+this.offset,typeof s!="string")throw new TypeError("replacement content must be a string");if(this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}if(r>this.original.length)throw new Error("end is out of bounds");if(t===r)throw new Error("Cannot overwrite a zero-length range \u2013 use appendLeft or prependRight instead");this._split(t),this._split(r),a===!0&&(nNe.storeName||(console.warn("The final argument to magicString.overwrite(...) should be an options object. See https://github.com/rich-harris/magic-string"),nNe.storeName=!0),a={storeName:!0});let o=a!==void 0?a.storeName:!1,g=a!==void 0?a.overwrite:!1;if(o){let m=this.original.slice(t,r);Object.defineProperty(this.storedNames,m,{writable:!0,value:!0,enumerable:!0})}let p=this.byStart[t],f=this.byEnd[r];if(p){let m=p;for(;m!==f;){if(m.next!==this.byStart[m.end])throw new Error("Cannot overwrite across a split point");m=m.next,m.edit("",!1)}p.edit(s,o,!g)}else{let m=new HBt(t,r,"").edit(s,o);f.next=m,m.previous=f}return this}prepend(t){if(typeof t!="string")throw new TypeError("outro content must be a string");return this.intro=t+this.intro,this}prependLeft(t,r){if(t=t+this.offset,typeof r!="string")throw new TypeError("inserted content must be a string");this._split(t);let s=this.byEnd[t];return s?s.prependLeft(r):this.intro=r+this.intro,this}prependRight(t,r){if(t=t+this.offset,typeof r!="string")throw new TypeError("inserted content must be a string");this._split(t);let s=this.byStart[t];return s?s.prependRight(r):this.outro=r+this.outro,this}remove(t,r){if(t=t+this.offset,r=r+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}if(t===r)return this;if(t<0||r>this.original.length)throw new Error("Character is out of bounds");if(t>r)throw new Error("end must be greater than start");this._split(t),this._split(r);let s=this.byStart[t];for(;s;)s.intro="",s.outro="",s.edit(""),s=r>s.end?this.byStart[s.end]:null;return this}reset(t,r){if(t=t+this.offset,r=r+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}if(t===r)return this;if(t<0||r>this.original.length)throw new Error("Character is out of bounds");if(t>r)throw new Error("end must be greater than start");this._split(t),this._split(r);let s=this.byStart[t];for(;s;)s.reset(),s=r>s.end?this.byStart[s.end]:null;return this}lastChar(){if(this.outro.length)return this.outro[this.outro.length-1];let t=this.lastChunk;do{if(t.outro.length)return t.outro[t.outro.length-1];if(t.content.length)return t.content[t.content.length-1];if(t.intro.length)return t.intro[t.intro.length-1]}while(t=t.previous);return this.intro.length?this.intro[this.intro.length-1]:""}lastLine(){let t=this.outro.lastIndexOf(RXe);if(t!==-1)return this.outro.substr(t+1);let r=this.outro,s=this.lastChunk;do{if(s.outro.length>0){if(t=s.outro.lastIndexOf(RXe),t!==-1)return s.outro.substr(t+1)+r;r=s.outro+r}if(s.content.length>0){if(t=s.content.lastIndexOf(RXe),t!==-1)return s.content.substr(t+1)+r;r=s.content+r}if(s.intro.length>0){if(t=s.intro.lastIndexOf(RXe),t!==-1)return s.intro.substr(t+1)+r;r=s.intro+r}}while(s=s.previous);return t=this.intro.lastIndexOf(RXe),t!==-1?this.intro.substr(t+1)+r:this.intro+r}slice(t=0,r=this.original.length-this.offset){if(t=t+this.offset,r=r+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}let s="",a=this.firstChunk;for(;a&&(a.start>t||a.end<=t);){if(a.start=r)return s;a=a.next}if(a&&a.edited&&a.start!==t)throw new Error(`Cannot use replaced character ${t} as slice start anchor.`);let o=a;for(;a;){a.intro&&(o!==a||a.start===t)&&(s+=a.intro);let g=a.start=r;if(g&&a.edited&&a.end!==r)throw new Error(`Cannot use replaced character ${r} as slice end anchor.`);let p=o===a?t-a.start:0,f=g?a.content.length+r-a.end:a.content.length;if(s+=a.content.slice(p,f),a.outro&&(!g||a.end===r)&&(s+=a.outro),g)break;a=a.next}return s}snip(t,r){let s=this.clone();return s.remove(0,t),s.remove(r,s.original.length),s}_split(t){if(this.byStart[t]||this.byEnd[t])return;let r=this.lastSearchedChunk,s=t>r.end;for(;r;){if(r.contains(t))return this._splitChunk(r,t);r=s?this.byStart[r.end]:this.byEnd[r.start]}}_splitChunk(t,r){if(t.edited&&t.content.length){let a=tBr(this.original)(r);throw new Error(`Cannot split a chunk that has already been edited (${a.line}:${a.column} \u2013 "${t.original}")`)}let s=t.split(r);return this.byEnd[r]=t,this.byStart[r]=s,this.byEnd[s.end]=s,t===this.lastChunk&&(this.lastChunk=s),this.lastSearchedChunk=t,!0}toString(){let t=this.intro,r=this.firstChunk;for(;r;)t+=r.toString(),r=r.next;return t+this.outro}isEmpty(){let t=this.firstChunk;do if(t.intro.length&&t.intro.trim()||t.content.length&&t.content.trim()||t.outro.length&&t.outro.trim())return!1;while(t=t.next);return!0}length(){let t=this.firstChunk,r=0;do r+=t.intro.length+t.content.length+t.outro.length;while(t=t.next);return r}trimLines(){return this.trim("[\\r\\n]")}trim(t){return this.trimStart(t).trimEnd(t)}trimEndAborted(t){let r=new RegExp((t||"\\s")+"+$");if(this.outro=this.outro.replace(r,""),this.outro.length)return!0;let s=this.lastChunk;do{let a=s.end,o=s.trimEnd(r);if(s.end!==a&&(this.lastChunk===s&&(this.lastChunk=s.next),this.byEnd[s.end]=s,this.byStart[s.next.start]=s.next,this.byEnd[s.next.end]=s.next),o)return!0;s=s.previous}while(s);return!1}trimEnd(t){return this.trimEndAborted(t),this}trimStartAborted(t){let r=new RegExp("^"+(t||"\\s")+"+");if(this.intro=this.intro.replace(r,""),this.intro.length)return!0;let s=this.firstChunk;do{let a=s.end,o=s.trimStart(r);if(s.end!==a&&(s===this.lastChunk&&(this.lastChunk=s.next),this.byEnd[s.end]=s,this.byStart[s.next.start]=s.next,this.byEnd[s.next.end]=s.next),o)return!0;s=s.next}while(s);return!1}trimStart(t){return this.trimStartAborted(t),this}hasChanged(){return this.original!==this.toString()}_replaceRegexp(t,r){function s(o,g){return typeof r=="string"?r.replace(/\$(\$|&|\d+)/g,(p,f)=>f==="$"?"$":f==="&"?o[0]:+f{if(g.index!=null){let p=s(g,this.original);p!==g[0]&&this.overwrite(g.index,g.index+g[0].length,p)}});else{let o=this.original.match(t);if(o&&o.index!=null){let g=s(o,this.original);g!==o[0]&&this.overwrite(o.index,o.index+o[0].length,g)}}return this}_replaceString(t,r){let{original:s}=this,a=s.indexOf(t);return a!==-1&&this.overwrite(a,a+t.length,r),this}replace(t,r){return typeof t=="string"?this._replaceString(t,r):this._replaceRegexp(t,r)}_replaceAllString(t,r){let{original:s}=this,a=t.length;for(let o=s.indexOf(t);o!==-1;o=s.indexOf(t,o+a))s.slice(o,o+a)!==r&&this.overwrite(o,o+a,r);return this}replaceAll(t,r){if(typeof t=="string")return this._replaceAllString(t,r);if(!t.global)throw new TypeError("MagicString.prototype.replaceAll called with a non-global RegExp argument");return this._replaceRegexp(t,r)}},ALi=Object.prototype.hasOwnProperty,rBr=class e{constructor(t={}){this.intro=t.intro||"",this.separator=t.separator!==void 0?t.separator:` -`,this.sources=[],this.uniqueSources=[],this.uniqueSourceIndexByFilename={}}addSource(t){if(t instanceof Gq)return this.addSource({content:t,filename:t.filename,separator:this.separator});if(!pLi(t)||!t.content)throw new Error("bundle.addSource() takes an object with a `content` property, which should be an instance of MagicString, and an optional `filename`");if(["filename","ignoreList","indentExclusionRanges","separator"].forEach(r=>{ALi.call(t,r)||(t[r]=t.content[r])}),t.separator===void 0&&(t.separator=this.separator),t.filename)if(!ALi.call(this.uniqueSourceIndexByFilename,t.filename))this.uniqueSourceIndexByFilename[t.filename]=this.uniqueSources.length,this.uniqueSources.push({filename:t.filename,content:t.content.original});else{let r=this.uniqueSources[this.uniqueSourceIndexByFilename[t.filename]];if(t.content.original!==r.content)throw new Error(`Illegal source: same filename (${t.filename}), different contents`)}return this.sources.push(t),this}append(t,r){return this.addSource({content:new Gq(t),separator:r&&r.separator||""}),this}clone(){let t=new e({intro:this.intro,separator:this.separator});return this.sources.forEach(r=>{t.addSource({filename:r.filename,content:r.content.clone(),separator:r.separator})}),t}generateDecodedMap(t={}){let r=[],s;this.sources.forEach(o=>{Object.keys(o.content.storedNames).forEach(g=>{~r.indexOf(g)||r.push(g)})});let a=new XBt(t.hires);return this.intro&&a.advance(this.intro),this.sources.forEach((o,g)=>{g>0&&a.advance(this.separator);let p=o.filename?this.uniqueSourceIndexByFilename[o.filename]:-1,f=o.content,m=tBr(f.original);f.intro&&a.advance(f.intro),f.firstChunk.eachNext(y=>{let B=m(y.start);y.intro.length&&a.advance(y.intro),o.filename?y.edited?a.addEdit(p,y.content,B,y.storeName?r.indexOf(y.original):-1):a.addUneditedChunk(p,y,f.original,B,f.sourcemapLocations):a.advance(y.content),y.outro.length&&a.advance(y.outro)}),f.outro&&a.advance(f.outro),o.ignoreList&&p!==-1&&(s===void 0&&(s=[]),s.push(p))}),{file:t.file?t.file.split(/[/\\]/).pop():void 0,sources:this.uniqueSources.map(o=>t.file?dLi(t.file,o.filename):o.filename),sourcesContent:this.uniqueSources.map(o=>t.includeContent?o.content:null),names:r,mappings:a.raw,x_google_ignoreList:s}}generateMap(t){return new DXe(this.generateDecodedMap(t))}getIndentString(){let t={};return this.sources.forEach(r=>{let s=r.content._getRawIndentString();s!==null&&(t[s]||(t[s]=0),t[s]+=1)}),Object.keys(t).sort((r,s)=>t[r]-t[s])[0]||" "}indent(t){if(arguments.length||(t=this.getIndentString()),t==="")return this;let r=!this.intro||this.intro.slice(-1)===` +`?o=!0:y!=="\r"&&o&&(o=!1,p===f.start||(this._splitChunk(f,p),f=f.next),f.prependRight(t))}p+=1}p=f.end,f=f.next}return this.outro=this.outro.replace(s,g),this}insert(){throw new Error("magicString.insert(...) is deprecated. Use prependRight(...) or appendLeft(...)")}insertLeft(t,r){return sNe.insertLeft||(console.warn("magicString.insertLeft(...) is deprecated. Use magicString.appendLeft(...) instead"),sNe.insertLeft=!0),this.appendLeft(t,r)}insertRight(t,r){return sNe.insertRight||(console.warn("magicString.insertRight(...) is deprecated. Use magicString.prependRight(...) instead"),sNe.insertRight=!0),this.prependRight(t,r)}move(t,r,s){if(t=t+this.offset,r=r+this.offset,s=s+this.offset,s>=t&&s<=r)throw new Error("Cannot move a selection inside itself");this._split(t),this._split(r),this._split(s);let a=this.byStart[t],o=this.byEnd[r],g=a.previous,p=o.next,f=this.byStart[s];if(!f&&o===this.lastChunk)return this;let m=f?f.previous:this.lastChunk;return g&&(g.next=p),p&&(p.previous=g),m&&(m.next=a),f&&(f.previous=o),a.previous||(this.firstChunk=o.next),o.next||(this.lastChunk=a.previous,this.lastChunk.next=null),a.previous=m,o.next=f||null,m||(this.firstChunk=a),f||(this.lastChunk=o),this}overwrite(t,r,s,a){return a=a||{},this.update(t,r,s,{...a,overwrite:!a.contentOnly})}update(t,r,s,a){if(t=t+this.offset,r=r+this.offset,typeof s!="string")throw new TypeError("replacement content must be a string");if(this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}if(r>this.original.length)throw new Error("end is out of bounds");if(t===r)throw new Error("Cannot overwrite a zero-length range \u2013 use appendLeft or prependRight instead");this._split(t),this._split(r),a===!0&&(sNe.storeName||(console.warn("The final argument to magicString.overwrite(...) should be an options object. See https://github.com/rich-harris/magic-string"),sNe.storeName=!0),a={storeName:!0});let o=a!==void 0?a.storeName:!1,g=a!==void 0?a.overwrite:!1;if(o){let m=this.original.slice(t,r);Object.defineProperty(this.storedNames,m,{writable:!0,value:!0,enumerable:!0})}let p=this.byStart[t],f=this.byEnd[r];if(p){let m=p;for(;m!==f;){if(m.next!==this.byStart[m.end])throw new Error("Cannot overwrite across a split point");m=m.next,m.edit("",!1)}p.edit(s,o,!g)}else{let m=new UBt(t,r,"").edit(s,o);f.next=m,m.previous=f}return this}prepend(t){if(typeof t!="string")throw new TypeError("outro content must be a string");return this.intro=t+this.intro,this}prependLeft(t,r){if(t=t+this.offset,typeof r!="string")throw new TypeError("inserted content must be a string");this._split(t);let s=this.byEnd[t];return s?s.prependLeft(r):this.intro=r+this.intro,this}prependRight(t,r){if(t=t+this.offset,typeof r!="string")throw new TypeError("inserted content must be a string");this._split(t);let s=this.byStart[t];return s?s.prependRight(r):this.outro=r+this.outro,this}remove(t,r){if(t=t+this.offset,r=r+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}if(t===r)return this;if(t<0||r>this.original.length)throw new Error("Character is out of bounds");if(t>r)throw new Error("end must be greater than start");this._split(t),this._split(r);let s=this.byStart[t];for(;s;)s.intro="",s.outro="",s.edit(""),s=r>s.end?this.byStart[s.end]:null;return this}reset(t,r){if(t=t+this.offset,r=r+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}if(t===r)return this;if(t<0||r>this.original.length)throw new Error("Character is out of bounds");if(t>r)throw new Error("end must be greater than start");this._split(t),this._split(r);let s=this.byStart[t];for(;s;)s.reset(),s=r>s.end?this.byStart[s.end]:null;return this}lastChar(){if(this.outro.length)return this.outro[this.outro.length-1];let t=this.lastChunk;do{if(t.outro.length)return t.outro[t.outro.length-1];if(t.content.length)return t.content[t.content.length-1];if(t.intro.length)return t.intro[t.intro.length-1]}while(t=t.previous);return this.intro.length?this.intro[this.intro.length-1]:""}lastLine(){let t=this.outro.lastIndexOf(xXe);if(t!==-1)return this.outro.substr(t+1);let r=this.outro,s=this.lastChunk;do{if(s.outro.length>0){if(t=s.outro.lastIndexOf(xXe),t!==-1)return s.outro.substr(t+1)+r;r=s.outro+r}if(s.content.length>0){if(t=s.content.lastIndexOf(xXe),t!==-1)return s.content.substr(t+1)+r;r=s.content+r}if(s.intro.length>0){if(t=s.intro.lastIndexOf(xXe),t!==-1)return s.intro.substr(t+1)+r;r=s.intro+r}}while(s=s.previous);return t=this.intro.lastIndexOf(xXe),t!==-1?this.intro.substr(t+1)+r:this.intro+r}slice(t=0,r=this.original.length-this.offset){if(t=t+this.offset,r=r+this.offset,this.original.length!==0){for(;t<0;)t+=this.original.length;for(;r<0;)r+=this.original.length}let s="",a=this.firstChunk;for(;a&&(a.start>t||a.end<=t);){if(a.start=r)return s;a=a.next}if(a&&a.edited&&a.start!==t)throw new Error(`Cannot use replaced character ${t} as slice start anchor.`);let o=a;for(;a;){a.intro&&(o!==a||a.start===t)&&(s+=a.intro);let g=a.start=r;if(g&&a.edited&&a.end!==r)throw new Error(`Cannot use replaced character ${r} as slice end anchor.`);let p=o===a?t-a.start:0,f=g?a.content.length+r-a.end:a.content.length;if(s+=a.content.slice(p,f),a.outro&&(!g||a.end===r)&&(s+=a.outro),g)break;a=a.next}return s}snip(t,r){let s=this.clone();return s.remove(0,t),s.remove(r,s.original.length),s}_split(t){if(this.byStart[t]||this.byEnd[t])return;let r=this.lastSearchedChunk,s=t>r.end;for(;r;){if(r.contains(t))return this._splitChunk(r,t);r=s?this.byStart[r.end]:this.byEnd[r.start]}}_splitChunk(t,r){if(t.edited&&t.content.length){let a=aBr(this.original)(r);throw new Error(`Cannot split a chunk that has already been edited (${a.line}:${a.column} \u2013 "${t.original}")`)}let s=t.split(r);return this.byEnd[r]=t,this.byStart[r]=s,this.byEnd[s.end]=s,t===this.lastChunk&&(this.lastChunk=s),this.lastSearchedChunk=t,!0}toString(){let t=this.intro,r=this.firstChunk;for(;r;)t+=r.toString(),r=r.next;return t+this.outro}isEmpty(){let t=this.firstChunk;do if(t.intro.length&&t.intro.trim()||t.content.length&&t.content.trim()||t.outro.length&&t.outro.trim())return!1;while(t=t.next);return!0}length(){let t=this.firstChunk,r=0;do r+=t.intro.length+t.content.length+t.outro.length;while(t=t.next);return r}trimLines(){return this.trim("[\\r\\n]")}trim(t){return this.trimStart(t).trimEnd(t)}trimEndAborted(t){let r=new RegExp((t||"\\s")+"+$");if(this.outro=this.outro.replace(r,""),this.outro.length)return!0;let s=this.lastChunk;do{let a=s.end,o=s.trimEnd(r);if(s.end!==a&&(this.lastChunk===s&&(this.lastChunk=s.next),this.byEnd[s.end]=s,this.byStart[s.next.start]=s.next,this.byEnd[s.next.end]=s.next),o)return!0;s=s.previous}while(s);return!1}trimEnd(t){return this.trimEndAborted(t),this}trimStartAborted(t){let r=new RegExp("^"+(t||"\\s")+"+");if(this.intro=this.intro.replace(r,""),this.intro.length)return!0;let s=this.firstChunk;do{let a=s.end,o=s.trimStart(r);if(s.end!==a&&(s===this.lastChunk&&(this.lastChunk=s.next),this.byEnd[s.end]=s,this.byStart[s.next.start]=s.next,this.byEnd[s.next.end]=s.next),o)return!0;s=s.next}while(s);return!1}trimStart(t){return this.trimStartAborted(t),this}hasChanged(){return this.original!==this.toString()}_replaceRegexp(t,r){function s(o,g){return typeof r=="string"?r.replace(/\$(\$|&|\d+)/g,(p,f)=>f==="$"?"$":f==="&"?o[0]:+f{if(g.index!=null){let p=s(g,this.original);p!==g[0]&&this.overwrite(g.index,g.index+g[0].length,p)}});else{let o=this.original.match(t);if(o&&o.index!=null){let g=s(o,this.original);g!==o[0]&&this.overwrite(o.index,o.index+o[0].length,g)}}return this}_replaceString(t,r){let{original:s}=this,a=s.indexOf(t);return a!==-1&&this.overwrite(a,a+t.length,r),this}replace(t,r){return typeof t=="string"?this._replaceString(t,r):this._replaceRegexp(t,r)}_replaceAllString(t,r){let{original:s}=this,a=t.length;for(let o=s.indexOf(t);o!==-1;o=s.indexOf(t,o+a))s.slice(o,o+a)!==r&&this.overwrite(o,o+a,r);return this}replaceAll(t,r){if(typeof t=="string")return this._replaceAllString(t,r);if(!t.global)throw new TypeError("MagicString.prototype.replaceAll called with a non-global RegExp argument");return this._replaceRegexp(t,r)}},hLi=Object.prototype.hasOwnProperty,cBr=class e{constructor(t={}){this.intro=t.intro||"",this.separator=t.separator!==void 0?t.separator:` +`,this.sources=[],this.uniqueSources=[],this.uniqueSourceIndexByFilename={}}addSource(t){if(t instanceof Zq)return this.addSource({content:t,filename:t.filename,separator:this.separator});if(!yLi(t)||!t.content)throw new Error("bundle.addSource() takes an object with a `content` property, which should be an instance of MagicString, and an optional `filename`");if(["filename","ignoreList","indentExclusionRanges","separator"].forEach(r=>{hLi.call(t,r)||(t[r]=t.content[r])}),t.separator===void 0&&(t.separator=this.separator),t.filename)if(!hLi.call(this.uniqueSourceIndexByFilename,t.filename))this.uniqueSourceIndexByFilename[t.filename]=this.uniqueSources.length,this.uniqueSources.push({filename:t.filename,content:t.content.original});else{let r=this.uniqueSources[this.uniqueSourceIndexByFilename[t.filename]];if(t.content.original!==r.content)throw new Error(`Illegal source: same filename (${t.filename}), different contents`)}return this.sources.push(t),this}append(t,r){return this.addSource({content:new Zq(t),separator:r&&r.separator||""}),this}clone(){let t=new e({intro:this.intro,separator:this.separator});return this.sources.forEach(r=>{t.addSource({filename:r.filename,content:r.content.clone(),separator:r.separator})}),t}generateDecodedMap(t={}){let r=[],s;this.sources.forEach(o=>{Object.keys(o.content.storedNames).forEach(g=>{~r.indexOf(g)||r.push(g)})});let a=new KBt(t.hires);return this.intro&&a.advance(this.intro),this.sources.forEach((o,g)=>{g>0&&a.advance(this.separator);let p=o.filename?this.uniqueSourceIndexByFilename[o.filename]:-1,f=o.content,m=aBr(f.original);f.intro&&a.advance(f.intro),f.firstChunk.eachNext(y=>{let B=m(y.start);y.intro.length&&a.advance(y.intro),o.filename?y.edited?a.addEdit(p,y.content,B,y.storeName?r.indexOf(y.original):-1):a.addUneditedChunk(p,y,f.original,B,f.sourcemapLocations):a.advance(y.content),y.outro.length&&a.advance(y.outro)}),f.outro&&a.advance(f.outro),o.ignoreList&&p!==-1&&(s===void 0&&(s=[]),s.push(p))}),{file:t.file?t.file.split(/[/\\]/).pop():void 0,sources:this.uniqueSources.map(o=>t.file?_Li(t.file,o.filename):o.filename),sourcesContent:this.uniqueSources.map(o=>t.includeContent?o.content:null),names:r,mappings:a.raw,x_google_ignoreList:s}}generateMap(t){return new kXe(this.generateDecodedMap(t))}getIndentString(){let t={};return this.sources.forEach(r=>{let s=r.content._getRawIndentString();s!==null&&(t[s]||(t[s]=0),t[s]+=1)}),Object.keys(t).sort((r,s)=>t[r]-t[s])[0]||" "}indent(t){if(arguments.length||(t=this.getIndentString()),t==="")return this;let r=!this.intro||this.intro.slice(-1)===` `;return this.sources.forEach((s,a)=>{let o=s.separator!==void 0?s.separator:this.separator,g=r||a>0&&/\r?\n$/.test(o);s.content.indent(t,{exclude:s.indentExclusionRanges,indentStart:g}),r=s.content.lastChar()===` -`}),this.intro&&(this.intro=t+this.intro.replace(/^[^\n]/gm,(s,a)=>a>0?t+s:s)),this}prepend(t){return this.intro=t+this.intro,this}toString(){let t=this.sources.map((r,s)=>{let a=r.separator!==void 0?r.separator:this.separator;return(s>0?a:"")+r.content.toString()}).join("");return this.intro+t}isEmpty(){return!(this.intro.length&&this.intro.trim()||this.sources.some(t=>!t.content.isEmpty()))}length(){return this.sources.reduce((t,r)=>t+r.content.length(),this.intro.length)}trimLines(){return this.trim("[\\r\\n]")}trim(t){return this.trimStart(t).trimEnd(t)}trimStart(t){let r=new RegExp("^"+(t||"\\s")+"+");if(this.intro=this.intro.replace(r,""),!this.intro){let s,a=0;do if(s=this.sources[a++],!s)break;while(!s.content.trimStartAborted(t))}return this}trimEnd(t){let r=new RegExp((t||"\\s")+"+$"),s,a=this.sources.length-1;do if(s=this.sources[a--],!s){this.intro=this.intro.replace(r,"");break}while(!s.content.trimEndAborted(t));return this}};Gq.Bundle=rBr;Gq.SourceMap=DXe;Gq.default=Gq;fLi.exports=Gq});var iBr=z(qoe=>{"use strict";var OAc=qoe&&qoe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(qoe,"__esModule",{value:!0});qoe.UpdateRecorderBase=qoe.IndexOutOfBoundException=void 0;var MAc=a2(),QAc=OAc(ILi()),YAc=W5(),JBt=class extends MAc.BaseException{constructor(t,r,s=1/0){super(`Index ${t} outside of range [${r}, ${s}].`)}};qoe.IndexOutOfBoundException=JBt;var nBr=class e{data;bom;_path;content;constructor(t,r,s="utf-8",a=!1){this.data=t,this.bom=a;let o;try{o=new TextDecoder(s,{fatal:!0,ignoreBOM:!1}).decode(t)}catch(g){throw g instanceof TypeError?new Error(`Failed to decode "${r}" as ${s} text.`):g}this._path=r,this.content=new QAc.default(o)}static createFromFileEntry(t){let r=t.content.byteLength>0&&t.content.readUInt8(0),s=t.content.byteLength>1&&t.content.readUInt8(1),a=t.content.byteLength>2&&t.content.readUInt8(2);return r==239&&s==187&&a==191?new e(t.content,t.path,"utf-8",!0):r===255&&s==254?new e(t.content,t.path,"utf-16le",!0):r===254&&s==255?new e(t.content,t.path,"utf-16be",!0):new e(t.content,t.path)}get path(){return this._path}_assertIndex(t){if(t<0||t>this.content.original.length)throw new JBt(t,0,this.content.original.length)}insertLeft(t,r){return this._assertIndex(t),this.content.appendLeft(t,r.toString()),this}insertRight(t,r){return this._assertIndex(t),this.content.appendRight(t,r.toString()),this}remove(t,r){return this._assertIndex(t),this.content.remove(t,t+r),this}apply(t){if(!t.equals(this.data))throw new YAc.ContentHasMutatedException(this.path);return Buffer.from((this.bom?"\uFEFF":"")+this.content.toString(),"utf-8")}};qoe.UpdateRecorderBase=nBr});var jBt=z(KBt=>{"use strict";Object.defineProperty(KBt,"__esModule",{value:!0});KBt.ScopedTree=void 0;var dS=a2(),HAc=MBt(),XAc=QM(),xXe=class{_base;scope;constructor(t,r){this._base=t,this.scope=r}get path(){return(0,dS.join)(dS.NormalizedRoot,(0,dS.relative)(this.scope,this._base.path))}get content(){return this._base.content}},UBt=class e{_base;scope;constructor(t,r){this._base=t,this.scope=r}get parent(){return!this._base.parent||this._base.path==this.scope?null:new e(this._base.parent,this.scope)}get path(){return(0,dS.join)(dS.NormalizedRoot,(0,dS.relative)(this.scope,this._base.path))}get subdirs(){return this._base.subdirs}get subfiles(){return this._base.subfiles}dir(t){let r=this._base.dir(t);return r&&new e(r,this.scope)}file(t){let r=this._base.file(t);return r&&new xXe(r,this.scope)}visit(t){return this._base.visit((r,s)=>{t((0,dS.join)(dS.NormalizedRoot,(0,dS.relative)(this.scope,r)),s&&new xXe(s,this.scope))})}},sBr=class e{_base;_root;constructor(t,r){this._base=t;let s=(0,dS.normalize)("/"+r);this._root=new UBt(this._base.getDir(s),s)}get root(){return this._root}branch(){return new e(this._base.branch(),this._root.scope)}merge(t,r){let s=this,a=new class extends HAc.DelegateTree{get actions(){return t.actions.map(o=>s._fullPathAction(o))}}(t);this._base.merge(a,r)}read(t){return this._base.read(this._fullPath(t))}readText(t){return this._base.readText(this._fullPath(t))}readJson(t){return this._base.readJson(this._fullPath(t))}exists(t){return this._base.exists(this._fullPath(t))}get(t){let r=this._base.get(this._fullPath(t));return r&&new xXe(r,this._root.scope)}getDir(t){let r=this._base.getDir(this._fullPath(t));return r&&new UBt(r,this._root.scope)}visit(t){return this._root.visit(t)}overwrite(t,r){return this._base.overwrite(this._fullPath(t),r)}beginUpdate(t){return this._base.beginUpdate(this._fullPath(t))}commitUpdate(t){return this._base.commitUpdate(t)}create(t,r){return this._base.create(this._fullPath(t),r)}delete(t){return this._base.delete(this._fullPath(t))}rename(t,r){return this._base.rename(this._fullPath(t),this._fullPath(r))}apply(t,r){return this._base.apply(this._fullPathAction(t),r)}get actions(){let t=[];for(let r of this._base.actions)r.path.startsWith(this._root.scope+"/")&&(r.kind!=="r"?t.push({...r,path:(0,dS.join)(dS.NormalizedRoot,(0,dS.relative)(this._root.scope,r.path))}):r.to.startsWith(this._root.scope+"/")&&t.push({...r,path:(0,dS.join)(dS.NormalizedRoot,(0,dS.relative)(this._root.scope,r.path)),to:(0,dS.join)(dS.NormalizedRoot,(0,dS.relative)(this._root.scope,r.to))}));return t}[XAc.TreeSymbol](){return this}_fullPath(t){return(0,dS.join)(this._root.scope,(0,dS.normalize)("/"+t))}_fullPathAction(t){let r;return t.kind==="r"?r={...t,path:this._fullPath(t.path),to:this._fullPath(t.to)}:r={...t,path:this._fullPath(t.path)},r}};KBt.ScopedTree=sBr});var jIe=z(DK=>{"use strict";Object.defineProperty(DK,"__esModule",{value:!0});DK.FilterHostTree=DK.HostCreateTree=DK.HostTree=DK.HostDirEntry=void 0;var nZ=a2(),CLi=eNe(),g3=W5(),JAc=MBt(),UAc=lLi(),RK=QM(),mLi=iBr(),KAc=jBt(),jAc=0,zBt=class{parent;path;_host;_tree;constructor(t,r,s,a){this.parent=t,this.path=r,this._host=s,this._tree=a}get subdirs(){return this._host.list(this.path).filter(t=>this._host.isDirectory((0,nZ.join)(this.path,t)))}get subfiles(){return this._host.list(this.path).filter(t=>this._host.isFile((0,nZ.join)(this.path,t)))}dir(t){return this._tree.getDir((0,nZ.join)(this.path,t))}file(t){return this._tree.get((0,nZ.join)(this.path,t))}visit(t){try{this.getSubfilesRecursively().forEach(r=>t(r.path,r))}catch(r){if(r!==RK.FileVisitorCancelToken)throw r}}getSubfilesRecursively(){function t(r){return r.subdirs.reduce((s,a)=>[...s,...t(r.dir(a))],r.subfiles.map(s=>r.file(s)))}return t(this)}};DK.HostDirEntry=zBt;var iNe=class e{_backend;_id=--jAc;_record;_recordSync;_ancestry=new Set;_dirCache=new Map;[RK.TreeSymbol](){return this}static isHostTree(t){return t instanceof e||typeof t=="object"&&typeof t._ancestry=="object"}constructor(t=new nZ.virtualFs.Empty){this._backend=t,this._record=new nZ.virtualFs.CordHost(new nZ.virtualFs.SafeReadonlyHost(t)),this._recordSync=new nZ.virtualFs.SyncDelegateHost(this._record)}_normalizePath(t){return(0,nZ.normalize)("/"+t)}_willCreate(t){return this._record.willCreate(t)}_willOverwrite(t){return this._record.willOverwrite(t)}_willDelete(t){return this._record.willDelete(t)}_willRename(t){return this._record.willRename(t)}branch(){let t=new e(this._backend);return t._record=this._record.clone(),t._recordSync=new nZ.virtualFs.SyncDelegateHost(t._record),t._ancestry=new Set(this._ancestry).add(this._id),t}isAncestorOf(t){return t instanceof e?t._ancestry.has(this._id):t instanceof JAc.DelegateTree?this.isAncestorOf(t._other):t instanceof KAc.ScopedTree?this.isAncestorOf(t._base):!1}merge(t,r=RK.MergeStrategy.Default){if(t===this)return;this.isAncestorOf(t)&&(r|=RK.MergeStrategy.Overwrite);let s=(r&RK.MergeStrategy.AllowCreationConflict)==RK.MergeStrategy.AllowCreationConflict,a=(r&RK.MergeStrategy.AllowOverwriteConflict)==RK.MergeStrategy.AllowOverwriteConflict,o=(r&RK.MergeStrategy.AllowDeleteConflict)==RK.MergeStrategy.AllowDeleteConflict;t.actions.forEach(g=>{switch(g.kind){case"c":{let{path:p,content:f}=g;if(this._willCreate(p)||this._willOverwrite(p)||this.exists(p)){let m=this.read(p);if(m&&f.equals(m))return;if(!s)throw new g3.MergeConflictException(p);this._record.overwrite(p,f).subscribe()}else this._record.create(p,f).subscribe();return}case"o":{let{path:p,content:f}=g;if(this._willDelete(p)&&!a)throw new g3.MergeConflictException(p);if(this._willOverwrite(p)){let m=this.read(p);if(m&&f.equals(m))return;if(!a)throw new g3.MergeConflictException(p)}this._record.write(p,f).subscribe();return}case"r":{let{path:p,to:f}=g;if(this._willDelete(p))throw new g3.MergeConflictException(p);if(this._willRename(p)){if(this._record.willRenameTo(p,f))return;throw new g3.MergeConflictException(p)}this.rename(p,f);return}case"d":{let{path:p}=g;if(this._willDelete(p))return;if(!this.exists(p)&&!o)throw new g3.MergeConflictException(p);this._recordSync.delete(p);return}}})}get root(){return this.getDir("/")}read(t){let r=this.get(t);return r?r.content:null}readText(t){let r=this.read(t);if(r===null)throw new g3.FileDoesNotExistException(t);let s=new TextDecoder("utf-8",{fatal:!0});try{return s.decode(r)}catch(a){throw a instanceof TypeError||a.code==="ERR_ENCODING_INVALID_ENCODED_DATA"?new Error(`Failed to decode "${t}" as UTF-8 text.`):a}}readJson(t){let r=this.readText(t),s=[],a=(0,CLi.parse)(r,s,{allowTrailingComma:!0});if(s[0]){let{error:o,offset:g}=s[0];throw new Error(`Failed to parse "${t}" as JSON. ${(0,CLi.printParseErrorCode)(o)} at offset: ${g}.`)}return a}exists(t){return this._recordSync.isFile(this._normalizePath(t))}get(t){let r=this._normalizePath(t);if(this._recordSync.isDirectory(r))throw new nZ.PathIsDirectoryException(r);return this._recordSync.exists(r)?new UAc.LazyFileEntry(r,()=>Buffer.from(this._recordSync.read(r))):null}getDir(t){let r=this._normalizePath(t);if(this._recordSync.isFile(r))throw new nZ.PathIsFileException(r);let s=this._dirCache.get(r);if(!s){let a=(0,nZ.dirname)(r);r===a&&(a=null),s=new zBt(a&&this.getDir(a),r,this._recordSync,this),this._dirCache.set(r,s)}return s}visit(t){this.root.visit((r,s)=>{t(r,s)})}overwrite(t,r){let s=this._normalizePath(t);if(!this._recordSync.exists(s))throw new g3.FileDoesNotExistException(s);let a=typeof r=="string"?Buffer.from(r):r;this._record.overwrite(s,a).subscribe()}beginUpdate(t){let r=this.get(t);if(!r)throw new g3.FileDoesNotExistException(t);return mLi.UpdateRecorderBase.createFromFileEntry(r)}commitUpdate(t){if(t instanceof mLi.UpdateRecorderBase){let r=t.path,s=this.get(r);if(s){let a=t.apply(s.content);a.equals(s.content)||this.overwrite(r,a)}else throw new g3.ContentHasMutatedException(r)}else throw new g3.InvalidUpdateRecordException}create(t,r){let s=this._normalizePath(t);if(this._recordSync.exists(s))throw new g3.FileAlreadyExistException(s);let a=typeof r=="string"?Buffer.from(r):r;this._record.create(s,a).subscribe()}delete(t){this._recordSync.delete(this._normalizePath(t))}rename(t,r){this._recordSync.rename(this._normalizePath(t),this._normalizePath(r))}apply(t,r){throw new g3.SchematicsException("Apply not implemented on host trees.")}*generateActions(){for(let t of this._record.records())switch(t.kind){case"create":yield{id:this._id,parent:0,kind:"c",path:t.path,content:Buffer.from(t.content)};break;case"overwrite":yield{id:this._id,parent:0,kind:"o",path:t.path,content:Buffer.from(t.content)};break;case"rename":yield{id:this._id,parent:0,kind:"r",path:t.from,to:t.to};break;case"delete":yield{id:this._id,parent:0,kind:"d",path:t.path};break}}get actions(){return Array.from(this.generateActions())}};DK.HostTree=iNe;var oBr=class extends iNe{constructor(t){super();let r=new iNe(t);r.visit(s=>{let a=r.read(s);a&&this.create(s,a)})}};DK.HostCreateTree=oBr;var aBr=class extends iNe{constructor(t,r=()=>!0){let s=new nZ.virtualFs.SimpleMemoryHost,a=t._backend,o=["/"];for(;o.length>0;){let g=o.pop();if(g===void 0)break;let p=!1;if(a.isDirectory(g).subscribe(y=>p=y),p){a.list(g).subscribe(y=>o.push(...y.map(B=>(0,nZ.join)(g,B))));continue}let f=!1;if(a.isFile(g).subscribe(y=>f=y),!f||!r(g))continue;let m=null;a.read(g).subscribe(y=>m=y),m!==null&&s.write(g,m).subscribe()}super(s);for(let g of t.actions)if(r(g.path))switch(g.kind){case"c":this.create(g.path,g.content);break;case"d":this.delete(g.path);break;case"o":this.overwrite(g.path,g.content);break;case"r":this.rename(g.path,g.to);break}}};DK.FilterHostTree=aBr});var kXe=z(sNe=>{"use strict";Object.defineProperty(sNe,"__esModule",{value:!0});sNe.empty=$Ac;sNe.branch=edc;sNe.merge=tdc;sNe.partition=rdc;var zAc=W5(),qBt=jIe(),qAc=QM();function $Ac(){return new qBt.HostTree}function edc(e){return e.branch()}function tdc(e,t,r=qAc.MergeStrategy.Default){return e.merge(t,r),e}function rdc(e,t){if(e instanceof qBt.HostTree)return[new qBt.FilterHostTree(e,t),new qBt.FilterHostTree(e,(r,s)=>!t(r,s))];throw new zAc.SchematicsException("Tree type is not supported.")}});var hLi=z(eae=>{"use strict";Object.defineProperty(eae,"__esModule",{value:!0});eae.NullTree=eae.NullTreeDirEntry=eae.CannotCreateFileException=void 0;var GXe=a2(),$oe=W5(),ndc=QM(),idc=iBr(),$Bt=class extends GXe.BaseException{constructor(t){super(`Cannot create file "${t}".`)}};eae.CannotCreateFileException=$Bt;var FXe=class e{path;get parent(){return this.path=="/"?null:new e((0,GXe.dirname)(this.path))}constructor(t){this.path=t}subdirs=[];subfiles=[];dir(t){return new e((0,GXe.join)(this.path,t))}file(t){return null}visit(){}};eae.NullTreeDirEntry=FXe;var cBr=class e{[ndc.TreeSymbol](){return this}branch(){return new e}merge(t,r){}root=new FXe((0,GXe.normalize)("/"));exists(t){return!1}read(t){return null}readText(t){throw new $oe.FileDoesNotExistException(t)}readJson(t){throw new $oe.FileDoesNotExistException(t)}get(t){return null}getDir(t){return new FXe((0,GXe.normalize)("/"+t))}visit(){}beginUpdate(t){throw new $oe.FileDoesNotExistException(t)}commitUpdate(t){throw new $oe.FileDoesNotExistException(t instanceof idc.UpdateRecorderBase?t.path:"")}copy(t,r){throw new $oe.FileDoesNotExistException(t)}delete(t){throw new $oe.FileDoesNotExistException(t)}create(t,r){throw new $Bt(t)}rename(t,r){throw new $oe.FileDoesNotExistException(t)}overwrite(t,r){throw new $oe.FileDoesNotExistException(t)}apply(t,r){}get actions(){return[]}};eae.NullTree=cBr});var rvt=z(tae=>{"use strict";Object.defineProperty(tae,"__esModule",{value:!0});tae.InvalidSourceResultException=tae.InvalidRuleResultException=void 0;tae.callSource=sdc;tae.callRule=odc;var yLi=a2(),xK=Eb(),bLi=QM();function ELi(e){return e===void 0?"undefined":e===null?"null":typeof e=="function"?"Function()":typeof e!="object"?`${typeof e}(${JSON.stringify(e)})`:Object.getPrototypeOf(e)==Object?`Object(${JSON.stringify(e)})`:e.constructor?`Instance of class ${e.constructor.name}`:"Unknown Object"}var evt=class extends yLi.BaseException{constructor(t){super(`Invalid rule result: ${ELi(t)}.`)}};tae.InvalidRuleResultException=evt;var tvt=class extends yLi.BaseException{constructor(t){super(`Invalid source result: ${ELi(t)}.`)}};tae.InvalidSourceResultException=tvt;function sdc(e,t){return(0,xK.defer)(async()=>{let r=e(t);if((0,xK.isObservable)(r)&&(r=await(0,xK.lastValueFrom)(r.pipe((0,xK.defaultIfEmpty)(void 0)))),r&&bLi.TreeSymbol in r)return r;throw new tvt(r)})}function odc(e,t,r){return(0,xK.isObservable)(t)?t.pipe((0,xK.mergeMap)(s=>_Li(e,s,r))):(0,xK.defer)(()=>_Li(e,t,r))}async function _Li(e,t,r){let s=await e(t,r);for(;typeof s=="function";)s=await s(t,r);if(typeof s>"u")return t;if((0,xK.isObservable)(s)&&(s=await(0,xK.lastValueFrom)(s.pipe((0,xK.defaultIfEmpty)(t)))),s&&bLi.TreeSymbol in s)return s;throw new evt(s)}});var ivt=z(oNe=>{"use strict";Object.defineProperty(oNe,"__esModule",{value:!0});oNe.SchematicImpl=oNe.InvalidSchematicsNameException=void 0;var adc=a2(),ZXe=Eb(),cdc=rvt(),ldc=jBt(),nvt=class extends adc.BaseException{constructor(t){super(`Schematics has invalid name: "${t}".`)}};oNe.InvalidSchematicsNameException=nvt;var lBr=class{_description;_factory;_collection;_engine;constructor(t,r,s,a){if(this._description=t,this._factory=r,this._collection=s,this._engine=a,!t.name.match(/^[-@/_.a-zA-Z0-9]+$/))throw new nvt(t.name)}get description(){return this._description}get collection(){return this._collection}call(t,r,s,a){let o=this._engine.createContext(this,s,a);return r.pipe((0,ZXe.first)(),(0,ZXe.concatMap)(g=>this._engine.transformOptions(this,t,o).pipe((0,ZXe.map)(p=>[g,p]))),(0,ZXe.concatMap)(([g,p])=>{let f,m=!1;return a&&a.scope?(m=!0,f=new ldc.ScopedTree(g,a.scope)):f=g,(0,cdc.callRule)(this._factory(p),f,o).pipe((0,ZXe.map)(y=>y===f?g:m?(g.merge(y),g):y))}))}};oNe.SchematicImpl=lBr});var BLi=z(c2=>{"use strict";Object.defineProperty(c2,"__esModule",{value:!0});c2.SchematicEngine=c2.TaskScheduler=c2.CollectionImpl=c2.UnknownTaskDependencyException=c2.UnregisteredTaskException=c2.SchematicEngineConflictingException=c2.PrivateSchematicException=c2.UnknownSchematicException=c2.CircularCollectionException=c2.UnknownCollectionException=c2.UnknownUrlSourceProtocol=void 0;var kK=a2(),svt=Eb(),udc=QM(),gdc=hLi(),Adc=kXe(),ddc=ivt(),ovt=class extends kK.BaseException{constructor(t){super(`Unknown Protocol on url "${t}".`)}};c2.UnknownUrlSourceProtocol=ovt;var avt=class extends kK.BaseException{constructor(t){super(`Unknown collection "${t}".`)}};c2.UnknownCollectionException=avt;var cvt=class extends kK.BaseException{constructor(t){super(`Circular collection reference "${t}".`)}};c2.CircularCollectionException=cvt;var lvt=class extends kK.BaseException{constructor(t,r){super(`Schematic "${t}" not found in collection "${r.name}".`)}};c2.UnknownSchematicException=lvt;var uvt=class extends kK.BaseException{constructor(t,r){super(`Schematic "${t}" not found in collection "${r.name}".`)}};c2.PrivateSchematicException=uvt;var gvt=class extends kK.BaseException{constructor(){super("A schematic was called from a different engine as its parent.")}};c2.SchematicEngineConflictingException=gvt;var Avt=class extends kK.BaseException{constructor(t,r){let s=r?` in schematic "${r.name}"`:"";super(`Unregistered task "${t}"${s}.`)}};c2.UnregisteredTaskException=Avt;var dvt=class extends kK.BaseException{constructor(t){super(`Unknown task dependency [ID: ${t.id}].`)}};c2.UnknownTaskDependencyException=dvt;var pvt=class{_description;_engine;baseDescriptions;constructor(t,r,s){this._description=t,this._engine=r,this.baseDescriptions=s}get description(){return this._description}get name(){return this.description.name||""}createSchematic(t,r=!1){return this._engine.createSchematic(t,this,r)}listSchematicNames(t){return this._engine.listSchematicNames(this,t)}};c2.CollectionImpl=pvt;var fvt=class e{_context;_queue=new kK.PriorityQueue((t,r)=>t.priority-r.priority);_taskIds=new Map;static _taskIdCounter=1;constructor(t){this._context=t}_calculatePriority(t){return t.size===0?0:[...t].reduce((s,a)=>s+a.priority,1)}_mapDependencies(t){if(!t)return new Set;let r=t.map(s=>{let a=this._taskIds.get(s);if(!a)throw new dvt(s);return a});return new Set(r)}schedule(t){let r=this._mapDependencies(t.dependencies),s=this._calculatePriority(r),a={id:e._taskIdCounter++,priority:s,configuration:t,context:this._context};this._queue.push(a);let o={id:a.id};return this._taskIds.set(o,a),o}finalize(){let t=this._queue.toArray();return this._queue.clear(),this._taskIds.clear(),t}};c2.TaskScheduler=fvt;var uBr=class{_host;_workflow;_collectionCache=new Map;_schematicCache=new WeakMap;_taskSchedulers=new Array;constructor(t,r){this._host=t,this._workflow=r}get workflow(){return this._workflow||null}get defaultMergeStrategy(){return this._host.defaultMergeStrategy||udc.MergeStrategy.Default}createCollection(t,r){let s=this._collectionCache.get(t);if(s)return s;let[a,o]=this._createCollectionDescription(t,r?.description);return s=new pvt(a,this,o),this._collectionCache.set(t,s),this._schematicCache.set(s,new Map),s}_createCollectionDescription(t,r,s){let a=this._host.createCollectionDescription(t,r);if(!a)throw new avt(t);if(s&&s.has(a.name))throw new cvt(t);let o=new Array;if(a.extends){s=(s||new Set).add(a.name);for(let g of a.extends){let[p,f]=this._createCollectionDescription(g,a,new Set(s));o.unshift(p,...f)}}return[a,o]}createContext(t,r,s){if(r&&r.engine&&r.engine!==this)throw new gvt;let a=!0;s&&s.interactive!=null?a=s.interactive:r&&r.interactive!=null&&(a=r.interactive);let o={debug:r&&r.debug||!1,engine:this,logger:r&&r.logger&&r.logger.createChild(t.description.name)||new kK.logging.NullLogger,schematic:t,strategy:r&&r.strategy!==void 0?r.strategy:this.defaultMergeStrategy,interactive:a,addTask:m},g=this._host.transformContext(o);g&&(o=g);let p=new fvt(o),f=this._host;this._taskSchedulers.push(p);function m(y,B){let v=y.toConfiguration();if(!f.hasTaskExecutor(v.name))throw new Avt(v.name,t.description);return v.dependencies=v.dependencies||[],B&&v.dependencies.unshift(...B),p.schedule(v)}return o}createSchematic(t,r,s=!1){let a=this._schematicCache.get(r),o=a?.get(t);if(o)return o;let g=r.description,p=this._host.createSchematicDescription(t,r.description);if(!p){if(r.baseDescriptions){for(let m of r.baseDescriptions)if(p=this._host.createSchematicDescription(t,m),p){g=m;break}}if(!p)throw new lvt(t,r.description)}if(p.private&&!s)throw new uvt(t,r.description);let f=this._host.getSchematicRuleFactory(p,g);return o=new ddc.SchematicImpl(p,f,r,this),a?.set(t,o),o}listSchematicNames(t,r){let s=this._host.listSchematicNames(t.description,r);if(t.baseDescriptions)for(let a of t.baseDescriptions)s.push(...this._host.listSchematicNames(a,r));return[...new Set(s)].sort()}transformOptions(t,r,s){return this._host.transformOptions(t.description,r,s)}createSourceFromUrl(t,r){switch(t.protocol){case"null:":return()=>new gdc.NullTree;case"empty:":return()=>(0,Adc.empty)()}let s=this._host.createSourceFromUrl(t,r);if(!s)throw new ovt(t.toString());return s}executePostTasks(){let t=new Map;return(0,svt.from)(this._taskSchedulers).pipe((0,svt.concatMap)(s=>s.finalize()),(0,svt.concatMap)(s=>{let{name:a,options:o}=s.configuration,g=t.get(a);return g?g(o,s.context):this._host.createTaskExecutor(a).pipe((0,svt.concatMap)(p=>(t.set(a,p),p(o,s.context))))}))}};c2.SchematicEngine=uBr});var SLi=z(vLi=>{"use strict";Object.defineProperty(vLi,"__esModule",{value:!0})});var ABr=z(Fq=>{"use strict";var pdc=Fq&&Fq.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),gBr=Fq&&Fq.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&pdc(t,e,r)};Object.defineProperty(Fq,"__esModule",{value:!0});gBr(BLi(),Fq);gBr(SLi(),Fq);gBr(ivt(),Fq)});var wLi=z(dBr=>{"use strict";Object.defineProperty(dBr,"__esModule",{value:!0});dBr.createConsoleLogger=Cdc;var fdc=Eb(),Idc=a2();function Cdc(e=!1,t=process.stdout,r=process.stderr,s){let a=new Idc.logging.IndentLogger("cling");return a.pipe((0,fdc.filter)(o=>o.level!=="debug"||e)).subscribe(o=>{let g=s&&s[o.level],p=t;switch(o.level){case"warn":case"fatal":case"error":p=r;break}let f=2e3,m=o.message;for(;m;){let y=m.slice(0,f);m=m.slice(f),p.write(g?g(y):y)}p.write(` -`)}),a}});var NLi=z(aNe=>{"use strict";Object.defineProperty(aNe,"__esModule",{value:!0});aNe.NodeJsSyncHost=aNe.NodeJsAsyncHost=void 0;var NR=Dt("node:fs"),mdc=Dt("node:path"),Bb=Eb(),Wm=a2();async function hdc(e){try{return await NR.promises.access(e,NR.constants.F_OK),!0}catch{return!1}}var Ivt;function TLi(){if(!Ivt)try{Ivt=Dt("chokidar").FSWatcher}catch(e){throw e.code!=="MODULE_NOT_FOUND"?new Error('As of angular-devkit version 8.0, the "chokidar" package must be installed in order to use watch() features.'):e}}var pBr=class{get capabilities(){return{synchronous:!1}}write(t,r){return(0,Bb.from)(NR.promises.mkdir((0,Wm.getSystemPath)((0,Wm.dirname)(t)),{recursive:!0})).pipe((0,Bb.mergeMap)(()=>NR.promises.writeFile((0,Wm.getSystemPath)(t),new Uint8Array(r))))}read(t){return(0,Bb.from)(NR.promises.readFile((0,Wm.getSystemPath)(t))).pipe((0,Bb.map)(r=>new Uint8Array(r).buffer))}delete(t){return(0,Bb.from)(NR.promises.rm((0,Wm.getSystemPath)(t),{force:!0,recursive:!0,maxRetries:3}))}rename(t,r){return(0,Bb.from)(NR.promises.rename((0,Wm.getSystemPath)(t),(0,Wm.getSystemPath)(r)))}list(t){return(0,Bb.from)(NR.promises.readdir((0,Wm.getSystemPath)(t))).pipe((0,Bb.map)(r=>r.map(s=>(0,Wm.fragment)(s))))}exists(t){return(0,Bb.from)(hdc((0,Wm.getSystemPath)(t)))}isDirectory(t){return this.stat(t).pipe((0,Bb.map)(r=>r.isDirectory()))}isFile(t){return this.stat(t).pipe((0,Bb.map)(r=>r.isFile()))}stat(t){return(0,Bb.from)(NR.promises.stat((0,Wm.getSystemPath)(t)))}watch(t,r){return new Bb.Observable(s=>{TLi();let a=new Ivt({persistent:!0});return a.add((0,Wm.getSystemPath)(t)),a.on("change",o=>{s.next({path:(0,Wm.normalize)(o),time:new Date,type:Wm.virtualFs.HostWatchEventType.Changed})}).on("add",o=>{s.next({path:(0,Wm.normalize)(o),time:new Date,type:Wm.virtualFs.HostWatchEventType.Created})}).on("unlink",o=>{s.next({path:(0,Wm.normalize)(o),time:new Date,type:Wm.virtualFs.HostWatchEventType.Deleted})}),()=>{a.close()}}).pipe((0,Bb.publish)(),(0,Bb.refCount)())}};aNe.NodeJsAsyncHost=pBr;var fBr=class{get capabilities(){return{synchronous:!0}}write(t,r){return new Bb.Observable(s=>{(0,NR.mkdirSync)((0,Wm.getSystemPath)((0,Wm.dirname)(t)),{recursive:!0}),(0,NR.writeFileSync)((0,Wm.getSystemPath)(t),new Uint8Array(r)),s.next(),s.complete()})}read(t){return new Bb.Observable(r=>{let s=(0,NR.readFileSync)((0,Wm.getSystemPath)(t));r.next(new Uint8Array(s).buffer),r.complete()})}delete(t){return new Bb.Observable(r=>{(0,NR.rmSync)((0,Wm.getSystemPath)(t),{force:!0,recursive:!0,maxRetries:3}),r.complete()})}rename(t,r){return new Bb.Observable(s=>{let a=(0,Wm.getSystemPath)(r);(0,NR.mkdirSync)((0,mdc.dirname)(a),{recursive:!0}),(0,NR.renameSync)((0,Wm.getSystemPath)(t),a),s.next(),s.complete()})}list(t){return new Bb.Observable(r=>{let s=(0,NR.readdirSync)((0,Wm.getSystemPath)(t));r.next(s.map(a=>(0,Wm.fragment)(a))),r.complete()})}exists(t){return new Bb.Observable(r=>{r.next((0,NR.existsSync)((0,Wm.getSystemPath)(t))),r.complete()})}isDirectory(t){return this.stat(t).pipe((0,Bb.map)(r=>r.isDirectory()))}isFile(t){return this.stat(t).pipe((0,Bb.map)(r=>r.isFile()))}stat(t){return new Bb.Observable(r=>{r.next((0,NR.statSync)((0,Wm.getSystemPath)(t))),r.complete()})}watch(t,r){return new Bb.Observable(s=>{TLi();let a=new Ivt({persistent:!1});return a.add((0,Wm.getSystemPath)(t)),a.on("change",o=>{s.next({path:(0,Wm.normalize)(o),time:new Date,type:Wm.virtualFs.HostWatchEventType.Changed})}).on("add",o=>{s.next({path:(0,Wm.normalize)(o),time:new Date,type:Wm.virtualFs.HostWatchEventType.Created})}).on("unlink",o=>{s.next({path:(0,Wm.normalize)(o),time:new Date,type:Wm.virtualFs.HostWatchEventType.Deleted})}),()=>{a.close()}}).pipe((0,Bb.publish)(),(0,Bb.refCount)())}};aNe.NodeJsSyncHost=fBr});var Cvt=z(rae=>{"use strict";var _dc=rae&&rae.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),RLi=rae&&rae.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&_dc(t,e,r)};Object.defineProperty(rae,"__esModule",{value:!0});RLi(wLi(),rae);RLi(NLi(),rae)});var mBr=z(zIe=>{"use strict";Object.defineProperty(zIe,"__esModule",{value:!0});zIe.ActionList=zIe.UnknownActionException=void 0;zIe.isContentAction=Edc;var ydc=a2(),IBr=class extends ydc.BaseException{constructor(t){super(`Unknown action: "${t.kind}".`)}};zIe.UnknownActionException=IBr;var bdc=1,CBr=class{_actions=[];_action(t){this._actions.push({...t,id:bdc++,parent:this._actions[this._actions.length-1]?.id??0})}create(t,r){this._action({kind:"c",path:t,content:r})}overwrite(t,r){this._action({kind:"o",path:t,content:r})}rename(t,r){this._action({kind:"r",path:t,to:r})}delete(t){this._action({kind:"d",path:t})}optimize(){let t=new Map,r=new Map,s=new Map,a=new Set;for(let o of this._actions)switch(o.kind){case"c":t.set(o.path,o.content);break;case"o":t.has(o.path)?t.set(o.path,o.content):s.set(o.path,o.content);break;case"d":a.add(o.path);break;case"r":{let g=t.get(o.path),p=s.get(o.path);g&&(t.delete(o.path),t.set(o.to,g)),p&&(s.delete(o.path),s.set(o.to,p));let f;for(let[m,y]of r.entries())if(y==o.path){f=m;break}f&&r.set(f,o.to),!g&&!p&&!f&&r.set(o.path,o.to);break}}this._actions=[],a.forEach(o=>{this.delete(o)}),r.forEach((o,g)=>{this.rename(g,o)}),t.forEach((o,g)=>{this.create(g,o)}),s.forEach((o,g)=>{this.overwrite(g,o)})}push(t){this._actions.push(t)}get(t){return this._actions[t]}has(t){for(let r=0;rt.id)return!1}return!1}find(t){return this._actions.find(t)||null}forEach(t,r){this._actions.forEach(t,r)}get length(){return this._actions.length}[Symbol.iterator](){return this._actions[Symbol.iterator]()}};zIe.ActionList=CBr;function Edc(e){return e.kind=="c"||e.kind=="o"}});var _Br=z(hvt=>{"use strict";Object.defineProperty(hvt,"__esModule",{value:!0});hvt.SimpleSinkBase=void 0;var vb=Eb(),DLi=W5(),Bdc=mBr(),mvt=function(){},hBr=class{preCommitAction=mvt;postCommitAction=mvt;preCommit=mvt;postCommit=mvt;_fileAlreadyExistException(t){throw new DLi.FileAlreadyExistException(t)}_fileDoesNotExistException(t){throw new DLi.FileDoesNotExistException(t)}_validateOverwriteAction(t){return this._validateFileExists(t.path).pipe((0,vb.map)(r=>{r||this._fileDoesNotExistException(t.path)}))}_validateCreateAction(t){return this._validateFileExists(t.path).pipe((0,vb.map)(r=>{r&&this._fileAlreadyExistException(t.path)}))}_validateRenameAction(t){return this._validateFileExists(t.path).pipe((0,vb.map)(r=>{r||this._fileDoesNotExistException(t.path)}),(0,vb.mergeMap)(()=>this._validateFileExists(t.to)),(0,vb.map)(r=>{r&&this._fileAlreadyExistException(t.to)}))}_validateDeleteAction(t){return this._validateFileExists(t.path).pipe((0,vb.map)(r=>{r||this._fileDoesNotExistException(t.path)}))}validateSingleAction(t){switch(t.kind){case"o":return this._validateOverwriteAction(t);case"c":return this._validateCreateAction(t);case"r":return this._validateRenameAction(t);case"d":return this._validateDeleteAction(t);default:throw new Bdc.UnknownActionException(t)}}commitSingleAction(t){return(0,vb.concat)(this.validateSingleAction(t),new vb.Observable(r=>{let s=null;switch(t.kind){case"o":s=this._overwriteFile(t.path,t.content);break;case"c":s=this._createFile(t.path,t.content);break;case"r":s=this._renameFile(t.path,t.to);break;case"d":s=this._deleteFile(t.path);break}s?s.subscribe(r):r.complete()})).pipe((0,vb.ignoreElements)())}commit(t){let r=(0,vb.from)(t.actions);return(0,vb.concat)(this.preCommit()||(0,vb.of)(null),(0,vb.defer)(()=>r).pipe((0,vb.concatMap)(s=>{let a=this.preCommitAction(s);return(0,vb.isObservable)(a)||vdc(a)?a:(0,vb.of)(a||s)}),(0,vb.concatMap)(s=>(0,vb.concat)(this.commitSingleAction(s).pipe((0,vb.ignoreElements)()),(0,vb.of)(s))),(0,vb.concatMap)(s=>this.postCommitAction(s)||(0,vb.of)(null))),(0,vb.defer)(()=>this._done()),(0,vb.defer)(()=>this.postCommit()||(0,vb.of)(null))).pipe((0,vb.ignoreElements)(),(0,vb.defaultIfEmpty)(void 0))}};hvt.SimpleSinkBase=hBr;function vdc(e){return!!e&&typeof e.then=="function"}});var yvt=z(_vt=>{"use strict";Object.defineProperty(_vt,"__esModule",{value:!0});_vt.HostSink=void 0;var OT=Eb(),Sdc=_Br(),yBr=class extends Sdc.SimpleSinkBase{_host;_force;_filesToDelete=new Set;_filesToRename=new Set;_filesToCreate=new Map;_filesToUpdate=new Map;constructor(t,r=!1){super(),this._host=t,this._force=r}_validateCreateAction(t){return this._force?OT.EMPTY:super._validateCreateAction(t)}_validateFileExists(t){if(this._filesToCreate.has(t)||this._filesToUpdate.has(t))return(0,OT.of)(!0);if(this._filesToDelete.has(t))return(0,OT.of)(!1);for(let[r,s]of this._filesToRename.values())switch(t){case r:return(0,OT.of)(!1);case s:return(0,OT.of)(!0)}return this._host.exists(t)}_overwriteFile(t,r){return this._filesToUpdate.set(t,r),OT.EMPTY}_createFile(t,r){return this._filesToCreate.set(t,r),OT.EMPTY}_renameFile(t,r){return this._filesToRename.add([t,r]),OT.EMPTY}_deleteFile(t){return this._filesToCreate.has(t)?(this._filesToCreate.delete(t),this._filesToUpdate.delete(t)):this._filesToDelete.add(t),OT.EMPTY}_done(){return(0,OT.concat)((0,OT.from)([...this._filesToDelete.values()]).pipe((0,OT.concatMap)(t=>this._host.delete(t))),(0,OT.from)([...this._filesToRename.entries()]).pipe((0,OT.concatMap)(([t,[r,s]])=>this._host.rename(r,s))),(0,OT.from)([...this._filesToCreate.entries()]).pipe((0,OT.concatMap)(([t,r])=>this._host.write(t,r))),(0,OT.from)([...this._filesToUpdate.entries()]).pipe((0,OT.concatMap)(([t,r])=>this._host.write(t,r)))).pipe((0,OT.reduce)(()=>{}))}};_vt.HostSink=yBr});var EBr=z(bvt=>{"use strict";Object.defineProperty(bvt,"__esModule",{value:!0});bvt.DryRunSink=void 0;var xLi=a2(),wdc=Cvt(),kLi=Eb(),Tdc=yvt(),bBr=class extends Tdc.HostSink{_subject=new kLi.Subject;_fileDoesNotExistExceptionSet=new Set;_fileAlreadyExistExceptionSet=new Set;reporter=this._subject.asObservable();constructor(t,r=!1){super(typeof t=="string"?new xLi.virtualFs.ScopedHost(new wdc.NodeJsSyncHost,(0,xLi.normalize)(t)):t,r)}_fileAlreadyExistException(t){this._fileAlreadyExistExceptionSet.add(t)}_fileDoesNotExistException(t){this._fileDoesNotExistExceptionSet.add(t)}_done(){return this._fileAlreadyExistExceptionSet.forEach(t=>{this._subject.next({kind:"error",description:"alreadyExist",path:t})}),this._fileDoesNotExistExceptionSet.forEach(t=>{this._subject.next({kind:"error",description:"doesNotExist",path:t})}),this._filesToDelete.forEach(t=>{for(let[r]of this._filesToRename)if(r==t)return;this._subject.next({kind:"delete",path:t})}),this._filesToRename.forEach(([t,r])=>{this._subject.next({kind:"rename",path:t,to:r})}),this._filesToCreate.forEach((t,r)=>{for(let[,s]of this._filesToRename)if(s==r)return;this._fileAlreadyExistExceptionSet.has(r)||this._fileDoesNotExistExceptionSet.has(r)||this._subject.next({kind:"create",path:r,content:t})}),this._filesToUpdate.forEach((t,r)=>{this._subject.next({kind:"update",path:r,content:t})}),this._subject.complete(),(0,kLi.of)(void 0)}};bvt.DryRunSink=bBr});var GLi=z(Evt=>{"use strict";Object.defineProperty(Evt,"__esModule",{value:!0});Evt.BaseWorkflow=void 0;var BBr=a2(),sx=Eb(),Ndc=ABr(),Rdc=W5(),Ddc=Q2r(),xdc=EBr(),kdc=yvt(),Gdc=jIe(),vBr=class{_engine;_engineHost;_registry;_host;_reporter=new sx.Subject;_lifeCycle=new sx.Subject;_context;_force;_dryRun;constructor(t){this._host=t.host,this._engineHost=t.engineHost,t.registry?this._registry=t.registry:(this._registry=new BBr.schema.CoreSchemaRegistry(Ddc.standardFormats),this._registry.addPostTransform(BBr.schema.transforms.addUndefinedDefaults)),this._engine=new Ndc.SchematicEngine(this._engineHost,this),this._context=[],this._force=t.force||!1,this._dryRun=t.dryRun||!1}get context(){let t=this._context[this._context.length-1];if(!t)throw new Error("Cannot get context when workflow is not executing...");return t}get engine(){return this._engine}get engineHost(){return this._engineHost}get registry(){return this._registry}get reporter(){return this._reporter.asObservable()}get lifeCycle(){return this._lifeCycle.asObservable()}_createSinks(){let t=!1,r=new xdc.DryRunSink(this._host,this._force),s=r.reporter.subscribe(a=>{this._reporter.next(a),t=t||a.kind=="error"});return[r,{commit(){return s.unsubscribe(),t?(0,sx.throwError)(new Rdc.UnsuccessfulWorkflowExecution):(0,sx.of)()}},...this._dryRun?[]:[new kdc.HostSink(this._host,this._force)]]}execute(t){let r=this._context[this._context.length-1];r||this._lifeCycle.next({kind:"start"});let s=this._engine.createCollection(t.collection),a=t.allowPrivate||r&&r.collection===t.collection,o=s.createSchematic(t.schematic,a),g=this._createSinks();this._lifeCycle.next({kind:"workflow-start"});let p={...t,debug:t.debug||!1,logger:t.logger||r&&r.logger||new BBr.logging.NullLogger,parentContext:r};return this._context.push(p),o.call(t.options,(0,sx.of)(new Gdc.HostTree(this._host)),{logger:p.logger}).pipe((0,sx.concatMap)(f=>(0,sx.concat)((0,sx.from)(g).pipe((0,sx.concatMap)(m=>m.commit(f)),(0,sx.ignoreElements)()),(0,sx.of)(f))),(0,sx.concatMap)(()=>this._dryRun?sx.EMPTY:(this._lifeCycle.next({kind:"post-tasks-start"}),this._engine.executePostTasks().pipe((0,sx.tap)({complete:()=>this._lifeCycle.next({kind:"post-tasks-end"})}),(0,sx.defaultIfEmpty)(void 0),(0,sx.last)()))),(0,sx.tap)({complete:()=>{this._lifeCycle.next({kind:"workflow-end"}),this._context.pop(),this._context.length==0&&this._lifeCycle.next({kind:"end"})}}))}};Evt.BaseWorkflow=vBr});var ZLi=z(FLi=>{"use strict";Object.defineProperty(FLi,"__esModule",{value:!0})});var VLi=z(nae=>{"use strict";var Fdc=nae&&nae.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),LLi=nae&&nae.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Fdc(t,e,r)};Object.defineProperty(nae,"__esModule",{value:!0});LLi(GLi(),nae);LLi(ZLi(),nae)});var Bvt=z(zk=>{"use strict";Object.defineProperty(zk,"__esModule",{value:!0});zk.source=Ldc;zk.empty=Vdc;zk.chain=wBr;zk.apply=Wdc;zk.mergeWith=Pdc;zk.noop=MLi;zk.filter=Odc;zk.asSource=Mdc;zk.branchAndMerge=Qdc;zk.when=Ydc;zk.partitionApplyMerge=Hdc;zk.forEach=Xdc;zk.composeFileOperators=Jdc;zk.applyToSubtree=Udc;var iae=Eb(),PLi=W5(),WLi=jIe(),OLi=QM(),Zdc=jBt(),SBr=kXe(),GK=rvt();function Ldc(e){return()=>e}function Vdc(){return()=>(0,SBr.empty)()}function wBr(e){return async(t,r)=>{let s;if(Symbol.asyncIterator in e)for await(let a of e)s=(0,GK.callRule)(a,s??t,r);else for(let a of e)s=(0,GK.callRule)(a,s??t,r);return()=>s}}function Wdc(e,t){return r=>(0,GK.callRule)(wBr(t),(0,GK.callSource)(e,r),r)}function Pdc(e,t=OLi.MergeStrategy.Default){return(r,s)=>(0,GK.callSource)(e,s).pipe((0,iae.map)(a=>r.merge(a,t||s.strategy)),(0,iae.mapTo)(r))}function MLi(){return()=>{}}function Odc(e){return t=>{if(WLi.HostTree.isHostTree(t))return new WLi.FilterHostTree(t,e);throw new PLi.SchematicsException("Tree type is not supported.")}}function Mdc(e){return t=>(0,GK.callRule)(e,(0,SBr.empty)(),t)}function Qdc(e,t=OLi.MergeStrategy.Default){return(r,s)=>(0,GK.callRule)(e,r.branch(),s).pipe((0,iae.map)(a=>r.merge(a,t||s.strategy)),(0,iae.mapTo)(r))}function Ydc(e,t){return r=>e(r.path,r)?t(r):r}function Hdc(e,t,r){return(s,a)=>{let[o,g]=(0,SBr.partition)(s,e);return(0,iae.concat)((0,GK.callRule)(t,o,a),(0,GK.callRule)(r||MLi(),g,a)).pipe((0,iae.toArray)(),(0,iae.map)(([p,f])=>(p.merge(f,a.strategy),p)))}}function Xdc(e){return t=>{t.visit((r,s)=>{if(!s)return;let a=e(s);if(a!==s){if(a===null){t.delete(r);return}a.path!=r&&t.rename(r,a.path),a.content.equals(s.content)||t.overwrite(a.path,a.content)}})}}function Jdc(e){return t=>{let r=t;for(let s of e)if(r=s(r),r===null)return null;return r}}function Udc(e,t){return(r,s)=>{let a=new Zdc.ScopedTree(r,e);return(0,GK.callRule)(wBr(t),a,s).pipe((0,iae.map)(o=>{if(o===a)return r;throw new PLi.SchematicsException('Original tree must be returned from all rules when using "applyToSubtree".')}))}}});var QLi=z(NBr=>{"use strict";Object.defineProperty(NBr,"__esModule",{value:!0});NBr.move=jdc;var TBr=a2(),Kdc=Bvt();function jdc(e,t){t===void 0&&(t=e,e="/");let r=(0,TBr.normalize)("/"+e),s=(0,TBr.normalize)("/"+t);return r===s?Kdc.noop:a=>(a.exists(r)?a.rename(r,s):a.getDir(r).visit(o=>{a.rename(o,(0,TBr.join)(s,o.slice(r.length)))}),a)}});var HLi=z(RBr=>{"use strict";Object.defineProperty(RBr,"__esModule",{value:!0});RBr.default=$dc;var zdc=jIe();function YLi(e){return new Array(e).fill(0).map(t=>"abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)]).join("")}function qdc(e,t){return Math.floor(Math.random()*(t-e))+e}function $dc(e){return()=>{let t="root"in e?e.root:"/",r=new zdc.HostTree,s="multiFiles"in e?typeof e.multiFiles=="number"?e.multiFiles:qdc(2,12):1;for(let a=0;a{"use strict";Object.defineProperty(vvt,"__esModule",{value:!0});vvt.externalSchematic=epc;vvt.schematic=tpc;var cNe=Eb(),XLi=QM(),JLi=kXe();function epc(e,t,r,s){return(a,o)=>o.engine.createCollection(e,o.schematic.collection).createSchematic(t).call(r,(0,cNe.of)((0,JLi.branch)(a)),o,s).pipe((0,cNe.last)(),(0,cNe.map)(f=>(a.merge(f,XLi.MergeStrategy.AllowOverwriteConflict),a)))}function tpc(e,t,r){return(s,a)=>a.schematic.collection.createSchematic(e,!0).call(t,(0,cNe.of)((0,JLi.branch)(s)),a,r).pipe((0,cNe.last)(),(0,cNe.map)(p=>(s.merge(p,XLi.MergeStrategy.AllowOverwriteConflict),s)))}});var zLi=z(Dw=>{"use strict";Object.defineProperty(Dw,"__esModule",{value:!0});Dw.InvalidPipeException=Dw.UnknownPipeException=Dw.OptionIsNotDefinedException=Dw.TEMPLATE_FILENAME_RE=void 0;Dw.applyContentTemplate=DBr;Dw.contentTemplate=KLi;Dw.applyPathTemplate=xBr;Dw.pathTemplate=jLi;Dw.renameTemplateFiles=ipc;Dw.template=spc;Dw.applyTemplates=opc;var lNe=a2(),rpc=Dt("node:os"),qIe=Bvt();Dw.TEMPLATE_FILENAME_RE=/\.template$/;var LXe=class extends lNe.BaseException{constructor(t){super(`Option "${t}" is not defined.`)}};Dw.OptionIsNotDefinedException=LXe;var Svt=class extends lNe.BaseException{constructor(t){super(`Pipe "${t}" is not defined.`)}};Dw.UnknownPipeException=Svt;var wvt=class extends lNe.BaseException{constructor(t){super(`Pipe "${t}" is invalid.`)}};Dw.InvalidPipeException=wvt;var npc=new TextDecoder("utf-8",{fatal:!0});function DBr(e){return t=>{let{path:r,content:s}=t;try{let a=npc.decode(s).replace(/\r?\n/g,rpc.EOL);return{path:r,content:Buffer.from((0,lNe.template)(a,{})(e))}}catch(a){if(a instanceof TypeError||a.code==="ERR_ENCODING_INVALID_ENCODED_DATA")return t;throw a}}}function KLi(e){return(0,qIe.forEach)(DBr(e))}function xBr(e,t={interpolationStart:"__",interpolationEnd:"__",pipeSeparator:"@"}){let r=t.interpolationStart,s=t.interpolationEnd,a=r.length,o=s.length;return g=>{let p=g.path,f=g.content,m=p,y=p.indexOf(r),B=p.indexOf(s,y+a+1);for(;y!=-1&&B!=-1;){let v=p.substring(y+a,B),G=e[v];if(t.pipeSeparator){let[T,...O]=v.split(t.pipeSeparator);if(G=e[T],typeof G=="function"&&(G=G.call(e,m)),G===void 0)throw new LXe(T);G=O.reduce((X,U)=>{if(!U)return X;if(!(U in e))throw new Svt(U);let le=e[U];if(typeof le!="function")throw new wvt(U);return""+le(X)},""+G)}else if(typeof G=="function"&&(G=G.call(e,m)),G===void 0)throw new LXe(v);p=p.substring(0,y)+G+p.substring(B+o),y=p.indexOf(t.interpolationStart),B=p.indexOf(t.interpolationEnd,y+a+1)}return{path:(0,lNe.normalize)(p),content:f}}}function jLi(e){return(0,qIe.forEach)(xBr(e))}function ipc(){return(0,qIe.forEach)(e=>e.path.match(Dw.TEMPLATE_FILENAME_RE)?{content:e.content,path:(0,lNe.normalize)(e.path.replace(Dw.TEMPLATE_FILENAME_RE,""))}:e)}function spc(e){return(0,qIe.chain)([KLi(e),jLi(e)])}function opc(e){return(0,qIe.forEach)((0,qIe.when)(t=>t.endsWith(".template"),(0,qIe.composeFileOperators)([DBr(e),xBr(e),t=>({content:t.content,path:t.path.replace(Dw.TEMPLATE_FILENAME_RE,"")})])))}});var qLi=z(kBr=>{"use strict";Object.defineProperty(kBr,"__esModule",{value:!0});kBr.url=cpc;var apc=Dt("url");function cpc(e){let t=(0,apc.parse)(e);return r=>r.engine.createSourceFromUrl(t,r)(r)}});var $Li=z(Tvt=>{"use strict";Object.defineProperty(Tvt,"__esModule",{value:!0});Tvt.EmptyTree=void 0;var lpc=jIe(),GBr=class extends lpc.HostTree{constructor(){super()}};Tvt.EmptyTree=GBr});var uNe=z(sm=>{"use strict";var e9i=sm&&sm.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),upc=sm&&sm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),t9i=sm&&sm.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var s=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(s[s.length]=a);return s},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var s=e(t),a=0;a{"use strict";Object.defineProperty(r9i,"__esModule",{value:!0})});var Dvt=z(Rvt=>{"use strict";Object.defineProperty(Rvt,"__esModule",{value:!0});Rvt.ExportStringRef=void 0;var i9i=Dt("path"),FBr=class{_ref;_module;_path;constructor(t,r=process.cwd(),s=!0){let[a,o]=t.split("#",2);this._module=a[0]=="."?(0,i9i.resolve)(r,a):a,this._module=Dt.resolve(this._module),this._path=(0,i9i.dirname)(this._module),s?this._ref=Dt(this._module)[o||"default"]:this._ref=Dt(this._module)}get ref(){return this._ref}get module(){return this._module}get path(){return this._path}};Rvt.ExportStringRef=FBr});var LBr=z(ZBr=>{"use strict";Object.defineProperty(ZBr,"__esModule",{value:!0});ZBr.readJsonFile=mpc;var Ipc=Dt("fs"),s9i=eNe(),Cpc=W5();function mpc(e){let t;try{t=(0,Ipc.readFileSync)(e,"utf-8")}catch(a){throw a&&typeof a=="object"&&"code"in a&&a.code==="ENOENT"?new Cpc.FileDoesNotExistException(e):a}let r=[],s=(0,s9i.parse)(t,r,{allowTrailingComma:!0});if(r.length){let{error:a,offset:o}=r[0];throw new Error(`Failed to parse "${e}" as JSON AST Object. ${(0,s9i.printParseErrorCode)(a)} at location: ${o}.`)}return s}});var Fvt=z(av=>{"use strict";Object.defineProperty(av,"__esModule",{value:!0});av.FileSystemEngineHostBase=av.SchematicNameCollisionException=av.SchematicMissingDescriptionException=av.SchematicMissingFieldsException=av.CollectionMissingFieldsException=av.CollectionMissingSchematicsMapException=av.FactoryCannotBeResolvedException=av.SchematicMissingFactoryException=av.InvalidCollectionJsonException=av.CollectionCannotBeResolvedException=void 0;var P5=a2(),hpc=Cvt(),o9i=Dt("fs"),gNe=Dt("path"),VXe=Eb(),a9i=uNe(),c9i=LBr(),VBr=class extends P5.BaseException{constructor(t){super(`Collection ${JSON.stringify(t)} cannot be resolved.`)}};av.CollectionCannotBeResolvedException=VBr;var WXe=class extends P5.BaseException{constructor(t,r,s){let a=`Collection JSON at path ${JSON.stringify(r)} is invalid.`;s&&(a=`${a} ${s.message}`),super(a)}};av.InvalidCollectionJsonException=WXe;var xvt=class extends P5.BaseException{constructor(t){super(`Schematic ${JSON.stringify(t)} is missing a factory.`)}};av.SchematicMissingFactoryException=xvt;var kvt=class extends P5.BaseException{constructor(t){super(`Schematic ${JSON.stringify(t)} cannot resolve the factory.`)}};av.FactoryCannotBeResolvedException=kvt;var WBr=class extends P5.BaseException{constructor(t){super(`Collection "${t}" does not have a schematics map.`)}};av.CollectionMissingSchematicsMapException=WBr;var PBr=class extends P5.BaseException{constructor(t){super(`Collection "${t}" is missing fields.`)}};av.CollectionMissingFieldsException=PBr;var OBr=class extends P5.BaseException{constructor(t){super(`Schematic "${t}" is missing fields.`)}};av.SchematicMissingFieldsException=OBr;var MBr=class extends P5.BaseException{constructor(t){super(`Schematics "${t}" does not have a description.`)}};av.SchematicMissingDescriptionException=MBr;var Gvt=class extends P5.BaseException{constructor(t){super(`Schematics/alias ${JSON.stringify(t)} collides with another alias or schematic name.`)}};av.SchematicNameCollisionException=Gvt;var QBr=class{_transforms=[];_contextTransforms=[];_taskFactories=new Map;listSchematicNames(t,r){let s=[];for(let a of Object.keys(t.schematics)){let o=t.schematics[a];o.hidden&&!r||o.private||(!o.extends||o.factory||o.extends&&o.extends.indexOf(":")!==-1)&&s.push(a)}return s}registerOptionsTransform(t){this._transforms.push(t)}registerContextTransform(t){this._contextTransforms.push(t)}createCollectionDescription(t,r){let s=this._resolveCollectionPath(t,r?.path),a=(0,c9i.readJsonFile)(s);if(!a||typeof a!="object"||Array.isArray(a))throw new WXe(t,s);typeof a.extends=="string"&&(a.extends=[a.extends]);let o=this._transformCollectionDescription(t,{...a,path:s});if(!o||!o.name)throw new WXe(t,s);let g=Object.keys(o.schematics);for(let p of Object.keys(o.schematics)){let f=o.schematics[p].aliases||[];for(let m of f)if(g.indexOf(m)!=-1)throw new Gvt(m);g.push(...f)}return o}createSchematicDescription(t,r){for(let y of Object.keys(r.schematics)){let B=r.schematics[y];if(B.aliases&&B.aliases.indexOf(t)!=-1){t=y;break}}if(!(t in r.schematics))return null;let s=(0,gNe.dirname)(r.path),a=r.schematics[t];if(!a)return null;if(a.extends){let y=a.extends.indexOf(":"),B=y!==-1?a.extends.slice(0,y):null,v=y===-1?a.extends:a.extends.slice(y+1);if(B!==null){let G=this.createCollectionDescription(B);return this.createSchematicDescription(v,G)}else return this.createSchematicDescription(v,r)}if(!a.factory)throw new xvt(t);let o=this._resolveReferenceString(a.factory,s,r);if(!o)throw new kvt(t);let g=a.schema,p;g&&((0,gNe.isAbsolute)(g)||(g=(0,gNe.join)(s,g)),p=(0,c9i.readJsonFile)(g));let f=(0,gNe.join)(s,a.factory),m=(0,o9i.existsSync)(f)&&(0,o9i.statSync)(f).isDirectory()?f:(0,gNe.dirname)(f);return this._transformSchematicDescription(t,r,{...a,schema:g,schemaJson:p,name:t,path:m,factoryFn:o.ref,collection:r})}createSourceFromUrl(t){switch(t.protocol){case null:case"file:":return r=>{let s=r.schematic.description;if(s.path===void 0)throw new Error("Unsupported schematic context. Expected a FileSystemSchematicContext.");let a=(0,P5.normalize)((0,gNe.resolve)(s.path,t.path||""));return new a9i.HostCreateTree(new P5.virtualFs.ScopedHost(new hpc.NodeJsSyncHost,a))}}return null}transformOptions(t,r,s){let a=async()=>{let o=r;for(let g of this._transforms){let p=g(t,o,s);o=await((0,VXe.isObservable)(p)?(0,VXe.lastValueFrom)(p):p)}return o};return(0,VXe.from)(a())}transformContext(t){return this._contextTransforms.reduce((r,s)=>s(r),t)}getSchematicRuleFactory(t,r){return t.factoryFn}registerTaskExecutor(t,r){this._taskFactories.set(t.name,()=>(0,VXe.from)(t.create(r)))}createTaskExecutor(t){let r=this._taskFactories.get(t);return r?r():(0,VXe.throwError)(new a9i.UnregisteredTaskException(t))}hasTaskExecutor(t){return this._taskFactories.has(t)}};av.FileSystemEngineHostBase=QBr});var l9i=z(Zvt=>{"use strict";Object.defineProperty(Zvt,"__esModule",{value:!0});Zvt.NodePackageName=void 0;Zvt.NodePackageName="node-package"});var u9i=z(Lvt=>{"use strict";Object.defineProperty(Lvt,"__esModule",{value:!0});Lvt.RepositoryInitializerName=void 0;Lvt.RepositoryInitializerName="repo-init"});var g9i=z(Vvt=>{"use strict";Object.defineProperty(Vvt,"__esModule",{value:!0});Vvt.RunSchematicName=void 0;Vvt.RunSchematicName="run-schematic"});var A9i=z((OOl,_pc)=>{_pc.exports={dots:{interval:80,frames:["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]},dots2:{interval:80,frames:["\u28FE","\u28FD","\u28FB","\u28BF","\u287F","\u28DF","\u28EF","\u28F7"]},dots3:{interval:80,frames:["\u280B","\u2819","\u281A","\u281E","\u2816","\u2826","\u2834","\u2832","\u2833","\u2813"]},dots4:{interval:80,frames:["\u2804","\u2806","\u2807","\u280B","\u2819","\u2838","\u2830","\u2820","\u2830","\u2838","\u2819","\u280B","\u2807","\u2806"]},dots5:{interval:80,frames:["\u280B","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B"]},dots6:{interval:80,frames:["\u2801","\u2809","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2824","\u2804","\u2804","\u2824","\u2834","\u2832","\u2812","\u2802","\u2802","\u2812","\u281A","\u2819","\u2809","\u2801"]},dots7:{interval:80,frames:["\u2808","\u2809","\u280B","\u2813","\u2812","\u2810","\u2810","\u2812","\u2816","\u2826","\u2824","\u2820","\u2820","\u2824","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B","\u2809","\u2808"]},dots8:{interval:80,frames:["\u2801","\u2801","\u2809","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2824","\u2804","\u2804","\u2824","\u2820","\u2820","\u2824","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B","\u2809","\u2808","\u2808"]},dots9:{interval:80,frames:["\u28B9","\u28BA","\u28BC","\u28F8","\u28C7","\u2867","\u2857","\u284F"]},dots10:{interval:80,frames:["\u2884","\u2882","\u2881","\u2841","\u2848","\u2850","\u2860"]},dots11:{interval:100,frames:["\u2801","\u2802","\u2804","\u2840","\u2880","\u2820","\u2810","\u2808"]},dots12:{interval:80,frames:["\u2880\u2800","\u2840\u2800","\u2804\u2800","\u2882\u2800","\u2842\u2800","\u2805\u2800","\u2883\u2800","\u2843\u2800","\u280D\u2800","\u288B\u2800","\u284B\u2800","\u280D\u2801","\u288B\u2801","\u284B\u2801","\u280D\u2809","\u280B\u2809","\u280B\u2809","\u2809\u2819","\u2809\u2819","\u2809\u2829","\u2808\u2899","\u2808\u2859","\u2888\u2829","\u2840\u2899","\u2804\u2859","\u2882\u2829","\u2842\u2898","\u2805\u2858","\u2883\u2828","\u2843\u2890","\u280D\u2850","\u288B\u2820","\u284B\u2880","\u280D\u2841","\u288B\u2801","\u284B\u2801","\u280D\u2809","\u280B\u2809","\u280B\u2809","\u2809\u2819","\u2809\u2819","\u2809\u2829","\u2808\u2899","\u2808\u2859","\u2808\u2829","\u2800\u2899","\u2800\u2859","\u2800\u2829","\u2800\u2898","\u2800\u2858","\u2800\u2828","\u2800\u2890","\u2800\u2850","\u2800\u2820","\u2800\u2880","\u2800\u2840"]},dots13:{interval:80,frames:["\u28FC","\u28F9","\u28BB","\u283F","\u285F","\u28CF","\u28E7","\u28F6"]},dots8Bit:{interval:80,frames:["\u2800","\u2801","\u2802","\u2803","\u2804","\u2805","\u2806","\u2807","\u2840","\u2841","\u2842","\u2843","\u2844","\u2845","\u2846","\u2847","\u2808","\u2809","\u280A","\u280B","\u280C","\u280D","\u280E","\u280F","\u2848","\u2849","\u284A","\u284B","\u284C","\u284D","\u284E","\u284F","\u2810","\u2811","\u2812","\u2813","\u2814","\u2815","\u2816","\u2817","\u2850","\u2851","\u2852","\u2853","\u2854","\u2855","\u2856","\u2857","\u2818","\u2819","\u281A","\u281B","\u281C","\u281D","\u281E","\u281F","\u2858","\u2859","\u285A","\u285B","\u285C","\u285D","\u285E","\u285F","\u2820","\u2821","\u2822","\u2823","\u2824","\u2825","\u2826","\u2827","\u2860","\u2861","\u2862","\u2863","\u2864","\u2865","\u2866","\u2867","\u2828","\u2829","\u282A","\u282B","\u282C","\u282D","\u282E","\u282F","\u2868","\u2869","\u286A","\u286B","\u286C","\u286D","\u286E","\u286F","\u2830","\u2831","\u2832","\u2833","\u2834","\u2835","\u2836","\u2837","\u2870","\u2871","\u2872","\u2873","\u2874","\u2875","\u2876","\u2877","\u2838","\u2839","\u283A","\u283B","\u283C","\u283D","\u283E","\u283F","\u2878","\u2879","\u287A","\u287B","\u287C","\u287D","\u287E","\u287F","\u2880","\u2881","\u2882","\u2883","\u2884","\u2885","\u2886","\u2887","\u28C0","\u28C1","\u28C2","\u28C3","\u28C4","\u28C5","\u28C6","\u28C7","\u2888","\u2889","\u288A","\u288B","\u288C","\u288D","\u288E","\u288F","\u28C8","\u28C9","\u28CA","\u28CB","\u28CC","\u28CD","\u28CE","\u28CF","\u2890","\u2891","\u2892","\u2893","\u2894","\u2895","\u2896","\u2897","\u28D0","\u28D1","\u28D2","\u28D3","\u28D4","\u28D5","\u28D6","\u28D7","\u2898","\u2899","\u289A","\u289B","\u289C","\u289D","\u289E","\u289F","\u28D8","\u28D9","\u28DA","\u28DB","\u28DC","\u28DD","\u28DE","\u28DF","\u28A0","\u28A1","\u28A2","\u28A3","\u28A4","\u28A5","\u28A6","\u28A7","\u28E0","\u28E1","\u28E2","\u28E3","\u28E4","\u28E5","\u28E6","\u28E7","\u28A8","\u28A9","\u28AA","\u28AB","\u28AC","\u28AD","\u28AE","\u28AF","\u28E8","\u28E9","\u28EA","\u28EB","\u28EC","\u28ED","\u28EE","\u28EF","\u28B0","\u28B1","\u28B2","\u28B3","\u28B4","\u28B5","\u28B6","\u28B7","\u28F0","\u28F1","\u28F2","\u28F3","\u28F4","\u28F5","\u28F6","\u28F7","\u28B8","\u28B9","\u28BA","\u28BB","\u28BC","\u28BD","\u28BE","\u28BF","\u28F8","\u28F9","\u28FA","\u28FB","\u28FC","\u28FD","\u28FE","\u28FF"]},sand:{interval:80,frames:["\u2801","\u2802","\u2804","\u2840","\u2848","\u2850","\u2860","\u28C0","\u28C1","\u28C2","\u28C4","\u28CC","\u28D4","\u28E4","\u28E5","\u28E6","\u28EE","\u28F6","\u28F7","\u28FF","\u287F","\u283F","\u289F","\u281F","\u285B","\u281B","\u282B","\u288B","\u280B","\u280D","\u2849","\u2809","\u2811","\u2821","\u2881"]},line:{interval:130,frames:["-","\\","|","/"]},line2:{interval:100,frames:["\u2802","-","\u2013","\u2014","\u2013","-"]},pipe:{interval:100,frames:["\u2524","\u2518","\u2534","\u2514","\u251C","\u250C","\u252C","\u2510"]},simpleDots:{interval:400,frames:[". ",".. ","..."," "]},simpleDotsScrolling:{interval:200,frames:[". ",".. ","..."," .."," ."," "]},star:{interval:70,frames:["\u2736","\u2738","\u2739","\u273A","\u2739","\u2737"]},star2:{interval:80,frames:["+","x","*"]},flip:{interval:70,frames:["_","_","_","-","`","`","'","\xB4","-","_","_","_"]},hamburger:{interval:100,frames:["\u2631","\u2632","\u2634"]},growVertical:{interval:120,frames:["\u2581","\u2583","\u2584","\u2585","\u2586","\u2587","\u2586","\u2585","\u2584","\u2583"]},growHorizontal:{interval:120,frames:["\u258F","\u258E","\u258D","\u258C","\u258B","\u258A","\u2589","\u258A","\u258B","\u258C","\u258D","\u258E"]},balloon:{interval:140,frames:[" ",".","o","O","@","*"," "]},balloon2:{interval:120,frames:[".","o","O","\xB0","O","o","."]},noise:{interval:100,frames:["\u2593","\u2592","\u2591"]},bounce:{interval:120,frames:["\u2801","\u2802","\u2804","\u2802"]},boxBounce:{interval:120,frames:["\u2596","\u2598","\u259D","\u2597"]},boxBounce2:{interval:100,frames:["\u258C","\u2580","\u2590","\u2584"]},triangle:{interval:50,frames:["\u25E2","\u25E3","\u25E4","\u25E5"]},binary:{interval:80,frames:["010010","001100","100101","111010","111101","010111","101011","111000","110011","110101"]},arc:{interval:100,frames:["\u25DC","\u25E0","\u25DD","\u25DE","\u25E1","\u25DF"]},circle:{interval:120,frames:["\u25E1","\u2299","\u25E0"]},squareCorners:{interval:180,frames:["\u25F0","\u25F3","\u25F2","\u25F1"]},circleQuarters:{interval:120,frames:["\u25F4","\u25F7","\u25F6","\u25F5"]},circleHalves:{interval:50,frames:["\u25D0","\u25D3","\u25D1","\u25D2"]},squish:{interval:100,frames:["\u256B","\u256A"]},toggle:{interval:250,frames:["\u22B6","\u22B7"]},toggle2:{interval:80,frames:["\u25AB","\u25AA"]},toggle3:{interval:120,frames:["\u25A1","\u25A0"]},toggle4:{interval:100,frames:["\u25A0","\u25A1","\u25AA","\u25AB"]},toggle5:{interval:100,frames:["\u25AE","\u25AF"]},toggle6:{interval:300,frames:["\u101D","\u1040"]},toggle7:{interval:80,frames:["\u29BE","\u29BF"]},toggle8:{interval:100,frames:["\u25CD","\u25CC"]},toggle9:{interval:100,frames:["\u25C9","\u25CE"]},toggle10:{interval:100,frames:["\u3282","\u3280","\u3281"]},toggle11:{interval:50,frames:["\u29C7","\u29C6"]},toggle12:{interval:120,frames:["\u2617","\u2616"]},toggle13:{interval:80,frames:["=","*","-"]},arrow:{interval:100,frames:["\u2190","\u2196","\u2191","\u2197","\u2192","\u2198","\u2193","\u2199"]},arrow2:{interval:80,frames:["\u2B06\uFE0F ","\u2197\uFE0F ","\u27A1\uFE0F ","\u2198\uFE0F ","\u2B07\uFE0F ","\u2199\uFE0F ","\u2B05\uFE0F ","\u2196\uFE0F "]},arrow3:{interval:120,frames:["\u25B9\u25B9\u25B9\u25B9\u25B9","\u25B8\u25B9\u25B9\u25B9\u25B9","\u25B9\u25B8\u25B9\u25B9\u25B9","\u25B9\u25B9\u25B8\u25B9\u25B9","\u25B9\u25B9\u25B9\u25B8\u25B9","\u25B9\u25B9\u25B9\u25B9\u25B8"]},bouncingBar:{interval:80,frames:["[ ]","[= ]","[== ]","[=== ]","[====]","[ ===]","[ ==]","[ =]","[ ]","[ =]","[ ==]","[ ===]","[====]","[=== ]","[== ]","[= ]"]},bouncingBall:{interval:80,frames:["( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF)","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","(\u25CF )"]},smiley:{interval:200,frames:["\u{1F604} ","\u{1F61D} "]},monkey:{interval:300,frames:["\u{1F648} ","\u{1F648} ","\u{1F649} ","\u{1F64A} "]},hearts:{interval:100,frames:["\u{1F49B} ","\u{1F499} ","\u{1F49C} ","\u{1F49A} ","\u2764\uFE0F "]},clock:{interval:100,frames:["\u{1F55B} ","\u{1F550} ","\u{1F551} ","\u{1F552} ","\u{1F553} ","\u{1F554} ","\u{1F555} ","\u{1F556} ","\u{1F557} ","\u{1F558} ","\u{1F559} ","\u{1F55A} "]},earth:{interval:180,frames:["\u{1F30D} ","\u{1F30E} ","\u{1F30F} "]},material:{interval:17,frames:["\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581"]},moon:{interval:80,frames:["\u{1F311} ","\u{1F312} ","\u{1F313} ","\u{1F314} ","\u{1F315} ","\u{1F316} ","\u{1F317} ","\u{1F318} "]},runner:{interval:140,frames:["\u{1F6B6} ","\u{1F3C3} "]},pong:{interval:80,frames:["\u2590\u2802 \u258C","\u2590\u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802\u258C","\u2590 \u2820\u258C","\u2590 \u2840\u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590\u2820 \u258C"]},shark:{interval:120,frames:["\u2590|\\____________\u258C","\u2590_|\\___________\u258C","\u2590__|\\__________\u258C","\u2590___|\\_________\u258C","\u2590____|\\________\u258C","\u2590_____|\\_______\u258C","\u2590______|\\______\u258C","\u2590_______|\\_____\u258C","\u2590________|\\____\u258C","\u2590_________|\\___\u258C","\u2590__________|\\__\u258C","\u2590___________|\\_\u258C","\u2590____________|\\\u258C","\u2590____________/|\u258C","\u2590___________/|_\u258C","\u2590__________/|__\u258C","\u2590_________/|___\u258C","\u2590________/|____\u258C","\u2590_______/|_____\u258C","\u2590______/|______\u258C","\u2590_____/|_______\u258C","\u2590____/|________\u258C","\u2590___/|_________\u258C","\u2590__/|__________\u258C","\u2590_/|___________\u258C","\u2590/|____________\u258C"]},dqpb:{interval:100,frames:["d","q","p","b"]},weather:{interval:100,frames:["\u2600\uFE0F ","\u2600\uFE0F ","\u2600\uFE0F ","\u{1F324} ","\u26C5\uFE0F ","\u{1F325} ","\u2601\uFE0F ","\u{1F327} ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u26C8 ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u2601\uFE0F ","\u{1F325} ","\u26C5\uFE0F ","\u{1F324} ","\u2600\uFE0F ","\u2600\uFE0F "]},christmas:{interval:400,frames:["\u{1F332}","\u{1F384}"]},grenade:{interval:80,frames:["\u060C ","\u2032 "," \xB4 "," \u203E "," \u2E0C"," \u2E0A"," |"," \u204E"," \u2055"," \u0DF4 "," \u2053"," "," "," "]},point:{interval:125,frames:["\u2219\u2219\u2219","\u25CF\u2219\u2219","\u2219\u25CF\u2219","\u2219\u2219\u25CF","\u2219\u2219\u2219"]},layer:{interval:150,frames:["-","=","\u2261"]},betaWave:{interval:80,frames:["\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2","\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2","\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2","\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2","\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2","\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2","\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1"]},fingerDance:{interval:160,frames:["\u{1F918} ","\u{1F91F} ","\u{1F596} ","\u270B ","\u{1F91A} ","\u{1F446} "]},fistBump:{interval:80,frames:["\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u3000\u{1F91C}\u3000\u3000\u{1F91B}\u3000 ","\u3000\u3000\u{1F91C}\u{1F91B}\u3000\u3000 ","\u3000\u{1F91C}\u2728\u{1F91B}\u3000\u3000 ","\u{1F91C}\u3000\u2728\u3000\u{1F91B}\u3000 "]},soccerHeader:{interval:80,frames:[" \u{1F9D1}\u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F\u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} "]},mindblown:{interval:160,frames:["\u{1F610} ","\u{1F610} ","\u{1F62E} ","\u{1F62E} ","\u{1F626} ","\u{1F626} ","\u{1F627} ","\u{1F627} ","\u{1F92F} ","\u{1F4A5} ","\u2728 ","\u3000 ","\u3000 ","\u3000 "]},speaker:{interval:160,frames:["\u{1F508} ","\u{1F509} ","\u{1F50A} ","\u{1F509} "]},orangePulse:{interval:100,frames:["\u{1F538} ","\u{1F536} ","\u{1F7E0} ","\u{1F7E0} ","\u{1F536} "]},bluePulse:{interval:100,frames:["\u{1F539} ","\u{1F537} ","\u{1F535} ","\u{1F535} ","\u{1F537} "]},orangeBluePulse:{interval:100,frames:["\u{1F538} ","\u{1F536} ","\u{1F7E0} ","\u{1F7E0} ","\u{1F536} ","\u{1F539} ","\u{1F537} ","\u{1F535} ","\u{1F535} ","\u{1F537} "]},timeTravel:{interval:100,frames:["\u{1F55B} ","\u{1F55A} ","\u{1F559} ","\u{1F558} ","\u{1F557} ","\u{1F556} ","\u{1F555} ","\u{1F554} ","\u{1F553} ","\u{1F552} ","\u{1F551} ","\u{1F550} "]},aesthetic:{interval:80,frames:["\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0","\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1"]},dwarfFortress:{interval:80,frames:[" \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\xA3\xA3\xA3 "," \u263A \u2588\xA3\xA3\xA3 "," \u263A\u2588\xA3\xA3\xA3 "," \u263A\u2588\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3\xA3 "," \u263A\u2592\xA3\xA3\xA3 "," \u263A\u2592\xA3\xA3\xA3 "," \u263A\u2591\xA3\xA3\xA3 "," \u263A\u2591\xA3\xA3\xA3 "," \u263A \xA3\xA3\xA3 "," \u263A\xA3\xA3\xA3 "," \u263A\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3 "," \u263A\u2593\xA3\xA3 "," \u263A\u2592\xA3\xA3 "," \u263A\u2592\xA3\xA3 "," \u263A\u2591\xA3\xA3 "," \u263A\u2591\xA3\xA3 "," \u263A \xA3\xA3 "," \u263A\xA3\xA3 "," \u263A\xA3\xA3 "," \u263A\u2593\xA3 "," \u263A\u2593\xA3 "," \u263A\u2592\xA3 "," \u263A\u2592\xA3 "," \u263A\u2591\xA3 "," \u263A\u2591\xA3 "," \u263A \xA3 "," \u263A\xA3 "," \u263A\xA3 "," \u263A\u2593 "," \u263A\u2593 "," \u263A\u2592 "," \u263A\u2592 "," \u263A\u2591 "," \u263A\u2591 "," \u263A "," \u263A &"," \u263A \u263C&"," \u263A \u263C &"," \u263A\u263C &"," \u263A\u263C & "," \u203C & "," \u263A & "," \u203C & "," \u263A & "," \u203C & "," \u263A & ","\u203C & "," & "," & "," & \u2591 "," & \u2592 "," & \u2593 "," & \xA3 "," & \u2591\xA3 "," & \u2592\xA3 "," & \u2593\xA3 "," & \xA3\xA3 "," & \u2591\xA3\xA3 "," & \u2592\xA3\xA3 ","& \u2593\xA3\xA3 ","& \xA3\xA3\xA3 "," \u2591\xA3\xA3\xA3 "," \u2592\xA3\xA3\xA3 "," \u2593\xA3\xA3\xA3 "," \u2588\xA3\xA3\xA3 "," \u2591\u2588\xA3\xA3\xA3 "," \u2592\u2588\xA3\xA3\xA3 "," \u2593\u2588\xA3\xA3\xA3 "," \u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "]}}});var f9i=z((MOl,p9i)=>{"use strict";var Wvt=Object.assign({},A9i()),d9i=Object.keys(Wvt);Object.defineProperty(Wvt,"random",{get(){let e=Math.floor(Math.random()*d9i.length),t=d9i[e];return Wvt[t]}});p9i.exports=Wvt});var YBr=z((QOl,I9i)=>{"use strict";I9i.exports=()=>process.platform!=="win32"?!0:!!process.env.CI||!!process.env.WT_SESSION||process.env.TERM_PROGRAM==="vscode"||process.env.TERM==="xterm-256color"||process.env.TERM==="alacritty"});var m9i=z((YOl,C9i)=>{"use strict";var sae=$ne(),ypc=YBr(),bpc={info:sae.blue("\u2139"),success:sae.green("\u2714"),warning:sae.yellow("\u26A0"),error:sae.red("\u2716")},Epc={info:sae.blue("i"),success:sae.green("\u221A"),warning:sae.yellow("\u203C"),error:sae.red("\xD7")};C9i.exports=ypc()?bpc:Epc});var h9i=z((HOl,Pvt)=>{var Bpc=function(){"use strict";function e(g,p,f,m){var y;typeof p=="object"&&(f=p.depth,m=p.prototype,y=p.filter,p=p.circular);var B=[],v=[],G=typeof Buffer<"u";typeof p>"u"&&(p=!0),typeof f>"u"&&(f=1/0);function T(O,X){if(O===null)return null;if(X==0)return O;var U,le;if(typeof O!="object")return O;if(e.__isArray(O))U=[];else if(e.__isRegExp(O))U=new RegExp(O.source,o(O)),O.lastIndex&&(U.lastIndex=O.lastIndex);else if(e.__isDate(O))U=new Date(O.getTime());else{if(G&&Buffer.isBuffer(O))return Buffer.allocUnsafe?U=Buffer.allocUnsafe(O.length):U=new Buffer(O.length),O.copy(U),U;typeof m>"u"?(le=Object.getPrototypeOf(O),U=Object.create(le)):(U=Object.create(m),le=m)}if(p){var ae=B.indexOf(O);if(ae!=-1)return v[ae];B.push(O),v.push(U)}for(var ge in O){var fe;le&&(fe=Object.getOwnPropertyDescriptor(le,ge)),!(fe&&fe.set==null)&&(U[ge]=T(O[ge],X-1))}return U}return T(g,f)}e.clonePrototype=function(p){if(p===null)return null;var f=function(){};return f.prototype=p,new f};function t(g){return Object.prototype.toString.call(g)}e.__objToStr=t;function r(g){return typeof g=="object"&&t(g)==="[object Date]"}e.__isDate=r;function s(g){return typeof g=="object"&&t(g)==="[object Array]"}e.__isArray=s;function a(g){return typeof g=="object"&&t(g)==="[object RegExp]"}e.__isRegExp=a;function o(g){var p="";return g.global&&(p+="g"),g.ignoreCase&&(p+="i"),g.multiline&&(p+="m"),p}return e.__getRegExpFlags=o,e}();typeof Pvt=="object"&&Pvt.exports&&(Pvt.exports=Bpc)});var y9i=z((XOl,_9i)=>{var vpc=h9i();_9i.exports=function(e,t){return e=e||{},Object.keys(t).forEach(function(r){typeof e[r]>"u"&&(e[r]=vpc(t[r]))}),e}});var E9i=z((JOl,b9i)=>{b9i.exports=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531],[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]]});var w9i=z((UOl,HBr)=>{"use strict";var Spc=y9i(),PXe=E9i(),v9i={nul:0,control:0};HBr.exports=function(t){return S9i(t,v9i)};HBr.exports.config=function(e){return e=Spc(e||{},v9i),function(r){return S9i(r,e)}};function S9i(e,t){if(typeof e!="string")return B9i(e,t);for(var r=0,s=0;s=127&&e<160?t.control:wpc(e)?0:1+(e>=4352&&(e<=4447||e==9001||e==9002||e>=11904&&e<=42191&&e!=12351||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65135||e>=65280&&e<=65376||e>=65504&&e<=65510||e>=131072&&e<=196605||e>=196608&&e<=262141))}function wpc(e){var t=0,r=PXe.length-1,s;if(ePXe[r][1])return!1;for(;r>=t;)if(s=Math.floor((t+r)/2),e>PXe[s][1])t=s+1;else if(e{"use strict";T9i.exports=({stream:e=process.stdout}={})=>!!(e&&e.isTTY&&process.env.TERM!=="dumb"&&!("CI"in process.env))});var D9i=z((jOl,KBr)=>{"use strict";var Tpc=Dt("readline"),Npc=$ne(),R9i=r1e(),Ovt=f9i(),Mvt=m9i(),Rpc=AO(),Dpc=w9i(),xpc=N9i(),kpc=YBr(),{BufferListStream:Gpc}=ylr(),XBr=Symbol("text"),JBr=Symbol("prefixText"),Fpc=3,UBr=class{constructor(){this.requests=0,this.mutedStream=new Gpc,this.mutedStream.pipe(process.stdout);let t=this;this.ourEmit=function(r,s,...a){let{stdin:o}=process;if(t.requests>0||o.emit===t.ourEmit){if(r==="keypress")return;r==="data"&&s.includes(Fpc)&&process.emit("SIGINT"),Reflect.apply(t.oldEmit,this,[r,s,...a])}else Reflect.apply(process.stdin.emit,this,[r,s,...a])}}start(){this.requests++,this.requests===1&&this.realStart()}stop(){if(this.requests<=0)throw new Error("`stop` called more times than `start`");this.requests--,this.requests===0&&this.realStop()}realStart(){process.platform!=="win32"&&(this.rl=Tpc.createInterface({input:process.stdin,output:this.mutedStream}),this.rl.on("SIGINT",()=>{process.listenerCount("SIGINT")===0?process.emit("SIGINT"):(this.rl.close(),process.kill(process.pid,"SIGINT"))}))}realStop(){process.platform!=="win32"&&(this.rl.close(),this.rl=void 0)}},Qvt,Yvt=class{constructor(t){Qvt||(Qvt=new UBr),typeof t=="string"&&(t={text:t}),this.options={text:"",color:"cyan",stream:process.stderr,discardStdin:!0,...t},this.spinner=this.options.spinner,this.color=this.options.color,this.hideCursor=this.options.hideCursor!==!1,this.interval=this.options.interval||this.spinner.interval||100,this.stream=this.options.stream,this.id=void 0,this.isEnabled=typeof this.options.isEnabled=="boolean"?this.options.isEnabled:xpc({stream:this.stream}),this.isSilent=typeof this.options.isSilent=="boolean"?this.options.isSilent:!1,this.text=this.options.text,this.prefixText=this.options.prefixText,this.linesToClear=0,this.indent=this.options.indent,this.discardStdin=this.options.discardStdin,this.isDiscardingStdin=!1}get indent(){return this._indent}set indent(t=0){if(!(t>=0&&Number.isInteger(t)))throw new Error("The `indent` option must be an integer from 0 and up");this._indent=t}_updateInterval(t){t!==void 0&&(this.interval=t)}get spinner(){return this._spinner}set spinner(t){if(this.frameIndex=0,typeof t=="object"){if(t.frames===void 0)throw new Error("The given spinner must have a `frames` property");this._spinner=t}else if(!kpc())this._spinner=Ovt.line;else if(t===void 0)this._spinner=Ovt.dots;else if(t!=="default"&&Ovt[t])this._spinner=Ovt[t];else throw new Error(`There is no built-in spinner named '${t}'. See https://github.com/sindresorhus/cli-spinners/blob/main/spinners.json for a full list.`);this._updateInterval(this._spinner.interval)}get text(){return this[XBr]}set text(t){this[XBr]=t,this.updateLineCount()}get prefixText(){return this[JBr]}set prefixText(t){this[JBr]=t,this.updateLineCount()}get isSpinning(){return this.id!==void 0}getFullPrefixText(t=this[JBr],r=" "){return typeof t=="string"?t+r:typeof t=="function"?t()+r:""}updateLineCount(){let t=this.stream.columns||80,r=this.getFullPrefixText(this.prefixText,"-");this.lineCount=0;for(let s of Rpc(r+"--"+this[XBr]).split(` -`))this.lineCount+=Math.max(1,Math.ceil(Dpc(s)/t))}get isEnabled(){return this._isEnabled&&!this.isSilent}set isEnabled(t){if(typeof t!="boolean")throw new TypeError("The `isEnabled` option must be a boolean");this._isEnabled=t}get isSilent(){return this._isSilent}set isSilent(t){if(typeof t!="boolean")throw new TypeError("The `isSilent` option must be a boolean");this._isSilent=t}frame(){let{frames:t}=this.spinner,r=t[this.frameIndex];this.color&&(r=Npc[this.color](r)),this.frameIndex=++this.frameIndex%t.length;let s=typeof this.prefixText=="string"&&this.prefixText!==""?this.prefixText+" ":"",a=typeof this.text=="string"?" "+this.text:"";return s+r+a}clear(){if(!this.isEnabled||!this.stream.isTTY)return this;for(let t=0;t0&&this.stream.moveCursor(0,-1),this.stream.clearLine(),this.stream.cursorTo(this.indent);return this.linesToClear=0,this}render(){return this.isSilent?this:(this.clear(),this.stream.write(this.frame()),this.linesToClear=this.lineCount,this)}start(t){return t&&(this.text=t),this.isSilent?this:this.isEnabled?this.isSpinning?this:(this.hideCursor&&R9i.hide(this.stream),this.discardStdin&&process.stdin.isTTY&&(this.isDiscardingStdin=!0,Qvt.start()),this.render(),this.id=setInterval(this.render.bind(this),this.interval),this):(this.text&&this.stream.write(`- ${this.text} -`),this)}stop(){return this.isEnabled?(clearInterval(this.id),this.id=void 0,this.frameIndex=0,this.clear(),this.hideCursor&&R9i.show(this.stream),this.discardStdin&&process.stdin.isTTY&&this.isDiscardingStdin&&(Qvt.stop(),this.isDiscardingStdin=!1),this):this}succeed(t){return this.stopAndPersist({symbol:Mvt.success,text:t})}fail(t){return this.stopAndPersist({symbol:Mvt.error,text:t})}warn(t){return this.stopAndPersist({symbol:Mvt.warning,text:t})}info(t){return this.stopAndPersist({symbol:Mvt.info,text:t})}stopAndPersist(t={}){if(this.isSilent)return this;let r=t.prefixText||this.prefixText,s=t.text||this.text,a=typeof s=="string"?" "+s:"";return this.stop(),this.stream.write(`${this.getFullPrefixText(r," ")}${t.symbol||" "}${a} -`),this}},Zpc=function(e){return new Yvt(e)};KBr.exports=Zpc;KBr.exports.promise=(e,t)=>{if(typeof e.then!="function")throw new TypeError("Parameter `action` must be a Promise");let r=new Yvt(t);return r.start(),(async()=>{try{await e,r.succeed()}catch{r.fail()}})(),r}});var k9i=z(A3=>{"use strict";var Lpc=A3&&A3.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Vpc=A3&&A3.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Wpc=A3&&A3.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var s=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(s[s.length]=a);return s},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var s=e(t),a=0;a{let o=r,g=t;if(e.allowPackageManagerOverride&&a.packageManager){if(o=x9i[a.packageManager],!o)throw new OXe(a.packageManager);g=a.packageManager}let p=[],f={shell:!0,cwd:Ypc.join(s,a.workingDirectory||"")};a.hideOutput?f.stdio=a.quiet?["ignore","ignore","pipe"]:"pipe":f.stdio=a.quiet?["ignore","ignore","inherit"]:"inherit";let m=[];return a.packageName?(a.command==="install"&&m.push(o.commands.installPackage),m.push(a.packageName)):a.command==="install"&&o.commands.installAll&&m.push(o.commands.installAll),a.allowScripts||(g==="yarn"?f.env={...process.env,npm_config_ignore_scripts:"true",YARN_ENABLE_SCRIPTS:"false"}:m.push("--ignore-scripts")),e.registry&&m.push(`--registry="${e.registry}"`),e.force&&m.push("--force"),new Hpc.Observable(y=>{let B=(0,Qpc.default)({text:`Installing packages (${g})...`,discardStdin:process.platform!="win32"}).start(),v=(0,Mpc.spawn)(g,m,f).on("close",G=>{G===0?(B.succeed("Packages installed successfully."),B.stop(),y.next(),y.complete()):(a.hideOutput&&p.forEach(({stream:T,data:O})=>T.write(O)),B.fail("Package install failed, see above."),y.error(new Xpc.UnsuccessfulWorkflowExecution))});a.hideOutput&&(v.stdout?.on("data",G=>p.push({stream:process.stdout,data:G})),v.stderr?.on("data",G=>p.push({stream:process.stderr,data:G})))})}}});var G9i=z(Zq=>{"use strict";var Upc=Zq&&Zq.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Kpc=Zq&&Zq.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),jpc=Zq&&Zq.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var s=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(s[s.length]=a);return s},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var s=e(t),a=0;a{let a=r.authorName,o=r.authorEmail,g=(m,y)=>{let B="ignore",v=y?"ignore":process.stderr,G={stdio:[process.stdin,B,v],shell:!0,cwd:$pc.join(t,r.workingDirectory||""),env:{...process.env,...a?{GIT_AUTHOR_NAME:a,GIT_COMMITTER_NAME:a}:{},...o?{GIT_AUTHOR_EMAIL:o,GIT_COMMITTER_EMAIL:o}:{}}};return new Promise((T,O)=>{(0,qpc.spawn)("git",m,G).on("close",X=>{X===0?T():O(X)})})};if(!await g(["--version"]).then(()=>!0,()=>!1))return;if(await g(["rev-parse","--is-inside-work-tree"],!0).then(()=>!0,()=>!1)){s.logger.info(zpc.tags.oneLine` +`}),this.intro&&(this.intro=t+this.intro.replace(/^[^\n]/gm,(s,a)=>a>0?t+s:s)),this}prepend(t){return this.intro=t+this.intro,this}toString(){let t=this.sources.map((r,s)=>{let a=r.separator!==void 0?r.separator:this.separator;return(s>0?a:"")+r.content.toString()}).join("");return this.intro+t}isEmpty(){return!(this.intro.length&&this.intro.trim()||this.sources.some(t=>!t.content.isEmpty()))}length(){return this.sources.reduce((t,r)=>t+r.content.length(),this.intro.length)}trimLines(){return this.trim("[\\r\\n]")}trim(t){return this.trimStart(t).trimEnd(t)}trimStart(t){let r=new RegExp("^"+(t||"\\s")+"+");if(this.intro=this.intro.replace(r,""),!this.intro){let s,a=0;do if(s=this.sources[a++],!s)break;while(!s.content.trimStartAborted(t))}return this}trimEnd(t){let r=new RegExp((t||"\\s")+"+$"),s,a=this.sources.length-1;do if(s=this.sources[a--],!s){this.intro=this.intro.replace(r,"");break}while(!s.content.trimEndAborted(t));return this}};Zq.Bundle=cBr;Zq.SourceMap=kXe;Zq.default=Zq;bLi.exports=Zq});var uBr=z(aae=>{"use strict";var ndc=aae&&aae.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(aae,"__esModule",{value:!0});aae.UpdateRecorderBase=aae.IndexOutOfBoundException=void 0;var idc=c2(),sdc=ndc(ELi()),odc=QY(),jBt=class extends idc.BaseException{constructor(t,r,s=1/0){super(`Index ${t} outside of range [${r}, ${s}].`)}};aae.IndexOutOfBoundException=jBt;var lBr=class e{data;bom;_path;content;constructor(t,r,s="utf-8",a=!1){this.data=t,this.bom=a;let o;try{o=new TextDecoder(s,{fatal:!0,ignoreBOM:!1}).decode(t)}catch(g){throw g instanceof TypeError?new Error(`Failed to decode "${r}" as ${s} text.`):g}this._path=r,this.content=new sdc.default(o)}static createFromFileEntry(t){let r=t.content.byteLength>0&&t.content.readUInt8(0),s=t.content.byteLength>1&&t.content.readUInt8(1),a=t.content.byteLength>2&&t.content.readUInt8(2);return r==239&&s==187&&a==191?new e(t.content,t.path,"utf-8",!0):r===255&&s==254?new e(t.content,t.path,"utf-16le",!0):r===254&&s==255?new e(t.content,t.path,"utf-16be",!0):new e(t.content,t.path)}get path(){return this._path}_assertIndex(t){if(t<0||t>this.content.original.length)throw new jBt(t,0,this.content.original.length)}insertLeft(t,r){return this._assertIndex(t),this.content.appendLeft(t,r.toString()),this}insertRight(t,r){return this._assertIndex(t),this.content.appendRight(t,r.toString()),this}remove(t,r){return this._assertIndex(t),this.content.remove(t,t+r),this}apply(t){if(!t.equals(this.data))throw new odc.ContentHasMutatedException(this.path);return Buffer.from((this.bom?"\uFEFF":"")+this.content.toString(),"utf-8")}};aae.UpdateRecorderBase=lBr});var $Bt=z(qBt=>{"use strict";Object.defineProperty(qBt,"__esModule",{value:!0});qBt.ScopedTree=void 0;var pS=c2(),adc=YBt(),cdc=YQ(),GXe=class{_base;scope;constructor(t,r){this._base=t,this.scope=r}get path(){return(0,pS.join)(pS.NormalizedRoot,(0,pS.relative)(this.scope,this._base.path))}get content(){return this._base.content}},zBt=class e{_base;scope;constructor(t,r){this._base=t,this.scope=r}get parent(){return!this._base.parent||this._base.path==this.scope?null:new e(this._base.parent,this.scope)}get path(){return(0,pS.join)(pS.NormalizedRoot,(0,pS.relative)(this.scope,this._base.path))}get subdirs(){return this._base.subdirs}get subfiles(){return this._base.subfiles}dir(t){let r=this._base.dir(t);return r&&new e(r,this.scope)}file(t){let r=this._base.file(t);return r&&new GXe(r,this.scope)}visit(t){return this._base.visit((r,s)=>{t((0,pS.join)(pS.NormalizedRoot,(0,pS.relative)(this.scope,r)),s&&new GXe(s,this.scope))})}},gBr=class e{_base;_root;constructor(t,r){this._base=t;let s=(0,pS.normalize)("/"+r);this._root=new zBt(this._base.getDir(s),s)}get root(){return this._root}branch(){return new e(this._base.branch(),this._root.scope)}merge(t,r){let s=this,a=new class extends adc.DelegateTree{get actions(){return t.actions.map(o=>s._fullPathAction(o))}}(t);this._base.merge(a,r)}read(t){return this._base.read(this._fullPath(t))}readText(t){return this._base.readText(this._fullPath(t))}readJson(t){return this._base.readJson(this._fullPath(t))}exists(t){return this._base.exists(this._fullPath(t))}get(t){let r=this._base.get(this._fullPath(t));return r&&new GXe(r,this._root.scope)}getDir(t){let r=this._base.getDir(this._fullPath(t));return r&&new zBt(r,this._root.scope)}visit(t){return this._root.visit(t)}overwrite(t,r){return this._base.overwrite(this._fullPath(t),r)}beginUpdate(t){return this._base.beginUpdate(this._fullPath(t))}commitUpdate(t){return this._base.commitUpdate(t)}create(t,r){return this._base.create(this._fullPath(t),r)}delete(t){return this._base.delete(this._fullPath(t))}rename(t,r){return this._base.rename(this._fullPath(t),this._fullPath(r))}apply(t,r){return this._base.apply(this._fullPathAction(t),r)}get actions(){let t=[];for(let r of this._base.actions)r.path.startsWith(this._root.scope+"/")&&(r.kind!=="r"?t.push({...r,path:(0,pS.join)(pS.NormalizedRoot,(0,pS.relative)(this._root.scope,r.path))}):r.to.startsWith(this._root.scope+"/")&&t.push({...r,path:(0,pS.join)(pS.NormalizedRoot,(0,pS.relative)(this._root.scope,r.path)),to:(0,pS.join)(pS.NormalizedRoot,(0,pS.relative)(this._root.scope,r.to))}));return t}[cdc.TreeSymbol](){return this}_fullPath(t){return(0,pS.join)(this._root.scope,(0,pS.normalize)("/"+t))}_fullPathAction(t){let r;return t.kind==="r"?r={...t,path:this._fullPath(t.path),to:this._fullPath(t.to)}:r={...t,path:this._fullPath(t.path)},r}};qBt.ScopedTree=gBr});var qIe=z(LK=>{"use strict";Object.defineProperty(LK,"__esModule",{value:!0});LK.FilterHostTree=LK.HostCreateTree=LK.HostTree=LK.HostDirEntry=void 0;var iZ=c2(),BLi=rNe(),p3=QY(),ldc=YBt(),udc=ILi(),ZK=YQ(),vLi=uBr(),gdc=$Bt(),Adc=0,evt=class{parent;path;_host;_tree;constructor(t,r,s,a){this.parent=t,this.path=r,this._host=s,this._tree=a}get subdirs(){return this._host.list(this.path).filter(t=>this._host.isDirectory((0,iZ.join)(this.path,t)))}get subfiles(){return this._host.list(this.path).filter(t=>this._host.isFile((0,iZ.join)(this.path,t)))}dir(t){return this._tree.getDir((0,iZ.join)(this.path,t))}file(t){return this._tree.get((0,iZ.join)(this.path,t))}visit(t){try{this.getSubfilesRecursively().forEach(r=>t(r.path,r))}catch(r){if(r!==ZK.FileVisitorCancelToken)throw r}}getSubfilesRecursively(){function t(r){return r.subdirs.reduce((s,a)=>[...s,...t(r.dir(a))],r.subfiles.map(s=>r.file(s)))}return t(this)}};LK.HostDirEntry=evt;var oNe=class e{_backend;_id=--Adc;_record;_recordSync;_ancestry=new Set;_dirCache=new Map;[ZK.TreeSymbol](){return this}static isHostTree(t){return t instanceof e||typeof t=="object"&&typeof t._ancestry=="object"}constructor(t=new iZ.virtualFs.Empty){this._backend=t,this._record=new iZ.virtualFs.CordHost(new iZ.virtualFs.SafeReadonlyHost(t)),this._recordSync=new iZ.virtualFs.SyncDelegateHost(this._record)}_normalizePath(t){return(0,iZ.normalize)("/"+t)}_willCreate(t){return this._record.willCreate(t)}_willOverwrite(t){return this._record.willOverwrite(t)}_willDelete(t){return this._record.willDelete(t)}_willRename(t){return this._record.willRename(t)}branch(){let t=new e(this._backend);return t._record=this._record.clone(),t._recordSync=new iZ.virtualFs.SyncDelegateHost(t._record),t._ancestry=new Set(this._ancestry).add(this._id),t}isAncestorOf(t){return t instanceof e?t._ancestry.has(this._id):t instanceof ldc.DelegateTree?this.isAncestorOf(t._other):t instanceof gdc.ScopedTree?this.isAncestorOf(t._base):!1}merge(t,r=ZK.MergeStrategy.Default){if(t===this)return;this.isAncestorOf(t)&&(r|=ZK.MergeStrategy.Overwrite);let s=(r&ZK.MergeStrategy.AllowCreationConflict)==ZK.MergeStrategy.AllowCreationConflict,a=(r&ZK.MergeStrategy.AllowOverwriteConflict)==ZK.MergeStrategy.AllowOverwriteConflict,o=(r&ZK.MergeStrategy.AllowDeleteConflict)==ZK.MergeStrategy.AllowDeleteConflict;t.actions.forEach(g=>{switch(g.kind){case"c":{let{path:p,content:f}=g;if(this._willCreate(p)||this._willOverwrite(p)||this.exists(p)){let m=this.read(p);if(m&&f.equals(m))return;if(!s)throw new p3.MergeConflictException(p);this._record.overwrite(p,f).subscribe()}else this._record.create(p,f).subscribe();return}case"o":{let{path:p,content:f}=g;if(this._willDelete(p)&&!a)throw new p3.MergeConflictException(p);if(this._willOverwrite(p)){let m=this.read(p);if(m&&f.equals(m))return;if(!a)throw new p3.MergeConflictException(p)}this._record.write(p,f).subscribe();return}case"r":{let{path:p,to:f}=g;if(this._willDelete(p))throw new p3.MergeConflictException(p);if(this._willRename(p)){if(this._record.willRenameTo(p,f))return;throw new p3.MergeConflictException(p)}this.rename(p,f);return}case"d":{let{path:p}=g;if(this._willDelete(p))return;if(!this.exists(p)&&!o)throw new p3.MergeConflictException(p);this._recordSync.delete(p);return}}})}get root(){return this.getDir("/")}read(t){let r=this.get(t);return r?r.content:null}readText(t){let r=this.read(t);if(r===null)throw new p3.FileDoesNotExistException(t);let s=new TextDecoder("utf-8",{fatal:!0});try{return s.decode(r)}catch(a){throw a instanceof TypeError||a.code==="ERR_ENCODING_INVALID_ENCODED_DATA"?new Error(`Failed to decode "${t}" as UTF-8 text.`):a}}readJson(t){let r=this.readText(t),s=[],a=(0,BLi.parse)(r,s,{allowTrailingComma:!0});if(s[0]){let{error:o,offset:g}=s[0];throw new Error(`Failed to parse "${t}" as JSON. ${(0,BLi.printParseErrorCode)(o)} at offset: ${g}.`)}return a}exists(t){return this._recordSync.isFile(this._normalizePath(t))}get(t){let r=this._normalizePath(t);if(this._recordSync.isDirectory(r))throw new iZ.PathIsDirectoryException(r);return this._recordSync.exists(r)?new udc.LazyFileEntry(r,()=>Buffer.from(this._recordSync.read(r))):null}getDir(t){let r=this._normalizePath(t);if(this._recordSync.isFile(r))throw new iZ.PathIsFileException(r);let s=this._dirCache.get(r);if(!s){let a=(0,iZ.dirname)(r);r===a&&(a=null),s=new evt(a&&this.getDir(a),r,this._recordSync,this),this._dirCache.set(r,s)}return s}visit(t){this.root.visit((r,s)=>{t(r,s)})}overwrite(t,r){let s=this._normalizePath(t);if(!this._recordSync.exists(s))throw new p3.FileDoesNotExistException(s);let a=typeof r=="string"?Buffer.from(r):r;this._record.overwrite(s,a).subscribe()}beginUpdate(t){let r=this.get(t);if(!r)throw new p3.FileDoesNotExistException(t);return vLi.UpdateRecorderBase.createFromFileEntry(r)}commitUpdate(t){if(t instanceof vLi.UpdateRecorderBase){let r=t.path,s=this.get(r);if(s){let a=t.apply(s.content);a.equals(s.content)||this.overwrite(r,a)}else throw new p3.ContentHasMutatedException(r)}else throw new p3.InvalidUpdateRecordException}create(t,r){let s=this._normalizePath(t);if(this._recordSync.exists(s))throw new p3.FileAlreadyExistException(s);let a=typeof r=="string"?Buffer.from(r):r;this._record.create(s,a).subscribe()}delete(t){this._recordSync.delete(this._normalizePath(t))}rename(t,r){this._recordSync.rename(this._normalizePath(t),this._normalizePath(r))}apply(t,r){throw new p3.SchematicsException("Apply not implemented on host trees.")}*generateActions(){for(let t of this._record.records())switch(t.kind){case"create":yield{id:this._id,parent:0,kind:"c",path:t.path,content:Buffer.from(t.content)};break;case"overwrite":yield{id:this._id,parent:0,kind:"o",path:t.path,content:Buffer.from(t.content)};break;case"rename":yield{id:this._id,parent:0,kind:"r",path:t.from,to:t.to};break;case"delete":yield{id:this._id,parent:0,kind:"d",path:t.path};break}}get actions(){return Array.from(this.generateActions())}};LK.HostTree=oNe;var ABr=class extends oNe{constructor(t){super();let r=new oNe(t);r.visit(s=>{let a=r.read(s);a&&this.create(s,a)})}};LK.HostCreateTree=ABr;var dBr=class extends oNe{constructor(t,r=()=>!0){let s=new iZ.virtualFs.SimpleMemoryHost,a=t._backend,o=["/"];for(;o.length>0;){let g=o.pop();if(g===void 0)break;let p=!1;if(a.isDirectory(g).subscribe(y=>p=y),p){a.list(g).subscribe(y=>o.push(...y.map(B=>(0,iZ.join)(g,B))));continue}let f=!1;if(a.isFile(g).subscribe(y=>f=y),!f||!r(g))continue;let m=null;a.read(g).subscribe(y=>m=y),m!==null&&s.write(g,m).subscribe()}super(s);for(let g of t.actions)if(r(g.path))switch(g.kind){case"c":this.create(g.path,g.content);break;case"d":this.delete(g.path);break;case"o":this.overwrite(g.path,g.content);break;case"r":this.rename(g.path,g.to);break}}};LK.FilterHostTree=dBr});var FXe=z(aNe=>{"use strict";Object.defineProperty(aNe,"__esModule",{value:!0});aNe.empty=fdc;aNe.branch=Idc;aNe.merge=Cdc;aNe.partition=mdc;var ddc=QY(),tvt=qIe(),pdc=YQ();function fdc(){return new tvt.HostTree}function Idc(e){return e.branch()}function Cdc(e,t,r=pdc.MergeStrategy.Default){return e.merge(t,r),e}function mdc(e,t){if(e instanceof tvt.HostTree)return[new tvt.FilterHostTree(e,t),new tvt.FilterHostTree(e,(r,s)=>!t(r,s))];throw new ddc.SchematicsException("Tree type is not supported.")}});var SLi=z(lae=>{"use strict";Object.defineProperty(lae,"__esModule",{value:!0});lae.NullTree=lae.NullTreeDirEntry=lae.CannotCreateFileException=void 0;var ZXe=c2(),cae=QY(),hdc=YQ(),_dc=uBr(),rvt=class extends ZXe.BaseException{constructor(t){super(`Cannot create file "${t}".`)}};lae.CannotCreateFileException=rvt;var LXe=class e{path;get parent(){return this.path=="/"?null:new e((0,ZXe.dirname)(this.path))}constructor(t){this.path=t}subdirs=[];subfiles=[];dir(t){return new e((0,ZXe.join)(this.path,t))}file(t){return null}visit(){}};lae.NullTreeDirEntry=LXe;var pBr=class e{[hdc.TreeSymbol](){return this}branch(){return new e}merge(t,r){}root=new LXe((0,ZXe.normalize)("/"));exists(t){return!1}read(t){return null}readText(t){throw new cae.FileDoesNotExistException(t)}readJson(t){throw new cae.FileDoesNotExistException(t)}get(t){return null}getDir(t){return new LXe((0,ZXe.normalize)("/"+t))}visit(){}beginUpdate(t){throw new cae.FileDoesNotExistException(t)}commitUpdate(t){throw new cae.FileDoesNotExistException(t instanceof _dc.UpdateRecorderBase?t.path:"")}copy(t,r){throw new cae.FileDoesNotExistException(t)}delete(t){throw new cae.FileDoesNotExistException(t)}create(t,r){throw new rvt(t)}rename(t,r){throw new cae.FileDoesNotExistException(t)}overwrite(t,r){throw new cae.FileDoesNotExistException(t)}apply(t,r){}get actions(){return[]}};lae.NullTree=pBr});var svt=z(uae=>{"use strict";Object.defineProperty(uae,"__esModule",{value:!0});uae.InvalidSourceResultException=uae.InvalidRuleResultException=void 0;uae.callSource=ydc;uae.callRule=bdc;var TLi=c2(),VK=vb(),NLi=YQ();function RLi(e){return e===void 0?"undefined":e===null?"null":typeof e=="function"?"Function()":typeof e!="object"?`${typeof e}(${JSON.stringify(e)})`:Object.getPrototypeOf(e)==Object?`Object(${JSON.stringify(e)})`:e.constructor?`Instance of class ${e.constructor.name}`:"Unknown Object"}var nvt=class extends TLi.BaseException{constructor(t){super(`Invalid rule result: ${RLi(t)}.`)}};uae.InvalidRuleResultException=nvt;var ivt=class extends TLi.BaseException{constructor(t){super(`Invalid source result: ${RLi(t)}.`)}};uae.InvalidSourceResultException=ivt;function ydc(e,t){return(0,VK.defer)(async()=>{let r=e(t);if((0,VK.isObservable)(r)&&(r=await(0,VK.lastValueFrom)(r.pipe((0,VK.defaultIfEmpty)(void 0)))),r&&NLi.TreeSymbol in r)return r;throw new ivt(r)})}function bdc(e,t,r){return(0,VK.isObservable)(t)?t.pipe((0,VK.mergeMap)(s=>wLi(e,s,r))):(0,VK.defer)(()=>wLi(e,t,r))}async function wLi(e,t,r){let s=await e(t,r);for(;typeof s=="function";)s=await s(t,r);if(typeof s>"u")return t;if((0,VK.isObservable)(s)&&(s=await(0,VK.lastValueFrom)(s.pipe((0,VK.defaultIfEmpty)(t)))),s&&NLi.TreeSymbol in s)return s;throw new nvt(s)}});var avt=z(cNe=>{"use strict";Object.defineProperty(cNe,"__esModule",{value:!0});cNe.SchematicImpl=cNe.InvalidSchematicsNameException=void 0;var Edc=c2(),VXe=vb(),Bdc=svt(),vdc=$Bt(),ovt=class extends Edc.BaseException{constructor(t){super(`Schematics has invalid name: "${t}".`)}};cNe.InvalidSchematicsNameException=ovt;var fBr=class{_description;_factory;_collection;_engine;constructor(t,r,s,a){if(this._description=t,this._factory=r,this._collection=s,this._engine=a,!t.name.match(/^[-@/_.a-zA-Z0-9]+$/))throw new ovt(t.name)}get description(){return this._description}get collection(){return this._collection}call(t,r,s,a){let o=this._engine.createContext(this,s,a);return r.pipe((0,VXe.first)(),(0,VXe.concatMap)(g=>this._engine.transformOptions(this,t,o).pipe((0,VXe.map)(p=>[g,p]))),(0,VXe.concatMap)(([g,p])=>{let f,m=!1;return a&&a.scope?(m=!0,f=new vdc.ScopedTree(g,a.scope)):f=g,(0,Bdc.callRule)(this._factory(p),f,o).pipe((0,VXe.map)(y=>y===f?g:m?(g.merge(y),g):y))}))}};cNe.SchematicImpl=fBr});var DLi=z(l2=>{"use strict";Object.defineProperty(l2,"__esModule",{value:!0});l2.SchematicEngine=l2.TaskScheduler=l2.CollectionImpl=l2.UnknownTaskDependencyException=l2.UnregisteredTaskException=l2.SchematicEngineConflictingException=l2.PrivateSchematicException=l2.UnknownSchematicException=l2.CircularCollectionException=l2.UnknownCollectionException=l2.UnknownUrlSourceProtocol=void 0;var WK=c2(),cvt=vb(),Sdc=YQ(),wdc=SLi(),Tdc=FXe(),Ndc=avt(),lvt=class extends WK.BaseException{constructor(t){super(`Unknown Protocol on url "${t}".`)}};l2.UnknownUrlSourceProtocol=lvt;var uvt=class extends WK.BaseException{constructor(t){super(`Unknown collection "${t}".`)}};l2.UnknownCollectionException=uvt;var gvt=class extends WK.BaseException{constructor(t){super(`Circular collection reference "${t}".`)}};l2.CircularCollectionException=gvt;var Avt=class extends WK.BaseException{constructor(t,r){super(`Schematic "${t}" not found in collection "${r.name}".`)}};l2.UnknownSchematicException=Avt;var dvt=class extends WK.BaseException{constructor(t,r){super(`Schematic "${t}" not found in collection "${r.name}".`)}};l2.PrivateSchematicException=dvt;var pvt=class extends WK.BaseException{constructor(){super("A schematic was called from a different engine as its parent.")}};l2.SchematicEngineConflictingException=pvt;var fvt=class extends WK.BaseException{constructor(t,r){let s=r?` in schematic "${r.name}"`:"";super(`Unregistered task "${t}"${s}.`)}};l2.UnregisteredTaskException=fvt;var Ivt=class extends WK.BaseException{constructor(t){super(`Unknown task dependency [ID: ${t.id}].`)}};l2.UnknownTaskDependencyException=Ivt;var Cvt=class{_description;_engine;baseDescriptions;constructor(t,r,s){this._description=t,this._engine=r,this.baseDescriptions=s}get description(){return this._description}get name(){return this.description.name||""}createSchematic(t,r=!1){return this._engine.createSchematic(t,this,r)}listSchematicNames(t){return this._engine.listSchematicNames(this,t)}};l2.CollectionImpl=Cvt;var mvt=class e{_context;_queue=new WK.PriorityQueue((t,r)=>t.priority-r.priority);_taskIds=new Map;static _taskIdCounter=1;constructor(t){this._context=t}_calculatePriority(t){return t.size===0?0:[...t].reduce((s,a)=>s+a.priority,1)}_mapDependencies(t){if(!t)return new Set;let r=t.map(s=>{let a=this._taskIds.get(s);if(!a)throw new Ivt(s);return a});return new Set(r)}schedule(t){let r=this._mapDependencies(t.dependencies),s=this._calculatePriority(r),a={id:e._taskIdCounter++,priority:s,configuration:t,context:this._context};this._queue.push(a);let o={id:a.id};return this._taskIds.set(o,a),o}finalize(){let t=this._queue.toArray();return this._queue.clear(),this._taskIds.clear(),t}};l2.TaskScheduler=mvt;var IBr=class{_host;_workflow;_collectionCache=new Map;_schematicCache=new WeakMap;_taskSchedulers=new Array;constructor(t,r){this._host=t,this._workflow=r}get workflow(){return this._workflow||null}get defaultMergeStrategy(){return this._host.defaultMergeStrategy||Sdc.MergeStrategy.Default}createCollection(t,r){let s=this._collectionCache.get(t);if(s)return s;let[a,o]=this._createCollectionDescription(t,r?.description);return s=new Cvt(a,this,o),this._collectionCache.set(t,s),this._schematicCache.set(s,new Map),s}_createCollectionDescription(t,r,s){let a=this._host.createCollectionDescription(t,r);if(!a)throw new uvt(t);if(s&&s.has(a.name))throw new gvt(t);let o=new Array;if(a.extends){s=(s||new Set).add(a.name);for(let g of a.extends){let[p,f]=this._createCollectionDescription(g,a,new Set(s));o.unshift(p,...f)}}return[a,o]}createContext(t,r,s){if(r&&r.engine&&r.engine!==this)throw new pvt;let a=!0;s&&s.interactive!=null?a=s.interactive:r&&r.interactive!=null&&(a=r.interactive);let o={debug:r&&r.debug||!1,engine:this,logger:r&&r.logger&&r.logger.createChild(t.description.name)||new WK.logging.NullLogger,schematic:t,strategy:r&&r.strategy!==void 0?r.strategy:this.defaultMergeStrategy,interactive:a,addTask:m},g=this._host.transformContext(o);g&&(o=g);let p=new mvt(o),f=this._host;this._taskSchedulers.push(p);function m(y,B){let v=y.toConfiguration();if(!f.hasTaskExecutor(v.name))throw new fvt(v.name,t.description);return v.dependencies=v.dependencies||[],B&&v.dependencies.unshift(...B),p.schedule(v)}return o}createSchematic(t,r,s=!1){let a=this._schematicCache.get(r),o=a?.get(t);if(o)return o;let g=r.description,p=this._host.createSchematicDescription(t,r.description);if(!p){if(r.baseDescriptions){for(let m of r.baseDescriptions)if(p=this._host.createSchematicDescription(t,m),p){g=m;break}}if(!p)throw new Avt(t,r.description)}if(p.private&&!s)throw new dvt(t,r.description);let f=this._host.getSchematicRuleFactory(p,g);return o=new Ndc.SchematicImpl(p,f,r,this),a?.set(t,o),o}listSchematicNames(t,r){let s=this._host.listSchematicNames(t.description,r);if(t.baseDescriptions)for(let a of t.baseDescriptions)s.push(...this._host.listSchematicNames(a,r));return[...new Set(s)].sort()}transformOptions(t,r,s){return this._host.transformOptions(t.description,r,s)}createSourceFromUrl(t,r){switch(t.protocol){case"null:":return()=>new wdc.NullTree;case"empty:":return()=>(0,Tdc.empty)()}let s=this._host.createSourceFromUrl(t,r);if(!s)throw new lvt(t.toString());return s}executePostTasks(){let t=new Map;return(0,cvt.from)(this._taskSchedulers).pipe((0,cvt.concatMap)(s=>s.finalize()),(0,cvt.concatMap)(s=>{let{name:a,options:o}=s.configuration,g=t.get(a);return g?g(o,s.context):this._host.createTaskExecutor(a).pipe((0,cvt.concatMap)(p=>(t.set(a,p),p(o,s.context))))}))}};l2.SchematicEngine=IBr});var kLi=z(xLi=>{"use strict";Object.defineProperty(xLi,"__esModule",{value:!0})});var mBr=z(Lq=>{"use strict";var Rdc=Lq&&Lq.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),CBr=Lq&&Lq.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Rdc(t,e,r)};Object.defineProperty(Lq,"__esModule",{value:!0});CBr(DLi(),Lq);CBr(kLi(),Lq);CBr(avt(),Lq)});var GLi=z(hBr=>{"use strict";Object.defineProperty(hBr,"__esModule",{value:!0});hBr.createConsoleLogger=kdc;var Ddc=vb(),xdc=c2();function kdc(e=!1,t=process.stdout,r=process.stderr,s){let a=new xdc.logging.IndentLogger("cling");return a.pipe((0,Ddc.filter)(o=>o.level!=="debug"||e)).subscribe(o=>{let g=s&&s[o.level],p=t;switch(o.level){case"warn":case"fatal":case"error":p=r;break}let f=2e3,m=o.message;for(;m;){let y=m.slice(0,f);m=m.slice(f),p.write(g?g(y):y)}p.write(` +`)}),a}});var ZLi=z(lNe=>{"use strict";Object.defineProperty(lNe,"__esModule",{value:!0});lNe.NodeJsSyncHost=lNe.NodeJsAsyncHost=void 0;var xR=xt("node:fs"),Gdc=xt("node:path"),Sb=vb(),Pm=c2();async function Fdc(e){try{return await xR.promises.access(e,xR.constants.F_OK),!0}catch{return!1}}var hvt;function FLi(){if(!hvt)try{hvt=xt("chokidar").FSWatcher}catch(e){throw e.code!=="MODULE_NOT_FOUND"?new Error('As of angular-devkit version 8.0, the "chokidar" package must be installed in order to use watch() features.'):e}}var _Br=class{get capabilities(){return{synchronous:!1}}write(t,r){return(0,Sb.from)(xR.promises.mkdir((0,Pm.getSystemPath)((0,Pm.dirname)(t)),{recursive:!0})).pipe((0,Sb.mergeMap)(()=>xR.promises.writeFile((0,Pm.getSystemPath)(t),new Uint8Array(r))))}read(t){return(0,Sb.from)(xR.promises.readFile((0,Pm.getSystemPath)(t))).pipe((0,Sb.map)(r=>new Uint8Array(r).buffer))}delete(t){return(0,Sb.from)(xR.promises.rm((0,Pm.getSystemPath)(t),{force:!0,recursive:!0,maxRetries:3}))}rename(t,r){return(0,Sb.from)(xR.promises.rename((0,Pm.getSystemPath)(t),(0,Pm.getSystemPath)(r)))}list(t){return(0,Sb.from)(xR.promises.readdir((0,Pm.getSystemPath)(t))).pipe((0,Sb.map)(r=>r.map(s=>(0,Pm.fragment)(s))))}exists(t){return(0,Sb.from)(Fdc((0,Pm.getSystemPath)(t)))}isDirectory(t){return this.stat(t).pipe((0,Sb.map)(r=>r.isDirectory()))}isFile(t){return this.stat(t).pipe((0,Sb.map)(r=>r.isFile()))}stat(t){return(0,Sb.from)(xR.promises.stat((0,Pm.getSystemPath)(t)))}watch(t,r){return new Sb.Observable(s=>{FLi();let a=new hvt({persistent:!0});return a.add((0,Pm.getSystemPath)(t)),a.on("change",o=>{s.next({path:(0,Pm.normalize)(o),time:new Date,type:Pm.virtualFs.HostWatchEventType.Changed})}).on("add",o=>{s.next({path:(0,Pm.normalize)(o),time:new Date,type:Pm.virtualFs.HostWatchEventType.Created})}).on("unlink",o=>{s.next({path:(0,Pm.normalize)(o),time:new Date,type:Pm.virtualFs.HostWatchEventType.Deleted})}),()=>{a.close()}}).pipe((0,Sb.publish)(),(0,Sb.refCount)())}};lNe.NodeJsAsyncHost=_Br;var yBr=class{get capabilities(){return{synchronous:!0}}write(t,r){return new Sb.Observable(s=>{(0,xR.mkdirSync)((0,Pm.getSystemPath)((0,Pm.dirname)(t)),{recursive:!0}),(0,xR.writeFileSync)((0,Pm.getSystemPath)(t),new Uint8Array(r)),s.next(),s.complete()})}read(t){return new Sb.Observable(r=>{let s=(0,xR.readFileSync)((0,Pm.getSystemPath)(t));r.next(new Uint8Array(s).buffer),r.complete()})}delete(t){return new Sb.Observable(r=>{(0,xR.rmSync)((0,Pm.getSystemPath)(t),{force:!0,recursive:!0,maxRetries:3}),r.complete()})}rename(t,r){return new Sb.Observable(s=>{let a=(0,Pm.getSystemPath)(r);(0,xR.mkdirSync)((0,Gdc.dirname)(a),{recursive:!0}),(0,xR.renameSync)((0,Pm.getSystemPath)(t),a),s.next(),s.complete()})}list(t){return new Sb.Observable(r=>{let s=(0,xR.readdirSync)((0,Pm.getSystemPath)(t));r.next(s.map(a=>(0,Pm.fragment)(a))),r.complete()})}exists(t){return new Sb.Observable(r=>{r.next((0,xR.existsSync)((0,Pm.getSystemPath)(t))),r.complete()})}isDirectory(t){return this.stat(t).pipe((0,Sb.map)(r=>r.isDirectory()))}isFile(t){return this.stat(t).pipe((0,Sb.map)(r=>r.isFile()))}stat(t){return new Sb.Observable(r=>{r.next((0,xR.statSync)((0,Pm.getSystemPath)(t))),r.complete()})}watch(t,r){return new Sb.Observable(s=>{FLi();let a=new hvt({persistent:!1});return a.add((0,Pm.getSystemPath)(t)),a.on("change",o=>{s.next({path:(0,Pm.normalize)(o),time:new Date,type:Pm.virtualFs.HostWatchEventType.Changed})}).on("add",o=>{s.next({path:(0,Pm.normalize)(o),time:new Date,type:Pm.virtualFs.HostWatchEventType.Created})}).on("unlink",o=>{s.next({path:(0,Pm.normalize)(o),time:new Date,type:Pm.virtualFs.HostWatchEventType.Deleted})}),()=>{a.close()}}).pipe((0,Sb.publish)(),(0,Sb.refCount)())}};lNe.NodeJsSyncHost=yBr});var _vt=z(gae=>{"use strict";var Zdc=gae&&gae.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),LLi=gae&&gae.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Zdc(t,e,r)};Object.defineProperty(gae,"__esModule",{value:!0});LLi(GLi(),gae);LLi(ZLi(),gae)});var BBr=z($Ie=>{"use strict";Object.defineProperty($Ie,"__esModule",{value:!0});$Ie.ActionList=$Ie.UnknownActionException=void 0;$Ie.isContentAction=Wdc;var Ldc=c2(),bBr=class extends Ldc.BaseException{constructor(t){super(`Unknown action: "${t.kind}".`)}};$Ie.UnknownActionException=bBr;var Vdc=1,EBr=class{_actions=[];_action(t){this._actions.push({...t,id:Vdc++,parent:this._actions[this._actions.length-1]?.id??0})}create(t,r){this._action({kind:"c",path:t,content:r})}overwrite(t,r){this._action({kind:"o",path:t,content:r})}rename(t,r){this._action({kind:"r",path:t,to:r})}delete(t){this._action({kind:"d",path:t})}optimize(){let t=new Map,r=new Map,s=new Map,a=new Set;for(let o of this._actions)switch(o.kind){case"c":t.set(o.path,o.content);break;case"o":t.has(o.path)?t.set(o.path,o.content):s.set(o.path,o.content);break;case"d":a.add(o.path);break;case"r":{let g=t.get(o.path),p=s.get(o.path);g&&(t.delete(o.path),t.set(o.to,g)),p&&(s.delete(o.path),s.set(o.to,p));let f;for(let[m,y]of r.entries())if(y==o.path){f=m;break}f&&r.set(f,o.to),!g&&!p&&!f&&r.set(o.path,o.to);break}}this._actions=[],a.forEach(o=>{this.delete(o)}),r.forEach((o,g)=>{this.rename(g,o)}),t.forEach((o,g)=>{this.create(g,o)}),s.forEach((o,g)=>{this.overwrite(g,o)})}push(t){this._actions.push(t)}get(t){return this._actions[t]}has(t){for(let r=0;rt.id)return!1}return!1}find(t){return this._actions.find(t)||null}forEach(t,r){this._actions.forEach(t,r)}get length(){return this._actions.length}[Symbol.iterator](){return this._actions[Symbol.iterator]()}};$Ie.ActionList=EBr;function Wdc(e){return e.kind=="c"||e.kind=="o"}});var SBr=z(bvt=>{"use strict";Object.defineProperty(bvt,"__esModule",{value:!0});bvt.SimpleSinkBase=void 0;var wb=vb(),VLi=QY(),Pdc=BBr(),yvt=function(){},vBr=class{preCommitAction=yvt;postCommitAction=yvt;preCommit=yvt;postCommit=yvt;_fileAlreadyExistException(t){throw new VLi.FileAlreadyExistException(t)}_fileDoesNotExistException(t){throw new VLi.FileDoesNotExistException(t)}_validateOverwriteAction(t){return this._validateFileExists(t.path).pipe((0,wb.map)(r=>{r||this._fileDoesNotExistException(t.path)}))}_validateCreateAction(t){return this._validateFileExists(t.path).pipe((0,wb.map)(r=>{r&&this._fileAlreadyExistException(t.path)}))}_validateRenameAction(t){return this._validateFileExists(t.path).pipe((0,wb.map)(r=>{r||this._fileDoesNotExistException(t.path)}),(0,wb.mergeMap)(()=>this._validateFileExists(t.to)),(0,wb.map)(r=>{r&&this._fileAlreadyExistException(t.to)}))}_validateDeleteAction(t){return this._validateFileExists(t.path).pipe((0,wb.map)(r=>{r||this._fileDoesNotExistException(t.path)}))}validateSingleAction(t){switch(t.kind){case"o":return this._validateOverwriteAction(t);case"c":return this._validateCreateAction(t);case"r":return this._validateRenameAction(t);case"d":return this._validateDeleteAction(t);default:throw new Pdc.UnknownActionException(t)}}commitSingleAction(t){return(0,wb.concat)(this.validateSingleAction(t),new wb.Observable(r=>{let s=null;switch(t.kind){case"o":s=this._overwriteFile(t.path,t.content);break;case"c":s=this._createFile(t.path,t.content);break;case"r":s=this._renameFile(t.path,t.to);break;case"d":s=this._deleteFile(t.path);break}s?s.subscribe(r):r.complete()})).pipe((0,wb.ignoreElements)())}commit(t){let r=(0,wb.from)(t.actions);return(0,wb.concat)(this.preCommit()||(0,wb.of)(null),(0,wb.defer)(()=>r).pipe((0,wb.concatMap)(s=>{let a=this.preCommitAction(s);return(0,wb.isObservable)(a)||Odc(a)?a:(0,wb.of)(a||s)}),(0,wb.concatMap)(s=>(0,wb.concat)(this.commitSingleAction(s).pipe((0,wb.ignoreElements)()),(0,wb.of)(s))),(0,wb.concatMap)(s=>this.postCommitAction(s)||(0,wb.of)(null))),(0,wb.defer)(()=>this._done()),(0,wb.defer)(()=>this.postCommit()||(0,wb.of)(null))).pipe((0,wb.ignoreElements)(),(0,wb.defaultIfEmpty)(void 0))}};bvt.SimpleSinkBase=vBr;function Odc(e){return!!e&&typeof e.then=="function"}});var Bvt=z(Evt=>{"use strict";Object.defineProperty(Evt,"__esModule",{value:!0});Evt.HostSink=void 0;var QT=vb(),Qdc=SBr(),wBr=class extends Qdc.SimpleSinkBase{_host;_force;_filesToDelete=new Set;_filesToRename=new Set;_filesToCreate=new Map;_filesToUpdate=new Map;constructor(t,r=!1){super(),this._host=t,this._force=r}_validateCreateAction(t){return this._force?QT.EMPTY:super._validateCreateAction(t)}_validateFileExists(t){if(this._filesToCreate.has(t)||this._filesToUpdate.has(t))return(0,QT.of)(!0);if(this._filesToDelete.has(t))return(0,QT.of)(!1);for(let[r,s]of this._filesToRename.values())switch(t){case r:return(0,QT.of)(!1);case s:return(0,QT.of)(!0)}return this._host.exists(t)}_overwriteFile(t,r){return this._filesToUpdate.set(t,r),QT.EMPTY}_createFile(t,r){return this._filesToCreate.set(t,r),QT.EMPTY}_renameFile(t,r){return this._filesToRename.add([t,r]),QT.EMPTY}_deleteFile(t){return this._filesToCreate.has(t)?(this._filesToCreate.delete(t),this._filesToUpdate.delete(t)):this._filesToDelete.add(t),QT.EMPTY}_done(){return(0,QT.concat)((0,QT.from)([...this._filesToDelete.values()]).pipe((0,QT.concatMap)(t=>this._host.delete(t))),(0,QT.from)([...this._filesToRename.entries()]).pipe((0,QT.concatMap)(([t,[r,s]])=>this._host.rename(r,s))),(0,QT.from)([...this._filesToCreate.entries()]).pipe((0,QT.concatMap)(([t,r])=>this._host.write(t,r))),(0,QT.from)([...this._filesToUpdate.entries()]).pipe((0,QT.concatMap)(([t,r])=>this._host.write(t,r)))).pipe((0,QT.reduce)(()=>{}))}};Evt.HostSink=wBr});var NBr=z(vvt=>{"use strict";Object.defineProperty(vvt,"__esModule",{value:!0});vvt.DryRunSink=void 0;var WLi=c2(),Mdc=_vt(),PLi=vb(),Hdc=Bvt(),TBr=class extends Hdc.HostSink{_subject=new PLi.Subject;_fileDoesNotExistExceptionSet=new Set;_fileAlreadyExistExceptionSet=new Set;reporter=this._subject.asObservable();constructor(t,r=!1){super(typeof t=="string"?new WLi.virtualFs.ScopedHost(new Mdc.NodeJsSyncHost,(0,WLi.normalize)(t)):t,r)}_fileAlreadyExistException(t){this._fileAlreadyExistExceptionSet.add(t)}_fileDoesNotExistException(t){this._fileDoesNotExistExceptionSet.add(t)}_done(){return this._fileAlreadyExistExceptionSet.forEach(t=>{this._subject.next({kind:"error",description:"alreadyExist",path:t})}),this._fileDoesNotExistExceptionSet.forEach(t=>{this._subject.next({kind:"error",description:"doesNotExist",path:t})}),this._filesToDelete.forEach(t=>{for(let[r]of this._filesToRename)if(r==t)return;this._subject.next({kind:"delete",path:t})}),this._filesToRename.forEach(([t,r])=>{this._subject.next({kind:"rename",path:t,to:r})}),this._filesToCreate.forEach((t,r)=>{for(let[,s]of this._filesToRename)if(s==r)return;this._fileAlreadyExistExceptionSet.has(r)||this._fileDoesNotExistExceptionSet.has(r)||this._subject.next({kind:"create",path:r,content:t})}),this._filesToUpdate.forEach((t,r)=>{this._subject.next({kind:"update",path:r,content:t})}),this._subject.complete(),(0,PLi.of)(void 0)}};vvt.DryRunSink=TBr});var OLi=z(Svt=>{"use strict";Object.defineProperty(Svt,"__esModule",{value:!0});Svt.BaseWorkflow=void 0;var RBr=c2(),gx=vb(),Ydc=mBr(),Xdc=QY(),Jdc=K2r(),Udc=NBr(),Kdc=Bvt(),jdc=qIe(),DBr=class{_engine;_engineHost;_registry;_host;_reporter=new gx.Subject;_lifeCycle=new gx.Subject;_context;_force;_dryRun;constructor(t){this._host=t.host,this._engineHost=t.engineHost,t.registry?this._registry=t.registry:(this._registry=new RBr.schema.CoreSchemaRegistry(Jdc.standardFormats),this._registry.addPostTransform(RBr.schema.transforms.addUndefinedDefaults)),this._engine=new Ydc.SchematicEngine(this._engineHost,this),this._context=[],this._force=t.force||!1,this._dryRun=t.dryRun||!1}get context(){let t=this._context[this._context.length-1];if(!t)throw new Error("Cannot get context when workflow is not executing...");return t}get engine(){return this._engine}get engineHost(){return this._engineHost}get registry(){return this._registry}get reporter(){return this._reporter.asObservable()}get lifeCycle(){return this._lifeCycle.asObservable()}_createSinks(){let t=!1,r=new Udc.DryRunSink(this._host,this._force),s=r.reporter.subscribe(a=>{this._reporter.next(a),t=t||a.kind=="error"});return[r,{commit(){return s.unsubscribe(),t?(0,gx.throwError)(new Xdc.UnsuccessfulWorkflowExecution):(0,gx.of)()}},...this._dryRun?[]:[new Kdc.HostSink(this._host,this._force)]]}execute(t){let r=this._context[this._context.length-1];r||this._lifeCycle.next({kind:"start"});let s=this._engine.createCollection(t.collection),a=t.allowPrivate||r&&r.collection===t.collection,o=s.createSchematic(t.schematic,a),g=this._createSinks();this._lifeCycle.next({kind:"workflow-start"});let p={...t,debug:t.debug||!1,logger:t.logger||r&&r.logger||new RBr.logging.NullLogger,parentContext:r};return this._context.push(p),o.call(t.options,(0,gx.of)(new jdc.HostTree(this._host)),{logger:p.logger}).pipe((0,gx.concatMap)(f=>(0,gx.concat)((0,gx.from)(g).pipe((0,gx.concatMap)(m=>m.commit(f)),(0,gx.ignoreElements)()),(0,gx.of)(f))),(0,gx.concatMap)(()=>this._dryRun?gx.EMPTY:(this._lifeCycle.next({kind:"post-tasks-start"}),this._engine.executePostTasks().pipe((0,gx.tap)({complete:()=>this._lifeCycle.next({kind:"post-tasks-end"})}),(0,gx.defaultIfEmpty)(void 0),(0,gx.last)()))),(0,gx.tap)({complete:()=>{this._lifeCycle.next({kind:"workflow-end"}),this._context.pop(),this._context.length==0&&this._lifeCycle.next({kind:"end"})}}))}};Svt.BaseWorkflow=DBr});var MLi=z(QLi=>{"use strict";Object.defineProperty(QLi,"__esModule",{value:!0})});var YLi=z(Aae=>{"use strict";var zdc=Aae&&Aae.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),HLi=Aae&&Aae.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&zdc(t,e,r)};Object.defineProperty(Aae,"__esModule",{value:!0});HLi(OLi(),Aae);HLi(MLi(),Aae)});var wvt=z(rG=>{"use strict";Object.defineProperty(rG,"__esModule",{value:!0});rG.source=$dc;rG.empty=epc;rG.chain=kBr;rG.apply=tpc;rG.mergeWith=rpc;rG.noop=KLi;rG.filter=npc;rG.asSource=ipc;rG.branchAndMerge=spc;rG.when=opc;rG.partitionApplyMerge=apc;rG.forEach=cpc;rG.composeFileOperators=lpc;rG.applyToSubtree=upc;var dae=vb(),JLi=QY(),XLi=qIe(),ULi=YQ(),qdc=$Bt(),xBr=FXe(),PK=svt();function $dc(e){return()=>e}function epc(){return()=>(0,xBr.empty)()}function kBr(e){return async(t,r)=>{let s;if(Symbol.asyncIterator in e)for await(let a of e)s=(0,PK.callRule)(a,s??t,r);else for(let a of e)s=(0,PK.callRule)(a,s??t,r);return()=>s}}function tpc(e,t){return r=>(0,PK.callRule)(kBr(t),(0,PK.callSource)(e,r),r)}function rpc(e,t=ULi.MergeStrategy.Default){return(r,s)=>(0,PK.callSource)(e,s).pipe((0,dae.map)(a=>r.merge(a,t||s.strategy)),(0,dae.mapTo)(r))}function KLi(){return()=>{}}function npc(e){return t=>{if(XLi.HostTree.isHostTree(t))return new XLi.FilterHostTree(t,e);throw new JLi.SchematicsException("Tree type is not supported.")}}function ipc(e){return t=>(0,PK.callRule)(e,(0,xBr.empty)(),t)}function spc(e,t=ULi.MergeStrategy.Default){return(r,s)=>(0,PK.callRule)(e,r.branch(),s).pipe((0,dae.map)(a=>r.merge(a,t||s.strategy)),(0,dae.mapTo)(r))}function opc(e,t){return r=>e(r.path,r)?t(r):r}function apc(e,t,r){return(s,a)=>{let[o,g]=(0,xBr.partition)(s,e);return(0,dae.concat)((0,PK.callRule)(t,o,a),(0,PK.callRule)(r||KLi(),g,a)).pipe((0,dae.toArray)(),(0,dae.map)(([p,f])=>(p.merge(f,a.strategy),p)))}}function cpc(e){return t=>{t.visit((r,s)=>{if(!s)return;let a=e(s);if(a!==s){if(a===null){t.delete(r);return}a.path!=r&&t.rename(r,a.path),a.content.equals(s.content)||t.overwrite(a.path,a.content)}})}}function lpc(e){return t=>{let r=t;for(let s of e)if(r=s(r),r===null)return null;return r}}function upc(e,t){return(r,s)=>{let a=new qdc.ScopedTree(r,e);return(0,PK.callRule)(kBr(t),a,s).pipe((0,dae.map)(o=>{if(o===a)return r;throw new JLi.SchematicsException('Original tree must be returned from all rules when using "applyToSubtree".')}))}}});var jLi=z(FBr=>{"use strict";Object.defineProperty(FBr,"__esModule",{value:!0});FBr.move=Apc;var GBr=c2(),gpc=wvt();function Apc(e,t){t===void 0&&(t=e,e="/");let r=(0,GBr.normalize)("/"+e),s=(0,GBr.normalize)("/"+t);return r===s?gpc.noop:a=>(a.exists(r)?a.rename(r,s):a.getDir(r).visit(o=>{a.rename(o,(0,GBr.join)(s,o.slice(r.length)))}),a)}});var qLi=z(ZBr=>{"use strict";Object.defineProperty(ZBr,"__esModule",{value:!0});ZBr.default=fpc;var dpc=qIe();function zLi(e){return new Array(e).fill(0).map(t=>"abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)]).join("")}function ppc(e,t){return Math.floor(Math.random()*(t-e))+e}function fpc(e){return()=>{let t="root"in e?e.root:"/",r=new dpc.HostTree,s="multiFiles"in e?typeof e.multiFiles=="number"?e.multiFiles:ppc(2,12):1;for(let a=0;a{"use strict";Object.defineProperty(Tvt,"__esModule",{value:!0});Tvt.externalSchematic=Ipc;Tvt.schematic=Cpc;var uNe=vb(),$Li=YQ(),e9i=FXe();function Ipc(e,t,r,s){return(a,o)=>o.engine.createCollection(e,o.schematic.collection).createSchematic(t).call(r,(0,uNe.of)((0,e9i.branch)(a)),o,s).pipe((0,uNe.last)(),(0,uNe.map)(f=>(a.merge(f,$Li.MergeStrategy.AllowOverwriteConflict),a)))}function Cpc(e,t,r){return(s,a)=>a.schematic.collection.createSchematic(e,!0).call(t,(0,uNe.of)((0,e9i.branch)(s)),a,r).pipe((0,uNe.last)(),(0,uNe.map)(p=>(s.merge(p,$Li.MergeStrategy.AllowOverwriteConflict),s)))}});var i9i=z(xw=>{"use strict";Object.defineProperty(xw,"__esModule",{value:!0});xw.InvalidPipeException=xw.UnknownPipeException=xw.OptionIsNotDefinedException=xw.TEMPLATE_FILENAME_RE=void 0;xw.applyContentTemplate=LBr;xw.contentTemplate=r9i;xw.applyPathTemplate=VBr;xw.pathTemplate=n9i;xw.renameTemplateFiles=_pc;xw.template=ypc;xw.applyTemplates=bpc;var gNe=c2(),mpc=xt("node:os"),eCe=wvt();xw.TEMPLATE_FILENAME_RE=/\.template$/;var WXe=class extends gNe.BaseException{constructor(t){super(`Option "${t}" is not defined.`)}};xw.OptionIsNotDefinedException=WXe;var Nvt=class extends gNe.BaseException{constructor(t){super(`Pipe "${t}" is not defined.`)}};xw.UnknownPipeException=Nvt;var Rvt=class extends gNe.BaseException{constructor(t){super(`Pipe "${t}" is invalid.`)}};xw.InvalidPipeException=Rvt;var hpc=new TextDecoder("utf-8",{fatal:!0});function LBr(e){return t=>{let{path:r,content:s}=t;try{let a=hpc.decode(s).replace(/\r?\n/g,mpc.EOL);return{path:r,content:Buffer.from((0,gNe.template)(a,{})(e))}}catch(a){if(a instanceof TypeError||a.code==="ERR_ENCODING_INVALID_ENCODED_DATA")return t;throw a}}}function r9i(e){return(0,eCe.forEach)(LBr(e))}function VBr(e,t={interpolationStart:"__",interpolationEnd:"__",pipeSeparator:"@"}){let r=t.interpolationStart,s=t.interpolationEnd,a=r.length,o=s.length;return g=>{let p=g.path,f=g.content,m=p,y=p.indexOf(r),B=p.indexOf(s,y+a+1);for(;y!=-1&&B!=-1;){let v=p.substring(y+a,B),k=e[v];if(t.pipeSeparator){let[T,...O]=v.split(t.pipeSeparator);if(k=e[T],typeof k=="function"&&(k=k.call(e,m)),k===void 0)throw new WXe(T);k=O.reduce((X,U)=>{if(!U)return X;if(!(U in e))throw new Nvt(U);let le=e[U];if(typeof le!="function")throw new Rvt(U);return""+le(X)},""+k)}else if(typeof k=="function"&&(k=k.call(e,m)),k===void 0)throw new WXe(v);p=p.substring(0,y)+k+p.substring(B+o),y=p.indexOf(t.interpolationStart),B=p.indexOf(t.interpolationEnd,y+a+1)}return{path:(0,gNe.normalize)(p),content:f}}}function n9i(e){return(0,eCe.forEach)(VBr(e))}function _pc(){return(0,eCe.forEach)(e=>e.path.match(xw.TEMPLATE_FILENAME_RE)?{content:e.content,path:(0,gNe.normalize)(e.path.replace(xw.TEMPLATE_FILENAME_RE,""))}:e)}function ypc(e){return(0,eCe.chain)([r9i(e),n9i(e)])}function bpc(e){return(0,eCe.forEach)((0,eCe.when)(t=>t.endsWith(".template"),(0,eCe.composeFileOperators)([LBr(e),VBr(e),t=>({content:t.content,path:t.path.replace(xw.TEMPLATE_FILENAME_RE,"")})])))}});var s9i=z(WBr=>{"use strict";Object.defineProperty(WBr,"__esModule",{value:!0});WBr.url=Bpc;var Epc=xt("url");function Bpc(e){let t=(0,Epc.parse)(e);return r=>r.engine.createSourceFromUrl(t,r)(r)}});var o9i=z(Dvt=>{"use strict";Object.defineProperty(Dvt,"__esModule",{value:!0});Dvt.EmptyTree=void 0;var vpc=qIe(),PBr=class extends vpc.HostTree{constructor(){super()}};Dvt.EmptyTree=PBr});var ANe=z(om=>{"use strict";var a9i=om&&om.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),Spc=om&&om.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),c9i=om&&om.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var s=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(s[s.length]=a);return s},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var s=e(t),a=0;a{"use strict";Object.defineProperty(l9i,"__esModule",{value:!0})});var Gvt=z(kvt=>{"use strict";Object.defineProperty(kvt,"__esModule",{value:!0});kvt.ExportStringRef=void 0;var g9i=xt("path"),OBr=class{_ref;_module;_path;constructor(t,r=process.cwd(),s=!0){let[a,o]=t.split("#",2);this._module=a[0]=="."?(0,g9i.resolve)(r,a):a,this._module=xt.resolve(this._module),this._path=(0,g9i.dirname)(this._module),s?this._ref=xt(this._module)[o||"default"]:this._ref=xt(this._module)}get ref(){return this._ref}get module(){return this._module}get path(){return this._path}};kvt.ExportStringRef=OBr});var MBr=z(QBr=>{"use strict";Object.defineProperty(QBr,"__esModule",{value:!0});QBr.readJsonFile=Gpc;var xpc=xt("fs"),A9i=rNe(),kpc=QY();function Gpc(e){let t;try{t=(0,xpc.readFileSync)(e,"utf-8")}catch(a){throw a&&typeof a=="object"&&"code"in a&&a.code==="ENOENT"?new kpc.FileDoesNotExistException(e):a}let r=[],s=(0,A9i.parse)(t,r,{allowTrailingComma:!0});if(r.length){let{error:a,offset:o}=r[0];throw new Error(`Failed to parse "${e}" as JSON AST Object. ${(0,A9i.printParseErrorCode)(a)} at location: ${o}.`)}return s}});var Vvt=z(cv=>{"use strict";Object.defineProperty(cv,"__esModule",{value:!0});cv.FileSystemEngineHostBase=cv.SchematicNameCollisionException=cv.SchematicMissingDescriptionException=cv.SchematicMissingFieldsException=cv.CollectionMissingFieldsException=cv.CollectionMissingSchematicsMapException=cv.FactoryCannotBeResolvedException=cv.SchematicMissingFactoryException=cv.InvalidCollectionJsonException=cv.CollectionCannotBeResolvedException=void 0;var MY=c2(),Fpc=_vt(),d9i=xt("fs"),dNe=xt("path"),PXe=vb(),p9i=ANe(),f9i=MBr(),HBr=class extends MY.BaseException{constructor(t){super(`Collection ${JSON.stringify(t)} cannot be resolved.`)}};cv.CollectionCannotBeResolvedException=HBr;var OXe=class extends MY.BaseException{constructor(t,r,s){let a=`Collection JSON at path ${JSON.stringify(r)} is invalid.`;s&&(a=`${a} ${s.message}`),super(a)}};cv.InvalidCollectionJsonException=OXe;var Fvt=class extends MY.BaseException{constructor(t){super(`Schematic ${JSON.stringify(t)} is missing a factory.`)}};cv.SchematicMissingFactoryException=Fvt;var Zvt=class extends MY.BaseException{constructor(t){super(`Schematic ${JSON.stringify(t)} cannot resolve the factory.`)}};cv.FactoryCannotBeResolvedException=Zvt;var YBr=class extends MY.BaseException{constructor(t){super(`Collection "${t}" does not have a schematics map.`)}};cv.CollectionMissingSchematicsMapException=YBr;var XBr=class extends MY.BaseException{constructor(t){super(`Collection "${t}" is missing fields.`)}};cv.CollectionMissingFieldsException=XBr;var JBr=class extends MY.BaseException{constructor(t){super(`Schematic "${t}" is missing fields.`)}};cv.SchematicMissingFieldsException=JBr;var UBr=class extends MY.BaseException{constructor(t){super(`Schematics "${t}" does not have a description.`)}};cv.SchematicMissingDescriptionException=UBr;var Lvt=class extends MY.BaseException{constructor(t){super(`Schematics/alias ${JSON.stringify(t)} collides with another alias or schematic name.`)}};cv.SchematicNameCollisionException=Lvt;var KBr=class{_transforms=[];_contextTransforms=[];_taskFactories=new Map;listSchematicNames(t,r){let s=[];for(let a of Object.keys(t.schematics)){let o=t.schematics[a];o.hidden&&!r||o.private||(!o.extends||o.factory||o.extends&&o.extends.indexOf(":")!==-1)&&s.push(a)}return s}registerOptionsTransform(t){this._transforms.push(t)}registerContextTransform(t){this._contextTransforms.push(t)}createCollectionDescription(t,r){let s=this._resolveCollectionPath(t,r?.path),a=(0,f9i.readJsonFile)(s);if(!a||typeof a!="object"||Array.isArray(a))throw new OXe(t,s);typeof a.extends=="string"&&(a.extends=[a.extends]);let o=this._transformCollectionDescription(t,{...a,path:s});if(!o||!o.name)throw new OXe(t,s);let g=Object.keys(o.schematics);for(let p of Object.keys(o.schematics)){let f=o.schematics[p].aliases||[];for(let m of f)if(g.indexOf(m)!=-1)throw new Lvt(m);g.push(...f)}return o}createSchematicDescription(t,r){for(let y of Object.keys(r.schematics)){let B=r.schematics[y];if(B.aliases&&B.aliases.indexOf(t)!=-1){t=y;break}}if(!(t in r.schematics))return null;let s=(0,dNe.dirname)(r.path),a=r.schematics[t];if(!a)return null;if(a.extends){let y=a.extends.indexOf(":"),B=y!==-1?a.extends.slice(0,y):null,v=y===-1?a.extends:a.extends.slice(y+1);if(B!==null){let k=this.createCollectionDescription(B);return this.createSchematicDescription(v,k)}else return this.createSchematicDescription(v,r)}if(!a.factory)throw new Fvt(t);let o=this._resolveReferenceString(a.factory,s,r);if(!o)throw new Zvt(t);let g=a.schema,p;g&&((0,dNe.isAbsolute)(g)||(g=(0,dNe.join)(s,g)),p=(0,f9i.readJsonFile)(g));let f=(0,dNe.join)(s,a.factory),m=(0,d9i.existsSync)(f)&&(0,d9i.statSync)(f).isDirectory()?f:(0,dNe.dirname)(f);return this._transformSchematicDescription(t,r,{...a,schema:g,schemaJson:p,name:t,path:m,factoryFn:o.ref,collection:r})}createSourceFromUrl(t){switch(t.protocol){case null:case"file:":return r=>{let s=r.schematic.description;if(s.path===void 0)throw new Error("Unsupported schematic context. Expected a FileSystemSchematicContext.");let a=(0,MY.normalize)((0,dNe.resolve)(s.path,t.path||""));return new p9i.HostCreateTree(new MY.virtualFs.ScopedHost(new Fpc.NodeJsSyncHost,a))}}return null}transformOptions(t,r,s){let a=async()=>{let o=r;for(let g of this._transforms){let p=g(t,o,s);o=await((0,PXe.isObservable)(p)?(0,PXe.lastValueFrom)(p):p)}return o};return(0,PXe.from)(a())}transformContext(t){return this._contextTransforms.reduce((r,s)=>s(r),t)}getSchematicRuleFactory(t,r){return t.factoryFn}registerTaskExecutor(t,r){this._taskFactories.set(t.name,()=>(0,PXe.from)(t.create(r)))}createTaskExecutor(t){let r=this._taskFactories.get(t);return r?r():(0,PXe.throwError)(new p9i.UnregisteredTaskException(t))}hasTaskExecutor(t){return this._taskFactories.has(t)}};cv.FileSystemEngineHostBase=KBr});var I9i=z(Wvt=>{"use strict";Object.defineProperty(Wvt,"__esModule",{value:!0});Wvt.NodePackageName=void 0;Wvt.NodePackageName="node-package"});var C9i=z(Pvt=>{"use strict";Object.defineProperty(Pvt,"__esModule",{value:!0});Pvt.RepositoryInitializerName=void 0;Pvt.RepositoryInitializerName="repo-init"});var m9i=z(Ovt=>{"use strict";Object.defineProperty(Ovt,"__esModule",{value:!0});Ovt.RunSchematicName=void 0;Ovt.RunSchematicName="run-schematic"});var h9i=z((lQl,Zpc)=>{Zpc.exports={dots:{interval:80,frames:["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]},dots2:{interval:80,frames:["\u28FE","\u28FD","\u28FB","\u28BF","\u287F","\u28DF","\u28EF","\u28F7"]},dots3:{interval:80,frames:["\u280B","\u2819","\u281A","\u281E","\u2816","\u2826","\u2834","\u2832","\u2833","\u2813"]},dots4:{interval:80,frames:["\u2804","\u2806","\u2807","\u280B","\u2819","\u2838","\u2830","\u2820","\u2830","\u2838","\u2819","\u280B","\u2807","\u2806"]},dots5:{interval:80,frames:["\u280B","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B"]},dots6:{interval:80,frames:["\u2801","\u2809","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2824","\u2804","\u2804","\u2824","\u2834","\u2832","\u2812","\u2802","\u2802","\u2812","\u281A","\u2819","\u2809","\u2801"]},dots7:{interval:80,frames:["\u2808","\u2809","\u280B","\u2813","\u2812","\u2810","\u2810","\u2812","\u2816","\u2826","\u2824","\u2820","\u2820","\u2824","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B","\u2809","\u2808"]},dots8:{interval:80,frames:["\u2801","\u2801","\u2809","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2824","\u2804","\u2804","\u2824","\u2820","\u2820","\u2824","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B","\u2809","\u2808","\u2808"]},dots9:{interval:80,frames:["\u28B9","\u28BA","\u28BC","\u28F8","\u28C7","\u2867","\u2857","\u284F"]},dots10:{interval:80,frames:["\u2884","\u2882","\u2881","\u2841","\u2848","\u2850","\u2860"]},dots11:{interval:100,frames:["\u2801","\u2802","\u2804","\u2840","\u2880","\u2820","\u2810","\u2808"]},dots12:{interval:80,frames:["\u2880\u2800","\u2840\u2800","\u2804\u2800","\u2882\u2800","\u2842\u2800","\u2805\u2800","\u2883\u2800","\u2843\u2800","\u280D\u2800","\u288B\u2800","\u284B\u2800","\u280D\u2801","\u288B\u2801","\u284B\u2801","\u280D\u2809","\u280B\u2809","\u280B\u2809","\u2809\u2819","\u2809\u2819","\u2809\u2829","\u2808\u2899","\u2808\u2859","\u2888\u2829","\u2840\u2899","\u2804\u2859","\u2882\u2829","\u2842\u2898","\u2805\u2858","\u2883\u2828","\u2843\u2890","\u280D\u2850","\u288B\u2820","\u284B\u2880","\u280D\u2841","\u288B\u2801","\u284B\u2801","\u280D\u2809","\u280B\u2809","\u280B\u2809","\u2809\u2819","\u2809\u2819","\u2809\u2829","\u2808\u2899","\u2808\u2859","\u2808\u2829","\u2800\u2899","\u2800\u2859","\u2800\u2829","\u2800\u2898","\u2800\u2858","\u2800\u2828","\u2800\u2890","\u2800\u2850","\u2800\u2820","\u2800\u2880","\u2800\u2840"]},dots13:{interval:80,frames:["\u28FC","\u28F9","\u28BB","\u283F","\u285F","\u28CF","\u28E7","\u28F6"]},dots8Bit:{interval:80,frames:["\u2800","\u2801","\u2802","\u2803","\u2804","\u2805","\u2806","\u2807","\u2840","\u2841","\u2842","\u2843","\u2844","\u2845","\u2846","\u2847","\u2808","\u2809","\u280A","\u280B","\u280C","\u280D","\u280E","\u280F","\u2848","\u2849","\u284A","\u284B","\u284C","\u284D","\u284E","\u284F","\u2810","\u2811","\u2812","\u2813","\u2814","\u2815","\u2816","\u2817","\u2850","\u2851","\u2852","\u2853","\u2854","\u2855","\u2856","\u2857","\u2818","\u2819","\u281A","\u281B","\u281C","\u281D","\u281E","\u281F","\u2858","\u2859","\u285A","\u285B","\u285C","\u285D","\u285E","\u285F","\u2820","\u2821","\u2822","\u2823","\u2824","\u2825","\u2826","\u2827","\u2860","\u2861","\u2862","\u2863","\u2864","\u2865","\u2866","\u2867","\u2828","\u2829","\u282A","\u282B","\u282C","\u282D","\u282E","\u282F","\u2868","\u2869","\u286A","\u286B","\u286C","\u286D","\u286E","\u286F","\u2830","\u2831","\u2832","\u2833","\u2834","\u2835","\u2836","\u2837","\u2870","\u2871","\u2872","\u2873","\u2874","\u2875","\u2876","\u2877","\u2838","\u2839","\u283A","\u283B","\u283C","\u283D","\u283E","\u283F","\u2878","\u2879","\u287A","\u287B","\u287C","\u287D","\u287E","\u287F","\u2880","\u2881","\u2882","\u2883","\u2884","\u2885","\u2886","\u2887","\u28C0","\u28C1","\u28C2","\u28C3","\u28C4","\u28C5","\u28C6","\u28C7","\u2888","\u2889","\u288A","\u288B","\u288C","\u288D","\u288E","\u288F","\u28C8","\u28C9","\u28CA","\u28CB","\u28CC","\u28CD","\u28CE","\u28CF","\u2890","\u2891","\u2892","\u2893","\u2894","\u2895","\u2896","\u2897","\u28D0","\u28D1","\u28D2","\u28D3","\u28D4","\u28D5","\u28D6","\u28D7","\u2898","\u2899","\u289A","\u289B","\u289C","\u289D","\u289E","\u289F","\u28D8","\u28D9","\u28DA","\u28DB","\u28DC","\u28DD","\u28DE","\u28DF","\u28A0","\u28A1","\u28A2","\u28A3","\u28A4","\u28A5","\u28A6","\u28A7","\u28E0","\u28E1","\u28E2","\u28E3","\u28E4","\u28E5","\u28E6","\u28E7","\u28A8","\u28A9","\u28AA","\u28AB","\u28AC","\u28AD","\u28AE","\u28AF","\u28E8","\u28E9","\u28EA","\u28EB","\u28EC","\u28ED","\u28EE","\u28EF","\u28B0","\u28B1","\u28B2","\u28B3","\u28B4","\u28B5","\u28B6","\u28B7","\u28F0","\u28F1","\u28F2","\u28F3","\u28F4","\u28F5","\u28F6","\u28F7","\u28B8","\u28B9","\u28BA","\u28BB","\u28BC","\u28BD","\u28BE","\u28BF","\u28F8","\u28F9","\u28FA","\u28FB","\u28FC","\u28FD","\u28FE","\u28FF"]},sand:{interval:80,frames:["\u2801","\u2802","\u2804","\u2840","\u2848","\u2850","\u2860","\u28C0","\u28C1","\u28C2","\u28C4","\u28CC","\u28D4","\u28E4","\u28E5","\u28E6","\u28EE","\u28F6","\u28F7","\u28FF","\u287F","\u283F","\u289F","\u281F","\u285B","\u281B","\u282B","\u288B","\u280B","\u280D","\u2849","\u2809","\u2811","\u2821","\u2881"]},line:{interval:130,frames:["-","\\","|","/"]},line2:{interval:100,frames:["\u2802","-","\u2013","\u2014","\u2013","-"]},pipe:{interval:100,frames:["\u2524","\u2518","\u2534","\u2514","\u251C","\u250C","\u252C","\u2510"]},simpleDots:{interval:400,frames:[". ",".. ","..."," "]},simpleDotsScrolling:{interval:200,frames:[". ",".. ","..."," .."," ."," "]},star:{interval:70,frames:["\u2736","\u2738","\u2739","\u273A","\u2739","\u2737"]},star2:{interval:80,frames:["+","x","*"]},flip:{interval:70,frames:["_","_","_","-","`","`","'","\xB4","-","_","_","_"]},hamburger:{interval:100,frames:["\u2631","\u2632","\u2634"]},growVertical:{interval:120,frames:["\u2581","\u2583","\u2584","\u2585","\u2586","\u2587","\u2586","\u2585","\u2584","\u2583"]},growHorizontal:{interval:120,frames:["\u258F","\u258E","\u258D","\u258C","\u258B","\u258A","\u2589","\u258A","\u258B","\u258C","\u258D","\u258E"]},balloon:{interval:140,frames:[" ",".","o","O","@","*"," "]},balloon2:{interval:120,frames:[".","o","O","\xB0","O","o","."]},noise:{interval:100,frames:["\u2593","\u2592","\u2591"]},bounce:{interval:120,frames:["\u2801","\u2802","\u2804","\u2802"]},boxBounce:{interval:120,frames:["\u2596","\u2598","\u259D","\u2597"]},boxBounce2:{interval:100,frames:["\u258C","\u2580","\u2590","\u2584"]},triangle:{interval:50,frames:["\u25E2","\u25E3","\u25E4","\u25E5"]},binary:{interval:80,frames:["010010","001100","100101","111010","111101","010111","101011","111000","110011","110101"]},arc:{interval:100,frames:["\u25DC","\u25E0","\u25DD","\u25DE","\u25E1","\u25DF"]},circle:{interval:120,frames:["\u25E1","\u2299","\u25E0"]},squareCorners:{interval:180,frames:["\u25F0","\u25F3","\u25F2","\u25F1"]},circleQuarters:{interval:120,frames:["\u25F4","\u25F7","\u25F6","\u25F5"]},circleHalves:{interval:50,frames:["\u25D0","\u25D3","\u25D1","\u25D2"]},squish:{interval:100,frames:["\u256B","\u256A"]},toggle:{interval:250,frames:["\u22B6","\u22B7"]},toggle2:{interval:80,frames:["\u25AB","\u25AA"]},toggle3:{interval:120,frames:["\u25A1","\u25A0"]},toggle4:{interval:100,frames:["\u25A0","\u25A1","\u25AA","\u25AB"]},toggle5:{interval:100,frames:["\u25AE","\u25AF"]},toggle6:{interval:300,frames:["\u101D","\u1040"]},toggle7:{interval:80,frames:["\u29BE","\u29BF"]},toggle8:{interval:100,frames:["\u25CD","\u25CC"]},toggle9:{interval:100,frames:["\u25C9","\u25CE"]},toggle10:{interval:100,frames:["\u3282","\u3280","\u3281"]},toggle11:{interval:50,frames:["\u29C7","\u29C6"]},toggle12:{interval:120,frames:["\u2617","\u2616"]},toggle13:{interval:80,frames:["=","*","-"]},arrow:{interval:100,frames:["\u2190","\u2196","\u2191","\u2197","\u2192","\u2198","\u2193","\u2199"]},arrow2:{interval:80,frames:["\u2B06\uFE0F ","\u2197\uFE0F ","\u27A1\uFE0F ","\u2198\uFE0F ","\u2B07\uFE0F ","\u2199\uFE0F ","\u2B05\uFE0F ","\u2196\uFE0F "]},arrow3:{interval:120,frames:["\u25B9\u25B9\u25B9\u25B9\u25B9","\u25B8\u25B9\u25B9\u25B9\u25B9","\u25B9\u25B8\u25B9\u25B9\u25B9","\u25B9\u25B9\u25B8\u25B9\u25B9","\u25B9\u25B9\u25B9\u25B8\u25B9","\u25B9\u25B9\u25B9\u25B9\u25B8"]},bouncingBar:{interval:80,frames:["[ ]","[= ]","[== ]","[=== ]","[====]","[ ===]","[ ==]","[ =]","[ ]","[ =]","[ ==]","[ ===]","[====]","[=== ]","[== ]","[= ]"]},bouncingBall:{interval:80,frames:["( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF)","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","(\u25CF )"]},smiley:{interval:200,frames:["\u{1F604} ","\u{1F61D} "]},monkey:{interval:300,frames:["\u{1F648} ","\u{1F648} ","\u{1F649} ","\u{1F64A} "]},hearts:{interval:100,frames:["\u{1F49B} ","\u{1F499} ","\u{1F49C} ","\u{1F49A} ","\u2764\uFE0F "]},clock:{interval:100,frames:["\u{1F55B} ","\u{1F550} ","\u{1F551} ","\u{1F552} ","\u{1F553} ","\u{1F554} ","\u{1F555} ","\u{1F556} ","\u{1F557} ","\u{1F558} ","\u{1F559} ","\u{1F55A} "]},earth:{interval:180,frames:["\u{1F30D} ","\u{1F30E} ","\u{1F30F} "]},material:{interval:17,frames:["\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581"]},moon:{interval:80,frames:["\u{1F311} ","\u{1F312} ","\u{1F313} ","\u{1F314} ","\u{1F315} ","\u{1F316} ","\u{1F317} ","\u{1F318} "]},runner:{interval:140,frames:["\u{1F6B6} ","\u{1F3C3} "]},pong:{interval:80,frames:["\u2590\u2802 \u258C","\u2590\u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802\u258C","\u2590 \u2820\u258C","\u2590 \u2840\u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590\u2820 \u258C"]},shark:{interval:120,frames:["\u2590|\\____________\u258C","\u2590_|\\___________\u258C","\u2590__|\\__________\u258C","\u2590___|\\_________\u258C","\u2590____|\\________\u258C","\u2590_____|\\_______\u258C","\u2590______|\\______\u258C","\u2590_______|\\_____\u258C","\u2590________|\\____\u258C","\u2590_________|\\___\u258C","\u2590__________|\\__\u258C","\u2590___________|\\_\u258C","\u2590____________|\\\u258C","\u2590____________/|\u258C","\u2590___________/|_\u258C","\u2590__________/|__\u258C","\u2590_________/|___\u258C","\u2590________/|____\u258C","\u2590_______/|_____\u258C","\u2590______/|______\u258C","\u2590_____/|_______\u258C","\u2590____/|________\u258C","\u2590___/|_________\u258C","\u2590__/|__________\u258C","\u2590_/|___________\u258C","\u2590/|____________\u258C"]},dqpb:{interval:100,frames:["d","q","p","b"]},weather:{interval:100,frames:["\u2600\uFE0F ","\u2600\uFE0F ","\u2600\uFE0F ","\u{1F324} ","\u26C5\uFE0F ","\u{1F325} ","\u2601\uFE0F ","\u{1F327} ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u26C8 ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u2601\uFE0F ","\u{1F325} ","\u26C5\uFE0F ","\u{1F324} ","\u2600\uFE0F ","\u2600\uFE0F "]},christmas:{interval:400,frames:["\u{1F332}","\u{1F384}"]},grenade:{interval:80,frames:["\u060C ","\u2032 "," \xB4 "," \u203E "," \u2E0C"," \u2E0A"," |"," \u204E"," \u2055"," \u0DF4 "," \u2053"," "," "," "]},point:{interval:125,frames:["\u2219\u2219\u2219","\u25CF\u2219\u2219","\u2219\u25CF\u2219","\u2219\u2219\u25CF","\u2219\u2219\u2219"]},layer:{interval:150,frames:["-","=","\u2261"]},betaWave:{interval:80,frames:["\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2","\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2","\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2","\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2","\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2","\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2","\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1"]},fingerDance:{interval:160,frames:["\u{1F918} ","\u{1F91F} ","\u{1F596} ","\u270B ","\u{1F91A} ","\u{1F446} "]},fistBump:{interval:80,frames:["\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u3000\u{1F91C}\u3000\u3000\u{1F91B}\u3000 ","\u3000\u3000\u{1F91C}\u{1F91B}\u3000\u3000 ","\u3000\u{1F91C}\u2728\u{1F91B}\u3000\u3000 ","\u{1F91C}\u3000\u2728\u3000\u{1F91B}\u3000 "]},soccerHeader:{interval:80,frames:[" \u{1F9D1}\u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F\u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} "]},mindblown:{interval:160,frames:["\u{1F610} ","\u{1F610} ","\u{1F62E} ","\u{1F62E} ","\u{1F626} ","\u{1F626} ","\u{1F627} ","\u{1F627} ","\u{1F92F} ","\u{1F4A5} ","\u2728 ","\u3000 ","\u3000 ","\u3000 "]},speaker:{interval:160,frames:["\u{1F508} ","\u{1F509} ","\u{1F50A} ","\u{1F509} "]},orangePulse:{interval:100,frames:["\u{1F538} ","\u{1F536} ","\u{1F7E0} ","\u{1F7E0} ","\u{1F536} "]},bluePulse:{interval:100,frames:["\u{1F539} ","\u{1F537} ","\u{1F535} ","\u{1F535} ","\u{1F537} "]},orangeBluePulse:{interval:100,frames:["\u{1F538} ","\u{1F536} ","\u{1F7E0} ","\u{1F7E0} ","\u{1F536} ","\u{1F539} ","\u{1F537} ","\u{1F535} ","\u{1F535} ","\u{1F537} "]},timeTravel:{interval:100,frames:["\u{1F55B} ","\u{1F55A} ","\u{1F559} ","\u{1F558} ","\u{1F557} ","\u{1F556} ","\u{1F555} ","\u{1F554} ","\u{1F553} ","\u{1F552} ","\u{1F551} ","\u{1F550} "]},aesthetic:{interval:80,frames:["\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0","\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1"]},dwarfFortress:{interval:80,frames:[" \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\xA3\xA3\xA3 "," \u263A \u2588\xA3\xA3\xA3 "," \u263A\u2588\xA3\xA3\xA3 "," \u263A\u2588\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3\xA3 "," \u263A\u2592\xA3\xA3\xA3 "," \u263A\u2592\xA3\xA3\xA3 "," \u263A\u2591\xA3\xA3\xA3 "," \u263A\u2591\xA3\xA3\xA3 "," \u263A \xA3\xA3\xA3 "," \u263A\xA3\xA3\xA3 "," \u263A\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3 "," \u263A\u2593\xA3\xA3 "," \u263A\u2592\xA3\xA3 "," \u263A\u2592\xA3\xA3 "," \u263A\u2591\xA3\xA3 "," \u263A\u2591\xA3\xA3 "," \u263A \xA3\xA3 "," \u263A\xA3\xA3 "," \u263A\xA3\xA3 "," \u263A\u2593\xA3 "," \u263A\u2593\xA3 "," \u263A\u2592\xA3 "," \u263A\u2592\xA3 "," \u263A\u2591\xA3 "," \u263A\u2591\xA3 "," \u263A \xA3 "," \u263A\xA3 "," \u263A\xA3 "," \u263A\u2593 "," \u263A\u2593 "," \u263A\u2592 "," \u263A\u2592 "," \u263A\u2591 "," \u263A\u2591 "," \u263A "," \u263A &"," \u263A \u263C&"," \u263A \u263C &"," \u263A\u263C &"," \u263A\u263C & "," \u203C & "," \u263A & "," \u203C & "," \u263A & "," \u203C & "," \u263A & ","\u203C & "," & "," & "," & \u2591 "," & \u2592 "," & \u2593 "," & \xA3 "," & \u2591\xA3 "," & \u2592\xA3 "," & \u2593\xA3 "," & \xA3\xA3 "," & \u2591\xA3\xA3 "," & \u2592\xA3\xA3 ","& \u2593\xA3\xA3 ","& \xA3\xA3\xA3 "," \u2591\xA3\xA3\xA3 "," \u2592\xA3\xA3\xA3 "," \u2593\xA3\xA3\xA3 "," \u2588\xA3\xA3\xA3 "," \u2591\u2588\xA3\xA3\xA3 "," \u2592\u2588\xA3\xA3\xA3 "," \u2593\u2588\xA3\xA3\xA3 "," \u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "]}}});var b9i=z((uQl,y9i)=>{"use strict";var Qvt=Object.assign({},h9i()),_9i=Object.keys(Qvt);Object.defineProperty(Qvt,"random",{get(){let e=Math.floor(Math.random()*_9i.length),t=_9i[e];return Qvt[t]}});y9i.exports=Qvt});var jBr=z((gQl,E9i)=>{"use strict";E9i.exports=()=>process.platform!=="win32"?!0:!!process.env.CI||!!process.env.WT_SESSION||process.env.TERM_PROGRAM==="vscode"||process.env.TERM==="xterm-256color"||process.env.TERM==="alacritty"});var v9i=z((AQl,B9i)=>{"use strict";var pae=tie(),Lpc=jBr(),Vpc={info:pae.blue("\u2139"),success:pae.green("\u2714"),warning:pae.yellow("\u26A0"),error:pae.red("\u2716")},Wpc={info:pae.blue("i"),success:pae.green("\u221A"),warning:pae.yellow("\u203C"),error:pae.red("\xD7")};B9i.exports=Lpc()?Vpc:Wpc});var S9i=z((dQl,Mvt)=>{var Ppc=function(){"use strict";function e(g,p,f,m){var y;typeof p=="object"&&(f=p.depth,m=p.prototype,y=p.filter,p=p.circular);var B=[],v=[],k=typeof Buffer<"u";typeof p>"u"&&(p=!0),typeof f>"u"&&(f=1/0);function T(O,X){if(O===null)return null;if(X==0)return O;var U,le;if(typeof O!="object")return O;if(e.__isArray(O))U=[];else if(e.__isRegExp(O))U=new RegExp(O.source,o(O)),O.lastIndex&&(U.lastIndex=O.lastIndex);else if(e.__isDate(O))U=new Date(O.getTime());else{if(k&&Buffer.isBuffer(O))return Buffer.allocUnsafe?U=Buffer.allocUnsafe(O.length):U=new Buffer(O.length),O.copy(U),U;typeof m>"u"?(le=Object.getPrototypeOf(O),U=Object.create(le)):(U=Object.create(m),le=m)}if(p){var ae=B.indexOf(O);if(ae!=-1)return v[ae];B.push(O),v.push(U)}for(var ge in O){var fe;le&&(fe=Object.getOwnPropertyDescriptor(le,ge)),!(fe&&fe.set==null)&&(U[ge]=T(O[ge],X-1))}return U}return T(g,f)}e.clonePrototype=function(p){if(p===null)return null;var f=function(){};return f.prototype=p,new f};function t(g){return Object.prototype.toString.call(g)}e.__objToStr=t;function r(g){return typeof g=="object"&&t(g)==="[object Date]"}e.__isDate=r;function s(g){return typeof g=="object"&&t(g)==="[object Array]"}e.__isArray=s;function a(g){return typeof g=="object"&&t(g)==="[object RegExp]"}e.__isRegExp=a;function o(g){var p="";return g.global&&(p+="g"),g.ignoreCase&&(p+="i"),g.multiline&&(p+="m"),p}return e.__getRegExpFlags=o,e}();typeof Mvt=="object"&&Mvt.exports&&(Mvt.exports=Ppc)});var T9i=z((pQl,w9i)=>{var Opc=S9i();w9i.exports=function(e,t){return e=e||{},Object.keys(t).forEach(function(r){typeof e[r]>"u"&&(e[r]=Opc(t[r]))}),e}});var R9i=z((fQl,N9i)=>{N9i.exports=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531],[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]]});var G9i=z((IQl,zBr)=>{"use strict";var Qpc=T9i(),QXe=R9i(),x9i={nul:0,control:0};zBr.exports=function(t){return k9i(t,x9i)};zBr.exports.config=function(e){return e=Qpc(e||{},x9i),function(r){return k9i(r,e)}};function k9i(e,t){if(typeof e!="string")return D9i(e,t);for(var r=0,s=0;s=127&&e<160?t.control:Mpc(e)?0:1+(e>=4352&&(e<=4447||e==9001||e==9002||e>=11904&&e<=42191&&e!=12351||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65135||e>=65280&&e<=65376||e>=65504&&e<=65510||e>=131072&&e<=196605||e>=196608&&e<=262141))}function Mpc(e){var t=0,r=QXe.length-1,s;if(eQXe[r][1])return!1;for(;r>=t;)if(s=Math.floor((t+r)/2),e>QXe[s][1])t=s+1;else if(e{"use strict";F9i.exports=({stream:e=process.stdout}={})=>!!(e&&e.isTTY&&process.env.TERM!=="dumb"&&!("CI"in process.env))});var V9i=z((mQl,tvr)=>{"use strict";var Hpc=xt("readline"),Ypc=tie(),L9i=i1e(),Hvt=b9i(),Yvt=v9i(),Xpc=fO(),Jpc=G9i(),Upc=Z9i(),Kpc=jBr(),{BufferListStream:jpc}=wlr(),qBr=Symbol("text"),$Br=Symbol("prefixText"),zpc=3,evr=class{constructor(){this.requests=0,this.mutedStream=new jpc,this.mutedStream.pipe(process.stdout);let t=this;this.ourEmit=function(r,s,...a){let{stdin:o}=process;if(t.requests>0||o.emit===t.ourEmit){if(r==="keypress")return;r==="data"&&s.includes(zpc)&&process.emit("SIGINT"),Reflect.apply(t.oldEmit,this,[r,s,...a])}else Reflect.apply(process.stdin.emit,this,[r,s,...a])}}start(){this.requests++,this.requests===1&&this.realStart()}stop(){if(this.requests<=0)throw new Error("`stop` called more times than `start`");this.requests--,this.requests===0&&this.realStop()}realStart(){process.platform!=="win32"&&(this.rl=Hpc.createInterface({input:process.stdin,output:this.mutedStream}),this.rl.on("SIGINT",()=>{process.listenerCount("SIGINT")===0?process.emit("SIGINT"):(this.rl.close(),process.kill(process.pid,"SIGINT"))}))}realStop(){process.platform!=="win32"&&(this.rl.close(),this.rl=void 0)}},Xvt,Jvt=class{constructor(t){Xvt||(Xvt=new evr),typeof t=="string"&&(t={text:t}),this.options={text:"",color:"cyan",stream:process.stderr,discardStdin:!0,...t},this.spinner=this.options.spinner,this.color=this.options.color,this.hideCursor=this.options.hideCursor!==!1,this.interval=this.options.interval||this.spinner.interval||100,this.stream=this.options.stream,this.id=void 0,this.isEnabled=typeof this.options.isEnabled=="boolean"?this.options.isEnabled:Upc({stream:this.stream}),this.isSilent=typeof this.options.isSilent=="boolean"?this.options.isSilent:!1,this.text=this.options.text,this.prefixText=this.options.prefixText,this.linesToClear=0,this.indent=this.options.indent,this.discardStdin=this.options.discardStdin,this.isDiscardingStdin=!1}get indent(){return this._indent}set indent(t=0){if(!(t>=0&&Number.isInteger(t)))throw new Error("The `indent` option must be an integer from 0 and up");this._indent=t}_updateInterval(t){t!==void 0&&(this.interval=t)}get spinner(){return this._spinner}set spinner(t){if(this.frameIndex=0,typeof t=="object"){if(t.frames===void 0)throw new Error("The given spinner must have a `frames` property");this._spinner=t}else if(!Kpc())this._spinner=Hvt.line;else if(t===void 0)this._spinner=Hvt.dots;else if(t!=="default"&&Hvt[t])this._spinner=Hvt[t];else throw new Error(`There is no built-in spinner named '${t}'. See https://github.com/sindresorhus/cli-spinners/blob/main/spinners.json for a full list.`);this._updateInterval(this._spinner.interval)}get text(){return this[qBr]}set text(t){this[qBr]=t,this.updateLineCount()}get prefixText(){return this[$Br]}set prefixText(t){this[$Br]=t,this.updateLineCount()}get isSpinning(){return this.id!==void 0}getFullPrefixText(t=this[$Br],r=" "){return typeof t=="string"?t+r:typeof t=="function"?t()+r:""}updateLineCount(){let t=this.stream.columns||80,r=this.getFullPrefixText(this.prefixText,"-");this.lineCount=0;for(let s of Xpc(r+"--"+this[qBr]).split(` +`))this.lineCount+=Math.max(1,Math.ceil(Jpc(s)/t))}get isEnabled(){return this._isEnabled&&!this.isSilent}set isEnabled(t){if(typeof t!="boolean")throw new TypeError("The `isEnabled` option must be a boolean");this._isEnabled=t}get isSilent(){return this._isSilent}set isSilent(t){if(typeof t!="boolean")throw new TypeError("The `isSilent` option must be a boolean");this._isSilent=t}frame(){let{frames:t}=this.spinner,r=t[this.frameIndex];this.color&&(r=Ypc[this.color](r)),this.frameIndex=++this.frameIndex%t.length;let s=typeof this.prefixText=="string"&&this.prefixText!==""?this.prefixText+" ":"",a=typeof this.text=="string"?" "+this.text:"";return s+r+a}clear(){if(!this.isEnabled||!this.stream.isTTY)return this;for(let t=0;t0&&this.stream.moveCursor(0,-1),this.stream.clearLine(),this.stream.cursorTo(this.indent);return this.linesToClear=0,this}render(){return this.isSilent?this:(this.clear(),this.stream.write(this.frame()),this.linesToClear=this.lineCount,this)}start(t){return t&&(this.text=t),this.isSilent?this:this.isEnabled?this.isSpinning?this:(this.hideCursor&&L9i.hide(this.stream),this.discardStdin&&process.stdin.isTTY&&(this.isDiscardingStdin=!0,Xvt.start()),this.render(),this.id=setInterval(this.render.bind(this),this.interval),this):(this.text&&this.stream.write(`- ${this.text} +`),this)}stop(){return this.isEnabled?(clearInterval(this.id),this.id=void 0,this.frameIndex=0,this.clear(),this.hideCursor&&L9i.show(this.stream),this.discardStdin&&process.stdin.isTTY&&this.isDiscardingStdin&&(Xvt.stop(),this.isDiscardingStdin=!1),this):this}succeed(t){return this.stopAndPersist({symbol:Yvt.success,text:t})}fail(t){return this.stopAndPersist({symbol:Yvt.error,text:t})}warn(t){return this.stopAndPersist({symbol:Yvt.warning,text:t})}info(t){return this.stopAndPersist({symbol:Yvt.info,text:t})}stopAndPersist(t={}){if(this.isSilent)return this;let r=t.prefixText||this.prefixText,s=t.text||this.text,a=typeof s=="string"?" "+s:"";return this.stop(),this.stream.write(`${this.getFullPrefixText(r," ")}${t.symbol||" "}${a} +`),this}},qpc=function(e){return new Jvt(e)};tvr.exports=qpc;tvr.exports.promise=(e,t)=>{if(typeof e.then!="function")throw new TypeError("Parameter `action` must be a Promise");let r=new Jvt(t);return r.start(),(async()=>{try{await e,r.succeed()}catch{r.fail()}})(),r}});var P9i=z(f3=>{"use strict";var $pc=f3&&f3.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),efc=f3&&f3.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),tfc=f3&&f3.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var s=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(s[s.length]=a);return s},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var s=e(t),a=0;a{let o=r,g=t;if(e.allowPackageManagerOverride&&a.packageManager){if(o=W9i[a.packageManager],!o)throw new MXe(a.packageManager);g=a.packageManager}let p=[],f={shell:!0,cwd:ofc.join(s,a.workingDirectory||"")};a.hideOutput?f.stdio=a.quiet?["ignore","ignore","pipe"]:"pipe":f.stdio=a.quiet?["ignore","ignore","inherit"]:"inherit";let m=[];return a.packageName?(a.command==="install"&&m.push(o.commands.installPackage),m.push(a.packageName)):a.command==="install"&&o.commands.installAll&&m.push(o.commands.installAll),a.allowScripts||(g==="yarn"?f.env={...process.env,npm_config_ignore_scripts:"true",YARN_ENABLE_SCRIPTS:"false"}:m.push("--ignore-scripts")),e.registry&&m.push(`--registry="${e.registry}"`),e.force&&m.push("--force"),new afc.Observable(y=>{let B=(0,sfc.default)({text:`Installing packages (${g})...`,discardStdin:process.platform!="win32"}).start(),v=(0,ifc.spawn)(g,m,f).on("close",k=>{k===0?(B.succeed("Packages installed successfully."),B.stop(),y.next(),y.complete()):(a.hideOutput&&p.forEach(({stream:T,data:O})=>T.write(O)),B.fail("Package install failed, see above."),y.error(new cfc.UnsuccessfulWorkflowExecution))});a.hideOutput&&(v.stdout?.on("data",k=>p.push({stream:process.stdout,data:k})),v.stderr?.on("data",k=>p.push({stream:process.stderr,data:k})))})}}});var O9i=z(Vq=>{"use strict";var ufc=Vq&&Vq.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),gfc=Vq&&Vq.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Afc=Vq&&Vq.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var s=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(s[s.length]=a);return s},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var s=e(t),a=0;a{let a=r.authorName,o=r.authorEmail,g=(m,y)=>{let B="ignore",v=y?"ignore":process.stderr,k={stdio:[process.stdin,B,v],shell:!0,cwd:ffc.join(t,r.workingDirectory||""),env:{...process.env,...a?{GIT_AUTHOR_NAME:a,GIT_COMMITTER_NAME:a}:{},...o?{GIT_AUTHOR_EMAIL:o,GIT_COMMITTER_EMAIL:o}:{}}};return new Promise((T,O)=>{(0,pfc.spawn)("git",m,k).on("close",X=>{X===0?T():O(X)})})};if(!await g(["--version"]).then(()=>!0,()=>!1))return;if(await g(["rev-parse","--is-inside-work-tree"],!0).then(()=>!0,()=>!1)){s.logger.info(dfc.tags.oneLine` Directory is already under version control. Skipping initialization of git. - `);return}try{if(await g(["init"]),await g(["add","."]),r.commit){let m=r.message||"initial commit";await g(["commit",`-m "${m}"`])}s.logger.info("Successfully initialized git.")}catch{}}}});var F9i=z(jBr=>{"use strict";Object.defineProperty(jBr,"__esModule",{value:!0});jBr.default=tfc;function tfc(){return(e,t)=>{if(!e?.name)throw new Error("RunSchematicTask requires an options object with a non-empty name property.");let r=t.engine.workflow,s=e.collection||t.schematic.collection.description.name;if(!r)throw new Error("Need Workflow to support executing schematics as post tasks.");return r.execute({collection:s,schematic:e.name,options:e.options,allowPrivate:s==t.schematic.collection.description.name})}}});var Z9i=z(FK=>{"use strict";var rfc=FK&&FK.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),nfc=FK&&FK.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),zBr=FK&&FK.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var s=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(s[s.length]=a);return s},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var s=e(t),a=0;aPromise.resolve().then(()=>zBr(k9i())).then(r=>r.default(t))};static RepositoryInitializer={name:sfc.RepositoryInitializerName,create:t=>Promise.resolve().then(()=>zBr(G9i())).then(r=>r.default(t))};static RunSchematic={name:ofc.RunSchematicName,create:()=>Promise.resolve().then(()=>zBr(F9i())).then(t=>t.default())}};FK.BuiltinTaskExecutor=qBr});var Jvt=z(dNe=>{"use strict";Object.defineProperty(dNe,"__esModule",{value:!0});dNe.NodeModulesEngineHost=dNe.NodePackageDoesNotSupportSchematics=void 0;var afc=a2(),ANe=Dt("path"),cfc=Dvt(),Hvt=Fvt(),lfc=LBr(),Xvt=class extends afc.BaseException{constructor(t){super(`Package ${JSON.stringify(t)} was found but does not support schematics.`)}};dNe.NodePackageDoesNotSupportSchematics=Xvt;var $Br=class extends Hvt.FileSystemEngineHostBase{paths;constructor(t){super(),this.paths=t}resolve(t,r,s=new Set){if(r){if(s.has(r))throw s.add(r),new Error("Circular schematic reference detected: "+JSON.stringify(Array.from(s)));s.add(r)}let a=r?(0,ANe.dirname)(r):process.cwd(),o;t.startsWith(".")&&(t=(0,ANe.resolve)(a,t));let g={paths:r?[(0,ANe.dirname)(r),...this.paths||[]]:this.paths};try{let p=Dt.resolve((0,ANe.join)(t,"package.json"),g),{schematics:f}=Dt(p);if(!f||typeof f!="string")throw new Xvt(t);if(f.startsWith(".")){let m=(0,ANe.dirname)(p);o=(0,ANe.resolve)(m,f)}else o=this.resolve(f,p,s)}catch(p){if(p.code!=="MODULE_NOT_FOUND")throw p}if(!o)try{o=Dt.resolve(t,g)}catch(p){if(p.code!=="MODULE_NOT_FOUND")throw p}if(!o)throw new Hvt.CollectionCannotBeResolvedException(t);return o}_resolveCollectionPath(t,r){let s=this.resolve(t,r);return(0,lfc.readJsonFile)(s),s}_resolveReferenceString(t,r,s){let a=new cfc.ExportStringRef(t,r);return a.ref?{ref:a.ref,path:a.module}:null}_transformCollectionDescription(t,r){if(!r.schematics||typeof r.schematics!="object")throw new Hvt.CollectionMissingSchematicsMapException(t);return{...r,name:t}}_transformSchematicDescription(t,r,s){if(!s.factoryFn||!s.path||!s.description)throw new Hvt.SchematicMissingFieldsException(t);return s}};dNe.NodeModulesEngineHost=$Br});var V9i=z(Uvt=>{"use strict";Object.defineProperty(Uvt,"__esModule",{value:!0});Uvt.partition=void 0;var ufc=Zbr(),L9i=Eq();function gfc(e,t){return function(r){return[L9i.filter(e,t)(r),L9i.filter(ufc.not(e,t))(r)]}}Uvt.partition=gfc});var W9i=z(oae=>{"use strict";var Afc=oae&&oae.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},dfc=oae&&oae.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";Object.defineProperty(Gi,"__esModule",{value:!0});Gi.mergeAll=Gi.merge=Gi.max=Gi.materialize=Gi.mapTo=Gi.map=Gi.last=Gi.isEmpty=Gi.ignoreElements=Gi.groupBy=Gi.first=Gi.findIndex=Gi.find=Gi.finalize=Gi.filter=Gi.expand=Gi.exhaustMap=Gi.exhaustAll=Gi.exhaust=Gi.every=Gi.endWith=Gi.elementAt=Gi.distinctUntilKeyChanged=Gi.distinctUntilChanged=Gi.distinct=Gi.dematerialize=Gi.delayWhen=Gi.delay=Gi.defaultIfEmpty=Gi.debounceTime=Gi.debounce=Gi.count=Gi.connect=Gi.concatWith=Gi.concatMapTo=Gi.concatMap=Gi.concatAll=Gi.concat=Gi.combineLatestWith=Gi.combineLatest=Gi.combineLatestAll=Gi.combineAll=Gi.catchError=Gi.bufferWhen=Gi.bufferToggle=Gi.bufferTime=Gi.bufferCount=Gi.buffer=Gi.auditTime=Gi.audit=void 0;Gi.timeInterval=Gi.throwIfEmpty=Gi.throttleTime=Gi.throttle=Gi.tap=Gi.takeWhile=Gi.takeUntil=Gi.takeLast=Gi.take=Gi.switchScan=Gi.switchMapTo=Gi.switchMap=Gi.switchAll=Gi.subscribeOn=Gi.startWith=Gi.skipWhile=Gi.skipUntil=Gi.skipLast=Gi.skip=Gi.single=Gi.shareReplay=Gi.share=Gi.sequenceEqual=Gi.scan=Gi.sampleTime=Gi.sample=Gi.refCount=Gi.retryWhen=Gi.retry=Gi.repeatWhen=Gi.repeat=Gi.reduce=Gi.raceWith=Gi.race=Gi.publishReplay=Gi.publishLast=Gi.publishBehavior=Gi.publish=Gi.pluck=Gi.partition=Gi.pairwise=Gi.onErrorResumeNext=Gi.observeOn=Gi.multicast=Gi.min=Gi.mergeWith=Gi.mergeScan=Gi.mergeMapTo=Gi.mergeMap=Gi.flatMap=void 0;Gi.zipWith=Gi.zipAll=Gi.zip=Gi.withLatestFrom=Gi.windowWhen=Gi.windowToggle=Gi.windowTime=Gi.windowCount=Gi.window=Gi.toArray=Gi.timestamp=Gi.timeoutWith=Gi.timeout=void 0;var Cfc=UEt();Object.defineProperty(Gi,"audit",{enumerable:!0,get:function(){return Cfc.audit}});var mfc=Vbr();Object.defineProperty(Gi,"auditTime",{enumerable:!0,get:function(){return mfc.auditTime}});var hfc=Wbr();Object.defineProperty(Gi,"buffer",{enumerable:!0,get:function(){return hfc.buffer}});var _fc=Obr();Object.defineProperty(Gi,"bufferCount",{enumerable:!0,get:function(){return _fc.bufferCount}});var yfc=Mbr();Object.defineProperty(Gi,"bufferTime",{enumerable:!0,get:function(){return yfc.bufferTime}});var bfc=Ybr();Object.defineProperty(Gi,"bufferToggle",{enumerable:!0,get:function(){return bfc.bufferToggle}});var Efc=Hbr();Object.defineProperty(Gi,"bufferWhen",{enumerable:!0,get:function(){return Efc.bufferWhen}});var Bfc=Xbr();Object.defineProperty(Gi,"catchError",{enumerable:!0,get:function(){return Bfc.catchError}});var vfc=Kbr();Object.defineProperty(Gi,"combineAll",{enumerable:!0,get:function(){return vfc.combineAll}});var Sfc=s1t();Object.defineProperty(Gi,"combineLatestAll",{enumerable:!0,get:function(){return Sfc.combineLatestAll}});var wfc=jbr();Object.defineProperty(Gi,"combineLatest",{enumerable:!0,get:function(){return wfc.combineLatest}});var Tfc=zbr();Object.defineProperty(Gi,"combineLatestWith",{enumerable:!0,get:function(){return Tfc.combineLatestWith}});var Nfc=$br();Object.defineProperty(Gi,"concat",{enumerable:!0,get:function(){return Nfc.concat}});var Rfc=aXe();Object.defineProperty(Gi,"concatAll",{enumerable:!0,get:function(){return Rfc.concatAll}});var Dfc=c1t();Object.defineProperty(Gi,"concatMap",{enumerable:!0,get:function(){return Dfc.concatMap}});var xfc=qbr();Object.defineProperty(Gi,"concatMapTo",{enumerable:!0,get:function(){return xfc.concatMapTo}});var kfc=eEr();Object.defineProperty(Gi,"concatWith",{enumerable:!0,get:function(){return kfc.concatWith}});var Gfc=uXe();Object.defineProperty(Gi,"connect",{enumerable:!0,get:function(){return Gfc.connect}});var Ffc=tEr();Object.defineProperty(Gi,"count",{enumerable:!0,get:function(){return Ffc.count}});var Zfc=rEr();Object.defineProperty(Gi,"debounce",{enumerable:!0,get:function(){return Zfc.debounce}});var Lfc=nEr();Object.defineProperty(Gi,"debounceTime",{enumerable:!0,get:function(){return Lfc.debounceTime}});var Vfc=RTe();Object.defineProperty(Gi,"defaultIfEmpty",{enumerable:!0,get:function(){return Vfc.defaultIfEmpty}});var Wfc=iEr();Object.defineProperty(Gi,"delay",{enumerable:!0,get:function(){return Wfc.delay}});var Pfc=b1t();Object.defineProperty(Gi,"delayWhen",{enumerable:!0,get:function(){return Pfc.delayWhen}});var Ofc=sEr();Object.defineProperty(Gi,"dematerialize",{enumerable:!0,get:function(){return Ofc.dematerialize}});var Mfc=oEr();Object.defineProperty(Gi,"distinct",{enumerable:!0,get:function(){return Mfc.distinct}});var Qfc=w1t();Object.defineProperty(Gi,"distinctUntilChanged",{enumerable:!0,get:function(){return Qfc.distinctUntilChanged}});var Yfc=aEr();Object.defineProperty(Gi,"distinctUntilKeyChanged",{enumerable:!0,get:function(){return Yfc.distinctUntilKeyChanged}});var Hfc=cEr();Object.defineProperty(Gi,"elementAt",{enumerable:!0,get:function(){return Hfc.elementAt}});var Xfc=lEr();Object.defineProperty(Gi,"endWith",{enumerable:!0,get:function(){return Xfc.endWith}});var Jfc=uEr();Object.defineProperty(Gi,"every",{enumerable:!0,get:function(){return Jfc.every}});var Ufc=gEr();Object.defineProperty(Gi,"exhaust",{enumerable:!0,get:function(){return Ufc.exhaust}});var Kfc=F1t();Object.defineProperty(Gi,"exhaustAll",{enumerable:!0,get:function(){return Kfc.exhaustAll}});var jfc=k1t();Object.defineProperty(Gi,"exhaustMap",{enumerable:!0,get:function(){return jfc.exhaustMap}});var zfc=AEr();Object.defineProperty(Gi,"expand",{enumerable:!0,get:function(){return zfc.expand}});var qfc=Eq();Object.defineProperty(Gi,"filter",{enumerable:!0,get:function(){return qfc.filter}});var $fc=dEr();Object.defineProperty(Gi,"finalize",{enumerable:!0,get:function(){return $fc.finalize}});var eIc=W1t();Object.defineProperty(Gi,"find",{enumerable:!0,get:function(){return eIc.find}});var tIc=pEr();Object.defineProperty(Gi,"findIndex",{enumerable:!0,get:function(){return tIc.findIndex}});var rIc=fEr();Object.defineProperty(Gi,"first",{enumerable:!0,get:function(){return rIc.first}});var nIc=IEr();Object.defineProperty(Gi,"groupBy",{enumerable:!0,get:function(){return nIc.groupBy}});var iIc=m1t();Object.defineProperty(Gi,"ignoreElements",{enumerable:!0,get:function(){return iIc.ignoreElements}});var sIc=CEr();Object.defineProperty(Gi,"isEmpty",{enumerable:!0,get:function(){return sIc.isEmpty}});var oIc=mEr();Object.defineProperty(Gi,"last",{enumerable:!0,get:function(){return oIc.last}});var aIc=bq();Object.defineProperty(Gi,"map",{enumerable:!0,get:function(){return aIc.map}});var cIc=_1t();Object.defineProperty(Gi,"mapTo",{enumerable:!0,get:function(){return cIc.mapTo}});var lIc=_Er();Object.defineProperty(Gi,"materialize",{enumerable:!0,get:function(){return lIc.materialize}});var uIc=yEr();Object.defineProperty(Gi,"max",{enumerable:!0,get:function(){return uIc.max}});var gIc=vEr();Object.defineProperty(Gi,"merge",{enumerable:!0,get:function(){return gIc.merge}});var AIc=ETe();Object.defineProperty(Gi,"mergeAll",{enumerable:!0,get:function(){return AIc.mergeAll}});var dIc=bEr();Object.defineProperty(Gi,"flatMap",{enumerable:!0,get:function(){return dIc.flatMap}});var pIc=vK();Object.defineProperty(Gi,"mergeMap",{enumerable:!0,get:function(){return pIc.mergeMap}});var fIc=EEr();Object.defineProperty(Gi,"mergeMapTo",{enumerable:!0,get:function(){return fIc.mergeMapTo}});var IIc=BEr();Object.defineProperty(Gi,"mergeScan",{enumerable:!0,get:function(){return IIc.mergeScan}});var CIc=SEr();Object.defineProperty(Gi,"mergeWith",{enumerable:!0,get:function(){return CIc.mergeWith}});var mIc=wEr();Object.defineProperty(Gi,"min",{enumerable:!0,get:function(){return mIc.min}});var hIc=gXe();Object.defineProperty(Gi,"multicast",{enumerable:!0,get:function(){return hIc.multicast}});var _Ic=_Te();Object.defineProperty(Gi,"observeOn",{enumerable:!0,get:function(){return _Ic.observeOn}});var yIc=TEr();Object.defineProperty(Gi,"onErrorResumeNext",{enumerable:!0,get:function(){return yIc.onErrorResumeNext}});var bIc=NEr();Object.defineProperty(Gi,"pairwise",{enumerable:!0,get:function(){return bIc.pairwise}});var EIc=V9i();Object.defineProperty(Gi,"partition",{enumerable:!0,get:function(){return EIc.partition}});var BIc=REr();Object.defineProperty(Gi,"pluck",{enumerable:!0,get:function(){return BIc.pluck}});var vIc=DEr();Object.defineProperty(Gi,"publish",{enumerable:!0,get:function(){return vIc.publish}});var SIc=xEr();Object.defineProperty(Gi,"publishBehavior",{enumerable:!0,get:function(){return SIc.publishBehavior}});var wIc=kEr();Object.defineProperty(Gi,"publishLast",{enumerable:!0,get:function(){return wIc.publishLast}});var TIc=GEr();Object.defineProperty(Gi,"publishReplay",{enumerable:!0,get:function(){return TIc.publishReplay}});var NIc=W9i();Object.defineProperty(Gi,"race",{enumerable:!0,get:function(){return NIc.race}});var RIc=s2t();Object.defineProperty(Gi,"raceWith",{enumerable:!0,get:function(){return RIc.raceWith}});var DIc=XIe();Object.defineProperty(Gi,"reduce",{enumerable:!0,get:function(){return DIc.reduce}});var xIc=FEr();Object.defineProperty(Gi,"repeat",{enumerable:!0,get:function(){return xIc.repeat}});var kIc=ZEr();Object.defineProperty(Gi,"repeatWhen",{enumerable:!0,get:function(){return kIc.repeatWhen}});var GIc=LEr();Object.defineProperty(Gi,"retry",{enumerable:!0,get:function(){return GIc.retry}});var FIc=VEr();Object.defineProperty(Gi,"retryWhen",{enumerable:!0,get:function(){return FIc.retryWhen}});var ZIc=Dbt();Object.defineProperty(Gi,"refCount",{enumerable:!0,get:function(){return ZIc.refCount}});var LIc=g2t();Object.defineProperty(Gi,"sample",{enumerable:!0,get:function(){return LIc.sample}});var VIc=WEr();Object.defineProperty(Gi,"sampleTime",{enumerable:!0,get:function(){return VIc.sampleTime}});var WIc=PEr();Object.defineProperty(Gi,"scan",{enumerable:!0,get:function(){return WIc.scan}});var PIc=OEr();Object.defineProperty(Gi,"sequenceEqual",{enumerable:!0,get:function(){return PIc.sequenceEqual}});var OIc=f2t();Object.defineProperty(Gi,"share",{enumerable:!0,get:function(){return OIc.share}});var MIc=QEr();Object.defineProperty(Gi,"shareReplay",{enumerable:!0,get:function(){return MIc.shareReplay}});var QIc=YEr();Object.defineProperty(Gi,"single",{enumerable:!0,get:function(){return QIc.single}});var YIc=HEr();Object.defineProperty(Gi,"skip",{enumerable:!0,get:function(){return YIc.skip}});var HIc=XEr();Object.defineProperty(Gi,"skipLast",{enumerable:!0,get:function(){return HIc.skipLast}});var XIc=JEr();Object.defineProperty(Gi,"skipUntil",{enumerable:!0,get:function(){return XIc.skipUntil}});var JIc=UEr();Object.defineProperty(Gi,"skipWhile",{enumerable:!0,get:function(){return JIc.skipWhile}});var UIc=KEr();Object.defineProperty(Gi,"startWith",{enumerable:!0,get:function(){return UIc.startWith}});var KIc=yTe();Object.defineProperty(Gi,"subscribeOn",{enumerable:!0,get:function(){return KIc.subscribeOn}});var jIc=jEr();Object.defineProperty(Gi,"switchAll",{enumerable:!0,get:function(){return jIc.switchAll}});var zIc=FTe();Object.defineProperty(Gi,"switchMap",{enumerable:!0,get:function(){return zIc.switchMap}});var qIc=zEr();Object.defineProperty(Gi,"switchMapTo",{enumerable:!0,get:function(){return qIc.switchMapTo}});var $Ic=qEr();Object.defineProperty(Gi,"switchScan",{enumerable:!0,get:function(){return $Ic.switchScan}});var eCc=DTe();Object.defineProperty(Gi,"take",{enumerable:!0,get:function(){return eCc.take}});var tCc=Y1t();Object.defineProperty(Gi,"takeLast",{enumerable:!0,get:function(){return tCc.takeLast}});var rCc=$Er();Object.defineProperty(Gi,"takeUntil",{enumerable:!0,get:function(){return rCc.takeUntil}});var nCc=e1r();Object.defineProperty(Gi,"takeWhile",{enumerable:!0,get:function(){return nCc.takeWhile}});var iCc=t1r();Object.defineProperty(Gi,"tap",{enumerable:!0,get:function(){return iCc.tap}});var sCc=D2t();Object.defineProperty(Gi,"throttle",{enumerable:!0,get:function(){return sCc.throttle}});var oCc=r1r();Object.defineProperty(Gi,"throttleTime",{enumerable:!0,get:function(){return oCc.throttleTime}});var aCc=xTe();Object.defineProperty(Gi,"throwIfEmpty",{enumerable:!0,get:function(){return aCc.throwIfEmpty}});var cCc=n1r();Object.defineProperty(Gi,"timeInterval",{enumerable:!0,get:function(){return cCc.timeInterval}});var lCc=oXe();Object.defineProperty(Gi,"timeout",{enumerable:!0,get:function(){return lCc.timeout}});var uCc=i1r();Object.defineProperty(Gi,"timeoutWith",{enumerable:!0,get:function(){return uCc.timeoutWith}});var gCc=s1r();Object.defineProperty(Gi,"timestamp",{enumerable:!0,get:function(){return gCc.timestamp}});var ACc=r1t();Object.defineProperty(Gi,"toArray",{enumerable:!0,get:function(){return ACc.toArray}});var dCc=o1r();Object.defineProperty(Gi,"window",{enumerable:!0,get:function(){return dCc.window}});var pCc=a1r();Object.defineProperty(Gi,"windowCount",{enumerable:!0,get:function(){return pCc.windowCount}});var fCc=c1r();Object.defineProperty(Gi,"windowTime",{enumerable:!0,get:function(){return fCc.windowTime}});var ICc=u1r();Object.defineProperty(Gi,"windowToggle",{enumerable:!0,get:function(){return ICc.windowToggle}});var CCc=g1r();Object.defineProperty(Gi,"windowWhen",{enumerable:!0,get:function(){return CCc.windowWhen}});var mCc=A1r();Object.defineProperty(Gi,"withLatestFrom",{enumerable:!0,get:function(){return mCc.withLatestFrom}});var hCc=p1r();Object.defineProperty(Gi,"zip",{enumerable:!0,get:function(){return hCc.zip}});var _Cc=d1r();Object.defineProperty(Gi,"zipAll",{enumerable:!0,get:function(){return _Cc.zipAll}});var yCc=f1r();Object.defineProperty(Gi,"zipWith",{enumerable:!0,get:function(){return yCc.zipWith}})});var tvr=z(MXe=>{"use strict";Object.defineProperty(MXe,"__esModule",{value:!0});MXe.InvalidInputOptions=void 0;MXe.validateOptionsWithSchema=bCc;var M9i=a2(),O9i=Eb(),evr=P9i(),Kvt=class extends M9i.schema.SchemaValidationException{constructor(t,r){super(r,`Schematic input does not validate against the Schema: ${JSON.stringify(t)} + `);return}try{if(await g(["init"]),await g(["add","."]),r.commit){let m=r.message||"initial commit";await g(["commit",`-m "${m}"`])}s.logger.info("Successfully initialized git.")}catch{}}}});var Q9i=z(rvr=>{"use strict";Object.defineProperty(rvr,"__esModule",{value:!0});rvr.default=Cfc;function Cfc(){return(e,t)=>{if(!e?.name)throw new Error("RunSchematicTask requires an options object with a non-empty name property.");let r=t.engine.workflow,s=e.collection||t.schematic.collection.description.name;if(!r)throw new Error("Need Workflow to support executing schematics as post tasks.");return r.execute({collection:s,schematic:e.name,options:e.options,allowPrivate:s==t.schematic.collection.description.name})}}});var M9i=z(OK=>{"use strict";var mfc=OK&&OK.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),hfc=OK&&OK.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),nvr=OK&&OK.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var s=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(s[s.length]=a);return s},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var s=e(t),a=0;aPromise.resolve().then(()=>nvr(P9i())).then(r=>r.default(t))};static RepositoryInitializer={name:yfc.RepositoryInitializerName,create:t=>Promise.resolve().then(()=>nvr(O9i())).then(r=>r.default(t))};static RunSchematic={name:bfc.RunSchematicName,create:()=>Promise.resolve().then(()=>nvr(Q9i())).then(t=>t.default())}};OK.BuiltinTaskExecutor=ivr});var jvt=z(fNe=>{"use strict";Object.defineProperty(fNe,"__esModule",{value:!0});fNe.NodeModulesEngineHost=fNe.NodePackageDoesNotSupportSchematics=void 0;var Efc=c2(),pNe=xt("path"),Bfc=Gvt(),Uvt=Vvt(),vfc=MBr(),Kvt=class extends Efc.BaseException{constructor(t){super(`Package ${JSON.stringify(t)} was found but does not support schematics.`)}};fNe.NodePackageDoesNotSupportSchematics=Kvt;var svr=class extends Uvt.FileSystemEngineHostBase{paths;constructor(t){super(),this.paths=t}resolve(t,r,s=new Set){if(r){if(s.has(r))throw s.add(r),new Error("Circular schematic reference detected: "+JSON.stringify(Array.from(s)));s.add(r)}let a=r?(0,pNe.dirname)(r):process.cwd(),o;t.startsWith(".")&&(t=(0,pNe.resolve)(a,t));let g={paths:r?[(0,pNe.dirname)(r),...this.paths||[]]:this.paths};try{let p=xt.resolve((0,pNe.join)(t,"package.json"),g),{schematics:f}=xt(p);if(!f||typeof f!="string")throw new Kvt(t);if(f.startsWith(".")){let m=(0,pNe.dirname)(p);o=(0,pNe.resolve)(m,f)}else o=this.resolve(f,p,s)}catch(p){if(p.code!=="MODULE_NOT_FOUND")throw p}if(!o)try{o=xt.resolve(t,g)}catch(p){if(p.code!=="MODULE_NOT_FOUND")throw p}if(!o)throw new Uvt.CollectionCannotBeResolvedException(t);return o}_resolveCollectionPath(t,r){let s=this.resolve(t,r);return(0,vfc.readJsonFile)(s),s}_resolveReferenceString(t,r,s){let a=new Bfc.ExportStringRef(t,r);return a.ref?{ref:a.ref,path:a.module}:null}_transformCollectionDescription(t,r){if(!r.schematics||typeof r.schematics!="object")throw new Uvt.CollectionMissingSchematicsMapException(t);return{...r,name:t}}_transformSchematicDescription(t,r,s){if(!s.factoryFn||!s.path||!s.description)throw new Uvt.SchematicMissingFieldsException(t);return s}};fNe.NodeModulesEngineHost=svr});var Y9i=z(zvt=>{"use strict";Object.defineProperty(zvt,"__esModule",{value:!0});zvt.partition=void 0;var Sfc=Qbr(),H9i=vq();function wfc(e,t){return function(r){return[H9i.filter(e,t)(r),H9i.filter(Sfc.not(e,t))(r)]}}zvt.partition=wfc});var X9i=z(fae=>{"use strict";var Tfc=fae&&fae.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var s=r.call(e),a,o=[],g;try{for(;(t===void 0||t-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(p){g={error:p}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(g)throw g.error}}return o},Nfc=fae&&fae.__spreadArray||function(e,t){for(var r=0,s=t.length,a=e.length;r{"use strict";Object.defineProperty(Gi,"__esModule",{value:!0});Gi.mergeAll=Gi.merge=Gi.max=Gi.materialize=Gi.mapTo=Gi.map=Gi.last=Gi.isEmpty=Gi.ignoreElements=Gi.groupBy=Gi.first=Gi.findIndex=Gi.find=Gi.finalize=Gi.filter=Gi.expand=Gi.exhaustMap=Gi.exhaustAll=Gi.exhaust=Gi.every=Gi.endWith=Gi.elementAt=Gi.distinctUntilKeyChanged=Gi.distinctUntilChanged=Gi.distinct=Gi.dematerialize=Gi.delayWhen=Gi.delay=Gi.defaultIfEmpty=Gi.debounceTime=Gi.debounce=Gi.count=Gi.connect=Gi.concatWith=Gi.concatMapTo=Gi.concatMap=Gi.concatAll=Gi.concat=Gi.combineLatestWith=Gi.combineLatest=Gi.combineLatestAll=Gi.combineAll=Gi.catchError=Gi.bufferWhen=Gi.bufferToggle=Gi.bufferTime=Gi.bufferCount=Gi.buffer=Gi.auditTime=Gi.audit=void 0;Gi.timeInterval=Gi.throwIfEmpty=Gi.throttleTime=Gi.throttle=Gi.tap=Gi.takeWhile=Gi.takeUntil=Gi.takeLast=Gi.take=Gi.switchScan=Gi.switchMapTo=Gi.switchMap=Gi.switchAll=Gi.subscribeOn=Gi.startWith=Gi.skipWhile=Gi.skipUntil=Gi.skipLast=Gi.skip=Gi.single=Gi.shareReplay=Gi.share=Gi.sequenceEqual=Gi.scan=Gi.sampleTime=Gi.sample=Gi.refCount=Gi.retryWhen=Gi.retry=Gi.repeatWhen=Gi.repeat=Gi.reduce=Gi.raceWith=Gi.race=Gi.publishReplay=Gi.publishLast=Gi.publishBehavior=Gi.publish=Gi.pluck=Gi.partition=Gi.pairwise=Gi.onErrorResumeNext=Gi.observeOn=Gi.multicast=Gi.min=Gi.mergeWith=Gi.mergeScan=Gi.mergeMapTo=Gi.mergeMap=Gi.flatMap=void 0;Gi.zipWith=Gi.zipAll=Gi.zip=Gi.withLatestFrom=Gi.windowWhen=Gi.windowToggle=Gi.windowTime=Gi.windowCount=Gi.window=Gi.toArray=Gi.timestamp=Gi.timeoutWith=Gi.timeout=void 0;var kfc=zEt();Object.defineProperty(Gi,"audit",{enumerable:!0,get:function(){return kfc.audit}});var Gfc=Hbr();Object.defineProperty(Gi,"auditTime",{enumerable:!0,get:function(){return Gfc.auditTime}});var Ffc=Ybr();Object.defineProperty(Gi,"buffer",{enumerable:!0,get:function(){return Ffc.buffer}});var Zfc=Jbr();Object.defineProperty(Gi,"bufferCount",{enumerable:!0,get:function(){return Zfc.bufferCount}});var Lfc=Ubr();Object.defineProperty(Gi,"bufferTime",{enumerable:!0,get:function(){return Lfc.bufferTime}});var Vfc=jbr();Object.defineProperty(Gi,"bufferToggle",{enumerable:!0,get:function(){return Vfc.bufferToggle}});var Wfc=zbr();Object.defineProperty(Gi,"bufferWhen",{enumerable:!0,get:function(){return Wfc.bufferWhen}});var Pfc=qbr();Object.defineProperty(Gi,"catchError",{enumerable:!0,get:function(){return Pfc.catchError}});var Ofc=tEr();Object.defineProperty(Gi,"combineAll",{enumerable:!0,get:function(){return Ofc.combineAll}});var Qfc=c1t();Object.defineProperty(Gi,"combineLatestAll",{enumerable:!0,get:function(){return Qfc.combineLatestAll}});var Mfc=rEr();Object.defineProperty(Gi,"combineLatest",{enumerable:!0,get:function(){return Mfc.combineLatest}});var Hfc=nEr();Object.defineProperty(Gi,"combineLatestWith",{enumerable:!0,get:function(){return Hfc.combineLatestWith}});var Yfc=sEr();Object.defineProperty(Gi,"concat",{enumerable:!0,get:function(){return Yfc.concat}});var Xfc=lXe();Object.defineProperty(Gi,"concatAll",{enumerable:!0,get:function(){return Xfc.concatAll}});var Jfc=g1t();Object.defineProperty(Gi,"concatMap",{enumerable:!0,get:function(){return Jfc.concatMap}});var Ufc=iEr();Object.defineProperty(Gi,"concatMapTo",{enumerable:!0,get:function(){return Ufc.concatMapTo}});var Kfc=oEr();Object.defineProperty(Gi,"concatWith",{enumerable:!0,get:function(){return Kfc.concatWith}});var jfc=AXe();Object.defineProperty(Gi,"connect",{enumerable:!0,get:function(){return jfc.connect}});var zfc=aEr();Object.defineProperty(Gi,"count",{enumerable:!0,get:function(){return zfc.count}});var qfc=cEr();Object.defineProperty(Gi,"debounce",{enumerable:!0,get:function(){return qfc.debounce}});var $fc=lEr();Object.defineProperty(Gi,"debounceTime",{enumerable:!0,get:function(){return $fc.debounceTime}});var eIc=xTe();Object.defineProperty(Gi,"defaultIfEmpty",{enumerable:!0,get:function(){return eIc.defaultIfEmpty}});var tIc=uEr();Object.defineProperty(Gi,"delay",{enumerable:!0,get:function(){return tIc.delay}});var rIc=v1t();Object.defineProperty(Gi,"delayWhen",{enumerable:!0,get:function(){return rIc.delayWhen}});var nIc=gEr();Object.defineProperty(Gi,"dematerialize",{enumerable:!0,get:function(){return nIc.dematerialize}});var iIc=AEr();Object.defineProperty(Gi,"distinct",{enumerable:!0,get:function(){return iIc.distinct}});var sIc=R1t();Object.defineProperty(Gi,"distinctUntilChanged",{enumerable:!0,get:function(){return sIc.distinctUntilChanged}});var oIc=dEr();Object.defineProperty(Gi,"distinctUntilKeyChanged",{enumerable:!0,get:function(){return oIc.distinctUntilKeyChanged}});var aIc=pEr();Object.defineProperty(Gi,"elementAt",{enumerable:!0,get:function(){return aIc.elementAt}});var cIc=fEr();Object.defineProperty(Gi,"endWith",{enumerable:!0,get:function(){return cIc.endWith}});var lIc=IEr();Object.defineProperty(Gi,"every",{enumerable:!0,get:function(){return lIc.every}});var uIc=CEr();Object.defineProperty(Gi,"exhaust",{enumerable:!0,get:function(){return uIc.exhaust}});var gIc=V1t();Object.defineProperty(Gi,"exhaustAll",{enumerable:!0,get:function(){return gIc.exhaustAll}});var AIc=Z1t();Object.defineProperty(Gi,"exhaustMap",{enumerable:!0,get:function(){return AIc.exhaustMap}});var dIc=mEr();Object.defineProperty(Gi,"expand",{enumerable:!0,get:function(){return dIc.expand}});var pIc=vq();Object.defineProperty(Gi,"filter",{enumerable:!0,get:function(){return pIc.filter}});var fIc=hEr();Object.defineProperty(Gi,"finalize",{enumerable:!0,get:function(){return fIc.finalize}});var IIc=Q1t();Object.defineProperty(Gi,"find",{enumerable:!0,get:function(){return IIc.find}});var CIc=_Er();Object.defineProperty(Gi,"findIndex",{enumerable:!0,get:function(){return CIc.findIndex}});var mIc=yEr();Object.defineProperty(Gi,"first",{enumerable:!0,get:function(){return mIc.first}});var hIc=bEr();Object.defineProperty(Gi,"groupBy",{enumerable:!0,get:function(){return hIc.groupBy}});var _Ic=y1t();Object.defineProperty(Gi,"ignoreElements",{enumerable:!0,get:function(){return _Ic.ignoreElements}});var yIc=EEr();Object.defineProperty(Gi,"isEmpty",{enumerable:!0,get:function(){return yIc.isEmpty}});var bIc=BEr();Object.defineProperty(Gi,"last",{enumerable:!0,get:function(){return bIc.last}});var EIc=Bq();Object.defineProperty(Gi,"map",{enumerable:!0,get:function(){return EIc.map}});var BIc=E1t();Object.defineProperty(Gi,"mapTo",{enumerable:!0,get:function(){return BIc.mapTo}});var vIc=SEr();Object.defineProperty(Gi,"materialize",{enumerable:!0,get:function(){return vIc.materialize}});var SIc=wEr();Object.defineProperty(Gi,"max",{enumerable:!0,get:function(){return SIc.max}});var wIc=DEr();Object.defineProperty(Gi,"merge",{enumerable:!0,get:function(){return wIc.merge}});var TIc=vTe();Object.defineProperty(Gi,"mergeAll",{enumerable:!0,get:function(){return TIc.mergeAll}});var NIc=TEr();Object.defineProperty(Gi,"flatMap",{enumerable:!0,get:function(){return NIc.flatMap}});var RIc=DK();Object.defineProperty(Gi,"mergeMap",{enumerable:!0,get:function(){return RIc.mergeMap}});var DIc=NEr();Object.defineProperty(Gi,"mergeMapTo",{enumerable:!0,get:function(){return DIc.mergeMapTo}});var xIc=REr();Object.defineProperty(Gi,"mergeScan",{enumerable:!0,get:function(){return xIc.mergeScan}});var kIc=xEr();Object.defineProperty(Gi,"mergeWith",{enumerable:!0,get:function(){return kIc.mergeWith}});var GIc=kEr();Object.defineProperty(Gi,"min",{enumerable:!0,get:function(){return GIc.min}});var FIc=dXe();Object.defineProperty(Gi,"multicast",{enumerable:!0,get:function(){return FIc.multicast}});var ZIc=bTe();Object.defineProperty(Gi,"observeOn",{enumerable:!0,get:function(){return ZIc.observeOn}});var LIc=GEr();Object.defineProperty(Gi,"onErrorResumeNext",{enumerable:!0,get:function(){return LIc.onErrorResumeNext}});var VIc=FEr();Object.defineProperty(Gi,"pairwise",{enumerable:!0,get:function(){return VIc.pairwise}});var WIc=Y9i();Object.defineProperty(Gi,"partition",{enumerable:!0,get:function(){return WIc.partition}});var PIc=ZEr();Object.defineProperty(Gi,"pluck",{enumerable:!0,get:function(){return PIc.pluck}});var OIc=LEr();Object.defineProperty(Gi,"publish",{enumerable:!0,get:function(){return OIc.publish}});var QIc=VEr();Object.defineProperty(Gi,"publishBehavior",{enumerable:!0,get:function(){return QIc.publishBehavior}});var MIc=WEr();Object.defineProperty(Gi,"publishLast",{enumerable:!0,get:function(){return MIc.publishLast}});var HIc=PEr();Object.defineProperty(Gi,"publishReplay",{enumerable:!0,get:function(){return HIc.publishReplay}});var YIc=X9i();Object.defineProperty(Gi,"race",{enumerable:!0,get:function(){return YIc.race}});var XIc=c2t();Object.defineProperty(Gi,"raceWith",{enumerable:!0,get:function(){return XIc.raceWith}});var JIc=UIe();Object.defineProperty(Gi,"reduce",{enumerable:!0,get:function(){return JIc.reduce}});var UIc=OEr();Object.defineProperty(Gi,"repeat",{enumerable:!0,get:function(){return UIc.repeat}});var KIc=QEr();Object.defineProperty(Gi,"repeatWhen",{enumerable:!0,get:function(){return KIc.repeatWhen}});var jIc=MEr();Object.defineProperty(Gi,"retry",{enumerable:!0,get:function(){return jIc.retry}});var zIc=HEr();Object.defineProperty(Gi,"retryWhen",{enumerable:!0,get:function(){return zIc.retryWhen}});var qIc=Gbt();Object.defineProperty(Gi,"refCount",{enumerable:!0,get:function(){return qIc.refCount}});var $Ic=p2t();Object.defineProperty(Gi,"sample",{enumerable:!0,get:function(){return $Ic.sample}});var eCc=YEr();Object.defineProperty(Gi,"sampleTime",{enumerable:!0,get:function(){return eCc.sampleTime}});var tCc=XEr();Object.defineProperty(Gi,"scan",{enumerable:!0,get:function(){return tCc.scan}});var rCc=JEr();Object.defineProperty(Gi,"sequenceEqual",{enumerable:!0,get:function(){return rCc.sequenceEqual}});var nCc=m2t();Object.defineProperty(Gi,"share",{enumerable:!0,get:function(){return nCc.share}});var iCc=KEr();Object.defineProperty(Gi,"shareReplay",{enumerable:!0,get:function(){return iCc.shareReplay}});var sCc=jEr();Object.defineProperty(Gi,"single",{enumerable:!0,get:function(){return sCc.single}});var oCc=zEr();Object.defineProperty(Gi,"skip",{enumerable:!0,get:function(){return oCc.skip}});var aCc=qEr();Object.defineProperty(Gi,"skipLast",{enumerable:!0,get:function(){return aCc.skipLast}});var cCc=$Er();Object.defineProperty(Gi,"skipUntil",{enumerable:!0,get:function(){return cCc.skipUntil}});var lCc=e1r();Object.defineProperty(Gi,"skipWhile",{enumerable:!0,get:function(){return lCc.skipWhile}});var uCc=t1r();Object.defineProperty(Gi,"startWith",{enumerable:!0,get:function(){return uCc.startWith}});var gCc=ETe();Object.defineProperty(Gi,"subscribeOn",{enumerable:!0,get:function(){return gCc.subscribeOn}});var ACc=r1r();Object.defineProperty(Gi,"switchAll",{enumerable:!0,get:function(){return ACc.switchAll}});var dCc=LTe();Object.defineProperty(Gi,"switchMap",{enumerable:!0,get:function(){return dCc.switchMap}});var pCc=n1r();Object.defineProperty(Gi,"switchMapTo",{enumerable:!0,get:function(){return pCc.switchMapTo}});var fCc=i1r();Object.defineProperty(Gi,"switchScan",{enumerable:!0,get:function(){return fCc.switchScan}});var ICc=kTe();Object.defineProperty(Gi,"take",{enumerable:!0,get:function(){return ICc.take}});var CCc=J1t();Object.defineProperty(Gi,"takeLast",{enumerable:!0,get:function(){return CCc.takeLast}});var mCc=s1r();Object.defineProperty(Gi,"takeUntil",{enumerable:!0,get:function(){return mCc.takeUntil}});var hCc=o1r();Object.defineProperty(Gi,"takeWhile",{enumerable:!0,get:function(){return hCc.takeWhile}});var _Cc=a1r();Object.defineProperty(Gi,"tap",{enumerable:!0,get:function(){return _Cc.tap}});var yCc=G2t();Object.defineProperty(Gi,"throttle",{enumerable:!0,get:function(){return yCc.throttle}});var bCc=c1r();Object.defineProperty(Gi,"throttleTime",{enumerable:!0,get:function(){return bCc.throttleTime}});var ECc=GTe();Object.defineProperty(Gi,"throwIfEmpty",{enumerable:!0,get:function(){return ECc.throwIfEmpty}});var BCc=l1r();Object.defineProperty(Gi,"timeInterval",{enumerable:!0,get:function(){return BCc.timeInterval}});var vCc=cXe();Object.defineProperty(Gi,"timeout",{enumerable:!0,get:function(){return vCc.timeout}});var SCc=u1r();Object.defineProperty(Gi,"timeoutWith",{enumerable:!0,get:function(){return SCc.timeoutWith}});var wCc=g1r();Object.defineProperty(Gi,"timestamp",{enumerable:!0,get:function(){return wCc.timestamp}});var TCc=s1t();Object.defineProperty(Gi,"toArray",{enumerable:!0,get:function(){return TCc.toArray}});var NCc=A1r();Object.defineProperty(Gi,"window",{enumerable:!0,get:function(){return NCc.window}});var RCc=d1r();Object.defineProperty(Gi,"windowCount",{enumerable:!0,get:function(){return RCc.windowCount}});var DCc=p1r();Object.defineProperty(Gi,"windowTime",{enumerable:!0,get:function(){return DCc.windowTime}});var xCc=I1r();Object.defineProperty(Gi,"windowToggle",{enumerable:!0,get:function(){return xCc.windowToggle}});var kCc=C1r();Object.defineProperty(Gi,"windowWhen",{enumerable:!0,get:function(){return kCc.windowWhen}});var GCc=m1r();Object.defineProperty(Gi,"withLatestFrom",{enumerable:!0,get:function(){return GCc.withLatestFrom}});var FCc=_1r();Object.defineProperty(Gi,"zip",{enumerable:!0,get:function(){return FCc.zip}});var ZCc=h1r();Object.defineProperty(Gi,"zipAll",{enumerable:!0,get:function(){return ZCc.zipAll}});var LCc=y1r();Object.defineProperty(Gi,"zipWith",{enumerable:!0,get:function(){return LCc.zipWith}})});var avr=z(HXe=>{"use strict";Object.defineProperty(HXe,"__esModule",{value:!0});HXe.InvalidInputOptions=void 0;HXe.validateOptionsWithSchema=VCc;var K9i=c2(),U9i=vb(),ovr=J9i(),qvt=class extends K9i.schema.SchemaValidationException{constructor(t,r){super(r,`Schematic input does not validate against the Schema: ${JSON.stringify(t)} Errors: -`)}};MXe.InvalidInputOptions=Kvt;function bCc(e){return(t,r,s)=>{r=(0,M9i.deepCopy)(r);let a=s?s.interactive:!0;return t.schema&&t.schemaJson?(0,O9i.from)(e.compile(t.schemaJson)).pipe((0,evr.mergeMap)(o=>o(r,{withPrompts:a})),(0,evr.first)(),(0,evr.map)(o=>{if(!o.success)throw new Kvt(r,o.errors||[]);return r})):(0,O9i.of)(r)}}});var Q9i=z(zvt=>{"use strict";Object.defineProperty(zvt,"__esModule",{value:!0});zvt.NodeWorkflow=void 0;var jvt=a2(),ECc=Cvt(),BCc=uNe(),rvr=Z9i(),vCc=Jvt(),SCc=tvr(),nvr=class extends BCc.workflow.BaseWorkflow{constructor(t,r){let s,a;typeof t=="string"?(a=(0,jvt.normalize)(t),s=new jvt.virtualFs.ScopedHost(new ECc.NodeJsSyncHost,a)):(s=t,a=r.root);let o=r.engineHostCreator?.(r)||new vCc.NodeModulesEngineHost(r.resolvePaths);if(super({host:s,engineHost:o,force:r.force,dryRun:r.dryRun,registry:r.registry}),o.registerTaskExecutor(rvr.BuiltinTaskExecutor.NodePackage,{allowPackageManagerOverride:!0,packageManager:r.packageManager,force:r.packageManagerForce,rootDirectory:a&&(0,jvt.getSystemPath)(a),registry:r.packageRegistry}),o.registerTaskExecutor(rvr.BuiltinTaskExecutor.RepositoryInitializer,{rootDirectory:a&&(0,jvt.getSystemPath)(a)}),o.registerTaskExecutor(rvr.BuiltinTaskExecutor.RunSchematic),r.optionTransforms)for(let g of r.optionTransforms)o.registerOptionsTransform(g);r.schemaValidation&&o.registerOptionsTransform((0,SCc.validateOptionsWithSchema)(this.registry)),this._context=[]}get engine(){return this._engine}get engineHost(){return this._engineHost}};zvt.NodeWorkflow=nvr});var Y9i=z(ZK=>{"use strict";var wCc=ZK&&ZK.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),TCc=ZK&&ZK.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),NCc=ZK&&ZK.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var s=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(s[s.length]=a);return s},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var s=e(t),a=0;aNCc(Dt(s))).then(s=>(s.default?.default||s.default)())).pipe((0,svr.catchError)(()=>(0,svr.throwError)(()=>new RCc.UnregisteredTaskException(t))))}catch{}return super.createTaskExecutor(t)}};ZK.FileSystemEngineHost=ovr});var H9i=z(eSt=>{"use strict";Object.defineProperty(eSt,"__esModule",{value:!0});eSt.NodeModulesTestEngineHost=void 0;var xCc=Jvt(),avr=class extends xCc.NodeModulesEngineHost{#e=new Map;#t=[];get tasks(){return this.#t}clearTasks(){this.#t=[]}registerCollection(t,r){this.#e.set(t,r)}transformContext(t){let r=t.addTask.bind(t);return t.addTask=(s,a)=>(this.#t.push(s.toConfiguration()),r(s,a)),t}_resolveCollectionPath(t,r){return this.#e.get(t)??super._resolveCollectionPath(t,r)}};eSt.NodeModulesTestEngineHost=avr});var J9i=z(xw=>{"use strict";var kCc=xw&&xw.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),tSt=xw&&xw.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&kCc(t,e,r)};Object.defineProperty(xw,"__esModule",{value:!0});xw.validateOptionsWithSchema=xw.NodeModulesTestEngineHost=xw.NodePackageDoesNotSupportSchematics=xw.NodeModulesEngineHost=xw.FileSystemEngineHost=void 0;tSt(n9i(),xw);tSt(Dvt(),xw);tSt(Fvt(),xw);tSt(Q9i(),xw);var GCc=Y9i();Object.defineProperty(xw,"FileSystemEngineHost",{enumerable:!0,get:function(){return GCc.FileSystemEngineHost}});var X9i=Jvt();Object.defineProperty(xw,"NodeModulesEngineHost",{enumerable:!0,get:function(){return X9i.NodeModulesEngineHost}});Object.defineProperty(xw,"NodePackageDoesNotSupportSchematics",{enumerable:!0,get:function(){return X9i.NodePackageDoesNotSupportSchematics}});var FCc=H9i();Object.defineProperty(xw,"NodeModulesTestEngineHost",{enumerable:!0,get:function(){return FCc.NodeModulesTestEngineHost}});var ZCc=tvr();Object.defineProperty(xw,"validateOptionsWithSchema",{enumerable:!0,get:function(){return ZCc.validateOptionsWithSchema}})});var iSt=z(uvr=>{"use strict";Object.defineProperty(uvr,"__esModule",{value:!0});uvr.checkRequirements=OCc;var WCc=(Ma(),Ai(Oa)),PCc=WCc.__importDefault(Dt("os"));function OCc({stdout:e}){if(PCc.default.endianness()==="BE")throw new Error("Interactive commands cannot be used on big-endian systems because ink depends on yoga-layout-prebuilt which only supports little-endian architectures");if(!e.isTTY)throw new Error("Interactive commands can only be used inside a TTY environment")}});var lVi=z(sSt=>{"use strict";Object.defineProperty(sSt,"__esModule",{value:!0});function QXe(e){let t=[...e.caches],r=t.shift();return r===void 0?cVi():{get(s,a,o={miss:()=>Promise.resolve()}){return r.get(s,a,o).catch(()=>QXe({caches:t}).get(s,a,o))},set(s,a){return r.set(s,a).catch(()=>QXe({caches:t}).set(s,a))},delete(s){return r.delete(s).catch(()=>QXe({caches:t}).delete(s))},clear(){return r.clear().catch(()=>QXe({caches:t}).clear())}}}function cVi(){return{get(e,t,r={miss:()=>Promise.resolve()}){return t().then(a=>Promise.all([a,r.miss(a)])).then(([a])=>a)},set(e,t){return Promise.resolve(t)},delete(e){return Promise.resolve()},clear(){return Promise.resolve()}}}sSt.createFallbackableCache=QXe;sSt.createNullCache=cVi});var gvr=z((eQl,uVi)=>{uVi.exports=lVi()});var gVi=z(Avr=>{"use strict";Object.defineProperty(Avr,"__esModule",{value:!0});function MCc(e={serializable:!0}){let t={};return{get(r,s,a={miss:()=>Promise.resolve()}){let o=JSON.stringify(r);if(o in t)return Promise.resolve(e.serializable?JSON.parse(t[o]):t[o]);let g=s(),p=a&&a.miss||(()=>Promise.resolve());return g.then(f=>p(f)).then(()=>g)},set(r,s){return t[JSON.stringify(r)]=e.serializable?JSON.stringify(s):s,Promise.resolve(s)},delete(r){return delete t[JSON.stringify(r)],Promise.resolve()},clear(){return t={},Promise.resolve()}}}Avr.createInMemoryCache=MCc});var dvr=z((rQl,AVi)=>{AVi.exports=gVi()});var pVi=z(O5=>{"use strict";Object.defineProperty(O5,"__esModule",{value:!0});function QCc(e,t,r){let s={"x-algolia-api-key":r,"x-algolia-application-id":t};return{headers(){return e===pvr.WithinHeaders?s:{}},queryParameters(){return e===pvr.WithinQueryParameters?s:{}}}}function YCc(e){let t=0,r=()=>(t++,new Promise(s=>{setTimeout(()=>{s(e(r))},Math.min(100*t,1e3))}));return e(r)}function dVi(e,t=(r,s)=>Promise.resolve()){return Object.assign(e,{wait(r){return dVi(e.then(s=>Promise.all([t(s,r),s])).then(s=>s[1]))}})}function HCc(e){let t=e.length-1;for(t;t>0;t--){let r=Math.floor(Math.random()*(t+1)),s=e[t];e[t]=e[r],e[r]=s}return e}function XCc(e,t){return t&&Object.keys(t).forEach(r=>{e[r]=t[r](e)}),e}function JCc(e,...t){let r=0;return e.replace(/%s/g,()=>encodeURIComponent(t[r++]))}var UCc="4.24.0",KCc=e=>()=>e.transporter.requester.destroy(),pvr={WithinQueryParameters:0,WithinHeaders:1};O5.AuthMode=pvr;O5.addMethods=XCc;O5.createAuth=QCc;O5.createRetryablePromise=YCc;O5.createWaitablePromise=dVi;O5.destroy=KCc;O5.encode=JCc;O5.shuffle=HCc;O5.version=UCc});var pNe=z((iQl,fVi)=>{fVi.exports=pVi()});var IVi=z(fvr=>{"use strict";Object.defineProperty(fvr,"__esModule",{value:!0});var jCc={Delete:"DELETE",Get:"GET",Post:"POST",Put:"PUT"};fvr.MethodEnum=jCc});var fNe=z((oQl,CVi)=>{CVi.exports=IVi()});var xVi=z(cv=>{"use strict";Object.defineProperty(cv,"__esModule",{value:!0});var hVi=fNe();function Ivr(e,t){let r=e||{},s=r.data||{};return Object.keys(r).forEach(a=>{["timeout","headers","queryParameters","data","cacheable"].indexOf(a)===-1&&(s[a]=r[a])}),{data:Object.entries(s).length>0?s:void 0,timeout:r.timeout||t,headers:r.headers||{},queryParameters:r.queryParameters||{},cacheable:r.cacheable}}var YXe={Read:1,Write:2,Any:3},INe={Up:1,Down:2,Timeouted:3},_Vi=2*60*1e3;function mvr(e,t=INe.Up){return{...e,status:t,lastUpdate:Date.now()}}function yVi(e){return e.status===INe.Up||Date.now()-e.lastUpdate>_Vi}function bVi(e){return e.status===INe.Timeouted&&Date.now()-e.lastUpdate<=_Vi}function hvr(e){return typeof e=="string"?{protocol:"https",url:e,accept:YXe.Any}:{protocol:e.protocol||"https",url:e.url,accept:e.accept||YXe.Any}}function zCc(e,t){return Promise.all(t.map(r=>e.get(r,()=>Promise.resolve(mvr(r))))).then(r=>{let s=r.filter(p=>yVi(p)),a=r.filter(p=>bVi(p)),o=[...s,...a],g=o.length>0?o.map(p=>hvr(p)):t;return{getTimeout(p,f){return(a.length===0&&p===0?1:a.length+3+p)*f},statelessHosts:g}})}var qCc=({isTimedOut:e,status:t})=>!e&&~~t===0,$Cc=e=>{let t=e.status;return e.isTimedOut||qCc(e)||~~(t/100)!==2&&~~(t/100)!==4},emc=({status:e})=>~~(e/100)===2,tmc=(e,t)=>$Cc(e)?t.onRetry(e):emc(e)?t.onSuccess(e):t.onFail(e);function mVi(e,t,r,s){let a=[],o=wVi(r,s),g=TVi(e,s),p=r.method,f=r.method!==hVi.MethodEnum.Get?{}:{...r.data,...s.data},m={"x-algolia-agent":e.userAgent.value,...e.queryParameters,...f,...s.queryParameters},y=0,B=(v,G)=>{let T=v.pop();if(T===void 0)throw DVi(Cvr(a));let O={data:o,headers:g,method:p,url:vVi(T,r.path,m),connectTimeout:G(y,e.timeouts.connect),responseTimeout:G(y,s.timeout)},X=le=>{let ae={request:O,response:le,host:T,triesLeft:v.length};return a.push(ae),ae},U={onSuccess:le=>EVi(le),onRetry(le){let ae=X(le);return le.isTimedOut&&y++,Promise.all([e.logger.info("Retryable failure",_vr(ae)),e.hostsCache.set(T,mvr(T,le.isTimedOut?INe.Timeouted:INe.Down))]).then(()=>B(v,G))},onFail(le){throw X(le),BVi(le,Cvr(a))}};return e.requester.send(O).then(le=>tmc(le,U))};return zCc(e.hostsCache,t).then(v=>B([...v.statelessHosts].reverse(),v.getTimeout))}function rmc(e){let{hostsCache:t,logger:r,requester:s,requestsCache:a,responsesCache:o,timeouts:g,userAgent:p,hosts:f,queryParameters:m,headers:y}=e,B={hostsCache:t,logger:r,requester:s,requestsCache:a,responsesCache:o,timeouts:g,userAgent:p,headers:y,queryParameters:m,hosts:f.map(v=>hvr(v)),read(v,G){let T=Ivr(G,B.timeouts.read),O=()=>mVi(B,B.hosts.filter(le=>(le.accept&YXe.Read)!==0),v,T);if((T.cacheable!==void 0?T.cacheable:v.cacheable)!==!0)return O();let U={request:v,mappedRequestOptions:T,transporter:{queryParameters:B.queryParameters,headers:B.headers}};return B.responsesCache.get(U,()=>B.requestsCache.get(U,()=>B.requestsCache.set(U,O()).then(le=>Promise.all([B.requestsCache.delete(U),le]),le=>Promise.all([B.requestsCache.delete(U),Promise.reject(le)])).then(([le,ae])=>ae)),{miss:le=>B.responsesCache.set(U,le)})},write(v,G){return mVi(B,B.hosts.filter(T=>(T.accept&YXe.Write)!==0),v,Ivr(G,B.timeouts.write))}};return B}function nmc(e){let t={value:`Algolia for JavaScript (${e})`,add(r){let s=`; ${r.segment}${r.version!==void 0?` (${r.version})`:""}`;return t.value.indexOf(s)===-1&&(t.value=`${t.value}${s}`),t}};return t}function EVi(e){try{return JSON.parse(e.content)}catch(t){throw RVi(t.message,e)}}function BVi({content:e,status:t},r){let s=e;try{s=JSON.parse(e).message}catch{}return NVi(s,t,r)}function imc(e,...t){let r=0;return e.replace(/%s/g,()=>encodeURIComponent(t[r++]))}function vVi(e,t,r){let s=SVi(r),a=`${e.protocol}://${e.url}/${t.charAt(0)==="/"?t.substr(1):t}`;return s.length&&(a+=`?${s}`),a}function SVi(e){let t=r=>Object.prototype.toString.call(r)==="[object Object]"||Object.prototype.toString.call(r)==="[object Array]";return Object.keys(e).map(r=>imc("%s=%s",r,t(e[r])?JSON.stringify(e[r]):e[r])).join("&")}function wVi(e,t){if(e.method===hVi.MethodEnum.Get||e.data===void 0&&t.data===void 0)return;let r=Array.isArray(e.data)?e.data:{...e.data,...t.data};return JSON.stringify(r)}function TVi(e,t){let r={...e.headers,...t.headers},s={};return Object.keys(r).forEach(a=>{let o=r[a];s[a.toLowerCase()]=o}),s}function Cvr(e){return e.map(t=>_vr(t))}function _vr(e){let t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return{...e,request:{...e.request,headers:{...e.request.headers,...t}}}}function NVi(e,t,r){return{name:"ApiError",message:e,status:t,transporterStackTrace:r}}function RVi(e,t){return{name:"DeserializationError",message:e,response:t}}function DVi(e){return{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, please reach out to the Algolia Support team: https://alg.li/support .",transporterStackTrace:e}}cv.CallEnum=YXe;cv.HostStatusEnum=INe;cv.createApiError=NVi;cv.createDeserializationError=RVi;cv.createMappedRequestOptions=Ivr;cv.createRetryError=DVi;cv.createStatefulHost=mvr;cv.createStatelessHost=hvr;cv.createTransporter=rmc;cv.createUserAgent=nmc;cv.deserializeFailure=BVi;cv.deserializeSuccess=EVi;cv.isStatefulHostTimeouted=bVi;cv.isStatefulHostUp=yVi;cv.serializeData=wVi;cv.serializeHeaders=TVi;cv.serializeQueryParameters=SVi;cv.serializeUrl=vVi;cv.stackFrameWithoutCredentials=_vr;cv.stackTraceWithoutCredentials=Cvr});var CNe=z((cQl,kVi)=>{kVi.exports=xVi()});var GVi=z(aae=>{"use strict";Object.defineProperty(aae,"__esModule",{value:!0});var mNe=pNe(),smc=CNe(),HXe=fNe(),omc=e=>{let t=e.region||"us",r=mNe.createAuth(mNe.AuthMode.WithinHeaders,e.appId,e.apiKey),s=smc.createTransporter({hosts:[{url:`analytics.${t}.algolia.com`}],...e,headers:{...r.headers(),"content-type":"application/json",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}}),a=e.appId;return mNe.addMethods({appId:a,transporter:s},e.methods)},amc=e=>(t,r)=>e.transporter.write({method:HXe.MethodEnum.Post,path:"2/abtests",data:t},r),cmc=e=>(t,r)=>e.transporter.write({method:HXe.MethodEnum.Delete,path:mNe.encode("2/abtests/%s",t)},r),lmc=e=>(t,r)=>e.transporter.read({method:HXe.MethodEnum.Get,path:mNe.encode("2/abtests/%s",t)},r),umc=e=>t=>e.transporter.read({method:HXe.MethodEnum.Get,path:"2/abtests"},t),gmc=e=>(t,r)=>e.transporter.write({method:HXe.MethodEnum.Post,path:mNe.encode("2/abtests/%s/stop",t)},r);aae.addABTest=amc;aae.createAnalyticsClient=omc;aae.deleteABTest=cmc;aae.getABTest=lmc;aae.getABTests=umc;aae.stopABTest=gmc});var ZVi=z((uQl,FVi)=>{FVi.exports=GVi()});var VVi=z(XXe=>{"use strict";Object.defineProperty(XXe,"__esModule",{value:!0});var yvr=pNe(),Amc=CNe(),LVi=fNe(),dmc=e=>{let t=e.region||"us",r=yvr.createAuth(yvr.AuthMode.WithinHeaders,e.appId,e.apiKey),s=Amc.createTransporter({hosts:[{url:`personalization.${t}.algolia.com`}],...e,headers:{...r.headers(),"content-type":"application/json",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}});return yvr.addMethods({appId:e.appId,transporter:s},e.methods)},pmc=e=>t=>e.transporter.read({method:LVi.MethodEnum.Get,path:"1/strategies/personalization"},t),fmc=e=>(t,r)=>e.transporter.write({method:LVi.MethodEnum.Post,path:"1/strategies/personalization",data:t},r);XXe.createPersonalizationClient=dmc;XXe.getPersonalizationStrategy=pmc;XXe.setPersonalizationStrategy=fmc});var PVi=z((AQl,WVi)=>{WVi.exports=VVi()});var eWi=z(Ol=>{"use strict";Object.defineProperty(Ol,"__esModule",{value:!0});var ig=pNe(),R9=CNe(),ip=fNe(),Imc=Dt("crypto");function oSt(e){let t=r=>e.request(r).then(s=>{if(e.batch!==void 0&&e.batch(s.hits),!e.shouldStop(s))return s.cursor?t({cursor:s.cursor}):t({page:(r.page||0)+1})});return t({})}var Cmc=e=>{let t=e.appId,r=ig.createAuth(e.authMode!==void 0?e.authMode:ig.AuthMode.WithinHeaders,t,e.apiKey),s=R9.createTransporter({hosts:[{url:`${t}-dsn.algolia.net`,accept:R9.CallEnum.Read},{url:`${t}.algolia.net`,accept:R9.CallEnum.Write}].concat(ig.shuffle([{url:`${t}-1.algolianet.com`},{url:`${t}-2.algolianet.com`},{url:`${t}-3.algolianet.com`}])),...e,headers:{...r.headers(),"content-type":"application/x-www-form-urlencoded",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}}),a={transporter:s,appId:t,addAlgoliaAgent(o,g){s.userAgent.add({segment:o,version:g})},clearCache(){return Promise.all([s.requestsCache.clear(),s.responsesCache.clear()]).then(()=>{})}};return ig.addMethods(a,e.methods)};function OVi(){return{name:"MissingObjectIDError",message:"All objects must have an unique objectID (like a primary key) to be valid. Algolia is also able to generate objectIDs automatically but *it's not recommended*. To do it, use the `{'autoGenerateObjectIDIfNotExist': true}` option."}}function MVi(){return{name:"ObjectNotFoundError",message:"Object not found."}}function QVi(){return{name:"ValidUntilNotFoundError",message:"ValidUntil not found in given secured api key."}}var mmc=e=>(t,r)=>{let{queryParameters:s,...a}=r||{},o={acl:t,...s!==void 0?{queryParameters:s}:{}},g=(p,f)=>ig.createRetryablePromise(m=>JXe(e)(p.key,f).catch(y=>{if(y.status!==404)throw y;return m()}));return ig.createWaitablePromise(e.transporter.write({method:ip.MethodEnum.Post,path:"1/keys",data:o},a),g)},hmc=e=>(t,r,s)=>{let a=R9.createMappedRequestOptions(s);return a.queryParameters["X-Algolia-User-ID"]=t,e.transporter.write({method:ip.MethodEnum.Post,path:"1/clusters/mapping",data:{cluster:r}},a)},_mc=e=>(t,r,s)=>e.transporter.write({method:ip.MethodEnum.Post,path:"1/clusters/mapping/batch",data:{users:t,cluster:r}},s),ymc=e=>(t,r)=>ig.createWaitablePromise(e.transporter.write({method:ip.MethodEnum.Post,path:ig.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!0,requests:{action:"addEntry",body:[]}}},r),(s,a)=>hNe(e)(s.taskID,a)),aSt=e=>(t,r,s)=>{let a=(o,g)=>UXe(e)(t,{methods:{waitTask:kw}}).waitTask(o.taskID,g);return ig.createWaitablePromise(e.transporter.write({method:ip.MethodEnum.Post,path:ig.encode("1/indexes/%s/operation",t),data:{operation:"copy",destination:r}},s),a)},bmc=e=>(t,r,s)=>aSt(e)(t,r,{...s,scope:[lSt.Rules]}),Emc=e=>(t,r,s)=>aSt(e)(t,r,{...s,scope:[lSt.Settings]}),Bmc=e=>(t,r,s)=>aSt(e)(t,r,{...s,scope:[lSt.Synonyms]}),vmc=e=>(t,r)=>t.method===ip.MethodEnum.Get?e.transporter.read(t,r):e.transporter.write(t,r),Smc=e=>(t,r)=>{let s=(a,o)=>ig.createRetryablePromise(g=>JXe(e)(t,o).then(g).catch(p=>{if(p.status!==404)throw p}));return ig.createWaitablePromise(e.transporter.write({method:ip.MethodEnum.Delete,path:ig.encode("1/keys/%s",t)},r),s)},wmc=e=>(t,r,s)=>{let a=r.map(o=>({action:"deleteEntry",body:{objectID:o}}));return ig.createWaitablePromise(e.transporter.write({method:ip.MethodEnum.Post,path:ig.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!1,requests:a}},s),(o,g)=>hNe(e)(o.taskID,g))},Tmc=()=>(e,t)=>{let r=R9.serializeQueryParameters(t),s=Imc.createHmac("sha256",e).update(r).digest("hex");return Buffer.from(s+r).toString("base64")},JXe=e=>(t,r)=>e.transporter.read({method:ip.MethodEnum.Get,path:ig.encode("1/keys/%s",t)},r),YVi=e=>(t,r)=>e.transporter.read({method:ip.MethodEnum.Get,path:ig.encode("1/task/%s",t.toString())},r),Nmc=e=>t=>e.transporter.read({method:ip.MethodEnum.Get,path:"/1/dictionaries/*/settings"},t),Rmc=e=>t=>e.transporter.read({method:ip.MethodEnum.Get,path:"1/logs"},t),Dmc=()=>e=>{let t=Buffer.from(e,"base64").toString("ascii"),r=/validUntil=(\d+)/,s=t.match(r);if(s===null)throw QVi();return parseInt(s[1],10)-Math.round(new Date().getTime()/1e3)},xmc=e=>t=>e.transporter.read({method:ip.MethodEnum.Get,path:"1/clusters/mapping/top"},t),kmc=e=>(t,r)=>e.transporter.read({method:ip.MethodEnum.Get,path:ig.encode("1/clusters/mapping/%s",t)},r),Gmc=e=>t=>{let{retrieveMappings:r,...s}=t||{};return r===!0&&(s.getClusters=!0),e.transporter.read({method:ip.MethodEnum.Get,path:"1/clusters/mapping/pending"},s)},UXe=e=>(t,r={})=>{let s={transporter:e.transporter,appId:e.appId,indexName:t};return ig.addMethods(s,r.methods)},Fmc=e=>t=>e.transporter.read({method:ip.MethodEnum.Get,path:"1/keys"},t),Zmc=e=>t=>e.transporter.read({method:ip.MethodEnum.Get,path:"1/clusters"},t),Lmc=e=>t=>e.transporter.read({method:ip.MethodEnum.Get,path:"1/indexes"},t),Vmc=e=>t=>e.transporter.read({method:ip.MethodEnum.Get,path:"1/clusters/mapping"},t),Wmc=e=>(t,r,s)=>{let a=(o,g)=>UXe(e)(t,{methods:{waitTask:kw}}).waitTask(o.taskID,g);return ig.createWaitablePromise(e.transporter.write({method:ip.MethodEnum.Post,path:ig.encode("1/indexes/%s/operation",t),data:{operation:"move",destination:r}},s),a)},Pmc=e=>(t,r)=>{let s=(a,o)=>Promise.all(Object.keys(a.taskID).map(g=>UXe(e)(g,{methods:{waitTask:kw}}).waitTask(a.taskID[g],o)));return ig.createWaitablePromise(e.transporter.write({method:ip.MethodEnum.Post,path:"1/indexes/*/batch",data:{requests:t}},r),s)},Omc=e=>(t,r)=>e.transporter.read({method:ip.MethodEnum.Post,path:"1/indexes/*/objects",data:{requests:t}},r),Mmc=e=>(t,r)=>{let s=t.map(a=>({...a,params:R9.serializeQueryParameters(a.params||{})}));return e.transporter.read({method:ip.MethodEnum.Post,path:"1/indexes/*/queries",data:{requests:s},cacheable:!0},r)},Qmc=e=>(t,r)=>Promise.all(t.map(s=>{let{facetName:a,facetQuery:o,...g}=s.params;return UXe(e)(s.indexName,{methods:{searchForFacetValues:zVi}}).searchForFacetValues(a,o,{...r,...g})})),Ymc=e=>(t,r)=>{let s=R9.createMappedRequestOptions(r);return s.queryParameters["X-Algolia-User-ID"]=t,e.transporter.write({method:ip.MethodEnum.Delete,path:"1/clusters/mapping"},s)},Hmc=e=>(t,r,s)=>{let a=r.map(o=>({action:"addEntry",body:o}));return ig.createWaitablePromise(e.transporter.write({method:ip.MethodEnum.Post,path:ig.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!0,requests:a}},s),(o,g)=>hNe(e)(o.taskID,g))},Xmc=e=>(t,r)=>{let s=(a,o)=>ig.createRetryablePromise(g=>JXe(e)(t,o).catch(p=>{if(p.status!==404)throw p;return g()}));return ig.createWaitablePromise(e.transporter.write({method:ip.MethodEnum.Post,path:ig.encode("1/keys/%s/restore",t)},r),s)},Jmc=e=>(t,r,s)=>{let a=r.map(o=>({action:"addEntry",body:o}));return ig.createWaitablePromise(e.transporter.write({method:ip.MethodEnum.Post,path:ig.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!1,requests:a}},s),(o,g)=>hNe(e)(o.taskID,g))},Umc=e=>(t,r,s)=>e.transporter.read({method:ip.MethodEnum.Post,path:ig.encode("/1/dictionaries/%s/search",t),data:{query:r},cacheable:!0},s),Kmc=e=>(t,r)=>e.transporter.read({method:ip.MethodEnum.Post,path:"1/clusters/mapping/search",data:{query:t}},r),jmc=e=>(t,r)=>ig.createWaitablePromise(e.transporter.write({method:ip.MethodEnum.Put,path:"/1/dictionaries/*/settings",data:t},r),(s,a)=>hNe(e)(s.taskID,a)),zmc=e=>(t,r)=>{let s=Object.assign({},r),{queryParameters:a,...o}=r||{},g=a?{queryParameters:a}:{},p=["acl","indexes","referers","restrictSources","queryParameters","description","maxQueriesPerIPPerHour","maxHitsPerQuery"],f=y=>Object.keys(s).filter(B=>p.indexOf(B)!==-1).every(B=>{if(Array.isArray(y[B])&&Array.isArray(s[B])){let v=y[B];return v.length===s[B].length&&v.every((G,T)=>G===s[B][T])}else return y[B]===s[B]}),m=(y,B)=>ig.createRetryablePromise(v=>JXe(e)(t,B).then(G=>f(G)?Promise.resolve():v()));return ig.createWaitablePromise(e.transporter.write({method:ip.MethodEnum.Put,path:ig.encode("1/keys/%s",t),data:g},o),m)},hNe=e=>(t,r)=>ig.createRetryablePromise(s=>YVi(e)(t,r).then(a=>a.status!=="published"?s():void 0)),HVi=e=>(t,r)=>{let s=(a,o)=>kw(e)(a.taskID,o);return ig.createWaitablePromise(e.transporter.write({method:ip.MethodEnum.Post,path:ig.encode("1/indexes/%s/batch",e.indexName),data:{requests:t}},r),s)},qmc=e=>t=>oSt({shouldStop:r=>r.cursor===void 0,...t,request:r=>e.transporter.read({method:ip.MethodEnum.Post,path:ig.encode("1/indexes/%s/browse",e.indexName),data:r},t)}),$mc=e=>t=>{let r={hitsPerPage:1e3,...t};return oSt({shouldStop:s=>s.hits.length({...a,hits:a.hits.map(o=>(delete o._highlightResult,o))}))}})},ehc=e=>t=>{let r={hitsPerPage:1e3,...t};return oSt({shouldStop:s=>s.hits.length({...a,hits:a.hits.map(o=>(delete o._highlightResult,o))}))}})},cSt=e=>(t,r,s)=>{let{batchSize:a,...o}=s||{},g={taskIDs:[],objectIDs:[]},p=(f=0)=>{let m=[],y;for(y=f;y({action:r,body:B})),o).then(B=>(g.objectIDs=g.objectIDs.concat(B.objectIDs),g.taskIDs.push(B.taskID),y++,p(y)))};return ig.createWaitablePromise(p(),(f,m)=>Promise.all(f.taskIDs.map(y=>kw(e)(y,m))))},thc=e=>t=>ig.createWaitablePromise(e.transporter.write({method:ip.MethodEnum.Post,path:ig.encode("1/indexes/%s/clear",e.indexName)},t),(r,s)=>kw(e)(r.taskID,s)),rhc=e=>t=>{let{forwardToReplicas:r,...s}=t||{},a=R9.createMappedRequestOptions(s);return r&&(a.queryParameters.forwardToReplicas=1),ig.createWaitablePromise(e.transporter.write({method:ip.MethodEnum.Post,path:ig.encode("1/indexes/%s/rules/clear",e.indexName)},a),(o,g)=>kw(e)(o.taskID,g))},nhc=e=>t=>{let{forwardToReplicas:r,...s}=t||{},a=R9.createMappedRequestOptions(s);return r&&(a.queryParameters.forwardToReplicas=1),ig.createWaitablePromise(e.transporter.write({method:ip.MethodEnum.Post,path:ig.encode("1/indexes/%s/synonyms/clear",e.indexName)},a),(o,g)=>kw(e)(o.taskID,g))},ihc=e=>(t,r)=>ig.createWaitablePromise(e.transporter.write({method:ip.MethodEnum.Post,path:ig.encode("1/indexes/%s/deleteByQuery",e.indexName),data:t},r),(s,a)=>kw(e)(s.taskID,a)),shc=e=>t=>ig.createWaitablePromise(e.transporter.write({method:ip.MethodEnum.Delete,path:ig.encode("1/indexes/%s",e.indexName)},t),(r,s)=>kw(e)(r.taskID,s)),ohc=e=>(t,r)=>ig.createWaitablePromise(XVi(e)([t],r).then(s=>({taskID:s.taskIDs[0]})),(s,a)=>kw(e)(s.taskID,a)),XVi=e=>(t,r)=>{let s=t.map(a=>({objectID:a}));return cSt(e)(s,eCe.DeleteObject,r)},ahc=e=>(t,r)=>{let{forwardToReplicas:s,...a}=r||{},o=R9.createMappedRequestOptions(a);return s&&(o.queryParameters.forwardToReplicas=1),ig.createWaitablePromise(e.transporter.write({method:ip.MethodEnum.Delete,path:ig.encode("1/indexes/%s/rules/%s",e.indexName,t)},o),(g,p)=>kw(e)(g.taskID,p))},chc=e=>(t,r)=>{let{forwardToReplicas:s,...a}=r||{},o=R9.createMappedRequestOptions(a);return s&&(o.queryParameters.forwardToReplicas=1),ig.createWaitablePromise(e.transporter.write({method:ip.MethodEnum.Delete,path:ig.encode("1/indexes/%s/synonyms/%s",e.indexName,t)},o),(g,p)=>kw(e)(g.taskID,p))},lhc=e=>t=>JVi(e)(t).then(()=>!0).catch(r=>{if(r.status!==404)throw r;return!1}),uhc=e=>(t,r,s)=>e.transporter.read({method:ip.MethodEnum.Post,path:ig.encode("1/answers/%s/prediction",e.indexName),data:{query:t,queryLanguages:r},cacheable:!0},s),ghc=e=>(t,r)=>{let{query:s,paginate:a,...o}=r||{},g=0,p=()=>jVi(e)(s||"",{...o,page:g}).then(f=>{for(let[m,y]of Object.entries(f.hits))if(t(y))return{object:y,position:parseInt(m,10),page:g};if(g++,a===!1||g>=f.nbPages)throw MVi();return p()});return p()},Ahc=e=>(t,r)=>e.transporter.read({method:ip.MethodEnum.Get,path:ig.encode("1/indexes/%s/%s",e.indexName,t)},r),dhc=()=>(e,t)=>{for(let[r,s]of Object.entries(e.hits))if(s.objectID===t)return parseInt(r,10);return-1},phc=e=>(t,r)=>{let{attributesToRetrieve:s,...a}=r||{},o=t.map(g=>({indexName:e.indexName,objectID:g,...s?{attributesToRetrieve:s}:{}}));return e.transporter.read({method:ip.MethodEnum.Post,path:"1/indexes/*/objects",data:{requests:o}},a)},fhc=e=>(t,r)=>e.transporter.read({method:ip.MethodEnum.Get,path:ig.encode("1/indexes/%s/rules/%s",e.indexName,t)},r),JVi=e=>t=>e.transporter.read({method:ip.MethodEnum.Get,path:ig.encode("1/indexes/%s/settings",e.indexName),data:{getVersion:2}},t),Ihc=e=>(t,r)=>e.transporter.read({method:ip.MethodEnum.Get,path:ig.encode("1/indexes/%s/synonyms/%s",e.indexName,t)},r),UVi=e=>(t,r)=>e.transporter.read({method:ip.MethodEnum.Get,path:ig.encode("1/indexes/%s/task/%s",e.indexName,t.toString())},r),Chc=e=>(t,r)=>ig.createWaitablePromise(KVi(e)([t],r).then(s=>({objectID:s.objectIDs[0],taskID:s.taskIDs[0]})),(s,a)=>kw(e)(s.taskID,a)),KVi=e=>(t,r)=>{let{createIfNotExists:s,...a}=r||{},o=s?eCe.PartialUpdateObject:eCe.PartialUpdateObjectNoCreate;return cSt(e)(t,o,a)},mhc=e=>(t,r)=>{let{safe:s,autoGenerateObjectIDIfNotExist:a,batchSize:o,...g}=r||{},p=(T,O,X,U)=>ig.createWaitablePromise(e.transporter.write({method:ip.MethodEnum.Post,path:ig.encode("1/indexes/%s/operation",T),data:{operation:X,destination:O}},U),(le,ae)=>kw(e)(le.taskID,ae)),f=Math.random().toString(36).substring(7),m=`${e.indexName}_tmp_${f}`,y=bvr({appId:e.appId,transporter:e.transporter,indexName:m}),B=[],v=p(e.indexName,m,"copy",{...g,scope:["settings","synonyms","rules"]});B.push(v);let G=(s?v.wait(g):v).then(()=>{let T=y(t,{...g,autoGenerateObjectIDIfNotExist:a,batchSize:o});return B.push(T),s?T.wait(g):T}).then(()=>{let T=p(m,e.indexName,"move",g);return B.push(T),s?T.wait(g):T}).then(()=>Promise.all(B)).then(([T,O,X])=>({objectIDs:O.objectIDs,taskIDs:[T.taskID,...O.taskIDs,X.taskID]}));return ig.createWaitablePromise(G,(T,O)=>Promise.all(B.map(X=>X.wait(O))))},hhc=e=>(t,r)=>Evr(e)(t,{...r,clearExistingRules:!0}),_hc=e=>(t,r)=>Bvr(e)(t,{...r,clearExistingSynonyms:!0}),yhc=e=>(t,r)=>ig.createWaitablePromise(bvr(e)([t],r).then(s=>({objectID:s.objectIDs[0],taskID:s.taskIDs[0]})),(s,a)=>kw(e)(s.taskID,a)),bvr=e=>(t,r)=>{let{autoGenerateObjectIDIfNotExist:s,...a}=r||{},o=s?eCe.AddObject:eCe.UpdateObject;if(o===eCe.UpdateObject){for(let g of t)if(g.objectID===void 0)return ig.createWaitablePromise(Promise.reject(OVi()))}return cSt(e)(t,o,a)},bhc=e=>(t,r)=>Evr(e)([t],r),Evr=e=>(t,r)=>{let{forwardToReplicas:s,clearExistingRules:a,...o}=r||{},g=R9.createMappedRequestOptions(o);return s&&(g.queryParameters.forwardToReplicas=1),a&&(g.queryParameters.clearExistingRules=1),ig.createWaitablePromise(e.transporter.write({method:ip.MethodEnum.Post,path:ig.encode("1/indexes/%s/rules/batch",e.indexName),data:t},g),(p,f)=>kw(e)(p.taskID,f))},Ehc=e=>(t,r)=>Bvr(e)([t],r),Bvr=e=>(t,r)=>{let{forwardToReplicas:s,clearExistingSynonyms:a,replaceExistingSynonyms:o,...g}=r||{},p=R9.createMappedRequestOptions(g);return s&&(p.queryParameters.forwardToReplicas=1),(o||a)&&(p.queryParameters.replaceExistingSynonyms=1),ig.createWaitablePromise(e.transporter.write({method:ip.MethodEnum.Post,path:ig.encode("1/indexes/%s/synonyms/batch",e.indexName),data:t},p),(f,m)=>kw(e)(f.taskID,m))},jVi=e=>(t,r)=>e.transporter.read({method:ip.MethodEnum.Post,path:ig.encode("1/indexes/%s/query",e.indexName),data:{query:t},cacheable:!0},r),zVi=e=>(t,r,s)=>e.transporter.read({method:ip.MethodEnum.Post,path:ig.encode("1/indexes/%s/facets/%s/query",e.indexName,t),data:{facetQuery:r},cacheable:!0},s),qVi=e=>(t,r)=>e.transporter.read({method:ip.MethodEnum.Post,path:ig.encode("1/indexes/%s/rules/search",e.indexName),data:{query:t}},r),$Vi=e=>(t,r)=>e.transporter.read({method:ip.MethodEnum.Post,path:ig.encode("1/indexes/%s/synonyms/search",e.indexName),data:{query:t}},r),Bhc=e=>(t,r)=>{let{forwardToReplicas:s,...a}=r||{},o=R9.createMappedRequestOptions(a);return s&&(o.queryParameters.forwardToReplicas=1),ig.createWaitablePromise(e.transporter.write({method:ip.MethodEnum.Put,path:ig.encode("1/indexes/%s/settings",e.indexName),data:t},o),(g,p)=>kw(e)(g.taskID,p))},kw=e=>(t,r)=>ig.createRetryablePromise(s=>UVi(e)(t,r).then(a=>a.status!=="published"?s():void 0)),vhc={AddObject:"addObject",Analytics:"analytics",Browser:"browse",DeleteIndex:"deleteIndex",DeleteObject:"deleteObject",EditSettings:"editSettings",Inference:"inference",ListIndexes:"listIndexes",Logs:"logs",Personalization:"personalization",Recommendation:"recommendation",Search:"search",SeeUnretrievableAttributes:"seeUnretrievableAttributes",Settings:"settings",Usage:"usage"},eCe={AddObject:"addObject",UpdateObject:"updateObject",PartialUpdateObject:"partialUpdateObject",PartialUpdateObjectNoCreate:"partialUpdateObjectNoCreate",DeleteObject:"deleteObject",DeleteIndex:"delete",ClearIndex:"clear"},lSt={Settings:"settings",Synonyms:"synonyms",Rules:"rules"},Shc={None:"none",StopIfEnoughMatches:"stopIfEnoughMatches"},whc={Synonym:"synonym",OneWaySynonym:"oneWaySynonym",AltCorrection1:"altCorrection1",AltCorrection2:"altCorrection2",Placeholder:"placeholder"};Ol.ApiKeyACLEnum=vhc;Ol.BatchActionEnum=eCe;Ol.ScopeEnum=lSt;Ol.StrategyEnum=Shc;Ol.SynonymEnum=whc;Ol.addApiKey=mmc;Ol.assignUserID=hmc;Ol.assignUserIDs=_mc;Ol.batch=HVi;Ol.browseObjects=qmc;Ol.browseRules=$mc;Ol.browseSynonyms=ehc;Ol.chunkedBatch=cSt;Ol.clearDictionaryEntries=ymc;Ol.clearObjects=thc;Ol.clearRules=rhc;Ol.clearSynonyms=nhc;Ol.copyIndex=aSt;Ol.copyRules=bmc;Ol.copySettings=Emc;Ol.copySynonyms=Bmc;Ol.createBrowsablePromise=oSt;Ol.createMissingObjectIDError=OVi;Ol.createObjectNotFoundError=MVi;Ol.createSearchClient=Cmc;Ol.createValidUntilNotFoundError=QVi;Ol.customRequest=vmc;Ol.deleteApiKey=Smc;Ol.deleteBy=ihc;Ol.deleteDictionaryEntries=wmc;Ol.deleteIndex=shc;Ol.deleteObject=ohc;Ol.deleteObjects=XVi;Ol.deleteRule=ahc;Ol.deleteSynonym=chc;Ol.exists=lhc;Ol.findAnswers=uhc;Ol.findObject=ghc;Ol.generateSecuredApiKey=Tmc;Ol.getApiKey=JXe;Ol.getAppTask=YVi;Ol.getDictionarySettings=Nmc;Ol.getLogs=Rmc;Ol.getObject=Ahc;Ol.getObjectPosition=dhc;Ol.getObjects=phc;Ol.getRule=fhc;Ol.getSecuredApiKeyRemainingValidity=Dmc;Ol.getSettings=JVi;Ol.getSynonym=Ihc;Ol.getTask=UVi;Ol.getTopUserIDs=xmc;Ol.getUserID=kmc;Ol.hasPendingMappings=Gmc;Ol.initIndex=UXe;Ol.listApiKeys=Fmc;Ol.listClusters=Zmc;Ol.listIndices=Lmc;Ol.listUserIDs=Vmc;Ol.moveIndex=Wmc;Ol.multipleBatch=Pmc;Ol.multipleGetObjects=Omc;Ol.multipleQueries=Mmc;Ol.multipleSearchForFacetValues=Qmc;Ol.partialUpdateObject=Chc;Ol.partialUpdateObjects=KVi;Ol.removeUserID=Ymc;Ol.replaceAllObjects=mhc;Ol.replaceAllRules=hhc;Ol.replaceAllSynonyms=_hc;Ol.replaceDictionaryEntries=Hmc;Ol.restoreApiKey=Xmc;Ol.saveDictionaryEntries=Jmc;Ol.saveObject=yhc;Ol.saveObjects=bvr;Ol.saveRule=bhc;Ol.saveRules=Evr;Ol.saveSynonym=Ehc;Ol.saveSynonyms=Bvr;Ol.search=jVi;Ol.searchDictionaryEntries=Umc;Ol.searchForFacetValues=zVi;Ol.searchRules=qVi;Ol.searchSynonyms=$Vi;Ol.searchUserIDs=Kmc;Ol.setDictionarySettings=jmc;Ol.setSettings=Bhc;Ol.updateApiKey=zmc;Ol.waitAppTask=hNe;Ol.waitTask=kw});var rWi=z((pQl,tWi)=>{tWi.exports=eWi()});var nWi=z(uSt=>{"use strict";Object.defineProperty(uSt,"__esModule",{value:!0});function Thc(){return{debug(e,t){return Promise.resolve()},info(e,t){return Promise.resolve()},error(e,t){return Promise.resolve()}}}var Nhc={Debug:1,Info:2,Error:3};uSt.LogLevelEnum=Nhc;uSt.createNullLogger=Thc});var vvr=z((IQl,iWi)=>{iWi.exports=nWi()});var cWi=z(Svr=>{"use strict";Object.defineProperty(Svr,"__esModule",{value:!0});var sWi=Dt("http"),oWi=Dt("https"),Rhc=Dt("url"),aWi={keepAlive:!0},Dhc=new sWi.Agent(aWi),xhc=new oWi.Agent(aWi);function khc({agent:e,httpAgent:t,httpsAgent:r,requesterOptions:s={}}={}){let a=t||e||Dhc,o=r||e||xhc;return{send(g){return new Promise(p=>{let f=Rhc.parse(g.url),m=f.query===null?f.pathname:`${f.pathname}?${f.query}`,y={...s,agent:f.protocol==="https:"?o:a,hostname:f.hostname,path:m,method:g.method,headers:{...s&&s.headers?s.headers:{},...g.headers},...f.port!==void 0?{port:f.port||""}:{}},B=(f.protocol==="https:"?oWi:sWi).request(y,O=>{let X=[];O.on("data",U=>{X=X.concat(U)}),O.on("end",()=>{clearTimeout(G),clearTimeout(T),p({status:O.statusCode||0,content:Buffer.concat(X).toString(),isTimedOut:!1})})}),v=(O,X)=>setTimeout(()=>{B.abort(),p({status:0,content:X,isTimedOut:!0})},O*1e3),G=v(g.connectTimeout,"Connection timeout"),T;B.on("error",O=>{clearTimeout(G),clearTimeout(T),p({status:0,content:O.message,isTimedOut:!1})}),B.once("response",()=>{clearTimeout(G),T=v(g.responseTimeout,"Socket timeout")}),g.data!==void 0&&B.write(g.data),B.end()})},destroy(){return a.destroy(),o.destroy(),Promise.resolve()}}}Svr.createNodeHttpRequester=khc});var wvr=z((mQl,lWi)=>{lWi.exports=cWi()});var mWi=z((hQl,CWi)=>{"use strict";var uWi=gvr(),Ghc=dvr(),cae=pNe(),Fhc=vvr(),Zhc=wvr(),gSt=CNe(),ASt=fNe(),Lhc=e=>{let t=e.appId,r=cae.createAuth(e.authMode!==void 0?e.authMode:cae.AuthMode.WithinHeaders,t,e.apiKey),s=gSt.createTransporter({hosts:[{url:`${t}-dsn.algolia.net`,accept:gSt.CallEnum.Read},{url:`${t}.algolia.net`,accept:gSt.CallEnum.Write}].concat(cae.shuffle([{url:`${t}-1.algolianet.com`},{url:`${t}-2.algolianet.com`},{url:`${t}-3.algolianet.com`}])),...e,headers:{...r.headers(),"content-type":"application/x-www-form-urlencoded",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}}),a={transporter:s,appId:t,addAlgoliaAgent(o,g){s.userAgent.add({segment:o,version:g})},clearCache(){return Promise.all([s.requestsCache.clear(),s.responsesCache.clear()]).then(()=>{})}};return cae.addMethods(a,e.methods)},KXe=e=>(t,r)=>{let s=t.map(a=>({...a,threshold:a.threshold||0}));return e.transporter.read({method:ASt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:s},cacheable:!0},r)},gWi=e=>(t,r)=>KXe(e)(t.map(s=>({...s,fallbackParameters:{},model:"bought-together"})),r),AWi=e=>(t,r)=>KXe(e)(t.map(s=>({...s,model:"related-products"})),r),dWi=e=>(t,r)=>{let s=t.map(a=>({...a,model:"trending-facets",threshold:a.threshold||0}));return e.transporter.read({method:ASt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:s},cacheable:!0},r)},pWi=e=>(t,r)=>{let s=t.map(a=>({...a,model:"trending-items",threshold:a.threshold||0}));return e.transporter.read({method:ASt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:s},cacheable:!0},r)},fWi=e=>(t,r)=>KXe(e)(t.map(s=>({...s,model:"looking-similar"})),r),IWi=e=>(t,r)=>{let s=t.map(a=>({...a,model:"recommended-for-you",threshold:a.threshold||0}));return e.transporter.read({method:ASt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:s},cacheable:!0},r)};function Lq(e,t,r){let s={appId:e,apiKey:t,timeouts:{connect:2,read:5,write:30},requester:Zhc.createNodeHttpRequester(),logger:Fhc.createNullLogger(),responsesCache:uWi.createNullCache(),requestsCache:uWi.createNullCache(),hostsCache:Ghc.createInMemoryCache(),userAgent:gSt.createUserAgent(cae.version).add({segment:"Recommend",version:cae.version}).add({segment:"Node.js",version:process.versions.node})};return Lhc({...s,...r,methods:{destroy:cae.destroy,getFrequentlyBoughtTogether:gWi,getRecommendations:KXe,getRelatedProducts:AWi,getTrendingFacets:dWi,getTrendingItems:pWi,getLookingSimilar:fWi,getRecommendedForYou:IWi}})}Lq.version=cae.version;Lq.getFrequentlyBoughtTogether=gWi;Lq.getRecommendations=KXe;Lq.getRelatedProducts=AWi;Lq.getTrendingFacets=dWi;Lq.getTrendingItems=pWi;Lq.getLookingSimilar=fWi;Lq.getRecommendedForYou=IWi;CWi.exports=Lq});var _Wi=z((_Ql,Tvr)=>{var hWi=mWi();Tvr.exports=hWi;Tvr.exports.default=hWi});var BWi=z((yQl,EWi)=>{"use strict";var yWi=gvr(),Vhc=dvr(),_Ne=ZVi(),Rvr=pNe(),Nvr=PVi(),Nu=rWi(),Whc=vvr(),tCe=_Wi(),Phc=wvr(),Ohc=CNe();function bWi(e,t,r){let s={appId:e,apiKey:t,timeouts:{connect:2,read:5,write:30},requester:Phc.createNodeHttpRequester(),logger:Whc.createNullLogger(),responsesCache:yWi.createNullCache(),requestsCache:yWi.createNullCache(),hostsCache:Vhc.createInMemoryCache(),userAgent:Ohc.createUserAgent(Rvr.version).add({segment:"Node.js",version:process.versions.node})},a={...s,...r},o=()=>g=>Nvr.createPersonalizationClient({...s,...g,methods:{getPersonalizationStrategy:Nvr.getPersonalizationStrategy,setPersonalizationStrategy:Nvr.setPersonalizationStrategy}});return Nu.createSearchClient({...a,methods:{search:Nu.multipleQueries,searchForFacetValues:Nu.multipleSearchForFacetValues,multipleBatch:Nu.multipleBatch,multipleGetObjects:Nu.multipleGetObjects,multipleQueries:Nu.multipleQueries,copyIndex:Nu.copyIndex,copySettings:Nu.copySettings,copyRules:Nu.copyRules,copySynonyms:Nu.copySynonyms,moveIndex:Nu.moveIndex,listIndices:Nu.listIndices,getLogs:Nu.getLogs,listClusters:Nu.listClusters,multipleSearchForFacetValues:Nu.multipleSearchForFacetValues,getApiKey:Nu.getApiKey,addApiKey:Nu.addApiKey,listApiKeys:Nu.listApiKeys,updateApiKey:Nu.updateApiKey,deleteApiKey:Nu.deleteApiKey,restoreApiKey:Nu.restoreApiKey,assignUserID:Nu.assignUserID,assignUserIDs:Nu.assignUserIDs,getUserID:Nu.getUserID,searchUserIDs:Nu.searchUserIDs,listUserIDs:Nu.listUserIDs,getTopUserIDs:Nu.getTopUserIDs,removeUserID:Nu.removeUserID,hasPendingMappings:Nu.hasPendingMappings,generateSecuredApiKey:Nu.generateSecuredApiKey,getSecuredApiKeyRemainingValidity:Nu.getSecuredApiKeyRemainingValidity,destroy:Rvr.destroy,clearDictionaryEntries:Nu.clearDictionaryEntries,deleteDictionaryEntries:Nu.deleteDictionaryEntries,getDictionarySettings:Nu.getDictionarySettings,getAppTask:Nu.getAppTask,replaceDictionaryEntries:Nu.replaceDictionaryEntries,saveDictionaryEntries:Nu.saveDictionaryEntries,searchDictionaryEntries:Nu.searchDictionaryEntries,setDictionarySettings:Nu.setDictionarySettings,waitAppTask:Nu.waitAppTask,customRequest:Nu.customRequest,initIndex:g=>p=>Nu.initIndex(g)(p,{methods:{batch:Nu.batch,delete:Nu.deleteIndex,findAnswers:Nu.findAnswers,getObject:Nu.getObject,getObjects:Nu.getObjects,saveObject:Nu.saveObject,saveObjects:Nu.saveObjects,search:Nu.search,searchForFacetValues:Nu.searchForFacetValues,waitTask:Nu.waitTask,setSettings:Nu.setSettings,getSettings:Nu.getSettings,partialUpdateObject:Nu.partialUpdateObject,partialUpdateObjects:Nu.partialUpdateObjects,deleteObject:Nu.deleteObject,deleteObjects:Nu.deleteObjects,deleteBy:Nu.deleteBy,clearObjects:Nu.clearObjects,browseObjects:Nu.browseObjects,getObjectPosition:Nu.getObjectPosition,findObject:Nu.findObject,exists:Nu.exists,saveSynonym:Nu.saveSynonym,saveSynonyms:Nu.saveSynonyms,getSynonym:Nu.getSynonym,searchSynonyms:Nu.searchSynonyms,browseSynonyms:Nu.browseSynonyms,deleteSynonym:Nu.deleteSynonym,clearSynonyms:Nu.clearSynonyms,replaceAllObjects:Nu.replaceAllObjects,replaceAllSynonyms:Nu.replaceAllSynonyms,searchRules:Nu.searchRules,getRule:Nu.getRule,deleteRule:Nu.deleteRule,saveRule:Nu.saveRule,saveRules:Nu.saveRules,replaceAllRules:Nu.replaceAllRules,browseRules:Nu.browseRules,clearRules:Nu.clearRules}}),initAnalytics:()=>g=>_Ne.createAnalyticsClient({...s,...g,methods:{addABTest:_Ne.addABTest,getABTest:_Ne.getABTest,getABTests:_Ne.getABTests,stopABTest:_Ne.stopABTest,deleteABTest:_Ne.deleteABTest}}),initPersonalization:o,initRecommendation:()=>g=>(a.logger.info("The `initRecommendation` method is deprecated. Use `initPersonalization` instead."),o()(g)),getRecommendations:tCe.getRecommendations,getFrequentlyBoughtTogether:tCe.getFrequentlyBoughtTogether,getLookingSimilar:tCe.getLookingSimilar,getRecommendedForYou:tCe.getRecommendedForYou,getRelatedProducts:tCe.getRelatedProducts,getTrendingFacets:tCe.getTrendingFacets,getTrendingItems:tCe.getTrendingItems}})}bWi.version=Rvr.version;EWi.exports=bWi});var xvr=z((bQl,Dvr)=>{var vWi=BWi();Dvr.exports=vWi;Dvr.exports.default=vWi});var SWi=z(dSt=>{"use strict";Object.defineProperty(dSt,"__esModule",{value:!0});dSt.search=void 0;var Mhc=(Ma(),Ai(Oa)),Qhc=Mhc.__importDefault(xvr()),kvr={appId:"OFCNCOG2CU",apiKey:"6fe4476ee5a1832882e326b506d14126",indexName:"npm-search"},Yhc=(0,Qhc.default)(kvr.appId,kvr.apiKey).initIndex(kvr.indexName),Hhc=async(e,t=0)=>await Yhc.search(e,{analyticsTags:["yarn-plugin-interactive-tools"],attributesToRetrieve:["name","version","owner","repository","humanDownloadsLast30Days"],page:t,hitsPerPage:10});dSt.search=Hhc});var MWi=z(Hh=>{"use strict";var Fvr=_ct(),yNe=60103,NWi=60106;Hh.Fragment=60107;Hh.StrictMode=60108;Hh.Profiler=60114;var RWi=60109,DWi=60110,xWi=60112;Hh.Suspense=60113;var kWi=60115,GWi=60116;typeof Symbol=="function"&&Symbol.for&&(YM=Symbol.for,yNe=YM("react.element"),NWi=YM("react.portal"),Hh.Fragment=YM("react.fragment"),Hh.StrictMode=YM("react.strict_mode"),Hh.Profiler=YM("react.profiler"),RWi=YM("react.provider"),DWi=YM("react.context"),xWi=YM("react.forward_ref"),Hh.Suspense=YM("react.suspense"),kWi=YM("react.memo"),GWi=YM("react.lazy"));var YM,wWi=typeof Symbol=="function"&&Symbol.iterator;function Xhc(e){return e===null||typeof e!="object"?null:(e=wWi&&e[wWi]||e["@@iterator"],typeof e=="function"?e:null)}function jXe(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,r=1;r{"use strict";QWi.exports=MWi()});var JWi=z(zXe=>{"use strict";var XWi=zXe&&zXe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(zXe,"__esModule",{value:!0});var YWi=XWi(DWe()),HWi=XWi(r1e()),zhc=(e,{showCursor:t=!1}={})=>{let r=0,s="",a=!1,o=g=>{!t&&!a&&(HWi.default.hide(),a=!0);let p=g+` -`;p!==s&&(s=p,e.write(YWi.default.eraseLines(r)+p),r=p.split(` -`).length)};return o.clear=()=>{e.write(YWi.default.eraseLines(r)),s="",r=0},o.done=()=>{s="",r=0,t||(HWi.default.show(),a=!1)},o};zXe.default={create:zhc}});var UWi=z((wQl,qXe)=>{qXe.exports=function(t){var r={},s=_ct(),a=Pm(),o=VWe();function g(k){for(var L="https://reactjs.org/docs/error-decoder.html?invariant="+k,ee=1;ee{r=(0,K9i.deepCopy)(r);let a=s?s.interactive:!0;return t.schema&&t.schemaJson?(0,U9i.from)(e.compile(t.schemaJson)).pipe((0,ovr.mergeMap)(o=>o(r,{withPrompts:a})),(0,ovr.first)(),(0,ovr.map)(o=>{if(!o.success)throw new qvt(r,o.errors||[]);return r})):(0,U9i.of)(r)}}});var j9i=z(eSt=>{"use strict";Object.defineProperty(eSt,"__esModule",{value:!0});eSt.NodeWorkflow=void 0;var $vt=c2(),WCc=_vt(),PCc=ANe(),cvr=M9i(),OCc=jvt(),QCc=avr(),lvr=class extends PCc.workflow.BaseWorkflow{constructor(t,r){let s,a;typeof t=="string"?(a=(0,$vt.normalize)(t),s=new $vt.virtualFs.ScopedHost(new WCc.NodeJsSyncHost,a)):(s=t,a=r.root);let o=r.engineHostCreator?.(r)||new OCc.NodeModulesEngineHost(r.resolvePaths);if(super({host:s,engineHost:o,force:r.force,dryRun:r.dryRun,registry:r.registry}),o.registerTaskExecutor(cvr.BuiltinTaskExecutor.NodePackage,{allowPackageManagerOverride:!0,packageManager:r.packageManager,force:r.packageManagerForce,rootDirectory:a&&(0,$vt.getSystemPath)(a),registry:r.packageRegistry}),o.registerTaskExecutor(cvr.BuiltinTaskExecutor.RepositoryInitializer,{rootDirectory:a&&(0,$vt.getSystemPath)(a)}),o.registerTaskExecutor(cvr.BuiltinTaskExecutor.RunSchematic),r.optionTransforms)for(let g of r.optionTransforms)o.registerOptionsTransform(g);r.schemaValidation&&o.registerOptionsTransform((0,QCc.validateOptionsWithSchema)(this.registry)),this._context=[]}get engine(){return this._engine}get engineHost(){return this._engineHost}};eSt.NodeWorkflow=lvr});var z9i=z(QK=>{"use strict";var MCc=QK&&QK.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),HCc=QK&&QK.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),YCc=QK&&QK.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var s=[];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(s[s.length]=a);return s},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var s=e(t),a=0;aYCc(xt(s))).then(s=>(s.default?.default||s.default)())).pipe((0,gvr.catchError)(()=>(0,gvr.throwError)(()=>new XCc.UnregisteredTaskException(t))))}catch{}return super.createTaskExecutor(t)}};QK.FileSystemEngineHost=Avr});var q9i=z(nSt=>{"use strict";Object.defineProperty(nSt,"__esModule",{value:!0});nSt.NodeModulesTestEngineHost=void 0;var UCc=jvt(),dvr=class extends UCc.NodeModulesEngineHost{#e=new Map;#t=[];get tasks(){return this.#t}clearTasks(){this.#t=[]}registerCollection(t,r){this.#e.set(t,r)}transformContext(t){let r=t.addTask.bind(t);return t.addTask=(s,a)=>(this.#t.push(s.toConfiguration()),r(s,a)),t}_resolveCollectionPath(t,r){return this.#e.get(t)??super._resolveCollectionPath(t,r)}};nSt.NodeModulesTestEngineHost=dvr});var eVi=z(kw=>{"use strict";var KCc=kw&&kw.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r);var a=Object.getOwnPropertyDescriptor(t,r);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,a)}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),iSt=kw&&kw.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&KCc(t,e,r)};Object.defineProperty(kw,"__esModule",{value:!0});kw.validateOptionsWithSchema=kw.NodeModulesTestEngineHost=kw.NodePackageDoesNotSupportSchematics=kw.NodeModulesEngineHost=kw.FileSystemEngineHost=void 0;iSt(u9i(),kw);iSt(Gvt(),kw);iSt(Vvt(),kw);iSt(j9i(),kw);var jCc=z9i();Object.defineProperty(kw,"FileSystemEngineHost",{enumerable:!0,get:function(){return jCc.FileSystemEngineHost}});var $9i=jvt();Object.defineProperty(kw,"NodeModulesEngineHost",{enumerable:!0,get:function(){return $9i.NodeModulesEngineHost}});Object.defineProperty(kw,"NodePackageDoesNotSupportSchematics",{enumerable:!0,get:function(){return $9i.NodePackageDoesNotSupportSchematics}});var zCc=q9i();Object.defineProperty(kw,"NodeModulesTestEngineHost",{enumerable:!0,get:function(){return zCc.NodeModulesTestEngineHost}});var qCc=avr();Object.defineProperty(kw,"validateOptionsWithSchema",{enumerable:!0,get:function(){return qCc.validateOptionsWithSchema}})});var aSt=z(Ivr=>{"use strict";Object.defineProperty(Ivr,"__esModule",{value:!0});Ivr.checkRequirements=nmc;var tmc=(Oa(),Ai(Pa)),rmc=tmc.__importDefault(xt("os"));function nmc({stdout:e}){if(rmc.default.endianness()==="BE")throw new Error("Interactive commands cannot be used on big-endian systems because ink depends on yoga-layout-prebuilt which only supports little-endian architectures");if(!e.isTTY)throw new Error("Interactive commands can only be used inside a TTY environment")}});var IVi=z(cSt=>{"use strict";Object.defineProperty(cSt,"__esModule",{value:!0});function YXe(e){let t=[...e.caches],r=t.shift();return r===void 0?fVi():{get(s,a,o={miss:()=>Promise.resolve()}){return r.get(s,a,o).catch(()=>YXe({caches:t}).get(s,a,o))},set(s,a){return r.set(s,a).catch(()=>YXe({caches:t}).set(s,a))},delete(s){return r.delete(s).catch(()=>YXe({caches:t}).delete(s))},clear(){return r.clear().catch(()=>YXe({caches:t}).clear())}}}function fVi(){return{get(e,t,r={miss:()=>Promise.resolve()}){return t().then(a=>Promise.all([a,r.miss(a)])).then(([a])=>a)},set(e,t){return Promise.resolve(t)},delete(e){return Promise.resolve()},clear(){return Promise.resolve()}}}cSt.createFallbackableCache=YXe;cSt.createNullCache=fVi});var Cvr=z((b5l,CVi)=>{CVi.exports=IVi()});var mVi=z(mvr=>{"use strict";Object.defineProperty(mvr,"__esModule",{value:!0});function imc(e={serializable:!0}){let t={};return{get(r,s,a={miss:()=>Promise.resolve()}){let o=JSON.stringify(r);if(o in t)return Promise.resolve(e.serializable?JSON.parse(t[o]):t[o]);let g=s(),p=a&&a.miss||(()=>Promise.resolve());return g.then(f=>p(f)).then(()=>g)},set(r,s){return t[JSON.stringify(r)]=e.serializable?JSON.stringify(s):s,Promise.resolve(s)},delete(r){return delete t[JSON.stringify(r)],Promise.resolve()},clear(){return t={},Promise.resolve()}}}mvr.createInMemoryCache=imc});var hvr=z((B5l,hVi)=>{hVi.exports=mVi()});var yVi=z(HY=>{"use strict";Object.defineProperty(HY,"__esModule",{value:!0});function smc(e,t,r){let s={"x-algolia-api-key":r,"x-algolia-application-id":t};return{headers(){return e===_vr.WithinHeaders?s:{}},queryParameters(){return e===_vr.WithinQueryParameters?s:{}}}}function omc(e){let t=0,r=()=>(t++,new Promise(s=>{setTimeout(()=>{s(e(r))},Math.min(100*t,1e3))}));return e(r)}function _Vi(e,t=(r,s)=>Promise.resolve()){return Object.assign(e,{wait(r){return _Vi(e.then(s=>Promise.all([t(s,r),s])).then(s=>s[1]))}})}function amc(e){let t=e.length-1;for(t;t>0;t--){let r=Math.floor(Math.random()*(t+1)),s=e[t];e[t]=e[r],e[r]=s}return e}function cmc(e,t){return t&&Object.keys(t).forEach(r=>{e[r]=t[r](e)}),e}function lmc(e,...t){let r=0;return e.replace(/%s/g,()=>encodeURIComponent(t[r++]))}var umc="4.24.0",gmc=e=>()=>e.transporter.requester.destroy(),_vr={WithinQueryParameters:0,WithinHeaders:1};HY.AuthMode=_vr;HY.addMethods=cmc;HY.createAuth=smc;HY.createRetryablePromise=omc;HY.createWaitablePromise=_Vi;HY.destroy=gmc;HY.encode=lmc;HY.shuffle=amc;HY.version=umc});var INe=z((S5l,bVi)=>{bVi.exports=yVi()});var EVi=z(yvr=>{"use strict";Object.defineProperty(yvr,"__esModule",{value:!0});var Amc={Delete:"DELETE",Get:"GET",Post:"POST",Put:"PUT"};yvr.MethodEnum=Amc});var CNe=z((T5l,BVi)=>{BVi.exports=EVi()});var WVi=z(lv=>{"use strict";Object.defineProperty(lv,"__esModule",{value:!0});var SVi=CNe();function bvr(e,t){let r=e||{},s=r.data||{};return Object.keys(r).forEach(a=>{["timeout","headers","queryParameters","data","cacheable"].indexOf(a)===-1&&(s[a]=r[a])}),{data:Object.entries(s).length>0?s:void 0,timeout:r.timeout||t,headers:r.headers||{},queryParameters:r.queryParameters||{},cacheable:r.cacheable}}var XXe={Read:1,Write:2,Any:3},mNe={Up:1,Down:2,Timeouted:3},wVi=2*60*1e3;function Bvr(e,t=mNe.Up){return{...e,status:t,lastUpdate:Date.now()}}function TVi(e){return e.status===mNe.Up||Date.now()-e.lastUpdate>wVi}function NVi(e){return e.status===mNe.Timeouted&&Date.now()-e.lastUpdate<=wVi}function vvr(e){return typeof e=="string"?{protocol:"https",url:e,accept:XXe.Any}:{protocol:e.protocol||"https",url:e.url,accept:e.accept||XXe.Any}}function dmc(e,t){return Promise.all(t.map(r=>e.get(r,()=>Promise.resolve(Bvr(r))))).then(r=>{let s=r.filter(p=>TVi(p)),a=r.filter(p=>NVi(p)),o=[...s,...a],g=o.length>0?o.map(p=>vvr(p)):t;return{getTimeout(p,f){return(a.length===0&&p===0?1:a.length+3+p)*f},statelessHosts:g}})}var pmc=({isTimedOut:e,status:t})=>!e&&~~t===0,fmc=e=>{let t=e.status;return e.isTimedOut||pmc(e)||~~(t/100)!==2&&~~(t/100)!==4},Imc=({status:e})=>~~(e/100)===2,Cmc=(e,t)=>fmc(e)?t.onRetry(e):Imc(e)?t.onSuccess(e):t.onFail(e);function vVi(e,t,r,s){let a=[],o=GVi(r,s),g=FVi(e,s),p=r.method,f=r.method!==SVi.MethodEnum.Get?{}:{...r.data,...s.data},m={"x-algolia-agent":e.userAgent.value,...e.queryParameters,...f,...s.queryParameters},y=0,B=(v,k)=>{let T=v.pop();if(T===void 0)throw VVi(Evr(a));let O={data:o,headers:g,method:p,url:xVi(T,r.path,m),connectTimeout:k(y,e.timeouts.connect),responseTimeout:k(y,s.timeout)},X=le=>{let ae={request:O,response:le,host:T,triesLeft:v.length};return a.push(ae),ae},U={onSuccess:le=>RVi(le),onRetry(le){let ae=X(le);return le.isTimedOut&&y++,Promise.all([e.logger.info("Retryable failure",Svr(ae)),e.hostsCache.set(T,Bvr(T,le.isTimedOut?mNe.Timeouted:mNe.Down))]).then(()=>B(v,k))},onFail(le){throw X(le),DVi(le,Evr(a))}};return e.requester.send(O).then(le=>Cmc(le,U))};return dmc(e.hostsCache,t).then(v=>B([...v.statelessHosts].reverse(),v.getTimeout))}function mmc(e){let{hostsCache:t,logger:r,requester:s,requestsCache:a,responsesCache:o,timeouts:g,userAgent:p,hosts:f,queryParameters:m,headers:y}=e,B={hostsCache:t,logger:r,requester:s,requestsCache:a,responsesCache:o,timeouts:g,userAgent:p,headers:y,queryParameters:m,hosts:f.map(v=>vvr(v)),read(v,k){let T=bvr(k,B.timeouts.read),O=()=>vVi(B,B.hosts.filter(le=>(le.accept&XXe.Read)!==0),v,T);if((T.cacheable!==void 0?T.cacheable:v.cacheable)!==!0)return O();let U={request:v,mappedRequestOptions:T,transporter:{queryParameters:B.queryParameters,headers:B.headers}};return B.responsesCache.get(U,()=>B.requestsCache.get(U,()=>B.requestsCache.set(U,O()).then(le=>Promise.all([B.requestsCache.delete(U),le]),le=>Promise.all([B.requestsCache.delete(U),Promise.reject(le)])).then(([le,ae])=>ae)),{miss:le=>B.responsesCache.set(U,le)})},write(v,k){return vVi(B,B.hosts.filter(T=>(T.accept&XXe.Write)!==0),v,bvr(k,B.timeouts.write))}};return B}function hmc(e){let t={value:`Algolia for JavaScript (${e})`,add(r){let s=`; ${r.segment}${r.version!==void 0?` (${r.version})`:""}`;return t.value.indexOf(s)===-1&&(t.value=`${t.value}${s}`),t}};return t}function RVi(e){try{return JSON.parse(e.content)}catch(t){throw LVi(t.message,e)}}function DVi({content:e,status:t},r){let s=e;try{s=JSON.parse(e).message}catch{}return ZVi(s,t,r)}function _mc(e,...t){let r=0;return e.replace(/%s/g,()=>encodeURIComponent(t[r++]))}function xVi(e,t,r){let s=kVi(r),a=`${e.protocol}://${e.url}/${t.charAt(0)==="/"?t.substr(1):t}`;return s.length&&(a+=`?${s}`),a}function kVi(e){let t=r=>Object.prototype.toString.call(r)==="[object Object]"||Object.prototype.toString.call(r)==="[object Array]";return Object.keys(e).map(r=>_mc("%s=%s",r,t(e[r])?JSON.stringify(e[r]):e[r])).join("&")}function GVi(e,t){if(e.method===SVi.MethodEnum.Get||e.data===void 0&&t.data===void 0)return;let r=Array.isArray(e.data)?e.data:{...e.data,...t.data};return JSON.stringify(r)}function FVi(e,t){let r={...e.headers,...t.headers},s={};return Object.keys(r).forEach(a=>{let o=r[a];s[a.toLowerCase()]=o}),s}function Evr(e){return e.map(t=>Svr(t))}function Svr(e){let t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return{...e,request:{...e.request,headers:{...e.request.headers,...t}}}}function ZVi(e,t,r){return{name:"ApiError",message:e,status:t,transporterStackTrace:r}}function LVi(e,t){return{name:"DeserializationError",message:e,response:t}}function VVi(e){return{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, please reach out to the Algolia Support team: https://alg.li/support .",transporterStackTrace:e}}lv.CallEnum=XXe;lv.HostStatusEnum=mNe;lv.createApiError=ZVi;lv.createDeserializationError=LVi;lv.createMappedRequestOptions=bvr;lv.createRetryError=VVi;lv.createStatefulHost=Bvr;lv.createStatelessHost=vvr;lv.createTransporter=mmc;lv.createUserAgent=hmc;lv.deserializeFailure=DVi;lv.deserializeSuccess=RVi;lv.isStatefulHostTimeouted=NVi;lv.isStatefulHostUp=TVi;lv.serializeData=GVi;lv.serializeHeaders=FVi;lv.serializeQueryParameters=kVi;lv.serializeUrl=xVi;lv.stackFrameWithoutCredentials=Svr;lv.stackTraceWithoutCredentials=Evr});var hNe=z((R5l,PVi)=>{PVi.exports=WVi()});var OVi=z(Iae=>{"use strict";Object.defineProperty(Iae,"__esModule",{value:!0});var _Ne=INe(),ymc=hNe(),JXe=CNe(),bmc=e=>{let t=e.region||"us",r=_Ne.createAuth(_Ne.AuthMode.WithinHeaders,e.appId,e.apiKey),s=ymc.createTransporter({hosts:[{url:`analytics.${t}.algolia.com`}],...e,headers:{...r.headers(),"content-type":"application/json",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}}),a=e.appId;return _Ne.addMethods({appId:a,transporter:s},e.methods)},Emc=e=>(t,r)=>e.transporter.write({method:JXe.MethodEnum.Post,path:"2/abtests",data:t},r),Bmc=e=>(t,r)=>e.transporter.write({method:JXe.MethodEnum.Delete,path:_Ne.encode("2/abtests/%s",t)},r),vmc=e=>(t,r)=>e.transporter.read({method:JXe.MethodEnum.Get,path:_Ne.encode("2/abtests/%s",t)},r),Smc=e=>t=>e.transporter.read({method:JXe.MethodEnum.Get,path:"2/abtests"},t),wmc=e=>(t,r)=>e.transporter.write({method:JXe.MethodEnum.Post,path:_Ne.encode("2/abtests/%s/stop",t)},r);Iae.addABTest=Emc;Iae.createAnalyticsClient=bmc;Iae.deleteABTest=Bmc;Iae.getABTest=vmc;Iae.getABTests=Smc;Iae.stopABTest=wmc});var MVi=z((x5l,QVi)=>{QVi.exports=OVi()});var YVi=z(UXe=>{"use strict";Object.defineProperty(UXe,"__esModule",{value:!0});var wvr=INe(),Tmc=hNe(),HVi=CNe(),Nmc=e=>{let t=e.region||"us",r=wvr.createAuth(wvr.AuthMode.WithinHeaders,e.appId,e.apiKey),s=Tmc.createTransporter({hosts:[{url:`personalization.${t}.algolia.com`}],...e,headers:{...r.headers(),"content-type":"application/json",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}});return wvr.addMethods({appId:e.appId,transporter:s},e.methods)},Rmc=e=>t=>e.transporter.read({method:HVi.MethodEnum.Get,path:"1/strategies/personalization"},t),Dmc=e=>(t,r)=>e.transporter.write({method:HVi.MethodEnum.Post,path:"1/strategies/personalization",data:t},r);UXe.createPersonalizationClient=Nmc;UXe.getPersonalizationStrategy=Rmc;UXe.setPersonalizationStrategy=Dmc});var JVi=z((G5l,XVi)=>{XVi.exports=YVi()});var aWi=z(Ql=>{"use strict";Object.defineProperty(Ql,"__esModule",{value:!0});var sg=INe(),D9=hNe(),sp=CNe(),xmc=xt("crypto");function lSt(e){let t=r=>e.request(r).then(s=>{if(e.batch!==void 0&&e.batch(s.hits),!e.shouldStop(s))return s.cursor?t({cursor:s.cursor}):t({page:(r.page||0)+1})});return t({})}var kmc=e=>{let t=e.appId,r=sg.createAuth(e.authMode!==void 0?e.authMode:sg.AuthMode.WithinHeaders,t,e.apiKey),s=D9.createTransporter({hosts:[{url:`${t}-dsn.algolia.net`,accept:D9.CallEnum.Read},{url:`${t}.algolia.net`,accept:D9.CallEnum.Write}].concat(sg.shuffle([{url:`${t}-1.algolianet.com`},{url:`${t}-2.algolianet.com`},{url:`${t}-3.algolianet.com`}])),...e,headers:{...r.headers(),"content-type":"application/x-www-form-urlencoded",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}}),a={transporter:s,appId:t,addAlgoliaAgent(o,g){s.userAgent.add({segment:o,version:g})},clearCache(){return Promise.all([s.requestsCache.clear(),s.responsesCache.clear()]).then(()=>{})}};return sg.addMethods(a,e.methods)};function UVi(){return{name:"MissingObjectIDError",message:"All objects must have an unique objectID (like a primary key) to be valid. Algolia is also able to generate objectIDs automatically but *it's not recommended*. To do it, use the `{'autoGenerateObjectIDIfNotExist': true}` option."}}function KVi(){return{name:"ObjectNotFoundError",message:"Object not found."}}function jVi(){return{name:"ValidUntilNotFoundError",message:"ValidUntil not found in given secured api key."}}var Gmc=e=>(t,r)=>{let{queryParameters:s,...a}=r||{},o={acl:t,...s!==void 0?{queryParameters:s}:{}},g=(p,f)=>sg.createRetryablePromise(m=>KXe(e)(p.key,f).catch(y=>{if(y.status!==404)throw y;return m()}));return sg.createWaitablePromise(e.transporter.write({method:sp.MethodEnum.Post,path:"1/keys",data:o},a),g)},Fmc=e=>(t,r,s)=>{let a=D9.createMappedRequestOptions(s);return a.queryParameters["X-Algolia-User-ID"]=t,e.transporter.write({method:sp.MethodEnum.Post,path:"1/clusters/mapping",data:{cluster:r}},a)},Zmc=e=>(t,r,s)=>e.transporter.write({method:sp.MethodEnum.Post,path:"1/clusters/mapping/batch",data:{users:t,cluster:r}},s),Lmc=e=>(t,r)=>sg.createWaitablePromise(e.transporter.write({method:sp.MethodEnum.Post,path:sg.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!0,requests:{action:"addEntry",body:[]}}},r),(s,a)=>yNe(e)(s.taskID,a)),uSt=e=>(t,r,s)=>{let a=(o,g)=>jXe(e)(t,{methods:{waitTask:Gw}}).waitTask(o.taskID,g);return sg.createWaitablePromise(e.transporter.write({method:sp.MethodEnum.Post,path:sg.encode("1/indexes/%s/operation",t),data:{operation:"copy",destination:r}},s),a)},Vmc=e=>(t,r,s)=>uSt(e)(t,r,{...s,scope:[ASt.Rules]}),Wmc=e=>(t,r,s)=>uSt(e)(t,r,{...s,scope:[ASt.Settings]}),Pmc=e=>(t,r,s)=>uSt(e)(t,r,{...s,scope:[ASt.Synonyms]}),Omc=e=>(t,r)=>t.method===sp.MethodEnum.Get?e.transporter.read(t,r):e.transporter.write(t,r),Qmc=e=>(t,r)=>{let s=(a,o)=>sg.createRetryablePromise(g=>KXe(e)(t,o).then(g).catch(p=>{if(p.status!==404)throw p}));return sg.createWaitablePromise(e.transporter.write({method:sp.MethodEnum.Delete,path:sg.encode("1/keys/%s",t)},r),s)},Mmc=e=>(t,r,s)=>{let a=r.map(o=>({action:"deleteEntry",body:{objectID:o}}));return sg.createWaitablePromise(e.transporter.write({method:sp.MethodEnum.Post,path:sg.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!1,requests:a}},s),(o,g)=>yNe(e)(o.taskID,g))},Hmc=()=>(e,t)=>{let r=D9.serializeQueryParameters(t),s=xmc.createHmac("sha256",e).update(r).digest("hex");return Buffer.from(s+r).toString("base64")},KXe=e=>(t,r)=>e.transporter.read({method:sp.MethodEnum.Get,path:sg.encode("1/keys/%s",t)},r),zVi=e=>(t,r)=>e.transporter.read({method:sp.MethodEnum.Get,path:sg.encode("1/task/%s",t.toString())},r),Ymc=e=>t=>e.transporter.read({method:sp.MethodEnum.Get,path:"/1/dictionaries/*/settings"},t),Xmc=e=>t=>e.transporter.read({method:sp.MethodEnum.Get,path:"1/logs"},t),Jmc=()=>e=>{let t=Buffer.from(e,"base64").toString("ascii"),r=/validUntil=(\d+)/,s=t.match(r);if(s===null)throw jVi();return parseInt(s[1],10)-Math.round(new Date().getTime()/1e3)},Umc=e=>t=>e.transporter.read({method:sp.MethodEnum.Get,path:"1/clusters/mapping/top"},t),Kmc=e=>(t,r)=>e.transporter.read({method:sp.MethodEnum.Get,path:sg.encode("1/clusters/mapping/%s",t)},r),jmc=e=>t=>{let{retrieveMappings:r,...s}=t||{};return r===!0&&(s.getClusters=!0),e.transporter.read({method:sp.MethodEnum.Get,path:"1/clusters/mapping/pending"},s)},jXe=e=>(t,r={})=>{let s={transporter:e.transporter,appId:e.appId,indexName:t};return sg.addMethods(s,r.methods)},zmc=e=>t=>e.transporter.read({method:sp.MethodEnum.Get,path:"1/keys"},t),qmc=e=>t=>e.transporter.read({method:sp.MethodEnum.Get,path:"1/clusters"},t),$mc=e=>t=>e.transporter.read({method:sp.MethodEnum.Get,path:"1/indexes"},t),ehc=e=>t=>e.transporter.read({method:sp.MethodEnum.Get,path:"1/clusters/mapping"},t),thc=e=>(t,r,s)=>{let a=(o,g)=>jXe(e)(t,{methods:{waitTask:Gw}}).waitTask(o.taskID,g);return sg.createWaitablePromise(e.transporter.write({method:sp.MethodEnum.Post,path:sg.encode("1/indexes/%s/operation",t),data:{operation:"move",destination:r}},s),a)},rhc=e=>(t,r)=>{let s=(a,o)=>Promise.all(Object.keys(a.taskID).map(g=>jXe(e)(g,{methods:{waitTask:Gw}}).waitTask(a.taskID[g],o)));return sg.createWaitablePromise(e.transporter.write({method:sp.MethodEnum.Post,path:"1/indexes/*/batch",data:{requests:t}},r),s)},nhc=e=>(t,r)=>e.transporter.read({method:sp.MethodEnum.Post,path:"1/indexes/*/objects",data:{requests:t}},r),ihc=e=>(t,r)=>{let s=t.map(a=>({...a,params:D9.serializeQueryParameters(a.params||{})}));return e.transporter.read({method:sp.MethodEnum.Post,path:"1/indexes/*/queries",data:{requests:s},cacheable:!0},r)},shc=e=>(t,r)=>Promise.all(t.map(s=>{let{facetName:a,facetQuery:o,...g}=s.params;return jXe(e)(s.indexName,{methods:{searchForFacetValues:iWi}}).searchForFacetValues(a,o,{...r,...g})})),ohc=e=>(t,r)=>{let s=D9.createMappedRequestOptions(r);return s.queryParameters["X-Algolia-User-ID"]=t,e.transporter.write({method:sp.MethodEnum.Delete,path:"1/clusters/mapping"},s)},ahc=e=>(t,r,s)=>{let a=r.map(o=>({action:"addEntry",body:o}));return sg.createWaitablePromise(e.transporter.write({method:sp.MethodEnum.Post,path:sg.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!0,requests:a}},s),(o,g)=>yNe(e)(o.taskID,g))},chc=e=>(t,r)=>{let s=(a,o)=>sg.createRetryablePromise(g=>KXe(e)(t,o).catch(p=>{if(p.status!==404)throw p;return g()}));return sg.createWaitablePromise(e.transporter.write({method:sp.MethodEnum.Post,path:sg.encode("1/keys/%s/restore",t)},r),s)},lhc=e=>(t,r,s)=>{let a=r.map(o=>({action:"addEntry",body:o}));return sg.createWaitablePromise(e.transporter.write({method:sp.MethodEnum.Post,path:sg.encode("/1/dictionaries/%s/batch",t),data:{clearExistingDictionaryEntries:!1,requests:a}},s),(o,g)=>yNe(e)(o.taskID,g))},uhc=e=>(t,r,s)=>e.transporter.read({method:sp.MethodEnum.Post,path:sg.encode("/1/dictionaries/%s/search",t),data:{query:r},cacheable:!0},s),ghc=e=>(t,r)=>e.transporter.read({method:sp.MethodEnum.Post,path:"1/clusters/mapping/search",data:{query:t}},r),Ahc=e=>(t,r)=>sg.createWaitablePromise(e.transporter.write({method:sp.MethodEnum.Put,path:"/1/dictionaries/*/settings",data:t},r),(s,a)=>yNe(e)(s.taskID,a)),dhc=e=>(t,r)=>{let s=Object.assign({},r),{queryParameters:a,...o}=r||{},g=a?{queryParameters:a}:{},p=["acl","indexes","referers","restrictSources","queryParameters","description","maxQueriesPerIPPerHour","maxHitsPerQuery"],f=y=>Object.keys(s).filter(B=>p.indexOf(B)!==-1).every(B=>{if(Array.isArray(y[B])&&Array.isArray(s[B])){let v=y[B];return v.length===s[B].length&&v.every((k,T)=>k===s[B][T])}else return y[B]===s[B]}),m=(y,B)=>sg.createRetryablePromise(v=>KXe(e)(t,B).then(k=>f(k)?Promise.resolve():v()));return sg.createWaitablePromise(e.transporter.write({method:sp.MethodEnum.Put,path:sg.encode("1/keys/%s",t),data:g},o),m)},yNe=e=>(t,r)=>sg.createRetryablePromise(s=>zVi(e)(t,r).then(a=>a.status!=="published"?s():void 0)),qVi=e=>(t,r)=>{let s=(a,o)=>Gw(e)(a.taskID,o);return sg.createWaitablePromise(e.transporter.write({method:sp.MethodEnum.Post,path:sg.encode("1/indexes/%s/batch",e.indexName),data:{requests:t}},r),s)},phc=e=>t=>lSt({shouldStop:r=>r.cursor===void 0,...t,request:r=>e.transporter.read({method:sp.MethodEnum.Post,path:sg.encode("1/indexes/%s/browse",e.indexName),data:r},t)}),fhc=e=>t=>{let r={hitsPerPage:1e3,...t};return lSt({shouldStop:s=>s.hits.length({...a,hits:a.hits.map(o=>(delete o._highlightResult,o))}))}})},Ihc=e=>t=>{let r={hitsPerPage:1e3,...t};return lSt({shouldStop:s=>s.hits.length({...a,hits:a.hits.map(o=>(delete o._highlightResult,o))}))}})},gSt=e=>(t,r,s)=>{let{batchSize:a,...o}=s||{},g={taskIDs:[],objectIDs:[]},p=(f=0)=>{let m=[],y;for(y=f;y({action:r,body:B})),o).then(B=>(g.objectIDs=g.objectIDs.concat(B.objectIDs),g.taskIDs.push(B.taskID),y++,p(y)))};return sg.createWaitablePromise(p(),(f,m)=>Promise.all(f.taskIDs.map(y=>Gw(e)(y,m))))},Chc=e=>t=>sg.createWaitablePromise(e.transporter.write({method:sp.MethodEnum.Post,path:sg.encode("1/indexes/%s/clear",e.indexName)},t),(r,s)=>Gw(e)(r.taskID,s)),mhc=e=>t=>{let{forwardToReplicas:r,...s}=t||{},a=D9.createMappedRequestOptions(s);return r&&(a.queryParameters.forwardToReplicas=1),sg.createWaitablePromise(e.transporter.write({method:sp.MethodEnum.Post,path:sg.encode("1/indexes/%s/rules/clear",e.indexName)},a),(o,g)=>Gw(e)(o.taskID,g))},hhc=e=>t=>{let{forwardToReplicas:r,...s}=t||{},a=D9.createMappedRequestOptions(s);return r&&(a.queryParameters.forwardToReplicas=1),sg.createWaitablePromise(e.transporter.write({method:sp.MethodEnum.Post,path:sg.encode("1/indexes/%s/synonyms/clear",e.indexName)},a),(o,g)=>Gw(e)(o.taskID,g))},_hc=e=>(t,r)=>sg.createWaitablePromise(e.transporter.write({method:sp.MethodEnum.Post,path:sg.encode("1/indexes/%s/deleteByQuery",e.indexName),data:t},r),(s,a)=>Gw(e)(s.taskID,a)),yhc=e=>t=>sg.createWaitablePromise(e.transporter.write({method:sp.MethodEnum.Delete,path:sg.encode("1/indexes/%s",e.indexName)},t),(r,s)=>Gw(e)(r.taskID,s)),bhc=e=>(t,r)=>sg.createWaitablePromise($Vi(e)([t],r).then(s=>({taskID:s.taskIDs[0]})),(s,a)=>Gw(e)(s.taskID,a)),$Vi=e=>(t,r)=>{let s=t.map(a=>({objectID:a}));return gSt(e)(s,rCe.DeleteObject,r)},Ehc=e=>(t,r)=>{let{forwardToReplicas:s,...a}=r||{},o=D9.createMappedRequestOptions(a);return s&&(o.queryParameters.forwardToReplicas=1),sg.createWaitablePromise(e.transporter.write({method:sp.MethodEnum.Delete,path:sg.encode("1/indexes/%s/rules/%s",e.indexName,t)},o),(g,p)=>Gw(e)(g.taskID,p))},Bhc=e=>(t,r)=>{let{forwardToReplicas:s,...a}=r||{},o=D9.createMappedRequestOptions(a);return s&&(o.queryParameters.forwardToReplicas=1),sg.createWaitablePromise(e.transporter.write({method:sp.MethodEnum.Delete,path:sg.encode("1/indexes/%s/synonyms/%s",e.indexName,t)},o),(g,p)=>Gw(e)(g.taskID,p))},vhc=e=>t=>eWi(e)(t).then(()=>!0).catch(r=>{if(r.status!==404)throw r;return!1}),Shc=e=>(t,r,s)=>e.transporter.read({method:sp.MethodEnum.Post,path:sg.encode("1/answers/%s/prediction",e.indexName),data:{query:t,queryLanguages:r},cacheable:!0},s),whc=e=>(t,r)=>{let{query:s,paginate:a,...o}=r||{},g=0,p=()=>nWi(e)(s||"",{...o,page:g}).then(f=>{for(let[m,y]of Object.entries(f.hits))if(t(y))return{object:y,position:parseInt(m,10),page:g};if(g++,a===!1||g>=f.nbPages)throw KVi();return p()});return p()},Thc=e=>(t,r)=>e.transporter.read({method:sp.MethodEnum.Get,path:sg.encode("1/indexes/%s/%s",e.indexName,t)},r),Nhc=()=>(e,t)=>{for(let[r,s]of Object.entries(e.hits))if(s.objectID===t)return parseInt(r,10);return-1},Rhc=e=>(t,r)=>{let{attributesToRetrieve:s,...a}=r||{},o=t.map(g=>({indexName:e.indexName,objectID:g,...s?{attributesToRetrieve:s}:{}}));return e.transporter.read({method:sp.MethodEnum.Post,path:"1/indexes/*/objects",data:{requests:o}},a)},Dhc=e=>(t,r)=>e.transporter.read({method:sp.MethodEnum.Get,path:sg.encode("1/indexes/%s/rules/%s",e.indexName,t)},r),eWi=e=>t=>e.transporter.read({method:sp.MethodEnum.Get,path:sg.encode("1/indexes/%s/settings",e.indexName),data:{getVersion:2}},t),xhc=e=>(t,r)=>e.transporter.read({method:sp.MethodEnum.Get,path:sg.encode("1/indexes/%s/synonyms/%s",e.indexName,t)},r),tWi=e=>(t,r)=>e.transporter.read({method:sp.MethodEnum.Get,path:sg.encode("1/indexes/%s/task/%s",e.indexName,t.toString())},r),khc=e=>(t,r)=>sg.createWaitablePromise(rWi(e)([t],r).then(s=>({objectID:s.objectIDs[0],taskID:s.taskIDs[0]})),(s,a)=>Gw(e)(s.taskID,a)),rWi=e=>(t,r)=>{let{createIfNotExists:s,...a}=r||{},o=s?rCe.PartialUpdateObject:rCe.PartialUpdateObjectNoCreate;return gSt(e)(t,o,a)},Ghc=e=>(t,r)=>{let{safe:s,autoGenerateObjectIDIfNotExist:a,batchSize:o,...g}=r||{},p=(T,O,X,U)=>sg.createWaitablePromise(e.transporter.write({method:sp.MethodEnum.Post,path:sg.encode("1/indexes/%s/operation",T),data:{operation:X,destination:O}},U),(le,ae)=>Gw(e)(le.taskID,ae)),f=Math.random().toString(36).substring(7),m=`${e.indexName}_tmp_${f}`,y=Tvr({appId:e.appId,transporter:e.transporter,indexName:m}),B=[],v=p(e.indexName,m,"copy",{...g,scope:["settings","synonyms","rules"]});B.push(v);let k=(s?v.wait(g):v).then(()=>{let T=y(t,{...g,autoGenerateObjectIDIfNotExist:a,batchSize:o});return B.push(T),s?T.wait(g):T}).then(()=>{let T=p(m,e.indexName,"move",g);return B.push(T),s?T.wait(g):T}).then(()=>Promise.all(B)).then(([T,O,X])=>({objectIDs:O.objectIDs,taskIDs:[T.taskID,...O.taskIDs,X.taskID]}));return sg.createWaitablePromise(k,(T,O)=>Promise.all(B.map(X=>X.wait(O))))},Fhc=e=>(t,r)=>Nvr(e)(t,{...r,clearExistingRules:!0}),Zhc=e=>(t,r)=>Rvr(e)(t,{...r,clearExistingSynonyms:!0}),Lhc=e=>(t,r)=>sg.createWaitablePromise(Tvr(e)([t],r).then(s=>({objectID:s.objectIDs[0],taskID:s.taskIDs[0]})),(s,a)=>Gw(e)(s.taskID,a)),Tvr=e=>(t,r)=>{let{autoGenerateObjectIDIfNotExist:s,...a}=r||{},o=s?rCe.AddObject:rCe.UpdateObject;if(o===rCe.UpdateObject){for(let g of t)if(g.objectID===void 0)return sg.createWaitablePromise(Promise.reject(UVi()))}return gSt(e)(t,o,a)},Vhc=e=>(t,r)=>Nvr(e)([t],r),Nvr=e=>(t,r)=>{let{forwardToReplicas:s,clearExistingRules:a,...o}=r||{},g=D9.createMappedRequestOptions(o);return s&&(g.queryParameters.forwardToReplicas=1),a&&(g.queryParameters.clearExistingRules=1),sg.createWaitablePromise(e.transporter.write({method:sp.MethodEnum.Post,path:sg.encode("1/indexes/%s/rules/batch",e.indexName),data:t},g),(p,f)=>Gw(e)(p.taskID,f))},Whc=e=>(t,r)=>Rvr(e)([t],r),Rvr=e=>(t,r)=>{let{forwardToReplicas:s,clearExistingSynonyms:a,replaceExistingSynonyms:o,...g}=r||{},p=D9.createMappedRequestOptions(g);return s&&(p.queryParameters.forwardToReplicas=1),(o||a)&&(p.queryParameters.replaceExistingSynonyms=1),sg.createWaitablePromise(e.transporter.write({method:sp.MethodEnum.Post,path:sg.encode("1/indexes/%s/synonyms/batch",e.indexName),data:t},p),(f,m)=>Gw(e)(f.taskID,m))},nWi=e=>(t,r)=>e.transporter.read({method:sp.MethodEnum.Post,path:sg.encode("1/indexes/%s/query",e.indexName),data:{query:t},cacheable:!0},r),iWi=e=>(t,r,s)=>e.transporter.read({method:sp.MethodEnum.Post,path:sg.encode("1/indexes/%s/facets/%s/query",e.indexName,t),data:{facetQuery:r},cacheable:!0},s),sWi=e=>(t,r)=>e.transporter.read({method:sp.MethodEnum.Post,path:sg.encode("1/indexes/%s/rules/search",e.indexName),data:{query:t}},r),oWi=e=>(t,r)=>e.transporter.read({method:sp.MethodEnum.Post,path:sg.encode("1/indexes/%s/synonyms/search",e.indexName),data:{query:t}},r),Phc=e=>(t,r)=>{let{forwardToReplicas:s,...a}=r||{},o=D9.createMappedRequestOptions(a);return s&&(o.queryParameters.forwardToReplicas=1),sg.createWaitablePromise(e.transporter.write({method:sp.MethodEnum.Put,path:sg.encode("1/indexes/%s/settings",e.indexName),data:t},o),(g,p)=>Gw(e)(g.taskID,p))},Gw=e=>(t,r)=>sg.createRetryablePromise(s=>tWi(e)(t,r).then(a=>a.status!=="published"?s():void 0)),Ohc={AddObject:"addObject",Analytics:"analytics",Browser:"browse",DeleteIndex:"deleteIndex",DeleteObject:"deleteObject",EditSettings:"editSettings",Inference:"inference",ListIndexes:"listIndexes",Logs:"logs",Personalization:"personalization",Recommendation:"recommendation",Search:"search",SeeUnretrievableAttributes:"seeUnretrievableAttributes",Settings:"settings",Usage:"usage"},rCe={AddObject:"addObject",UpdateObject:"updateObject",PartialUpdateObject:"partialUpdateObject",PartialUpdateObjectNoCreate:"partialUpdateObjectNoCreate",DeleteObject:"deleteObject",DeleteIndex:"delete",ClearIndex:"clear"},ASt={Settings:"settings",Synonyms:"synonyms",Rules:"rules"},Qhc={None:"none",StopIfEnoughMatches:"stopIfEnoughMatches"},Mhc={Synonym:"synonym",OneWaySynonym:"oneWaySynonym",AltCorrection1:"altCorrection1",AltCorrection2:"altCorrection2",Placeholder:"placeholder"};Ql.ApiKeyACLEnum=Ohc;Ql.BatchActionEnum=rCe;Ql.ScopeEnum=ASt;Ql.StrategyEnum=Qhc;Ql.SynonymEnum=Mhc;Ql.addApiKey=Gmc;Ql.assignUserID=Fmc;Ql.assignUserIDs=Zmc;Ql.batch=qVi;Ql.browseObjects=phc;Ql.browseRules=fhc;Ql.browseSynonyms=Ihc;Ql.chunkedBatch=gSt;Ql.clearDictionaryEntries=Lmc;Ql.clearObjects=Chc;Ql.clearRules=mhc;Ql.clearSynonyms=hhc;Ql.copyIndex=uSt;Ql.copyRules=Vmc;Ql.copySettings=Wmc;Ql.copySynonyms=Pmc;Ql.createBrowsablePromise=lSt;Ql.createMissingObjectIDError=UVi;Ql.createObjectNotFoundError=KVi;Ql.createSearchClient=kmc;Ql.createValidUntilNotFoundError=jVi;Ql.customRequest=Omc;Ql.deleteApiKey=Qmc;Ql.deleteBy=_hc;Ql.deleteDictionaryEntries=Mmc;Ql.deleteIndex=yhc;Ql.deleteObject=bhc;Ql.deleteObjects=$Vi;Ql.deleteRule=Ehc;Ql.deleteSynonym=Bhc;Ql.exists=vhc;Ql.findAnswers=Shc;Ql.findObject=whc;Ql.generateSecuredApiKey=Hmc;Ql.getApiKey=KXe;Ql.getAppTask=zVi;Ql.getDictionarySettings=Ymc;Ql.getLogs=Xmc;Ql.getObject=Thc;Ql.getObjectPosition=Nhc;Ql.getObjects=Rhc;Ql.getRule=Dhc;Ql.getSecuredApiKeyRemainingValidity=Jmc;Ql.getSettings=eWi;Ql.getSynonym=xhc;Ql.getTask=tWi;Ql.getTopUserIDs=Umc;Ql.getUserID=Kmc;Ql.hasPendingMappings=jmc;Ql.initIndex=jXe;Ql.listApiKeys=zmc;Ql.listClusters=qmc;Ql.listIndices=$mc;Ql.listUserIDs=ehc;Ql.moveIndex=thc;Ql.multipleBatch=rhc;Ql.multipleGetObjects=nhc;Ql.multipleQueries=ihc;Ql.multipleSearchForFacetValues=shc;Ql.partialUpdateObject=khc;Ql.partialUpdateObjects=rWi;Ql.removeUserID=ohc;Ql.replaceAllObjects=Ghc;Ql.replaceAllRules=Fhc;Ql.replaceAllSynonyms=Zhc;Ql.replaceDictionaryEntries=ahc;Ql.restoreApiKey=chc;Ql.saveDictionaryEntries=lhc;Ql.saveObject=Lhc;Ql.saveObjects=Tvr;Ql.saveRule=Vhc;Ql.saveRules=Nvr;Ql.saveSynonym=Whc;Ql.saveSynonyms=Rvr;Ql.search=nWi;Ql.searchDictionaryEntries=uhc;Ql.searchForFacetValues=iWi;Ql.searchRules=sWi;Ql.searchSynonyms=oWi;Ql.searchUserIDs=ghc;Ql.setDictionarySettings=Ahc;Ql.setSettings=Phc;Ql.updateApiKey=dhc;Ql.waitAppTask=yNe;Ql.waitTask=Gw});var lWi=z((Z5l,cWi)=>{cWi.exports=aWi()});var uWi=z(dSt=>{"use strict";Object.defineProperty(dSt,"__esModule",{value:!0});function Hhc(){return{debug(e,t){return Promise.resolve()},info(e,t){return Promise.resolve()},error(e,t){return Promise.resolve()}}}var Yhc={Debug:1,Info:2,Error:3};dSt.LogLevelEnum=Yhc;dSt.createNullLogger=Hhc});var Dvr=z((V5l,gWi)=>{gWi.exports=uWi()});var fWi=z(xvr=>{"use strict";Object.defineProperty(xvr,"__esModule",{value:!0});var AWi=xt("http"),dWi=xt("https"),Xhc=xt("url"),pWi={keepAlive:!0},Jhc=new AWi.Agent(pWi),Uhc=new dWi.Agent(pWi);function Khc({agent:e,httpAgent:t,httpsAgent:r,requesterOptions:s={}}={}){let a=t||e||Jhc,o=r||e||Uhc;return{send(g){return new Promise(p=>{let f=Xhc.parse(g.url),m=f.query===null?f.pathname:`${f.pathname}?${f.query}`,y={...s,agent:f.protocol==="https:"?o:a,hostname:f.hostname,path:m,method:g.method,headers:{...s&&s.headers?s.headers:{},...g.headers},...f.port!==void 0?{port:f.port||""}:{}},B=(f.protocol==="https:"?dWi:AWi).request(y,O=>{let X=[];O.on("data",U=>{X=X.concat(U)}),O.on("end",()=>{clearTimeout(k),clearTimeout(T),p({status:O.statusCode||0,content:Buffer.concat(X).toString(),isTimedOut:!1})})}),v=(O,X)=>setTimeout(()=>{B.abort(),p({status:0,content:X,isTimedOut:!0})},O*1e3),k=v(g.connectTimeout,"Connection timeout"),T;B.on("error",O=>{clearTimeout(k),clearTimeout(T),p({status:0,content:O.message,isTimedOut:!1})}),B.once("response",()=>{clearTimeout(k),T=v(g.responseTimeout,"Socket timeout")}),g.data!==void 0&&B.write(g.data),B.end()})},destroy(){return a.destroy(),o.destroy(),Promise.resolve()}}}xvr.createNodeHttpRequester=Khc});var kvr=z((P5l,IWi)=>{IWi.exports=fWi()});var vWi=z((O5l,BWi)=>{"use strict";var CWi=Cvr(),jhc=hvr(),Cae=INe(),zhc=Dvr(),qhc=kvr(),pSt=hNe(),fSt=CNe(),$hc=e=>{let t=e.appId,r=Cae.createAuth(e.authMode!==void 0?e.authMode:Cae.AuthMode.WithinHeaders,t,e.apiKey),s=pSt.createTransporter({hosts:[{url:`${t}-dsn.algolia.net`,accept:pSt.CallEnum.Read},{url:`${t}.algolia.net`,accept:pSt.CallEnum.Write}].concat(Cae.shuffle([{url:`${t}-1.algolianet.com`},{url:`${t}-2.algolianet.com`},{url:`${t}-3.algolianet.com`}])),...e,headers:{...r.headers(),"content-type":"application/x-www-form-urlencoded",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}}),a={transporter:s,appId:t,addAlgoliaAgent(o,g){s.userAgent.add({segment:o,version:g})},clearCache(){return Promise.all([s.requestsCache.clear(),s.responsesCache.clear()]).then(()=>{})}};return Cae.addMethods(a,e.methods)},zXe=e=>(t,r)=>{let s=t.map(a=>({...a,threshold:a.threshold||0}));return e.transporter.read({method:fSt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:s},cacheable:!0},r)},mWi=e=>(t,r)=>zXe(e)(t.map(s=>({...s,fallbackParameters:{},model:"bought-together"})),r),hWi=e=>(t,r)=>zXe(e)(t.map(s=>({...s,model:"related-products"})),r),_Wi=e=>(t,r)=>{let s=t.map(a=>({...a,model:"trending-facets",threshold:a.threshold||0}));return e.transporter.read({method:fSt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:s},cacheable:!0},r)},yWi=e=>(t,r)=>{let s=t.map(a=>({...a,model:"trending-items",threshold:a.threshold||0}));return e.transporter.read({method:fSt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:s},cacheable:!0},r)},bWi=e=>(t,r)=>zXe(e)(t.map(s=>({...s,model:"looking-similar"})),r),EWi=e=>(t,r)=>{let s=t.map(a=>({...a,model:"recommended-for-you",threshold:a.threshold||0}));return e.transporter.read({method:fSt.MethodEnum.Post,path:"1/indexes/*/recommendations",data:{requests:s},cacheable:!0},r)};function Wq(e,t,r){let s={appId:e,apiKey:t,timeouts:{connect:2,read:5,write:30},requester:qhc.createNodeHttpRequester(),logger:zhc.createNullLogger(),responsesCache:CWi.createNullCache(),requestsCache:CWi.createNullCache(),hostsCache:jhc.createInMemoryCache(),userAgent:pSt.createUserAgent(Cae.version).add({segment:"Recommend",version:Cae.version}).add({segment:"Node.js",version:process.versions.node})};return $hc({...s,...r,methods:{destroy:Cae.destroy,getFrequentlyBoughtTogether:mWi,getRecommendations:zXe,getRelatedProducts:hWi,getTrendingFacets:_Wi,getTrendingItems:yWi,getLookingSimilar:bWi,getRecommendedForYou:EWi}})}Wq.version=Cae.version;Wq.getFrequentlyBoughtTogether=mWi;Wq.getRecommendations=zXe;Wq.getRelatedProducts=hWi;Wq.getTrendingFacets=_Wi;Wq.getTrendingItems=yWi;Wq.getLookingSimilar=bWi;Wq.getRecommendedForYou=EWi;BWi.exports=Wq});var wWi=z((Q5l,Gvr)=>{var SWi=vWi();Gvr.exports=SWi;Gvr.exports.default=SWi});var DWi=z((M5l,RWi)=>{"use strict";var TWi=Cvr(),e_c=hvr(),bNe=MVi(),Zvr=INe(),Fvr=JVi(),Ru=lWi(),t_c=Dvr(),nCe=wWi(),r_c=kvr(),n_c=hNe();function NWi(e,t,r){let s={appId:e,apiKey:t,timeouts:{connect:2,read:5,write:30},requester:r_c.createNodeHttpRequester(),logger:t_c.createNullLogger(),responsesCache:TWi.createNullCache(),requestsCache:TWi.createNullCache(),hostsCache:e_c.createInMemoryCache(),userAgent:n_c.createUserAgent(Zvr.version).add({segment:"Node.js",version:process.versions.node})},a={...s,...r},o=()=>g=>Fvr.createPersonalizationClient({...s,...g,methods:{getPersonalizationStrategy:Fvr.getPersonalizationStrategy,setPersonalizationStrategy:Fvr.setPersonalizationStrategy}});return Ru.createSearchClient({...a,methods:{search:Ru.multipleQueries,searchForFacetValues:Ru.multipleSearchForFacetValues,multipleBatch:Ru.multipleBatch,multipleGetObjects:Ru.multipleGetObjects,multipleQueries:Ru.multipleQueries,copyIndex:Ru.copyIndex,copySettings:Ru.copySettings,copyRules:Ru.copyRules,copySynonyms:Ru.copySynonyms,moveIndex:Ru.moveIndex,listIndices:Ru.listIndices,getLogs:Ru.getLogs,listClusters:Ru.listClusters,multipleSearchForFacetValues:Ru.multipleSearchForFacetValues,getApiKey:Ru.getApiKey,addApiKey:Ru.addApiKey,listApiKeys:Ru.listApiKeys,updateApiKey:Ru.updateApiKey,deleteApiKey:Ru.deleteApiKey,restoreApiKey:Ru.restoreApiKey,assignUserID:Ru.assignUserID,assignUserIDs:Ru.assignUserIDs,getUserID:Ru.getUserID,searchUserIDs:Ru.searchUserIDs,listUserIDs:Ru.listUserIDs,getTopUserIDs:Ru.getTopUserIDs,removeUserID:Ru.removeUserID,hasPendingMappings:Ru.hasPendingMappings,generateSecuredApiKey:Ru.generateSecuredApiKey,getSecuredApiKeyRemainingValidity:Ru.getSecuredApiKeyRemainingValidity,destroy:Zvr.destroy,clearDictionaryEntries:Ru.clearDictionaryEntries,deleteDictionaryEntries:Ru.deleteDictionaryEntries,getDictionarySettings:Ru.getDictionarySettings,getAppTask:Ru.getAppTask,replaceDictionaryEntries:Ru.replaceDictionaryEntries,saveDictionaryEntries:Ru.saveDictionaryEntries,searchDictionaryEntries:Ru.searchDictionaryEntries,setDictionarySettings:Ru.setDictionarySettings,waitAppTask:Ru.waitAppTask,customRequest:Ru.customRequest,initIndex:g=>p=>Ru.initIndex(g)(p,{methods:{batch:Ru.batch,delete:Ru.deleteIndex,findAnswers:Ru.findAnswers,getObject:Ru.getObject,getObjects:Ru.getObjects,saveObject:Ru.saveObject,saveObjects:Ru.saveObjects,search:Ru.search,searchForFacetValues:Ru.searchForFacetValues,waitTask:Ru.waitTask,setSettings:Ru.setSettings,getSettings:Ru.getSettings,partialUpdateObject:Ru.partialUpdateObject,partialUpdateObjects:Ru.partialUpdateObjects,deleteObject:Ru.deleteObject,deleteObjects:Ru.deleteObjects,deleteBy:Ru.deleteBy,clearObjects:Ru.clearObjects,browseObjects:Ru.browseObjects,getObjectPosition:Ru.getObjectPosition,findObject:Ru.findObject,exists:Ru.exists,saveSynonym:Ru.saveSynonym,saveSynonyms:Ru.saveSynonyms,getSynonym:Ru.getSynonym,searchSynonyms:Ru.searchSynonyms,browseSynonyms:Ru.browseSynonyms,deleteSynonym:Ru.deleteSynonym,clearSynonyms:Ru.clearSynonyms,replaceAllObjects:Ru.replaceAllObjects,replaceAllSynonyms:Ru.replaceAllSynonyms,searchRules:Ru.searchRules,getRule:Ru.getRule,deleteRule:Ru.deleteRule,saveRule:Ru.saveRule,saveRules:Ru.saveRules,replaceAllRules:Ru.replaceAllRules,browseRules:Ru.browseRules,clearRules:Ru.clearRules}}),initAnalytics:()=>g=>bNe.createAnalyticsClient({...s,...g,methods:{addABTest:bNe.addABTest,getABTest:bNe.getABTest,getABTests:bNe.getABTests,stopABTest:bNe.stopABTest,deleteABTest:bNe.deleteABTest}}),initPersonalization:o,initRecommendation:()=>g=>(a.logger.info("The `initRecommendation` method is deprecated. Use `initPersonalization` instead."),o()(g)),getRecommendations:nCe.getRecommendations,getFrequentlyBoughtTogether:nCe.getFrequentlyBoughtTogether,getLookingSimilar:nCe.getLookingSimilar,getRecommendedForYou:nCe.getRecommendedForYou,getRelatedProducts:nCe.getRelatedProducts,getTrendingFacets:nCe.getTrendingFacets,getTrendingItems:nCe.getTrendingItems}})}NWi.version=Zvr.version;RWi.exports=NWi});var Vvr=z((H5l,Lvr)=>{var xWi=DWi();Lvr.exports=xWi;Lvr.exports.default=xWi});var kWi=z(ISt=>{"use strict";Object.defineProperty(ISt,"__esModule",{value:!0});ISt.search=void 0;var i_c=(Oa(),Ai(Pa)),s_c=i_c.__importDefault(Vvr()),Wvr={appId:"OFCNCOG2CU",apiKey:"6fe4476ee5a1832882e326b506d14126",indexName:"npm-search"},o_c=(0,s_c.default)(Wvr.appId,Wvr.apiKey).initIndex(Wvr.indexName),a_c=async(e,t=0)=>await o_c.search(e,{analyticsTags:["yarn-plugin-interactive-tools"],attributesToRetrieve:["name","version","owner","repository","humanDownloadsLast30Days"],page:t,hitsPerPage:10});ISt.search=a_c});var KWi=z(Xh=>{"use strict";var Ovr=bct(),ENe=60103,ZWi=60106;Xh.Fragment=60107;Xh.StrictMode=60108;Xh.Profiler=60114;var LWi=60109,VWi=60110,WWi=60112;Xh.Suspense=60113;var PWi=60115,OWi=60116;typeof Symbol=="function"&&Symbol.for&&(XQ=Symbol.for,ENe=XQ("react.element"),ZWi=XQ("react.portal"),Xh.Fragment=XQ("react.fragment"),Xh.StrictMode=XQ("react.strict_mode"),Xh.Profiler=XQ("react.profiler"),LWi=XQ("react.provider"),VWi=XQ("react.context"),WWi=XQ("react.forward_ref"),Xh.Suspense=XQ("react.suspense"),PWi=XQ("react.memo"),OWi=XQ("react.lazy"));var XQ,GWi=typeof Symbol=="function"&&Symbol.iterator;function c_c(e){return e===null||typeof e!="object"?null:(e=GWi&&e[GWi]||e["@@iterator"],typeof e=="function"?e:null)}function qXe(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,r=1;r{"use strict";jWi.exports=KWi()});var e3i=z($Xe=>{"use strict";var $Wi=$Xe&&$Xe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty($Xe,"__esModule",{value:!0});var zWi=$Wi(kWe()),qWi=$Wi(i1e()),d_c=(e,{showCursor:t=!1}={})=>{let r=0,s="",a=!1,o=g=>{!t&&!a&&(qWi.default.hide(),a=!0);let p=g+` +`;p!==s&&(s=p,e.write(zWi.default.eraseLines(r)+p),r=p.split(` +`).length)};return o.clear=()=>{e.write(zWi.default.eraseLines(r)),s="",r=0},o.done=()=>{s="",r=0,t||(qWi.default.show(),a=!1)},o};$Xe.default={create:d_c}});var t3i=z((K5l,e4e)=>{e4e.exports=function(t){var r={},s=bct(),a=Om(),o=PWe();function g(G){for(var L="https://reactjs.org/docs/error-decoder.html?invariant="+G,ee=1;eeXr||xe[nr]!==gt[Xr])return` -`+xe[nr].replace(" at new "," at ");while(1<=nr&&0<=Xr);break}}}finally{on=!1,Error.prepareStackTrace=ee}return(k=k?k.displayName||k.name:"")?og(k):""}var $g=[],cA=-1;function HA(k){return{current:k}}function No(k){0>cA||(k.current=$g[cA],$g[cA]=null,cA--)}function Hl(k,L){cA++,$g[cA]=k.current,k.current=L}var Ff={},Vd=HA(Ff),bA=HA(!1),Os=Ff;function Hi(k,L){var ee=k.type.contextTypes;if(!ee)return Ff;var ve=k.stateNode;if(ve&&ve.__reactInternalMemoizedUnmaskedChildContext===L)return ve.__reactInternalMemoizedMaskedChildContext;var xe={},gt;for(gt in ee)xe[gt]=L[gt];return ve&&(k=k.stateNode,k.__reactInternalMemoizedUnmaskedChildContext=L,k.__reactInternalMemoizedMaskedChildContext=xe),xe}function ec(k){return k=k.childContextTypes,k!=null}function ll(){No(bA),No(Vd)}function Ts(k,L,ee){if(Vd.current!==Ff)throw Error(g(168));Hl(Vd,L),Hl(bA,ee)}function NA(k,L,ee){var ve=k.stateNode;if(k=L.childContextTypes,typeof ve.getChildContext!="function")return ee;ve=ve.getChildContext();for(var xe in ve)if(!(xe in k))throw Error(g(108,x(L)||"Unknown",xe));return s({},ee,ve)}function Ud(k){return k=(k=k.stateNode)&&k.__reactInternalMemoizedMergedChildContext||Ff,Os=Vd.current,Hl(Vd,k),Hl(bA,bA.current),!0}function Ra(k,L,ee){var ve=k.stateNode;if(!ve)throw Error(g(169));ee?(k=NA(k,L,Os),ve.__reactInternalMemoizedMergedChildContext=k,No(bA),No(Vd),Hl(Vd,k)):No(bA),Hl(bA,ee)}var ys=null,Xa=null,cm=o.unstable_now;cm();var eo=0,ps=8;function oc(k){if(1&k)return ps=15,1;if(2&k)return ps=14,2;if(4&k)return ps=13,4;var L=24&k;return L!==0?(ps=12,L):k&32?(ps=11,32):(L=192&k,L!==0?(ps=10,L):k&256?(ps=9,256):(L=3584&k,L!==0?(ps=8,L):k&4096?(ps=7,4096):(L=4186112&k,L!==0?(ps=6,L):(L=62914560&k,L!==0?(ps=5,L):k&67108864?(ps=4,67108864):k&134217728?(ps=3,134217728):(L=805306368&k,L!==0?(ps=2,L):1073741824&k?(ps=1,1073741824):(ps=8,k))))))}function TC(k){switch(k){case 99:return 15;case 98:return 10;case 97:case 96:return 8;case 95:return 2;default:return 0}}function pI(k){switch(k){case 15:case 14:return 99;case 13:case 12:case 11:case 10:return 98;case 9:case 8:case 7:case 6:case 4:case 5:return 97;case 3:case 2:case 1:return 95;case 0:return 90;default:throw Error(g(358,k))}}function SI(k,L){var ee=k.pendingLanes;if(ee===0)return ps=0;var ve=0,xe=0,gt=k.expiredLanes,nr=k.suspendedLanes,Xr=k.pingedLanes;if(gt!==0)ve=gt,xe=ps=15;else if(gt=ee&134217727,gt!==0){var Kn=gt&~nr;Kn!==0?(ve=oc(Kn),xe=ps):(Xr&=gt,Xr!==0&&(ve=oc(Xr),xe=ps))}else gt=ee&~nr,gt!==0?(ve=oc(gt),xe=ps):Xr!==0&&(ve=oc(Xr),xe=ps);if(ve===0)return 0;if(ve=31-iu(ve),ve=ee&((0>ve?0:1<ee;ee++)L.push(k);return L}function za(k,L,ee){k.pendingLanes|=L;var ve=L-1;k.suspendedLanes&=ve,k.pingedLanes&=ve,k=k.eventTimes,L=31-iu(L),k[L]=ee}var iu=Math.clz32?Math.clz32:Jh,ii=Math.log,NC=Math.LN2;function Jh(k){return k===0?32:31-(ii(k)/NC|0)|0}var Tm=o.unstable_runWithPriority,_l=o.unstable_scheduleCallback,Og=o.unstable_cancelCallback,sp=o.unstable_shouldYield,lm=o.unstable_requestPaint,ch=o.unstable_now,Xl=o.unstable_getCurrentPriorityLevel,Wp=o.unstable_ImmediatePriority,uC=o.unstable_UserBlockingPriority,fs=o.unstable_NormalPriority,Ao=o.unstable_LowPriority,Do=o.unstable_IdlePriority,zl={},Nr=lm!==void 0?lm:function(){},Nn=null,Di=null,na=!1,Ks=ch(),Li=1e4>Ks?ch:function(){return ch()-Ks};function Zl(){switch(Xl()){case Wp:return 99;case uC:return 98;case fs:return 97;case Ao:return 96;case Do:return 95;default:throw Error(g(332))}}function RA(k){switch(k){case 99:return Wp;case 98:return uC;case 97:return fs;case 96:return Ao;case 95:return Do;default:throw Error(g(332))}}function Nd(k,L){return k=RA(k),Tm(k,L)}function WI(k,L,ee){return k=RA(k),_l(k,L,ee)}function pl(){if(Di!==null){var k=Di;Di=null,Og(k)}Qm()}function Qm(){if(!na&&Nn!==null){na=!0;var k=0;try{var L=Nn;Nd(99,function(){for(;kXu?(Lu=pc,pc=null):Lu=pc.sibling;var Rc=Eo(Sn,pc,Hn[Xu],Fo);if(Rc===null){pc===null&&(pc=Lu);break}k&&pc&&Rc.alternate===null&&L(Sn,pc),vr=gt(Rc,vr,Xu),dA===null?tc=Rc:dA.sibling=Rc,dA=Rc,pc=Lu}if(Xu===Hn.length)return ee(Sn,pc),tc;if(pc===null){for(;XuXu?(Lu=pc,pc=null):Lu=pc.sibling;var Mp=Eo(Sn,pc,Rc.value,Fo);if(Mp===null){pc===null&&(pc=Lu);break}k&&pc&&Mp.alternate===null&&L(Sn,pc),vr=gt(Mp,vr,Xu),dA===null?tc=Mp:dA.sibling=Mp,dA=Mp,pc=Lu}if(Rc.done)return ee(Sn,pc),tc;if(pc===null){for(;!Rc.done;Xu++,Rc=Hn.next())Rc=el(Sn,Rc.value,Fo),Rc!==null&&(vr=gt(Rc,vr,Xu),dA===null?tc=Rc:dA.sibling=Rc,dA=Rc);return tc}for(pc=ve(Sn,pc);!Rc.done;Xu++,Rc=Hn.next())Rc=vg(pc,Sn,Xu,Rc.value,Fo),Rc!==null&&(k&&Rc.alternate!==null&&pc.delete(Rc.key===null?Xu:Rc.key),vr=gt(Rc,vr,Xu),dA===null?tc=Rc:dA.sibling=Rc,dA=Rc);return k&&pc.forEach(function(jy){return L(Sn,jy)}),tc}return function(Sn,vr,Hn,Fo){var tc=typeof Hn=="object"&&Hn!==null&&Hn.type===y&&Hn.key===null;tc&&(Hn=Hn.props.children);var dA=typeof Hn=="object"&&Hn!==null;if(dA)switch(Hn.$$typeof){case f:e:{for(dA=Hn.key,tc=vr;tc!==null;){if(tc.key===dA){switch(tc.tag){case 7:if(Hn.type===y){ee(Sn,tc.sibling),vr=xe(tc,Hn.props.children),vr.return=Sn,Sn=vr;break e}break;default:if(tc.elementType===Hn.type){ee(Sn,tc.sibling),vr=xe(tc,Hn.props),vr.ref=wr(Sn,tc,Hn),vr.return=Sn,Sn=vr;break e}}ee(Sn,tc);break}else L(Sn,tc);tc=tc.sibling}Hn.type===y?(vr=fp(Hn.props.children,Sn.mode,Fo,Hn.key),vr.return=Sn,Sn=vr):(Fo=C2(Hn.type,Hn.key,Hn.props,null,Sn.mode,Fo),Fo.ref=wr(Sn,vr,Hn),Fo.return=Sn,Sn=Fo)}return nr(Sn);case m:e:{for(tc=Hn.key;vr!==null;){if(vr.key===tc)if(vr.tag===4&&vr.stateNode.containerInfo===Hn.containerInfo&&vr.stateNode.implementation===Hn.implementation){ee(Sn,vr.sibling),vr=xe(vr,Hn.children||[]),vr.return=Sn,Sn=vr;break e}else{ee(Sn,vr);break}else L(Sn,vr);vr=vr.sibling}vr=xm(Hn,Sn.mode,Fo),vr.return=Sn,Sn=vr}return nr(Sn)}if(typeof Hn=="string"||typeof Hn=="number")return Hn=""+Hn,vr!==null&&vr.tag===6?(ee(Sn,vr.sibling),vr=xe(vr,Hn),vr.return=Sn,Sn=vr):(ee(Sn,vr),vr=w1(Hn,Sn.mode,Fo),vr.return=Sn,Sn=vr),nr(Sn);if(Zr(Hn))return nd(Sn,vr,Hn,Fo);if(ke(Hn))return YC(Sn,vr,Hn,Fo);if(dA&&Yn(Sn,Hn),typeof Hn>"u"&&!tc)switch(Sn.tag){case 1:case 22:case 0:case 11:case 15:throw Error(g(152,x(Sn.type)||"Component"))}return ee(Sn,vr)}}var Po=Dn(!0),fc=Dn(!1),Xc={},Yo=HA(Xc),yu=HA(Xc),op=HA(Xc);function lA(k){if(k===Xc)throw Error(g(174));return k}function tI(k,L){Hl(op,L),Hl(yu,k),Hl(Yo,Xc),k=Ur(L),No(Yo),Hl(Yo,k)}function Kd(){No(Yo),No(yu),No(op)}function D0(k){var L=lA(op.current),ee=lA(Yo.current);L=Ot(ee,k.type,L),ee!==L&&(Hl(yu,k),Hl(Yo,L))}function ya(k){yu.current===k&&(No(Yo),No(yu))}var md=HA(0);function fI(k){for(var L=k;L!==null;){if(L.tag===13){var ee=L.memoizedState;if(ee!==null&&(ee=ee.dehydrated,ee===null||au(ee)||Lg(ee)))return L}else if(L.tag===19&&L.memoizedProps.revealOrder!==void 0){if(L.flags&64)return L}else if(L.child!==null){L.child.return=L,L=L.child;continue}if(L===k)break;for(;L.sibling===null;){if(L.return===null||L.return===k)return null;L=L.return}L.sibling.return=L.return,L=L.sibling}return null}var Bf=null,Uh=null,Ym=!1;function IS(k,L){var ee=dC(5,null,null,0);ee.elementType="DELETED",ee.type="DELETED",ee.stateNode=L,ee.return=k,ee.flags=8,k.lastEffect!==null?(k.lastEffect.nextEffect=ee,k.lastEffect=ee):k.firstEffect=k.lastEffect=ee}function CS(k,L){switch(k.tag){case 5:return L=Dg(L,k.type,k.pendingProps),L!==null?(k.stateNode=L,!0):!1;case 6:return L=hl(L,k.pendingProps),L!==null?(k.stateNode=L,!0):!1;case 13:return!1;default:return!1}}function _E(k){if(Ym){var L=Uh;if(L){var ee=L;if(!CS(k,L)){if(L=cf(ee),!L||!CS(k,L)){k.flags=k.flags&-1025|2,Ym=!1,Bf=k;return}IS(Bf,ee)}Bf=k,Uh=Td(L)}else k.flags=k.flags&-1025|2,Ym=!1,Bf=k}}function x0(k){for(k=k.return;k!==null&&k.tag!==5&&k.tag!==3&&k.tag!==13;)k=k.return;Bf=k}function yE(k){if(!ka||k!==Bf)return!1;if(!Ym)return x0(k),Ym=!0,!1;var L=k.type;if(k.tag!==5||L!=="head"&&L!=="body"&&!In(L,k.memoizedProps))for(L=Uh;L;)IS(k,L),L=cf(L);if(x0(k),k.tag===13){if(!ka)throw Error(g(316));if(k=k.memoizedState,k=k!==null?k.dehydrated:null,!k)throw Error(g(317));Uh=Rt(k)}else Uh=Bf?cf(k.stateNode):null;return!0}function CB(){ka&&(Uh=Bf=null,Ym=!1)}var J_=[];function yh(){for(var k=0;kgt))throw Error(g(301));gt+=1,ug=ap=null,L.updateQueue=null,U_.current=Wr,k=ee(ve,xe)}while(Tb)}if(U_.current=dc,L=ap!==null&&ap.next!==null,RC=0,ug=ap=Kl=null,Hm=!1,L)throw Error(g(300));return k}function QC(){var k={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return ug===null?Kl.memoizedState=ug=k:ug=ug.next=k,ug}function wI(){if(ap===null){var k=Kl.alternate;k=k!==null?k.memoizedState:null}else k=ap.next;var L=ug===null?Kl.memoizedState:ug.next;if(L!==null)ug=L,ap=k;else{if(k===null)throw Error(g(310));ap=k,k={memoizedState:ap.memoizedState,baseState:ap.baseState,baseQueue:ap.baseQueue,queue:ap.queue,next:null},ug===null?Kl.memoizedState=ug=k:ug=ug.next=k}return ug}function Fi(k,L){return typeof L=="function"?L(k):L}function Lo(k){var L=wI(),ee=L.queue;if(ee===null)throw Error(g(311));ee.lastRenderedReducer=k;var ve=ap,xe=ve.baseQueue,gt=ee.pending;if(gt!==null){if(xe!==null){var nr=xe.next;xe.next=gt.next,gt.next=nr}ve.baseQueue=xe=gt,ee.pending=null}if(xe!==null){xe=xe.next,ve=ve.baseState;var Xr=nr=gt=null,Kn=xe;do{var to=Kn.lane;if((RC&to)===to)Xr!==null&&(Xr=Xr.next={lane:0,action:Kn.action,eagerReducer:Kn.eagerReducer,eagerState:Kn.eagerState,next:null}),ve=Kn.eagerReducer===k?Kn.eagerState:k(ve,Kn.action);else{var Fa={lane:to,action:Kn.action,eagerReducer:Kn.eagerReducer,eagerState:Kn.eagerState,next:null};Xr===null?(nr=Xr=Fa,gt=ve):Xr=Xr.next=Fa,Kl.lanes|=to,$h|=to}Kn=Kn.next}while(Kn!==null&&Kn!==xe);Xr===null?gt=ve:Xr.next=nr,eA(ve,L.memoizedState)||(os=!0),L.memoizedState=ve,L.baseState=gt,L.baseQueue=Xr,ee.lastRenderedState=ve}return[L.memoizedState,ee.dispatch]}function rs(k){var L=wI(),ee=L.queue;if(ee===null)throw Error(g(311));ee.lastRenderedReducer=k;var ve=ee.dispatch,xe=ee.pending,gt=L.memoizedState;if(xe!==null){ee.pending=null;var nr=xe=xe.next;do gt=k(gt,nr.action),nr=nr.next;while(nr!==xe);eA(gt,L.memoizedState)||(os=!0),L.memoizedState=gt,L.baseQueue===null&&(L.baseState=gt),ee.lastRenderedState=gt}return[gt,ve]}function vc(k,L,ee){var ve=L._getVersion;ve=ve(L._source);var xe=we?L._workInProgressVersionPrimary:L._workInProgressVersionSecondary;if(xe!==null?k=xe===ve:(k=k.mutableReadLanes,(k=(RC&k)===k)&&(we?L._workInProgressVersionPrimary=ve:L._workInProgressVersionSecondary=ve,J_.push(L))),k)return ee(L._source);throw J_.push(L),Error(g(350))}function Ml(k,L,ee,ve){var xe=EA;if(xe===null)throw Error(g(349));var gt=L._getVersion,nr=gt(L._source),Xr=U_.current,Kn=Xr.useState(function(){return vc(xe,L,ee)}),to=Kn[1],Fa=Kn[0];Kn=ug;var el=k.memoizedState,Eo=el.refs,vg=Eo.getSnapshot,nd=el.source;el=el.subscribe;var YC=Kl;return k.memoizedState={refs:Eo,source:L,subscribe:ve},Xr.useEffect(function(){Eo.getSnapshot=ee,Eo.setSnapshot=to;var Sn=gt(L._source);if(!eA(nr,Sn)){Sn=ee(L._source),eA(Fa,Sn)||(to(Sn),Sn=eC(YC),xe.mutableReadLanes|=Sn&xe.pendingLanes),Sn=xe.mutableReadLanes,xe.entangledLanes|=Sn;for(var vr=xe.entanglements,Hn=Sn;0ee?98:ee,function(){k(!0)}),Nd(97bv&&(L.flags|=64,xe=!0,py(ve,!1),L.lanes=33554432)}else{if(!xe)if(k=fI(gt),k!==null){if(L.flags|=64,xe=!0,k=k.updateQueue,k!==null&&(L.updateQueue=k,L.flags|=4),py(ve,!0),ve.tail===null&&ve.tailMode==="hidden"&&!gt.alternate&&!Ym)return L=L.lastEffect=ve.lastEffect,L!==null&&(L.nextEffect=null),null}else 2*Li()-ve.renderingStartTime>bv&&ee!==1073741824&&(L.flags|=64,xe=!0,py(ve,!1),L.lanes=33554432);ve.isBackwards?(gt.sibling=L.child,L.child=gt):(k=ve.last,k!==null?k.sibling=gt:L.child=gt,ve.last=gt)}return ve.tail!==null?(k=ve.tail,ve.rendering=k,ve.tail=k.sibling,ve.lastEffect=L.lastEffect,ve.renderingStartTime=Li(),k.sibling=null,L=md.current,Hl(md,xe?L&1|2:L&1),k):null;case 23:case 24:return _B(),k!==null&&k.memoizedState!==null!=(L.memoizedState!==null)&&ve.mode!=="unstable-defer-without-hiding"&&(L.flags|=4),null}throw Error(g(156,L.tag))}function _S(k){switch(k.tag){case 1:ec(k.type)&&ll();var L=k.flags;return L&4096?(k.flags=L&-4097|64,k):null;case 3:if(Kd(),No(bA),No(Vd),yh(),L=k.flags,L&64)throw Error(g(285));return k.flags=L&-4097|64,k;case 5:return ya(k),null;case 13:return No(md),L=k.flags,L&4096?(k.flags=L&-4097|64,k):null;case 19:return No(md),null;case 4:return Kd(),null;case 10:return Sb(k),null;case 23:case 24:return _B(),null;default:return null}}function Xy(k,L){try{var ee="",ve=L;do ee+=Oy(ve),ve=ve.return;while(ve);var xe=ee}catch(gt){xe=` +`+xe[nr].replace(" at new "," at ");while(1<=nr&&0<=Xr);break}}}finally{on=!1,Error.prepareStackTrace=ee}return(G=G?G.displayName||G.name:"")?ag(G):""}var eA=[],lA=-1;function XA(G){return{current:G}}function To(G){0>lA||(G.current=eA[lA],eA[lA]=null,lA--)}function Xl(G,L){lA++,eA[lA]=G.current,G.current=L}var Zf={},Wd=XA(Zf),EA=XA(!1),Ps=Zf;function Yi(G,L){var ee=G.type.contextTypes;if(!ee)return Zf;var ve=G.stateNode;if(ve&&ve.__reactInternalMemoizedUnmaskedChildContext===L)return ve.__reactInternalMemoizedMaskedChildContext;var xe={},gt;for(gt in ee)xe[gt]=L[gt];return ve&&(G=G.stateNode,G.__reactInternalMemoizedUnmaskedChildContext=L,G.__reactInternalMemoizedMaskedChildContext=xe),xe}function ec(G){return G=G.childContextTypes,G!=null}function ul(){To(EA),To(Wd)}function Ts(G,L,ee){if(Wd.current!==Zf)throw Error(g(168));Xl(Wd,L),Xl(EA,ee)}function RA(G,L,ee){var ve=G.stateNode;if(G=L.childContextTypes,typeof ve.getChildContext!="function")return ee;ve=ve.getChildContext();for(var xe in ve)if(!(xe in G))throw Error(g(108,x(L)||"Unknown",xe));return s({},ee,ve)}function Kd(G){return G=(G=G.stateNode)&&G.__reactInternalMemoizedMergedChildContext||Zf,Ps=Wd.current,Xl(Wd,G),Xl(EA,EA.current),!0}function Na(G,L,ee){var ve=G.stateNode;if(!ve)throw Error(g(169));ee?(G=RA(G,L,Ps),ve.__reactInternalMemoizedMergedChildContext=G,To(EA),To(Wd),Xl(Wd,G)):To(EA),Xl(EA,ee)}var ys=null,Ya=null,lm=o.unstable_now;lm();var $s=0,ps=8;function oc(G){if(1&G)return ps=15,1;if(2&G)return ps=14,2;if(4&G)return ps=13,4;var L=24&G;return L!==0?(ps=12,L):G&32?(ps=11,32):(L=192&G,L!==0?(ps=10,L):G&256?(ps=9,256):(L=3584&G,L!==0?(ps=8,L):G&4096?(ps=7,4096):(L=4186112&G,L!==0?(ps=6,L):(L=62914560&G,L!==0?(ps=5,L):G&67108864?(ps=4,67108864):G&134217728?(ps=3,134217728):(L=805306368&G,L!==0?(ps=2,L):1073741824&G?(ps=1,1073741824):(ps=8,G))))))}function NC(G){switch(G){case 99:return 15;case 98:return 10;case 97:case 96:return 8;case 95:return 2;default:return 0}}function fI(G){switch(G){case 15:case 14:return 99;case 13:case 12:case 11:case 10:return 98;case 9:case 8:case 7:case 6:case 4:case 5:return 97;case 3:case 2:case 1:return 95;case 0:return 90;default:throw Error(g(358,G))}}function wI(G,L){var ee=G.pendingLanes;if(ee===0)return ps=0;var ve=0,xe=0,gt=G.expiredLanes,nr=G.suspendedLanes,Xr=G.pingedLanes;if(gt!==0)ve=gt,xe=ps=15;else if(gt=ee&134217727,gt!==0){var Kn=gt&~nr;Kn!==0?(ve=oc(Kn),xe=ps):(Xr&=gt,Xr!==0&&(ve=oc(Xr),xe=ps))}else gt=ee&~nr,gt!==0?(ve=oc(gt),xe=ps):Xr!==0&&(ve=oc(Xr),xe=ps);if(ve===0)return 0;if(ve=31-su(ve),ve=ee&((0>ve?0:1<ee;ee++)L.push(G);return L}function ja(G,L,ee){G.pendingLanes|=L;var ve=L-1;G.suspendedLanes&=ve,G.pingedLanes&=ve,G=G.eventTimes,L=31-su(L),G[L]=ee}var su=Math.clz32?Math.clz32:Uh,ii=Math.log,RC=Math.LN2;function Uh(G){return G===0?32:31-(ii(G)/RC|0)|0}var Nm=o.unstable_runWithPriority,yl=o.unstable_scheduleCallback,Qg=o.unstable_cancelCallback,op=o.unstable_shouldYield,um=o.unstable_requestPaint,lh=o.unstable_now,Jl=o.unstable_getCurrentPriorityLevel,Pp=o.unstable_ImmediatePriority,gC=o.unstable_UserBlockingPriority,fs=o.unstable_NormalPriority,go=o.unstable_LowPriority,Ro=o.unstable_IdlePriority,ql={},Nr=um!==void 0?um:function(){},Nn=null,Di=null,ra=!1,Us=lh(),Li=1e4>Us?lh:function(){return lh()-Us};function Ll(){switch(Jl()){case Pp:return 99;case gC:return 98;case fs:return 97;case go:return 96;case Ro:return 95;default:throw Error(g(332))}}function DA(G){switch(G){case 99:return Pp;case 98:return gC;case 97:return fs;case 96:return go;case 95:return Ro;default:throw Error(g(332))}}function Rd(G,L){return G=DA(G),Nm(G,L)}function PI(G,L,ee){return G=DA(G),yl(G,L,ee)}function fl(){if(Di!==null){var G=Di;Di=null,Qg(G)}Hm()}function Hm(){if(!ra&&Nn!==null){ra=!0;var G=0;try{var L=Nn;Rd(99,function(){for(;GJu?(Vu=fc,fc=null):Vu=fc.sibling;var Dc=bo(Sn,fc,Yn[Ju],Go);if(Dc===null){fc===null&&(fc=Vu);break}G&&fc&&Dc.alternate===null&&L(Sn,fc),vr=gt(Dc,vr,Ju),pA===null?tc=Dc:pA.sibling=Dc,pA=Dc,fc=Vu}if(Ju===Yn.length)return ee(Sn,fc),tc;if(fc===null){for(;JuJu?(Vu=fc,fc=null):Vu=fc.sibling;var Mp=bo(Sn,fc,Dc.value,Go);if(Mp===null){fc===null&&(fc=Vu);break}G&&fc&&Mp.alternate===null&&L(Sn,fc),vr=gt(Mp,vr,Ju),pA===null?tc=Mp:pA.sibling=Mp,pA=Mp,fc=Vu}if(Dc.done)return ee(Sn,fc),tc;if(fc===null){for(;!Dc.done;Ju++,Dc=Yn.next())Dc=tl(Sn,Dc.value,Go),Dc!==null&&(vr=gt(Dc,vr,Ju),pA===null?tc=Dc:pA.sibling=Dc,pA=Dc);return tc}for(fc=ve(Sn,fc);!Dc.done;Ju++,Dc=Yn.next())Dc=Sg(fc,Sn,Ju,Dc.value,Go),Dc!==null&&(G&&Dc.alternate!==null&&fc.delete(Dc.key===null?Ju:Dc.key),vr=gt(Dc,vr,Ju),pA===null?tc=Dc:pA.sibling=Dc,pA=Dc);return G&&fc.forEach(function(zy){return L(Sn,zy)}),tc}return function(Sn,vr,Yn,Go){var tc=typeof Yn=="object"&&Yn!==null&&Yn.type===y&&Yn.key===null;tc&&(Yn=Yn.props.children);var pA=typeof Yn=="object"&&Yn!==null;if(pA)switch(Yn.$$typeof){case f:e:{for(pA=Yn.key,tc=vr;tc!==null;){if(tc.key===pA){switch(tc.tag){case 7:if(Yn.type===y){ee(Sn,tc.sibling),vr=xe(tc,Yn.props.children),vr.return=Sn,Sn=vr;break e}break;default:if(tc.elementType===Yn.type){ee(Sn,tc.sibling),vr=xe(tc,Yn.props),vr.ref=wr(Sn,tc,Yn),vr.return=Sn,Sn=vr;break e}}ee(Sn,tc);break}else L(Sn,tc);tc=tc.sibling}Yn.type===y?(vr=Ip(Yn.props.children,Sn.mode,Go,Yn.key),vr.return=Sn,Sn=vr):(Go=m2(Yn.type,Yn.key,Yn.props,null,Sn.mode,Go),Go.ref=wr(Sn,vr,Yn),Go.return=Sn,Sn=Go)}return nr(Sn);case m:e:{for(tc=Yn.key;vr!==null;){if(vr.key===tc)if(vr.tag===4&&vr.stateNode.containerInfo===Yn.containerInfo&&vr.stateNode.implementation===Yn.implementation){ee(Sn,vr.sibling),vr=xe(vr,Yn.children||[]),vr.return=Sn,Sn=vr;break e}else{ee(Sn,vr);break}else L(Sn,vr);vr=vr.sibling}vr=km(Yn,Sn.mode,Go),vr.return=Sn,Sn=vr}return nr(Sn)}if(typeof Yn=="string"||typeof Yn=="number")return Yn=""+Yn,vr!==null&&vr.tag===6?(ee(Sn,vr.sibling),vr=xe(vr,Yn),vr.return=Sn,Sn=vr):(ee(Sn,vr),vr=T1(Yn,Sn.mode,Go),vr.return=Sn,Sn=vr),nr(Sn);if(Zr(Yn))return id(Sn,vr,Yn,Go);if(ke(Yn))return YC(Sn,vr,Yn,Go);if(pA&&Hn(Sn,Yn),typeof Yn>"u"&&!tc)switch(Sn.tag){case 1:case 22:case 0:case 11:case 15:throw Error(g(152,x(Sn.type)||"Component"))}return ee(Sn,vr)}}var Wo=Dn(!0),Ic=Dn(!1),Jc={},Mo=XA(Jc),bu=XA(Jc),ap=XA(Jc);function uA(G){if(G===Jc)throw Error(g(174));return G}function rI(G,L){Xl(ap,L),Xl(bu,G),Xl(Mo,Jc),G=Ur(L),To(Mo),Xl(Mo,G)}function jd(){To(Mo),To(bu),To(ap)}function x0(G){var L=uA(ap.current),ee=uA(Mo.current);L=Ot(ee,G.type,L),ee!==L&&(Xl(bu,G),Xl(Mo,L))}function ha(G){bu.current===G&&(To(Mo),To(bu))}var hd=XA(0);function II(G){for(var L=G;L!==null;){if(L.tag===13){var ee=L.memoizedState;if(ee!==null&&(ee=ee.dehydrated,ee===null||cu(ee)||Vg(ee)))return L}else if(L.tag===19&&L.memoizedProps.revealOrder!==void 0){if(L.flags&64)return L}else if(L.child!==null){L.child.return=L,L=L.child;continue}if(L===G)break;for(;L.sibling===null;){if(L.return===null||L.return===G)return null;L=L.return}L.sibling.return=L.return,L=L.sibling}return null}var vf=null,Kh=null,Ym=!1;function CS(G,L){var ee=pC(5,null,null,0);ee.elementType="DELETED",ee.type="DELETED",ee.stateNode=L,ee.return=G,ee.flags=8,G.lastEffect!==null?(G.lastEffect.nextEffect=ee,G.lastEffect=ee):G.firstEffect=G.lastEffect=ee}function mS(G,L){switch(G.tag){case 5:return L=xg(L,G.type,G.pendingProps),L!==null?(G.stateNode=L,!0):!1;case 6:return L=_l(L,G.pendingProps),L!==null?(G.stateNode=L,!0):!1;case 13:return!1;default:return!1}}function bE(G){if(Ym){var L=Kh;if(L){var ee=L;if(!mS(G,L)){if(L=lf(ee),!L||!mS(G,L)){G.flags=G.flags&-1025|2,Ym=!1,vf=G;return}CS(vf,ee)}vf=G,Kh=Nd(L)}else G.flags=G.flags&-1025|2,Ym=!1,vf=G}}function k0(G){for(G=G.return;G!==null&&G.tag!==5&&G.tag!==3&&G.tag!==13;)G=G.return;vf=G}function EE(G){if(!xa||G!==vf)return!1;if(!Ym)return k0(G),Ym=!0,!1;var L=G.type;if(G.tag!==5||L!=="head"&&L!=="body"&&!In(L,G.memoizedProps))for(L=Kh;L;)CS(G,L),L=lf(L);if(k0(G),G.tag===13){if(!xa)throw Error(g(316));if(G=G.memoizedState,G=G!==null?G.dehydrated:null,!G)throw Error(g(317));Kh=Dt(G)}else Kh=vf?lf(G.stateNode):null;return!0}function hB(){xa&&(Kh=vf=null,Ym=!1)}var U_=[];function bh(){for(var G=0;Ggt))throw Error(g(301));gt+=1,gg=cp=null,L.updateQueue=null,K_.current=Wr,G=ee(ve,xe)}while(Rb)}if(K_.current=pc,L=cp!==null&&cp.next!==null,DC=0,gg=cp=jl=null,Xm=!1,L)throw Error(g(300));return G}function HC(){var G={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return gg===null?jl.memoizedState=gg=G:gg=gg.next=G,gg}function TI(){if(cp===null){var G=jl.alternate;G=G!==null?G.memoizedState:null}else G=cp.next;var L=gg===null?jl.memoizedState:gg.next;if(L!==null)gg=L,cp=G;else{if(G===null)throw Error(g(310));cp=G,G={memoizedState:cp.memoizedState,baseState:cp.baseState,baseQueue:cp.baseQueue,queue:cp.queue,next:null},gg===null?jl.memoizedState=gg=G:gg=gg.next=G}return gg}function Fi(G,L){return typeof L=="function"?L(G):L}function Zo(G){var L=TI(),ee=L.queue;if(ee===null)throw Error(g(311));ee.lastRenderedReducer=G;var ve=cp,xe=ve.baseQueue,gt=ee.pending;if(gt!==null){if(xe!==null){var nr=xe.next;xe.next=gt.next,gt.next=nr}ve.baseQueue=xe=gt,ee.pending=null}if(xe!==null){xe=xe.next,ve=ve.baseState;var Xr=nr=gt=null,Kn=xe;do{var eo=Kn.lane;if((DC&eo)===eo)Xr!==null&&(Xr=Xr.next={lane:0,action:Kn.action,eagerReducer:Kn.eagerReducer,eagerState:Kn.eagerState,next:null}),ve=Kn.eagerReducer===G?Kn.eagerState:G(ve,Kn.action);else{var Ga={lane:eo,action:Kn.action,eagerReducer:Kn.eagerReducer,eagerState:Kn.eagerState,next:null};Xr===null?(nr=Xr=Ga,gt=ve):Xr=Xr.next=Ga,jl.lanes|=eo,e_|=eo}Kn=Kn.next}while(Kn!==null&&Kn!==xe);Xr===null?gt=ve:Xr.next=nr,tA(ve,L.memoizedState)||(os=!0),L.memoizedState=ve,L.baseState=gt,L.baseQueue=Xr,ee.lastRenderedState=ve}return[L.memoizedState,ee.dispatch]}function rs(G){var L=TI(),ee=L.queue;if(ee===null)throw Error(g(311));ee.lastRenderedReducer=G;var ve=ee.dispatch,xe=ee.pending,gt=L.memoizedState;if(xe!==null){ee.pending=null;var nr=xe=xe.next;do gt=G(gt,nr.action),nr=nr.next;while(nr!==xe);tA(gt,L.memoizedState)||(os=!0),L.memoizedState=gt,L.baseQueue===null&&(L.baseState=gt),ee.lastRenderedState=gt}return[gt,ve]}function Sc(G,L,ee){var ve=L._getVersion;ve=ve(L._source);var xe=we?L._workInProgressVersionPrimary:L._workInProgressVersionSecondary;if(xe!==null?G=xe===ve:(G=G.mutableReadLanes,(G=(DC&G)===G)&&(we?L._workInProgressVersionPrimary=ve:L._workInProgressVersionSecondary=ve,U_.push(L))),G)return ee(L._source);throw U_.push(L),Error(g(350))}function Ml(G,L,ee,ve){var xe=BA;if(xe===null)throw Error(g(349));var gt=L._getVersion,nr=gt(L._source),Xr=K_.current,Kn=Xr.useState(function(){return Sc(xe,L,ee)}),eo=Kn[1],Ga=Kn[0];Kn=gg;var tl=G.memoizedState,bo=tl.refs,Sg=bo.getSnapshot,id=tl.source;tl=tl.subscribe;var YC=jl;return G.memoizedState={refs:bo,source:L,subscribe:ve},Xr.useEffect(function(){bo.getSnapshot=ee,bo.setSnapshot=eo;var Sn=gt(L._source);if(!tA(nr,Sn)){Sn=ee(L._source),tA(Ga,Sn)||(eo(Sn),Sn=tC(YC),xe.mutableReadLanes|=Sn&xe.pendingLanes),Sn=xe.mutableReadLanes,xe.entangledLanes|=Sn;for(var vr=xe.entanglements,Yn=Sn;0ee?98:ee,function(){G(!0)}),Rd(97Ev&&(L.flags|=64,xe=!0,fy(ve,!1),L.lanes=33554432)}else{if(!xe)if(G=II(gt),G!==null){if(L.flags|=64,xe=!0,G=G.updateQueue,G!==null&&(L.updateQueue=G,L.flags|=4),fy(ve,!0),ve.tail===null&&ve.tailMode==="hidden"&&!gt.alternate&&!Ym)return L=L.lastEffect=ve.lastEffect,L!==null&&(L.nextEffect=null),null}else 2*Li()-ve.renderingStartTime>Ev&&ee!==1073741824&&(L.flags|=64,xe=!0,fy(ve,!1),L.lanes=33554432);ve.isBackwards?(gt.sibling=L.child,L.child=gt):(G=ve.last,G!==null?G.sibling=gt:L.child=gt,ve.last=gt)}return ve.tail!==null?(G=ve.tail,ve.rendering=G,ve.tail=G.sibling,ve.lastEffect=L.lastEffect,ve.renderingStartTime=Li(),G.sibling=null,L=hd.current,Xl(hd,xe?L&1|2:L&1),G):null;case 23:case 24:return bB(),G!==null&&G.memoizedState!==null!=(L.memoizedState!==null)&&ve.mode!=="unstable-defer-without-hiding"&&(L.flags|=4),null}throw Error(g(156,L.tag))}function yS(G){switch(G.tag){case 1:ec(G.type)&&ul();var L=G.flags;return L&4096?(G.flags=L&-4097|64,G):null;case 3:if(jd(),To(EA),To(Wd),bh(),L=G.flags,L&64)throw Error(g(285));return G.flags=L&-4097|64,G;case 5:return ha(G),null;case 13:return To(hd),L=G.flags,L&4096?(G.flags=L&-4097|64,G):null;case 19:return To(hd),null;case 4:return jd(),null;case 10:return Tb(G),null;case 23:case 24:return bB(),null;default:return null}}function Jy(G,L){try{var ee="",ve=L;do ee+=Qy(ve),ve=ve.return;while(ve);var xe=ee}catch(gt){xe=` Error generating stack: `+gt.message+` -`+gt.stack}return{value:k,source:L,stack:xe}}function BE(k,L){try{console.error(L.value)}catch(ee){setTimeout(function(){throw ee})}}var mv=typeof WeakMap=="function"?WeakMap:Map;function Mw(k,L,ee){ee=PI(-1,ee),ee.tag=3,ee.payload={element:null};var ve=L.value;return ee.callback=function(){Uy||(Uy=!0,kb=ve),BE(k,L)},ee}function hv(k,L,ee){ee=PI(-1,ee),ee.tag=3;var ve=k.type.getDerivedStateFromError;if(typeof ve=="function"){var xe=L.value;ee.payload=function(){return BE(k,L),ve(xe)}}var gt=k.stateNode;return gt!==null&&typeof gt.componentDidCatch=="function"&&(ee.callback=function(){typeof ve!="function"&&(TI===null?TI=new Set([this]):TI.add(this),BE(k,L));var nr=L.stack;this.componentDidCatch(L.value,{componentStack:nr!==null?nr:""})}),ee}var xR=typeof WeakSet=="function"?WeakSet:Set;function qT(k){var L=k.ref;if(L!==null)if(typeof L=="function")try{L(null)}catch(ee){Mc(k,ee)}else L.current=null}function m1(k,L){switch(L.tag){case 0:case 11:case 15:case 22:return;case 1:if(L.flags&256&&k!==null){var ee=k.memoizedProps,ve=k.memoizedState;k=L.stateNode,L=k.getSnapshotBeforeUpdate(L.elementType===L.type?ee:vp(L.type,ee),ve),k.__reactInternalSnapshotBeforeUpdate=L}return;case 3:Zi&&L.flags&256&&ts(L.stateNode.containerInfo);return;case 5:case 6:case 4:case 17:return}throw Error(g(163))}function jh(k,L){if(L=L.updateQueue,L=L!==null?L.lastEffect:null,L!==null){var ee=L=L.next;do{if((ee.tag&k)===k){var ve=ee.destroy;ee.destroy=void 0,ve!==void 0&&ve()}ee=ee.next}while(ee!==L)}}function Rb(k,L,ee){switch(ee.tag){case 0:case 11:case 15:case 22:if(L=ee.updateQueue,L=L!==null?L.lastEffect:null,L!==null){k=L=L.next;do{if((k.tag&3)===3){var ve=k.create;k.destroy=ve()}k=k.next}while(k!==L)}if(L=ee.updateQueue,L=L!==null?L.lastEffect:null,L!==null){k=L=L.next;do{var xe=k;ve=xe.next,xe=xe.tag,xe&4&&xe&1&&(q_(ee,k),xo(ee,k)),k=ve}while(k!==L)}return;case 1:k=ee.stateNode,ee.flags&4&&(L===null?k.componentDidMount():(ve=ee.elementType===ee.type?L.memoizedProps:vp(ee.type,L.memoizedProps),k.componentDidUpdate(ve,L.memoizedState,k.__reactInternalSnapshotBeforeUpdate))),L=ee.updateQueue,L!==null&&hE(ee,L,k);return;case 3:if(L=ee.updateQueue,L!==null){if(k=null,ee.child!==null)switch(ee.child.tag){case 5:k=er(ee.child.stateNode);break;case 1:k=ee.child.stateNode}hE(ee,L,k)}return;case 5:k=ee.stateNode,L===null&&ee.flags&4&&Hr(k,ee.type,ee.memoizedProps,ee);return;case 6:return;case 4:return;case 12:return;case 13:ka&&ee.memoizedState===null&&(ee=ee.alternate,ee!==null&&(ee=ee.memoizedState,ee!==null&&(ee=ee.dehydrated,ee!==null&&Hu(ee))));return;case 19:case 17:case 20:case 21:case 23:case 24:return}throw Error(g(163))}function Qw(k,L){if(Zi)for(var ee=k;;){if(ee.tag===5){var ve=ee.stateNode;L?Cg(ve):Cl(ee.stateNode,ee.memoizedProps)}else if(ee.tag===6)ve=ee.stateNode,L?Zu(ve):wi(ve,ee.memoizedProps);else if((ee.tag!==23&&ee.tag!==24||ee.memoizedState===null||ee===k)&&ee.child!==null){ee.child.return=ee,ee=ee.child;continue}if(ee===k)break;for(;ee.sibling===null;){if(ee.return===null||ee.return===k)return;ee=ee.return}ee.sibling.return=ee.return,ee=ee.sibling}}function An(k,L){if(Xa&&typeof Xa.onCommitFiberUnmount=="function")try{Xa.onCommitFiberUnmount(ys,L)}catch{}switch(L.tag){case 0:case 11:case 14:case 15:case 22:if(k=L.updateQueue,k!==null&&(k=k.lastEffect,k!==null)){var ee=k=k.next;do{var ve=ee,xe=ve.destroy;if(ve=ve.tag,xe!==void 0)if(ve&4)q_(L,ee);else{ve=L;try{xe()}catch(gt){Mc(ve,gt)}}ee=ee.next}while(ee!==k)}break;case 1:if(qT(L),k=L.stateNode,typeof k.componentWillUnmount=="function")try{k.props=L.memoizedProps,k.state=L.memoizedState,k.componentWillUnmount()}catch(gt){Mc(L,gt)}break;case 5:qT(L);break;case 4:Zi?$T(k,L):Za&&Za&&(L=L.stateNode.containerInfo,k=Ga(L),qo(L,k))}}function h1(k,L){for(var ee=L;;)if(An(k,ee),ee.child===null||Zi&&ee.tag===4){if(ee===L)break;for(;ee.sibling===null;){if(ee.return===null||ee.return===L)return;ee=ee.return}ee.sibling.return=ee.return,ee=ee.sibling}else ee.child.return=ee,ee=ee.child}function d2(k){k.alternate=null,k.child=null,k.dependencies=null,k.firstEffect=null,k.lastEffect=null,k.memoizedProps=null,k.memoizedState=null,k.pendingProps=null,k.return=null,k.updateQueue=null}function zh(k){return k.tag===5||k.tag===3||k.tag===4}function dp(k){if(Zi){e:{for(var L=k.return;L!==null;){if(zh(L))break e;L=L.return}throw Error(g(160))}var ee=L;switch(L=ee.stateNode,ee.tag){case 5:var ve=!1;break;case 3:L=L.containerInfo,ve=!0;break;case 4:L=L.containerInfo,ve=!0;break;default:throw Error(g(161))}ee.flags&16&&(Fu(L),ee.flags&=-17);e:t:for(ee=k;;){for(;ee.sibling===null;){if(ee.return===null||zh(ee.return)){ee=null;break e}ee=ee.return}for(ee.sibling.return=ee.return,ee=ee.sibling;ee.tag!==5&&ee.tag!==6&&ee.tag!==18;){if(ee.flags&2||ee.child===null||ee.tag===4)continue t;ee.child.return=ee,ee=ee.child}if(!(ee.flags&2)){ee=ee.stateNode;break e}}ve?Yw(k,ee,L):yS(k,ee,L)}}function Yw(k,L,ee){var ve=k.tag,xe=ve===5||ve===6;if(xe)k=xe?k.stateNode:k.stateNode.instance,L?ai(ee,k,L):Vn(ee,k);else if(ve!==4&&(k=k.child,k!==null))for(Yw(k,L,ee),k=k.sibling;k!==null;)Yw(k,L,ee),k=k.sibling}function yS(k,L,ee){var ve=k.tag,xe=ve===5||ve===6;if(xe)k=xe?k.stateNode:k.stateNode.instance,L?Ko(ee,k,L):Cn(ee,k);else if(ve!==4&&(k=k.child,k!==null))for(yS(k,L,ee),k=k.sibling;k!==null;)yS(k,L,ee),k=k.sibling}function $T(k,L){for(var ee=L,ve=!1,xe,gt;;){if(!ve){ve=ee.return;e:for(;;){if(ve===null)throw Error(g(160));switch(xe=ve.stateNode,ve.tag){case 5:gt=!1;break e;case 3:xe=xe.containerInfo,gt=!0;break e;case 4:xe=xe.containerInfo,gt=!0;break e}ve=ve.return}ve=!0}if(ee.tag===5||ee.tag===6)h1(k,ee),gt?sg(xe,ee.stateNode):pa(xe,ee.stateNode);else if(ee.tag===4){if(ee.child!==null){xe=ee.stateNode.containerInfo,gt=!0,ee.child.return=ee,ee=ee.child;continue}}else if(An(k,ee),ee.child!==null){ee.child.return=ee,ee=ee.child;continue}if(ee===L)break;for(;ee.sibling===null;){if(ee.return===null||ee.return===L)return;ee=ee.return,ee.tag===4&&(ve=!1)}ee.sibling.return=ee.return,ee=ee.sibling}}function Db(k,L){if(Zi){switch(L.tag){case 0:case 11:case 14:case 15:case 22:jh(3,L);return;case 1:return;case 5:var ee=L.stateNode;if(ee!=null){var ve=L.memoizedProps;k=k!==null?k.memoizedProps:ve;var xe=L.type,gt=L.updateQueue;L.updateQueue=null,gt!==null&&Ws(ee,gt,xe,k,ve,L)}return;case 6:if(L.stateNode===null)throw Error(g(162));ee=L.memoizedProps,Ji(L.stateNode,k!==null?k.memoizedProps:ee,ee);return;case 3:ka&&(L=L.stateNode,L.hydrate&&(L.hydrate=!1,kl(L.containerInfo)));return;case 12:return;case 13:eN(L),G0(L);return;case 19:G0(L);return;case 17:return;case 23:case 24:Qw(L,L.memoizedState!==null);return}throw Error(g(163))}switch(L.tag){case 0:case 11:case 14:case 15:case 22:jh(3,L);return;case 12:return;case 13:eN(L),G0(L);return;case 19:G0(L);return;case 3:ka&&(ee=L.stateNode,ee.hydrate&&(ee.hydrate=!1,kl(ee.containerInfo)));break;case 23:case 24:return}e:if(Za){switch(L.tag){case 1:case 5:case 6:case 20:break e;case 3:case 4:L=L.stateNode,qo(L.containerInfo,L.pendingChildren);break e}throw Error(g(163))}}function eN(k){k.memoizedState!==null&&(BS=Li(),Zi&&Qw(k.child,!0))}function G0(k){var L=k.updateQueue;if(L!==null){k.updateQueue=null;var ee=k.stateNode;ee===null&&(ee=k.stateNode=new xR),L.forEach(function(ve){var xe=SS.bind(null,k,ve);ee.has(ve)||(ee.add(ve),ve.then(xe,xe))})}}function iG(k,L){return k!==null&&(k=k.memoizedState,k===null||k.dehydrated!==null)?(L=L.memoizedState,L!==null&&L.dehydrated===null):!1}var _1=0,xb=1,Eh=2,y1=3,vE=4;if(typeof Symbol=="function"&&Symbol.for){var SE=Symbol.for;_1=SE("selector.component"),xb=SE("selector.has_pseudo_class"),Eh=SE("selector.role"),y1=SE("selector.test_id"),vE=SE("selector.text")}function bS(k){var L=Qs(k);if(L!=null){if(typeof L.memoizedProps["data-testname"]!="string")throw Error(g(364));return L}if(k=ud(k),k===null)throw Error(g(362));return k.stateNode.current}function Jy(k,L){switch(L.$$typeof){case _1:if(k.type===L.value)return!0;break;case xb:e:{L=L.value,k=[k,0];for(var ee=0;ee";case xb:return":has("+(qh(k)||"")+")";case Eh:return'[role="'+k.value+'"]';case vE:return'"'+k.value+'"';case y1:return'[data-testname="'+k.value+'"]';default:throw Error(g(365,k))}}function tN(k,L){var ee=[];k=[k,0];for(var ve=0;vexe&&(xe=nr),ee&=~gt}if(ee=xe,ee=Li()-ee,ee=(120>ee?120:480>ee?480:1080>ee?1080:1920>ee?1920:3e3>ee?3e3:4320>ee?4320:1960*fx(ee/1960))-ee,10";case Gb:return":has("+($h(G)||"")+")";case Bh:return'[role="'+G.value+'"]';case wE:return'"'+G.value+'"';case b1:return'[data-testname="'+G.value+'"]';default:throw Error(g(365,G))}}function rN(G,L){var ee=[];G=[G,0];for(var ve=0;vexe&&(xe=nr),ee&=~gt}if(ee=xe,ee=Li()-ee,ee=(120>ee?120:480>ee?480:1080>ee?1080:1920>ee?1920:3e3>ee?3e3:4320>ee?4320:1960*yx(ee/1960))-ee,10 component higher in the tree to provide a loading indicator or placeholder to display.`)}Pp!==5&&(Pp=2),Kn=Xy(Kn,Xr),Eo=nr;do{switch(Eo.tag){case 3:gt=Kn,Eo.flags|=4096,L&=-L,Eo.lanes|=L;var dA=Mw(Eo,gt,L);eI(Eo,dA);break e;case 1:gt=Kn;var pc=Eo.type,Xu=Eo.stateNode;if(!(Eo.flags&64)&&(typeof pc.getDerivedStateFromError=="function"||Xu!==null&&typeof Xu.componentDidCatch=="function"&&(TI===null||!TI.has(Xu)))){Eo.flags|=4096,L&=-L,Eo.lanes|=L;var Lu=hv(Eo,gt,L);eI(Eo,Lu);break e}}Eo=Eo.return}while(Eo!==null)}GR(ee)}catch(Rc){L=Rc,hd===ee&&ee!==null&&(hd=ee=ee.return);continue}break}while(!0)}function aa(){var k=Bh.current;return Bh.current=dc,k===null?dc:k}function xA(k,L){var ee=Wa;Wa|=16;var ve=aa();EA===k&&nI===L||z_(k,L);do try{cZ();break}catch(xe){e_(k,xe)}while(!0);if(uc(),Wa=ee,Bh.current=ve,hd!==null)throw Error(g(261));return EA=null,nI=0,Pp}function cZ(){for(;hd!==null;)wE(hd)}function kR(){for(;hd!==null&&!sp();)wE(hd)}function wE(k){var L=gA(k.alternate,k,F0);k.memoizedProps=k.pendingProps,L===null?GR(k):hd=L,nN.current=null}function GR(k){var L=k;do{var ee=L.alternate;if(k=L.return,L.flags&2048){if(ee=_S(L),ee!==null){ee.flags&=2047,hd=ee;return}k!==null&&(k.firstEffect=k.lastEffect=null,k.flags|=2048)}else{if(ee=hS(ee,L,F0),ee!==null){hd=ee;return}if(ee=L,ee.tag!==24&&ee.tag!==23||ee.memoizedState===null||F0&1073741824||!(ee.mode&4)){for(var ve=0,xe=ee.child;xe!==null;)ve|=xe.lanes|xe.childLanes,xe=xe.sibling;ee.childLanes=ve}k!==null&&!(k.flags&2048)&&(k.firstEffect===null&&(k.firstEffect=L.firstEffect),L.lastEffect!==null&&(k.lastEffect!==null&&(k.lastEffect.nextEffect=L.firstEffect),k.lastEffect=L.lastEffect),1Li()-BS?z_(k,0):p2|=ee),II(k,L)}function SS(k,L){var ee=k.stateNode;ee!==null&&ee.delete(L),L=0,L===0&&(L=k.mode,L&2?L&4?(qu===0&&(qu=dm),L=LA(62914560&~qu),L===0&&(L=4194304)):L=Zl()===99?1:2:L=1),ee=Sp(),k=V0(k,L),k!==null&&(za(k,L,ee),II(k,ee))}var gA;gA=function(k,L,ee){var ve=L.lanes;if(k!==null)if(k.memoizedProps!==L.pendingProps||bA.current)os=!0;else if(ee&ve)os=!!(k.flags&16384);else{switch(os=!1,L.tag){case 3:Pw(L),CB();break;case 5:D0(L);break;case 1:ec(L.type)&&Ud(L);break;case 4:tI(L,L.stateNode.containerInfo);break;case 10:b_(L,L.memoizedProps.value);break;case 13:if(L.memoizedState!==null)return ee&L.child.childLanes?C1(k,L,ee):(Hl(md,md.current&1),L=uA(k,L,ee),L!==null?L.sibling:null);Hl(md,md.current&1);break;case 19:if(ve=(ee&L.childLanes)!==0,k.flags&64){if(ve)return OI(k,L,ee);L.flags|=64}var xe=L.memoizedState;if(xe!==null&&(xe.rendering=null,xe.tail=null,xe.lastEffect=null),Hl(md,md.current),ve)break;return null;case 23:case 24:return L.lanes=0,rI(k,L,ee)}return uA(k,L,ee)}else os=!1;switch(L.lanes=0,L.tag){case 2:if(ve=L.type,k!==null&&(k.alternate=null,L.alternate=null,L.flags|=2),k=L.pendingProps,xe=Hi(L,Vd.current),uh(L,ee),xe=My(null,L,ve,k,xe,ee),L.flags|=1,typeof xe=="object"&&xe!==null&&typeof xe.render=="function"&&xe.$$typeof===void 0){if(L.tag=1,L.memoizedState=null,L.updateQueue=null,ec(ve)){var gt=!0;Ud(L)}else gt=!1;L.memoizedState=xe.state!==null&&xe.state!==void 0?xe.state:null,wb(L);var nr=ve.getDerivedStateFromProps;typeof nr=="function"&&ie(L,ve,nr,k),xe.updater=w,L.stateNode=xe,xe._reactInternals=L,zt(L,ve,k,ee),L=Cv(null,L,ve,!0,gt,ee)}else L.tag=0,wo(null,L,xe,ee),L=L.child;return L;case 16:xe=L.elementType;e:{switch(k!==null&&(k.alternate=null,L.alternate=null,L.flags|=2),k=L.pendingProps,gt=xe._init,xe=gt(xe._payload),L.type=xe,gt=L.tag=Bg(xe),k=vp(xe,k),gt){case 0:L=Nb(null,L,xe,k,ee);break e;case 1:L=zT(null,L,xe,k,ee);break e;case 11:L=fg(null,L,xe,k,ee);break e;case 14:L=mg(null,L,xe,vp(xe.type,k),ve,ee);break e}throw Error(g(306,xe,""))}return L;case 0:return ve=L.type,xe=L.pendingProps,xe=L.elementType===ve?xe:vp(ve,xe),Nb(k,L,ve,xe,ee);case 1:return ve=L.type,xe=L.pendingProps,xe=L.elementType===ve?xe:vp(ve,xe),zT(k,L,ve,xe,ee);case 3:if(Pw(L),ve=L.updateQueue,k===null||ve===null)throw Error(g(282));if(ve=L.pendingProps,xe=L.memoizedState,xe=xe!==null?xe.element:null,Rm(k,L),Zf(L,ve,null,ee),ve=L.memoizedState.element,ve===xe)CB(),L=uA(k,L,ee);else{if(xe=L.stateNode,(gt=xe.hydrate)&&(ka?(Uh=Td(L.stateNode.containerInfo),Bf=L,gt=Ym=!0):gt=!1),gt){if(ka&&(k=xe.mutableSourceEagerHydrationData,k!=null))for(xe=0;xe=to&>>=el&&xe<=Fa&&nr<=Eo){k.splice(L,1);break}else if(ve!==to||ee.width!==Kn.width||Eonr){if(!(gt!==el||ee.height!==Kn.height||Faxe)){to>ve&&(Kn.width+=to-ve,Kn.x=ve),Fagt&&(Kn.height+=el-gt,Kn.y=gt),Eoee&&(ee=nr)),nr component higher in the tree to provide a loading indicator or placeholder to display.`)}Op!==5&&(Op=2),Kn=Jy(Kn,Xr),bo=nr;do{switch(bo.tag){case 3:gt=Kn,bo.flags|=4096,L&=-L,bo.lanes|=L;var pA=Mw(bo,gt,L);tI(bo,pA);break e;case 1:gt=Kn;var fc=bo.type,Ju=bo.stateNode;if(!(bo.flags&64)&&(typeof fc.getDerivedStateFromError=="function"||Ju!==null&&typeof Ju.componentDidCatch=="function"&&(NI===null||!NI.has(Ju)))){bo.flags|=4096,L&=-L,bo.lanes|=L;var Vu=_v(bo,gt,L);tI(bo,Vu);break e}}bo=bo.return}while(bo!==null)}LR(ee)}catch(Dc){L=Dc,_d===ee&&ee!==null&&(_d=ee=ee.return);continue}break}while(!0)}function oa(){var G=vh.current;return vh.current=pc,G===null?pc:G}function kA(G,L){var ee=Va;Va|=16;var ve=oa();BA===G&&iI===L||q_(G,L);do try{lZ();break}catch(xe){t_(G,xe)}while(!0);if(uc(),Va=ee,vh.current=ve,_d!==null)throw Error(g(261));return BA=null,iI=0,Op}function lZ(){for(;_d!==null;)NE(_d)}function ZR(){for(;_d!==null&&!op();)NE(_d)}function NE(G){var L=AA(G.alternate,G,Z0);G.memoizedProps=G.pendingProps,L===null?LR(G):_d=L,iN.current=null}function LR(G){var L=G;do{var ee=L.alternate;if(G=L.return,L.flags&2048){if(ee=yS(L),ee!==null){ee.flags&=2047,_d=ee;return}G!==null&&(G.firstEffect=G.lastEffect=null,G.flags|=2048)}else{if(ee=_S(ee,L,Z0),ee!==null){_d=ee;return}if(ee=L,ee.tag!==24&&ee.tag!==23||ee.memoizedState===null||Z0&1073741824||!(ee.mode&4)){for(var ve=0,xe=ee.child;xe!==null;)ve|=xe.lanes|xe.childLanes,xe=xe.sibling;ee.childLanes=ve}G!==null&&!(G.flags&2048)&&(G.firstEffect===null&&(G.firstEffect=L.firstEffect),L.lastEffect!==null&&(G.lastEffect!==null&&(G.lastEffect.nextEffect=L.firstEffect),G.lastEffect=L.lastEffect),1Li()-vS?q_(G,0):f2|=ee),CI(G,L)}function wS(G,L){var ee=G.stateNode;ee!==null&&ee.delete(L),L=0,L===0&&(L=G.mode,L&2?L&4?($u===0&&($u=pm),L=VA(62914560&~$u),L===0&&(L=4194304)):L=Ll()===99?1:2:L=1),ee=wp(),G=W0(G,L),G!==null&&(ja(G,L,ee),CI(G,ee))}var AA;AA=function(G,L,ee){var ve=L.lanes;if(G!==null)if(G.memoizedProps!==L.pendingProps||EA.current)os=!0;else if(ee&ve)os=!!(G.flags&16384);else{switch(os=!1,L.tag){case 3:Ow(L),hB();break;case 5:x0(L);break;case 1:ec(L.type)&&Kd(L);break;case 4:rI(L,L.stateNode.containerInfo);break;case 10:E_(L,L.memoizedProps.value);break;case 13:if(L.memoizedState!==null)return ee&L.child.childLanes?m1(G,L,ee):(Xl(hd,hd.current&1),L=gA(G,L,ee),L!==null?L.sibling:null);Xl(hd,hd.current&1);break;case 19:if(ve=(ee&L.childLanes)!==0,G.flags&64){if(ve)return QI(G,L,ee);L.flags|=64}var xe=L.memoizedState;if(xe!==null&&(xe.rendering=null,xe.tail=null,xe.lastEffect=null),Xl(hd,hd.current),ve)break;return null;case 23:case 24:return L.lanes=0,nI(G,L,ee)}return gA(G,L,ee)}else os=!1;switch(L.lanes=0,L.tag){case 2:if(ve=L.type,G!==null&&(G.alternate=null,L.alternate=null,L.flags|=2),G=L.pendingProps,xe=Yi(L,Wd.current),gh(L,ee),xe=My(null,L,ve,G,xe,ee),L.flags|=1,typeof xe=="object"&&xe!==null&&typeof xe.render=="function"&&xe.$$typeof===void 0){if(L.tag=1,L.memoizedState=null,L.updateQueue=null,ec(ve)){var gt=!0;Kd(L)}else gt=!1;L.memoizedState=xe.state!==null&&xe.state!==void 0?xe.state:null,Nb(L);var nr=ve.getDerivedStateFromProps;typeof nr=="function"&&ie(L,ve,nr,G),xe.updater=w,L.stateNode=xe,xe._reactInternals=L,zt(L,ve,G,ee),L=mv(null,L,ve,!0,gt,ee)}else L.tag=0,So(null,L,xe,ee),L=L.child;return L;case 16:xe=L.elementType;e:{switch(G!==null&&(G.alternate=null,L.alternate=null,L.flags|=2),G=L.pendingProps,gt=xe._init,xe=gt(xe._payload),L.type=xe,gt=L.tag=vg(xe),G=Sp(xe,G),gt){case 0:L=Db(null,L,xe,G,ee);break e;case 1:L=qT(null,L,xe,G,ee);break e;case 11:L=Ig(null,L,xe,G,ee);break e;case 14:L=hg(null,L,xe,Sp(xe.type,G),ve,ee);break e}throw Error(g(306,xe,""))}return L;case 0:return ve=L.type,xe=L.pendingProps,xe=L.elementType===ve?xe:Sp(ve,xe),Db(G,L,ve,xe,ee);case 1:return ve=L.type,xe=L.pendingProps,xe=L.elementType===ve?xe:Sp(ve,xe),qT(G,L,ve,xe,ee);case 3:if(Ow(L),ve=L.updateQueue,G===null||ve===null)throw Error(g(282));if(ve=L.pendingProps,xe=L.memoizedState,xe=xe!==null?xe.element:null,Dm(G,L),Lf(L,ve,null,ee),ve=L.memoizedState.element,ve===xe)hB(),L=gA(G,L,ee);else{if(xe=L.stateNode,(gt=xe.hydrate)&&(xa?(Kh=Nd(L.stateNode.containerInfo),vf=L,gt=Ym=!0):gt=!1),gt){if(xa&&(G=xe.mutableSourceEagerHydrationData,G!=null))for(xe=0;xe=eo&>>=tl&&xe<=Ga&&nr<=bo){G.splice(L,1);break}else if(ve!==eo||ee.width!==Kn.width||bonr){if(!(gt!==tl||ee.height!==Kn.height||Gaxe)){eo>ve&&(Kn.width+=eo-ve,Kn.x=ve),Gagt&&(Kn.height+=tl-gt,Kn.y=gt),boee&&(ee=nr)),nr ")+` No matching component was found for: - `)+k.join(" > ")}return null},r.getPublicRootInstance=function(k){if(k=k.current,!k.child)return null;switch(k.child.tag){case 5:return er(k.child.stateNode);default:return k.child.stateNode}},r.injectIntoDevTools=function(k){if(k={bundleType:k.bundleType,version:k.version,rendererPackageName:k.rendererPackageName,rendererConfig:k.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:p.ReactCurrentDispatcher,findHostInstanceByFiber:MI,findFiberByHostInstance:k.findFiberByHostInstance||FR,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")k=!1;else{var L=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!L.isDisabled&&L.supportsFiber)try{ys=L.inject(k),Xa=L}catch{}k=!0}return k},r.observeVisibleRects=function(k,L,ee,ve){if(!YA)throw Error(g(363));k=_v(k,L);var xe=nn(k,ee,ve).disconnect;return{disconnect:function(){xe()}}},r.registerMutableSourceForHydration=function(k,L){var ee=L._getVersion;ee=ee(L._source),k.mutableSourceEagerHydrationData==null?k.mutableSourceEagerHydrationData=[L,ee]:k.mutableSourceEagerHydrationData.push(L,ee)},r.runWithPriority=function(k,L){var ee=eo;try{return eo=k,L()}finally{eo=ee}},r.shouldSuspend=function(){return!1},r.unbatchedUpdates=function(k,L){var ee=Wa;Wa&=-2,Wa|=8;try{return k(L)}finally{Wa=ee,Wa===0&&(vh(),pl())}},r.updateContainer=function(k,L,ee,ve){var xe=L.current,gt=Sp(),nr=eC(xe);e:if(ee){ee=ee._reactInternals;t:{if(et(ee)!==ee||ee.tag!==1)throw Error(g(170));var Xr=ee;do{switch(Xr.tag){case 3:Xr=Xr.stateNode.context;break t;case 1:if(ec(Xr.type)){Xr=Xr.stateNode.__reactInternalMemoizedMergedChildContext;break t}}Xr=Xr.return}while(Xr!==null);throw Error(g(171))}if(ee.tag===1){var Kn=ee.type;if(ec(Kn)){ee=NA(ee,Kn,Xr);break e}}ee=Xr}else ee=Ff;return L.context===null?L.context=ee:L.pendingContext=ee,L=PI(gt,nr),L.payload={element:k},ve=ve===void 0?null:ve,ve!==null&&(L.callback=ve),Ef(xe,L),yd(xe,nr,gt),nr},r}});var jWi=z((TQl,KWi)=>{"use strict";KWi.exports=UWi()});var zWi=z($Xe=>{"use strict";var qhc=$Xe&&$Xe.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty($Xe,"__esModule",{value:!0});var $hc=qhc(PWe()),Pvr={};$Xe.default=e=>{if(e.length===0)return{width:0,height:0};if(Pvr[e])return Pvr[e];let t=$hc.default(e),r=e.split(` -`).length;return Pvr[e]={width:t,height:r},{width:t,height:r}}});var qWi=z(e4e=>{"use strict";var e_c=e4e&&e4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e4e,"__esModule",{value:!0});var Xh=e_c(vW()),t_c=(e,t)=>{"position"in t&&e.setPositionType(t.position==="absolute"?Xh.default.POSITION_TYPE_ABSOLUTE:Xh.default.POSITION_TYPE_RELATIVE)},r_c=(e,t)=>{"marginLeft"in t&&e.setMargin(Xh.default.EDGE_START,t.marginLeft||0),"marginRight"in t&&e.setMargin(Xh.default.EDGE_END,t.marginRight||0),"marginTop"in t&&e.setMargin(Xh.default.EDGE_TOP,t.marginTop||0),"marginBottom"in t&&e.setMargin(Xh.default.EDGE_BOTTOM,t.marginBottom||0)},n_c=(e,t)=>{"paddingLeft"in t&&e.setPadding(Xh.default.EDGE_LEFT,t.paddingLeft||0),"paddingRight"in t&&e.setPadding(Xh.default.EDGE_RIGHT,t.paddingRight||0),"paddingTop"in t&&e.setPadding(Xh.default.EDGE_TOP,t.paddingTop||0),"paddingBottom"in t&&e.setPadding(Xh.default.EDGE_BOTTOM,t.paddingBottom||0)},i_c=(e,t)=>{var r;"flexGrow"in t&&e.setFlexGrow((r=t.flexGrow)!==null&&r!==void 0?r:0),"flexShrink"in t&&e.setFlexShrink(typeof t.flexShrink=="number"?t.flexShrink:1),"flexDirection"in t&&(t.flexDirection==="row"&&e.setFlexDirection(Xh.default.FLEX_DIRECTION_ROW),t.flexDirection==="row-reverse"&&e.setFlexDirection(Xh.default.FLEX_DIRECTION_ROW_REVERSE),t.flexDirection==="column"&&e.setFlexDirection(Xh.default.FLEX_DIRECTION_COLUMN),t.flexDirection==="column-reverse"&&e.setFlexDirection(Xh.default.FLEX_DIRECTION_COLUMN_REVERSE)),"flexBasis"in t&&(typeof t.flexBasis=="number"?e.setFlexBasis(t.flexBasis):typeof t.flexBasis=="string"?e.setFlexBasisPercent(Number.parseInt(t.flexBasis,10)):e.setFlexBasis(NaN)),"alignItems"in t&&((t.alignItems==="stretch"||!t.alignItems)&&e.setAlignItems(Xh.default.ALIGN_STRETCH),t.alignItems==="flex-start"&&e.setAlignItems(Xh.default.ALIGN_FLEX_START),t.alignItems==="center"&&e.setAlignItems(Xh.default.ALIGN_CENTER),t.alignItems==="flex-end"&&e.setAlignItems(Xh.default.ALIGN_FLEX_END)),"alignSelf"in t&&((t.alignSelf==="auto"||!t.alignSelf)&&e.setAlignSelf(Xh.default.ALIGN_AUTO),t.alignSelf==="flex-start"&&e.setAlignSelf(Xh.default.ALIGN_FLEX_START),t.alignSelf==="center"&&e.setAlignSelf(Xh.default.ALIGN_CENTER),t.alignSelf==="flex-end"&&e.setAlignSelf(Xh.default.ALIGN_FLEX_END)),"justifyContent"in t&&((t.justifyContent==="flex-start"||!t.justifyContent)&&e.setJustifyContent(Xh.default.JUSTIFY_FLEX_START),t.justifyContent==="center"&&e.setJustifyContent(Xh.default.JUSTIFY_CENTER),t.justifyContent==="flex-end"&&e.setJustifyContent(Xh.default.JUSTIFY_FLEX_END),t.justifyContent==="space-between"&&e.setJustifyContent(Xh.default.JUSTIFY_SPACE_BETWEEN),t.justifyContent==="space-around"&&e.setJustifyContent(Xh.default.JUSTIFY_SPACE_AROUND))},s_c=(e,t)=>{var r,s;"width"in t&&(typeof t.width=="number"?e.setWidth(t.width):typeof t.width=="string"?e.setWidthPercent(Number.parseInt(t.width,10)):e.setWidthAuto()),"height"in t&&(typeof t.height=="number"?e.setHeight(t.height):typeof t.height=="string"?e.setHeightPercent(Number.parseInt(t.height,10)):e.setHeightAuto()),"minWidth"in t&&(typeof t.minWidth=="string"?e.setMinWidthPercent(Number.parseInt(t.minWidth,10)):e.setMinWidth((r=t.minWidth)!==null&&r!==void 0?r:0)),"minHeight"in t&&(typeof t.minHeight=="string"?e.setMinHeightPercent(Number.parseInt(t.minHeight,10)):e.setMinHeight((s=t.minHeight)!==null&&s!==void 0?s:0))},o_c=(e,t)=>{"display"in t&&e.setDisplay(t.display==="flex"?Xh.default.DISPLAY_FLEX:Xh.default.DISPLAY_NONE)},a_c=(e,t)=>{if("borderStyle"in t){let r=typeof t.borderStyle=="string"?1:0;e.setBorder(Xh.default.EDGE_TOP,r),e.setBorder(Xh.default.EDGE_BOTTOM,r),e.setBorder(Xh.default.EDGE_LEFT,r),e.setBorder(Xh.default.EDGE_RIGHT,r)}};e4e.default=(e,t={})=>{t_c(e,t),r_c(e,t),n_c(e,t),i_c(e,t),s_c(e,t),o_c(e,t),a_c(e,t)}});var Mvr=z(t4e=>{"use strict";var $Wi=t4e&&t4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t4e,"__esModule",{value:!0});var c_c=$Wi(j7t()),l_c=$Wi(z7t()),Ovr={};t4e.default=(e,t,r)=>{let s=e+String(t)+String(r);if(Ovr[s])return Ovr[s];let a=e;if(r==="wrap"&&(a=c_c.default(e,t,{trim:!1,hard:!0})),r.startsWith("truncate")){let o="end";r==="truncate-middle"&&(o="middle"),r==="truncate-start"&&(o="start"),a=l_c.default(e,t,{position:o})}return Ovr[s]=a,a}});var Yvr=z(Qvr=>{"use strict";Object.defineProperty(Qvr,"__esModule",{value:!0});var e3i=e=>{let t="";if(e.childNodes.length>0)for(let r of e.childNodes){let s="";r.nodeName==="#text"?s=r.nodeValue:((r.nodeName==="ink-text"||r.nodeName==="ink-virtual-text")&&(s=e3i(r)),s.length>0&&typeof r.internal_transform=="function"&&(s=r.internal_transform(s))),t+=s}return t};Qvr.default=e3i});var Hvr=z(A1=>{"use strict";var r4e=A1&&A1.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(A1,"__esModule",{value:!0});A1.setTextNodeValue=A1.createTextNode=A1.setStyle=A1.setAttribute=A1.removeChildNode=A1.insertBeforeNode=A1.appendChildNode=A1.createNode=A1.TEXT_NAME=void 0;var u_c=r4e(vW()),t3i=r4e(zWi()),g_c=r4e(qWi()),A_c=r4e(Mvr()),d_c=r4e(Yvr());A1.TEXT_NAME="#text";A1.createNode=e=>{var t;let r={nodeName:e,style:{},attributes:{},childNodes:[],parentNode:null,yogaNode:e==="ink-virtual-text"?void 0:u_c.default.Node.create()};return e==="ink-text"&&((t=r.yogaNode)===null||t===void 0||t.setMeasureFunc(p_c.bind(null,r))),r};A1.appendChildNode=(e,t)=>{var r;t.parentNode&&A1.removeChildNode(t.parentNode,t),t.parentNode=e,e.childNodes.push(t),t.yogaNode&&((r=e.yogaNode)===null||r===void 0||r.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&ISt(e)};A1.insertBeforeNode=(e,t,r)=>{var s,a;t.parentNode&&A1.removeChildNode(t.parentNode,t),t.parentNode=e;let o=e.childNodes.indexOf(r);if(o>=0){e.childNodes.splice(o,0,t),t.yogaNode&&((s=e.yogaNode)===null||s===void 0||s.insertChild(t.yogaNode,o));return}e.childNodes.push(t),t.yogaNode&&((a=e.yogaNode)===null||a===void 0||a.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&ISt(e)};A1.removeChildNode=(e,t)=>{var r,s;t.yogaNode&&((s=(r=t.parentNode)===null||r===void 0?void 0:r.yogaNode)===null||s===void 0||s.removeChild(t.yogaNode)),t.parentNode=null;let a=e.childNodes.indexOf(t);a>=0&&e.childNodes.splice(a,1),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&ISt(e)};A1.setAttribute=(e,t,r)=>{e.attributes[t]=r};A1.setStyle=(e,t)=>{e.style=t,e.yogaNode&&g_c.default(e.yogaNode,t)};A1.createTextNode=e=>{let t={nodeName:"#text",nodeValue:e,yogaNode:void 0,parentNode:null,style:{}};return A1.setTextNodeValue(t,e),t};var p_c=function(e,t){var r,s;let a=e.nodeName==="#text"?e.nodeValue:d_c.default(e),o=t3i.default(a);if(o.width<=t||o.width>=1&&t>0&&t<1)return o;let g=(s=(r=e.style)===null||r===void 0?void 0:r.textWrap)!==null&&s!==void 0?s:"wrap",p=A_c.default(a,t,g);return t3i.default(p)},r3i=e=>{var t;if(!(!e||!e.parentNode))return(t=e.yogaNode)!==null&&t!==void 0?t:r3i(e.parentNode)},ISt=e=>{let t=r3i(e);t?.markDirty()};A1.setTextNodeValue=(e,t)=>{typeof t!="string"&&(t=String(t)),e.nodeValue=t,ISt(e)}});var a3i=z(n4e=>{"use strict";var o3i=n4e&&n4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(n4e,"__esModule",{value:!0});var n3i=VWe(),f_c=o3i(jWi()),i3i=o3i(vW()),qk=Hvr(),s3i=e=>{e?.unsetMeasureFunc(),e?.freeRecursive()};n4e.default=f_c.default({schedulePassiveEffects:n3i.unstable_scheduleCallback,cancelPassiveEffects:n3i.unstable_cancelCallback,now:Date.now,getRootHostContext:()=>({isInsideText:!1}),prepareForCommit:()=>null,preparePortalMount:()=>null,clearContainer:()=>!1,shouldDeprioritizeSubtree:()=>!1,resetAfterCommit:e=>{if(e.isStaticDirty){e.isStaticDirty=!1,typeof e.onImmediateRender=="function"&&e.onImmediateRender();return}typeof e.onRender=="function"&&e.onRender()},getChildHostContext:(e,t)=>{let r=e.isInsideText,s=t==="ink-text"||t==="ink-virtual-text";return r===s?e:{isInsideText:s}},shouldSetTextContent:()=>!1,createInstance:(e,t,r,s)=>{if(s.isInsideText&&e==="ink-box")throw new Error(" can\u2019t be nested inside component");let a=e==="ink-text"&&s.isInsideText?"ink-virtual-text":e,o=qk.createNode(a);for(let[g,p]of Object.entries(t))g!=="children"&&(g==="style"?qk.setStyle(o,p):g==="internal_transform"?o.internal_transform=p:g==="internal_static"?o.internal_static=!0:qk.setAttribute(o,g,p));return o},createTextInstance:(e,t,r)=>{if(!r.isInsideText)throw new Error(`Text string "${e}" must be rendered inside component`);return qk.createTextNode(e)},resetTextContent:()=>{},hideTextInstance:e=>{qk.setTextNodeValue(e,"")},unhideTextInstance:(e,t)=>{qk.setTextNodeValue(e,t)},getPublicInstance:e=>e,hideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(i3i.default.DISPLAY_NONE)},unhideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(i3i.default.DISPLAY_FLEX)},appendInitialChild:qk.appendChildNode,appendChild:qk.appendChildNode,insertBefore:qk.insertBeforeNode,finalizeInitialChildren:(e,t,r,s)=>(e.internal_static&&(s.isStaticDirty=!0,s.staticNode=e),!1),supportsMutation:!0,appendChildToContainer:qk.appendChildNode,insertInContainerBefore:qk.insertBeforeNode,removeChildFromContainer:(e,t)=>{qk.removeChildNode(e,t),s3i(t.yogaNode)},prepareUpdate:(e,t,r,s,a)=>{e.internal_static&&(a.isStaticDirty=!0);let o={},g=Object.keys(s);for(let p of g)if(s[p]!==r[p]){if(p==="style"&&typeof s.style=="object"&&typeof r.style=="object"){let m=s.style,y=r.style,B=Object.keys(m);for(let v of B){if(v==="borderStyle"||v==="borderColor"){if(typeof o.style!="object"){let G={};o.style=G}o.style.borderStyle=m.borderStyle,o.style.borderColor=m.borderColor}if(m[v]!==y[v]){if(typeof o.style!="object"){let G={};o.style=G}o.style[v]=m[v]}}continue}o[p]=s[p]}return o},commitUpdate:(e,t)=>{for(let[r,s]of Object.entries(t))r!=="children"&&(r==="style"?qk.setStyle(e,s):r==="internal_transform"?e.internal_transform=s:r==="internal_static"?e.internal_static=!0:qk.setAttribute(e,r,s))},commitTextUpdate:(e,t,r)=>{qk.setTextNodeValue(e,r)},removeChild:(e,t)=>{qk.removeChildNode(e,t),s3i(t.yogaNode)}})});var c3i=z(i4e=>{"use strict";var I_c=i4e&&i4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(i4e,"__esModule",{value:!0});var CSt=I_c(vW());i4e.default=e=>e.getComputedWidth()-e.getComputedPadding(CSt.default.EDGE_LEFT)-e.getComputedPadding(CSt.default.EDGE_RIGHT)-e.getComputedBorder(CSt.default.EDGE_LEFT)-e.getComputedBorder(CSt.default.EDGE_RIGHT)});var Xvr=z(o4e=>{"use strict";var C_c=o4e&&o4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(o4e,"__esModule",{value:!0});var s4e=C_c($ne()),m_c=/^(rgb|hsl|hsv|hwb)\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/,h_c=/^(ansi|ansi256)\(\s?(\d+)\s?\)$/,mSt=(e,t)=>t==="foreground"?e:"bg"+e[0].toUpperCase()+e.slice(1);o4e.default=(e,t,r)=>{if(!t)return e;if(t in s4e.default){let a=mSt(t,r);return s4e.default[a](e)}if(t.startsWith("#")){let a=mSt("hex",r);return s4e.default[a](t)(e)}if(t.startsWith("ansi")){let a=h_c.exec(t);if(!a)return e;let o=mSt(a[1],r),g=Number(a[2]);return s4e.default[o](g)(e)}if(t.startsWith("rgb")||t.startsWith("hsl")||t.startsWith("hsv")||t.startsWith("hwb")){let a=m_c.exec(t);if(!a)return e;let o=mSt(a[1],r),g=Number(a[2]),p=Number(a[3]),f=Number(a[4]);return s4e.default[o](g,p,f)(e)}return e}});var u3i=z(a4e=>{"use strict";var l3i=a4e&&a4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(a4e,"__esModule",{value:!0});var __c=l3i(sjt()),Jvr=l3i(Xvr());a4e.default=(e,t,r,s)=>{if(typeof r.style.borderStyle=="string"){let a=r.yogaNode.getComputedWidth(),o=r.yogaNode.getComputedHeight(),g=r.style.borderColor,p=__c.default[r.style.borderStyle],f=Jvr.default(p.topLeft+p.horizontal.repeat(a-2)+p.topRight,g,"foreground"),m=(Jvr.default(p.vertical,g,"foreground")+` -`).repeat(o-2),y=Jvr.default(p.bottomLeft+p.horizontal.repeat(a-2)+p.bottomRight,g,"foreground");s.write(e,t,f,{transformers:[]}),s.write(e,t+1,m,{transformers:[]}),s.write(e+a-1,t+1,m,{transformers:[]}),s.write(e,t+o-1,y,{transformers:[]})}}});var A3i=z(c4e=>{"use strict";var rCe=c4e&&c4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(c4e,"__esModule",{value:!0});var y_c=rCe(vW()),b_c=rCe(PWe()),E_c=rCe(njt()),B_c=rCe(Mvr()),v_c=rCe(c3i()),S_c=rCe(Yvr()),w_c=rCe(u3i()),T_c=(e,t)=>{var r;let s=(r=e.childNodes[0])===null||r===void 0?void 0:r.yogaNode;if(s){let a=s.getComputedLeft(),o=s.getComputedTop();t=` -`.repeat(o)+E_c.default(t,a)}return t},g3i=(e,t,r)=>{var s;let{offsetX:a=0,offsetY:o=0,transformers:g=[],skipStaticElements:p}=r;if(p&&e.internal_static)return;let{yogaNode:f}=e;if(f){if(f.getDisplay()===y_c.default.DISPLAY_NONE)return;let m=a+f.getComputedLeft(),y=o+f.getComputedTop(),B=g;if(typeof e.internal_transform=="function"&&(B=[e.internal_transform,...g]),e.nodeName==="ink-text"){let v=S_c.default(e);if(v.length>0){let G=b_c.default(v),T=v_c.default(f);if(G>T){let O=(s=e.style.textWrap)!==null&&s!==void 0?s:"wrap";v=B_c.default(v,T,O)}v=T_c(e,v),t.write(m,y,v,{transformers:B})}return}if(e.nodeName==="ink-box"&&w_c.default(m,y,e,t),e.nodeName==="ink-root"||e.nodeName==="ink-box")for(let v of e.childNodes)g3i(v,t,{offsetX:m,offsetY:y,transformers:B,skipStaticElements:p})}};c4e.default=g3i});var f3i=z(l4e=>{"use strict";var p3i=l4e&&l4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(l4e,"__esModule",{value:!0});var d3i=p3i(Ect()),N_c=p3i(s1e()),Uvr=class{constructor(t){this.writes=[];let{width:r,height:s}=t;this.width=r,this.height=s}write(t,r,s,a){let{transformers:o}=a;s&&this.writes.push({x:t,y:r,text:s,transformers:o})}get(){let t=[];for(let s=0;ss.trimRight()).join(` -`),height:t.length}}};l4e.default=Uvr});var m3i=z(u4e=>{"use strict";var Kvr=u4e&&u4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(u4e,"__esModule",{value:!0});var R_c=Kvr(vW()),I3i=Kvr(A3i()),C3i=Kvr(f3i());u4e.default=(e,t)=>{var r;if(e.yogaNode.setWidth(t),e.yogaNode){e.yogaNode.calculateLayout(void 0,void 0,R_c.default.DIRECTION_LTR);let s=new C3i.default({width:e.yogaNode.getComputedWidth(),height:e.yogaNode.getComputedHeight()});I3i.default(e,s,{skipStaticElements:!0});let a;!((r=e.staticNode)===null||r===void 0)&&r.yogaNode&&(a=new C3i.default({width:e.staticNode.yogaNode.getComputedWidth(),height:e.staticNode.yogaNode.getComputedHeight()}),I3i.default(e.staticNode,a,{skipStaticElements:!1}));let{output:o,height:g}=s.get();return{output:o,outputHeight:g,staticOutput:a?`${a.get().output} -`:""}}return{output:"",outputHeight:0,staticOutput:""}}});var zvr=z(jvr=>{"use strict";Object.defineProperty(jvr,"__esModule",{value:!0});jvr.default=new WeakMap});var $vr=z(qvr=>{"use strict";Object.defineProperty(qvr,"__esModule",{value:!0});var D_c=Pm(),h3i=D_c.createContext({exit:()=>{}});h3i.displayName="InternalAppContext";qvr.default=h3i});var tSr=z(eSr=>{"use strict";Object.defineProperty(eSr,"__esModule",{value:!0});var x_c=Pm(),_3i=x_c.createContext({stdin:void 0,setRawMode:()=>{},isRawModeSupported:!1,internal_exitOnCtrlC:!0});_3i.displayName="InternalStdinContext";eSr.default=_3i});var nSr=z(rSr=>{"use strict";Object.defineProperty(rSr,"__esModule",{value:!0});var k_c=Pm(),y3i=k_c.createContext({stdout:void 0,write:()=>{}});y3i.displayName="InternalStdoutContext";rSr.default=y3i});var sSr=z(iSr=>{"use strict";Object.defineProperty(iSr,"__esModule",{value:!0});var G_c=Pm(),b3i=G_c.createContext({stderr:void 0,write:()=>{}});b3i.displayName="InternalStderrContext";iSr.default=b3i});var hSt=z(oSr=>{"use strict";Object.defineProperty(oSr,"__esModule",{value:!0});var F_c=Pm(),E3i=F_c.createContext({activeId:void 0,add:()=>{},remove:()=>{},activate:()=>{},deactivate:()=>{},enableFocus:()=>{},disableFocus:()=>{},focusNext:()=>{},focusPrevious:()=>{},focus:()=>{}});E3i.displayName="InternalFocusContext";oSr.default=E3i});var _St=z(M5=>{"use strict";var Z_c=M5&&M5.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),L_c=M5&&M5.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),V_c=M5&&M5.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&Z_c(t,e,r);return L_c(t,e),t},W_c=M5&&M5.__rest||function(e,t){var r={};for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&t.indexOf(s)<0&&(r[s]=e[s]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,s=Object.getOwnPropertySymbols(e);a{var{children:r}=e,s=W_c(e,["children"]);let a=Object.assign(Object.assign({},s),{marginLeft:s.marginLeft||s.marginX||s.margin||0,marginRight:s.marginRight||s.marginX||s.margin||0,marginTop:s.marginTop||s.marginY||s.margin||0,marginBottom:s.marginBottom||s.marginY||s.margin||0,paddingLeft:s.paddingLeft||s.paddingX||s.padding||0,paddingRight:s.paddingRight||s.paddingX||s.padding||0,paddingTop:s.paddingTop||s.paddingY||s.padding||0,paddingBottom:s.paddingBottom||s.paddingY||s.padding||0});return B3i.default.createElement("ink-box",{ref:t,style:a},r)});aSr.displayName="Box";aSr.defaultProps={flexDirection:"row",flexGrow:0,flexShrink:1};M5.default=aSr});var uSr=z(g4e=>{"use strict";var cSr=g4e&&g4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(g4e,"__esModule",{value:!0});var P_c=cSr(Pm()),ENe=cSr($ne()),v3i=cSr(Xvr()),lSr=({color:e,backgroundColor:t,dimColor:r,bold:s,italic:a,underline:o,strikethrough:g,inverse:p,wrap:f,children:m})=>{if(m==null)return null;let y=B=>(r&&(B=ENe.default.dim(B)),e&&(B=v3i.default(B,e,"foreground")),t&&(B=v3i.default(B,t,"background")),s&&(B=ENe.default.bold(B)),a&&(B=ENe.default.italic(B)),o&&(B=ENe.default.underline(B)),g&&(B=ENe.default.strikethrough(B)),p&&(B=ENe.default.inverse(B)),B);return P_c.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:f},internal_transform:y},m)};lSr.displayName="Text";lSr.defaultProps={dimColor:!1,bold:!1,italic:!1,underline:!1,strikethrough:!1,wrap:"wrap"};g4e.default=lSr});var N3i=z(Q5=>{"use strict";var O_c=Q5&&Q5.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),M_c=Q5&&Q5.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Q_c=Q5&&Q5.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&O_c(t,e,r);return M_c(t,e),t},A4e=Q5&&Q5.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Q5,"__esModule",{value:!0});var S3i=Q_c(Dt("fs")),MT=A4e(Pm()),w3i=A4e(kct()),Y_c=A4e(Njt()),Wq=A4e(_St()),LK=A4e(uSr()),T3i=new w3i.default({cwd:process.cwd(),internals:w3i.default.nodeInternals()}),H_c=({error:e})=>{let t=e.stack?e.stack.split(` -`).slice(1):void 0,r=t?T3i.parseLine(t[0]):void 0,s,a=0;if(r?.file&&r?.line&&S3i.existsSync(r.file)){let o=S3i.readFileSync(r.file,"utf8");if(s=Y_c.default(o,r.line),s)for(let{line:g}of s)a=Math.max(a,String(g).length)}return MT.default.createElement(Wq.default,{flexDirection:"column",padding:1},MT.default.createElement(Wq.default,null,MT.default.createElement(LK.default,{backgroundColor:"red",color:"white"}," ","ERROR"," "),MT.default.createElement(LK.default,null," ",e.message)),r&&MT.default.createElement(Wq.default,{marginTop:1},MT.default.createElement(LK.default,{dimColor:!0},r.file,":",r.line,":",r.column)),r&&s&&MT.default.createElement(Wq.default,{marginTop:1,flexDirection:"column"},s.map(({line:o,value:g})=>MT.default.createElement(Wq.default,{key:o},MT.default.createElement(Wq.default,{width:a+1},MT.default.createElement(LK.default,{dimColor:o!==r.line,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0},String(o).padStart(a," "),":")),MT.default.createElement(LK.default,{key:o,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0}," "+g)))),e.stack&&MT.default.createElement(Wq.default,{marginTop:1,flexDirection:"column"},e.stack.split(` -`).slice(1).map(o=>{let g=T3i.parseLine(o);return g?MT.default.createElement(Wq.default,{key:o},MT.default.createElement(LK.default,{dimColor:!0},"- "),MT.default.createElement(LK.default,{dimColor:!0,bold:!0},g.function),MT.default.createElement(LK.default,{dimColor:!0,color:"gray"}," ","(",g.file,":",g.line,":",g.column,")")):MT.default.createElement(Wq.default,{key:o},MT.default.createElement(LK.default,{dimColor:!0},"- "),MT.default.createElement(LK.default,{dimColor:!0,bold:!0},o))})))};Q5.default=H_c});var D3i=z(Y5=>{"use strict";var X_c=Y5&&Y5.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),J_c=Y5&&Y5.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),U_c=Y5&&Y5.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&X_c(t,e,r);return J_c(t,e),t},iCe=Y5&&Y5.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Y5,"__esModule",{value:!0});var nCe=U_c(Pm()),R3i=iCe(r1e()),K_c=iCe($vr()),j_c=iCe(tSr()),z_c=iCe(nSr()),q_c=iCe(sSr()),$_c=iCe(hSt()),e0c=iCe(N3i()),t0c=" ",r0c="\x1B[Z",n0c="\x1B",ySt=class extends nCe.PureComponent{constructor(){super(...arguments),this.state={isFocusEnabled:!0,activeFocusId:void 0,focusables:[],error:void 0},this.rawModeEnabledCount=0,this.handleSetRawMode=t=>{let{stdin:r}=this.props;if(!this.isRawModeSupported())throw r===process.stdin?new Error(`Raw mode is not supported on the current process.stdin, which Ink uses as input stream by default. + `)+G.join(" > ")}return null},r.getPublicRootInstance=function(G){if(G=G.current,!G.child)return null;switch(G.child.tag){case 5:return er(G.child.stateNode);default:return G.child.stateNode}},r.injectIntoDevTools=function(G){if(G={bundleType:G.bundleType,version:G.version,rendererPackageName:G.rendererPackageName,rendererConfig:G.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:p.ReactCurrentDispatcher,findHostInstanceByFiber:MI,findFiberByHostInstance:G.findFiberByHostInstance||VR,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")G=!1;else{var L=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!L.isDisabled&&L.supportsFiber)try{ys=L.inject(G),Ya=L}catch{}G=!0}return G},r.observeVisibleRects=function(G,L,ee,ve){if(!YA)throw Error(g(363));G=yv(G,L);var xe=nn(G,ee,ve).disconnect;return{disconnect:function(){xe()}}},r.registerMutableSourceForHydration=function(G,L){var ee=L._getVersion;ee=ee(L._source),G.mutableSourceEagerHydrationData==null?G.mutableSourceEagerHydrationData=[L,ee]:G.mutableSourceEagerHydrationData.push(L,ee)},r.runWithPriority=function(G,L){var ee=$s;try{return $s=G,L()}finally{$s=ee}},r.shouldSuspend=function(){return!1},r.unbatchedUpdates=function(G,L){var ee=Va;Va&=-2,Va|=8;try{return G(L)}finally{Va=ee,Va===0&&(Sh(),fl())}},r.updateContainer=function(G,L,ee,ve){var xe=L.current,gt=wp(),nr=tC(xe);e:if(ee){ee=ee._reactInternals;t:{if(et(ee)!==ee||ee.tag!==1)throw Error(g(170));var Xr=ee;do{switch(Xr.tag){case 3:Xr=Xr.stateNode.context;break t;case 1:if(ec(Xr.type)){Xr=Xr.stateNode.__reactInternalMemoizedMergedChildContext;break t}}Xr=Xr.return}while(Xr!==null);throw Error(g(171))}if(ee.tag===1){var Kn=ee.type;if(ec(Kn)){ee=RA(ee,Kn,Xr);break e}}ee=Xr}else ee=Zf;return L.context===null?L.context=ee:L.pendingContext=ee,L=OI(gt,nr),L.payload={element:G},ve=ve===void 0?null:ve,ve!==null&&(L.callback=ve),Bf(xe,L),bd(xe,nr,gt),nr},r}});var n3i=z((j5l,r3i)=>{"use strict";r3i.exports=t3i()});var i3i=z(t4e=>{"use strict";var p_c=t4e&&t4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t4e,"__esModule",{value:!0});var f_c=p_c(QWe()),Xvr={};t4e.default=e=>{if(e.length===0)return{width:0,height:0};if(Xvr[e])return Xvr[e];let t=f_c.default(e),r=e.split(` +`).length;return Xvr[e]={width:t,height:r},{width:t,height:r}}});var s3i=z(r4e=>{"use strict";var I_c=r4e&&r4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(r4e,"__esModule",{value:!0});var Jh=I_c(SW()),C_c=(e,t)=>{"position"in t&&e.setPositionType(t.position==="absolute"?Jh.default.POSITION_TYPE_ABSOLUTE:Jh.default.POSITION_TYPE_RELATIVE)},m_c=(e,t)=>{"marginLeft"in t&&e.setMargin(Jh.default.EDGE_START,t.marginLeft||0),"marginRight"in t&&e.setMargin(Jh.default.EDGE_END,t.marginRight||0),"marginTop"in t&&e.setMargin(Jh.default.EDGE_TOP,t.marginTop||0),"marginBottom"in t&&e.setMargin(Jh.default.EDGE_BOTTOM,t.marginBottom||0)},h_c=(e,t)=>{"paddingLeft"in t&&e.setPadding(Jh.default.EDGE_LEFT,t.paddingLeft||0),"paddingRight"in t&&e.setPadding(Jh.default.EDGE_RIGHT,t.paddingRight||0),"paddingTop"in t&&e.setPadding(Jh.default.EDGE_TOP,t.paddingTop||0),"paddingBottom"in t&&e.setPadding(Jh.default.EDGE_BOTTOM,t.paddingBottom||0)},__c=(e,t)=>{var r;"flexGrow"in t&&e.setFlexGrow((r=t.flexGrow)!==null&&r!==void 0?r:0),"flexShrink"in t&&e.setFlexShrink(typeof t.flexShrink=="number"?t.flexShrink:1),"flexDirection"in t&&(t.flexDirection==="row"&&e.setFlexDirection(Jh.default.FLEX_DIRECTION_ROW),t.flexDirection==="row-reverse"&&e.setFlexDirection(Jh.default.FLEX_DIRECTION_ROW_REVERSE),t.flexDirection==="column"&&e.setFlexDirection(Jh.default.FLEX_DIRECTION_COLUMN),t.flexDirection==="column-reverse"&&e.setFlexDirection(Jh.default.FLEX_DIRECTION_COLUMN_REVERSE)),"flexBasis"in t&&(typeof t.flexBasis=="number"?e.setFlexBasis(t.flexBasis):typeof t.flexBasis=="string"?e.setFlexBasisPercent(Number.parseInt(t.flexBasis,10)):e.setFlexBasis(NaN)),"alignItems"in t&&((t.alignItems==="stretch"||!t.alignItems)&&e.setAlignItems(Jh.default.ALIGN_STRETCH),t.alignItems==="flex-start"&&e.setAlignItems(Jh.default.ALIGN_FLEX_START),t.alignItems==="center"&&e.setAlignItems(Jh.default.ALIGN_CENTER),t.alignItems==="flex-end"&&e.setAlignItems(Jh.default.ALIGN_FLEX_END)),"alignSelf"in t&&((t.alignSelf==="auto"||!t.alignSelf)&&e.setAlignSelf(Jh.default.ALIGN_AUTO),t.alignSelf==="flex-start"&&e.setAlignSelf(Jh.default.ALIGN_FLEX_START),t.alignSelf==="center"&&e.setAlignSelf(Jh.default.ALIGN_CENTER),t.alignSelf==="flex-end"&&e.setAlignSelf(Jh.default.ALIGN_FLEX_END)),"justifyContent"in t&&((t.justifyContent==="flex-start"||!t.justifyContent)&&e.setJustifyContent(Jh.default.JUSTIFY_FLEX_START),t.justifyContent==="center"&&e.setJustifyContent(Jh.default.JUSTIFY_CENTER),t.justifyContent==="flex-end"&&e.setJustifyContent(Jh.default.JUSTIFY_FLEX_END),t.justifyContent==="space-between"&&e.setJustifyContent(Jh.default.JUSTIFY_SPACE_BETWEEN),t.justifyContent==="space-around"&&e.setJustifyContent(Jh.default.JUSTIFY_SPACE_AROUND))},y_c=(e,t)=>{var r,s;"width"in t&&(typeof t.width=="number"?e.setWidth(t.width):typeof t.width=="string"?e.setWidthPercent(Number.parseInt(t.width,10)):e.setWidthAuto()),"height"in t&&(typeof t.height=="number"?e.setHeight(t.height):typeof t.height=="string"?e.setHeightPercent(Number.parseInt(t.height,10)):e.setHeightAuto()),"minWidth"in t&&(typeof t.minWidth=="string"?e.setMinWidthPercent(Number.parseInt(t.minWidth,10)):e.setMinWidth((r=t.minWidth)!==null&&r!==void 0?r:0)),"minHeight"in t&&(typeof t.minHeight=="string"?e.setMinHeightPercent(Number.parseInt(t.minHeight,10)):e.setMinHeight((s=t.minHeight)!==null&&s!==void 0?s:0))},b_c=(e,t)=>{"display"in t&&e.setDisplay(t.display==="flex"?Jh.default.DISPLAY_FLEX:Jh.default.DISPLAY_NONE)},E_c=(e,t)=>{if("borderStyle"in t){let r=typeof t.borderStyle=="string"?1:0;e.setBorder(Jh.default.EDGE_TOP,r),e.setBorder(Jh.default.EDGE_BOTTOM,r),e.setBorder(Jh.default.EDGE_LEFT,r),e.setBorder(Jh.default.EDGE_RIGHT,r)}};r4e.default=(e,t={})=>{C_c(e,t),m_c(e,t),h_c(e,t),__c(e,t),y_c(e,t),b_c(e,t),E_c(e,t)}});var Uvr=z(n4e=>{"use strict";var o3i=n4e&&n4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(n4e,"__esModule",{value:!0});var B_c=o3i($7t()),v_c=o3i(ejt()),Jvr={};n4e.default=(e,t,r)=>{let s=e+String(t)+String(r);if(Jvr[s])return Jvr[s];let a=e;if(r==="wrap"&&(a=B_c.default(e,t,{trim:!1,hard:!0})),r.startsWith("truncate")){let o="end";r==="truncate-middle"&&(o="middle"),r==="truncate-start"&&(o="start"),a=v_c.default(e,t,{position:o})}return Jvr[s]=a,a}});var jvr=z(Kvr=>{"use strict";Object.defineProperty(Kvr,"__esModule",{value:!0});var a3i=e=>{let t="";if(e.childNodes.length>0)for(let r of e.childNodes){let s="";r.nodeName==="#text"?s=r.nodeValue:((r.nodeName==="ink-text"||r.nodeName==="ink-virtual-text")&&(s=a3i(r)),s.length>0&&typeof r.internal_transform=="function"&&(s=r.internal_transform(s))),t+=s}return t};Kvr.default=a3i});var zvr=z(d1=>{"use strict";var i4e=d1&&d1.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(d1,"__esModule",{value:!0});d1.setTextNodeValue=d1.createTextNode=d1.setStyle=d1.setAttribute=d1.removeChildNode=d1.insertBeforeNode=d1.appendChildNode=d1.createNode=d1.TEXT_NAME=void 0;var S_c=i4e(SW()),c3i=i4e(i3i()),w_c=i4e(s3i()),T_c=i4e(Uvr()),N_c=i4e(jvr());d1.TEXT_NAME="#text";d1.createNode=e=>{var t;let r={nodeName:e,style:{},attributes:{},childNodes:[],parentNode:null,yogaNode:e==="ink-virtual-text"?void 0:S_c.default.Node.create()};return e==="ink-text"&&((t=r.yogaNode)===null||t===void 0||t.setMeasureFunc(R_c.bind(null,r))),r};d1.appendChildNode=(e,t)=>{var r;t.parentNode&&d1.removeChildNode(t.parentNode,t),t.parentNode=e,e.childNodes.push(t),t.yogaNode&&((r=e.yogaNode)===null||r===void 0||r.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&hSt(e)};d1.insertBeforeNode=(e,t,r)=>{var s,a;t.parentNode&&d1.removeChildNode(t.parentNode,t),t.parentNode=e;let o=e.childNodes.indexOf(r);if(o>=0){e.childNodes.splice(o,0,t),t.yogaNode&&((s=e.yogaNode)===null||s===void 0||s.insertChild(t.yogaNode,o));return}e.childNodes.push(t),t.yogaNode&&((a=e.yogaNode)===null||a===void 0||a.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&hSt(e)};d1.removeChildNode=(e,t)=>{var r,s;t.yogaNode&&((s=(r=t.parentNode)===null||r===void 0?void 0:r.yogaNode)===null||s===void 0||s.removeChild(t.yogaNode)),t.parentNode=null;let a=e.childNodes.indexOf(t);a>=0&&e.childNodes.splice(a,1),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&hSt(e)};d1.setAttribute=(e,t,r)=>{e.attributes[t]=r};d1.setStyle=(e,t)=>{e.style=t,e.yogaNode&&w_c.default(e.yogaNode,t)};d1.createTextNode=e=>{let t={nodeName:"#text",nodeValue:e,yogaNode:void 0,parentNode:null,style:{}};return d1.setTextNodeValue(t,e),t};var R_c=function(e,t){var r,s;let a=e.nodeName==="#text"?e.nodeValue:N_c.default(e),o=c3i.default(a);if(o.width<=t||o.width>=1&&t>0&&t<1)return o;let g=(s=(r=e.style)===null||r===void 0?void 0:r.textWrap)!==null&&s!==void 0?s:"wrap",p=T_c.default(a,t,g);return c3i.default(p)},l3i=e=>{var t;if(!(!e||!e.parentNode))return(t=e.yogaNode)!==null&&t!==void 0?t:l3i(e.parentNode)},hSt=e=>{let t=l3i(e);t?.markDirty()};d1.setTextNodeValue=(e,t)=>{typeof t!="string"&&(t=String(t)),e.nodeValue=t,hSt(e)}});var p3i=z(s4e=>{"use strict";var d3i=s4e&&s4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(s4e,"__esModule",{value:!0});var u3i=PWe(),D_c=d3i(n3i()),g3i=d3i(SW()),nG=zvr(),A3i=e=>{e?.unsetMeasureFunc(),e?.freeRecursive()};s4e.default=D_c.default({schedulePassiveEffects:u3i.unstable_scheduleCallback,cancelPassiveEffects:u3i.unstable_cancelCallback,now:Date.now,getRootHostContext:()=>({isInsideText:!1}),prepareForCommit:()=>null,preparePortalMount:()=>null,clearContainer:()=>!1,shouldDeprioritizeSubtree:()=>!1,resetAfterCommit:e=>{if(e.isStaticDirty){e.isStaticDirty=!1,typeof e.onImmediateRender=="function"&&e.onImmediateRender();return}typeof e.onRender=="function"&&e.onRender()},getChildHostContext:(e,t)=>{let r=e.isInsideText,s=t==="ink-text"||t==="ink-virtual-text";return r===s?e:{isInsideText:s}},shouldSetTextContent:()=>!1,createInstance:(e,t,r,s)=>{if(s.isInsideText&&e==="ink-box")throw new Error(" can\u2019t be nested inside component");let a=e==="ink-text"&&s.isInsideText?"ink-virtual-text":e,o=nG.createNode(a);for(let[g,p]of Object.entries(t))g!=="children"&&(g==="style"?nG.setStyle(o,p):g==="internal_transform"?o.internal_transform=p:g==="internal_static"?o.internal_static=!0:nG.setAttribute(o,g,p));return o},createTextInstance:(e,t,r)=>{if(!r.isInsideText)throw new Error(`Text string "${e}" must be rendered inside component`);return nG.createTextNode(e)},resetTextContent:()=>{},hideTextInstance:e=>{nG.setTextNodeValue(e,"")},unhideTextInstance:(e,t)=>{nG.setTextNodeValue(e,t)},getPublicInstance:e=>e,hideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(g3i.default.DISPLAY_NONE)},unhideInstance:e=>{var t;(t=e.yogaNode)===null||t===void 0||t.setDisplay(g3i.default.DISPLAY_FLEX)},appendInitialChild:nG.appendChildNode,appendChild:nG.appendChildNode,insertBefore:nG.insertBeforeNode,finalizeInitialChildren:(e,t,r,s)=>(e.internal_static&&(s.isStaticDirty=!0,s.staticNode=e),!1),supportsMutation:!0,appendChildToContainer:nG.appendChildNode,insertInContainerBefore:nG.insertBeforeNode,removeChildFromContainer:(e,t)=>{nG.removeChildNode(e,t),A3i(t.yogaNode)},prepareUpdate:(e,t,r,s,a)=>{e.internal_static&&(a.isStaticDirty=!0);let o={},g=Object.keys(s);for(let p of g)if(s[p]!==r[p]){if(p==="style"&&typeof s.style=="object"&&typeof r.style=="object"){let m=s.style,y=r.style,B=Object.keys(m);for(let v of B){if(v==="borderStyle"||v==="borderColor"){if(typeof o.style!="object"){let k={};o.style=k}o.style.borderStyle=m.borderStyle,o.style.borderColor=m.borderColor}if(m[v]!==y[v]){if(typeof o.style!="object"){let k={};o.style=k}o.style[v]=m[v]}}continue}o[p]=s[p]}return o},commitUpdate:(e,t)=>{for(let[r,s]of Object.entries(t))r!=="children"&&(r==="style"?nG.setStyle(e,s):r==="internal_transform"?e.internal_transform=s:r==="internal_static"?e.internal_static=!0:nG.setAttribute(e,r,s))},commitTextUpdate:(e,t,r)=>{nG.setTextNodeValue(e,r)},removeChild:(e,t)=>{nG.removeChildNode(e,t),A3i(t.yogaNode)}})});var f3i=z(o4e=>{"use strict";var x_c=o4e&&o4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(o4e,"__esModule",{value:!0});var _St=x_c(SW());o4e.default=e=>e.getComputedWidth()-e.getComputedPadding(_St.default.EDGE_LEFT)-e.getComputedPadding(_St.default.EDGE_RIGHT)-e.getComputedBorder(_St.default.EDGE_LEFT)-e.getComputedBorder(_St.default.EDGE_RIGHT)});var qvr=z(c4e=>{"use strict";var k_c=c4e&&c4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(c4e,"__esModule",{value:!0});var a4e=k_c(tie()),G_c=/^(rgb|hsl|hsv|hwb)\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/,F_c=/^(ansi|ansi256)\(\s?(\d+)\s?\)$/,ySt=(e,t)=>t==="foreground"?e:"bg"+e[0].toUpperCase()+e.slice(1);c4e.default=(e,t,r)=>{if(!t)return e;if(t in a4e.default){let a=ySt(t,r);return a4e.default[a](e)}if(t.startsWith("#")){let a=ySt("hex",r);return a4e.default[a](t)(e)}if(t.startsWith("ansi")){let a=F_c.exec(t);if(!a)return e;let o=ySt(a[1],r),g=Number(a[2]);return a4e.default[o](g)(e)}if(t.startsWith("rgb")||t.startsWith("hsl")||t.startsWith("hsv")||t.startsWith("hwb")){let a=G_c.exec(t);if(!a)return e;let o=ySt(a[1],r),g=Number(a[2]),p=Number(a[3]),f=Number(a[4]);return a4e.default[o](g,p,f)(e)}return e}});var C3i=z(l4e=>{"use strict";var I3i=l4e&&l4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(l4e,"__esModule",{value:!0});var Z_c=I3i(cjt()),$vr=I3i(qvr());l4e.default=(e,t,r,s)=>{if(typeof r.style.borderStyle=="string"){let a=r.yogaNode.getComputedWidth(),o=r.yogaNode.getComputedHeight(),g=r.style.borderColor,p=Z_c.default[r.style.borderStyle],f=$vr.default(p.topLeft+p.horizontal.repeat(a-2)+p.topRight,g,"foreground"),m=($vr.default(p.vertical,g,"foreground")+` +`).repeat(o-2),y=$vr.default(p.bottomLeft+p.horizontal.repeat(a-2)+p.bottomRight,g,"foreground");s.write(e,t,f,{transformers:[]}),s.write(e,t+1,m,{transformers:[]}),s.write(e+a-1,t+1,m,{transformers:[]}),s.write(e,t+o-1,y,{transformers:[]})}}});var h3i=z(u4e=>{"use strict";var iCe=u4e&&u4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(u4e,"__esModule",{value:!0});var L_c=iCe(SW()),V_c=iCe(QWe()),W_c=iCe(ojt()),P_c=iCe(Uvr()),O_c=iCe(f3i()),Q_c=iCe(jvr()),M_c=iCe(C3i()),H_c=(e,t)=>{var r;let s=(r=e.childNodes[0])===null||r===void 0?void 0:r.yogaNode;if(s){let a=s.getComputedLeft(),o=s.getComputedTop();t=` +`.repeat(o)+W_c.default(t,a)}return t},m3i=(e,t,r)=>{var s;let{offsetX:a=0,offsetY:o=0,transformers:g=[],skipStaticElements:p}=r;if(p&&e.internal_static)return;let{yogaNode:f}=e;if(f){if(f.getDisplay()===L_c.default.DISPLAY_NONE)return;let m=a+f.getComputedLeft(),y=o+f.getComputedTop(),B=g;if(typeof e.internal_transform=="function"&&(B=[e.internal_transform,...g]),e.nodeName==="ink-text"){let v=Q_c.default(e);if(v.length>0){let k=V_c.default(v),T=O_c.default(f);if(k>T){let O=(s=e.style.textWrap)!==null&&s!==void 0?s:"wrap";v=P_c.default(v,T,O)}v=H_c(e,v),t.write(m,y,v,{transformers:B})}return}if(e.nodeName==="ink-box"&&M_c.default(m,y,e,t),e.nodeName==="ink-root"||e.nodeName==="ink-box")for(let v of e.childNodes)m3i(v,t,{offsetX:m,offsetY:y,transformers:B,skipStaticElements:p})}};u4e.default=m3i});var b3i=z(g4e=>{"use strict";var y3i=g4e&&g4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(g4e,"__esModule",{value:!0});var _3i=y3i(vct()),Y_c=y3i(a1e()),eSr=class{constructor(t){this.writes=[];let{width:r,height:s}=t;this.width=r,this.height=s}write(t,r,s,a){let{transformers:o}=a;s&&this.writes.push({x:t,y:r,text:s,transformers:o})}get(){let t=[];for(let s=0;ss.trimRight()).join(` +`),height:t.length}}};g4e.default=eSr});var v3i=z(A4e=>{"use strict";var tSr=A4e&&A4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(A4e,"__esModule",{value:!0});var X_c=tSr(SW()),E3i=tSr(h3i()),B3i=tSr(b3i());A4e.default=(e,t)=>{var r;if(e.yogaNode.setWidth(t),e.yogaNode){e.yogaNode.calculateLayout(void 0,void 0,X_c.default.DIRECTION_LTR);let s=new B3i.default({width:e.yogaNode.getComputedWidth(),height:e.yogaNode.getComputedHeight()});E3i.default(e,s,{skipStaticElements:!0});let a;!((r=e.staticNode)===null||r===void 0)&&r.yogaNode&&(a=new B3i.default({width:e.staticNode.yogaNode.getComputedWidth(),height:e.staticNode.yogaNode.getComputedHeight()}),E3i.default(e.staticNode,a,{skipStaticElements:!1}));let{output:o,height:g}=s.get();return{output:o,outputHeight:g,staticOutput:a?`${a.get().output} +`:""}}return{output:"",outputHeight:0,staticOutput:""}}});var nSr=z(rSr=>{"use strict";Object.defineProperty(rSr,"__esModule",{value:!0});rSr.default=new WeakMap});var sSr=z(iSr=>{"use strict";Object.defineProperty(iSr,"__esModule",{value:!0});var J_c=Om(),S3i=J_c.createContext({exit:()=>{}});S3i.displayName="InternalAppContext";iSr.default=S3i});var aSr=z(oSr=>{"use strict";Object.defineProperty(oSr,"__esModule",{value:!0});var U_c=Om(),w3i=U_c.createContext({stdin:void 0,setRawMode:()=>{},isRawModeSupported:!1,internal_exitOnCtrlC:!0});w3i.displayName="InternalStdinContext";oSr.default=w3i});var lSr=z(cSr=>{"use strict";Object.defineProperty(cSr,"__esModule",{value:!0});var K_c=Om(),T3i=K_c.createContext({stdout:void 0,write:()=>{}});T3i.displayName="InternalStdoutContext";cSr.default=T3i});var gSr=z(uSr=>{"use strict";Object.defineProperty(uSr,"__esModule",{value:!0});var j_c=Om(),N3i=j_c.createContext({stderr:void 0,write:()=>{}});N3i.displayName="InternalStderrContext";uSr.default=N3i});var bSt=z(ASr=>{"use strict";Object.defineProperty(ASr,"__esModule",{value:!0});var z_c=Om(),R3i=z_c.createContext({activeId:void 0,add:()=>{},remove:()=>{},activate:()=>{},deactivate:()=>{},enableFocus:()=>{},disableFocus:()=>{},focusNext:()=>{},focusPrevious:()=>{},focus:()=>{}});R3i.displayName="InternalFocusContext";ASr.default=R3i});var ESt=z(YY=>{"use strict";var q_c=YY&&YY.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),$_c=YY&&YY.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),e0c=YY&&YY.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&q_c(t,e,r);return $_c(t,e),t},t0c=YY&&YY.__rest||function(e,t){var r={};for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&t.indexOf(s)<0&&(r[s]=e[s]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,s=Object.getOwnPropertySymbols(e);a{var{children:r}=e,s=t0c(e,["children"]);let a=Object.assign(Object.assign({},s),{marginLeft:s.marginLeft||s.marginX||s.margin||0,marginRight:s.marginRight||s.marginX||s.margin||0,marginTop:s.marginTop||s.marginY||s.margin||0,marginBottom:s.marginBottom||s.marginY||s.margin||0,paddingLeft:s.paddingLeft||s.paddingX||s.padding||0,paddingRight:s.paddingRight||s.paddingX||s.padding||0,paddingTop:s.paddingTop||s.paddingY||s.padding||0,paddingBottom:s.paddingBottom||s.paddingY||s.padding||0});return D3i.default.createElement("ink-box",{ref:t,style:a},r)});dSr.displayName="Box";dSr.defaultProps={flexDirection:"row",flexGrow:0,flexShrink:1};YY.default=dSr});var ISr=z(d4e=>{"use strict";var pSr=d4e&&d4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(d4e,"__esModule",{value:!0});var r0c=pSr(Om()),vNe=pSr(tie()),x3i=pSr(qvr()),fSr=({color:e,backgroundColor:t,dimColor:r,bold:s,italic:a,underline:o,strikethrough:g,inverse:p,wrap:f,children:m})=>{if(m==null)return null;let y=B=>(r&&(B=vNe.default.dim(B)),e&&(B=x3i.default(B,e,"foreground")),t&&(B=x3i.default(B,t,"background")),s&&(B=vNe.default.bold(B)),a&&(B=vNe.default.italic(B)),o&&(B=vNe.default.underline(B)),g&&(B=vNe.default.strikethrough(B)),p&&(B=vNe.default.inverse(B)),B);return r0c.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:f},internal_transform:y},m)};fSr.displayName="Text";fSr.defaultProps={dimColor:!1,bold:!1,italic:!1,underline:!1,strikethrough:!1,wrap:"wrap"};d4e.default=fSr});var Z3i=z(XY=>{"use strict";var n0c=XY&&XY.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),i0c=XY&&XY.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),s0c=XY&&XY.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&n0c(t,e,r);return i0c(t,e),t},p4e=XY&&XY.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(XY,"__esModule",{value:!0});var k3i=s0c(xt("fs")),MT=p4e(Om()),G3i=p4e(Fct()),o0c=p4e(xjt()),Oq=p4e(ESt()),MK=p4e(ISr()),F3i=new G3i.default({cwd:process.cwd(),internals:G3i.default.nodeInternals()}),a0c=({error:e})=>{let t=e.stack?e.stack.split(` +`).slice(1):void 0,r=t?F3i.parseLine(t[0]):void 0,s,a=0;if(r?.file&&r?.line&&k3i.existsSync(r.file)){let o=k3i.readFileSync(r.file,"utf8");if(s=o0c.default(o,r.line),s)for(let{line:g}of s)a=Math.max(a,String(g).length)}return MT.default.createElement(Oq.default,{flexDirection:"column",padding:1},MT.default.createElement(Oq.default,null,MT.default.createElement(MK.default,{backgroundColor:"red",color:"white"}," ","ERROR"," "),MT.default.createElement(MK.default,null," ",e.message)),r&&MT.default.createElement(Oq.default,{marginTop:1},MT.default.createElement(MK.default,{dimColor:!0},r.file,":",r.line,":",r.column)),r&&s&&MT.default.createElement(Oq.default,{marginTop:1,flexDirection:"column"},s.map(({line:o,value:g})=>MT.default.createElement(Oq.default,{key:o},MT.default.createElement(Oq.default,{width:a+1},MT.default.createElement(MK.default,{dimColor:o!==r.line,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0},String(o).padStart(a," "),":")),MT.default.createElement(MK.default,{key:o,backgroundColor:o===r.line?"red":void 0,color:o===r.line?"white":void 0}," "+g)))),e.stack&&MT.default.createElement(Oq.default,{marginTop:1,flexDirection:"column"},e.stack.split(` +`).slice(1).map(o=>{let g=F3i.parseLine(o);return g?MT.default.createElement(Oq.default,{key:o},MT.default.createElement(MK.default,{dimColor:!0},"- "),MT.default.createElement(MK.default,{dimColor:!0,bold:!0},g.function),MT.default.createElement(MK.default,{dimColor:!0,color:"gray"}," ","(",g.file,":",g.line,":",g.column,")")):MT.default.createElement(Oq.default,{key:o},MT.default.createElement(MK.default,{dimColor:!0},"- "),MT.default.createElement(MK.default,{dimColor:!0,bold:!0},o))})))};XY.default=a0c});var V3i=z(JY=>{"use strict";var c0c=JY&&JY.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),l0c=JY&&JY.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),u0c=JY&&JY.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&c0c(t,e,r);return l0c(t,e),t},oCe=JY&&JY.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(JY,"__esModule",{value:!0});var sCe=u0c(Om()),L3i=oCe(i1e()),g0c=oCe(sSr()),A0c=oCe(aSr()),d0c=oCe(lSr()),p0c=oCe(gSr()),f0c=oCe(bSt()),I0c=oCe(Z3i()),C0c=" ",m0c="\x1B[Z",h0c="\x1B",BSt=class extends sCe.PureComponent{constructor(){super(...arguments),this.state={isFocusEnabled:!0,activeFocusId:void 0,focusables:[],error:void 0},this.rawModeEnabledCount=0,this.handleSetRawMode=t=>{let{stdin:r}=this.props;if(!this.isRawModeSupported())throw r===process.stdin?new Error(`Raw mode is not supported on the current process.stdin, which Ink uses as input stream by default. Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`):new Error(`Raw mode is not supported on the stdin provided to Ink. -Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`);if(r.setEncoding("utf8"),t){this.rawModeEnabledCount===0&&(r.addListener("data",this.handleInput),r.resume(),r.setRawMode(!0)),this.rawModeEnabledCount++;return}--this.rawModeEnabledCount===0&&(r.setRawMode(!1),r.removeListener("data",this.handleInput),r.pause())},this.handleInput=t=>{t===""&&this.props.exitOnCtrlC&&this.handleExit(),t===n0c&&this.state.activeFocusId&&this.setState({activeFocusId:void 0}),this.state.isFocusEnabled&&this.state.focusables.length>0&&(t===t0c&&this.focusNext(),t===r0c&&this.focusPrevious())},this.handleExit=t=>{this.isRawModeSupported()&&this.handleSetRawMode(!1),this.props.onExit(t)},this.enableFocus=()=>{this.setState({isFocusEnabled:!0})},this.disableFocus=()=>{this.setState({isFocusEnabled:!1})},this.focus=t=>{this.setState(r=>r.focusables.some(a=>a?.id===t)?{activeFocusId:t}:r)},this.focusNext=()=>{this.setState(t=>{var r;let s=(r=t.focusables[0])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findNextFocusable(t)||s}})},this.focusPrevious=()=>{this.setState(t=>{var r;let s=(r=t.focusables[t.focusables.length-1])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findPreviousFocusable(t)||s}})},this.addFocusable=(t,{autoFocus:r})=>{this.setState(s=>{let a=s.activeFocusId;return!a&&r&&(a=t),{activeFocusId:a,focusables:[...s.focusables,{id:t,isActive:!0}]}})},this.removeFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.filter(s=>s.id!==t)}))},this.activateFocusable=t=>{this.setState(r=>({focusables:r.focusables.map(s=>s.id!==t?s:{id:t,isActive:!0})}))},this.deactivateFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.map(s=>s.id!==t?s:{id:t,isActive:!1})}))},this.findNextFocusable=t=>{var r;let s=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=s+1;a{var r;let s=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=s-1;a>=0;a--)if(!((r=t.focusables[a])===null||r===void 0)&&r.isActive)return t.focusables[a].id}}static getDerivedStateFromError(t){return{error:t}}isRawModeSupported(){return this.props.stdin.isTTY}render(){return nCe.default.createElement(K_c.default.Provider,{value:{exit:this.handleExit}},nCe.default.createElement(j_c.default.Provider,{value:{stdin:this.props.stdin,setRawMode:this.handleSetRawMode,isRawModeSupported:this.isRawModeSupported(),internal_exitOnCtrlC:this.props.exitOnCtrlC}},nCe.default.createElement(z_c.default.Provider,{value:{stdout:this.props.stdout,write:this.props.writeToStdout}},nCe.default.createElement(q_c.default.Provider,{value:{stderr:this.props.stderr,write:this.props.writeToStderr}},nCe.default.createElement($_c.default.Provider,{value:{activeId:this.state.activeFocusId,add:this.addFocusable,remove:this.removeFocusable,activate:this.activateFocusable,deactivate:this.deactivateFocusable,enableFocus:this.enableFocus,disableFocus:this.disableFocus,focusNext:this.focusNext,focusPrevious:this.focusPrevious,focus:this.focus}},this.state.error?nCe.default.createElement(e0c.default,{error:this.state.error}):this.props.children)))))}componentDidMount(){R3i.default.hide(this.props.stdout)}componentWillUnmount(){R3i.default.show(this.props.stdout),this.isRawModeSupported()&&this.handleSetRawMode(!1)}componentDidCatch(t){this.handleExit(t)}};Y5.default=ySt;ySt.displayName="InternalApp"});var G3i=z(H5=>{"use strict";var i0c=H5&&H5.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),s0c=H5&&H5.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o0c=H5&&H5.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&i0c(t,e,r);return s0c(t,e),t},X5=H5&&H5.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(H5,"__esModule",{value:!0});var a0c=X5(Pm()),x3i=y7t(),c0c=X5(JWi()),l0c=X5(DWe()),u0c=X5(S7t()),g0c=X5(w7t()),gSr=X5(a3i()),A0c=X5(m3i()),d0c=X5(Act()),p0c=X5(Ijt()),f0c=o0c(Hvr()),I0c=X5(zvr()),C0c=X5(D3i()),BNe=process.env.CI==="false"?!1:u0c.default,k3i=()=>{},ASr=class{constructor(t){this.resolveExitPromise=()=>{},this.rejectExitPromise=()=>{},this.unsubscribeExit=()=>{},this.onRender=()=>{if(this.isUnmounted)return;let{output:r,outputHeight:s,staticOutput:a}=A0c.default(this.rootNode,this.options.stdout.columns||80),o=a&&a!==` -`;if(this.options.debug){o&&(this.fullStaticOutput+=a),this.options.stdout.write(this.fullStaticOutput+r);return}if(BNe){o&&this.options.stdout.write(a),this.lastOutput=r;return}if(o&&(this.fullStaticOutput+=a),s>=this.options.stdout.rows){this.options.stdout.write(l0c.default.clearTerminal+this.fullStaticOutput+r),this.lastOutput=r;return}o&&(this.log.clear(),this.options.stdout.write(a),this.log(r)),!o&&r!==this.lastOutput&&this.throttledLog(r),this.lastOutput=r},g0c.default(this),this.options=t,this.rootNode=f0c.createNode("ink-root"),this.rootNode.onRender=t.debug?this.onRender:x3i.throttle(this.onRender,32,{leading:!0,trailing:!0}),this.rootNode.onImmediateRender=this.onRender,this.log=c0c.default.create(t.stdout),this.throttledLog=t.debug?this.log:x3i.throttle(this.log,void 0,{leading:!0,trailing:!0}),this.isUnmounted=!1,this.lastOutput="",this.fullStaticOutput="",this.container=gSr.default.createContainer(this.rootNode,0,!1,null),this.unsubscribeExit=d0c.default(this.unmount,{alwaysLast:!1}),t.patchConsole&&this.patchConsole(),BNe||(t.stdout.on("resize",this.onRender),this.unsubscribeResize=()=>{t.stdout.off("resize",this.onRender)})}render(t){let r=a0c.default.createElement(C0c.default,{stdin:this.options.stdin,stdout:this.options.stdout,stderr:this.options.stderr,writeToStdout:this.writeToStdout,writeToStderr:this.writeToStderr,exitOnCtrlC:this.options.exitOnCtrlC,onExit:this.unmount},t);gSr.default.updateContainer(r,this.container,null,k3i)}writeToStdout(t){if(!this.isUnmounted){if(this.options.debug){this.options.stdout.write(t+this.fullStaticOutput+this.lastOutput);return}if(BNe){this.options.stdout.write(t);return}this.log.clear(),this.options.stdout.write(t),this.log(this.lastOutput)}}writeToStderr(t){if(!this.isUnmounted){if(this.options.debug){this.options.stderr.write(t),this.options.stdout.write(this.fullStaticOutput+this.lastOutput);return}if(BNe){this.options.stderr.write(t);return}this.log.clear(),this.options.stderr.write(t),this.log(this.lastOutput)}}unmount(t){this.isUnmounted||(this.onRender(),this.unsubscribeExit(),typeof this.restoreConsole=="function"&&this.restoreConsole(),typeof this.unsubscribeResize=="function"&&this.unsubscribeResize(),BNe?this.options.stdout.write(this.lastOutput+` -`):this.options.debug||this.log.done(),this.isUnmounted=!0,gSr.default.updateContainer(null,this.container,null,k3i),I0c.default.delete(this.options.stdout),t instanceof Error?this.rejectExitPromise(t):this.resolveExitPromise())}waitUntilExit(){return this.exitPromise||(this.exitPromise=new Promise((t,r)=>{this.resolveExitPromise=t,this.rejectExitPromise=r})),this.exitPromise}clear(){!BNe&&!this.options.debug&&this.log.clear()}patchConsole(){this.options.debug||(this.restoreConsole=p0c.default((t,r)=>{t==="stdout"&&this.writeToStdout(r),t==="stderr"&&(r.startsWith("The above error occurred")||this.writeToStderr(r))}))}};H5.default=ASr});var Z3i=z(d4e=>{"use strict";var F3i=d4e&&d4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(d4e,"__esModule",{value:!0});var m0c=F3i(G3i()),bSt=F3i(zvr()),h0c=Dt("stream"),_0c=(e,t)=>{let r=Object.assign({stdout:process.stdout,stdin:process.stdin,stderr:process.stderr,debug:!1,exitOnCtrlC:!0,patchConsole:!0},y0c(t)),s=b0c(r.stdout,()=>new m0c.default(r));return s.render(e),{rerender:s.render,unmount:()=>s.unmount(),waitUntilExit:s.waitUntilExit,cleanup:()=>bSt.default.delete(r.stdout),clear:s.clear}};d4e.default=_0c;var y0c=(e={})=>e instanceof h0c.Stream?{stdout:e,stdin:process.stdin}:e,b0c=(e,t)=>{let r;return bSt.default.has(e)?r=bSt.default.get(e):(r=t(),bSt.default.set(e,r)),r}});var V3i=z(Pq=>{"use strict";var E0c=Pq&&Pq.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),B0c=Pq&&Pq.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),v0c=Pq&&Pq.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&E0c(t,e,r);return B0c(t,e),t};Object.defineProperty(Pq,"__esModule",{value:!0});var p4e=v0c(Pm()),L3i=e=>{let{items:t,children:r,style:s}=e,[a,o]=p4e.useState(0),g=p4e.useMemo(()=>t.slice(a),[t,a]);p4e.useLayoutEffect(()=>{o(t.length)},[t.length]);let p=g.map((m,y)=>r(m,a+y)),f=p4e.useMemo(()=>Object.assign({position:"absolute",flexDirection:"column"},s),[s]);return p4e.default.createElement("ink-box",{internal_static:!0,style:f},p)};L3i.displayName="Static";Pq.default=L3i});var P3i=z(f4e=>{"use strict";var S0c=f4e&&f4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(f4e,"__esModule",{value:!0});var w0c=S0c(Pm()),W3i=({children:e,transform:t})=>e==null?null:w0c.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row"},internal_transform:t},e);W3i.displayName="Transform";f4e.default=W3i});var M3i=z(I4e=>{"use strict";var T0c=I4e&&I4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(I4e,"__esModule",{value:!0});var N0c=T0c(Pm()),O3i=({count:e=1})=>N0c.default.createElement("ink-text",null,` -`.repeat(e));O3i.displayName="Newline";I4e.default=O3i});var H3i=z(C4e=>{"use strict";var Q3i=C4e&&C4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(C4e,"__esModule",{value:!0});var R0c=Q3i(Pm()),D0c=Q3i(_St()),Y3i=()=>R0c.default.createElement(D0c.default,{flexGrow:1});Y3i.displayName="Spacer";C4e.default=Y3i});var ESt=z(m4e=>{"use strict";var x0c=m4e&&m4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(m4e,"__esModule",{value:!0});var k0c=Pm(),G0c=x0c(tSr()),F0c=()=>k0c.useContext(G0c.default);m4e.default=F0c});var J3i=z(h4e=>{"use strict";var Z0c=h4e&&h4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(h4e,"__esModule",{value:!0});var X3i=Pm(),L0c=Z0c(ESt()),V0c=(e,t={})=>{let{stdin:r,setRawMode:s,internal_exitOnCtrlC:a}=L0c.default();X3i.useEffect(()=>{if(t.isActive!==!1)return s(!0),()=>{s(!1)}},[t.isActive,s]),X3i.useEffect(()=>{if(t.isActive===!1)return;let o=g=>{let p=String(g),f={upArrow:p==="\x1B[A",downArrow:p==="\x1B[B",leftArrow:p==="\x1B[D",rightArrow:p==="\x1B[C",pageDown:p==="\x1B[6~",pageUp:p==="\x1B[5~",return:p==="\r",escape:p==="\x1B",ctrl:!1,shift:!1,tab:p===" "||p==="\x1B[Z",backspace:p==="\b",delete:p==="\x7F"||p==="\x1B[3~",meta:!1};p<=""&&!f.return&&(p=String.fromCharCode(p.charCodeAt(0)+97-1),f.ctrl=!0),p.startsWith("\x1B")&&(p=p.slice(1),f.meta=!0);let m=p>="A"&&p<="Z",y=p>="\u0410"&&p<="\u042F";p.length===1&&(m||y)&&(f.shift=!0),f.tab&&p==="[Z"&&(f.shift=!0),(f.tab||f.backspace||f.delete)&&(p=""),(!(p==="c"&&f.ctrl)||!a)&&e(p,f)};return r?.on("data",o),()=>{r?.off("data",o)}},[t.isActive,r,a,e])};h4e.default=V0c});var U3i=z(_4e=>{"use strict";var W0c=_4e&&_4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(_4e,"__esModule",{value:!0});var P0c=Pm(),O0c=W0c($vr()),M0c=()=>P0c.useContext(O0c.default);_4e.default=M0c});var K3i=z(y4e=>{"use strict";var Q0c=y4e&&y4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(y4e,"__esModule",{value:!0});var Y0c=Pm(),H0c=Q0c(nSr()),X0c=()=>Y0c.useContext(H0c.default);y4e.default=X0c});var j3i=z(b4e=>{"use strict";var J0c=b4e&&b4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(b4e,"__esModule",{value:!0});var U0c=Pm(),K0c=J0c(sSr()),j0c=()=>U0c.useContext(K0c.default);b4e.default=j0c});var q3i=z(B4e=>{"use strict";var z3i=B4e&&B4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(B4e,"__esModule",{value:!0});var E4e=Pm(),z0c=z3i(hSt()),q0c=z3i(ESt()),$0c=({isActive:e=!0,autoFocus:t=!1,id:r}={})=>{let{isRawModeSupported:s,setRawMode:a}=q0c.default(),{activeId:o,add:g,remove:p,activate:f,deactivate:m,focus:y}=E4e.useContext(z0c.default),B=E4e.useMemo(()=>r??Math.random().toString().slice(2,7),[r]);return E4e.useEffect(()=>(g(B,{autoFocus:t}),()=>{p(B)}),[B,t]),E4e.useEffect(()=>{e?f(B):m(B)},[e,B]),E4e.useEffect(()=>{if(!(!s||!e))return a(!0),()=>{a(!1)}},[e]),{isFocused:!!B&&o===B,focus:y}};B4e.default=$0c});var $3i=z(v4e=>{"use strict";var eyc=v4e&&v4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(v4e,"__esModule",{value:!0});var tyc=Pm(),ryc=eyc(hSt()),nyc=()=>{let e=tyc.useContext(ryc.default);return{enableFocus:e.enableFocus,disableFocus:e.disableFocus,focusNext:e.focusNext,focusPrevious:e.focusPrevious,focus:e.focus}};v4e.default=nyc});var ePi=z(dSr=>{"use strict";Object.defineProperty(dSr,"__esModule",{value:!0});dSr.default=e=>{var t,r,s,a;return{width:(r=(t=e.yogaNode)===null||t===void 0?void 0:t.getComputedWidth())!==null&&r!==void 0?r:0,height:(a=(s=e.yogaNode)===null||s===void 0?void 0:s.getComputedHeight())!==null&&a!==void 0?a:0}}});var HM=z(ox=>{"use strict";Object.defineProperty(ox,"__esModule",{value:!0});var iyc=Z3i();Object.defineProperty(ox,"render",{enumerable:!0,get:function(){return iyc.default}});var syc=_St();Object.defineProperty(ox,"Box",{enumerable:!0,get:function(){return syc.default}});var oyc=uSr();Object.defineProperty(ox,"Text",{enumerable:!0,get:function(){return oyc.default}});var ayc=V3i();Object.defineProperty(ox,"Static",{enumerable:!0,get:function(){return ayc.default}});var cyc=P3i();Object.defineProperty(ox,"Transform",{enumerable:!0,get:function(){return cyc.default}});var lyc=M3i();Object.defineProperty(ox,"Newline",{enumerable:!0,get:function(){return lyc.default}});var uyc=H3i();Object.defineProperty(ox,"Spacer",{enumerable:!0,get:function(){return uyc.default}});var gyc=J3i();Object.defineProperty(ox,"useInput",{enumerable:!0,get:function(){return gyc.default}});var Ayc=U3i();Object.defineProperty(ox,"useApp",{enumerable:!0,get:function(){return Ayc.default}});var dyc=ESt();Object.defineProperty(ox,"useStdin",{enumerable:!0,get:function(){return dyc.default}});var pyc=K3i();Object.defineProperty(ox,"useStdout",{enumerable:!0,get:function(){return pyc.default}});var fyc=j3i();Object.defineProperty(ox,"useStderr",{enumerable:!0,get:function(){return fyc.default}});var Iyc=q3i();Object.defineProperty(ox,"useFocus",{enumerable:!0,get:function(){return Iyc.default}});var Cyc=$3i();Object.defineProperty(ox,"useFocusManager",{enumerable:!0,get:function(){return Cyc.default}});var myc=ePi();Object.defineProperty(ox,"measureElement",{enumerable:!0,get:function(){return myc.default}})});var SSt=z(vSt=>{"use strict";Object.defineProperty(vSt,"__esModule",{value:!0});vSt.Gem=void 0;var hyc=(Ma(),Ai(Oa)),_yc=HM(),BSt=hyc.__importStar(Pm());vSt.Gem=(0,BSt.memo)(({active:e})=>{let t=(0,BSt.useMemo)(()=>e?"\u25C9":"\u25EF",[e]),r=(0,BSt.useMemo)(()=>e?"green":"yellow",[e]);return BSt.default.createElement(_yc.Text,{color:r},t)})});var S4e=z(pSr=>{"use strict";Object.defineProperty(pSr,"__esModule",{value:!0});pSr.useKeypress=byc;var yyc=HM(),tPi=Pm();function byc({active:e},t,r){let{stdin:s}=(0,yyc.useStdin)(),a=(0,tPi.useCallback)((o,g)=>t(o,g),r);(0,tPi.useEffect)(()=>{if(!(!e||!s))return s.on("keypress",a),()=>{s.off("keypress",a)}},[e,a,s])}});var fSr=z(vNe=>{"use strict";Object.defineProperty(vNe,"__esModule",{value:!0});vNe.useFocusRequest=vNe.FocusRequest=void 0;var Eyc=S4e(),wSt;(function(e){e.BEFORE="before",e.AFTER="after"})(wSt||(vNe.FocusRequest=wSt={}));var Byc=function({active:e},t,r){(0,Eyc.useKeypress)({active:e},(s,a)=>{a.name==="tab"&&(a.shift?t(wSt.BEFORE):t(wSt.AFTER))},r)};vNe.useFocusRequest=Byc});var NSt=z(TSt=>{"use strict";Object.defineProperty(TSt,"__esModule",{value:!0});TSt.useListInput=void 0;var vyc=S4e(),Syc=function(e,t,{active:r,minus:s,plus:a,set:o,loop:g=!0}){(0,vyc.useKeypress)({active:r},(p,f)=>{let m=t.indexOf(e);switch(f.name){case s:{let y=m-1;if(g){o(t[(t.length+y)%t.length]);return}if(y<0)return;o(t[y])}break;case a:{let y=m+1;if(g){o(t[y%t.length]);return}if(y>=t.length)return;o(t[y])}break}},[t,e,a,o,g])};TSt.useListInput=Syc});var DSt=z(RSt=>{"use strict";Object.defineProperty(RSt,"__esModule",{value:!0});RSt.ScrollableItems=void 0;var wyc=(Ma(),Ai(Oa)),SNe=HM(),J5=wyc.__importStar(Pm()),Tyc=fSr(),Nyc=NSt(),Ryc=({active:e=!0,children:t=[],radius:r=10,size:s=1,loop:a=!0,onFocusRequest:o,willReachEnd:g})=>{let p=X=>{if(X.key===null)throw new Error("Expected all children to have a key");return X.key},f=J5.default.Children.map(t,X=>p(X)),m=f[0],[y,B]=(0,J5.useState)(m),v=f.indexOf(y);(0,J5.useEffect)(()=>{f.includes(y)||B(m)},[t]),(0,J5.useEffect)(()=>{g&&v>=f.length-2&&g()},[v]),(0,Tyc.useFocusRequest)({active:e&&!!o},X=>{o?.(X)},[o]),(0,Nyc.useListInput)(y,f,{active:e,minus:"up",plus:"down",set:B,loop:a});let G=v-r,T=v+r;T>f.length&&(G-=T-f.length,T=f.length),G<0&&(T+=-G,G=0),T>=f.length&&(T=f.length-1);let O=[];for(let X=G;X<=T;++X){let U=f[X],le=e&&U===y;O.push(J5.default.createElement(SNe.Box,{key:U,height:s},J5.default.createElement(SNe.Box,{marginLeft:1,marginRight:1},J5.default.createElement(SNe.Text,null,le?J5.default.createElement(SNe.Text,{color:"cyan",bold:!0},">"):" ")),J5.default.createElement(SNe.Box,null,J5.default.cloneElement(t[X],{active:le}))))}return J5.default.createElement(SNe.Box,{flexDirection:"column",width:"100%"},O)};RSt.ScrollableItems=Ryc});var ISr=z(sCe=>{"use strict";Object.defineProperty(sCe,"__esModule",{value:!0});sCe.Application=sCe.MinistoreContext=void 0;var Dyc=(Ma(),Ai(Oa)),xyc=HM(),w4e=Dyc.__importStar(Pm()),kyc=Dt("readline");sCe.MinistoreContext=w4e.default.createContext(null);var Gyc=({children:e})=>{let{stdin:t,setRawMode:r}=(0,xyc.useStdin)();(0,w4e.useEffect)(()=>{r&&r(!0),t&&(0,kyc.emitKeypressEvents)(t)},[t,r]);let[s,a]=(0,w4e.useState)(new Map),o=(0,w4e.useMemo)(()=>({getAll:()=>s,get:g=>s.get(g),set:(g,p)=>a(new Map([...s,[g,p]]))}),[s,a]);return w4e.default.createElement(sCe.MinistoreContext.Provider,{value:o,children:e})};sCe.Application=Gyc});var mSr=z(CSr=>{"use strict";Object.defineProperty(CSr,"__esModule",{value:!0});CSr.useMinistore=Zyc;var rPi=Pm(),Fyc=ISr();function Zyc(e,t){let r=(0,rPi.useContext)(Fyc.MinistoreContext);if(r===null)throw new Error("Expected this hook to run with a ministore context attached");if(typeof e>"u")return r.getAll();let s=(0,rPi.useCallback)(o=>{r.set(e,o)},[e,r.set]),a=r.get(e);return typeof a>"u"&&(a=t),[a,s]}});var xSt=z(hSr=>{"use strict";Object.defineProperty(hSr,"__esModule",{value:!0});hSr.renderForm=Pyc;var Lyc=(Ma(),Ai(Oa)),nPi=HM(),iPi=Lyc.__importDefault(Pm()),Vyc=ISr(),Wyc=S4e();async function Pyc(e,t,{stdin:r,stdout:s,stderr:a}){let o,g=f=>{let{exit:m}=(0,nPi.useApp)();(0,Wyc.useKeypress)({active:!0},(y,B)=>{B.name==="return"&&(o=f,m())},[m,f])},{waitUntilExit:p}=(0,nPi.render)(iPi.default.createElement(Vyc.Application,null,iPi.default.createElement(e,{...t,useSubmit:g})),{stdin:r,stdout:s,stderr:a});return await p(),o}});var cPi=z(T4e=>{"use strict";Object.defineProperty(T4e,"__esModule",{value:!0});T4e.UncontrolledTextInput=void 0;var oPi=Pm(),_Sr=Pm(),sPi=HM(),oCe=$ne(),aPi=({value:e,placeholder:t="",focus:r=!0,mask:s,highlightPastedText:a=!1,showCursor:o=!0,onChange:g,onSubmit:p})=>{let[{cursorOffset:f,cursorWidth:m},y]=_Sr.useState({cursorOffset:(e||"").length,cursorWidth:0});_Sr.useEffect(()=>{y(O=>{if(!r||!o)return O;let X=e||"";return O.cursorOffset>X.length-1?{cursorOffset:X.length,cursorWidth:0}:O})},[e,r,o]);let B=a?m:0,v=s?s.repeat(e.length):e,G=v,T=t?oCe.grey(t):void 0;if(o&&r){T=t.length>0?oCe.inverse(t[0])+oCe.grey(t.slice(1)):oCe.inverse(" "),G=v.length>0?"":oCe.inverse(" ");let O=0;for(let X of v)O>=f-B&&O<=f?G+=oCe.inverse(X):G+=X,O++;v.length>0&&f===v.length&&(G+=oCe.inverse(" "))}return sPi.useInput((O,X)=>{if(X.upArrow||X.downArrow||X.ctrl&&O==="c"||X.tab||X.shift&&X.tab)return;if(X.return){p&&p(e);return}let U=f,le=e,ae=0;X.leftArrow?o&&U--:X.rightArrow?o&&U++:X.backspace||X.delete?f>0&&(le=e.slice(0,f-1)+e.slice(f,e.length),U--):(le=e.slice(0,f)+O+e.slice(f,e.length),U+=O.length,O.length>1&&(ae=O.length)),f<0&&(U=0),f>e.length&&(U=e.length),y({cursorOffset:U,cursorWidth:ae}),le!==e&&g(le)},{isActive:r}),oPi.createElement(sPi.Text,null,t?v.length>0?G:T:G)};T4e.default=aPi;T4e.UncontrolledTextInput=({initialValue:e="",...t})=>{let[r,s]=_Sr.useState(e);return oPi.createElement(aPi,Object.assign({},t,{value:r,onChange:s}))}});var uPi=z(ySr=>{"use strict";Object.defineProperty(ySr,"__esModule",{value:!0});var Oq=(Ma(),Ai(Oa)),Oyc=nl(),N4e=Bn(),Myc=Oq.__importStar(iSt()),Qyc=(Fl(),Ai(dg)),lPi=SWi(),R4e=["regular","dev","peer"],D4e=class extends Oyc.BaseCommand{async execute(){Myc.checkRequirements(this.context);let{Gem:t}=await Promise.resolve().then(()=>Oq.__importStar(SSt())),{ScrollableItems:r}=await Promise.resolve().then(()=>Oq.__importStar(DSt())),{useKeypress:s}=await Promise.resolve().then(()=>Oq.__importStar(S4e())),{useMinistore:a}=await Promise.resolve().then(()=>Oq.__importStar(mSr())),{renderForm:o}=await Promise.resolve().then(()=>Oq.__importStar(xSt())),{default:g}=await Promise.resolve().then(()=>Oq.__importStar(cPi())),{Box:p,Text:f}=await Promise.resolve().then(()=>Oq.__importStar(HM())),{default:m,useEffect:y,useState:B}=await Promise.resolve().then(()=>Oq.__importStar(Pm())),v=await N4e.Configuration.find(this.context.cwd,this.context.plugins),G=()=>m.createElement(p,{flexDirection:"row"},m.createElement(p,{flexDirection:"column",width:48},m.createElement(p,null,m.createElement(f,null,"Press ",m.createElement(f,{bold:!0,color:"cyanBright"},""),"/",m.createElement(f,{bold:!0,color:"cyanBright"},"")," to move between packages.")),m.createElement(p,null,m.createElement(f,null,"Press ",m.createElement(f,{bold:!0,color:"cyanBright"},"")," to select a package.")),m.createElement(p,null,m.createElement(f,null,"Press ",m.createElement(f,{bold:!0,color:"cyanBright"},"")," again to change the target."))),m.createElement(p,{flexDirection:"column"},m.createElement(p,{marginLeft:1},m.createElement(f,null,"Press ",m.createElement(f,{bold:!0,color:"cyanBright"},"")," to install the selected packages.")),m.createElement(p,{marginLeft:1},m.createElement(f,null,"Press ",m.createElement(f,{bold:!0,color:"cyanBright"},"")," to abort.")))),T=()=>m.createElement(m.Fragment,null,m.createElement(p,{width:15},m.createElement(f,{bold:!0,underline:!0,color:"gray"},"Owner")),m.createElement(p,{width:11},m.createElement(f,{bold:!0,underline:!0,color:"gray"},"Version")),m.createElement(p,{width:10},m.createElement(f,{bold:!0,underline:!0,color:"gray"},"Downloads"))),O=()=>m.createElement(p,{width:17},m.createElement(f,{bold:!0,underline:!0,color:"gray"},"Target")),X=({hit:be,active:Te})=>{let[ke,x]=a(be.name,null);s({active:Te},(Je,Xe)=>{if(Xe.name!=="space")return;if(!ke){x(R4e[0]);return}let ft=R4e.indexOf(ke)+1;ft===R4e.length?x(null):x(R4e[ft])},[ke,x]);let et=N4e.structUtils.parseIdent(be.name),Ue=N4e.structUtils.prettyIdent(v,et);return m.createElement(p,null,m.createElement(p,{width:45},m.createElement(f,{bold:!0,wrap:"wrap"},Ue)),m.createElement(p,{width:14,marginLeft:1},m.createElement(f,{bold:!0,wrap:"truncate"},be.owner.name)),m.createElement(p,{width:10,marginLeft:1},m.createElement(f,{italic:!0,wrap:"truncate"},be.version)),m.createElement(p,{width:16,marginLeft:1},m.createElement(f,null,be.humanDownloadsLast30Days)))},U=({name:be,active:Te})=>{let[ke]=a(be,null),x=N4e.structUtils.parseIdent(be);return m.createElement(p,null,m.createElement(p,{width:47},m.createElement(f,{bold:!0}," - ",N4e.structUtils.prettyIdent(v,x))),R4e.map(et=>m.createElement(p,{key:et,width:14,marginLeft:1},m.createElement(f,null," ",m.createElement(t,{active:ke===et})," ",m.createElement(f,{bold:!0},et)))))},le=()=>m.createElement(p,{marginTop:1},m.createElement(f,null,"Powered by Algolia.")),ge=await o(({useSubmit:be})=>{let Te=a();be(Te);let ke=Array.from(Te.keys()).filter(Ot=>Te.get(Ot)!==null),[x,et]=B(""),[Ue,Je]=B(0),[Xe,ft]=B([]),Gt=Ot=>{Ot.match(/\t| /)||et(Ot)},er=async()=>{Je(0);let Ot=await(0,lPi.search)(x);Ot.query===x&&ft(Ot.hits)},Ur=async()=>{let Ot=await(0,lPi.search)(x,Ue+1);Ot.query===x&&Ot.page-1===Ue&&(Je(Ot.page),ft([...Xe,...Ot.hits]))};return y(()=>{x?er():ft([])},[x]),m.createElement(p,{flexDirection:"column"},m.createElement(G,null),m.createElement(p,{flexDirection:"row",marginTop:1},m.createElement(f,{bold:!0},"Search: "),m.createElement(p,{width:41},m.createElement(g,{value:x,onChange:Gt,placeholder:"i.e. babel, webpack, react...",showCursor:!1})),m.createElement(T,null)),Xe.length?m.createElement(r,{radius:2,loop:!1,children:Xe.map(Ot=>m.createElement(X,{key:Ot.name,hit:Ot,active:!1})),willReachEnd:Ur}):m.createElement(f,{color:"gray"},"Start typing..."),m.createElement(p,{flexDirection:"row",marginTop:1},m.createElement(p,{width:49},m.createElement(f,{bold:!0},"Selected:")),m.createElement(O,null)),ke.length?ke.map(Ot=>m.createElement(U,{key:Ot,name:Ot,active:!1})):m.createElement(f,{color:"gray"},"No selected packages..."),m.createElement(le,null))},{},{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});if(typeof ge>"u")return 1;let fe=Array.from(ge.keys()).filter(be=>ge.get(be)==="regular"),pe=Array.from(ge.keys()).filter(be=>ge.get(be)==="dev"),he=Array.from(ge.keys()).filter(be=>ge.get(be)==="peer");return fe.length&&await this.cli.run(["add",...fe]),pe.length&&await this.cli.run(["add","--dev",...pe]),he&&await this.cli.run(["add","--peer",...he]),0}};D4e.paths=[["search"]];D4e.usage=Qyc.Command.Usage({category:"Interactive commands",description:"open the search interface",details:` +Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`);if(r.setEncoding("utf8"),t){this.rawModeEnabledCount===0&&(r.addListener("data",this.handleInput),r.resume(),r.setRawMode(!0)),this.rawModeEnabledCount++;return}--this.rawModeEnabledCount===0&&(r.setRawMode(!1),r.removeListener("data",this.handleInput),r.pause())},this.handleInput=t=>{t===""&&this.props.exitOnCtrlC&&this.handleExit(),t===h0c&&this.state.activeFocusId&&this.setState({activeFocusId:void 0}),this.state.isFocusEnabled&&this.state.focusables.length>0&&(t===C0c&&this.focusNext(),t===m0c&&this.focusPrevious())},this.handleExit=t=>{this.isRawModeSupported()&&this.handleSetRawMode(!1),this.props.onExit(t)},this.enableFocus=()=>{this.setState({isFocusEnabled:!0})},this.disableFocus=()=>{this.setState({isFocusEnabled:!1})},this.focus=t=>{this.setState(r=>r.focusables.some(a=>a?.id===t)?{activeFocusId:t}:r)},this.focusNext=()=>{this.setState(t=>{var r;let s=(r=t.focusables[0])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findNextFocusable(t)||s}})},this.focusPrevious=()=>{this.setState(t=>{var r;let s=(r=t.focusables[t.focusables.length-1])===null||r===void 0?void 0:r.id;return{activeFocusId:this.findPreviousFocusable(t)||s}})},this.addFocusable=(t,{autoFocus:r})=>{this.setState(s=>{let a=s.activeFocusId;return!a&&r&&(a=t),{activeFocusId:a,focusables:[...s.focusables,{id:t,isActive:!0}]}})},this.removeFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.filter(s=>s.id!==t)}))},this.activateFocusable=t=>{this.setState(r=>({focusables:r.focusables.map(s=>s.id!==t?s:{id:t,isActive:!0})}))},this.deactivateFocusable=t=>{this.setState(r=>({activeFocusId:r.activeFocusId===t?void 0:r.activeFocusId,focusables:r.focusables.map(s=>s.id!==t?s:{id:t,isActive:!1})}))},this.findNextFocusable=t=>{var r;let s=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=s+1;a{var r;let s=t.focusables.findIndex(a=>a.id===t.activeFocusId);for(let a=s-1;a>=0;a--)if(!((r=t.focusables[a])===null||r===void 0)&&r.isActive)return t.focusables[a].id}}static getDerivedStateFromError(t){return{error:t}}isRawModeSupported(){return this.props.stdin.isTTY}render(){return sCe.default.createElement(g0c.default.Provider,{value:{exit:this.handleExit}},sCe.default.createElement(A0c.default.Provider,{value:{stdin:this.props.stdin,setRawMode:this.handleSetRawMode,isRawModeSupported:this.isRawModeSupported(),internal_exitOnCtrlC:this.props.exitOnCtrlC}},sCe.default.createElement(d0c.default.Provider,{value:{stdout:this.props.stdout,write:this.props.writeToStdout}},sCe.default.createElement(p0c.default.Provider,{value:{stderr:this.props.stderr,write:this.props.writeToStderr}},sCe.default.createElement(f0c.default.Provider,{value:{activeId:this.state.activeFocusId,add:this.addFocusable,remove:this.removeFocusable,activate:this.activateFocusable,deactivate:this.deactivateFocusable,enableFocus:this.enableFocus,disableFocus:this.disableFocus,focusNext:this.focusNext,focusPrevious:this.focusPrevious,focus:this.focus}},this.state.error?sCe.default.createElement(I0c.default,{error:this.state.error}):this.props.children)))))}componentDidMount(){L3i.default.hide(this.props.stdout)}componentWillUnmount(){L3i.default.show(this.props.stdout),this.isRawModeSupported()&&this.handleSetRawMode(!1)}componentDidCatch(t){this.handleExit(t)}};JY.default=BSt;BSt.displayName="InternalApp"});var O3i=z(UY=>{"use strict";var _0c=UY&&UY.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),y0c=UY&&UY.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),b0c=UY&&UY.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&_0c(t,e,r);return y0c(t,e),t},KY=UY&&UY.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(UY,"__esModule",{value:!0});var E0c=KY(Om()),W3i=B7t(),B0c=KY(e3i()),v0c=KY(kWe()),S0c=KY(N7t()),w0c=KY(R7t()),CSr=KY(p3i()),T0c=KY(v3i()),N0c=KY(pct()),R0c=KY(hjt()),D0c=b0c(zvr()),x0c=KY(nSr()),k0c=KY(V3i()),SNe=process.env.CI==="false"?!1:S0c.default,P3i=()=>{},mSr=class{constructor(t){this.resolveExitPromise=()=>{},this.rejectExitPromise=()=>{},this.unsubscribeExit=()=>{},this.onRender=()=>{if(this.isUnmounted)return;let{output:r,outputHeight:s,staticOutput:a}=T0c.default(this.rootNode,this.options.stdout.columns||80),o=a&&a!==` +`;if(this.options.debug){o&&(this.fullStaticOutput+=a),this.options.stdout.write(this.fullStaticOutput+r);return}if(SNe){o&&this.options.stdout.write(a),this.lastOutput=r;return}if(o&&(this.fullStaticOutput+=a),s>=this.options.stdout.rows){this.options.stdout.write(v0c.default.clearTerminal+this.fullStaticOutput+r),this.lastOutput=r;return}o&&(this.log.clear(),this.options.stdout.write(a),this.log(r)),!o&&r!==this.lastOutput&&this.throttledLog(r),this.lastOutput=r},w0c.default(this),this.options=t,this.rootNode=D0c.createNode("ink-root"),this.rootNode.onRender=t.debug?this.onRender:W3i.throttle(this.onRender,32,{leading:!0,trailing:!0}),this.rootNode.onImmediateRender=this.onRender,this.log=B0c.default.create(t.stdout),this.throttledLog=t.debug?this.log:W3i.throttle(this.log,void 0,{leading:!0,trailing:!0}),this.isUnmounted=!1,this.lastOutput="",this.fullStaticOutput="",this.container=CSr.default.createContainer(this.rootNode,0,!1,null),this.unsubscribeExit=N0c.default(this.unmount,{alwaysLast:!1}),t.patchConsole&&this.patchConsole(),SNe||(t.stdout.on("resize",this.onRender),this.unsubscribeResize=()=>{t.stdout.off("resize",this.onRender)})}render(t){let r=E0c.default.createElement(k0c.default,{stdin:this.options.stdin,stdout:this.options.stdout,stderr:this.options.stderr,writeToStdout:this.writeToStdout,writeToStderr:this.writeToStderr,exitOnCtrlC:this.options.exitOnCtrlC,onExit:this.unmount},t);CSr.default.updateContainer(r,this.container,null,P3i)}writeToStdout(t){if(!this.isUnmounted){if(this.options.debug){this.options.stdout.write(t+this.fullStaticOutput+this.lastOutput);return}if(SNe){this.options.stdout.write(t);return}this.log.clear(),this.options.stdout.write(t),this.log(this.lastOutput)}}writeToStderr(t){if(!this.isUnmounted){if(this.options.debug){this.options.stderr.write(t),this.options.stdout.write(this.fullStaticOutput+this.lastOutput);return}if(SNe){this.options.stderr.write(t);return}this.log.clear(),this.options.stderr.write(t),this.log(this.lastOutput)}}unmount(t){this.isUnmounted||(this.onRender(),this.unsubscribeExit(),typeof this.restoreConsole=="function"&&this.restoreConsole(),typeof this.unsubscribeResize=="function"&&this.unsubscribeResize(),SNe?this.options.stdout.write(this.lastOutput+` +`):this.options.debug||this.log.done(),this.isUnmounted=!0,CSr.default.updateContainer(null,this.container,null,P3i),x0c.default.delete(this.options.stdout),t instanceof Error?this.rejectExitPromise(t):this.resolveExitPromise())}waitUntilExit(){return this.exitPromise||(this.exitPromise=new Promise((t,r)=>{this.resolveExitPromise=t,this.rejectExitPromise=r})),this.exitPromise}clear(){!SNe&&!this.options.debug&&this.log.clear()}patchConsole(){this.options.debug||(this.restoreConsole=R0c.default((t,r)=>{t==="stdout"&&this.writeToStdout(r),t==="stderr"&&(r.startsWith("The above error occurred")||this.writeToStderr(r))}))}};UY.default=mSr});var M3i=z(f4e=>{"use strict";var Q3i=f4e&&f4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(f4e,"__esModule",{value:!0});var G0c=Q3i(O3i()),vSt=Q3i(nSr()),F0c=xt("stream"),Z0c=(e,t)=>{let r=Object.assign({stdout:process.stdout,stdin:process.stdin,stderr:process.stderr,debug:!1,exitOnCtrlC:!0,patchConsole:!0},L0c(t)),s=V0c(r.stdout,()=>new G0c.default(r));return s.render(e),{rerender:s.render,unmount:()=>s.unmount(),waitUntilExit:s.waitUntilExit,cleanup:()=>vSt.default.delete(r.stdout),clear:s.clear}};f4e.default=Z0c;var L0c=(e={})=>e instanceof F0c.Stream?{stdout:e,stdin:process.stdin}:e,V0c=(e,t)=>{let r;return vSt.default.has(e)?r=vSt.default.get(e):(r=t(),vSt.default.set(e,r)),r}});var Y3i=z(Qq=>{"use strict";var W0c=Qq&&Qq.__createBinding||(Object.create?function(e,t,r,s){s===void 0&&(s=r),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,s){s===void 0&&(s=r),e[s]=t[r]}),P0c=Qq&&Qq.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),O0c=Qq&&Qq.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.hasOwnProperty.call(e,r)&&W0c(t,e,r);return P0c(t,e),t};Object.defineProperty(Qq,"__esModule",{value:!0});var I4e=O0c(Om()),H3i=e=>{let{items:t,children:r,style:s}=e,[a,o]=I4e.useState(0),g=I4e.useMemo(()=>t.slice(a),[t,a]);I4e.useLayoutEffect(()=>{o(t.length)},[t.length]);let p=g.map((m,y)=>r(m,a+y)),f=I4e.useMemo(()=>Object.assign({position:"absolute",flexDirection:"column"},s),[s]);return I4e.default.createElement("ink-box",{internal_static:!0,style:f},p)};H3i.displayName="Static";Qq.default=H3i});var J3i=z(C4e=>{"use strict";var Q0c=C4e&&C4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(C4e,"__esModule",{value:!0});var M0c=Q0c(Om()),X3i=({children:e,transform:t})=>e==null?null:M0c.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row"},internal_transform:t},e);X3i.displayName="Transform";C4e.default=X3i});var K3i=z(m4e=>{"use strict";var H0c=m4e&&m4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(m4e,"__esModule",{value:!0});var Y0c=H0c(Om()),U3i=({count:e=1})=>Y0c.default.createElement("ink-text",null,` +`.repeat(e));U3i.displayName="Newline";m4e.default=U3i});var q3i=z(h4e=>{"use strict";var j3i=h4e&&h4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(h4e,"__esModule",{value:!0});var X0c=j3i(Om()),J0c=j3i(ESt()),z3i=()=>X0c.default.createElement(J0c.default,{flexGrow:1});z3i.displayName="Spacer";h4e.default=z3i});var SSt=z(_4e=>{"use strict";var U0c=_4e&&_4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(_4e,"__esModule",{value:!0});var K0c=Om(),j0c=U0c(aSr()),z0c=()=>K0c.useContext(j0c.default);_4e.default=z0c});var ePi=z(y4e=>{"use strict";var q0c=y4e&&y4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(y4e,"__esModule",{value:!0});var $3i=Om(),$0c=q0c(SSt()),eyc=(e,t={})=>{let{stdin:r,setRawMode:s,internal_exitOnCtrlC:a}=$0c.default();$3i.useEffect(()=>{if(t.isActive!==!1)return s(!0),()=>{s(!1)}},[t.isActive,s]),$3i.useEffect(()=>{if(t.isActive===!1)return;let o=g=>{let p=String(g),f={upArrow:p==="\x1B[A",downArrow:p==="\x1B[B",leftArrow:p==="\x1B[D",rightArrow:p==="\x1B[C",pageDown:p==="\x1B[6~",pageUp:p==="\x1B[5~",return:p==="\r",escape:p==="\x1B",ctrl:!1,shift:!1,tab:p===" "||p==="\x1B[Z",backspace:p==="\b",delete:p==="\x7F"||p==="\x1B[3~",meta:!1};p<=""&&!f.return&&(p=String.fromCharCode(p.charCodeAt(0)+97-1),f.ctrl=!0),p.startsWith("\x1B")&&(p=p.slice(1),f.meta=!0);let m=p>="A"&&p<="Z",y=p>="\u0410"&&p<="\u042F";p.length===1&&(m||y)&&(f.shift=!0),f.tab&&p==="[Z"&&(f.shift=!0),(f.tab||f.backspace||f.delete)&&(p=""),(!(p==="c"&&f.ctrl)||!a)&&e(p,f)};return r?.on("data",o),()=>{r?.off("data",o)}},[t.isActive,r,a,e])};y4e.default=eyc});var tPi=z(b4e=>{"use strict";var tyc=b4e&&b4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(b4e,"__esModule",{value:!0});var ryc=Om(),nyc=tyc(sSr()),iyc=()=>ryc.useContext(nyc.default);b4e.default=iyc});var rPi=z(E4e=>{"use strict";var syc=E4e&&E4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(E4e,"__esModule",{value:!0});var oyc=Om(),ayc=syc(lSr()),cyc=()=>oyc.useContext(ayc.default);E4e.default=cyc});var nPi=z(B4e=>{"use strict";var lyc=B4e&&B4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(B4e,"__esModule",{value:!0});var uyc=Om(),gyc=lyc(gSr()),Ayc=()=>uyc.useContext(gyc.default);B4e.default=Ayc});var sPi=z(S4e=>{"use strict";var iPi=S4e&&S4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(S4e,"__esModule",{value:!0});var v4e=Om(),dyc=iPi(bSt()),pyc=iPi(SSt()),fyc=({isActive:e=!0,autoFocus:t=!1,id:r}={})=>{let{isRawModeSupported:s,setRawMode:a}=pyc.default(),{activeId:o,add:g,remove:p,activate:f,deactivate:m,focus:y}=v4e.useContext(dyc.default),B=v4e.useMemo(()=>r??Math.random().toString().slice(2,7),[r]);return v4e.useEffect(()=>(g(B,{autoFocus:t}),()=>{p(B)}),[B,t]),v4e.useEffect(()=>{e?f(B):m(B)},[e,B]),v4e.useEffect(()=>{if(!(!s||!e))return a(!0),()=>{a(!1)}},[e]),{isFocused:!!B&&o===B,focus:y}};S4e.default=fyc});var oPi=z(w4e=>{"use strict";var Iyc=w4e&&w4e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(w4e,"__esModule",{value:!0});var Cyc=Om(),myc=Iyc(bSt()),hyc=()=>{let e=Cyc.useContext(myc.default);return{enableFocus:e.enableFocus,disableFocus:e.disableFocus,focusNext:e.focusNext,focusPrevious:e.focusPrevious,focus:e.focus}};w4e.default=hyc});var aPi=z(hSr=>{"use strict";Object.defineProperty(hSr,"__esModule",{value:!0});hSr.default=e=>{var t,r,s,a;return{width:(r=(t=e.yogaNode)===null||t===void 0?void 0:t.getComputedWidth())!==null&&r!==void 0?r:0,height:(a=(s=e.yogaNode)===null||s===void 0?void 0:s.getComputedHeight())!==null&&a!==void 0?a:0}}});var JQ=z(Ax=>{"use strict";Object.defineProperty(Ax,"__esModule",{value:!0});var _yc=M3i();Object.defineProperty(Ax,"render",{enumerable:!0,get:function(){return _yc.default}});var yyc=ESt();Object.defineProperty(Ax,"Box",{enumerable:!0,get:function(){return yyc.default}});var byc=ISr();Object.defineProperty(Ax,"Text",{enumerable:!0,get:function(){return byc.default}});var Eyc=Y3i();Object.defineProperty(Ax,"Static",{enumerable:!0,get:function(){return Eyc.default}});var Byc=J3i();Object.defineProperty(Ax,"Transform",{enumerable:!0,get:function(){return Byc.default}});var vyc=K3i();Object.defineProperty(Ax,"Newline",{enumerable:!0,get:function(){return vyc.default}});var Syc=q3i();Object.defineProperty(Ax,"Spacer",{enumerable:!0,get:function(){return Syc.default}});var wyc=ePi();Object.defineProperty(Ax,"useInput",{enumerable:!0,get:function(){return wyc.default}});var Tyc=tPi();Object.defineProperty(Ax,"useApp",{enumerable:!0,get:function(){return Tyc.default}});var Nyc=SSt();Object.defineProperty(Ax,"useStdin",{enumerable:!0,get:function(){return Nyc.default}});var Ryc=rPi();Object.defineProperty(Ax,"useStdout",{enumerable:!0,get:function(){return Ryc.default}});var Dyc=nPi();Object.defineProperty(Ax,"useStderr",{enumerable:!0,get:function(){return Dyc.default}});var xyc=sPi();Object.defineProperty(Ax,"useFocus",{enumerable:!0,get:function(){return xyc.default}});var kyc=oPi();Object.defineProperty(Ax,"useFocusManager",{enumerable:!0,get:function(){return kyc.default}});var Gyc=aPi();Object.defineProperty(Ax,"measureElement",{enumerable:!0,get:function(){return Gyc.default}})});var NSt=z(TSt=>{"use strict";Object.defineProperty(TSt,"__esModule",{value:!0});TSt.Gem=void 0;var Fyc=(Oa(),Ai(Pa)),Zyc=JQ(),wSt=Fyc.__importStar(Om());TSt.Gem=(0,wSt.memo)(({active:e})=>{let t=(0,wSt.useMemo)(()=>e?"\u25C9":"\u25EF",[e]),r=(0,wSt.useMemo)(()=>e?"green":"yellow",[e]);return wSt.default.createElement(Zyc.Text,{color:r},t)})});var T4e=z(_Sr=>{"use strict";Object.defineProperty(_Sr,"__esModule",{value:!0});_Sr.useKeypress=Vyc;var Lyc=JQ(),cPi=Om();function Vyc({active:e},t,r){let{stdin:s}=(0,Lyc.useStdin)(),a=(0,cPi.useCallback)((o,g)=>t(o,g),r);(0,cPi.useEffect)(()=>{if(!(!e||!s))return s.on("keypress",a),()=>{s.off("keypress",a)}},[e,a,s])}});var ySr=z(wNe=>{"use strict";Object.defineProperty(wNe,"__esModule",{value:!0});wNe.useFocusRequest=wNe.FocusRequest=void 0;var Wyc=T4e(),RSt;(function(e){e.BEFORE="before",e.AFTER="after"})(RSt||(wNe.FocusRequest=RSt={}));var Pyc=function({active:e},t,r){(0,Wyc.useKeypress)({active:e},(s,a)=>{a.name==="tab"&&(a.shift?t(RSt.BEFORE):t(RSt.AFTER))},r)};wNe.useFocusRequest=Pyc});var xSt=z(DSt=>{"use strict";Object.defineProperty(DSt,"__esModule",{value:!0});DSt.useListInput=void 0;var Oyc=T4e(),Qyc=function(e,t,{active:r,minus:s,plus:a,set:o,loop:g=!0}){(0,Oyc.useKeypress)({active:r},(p,f)=>{let m=t.indexOf(e);switch(f.name){case s:{let y=m-1;if(g){o(t[(t.length+y)%t.length]);return}if(y<0)return;o(t[y])}break;case a:{let y=m+1;if(g){o(t[y%t.length]);return}if(y>=t.length)return;o(t[y])}break}},[t,e,a,o,g])};DSt.useListInput=Qyc});var GSt=z(kSt=>{"use strict";Object.defineProperty(kSt,"__esModule",{value:!0});kSt.ScrollableItems=void 0;var Myc=(Oa(),Ai(Pa)),TNe=JQ(),jY=Myc.__importStar(Om()),Hyc=ySr(),Yyc=xSt(),Xyc=({active:e=!0,children:t=[],radius:r=10,size:s=1,loop:a=!0,onFocusRequest:o,willReachEnd:g})=>{let p=X=>{if(X.key===null)throw new Error("Expected all children to have a key");return X.key},f=jY.default.Children.map(t,X=>p(X)),m=f[0],[y,B]=(0,jY.useState)(m),v=f.indexOf(y);(0,jY.useEffect)(()=>{f.includes(y)||B(m)},[t]),(0,jY.useEffect)(()=>{g&&v>=f.length-2&&g()},[v]),(0,Hyc.useFocusRequest)({active:e&&!!o},X=>{o?.(X)},[o]),(0,Yyc.useListInput)(y,f,{active:e,minus:"up",plus:"down",set:B,loop:a});let k=v-r,T=v+r;T>f.length&&(k-=T-f.length,T=f.length),k<0&&(T+=-k,k=0),T>=f.length&&(T=f.length-1);let O=[];for(let X=k;X<=T;++X){let U=f[X],le=e&&U===y;O.push(jY.default.createElement(TNe.Box,{key:U,height:s},jY.default.createElement(TNe.Box,{marginLeft:1,marginRight:1},jY.default.createElement(TNe.Text,null,le?jY.default.createElement(TNe.Text,{color:"cyan",bold:!0},">"):" ")),jY.default.createElement(TNe.Box,null,jY.default.cloneElement(t[X],{active:le}))))}return jY.default.createElement(TNe.Box,{flexDirection:"column",width:"100%"},O)};kSt.ScrollableItems=Xyc});var bSr=z(aCe=>{"use strict";Object.defineProperty(aCe,"__esModule",{value:!0});aCe.Application=aCe.MinistoreContext=void 0;var Jyc=(Oa(),Ai(Pa)),Uyc=JQ(),N4e=Jyc.__importStar(Om()),Kyc=xt("readline");aCe.MinistoreContext=N4e.default.createContext(null);var jyc=({children:e})=>{let{stdin:t,setRawMode:r}=(0,Uyc.useStdin)();(0,N4e.useEffect)(()=>{r&&r(!0),t&&(0,Kyc.emitKeypressEvents)(t)},[t,r]);let[s,a]=(0,N4e.useState)(new Map),o=(0,N4e.useMemo)(()=>({getAll:()=>s,get:g=>s.get(g),set:(g,p)=>a(new Map([...s,[g,p]]))}),[s,a]);return N4e.default.createElement(aCe.MinistoreContext.Provider,{value:o,children:e})};aCe.Application=jyc});var BSr=z(ESr=>{"use strict";Object.defineProperty(ESr,"__esModule",{value:!0});ESr.useMinistore=qyc;var lPi=Om(),zyc=bSr();function qyc(e,t){let r=(0,lPi.useContext)(zyc.MinistoreContext);if(r===null)throw new Error("Expected this hook to run with a ministore context attached");if(typeof e>"u")return r.getAll();let s=(0,lPi.useCallback)(o=>{r.set(e,o)},[e,r.set]),a=r.get(e);return typeof a>"u"&&(a=t),[a,s]}});var FSt=z(vSr=>{"use strict";Object.defineProperty(vSr,"__esModule",{value:!0});vSr.renderForm=rbc;var $yc=(Oa(),Ai(Pa)),uPi=JQ(),gPi=$yc.__importDefault(Om()),ebc=bSr(),tbc=T4e();async function rbc(e,t,{stdin:r,stdout:s,stderr:a}){let o,g=f=>{let{exit:m}=(0,uPi.useApp)();(0,tbc.useKeypress)({active:!0},(y,B)=>{B.name==="return"&&(o=f,m())},[m,f])},{waitUntilExit:p}=(0,uPi.render)(gPi.default.createElement(ebc.Application,null,gPi.default.createElement(e,{...t,useSubmit:g})),{stdin:r,stdout:s,stderr:a});return await p(),o}});var fPi=z(R4e=>{"use strict";Object.defineProperty(R4e,"__esModule",{value:!0});R4e.UncontrolledTextInput=void 0;var dPi=Om(),SSr=Om(),APi=JQ(),cCe=tie(),pPi=({value:e,placeholder:t="",focus:r=!0,mask:s,highlightPastedText:a=!1,showCursor:o=!0,onChange:g,onSubmit:p})=>{let[{cursorOffset:f,cursorWidth:m},y]=SSr.useState({cursorOffset:(e||"").length,cursorWidth:0});SSr.useEffect(()=>{y(O=>{if(!r||!o)return O;let X=e||"";return O.cursorOffset>X.length-1?{cursorOffset:X.length,cursorWidth:0}:O})},[e,r,o]);let B=a?m:0,v=s?s.repeat(e.length):e,k=v,T=t?cCe.grey(t):void 0;if(o&&r){T=t.length>0?cCe.inverse(t[0])+cCe.grey(t.slice(1)):cCe.inverse(" "),k=v.length>0?"":cCe.inverse(" ");let O=0;for(let X of v)O>=f-B&&O<=f?k+=cCe.inverse(X):k+=X,O++;v.length>0&&f===v.length&&(k+=cCe.inverse(" "))}return APi.useInput((O,X)=>{if(X.upArrow||X.downArrow||X.ctrl&&O==="c"||X.tab||X.shift&&X.tab)return;if(X.return){p&&p(e);return}let U=f,le=e,ae=0;X.leftArrow?o&&U--:X.rightArrow?o&&U++:X.backspace||X.delete?f>0&&(le=e.slice(0,f-1)+e.slice(f,e.length),U--):(le=e.slice(0,f)+O+e.slice(f,e.length),U+=O.length,O.length>1&&(ae=O.length)),f<0&&(U=0),f>e.length&&(U=e.length),y({cursorOffset:U,cursorWidth:ae}),le!==e&&g(le)},{isActive:r}),dPi.createElement(APi.Text,null,t?v.length>0?k:T:k)};R4e.default=pPi;R4e.UncontrolledTextInput=({initialValue:e="",...t})=>{let[r,s]=SSr.useState(e);return dPi.createElement(pPi,Object.assign({},t,{value:r,onChange:s}))}});var CPi=z(wSr=>{"use strict";Object.defineProperty(wSr,"__esModule",{value:!0});var Mq=(Oa(),Ai(Pa)),nbc=il(),D4e=Bn(),ibc=Mq.__importStar(aSt()),sbc=(Zl(),Ai(pg)),IPi=kWi(),x4e=["regular","dev","peer"],k4e=class extends nbc.BaseCommand{async execute(){ibc.checkRequirements(this.context);let{Gem:t}=await Promise.resolve().then(()=>Mq.__importStar(NSt())),{ScrollableItems:r}=await Promise.resolve().then(()=>Mq.__importStar(GSt())),{useKeypress:s}=await Promise.resolve().then(()=>Mq.__importStar(T4e())),{useMinistore:a}=await Promise.resolve().then(()=>Mq.__importStar(BSr())),{renderForm:o}=await Promise.resolve().then(()=>Mq.__importStar(FSt())),{default:g}=await Promise.resolve().then(()=>Mq.__importStar(fPi())),{Box:p,Text:f}=await Promise.resolve().then(()=>Mq.__importStar(JQ())),{default:m,useEffect:y,useState:B}=await Promise.resolve().then(()=>Mq.__importStar(Om())),v=await D4e.Configuration.find(this.context.cwd,this.context.plugins),k=()=>m.createElement(p,{flexDirection:"row"},m.createElement(p,{flexDirection:"column",width:48},m.createElement(p,null,m.createElement(f,null,"Press ",m.createElement(f,{bold:!0,color:"cyanBright"},""),"/",m.createElement(f,{bold:!0,color:"cyanBright"},"")," to move between packages.")),m.createElement(p,null,m.createElement(f,null,"Press ",m.createElement(f,{bold:!0,color:"cyanBright"},"")," to select a package.")),m.createElement(p,null,m.createElement(f,null,"Press ",m.createElement(f,{bold:!0,color:"cyanBright"},"")," again to change the target."))),m.createElement(p,{flexDirection:"column"},m.createElement(p,{marginLeft:1},m.createElement(f,null,"Press ",m.createElement(f,{bold:!0,color:"cyanBright"},"")," to install the selected packages.")),m.createElement(p,{marginLeft:1},m.createElement(f,null,"Press ",m.createElement(f,{bold:!0,color:"cyanBright"},"")," to abort.")))),T=()=>m.createElement(m.Fragment,null,m.createElement(p,{width:15},m.createElement(f,{bold:!0,underline:!0,color:"gray"},"Owner")),m.createElement(p,{width:11},m.createElement(f,{bold:!0,underline:!0,color:"gray"},"Version")),m.createElement(p,{width:10},m.createElement(f,{bold:!0,underline:!0,color:"gray"},"Downloads"))),O=()=>m.createElement(p,{width:17},m.createElement(f,{bold:!0,underline:!0,color:"gray"},"Target")),X=({hit:be,active:Te})=>{let[ke,x]=a(be.name,null);s({active:Te},(Je,Xe)=>{if(Xe.name!=="space")return;if(!ke){x(x4e[0]);return}let ft=x4e.indexOf(ke)+1;ft===x4e.length?x(null):x(x4e[ft])},[ke,x]);let et=D4e.structUtils.parseIdent(be.name),Ue=D4e.structUtils.prettyIdent(v,et);return m.createElement(p,null,m.createElement(p,{width:45},m.createElement(f,{bold:!0,wrap:"wrap"},Ue)),m.createElement(p,{width:14,marginLeft:1},m.createElement(f,{bold:!0,wrap:"truncate"},be.owner.name)),m.createElement(p,{width:10,marginLeft:1},m.createElement(f,{italic:!0,wrap:"truncate"},be.version)),m.createElement(p,{width:16,marginLeft:1},m.createElement(f,null,be.humanDownloadsLast30Days)))},U=({name:be,active:Te})=>{let[ke]=a(be,null),x=D4e.structUtils.parseIdent(be);return m.createElement(p,null,m.createElement(p,{width:47},m.createElement(f,{bold:!0}," - ",D4e.structUtils.prettyIdent(v,x))),x4e.map(et=>m.createElement(p,{key:et,width:14,marginLeft:1},m.createElement(f,null," ",m.createElement(t,{active:ke===et})," ",m.createElement(f,{bold:!0},et)))))},le=()=>m.createElement(p,{marginTop:1},m.createElement(f,null,"Powered by Algolia.")),ge=await o(({useSubmit:be})=>{let Te=a();be(Te);let ke=Array.from(Te.keys()).filter(Ot=>Te.get(Ot)!==null),[x,et]=B(""),[Ue,Je]=B(0),[Xe,ft]=B([]),Gt=Ot=>{Ot.match(/\t| /)||et(Ot)},er=async()=>{Je(0);let Ot=await(0,IPi.search)(x);Ot.query===x&&ft(Ot.hits)},Ur=async()=>{let Ot=await(0,IPi.search)(x,Ue+1);Ot.query===x&&Ot.page-1===Ue&&(Je(Ot.page),ft([...Xe,...Ot.hits]))};return y(()=>{x?er():ft([])},[x]),m.createElement(p,{flexDirection:"column"},m.createElement(k,null),m.createElement(p,{flexDirection:"row",marginTop:1},m.createElement(f,{bold:!0},"Search: "),m.createElement(p,{width:41},m.createElement(g,{value:x,onChange:Gt,placeholder:"i.e. babel, webpack, react...",showCursor:!1})),m.createElement(T,null)),Xe.length?m.createElement(r,{radius:2,loop:!1,children:Xe.map(Ot=>m.createElement(X,{key:Ot.name,hit:Ot,active:!1})),willReachEnd:Ur}):m.createElement(f,{color:"gray"},"Start typing..."),m.createElement(p,{flexDirection:"row",marginTop:1},m.createElement(p,{width:49},m.createElement(f,{bold:!0},"Selected:")),m.createElement(O,null)),ke.length?ke.map(Ot=>m.createElement(U,{key:Ot,name:Ot,active:!1})):m.createElement(f,{color:"gray"},"No selected packages..."),m.createElement(le,null))},{},{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});if(typeof ge>"u")return 1;let fe=Array.from(ge.keys()).filter(be=>ge.get(be)==="regular"),pe=Array.from(ge.keys()).filter(be=>ge.get(be)==="dev"),he=Array.from(ge.keys()).filter(be=>ge.get(be)==="peer");return fe.length&&await this.cli.run(["add",...fe]),pe.length&&await this.cli.run(["add","--dev",...pe]),he&&await this.cli.run(["add","--peer",...he]),0}};k4e.paths=[["search"]];k4e.usage=sbc.Command.Usage({category:"Interactive commands",description:"open the search interface",details:` This command opens a fullscreen terminal interface where you can search for and install packages from the npm registry. - `,examples:[["Open the search window","yarn search"]]});ySr.default=D4e});var $k=z(Om=>{"use strict";var Yyc=Object.prototype.toString,XM=s5e(),gPi=!1,x4e=new Set,APi={yellow:"blue",cyan:"red",green:"magenta",black:"white",blue:"yellow",red:"cyan",magenta:"green",white:"black"};Om.longest=(e,t)=>e.reduce((r,s)=>Math.max(r,t?s[t].length:s.length),0);Om.hasColor=e=>!!e&&XM.hasColor(e);var kSt=Om.isObject=e=>e!==null&&typeof e=="object"&&!Array.isArray(e);Om.nativeType=e=>Yyc.call(e).slice(8,-1).toLowerCase().replace(/\s/g,"");Om.isAsyncFn=e=>Om.nativeType(e)==="asyncfunction";Om.isPrimitive=e=>e!=null&&typeof e!="object"&&typeof e!="function";Om.resolve=(e,t,...r)=>typeof t=="function"?t.call(e,...r):t;Om.scrollDown=(e=[])=>[...e.slice(1),e[0]];Om.scrollUp=(e=[])=>[e.pop(),...e];Om.reorder=(e=[])=>{let t=e.slice();return t.sort((r,s)=>r.index>s.index?1:r.index{let s=e.length,a=r===s?0:r<0?s-1:r,o=e[t];e[t]=e[a],e[a]=o};Om.width=(e,t=80)=>{let r=e&&e.columns?e.columns:t;return e&&typeof e.getWindowSize=="function"&&(r=e.getWindowSize()[0]),process.platform==="win32"?r-1:r};Om.height=(e,t=20)=>{let r=e&&e.rows?e.rows:t;return e&&typeof e.getWindowSize=="function"&&(r=e.getWindowSize()[1]),r};Om.wordWrap=(e,t={})=>{if(!e)return e;typeof t=="number"&&(t={width:t});let{indent:r="",newline:s=` -`+r,width:a=80}=t,o=(s+r).match(/[^\S\n]/g)||[];a-=o.length;let g=`.{1,${a}}([\\s\\u200B]+|$)|[^\\s\\u200B]+?([\\s\\u200B]+|$)`,p=e.trim(),f=new RegExp(g,"g"),m=p.match(f)||[];return m=m.map(y=>y.replace(/\n$/,"")),t.padEnd&&(m=m.map(y=>y.padEnd(a," "))),t.padStart&&(m=m.map(y=>y.padStart(a," "))),r+m.join(s)};Om.unmute=e=>{let t=e.stack.find(s=>XM.keys.color.includes(s));return t?XM[t]:e.stack.find(s=>s.slice(2)==="bg")?XM[t.slice(2)]:s=>s};Om.pascal=e=>e?e[0].toUpperCase()+e.slice(1):"";Om.inverse=e=>{if(!e||!e.stack)return e;let t=e.stack.find(s=>XM.keys.color.includes(s));if(t){let s=XM["bg"+Om.pascal(t)];return s?s.black:e}let r=e.stack.find(s=>s.slice(0,2)==="bg");return r?XM[r.slice(2).toLowerCase()]||e:XM.none};Om.complement=e=>{if(!e||!e.stack)return e;let t=e.stack.find(s=>XM.keys.color.includes(s)),r=e.stack.find(s=>s.slice(0,2)==="bg");if(t&&!r)return XM[APi[t]||t];if(r){let s=r.slice(2).toLowerCase(),a=APi[s];return a&&XM["bg"+Om.pascal(a)]||e}return XM.none};Om.meridiem=e=>{let t=e.getHours(),r=e.getMinutes(),s=t>=12?"pm":"am";t=t%12;let a=t===0?12:t,o=r<10?"0"+r:r;return a+":"+o+" "+s};Om.set=(e={},t="",r)=>t.split(".").reduce((s,a,o,g)=>{let p=g.length-1>o?s[a]||{}:r;return!Om.isObject(p)&&o{let s=e[t]==null?t.split(".").reduce((a,o)=>a&&a[o],e):e[t];return s??r};Om.mixin=(e,t)=>{if(!kSt(e))return t;if(!kSt(t))return e;for(let r of Object.keys(t)){let s=Object.getOwnPropertyDescriptor(t,r);if(hasOwnProperty.call(s,"value"))if(hasOwnProperty.call(e,r)&&kSt(s.value)){let a=Object.getOwnPropertyDescriptor(e,r);kSt(a.value)&&a.value!==s.value?e[r]=Om.merge({},e[r],t[r]):Reflect.defineProperty(e,r,s)}else Reflect.defineProperty(e,r,s);else Reflect.defineProperty(e,r,s)}return e};Om.merge=(...e)=>{let t={};for(let r of e)Om.mixin(t,r);return t};Om.mixinEmitter=(e,t)=>{let r=t.constructor.prototype;for(let s of Object.keys(r)){let a=r[s];typeof a=="function"?Om.define(e,s,a.bind(t)):Om.define(e,s,a)}};var GSt=(e,t)=>{gPi||(gPi=!0,x4e.forEach(r=>r()),e===!0&&process.exit(128+t))},dPi=GSt.bind(null,!0,15),pPi=GSt.bind(null,!0,2);Om.onExit=e=>(x4e.size===0&&(process.once("SIGTERM",dPi),process.once("SIGINT",pPi),process.once("exit",GSt)),x4e.add(e),()=>{x4e.delete(e),x4e.size===0&&(process.off("SIGTERM",dPi),process.off("SIGINT",pPi),process.off("exit",GSt))});Om.define=(e,t,r)=>{Reflect.defineProperty(e,t,{value:r})};Om.defineExport=(e,t,r)=>{let s;Reflect.defineProperty(e,t,{enumerable:!0,configurable:!0,set(a){s=a},get(){return s?s():r()}})}});var fPi=z(wNe=>{"use strict";wNe.ctrl={a:"first",b:"backward",c:"cancel",d:"deleteForward",e:"last",f:"forward",g:"reset",i:"tab",k:"cutForward",l:"reset",n:"newItem",m:"cancel",j:"submit",p:"search",r:"remove",s:"save",u:"undo",w:"cutLeft",x:"toggleCursor",v:"paste"};wNe.shift={up:"shiftUp",down:"shiftDown",left:"shiftLeft",right:"shiftRight",tab:"prev"};wNe.fn={up:"pageUp",down:"pageDown",left:"pageLeft",right:"pageRight",delete:"deleteForward"};wNe.option={b:"backward",f:"forward",d:"cutRight",left:"cutLeft",up:"altUp",down:"altDown"};wNe.keys={pageup:"pageUp",pagedown:"pageDown",home:"home",end:"end",cancel:"cancel",delete:"deleteForward",backspace:"delete",down:"down",enter:"submit",escape:"cancel",left:"left",space:"space",number:"number",return:"submit",right:"right",tab:"next",up:"up"}});var CPi=z((vYl,IPi)=>{"use strict";IPi.exports=class{_queue=[];_executing=!1;_jobRunner=null;constructor(t){this._jobRunner=t}enqueue=(...t)=>{this._queue.push(t),this._dequeue()};destroy(){this._queue.length=0,this._jobRunner=null}_dequeue(){this._executing||!this._queue.length||(this._executing=!0,this._jobRunner(...this._queue.shift()),setTimeout(()=>{this._executing=!1,this._dequeue()}))}}});var bSr=z((SYl,hPi)=>{"use strict";var mPi=Dt("readline"),Hyc=fPi(),Xyc=CPi(),Jyc=/^(?:\x1b)([a-zA-Z0-9])$/,Uyc=/^(?:\x1b+)(O|N|\[|\[\[)(?:(\d+)(?:;(\d+))?([~^$])|(?:1;)?(\d+)?([a-zA-Z]))/,Kyc={OP:"f1",OQ:"f2",OR:"f3",OS:"f4","[11~":"f1","[12~":"f2","[13~":"f3","[14~":"f4","[[A":"f1","[[B":"f2","[[C":"f3","[[D":"f4","[[E":"f5","[15~":"f5","[17~":"f6","[18~":"f7","[19~":"f8","[20~":"f9","[21~":"f10","[23~":"f11","[24~":"f12","[A":"up","[B":"down","[C":"right","[D":"left","[E":"clear","[F":"end","[H":"home",OA:"up",OB:"down",OC:"right",OD:"left",OE:"clear",OF:"end",OH:"home","[1~":"home","[2~":"insert","[3~":"delete","[4~":"end","[5~":"pageup","[6~":"pagedown","[[5~":"pageup","[[6~":"pagedown","[7~":"home","[8~":"end","[a":"up","[b":"down","[c":"right","[d":"left","[e":"clear","[2$":"insert","[3$":"delete","[5$":"pageup","[6$":"pagedown","[7$":"home","[8$":"end",Oa:"up",Ob:"down",Oc:"right",Od:"left",Oe:"clear","[2^":"insert","[3^":"delete","[5^":"pageup","[6^":"pagedown","[7^":"home","[8^":"end","[Z":"tab"};function jyc(e){return["[a","[b","[c","[d","[e","[2$","[3$","[5$","[6$","[7$","[8$","[Z"].includes(e)}function zyc(e){return["Oa","Ob","Oc","Od","Oe","[2^","[3^","[5^","[6^","[7^","[8^"].includes(e)}var FSt=(e="",t={})=>{let r,s={name:t.name,ctrl:!1,meta:!1,shift:!1,option:!1,sequence:e,raw:e,...t};if(Buffer.isBuffer(e)?e[0]>127&&e[1]===void 0?(e[0]-=128,e="\x1B"+String(e)):e=String(e):e!==void 0&&typeof e!="string"?e=String(e):e||(e=s.sequence||""),s.sequence=s.sequence||e||s.name,e==="\r")s.raw=void 0,s.name="return";else if(e===` -`)s.name="enter";else if(e===" ")s.name="tab";else if(e==="\b"||e==="\x7F"||e==="\x1B\x7F"||e==="\x1B\b")s.name="backspace",s.meta=e.charAt(0)==="\x1B";else if(e==="\x1B"||e==="\x1B\x1B")s.name="escape",s.meta=e.length===2;else if(e===" "||e==="\x1B ")s.name="space",s.meta=e.length===2;else if(e<="")s.name=String.fromCharCode(e.charCodeAt(0)+97-1),s.ctrl=!0;else if(e.length===1&&e>="0"&&e<="9")s.name="number";else if(e.length===1&&e>="a"&&e<="z")s.name=e;else if(e.length===1&&e>="A"&&e<="Z")s.name=e.toLowerCase(),s.shift=!0;else if(r=Jyc.exec(e))s.meta=!0,s.shift=/^[A-Z]$/.test(r[1]);else if(r=Uyc.exec(e)){let a=[...e];a[0]==="\x1B"&&a[1]==="\x1B"&&(s.option=!0);let o=[r[1],r[2],r[4],r[6]].filter(Boolean).join(""),g=(r[3]||r[5]||1)-1;s.ctrl=!!(g&4),s.meta=!!(g&10),s.shift=!!(g&1),s.code=o,s.name=Kyc[o],s.shift=jyc(o)||s.shift,s.ctrl=zyc(o)||s.ctrl}return s};FSt.listen=(e={},t)=>{let{stdin:r}=e;if(!r||r!==process.stdin&&!r.isTTY)throw new Error("Invalid stream passed");let s=mPi.createInterface({terminal:!0,input:r});mPi.emitKeypressEvents(r,s);let a=new Xyc((p,f)=>t(p,FSt(p,f),s)),o=r.isRaw;return r.isTTY&&r.setRawMode(!0),r.on("keypress",a.enqueue),s.resume(),()=>{r.isTTY&&r.setRawMode(o),r.removeListener("keypress",a.enqueue),a.destroy(),s.pause(),s.close()}};FSt.action=(e,t,r)=>{let s={...Hyc,...r};return t.ctrl?(t.action=s.ctrl[t.name],t):t.option&&s.option?(t.action=s.option[t.name],t):t.shift?(t.action=s.shift[t.name],t):(t.action=s.keys[t.name],t)};hPi.exports=FSt});var yPi=z((wYl,_Pi)=>{"use strict";_Pi.exports=e=>{e.timers=e.timers||{};let t=e.options.timers;if(t)for(let r of Object.keys(t)){let s=t[r];typeof s=="number"&&(s={interval:s}),qyc(e,r,s)}};function qyc(e,t,r={}){let s=e.timers[t]={name:t,start:Date.now(),ms:0,tick:0},a=r.interval||120;s.frames=r.frames||[],s.loading=!0;let o=setInterval(()=>{s.ms=Date.now()-s.start,s.tick++,e.render()},a);return s.stop=()=>{s.loading=!1,clearInterval(o)},Reflect.defineProperty(s,"interval",{value:o}),e.once("close",()=>s.stop()),s.stop}});var EPi=z((TYl,bPi)=>{"use strict";var{define:$yc,width:ebc}=$k(),ESr=class{constructor(t){let r=t.options;$yc(this,"_prompt",t),this.type=t.type,this.name=t.name,this.message="",this.header="",this.footer="",this.error="",this.hint="",this.input="",this.cursor=0,this.index=0,this.lines=0,this.tick=0,this.prompt="",this.buffer="",this.width=ebc(r.stdout||process.stdout),Object.assign(this,r),this.name=this.name||this.message,this.message=this.message||this.name,this.symbols=t.symbols,this.styles=t.styles,this.required=new Set,this.cancelled=!1,this.submitted=!1}clone(){let t={...this};return t.status=this.status,t.buffer=Buffer.from(t.buffer),delete t.clone,t}set color(t){this._color=t}get color(){let t=this.prompt.styles;if(this.cancelled)return t.cancelled;if(this.submitted)return t.submitted;let r=this._color||t[this.status];return typeof r=="function"?r:t.pending}set loading(t){this._loading=t}get loading(){return typeof this._loading=="boolean"?this._loading:this.loadingChoices?"choices":!1}get status(){return this.cancelled?"cancelled":this.submitted?"submitted":"pending"}};bPi.exports=ESr});var vPi=z((NYl,BPi)=>{"use strict";var BSr=$k(),ax=s5e(),vSr={default:ax.noop,noop:ax.noop,set inverse(e){this._inverse=e},get inverse(){return this._inverse||BSr.inverse(this.primary)},set complement(e){this._complement=e},get complement(){return this._complement||BSr.complement(this.primary)},primary:ax.cyan,success:ax.green,danger:ax.magenta,strong:ax.bold,warning:ax.yellow,muted:ax.dim,disabled:ax.gray,dark:ax.dim.gray,underline:ax.underline,set info(e){this._info=e},get info(){return this._info||this.primary},set em(e){this._em=e},get em(){return this._em||this.primary.underline},set heading(e){this._heading=e},get heading(){return this._heading||this.muted.underline},set pending(e){this._pending=e},get pending(){return this._pending||this.primary},set submitted(e){this._submitted=e},get submitted(){return this._submitted||this.success},set cancelled(e){this._cancelled=e},get cancelled(){return this._cancelled||this.danger},set typing(e){this._typing=e},get typing(){return this._typing||this.dim},set placeholder(e){this._placeholder=e},get placeholder(){return this._placeholder||this.primary.dim},set highlight(e){this._highlight=e},get highlight(){return this._highlight||this.inverse}};vSr.merge=(e={})=>{e.styles&&typeof e.styles.enabled=="boolean"&&(ax.enabled=e.styles.enabled),e.styles&&typeof e.styles.visible=="boolean"&&(ax.visible=e.styles.visible);let t=BSr.merge({},vSr,e.styles);delete t.merge;for(let r of Object.keys(ax))hasOwnProperty.call(t,r)||Reflect.defineProperty(t,r,{get:()=>ax[r]});for(let r of Object.keys(ax.styles))hasOwnProperty.call(t,r)||Reflect.defineProperty(t,r,{get:()=>ax[r]});return t};BPi.exports=vSr});var wPi=z((RYl,SPi)=>{"use strict";var SSr=process.platform==="win32",Mq=s5e(),tbc=$k(),wSr={...Mq.symbols,upDownDoubleArrow:"\u21D5",upDownDoubleArrow2:"\u2B0D",upDownArrow:"\u2195",asterisk:"*",asterism:"\u2042",bulletWhite:"\u25E6",electricArrow:"\u2301",ellipsisLarge:"\u22EF",ellipsisSmall:"\u2026",fullBlock:"\u2588",identicalTo:"\u2261",indicator:Mq.symbols.check,leftAngle:"\u2039",mark:"\u203B",minus:"\u2212",multiplication:"\xD7",obelus:"\xF7",percent:"%",pilcrow:"\xB6",pilcrow2:"\u2761",pencilUpRight:"\u2710",pencilDownRight:"\u270E",pencilRight:"\u270F",plus:"+",plusMinus:"\xB1",pointRight:"\u261E",rightAngle:"\u203A",section:"\xA7",hexagon:{off:"\u2B21",on:"\u2B22",disabled:"\u2B22"},ballot:{on:"\u2611",off:"\u2610",disabled:"\u2612"},stars:{on:"\u2605",off:"\u2606",disabled:"\u2606"},folder:{on:"\u25BC",off:"\u25B6",disabled:"\u25B6"},prefix:{pending:Mq.symbols.question,submitted:Mq.symbols.check,cancelled:Mq.symbols.cross},separator:{pending:Mq.symbols.pointerSmall,submitted:Mq.symbols.middot,cancelled:Mq.symbols.middot},radio:{off:SSr?"( )":"\u25EF",on:SSr?"(*)":"\u25C9",disabled:SSr?"(|)":"\u24BE"},numbers:["\u24EA","\u2460","\u2461","\u2462","\u2463","\u2464","\u2465","\u2466","\u2467","\u2468","\u2469","\u246A","\u246B","\u246C","\u246D","\u246E","\u246F","\u2470","\u2471","\u2472","\u2473","\u3251","\u3252","\u3253","\u3254","\u3255","\u3256","\u3257","\u3258","\u3259","\u325A","\u325B","\u325C","\u325D","\u325E","\u325F","\u32B1","\u32B2","\u32B3","\u32B4","\u32B5","\u32B6","\u32B7","\u32B8","\u32B9","\u32BA","\u32BB","\u32BC","\u32BD","\u32BE","\u32BF"]};wSr.merge=e=>{let t=tbc.merge({},Mq.symbols,wSr,e.symbols);return delete t.merge,t};SPi.exports=wSr});var NPi=z((DYl,TPi)=>{"use strict";var rbc=vPi(),nbc=wPi(),ibc=$k();TPi.exports=e=>{e.options=ibc.merge({},e.options.theme,e.options),e.symbols=nbc.merge(e.options),e.styles=rbc.merge(e.options)}});var GPi=z((xPi,kPi)=>{"use strict";var RPi=process.env.TERM_PROGRAM==="Apple_Terminal",sbc=AO(),TSr=$k(),U5=kPi.exports=xPi,dB="\x1B[",DPi="\x07",NSr=!1,lae=U5.code={bell:DPi,beep:DPi,beginning:`${dB}G`,down:`${dB}J`,esc:dB,getPosition:`${dB}6n`,hide:`${dB}?25l`,line:`${dB}2K`,lineEnd:`${dB}K`,lineStart:`${dB}1K`,restorePosition:dB+(RPi?"8":"u"),savePosition:dB+(RPi?"7":"s"),screen:`${dB}2J`,show:`${dB}?25h`,up:`${dB}1J`},aCe=U5.cursor={get hidden(){return NSr},hide(){return NSr=!0,lae.hide},show(){return NSr=!1,lae.show},forward:(e=1)=>`${dB}${e}C`,backward:(e=1)=>`${dB}${e}D`,nextLine:(e=1)=>`${dB}E`.repeat(e),prevLine:(e=1)=>`${dB}F`.repeat(e),up:(e=1)=>e?`${dB}${e}A`:"",down:(e=1)=>e?`${dB}${e}B`:"",right:(e=1)=>e?`${dB}${e}C`:"",left:(e=1)=>e?`${dB}${e}D`:"",to(e,t){return t?`${dB}${t+1};${e+1}H`:`${dB}${e+1}G`},move(e=0,t=0){let r="";return r+=e<0?aCe.left(-e):e>0?aCe.right(e):"",r+=t<0?aCe.up(-t):t>0?aCe.down(t):"",r},strLen(e){for(var t=0,r=e.length,s=-1,a=0;a=0&&s<=128?t+=1:t+=2;return t},restore(e={}){let{after:t,cursor:r,initial:s,input:a,prompt:o,size:g,value:p}=e;if(s=TSr.isPrimitive(s)?String(s):"",a=TSr.isPrimitive(a)?String(a):"",p=TSr.isPrimitive(p)?String(p):"",g){let f=U5.cursor.up(g)+U5.cursor.to(this.strLen(o)),m=a.length-r;return m>0&&(f+=U5.cursor.left(m)),f}if(p||t){let f=!a&&s?-this.strLen(s):-this.strLen(a)+r;return t&&(f-=this.strLen(t)),a===""&&s&&!o.includes(s)&&(f+=this.strLen(s)),U5.cursor.move(f)}}},RSr=U5.erase={screen:lae.screen,up:lae.up,down:lae.down,line:lae.line,lineEnd:lae.lineEnd,lineStart:lae.lineStart,lines(e){let t="";for(let r=0;r{if(!t)return RSr.line+aCe.to(0);let r=o=>[...sbc(o)].length,s=e.split(/\r?\n/),a=0;for(let o of s)a+=1+Math.floor(Math.max(r(o)-1,0)/t);return(RSr.line+aCe.prevLine()).repeat(a-1)+RSr.line+aCe.to(0)}});var TNe=z((xYl,ZPi)=>{"use strict";var obc=Dt("events"),FPi=AO(),DSr=bSr(),abc=yPi(),cbc=EPi(),lbc=NPi(),D9=$k(),cCe=GPi(),xSr=class e extends obc{constructor(t={}){super(),this.name=t.name,this.type=t.type,this.options=t,lbc(this),abc(this),this.state=new cbc(this),this.initial=[t.initial,t.default].find(r=>r!=null),this.stdout=t.stdout||process.stdout,this.stdin=t.stdin||process.stdin,this.scale=t.scale||1,this.term=this.options.term||process.env.TERM_PROGRAM,this.margin=gbc(this.options.margin),this.setMaxListeners(0),ubc(this)}async keypress(t,r={}){this.keypressed=!0;let s=DSr.action(t,DSr(t,r),this.options.actions);this.state.keypress=s,this.emit("keypress",t,s),this.emit("state",this.state.clone());let a=this.options[s.action]||this[s.action]||this.dispatch;if(typeof a=="function")return await a.call(this,t,s);this.alert()}alert(){delete this.state.alert,this.options.show===!1?this.emit("alert"):this.stdout.write(cCe.code.beep)}cursorHide(){this.stdout.write(cCe.cursor.hide());let t=D9.onExit(()=>this.cursorShow());this.on("close",()=>{this.cursorShow(),t()})}cursorShow(){this.stdout.write(cCe.cursor.show())}write(t){t&&(this.stdout&&this.state.show!==!1&&this.stdout.write(t),this.state.buffer+=t)}clear(t=0){let r=this.state.buffer;this.state.buffer="",!(!r&&!t||this.options.show===!1)&&this.stdout.write(cCe.cursor.down(t)+cCe.clear(r,this.width))}restore(){if(this.state.closed||this.options.show===!1)return;let{prompt:t,after:r,rest:s}=this.sections(),{cursor:a,initial:o="",input:g="",value:p=""}=this,f=this.state.size=s.length,m={after:r,cursor:a,initial:o,input:g,prompt:t,size:f,value:p},y=cCe.cursor.restore(m);y&&this.stdout.write(y)}sections(){let{buffer:t,input:r,prompt:s}=this.state;s=FPi(s);let a=FPi(t),o=a.indexOf(s),g=a.slice(0,o),f=a.slice(o).split(` -`),m=f[0],y=f[f.length-1],v=(s+(r?" "+r:"")).length,G=v{"use strict";var obc=Object.prototype.toString,UQ=aYe(),mPi=!1,G4e=new Set,hPi={yellow:"blue",cyan:"red",green:"magenta",black:"white",blue:"yellow",red:"cyan",magenta:"green",white:"black"};Qm.longest=(e,t)=>e.reduce((r,s)=>Math.max(r,t?s[t].length:s.length),0);Qm.hasColor=e=>!!e&&UQ.hasColor(e);var ZSt=Qm.isObject=e=>e!==null&&typeof e=="object"&&!Array.isArray(e);Qm.nativeType=e=>obc.call(e).slice(8,-1).toLowerCase().replace(/\s/g,"");Qm.isAsyncFn=e=>Qm.nativeType(e)==="asyncfunction";Qm.isPrimitive=e=>e!=null&&typeof e!="object"&&typeof e!="function";Qm.resolve=(e,t,...r)=>typeof t=="function"?t.call(e,...r):t;Qm.scrollDown=(e=[])=>[...e.slice(1),e[0]];Qm.scrollUp=(e=[])=>[e.pop(),...e];Qm.reorder=(e=[])=>{let t=e.slice();return t.sort((r,s)=>r.index>s.index?1:r.index{let s=e.length,a=r===s?0:r<0?s-1:r,o=e[t];e[t]=e[a],e[a]=o};Qm.width=(e,t=80)=>{let r=e&&e.columns?e.columns:t;return e&&typeof e.getWindowSize=="function"&&(r=e.getWindowSize()[0]),process.platform==="win32"?r-1:r};Qm.height=(e,t=20)=>{let r=e&&e.rows?e.rows:t;return e&&typeof e.getWindowSize=="function"&&(r=e.getWindowSize()[1]),r};Qm.wordWrap=(e,t={})=>{if(!e)return e;typeof t=="number"&&(t={width:t});let{indent:r="",newline:s=` +`+r,width:a=80}=t,o=(s+r).match(/[^\S\n]/g)||[];a-=o.length;let g=`.{1,${a}}([\\s\\u200B]+|$)|[^\\s\\u200B]+?([\\s\\u200B]+|$)`,p=e.trim(),f=new RegExp(g,"g"),m=p.match(f)||[];return m=m.map(y=>y.replace(/\n$/,"")),t.padEnd&&(m=m.map(y=>y.padEnd(a," "))),t.padStart&&(m=m.map(y=>y.padStart(a," "))),r+m.join(s)};Qm.unmute=e=>{let t=e.stack.find(s=>UQ.keys.color.includes(s));return t?UQ[t]:e.stack.find(s=>s.slice(2)==="bg")?UQ[t.slice(2)]:s=>s};Qm.pascal=e=>e?e[0].toUpperCase()+e.slice(1):"";Qm.inverse=e=>{if(!e||!e.stack)return e;let t=e.stack.find(s=>UQ.keys.color.includes(s));if(t){let s=UQ["bg"+Qm.pascal(t)];return s?s.black:e}let r=e.stack.find(s=>s.slice(0,2)==="bg");return r?UQ[r.slice(2).toLowerCase()]||e:UQ.none};Qm.complement=e=>{if(!e||!e.stack)return e;let t=e.stack.find(s=>UQ.keys.color.includes(s)),r=e.stack.find(s=>s.slice(0,2)==="bg");if(t&&!r)return UQ[hPi[t]||t];if(r){let s=r.slice(2).toLowerCase(),a=hPi[s];return a&&UQ["bg"+Qm.pascal(a)]||e}return UQ.none};Qm.meridiem=e=>{let t=e.getHours(),r=e.getMinutes(),s=t>=12?"pm":"am";t=t%12;let a=t===0?12:t,o=r<10?"0"+r:r;return a+":"+o+" "+s};Qm.set=(e={},t="",r)=>t.split(".").reduce((s,a,o,g)=>{let p=g.length-1>o?s[a]||{}:r;return!Qm.isObject(p)&&o{let s=e[t]==null?t.split(".").reduce((a,o)=>a&&a[o],e):e[t];return s??r};Qm.mixin=(e,t)=>{if(!ZSt(e))return t;if(!ZSt(t))return e;for(let r of Object.keys(t)){let s=Object.getOwnPropertyDescriptor(t,r);if(hasOwnProperty.call(s,"value"))if(hasOwnProperty.call(e,r)&&ZSt(s.value)){let a=Object.getOwnPropertyDescriptor(e,r);ZSt(a.value)&&a.value!==s.value?e[r]=Qm.merge({},e[r],t[r]):Reflect.defineProperty(e,r,s)}else Reflect.defineProperty(e,r,s);else Reflect.defineProperty(e,r,s)}return e};Qm.merge=(...e)=>{let t={};for(let r of e)Qm.mixin(t,r);return t};Qm.mixinEmitter=(e,t)=>{let r=t.constructor.prototype;for(let s of Object.keys(r)){let a=r[s];typeof a=="function"?Qm.define(e,s,a.bind(t)):Qm.define(e,s,a)}};var LSt=(e,t)=>{mPi||(mPi=!0,G4e.forEach(r=>r()),e===!0&&process.exit(128+t))},_Pi=LSt.bind(null,!0,15),yPi=LSt.bind(null,!0,2);Qm.onExit=e=>(G4e.size===0&&(process.once("SIGTERM",_Pi),process.once("SIGINT",yPi),process.once("exit",LSt)),G4e.add(e),()=>{G4e.delete(e),G4e.size===0&&(process.off("SIGTERM",_Pi),process.off("SIGINT",yPi),process.off("exit",LSt))});Qm.define=(e,t,r)=>{Reflect.defineProperty(e,t,{value:r})};Qm.defineExport=(e,t,r)=>{let s;Reflect.defineProperty(e,t,{enumerable:!0,configurable:!0,set(a){s=a},get(){return s?s():r()}})}});var bPi=z(NNe=>{"use strict";NNe.ctrl={a:"first",b:"backward",c:"cancel",d:"deleteForward",e:"last",f:"forward",g:"reset",i:"tab",k:"cutForward",l:"reset",n:"newItem",m:"cancel",j:"submit",p:"search",r:"remove",s:"save",u:"undo",w:"cutLeft",x:"toggleCursor",v:"paste"};NNe.shift={up:"shiftUp",down:"shiftDown",left:"shiftLeft",right:"shiftRight",tab:"prev"};NNe.fn={up:"pageUp",down:"pageDown",left:"pageLeft",right:"pageRight",delete:"deleteForward"};NNe.option={b:"backward",f:"forward",d:"cutRight",left:"cutLeft",up:"altUp",down:"altDown"};NNe.keys={pageup:"pageUp",pagedown:"pageDown",home:"home",end:"end",cancel:"cancel",delete:"deleteForward",backspace:"delete",down:"down",enter:"submit",escape:"cancel",left:"left",space:"space",number:"number",return:"submit",right:"right",tab:"next",up:"up"}});var BPi=z((JMl,EPi)=>{"use strict";EPi.exports=class{_queue=[];_executing=!1;_jobRunner=null;constructor(t){this._jobRunner=t}enqueue=(...t)=>{this._queue.push(t),this._dequeue()};destroy(){this._queue.length=0,this._jobRunner=null}_dequeue(){this._executing||!this._queue.length||(this._executing=!0,this._jobRunner(...this._queue.shift()),setTimeout(()=>{this._executing=!1,this._dequeue()}))}}});var TSr=z((UMl,SPi)=>{"use strict";var vPi=xt("readline"),abc=bPi(),cbc=BPi(),lbc=/^(?:\x1b)([a-zA-Z0-9])$/,ubc=/^(?:\x1b+)(O|N|\[|\[\[)(?:(\d+)(?:;(\d+))?([~^$])|(?:1;)?(\d+)?([a-zA-Z]))/,gbc={OP:"f1",OQ:"f2",OR:"f3",OS:"f4","[11~":"f1","[12~":"f2","[13~":"f3","[14~":"f4","[[A":"f1","[[B":"f2","[[C":"f3","[[D":"f4","[[E":"f5","[15~":"f5","[17~":"f6","[18~":"f7","[19~":"f8","[20~":"f9","[21~":"f10","[23~":"f11","[24~":"f12","[A":"up","[B":"down","[C":"right","[D":"left","[E":"clear","[F":"end","[H":"home",OA:"up",OB:"down",OC:"right",OD:"left",OE:"clear",OF:"end",OH:"home","[1~":"home","[2~":"insert","[3~":"delete","[4~":"end","[5~":"pageup","[6~":"pagedown","[[5~":"pageup","[[6~":"pagedown","[7~":"home","[8~":"end","[a":"up","[b":"down","[c":"right","[d":"left","[e":"clear","[2$":"insert","[3$":"delete","[5$":"pageup","[6$":"pagedown","[7$":"home","[8$":"end",Oa:"up",Ob:"down",Oc:"right",Od:"left",Oe:"clear","[2^":"insert","[3^":"delete","[5^":"pageup","[6^":"pagedown","[7^":"home","[8^":"end","[Z":"tab"};function Abc(e){return["[a","[b","[c","[d","[e","[2$","[3$","[5$","[6$","[7$","[8$","[Z"].includes(e)}function dbc(e){return["Oa","Ob","Oc","Od","Oe","[2^","[3^","[5^","[6^","[7^","[8^"].includes(e)}var VSt=(e="",t={})=>{let r,s={name:t.name,ctrl:!1,meta:!1,shift:!1,option:!1,sequence:e,raw:e,...t};if(Buffer.isBuffer(e)?e[0]>127&&e[1]===void 0?(e[0]-=128,e="\x1B"+String(e)):e=String(e):e!==void 0&&typeof e!="string"?e=String(e):e||(e=s.sequence||""),s.sequence=s.sequence||e||s.name,e==="\r")s.raw=void 0,s.name="return";else if(e===` +`)s.name="enter";else if(e===" ")s.name="tab";else if(e==="\b"||e==="\x7F"||e==="\x1B\x7F"||e==="\x1B\b")s.name="backspace",s.meta=e.charAt(0)==="\x1B";else if(e==="\x1B"||e==="\x1B\x1B")s.name="escape",s.meta=e.length===2;else if(e===" "||e==="\x1B ")s.name="space",s.meta=e.length===2;else if(e<="")s.name=String.fromCharCode(e.charCodeAt(0)+97-1),s.ctrl=!0;else if(e.length===1&&e>="0"&&e<="9")s.name="number";else if(e.length===1&&e>="a"&&e<="z")s.name=e;else if(e.length===1&&e>="A"&&e<="Z")s.name=e.toLowerCase(),s.shift=!0;else if(r=lbc.exec(e))s.meta=!0,s.shift=/^[A-Z]$/.test(r[1]);else if(r=ubc.exec(e)){let a=[...e];a[0]==="\x1B"&&a[1]==="\x1B"&&(s.option=!0);let o=[r[1],r[2],r[4],r[6]].filter(Boolean).join(""),g=(r[3]||r[5]||1)-1;s.ctrl=!!(g&4),s.meta=!!(g&10),s.shift=!!(g&1),s.code=o,s.name=gbc[o],s.shift=Abc(o)||s.shift,s.ctrl=dbc(o)||s.ctrl}return s};VSt.listen=(e={},t)=>{let{stdin:r}=e;if(!r||r!==process.stdin&&!r.isTTY)throw new Error("Invalid stream passed");let s=vPi.createInterface({terminal:!0,input:r});vPi.emitKeypressEvents(r,s);let a=new cbc((p,f)=>t(p,VSt(p,f),s)),o=r.isRaw;return r.isTTY&&r.setRawMode(!0),r.on("keypress",a.enqueue),s.resume(),()=>{r.isTTY&&r.setRawMode(o),r.removeListener("keypress",a.enqueue),a.destroy(),s.pause(),s.close()}};VSt.action=(e,t,r)=>{let s={...abc,...r};return t.ctrl?(t.action=s.ctrl[t.name],t):t.option&&s.option?(t.action=s.option[t.name],t):t.shift?(t.action=s.shift[t.name],t):(t.action=s.keys[t.name],t)};SPi.exports=VSt});var TPi=z((KMl,wPi)=>{"use strict";wPi.exports=e=>{e.timers=e.timers||{};let t=e.options.timers;if(t)for(let r of Object.keys(t)){let s=t[r];typeof s=="number"&&(s={interval:s}),pbc(e,r,s)}};function pbc(e,t,r={}){let s=e.timers[t]={name:t,start:Date.now(),ms:0,tick:0},a=r.interval||120;s.frames=r.frames||[],s.loading=!0;let o=setInterval(()=>{s.ms=Date.now()-s.start,s.tick++,e.render()},a);return s.stop=()=>{s.loading=!1,clearInterval(o)},Reflect.defineProperty(s,"interval",{value:o}),e.once("close",()=>s.stop()),s.stop}});var RPi=z((jMl,NPi)=>{"use strict";var{define:fbc,width:Ibc}=iG(),NSr=class{constructor(t){let r=t.options;fbc(this,"_prompt",t),this.type=t.type,this.name=t.name,this.message="",this.header="",this.footer="",this.error="",this.hint="",this.input="",this.cursor=0,this.index=0,this.lines=0,this.tick=0,this.prompt="",this.buffer="",this.width=Ibc(r.stdout||process.stdout),Object.assign(this,r),this.name=this.name||this.message,this.message=this.message||this.name,this.symbols=t.symbols,this.styles=t.styles,this.required=new Set,this.cancelled=!1,this.submitted=!1}clone(){let t={...this};return t.status=this.status,t.buffer=Buffer.from(t.buffer),delete t.clone,t}set color(t){this._color=t}get color(){let t=this.prompt.styles;if(this.cancelled)return t.cancelled;if(this.submitted)return t.submitted;let r=this._color||t[this.status];return typeof r=="function"?r:t.pending}set loading(t){this._loading=t}get loading(){return typeof this._loading=="boolean"?this._loading:this.loadingChoices?"choices":!1}get status(){return this.cancelled?"cancelled":this.submitted?"submitted":"pending"}};NPi.exports=NSr});var xPi=z((zMl,DPi)=>{"use strict";var RSr=iG(),dx=aYe(),DSr={default:dx.noop,noop:dx.noop,set inverse(e){this._inverse=e},get inverse(){return this._inverse||RSr.inverse(this.primary)},set complement(e){this._complement=e},get complement(){return this._complement||RSr.complement(this.primary)},primary:dx.cyan,success:dx.green,danger:dx.magenta,strong:dx.bold,warning:dx.yellow,muted:dx.dim,disabled:dx.gray,dark:dx.dim.gray,underline:dx.underline,set info(e){this._info=e},get info(){return this._info||this.primary},set em(e){this._em=e},get em(){return this._em||this.primary.underline},set heading(e){this._heading=e},get heading(){return this._heading||this.muted.underline},set pending(e){this._pending=e},get pending(){return this._pending||this.primary},set submitted(e){this._submitted=e},get submitted(){return this._submitted||this.success},set cancelled(e){this._cancelled=e},get cancelled(){return this._cancelled||this.danger},set typing(e){this._typing=e},get typing(){return this._typing||this.dim},set placeholder(e){this._placeholder=e},get placeholder(){return this._placeholder||this.primary.dim},set highlight(e){this._highlight=e},get highlight(){return this._highlight||this.inverse}};DSr.merge=(e={})=>{e.styles&&typeof e.styles.enabled=="boolean"&&(dx.enabled=e.styles.enabled),e.styles&&typeof e.styles.visible=="boolean"&&(dx.visible=e.styles.visible);let t=RSr.merge({},DSr,e.styles);delete t.merge;for(let r of Object.keys(dx))hasOwnProperty.call(t,r)||Reflect.defineProperty(t,r,{get:()=>dx[r]});for(let r of Object.keys(dx.styles))hasOwnProperty.call(t,r)||Reflect.defineProperty(t,r,{get:()=>dx[r]});return t};DPi.exports=DSr});var GPi=z((qMl,kPi)=>{"use strict";var xSr=process.platform==="win32",Hq=aYe(),Cbc=iG(),kSr={...Hq.symbols,upDownDoubleArrow:"\u21D5",upDownDoubleArrow2:"\u2B0D",upDownArrow:"\u2195",asterisk:"*",asterism:"\u2042",bulletWhite:"\u25E6",electricArrow:"\u2301",ellipsisLarge:"\u22EF",ellipsisSmall:"\u2026",fullBlock:"\u2588",identicalTo:"\u2261",indicator:Hq.symbols.check,leftAngle:"\u2039",mark:"\u203B",minus:"\u2212",multiplication:"\xD7",obelus:"\xF7",percent:"%",pilcrow:"\xB6",pilcrow2:"\u2761",pencilUpRight:"\u2710",pencilDownRight:"\u270E",pencilRight:"\u270F",plus:"+",plusMinus:"\xB1",pointRight:"\u261E",rightAngle:"\u203A",section:"\xA7",hexagon:{off:"\u2B21",on:"\u2B22",disabled:"\u2B22"},ballot:{on:"\u2611",off:"\u2610",disabled:"\u2612"},stars:{on:"\u2605",off:"\u2606",disabled:"\u2606"},folder:{on:"\u25BC",off:"\u25B6",disabled:"\u25B6"},prefix:{pending:Hq.symbols.question,submitted:Hq.symbols.check,cancelled:Hq.symbols.cross},separator:{pending:Hq.symbols.pointerSmall,submitted:Hq.symbols.middot,cancelled:Hq.symbols.middot},radio:{off:xSr?"( )":"\u25EF",on:xSr?"(*)":"\u25C9",disabled:xSr?"(|)":"\u24BE"},numbers:["\u24EA","\u2460","\u2461","\u2462","\u2463","\u2464","\u2465","\u2466","\u2467","\u2468","\u2469","\u246A","\u246B","\u246C","\u246D","\u246E","\u246F","\u2470","\u2471","\u2472","\u2473","\u3251","\u3252","\u3253","\u3254","\u3255","\u3256","\u3257","\u3258","\u3259","\u325A","\u325B","\u325C","\u325D","\u325E","\u325F","\u32B1","\u32B2","\u32B3","\u32B4","\u32B5","\u32B6","\u32B7","\u32B8","\u32B9","\u32BA","\u32BB","\u32BC","\u32BD","\u32BE","\u32BF"]};kSr.merge=e=>{let t=Cbc.merge({},Hq.symbols,kSr,e.symbols);return delete t.merge,t};kPi.exports=kSr});var ZPi=z(($Ml,FPi)=>{"use strict";var mbc=xPi(),hbc=GPi(),_bc=iG();FPi.exports=e=>{e.options=_bc.merge({},e.options.theme,e.options),e.symbols=hbc.merge(e.options),e.styles=mbc.merge(e.options)}});var OPi=z((WPi,PPi)=>{"use strict";var LPi=process.env.TERM_PROGRAM==="Apple_Terminal",ybc=fO(),GSr=iG(),zY=PPi.exports=WPi,fB="\x1B[",VPi="\x07",FSr=!1,mae=zY.code={bell:VPi,beep:VPi,beginning:`${fB}G`,down:`${fB}J`,esc:fB,getPosition:`${fB}6n`,hide:`${fB}?25l`,line:`${fB}2K`,lineEnd:`${fB}K`,lineStart:`${fB}1K`,restorePosition:fB+(LPi?"8":"u"),savePosition:fB+(LPi?"7":"s"),screen:`${fB}2J`,show:`${fB}?25h`,up:`${fB}1J`},lCe=zY.cursor={get hidden(){return FSr},hide(){return FSr=!0,mae.hide},show(){return FSr=!1,mae.show},forward:(e=1)=>`${fB}${e}C`,backward:(e=1)=>`${fB}${e}D`,nextLine:(e=1)=>`${fB}E`.repeat(e),prevLine:(e=1)=>`${fB}F`.repeat(e),up:(e=1)=>e?`${fB}${e}A`:"",down:(e=1)=>e?`${fB}${e}B`:"",right:(e=1)=>e?`${fB}${e}C`:"",left:(e=1)=>e?`${fB}${e}D`:"",to(e,t){return t?`${fB}${t+1};${e+1}H`:`${fB}${e+1}G`},move(e=0,t=0){let r="";return r+=e<0?lCe.left(-e):e>0?lCe.right(e):"",r+=t<0?lCe.up(-t):t>0?lCe.down(t):"",r},strLen(e){for(var t=0,r=e.length,s=-1,a=0;a=0&&s<=128?t+=1:t+=2;return t},restore(e={}){let{after:t,cursor:r,initial:s,input:a,prompt:o,size:g,value:p}=e;if(s=GSr.isPrimitive(s)?String(s):"",a=GSr.isPrimitive(a)?String(a):"",p=GSr.isPrimitive(p)?String(p):"",g){let f=zY.cursor.up(g)+zY.cursor.to(this.strLen(o)),m=a.length-r;return m>0&&(f+=zY.cursor.left(m)),f}if(p||t){let f=!a&&s?-this.strLen(s):-this.strLen(a)+r;return t&&(f-=this.strLen(t)),a===""&&s&&!o.includes(s)&&(f+=this.strLen(s)),zY.cursor.move(f)}}},ZSr=zY.erase={screen:mae.screen,up:mae.up,down:mae.down,line:mae.line,lineEnd:mae.lineEnd,lineStart:mae.lineStart,lines(e){let t="";for(let r=0;r{if(!t)return ZSr.line+lCe.to(0);let r=o=>[...ybc(o)].length,s=e.split(/\r?\n/),a=0;for(let o of s)a+=1+Math.floor(Math.max(r(o)-1,0)/t);return(ZSr.line+lCe.prevLine()).repeat(a-1)+ZSr.line+lCe.to(0)}});var RNe=z((eHl,MPi)=>{"use strict";var bbc=xt("events"),QPi=fO(),LSr=TSr(),Ebc=TPi(),Bbc=RPi(),vbc=ZPi(),x9=iG(),uCe=OPi(),VSr=class e extends bbc{constructor(t={}){super(),this.name=t.name,this.type=t.type,this.options=t,vbc(this),Ebc(this),this.state=new Bbc(this),this.initial=[t.initial,t.default].find(r=>r!=null),this.stdout=t.stdout||process.stdout,this.stdin=t.stdin||process.stdin,this.scale=t.scale||1,this.term=this.options.term||process.env.TERM_PROGRAM,this.margin=wbc(this.options.margin),this.setMaxListeners(0),Sbc(this)}async keypress(t,r={}){this.keypressed=!0;let s=LSr.action(t,LSr(t,r),this.options.actions);this.state.keypress=s,this.emit("keypress",t,s),this.emit("state",this.state.clone());let a=this.options[s.action]||this[s.action]||this.dispatch;if(typeof a=="function")return await a.call(this,t,s);this.alert()}alert(){delete this.state.alert,this.options.show===!1?this.emit("alert"):this.stdout.write(uCe.code.beep)}cursorHide(){this.stdout.write(uCe.cursor.hide());let t=x9.onExit(()=>this.cursorShow());this.on("close",()=>{this.cursorShow(),t()})}cursorShow(){this.stdout.write(uCe.cursor.show())}write(t){t&&(this.stdout&&this.state.show!==!1&&this.stdout.write(t),this.state.buffer+=t)}clear(t=0){let r=this.state.buffer;this.state.buffer="",!(!r&&!t||this.options.show===!1)&&this.stdout.write(uCe.cursor.down(t)+uCe.clear(r,this.width))}restore(){if(this.state.closed||this.options.show===!1)return;let{prompt:t,after:r,rest:s}=this.sections(),{cursor:a,initial:o="",input:g="",value:p=""}=this,f=this.state.size=s.length,m={after:r,cursor:a,initial:o,input:g,prompt:t,size:f,value:p},y=uCe.cursor.restore(m);y&&this.stdout.write(y)}sections(){let{buffer:t,input:r,prompt:s}=this.state;s=QPi(s);let a=QPi(t),o=a.indexOf(s),g=a.slice(0,o),f=a.slice(o).split(` +`),m=f[0],y=f[f.length-1],v=(s+(r?" "+r:"")).length,k=vt.call(this,this.value),this.result=()=>s.call(this,this.value),typeof r.initial=="function"&&(this.initial=await r.initial.call(this,this)),typeof r.onRun=="function"&&await r.onRun.call(this,this),typeof r.onSubmit=="function"){let a=r.onSubmit.bind(this),o=this.submit.bind(this);delete this.options.onSubmit,this.submit=async()=>(await a(this.name,this.value,this),o())}await this.start(),await this.render()}render(){throw new Error("expected prompt to have a custom render method")}run(){return new Promise(async(t,r)=>{if(this.once("submit",t),this.once("cancel",r),await this.skip())return this.render=()=>{},this.submit();await this.initialize(),this.emit("run")})}async element(t,r,s){let{options:a,state:o,symbols:g,timers:p}=this,f=p&&p[t];o.timer=f;let m=a[t]||o[t]||g[t],y=r&&r[t]!=null?r[t]:await m;if(y==="")return y;let B=await this.resolve(y,o,r,s);return!B&&r&&r[t]?this.resolve(m,o,r,s):B}async prefix(){let t=await this.element("prefix")||this.symbols,r=this.timers&&this.timers.prefix,s=this.state;return s.timer=r,D9.isObject(t)&&(t=t[s.status]||t.pending),D9.hasColor(t)?t:(this.styles[s.status]||this.styles.pending)(t)}async message(){let t=await this.element("message");return D9.hasColor(t)?t:this.styles.strong(t)}async separator(){let t=await this.element("separator")||this.symbols,r=this.timers&&this.timers.separator,s=this.state;s.timer=r;let a=t[s.status]||t.pending||s.separator,o=await this.resolve(a,s);return D9.isObject(o)&&(o=o[s.status]||o.pending),D9.hasColor(o)?o:this.styles.muted(o)}async pointer(t,r){let s=await this.element("pointer",t,r);if(typeof s=="string"&&D9.hasColor(s))return s;if(s){let a=this.styles,o=this.index===r,g=o?a.primary:m=>m,p=await this.resolve(s[o?"on":"off"]||s,this.state),f=D9.hasColor(p)?p:g(p);return o?f:" ".repeat(p.length)}}async indicator(t,r){let s=await this.element("indicator",t,r);if(typeof s=="string"&&D9.hasColor(s))return s;if(s){let a=this.styles,o=t.enabled===!0,g=o?a.success:a.dark,p=s[o?"on":"off"]||s;return D9.hasColor(p)?p:g(p)}return""}body(){return null}footer(){if(this.state.status==="pending")return this.element("footer")}header(){if(this.state.status==="pending")return this.element("header")}async hint(){if(this.state.status==="pending"&&!this.isValue(this.state.input)){let t=await this.element("hint");return D9.hasColor(t)?t:this.styles.muted(t)}}error(t){return this.state.submitted?"":t||this.state.error}format(t){return t}result(t){return t}validate(t){return this.options.required===!0?this.isValue(t):!0}isValue(t){return t!=null&&t!==""}resolve(t,...r){return D9.resolve(this,t,...r)}get base(){return e.prototype}get style(){return this.styles[this.state.status]}get height(){return this.options.rows||D9.height(this.stdout,25)}get width(){return this.options.columns||D9.width(this.stdout,80)}get size(){return{width:this.width,height:this.height}}set cursor(t){this.state.cursor=t}get cursor(){return this.state.cursor}set input(t){this.state.input=t}get input(){return this.state.input}set value(t){this.state.value=t}get value(){let{input:t,value:r}=this.state,s=[r,t].find(this.isValue.bind(this));return this.isValue(s)?s:this.initial}static get prompt(){return t=>new this(t).run()}};function ubc(e){let t=a=>e[a]===void 0||typeof e[a]=="function",r=["actions","choices","initial","margin","roles","styles","symbols","theme","timers","value"],s=["body","footer","error","header","hint","indicator","message","prefix","separator","skip"];for(let a of Object.keys(e.options)){if(r.includes(a)||/^on[A-Z]/.test(a))continue;let o=e.options[a];typeof o=="function"&&t(a)?s.includes(a)||(e[a]=o.bind(e)):typeof e[a]!="function"&&(e[a]=o)}}function gbc(e){typeof e=="number"&&(e=[e,e,e,e]);let t=[].concat(e||[]),r=a=>a%2===0?` -`:" ",s=[];for(let a=0;a<4;a++){let o=r(a);t[a]?s.push(o.repeat(t[a])):s.push("")}return s}ZPi.exports=xSr});var WPi=z((kYl,VPi)=>{"use strict";var Abc=$k(),LPi={default(e,t){return t},checkbox(e,t){throw new Error("checkbox role is not implemented yet")},editable(e,t){throw new Error("editable role is not implemented yet")},expandable(e,t){throw new Error("expandable role is not implemented yet")},heading(e,t){return t.disabled="",t.indicator=[t.indicator," "].find(r=>r!=null),t.message=t.message||"",t},input(e,t){throw new Error("input role is not implemented yet")},option(e,t){return LPi.default(e,t)},radio(e,t){throw new Error("radio role is not implemented yet")},separator(e,t){return t.disabled="",t.indicator=[t.indicator," "].find(r=>r!=null),t.message=t.message||e.symbols.line.repeat(5),t},spacer(e,t){return t}};VPi.exports=(e,t={})=>{let r=Abc.merge({},LPi,t.roles);return r[e]||r.default}});var k4e=z((GYl,MPi)=>{"use strict";var dbc=AO(),pbc=TNe(),fbc=WPi(),ZSt=$k(),{reorder:kSr,scrollUp:Ibc,scrollDown:Cbc,isObject:PPi,swap:mbc}=ZSt,GSr=class extends pbc{constructor(t){super(t),this.cursorHide(),this.maxSelected=t.maxSelected||1/0,this.multiple=t.multiple||!1,this.initial=t.initial||0,this.delay=t.delay||0,this.longest=0,this.num=""}async initialize(){typeof this.options.initial=="function"&&(this.initial=await this.options.initial.call(this)),await this.reset(!0),await super.initialize()}async reset(){let{choices:t,initial:r,autofocus:s,suggest:a}=this.options;if(this.state._choices=[],this.state.choices=[],this.choices=await Promise.all(await this.toChoices(t)),this.choices.forEach(o=>o.enabled=!1),typeof a!="function"&&this.selectable.length===0)throw new Error("At least one choice must be selectable");PPi(r)&&(r=Object.keys(r)),Array.isArray(r)?(s!=null&&(this.index=this.findIndex(s)),r.forEach(o=>this.enable(this.find(o))),await this.render()):(s!=null&&(r=s),typeof r=="string"&&(r=this.findIndex(r)),typeof r=="number"&&r>-1&&(this.index=Math.max(0,Math.min(r,this.choices.length)),this.enable(this.find(this.index)))),this.isDisabled(this.focused)&&await this.down()}async toChoices(t,r){this.state.loadingChoices=!0;let s=[],a=0,o=async(g,p)=>{typeof g=="function"&&(g=await g.call(this)),g instanceof Promise&&(g=await g);for(let f=0;f(this.state.loadingChoices=!1,g))}async toChoice(t,r,s){if(typeof t=="function"&&(t=await t.call(this,this)),t instanceof Promise&&(t=await t),typeof t=="string"&&(t={name:t}),t.normalized)return t;t.normalized=!0;let a=t.value;if(t=fbc(t.role,this.options)(this,t),typeof t.disabled=="string"&&!t.hint&&(t.hint=t.disabled,t.disabled=!0),t.disabled===!0&&t.hint==null&&(t.hint="(disabled)"),t.index!=null)return t;t.name=t.name||t.key||t.title||t.value||t.message,t.message=t.message||t.name||"",t.value=[t.value,t.name].find(this.isValue.bind(this)),t.input="",t.index=r,t.cursor=0,ZSt.define(t,"parent",s),t.level=s?s.level+1:1,t.indent==null&&(t.indent=s?s.indent+" ":t.indent||""),t.path=s?s.path+"."+t.name:t.name,t.enabled=!!(this.multiple&&!this.isDisabled(t)&&(t.enabled||this.isSelected(t))),this.isDisabled(t)||(this.longest=Math.max(this.longest,dbc(t.message).length));let g={...t};return t.reset=(p=g.input,f=g.value)=>{for(let m of Object.keys(g))t[m]=g[m];t.input=p,t.value=f},a==null&&typeof t.initial=="function"&&(t.input=await t.initial.call(this,this.state,t,r)),t}async onChoice(t,r){this.emit("choice",t,r,this),typeof t.onChoice=="function"&&await t.onChoice.call(this,this.state,t,r)}async addChoice(t,r,s){let a=await this.toChoice(t,r,s);return this.choices.push(a),this.index=this.choices.length-1,this.limit=this.choices.length,a}async newItem(t,r,s){let a={name:"New choice name?",editable:!0,newChoice:!0,...t},o=await this.addChoice(a,r,s);return o.updateChoice=()=>{delete o.newChoice,o.name=o.message=o.input,o.input="",o.cursor=0},this.render()}indent(t){return t.indent==null?t.level>1?" ".repeat(t.level-1):"":t.indent}dispatch(t,r){if(this.multiple&&this[r.name])return this[r.name]();this.alert()}focus(t,r){return typeof r!="boolean"&&(r=t.enabled),r&&!t.enabled&&this.selected.length>=this.maxSelected?this.alert():(this.index=t.index,t.enabled=r&&!this.isDisabled(t),t)}space(){if(!this.multiple)return this.alert();if(this.focused)return this.toggle(this.focused),this.render()}a(){if(this.maxSelectedr.enabled);return this.choices.forEach(r=>r.enabled=!t),this.render()}i(){return this.choices.length-this.selected.length>this.maxSelected?this.alert():(this.choices.forEach(t=>t.enabled=!t.enabled),this.render())}g(){if(!this.choices.some(r=>!!r.parent))return this.a();let t=this.focused;return this.toggle(t.parent&&!t.choices?t.parent:t),this.render()}toggle(t,r){if(!t.enabled&&this.selected.length>=this.maxSelected)return this.alert();typeof r!="boolean"&&(r=!t.enabled),t.enabled=r,t.choices&&t.choices.forEach(a=>this.toggle(a,r));let s=t.parent;for(;s;){let a=s.choices.filter(o=>this.isDisabled(o));s.enabled=a.every(o=>o.enabled===!0),s=s.parent}return OPi(this,this.choices),this.emit("toggle",t,this),t}enable(t){return this.selected.length>=this.maxSelected?this.alert():(t.enabled=!this.isDisabled(t),t.choices&&t.choices.forEach(this.enable.bind(this)),t)}disable(t){return t.enabled=!1,t.choices&&t.choices.forEach(this.disable.bind(this)),t}number(t){this.num+=t;let r=s=>{let a=Number(s);if(a>this.choices.length-1)return this.alert();let o=this.focused,g=this.choices.find(p=>a===p.index);if(!g.enabled&&this.selected.length>=this.maxSelected)return this.alert();if(this.visible.indexOf(g)===-1){let p=kSr(this.choices),f=p.indexOf(g);if(o.index>f){let m=p.slice(f,f+this.limit),y=p.filter(B=>!m.includes(B));this.choices=m.concat(y)}else{let m=f-this.limit+1;this.choices=p.slice(m).concat(p.slice(0,m))}}return this.index=this.choices.indexOf(g),this.toggle(this.focused),this.render()};return clearTimeout(this.numberTimeout),new Promise(s=>{let a=this.choices.length,o=this.num,g=(p=!1,f)=>{clearTimeout(this.numberTimeout),p&&(f=r(o)),this.num="",s(f)};if(o==="0"||o.length===1&&+(o+"0")>a)return g(!0);if(Number(o)>a)return g(!1,this.alert());this.numberTimeout=setTimeout(()=>g(!0),this.delay)})}home(){return this.choices=kSr(this.choices),this.index=0,this.render()}end(){let t=this.choices.length-this.limit,r=kSr(this.choices);return this.choices=r.slice(t).concat(r.slice(0,t)),this.index=this.limit-1,this.render()}first(){return this.index=0,this.render()}last(){return this.index=this.visible.length-1,this.render()}prev(){return this.visible.length<=1?this.alert():this.up()}next(){return this.visible.length<=1?this.alert():this.down()}right(){return this.cursor>=this.input.length?this.alert():(this.cursor++,this.render())}left(){return this.cursor<=0?this.alert():(this.cursor--,this.render())}up(){let t=this.choices.length,r=this.visible.length,s=this.index;return this.options.scroll===!1&&s===0?this.alert():t>r&&s===0?this.scrollUp():(this.index=(s-1%t+t)%t,this.isDisabled()&&!this.allChoicesAreDisabled()?this.up():this.render())}down(){let t=this.choices.length,r=this.visible.length,s=this.index;return this.options.scroll===!1&&s===r-1?this.alert():t>r&&s===r-1?this.scrollDown():(this.index=(s+1)%t,this.isDisabled()&&!this.allChoicesAreDisabled()?this.down():this.render())}scrollUp(t=0){return this.choices=Ibc(this.choices),this.index=t,this.isDisabled()?this.up():this.render()}scrollDown(t=this.visible.length-1){return this.choices=Cbc(this.choices),this.index=t,this.isDisabled()?this.down():this.render()}async shiftUp(){if(this.options.sort===!0){this.sorting=!0,this.swap(this.index-1),await this.up(),this.sorting=!1;return}return this.scrollUp(this.index)}async shiftDown(){if(this.options.sort===!0){this.sorting=!0,this.swap(this.index+1),await this.down(),this.sorting=!1;return}return this.scrollDown(this.index)}pageUp(){return this.visible.length<=1?this.alert():(this.limit=Math.max(this.limit-1,0),this.index=Math.min(this.limit-1,this.index),this._limit=this.limit,this.isDisabled()?this.up():this.render())}pageDown(){return this.visible.length>=this.choices.length?this.alert():(this.index=Math.max(0,this.index),this.limit=Math.min(this.limit+1,this.choices.length),this._limit=this.limit,this.isDisabled()?this.down():this.render())}swap(t){mbc(this.choices,this.index,t)}allChoicesAreDisabled(t=this.choices){return t.every(r=>this.isDisabled(r))}isDisabled(t=this.focused){return t&&["disabled","collapsed","hidden","completing","readonly"].some(s=>t[s]===!0)?!0:t&&t.role==="heading"}isEnabled(t=this.focused){if(Array.isArray(t))return t.every(r=>this.isEnabled(r));if(t.choices){let r=t.choices.filter(s=>!this.isDisabled(s));return t.enabled&&r.every(s=>this.isEnabled(s))}return t.enabled&&!this.isDisabled(t)}isChoice(t,r){return t.name===r||t.index===Number(r)}isSelected(t){return Array.isArray(this.initial)?this.initial.some(r=>this.isChoice(t,r)):this.isChoice(t,this.initial)}map(t=[],r="value"){return[].concat(t||[]).reduce((s,a)=>(s[a]=this.find(a,r),s),{})}filter(t,r){let a=typeof t=="function"?t:(p,f)=>[p.name,f].includes(t),g=(this.options.multiple?this.state._choices:this.choices).filter(a);return r?g.map(p=>p[r]):g}find(t,r){if(PPi(t))return r?t[r]:t;let a=typeof t=="function"?t:(g,p)=>[g.name,p].includes(t),o=this.choices.find(a);if(o)return r?o[r]:o}findIndex(t){return this.choices.indexOf(this.find(t))}async submit(){let t=this.focused;if(!t)return this.alert();if(t.newChoice)return t.input?(t.updateChoice(),this.render()):this.alert();if(this.choices.some(g=>g.newChoice))return this.alert();let{reorder:r,sort:s}=this.options,a=this.multiple===!0,o=this.selected;return o===void 0?this.alert():(Array.isArray(o)&&r!==!1&&s!==!0&&(o=ZSt.reorder(o)),this.value=a?o.map(g=>g.name):o.name,super.submit())}set choices(t=[]){this.state._choices=this.state._choices||[],this.state.choices=t;for(let r of t)this.state._choices.some(s=>s.name===r.name)||this.state._choices.push(r);if(!this._initial&&this.options.initial){this._initial=!0;let r=this.initial;if(typeof r=="string"||typeof r=="number"){let s=this.find(r);s&&(this.initial=s.index,this.focus(s,!0))}}}get choices(){return OPi(this,this.state.choices||[])}set visible(t){this.state.visible=t}get visible(){return(this.state.visible||this.choices).slice(0,this.limit)}set limit(t){this.state.limit=t}get limit(){let{state:t,options:r,choices:s}=this,a=t.limit||this._limit||r.limit||s.length;return Math.min(a,this.height)}set value(t){super.value=t}get value(){return typeof super.value!="string"&&super.value===this.initial?this.input:super.value}set index(t){this.state.index=t}get index(){return Math.max(0,this.state?this.state.index:0)}get enabled(){return this.filter(this.isEnabled.bind(this))}get focused(){let t=this.choices[this.index];return t&&this.state.submitted&&this.multiple!==!0&&(t.enabled=!0),t}get selectable(){return this.choices.filter(t=>!this.isDisabled(t))}get selected(){return this.multiple?this.enabled:this.focused}};function OPi(e,t){if(t instanceof Promise)return t;if(typeof t=="function"){if(ZSt.isAsyncFn(t))return t;t=t.call(e,e)}for(let r of t){if(Array.isArray(r.choices)){let s=r.choices.filter(a=>!e.isDisabled(a));r.enabled=s.every(a=>a.enabled===!0)}e.isDisabled(r)===!0&&delete r.enabled}return t}MPi.exports=GSr});var uae=z((FYl,QPi)=>{"use strict";var hbc=k4e(),FSr=$k(),ZSr=class extends hbc{constructor(t){super(t),this.emptyError=this.options.emptyError||"No items were selected"}async dispatch(t,r){if(this.multiple)return this[r.name]?await this[r.name](t,r):await super.dispatch(t,r);this.alert()}separator(){if(this.options.separator)return super.separator();let t=this.styles.muted(this.symbols.ellipsis);return this.state.submitted?super.separator():t}pointer(t,r){return!this.multiple||this.options.pointer?super.pointer(t,r):""}indicator(t,r){return this.multiple?super.indicator(t,r):""}choiceMessage(t,r){let s=this.resolve(t.message,this.state,t,r);return t.role==="heading"&&!FSr.hasColor(s)&&(s=this.styles.strong(s)),this.resolve(s,this.state,t,r)}choiceSeparator(){return":"}async renderChoice(t,r){await this.onChoice(t,r);let s=this.index===r,a=await this.pointer(t,r),o=await this.indicator(t,r)+(t.pad||""),g=await this.resolve(t.hint,this.state,t,r);g&&!FSr.hasColor(g)&&(g=this.styles.muted(g));let p=this.indent(t),f=await this.choiceMessage(t,r),m=()=>[this.margin[3],p+a+o,f,this.margin[1],g].filter(Boolean).join(" ");return t.role==="heading"?m():t.disabled?(FSr.hasColor(f)||(f=this.styles.disabled(f)),m()):(s&&(f=this.styles.em(f)),m())}async renderChoices(){if(this.state.loading==="choices")return this.styles.warning("Loading choices");if(this.state.submitted)return"";let t=this.visible.map(async(o,g)=>await this.renderChoice(o,g)),r=await Promise.all(t);r.length||r.push(this.styles.danger("No matching choices"));let s=this.margin[0]+r.join(` +`+this.styles.danger(r),this.state.submitted=!1,await this.render(),await this.alert(),this.state.validating=!1,this.state.error=void 0;return}this.state.validating=!1,await this.render(),await this.close(),this.value=await this.result(this.value),this.emit("submit",this.value)}async cancel(t){this.state.cancelled=this.state.submitted=!0,await this.render(),await this.close(),typeof this.options.onCancel=="function"&&await this.options.onCancel.call(this,this.name,this.value,this),this.emit("cancel",await this.error(t))}async close(){this.state.closed=!0;try{let t=this.sections(),r=Math.ceil(t.prompt.length/this.width);t.rest&&this.write(uCe.cursor.down(t.rest.length)),this.write(` +`.repeat(r))}catch{}this.emit("close")}start(){!this.stop&&this.options.show!==!1&&(this.stop=LSr.listen(this,this.keypress.bind(this)),this.once("close",this.stop),this.emit("start",this))}async skip(){return this.skipped=this.options.skip===!0,typeof this.options.skip=="function"&&(this.skipped=await this.options.skip.call(this,this.name,this.value)),this.skipped}async initialize(){let{format:t,options:r,result:s}=this;if(this.format=()=>t.call(this,this.value),this.result=()=>s.call(this,this.value),typeof r.initial=="function"&&(this.initial=await r.initial.call(this,this)),typeof r.onRun=="function"&&await r.onRun.call(this,this),typeof r.onSubmit=="function"){let a=r.onSubmit.bind(this),o=this.submit.bind(this);delete this.options.onSubmit,this.submit=async()=>(await a(this.name,this.value,this),o())}await this.start(),await this.render()}render(){throw new Error("expected prompt to have a custom render method")}run(){return new Promise(async(t,r)=>{if(this.once("submit",t),this.once("cancel",r),await this.skip())return this.render=()=>{},this.submit();await this.initialize(),this.emit("run")})}async element(t,r,s){let{options:a,state:o,symbols:g,timers:p}=this,f=p&&p[t];o.timer=f;let m=a[t]||o[t]||g[t],y=r&&r[t]!=null?r[t]:await m;if(y==="")return y;let B=await this.resolve(y,o,r,s);return!B&&r&&r[t]?this.resolve(m,o,r,s):B}async prefix(){let t=await this.element("prefix")||this.symbols,r=this.timers&&this.timers.prefix,s=this.state;return s.timer=r,x9.isObject(t)&&(t=t[s.status]||t.pending),x9.hasColor(t)?t:(this.styles[s.status]||this.styles.pending)(t)}async message(){let t=await this.element("message");return x9.hasColor(t)?t:this.styles.strong(t)}async separator(){let t=await this.element("separator")||this.symbols,r=this.timers&&this.timers.separator,s=this.state;s.timer=r;let a=t[s.status]||t.pending||s.separator,o=await this.resolve(a,s);return x9.isObject(o)&&(o=o[s.status]||o.pending),x9.hasColor(o)?o:this.styles.muted(o)}async pointer(t,r){let s=await this.element("pointer",t,r);if(typeof s=="string"&&x9.hasColor(s))return s;if(s){let a=this.styles,o=this.index===r,g=o?a.primary:m=>m,p=await this.resolve(s[o?"on":"off"]||s,this.state),f=x9.hasColor(p)?p:g(p);return o?f:" ".repeat(p.length)}}async indicator(t,r){let s=await this.element("indicator",t,r);if(typeof s=="string"&&x9.hasColor(s))return s;if(s){let a=this.styles,o=t.enabled===!0,g=o?a.success:a.dark,p=s[o?"on":"off"]||s;return x9.hasColor(p)?p:g(p)}return""}body(){return null}footer(){if(this.state.status==="pending")return this.element("footer")}header(){if(this.state.status==="pending")return this.element("header")}async hint(){if(this.state.status==="pending"&&!this.isValue(this.state.input)){let t=await this.element("hint");return x9.hasColor(t)?t:this.styles.muted(t)}}error(t){return this.state.submitted?"":t||this.state.error}format(t){return t}result(t){return t}validate(t){return this.options.required===!0?this.isValue(t):!0}isValue(t){return t!=null&&t!==""}resolve(t,...r){return x9.resolve(this,t,...r)}get base(){return e.prototype}get style(){return this.styles[this.state.status]}get height(){return this.options.rows||x9.height(this.stdout,25)}get width(){return this.options.columns||x9.width(this.stdout,80)}get size(){return{width:this.width,height:this.height}}set cursor(t){this.state.cursor=t}get cursor(){return this.state.cursor}set input(t){this.state.input=t}get input(){return this.state.input}set value(t){this.state.value=t}get value(){let{input:t,value:r}=this.state,s=[r,t].find(this.isValue.bind(this));return this.isValue(s)?s:this.initial}static get prompt(){return t=>new this(t).run()}};function Sbc(e){let t=a=>e[a]===void 0||typeof e[a]=="function",r=["actions","choices","initial","margin","roles","styles","symbols","theme","timers","value"],s=["body","footer","error","header","hint","indicator","message","prefix","separator","skip"];for(let a of Object.keys(e.options)){if(r.includes(a)||/^on[A-Z]/.test(a))continue;let o=e.options[a];typeof o=="function"&&t(a)?s.includes(a)||(e[a]=o.bind(e)):typeof e[a]!="function"&&(e[a]=o)}}function wbc(e){typeof e=="number"&&(e=[e,e,e,e]);let t=[].concat(e||[]),r=a=>a%2===0?` +`:" ",s=[];for(let a=0;a<4;a++){let o=r(a);t[a]?s.push(o.repeat(t[a])):s.push("")}return s}MPi.exports=VSr});var XPi=z((tHl,YPi)=>{"use strict";var Tbc=iG(),HPi={default(e,t){return t},checkbox(e,t){throw new Error("checkbox role is not implemented yet")},editable(e,t){throw new Error("editable role is not implemented yet")},expandable(e,t){throw new Error("expandable role is not implemented yet")},heading(e,t){return t.disabled="",t.indicator=[t.indicator," "].find(r=>r!=null),t.message=t.message||"",t},input(e,t){throw new Error("input role is not implemented yet")},option(e,t){return HPi.default(e,t)},radio(e,t){throw new Error("radio role is not implemented yet")},separator(e,t){return t.disabled="",t.indicator=[t.indicator," "].find(r=>r!=null),t.message=t.message||e.symbols.line.repeat(5),t},spacer(e,t){return t}};YPi.exports=(e,t={})=>{let r=Tbc.merge({},HPi,t.roles);return r[e]||r.default}});var F4e=z((rHl,KPi)=>{"use strict";var Nbc=fO(),Rbc=RNe(),Dbc=XPi(),WSt=iG(),{reorder:WSr,scrollUp:xbc,scrollDown:kbc,isObject:JPi,swap:Gbc}=WSt,PSr=class extends Rbc{constructor(t){super(t),this.cursorHide(),this.maxSelected=t.maxSelected||1/0,this.multiple=t.multiple||!1,this.initial=t.initial||0,this.delay=t.delay||0,this.longest=0,this.num=""}async initialize(){typeof this.options.initial=="function"&&(this.initial=await this.options.initial.call(this)),await this.reset(!0),await super.initialize()}async reset(){let{choices:t,initial:r,autofocus:s,suggest:a}=this.options;if(this.state._choices=[],this.state.choices=[],this.choices=await Promise.all(await this.toChoices(t)),this.choices.forEach(o=>o.enabled=!1),typeof a!="function"&&this.selectable.length===0)throw new Error("At least one choice must be selectable");JPi(r)&&(r=Object.keys(r)),Array.isArray(r)?(s!=null&&(this.index=this.findIndex(s)),r.forEach(o=>this.enable(this.find(o))),await this.render()):(s!=null&&(r=s),typeof r=="string"&&(r=this.findIndex(r)),typeof r=="number"&&r>-1&&(this.index=Math.max(0,Math.min(r,this.choices.length)),this.enable(this.find(this.index)))),this.isDisabled(this.focused)&&await this.down()}async toChoices(t,r){this.state.loadingChoices=!0;let s=[],a=0,o=async(g,p)=>{typeof g=="function"&&(g=await g.call(this)),g instanceof Promise&&(g=await g);for(let f=0;f(this.state.loadingChoices=!1,g))}async toChoice(t,r,s){if(typeof t=="function"&&(t=await t.call(this,this)),t instanceof Promise&&(t=await t),typeof t=="string"&&(t={name:t}),t.normalized)return t;t.normalized=!0;let a=t.value;if(t=Dbc(t.role,this.options)(this,t),typeof t.disabled=="string"&&!t.hint&&(t.hint=t.disabled,t.disabled=!0),t.disabled===!0&&t.hint==null&&(t.hint="(disabled)"),t.index!=null)return t;t.name=t.name||t.key||t.title||t.value||t.message,t.message=t.message||t.name||"",t.value=[t.value,t.name].find(this.isValue.bind(this)),t.input="",t.index=r,t.cursor=0,WSt.define(t,"parent",s),t.level=s?s.level+1:1,t.indent==null&&(t.indent=s?s.indent+" ":t.indent||""),t.path=s?s.path+"."+t.name:t.name,t.enabled=!!(this.multiple&&!this.isDisabled(t)&&(t.enabled||this.isSelected(t))),this.isDisabled(t)||(this.longest=Math.max(this.longest,Nbc(t.message).length));let g={...t};return t.reset=(p=g.input,f=g.value)=>{for(let m of Object.keys(g))t[m]=g[m];t.input=p,t.value=f},a==null&&typeof t.initial=="function"&&(t.input=await t.initial.call(this,this.state,t,r)),t}async onChoice(t,r){this.emit("choice",t,r,this),typeof t.onChoice=="function"&&await t.onChoice.call(this,this.state,t,r)}async addChoice(t,r,s){let a=await this.toChoice(t,r,s);return this.choices.push(a),this.index=this.choices.length-1,this.limit=this.choices.length,a}async newItem(t,r,s){let a={name:"New choice name?",editable:!0,newChoice:!0,...t},o=await this.addChoice(a,r,s);return o.updateChoice=()=>{delete o.newChoice,o.name=o.message=o.input,o.input="",o.cursor=0},this.render()}indent(t){return t.indent==null?t.level>1?" ".repeat(t.level-1):"":t.indent}dispatch(t,r){if(this.multiple&&this[r.name])return this[r.name]();this.alert()}focus(t,r){return typeof r!="boolean"&&(r=t.enabled),r&&!t.enabled&&this.selected.length>=this.maxSelected?this.alert():(this.index=t.index,t.enabled=r&&!this.isDisabled(t),t)}space(){if(!this.multiple)return this.alert();if(this.focused)return this.toggle(this.focused),this.render()}a(){if(this.maxSelectedr.enabled);return this.choices.forEach(r=>r.enabled=!t),this.render()}i(){return this.choices.length-this.selected.length>this.maxSelected?this.alert():(this.choices.forEach(t=>t.enabled=!t.enabled),this.render())}g(){if(!this.choices.some(r=>!!r.parent))return this.a();let t=this.focused;return this.toggle(t.parent&&!t.choices?t.parent:t),this.render()}toggle(t,r){if(!t.enabled&&this.selected.length>=this.maxSelected)return this.alert();typeof r!="boolean"&&(r=!t.enabled),t.enabled=r,t.choices&&t.choices.forEach(a=>this.toggle(a,r));let s=t.parent;for(;s;){let a=s.choices.filter(o=>this.isDisabled(o));s.enabled=a.every(o=>o.enabled===!0),s=s.parent}return UPi(this,this.choices),this.emit("toggle",t,this),t}enable(t){return this.selected.length>=this.maxSelected?this.alert():(t.enabled=!this.isDisabled(t),t.choices&&t.choices.forEach(this.enable.bind(this)),t)}disable(t){return t.enabled=!1,t.choices&&t.choices.forEach(this.disable.bind(this)),t}number(t){this.num+=t;let r=s=>{let a=Number(s);if(a>this.choices.length-1)return this.alert();let o=this.focused,g=this.choices.find(p=>a===p.index);if(!g.enabled&&this.selected.length>=this.maxSelected)return this.alert();if(this.visible.indexOf(g)===-1){let p=WSr(this.choices),f=p.indexOf(g);if(o.index>f){let m=p.slice(f,f+this.limit),y=p.filter(B=>!m.includes(B));this.choices=m.concat(y)}else{let m=f-this.limit+1;this.choices=p.slice(m).concat(p.slice(0,m))}}return this.index=this.choices.indexOf(g),this.toggle(this.focused),this.render()};return clearTimeout(this.numberTimeout),new Promise(s=>{let a=this.choices.length,o=this.num,g=(p=!1,f)=>{clearTimeout(this.numberTimeout),p&&(f=r(o)),this.num="",s(f)};if(o==="0"||o.length===1&&+(o+"0")>a)return g(!0);if(Number(o)>a)return g(!1,this.alert());this.numberTimeout=setTimeout(()=>g(!0),this.delay)})}home(){return this.choices=WSr(this.choices),this.index=0,this.render()}end(){let t=this.choices.length-this.limit,r=WSr(this.choices);return this.choices=r.slice(t).concat(r.slice(0,t)),this.index=this.limit-1,this.render()}first(){return this.index=0,this.render()}last(){return this.index=this.visible.length-1,this.render()}prev(){return this.visible.length<=1?this.alert():this.up()}next(){return this.visible.length<=1?this.alert():this.down()}right(){return this.cursor>=this.input.length?this.alert():(this.cursor++,this.render())}left(){return this.cursor<=0?this.alert():(this.cursor--,this.render())}up(){let t=this.choices.length,r=this.visible.length,s=this.index;return this.options.scroll===!1&&s===0?this.alert():t>r&&s===0?this.scrollUp():(this.index=(s-1%t+t)%t,this.isDisabled()&&!this.allChoicesAreDisabled()?this.up():this.render())}down(){let t=this.choices.length,r=this.visible.length,s=this.index;return this.options.scroll===!1&&s===r-1?this.alert():t>r&&s===r-1?this.scrollDown():(this.index=(s+1)%t,this.isDisabled()&&!this.allChoicesAreDisabled()?this.down():this.render())}scrollUp(t=0){return this.choices=xbc(this.choices),this.index=t,this.isDisabled()?this.up():this.render()}scrollDown(t=this.visible.length-1){return this.choices=kbc(this.choices),this.index=t,this.isDisabled()?this.down():this.render()}async shiftUp(){if(this.options.sort===!0){this.sorting=!0,this.swap(this.index-1),await this.up(),this.sorting=!1;return}return this.scrollUp(this.index)}async shiftDown(){if(this.options.sort===!0){this.sorting=!0,this.swap(this.index+1),await this.down(),this.sorting=!1;return}return this.scrollDown(this.index)}pageUp(){return this.visible.length<=1?this.alert():(this.limit=Math.max(this.limit-1,0),this.index=Math.min(this.limit-1,this.index),this._limit=this.limit,this.isDisabled()?this.up():this.render())}pageDown(){return this.visible.length>=this.choices.length?this.alert():(this.index=Math.max(0,this.index),this.limit=Math.min(this.limit+1,this.choices.length),this._limit=this.limit,this.isDisabled()?this.down():this.render())}swap(t){Gbc(this.choices,this.index,t)}allChoicesAreDisabled(t=this.choices){return t.every(r=>this.isDisabled(r))}isDisabled(t=this.focused){return t&&["disabled","collapsed","hidden","completing","readonly"].some(s=>t[s]===!0)?!0:t&&t.role==="heading"}isEnabled(t=this.focused){if(Array.isArray(t))return t.every(r=>this.isEnabled(r));if(t.choices){let r=t.choices.filter(s=>!this.isDisabled(s));return t.enabled&&r.every(s=>this.isEnabled(s))}return t.enabled&&!this.isDisabled(t)}isChoice(t,r){return t.name===r||t.index===Number(r)}isSelected(t){return Array.isArray(this.initial)?this.initial.some(r=>this.isChoice(t,r)):this.isChoice(t,this.initial)}map(t=[],r="value"){return[].concat(t||[]).reduce((s,a)=>(s[a]=this.find(a,r),s),{})}filter(t,r){let a=typeof t=="function"?t:(p,f)=>[p.name,f].includes(t),g=(this.options.multiple?this.state._choices:this.choices).filter(a);return r?g.map(p=>p[r]):g}find(t,r){if(JPi(t))return r?t[r]:t;let a=typeof t=="function"?t:(g,p)=>[g.name,p].includes(t),o=this.choices.find(a);if(o)return r?o[r]:o}findIndex(t){return this.choices.indexOf(this.find(t))}async submit(){let t=this.focused;if(!t)return this.alert();if(t.newChoice)return t.input?(t.updateChoice(),this.render()):this.alert();if(this.choices.some(g=>g.newChoice))return this.alert();let{reorder:r,sort:s}=this.options,a=this.multiple===!0,o=this.selected;return o===void 0?this.alert():(Array.isArray(o)&&r!==!1&&s!==!0&&(o=WSt.reorder(o)),this.value=a?o.map(g=>g.name):o.name,super.submit())}set choices(t=[]){this.state._choices=this.state._choices||[],this.state.choices=t;for(let r of t)this.state._choices.some(s=>s.name===r.name)||this.state._choices.push(r);if(!this._initial&&this.options.initial){this._initial=!0;let r=this.initial;if(typeof r=="string"||typeof r=="number"){let s=this.find(r);s&&(this.initial=s.index,this.focus(s,!0))}}}get choices(){return UPi(this,this.state.choices||[])}set visible(t){this.state.visible=t}get visible(){return(this.state.visible||this.choices).slice(0,this.limit)}set limit(t){this.state.limit=t}get limit(){let{state:t,options:r,choices:s}=this,a=t.limit||this._limit||r.limit||s.length;return Math.min(a,this.height)}set value(t){super.value=t}get value(){return typeof super.value!="string"&&super.value===this.initial?this.input:super.value}set index(t){this.state.index=t}get index(){return Math.max(0,this.state?this.state.index:0)}get enabled(){return this.filter(this.isEnabled.bind(this))}get focused(){let t=this.choices[this.index];return t&&this.state.submitted&&this.multiple!==!0&&(t.enabled=!0),t}get selectable(){return this.choices.filter(t=>!this.isDisabled(t))}get selected(){return this.multiple?this.enabled:this.focused}};function UPi(e,t){if(t instanceof Promise)return t;if(typeof t=="function"){if(WSt.isAsyncFn(t))return t;t=t.call(e,e)}for(let r of t){if(Array.isArray(r.choices)){let s=r.choices.filter(a=>!e.isDisabled(a));r.enabled=s.every(a=>a.enabled===!0)}e.isDisabled(r)===!0&&delete r.enabled}return t}KPi.exports=PSr});var hae=z((nHl,jPi)=>{"use strict";var Fbc=F4e(),OSr=iG(),QSr=class extends Fbc{constructor(t){super(t),this.emptyError=this.options.emptyError||"No items were selected"}async dispatch(t,r){if(this.multiple)return this[r.name]?await this[r.name](t,r):await super.dispatch(t,r);this.alert()}separator(){if(this.options.separator)return super.separator();let t=this.styles.muted(this.symbols.ellipsis);return this.state.submitted?super.separator():t}pointer(t,r){return!this.multiple||this.options.pointer?super.pointer(t,r):""}indicator(t,r){return this.multiple?super.indicator(t,r):""}choiceMessage(t,r){let s=this.resolve(t.message,this.state,t,r);return t.role==="heading"&&!OSr.hasColor(s)&&(s=this.styles.strong(s)),this.resolve(s,this.state,t,r)}choiceSeparator(){return":"}async renderChoice(t,r){await this.onChoice(t,r);let s=this.index===r,a=await this.pointer(t,r),o=await this.indicator(t,r)+(t.pad||""),g=await this.resolve(t.hint,this.state,t,r);g&&!OSr.hasColor(g)&&(g=this.styles.muted(g));let p=this.indent(t),f=await this.choiceMessage(t,r),m=()=>[this.margin[3],p+a+o,f,this.margin[1],g].filter(Boolean).join(" ");return t.role==="heading"?m():t.disabled?(OSr.hasColor(f)||(f=this.styles.disabled(f)),m()):(s&&(f=this.styles.em(f)),m())}async renderChoices(){if(this.state.loading==="choices")return this.styles.warning("Loading choices");if(this.state.submitted)return"";let t=this.visible.map(async(o,g)=>await this.renderChoice(o,g)),r=await Promise.all(t);r.length||r.push(this.styles.danger("No matching choices"));let s=this.margin[0]+r.join(` `),a;return this.options.choicesHeader&&(a=await this.resolve(this.options.choicesHeader,this.state)),[a,s].filter(Boolean).join(` `)}format(){return!this.state.submitted||this.state.cancelled?"":Array.isArray(this.selected)?this.selected.map(t=>this.styles.primary(t.name)).join(", "):this.styles.primary(this.selected.name)}async render(){let{submitted:t,size:r}=this.state,s="",a=await this.header(),o=await this.prefix(),g=await this.separator(),p=await this.message();this.options.promptLine!==!1&&(s=[o,p,g,""].join(" "),this.state.prompt=s);let f=await this.format(),m=await this.error()||await this.hint(),y=await this.renderChoices(),B=await this.footer();f&&(s+=f),m&&!s.includes(m)&&(s+=" "+m),t&&!f&&!y.trim()&&this.multiple&&this.emptyError!=null&&(s+=this.styles.danger(this.emptyError)),this.clear(r),this.write([a,s,y,B].filter(Boolean).join(` -`)),this.write(this.margin[2]),this.restore()}};QPi.exports=ZSr});var HPi=z((ZYl,YPi)=>{"use strict";var _bc=uae(),ybc=(e,t)=>{let r=e?new RegExp(e,"ig"):/$^/;return s=>e?s.replace(r,a=>t(a)):s},LSr=class extends _bc{constructor(t){super(t),this.cursorShow()}moveCursor(t){this.state.cursor+=t}dispatch(t){return this.append(t)}space(t){return this.options.multiple?super.space(t):this.append(t)}append(t){let{cursor:r,input:s}=this.state;return this.input=s.slice(0,r)+t+s.slice(r),this.moveCursor(1),this.complete()}delete(){let{cursor:t,input:r}=this.state;return r?(this.input=r.slice(0,t-1)+r.slice(t),this.moveCursor(-1),this.complete()):this.alert()}deleteForward(){let{cursor:t,input:r}=this.state;return r[t]===void 0?this.alert():(this.input=`${r}`.slice(0,t)+`${r}`.slice(t+1),this.complete())}number(t){return this.append(t)}async complete(){this.completing=!0,this.choices=await this.suggest(this.input,this.state._choices),this.state.limit=void 0,this.index=Math.min(Math.max(this.visible.length-1,0),this.index),await this.render(),this.completing=!1}suggest(t=this.input,r=this.state._choices){if(typeof this.options.suggest=="function")return this.options.suggest.call(this,t,r);let s=t.toLowerCase();return r.filter(a=>a.message.toLowerCase().includes(s))}pointer(){return""}format(){if(!this.focused)return this.input;if(this.options.multiple&&this.state.submitted)return this.selected.map(t=>this.styles.primary(t.message)).join(", ");if(this.state.submitted){let t=this.value=this.input=this.focused.value;return this.styles.primary(t)}return this.input}async render(){if(this.state.status!=="pending")return super.render();let t=this.options.highlight||this.styles.complement,r=(o,g)=>o&&(t.stack?t(o):t.call(this,o)),s=ybc(this.input,r),a=this.choices;this.choices=a.map(o=>({...o,message:s(o.message)})),await super.render(),this.choices=a}submit(){return this.options.multiple&&(this.value=this.selected.map(t=>t.name)),super.submit()}};YPi.exports=LSr});var WSr=z((LYl,XPi)=>{"use strict";var VSr=$k();XPi.exports=(e,t={})=>{e.cursorHide();let{input:r="",initial:s="",pos:a,showCursor:o=!0,color:g}=t,p=g||e.styles.placeholder,f=VSr.inverse(e.styles.primary),m=O=>f(e.styles.black(O)),y=r,B=" ",v=m(B);if(e.blink&&e.blink.off===!0&&(m=O=>O,v=""),o&&a===0&&s===""&&r==="")return m(B);if(o&&a===0&&(r===s||r===""))return m(s[0])+p(s.slice(1));s=VSr.isPrimitive(s)?`${s}`:"",r=VSr.isPrimitive(r)?`${r}`:"";let G=s&&s.startsWith(r)&&s!==r,T=G?m(s[r.length]):v;if(a!==r.length&&o===!0&&(y=r.slice(0,a)+m(r[a])+r.slice(a+1),T=""),o===!1&&(T=""),G){let O=e.styles.unstyle(y+T);return y+T+p(s.slice(O.length))}return y+T}});var LSt=z((VYl,JPi)=>{"use strict";var bbc=AO(),Ebc=uae(),Bbc=WSr(),PSr=class extends Ebc{constructor(t){super({...t,multiple:!0}),this.type="form",this.initial=this.options.initial,this.align=[this.options.align,"right"].find(r=>r!=null),this.emptyError="",this.values={}}async reset(t){return await super.reset(),t===!0&&(this._index=this.index),this.index=this._index,this.values={},this.choices.forEach(r=>r.reset&&r.reset()),this.render()}dispatch(t){return!!t&&this.append(t)}append(t){let r=this.focused;if(!r)return this.alert();let{cursor:s,input:a}=r;return r.value=r.input=a.slice(0,s)+t+a.slice(s),r.cursor++,this.render()}delete(){let t=this.focused;if(!t||t.cursor<=0)return this.alert();let{cursor:r,input:s}=t;return t.value=t.input=s.slice(0,r-1)+s.slice(r),t.cursor--,this.render()}deleteForward(){let t=this.focused;if(!t)return this.alert();let{cursor:r,input:s}=t;if(s[r]===void 0)return this.alert();let a=`${s}`.slice(0,r)+`${s}`.slice(r+1);return t.value=t.input=a,this.render()}right(){let t=this.focused;return t?t.cursor>=t.input.length?this.alert():(t.cursor++,this.render()):this.alert()}left(){let t=this.focused;return t?t.cursor<=0?this.alert():(t.cursor--,this.render()):this.alert()}space(t,r){return this.dispatch(t,r)}number(t,r){return this.dispatch(t,r)}next(){let t=this.focused;if(!t)return this.alert();let{initial:r,input:s}=t;return r&&r.startsWith(s)&&s!==r?(t.value=t.input=r,t.cursor=t.value.length,this.render()):super.next()}prev(){let t=this.focused;return t?t.cursor===0?super.prev():(t.value=t.input="",t.cursor=0,this.render()):this.alert()}separator(){return""}format(t){return this.state.submitted?"":super.format(t)}pointer(){return""}indicator(t){return t.input?"\u29BF":"\u2299"}async choiceSeparator(t,r){let s=await this.resolve(t.separator,this.state,t,r)||":";return s?" "+this.styles.disabled(s):""}async renderChoice(t,r){await this.onChoice(t,r);let{state:s,styles:a}=this,{cursor:o,initial:g="",name:p,input:f=""}=t,{muted:m,submitted:y,primary:B,danger:v}=a,G=this.index===r,T=t.validate||(()=>!0),O=await this.choiceSeparator(t,r),X=t.message;this.align==="right"&&(X=X.padStart(this.longest+1," ")),this.align==="left"&&(X=X.padEnd(this.longest+1," "));let U=this.values[p]=f||g,le=f?"success":"dark";await T.call(t,U,this.state)!==!0&&(le="danger");let ae=a[le],ge=ae(await this.indicator(t,r))+(t.pad||""),fe=this.indent(t),pe=()=>[fe,ge,X+O,f].filter(Boolean).join(" ");if(s.submitted)return X=bbc(X),f=y(f),pe();if(t.format)f=await t.format.call(this,f,t,r);else{let he=this.styles.muted;f=Bbc(this,{input:f,initial:g,pos:o,showCursor:G,color:he})}return this.isValue(f)||(f=this.styles.muted(this.symbols.ellipsis)),t.result&&(this.values[p]=await t.result.call(this,U,t,r)),G&&(X=B(X)),t.error?f+=(f?" ":"")+v(t.error.trim()):t.hint&&(f+=(f?" ":"")+m(t.hint.trim())),pe()}async submit(){return this.value=this.values,super.base.submit.call(this)}};JPi.exports=PSr});var OSr=z((WYl,KPi)=>{"use strict";var vbc=LSt(),Sbc=()=>{throw new Error("expected prompt to have a custom authenticate method")},UPi=(e=Sbc)=>{class t extends vbc{constructor(s){super(s)}async submit(){this.value=await e.call(this,this.values,this.state),super.base.submit.call(this)}static create(s){return UPi(s)}}return t};KPi.exports=UPi()});var qPi=z((PYl,zPi)=>{"use strict";var wbc=OSr();function Tbc(e,t){return e.username===this.options.username&&e.password===this.options.password}var jPi=(e=Tbc)=>{let t=[{name:"username",message:"username"},{name:"password",message:"password",format(s){return this.options.showPassword?s:(this.state.submitted?this.styles.primary:this.styles.muted)(this.symbols.asterisk.repeat(s.length))}}];class r extends wbc.create(e){constructor(a){super({...a,choices:t})}static create(a){return jPi(a)}}return r};zPi.exports=jPi()});var VSt=z((OYl,$Pi)=>{"use strict";var Nbc=TNe(),{isPrimitive:Rbc,hasColor:Dbc}=$k(),MSr=class extends Nbc{constructor(t){super(t),this.cursorHide()}async initialize(){let t=await this.resolve(this.initial,this.state);this.input=await this.cast(t),await super.initialize()}dispatch(t){return this.isValue(t)?(this.input=t,this.submit()):this.alert()}format(t){let{styles:r,state:s}=this;return s.submitted?r.success(t):r.primary(t)}cast(t){return this.isTrue(t)}isTrue(t){return/^[ty1]/i.test(t)}isFalse(t){return/^[fn0]/i.test(t)}isValue(t){return Rbc(t)&&(this.isTrue(t)||this.isFalse(t))}async hint(){if(this.state.status==="pending"){let t=await this.element("hint");return Dbc(t)?t:this.styles.muted(t)}}async render(){let{input:t,size:r}=this.state,s=await this.prefix(),a=await this.separator(),o=await this.message(),g=this.styles.muted(this.default),p=[s,o,g,a].filter(Boolean).join(" ");this.state.prompt=p;let f=await this.header(),m=this.value=this.cast(t),y=await this.format(m),B=await this.error()||await this.hint(),v=await this.footer();B&&!p.includes(B)&&(y+=" "+B),p+=" "+y,this.clear(r),this.write([f,p,v].filter(Boolean).join(` -`)),this.restore()}set value(t){super.value=t}get value(){return this.cast(super.value)}};$Pi.exports=MSr});var tOi=z((MYl,eOi)=>{"use strict";var xbc=VSt(),QSr=class extends xbc{constructor(t){super(t),this.default=this.options.default||(this.initial?"(Y/n)":"(y/N)")}};eOi.exports=QSr});var nOi=z((QYl,rOi)=>{"use strict";var kbc=uae(),Gbc=LSt(),NNe=Gbc.prototype,YSr=class extends kbc{constructor(t){super({...t,multiple:!0}),this.align=[this.options.align,"left"].find(r=>r!=null),this.emptyError="",this.values={}}dispatch(t,r){let s=this.focused,a=s.parent||{};return!s.editable&&!a.editable&&(t==="a"||t==="i")?super[t]():NNe.dispatch.call(this,t,r)}append(t,r){return NNe.append.call(this,t,r)}delete(t,r){return NNe.delete.call(this,t,r)}space(t){return this.focused.editable?this.append(t):super.space()}number(t){return this.focused.editable?this.append(t):super.number(t)}next(){return this.focused.editable?NNe.next.call(this):super.next()}prev(){return this.focused.editable?NNe.prev.call(this):super.prev()}async indicator(t,r){let s=t.indicator||"",a=t.editable?s:super.indicator(t,r);return await this.resolve(a,this.state,t,r)||""}indent(t){return t.role==="heading"?"":t.editable?" ":" "}async renderChoice(t,r){return t.indent="",t.editable?NNe.renderChoice.call(this,t,r):super.renderChoice(t,r)}error(){return""}footer(){return this.state.error}async validate(){let t=!0;for(let r of this.choices){if(typeof r.validate!="function"||r.role==="heading")continue;let s=r.parent?this.value[r.parent.name]:this.value;if(r.editable?s=r.value===r.name?r.initial||"":r.value:this.isDisabled(r)||(s=r.enabled===!0),t=await r.validate(s,this.state),t!==!0)break}return t!==!0&&(this.state.error=typeof t=="string"?t:"Invalid Input"),t}submit(){if(this.focused.newChoice===!0)return super.submit();if(this.choices.some(t=>t.newChoice))return this.alert();this.value={};for(let t of this.choices){let r=t.parent?this.value[t.parent.name]:this.value;if(t.role==="heading"){this.value[t.name]={};continue}t.editable?r[t.name]=t.value===t.name?t.initial||"":t.value:this.isDisabled(t)||(r[t.name]=t.enabled===!0)}return this.base.submit.call(this)}};rOi.exports=YSr});var lCe=z((YYl,iOi)=>{"use strict";var Fbc=TNe(),Zbc=bSr(),Lbc=WSr(),{isPrimitive:Vbc}=$k(),HSr=class extends Fbc{constructor(t){super(t),this.initial=Vbc(this.initial)?String(this.initial):"",this.initial&&this.cursorHide(),this.state.prevCursor=0,this.state.clipboard=[],this.keypressTimeout=this.options.keypressTimeout!==void 0?this.options.keypressTimeout:null}async keypress(t,r=t?Zbc(t,{}):{}){let s=Date.now(),a=s-this.lastKeypress;this.lastKeypress=s;let o=r.name==="return"||r.name==="enter",g=this.state.prevKeypress,p;if(this.state.prevKeypress=r,this.keypressTimeout!=null&&o){if(a=this.input.length?this.alert():(this.moveCursor(1),this.render())}left(){return this.cursor<=0?this.alert():(this.moveCursor(-1),this.render())}isValue(t){return!!t}async format(t=this.value){let r=await this.resolve(this.initial,this.state);return this.state.submitted?this.styles.submitted(t||r):Lbc(this,{input:t,initial:r,pos:this.cursor})}async render(){let t=this.state.size,r=await this.prefix(),s=await this.separator(),a=await this.message(),o=[r,a,s].filter(Boolean).join(" ");this.state.prompt=o;let g=await this.header(),p=await this.format(),f=await this.error()||await this.hint(),m=await this.footer();f&&!p.includes(f)&&(p+=" "+f),o+=" "+p,this.clear(t),this.write([g,o,m].filter(Boolean).join(` -`)),this.restore()}};iOi.exports=HSr});var oOi=z((HYl,sOi)=>{"use strict";var Wbc=e=>e.filter((t,r)=>e.lastIndexOf(t)===r),WSt=e=>Wbc(e).filter(Boolean);sOi.exports=(e,t={},r="")=>{let{past:s=[],present:a=""}=t,o,g;switch(e){case"prev":case"undo":return o=s.slice(0,s.length-1),g=s[s.length-1]||"",{past:WSt([r,...o]),present:g};case"next":case"redo":return o=s.slice(1),g=s[0]||"",{past:WSt([...o,r]),present:g};case"save":return{past:WSt([...s,r]),present:""};case"remove":return g=WSt(s.filter(p=>p!==r)),a="",g.length&&(a=g.pop()),{past:g,present:a};default:throw new Error(`Invalid action: "${e}"`)}}});var JSr=z((XYl,cOi)=>{"use strict";var Pbc=lCe(),aOi=oOi(),XSr=class extends Pbc{constructor(t){super(t);let r=this.options.history;if(r&&r.store){let s=r.values||this.initial;this.autosave=!!r.autosave,this.store=r.store,this.data=this.store.get("values")||{past:[],present:s},this.initial=this.data.present||this.data.past[this.data.past.length-1]}}completion(t){return this.store?(this.data=aOi(t,this.data,this.input),this.data.present?(this.input=this.data.present,this.cursor=this.input.length,this.render()):this.alert()):this.alert()}altUp(){return this.completion("prev")}altDown(){return this.completion("next")}prev(){return this.save(),super.prev()}save(){this.store&&(this.data=aOi("save",this.data,this.input),this.store.set("values",this.data))}submit(){return this.store&&this.autosave===!0&&this.save(),super.submit()}};cOi.exports=XSr});var uOi=z((JYl,lOi)=>{"use strict";var Obc=lCe(),USr=class extends Obc{format(){return""}};lOi.exports=USr});var AOi=z((UYl,gOi)=>{"use strict";var Mbc=lCe(),KSr=class extends Mbc{constructor(t={}){super(t),this.sep=this.options.separator||/, */,this.initial=t.initial||""}split(t=this.value){return t?String(t).split(this.sep):[]}format(){let t=this.state.submitted?this.styles.primary:r=>r;return this.list.map(t).join(", ")}async submit(t){let r=this.state.error||await this.validate(this.list,this.state);return r!==!0?(this.state.error=r,super.submit()):(this.value=this.list,super.submit())}get list(){return this.split()}};gOi.exports=KSr});var pOi=z((KYl,dOi)=>{"use strict";var Qbc=uae(),jSr=class extends Qbc{constructor(t){super({...t,multiple:!0})}};dOi.exports=jSr});var qSr=z((jYl,fOi)=>{"use strict";var Ybc=lCe(),zSr=class extends Ybc{constructor(t={}){super({style:"number",...t}),this.min=this.isValue(t.min)?this.toNumber(t.min):-1/0,this.max=this.isValue(t.max)?this.toNumber(t.max):1/0,this.delay=t.delay!=null?t.delay:1e3,this.float=t.float!==!1,this.round=t.round===!0||t.float===!1,this.major=t.major||10,this.minor=t.minor||1,this.initial=t.initial!=null?t.initial:"",this.input=String(this.initial),this.cursor=this.input.length,this.cursorShow()}append(t){return!/[-+.]/.test(t)||t==="."&&this.input.includes(".")?this.alert("invalid number"):super.append(t)}number(t){return super.append(t)}next(){return this.input&&this.input!==this.initial?this.alert():this.isValue(this.initial)?(this.input=this.initial,this.cursor=String(this.initial).length,this.render()):this.alert()}up(t){let r=t||this.minor,s=this.toNumber(this.input);return s>this.max+r?this.alert():(this.input=`${s+r}`,this.render())}down(t){let r=t||this.minor,s=this.toNumber(this.input);return sthis.isValue(r));return this.value=this.toNumber(t||0),super.submit()}};fOi.exports=zSr});var COi=z((zYl,IOi)=>{IOi.exports=qSr()});var hOi=z((qYl,mOi)=>{"use strict";var Hbc=lCe(),$Sr=class extends Hbc{constructor(t){super(t),this.cursorShow()}format(t=this.input){return this.keypressed?(this.state.submitted?this.styles.primary:this.styles.muted)(this.symbols.asterisk.repeat(t.length)):""}};mOi.exports=$Sr});var bOi=z(($Yl,yOi)=>{"use strict";var Xbc=AO(),Jbc=k4e(),_Oi=$k(),ewr=class extends Jbc{constructor(t={}){super(t),this.widths=[].concat(t.messageWidth||50),this.align=[].concat(t.align||"left"),this.linebreak=t.linebreak||!1,this.edgeLength=t.edgeLength||3,this.newline=t.newline||` +`)),this.write(this.margin[2]),this.restore()}};jPi.exports=QSr});var qPi=z((iHl,zPi)=>{"use strict";var Zbc=hae(),Lbc=(e,t)=>{let r=e?new RegExp(e,"ig"):/$^/;return s=>e?s.replace(r,a=>t(a)):s},MSr=class extends Zbc{constructor(t){super(t),this.cursorShow()}moveCursor(t){this.state.cursor+=t}dispatch(t){return this.append(t)}space(t){return this.options.multiple?super.space(t):this.append(t)}append(t){let{cursor:r,input:s}=this.state;return this.input=s.slice(0,r)+t+s.slice(r),this.moveCursor(1),this.complete()}delete(){let{cursor:t,input:r}=this.state;return r?(this.input=r.slice(0,t-1)+r.slice(t),this.moveCursor(-1),this.complete()):this.alert()}deleteForward(){let{cursor:t,input:r}=this.state;return r[t]===void 0?this.alert():(this.input=`${r}`.slice(0,t)+`${r}`.slice(t+1),this.complete())}number(t){return this.append(t)}async complete(){this.completing=!0,this.choices=await this.suggest(this.input,this.state._choices),this.state.limit=void 0,this.index=Math.min(Math.max(this.visible.length-1,0),this.index),await this.render(),this.completing=!1}suggest(t=this.input,r=this.state._choices){if(typeof this.options.suggest=="function")return this.options.suggest.call(this,t,r);let s=t.toLowerCase();return r.filter(a=>a.message.toLowerCase().includes(s))}pointer(){return""}format(){if(!this.focused)return this.input;if(this.options.multiple&&this.state.submitted)return this.selected.map(t=>this.styles.primary(t.message)).join(", ");if(this.state.submitted){let t=this.value=this.input=this.focused.value;return this.styles.primary(t)}return this.input}async render(){if(this.state.status!=="pending")return super.render();let t=this.options.highlight||this.styles.complement,r=(o,g)=>o&&(t.stack?t(o):t.call(this,o)),s=Lbc(this.input,r),a=this.choices;this.choices=a.map(o=>({...o,message:s(o.message)})),await super.render(),this.choices=a}submit(){return this.options.multiple&&(this.value=this.selected.map(t=>t.name)),super.submit()}};zPi.exports=MSr});var YSr=z((sHl,$Pi)=>{"use strict";var HSr=iG();$Pi.exports=(e,t={})=>{e.cursorHide();let{input:r="",initial:s="",pos:a,showCursor:o=!0,color:g}=t,p=g||e.styles.placeholder,f=HSr.inverse(e.styles.primary),m=O=>f(e.styles.black(O)),y=r,B=" ",v=m(B);if(e.blink&&e.blink.off===!0&&(m=O=>O,v=""),o&&a===0&&s===""&&r==="")return m(B);if(o&&a===0&&(r===s||r===""))return m(s[0])+p(s.slice(1));s=HSr.isPrimitive(s)?`${s}`:"",r=HSr.isPrimitive(r)?`${r}`:"";let k=s&&s.startsWith(r)&&s!==r,T=k?m(s[r.length]):v;if(a!==r.length&&o===!0&&(y=r.slice(0,a)+m(r[a])+r.slice(a+1),T=""),o===!1&&(T=""),k){let O=e.styles.unstyle(y+T);return y+T+p(s.slice(O.length))}return y+T}});var PSt=z((oHl,eOi)=>{"use strict";var Vbc=fO(),Wbc=hae(),Pbc=YSr(),XSr=class extends Wbc{constructor(t){super({...t,multiple:!0}),this.type="form",this.initial=this.options.initial,this.align=[this.options.align,"right"].find(r=>r!=null),this.emptyError="",this.values={}}async reset(t){return await super.reset(),t===!0&&(this._index=this.index),this.index=this._index,this.values={},this.choices.forEach(r=>r.reset&&r.reset()),this.render()}dispatch(t){return!!t&&this.append(t)}append(t){let r=this.focused;if(!r)return this.alert();let{cursor:s,input:a}=r;return r.value=r.input=a.slice(0,s)+t+a.slice(s),r.cursor++,this.render()}delete(){let t=this.focused;if(!t||t.cursor<=0)return this.alert();let{cursor:r,input:s}=t;return t.value=t.input=s.slice(0,r-1)+s.slice(r),t.cursor--,this.render()}deleteForward(){let t=this.focused;if(!t)return this.alert();let{cursor:r,input:s}=t;if(s[r]===void 0)return this.alert();let a=`${s}`.slice(0,r)+`${s}`.slice(r+1);return t.value=t.input=a,this.render()}right(){let t=this.focused;return t?t.cursor>=t.input.length?this.alert():(t.cursor++,this.render()):this.alert()}left(){let t=this.focused;return t?t.cursor<=0?this.alert():(t.cursor--,this.render()):this.alert()}space(t,r){return this.dispatch(t,r)}number(t,r){return this.dispatch(t,r)}next(){let t=this.focused;if(!t)return this.alert();let{initial:r,input:s}=t;return r&&r.startsWith(s)&&s!==r?(t.value=t.input=r,t.cursor=t.value.length,this.render()):super.next()}prev(){let t=this.focused;return t?t.cursor===0?super.prev():(t.value=t.input="",t.cursor=0,this.render()):this.alert()}separator(){return""}format(t){return this.state.submitted?"":super.format(t)}pointer(){return""}indicator(t){return t.input?"\u29BF":"\u2299"}async choiceSeparator(t,r){let s=await this.resolve(t.separator,this.state,t,r)||":";return s?" "+this.styles.disabled(s):""}async renderChoice(t,r){await this.onChoice(t,r);let{state:s,styles:a}=this,{cursor:o,initial:g="",name:p,input:f=""}=t,{muted:m,submitted:y,primary:B,danger:v}=a,k=this.index===r,T=t.validate||(()=>!0),O=await this.choiceSeparator(t,r),X=t.message;this.align==="right"&&(X=X.padStart(this.longest+1," ")),this.align==="left"&&(X=X.padEnd(this.longest+1," "));let U=this.values[p]=f||g,le=f?"success":"dark";await T.call(t,U,this.state)!==!0&&(le="danger");let ae=a[le],ge=ae(await this.indicator(t,r))+(t.pad||""),fe=this.indent(t),pe=()=>[fe,ge,X+O,f].filter(Boolean).join(" ");if(s.submitted)return X=Vbc(X),f=y(f),pe();if(t.format)f=await t.format.call(this,f,t,r);else{let he=this.styles.muted;f=Pbc(this,{input:f,initial:g,pos:o,showCursor:k,color:he})}return this.isValue(f)||(f=this.styles.muted(this.symbols.ellipsis)),t.result&&(this.values[p]=await t.result.call(this,U,t,r)),k&&(X=B(X)),t.error?f+=(f?" ":"")+v(t.error.trim()):t.hint&&(f+=(f?" ":"")+m(t.hint.trim())),pe()}async submit(){return this.value=this.values,super.base.submit.call(this)}};eOi.exports=XSr});var JSr=z((aHl,rOi)=>{"use strict";var Obc=PSt(),Qbc=()=>{throw new Error("expected prompt to have a custom authenticate method")},tOi=(e=Qbc)=>{class t extends Obc{constructor(s){super(s)}async submit(){this.value=await e.call(this,this.values,this.state),super.base.submit.call(this)}static create(s){return tOi(s)}}return t};rOi.exports=tOi()});var sOi=z((cHl,iOi)=>{"use strict";var Mbc=JSr();function Hbc(e,t){return e.username===this.options.username&&e.password===this.options.password}var nOi=(e=Hbc)=>{let t=[{name:"username",message:"username"},{name:"password",message:"password",format(s){return this.options.showPassword?s:(this.state.submitted?this.styles.primary:this.styles.muted)(this.symbols.asterisk.repeat(s.length))}}];class r extends Mbc.create(e){constructor(a){super({...a,choices:t})}static create(a){return nOi(a)}}return r};iOi.exports=nOi()});var OSt=z((lHl,oOi)=>{"use strict";var Ybc=RNe(),{isPrimitive:Xbc,hasColor:Jbc}=iG(),USr=class extends Ybc{constructor(t){super(t),this.cursorHide()}async initialize(){let t=await this.resolve(this.initial,this.state);this.input=await this.cast(t),await super.initialize()}dispatch(t){return this.isValue(t)?(this.input=t,this.submit()):this.alert()}format(t){let{styles:r,state:s}=this;return s.submitted?r.success(t):r.primary(t)}cast(t){return this.isTrue(t)}isTrue(t){return/^[ty1]/i.test(t)}isFalse(t){return/^[fn0]/i.test(t)}isValue(t){return Xbc(t)&&(this.isTrue(t)||this.isFalse(t))}async hint(){if(this.state.status==="pending"){let t=await this.element("hint");return Jbc(t)?t:this.styles.muted(t)}}async render(){let{input:t,size:r}=this.state,s=await this.prefix(),a=await this.separator(),o=await this.message(),g=this.styles.muted(this.default),p=[s,o,g,a].filter(Boolean).join(" ");this.state.prompt=p;let f=await this.header(),m=this.value=this.cast(t),y=await this.format(m),B=await this.error()||await this.hint(),v=await this.footer();B&&!p.includes(B)&&(y+=" "+B),p+=" "+y,this.clear(r),this.write([f,p,v].filter(Boolean).join(` +`)),this.restore()}set value(t){super.value=t}get value(){return this.cast(super.value)}};oOi.exports=USr});var cOi=z((uHl,aOi)=>{"use strict";var Ubc=OSt(),KSr=class extends Ubc{constructor(t){super(t),this.default=this.options.default||(this.initial?"(Y/n)":"(y/N)")}};aOi.exports=KSr});var uOi=z((gHl,lOi)=>{"use strict";var Kbc=hae(),jbc=PSt(),DNe=jbc.prototype,jSr=class extends Kbc{constructor(t){super({...t,multiple:!0}),this.align=[this.options.align,"left"].find(r=>r!=null),this.emptyError="",this.values={}}dispatch(t,r){let s=this.focused,a=s.parent||{};return!s.editable&&!a.editable&&(t==="a"||t==="i")?super[t]():DNe.dispatch.call(this,t,r)}append(t,r){return DNe.append.call(this,t,r)}delete(t,r){return DNe.delete.call(this,t,r)}space(t){return this.focused.editable?this.append(t):super.space()}number(t){return this.focused.editable?this.append(t):super.number(t)}next(){return this.focused.editable?DNe.next.call(this):super.next()}prev(){return this.focused.editable?DNe.prev.call(this):super.prev()}async indicator(t,r){let s=t.indicator||"",a=t.editable?s:super.indicator(t,r);return await this.resolve(a,this.state,t,r)||""}indent(t){return t.role==="heading"?"":t.editable?" ":" "}async renderChoice(t,r){return t.indent="",t.editable?DNe.renderChoice.call(this,t,r):super.renderChoice(t,r)}error(){return""}footer(){return this.state.error}async validate(){let t=!0;for(let r of this.choices){if(typeof r.validate!="function"||r.role==="heading")continue;let s=r.parent?this.value[r.parent.name]:this.value;if(r.editable?s=r.value===r.name?r.initial||"":r.value:this.isDisabled(r)||(s=r.enabled===!0),t=await r.validate(s,this.state),t!==!0)break}return t!==!0&&(this.state.error=typeof t=="string"?t:"Invalid Input"),t}submit(){if(this.focused.newChoice===!0)return super.submit();if(this.choices.some(t=>t.newChoice))return this.alert();this.value={};for(let t of this.choices){let r=t.parent?this.value[t.parent.name]:this.value;if(t.role==="heading"){this.value[t.name]={};continue}t.editable?r[t.name]=t.value===t.name?t.initial||"":t.value:this.isDisabled(t)||(r[t.name]=t.enabled===!0)}return this.base.submit.call(this)}};lOi.exports=jSr});var gCe=z((AHl,gOi)=>{"use strict";var zbc=RNe(),qbc=TSr(),$bc=YSr(),{isPrimitive:eEc}=iG(),zSr=class extends zbc{constructor(t){super(t),this.initial=eEc(this.initial)?String(this.initial):"",this.initial&&this.cursorHide(),this.state.prevCursor=0,this.state.clipboard=[],this.keypressTimeout=this.options.keypressTimeout!==void 0?this.options.keypressTimeout:null}async keypress(t,r=t?qbc(t,{}):{}){let s=Date.now(),a=s-this.lastKeypress;this.lastKeypress=s;let o=r.name==="return"||r.name==="enter",g=this.state.prevKeypress,p;if(this.state.prevKeypress=r,this.keypressTimeout!=null&&o){if(a=this.input.length?this.alert():(this.moveCursor(1),this.render())}left(){return this.cursor<=0?this.alert():(this.moveCursor(-1),this.render())}isValue(t){return!!t}async format(t=this.value){let r=await this.resolve(this.initial,this.state);return this.state.submitted?this.styles.submitted(t||r):$bc(this,{input:t,initial:r,pos:this.cursor})}async render(){let t=this.state.size,r=await this.prefix(),s=await this.separator(),a=await this.message(),o=[r,a,s].filter(Boolean).join(" ");this.state.prompt=o;let g=await this.header(),p=await this.format(),f=await this.error()||await this.hint(),m=await this.footer();f&&!p.includes(f)&&(p+=" "+f),o+=" "+p,this.clear(t),this.write([g,o,m].filter(Boolean).join(` +`)),this.restore()}};gOi.exports=zSr});var dOi=z((dHl,AOi)=>{"use strict";var tEc=e=>e.filter((t,r)=>e.lastIndexOf(t)===r),QSt=e=>tEc(e).filter(Boolean);AOi.exports=(e,t={},r="")=>{let{past:s=[],present:a=""}=t,o,g;switch(e){case"prev":case"undo":return o=s.slice(0,s.length-1),g=s[s.length-1]||"",{past:QSt([r,...o]),present:g};case"next":case"redo":return o=s.slice(1),g=s[0]||"",{past:QSt([...o,r]),present:g};case"save":return{past:QSt([...s,r]),present:""};case"remove":return g=QSt(s.filter(p=>p!==r)),a="",g.length&&(a=g.pop()),{past:g,present:a};default:throw new Error(`Invalid action: "${e}"`)}}});var $Sr=z((pHl,fOi)=>{"use strict";var rEc=gCe(),pOi=dOi(),qSr=class extends rEc{constructor(t){super(t);let r=this.options.history;if(r&&r.store){let s=r.values||this.initial;this.autosave=!!r.autosave,this.store=r.store,this.data=this.store.get("values")||{past:[],present:s},this.initial=this.data.present||this.data.past[this.data.past.length-1]}}completion(t){return this.store?(this.data=pOi(t,this.data,this.input),this.data.present?(this.input=this.data.present,this.cursor=this.input.length,this.render()):this.alert()):this.alert()}altUp(){return this.completion("prev")}altDown(){return this.completion("next")}prev(){return this.save(),super.prev()}save(){this.store&&(this.data=pOi("save",this.data,this.input),this.store.set("values",this.data))}submit(){return this.store&&this.autosave===!0&&this.save(),super.submit()}};fOi.exports=qSr});var COi=z((fHl,IOi)=>{"use strict";var nEc=gCe(),ewr=class extends nEc{format(){return""}};IOi.exports=ewr});var hOi=z((IHl,mOi)=>{"use strict";var iEc=gCe(),twr=class extends iEc{constructor(t={}){super(t),this.sep=this.options.separator||/, */,this.initial=t.initial||""}split(t=this.value){return t?String(t).split(this.sep):[]}format(){let t=this.state.submitted?this.styles.primary:r=>r;return this.list.map(t).join(", ")}async submit(t){let r=this.state.error||await this.validate(this.list,this.state);return r!==!0?(this.state.error=r,super.submit()):(this.value=this.list,super.submit())}get list(){return this.split()}};mOi.exports=twr});var yOi=z((CHl,_Oi)=>{"use strict";var sEc=hae(),rwr=class extends sEc{constructor(t){super({...t,multiple:!0})}};_Oi.exports=rwr});var iwr=z((mHl,bOi)=>{"use strict";var oEc=gCe(),nwr=class extends oEc{constructor(t={}){super({style:"number",...t}),this.min=this.isValue(t.min)?this.toNumber(t.min):-1/0,this.max=this.isValue(t.max)?this.toNumber(t.max):1/0,this.delay=t.delay!=null?t.delay:1e3,this.float=t.float!==!1,this.round=t.round===!0||t.float===!1,this.major=t.major||10,this.minor=t.minor||1,this.initial=t.initial!=null?t.initial:"",this.input=String(this.initial),this.cursor=this.input.length,this.cursorShow()}append(t){return!/[-+.]/.test(t)||t==="."&&this.input.includes(".")?this.alert("invalid number"):super.append(t)}number(t){return super.append(t)}next(){return this.input&&this.input!==this.initial?this.alert():this.isValue(this.initial)?(this.input=this.initial,this.cursor=String(this.initial).length,this.render()):this.alert()}up(t){let r=t||this.minor,s=this.toNumber(this.input);return s>this.max+r?this.alert():(this.input=`${s+r}`,this.render())}down(t){let r=t||this.minor,s=this.toNumber(this.input);return sthis.isValue(r));return this.value=this.toNumber(t||0),super.submit()}};bOi.exports=nwr});var BOi=z((hHl,EOi)=>{EOi.exports=iwr()});var SOi=z((_Hl,vOi)=>{"use strict";var aEc=gCe(),swr=class extends aEc{constructor(t){super(t),this.cursorShow()}format(t=this.input){return this.keypressed?(this.state.submitted?this.styles.primary:this.styles.muted)(this.symbols.asterisk.repeat(t.length)):""}};vOi.exports=swr});var NOi=z((yHl,TOi)=>{"use strict";var cEc=fO(),lEc=F4e(),wOi=iG(),owr=class extends lEc{constructor(t={}){super(t),this.widths=[].concat(t.messageWidth||50),this.align=[].concat(t.align||"left"),this.linebreak=t.linebreak||!1,this.edgeLength=t.edgeLength||3,this.newline=t.newline||` `;let r=t.startNumber||1;typeof this.scale=="number"&&(this.scaleKey=!1,this.scale=Array(this.scale).fill(0).map((s,a)=>({name:a+r})))}async reset(){return this.tableized=!1,await super.reset(),this.render()}tableize(){if(this.tableized===!0)return;this.tableized=!0;let t=0;for(let r of this.choices){t=Math.max(t,r.message.length),r.scaleIndex=r.initial||2,r.scale=[];for(let s=0;s=this.scale.length-1?this.alert():(t.scaleIndex++,this.render())}left(){let t=this.focused;return t.scaleIndex<=0?this.alert():(t.scaleIndex--,this.render())}indent(){return""}format(){return this.state.submitted?this.choices.map(r=>this.styles.info(r.index)).join(", "):""}pointer(){return""}renderScaleKey(){return this.scaleKey===!1||this.state.submitted?"":["",...this.scale.map(s=>` ${s.name} - ${s.message}`)].map(s=>this.styles.muted(s)).join(` -`)}renderScaleHeading(t){let r=this.scale.map(f=>f.name);typeof this.options.renderScaleHeading=="function"&&(r=this.options.renderScaleHeading.call(this,t));let s=this.scaleLength-r.join("").length,a=Math.round(s/(r.length-1)),g=r.map(f=>this.styles.strong(f)).join(" ".repeat(a)),p=" ".repeat(this.widths[0]);return this.margin[3]+p+this.margin[1]+g}scaleIndicator(t,r,s){if(typeof this.options.scaleIndicator=="function")return this.options.scaleIndicator.call(this,t,r,s);let a=t.scaleIndex===r.index;return r.disabled?this.styles.hint(this.symbols.radio.disabled):a?this.styles.success(this.symbols.radio.on):this.symbols.radio.off}renderScale(t,r){let s=t.scale.map(o=>this.scaleIndicator(t,o,r)),a=this.term==="Hyper"?"":" ";return s.join(a+this.symbols.line.repeat(this.edgeLength))}async renderChoice(t,r){await this.onChoice(t,r);let s=this.index===r,a=await this.pointer(t,r),o=await t.hint;o&&!_Oi.hasColor(o)&&(o=this.styles.muted(o));let g=T=>this.margin[3]+T.replace(/\s+$/,"").padEnd(this.widths[0]," "),p=this.newline,f=this.indent(t),m=await this.resolve(t.message,this.state,t,r),y=await this.renderScale(t,r),B=this.margin[1]+this.margin[3];this.scaleLength=Xbc(y).length,this.widths[0]=Math.min(this.widths[0],this.width-this.scaleLength-B.length);let G=_Oi.wordWrap(m,{width:this.widths[0],newline:p}).split(` -`).map(T=>g(T)+this.margin[1]);return s&&(y=this.styles.info(y),G=G.map(T=>this.styles.info(T))),G[0]+=y,this.linebreak&&G.push(""),[f+a,G.join(` +`)}renderScaleHeading(t){let r=this.scale.map(f=>f.name);typeof this.options.renderScaleHeading=="function"&&(r=this.options.renderScaleHeading.call(this,t));let s=this.scaleLength-r.join("").length,a=Math.round(s/(r.length-1)),g=r.map(f=>this.styles.strong(f)).join(" ".repeat(a)),p=" ".repeat(this.widths[0]);return this.margin[3]+p+this.margin[1]+g}scaleIndicator(t,r,s){if(typeof this.options.scaleIndicator=="function")return this.options.scaleIndicator.call(this,t,r,s);let a=t.scaleIndex===r.index;return r.disabled?this.styles.hint(this.symbols.radio.disabled):a?this.styles.success(this.symbols.radio.on):this.symbols.radio.off}renderScale(t,r){let s=t.scale.map(o=>this.scaleIndicator(t,o,r)),a=this.term==="Hyper"?"":" ";return s.join(a+this.symbols.line.repeat(this.edgeLength))}async renderChoice(t,r){await this.onChoice(t,r);let s=this.index===r,a=await this.pointer(t,r),o=await t.hint;o&&!wOi.hasColor(o)&&(o=this.styles.muted(o));let g=T=>this.margin[3]+T.replace(/\s+$/,"").padEnd(this.widths[0]," "),p=this.newline,f=this.indent(t),m=await this.resolve(t.message,this.state,t,r),y=await this.renderScale(t,r),B=this.margin[1]+this.margin[3];this.scaleLength=cEc(y).length,this.widths[0]=Math.min(this.widths[0],this.width-this.scaleLength-B.length);let k=wOi.wordWrap(m,{width:this.widths[0],newline:p}).split(` +`).map(T=>g(T)+this.margin[1]);return s&&(y=this.styles.info(y),k=k.map(T=>this.styles.info(T))),k[0]+=y,this.linebreak&&k.push(""),[f+a,k.join(` `)].filter(Boolean)}async renderChoices(){if(this.state.submitted)return"";this.tableize();let t=this.visible.map(async(a,o)=>await this.renderChoice(a,o)),r=await Promise.all(t),s=await this.renderScaleHeading();return this.margin[0]+[s,...r.map(a=>a.join(" "))].join(` -`)}async render(){let{submitted:t,size:r}=this.state,s=await this.prefix(),a=await this.separator(),o=await this.message(),g="";this.options.promptLine!==!1&&(g=[s,o,a,""].join(" "),this.state.prompt=g);let p=await this.header(),f=await this.format(),m=await this.renderScaleKey(),y=await this.error()||await this.hint(),B=await this.renderChoices(),v=await this.footer(),G=this.emptyError;f&&(g+=f),y&&!g.includes(y)&&(g+=" "+y),t&&!f&&!B.trim()&&this.multiple&&G!=null&&(g+=this.styles.danger(G)),this.clear(r),this.write([p,g,m,B,v].filter(Boolean).join(` -`)),this.state.submitted||this.write(this.margin[2]),this.restore()}submit(){this.value={};for(let t of this.choices)this.value[t.name]=t.scaleIndex;return this.base.submit.call(this)}};yOi.exports=ewr});var vOi=z((eHl,BOi)=>{"use strict";var EOi=AO(),Ubc=(e="")=>typeof e=="string"?e.replace(/^['"]|['"]$/g,""):"",rwr=class{constructor(t){this.name=t.key,this.field=t.field||{},this.value=Ubc(t.initial||this.field.initial||""),this.message=t.message||this.name,this.cursor=0,this.input="",this.lines=[]}},Kbc=async(e={},t={},r=s=>s)=>{let s=new Set,a=e.fields||[],o=e.template,g=[],p=[],f=[],m=1;typeof o=="function"&&(o=await o());let y=-1,B=()=>o[++y],v=()=>o[y+1],G=T=>{T.line=m,g.push(T)};for(G({type:"bos",value:""});yge.name===U.key);U.field=a.find(ge=>ge.name===U.key),ae||(ae=new rwr(U),p.push(ae)),ae.lines.push(U.line-1);continue}let O=g[g.length-1];O.type==="text"&&O.line===m?O.value+=T:G({type:"text",value:T})}return G({type:"eos",value:""}),{input:o,tabstops:g,unique:s,keys:f,items:p}};BOi.exports=async e=>{let t=e.options,r=new Set(t.required===!0?[]:t.required||[]),s={...t.values,...t.initial},{tabstops:a,items:o,keys:g}=await Kbc(t,s),p=twr("result",e,t),f=twr("format",e,t),m=twr("validate",e,t,!0),y=e.isValue.bind(e);return async(B={},v=!1)=>{let G=0;B.required=r,B.items=o,B.keys=g,B.output="";let T=async(le,ae,ge,fe)=>{let pe=await m(le,ae,ge,fe);return pe===!1?"Invalid field "+ge.name:pe};for(let le of a){let ae=le.value,ge=le.key;if(le.type!=="template"){ae&&(B.output+=ae);continue}if(le.type==="template"){let fe=o.find(ke=>ke.name===ge);t.required===!0&&B.required.add(fe.name);let pe=[fe.input,B.values[fe.value],fe.value,ae].find(y),be=(fe.field||{}).message||le.inner;if(v){let ke=await T(B.values[ge],B,fe,G);if(ke&&typeof ke=="string"||ke===!1){B.invalid.set(ge,ke);continue}B.invalid.delete(ge);let x=await p(B.values[ge],B,fe,G);B.output+=EOi(x);continue}fe.placeholder=!1;let Te=ae;ae=await f(ae,B,fe,G),pe!==ae?(B.values[ge]=pe,ae=e.styles.typing(pe),B.missing.delete(be)):(B.values[ge]=void 0,pe=`<${be}>`,ae=e.styles.primary(pe),fe.placeholder=!0,B.required.has(ge)&&B.missing.add(be)),B.missing.has(be)&&B.validating&&(ae=e.styles.warning(pe)),B.invalid.has(ge)&&B.validating&&(ae=e.styles.danger(pe)),G===B.index&&(Te!==ae?ae=e.styles.underline(ae):ae=e.styles.heading(EOi(ae))),G++}ae&&(B.output+=ae)}let O=B.output.split(` +`)}async render(){let{submitted:t,size:r}=this.state,s=await this.prefix(),a=await this.separator(),o=await this.message(),g="";this.options.promptLine!==!1&&(g=[s,o,a,""].join(" "),this.state.prompt=g);let p=await this.header(),f=await this.format(),m=await this.renderScaleKey(),y=await this.error()||await this.hint(),B=await this.renderChoices(),v=await this.footer(),k=this.emptyError;f&&(g+=f),y&&!g.includes(y)&&(g+=" "+y),t&&!f&&!B.trim()&&this.multiple&&k!=null&&(g+=this.styles.danger(k)),this.clear(r),this.write([p,g,m,B,v].filter(Boolean).join(` +`)),this.state.submitted||this.write(this.margin[2]),this.restore()}submit(){this.value={};for(let t of this.choices)this.value[t.name]=t.scaleIndex;return this.base.submit.call(this)}};TOi.exports=owr});var xOi=z((bHl,DOi)=>{"use strict";var ROi=fO(),uEc=(e="")=>typeof e=="string"?e.replace(/^['"]|['"]$/g,""):"",cwr=class{constructor(t){this.name=t.key,this.field=t.field||{},this.value=uEc(t.initial||this.field.initial||""),this.message=t.message||this.name,this.cursor=0,this.input="",this.lines=[]}},gEc=async(e={},t={},r=s=>s)=>{let s=new Set,a=e.fields||[],o=e.template,g=[],p=[],f=[],m=1;typeof o=="function"&&(o=await o());let y=-1,B=()=>o[++y],v=()=>o[y+1],k=T=>{T.line=m,g.push(T)};for(k({type:"bos",value:""});yge.name===U.key);U.field=a.find(ge=>ge.name===U.key),ae||(ae=new cwr(U),p.push(ae)),ae.lines.push(U.line-1);continue}let O=g[g.length-1];O.type==="text"&&O.line===m?O.value+=T:k({type:"text",value:T})}return k({type:"eos",value:""}),{input:o,tabstops:g,unique:s,keys:f,items:p}};DOi.exports=async e=>{let t=e.options,r=new Set(t.required===!0?[]:t.required||[]),s={...t.values,...t.initial},{tabstops:a,items:o,keys:g}=await gEc(t,s),p=awr("result",e,t),f=awr("format",e,t),m=awr("validate",e,t,!0),y=e.isValue.bind(e);return async(B={},v=!1)=>{let k=0;B.required=r,B.items=o,B.keys=g,B.output="";let T=async(le,ae,ge,fe)=>{let pe=await m(le,ae,ge,fe);return pe===!1?"Invalid field "+ge.name:pe};for(let le of a){let ae=le.value,ge=le.key;if(le.type!=="template"){ae&&(B.output+=ae);continue}if(le.type==="template"){let fe=o.find(ke=>ke.name===ge);t.required===!0&&B.required.add(fe.name);let pe=[fe.input,B.values[fe.value],fe.value,ae].find(y),be=(fe.field||{}).message||le.inner;if(v){let ke=await T(B.values[ge],B,fe,k);if(ke&&typeof ke=="string"||ke===!1){B.invalid.set(ge,ke);continue}B.invalid.delete(ge);let x=await p(B.values[ge],B,fe,k);B.output+=ROi(x);continue}fe.placeholder=!1;let Te=ae;ae=await f(ae,B,fe,k),pe!==ae?(B.values[ge]=pe,ae=e.styles.typing(pe),B.missing.delete(be)):(B.values[ge]=void 0,pe=`<${be}>`,ae=e.styles.primary(pe),fe.placeholder=!0,B.required.has(ge)&&B.missing.add(be)),B.missing.has(be)&&B.validating&&(ae=e.styles.warning(pe)),B.invalid.has(ge)&&B.validating&&(ae=e.styles.danger(pe)),k===B.index&&(Te!==ae?ae=e.styles.underline(ae):ae=e.styles.heading(ROi(ae))),k++}ae&&(B.output+=ae)}let O=B.output.split(` `).map(le=>" "+le),X=o.length,U=0;for(let le of o)B.invalid.has(le.name)&&le.lines.forEach(ae=>{O[ae][0]===" "&&(O[ae]=B.styles.danger(B.symbols.bullet)+O[ae].slice(1))}),e.isValue(B.values[le.name])&&U++;return B.completed=(U/X*100).toFixed(0),B.output=O.join(` -`),B.output}};function twr(e,t,r,s){return(a,o,g,p)=>typeof g.field[e]=="function"?g.field[e].call(t,a,o,g,p):[s,a].find(f=>t.isValue(f))}});var wOi=z((tHl,SOi)=>{"use strict";var jbc=AO(),zbc=vOi(),qbc=TNe(),nwr=class extends qbc{constructor(t){super(t),this.cursorHide(),this.reset(!0)}async initialize(){this.interpolate=await zbc(this),await super.initialize()}async reset(t){this.state.keys=[],this.state.invalid=new Map,this.state.missing=new Set,this.state.completed=0,this.state.values={},t!==!0&&(await this.initialize(),await this.render())}moveCursor(t){let r=this.getItem();this.cursor+=t,r.cursor+=t}dispatch(t,r){if(!r.code&&!r.ctrl&&t!=null&&this.getItem()){this.append(t,r);return}this.alert()}append(t,r){let s=this.getItem(),a=s.input.slice(0,this.cursor),o=s.input.slice(this.cursor);this.input=s.input=`${a}${t}${o}`,this.moveCursor(1),this.render()}delete(){let t=this.getItem();if(this.cursor<=0||!t.input)return this.alert();let r=t.input.slice(this.cursor),s=t.input.slice(0,this.cursor-1);this.input=t.input=`${s}${r}`,this.moveCursor(-1),this.render()}increment(t){return t>=this.state.keys.length-1?0:t+1}decrement(t){return t<=0?this.state.keys.length-1:t-1}first(){this.state.index=0,this.render()}last(){this.state.index=this.state.keys.length-1,this.render()}right(){if(this.cursor>=this.input.length)return this.alert();this.moveCursor(1),this.render()}left(){if(this.cursor<=0)return this.alert();this.moveCursor(-1),this.render()}prev(){this.state.index=this.decrement(this.state.index),this.getItem(),this.render()}next(){this.state.index=this.increment(this.state.index),this.getItem(),this.render()}up(){this.prev()}down(){this.next()}format(t){let r=this.state.completed<100?this.styles.warning:this.styles.success;return this.state.submitted===!0&&this.state.completed!==100&&(r=this.styles.danger),r(`${this.state.completed}% completed`)}async render(){let{index:t,keys:r=[],submitted:s,size:a}=this.state,o=[this.options.newline,` -`].find(le=>le!=null),g=await this.prefix(),p=await this.separator(),f=await this.message(),m=[g,f,p].filter(Boolean).join(" ");this.state.prompt=m;let y=await this.header(),B=await this.error()||"",v=await this.hint()||"",G=s?"":await this.interpolate(this.state),T=this.state.key=r[t]||"",O=await this.format(T),X=await this.footer();O&&(m+=" "+O),v&&!O&&this.state.completed===0&&(m+=" "+v),this.clear(a);let U=[y,m,G,X,B.trim()];this.write(U.filter(Boolean).join(o)),this.restore()}getItem(t){let{items:r,keys:s,index:a}=this.state,o=r.find(g=>g.name===s[a]);return o&&o.input!=null&&(this.input=o.input,this.cursor=o.cursor),o}async submit(){typeof this.interpolate!="function"&&await this.initialize(),await this.interpolate(this.state,!0);let{invalid:t,missing:r,output:s,values:a}=this.state;if(t.size){let p="";for(let[f,m]of t)p+=`Invalid ${f}: ${m} -`;return this.state.error=p,super.submit()}if(r.size)return this.state.error="Required: "+[...r.keys()].join(", "),super.submit();let g=jbc(s).split(` +`),B.output}};function awr(e,t,r,s){return(a,o,g,p)=>typeof g.field[e]=="function"?g.field[e].call(t,a,o,g,p):[s,a].find(f=>t.isValue(f))}});var GOi=z((EHl,kOi)=>{"use strict";var AEc=fO(),dEc=xOi(),pEc=RNe(),lwr=class extends pEc{constructor(t){super(t),this.cursorHide(),this.reset(!0)}async initialize(){this.interpolate=await dEc(this),await super.initialize()}async reset(t){this.state.keys=[],this.state.invalid=new Map,this.state.missing=new Set,this.state.completed=0,this.state.values={},t!==!0&&(await this.initialize(),await this.render())}moveCursor(t){let r=this.getItem();this.cursor+=t,r.cursor+=t}dispatch(t,r){if(!r.code&&!r.ctrl&&t!=null&&this.getItem()){this.append(t,r);return}this.alert()}append(t,r){let s=this.getItem(),a=s.input.slice(0,this.cursor),o=s.input.slice(this.cursor);this.input=s.input=`${a}${t}${o}`,this.moveCursor(1),this.render()}delete(){let t=this.getItem();if(this.cursor<=0||!t.input)return this.alert();let r=t.input.slice(this.cursor),s=t.input.slice(0,this.cursor-1);this.input=t.input=`${s}${r}`,this.moveCursor(-1),this.render()}increment(t){return t>=this.state.keys.length-1?0:t+1}decrement(t){return t<=0?this.state.keys.length-1:t-1}first(){this.state.index=0,this.render()}last(){this.state.index=this.state.keys.length-1,this.render()}right(){if(this.cursor>=this.input.length)return this.alert();this.moveCursor(1),this.render()}left(){if(this.cursor<=0)return this.alert();this.moveCursor(-1),this.render()}prev(){this.state.index=this.decrement(this.state.index),this.getItem(),this.render()}next(){this.state.index=this.increment(this.state.index),this.getItem(),this.render()}up(){this.prev()}down(){this.next()}format(t){let r=this.state.completed<100?this.styles.warning:this.styles.success;return this.state.submitted===!0&&this.state.completed!==100&&(r=this.styles.danger),r(`${this.state.completed}% completed`)}async render(){let{index:t,keys:r=[],submitted:s,size:a}=this.state,o=[this.options.newline,` +`].find(le=>le!=null),g=await this.prefix(),p=await this.separator(),f=await this.message(),m=[g,f,p].filter(Boolean).join(" ");this.state.prompt=m;let y=await this.header(),B=await this.error()||"",v=await this.hint()||"",k=s?"":await this.interpolate(this.state),T=this.state.key=r[t]||"",O=await this.format(T),X=await this.footer();O&&(m+=" "+O),v&&!O&&this.state.completed===0&&(m+=" "+v),this.clear(a);let U=[y,m,k,X,B.trim()];this.write(U.filter(Boolean).join(o)),this.restore()}getItem(t){let{items:r,keys:s,index:a}=this.state,o=r.find(g=>g.name===s[a]);return o&&o.input!=null&&(this.input=o.input,this.cursor=o.cursor),o}async submit(){typeof this.interpolate!="function"&&await this.initialize(),await this.interpolate(this.state,!0);let{invalid:t,missing:r,output:s,values:a}=this.state;if(t.size){let p="";for(let[f,m]of t)p+=`Invalid ${f}: ${m} +`;return this.state.error=p,super.submit()}if(r.size)return this.state.error="Required: "+[...r.keys()].join(", "),super.submit();let g=AEc(s).split(` `).map(p=>p.slice(1)).join(` -`);return this.value={values:a,result:g},super.submit()}};SOi.exports=nwr});var NOi=z((rHl,TOi)=>{"use strict";var $bc="(Use + to sort)",eEc=uae(),iwr=class extends eEc{constructor(t){super({...t,reorder:!1,sort:!0,multiple:!0}),this.state.hint=[this.options.hint,$bc].find(this.isValue.bind(this))}indicator(){return""}async renderChoice(t,r){let s=await super.renderChoice(t,r),a=this.symbols.identicalTo+" ",o=this.index===r&&this.sorting?this.styles.muted(a):" ";return this.options.drag===!1&&(o=""),this.options.numbered===!0?o+`${r+1} - `+s:o+s}get selected(){return this.choices}submit(){return this.value=this.choices.map(t=>t.value),super.submit()}};TOi.exports=iwr});var DOi=z((nHl,ROi)=>{"use strict";var tEc=k4e(),swr=class extends tEc{constructor(t={}){if(super(t),this.emptyError=t.emptyError||"No items were selected",this.term=process.env.TERM_PROGRAM,!this.options.header){let r=["","4 - Strongly Agree","3 - Agree","2 - Neutral","1 - Disagree","0 - Strongly Disagree",""];r=r.map(s=>this.styles.muted(s)),this.state.header=r.join(` - `)}}async toChoices(...t){if(this.createdScales)return!1;this.createdScales=!0;let r=await super.toChoices(...t);for(let s of r)s.scale=rEc(5,this.options),s.scaleIdx=2;return r}dispatch(){this.alert()}space(){let t=this.focused,r=t.scale[t.scaleIdx],s=r.selected;return t.scale.forEach(a=>a.selected=!1),r.selected=!s,this.render()}indicator(){return""}pointer(){return""}separator(){return this.styles.muted(this.symbols.ellipsis)}right(){let t=this.focused;return t.scaleIdx>=t.scale.length-1?this.alert():(t.scaleIdx++,this.render())}left(){let t=this.focused;return t.scaleIdx<=0?this.alert():(t.scaleIdx--,this.render())}indent(){return" "}async renderChoice(t,r){await this.onChoice(t,r);let s=this.index===r,a=this.term==="Hyper",o=a?9:8,g=a?"":" ",p=this.symbols.line.repeat(o),f=" ".repeat(o+(a?0:1)),m=ae=>(ae?this.styles.success("\u25C9"):"\u25EF")+g,y=r+1+".",B=s?this.styles.heading:this.styles.noop,v=await this.resolve(t.message,this.state,t,r),G=this.indent(t),T=G+t.scale.map((ae,ge)=>m(ge===t.scaleIdx)).join(p),O=ae=>ae===t.scaleIdx?B(ae):ae,X=G+t.scale.map((ae,ge)=>O(ge)).join(f),U=()=>[y,v].filter(Boolean).join(" "),le=()=>[U(),T,X," "].filter(Boolean).join(` +`);return this.value={values:a,result:g},super.submit()}};kOi.exports=lwr});var ZOi=z((BHl,FOi)=>{"use strict";var fEc="(Use + to sort)",IEc=hae(),uwr=class extends IEc{constructor(t){super({...t,reorder:!1,sort:!0,multiple:!0}),this.state.hint=[this.options.hint,fEc].find(this.isValue.bind(this))}indicator(){return""}async renderChoice(t,r){let s=await super.renderChoice(t,r),a=this.symbols.identicalTo+" ",o=this.index===r&&this.sorting?this.styles.muted(a):" ";return this.options.drag===!1&&(o=""),this.options.numbered===!0?o+`${r+1} - `+s:o+s}get selected(){return this.choices}submit(){return this.value=this.choices.map(t=>t.value),super.submit()}};FOi.exports=uwr});var VOi=z((vHl,LOi)=>{"use strict";var CEc=F4e(),gwr=class extends CEc{constructor(t={}){if(super(t),this.emptyError=t.emptyError||"No items were selected",this.term=process.env.TERM_PROGRAM,!this.options.header){let r=["","4 - Strongly Agree","3 - Agree","2 - Neutral","1 - Disagree","0 - Strongly Disagree",""];r=r.map(s=>this.styles.muted(s)),this.state.header=r.join(` + `)}}async toChoices(...t){if(this.createdScales)return!1;this.createdScales=!0;let r=await super.toChoices(...t);for(let s of r)s.scale=mEc(5,this.options),s.scaleIdx=2;return r}dispatch(){this.alert()}space(){let t=this.focused,r=t.scale[t.scaleIdx],s=r.selected;return t.scale.forEach(a=>a.selected=!1),r.selected=!s,this.render()}indicator(){return""}pointer(){return""}separator(){return this.styles.muted(this.symbols.ellipsis)}right(){let t=this.focused;return t.scaleIdx>=t.scale.length-1?this.alert():(t.scaleIdx++,this.render())}left(){let t=this.focused;return t.scaleIdx<=0?this.alert():(t.scaleIdx--,this.render())}indent(){return" "}async renderChoice(t,r){await this.onChoice(t,r);let s=this.index===r,a=this.term==="Hyper",o=a?9:8,g=a?"":" ",p=this.symbols.line.repeat(o),f=" ".repeat(o+(a?0:1)),m=ae=>(ae?this.styles.success("\u25C9"):"\u25EF")+g,y=r+1+".",B=s?this.styles.heading:this.styles.noop,v=await this.resolve(t.message,this.state,t,r),k=this.indent(t),T=k+t.scale.map((ae,ge)=>m(ge===t.scaleIdx)).join(p),O=ae=>ae===t.scaleIdx?B(ae):ae,X=k+t.scale.map((ae,ge)=>O(ge)).join(f),U=()=>[y,v].filter(Boolean).join(" "),le=()=>[U(),T,X," "].filter(Boolean).join(` `);return s&&(T=this.styles.cyan(T),X=this.styles.cyan(X)),le()}async renderChoices(){if(this.state.submitted)return"";let t=this.visible.map(async(s,a)=>await this.renderChoice(s,a)),r=await Promise.all(t);return r.length||r.push(this.styles.danger("No matching choices")),r.join(` `)}format(){return this.state.submitted?this.choices.map(r=>this.styles.info(r.scaleIdx)).join(", "):""}async render(){let{submitted:t,size:r}=this.state,s=await this.prefix(),a=await this.separator(),o=await this.message(),g=[s,o,a].filter(Boolean).join(" ");this.state.prompt=g;let p=await this.header(),f=await this.format(),m=await this.error()||await this.hint(),y=await this.renderChoices(),B=await this.footer();(f||!m)&&(g+=" "+f),m&&!g.includes(m)&&(g+=" "+m),t&&!f&&!y&&this.multiple&&this.type!=="form"&&(g+=this.styles.danger(this.emptyError)),this.clear(r),this.write([g,p,y,B].filter(Boolean).join(` -`)),this.restore()}submit(){this.value={};for(let t of this.choices)this.value[t.name]=t.scaleIdx;return this.base.submit.call(this)}};function rEc(e,t={}){if(Array.isArray(t.scale))return t.scale.map(s=>({...s}));let r=[];for(let s=1;s{xOi.exports=JSr()});var FOi=z((sHl,GOi)=>{"use strict";var nEc=VSt(),owr=class extends nEc{async initialize(){await super.initialize(),this.value=this.initial=this.resolve(this.options.initial),this.disabled=this.options.disabled||"no",this.enabled=this.options.enabled||"yes",await this.render()}reset(){this.value=this.initial,this.render()}delete(){this.alert()}toggle(){this.value=!this.value,this.render()}enable(){if(this.value===!0)return this.alert();this.value=!0,this.render()}disable(){if(this.value===!1)return this.alert();this.value=!1,this.render()}up(){this.toggle()}down(){this.toggle()}right(){this.toggle()}left(){this.toggle()}next(){this.toggle()}prev(){this.toggle()}dispatch(t="",r){switch(t.toLowerCase()){case" ":return this.toggle();case"1":case"y":case"t":return this.enable();case"0":case"n":case"f":return this.disable();default:return this.alert()}}format(){let t=s=>this.styles.primary.underline(s);return[this.value?this.disabled:t(this.disabled),this.value?t(this.enabled):this.enabled].join(this.styles.muted(" / "))}async render(){let{size:t}=this.state,r=await this.header(),s=await this.prefix(),a=await this.separator(),o=await this.message(),g=await this.format(),p=await this.error()||await this.hint(),f=await this.footer(),m=[s,o,a,g].join(" ");this.state.prompt=m,p&&!m.includes(p)&&(m+=" "+p),this.clear(t),this.write([r,m,f].filter(Boolean).join(` -`)),this.write(this.margin[2]),this.restore()}};GOi.exports=owr});var LOi=z((oHl,ZOi)=>{"use strict";var iEc=uae(),awr=class extends iEc{constructor(t){if(super(t),typeof this.options.correctChoice!="number"||this.options.correctChoice<0)throw new Error("Please specify the index of the correct answer from the list of choices")}async toChoices(t,r){let s=await super.toChoices(t,r);if(s.length<2)throw new Error("Please give at least two choices to the user");if(this.options.correctChoice>s.length)throw new Error("Please specify the index of the correct answer from the list of choices");return s}check(t){return t.index===this.options.correctChoice}async result(t){return{selectedAnswer:t,correctAnswer:this.options.choices[this.options.correctChoice].value,correct:await this.check(this.state)}}};ZOi.exports=awr});var WOi=z(cwr=>{"use strict";var VOi=$k(),QT=(e,t)=>{VOi.defineExport(cwr,e,t),VOi.defineExport(cwr,e.toLowerCase(),t)};QT("AutoComplete",()=>HPi());QT("BasicAuth",()=>qPi());QT("Confirm",()=>tOi());QT("Editable",()=>nOi());QT("Form",()=>LSt());QT("Input",()=>JSr());QT("Invisible",()=>uOi());QT("List",()=>AOi());QT("MultiSelect",()=>pOi());QT("Numeral",()=>COi());QT("Password",()=>hOi());QT("Scale",()=>bOi());QT("Select",()=>uae());QT("Snippet",()=>wOi());QT("Sort",()=>NOi());QT("Survey",()=>DOi());QT("Text",()=>kOi());QT("Toggle",()=>FOi());QT("Quiz",()=>LOi())});var OOi=z((cHl,POi)=>{POi.exports={ArrayPrompt:k4e(),AuthPrompt:OSr(),BooleanPrompt:VSt(),NumberPrompt:qSr(),StringPrompt:lCe()}});var F4e=z((lHl,QOi)=>{"use strict";var MOi=Dt("assert"),uwr=Dt("events"),gae=$k(),K5=class extends uwr{constructor(t,r){super(),this.options=gae.merge({},t),this.answers={...r}}register(t,r){if(gae.isObject(t)){for(let a of Object.keys(t))this.register(a,t[a]);return this}MOi.equal(typeof r,"function","expected a function");let s=t.toLowerCase();return r.prototype instanceof this.Prompt?this.prompts[s]=r:this.prompts[s]=r(this.Prompt,this),this}async prompt(t=[]){for(let r of[].concat(t))try{typeof r=="function"&&(r=await r.call(this)),await this.ask(gae.merge({},this.options,r))}catch(s){return Promise.reject(s)}return this.answers}async ask(t){typeof t=="function"&&(t=await t.call(this));let r=gae.merge({},this.options,t),{type:s,name:a}=t,{set:o,get:g}=gae;if(typeof s=="function"&&(s=await s.call(this,t,this.answers)),!s)return this.answers[a];s==="number"&&(s="numeral"),MOi(this.prompts[s],`Prompt "${s}" is not registered`);let p=new this.prompts[s](r),f=g(this.answers,a);p.state.answers=this.answers,p.enquirer=this,a&&p.on("submit",y=>{this.emit("answer",a,y,p),o(this.answers,a,y)});let m=p.emit.bind(p);return p.emit=(...y)=>(this.emit.call(this,...y),m(...y)),this.emit("prompt",p,this),r.autofill&&f!=null?(p.value=p.input=f,r.autofill==="show"&&await p.submit()):f=p.value=await p.run(),f}use(t){return t.call(this,this),this}set Prompt(t){this._Prompt=t}get Prompt(){return this._Prompt||this.constructor.Prompt}get prompts(){return this.constructor.prompts}static set Prompt(t){this._Prompt=t}static get Prompt(){return this._Prompt||TNe()}static get prompts(){return WOi()}static get types(){return OOi()}static get prompt(){let t=(r,...s)=>{let a=new this(...s),o=a.emit.bind(a);return a.emit=(...g)=>(t.emit(...g),o(...g)),a.prompt(r)};return gae.mixinEmitter(t,new uwr),t}};gae.mixinEmitter(K5,new uwr);var lwr=K5.prompts;for(let e of Object.keys(lwr)){let t=e.toLowerCase(),r=s=>new lwr[e](s).run();K5.prompt[t]=r,K5[t]=r,K5[e]||Reflect.defineProperty(K5,e,{get:()=>lwr[e]})}var G4e=e=>{gae.defineExport(K5,e,()=>K5.types[e])};G4e("ArrayPrompt");G4e("AuthPrompt");G4e("BooleanPrompt");G4e("NumberPrompt");G4e("StringPrompt");QOi.exports=K5});var W4e=z(YT=>{"use strict";Object.defineProperty(YT,"__esModule",{value:!0});YT.Strategy=YT.WorkspaceModifier=YT.Modifier=YT.Target=void 0;YT.getModifier=aEc;YT.extractRangeModifier=HOi;YT.applyModifier=lEc;YT.toWorkspaceModifier=XOi;YT.makeWorkspaceDescriptor=JOi;YT.findProjectDescriptors=UOi;YT.extractDescriptorFromPath=uEc;YT.getSuggestedDescriptors=gEc;YT.fetchDescriptorFrom=gwr;var sEc=(Ma(),Ai(Oa)),L4e=Bn(),fE=Bn(),PSt=Ro(),YOi=sEc.__importDefault(Lh()),oEc="workspace:",V4e;(function(e){e.REGULAR="dependencies",e.DEVELOPMENT="devDependencies",e.PEER="peerDependencies"})(V4e||(YT.Target=V4e={}));var dae;(function(e){e.CARET="^",e.TILDE="~",e.EXACT=""})(dae||(YT.Modifier=dae={}));var Z4e;(function(e){e.CARET="^",e.TILDE="~",e.EXACT="*"})(Z4e||(YT.WorkspaceModifier=Z4e={}));var Aae;(function(e){e.KEEP="keep",e.REUSE="reuse",e.PROJECT="project",e.LATEST="latest",e.CACHE="cache"})(Aae||(YT.Strategy=Aae={}));function aEc(e,t){return e.exact?dae.EXACT:e.caret?dae.CARET:e.tilde?dae.TILDE:t.configuration.get("defaultSemverRangePrefix")}var cEc=/^([\^~]?)[0-9]+(?:\.[0-9]+){0,2}(?:-\S+)?$/;function HOi(e,{project:t}){let r=e.match(cEc);return r?r[1]:t.configuration.get("defaultSemverRangePrefix")}function lEc(e,t){let{protocol:r,source:s,params:a,selector:o}=fE.structUtils.parseRange(e.range);return YOi.default.valid(o)&&(o=`${t}${e.range}`),fE.structUtils.makeDescriptor(e,fE.structUtils.makeRange({protocol:r,source:s,params:a,selector:o}))}function XOi(e){switch(e){case dae.CARET:return Z4e.CARET;case dae.TILDE:return Z4e.TILDE;case dae.EXACT:return Z4e.EXACT;default:throw new Error(`Assertion failed: Unknown modifier: "${e}"`)}}function JOi(e,t){return fE.structUtils.makeDescriptor(e.anchoredDescriptor,`${oEc}${XOi(t)}`)}async function UOi(e,{project:t,target:r}){let s=new Map,a=o=>{let g=s.get(o.descriptorHash);return g||s.set(o.descriptorHash,g={descriptor:o,locators:[]}),g};for(let o of t.workspaces)if(r===V4e.PEER){let g=o.manifest.peerDependencies.get(e.identHash);g!==void 0&&a(g).locators.push(o.anchoredLocator)}else{let g=o.manifest.dependencies.get(e.identHash),p=o.manifest.devDependencies.get(e.identHash);r===V4e.DEVELOPMENT?p!==void 0?a(p).locators.push(o.anchoredLocator):g!==void 0&&a(g).locators.push(o.anchoredLocator):g!==void 0?a(g).locators.push(o.anchoredLocator):p!==void 0&&a(p).locators.push(o.anchoredLocator)}return s}async function uEc(e,{cwd:t,workspace:r}){return await AEc(async s=>{PSt.ppath.isAbsolute(e)||(e=PSt.ppath.relative(r.cwd,PSt.ppath.resolve(t,e)),e.match(/^\.{0,2}\//)||(e=`./${e}`));let{project:a}=r,o=await gwr(fE.structUtils.makeIdent(null,"archive"),e,{project:r.project,cache:s,workspace:r});if(!o)throw new Error("Assertion failed: The descriptor should have been found");let g=new L4e.ThrowReport,p=a.configuration.makeResolver(),f=a.configuration.makeFetcher(),m={checksums:a.storedChecksums,project:a,cache:s,fetcher:f,report:g,resolver:p},y=p.bindDescriptor(o,r.anchoredLocator,m),B=fE.structUtils.convertDescriptorToLocator(y),v=await f.fetch(B,m),G=await L4e.Manifest.find(v.prefixPath,{baseFs:v.packageFs});if(!G.name)throw new Error("Target path doesn't have a name");return fE.structUtils.makeDescriptor(G.name,e)})}async function gEc(e,{project:t,workspace:r,cache:s,target:a,fixed:o,modifier:g,strategies:p,maxResults:f=1/0}){if(!(f>=0))throw new Error(`Invalid maxResults (${f})`);let[m,y]=e.range!=="unknown"?o||fE.semverUtils.validRange(e.range)||!e.range.match(/^[a-z0-9._-]+$/i)?[e.range,"latest"]:["unknown",e.range]:["unknown","latest"];if(m!=="unknown")return{suggestions:[{descriptor:e,name:`Use ${fE.structUtils.prettyDescriptor(t.configuration,e)}`,reason:"(unambiguous explicit request)"}],rejections:[]};let B=typeof r<"u"&&r!==null&&r.manifest[a].get(e.identHash)||null,v=[],G=[],T=async O=>{try{await O()}catch(X){G.push(X)}};for(let O of p){if(v.length>=f)break;switch(O){case Aae.KEEP:await T(async()=>{B&&v.push({descriptor:B,name:`Keep ${fE.structUtils.prettyDescriptor(t.configuration,B)}`,reason:"(no changes)"})});break;case Aae.REUSE:await T(async()=>{for(let{descriptor:X,locators:U}of(await UOi(e,{project:t,target:a})).values()){if(U.length===1&&U[0].locatorHash===r.anchoredLocator.locatorHash&&p.includes(Aae.KEEP))continue;let le=`(originally used by ${fE.structUtils.prettyLocator(t.configuration,U[0])}`;le+=U.length>1?` and ${U.length-1} other${U.length>2?"s":""})`:")",v.push({descriptor:X,name:`Reuse ${fE.structUtils.prettyDescriptor(t.configuration,X)}`,reason:le})}});break;case Aae.CACHE:await T(async()=>{for(let X of t.storedDescriptors.values())X.identHash===e.identHash&&v.push({descriptor:X,name:`Reuse ${fE.structUtils.prettyDescriptor(t.configuration,X)}`,reason:"(already used somewhere in the lockfile)"})});break;case Aae.PROJECT:await T(async()=>{if(r.manifest.name!==null&&e.identHash===r.manifest.name.identHash)return;let X=t.tryWorkspaceByIdent(e);if(X===null)return;let U=JOi(X,g);v.push({descriptor:U,name:`Attach ${fE.structUtils.prettyDescriptor(t.configuration,U)}`,reason:`(local workspace at ${fE.formatUtils.pretty(t.configuration,X.relativeCwd,fE.formatUtils.Type.PATH)})`})});break;case Aae.LATEST:{let X=t.configuration.get("enableNetwork"),U=t.configuration.get("enableOfflineMode");await T(async()=>{if(a===V4e.PEER)v.push({descriptor:fE.structUtils.makeDescriptor(e,"*"),name:"Use *",reason:"(catch-all peer dependency pattern)"});else if(!X&&!U)v.push({descriptor:null,name:"Resolve from latest",reason:fE.formatUtils.pretty(t.configuration,"(unavailable because enableNetwork is toggled off)","grey")});else{let le=await gwr(e,y,{project:t,cache:s,workspace:r,modifier:g});le&&v.push({descriptor:le,name:`Use ${fE.structUtils.prettyDescriptor(t.configuration,le)}`,reason:`(resolved from ${U?"the cache":"latest"})`})}})}break}}return{suggestions:v.slice(0,f),rejections:G.slice(0,f)}}async function gwr(e,t,{project:r,cache:s,workspace:a,preserveModifier:o=!0,modifier:g}){let p=r.configuration.normalizeDependency(fE.structUtils.makeDescriptor(e,t)),f=new L4e.ThrowReport,m=r.configuration.makeFetcher(),y=r.configuration.makeResolver(),B={project:r,fetcher:m,cache:s,checksums:r.storedChecksums,report:f,cacheOptions:{skipIntegrityCheck:!0}},v={...B,resolver:y,fetchOptions:B},G=y.bindDescriptor(p,a.anchoredLocator,v),T=await y.getCandidates(G,{},v);if(T.length===0)return null;let O=T[0],{protocol:X,source:U,params:le,selector:ae}=fE.structUtils.parseRange(fE.structUtils.convertToManifestRange(O.reference));if(X===r.configuration.get("defaultProtocol")&&(X=null),YOi.default.valid(ae)){let ge=ae;if(typeof g<"u")ae=g+ae;else if(o!==!1){let he=typeof o=="string"?o:p.range;ae=HOi(he,{project:r})+ae}let fe=fE.structUtils.makeDescriptor(O,fE.structUtils.makeRange({protocol:X,source:U,params:le,selector:ae}));(await y.getCandidates(r.configuration.normalizeDependency(fe),{},v)).length!==1&&(ae=ge)}return fE.structUtils.makeDescriptor(O,fE.structUtils.makeRange({protocol:X,source:U,params:le,selector:ae}))}async function AEc(e){return await PSt.xfs.mktempPromise(async t=>{let r=L4e.Configuration.create(t);return r.useWithSource(t,{enableMirror:!1,compressionLevel:0},t,{overwrite:!0}),await e(new L4e.Cache(t,{configuration:r,check:!1,immutable:!1}))})}});var qOi=z(Awr=>{"use strict";Object.defineProperty(Awr,"__esModule",{value:!0});var zOi=(Ma(),Ai(Oa)),KOi=nl(),d3=Bn(),jOi=Bn(),j5=Bn(),lv=(Fl(),Ai(dg)),dEc=F4e(),pEc=zOi.__importStar((_L(),Ai(hL))),eG=zOi.__importStar(W4e()),P4e=class extends KOi.BaseCommand{constructor(){super(...arguments),this.json=lv.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.fixed=lv.Option.Boolean("-F,--fixed",!1,{description:"Store dependency tags as-is instead of resolving them"}),this.exact=lv.Option.Boolean("-E,--exact",!1,{description:"Don't use any semver modifier on the resolved range"}),this.tilde=lv.Option.Boolean("-T,--tilde",!1,{description:"Use the `~` semver modifier on the resolved range"}),this.caret=lv.Option.Boolean("-C,--caret",!1,{description:"Use the `^` semver modifier on the resolved range"}),this.dev=lv.Option.Boolean("-D,--dev",!1,{description:"Add a package as a dev dependency"}),this.peer=lv.Option.Boolean("-P,--peer",!1,{description:"Add a package as a peer dependency"}),this.optional=lv.Option.Boolean("-O,--optional",!1,{description:"Add / upgrade a package to an optional regular / peer dependency"}),this.preferDev=lv.Option.Boolean("--prefer-dev",!1,{description:"Add / upgrade a package to a dev dependency"}),this.interactive=lv.Option.Boolean("-i,--interactive",{description:"Reuse the specified package from other workspaces in the project"}),this.cached=lv.Option.Boolean("--cached",!1,{description:"Reuse the highest version already used somewhere within the project"}),this.mode=lv.Option.String("--mode",{description:"Change what artifacts installs generate",validator:pEc.isEnum(jOi.InstallMode)}),this.silent=lv.Option.Boolean("--silent",{hidden:!0}),this.packages=lv.Option.Rest()}async execute(){let t=await d3.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await jOi.Project.find(t,this.context.cwd),a=await d3.Cache.find(t);if(!s)throw new KOi.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=this.fixed,g=t.isInteractive({interactive:this.interactive,stdout:this.context.stdout}),p=g||t.get("preferReuse"),f=eG.getModifier(this,r),m=[p?eG.Strategy.REUSE:void 0,eG.Strategy.PROJECT,this.cached?eG.Strategy.CACHE:void 0,eG.Strategy.LATEST].filter(X=>typeof X<"u"),y=g?1/0:1,B=await Promise.all(this.packages.map(async X=>{let U=X.match(/^\.{0,2}\//)?await eG.extractDescriptorFromPath(X,{cwd:this.context.cwd,workspace:s}):j5.structUtils.tryParseDescriptor(X),le=X.match(/^(https?:|git@github)/);if(le)throw new lv.UsageError(`It seems you are trying to add a package using a ${d3.formatUtils.pretty(t,`${le[0]}...`,d3.formatUtils.Type.RANGE)} url; we now require package names to be explicitly specified. -Try running the command again with the package name prefixed: ${d3.formatUtils.pretty(t,"yarn add",d3.formatUtils.Type.CODE)} ${d3.formatUtils.pretty(t,j5.structUtils.makeDescriptor(j5.structUtils.makeIdent(null,"my-package"),`${le[0]}...`),d3.formatUtils.Type.DESCRIPTOR)}`);if(!U)throw new lv.UsageError(`The ${d3.formatUtils.pretty(t,X,d3.formatUtils.Type.CODE)} string didn't match the required format (package-name@range). Did you perhaps forget to explicitly reference the package name?`);let ae=fEc(s,U,{dev:this.dev,peer:this.peer,preferDev:this.preferDev,optional:this.optional});return await Promise.all(ae.map(async fe=>{let pe=await eG.getSuggestedDescriptors(U,{project:r,workspace:s,cache:a,fixed:o,target:fe,modifier:f,strategies:m,maxResults:y});return{request:U,suggestedDescriptors:pe,target:fe}}))})).then(X=>X.flat()),v=await d3.LightReport.start({configuration:t,stdout:this.context.stdout,suggestInstall:!1},async X=>{for(let{request:U,suggestedDescriptors:{suggestions:le,rejections:ae}}of B)if(le.filter(fe=>fe.descriptor!==null).length===0){let[fe]=ae;if(typeof fe>"u")throw new Error("Assertion failed: Expected an error to have been set");r.configuration.get("enableNetwork")?X.reportError(d3.MessageName.CANT_SUGGEST_RESOLUTIONS,`${j5.structUtils.prettyDescriptor(t,U)} can't be resolved to a satisfying range`):X.reportError(d3.MessageName.CANT_SUGGEST_RESOLUTIONS,`${j5.structUtils.prettyDescriptor(t,U)} can't be resolved to a satisfying range (note: network resolution has been disabled)`),X.reportSeparator(),X.reportExceptionOnce(fe)}});if(v.hasErrors())return v.exitCode();let G=!1,T=[],O=[];for(let{suggestedDescriptors:{suggestions:X},target:U}of B){let le,ae=X.filter(he=>he.descriptor!==null),ge=ae[0].descriptor,fe=ae.every(he=>j5.structUtils.areDescriptorsEqual(he.descriptor,ge));ae.length===1||fe?le=ge:(G=!0,{answer:le}=await(0,dEc.prompt)({type:"select",name:"answer",message:"Which range do you want to use?",choices:X.map(({descriptor:he,name:be,reason:Te})=>he?{name:be,hint:Te,descriptor:he}:{name:be,hint:Te,disabled:!0}),onCancel:()=>process.exit(130),result(he){return this.find(he,"descriptor")},stdin:this.context.stdin,stdout:this.context.stdout}));let pe=s.manifest[U].get(le.identHash);(typeof pe>"u"||pe.descriptorHash!==le.descriptorHash)&&(s.manifest[U].set(le.identHash,le),this.optional&&(U==="dependencies"?s.manifest.ensureDependencyMeta({...le,range:"unknown"}).optional=!0:U==="peerDependencies"&&(s.manifest.ensurePeerDependencyMeta({...le,range:"unknown"}).optional=!0)),typeof pe>"u"?T.push([s,U,le,m]):O.push([s,U,pe,le]))}return await t.triggerMultipleHooks(X=>X.afterWorkspaceDependencyAddition,T),await t.triggerMultipleHooks(X=>X.afterWorkspaceDependencyReplacement,O),G&&this.context.stdout.write(` -`),await r.installWithNewReport({json:this.json,stdout:this.context.stdout,quiet:this.context.quiet},{cache:a,mode:this.mode})}};P4e.paths=[["add"]];P4e.usage=lv.Command.Usage({description:"add dependencies to the project",details:"\n This command adds a package to the package.json for the nearest workspace.\n\n - If it didn't exist before, the package will by default be added to the regular `dependencies` field, but this behavior can be overriden thanks to the `-D,--dev` flag (which will cause the dependency to be added to the `devDependencies` field instead) and the `-P,--peer` flag (which will do the same but for `peerDependencies`).\n\n - If the package was already listed in your dependencies, it will by default be upgraded whether it's part of your `dependencies` or `devDependencies` (it won't ever update `peerDependencies`, though).\n\n - If set, the `--prefer-dev` flag will operate as a more flexible `-D,--dev` in that it will add the package to your `devDependencies` if it isn't already listed in either `dependencies` or `devDependencies`, but it will also happily upgrade your `dependencies` if that's what you already use (whereas `-D,--dev` would throw an exception).\n\n - If set, the `-O,--optional` flag will add the package to the `optionalDependencies` field and, in combination with the `-P,--peer` flag, it will add the package as an optional peer dependency. If the package was already listed in your `dependencies`, it will be upgraded to `optionalDependencies`. If the package was already listed in your `peerDependencies`, in combination with the `-P,--peer` flag, it will be upgraded to an optional peer dependency: `\"peerDependenciesMeta\": { \"\": { \"optional\": true } }`\n\n - If the added package doesn't specify a range at all its `latest` tag will be resolved and the returned version will be used to generate a new semver range (using the `^` modifier by default unless otherwise configured via the `defaultSemverRangePrefix` configuration, or the `~` modifier if `-T,--tilde` is specified, or no modifier at all if `-E,--exact` is specified). Two exceptions to this rule: the first one is that if the package is a workspace then its local version will be used, and the second one is that if you use `-P,--peer` the default range will be `*` and won't be resolved at all.\n\n - If the added package specifies a range (such as `^1.0.0`, `latest`, or `rc`), Yarn will add this range as-is in the resulting package.json entry (in particular, tags such as `rc` will be encoded as-is rather than being converted into a semver range).\n\n If the `--cached` option is used, Yarn will preferably reuse the highest version already used somewhere within the project, even if through a transitive dependency.\n\n If the `-i,--interactive` option is used (or if the `preferInteractive` settings is toggled on) the command will first try to check whether other workspaces in the project use the specified package and, if so, will offer to reuse them.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n For a compilation of all the supported protocols, please consult the dedicated page from our website: https://yarnpkg.com/protocols.\n ",examples:[["Add a regular package to the current workspace","$0 add lodash"],["Add a specific version for a package to the current workspace","$0 add lodash@1.2.3"],["Add a package from a GitHub repository (the master branch) to the current workspace using a URL","$0 add lodash@https://github.com/lodash/lodash"],["Add a package from a GitHub repository (the master branch) to the current workspace using the GitHub protocol","$0 add lodash@github:lodash/lodash"],["Add a package from a GitHub repository (the master branch) to the current workspace using the GitHub protocol (shorthand)","$0 add lodash@lodash/lodash"],["Add a package from a specific branch of a GitHub repository to the current workspace using the GitHub protocol (shorthand)","$0 add lodash-es@lodash/lodash#es"],["Add a local package (gzipped tarball format) to the current workspace","$0 add local-package-name@file:../path/to/local-package-name-v0.1.2.tgz"]]});Awr.default=P4e;function fEc(e,t,{dev:r,peer:s,preferDev:a,optional:o}){let g=e.manifest[eG.Target.REGULAR].has(t.identHash),p=e.manifest[eG.Target.DEVELOPMENT].has(t.identHash),f=e.manifest[eG.Target.PEER].has(t.identHash);if((r||s)&&g)throw new lv.UsageError(`Package "${j5.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a regular dependency - remove the -D,-P flags or remove it from your dependencies first`);if(!r&&!s&&f)throw new lv.UsageError(`Package "${j5.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a peer dependency - use either of -D or -P, or remove it from your peer dependencies first`);if(o&&p)throw new lv.UsageError(`Package "${j5.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a dev dependency - remove the -O flag or remove it from your dev dependencies first`);if(o&&!s&&f)throw new lv.UsageError(`Package "${j5.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a peer dependency - remove the -O flag or add the -P flag or remove it from your peer dependencies first`);if((r||a)&&o)throw new lv.UsageError(`Package "${j5.structUtils.prettyIdent(e.project.configuration,t)}" cannot simultaneously be a dev dependency and an optional dependency`);let m=[];return s&&m.push(eG.Target.PEER),(r||a)&&m.push(eG.Target.DEVELOPMENT),o&&m.push(eG.Target.REGULAR),m.length>0?m:p?[eG.Target.DEVELOPMENT]:f?[eG.Target.PEER]:[eG.Target.REGULAR]}});var $Oi=z(pwr=>{"use strict";Object.defineProperty(pwr,"__esModule",{value:!0});var IEc=nl(),dwr=Bn(),O4e=Bn(),M4e=(Fl(),Ai(dg)),Q4e=class extends IEc.BaseCommand{constructor(){super(...arguments),this.verbose=M4e.Option.Boolean("-v,--verbose",!1,{description:"Print both the binary name and the locator of the package that provides the binary"}),this.json=M4e.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.name=M4e.Option.String({required:!1})}async execute(){let t=await dwr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,locator:s}=await dwr.Project.find(t,this.context.cwd);if(await r.restoreInstallState(),this.name){let g=(await O4e.scriptUtils.getPackageAccessibleBinaries(s,{project:r})).get(this.name);if(!g)throw new M4e.UsageError(`Couldn't find a binary named "${this.name}" for package "${O4e.structUtils.prettyLocator(t,s)}"`);let[,p]=g;return this.context.stdout.write(`${p} -`),0}return(await dwr.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async o=>{let g=await O4e.scriptUtils.getPackageAccessibleBinaries(s,{project:r}),f=Array.from(g.keys()).reduce((m,y)=>Math.max(m,y.length),0);for(let[m,[y,B]]of g)o.reportJson({name:m,source:O4e.structUtils.stringifyIdent(y),path:B});if(this.verbose)for(let[m,[y]]of g)o.reportInfo(null,`${m.padEnd(f," ")} ${O4e.structUtils.prettyLocator(t,y)}`);else for(let m of g.keys())o.reportInfo(null,m)})).exitCode()}};Q4e.paths=[["bin"]];Q4e.usage=M4e.Command.Usage({description:"get the path to a binary script",details:` +`)),this.restore()}submit(){this.value={};for(let t of this.choices)this.value[t.name]=t.scaleIdx;return this.base.submit.call(this)}};function mEc(e,t={}){if(Array.isArray(t.scale))return t.scale.map(s=>({...s}));let r=[];for(let s=1;s{WOi.exports=$Sr()});var QOi=z((wHl,OOi)=>{"use strict";var hEc=OSt(),Awr=class extends hEc{async initialize(){await super.initialize(),this.value=this.initial=this.resolve(this.options.initial),this.disabled=this.options.disabled||"no",this.enabled=this.options.enabled||"yes",await this.render()}reset(){this.value=this.initial,this.render()}delete(){this.alert()}toggle(){this.value=!this.value,this.render()}enable(){if(this.value===!0)return this.alert();this.value=!0,this.render()}disable(){if(this.value===!1)return this.alert();this.value=!1,this.render()}up(){this.toggle()}down(){this.toggle()}right(){this.toggle()}left(){this.toggle()}next(){this.toggle()}prev(){this.toggle()}dispatch(t="",r){switch(t.toLowerCase()){case" ":return this.toggle();case"1":case"y":case"t":return this.enable();case"0":case"n":case"f":return this.disable();default:return this.alert()}}format(){let t=s=>this.styles.primary.underline(s);return[this.value?this.disabled:t(this.disabled),this.value?t(this.enabled):this.enabled].join(this.styles.muted(" / "))}async render(){let{size:t}=this.state,r=await this.header(),s=await this.prefix(),a=await this.separator(),o=await this.message(),g=await this.format(),p=await this.error()||await this.hint(),f=await this.footer(),m=[s,o,a,g].join(" ");this.state.prompt=m,p&&!m.includes(p)&&(m+=" "+p),this.clear(t),this.write([r,m,f].filter(Boolean).join(` +`)),this.write(this.margin[2]),this.restore()}};OOi.exports=Awr});var HOi=z((THl,MOi)=>{"use strict";var _Ec=hae(),dwr=class extends _Ec{constructor(t){if(super(t),typeof this.options.correctChoice!="number"||this.options.correctChoice<0)throw new Error("Please specify the index of the correct answer from the list of choices")}async toChoices(t,r){let s=await super.toChoices(t,r);if(s.length<2)throw new Error("Please give at least two choices to the user");if(this.options.correctChoice>s.length)throw new Error("Please specify the index of the correct answer from the list of choices");return s}check(t){return t.index===this.options.correctChoice}async result(t){return{selectedAnswer:t,correctAnswer:this.options.choices[this.options.correctChoice].value,correct:await this.check(this.state)}}};MOi.exports=dwr});var XOi=z(pwr=>{"use strict";var YOi=iG(),HT=(e,t)=>{YOi.defineExport(pwr,e,t),YOi.defineExport(pwr,e.toLowerCase(),t)};HT("AutoComplete",()=>qPi());HT("BasicAuth",()=>sOi());HT("Confirm",()=>cOi());HT("Editable",()=>uOi());HT("Form",()=>PSt());HT("Input",()=>$Sr());HT("Invisible",()=>COi());HT("List",()=>hOi());HT("MultiSelect",()=>yOi());HT("Numeral",()=>BOi());HT("Password",()=>SOi());HT("Scale",()=>NOi());HT("Select",()=>hae());HT("Snippet",()=>GOi());HT("Sort",()=>ZOi());HT("Survey",()=>VOi());HT("Text",()=>POi());HT("Toggle",()=>QOi());HT("Quiz",()=>HOi())});var UOi=z((RHl,JOi)=>{JOi.exports={ArrayPrompt:F4e(),AuthPrompt:JSr(),BooleanPrompt:OSt(),NumberPrompt:iwr(),StringPrompt:gCe()}});var L4e=z((DHl,jOi)=>{"use strict";var KOi=xt("assert"),Iwr=xt("events"),_ae=iG(),qY=class extends Iwr{constructor(t,r){super(),this.options=_ae.merge({},t),this.answers={...r}}register(t,r){if(_ae.isObject(t)){for(let a of Object.keys(t))this.register(a,t[a]);return this}KOi.equal(typeof r,"function","expected a function");let s=t.toLowerCase();return r.prototype instanceof this.Prompt?this.prompts[s]=r:this.prompts[s]=r(this.Prompt,this),this}async prompt(t=[]){for(let r of[].concat(t))try{typeof r=="function"&&(r=await r.call(this)),await this.ask(_ae.merge({},this.options,r))}catch(s){return Promise.reject(s)}return this.answers}async ask(t){typeof t=="function"&&(t=await t.call(this));let r=_ae.merge({},this.options,t),{type:s,name:a}=t,{set:o,get:g}=_ae;if(typeof s=="function"&&(s=await s.call(this,t,this.answers)),!s)return this.answers[a];s==="number"&&(s="numeral"),KOi(this.prompts[s],`Prompt "${s}" is not registered`);let p=new this.prompts[s](r),f=g(this.answers,a);p.state.answers=this.answers,p.enquirer=this,a&&p.on("submit",y=>{this.emit("answer",a,y,p),o(this.answers,a,y)});let m=p.emit.bind(p);return p.emit=(...y)=>(this.emit.call(this,...y),m(...y)),this.emit("prompt",p,this),r.autofill&&f!=null?(p.value=p.input=f,r.autofill==="show"&&await p.submit()):f=p.value=await p.run(),f}use(t){return t.call(this,this),this}set Prompt(t){this._Prompt=t}get Prompt(){return this._Prompt||this.constructor.Prompt}get prompts(){return this.constructor.prompts}static set Prompt(t){this._Prompt=t}static get Prompt(){return this._Prompt||RNe()}static get prompts(){return XOi()}static get types(){return UOi()}static get prompt(){let t=(r,...s)=>{let a=new this(...s),o=a.emit.bind(a);return a.emit=(...g)=>(t.emit(...g),o(...g)),a.prompt(r)};return _ae.mixinEmitter(t,new Iwr),t}};_ae.mixinEmitter(qY,new Iwr);var fwr=qY.prompts;for(let e of Object.keys(fwr)){let t=e.toLowerCase(),r=s=>new fwr[e](s).run();qY.prompt[t]=r,qY[t]=r,qY[e]||Reflect.defineProperty(qY,e,{get:()=>fwr[e]})}var Z4e=e=>{_ae.defineExport(qY,e,()=>qY.types[e])};Z4e("ArrayPrompt");Z4e("AuthPrompt");Z4e("BooleanPrompt");Z4e("NumberPrompt");Z4e("StringPrompt");jOi.exports=qY});var O4e=z(YT=>{"use strict";Object.defineProperty(YT,"__esModule",{value:!0});YT.Strategy=YT.WorkspaceModifier=YT.Modifier=YT.Target=void 0;YT.getModifier=EEc;YT.extractRangeModifier=qOi;YT.applyModifier=vEc;YT.toWorkspaceModifier=$Oi;YT.makeWorkspaceDescriptor=eQi;YT.findProjectDescriptors=tQi;YT.extractDescriptorFromPath=SEc;YT.getSuggestedDescriptors=wEc;YT.fetchDescriptorFrom=Cwr;var yEc=(Oa(),Ai(Pa)),W4e=Bn(),CE=Bn(),MSt=No(),zOi=yEc.__importDefault(Vh()),bEc="workspace:",P4e;(function(e){e.REGULAR="dependencies",e.DEVELOPMENT="devDependencies",e.PEER="peerDependencies"})(P4e||(YT.Target=P4e={}));var bae;(function(e){e.CARET="^",e.TILDE="~",e.EXACT=""})(bae||(YT.Modifier=bae={}));var V4e;(function(e){e.CARET="^",e.TILDE="~",e.EXACT="*"})(V4e||(YT.WorkspaceModifier=V4e={}));var yae;(function(e){e.KEEP="keep",e.REUSE="reuse",e.PROJECT="project",e.LATEST="latest",e.CACHE="cache"})(yae||(YT.Strategy=yae={}));function EEc(e,t){return e.exact?bae.EXACT:e.caret?bae.CARET:e.tilde?bae.TILDE:t.configuration.get("defaultSemverRangePrefix")}var BEc=/^([\^~]?)[0-9]+(?:\.[0-9]+){0,2}(?:-\S+)?$/;function qOi(e,{project:t}){let r=e.match(BEc);return r?r[1]:t.configuration.get("defaultSemverRangePrefix")}function vEc(e,t){let{protocol:r,source:s,params:a,selector:o}=CE.structUtils.parseRange(e.range);return zOi.default.valid(o)&&(o=`${t}${e.range}`),CE.structUtils.makeDescriptor(e,CE.structUtils.makeRange({protocol:r,source:s,params:a,selector:o}))}function $Oi(e){switch(e){case bae.CARET:return V4e.CARET;case bae.TILDE:return V4e.TILDE;case bae.EXACT:return V4e.EXACT;default:throw new Error(`Assertion failed: Unknown modifier: "${e}"`)}}function eQi(e,t){return CE.structUtils.makeDescriptor(e.anchoredDescriptor,`${bEc}${$Oi(t)}`)}async function tQi(e,{project:t,target:r}){let s=new Map,a=o=>{let g=s.get(o.descriptorHash);return g||s.set(o.descriptorHash,g={descriptor:o,locators:[]}),g};for(let o of t.workspaces)if(r===P4e.PEER){let g=o.manifest.peerDependencies.get(e.identHash);g!==void 0&&a(g).locators.push(o.anchoredLocator)}else{let g=o.manifest.dependencies.get(e.identHash),p=o.manifest.devDependencies.get(e.identHash);r===P4e.DEVELOPMENT?p!==void 0?a(p).locators.push(o.anchoredLocator):g!==void 0&&a(g).locators.push(o.anchoredLocator):g!==void 0?a(g).locators.push(o.anchoredLocator):p!==void 0&&a(p).locators.push(o.anchoredLocator)}return s}async function SEc(e,{cwd:t,workspace:r}){return await TEc(async s=>{MSt.ppath.isAbsolute(e)||(e=MSt.ppath.relative(r.cwd,MSt.ppath.resolve(t,e)),e.match(/^\.{0,2}\//)||(e=`./${e}`));let{project:a}=r,o=await Cwr(CE.structUtils.makeIdent(null,"archive"),e,{project:r.project,cache:s,workspace:r});if(!o)throw new Error("Assertion failed: The descriptor should have been found");let g=new W4e.ThrowReport,p=a.configuration.makeResolver(),f=a.configuration.makeFetcher(),m={checksums:a.storedChecksums,project:a,cache:s,fetcher:f,report:g,resolver:p},y=p.bindDescriptor(o,r.anchoredLocator,m),B=CE.structUtils.convertDescriptorToLocator(y),v=await f.fetch(B,m),k=await W4e.Manifest.find(v.prefixPath,{baseFs:v.packageFs});if(!k.name)throw new Error("Target path doesn't have a name");return CE.structUtils.makeDescriptor(k.name,e)})}async function wEc(e,{project:t,workspace:r,cache:s,target:a,fixed:o,modifier:g,strategies:p,maxResults:f=1/0}){if(!(f>=0))throw new Error(`Invalid maxResults (${f})`);let[m,y]=e.range!=="unknown"?o||CE.semverUtils.validRange(e.range)||!e.range.match(/^[a-z0-9._-]+$/i)?[e.range,"latest"]:["unknown",e.range]:["unknown","latest"];if(m!=="unknown")return{suggestions:[{descriptor:e,name:`Use ${CE.structUtils.prettyDescriptor(t.configuration,e)}`,reason:"(unambiguous explicit request)"}],rejections:[]};let B=typeof r<"u"&&r!==null&&r.manifest[a].get(e.identHash)||null,v=[],k=[],T=async O=>{try{await O()}catch(X){k.push(X)}};for(let O of p){if(v.length>=f)break;switch(O){case yae.KEEP:await T(async()=>{B&&v.push({descriptor:B,name:`Keep ${CE.structUtils.prettyDescriptor(t.configuration,B)}`,reason:"(no changes)"})});break;case yae.REUSE:await T(async()=>{for(let{descriptor:X,locators:U}of(await tQi(e,{project:t,target:a})).values()){if(U.length===1&&U[0].locatorHash===r.anchoredLocator.locatorHash&&p.includes(yae.KEEP))continue;let le=`(originally used by ${CE.structUtils.prettyLocator(t.configuration,U[0])}`;le+=U.length>1?` and ${U.length-1} other${U.length>2?"s":""})`:")",v.push({descriptor:X,name:`Reuse ${CE.structUtils.prettyDescriptor(t.configuration,X)}`,reason:le})}});break;case yae.CACHE:await T(async()=>{for(let X of t.storedDescriptors.values())X.identHash===e.identHash&&v.push({descriptor:X,name:`Reuse ${CE.structUtils.prettyDescriptor(t.configuration,X)}`,reason:"(already used somewhere in the lockfile)"})});break;case yae.PROJECT:await T(async()=>{if(r.manifest.name!==null&&e.identHash===r.manifest.name.identHash)return;let X=t.tryWorkspaceByIdent(e);if(X===null)return;let U=eQi(X,g);v.push({descriptor:U,name:`Attach ${CE.structUtils.prettyDescriptor(t.configuration,U)}`,reason:`(local workspace at ${CE.formatUtils.pretty(t.configuration,X.relativeCwd,CE.formatUtils.Type.PATH)})`})});break;case yae.LATEST:{let X=t.configuration.get("enableNetwork"),U=t.configuration.get("enableOfflineMode");await T(async()=>{if(a===P4e.PEER)v.push({descriptor:CE.structUtils.makeDescriptor(e,"*"),name:"Use *",reason:"(catch-all peer dependency pattern)"});else if(!X&&!U)v.push({descriptor:null,name:"Resolve from latest",reason:CE.formatUtils.pretty(t.configuration,"(unavailable because enableNetwork is toggled off)","grey")});else{let le=await Cwr(e,y,{project:t,cache:s,workspace:r,modifier:g});le&&v.push({descriptor:le,name:`Use ${CE.structUtils.prettyDescriptor(t.configuration,le)}`,reason:`(resolved from ${U?"the cache":"latest"})`})}})}break}}return{suggestions:v.slice(0,f),rejections:k.slice(0,f)}}async function Cwr(e,t,{project:r,cache:s,workspace:a,preserveModifier:o=!0,modifier:g}){let p=r.configuration.normalizeDependency(CE.structUtils.makeDescriptor(e,t)),f=new W4e.ThrowReport,m=r.configuration.makeFetcher(),y=r.configuration.makeResolver(),B={project:r,fetcher:m,cache:s,checksums:r.storedChecksums,report:f,cacheOptions:{skipIntegrityCheck:!0}},v={...B,resolver:y,fetchOptions:B},k=y.bindDescriptor(p,a.anchoredLocator,v),T=await y.getCandidates(k,{},v);if(T.length===0)return null;let O=T[0],{protocol:X,source:U,params:le,selector:ae}=CE.structUtils.parseRange(CE.structUtils.convertToManifestRange(O.reference));if(X===r.configuration.get("defaultProtocol")&&(X=null),zOi.default.valid(ae)){let ge=ae;if(typeof g<"u")ae=g+ae;else if(o!==!1){let he=typeof o=="string"?o:p.range;ae=qOi(he,{project:r})+ae}let fe=CE.structUtils.makeDescriptor(O,CE.structUtils.makeRange({protocol:X,source:U,params:le,selector:ae}));(await y.getCandidates(r.configuration.normalizeDependency(fe),{},v)).length!==1&&(ae=ge)}return CE.structUtils.makeDescriptor(O,CE.structUtils.makeRange({protocol:X,source:U,params:le,selector:ae}))}async function TEc(e){return await MSt.xfs.mktempPromise(async t=>{let r=W4e.Configuration.create(t);return r.useWithSource(t,{enableMirror:!1,compressionLevel:0},t,{overwrite:!0}),await e(new W4e.Cache(t,{configuration:r,check:!1,immutable:!1}))})}});var sQi=z(mwr=>{"use strict";Object.defineProperty(mwr,"__esModule",{value:!0});var iQi=(Oa(),Ai(Pa)),rQi=il(),I3=Bn(),nQi=Bn(),$Y=Bn(),uv=(Zl(),Ai(pg)),NEc=L4e(),REc=iQi.__importStar((yL(),Ai(_L))),sG=iQi.__importStar(O4e()),Q4e=class extends rQi.BaseCommand{constructor(){super(...arguments),this.json=uv.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.fixed=uv.Option.Boolean("-F,--fixed",!1,{description:"Store dependency tags as-is instead of resolving them"}),this.exact=uv.Option.Boolean("-E,--exact",!1,{description:"Don't use any semver modifier on the resolved range"}),this.tilde=uv.Option.Boolean("-T,--tilde",!1,{description:"Use the `~` semver modifier on the resolved range"}),this.caret=uv.Option.Boolean("-C,--caret",!1,{description:"Use the `^` semver modifier on the resolved range"}),this.dev=uv.Option.Boolean("-D,--dev",!1,{description:"Add a package as a dev dependency"}),this.peer=uv.Option.Boolean("-P,--peer",!1,{description:"Add a package as a peer dependency"}),this.optional=uv.Option.Boolean("-O,--optional",!1,{description:"Add / upgrade a package to an optional regular / peer dependency"}),this.preferDev=uv.Option.Boolean("--prefer-dev",!1,{description:"Add / upgrade a package to a dev dependency"}),this.interactive=uv.Option.Boolean("-i,--interactive",{description:"Reuse the specified package from other workspaces in the project"}),this.cached=uv.Option.Boolean("--cached",!1,{description:"Reuse the highest version already used somewhere within the project"}),this.mode=uv.Option.String("--mode",{description:"Change what artifacts installs generate",validator:REc.isEnum(nQi.InstallMode)}),this.silent=uv.Option.Boolean("--silent",{hidden:!0}),this.packages=uv.Option.Rest()}async execute(){let t=await I3.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await nQi.Project.find(t,this.context.cwd),a=await I3.Cache.find(t);if(!s)throw new rQi.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=this.fixed,g=t.isInteractive({interactive:this.interactive,stdout:this.context.stdout}),p=g||t.get("preferReuse"),f=sG.getModifier(this,r),m=[p?sG.Strategy.REUSE:void 0,sG.Strategy.PROJECT,this.cached?sG.Strategy.CACHE:void 0,sG.Strategy.LATEST].filter(X=>typeof X<"u"),y=g?1/0:1,B=await Promise.all(this.packages.map(async X=>{let U=X.match(/^\.{0,2}\//)?await sG.extractDescriptorFromPath(X,{cwd:this.context.cwd,workspace:s}):$Y.structUtils.tryParseDescriptor(X),le=X.match(/^(https?:|git@github)/);if(le)throw new uv.UsageError(`It seems you are trying to add a package using a ${I3.formatUtils.pretty(t,`${le[0]}...`,I3.formatUtils.Type.RANGE)} url; we now require package names to be explicitly specified. +Try running the command again with the package name prefixed: ${I3.formatUtils.pretty(t,"yarn add",I3.formatUtils.Type.CODE)} ${I3.formatUtils.pretty(t,$Y.structUtils.makeDescriptor($Y.structUtils.makeIdent(null,"my-package"),`${le[0]}...`),I3.formatUtils.Type.DESCRIPTOR)}`);if(!U)throw new uv.UsageError(`The ${I3.formatUtils.pretty(t,X,I3.formatUtils.Type.CODE)} string didn't match the required format (package-name@range). Did you perhaps forget to explicitly reference the package name?`);let ae=DEc(s,U,{dev:this.dev,peer:this.peer,preferDev:this.preferDev,optional:this.optional});return await Promise.all(ae.map(async fe=>{let pe=await sG.getSuggestedDescriptors(U,{project:r,workspace:s,cache:a,fixed:o,target:fe,modifier:f,strategies:m,maxResults:y});return{request:U,suggestedDescriptors:pe,target:fe}}))})).then(X=>X.flat()),v=await I3.LightReport.start({configuration:t,stdout:this.context.stdout,suggestInstall:!1},async X=>{for(let{request:U,suggestedDescriptors:{suggestions:le,rejections:ae}}of B)if(le.filter(fe=>fe.descriptor!==null).length===0){let[fe]=ae;if(typeof fe>"u")throw new Error("Assertion failed: Expected an error to have been set");r.configuration.get("enableNetwork")?X.reportError(I3.MessageName.CANT_SUGGEST_RESOLUTIONS,`${$Y.structUtils.prettyDescriptor(t,U)} can't be resolved to a satisfying range`):X.reportError(I3.MessageName.CANT_SUGGEST_RESOLUTIONS,`${$Y.structUtils.prettyDescriptor(t,U)} can't be resolved to a satisfying range (note: network resolution has been disabled)`),X.reportSeparator(),X.reportExceptionOnce(fe)}});if(v.hasErrors())return v.exitCode();let k=!1,T=[],O=[];for(let{suggestedDescriptors:{suggestions:X},target:U}of B){let le,ae=X.filter(he=>he.descriptor!==null),ge=ae[0].descriptor,fe=ae.every(he=>$Y.structUtils.areDescriptorsEqual(he.descriptor,ge));ae.length===1||fe?le=ge:(k=!0,{answer:le}=await(0,NEc.prompt)({type:"select",name:"answer",message:"Which range do you want to use?",choices:X.map(({descriptor:he,name:be,reason:Te})=>he?{name:be,hint:Te,descriptor:he}:{name:be,hint:Te,disabled:!0}),onCancel:()=>process.exit(130),result(he){return this.find(he,"descriptor")},stdin:this.context.stdin,stdout:this.context.stdout}));let pe=s.manifest[U].get(le.identHash);(typeof pe>"u"||pe.descriptorHash!==le.descriptorHash)&&(s.manifest[U].set(le.identHash,le),this.optional&&(U==="dependencies"?s.manifest.ensureDependencyMeta({...le,range:"unknown"}).optional=!0:U==="peerDependencies"&&(s.manifest.ensurePeerDependencyMeta({...le,range:"unknown"}).optional=!0)),typeof pe>"u"?T.push([s,U,le,m]):O.push([s,U,pe,le]))}return await t.triggerMultipleHooks(X=>X.afterWorkspaceDependencyAddition,T),await t.triggerMultipleHooks(X=>X.afterWorkspaceDependencyReplacement,O),k&&this.context.stdout.write(` +`),await r.installWithNewReport({json:this.json,stdout:this.context.stdout,quiet:this.context.quiet},{cache:a,mode:this.mode})}};Q4e.paths=[["add"]];Q4e.usage=uv.Command.Usage({description:"add dependencies to the project",details:"\n This command adds a package to the package.json for the nearest workspace.\n\n - If it didn't exist before, the package will by default be added to the regular `dependencies` field, but this behavior can be overriden thanks to the `-D,--dev` flag (which will cause the dependency to be added to the `devDependencies` field instead) and the `-P,--peer` flag (which will do the same but for `peerDependencies`).\n\n - If the package was already listed in your dependencies, it will by default be upgraded whether it's part of your `dependencies` or `devDependencies` (it won't ever update `peerDependencies`, though).\n\n - If set, the `--prefer-dev` flag will operate as a more flexible `-D,--dev` in that it will add the package to your `devDependencies` if it isn't already listed in either `dependencies` or `devDependencies`, but it will also happily upgrade your `dependencies` if that's what you already use (whereas `-D,--dev` would throw an exception).\n\n - If set, the `-O,--optional` flag will add the package to the `optionalDependencies` field and, in combination with the `-P,--peer` flag, it will add the package as an optional peer dependency. If the package was already listed in your `dependencies`, it will be upgraded to `optionalDependencies`. If the package was already listed in your `peerDependencies`, in combination with the `-P,--peer` flag, it will be upgraded to an optional peer dependency: `\"peerDependenciesMeta\": { \"\": { \"optional\": true } }`\n\n - If the added package doesn't specify a range at all its `latest` tag will be resolved and the returned version will be used to generate a new semver range (using the `^` modifier by default unless otherwise configured via the `defaultSemverRangePrefix` configuration, or the `~` modifier if `-T,--tilde` is specified, or no modifier at all if `-E,--exact` is specified). Two exceptions to this rule: the first one is that if the package is a workspace then its local version will be used, and the second one is that if you use `-P,--peer` the default range will be `*` and won't be resolved at all.\n\n - If the added package specifies a range (such as `^1.0.0`, `latest`, or `rc`), Yarn will add this range as-is in the resulting package.json entry (in particular, tags such as `rc` will be encoded as-is rather than being converted into a semver range).\n\n If the `--cached` option is used, Yarn will preferably reuse the highest version already used somewhere within the project, even if through a transitive dependency.\n\n If the `-i,--interactive` option is used (or if the `preferInteractive` settings is toggled on) the command will first try to check whether other workspaces in the project use the specified package and, if so, will offer to reuse them.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n For a compilation of all the supported protocols, please consult the dedicated page from our website: https://yarnpkg.com/protocols.\n ",examples:[["Add a regular package to the current workspace","$0 add lodash"],["Add a specific version for a package to the current workspace","$0 add lodash@1.2.3"],["Add a package from a GitHub repository (the master branch) to the current workspace using a URL","$0 add lodash@https://github.com/lodash/lodash"],["Add a package from a GitHub repository (the master branch) to the current workspace using the GitHub protocol","$0 add lodash@github:lodash/lodash"],["Add a package from a GitHub repository (the master branch) to the current workspace using the GitHub protocol (shorthand)","$0 add lodash@lodash/lodash"],["Add a package from a specific branch of a GitHub repository to the current workspace using the GitHub protocol (shorthand)","$0 add lodash-es@lodash/lodash#es"],["Add a local package (gzipped tarball format) to the current workspace","$0 add local-package-name@file:../path/to/local-package-name-v0.1.2.tgz"]]});mwr.default=Q4e;function DEc(e,t,{dev:r,peer:s,preferDev:a,optional:o}){let g=e.manifest[sG.Target.REGULAR].has(t.identHash),p=e.manifest[sG.Target.DEVELOPMENT].has(t.identHash),f=e.manifest[sG.Target.PEER].has(t.identHash);if((r||s)&&g)throw new uv.UsageError(`Package "${$Y.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a regular dependency - remove the -D,-P flags or remove it from your dependencies first`);if(!r&&!s&&f)throw new uv.UsageError(`Package "${$Y.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a peer dependency - use either of -D or -P, or remove it from your peer dependencies first`);if(o&&p)throw new uv.UsageError(`Package "${$Y.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a dev dependency - remove the -O flag or remove it from your dev dependencies first`);if(o&&!s&&f)throw new uv.UsageError(`Package "${$Y.structUtils.prettyIdent(e.project.configuration,t)}" is already listed as a peer dependency - remove the -O flag or add the -P flag or remove it from your peer dependencies first`);if((r||a)&&o)throw new uv.UsageError(`Package "${$Y.structUtils.prettyIdent(e.project.configuration,t)}" cannot simultaneously be a dev dependency and an optional dependency`);let m=[];return s&&m.push(sG.Target.PEER),(r||a)&&m.push(sG.Target.DEVELOPMENT),o&&m.push(sG.Target.REGULAR),m.length>0?m:p?[sG.Target.DEVELOPMENT]:f?[sG.Target.PEER]:[sG.Target.REGULAR]}});var oQi=z(_wr=>{"use strict";Object.defineProperty(_wr,"__esModule",{value:!0});var xEc=il(),hwr=Bn(),M4e=Bn(),H4e=(Zl(),Ai(pg)),Y4e=class extends xEc.BaseCommand{constructor(){super(...arguments),this.verbose=H4e.Option.Boolean("-v,--verbose",!1,{description:"Print both the binary name and the locator of the package that provides the binary"}),this.json=H4e.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.name=H4e.Option.String({required:!1})}async execute(){let t=await hwr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,locator:s}=await hwr.Project.find(t,this.context.cwd);if(await r.restoreInstallState(),this.name){let g=(await M4e.scriptUtils.getPackageAccessibleBinaries(s,{project:r})).get(this.name);if(!g)throw new H4e.UsageError(`Couldn't find a binary named "${this.name}" for package "${M4e.structUtils.prettyLocator(t,s)}"`);let[,p]=g;return this.context.stdout.write(`${p} +`),0}return(await hwr.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async o=>{let g=await M4e.scriptUtils.getPackageAccessibleBinaries(s,{project:r}),f=Array.from(g.keys()).reduce((m,y)=>Math.max(m,y.length),0);for(let[m,[y,B]]of g)o.reportJson({name:m,source:M4e.structUtils.stringifyIdent(y),path:B});if(this.verbose)for(let[m,[y]]of g)o.reportInfo(null,`${m.padEnd(f," ")} ${M4e.structUtils.prettyLocator(t,y)}`);else for(let m of g.keys())o.reportInfo(null,m)})).exitCode()}};Y4e.paths=[["bin"]];Y4e.usage=H4e.Command.Usage({description:"get the path to a binary script",details:` When used without arguments, this command will print the list of all the binaries available in the current workspace. Adding the \`-v,--verbose\` flag will cause the output to contain both the binary name and the locator of the package that provides the binary. When an argument is specified, this command will just print the path to the binary on the standard output and exit. Note that the reported path may be stored within a zip archive. - `,examples:[["List all the available binaries","$0 bin"],["Print the path to a specific binary","$0 bin eslint"]]});pwr.default=Q4e});var tMi=z(Cwr=>{"use strict";Object.defineProperty(Cwr,"__esModule",{value:!0});var CEc=nl(),fwr=Bn(),eMi=Ro(),Iwr=(Fl(),Ai(dg)),Y4e=class extends CEc.BaseCommand{constructor(){super(...arguments),this.mirror=Iwr.Option.Boolean("--mirror",!1,{description:"Remove the global cache files instead of the local cache files"}),this.all=Iwr.Option.Boolean("--all",!1,{description:"Remove both the global cache files and the local cache files of the current project"})}async execute(){let t=await fwr.Configuration.find(this.context.cwd,this.context.plugins),r=await fwr.Cache.find(t);return(await fwr.StreamReport.start({configuration:t,stdout:this.context.stdout},async()=>{let a=(this.all||this.mirror)&&r.mirrorCwd!==null,o=!this.mirror;a&&(await eMi.xfs.removePromise(r.mirrorCwd),await t.triggerHook(g=>g.cleanGlobalArtifacts,t)),o&&await eMi.xfs.removePromise(r.cwd)})).exitCode()}};Y4e.paths=[["cache","clean"],["cache","clear"]];Y4e.usage=Iwr.Command.Usage({description:"remove the shared cache files",details:` + `,examples:[["List all the available binaries","$0 bin"],["Print the path to a specific binary","$0 bin eslint"]]});_wr.default=Y4e});var cQi=z(Ewr=>{"use strict";Object.defineProperty(Ewr,"__esModule",{value:!0});var kEc=il(),ywr=Bn(),aQi=No(),bwr=(Zl(),Ai(pg)),X4e=class extends kEc.BaseCommand{constructor(){super(...arguments),this.mirror=bwr.Option.Boolean("--mirror",!1,{description:"Remove the global cache files instead of the local cache files"}),this.all=bwr.Option.Boolean("--all",!1,{description:"Remove both the global cache files and the local cache files of the current project"})}async execute(){let t=await ywr.Configuration.find(this.context.cwd,this.context.plugins),r=await ywr.Cache.find(t);return(await ywr.StreamReport.start({configuration:t,stdout:this.context.stdout},async()=>{let a=(this.all||this.mirror)&&r.mirrorCwd!==null,o=!this.mirror;a&&(await aQi.xfs.removePromise(r.mirrorCwd),await t.triggerHook(g=>g.cleanGlobalArtifacts,t)),o&&await aQi.xfs.removePromise(r.cwd)})).exitCode()}};X4e.paths=[["cache","clean"],["cache","clear"]];X4e.usage=bwr.Command.Usage({description:"remove the shared cache files",details:` This command will remove all the files from the cache. - `,examples:[["Remove all the local archives","$0 cache clean"],["Remove all the archives stored in the ~/.yarn directory","$0 cache clean --mirror"]]});Cwr.default=Y4e});var mwr=z((pHl,rMi)=>{var mEc=Dot();function hEc(e,t,r){var s=e==null?void 0:mEc(e,t);return s===void 0?r:s}rMi.exports=hEc});var iMi=z(_wr=>{"use strict";Object.defineProperty(_wr,"__esModule",{value:!0});var _Ec=(Ma(),Ai(Oa)),yEc=nl(),hwr=Bn(),RNe=(Fl(),Ai(dg)),bEc=_Ec.__importDefault(mwr()),nMi=Dt("util"),H4e=class extends yEc.BaseCommand{constructor(){super(...arguments),this.why=RNe.Option.Boolean("--why",!1,{description:"Print the explanation for why a setting has its value"}),this.json=RNe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.unsafe=RNe.Option.Boolean("--no-redacted",!1,{description:"Don't redact secrets (such as tokens) from the output"}),this.name=RNe.Option.String()}async execute(){let t=await hwr.Configuration.find(this.context.cwd,this.context.plugins),r=this.name.replace(/[.[].*$/,""),s=this.name.replace(/^[^.[]*/,"");if(typeof t.settings.get(r)>"u")throw new RNe.UsageError(`Couldn't find a configuration settings named "${r}"`);let o=t.getSpecial(r,{hideSecrets:!this.unsafe,getNativePaths:!0}),g=hwr.miscUtils.convertMapsToIndexableObjects(o),p=s?(0,bEc.default)(g,s):g,f=await hwr.StreamReport.start({configuration:t,includeFooter:!1,json:this.json,stdout:this.context.stdout},async m=>{m.reportJson(p)});if(!this.json){if(typeof p=="string")return this.context.stdout.write(`${p} -`),f.exitCode();nMi.inspect.styles.name="cyan",this.context.stdout.write(`${(0,nMi.inspect)(p,{depth:1/0,colors:t.get("enableColors"),compact:!1})} -`)}return f.exitCode()}};H4e.paths=[["config","get"]];H4e.usage=RNe.Command.Usage({description:"read a configuration settings",details:` + `,examples:[["Remove all the local archives","$0 cache clean"],["Remove all the archives stored in the ~/.yarn directory","$0 cache clean --mirror"]]});Ewr.default=X4e});var Bwr=z((ZHl,lQi)=>{var GEc=kot();function FEc(e,t,r){var s=e==null?void 0:GEc(e,t);return s===void 0?r:s}lQi.exports=FEc});var gQi=z(Swr=>{"use strict";Object.defineProperty(Swr,"__esModule",{value:!0});var ZEc=(Oa(),Ai(Pa)),LEc=il(),vwr=Bn(),xNe=(Zl(),Ai(pg)),VEc=ZEc.__importDefault(Bwr()),uQi=xt("util"),J4e=class extends LEc.BaseCommand{constructor(){super(...arguments),this.why=xNe.Option.Boolean("--why",!1,{description:"Print the explanation for why a setting has its value"}),this.json=xNe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.unsafe=xNe.Option.Boolean("--no-redacted",!1,{description:"Don't redact secrets (such as tokens) from the output"}),this.name=xNe.Option.String()}async execute(){let t=await vwr.Configuration.find(this.context.cwd,this.context.plugins),r=this.name.replace(/[.[].*$/,""),s=this.name.replace(/^[^.[]*/,"");if(typeof t.settings.get(r)>"u")throw new xNe.UsageError(`Couldn't find a configuration settings named "${r}"`);let o=t.getSpecial(r,{hideSecrets:!this.unsafe,getNativePaths:!0}),g=vwr.miscUtils.convertMapsToIndexableObjects(o),p=s?(0,VEc.default)(g,s):g,f=await vwr.StreamReport.start({configuration:t,includeFooter:!1,json:this.json,stdout:this.context.stdout},async m=>{m.reportJson(p)});if(!this.json){if(typeof p=="string")return this.context.stdout.write(`${p} +`),f.exitCode();uQi.inspect.styles.name="cyan",this.context.stdout.write(`${(0,uQi.inspect)(p,{depth:1/0,colors:t.get("enableColors"),compact:!1})} +`)}return f.exitCode()}};J4e.paths=[["config","get"]];J4e.usage=xNe.Command.Usage({description:"read a configuration settings",details:` This command will print a configuration setting. Secrets (such as tokens) will be redacted from the output by default. If this behavior isn't desired, set the \`--no-redacted\` to get the untransformed value. - `,examples:[["Print a simple configuration setting","yarn config get yarnPath"],["Print a complex configuration setting","yarn config get packageExtensions"],["Print a nested field from the configuration",`yarn config get 'npmScopes["my-company"].npmRegistryServer'`],["Print a token from the configuration","yarn config get npmAuthToken --no-redacted"],["Print a configuration setting as JSON","yarn config get packageExtensions --json"]]});_wr.default=H4e});var oMi=z((IHl,sMi)=>{function EEc(e,t){for(var r=-1,s=e==null?0:e.length;++r{var BEc=nAe(),vEc=$rt();function SEc(e,t){return e&&BEc(t,vEc(t),e)}aMi.exports=SEc});var uMi=z((mHl,lMi)=>{var wEc=nAe(),TEc=bbe();function NEc(e,t){return e&&wEc(t,TEc(t),e)}lMi.exports=NEc});var AMi=z((hHl,gMi)=>{var REc=nAe(),DEc=Jrt();function xEc(e,t){return REc(e,DEc(e),t)}gMi.exports=xEc});var ywr=z((_Hl,dMi)=>{var kEc=Xrt(),GEc=nnt(),FEc=Jrt(),ZEc=MYt(),LEc=Object.getOwnPropertySymbols,VEc=LEc?function(e){for(var t=[];e;)kEc(t,FEc(e)),e=GEc(e);return t}:ZEc;dMi.exports=VEc});var fMi=z((yHl,pMi)=>{var WEc=nAe(),PEc=ywr();function OEc(e,t){return WEc(e,PEc(e),t)}pMi.exports=OEc});var bwr=z((bHl,IMi)=>{var MEc=OYt(),QEc=ywr(),YEc=bbe();function HEc(e){return MEc(e,YEc,QEc)}IMi.exports=HEc});var mMi=z((EHl,CMi)=>{var XEc=Object.prototype,JEc=XEc.hasOwnProperty;function UEc(e){var t=e.length,r=new e.constructor(t);return t&&typeof e[0]=="string"&&JEc.call(e,"index")&&(r.index=e.index,r.input=e.input),r}CMi.exports=UEc});var _Mi=z((BHl,hMi)=>{var KEc=rnt();function jEc(e,t){var r=t?KEc(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.byteLength)}hMi.exports=jEc});var bMi=z((vHl,yMi)=>{var zEc=/\w*$/;function qEc(e){var t=new e.constructor(e.source,zEc.exec(e));return t.lastIndex=e.lastIndex,t}yMi.exports=qEc});var wMi=z((SHl,SMi)=>{var EMi=eAe(),BMi=EMi?EMi.prototype:void 0,vMi=BMi?BMi.valueOf:void 0;function $Ec(e){return vMi?Object(vMi.call(e)):{}}SMi.exports=$Ec});var NMi=z((wHl,TMi)=>{var e1c=rnt(),t1c=_Mi(),r1c=bMi(),n1c=wMi(),i1c=rHt(),s1c="[object Boolean]",o1c="[object Date]",a1c="[object Map]",c1c="[object Number]",l1c="[object RegExp]",u1c="[object Set]",g1c="[object String]",A1c="[object Symbol]",d1c="[object ArrayBuffer]",p1c="[object DataView]",f1c="[object Float32Array]",I1c="[object Float64Array]",C1c="[object Int8Array]",m1c="[object Int16Array]",h1c="[object Int32Array]",_1c="[object Uint8Array]",y1c="[object Uint8ClampedArray]",b1c="[object Uint16Array]",E1c="[object Uint32Array]";function B1c(e,t,r){var s=e.constructor;switch(t){case d1c:return e1c(e);case s1c:case o1c:return new s(+e);case p1c:return t1c(e,r);case f1c:case I1c:case C1c:case m1c:case h1c:case _1c:case y1c:case b1c:case E1c:return i1c(e,r);case a1c:return new s;case c1c:case g1c:return new s(e);case l1c:return r1c(e);case u1c:return new s;case A1c:return n1c(e)}}TMi.exports=B1c});var DMi=z((THl,RMi)=>{var v1c=F9e(),S1c=hJ(),w1c="[object Map]";function T1c(e){return S1c(e)&&v1c(e)==w1c}RMi.exports=T1c});var FMi=z((NHl,GMi)=>{var N1c=DMi(),R1c=Krt(),xMi=jrt(),kMi=xMi&&xMi.isMap,D1c=kMi?R1c(kMi):N1c;GMi.exports=D1c});var LMi=z((RHl,ZMi)=>{var x1c=F9e(),k1c=hJ(),G1c="[object Set]";function F1c(e){return k1c(e)&&x1c(e)==G1c}ZMi.exports=F1c});var OMi=z((DHl,PMi)=>{var Z1c=LMi(),L1c=Krt(),VMi=jrt(),WMi=VMi&&VMi.isSet,V1c=WMi?L1c(WMi):Z1c;PMi.exports=V1c});var Ewr=z((xHl,HMi)=>{var W1c=Yrt(),P1c=oMi(),O1c=int(),M1c=cMi(),Q1c=uMi(),Y1c=tHt(),H1c=nHt(),X1c=AMi(),J1c=fMi(),U1c=XYt(),K1c=bwr(),j1c=F9e(),z1c=mMi(),q1c=NMi(),$1c=iHt(),e2c=dH(),t2c=R9e(),r2c=FMi(),n2c=pW(),i2c=OMi(),s2c=$rt(),o2c=bbe(),a2c=1,c2c=2,l2c=4,MMi="[object Arguments]",u2c="[object Array]",g2c="[object Boolean]",A2c="[object Date]",d2c="[object Error]",QMi="[object Function]",p2c="[object GeneratorFunction]",f2c="[object Map]",I2c="[object Number]",YMi="[object Object]",C2c="[object RegExp]",m2c="[object Set]",h2c="[object String]",_2c="[object Symbol]",y2c="[object WeakMap]",b2c="[object ArrayBuffer]",E2c="[object DataView]",B2c="[object Float32Array]",v2c="[object Float64Array]",S2c="[object Int8Array]",w2c="[object Int16Array]",T2c="[object Int32Array]",N2c="[object Uint8Array]",R2c="[object Uint8ClampedArray]",D2c="[object Uint16Array]",x2c="[object Uint32Array]",IE={};IE[MMi]=IE[u2c]=IE[b2c]=IE[E2c]=IE[g2c]=IE[A2c]=IE[B2c]=IE[v2c]=IE[S2c]=IE[w2c]=IE[T2c]=IE[f2c]=IE[I2c]=IE[YMi]=IE[C2c]=IE[m2c]=IE[h2c]=IE[_2c]=IE[N2c]=IE[R2c]=IE[D2c]=IE[x2c]=!0;IE[d2c]=IE[QMi]=IE[y2c]=!1;function OSt(e,t,r,s,a,o){var g,p=t&a2c,f=t&c2c,m=t&l2c;if(r&&(g=a?r(e,s,a,o):r(e)),g!==void 0)return g;if(!n2c(e))return e;var y=e2c(e);if(y){if(g=z1c(e),!p)return H1c(e,g)}else{var B=j1c(e),v=B==QMi||B==p2c;if(t2c(e))return Y1c(e,p);if(B==YMi||B==MMi||v&&!a){if(g=f||v?{}:$1c(e),!p)return f?J1c(e,Q1c(g,e)):X1c(e,M1c(g,e))}else{if(!IE[B])return a?e:{};g=q1c(e,B,p)}}o||(o=new W1c);var G=o.get(e);if(G)return G;o.set(e,g),i2c(e)?e.forEach(function(X){g.add(OSt(X,t,r,X,e,o))}):r2c(e)&&e.forEach(function(X,U){g.set(U,OSt(X,t,r,U,e,o))});var T=m?f?K1c:U1c:f?o2c:s2c,O=y?void 0:T(e);return P1c(O||e,function(X,U){O&&(U=X,X=e[U]),O1c(g,U,OSt(X,t,r,U,e,o))}),g}HMi.exports=OSt});var Bwr=z((kHl,XMi)=>{var k2c=Ewr(),G2c=1,F2c=4;function Z2c(e){return k2c(e,G2c|F2c)}XMi.exports=Z2c});var UMi=z((GHl,JMi)=>{var L2c=WKt();function V2c(e,t,r){return e==null?e:L2c(e,t,r)}JMi.exports=V2c});var jMi=z(Swr=>{"use strict";Object.defineProperty(Swr,"__esModule",{value:!0});var vwr=(Ma(),Ai(Oa)),W2c=nl(),uCe=Bn(),pae=(Fl(),Ai(dg)),P2c=vwr.__importDefault(Bwr()),O2c=vwr.__importDefault(mwr()),M2c=vwr.__importDefault(UMi()),KMi=Dt("util"),X4e=class extends W2c.BaseCommand{constructor(){super(...arguments),this.json=pae.Option.Boolean("--json",!1,{description:"Set complex configuration settings to JSON values"}),this.home=pae.Option.Boolean("-H,--home",!1,{description:"Update the home configuration instead of the project configuration"}),this.name=pae.Option.String(),this.value=pae.Option.String()}async execute(){let t=await uCe.Configuration.find(this.context.cwd,this.context.plugins),r=()=>{if(!t.projectCwd)throw new pae.UsageError("This command must be run from within a project folder");return t.projectCwd},s=this.name.replace(/[.[].*$/,""),a=this.name.replace(/^[^.[]*\.?/,"");if(typeof t.settings.get(s)>"u")throw new pae.UsageError(`Couldn't find a configuration settings named "${s}"`);if(s==="enableStrictSettings")throw new pae.UsageError("This setting only affects the file it's in, and thus cannot be set from the CLI");let g=this.json?JSON.parse(this.value):this.value;await(this.home?G=>uCe.Configuration.updateHomeConfiguration(G):G=>uCe.Configuration.updateConfiguration(r(),G))(G=>{if(a){let T=(0,P2c.default)(G);return(0,M2c.default)(T,this.name,g),T}else return{...G,[s]:g}});let m=(await uCe.Configuration.find(this.context.cwd,this.context.plugins)).getSpecial(s,{hideSecrets:!0,getNativePaths:!0}),y=uCe.miscUtils.convertMapsToIndexableObjects(m),B=a?(0,O2c.default)(y,a):y;return(await uCe.StreamReport.start({configuration:t,includeFooter:!1,stdout:this.context.stdout},async G=>{KMi.inspect.styles.name="cyan",G.reportInfo(uCe.MessageName.UNNAMED,`Successfully set ${this.name} to ${(0,KMi.inspect)(B,{depth:1/0,colors:t.get("enableColors"),compact:!1})}`)})).exitCode()}};X4e.paths=[["config","set"]];X4e.usage=pae.Command.Usage({description:"change a configuration settings",details:` + `,examples:[["Print a simple configuration setting","yarn config get yarnPath"],["Print a complex configuration setting","yarn config get packageExtensions"],["Print a nested field from the configuration",`yarn config get 'npmScopes["my-company"].npmRegistryServer'`],["Print a token from the configuration","yarn config get npmAuthToken --no-redacted"],["Print a configuration setting as JSON","yarn config get packageExtensions --json"]]});Swr.default=J4e});var dQi=z((VHl,AQi)=>{function WEc(e,t){for(var r=-1,s=e==null?0:e.length;++r{var PEc=AAe(),OEc=tnt();function QEc(e,t){return e&&PEc(t,OEc(t),e)}pQi.exports=QEc});var CQi=z((PHl,IQi)=>{var MEc=AAe(),HEc=Bbe();function YEc(e,t){return e&&MEc(t,HEc(t),e)}IQi.exports=YEc});var hQi=z((OHl,mQi)=>{var XEc=AAe(),JEc=Krt();function UEc(e,t){return XEc(e,JEc(e),t)}mQi.exports=UEc});var wwr=z((QHl,_Qi)=>{var KEc=Urt(),jEc=snt(),zEc=Krt(),qEc=YMt(),$Ec=Object.getOwnPropertySymbols,e1c=$Ec?function(e){for(var t=[];e;)KEc(t,zEc(e)),e=jEc(e);return t}:qEc;_Qi.exports=e1c});var bQi=z((MHl,yQi)=>{var t1c=AAe(),r1c=wwr();function n1c(e,t){return t1c(e,r1c(e),t)}yQi.exports=n1c});var Twr=z((HHl,EQi)=>{var i1c=HMt(),s1c=wwr(),o1c=Bbe();function a1c(e){return i1c(e,o1c,s1c)}EQi.exports=a1c});var vQi=z((YHl,BQi)=>{var c1c=Object.prototype,l1c=c1c.hasOwnProperty;function u1c(e){var t=e.length,r=new e.constructor(t);return t&&typeof e[0]=="string"&&l1c.call(e,"index")&&(r.index=e.index,r.input=e.input),r}BQi.exports=u1c});var wQi=z((XHl,SQi)=>{var g1c=int();function A1c(e,t){var r=t?g1c(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.byteLength)}SQi.exports=A1c});var NQi=z((JHl,TQi)=>{var d1c=/\w*$/;function p1c(e){var t=new e.constructor(e.source,d1c.exec(e));return t.lastIndex=e.lastIndex,t}TQi.exports=p1c});var GQi=z((UHl,kQi)=>{var RQi=lAe(),DQi=RQi?RQi.prototype:void 0,xQi=DQi?DQi.valueOf:void 0;function f1c(e){return xQi?Object(xQi.call(e)):{}}kQi.exports=f1c});var ZQi=z((KHl,FQi)=>{var I1c=int(),C1c=wQi(),m1c=NQi(),h1c=GQi(),_1c=sHt(),y1c="[object Boolean]",b1c="[object Date]",E1c="[object Map]",B1c="[object Number]",v1c="[object RegExp]",S1c="[object Set]",w1c="[object String]",T1c="[object Symbol]",N1c="[object ArrayBuffer]",R1c="[object DataView]",D1c="[object Float32Array]",x1c="[object Float64Array]",k1c="[object Int8Array]",G1c="[object Int16Array]",F1c="[object Int32Array]",Z1c="[object Uint8Array]",L1c="[object Uint8ClampedArray]",V1c="[object Uint16Array]",W1c="[object Uint32Array]";function P1c(e,t,r){var s=e.constructor;switch(t){case N1c:return I1c(e);case y1c:case b1c:return new s(+e);case R1c:return C1c(e,r);case D1c:case x1c:case k1c:case G1c:case F1c:case Z1c:case L1c:case V1c:case W1c:return _1c(e,r);case E1c:return new s;case B1c:case w1c:return new s(e);case v1c:return m1c(e);case S1c:return new s;case T1c:return h1c(e)}}FQi.exports=P1c});var VQi=z((jHl,LQi)=>{var O1c=L9e(),Q1c=bJ(),M1c="[object Map]";function H1c(e){return Q1c(e)&&O1c(e)==M1c}LQi.exports=H1c});var QQi=z((zHl,OQi)=>{var Y1c=VQi(),X1c=zrt(),WQi=qrt(),PQi=WQi&&WQi.isMap,J1c=PQi?X1c(PQi):Y1c;OQi.exports=J1c});var HQi=z((qHl,MQi)=>{var U1c=L9e(),K1c=bJ(),j1c="[object Set]";function z1c(e){return K1c(e)&&U1c(e)==j1c}MQi.exports=z1c});var UQi=z(($Hl,JQi)=>{var q1c=HQi(),$1c=zrt(),YQi=qrt(),XQi=YQi&&YQi.isSet,e2c=XQi?$1c(XQi):q1c;JQi.exports=e2c});var Nwr=z((eYl,qQi)=>{var t2c=Xrt(),r2c=dQi(),n2c=ont(),i2c=fQi(),s2c=CQi(),o2c=iHt(),a2c=oHt(),c2c=hQi(),l2c=bQi(),u2c=KMt(),g2c=Twr(),A2c=L9e(),d2c=vQi(),p2c=ZQi(),f2c=aHt(),I2c=fH(),C2c=x9e(),m2c=QQi(),h2c=fW(),_2c=UQi(),y2c=tnt(),b2c=Bbe(),E2c=1,B2c=2,v2c=4,KQi="[object Arguments]",S2c="[object Array]",w2c="[object Boolean]",T2c="[object Date]",N2c="[object Error]",jQi="[object Function]",R2c="[object GeneratorFunction]",D2c="[object Map]",x2c="[object Number]",zQi="[object Object]",k2c="[object RegExp]",G2c="[object Set]",F2c="[object String]",Z2c="[object Symbol]",L2c="[object WeakMap]",V2c="[object ArrayBuffer]",W2c="[object DataView]",P2c="[object Float32Array]",O2c="[object Float64Array]",Q2c="[object Int8Array]",M2c="[object Int16Array]",H2c="[object Int32Array]",Y2c="[object Uint8Array]",X2c="[object Uint8ClampedArray]",J2c="[object Uint16Array]",U2c="[object Uint32Array]",mE={};mE[KQi]=mE[S2c]=mE[V2c]=mE[W2c]=mE[w2c]=mE[T2c]=mE[P2c]=mE[O2c]=mE[Q2c]=mE[M2c]=mE[H2c]=mE[D2c]=mE[x2c]=mE[zQi]=mE[k2c]=mE[G2c]=mE[F2c]=mE[Z2c]=mE[Y2c]=mE[X2c]=mE[J2c]=mE[U2c]=!0;mE[N2c]=mE[jQi]=mE[L2c]=!1;function HSt(e,t,r,s,a,o){var g,p=t&E2c,f=t&B2c,m=t&v2c;if(r&&(g=a?r(e,s,a,o):r(e)),g!==void 0)return g;if(!h2c(e))return e;var y=I2c(e);if(y){if(g=d2c(e),!p)return a2c(e,g)}else{var B=A2c(e),v=B==jQi||B==R2c;if(C2c(e))return o2c(e,p);if(B==zQi||B==KQi||v&&!a){if(g=f||v?{}:f2c(e),!p)return f?l2c(e,s2c(g,e)):c2c(e,i2c(g,e))}else{if(!mE[B])return a?e:{};g=p2c(e,B,p)}}o||(o=new t2c);var k=o.get(e);if(k)return k;o.set(e,g),_2c(e)?e.forEach(function(X){g.add(HSt(X,t,r,X,e,o))}):m2c(e)&&e.forEach(function(X,U){g.set(U,HSt(X,t,r,U,e,o))});var T=m?f?g2c:u2c:f?b2c:y2c,O=y?void 0:T(e);return r2c(O||e,function(X,U){O&&(U=X,X=e[U]),n2c(g,U,HSt(X,t,r,U,e,o))}),g}qQi.exports=HSt});var Rwr=z((tYl,$Qi)=>{var K2c=Nwr(),j2c=1,z2c=4;function q2c(e){return K2c(e,j2c|z2c)}$Qi.exports=q2c});var t5i=z((rYl,e5i)=>{var $2c=QKt();function eBc(e,t,r){return e==null?e:$2c(e,t,r)}e5i.exports=eBc});var n5i=z(xwr=>{"use strict";Object.defineProperty(xwr,"__esModule",{value:!0});var Dwr=(Oa(),Ai(Pa)),tBc=il(),ACe=Bn(),Eae=(Zl(),Ai(pg)),rBc=Dwr.__importDefault(Rwr()),nBc=Dwr.__importDefault(Bwr()),iBc=Dwr.__importDefault(t5i()),r5i=xt("util"),U4e=class extends tBc.BaseCommand{constructor(){super(...arguments),this.json=Eae.Option.Boolean("--json",!1,{description:"Set complex configuration settings to JSON values"}),this.home=Eae.Option.Boolean("-H,--home",!1,{description:"Update the home configuration instead of the project configuration"}),this.name=Eae.Option.String(),this.value=Eae.Option.String()}async execute(){let t=await ACe.Configuration.find(this.context.cwd,this.context.plugins),r=()=>{if(!t.projectCwd)throw new Eae.UsageError("This command must be run from within a project folder");return t.projectCwd},s=this.name.replace(/[.[].*$/,""),a=this.name.replace(/^[^.[]*\.?/,"");if(typeof t.settings.get(s)>"u")throw new Eae.UsageError(`Couldn't find a configuration settings named "${s}"`);if(s==="enableStrictSettings")throw new Eae.UsageError("This setting only affects the file it's in, and thus cannot be set from the CLI");let g=this.json?JSON.parse(this.value):this.value;await(this.home?k=>ACe.Configuration.updateHomeConfiguration(k):k=>ACe.Configuration.updateConfiguration(r(),k))(k=>{if(a){let T=(0,rBc.default)(k);return(0,iBc.default)(T,this.name,g),T}else return{...k,[s]:g}});let m=(await ACe.Configuration.find(this.context.cwd,this.context.plugins)).getSpecial(s,{hideSecrets:!0,getNativePaths:!0}),y=ACe.miscUtils.convertMapsToIndexableObjects(m),B=a?(0,nBc.default)(y,a):y;return(await ACe.StreamReport.start({configuration:t,includeFooter:!1,stdout:this.context.stdout},async k=>{r5i.inspect.styles.name="cyan",k.reportInfo(ACe.MessageName.UNNAMED,`Successfully set ${this.name} to ${(0,r5i.inspect)(B,{depth:1/0,colors:t.get("enableColors"),compact:!1})}`)})).exitCode()}};U4e.paths=[["config","set"]];U4e.usage=Eae.Command.Usage({description:"change a configuration settings",details:` This command will set a configuration setting. When used without the \`--json\` flag, it can only set a simple configuration setting (a string, a number, or a boolean). When used with the \`--json\` flag, it can set both simple and complex configuration settings, including Arrays and Objects. - `,examples:[["Set a simple configuration setting (a string, a number, or a boolean)","yarn config set initScope myScope"],["Set a simple configuration setting (a string, a number, or a boolean) using the `--json` flag",'yarn config set initScope --json \\"myScope\\"'],["Set a complex configuration setting (an Array) using the `--json` flag",`yarn config set unsafeHttpWhitelist --json '["*.example.com", "example.com"]'`],["Set a complex configuration setting (an Object) using the `--json` flag",`yarn config set packageExtensions --json '{ "@babel/parser@*": { "dependencies": { "@babel/types": "*" } } }'`],["Set a nested configuration setting",'yarn config set npmScopes.company.npmRegistryServer "https://npm.example.com"'],["Set a nested configuration setting using indexed access for non-simple keys",`yarn config set 'npmRegistries["//npm.example.com"].npmAuthToken' "ffffffff-ffff-ffff-ffff-ffffffffffff"`]]});Swr.default=X4e});var qMi=z((ZHl,zMi)=>{var Q2c=Object.prototype,Y2c=Q2c.hasOwnProperty;function H2c(e,t){return e!=null&&Y2c.call(e,t)}zMi.exports=H2c});var eQi=z((LHl,$Mi)=>{var X2c=qMi(),J2c=PKt();function U2c(e,t){return e!=null&&J2c(e,t,X2c)}$Mi.exports=U2c});var rQi=z((VHl,tQi)=>{function K2c(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}tQi.exports=K2c});var iQi=z((WHl,nQi)=>{var j2c=Dot(),z2c=tJt();function q2c(e,t){return t.length<2?e:j2c(e,z2c(t,0,-1))}nQi.exports=q2c});var wwr=z((PHl,sQi)=>{var $2c=VAe(),eBc=rQi(),tBc=iQi(),rBc=JVe();function nBc(e,t){return t=$2c(t,e),e=tBc(e,t),e==null||delete e[rBc(eBc(t))]}sQi.exports=nBc});var aQi=z((OHl,oQi)=>{var iBc=wwr();function sBc(e,t){return e==null?!0:iBc(e,t)}oQi.exports=sBc});var cQi=z(Nwr=>{"use strict";Object.defineProperty(Nwr,"__esModule",{value:!0});var Twr=(Ma(),Ai(Oa)),oBc=nl(),DNe=Bn(),J4e=(Fl(),Ai(dg)),aBc=Twr.__importDefault(Bwr()),cBc=Twr.__importDefault(eQi()),lBc=Twr.__importDefault(aQi()),U4e=class extends oBc.BaseCommand{constructor(){super(...arguments),this.home=J4e.Option.Boolean("-H,--home",!1,{description:"Update the home configuration instead of the project configuration"}),this.name=J4e.Option.String()}async execute(){let t=await DNe.Configuration.find(this.context.cwd,this.context.plugins),r=()=>{if(!t.projectCwd)throw new J4e.UsageError("This command must be run from within a project folder");return t.projectCwd},s=this.name.replace(/[.[].*$/,""),a=this.name.replace(/^[^.[]*\.?/,"");if(typeof t.settings.get(s)>"u")throw new J4e.UsageError(`Couldn't find a configuration settings named "${s}"`);let g=this.home?f=>DNe.Configuration.updateHomeConfiguration(f):f=>DNe.Configuration.updateConfiguration(r(),f);return(await DNe.StreamReport.start({configuration:t,includeFooter:!1,stdout:this.context.stdout},async f=>{let m=!1;await g(y=>{if(!(0,cBc.default)(y,this.name))return f.reportWarning(DNe.MessageName.UNNAMED,`Configuration doesn't contain setting ${this.name}; there is nothing to unset`),m=!0,y;let B=a?(0,aBc.default)(y):{...y};return(0,lBc.default)(B,this.name),B}),m||f.reportInfo(DNe.MessageName.UNNAMED,`Successfully unset ${this.name}`)})).exitCode()}};U4e.paths=[["config","unset"]];U4e.usage=J4e.Command.Usage({description:"unset a configuration setting",details:` + `,examples:[["Set a simple configuration setting (a string, a number, or a boolean)","yarn config set initScope myScope"],["Set a simple configuration setting (a string, a number, or a boolean) using the `--json` flag",'yarn config set initScope --json \\"myScope\\"'],["Set a complex configuration setting (an Array) using the `--json` flag",`yarn config set unsafeHttpWhitelist --json '["*.example.com", "example.com"]'`],["Set a complex configuration setting (an Object) using the `--json` flag",`yarn config set packageExtensions --json '{ "@babel/parser@*": { "dependencies": { "@babel/types": "*" } } }'`],["Set a nested configuration setting",'yarn config set npmScopes.company.npmRegistryServer "https://npm.example.com"'],["Set a nested configuration setting using indexed access for non-simple keys",`yarn config set 'npmRegistries["//npm.example.com"].npmAuthToken' "ffffffff-ffff-ffff-ffff-ffffffffffff"`]]});xwr.default=U4e});var s5i=z((iYl,i5i)=>{var sBc=Object.prototype,oBc=sBc.hasOwnProperty;function aBc(e,t){return e!=null&&oBc.call(e,t)}i5i.exports=aBc});var a5i=z((sYl,o5i)=>{var cBc=s5i(),lBc=MKt();function uBc(e,t){return e!=null&&lBc(e,t,cBc)}o5i.exports=uBc});var l5i=z((oYl,c5i)=>{function gBc(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}c5i.exports=gBc});var g5i=z((aYl,u5i)=>{var ABc=kot(),dBc=iJt();function pBc(e,t){return t.length<2?e:ABc(e,dBc(t,0,-1))}u5i.exports=pBc});var kwr=z((cYl,A5i)=>{var fBc=JAe(),IBc=l5i(),CBc=g5i(),mBc=KVe();function hBc(e,t){return t=fBc(t,e),e=CBc(e,t),e==null||delete e[mBc(IBc(t))]}A5i.exports=hBc});var p5i=z((lYl,d5i)=>{var _Bc=kwr();function yBc(e,t){return e==null?!0:_Bc(e,t)}d5i.exports=yBc});var f5i=z(Fwr=>{"use strict";Object.defineProperty(Fwr,"__esModule",{value:!0});var Gwr=(Oa(),Ai(Pa)),bBc=il(),kNe=Bn(),K4e=(Zl(),Ai(pg)),EBc=Gwr.__importDefault(Rwr()),BBc=Gwr.__importDefault(a5i()),vBc=Gwr.__importDefault(p5i()),j4e=class extends bBc.BaseCommand{constructor(){super(...arguments),this.home=K4e.Option.Boolean("-H,--home",!1,{description:"Update the home configuration instead of the project configuration"}),this.name=K4e.Option.String()}async execute(){let t=await kNe.Configuration.find(this.context.cwd,this.context.plugins),r=()=>{if(!t.projectCwd)throw new K4e.UsageError("This command must be run from within a project folder");return t.projectCwd},s=this.name.replace(/[.[].*$/,""),a=this.name.replace(/^[^.[]*\.?/,"");if(typeof t.settings.get(s)>"u")throw new K4e.UsageError(`Couldn't find a configuration settings named "${s}"`);let g=this.home?f=>kNe.Configuration.updateHomeConfiguration(f):f=>kNe.Configuration.updateConfiguration(r(),f);return(await kNe.StreamReport.start({configuration:t,includeFooter:!1,stdout:this.context.stdout},async f=>{let m=!1;await g(y=>{if(!(0,BBc.default)(y,this.name))return f.reportWarning(kNe.MessageName.UNNAMED,`Configuration doesn't contain setting ${this.name}; there is nothing to unset`),m=!0,y;let B=a?(0,EBc.default)(y):{...y};return(0,vBc.default)(B,this.name),B}),m||f.reportInfo(kNe.MessageName.UNNAMED,`Successfully unset ${this.name}`)})).exitCode()}};j4e.paths=[["config","unset"]];j4e.usage=K4e.Command.Usage({description:"unset a configuration setting",details:` This command will unset a configuration setting. - `,examples:[["Unset a simple configuration setting","yarn config unset initScope"],["Unset a complex configuration setting","yarn config unset packageExtensions"],["Unset a nested configuration setting","yarn config unset npmScopes.company.npmRegistryServer"]]});Nwr.default=U4e});var lQi=z(Dwr=>{"use strict";Object.defineProperty(Dwr,"__esModule",{value:!0});var uBc=nl(),cx=Bn(),gBc=Ro(),xNe=(Fl(),Ai(dg)),Rwr=Dt("util"),K4e=class extends uBc.BaseCommand{constructor(){super(...arguments),this.noDefaults=xNe.Option.Boolean("--no-defaults",!1,{description:"Omit the default values from the display"}),this.json=xNe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.verbose=xNe.Option.Boolean("-v,--verbose",{hidden:!0}),this.why=xNe.Option.Boolean("--why",{hidden:!0}),this.names=xNe.Option.Rest()}async execute(){let t=await cx.Configuration.find(this.context.cwd,this.context.plugins,{strict:!1}),r=await(0,cx.reportOptionDeprecations)({configuration:t,stdout:this.context.stdout,forceError:this.json},[{option:this.verbose,message:"The --verbose option is deprecated, the settings' descriptions are now always displayed"},{option:this.why,message:"The --why option is deprecated, the settings' sources are now always displayed"}]);if(r!==null)return r;let s=this.names.length>0?[...new Set(this.names)].sort():[...t.settings.keys()].sort(),a,o=await cx.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async g=>{if(t.invalid.size>0&&!this.json){for(let[p,f]of t.invalid)g.reportError(cx.MessageName.INVALID_CONFIGURATION_KEY,`Invalid configuration key "${p}" in ${f}`);g.reportSeparator()}if(this.json)for(let p of s){let f=t.settings.get(p);typeof f>"u"&&g.reportError(cx.MessageName.INVALID_CONFIGURATION_KEY,`No configuration key named "${p}"`);let m=t.getSpecial(p,{hideSecrets:!0,getNativePaths:!0}),y=t.sources.get(p)??"",B=y&&y[0]!=="<"?gBc.npath.fromPortablePath(y):y;g.reportJson({key:p,effective:m,source:B,...f})}else{let p={breakLength:1/0,colors:t.get("enableColors"),maxArrayLength:2},f={},m={children:f};for(let y of s){if(this.noDefaults&&!t.sources.has(y))continue;let B=t.settings.get(y),v=t.sources.get(y)??"",G=t.getSpecial(y,{hideSecrets:!0,getNativePaths:!0}),T={Description:{label:"Description",value:cx.formatUtils.tuple(cx.formatUtils.Type.MARKDOWN,{text:B.description,format:this.cli.format(),paragraphs:!1})},Source:{label:"Source",value:cx.formatUtils.tuple(v[0]==="<"?cx.formatUtils.Type.CODE:cx.formatUtils.Type.PATH,v)}};f[y]={value:cx.formatUtils.tuple(cx.formatUtils.Type.CODE,y),children:T};let O=(X,U)=>{for(let[le,ae]of U)if(ae instanceof Map){let ge={};X[le]={children:ge},O(ge,ae)}else X[le]={label:le,value:cx.formatUtils.tuple(cx.formatUtils.Type.NO_HINT,(0,Rwr.inspect)(ae,p))}};G instanceof Map?O(T,G):T.Value={label:"Value",value:cx.formatUtils.tuple(cx.formatUtils.Type.NO_HINT,(0,Rwr.inspect)(G,p))}}s.length!==1&&(a=void 0),cx.treeUtils.emitTree(m,{configuration:t,json:this.json,stdout:this.context.stdout,separators:2})}});if(!this.json&&typeof a<"u"){let g=s[0],p=(0,Rwr.inspect)(t.getSpecial(g,{hideSecrets:!0,getNativePaths:!0}),{colors:t.get("enableColors")});this.context.stdout.write(` + `,examples:[["Unset a simple configuration setting","yarn config unset initScope"],["Unset a complex configuration setting","yarn config unset packageExtensions"],["Unset a nested configuration setting","yarn config unset npmScopes.company.npmRegistryServer"]]});Fwr.default=j4e});var I5i=z(Lwr=>{"use strict";Object.defineProperty(Lwr,"__esModule",{value:!0});var SBc=il(),px=Bn(),wBc=No(),GNe=(Zl(),Ai(pg)),Zwr=xt("util"),z4e=class extends SBc.BaseCommand{constructor(){super(...arguments),this.noDefaults=GNe.Option.Boolean("--no-defaults",!1,{description:"Omit the default values from the display"}),this.json=GNe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.verbose=GNe.Option.Boolean("-v,--verbose",{hidden:!0}),this.why=GNe.Option.Boolean("--why",{hidden:!0}),this.names=GNe.Option.Rest()}async execute(){let t=await px.Configuration.find(this.context.cwd,this.context.plugins,{strict:!1}),r=await(0,px.reportOptionDeprecations)({configuration:t,stdout:this.context.stdout,forceError:this.json},[{option:this.verbose,message:"The --verbose option is deprecated, the settings' descriptions are now always displayed"},{option:this.why,message:"The --why option is deprecated, the settings' sources are now always displayed"}]);if(r!==null)return r;let s=this.names.length>0?[...new Set(this.names)].sort():[...t.settings.keys()].sort(),a,o=await px.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async g=>{if(t.invalid.size>0&&!this.json){for(let[p,f]of t.invalid)g.reportError(px.MessageName.INVALID_CONFIGURATION_KEY,`Invalid configuration key "${p}" in ${f}`);g.reportSeparator()}if(this.json)for(let p of s){let f=t.settings.get(p);typeof f>"u"&&g.reportError(px.MessageName.INVALID_CONFIGURATION_KEY,`No configuration key named "${p}"`);let m=t.getSpecial(p,{hideSecrets:!0,getNativePaths:!0}),y=t.sources.get(p)??"",B=y&&y[0]!=="<"?wBc.npath.fromPortablePath(y):y;g.reportJson({key:p,effective:m,source:B,...f})}else{let p={breakLength:1/0,colors:t.get("enableColors"),maxArrayLength:2},f={},m={children:f};for(let y of s){if(this.noDefaults&&!t.sources.has(y))continue;let B=t.settings.get(y),v=t.sources.get(y)??"",k=t.getSpecial(y,{hideSecrets:!0,getNativePaths:!0}),T={Description:{label:"Description",value:px.formatUtils.tuple(px.formatUtils.Type.MARKDOWN,{text:B.description,format:this.cli.format(),paragraphs:!1})},Source:{label:"Source",value:px.formatUtils.tuple(v[0]==="<"?px.formatUtils.Type.CODE:px.formatUtils.Type.PATH,v)}};f[y]={value:px.formatUtils.tuple(px.formatUtils.Type.CODE,y),children:T};let O=(X,U)=>{for(let[le,ae]of U)if(ae instanceof Map){let ge={};X[le]={children:ge},O(ge,ae)}else X[le]={label:le,value:px.formatUtils.tuple(px.formatUtils.Type.NO_HINT,(0,Zwr.inspect)(ae,p))}};k instanceof Map?O(T,k):T.Value={label:"Value",value:px.formatUtils.tuple(px.formatUtils.Type.NO_HINT,(0,Zwr.inspect)(k,p))}}s.length!==1&&(a=void 0),px.treeUtils.emitTree(m,{configuration:t,json:this.json,stdout:this.context.stdout,separators:2})}});if(!this.json&&typeof a<"u"){let g=s[0],p=(0,Zwr.inspect)(t.getSpecial(g,{hideSecrets:!0,getNativePaths:!0}),{colors:t.get("enableColors")});this.context.stdout.write(` `),this.context.stdout.write(`${p} -`)}return o.exitCode()}};K4e.paths=[["config"]];K4e.usage=xNe.Command.Usage({description:"display the current configuration",details:` +`)}return o.exitCode()}};z4e.paths=[["config"]];z4e.usage=GNe.Command.Usage({description:"display the current configuration",details:` This command prints the current active configuration settings. - `,examples:[["Print the active configuration settings","$0 config"]]});Dwr.default=K4e});var kwr=z(ACe=>{"use strict";Object.defineProperty(ACe,"__esModule",{value:!0});ACe.acceptedStrategies=ACe.Strategy=void 0;ACe.dedupe=fBc;var ABc=(Ma(),Ai(Oa)),gCe=Bn(),JM=Bn(),dBc=ABc.__importDefault(sk()),xwr;(function(e){e.HIGHEST="highest"})(xwr||(ACe.Strategy=xwr={}));ACe.acceptedStrategies=new Set(Object.values(xwr));var pBc={highest:async(e,t,{resolver:r,fetcher:s,resolveOptions:a,fetchOptions:o})=>{let g=new Map;for(let[f,m]of e.storedResolutions){let y=e.storedDescriptors.get(f);if(typeof y>"u")throw new Error(`Assertion failed: The descriptor (${f}) should have been registered`);gCe.miscUtils.getSetWithDefault(g,y.identHash).add(m)}let p=new Map(gCe.miscUtils.mapAndFilter(e.storedDescriptors.values(),f=>JM.structUtils.isVirtualDescriptor(f)?gCe.miscUtils.mapAndFilter.skip:[f.descriptorHash,gCe.miscUtils.makeDeferred()]));for(let f of e.storedDescriptors.values()){let m=p.get(f.descriptorHash);if(typeof m>"u")throw new Error(`Assertion failed: The descriptor (${f.descriptorHash}) should have been registered`);let y=e.storedResolutions.get(f.descriptorHash);if(typeof y>"u")throw new Error(`Assertion failed: The resolution (${f.descriptorHash}) should have been registered`);let B=e.originalPackages.get(y);if(typeof B>"u")throw new Error(`Assertion failed: The package (${y}) should have been registered`);Promise.resolve().then(async()=>{let v=r.getResolutionDependencies(f,a),G=Object.fromEntries(await gCe.miscUtils.allSettledSafe(Object.entries(v).map(async([ae,ge])=>{let fe=p.get(ge.descriptorHash);if(typeof fe>"u")throw new Error(`Assertion failed: The descriptor (${ge.descriptorHash}) should have been registered`);let pe=await fe.promise;if(!pe)throw new Error("Assertion failed: Expected the dependency to have been through the dedupe process itself");return[ae,pe.updatedPackage]})));if(t.length&&!dBc.default.isMatch(JM.structUtils.stringifyIdent(f),t)||!r.shouldPersistResolution(B,a))return B;let T=g.get(f.identHash);if(typeof T>"u")throw new Error(`Assertion failed: The resolutions (${f.identHash}) should have been registered`);if(T.size===1)return B;let O=[...T].map(ae=>{let ge=e.originalPackages.get(ae);if(typeof ge>"u")throw new Error(`Assertion failed: The package (${ae}) should have been registered`);return ge}),X=await r.getSatisfying(f,G,O,a),U=X.locators?.[0];if(typeof U>"u"||!X.sorted)return B;let le=e.originalPackages.get(U.locatorHash);if(typeof le>"u")throw new Error(`Assertion failed: The package (${U.locatorHash}) should have been registered`);return le}).then(async v=>{let G=await e.preparePackage(v,{resolver:r,resolveOptions:a});m.resolve({descriptor:f,currentPackage:B,updatedPackage:v,resolvedPackage:G})}).catch(v=>{m.reject(v)})}return[...p.values()].map(f=>f.promise)}};async function fBc(e,{strategy:t,patterns:r,cache:s,report:a}){let{configuration:o}=e,g=new gCe.ThrowReport,p=o.makeResolver(),f=o.makeFetcher(),m={cache:s,checksums:e.storedChecksums,fetcher:f,project:e,report:g,cacheOptions:{skipIntegrityCheck:!0}},y={project:e,resolver:p,report:g,fetchOptions:m};return await a.startTimerPromise("Deduplication step",async()=>{let B=pBc[t],v=await B(e,r,{resolver:p,resolveOptions:y,fetcher:f,fetchOptions:m}),G=gCe.Report.progressViaCounter(v.length);await a.reportProgress(G);let T=0;await Promise.all(v.map(U=>U.then(le=>{if(le===null||le.currentPackage.locatorHash===le.updatedPackage.locatorHash)return;T++;let{descriptor:ae,currentPackage:ge,updatedPackage:fe}=le;a.reportInfo(JM.MessageName.UNNAMED,`${JM.structUtils.prettyDescriptor(o,ae)} can be deduped from ${JM.structUtils.prettyLocator(o,ge)} to ${JM.structUtils.prettyLocator(o,fe)}`),a.reportJson({descriptor:JM.structUtils.stringifyDescriptor(ae),currentResolution:JM.structUtils.stringifyLocator(ge),updatedResolution:JM.structUtils.stringifyLocator(fe)}),e.storedResolutions.set(ae.descriptorHash,fe.locatorHash)}).finally(()=>G.tick())));let O;switch(T){case 0:O="No packages";break;case 1:O="One package";break;default:O=`${T} packages`}let X=JM.formatUtils.pretty(o,t,JM.formatUtils.Type.CODE);return a.reportInfo(JM.MessageName.UNNAMED,`${O} can be deduped using the ${X} strategy`),T})}});var AQi=z(Fwr=>{"use strict";Object.defineProperty(Fwr,"__esModule",{value:!0});var gQi=(Ma(),Ai(Oa)),IBc=nl(),j4e=Bn(),kNe=(Fl(),Ai(dg)),uQi=gQi.__importStar((_L(),Ai(hL))),Gwr=gQi.__importStar(kwr()),z4e=class extends IBc.BaseCommand{constructor(){super(...arguments),this.strategy=kNe.Option.String("-s,--strategy",Gwr.Strategy.HIGHEST,{description:"The strategy to use when deduping dependencies",validator:uQi.isEnum(Gwr.Strategy)}),this.check=kNe.Option.Boolean("-c,--check",!1,{description:"Exit with exit code 1 when duplicates are found, without persisting the dependency tree"}),this.json=kNe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.mode=kNe.Option.String("--mode",{description:"Change what artifacts installs generate",validator:uQi.isEnum(j4e.InstallMode)}),this.patterns=kNe.Option.Rest()}async execute(){let t=await j4e.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await j4e.Project.find(t,this.context.cwd),s=await j4e.Cache.find(t);await r.restoreInstallState({restoreResolutions:!1});let a=0,o=await j4e.StreamReport.start({configuration:t,includeFooter:!1,stdout:this.context.stdout,json:this.json},async g=>{a=await Gwr.dedupe(r,{strategy:this.strategy,patterns:this.patterns,cache:s,report:g})});return o.hasErrors()?o.exitCode():this.check?a?1:0:await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:s,mode:this.mode})}};z4e.paths=[["dedupe"]];z4e.usage=kNe.Command.Usage({description:"deduplicate dependencies with overlapping ranges",details:"\n Duplicates are defined as descriptors with overlapping ranges being resolved and locked to different locators. They are a natural consequence of Yarn's deterministic installs, but they can sometimes pile up and unnecessarily increase the size of your project.\n\n This command dedupes dependencies in the current project using different strategies (only one is implemented at the moment):\n\n - `highest`: Reuses (where possible) the locators with the highest versions. This means that dependencies can only be upgraded, never downgraded. It's also guaranteed that it never takes more than a single pass to dedupe the entire dependency tree.\n\n **Note:** Even though it never produces a wrong dependency tree, this command should be used with caution, as it modifies the dependency tree, which can sometimes cause problems when packages don't strictly follow semver recommendations. Because of this, it is recommended to also review the changes manually.\n\n If set, the `-c,--check` flag will only report the found duplicates, without persisting the modified dependency tree. If changes are found, the command will exit with a non-zero exit code, making it suitable for CI purposes.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n This command accepts glob patterns as arguments (if valid Idents and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them.\n\n ### In-depth explanation:\n\n Yarn doesn't deduplicate dependencies by default, otherwise installs wouldn't be deterministic and the lockfile would be useless. What it actually does is that it tries to not duplicate dependencies in the first place.\n\n **Example:** If `foo@^2.3.4` (a dependency of a dependency) has already been resolved to `foo@2.3.4`, running `yarn add foo@*`will cause Yarn to reuse `foo@2.3.4`, even if the latest `foo` is actually `foo@2.10.14`, thus preventing unnecessary duplication.\n\n Duplication happens when Yarn can't unlock dependencies that have already been locked inside the lockfile.\n\n **Example:** If `foo@^2.3.4` (a dependency of a dependency) has already been resolved to `foo@2.3.4`, running `yarn add foo@2.10.14` will cause Yarn to install `foo@2.10.14` because the existing resolution doesn't satisfy the range `2.10.14`. This behavior can lead to (sometimes) unwanted duplication, since now the lockfile contains 2 separate resolutions for the 2 `foo` descriptors, even though they have overlapping ranges, which means that the lockfile can be simplified so that both descriptors resolve to `foo@2.10.14`.\n ",examples:[["Dedupe all packages","$0 dedupe"],["Dedupe all packages using a specific strategy","$0 dedupe --strategy highest"],["Dedupe a specific package","$0 dedupe lodash"],["Dedupe all packages with the `@babel/*` scope","$0 dedupe '@babel/*'"],["Check for duplicates (can be used as a CI step)","$0 dedupe --check"]]});Fwr.default=z4e});var dQi=z(Zwr=>{"use strict";Object.defineProperty(Zwr,"__esModule",{value:!0});var CBc=nl(),mBc=Bn(),hBc=(Fl(),Ai(dg)),MSt=class extends CBc.BaseCommand{async execute(){let{plugins:t}=await mBc.Configuration.find(this.context.cwd,this.context.plugins),r=[];for(let g of t){let{commands:p}=g[1];if(p){let m=hBc.Cli.from(p).definitions();r.push([g[0],m])}}let s=this.cli.definitions(),a=(g,p)=>g.split(" ").slice(1).join()===p.split(" ").slice(1).join(),o=l8t()["@yarnpkg/builder"].bundles.standard;for(let g of r){let p=g[1];for(let f of p)s.find(m=>a(m.path,f.path)).plugin={name:g[0],isDefault:o.includes(g[0])}}this.context.stdout.write(`${JSON.stringify(s,null,2)} -`)}};MSt.paths=[["--clipanion=definitions"]];Zwr.default=MSt});var pQi=z(Lwr=>{"use strict";Object.defineProperty(Lwr,"__esModule",{value:!0});var _Bc=nl(),QSt=class extends _Bc.BaseCommand{async execute(){this.context.stdout.write(this.cli.usage(null))}};QSt.paths=[["help"],["--help"],["-h"]];Lwr.default=QSt});var CQi=z(Wwr=>{"use strict";Object.defineProperty(Wwr,"__esModule",{value:!0});var yBc=nl(),bBc=Bn(),fQi=Ro(),IQi=(Fl(),Ai(dg)),Vwr=class extends yBc.BaseCommand{constructor(){super(...arguments),this.leadingArgument=IQi.Option.String(),this.args=IQi.Option.Proxy()}async execute(){if(this.leadingArgument.match(/[\\/]/)&&!bBc.structUtils.tryParseIdent(this.leadingArgument)){let t=fQi.ppath.resolve(this.context.cwd,fQi.npath.toPortablePath(this.leadingArgument));return await this.cli.run(this.args,{cwd:t})}else return await this.cli.run(["run",this.leadingArgument,...this.args])}};Wwr.default=Vwr});var mQi=z(Pwr=>{"use strict";Object.defineProperty(Pwr,"__esModule",{value:!0});var EBc=nl(),BBc=Bn(),YSt=class extends EBc.BaseCommand{async execute(){this.context.stdout.write(`${BBc.YarnVersion||""} -`)}};YSt.paths=[["-v"],["--version"]];Pwr.default=YSt});var _Qi=z(Mwr=>{"use strict";Object.defineProperty(Mwr,"__esModule",{value:!0});var vBc=nl(),hQi=Bn(),SBc=Bn(),Owr=(Fl(),Ai(dg)),q4e=class extends vBc.BaseCommand{constructor(){super(...arguments),this.commandName=Owr.Option.String(),this.args=Owr.Option.Proxy()}async execute(){let t=await hQi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,locator:s}=await hQi.Project.find(t,this.context.cwd);return await r.restoreInstallState(),await SBc.scriptUtils.executePackageShellcode(s,this.commandName,this.args,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,project:r})}};q4e.paths=[["exec"]];q4e.usage=Owr.Command.Usage({description:"execute a shell script",details:` + `,examples:[["Print the active configuration settings","$0 config"]]});Lwr.default=z4e});var Wwr=z(pCe=>{"use strict";Object.defineProperty(pCe,"__esModule",{value:!0});pCe.acceptedStrategies=pCe.Strategy=void 0;pCe.dedupe=DBc;var TBc=(Oa(),Ai(Pa)),dCe=Bn(),KQ=Bn(),NBc=TBc.__importDefault(gk()),Vwr;(function(e){e.HIGHEST="highest"})(Vwr||(pCe.Strategy=Vwr={}));pCe.acceptedStrategies=new Set(Object.values(Vwr));var RBc={highest:async(e,t,{resolver:r,fetcher:s,resolveOptions:a,fetchOptions:o})=>{let g=new Map;for(let[f,m]of e.storedResolutions){let y=e.storedDescriptors.get(f);if(typeof y>"u")throw new Error(`Assertion failed: The descriptor (${f}) should have been registered`);dCe.miscUtils.getSetWithDefault(g,y.identHash).add(m)}let p=new Map(dCe.miscUtils.mapAndFilter(e.storedDescriptors.values(),f=>KQ.structUtils.isVirtualDescriptor(f)?dCe.miscUtils.mapAndFilter.skip:[f.descriptorHash,dCe.miscUtils.makeDeferred()]));for(let f of e.storedDescriptors.values()){let m=p.get(f.descriptorHash);if(typeof m>"u")throw new Error(`Assertion failed: The descriptor (${f.descriptorHash}) should have been registered`);let y=e.storedResolutions.get(f.descriptorHash);if(typeof y>"u")throw new Error(`Assertion failed: The resolution (${f.descriptorHash}) should have been registered`);let B=e.originalPackages.get(y);if(typeof B>"u")throw new Error(`Assertion failed: The package (${y}) should have been registered`);Promise.resolve().then(async()=>{let v=r.getResolutionDependencies(f,a),k=Object.fromEntries(await dCe.miscUtils.allSettledSafe(Object.entries(v).map(async([ae,ge])=>{let fe=p.get(ge.descriptorHash);if(typeof fe>"u")throw new Error(`Assertion failed: The descriptor (${ge.descriptorHash}) should have been registered`);let pe=await fe.promise;if(!pe)throw new Error("Assertion failed: Expected the dependency to have been through the dedupe process itself");return[ae,pe.updatedPackage]})));if(t.length&&!NBc.default.isMatch(KQ.structUtils.stringifyIdent(f),t)||!r.shouldPersistResolution(B,a))return B;let T=g.get(f.identHash);if(typeof T>"u")throw new Error(`Assertion failed: The resolutions (${f.identHash}) should have been registered`);if(T.size===1)return B;let O=[...T].map(ae=>{let ge=e.originalPackages.get(ae);if(typeof ge>"u")throw new Error(`Assertion failed: The package (${ae}) should have been registered`);return ge}),X=await r.getSatisfying(f,k,O,a),U=X.locators?.[0];if(typeof U>"u"||!X.sorted)return B;let le=e.originalPackages.get(U.locatorHash);if(typeof le>"u")throw new Error(`Assertion failed: The package (${U.locatorHash}) should have been registered`);return le}).then(async v=>{let k=await e.preparePackage(v,{resolver:r,resolveOptions:a});m.resolve({descriptor:f,currentPackage:B,updatedPackage:v,resolvedPackage:k})}).catch(v=>{m.reject(v)})}return[...p.values()].map(f=>f.promise)}};async function DBc(e,{strategy:t,patterns:r,cache:s,report:a}){let{configuration:o}=e,g=new dCe.ThrowReport,p=o.makeResolver(),f=o.makeFetcher(),m={cache:s,checksums:e.storedChecksums,fetcher:f,project:e,report:g,cacheOptions:{skipIntegrityCheck:!0}},y={project:e,resolver:p,report:g,fetchOptions:m};return await a.startTimerPromise("Deduplication step",async()=>{let B=RBc[t],v=await B(e,r,{resolver:p,resolveOptions:y,fetcher:f,fetchOptions:m}),k=dCe.Report.progressViaCounter(v.length);await a.reportProgress(k);let T=0;await Promise.all(v.map(U=>U.then(le=>{if(le===null||le.currentPackage.locatorHash===le.updatedPackage.locatorHash)return;T++;let{descriptor:ae,currentPackage:ge,updatedPackage:fe}=le;a.reportInfo(KQ.MessageName.UNNAMED,`${KQ.structUtils.prettyDescriptor(o,ae)} can be deduped from ${KQ.structUtils.prettyLocator(o,ge)} to ${KQ.structUtils.prettyLocator(o,fe)}`),a.reportJson({descriptor:KQ.structUtils.stringifyDescriptor(ae),currentResolution:KQ.structUtils.stringifyLocator(ge),updatedResolution:KQ.structUtils.stringifyLocator(fe)}),e.storedResolutions.set(ae.descriptorHash,fe.locatorHash)}).finally(()=>k.tick())));let O;switch(T){case 0:O="No packages";break;case 1:O="One package";break;default:O=`${T} packages`}let X=KQ.formatUtils.pretty(o,t,KQ.formatUtils.Type.CODE);return a.reportInfo(KQ.MessageName.UNNAMED,`${O} can be deduped using the ${X} strategy`),T})}});var h5i=z(Owr=>{"use strict";Object.defineProperty(Owr,"__esModule",{value:!0});var m5i=(Oa(),Ai(Pa)),xBc=il(),q4e=Bn(),FNe=(Zl(),Ai(pg)),C5i=m5i.__importStar((yL(),Ai(_L))),Pwr=m5i.__importStar(Wwr()),$4e=class extends xBc.BaseCommand{constructor(){super(...arguments),this.strategy=FNe.Option.String("-s,--strategy",Pwr.Strategy.HIGHEST,{description:"The strategy to use when deduping dependencies",validator:C5i.isEnum(Pwr.Strategy)}),this.check=FNe.Option.Boolean("-c,--check",!1,{description:"Exit with exit code 1 when duplicates are found, without persisting the dependency tree"}),this.json=FNe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.mode=FNe.Option.String("--mode",{description:"Change what artifacts installs generate",validator:C5i.isEnum(q4e.InstallMode)}),this.patterns=FNe.Option.Rest()}async execute(){let t=await q4e.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await q4e.Project.find(t,this.context.cwd),s=await q4e.Cache.find(t);await r.restoreInstallState({restoreResolutions:!1});let a=0,o=await q4e.StreamReport.start({configuration:t,includeFooter:!1,stdout:this.context.stdout,json:this.json},async g=>{a=await Pwr.dedupe(r,{strategy:this.strategy,patterns:this.patterns,cache:s,report:g})});return o.hasErrors()?o.exitCode():this.check?a?1:0:await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:s,mode:this.mode})}};$4e.paths=[["dedupe"]];$4e.usage=FNe.Command.Usage({description:"deduplicate dependencies with overlapping ranges",details:"\n Duplicates are defined as descriptors with overlapping ranges being resolved and locked to different locators. They are a natural consequence of Yarn's deterministic installs, but they can sometimes pile up and unnecessarily increase the size of your project.\n\n This command dedupes dependencies in the current project using different strategies (only one is implemented at the moment):\n\n - `highest`: Reuses (where possible) the locators with the highest versions. This means that dependencies can only be upgraded, never downgraded. It's also guaranteed that it never takes more than a single pass to dedupe the entire dependency tree.\n\n **Note:** Even though it never produces a wrong dependency tree, this command should be used with caution, as it modifies the dependency tree, which can sometimes cause problems when packages don't strictly follow semver recommendations. Because of this, it is recommended to also review the changes manually.\n\n If set, the `-c,--check` flag will only report the found duplicates, without persisting the modified dependency tree. If changes are found, the command will exit with a non-zero exit code, making it suitable for CI purposes.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n This command accepts glob patterns as arguments (if valid Idents and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them.\n\n ### In-depth explanation:\n\n Yarn doesn't deduplicate dependencies by default, otherwise installs wouldn't be deterministic and the lockfile would be useless. What it actually does is that it tries to not duplicate dependencies in the first place.\n\n **Example:** If `foo@^2.3.4` (a dependency of a dependency) has already been resolved to `foo@2.3.4`, running `yarn add foo@*`will cause Yarn to reuse `foo@2.3.4`, even if the latest `foo` is actually `foo@2.10.14`, thus preventing unnecessary duplication.\n\n Duplication happens when Yarn can't unlock dependencies that have already been locked inside the lockfile.\n\n **Example:** If `foo@^2.3.4` (a dependency of a dependency) has already been resolved to `foo@2.3.4`, running `yarn add foo@2.10.14` will cause Yarn to install `foo@2.10.14` because the existing resolution doesn't satisfy the range `2.10.14`. This behavior can lead to (sometimes) unwanted duplication, since now the lockfile contains 2 separate resolutions for the 2 `foo` descriptors, even though they have overlapping ranges, which means that the lockfile can be simplified so that both descriptors resolve to `foo@2.10.14`.\n ",examples:[["Dedupe all packages","$0 dedupe"],["Dedupe all packages using a specific strategy","$0 dedupe --strategy highest"],["Dedupe a specific package","$0 dedupe lodash"],["Dedupe all packages with the `@babel/*` scope","$0 dedupe '@babel/*'"],["Check for duplicates (can be used as a CI step)","$0 dedupe --check"]]});Owr.default=$4e});var _5i=z(Qwr=>{"use strict";Object.defineProperty(Qwr,"__esModule",{value:!0});var kBc=il(),GBc=Bn(),FBc=(Zl(),Ai(pg)),YSt=class extends kBc.BaseCommand{async execute(){let{plugins:t}=await GBc.Configuration.find(this.context.cwd,this.context.plugins),r=[];for(let g of t){let{commands:p}=g[1];if(p){let m=FBc.Cli.from(p).definitions();r.push([g[0],m])}}let s=this.cli.definitions(),a=(g,p)=>g.split(" ").slice(1).join()===p.split(" ").slice(1).join(),o=A8t()["@yarnpkg/builder"].bundles.standard;for(let g of r){let p=g[1];for(let f of p)s.find(m=>a(m.path,f.path)).plugin={name:g[0],isDefault:o.includes(g[0])}}this.context.stdout.write(`${JSON.stringify(s,null,2)} +`)}};YSt.paths=[["--clipanion=definitions"]];Qwr.default=YSt});var y5i=z(Mwr=>{"use strict";Object.defineProperty(Mwr,"__esModule",{value:!0});var ZBc=il(),XSt=class extends ZBc.BaseCommand{async execute(){this.context.stdout.write(this.cli.usage(null))}};XSt.paths=[["help"],["--help"],["-h"]];Mwr.default=XSt});var B5i=z(Ywr=>{"use strict";Object.defineProperty(Ywr,"__esModule",{value:!0});var LBc=il(),VBc=Bn(),b5i=No(),E5i=(Zl(),Ai(pg)),Hwr=class extends LBc.BaseCommand{constructor(){super(...arguments),this.leadingArgument=E5i.Option.String(),this.args=E5i.Option.Proxy()}async execute(){if(this.leadingArgument.match(/[\\/]/)&&!VBc.structUtils.tryParseIdent(this.leadingArgument)){let t=b5i.ppath.resolve(this.context.cwd,b5i.npath.toPortablePath(this.leadingArgument));return await this.cli.run(this.args,{cwd:t})}else return await this.cli.run(["run",this.leadingArgument,...this.args])}};Ywr.default=Hwr});var v5i=z(Xwr=>{"use strict";Object.defineProperty(Xwr,"__esModule",{value:!0});var WBc=il(),PBc=Bn(),JSt=class extends WBc.BaseCommand{async execute(){this.context.stdout.write(`${PBc.YarnVersion||""} +`)}};JSt.paths=[["-v"],["--version"]];Xwr.default=JSt});var w5i=z(Uwr=>{"use strict";Object.defineProperty(Uwr,"__esModule",{value:!0});var OBc=il(),S5i=Bn(),QBc=Bn(),Jwr=(Zl(),Ai(pg)),eJe=class extends OBc.BaseCommand{constructor(){super(...arguments),this.commandName=Jwr.Option.String(),this.args=Jwr.Option.Proxy()}async execute(){let t=await S5i.Configuration.find(this.context.cwd,this.context.plugins),{project:r,locator:s}=await S5i.Project.find(t,this.context.cwd);return await r.restoreInstallState(),await QBc.scriptUtils.executePackageShellcode(s,this.commandName,this.args,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,project:r})}};eJe.paths=[["exec"]];eJe.usage=Jwr.Command.Usage({description:"execute a shell script",details:` This command simply executes a shell script within the context of the root directory of the active workspace using the portable shell. It also makes sure to call it in a way that's compatible with the current project (for example, on PnP projects the environment will be setup in such a way that PnP will be correctly injected into the environment). - `,examples:[["Execute a single shell command","$0 exec echo Hello World"],["Execute a shell script",'$0 exec "tsc & babel src --out-dir lib"']]});Mwr.default=q4e});var BQi=z(eJe=>{"use strict";Object.defineProperty(eJe,"__esModule",{value:!0});eJe.explainPeerRequirement=bQi;eJe.explainPeerRequirements=EQi;var wBc=(Ma(),Ai(Oa)),TBc=nl(),Zd=Bn(),yQi=(Fl(),Ai(dg)),Qwr=wBc.__importStar((_L(),Ai(hL))),$4e=class extends TBc.BaseCommand{constructor(){super(...arguments),this.hash=yQi.Option.String({required:!1,validator:Qwr.cascade(Qwr.isString(),[Qwr.matchesRegExp(/^p[0-9a-f]{5}$/)])})}async execute(){let t=await Zd.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Zd.Project.find(t,this.context.cwd);return await r.restoreInstallState({restoreResolutions:!1}),await r.applyLightResolution(),typeof this.hash<"u"?await bQi(this.hash,r,{stdout:this.context.stdout}):await EQi(r,{stdout:this.context.stdout})}};$4e.paths=[["explain","peer-requirements"]];$4e.usage=yQi.Command.Usage({description:"explain a set of peer requirements",details:` + `,examples:[["Execute a single shell command","$0 exec echo Hello World"],["Execute a shell script",'$0 exec "tsc & babel src --out-dir lib"']]});Uwr.default=eJe});var D5i=z(rJe=>{"use strict";Object.defineProperty(rJe,"__esModule",{value:!0});rJe.explainPeerRequirement=N5i;rJe.explainPeerRequirements=R5i;var MBc=(Oa(),Ai(Pa)),HBc=il(),Ld=Bn(),T5i=(Zl(),Ai(pg)),Kwr=MBc.__importStar((yL(),Ai(_L))),tJe=class extends HBc.BaseCommand{constructor(){super(...arguments),this.hash=T5i.Option.String({required:!1,validator:Kwr.cascade(Kwr.isString(),[Kwr.matchesRegExp(/^p[0-9a-f]{5}$/)])})}async execute(){let t=await Ld.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Ld.Project.find(t,this.context.cwd);return await r.restoreInstallState({restoreResolutions:!1}),await r.applyLightResolution(),typeof this.hash<"u"?await N5i(this.hash,r,{stdout:this.context.stdout}):await R5i(r,{stdout:this.context.stdout})}};tJe.paths=[["explain","peer-requirements"]];tJe.usage=T5i.Command.Usage({description:"explain a set of peer requirements",details:` A peer requirement represents all peer requests that a subject must satisfy when providing a requested package to requesters. When the hash argument is specified, this command prints a detailed explanation of the peer requirement corresponding to the hash and whether it is satisfied or not. @@ -1285,35 +1285,35 @@ Try running the command again with the package name prefixed: ${d3.formatUtils.p When used without arguments, this command lists all peer requirements and the corresponding hash that can be used to get detailed information about a given requirement. **Note:** A hash is a six-letter p-prefixed code that can be obtained from peer dependency warnings or from the list of all peer requirements (\`yarn explain peer-requirements\`). - `,examples:[["Explain the corresponding peer requirement for a hash","$0 explain peer-requirements p1a4ed"],["List all peer requirements","$0 explain peer-requirements"]]});eJe.default=$4e;async function bQi(e,t,r){let s=t.peerRequirementNodes.get(e);if(typeof s>"u")throw new Error(`No peerDependency requirements found for hash: "${e}"`);let a=new Set,o=f=>a.has(f.requester.locatorHash)?{value:Zd.formatUtils.tuple(Zd.formatUtils.Type.DEPENDENT,{locator:f.requester,descriptor:f.descriptor}),children:f.children.size>0?[{value:Zd.formatUtils.tuple(Zd.formatUtils.Type.NO_HINT,"...")}]:[]}:(a.add(f.requester.locatorHash),{value:Zd.formatUtils.tuple(Zd.formatUtils.Type.DEPENDENT,{locator:f.requester,descriptor:f.descriptor}),children:Object.fromEntries(Array.from(f.children.values(),m=>[Zd.structUtils.stringifyLocator(m.requester),o(m)]))}),g=t.peerWarnings.find(f=>f.hash===e);return(await Zd.StreamReport.start({configuration:t.configuration,stdout:r.stdout,includeFooter:!1,includePrefix:!1},async f=>{let m=Zd.formatUtils.mark(t.configuration),y=g?m.Cross:m.Check;if(f.reportInfo(Zd.MessageName.UNNAMED,`Package ${Zd.formatUtils.pretty(t.configuration,s.subject,Zd.formatUtils.Type.LOCATOR)} is requested to provide ${Zd.formatUtils.pretty(t.configuration,s.ident,Zd.formatUtils.Type.IDENT)} by its descendants`),f.reportSeparator(),f.reportInfo(Zd.MessageName.UNNAMED,Zd.formatUtils.pretty(t.configuration,s.subject,Zd.formatUtils.Type.LOCATOR)),Zd.treeUtils.emitTree({children:Object.fromEntries(Array.from(s.requests.values(),B=>[Zd.structUtils.stringifyLocator(B.requester),o(B)]))},{configuration:t.configuration,stdout:r.stdout,json:!1}),f.reportSeparator(),s.provided.range==="missing:"){let B=g?"":" , but all peer requests are optional";f.reportInfo(Zd.MessageName.UNNAMED,`${y} Package ${Zd.formatUtils.pretty(t.configuration,s.subject,Zd.formatUtils.Type.LOCATOR)} does not provide ${Zd.formatUtils.pretty(t.configuration,s.ident,Zd.formatUtils.Type.IDENT)}${B}.`)}else{let B=t.storedResolutions.get(s.provided.descriptorHash);if(!B)throw new Error("Assertion failed: Expected the descriptor to be registered");let v=t.storedPackages.get(B);if(!v)throw new Error("Assertion failed: Expected the package to be registered");f.reportInfo(Zd.MessageName.UNNAMED,`${y} Package ${Zd.formatUtils.pretty(t.configuration,s.subject,Zd.formatUtils.Type.LOCATOR)} provides ${Zd.formatUtils.pretty(t.configuration,s.ident,Zd.formatUtils.Type.IDENT)} with version ${Zd.structUtils.prettyReference(t.configuration,v.version??"0.0.0")}, ${g?"which does not satisfy all requests.":"which satisfies all requests"}`),g?.type===Zd.PeerWarningType.NodeNotCompatible&&(g.range?f.reportInfo(Zd.MessageName.UNNAMED,` The combined requested range is ${Zd.formatUtils.pretty(t.configuration,g.range,Zd.formatUtils.Type.RANGE)}`):f.reportInfo(Zd.MessageName.UNNAMED," Unfortunately, the requested ranges have no overlap"))}})).exitCode()}async function EQi(e,t){return(await Zd.StreamReport.start({configuration:e.configuration,stdout:t.stdout,includeFooter:!1,includePrefix:!1},async s=>{let a=Zd.formatUtils.mark(e.configuration),o=Zd.miscUtils.sortMap(e.peerRequirementNodes,[([,g])=>Zd.structUtils.stringifyLocator(g.subject),([,g])=>Zd.structUtils.stringifyIdent(g.ident)]);for(let[,g]of o.values()){if(!g.root)continue;let p=e.peerWarnings.find(y=>y.hash===g.hash),f=[...Zd.structUtils.allPeerRequests(g)],m;if(f.length>2?m=` and ${f.length-1} other dependencies`:f.length===2?m=" and 1 other dependency":m="",g.provided.range!=="missing:"){let y=e.storedResolutions.get(g.provided.descriptorHash);if(!y)throw new Error("Assertion failed: Expected the resolution to have been registered");let B=e.storedPackages.get(y);if(!B)throw new Error("Assertion failed: Expected the provided package to have been registered");let v=`${Zd.formatUtils.pretty(e.configuration,g.hash,Zd.formatUtils.Type.CODE)} \u2192 ${p?a.Cross:a.Check} ${Zd.structUtils.prettyLocator(e.configuration,g.subject)} provides ${Zd.structUtils.prettyLocator(e.configuration,B)} to ${Zd.structUtils.prettyLocator(e.configuration,f[0].requester)}${m}`;p?s.reportWarning(Zd.MessageName.UNNAMED,v):s.reportInfo(Zd.MessageName.UNNAMED,v)}else{let y=`${Zd.formatUtils.pretty(e.configuration,g.hash,Zd.formatUtils.Type.CODE)} \u2192 ${p?a.Cross:a.Check} ${Zd.structUtils.prettyLocator(e.configuration,g.subject)} doesn't provide ${Zd.structUtils.prettyIdent(e.configuration,g.ident)} to ${Zd.structUtils.prettyLocator(e.configuration,f[0].requester)}${m}`;p?s.reportWarning(Zd.MessageName.UNNAMED,y):s.reportInfo(Zd.MessageName.UNNAMED,y)}}})).exitCode()}});var XSt=z(GNe=>{"use strict";Object.defineProperty(GNe,"__esModule",{value:!0});GNe.resolveRange=vQi;GNe.resolveTag=HSt;GNe.setVersion=SQi;var NBc=(Ma(),Ai(Oa)),RBc=nl(),tG=Bn(),gv=Bn(),uv=Ro(),fae=(Fl(),Ai(dg)),DBc=NBc.__importDefault(Lh()),tJe=class extends RBc.BaseCommand{constructor(){super(...arguments),this.useYarnPath=fae.Option.Boolean("--yarn-path",{description:"Set the yarnPath setting even if the version can be accessed by Corepack"}),this.onlyIfNeeded=fae.Option.Boolean("--only-if-needed",!1,{description:"Only lock the Yarn version if it isn't already locked"}),this.version=fae.Option.String()}async execute(){let t=await tG.Configuration.find(this.context.cwd,this.context.plugins);if(this.onlyIfNeeded&&t.get("yarnPath")){let g=t.sources.get("yarnPath");if(!g)throw new Error("Assertion failed: Expected 'yarnPath' to have a source");let p=t.projectCwd??t.startingCwd;if(uv.ppath.contains(p,g))return 0}let r=()=>{if(typeof tG.YarnVersion>"u")throw new fae.UsageError("The --install flag can only be used without explicit version specifier from the Yarn CLI");return`file://${process.argv[1]}`},s,a=(g,p)=>({version:p,url:g.replace(/\{\}/g,p)});if(this.version==="self")s={url:r(),version:tG.YarnVersion??"self"};else if(this.version==="latest"||this.version==="berry"||this.version==="stable")s=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",await HSt(t,"stable"));else if(this.version==="canary")s=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",await HSt(t,"canary"));else if(this.version==="classic")s={url:"https://classic.yarnpkg.com/latest.js",version:"classic"};else if(this.version.match(/^https?:/))s={url:this.version,version:"remote"};else if(this.version.match(/^\.{0,2}[\\/]/)||uv.npath.isAbsolute(this.version))s={url:`file://${uv.ppath.resolve(uv.npath.toPortablePath(this.version))}`,version:"file"};else if(gv.semverUtils.satisfiesWithPrereleases(this.version,">=2.0.0"))s=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",this.version);else if(gv.semverUtils.satisfiesWithPrereleases(this.version,"^0.x || ^1.x"))s=a("https://github.com/yarnpkg/yarn/releases/download/v{}/yarn-{}.js",this.version);else if(gv.semverUtils.validRange(this.version))s=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",await vQi(t,this.version));else throw new fae.UsageError(`Invalid version descriptor "${this.version}"`);return(await tG.StreamReport.start({configuration:t,stdout:this.context.stdout,includeLogs:!this.context.quiet},async g=>{let p=async()=>{let f="file://";return s.url.startsWith(f)?(g.reportInfo(tG.MessageName.UNNAMED,`Retrieving ${gv.formatUtils.pretty(t,s.url,gv.formatUtils.Type.PATH)}`),await uv.xfs.readFilePromise(s.url.slice(f.length))):(g.reportInfo(tG.MessageName.UNNAMED,`Downloading ${gv.formatUtils.pretty(t,s.url,gv.formatUtils.Type.URL)}`),await gv.httpUtils.get(s.url,{configuration:t}))};await SQi(t,s.version,p,{report:g,useYarnPath:this.useYarnPath})})).exitCode()}};tJe.paths=[["set","version"]];tJe.usage=fae.Command.Usage({description:"lock the Yarn version used by the project",details:"\n This command will set a specific release of Yarn to be used by Corepack: https://nodejs.org/api/corepack.html.\n\n By default it only will set the `packageManager` field at the root of your project, but if the referenced release cannot be represented this way, if you already have `yarnPath` configured, or if you set the `--yarn-path` command line flag, then the release will also be downloaded from the Yarn GitHub repository, stored inside your project, and referenced via the `yarnPath` settings from your project `.yarnrc.yml` file.\n\n A very good use case for this command is to enforce the version of Yarn used by any single member of your team inside the same project - by doing this you ensure that you have control over Yarn upgrades and downgrades (including on your deployment servers), and get rid of most of the headaches related to someone using a slightly different version and getting different behavior.\n\n The version specifier can be:\n\n - a tag:\n - `latest` / `berry` / `stable` -> the most recent stable berry (`>=2.0.0`) release\n - `canary` -> the most recent canary (release candidate) berry (`>=2.0.0`) release\n - `classic` -> the most recent classic (`^0.x || ^1.x`) release\n\n - a semver range (e.g. `2.x`) -> the most recent version satisfying the range (limited to berry releases)\n\n - a semver version (e.g. `2.4.1`, `1.22.1`)\n\n - a local file referenced through either a relative or absolute path\n\n - `self` -> the version used to invoke the command\n ",examples:[["Download the latest release from the Yarn repository","$0 set version latest"],["Download the latest canary release from the Yarn repository","$0 set version canary"],["Download the latest classic release from the Yarn repository","$0 set version classic"],["Download the most recent Yarn 3 build","$0 set version 3.x"],["Download a specific Yarn 2 build","$0 set version 2.0.0-rc.30"],["Switch back to a specific Yarn 1 release","$0 set version 1.22.1"],["Use a release from the local filesystem","$0 set version ./yarn.cjs"],["Use a release from a URL","$0 set version https://repo.yarnpkg.com/3.1.0/packages/yarnpkg-cli/bin/yarn.js"],["Download the version used to invoke the command","$0 set version self"]]});GNe.default=tJe;async function vQi(e,t){let s=(await gv.httpUtils.get("https://repo.yarnpkg.com/tags",{configuration:e,jsonResponse:!0})).tags.filter(a=>gv.semverUtils.satisfiesWithPrereleases(a,t));if(s.length===0)throw new fae.UsageError(`No matching release found for range ${gv.formatUtils.pretty(e,t,gv.formatUtils.Type.RANGE)}.`);return s[0]}async function HSt(e,t){let r=await gv.httpUtils.get("https://repo.yarnpkg.com/tags",{configuration:e,jsonResponse:!0});if(!r.latest[t])throw new fae.UsageError(`Tag ${gv.formatUtils.pretty(e,t,gv.formatUtils.Type.RANGE)} not found`);return r.latest[t]}async function SQi(e,t,r,{report:s,useYarnPath:a}){let o,g=async()=>(typeof o>"u"&&(o=await r()),o);if(t===null){let ae=await g();await uv.xfs.mktempPromise(async ge=>{let fe=uv.ppath.join(ge,"yarn.cjs");await uv.xfs.writeFilePromise(fe,ae);let{stdout:pe}=await gv.execUtils.execvp(process.execPath,[uv.npath.fromPortablePath(fe),"--version"],{cwd:ge,env:{...e.env,YARN_IGNORE_PATH:"1"}});if(t=pe.trim(),!DBc.default.valid(t))throw new Error(`Invalid semver version. ${gv.formatUtils.pretty(e,"yarn --version",gv.formatUtils.Type.CODE)} returned: -${t}`)})}let p=e.projectCwd??e.startingCwd,f=uv.ppath.resolve(p,".yarn/releases"),m=uv.ppath.resolve(f,`yarn-${t}.mjs`),y=uv.ppath.relative(e.startingCwd,m),B=gv.miscUtils.isTaggedYarnVersion(t),v=e.get("yarnPath"),G=!B,T=G||!!v||!!a;if(a===!1){if(G)throw new tG.ReportError(tG.MessageName.UNNAMED,"You explicitly opted out of yarnPath usage in your command line, but the version you specified cannot be represented by Corepack");T=!1}else!T&&!process.env.COREPACK_ROOT&&(s.reportWarning(tG.MessageName.UNNAMED,`You don't seem to have ${gv.formatUtils.applyHyperlink(e,"Corepack","https://nodejs.org/api/corepack.html")} enabled; we'll have to rely on ${gv.formatUtils.applyHyperlink(e,"yarnPath","https://yarnpkg.com/configuration/yarnrc#yarnPath")} instead`),T=!0);if(T){let ae=await g();s.reportInfo(tG.MessageName.UNNAMED,`Saving the new release in ${gv.formatUtils.pretty(e,y,"magenta")}`),await uv.xfs.removePromise(uv.ppath.dirname(m)),await uv.xfs.mkdirPromise(uv.ppath.dirname(m),{recursive:!0}),await uv.xfs.writeFilePromise(m,ae,{mode:493}),await tG.Configuration.updateConfiguration(p,{yarnPath:uv.ppath.relative(p,m)})}else await uv.xfs.removePromise(uv.ppath.dirname(m)),await tG.Configuration.updateConfiguration(p,{yarnPath:tG.Configuration.deleteProperty});let O=await tG.Manifest.tryFind(p)||new tG.Manifest;O.packageManager=`yarn@${B?t:await HSt(e,"stable")}`;let X={};O.exportTo(X);let U=uv.ppath.join(p,tG.Manifest.fileName),le=`${JSON.stringify(X,null,O.indent)} -`;return await uv.xfs.changeFilePromise(U,le,{automaticNewlines:!0}),{bundleVersion:t}}});var NQi=z(JSt=>{"use strict";Object.defineProperty(JSt,"__esModule",{value:!0});JSt.getErrorCodeDetails=TQi;var xBc=(Ma(),Ai(Oa)),kBc=nl(),Av=Bn(),Hwr=(Fl(),Ai(dg)),Ywr=xBc.__importStar((_L(),Ai(hL))),GBc=XSt();function wQi(e){return Av.MessageName[(0,Av.parseMessageName)(e)]}var FBc=/## (?YN[0-9]{4}) - `(?[A-Z_]+)`\n\n(?
(?:.(?!##))+)/gs;async function TQi(e){let r=`https://repo.yarnpkg.com/${Av.miscUtils.isTaggedYarnVersion(Av.YarnVersion)?Av.YarnVersion:await(0,GBc.resolveTag)(e,"canary")}/packages/docusaurus/docs/advanced/01-general-reference/error-codes.mdx`,s=await Av.httpUtils.get(r,{configuration:e});return new Map(Array.from(s.toString().matchAll(FBc),({groups:a})=>{if(!a)throw new Error("Assertion failed: Expected the match to have been successful");let o=wQi(a.code);if(a.name!==o)throw new Error(`Assertion failed: Invalid error code data: Expected "${a.name}" to be named "${o}"`);return[a.code,a.details]}))}var rJe=class extends kBc.BaseCommand{constructor(){super(...arguments),this.code=Hwr.Option.String({required:!1,validator:Ywr.applyCascade(Ywr.isString(),[Ywr.matchesRegExp(/^YN[0-9]{4}$/)])}),this.json=Hwr.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await Av.Configuration.find(this.context.cwd,this.context.plugins);if(typeof this.code<"u"){let r=wQi(this.code),s=Av.formatUtils.pretty(t,r,Av.formatUtils.Type.CODE),a=this.cli.format().header(`${this.code} - ${s}`),g=(await TQi(t)).get(this.code),p=typeof g<"u"?Av.formatUtils.jsonOrPretty(this.json,t,Av.formatUtils.tuple(Av.formatUtils.Type.MARKDOWN,{text:g,format:this.cli.format(),paragraphs:!0})):`This error code does not have a description. + `,examples:[["Explain the corresponding peer requirement for a hash","$0 explain peer-requirements p1a4ed"],["List all peer requirements","$0 explain peer-requirements"]]});rJe.default=tJe;async function N5i(e,t,r){let s=t.peerRequirementNodes.get(e);if(typeof s>"u")throw new Error(`No peerDependency requirements found for hash: "${e}"`);let a=new Set,o=f=>a.has(f.requester.locatorHash)?{value:Ld.formatUtils.tuple(Ld.formatUtils.Type.DEPENDENT,{locator:f.requester,descriptor:f.descriptor}),children:f.children.size>0?[{value:Ld.formatUtils.tuple(Ld.formatUtils.Type.NO_HINT,"...")}]:[]}:(a.add(f.requester.locatorHash),{value:Ld.formatUtils.tuple(Ld.formatUtils.Type.DEPENDENT,{locator:f.requester,descriptor:f.descriptor}),children:Object.fromEntries(Array.from(f.children.values(),m=>[Ld.structUtils.stringifyLocator(m.requester),o(m)]))}),g=t.peerWarnings.find(f=>f.hash===e);return(await Ld.StreamReport.start({configuration:t.configuration,stdout:r.stdout,includeFooter:!1,includePrefix:!1},async f=>{let m=Ld.formatUtils.mark(t.configuration),y=g?m.Cross:m.Check;if(f.reportInfo(Ld.MessageName.UNNAMED,`Package ${Ld.formatUtils.pretty(t.configuration,s.subject,Ld.formatUtils.Type.LOCATOR)} is requested to provide ${Ld.formatUtils.pretty(t.configuration,s.ident,Ld.formatUtils.Type.IDENT)} by its descendants`),f.reportSeparator(),f.reportInfo(Ld.MessageName.UNNAMED,Ld.formatUtils.pretty(t.configuration,s.subject,Ld.formatUtils.Type.LOCATOR)),Ld.treeUtils.emitTree({children:Object.fromEntries(Array.from(s.requests.values(),B=>[Ld.structUtils.stringifyLocator(B.requester),o(B)]))},{configuration:t.configuration,stdout:r.stdout,json:!1}),f.reportSeparator(),s.provided.range==="missing:"){let B=g?"":" , but all peer requests are optional";f.reportInfo(Ld.MessageName.UNNAMED,`${y} Package ${Ld.formatUtils.pretty(t.configuration,s.subject,Ld.formatUtils.Type.LOCATOR)} does not provide ${Ld.formatUtils.pretty(t.configuration,s.ident,Ld.formatUtils.Type.IDENT)}${B}.`)}else{let B=t.storedResolutions.get(s.provided.descriptorHash);if(!B)throw new Error("Assertion failed: Expected the descriptor to be registered");let v=t.storedPackages.get(B);if(!v)throw new Error("Assertion failed: Expected the package to be registered");f.reportInfo(Ld.MessageName.UNNAMED,`${y} Package ${Ld.formatUtils.pretty(t.configuration,s.subject,Ld.formatUtils.Type.LOCATOR)} provides ${Ld.formatUtils.pretty(t.configuration,s.ident,Ld.formatUtils.Type.IDENT)} with version ${Ld.structUtils.prettyReference(t.configuration,v.version??"0.0.0")}, ${g?"which does not satisfy all requests.":"which satisfies all requests"}`),g?.type===Ld.PeerWarningType.NodeNotCompatible&&(g.range?f.reportInfo(Ld.MessageName.UNNAMED,` The combined requested range is ${Ld.formatUtils.pretty(t.configuration,g.range,Ld.formatUtils.Type.RANGE)}`):f.reportInfo(Ld.MessageName.UNNAMED," Unfortunately, the requested ranges have no overlap"))}})).exitCode()}async function R5i(e,t){return(await Ld.StreamReport.start({configuration:e.configuration,stdout:t.stdout,includeFooter:!1,includePrefix:!1},async s=>{let a=Ld.formatUtils.mark(e.configuration),o=Ld.miscUtils.sortMap(e.peerRequirementNodes,[([,g])=>Ld.structUtils.stringifyLocator(g.subject),([,g])=>Ld.structUtils.stringifyIdent(g.ident)]);for(let[,g]of o.values()){if(!g.root)continue;let p=e.peerWarnings.find(y=>y.hash===g.hash),f=[...Ld.structUtils.allPeerRequests(g)],m;if(f.length>2?m=` and ${f.length-1} other dependencies`:f.length===2?m=" and 1 other dependency":m="",g.provided.range!=="missing:"){let y=e.storedResolutions.get(g.provided.descriptorHash);if(!y)throw new Error("Assertion failed: Expected the resolution to have been registered");let B=e.storedPackages.get(y);if(!B)throw new Error("Assertion failed: Expected the provided package to have been registered");let v=`${Ld.formatUtils.pretty(e.configuration,g.hash,Ld.formatUtils.Type.CODE)} \u2192 ${p?a.Cross:a.Check} ${Ld.structUtils.prettyLocator(e.configuration,g.subject)} provides ${Ld.structUtils.prettyLocator(e.configuration,B)} to ${Ld.structUtils.prettyLocator(e.configuration,f[0].requester)}${m}`;p?s.reportWarning(Ld.MessageName.UNNAMED,v):s.reportInfo(Ld.MessageName.UNNAMED,v)}else{let y=`${Ld.formatUtils.pretty(e.configuration,g.hash,Ld.formatUtils.Type.CODE)} \u2192 ${p?a.Cross:a.Check} ${Ld.structUtils.prettyLocator(e.configuration,g.subject)} doesn't provide ${Ld.structUtils.prettyIdent(e.configuration,g.ident)} to ${Ld.structUtils.prettyLocator(e.configuration,f[0].requester)}${m}`;p?s.reportWarning(Ld.MessageName.UNNAMED,y):s.reportInfo(Ld.MessageName.UNNAMED,y)}}})).exitCode()}});var KSt=z(ZNe=>{"use strict";Object.defineProperty(ZNe,"__esModule",{value:!0});ZNe.resolveRange=x5i;ZNe.resolveTag=USt;ZNe.setVersion=k5i;var YBc=(Oa(),Ai(Pa)),XBc=il(),oG=Bn(),Av=Bn(),gv=No(),Bae=(Zl(),Ai(pg)),JBc=YBc.__importDefault(Vh()),nJe=class extends XBc.BaseCommand{constructor(){super(...arguments),this.useYarnPath=Bae.Option.Boolean("--yarn-path",{description:"Set the yarnPath setting even if the version can be accessed by Corepack"}),this.onlyIfNeeded=Bae.Option.Boolean("--only-if-needed",!1,{description:"Only lock the Yarn version if it isn't already locked"}),this.version=Bae.Option.String()}async execute(){let t=await oG.Configuration.find(this.context.cwd,this.context.plugins);if(this.onlyIfNeeded&&t.get("yarnPath")){let g=t.sources.get("yarnPath");if(!g)throw new Error("Assertion failed: Expected 'yarnPath' to have a source");let p=t.projectCwd??t.startingCwd;if(gv.ppath.contains(p,g))return 0}let r=()=>{if(typeof oG.YarnVersion>"u")throw new Bae.UsageError("The --install flag can only be used without explicit version specifier from the Yarn CLI");return`file://${process.argv[1]}`},s,a=(g,p)=>({version:p,url:g.replace(/\{\}/g,p)});if(this.version==="self")s={url:r(),version:oG.YarnVersion??"self"};else if(this.version==="latest"||this.version==="berry"||this.version==="stable")s=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",await USt(t,"stable"));else if(this.version==="canary")s=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",await USt(t,"canary"));else if(this.version==="classic")s={url:"https://classic.yarnpkg.com/latest.js",version:"classic"};else if(this.version.match(/^https?:/))s={url:this.version,version:"remote"};else if(this.version.match(/^\.{0,2}[\\/]/)||gv.npath.isAbsolute(this.version))s={url:`file://${gv.ppath.resolve(gv.npath.toPortablePath(this.version))}`,version:"file"};else if(Av.semverUtils.satisfiesWithPrereleases(this.version,">=2.0.0"))s=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",this.version);else if(Av.semverUtils.satisfiesWithPrereleases(this.version,"^0.x || ^1.x"))s=a("https://github.com/yarnpkg/yarn/releases/download/v{}/yarn-{}.js",this.version);else if(Av.semverUtils.validRange(this.version))s=a("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",await x5i(t,this.version));else throw new Bae.UsageError(`Invalid version descriptor "${this.version}"`);return(await oG.StreamReport.start({configuration:t,stdout:this.context.stdout,includeLogs:!this.context.quiet},async g=>{let p=async()=>{let f="file://";return s.url.startsWith(f)?(g.reportInfo(oG.MessageName.UNNAMED,`Retrieving ${Av.formatUtils.pretty(t,s.url,Av.formatUtils.Type.PATH)}`),await gv.xfs.readFilePromise(s.url.slice(f.length))):(g.reportInfo(oG.MessageName.UNNAMED,`Downloading ${Av.formatUtils.pretty(t,s.url,Av.formatUtils.Type.URL)}`),await Av.httpUtils.get(s.url,{configuration:t}))};await k5i(t,s.version,p,{report:g,useYarnPath:this.useYarnPath})})).exitCode()}};nJe.paths=[["set","version"]];nJe.usage=Bae.Command.Usage({description:"lock the Yarn version used by the project",details:"\n This command will set a specific release of Yarn to be used by Corepack: https://nodejs.org/api/corepack.html.\n\n By default it only will set the `packageManager` field at the root of your project, but if the referenced release cannot be represented this way, if you already have `yarnPath` configured, or if you set the `--yarn-path` command line flag, then the release will also be downloaded from the Yarn GitHub repository, stored inside your project, and referenced via the `yarnPath` settings from your project `.yarnrc.yml` file.\n\n A very good use case for this command is to enforce the version of Yarn used by any single member of your team inside the same project - by doing this you ensure that you have control over Yarn upgrades and downgrades (including on your deployment servers), and get rid of most of the headaches related to someone using a slightly different version and getting different behavior.\n\n The version specifier can be:\n\n - a tag:\n - `latest` / `berry` / `stable` -> the most recent stable berry (`>=2.0.0`) release\n - `canary` -> the most recent canary (release candidate) berry (`>=2.0.0`) release\n - `classic` -> the most recent classic (`^0.x || ^1.x`) release\n\n - a semver range (e.g. `2.x`) -> the most recent version satisfying the range (limited to berry releases)\n\n - a semver version (e.g. `2.4.1`, `1.22.1`)\n\n - a local file referenced through either a relative or absolute path\n\n - `self` -> the version used to invoke the command\n ",examples:[["Download the latest release from the Yarn repository","$0 set version latest"],["Download the latest canary release from the Yarn repository","$0 set version canary"],["Download the latest classic release from the Yarn repository","$0 set version classic"],["Download the most recent Yarn 3 build","$0 set version 3.x"],["Download a specific Yarn 2 build","$0 set version 2.0.0-rc.30"],["Switch back to a specific Yarn 1 release","$0 set version 1.22.1"],["Use a release from the local filesystem","$0 set version ./yarn.cjs"],["Use a release from a URL","$0 set version https://repo.yarnpkg.com/3.1.0/packages/yarnpkg-cli/bin/yarn.js"],["Download the version used to invoke the command","$0 set version self"]]});ZNe.default=nJe;async function x5i(e,t){let s=(await Av.httpUtils.get("https://repo.yarnpkg.com/tags",{configuration:e,jsonResponse:!0})).tags.filter(a=>Av.semverUtils.satisfiesWithPrereleases(a,t));if(s.length===0)throw new Bae.UsageError(`No matching release found for range ${Av.formatUtils.pretty(e,t,Av.formatUtils.Type.RANGE)}.`);return s[0]}async function USt(e,t){let r=await Av.httpUtils.get("https://repo.yarnpkg.com/tags",{configuration:e,jsonResponse:!0});if(!r.latest[t])throw new Bae.UsageError(`Tag ${Av.formatUtils.pretty(e,t,Av.formatUtils.Type.RANGE)} not found`);return r.latest[t]}async function k5i(e,t,r,{report:s,useYarnPath:a}){let o,g=async()=>(typeof o>"u"&&(o=await r()),o);if(t===null){let ae=await g();await gv.xfs.mktempPromise(async ge=>{let fe=gv.ppath.join(ge,"yarn.cjs");await gv.xfs.writeFilePromise(fe,ae);let{stdout:pe}=await Av.execUtils.execvp(process.execPath,[gv.npath.fromPortablePath(fe),"--version"],{cwd:ge,env:{...e.env,YARN_IGNORE_PATH:"1"}});if(t=pe.trim(),!JBc.default.valid(t))throw new Error(`Invalid semver version. ${Av.formatUtils.pretty(e,"yarn --version",Av.formatUtils.Type.CODE)} returned: +${t}`)})}let p=e.projectCwd??e.startingCwd,f=gv.ppath.resolve(p,".yarn/releases"),m=gv.ppath.resolve(f,`yarn-${t}.mjs`),y=gv.ppath.relative(e.startingCwd,m),B=Av.miscUtils.isTaggedYarnVersion(t),v=e.get("yarnPath"),k=!B,T=k||!!v||!!a;if(a===!1){if(k)throw new oG.ReportError(oG.MessageName.UNNAMED,"You explicitly opted out of yarnPath usage in your command line, but the version you specified cannot be represented by Corepack");T=!1}else!T&&!process.env.COREPACK_ROOT&&(s.reportWarning(oG.MessageName.UNNAMED,`You don't seem to have ${Av.formatUtils.applyHyperlink(e,"Corepack","https://nodejs.org/api/corepack.html")} enabled; we'll have to rely on ${Av.formatUtils.applyHyperlink(e,"yarnPath","https://yarnpkg.com/configuration/yarnrc#yarnPath")} instead`),T=!0);if(T){let ae=await g();s.reportInfo(oG.MessageName.UNNAMED,`Saving the new release in ${Av.formatUtils.pretty(e,y,"magenta")}`),await gv.xfs.removePromise(gv.ppath.dirname(m)),await gv.xfs.mkdirPromise(gv.ppath.dirname(m),{recursive:!0}),await gv.xfs.writeFilePromise(m,ae,{mode:493}),await oG.Configuration.updateConfiguration(p,{yarnPath:gv.ppath.relative(p,m)})}else await gv.xfs.removePromise(gv.ppath.dirname(m)),await oG.Configuration.updateConfiguration(p,{yarnPath:oG.Configuration.deleteProperty});let O=await oG.Manifest.tryFind(p)||new oG.Manifest;O.packageManager=`yarn@${B?t:await USt(e,"stable")}`;let X={};O.exportTo(X);let U=gv.ppath.join(p,oG.Manifest.fileName),le=`${JSON.stringify(X,null,O.indent)} +`;return await gv.xfs.changeFilePromise(U,le,{automaticNewlines:!0}),{bundleVersion:t}}});var Z5i=z(jSt=>{"use strict";Object.defineProperty(jSt,"__esModule",{value:!0});jSt.getErrorCodeDetails=F5i;var UBc=(Oa(),Ai(Pa)),KBc=il(),dv=Bn(),zwr=(Zl(),Ai(pg)),jwr=UBc.__importStar((yL(),Ai(_L))),jBc=KSt();function G5i(e){return dv.MessageName[(0,dv.parseMessageName)(e)]}var zBc=/## (?YN[0-9]{4}) - `(?[A-Z_]+)`\n\n(?
(?:.(?!##))+)/gs;async function F5i(e){let r=`https://repo.yarnpkg.com/${dv.miscUtils.isTaggedYarnVersion(dv.YarnVersion)?dv.YarnVersion:await(0,jBc.resolveTag)(e,"canary")}/packages/docusaurus/docs/advanced/01-general-reference/error-codes.mdx`,s=await dv.httpUtils.get(r,{configuration:e});return new Map(Array.from(s.toString().matchAll(zBc),({groups:a})=>{if(!a)throw new Error("Assertion failed: Expected the match to have been successful");let o=G5i(a.code);if(a.name!==o)throw new Error(`Assertion failed: Invalid error code data: Expected "${a.name}" to be named "${o}"`);return[a.code,a.details]}))}var iJe=class extends KBc.BaseCommand{constructor(){super(...arguments),this.code=zwr.Option.String({required:!1,validator:jwr.applyCascade(jwr.isString(),[jwr.matchesRegExp(/^YN[0-9]{4}$/)])}),this.json=zwr.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await dv.Configuration.find(this.context.cwd,this.context.plugins);if(typeof this.code<"u"){let r=G5i(this.code),s=dv.formatUtils.pretty(t,r,dv.formatUtils.Type.CODE),a=this.cli.format().header(`${this.code} - ${s}`),g=(await F5i(t)).get(this.code),p=typeof g<"u"?dv.formatUtils.jsonOrPretty(this.json,t,dv.formatUtils.tuple(dv.formatUtils.Type.MARKDOWN,{text:g,format:this.cli.format(),paragraphs:!0})):`This error code does not have a description. You can help us by editing this page on GitHub \u{1F642}: -${Av.formatUtils.jsonOrPretty(this.json,t,Av.formatUtils.tuple(Av.formatUtils.Type.URL,"https://github.com/yarnpkg/berry/blob/master/packages/docusaurus/docs/advanced/01-general-reference/error-codes.mdx"))} +${dv.formatUtils.jsonOrPretty(this.json,t,dv.formatUtils.tuple(dv.formatUtils.Type.URL,"https://github.com/yarnpkg/berry/blob/master/packages/docusaurus/docs/advanced/01-general-reference/error-codes.mdx"))} `;this.json?this.context.stdout.write(`${JSON.stringify({code:this.code,name:r,details:p})} `):this.context.stdout.write(`${a} ${p} -`)}else{let r={children:Av.miscUtils.mapAndFilter(Object.entries(Av.MessageName),([s,a])=>Number.isNaN(Number(s))?Av.miscUtils.mapAndFilter.skip:{label:(0,Av.stringifyMessageName)(Number(s)),value:Av.formatUtils.tuple(Av.formatUtils.Type.CODE,a)})};Av.treeUtils.emitTree(r,{configuration:t,stdout:this.context.stdout,json:this.json})}}};rJe.paths=[["explain"]];rJe.usage=Hwr.Command.Usage({description:"explain an error code",details:` +`)}else{let r={children:dv.miscUtils.mapAndFilter(Object.entries(dv.MessageName),([s,a])=>Number.isNaN(Number(s))?dv.miscUtils.mapAndFilter.skip:{label:(0,dv.stringifyMessageName)(Number(s)),value:dv.formatUtils.tuple(dv.formatUtils.Type.CODE,a)})};dv.treeUtils.emitTree(r,{configuration:t,stdout:this.context.stdout,json:this.json})}}};iJe.paths=[["explain"]];iJe.usage=zwr.Command.Usage({description:"explain an error code",details:` When the code argument is specified, this command prints its name and its details. When used without arguments, this command lists all error codes and their names. - `,examples:[["Explain an error code","$0 explain YN0006"],["List all error codes","$0 explain"]]});JSt.default=rJe});var DQi=z(Xwr=>{"use strict";Object.defineProperty(Xwr,"__esModule",{value:!0});var ZBc=(Ma(),Ai(Oa)),RQi=nl(),dI=Bn(),LBc=Ro(),UM=(Fl(),Ai(dg)),VBc=ZBc.__importDefault(sk()),nJe=class extends RQi.BaseCommand{constructor(){super(...arguments),this.all=UM.Option.Boolean("-A,--all",!1,{description:"Print versions of a package from the whole project"}),this.recursive=UM.Option.Boolean("-R,--recursive",!1,{description:"Print information for all packages, including transitive dependencies"}),this.extra=UM.Option.Array("-X,--extra",[],{description:"An array of requests of extra data provided by plugins"}),this.cache=UM.Option.Boolean("--cache",!1,{description:"Print information about the cache entry of a package (path, size, checksum)"}),this.dependents=UM.Option.Boolean("--dependents",!1,{description:"Print all dependents for each matching package"}),this.manifest=UM.Option.Boolean("--manifest",!1,{description:"Print data obtained by looking at the package archive (license, homepage, ...)"}),this.nameOnly=UM.Option.Boolean("--name-only",!1,{description:"Only print the name for the matching packages"}),this.virtuals=UM.Option.Boolean("--virtuals",!1,{description:"Print each instance of the virtual packages"}),this.json=UM.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.patterns=UM.Option.Rest()}async execute(){let t=await dI.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await dI.Project.find(t,this.context.cwd),a=await dI.Cache.find(t);if(!s&&!this.all)throw new RQi.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let o=new Set(this.extra);this.cache&&o.add("cache"),this.dependents&&o.add("dependents"),this.manifest&&o.add("manifest");let g=(ae,{recursive:ge})=>{let fe=ae.anchoredLocator.locatorHash,pe=new Map,he=[fe];for(;he.length>0;){let be=he.shift();if(pe.has(be))continue;let Te=r.storedPackages.get(be);if(typeof Te>"u")throw new Error("Assertion failed: Expected the package to be registered");if(pe.set(be,Te),dI.structUtils.isVirtualLocator(Te)&&he.push(dI.structUtils.devirtualizeLocator(Te).locatorHash),!(!ge&&be!==fe))for(let ke of Te.dependencies.values()){let x=r.storedResolutions.get(ke.descriptorHash);if(typeof x>"u")throw new Error("Assertion failed: Expected the resolution to be registered");he.push(x)}}return pe.values()},p=({recursive:ae})=>{let ge=new Map;for(let fe of r.workspaces)for(let pe of g(fe,{recursive:ae}))ge.set(pe.locatorHash,pe);return ge.values()},f=({all:ae,recursive:ge})=>ae&&ge?r.storedPackages.values():ae?p({recursive:ge}):g(s,{recursive:ge}),m=({all:ae,recursive:ge})=>{let fe=f({all:ae,recursive:ge}),pe=this.patterns.map(Te=>{let ke=dI.structUtils.parseLocator(Te),x=VBc.default.makeRe(dI.structUtils.stringifyIdent(ke)),et=dI.structUtils.isVirtualLocator(ke),Ue=et?dI.structUtils.devirtualizeLocator(ke):ke;return Je=>{let Xe=dI.structUtils.stringifyIdent(Je);if(!x.test(Xe))return!1;if(ke.reference==="unknown")return!0;let ft=dI.structUtils.isVirtualLocator(Je),Gt=ft?dI.structUtils.devirtualizeLocator(Je):Je;return!(et&&ft&&ke.reference!==Je.reference||Ue.reference!==Gt.reference)}}),he=dI.miscUtils.sortMap([...fe],Te=>dI.structUtils.stringifyLocator(Te));return{selection:he.filter(Te=>pe.length===0||pe.some(ke=>ke(Te))),sortedLookup:he}},{selection:y,sortedLookup:B}=m({all:this.all,recursive:this.recursive});if(y.length===0)throw new UM.UsageError("No package matched your request");let v=new Map;if(this.dependents)for(let ae of B)for(let ge of ae.dependencies.values()){let fe=r.storedResolutions.get(ge.descriptorHash);if(typeof fe>"u")throw new Error("Assertion failed: Expected the resolution to be registered");dI.miscUtils.getArrayWithDefault(v,fe).push(ae)}let G=new Map;for(let ae of B){if(!dI.structUtils.isVirtualLocator(ae))continue;let ge=dI.structUtils.devirtualizeLocator(ae);dI.miscUtils.getArrayWithDefault(G,ge.locatorHash).push(ae)}let T={},O={children:T},X=t.makeFetcher(),U={project:r,fetcher:X,cache:a,checksums:r.storedChecksums,report:new dI.ThrowReport,cacheOptions:{skipIntegrityCheck:!0}},le=[async(ae,ge,fe)=>{if(!ge.has("manifest"))return;let pe=await X.fetch(ae,U),he;try{he=await dI.Manifest.find(pe.prefixPath,{baseFs:pe.packageFs})}finally{pe.releaseFs?.()}fe("Manifest",{License:dI.formatUtils.tuple(dI.formatUtils.Type.NO_HINT,he.license),Homepage:dI.formatUtils.tuple(dI.formatUtils.Type.URL,he.raw.homepage??null)})},async(ae,ge,fe)=>{if(!ge.has("cache"))return;let pe=r.storedChecksums.get(ae.locatorHash)??null,he=a.getLocatorPath(ae,pe),be;if(he!==null)try{be=await LBc.xfs.statPromise(he)}catch{}let Te=typeof be<"u"?[be.size,dI.formatUtils.Type.SIZE]:void 0;fe("Cache",{Checksum:dI.formatUtils.tuple(dI.formatUtils.Type.NO_HINT,pe),Path:dI.formatUtils.tuple(dI.formatUtils.Type.PATH,he),Size:Te})}];for(let ae of y){let ge=dI.structUtils.isVirtualLocator(ae);if(!this.virtuals&&ge)continue;let fe={},pe={value:[ae,dI.formatUtils.Type.LOCATOR],children:fe};if(T[dI.structUtils.stringifyLocator(ae)]=pe,this.nameOnly){delete pe.children;continue}let he=G.get(ae.locatorHash);typeof he<"u"&&(fe.Instances={label:"Instances",value:dI.formatUtils.tuple(dI.formatUtils.Type.NUMBER,he.length)}),fe.Version={label:"Version",value:dI.formatUtils.tuple(dI.formatUtils.Type.NO_HINT,ae.version)};let be=(ke,x)=>{let et={};if(fe[ke]=et,Array.isArray(x))et.children=x.map(Ue=>({value:Ue}));else{let Ue={};et.children=Ue;for(let[Je,Xe]of Object.entries(x))typeof Xe>"u"||(Ue[Je]={label:Je,value:Xe})}};if(!ge){for(let ke of le)await ke(ae,o,be);await t.triggerHook(ke=>ke.fetchPackageInfo,ae,o,be)}ae.bin.size>0&&!ge&&be("Exported Binaries",[...ae.bin.keys()].map(ke=>dI.formatUtils.tuple(dI.formatUtils.Type.PATH,ke)));let Te=v.get(ae.locatorHash);typeof Te<"u"&&Te.length>0&&be("Dependents",Te.map(ke=>dI.formatUtils.tuple(dI.formatUtils.Type.LOCATOR,ke))),ae.dependencies.size>0&&!ge&&be("Dependencies",[...ae.dependencies.values()].map(ke=>{let x=r.storedResolutions.get(ke.descriptorHash),et=typeof x<"u"?r.storedPackages.get(x)??null:null;return dI.formatUtils.tuple(dI.formatUtils.Type.RESOLUTION,{descriptor:ke,locator:et})})),ae.peerDependencies.size>0&&ge&&be("Peer dependencies",[...ae.peerDependencies.values()].map(ke=>{let x=ae.dependencies.get(ke.identHash),et=typeof x<"u"?r.storedResolutions.get(x.descriptorHash)??null:null,Ue=et!==null?r.storedPackages.get(et)??null:null;return dI.formatUtils.tuple(dI.formatUtils.Type.RESOLUTION,{descriptor:ke,locator:Ue})}))}dI.treeUtils.emitTree(O,{configuration:t,json:this.json,stdout:this.context.stdout,separators:this.nameOnly?0:2})}};nJe.paths=[["info"]];nJe.usage=UM.Command.Usage({description:"see information related to packages",details:"\n This command prints various information related to the specified packages, accepting glob patterns.\n\n By default, if the locator reference is missing, Yarn will default to print the information about all the matching direct dependencies of the package for the active workspace. To instead print all versions of the package that are direct dependencies of any of your workspaces, use the `-A,--all` flag. Adding the `-R,--recursive` flag will also report transitive dependencies.\n\n Some fields will be hidden by default in order to keep the output readable, but can be selectively displayed by using additional options (`--dependents`, `--manifest`, `--virtuals`, ...) described in the option descriptions.\n\n Note that this command will only print the information directly related to the selected packages - if you wish to know why the package is there in the first place, use `yarn why` which will do just that (it also provides a `-R,--recursive` flag that may be of some help).\n ",examples:[["Show information about Lodash","$0 info lodash"]]});Xwr.default=nJe});var FQi=z(Kwr=>{"use strict";Object.defineProperty(Kwr,"__esModule",{value:!0});var Uwr=(Ma(),Ai(Oa)),xQi=nl(),wA=Bn(),VK=Ro(),kQi=aO(),Jwr=Uwr.__importDefault(Uge()),Gw=(Fl(),Ai(dg)),GQi=Uwr.__importDefault(Lh()),WBc=Uwr.__importStar((_L(),Ai(hL))),PBc=[{selector:e=>e===-1,name:"nodeLinker",value:"node-modules"},{selector:e=>e!==-1&&e<8,name:"enableGlobalCache",value:!1},{selector:e=>e!==-1&&e<8,name:"compressionLevel",value:"mixed"}],iJe=class extends xQi.BaseCommand{constructor(){super(...arguments),this.json=Gw.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.immutable=Gw.Option.Boolean("--immutable",{description:"Abort with an error exit code if the lockfile was to be modified"}),this.immutableCache=Gw.Option.Boolean("--immutable-cache",{description:"Abort with an error exit code if the cache folder was to be modified"}),this.refreshLockfile=Gw.Option.Boolean("--refresh-lockfile",{description:"Refresh the package metadata stored in the lockfile"}),this.checkCache=Gw.Option.Boolean("--check-cache",{description:"Always refetch the packages and ensure that their checksums are consistent"}),this.checkResolutions=Gw.Option.Boolean("--check-resolutions",{description:"Validates that the package resolutions are coherent"}),this.inlineBuilds=Gw.Option.Boolean("--inline-builds",{description:"Verbosely print the output of the build steps of dependencies"}),this.mode=Gw.Option.String("--mode",{description:"Change what artifacts installs generate",validator:WBc.isEnum(wA.InstallMode)}),this.cacheFolder=Gw.Option.String("--cache-folder",{hidden:!0}),this.frozenLockfile=Gw.Option.Boolean("--frozen-lockfile",{hidden:!0}),this.ignoreEngines=Gw.Option.Boolean("--ignore-engines",{hidden:!0}),this.nonInteractive=Gw.Option.Boolean("--non-interactive",{hidden:!0}),this.preferOffline=Gw.Option.Boolean("--prefer-offline",{hidden:!0}),this.production=Gw.Option.Boolean("--production",{hidden:!0}),this.registry=Gw.Option.String("--registry",{hidden:!0}),this.silent=Gw.Option.Boolean("--silent",{hidden:!0}),this.networkTimeout=Gw.Option.String("--network-timeout",{hidden:!0})}async execute(){let t=await wA.Configuration.find(this.context.cwd,this.context.plugins);typeof this.inlineBuilds<"u"&&t.useWithSource("",{enableInlineBuilds:this.inlineBuilds},t.startingCwd,{overwrite:!0});let r=!!process.env.FUNCTION_TARGET||!!process.env.GOOGLE_RUNTIME,s=await(0,wA.reportOptionDeprecations)({configuration:t,stdout:this.context.stdout},[{option:this.ignoreEngines,message:"The --ignore-engines option is deprecated; engine checking isn't a core feature anymore",error:!Jwr.default.VERCEL},{option:this.registry,message:"The --registry option is deprecated; prefer setting npmRegistryServer in your .yarnrc.yml file"},{option:this.preferOffline,message:"The --prefer-offline flag is deprecated; use the --cached flag with 'yarn add' instead",error:!Jwr.default.VERCEL},{option:this.production,message:"The --production option is deprecated on 'install'; use 'yarn workspaces focus' instead",error:!0},{option:this.nonInteractive,message:"The --non-interactive option is deprecated",error:!r},{option:this.frozenLockfile,message:"The --frozen-lockfile option is deprecated; use --immutable and/or --immutable-cache instead",callback:()=>this.immutable=this.frozenLockfile},{option:this.cacheFolder,message:"The cache-folder option has been deprecated; use rc settings instead",error:!Jwr.default.NETLIFY}]);if(s!==null)return s;let a=this.mode===wA.InstallMode.UpdateLockfile;if(a&&(this.immutable||this.immutableCache))throw new Gw.UsageError(`${wA.formatUtils.pretty(t,"--immutable",wA.formatUtils.Type.CODE)} and ${wA.formatUtils.pretty(t,"--immutable-cache",wA.formatUtils.Type.CODE)} cannot be used with ${wA.formatUtils.pretty(t,"--mode=update-lockfile",wA.formatUtils.Type.CODE)}`);let o=(this.immutable??t.get("enableImmutableInstalls"))&&!a,g=this.immutableCache&&!a;if(t.projectCwd!==null){let T=await wA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async O=>{let X=!1;await QBc(t,o)&&(O.reportInfo(wA.MessageName.AUTOMERGE_SUCCESS,"Automatically removed core plugins that are now builtins \u{1F44D}"),X=!0),await MBc(t,o)&&(O.reportInfo(wA.MessageName.AUTOMERGE_SUCCESS,"Automatically fixed merge conflicts \u{1F44D}"),X=!0),X&&O.reportSeparator()});if(T.hasErrors())return T.exitCode()}if(t.projectCwd!==null){let T=await wA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async O=>{if(wA.Configuration.telemetry?.isNew)wA.Configuration.telemetry.commitTips(),O.reportInfo(wA.MessageName.TELEMETRY_NOTICE,"Yarn will periodically gather anonymous telemetry: https://yarnpkg.com/advanced/telemetry"),O.reportInfo(wA.MessageName.TELEMETRY_NOTICE,`Run ${wA.formatUtils.pretty(t,"yarn config set --home enableTelemetry 0",wA.formatUtils.Type.CODE)} to disable`),O.reportSeparator();else if(wA.Configuration.telemetry?.shouldShowTips){let X=await wA.httpUtils.get("https://repo.yarnpkg.com/tags",{configuration:t,jsonResponse:!0}).catch(()=>null);if(X!==null){let U=null;if(wA.YarnVersion!==null){let ae=GQi.default.prerelease(wA.YarnVersion)?"canary":"stable",ge=X.latest[ae];GQi.default.gt(ge,wA.YarnVersion)&&(U=[ae,ge])}if(U)wA.Configuration.telemetry.commitTips(),O.reportInfo(wA.MessageName.VERSION_NOTICE,`${wA.formatUtils.applyStyle(t,`A new ${U[0]} version of Yarn is available:`,wA.formatUtils.Style.BOLD)} ${wA.structUtils.prettyReference(t,U[1])}!`),O.reportInfo(wA.MessageName.VERSION_NOTICE,`Upgrade now by running ${wA.formatUtils.pretty(t,`yarn set version ${U[1]}`,wA.formatUtils.Type.CODE)}`),O.reportSeparator();else{let le=wA.Configuration.telemetry.selectTip(X.tips);le&&(O.reportInfo(wA.MessageName.TIPS_NOTICE,wA.formatUtils.pretty(t,le.message,wA.formatUtils.Type.MARKDOWN_INLINE)),le.url&&O.reportInfo(wA.MessageName.TIPS_NOTICE,`Learn more at ${le.url}`),O.reportSeparator())}}}});if(T.hasErrors())return T.exitCode()}let{project:p,workspace:f}=await wA.Project.find(t,this.context.cwd),m=p.lockfileLastVersion;if(m!==null){let T=await wA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async O=>{let X={};for(let U of PBc)U.selector(m)&&typeof t.sources.get(U.name)>"u"&&(t.use("",{[U.name]:U.value},p.cwd,{overwrite:!0}),X[U.name]=U.value);Object.keys(X).length>0&&(await wA.Configuration.updateConfiguration(p.cwd,X),O.reportInfo(wA.MessageName.MIGRATION_SUCCESS,"Migrated your project to the latest Yarn version \u{1F680}"),O.reportSeparator())});if(T.hasErrors())return T.exitCode()}let y=await wA.Cache.find(t,{immutable:g,check:this.checkCache});if(!f)throw new xQi.WorkspaceRequiredError(p.cwd,this.context.cwd);await p.restoreInstallState({restoreResolutions:!1});let B=t.get("enableHardenedMode");B&&typeof t.sources.get("enableHardenedMode")>"u"&&await wA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async T=>{T.reportWarning(wA.MessageName.UNNAMED,"Yarn detected that the current workflow is executed from a public pull request. For safety the hardened mode has been enabled."),T.reportWarning(wA.MessageName.UNNAMED,`It will prevent malicious lockfile manipulations, in exchange for a slower install time. You can opt-out if necessary; check our ${wA.formatUtils.applyHyperlink(t,"documentation","https://yarnpkg.com/features/security#hardened-mode")} for more details.`),T.reportSeparator()}),(this.refreshLockfile??B)&&(p.lockfileNeedsRefresh=!0);let v=this.checkResolutions??B;return(await wA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,forceSectionAlignment:!0,includeLogs:!0,includeVersion:!0},async T=>{await p.install({cache:y,report:T,immutable:o,checkResolutions:v,mode:this.mode})})).exitCode()}};iJe.paths=[["install"],Gw.Command.Default];iJe.usage=Gw.Command.Usage({description:"install the project dependencies",details:"\n This command sets up your project if needed. The installation is split into four different steps that each have their own characteristics:\n\n - **Resolution:** First the package manager will resolve your dependencies. The exact way a dependency version is privileged over another isn't standardized outside of the regular semver guarantees. If a package doesn't resolve to what you would expect, check that all dependencies are correctly declared (also check our website for more information: ).\n\n - **Fetch:** Then we download all the dependencies if needed, and make sure that they're all stored within our cache (check the value of `cacheFolder` in `yarn config` to see where the cache files are stored).\n\n - **Link:** Then we send the dependency tree information to internal plugins tasked with writing them on the disk in some form (for example by generating the `.pnp.cjs` file you might know).\n\n - **Build:** Once the dependency tree has been written on the disk, the package manager will now be free to run the build scripts for all packages that might need it, in a topological order compatible with the way they depend on one another. See https://yarnpkg.com/advanced/lifecycle-scripts for detail.\n\n Note that running this command is not part of the recommended workflow. Yarn supports zero-installs, which means that as long as you store your cache and your `.pnp.cjs` file inside your repository, everything will work without requiring any install right after cloning your repository or switching branches.\n\n If the `--immutable` option is set (defaults to true on CI), Yarn will abort with an error exit code if the lockfile was to be modified (other paths can be added using the `immutablePatterns` configuration setting). For backward compatibility we offer an alias under the name of `--frozen-lockfile`, but it will be removed in a later release.\n\n If the `--immutable-cache` option is set, Yarn will abort with an error exit code if the cache folder was to be modified (either because files would be added, or because they'd be removed).\n\n If the `--refresh-lockfile` option is set, Yarn will keep the same resolution for the packages currently in the lockfile but will refresh their metadata. If used together with `--immutable`, it can validate that the lockfile information are consistent. This flag is enabled by default when Yarn detects it runs within a pull request context.\n\n If the `--check-cache` option is set, Yarn will always refetch the packages and will ensure that their checksum matches what's 1/ described in the lockfile 2/ inside the existing cache files (if present). This is recommended as part of your CI workflow if you're both following the Zero-Installs model and accepting PRs from third-parties, as they'd otherwise have the ability to alter the checked-in packages before submitting them.\n\n If the `--inline-builds` option is set, Yarn will verbosely print the output of the build steps of your dependencies (instead of writing them into individual files). This is likely useful mostly for debug purposes only when using Docker-like environments.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n ",examples:[["Install the project","$0 install"],["Validate a project when using Zero-Installs","$0 install --immutable --immutable-cache"],["Validate a project when using Zero-Installs (slightly safer if you accept external PRs)","$0 install --immutable --immutable-cache --check-cache"]]});Kwr.default=iJe;var OBc="<<<<<<<";async function MBc(e,t){if(!e.projectCwd)return!1;let r=VK.ppath.join(e.projectCwd,VK.Filename.lockfile);if(!await VK.xfs.existsPromise(r)||!(await VK.xfs.readFilePromise(r,"utf8")).includes(OBc))return!1;if(t)throw new wA.ReportError(wA.MessageName.AUTOMERGE_IMMUTABLE,"Cannot autofix a lockfile when running an immutable install");let a=await wA.execUtils.execvp("git",["rev-parse","MERGE_HEAD","HEAD"],{cwd:e.projectCwd});if(a.code!==0&&(a=await wA.execUtils.execvp("git",["rev-parse","REBASE_HEAD","HEAD"],{cwd:e.projectCwd})),a.code!==0&&(a=await wA.execUtils.execvp("git",["rev-parse","CHERRY_PICK_HEAD","HEAD"],{cwd:e.projectCwd})),a.code!==0)throw new wA.ReportError(wA.MessageName.AUTOMERGE_GIT_ERROR,"Git returned an error when trying to find the commits pertaining to the conflict");let o=await Promise.all(a.stdout.trim().split(/\n/).map(async p=>{let f=await wA.execUtils.execvp("git",["show",`${p}:./${VK.Filename.lockfile}`],{cwd:e.projectCwd});if(f.code!==0)throw new wA.ReportError(wA.MessageName.AUTOMERGE_GIT_ERROR,`Git returned an error when trying to access the lockfile content in ${p}`);try{return(0,kQi.parseSyml)(f.stdout)}catch{throw new wA.ReportError(wA.MessageName.AUTOMERGE_FAILED_TO_PARSE,"A variant of the conflicting lockfile failed to parse")}}));o=o.filter(p=>!!p.__metadata);for(let p of o){if(p.__metadata.version<7)for(let f of Object.keys(p)){if(f==="__metadata")continue;let m=wA.structUtils.parseDescriptor(f,!0),y=e.normalizeDependency(m),B=wA.structUtils.stringifyDescriptor(y);B!==f&&(p[B]=p[f],delete p[f])}for(let f of Object.keys(p)){if(f==="__metadata")continue;let m=p[f].checksum;typeof m=="string"&&m.includes("/")||(p[f].checksum=`${p.__metadata.cacheKey}/${m}`)}}let g=Object.assign({},...o);g.__metadata.version=`${Math.min(...o.map(p=>parseInt(p.__metadata.version??0)))}`,g.__metadata.cacheKey="merged";for(let[p,f]of Object.entries(g))typeof f=="string"&&delete g[p];return await VK.xfs.changeFilePromise(r,(0,kQi.stringifySyml)(g),{automaticNewlines:!0}),!0}async function QBc(e,t){if(!e.projectCwd)return!1;let r=[],s=VK.ppath.join(e.projectCwd,".yarn/plugins/@yarnpkg");return await wA.Configuration.updateConfiguration(e.projectCwd,{plugins:o=>{if(!Array.isArray(o))return o;let g=o.filter(p=>{if(!p.path)return!0;let f=VK.ppath.resolve(e.projectCwd,p.path),m=wA.LEGACY_PLUGINS.has(p.spec)&&VK.ppath.contains(s,f);return m&&r.push(f),!m});return g.length===0?wA.Configuration.deleteProperty:g.length===o.length?o:g}},{immutable:t})?(await Promise.all(r.map(async o=>{await VK.xfs.removePromise(o)})),!0):!1}});var ZQi=z(qwr=>{"use strict";Object.defineProperty(qwr,"__esModule",{value:!0});var jwr=nl(),FNe=Bn(),zwr=Ro(),Qq=(Fl(),Ai(dg)),sJe=class extends jwr.BaseCommand{constructor(){super(...arguments),this.all=Qq.Option.Boolean("-A,--all",!1,{description:"Link all workspaces belonging to the target projects to the current one"}),this.private=Qq.Option.Boolean("-p,--private",!1,{description:"Also link private workspaces belonging to the target projects to the current one"}),this.relative=Qq.Option.Boolean("-r,--relative",!1,{description:"Link workspaces using relative paths instead of absolute paths"}),this.destinations=Qq.Option.Rest()}async execute(){let t=await FNe.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await FNe.Project.find(t,this.context.cwd),a=await FNe.Cache.find(t);if(!s)throw new jwr.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=r.topLevelWorkspace,g=[];for(let p of this.destinations){let f=zwr.ppath.resolve(this.context.cwd,zwr.npath.toPortablePath(p)),m=await FNe.Configuration.find(f,this.context.plugins,{useRc:!1,strict:!1}),{project:y,workspace:B}=await FNe.Project.find(m,f);if(r.cwd===y.cwd)throw new Qq.UsageError(`Invalid destination '${p}'; Can't link the project to itself`);if(!B)throw new jwr.WorkspaceRequiredError(y.cwd,f);if(this.all){let v=!1;for(let G of y.workspaces)G.manifest.name&&(!G.manifest.private||this.private)&&(g.push(G),v=!0);if(!v)throw new Qq.UsageError(`No workspace found to be linked in the target project: ${p}`)}else{if(!B.manifest.name)throw new Qq.UsageError(`The target workspace at '${p}' doesn't have a name and thus cannot be linked`);if(B.manifest.private&&!this.private)throw new Qq.UsageError(`The target workspace at '${p}' is marked private - use the --private flag to link it anyway`);g.push(B)}}for(let p of g){let f=FNe.structUtils.stringifyIdent(p.anchoredLocator),m=this.relative?zwr.ppath.relative(r.cwd,p.cwd):p.cwd;o.manifest.resolutions.push({pattern:{descriptor:{fullName:f}},reference:`portal:${m}`})}return await r.installWithNewReport({stdout:this.context.stdout},{cache:a})}};sJe.paths=[["link"]];sJe.usage=Qq.Command.Usage({description:"connect the local project to another one",details:"\n This command will set a new `resolutions` field in the project-level manifest and point it to the workspace at the specified location (even if part of another project).\n ",examples:[["Register one or more remote workspaces for use in the current project","$0 link ~/ts-loader ~/jest"],["Register all workspaces from a remote project for use in the current project","$0 link ~/jest --all"]]});qwr.default=sJe});var VQi=z($wr=>{"use strict";Object.defineProperty($wr,"__esModule",{value:!0});var YBc=nl(),LQi=(Fl(),Ai(dg)),oJe=class extends YBc.BaseCommand{constructor(){super(...arguments),this.args=LQi.Option.Proxy()}async execute(){return this.cli.run(["exec","node",...this.args])}};oJe.paths=[["node"]];oJe.usage=LQi.Command.Usage({description:"run node with the hook already setup",details:` + `,examples:[["Explain an error code","$0 explain YN0006"],["List all error codes","$0 explain"]]});jSt.default=iJe});var V5i=z(qwr=>{"use strict";Object.defineProperty(qwr,"__esModule",{value:!0});var qBc=(Oa(),Ai(Pa)),L5i=il(),pI=Bn(),$Bc=No(),jQ=(Zl(),Ai(pg)),evc=qBc.__importDefault(gk()),sJe=class extends L5i.BaseCommand{constructor(){super(...arguments),this.all=jQ.Option.Boolean("-A,--all",!1,{description:"Print versions of a package from the whole project"}),this.recursive=jQ.Option.Boolean("-R,--recursive",!1,{description:"Print information for all packages, including transitive dependencies"}),this.extra=jQ.Option.Array("-X,--extra",[],{description:"An array of requests of extra data provided by plugins"}),this.cache=jQ.Option.Boolean("--cache",!1,{description:"Print information about the cache entry of a package (path, size, checksum)"}),this.dependents=jQ.Option.Boolean("--dependents",!1,{description:"Print all dependents for each matching package"}),this.manifest=jQ.Option.Boolean("--manifest",!1,{description:"Print data obtained by looking at the package archive (license, homepage, ...)"}),this.nameOnly=jQ.Option.Boolean("--name-only",!1,{description:"Only print the name for the matching packages"}),this.virtuals=jQ.Option.Boolean("--virtuals",!1,{description:"Print each instance of the virtual packages"}),this.json=jQ.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.patterns=jQ.Option.Rest()}async execute(){let t=await pI.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await pI.Project.find(t,this.context.cwd),a=await pI.Cache.find(t);if(!s&&!this.all)throw new L5i.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let o=new Set(this.extra);this.cache&&o.add("cache"),this.dependents&&o.add("dependents"),this.manifest&&o.add("manifest");let g=(ae,{recursive:ge})=>{let fe=ae.anchoredLocator.locatorHash,pe=new Map,he=[fe];for(;he.length>0;){let be=he.shift();if(pe.has(be))continue;let Te=r.storedPackages.get(be);if(typeof Te>"u")throw new Error("Assertion failed: Expected the package to be registered");if(pe.set(be,Te),pI.structUtils.isVirtualLocator(Te)&&he.push(pI.structUtils.devirtualizeLocator(Te).locatorHash),!(!ge&&be!==fe))for(let ke of Te.dependencies.values()){let x=r.storedResolutions.get(ke.descriptorHash);if(typeof x>"u")throw new Error("Assertion failed: Expected the resolution to be registered");he.push(x)}}return pe.values()},p=({recursive:ae})=>{let ge=new Map;for(let fe of r.workspaces)for(let pe of g(fe,{recursive:ae}))ge.set(pe.locatorHash,pe);return ge.values()},f=({all:ae,recursive:ge})=>ae&&ge?r.storedPackages.values():ae?p({recursive:ge}):g(s,{recursive:ge}),m=({all:ae,recursive:ge})=>{let fe=f({all:ae,recursive:ge}),pe=this.patterns.map(Te=>{let ke=pI.structUtils.parseLocator(Te),x=evc.default.makeRe(pI.structUtils.stringifyIdent(ke)),et=pI.structUtils.isVirtualLocator(ke),Ue=et?pI.structUtils.devirtualizeLocator(ke):ke;return Je=>{let Xe=pI.structUtils.stringifyIdent(Je);if(!x.test(Xe))return!1;if(ke.reference==="unknown")return!0;let ft=pI.structUtils.isVirtualLocator(Je),Gt=ft?pI.structUtils.devirtualizeLocator(Je):Je;return!(et&&ft&&ke.reference!==Je.reference||Ue.reference!==Gt.reference)}}),he=pI.miscUtils.sortMap([...fe],Te=>pI.structUtils.stringifyLocator(Te));return{selection:he.filter(Te=>pe.length===0||pe.some(ke=>ke(Te))),sortedLookup:he}},{selection:y,sortedLookup:B}=m({all:this.all,recursive:this.recursive});if(y.length===0)throw new jQ.UsageError("No package matched your request");let v=new Map;if(this.dependents)for(let ae of B)for(let ge of ae.dependencies.values()){let fe=r.storedResolutions.get(ge.descriptorHash);if(typeof fe>"u")throw new Error("Assertion failed: Expected the resolution to be registered");pI.miscUtils.getArrayWithDefault(v,fe).push(ae)}let k=new Map;for(let ae of B){if(!pI.structUtils.isVirtualLocator(ae))continue;let ge=pI.structUtils.devirtualizeLocator(ae);pI.miscUtils.getArrayWithDefault(k,ge.locatorHash).push(ae)}let T={},O={children:T},X=t.makeFetcher(),U={project:r,fetcher:X,cache:a,checksums:r.storedChecksums,report:new pI.ThrowReport,cacheOptions:{skipIntegrityCheck:!0}},le=[async(ae,ge,fe)=>{if(!ge.has("manifest"))return;let pe=await X.fetch(ae,U),he;try{he=await pI.Manifest.find(pe.prefixPath,{baseFs:pe.packageFs})}finally{pe.releaseFs?.()}fe("Manifest",{License:pI.formatUtils.tuple(pI.formatUtils.Type.NO_HINT,he.license),Homepage:pI.formatUtils.tuple(pI.formatUtils.Type.URL,he.raw.homepage??null)})},async(ae,ge,fe)=>{if(!ge.has("cache"))return;let pe=r.storedChecksums.get(ae.locatorHash)??null,he=a.getLocatorPath(ae,pe),be;if(he!==null)try{be=await $Bc.xfs.statPromise(he)}catch{}let Te=typeof be<"u"?[be.size,pI.formatUtils.Type.SIZE]:void 0;fe("Cache",{Checksum:pI.formatUtils.tuple(pI.formatUtils.Type.NO_HINT,pe),Path:pI.formatUtils.tuple(pI.formatUtils.Type.PATH,he),Size:Te})}];for(let ae of y){let ge=pI.structUtils.isVirtualLocator(ae);if(!this.virtuals&&ge)continue;let fe={},pe={value:[ae,pI.formatUtils.Type.LOCATOR],children:fe};if(T[pI.structUtils.stringifyLocator(ae)]=pe,this.nameOnly){delete pe.children;continue}let he=k.get(ae.locatorHash);typeof he<"u"&&(fe.Instances={label:"Instances",value:pI.formatUtils.tuple(pI.formatUtils.Type.NUMBER,he.length)}),fe.Version={label:"Version",value:pI.formatUtils.tuple(pI.formatUtils.Type.NO_HINT,ae.version)};let be=(ke,x)=>{let et={};if(fe[ke]=et,Array.isArray(x))et.children=x.map(Ue=>({value:Ue}));else{let Ue={};et.children=Ue;for(let[Je,Xe]of Object.entries(x))typeof Xe>"u"||(Ue[Je]={label:Je,value:Xe})}};if(!ge){for(let ke of le)await ke(ae,o,be);await t.triggerHook(ke=>ke.fetchPackageInfo,ae,o,be)}ae.bin.size>0&&!ge&&be("Exported Binaries",[...ae.bin.keys()].map(ke=>pI.formatUtils.tuple(pI.formatUtils.Type.PATH,ke)));let Te=v.get(ae.locatorHash);typeof Te<"u"&&Te.length>0&&be("Dependents",Te.map(ke=>pI.formatUtils.tuple(pI.formatUtils.Type.LOCATOR,ke))),ae.dependencies.size>0&&!ge&&be("Dependencies",[...ae.dependencies.values()].map(ke=>{let x=r.storedResolutions.get(ke.descriptorHash),et=typeof x<"u"?r.storedPackages.get(x)??null:null;return pI.formatUtils.tuple(pI.formatUtils.Type.RESOLUTION,{descriptor:ke,locator:et})})),ae.peerDependencies.size>0&&ge&&be("Peer dependencies",[...ae.peerDependencies.values()].map(ke=>{let x=ae.dependencies.get(ke.identHash),et=typeof x<"u"?r.storedResolutions.get(x.descriptorHash)??null:null,Ue=et!==null?r.storedPackages.get(et)??null:null;return pI.formatUtils.tuple(pI.formatUtils.Type.RESOLUTION,{descriptor:ke,locator:Ue})}))}pI.treeUtils.emitTree(O,{configuration:t,json:this.json,stdout:this.context.stdout,separators:this.nameOnly?0:2})}};sJe.paths=[["info"]];sJe.usage=jQ.Command.Usage({description:"see information related to packages",details:"\n This command prints various information related to the specified packages, accepting glob patterns.\n\n By default, if the locator reference is missing, Yarn will default to print the information about all the matching direct dependencies of the package for the active workspace. To instead print all versions of the package that are direct dependencies of any of your workspaces, use the `-A,--all` flag. Adding the `-R,--recursive` flag will also report transitive dependencies.\n\n Some fields will be hidden by default in order to keep the output readable, but can be selectively displayed by using additional options (`--dependents`, `--manifest`, `--virtuals`, ...) described in the option descriptions.\n\n Note that this command will only print the information directly related to the selected packages - if you wish to know why the package is there in the first place, use `yarn why` which will do just that (it also provides a `-R,--recursive` flag that may be of some help).\n ",examples:[["Show information about Lodash","$0 info lodash"]]});qwr.default=sJe});var Q5i=z(tTr=>{"use strict";Object.defineProperty(tTr,"__esModule",{value:!0});var eTr=(Oa(),Ai(Pa)),W5i=il(),TA=Bn(),HK=No(),P5i=uO(),$wr=eTr.__importDefault(nAe()),Fw=(Zl(),Ai(pg)),O5i=eTr.__importDefault(Vh()),tvc=eTr.__importStar((yL(),Ai(_L))),rvc=[{selector:e=>e===-1,name:"nodeLinker",value:"node-modules"},{selector:e=>e!==-1&&e<8,name:"enableGlobalCache",value:!1},{selector:e=>e!==-1&&e<8,name:"compressionLevel",value:"mixed"}],oJe=class extends W5i.BaseCommand{constructor(){super(...arguments),this.json=Fw.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.immutable=Fw.Option.Boolean("--immutable",{description:"Abort with an error exit code if the lockfile was to be modified"}),this.immutableCache=Fw.Option.Boolean("--immutable-cache",{description:"Abort with an error exit code if the cache folder was to be modified"}),this.refreshLockfile=Fw.Option.Boolean("--refresh-lockfile",{description:"Refresh the package metadata stored in the lockfile"}),this.checkCache=Fw.Option.Boolean("--check-cache",{description:"Always refetch the packages and ensure that their checksums are consistent"}),this.checkResolutions=Fw.Option.Boolean("--check-resolutions",{description:"Validates that the package resolutions are coherent"}),this.inlineBuilds=Fw.Option.Boolean("--inline-builds",{description:"Verbosely print the output of the build steps of dependencies"}),this.mode=Fw.Option.String("--mode",{description:"Change what artifacts installs generate",validator:tvc.isEnum(TA.InstallMode)}),this.cacheFolder=Fw.Option.String("--cache-folder",{hidden:!0}),this.frozenLockfile=Fw.Option.Boolean("--frozen-lockfile",{hidden:!0}),this.ignoreEngines=Fw.Option.Boolean("--ignore-engines",{hidden:!0}),this.nonInteractive=Fw.Option.Boolean("--non-interactive",{hidden:!0}),this.preferOffline=Fw.Option.Boolean("--prefer-offline",{hidden:!0}),this.production=Fw.Option.Boolean("--production",{hidden:!0}),this.registry=Fw.Option.String("--registry",{hidden:!0}),this.silent=Fw.Option.Boolean("--silent",{hidden:!0}),this.networkTimeout=Fw.Option.String("--network-timeout",{hidden:!0})}async execute(){let t=await TA.Configuration.find(this.context.cwd,this.context.plugins);typeof this.inlineBuilds<"u"&&t.useWithSource("",{enableInlineBuilds:this.inlineBuilds},t.startingCwd,{overwrite:!0});let r=!!process.env.FUNCTION_TARGET||!!process.env.GOOGLE_RUNTIME,s=await(0,TA.reportOptionDeprecations)({configuration:t,stdout:this.context.stdout},[{option:this.ignoreEngines,message:"The --ignore-engines option is deprecated; engine checking isn't a core feature anymore",error:!$wr.default.VERCEL},{option:this.registry,message:"The --registry option is deprecated; prefer setting npmRegistryServer in your .yarnrc.yml file"},{option:this.preferOffline,message:"The --prefer-offline flag is deprecated; use the --cached flag with 'yarn add' instead",error:!$wr.default.VERCEL},{option:this.production,message:"The --production option is deprecated on 'install'; use 'yarn workspaces focus' instead",error:!0},{option:this.nonInteractive,message:"The --non-interactive option is deprecated",error:!r},{option:this.frozenLockfile,message:"The --frozen-lockfile option is deprecated; use --immutable and/or --immutable-cache instead",callback:()=>this.immutable=this.frozenLockfile},{option:this.cacheFolder,message:"The cache-folder option has been deprecated; use rc settings instead",error:!$wr.default.NETLIFY}]);if(s!==null)return s;let a=this.mode===TA.InstallMode.UpdateLockfile;if(a&&(this.immutable||this.immutableCache))throw new Fw.UsageError(`${TA.formatUtils.pretty(t,"--immutable",TA.formatUtils.Type.CODE)} and ${TA.formatUtils.pretty(t,"--immutable-cache",TA.formatUtils.Type.CODE)} cannot be used with ${TA.formatUtils.pretty(t,"--mode=update-lockfile",TA.formatUtils.Type.CODE)}`);let o=(this.immutable??t.get("enableImmutableInstalls"))&&!a,g=this.immutableCache&&!a;if(t.projectCwd!==null){let T=await TA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async O=>{let X=!1;await svc(t,o)&&(O.reportInfo(TA.MessageName.AUTOMERGE_SUCCESS,"Automatically removed core plugins that are now builtins \u{1F44D}"),X=!0),await ivc(t,o)&&(O.reportInfo(TA.MessageName.AUTOMERGE_SUCCESS,"Automatically fixed merge conflicts \u{1F44D}"),X=!0),X&&O.reportSeparator()});if(T.hasErrors())return T.exitCode()}if(t.projectCwd!==null){let T=await TA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async O=>{if(TA.Configuration.telemetry?.isNew)TA.Configuration.telemetry.commitTips(),O.reportInfo(TA.MessageName.TELEMETRY_NOTICE,"Yarn will periodically gather anonymous telemetry: https://yarnpkg.com/advanced/telemetry"),O.reportInfo(TA.MessageName.TELEMETRY_NOTICE,`Run ${TA.formatUtils.pretty(t,"yarn config set --home enableTelemetry 0",TA.formatUtils.Type.CODE)} to disable`),O.reportSeparator();else if(TA.Configuration.telemetry?.shouldShowTips){let X=await TA.httpUtils.get("https://repo.yarnpkg.com/tags",{configuration:t,jsonResponse:!0}).catch(()=>null);if(X!==null){let U=null;if(TA.YarnVersion!==null){let ae=O5i.default.prerelease(TA.YarnVersion)?"canary":"stable",ge=X.latest[ae];O5i.default.gt(ge,TA.YarnVersion)&&(U=[ae,ge])}if(U)TA.Configuration.telemetry.commitTips(),O.reportInfo(TA.MessageName.VERSION_NOTICE,`${TA.formatUtils.applyStyle(t,`A new ${U[0]} version of Yarn is available:`,TA.formatUtils.Style.BOLD)} ${TA.structUtils.prettyReference(t,U[1])}!`),O.reportInfo(TA.MessageName.VERSION_NOTICE,`Upgrade now by running ${TA.formatUtils.pretty(t,`yarn set version ${U[1]}`,TA.formatUtils.Type.CODE)}`),O.reportSeparator();else{let le=TA.Configuration.telemetry.selectTip(X.tips);le&&(O.reportInfo(TA.MessageName.TIPS_NOTICE,TA.formatUtils.pretty(t,le.message,TA.formatUtils.Type.MARKDOWN_INLINE)),le.url&&O.reportInfo(TA.MessageName.TIPS_NOTICE,`Learn more at ${le.url}`),O.reportSeparator())}}}});if(T.hasErrors())return T.exitCode()}let{project:p,workspace:f}=await TA.Project.find(t,this.context.cwd),m=p.lockfileLastVersion;if(m!==null){let T=await TA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async O=>{let X={};for(let U of rvc)U.selector(m)&&typeof t.sources.get(U.name)>"u"&&(t.use("",{[U.name]:U.value},p.cwd,{overwrite:!0}),X[U.name]=U.value);Object.keys(X).length>0&&(await TA.Configuration.updateConfiguration(p.cwd,X),O.reportInfo(TA.MessageName.MIGRATION_SUCCESS,"Migrated your project to the latest Yarn version \u{1F680}"),O.reportSeparator())});if(T.hasErrors())return T.exitCode()}let y=await TA.Cache.find(t,{immutable:g,check:this.checkCache});if(!f)throw new W5i.WorkspaceRequiredError(p.cwd,this.context.cwd);await p.restoreInstallState({restoreResolutions:!1});let B=t.get("enableHardenedMode");B&&typeof t.sources.get("enableHardenedMode")>"u"&&await TA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeFooter:!1},async T=>{T.reportWarning(TA.MessageName.UNNAMED,"Yarn detected that the current workflow is executed from a public pull request. For safety the hardened mode has been enabled."),T.reportWarning(TA.MessageName.UNNAMED,`It will prevent malicious lockfile manipulations, in exchange for a slower install time. You can opt-out if necessary; check our ${TA.formatUtils.applyHyperlink(t,"documentation","https://yarnpkg.com/features/security#hardened-mode")} for more details.`),T.reportSeparator()}),(this.refreshLockfile??B)&&(p.lockfileNeedsRefresh=!0);let v=this.checkResolutions??B;return(await TA.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,forceSectionAlignment:!0,includeLogs:!0,includeVersion:!0},async T=>{await p.install({cache:y,report:T,immutable:o,checkResolutions:v,mode:this.mode})})).exitCode()}};oJe.paths=[["install"],Fw.Command.Default];oJe.usage=Fw.Command.Usage({description:"install the project dependencies",details:"\n This command sets up your project if needed. The installation is split into four different steps that each have their own characteristics:\n\n - **Resolution:** First the package manager will resolve your dependencies. The exact way a dependency version is privileged over another isn't standardized outside of the regular semver guarantees. If a package doesn't resolve to what you would expect, check that all dependencies are correctly declared (also check our website for more information: ).\n\n - **Fetch:** Then we download all the dependencies if needed, and make sure that they're all stored within our cache (check the value of `cacheFolder` in `yarn config` to see where the cache files are stored).\n\n - **Link:** Then we send the dependency tree information to internal plugins tasked with writing them on the disk in some form (for example by generating the `.pnp.cjs` file you might know).\n\n - **Build:** Once the dependency tree has been written on the disk, the package manager will now be free to run the build scripts for all packages that might need it, in a topological order compatible with the way they depend on one another. See https://yarnpkg.com/advanced/lifecycle-scripts for detail.\n\n Note that running this command is not part of the recommended workflow. Yarn supports zero-installs, which means that as long as you store your cache and your `.pnp.cjs` file inside your repository, everything will work without requiring any install right after cloning your repository or switching branches.\n\n If the `--immutable` option is set (defaults to true on CI), Yarn will abort with an error exit code if the lockfile was to be modified (other paths can be added using the `immutablePatterns` configuration setting). For backward compatibility we offer an alias under the name of `--frozen-lockfile`, but it will be removed in a later release.\n\n If the `--immutable-cache` option is set, Yarn will abort with an error exit code if the cache folder was to be modified (either because files would be added, or because they'd be removed).\n\n If the `--refresh-lockfile` option is set, Yarn will keep the same resolution for the packages currently in the lockfile but will refresh their metadata. If used together with `--immutable`, it can validate that the lockfile information are consistent. This flag is enabled by default when Yarn detects it runs within a pull request context.\n\n If the `--check-cache` option is set, Yarn will always refetch the packages and will ensure that their checksum matches what's 1/ described in the lockfile 2/ inside the existing cache files (if present). This is recommended as part of your CI workflow if you're both following the Zero-Installs model and accepting PRs from third-parties, as they'd otherwise have the ability to alter the checked-in packages before submitting them.\n\n If the `--inline-builds` option is set, Yarn will verbosely print the output of the build steps of your dependencies (instead of writing them into individual files). This is likely useful mostly for debug purposes only when using Docker-like environments.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n ",examples:[["Install the project","$0 install"],["Validate a project when using Zero-Installs","$0 install --immutable --immutable-cache"],["Validate a project when using Zero-Installs (slightly safer if you accept external PRs)","$0 install --immutable --immutable-cache --check-cache"]]});tTr.default=oJe;var nvc="<<<<<<<";async function ivc(e,t){if(!e.projectCwd)return!1;let r=HK.ppath.join(e.projectCwd,HK.Filename.lockfile);if(!await HK.xfs.existsPromise(r)||!(await HK.xfs.readFilePromise(r,"utf8")).includes(nvc))return!1;if(t)throw new TA.ReportError(TA.MessageName.AUTOMERGE_IMMUTABLE,"Cannot autofix a lockfile when running an immutable install");let a=await TA.execUtils.execvp("git",["rev-parse","MERGE_HEAD","HEAD"],{cwd:e.projectCwd});if(a.code!==0&&(a=await TA.execUtils.execvp("git",["rev-parse","REBASE_HEAD","HEAD"],{cwd:e.projectCwd})),a.code!==0&&(a=await TA.execUtils.execvp("git",["rev-parse","CHERRY_PICK_HEAD","HEAD"],{cwd:e.projectCwd})),a.code!==0)throw new TA.ReportError(TA.MessageName.AUTOMERGE_GIT_ERROR,"Git returned an error when trying to find the commits pertaining to the conflict");let o=await Promise.all(a.stdout.trim().split(/\n/).map(async p=>{let f=await TA.execUtils.execvp("git",["show",`${p}:./${HK.Filename.lockfile}`],{cwd:e.projectCwd});if(f.code!==0)throw new TA.ReportError(TA.MessageName.AUTOMERGE_GIT_ERROR,`Git returned an error when trying to access the lockfile content in ${p}`);try{return(0,P5i.parseSyml)(f.stdout)}catch{throw new TA.ReportError(TA.MessageName.AUTOMERGE_FAILED_TO_PARSE,"A variant of the conflicting lockfile failed to parse")}}));o=o.filter(p=>!!p.__metadata);for(let p of o){if(p.__metadata.version<7)for(let f of Object.keys(p)){if(f==="__metadata")continue;let m=TA.structUtils.parseDescriptor(f,!0),y=e.normalizeDependency(m),B=TA.structUtils.stringifyDescriptor(y);B!==f&&(p[B]=p[f],delete p[f])}for(let f of Object.keys(p)){if(f==="__metadata")continue;let m=p[f].checksum;typeof m=="string"&&m.includes("/")||(p[f].checksum=`${p.__metadata.cacheKey}/${m}`)}}let g=Object.assign({},...o);g.__metadata.version=`${Math.min(...o.map(p=>parseInt(p.__metadata.version??0)))}`,g.__metadata.cacheKey="merged";for(let[p,f]of Object.entries(g))typeof f=="string"&&delete g[p];return await HK.xfs.changeFilePromise(r,(0,P5i.stringifySyml)(g),{automaticNewlines:!0}),!0}async function svc(e,t){if(!e.projectCwd)return!1;let r=[],s=HK.ppath.join(e.projectCwd,".yarn/plugins/@yarnpkg");return await TA.Configuration.updateConfiguration(e.projectCwd,{plugins:o=>{if(!Array.isArray(o))return o;let g=o.filter(p=>{if(!p.path)return!0;let f=HK.ppath.resolve(e.projectCwd,p.path),m=TA.LEGACY_PLUGINS.has(p.spec)&&HK.ppath.contains(s,f);return m&&r.push(f),!m});return g.length===0?TA.Configuration.deleteProperty:g.length===o.length?o:g}},{immutable:t})?(await Promise.all(r.map(async o=>{await HK.xfs.removePromise(o)})),!0):!1}});var M5i=z(iTr=>{"use strict";Object.defineProperty(iTr,"__esModule",{value:!0});var rTr=il(),LNe=Bn(),nTr=No(),Yq=(Zl(),Ai(pg)),aJe=class extends rTr.BaseCommand{constructor(){super(...arguments),this.all=Yq.Option.Boolean("-A,--all",!1,{description:"Link all workspaces belonging to the target projects to the current one"}),this.private=Yq.Option.Boolean("-p,--private",!1,{description:"Also link private workspaces belonging to the target projects to the current one"}),this.relative=Yq.Option.Boolean("-r,--relative",!1,{description:"Link workspaces using relative paths instead of absolute paths"}),this.destinations=Yq.Option.Rest()}async execute(){let t=await LNe.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await LNe.Project.find(t,this.context.cwd),a=await LNe.Cache.find(t);if(!s)throw new rTr.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=r.topLevelWorkspace,g=[];for(let p of this.destinations){let f=nTr.ppath.resolve(this.context.cwd,nTr.npath.toPortablePath(p)),m=await LNe.Configuration.find(f,this.context.plugins,{useRc:!1,strict:!1}),{project:y,workspace:B}=await LNe.Project.find(m,f);if(r.cwd===y.cwd)throw new Yq.UsageError(`Invalid destination '${p}'; Can't link the project to itself`);if(!B)throw new rTr.WorkspaceRequiredError(y.cwd,f);if(this.all){let v=!1;for(let k of y.workspaces)k.manifest.name&&(!k.manifest.private||this.private)&&(g.push(k),v=!0);if(!v)throw new Yq.UsageError(`No workspace found to be linked in the target project: ${p}`)}else{if(!B.manifest.name)throw new Yq.UsageError(`The target workspace at '${p}' doesn't have a name and thus cannot be linked`);if(B.manifest.private&&!this.private)throw new Yq.UsageError(`The target workspace at '${p}' is marked private - use the --private flag to link it anyway`);g.push(B)}}for(let p of g){let f=LNe.structUtils.stringifyIdent(p.anchoredLocator),m=this.relative?nTr.ppath.relative(r.cwd,p.cwd):p.cwd;o.manifest.resolutions.push({pattern:{descriptor:{fullName:f}},reference:`portal:${m}`})}return await r.installWithNewReport({stdout:this.context.stdout},{cache:a})}};aJe.paths=[["link"]];aJe.usage=Yq.Command.Usage({description:"connect the local project to another one",details:"\n This command will set a new `resolutions` field in the project-level manifest and point it to the workspace at the specified location (even if part of another project).\n ",examples:[["Register one or more remote workspaces for use in the current project","$0 link ~/ts-loader ~/jest"],["Register all workspaces from a remote project for use in the current project","$0 link ~/jest --all"]]});iTr.default=aJe});var Y5i=z(sTr=>{"use strict";Object.defineProperty(sTr,"__esModule",{value:!0});var ovc=il(),H5i=(Zl(),Ai(pg)),cJe=class extends ovc.BaseCommand{constructor(){super(...arguments),this.args=H5i.Option.Proxy()}async execute(){return this.cli.run(["exec","node",...this.args])}};cJe.paths=[["node"]];cJe.usage=H5i.Command.Usage({description:"run node with the hook already setup",details:` This command simply runs Node. It also makes sure to call it in a way that's compatible with the current project (for example, on PnP projects the environment will be setup in such a way that PnP will be correctly injected into the environment). The Node process will use the exact same version of Node as the one used to run Yarn itself, which might be a good way to ensure that your commands always use a consistent Node version. - `,examples:[["Run a Node script","$0 node ./my-script.js"]]});$wr.default=oJe});var PQi=z(eTr=>{"use strict";Object.defineProperty(eTr,"__esModule",{value:!0});var HBc=nl(),WK=Bn(),WQi=(Fl(),Ai(dg)),aJe=class extends HBc.BaseCommand{constructor(){super(...arguments),this.json=WQi.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await WK.Configuration.find(this.context.cwd,this.context.plugins),r=await WK.Configuration.findRcFiles(this.context.cwd);return(await WK.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async a=>{for(let o of r)if(o.data?.plugins)for(let g of o.data.plugins){if(!g.checksum||!g.spec.match(/^https?:/))continue;let p=await WK.httpUtils.get(g.spec,{configuration:t}),f=WK.hashUtils.makeHash(p);if(g.checksum===f)continue;let m=WK.formatUtils.pretty(t,g.path,WK.formatUtils.Type.PATH),y=WK.formatUtils.pretty(t,g.spec,WK.formatUtils.Type.URL),B=`${m} is different from the file provided by ${y}`;a.reportJson({...g,newChecksum:f}),a.reportError(WK.MessageName.UNNAMED,B)}})).exitCode()}};aJe.paths=[["plugin","check"]];aJe.usage=WQi.Command.Usage({category:"Plugin-related commands",description:"find all third-party plugins that differ from their own spec",details:` + `,examples:[["Run a Node script","$0 node ./my-script.js"]]});sTr.default=cJe});var J5i=z(oTr=>{"use strict";Object.defineProperty(oTr,"__esModule",{value:!0});var avc=il(),YK=Bn(),X5i=(Zl(),Ai(pg)),lJe=class extends avc.BaseCommand{constructor(){super(...arguments),this.json=X5i.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await YK.Configuration.find(this.context.cwd,this.context.plugins),r=await YK.Configuration.findRcFiles(this.context.cwd);return(await YK.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async a=>{for(let o of r)if(o.data?.plugins)for(let g of o.data.plugins){if(!g.checksum||!g.spec.match(/^https?:/))continue;let p=await YK.httpUtils.get(g.spec,{configuration:t}),f=YK.hashUtils.makeHash(p);if(g.checksum===f)continue;let m=YK.formatUtils.pretty(t,g.path,YK.formatUtils.Type.PATH),y=YK.formatUtils.pretty(t,g.spec,YK.formatUtils.Type.URL),B=`${m} is different from the file provided by ${y}`;a.reportJson({...g,newChecksum:f}),a.reportError(YK.MessageName.UNNAMED,B)}})).exitCode()}};lJe.paths=[["plugin","check"]];lJe.usage=X5i.Command.Usage({category:"Plugin-related commands",description:"find all third-party plugins that differ from their own spec",details:` Check only the plugins from https. If this command detects any plugin differences in the CI environment, it will throw an error. - `,examples:[["find all third-party plugins that differ from their own spec","$0 plugin check"]]});eTr.default=aJe});var uJe=z(USt=>{"use strict";Object.defineProperty(USt,"__esModule",{value:!0});USt.getAvailablePlugins=MQi;var XBc=nl(),cJe=Bn(),JBc=aO(),OQi=(Fl(),Ai(dg)),UBc="https://raw.githubusercontent.com/yarnpkg/berry/master/plugins.yml";async function MQi(e,t){let r=await cJe.httpUtils.get(UBc,{configuration:e}),s=(0,JBc.parseSyml)(r.toString());return Object.fromEntries(Object.entries(s).filter(([a,o])=>!t||cJe.semverUtils.satisfiesWithPrereleases(t,o.range??"<4.0.0-rc.1")))}var lJe=class extends XBc.BaseCommand{constructor(){super(...arguments),this.json=OQi.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await cJe.Configuration.find(this.context.cwd,this.context.plugins);return(await cJe.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async s=>{let a=await MQi(t,cJe.YarnVersion);for(let[o,{experimental:g,...p}]of Object.entries(a)){let f=o;g&&(f+=" [experimental]"),s.reportJson({name:o,experimental:g,...p}),s.reportInfo(null,f)}})).exitCode()}};lJe.paths=[["plugin","list"]];lJe.usage=OQi.Command.Usage({category:"Plugin-related commands",description:"list the available official plugins",details:"\n This command prints the plugins available directly from the Yarn repository. Only those plugins can be referenced by name in `yarn plugin import`.\n ",examples:[["List the official plugins","$0 plugin list"]]});USt.default=lJe});var tTr=z(AJe=>{"use strict";Object.defineProperty(AJe,"__esModule",{value:!0});AJe.runWorkflow=KSt;AJe.prepareRepo=YQi;var KBc=nl(),KM=Bn(),x9=Ro(),Yq=(Fl(),Ai(dg)),jBc=Dt("os"),zBc=rTr(),qBc=uJe(),$Bc=XSt(),evc=/^[0-9]+$/,tvc=process.platform==="win32";function QQi(e){return evc.test(e)?`pull/${e}/head`:e}var rvc=({repository:e,branch:t},r)=>[["git","init",x9.npath.fromPortablePath(r)],["git","remote","add","origin",e],["git","fetch","origin","--depth=1",QQi(t)],["git","reset","--hard","FETCH_HEAD"]],nvc=({branch:e})=>[["git","fetch","origin","--depth=1",QQi(e),"--force"],["git","reset","--hard","FETCH_HEAD"],["git","clean","-dfx","-e","packages/yarnpkg-cli/bundles"]],ivc=({plugins:e,noMinify:t},r,s)=>[["yarn","build:cli",...new Array().concat(...e.map(a=>["--plugin",x9.ppath.resolve(s,a)])),...t?["--no-minify"]:[],"|"],[tvc?"move":"mv","packages/yarnpkg-cli/bundles/yarn.js",x9.npath.fromPortablePath(r),"|"]],gJe=class extends KBc.BaseCommand{constructor(){super(...arguments),this.installPath=Yq.Option.String("--path",{description:"The path where the repository should be cloned to"}),this.repository=Yq.Option.String("--repository","https://github.com/yarnpkg/berry.git",{description:"The repository that should be cloned"}),this.branch=Yq.Option.String("--branch","master",{description:"The branch of the repository that should be cloned"}),this.plugins=Yq.Option.Array("--plugin",[],{description:"An array of additional plugins that should be included in the bundle"}),this.dryRun=Yq.Option.Boolean("-n,--dry-run",!1,{description:"If set, the bundle will be built but not added to the project"}),this.noMinify=Yq.Option.Boolean("--no-minify",!1,{description:"Build a bundle for development (debugging) - non-minified and non-mangled"}),this.force=Yq.Option.Boolean("-f,--force",!1,{description:"Always clone the repository instead of trying to fetch the latest commits"}),this.skipPlugins=Yq.Option.Boolean("--skip-plugins",!1,{description:"Skip updating the contrib plugins"})}async execute(){let t=await KM.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await KM.Project.find(t,this.context.cwd),s=typeof this.installPath<"u"?x9.ppath.resolve(this.context.cwd,x9.npath.toPortablePath(this.installPath)):x9.ppath.resolve(x9.npath.toPortablePath((0,jBc.tmpdir)()),"yarnpkg-sources",KM.hashUtils.makeHash(this.repository).slice(0,6));return(await KM.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{await YQi(this,{configuration:t,report:o,target:s}),o.reportSeparator(),o.reportInfo(KM.MessageName.UNNAMED,"Building a fresh bundle"),o.reportSeparator();let g=await KM.execUtils.execvp("git",["rev-parse","--short","HEAD"],{cwd:s,strict:!0}),p=x9.ppath.join(s,`packages/yarnpkg-cli/bundles/yarn-${g.stdout.trim()}.js`);x9.xfs.existsSync(p)||(await KSt(ivc(this,p,s),{configuration:t,context:this.context,target:s}),o.reportSeparator());let f=await x9.xfs.readFilePromise(p);if(!this.dryRun){let{bundleVersion:m}=await(0,$Bc.setVersion)(t,null,async()=>f,{report:o});this.skipPlugins||await svc(this,m,{project:r,report:o,target:s})}})).exitCode()}};gJe.paths=[["set","version","from","sources"]];gJe.usage=Yq.Command.Usage({description:"build Yarn from master",details:` + `,examples:[["find all third-party plugins that differ from their own spec","$0 plugin check"]]});oTr.default=lJe});var AJe=z(zSt=>{"use strict";Object.defineProperty(zSt,"__esModule",{value:!0});zSt.getAvailablePlugins=K5i;var cvc=il(),uJe=Bn(),lvc=uO(),U5i=(Zl(),Ai(pg)),uvc="https://raw.githubusercontent.com/yarnpkg/berry/master/plugins.yml";async function K5i(e,t){let r=await uJe.httpUtils.get(uvc,{configuration:e}),s=(0,lvc.parseSyml)(r.toString());return Object.fromEntries(Object.entries(s).filter(([a,o])=>!t||uJe.semverUtils.satisfiesWithPrereleases(t,o.range??"<4.0.0-rc.1")))}var gJe=class extends cvc.BaseCommand{constructor(){super(...arguments),this.json=U5i.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await uJe.Configuration.find(this.context.cwd,this.context.plugins);return(await uJe.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async s=>{let a=await K5i(t,uJe.YarnVersion);for(let[o,{experimental:g,...p}]of Object.entries(a)){let f=o;g&&(f+=" [experimental]"),s.reportJson({name:o,experimental:g,...p}),s.reportInfo(null,f)}})).exitCode()}};gJe.paths=[["plugin","list"]];gJe.usage=U5i.Command.Usage({category:"Plugin-related commands",description:"list the available official plugins",details:"\n This command prints the plugins available directly from the Yarn repository. Only those plugins can be referenced by name in `yarn plugin import`.\n ",examples:[["List the official plugins","$0 plugin list"]]});zSt.default=gJe});var aTr=z(pJe=>{"use strict";Object.defineProperty(pJe,"__esModule",{value:!0});pJe.runWorkflow=qSt;pJe.prepareRepo=z5i;var gvc=il(),zQ=Bn(),k9=No(),Xq=(Zl(),Ai(pg)),Avc=xt("os"),dvc=cTr(),pvc=AJe(),fvc=KSt(),Ivc=/^[0-9]+$/,Cvc=process.platform==="win32";function j5i(e){return Ivc.test(e)?`pull/${e}/head`:e}var mvc=({repository:e,branch:t},r)=>[["git","init",k9.npath.fromPortablePath(r)],["git","remote","add","origin",e],["git","fetch","origin","--depth=1",j5i(t)],["git","reset","--hard","FETCH_HEAD"]],hvc=({branch:e})=>[["git","fetch","origin","--depth=1",j5i(e),"--force"],["git","reset","--hard","FETCH_HEAD"],["git","clean","-dfx","-e","packages/yarnpkg-cli/bundles"]],_vc=({plugins:e,noMinify:t},r,s)=>[["yarn","build:cli",...new Array().concat(...e.map(a=>["--plugin",k9.ppath.resolve(s,a)])),...t?["--no-minify"]:[],"|"],[Cvc?"move":"mv","packages/yarnpkg-cli/bundles/yarn.js",k9.npath.fromPortablePath(r),"|"]],dJe=class extends gvc.BaseCommand{constructor(){super(...arguments),this.installPath=Xq.Option.String("--path",{description:"The path where the repository should be cloned to"}),this.repository=Xq.Option.String("--repository","https://github.com/yarnpkg/berry.git",{description:"The repository that should be cloned"}),this.branch=Xq.Option.String("--branch","master",{description:"The branch of the repository that should be cloned"}),this.plugins=Xq.Option.Array("--plugin",[],{description:"An array of additional plugins that should be included in the bundle"}),this.dryRun=Xq.Option.Boolean("-n,--dry-run",!1,{description:"If set, the bundle will be built but not added to the project"}),this.noMinify=Xq.Option.Boolean("--no-minify",!1,{description:"Build a bundle for development (debugging) - non-minified and non-mangled"}),this.force=Xq.Option.Boolean("-f,--force",!1,{description:"Always clone the repository instead of trying to fetch the latest commits"}),this.skipPlugins=Xq.Option.Boolean("--skip-plugins",!1,{description:"Skip updating the contrib plugins"})}async execute(){let t=await zQ.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await zQ.Project.find(t,this.context.cwd),s=typeof this.installPath<"u"?k9.ppath.resolve(this.context.cwd,k9.npath.toPortablePath(this.installPath)):k9.ppath.resolve(k9.npath.toPortablePath((0,Avc.tmpdir)()),"yarnpkg-sources",zQ.hashUtils.makeHash(this.repository).slice(0,6));return(await zQ.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{await z5i(this,{configuration:t,report:o,target:s}),o.reportSeparator(),o.reportInfo(zQ.MessageName.UNNAMED,"Building a fresh bundle"),o.reportSeparator();let g=await zQ.execUtils.execvp("git",["rev-parse","--short","HEAD"],{cwd:s,strict:!0}),p=k9.ppath.join(s,`packages/yarnpkg-cli/bundles/yarn-${g.stdout.trim()}.js`);k9.xfs.existsSync(p)||(await qSt(_vc(this,p,s),{configuration:t,context:this.context,target:s}),o.reportSeparator());let f=await k9.xfs.readFilePromise(p);if(!this.dryRun){let{bundleVersion:m}=await(0,fvc.setVersion)(t,null,async()=>f,{report:o});this.skipPlugins||await yvc(this,m,{project:r,report:o,target:s})}})).exitCode()}};dJe.paths=[["set","version","from","sources"]];dJe.usage=Xq.Command.Usage({description:"build Yarn from master",details:` This command will clone the Yarn repository into a temporary folder, then build it. The resulting bundle will then be copied into the local project. By default, it also updates all contrib plugins to the same commit the bundle is built from. This behavior can be disabled by using the \`--skip-plugins\` flag. - `,examples:[["Build Yarn from master","$0 set version from sources"]]});AJe.default=gJe;async function KSt(e,{configuration:t,context:r,target:s}){for(let[a,...o]of e){let g=o[o.length-1]==="|";if(g&&o.pop(),g)await KM.execUtils.pipevp(a,o,{cwd:s,stdin:r.stdin,stdout:r.stdout,stderr:r.stderr,strict:!0});else{r.stdout.write(`${KM.formatUtils.pretty(t,` $ ${[a,...o].join(" ")}`,"grey")} -`);try{await KM.execUtils.execvp(a,o,{cwd:s,strict:!0})}catch(p){throw r.stdout.write(p.stdout||p.stack),p}}}}async function YQi(e,{configuration:t,report:r,target:s}){let a=!1;if(!e.force&&x9.xfs.existsSync(x9.ppath.join(s,".git"))){r.reportInfo(KM.MessageName.UNNAMED,"Fetching the latest commits"),r.reportSeparator();try{await KSt(nvc(e),{configuration:t,context:e.context,target:s}),a=!0}catch{r.reportSeparator(),r.reportWarning(KM.MessageName.UNNAMED,"Repository update failed; we'll try to regenerate it")}}a||(r.reportInfo(KM.MessageName.UNNAMED,"Cloning the remote repository"),r.reportSeparator(),await x9.xfs.removePromise(s),await x9.xfs.mkdirPromise(s,{recursive:!0}),await KSt(rvc(e,s),{configuration:t,context:e.context,target:s}))}async function svc(e,t,{project:r,report:s,target:a}){let o=await(0,qBc.getAvailablePlugins)(r.configuration,t),g=new Set(Object.keys(o));for(let p of r.configuration.plugins.keys())g.has(p)&&await(0,zBc.buildAndSavePlugin)(p,e,{project:r,report:s,target:a})}});var iTr=z(jSt=>{"use strict";Object.defineProperty(jSt,"__esModule",{value:!0});jSt.savePlugin=HQi;var ovc=(Ma(),Ai(Oa)),avc=nl(),p3=Bn(),lx=Bn(),Hq=Ro(),nTr=(Fl(),Ai(dg)),cvc=ovc.__importDefault(Lh()),lvc=Dt("vm"),uvc=uJe(),dJe=class extends avc.BaseCommand{constructor(){super(...arguments),this.name=nTr.Option.String(),this.checksum=nTr.Option.Boolean("--checksum",!0,{description:"Whether to care if this plugin is modified"})}async execute(){let t=await p3.Configuration.find(this.context.cwd,this.context.plugins);return(await p3.StreamReport.start({configuration:t,stdout:this.context.stdout},async s=>{let{project:a}=await p3.Project.find(t,this.context.cwd),o,g;if(this.name.match(/^\.{0,2}[\\/]/)||Hq.npath.isAbsolute(this.name)){let p=Hq.ppath.resolve(this.context.cwd,Hq.npath.toPortablePath(this.name));s.reportInfo(p3.MessageName.UNNAMED,`Reading ${lx.formatUtils.pretty(t,p,lx.formatUtils.Type.PATH)}`),o=Hq.ppath.relative(a.cwd,p),g=await Hq.xfs.readFilePromise(p)}else{let p;if(this.name.match(/^https?:/)){try{new URL(this.name)}catch{throw new p3.ReportError(p3.MessageName.INVALID_PLUGIN_REFERENCE,`Plugin specifier "${this.name}" is neither a plugin name nor a valid url`)}o=this.name,p=this.name}else{let f=lx.structUtils.parseLocator(this.name.replace(/^((@yarnpkg\/)?plugin-)?/,"@yarnpkg/plugin-"));if(f.reference!=="unknown"&&!cvc.default.valid(f.reference))throw new p3.ReportError(p3.MessageName.UNNAMED,"Official plugins only accept strict version references. Use an explicit URL if you wish to download them from another location.");let m=lx.structUtils.stringifyIdent(f),y=await(0,uvc.getAvailablePlugins)(t,lx.YarnVersion);if(!Object.hasOwn(y,m)){let B=`Couldn't find a plugin named ${lx.structUtils.prettyIdent(t,f)} on the remote registry. -`;throw t.plugins.has(m)?B+=`A plugin named ${lx.structUtils.prettyIdent(t,f)} is already installed; possibly attempting to import a built-in plugin.`:B+=`Note that only the plugins referenced on our website (${lx.formatUtils.pretty(t,"https://github.com/yarnpkg/berry/blob/master/plugins.yml",lx.formatUtils.Type.URL)}) can be referenced by their name; any other plugin will have to be referenced through its public url (for example ${lx.formatUtils.pretty(t,"https://github.com/yarnpkg/berry/raw/master/packages/plugin-typescript/bin/%40yarnpkg/plugin-typescript.js",lx.formatUtils.Type.URL)}).`,new p3.ReportError(p3.MessageName.PLUGIN_NAME_NOT_FOUND,B)}o=m,p=y[m].url,f.reference!=="unknown"?p=p.replace(/\/master\//,`/${m}/${f.reference}/`):lx.YarnVersion!==null&&(p=p.replace(/\/master\//,`/@yarnpkg/cli/${lx.YarnVersion}/`))}s.reportInfo(p3.MessageName.UNNAMED,`Downloading ${lx.formatUtils.pretty(t,p,"green")}`),g=await lx.httpUtils.get(p,{configuration:t})}await HQi(o,g,{checksum:this.checksum,project:a,report:s})})).exitCode()}};dJe.paths=[["plugin","import"]];dJe.usage=nTr.Command.Usage({category:"Plugin-related commands",description:"download a plugin",details:` + `,examples:[["Build Yarn from master","$0 set version from sources"]]});pJe.default=dJe;async function qSt(e,{configuration:t,context:r,target:s}){for(let[a,...o]of e){let g=o[o.length-1]==="|";if(g&&o.pop(),g)await zQ.execUtils.pipevp(a,o,{cwd:s,stdin:r.stdin,stdout:r.stdout,stderr:r.stderr,strict:!0});else{r.stdout.write(`${zQ.formatUtils.pretty(t,` $ ${[a,...o].join(" ")}`,"grey")} +`);try{await zQ.execUtils.execvp(a,o,{cwd:s,strict:!0})}catch(p){throw r.stdout.write(p.stdout||p.stack),p}}}}async function z5i(e,{configuration:t,report:r,target:s}){let a=!1;if(!e.force&&k9.xfs.existsSync(k9.ppath.join(s,".git"))){r.reportInfo(zQ.MessageName.UNNAMED,"Fetching the latest commits"),r.reportSeparator();try{await qSt(hvc(e),{configuration:t,context:e.context,target:s}),a=!0}catch{r.reportSeparator(),r.reportWarning(zQ.MessageName.UNNAMED,"Repository update failed; we'll try to regenerate it")}}a||(r.reportInfo(zQ.MessageName.UNNAMED,"Cloning the remote repository"),r.reportSeparator(),await k9.xfs.removePromise(s),await k9.xfs.mkdirPromise(s,{recursive:!0}),await qSt(mvc(e,s),{configuration:t,context:e.context,target:s}))}async function yvc(e,t,{project:r,report:s,target:a}){let o=await(0,pvc.getAvailablePlugins)(r.configuration,t),g=new Set(Object.keys(o));for(let p of r.configuration.plugins.keys())g.has(p)&&await(0,dvc.buildAndSavePlugin)(p,e,{project:r,report:s,target:a})}});var uTr=z($St=>{"use strict";Object.defineProperty($St,"__esModule",{value:!0});$St.savePlugin=q5i;var bvc=(Oa(),Ai(Pa)),Evc=il(),C3=Bn(),fx=Bn(),Jq=No(),lTr=(Zl(),Ai(pg)),Bvc=bvc.__importDefault(Vh()),vvc=xt("vm"),Svc=AJe(),fJe=class extends Evc.BaseCommand{constructor(){super(...arguments),this.name=lTr.Option.String(),this.checksum=lTr.Option.Boolean("--checksum",!0,{description:"Whether to care if this plugin is modified"})}async execute(){let t=await C3.Configuration.find(this.context.cwd,this.context.plugins);return(await C3.StreamReport.start({configuration:t,stdout:this.context.stdout},async s=>{let{project:a}=await C3.Project.find(t,this.context.cwd),o,g;if(this.name.match(/^\.{0,2}[\\/]/)||Jq.npath.isAbsolute(this.name)){let p=Jq.ppath.resolve(this.context.cwd,Jq.npath.toPortablePath(this.name));s.reportInfo(C3.MessageName.UNNAMED,`Reading ${fx.formatUtils.pretty(t,p,fx.formatUtils.Type.PATH)}`),o=Jq.ppath.relative(a.cwd,p),g=await Jq.xfs.readFilePromise(p)}else{let p;if(this.name.match(/^https?:/)){try{new URL(this.name)}catch{throw new C3.ReportError(C3.MessageName.INVALID_PLUGIN_REFERENCE,`Plugin specifier "${this.name}" is neither a plugin name nor a valid url`)}o=this.name,p=this.name}else{let f=fx.structUtils.parseLocator(this.name.replace(/^((@yarnpkg\/)?plugin-)?/,"@yarnpkg/plugin-"));if(f.reference!=="unknown"&&!Bvc.default.valid(f.reference))throw new C3.ReportError(C3.MessageName.UNNAMED,"Official plugins only accept strict version references. Use an explicit URL if you wish to download them from another location.");let m=fx.structUtils.stringifyIdent(f),y=await(0,Svc.getAvailablePlugins)(t,fx.YarnVersion);if(!Object.hasOwn(y,m)){let B=`Couldn't find a plugin named ${fx.structUtils.prettyIdent(t,f)} on the remote registry. +`;throw t.plugins.has(m)?B+=`A plugin named ${fx.structUtils.prettyIdent(t,f)} is already installed; possibly attempting to import a built-in plugin.`:B+=`Note that only the plugins referenced on our website (${fx.formatUtils.pretty(t,"https://github.com/yarnpkg/berry/blob/master/plugins.yml",fx.formatUtils.Type.URL)}) can be referenced by their name; any other plugin will have to be referenced through its public url (for example ${fx.formatUtils.pretty(t,"https://github.com/yarnpkg/berry/raw/master/packages/plugin-typescript/bin/%40yarnpkg/plugin-typescript.js",fx.formatUtils.Type.URL)}).`,new C3.ReportError(C3.MessageName.PLUGIN_NAME_NOT_FOUND,B)}o=m,p=y[m].url,f.reference!=="unknown"?p=p.replace(/\/master\//,`/${m}/${f.reference}/`):fx.YarnVersion!==null&&(p=p.replace(/\/master\//,`/@yarnpkg/cli/${fx.YarnVersion}/`))}s.reportInfo(C3.MessageName.UNNAMED,`Downloading ${fx.formatUtils.pretty(t,p,"green")}`),g=await fx.httpUtils.get(p,{configuration:t})}await q5i(o,g,{checksum:this.checksum,project:a,report:s})})).exitCode()}};fJe.paths=[["plugin","import"]];fJe.usage=lTr.Command.Usage({category:"Plugin-related commands",description:"download a plugin",details:` This command downloads the specified plugin from its remote location and updates the configuration to reference it in further CLI invocations. Three types of plugin references are accepted: @@ -1325,23 +1325,23 @@ ${p} If the \`--no-checksum\` option is set, Yarn will no longer care if the plugin is modified. Plugins cannot be downloaded from the npm registry, and aren't allowed to have dependencies (they need to be bundled into a single file, possibly thanks to the \`@yarnpkg/builder\` package). - `,examples:[['Download and activate the "@yarnpkg/plugin-exec" plugin',"$0 plugin import @yarnpkg/plugin-exec"],['Download and activate the "@yarnpkg/plugin-exec" plugin (shorthand)',"$0 plugin import exec"],["Download and activate a community plugin","$0 plugin import https://example.org/path/to/plugin.js"],["Activate a local plugin","$0 plugin import ./path/to/plugin.js"]]});jSt.default=dJe;async function HQi(e,t,{checksum:r=!0,project:s,report:a}){let{configuration:o}=s,g={},p={exports:g};(0,lvc.runInNewContext)(t.toString(),{module:p,exports:g});let m=`.yarn/plugins/${p.exports.name}.cjs`,y=Hq.ppath.resolve(s.cwd,m);a.reportInfo(p3.MessageName.UNNAMED,`Saving the new plugin in ${lx.formatUtils.pretty(o,m,"magenta")}`),await Hq.xfs.mkdirPromise(Hq.ppath.dirname(y),{recursive:!0}),await Hq.xfs.writeFilePromise(y,t);let B={path:m,spec:e};r&&(B.checksum=lx.hashUtils.makeHash(t)),await p3.Configuration.addPlugin(s.cwd,[B])}});var rTr=z(qSt=>{"use strict";Object.defineProperty(qSt,"__esModule",{value:!0});qSt.buildAndSavePlugin=JQi;var gvc=nl(),zSt=Bn(),ZNe=Bn(),LNe=Ro(),dCe=(Fl(),Ai(dg)),Avc=Dt("os"),XQi=tTr(),dvc=iTr(),pvc=uJe(),fvc=({pluginName:e,noMinify:t},r)=>[["yarn",`build:${e}`,...t?["--no-minify"]:[],"|"]],pJe=class extends gvc.BaseCommand{constructor(){super(...arguments),this.installPath=dCe.Option.String("--path",{description:"The path where the repository should be cloned to"}),this.repository=dCe.Option.String("--repository","https://github.com/yarnpkg/berry.git",{description:"The repository that should be cloned"}),this.branch=dCe.Option.String("--branch","master",{description:"The branch of the repository that should be cloned"}),this.noMinify=dCe.Option.Boolean("--no-minify",!1,{description:"Build a plugin for development (debugging) - non-minified and non-mangled"}),this.force=dCe.Option.Boolean("-f,--force",!1,{description:"Always clone the repository instead of trying to fetch the latest commits"}),this.name=dCe.Option.String()}async execute(){let t=await ZNe.Configuration.find(this.context.cwd,this.context.plugins),r=typeof this.installPath<"u"?LNe.ppath.resolve(this.context.cwd,LNe.npath.toPortablePath(this.installPath)):LNe.ppath.resolve(LNe.npath.toPortablePath((0,Avc.tmpdir)()),"yarnpkg-sources",zSt.hashUtils.makeHash(this.repository).slice(0,6));return(await ZNe.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{let{project:o}=await ZNe.Project.find(t,this.context.cwd),g=zSt.structUtils.parseIdent(this.name.replace(/^((@yarnpkg\/)?plugin-)?/,"@yarnpkg/plugin-")),p=zSt.structUtils.stringifyIdent(g),f=await(0,pvc.getAvailablePlugins)(t,zSt.YarnVersion);if(!Object.hasOwn(f,p))throw new ZNe.ReportError(ZNe.MessageName.PLUGIN_NAME_NOT_FOUND,`Couldn't find a plugin named "${p}" on the remote registry. Note that only the plugins referenced on our website (https://github.com/yarnpkg/berry/blob/master/plugins.yml) can be built and imported from sources.`);let m=p;await(0,XQi.prepareRepo)(this,{configuration:t,report:a,target:r}),await JQi(m,this,{project:o,report:a,target:r})})).exitCode()}};pJe.paths=[["plugin","import","from","sources"]];pJe.usage=dCe.Command.Usage({category:"Plugin-related commands",description:"build a plugin from sources",details:` + `,examples:[['Download and activate the "@yarnpkg/plugin-exec" plugin',"$0 plugin import @yarnpkg/plugin-exec"],['Download and activate the "@yarnpkg/plugin-exec" plugin (shorthand)',"$0 plugin import exec"],["Download and activate a community plugin","$0 plugin import https://example.org/path/to/plugin.js"],["Activate a local plugin","$0 plugin import ./path/to/plugin.js"]]});$St.default=fJe;async function q5i(e,t,{checksum:r=!0,project:s,report:a}){let{configuration:o}=s,g={},p={exports:g};(0,vvc.runInNewContext)(t.toString(),{module:p,exports:g});let m=`.yarn/plugins/${p.exports.name}.cjs`,y=Jq.ppath.resolve(s.cwd,m);a.reportInfo(C3.MessageName.UNNAMED,`Saving the new plugin in ${fx.formatUtils.pretty(o,m,"magenta")}`),await Jq.xfs.mkdirPromise(Jq.ppath.dirname(y),{recursive:!0}),await Jq.xfs.writeFilePromise(y,t);let B={path:m,spec:e};r&&(B.checksum=fx.hashUtils.makeHash(t)),await C3.Configuration.addPlugin(s.cwd,[B])}});var cTr=z(twt=>{"use strict";Object.defineProperty(twt,"__esModule",{value:!0});twt.buildAndSavePlugin=eMi;var wvc=il(),ewt=Bn(),VNe=Bn(),WNe=No(),fCe=(Zl(),Ai(pg)),Tvc=xt("os"),$5i=aTr(),Nvc=uTr(),Rvc=AJe(),Dvc=({pluginName:e,noMinify:t},r)=>[["yarn",`build:${e}`,...t?["--no-minify"]:[],"|"]],IJe=class extends wvc.BaseCommand{constructor(){super(...arguments),this.installPath=fCe.Option.String("--path",{description:"The path where the repository should be cloned to"}),this.repository=fCe.Option.String("--repository","https://github.com/yarnpkg/berry.git",{description:"The repository that should be cloned"}),this.branch=fCe.Option.String("--branch","master",{description:"The branch of the repository that should be cloned"}),this.noMinify=fCe.Option.Boolean("--no-minify",!1,{description:"Build a plugin for development (debugging) - non-minified and non-mangled"}),this.force=fCe.Option.Boolean("-f,--force",!1,{description:"Always clone the repository instead of trying to fetch the latest commits"}),this.name=fCe.Option.String()}async execute(){let t=await VNe.Configuration.find(this.context.cwd,this.context.plugins),r=typeof this.installPath<"u"?WNe.ppath.resolve(this.context.cwd,WNe.npath.toPortablePath(this.installPath)):WNe.ppath.resolve(WNe.npath.toPortablePath((0,Tvc.tmpdir)()),"yarnpkg-sources",ewt.hashUtils.makeHash(this.repository).slice(0,6));return(await VNe.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{let{project:o}=await VNe.Project.find(t,this.context.cwd),g=ewt.structUtils.parseIdent(this.name.replace(/^((@yarnpkg\/)?plugin-)?/,"@yarnpkg/plugin-")),p=ewt.structUtils.stringifyIdent(g),f=await(0,Rvc.getAvailablePlugins)(t,ewt.YarnVersion);if(!Object.hasOwn(f,p))throw new VNe.ReportError(VNe.MessageName.PLUGIN_NAME_NOT_FOUND,`Couldn't find a plugin named "${p}" on the remote registry. Note that only the plugins referenced on our website (https://github.com/yarnpkg/berry/blob/master/plugins.yml) can be built and imported from sources.`);let m=p;await(0,$5i.prepareRepo)(this,{configuration:t,report:a,target:r}),await eMi(m,this,{project:o,report:a,target:r})})).exitCode()}};IJe.paths=[["plugin","import","from","sources"]];IJe.usage=fCe.Command.Usage({category:"Plugin-related commands",description:"build a plugin from sources",details:` This command clones the Yarn repository into a temporary folder, builds the specified contrib plugin and updates the configuration to reference it in further CLI invocations. The plugins can be referenced by their short name if sourced from the official Yarn repository. - `,examples:[['Build and activate the "@yarnpkg/plugin-exec" plugin',"$0 plugin import from sources @yarnpkg/plugin-exec"],['Build and activate the "@yarnpkg/plugin-exec" plugin (shorthand)',"$0 plugin import from sources exec"]]});qSt.default=pJe;async function JQi(e,{context:t,noMinify:r},{project:s,report:a,target:o}){let g=e.replace(/@yarnpkg\//,""),{configuration:p}=s;a.reportSeparator(),a.reportInfo(ZNe.MessageName.UNNAMED,`Building a fresh ${g}`),a.reportSeparator(),await(0,XQi.runWorkflow)(fvc({pluginName:g,noMinify:r},o),{configuration:p,context:t,target:o}),a.reportSeparator();let f=LNe.ppath.resolve(o,`packages/${g}/bundles/${e}.js`),m=await LNe.xfs.readFilePromise(f);await(0,dvc.savePlugin)(e,m,{project:s,report:a})}});var UQi=z(aTr=>{"use strict";Object.defineProperty(aTr,"__esModule",{value:!0});var Ivc=nl(),z5=Bn(),sTr=Ro(),oTr=(Fl(),Ai(dg)),fJe=class extends Ivc.BaseCommand{constructor(){super(...arguments),this.name=oTr.Option.String()}async execute(){let t=await z5.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await z5.Project.find(t,this.context.cwd);return(await z5.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{let o=this.name,g=z5.structUtils.parseIdent(o);if(!t.plugins.has(o))throw new oTr.UsageError(`${z5.structUtils.prettyIdent(t,g)} isn't referenced by the current configuration`);let p=`.yarn/plugins/${o}.cjs`,f=sTr.ppath.resolve(r.cwd,p);sTr.xfs.existsSync(f)&&(a.reportInfo(z5.MessageName.UNNAMED,`Removing ${z5.formatUtils.pretty(t,p,z5.formatUtils.Type.PATH)}...`),await sTr.xfs.removePromise(f)),a.reportInfo(z5.MessageName.UNNAMED,"Updating the configuration..."),await z5.Configuration.updateConfiguration(r.cwd,{plugins:m=>{if(!Array.isArray(m))return m;let y=m.filter(B=>B.path!==p);return y.length===0?z5.Configuration.deleteProperty:y.length===m.length?m:y}})})).exitCode()}};fJe.paths=[["plugin","remove"]];fJe.usage=oTr.Command.Usage({category:"Plugin-related commands",description:"remove a plugin",details:` + `,examples:[['Build and activate the "@yarnpkg/plugin-exec" plugin',"$0 plugin import from sources @yarnpkg/plugin-exec"],['Build and activate the "@yarnpkg/plugin-exec" plugin (shorthand)',"$0 plugin import from sources exec"]]});twt.default=IJe;async function eMi(e,{context:t,noMinify:r},{project:s,report:a,target:o}){let g=e.replace(/@yarnpkg\//,""),{configuration:p}=s;a.reportSeparator(),a.reportInfo(VNe.MessageName.UNNAMED,`Building a fresh ${g}`),a.reportSeparator(),await(0,$5i.runWorkflow)(Dvc({pluginName:g,noMinify:r},o),{configuration:p,context:t,target:o}),a.reportSeparator();let f=WNe.ppath.resolve(o,`packages/${g}/bundles/${e}.js`),m=await WNe.xfs.readFilePromise(f);await(0,Nvc.savePlugin)(e,m,{project:s,report:a})}});var tMi=z(dTr=>{"use strict";Object.defineProperty(dTr,"__esModule",{value:!0});var xvc=il(),eX=Bn(),gTr=No(),ATr=(Zl(),Ai(pg)),CJe=class extends xvc.BaseCommand{constructor(){super(...arguments),this.name=ATr.Option.String()}async execute(){let t=await eX.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await eX.Project.find(t,this.context.cwd);return(await eX.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{let o=this.name,g=eX.structUtils.parseIdent(o);if(!t.plugins.has(o))throw new ATr.UsageError(`${eX.structUtils.prettyIdent(t,g)} isn't referenced by the current configuration`);let p=`.yarn/plugins/${o}.cjs`,f=gTr.ppath.resolve(r.cwd,p);gTr.xfs.existsSync(f)&&(a.reportInfo(eX.MessageName.UNNAMED,`Removing ${eX.formatUtils.pretty(t,p,eX.formatUtils.Type.PATH)}...`),await gTr.xfs.removePromise(f)),a.reportInfo(eX.MessageName.UNNAMED,"Updating the configuration..."),await eX.Configuration.updateConfiguration(r.cwd,{plugins:m=>{if(!Array.isArray(m))return m;let y=m.filter(B=>B.path!==p);return y.length===0?eX.Configuration.deleteProperty:y.length===m.length?m:y}})})).exitCode()}};CJe.paths=[["plugin","remove"]];CJe.usage=ATr.Command.Usage({category:"Plugin-related commands",description:"remove a plugin",details:` This command deletes the specified plugin from the .yarn/plugins folder and removes it from the configuration. **Note:** The plugins have to be referenced by their name property, which can be obtained using the \`yarn plugin runtime\` command. Shorthands are not allowed. - `,examples:[["Remove a plugin imported from the Yarn repository","$0 plugin remove @yarnpkg/plugin-typescript"],["Remove a plugin imported from a local file","$0 plugin remove my-local-plugin"]]});aTr.default=fJe});var zQi=z(cTr=>{"use strict";Object.defineProperty(cTr,"__esModule",{value:!0});var Cvc=nl(),KQi=Bn(),jQi=(Fl(),Ai(dg)),IJe=class extends Cvc.BaseCommand{constructor(){super(...arguments),this.json=jQi.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await KQi.Configuration.find(this.context.cwd,this.context.plugins);return(await KQi.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async s=>{for(let a of t.plugins.keys()){let o=this.context.plugins.plugins.has(a),g=a;o&&(g+=" [builtin]"),s.reportJson({name:a,builtin:o}),s.reportInfo(null,`${g}`)}})).exitCode()}};IJe.paths=[["plugin","runtime"]];IJe.usage=jQi.Command.Usage({category:"Plugin-related commands",description:"list the active plugins",details:` + `,examples:[["Remove a plugin imported from the Yarn repository","$0 plugin remove @yarnpkg/plugin-typescript"],["Remove a plugin imported from a local file","$0 plugin remove my-local-plugin"]]});dTr.default=CJe});var iMi=z(pTr=>{"use strict";Object.defineProperty(pTr,"__esModule",{value:!0});var kvc=il(),rMi=Bn(),nMi=(Zl(),Ai(pg)),mJe=class extends kvc.BaseCommand{constructor(){super(...arguments),this.json=nMi.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await rMi.Configuration.find(this.context.cwd,this.context.plugins);return(await rMi.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async s=>{for(let a of t.plugins.keys()){let o=this.context.plugins.plugins.has(a),g=a;o&&(g+=" [builtin]"),s.reportJson({name:a,builtin:o}),s.reportInfo(null,`${g}`)}})).exitCode()}};mJe.paths=[["plugin","runtime"]];mJe.usage=nMi.Command.Usage({category:"Plugin-related commands",description:"list the active plugins",details:` This command prints the currently active plugins. Will be displayed both builtin plugins and external plugins. - `,examples:[["List the currently active plugins","$0 plugin runtime"]]});cTr.default=IJe});var tYi=z(uTr=>{"use strict";Object.defineProperty(uTr,"__esModule",{value:!0});var qQi=nl(),$Qi=Bn(),lTr=Bn(),eYi=(Fl(),Ai(dg)),CJe=class extends qQi.BaseCommand{constructor(){super(...arguments),this.idents=eYi.Option.Rest()}async execute(){let t=await $Qi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await lTr.Project.find(t,this.context.cwd),a=await $Qi.Cache.find(t);if(!s)throw new qQi.WorkspaceRequiredError(r.cwd,this.context.cwd);let o=new Set;for(let g of this.idents)o.add(lTr.structUtils.parseIdent(g).identHash);if(await r.restoreInstallState({restoreResolutions:!1}),await r.resolveEverything({cache:a,report:new lTr.ThrowReport}),o.size>0)for(let g of r.storedPackages.values())o.has(g.identHash)&&(r.storedBuildState.delete(g.locatorHash),r.skippedBuilds.delete(g.locatorHash));else r.storedBuildState.clear(),r.skippedBuilds.clear();return await r.installWithNewReport({stdout:this.context.stdout,quiet:this.context.quiet},{cache:a})}};CJe.paths=[["rebuild"]];CJe.usage=eYi.Command.Usage({description:"rebuild the project's native packages",details:` + `,examples:[["List the currently active plugins","$0 plugin runtime"]]});pTr.default=mJe});var cMi=z(ITr=>{"use strict";Object.defineProperty(ITr,"__esModule",{value:!0});var sMi=il(),oMi=Bn(),fTr=Bn(),aMi=(Zl(),Ai(pg)),hJe=class extends sMi.BaseCommand{constructor(){super(...arguments),this.idents=aMi.Option.Rest()}async execute(){let t=await oMi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await fTr.Project.find(t,this.context.cwd),a=await oMi.Cache.find(t);if(!s)throw new sMi.WorkspaceRequiredError(r.cwd,this.context.cwd);let o=new Set;for(let g of this.idents)o.add(fTr.structUtils.parseIdent(g).identHash);if(await r.restoreInstallState({restoreResolutions:!1}),await r.resolveEverything({cache:a,report:new fTr.ThrowReport}),o.size>0)for(let g of r.storedPackages.values())o.has(g.identHash)&&(r.storedBuildState.delete(g.locatorHash),r.skippedBuilds.delete(g.locatorHash));else r.storedBuildState.clear(),r.skippedBuilds.clear();return await r.installWithNewReport({stdout:this.context.stdout,quiet:this.context.quiet},{cache:a})}};hJe.paths=[["rebuild"]];hJe.usage=aMi.Command.Usage({description:"rebuild the project's native packages",details:` This command will automatically cause Yarn to forget about previous compilations of the given packages and to run them again. Note that while Yarn forgets the compilation, the previous artifacts aren't erased from the filesystem and may affect the next builds (in good or bad). To avoid this, you may remove the .yarn/unplugged folder, or any other relevant location where packages might have been stored (Yarn may offer a way to do that automatically in the future). By default all packages will be rebuilt, but you can filter the list by specifying the names of the packages you want to clear from memory. - `,examples:[["Rebuild all packages","$0 rebuild"],["Rebuild fsevents only","$0 rebuild fsevents"]]});uTr.default=CJe});var iYi=z(dTr=>{"use strict";Object.defineProperty(dTr,"__esModule",{value:!0});var ATr=(Ma(),Ai(Oa)),rYi=nl(),mJe=Bn(),mvc=Bn(),$St=Bn(),hJe=(Fl(),Ai(dg)),nYi=ATr.__importDefault(sk()),hvc=ATr.__importStar((_L(),Ai(hL))),gTr=ATr.__importStar(W4e()),_Je=class extends rYi.BaseCommand{constructor(){super(...arguments),this.all=hJe.Option.Boolean("-A,--all",!1,{description:"Apply the operation to all workspaces from the current project"}),this.mode=hJe.Option.String("--mode",{description:"Change what artifacts installs generate",validator:hvc.isEnum(mvc.InstallMode)}),this.patterns=hJe.Option.Rest()}async execute(){let t=await mJe.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await mJe.Project.find(t,this.context.cwd),a=await mJe.Cache.find(t);if(!s)throw new rYi.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=this.all?r.workspaces:[s],g=[gTr.Target.REGULAR,gTr.Target.DEVELOPMENT,gTr.Target.PEER],p=[],f=!1,m=[];for(let G of this.patterns){let T=!1,O=$St.structUtils.parseIdent(G);for(let X of o){let U=[...X.manifest.peerDependenciesMeta.keys()];for(let le of(0,nYi.default)(U,G))X.manifest.peerDependenciesMeta.delete(le),f=!0,T=!0;for(let le of g){let ae=X.manifest.getForScope(le),ge=[...ae.values()].map(fe=>$St.structUtils.stringifyIdent(fe));for(let fe of(0,nYi.default)(ge,$St.structUtils.stringifyIdent(O))){let{identHash:pe}=$St.structUtils.parseIdent(fe),he=ae.get(pe);if(typeof he>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");X.manifest[le].delete(pe),m.push([X,le,he]),f=!0,T=!0}}}T||p.push(G)}let y=p.length>1?"Patterns":"Pattern",B=p.length>1?"don't":"doesn't",v=this.all?"any":"this";if(p.length>0)throw new hJe.UsageError(`${y} ${mJe.formatUtils.prettyList(t,p,mJe.formatUtils.Type.CODE)} ${B} match any packages referenced by ${v} workspace`);return f?(await t.triggerMultipleHooks(G=>G.afterWorkspaceDependencyRemoval,m),await r.installWithNewReport({stdout:this.context.stdout},{cache:a,mode:this.mode})):0}};_Je.paths=[["remove"]];_Je.usage=hJe.Command.Usage({description:"remove dependencies from the project",details:` + `,examples:[["Rebuild all packages","$0 rebuild"],["Rebuild fsevents only","$0 rebuild fsevents"]]});ITr.default=hJe});var gMi=z(hTr=>{"use strict";Object.defineProperty(hTr,"__esModule",{value:!0});var mTr=(Oa(),Ai(Pa)),lMi=il(),_Je=Bn(),Gvc=Bn(),rwt=Bn(),yJe=(Zl(),Ai(pg)),uMi=mTr.__importDefault(gk()),Fvc=mTr.__importStar((yL(),Ai(_L))),CTr=mTr.__importStar(O4e()),bJe=class extends lMi.BaseCommand{constructor(){super(...arguments),this.all=yJe.Option.Boolean("-A,--all",!1,{description:"Apply the operation to all workspaces from the current project"}),this.mode=yJe.Option.String("--mode",{description:"Change what artifacts installs generate",validator:Fvc.isEnum(Gvc.InstallMode)}),this.patterns=yJe.Option.Rest()}async execute(){let t=await _Je.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await _Je.Project.find(t,this.context.cwd),a=await _Je.Cache.find(t);if(!s)throw new lMi.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=this.all?r.workspaces:[s],g=[CTr.Target.REGULAR,CTr.Target.DEVELOPMENT,CTr.Target.PEER],p=[],f=!1,m=[];for(let k of this.patterns){let T=!1,O=rwt.structUtils.parseIdent(k);for(let X of o){let U=[...X.manifest.peerDependenciesMeta.keys()];for(let le of(0,uMi.default)(U,k))X.manifest.peerDependenciesMeta.delete(le),f=!0,T=!0;for(let le of g){let ae=X.manifest.getForScope(le),ge=[...ae.values()].map(fe=>rwt.structUtils.stringifyIdent(fe));for(let fe of(0,uMi.default)(ge,rwt.structUtils.stringifyIdent(O))){let{identHash:pe}=rwt.structUtils.parseIdent(fe),he=ae.get(pe);if(typeof he>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");X.manifest[le].delete(pe),m.push([X,le,he]),f=!0,T=!0}}}T||p.push(k)}let y=p.length>1?"Patterns":"Pattern",B=p.length>1?"don't":"doesn't",v=this.all?"any":"this";if(p.length>0)throw new yJe.UsageError(`${y} ${_Je.formatUtils.prettyList(t,p,_Je.formatUtils.Type.CODE)} ${B} match any packages referenced by ${v} workspace`);return f?(await t.triggerMultipleHooks(k=>k.afterWorkspaceDependencyRemoval,m),await r.installWithNewReport({stdout:this.context.stdout},{cache:a,mode:this.mode})):0}};bJe.paths=[["remove"]];bJe.usage=yJe.Command.Usage({description:"remove dependencies from the project",details:` This command will remove the packages matching the specified patterns from the current workspace. If the \`--mode=\` option is set, Yarn will change which artifacts are generated. The modes currently supported are: @@ -1351,7 +1351,7 @@ ${p} - \`update-lockfile\` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost. This command accepts glob patterns as arguments (if valid Idents and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them. - `,examples:[["Remove a dependency from the current project","$0 remove lodash"],["Remove a dependency from all workspaces at once","$0 remove lodash --all"],["Remove all dependencies starting with `eslint-`","$0 remove 'eslint-*'"],["Remove all dependencies with the `@babel` scope","$0 remove '@babel/*'"],["Remove all dependencies matching `react-dom` or `react-helmet`","$0 remove 'react-{dom,helmet}'"]]});dTr.default=_Je});var oYi=z(fTr=>{"use strict";Object.defineProperty(fTr,"__esModule",{value:!0});var sYi=nl(),pTr=Bn(),_vc=Bn(),yvc=(Fl(),Ai(dg)),bvc=Dt("util"),ewt=class extends sYi.BaseCommand{constructor(){super(...arguments),this.json=yvc.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await pTr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await pTr.Project.find(t,this.context.cwd);if(!s)throw new sYi.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await pTr.StreamReport.start({configuration:t,stdout:this.context.stdout,json:this.json},async o=>{let g=s.manifest.scripts,p=_vc.miscUtils.sortMap(g.keys(),y=>y),f={breakLength:1/0,colors:t.get("enableColors"),maxArrayLength:2},m=p.reduce((y,B)=>Math.max(y,B.length),0);for(let[y,B]of g.entries())o.reportInfo(null,`${y.padEnd(m," ")} ${(0,bvc.inspect)(B,f)}`),o.reportJson({name:y,script:B})})).exitCode()}};ewt.paths=[["run"]];fTr.default=ewt});var lYi=z(ITr=>{"use strict";Object.defineProperty(ITr,"__esModule",{value:!0});var aYi=nl(),cYi=Bn(),pCe=Bn(),k9=(Fl(),Ai(dg)),yJe=class extends aYi.BaseCommand{constructor(){super(...arguments),this.inspect=k9.Option.String("--inspect",!1,{tolerateBoolean:!0,description:"Forwarded to the underlying Node process when executing a binary"}),this.inspectBrk=k9.Option.String("--inspect-brk",!1,{tolerateBoolean:!0,description:"Forwarded to the underlying Node process when executing a binary"}),this.topLevel=k9.Option.Boolean("-T,--top-level",!1,{description:"Check the root workspace for scripts and/or binaries instead of the current one"}),this.binariesOnly=k9.Option.Boolean("-B,--binaries-only",!1,{description:"Ignore any user defined scripts and only check for binaries"}),this.require=k9.Option.String("--require",{description:"Forwarded to the underlying Node process when executing a binary"}),this.silent=k9.Option.Boolean("--silent",{hidden:!0}),this.scriptName=k9.Option.String(),this.args=k9.Option.Proxy()}async execute(){let t=await cYi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s,locator:a}=await cYi.Project.find(t,this.context.cwd);await r.restoreInstallState();let o=this.topLevel?r.topLevelWorkspace.anchoredLocator:a;if(!this.binariesOnly&&await pCe.scriptUtils.hasPackageScript(o,this.scriptName,{project:r}))return await pCe.scriptUtils.executePackageScript(o,this.scriptName,this.args,{project:r,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});let g=await pCe.scriptUtils.getPackageAccessibleBinaries(o,{project:r});if(g.get(this.scriptName)){let f=[];return this.inspect&&(typeof this.inspect=="string"?f.push(`--inspect=${this.inspect}`):f.push("--inspect")),this.inspectBrk&&(typeof this.inspectBrk=="string"?f.push(`--inspect-brk=${this.inspectBrk}`):f.push("--inspect-brk")),this.require&&f.push(`--require=${this.require}`),await pCe.scriptUtils.executePackageAccessibleBinary(o,this.scriptName,this.args,{cwd:this.context.cwd,project:r,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,nodeArgs:f,packageAccessibleBinaries:g})}if(!this.topLevel&&!this.binariesOnly&&s&&this.scriptName.includes(":")){let m=(await Promise.all(r.workspaces.map(async y=>y.manifest.scripts.has(this.scriptName)?y:null))).filter(y=>y!==null);if(m.length===1)return await pCe.scriptUtils.executeWorkspaceScript(m[0],this.scriptName,this.args,{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})}if(this.topLevel)throw this.scriptName==="node-gyp"?new k9.UsageError(`Couldn't find a script name "${this.scriptName}" in the top-level (used by ${pCe.structUtils.prettyLocator(t,a)}). This typically happens because some package depends on "node-gyp" to build itself, but didn't list it in their dependencies. To fix that, please run "yarn add node-gyp" into your top-level workspace. You also can open an issue on the repository of the specified package to suggest them to use an optional peer dependency.`):new k9.UsageError(`Couldn't find a script name "${this.scriptName}" in the top-level (used by ${pCe.structUtils.prettyLocator(t,a)}).`);{if(this.scriptName==="global")throw new k9.UsageError("The 'yarn global' commands have been removed in 2.x - consider using 'yarn dlx' or a third-party plugin instead");let f=[this.scriptName].concat(this.args);for(let[m,y]of aYi.pluginCommands)for(let B of y)if(f.length>=B.length&&JSON.stringify(f.slice(0,B.length))===JSON.stringify(B))throw new k9.UsageError(`Couldn't find a script named "${this.scriptName}", but a matching command can be found in the ${m} plugin. You can install it with "yarn plugin import ${m}".`);throw new k9.UsageError(`Couldn't find a script named "${this.scriptName}".`)}}};yJe.paths=[["run"]];yJe.usage=k9.Command.Usage({description:"run a script defined in the package.json",details:` + `,examples:[["Remove a dependency from the current project","$0 remove lodash"],["Remove a dependency from all workspaces at once","$0 remove lodash --all"],["Remove all dependencies starting with `eslint-`","$0 remove 'eslint-*'"],["Remove all dependencies with the `@babel` scope","$0 remove '@babel/*'"],["Remove all dependencies matching `react-dom` or `react-helmet`","$0 remove 'react-{dom,helmet}'"]]});hTr.default=bJe});var dMi=z(yTr=>{"use strict";Object.defineProperty(yTr,"__esModule",{value:!0});var AMi=il(),_Tr=Bn(),Zvc=Bn(),Lvc=(Zl(),Ai(pg)),Vvc=xt("util"),nwt=class extends AMi.BaseCommand{constructor(){super(...arguments),this.json=Lvc.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await _Tr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await _Tr.Project.find(t,this.context.cwd);if(!s)throw new AMi.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await _Tr.StreamReport.start({configuration:t,stdout:this.context.stdout,json:this.json},async o=>{let g=s.manifest.scripts,p=Zvc.miscUtils.sortMap(g.keys(),y=>y),f={breakLength:1/0,colors:t.get("enableColors"),maxArrayLength:2},m=p.reduce((y,B)=>Math.max(y,B.length),0);for(let[y,B]of g.entries())o.reportInfo(null,`${y.padEnd(m," ")} ${(0,Vvc.inspect)(B,f)}`),o.reportJson({name:y,script:B})})).exitCode()}};nwt.paths=[["run"]];yTr.default=nwt});var IMi=z(bTr=>{"use strict";Object.defineProperty(bTr,"__esModule",{value:!0});var pMi=il(),fMi=Bn(),ICe=Bn(),G9=(Zl(),Ai(pg)),EJe=class extends pMi.BaseCommand{constructor(){super(...arguments),this.inspect=G9.Option.String("--inspect",!1,{tolerateBoolean:!0,description:"Forwarded to the underlying Node process when executing a binary"}),this.inspectBrk=G9.Option.String("--inspect-brk",!1,{tolerateBoolean:!0,description:"Forwarded to the underlying Node process when executing a binary"}),this.topLevel=G9.Option.Boolean("-T,--top-level",!1,{description:"Check the root workspace for scripts and/or binaries instead of the current one"}),this.binariesOnly=G9.Option.Boolean("-B,--binaries-only",!1,{description:"Ignore any user defined scripts and only check for binaries"}),this.require=G9.Option.String("--require",{description:"Forwarded to the underlying Node process when executing a binary"}),this.silent=G9.Option.Boolean("--silent",{hidden:!0}),this.scriptName=G9.Option.String(),this.args=G9.Option.Proxy()}async execute(){let t=await fMi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s,locator:a}=await fMi.Project.find(t,this.context.cwd);await r.restoreInstallState();let o=this.topLevel?r.topLevelWorkspace.anchoredLocator:a;if(!this.binariesOnly&&await ICe.scriptUtils.hasPackageScript(o,this.scriptName,{project:r}))return await ICe.scriptUtils.executePackageScript(o,this.scriptName,this.args,{project:r,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});let g=await ICe.scriptUtils.getPackageAccessibleBinaries(o,{project:r});if(g.get(this.scriptName)){let f=[];return this.inspect&&(typeof this.inspect=="string"?f.push(`--inspect=${this.inspect}`):f.push("--inspect")),this.inspectBrk&&(typeof this.inspectBrk=="string"?f.push(`--inspect-brk=${this.inspectBrk}`):f.push("--inspect-brk")),this.require&&f.push(`--require=${this.require}`),await ICe.scriptUtils.executePackageAccessibleBinary(o,this.scriptName,this.args,{cwd:this.context.cwd,project:r,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,nodeArgs:f,packageAccessibleBinaries:g})}if(!this.topLevel&&!this.binariesOnly&&s&&this.scriptName.includes(":")){let m=(await Promise.all(r.workspaces.map(async y=>y.manifest.scripts.has(this.scriptName)?y:null))).filter(y=>y!==null);if(m.length===1)return await ICe.scriptUtils.executeWorkspaceScript(m[0],this.scriptName,this.args,{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})}if(this.topLevel)throw this.scriptName==="node-gyp"?new G9.UsageError(`Couldn't find a script name "${this.scriptName}" in the top-level (used by ${ICe.structUtils.prettyLocator(t,a)}). This typically happens because some package depends on "node-gyp" to build itself, but didn't list it in their dependencies. To fix that, please run "yarn add node-gyp" into your top-level workspace. You also can open an issue on the repository of the specified package to suggest them to use an optional peer dependency.`):new G9.UsageError(`Couldn't find a script name "${this.scriptName}" in the top-level (used by ${ICe.structUtils.prettyLocator(t,a)}).`);{if(this.scriptName==="global")throw new G9.UsageError("The 'yarn global' commands have been removed in 2.x - consider using 'yarn dlx' or a third-party plugin instead");let f=[this.scriptName].concat(this.args);for(let[m,y]of pMi.pluginCommands)for(let B of y)if(f.length>=B.length&&JSON.stringify(f.slice(0,B.length))===JSON.stringify(B))throw new G9.UsageError(`Couldn't find a script named "${this.scriptName}", but a matching command can be found in the ${m} plugin. You can install it with "yarn plugin import ${m}".`);throw new G9.UsageError(`Couldn't find a script named "${this.scriptName}".`)}}};EJe.paths=[["run"]];EJe.usage=G9.Command.Usage({description:"run a script defined in the package.json",details:` This command will run a tool. The exact tool that will be executed will depend on the current state of your workspace: - If the \`scripts\` field from your local package.json contains a matching script name, its definition will get executed. @@ -1361,31 +1361,31 @@ ${p} - Otherwise, if the specified name contains a colon character and if one of the workspaces in the project contains exactly one script with a matching name, then this script will get executed. Whatever happens, the cwd of the spawned process will be the workspace that declares the script (which makes it possible to call commands cross-workspaces using the third syntax). - `,examples:[["Run the tests from the local workspace","$0 run test"],['Same thing, but without the "run" keyword',"$0 test"],["Inspect Webpack while running","$0 run --inspect-brk webpack"]]});ITr.default=yJe});var AYi=z(hTr=>{"use strict";Object.defineProperty(hTr,"__esModule",{value:!0});var uYi=nl(),CTr=Bn(),gYi=Bn(),mTr=(Fl(),Ai(dg)),bJe=class extends uYi.BaseCommand{constructor(){super(...arguments),this.descriptor=mTr.Option.String(),this.resolution=mTr.Option.String()}async execute(){let t=await CTr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await CTr.Project.find(t,this.context.cwd),a=await CTr.Cache.find(t);if(await r.restoreInstallState({restoreResolutions:!1}),!s)throw new uYi.WorkspaceRequiredError(r.cwd,this.context.cwd);let o=gYi.structUtils.parseDescriptor(this.descriptor,!0),g=gYi.structUtils.makeDescriptor(o,this.resolution);return r.storedDescriptors.set(o.descriptorHash,o),r.storedDescriptors.set(g.descriptorHash,g),r.resolutionAliases.set(o.descriptorHash,g.descriptorHash),await r.installWithNewReport({stdout:this.context.stdout},{cache:a})}};bJe.paths=[["set","resolution"]];bJe.usage=mTr.Command.Usage({description:"enforce a package resolution",details:'\n This command updates the resolution table so that `descriptor` is resolved by `resolution`.\n\n Note that by default this command only affect the current resolution table - meaning that this "manual override" will disappear if you remove the lockfile, or if the package disappear from the table. If you wish to make the enforced resolution persist whatever happens, edit the `resolutions` field in your top-level manifest.\n\n Note that no attempt is made at validating that `resolution` is a valid resolution entry for `descriptor`.\n ',examples:[["Force all instances of lodash@npm:^1.2.3 to resolve to 1.5.0","$0 set resolution lodash@npm:^1.2.3 1.5.0"]]});hTr.default=bJe});var pYi=z(yTr=>{"use strict";Object.defineProperty(yTr,"__esModule",{value:!0});var Evc=(Ma(),Ai(Oa)),_Tr=nl(),Iae=Bn(),dYi=Ro(),EJe=(Fl(),Ai(dg)),Bvc=Evc.__importDefault(sk()),BJe=class extends _Tr.BaseCommand{constructor(){super(...arguments),this.all=EJe.Option.Boolean("-A,--all",!1,{description:"Unlink all workspaces belonging to the target project from the current one"}),this.leadingArguments=EJe.Option.Rest()}async execute(){let t=await Iae.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await Iae.Project.find(t,this.context.cwd),a=await Iae.Cache.find(t);if(!s)throw new _Tr.WorkspaceRequiredError(r.cwd,this.context.cwd);let o=r.topLevelWorkspace,g=new Set;if(this.leadingArguments.length===0&&this.all)for(let{pattern:p,reference:f}of o.manifest.resolutions)f.startsWith("portal:")&&g.add(p.descriptor.fullName);if(this.leadingArguments.length>0)for(let p of this.leadingArguments){let f=dYi.ppath.resolve(this.context.cwd,dYi.npath.toPortablePath(p));if(Iae.miscUtils.isPathLike(p)){let m=await Iae.Configuration.find(f,this.context.plugins,{useRc:!1,strict:!1}),{project:y,workspace:B}=await Iae.Project.find(m,f);if(!B)throw new _Tr.WorkspaceRequiredError(y.cwd,f);if(this.all){for(let v of y.workspaces)v.manifest.name&&g.add(Iae.structUtils.stringifyIdent(v.anchoredLocator));if(g.size===0)throw new EJe.UsageError("No workspace found to be unlinked in the target project")}else{if(!B.manifest.name)throw new EJe.UsageError("The target workspace doesn't have a name and thus cannot be unlinked");g.add(Iae.structUtils.stringifyIdent(B.anchoredLocator))}}else{let m=[...o.manifest.resolutions.map(({pattern:y})=>y.descriptor.fullName)];for(let y of(0,Bvc.default)(m,p))g.add(y)}}return o.manifest.resolutions=o.manifest.resolutions.filter(({pattern:p})=>!g.has(p.descriptor.fullName)),await r.installWithNewReport({stdout:this.context.stdout,quiet:this.context.quiet},{cache:a})}};BJe.paths=[["unlink"]];BJe.usage=EJe.Command.Usage({description:"disconnect the local project from another one",details:` + `,examples:[["Run the tests from the local workspace","$0 run test"],['Same thing, but without the "run" keyword',"$0 test"],["Inspect Webpack while running","$0 run --inspect-brk webpack"]]});bTr.default=EJe});var hMi=z(vTr=>{"use strict";Object.defineProperty(vTr,"__esModule",{value:!0});var CMi=il(),ETr=Bn(),mMi=Bn(),BTr=(Zl(),Ai(pg)),BJe=class extends CMi.BaseCommand{constructor(){super(...arguments),this.descriptor=BTr.Option.String(),this.resolution=BTr.Option.String()}async execute(){let t=await ETr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await ETr.Project.find(t,this.context.cwd),a=await ETr.Cache.find(t);if(await r.restoreInstallState({restoreResolutions:!1}),!s)throw new CMi.WorkspaceRequiredError(r.cwd,this.context.cwd);let o=mMi.structUtils.parseDescriptor(this.descriptor,!0),g=mMi.structUtils.makeDescriptor(o,this.resolution);return r.storedDescriptors.set(o.descriptorHash,o),r.storedDescriptors.set(g.descriptorHash,g),r.resolutionAliases.set(o.descriptorHash,g.descriptorHash),await r.installWithNewReport({stdout:this.context.stdout},{cache:a})}};BJe.paths=[["set","resolution"]];BJe.usage=BTr.Command.Usage({description:"enforce a package resolution",details:'\n This command updates the resolution table so that `descriptor` is resolved by `resolution`.\n\n Note that by default this command only affect the current resolution table - meaning that this "manual override" will disappear if you remove the lockfile, or if the package disappear from the table. If you wish to make the enforced resolution persist whatever happens, edit the `resolutions` field in your top-level manifest.\n\n Note that no attempt is made at validating that `resolution` is a valid resolution entry for `descriptor`.\n ',examples:[["Force all instances of lodash@npm:^1.2.3 to resolve to 1.5.0","$0 set resolution lodash@npm:^1.2.3 1.5.0"]]});vTr.default=BJe});var yMi=z(wTr=>{"use strict";Object.defineProperty(wTr,"__esModule",{value:!0});var Wvc=(Oa(),Ai(Pa)),STr=il(),vae=Bn(),_Mi=No(),vJe=(Zl(),Ai(pg)),Pvc=Wvc.__importDefault(gk()),SJe=class extends STr.BaseCommand{constructor(){super(...arguments),this.all=vJe.Option.Boolean("-A,--all",!1,{description:"Unlink all workspaces belonging to the target project from the current one"}),this.leadingArguments=vJe.Option.Rest()}async execute(){let t=await vae.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await vae.Project.find(t,this.context.cwd),a=await vae.Cache.find(t);if(!s)throw new STr.WorkspaceRequiredError(r.cwd,this.context.cwd);let o=r.topLevelWorkspace,g=new Set;if(this.leadingArguments.length===0&&this.all)for(let{pattern:p,reference:f}of o.manifest.resolutions)f.startsWith("portal:")&&g.add(p.descriptor.fullName);if(this.leadingArguments.length>0)for(let p of this.leadingArguments){let f=_Mi.ppath.resolve(this.context.cwd,_Mi.npath.toPortablePath(p));if(vae.miscUtils.isPathLike(p)){let m=await vae.Configuration.find(f,this.context.plugins,{useRc:!1,strict:!1}),{project:y,workspace:B}=await vae.Project.find(m,f);if(!B)throw new STr.WorkspaceRequiredError(y.cwd,f);if(this.all){for(let v of y.workspaces)v.manifest.name&&g.add(vae.structUtils.stringifyIdent(v.anchoredLocator));if(g.size===0)throw new vJe.UsageError("No workspace found to be unlinked in the target project")}else{if(!B.manifest.name)throw new vJe.UsageError("The target workspace doesn't have a name and thus cannot be unlinked");g.add(vae.structUtils.stringifyIdent(B.anchoredLocator))}}else{let m=[...o.manifest.resolutions.map(({pattern:y})=>y.descriptor.fullName)];for(let y of(0,Pvc.default)(m,p))g.add(y)}}return o.manifest.resolutions=o.manifest.resolutions.filter(({pattern:p})=>!g.has(p.descriptor.fullName)),await r.installWithNewReport({stdout:this.context.stdout,quiet:this.context.quiet},{cache:a})}};SJe.paths=[["unlink"]];SJe.usage=vJe.Command.Usage({description:"disconnect the local project from another one",details:` This command will remove any resolutions in the project-level manifest that would have been added via a yarn link with similar arguments. - `,examples:[["Unregister a remote workspace in the current project","$0 unlink ~/ts-loader"],["Unregister all workspaces from a remote project in the current project","$0 unlink ~/jest --all"],["Unregister all previously linked workspaces","$0 unlink --all"],["Unregister all workspaces matching a glob","$0 unlink '@babel/*' 'pkg-{a,b}'"]]});yTr.default=BJe});var IYi=z(STr=>{"use strict";Object.defineProperty(STr,"__esModule",{value:!0});var vTr=(Ma(),Ai(Oa)),bTr=nl(),f3=Bn(),ETr=Bn(),jM=Bn(),zM=(Fl(),Ai(dg)),vvc=F4e(),fYi=vTr.__importDefault(sk()),BTr=vTr.__importStar((_L(),Ai(hL))),PK=vTr.__importStar(W4e()),VNe=class extends bTr.BaseCommand{constructor(){super(...arguments),this.interactive=zM.Option.Boolean("-i,--interactive",{description:"Offer various choices, depending on the detected upgrade paths"}),this.fixed=zM.Option.Boolean("-F,--fixed",!1,{description:"Store dependency tags as-is instead of resolving them"}),this.exact=zM.Option.Boolean("-E,--exact",!1,{description:"Don't use any semver modifier on the resolved range"}),this.tilde=zM.Option.Boolean("-T,--tilde",!1,{description:"Use the `~` semver modifier on the resolved range"}),this.caret=zM.Option.Boolean("-C,--caret",!1,{description:"Use the `^` semver modifier on the resolved range"}),this.recursive=zM.Option.Boolean("-R,--recursive",!1,{description:"Resolve again ALL resolutions for those packages"}),this.mode=zM.Option.String("--mode",{description:"Change what artifacts installs generate",validator:BTr.isEnum(ETr.InstallMode)}),this.patterns=zM.Option.Rest()}async execute(){return this.recursive?await this.executeUpRecursive():await this.executeUpClassic()}async executeUpRecursive(){let t=await jM.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await ETr.Project.find(t,this.context.cwd),a=await jM.Cache.find(t);if(!s)throw new bTr.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=[...r.storedDescriptors.values()],g=o.map(m=>f3.structUtils.stringifyIdent(m)),p=new Set;for(let m of this.patterns){if(f3.structUtils.parseDescriptor(m).range!=="unknown")throw new zM.UsageError("Ranges aren't allowed when using --recursive");for(let y of(0,fYi.default)(g,m)){let B=f3.structUtils.parseIdent(y);p.add(B.identHash)}}let f=o.filter(m=>p.has(m.identHash));for(let m of f)r.storedDescriptors.delete(m.descriptorHash),r.storedResolutions.delete(m.descriptorHash);return await r.installWithNewReport({stdout:this.context.stdout},{cache:a,mode:this.mode})}async executeUpClassic(){let t=await jM.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await ETr.Project.find(t,this.context.cwd),a=await jM.Cache.find(t);if(!s)throw new bTr.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=this.fixed,g=t.isInteractive({interactive:this.interactive,stdout:this.context.stdout}),p=PK.getModifier(this,r),f=g?[PK.Strategy.KEEP,PK.Strategy.REUSE,PK.Strategy.PROJECT,PK.Strategy.LATEST]:[PK.Strategy.PROJECT,PK.Strategy.LATEST],m=[],y=[];for(let O of this.patterns){let X=!1,U=f3.structUtils.parseDescriptor(O),le=f3.structUtils.stringifyIdent(U);for(let ae of r.workspaces)for(let ge of[PK.Target.REGULAR,PK.Target.DEVELOPMENT]){let pe=[...ae.manifest.getForScope(ge).values()].map(be=>f3.structUtils.stringifyIdent(be)),he=le==="*"?pe:(0,fYi.default)(pe,le);for(let be of he){let Te=f3.structUtils.parseIdent(be),ke=ae.manifest[ge].get(Te.identHash);if(typeof ke>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");let x=f3.structUtils.makeDescriptor(Te,U.range);m.push(Promise.resolve().then(async()=>[ae,ge,ke,await PK.getSuggestedDescriptors(x,{project:r,workspace:ae,cache:a,target:ge,fixed:o,modifier:p,strategies:f})])),X=!0}}X||y.push(O)}if(y.length>1)throw new zM.UsageError(`Patterns ${jM.formatUtils.prettyList(t,y,jM.formatUtils.Type.CODE)} don't match any packages referenced by any workspace`);if(y.length>0)throw new zM.UsageError(`Pattern ${jM.formatUtils.prettyList(t,y,jM.formatUtils.Type.CODE)} doesn't match any packages referenced by any workspace`);let B=await Promise.all(m),v=await jM.LightReport.start({configuration:t,stdout:this.context.stdout,suggestInstall:!1},async O=>{for(let[,,X,{suggestions:U,rejections:le}]of B){let ae=U.filter(ge=>ge.descriptor!==null);if(ae.length===0){let[ge]=le;if(typeof ge>"u")throw new Error("Assertion failed: Expected an error to have been set");let fe=this.cli.error(ge);r.configuration.get("enableNetwork")?O.reportError(jM.MessageName.CANT_SUGGEST_RESOLUTIONS,`${f3.structUtils.prettyDescriptor(t,X)} can't be resolved to a satisfying range + `,examples:[["Unregister a remote workspace in the current project","$0 unlink ~/ts-loader"],["Unregister all workspaces from a remote project in the current project","$0 unlink ~/jest --all"],["Unregister all previously linked workspaces","$0 unlink --all"],["Unregister all workspaces matching a glob","$0 unlink '@babel/*' 'pkg-{a,b}'"]]});wTr.default=SJe});var EMi=z(xTr=>{"use strict";Object.defineProperty(xTr,"__esModule",{value:!0});var DTr=(Oa(),Ai(Pa)),TTr=il(),m3=Bn(),NTr=Bn(),qQ=Bn(),$Q=(Zl(),Ai(pg)),Ovc=L4e(),bMi=DTr.__importDefault(gk()),RTr=DTr.__importStar((yL(),Ai(_L))),XK=DTr.__importStar(O4e()),PNe=class extends TTr.BaseCommand{constructor(){super(...arguments),this.interactive=$Q.Option.Boolean("-i,--interactive",{description:"Offer various choices, depending on the detected upgrade paths"}),this.fixed=$Q.Option.Boolean("-F,--fixed",!1,{description:"Store dependency tags as-is instead of resolving them"}),this.exact=$Q.Option.Boolean("-E,--exact",!1,{description:"Don't use any semver modifier on the resolved range"}),this.tilde=$Q.Option.Boolean("-T,--tilde",!1,{description:"Use the `~` semver modifier on the resolved range"}),this.caret=$Q.Option.Boolean("-C,--caret",!1,{description:"Use the `^` semver modifier on the resolved range"}),this.recursive=$Q.Option.Boolean("-R,--recursive",!1,{description:"Resolve again ALL resolutions for those packages"}),this.mode=$Q.Option.String("--mode",{description:"Change what artifacts installs generate",validator:RTr.isEnum(NTr.InstallMode)}),this.patterns=$Q.Option.Rest()}async execute(){return this.recursive?await this.executeUpRecursive():await this.executeUpClassic()}async executeUpRecursive(){let t=await qQ.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await NTr.Project.find(t,this.context.cwd),a=await qQ.Cache.find(t);if(!s)throw new TTr.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=[...r.storedDescriptors.values()],g=o.map(m=>m3.structUtils.stringifyIdent(m)),p=new Set;for(let m of this.patterns){if(m3.structUtils.parseDescriptor(m).range!=="unknown")throw new $Q.UsageError("Ranges aren't allowed when using --recursive");for(let y of(0,bMi.default)(g,m)){let B=m3.structUtils.parseIdent(y);p.add(B.identHash)}}let f=o.filter(m=>p.has(m.identHash));for(let m of f)r.storedDescriptors.delete(m.descriptorHash),r.storedResolutions.delete(m.descriptorHash);return await r.installWithNewReport({stdout:this.context.stdout},{cache:a,mode:this.mode})}async executeUpClassic(){let t=await qQ.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await NTr.Project.find(t,this.context.cwd),a=await qQ.Cache.find(t);if(!s)throw new TTr.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=this.fixed,g=t.isInteractive({interactive:this.interactive,stdout:this.context.stdout}),p=XK.getModifier(this,r),f=g?[XK.Strategy.KEEP,XK.Strategy.REUSE,XK.Strategy.PROJECT,XK.Strategy.LATEST]:[XK.Strategy.PROJECT,XK.Strategy.LATEST],m=[],y=[];for(let O of this.patterns){let X=!1,U=m3.structUtils.parseDescriptor(O),le=m3.structUtils.stringifyIdent(U);for(let ae of r.workspaces)for(let ge of[XK.Target.REGULAR,XK.Target.DEVELOPMENT]){let pe=[...ae.manifest.getForScope(ge).values()].map(be=>m3.structUtils.stringifyIdent(be)),he=le==="*"?pe:(0,bMi.default)(pe,le);for(let be of he){let Te=m3.structUtils.parseIdent(be),ke=ae.manifest[ge].get(Te.identHash);if(typeof ke>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");let x=m3.structUtils.makeDescriptor(Te,U.range);m.push(Promise.resolve().then(async()=>[ae,ge,ke,await XK.getSuggestedDescriptors(x,{project:r,workspace:ae,cache:a,target:ge,fixed:o,modifier:p,strategies:f})])),X=!0}}X||y.push(O)}if(y.length>1)throw new $Q.UsageError(`Patterns ${qQ.formatUtils.prettyList(t,y,qQ.formatUtils.Type.CODE)} don't match any packages referenced by any workspace`);if(y.length>0)throw new $Q.UsageError(`Pattern ${qQ.formatUtils.prettyList(t,y,qQ.formatUtils.Type.CODE)} doesn't match any packages referenced by any workspace`);let B=await Promise.all(m),v=await qQ.LightReport.start({configuration:t,stdout:this.context.stdout,suggestInstall:!1},async O=>{for(let[,,X,{suggestions:U,rejections:le}]of B){let ae=U.filter(ge=>ge.descriptor!==null);if(ae.length===0){let[ge]=le;if(typeof ge>"u")throw new Error("Assertion failed: Expected an error to have been set");let fe=this.cli.error(ge);r.configuration.get("enableNetwork")?O.reportError(qQ.MessageName.CANT_SUGGEST_RESOLUTIONS,`${m3.structUtils.prettyDescriptor(t,X)} can't be resolved to a satisfying range -${fe}`):O.reportError(jM.MessageName.CANT_SUGGEST_RESOLUTIONS,`${f3.structUtils.prettyDescriptor(t,X)} can't be resolved to a satisfying range (note: network resolution has been disabled) +${fe}`):O.reportError(qQ.MessageName.CANT_SUGGEST_RESOLUTIONS,`${m3.structUtils.prettyDescriptor(t,X)} can't be resolved to a satisfying range (note: network resolution has been disabled) -${fe}`)}else ae.length>1&&!g&&O.reportError(jM.MessageName.CANT_SUGGEST_RESOLUTIONS,`${f3.structUtils.prettyDescriptor(t,X)} has multiple possible upgrade strategies; use -i to disambiguate manually`)}});if(v.hasErrors())return v.exitCode();let G=!1,T=[];for(let[O,X,,{suggestions:U}]of B){let le,ae=U.filter(he=>he.descriptor!==null),ge=ae[0].descriptor,fe=ae.every(he=>f3.structUtils.areDescriptorsEqual(he.descriptor,ge));ae.length===1||fe?le=ge:(G=!0,{answer:le}=await(0,vvc.prompt)({type:"select",name:"answer",message:`Which range do you want to use in ${f3.structUtils.prettyWorkspace(t,O)} \u276F ${X}?`,choices:U.map(({descriptor:he,name:be,reason:Te})=>he?{name:be,hint:Te,descriptor:he}:{name:be,hint:Te,disabled:!0}),onCancel:()=>process.exit(130),result(he){return this.find(he,"descriptor")},stdin:this.context.stdin,stdout:this.context.stdout}));let pe=O.manifest[X].get(le.identHash);if(typeof pe>"u")throw new Error("Assertion failed: This descriptor should have a matching entry");if(pe.descriptorHash!==le.descriptorHash)O.manifest[X].set(le.identHash,le),T.push([O,X,pe,le]);else{let he=t.makeResolver(),be={project:r,resolver:he},Te=t.normalizeDependency(pe),ke=he.bindDescriptor(Te,O.anchoredLocator,be);r.forgetResolution(ke)}}return await t.triggerMultipleHooks(O=>O.afterWorkspaceDependencyReplacement,T),G&&this.context.stdout.write(` -`),await r.installWithNewReport({stdout:this.context.stdout},{cache:a,mode:this.mode})}};VNe.paths=[["up"]];VNe.usage=zM.Command.Usage({description:"upgrade dependencies across the project",details:"\n This command upgrades the packages matching the list of specified patterns to their latest available version across the whole project (regardless of whether they're part of `dependencies` or `devDependencies` - `peerDependencies` won't be affected). This is a project-wide command: all workspaces will be upgraded in the process.\n\n If `-R,--recursive` is set the command will change behavior and no other switch will be allowed. When operating under this mode `yarn up` will force all ranges matching the selected packages to be resolved again (often to the highest available versions) before being stored in the lockfile. It however won't touch your manifests anymore, so depending on your needs you might want to run both `yarn up` and `yarn up -R` to cover all bases.\n\n If `-i,--interactive` is set (or if the `preferInteractive` settings is toggled on) the command will offer various choices, depending on the detected upgrade paths. Some upgrades require this flag in order to resolve ambiguities.\n\n The, `-C,--caret`, `-E,--exact` and `-T,--tilde` options have the same meaning as in the `add` command (they change the modifier used when the range is missing or a tag, and are ignored when the range is explicitly set).\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n Generally you can see `yarn up` as a counterpart to what was `yarn upgrade --latest` in Yarn 1 (ie it ignores the ranges previously listed in your manifests), but unlike `yarn upgrade` which only upgraded dependencies in the current workspace, `yarn up` will upgrade all workspaces at the same time.\n\n This command accepts glob patterns as arguments (if valid Descriptors and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them.\n\n **Note:** The ranges have to be static, only the package scopes and names can contain glob patterns.\n ",examples:[["Upgrade all instances of lodash to the latest release","$0 up lodash"],["Upgrade all instances of lodash to the latest release, but ask confirmation for each","$0 up lodash -i"],["Upgrade all instances of lodash to 1.2.3","$0 up lodash@1.2.3"],["Upgrade all instances of packages with the `@babel` scope to the latest release","$0 up '@babel/*'"],["Upgrade all instances of packages containing the word `jest` to the latest release","$0 up '*jest*'"],["Upgrade all instances of packages with the `@babel` scope to 7.0.0","$0 up '@babel/*@7.0.0'"]]});VNe.schema=[BTr.hasKeyRelationship("recursive",BTr.KeyRelationship.Forbids,["interactive","exact","tilde","caret"],{ignore:[void 0,!1]})];STr.default=VNe});var mYi=z(wTr=>{"use strict";Object.defineProperty(wTr,"__esModule",{value:!0});var CYi=nl(),fCe=Bn(),Svc=Bn(),Xq=Bn(),vJe=(Fl(),Ai(dg)),SJe=class extends CYi.BaseCommand{constructor(){super(...arguments),this.recursive=vJe.Option.Boolean("-R,--recursive",!1,{description:"List, for each workspace, what are all the paths that lead to the dependency"}),this.json=vJe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.peers=vJe.Option.Boolean("--peers",!1,{description:"Also print the peer dependencies that match the specified name"}),this.package=vJe.Option.String()}async execute(){let t=await fCe.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await Svc.Project.find(t,this.context.cwd);if(!s)throw new CYi.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=Xq.structUtils.parseIdent(this.package).identHash,o=this.recursive?Tvc(r,a,{configuration:t,peers:this.peers}):wvc(r,a,{configuration:t,peers:this.peers});Xq.treeUtils.emitTree(o,{configuration:t,stdout:this.context.stdout,json:this.json,separators:1})}};SJe.paths=[["why"]];SJe.usage=vJe.Command.Usage({description:"display the reason why a package is needed",details:` +${fe}`)}else ae.length>1&&!g&&O.reportError(qQ.MessageName.CANT_SUGGEST_RESOLUTIONS,`${m3.structUtils.prettyDescriptor(t,X)} has multiple possible upgrade strategies; use -i to disambiguate manually`)}});if(v.hasErrors())return v.exitCode();let k=!1,T=[];for(let[O,X,,{suggestions:U}]of B){let le,ae=U.filter(he=>he.descriptor!==null),ge=ae[0].descriptor,fe=ae.every(he=>m3.structUtils.areDescriptorsEqual(he.descriptor,ge));ae.length===1||fe?le=ge:(k=!0,{answer:le}=await(0,Ovc.prompt)({type:"select",name:"answer",message:`Which range do you want to use in ${m3.structUtils.prettyWorkspace(t,O)} \u276F ${X}?`,choices:U.map(({descriptor:he,name:be,reason:Te})=>he?{name:be,hint:Te,descriptor:he}:{name:be,hint:Te,disabled:!0}),onCancel:()=>process.exit(130),result(he){return this.find(he,"descriptor")},stdin:this.context.stdin,stdout:this.context.stdout}));let pe=O.manifest[X].get(le.identHash);if(typeof pe>"u")throw new Error("Assertion failed: This descriptor should have a matching entry");if(pe.descriptorHash!==le.descriptorHash)O.manifest[X].set(le.identHash,le),T.push([O,X,pe,le]);else{let he=t.makeResolver(),be={project:r,resolver:he},Te=t.normalizeDependency(pe),ke=he.bindDescriptor(Te,O.anchoredLocator,be);r.forgetResolution(ke)}}return await t.triggerMultipleHooks(O=>O.afterWorkspaceDependencyReplacement,T),k&&this.context.stdout.write(` +`),await r.installWithNewReport({stdout:this.context.stdout},{cache:a,mode:this.mode})}};PNe.paths=[["up"]];PNe.usage=$Q.Command.Usage({description:"upgrade dependencies across the project",details:"\n This command upgrades the packages matching the list of specified patterns to their latest available version across the whole project (regardless of whether they're part of `dependencies` or `devDependencies` - `peerDependencies` won't be affected). This is a project-wide command: all workspaces will be upgraded in the process.\n\n If `-R,--recursive` is set the command will change behavior and no other switch will be allowed. When operating under this mode `yarn up` will force all ranges matching the selected packages to be resolved again (often to the highest available versions) before being stored in the lockfile. It however won't touch your manifests anymore, so depending on your needs you might want to run both `yarn up` and `yarn up -R` to cover all bases.\n\n If `-i,--interactive` is set (or if the `preferInteractive` settings is toggled on) the command will offer various choices, depending on the detected upgrade paths. Some upgrades require this flag in order to resolve ambiguities.\n\n The, `-C,--caret`, `-E,--exact` and `-T,--tilde` options have the same meaning as in the `add` command (they change the modifier used when the range is missing or a tag, and are ignored when the range is explicitly set).\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the latter will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n Generally you can see `yarn up` as a counterpart to what was `yarn upgrade --latest` in Yarn 1 (ie it ignores the ranges previously listed in your manifests), but unlike `yarn upgrade` which only upgraded dependencies in the current workspace, `yarn up` will upgrade all workspaces at the same time.\n\n This command accepts glob patterns as arguments (if valid Descriptors and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them.\n\n **Note:** The ranges have to be static, only the package scopes and names can contain glob patterns.\n ",examples:[["Upgrade all instances of lodash to the latest release","$0 up lodash"],["Upgrade all instances of lodash to the latest release, but ask confirmation for each","$0 up lodash -i"],["Upgrade all instances of lodash to 1.2.3","$0 up lodash@1.2.3"],["Upgrade all instances of packages with the `@babel` scope to the latest release","$0 up '@babel/*'"],["Upgrade all instances of packages containing the word `jest` to the latest release","$0 up '*jest*'"],["Upgrade all instances of packages with the `@babel` scope to 7.0.0","$0 up '@babel/*@7.0.0'"]]});PNe.schema=[RTr.hasKeyRelationship("recursive",RTr.KeyRelationship.Forbids,["interactive","exact","tilde","caret"],{ignore:[void 0,!1]})];xTr.default=PNe});var vMi=z(kTr=>{"use strict";Object.defineProperty(kTr,"__esModule",{value:!0});var BMi=il(),CCe=Bn(),Qvc=Bn(),Uq=Bn(),wJe=(Zl(),Ai(pg)),TJe=class extends BMi.BaseCommand{constructor(){super(...arguments),this.recursive=wJe.Option.Boolean("-R,--recursive",!1,{description:"List, for each workspace, what are all the paths that lead to the dependency"}),this.json=wJe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.peers=wJe.Option.Boolean("--peers",!1,{description:"Also print the peer dependencies that match the specified name"}),this.package=wJe.Option.String()}async execute(){let t=await CCe.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await Qvc.Project.find(t,this.context.cwd);if(!s)throw new BMi.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=Uq.structUtils.parseIdent(this.package).identHash,o=this.recursive?Hvc(r,a,{configuration:t,peers:this.peers}):Mvc(r,a,{configuration:t,peers:this.peers});Uq.treeUtils.emitTree(o,{configuration:t,stdout:this.context.stdout,json:this.json,separators:1})}};TJe.paths=[["why"]];TJe.usage=wJe.Command.Usage({description:"display the reason why a package is needed",details:` This command prints the exact reasons why a package appears in the dependency tree. If \`-R,--recursive\` is set, the listing will go in depth and will list, for each workspaces, what are all the paths that lead to the dependency. Note that the display is somewhat optimized in that it will not print the package listing twice for a single package, so if you see a leaf named "Foo" when looking for "Bar", it means that "Foo" already got printed higher in the tree. - `,examples:[["Explain why lodash is used in your project","$0 why lodash"]]});wTr.default=SJe;function wvc(e,t,{configuration:r,peers:s}){let a=Xq.miscUtils.sortMap(e.storedPackages.values(),p=>Xq.structUtils.stringifyLocator(p)),o={},g={children:o};for(let p of a){let f={};for(let y of p.dependencies.values()){if(!s&&p.peerDependencies.has(y.identHash))continue;let B=e.storedResolutions.get(y.descriptorHash);if(!B)throw new Error("Assertion failed: The resolution should have been registered");let v=e.storedPackages.get(B);if(!v)throw new Error("Assertion failed: The package should have been registered");if(v.identHash!==t)continue;{let T=Xq.structUtils.stringifyLocator(p);o[T]={value:[p,fCe.formatUtils.Type.LOCATOR],children:f}}let G=Xq.structUtils.stringifyLocator(v);f[G]={value:[{descriptor:y,locator:v},fCe.formatUtils.Type.DEPENDENT]}}}return g}function Tvc(e,t,{configuration:r,peers:s}){let a=Xq.miscUtils.sortMap(e.workspaces,v=>Xq.structUtils.stringifyLocator(v.anchoredLocator)),o=new Set,g=new Set,p=v=>{if(o.has(v.locatorHash))return g.has(v.locatorHash);if(o.add(v.locatorHash),v.identHash===t)return g.add(v.locatorHash),!0;let G=!1;v.identHash===t&&(G=!0);for(let T of v.dependencies.values()){if(!s&&v.peerDependencies.has(T.identHash))continue;let O=e.storedResolutions.get(T.descriptorHash);if(!O)throw new Error("Assertion failed: The resolution should have been registered");let X=e.storedPackages.get(O);if(!X)throw new Error("Assertion failed: The package should have been registered");p(X)&&(G=!0)}return G&&g.add(v.locatorHash),G};for(let v of a)p(v.anchoredPackage);let f=new Set,m={},y={children:m},B=(v,G,T)=>{if(!g.has(v.locatorHash))return;let O=T!==null?fCe.formatUtils.tuple(fCe.formatUtils.Type.DEPENDENT,{locator:v,descriptor:T}):fCe.formatUtils.tuple(fCe.formatUtils.Type.LOCATOR,v),X={},U={value:O,children:X},le=Xq.structUtils.stringifyLocator(v);if(G[le]=U,!(T!==null&&e.tryWorkspaceByLocator(v))&&!f.has(v.locatorHash)){f.add(v.locatorHash);for(let ae of v.dependencies.values()){if(!s&&v.peerDependencies.has(ae.identHash))continue;let ge=e.storedResolutions.get(ae.descriptorHash);if(!ge)throw new Error("Assertion failed: The resolution should have been registered");let fe=e.storedPackages.get(ge);if(!fe)throw new Error("Assertion failed: The package should have been registered");B(fe,X,ae)}}};for(let v of a)B(v.anchoredPackage,m,null);return y}});var TTr=z((h5l,hYi)=>{"use strict";hYi.exports=function(t,r){r===!0&&(r=0);var s="";if(typeof t=="string")try{s=new URL(t).protocol}catch{}else t&&t.constructor===URL&&(s=t.protocol);var a=s.split(/\:|\+/).filter(Boolean);return typeof r=="number"?a[r]:a}});var yYi=z((_5l,_Yi)=>{"use strict";var Nvc=TTr();function Rvc(e){var t={protocols:[],protocol:null,port:null,resource:"",host:"",user:"",password:"",pathname:"",hash:"",search:"",href:e,query:{},parse_failed:!1};try{var r=new URL(e);t.protocols=Nvc(r),t.protocol=t.protocols[0],t.port=r.port,t.resource=r.hostname,t.host=r.host,t.user=r.username||"",t.password=r.password||"",t.pathname=r.pathname,t.hash=r.hash.slice(1),t.search=r.search.slice(1),t.href=r.href,t.query=Object.fromEntries(r.searchParams)}catch{t.protocols=["file"],t.protocol=t.protocols[0],t.port="",t.resource="",t.user="",t.pathname="",t.hash="",t.search="",t.href=e,t.query={},t.parse_failed=!0}return t}_Yi.exports=Rvc});var BYi=z((y5l,EYi)=>{"use strict";var Dvc=yYi();function xvc(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var kvc=xvc(Dvc),Gvc="text/plain",Fvc="us-ascii",bYi=(e,t)=>t.some(r=>r instanceof RegExp?r.test(e):r===e),Zvc=(e,{stripHash:t})=>{let r=/^data:(?[^,]*?),(?[^#]*?)(?:#(?.*))?$/.exec(e);if(!r)throw new Error(`Invalid URL: ${e}`);let{type:s,data:a,hash:o}=r.groups,g=s.split(";");o=t?"":o;let p=!1;g[g.length-1]==="base64"&&(g.pop(),p=!0);let f=(g.shift()||"").toLowerCase(),y=[...g.map(B=>{let[v,G=""]=B.split("=").map(T=>T.trim());return v==="charset"&&(G=G.toLowerCase(),G===Fvc)?"":`${v}${G?`=${G}`:""}`}).filter(Boolean)];return p&&y.push("base64"),(y.length>0||f&&f!==Gvc)&&y.unshift(f),`data:${y.join(";")},${p?a.trim():a}${o?`#${o}`:""}`};function Lvc(e,t){if(t={defaultProtocol:"http:",normalizeProtocol:!0,forceHttp:!1,forceHttps:!1,stripAuthentication:!0,stripHash:!1,stripTextFragment:!0,stripWWW:!0,removeQueryParameters:[/^utm_\w+/i],removeTrailingSlash:!0,removeSingleSlash:!0,removeDirectoryIndex:!1,sortQueryParameters:!0,...t},e=e.trim(),/^data:/i.test(e))return Zvc(e,t);if(/^view-source:/i.test(e))throw new Error("`view-source:` is not supported as it is a non-standard protocol");let r=e.startsWith("//");!r&&/^\.*\//.test(e)||(e=e.replace(/^(?!(?:\w+:)?\/\/)|^\/\//,t.defaultProtocol));let a=new URL(e);if(t.forceHttp&&t.forceHttps)throw new Error("The `forceHttp` and `forceHttps` options cannot be used together");if(t.forceHttp&&a.protocol==="https:"&&(a.protocol="http:"),t.forceHttps&&a.protocol==="http:"&&(a.protocol="https:"),t.stripAuthentication&&(a.username="",a.password=""),t.stripHash?a.hash="":t.stripTextFragment&&(a.hash=a.hash.replace(/#?:~:text.*?$/i,"")),a.pathname){let g=/\b[a-z][a-z\d+\-.]{1,50}:\/\//g,p=0,f="";for(;;){let y=g.exec(a.pathname);if(!y)break;let B=y[0],v=y.index,G=a.pathname.slice(p,v);f+=G.replace(/\/{2,}/g,"/"),f+=B,p=v+B.length}let m=a.pathname.slice(p,a.pathname.length);f+=m.replace(/\/{2,}/g,"/"),a.pathname=f}if(a.pathname)try{a.pathname=decodeURI(a.pathname)}catch{}if(t.removeDirectoryIndex===!0&&(t.removeDirectoryIndex=[/^index\.[a-z]+$/]),Array.isArray(t.removeDirectoryIndex)&&t.removeDirectoryIndex.length>0){let g=a.pathname.split("/"),p=g[g.length-1];bYi(p,t.removeDirectoryIndex)&&(g=g.slice(0,-1),a.pathname=g.slice(1).join("/")+"/")}if(a.hostname&&(a.hostname=a.hostname.replace(/\.$/,""),t.stripWWW&&/^www\.(?!www\.)[a-z\-\d]{1,63}\.[a-z.\-\d]{2,63}$/.test(a.hostname)&&(a.hostname=a.hostname.replace(/^www\./,""))),Array.isArray(t.removeQueryParameters))for(let g of[...a.searchParams.keys()])bYi(g,t.removeQueryParameters)&&a.searchParams.delete(g);if(t.removeQueryParameters===!0&&(a.search=""),t.sortQueryParameters){a.searchParams.sort();try{a.search=decodeURIComponent(a.search)}catch{}}t.removeTrailingSlash&&(a.pathname=a.pathname.replace(/\/$/,""));let o=e;return e=a.toString(),!t.removeSingleSlash&&a.pathname==="/"&&!o.endsWith("/")&&a.hash===""&&(e=e.replace(/\/$/,"")),(t.removeTrailingSlash||a.pathname==="/")&&a.hash===""&&t.removeSingleSlash&&(e=e.replace(/\/$/,"")),r&&!t.normalizeProtocol&&(e=e.replace(/^http:\/\//,"//")),t.stripProtocol&&(e=e.replace(/^(?:https?:)?\/\//,"")),e}var NTr=(e,t=!1)=>{let r=/^(?:([a-z_][a-z0-9_-]{0,31})@|https?:\/\/)([\w\.\-@]+)[\/:]([\~,\.\w,\-,\_,\/]+?(?:\.git|\/)?)$/,s=o=>{let g=new Error(o);throw g.subject_url=e,g};(typeof e!="string"||!e.trim())&&s("Invalid url."),e.length>NTr.MAX_INPUT_LENGTH&&s("Input exceeds maximum length. If needed, change the value of parseUrl.MAX_INPUT_LENGTH."),t&&(typeof t!="object"&&(t={stripHash:!1}),e=Lvc(e,t));let a=kvc.default(e);if(a.parse_failed){let o=a.href.match(r);o?(a.protocols=["ssh"],a.protocol="ssh",a.resource=o[2],a.host=o[2],a.user=o[1],a.pathname=`/${o[3]}`,a.parse_failed=!1):s("URL parsing failed.")}return a};NTr.MAX_INPUT_LENGTH=2048;EYi.exports=NTr});var wYi=z((b5l,SYi)=>{"use strict";var Vvc=TTr();function vYi(e){if(Array.isArray(e))return e.indexOf("ssh")!==-1||e.indexOf("rsync")!==-1;if(typeof e!="string")return!1;var t=Vvc(e);if(e=e.substring(e.indexOf("://")+3),vYi(t))return!0;var r=new RegExp(".([a-zA-Z\\d]+):(\\d+)/");return!e.match(r)&&e.indexOf("@"){"use strict";var Wvc=BYi(),TYi=wYi();function Pvc(e){var t=Wvc(e);return t.token="",t.password==="x-oauth-basic"?t.token=t.user:t.user==="x-token-auth"&&(t.token=t.password),TYi(t.protocols)||t.protocols.length===0&&TYi(e)?t.protocol="ssh":t.protocols.length?t.protocol=t.protocols[0]:(t.protocol="file",t.protocols=["file"]),t.href=t.href.replace(/\/$/,""),t}NYi.exports=Pvc});var xYi=z((B5l,DYi)=>{"use strict";var Ovc=RYi();function RTr(e){if(typeof e!="string")throw new Error("The url must be a string.");var t=/^([a-z\d-]{1,39})\/([-\.\w]{1,100})$/i;t.test(e)&&(e="https://github.com/"+e);var r=Ovc(e),s=r.resource.split("."),a=null;switch(r.toString=function(X){return RTr.stringify(this,X)},r.source=s.length>2?s.slice(1-s.length).join("."):r.source=r.resource,r.git_suffix=/\.git$/.test(r.pathname),r.name=decodeURIComponent((r.pathname||r.href).replace(/(^\/)|(\/$)/g,"").replace(/\.git$/,"")),r.owner=decodeURIComponent(r.user),r.source){case"git.cloudforge.com":r.owner=r.user,r.organization=s[0],r.source="cloudforge.com";break;case"visualstudio.com":if(r.resource==="vs-ssh.visualstudio.com"){a=r.name.split("/"),a.length===4&&(r.organization=a[1],r.owner=a[2],r.name=a[3],r.full_name=a[2]+"/"+a[3]);break}else{a=r.name.split("/"),a.length===2?(r.owner=a[1],r.name=a[1],r.full_name="_git/"+r.name):a.length===3?(r.name=a[2],a[0]==="DefaultCollection"?(r.owner=a[2],r.organization=a[0],r.full_name=r.organization+"/_git/"+r.name):(r.owner=a[0],r.full_name=r.owner+"/_git/"+r.name)):a.length===4&&(r.organization=a[0],r.owner=a[1],r.name=a[3],r.full_name=r.organization+"/"+r.owner+"/_git/"+r.name);break}case"dev.azure.com":case"azure.com":if(r.resource==="ssh.dev.azure.com"){a=r.name.split("/"),a.length===4&&(r.organization=a[1],r.owner=a[2],r.name=a[3]);break}else{a=r.name.split("/"),a.length===5?(r.organization=a[0],r.owner=a[1],r.name=a[4],r.full_name="_git/"+r.name):a.length===3?(r.name=a[2],a[0]==="DefaultCollection"?(r.owner=a[2],r.organization=a[0],r.full_name=r.organization+"/_git/"+r.name):(r.owner=a[0],r.full_name=r.owner+"/_git/"+r.name)):a.length===4&&(r.organization=a[0],r.owner=a[1],r.name=a[3],r.full_name=r.organization+"/"+r.owner+"/_git/"+r.name),r.query&&r.query.path&&(r.filepath=r.query.path.replace(/^\/+/g,"")),r.query&&r.query.version&&(r.ref=r.query.version.replace(/^GB/,""));break}default:a=r.name.split("/");var o=a.length-1;if(a.length>=2){var g=a.indexOf("-",2),p=a.indexOf("blob",2),f=a.indexOf("tree",2),m=a.indexOf("commit",2),y=a.indexOf("src",2),B=a.indexOf("raw",2),v=a.indexOf("edit",2);o=g>0?g-1:p>0?p-1:f>0?f-1:m>0?m-1:y>0?y-1:B>0?B-1:v>0?v-1:o,r.owner=a.slice(0,o).join("/"),r.name=a[o],m&&(r.commit=a[o+2])}r.ref="",r.filepathtype="",r.filepath="";var G=a.length>o&&a[o+1]==="-"?o+1:o;a.length>G+2&&["raw","src","blob","tree","edit"].indexOf(a[G+1])>=0&&(r.filepathtype=a[G+1],r.ref=a[G+2],a.length>G+3&&(r.filepath=a.slice(G+3).join("/"))),r.organization=r.owner;break}r.full_name||(r.full_name=r.owner,r.name&&(r.full_name&&(r.full_name+="/"),r.full_name+=r.name)),r.owner.startsWith("scm/")&&(r.source="bitbucket-server",r.owner=r.owner.replace("scm/",""),r.organization=r.owner,r.full_name=r.owner+"/"+r.name);var T=/(projects|users)\/(.*?)\/repos\/(.*?)((\/.*$)|$)/,O=T.exec(r.pathname);return O!=null&&(r.source="bitbucket-server",O[1]==="users"?r.owner="~"+O[2]:r.owner=O[2],r.organization=r.owner,r.name=O[3],a=O[4].split("/"),a.length>1&&(["raw","browse"].indexOf(a[1])>=0?(r.filepathtype=a[1],a.length>2&&(r.filepath=a.slice(2).join("/"))):a[1]==="commits"&&a.length>2&&(r.commit=a[2])),r.full_name=r.owner+"/"+r.name,r.query.at?r.ref=r.query.at:r.ref=""),r}RTr.stringify=function(e,t){t=t||(e.protocols&&e.protocols.length?e.protocols.join("+"):e.protocol);var r=e.port?":"+e.port:"",s=e.user||"git",a=e.git_suffix?".git":"";switch(t){case"ssh":return r?"ssh://"+s+"@"+e.resource+r+"/"+e.full_name+a:s+"@"+e.resource+":"+e.full_name+a;case"git+ssh":case"ssh+git":case"ftp":case"ftps":return t+"://"+s+"@"+e.resource+r+"/"+e.full_name+a;case"http":case"https":var o=e.token?Mvc(e):e.user&&(e.protocols.includes("http")||e.protocols.includes("https"))?e.user+"@":"";return t+"://"+o+e.resource+r+"/"+Qvc(e)+a;default:return e.href}};function Mvc(e){switch(e.source){case"bitbucket.org":return"x-token-auth:"+e.token+"@";default:return e.token+"@"}}function Qvc(e){switch(e.source){case"bitbucket-server":return"scm/"+e.full_name;default:return""+e.full_name}}DYi.exports=RTr});var GYi=z(xTr=>{"use strict";Object.defineProperty(xTr,"__esModule",{value:!0});xTr.tryParseGitURL=Hvc;function DTr(e,t,r){let s=e.indexOf(r);return e.lastIndexOf(t,s>-1?s:1/0)}function kYi(e){try{return new URL(e)}catch{return}}function Yvc(e){let t=DTr(e,"@","#"),r=DTr(e,":","#");return r>t&&(e=`${e.slice(0,r)}/${e.slice(r+1)}`),DTr(e,":","#")===-1&&e.indexOf("//")===-1&&(e=`ssh://${e}`),e}function Hvc(e){return kYi(e)||kYi(Yvc(e))}});var FYi=z(kTr=>{"use strict";Object.defineProperty(kTr,"__esModule",{value:!0});kTr.normalizeRepoUrl=Jvc;var Xvc=GYi();function Jvc(e,{git:t=!1}={}){if(e=e.replace(/^git\+https:/,"https:"),e=e.replace(/^(?:github:|https:\/\/github\.com\/|git:\/\/github\.com\/)?(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)(?:\.git)?(#.*)?$/,"https://github.com/$1/$2.git$3"),e=e.replace(/^https:\/\/github\.com\/(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)\/tarball\/(.+)?$/,"https://github.com/$1/$2.git#$3"),t){let r=(0,Xvc.tryParseGitURL)(e);r&&(e=r.href),e=e.replace(/^git\+([^:]+):/,"$1:")}return e}});var nwt=z(ux=>{"use strict";Object.defineProperty(ux,"__esModule",{value:!0});ux.TreeishProtocols=ux.normalizeRepoUrl=void 0;ux.isGitUrl=zvc;ux.splitRepoUrl=FTr;ux.normalizeLocator=qvc;ux.validateRepoUrl=ZTr;ux.lsRemote=VYi;ux.resolveUrl=$vc;ux.clone=eSc;ux.fetchRoot=WYi;ux.fetchBase=PYi;ux.fetchChangedFiles=OYi;ux.fetchChangedWorkspaces=tSc;var rwt=(Ma(),Ai(Oa)),CE=Bn(),iZ=Ro(),twt=(Fl(),Ai(dg)),Uvc=rwt.__importDefault(xYi()),Kvc=rwt.__importDefault(sJt()),wJe=rwt.__importDefault(Dt("querystring")),ZYi=rwt.__importDefault(Lh()),TJe=FYi();Object.defineProperty(ux,"normalizeRepoUrl",{enumerable:!0,get:function(){return TJe.normalizeRepoUrl}});function LYi(){return{...process.env,GIT_SSH_COMMAND:process.env.GIT_SSH_COMMAND||`${process.env.GIT_SSH||"ssh"} -o BatchMode=yes`}}var jvc=[/^ssh:/,/^git(?:\+[^:]+)?:/,/^(?:git\+)?https?:[^#]+\/[^#]+(?:\.git)(?:#.*)?$/,/^git@[^#]+\/[^#]+\.git(?:#.*)?$/,/^(?:github:|https:\/\/github\.com\/)?(?!\.{1,2}\/)([a-zA-Z._0-9-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z._0-9-]+?)(?:\.git)?(?:#.*)?$/,/^https:\/\/github\.com\/(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)\/tarball\/(.+)?$/],I3;(function(e){e.Commit="commit",e.Head="head",e.Tag="tag",e.Semver="semver"})(I3||(ux.TreeishProtocols=I3={}));function zvc(e){return e?jvc.some(t=>!!e.match(t)):!1}function FTr(e){e=(0,TJe.normalizeRepoUrl)(e);let t=e.indexOf("#");if(t===-1)return{repo:e,treeish:{protocol:I3.Head,request:"HEAD"},extra:{}};let r=e.slice(0,t),s=e.slice(t+1);if(s.match(/^[a-z]+=/)){let a=wJe.default.parse(s);for(let[f,m]of Object.entries(a))if(typeof m!="string")throw new Error(`Assertion failed: The ${f} parameter must be a literal string`);let o=Object.values(I3).find(f=>Object.hasOwn(a,f)),[g,p]=typeof o<"u"?[o,a[o]]:[I3.Head,"HEAD"];for(let f of Object.values(I3))delete a[f];return{repo:r,treeish:{protocol:g,request:p},extra:a}}else{let a=s.indexOf(":"),[o,g]=a===-1?[null,s]:[s.slice(0,a),s.slice(a+1)];return{repo:r,treeish:{protocol:o,request:g},extra:{}}}}function qvc(e){return CE.structUtils.makeLocator(e,(0,TJe.normalizeRepoUrl)(e.reference))}function ZTr(e,{configuration:t}){let r=(0,TJe.normalizeRepoUrl)(e,{git:!0});if(!CE.httpUtils.getNetworkSettings(`https://${(0,Uvc.default)(r).resource}`,{configuration:t}).enableNetwork)throw new CE.ReportError(CE.MessageName.NETWORK_DISABLED,`Request to '${r}' has been blocked because of your configuration settings`);return r}async function VYi(e,t){let r=ZTr(e,{configuration:t}),s=await GTr("listing refs",["ls-remote",r],{cwd:t.startingCwd,env:LYi()},{configuration:t,normalizedRepoUrl:r}),a=new Map,o=/^([a-f0-9]{40})\t([^\n]+)/gm,g;for(;(g=o.exec(s.stdout))!==null;)a.set(g[2],g[1]);return a}async function $vc(e,t){let{repo:r,treeish:{protocol:s,request:a},extra:o}=FTr(e),g=await VYi(r,t),p=(m,y)=>{switch(m){case I3.Commit:{if(!y.match(/^[a-f0-9]{40}$/))throw new Error("Invalid commit hash");return wJe.default.stringify({...o,commit:y})}case I3.Head:{let B=g.get(y==="HEAD"?y:`refs/heads/${y}`);if(typeof B>"u")throw new Error(`Unknown head ("${y}")`);return wJe.default.stringify({...o,commit:B})}case I3.Tag:{let B=g.get(`refs/tags/${y}`);if(typeof B>"u")throw new Error(`Unknown tag ("${y}")`);return wJe.default.stringify({...o,commit:B})}case I3.Semver:{let B=CE.semverUtils.validRange(y);if(!B)throw new Error(`Invalid range ("${y}")`);let v=new Map([...g.entries()].filter(([T])=>T.startsWith("refs/tags/")).map(([T,O])=>[ZYi.default.parse(T.slice(10)),O]).filter(T=>T[0]!==null)),G=ZYi.default.maxSatisfying([...v.keys()],B);if(G===null)throw new Error(`No matching range ("${y}")`);return wJe.default.stringify({...o,commit:v.get(G)})}case null:{let B;if((B=f(I3.Commit,y))!==null||(B=f(I3.Tag,y))!==null||(B=f(I3.Head,y))!==null)return B;throw y.match(/^[a-f0-9]+$/)?new Error(`Couldn't resolve "${y}" as either a commit, a tag, or a head - if a commit, use the 40-characters commit hash`):new Error(`Couldn't resolve "${y}" as either a commit, a tag, or a head`)}default:throw new Error(`Invalid Git resolution protocol ("${m}")`)}},f=(m,y)=>{try{return p(m,y)}catch{return null}};return(0,TJe.normalizeRepoUrl)(`${r}#${p(s,a)}`)}async function eSc(e,t){return await t.getLimit("cloneConcurrency")(async()=>{let{repo:r,treeish:{protocol:s,request:a}}=FTr(e);if(s!=="commit")throw new Error("Invalid treeish protocol when cloning");let o=ZTr(r,{configuration:t}),g=await iZ.xfs.mktempPromise(),p={cwd:g,env:LYi()};return await GTr("cloning the repository",["clone","-c core.autocrlf=false",o,iZ.npath.fromPortablePath(g)],p,{configuration:t,normalizedRepoUrl:o}),await GTr("switching branch",["checkout",`${a}`],p,{configuration:t,normalizedRepoUrl:o}),g})}async function WYi(e){let t,r=e;do{if(t=r,await iZ.xfs.existsPromise(iZ.ppath.join(t,".git")))return t;r=iZ.ppath.dirname(t)}while(r!==t);return null}async function PYi(e,{baseRefs:t}){if(t.length===0)throw new twt.UsageError("Can't run this command with zero base refs specified.");let r=[];for(let p of t){let{code:f}=await CE.execUtils.execvp("git",["merge-base",p,"HEAD"],{cwd:e});f===0&&r.push(p)}if(r.length===0)throw new twt.UsageError(`No ancestor could be found between any of HEAD and ${t.join(", ")}`);let{stdout:s}=await CE.execUtils.execvp("git",["merge-base","HEAD",...r],{cwd:e,strict:!0}),a=s.trim(),{stdout:o}=await CE.execUtils.execvp("git",["show","--quiet","--pretty=format:%s",a],{cwd:e,strict:!0}),g=o.trim();return{hash:a,title:g}}async function OYi(e,{base:t,project:r}){let s=CE.miscUtils.buildIgnorePattern(r.configuration.get("changesetIgnorePatterns")),{stdout:a}=await CE.execUtils.execvp("git",["diff","--name-only",`${t}`],{cwd:e,strict:!0}),o=a.split(/\r\n|\r|\n/).filter(m=>m.length>0).map(m=>iZ.ppath.resolve(e,iZ.npath.toPortablePath(m))),{stdout:g}=await CE.execUtils.execvp("git",["ls-files","--others","--exclude-standard"],{cwd:e,strict:!0}),p=g.split(/\r\n|\r|\n/).filter(m=>m.length>0).map(m=>iZ.ppath.resolve(e,iZ.npath.toPortablePath(m))),f=[...new Set([...o,...p].sort())];return s?f.filter(m=>!iZ.ppath.relative(r.cwd,m).match(s)):f}async function tSc({ref:e,project:t}){if(t.configuration.projectCwd===null)throw new twt.UsageError("This command can only be run from within a Yarn project");let r=[iZ.ppath.resolve(t.cwd,iZ.Filename.lockfile),iZ.ppath.resolve(t.cwd,t.configuration.get("cacheFolder")),iZ.ppath.resolve(t.cwd,t.configuration.get("installStatePath")),iZ.ppath.resolve(t.cwd,t.configuration.get("virtualFolder"))];await t.configuration.triggerHook(g=>g.populateYarnPaths,t,g=>{g!=null&&r.push(g)});let s=await WYi(t.configuration.projectCwd);if(s==null)throw new twt.UsageError("This command can only be run on Git repositories");let a=await PYi(s,{baseRefs:typeof e=="string"?[e]:t.configuration.get("changesetBaseRefs")}),o=await OYi(s,{base:a.hash,project:t});return new Set(CE.miscUtils.mapAndFilter(o,g=>{let p=t.tryWorkspaceByFilePath(g);return p===null||r.some(f=>g.startsWith(f))?CE.miscUtils.mapAndFilter.skip:p}))}async function GTr(e,t,r,{configuration:s,normalizedRepoUrl:a}){try{return await CE.execUtils.execvp("git",t,{...r,strict:!0})}catch(o){if(!(o instanceof CE.execUtils.ExecError))throw o;let g=o.reportExtra,p=o.stderr.toString();throw new CE.ReportError(CE.MessageName.EXCEPTION,`Failed ${e}`,f=>{f.reportError(CE.MessageName.EXCEPTION,` ${CE.formatUtils.prettyField(s,{label:"Repository URL",value:CE.formatUtils.tuple(CE.formatUtils.Type.URL,a)})}`);for(let m of p.matchAll(/^(.+?): (.*)$/gm)){let[,y,B]=m;y=y.toLowerCase();let v=y==="error"?"Error":`${(0,Kvc.default)(y)} Error`;f.reportError(CE.MessageName.EXCEPTION,` ${CE.formatUtils.prettyField(s,{label:v,value:CE.formatUtils.tuple(CE.formatUtils.Type.NO_HINT,B)})}`)}g?.(f)})}}});var MYi=z(swt=>{"use strict";Object.defineProperty(swt,"__esModule",{value:!0});swt.GitFetcher=void 0;var rSc=(Ma(),Ai(Oa)),WNe=Bn(),iwt=Ro(),LTr=rSc.__importStar(nwt()),VTr=class{supports(t,r){return LTr.isGitUrl(t.reference)}getLocalPath(t,r){return null}async fetch(t,r){let s=r.checksums.get(t.locatorHash)||null,a=new Map(r.checksums);a.set(t.locatorHash,s);let o={...r,checksums:a},g=await this.downloadHosted(t,o);if(g!==null)return g;let[p,f,m]=await r.cache.fetchPackageFromCache(t,s,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${WNe.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote repository`),loader:()=>this.cloneFromRemote(t,o),...r.cacheOptions});return{packageFs:p,releaseFs:f,prefixPath:WNe.structUtils.getIdentVendorPath(t),checksum:m}}async downloadHosted(t,r){return r.project.configuration.reduceHook(s=>s.fetchHostedRepository,null,t,r)}async cloneFromRemote(t,r){let s=LTr.splitRepoUrl(t.reference),a=await LTr.clone(t.reference,r.project.configuration),o=iwt.ppath.resolve(a,s.extra.cwd??iwt.PortablePath.dot),g=iwt.ppath.join(o,"package.tgz");await WNe.scriptUtils.prepareExternalProject(o,g,{configuration:r.project.configuration,report:r.report,workspace:s.extra.workspace,locator:t});let p=await iwt.xfs.readFilePromise(g);return await WNe.miscUtils.releaseAfterUseAsync(async()=>await WNe.tgzUtils.convertToZip(p,{configuration:r.project.configuration,prefixPath:WNe.structUtils.getIdentVendorPath(t),stripComponents:1}))}};swt.GitFetcher=VTr});var YYi=z(owt=>{"use strict";Object.defineProperty(owt,"__esModule",{value:!0});owt.GitResolver=void 0;var nSc=(Ma(),Ai(Oa)),QYi=Bn(),iSc=Bn(),sSc=Bn(),PNe=nSc.__importStar(nwt()),WTr=class{supportsDescriptor(t,r){return PNe.isGitUrl(t.range)}supportsLocator(t,r){return PNe.isGitUrl(t.reference)}shouldPersistResolution(t,r){return!0}bindDescriptor(t,r,s){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,s){let a=await PNe.resolveUrl(t.range,s.project.configuration);return[QYi.structUtils.makeLocator(t,a)]}async getSatisfying(t,r,s,a){let o=PNe.splitRepoUrl(t.range);return{locators:s.filter(p=>{if(p.identHash!==t.identHash)return!1;let f=PNe.splitRepoUrl(p.reference);return!(o.repo!==f.repo||o.treeish.protocol===PNe.TreeishProtocols.Commit&&o.treeish.request!==f.treeish.request)}),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let s=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await QYi.miscUtils.releaseAfterUseAsync(async()=>await sSc.Manifest.find(s.prefixPath,{baseFs:s.packageFs}),s.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:iSc.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};owt.GitResolver=WTr});var ONe=z(Jq=>{"use strict";Object.defineProperty(Jq,"__esModule",{value:!0});Jq.GitResolver=Jq.GitFetcher=Jq.gitUtils=void 0;var oSc=(Ma(),Ai(Oa)),PTr=Bn(),HYi=MYi();Object.defineProperty(Jq,"GitFetcher",{enumerable:!0,get:function(){return HYi.GitFetcher}});var XYi=YYi();Object.defineProperty(Jq,"GitResolver",{enumerable:!0,get:function(){return XYi.GitResolver}});var aSc=oSc.__importStar(nwt());Jq.gitUtils=aSc;var cSc={configuration:{changesetBaseRefs:{description:"The base git refs that the current HEAD is compared against when detecting changes. Supports git branches, tags, and commits.",type:PTr.SettingsType.STRING,isArray:!0,isNullable:!1,default:["master","origin/master","upstream/master","main","origin/main","upstream/main"]},changesetIgnorePatterns:{description:"Array of glob patterns; files matching them will be ignored when fetching the changed files",type:PTr.SettingsType.STRING,default:[],isArray:!0},cloneConcurrency:{description:"Maximal number of concurrent clones",type:PTr.SettingsType.NUMBER,default:2}},fetchers:[HYi.GitFetcher],resolvers:[XYi.GitResolver]};Jq.default=cSc});var JYi=z(OTr=>{"use strict";Object.defineProperty(OTr,"__esModule",{value:!0});var lSc=nl(),MNe=Bn(),uSc=ONe(),QNe=(Fl(),Ai(dg)),NJe=class extends lSc.BaseCommand{constructor(){super(...arguments),this.since=QNe.Option.String("--since",{description:"Only include workspaces that have been changed since the specified ref.",tolerateBoolean:!0}),this.recursive=QNe.Option.Boolean("-R,--recursive",!1,{description:"Find packages via dependencies/devDependencies instead of using the workspaces field"}),this.noPrivate=QNe.Option.Boolean("--no-private",{description:"Exclude workspaces that have the private field set to true"}),this.verbose=QNe.Option.Boolean("-v,--verbose",!1,{description:"Also return the cross-dependencies between workspaces"}),this.json=QNe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await MNe.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await MNe.Project.find(t,this.context.cwd);return(await MNe.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async a=>{let o=this.since?await uSc.gitUtils.fetchChangedWorkspaces({ref:this.since,project:r}):r.workspaces,g=new Set(o);if(this.recursive)for(let p of[...o].map(f=>f.getRecursiveWorkspaceDependents()))for(let f of p)g.add(f);for(let p of g){let{manifest:f}=p;if(f.private&&this.noPrivate)continue;let m;if(this.verbose){let y=new Set,B=new Set;for(let v of MNe.Manifest.hardDependencies)for(let[G,T]of f.getForScope(v)){let O=r.tryWorkspaceByDescriptor(T);O===null?r.workspacesByIdent.has(G)&&B.add(T):y.add(O)}m={workspaceDependencies:Array.from(y).map(v=>v.relativeCwd),mismatchedWorkspaceDependencies:Array.from(B).map(v=>MNe.structUtils.stringifyDescriptor(v))}}a.reportInfo(null,`${p.relativeCwd}`),a.reportJson({location:p.relativeCwd,name:f.name?MNe.structUtils.stringifyIdent(f.name):null,...m})}})).exitCode()}};NJe.paths=[["workspaces","list"]];NJe.usage=QNe.Command.Usage({category:"Workspace-related commands",description:"list all available workspaces",details:"\n This command will print the list of all workspaces in the project.\n\n - If `--since` is set, Yarn will only list workspaces that have been modified since the specified ref. By default Yarn will use the refs specified by the `changesetBaseRefs` configuration option.\n\n - If `-R,--recursive` is set, Yarn will find workspaces to run the command on by recursively evaluating `dependencies` and `devDependencies` fields, instead of looking at the `workspaces` fields.\n\n - If `--no-private` is set, Yarn will not list any workspaces that have the `private` field set to `true`.\n\n - If both the `-v,--verbose` and `--json` options are set, Yarn will also return the cross-dependencies between each workspaces (useful when you wish to automatically generate Buck / Bazel rules).\n "});OTr.default=NJe});var jYi=z(MTr=>{"use strict";Object.defineProperty(MTr,"__esModule",{value:!0});var UYi=nl(),KYi=Bn(),gSc=Bn(),RJe=(Fl(),Ai(dg)),DJe=class extends UYi.BaseCommand{constructor(){super(...arguments),this.workspaceName=RJe.Option.String(),this.commandName=RJe.Option.String(),this.args=RJe.Option.Proxy()}async execute(){let t=await KYi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await KYi.Project.find(t,this.context.cwd);if(!s)throw new UYi.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=r.workspaces,o=new Map(a.map(p=>[gSc.structUtils.stringifyIdent(p.anchoredLocator),p])),g=o.get(this.workspaceName);if(g===void 0){let p=Array.from(o.keys()).sort();throw new RJe.UsageError(`Workspace '${this.workspaceName}' not found. Did you mean any of the following: + `,examples:[["Explain why lodash is used in your project","$0 why lodash"]]});kTr.default=TJe;function Mvc(e,t,{configuration:r,peers:s}){let a=Uq.miscUtils.sortMap(e.storedPackages.values(),p=>Uq.structUtils.stringifyLocator(p)),o={},g={children:o};for(let p of a){let f={};for(let y of p.dependencies.values()){if(!s&&p.peerDependencies.has(y.identHash))continue;let B=e.storedResolutions.get(y.descriptorHash);if(!B)throw new Error("Assertion failed: The resolution should have been registered");let v=e.storedPackages.get(B);if(!v)throw new Error("Assertion failed: The package should have been registered");if(v.identHash!==t)continue;{let T=Uq.structUtils.stringifyLocator(p);o[T]={value:[p,CCe.formatUtils.Type.LOCATOR],children:f}}let k=Uq.structUtils.stringifyLocator(v);f[k]={value:[{descriptor:y,locator:v},CCe.formatUtils.Type.DEPENDENT]}}}return g}function Hvc(e,t,{configuration:r,peers:s}){let a=Uq.miscUtils.sortMap(e.workspaces,v=>Uq.structUtils.stringifyLocator(v.anchoredLocator)),o=new Set,g=new Set,p=v=>{if(o.has(v.locatorHash))return g.has(v.locatorHash);if(o.add(v.locatorHash),v.identHash===t)return g.add(v.locatorHash),!0;let k=!1;v.identHash===t&&(k=!0);for(let T of v.dependencies.values()){if(!s&&v.peerDependencies.has(T.identHash))continue;let O=e.storedResolutions.get(T.descriptorHash);if(!O)throw new Error("Assertion failed: The resolution should have been registered");let X=e.storedPackages.get(O);if(!X)throw new Error("Assertion failed: The package should have been registered");p(X)&&(k=!0)}return k&&g.add(v.locatorHash),k};for(let v of a)p(v.anchoredPackage);let f=new Set,m={},y={children:m},B=(v,k,T)=>{if(!g.has(v.locatorHash))return;let O=T!==null?CCe.formatUtils.tuple(CCe.formatUtils.Type.DEPENDENT,{locator:v,descriptor:T}):CCe.formatUtils.tuple(CCe.formatUtils.Type.LOCATOR,v),X={},U={value:O,children:X},le=Uq.structUtils.stringifyLocator(v);if(k[le]=U,!(T!==null&&e.tryWorkspaceByLocator(v))&&!f.has(v.locatorHash)){f.add(v.locatorHash);for(let ae of v.dependencies.values()){if(!s&&v.peerDependencies.has(ae.identHash))continue;let ge=e.storedResolutions.get(ae.descriptorHash);if(!ge)throw new Error("Assertion failed: The resolution should have been registered");let fe=e.storedPackages.get(ge);if(!fe)throw new Error("Assertion failed: The package should have been registered");B(fe,X,ae)}}};for(let v of a)B(v.anchoredPackage,m,null);return y}});var GTr=z((OYl,SMi)=>{"use strict";SMi.exports=function(t,r){r===!0&&(r=0);var s="";if(typeof t=="string")try{s=new URL(t).protocol}catch{}else t&&t.constructor===URL&&(s=t.protocol);var a=s.split(/\:|\+/).filter(Boolean);return typeof r=="number"?a[r]:a}});var TMi=z((QYl,wMi)=>{"use strict";var Yvc=GTr();function Xvc(e){var t={protocols:[],protocol:null,port:null,resource:"",host:"",user:"",password:"",pathname:"",hash:"",search:"",href:e,query:{},parse_failed:!1};try{var r=new URL(e);t.protocols=Yvc(r),t.protocol=t.protocols[0],t.port=r.port,t.resource=r.hostname,t.host=r.host,t.user=r.username||"",t.password=r.password||"",t.pathname=r.pathname,t.hash=r.hash.slice(1),t.search=r.search.slice(1),t.href=r.href,t.query=Object.fromEntries(r.searchParams)}catch{t.protocols=["file"],t.protocol=t.protocols[0],t.port="",t.resource="",t.user="",t.pathname="",t.hash="",t.search="",t.href=e,t.query={},t.parse_failed=!0}return t}wMi.exports=Xvc});var DMi=z((MYl,RMi)=>{"use strict";var Jvc=TMi();function Uvc(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var Kvc=Uvc(Jvc),jvc="text/plain",zvc="us-ascii",NMi=(e,t)=>t.some(r=>r instanceof RegExp?r.test(e):r===e),qvc=(e,{stripHash:t})=>{let r=/^data:(?[^,]*?),(?[^#]*?)(?:#(?.*))?$/.exec(e);if(!r)throw new Error(`Invalid URL: ${e}`);let{type:s,data:a,hash:o}=r.groups,g=s.split(";");o=t?"":o;let p=!1;g[g.length-1]==="base64"&&(g.pop(),p=!0);let f=(g.shift()||"").toLowerCase(),y=[...g.map(B=>{let[v,k=""]=B.split("=").map(T=>T.trim());return v==="charset"&&(k=k.toLowerCase(),k===zvc)?"":`${v}${k?`=${k}`:""}`}).filter(Boolean)];return p&&y.push("base64"),(y.length>0||f&&f!==jvc)&&y.unshift(f),`data:${y.join(";")},${p?a.trim():a}${o?`#${o}`:""}`};function $vc(e,t){if(t={defaultProtocol:"http:",normalizeProtocol:!0,forceHttp:!1,forceHttps:!1,stripAuthentication:!0,stripHash:!1,stripTextFragment:!0,stripWWW:!0,removeQueryParameters:[/^utm_\w+/i],removeTrailingSlash:!0,removeSingleSlash:!0,removeDirectoryIndex:!1,sortQueryParameters:!0,...t},e=e.trim(),/^data:/i.test(e))return qvc(e,t);if(/^view-source:/i.test(e))throw new Error("`view-source:` is not supported as it is a non-standard protocol");let r=e.startsWith("//");!r&&/^\.*\//.test(e)||(e=e.replace(/^(?!(?:\w+:)?\/\/)|^\/\//,t.defaultProtocol));let a=new URL(e);if(t.forceHttp&&t.forceHttps)throw new Error("The `forceHttp` and `forceHttps` options cannot be used together");if(t.forceHttp&&a.protocol==="https:"&&(a.protocol="http:"),t.forceHttps&&a.protocol==="http:"&&(a.protocol="https:"),t.stripAuthentication&&(a.username="",a.password=""),t.stripHash?a.hash="":t.stripTextFragment&&(a.hash=a.hash.replace(/#?:~:text.*?$/i,"")),a.pathname){let g=/\b[a-z][a-z\d+\-.]{1,50}:\/\//g,p=0,f="";for(;;){let y=g.exec(a.pathname);if(!y)break;let B=y[0],v=y.index,k=a.pathname.slice(p,v);f+=k.replace(/\/{2,}/g,"/"),f+=B,p=v+B.length}let m=a.pathname.slice(p,a.pathname.length);f+=m.replace(/\/{2,}/g,"/"),a.pathname=f}if(a.pathname)try{a.pathname=decodeURI(a.pathname)}catch{}if(t.removeDirectoryIndex===!0&&(t.removeDirectoryIndex=[/^index\.[a-z]+$/]),Array.isArray(t.removeDirectoryIndex)&&t.removeDirectoryIndex.length>0){let g=a.pathname.split("/"),p=g[g.length-1];NMi(p,t.removeDirectoryIndex)&&(g=g.slice(0,-1),a.pathname=g.slice(1).join("/")+"/")}if(a.hostname&&(a.hostname=a.hostname.replace(/\.$/,""),t.stripWWW&&/^www\.(?!www\.)[a-z\-\d]{1,63}\.[a-z.\-\d]{2,63}$/.test(a.hostname)&&(a.hostname=a.hostname.replace(/^www\./,""))),Array.isArray(t.removeQueryParameters))for(let g of[...a.searchParams.keys()])NMi(g,t.removeQueryParameters)&&a.searchParams.delete(g);if(t.removeQueryParameters===!0&&(a.search=""),t.sortQueryParameters){a.searchParams.sort();try{a.search=decodeURIComponent(a.search)}catch{}}t.removeTrailingSlash&&(a.pathname=a.pathname.replace(/\/$/,""));let o=e;return e=a.toString(),!t.removeSingleSlash&&a.pathname==="/"&&!o.endsWith("/")&&a.hash===""&&(e=e.replace(/\/$/,"")),(t.removeTrailingSlash||a.pathname==="/")&&a.hash===""&&t.removeSingleSlash&&(e=e.replace(/\/$/,"")),r&&!t.normalizeProtocol&&(e=e.replace(/^http:\/\//,"//")),t.stripProtocol&&(e=e.replace(/^(?:https?:)?\/\//,"")),e}var FTr=(e,t=!1)=>{let r=/^(?:([a-z_][a-z0-9_-]{0,31})@|https?:\/\/)([\w\.\-@]+)[\/:]([\~,\.\w,\-,\_,\/]+?(?:\.git|\/)?)$/,s=o=>{let g=new Error(o);throw g.subject_url=e,g};(typeof e!="string"||!e.trim())&&s("Invalid url."),e.length>FTr.MAX_INPUT_LENGTH&&s("Input exceeds maximum length. If needed, change the value of parseUrl.MAX_INPUT_LENGTH."),t&&(typeof t!="object"&&(t={stripHash:!1}),e=$vc(e,t));let a=Kvc.default(e);if(a.parse_failed){let o=a.href.match(r);o?(a.protocols=["ssh"],a.protocol="ssh",a.resource=o[2],a.host=o[2],a.user=o[1],a.pathname=`/${o[3]}`,a.parse_failed=!1):s("URL parsing failed.")}return a};FTr.MAX_INPUT_LENGTH=2048;RMi.exports=FTr});var GMi=z((HYl,kMi)=>{"use strict";var eSc=GTr();function xMi(e){if(Array.isArray(e))return e.indexOf("ssh")!==-1||e.indexOf("rsync")!==-1;if(typeof e!="string")return!1;var t=eSc(e);if(e=e.substring(e.indexOf("://")+3),xMi(t))return!0;var r=new RegExp(".([a-zA-Z\\d]+):(\\d+)/");return!e.match(r)&&e.indexOf("@"){"use strict";var tSc=DMi(),FMi=GMi();function rSc(e){var t=tSc(e);return t.token="",t.password==="x-oauth-basic"?t.token=t.user:t.user==="x-token-auth"&&(t.token=t.password),FMi(t.protocols)||t.protocols.length===0&&FMi(e)?t.protocol="ssh":t.protocols.length?t.protocol=t.protocols[0]:(t.protocol="file",t.protocols=["file"]),t.href=t.href.replace(/\/$/,""),t}ZMi.exports=rSc});var WMi=z((XYl,VMi)=>{"use strict";var nSc=LMi();function ZTr(e){if(typeof e!="string")throw new Error("The url must be a string.");var t=/^([a-z\d-]{1,39})\/([-\.\w]{1,100})$/i;t.test(e)&&(e="https://github.com/"+e);var r=nSc(e),s=r.resource.split("."),a=null;switch(r.toString=function(X){return ZTr.stringify(this,X)},r.source=s.length>2?s.slice(1-s.length).join("."):r.source=r.resource,r.git_suffix=/\.git$/.test(r.pathname),r.name=decodeURIComponent((r.pathname||r.href).replace(/(^\/)|(\/$)/g,"").replace(/\.git$/,"")),r.owner=decodeURIComponent(r.user),r.source){case"git.cloudforge.com":r.owner=r.user,r.organization=s[0],r.source="cloudforge.com";break;case"visualstudio.com":if(r.resource==="vs-ssh.visualstudio.com"){a=r.name.split("/"),a.length===4&&(r.organization=a[1],r.owner=a[2],r.name=a[3],r.full_name=a[2]+"/"+a[3]);break}else{a=r.name.split("/"),a.length===2?(r.owner=a[1],r.name=a[1],r.full_name="_git/"+r.name):a.length===3?(r.name=a[2],a[0]==="DefaultCollection"?(r.owner=a[2],r.organization=a[0],r.full_name=r.organization+"/_git/"+r.name):(r.owner=a[0],r.full_name=r.owner+"/_git/"+r.name)):a.length===4&&(r.organization=a[0],r.owner=a[1],r.name=a[3],r.full_name=r.organization+"/"+r.owner+"/_git/"+r.name);break}case"dev.azure.com":case"azure.com":if(r.resource==="ssh.dev.azure.com"){a=r.name.split("/"),a.length===4&&(r.organization=a[1],r.owner=a[2],r.name=a[3]);break}else{a=r.name.split("/"),a.length===5?(r.organization=a[0],r.owner=a[1],r.name=a[4],r.full_name="_git/"+r.name):a.length===3?(r.name=a[2],a[0]==="DefaultCollection"?(r.owner=a[2],r.organization=a[0],r.full_name=r.organization+"/_git/"+r.name):(r.owner=a[0],r.full_name=r.owner+"/_git/"+r.name)):a.length===4&&(r.organization=a[0],r.owner=a[1],r.name=a[3],r.full_name=r.organization+"/"+r.owner+"/_git/"+r.name),r.query&&r.query.path&&(r.filepath=r.query.path.replace(/^\/+/g,"")),r.query&&r.query.version&&(r.ref=r.query.version.replace(/^GB/,""));break}default:a=r.name.split("/");var o=a.length-1;if(a.length>=2){var g=a.indexOf("-",2),p=a.indexOf("blob",2),f=a.indexOf("tree",2),m=a.indexOf("commit",2),y=a.indexOf("src",2),B=a.indexOf("raw",2),v=a.indexOf("edit",2);o=g>0?g-1:p>0?p-1:f>0?f-1:m>0?m-1:y>0?y-1:B>0?B-1:v>0?v-1:o,r.owner=a.slice(0,o).join("/"),r.name=a[o],m&&(r.commit=a[o+2])}r.ref="",r.filepathtype="",r.filepath="";var k=a.length>o&&a[o+1]==="-"?o+1:o;a.length>k+2&&["raw","src","blob","tree","edit"].indexOf(a[k+1])>=0&&(r.filepathtype=a[k+1],r.ref=a[k+2],a.length>k+3&&(r.filepath=a.slice(k+3).join("/"))),r.organization=r.owner;break}r.full_name||(r.full_name=r.owner,r.name&&(r.full_name&&(r.full_name+="/"),r.full_name+=r.name)),r.owner.startsWith("scm/")&&(r.source="bitbucket-server",r.owner=r.owner.replace("scm/",""),r.organization=r.owner,r.full_name=r.owner+"/"+r.name);var T=/(projects|users)\/(.*?)\/repos\/(.*?)((\/.*$)|$)/,O=T.exec(r.pathname);return O!=null&&(r.source="bitbucket-server",O[1]==="users"?r.owner="~"+O[2]:r.owner=O[2],r.organization=r.owner,r.name=O[3],a=O[4].split("/"),a.length>1&&(["raw","browse"].indexOf(a[1])>=0?(r.filepathtype=a[1],a.length>2&&(r.filepath=a.slice(2).join("/"))):a[1]==="commits"&&a.length>2&&(r.commit=a[2])),r.full_name=r.owner+"/"+r.name,r.query.at?r.ref=r.query.at:r.ref=""),r}ZTr.stringify=function(e,t){t=t||(e.protocols&&e.protocols.length?e.protocols.join("+"):e.protocol);var r=e.port?":"+e.port:"",s=e.user||"git",a=e.git_suffix?".git":"";switch(t){case"ssh":return r?"ssh://"+s+"@"+e.resource+r+"/"+e.full_name+a:s+"@"+e.resource+":"+e.full_name+a;case"git+ssh":case"ssh+git":case"ftp":case"ftps":return t+"://"+s+"@"+e.resource+r+"/"+e.full_name+a;case"http":case"https":var o=e.token?iSc(e):e.user&&(e.protocols.includes("http")||e.protocols.includes("https"))?e.user+"@":"";return t+"://"+o+e.resource+r+"/"+sSc(e)+a;default:return e.href}};function iSc(e){switch(e.source){case"bitbucket.org":return"x-token-auth:"+e.token+"@";default:return e.token+"@"}}function sSc(e){switch(e.source){case"bitbucket-server":return"scm/"+e.full_name;default:return""+e.full_name}}VMi.exports=ZTr});var OMi=z(VTr=>{"use strict";Object.defineProperty(VTr,"__esModule",{value:!0});VTr.tryParseGitURL=aSc;function LTr(e,t,r){let s=e.indexOf(r);return e.lastIndexOf(t,s>-1?s:1/0)}function PMi(e){try{return new URL(e)}catch{return}}function oSc(e){let t=LTr(e,"@","#"),r=LTr(e,":","#");return r>t&&(e=`${e.slice(0,r)}/${e.slice(r+1)}`),LTr(e,":","#")===-1&&e.indexOf("//")===-1&&(e=`ssh://${e}`),e}function aSc(e){return PMi(e)||PMi(oSc(e))}});var QMi=z(WTr=>{"use strict";Object.defineProperty(WTr,"__esModule",{value:!0});WTr.normalizeRepoUrl=lSc;var cSc=OMi();function lSc(e,{git:t=!1}={}){if(e=e.replace(/^git\+https:/,"https:"),e=e.replace(/^(?:github:|https:\/\/github\.com\/|git:\/\/github\.com\/)?(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)(?:\.git)?(#.*)?$/,"https://github.com/$1/$2.git$3"),e=e.replace(/^https:\/\/github\.com\/(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)\/tarball\/(.+)?$/,"https://github.com/$1/$2.git#$3"),t){let r=(0,cSc.tryParseGitURL)(e);r&&(e=r.href),e=e.replace(/^git\+([^:]+):/,"$1:")}return e}});var owt=z(Ix=>{"use strict";Object.defineProperty(Ix,"__esModule",{value:!0});Ix.TreeishProtocols=Ix.normalizeRepoUrl=void 0;Ix.isGitUrl=dSc;Ix.splitRepoUrl=OTr;Ix.normalizeLocator=pSc;Ix.validateRepoUrl=QTr;Ix.lsRemote=YMi;Ix.resolveUrl=fSc;Ix.clone=ISc;Ix.fetchRoot=XMi;Ix.fetchBase=JMi;Ix.fetchChangedFiles=UMi;Ix.fetchChangedWorkspaces=CSc;var swt=(Oa(),Ai(Pa)),hE=Bn(),sZ=No(),iwt=(Zl(),Ai(pg)),uSc=swt.__importDefault(WMi()),gSc=swt.__importDefault(cJt()),NJe=swt.__importDefault(xt("querystring")),MMi=swt.__importDefault(Vh()),RJe=QMi();Object.defineProperty(Ix,"normalizeRepoUrl",{enumerable:!0,get:function(){return RJe.normalizeRepoUrl}});function HMi(){return{...process.env,GIT_SSH_COMMAND:process.env.GIT_SSH_COMMAND||`${process.env.GIT_SSH||"ssh"} -o BatchMode=yes`}}var ASc=[/^ssh:/,/^git(?:\+[^:]+)?:/,/^(?:git\+)?https?:[^#]+\/[^#]+(?:\.git)(?:#.*)?$/,/^git@[^#]+\/[^#]+\.git(?:#.*)?$/,/^(?:github:|https:\/\/github\.com\/)?(?!\.{1,2}\/)([a-zA-Z._0-9-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z._0-9-]+?)(?:\.git)?(?:#.*)?$/,/^https:\/\/github\.com\/(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)\/tarball\/(.+)?$/],h3;(function(e){e.Commit="commit",e.Head="head",e.Tag="tag",e.Semver="semver"})(h3||(Ix.TreeishProtocols=h3={}));function dSc(e){return e?ASc.some(t=>!!e.match(t)):!1}function OTr(e){e=(0,RJe.normalizeRepoUrl)(e);let t=e.indexOf("#");if(t===-1)return{repo:e,treeish:{protocol:h3.Head,request:"HEAD"},extra:{}};let r=e.slice(0,t),s=e.slice(t+1);if(s.match(/^[a-z]+=/)){let a=NJe.default.parse(s);for(let[f,m]of Object.entries(a))if(typeof m!="string")throw new Error(`Assertion failed: The ${f} parameter must be a literal string`);let o=Object.values(h3).find(f=>Object.hasOwn(a,f)),[g,p]=typeof o<"u"?[o,a[o]]:[h3.Head,"HEAD"];for(let f of Object.values(h3))delete a[f];return{repo:r,treeish:{protocol:g,request:p},extra:a}}else{let a=s.indexOf(":"),[o,g]=a===-1?[null,s]:[s.slice(0,a),s.slice(a+1)];return{repo:r,treeish:{protocol:o,request:g},extra:{}}}}function pSc(e){return hE.structUtils.makeLocator(e,(0,RJe.normalizeRepoUrl)(e.reference))}function QTr(e,{configuration:t}){let r=(0,RJe.normalizeRepoUrl)(e,{git:!0});if(!hE.httpUtils.getNetworkSettings(`https://${(0,uSc.default)(r).resource}`,{configuration:t}).enableNetwork)throw new hE.ReportError(hE.MessageName.NETWORK_DISABLED,`Request to '${r}' has been blocked because of your configuration settings`);return r}async function YMi(e,t){let r=QTr(e,{configuration:t}),s=await PTr("listing refs",["ls-remote",r],{cwd:t.startingCwd,env:HMi()},{configuration:t,normalizedRepoUrl:r}),a=new Map,o=/^([a-f0-9]{40})\t([^\n]+)/gm,g;for(;(g=o.exec(s.stdout))!==null;)a.set(g[2],g[1]);return a}async function fSc(e,t){let{repo:r,treeish:{protocol:s,request:a},extra:o}=OTr(e),g=await YMi(r,t),p=(m,y)=>{switch(m){case h3.Commit:{if(!y.match(/^[a-f0-9]{40}$/))throw new Error("Invalid commit hash");return NJe.default.stringify({...o,commit:y})}case h3.Head:{let B=g.get(y==="HEAD"?y:`refs/heads/${y}`);if(typeof B>"u")throw new Error(`Unknown head ("${y}")`);return NJe.default.stringify({...o,commit:B})}case h3.Tag:{let B=g.get(`refs/tags/${y}`);if(typeof B>"u")throw new Error(`Unknown tag ("${y}")`);return NJe.default.stringify({...o,commit:B})}case h3.Semver:{let B=hE.semverUtils.validRange(y);if(!B)throw new Error(`Invalid range ("${y}")`);let v=new Map([...g.entries()].filter(([T])=>T.startsWith("refs/tags/")).map(([T,O])=>[MMi.default.parse(T.slice(10)),O]).filter(T=>T[0]!==null)),k=MMi.default.maxSatisfying([...v.keys()],B);if(k===null)throw new Error(`No matching range ("${y}")`);return NJe.default.stringify({...o,commit:v.get(k)})}case null:{let B;if((B=f(h3.Commit,y))!==null||(B=f(h3.Tag,y))!==null||(B=f(h3.Head,y))!==null)return B;throw y.match(/^[a-f0-9]+$/)?new Error(`Couldn't resolve "${y}" as either a commit, a tag, or a head - if a commit, use the 40-characters commit hash`):new Error(`Couldn't resolve "${y}" as either a commit, a tag, or a head`)}default:throw new Error(`Invalid Git resolution protocol ("${m}")`)}},f=(m,y)=>{try{return p(m,y)}catch{return null}};return(0,RJe.normalizeRepoUrl)(`${r}#${p(s,a)}`)}async function ISc(e,t){return await t.getLimit("cloneConcurrency")(async()=>{let{repo:r,treeish:{protocol:s,request:a}}=OTr(e);if(s!=="commit")throw new Error("Invalid treeish protocol when cloning");let o=QTr(r,{configuration:t}),g=await sZ.xfs.mktempPromise(),p={cwd:g,env:HMi()};return await PTr("cloning the repository",["clone","-c core.autocrlf=false",o,sZ.npath.fromPortablePath(g)],p,{configuration:t,normalizedRepoUrl:o}),await PTr("switching branch",["checkout",`${a}`],p,{configuration:t,normalizedRepoUrl:o}),g})}async function XMi(e){let t,r=e;do{if(t=r,await sZ.xfs.existsPromise(sZ.ppath.join(t,".git")))return t;r=sZ.ppath.dirname(t)}while(r!==t);return null}async function JMi(e,{baseRefs:t}){if(t.length===0)throw new iwt.UsageError("Can't run this command with zero base refs specified.");let r=[];for(let p of t){let{code:f}=await hE.execUtils.execvp("git",["merge-base",p,"HEAD"],{cwd:e});f===0&&r.push(p)}if(r.length===0)throw new iwt.UsageError(`No ancestor could be found between any of HEAD and ${t.join(", ")}`);let{stdout:s}=await hE.execUtils.execvp("git",["merge-base","HEAD",...r],{cwd:e,strict:!0}),a=s.trim(),{stdout:o}=await hE.execUtils.execvp("git",["show","--quiet","--pretty=format:%s",a],{cwd:e,strict:!0}),g=o.trim();return{hash:a,title:g}}async function UMi(e,{base:t,project:r}){let s=hE.miscUtils.buildIgnorePattern(r.configuration.get("changesetIgnorePatterns")),{stdout:a}=await hE.execUtils.execvp("git",["diff","--name-only",`${t}`],{cwd:e,strict:!0}),o=a.split(/\r\n|\r|\n/).filter(m=>m.length>0).map(m=>sZ.ppath.resolve(e,sZ.npath.toPortablePath(m))),{stdout:g}=await hE.execUtils.execvp("git",["ls-files","--others","--exclude-standard"],{cwd:e,strict:!0}),p=g.split(/\r\n|\r|\n/).filter(m=>m.length>0).map(m=>sZ.ppath.resolve(e,sZ.npath.toPortablePath(m))),f=[...new Set([...o,...p].sort())];return s?f.filter(m=>!sZ.ppath.relative(r.cwd,m).match(s)):f}async function CSc({ref:e,project:t}){if(t.configuration.projectCwd===null)throw new iwt.UsageError("This command can only be run from within a Yarn project");let r=[sZ.ppath.resolve(t.cwd,sZ.Filename.lockfile),sZ.ppath.resolve(t.cwd,t.configuration.get("cacheFolder")),sZ.ppath.resolve(t.cwd,t.configuration.get("installStatePath")),sZ.ppath.resolve(t.cwd,t.configuration.get("virtualFolder"))];await t.configuration.triggerHook(g=>g.populateYarnPaths,t,g=>{g!=null&&r.push(g)});let s=await XMi(t.configuration.projectCwd);if(s==null)throw new iwt.UsageError("This command can only be run on Git repositories");let a=await JMi(s,{baseRefs:typeof e=="string"?[e]:t.configuration.get("changesetBaseRefs")}),o=await UMi(s,{base:a.hash,project:t});return new Set(hE.miscUtils.mapAndFilter(o,g=>{let p=t.tryWorkspaceByFilePath(g);return p===null||r.some(f=>g.startsWith(f))?hE.miscUtils.mapAndFilter.skip:p}))}async function PTr(e,t,r,{configuration:s,normalizedRepoUrl:a}){try{return await hE.execUtils.execvp("git",t,{...r,strict:!0})}catch(o){if(!(o instanceof hE.execUtils.ExecError))throw o;let g=o.reportExtra,p=o.stderr.toString();throw new hE.ReportError(hE.MessageName.EXCEPTION,`Failed ${e}`,f=>{f.reportError(hE.MessageName.EXCEPTION,` ${hE.formatUtils.prettyField(s,{label:"Repository URL",value:hE.formatUtils.tuple(hE.formatUtils.Type.URL,a)})}`);for(let m of p.matchAll(/^(.+?): (.*)$/gm)){let[,y,B]=m;y=y.toLowerCase();let v=y==="error"?"Error":`${(0,gSc.default)(y)} Error`;f.reportError(hE.MessageName.EXCEPTION,` ${hE.formatUtils.prettyField(s,{label:v,value:hE.formatUtils.tuple(hE.formatUtils.Type.NO_HINT,B)})}`)}g?.(f)})}}});var KMi=z(cwt=>{"use strict";Object.defineProperty(cwt,"__esModule",{value:!0});cwt.GitFetcher=void 0;var mSc=(Oa(),Ai(Pa)),ONe=Bn(),awt=No(),MTr=mSc.__importStar(owt()),HTr=class{supports(t,r){return MTr.isGitUrl(t.reference)}getLocalPath(t,r){return null}async fetch(t,r){let s=r.checksums.get(t.locatorHash)||null,a=new Map(r.checksums);a.set(t.locatorHash,s);let o={...r,checksums:a},g=await this.downloadHosted(t,o);if(g!==null)return g;let[p,f,m]=await r.cache.fetchPackageFromCache(t,s,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${ONe.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote repository`),loader:()=>this.cloneFromRemote(t,o),...r.cacheOptions});return{packageFs:p,releaseFs:f,prefixPath:ONe.structUtils.getIdentVendorPath(t),checksum:m}}async downloadHosted(t,r){return r.project.configuration.reduceHook(s=>s.fetchHostedRepository,null,t,r)}async cloneFromRemote(t,r){let s=MTr.splitRepoUrl(t.reference),a=await MTr.clone(t.reference,r.project.configuration),o=awt.ppath.resolve(a,s.extra.cwd??awt.PortablePath.dot),g=awt.ppath.join(o,"package.tgz");await ONe.scriptUtils.prepareExternalProject(o,g,{configuration:r.project.configuration,report:r.report,workspace:s.extra.workspace,locator:t});let p=await awt.xfs.readFilePromise(g);return await ONe.miscUtils.releaseAfterUseAsync(async()=>await ONe.tgzUtils.convertToZip(p,{configuration:r.project.configuration,prefixPath:ONe.structUtils.getIdentVendorPath(t),stripComponents:1}))}};cwt.GitFetcher=HTr});var zMi=z(lwt=>{"use strict";Object.defineProperty(lwt,"__esModule",{value:!0});lwt.GitResolver=void 0;var hSc=(Oa(),Ai(Pa)),jMi=Bn(),_Sc=Bn(),ySc=Bn(),QNe=hSc.__importStar(owt()),YTr=class{supportsDescriptor(t,r){return QNe.isGitUrl(t.range)}supportsLocator(t,r){return QNe.isGitUrl(t.reference)}shouldPersistResolution(t,r){return!0}bindDescriptor(t,r,s){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,s){let a=await QNe.resolveUrl(t.range,s.project.configuration);return[jMi.structUtils.makeLocator(t,a)]}async getSatisfying(t,r,s,a){let o=QNe.splitRepoUrl(t.range);return{locators:s.filter(p=>{if(p.identHash!==t.identHash)return!1;let f=QNe.splitRepoUrl(p.reference);return!(o.repo!==f.repo||o.treeish.protocol===QNe.TreeishProtocols.Commit&&o.treeish.request!==f.treeish.request)}),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let s=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await jMi.miscUtils.releaseAfterUseAsync(async()=>await ySc.Manifest.find(s.prefixPath,{baseFs:s.packageFs}),s.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:_Sc.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};lwt.GitResolver=YTr});var MNe=z(Kq=>{"use strict";Object.defineProperty(Kq,"__esModule",{value:!0});Kq.GitResolver=Kq.GitFetcher=Kq.gitUtils=void 0;var bSc=(Oa(),Ai(Pa)),XTr=Bn(),qMi=KMi();Object.defineProperty(Kq,"GitFetcher",{enumerable:!0,get:function(){return qMi.GitFetcher}});var $Mi=zMi();Object.defineProperty(Kq,"GitResolver",{enumerable:!0,get:function(){return $Mi.GitResolver}});var ESc=bSc.__importStar(owt());Kq.gitUtils=ESc;var BSc={configuration:{changesetBaseRefs:{description:"The base git refs that the current HEAD is compared against when detecting changes. Supports git branches, tags, and commits.",type:XTr.SettingsType.STRING,isArray:!0,isNullable:!1,default:["master","origin/master","upstream/master","main","origin/main","upstream/main"]},changesetIgnorePatterns:{description:"Array of glob patterns; files matching them will be ignored when fetching the changed files",type:XTr.SettingsType.STRING,default:[],isArray:!0},cloneConcurrency:{description:"Maximal number of concurrent clones",type:XTr.SettingsType.NUMBER,default:2}},fetchers:[qMi.GitFetcher],resolvers:[$Mi.GitResolver]};Kq.default=BSc});var eHi=z(JTr=>{"use strict";Object.defineProperty(JTr,"__esModule",{value:!0});var vSc=il(),HNe=Bn(),SSc=MNe(),YNe=(Zl(),Ai(pg)),DJe=class extends vSc.BaseCommand{constructor(){super(...arguments),this.since=YNe.Option.String("--since",{description:"Only include workspaces that have been changed since the specified ref.",tolerateBoolean:!0}),this.recursive=YNe.Option.Boolean("-R,--recursive",!1,{description:"Find packages via dependencies/devDependencies instead of using the workspaces field"}),this.noPrivate=YNe.Option.Boolean("--no-private",{description:"Exclude workspaces that have the private field set to true"}),this.verbose=YNe.Option.Boolean("-v,--verbose",!1,{description:"Also return the cross-dependencies between workspaces"}),this.json=YNe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await HNe.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await HNe.Project.find(t,this.context.cwd);return(await HNe.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async a=>{let o=this.since?await SSc.gitUtils.fetchChangedWorkspaces({ref:this.since,project:r}):r.workspaces,g=new Set(o);if(this.recursive)for(let p of[...o].map(f=>f.getRecursiveWorkspaceDependents()))for(let f of p)g.add(f);for(let p of g){let{manifest:f}=p;if(f.private&&this.noPrivate)continue;let m;if(this.verbose){let y=new Set,B=new Set;for(let v of HNe.Manifest.hardDependencies)for(let[k,T]of f.getForScope(v)){let O=r.tryWorkspaceByDescriptor(T);O===null?r.workspacesByIdent.has(k)&&B.add(T):y.add(O)}m={workspaceDependencies:Array.from(y).map(v=>v.relativeCwd),mismatchedWorkspaceDependencies:Array.from(B).map(v=>HNe.structUtils.stringifyDescriptor(v))}}a.reportInfo(null,`${p.relativeCwd}`),a.reportJson({location:p.relativeCwd,name:f.name?HNe.structUtils.stringifyIdent(f.name):null,...m})}})).exitCode()}};DJe.paths=[["workspaces","list"]];DJe.usage=YNe.Command.Usage({category:"Workspace-related commands",description:"list all available workspaces",details:"\n This command will print the list of all workspaces in the project.\n\n - If `--since` is set, Yarn will only list workspaces that have been modified since the specified ref. By default Yarn will use the refs specified by the `changesetBaseRefs` configuration option.\n\n - If `-R,--recursive` is set, Yarn will find workspaces to run the command on by recursively evaluating `dependencies` and `devDependencies` fields, instead of looking at the `workspaces` fields.\n\n - If `--no-private` is set, Yarn will not list any workspaces that have the `private` field set to `true`.\n\n - If both the `-v,--verbose` and `--json` options are set, Yarn will also return the cross-dependencies between each workspaces (useful when you wish to automatically generate Buck / Bazel rules).\n "});JTr.default=DJe});var nHi=z(UTr=>{"use strict";Object.defineProperty(UTr,"__esModule",{value:!0});var tHi=il(),rHi=Bn(),wSc=Bn(),xJe=(Zl(),Ai(pg)),kJe=class extends tHi.BaseCommand{constructor(){super(...arguments),this.workspaceName=xJe.Option.String(),this.commandName=xJe.Option.String(),this.args=xJe.Option.Proxy()}async execute(){let t=await rHi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await rHi.Project.find(t,this.context.cwd);if(!s)throw new tHi.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=r.workspaces,o=new Map(a.map(p=>[wSc.structUtils.stringifyIdent(p.anchoredLocator),p])),g=o.get(this.workspaceName);if(g===void 0){let p=Array.from(o.keys()).sort();throw new xJe.UsageError(`Workspace '${this.workspaceName}' not found. Did you mean any of the following: - ${p.join(` - - `)}?`)}return this.cli.run([this.commandName,...this.args],{cwd:g.cwd})}};DJe.paths=[["workspace"]];DJe.usage=RJe.Command.Usage({category:"Workspace-related commands",description:"run a command within the specified workspace",details:` + - `)}?`)}return this.cli.run([this.commandName,...this.args],{cwd:g.cwd})}};kJe.paths=[["workspace"]];kJe.usage=xJe.Command.Usage({category:"Workspace-related commands",description:"run a command within the specified workspace",details:` This command will run a given sub-command on a single workspace. - `,examples:[["Add a package to a single workspace","yarn workspace components add -D react"],["Run build script on a single workspace","yarn workspace components run build"]]});MTr.default=DJe});var awt=z(Ru=>{"use strict";Object.defineProperty(Ru,"__esModule",{value:!0});Ru.suggestUtils=Ru.dedupeUtils=Ru.WorkspaceCommand=Ru.WorkspacesListCommand=Ru.WhyCommand=Ru.UpCommand=Ru.UnlinkCommand=Ru.SetVersionCommand=Ru.SetVersionSourcesCommand=Ru.SetResolutionCommand=Ru.RunCommand=Ru.RunIndexCommand=Ru.RemoveCommand=Ru.RebuildCommand=Ru.PluginRuntimeCommand=Ru.PluginRemoveCommand=Ru.PluginListCommand=Ru.PluginImportCommand=Ru.PluginCheckCommand=Ru.PluginImportSourcesCommand=Ru.NodeCommand=Ru.LinkCommand=Ru.YarnCommand=Ru.InfoCommand=Ru.ExplainCommand=Ru.ExplainPeerRequirementsCommand=Ru.ExecCommand=Ru.VersionCommand=Ru.EntryCommand=Ru.HelpCommand=Ru.ClipanionCommand=Ru.DedupeCommand=Ru.ConfigCommand=Ru.ConfigUnsetCommand=Ru.ConfigSetCommand=Ru.ConfigGetCommand=Ru.CacheCleanCommand=Ru.BinCommand=Ru.AddCommand=void 0;var MC=(Ma(),Ai(Oa)),QTr=Bn(),ASc=Uge(),zYi=MC.__importDefault(qOi());Ru.AddCommand=zYi.default;var qYi=MC.__importDefault($Oi());Ru.BinCommand=qYi.default;var $Yi=MC.__importDefault(tMi());Ru.CacheCleanCommand=$Yi.default;var eHi=MC.__importDefault(iMi());Ru.ConfigGetCommand=eHi.default;var tHi=MC.__importDefault(jMi());Ru.ConfigSetCommand=tHi.default;var rHi=MC.__importDefault(cQi());Ru.ConfigUnsetCommand=rHi.default;var nHi=MC.__importDefault(lQi());Ru.ConfigCommand=nHi.default;var iHi=MC.__importDefault(AQi());Ru.DedupeCommand=iHi.default;var sHi=MC.__importDefault(dQi());Ru.ClipanionCommand=sHi.default;var oHi=MC.__importDefault(pQi());Ru.HelpCommand=oHi.default;var aHi=MC.__importDefault(CQi());Ru.EntryCommand=aHi.default;var cHi=MC.__importDefault(mQi());Ru.VersionCommand=cHi.default;var lHi=MC.__importDefault(_Qi());Ru.ExecCommand=lHi.default;var uHi=MC.__importDefault(BQi());Ru.ExplainPeerRequirementsCommand=uHi.default;var gHi=MC.__importDefault(NQi());Ru.ExplainCommand=gHi.default;var AHi=MC.__importDefault(DQi());Ru.InfoCommand=AHi.default;var dHi=MC.__importDefault(FQi());Ru.YarnCommand=dHi.default;var pHi=MC.__importDefault(ZQi());Ru.LinkCommand=pHi.default;var fHi=MC.__importDefault(VQi());Ru.NodeCommand=fHi.default;var IHi=MC.__importDefault(PQi());Ru.PluginCheckCommand=IHi.default;var CHi=MC.__importDefault(rTr());Ru.PluginImportSourcesCommand=CHi.default;var mHi=MC.__importDefault(iTr());Ru.PluginImportCommand=mHi.default;var hHi=MC.__importDefault(uJe());Ru.PluginListCommand=hHi.default;var _Hi=MC.__importDefault(UQi());Ru.PluginRemoveCommand=_Hi.default;var yHi=MC.__importDefault(zQi());Ru.PluginRuntimeCommand=yHi.default;var bHi=MC.__importDefault(tYi());Ru.RebuildCommand=bHi.default;var EHi=MC.__importDefault(iYi());Ru.RemoveCommand=EHi.default;var BHi=MC.__importDefault(oYi());Ru.RunIndexCommand=BHi.default;var vHi=MC.__importDefault(lYi());Ru.RunCommand=vHi.default;var SHi=MC.__importDefault(AYi());Ru.SetResolutionCommand=SHi.default;var wHi=MC.__importDefault(tTr());Ru.SetVersionSourcesCommand=wHi.default;var THi=MC.__importDefault(XSt());Ru.SetVersionCommand=THi.default;var NHi=MC.__importDefault(pYi());Ru.UnlinkCommand=NHi.default;var RHi=MC.__importDefault(IYi());Ru.UpCommand=RHi.default;var DHi=MC.__importDefault(mYi());Ru.WhyCommand=DHi.default;var xHi=MC.__importDefault(JYi());Ru.WorkspacesListCommand=xHi.default;var kHi=MC.__importDefault(jYi());Ru.WorkspaceCommand=kHi.default;var dSc=MC.__importStar(kwr());Ru.dedupeUtils=dSc;var GHi=MC.__importStar(W4e());Ru.suggestUtils=GHi;var pSc={configuration:{enableImmutableInstalls:{description:"If true (the default on CI), prevents the install command from modifying the lockfile",type:QTr.SettingsType.BOOLEAN,default:ASc.isCI},defaultSemverRangePrefix:{description:"The default save prefix: '^', '~' or ''",type:QTr.SettingsType.STRING,values:["^","~",""],default:GHi.Modifier.CARET},preferReuse:{description:"If true, `yarn add` will attempt to reuse the most common dependency range in other workspaces.",type:QTr.SettingsType.BOOLEAN,default:!1}},commands:[$Yi.default,eHi.default,tHi.default,rHi.default,SHi.default,wHi.default,THi.default,xHi.default,sHi.default,oHi.default,aHi.default,cHi.default,zYi.default,qYi.default,nHi.default,iHi.default,lHi.default,uHi.default,gHi.default,AHi.default,dHi.default,pHi.default,NHi.default,fHi.default,IHi.default,CHi.default,mHi.default,_Hi.default,hHi.default,yHi.default,bHi.default,EHi.default,BHi.default,vHi.default,RHi.default,DHi.default,kHi.default]};Ru.default=pSc});var YTr=z(cwt=>{"use strict";Object.defineProperty(cwt,"__esModule",{value:!0});cwt.Pad=void 0;var fSc=(Ma(),Ai(Oa)),ISc=HM(),CSc=fSc.__importDefault(Pm()),mSc=({length:e,active:t})=>{if(e===0)return null;let r=e>1?` ${"-".repeat(e-1)}`:" ";return CSc.default.createElement(ISc.Text,{dimColor:!t},r)};cwt.Pad=mSc});var FHi=z(lwt=>{"use strict";Object.defineProperty(lwt,"__esModule",{value:!0});lwt.ItemOptions=void 0;var hSc=(Ma(),Ai(Oa)),HTr=HM(),ICe=hSc.__importDefault(Pm()),_Sc=NSt(),ySc=SSt(),bSc=YTr(),ESc=function({active:e,skewer:t,options:r,value:s,onChange:a,sizes:o=[]}){let g=r.filter(({label:f})=>!!f).map(({value:f})=>f),p=r.findIndex(f=>f.value===s&&f.label!="");return(0,_Sc.useListInput)(s,g,{active:e,minus:"left",plus:"right",set:a}),ICe.default.createElement(ICe.default.Fragment,null,r.map(({label:f},m)=>{let y=m===p,B=o[m]-1||0,v=f.replace(/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g,""),G=Math.max(0,B-v.length-2);return f?ICe.default.createElement(HTr.Box,{key:f,width:B,marginLeft:1},ICe.default.createElement(HTr.Text,{wrap:"truncate"},ICe.default.createElement(ySc.Gem,{active:y})," ",f),t?ICe.default.createElement(bSc.Pad,{active:e,length:G}):null):ICe.default.createElement(HTr.Box,{key:`spacer-${m}`,width:B,marginLeft:1})}))};lwt.ItemOptions=ESc});var WHi=z(XTr=>{"use strict";Object.defineProperty(XTr,"__esModule",{value:!0});var Uq=(Ma(),Ai(Oa)),ZHi=nl(),qM=Bn(),BSc=Uq.__importStar(iSt()),vSc=awt(),SSc=(Fl(),Ai(dg)),wSc=LKt(),TSc=Uq.__importDefault(Lh()),LHi=/^((?:[\^~]|>=?)?)([0-9]+)(\.[0-9]+)(\.[0-9]+)((?:-\S+)?)$/,VHi=(e,t)=>e.length>0?[e.slice(0,t)].concat(VHi(e.slice(t),t)):[],xJe=class extends ZHi.BaseCommand{async execute(){BSc.checkRequirements(this.context);let{ItemOptions:t}=await Promise.resolve().then(()=>Uq.__importStar(FHi())),{Pad:r}=await Promise.resolve().then(()=>Uq.__importStar(YTr())),{ScrollableItems:s}=await Promise.resolve().then(()=>Uq.__importStar(DSt())),{useMinistore:a}=await Promise.resolve().then(()=>Uq.__importStar(mSr())),{renderForm:o}=await Promise.resolve().then(()=>Uq.__importStar(xSt())),{Box:g,Text:p}=await Promise.resolve().then(()=>Uq.__importStar(HM())),{default:f,useEffect:m,useRef:y,useState:B}=await Promise.resolve().then(()=>Uq.__importStar(Pm())),v=await qM.Configuration.find(this.context.cwd,this.context.plugins),{project:G,workspace:T}=await qM.Project.find(v,this.context.cwd),O=await qM.Cache.find(v);if(!T)throw new ZHi.WorkspaceRequiredError(G.cwd,this.context.cwd);await G.restoreInstallState({restoreResolutions:!1});let X=this.context.stdout.rows-7,U=(et,Ue)=>{let Je=(0,wSc.diffWords)(et,Ue),Xe="";for(let ft of Je)ft.added?Xe+=qM.formatUtils.pretty(v,ft.value,"green"):ft.removed||(Xe+=ft.value);return Xe},le=(et,Ue)=>{if(et===Ue)return Ue;let Je=qM.structUtils.parseRange(et),Xe=qM.structUtils.parseRange(Ue),ft=Je.selector.match(LHi),Gt=Xe.selector.match(LHi);if(!ft||!Gt)return U(et,Ue);let er=["gray","red","yellow","green","magenta"],Ur=null,Ot="";for(let dr=1;dr{let Xe=await vSc.suggestUtils.fetchDescriptorFrom(et,Je,{project:G,cache:O,preserveModifier:Ue,workspace:T});return Xe!==null?Xe.range:et.range},ge=async et=>{let Ue=TSc.default.valid(et.range)?`^${et.range}`:et.range,[Je,Xe]=await Promise.all([ae(et,et.range,Ue).catch(()=>null),ae(et,et.range,"latest").catch(()=>null)]),ft=[{value:null,label:et.range}];return Je&&Je!==et.range?ft.push({value:Je,label:le(et.range,Je)}):ft.push({value:null,label:""}),Xe&&Xe!==Je&&Xe!==et.range?ft.push({value:Xe,label:le(et.range,Xe)}):ft.push({value:null,label:""}),ft},fe=()=>f.createElement(g,{flexDirection:"row"},f.createElement(g,{flexDirection:"column",width:49},f.createElement(g,{marginLeft:1},f.createElement(p,null,"Press ",f.createElement(p,{bold:!0,color:"cyanBright"},""),"/",f.createElement(p,{bold:!0,color:"cyanBright"},"")," to select packages.")),f.createElement(g,{marginLeft:1},f.createElement(p,null,"Press ",f.createElement(p,{bold:!0,color:"cyanBright"},""),"/",f.createElement(p,{bold:!0,color:"cyanBright"},"")," to select versions."))),f.createElement(g,{flexDirection:"column"},f.createElement(g,{marginLeft:1},f.createElement(p,null,"Press ",f.createElement(p,{bold:!0,color:"cyanBright"},"")," to install.")),f.createElement(g,{marginLeft:1},f.createElement(p,null,"Press ",f.createElement(p,{bold:!0,color:"cyanBright"},"")," to abort.")))),pe=()=>f.createElement(g,{flexDirection:"row",paddingTop:1,paddingBottom:1},f.createElement(g,{width:50},f.createElement(p,{bold:!0},f.createElement(p,{color:"greenBright"},"?")," Pick the packages you want to upgrade.")),f.createElement(g,{width:17},f.createElement(p,{bold:!0,underline:!0,color:"gray"},"Current")),f.createElement(g,{width:17},f.createElement(p,{bold:!0,underline:!0,color:"gray"},"Range")),f.createElement(g,{width:17},f.createElement(p,{bold:!0,underline:!0,color:"gray"},"Latest"))),he=({active:et,descriptor:Ue,suggestions:Je})=>{let[Xe,ft]=a(Ue.descriptorHash,null),Gt=qM.structUtils.stringifyIdent(Ue),er=Math.max(0,45-Gt.length);return f.createElement(f.Fragment,null,f.createElement(g,null,f.createElement(g,{width:45},f.createElement(p,{bold:!0},qM.structUtils.prettyIdent(v,Ue)),f.createElement(r,{active:et,length:er})),f.createElement(t,{active:et,options:Je,value:Xe,skewer:!0,onChange:ft,sizes:[17,17,17]})))},be=({dependencies:et})=>{let[Ue,Je]=B(et.map(()=>null)),Xe=y(!0),ft=async Gt=>{let er=await ge(Gt);return er.filter(Ur=>Ur.label!=="").length<=1?null:{descriptor:Gt,suggestions:er}};return m(()=>()=>{Xe.current=!1},[]),m(()=>{let Gt=Math.trunc(X*1.75),er=et.slice(0,Gt),Ur=et.slice(Gt),Ot=VHi(Ur,X),dr=er.map(ft).reduce(async(Ar,or)=>{await Ar;let Fr=await or;Fr!==null&&Xe.current&&Je($r=>{let Or=$r.findIndex(Br=>Br===null),In=[...$r];return In[Or]=Fr,In})},Promise.resolve());Ot.reduce((Ar,or)=>Promise.all(or.map(Fr=>Promise.resolve().then(()=>ft(Fr)))).then(async Fr=>{Fr=Fr.filter($r=>$r!==null),await Ar,Xe.current&&Je($r=>{let Or=$r.findIndex(In=>In===null);return $r.slice(0,Or).concat(Fr).concat($r.slice(Or+Fr.length))})}),dr).then(()=>{Xe.current&&Je(Ar=>Ar.filter(or=>or!==null))})},[]),Ue.length?f.createElement(s,{radius:X>>1,children:Ue.map((Gt,er)=>Gt!==null?f.createElement(he,{key:er,active:!1,descriptor:Gt.descriptor,suggestions:Gt.suggestions}):f.createElement(p,{key:er},"Loading..."))}):f.createElement(p,null,"No upgrades found")},ke=await o(({useSubmit:et})=>{et(a());let Ue=new Map;for(let Xe of G.workspaces)for(let ft of["dependencies","devDependencies"])for(let Gt of Xe.manifest[ft].values())G.tryWorkspaceByDescriptor(Gt)===null&&(Gt.range.startsWith("link:")||Ue.set(Gt.descriptorHash,Gt));let Je=qM.miscUtils.sortMap(Ue.values(),Xe=>qM.structUtils.stringifyDescriptor(Xe));return f.createElement(g,{flexDirection:"column"},f.createElement(fe,null),f.createElement(pe,null),f.createElement(be,{dependencies:Je}))},{},{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});if(typeof ke>"u")return 1;let x=!1;for(let et of G.workspaces)for(let Ue of["dependencies","devDependencies"]){let Je=et.manifest[Ue];for(let Xe of Je.values()){let ft=ke.get(Xe.descriptorHash);typeof ft<"u"&&ft!==null&&(Je.set(Xe.identHash,qM.structUtils.makeDescriptor(Xe,ft)),x=!0)}}return x?await G.installWithNewReport({quiet:this.context.quiet,stdout:this.context.stdout},{cache:O}):0}};xJe.paths=[["upgrade-interactive"]];xJe.usage=SSc.Command.Usage({category:"Interactive commands",description:"open the upgrade interface",details:` + `,examples:[["Add a package to a single workspace","yarn workspace components add -D react"],["Run build script on a single workspace","yarn workspace components run build"]]});UTr.default=kJe});var uwt=z(Du=>{"use strict";Object.defineProperty(Du,"__esModule",{value:!0});Du.suggestUtils=Du.dedupeUtils=Du.WorkspaceCommand=Du.WorkspacesListCommand=Du.WhyCommand=Du.UpCommand=Du.UnlinkCommand=Du.SetVersionCommand=Du.SetVersionSourcesCommand=Du.SetResolutionCommand=Du.RunCommand=Du.RunIndexCommand=Du.RemoveCommand=Du.RebuildCommand=Du.PluginRuntimeCommand=Du.PluginRemoveCommand=Du.PluginListCommand=Du.PluginImportCommand=Du.PluginCheckCommand=Du.PluginImportSourcesCommand=Du.NodeCommand=Du.LinkCommand=Du.YarnCommand=Du.InfoCommand=Du.ExplainCommand=Du.ExplainPeerRequirementsCommand=Du.ExecCommand=Du.VersionCommand=Du.EntryCommand=Du.HelpCommand=Du.ClipanionCommand=Du.DedupeCommand=Du.ConfigCommand=Du.ConfigUnsetCommand=Du.ConfigSetCommand=Du.ConfigGetCommand=Du.CacheCleanCommand=Du.BinCommand=Du.AddCommand=void 0;var MC=(Oa(),Ai(Pa)),KTr=Bn(),TSc=nAe(),iHi=MC.__importDefault(sQi());Du.AddCommand=iHi.default;var sHi=MC.__importDefault(oQi());Du.BinCommand=sHi.default;var oHi=MC.__importDefault(cQi());Du.CacheCleanCommand=oHi.default;var aHi=MC.__importDefault(gQi());Du.ConfigGetCommand=aHi.default;var cHi=MC.__importDefault(n5i());Du.ConfigSetCommand=cHi.default;var lHi=MC.__importDefault(f5i());Du.ConfigUnsetCommand=lHi.default;var uHi=MC.__importDefault(I5i());Du.ConfigCommand=uHi.default;var gHi=MC.__importDefault(h5i());Du.DedupeCommand=gHi.default;var AHi=MC.__importDefault(_5i());Du.ClipanionCommand=AHi.default;var dHi=MC.__importDefault(y5i());Du.HelpCommand=dHi.default;var pHi=MC.__importDefault(B5i());Du.EntryCommand=pHi.default;var fHi=MC.__importDefault(v5i());Du.VersionCommand=fHi.default;var IHi=MC.__importDefault(w5i());Du.ExecCommand=IHi.default;var CHi=MC.__importDefault(D5i());Du.ExplainPeerRequirementsCommand=CHi.default;var mHi=MC.__importDefault(Z5i());Du.ExplainCommand=mHi.default;var hHi=MC.__importDefault(V5i());Du.InfoCommand=hHi.default;var _Hi=MC.__importDefault(Q5i());Du.YarnCommand=_Hi.default;var yHi=MC.__importDefault(M5i());Du.LinkCommand=yHi.default;var bHi=MC.__importDefault(Y5i());Du.NodeCommand=bHi.default;var EHi=MC.__importDefault(J5i());Du.PluginCheckCommand=EHi.default;var BHi=MC.__importDefault(cTr());Du.PluginImportSourcesCommand=BHi.default;var vHi=MC.__importDefault(uTr());Du.PluginImportCommand=vHi.default;var SHi=MC.__importDefault(AJe());Du.PluginListCommand=SHi.default;var wHi=MC.__importDefault(tMi());Du.PluginRemoveCommand=wHi.default;var THi=MC.__importDefault(iMi());Du.PluginRuntimeCommand=THi.default;var NHi=MC.__importDefault(cMi());Du.RebuildCommand=NHi.default;var RHi=MC.__importDefault(gMi());Du.RemoveCommand=RHi.default;var DHi=MC.__importDefault(dMi());Du.RunIndexCommand=DHi.default;var xHi=MC.__importDefault(IMi());Du.RunCommand=xHi.default;var kHi=MC.__importDefault(hMi());Du.SetResolutionCommand=kHi.default;var GHi=MC.__importDefault(aTr());Du.SetVersionSourcesCommand=GHi.default;var FHi=MC.__importDefault(KSt());Du.SetVersionCommand=FHi.default;var ZHi=MC.__importDefault(yMi());Du.UnlinkCommand=ZHi.default;var LHi=MC.__importDefault(EMi());Du.UpCommand=LHi.default;var VHi=MC.__importDefault(vMi());Du.WhyCommand=VHi.default;var WHi=MC.__importDefault(eHi());Du.WorkspacesListCommand=WHi.default;var PHi=MC.__importDefault(nHi());Du.WorkspaceCommand=PHi.default;var NSc=MC.__importStar(Wwr());Du.dedupeUtils=NSc;var OHi=MC.__importStar(O4e());Du.suggestUtils=OHi;var RSc={configuration:{enableImmutableInstalls:{description:"If true (the default on CI), prevents the install command from modifying the lockfile",type:KTr.SettingsType.BOOLEAN,default:TSc.isCI},defaultSemverRangePrefix:{description:"The default save prefix: '^', '~' or ''",type:KTr.SettingsType.STRING,values:["^","~",""],default:OHi.Modifier.CARET},preferReuse:{description:"If true, `yarn add` will attempt to reuse the most common dependency range in other workspaces.",type:KTr.SettingsType.BOOLEAN,default:!1}},commands:[oHi.default,aHi.default,cHi.default,lHi.default,kHi.default,GHi.default,FHi.default,WHi.default,AHi.default,dHi.default,pHi.default,fHi.default,iHi.default,sHi.default,uHi.default,gHi.default,IHi.default,CHi.default,mHi.default,hHi.default,_Hi.default,yHi.default,ZHi.default,bHi.default,EHi.default,BHi.default,vHi.default,wHi.default,SHi.default,THi.default,NHi.default,RHi.default,DHi.default,xHi.default,LHi.default,VHi.default,PHi.default]};Du.default=RSc});var jTr=z(gwt=>{"use strict";Object.defineProperty(gwt,"__esModule",{value:!0});gwt.Pad=void 0;var DSc=(Oa(),Ai(Pa)),xSc=JQ(),kSc=DSc.__importDefault(Om()),GSc=({length:e,active:t})=>{if(e===0)return null;let r=e>1?` ${"-".repeat(e-1)}`:" ";return kSc.default.createElement(xSc.Text,{dimColor:!t},r)};gwt.Pad=GSc});var QHi=z(Awt=>{"use strict";Object.defineProperty(Awt,"__esModule",{value:!0});Awt.ItemOptions=void 0;var FSc=(Oa(),Ai(Pa)),zTr=JQ(),mCe=FSc.__importDefault(Om()),ZSc=xSt(),LSc=NSt(),VSc=jTr(),WSc=function({active:e,skewer:t,options:r,value:s,onChange:a,sizes:o=[]}){let g=r.filter(({label:f})=>!!f).map(({value:f})=>f),p=r.findIndex(f=>f.value===s&&f.label!="");return(0,ZSc.useListInput)(s,g,{active:e,minus:"left",plus:"right",set:a}),mCe.default.createElement(mCe.default.Fragment,null,r.map(({label:f},m)=>{let y=m===p,B=o[m]-1||0,v=f.replace(/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g,""),k=Math.max(0,B-v.length-2);return f?mCe.default.createElement(zTr.Box,{key:f,width:B,marginLeft:1},mCe.default.createElement(zTr.Text,{wrap:"truncate"},mCe.default.createElement(LSc.Gem,{active:y})," ",f),t?mCe.default.createElement(VSc.Pad,{active:e,length:k}):null):mCe.default.createElement(zTr.Box,{key:`spacer-${m}`,width:B,marginLeft:1})}))};Awt.ItemOptions=WSc});var XHi=z(qTr=>{"use strict";Object.defineProperty(qTr,"__esModule",{value:!0});var jq=(Oa(),Ai(Pa)),MHi=il(),e5=Bn(),PSc=jq.__importStar(aSt()),OSc=uwt(),QSc=(Zl(),Ai(pg)),MSc=PKt(),HSc=jq.__importDefault(Vh()),HHi=/^((?:[\^~]|>=?)?)([0-9]+)(\.[0-9]+)(\.[0-9]+)((?:-\S+)?)$/,YHi=(e,t)=>e.length>0?[e.slice(0,t)].concat(YHi(e.slice(t),t)):[],GJe=class extends MHi.BaseCommand{async execute(){PSc.checkRequirements(this.context);let{ItemOptions:t}=await Promise.resolve().then(()=>jq.__importStar(QHi())),{Pad:r}=await Promise.resolve().then(()=>jq.__importStar(jTr())),{ScrollableItems:s}=await Promise.resolve().then(()=>jq.__importStar(GSt())),{useMinistore:a}=await Promise.resolve().then(()=>jq.__importStar(BSr())),{renderForm:o}=await Promise.resolve().then(()=>jq.__importStar(FSt())),{Box:g,Text:p}=await Promise.resolve().then(()=>jq.__importStar(JQ())),{default:f,useEffect:m,useRef:y,useState:B}=await Promise.resolve().then(()=>jq.__importStar(Om())),v=await e5.Configuration.find(this.context.cwd,this.context.plugins),{project:k,workspace:T}=await e5.Project.find(v,this.context.cwd),O=await e5.Cache.find(v);if(!T)throw new MHi.WorkspaceRequiredError(k.cwd,this.context.cwd);await k.restoreInstallState({restoreResolutions:!1});let X=this.context.stdout.rows-7,U=(et,Ue)=>{let Je=(0,MSc.diffWords)(et,Ue),Xe="";for(let ft of Je)ft.added?Xe+=e5.formatUtils.pretty(v,ft.value,"green"):ft.removed||(Xe+=ft.value);return Xe},le=(et,Ue)=>{if(et===Ue)return Ue;let Je=e5.structUtils.parseRange(et),Xe=e5.structUtils.parseRange(Ue),ft=Je.selector.match(HHi),Gt=Xe.selector.match(HHi);if(!ft||!Gt)return U(et,Ue);let er=["gray","red","yellow","green","magenta"],Ur=null,Ot="";for(let dr=1;dr{let Xe=await OSc.suggestUtils.fetchDescriptorFrom(et,Je,{project:k,cache:O,preserveModifier:Ue,workspace:T});return Xe!==null?Xe.range:et.range},ge=async et=>{let Ue=HSc.default.valid(et.range)?`^${et.range}`:et.range,[Je,Xe]=await Promise.all([ae(et,et.range,Ue).catch(()=>null),ae(et,et.range,"latest").catch(()=>null)]),ft=[{value:null,label:et.range}];return Je&&Je!==et.range?ft.push({value:Je,label:le(et.range,Je)}):ft.push({value:null,label:""}),Xe&&Xe!==Je&&Xe!==et.range?ft.push({value:Xe,label:le(et.range,Xe)}):ft.push({value:null,label:""}),ft},fe=()=>f.createElement(g,{flexDirection:"row"},f.createElement(g,{flexDirection:"column",width:49},f.createElement(g,{marginLeft:1},f.createElement(p,null,"Press ",f.createElement(p,{bold:!0,color:"cyanBright"},""),"/",f.createElement(p,{bold:!0,color:"cyanBright"},"")," to select packages.")),f.createElement(g,{marginLeft:1},f.createElement(p,null,"Press ",f.createElement(p,{bold:!0,color:"cyanBright"},""),"/",f.createElement(p,{bold:!0,color:"cyanBright"},"")," to select versions."))),f.createElement(g,{flexDirection:"column"},f.createElement(g,{marginLeft:1},f.createElement(p,null,"Press ",f.createElement(p,{bold:!0,color:"cyanBright"},"")," to install.")),f.createElement(g,{marginLeft:1},f.createElement(p,null,"Press ",f.createElement(p,{bold:!0,color:"cyanBright"},"")," to abort.")))),pe=()=>f.createElement(g,{flexDirection:"row",paddingTop:1,paddingBottom:1},f.createElement(g,{width:50},f.createElement(p,{bold:!0},f.createElement(p,{color:"greenBright"},"?")," Pick the packages you want to upgrade.")),f.createElement(g,{width:17},f.createElement(p,{bold:!0,underline:!0,color:"gray"},"Current")),f.createElement(g,{width:17},f.createElement(p,{bold:!0,underline:!0,color:"gray"},"Range")),f.createElement(g,{width:17},f.createElement(p,{bold:!0,underline:!0,color:"gray"},"Latest"))),he=({active:et,descriptor:Ue,suggestions:Je})=>{let[Xe,ft]=a(Ue.descriptorHash,null),Gt=e5.structUtils.stringifyIdent(Ue),er=Math.max(0,45-Gt.length);return f.createElement(f.Fragment,null,f.createElement(g,null,f.createElement(g,{width:45},f.createElement(p,{bold:!0},e5.structUtils.prettyIdent(v,Ue)),f.createElement(r,{active:et,length:er})),f.createElement(t,{active:et,options:Je,value:Xe,skewer:!0,onChange:ft,sizes:[17,17,17]})))},be=({dependencies:et})=>{let[Ue,Je]=B(et.map(()=>null)),Xe=y(!0),ft=async Gt=>{let er=await ge(Gt);return er.filter(Ur=>Ur.label!=="").length<=1?null:{descriptor:Gt,suggestions:er}};return m(()=>()=>{Xe.current=!1},[]),m(()=>{let Gt=Math.trunc(X*1.75),er=et.slice(0,Gt),Ur=et.slice(Gt),Ot=YHi(Ur,X),dr=er.map(ft).reduce(async(Ar,or)=>{await Ar;let Fr=await or;Fr!==null&&Xe.current&&Je($r=>{let Or=$r.findIndex(Br=>Br===null),In=[...$r];return In[Or]=Fr,In})},Promise.resolve());Ot.reduce((Ar,or)=>Promise.all(or.map(Fr=>Promise.resolve().then(()=>ft(Fr)))).then(async Fr=>{Fr=Fr.filter($r=>$r!==null),await Ar,Xe.current&&Je($r=>{let Or=$r.findIndex(In=>In===null);return $r.slice(0,Or).concat(Fr).concat($r.slice(Or+Fr.length))})}),dr).then(()=>{Xe.current&&Je(Ar=>Ar.filter(or=>or!==null))})},[]),Ue.length?f.createElement(s,{radius:X>>1,children:Ue.map((Gt,er)=>Gt!==null?f.createElement(he,{key:er,active:!1,descriptor:Gt.descriptor,suggestions:Gt.suggestions}):f.createElement(p,{key:er},"Loading..."))}):f.createElement(p,null,"No upgrades found")},ke=await o(({useSubmit:et})=>{et(a());let Ue=new Map;for(let Xe of k.workspaces)for(let ft of["dependencies","devDependencies"])for(let Gt of Xe.manifest[ft].values())k.tryWorkspaceByDescriptor(Gt)===null&&(Gt.range.startsWith("link:")||Ue.set(Gt.descriptorHash,Gt));let Je=e5.miscUtils.sortMap(Ue.values(),Xe=>e5.structUtils.stringifyDescriptor(Xe));return f.createElement(g,{flexDirection:"column"},f.createElement(fe,null),f.createElement(pe,null),f.createElement(be,{dependencies:Je}))},{},{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});if(typeof ke>"u")return 1;let x=!1;for(let et of k.workspaces)for(let Ue of["dependencies","devDependencies"]){let Je=et.manifest[Ue];for(let Xe of Je.values()){let ft=ke.get(Xe.descriptorHash);typeof ft<"u"&&ft!==null&&(Je.set(Xe.identHash,e5.structUtils.makeDescriptor(Xe,ft)),x=!0)}}return x?await k.installWithNewReport({quiet:this.context.quiet,stdout:this.context.stdout},{cache:O}):0}};GJe.paths=[["upgrade-interactive"]];GJe.usage=QSc.Command.Usage({category:"Interactive commands",description:"open the upgrade interface",details:` This command opens a fullscreen terminal interface where you can see any out of date packages used by your application, their status compared to the latest versions available on the remote registry, and select packages to upgrade. - `,examples:[["Open the upgrade window","yarn upgrade-interactive"]]});XTr.default=xJe});var QHi=z(CCe=>{"use strict";Object.defineProperty(CCe,"__esModule",{value:!0});CCe.UpgradeInteractiveCommand=CCe.SearchCommand=void 0;var PHi=(Ma(),Ai(Oa)),OHi=PHi.__importDefault(uPi());CCe.SearchCommand=OHi.default;var MHi=PHi.__importDefault(WHi());CCe.UpgradeInteractiveCommand=MHi.default;var NSc={commands:[OHi.default,MHi.default]};CCe.default=NSc});var HHi=z(JTr=>{"use strict";Object.defineProperty(JTr,"__esModule",{value:!0});var YHi=nl(),uwt=Bn(),RSc=Bn(),kJe=(Fl(),Ai(dg)),GJe=class extends YHi.BaseCommand{constructor(){super(...arguments),this.json=kJe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.production=kJe.Option.Boolean("--production",!1,{description:"Only install regular dependencies by omitting dev dependencies"}),this.all=kJe.Option.Boolean("-A,--all",!1,{description:"Install the entire project"}),this.workspaces=kJe.Option.Rest()}async execute(){let t=await uwt.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await uwt.Project.find(t,this.context.cwd),a=await uwt.Cache.find(t);await r.restoreInstallState({restoreResolutions:!1});let o;if(this.all)o=new Set(r.workspaces);else if(this.workspaces.length===0){if(!s)throw new YHi.WorkspaceRequiredError(r.cwd,this.context.cwd);o=new Set([s])}else o=new Set(this.workspaces.map(g=>r.getWorkspaceByIdent(RSc.structUtils.parseIdent(g))));for(let g of o)for(let p of this.production?["dependencies"]:uwt.Manifest.hardDependencies)for(let f of g.manifest.getForScope(p).values()){let m=r.tryWorkspaceByDescriptor(f);m!==null&&o.add(m)}for(let g of r.workspaces)o.has(g)?this.production&&g.manifest.devDependencies.clear():(g.manifest.installConfig=g.manifest.installConfig||{},g.manifest.installConfig.selfReferences=!1,g.manifest.dependencies.clear(),g.manifest.devDependencies.clear(),g.manifest.peerDependencies.clear(),g.manifest.scripts.clear());return await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:a,persistProject:!1})}};GJe.paths=[["workspaces","focus"]];GJe.usage=kJe.Command.Usage({category:"Workspace-related commands",description:"install a single workspace and its dependencies",details:"\n This command will run an install as if the specified workspaces (and all other workspaces they depend on) were the only ones in the project. If no workspaces are explicitly listed, the active one will be assumed.\n\n Note that this command is only very moderately useful when using zero-installs, since the cache will contain all the packages anyway - meaning that the only difference between a full install and a focused install would just be a few extra lines in the `.pnp.cjs` file, at the cost of introducing an extra complexity.\n\n If the `-A,--all` flag is set, the entire project will be installed. Combine with `--production` to replicate the old `yarn install --production`.\n "});JTr.default=GJe});var UHi=z(zTr=>{"use strict";Object.defineProperty(zTr,"__esModule",{value:!0});var jTr=(Ma(),Ai(Oa)),XHi=nl(),UTr=Bn(),KTr=Bn(),C3=Bn(),DSc=ONe(),HT=(Fl(),Ai(dg)),FJe=jTr.__importDefault(sk()),xSc=jTr.__importDefault(Kge()),Kq=jTr.__importStar((_L(),Ai(hL))),YNe=class extends XHi.BaseCommand{constructor(){super(...arguments),this.from=HT.Option.Array("--from",{description:"An array of glob pattern idents or paths from which to base any recursion"}),this.all=HT.Option.Boolean("-A,--all",{description:"Run the command on all workspaces of a project"}),this.recursive=HT.Option.Boolean("-R,--recursive",{description:"Run the command on the current workspace and all of its recursive dependencies"}),this.worktree=HT.Option.Boolean("-W,--worktree",{description:"Run the command on all workspaces of the current worktree"}),this.verbose=HT.Option.Counter("-v,--verbose",{description:"Increase level of logging verbosity up to 2 times"}),this.parallel=HT.Option.Boolean("-p,--parallel",!1,{description:"Run the commands in parallel"}),this.interlaced=HT.Option.Boolean("-i,--interlaced",!1,{description:"Print the output of commands in real-time instead of buffering it"}),this.jobs=HT.Option.String("-j,--jobs",{description:"The maximum number of parallel tasks that the execution will be limited to; or `unlimited`",validator:Kq.isOneOf([Kq.isEnum(["unlimited"]),Kq.applyCascade(Kq.isNumber(),[Kq.isInteger(),Kq.isAtLeast(1)])])}),this.topological=HT.Option.Boolean("-t,--topological",!1,{description:"Run the command after all workspaces it depends on (regular) have finished"}),this.topologicalDev=HT.Option.Boolean("--topological-dev",!1,{description:"Run the command after all workspaces it depends on (regular + dev) have finished"}),this.include=HT.Option.Array("--include",[],{description:"An array of glob pattern idents or paths; only matching workspaces will be traversed"}),this.exclude=HT.Option.Array("--exclude",[],{description:"An array of glob pattern idents or paths; matching workspaces won't be traversed"}),this.publicOnly=HT.Option.Boolean("--no-private",{description:"Avoid running the command on private workspaces"}),this.since=HT.Option.String("--since",{description:"Only include workspaces that have been changed since the specified ref.",tolerateBoolean:!0}),this.dryRun=HT.Option.Boolean("-n,--dry-run",{description:"Print the commands that would be run, without actually running them"}),this.commandName=HT.Option.String(),this.args=HT.Option.Proxy()}async execute(){let t=await UTr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await UTr.Project.find(t,this.context.cwd);if(!this.all&&!s)throw new XHi.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=this.cli.process([this.commandName,...this.args]),o=a.path.length===1&&a.path[0]==="run"&&typeof a.scriptName<"u"?a.scriptName:null;if(a.path.length===0)throw new HT.UsageError("Invalid subcommand name for iteration - use the 'run' keyword if you wish to execute a script");let g=Te=>{this.dryRun&&this.context.stdout.write(`${Te} -`)},p=()=>{let Te=this.from.map(ke=>FJe.default.matcher(ke));return r.workspaces.filter(ke=>{let x=C3.structUtils.stringifyIdent(ke.anchoredLocator),et=ke.relativeCwd;return Te.some(Ue=>Ue(x)||Ue(et))})},f=[];if(this.since?(g("Option --since is set; selecting the changed workspaces as root for workspace selection"),f=Array.from(await DSc.gitUtils.fetchChangedWorkspaces({ref:this.since,project:r}))):this.from?(g("Option --from is set; selecting the specified workspaces"),f=[...p()]):this.worktree?(g("Option --worktree is set; selecting the current workspace"),f=[s]):this.recursive?(g("Option --recursive is set; selecting the current workspace"),f=[s]):this.all&&(g("Option --all is set; selecting all workspaces"),f=[...r.workspaces]),this.dryRun&&!this.all){for(let Te of f)g(` + `,examples:[["Open the upgrade window","yarn upgrade-interactive"]]});qTr.default=GJe});var jHi=z(hCe=>{"use strict";Object.defineProperty(hCe,"__esModule",{value:!0});hCe.UpgradeInteractiveCommand=hCe.SearchCommand=void 0;var JHi=(Oa(),Ai(Pa)),UHi=JHi.__importDefault(CPi());hCe.SearchCommand=UHi.default;var KHi=JHi.__importDefault(XHi());hCe.UpgradeInteractiveCommand=KHi.default;var YSc={commands:[UHi.default,KHi.default]};hCe.default=YSc});var qHi=z($Tr=>{"use strict";Object.defineProperty($Tr,"__esModule",{value:!0});var zHi=il(),dwt=Bn(),XSc=Bn(),FJe=(Zl(),Ai(pg)),ZJe=class extends zHi.BaseCommand{constructor(){super(...arguments),this.json=FJe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.production=FJe.Option.Boolean("--production",!1,{description:"Only install regular dependencies by omitting dev dependencies"}),this.all=FJe.Option.Boolean("-A,--all",!1,{description:"Install the entire project"}),this.workspaces=FJe.Option.Rest()}async execute(){let t=await dwt.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await dwt.Project.find(t,this.context.cwd),a=await dwt.Cache.find(t);await r.restoreInstallState({restoreResolutions:!1});let o;if(this.all)o=new Set(r.workspaces);else if(this.workspaces.length===0){if(!s)throw new zHi.WorkspaceRequiredError(r.cwd,this.context.cwd);o=new Set([s])}else o=new Set(this.workspaces.map(g=>r.getWorkspaceByIdent(XSc.structUtils.parseIdent(g))));for(let g of o)for(let p of this.production?["dependencies"]:dwt.Manifest.hardDependencies)for(let f of g.manifest.getForScope(p).values()){let m=r.tryWorkspaceByDescriptor(f);m!==null&&o.add(m)}for(let g of r.workspaces)o.has(g)?this.production&&g.manifest.devDependencies.clear():(g.manifest.installConfig=g.manifest.installConfig||{},g.manifest.installConfig.selfReferences=!1,g.manifest.dependencies.clear(),g.manifest.devDependencies.clear(),g.manifest.peerDependencies.clear(),g.manifest.scripts.clear());return await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:a,persistProject:!1})}};ZJe.paths=[["workspaces","focus"]];ZJe.usage=FJe.Command.Usage({category:"Workspace-related commands",description:"install a single workspace and its dependencies",details:"\n This command will run an install as if the specified workspaces (and all other workspaces they depend on) were the only ones in the project. If no workspaces are explicitly listed, the active one will be assumed.\n\n Note that this command is only very moderately useful when using zero-installs, since the cache will contain all the packages anyway - meaning that the only difference between a full install and a focused install would just be a few extra lines in the `.pnp.cjs` file, at the cost of introducing an extra complexity.\n\n If the `-A,--all` flag is set, the entire project will be installed. Combine with `--production` to replicate the old `yarn install --production`.\n "});$Tr.default=ZJe});var tYi=z(nNr=>{"use strict";Object.defineProperty(nNr,"__esModule",{value:!0});var rNr=(Oa(),Ai(Pa)),$Hi=il(),eNr=Bn(),tNr=Bn(),_3=Bn(),JSc=MNe(),XT=(Zl(),Ai(pg)),LJe=rNr.__importDefault(gk()),USc=rNr.__importDefault(iAe()),zq=rNr.__importStar((yL(),Ai(_L))),XNe=class extends $Hi.BaseCommand{constructor(){super(...arguments),this.from=XT.Option.Array("--from",{description:"An array of glob pattern idents or paths from which to base any recursion"}),this.all=XT.Option.Boolean("-A,--all",{description:"Run the command on all workspaces of a project"}),this.recursive=XT.Option.Boolean("-R,--recursive",{description:"Run the command on the current workspace and all of its recursive dependencies"}),this.worktree=XT.Option.Boolean("-W,--worktree",{description:"Run the command on all workspaces of the current worktree"}),this.verbose=XT.Option.Counter("-v,--verbose",{description:"Increase level of logging verbosity up to 2 times"}),this.parallel=XT.Option.Boolean("-p,--parallel",!1,{description:"Run the commands in parallel"}),this.interlaced=XT.Option.Boolean("-i,--interlaced",!1,{description:"Print the output of commands in real-time instead of buffering it"}),this.jobs=XT.Option.String("-j,--jobs",{description:"The maximum number of parallel tasks that the execution will be limited to; or `unlimited`",validator:zq.isOneOf([zq.isEnum(["unlimited"]),zq.applyCascade(zq.isNumber(),[zq.isInteger(),zq.isAtLeast(1)])])}),this.topological=XT.Option.Boolean("-t,--topological",!1,{description:"Run the command after all workspaces it depends on (regular) have finished"}),this.topologicalDev=XT.Option.Boolean("--topological-dev",!1,{description:"Run the command after all workspaces it depends on (regular + dev) have finished"}),this.include=XT.Option.Array("--include",[],{description:"An array of glob pattern idents or paths; only matching workspaces will be traversed"}),this.exclude=XT.Option.Array("--exclude",[],{description:"An array of glob pattern idents or paths; matching workspaces won't be traversed"}),this.publicOnly=XT.Option.Boolean("--no-private",{description:"Avoid running the command on private workspaces"}),this.since=XT.Option.String("--since",{description:"Only include workspaces that have been changed since the specified ref.",tolerateBoolean:!0}),this.dryRun=XT.Option.Boolean("-n,--dry-run",{description:"Print the commands that would be run, without actually running them"}),this.commandName=XT.Option.String(),this.args=XT.Option.Proxy()}async execute(){let t=await eNr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await eNr.Project.find(t,this.context.cwd);if(!this.all&&!s)throw new $Hi.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=this.cli.process([this.commandName,...this.args]),o=a.path.length===1&&a.path[0]==="run"&&typeof a.scriptName<"u"?a.scriptName:null;if(a.path.length===0)throw new XT.UsageError("Invalid subcommand name for iteration - use the 'run' keyword if you wish to execute a script");let g=Te=>{this.dryRun&&this.context.stdout.write(`${Te} +`)},p=()=>{let Te=this.from.map(ke=>LJe.default.matcher(ke));return r.workspaces.filter(ke=>{let x=_3.structUtils.stringifyIdent(ke.anchoredLocator),et=ke.relativeCwd;return Te.some(Ue=>Ue(x)||Ue(et))})},f=[];if(this.since?(g("Option --since is set; selecting the changed workspaces as root for workspace selection"),f=Array.from(await JSc.gitUtils.fetchChangedWorkspaces({ref:this.since,project:r}))):this.from?(g("Option --from is set; selecting the specified workspaces"),f=[...p()]):this.worktree?(g("Option --worktree is set; selecting the current workspace"),f=[s]):this.recursive?(g("Option --recursive is set; selecting the current workspace"),f=[s]):this.all&&(g("Option --all is set; selecting all workspaces"),f=[...r.workspaces]),this.dryRun&&!this.all){for(let Te of f)g(` - ${Te.relativeCwd} - ${C3.structUtils.prettyLocator(t,Te.anchoredLocator)}`);f.length>0&&g("")}let m;if(this.recursive?this.since?(g("Option --recursive --since is set; recursively selecting all dependent workspaces"),m=new Set(f.map(Te=>[...Te.getRecursiveWorkspaceDependents()]).flat())):(g("Option --recursive is set; recursively selecting all transitive dependencies"),m=new Set(f.map(Te=>[...Te.getRecursiveWorkspaceDependencies()]).flat())):this.worktree?(g("Option --worktree is set; recursively selecting all nested workspaces"),m=new Set(f.map(Te=>[...Te.getRecursiveWorkspaceChildren()]).flat())):m=null,m!==null&&(f=[...new Set([...f,...m])],this.dryRun))for(let Te of m)g(` + ${_3.structUtils.prettyLocator(t,Te.anchoredLocator)}`);f.length>0&&g("")}let m;if(this.recursive?this.since?(g("Option --recursive --since is set; recursively selecting all dependent workspaces"),m=new Set(f.map(Te=>[...Te.getRecursiveWorkspaceDependents()]).flat())):(g("Option --recursive is set; recursively selecting all transitive dependencies"),m=new Set(f.map(Te=>[...Te.getRecursiveWorkspaceDependencies()]).flat())):this.worktree?(g("Option --worktree is set; recursively selecting all nested workspaces"),m=new Set(f.map(Te=>[...Te.getRecursiveWorkspaceChildren()]).flat())):m=null,m!==null&&(f=[...new Set([...f,...m])],this.dryRun))for(let Te of m)g(` - ${Te.relativeCwd} - ${C3.structUtils.prettyLocator(t,Te.anchoredLocator)}`);let y=[],B=!1;if(o?.includes(":")){for(let Te of r.workspaces)if(Te.manifest.scripts.has(o)&&(B=!B,B===!1))break}for(let Te of f){if(o&&!Te.manifest.scripts.has(o)&&!B&&!(await UTr.scriptUtils.getWorkspaceAccessibleBinaries(Te)).has(o)){g(`Excluding ${Te.relativeCwd} because it doesn't have a "${o}" script`);continue}if(!(o===t.env.npm_lifecycle_event&&Te.cwd===s.cwd)){if(this.include.length>0&&!FJe.default.isMatch(C3.structUtils.stringifyIdent(Te.anchoredLocator),this.include)&&!FJe.default.isMatch(Te.relativeCwd,this.include)){g(`Excluding ${Te.relativeCwd} because it doesn't match the --include filter`);continue}if(this.exclude.length>0&&(FJe.default.isMatch(C3.structUtils.stringifyIdent(Te.anchoredLocator),this.exclude)||FJe.default.isMatch(Te.relativeCwd,this.exclude))){g(`Excluding ${Te.relativeCwd} because it matches the --include filter`);continue}if(this.publicOnly&&Te.manifest.private===!0){g(`Excluding ${Te.relativeCwd} because it's a private workspace and --no-private was set`);continue}y.push(Te)}}if(this.dryRun)return 0;let v=this.verbose??(this.context.stdout.isTTY?1/0:0),G=v>0,T=v>1,O=this.parallel?this.jobs==="unlimited"?1/0:Number(this.jobs)||Math.ceil(C3.nodeUtils.availableParallelism()/2):1,X=O===1?!1:this.parallel,U=X?this.interlaced:!0,le=(0,xSc.default)(O),ae=new Map,ge=new Set,fe=0,pe=null,he=!1,be=await KTr.StreamReport.start({configuration:t,stdout:this.context.stdout,includePrefix:!1},async Te=>{let ke=async(x,{commandIndex:et})=>{if(he)return-1;!X&&T&&et>1&&Te.reportSeparator();let Ue=kSc(x,{configuration:t,label:G,commandIndex:et}),[Je,Xe]=JHi(Te,{prefix:Ue,interlaced:U}),[ft,Gt]=JHi(Te,{prefix:Ue,interlaced:U});try{T&&Te.reportInfo(null,`${Ue?`${Ue} `:""}Process started`);let er=Date.now(),Ur=await this.cli.run([this.commandName,...this.args],{cwd:x.cwd,stdout:Je,stderr:ft})||0;Je.end(),ft.end(),await Xe,await Gt;let Ot=Date.now();if(T){let dr=t.get("enableTimers")?`, completed in ${C3.formatUtils.pretty(t,Ot-er,C3.formatUtils.Type.DURATION)}`:"";Te.reportInfo(null,`${Ue?`${Ue} `:""}Process exited (exit code ${Ur})${dr}`)}return Ur===130&&(he=!0,pe=Ur),Ur}catch(er){throw Je.end(),ft.end(),await Xe,await Gt,er}};for(let x of y)ae.set(x.anchoredLocator.locatorHash,x);for(;ae.size>0&&!Te.hasErrors();){let x=[];for(let[Je,Xe]of ae){if(ge.has(Xe.anchoredDescriptor.descriptorHash))continue;let ft=!0;if(this.topological||this.topologicalDev){let Gt=this.topologicalDev?new Map([...Xe.manifest.dependencies,...Xe.manifest.devDependencies]):Xe.manifest.dependencies;for(let er of Gt.values()){let Ur=r.tryWorkspaceByDescriptor(er);if(ft=Ur===null||!ae.has(Ur.anchoredLocator.locatorHash),!ft)break}}if(ft&&(ge.add(Xe.anchoredDescriptor.descriptorHash),x.push(le(async()=>{let Gt=await ke(Xe,{commandIndex:++fe});return ae.delete(Je),ge.delete(Xe.anchoredDescriptor.descriptorHash),Gt})),!X))break}if(x.length===0){let Je=Array.from(ae.values()).map(Xe=>C3.structUtils.prettyLocator(t,Xe.anchoredLocator)).join(", ");Te.reportError(KTr.MessageName.CYCLIC_DEPENDENCIES,`Dependency cycle detected (${Je})`);return}let Ue=(await Promise.all(x)).find(Je=>Je!==0);pe===null&&(pe=typeof Ue<"u"?1:pe),(this.topological||this.topologicalDev)&&typeof Ue<"u"&&Te.reportError(KTr.MessageName.UNNAMED,"The command failed for workspaces that are depended upon by other workspaces; can't satisfy the dependency graph")}});return pe!==null?pe:be.exitCode()}};YNe.paths=[["workspaces","foreach"]];YNe.usage=HT.Command.Usage({category:"Workspace-related commands",description:"run a command on all workspaces",details:"\n This command will run a given sub-command on current and all its descendant workspaces. Various flags can alter the exact behavior of the command:\n\n - If `-p,--parallel` is set, the commands will be ran in parallel; they'll by default be limited to a number of parallel tasks roughly equal to half your core number, but that can be overridden via `-j,--jobs`, or disabled by setting `-j unlimited`.\n\n - If `-p,--parallel` and `-i,--interlaced` are both set, Yarn will print the lines from the output as it receives them. If `-i,--interlaced` wasn't set, it would instead buffer the output from each process and print the resulting buffers only after their source processes have exited.\n\n - If `-t,--topological` is set, Yarn will only run the command after all workspaces that it depends on through the `dependencies` field have successfully finished executing. If `--topological-dev` is set, both the `dependencies` and `devDependencies` fields will be considered when figuring out the wait points.\n\n - If `-A,--all` is set, Yarn will run the command on all the workspaces of a project.\n\n - If `-R,--recursive` is set, Yarn will find workspaces to run the command on by recursively evaluating `dependencies` and `devDependencies` fields, instead of looking at the `workspaces` fields.\n\n - If `-W,--worktree` is set, Yarn will find workspaces to run the command on by looking at the current worktree.\n\n - If `--from` is set, Yarn will use the packages matching the 'from' glob as the starting point for any recursive search.\n\n - If `--since` is set, Yarn will only run the command on workspaces that have been modified since the specified ref. By default Yarn will use the refs specified by the `changesetBaseRefs` configuration option.\n\n - If `--dry-run` is set, Yarn will explain what it would do without actually doing anything.\n\n - The command may apply to only some workspaces through the use of `--include` which acts as a whitelist. The `--exclude` flag will do the opposite and will be a list of packages that mustn't execute the script. Both flags accept glob patterns (if valid Idents and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them.\n\n The `-v,--verbose` flag can be passed up to twice: once to prefix output lines with the originating workspace's name, and again to include start/finish/timing log lines. Maximum verbosity is enabled by default in terminal environments.\n\n If the command is `run` and the script being run does not exist the child workspace will be skipped without error.\n ",examples:[["Publish all packages","yarn workspaces foreach -A npm publish --tolerate-republish"],["Run the build script on all descendant packages","yarn workspaces foreach -A run build"],["Run the build script on current and all descendant packages in parallel, building package dependencies first","yarn workspaces foreach -Apt run build"],["Run the build script on several packages and all their dependencies, building dependencies first","yarn workspaces foreach -Rpt --from '{workspace-a,workspace-b}' run build"]]});YNe.schema=[Kq.hasKeyRelationship("all",Kq.KeyRelationship.Forbids,["from","recursive","since","worktree"],{missingIf:"undefined"}),Kq.hasAtLeastOneKey(["all","recursive","since","worktree"],{missingIf:"undefined"})];zTr.default=YNe;function JHi(e,{prefix:t,interlaced:r}){let s=e.createStreamReporter(t),a=new C3.miscUtils.DefaultStream;a.pipe(s,{end:!1}),a.on("finish",()=>{s.end()});let o=new Promise(p=>{s.on("finish",()=>{p(a.active)})});if(r)return[a,o];let g=new C3.miscUtils.BufferStream;return g.pipe(a,{end:!1}),g.on("finish",()=>{a.end()}),[g,o]}function kSc(e,{configuration:t,commandIndex:r,label:s}){if(!s)return null;let o=`[${C3.structUtils.stringifyIdent(e.anchoredLocator)}]:`,g=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],p=g[r%g.length];return C3.formatUtils.pretty(t,o,p)}});var qHi=z(mCe=>{"use strict";Object.defineProperty(mCe,"__esModule",{value:!0});mCe.WorkspacesForeachCommand=mCe.WorkspacesFocusCommand=void 0;var KHi=(Ma(),Ai(Oa)),jHi=KHi.__importDefault(HHi());mCe.WorkspacesFocusCommand=jHi.default;var zHi=KHi.__importDefault(UHi());mCe.WorkspacesForeachCommand=zHi.default;var GSc={commands:[jHi.default,zHi.default]};mCe.default=GSc});var e5i=z(gwt=>{"use strict";Object.defineProperty(gwt,"__esModule",{value:!0});gwt.hasDefinitelyTyped=void 0;var FSc=(Ma(),Ai(Oa)),$Hi=Bn(),ZSc=FSc.__importDefault(xvr()),LSc="e8e1bd300d860104bb8c58453ffa1eb4",VSc="OFCNCOG2CU",WSc=async(e,t)=>{let r=$Hi.structUtils.stringifyIdent(e),a=PSc(t).initIndex("npm-search");try{return(await a.getObject(r,{attributesToRetrieve:["types"]})).types?.ts==="definitely-typed"}catch{return!1}};gwt.hasDefinitelyTyped=WSc;var PSc=e=>{let t={async send(r){try{let s=await $Hi.httpUtils.request(r.url,r.data||null,{configuration:e,headers:r.headers});return{content:s.body,isTimedOut:!1,status:s.statusCode}}catch(s){return{content:s.response.body,isTimedOut:!1,status:s.response.statusCode}}}};return(0,ZSc.default)(VSc,LSc,{requester:t})}});var n5i=z($Tr=>{"use strict";Object.defineProperty($Tr,"__esModule",{value:!0});var OSc=(Ma(),Ai(Oa)),qTr=Bn(),OK=Bn(),Cae=Ro(),t5i=awt(),MSc=OSc.__importDefault(Lh()),QSc=e5i(),r5i=e=>e.scope?`${e.scope}__${e.name}`:`${e.name}`,YSc=async(e,t,r,s)=>{if(r.scope==="types")return;let{project:a}=e,{configuration:o}=a;if(!(o.get("tsEnableAutoTypes")??(Cae.xfs.existsSync(Cae.ppath.join(e.cwd,"tsconfig.json"))||Cae.xfs.existsSync(Cae.ppath.join(a.cwd,"tsconfig.json")))))return;let p=o.makeResolver(),f={project:a,resolver:p,report:new OK.ThrowReport};if(!await(0,QSc.hasDefinitelyTyped)(r,o))return;let y=r5i(r),B=OK.structUtils.parseRange(r.range).selector;if(!OK.semverUtils.validRange(B)){let X=o.normalizeDependency(r),U=await p.getCandidates(X,{},f);B=OK.structUtils.parseRange(U[0].reference).selector}let v=MSc.default.coerce(B);if(v===null)return;let G=`${t5i.suggestUtils.Modifier.CARET}${v.major}`,T=OK.structUtils.makeDescriptor(OK.structUtils.makeIdent("types",y),G),O=OK.miscUtils.mapAndFind(a.workspaces,X=>{let U=X.manifest.dependencies.get(r.identHash)?.descriptorHash,le=X.manifest.devDependencies.get(r.identHash)?.descriptorHash;if(U!==r.descriptorHash&&le!==r.descriptorHash)return OK.miscUtils.mapAndFind.skip;let ae=[];for(let ge of qTr.Manifest.allDependencies){let fe=X.manifest[ge].get(T.identHash);typeof fe>"u"||ae.push([ge,fe])}return ae.length===0?OK.miscUtils.mapAndFind.skip:ae});if(typeof O<"u")for(let[X,U]of O)e.manifest[X].set(U.identHash,U);else{try{let X=o.normalizeDependency(T);if((await p.getCandidates(X,{},f)).length===0)return}catch{return}e.manifest[t5i.suggestUtils.Target.DEVELOPMENT].set(T.identHash,T)}},HSc=async(e,t,r)=>{if(r.scope==="types")return;let{project:s}=e,{configuration:a}=s;if(!(a.get("tsEnableAutoTypes")??(Cae.xfs.existsSync(Cae.ppath.join(e.cwd,"tsconfig.json"))||Cae.xfs.existsSync(Cae.ppath.join(s.cwd,"tsconfig.json")))))return;let g=r5i(r),p=OK.structUtils.makeIdent("types",g);for(let f of qTr.Manifest.allDependencies)typeof e.manifest[f].get(p.identHash)>"u"||e.manifest[f].delete(p.identHash)},XSc=(e,t)=>{t.publishConfig&&t.publishConfig.typings&&(t.typings=t.publishConfig.typings),t.publishConfig&&t.publishConfig.types&&(t.types=t.publishConfig.types)},JSc={configuration:{tsEnableAutoTypes:{description:"Whether Yarn should auto-install @types/ dependencies on 'yarn add'",type:qTr.SettingsType.BOOLEAN,isNullable:!0,default:null}},hooks:{afterWorkspaceDependencyAddition:YSc,afterWorkspaceDependencyRemoval:HSc,beforeWorkspacePacking:XSc}};$Tr.default=JSc});var s5i=z((Q5l,i5i)=>{var USc=sHt();function KSc(e){return USc(e)?void 0:e}i5i.exports=KSc});var a5i=z((Y5l,o5i)=>{var jSc=eJt(),zSc=Ewr(),qSc=wwr(),$Sc=VAe(),ewc=nAe(),twc=s5i(),rwc=OKt(),nwc=bwr(),iwc=1,swc=2,owc=4,awc=rwc(function(e,t){var r={};if(e==null)return r;var s=!1;t=jSc(t,function(o){return o=$Sc(o,e),s||(s=o.length>1),o}),ewc(e,nwc(e),r),s&&(r=zSc(r,iwc|swc|owc,twc));for(var a=t.length;a--;)qSc(r,t[a]);return r});o5i.exports=awc});var LJe=z(rG=>{"use strict";Object.defineProperty(rG,"__esModule",{value:!0});rG.Decision=void 0;rG.validateReleaseDecision=Awt;rG.resolveVersionFiles=uwc;rG.clearVersionFiles=gwc;rG.updateVersionFiles=Awc;rG.openVersionFile=dwc;rG.requireMoreDecisions=pwc;rG.getUndecidedWorkspaces=l5i;rG.getUndecidedDependentWorkspaces=u5i;rG.suggestStrategy=fwc;rG.applyStrategy=g5i;rG.applyReleases=Iwc;rG.applyPrerelease=A5i;var c5i=(Ma(),Ai(Oa)),mE=Bn(),dv=Ro(),hCe=aO(),eNr=ONe(),ZJe=(Fl(),Ai(dg)),cwc=c5i.__importDefault(a5i()),jq=c5i.__importDefault(Lh()),lwc=/^(>=|[~^]|)(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(-(0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(\.(0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*)?(\+[0-9a-zA-Z-]+(\.[0-9a-zA-Z-]+)*)?$/,q5;(function(e){e.UNDECIDED="undecided",e.DECLINE="decline",e.MAJOR="major",e.MINOR="minor",e.PATCH="patch",e.PRERELEASE="prerelease"})(q5||(rG.Decision=q5={}));function Awt(e){let t=jq.default.valid(e);return t||mE.miscUtils.validateEnum((0,cwc.default)(q5,"UNDECIDED"),e)}async function uwc(e,{prerelease:t=null}={}){let r=new Map,s=e.configuration.get("deferredVersionFolder");if(!dv.xfs.existsSync(s))return r;let a=await dv.xfs.readdirPromise(s);for(let o of a){if(!o.endsWith(".yml"))continue;let g=dv.ppath.join(s,o),p=await dv.xfs.readFilePromise(g,"utf8"),f=(0,hCe.parseSyml)(p);for(let[m,y]of Object.entries(f.releases||{})){if(y===q5.DECLINE)continue;let B=mE.structUtils.parseIdent(m),v=e.tryWorkspaceByIdent(B);if(v===null)throw new Error(`Assertion failed: Expected a release definition file to only reference existing workspaces (${dv.ppath.basename(g)} references ${m})`);if(v.manifest.version===null)throw new Error(`Assertion failed: Expected the workspace to have a version (${mE.structUtils.prettyLocator(e.configuration,v.anchoredLocator)})`);let G=v.manifest.raw.stableVersion??v.manifest.version,T=r.get(v),O=g5i(G,Awt(y));if(O===null)throw new Error(`Assertion failed: Expected ${G} to support being bumped via strategy ${y}`);let X=typeof T<"u"?jq.default.gt(O,T)?O:T:O;r.set(v,X)}}return t&&(r=new Map([...r].map(([o,g])=>[o,A5i(g,{current:o.manifest.version,prerelease:t})]))),r}async function gwc(e){let t=e.configuration.get("deferredVersionFolder");dv.xfs.existsSync(t)&&await dv.xfs.removePromise(t)}async function Awc(e,t){let r=new Set(t),s=e.configuration.get("deferredVersionFolder");if(!dv.xfs.existsSync(s))return;let a=await dv.xfs.readdirPromise(s);for(let o of a){if(!o.endsWith(".yml"))continue;let g=dv.ppath.join(s,o),p=await dv.xfs.readFilePromise(g,"utf8"),f=(0,hCe.parseSyml)(p),m=f?.releases;if(m){for(let y of Object.keys(m)){let B=mE.structUtils.parseIdent(y),v=e.tryWorkspaceByIdent(B);(v===null||r.has(v))&&delete f.releases[y]}Object.keys(f.releases).length>0?await dv.xfs.changeFilePromise(g,(0,hCe.stringifySyml)(new hCe.stringifySyml.PreserveOrdering(f))):await dv.xfs.unlinkPromise(g)}}}async function dwc(e,{allowEmpty:t=!1}={}){let r=e.configuration;if(r.projectCwd===null)throw new ZJe.UsageError("This command can only be run from within a Yarn project");let s=await eNr.gitUtils.fetchRoot(r.projectCwd),a=s!==null?await eNr.gitUtils.fetchBase(s,{baseRefs:r.get("changesetBaseRefs")}):null,o=s!==null?await eNr.gitUtils.fetchChangedFiles(s,{base:a.hash,project:e}):[],g=r.get("deferredVersionFolder"),p=o.filter(G=>dv.ppath.contains(g,G)!==null);if(p.length>1)throw new ZJe.UsageError(`Your current branch contains multiple versioning files; this isn't supported: -- ${p.map(G=>dv.npath.fromPortablePath(G)).join(` -- `)}`);let f=new Set(mE.miscUtils.mapAndFilter(o,G=>{let T=e.tryWorkspaceByFilePath(G);return T===null?mE.miscUtils.mapAndFilter.skip:T}));if(p.length===0&&f.size===0&&!t)return null;let m=p.length===1?p[0]:dv.ppath.join(g,`${mE.hashUtils.makeHash(Math.random().toString()).slice(0,8)}.yml`),y=dv.xfs.existsSync(m)?await dv.xfs.readFilePromise(m,"utf8"):"{}",B=(0,hCe.parseSyml)(y),v=new Map;for(let G of B.declined||[]){let T=mE.structUtils.parseIdent(G),O=e.getWorkspaceByIdent(T);v.set(O,q5.DECLINE)}for(let[G,T]of Object.entries(B.releases||{})){let O=mE.structUtils.parseIdent(G),X=e.getWorkspaceByIdent(O);v.set(X,Awt(T))}return{project:e,root:s,baseHash:a!==null?a.hash:null,baseTitle:a!==null?a.title:null,changedFiles:new Set(o),changedWorkspaces:f,releaseRoots:new Set([...f].filter(G=>G.manifest.version!==null)),releases:v,async saveAll(){let G={},T=[],O=[];for(let X of e.workspaces){if(X.manifest.version===null)continue;let U=mE.structUtils.stringifyIdent(X.anchoredLocator),le=v.get(X);le===q5.DECLINE?T.push(U):typeof le<"u"?G[U]=Awt(le):f.has(X)&&O.push(U)}await dv.xfs.mkdirPromise(dv.ppath.dirname(m),{recursive:!0}),await dv.xfs.changeFilePromise(m,(0,hCe.stringifySyml)(new hCe.stringifySyml.PreserveOrdering({releases:Object.keys(G).length>0?G:void 0,declined:T.length>0?T:void 0,undecided:O.length>0?O:void 0})))}}}function pwc(e){return l5i(e).size>0||u5i(e).length>0}function l5i(e){let t=new Set;for(let r of e.changedWorkspaces)r.manifest.version!==null&&(e.releases.has(r)||t.add(r));return t}function u5i(e,{include:t=new Set}={}){let r=[],s=new Map(mE.miscUtils.mapAndFilter([...e.releases],([o,g])=>g===q5.DECLINE?mE.miscUtils.mapAndFilter.skip:[o.anchoredLocator.locatorHash,o])),a=new Map(mE.miscUtils.mapAndFilter([...e.releases],([o,g])=>g!==q5.DECLINE?mE.miscUtils.mapAndFilter.skip:[o.anchoredLocator.locatorHash,o]));for(let o of e.project.workspaces)if(!(!t.has(o)&&(a.has(o.anchoredLocator.locatorHash)||s.has(o.anchoredLocator.locatorHash)))&&o.manifest.version!==null)for(let g of mE.Manifest.hardDependencies)for(let p of o.manifest.getForScope(g).values()){let f=e.project.tryWorkspaceByDescriptor(p);f!==null&&s.has(f.anchoredLocator.locatorHash)&&r.push([o,f])}return r}function fwc(e,t){let r=jq.default.clean(t);for(let s of Object.values(q5))if(s!==q5.UNDECIDED&&s!==q5.DECLINE&&jq.default.inc(e,s)===r)return s;return null}function g5i(e,t){if(jq.default.valid(t))return t;if(e===null)throw new ZJe.UsageError(`Cannot apply the release strategy "${t}" unless the workspace already has a valid version`);if(!jq.default.valid(e))throw new ZJe.UsageError(`Cannot apply the release strategy "${t}" on a non-semver version (${e})`);let r=jq.default.inc(e,t);if(r===null)throw new ZJe.UsageError(`Cannot apply the release strategy "${t}" on the specified version (${e})`);return r}function Iwc(e,t,{report:r}){let s=new Map;for(let a of e.workspaces)for(let o of mE.Manifest.allDependencies)for(let g of a.manifest[o].values()){let p=e.tryWorkspaceByDescriptor(g);if(p===null||!t.has(p))continue;mE.miscUtils.getArrayWithDefault(s,p).push([a,o,g.identHash])}for(let[a,o]of t){let g=a.manifest.version;a.manifest.version=o,jq.default.prerelease(o)===null?delete a.manifest.raw.stableVersion:a.manifest.raw.stableVersion||(a.manifest.raw.stableVersion=g);let p=a.manifest.name!==null?mE.structUtils.stringifyIdent(a.manifest.name):null;r.reportInfo(mE.MessageName.UNNAMED,`${mE.structUtils.prettyLocator(e.configuration,a.anchoredLocator)}: Bumped to ${o}`),r.reportJson({cwd:dv.npath.fromPortablePath(a.cwd),ident:p,oldVersion:g,newVersion:o});let f=s.get(a);if(!(typeof f>"u"))for(let[m,y,B]of f){let v=m.manifest[y].get(B);if(typeof v>"u")throw new Error("Assertion failed: The dependency should have existed");let G=v.range,T=!1;if(G.startsWith(mE.WorkspaceResolver.protocol)&&(G=G.slice(mE.WorkspaceResolver.protocol.length),T=!0,G===a.relativeCwd))continue;let O=G.match(lwc);if(!O){r.reportWarning(mE.MessageName.UNNAMED,`Couldn't auto-upgrade range ${G} (in ${mE.structUtils.prettyLocator(e.configuration,m.anchoredLocator)})`);continue}let X=`${O[1]}${o}`;T&&(X=`${mE.WorkspaceResolver.protocol}${X}`);let U=mE.structUtils.makeDescriptor(v,X);m.manifest[y].set(B,U)}}}var Cwc=new Map([["%n",{extract:e=>e.length>=1?[e[0],e.slice(1)]:null,generate:(e=0)=>`${e+1}`}]]);function A5i(e,{current:t,prerelease:r}){let s=new jq.default.SemVer(t),a=s.prerelease.slice(),o=[];s.prerelease=[],s.format()!==e&&(a.length=0);let g=!0,p=r.split(/\./g);for(let f of p){let m=Cwc.get(f);if(typeof m>"u")o.push(f),a[0]===f?a.shift():g=!1;else{let y=g?m.extract(a):null;y!==null&&typeof y[0]=="number"?(o.push(m.generate(y[0])),a=y[1]):(o.push(m.generate()),g=!1)}}return s.prerelease&&(s.prerelease=[]),`${e}-${o.join(".")}`}});var f5i=z(rNr=>{"use strict";Object.defineProperty(rNr,"__esModule",{value:!0});var mwc=(Ma(),Ai(Oa)),d5i=nl(),tNr=Bn(),p5i=Bn(),HNe=(Fl(),Ai(dg)),dwt=mwc.__importStar(LJe()),VJe=class extends d5i.BaseCommand{constructor(){super(...arguments),this.all=HNe.Option.Boolean("--all",!1,{description:"Apply the deferred version changes on all workspaces"}),this.dryRun=HNe.Option.Boolean("--dry-run",!1,{description:"Print the versions without actually generating the package archive"}),this.prerelease=HNe.Option.String("--prerelease",{description:"Add a prerelease identifier to new versions",tolerateBoolean:!0}),this.recursive=HNe.Option.Boolean("-R,--recursive",{description:"Release the transitive workspaces as well"}),this.json=HNe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await tNr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await p5i.Project.find(t,this.context.cwd),a=await tNr.Cache.find(t);if(!s)throw new d5i.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=await p5i.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async g=>{let p=this.prerelease?typeof this.prerelease!="boolean"?this.prerelease:"rc.%n":null,f=await dwt.resolveVersionFiles(r,{prerelease:p}),m=new Map;if(this.all)m=f;else{let y=this.recursive?s.getRecursiveWorkspaceDependencies():[s];for(let B of y){let v=f.get(B);typeof v<"u"&&m.set(B,v)}}if(m.size===0){let y=f.size>0?" Did you want to add --all?":"";g.reportWarning(tNr.MessageName.UNNAMED,`The current workspace doesn't seem to require a version bump.${y}`);return}dwt.applyReleases(r,m,{report:g}),this.dryRun||(p||(this.all?await dwt.clearVersionFiles(r):await dwt.updateVersionFiles(r,[...m.keys()])),g.reportSeparator())});return this.dryRun||o.hasErrors()?o.exitCode():await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:a})}};VJe.paths=[["version","apply"]];VJe.usage=HNe.Command.Usage({category:"Release-related commands",description:"apply all the deferred version bumps at once",details:` + ${_3.structUtils.prettyLocator(t,Te.anchoredLocator)}`);let y=[],B=!1;if(o?.includes(":")){for(let Te of r.workspaces)if(Te.manifest.scripts.has(o)&&(B=!B,B===!1))break}for(let Te of f){if(o&&!Te.manifest.scripts.has(o)&&!B&&!(await eNr.scriptUtils.getWorkspaceAccessibleBinaries(Te)).has(o)){g(`Excluding ${Te.relativeCwd} because it doesn't have a "${o}" script`);continue}if(!(o===t.env.npm_lifecycle_event&&Te.cwd===s.cwd)){if(this.include.length>0&&!LJe.default.isMatch(_3.structUtils.stringifyIdent(Te.anchoredLocator),this.include)&&!LJe.default.isMatch(Te.relativeCwd,this.include)){g(`Excluding ${Te.relativeCwd} because it doesn't match the --include filter`);continue}if(this.exclude.length>0&&(LJe.default.isMatch(_3.structUtils.stringifyIdent(Te.anchoredLocator),this.exclude)||LJe.default.isMatch(Te.relativeCwd,this.exclude))){g(`Excluding ${Te.relativeCwd} because it matches the --include filter`);continue}if(this.publicOnly&&Te.manifest.private===!0){g(`Excluding ${Te.relativeCwd} because it's a private workspace and --no-private was set`);continue}y.push(Te)}}if(this.dryRun)return 0;let v=this.verbose??(this.context.stdout.isTTY?1/0:0),k=v>0,T=v>1,O=this.parallel?this.jobs==="unlimited"?1/0:Number(this.jobs)||Math.ceil(_3.nodeUtils.availableParallelism()/2):1,X=O===1?!1:this.parallel,U=X?this.interlaced:!0,le=(0,USc.default)(O),ae=new Map,ge=new Set,fe=0,pe=null,he=!1,be=await tNr.StreamReport.start({configuration:t,stdout:this.context.stdout,includePrefix:!1},async Te=>{let ke=async(x,{commandIndex:et})=>{if(he)return-1;!X&&T&&et>1&&Te.reportSeparator();let Ue=KSc(x,{configuration:t,label:k,commandIndex:et}),[Je,Xe]=eYi(Te,{prefix:Ue,interlaced:U}),[ft,Gt]=eYi(Te,{prefix:Ue,interlaced:U});try{T&&Te.reportInfo(null,`${Ue?`${Ue} `:""}Process started`);let er=Date.now(),Ur=await this.cli.run([this.commandName,...this.args],{cwd:x.cwd,stdout:Je,stderr:ft})||0;Je.end(),ft.end(),await Xe,await Gt;let Ot=Date.now();if(T){let dr=t.get("enableTimers")?`, completed in ${_3.formatUtils.pretty(t,Ot-er,_3.formatUtils.Type.DURATION)}`:"";Te.reportInfo(null,`${Ue?`${Ue} `:""}Process exited (exit code ${Ur})${dr}`)}return Ur===130&&(he=!0,pe=Ur),Ur}catch(er){throw Je.end(),ft.end(),await Xe,await Gt,er}};for(let x of y)ae.set(x.anchoredLocator.locatorHash,x);for(;ae.size>0&&!Te.hasErrors();){let x=[];for(let[Je,Xe]of ae){if(ge.has(Xe.anchoredDescriptor.descriptorHash))continue;let ft=!0;if(this.topological||this.topologicalDev){let Gt=this.topologicalDev?new Map([...Xe.manifest.dependencies,...Xe.manifest.devDependencies]):Xe.manifest.dependencies;for(let er of Gt.values()){let Ur=r.tryWorkspaceByDescriptor(er);if(ft=Ur===null||!ae.has(Ur.anchoredLocator.locatorHash),!ft)break}}if(ft&&(ge.add(Xe.anchoredDescriptor.descriptorHash),x.push(le(async()=>{let Gt=await ke(Xe,{commandIndex:++fe});return ae.delete(Je),ge.delete(Xe.anchoredDescriptor.descriptorHash),Gt})),!X))break}if(x.length===0){let Je=Array.from(ae.values()).map(Xe=>_3.structUtils.prettyLocator(t,Xe.anchoredLocator)).join(", ");Te.reportError(tNr.MessageName.CYCLIC_DEPENDENCIES,`Dependency cycle detected (${Je})`);return}let Ue=(await Promise.all(x)).find(Je=>Je!==0);pe===null&&(pe=typeof Ue<"u"?1:pe),(this.topological||this.topologicalDev)&&typeof Ue<"u"&&Te.reportError(tNr.MessageName.UNNAMED,"The command failed for workspaces that are depended upon by other workspaces; can't satisfy the dependency graph")}});return pe!==null?pe:be.exitCode()}};XNe.paths=[["workspaces","foreach"]];XNe.usage=XT.Command.Usage({category:"Workspace-related commands",description:"run a command on all workspaces",details:"\n This command will run a given sub-command on current and all its descendant workspaces. Various flags can alter the exact behavior of the command:\n\n - If `-p,--parallel` is set, the commands will be ran in parallel; they'll by default be limited to a number of parallel tasks roughly equal to half your core number, but that can be overridden via `-j,--jobs`, or disabled by setting `-j unlimited`.\n\n - If `-p,--parallel` and `-i,--interlaced` are both set, Yarn will print the lines from the output as it receives them. If `-i,--interlaced` wasn't set, it would instead buffer the output from each process and print the resulting buffers only after their source processes have exited.\n\n - If `-t,--topological` is set, Yarn will only run the command after all workspaces that it depends on through the `dependencies` field have successfully finished executing. If `--topological-dev` is set, both the `dependencies` and `devDependencies` fields will be considered when figuring out the wait points.\n\n - If `-A,--all` is set, Yarn will run the command on all the workspaces of a project.\n\n - If `-R,--recursive` is set, Yarn will find workspaces to run the command on by recursively evaluating `dependencies` and `devDependencies` fields, instead of looking at the `workspaces` fields.\n\n - If `-W,--worktree` is set, Yarn will find workspaces to run the command on by looking at the current worktree.\n\n - If `--from` is set, Yarn will use the packages matching the 'from' glob as the starting point for any recursive search.\n\n - If `--since` is set, Yarn will only run the command on workspaces that have been modified since the specified ref. By default Yarn will use the refs specified by the `changesetBaseRefs` configuration option.\n\n - If `--dry-run` is set, Yarn will explain what it would do without actually doing anything.\n\n - The command may apply to only some workspaces through the use of `--include` which acts as a whitelist. The `--exclude` flag will do the opposite and will be a list of packages that mustn't execute the script. Both flags accept glob patterns (if valid Idents and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them.\n\n The `-v,--verbose` flag can be passed up to twice: once to prefix output lines with the originating workspace's name, and again to include start/finish/timing log lines. Maximum verbosity is enabled by default in terminal environments.\n\n If the command is `run` and the script being run does not exist the child workspace will be skipped without error.\n ",examples:[["Publish all packages","yarn workspaces foreach -A npm publish --tolerate-republish"],["Run the build script on all descendant packages","yarn workspaces foreach -A run build"],["Run the build script on current and all descendant packages in parallel, building package dependencies first","yarn workspaces foreach -Apt run build"],["Run the build script on several packages and all their dependencies, building dependencies first","yarn workspaces foreach -Rpt --from '{workspace-a,workspace-b}' run build"]]});XNe.schema=[zq.hasKeyRelationship("all",zq.KeyRelationship.Forbids,["from","recursive","since","worktree"],{missingIf:"undefined"}),zq.hasAtLeastOneKey(["all","recursive","since","worktree"],{missingIf:"undefined"})];nNr.default=XNe;function eYi(e,{prefix:t,interlaced:r}){let s=e.createStreamReporter(t),a=new _3.miscUtils.DefaultStream;a.pipe(s,{end:!1}),a.on("finish",()=>{s.end()});let o=new Promise(p=>{s.on("finish",()=>{p(a.active)})});if(r)return[a,o];let g=new _3.miscUtils.BufferStream;return g.pipe(a,{end:!1}),g.on("finish",()=>{a.end()}),[g,o]}function KSc(e,{configuration:t,commandIndex:r,label:s}){if(!s)return null;let o=`[${_3.structUtils.stringifyIdent(e.anchoredLocator)}]:`,g=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],p=g[r%g.length];return _3.formatUtils.pretty(t,o,p)}});var sYi=z(_Ce=>{"use strict";Object.defineProperty(_Ce,"__esModule",{value:!0});_Ce.WorkspacesForeachCommand=_Ce.WorkspacesFocusCommand=void 0;var rYi=(Oa(),Ai(Pa)),nYi=rYi.__importDefault(qHi());_Ce.WorkspacesFocusCommand=nYi.default;var iYi=rYi.__importDefault(tYi());_Ce.WorkspacesForeachCommand=iYi.default;var jSc={commands:[nYi.default,iYi.default]};_Ce.default=jSc});var aYi=z(pwt=>{"use strict";Object.defineProperty(pwt,"__esModule",{value:!0});pwt.hasDefinitelyTyped=void 0;var zSc=(Oa(),Ai(Pa)),oYi=Bn(),qSc=zSc.__importDefault(Vvr()),$Sc="e8e1bd300d860104bb8c58453ffa1eb4",ewc="OFCNCOG2CU",twc=async(e,t)=>{let r=oYi.structUtils.stringifyIdent(e),a=rwc(t).initIndex("npm-search");try{return(await a.getObject(r,{attributesToRetrieve:["types"]})).types?.ts==="definitely-typed"}catch{return!1}};pwt.hasDefinitelyTyped=twc;var rwc=e=>{let t={async send(r){try{let s=await oYi.httpUtils.request(r.url,r.data||null,{configuration:e,headers:r.headers});return{content:s.body,isTimedOut:!1,status:s.statusCode}}catch(s){return{content:s.response.body,isTimedOut:!1,status:s.response.statusCode}}}};return(0,qSc.default)(ewc,$Sc,{requester:t})}});var uYi=z(sNr=>{"use strict";Object.defineProperty(sNr,"__esModule",{value:!0});var nwc=(Oa(),Ai(Pa)),iNr=Bn(),JK=Bn(),Sae=No(),cYi=uwt(),iwc=nwc.__importDefault(Vh()),swc=aYi(),lYi=e=>e.scope?`${e.scope}__${e.name}`:`${e.name}`,owc=async(e,t,r,s)=>{if(r.scope==="types")return;let{project:a}=e,{configuration:o}=a;if(!(o.get("tsEnableAutoTypes")??(Sae.xfs.existsSync(Sae.ppath.join(e.cwd,"tsconfig.json"))||Sae.xfs.existsSync(Sae.ppath.join(a.cwd,"tsconfig.json")))))return;let p=o.makeResolver(),f={project:a,resolver:p,report:new JK.ThrowReport};if(!await(0,swc.hasDefinitelyTyped)(r,o))return;let y=lYi(r),B=JK.structUtils.parseRange(r.range).selector;if(!JK.semverUtils.validRange(B)){let X=o.normalizeDependency(r),U=await p.getCandidates(X,{},f);B=JK.structUtils.parseRange(U[0].reference).selector}let v=iwc.default.coerce(B);if(v===null)return;let k=`${cYi.suggestUtils.Modifier.CARET}${v.major}`,T=JK.structUtils.makeDescriptor(JK.structUtils.makeIdent("types",y),k),O=JK.miscUtils.mapAndFind(a.workspaces,X=>{let U=X.manifest.dependencies.get(r.identHash)?.descriptorHash,le=X.manifest.devDependencies.get(r.identHash)?.descriptorHash;if(U!==r.descriptorHash&&le!==r.descriptorHash)return JK.miscUtils.mapAndFind.skip;let ae=[];for(let ge of iNr.Manifest.allDependencies){let fe=X.manifest[ge].get(T.identHash);typeof fe>"u"||ae.push([ge,fe])}return ae.length===0?JK.miscUtils.mapAndFind.skip:ae});if(typeof O<"u")for(let[X,U]of O)e.manifest[X].set(U.identHash,U);else{try{let X=o.normalizeDependency(T);if((await p.getCandidates(X,{},f)).length===0)return}catch{return}e.manifest[cYi.suggestUtils.Target.DEVELOPMENT].set(T.identHash,T)}},awc=async(e,t,r)=>{if(r.scope==="types")return;let{project:s}=e,{configuration:a}=s;if(!(a.get("tsEnableAutoTypes")??(Sae.xfs.existsSync(Sae.ppath.join(e.cwd,"tsconfig.json"))||Sae.xfs.existsSync(Sae.ppath.join(s.cwd,"tsconfig.json")))))return;let g=lYi(r),p=JK.structUtils.makeIdent("types",g);for(let f of iNr.Manifest.allDependencies)typeof e.manifest[f].get(p.identHash)>"u"||e.manifest[f].delete(p.identHash)},cwc=(e,t)=>{t.publishConfig&&t.publishConfig.typings&&(t.typings=t.publishConfig.typings),t.publishConfig&&t.publishConfig.types&&(t.types=t.publishConfig.types)},lwc={configuration:{tsEnableAutoTypes:{description:"Whether Yarn should auto-install @types/ dependencies on 'yarn add'",type:iNr.SettingsType.BOOLEAN,isNullable:!0,default:null}},hooks:{afterWorkspaceDependencyAddition:owc,afterWorkspaceDependencyRemoval:awc,beforeWorkspacePacking:cwc}};sNr.default=lwc});var AYi=z((gXl,gYi)=>{var uwc=cHt();function gwc(e){return uwc(e)?void 0:e}gYi.exports=gwc});var pYi=z((AXl,dYi)=>{var Awc=nJt(),dwc=Nwr(),pwc=kwr(),fwc=JAe(),Iwc=AAe(),Cwc=AYi(),mwc=HKt(),hwc=Twr(),_wc=1,ywc=2,bwc=4,Ewc=mwc(function(e,t){var r={};if(e==null)return r;var s=!1;t=Awc(t,function(o){return o=fwc(o,e),s||(s=o.length>1),o}),Iwc(e,hwc(e),r),s&&(r=dwc(r,_wc|ywc|bwc,Cwc));for(var a=t.length;a--;)pwc(r,t[a]);return r});dYi.exports=Ewc});var WJe=z(aG=>{"use strict";Object.defineProperty(aG,"__esModule",{value:!0});aG.Decision=void 0;aG.validateReleaseDecision=fwt;aG.resolveVersionFiles=Swc;aG.clearVersionFiles=wwc;aG.updateVersionFiles=Twc;aG.openVersionFile=Nwc;aG.requireMoreDecisions=Rwc;aG.getUndecidedWorkspaces=IYi;aG.getUndecidedDependentWorkspaces=CYi;aG.suggestStrategy=Dwc;aG.applyStrategy=mYi;aG.applyReleases=xwc;aG.applyPrerelease=hYi;var fYi=(Oa(),Ai(Pa)),_E=Bn(),pv=No(),yCe=uO(),oNr=MNe(),VJe=(Zl(),Ai(pg)),Bwc=fYi.__importDefault(pYi()),qq=fYi.__importDefault(Vh()),vwc=/^(>=|[~^]|)(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(-(0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(\.(0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*)?(\+[0-9a-zA-Z-]+(\.[0-9a-zA-Z-]+)*)?$/,tX;(function(e){e.UNDECIDED="undecided",e.DECLINE="decline",e.MAJOR="major",e.MINOR="minor",e.PATCH="patch",e.PRERELEASE="prerelease"})(tX||(aG.Decision=tX={}));function fwt(e){let t=qq.default.valid(e);return t||_E.miscUtils.validateEnum((0,Bwc.default)(tX,"UNDECIDED"),e)}async function Swc(e,{prerelease:t=null}={}){let r=new Map,s=e.configuration.get("deferredVersionFolder");if(!pv.xfs.existsSync(s))return r;let a=await pv.xfs.readdirPromise(s);for(let o of a){if(!o.endsWith(".yml"))continue;let g=pv.ppath.join(s,o),p=await pv.xfs.readFilePromise(g,"utf8"),f=(0,yCe.parseSyml)(p);for(let[m,y]of Object.entries(f.releases||{})){if(y===tX.DECLINE)continue;let B=_E.structUtils.parseIdent(m),v=e.tryWorkspaceByIdent(B);if(v===null)throw new Error(`Assertion failed: Expected a release definition file to only reference existing workspaces (${pv.ppath.basename(g)} references ${m})`);if(v.manifest.version===null)throw new Error(`Assertion failed: Expected the workspace to have a version (${_E.structUtils.prettyLocator(e.configuration,v.anchoredLocator)})`);let k=v.manifest.raw.stableVersion??v.manifest.version,T=r.get(v),O=mYi(k,fwt(y));if(O===null)throw new Error(`Assertion failed: Expected ${k} to support being bumped via strategy ${y}`);let X=typeof T<"u"?qq.default.gt(O,T)?O:T:O;r.set(v,X)}}return t&&(r=new Map([...r].map(([o,g])=>[o,hYi(g,{current:o.manifest.version,prerelease:t})]))),r}async function wwc(e){let t=e.configuration.get("deferredVersionFolder");pv.xfs.existsSync(t)&&await pv.xfs.removePromise(t)}async function Twc(e,t){let r=new Set(t),s=e.configuration.get("deferredVersionFolder");if(!pv.xfs.existsSync(s))return;let a=await pv.xfs.readdirPromise(s);for(let o of a){if(!o.endsWith(".yml"))continue;let g=pv.ppath.join(s,o),p=await pv.xfs.readFilePromise(g,"utf8"),f=(0,yCe.parseSyml)(p),m=f?.releases;if(m){for(let y of Object.keys(m)){let B=_E.structUtils.parseIdent(y),v=e.tryWorkspaceByIdent(B);(v===null||r.has(v))&&delete f.releases[y]}Object.keys(f.releases).length>0?await pv.xfs.changeFilePromise(g,(0,yCe.stringifySyml)(new yCe.stringifySyml.PreserveOrdering(f))):await pv.xfs.unlinkPromise(g)}}}async function Nwc(e,{allowEmpty:t=!1}={}){let r=e.configuration;if(r.projectCwd===null)throw new VJe.UsageError("This command can only be run from within a Yarn project");let s=await oNr.gitUtils.fetchRoot(r.projectCwd),a=s!==null?await oNr.gitUtils.fetchBase(s,{baseRefs:r.get("changesetBaseRefs")}):null,o=s!==null?await oNr.gitUtils.fetchChangedFiles(s,{base:a.hash,project:e}):[],g=r.get("deferredVersionFolder"),p=o.filter(k=>pv.ppath.contains(g,k)!==null);if(p.length>1)throw new VJe.UsageError(`Your current branch contains multiple versioning files; this isn't supported: +- ${p.map(k=>pv.npath.fromPortablePath(k)).join(` +- `)}`);let f=new Set(_E.miscUtils.mapAndFilter(o,k=>{let T=e.tryWorkspaceByFilePath(k);return T===null?_E.miscUtils.mapAndFilter.skip:T}));if(p.length===0&&f.size===0&&!t)return null;let m=p.length===1?p[0]:pv.ppath.join(g,`${_E.hashUtils.makeHash(Math.random().toString()).slice(0,8)}.yml`),y=pv.xfs.existsSync(m)?await pv.xfs.readFilePromise(m,"utf8"):"{}",B=(0,yCe.parseSyml)(y),v=new Map;for(let k of B.declined||[]){let T=_E.structUtils.parseIdent(k),O=e.getWorkspaceByIdent(T);v.set(O,tX.DECLINE)}for(let[k,T]of Object.entries(B.releases||{})){let O=_E.structUtils.parseIdent(k),X=e.getWorkspaceByIdent(O);v.set(X,fwt(T))}return{project:e,root:s,baseHash:a!==null?a.hash:null,baseTitle:a!==null?a.title:null,changedFiles:new Set(o),changedWorkspaces:f,releaseRoots:new Set([...f].filter(k=>k.manifest.version!==null)),releases:v,async saveAll(){let k={},T=[],O=[];for(let X of e.workspaces){if(X.manifest.version===null)continue;let U=_E.structUtils.stringifyIdent(X.anchoredLocator),le=v.get(X);le===tX.DECLINE?T.push(U):typeof le<"u"?k[U]=fwt(le):f.has(X)&&O.push(U)}await pv.xfs.mkdirPromise(pv.ppath.dirname(m),{recursive:!0}),await pv.xfs.changeFilePromise(m,(0,yCe.stringifySyml)(new yCe.stringifySyml.PreserveOrdering({releases:Object.keys(k).length>0?k:void 0,declined:T.length>0?T:void 0,undecided:O.length>0?O:void 0})))}}}function Rwc(e){return IYi(e).size>0||CYi(e).length>0}function IYi(e){let t=new Set;for(let r of e.changedWorkspaces)r.manifest.version!==null&&(e.releases.has(r)||t.add(r));return t}function CYi(e,{include:t=new Set}={}){let r=[],s=new Map(_E.miscUtils.mapAndFilter([...e.releases],([o,g])=>g===tX.DECLINE?_E.miscUtils.mapAndFilter.skip:[o.anchoredLocator.locatorHash,o])),a=new Map(_E.miscUtils.mapAndFilter([...e.releases],([o,g])=>g!==tX.DECLINE?_E.miscUtils.mapAndFilter.skip:[o.anchoredLocator.locatorHash,o]));for(let o of e.project.workspaces)if(!(!t.has(o)&&(a.has(o.anchoredLocator.locatorHash)||s.has(o.anchoredLocator.locatorHash)))&&o.manifest.version!==null)for(let g of _E.Manifest.hardDependencies)for(let p of o.manifest.getForScope(g).values()){let f=e.project.tryWorkspaceByDescriptor(p);f!==null&&s.has(f.anchoredLocator.locatorHash)&&r.push([o,f])}return r}function Dwc(e,t){let r=qq.default.clean(t);for(let s of Object.values(tX))if(s!==tX.UNDECIDED&&s!==tX.DECLINE&&qq.default.inc(e,s)===r)return s;return null}function mYi(e,t){if(qq.default.valid(t))return t;if(e===null)throw new VJe.UsageError(`Cannot apply the release strategy "${t}" unless the workspace already has a valid version`);if(!qq.default.valid(e))throw new VJe.UsageError(`Cannot apply the release strategy "${t}" on a non-semver version (${e})`);let r=qq.default.inc(e,t);if(r===null)throw new VJe.UsageError(`Cannot apply the release strategy "${t}" on the specified version (${e})`);return r}function xwc(e,t,{report:r}){let s=new Map;for(let a of e.workspaces)for(let o of _E.Manifest.allDependencies)for(let g of a.manifest[o].values()){let p=e.tryWorkspaceByDescriptor(g);if(p===null||!t.has(p))continue;_E.miscUtils.getArrayWithDefault(s,p).push([a,o,g.identHash])}for(let[a,o]of t){let g=a.manifest.version;a.manifest.version=o,qq.default.prerelease(o)===null?delete a.manifest.raw.stableVersion:a.manifest.raw.stableVersion||(a.manifest.raw.stableVersion=g);let p=a.manifest.name!==null?_E.structUtils.stringifyIdent(a.manifest.name):null;r.reportInfo(_E.MessageName.UNNAMED,`${_E.structUtils.prettyLocator(e.configuration,a.anchoredLocator)}: Bumped to ${o}`),r.reportJson({cwd:pv.npath.fromPortablePath(a.cwd),ident:p,oldVersion:g,newVersion:o});let f=s.get(a);if(!(typeof f>"u"))for(let[m,y,B]of f){let v=m.manifest[y].get(B);if(typeof v>"u")throw new Error("Assertion failed: The dependency should have existed");let k=v.range,T=!1;if(k.startsWith(_E.WorkspaceResolver.protocol)&&(k=k.slice(_E.WorkspaceResolver.protocol.length),T=!0,k===a.relativeCwd))continue;let O=k.match(vwc);if(!O){r.reportWarning(_E.MessageName.UNNAMED,`Couldn't auto-upgrade range ${k} (in ${_E.structUtils.prettyLocator(e.configuration,m.anchoredLocator)})`);continue}let X=`${O[1]}${o}`;T&&(X=`${_E.WorkspaceResolver.protocol}${X}`);let U=_E.structUtils.makeDescriptor(v,X);m.manifest[y].set(B,U)}}}var kwc=new Map([["%n",{extract:e=>e.length>=1?[e[0],e.slice(1)]:null,generate:(e=0)=>`${e+1}`}]]);function hYi(e,{current:t,prerelease:r}){let s=new qq.default.SemVer(t),a=s.prerelease.slice(),o=[];s.prerelease=[],s.format()!==e&&(a.length=0);let g=!0,p=r.split(/\./g);for(let f of p){let m=kwc.get(f);if(typeof m>"u")o.push(f),a[0]===f?a.shift():g=!1;else{let y=g?m.extract(a):null;y!==null&&typeof y[0]=="number"?(o.push(m.generate(y[0])),a=y[1]):(o.push(m.generate()),g=!1)}}return s.prerelease&&(s.prerelease=[]),`${e}-${o.join(".")}`}});var bYi=z(cNr=>{"use strict";Object.defineProperty(cNr,"__esModule",{value:!0});var Gwc=(Oa(),Ai(Pa)),_Yi=il(),aNr=Bn(),yYi=Bn(),JNe=(Zl(),Ai(pg)),Iwt=Gwc.__importStar(WJe()),PJe=class extends _Yi.BaseCommand{constructor(){super(...arguments),this.all=JNe.Option.Boolean("--all",!1,{description:"Apply the deferred version changes on all workspaces"}),this.dryRun=JNe.Option.Boolean("--dry-run",!1,{description:"Print the versions without actually generating the package archive"}),this.prerelease=JNe.Option.String("--prerelease",{description:"Add a prerelease identifier to new versions",tolerateBoolean:!0}),this.recursive=JNe.Option.Boolean("-R,--recursive",{description:"Release the transitive workspaces as well"}),this.json=JNe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let t=await aNr.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await yYi.Project.find(t,this.context.cwd),a=await aNr.Cache.find(t);if(!s)throw new _Yi.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let o=await yYi.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async g=>{let p=this.prerelease?typeof this.prerelease!="boolean"?this.prerelease:"rc.%n":null,f=await Iwt.resolveVersionFiles(r,{prerelease:p}),m=new Map;if(this.all)m=f;else{let y=this.recursive?s.getRecursiveWorkspaceDependencies():[s];for(let B of y){let v=f.get(B);typeof v<"u"&&m.set(B,v)}}if(m.size===0){let y=f.size>0?" Did you want to add --all?":"";g.reportWarning(aNr.MessageName.UNNAMED,`The current workspace doesn't seem to require a version bump.${y}`);return}Iwt.applyReleases(r,m,{report:g}),this.dryRun||(p||(this.all?await Iwt.clearVersionFiles(r):await Iwt.updateVersionFiles(r,[...m.keys()])),g.reportSeparator())});return this.dryRun||o.hasErrors()?o.exitCode():await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:a})}};PJe.paths=[["version","apply"]];PJe.usage=JNe.Command.Usage({category:"Release-related commands",description:"apply all the deferred version bumps at once",details:` This command will apply the deferred version changes and remove their definitions from the repository. Note that if \`--prerelease\` is set, the given prerelease identifier (by default \`rc.%n\`) will be used on all new versions and the version definitions will be kept as-is. @@ -1396,114 +1396,114 @@ ${fe}`)}else ae.length>1&&!g&&O.reportError(jM.MessageName.CANT_SUGGEST_RESOLUTI - \`--all\` to apply the version bump on all packages in the repository Note that this command will also update the \`workspace:\` references across all your local workspaces, thus ensuring that they keep referring to the same workspaces even after the version bump. - `,examples:[["Apply the version change to the local workspace","yarn version apply"],["Apply the version change to all the workspaces in the local workspace","yarn version apply --all"]]});rNr.default=VJe});var I5i=z(sNr=>{"use strict";Object.defineProperty(sNr,"__esModule",{value:!0});var QK=(Ma(),Ai(Oa)),nNr=nl(),XT=Bn(),MK=Ro(),hwc=QK.__importStar(iSt()),pwt=(Fl(),Ai(dg)),iNr=QK.__importDefault(Lh()),nG=QK.__importStar(LJe()),WJe=class extends nNr.BaseCommand{constructor(){super(...arguments),this.interactive=pwt.Option.Boolean("-i,--interactive",{description:"Open an interactive interface used to set version bumps"})}async execute(){return this.interactive?await this.executeInteractive():await this.executeStandard()}async executeInteractive(){hwc.checkRequirements(this.context);let{Gem:t}=await Promise.resolve().then(()=>QK.__importStar(SSt())),{ScrollableItems:r}=await Promise.resolve().then(()=>QK.__importStar(DSt())),{FocusRequest:s}=await Promise.resolve().then(()=>QK.__importStar(fSr())),{useListInput:a}=await Promise.resolve().then(()=>QK.__importStar(NSt())),{renderForm:o}=await Promise.resolve().then(()=>QK.__importStar(xSt())),{Box:g,Text:p}=await Promise.resolve().then(()=>QK.__importStar(HM())),{default:f,useCallback:m,useState:y}=await Promise.resolve().then(()=>QK.__importStar(Pm())),B=await XT.Configuration.find(this.context.cwd,this.context.plugins),{project:v,workspace:G}=await XT.Project.find(B,this.context.cwd);if(!G)throw new nNr.WorkspaceRequiredError(v.cwd,this.context.cwd);await v.restoreInstallState();let T=await nG.openVersionFile(v);if(T===null||T.releaseRoots.size===0)return 0;if(T.root===null)throw new pwt.UsageError("This command can only be run on Git repositories");let O=()=>f.createElement(g,{flexDirection:"row",paddingBottom:1},f.createElement(g,{flexDirection:"column",width:60},f.createElement(g,null,f.createElement(p,null,"Press ",f.createElement(p,{bold:!0,color:"cyanBright"},""),"/",f.createElement(p,{bold:!0,color:"cyanBright"},"")," to select workspaces.")),f.createElement(g,null,f.createElement(p,null,"Press ",f.createElement(p,{bold:!0,color:"cyanBright"},""),"/",f.createElement(p,{bold:!0,color:"cyanBright"},"")," to select release strategies."))),f.createElement(g,{flexDirection:"column"},f.createElement(g,{marginLeft:1},f.createElement(p,null,"Press ",f.createElement(p,{bold:!0,color:"cyanBright"},"")," to save.")),f.createElement(g,{marginLeft:1},f.createElement(p,null,"Press ",f.createElement(p,{bold:!0,color:"cyanBright"},"")," to abort.")))),X=({workspace:pe,active:he,decision:be,setDecision:Te})=>{let ke=pe.manifest.raw.stableVersion??pe.manifest.version;if(ke===null)throw new Error(`Assertion failed: The version should have been set (${XT.structUtils.prettyLocator(B,pe.anchoredLocator)})`);if(iNr.default.prerelease(ke)!==null)throw new Error(`Assertion failed: Prerelease identifiers shouldn't be found (${ke})`);let x=[nG.Decision.UNDECIDED,nG.Decision.DECLINE,nG.Decision.PATCH,nG.Decision.MINOR,nG.Decision.MAJOR];a(be,x,{active:he,minus:"left",plus:"right",set:Te});let et=be===nG.Decision.UNDECIDED?f.createElement(p,{color:"yellow"},ke):be===nG.Decision.DECLINE?f.createElement(p,{color:"green"},ke):f.createElement(p,null,f.createElement(p,{color:"magenta"},ke)," \u2192 ",f.createElement(p,{color:"green"},iNr.default.valid(be)?be:iNr.default.inc(ke,be)));return f.createElement(g,{flexDirection:"column"},f.createElement(g,null,f.createElement(p,null,XT.structUtils.prettyLocator(B,pe.anchoredLocator)," - ",et)),f.createElement(g,null,x.map(Ue=>{let Je=Ue===be;return f.createElement(g,{key:Ue,paddingLeft:2},f.createElement(p,null,f.createElement(t,{active:Je})," ",Ue))})))},U=pe=>{let he=new Set(T.releaseRoots),be=new Map([...pe].filter(([Te])=>he.has(Te)));for(;;){let Te=nG.getUndecidedDependentWorkspaces({project:T.project,releases:be}),ke=!1;if(Te.length>0){for(let[x]of Te)if(!he.has(x)){he.add(x),ke=!0;let et=pe.get(x);typeof et<"u"&&be.set(x,et)}}if(!ke)break}return{relevantWorkspaces:he,relevantReleases:be}},le=()=>{let[pe,he]=y(()=>new Map(T.releases)),be=m((Te,ke)=>{let x=new Map(pe);ke!==nG.Decision.UNDECIDED?x.set(Te,ke):x.delete(Te);let{relevantReleases:et}=U(x);he(et)},[pe,he]);return[pe,be]},ae=({workspaces:pe,releases:he})=>{let be=[];be.push(`${pe.size} total`);let Te=0,ke=0;for(let x of pe){let et=he.get(x);typeof et>"u"?ke+=1:et!==nG.Decision.DECLINE&&(Te+=1)}return be.push(`${Te} release${Te===1?"":"s"}`),be.push(`${ke} remaining`),f.createElement(p,{color:"yellow"},be.join(", "))},fe=await o(({useSubmit:pe})=>{let[he,be]=le();pe(he);let{relevantWorkspaces:Te}=U(he),ke=new Set([...Te].filter(Je=>!T.releaseRoots.has(Je))),[x,et]=y(0),Ue=m(Je=>{switch(Je){case s.BEFORE:et(x-1);break;case s.AFTER:et(x+1);break}},[x,et]);return f.createElement(g,{flexDirection:"column"},f.createElement(O,null),f.createElement(g,null,f.createElement(p,{wrap:"wrap"},"The following files have been modified in your local checkout.")),f.createElement(g,{flexDirection:"column",marginTop:1,paddingLeft:2},[...T.changedFiles].map(Je=>f.createElement(g,{key:Je},f.createElement(p,null,f.createElement(p,{color:"grey"},MK.npath.fromPortablePath(T.root)),MK.npath.sep,MK.npath.relative(MK.npath.fromPortablePath(T.root),MK.npath.fromPortablePath(Je)))))),T.releaseRoots.size>0&&f.createElement(f.Fragment,null,f.createElement(g,{marginTop:1},f.createElement(p,{wrap:"wrap"},"Because of those files having been modified, the following workspaces may need to be released again (note that private workspaces are also shown here, because even though they won't be published, releasing them will allow us to flag their dependents for potential re-release):")),ke.size>3?f.createElement(g,{marginTop:1},f.createElement(ae,{workspaces:T.releaseRoots,releases:he})):null,f.createElement(g,{marginTop:1,flexDirection:"column"},f.createElement(r,{active:x%2===0,radius:1,size:2,onFocusRequest:Ue},[...T.releaseRoots].map(Je=>f.createElement(X,{key:Je.cwd,workspace:Je,decision:he.get(Je)||nG.Decision.UNDECIDED,setDecision:Xe=>be(Je,Xe)}))))),ke.size>0?f.createElement(f.Fragment,null,f.createElement(g,{marginTop:1},f.createElement(p,{wrap:"wrap"},"The following workspaces depend on other workspaces that have been marked for release, and thus may need to be released as well:")),f.createElement(g,null,f.createElement(p,null,"(Press ",f.createElement(p,{bold:!0,color:"cyanBright"},"")," to move the focus between the workspace groups.)")),ke.size>5?f.createElement(g,{marginTop:1},f.createElement(ae,{workspaces:ke,releases:he})):null,f.createElement(g,{marginTop:1,flexDirection:"column"},f.createElement(r,{active:x%2===1,radius:2,size:2,onFocusRequest:Ue},[...ke].map(Je=>f.createElement(X,{key:Je.cwd,workspace:Je,decision:he.get(Je)||nG.Decision.UNDECIDED,setDecision:Xe=>be(Je,Xe)}))))):null)},{versionFile:T},{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});if(typeof fe>"u")return 1;T.releases.clear();for(let[pe,he]of fe)T.releases.set(pe,he);await T.saveAll()}async executeStandard(){let t=await XT.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await XT.Project.find(t,this.context.cwd);if(!s)throw new nNr.WorkspaceRequiredError(r.cwd,this.context.cwd);return await r.restoreInstallState(),(await XT.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{let g=await nG.openVersionFile(r);if(g===null||g.releaseRoots.size===0)return;if(g.root===null)throw new pwt.UsageError("This command can only be run on Git repositories");if(o.reportInfo(XT.MessageName.UNNAMED,`Your PR was started right after ${XT.formatUtils.pretty(t,g.baseHash.slice(0,7),"yellow")} ${XT.formatUtils.pretty(t,g.baseTitle,"magenta")}`),g.changedFiles.size>0){o.reportInfo(XT.MessageName.UNNAMED,"You have changed the following files since then:"),o.reportSeparator();for(let B of g.changedFiles)o.reportInfo(null,`${XT.formatUtils.pretty(t,MK.npath.fromPortablePath(g.root),"gray")}${MK.npath.sep}${MK.npath.relative(MK.npath.fromPortablePath(g.root),MK.npath.fromPortablePath(B))}`)}let p=!1,f=!1,m=nG.getUndecidedWorkspaces(g);if(m.size>0){p||o.reportSeparator();for(let B of m)o.reportError(XT.MessageName.UNNAMED,`${XT.structUtils.prettyLocator(t,B.anchoredLocator)} has been modified but doesn't have a release strategy attached`);p=!0}let y=nG.getUndecidedDependentWorkspaces(g);for(let[B,v]of y)f||o.reportSeparator(),o.reportError(XT.MessageName.UNNAMED,`${XT.structUtils.prettyLocator(t,B.anchoredLocator)} doesn't have a release strategy attached, but depends on ${XT.structUtils.prettyWorkspace(t,v)} which is planned for release.`),f=!0;(p||f)&&(o.reportSeparator(),o.reportInfo(XT.MessageName.UNNAMED,"This command detected that at least some workspaces have received modifications without explicit instructions as to how they had to be released (if needed)."),o.reportInfo(XT.MessageName.UNNAMED,"To correct these errors, run `yarn version check --interactive` then follow the instructions."))})).exitCode()}};WJe.paths=[["version","check"]];WJe.usage=pwt.Command.Usage({category:"Release-related commands",description:"check that all the relevant packages have been bumped",details:"\n **Warning:** This command currently requires Git.\n\n This command will check that all the packages covered by the files listed in argument have been properly bumped or declined to bump.\n\n In the case of a bump, the check will also cover transitive packages - meaning that should `Foo` be bumped, a package `Bar` depending on `Foo` will require a decision as to whether `Bar` will need to be bumped. This check doesn't cross packages that have declined to bump.\n\n In case no arguments are passed to the function, the list of modified files will be generated by comparing the HEAD against `master`.\n ",examples:[["Check whether the modified packages need a bump","yarn version check"]]});sNr.default=WJe});var _5i=z(aNr=>{"use strict";Object.defineProperty(aNr,"__esModule",{value:!0});var h5i=(Ma(),Ai(Oa)),C5i=nl(),m5i=Bn(),yCe=(Fl(),Ai(dg)),oNr=h5i.__importDefault(Lh()),_Ce=h5i.__importStar(LJe()),PJe=class extends C5i.BaseCommand{constructor(){super(...arguments),this.deferred=yCe.Option.Boolean("-d,--deferred",{description:"Prepare the version to be bumped during the next release cycle"}),this.immediate=yCe.Option.Boolean("-i,--immediate",{description:"Bump the version immediately"}),this.strategy=yCe.Option.String()}async execute(){let t=await m5i.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await m5i.Project.find(t,this.context.cwd);if(!s)throw new C5i.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=t.get("preferDeferredVersions");this.deferred&&(a=!0),this.immediate&&(a=!1);let o=oNr.default.valid(this.strategy),g=this.strategy===_Ce.Decision.DECLINE,p;if(o)if(s.manifest.version!==null){let m=_Ce.suggestStrategy(s.manifest.version,this.strategy);m!==null?p=m:p=this.strategy}else p=this.strategy;else{let m=s.manifest.version;if(!g){if(m===null)throw new yCe.UsageError("Can't bump the version if there wasn't a version to begin with - use 0.0.0 as initial version then run the command again.");if(typeof m!="string"||!oNr.default.valid(m))throw new yCe.UsageError(`Can't bump the version (${m}) if it's not valid semver`)}p=_Ce.validateReleaseDecision(this.strategy)}if(!a){let y=(await _Ce.resolveVersionFiles(r)).get(s);if(typeof y<"u"&&p!==_Ce.Decision.DECLINE){let B=_Ce.applyStrategy(s.manifest.version,p);if(oNr.default.lt(B,y))throw new yCe.UsageError(`Can't bump the version to one that would be lower than the current deferred one (${y})`)}}let f=await _Ce.openVersionFile(r,{allowEmpty:!0});return f.releases.set(s,p),await f.saveAll(),a?0:await this.cli.run(["version","apply"])}};PJe.paths=[["version"]];PJe.usage=yCe.Command.Usage({category:"Release-related commands",description:"apply a new version to the current package",details:"\n This command will bump the version number for the given package, following the specified strategy:\n\n - If `major`, the first number from the semver range will be increased (`X.0.0`).\n - If `minor`, the second number from the semver range will be increased (`0.X.0`).\n - If `patch`, the third number from the semver range will be increased (`0.0.X`).\n - If prefixed by `pre` (`premajor`, ...), a `-0` suffix will be set (`0.0.0-0`).\n - If `prerelease`, the suffix will be increased (`0.0.0-X`); the third number from the semver range will also be increased if there was no suffix in the previous version.\n - If `decline`, the nonce will be increased for `yarn version check` to pass without version bump.\n - If a valid semver range, it will be used as new version.\n - If unspecified, Yarn will ask you for guidance.\n\n For more information about the `--deferred` flag, consult our documentation (https://yarnpkg.com/features/release-workflow#deferred-versioning).\n ",examples:[["Immediately bump the version to the next major","yarn version major"],["Prepare the version to be bumped to the next major","yarn version major --deferred"]]});aNr.default=PJe});var v5i=z($5=>{"use strict";Object.defineProperty($5,"__esModule",{value:!0});$5.versionUtils=$5.VersionCommand=$5.VersionCheckCommand=$5.VersionApplyCommand=void 0;var fwt=(Ma(),Ai(Oa)),y5i=Bn(),b5i=fwt.__importDefault(f5i());$5.VersionApplyCommand=b5i.default;var E5i=fwt.__importDefault(I5i());$5.VersionCheckCommand=E5i.default;var B5i=fwt.__importDefault(_5i());$5.VersionCommand=B5i.default;var _wc=fwt.__importStar(LJe());$5.versionUtils=_wc;var ywc={configuration:{deferredVersionFolder:{description:"Folder where are stored the versioning files",type:y5i.SettingsType.ABSOLUTE_PATH,default:"./.yarn/versions"},preferDeferredVersions:{description:"If true, running `yarn version` will assume the `--deferred` flag unless `--immediate` is set",type:y5i.SettingsType.BOOLEAN,default:!1}},commands:[b5i.default,E5i.default,B5i.default]};$5.default=ywc});var S5i=z(Iwt=>{"use strict";Object.defineProperty(Iwt,"__esModule",{value:!0});Iwt.packageExtensions=void 0;var dl={optional:!0};Iwt.packageExtensions=[["@tailwindcss/aspect-ratio@<0.2.1",{peerDependencies:{tailwindcss:"^2.0.2"}}],["@tailwindcss/line-clamp@<0.2.1",{peerDependencies:{tailwindcss:"^2.0.2"}}],["@fullhuman/postcss-purgecss@3.1.3 || 3.1.3-alpha.0",{peerDependencies:{postcss:"^8.0.0"}}],["@samverschueren/stream-to-observable@<0.3.1",{peerDependenciesMeta:{rxjs:dl,zenObservable:dl}}],["any-observable@<0.5.1",{peerDependenciesMeta:{rxjs:dl,zenObservable:dl}}],["@pm2/agent@<1.0.4",{dependencies:{debug:"*"}}],["debug@<4.2.0",{peerDependenciesMeta:{"supports-color":dl}}],["got@<11",{dependencies:{"@types/responselike":"^1.0.0","@types/keyv":"^3.1.1"}}],["cacheable-lookup@<4.1.2",{dependencies:{"@types/keyv":"^3.1.1"}}],["http-link-dataloader@*",{peerDependencies:{graphql:"^0.13.1 || ^14.0.0"}}],["typescript-language-server@*",{dependencies:{"vscode-jsonrpc":"^5.0.1","vscode-languageserver-protocol":"^3.15.0"}}],["postcss-syntax@*",{peerDependenciesMeta:{"postcss-html":dl,"postcss-jsx":dl,"postcss-less":dl,"postcss-markdown":dl,"postcss-scss":dl}}],["jss-plugin-rule-value-function@<=10.1.1",{dependencies:{"tiny-warning":"^1.0.2"}}],["ink-select-input@<4.1.0",{peerDependencies:{react:"^16.8.2"}}],["license-webpack-plugin@<2.3.18",{peerDependenciesMeta:{webpack:dl}}],["snowpack@>=3.3.0",{dependencies:{"node-gyp":"^7.1.0"}}],["promise-inflight@*",{peerDependenciesMeta:{bluebird:dl}}],["reactcss@*",{peerDependencies:{react:"*"}}],["react-color@<=2.19.0",{peerDependencies:{react:"*"}}],["gatsby-plugin-i18n@*",{dependencies:{ramda:"^0.24.1"}}],["useragent@^2.0.0",{dependencies:{request:"^2.88.0",yamlparser:"0.0.x",semver:"5.5.x"}}],["@apollographql/apollo-tools@<=0.5.2",{peerDependencies:{graphql:"^14.2.1 || ^15.0.0"}}],["material-table@^2.0.0",{dependencies:{"@babel/runtime":"^7.11.2"}}],["@babel/parser@*",{dependencies:{"@babel/types":"^7.8.3"}}],["fork-ts-checker-webpack-plugin@<=6.3.4",{peerDependencies:{eslint:">= 6",typescript:">= 2.7",webpack:">= 4","vue-template-compiler":"*"},peerDependenciesMeta:{eslint:dl,"vue-template-compiler":dl}}],["rc-animate@<=3.1.1",{peerDependencies:{react:">=16.9.0","react-dom":">=16.9.0"}}],["react-bootstrap-table2-paginator@*",{dependencies:{classnames:"^2.2.6"}}],["react-draggable@<=4.4.3",{peerDependencies:{react:">= 16.3.0","react-dom":">= 16.3.0"}}],["apollo-upload-client@<14",{peerDependencies:{graphql:"14 - 15"}}],["react-instantsearch-core@<=6.7.0",{peerDependencies:{algoliasearch:">= 3.1 < 5"}}],["react-instantsearch-dom@<=6.7.0",{dependencies:{"react-fast-compare":"^3.0.0"}}],["ws@<7.2.1",{peerDependencies:{bufferutil:"^4.0.1","utf-8-validate":"^5.0.2"},peerDependenciesMeta:{bufferutil:dl,"utf-8-validate":dl}}],["react-portal@<4.2.2",{peerDependencies:{"react-dom":"^15.0.0-0 || ^16.0.0-0 || ^17.0.0-0"}}],["react-scripts@<=4.0.1",{peerDependencies:{react:"*"}}],["testcafe@<=1.10.1",{dependencies:{"@babel/plugin-transform-for-of":"^7.12.1","@babel/runtime":"^7.12.5"}}],["testcafe-legacy-api@<=4.2.0",{dependencies:{"testcafe-hammerhead":"^17.0.1","read-file-relative":"^1.2.0"}}],["@google-cloud/firestore@<=4.9.3",{dependencies:{protobufjs:"^6.8.6"}}],["gatsby-source-apiserver@*",{dependencies:{"babel-polyfill":"^6.26.0"}}],["@webpack-cli/package-utils@<=1.0.1-alpha.4",{dependencies:{"cross-spawn":"^7.0.3"}}],["gatsby-remark-prismjs@<3.3.28",{dependencies:{lodash:"^4"}}],["gatsby-plugin-favicon@*",{peerDependencies:{webpack:"*"}}],["gatsby-plugin-sharp@<=4.6.0-next.3",{dependencies:{debug:"^4.3.1"}}],["gatsby-react-router-scroll@<=5.6.0-next.0",{dependencies:{"prop-types":"^15.7.2"}}],["@rebass/forms@*",{dependencies:{"@styled-system/should-forward-prop":"^5.0.0"},peerDependencies:{react:"^16.8.6"}}],["rebass@*",{peerDependencies:{react:"^16.8.6"}}],["@ant-design/react-slick@<=0.28.3",{peerDependencies:{react:">=16.0.0"}}],["mqtt@<4.2.7",{dependencies:{duplexify:"^4.1.1"}}],["vue-cli-plugin-vuetify@<=2.0.3",{dependencies:{semver:"^6.3.0"},peerDependenciesMeta:{"sass-loader":dl,"vuetify-loader":dl}}],["vue-cli-plugin-vuetify@<=2.0.4",{dependencies:{"null-loader":"^3.0.0"}}],["vue-cli-plugin-vuetify@>=2.4.3",{peerDependencies:{vue:"*"}}],["@vuetify/cli-plugin-utils@<=0.0.4",{dependencies:{semver:"^6.3.0"},peerDependenciesMeta:{"sass-loader":dl}}],["@vue/cli-plugin-typescript@<=5.0.0-alpha.0",{dependencies:{"babel-loader":"^8.1.0"}}],["@vue/cli-plugin-typescript@<=5.0.0-beta.0",{dependencies:{"@babel/core":"^7.12.16"},peerDependencies:{"vue-template-compiler":"^2.0.0"},peerDependenciesMeta:{"vue-template-compiler":dl}}],["cordova-ios@<=6.3.0",{dependencies:{underscore:"^1.9.2"}}],["cordova-lib@<=10.0.1",{dependencies:{underscore:"^1.9.2"}}],["git-node-fs@*",{peerDependencies:{"js-git":"^0.7.8"},peerDependenciesMeta:{"js-git":dl}}],["consolidate@<0.16.0",{peerDependencies:{mustache:"^3.0.0"},peerDependenciesMeta:{mustache:dl}}],["consolidate@<=0.16.0",{peerDependencies:{velocityjs:"^2.0.1",tinyliquid:"^0.2.34","liquid-node":"^3.0.1",jade:"^1.11.0","then-jade":"*",dust:"^0.3.0","dustjs-helpers":"^1.7.4","dustjs-linkedin":"^2.7.5",swig:"^1.4.2","swig-templates":"^2.0.3","razor-tmpl":"^1.3.1",atpl:">=0.7.6",liquor:"^0.0.5",twig:"^1.15.2",ejs:"^3.1.5",eco:"^1.1.0-rc-3",jazz:"^0.0.18",jqtpl:"~1.1.0",hamljs:"^0.6.2",hamlet:"^0.3.3",whiskers:"^0.4.0","haml-coffee":"^1.14.1","hogan.js":"^3.0.2",templayed:">=0.2.3",handlebars:"^4.7.6",underscore:"^1.11.0",lodash:"^4.17.20",pug:"^3.0.0","then-pug":"*",qejs:"^3.0.5",walrus:"^0.10.1",mustache:"^4.0.1",just:"^0.1.8",ect:"^0.5.9",mote:"^0.2.0",toffee:"^0.3.6",dot:"^1.1.3","bracket-template":"^1.1.5",ractive:"^1.3.12",nunjucks:"^3.2.2",htmling:"^0.0.8","babel-core":"^6.26.3",plates:"~0.4.11","react-dom":"^16.13.1",react:"^16.13.1","arc-templates":"^0.5.3",vash:"^0.13.0",slm:"^2.0.0",marko:"^3.14.4",teacup:"^2.0.0","coffee-script":"^1.12.7",squirrelly:"^5.1.0",twing:"^5.0.2"},peerDependenciesMeta:{velocityjs:dl,tinyliquid:dl,"liquid-node":dl,jade:dl,"then-jade":dl,dust:dl,"dustjs-helpers":dl,"dustjs-linkedin":dl,swig:dl,"swig-templates":dl,"razor-tmpl":dl,atpl:dl,liquor:dl,twig:dl,ejs:dl,eco:dl,jazz:dl,jqtpl:dl,hamljs:dl,hamlet:dl,whiskers:dl,"haml-coffee":dl,"hogan.js":dl,templayed:dl,handlebars:dl,underscore:dl,lodash:dl,pug:dl,"then-pug":dl,qejs:dl,walrus:dl,mustache:dl,just:dl,ect:dl,mote:dl,toffee:dl,dot:dl,"bracket-template":dl,ractive:dl,nunjucks:dl,htmling:dl,"babel-core":dl,plates:dl,"react-dom":dl,react:dl,"arc-templates":dl,vash:dl,slm:dl,marko:dl,teacup:dl,"coffee-script":dl,squirrelly:dl,twing:dl}}],["vue-loader@<=16.3.3",{peerDependencies:{"@vue/compiler-sfc":"^3.0.8",webpack:"^4.1.0 || ^5.0.0-0"},peerDependenciesMeta:{"@vue/compiler-sfc":dl}}],["vue-loader@^16.7.0",{peerDependencies:{"@vue/compiler-sfc":"^3.0.8",vue:"^3.2.13"},peerDependenciesMeta:{"@vue/compiler-sfc":dl,vue:dl}}],["scss-parser@<=1.0.5",{dependencies:{lodash:"^4.17.21"}}],["query-ast@<1.0.5",{dependencies:{lodash:"^4.17.21"}}],["redux-thunk@<=2.3.0",{peerDependencies:{redux:"^4.0.0"}}],["skypack@<=0.3.2",{dependencies:{tar:"^6.1.0"}}],["@npmcli/metavuln-calculator@<2.0.0",{dependencies:{"json-parse-even-better-errors":"^2.3.1"}}],["bin-links@<2.3.0",{dependencies:{"mkdirp-infer-owner":"^1.0.2"}}],["rollup-plugin-polyfill-node@<=0.8.0",{peerDependencies:{rollup:"^1.20.0 || ^2.0.0"}}],["snowpack@<3.8.6",{dependencies:{"magic-string":"^0.25.7"}}],["elm-webpack-loader@*",{dependencies:{temp:"^0.9.4"}}],["winston-transport@<=4.4.0",{dependencies:{logform:"^2.2.0"}}],["jest-vue-preprocessor@*",{dependencies:{"@babel/core":"7.8.7","@babel/template":"7.8.6"},peerDependencies:{pug:"^2.0.4"},peerDependenciesMeta:{pug:dl}}],["redux-persist@*",{peerDependencies:{react:">=16"},peerDependenciesMeta:{react:dl}}],["sodium@>=3",{dependencies:{"node-gyp":"^3.8.0"}}],["babel-plugin-graphql-tag@<=3.1.0",{peerDependencies:{graphql:"^14.0.0 || ^15.0.0"}}],["@playwright/test@<=1.14.1",{dependencies:{"jest-matcher-utils":"^26.4.2"}}],...["babel-plugin-remove-graphql-queries@<3.14.0-next.1","babel-preset-gatsby-package@<1.14.0-next.1","create-gatsby@<1.14.0-next.1","gatsby-admin@<0.24.0-next.1","gatsby-cli@<3.14.0-next.1","gatsby-core-utils@<2.14.0-next.1","gatsby-design-tokens@<3.14.0-next.1","gatsby-legacy-polyfills@<1.14.0-next.1","gatsby-plugin-benchmark-reporting@<1.14.0-next.1","gatsby-plugin-graphql-config@<0.23.0-next.1","gatsby-plugin-image@<1.14.0-next.1","gatsby-plugin-mdx@<2.14.0-next.1","gatsby-plugin-netlify-cms@<5.14.0-next.1","gatsby-plugin-no-sourcemaps@<3.14.0-next.1","gatsby-plugin-page-creator@<3.14.0-next.1","gatsby-plugin-preact@<5.14.0-next.1","gatsby-plugin-preload-fonts@<2.14.0-next.1","gatsby-plugin-schema-snapshot@<2.14.0-next.1","gatsby-plugin-styletron@<6.14.0-next.1","gatsby-plugin-subfont@<3.14.0-next.1","gatsby-plugin-utils@<1.14.0-next.1","gatsby-recipes@<0.25.0-next.1","gatsby-source-shopify@<5.6.0-next.1","gatsby-source-wikipedia@<3.14.0-next.1","gatsby-transformer-screenshot@<3.14.0-next.1","gatsby-worker@<0.5.0-next.1"].map(e=>[e,{dependencies:{"@babel/runtime":"^7.14.8"}}]),["gatsby-core-utils@<2.14.0-next.1",{dependencies:{got:"8.3.2"}}],["gatsby-plugin-gatsby-cloud@<=3.1.0-next.0",{dependencies:{"gatsby-core-utils":"^2.13.0-next.0"}}],["gatsby-plugin-gatsby-cloud@<=3.2.0-next.1",{peerDependencies:{webpack:"*"}}],["babel-plugin-remove-graphql-queries@<=3.14.0-next.1",{dependencies:{"gatsby-core-utils":"^2.8.0-next.1"}}],["gatsby-plugin-netlify@3.13.0-next.1",{dependencies:{"gatsby-core-utils":"^2.13.0-next.0"}}],["clipanion-v3-codemod@<=0.2.0",{peerDependencies:{jscodeshift:"^0.11.0"}}],["react-live@*",{peerDependencies:{"react-dom":"*",react:"*"}}],["webpack@<4.44.1",{peerDependenciesMeta:{"webpack-cli":dl,"webpack-command":dl}}],["webpack@<5.0.0-beta.23",{peerDependenciesMeta:{"webpack-cli":dl}}],["webpack-dev-server@<3.10.2",{peerDependenciesMeta:{"webpack-cli":dl}}],["@docusaurus/responsive-loader@<1.5.0",{peerDependenciesMeta:{sharp:dl,jimp:dl}}],["eslint-module-utils@*",{peerDependenciesMeta:{"eslint-import-resolver-node":dl,"eslint-import-resolver-typescript":dl,"eslint-import-resolver-webpack":dl,"@typescript-eslint/parser":dl}}],["eslint-plugin-import@*",{peerDependenciesMeta:{"@typescript-eslint/parser":dl}}],["critters-webpack-plugin@<3.0.2",{peerDependenciesMeta:{"html-webpack-plugin":dl}}],["terser@<=5.10.0",{dependencies:{acorn:"^8.5.0"}}],["babel-preset-react-app@10.0.x <10.0.2",{dependencies:{"@babel/plugin-proposal-private-property-in-object":"^7.16.7"}}],["eslint-config-react-app@*",{peerDependenciesMeta:{typescript:dl}}],["@vue/eslint-config-typescript@<11.0.0",{peerDependenciesMeta:{typescript:dl}}],["unplugin-vue2-script-setup@<0.9.1",{peerDependencies:{"@vue/composition-api":"^1.4.3","@vue/runtime-dom":"^3.2.26"}}],["@cypress/snapshot@*",{dependencies:{debug:"^3.2.7"}}],["auto-relay@<=0.14.0",{peerDependencies:{"reflect-metadata":"^0.1.13"}}],["vue-template-babel-compiler@<1.2.0",{peerDependencies:{"vue-template-compiler":"^2.6.0"}}],["@parcel/transformer-image@<2.5.0",{peerDependencies:{"@parcel/core":"*"}}],["@parcel/transformer-js@<2.5.0",{peerDependencies:{"@parcel/core":"*"}}],["parcel@*",{peerDependenciesMeta:{"@parcel/core":dl}}],["react-scripts@*",{peerDependencies:{eslint:"*"}}],["focus-trap-react@^8.0.0",{dependencies:{tabbable:"^5.3.2"}}],["react-rnd@<10.3.7",{peerDependencies:{react:">=16.3.0","react-dom":">=16.3.0"}}],["connect-mongo@<5.0.0",{peerDependencies:{"express-session":"^1.17.1"}}],["vue-i18n@<9",{peerDependencies:{vue:"^2"}}],["vue-router@<4",{peerDependencies:{vue:"^2"}}],["unified@<10",{dependencies:{"@types/unist":"^2.0.0"}}],["react-github-btn@<=1.3.0",{peerDependencies:{react:">=16.3.0"}}],["react-dev-utils@*",{peerDependencies:{typescript:">=2.7",webpack:">=4"},peerDependenciesMeta:{typescript:dl}}],["@asyncapi/react-component@<=1.0.0-next.39",{peerDependencies:{react:">=16.8.0","react-dom":">=16.8.0"}}],["xo@*",{peerDependencies:{webpack:">=1.11.0"},peerDependenciesMeta:{webpack:dl}}],["babel-plugin-remove-graphql-queries@<=4.20.0-next.0",{dependencies:{"@babel/types":"^7.15.4"}}],["gatsby-plugin-page-creator@<=4.20.0-next.1",{dependencies:{"fs-extra":"^10.1.0"}}],["gatsby-plugin-utils@<=3.14.0-next.1",{dependencies:{fastq:"^1.13.0"},peerDependencies:{graphql:"^15.0.0"}}],["gatsby-plugin-mdx@<3.1.0-next.1",{dependencies:{mkdirp:"^1.0.4"}}],["gatsby-plugin-mdx@^2",{peerDependencies:{gatsby:"^3.0.0-next"}}],["fdir@<=5.2.0",{peerDependencies:{picomatch:"2.x"},peerDependenciesMeta:{picomatch:dl}}],["babel-plugin-transform-typescript-metadata@<=0.3.2",{peerDependencies:{"@babel/core":"^7","@babel/traverse":"^7"},peerDependenciesMeta:{"@babel/traverse":dl}}],["graphql-compose@>=9.0.10",{peerDependencies:{graphql:"^14.2.0 || ^15.0.0 || ^16.0.0"}}],["vite-plugin-vuetify@<=1.0.2",{peerDependencies:{vue:"^3.0.0"}}],["webpack-plugin-vuetify@<=2.0.1",{peerDependencies:{vue:"^3.2.6"}}],["eslint-import-resolver-vite@<2.0.1",{dependencies:{debug:"^4.3.4",resolve:"^1.22.8"}}]]});var w5i=z(Cwt=>{"use strict";Object.defineProperty(Cwt,"__esModule",{value:!0});Cwt.packageExtensions=void 0;var bwc=S5i();Object.defineProperty(Cwt,"packageExtensions",{enumerable:!0,get:function(){return bwc.packageExtensions}})});var T5i=z(lNr=>{"use strict";Object.defineProperty(lNr,"__esModule",{value:!0});lNr.getPatch=Ewc;var cNr;function Ewc(){return typeof cNr>"u"&&(cNr=Dt("zlib").brotliDecompressSync(Buffer.from("G7weAByFTVk3Vs7UfHhq4yykgEM7pbW7TI43SG2S5tvGrwHBAzdz+s/npQ6tgEvobvxisrPIadkXeUAJotBn5bDZ5kAhcRqsIHe3F75Walet5hNalwgFDtxb0BiDUjiUQkjG0yW2hto9HPgiCkm316d6bC0kST72YN7D7rfkhCE9x4J0XwB0yavalxpUu2t9xszHrmtwalOxT7VslsxWcB1qpqZwERUra4psWhTV8BgwWeizurec82Caf1ABL11YMfbf8FJ9JBceZOkgmvrQPbC9DUldX/yMbmX06UQluCEjSwUoyO+EZPIjofr+/oAZUck2enraRD+oWLlnlYnj8xB+gwSo9lmmks4fXv574qSqcWA6z21uYkzMu3EWj+K23RxeQlLqiE35/rC8GcS4CGkKHKKq+zAIQwD9iRDNfiAqueLLpicFFrNsAI4zeTD/eO9MHcnRa5m8UT+M2+V+AkFST4BlKneiAQRSdST8KEAIyFlULt6wa9EBd0Ds28VmpaxquJdVt+nwdEs5xUskI13OVtFyY0UrQIRAlCuvvWivvlSKQfTO+2Q8OyUR1W5RvetaPz4jD27hdtwHFFA1Ptx6Ee/t2cY2rg2G46M1pNDRf2pWhvpy8pqMnuI3++4OF3+7OFIWXGjh+o7Nr2jNvbiYcQdQS1h903/jVFgOpA0yJ78z+x759bFA0rq+6aY5qPB4FzS3oYoLupDUhD9nDz6F6H7hpnlMf18KNKDu4IKjTWwrAnY6MFQw1W6ymOALHlFyCZmQhldg1MQHaMVVQTVgDC60TfaBqG++Y8PEoFhN/PBTZT175KNP/BlHDYGOOBmnBdzqJKplZ/ljiVG0ZBzfqeBRrrUkn6rA54462SgiliKoYVnbeptMdXNfAuaupIEi0bApF10TlgHfmEJAPUVidRVFyDupSem5po5vErPqWKhKbUIp0LozpYsIKK57dM/HKr+nguF+7924IIWMICkQ8JUigs9D+W+c4LnNoRtPPKNRUiCYmP+Jfo2lfKCKw8qpraEeWU3uiNRO6zcyKQoXPR5htmzzLznke7b4YbXW3I1lIRzmgG02Udb58U+7TpwyN7XymCgH+wuPDthZVQvRZuEP+SnLtMicz9m5zASWOBiAcLmkuFlTKuHspSIhCBD0yUPKcxu81A+4YD78rA2vtwsUEday9WNyrShyrl60rWmA+SmbYZkQOwFJWArxRYYc5jGhA5ikxYw1rx3ei4NmeX/lKiwpZ9Ln1tV2Ae7sArvxuVLbJjqJRjW1vFXAyHpvLG+8MJ6T2Ubx5M2KDa2SN6vuIGxJ9WQM9Mk3Q7aCNiZONXllhqq24DmoLbQfW2rYWsOgHWjtOmIQMyMKdiHZDjoyIq5+U700nZ6odJAoYXPQBvFNiQ78d5jaXliBqLTJEqUCwi+LiH2mx92EmNKDsJL74Z613+3lf20pxkV1+erOrjj8pW00vsPaahKUM+05ssd5uwM7K482KWEf3TCwlg/o3e5ngto7qSMz7YteIgCsF1UOcsLk7F7MxWbvrPMY473ew0G+noVL8EPbkmEMftMSeL6HFub/zy+2JQ==","base64")).toString()),cNr}});var N5i=z(gNr=>{"use strict";Object.defineProperty(gNr,"__esModule",{value:!0});gNr.getPatch=Bwc;var uNr;function Bwc(){return typeof uNr>"u"&&(uNr=Dt("zlib").brotliDecompressSync(Buffer.from("G8MSIIzURnVBnObTcvb3XE6v2S9Qgc2K801Oa5otNKEtK8BINZNcaQHy+9/vf/WXBimwutXC33P2DPc64pps5rz7NGGWaOKNSPL4Y2KRE8twut2lFOIN+OXPtRmPMRhMTILib2bEQx43az2I5d3YS8Roa5UZpF/ujHb3Djd3GDvYUfvFYSUQ39vb2cmifp/rgB4J/65JK3wRBTvMBoNBmn3mbXC63/gbBkW/2IRPri0O8bcsRBsmarF328pAln04nyJFkwUAvNu934supAqLtyerZZpJ8I8suJHhf/ocMV+scKwa8NOiDKIPXw6Ex/EEZD6TEGaW8N5zvNHYF10l6Lfooj7D5W2k3dgvQSbp2Wv8TGOayS978gxlOLVjTGXs66ozewbrjwElLtyrYNnWTfzzdEutgROUFPVMhnMoy8EjJLLlWwIEoySxliim9kYW30JUHiPVyjt0iAw/ZpPmCbUCltYPnq6ZNblIKhTNhqS/oqC9iya5sGKZTOVsTEg34n92uZTf2iPpcZih8rPW8CzA+adIGmyCPcKdLMsBLShd+zuEbTrqpwuh+DLmracZcjPC5Sdf5odDAhKpFuOsQS67RT+1VgWWygSv3YwxDnylc04/PYuaMeIzhBkLrvs7e/OUzRTF56MmfY6rI63QtEjEQzq637zQqJ39nNhu3NmoRRhW/086bHGBUtx0PE0j3aEGvkdh9WJC8y8j8mqqke9/dQ5la+Q3ba4RlhvTbnfQhPDDab3tUifkjKuOsp13mXEmO00Mu88F/M67R7LXfoFDFLNtgCSWjWX+3Jn1371pJTK9xPBiMJafvDjtFyAzu8rxeQ0TKMQXNPs5xxiBOd+BRJP8KP88XPtJIbZKh/cdW8KvBUkpqKpGoiIaA32c3/JnQr4efXt85mXvidOvn/eU3Pase1typLYBalJ14mCso9h79nuMOuCa/kZAOkJHmTjP5RM2WNoPasZUAnT1TAE/NH25hUxcQv6hQWR/m1PKk4ooXMcM4SR1iYU3fUohvqk4RY2hbmTVVIXv6TvqO+0doOjgeVFAcom+RlwJQmOVH7pr1Q9LoJT6n1DeQEB+NHygsATbIwTcOKZlJsY8G4+suX1uQLjUWwLjjs0mvSvZcLTpIGAekeR7GCgl8eo3ndAqEe2XCav4huliHjdbIPBsGJuPX7lrO9HX1UbXRH5opOe1x6JsOSgHZR+EaxuXVhpLLxm6jk1LJtZfHSc6BKPun3CpYYVMJGwEUyk8MTGG0XL5MfEwaXpnc9TKnBmlGn6nHiGREc3ysn47XIBDzA+YvFdjZzVIEDcKGpS6PbUJehFRjEne8D0lVU1XuRtlgszq6pTNlQ/3MzNOEgCWPyTct22V2mEi2krizn5VDo9B19/X2DB3hCGRMM7ONbtnAcIx/OWB1u5uPbW1gsH8irXxT/IzG0PoXWYjhbMsH3KTuoOl5o17PulcgvsfTSnKFM354GWI8luqZnrswWjiXy3G+Vbyo1KMopFmmvBwNELgaS8z8dNZchx/Cl/xjddxhMcyqtzFyONb2Zdu90NkI8pAeufe7YlXrp53v8Dj/l8vWeVspRKBGXScBBPI/HinSTGmLDOGGOCIyH0JFdOZx0gWsacNlQLJMIrBhqRxXxHF/5pseWwejlAAvZ3klZSDSYY8mkToaWejXhgNomeGtx1DTLEUFMRkgF5yFB22WYdJnaWN14r1YJj81hGi45+jrADS5nYRhCiSlCJJ1nL8pYX+HDSMhdTEWyRcgHVp/IsUIZYMfT+YYncUQPgcxNGCHfZ88vDdrcUuaGIl6zhAsiaq7R5dfqrqXH/JcBhfjT8D0azayIyEz75Nxp6YkcyDxlJq3EXnJUpqDohJJOysL1t1uNiHESlvsxPb5cpbW0+ICZqJmUZus1BMW0F5IVBODLIo2zHHjA0=","base64")).toString()),uNr}});var R5i=z(dNr=>{"use strict";Object.defineProperty(dNr,"__esModule",{value:!0});dNr.getPatch=vwc;var ANr;function vwc(){return typeof ANr>"u"&&(ANr=Dt("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),ANr}});var x5i=z(pNr=>{"use strict";Object.defineProperty(pNr,"__esModule",{value:!0});var zq=Bn(),Swc=w5i(),wwc=T5i(),Twc=N5i(),Nwc=R5i(),D5i=new Map([[zq.structUtils.makeIdent(null,"fsevents").identHash,wwc.getPatch],[zq.structUtils.makeIdent(null,"resolve").identHash,Twc.getPatch],[zq.structUtils.makeIdent(null,"typescript").identHash,Nwc.getPatch]]),Rwc={hooks:{registerPackageExtensions:async(e,t)=>{for(let[r,s]of Swc.packageExtensions)t(zq.structUtils.parseDescriptor(r,!0),s)},getBuiltinPatch:async(e,t)=>{let r="compat/";if(!t.startsWith(r))return;let s=zq.structUtils.parseIdent(t.slice(r.length)),a=D5i.get(s.identHash)?.();return typeof a<"u"?a:null},reduceDependency:async(e,t,r,s)=>typeof D5i.get(e.identHash)>"u"?e:zq.structUtils.makeDescriptor(e,zq.structUtils.makeRange({protocol:"patch:",source:zq.structUtils.stringifyDescriptor(e),selector:`optional!builtin`,params:null}))}};pNr.default=Rwc});var k5i=z(fNr=>{"use strict";Object.defineProperty(fNr,"__esModule",{value:!0});var Dwc=nl(),mwt=Bn(),hwt=(Fl(),Ai(dg)),_wt=class extends Dwc.BaseCommand{constructor(){super(...arguments),this.pkg=hwt.Option.String("-p,--package",{description:"The package to run the provided command from"}),this.quiet=hwt.Option.Boolean("-q,--quiet",!1,{description:"Only report critical errors instead of printing the full install logs"}),this.command=hwt.Option.String(),this.args=hwt.Option.Proxy()}async execute(){let t=[];this.pkg&&t.push("--package",this.pkg),this.quiet&&t.push("--quiet");let r=this.command.replace(/^(@[^@/]+)(@|$)/,"$1/create$2"),s=mwt.structUtils.parseDescriptor(r),a=s.name.match(/^create(-|$)/)?s:s.scope?mwt.structUtils.makeIdent(s.scope,`create-${s.name}`):mwt.structUtils.makeIdent(null,`create-${s.name}`),o=mwt.structUtils.stringifyIdent(a);return s.range!=="unknown"&&(o+=`@${s.range}`),this.cli.run(["dlx",...t,o,...this.args])}};_wt.paths=[["create"]];fNr.default=_wt});var F5i=z(INr=>{"use strict";Object.defineProperty(INr,"__esModule",{value:!0});var G5i=nl(),qq=Bn(),ywt=Bn(),sZ=Ro(),OJe=(Fl(),Ai(dg)),MJe=class extends G5i.BaseCommand{constructor(){super(...arguments),this.packages=OJe.Option.Array("-p,--package",{description:"The package(s) to install before running the command"}),this.quiet=OJe.Option.Boolean("-q,--quiet",!1,{description:"Only report critical errors instead of printing the full install logs"}),this.command=OJe.Option.String(),this.args=OJe.Option.Proxy()}async execute(){return qq.Configuration.telemetry=null,await sZ.xfs.mktempPromise(async t=>{let r=sZ.ppath.join(t,`dlx-${process.pid}`);await sZ.xfs.mkdirPromise(r),await sZ.xfs.writeFilePromise(sZ.ppath.join(r,"package.json"),`{} -`),await sZ.xfs.writeFilePromise(sZ.ppath.join(r,"yarn.lock"),"");let s=sZ.ppath.join(r,".yarnrc.yml"),a=await qq.Configuration.findProjectCwd(this.context.cwd),g={enableGlobalCache:!(await qq.Configuration.find(this.context.cwd,null,{strict:!1})).get("enableGlobalCache"),enableTelemetry:!1,logFilters:[{code:(0,qq.stringifyMessageName)(qq.MessageName.UNUSED_PACKAGE_EXTENSION),level:ywt.formatUtils.LogLevel.Discard}]},p=a!==null?sZ.ppath.join(a,".yarnrc.yml"):null;p!==null&&sZ.xfs.existsSync(p)?(await sZ.xfs.copyFilePromise(p,s),await qq.Configuration.updateConfiguration(r,O=>{let X=qq.miscUtils.toMerged(O,g);return Array.isArray(O.plugins)&&(X.plugins=O.plugins.map(U=>{let le=typeof U=="string"?U:U.path,ae=sZ.npath.isAbsolute(le)?le:sZ.npath.resolve(sZ.npath.fromPortablePath(a),le);return typeof U=="string"?ae:{path:ae,spec:U.spec}})),X})):await sZ.xfs.writeJsonPromise(s,g);let f=this.packages??[this.command],m=ywt.structUtils.parseDescriptor(this.command).name,y=await this.cli.run(["add","--fixed","--",...f],{cwd:r,quiet:this.quiet});if(y!==0)return y;this.quiet||this.context.stdout.write(` -`);let B=await qq.Configuration.find(r,this.context.plugins),{project:v,workspace:G}=await qq.Project.find(B,r);if(G===null)throw new G5i.WorkspaceRequiredError(v.cwd,r);await v.restoreInstallState();let T=await ywt.scriptUtils.getWorkspaceAccessibleBinaries(G);return T.has(m)===!1&&T.size===1&&typeof this.packages>"u"&&(m=Array.from(T)[0][0]),await ywt.scriptUtils.executeWorkspaceAccessibleBinary(G,m,this.args,{packageAccessibleBinaries:T,cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})})}};MJe.paths=[["dlx"]];MJe.usage=OJe.Command.Usage({description:"run a package in a temporary environment",details:"\n This command will install a package within a temporary environment, and run its binary script if it contains any. The binary will run within the current cwd.\n\n By default Yarn will download the package named `command`, but this can be changed through the use of the `-p,--package` flag which will instruct Yarn to still run the same command but from a different package.\n\n Using `yarn dlx` as a replacement of `yarn add` isn't recommended, as it makes your project non-deterministic (Yarn doesn't keep track of the packages installed through `dlx` - neither their name, nor their version).\n ",examples:[["Use create-react-app to create a new React app","yarn dlx create-react-app ./my-app"],["Install multiple packages for a single command",`yarn dlx -p typescript -p ts-node ts-node --transpile-only -e "console.log('hello!')"`]]});INr.default=MJe});var W5i=z(bCe=>{"use strict";Object.defineProperty(bCe,"__esModule",{value:!0});bCe.DlxCommand=bCe.CreateCommand=void 0;var Z5i=(Ma(),Ai(Oa)),L5i=Z5i.__importDefault(k5i());bCe.CreateCommand=L5i.default;var V5i=Z5i.__importDefault(F5i());bCe.DlxCommand=V5i.default;var xwc={commands:[L5i.default,V5i.default]};bCe.default=xwc});var XNe=z(mae=>{"use strict";Object.defineProperty(mae,"__esModule",{value:!0});mae.PROTOCOL=mae.TARBALL_REGEXP=mae.FILE_REGEXP=void 0;mae.FILE_REGEXP=/^(?:[a-zA-Z]:[\\/]|\.{0,2}\/)/;mae.TARBALL_REGEXP=/^[^?]*\.(?:tar\.gz|tgz)(?:::.*)?$/;mae.PROTOCOL="file:"});var JNe=z(G9=>{"use strict";Object.defineProperty(G9,"__esModule",{value:!0});G9.makeBufferFromLocator=G9.makeArchiveFromLocator=G9.fetchArchiveFromLocator=G9.makeLocator=G9.makeSpec=G9.parseSpec=void 0;var eX=Bn(),pS=Ro(),kwc=XNe();function Gwc(e){let{params:t,selector:r}=eX.structUtils.parseRange(e),s=pS.npath.toPortablePath(r);return{parentLocator:t&&typeof t.locator=="string"?eX.structUtils.parseLocator(t.locator):null,path:s}}G9.parseSpec=Gwc;function P5i({parentLocator:e,path:t,hash:r,protocol:s}){let a=e!==null?{locator:eX.structUtils.stringifyLocator(e)}:{},o=typeof r<"u"?{hash:r}:{};return eX.structUtils.makeRange({protocol:s,source:t,selector:t,params:{...o,...a}})}G9.makeSpec=P5i;function Fwc(e,{parentLocator:t,path:r,hash:s,protocol:a}){return eX.structUtils.makeLocator(e,P5i({parentLocator:t,path:r,hash:s,protocol:a}))}G9.makeLocator=Fwc;async function Zwc(e,t){let{parentLocator:r,path:s}=eX.structUtils.parseFileStyleRange(e.reference,{protocol:kwc.PROTOCOL}),a=pS.ppath.isAbsolute(s)?{packageFs:new pS.CwdFS(pS.PortablePath.root),prefixPath:pS.PortablePath.dot,localPath:pS.PortablePath.root}:await t.fetcher.fetch(r,t),o=a.localPath?{packageFs:new pS.CwdFS(pS.PortablePath.root),prefixPath:pS.ppath.relative(pS.PortablePath.root,a.localPath)}:a;a!==o&&a.releaseFs&&a.releaseFs();let g=o.packageFs,p=pS.ppath.join(o.prefixPath,s);return await eX.miscUtils.releaseAfterUseAsync(async()=>await g.readFilePromise(p),o.releaseFs)}G9.fetchArchiveFromLocator=Zwc;async function O5i(e,{protocol:t,fetchOptions:r,inMemory:s=!1}){let{parentLocator:a,path:o}=eX.structUtils.parseFileStyleRange(e.reference,{protocol:t}),g=pS.ppath.isAbsolute(o)?{packageFs:new pS.CwdFS(pS.PortablePath.root),prefixPath:pS.PortablePath.dot,localPath:pS.PortablePath.root}:await r.fetcher.fetch(a,r),p=g.localPath?{packageFs:new pS.CwdFS(pS.PortablePath.root),prefixPath:pS.ppath.relative(pS.PortablePath.root,g.localPath)}:g;g!==p&&g.releaseFs&&g.releaseFs();let f=p.packageFs,m=pS.ppath.join(p.prefixPath,o);return await eX.miscUtils.releaseAfterUseAsync(async()=>await eX.tgzUtils.makeArchiveFromDirectory(m,{baseFs:f,prefixPath:eX.structUtils.getIdentVendorPath(e),compressionLevel:r.project.configuration.get("compressionLevel"),inMemory:s}),p.releaseFs)}G9.makeArchiveFromLocator=O5i;async function Lwc(e,{protocol:t,fetchOptions:r}){return(await O5i(e,{protocol:t,fetchOptions:r,inMemory:!0})).getBufferAndClose()}G9.makeBufferFromLocator=Lwc});var Q5i=z(bwt=>{"use strict";Object.defineProperty(bwt,"__esModule",{value:!0});bwt.FileFetcher=void 0;var Vwc=(Ma(),Ai(Oa)),CNr=Bn(),M5i=Ro(),mNr=XNe(),Wwc=Vwc.__importStar(JNe()),hNr=class{supports(t,r){return!!t.reference.startsWith(mNr.PROTOCOL)}getLocalPath(t,r){let{parentLocator:s,path:a}=CNr.structUtils.parseFileStyleRange(t.reference,{protocol:mNr.PROTOCOL});if(M5i.ppath.isAbsolute(a))return a;let o=r.fetcher.getLocalPath(s,r);return o===null?null:M5i.ppath.resolve(o,a)}async fetch(t,r){let s=r.checksums.get(t.locatorHash)||null,[a,o,g]=await r.cache.fetchPackageFromCache(t,s,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${CNr.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.fetchFromDisk(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:CNr.structUtils.getIdentVendorPath(t),localPath:this.getLocalPath(t,r),checksum:g}}async fetchFromDisk(t,r){return Wwc.makeArchiveFromLocator(t,{protocol:mNr.PROTOCOL,fetchOptions:r})}};bwt.FileFetcher=hNr});var Y5i=z(Ewt=>{"use strict";Object.defineProperty(Ewt,"__esModule",{value:!0});Ewt.FileResolver=void 0;var Pwc=(Ma(),Ai(Oa)),hae=Bn(),Owc=Bn(),Mwc=Bn(),_ae=XNe(),_Nr=Pwc.__importStar(JNe()),Qwc=2,yNr=class{supportsDescriptor(t,r){return t.range.match(_ae.FILE_REGEXP)?!0:!!t.range.startsWith(_ae.PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(_ae.PROTOCOL)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,s){return _ae.FILE_REGEXP.test(t.range)&&(t=hae.structUtils.makeDescriptor(t,`${_ae.PROTOCOL}${t.range}`)),hae.structUtils.bindDescriptor(t,{locator:hae.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,s){if(!s.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{path:a,parentLocator:o}=_Nr.parseSpec(t.range);if(o===null)throw new Error("Assertion failed: The descriptor should have been bound");let g=await _Nr.makeBufferFromLocator(hae.structUtils.makeLocator(t,hae.structUtils.makeRange({protocol:_ae.PROTOCOL,source:a,selector:a,params:{locator:hae.structUtils.stringifyLocator(o)}})),{protocol:_ae.PROTOCOL,fetchOptions:s.fetchOptions}),p=hae.hashUtils.makeHash(`${Qwc}`,g).slice(0,6);return[_Nr.makeLocator(t,{parentLocator:o,path:a,hash:p,protocol:_ae.PROTOCOL})]}async getSatisfying(t,r,s,a){let[o]=await this.getCandidates(t,r,a);return{locators:s.filter(g=>g.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let s=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await hae.miscUtils.releaseAfterUseAsync(async()=>await Mwc.Manifest.find(s.prefixPath,{baseFs:s.packageFs}),s.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:Owc.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};Ewt.FileResolver=yNr});var X5i=z(vwt=>{"use strict";Object.defineProperty(vwt,"__esModule",{value:!0});vwt.TarballFileFetcher=void 0;var Ywc=(Ma(),Ai(Oa)),Bwt=Bn(),H5i=XNe(),Hwc=Ywc.__importStar(JNe()),bNr=class{supports(t,r){return H5i.TARBALL_REGEXP.test(t.reference)?!!t.reference.startsWith(H5i.PROTOCOL):!1}getLocalPath(t,r){return null}async fetch(t,r){let s=r.checksums.get(t.locatorHash)||null,[a,o,g]=await r.cache.fetchPackageFromCache(t,s,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${Bwt.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.fetchFromDisk(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:Bwt.structUtils.getIdentVendorPath(t),checksum:g}}async fetchFromDisk(t,r){let s=await Hwc.fetchArchiveFromLocator(t,r);return await Bwt.tgzUtils.convertToZip(s,{configuration:r.project.configuration,prefixPath:Bwt.structUtils.getIdentVendorPath(t),stripComponents:1})}};vwt.TarballFileFetcher=bNr});var J5i=z(Twt=>{"use strict";Object.defineProperty(Twt,"__esModule",{value:!0});Twt.TarballFileResolver=void 0;var Xwc=(Ma(),Ai(Oa)),Jwc=Bn(),Uwc=Bn(),Kwc=Bn(),Swt=Bn(),$q=XNe(),wwt=Xwc.__importStar(JNe()),ENr=class{supportsDescriptor(t,r){return $q.TARBALL_REGEXP.test(t.range)?!!(t.range.startsWith($q.PROTOCOL)||$q.FILE_REGEXP.test(t.range)):!1}supportsLocator(t,r){return $q.TARBALL_REGEXP.test(t.reference)?!!t.reference.startsWith($q.PROTOCOL):!1}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,s){return $q.FILE_REGEXP.test(t.range)&&(t=Swt.structUtils.makeDescriptor(t,`${$q.PROTOCOL}${t.range}`)),Swt.structUtils.bindDescriptor(t,{locator:Swt.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,s){if(!s.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{path:a,parentLocator:o}=wwt.parseSpec(t.range);if(o===null)throw new Error("Assertion failed: The descriptor should have been bound");let g=wwt.makeLocator(t,{parentLocator:o,path:a,hash:"",protocol:$q.PROTOCOL}),p=await wwt.fetchArchiveFromLocator(g,s.fetchOptions),f=Jwc.hashUtils.makeHash(p).slice(0,6);return[wwt.makeLocator(t,{parentLocator:o,path:a,hash:f,protocol:$q.PROTOCOL})]}async getSatisfying(t,r,s,a){let[o]=await this.getCandidates(t,r,a);return{locators:s.filter(g=>g.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let s=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await Swt.miscUtils.releaseAfterUseAsync(async()=>await Uwc.Manifest.find(s.prefixPath,{baseFs:s.packageFs}),s.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:Kwc.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};Twt.TarballFileResolver=ENr});var q5i=z(m3=>{"use strict";Object.defineProperty(m3,"__esModule",{value:!0});m3.TarballFileResolver=m3.TarballFileFetcher=m3.FileResolver=m3.FileFetcher=m3.fileUtils=void 0;var jwc=(Ma(),Ai(Oa)),U5i=Q5i();Object.defineProperty(m3,"FileFetcher",{enumerable:!0,get:function(){return U5i.FileFetcher}});var K5i=Y5i();Object.defineProperty(m3,"FileResolver",{enumerable:!0,get:function(){return K5i.FileResolver}});var j5i=X5i();Object.defineProperty(m3,"TarballFileFetcher",{enumerable:!0,get:function(){return j5i.TarballFileFetcher}});var z5i=J5i();Object.defineProperty(m3,"TarballFileResolver",{enumerable:!0,get:function(){return z5i.TarballFileResolver}});var zwc=jwc.__importStar(JNe());m3.fileUtils=zwc;var qwc={fetchers:[j5i.TarballFileFetcher,U5i.FileFetcher],resolvers:[z5i.TarballFileResolver,K5i.FileResolver]};m3.default=qwc});var BNr=z(yae=>{"use strict";Object.defineProperty(yae,"__esModule",{value:!0});yae.invalidGithubUrlMessage=yae.parseGithubUrl=yae.isGithubUrl=void 0;var $wc=(Ma(),Ai(Oa)),eTc=$wc.__importDefault(Dt("querystring")),$5i=[/^https?:\/\/(?:([^/]+?)@)?github.com\/([^/#]+)\/([^/#]+)\/tarball\/([^/#]+)(?:#(.*))?$/,/^https?:\/\/(?:([^/]+?)@)?github.com\/([^/#]+)\/([^/#]+?)(?:\.git)?(?:#(.*))?$/];function tTc(e){return e?$5i.some(t=>!!e.match(t)):!1}yae.isGithubUrl=tTc;function rTc(e){let t;for(let p of $5i)if(t=e.match(p),t)break;if(!t)throw new Error(eXi(e));let[,r,s,a,o="master"]=t,{commit:g}=eTc.default.parse(o);return o=g||o.replace(/[^:]*:/,""),{auth:r,username:s,reponame:a,treeish:o}}yae.parseGithubUrl=rTc;function eXi(e){return`Input cannot be parsed as a valid GitHub URL ('${e}').`}yae.invalidGithubUrlMessage=eXi});var rXi=z(Rwt=>{"use strict";Object.defineProperty(Rwt,"__esModule",{value:!0});Rwt.GithubFetcher=void 0;var nTc=(Ma(),Ai(Oa)),ECe=Bn(),Nwt=Ro(),iTc=ONe(),tXi=nTc.__importStar(BNr()),vNr=class{supports(t,r){return!!tXi.isGithubUrl(t.reference)}getLocalPath(t,r){return null}async fetch(t,r){let s=r.checksums.get(t.locatorHash)||null,[a,o,g]=await r.cache.fetchPackageFromCache(t,s,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${ECe.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from GitHub`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:ECe.structUtils.getIdentVendorPath(t),checksum:g}}async fetchFromNetwork(t,r){let s=await ECe.httpUtils.get(this.getLocatorUrl(t,r),{configuration:r.project.configuration});return await Nwt.xfs.mktempPromise(async a=>{let o=new Nwt.CwdFS(a);await ECe.tgzUtils.extractArchiveTo(s,o,{stripComponents:1});let g=iTc.gitUtils.splitRepoUrl(t.reference),p=Nwt.ppath.join(a,"package.tgz");await ECe.scriptUtils.prepareExternalProject(a,p,{configuration:r.project.configuration,report:r.report,workspace:g.extra.workspace,locator:t});let f=await Nwt.xfs.readFilePromise(p);return await ECe.tgzUtils.convertToZip(f,{configuration:r.project.configuration,prefixPath:ECe.structUtils.getIdentVendorPath(t),stripComponents:1})})}getLocatorUrl(t,r){let{auth:s,username:a,reponame:o,treeish:g}=tXi.parseGithubUrl(t.reference);return`https://${s?`${s}@`:""}github.com/${a}/${o}/archive/${g}.tar.gz`}};Rwt.GithubFetcher=vNr});var iXi=z(BCe=>{"use strict";Object.defineProperty(BCe,"__esModule",{value:!0});BCe.GithubFetcher=BCe.githubUtils=void 0;var sTc=(Ma(),Ai(Oa)),nXi=rXi();Object.defineProperty(BCe,"GithubFetcher",{enumerable:!0,get:function(){return nXi.GithubFetcher}});var oTc=sTc.__importStar(BNr());BCe.githubUtils=oTc;var aTc={hooks:{async fetchHostedRepository(e,t,r){if(e!==null)return e;let s=new nXi.GithubFetcher;if(!s.supports(t,r))return null;try{return await s.fetch(t,r)}catch{return null}}}};BCe.default=aTc});var SNr=z(Dwt=>{"use strict";Object.defineProperty(Dwt,"__esModule",{value:!0});Dwt.isTgzUrl=void 0;function cTc(e){let t;try{t=new URL(e)}catch{return!1}return!(t.protocol!=="http:"&&t.protocol!=="https:"||!t.pathname.match(/(\.tar\.gz|\.tgz|\/[^.]+)$/))}Dwt.isTgzUrl=cTc});var sXi=z(xwt=>{"use strict";Object.defineProperty(xwt,"__esModule",{value:!0});xwt.TarballHttpFetcher=void 0;var lTc=(Ma(),Ai(Oa)),QJe=Bn(),uTc=lTc.__importStar(SNr()),wNr=class{supports(t,r){return uTc.isTgzUrl(t.reference)}getLocalPath(t,r){return null}async fetch(t,r){let s=r.checksums.get(t.locatorHash)||null,[a,o,g]=await r.cache.fetchPackageFromCache(t,s,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${QJe.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote server`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:QJe.structUtils.getIdentVendorPath(t),checksum:g}}async fetchFromNetwork(t,r){let s=await QJe.httpUtils.get(t.reference,{configuration:r.project.configuration});return await QJe.tgzUtils.convertToZip(s,{configuration:r.project.configuration,prefixPath:QJe.structUtils.getIdentVendorPath(t),stripComponents:1})}};xwt.TarballHttpFetcher=wNr});var cXi=z(kwt=>{"use strict";Object.defineProperty(kwt,"__esModule",{value:!0});kwt.TarballHttpResolver=void 0;var gTc=(Ma(),Ai(Oa)),ATc=Bn(),dTc=Bn(),oXi=Bn(),aXi=gTc.__importStar(SNr()),TNr=class{supportsDescriptor(t,r){return aXi.isTgzUrl(t.range)}supportsLocator(t,r){return aXi.isTgzUrl(t.reference)}shouldPersistResolution(t,r){return!0}bindDescriptor(t,r,s){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,s){return[oXi.structUtils.convertDescriptorToLocator(t)]}async getSatisfying(t,r,s,a){let[o]=await this.getCandidates(t,r,a);return{locators:s.filter(g=>g.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let s=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await oXi.miscUtils.releaseAfterUseAsync(async()=>await ATc.Manifest.find(s.prefixPath,{baseFs:s.packageFs}),s.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:dTc.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};kwt.TarballHttpResolver=TNr});var gXi=z(vCe=>{"use strict";Object.defineProperty(vCe,"__esModule",{value:!0});vCe.TarballHttpResolver=vCe.TarballHttpFetcher=void 0;var lXi=sXi();Object.defineProperty(vCe,"TarballHttpFetcher",{enumerable:!0,get:function(){return lXi.TarballHttpFetcher}});var uXi=cXi();Object.defineProperty(vCe,"TarballHttpResolver",{enumerable:!0,get:function(){return uXi.TarballHttpResolver}});var pTc={fetchers:[lXi.TarballHttpFetcher],resolvers:[uXi.TarballHttpResolver]};vCe.default=pTc});var AXi=z(NNr=>{"use strict";Object.defineProperty(NNr,"__esModule",{value:!0});var fTc=nl(),YK=Bn(),SCe=Bn(),__=Ro(),bae=(Fl(),Ai(dg)),YJe=class extends fTc.BaseCommand{constructor(){super(...arguments),this.private=bae.Option.Boolean("-p,--private",!1,{description:"Initialize a private package"}),this.workspace=bae.Option.Boolean("-w,--workspace",!1,{description:"Initialize a workspace root with a `packages/` directory"}),this.install=bae.Option.String("-i,--install",!1,{tolerateBoolean:!0,description:"Initialize a package with a specific bundle that will be locked in the project"}),this.name=bae.Option.String("-n,--name",{description:"Initialize a package with the given name"}),this.usev2=bae.Option.Boolean("-2",!1,{hidden:!0}),this.yes=bae.Option.Boolean("-y,--yes",{hidden:!0})}async execute(){let t=await YK.Configuration.find(this.context.cwd,this.context.plugins),r=typeof this.install=="string"?this.install:this.usev2||this.install===!0?"latest":null;return r!==null?await this.executeProxy(t,r):await this.executeRegular(t)}async executeProxy(t,r){if(t.projectCwd!==null&&t.projectCwd!==this.context.cwd)throw new bae.UsageError("Cannot use the --install flag from within a project subdirectory");__.xfs.existsSync(this.context.cwd)||await __.xfs.mkdirPromise(this.context.cwd,{recursive:!0});let s=__.ppath.join(this.context.cwd,__.Filename.lockfile);__.xfs.existsSync(s)||await __.xfs.writeFilePromise(s,"");let a=await this.cli.run(["set","version",r],{quiet:!0});if(a!==0)return a;let o=[];return this.private&&o.push("-p"),this.workspace&&o.push("-w"),this.name&&o.push(`-n=${this.name}`),this.yes&&o.push("-y"),await __.xfs.mktempPromise(async g=>{let{code:p}=await SCe.execUtils.pipevp("yarn",["init",...o],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:await SCe.scriptUtils.makeScriptEnv({binFolder:g})});return p})}async executeRegular(t){let r=null;try{r=(await YK.Project.find(t,this.context.cwd)).project}catch{r=null}__.xfs.existsSync(this.context.cwd)||await __.xfs.mkdirPromise(this.context.cwd,{recursive:!0});let s=await YK.Manifest.tryFind(this.context.cwd),a=s??new YK.Manifest,o=Object.fromEntries(t.get("initFields").entries());a.load(o),a.name=a.name??SCe.structUtils.makeIdent(t.get("initScope"),this.name??__.ppath.basename(this.context.cwd)),a.packageManager=YK.YarnVersion&&YK.miscUtils.isTaggedYarnVersion(YK.YarnVersion)?`yarn@${YK.YarnVersion}`:null,(!s&&this.workspace||this.private)&&(a.private=!0),this.workspace&&a.workspaceDefinitions.length===0&&(await __.xfs.mkdirPromise(__.ppath.join(this.context.cwd,"packages"),{recursive:!0}),a.workspaceDefinitions=[{pattern:"packages/*"}]);let g={};a.exportTo(g);let p=__.ppath.join(this.context.cwd,YK.Manifest.fileName);await __.xfs.changeFilePromise(p,`${JSON.stringify(g,null,2)} -`,{automaticNewlines:!0});let f=[p],m=__.ppath.join(this.context.cwd,"README.md");if(__.xfs.existsSync(m)||(await __.xfs.writeFilePromise(m,`# ${SCe.structUtils.stringifyIdent(a.name)} -`),f.push(m)),!r||r.cwd===this.context.cwd){let y=__.ppath.join(this.context.cwd,__.Filename.lockfile);__.xfs.existsSync(y)||(await __.xfs.writeFilePromise(y,""),f.push(y));let v=[".yarn/*","!.yarn/patches","!.yarn/plugins","!.yarn/releases","!.yarn/sdks","!.yarn/versions","","# Swap the comments on the following lines if you wish to use zero-installs","# In that case, don't forget to run `yarn config set enableGlobalCache false`!","# Documentation here: https://yarnpkg.com/features/caching#zero-installs","","#!.yarn/cache",".pnp.*"].map(ge=>`${ge} -`).join(""),G=__.ppath.join(this.context.cwd,".gitignore");__.xfs.existsSync(G)||(await __.xfs.writeFilePromise(G,v),f.push(G));let O=["/.yarn/** linguist-vendored","/.yarn/releases/* binary","/.yarn/plugins/**/* binary","/.pnp.* binary linguist-generated"].map(ge=>`${ge} -`).join(""),X=__.ppath.join(this.context.cwd,".gitattributes");__.xfs.existsSync(X)||(await __.xfs.writeFilePromise(X,O),f.push(X));let U={"*":{endOfLine:"lf",insertFinalNewline:!0},"*.{js,json,yml}":{charset:"utf-8",indentStyle:"space",indentSize:2}};YK.miscUtils.mergeIntoTarget(U,t.get("initEditorConfig"));let le=`root = true + `,examples:[["Apply the version change to the local workspace","yarn version apply"],["Apply the version change to all the workspaces in the local workspace","yarn version apply --all"]]});cNr.default=PJe});var EYi=z(gNr=>{"use strict";Object.defineProperty(gNr,"__esModule",{value:!0});var KK=(Oa(),Ai(Pa)),lNr=il(),JT=Bn(),UK=No(),Fwc=KK.__importStar(aSt()),Cwt=(Zl(),Ai(pg)),uNr=KK.__importDefault(Vh()),cG=KK.__importStar(WJe()),OJe=class extends lNr.BaseCommand{constructor(){super(...arguments),this.interactive=Cwt.Option.Boolean("-i,--interactive",{description:"Open an interactive interface used to set version bumps"})}async execute(){return this.interactive?await this.executeInteractive():await this.executeStandard()}async executeInteractive(){Fwc.checkRequirements(this.context);let{Gem:t}=await Promise.resolve().then(()=>KK.__importStar(NSt())),{ScrollableItems:r}=await Promise.resolve().then(()=>KK.__importStar(GSt())),{FocusRequest:s}=await Promise.resolve().then(()=>KK.__importStar(ySr())),{useListInput:a}=await Promise.resolve().then(()=>KK.__importStar(xSt())),{renderForm:o}=await Promise.resolve().then(()=>KK.__importStar(FSt())),{Box:g,Text:p}=await Promise.resolve().then(()=>KK.__importStar(JQ())),{default:f,useCallback:m,useState:y}=await Promise.resolve().then(()=>KK.__importStar(Om())),B=await JT.Configuration.find(this.context.cwd,this.context.plugins),{project:v,workspace:k}=await JT.Project.find(B,this.context.cwd);if(!k)throw new lNr.WorkspaceRequiredError(v.cwd,this.context.cwd);await v.restoreInstallState();let T=await cG.openVersionFile(v);if(T===null||T.releaseRoots.size===0)return 0;if(T.root===null)throw new Cwt.UsageError("This command can only be run on Git repositories");let O=()=>f.createElement(g,{flexDirection:"row",paddingBottom:1},f.createElement(g,{flexDirection:"column",width:60},f.createElement(g,null,f.createElement(p,null,"Press ",f.createElement(p,{bold:!0,color:"cyanBright"},""),"/",f.createElement(p,{bold:!0,color:"cyanBright"},"")," to select workspaces.")),f.createElement(g,null,f.createElement(p,null,"Press ",f.createElement(p,{bold:!0,color:"cyanBright"},""),"/",f.createElement(p,{bold:!0,color:"cyanBright"},"")," to select release strategies."))),f.createElement(g,{flexDirection:"column"},f.createElement(g,{marginLeft:1},f.createElement(p,null,"Press ",f.createElement(p,{bold:!0,color:"cyanBright"},"")," to save.")),f.createElement(g,{marginLeft:1},f.createElement(p,null,"Press ",f.createElement(p,{bold:!0,color:"cyanBright"},"")," to abort.")))),X=({workspace:pe,active:he,decision:be,setDecision:Te})=>{let ke=pe.manifest.raw.stableVersion??pe.manifest.version;if(ke===null)throw new Error(`Assertion failed: The version should have been set (${JT.structUtils.prettyLocator(B,pe.anchoredLocator)})`);if(uNr.default.prerelease(ke)!==null)throw new Error(`Assertion failed: Prerelease identifiers shouldn't be found (${ke})`);let x=[cG.Decision.UNDECIDED,cG.Decision.DECLINE,cG.Decision.PATCH,cG.Decision.MINOR,cG.Decision.MAJOR];a(be,x,{active:he,minus:"left",plus:"right",set:Te});let et=be===cG.Decision.UNDECIDED?f.createElement(p,{color:"yellow"},ke):be===cG.Decision.DECLINE?f.createElement(p,{color:"green"},ke):f.createElement(p,null,f.createElement(p,{color:"magenta"},ke)," \u2192 ",f.createElement(p,{color:"green"},uNr.default.valid(be)?be:uNr.default.inc(ke,be)));return f.createElement(g,{flexDirection:"column"},f.createElement(g,null,f.createElement(p,null,JT.structUtils.prettyLocator(B,pe.anchoredLocator)," - ",et)),f.createElement(g,null,x.map(Ue=>{let Je=Ue===be;return f.createElement(g,{key:Ue,paddingLeft:2},f.createElement(p,null,f.createElement(t,{active:Je})," ",Ue))})))},U=pe=>{let he=new Set(T.releaseRoots),be=new Map([...pe].filter(([Te])=>he.has(Te)));for(;;){let Te=cG.getUndecidedDependentWorkspaces({project:T.project,releases:be}),ke=!1;if(Te.length>0){for(let[x]of Te)if(!he.has(x)){he.add(x),ke=!0;let et=pe.get(x);typeof et<"u"&&be.set(x,et)}}if(!ke)break}return{relevantWorkspaces:he,relevantReleases:be}},le=()=>{let[pe,he]=y(()=>new Map(T.releases)),be=m((Te,ke)=>{let x=new Map(pe);ke!==cG.Decision.UNDECIDED?x.set(Te,ke):x.delete(Te);let{relevantReleases:et}=U(x);he(et)},[pe,he]);return[pe,be]},ae=({workspaces:pe,releases:he})=>{let be=[];be.push(`${pe.size} total`);let Te=0,ke=0;for(let x of pe){let et=he.get(x);typeof et>"u"?ke+=1:et!==cG.Decision.DECLINE&&(Te+=1)}return be.push(`${Te} release${Te===1?"":"s"}`),be.push(`${ke} remaining`),f.createElement(p,{color:"yellow"},be.join(", "))},fe=await o(({useSubmit:pe})=>{let[he,be]=le();pe(he);let{relevantWorkspaces:Te}=U(he),ke=new Set([...Te].filter(Je=>!T.releaseRoots.has(Je))),[x,et]=y(0),Ue=m(Je=>{switch(Je){case s.BEFORE:et(x-1);break;case s.AFTER:et(x+1);break}},[x,et]);return f.createElement(g,{flexDirection:"column"},f.createElement(O,null),f.createElement(g,null,f.createElement(p,{wrap:"wrap"},"The following files have been modified in your local checkout.")),f.createElement(g,{flexDirection:"column",marginTop:1,paddingLeft:2},[...T.changedFiles].map(Je=>f.createElement(g,{key:Je},f.createElement(p,null,f.createElement(p,{color:"grey"},UK.npath.fromPortablePath(T.root)),UK.npath.sep,UK.npath.relative(UK.npath.fromPortablePath(T.root),UK.npath.fromPortablePath(Je)))))),T.releaseRoots.size>0&&f.createElement(f.Fragment,null,f.createElement(g,{marginTop:1},f.createElement(p,{wrap:"wrap"},"Because of those files having been modified, the following workspaces may need to be released again (note that private workspaces are also shown here, because even though they won't be published, releasing them will allow us to flag their dependents for potential re-release):")),ke.size>3?f.createElement(g,{marginTop:1},f.createElement(ae,{workspaces:T.releaseRoots,releases:he})):null,f.createElement(g,{marginTop:1,flexDirection:"column"},f.createElement(r,{active:x%2===0,radius:1,size:2,onFocusRequest:Ue},[...T.releaseRoots].map(Je=>f.createElement(X,{key:Je.cwd,workspace:Je,decision:he.get(Je)||cG.Decision.UNDECIDED,setDecision:Xe=>be(Je,Xe)}))))),ke.size>0?f.createElement(f.Fragment,null,f.createElement(g,{marginTop:1},f.createElement(p,{wrap:"wrap"},"The following workspaces depend on other workspaces that have been marked for release, and thus may need to be released as well:")),f.createElement(g,null,f.createElement(p,null,"(Press ",f.createElement(p,{bold:!0,color:"cyanBright"},"")," to move the focus between the workspace groups.)")),ke.size>5?f.createElement(g,{marginTop:1},f.createElement(ae,{workspaces:ke,releases:he})):null,f.createElement(g,{marginTop:1,flexDirection:"column"},f.createElement(r,{active:x%2===1,radius:2,size:2,onFocusRequest:Ue},[...ke].map(Je=>f.createElement(X,{key:Je.cwd,workspace:Je,decision:he.get(Je)||cG.Decision.UNDECIDED,setDecision:Xe=>be(Je,Xe)}))))):null)},{versionFile:T},{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});if(typeof fe>"u")return 1;T.releases.clear();for(let[pe,he]of fe)T.releases.set(pe,he);await T.saveAll()}async executeStandard(){let t=await JT.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await JT.Project.find(t,this.context.cwd);if(!s)throw new lNr.WorkspaceRequiredError(r.cwd,this.context.cwd);return await r.restoreInstallState(),(await JT.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{let g=await cG.openVersionFile(r);if(g===null||g.releaseRoots.size===0)return;if(g.root===null)throw new Cwt.UsageError("This command can only be run on Git repositories");if(o.reportInfo(JT.MessageName.UNNAMED,`Your PR was started right after ${JT.formatUtils.pretty(t,g.baseHash.slice(0,7),"yellow")} ${JT.formatUtils.pretty(t,g.baseTitle,"magenta")}`),g.changedFiles.size>0){o.reportInfo(JT.MessageName.UNNAMED,"You have changed the following files since then:"),o.reportSeparator();for(let B of g.changedFiles)o.reportInfo(null,`${JT.formatUtils.pretty(t,UK.npath.fromPortablePath(g.root),"gray")}${UK.npath.sep}${UK.npath.relative(UK.npath.fromPortablePath(g.root),UK.npath.fromPortablePath(B))}`)}let p=!1,f=!1,m=cG.getUndecidedWorkspaces(g);if(m.size>0){p||o.reportSeparator();for(let B of m)o.reportError(JT.MessageName.UNNAMED,`${JT.structUtils.prettyLocator(t,B.anchoredLocator)} has been modified but doesn't have a release strategy attached`);p=!0}let y=cG.getUndecidedDependentWorkspaces(g);for(let[B,v]of y)f||o.reportSeparator(),o.reportError(JT.MessageName.UNNAMED,`${JT.structUtils.prettyLocator(t,B.anchoredLocator)} doesn't have a release strategy attached, but depends on ${JT.structUtils.prettyWorkspace(t,v)} which is planned for release.`),f=!0;(p||f)&&(o.reportSeparator(),o.reportInfo(JT.MessageName.UNNAMED,"This command detected that at least some workspaces have received modifications without explicit instructions as to how they had to be released (if needed)."),o.reportInfo(JT.MessageName.UNNAMED,"To correct these errors, run `yarn version check --interactive` then follow the instructions."))})).exitCode()}};OJe.paths=[["version","check"]];OJe.usage=Cwt.Command.Usage({category:"Release-related commands",description:"check that all the relevant packages have been bumped",details:"\n **Warning:** This command currently requires Git.\n\n This command will check that all the packages covered by the files listed in argument have been properly bumped or declined to bump.\n\n In the case of a bump, the check will also cover transitive packages - meaning that should `Foo` be bumped, a package `Bar` depending on `Foo` will require a decision as to whether `Bar` will need to be bumped. This check doesn't cross packages that have declined to bump.\n\n In case no arguments are passed to the function, the list of modified files will be generated by comparing the HEAD against `master`.\n ",examples:[["Check whether the modified packages need a bump","yarn version check"]]});gNr.default=OJe});var wYi=z(dNr=>{"use strict";Object.defineProperty(dNr,"__esModule",{value:!0});var SYi=(Oa(),Ai(Pa)),BYi=il(),vYi=Bn(),ECe=(Zl(),Ai(pg)),ANr=SYi.__importDefault(Vh()),bCe=SYi.__importStar(WJe()),QJe=class extends BYi.BaseCommand{constructor(){super(...arguments),this.deferred=ECe.Option.Boolean("-d,--deferred",{description:"Prepare the version to be bumped during the next release cycle"}),this.immediate=ECe.Option.Boolean("-i,--immediate",{description:"Bump the version immediately"}),this.strategy=ECe.Option.String()}async execute(){let t=await vYi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await vYi.Project.find(t,this.context.cwd);if(!s)throw new BYi.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=t.get("preferDeferredVersions");this.deferred&&(a=!0),this.immediate&&(a=!1);let o=ANr.default.valid(this.strategy),g=this.strategy===bCe.Decision.DECLINE,p;if(o)if(s.manifest.version!==null){let m=bCe.suggestStrategy(s.manifest.version,this.strategy);m!==null?p=m:p=this.strategy}else p=this.strategy;else{let m=s.manifest.version;if(!g){if(m===null)throw new ECe.UsageError("Can't bump the version if there wasn't a version to begin with - use 0.0.0 as initial version then run the command again.");if(typeof m!="string"||!ANr.default.valid(m))throw new ECe.UsageError(`Can't bump the version (${m}) if it's not valid semver`)}p=bCe.validateReleaseDecision(this.strategy)}if(!a){let y=(await bCe.resolveVersionFiles(r)).get(s);if(typeof y<"u"&&p!==bCe.Decision.DECLINE){let B=bCe.applyStrategy(s.manifest.version,p);if(ANr.default.lt(B,y))throw new ECe.UsageError(`Can't bump the version to one that would be lower than the current deferred one (${y})`)}}let f=await bCe.openVersionFile(r,{allowEmpty:!0});return f.releases.set(s,p),await f.saveAll(),a?0:await this.cli.run(["version","apply"])}};QJe.paths=[["version"]];QJe.usage=ECe.Command.Usage({category:"Release-related commands",description:"apply a new version to the current package",details:"\n This command will bump the version number for the given package, following the specified strategy:\n\n - If `major`, the first number from the semver range will be increased (`X.0.0`).\n - If `minor`, the second number from the semver range will be increased (`0.X.0`).\n - If `patch`, the third number from the semver range will be increased (`0.0.X`).\n - If prefixed by `pre` (`premajor`, ...), a `-0` suffix will be set (`0.0.0-0`).\n - If `prerelease`, the suffix will be increased (`0.0.0-X`); the third number from the semver range will also be increased if there was no suffix in the previous version.\n - If `decline`, the nonce will be increased for `yarn version check` to pass without version bump.\n - If a valid semver range, it will be used as new version.\n - If unspecified, Yarn will ask you for guidance.\n\n For more information about the `--deferred` flag, consult our documentation (https://yarnpkg.com/features/release-workflow#deferred-versioning).\n ",examples:[["Immediately bump the version to the next major","yarn version major"],["Prepare the version to be bumped to the next major","yarn version major --deferred"]]});dNr.default=QJe});var xYi=z(rX=>{"use strict";Object.defineProperty(rX,"__esModule",{value:!0});rX.versionUtils=rX.VersionCommand=rX.VersionCheckCommand=rX.VersionApplyCommand=void 0;var mwt=(Oa(),Ai(Pa)),TYi=Bn(),NYi=mwt.__importDefault(bYi());rX.VersionApplyCommand=NYi.default;var RYi=mwt.__importDefault(EYi());rX.VersionCheckCommand=RYi.default;var DYi=mwt.__importDefault(wYi());rX.VersionCommand=DYi.default;var Zwc=mwt.__importStar(WJe());rX.versionUtils=Zwc;var Lwc={configuration:{deferredVersionFolder:{description:"Folder where are stored the versioning files",type:TYi.SettingsType.ABSOLUTE_PATH,default:"./.yarn/versions"},preferDeferredVersions:{description:"If true, running `yarn version` will assume the `--deferred` flag unless `--immediate` is set",type:TYi.SettingsType.BOOLEAN,default:!1}},commands:[NYi.default,RYi.default,DYi.default]};rX.default=Lwc});var kYi=z(hwt=>{"use strict";Object.defineProperty(hwt,"__esModule",{value:!0});hwt.packageExtensions=void 0;var pl={optional:!0};hwt.packageExtensions=[["@tailwindcss/aspect-ratio@<0.2.1",{peerDependencies:{tailwindcss:"^2.0.2"}}],["@tailwindcss/line-clamp@<0.2.1",{peerDependencies:{tailwindcss:"^2.0.2"}}],["@fullhuman/postcss-purgecss@3.1.3 || 3.1.3-alpha.0",{peerDependencies:{postcss:"^8.0.0"}}],["@samverschueren/stream-to-observable@<0.3.1",{peerDependenciesMeta:{rxjs:pl,zenObservable:pl}}],["any-observable@<0.5.1",{peerDependenciesMeta:{rxjs:pl,zenObservable:pl}}],["@pm2/agent@<1.0.4",{dependencies:{debug:"*"}}],["debug@<4.2.0",{peerDependenciesMeta:{"supports-color":pl}}],["got@<11",{dependencies:{"@types/responselike":"^1.0.0","@types/keyv":"^3.1.1"}}],["cacheable-lookup@<4.1.2",{dependencies:{"@types/keyv":"^3.1.1"}}],["http-link-dataloader@*",{peerDependencies:{graphql:"^0.13.1 || ^14.0.0"}}],["typescript-language-server@*",{dependencies:{"vscode-jsonrpc":"^5.0.1","vscode-languageserver-protocol":"^3.15.0"}}],["postcss-syntax@*",{peerDependenciesMeta:{"postcss-html":pl,"postcss-jsx":pl,"postcss-less":pl,"postcss-markdown":pl,"postcss-scss":pl}}],["jss-plugin-rule-value-function@<=10.1.1",{dependencies:{"tiny-warning":"^1.0.2"}}],["ink-select-input@<4.1.0",{peerDependencies:{react:"^16.8.2"}}],["license-webpack-plugin@<2.3.18",{peerDependenciesMeta:{webpack:pl}}],["snowpack@>=3.3.0",{dependencies:{"node-gyp":"^7.1.0"}}],["promise-inflight@*",{peerDependenciesMeta:{bluebird:pl}}],["reactcss@*",{peerDependencies:{react:"*"}}],["react-color@<=2.19.0",{peerDependencies:{react:"*"}}],["gatsby-plugin-i18n@*",{dependencies:{ramda:"^0.24.1"}}],["useragent@^2.0.0",{dependencies:{request:"^2.88.0",yamlparser:"0.0.x",semver:"5.5.x"}}],["@apollographql/apollo-tools@<=0.5.2",{peerDependencies:{graphql:"^14.2.1 || ^15.0.0"}}],["material-table@^2.0.0",{dependencies:{"@babel/runtime":"^7.11.2"}}],["@babel/parser@*",{dependencies:{"@babel/types":"^7.8.3"}}],["fork-ts-checker-webpack-plugin@<=6.3.4",{peerDependencies:{eslint:">= 6",typescript:">= 2.7",webpack:">= 4","vue-template-compiler":"*"},peerDependenciesMeta:{eslint:pl,"vue-template-compiler":pl}}],["rc-animate@<=3.1.1",{peerDependencies:{react:">=16.9.0","react-dom":">=16.9.0"}}],["react-bootstrap-table2-paginator@*",{dependencies:{classnames:"^2.2.6"}}],["react-draggable@<=4.4.3",{peerDependencies:{react:">= 16.3.0","react-dom":">= 16.3.0"}}],["apollo-upload-client@<14",{peerDependencies:{graphql:"14 - 15"}}],["react-instantsearch-core@<=6.7.0",{peerDependencies:{algoliasearch:">= 3.1 < 5"}}],["react-instantsearch-dom@<=6.7.0",{dependencies:{"react-fast-compare":"^3.0.0"}}],["ws@<7.2.1",{peerDependencies:{bufferutil:"^4.0.1","utf-8-validate":"^5.0.2"},peerDependenciesMeta:{bufferutil:pl,"utf-8-validate":pl}}],["react-portal@<4.2.2",{peerDependencies:{"react-dom":"^15.0.0-0 || ^16.0.0-0 || ^17.0.0-0"}}],["react-scripts@<=4.0.1",{peerDependencies:{react:"*"}}],["testcafe@<=1.10.1",{dependencies:{"@babel/plugin-transform-for-of":"^7.12.1","@babel/runtime":"^7.12.5"}}],["testcafe-legacy-api@<=4.2.0",{dependencies:{"testcafe-hammerhead":"^17.0.1","read-file-relative":"^1.2.0"}}],["@google-cloud/firestore@<=4.9.3",{dependencies:{protobufjs:"^6.8.6"}}],["gatsby-source-apiserver@*",{dependencies:{"babel-polyfill":"^6.26.0"}}],["@webpack-cli/package-utils@<=1.0.1-alpha.4",{dependencies:{"cross-spawn":"^7.0.3"}}],["gatsby-remark-prismjs@<3.3.28",{dependencies:{lodash:"^4"}}],["gatsby-plugin-favicon@*",{peerDependencies:{webpack:"*"}}],["gatsby-plugin-sharp@<=4.6.0-next.3",{dependencies:{debug:"^4.3.1"}}],["gatsby-react-router-scroll@<=5.6.0-next.0",{dependencies:{"prop-types":"^15.7.2"}}],["@rebass/forms@*",{dependencies:{"@styled-system/should-forward-prop":"^5.0.0"},peerDependencies:{react:"^16.8.6"}}],["rebass@*",{peerDependencies:{react:"^16.8.6"}}],["@ant-design/react-slick@<=0.28.3",{peerDependencies:{react:">=16.0.0"}}],["mqtt@<4.2.7",{dependencies:{duplexify:"^4.1.1"}}],["vue-cli-plugin-vuetify@<=2.0.3",{dependencies:{semver:"^6.3.0"},peerDependenciesMeta:{"sass-loader":pl,"vuetify-loader":pl}}],["vue-cli-plugin-vuetify@<=2.0.4",{dependencies:{"null-loader":"^3.0.0"}}],["vue-cli-plugin-vuetify@>=2.4.3",{peerDependencies:{vue:"*"}}],["@vuetify/cli-plugin-utils@<=0.0.4",{dependencies:{semver:"^6.3.0"},peerDependenciesMeta:{"sass-loader":pl}}],["@vue/cli-plugin-typescript@<=5.0.0-alpha.0",{dependencies:{"babel-loader":"^8.1.0"}}],["@vue/cli-plugin-typescript@<=5.0.0-beta.0",{dependencies:{"@babel/core":"^7.12.16"},peerDependencies:{"vue-template-compiler":"^2.0.0"},peerDependenciesMeta:{"vue-template-compiler":pl}}],["cordova-ios@<=6.3.0",{dependencies:{underscore:"^1.9.2"}}],["cordova-lib@<=10.0.1",{dependencies:{underscore:"^1.9.2"}}],["git-node-fs@*",{peerDependencies:{"js-git":"^0.7.8"},peerDependenciesMeta:{"js-git":pl}}],["consolidate@<0.16.0",{peerDependencies:{mustache:"^3.0.0"},peerDependenciesMeta:{mustache:pl}}],["consolidate@<=0.16.0",{peerDependencies:{velocityjs:"^2.0.1",tinyliquid:"^0.2.34","liquid-node":"^3.0.1",jade:"^1.11.0","then-jade":"*",dust:"^0.3.0","dustjs-helpers":"^1.7.4","dustjs-linkedin":"^2.7.5",swig:"^1.4.2","swig-templates":"^2.0.3","razor-tmpl":"^1.3.1",atpl:">=0.7.6",liquor:"^0.0.5",twig:"^1.15.2",ejs:"^3.1.5",eco:"^1.1.0-rc-3",jazz:"^0.0.18",jqtpl:"~1.1.0",hamljs:"^0.6.2",hamlet:"^0.3.3",whiskers:"^0.4.0","haml-coffee":"^1.14.1","hogan.js":"^3.0.2",templayed:">=0.2.3",handlebars:"^4.7.6",underscore:"^1.11.0",lodash:"^4.17.20",pug:"^3.0.0","then-pug":"*",qejs:"^3.0.5",walrus:"^0.10.1",mustache:"^4.0.1",just:"^0.1.8",ect:"^0.5.9",mote:"^0.2.0",toffee:"^0.3.6",dot:"^1.1.3","bracket-template":"^1.1.5",ractive:"^1.3.12",nunjucks:"^3.2.2",htmling:"^0.0.8","babel-core":"^6.26.3",plates:"~0.4.11","react-dom":"^16.13.1",react:"^16.13.1","arc-templates":"^0.5.3",vash:"^0.13.0",slm:"^2.0.0",marko:"^3.14.4",teacup:"^2.0.0","coffee-script":"^1.12.7",squirrelly:"^5.1.0",twing:"^5.0.2"},peerDependenciesMeta:{velocityjs:pl,tinyliquid:pl,"liquid-node":pl,jade:pl,"then-jade":pl,dust:pl,"dustjs-helpers":pl,"dustjs-linkedin":pl,swig:pl,"swig-templates":pl,"razor-tmpl":pl,atpl:pl,liquor:pl,twig:pl,ejs:pl,eco:pl,jazz:pl,jqtpl:pl,hamljs:pl,hamlet:pl,whiskers:pl,"haml-coffee":pl,"hogan.js":pl,templayed:pl,handlebars:pl,underscore:pl,lodash:pl,pug:pl,"then-pug":pl,qejs:pl,walrus:pl,mustache:pl,just:pl,ect:pl,mote:pl,toffee:pl,dot:pl,"bracket-template":pl,ractive:pl,nunjucks:pl,htmling:pl,"babel-core":pl,plates:pl,"react-dom":pl,react:pl,"arc-templates":pl,vash:pl,slm:pl,marko:pl,teacup:pl,"coffee-script":pl,squirrelly:pl,twing:pl}}],["vue-loader@<=16.3.3",{peerDependencies:{"@vue/compiler-sfc":"^3.0.8",webpack:"^4.1.0 || ^5.0.0-0"},peerDependenciesMeta:{"@vue/compiler-sfc":pl}}],["vue-loader@^16.7.0",{peerDependencies:{"@vue/compiler-sfc":"^3.0.8",vue:"^3.2.13"},peerDependenciesMeta:{"@vue/compiler-sfc":pl,vue:pl}}],["scss-parser@<=1.0.5",{dependencies:{lodash:"^4.17.21"}}],["query-ast@<1.0.5",{dependencies:{lodash:"^4.17.21"}}],["redux-thunk@<=2.3.0",{peerDependencies:{redux:"^4.0.0"}}],["skypack@<=0.3.2",{dependencies:{tar:"^6.1.0"}}],["@npmcli/metavuln-calculator@<2.0.0",{dependencies:{"json-parse-even-better-errors":"^2.3.1"}}],["bin-links@<2.3.0",{dependencies:{"mkdirp-infer-owner":"^1.0.2"}}],["rollup-plugin-polyfill-node@<=0.8.0",{peerDependencies:{rollup:"^1.20.0 || ^2.0.0"}}],["snowpack@<3.8.6",{dependencies:{"magic-string":"^0.25.7"}}],["elm-webpack-loader@*",{dependencies:{temp:"^0.9.4"}}],["winston-transport@<=4.4.0",{dependencies:{logform:"^2.2.0"}}],["jest-vue-preprocessor@*",{dependencies:{"@babel/core":"7.8.7","@babel/template":"7.8.6"},peerDependencies:{pug:"^2.0.4"},peerDependenciesMeta:{pug:pl}}],["redux-persist@*",{peerDependencies:{react:">=16"},peerDependenciesMeta:{react:pl}}],["sodium@>=3",{dependencies:{"node-gyp":"^3.8.0"}}],["babel-plugin-graphql-tag@<=3.1.0",{peerDependencies:{graphql:"^14.0.0 || ^15.0.0"}}],["@playwright/test@<=1.14.1",{dependencies:{"jest-matcher-utils":"^26.4.2"}}],...["babel-plugin-remove-graphql-queries@<3.14.0-next.1","babel-preset-gatsby-package@<1.14.0-next.1","create-gatsby@<1.14.0-next.1","gatsby-admin@<0.24.0-next.1","gatsby-cli@<3.14.0-next.1","gatsby-core-utils@<2.14.0-next.1","gatsby-design-tokens@<3.14.0-next.1","gatsby-legacy-polyfills@<1.14.0-next.1","gatsby-plugin-benchmark-reporting@<1.14.0-next.1","gatsby-plugin-graphql-config@<0.23.0-next.1","gatsby-plugin-image@<1.14.0-next.1","gatsby-plugin-mdx@<2.14.0-next.1","gatsby-plugin-netlify-cms@<5.14.0-next.1","gatsby-plugin-no-sourcemaps@<3.14.0-next.1","gatsby-plugin-page-creator@<3.14.0-next.1","gatsby-plugin-preact@<5.14.0-next.1","gatsby-plugin-preload-fonts@<2.14.0-next.1","gatsby-plugin-schema-snapshot@<2.14.0-next.1","gatsby-plugin-styletron@<6.14.0-next.1","gatsby-plugin-subfont@<3.14.0-next.1","gatsby-plugin-utils@<1.14.0-next.1","gatsby-recipes@<0.25.0-next.1","gatsby-source-shopify@<5.6.0-next.1","gatsby-source-wikipedia@<3.14.0-next.1","gatsby-transformer-screenshot@<3.14.0-next.1","gatsby-worker@<0.5.0-next.1"].map(e=>[e,{dependencies:{"@babel/runtime":"^7.14.8"}}]),["gatsby-core-utils@<2.14.0-next.1",{dependencies:{got:"8.3.2"}}],["gatsby-plugin-gatsby-cloud@<=3.1.0-next.0",{dependencies:{"gatsby-core-utils":"^2.13.0-next.0"}}],["gatsby-plugin-gatsby-cloud@<=3.2.0-next.1",{peerDependencies:{webpack:"*"}}],["babel-plugin-remove-graphql-queries@<=3.14.0-next.1",{dependencies:{"gatsby-core-utils":"^2.8.0-next.1"}}],["gatsby-plugin-netlify@3.13.0-next.1",{dependencies:{"gatsby-core-utils":"^2.13.0-next.0"}}],["clipanion-v3-codemod@<=0.2.0",{peerDependencies:{jscodeshift:"^0.11.0"}}],["react-live@*",{peerDependencies:{"react-dom":"*",react:"*"}}],["webpack@<4.44.1",{peerDependenciesMeta:{"webpack-cli":pl,"webpack-command":pl}}],["webpack@<5.0.0-beta.23",{peerDependenciesMeta:{"webpack-cli":pl}}],["webpack-dev-server@<3.10.2",{peerDependenciesMeta:{"webpack-cli":pl}}],["@docusaurus/responsive-loader@<1.5.0",{peerDependenciesMeta:{sharp:pl,jimp:pl}}],["eslint-module-utils@*",{peerDependenciesMeta:{"eslint-import-resolver-node":pl,"eslint-import-resolver-typescript":pl,"eslint-import-resolver-webpack":pl,"@typescript-eslint/parser":pl}}],["eslint-plugin-import@*",{peerDependenciesMeta:{"@typescript-eslint/parser":pl}}],["critters-webpack-plugin@<3.0.2",{peerDependenciesMeta:{"html-webpack-plugin":pl}}],["terser@<=5.10.0",{dependencies:{acorn:"^8.5.0"}}],["babel-preset-react-app@10.0.x <10.0.2",{dependencies:{"@babel/plugin-proposal-private-property-in-object":"^7.16.7"}}],["eslint-config-react-app@*",{peerDependenciesMeta:{typescript:pl}}],["@vue/eslint-config-typescript@<11.0.0",{peerDependenciesMeta:{typescript:pl}}],["unplugin-vue2-script-setup@<0.9.1",{peerDependencies:{"@vue/composition-api":"^1.4.3","@vue/runtime-dom":"^3.2.26"}}],["@cypress/snapshot@*",{dependencies:{debug:"^3.2.7"}}],["auto-relay@<=0.14.0",{peerDependencies:{"reflect-metadata":"^0.1.13"}}],["vue-template-babel-compiler@<1.2.0",{peerDependencies:{"vue-template-compiler":"^2.6.0"}}],["@parcel/transformer-image@<2.5.0",{peerDependencies:{"@parcel/core":"*"}}],["@parcel/transformer-js@<2.5.0",{peerDependencies:{"@parcel/core":"*"}}],["parcel@*",{peerDependenciesMeta:{"@parcel/core":pl}}],["react-scripts@*",{peerDependencies:{eslint:"*"}}],["focus-trap-react@^8.0.0",{dependencies:{tabbable:"^5.3.2"}}],["react-rnd@<10.3.7",{peerDependencies:{react:">=16.3.0","react-dom":">=16.3.0"}}],["connect-mongo@<5.0.0",{peerDependencies:{"express-session":"^1.17.1"}}],["vue-i18n@<9",{peerDependencies:{vue:"^2"}}],["vue-router@<4",{peerDependencies:{vue:"^2"}}],["unified@<10",{dependencies:{"@types/unist":"^2.0.0"}}],["react-github-btn@<=1.3.0",{peerDependencies:{react:">=16.3.0"}}],["react-dev-utils@*",{peerDependencies:{typescript:">=2.7",webpack:">=4"},peerDependenciesMeta:{typescript:pl}}],["@asyncapi/react-component@<=1.0.0-next.39",{peerDependencies:{react:">=16.8.0","react-dom":">=16.8.0"}}],["xo@*",{peerDependencies:{webpack:">=1.11.0"},peerDependenciesMeta:{webpack:pl}}],["babel-plugin-remove-graphql-queries@<=4.20.0-next.0",{dependencies:{"@babel/types":"^7.15.4"}}],["gatsby-plugin-page-creator@<=4.20.0-next.1",{dependencies:{"fs-extra":"^10.1.0"}}],["gatsby-plugin-utils@<=3.14.0-next.1",{dependencies:{fastq:"^1.13.0"},peerDependencies:{graphql:"^15.0.0"}}],["gatsby-plugin-mdx@<3.1.0-next.1",{dependencies:{mkdirp:"^1.0.4"}}],["gatsby-plugin-mdx@^2",{peerDependencies:{gatsby:"^3.0.0-next"}}],["fdir@<=5.2.0",{peerDependencies:{picomatch:"2.x"},peerDependenciesMeta:{picomatch:pl}}],["babel-plugin-transform-typescript-metadata@<=0.3.2",{peerDependencies:{"@babel/core":"^7","@babel/traverse":"^7"},peerDependenciesMeta:{"@babel/traverse":pl}}],["graphql-compose@>=9.0.10",{peerDependencies:{graphql:"^14.2.0 || ^15.0.0 || ^16.0.0"}}],["vite-plugin-vuetify@<=1.0.2",{peerDependencies:{vue:"^3.0.0"}}],["webpack-plugin-vuetify@<=2.0.1",{peerDependencies:{vue:"^3.2.6"}}],["eslint-import-resolver-vite@<2.0.1",{dependencies:{debug:"^4.3.4",resolve:"^1.22.8"}}]]});var GYi=z(_wt=>{"use strict";Object.defineProperty(_wt,"__esModule",{value:!0});_wt.packageExtensions=void 0;var Vwc=kYi();Object.defineProperty(_wt,"packageExtensions",{enumerable:!0,get:function(){return Vwc.packageExtensions}})});var FYi=z(fNr=>{"use strict";Object.defineProperty(fNr,"__esModule",{value:!0});fNr.getPatch=Wwc;var pNr;function Wwc(){return typeof pNr>"u"&&(pNr=xt("zlib").brotliDecompressSync(Buffer.from("G7weAByFTVk3Vs7UfHhq4yykgEM7pbW7TI43SG2S5tvGrwHBAzdz+s/npQ6tgEvobvxisrPIadkXeUAJotBn5bDZ5kAhcRqsIHe3F75Walet5hNalwgFDtxb0BiDUjiUQkjG0yW2hto9HPgiCkm316d6bC0kST72YN7D7rfkhCE9x4J0XwB0yavalxpUu2t9xszHrmtwalOxT7VslsxWcB1qpqZwERUra4psWhTV8BgwWeizurec82Caf1ABL11YMfbf8FJ9JBceZOkgmvrQPbC9DUldX/yMbmX06UQluCEjSwUoyO+EZPIjofr+/oAZUck2enraRD+oWLlnlYnj8xB+gwSo9lmmks4fXv574qSqcWA6z21uYkzMu3EWj+K23RxeQlLqiE35/rC8GcS4CGkKHKKq+zAIQwD9iRDNfiAqueLLpicFFrNsAI4zeTD/eO9MHcnRa5m8UT+M2+V+AkFST4BlKneiAQRSdST8KEAIyFlULt6wa9EBd0Ds28VmpaxquJdVt+nwdEs5xUskI13OVtFyY0UrQIRAlCuvvWivvlSKQfTO+2Q8OyUR1W5RvetaPz4jD27hdtwHFFA1Ptx6Ee/t2cY2rg2G46M1pNDRf2pWhvpy8pqMnuI3++4OF3+7OFIWXGjh+o7Nr2jNvbiYcQdQS1h903/jVFgOpA0yJ78z+x759bFA0rq+6aY5qPB4FzS3oYoLupDUhD9nDz6F6H7hpnlMf18KNKDu4IKjTWwrAnY6MFQw1W6ymOALHlFyCZmQhldg1MQHaMVVQTVgDC60TfaBqG++Y8PEoFhN/PBTZT175KNP/BlHDYGOOBmnBdzqJKplZ/ljiVG0ZBzfqeBRrrUkn6rA54462SgiliKoYVnbeptMdXNfAuaupIEi0bApF10TlgHfmEJAPUVidRVFyDupSem5po5vErPqWKhKbUIp0LozpYsIKK57dM/HKr+nguF+7924IIWMICkQ8JUigs9D+W+c4LnNoRtPPKNRUiCYmP+Jfo2lfKCKw8qpraEeWU3uiNRO6zcyKQoXPR5htmzzLznke7b4YbXW3I1lIRzmgG02Udb58U+7TpwyN7XymCgH+wuPDthZVQvRZuEP+SnLtMicz9m5zASWOBiAcLmkuFlTKuHspSIhCBD0yUPKcxu81A+4YD78rA2vtwsUEday9WNyrShyrl60rWmA+SmbYZkQOwFJWArxRYYc5jGhA5ikxYw1rx3ei4NmeX/lKiwpZ9Ln1tV2Ae7sArvxuVLbJjqJRjW1vFXAyHpvLG+8MJ6T2Ubx5M2KDa2SN6vuIGxJ9WQM9Mk3Q7aCNiZONXllhqq24DmoLbQfW2rYWsOgHWjtOmIQMyMKdiHZDjoyIq5+U700nZ6odJAoYXPQBvFNiQ78d5jaXliBqLTJEqUCwi+LiH2mx92EmNKDsJL74Z613+3lf20pxkV1+erOrjj8pW00vsPaahKUM+05ssd5uwM7K482KWEf3TCwlg/o3e5ngto7qSMz7YteIgCsF1UOcsLk7F7MxWbvrPMY473ew0G+noVL8EPbkmEMftMSeL6HFub/zy+2JQ==","base64")).toString()),pNr}});var ZYi=z(CNr=>{"use strict";Object.defineProperty(CNr,"__esModule",{value:!0});CNr.getPatch=Pwc;var INr;function Pwc(){return typeof INr>"u"&&(INr=xt("zlib").brotliDecompressSync(Buffer.from("G8MSIIzURnVBnObTcvb3XE6v2S9Qgc2K801Oa5otNKEtK8BINZNcaQHy+9/vf/WXBimwutXC33P2DPc64pps5rz7NGGWaOKNSPL4Y2KRE8twut2lFOIN+OXPtRmPMRhMTILib2bEQx43az2I5d3YS8Roa5UZpF/ujHb3Djd3GDvYUfvFYSUQ39vb2cmifp/rgB4J/65JK3wRBTvMBoNBmn3mbXC63/gbBkW/2IRPri0O8bcsRBsmarF328pAln04nyJFkwUAvNu934supAqLtyerZZpJ8I8suJHhf/ocMV+scKwa8NOiDKIPXw6Ex/EEZD6TEGaW8N5zvNHYF10l6Lfooj7D5W2k3dgvQSbp2Wv8TGOayS978gxlOLVjTGXs66ozewbrjwElLtyrYNnWTfzzdEutgROUFPVMhnMoy8EjJLLlWwIEoySxliim9kYW30JUHiPVyjt0iAw/ZpPmCbUCltYPnq6ZNblIKhTNhqS/oqC9iya5sGKZTOVsTEg34n92uZTf2iPpcZih8rPW8CzA+adIGmyCPcKdLMsBLShd+zuEbTrqpwuh+DLmracZcjPC5Sdf5odDAhKpFuOsQS67RT+1VgWWygSv3YwxDnylc04/PYuaMeIzhBkLrvs7e/OUzRTF56MmfY6rI63QtEjEQzq637zQqJ39nNhu3NmoRRhW/086bHGBUtx0PE0j3aEGvkdh9WJC8y8j8mqqke9/dQ5la+Q3ba4RlhvTbnfQhPDDab3tUifkjKuOsp13mXEmO00Mu88F/M67R7LXfoFDFLNtgCSWjWX+3Jn1371pJTK9xPBiMJafvDjtFyAzu8rxeQ0TKMQXNPs5xxiBOd+BRJP8KP88XPtJIbZKh/cdW8KvBUkpqKpGoiIaA32c3/JnQr4efXt85mXvidOvn/eU3Pase1typLYBalJ14mCso9h79nuMOuCa/kZAOkJHmTjP5RM2WNoPasZUAnT1TAE/NH25hUxcQv6hQWR/m1PKk4ooXMcM4SR1iYU3fUohvqk4RY2hbmTVVIXv6TvqO+0doOjgeVFAcom+RlwJQmOVH7pr1Q9LoJT6n1DeQEB+NHygsATbIwTcOKZlJsY8G4+suX1uQLjUWwLjjs0mvSvZcLTpIGAekeR7GCgl8eo3ndAqEe2XCav4huliHjdbIPBsGJuPX7lrO9HX1UbXRH5opOe1x6JsOSgHZR+EaxuXVhpLLxm6jk1LJtZfHSc6BKPun3CpYYVMJGwEUyk8MTGG0XL5MfEwaXpnc9TKnBmlGn6nHiGREc3ysn47XIBDzA+YvFdjZzVIEDcKGpS6PbUJehFRjEne8D0lVU1XuRtlgszq6pTNlQ/3MzNOEgCWPyTct22V2mEi2krizn5VDo9B19/X2DB3hCGRMM7ONbtnAcIx/OWB1u5uPbW1gsH8irXxT/IzG0PoXWYjhbMsH3KTuoOl5o17PulcgvsfTSnKFM354GWI8luqZnrswWjiXy3G+Vbyo1KMopFmmvBwNELgaS8z8dNZchx/Cl/xjddxhMcyqtzFyONb2Zdu90NkI8pAeufe7YlXrp53v8Dj/l8vWeVspRKBGXScBBPI/HinSTGmLDOGGOCIyH0JFdOZx0gWsacNlQLJMIrBhqRxXxHF/5pseWwejlAAvZ3klZSDSYY8mkToaWejXhgNomeGtx1DTLEUFMRkgF5yFB22WYdJnaWN14r1YJj81hGi45+jrADS5nYRhCiSlCJJ1nL8pYX+HDSMhdTEWyRcgHVp/IsUIZYMfT+YYncUQPgcxNGCHfZ88vDdrcUuaGIl6zhAsiaq7R5dfqrqXH/JcBhfjT8D0azayIyEz75Nxp6YkcyDxlJq3EXnJUpqDohJJOysL1t1uNiHESlvsxPb5cpbW0+ICZqJmUZus1BMW0F5IVBODLIo2zHHjA0=","base64")).toString()),INr}});var LYi=z(hNr=>{"use strict";Object.defineProperty(hNr,"__esModule",{value:!0});hNr.getPatch=Owc;var mNr;function Owc(){return typeof mNr>"u"&&(mNr=xt("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),mNr}});var WYi=z(_Nr=>{"use strict";Object.defineProperty(_Nr,"__esModule",{value:!0});var $q=Bn(),Qwc=GYi(),Mwc=FYi(),Hwc=ZYi(),Ywc=LYi(),VYi=new Map([[$q.structUtils.makeIdent(null,"fsevents").identHash,Mwc.getPatch],[$q.structUtils.makeIdent(null,"resolve").identHash,Hwc.getPatch],[$q.structUtils.makeIdent(null,"typescript").identHash,Ywc.getPatch]]),Xwc={hooks:{registerPackageExtensions:async(e,t)=>{for(let[r,s]of Qwc.packageExtensions)t($q.structUtils.parseDescriptor(r,!0),s)},getBuiltinPatch:async(e,t)=>{let r="compat/";if(!t.startsWith(r))return;let s=$q.structUtils.parseIdent(t.slice(r.length)),a=VYi.get(s.identHash)?.();return typeof a<"u"?a:null},reduceDependency:async(e,t,r,s)=>typeof VYi.get(e.identHash)>"u"?e:$q.structUtils.makeDescriptor(e,$q.structUtils.makeRange({protocol:"patch:",source:$q.structUtils.stringifyDescriptor(e),selector:`optional!builtin`,params:null}))}};_Nr.default=Xwc});var PYi=z(yNr=>{"use strict";Object.defineProperty(yNr,"__esModule",{value:!0});var Jwc=il(),ywt=Bn(),bwt=(Zl(),Ai(pg)),Ewt=class extends Jwc.BaseCommand{constructor(){super(...arguments),this.pkg=bwt.Option.String("-p,--package",{description:"The package to run the provided command from"}),this.quiet=bwt.Option.Boolean("-q,--quiet",!1,{description:"Only report critical errors instead of printing the full install logs"}),this.command=bwt.Option.String(),this.args=bwt.Option.Proxy()}async execute(){let t=[];this.pkg&&t.push("--package",this.pkg),this.quiet&&t.push("--quiet");let r=this.command.replace(/^(@[^@/]+)(@|$)/,"$1/create$2"),s=ywt.structUtils.parseDescriptor(r),a=s.name.match(/^create(-|$)/)?s:s.scope?ywt.structUtils.makeIdent(s.scope,`create-${s.name}`):ywt.structUtils.makeIdent(null,`create-${s.name}`),o=ywt.structUtils.stringifyIdent(a);return s.range!=="unknown"&&(o+=`@${s.range}`),this.cli.run(["dlx",...t,o,...this.args])}};Ewt.paths=[["create"]];yNr.default=Ewt});var QYi=z(bNr=>{"use strict";Object.defineProperty(bNr,"__esModule",{value:!0});var OYi=il(),e$=Bn(),Bwt=Bn(),oZ=No(),MJe=(Zl(),Ai(pg)),HJe=class extends OYi.BaseCommand{constructor(){super(...arguments),this.packages=MJe.Option.Array("-p,--package",{description:"The package(s) to install before running the command"}),this.quiet=MJe.Option.Boolean("-q,--quiet",!1,{description:"Only report critical errors instead of printing the full install logs"}),this.command=MJe.Option.String(),this.args=MJe.Option.Proxy()}async execute(){return e$.Configuration.telemetry=null,await oZ.xfs.mktempPromise(async t=>{let r=oZ.ppath.join(t,`dlx-${process.pid}`);await oZ.xfs.mkdirPromise(r),await oZ.xfs.writeFilePromise(oZ.ppath.join(r,"package.json"),`{} +`),await oZ.xfs.writeFilePromise(oZ.ppath.join(r,"yarn.lock"),"");let s=oZ.ppath.join(r,".yarnrc.yml"),a=await e$.Configuration.findProjectCwd(this.context.cwd),g={enableGlobalCache:!(await e$.Configuration.find(this.context.cwd,null,{strict:!1})).get("enableGlobalCache"),enableTelemetry:!1,logFilters:[{code:(0,e$.stringifyMessageName)(e$.MessageName.UNUSED_PACKAGE_EXTENSION),level:Bwt.formatUtils.LogLevel.Discard}]},p=a!==null?oZ.ppath.join(a,".yarnrc.yml"):null;p!==null&&oZ.xfs.existsSync(p)?(await oZ.xfs.copyFilePromise(p,s),await e$.Configuration.updateConfiguration(r,O=>{let X=e$.miscUtils.toMerged(O,g);return Array.isArray(O.plugins)&&(X.plugins=O.plugins.map(U=>{let le=typeof U=="string"?U:U.path,ae=oZ.npath.isAbsolute(le)?le:oZ.npath.resolve(oZ.npath.fromPortablePath(a),le);return typeof U=="string"?ae:{path:ae,spec:U.spec}})),X})):await oZ.xfs.writeJsonPromise(s,g);let f=this.packages??[this.command],m=Bwt.structUtils.parseDescriptor(this.command).name,y=await this.cli.run(["add","--fixed","--",...f],{cwd:r,quiet:this.quiet});if(y!==0)return y;this.quiet||this.context.stdout.write(` +`);let B=await e$.Configuration.find(r,this.context.plugins),{project:v,workspace:k}=await e$.Project.find(B,r);if(k===null)throw new OYi.WorkspaceRequiredError(v.cwd,r);await v.restoreInstallState();let T=await Bwt.scriptUtils.getWorkspaceAccessibleBinaries(k);return T.has(m)===!1&&T.size===1&&typeof this.packages>"u"&&(m=Array.from(T)[0][0]),await Bwt.scriptUtils.executeWorkspaceAccessibleBinary(k,m,this.args,{packageAccessibleBinaries:T,cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})})}};HJe.paths=[["dlx"]];HJe.usage=MJe.Command.Usage({description:"run a package in a temporary environment",details:"\n This command will install a package within a temporary environment, and run its binary script if it contains any. The binary will run within the current cwd.\n\n By default Yarn will download the package named `command`, but this can be changed through the use of the `-p,--package` flag which will instruct Yarn to still run the same command but from a different package.\n\n Using `yarn dlx` as a replacement of `yarn add` isn't recommended, as it makes your project non-deterministic (Yarn doesn't keep track of the packages installed through `dlx` - neither their name, nor their version).\n ",examples:[["Use create-react-app to create a new React app","yarn dlx create-react-app ./my-app"],["Install multiple packages for a single command",`yarn dlx -p typescript -p ts-node ts-node --transpile-only -e "console.log('hello!')"`]]});bNr.default=HJe});var XYi=z(BCe=>{"use strict";Object.defineProperty(BCe,"__esModule",{value:!0});BCe.DlxCommand=BCe.CreateCommand=void 0;var MYi=(Oa(),Ai(Pa)),HYi=MYi.__importDefault(PYi());BCe.CreateCommand=HYi.default;var YYi=MYi.__importDefault(QYi());BCe.DlxCommand=YYi.default;var Uwc={commands:[HYi.default,YYi.default]};BCe.default=Uwc});var UNe=z(wae=>{"use strict";Object.defineProperty(wae,"__esModule",{value:!0});wae.PROTOCOL=wae.TARBALL_REGEXP=wae.FILE_REGEXP=void 0;wae.FILE_REGEXP=/^(?:[a-zA-Z]:[\\/]|\.{0,2}\/)/;wae.TARBALL_REGEXP=/^[^?]*\.(?:tar\.gz|tgz)(?:::.*)?$/;wae.PROTOCOL="file:"});var KNe=z(F9=>{"use strict";Object.defineProperty(F9,"__esModule",{value:!0});F9.makeBufferFromLocator=F9.makeArchiveFromLocator=F9.fetchArchiveFromLocator=F9.makeLocator=F9.makeSpec=F9.parseSpec=void 0;var nX=Bn(),fS=No(),Kwc=UNe();function jwc(e){let{params:t,selector:r}=nX.structUtils.parseRange(e),s=fS.npath.toPortablePath(r);return{parentLocator:t&&typeof t.locator=="string"?nX.structUtils.parseLocator(t.locator):null,path:s}}F9.parseSpec=jwc;function JYi({parentLocator:e,path:t,hash:r,protocol:s}){let a=e!==null?{locator:nX.structUtils.stringifyLocator(e)}:{},o=typeof r<"u"?{hash:r}:{};return nX.structUtils.makeRange({protocol:s,source:t,selector:t,params:{...o,...a}})}F9.makeSpec=JYi;function zwc(e,{parentLocator:t,path:r,hash:s,protocol:a}){return nX.structUtils.makeLocator(e,JYi({parentLocator:t,path:r,hash:s,protocol:a}))}F9.makeLocator=zwc;async function qwc(e,t){let{parentLocator:r,path:s}=nX.structUtils.parseFileStyleRange(e.reference,{protocol:Kwc.PROTOCOL}),a=fS.ppath.isAbsolute(s)?{packageFs:new fS.CwdFS(fS.PortablePath.root),prefixPath:fS.PortablePath.dot,localPath:fS.PortablePath.root}:await t.fetcher.fetch(r,t),o=a.localPath?{packageFs:new fS.CwdFS(fS.PortablePath.root),prefixPath:fS.ppath.relative(fS.PortablePath.root,a.localPath)}:a;a!==o&&a.releaseFs&&a.releaseFs();let g=o.packageFs,p=fS.ppath.join(o.prefixPath,s);return await nX.miscUtils.releaseAfterUseAsync(async()=>await g.readFilePromise(p),o.releaseFs)}F9.fetchArchiveFromLocator=qwc;async function UYi(e,{protocol:t,fetchOptions:r,inMemory:s=!1}){let{parentLocator:a,path:o}=nX.structUtils.parseFileStyleRange(e.reference,{protocol:t}),g=fS.ppath.isAbsolute(o)?{packageFs:new fS.CwdFS(fS.PortablePath.root),prefixPath:fS.PortablePath.dot,localPath:fS.PortablePath.root}:await r.fetcher.fetch(a,r),p=g.localPath?{packageFs:new fS.CwdFS(fS.PortablePath.root),prefixPath:fS.ppath.relative(fS.PortablePath.root,g.localPath)}:g;g!==p&&g.releaseFs&&g.releaseFs();let f=p.packageFs,m=fS.ppath.join(p.prefixPath,o);return await nX.miscUtils.releaseAfterUseAsync(async()=>await nX.tgzUtils.makeArchiveFromDirectory(m,{baseFs:f,prefixPath:nX.structUtils.getIdentVendorPath(e),compressionLevel:r.project.configuration.get("compressionLevel"),inMemory:s}),p.releaseFs)}F9.makeArchiveFromLocator=UYi;async function $wc(e,{protocol:t,fetchOptions:r}){return(await UYi(e,{protocol:t,fetchOptions:r,inMemory:!0})).getBufferAndClose()}F9.makeBufferFromLocator=$wc});var jYi=z(vwt=>{"use strict";Object.defineProperty(vwt,"__esModule",{value:!0});vwt.FileFetcher=void 0;var eTc=(Oa(),Ai(Pa)),ENr=Bn(),KYi=No(),BNr=UNe(),tTc=eTc.__importStar(KNe()),vNr=class{supports(t,r){return!!t.reference.startsWith(BNr.PROTOCOL)}getLocalPath(t,r){let{parentLocator:s,path:a}=ENr.structUtils.parseFileStyleRange(t.reference,{protocol:BNr.PROTOCOL});if(KYi.ppath.isAbsolute(a))return a;let o=r.fetcher.getLocalPath(s,r);return o===null?null:KYi.ppath.resolve(o,a)}async fetch(t,r){let s=r.checksums.get(t.locatorHash)||null,[a,o,g]=await r.cache.fetchPackageFromCache(t,s,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${ENr.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.fetchFromDisk(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:ENr.structUtils.getIdentVendorPath(t),localPath:this.getLocalPath(t,r),checksum:g}}async fetchFromDisk(t,r){return tTc.makeArchiveFromLocator(t,{protocol:BNr.PROTOCOL,fetchOptions:r})}};vwt.FileFetcher=vNr});var zYi=z(Swt=>{"use strict";Object.defineProperty(Swt,"__esModule",{value:!0});Swt.FileResolver=void 0;var rTc=(Oa(),Ai(Pa)),Tae=Bn(),nTc=Bn(),iTc=Bn(),Nae=UNe(),SNr=rTc.__importStar(KNe()),sTc=2,wNr=class{supportsDescriptor(t,r){return t.range.match(Nae.FILE_REGEXP)?!0:!!t.range.startsWith(Nae.PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(Nae.PROTOCOL)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,s){return Nae.FILE_REGEXP.test(t.range)&&(t=Tae.structUtils.makeDescriptor(t,`${Nae.PROTOCOL}${t.range}`)),Tae.structUtils.bindDescriptor(t,{locator:Tae.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,s){if(!s.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{path:a,parentLocator:o}=SNr.parseSpec(t.range);if(o===null)throw new Error("Assertion failed: The descriptor should have been bound");let g=await SNr.makeBufferFromLocator(Tae.structUtils.makeLocator(t,Tae.structUtils.makeRange({protocol:Nae.PROTOCOL,source:a,selector:a,params:{locator:Tae.structUtils.stringifyLocator(o)}})),{protocol:Nae.PROTOCOL,fetchOptions:s.fetchOptions}),p=Tae.hashUtils.makeHash(`${sTc}`,g).slice(0,6);return[SNr.makeLocator(t,{parentLocator:o,path:a,hash:p,protocol:Nae.PROTOCOL})]}async getSatisfying(t,r,s,a){let[o]=await this.getCandidates(t,r,a);return{locators:s.filter(g=>g.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let s=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await Tae.miscUtils.releaseAfterUseAsync(async()=>await iTc.Manifest.find(s.prefixPath,{baseFs:s.packageFs}),s.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:nTc.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};Swt.FileResolver=wNr});var $Yi=z(Twt=>{"use strict";Object.defineProperty(Twt,"__esModule",{value:!0});Twt.TarballFileFetcher=void 0;var oTc=(Oa(),Ai(Pa)),wwt=Bn(),qYi=UNe(),aTc=oTc.__importStar(KNe()),TNr=class{supports(t,r){return qYi.TARBALL_REGEXP.test(t.reference)?!!t.reference.startsWith(qYi.PROTOCOL):!1}getLocalPath(t,r){return null}async fetch(t,r){let s=r.checksums.get(t.locatorHash)||null,[a,o,g]=await r.cache.fetchPackageFromCache(t,s,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${wwt.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.fetchFromDisk(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:wwt.structUtils.getIdentVendorPath(t),checksum:g}}async fetchFromDisk(t,r){let s=await aTc.fetchArchiveFromLocator(t,r);return await wwt.tgzUtils.convertToZip(s,{configuration:r.project.configuration,prefixPath:wwt.structUtils.getIdentVendorPath(t),stripComponents:1})}};Twt.TarballFileFetcher=TNr});var eXi=z(Dwt=>{"use strict";Object.defineProperty(Dwt,"__esModule",{value:!0});Dwt.TarballFileResolver=void 0;var cTc=(Oa(),Ai(Pa)),lTc=Bn(),uTc=Bn(),gTc=Bn(),Nwt=Bn(),t$=UNe(),Rwt=cTc.__importStar(KNe()),NNr=class{supportsDescriptor(t,r){return t$.TARBALL_REGEXP.test(t.range)?!!(t.range.startsWith(t$.PROTOCOL)||t$.FILE_REGEXP.test(t.range)):!1}supportsLocator(t,r){return t$.TARBALL_REGEXP.test(t.reference)?!!t.reference.startsWith(t$.PROTOCOL):!1}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,s){return t$.FILE_REGEXP.test(t.range)&&(t=Nwt.structUtils.makeDescriptor(t,`${t$.PROTOCOL}${t.range}`)),Nwt.structUtils.bindDescriptor(t,{locator:Nwt.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,s){if(!s.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{path:a,parentLocator:o}=Rwt.parseSpec(t.range);if(o===null)throw new Error("Assertion failed: The descriptor should have been bound");let g=Rwt.makeLocator(t,{parentLocator:o,path:a,hash:"",protocol:t$.PROTOCOL}),p=await Rwt.fetchArchiveFromLocator(g,s.fetchOptions),f=lTc.hashUtils.makeHash(p).slice(0,6);return[Rwt.makeLocator(t,{parentLocator:o,path:a,hash:f,protocol:t$.PROTOCOL})]}async getSatisfying(t,r,s,a){let[o]=await this.getCandidates(t,r,a);return{locators:s.filter(g=>g.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let s=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await Nwt.miscUtils.releaseAfterUseAsync(async()=>await uTc.Manifest.find(s.prefixPath,{baseFs:s.packageFs}),s.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:gTc.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};Dwt.TarballFileResolver=NNr});var sXi=z(y3=>{"use strict";Object.defineProperty(y3,"__esModule",{value:!0});y3.TarballFileResolver=y3.TarballFileFetcher=y3.FileResolver=y3.FileFetcher=y3.fileUtils=void 0;var ATc=(Oa(),Ai(Pa)),tXi=jYi();Object.defineProperty(y3,"FileFetcher",{enumerable:!0,get:function(){return tXi.FileFetcher}});var rXi=zYi();Object.defineProperty(y3,"FileResolver",{enumerable:!0,get:function(){return rXi.FileResolver}});var nXi=$Yi();Object.defineProperty(y3,"TarballFileFetcher",{enumerable:!0,get:function(){return nXi.TarballFileFetcher}});var iXi=eXi();Object.defineProperty(y3,"TarballFileResolver",{enumerable:!0,get:function(){return iXi.TarballFileResolver}});var dTc=ATc.__importStar(KNe());y3.fileUtils=dTc;var pTc={fetchers:[nXi.TarballFileFetcher,tXi.FileFetcher],resolvers:[iXi.TarballFileResolver,rXi.FileResolver]};y3.default=pTc});var RNr=z(Rae=>{"use strict";Object.defineProperty(Rae,"__esModule",{value:!0});Rae.invalidGithubUrlMessage=Rae.parseGithubUrl=Rae.isGithubUrl=void 0;var fTc=(Oa(),Ai(Pa)),ITc=fTc.__importDefault(xt("querystring")),oXi=[/^https?:\/\/(?:([^/]+?)@)?github.com\/([^/#]+)\/([^/#]+)\/tarball\/([^/#]+)(?:#(.*))?$/,/^https?:\/\/(?:([^/]+?)@)?github.com\/([^/#]+)\/([^/#]+?)(?:\.git)?(?:#(.*))?$/];function CTc(e){return e?oXi.some(t=>!!e.match(t)):!1}Rae.isGithubUrl=CTc;function mTc(e){let t;for(let p of oXi)if(t=e.match(p),t)break;if(!t)throw new Error(aXi(e));let[,r,s,a,o="master"]=t,{commit:g}=ITc.default.parse(o);return o=g||o.replace(/[^:]*:/,""),{auth:r,username:s,reponame:a,treeish:o}}Rae.parseGithubUrl=mTc;function aXi(e){return`Input cannot be parsed as a valid GitHub URL ('${e}').`}Rae.invalidGithubUrlMessage=aXi});var lXi=z(kwt=>{"use strict";Object.defineProperty(kwt,"__esModule",{value:!0});kwt.GithubFetcher=void 0;var hTc=(Oa(),Ai(Pa)),vCe=Bn(),xwt=No(),_Tc=MNe(),cXi=hTc.__importStar(RNr()),DNr=class{supports(t,r){return!!cXi.isGithubUrl(t.reference)}getLocalPath(t,r){return null}async fetch(t,r){let s=r.checksums.get(t.locatorHash)||null,[a,o,g]=await r.cache.fetchPackageFromCache(t,s,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${vCe.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from GitHub`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:vCe.structUtils.getIdentVendorPath(t),checksum:g}}async fetchFromNetwork(t,r){let s=await vCe.httpUtils.get(this.getLocatorUrl(t,r),{configuration:r.project.configuration});return await xwt.xfs.mktempPromise(async a=>{let o=new xwt.CwdFS(a);await vCe.tgzUtils.extractArchiveTo(s,o,{stripComponents:1});let g=_Tc.gitUtils.splitRepoUrl(t.reference),p=xwt.ppath.join(a,"package.tgz");await vCe.scriptUtils.prepareExternalProject(a,p,{configuration:r.project.configuration,report:r.report,workspace:g.extra.workspace,locator:t});let f=await xwt.xfs.readFilePromise(p);return await vCe.tgzUtils.convertToZip(f,{configuration:r.project.configuration,prefixPath:vCe.structUtils.getIdentVendorPath(t),stripComponents:1})})}getLocatorUrl(t,r){let{auth:s,username:a,reponame:o,treeish:g}=cXi.parseGithubUrl(t.reference);return`https://${s?`${s}@`:""}github.com/${a}/${o}/archive/${g}.tar.gz`}};kwt.GithubFetcher=DNr});var gXi=z(SCe=>{"use strict";Object.defineProperty(SCe,"__esModule",{value:!0});SCe.GithubFetcher=SCe.githubUtils=void 0;var yTc=(Oa(),Ai(Pa)),uXi=lXi();Object.defineProperty(SCe,"GithubFetcher",{enumerable:!0,get:function(){return uXi.GithubFetcher}});var bTc=yTc.__importStar(RNr());SCe.githubUtils=bTc;var ETc={hooks:{async fetchHostedRepository(e,t,r){if(e!==null)return e;let s=new uXi.GithubFetcher;if(!s.supports(t,r))return null;try{return await s.fetch(t,r)}catch{return null}}}};SCe.default=ETc});var xNr=z(Gwt=>{"use strict";Object.defineProperty(Gwt,"__esModule",{value:!0});Gwt.isTgzUrl=void 0;function BTc(e){let t;try{t=new URL(e)}catch{return!1}return!(t.protocol!=="http:"&&t.protocol!=="https:"||!t.pathname.match(/(\.tar\.gz|\.tgz|\/[^.]+)$/))}Gwt.isTgzUrl=BTc});var AXi=z(Fwt=>{"use strict";Object.defineProperty(Fwt,"__esModule",{value:!0});Fwt.TarballHttpFetcher=void 0;var vTc=(Oa(),Ai(Pa)),YJe=Bn(),STc=vTc.__importStar(xNr()),kNr=class{supports(t,r){return STc.isTgzUrl(t.reference)}getLocalPath(t,r){return null}async fetch(t,r){let s=r.checksums.get(t.locatorHash)||null,[a,o,g]=await r.cache.fetchPackageFromCache(t,s,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${YJe.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote server`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:YJe.structUtils.getIdentVendorPath(t),checksum:g}}async fetchFromNetwork(t,r){let s=await YJe.httpUtils.get(t.reference,{configuration:r.project.configuration});return await YJe.tgzUtils.convertToZip(s,{configuration:r.project.configuration,prefixPath:YJe.structUtils.getIdentVendorPath(t),stripComponents:1})}};Fwt.TarballHttpFetcher=kNr});var fXi=z(Zwt=>{"use strict";Object.defineProperty(Zwt,"__esModule",{value:!0});Zwt.TarballHttpResolver=void 0;var wTc=(Oa(),Ai(Pa)),TTc=Bn(),NTc=Bn(),dXi=Bn(),pXi=wTc.__importStar(xNr()),GNr=class{supportsDescriptor(t,r){return pXi.isTgzUrl(t.range)}supportsLocator(t,r){return pXi.isTgzUrl(t.reference)}shouldPersistResolution(t,r){return!0}bindDescriptor(t,r,s){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,s){return[dXi.structUtils.convertDescriptorToLocator(t)]}async getSatisfying(t,r,s,a){let[o]=await this.getCandidates(t,r,a);return{locators:s.filter(g=>g.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let s=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await dXi.miscUtils.releaseAfterUseAsync(async()=>await TTc.Manifest.find(s.prefixPath,{baseFs:s.packageFs}),s.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:NTc.LinkType.HARD,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};Zwt.TarballHttpResolver=GNr});var mXi=z(wCe=>{"use strict";Object.defineProperty(wCe,"__esModule",{value:!0});wCe.TarballHttpResolver=wCe.TarballHttpFetcher=void 0;var IXi=AXi();Object.defineProperty(wCe,"TarballHttpFetcher",{enumerable:!0,get:function(){return IXi.TarballHttpFetcher}});var CXi=fXi();Object.defineProperty(wCe,"TarballHttpResolver",{enumerable:!0,get:function(){return CXi.TarballHttpResolver}});var RTc={fetchers:[IXi.TarballHttpFetcher],resolvers:[CXi.TarballHttpResolver]};wCe.default=RTc});var hXi=z(FNr=>{"use strict";Object.defineProperty(FNr,"__esModule",{value:!0});var DTc=il(),jK=Bn(),TCe=Bn(),y_=No(),Dae=(Zl(),Ai(pg)),XJe=class extends DTc.BaseCommand{constructor(){super(...arguments),this.private=Dae.Option.Boolean("-p,--private",!1,{description:"Initialize a private package"}),this.workspace=Dae.Option.Boolean("-w,--workspace",!1,{description:"Initialize a workspace root with a `packages/` directory"}),this.install=Dae.Option.String("-i,--install",!1,{tolerateBoolean:!0,description:"Initialize a package with a specific bundle that will be locked in the project"}),this.name=Dae.Option.String("-n,--name",{description:"Initialize a package with the given name"}),this.usev2=Dae.Option.Boolean("-2",!1,{hidden:!0}),this.yes=Dae.Option.Boolean("-y,--yes",{hidden:!0})}async execute(){let t=await jK.Configuration.find(this.context.cwd,this.context.plugins),r=typeof this.install=="string"?this.install:this.usev2||this.install===!0?"latest":null;return r!==null?await this.executeProxy(t,r):await this.executeRegular(t)}async executeProxy(t,r){if(t.projectCwd!==null&&t.projectCwd!==this.context.cwd)throw new Dae.UsageError("Cannot use the --install flag from within a project subdirectory");y_.xfs.existsSync(this.context.cwd)||await y_.xfs.mkdirPromise(this.context.cwd,{recursive:!0});let s=y_.ppath.join(this.context.cwd,y_.Filename.lockfile);y_.xfs.existsSync(s)||await y_.xfs.writeFilePromise(s,"");let a=await this.cli.run(["set","version",r],{quiet:!0});if(a!==0)return a;let o=[];return this.private&&o.push("-p"),this.workspace&&o.push("-w"),this.name&&o.push(`-n=${this.name}`),this.yes&&o.push("-y"),await y_.xfs.mktempPromise(async g=>{let{code:p}=await TCe.execUtils.pipevp("yarn",["init",...o],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:await TCe.scriptUtils.makeScriptEnv({binFolder:g})});return p})}async executeRegular(t){let r=null;try{r=(await jK.Project.find(t,this.context.cwd)).project}catch{r=null}y_.xfs.existsSync(this.context.cwd)||await y_.xfs.mkdirPromise(this.context.cwd,{recursive:!0});let s=await jK.Manifest.tryFind(this.context.cwd),a=s??new jK.Manifest,o=Object.fromEntries(t.get("initFields").entries());a.load(o),a.name=a.name??TCe.structUtils.makeIdent(t.get("initScope"),this.name??y_.ppath.basename(this.context.cwd)),a.packageManager=jK.YarnVersion&&jK.miscUtils.isTaggedYarnVersion(jK.YarnVersion)?`yarn@${jK.YarnVersion}`:null,(!s&&this.workspace||this.private)&&(a.private=!0),this.workspace&&a.workspaceDefinitions.length===0&&(await y_.xfs.mkdirPromise(y_.ppath.join(this.context.cwd,"packages"),{recursive:!0}),a.workspaceDefinitions=[{pattern:"packages/*"}]);let g={};a.exportTo(g);let p=y_.ppath.join(this.context.cwd,jK.Manifest.fileName);await y_.xfs.changeFilePromise(p,`${JSON.stringify(g,null,2)} +`,{automaticNewlines:!0});let f=[p],m=y_.ppath.join(this.context.cwd,"README.md");if(y_.xfs.existsSync(m)||(await y_.xfs.writeFilePromise(m,`# ${TCe.structUtils.stringifyIdent(a.name)} +`),f.push(m)),!r||r.cwd===this.context.cwd){let y=y_.ppath.join(this.context.cwd,y_.Filename.lockfile);y_.xfs.existsSync(y)||(await y_.xfs.writeFilePromise(y,""),f.push(y));let v=[".yarn/*","!.yarn/patches","!.yarn/plugins","!.yarn/releases","!.yarn/sdks","!.yarn/versions","","# Swap the comments on the following lines if you wish to use zero-installs","# In that case, don't forget to run `yarn config set enableGlobalCache false`!","# Documentation here: https://yarnpkg.com/features/caching#zero-installs","","#!.yarn/cache",".pnp.*"].map(ge=>`${ge} +`).join(""),k=y_.ppath.join(this.context.cwd,".gitignore");y_.xfs.existsSync(k)||(await y_.xfs.writeFilePromise(k,v),f.push(k));let O=["/.yarn/** linguist-vendored","/.yarn/releases/* binary","/.yarn/plugins/**/* binary","/.pnp.* binary linguist-generated"].map(ge=>`${ge} +`).join(""),X=y_.ppath.join(this.context.cwd,".gitattributes");y_.xfs.existsSync(X)||(await y_.xfs.writeFilePromise(X,O),f.push(X));let U={"*":{endOfLine:"lf",insertFinalNewline:!0},"*.{js,json,yml}":{charset:"utf-8",indentStyle:"space",indentSize:2}};jK.miscUtils.mergeIntoTarget(U,t.get("initEditorConfig"));let le=`root = true `;for(let[ge,fe]of Object.entries(U)){le+=` [${ge}] `;for(let[pe,he]of Object.entries(fe)){let be=pe.replace(/[A-Z]/g,Te=>`_${Te.toLowerCase()}`);le+=`${be} = ${he} -`}}let ae=__.ppath.join(this.context.cwd,".editorconfig");__.xfs.existsSync(ae)||(await __.xfs.writeFilePromise(ae,le),f.push(ae)),await this.cli.run(["install"],{quiet:!0}),__.xfs.existsSync(__.ppath.join(this.context.cwd,".git"))||(await SCe.execUtils.execvp("git",["init"],{cwd:this.context.cwd}),await SCe.execUtils.execvp("git",["add","--",...f],{cwd:this.context.cwd}),await SCe.execUtils.execvp("git",["commit","--allow-empty","-m","First commit"],{cwd:this.context.cwd}))}}};YJe.paths=[["init"]];YJe.usage=bae.Command.Usage({description:"create a new package",details:"\n This command will setup a new package in your local directory.\n\n If the `-p,--private` or `-w,--workspace` options are set, the package will be private by default.\n\n If the `-w,--workspace` option is set, the package will be configured to accept a set of workspaces in the `packages/` directory.\n\n If the `-i,--install` option is given a value, Yarn will first download it using `yarn set version` and only then forward the init call to the newly downloaded bundle. Without arguments, the downloaded bundle will be `latest`.\n\n The initial settings of the manifest can be changed by using the `initScope` and `initFields` configuration values. Additionally, Yarn will generate an EditorConfig file whose rules can be altered via `initEditorConfig`, and will initialize a Git repository in the current directory.\n ",examples:[["Create a new package in the local directory","yarn init"],["Create a new private package in the local directory","yarn init -p"],["Create a new package and store the Yarn release inside","yarn init -i=latest"],["Create a new private package and defines it as a workspace root","yarn init -w"]]});NNr.default=YJe});var pXi=z(XJe=>{"use strict";Object.defineProperty(XJe,"__esModule",{value:!0});XJe.InitCommand=void 0;var ITc=(Ma(),Ai(Oa)),HJe=Bn(),dXi=ITc.__importDefault(AXi());XJe.InitCommand=dXi.default;var CTc={configuration:{initScope:{description:"Scope used when creating packages via the init command",type:HJe.SettingsType.STRING,default:null},initFields:{description:"Additional fields to set when creating packages via the init command",type:HJe.SettingsType.MAP,valueDefinition:{description:"",type:HJe.SettingsType.ANY}},initEditorConfig:{description:"Extra rules to define in the generator editorconfig",type:HJe.SettingsType.MAP,valueDefinition:{description:"",type:HJe.SettingsType.ANY}}},commands:[dXi.default]};XJe.default=CTc});var JJe=z(UNe=>{"use strict";Object.defineProperty(UNe,"__esModule",{value:!0});UNe.LINK_PROTOCOL=UNe.PORTAL_PROTOCOL=void 0;UNe.PORTAL_PROTOCOL="portal:";UNe.LINK_PROTOCOL="link:"});var IXi=z(Gwt=>{"use strict";Object.defineProperty(Gwt,"__esModule",{value:!0});Gwt.LinkFetcher=void 0;var fXi=Bn(),gx=Ro(),RNr=JJe(),DNr=class{supports(t,r){return!!t.reference.startsWith(RNr.LINK_PROTOCOL)}getLocalPath(t,r){let{parentLocator:s,path:a}=fXi.structUtils.parseFileStyleRange(t.reference,{protocol:RNr.LINK_PROTOCOL});if(gx.ppath.isAbsolute(a))return a;let o=r.fetcher.getLocalPath(s,r);return o===null?null:gx.ppath.resolve(o,a)}async fetch(t,r){let{parentLocator:s,path:a}=fXi.structUtils.parseFileStyleRange(t.reference,{protocol:RNr.LINK_PROTOCOL}),o=gx.ppath.isAbsolute(a)?{packageFs:new gx.CwdFS(gx.PortablePath.root),prefixPath:gx.PortablePath.dot,localPath:gx.PortablePath.root}:await r.fetcher.fetch(s,r),g=o.localPath?{packageFs:new gx.CwdFS(gx.PortablePath.root),prefixPath:gx.ppath.relative(gx.PortablePath.root,o.localPath),localPath:gx.PortablePath.root}:o;o!==g&&o.releaseFs&&o.releaseFs();let p=g.packageFs,f=gx.ppath.resolve(g.localPath??g.packageFs.getRealPath(),g.prefixPath,a);return o.localPath?{packageFs:new gx.CwdFS(f,{baseFs:p}),releaseFs:g.releaseFs,prefixPath:gx.PortablePath.dot,discardFromLookup:!0,localPath:f}:{packageFs:new gx.JailFS(f,{baseFs:p}),releaseFs:g.releaseFs,prefixPath:gx.PortablePath.dot,discardFromLookup:!0}}};Gwt.LinkFetcher=DNr});var CXi=z(Zwt=>{"use strict";Object.defineProperty(Zwt,"__esModule",{value:!0});Zwt.LinkResolver=void 0;var mTc=Bn(),xNr=Bn(),hTc=Ro(),Fwt=JJe(),kNr=class{supportsDescriptor(t,r){return!!t.range.startsWith(Fwt.LINK_PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(Fwt.LINK_PROTOCOL)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,s){return xNr.structUtils.bindDescriptor(t,{locator:xNr.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,s){let a=t.range.slice(Fwt.LINK_PROTOCOL.length);return[xNr.structUtils.makeLocator(t,`${Fwt.LINK_PROTOCOL}${hTc.npath.toPortablePath(a)}`)]}async getSatisfying(t,r,s,a){let[o]=await this.getCandidates(t,r,a);return{locators:s.filter(g=>g.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){return{...t,version:"0.0.0",languageName:r.project.configuration.get("defaultLanguageName"),linkType:mTc.LinkType.SOFT,conditions:null,dependencies:new Map,peerDependencies:new Map,dependenciesMeta:new Map,peerDependenciesMeta:new Map,bin:new Map}}};Zwt.LinkResolver=kNr});var hXi=z(Lwt=>{"use strict";Object.defineProperty(Lwt,"__esModule",{value:!0});Lwt.PortalFetcher=void 0;var mXi=Bn(),Ax=Ro(),GNr=JJe(),FNr=class{supports(t,r){return!!t.reference.startsWith(GNr.PORTAL_PROTOCOL)}getLocalPath(t,r){let{parentLocator:s,path:a}=mXi.structUtils.parseFileStyleRange(t.reference,{protocol:GNr.PORTAL_PROTOCOL});if(Ax.ppath.isAbsolute(a))return a;let o=r.fetcher.getLocalPath(s,r);return o===null?null:Ax.ppath.resolve(o,a)}async fetch(t,r){let{parentLocator:s,path:a}=mXi.structUtils.parseFileStyleRange(t.reference,{protocol:GNr.PORTAL_PROTOCOL}),o=Ax.ppath.isAbsolute(a)?{packageFs:new Ax.CwdFS(Ax.PortablePath.root),prefixPath:Ax.PortablePath.dot,localPath:Ax.PortablePath.root}:await r.fetcher.fetch(s,r),g=o.localPath?{packageFs:new Ax.CwdFS(Ax.PortablePath.root),prefixPath:Ax.ppath.relative(Ax.PortablePath.root,o.localPath),localPath:Ax.PortablePath.root}:o;o!==g&&o.releaseFs&&o.releaseFs();let p=g.packageFs,f=Ax.ppath.resolve(g.localPath??g.packageFs.getRealPath(),g.prefixPath,a);return o.localPath?{packageFs:new Ax.CwdFS(f,{baseFs:p}),releaseFs:g.releaseFs,prefixPath:Ax.PortablePath.dot,localPath:f}:{packageFs:new Ax.JailFS(f,{baseFs:p}),releaseFs:g.releaseFs,prefixPath:Ax.PortablePath.dot}}};Lwt.PortalFetcher=FNr});var _Xi=z(Pwt=>{"use strict";Object.defineProperty(Pwt,"__esModule",{value:!0});Pwt.PortalResolver=void 0;var _Tc=Bn(),yTc=Bn(),Vwt=Bn(),bTc=Ro(),Wwt=JJe(),ZNr=class{supportsDescriptor(t,r){return!!t.range.startsWith(Wwt.PORTAL_PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(Wwt.PORTAL_PROTOCOL)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,s){return Vwt.structUtils.bindDescriptor(t,{locator:Vwt.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,s){let a=t.range.slice(Wwt.PORTAL_PROTOCOL.length);return[Vwt.structUtils.makeLocator(t,`${Wwt.PORTAL_PROTOCOL}${bTc.npath.toPortablePath(a)}`)]}async getSatisfying(t,r,s,a){let[o]=await this.getCandidates(t,r,a);return{locators:s.filter(g=>g.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let s=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await Vwt.miscUtils.releaseAfterUseAsync(async()=>await _Tc.Manifest.find(s.prefixPath,{baseFs:s.packageFs}),s.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:yTc.LinkType.SOFT,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};Pwt.PortalResolver=ZNr});var vXi=z(tX=>{"use strict";Object.defineProperty(tX,"__esModule",{value:!0});tX.LinkResolver=tX.LinkFetcher=tX.PortalResolver=tX.PortalFetcher=void 0;var yXi=IXi();Object.defineProperty(tX,"LinkFetcher",{enumerable:!0,get:function(){return yXi.LinkFetcher}});var bXi=CXi();Object.defineProperty(tX,"LinkResolver",{enumerable:!0,get:function(){return bXi.LinkResolver}});var EXi=hXi();Object.defineProperty(tX,"PortalFetcher",{enumerable:!0,get:function(){return EXi.PortalFetcher}});var BXi=_Xi();Object.defineProperty(tX,"PortalResolver",{enumerable:!0,get:function(){return BXi.PortalResolver}});var ETc={fetchers:[yXi.LinkFetcher,EXi.PortalFetcher],resolvers:[bXi.LinkResolver,BXi.PortalResolver]};tX.default=ETc});var ONr=z(KNe=>{"use strict";Object.defineProperty(KNe,"__esModule",{value:!0});KNe.hoist=KNe.HoisterDependencyKind=void 0;var wCe;(function(e){e[e.REGULAR=0]="REGULAR",e[e.WORKSPACE=1]="WORKSPACE",e[e.EXTERNAL_SOFT_LINK=2]="EXTERNAL_SOFT_LINK"})(wCe||(KNe.HoisterDependencyKind=wCe={}));var e$;(function(e){e[e.YES=0]="YES",e[e.NO=1]="NO",e[e.DEPENDS=2]="DEPENDS"})(e$||(e$={}));var VNr=(e,t)=>`${e}@${t}`,SXi=(e,t)=>{let r=t.indexOf("#"),s=r>=0?t.substring(r+1):t;return VNr(e,s)},rX;(function(e){e[e.NONE=-1]="NONE",e[e.PERF=0]="PERF",e[e.CHECK=1]="CHECK",e[e.REASONS=2]="REASONS",e[e.INTENSIVE_CHECK=9]="INTENSIVE_CHECK"})(rX||(rX={}));var BTc=(e,t={})=>{let r=t.debugLevel||Number(process.env.NM_DEBUG_LEVEL||rX.NONE),s=t.check||r>=rX.INTENSIVE_CHECK,a=t.hoistingLimits||new Map,o={check:s,debugLevel:r,hoistingLimits:a,fastLookupPossible:!0},g;o.debugLevel>=rX.PERF&&(g=Date.now());let p=DTc(e,o),f=!1,m=0;do{let y=WNr(p,[p],new Set([p.locator]),new Map,o);f=y.anotherRoundNeeded||y.isGraphChanged,o.fastLookupPossible=!1,m++}while(f);if(o.debugLevel>=rX.PERF&&console.log(`hoist time: ${Date.now()-g}ms, rounds: ${m}`),o.debugLevel>=rX.CHECK){let y=UJe(p);if(WNr(p,[p],new Set([p.locator]),new Map,o).isGraphChanged)throw new Error(`The hoisting result is not terminal, prev tree: +`}}let ae=y_.ppath.join(this.context.cwd,".editorconfig");y_.xfs.existsSync(ae)||(await y_.xfs.writeFilePromise(ae,le),f.push(ae)),await this.cli.run(["install"],{quiet:!0}),y_.xfs.existsSync(y_.ppath.join(this.context.cwd,".git"))||(await TCe.execUtils.execvp("git",["init"],{cwd:this.context.cwd}),await TCe.execUtils.execvp("git",["add","--",...f],{cwd:this.context.cwd}),await TCe.execUtils.execvp("git",["commit","--allow-empty","-m","First commit"],{cwd:this.context.cwd}))}}};XJe.paths=[["init"]];XJe.usage=Dae.Command.Usage({description:"create a new package",details:"\n This command will setup a new package in your local directory.\n\n If the `-p,--private` or `-w,--workspace` options are set, the package will be private by default.\n\n If the `-w,--workspace` option is set, the package will be configured to accept a set of workspaces in the `packages/` directory.\n\n If the `-i,--install` option is given a value, Yarn will first download it using `yarn set version` and only then forward the init call to the newly downloaded bundle. Without arguments, the downloaded bundle will be `latest`.\n\n The initial settings of the manifest can be changed by using the `initScope` and `initFields` configuration values. Additionally, Yarn will generate an EditorConfig file whose rules can be altered via `initEditorConfig`, and will initialize a Git repository in the current directory.\n ",examples:[["Create a new package in the local directory","yarn init"],["Create a new private package in the local directory","yarn init -p"],["Create a new package and store the Yarn release inside","yarn init -i=latest"],["Create a new private package and defines it as a workspace root","yarn init -w"]]});FNr.default=XJe});var yXi=z(UJe=>{"use strict";Object.defineProperty(UJe,"__esModule",{value:!0});UJe.InitCommand=void 0;var xTc=(Oa(),Ai(Pa)),JJe=Bn(),_Xi=xTc.__importDefault(hXi());UJe.InitCommand=_Xi.default;var kTc={configuration:{initScope:{description:"Scope used when creating packages via the init command",type:JJe.SettingsType.STRING,default:null},initFields:{description:"Additional fields to set when creating packages via the init command",type:JJe.SettingsType.MAP,valueDefinition:{description:"",type:JJe.SettingsType.ANY}},initEditorConfig:{description:"Extra rules to define in the generator editorconfig",type:JJe.SettingsType.MAP,valueDefinition:{description:"",type:JJe.SettingsType.ANY}}},commands:[_Xi.default]};UJe.default=kTc});var KJe=z(jNe=>{"use strict";Object.defineProperty(jNe,"__esModule",{value:!0});jNe.LINK_PROTOCOL=jNe.PORTAL_PROTOCOL=void 0;jNe.PORTAL_PROTOCOL="portal:";jNe.LINK_PROTOCOL="link:"});var EXi=z(Lwt=>{"use strict";Object.defineProperty(Lwt,"__esModule",{value:!0});Lwt.LinkFetcher=void 0;var bXi=Bn(),Cx=No(),ZNr=KJe(),LNr=class{supports(t,r){return!!t.reference.startsWith(ZNr.LINK_PROTOCOL)}getLocalPath(t,r){let{parentLocator:s,path:a}=bXi.structUtils.parseFileStyleRange(t.reference,{protocol:ZNr.LINK_PROTOCOL});if(Cx.ppath.isAbsolute(a))return a;let o=r.fetcher.getLocalPath(s,r);return o===null?null:Cx.ppath.resolve(o,a)}async fetch(t,r){let{parentLocator:s,path:a}=bXi.structUtils.parseFileStyleRange(t.reference,{protocol:ZNr.LINK_PROTOCOL}),o=Cx.ppath.isAbsolute(a)?{packageFs:new Cx.CwdFS(Cx.PortablePath.root),prefixPath:Cx.PortablePath.dot,localPath:Cx.PortablePath.root}:await r.fetcher.fetch(s,r),g=o.localPath?{packageFs:new Cx.CwdFS(Cx.PortablePath.root),prefixPath:Cx.ppath.relative(Cx.PortablePath.root,o.localPath),localPath:Cx.PortablePath.root}:o;o!==g&&o.releaseFs&&o.releaseFs();let p=g.packageFs,f=Cx.ppath.resolve(g.localPath??g.packageFs.getRealPath(),g.prefixPath,a);return o.localPath?{packageFs:new Cx.CwdFS(f,{baseFs:p}),releaseFs:g.releaseFs,prefixPath:Cx.PortablePath.dot,discardFromLookup:!0,localPath:f}:{packageFs:new Cx.JailFS(f,{baseFs:p}),releaseFs:g.releaseFs,prefixPath:Cx.PortablePath.dot,discardFromLookup:!0}}};Lwt.LinkFetcher=LNr});var BXi=z(Wwt=>{"use strict";Object.defineProperty(Wwt,"__esModule",{value:!0});Wwt.LinkResolver=void 0;var GTc=Bn(),VNr=Bn(),FTc=No(),Vwt=KJe(),WNr=class{supportsDescriptor(t,r){return!!t.range.startsWith(Vwt.LINK_PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(Vwt.LINK_PROTOCOL)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,s){return VNr.structUtils.bindDescriptor(t,{locator:VNr.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,s){let a=t.range.slice(Vwt.LINK_PROTOCOL.length);return[VNr.structUtils.makeLocator(t,`${Vwt.LINK_PROTOCOL}${FTc.npath.toPortablePath(a)}`)]}async getSatisfying(t,r,s,a){let[o]=await this.getCandidates(t,r,a);return{locators:s.filter(g=>g.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){return{...t,version:"0.0.0",languageName:r.project.configuration.get("defaultLanguageName"),linkType:GTc.LinkType.SOFT,conditions:null,dependencies:new Map,peerDependencies:new Map,dependenciesMeta:new Map,peerDependenciesMeta:new Map,bin:new Map}}};Wwt.LinkResolver=WNr});var SXi=z(Pwt=>{"use strict";Object.defineProperty(Pwt,"__esModule",{value:!0});Pwt.PortalFetcher=void 0;var vXi=Bn(),mx=No(),PNr=KJe(),ONr=class{supports(t,r){return!!t.reference.startsWith(PNr.PORTAL_PROTOCOL)}getLocalPath(t,r){let{parentLocator:s,path:a}=vXi.structUtils.parseFileStyleRange(t.reference,{protocol:PNr.PORTAL_PROTOCOL});if(mx.ppath.isAbsolute(a))return a;let o=r.fetcher.getLocalPath(s,r);return o===null?null:mx.ppath.resolve(o,a)}async fetch(t,r){let{parentLocator:s,path:a}=vXi.structUtils.parseFileStyleRange(t.reference,{protocol:PNr.PORTAL_PROTOCOL}),o=mx.ppath.isAbsolute(a)?{packageFs:new mx.CwdFS(mx.PortablePath.root),prefixPath:mx.PortablePath.dot,localPath:mx.PortablePath.root}:await r.fetcher.fetch(s,r),g=o.localPath?{packageFs:new mx.CwdFS(mx.PortablePath.root),prefixPath:mx.ppath.relative(mx.PortablePath.root,o.localPath),localPath:mx.PortablePath.root}:o;o!==g&&o.releaseFs&&o.releaseFs();let p=g.packageFs,f=mx.ppath.resolve(g.localPath??g.packageFs.getRealPath(),g.prefixPath,a);return o.localPath?{packageFs:new mx.CwdFS(f,{baseFs:p}),releaseFs:g.releaseFs,prefixPath:mx.PortablePath.dot,localPath:f}:{packageFs:new mx.JailFS(f,{baseFs:p}),releaseFs:g.releaseFs,prefixPath:mx.PortablePath.dot}}};Pwt.PortalFetcher=ONr});var wXi=z(Mwt=>{"use strict";Object.defineProperty(Mwt,"__esModule",{value:!0});Mwt.PortalResolver=void 0;var ZTc=Bn(),LTc=Bn(),Owt=Bn(),VTc=No(),Qwt=KJe(),QNr=class{supportsDescriptor(t,r){return!!t.range.startsWith(Qwt.PORTAL_PROTOCOL)}supportsLocator(t,r){return!!t.reference.startsWith(Qwt.PORTAL_PROTOCOL)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,s){return Owt.structUtils.bindDescriptor(t,{locator:Owt.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,s){let a=t.range.slice(Qwt.PORTAL_PROTOCOL.length);return[Owt.structUtils.makeLocator(t,`${Qwt.PORTAL_PROTOCOL}${VTc.npath.toPortablePath(a)}`)]}async getSatisfying(t,r,s,a){let[o]=await this.getCandidates(t,r,a);return{locators:s.filter(g=>g.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let s=await r.fetchOptions.fetcher.fetch(t,r.fetchOptions),a=await Owt.miscUtils.releaseAfterUseAsync(async()=>await ZTc.Manifest.find(s.prefixPath,{baseFs:s.packageFs}),s.releaseFs);return{...t,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:LTc.LinkType.SOFT,conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};Mwt.PortalResolver=QNr});var xXi=z(iX=>{"use strict";Object.defineProperty(iX,"__esModule",{value:!0});iX.LinkResolver=iX.LinkFetcher=iX.PortalResolver=iX.PortalFetcher=void 0;var TXi=EXi();Object.defineProperty(iX,"LinkFetcher",{enumerable:!0,get:function(){return TXi.LinkFetcher}});var NXi=BXi();Object.defineProperty(iX,"LinkResolver",{enumerable:!0,get:function(){return NXi.LinkResolver}});var RXi=SXi();Object.defineProperty(iX,"PortalFetcher",{enumerable:!0,get:function(){return RXi.PortalFetcher}});var DXi=wXi();Object.defineProperty(iX,"PortalResolver",{enumerable:!0,get:function(){return DXi.PortalResolver}});var WTc={fetchers:[TXi.LinkFetcher,RXi.PortalFetcher],resolvers:[NXi.LinkResolver,DXi.PortalResolver]};iX.default=WTc});var JNr=z(zNe=>{"use strict";Object.defineProperty(zNe,"__esModule",{value:!0});zNe.hoist=zNe.HoisterDependencyKind=void 0;var NCe;(function(e){e[e.REGULAR=0]="REGULAR",e[e.WORKSPACE=1]="WORKSPACE",e[e.EXTERNAL_SOFT_LINK=2]="EXTERNAL_SOFT_LINK"})(NCe||(zNe.HoisterDependencyKind=NCe={}));var r$;(function(e){e[e.YES=0]="YES",e[e.NO=1]="NO",e[e.DEPENDS=2]="DEPENDS"})(r$||(r$={}));var HNr=(e,t)=>`${e}@${t}`,kXi=(e,t)=>{let r=t.indexOf("#"),s=r>=0?t.substring(r+1):t;return HNr(e,s)},sX;(function(e){e[e.NONE=-1]="NONE",e[e.PERF=0]="PERF",e[e.CHECK=1]="CHECK",e[e.REASONS=2]="REASONS",e[e.INTENSIVE_CHECK=9]="INTENSIVE_CHECK"})(sX||(sX={}));var PTc=(e,t={})=>{let r=t.debugLevel||Number(process.env.NM_DEBUG_LEVEL||sX.NONE),s=t.check||r>=sX.INTENSIVE_CHECK,a=t.hoistingLimits||new Map,o={check:s,debugLevel:r,hoistingLimits:a,fastLookupPossible:!0},g;o.debugLevel>=sX.PERF&&(g=Date.now());let p=JTc(e,o),f=!1,m=0;do{let y=YNr(p,[p],new Set([p.locator]),new Map,o);f=y.anotherRoundNeeded||y.isGraphChanged,o.fastLookupPossible=!1,m++}while(f);if(o.debugLevel>=sX.PERF&&console.log(`hoist time: ${Date.now()-g}ms, rounds: ${m}`),o.debugLevel>=sX.CHECK){let y=jJe(p);if(YNr(p,[p],new Set([p.locator]),new Map,o).isGraphChanged)throw new Error(`The hoisting result is not terminal, prev tree: ${y}, next tree: -${UJe(p)}`);let v=NXi(p);if(v)throw new Error(`${v}, after hoisting finished: -${UJe(p)}`)}return o.debugLevel>=rX.REASONS&&console.log(UJe(p)),xTc(p)};KNe.hoist=BTc;var vTc=e=>{let t=e[e.length-1],r=new Map,s=new Set,a=o=>{if(!s.has(o)){s.add(o);for(let g of o.hoistedDependencies.values())r.set(g.name,g);for(let g of o.dependencies.values())o.peerNames.has(g.name)||a(g)}};return a(t),r},STc=e=>{let t=e[e.length-1],r=new Map,s=new Set,a=new Set,o=(g,p)=>{if(s.has(g))return;s.add(g);for(let m of g.hoistedDependencies.values())if(!p.has(m.name)){let y;for(let B of e)y=B.dependencies.get(m.name),y&&r.set(y.name,y)}let f=new Set;for(let m of g.dependencies.values())f.add(m.name);for(let m of g.dependencies.values())g.peerNames.has(m.name)||o(m,f)};return o(t,a),r},wXi=(e,t)=>{if(t.decoupled)return t;let{name:r,references:s,ident:a,locator:o,dependencies:g,originalDependencies:p,hoistedDependencies:f,peerNames:m,reasons:y,isHoistBorder:B,hoistPriority:v,dependencyKind:G,hoistedFrom:T,hoistedTo:O}=t,X={name:r,references:new Set(s),ident:a,locator:o,dependencies:new Map(g),originalDependencies:new Map(p),hoistedDependencies:new Map(f),peerNames:new Set(m),reasons:new Map(y),decoupled:!0,isHoistBorder:B,hoistPriority:v,dependencyKind:G,hoistedFrom:new Map(T),hoistedTo:new Map(O)},U=X.dependencies.get(r);return U&&U.ident==X.ident&&X.dependencies.set(r,X),e.dependencies.set(X.name,X),X},wTc=(e,t)=>{let r=new Map([[e.name,[e.ident]]]);for(let a of e.dependencies.values())e.peerNames.has(a.name)||r.set(a.name,[a.ident]);let s=Array.from(t.keys());s.sort((a,o)=>{let g=t.get(a),p=t.get(o);if(p.hoistPriority!==g.hoistPriority)return p.hoistPriority-g.hoistPriority;{let f=g.dependents.size+g.peerDependents.size;return p.dependents.size+p.peerDependents.size-f}});for(let a of s){let o=a.substring(0,a.indexOf("@",1)),g=a.substring(o.length+1);if(!e.peerNames.has(o)){let p=r.get(o);p||(p=[],r.set(o,p)),p.indexOf(g)<0&&p.push(g)}}return r},LNr=e=>{let t=new Set,r=(s,a=new Set)=>{if(!a.has(s)){a.add(s);for(let o of s.peerNames)if(!e.peerNames.has(o)){let g=e.dependencies.get(o);g&&!t.has(g)&&r(g,a)}t.add(s)}};for(let s of e.dependencies.values())e.peerNames.has(s.name)||r(s);return t},WNr=(e,t,r,s,a,o=new Set)=>{let g=t[t.length-1];if(o.has(g))return{anotherRoundNeeded:!1,isGraphChanged:!1};o.add(g);let p=kTc(g),f=wTc(g,p),m=e==g?new Map:a.fastLookupPossible?vTc(t):STc(t),y,B=!1,v=!1,G=new Map(Array.from(f.entries()).map(([O,X])=>[O,X[0]])),T=new Map;do{let O=RTc(e,t,r,m,G,f,s,T,a);O.isGraphChanged&&(v=!0),O.anotherRoundNeeded&&(B=!0),y=!1;for(let[X,U]of f)U.length>1&&!g.dependencies.has(X)&&(G.delete(X),U.shift(),G.set(X,U[0]),y=!0)}while(y);for(let O of g.dependencies.values())if(!g.peerNames.has(O.name)&&!r.has(O.locator)){r.add(O.locator);let X=WNr(e,[...t,O],r,T,a);X.isGraphChanged&&(v=!0),X.anotherRoundNeeded&&(B=!0),r.delete(O.locator)}return{anotherRoundNeeded:B,isGraphChanged:v}},TTc=e=>{for(let[t,r]of e.dependencies)if(!e.peerNames.has(t)&&r.ident!==e.ident)return!0;return!1},NTc=(e,t,r,s,a,o,g,p,{outputReason:f,fastLookupPossible:m})=>{let y,B=null,v=new Set;f&&(y=`${Array.from(t).map(X=>dx(X)).join("\u2192")}`);let G=r[r.length-1],O=!(s.ident===G.ident);if(f&&!O&&(B="- self-reference"),O&&(O=s.dependencyKind!==wCe.WORKSPACE,f&&!O&&(B="- workspace")),O&&s.dependencyKind===wCe.EXTERNAL_SOFT_LINK&&(O=!TTc(s),f&&!O&&(B="- external soft link with unhoisted dependencies")),O&&(O=!e.peerNames.has(s.name),f&&!O&&(B=`- cannot shadow peer: ${dx(e.originalDependencies.get(s.name).locator)} at ${y}`)),O){let X=!1,U=a.get(s.name);if(X=!U||U.ident===s.ident,f&&!X&&(B=`- filled by: ${dx(U.locator)} at ${y}`),X)for(let le=r.length-1;le>=1;le--){let ge=r[le].dependencies.get(s.name);if(ge&&ge.ident!==s.ident){X=!1;let fe=p.get(G);fe||(fe=new Set,p.set(G,fe)),fe.add(s.name),f&&(B=`- filled by ${dx(ge.locator)} at ${r.slice(0,le).map(pe=>dx(pe.locator)).join("\u2192")}`);break}}O=X}if(O&&(O=o.get(s.name)===s.ident,f&&!O&&(B=`- filled by: ${dx(g.get(s.name)[0])} at ${y}`)),O){let X=!0,U=new Set(s.peerNames);for(let le=r.length-1;le>=1;le--){let ae=r[le];for(let ge of U){if(ae.peerNames.has(ge)&&ae.originalDependencies.has(ge))continue;let fe=ae.dependencies.get(ge);fe&&e.dependencies.get(ge)!==fe&&(le===r.length-1?v.add(fe):(v=null,X=!1,f&&(B=`- peer dependency ${dx(fe.locator)} from parent ${dx(ae.locator)} was not hoisted to ${y}`))),U.delete(ge)}if(!X)break}O=X}if(O&&!m)for(let X of s.hoistedDependencies.values()){let U=a.get(X.name)||e.dependencies.get(X.name);if(!U||X.ident!==U.ident){O=!1,f&&(B=`- previously hoisted dependency mismatch, needed: ${dx(X.locator)}, available: ${dx(U?.locator)}`);break}}return v!==null&&v.size>0?{isHoistable:e$.DEPENDS,dependsOn:v,reason:B}:{isHoistable:O?e$.YES:e$.NO,reason:B}},Owt=e=>`${e.name}@${e.locator}`,RTc=(e,t,r,s,a,o,g,p,f)=>{let m=t[t.length-1],y=new Set,B=!1,v=!1,G=(U,le,ae,ge,fe)=>{if(y.has(ge))return;let pe=[...le,Owt(ge)],he=[...ae,Owt(ge)],be=new Map,Te=new Map;for(let Je of LNr(ge)){let Xe=NTc(m,r,[m,...U,ge],Je,s,a,o,p,{outputReason:f.debugLevel>=rX.REASONS,fastLookupPossible:f.fastLookupPossible});if(Te.set(Je,Xe),Xe.isHoistable===e$.DEPENDS)for(let ft of Xe.dependsOn){let Gt=be.get(ft.name)||new Set;Gt.add(Je.name),be.set(ft.name,Gt)}}let ke=new Set,x=(Je,Xe,ft)=>{if(!ke.has(Je)){ke.add(Je),Te.set(Je,{isHoistable:e$.NO,reason:ft});for(let Gt of be.get(Je.name)||[])x(ge.dependencies.get(Gt),Xe,f.debugLevel>=rX.REASONS?`- peer dependency ${dx(Je.locator)} from parent ${dx(ge.locator)} was not hoisted`:"")}};for(let[Je,Xe]of Te)Xe.isHoistable===e$.NO&&x(Je,Xe,Xe.reason);let et=!1;for(let Je of Te.keys())if(!ke.has(Je)){v=!0;let Xe=g.get(ge);Xe&&Xe.has(Je.name)&&(B=!0),et=!0,ge.dependencies.delete(Je.name),ge.hoistedDependencies.set(Je.name,Je),ge.reasons.delete(Je.name);let ft=m.dependencies.get(Je.name);if(f.debugLevel>=rX.REASONS){let Gt=Array.from(le).concat([ge.locator]).map(Ur=>dx(Ur)).join("\u2192"),er=m.hoistedFrom.get(Je.name);er||(er=[],m.hoistedFrom.set(Je.name,er)),er.push(Gt),ge.hoistedTo.set(Je.name,Array.from(t).map(Ur=>dx(Ur.locator)).join("\u2192"))}if(!ft)m.ident!==Je.ident&&(m.dependencies.set(Je.name,Je),fe.add(Je));else for(let Gt of Je.references)ft.references.add(Gt)}if(ge.dependencyKind===wCe.EXTERNAL_SOFT_LINK&&et&&(B=!0),f.check){let Je=NXi(e);if(Je)throw new Error(`${Je}, after hoisting dependencies of ${[m,...U,ge].map(Xe=>dx(Xe.locator)).join("\u2192")}: -${UJe(e)}`)}let Ue=LNr(ge);for(let Je of Ue)if(ke.has(Je)){let Xe=Te.get(Je);if((a.get(Je.name)===Je.ident||!ge.reasons.has(Je.name))&&Xe.isHoistable!==e$.YES&&ge.reasons.set(Je.name,Xe.reason),!Je.isHoistBorder&&he.indexOf(Owt(Je))<0){y.add(ge);let Gt=wXi(ge,Je);G([...U,ge],pe,he,Gt,O),y.delete(ge)}}},T,O=new Set(LNr(m)),X=Array.from(t).map(U=>Owt(U));do{T=O,O=new Set;for(let U of T){if(U.locator===m.locator||U.isHoistBorder)continue;let le=wXi(m,U);G([],Array.from(r),X,le,O)}}while(O.size>0);return{anotherRoundNeeded:B,isGraphChanged:v}},NXi=e=>{let t=[],r=new Set,s=new Set,a=(o,g,p)=>{if(r.has(o)||(r.add(o),s.has(o)))return;let f=new Map(g);for(let m of o.dependencies.values())o.peerNames.has(m.name)||f.set(m.name,m);for(let m of o.originalDependencies.values()){let y=f.get(m.name),B=()=>`${Array.from(s).concat([o]).map(v=>dx(v.locator)).join("\u2192")}`;if(o.peerNames.has(m.name)){let v=g.get(m.name);(v!==y||!v||v.ident!==m.ident)&&t.push(`${B()} - broken peer promise: expected ${m.ident} but found ${v&&v.ident}`)}else{let v=p.hoistedFrom.get(o.name),G=o.hoistedTo.get(m.name),T=`${v?` hoisted from ${v.join(", ")}`:""}`,O=`${G?` hoisted to ${G}`:""}`,X=`${B()}${T}`;y?y.ident!==m.ident&&t.push(`${X} - broken require promise for ${m.name}${O}: expected ${m.ident}, but found: ${y.ident}`):t.push(`${X} - broken require promise: no required dependency ${m.name}${O} found`)}}s.add(o);for(let m of o.dependencies.values())o.peerNames.has(m.name)||a(m,f,o);s.delete(o)};return a(e,e.dependencies,e),t.join(` -`)},DTc=(e,t)=>{let{identName:r,name:s,reference:a,peerNames:o}=e,g={name:s,references:new Set([a]),locator:VNr(r,a),ident:SXi(r,a),dependencies:new Map,originalDependencies:new Map,hoistedDependencies:new Map,peerNames:new Set(o),reasons:new Map,decoupled:!0,isHoistBorder:!0,hoistPriority:0,dependencyKind:wCe.WORKSPACE,hoistedFrom:new Map,hoistedTo:new Map},p=new Map([[e,g]]),f=(m,y)=>{let B=p.get(m),v=!!B;if(!B){let{name:G,identName:T,reference:O,peerNames:X,hoistPriority:U,dependencyKind:le}=m,ae=t.hoistingLimits.get(y.locator);B={name:G,references:new Set([O]),locator:VNr(T,O),ident:SXi(T,O),dependencies:new Map,originalDependencies:new Map,hoistedDependencies:new Map,peerNames:new Set(X),reasons:new Map,decoupled:!0,isHoistBorder:ae?ae.has(G):!1,hoistPriority:U||0,dependencyKind:le||wCe.REGULAR,hoistedFrom:new Map,hoistedTo:new Map},p.set(m,B)}if(y.dependencies.set(m.name,B),y.originalDependencies.set(m.name,B),v){let G=new Set,T=O=>{if(!G.has(O)){G.add(O),O.decoupled=!1;for(let X of O.dependencies.values())O.peerNames.has(X.name)||T(X)}};T(B)}else for(let G of m.dependencies)f(G,B)};for(let m of e.dependencies)f(m,g);return g},PNr=e=>e.substring(0,e.indexOf("@",1)),xTc=e=>{let t={name:e.name,identName:PNr(e.locator),references:new Set(e.references),dependencies:new Set},r=new Set([e]),s=(a,o,g)=>{let p=r.has(a),f;if(o===a)f=g;else{let{name:m,references:y,locator:B}=a;f={name:m,identName:PNr(B),references:y,dependencies:new Set}}if(g.dependencies.add(f),!p){r.add(a);for(let m of a.dependencies.values())a.peerNames.has(m.name)||s(m,a,f);r.delete(a)}};for(let a of e.dependencies.values())s(a,e,t);return t},kTc=e=>{let t=new Map,r=new Set([e]),s=g=>`${g.name}@${g.ident}`,a=g=>{let p=s(g),f=t.get(p);return f||(f={dependents:new Set,peerDependents:new Set,hoistPriority:0},t.set(p,f)),f},o=(g,p)=>{let f=!!r.has(p);if(a(p).dependents.add(g.ident),!f){r.add(p);for(let y of p.dependencies.values()){let B=a(y);B.hoistPriority=Math.max(B.hoistPriority,y.hoistPriority),p.peerNames.has(y.name)?B.peerDependents.add(p.ident):o(p,y)}}};for(let g of e.dependencies.values())e.peerNames.has(g.name)||o(e,g);return t},dx=e=>{if(!e)return"none";let t=e.indexOf("@",1),r=e.substring(0,t);r.endsWith("$wsroot$")&&(r=`wh:${r.replace("$wsroot$","")}`);let s=e.substring(t+1);if(s==="workspace:.")return".";if(s){let a=(s.indexOf("#")>0?s.split("#")[1]:s).replace("npm:","");return s.startsWith("virtual")&&(r=`v:${r}`),a.startsWith("workspace")&&(r=`w:${r}`,a=""),`${r}${a?`@${a}`:""}`}else return`${r}`},TXi=5e4,UJe=e=>{let t=0,r=(a,o,g="")=>{if(t>TXi||o.has(a))return"";t++;let p=Array.from(a.dependencies.values()).sort((m,y)=>m.name===y.name?0:m.name>y.name?1:-1),f="";o.add(a);for(let m=0;m":"")+(v!==y.name?`a:${y.name}:`:"")+dx(y.locator)+(B?` ${B}`:"")} -`,f+=r(y,o,`${g}${mTXi?` +${jJe(p)}`);let v=ZXi(p);if(v)throw new Error(`${v}, after hoisting finished: +${jJe(p)}`)}return o.debugLevel>=sX.REASONS&&console.log(jJe(p)),UTc(p)};zNe.hoist=PTc;var OTc=e=>{let t=e[e.length-1],r=new Map,s=new Set,a=o=>{if(!s.has(o)){s.add(o);for(let g of o.hoistedDependencies.values())r.set(g.name,g);for(let g of o.dependencies.values())o.peerNames.has(g.name)||a(g)}};return a(t),r},QTc=e=>{let t=e[e.length-1],r=new Map,s=new Set,a=new Set,o=(g,p)=>{if(s.has(g))return;s.add(g);for(let m of g.hoistedDependencies.values())if(!p.has(m.name)){let y;for(let B of e)y=B.dependencies.get(m.name),y&&r.set(y.name,y)}let f=new Set;for(let m of g.dependencies.values())f.add(m.name);for(let m of g.dependencies.values())g.peerNames.has(m.name)||o(m,f)};return o(t,a),r},GXi=(e,t)=>{if(t.decoupled)return t;let{name:r,references:s,ident:a,locator:o,dependencies:g,originalDependencies:p,hoistedDependencies:f,peerNames:m,reasons:y,isHoistBorder:B,hoistPriority:v,dependencyKind:k,hoistedFrom:T,hoistedTo:O}=t,X={name:r,references:new Set(s),ident:a,locator:o,dependencies:new Map(g),originalDependencies:new Map(p),hoistedDependencies:new Map(f),peerNames:new Set(m),reasons:new Map(y),decoupled:!0,isHoistBorder:B,hoistPriority:v,dependencyKind:k,hoistedFrom:new Map(T),hoistedTo:new Map(O)},U=X.dependencies.get(r);return U&&U.ident==X.ident&&X.dependencies.set(r,X),e.dependencies.set(X.name,X),X},MTc=(e,t)=>{let r=new Map([[e.name,[e.ident]]]);for(let a of e.dependencies.values())e.peerNames.has(a.name)||r.set(a.name,[a.ident]);let s=Array.from(t.keys());s.sort((a,o)=>{let g=t.get(a),p=t.get(o);if(p.hoistPriority!==g.hoistPriority)return p.hoistPriority-g.hoistPriority;{let f=g.dependents.size+g.peerDependents.size;return p.dependents.size+p.peerDependents.size-f}});for(let a of s){let o=a.substring(0,a.indexOf("@",1)),g=a.substring(o.length+1);if(!e.peerNames.has(o)){let p=r.get(o);p||(p=[],r.set(o,p)),p.indexOf(g)<0&&p.push(g)}}return r},MNr=e=>{let t=new Set,r=(s,a=new Set)=>{if(!a.has(s)){a.add(s);for(let o of s.peerNames)if(!e.peerNames.has(o)){let g=e.dependencies.get(o);g&&!t.has(g)&&r(g,a)}t.add(s)}};for(let s of e.dependencies.values())e.peerNames.has(s.name)||r(s);return t},YNr=(e,t,r,s,a,o=new Set)=>{let g=t[t.length-1];if(o.has(g))return{anotherRoundNeeded:!1,isGraphChanged:!1};o.add(g);let p=KTc(g),f=MTc(g,p),m=e==g?new Map:a.fastLookupPossible?OTc(t):QTc(t),y,B=!1,v=!1,k=new Map(Array.from(f.entries()).map(([O,X])=>[O,X[0]])),T=new Map;do{let O=XTc(e,t,r,m,k,f,s,T,a);O.isGraphChanged&&(v=!0),O.anotherRoundNeeded&&(B=!0),y=!1;for(let[X,U]of f)U.length>1&&!g.dependencies.has(X)&&(k.delete(X),U.shift(),k.set(X,U[0]),y=!0)}while(y);for(let O of g.dependencies.values())if(!g.peerNames.has(O.name)&&!r.has(O.locator)){r.add(O.locator);let X=YNr(e,[...t,O],r,T,a);X.isGraphChanged&&(v=!0),X.anotherRoundNeeded&&(B=!0),r.delete(O.locator)}return{anotherRoundNeeded:B,isGraphChanged:v}},HTc=e=>{for(let[t,r]of e.dependencies)if(!e.peerNames.has(t)&&r.ident!==e.ident)return!0;return!1},YTc=(e,t,r,s,a,o,g,p,{outputReason:f,fastLookupPossible:m})=>{let y,B=null,v=new Set;f&&(y=`${Array.from(t).map(X=>hx(X)).join("\u2192")}`);let k=r[r.length-1],O=!(s.ident===k.ident);if(f&&!O&&(B="- self-reference"),O&&(O=s.dependencyKind!==NCe.WORKSPACE,f&&!O&&(B="- workspace")),O&&s.dependencyKind===NCe.EXTERNAL_SOFT_LINK&&(O=!HTc(s),f&&!O&&(B="- external soft link with unhoisted dependencies")),O&&(O=!e.peerNames.has(s.name),f&&!O&&(B=`- cannot shadow peer: ${hx(e.originalDependencies.get(s.name).locator)} at ${y}`)),O){let X=!1,U=a.get(s.name);if(X=!U||U.ident===s.ident,f&&!X&&(B=`- filled by: ${hx(U.locator)} at ${y}`),X)for(let le=r.length-1;le>=1;le--){let ge=r[le].dependencies.get(s.name);if(ge&&ge.ident!==s.ident){X=!1;let fe=p.get(k);fe||(fe=new Set,p.set(k,fe)),fe.add(s.name),f&&(B=`- filled by ${hx(ge.locator)} at ${r.slice(0,le).map(pe=>hx(pe.locator)).join("\u2192")}`);break}}O=X}if(O&&(O=o.get(s.name)===s.ident,f&&!O&&(B=`- filled by: ${hx(g.get(s.name)[0])} at ${y}`)),O){let X=!0,U=new Set(s.peerNames);for(let le=r.length-1;le>=1;le--){let ae=r[le];for(let ge of U){if(ae.peerNames.has(ge)&&ae.originalDependencies.has(ge))continue;let fe=ae.dependencies.get(ge);fe&&e.dependencies.get(ge)!==fe&&(le===r.length-1?v.add(fe):(v=null,X=!1,f&&(B=`- peer dependency ${hx(fe.locator)} from parent ${hx(ae.locator)} was not hoisted to ${y}`))),U.delete(ge)}if(!X)break}O=X}if(O&&!m)for(let X of s.hoistedDependencies.values()){let U=a.get(X.name)||e.dependencies.get(X.name);if(!U||X.ident!==U.ident){O=!1,f&&(B=`- previously hoisted dependency mismatch, needed: ${hx(X.locator)}, available: ${hx(U?.locator)}`);break}}return v!==null&&v.size>0?{isHoistable:r$.DEPENDS,dependsOn:v,reason:B}:{isHoistable:O?r$.YES:r$.NO,reason:B}},Hwt=e=>`${e.name}@${e.locator}`,XTc=(e,t,r,s,a,o,g,p,f)=>{let m=t[t.length-1],y=new Set,B=!1,v=!1,k=(U,le,ae,ge,fe)=>{if(y.has(ge))return;let pe=[...le,Hwt(ge)],he=[...ae,Hwt(ge)],be=new Map,Te=new Map;for(let Je of MNr(ge)){let Xe=YTc(m,r,[m,...U,ge],Je,s,a,o,p,{outputReason:f.debugLevel>=sX.REASONS,fastLookupPossible:f.fastLookupPossible});if(Te.set(Je,Xe),Xe.isHoistable===r$.DEPENDS)for(let ft of Xe.dependsOn){let Gt=be.get(ft.name)||new Set;Gt.add(Je.name),be.set(ft.name,Gt)}}let ke=new Set,x=(Je,Xe,ft)=>{if(!ke.has(Je)){ke.add(Je),Te.set(Je,{isHoistable:r$.NO,reason:ft});for(let Gt of be.get(Je.name)||[])x(ge.dependencies.get(Gt),Xe,f.debugLevel>=sX.REASONS?`- peer dependency ${hx(Je.locator)} from parent ${hx(ge.locator)} was not hoisted`:"")}};for(let[Je,Xe]of Te)Xe.isHoistable===r$.NO&&x(Je,Xe,Xe.reason);let et=!1;for(let Je of Te.keys())if(!ke.has(Je)){v=!0;let Xe=g.get(ge);Xe&&Xe.has(Je.name)&&(B=!0),et=!0,ge.dependencies.delete(Je.name),ge.hoistedDependencies.set(Je.name,Je),ge.reasons.delete(Je.name);let ft=m.dependencies.get(Je.name);if(f.debugLevel>=sX.REASONS){let Gt=Array.from(le).concat([ge.locator]).map(Ur=>hx(Ur)).join("\u2192"),er=m.hoistedFrom.get(Je.name);er||(er=[],m.hoistedFrom.set(Je.name,er)),er.push(Gt),ge.hoistedTo.set(Je.name,Array.from(t).map(Ur=>hx(Ur.locator)).join("\u2192"))}if(!ft)m.ident!==Je.ident&&(m.dependencies.set(Je.name,Je),fe.add(Je));else for(let Gt of Je.references)ft.references.add(Gt)}if(ge.dependencyKind===NCe.EXTERNAL_SOFT_LINK&&et&&(B=!0),f.check){let Je=ZXi(e);if(Je)throw new Error(`${Je}, after hoisting dependencies of ${[m,...U,ge].map(Xe=>hx(Xe.locator)).join("\u2192")}: +${jJe(e)}`)}let Ue=MNr(ge);for(let Je of Ue)if(ke.has(Je)){let Xe=Te.get(Je);if((a.get(Je.name)===Je.ident||!ge.reasons.has(Je.name))&&Xe.isHoistable!==r$.YES&&ge.reasons.set(Je.name,Xe.reason),!Je.isHoistBorder&&he.indexOf(Hwt(Je))<0){y.add(ge);let Gt=GXi(ge,Je);k([...U,ge],pe,he,Gt,O),y.delete(ge)}}},T,O=new Set(MNr(m)),X=Array.from(t).map(U=>Hwt(U));do{T=O,O=new Set;for(let U of T){if(U.locator===m.locator||U.isHoistBorder)continue;let le=GXi(m,U);k([],Array.from(r),X,le,O)}}while(O.size>0);return{anotherRoundNeeded:B,isGraphChanged:v}},ZXi=e=>{let t=[],r=new Set,s=new Set,a=(o,g,p)=>{if(r.has(o)||(r.add(o),s.has(o)))return;let f=new Map(g);for(let m of o.dependencies.values())o.peerNames.has(m.name)||f.set(m.name,m);for(let m of o.originalDependencies.values()){let y=f.get(m.name),B=()=>`${Array.from(s).concat([o]).map(v=>hx(v.locator)).join("\u2192")}`;if(o.peerNames.has(m.name)){let v=g.get(m.name);(v!==y||!v||v.ident!==m.ident)&&t.push(`${B()} - broken peer promise: expected ${m.ident} but found ${v&&v.ident}`)}else{let v=p.hoistedFrom.get(o.name),k=o.hoistedTo.get(m.name),T=`${v?` hoisted from ${v.join(", ")}`:""}`,O=`${k?` hoisted to ${k}`:""}`,X=`${B()}${T}`;y?y.ident!==m.ident&&t.push(`${X} - broken require promise for ${m.name}${O}: expected ${m.ident}, but found: ${y.ident}`):t.push(`${X} - broken require promise: no required dependency ${m.name}${O} found`)}}s.add(o);for(let m of o.dependencies.values())o.peerNames.has(m.name)||a(m,f,o);s.delete(o)};return a(e,e.dependencies,e),t.join(` +`)},JTc=(e,t)=>{let{identName:r,name:s,reference:a,peerNames:o}=e,g={name:s,references:new Set([a]),locator:HNr(r,a),ident:kXi(r,a),dependencies:new Map,originalDependencies:new Map,hoistedDependencies:new Map,peerNames:new Set(o),reasons:new Map,decoupled:!0,isHoistBorder:!0,hoistPriority:0,dependencyKind:NCe.WORKSPACE,hoistedFrom:new Map,hoistedTo:new Map},p=new Map([[e,g]]),f=(m,y)=>{let B=p.get(m),v=!!B;if(!B){let{name:k,identName:T,reference:O,peerNames:X,hoistPriority:U,dependencyKind:le}=m,ae=t.hoistingLimits.get(y.locator);B={name:k,references:new Set([O]),locator:HNr(T,O),ident:kXi(T,O),dependencies:new Map,originalDependencies:new Map,hoistedDependencies:new Map,peerNames:new Set(X),reasons:new Map,decoupled:!0,isHoistBorder:ae?ae.has(k):!1,hoistPriority:U||0,dependencyKind:le||NCe.REGULAR,hoistedFrom:new Map,hoistedTo:new Map},p.set(m,B)}if(y.dependencies.set(m.name,B),y.originalDependencies.set(m.name,B),v){let k=new Set,T=O=>{if(!k.has(O)){k.add(O),O.decoupled=!1;for(let X of O.dependencies.values())O.peerNames.has(X.name)||T(X)}};T(B)}else for(let k of m.dependencies)f(k,B)};for(let m of e.dependencies)f(m,g);return g},XNr=e=>e.substring(0,e.indexOf("@",1)),UTc=e=>{let t={name:e.name,identName:XNr(e.locator),references:new Set(e.references),dependencies:new Set},r=new Set([e]),s=(a,o,g)=>{let p=r.has(a),f;if(o===a)f=g;else{let{name:m,references:y,locator:B}=a;f={name:m,identName:XNr(B),references:y,dependencies:new Set}}if(g.dependencies.add(f),!p){r.add(a);for(let m of a.dependencies.values())a.peerNames.has(m.name)||s(m,a,f);r.delete(a)}};for(let a of e.dependencies.values())s(a,e,t);return t},KTc=e=>{let t=new Map,r=new Set([e]),s=g=>`${g.name}@${g.ident}`,a=g=>{let p=s(g),f=t.get(p);return f||(f={dependents:new Set,peerDependents:new Set,hoistPriority:0},t.set(p,f)),f},o=(g,p)=>{let f=!!r.has(p);if(a(p).dependents.add(g.ident),!f){r.add(p);for(let y of p.dependencies.values()){let B=a(y);B.hoistPriority=Math.max(B.hoistPriority,y.hoistPriority),p.peerNames.has(y.name)?B.peerDependents.add(p.ident):o(p,y)}}};for(let g of e.dependencies.values())e.peerNames.has(g.name)||o(e,g);return t},hx=e=>{if(!e)return"none";let t=e.indexOf("@",1),r=e.substring(0,t);r.endsWith("$wsroot$")&&(r=`wh:${r.replace("$wsroot$","")}`);let s=e.substring(t+1);if(s==="workspace:.")return".";if(s){let a=(s.indexOf("#")>0?s.split("#")[1]:s).replace("npm:","");return s.startsWith("virtual")&&(r=`v:${r}`),a.startsWith("workspace")&&(r=`w:${r}`,a=""),`${r}${a?`@${a}`:""}`}else return`${r}`},FXi=5e4,jJe=e=>{let t=0,r=(a,o,g="")=>{if(t>FXi||o.has(a))return"";t++;let p=Array.from(a.dependencies.values()).sort((m,y)=>m.name===y.name?0:m.name>y.name?1:-1),f="";o.add(a);for(let m=0;m":"")+(v!==y.name?`a:${y.name}:`:"")+hx(y.locator)+(B?` ${B}`:"")} +`,f+=r(y,o,`${g}${mFXi?` Tree is too large, part of the tree has been dunped -`:"")}});var Qwt=z($M=>{"use strict";Object.defineProperty($M,"__esModule",{value:!0});$M.buildLocatorMap=$M.buildNodeModulesTree=$M.getArchivePath=$M.NodeModulesHoistingLimits=$M.LinkType=void 0;var y_=Bn(),JT=Ro(),RXi=Ro(),jNe=ONr(),nX;(function(e){e.HARD="HARD",e.SOFT="SOFT"})(nX||($M.LinkType=nX={}));var KJe;(function(e){e.WORKSPACES="workspaces",e.DEPENDENCIES="dependencies",e.NONE="none"})(KJe||($M.NodeModulesHoistingLimits=KJe={}));var Mwt="node_modules",Eae="$wsroot$",GTc=e=>e.indexOf(`.zip/${Mwt}/`)>=0?JT.npath.toPortablePath(e.split(`/${Mwt}/`)[0]):null;$M.getArchivePath=GTc;var FTc=(e,t)=>{let{packageTree:r,hoistingLimits:s,errors:a,preserveSymlinksRequired:o}=VTc(e,t),g=null;if(a.length===0){let p=(0,jNe.hoist)(r,{hoistingLimits:s});g=PTc(e,p,t)}return{tree:g,errors:a,preserveSymlinksRequired:o}};$M.buildNodeModulesTree=FTc;var HK=e=>`${e.name}@${e.reference}`,ZTc=e=>{let t=new Map;for(let[r,s]of e.entries())if(!s.dirList){let a=t.get(s.locator);a||(a={target:s.target,linkType:s.linkType,locations:[],aliases:s.aliases},t.set(s.locator,a)),a.locations.push(r)}for(let r of t.values())r.locations=r.locations.sort((s,a)=>{let o=s.split(JT.ppath.delimiter).length,g=a.split(JT.ppath.delimiter).length;return a===s?0:o!==g?g-o:a>s?1:-1});return t};$M.buildLocatorMap=ZTc;var DXi=(e,t)=>{let r=y_.structUtils.isVirtualLocator(e)?y_.structUtils.devirtualizeLocator(e):e,s=y_.structUtils.isVirtualLocator(t)?y_.structUtils.devirtualizeLocator(t):t;return y_.structUtils.areLocatorsEqual(r,s)},MNr=(e,t,r,s)=>{if(e.linkType!==nX.SOFT)return!1;let a=JT.npath.toPortablePath(r.resolveVirtual&&t.reference&&t.reference.startsWith("virtual:")?r.resolveVirtual(e.packageLocation):e.packageLocation);return JT.ppath.contains(s,a)===null},LTc=e=>{let t=e.getPackageInformation(e.topLevel);if(t===null)throw new Error("Assertion failed: Expected the top-level package to have been registered");if(e.findPackageLocator(t.packageLocation)===null)throw new Error("Assertion failed: Expected the top-level package to have a physical locator");let s=JT.npath.toPortablePath(t.packageLocation.slice(0,-1)),a=new Map,o={children:new Map},g=e.getDependencyTreeRoots(),p=new Map,f=new Set,m=(v,G)=>{let T=HK(v);if(f.has(T))return;f.add(T);let O=e.getPackageInformation(v);if(O){let X=G?HK(G):"";if(HK(v)!==X&&O.linkType===nX.SOFT&&!v.reference.startsWith("link:")&&!MNr(O,v,e,s)){let U=xXi(O,v,e);(!p.get(U)||v.reference.startsWith("workspace:"))&&p.set(U,v)}for(let[U,le]of O.packageDependencies)le!==null&&(O.packagePeers.has(U)||m(e.getLocator(U,le),v))}};for(let v of g)m(v,null);let y=s.split(JT.ppath.sep);for(let v of p.values()){let G=e.getPackageInformation(v),O=JT.npath.toPortablePath(G.packageLocation.slice(0,-1)).split(JT.ppath.sep).slice(y.length),X=o;for(let U of O){let le=X.children.get(U);le||(le={children:new Map},X.children.set(U,le)),X=le}X.workspaceLocator=v}let B=(v,G)=>{if(v.workspaceLocator){let T=HK(G),O=a.get(T);O||(O=new Set,a.set(T,O)),O.add(v.workspaceLocator)}for(let T of v.children.values())B(T,v.workspaceLocator||G)};for(let v of o.children.values())B(v,o.workspaceLocator);return a},VTc=(e,t)=>{let r=[],s=!1,a=new Map,o=LTc(e),g=e.getPackageInformation(e.topLevel);if(g===null)throw new Error("Assertion failed: Expected the top-level package to have been registered");let p=e.findPackageLocator(g.packageLocation);if(p===null)throw new Error("Assertion failed: Expected the top-level package to have a physical locator");let f=JT.npath.toPortablePath(g.packageLocation.slice(0,-1)),m={name:p.name,identName:p.name,reference:p.reference,peerNames:g.packagePeers,dependencies:new Set,dependencyKind:jNe.HoisterDependencyKind.WORKSPACE},y=new Map,B=(G,T)=>`${HK(T)}:${G}`,v=(G,T,O,X,U,le,ae,ge)=>{let fe=B(G,O),pe=y.get(fe),he=!!pe;!he&&O.name===p.name&&O.reference===p.reference&&(pe=m,y.set(fe,m));let be=MNr(T,O,e,f);if(!pe){let Je=jNe.HoisterDependencyKind.REGULAR;be?Je=jNe.HoisterDependencyKind.EXTERNAL_SOFT_LINK:T.linkType===nX.SOFT&&O.name.endsWith(Eae)&&(Je=jNe.HoisterDependencyKind.WORKSPACE),pe={name:G,identName:O.name,reference:O.reference,dependencies:new Set,peerNames:Je===jNe.HoisterDependencyKind.WORKSPACE?new Set:T.packagePeers,dependencyKind:Je},y.set(fe,pe)}let Te;if(be?Te=2:U.linkType===nX.SOFT?Te=1:Te=0,pe.hoistPriority=Math.max(pe.hoistPriority||0,Te),ge&&!be){let Je=HK({name:X.identName,reference:X.reference}),Xe=a.get(Je)||new Set;a.set(Je,Xe),Xe.add(pe.name)}let ke=new Map(T.packageDependencies);if(t.project){let Je=t.project.workspacesByCwd.get(JT.npath.toPortablePath(T.packageLocation.slice(0,-1)));if(Je){let Xe=new Set([...Array.from(Je.manifest.peerDependencies.values(),ft=>y_.structUtils.stringifyIdent(ft)),...Array.from(Je.manifest.peerDependenciesMeta.keys())]);for(let ft of Xe)ke.has(ft)||(ke.set(ft,le.get(ft)||null),pe.peerNames.add(ft))}}let x=HK({name:O.name.replace(Eae,""),reference:O.reference}),et=o.get(x);if(et)for(let Je of et)ke.set(`${Je.name}${Eae}`,Je.reference);(T!==U||T.linkType!==nX.SOFT||!be&&(!t.selfReferencesByCwd||t.selfReferencesByCwd.get(ae)))&&X.dependencies.add(pe);let Ue=O!==p&&T.linkType===nX.SOFT&&!O.name.endsWith(Eae)&&!be;if(!he&&!Ue){let Je=new Map;for(let[Xe,ft]of ke)if(ft!==null){let Gt=e.getLocator(Xe,ft),er=e.getLocator(Xe.replace(Eae,""),ft),Ur=e.getPackageInformation(er);if(Ur===null)throw new Error("Assertion failed: Expected the package to have been registered");let Ot=MNr(Ur,Gt,e,f);if(t.validateExternalSoftLinks&&t.project&&Ot){Ur.packageDependencies.size>0&&(s=!0);for(let[$r,Or]of Ur.packageDependencies)if(Or!==null){let In=y_.structUtils.parseLocator(Array.isArray(Or)?`${Or[0]}@${Or[1]}`:`${$r}@${Or}`);if(HK(In)!==HK(Gt)){let Br=ke.get($r);if(Br){let tr=y_.structUtils.parseLocator(Array.isArray(Br)?`${Br[0]}@${Br[1]}`:`${$r}@${Br}`);DXi(tr,In)||r.push({messageName:y_.MessageName.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK,text:`Cannot link ${y_.structUtils.prettyIdent(t.project.configuration,y_.structUtils.parseIdent(Gt.name))} into ${y_.structUtils.prettyLocator(t.project.configuration,y_.structUtils.parseLocator(`${O.name}@${O.reference}`))} dependency ${y_.structUtils.prettyLocator(t.project.configuration,In)} conflicts with parent dependency ${y_.structUtils.prettyLocator(t.project.configuration,tr)}`})}else{let tr=Je.get($r);if(tr){let gn=tr.target,Gn=y_.structUtils.parseLocator(Array.isArray(gn)?`${gn[0]}@${gn[1]}`:`${$r}@${gn}`);DXi(Gn,In)||r.push({messageName:y_.MessageName.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK,text:`Cannot link ${y_.structUtils.prettyIdent(t.project.configuration,y_.structUtils.parseIdent(Gt.name))} into ${y_.structUtils.prettyLocator(t.project.configuration,y_.structUtils.parseLocator(`${O.name}@${O.reference}`))} dependency ${y_.structUtils.prettyLocator(t.project.configuration,In)} conflicts with dependency ${y_.structUtils.prettyLocator(t.project.configuration,Gn)} from sibling portal ${y_.structUtils.prettyIdent(t.project.configuration,y_.structUtils.parseIdent(tr.portal.name))}`})}else Je.set($r,{target:In.reference,portal:Gt})}}}}let dr=t.hoistingLimitsByCwd?.get(ae),Ar=Ot?ae:JT.ppath.relative(f,JT.npath.toPortablePath(Ur.packageLocation))||RXi.PortablePath.dot,or=t.hoistingLimitsByCwd?.get(Ar),Fr=dr===KJe.DEPENDENCIES||or===KJe.DEPENDENCIES||or===KJe.WORKSPACES;v(Xe,Ur,Gt,pe,T,ke,Ar,Fr)}}};return v(p.name,g,p,m,g,g.packageDependencies,RXi.PortablePath.dot,!1),{packageTree:m,hoistingLimits:a,errors:r,preserveSymlinksRequired:s}};function xXi(e,t,r){let s=r.resolveVirtual&&t.reference&&t.reference.startsWith("virtual:")?r.resolveVirtual(e.packageLocation):e.packageLocation;return JT.npath.toPortablePath(s||e.packageLocation)}function WTc(e,t,r){let s=t.getLocator(e.name.replace(Eae,""),e.reference),a=t.getPackageInformation(s);if(a===null)throw new Error("Assertion failed: Expected the package to be registered");return r.pnpifyFs?{linkType:nX.SOFT,target:JT.npath.toPortablePath(a.packageLocation)}:{linkType:a.linkType,target:xXi(a,e,t)}}var PTc=(e,t,r)=>{let s=new Map,a=(y,B,v)=>{let{linkType:G,target:T}=WTc(y,e,r);return{locator:HK(y),nodePath:B,target:T,linkType:G,aliases:v}},o=y=>{let[B,v]=y.split("/");return v?{scope:B,name:v}:{scope:null,name:B}},g=new Set,p=(y,B,v)=>{if(g.has(y))return;g.add(y);let G=Array.from(y.references).sort().join("#");for(let T of y.dependencies){let O=Array.from(T.references).sort().join("#");if(T.identName===y.identName.replace(Eae,"")&&O===G)continue;let X=Array.from(T.references).sort(),U={name:T.identName,reference:X[0]},{name:le,scope:ae}=o(T.name),ge=ae?[ae,le]:[le],fe=JT.ppath.join(B,Mwt),pe=JT.ppath.join(fe,...ge),he=`${v}/${U.name}`,be=a(U,v,X.slice(1)),Te=!1;if(be.linkType===nX.SOFT&&r.project){let ke=r.project.workspacesByCwd.get(be.target.slice(0,-1));Te=!!(ke&&!ke.manifest.name)}if(!T.name.endsWith(Eae)&&!Te){let ke=s.get(pe);if(ke){if(ke.dirList)throw new Error(`Assertion failed: ${pe} cannot merge dir node with leaf node`);{let Ue=y_.structUtils.parseLocator(ke.locator),Je=y_.structUtils.parseLocator(be.locator);if(ke.linkType!==be.linkType)throw new Error(`Assertion failed: ${pe} cannot merge nodes with different link types ${ke.nodePath}/${y_.structUtils.stringifyLocator(Ue)} and ${v}/${y_.structUtils.stringifyLocator(Je)}`);if(Ue.identHash!==Je.identHash)throw new Error(`Assertion failed: ${pe} cannot merge nodes with different idents ${ke.nodePath}/${y_.structUtils.stringifyLocator(Ue)} and ${v}/s${y_.structUtils.stringifyLocator(Je)}`);be.aliases=[...be.aliases,...ke.aliases,y_.structUtils.parseLocator(ke.locator).reference]}}s.set(pe,be);let x=pe.split("/"),et=x.indexOf(Mwt);for(let Ue=x.length-1;et>=0&&Ue>et;Ue--){let Je=JT.npath.toPortablePath(x.slice(0,Ue).join(JT.ppath.sep)),Xe=x[Ue],ft=s.get(Je);if(!ft)s.set(Je,{dirList:new Set([Xe])});else if(ft.dirList){if(ft.dirList.has(Xe))break;ft.dirList.add(Xe)}}}p(T,be.linkType===nX.SOFT?be.target:pe,he)}},f=a({name:t.name,reference:Array.from(t.references)[0]},"",[]),m=f.target;return s.set(m,f),p(t,m,""),s}});var jJe=z(F9=>{"use strict";Object.defineProperty(F9,"__esModule",{value:!0});F9.HoisterDependencyKind=F9.hoist=F9.getArchivePath=F9.buildLocatorMap=F9.buildNodeModulesTree=F9.NodeModulesHoistingLimits=void 0;var OTc=Qwt();Object.defineProperty(F9,"getArchivePath",{enumerable:!0,get:function(){return OTc.getArchivePath}});var kXi=Qwt();Object.defineProperty(F9,"buildNodeModulesTree",{enumerable:!0,get:function(){return kXi.buildNodeModulesTree}});Object.defineProperty(F9,"buildLocatorMap",{enumerable:!0,get:function(){return kXi.buildLocatorMap}});var MTc=Qwt();Object.defineProperty(F9,"NodeModulesHoistingLimits",{enumerable:!0,get:function(){return MTc.NodeModulesHoistingLimits}});var GXi=ONr();Object.defineProperty(F9,"hoist",{enumerable:!0,get:function(){return GXi.hoist}});Object.defineProperty(F9,"HoisterDependencyKind",{enumerable:!0,get:function(){return GXi.HoisterDependencyKind}})});var oRr=z(iX=>{"use strict";Object.defineProperty(iX,"__esModule",{value:!0});var QTc=Dt("zlib"),HXi=Dt("path"),TCe=Dt("module"),pv=Dt("url"),FXi=Dt("util"),YTc=Dt("assert"),HTc=Dt("fs"),XTc=Dt("crypto"),JTc=Dt("os"),jwt=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},XXi=jwt(QTc),Hwt=jwt(HXi),UTc=jwt(YTc),KTc=jwt(HTc),JXi=(e=>(e.HARD="HARD",e.SOFT="SOFT",e))(JXi||{}),jTc=456789e3,UNr={root:"/",dot:".",parent:".."},Xwt={home:"~",nodeModules:"node_modules",manifest:"package.json",lockfile:"yarn.lock",virtual:"__virtual__",pnpJs:".pnp.js",pnpCjs:".pnp.cjs",pnpData:".pnp.data.json",pnpEsmLoader:".pnp.loader.mjs",rc:".yarnrc.yml",env:".env"},lc=Object.create(Hwt.default),$I=Object.create(Hwt.default.posix);lc.cwd=()=>process.cwd();$I.cwd=process.platform==="win32"?()=>rRr(process.cwd()):process.cwd;process.platform==="win32"&&($I.resolve=(...e)=>e.length>0&&$I.isAbsolute(e[0])?Hwt.default.posix.resolve(...e):Hwt.default.posix.resolve($I.cwd(),...e));var UXi=function(e,t,r){return t=e.normalize(t),r=e.normalize(r),t===r?".":(t.endsWith(e.sep)||(t=t+e.sep),r.startsWith(t)?r.slice(t.length):null)};lc.contains=(e,t)=>UXi(lc,e,t);$I.contains=(e,t)=>UXi($I,e,t);var zTc=/^([a-zA-Z]:.*)$/,qTc=/^\/\/(\.\/)?(.*)$/,$Tc=/^\/([a-zA-Z]:.*)$/,eNc=/^\/unc\/(\.dot\/)?(.*)$/;function tNc(e){let t,r;if(t=e.match($Tc))e=t[1];else if(r=e.match(eNc))e=`\\\\${r[1]?".\\":""}${r[2]}`;else return e;return e.replace(/\//g,"\\")}function rNc(e){e=e.replace(/\\/g,"/");let t,r;return(t=e.match(zTc))?e=`/${t[1]}`:(r=e.match(qTc))&&(e=`/unc/${r[1]?".dot/":""}${r[2]}`),e}var rRr=process.platform==="win32"?rNc:e=>e,KXi=process.platform==="win32"?tNc:e=>e;lc.fromPortablePath=KXi;lc.toPortablePath=rRr;function jXi(e,t){return e===lc?KXi(t):rRr(t)}var RCe=new Date(jTc*1e3),nNc=RCe.getTime();async function iNc(e,t,r,s,a){let o=e.pathUtils.normalize(t),g=r.pathUtils.normalize(s),p=[],f=[],{atime:m,mtime:y}=a.stableTime?{atime:RCe,mtime:RCe}:await r.lstatPromise(g);await e.mkdirpPromise(e.pathUtils.dirname(t),{utimes:[m,y]}),await KNr(p,f,e,o,r,g,{...a,didParentExist:!0});for(let B of p)await B();await Promise.all(f.map(B=>B()))}async function KNr(e,t,r,s,a,o,g){let p=g.didParentExist?await zXi(r,s):null,f=await a.lstatPromise(o),{atime:m,mtime:y}=g.stableTime?{atime:RCe,mtime:RCe}:f,B;switch(!0){case f.isDirectory():B=await sNc(e,t,r,s,p,a,o,f,g);break;case f.isFile():B=await cNc(e,t,r,s,p,a,o,f,g);break;case f.isSymbolicLink():B=await lNc(e,t,r,s,p,a,o,f,g);break;default:throw new Error(`Unsupported file type (${f.mode})`)}return(g.linkStrategy?.type!=="HardlinkFromIndex"||!f.isFile())&&((B||p?.mtime?.getTime()!==y.getTime()||p?.atime?.getTime()!==m.getTime())&&(t.push(()=>r.lutimesPromise(s,m,y)),B=!0),(p===null||(p.mode&511)!==(f.mode&511))&&(t.push(()=>r.chmodPromise(s,f.mode&511)),B=!0)),B}async function zXi(e,t){try{return await e.lstatPromise(t)}catch{return null}}async function sNc(e,t,r,s,a,o,g,p,f){if(a!==null&&!a.isDirectory())if(f.overwrite)e.push(async()=>r.removePromise(s)),a=null;else return!1;let m=!1;a===null&&(e.push(async()=>{try{await r.mkdirPromise(s,{mode:p.mode})}catch(v){if(v.code!=="EEXIST")throw v}}),m=!0);let y=await o.readdirPromise(g),B=f.didParentExist&&!a?{...f,didParentExist:!1}:f;if(f.stableSort)for(let v of y.sort())await KNr(e,t,r,r.pathUtils.join(s,v),o,o.pathUtils.join(g,v),B)&&(m=!0);else(await Promise.all(y.map(async G=>{await KNr(e,t,r,r.pathUtils.join(s,G),o,o.pathUtils.join(g,G),B)}))).some(G=>G)&&(m=!0);return m}async function oNc(e,t,r,s,a,o,g,p,f,m){let y=await o.checksumFilePromise(g,{algorithm:"sha1"}),B=420,v=p.mode&511,G=`${y}${v!==B?v.toString(8):""}`,T=r.pathUtils.join(m.indexPath,y.slice(0,2),`${G}.dat`),O;(ge=>{ge[ge.Lock=0]="Lock",ge[ge.Rename=1]="Rename"})(O||(O={}));let X=1,U=await zXi(r,T);if(a){let ge=U&&a.dev===U.dev&&a.ino===U.ino,fe=U?.mtimeMs!==nNc;if(ge&&fe&&m.autoRepair&&(X=0,U=null),!ge)if(f.overwrite)e.push(async()=>r.removePromise(s)),a=null;else return!1}let le=!U&&X===1?`${T}.${Math.floor(Math.random()*4294967296).toString(16).padStart(8,"0")}`:null,ae=!1;return e.push(async()=>{if(!U&&(X===0&&await r.lockPromise(T,async()=>{let ge=await o.readFilePromise(g);await r.writeFilePromise(T,ge)}),X===1&&le)){let ge=await o.readFilePromise(g);await r.writeFilePromise(le,ge);try{await r.linkPromise(le,T)}catch(fe){if(fe.code==="EEXIST")ae=!0,await r.unlinkPromise(le);else throw fe}}a||await r.linkPromise(T,s)}),t.push(async()=>{U||(await r.lutimesPromise(T,RCe,RCe),v!==B&&await r.chmodPromise(T,v)),le&&!ae&&await r.unlinkPromise(le)}),!1}async function aNc(e,t,r,s,a,o,g,p,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(s)),a=null;else return!1;return e.push(async()=>{let m=await o.readFilePromise(g);await r.writeFilePromise(s,m)}),!0}async function cNc(e,t,r,s,a,o,g,p,f){return f.linkStrategy?.type==="HardlinkFromIndex"?oNc(e,t,r,s,a,o,g,p,f,f.linkStrategy):aNc(e,t,r,s,a,o,g,p,f)}async function lNc(e,t,r,s,a,o,g,p,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(s)),a=null;else return!1;return e.push(async()=>{await r.symlinkPromise(jXi(r.pathUtils,await o.readlinkPromise(g)),s)}),!0}var Jwt=class{constructor(t){this.pathUtils=t}async*genTraversePromise(t,{stableSort:r=!1}={}){let s=[t];for(;s.length>0;){let a=s.shift();if((await this.lstatPromise(a)).isDirectory()){let g=await this.readdirPromise(a);if(r)for(let p of g.sort())s.push(this.pathUtils.join(a,p));else throw new Error("Not supported")}else yield a}}async checksumFilePromise(t,{algorithm:r="sha512"}={}){let s=await this.openPromise(t,"r");try{let o=Buffer.allocUnsafeSlow(65536),g=XTc.createHash(r),p=0;for(;(p=await this.readPromise(s,o,0,65536))!==0;)g.update(p===65536?o:o.slice(0,p));return g.digest("hex")}finally{await this.closePromise(s)}}async removePromise(t,{recursive:r=!0,maxRetries:s=5}={}){let a;try{a=await this.lstatPromise(t)}catch(o){if(o.code==="ENOENT")return;throw o}if(a.isDirectory()){if(r){let o=await this.readdirPromise(t);await Promise.all(o.map(g=>this.removePromise(this.pathUtils.resolve(t,g))))}for(let o=0;o<=s;o++)try{await this.rmdirPromise(t);break}catch(g){if(g.code!=="EBUSY"&&g.code!=="ENOTEMPTY")throw g;osetTimeout(p,o*100))}}else await this.unlinkPromise(t)}removeSync(t,{recursive:r=!0}={}){let s;try{s=this.lstatSync(t)}catch(a){if(a.code==="ENOENT")return;throw a}if(s.isDirectory()){if(r)for(let a of this.readdirSync(t))this.removeSync(this.pathUtils.resolve(t,a));this.rmdirSync(t)}else this.unlinkSync(t)}async mkdirpPromise(t,{chmod:r,utimes:s}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let g=2;g<=a.length;++g){let p=a.slice(0,g).join(this.pathUtils.sep);if(!this.existsSync(p)){try{await this.mkdirPromise(p)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=p,r!=null&&await this.chmodPromise(p,r),s!=null)await this.utimesPromise(p,s[0],s[1]);else{let f=await this.statPromise(this.pathUtils.dirname(p));await this.utimesPromise(p,f.atime,f.mtime)}}}return o}mkdirpSync(t,{chmod:r,utimes:s}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let g=2;g<=a.length;++g){let p=a.slice(0,g).join(this.pathUtils.sep);if(!this.existsSync(p)){try{this.mkdirSync(p)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=p,r!=null&&this.chmodSync(p,r),s!=null)this.utimesSync(p,s[0],s[1]);else{let f=this.statSync(this.pathUtils.dirname(p));this.utimesSync(p,f.atime,f.mtime)}}}return o}async copyPromise(t,r,{baseFs:s=this,overwrite:a=!0,stableSort:o=!1,stableTime:g=!1,linkStrategy:p=null}={}){return await iNc(this,t,s,r,{overwrite:a,stableSort:o,stableTime:g,linkStrategy:p})}copySync(t,r,{baseFs:s=this,overwrite:a=!0}={}){let o=s.lstatSync(r),g=this.existsSync(t);if(o.isDirectory()){this.mkdirpSync(t);let f=s.readdirSync(r);for(let m of f)this.copySync(this.pathUtils.join(t,m),s.pathUtils.join(r,m),{baseFs:s,overwrite:a})}else if(o.isFile()){if(!g||a){g&&this.removeSync(t);let f=s.readFileSync(r);this.writeFileSync(t,f)}}else if(o.isSymbolicLink()){if(!g||a){g&&this.removeSync(t);let f=s.readlinkSync(r);this.symlinkSync(jXi(this.pathUtils,f),t)}}else throw new Error(`Unsupported file type (file: ${r}, mode: 0o${o.mode.toString(8).padStart(6,"0")})`);let p=o.mode&511;this.chmodSync(t,p)}async changeFilePromise(t,r,s={}){return Buffer.isBuffer(r)?this.changeFileBufferPromise(t,r,s):this.changeFileTextPromise(t,r,s)}async changeFileBufferPromise(t,r,{mode:s}={}){let a=Buffer.alloc(0);try{a=await this.readFilePromise(t)}catch{}Buffer.compare(a,r)!==0&&await this.writeFilePromise(t,r,{mode:s})}async changeFileTextPromise(t,r,{automaticNewlines:s,mode:a}={}){let o="";try{o=await this.readFilePromise(t,"utf8")}catch{}let g=s?ZXi(o,r):r;o!==g&&await this.writeFilePromise(t,g,{mode:a})}changeFileSync(t,r,s={}){return Buffer.isBuffer(r)?this.changeFileBufferSync(t,r,s):this.changeFileTextSync(t,r,s)}changeFileBufferSync(t,r,{mode:s}={}){let a=Buffer.alloc(0);try{a=this.readFileSync(t)}catch{}Buffer.compare(a,r)!==0&&this.writeFileSync(t,r,{mode:s})}changeFileTextSync(t,r,{automaticNewlines:s=!1,mode:a}={}){let o="";try{o=this.readFileSync(t,"utf8")}catch{}let g=s?ZXi(o,r):r;o!==g&&this.writeFileSync(t,g,{mode:a})}async movePromise(t,r){try{await this.renamePromise(t,r)}catch(s){if(s.code==="EXDEV")await this.copyPromise(r,t),await this.removePromise(t);else throw s}}moveSync(t,r){try{this.renameSync(t,r)}catch(s){if(s.code==="EXDEV")this.copySync(r,t),this.removeSync(t);else throw s}}async lockPromise(t,r){let s=`${t}.flock`,a=1e3/60,o=Date.now(),g=null,p=async()=>{let f;try{[f]=await this.readJsonPromise(s)}catch{return Date.now()-o<500}try{return process.kill(f,0),!0}catch{return!1}};for(;g===null;)try{g=await this.openPromise(s,"wx")}catch(f){if(f.code==="EEXIST"){if(!await p())try{await this.unlinkPromise(s);continue}catch{}if(Date.now()-o<60*1e3)await new Promise(m=>setTimeout(m,a));else throw new Error(`Couldn't acquire a lock in a reasonable time (via ${s})`)}else throw f}await this.writePromise(g,JSON.stringify([process.pid]));try{return await r()}finally{try{await this.closePromise(g),await this.unlinkPromise(s)}catch{}}}async readJsonPromise(t){let r=await this.readFilePromise(t,"utf8");try{return JSON.parse(r)}catch(s){throw s.message+=` (in ${t})`,s}}readJsonSync(t){let r=this.readFileSync(t,"utf8");try{return JSON.parse(r)}catch(s){throw s.message+=` (in ${t})`,s}}async writeJsonPromise(t,r,{compact:s=!1}={}){let a=s?0:2;return await this.writeFilePromise(t,`${JSON.stringify(r,null,a)} +`:"")}});var Xwt=z(t5=>{"use strict";Object.defineProperty(t5,"__esModule",{value:!0});t5.buildLocatorMap=t5.buildNodeModulesTree=t5.getArchivePath=t5.NodeModulesHoistingLimits=t5.LinkType=void 0;var b_=Bn(),UT=No(),LXi=No(),qNe=JNr(),oX;(function(e){e.HARD="HARD",e.SOFT="SOFT"})(oX||(t5.LinkType=oX={}));var zJe;(function(e){e.WORKSPACES="workspaces",e.DEPENDENCIES="dependencies",e.NONE="none"})(zJe||(t5.NodeModulesHoistingLimits=zJe={}));var Ywt="node_modules",xae="$wsroot$",jTc=e=>e.indexOf(`.zip/${Ywt}/`)>=0?UT.npath.toPortablePath(e.split(`/${Ywt}/`)[0]):null;t5.getArchivePath=jTc;var zTc=(e,t)=>{let{packageTree:r,hoistingLimits:s,errors:a,preserveSymlinksRequired:o}=eNc(e,t),g=null;if(a.length===0){let p=(0,qNe.hoist)(r,{hoistingLimits:s});g=rNc(e,p,t)}return{tree:g,errors:a,preserveSymlinksRequired:o}};t5.buildNodeModulesTree=zTc;var zK=e=>`${e.name}@${e.reference}`,qTc=e=>{let t=new Map;for(let[r,s]of e.entries())if(!s.dirList){let a=t.get(s.locator);a||(a={target:s.target,linkType:s.linkType,locations:[],aliases:s.aliases},t.set(s.locator,a)),a.locations.push(r)}for(let r of t.values())r.locations=r.locations.sort((s,a)=>{let o=s.split(UT.ppath.delimiter).length,g=a.split(UT.ppath.delimiter).length;return a===s?0:o!==g?g-o:a>s?1:-1});return t};t5.buildLocatorMap=qTc;var VXi=(e,t)=>{let r=b_.structUtils.isVirtualLocator(e)?b_.structUtils.devirtualizeLocator(e):e,s=b_.structUtils.isVirtualLocator(t)?b_.structUtils.devirtualizeLocator(t):t;return b_.structUtils.areLocatorsEqual(r,s)},UNr=(e,t,r,s)=>{if(e.linkType!==oX.SOFT)return!1;let a=UT.npath.toPortablePath(r.resolveVirtual&&t.reference&&t.reference.startsWith("virtual:")?r.resolveVirtual(e.packageLocation):e.packageLocation);return UT.ppath.contains(s,a)===null},$Tc=e=>{let t=e.getPackageInformation(e.topLevel);if(t===null)throw new Error("Assertion failed: Expected the top-level package to have been registered");if(e.findPackageLocator(t.packageLocation)===null)throw new Error("Assertion failed: Expected the top-level package to have a physical locator");let s=UT.npath.toPortablePath(t.packageLocation.slice(0,-1)),a=new Map,o={children:new Map},g=e.getDependencyTreeRoots(),p=new Map,f=new Set,m=(v,k)=>{let T=zK(v);if(f.has(T))return;f.add(T);let O=e.getPackageInformation(v);if(O){let X=k?zK(k):"";if(zK(v)!==X&&O.linkType===oX.SOFT&&!v.reference.startsWith("link:")&&!UNr(O,v,e,s)){let U=WXi(O,v,e);(!p.get(U)||v.reference.startsWith("workspace:"))&&p.set(U,v)}for(let[U,le]of O.packageDependencies)le!==null&&(O.packagePeers.has(U)||m(e.getLocator(U,le),v))}};for(let v of g)m(v,null);let y=s.split(UT.ppath.sep);for(let v of p.values()){let k=e.getPackageInformation(v),O=UT.npath.toPortablePath(k.packageLocation.slice(0,-1)).split(UT.ppath.sep).slice(y.length),X=o;for(let U of O){let le=X.children.get(U);le||(le={children:new Map},X.children.set(U,le)),X=le}X.workspaceLocator=v}let B=(v,k)=>{if(v.workspaceLocator){let T=zK(k),O=a.get(T);O||(O=new Set,a.set(T,O)),O.add(v.workspaceLocator)}for(let T of v.children.values())B(T,v.workspaceLocator||k)};for(let v of o.children.values())B(v,o.workspaceLocator);return a},eNc=(e,t)=>{let r=[],s=!1,a=new Map,o=$Tc(e),g=e.getPackageInformation(e.topLevel);if(g===null)throw new Error("Assertion failed: Expected the top-level package to have been registered");let p=e.findPackageLocator(g.packageLocation);if(p===null)throw new Error("Assertion failed: Expected the top-level package to have a physical locator");let f=UT.npath.toPortablePath(g.packageLocation.slice(0,-1)),m={name:p.name,identName:p.name,reference:p.reference,peerNames:g.packagePeers,dependencies:new Set,dependencyKind:qNe.HoisterDependencyKind.WORKSPACE},y=new Map,B=(k,T)=>`${zK(T)}:${k}`,v=(k,T,O,X,U,le,ae,ge)=>{let fe=B(k,O),pe=y.get(fe),he=!!pe;!he&&O.name===p.name&&O.reference===p.reference&&(pe=m,y.set(fe,m));let be=UNr(T,O,e,f);if(!pe){let Je=qNe.HoisterDependencyKind.REGULAR;be?Je=qNe.HoisterDependencyKind.EXTERNAL_SOFT_LINK:T.linkType===oX.SOFT&&O.name.endsWith(xae)&&(Je=qNe.HoisterDependencyKind.WORKSPACE),pe={name:k,identName:O.name,reference:O.reference,dependencies:new Set,peerNames:Je===qNe.HoisterDependencyKind.WORKSPACE?new Set:T.packagePeers,dependencyKind:Je},y.set(fe,pe)}let Te;if(be?Te=2:U.linkType===oX.SOFT?Te=1:Te=0,pe.hoistPriority=Math.max(pe.hoistPriority||0,Te),ge&&!be){let Je=zK({name:X.identName,reference:X.reference}),Xe=a.get(Je)||new Set;a.set(Je,Xe),Xe.add(pe.name)}let ke=new Map(T.packageDependencies);if(t.project){let Je=t.project.workspacesByCwd.get(UT.npath.toPortablePath(T.packageLocation.slice(0,-1)));if(Je){let Xe=new Set([...Array.from(Je.manifest.peerDependencies.values(),ft=>b_.structUtils.stringifyIdent(ft)),...Array.from(Je.manifest.peerDependenciesMeta.keys())]);for(let ft of Xe)ke.has(ft)||(ke.set(ft,le.get(ft)||null),pe.peerNames.add(ft))}}let x=zK({name:O.name.replace(xae,""),reference:O.reference}),et=o.get(x);if(et)for(let Je of et)ke.set(`${Je.name}${xae}`,Je.reference);(T!==U||T.linkType!==oX.SOFT||!be&&(!t.selfReferencesByCwd||t.selfReferencesByCwd.get(ae)))&&X.dependencies.add(pe);let Ue=O!==p&&T.linkType===oX.SOFT&&!O.name.endsWith(xae)&&!be;if(!he&&!Ue){let Je=new Map;for(let[Xe,ft]of ke)if(ft!==null){let Gt=e.getLocator(Xe,ft),er=e.getLocator(Xe.replace(xae,""),ft),Ur=e.getPackageInformation(er);if(Ur===null)throw new Error("Assertion failed: Expected the package to have been registered");let Ot=UNr(Ur,Gt,e,f);if(t.validateExternalSoftLinks&&t.project&&Ot){Ur.packageDependencies.size>0&&(s=!0);for(let[$r,Or]of Ur.packageDependencies)if(Or!==null){let In=b_.structUtils.parseLocator(Array.isArray(Or)?`${Or[0]}@${Or[1]}`:`${$r}@${Or}`);if(zK(In)!==zK(Gt)){let Br=ke.get($r);if(Br){let tr=b_.structUtils.parseLocator(Array.isArray(Br)?`${Br[0]}@${Br[1]}`:`${$r}@${Br}`);VXi(tr,In)||r.push({messageName:b_.MessageName.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK,text:`Cannot link ${b_.structUtils.prettyIdent(t.project.configuration,b_.structUtils.parseIdent(Gt.name))} into ${b_.structUtils.prettyLocator(t.project.configuration,b_.structUtils.parseLocator(`${O.name}@${O.reference}`))} dependency ${b_.structUtils.prettyLocator(t.project.configuration,In)} conflicts with parent dependency ${b_.structUtils.prettyLocator(t.project.configuration,tr)}`})}else{let tr=Je.get($r);if(tr){let gn=tr.target,Gn=b_.structUtils.parseLocator(Array.isArray(gn)?`${gn[0]}@${gn[1]}`:`${$r}@${gn}`);VXi(Gn,In)||r.push({messageName:b_.MessageName.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK,text:`Cannot link ${b_.structUtils.prettyIdent(t.project.configuration,b_.structUtils.parseIdent(Gt.name))} into ${b_.structUtils.prettyLocator(t.project.configuration,b_.structUtils.parseLocator(`${O.name}@${O.reference}`))} dependency ${b_.structUtils.prettyLocator(t.project.configuration,In)} conflicts with dependency ${b_.structUtils.prettyLocator(t.project.configuration,Gn)} from sibling portal ${b_.structUtils.prettyIdent(t.project.configuration,b_.structUtils.parseIdent(tr.portal.name))}`})}else Je.set($r,{target:In.reference,portal:Gt})}}}}let dr=t.hoistingLimitsByCwd?.get(ae),Ar=Ot?ae:UT.ppath.relative(f,UT.npath.toPortablePath(Ur.packageLocation))||LXi.PortablePath.dot,or=t.hoistingLimitsByCwd?.get(Ar),Fr=dr===zJe.DEPENDENCIES||or===zJe.DEPENDENCIES||or===zJe.WORKSPACES;v(Xe,Ur,Gt,pe,T,ke,Ar,Fr)}}};return v(p.name,g,p,m,g,g.packageDependencies,LXi.PortablePath.dot,!1),{packageTree:m,hoistingLimits:a,errors:r,preserveSymlinksRequired:s}};function WXi(e,t,r){let s=r.resolveVirtual&&t.reference&&t.reference.startsWith("virtual:")?r.resolveVirtual(e.packageLocation):e.packageLocation;return UT.npath.toPortablePath(s||e.packageLocation)}function tNc(e,t,r){let s=t.getLocator(e.name.replace(xae,""),e.reference),a=t.getPackageInformation(s);if(a===null)throw new Error("Assertion failed: Expected the package to be registered");return r.pnpifyFs?{linkType:oX.SOFT,target:UT.npath.toPortablePath(a.packageLocation)}:{linkType:a.linkType,target:WXi(a,e,t)}}var rNc=(e,t,r)=>{let s=new Map,a=(y,B,v)=>{let{linkType:k,target:T}=tNc(y,e,r);return{locator:zK(y),nodePath:B,target:T,linkType:k,aliases:v}},o=y=>{let[B,v]=y.split("/");return v?{scope:B,name:v}:{scope:null,name:B}},g=new Set,p=(y,B,v)=>{if(g.has(y))return;g.add(y);let k=Array.from(y.references).sort().join("#");for(let T of y.dependencies){let O=Array.from(T.references).sort().join("#");if(T.identName===y.identName.replace(xae,"")&&O===k)continue;let X=Array.from(T.references).sort(),U={name:T.identName,reference:X[0]},{name:le,scope:ae}=o(T.name),ge=ae?[ae,le]:[le],fe=UT.ppath.join(B,Ywt),pe=UT.ppath.join(fe,...ge),he=`${v}/${U.name}`,be=a(U,v,X.slice(1)),Te=!1;if(be.linkType===oX.SOFT&&r.project){let ke=r.project.workspacesByCwd.get(be.target.slice(0,-1));Te=!!(ke&&!ke.manifest.name)}if(!T.name.endsWith(xae)&&!Te){let ke=s.get(pe);if(ke){if(ke.dirList)throw new Error(`Assertion failed: ${pe} cannot merge dir node with leaf node`);{let Ue=b_.structUtils.parseLocator(ke.locator),Je=b_.structUtils.parseLocator(be.locator);if(ke.linkType!==be.linkType)throw new Error(`Assertion failed: ${pe} cannot merge nodes with different link types ${ke.nodePath}/${b_.structUtils.stringifyLocator(Ue)} and ${v}/${b_.structUtils.stringifyLocator(Je)}`);if(Ue.identHash!==Je.identHash)throw new Error(`Assertion failed: ${pe} cannot merge nodes with different idents ${ke.nodePath}/${b_.structUtils.stringifyLocator(Ue)} and ${v}/s${b_.structUtils.stringifyLocator(Je)}`);be.aliases=[...be.aliases,...ke.aliases,b_.structUtils.parseLocator(ke.locator).reference]}}s.set(pe,be);let x=pe.split("/"),et=x.indexOf(Ywt);for(let Ue=x.length-1;et>=0&&Ue>et;Ue--){let Je=UT.npath.toPortablePath(x.slice(0,Ue).join(UT.ppath.sep)),Xe=x[Ue],ft=s.get(Je);if(!ft)s.set(Je,{dirList:new Set([Xe])});else if(ft.dirList){if(ft.dirList.has(Xe))break;ft.dirList.add(Xe)}}}p(T,be.linkType===oX.SOFT?be.target:pe,he)}},f=a({name:t.name,reference:Array.from(t.references)[0]},"",[]),m=f.target;return s.set(m,f),p(t,m,""),s}});var qJe=z(Z9=>{"use strict";Object.defineProperty(Z9,"__esModule",{value:!0});Z9.HoisterDependencyKind=Z9.hoist=Z9.getArchivePath=Z9.buildLocatorMap=Z9.buildNodeModulesTree=Z9.NodeModulesHoistingLimits=void 0;var nNc=Xwt();Object.defineProperty(Z9,"getArchivePath",{enumerable:!0,get:function(){return nNc.getArchivePath}});var PXi=Xwt();Object.defineProperty(Z9,"buildNodeModulesTree",{enumerable:!0,get:function(){return PXi.buildNodeModulesTree}});Object.defineProperty(Z9,"buildLocatorMap",{enumerable:!0,get:function(){return PXi.buildLocatorMap}});var iNc=Xwt();Object.defineProperty(Z9,"NodeModulesHoistingLimits",{enumerable:!0,get:function(){return iNc.NodeModulesHoistingLimits}});var OXi=JNr();Object.defineProperty(Z9,"hoist",{enumerable:!0,get:function(){return OXi.hoist}});Object.defineProperty(Z9,"HoisterDependencyKind",{enumerable:!0,get:function(){return OXi.HoisterDependencyKind}})});var ARr=z(aX=>{"use strict";Object.defineProperty(aX,"__esModule",{value:!0});var sNc=xt("zlib"),qXi=xt("path"),RCe=xt("module"),fv=xt("url"),QXi=xt("util"),oNc=xt("assert"),aNc=xt("fs"),cNc=xt("crypto"),lNc=xt("os"),$wt=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},$Xi=$wt(sNc),Uwt=$wt(qXi),uNc=$wt(oNc),gNc=$wt(aNc),e4i=(e=>(e.HARD="HARD",e.SOFT="SOFT",e))(e4i||{}),ANc=456789e3,eRr={root:"/",dot:".",parent:".."},Kwt={home:"~",nodeModules:"node_modules",manifest:"package.json",lockfile:"yarn.lock",virtual:"__virtual__",pnpJs:".pnp.js",pnpCjs:".pnp.cjs",pnpData:".pnp.data.json",pnpEsmLoader:".pnp.loader.mjs",rc:".yarnrc.yml",env:".env"},lc=Object.create(Uwt.default),eC=Object.create(Uwt.default.posix);lc.cwd=()=>process.cwd();eC.cwd=process.platform==="win32"?()=>cRr(process.cwd()):process.cwd;process.platform==="win32"&&(eC.resolve=(...e)=>e.length>0&&eC.isAbsolute(e[0])?Uwt.default.posix.resolve(...e):Uwt.default.posix.resolve(eC.cwd(),...e));var t4i=function(e,t,r){return t=e.normalize(t),r=e.normalize(r),t===r?".":(t.endsWith(e.sep)||(t=t+e.sep),r.startsWith(t)?r.slice(t.length):null)};lc.contains=(e,t)=>t4i(lc,e,t);eC.contains=(e,t)=>t4i(eC,e,t);var dNc=/^([a-zA-Z]:.*)$/,pNc=/^\/\/(\.\/)?(.*)$/,fNc=/^\/([a-zA-Z]:.*)$/,INc=/^\/unc\/(\.dot\/)?(.*)$/;function CNc(e){let t,r;if(t=e.match(fNc))e=t[1];else if(r=e.match(INc))e=`\\\\${r[1]?".\\":""}${r[2]}`;else return e;return e.replace(/\//g,"\\")}function mNc(e){e=e.replace(/\\/g,"/");let t,r;return(t=e.match(dNc))?e=`/${t[1]}`:(r=e.match(pNc))&&(e=`/unc/${r[1]?".dot/":""}${r[2]}`),e}var cRr=process.platform==="win32"?mNc:e=>e,r4i=process.platform==="win32"?CNc:e=>e;lc.fromPortablePath=r4i;lc.toPortablePath=cRr;function n4i(e,t){return e===lc?r4i(t):cRr(t)}var xCe=new Date(ANc*1e3),hNc=xCe.getTime();async function _Nc(e,t,r,s,a){let o=e.pathUtils.normalize(t),g=r.pathUtils.normalize(s),p=[],f=[],{atime:m,mtime:y}=a.stableTime?{atime:xCe,mtime:xCe}:await r.lstatPromise(g);await e.mkdirpPromise(e.pathUtils.dirname(t),{utimes:[m,y]}),await tRr(p,f,e,o,r,g,{...a,didParentExist:!0});for(let B of p)await B();await Promise.all(f.map(B=>B()))}async function tRr(e,t,r,s,a,o,g){let p=g.didParentExist?await i4i(r,s):null,f=await a.lstatPromise(o),{atime:m,mtime:y}=g.stableTime?{atime:xCe,mtime:xCe}:f,B;switch(!0){case f.isDirectory():B=await yNc(e,t,r,s,p,a,o,f,g);break;case f.isFile():B=await BNc(e,t,r,s,p,a,o,f,g);break;case f.isSymbolicLink():B=await vNc(e,t,r,s,p,a,o,f,g);break;default:throw new Error(`Unsupported file type (${f.mode})`)}return(g.linkStrategy?.type!=="HardlinkFromIndex"||!f.isFile())&&((B||p?.mtime?.getTime()!==y.getTime()||p?.atime?.getTime()!==m.getTime())&&(t.push(()=>r.lutimesPromise(s,m,y)),B=!0),(p===null||(p.mode&511)!==(f.mode&511))&&(t.push(()=>r.chmodPromise(s,f.mode&511)),B=!0)),B}async function i4i(e,t){try{return await e.lstatPromise(t)}catch{return null}}async function yNc(e,t,r,s,a,o,g,p,f){if(a!==null&&!a.isDirectory())if(f.overwrite)e.push(async()=>r.removePromise(s)),a=null;else return!1;let m=!1;a===null&&(e.push(async()=>{try{await r.mkdirPromise(s,{mode:p.mode})}catch(v){if(v.code!=="EEXIST")throw v}}),m=!0);let y=await o.readdirPromise(g),B=f.didParentExist&&!a?{...f,didParentExist:!1}:f;if(f.stableSort)for(let v of y.sort())await tRr(e,t,r,r.pathUtils.join(s,v),o,o.pathUtils.join(g,v),B)&&(m=!0);else(await Promise.all(y.map(async k=>{await tRr(e,t,r,r.pathUtils.join(s,k),o,o.pathUtils.join(g,k),B)}))).some(k=>k)&&(m=!0);return m}async function bNc(e,t,r,s,a,o,g,p,f,m){let y=await o.checksumFilePromise(g,{algorithm:"sha1"}),B=420,v=p.mode&511,k=`${y}${v!==B?v.toString(8):""}`,T=r.pathUtils.join(m.indexPath,y.slice(0,2),`${k}.dat`),O;(ge=>{ge[ge.Lock=0]="Lock",ge[ge.Rename=1]="Rename"})(O||(O={}));let X=1,U=await i4i(r,T);if(a){let ge=U&&a.dev===U.dev&&a.ino===U.ino,fe=U?.mtimeMs!==hNc;if(ge&&fe&&m.autoRepair&&(X=0,U=null),!ge)if(f.overwrite)e.push(async()=>r.removePromise(s)),a=null;else return!1}let le=!U&&X===1?`${T}.${Math.floor(Math.random()*4294967296).toString(16).padStart(8,"0")}`:null,ae=!1;return e.push(async()=>{if(!U&&(X===0&&await r.lockPromise(T,async()=>{let ge=await o.readFilePromise(g);await r.writeFilePromise(T,ge)}),X===1&&le)){let ge=await o.readFilePromise(g);await r.writeFilePromise(le,ge);try{await r.linkPromise(le,T)}catch(fe){if(fe.code==="EEXIST")ae=!0,await r.unlinkPromise(le);else throw fe}}a||await r.linkPromise(T,s)}),t.push(async()=>{U||(await r.lutimesPromise(T,xCe,xCe),v!==B&&await r.chmodPromise(T,v)),le&&!ae&&await r.unlinkPromise(le)}),!1}async function ENc(e,t,r,s,a,o,g,p,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(s)),a=null;else return!1;return e.push(async()=>{let m=await o.readFilePromise(g);await r.writeFilePromise(s,m)}),!0}async function BNc(e,t,r,s,a,o,g,p,f){return f.linkStrategy?.type==="HardlinkFromIndex"?bNc(e,t,r,s,a,o,g,p,f,f.linkStrategy):ENc(e,t,r,s,a,o,g,p,f)}async function vNc(e,t,r,s,a,o,g,p,f){if(a!==null)if(f.overwrite)e.push(async()=>r.removePromise(s)),a=null;else return!1;return e.push(async()=>{await r.symlinkPromise(n4i(r.pathUtils,await o.readlinkPromise(g)),s)}),!0}var jwt=class{constructor(t){this.pathUtils=t}async*genTraversePromise(t,{stableSort:r=!1}={}){let s=[t];for(;s.length>0;){let a=s.shift();if((await this.lstatPromise(a)).isDirectory()){let g=await this.readdirPromise(a);if(r)for(let p of g.sort())s.push(this.pathUtils.join(a,p));else throw new Error("Not supported")}else yield a}}async checksumFilePromise(t,{algorithm:r="sha512"}={}){let s=await this.openPromise(t,"r");try{let o=Buffer.allocUnsafeSlow(65536),g=cNc.createHash(r),p=0;for(;(p=await this.readPromise(s,o,0,65536))!==0;)g.update(p===65536?o:o.slice(0,p));return g.digest("hex")}finally{await this.closePromise(s)}}async removePromise(t,{recursive:r=!0,maxRetries:s=5}={}){let a;try{a=await this.lstatPromise(t)}catch(o){if(o.code==="ENOENT")return;throw o}if(a.isDirectory()){if(r){let o=await this.readdirPromise(t);await Promise.all(o.map(g=>this.removePromise(this.pathUtils.resolve(t,g))))}for(let o=0;o<=s;o++)try{await this.rmdirPromise(t);break}catch(g){if(g.code!=="EBUSY"&&g.code!=="ENOTEMPTY")throw g;osetTimeout(p,o*100))}}else await this.unlinkPromise(t)}removeSync(t,{recursive:r=!0}={}){let s;try{s=this.lstatSync(t)}catch(a){if(a.code==="ENOENT")return;throw a}if(s.isDirectory()){if(r)for(let a of this.readdirSync(t))this.removeSync(this.pathUtils.resolve(t,a));this.rmdirSync(t)}else this.unlinkSync(t)}async mkdirpPromise(t,{chmod:r,utimes:s}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let g=2;g<=a.length;++g){let p=a.slice(0,g).join(this.pathUtils.sep);if(!this.existsSync(p)){try{await this.mkdirPromise(p)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=p,r!=null&&await this.chmodPromise(p,r),s!=null)await this.utimesPromise(p,s[0],s[1]);else{let f=await this.statPromise(this.pathUtils.dirname(p));await this.utimesPromise(p,f.atime,f.mtime)}}}return o}mkdirpSync(t,{chmod:r,utimes:s}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),o;for(let g=2;g<=a.length;++g){let p=a.slice(0,g).join(this.pathUtils.sep);if(!this.existsSync(p)){try{this.mkdirSync(p)}catch(f){if(f.code==="EEXIST")continue;throw f}if(o??=p,r!=null&&this.chmodSync(p,r),s!=null)this.utimesSync(p,s[0],s[1]);else{let f=this.statSync(this.pathUtils.dirname(p));this.utimesSync(p,f.atime,f.mtime)}}}return o}async copyPromise(t,r,{baseFs:s=this,overwrite:a=!0,stableSort:o=!1,stableTime:g=!1,linkStrategy:p=null}={}){return await _Nc(this,t,s,r,{overwrite:a,stableSort:o,stableTime:g,linkStrategy:p})}copySync(t,r,{baseFs:s=this,overwrite:a=!0}={}){let o=s.lstatSync(r),g=this.existsSync(t);if(o.isDirectory()){this.mkdirpSync(t);let f=s.readdirSync(r);for(let m of f)this.copySync(this.pathUtils.join(t,m),s.pathUtils.join(r,m),{baseFs:s,overwrite:a})}else if(o.isFile()){if(!g||a){g&&this.removeSync(t);let f=s.readFileSync(r);this.writeFileSync(t,f)}}else if(o.isSymbolicLink()){if(!g||a){g&&this.removeSync(t);let f=s.readlinkSync(r);this.symlinkSync(n4i(this.pathUtils,f),t)}}else throw new Error(`Unsupported file type (file: ${r}, mode: 0o${o.mode.toString(8).padStart(6,"0")})`);let p=o.mode&511;this.chmodSync(t,p)}async changeFilePromise(t,r,s={}){return Buffer.isBuffer(r)?this.changeFileBufferPromise(t,r,s):this.changeFileTextPromise(t,r,s)}async changeFileBufferPromise(t,r,{mode:s}={}){let a=Buffer.alloc(0);try{a=await this.readFilePromise(t)}catch{}Buffer.compare(a,r)!==0&&await this.writeFilePromise(t,r,{mode:s})}async changeFileTextPromise(t,r,{automaticNewlines:s,mode:a}={}){let o="";try{o=await this.readFilePromise(t,"utf8")}catch{}let g=s?MXi(o,r):r;o!==g&&await this.writeFilePromise(t,g,{mode:a})}changeFileSync(t,r,s={}){return Buffer.isBuffer(r)?this.changeFileBufferSync(t,r,s):this.changeFileTextSync(t,r,s)}changeFileBufferSync(t,r,{mode:s}={}){let a=Buffer.alloc(0);try{a=this.readFileSync(t)}catch{}Buffer.compare(a,r)!==0&&this.writeFileSync(t,r,{mode:s})}changeFileTextSync(t,r,{automaticNewlines:s=!1,mode:a}={}){let o="";try{o=this.readFileSync(t,"utf8")}catch{}let g=s?MXi(o,r):r;o!==g&&this.writeFileSync(t,g,{mode:a})}async movePromise(t,r){try{await this.renamePromise(t,r)}catch(s){if(s.code==="EXDEV")await this.copyPromise(r,t),await this.removePromise(t);else throw s}}moveSync(t,r){try{this.renameSync(t,r)}catch(s){if(s.code==="EXDEV")this.copySync(r,t),this.removeSync(t);else throw s}}async lockPromise(t,r){let s=`${t}.flock`,a=1e3/60,o=Date.now(),g=null,p=async()=>{let f;try{[f]=await this.readJsonPromise(s)}catch{return Date.now()-o<500}try{return process.kill(f,0),!0}catch{return!1}};for(;g===null;)try{g=await this.openPromise(s,"wx")}catch(f){if(f.code==="EEXIST"){if(!await p())try{await this.unlinkPromise(s);continue}catch{}if(Date.now()-o<60*1e3)await new Promise(m=>setTimeout(m,a));else throw new Error(`Couldn't acquire a lock in a reasonable time (via ${s})`)}else throw f}await this.writePromise(g,JSON.stringify([process.pid]));try{return await r()}finally{try{await this.closePromise(g),await this.unlinkPromise(s)}catch{}}}async readJsonPromise(t){let r=await this.readFilePromise(t,"utf8");try{return JSON.parse(r)}catch(s){throw s.message+=` (in ${t})`,s}}readJsonSync(t){let r=this.readFileSync(t,"utf8");try{return JSON.parse(r)}catch(s){throw s.message+=` (in ${t})`,s}}async writeJsonPromise(t,r,{compact:s=!1}={}){let a=s?0:2;return await this.writeFilePromise(t,`${JSON.stringify(r,null,a)} `)}writeJsonSync(t,r,{compact:s=!1}={}){let a=s?0:2;return this.writeFileSync(t,`${JSON.stringify(r,null,a)} -`)}async preserveTimePromise(t,r){let s=await this.lstatPromise(t),a=await r();typeof a<"u"&&(t=a),await this.lutimesPromise(t,s.atime,s.mtime)}async preserveTimeSync(t,r){let s=this.lstatSync(t),a=r();typeof a<"u"&&(t=a),this.lutimesSync(t,s.atime,s.mtime)}},jNr=class extends Jwt{constructor(){super($I)}};function uNc(e){let t=e.match(/\r?\n/g);if(t===null)return JTc.EOL;let r=t.filter(a=>a===`\r +`)}async preserveTimePromise(t,r){let s=await this.lstatPromise(t),a=await r();typeof a<"u"&&(t=a),await this.lutimesPromise(t,s.atime,s.mtime)}async preserveTimeSync(t,r){let s=this.lstatSync(t),a=r();typeof a<"u"&&(t=a),this.lutimesSync(t,s.atime,s.mtime)}},rRr=class extends jwt{constructor(){super(eC)}};function SNc(e){let t=e.match(/\r?\n/g);if(t===null)return lNc.EOL;let r=t.filter(a=>a===`\r `).length,s=t.length-r;return r>s?`\r `:` -`}function ZXi(e,t){return t.replace(/\r?\n/g,uNc(e))}var zNr=class extends Jwt{getExtractHint(t){return this.baseFs.getExtractHint(t)}resolve(t){return this.mapFromBase(this.baseFs.resolve(this.mapToBase(t)))}getRealPath(){return this.mapFromBase(this.baseFs.getRealPath())}async openPromise(t,r,s){return this.baseFs.openPromise(this.mapToBase(t),r,s)}openSync(t,r,s){return this.baseFs.openSync(this.mapToBase(t),r,s)}async opendirPromise(t,r){return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(t),r),{path:t})}opendirSync(t,r){return Object.assign(this.baseFs.opendirSync(this.mapToBase(t),r),{path:t})}async readPromise(t,r,s,a,o){return await this.baseFs.readPromise(t,r,s,a,o)}readSync(t,r,s,a,o){return this.baseFs.readSync(t,r,s,a,o)}async writePromise(t,r,s,a,o){return typeof r=="string"?await this.baseFs.writePromise(t,r,s):await this.baseFs.writePromise(t,r,s,a,o)}writeSync(t,r,s,a,o){return typeof r=="string"?this.baseFs.writeSync(t,r,s):this.baseFs.writeSync(t,r,s,a,o)}async closePromise(t){return this.baseFs.closePromise(t)}closeSync(t){this.baseFs.closeSync(t)}createReadStream(t,r){return this.baseFs.createReadStream(t!==null?this.mapToBase(t):t,r)}createWriteStream(t,r){return this.baseFs.createWriteStream(t!==null?this.mapToBase(t):t,r)}async realpathPromise(t){return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(t)))}realpathSync(t){return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(t)))}async existsPromise(t){return this.baseFs.existsPromise(this.mapToBase(t))}existsSync(t){return this.baseFs.existsSync(this.mapToBase(t))}accessSync(t,r){return this.baseFs.accessSync(this.mapToBase(t),r)}async accessPromise(t,r){return this.baseFs.accessPromise(this.mapToBase(t),r)}async statPromise(t,r){return this.baseFs.statPromise(this.mapToBase(t),r)}statSync(t,r){return this.baseFs.statSync(this.mapToBase(t),r)}async fstatPromise(t,r){return this.baseFs.fstatPromise(t,r)}fstatSync(t,r){return this.baseFs.fstatSync(t,r)}lstatPromise(t,r){return this.baseFs.lstatPromise(this.mapToBase(t),r)}lstatSync(t,r){return this.baseFs.lstatSync(this.mapToBase(t),r)}async fchmodPromise(t,r){return this.baseFs.fchmodPromise(t,r)}fchmodSync(t,r){return this.baseFs.fchmodSync(t,r)}async chmodPromise(t,r){return this.baseFs.chmodPromise(this.mapToBase(t),r)}chmodSync(t,r){return this.baseFs.chmodSync(this.mapToBase(t),r)}async fchownPromise(t,r,s){return this.baseFs.fchownPromise(t,r,s)}fchownSync(t,r,s){return this.baseFs.fchownSync(t,r,s)}async chownPromise(t,r,s){return this.baseFs.chownPromise(this.mapToBase(t),r,s)}chownSync(t,r,s){return this.baseFs.chownSync(this.mapToBase(t),r,s)}async renamePromise(t,r){return this.baseFs.renamePromise(this.mapToBase(t),this.mapToBase(r))}renameSync(t,r){return this.baseFs.renameSync(this.mapToBase(t),this.mapToBase(r))}async copyFilePromise(t,r,s=0){return this.baseFs.copyFilePromise(this.mapToBase(t),this.mapToBase(r),s)}copyFileSync(t,r,s=0){return this.baseFs.copyFileSync(this.mapToBase(t),this.mapToBase(r),s)}async appendFilePromise(t,r,s){return this.baseFs.appendFilePromise(this.fsMapToBase(t),r,s)}appendFileSync(t,r,s){return this.baseFs.appendFileSync(this.fsMapToBase(t),r,s)}async writeFilePromise(t,r,s){return this.baseFs.writeFilePromise(this.fsMapToBase(t),r,s)}writeFileSync(t,r,s){return this.baseFs.writeFileSync(this.fsMapToBase(t),r,s)}async unlinkPromise(t){return this.baseFs.unlinkPromise(this.mapToBase(t))}unlinkSync(t){return this.baseFs.unlinkSync(this.mapToBase(t))}async utimesPromise(t,r,s){return this.baseFs.utimesPromise(this.mapToBase(t),r,s)}utimesSync(t,r,s){return this.baseFs.utimesSync(this.mapToBase(t),r,s)}async lutimesPromise(t,r,s){return this.baseFs.lutimesPromise(this.mapToBase(t),r,s)}lutimesSync(t,r,s){return this.baseFs.lutimesSync(this.mapToBase(t),r,s)}async mkdirPromise(t,r){return this.baseFs.mkdirPromise(this.mapToBase(t),r)}mkdirSync(t,r){return this.baseFs.mkdirSync(this.mapToBase(t),r)}async rmdirPromise(t,r){return this.baseFs.rmdirPromise(this.mapToBase(t),r)}rmdirSync(t,r){return this.baseFs.rmdirSync(this.mapToBase(t),r)}async rmPromise(t,r){return this.baseFs.rmPromise(this.mapToBase(t),r)}rmSync(t,r){return this.baseFs.rmSync(this.mapToBase(t),r)}async linkPromise(t,r){return this.baseFs.linkPromise(this.mapToBase(t),this.mapToBase(r))}linkSync(t,r){return this.baseFs.linkSync(this.mapToBase(t),this.mapToBase(r))}async symlinkPromise(t,r,s){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkPromise(this.mapToBase(t),a,s);let o=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),g=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),o);return this.baseFs.symlinkPromise(g,a,s)}symlinkSync(t,r,s){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkSync(this.mapToBase(t),a,s);let o=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),g=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),o);return this.baseFs.symlinkSync(g,a,s)}async readFilePromise(t,r){return this.baseFs.readFilePromise(this.fsMapToBase(t),r)}readFileSync(t,r){return this.baseFs.readFileSync(this.fsMapToBase(t),r)}readdirPromise(t,r){return this.baseFs.readdirPromise(this.mapToBase(t),r)}readdirSync(t,r){return this.baseFs.readdirSync(this.mapToBase(t),r)}async readlinkPromise(t){return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(t)))}readlinkSync(t){return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(t)))}async truncatePromise(t,r){return this.baseFs.truncatePromise(this.mapToBase(t),r)}truncateSync(t,r){return this.baseFs.truncateSync(this.mapToBase(t),r)}async ftruncatePromise(t,r){return this.baseFs.ftruncatePromise(t,r)}ftruncateSync(t,r){return this.baseFs.ftruncateSync(t,r)}watch(t,r,s){return this.baseFs.watch(this.mapToBase(t),r,s)}watchFile(t,r,s){return this.baseFs.watchFile(this.mapToBase(t),r,s)}unwatchFile(t,r){return this.baseFs.unwatchFile(this.mapToBase(t),r)}fsMapToBase(t){return typeof t=="number"?t:this.mapToBase(t)}};function LXi(e){let t=e;return typeof e.path=="string"&&(t.path=lc.toPortablePath(e.path)),t}var qNr=class extends jNr{constructor(t=KTc.default){super(),this.realFs=t}getExtractHint(){return!1}getRealPath(){return UNr.root}resolve(t){return $I.resolve(t)}async openPromise(t,r,s){return await new Promise((a,o)=>{this.realFs.open(lc.fromPortablePath(t),r,s,this.makeCallback(a,o))})}openSync(t,r,s){return this.realFs.openSync(lc.fromPortablePath(t),r,s)}async opendirPromise(t,r){return await new Promise((s,a)=>{typeof r<"u"?this.realFs.opendir(lc.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.opendir(lc.fromPortablePath(t),this.makeCallback(s,a))}).then(s=>{let a=s;return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a})}opendirSync(t,r){let a=typeof r<"u"?this.realFs.opendirSync(lc.fromPortablePath(t),r):this.realFs.opendirSync(lc.fromPortablePath(t));return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a}async readPromise(t,r,s=0,a=0,o=-1){return await new Promise((g,p)=>{this.realFs.read(t,r,s,a,o,(f,m)=>{f?p(f):g(m)})})}readSync(t,r,s,a,o){return this.realFs.readSync(t,r,s,a,o)}async writePromise(t,r,s,a,o){return await new Promise((g,p)=>typeof r=="string"?this.realFs.write(t,r,s,this.makeCallback(g,p)):this.realFs.write(t,r,s,a,o,this.makeCallback(g,p)))}writeSync(t,r,s,a,o){return typeof r=="string"?this.realFs.writeSync(t,r,s):this.realFs.writeSync(t,r,s,a,o)}async closePromise(t){await new Promise((r,s)=>{this.realFs.close(t,this.makeCallback(r,s))})}closeSync(t){this.realFs.closeSync(t)}createReadStream(t,r){let s=t!==null?lc.fromPortablePath(t):t;return this.realFs.createReadStream(s,r)}createWriteStream(t,r){let s=t!==null?lc.fromPortablePath(t):t;return this.realFs.createWriteStream(s,r)}async realpathPromise(t){return await new Promise((r,s)=>{this.realFs.realpath(lc.fromPortablePath(t),{},this.makeCallback(r,s))}).then(r=>lc.toPortablePath(r))}realpathSync(t){return lc.toPortablePath(this.realFs.realpathSync(lc.fromPortablePath(t),{}))}async existsPromise(t){return await new Promise(r=>{this.realFs.exists(lc.fromPortablePath(t),r)})}accessSync(t,r){return this.realFs.accessSync(lc.fromPortablePath(t),r)}async accessPromise(t,r){return await new Promise((s,a)=>{this.realFs.access(lc.fromPortablePath(t),r,this.makeCallback(s,a))})}existsSync(t){return this.realFs.existsSync(lc.fromPortablePath(t))}async statPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.stat(lc.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.stat(lc.fromPortablePath(t),this.makeCallback(s,a))})}statSync(t,r){return r?this.realFs.statSync(lc.fromPortablePath(t),r):this.realFs.statSync(lc.fromPortablePath(t))}async fstatPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.fstat(t,r,this.makeCallback(s,a)):this.realFs.fstat(t,this.makeCallback(s,a))})}fstatSync(t,r){return r?this.realFs.fstatSync(t,r):this.realFs.fstatSync(t)}async lstatPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.lstat(lc.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.lstat(lc.fromPortablePath(t),this.makeCallback(s,a))})}lstatSync(t,r){return r?this.realFs.lstatSync(lc.fromPortablePath(t),r):this.realFs.lstatSync(lc.fromPortablePath(t))}async fchmodPromise(t,r){return await new Promise((s,a)=>{this.realFs.fchmod(t,r,this.makeCallback(s,a))})}fchmodSync(t,r){return this.realFs.fchmodSync(t,r)}async chmodPromise(t,r){return await new Promise((s,a)=>{this.realFs.chmod(lc.fromPortablePath(t),r,this.makeCallback(s,a))})}chmodSync(t,r){return this.realFs.chmodSync(lc.fromPortablePath(t),r)}async fchownPromise(t,r,s){return await new Promise((a,o)=>{this.realFs.fchown(t,r,s,this.makeCallback(a,o))})}fchownSync(t,r,s){return this.realFs.fchownSync(t,r,s)}async chownPromise(t,r,s){return await new Promise((a,o)=>{this.realFs.chown(lc.fromPortablePath(t),r,s,this.makeCallback(a,o))})}chownSync(t,r,s){return this.realFs.chownSync(lc.fromPortablePath(t),r,s)}async renamePromise(t,r){return await new Promise((s,a)=>{this.realFs.rename(lc.fromPortablePath(t),lc.fromPortablePath(r),this.makeCallback(s,a))})}renameSync(t,r){return this.realFs.renameSync(lc.fromPortablePath(t),lc.fromPortablePath(r))}async copyFilePromise(t,r,s=0){return await new Promise((a,o)=>{this.realFs.copyFile(lc.fromPortablePath(t),lc.fromPortablePath(r),s,this.makeCallback(a,o))})}copyFileSync(t,r,s=0){return this.realFs.copyFileSync(lc.fromPortablePath(t),lc.fromPortablePath(r),s)}async appendFilePromise(t,r,s){return await new Promise((a,o)=>{let g=typeof t=="string"?lc.fromPortablePath(t):t;s?this.realFs.appendFile(g,r,s,this.makeCallback(a,o)):this.realFs.appendFile(g,r,this.makeCallback(a,o))})}appendFileSync(t,r,s){let a=typeof t=="string"?lc.fromPortablePath(t):t;s?this.realFs.appendFileSync(a,r,s):this.realFs.appendFileSync(a,r)}async writeFilePromise(t,r,s){return await new Promise((a,o)=>{let g=typeof t=="string"?lc.fromPortablePath(t):t;s?this.realFs.writeFile(g,r,s,this.makeCallback(a,o)):this.realFs.writeFile(g,r,this.makeCallback(a,o))})}writeFileSync(t,r,s){let a=typeof t=="string"?lc.fromPortablePath(t):t;s?this.realFs.writeFileSync(a,r,s):this.realFs.writeFileSync(a,r)}async unlinkPromise(t){return await new Promise((r,s)=>{this.realFs.unlink(lc.fromPortablePath(t),this.makeCallback(r,s))})}unlinkSync(t){return this.realFs.unlinkSync(lc.fromPortablePath(t))}async utimesPromise(t,r,s){return await new Promise((a,o)=>{this.realFs.utimes(lc.fromPortablePath(t),r,s,this.makeCallback(a,o))})}utimesSync(t,r,s){this.realFs.utimesSync(lc.fromPortablePath(t),r,s)}async lutimesPromise(t,r,s){return await new Promise((a,o)=>{this.realFs.lutimes(lc.fromPortablePath(t),r,s,this.makeCallback(a,o))})}lutimesSync(t,r,s){this.realFs.lutimesSync(lc.fromPortablePath(t),r,s)}async mkdirPromise(t,r){return await new Promise((s,a)=>{this.realFs.mkdir(lc.fromPortablePath(t),r,this.makeCallback(s,a))})}mkdirSync(t,r){return this.realFs.mkdirSync(lc.fromPortablePath(t),r)}async rmdirPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.rmdir(lc.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.rmdir(lc.fromPortablePath(t),this.makeCallback(s,a))})}rmdirSync(t,r){return this.realFs.rmdirSync(lc.fromPortablePath(t),r)}async rmPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.rm(lc.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.rm(lc.fromPortablePath(t),this.makeCallback(s,a))})}rmSync(t,r){return this.realFs.rmSync(lc.fromPortablePath(t),r)}async linkPromise(t,r){return await new Promise((s,a)=>{this.realFs.link(lc.fromPortablePath(t),lc.fromPortablePath(r),this.makeCallback(s,a))})}linkSync(t,r){return this.realFs.linkSync(lc.fromPortablePath(t),lc.fromPortablePath(r))}async symlinkPromise(t,r,s){return await new Promise((a,o)=>{this.realFs.symlink(lc.fromPortablePath(t.replace(/\/+$/,"")),lc.fromPortablePath(r),s,this.makeCallback(a,o))})}symlinkSync(t,r,s){return this.realFs.symlinkSync(lc.fromPortablePath(t.replace(/\/+$/,"")),lc.fromPortablePath(r),s)}async readFilePromise(t,r){return await new Promise((s,a)=>{let o=typeof t=="string"?lc.fromPortablePath(t):t;this.realFs.readFile(o,r,this.makeCallback(s,a))})}readFileSync(t,r){let s=typeof t=="string"?lc.fromPortablePath(t):t;return this.realFs.readFileSync(s,r)}async readdirPromise(t,r){return await new Promise((s,a)=>{r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdir(lc.fromPortablePath(t),r,this.makeCallback(o=>s(o.map(LXi)),a)):this.realFs.readdir(lc.fromPortablePath(t),r,this.makeCallback(o=>s(o.map(lc.toPortablePath)),a)):this.realFs.readdir(lc.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.readdir(lc.fromPortablePath(t),this.makeCallback(s,a))})}readdirSync(t,r){return r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdirSync(lc.fromPortablePath(t),r).map(LXi):this.realFs.readdirSync(lc.fromPortablePath(t),r).map(lc.toPortablePath):this.realFs.readdirSync(lc.fromPortablePath(t),r):this.realFs.readdirSync(lc.fromPortablePath(t))}async readlinkPromise(t){return await new Promise((r,s)=>{this.realFs.readlink(lc.fromPortablePath(t),this.makeCallback(r,s))}).then(r=>lc.toPortablePath(r))}readlinkSync(t){return lc.toPortablePath(this.realFs.readlinkSync(lc.fromPortablePath(t)))}async truncatePromise(t,r){return await new Promise((s,a)=>{this.realFs.truncate(lc.fromPortablePath(t),r,this.makeCallback(s,a))})}truncateSync(t,r){return this.realFs.truncateSync(lc.fromPortablePath(t),r)}async ftruncatePromise(t,r){return await new Promise((s,a)=>{this.realFs.ftruncate(t,r,this.makeCallback(s,a))})}ftruncateSync(t,r){return this.realFs.ftruncateSync(t,r)}watch(t,r,s){return this.realFs.watch(lc.fromPortablePath(t),r,s)}watchFile(t,r,s){return this.realFs.watchFile(lc.fromPortablePath(t),r,s)}unwatchFile(t,r){return this.realFs.unwatchFile(lc.fromPortablePath(t),r)}makeCallback(t,r){return(s,a)=>{s?r(s):t(a)}}},gNc=/^[0-9]+$/,QNr=/^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/,ANc=/^([^/]+-)?[a-f0-9]+$/,Uwt=class e extends zNr{constructor({baseFs:t=new qNr}={}){super($I),this.baseFs=t}static makeVirtualPath(t,r,s){if($I.basename(t)!=="__virtual__")throw new Error('Assertion failed: Virtual folders must be named "__virtual__"');if(!$I.basename(r).match(ANc))throw new Error("Assertion failed: Virtual components must be ended by an hexadecimal hash");let o=$I.relative($I.dirname(t),s).split("/"),g=0;for(;g"u"||(p!==0&&(a+=", "),a+=JSON.stringify(f),a+=": ",a+=zwt(f,m,t,r).replace(/^ +/g,""),p+=1)}return a+="}",a}function INc(e,t,r){let s=Object.keys(e),a=`${r} `,o="";o+=r,o+=`{ +`}function MXi(e,t){return t.replace(/\r?\n/g,SNc(e))}var nRr=class extends jwt{getExtractHint(t){return this.baseFs.getExtractHint(t)}resolve(t){return this.mapFromBase(this.baseFs.resolve(this.mapToBase(t)))}getRealPath(){return this.mapFromBase(this.baseFs.getRealPath())}async openPromise(t,r,s){return this.baseFs.openPromise(this.mapToBase(t),r,s)}openSync(t,r,s){return this.baseFs.openSync(this.mapToBase(t),r,s)}async opendirPromise(t,r){return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(t),r),{path:t})}opendirSync(t,r){return Object.assign(this.baseFs.opendirSync(this.mapToBase(t),r),{path:t})}async readPromise(t,r,s,a,o){return await this.baseFs.readPromise(t,r,s,a,o)}readSync(t,r,s,a,o){return this.baseFs.readSync(t,r,s,a,o)}async writePromise(t,r,s,a,o){return typeof r=="string"?await this.baseFs.writePromise(t,r,s):await this.baseFs.writePromise(t,r,s,a,o)}writeSync(t,r,s,a,o){return typeof r=="string"?this.baseFs.writeSync(t,r,s):this.baseFs.writeSync(t,r,s,a,o)}async closePromise(t){return this.baseFs.closePromise(t)}closeSync(t){this.baseFs.closeSync(t)}createReadStream(t,r){return this.baseFs.createReadStream(t!==null?this.mapToBase(t):t,r)}createWriteStream(t,r){return this.baseFs.createWriteStream(t!==null?this.mapToBase(t):t,r)}async realpathPromise(t){return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(t)))}realpathSync(t){return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(t)))}async existsPromise(t){return this.baseFs.existsPromise(this.mapToBase(t))}existsSync(t){return this.baseFs.existsSync(this.mapToBase(t))}accessSync(t,r){return this.baseFs.accessSync(this.mapToBase(t),r)}async accessPromise(t,r){return this.baseFs.accessPromise(this.mapToBase(t),r)}async statPromise(t,r){return this.baseFs.statPromise(this.mapToBase(t),r)}statSync(t,r){return this.baseFs.statSync(this.mapToBase(t),r)}async fstatPromise(t,r){return this.baseFs.fstatPromise(t,r)}fstatSync(t,r){return this.baseFs.fstatSync(t,r)}lstatPromise(t,r){return this.baseFs.lstatPromise(this.mapToBase(t),r)}lstatSync(t,r){return this.baseFs.lstatSync(this.mapToBase(t),r)}async fchmodPromise(t,r){return this.baseFs.fchmodPromise(t,r)}fchmodSync(t,r){return this.baseFs.fchmodSync(t,r)}async chmodPromise(t,r){return this.baseFs.chmodPromise(this.mapToBase(t),r)}chmodSync(t,r){return this.baseFs.chmodSync(this.mapToBase(t),r)}async fchownPromise(t,r,s){return this.baseFs.fchownPromise(t,r,s)}fchownSync(t,r,s){return this.baseFs.fchownSync(t,r,s)}async chownPromise(t,r,s){return this.baseFs.chownPromise(this.mapToBase(t),r,s)}chownSync(t,r,s){return this.baseFs.chownSync(this.mapToBase(t),r,s)}async renamePromise(t,r){return this.baseFs.renamePromise(this.mapToBase(t),this.mapToBase(r))}renameSync(t,r){return this.baseFs.renameSync(this.mapToBase(t),this.mapToBase(r))}async copyFilePromise(t,r,s=0){return this.baseFs.copyFilePromise(this.mapToBase(t),this.mapToBase(r),s)}copyFileSync(t,r,s=0){return this.baseFs.copyFileSync(this.mapToBase(t),this.mapToBase(r),s)}async appendFilePromise(t,r,s){return this.baseFs.appendFilePromise(this.fsMapToBase(t),r,s)}appendFileSync(t,r,s){return this.baseFs.appendFileSync(this.fsMapToBase(t),r,s)}async writeFilePromise(t,r,s){return this.baseFs.writeFilePromise(this.fsMapToBase(t),r,s)}writeFileSync(t,r,s){return this.baseFs.writeFileSync(this.fsMapToBase(t),r,s)}async unlinkPromise(t){return this.baseFs.unlinkPromise(this.mapToBase(t))}unlinkSync(t){return this.baseFs.unlinkSync(this.mapToBase(t))}async utimesPromise(t,r,s){return this.baseFs.utimesPromise(this.mapToBase(t),r,s)}utimesSync(t,r,s){return this.baseFs.utimesSync(this.mapToBase(t),r,s)}async lutimesPromise(t,r,s){return this.baseFs.lutimesPromise(this.mapToBase(t),r,s)}lutimesSync(t,r,s){return this.baseFs.lutimesSync(this.mapToBase(t),r,s)}async mkdirPromise(t,r){return this.baseFs.mkdirPromise(this.mapToBase(t),r)}mkdirSync(t,r){return this.baseFs.mkdirSync(this.mapToBase(t),r)}async rmdirPromise(t,r){return this.baseFs.rmdirPromise(this.mapToBase(t),r)}rmdirSync(t,r){return this.baseFs.rmdirSync(this.mapToBase(t),r)}async rmPromise(t,r){return this.baseFs.rmPromise(this.mapToBase(t),r)}rmSync(t,r){return this.baseFs.rmSync(this.mapToBase(t),r)}async linkPromise(t,r){return this.baseFs.linkPromise(this.mapToBase(t),this.mapToBase(r))}linkSync(t,r){return this.baseFs.linkSync(this.mapToBase(t),this.mapToBase(r))}async symlinkPromise(t,r,s){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkPromise(this.mapToBase(t),a,s);let o=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),g=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),o);return this.baseFs.symlinkPromise(g,a,s)}symlinkSync(t,r,s){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkSync(this.mapToBase(t),a,s);let o=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),g=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),o);return this.baseFs.symlinkSync(g,a,s)}async readFilePromise(t,r){return this.baseFs.readFilePromise(this.fsMapToBase(t),r)}readFileSync(t,r){return this.baseFs.readFileSync(this.fsMapToBase(t),r)}readdirPromise(t,r){return this.baseFs.readdirPromise(this.mapToBase(t),r)}readdirSync(t,r){return this.baseFs.readdirSync(this.mapToBase(t),r)}async readlinkPromise(t){return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(t)))}readlinkSync(t){return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(t)))}async truncatePromise(t,r){return this.baseFs.truncatePromise(this.mapToBase(t),r)}truncateSync(t,r){return this.baseFs.truncateSync(this.mapToBase(t),r)}async ftruncatePromise(t,r){return this.baseFs.ftruncatePromise(t,r)}ftruncateSync(t,r){return this.baseFs.ftruncateSync(t,r)}watch(t,r,s){return this.baseFs.watch(this.mapToBase(t),r,s)}watchFile(t,r,s){return this.baseFs.watchFile(this.mapToBase(t),r,s)}unwatchFile(t,r){return this.baseFs.unwatchFile(this.mapToBase(t),r)}fsMapToBase(t){return typeof t=="number"?t:this.mapToBase(t)}};function HXi(e){let t=e;return typeof e.path=="string"&&(t.path=lc.toPortablePath(e.path)),t}var iRr=class extends rRr{constructor(t=gNc.default){super(),this.realFs=t}getExtractHint(){return!1}getRealPath(){return eRr.root}resolve(t){return eC.resolve(t)}async openPromise(t,r,s){return await new Promise((a,o)=>{this.realFs.open(lc.fromPortablePath(t),r,s,this.makeCallback(a,o))})}openSync(t,r,s){return this.realFs.openSync(lc.fromPortablePath(t),r,s)}async opendirPromise(t,r){return await new Promise((s,a)=>{typeof r<"u"?this.realFs.opendir(lc.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.opendir(lc.fromPortablePath(t),this.makeCallback(s,a))}).then(s=>{let a=s;return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a})}opendirSync(t,r){let a=typeof r<"u"?this.realFs.opendirSync(lc.fromPortablePath(t),r):this.realFs.opendirSync(lc.fromPortablePath(t));return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a}async readPromise(t,r,s=0,a=0,o=-1){return await new Promise((g,p)=>{this.realFs.read(t,r,s,a,o,(f,m)=>{f?p(f):g(m)})})}readSync(t,r,s,a,o){return this.realFs.readSync(t,r,s,a,o)}async writePromise(t,r,s,a,o){return await new Promise((g,p)=>typeof r=="string"?this.realFs.write(t,r,s,this.makeCallback(g,p)):this.realFs.write(t,r,s,a,o,this.makeCallback(g,p)))}writeSync(t,r,s,a,o){return typeof r=="string"?this.realFs.writeSync(t,r,s):this.realFs.writeSync(t,r,s,a,o)}async closePromise(t){await new Promise((r,s)=>{this.realFs.close(t,this.makeCallback(r,s))})}closeSync(t){this.realFs.closeSync(t)}createReadStream(t,r){let s=t!==null?lc.fromPortablePath(t):t;return this.realFs.createReadStream(s,r)}createWriteStream(t,r){let s=t!==null?lc.fromPortablePath(t):t;return this.realFs.createWriteStream(s,r)}async realpathPromise(t){return await new Promise((r,s)=>{this.realFs.realpath(lc.fromPortablePath(t),{},this.makeCallback(r,s))}).then(r=>lc.toPortablePath(r))}realpathSync(t){return lc.toPortablePath(this.realFs.realpathSync(lc.fromPortablePath(t),{}))}async existsPromise(t){return await new Promise(r=>{this.realFs.exists(lc.fromPortablePath(t),r)})}accessSync(t,r){return this.realFs.accessSync(lc.fromPortablePath(t),r)}async accessPromise(t,r){return await new Promise((s,a)=>{this.realFs.access(lc.fromPortablePath(t),r,this.makeCallback(s,a))})}existsSync(t){return this.realFs.existsSync(lc.fromPortablePath(t))}async statPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.stat(lc.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.stat(lc.fromPortablePath(t),this.makeCallback(s,a))})}statSync(t,r){return r?this.realFs.statSync(lc.fromPortablePath(t),r):this.realFs.statSync(lc.fromPortablePath(t))}async fstatPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.fstat(t,r,this.makeCallback(s,a)):this.realFs.fstat(t,this.makeCallback(s,a))})}fstatSync(t,r){return r?this.realFs.fstatSync(t,r):this.realFs.fstatSync(t)}async lstatPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.lstat(lc.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.lstat(lc.fromPortablePath(t),this.makeCallback(s,a))})}lstatSync(t,r){return r?this.realFs.lstatSync(lc.fromPortablePath(t),r):this.realFs.lstatSync(lc.fromPortablePath(t))}async fchmodPromise(t,r){return await new Promise((s,a)=>{this.realFs.fchmod(t,r,this.makeCallback(s,a))})}fchmodSync(t,r){return this.realFs.fchmodSync(t,r)}async chmodPromise(t,r){return await new Promise((s,a)=>{this.realFs.chmod(lc.fromPortablePath(t),r,this.makeCallback(s,a))})}chmodSync(t,r){return this.realFs.chmodSync(lc.fromPortablePath(t),r)}async fchownPromise(t,r,s){return await new Promise((a,o)=>{this.realFs.fchown(t,r,s,this.makeCallback(a,o))})}fchownSync(t,r,s){return this.realFs.fchownSync(t,r,s)}async chownPromise(t,r,s){return await new Promise((a,o)=>{this.realFs.chown(lc.fromPortablePath(t),r,s,this.makeCallback(a,o))})}chownSync(t,r,s){return this.realFs.chownSync(lc.fromPortablePath(t),r,s)}async renamePromise(t,r){return await new Promise((s,a)=>{this.realFs.rename(lc.fromPortablePath(t),lc.fromPortablePath(r),this.makeCallback(s,a))})}renameSync(t,r){return this.realFs.renameSync(lc.fromPortablePath(t),lc.fromPortablePath(r))}async copyFilePromise(t,r,s=0){return await new Promise((a,o)=>{this.realFs.copyFile(lc.fromPortablePath(t),lc.fromPortablePath(r),s,this.makeCallback(a,o))})}copyFileSync(t,r,s=0){return this.realFs.copyFileSync(lc.fromPortablePath(t),lc.fromPortablePath(r),s)}async appendFilePromise(t,r,s){return await new Promise((a,o)=>{let g=typeof t=="string"?lc.fromPortablePath(t):t;s?this.realFs.appendFile(g,r,s,this.makeCallback(a,o)):this.realFs.appendFile(g,r,this.makeCallback(a,o))})}appendFileSync(t,r,s){let a=typeof t=="string"?lc.fromPortablePath(t):t;s?this.realFs.appendFileSync(a,r,s):this.realFs.appendFileSync(a,r)}async writeFilePromise(t,r,s){return await new Promise((a,o)=>{let g=typeof t=="string"?lc.fromPortablePath(t):t;s?this.realFs.writeFile(g,r,s,this.makeCallback(a,o)):this.realFs.writeFile(g,r,this.makeCallback(a,o))})}writeFileSync(t,r,s){let a=typeof t=="string"?lc.fromPortablePath(t):t;s?this.realFs.writeFileSync(a,r,s):this.realFs.writeFileSync(a,r)}async unlinkPromise(t){return await new Promise((r,s)=>{this.realFs.unlink(lc.fromPortablePath(t),this.makeCallback(r,s))})}unlinkSync(t){return this.realFs.unlinkSync(lc.fromPortablePath(t))}async utimesPromise(t,r,s){return await new Promise((a,o)=>{this.realFs.utimes(lc.fromPortablePath(t),r,s,this.makeCallback(a,o))})}utimesSync(t,r,s){this.realFs.utimesSync(lc.fromPortablePath(t),r,s)}async lutimesPromise(t,r,s){return await new Promise((a,o)=>{this.realFs.lutimes(lc.fromPortablePath(t),r,s,this.makeCallback(a,o))})}lutimesSync(t,r,s){this.realFs.lutimesSync(lc.fromPortablePath(t),r,s)}async mkdirPromise(t,r){return await new Promise((s,a)=>{this.realFs.mkdir(lc.fromPortablePath(t),r,this.makeCallback(s,a))})}mkdirSync(t,r){return this.realFs.mkdirSync(lc.fromPortablePath(t),r)}async rmdirPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.rmdir(lc.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.rmdir(lc.fromPortablePath(t),this.makeCallback(s,a))})}rmdirSync(t,r){return this.realFs.rmdirSync(lc.fromPortablePath(t),r)}async rmPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.rm(lc.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.rm(lc.fromPortablePath(t),this.makeCallback(s,a))})}rmSync(t,r){return this.realFs.rmSync(lc.fromPortablePath(t),r)}async linkPromise(t,r){return await new Promise((s,a)=>{this.realFs.link(lc.fromPortablePath(t),lc.fromPortablePath(r),this.makeCallback(s,a))})}linkSync(t,r){return this.realFs.linkSync(lc.fromPortablePath(t),lc.fromPortablePath(r))}async symlinkPromise(t,r,s){return await new Promise((a,o)=>{this.realFs.symlink(lc.fromPortablePath(t.replace(/\/+$/,"")),lc.fromPortablePath(r),s,this.makeCallback(a,o))})}symlinkSync(t,r,s){return this.realFs.symlinkSync(lc.fromPortablePath(t.replace(/\/+$/,"")),lc.fromPortablePath(r),s)}async readFilePromise(t,r){return await new Promise((s,a)=>{let o=typeof t=="string"?lc.fromPortablePath(t):t;this.realFs.readFile(o,r,this.makeCallback(s,a))})}readFileSync(t,r){let s=typeof t=="string"?lc.fromPortablePath(t):t;return this.realFs.readFileSync(s,r)}async readdirPromise(t,r){return await new Promise((s,a)=>{r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdir(lc.fromPortablePath(t),r,this.makeCallback(o=>s(o.map(HXi)),a)):this.realFs.readdir(lc.fromPortablePath(t),r,this.makeCallback(o=>s(o.map(lc.toPortablePath)),a)):this.realFs.readdir(lc.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.readdir(lc.fromPortablePath(t),this.makeCallback(s,a))})}readdirSync(t,r){return r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdirSync(lc.fromPortablePath(t),r).map(HXi):this.realFs.readdirSync(lc.fromPortablePath(t),r).map(lc.toPortablePath):this.realFs.readdirSync(lc.fromPortablePath(t),r):this.realFs.readdirSync(lc.fromPortablePath(t))}async readlinkPromise(t){return await new Promise((r,s)=>{this.realFs.readlink(lc.fromPortablePath(t),this.makeCallback(r,s))}).then(r=>lc.toPortablePath(r))}readlinkSync(t){return lc.toPortablePath(this.realFs.readlinkSync(lc.fromPortablePath(t)))}async truncatePromise(t,r){return await new Promise((s,a)=>{this.realFs.truncate(lc.fromPortablePath(t),r,this.makeCallback(s,a))})}truncateSync(t,r){return this.realFs.truncateSync(lc.fromPortablePath(t),r)}async ftruncatePromise(t,r){return await new Promise((s,a)=>{this.realFs.ftruncate(t,r,this.makeCallback(s,a))})}ftruncateSync(t,r){return this.realFs.ftruncateSync(t,r)}watch(t,r,s){return this.realFs.watch(lc.fromPortablePath(t),r,s)}watchFile(t,r,s){return this.realFs.watchFile(lc.fromPortablePath(t),r,s)}unwatchFile(t,r){return this.realFs.unwatchFile(lc.fromPortablePath(t),r)}makeCallback(t,r){return(s,a)=>{s?r(s):t(a)}}},wNc=/^[0-9]+$/,KNr=/^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/,TNc=/^([^/]+-)?[a-f0-9]+$/,zwt=class e extends nRr{constructor({baseFs:t=new iRr}={}){super(eC),this.baseFs=t}static makeVirtualPath(t,r,s){if(eC.basename(t)!=="__virtual__")throw new Error('Assertion failed: Virtual folders must be named "__virtual__"');if(!eC.basename(r).match(TNc))throw new Error("Assertion failed: Virtual components must be ended by an hexadecimal hash");let o=eC.relative(eC.dirname(t),s).split("/"),g=0;for(;g"u"||(p!==0&&(a+=", "),a+=JSON.stringify(f),a+=": ",a+=eTt(f,m,t,r).replace(/^ +/g,""),p+=1)}return a+="}",a}function xNc(e,t,r){let s=Object.keys(e),a=`${r} `,o="";o+=r,o+=`{ `;let g=0;for(let p=0,f=s.length;p"u"||(g!==0&&(o+=",",o+=` -`),o+=a,o+=JSON.stringify(m),o+=": ",o+=zwt(m,y,t,a).replace(/^ +/g,""),g+=1)}return g!==0&&(o+=` -`),o+=r,o+="}",o}function zwt(e,t,r,s){let{next:a}=qXi[r],o=a[e]||a["*"];return $Xi(t,o,s)}function $Xi(e,t,r){let{collapsed:s}=qXi[t];return Array.isArray(e)?s?dNc(e,t,r):pNc(e,t,r):typeof e=="object"&&e!==null?s?fNc(e,t,r):INc(e,t,r):JSON.stringify(e)}function e4i(e){return $Xi(e,"TOP_LEVEL","")}function qJe(e,t){let r=Array.from(e);Array.isArray(t)||(t=[t]);let s=[];for(let o of t)s.push(r.map(g=>o(g)));let a=r.map((o,g)=>g);return a.sort((o,g)=>{for(let p of s){let f=p[o]p[g]?1:0;if(f!==0)return f}return 0}),a.map(o=>r[o])}function CNc(e){let t=new Map,r=qJe(e.fallbackExclusionList||[],[({name:s,reference:a})=>s,({name:s,reference:a})=>a]);for(let{name:s,reference:a}of r){let o=t.get(s);typeof o>"u"&&t.set(s,o=new Set),o.add(a)}return Array.from(t).map(([s,a])=>[s,Array.from(a)])}function mNc(e){return qJe(e.fallbackPool||[],([t])=>t)}function hNc(e){let t=[];for(let[r,s]of qJe(e.packageRegistry,([a])=>a===null?"0":`1${a}`)){let a=[];t.push([r,a]);for(let[o,{packageLocation:g,packageDependencies:p,packagePeers:f,linkType:m,discardFromLookup:y}]of qJe(s,([B])=>B===null?"0":`1${B}`)){let B=[];r!==null&&o!==null&&!p.has(r)&&B.push([r,o]);for(let[T,O]of qJe(p.entries(),([X])=>X))B.push([T,O]);let v=f&&f.size>0?Array.from(f):void 0,G=y||void 0;a.push([o,{packageLocation:g,packageDependencies:B,packagePeers:v,linkType:m,discardFromLookup:G}])}}return t}function nRr(e){return{__info:["This file is automatically generated. Do not touch it, or risk","your modifications being lost."],dependencyTreeRoots:e.dependencyTreeRoots,enableTopLevelFallback:e.enableTopLevelFallback||!1,ignorePatternData:e.ignorePattern||null,fallbackExclusionList:CNc(e),fallbackPool:mNc(e),packageRegistryData:hNc(e)}}var YNr,_Nc=()=>(typeof YNr>"u"&&(YNr=XXi.default.brotliDecompressSync(Buffer.from("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","base64")).toString()),YNr);function iRr(e,t){return[e?`${e} +`),o+=a,o+=JSON.stringify(m),o+=": ",o+=eTt(m,y,t,a).replace(/^ +/g,""),g+=1)}return g!==0&&(o+=` +`),o+=r,o+="}",o}function eTt(e,t,r,s){let{next:a}=s4i[r],o=a[e]||a["*"];return o4i(t,o,s)}function o4i(e,t,r){let{collapsed:s}=s4i[t];return Array.isArray(e)?s?NNc(e,t,r):RNc(e,t,r):typeof e=="object"&&e!==null?s?DNc(e,t,r):xNc(e,t,r):JSON.stringify(e)}function a4i(e){return o4i(e,"TOP_LEVEL","")}function eUe(e,t){let r=Array.from(e);Array.isArray(t)||(t=[t]);let s=[];for(let o of t)s.push(r.map(g=>o(g)));let a=r.map((o,g)=>g);return a.sort((o,g)=>{for(let p of s){let f=p[o]p[g]?1:0;if(f!==0)return f}return 0}),a.map(o=>r[o])}function kNc(e){let t=new Map,r=eUe(e.fallbackExclusionList||[],[({name:s,reference:a})=>s,({name:s,reference:a})=>a]);for(let{name:s,reference:a}of r){let o=t.get(s);typeof o>"u"&&t.set(s,o=new Set),o.add(a)}return Array.from(t).map(([s,a])=>[s,Array.from(a)])}function GNc(e){return eUe(e.fallbackPool||[],([t])=>t)}function FNc(e){let t=[];for(let[r,s]of eUe(e.packageRegistry,([a])=>a===null?"0":`1${a}`)){let a=[];t.push([r,a]);for(let[o,{packageLocation:g,packageDependencies:p,packagePeers:f,linkType:m,discardFromLookup:y}]of eUe(s,([B])=>B===null?"0":`1${B}`)){let B=[];r!==null&&o!==null&&!p.has(r)&&B.push([r,o]);for(let[T,O]of eUe(p.entries(),([X])=>X))B.push([T,O]);let v=f&&f.size>0?Array.from(f):void 0,k=y||void 0;a.push([o,{packageLocation:g,packageDependencies:B,packagePeers:v,linkType:m,discardFromLookup:k}])}}return t}function lRr(e){return{__info:["This file is automatically generated. Do not touch it, or risk","your modifications being lost."],dependencyTreeRoots:e.dependencyTreeRoots,enableTopLevelFallback:e.enableTopLevelFallback||!1,ignorePatternData:e.ignorePattern||null,fallbackExclusionList:kNc(e),fallbackPool:GNc(e),packageRegistryData:FNc(e)}}var jNr,ZNc=()=>(typeof jNr>"u"&&(jNr=$Xi.default.brotliDecompressSync(Buffer.from("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","base64")).toString()),jNr);function uRr(e,t){return[e?`${e} `:"",`/* eslint-disable */ `,`// @ts-nocheck `,`"use strict"; `,` `,t,` -`,_Nc()].join("")}function yNc(e){return JSON.stringify(e,null,2)}function bNc(e){return`'${e.replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(/\n/g,`\\ -`)}'`}function ENc(e){return[`const RAW_RUNTIME_STATE = -`,`${bNc(e4i(e))}; +`,ZNc()].join("")}function LNc(e){return JSON.stringify(e,null,2)}function VNc(e){return`'${e.replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(/\n/g,`\\ +`)}'`}function WNc(e){return[`const RAW_RUNTIME_STATE = +`,`${VNc(a4i(e))}; `,`function $$SETUP_STATE(hydrateRuntimeState, basePath) { `,` return hydrateRuntimeState(JSON.parse(RAW_RUNTIME_STATE), {basePath: basePath || __dirname}); `,`} -`].join("")}function BNc(){return[`function $$SETUP_STATE(hydrateRuntimeState, basePath) { +`].join("")}function PNc(){return[`function $$SETUP_STATE(hydrateRuntimeState, basePath) { `,` const fs = require('fs'); `,` const path = require('path'); -`,` const pnpDataFilepath = path.resolve(__dirname, ${JSON.stringify(Xwt.pnpData)}); +`,` const pnpDataFilepath = path.resolve(__dirname, ${JSON.stringify(Kwt.pnpData)}); `,` return hydrateRuntimeState(JSON.parse(fs.readFileSync(pnpDataFilepath, 'utf8')), {basePath: basePath || __dirname}); `,`} -`].join("")}function vNc(e){let t=nRr(e),r=ENc(t);return iRr(e.shebang,r)}function SNc(e){let t=nRr(e),r=BNc(),s=iRr(e.shebang,r);return{dataFile:yNc(t),loaderFile:s}}function t4i(e,{basePath:t}){let r=lc.toPortablePath(t),s=$I.resolve(r),a=e.ignorePatternData!==null?new RegExp(e.ignorePatternData):null,o=new Map,g=new Map(e.packageRegistryData.map(([B,v])=>[B,new Map(v.map(([G,T])=>{if(B===null!=(G===null))throw new Error("Assertion failed: The name and reference should be null, or neither should");let O=T.discardFromLookup??!1,X={name:B,reference:G},U=o.get(T.packageLocation);U?(U.discardFromLookup=U.discardFromLookup&&O,O||(U.locator=X)):o.set(T.packageLocation,{locator:X,discardFromLookup:O});let le=null;return[G,{packageDependencies:new Map(T.packageDependencies),packagePeers:new Set(T.packagePeers),linkType:T.linkType,discardFromLookup:O,get packageLocation(){return le||(le=$I.join(s,T.packageLocation))}}]}))])),p=new Map(e.fallbackExclusionList.map(([B,v])=>[B,new Set(v)])),f=new Map(e.fallbackPool),m=e.dependencyTreeRoots,y=e.enableTopLevelFallback;return{basePath:r,dependencyTreeRoots:m,enableTopLevelFallback:y,fallbackExclusionList:p,fallbackPool:f,ignorePattern:a,packageLocatorsByLocations:o,packageRegistry:g}}var r4i=Array.isArray,$Nr=JSON.stringify,qwt=Object.getOwnPropertyNames,$wt=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),VXi=(e,t)=>RegExp.prototype.exec.call(e,t),WXi=(e,...t)=>RegExp.prototype[Symbol.replace].apply(e,t),zNe=(e,...t)=>String.prototype.endsWith.apply(e,t),n4i=(e,...t)=>String.prototype.includes.apply(e,t),i4i=(e,...t)=>String.prototype.lastIndexOf.apply(e,t),Kwt=(e,...t)=>String.prototype.indexOf.apply(e,t),wNc=(e,...t)=>String.prototype.replace.apply(e,t),NCe=(e,...t)=>String.prototype.slice.apply(e,t),Bae=(e,...t)=>String.prototype.startsWith.apply(e,t),TNc=Map,NNc=JSON.parse;function eUe(e,t,r){return class extends r{constructor(...s){super(t(...s)),this.code=e,this.name=`${r.name} [${e}]`}}}var RNc=eUe("ERR_PACKAGE_IMPORT_NOT_DEFINED",(e,t,r)=>`Package import specifier "${e}" is not defined${t?` in package ${t}package.json`:""} imported from ${r}`,TypeError),s4i=eUe("ERR_INVALID_MODULE_SPECIFIER",(e,t,r=void 0)=>`Invalid module "${e}" ${t}${r?` imported from ${r}`:""}`,TypeError),DNc=eUe("ERR_INVALID_PACKAGE_TARGET",(e,t,r,s=!1,a=void 0)=>{let o=typeof r=="string"&&!s&&r.length&&!Bae(r,"./");return t==="."?(UTc.default(s===!1),`Invalid "exports" main target ${$Nr(r)} defined in the package config ${e}package.json${a?` imported from ${a}`:""}${o?'; targets must start with "./"':""}`):`Invalid "${s?"imports":"exports"}" target ${$Nr(r)} defined for '${t}' in the package config ${e}package.json${a?` imported from ${a}`:""}${o?'; targets must start with "./"':""}`},Error),sRr=eUe("ERR_INVALID_PACKAGE_CONFIG",(e,t,r)=>`Invalid package config ${e}${t?` while importing ${t}`:""}${r?`. ${r}`:""}`,Error),xNc=eUe("ERR_PACKAGE_PATH_NOT_EXPORTED",(e,t,r=void 0)=>t==="."?`No "exports" main defined in ${e}package.json${r?` imported from ${r}`:""}`:`Package subpath '${t}' is not defined by "exports" in ${e}package.json${r?` imported from ${r}`:""}`,Error);function kNc(e,t){let r=Object.create(null);for(let s=0;st):e+t}zJe(r,e,s,g,a)}VXi(PXi,NCe(e,2))!==null&&zJe(r,e,s,g,a);let f=new URL(e,s),m=f.pathname,y=new URL(".",s).pathname;if(Bae(m,y)||zJe(r,e,s,g,a),t==="")return f;if(VXi(PXi,t)!==null){let B=o?wNc(r,"*",()=>t):r+t;LNc(B,s,g,a)}return o?new URL(WXi(OXi,f.href,()=>t)):new URL(t,f)}function WNc(e){let t=+e;return`${t}`!==e?!1:t>=0&&t<4294967295}function qNe(e,t,r,s,a,o,g,p){if(typeof t=="string")return VNc(t,r,s,e,a,o,g);if(r4i(t)){if(t.length===0)return null;let f;for(let m=0;mo?-1:o>a||r===-1?1:s===-1||e.length>t.length?-1:t.length>e.length?1:0}function PNc(e,t,r){if(typeof e=="string"||r4i(e))return!0;if(typeof e!="object"||e===null)return!1;let s=qwt(e),a=!1,o=0;for(let g=0;g=m.length&&zNe(t,B)&&o4i(o,m)===1&&i4i(m,"*")===y&&(o=m,g=NCe(t,y,t.length-B.length))}}if(o){let f=r[o],m=qNe(e,f,g,o,s,!0,!1,a);return m==null&&HNr(t,e,s),m}HNr(t,e,s)}function QNc({name:e,base:t,conditions:r,readFileSyncFn:s}){if(e==="#"||Bae(e,"#/")||zNe(e,"/")){let g="is not a valid internal imports specifier name";throw new s4i(e,g,pv.fileURLToPath(t))}let a,o=FNc(t,s);if(o.exists){a=pv.pathToFileURL(o.pjsonPath);let g=o.imports;if(g)if($wt(g,e)&&!n4i(e,"*")){let p=qNe(a,g[e],"",e,t,!1,!0,r);if(p!=null)return p}else{let p="",f,m=qwt(g);for(let y=0;y=B.length&&zNe(e,G)&&o4i(p,B)===1&&i4i(B,"*")===v&&(p=B,f=NCe(e,v,e.length-G.length))}}if(p){let y=g[p],B=qNe(a,y,f,p,t,!0,!0,r);if(B!=null)return B}}}ZNc(e,a,t)}var Fw=(e=>(e.API_ERROR="API_ERROR",e.BUILTIN_NODE_RESOLUTION_FAILED="BUILTIN_NODE_RESOLUTION_FAILED",e.EXPORTS_RESOLUTION_FAILED="EXPORTS_RESOLUTION_FAILED",e.MISSING_DEPENDENCY="MISSING_DEPENDENCY",e.MISSING_PEER_DEPENDENCY="MISSING_PEER_DEPENDENCY",e.QUALIFIED_PATH_RESOLUTION_FAILED="QUALIFIED_PATH_RESOLUTION_FAILED",e.INTERNAL="INTERNAL",e.UNDECLARED_DEPENDENCY="UNDECLARED_DEPENDENCY",e.UNSUPPORTED="UNSUPPORTED",e))(Fw||{}),YNc=new Set(["BUILTIN_NODE_RESOLUTION_FAILED","MISSING_DEPENDENCY","MISSING_PEER_DEPENDENCY","QUALIFIED_PATH_RESOLUTION_FAILED","UNDECLARED_DEPENDENCY"]);function UT(e,t,r={},s){s??=YNc.has(e)?"MODULE_NOT_FOUND":e;let a={configurable:!0,writable:!0,enumerable:!1};return Object.defineProperties(new Error(t),{code:{...a,value:s},pnpCode:{...a,value:e},data:{...a,value:r}})}function XK(e){return lc.normalize(lc.fromPortablePath(e))}var eRr=Symbol("arg flag"),eQ=class e extends Error{constructor(t,r){super(t),this.name="ArgError",this.code=r,Object.setPrototypeOf(this,e.prototype)}};function $Je(e,{argv:t=process.argv.slice(2),permissive:r=!1,stopAtPositional:s=!1}={}){if(!e)throw new eQ("argument specification object is required","ARG_CONFIG_NO_SPEC");let a={_:[]},o={},g={};for(let p of Object.keys(e)){if(!p)throw new eQ("argument key cannot be an empty string","ARG_CONFIG_EMPTY_KEY");if(p[0]!=="-")throw new eQ(`argument key must start with '-' but found: '${p}'`,"ARG_CONFIG_NONOPT_KEY");if(p.length===1)throw new eQ(`argument key must have a name; singular '-' keys are not allowed: ${p}`,"ARG_CONFIG_NONAME_KEY");if(typeof e[p]=="string"){o[p]=e[p];continue}let f=e[p],m=!1;if(Array.isArray(f)&&f.length===1&&typeof f[0]=="function"){let[y]=f;f=(B,v,G=[])=>(G.push(y(B,v,G[G.length-1])),G),m=y===Boolean||y[eRr]===!0}else if(typeof f=="function")m=f===Boolean||f[eRr]===!0;else throw new eQ(`type missing or not a function or valid array type: ${p}`,"ARG_CONFIG_VAD_TYPE");if(p[1]!=="-"&&p.length>2)throw new eQ(`short argument keys (with a single hyphen) must have only one character: ${p}`,"ARG_CONFIG_SHORTOPT_TOOLONG");g[p]=[f,m]}for(let p=0,f=t.length;p0){a._=a._.concat(t.slice(p));break}if(m==="--"){a._=a._.concat(t.slice(p+1));break}if(m.length>1&&m[0]==="-"){let y=m[1]==="-"||m.length===2?[m]:m.slice(1).split("").map(B=>`-${B}`);for(let B=0;B1&&t[p+1][0]==="-"&&!(t[p+1].match(/^-?\d*(\.(?=\d))?\d*$/)&&(X===Number||typeof BigInt<"u"&&X===BigInt))){let le=G===O?"":` (alias for ${O})`;throw new eQ(`option requires argument: ${G}${le}`,"ARG_MISSING_REQUIRED_LONGARG")}a[O]=X(t[p+1],O,a[O]),++p}else a[O]=X(T,O,a[O])}}else a._.push(m)}return a}$Je.flag=e=>(e[eRr]=!0,e);$Je.COUNT=$Je.flag((e,t,r)=>(r||0)+1);$Je.ArgError=eQ;var HNc=$Je;function XNc(e){return JNc(),tRr[e]}var tRr;function JNc(){tRr||(tRr={"--conditions":[],...QXi(UNc()),...QXi(process.execArgv)})}function QXi(e){return HNc({"--conditions":[String],"-C":"--conditions"},{argv:e,permissive:!0})}function UNc(){let e=[],t=KNc(process.env.NODE_OPTIONS||"",e);return e.length,t}function KNc(e,t){let r=[],s=!1,a=!0;for(let o=0;o[B,new Map(v.map(([k,T])=>{if(B===null!=(k===null))throw new Error("Assertion failed: The name and reference should be null, or neither should");let O=T.discardFromLookup??!1,X={name:B,reference:k},U=o.get(T.packageLocation);U?(U.discardFromLookup=U.discardFromLookup&&O,O||(U.locator=X)):o.set(T.packageLocation,{locator:X,discardFromLookup:O});let le=null;return[k,{packageDependencies:new Map(T.packageDependencies),packagePeers:new Set(T.packagePeers),linkType:T.linkType,discardFromLookup:O,get packageLocation(){return le||(le=eC.join(s,T.packageLocation))}}]}))])),p=new Map(e.fallbackExclusionList.map(([B,v])=>[B,new Set(v)])),f=new Map(e.fallbackPool),m=e.dependencyTreeRoots,y=e.enableTopLevelFallback;return{basePath:r,dependencyTreeRoots:m,enableTopLevelFallback:y,fallbackExclusionList:p,fallbackPool:f,ignorePattern:a,packageLocatorsByLocations:o,packageRegistry:g}}var l4i=Array.isArray,sRr=JSON.stringify,tTt=Object.getOwnPropertyNames,rTt=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),YXi=(e,t)=>RegExp.prototype.exec.call(e,t),XXi=(e,...t)=>RegExp.prototype[Symbol.replace].apply(e,t),$Ne=(e,...t)=>String.prototype.endsWith.apply(e,t),u4i=(e,...t)=>String.prototype.includes.apply(e,t),g4i=(e,...t)=>String.prototype.lastIndexOf.apply(e,t),qwt=(e,...t)=>String.prototype.indexOf.apply(e,t),MNc=(e,...t)=>String.prototype.replace.apply(e,t),DCe=(e,...t)=>String.prototype.slice.apply(e,t),kae=(e,...t)=>String.prototype.startsWith.apply(e,t),HNc=Map,YNc=JSON.parse;function rUe(e,t,r){return class extends r{constructor(...s){super(t(...s)),this.code=e,this.name=`${r.name} [${e}]`}}}var XNc=rUe("ERR_PACKAGE_IMPORT_NOT_DEFINED",(e,t,r)=>`Package import specifier "${e}" is not defined${t?` in package ${t}package.json`:""} imported from ${r}`,TypeError),A4i=rUe("ERR_INVALID_MODULE_SPECIFIER",(e,t,r=void 0)=>`Invalid module "${e}" ${t}${r?` imported from ${r}`:""}`,TypeError),JNc=rUe("ERR_INVALID_PACKAGE_TARGET",(e,t,r,s=!1,a=void 0)=>{let o=typeof r=="string"&&!s&&r.length&&!kae(r,"./");return t==="."?(uNc.default(s===!1),`Invalid "exports" main target ${sRr(r)} defined in the package config ${e}package.json${a?` imported from ${a}`:""}${o?'; targets must start with "./"':""}`):`Invalid "${s?"imports":"exports"}" target ${sRr(r)} defined for '${t}' in the package config ${e}package.json${a?` imported from ${a}`:""}${o?'; targets must start with "./"':""}`},Error),gRr=rUe("ERR_INVALID_PACKAGE_CONFIG",(e,t,r)=>`Invalid package config ${e}${t?` while importing ${t}`:""}${r?`. ${r}`:""}`,Error),UNc=rUe("ERR_PACKAGE_PATH_NOT_EXPORTED",(e,t,r=void 0)=>t==="."?`No "exports" main defined in ${e}package.json${r?` imported from ${r}`:""}`:`Package subpath '${t}' is not defined by "exports" in ${e}package.json${r?` imported from ${r}`:""}`,Error);function KNc(e,t){let r=Object.create(null);for(let s=0;st):e+t}$Je(r,e,s,g,a)}YXi(JXi,DCe(e,2))!==null&&$Je(r,e,s,g,a);let f=new URL(e,s),m=f.pathname,y=new URL(".",s).pathname;if(kae(m,y)||$Je(r,e,s,g,a),t==="")return f;if(YXi(JXi,t)!==null){let B=o?MNc(r,"*",()=>t):r+t;$Nc(B,s,g,a)}return o?new URL(XXi(UXi,f.href,()=>t)):new URL(t,f)}function tRc(e){let t=+e;return`${t}`!==e?!1:t>=0&&t<4294967295}function eRe(e,t,r,s,a,o,g,p){if(typeof t=="string")return eRc(t,r,s,e,a,o,g);if(l4i(t)){if(t.length===0)return null;let f;for(let m=0;mo?-1:o>a||r===-1?1:s===-1||e.length>t.length?-1:t.length>e.length?1:0}function rRc(e,t,r){if(typeof e=="string"||l4i(e))return!0;if(typeof e!="object"||e===null)return!1;let s=tTt(e),a=!1,o=0;for(let g=0;g=m.length&&$Ne(t,B)&&d4i(o,m)===1&&g4i(m,"*")===y&&(o=m,g=DCe(t,y,t.length-B.length))}}if(o){let f=r[o],m=eRe(e,f,g,o,s,!0,!1,a);return m==null&&zNr(t,e,s),m}zNr(t,e,s)}function sRc({name:e,base:t,conditions:r,readFileSyncFn:s}){if(e==="#"||kae(e,"#/")||$Ne(e,"/")){let g="is not a valid internal imports specifier name";throw new A4i(e,g,fv.fileURLToPath(t))}let a,o=zNc(t,s);if(o.exists){a=fv.pathToFileURL(o.pjsonPath);let g=o.imports;if(g)if(rTt(g,e)&&!u4i(e,"*")){let p=eRe(a,g[e],"",e,t,!1,!0,r);if(p!=null)return p}else{let p="",f,m=tTt(g);for(let y=0;y=B.length&&$Ne(e,k)&&d4i(p,B)===1&&g4i(B,"*")===v&&(p=B,f=DCe(e,v,e.length-k.length))}}if(p){let y=g[p],B=eRe(a,y,f,p,t,!0,!0,r);if(B!=null)return B}}}qNc(e,a,t)}var Zw=(e=>(e.API_ERROR="API_ERROR",e.BUILTIN_NODE_RESOLUTION_FAILED="BUILTIN_NODE_RESOLUTION_FAILED",e.EXPORTS_RESOLUTION_FAILED="EXPORTS_RESOLUTION_FAILED",e.MISSING_DEPENDENCY="MISSING_DEPENDENCY",e.MISSING_PEER_DEPENDENCY="MISSING_PEER_DEPENDENCY",e.QUALIFIED_PATH_RESOLUTION_FAILED="QUALIFIED_PATH_RESOLUTION_FAILED",e.INTERNAL="INTERNAL",e.UNDECLARED_DEPENDENCY="UNDECLARED_DEPENDENCY",e.UNSUPPORTED="UNSUPPORTED",e))(Zw||{}),oRc=new Set(["BUILTIN_NODE_RESOLUTION_FAILED","MISSING_DEPENDENCY","MISSING_PEER_DEPENDENCY","QUALIFIED_PATH_RESOLUTION_FAILED","UNDECLARED_DEPENDENCY"]);function KT(e,t,r={},s){s??=oRc.has(e)?"MODULE_NOT_FOUND":e;let a={configurable:!0,writable:!0,enumerable:!1};return Object.defineProperties(new Error(t),{code:{...a,value:s},pnpCode:{...a,value:e},data:{...a,value:r}})}function qK(e){return lc.normalize(lc.fromPortablePath(e))}var oRr=Symbol("arg flag"),r5=class e extends Error{constructor(t,r){super(t),this.name="ArgError",this.code=r,Object.setPrototypeOf(this,e.prototype)}};function tUe(e,{argv:t=process.argv.slice(2),permissive:r=!1,stopAtPositional:s=!1}={}){if(!e)throw new r5("argument specification object is required","ARG_CONFIG_NO_SPEC");let a={_:[]},o={},g={};for(let p of Object.keys(e)){if(!p)throw new r5("argument key cannot be an empty string","ARG_CONFIG_EMPTY_KEY");if(p[0]!=="-")throw new r5(`argument key must start with '-' but found: '${p}'`,"ARG_CONFIG_NONOPT_KEY");if(p.length===1)throw new r5(`argument key must have a name; singular '-' keys are not allowed: ${p}`,"ARG_CONFIG_NONAME_KEY");if(typeof e[p]=="string"){o[p]=e[p];continue}let f=e[p],m=!1;if(Array.isArray(f)&&f.length===1&&typeof f[0]=="function"){let[y]=f;f=(B,v,k=[])=>(k.push(y(B,v,k[k.length-1])),k),m=y===Boolean||y[oRr]===!0}else if(typeof f=="function")m=f===Boolean||f[oRr]===!0;else throw new r5(`type missing or not a function or valid array type: ${p}`,"ARG_CONFIG_VAD_TYPE");if(p[1]!=="-"&&p.length>2)throw new r5(`short argument keys (with a single hyphen) must have only one character: ${p}`,"ARG_CONFIG_SHORTOPT_TOOLONG");g[p]=[f,m]}for(let p=0,f=t.length;p0){a._=a._.concat(t.slice(p));break}if(m==="--"){a._=a._.concat(t.slice(p+1));break}if(m.length>1&&m[0]==="-"){let y=m[1]==="-"||m.length===2?[m]:m.slice(1).split("").map(B=>`-${B}`);for(let B=0;B1&&t[p+1][0]==="-"&&!(t[p+1].match(/^-?\d*(\.(?=\d))?\d*$/)&&(X===Number||typeof BigInt<"u"&&X===BigInt))){let le=k===O?"":` (alias for ${O})`;throw new r5(`option requires argument: ${k}${le}`,"ARG_MISSING_REQUIRED_LONGARG")}a[O]=X(t[p+1],O,a[O]),++p}else a[O]=X(T,O,a[O])}}else a._.push(m)}return a}tUe.flag=e=>(e[oRr]=!0,e);tUe.COUNT=tUe.flag((e,t,r)=>(r||0)+1);tUe.ArgError=r5;var aRc=tUe;function cRc(e){return lRc(),aRr[e]}var aRr;function lRc(){aRr||(aRr={"--conditions":[],...jXi(uRc()),...jXi(process.execArgv)})}function jXi(e){return aRc({"--conditions":[String],"-C":"--conditions"},{argv:e,permissive:!0})}function uRc(){let e=[],t=gRc(process.env.NODE_OPTIONS||"",e);return e.length,t}function gRc(e,t){let r=[],s=!1,a=!0;for(let o=0;oparseInt(e,10)),jNc=XNr>19||XNr===19&&YXi>=2||XNr===18&&YXi>=13;function zNc(e){if(process.env.WATCH_REPORT_DEPENDENCIES&&process.send)if(e=e.map(t=>lc.fromPortablePath(Uwt.resolveVirtual(lc.toPortablePath(t)))),jNc)process.send({"watch:require":e});else for(let t of e)process.send({"watch:require":t})}function a4i(e,t){let r=Number(process.env.PNP_ALWAYS_WARN_ON_FALLBACK)>0,s=Number(process.env.PNP_DEBUG_LEVEL),a=/^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:node:)?(?:@[^/]+\/)?[^/]+)\/*(.*|)$/,o=/^(\/|\.{1,2}(\/|$))/,g=/\/$/,p=/^\.{0,2}\//,f={name:null,reference:null},m=[],y=new Set;if(e.enableTopLevelFallback===!0&&m.push(f),t.compatibilityMode!==!1)for(let Ar of["react-scripts","gatsby"]){let or=e.packageRegistry.get(Ar);if(or)for(let Fr of or.keys()){if(Fr===null)throw new Error("Assertion failed: This reference shouldn't be null");m.push({name:Ar,reference:Fr})}}let{ignorePattern:B,packageRegistry:v,packageLocatorsByLocations:G}=e;function T(Ar,or){return{fn:Ar,args:or,error:null,result:null}}function O(Ar){let or=process.stderr?.hasColors?.()??process.stdout.isTTY,Fr=(In,Br)=>`\x1B[${In}m${Br}\x1B[0m`,$r=Ar.error;console.error($r?Fr("31;1",`\u2716 ${Ar.error?.message.replace(/\n.*/s,"")}`):Fr("33;1","\u203C Resolution")),Ar.args.length>0&&console.error();for(let In of Ar.args)console.error(` ${Fr("37;1","In \u2190")} ${FXi.inspect(In,{colors:or,compact:!0})}`);Ar.result&&(console.error(),console.error(` ${Fr("37;1","Out \u2192")} ${FXi.inspect(Ar.result,{colors:or,compact:!0})}`));let Or=new Error().stack.match(/(?<=^ +)at.*/gm)?.slice(2)??[];if(Or.length>0){console.error();for(let In of Or)console.error(` ${Fr("38;5;244",In)}`)}console.error()}function X(Ar,or){if(t.allowDebug===!1)return or;if(Number.isFinite(s)){if(s>=2)return(...Fr)=>{let $r=T(Ar,Fr);try{return $r.result=or(...Fr)}catch(Or){throw $r.error=Or}finally{O($r)}};if(s>=1)return(...Fr)=>{try{return or(...Fr)}catch($r){let Or=T(Ar,Fr);throw Or.error=$r,O(Or),$r}}}return or}function U(Ar){let or=x(Ar);if(!or)throw UT(Fw.INTERNAL,"Couldn't find a matching entry in the dependency tree for the specified parent (this is probably an internal error)");return or}function le(Ar){if(Ar.name===null)return!0;for(let or of e.dependencyTreeRoots)if(or.name===Ar.name&&or.reference===Ar.reference)return!0;return!1}let ae=new Set(["node","require",...XNc("--conditions")]);function ge(Ar,or=ae,Fr){let $r=Je($I.join(Ar,"internal.js"),{resolveIgnored:!0,includeDiscardFromLookup:!0});if($r===null)throw UT(Fw.INTERNAL,`The locator that owns the "${Ar}" path can't be found inside the dependency tree (this is probably an internal error)`);let{packageLocation:Or}=U($r),In=$I.join(Or,Xwt.manifest);if(!t.fakeFs.existsSync(In))return null;let Br=JSON.parse(t.fakeFs.readFileSync(In,"utf8"));if(Br.exports==null)return null;let tr=$I.contains(Or,Ar);if(tr===null)throw UT(Fw.INTERNAL,"unqualifiedPath doesn't contain the packageLocation (this is probably an internal error)");tr!=="."&&!p.test(tr)&&(tr=`./${tr}`);try{let gn=MNc({packageJSONUrl:pv.pathToFileURL(lc.fromPortablePath(In)),packageSubpath:tr,exports:Br.exports,base:Fr?pv.pathToFileURL(lc.fromPortablePath(Fr)):null,conditions:or});return lc.toPortablePath(pv.fileURLToPath(gn))}catch(gn){throw UT(Fw.EXPORTS_RESOLUTION_FAILED,gn.message,{unqualifiedPath:XK(Ar),locator:$r,pkgJson:Br,subpath:XK(tr),conditions:or},gn.code)}}function fe(Ar,or,{extensions:Fr}){let $r;try{or.push(Ar),$r=t.fakeFs.statSync(Ar)}catch{}if($r&&!$r.isDirectory())return t.fakeFs.realpathSync(Ar);if($r&&$r.isDirectory()){let Or;try{Or=JSON.parse(t.fakeFs.readFileSync($I.join(Ar,Xwt.manifest),"utf8"))}catch{}let In;if(Or&&Or.main&&(In=$I.resolve(Ar,Or.main)),In&&In!==Ar){let Br=fe(In,or,{extensions:Fr});if(Br!==null)return Br}}for(let Or=0,In=Fr.length;Or{let tr=JSON.stringify(Br.name);if($r.has(tr))return;$r.add(tr);let gn=et(Br);for(let Gn of gn)if(U(Gn).packagePeers.has(Ar))Or(Gn);else{let Zi=Fr.get(Gn.name);typeof Zi>"u"&&Fr.set(Gn.name,Zi=new Set),Zi.add(Gn.reference)}};Or(or);let In=[];for(let Br of[...Fr.keys()].sort())for(let tr of[...Fr.get(Br)].sort())In.push({name:Br,reference:tr});return In}function Je(Ar,{resolveIgnored:or=!1,includeDiscardFromLookup:Fr=!1}={}){if(be(Ar)&&!or)return null;let $r=$I.relative(e.basePath,Ar);$r.match(o)||($r=`./${$r}`),$r.endsWith("/")||($r=`${$r}/`);do{let Or=G.get($r);if(typeof Or>"u"||Or.discardFromLookup&&!Fr){$r=$r.substring(0,$r.lastIndexOf("/",$r.length-2)+1);continue}return Or.locator}while($r!=="");return null}function Xe(Ar){try{return t.fakeFs.readFileSync(lc.toPortablePath(Ar),"utf8")}catch(or){if(or.code==="ENOENT")return;throw or}}function ft(Ar,or,{considerBuiltins:Fr=!0}={}){if(Ar.startsWith("#"))throw new Error("resolveToUnqualified can not handle private import mappings");if(Ar==="pnpapi")return lc.toPortablePath(t.pnpapiResolution);if(Fr&&TCe.isBuiltin(Ar))return null;let $r=XK(Ar),Or=or&&XK(or);if(or&&be(or)&&(!$I.isAbsolute(Ar)||Je(Ar)===null)){let tr=he(Ar,or);if(tr===!1)throw UT(Fw.BUILTIN_NODE_RESOLUTION_FAILED,`The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer was explicitely ignored by the regexp) +`),r}var[qNr,zXi]=process.versions.node.split(".").map(e=>parseInt(e,10)),ARc=qNr>19||qNr===19&&zXi>=2||qNr===18&&zXi>=13;function dRc(e){if(process.env.WATCH_REPORT_DEPENDENCIES&&process.send)if(e=e.map(t=>lc.fromPortablePath(zwt.resolveVirtual(lc.toPortablePath(t)))),ARc)process.send({"watch:require":e});else for(let t of e)process.send({"watch:require":t})}function p4i(e,t){let r=Number(process.env.PNP_ALWAYS_WARN_ON_FALLBACK)>0,s=Number(process.env.PNP_DEBUG_LEVEL),a=/^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:node:)?(?:@[^/]+\/)?[^/]+)\/*(.*|)$/,o=/^(\/|\.{1,2}(\/|$))/,g=/\/$/,p=/^\.{0,2}\//,f={name:null,reference:null},m=[],y=new Set;if(e.enableTopLevelFallback===!0&&m.push(f),t.compatibilityMode!==!1)for(let Ar of["react-scripts","gatsby"]){let or=e.packageRegistry.get(Ar);if(or)for(let Fr of or.keys()){if(Fr===null)throw new Error("Assertion failed: This reference shouldn't be null");m.push({name:Ar,reference:Fr})}}let{ignorePattern:B,packageRegistry:v,packageLocatorsByLocations:k}=e;function T(Ar,or){return{fn:Ar,args:or,error:null,result:null}}function O(Ar){let or=process.stderr?.hasColors?.()??process.stdout.isTTY,Fr=(In,Br)=>`\x1B[${In}m${Br}\x1B[0m`,$r=Ar.error;console.error($r?Fr("31;1",`\u2716 ${Ar.error?.message.replace(/\n.*/s,"")}`):Fr("33;1","\u203C Resolution")),Ar.args.length>0&&console.error();for(let In of Ar.args)console.error(` ${Fr("37;1","In \u2190")} ${QXi.inspect(In,{colors:or,compact:!0})}`);Ar.result&&(console.error(),console.error(` ${Fr("37;1","Out \u2192")} ${QXi.inspect(Ar.result,{colors:or,compact:!0})}`));let Or=new Error().stack.match(/(?<=^ +)at.*/gm)?.slice(2)??[];if(Or.length>0){console.error();for(let In of Or)console.error(` ${Fr("38;5;244",In)}`)}console.error()}function X(Ar,or){if(t.allowDebug===!1)return or;if(Number.isFinite(s)){if(s>=2)return(...Fr)=>{let $r=T(Ar,Fr);try{return $r.result=or(...Fr)}catch(Or){throw $r.error=Or}finally{O($r)}};if(s>=1)return(...Fr)=>{try{return or(...Fr)}catch($r){let Or=T(Ar,Fr);throw Or.error=$r,O(Or),$r}}}return or}function U(Ar){let or=x(Ar);if(!or)throw KT(Zw.INTERNAL,"Couldn't find a matching entry in the dependency tree for the specified parent (this is probably an internal error)");return or}function le(Ar){if(Ar.name===null)return!0;for(let or of e.dependencyTreeRoots)if(or.name===Ar.name&&or.reference===Ar.reference)return!0;return!1}let ae=new Set(["node","require",...cRc("--conditions")]);function ge(Ar,or=ae,Fr){let $r=Je(eC.join(Ar,"internal.js"),{resolveIgnored:!0,includeDiscardFromLookup:!0});if($r===null)throw KT(Zw.INTERNAL,`The locator that owns the "${Ar}" path can't be found inside the dependency tree (this is probably an internal error)`);let{packageLocation:Or}=U($r),In=eC.join(Or,Kwt.manifest);if(!t.fakeFs.existsSync(In))return null;let Br=JSON.parse(t.fakeFs.readFileSync(In,"utf8"));if(Br.exports==null)return null;let tr=eC.contains(Or,Ar);if(tr===null)throw KT(Zw.INTERNAL,"unqualifiedPath doesn't contain the packageLocation (this is probably an internal error)");tr!=="."&&!p.test(tr)&&(tr=`./${tr}`);try{let gn=iRc({packageJSONUrl:fv.pathToFileURL(lc.fromPortablePath(In)),packageSubpath:tr,exports:Br.exports,base:Fr?fv.pathToFileURL(lc.fromPortablePath(Fr)):null,conditions:or});return lc.toPortablePath(fv.fileURLToPath(gn))}catch(gn){throw KT(Zw.EXPORTS_RESOLUTION_FAILED,gn.message,{unqualifiedPath:qK(Ar),locator:$r,pkgJson:Br,subpath:qK(tr),conditions:or},gn.code)}}function fe(Ar,or,{extensions:Fr}){let $r;try{or.push(Ar),$r=t.fakeFs.statSync(Ar)}catch{}if($r&&!$r.isDirectory())return t.fakeFs.realpathSync(Ar);if($r&&$r.isDirectory()){let Or;try{Or=JSON.parse(t.fakeFs.readFileSync(eC.join(Ar,Kwt.manifest),"utf8"))}catch{}let In;if(Or&&Or.main&&(In=eC.resolve(Ar,Or.main)),In&&In!==Ar){let Br=fe(In,or,{extensions:Fr});if(Br!==null)return Br}}for(let Or=0,In=Fr.length;Or{let tr=JSON.stringify(Br.name);if($r.has(tr))return;$r.add(tr);let gn=et(Br);for(let Gn of gn)if(U(Gn).packagePeers.has(Ar))Or(Gn);else{let Zi=Fr.get(Gn.name);typeof Zi>"u"&&Fr.set(Gn.name,Zi=new Set),Zi.add(Gn.reference)}};Or(or);let In=[];for(let Br of[...Fr.keys()].sort())for(let tr of[...Fr.get(Br)].sort())In.push({name:Br,reference:tr});return In}function Je(Ar,{resolveIgnored:or=!1,includeDiscardFromLookup:Fr=!1}={}){if(be(Ar)&&!or)return null;let $r=eC.relative(e.basePath,Ar);$r.match(o)||($r=`./${$r}`),$r.endsWith("/")||($r=`${$r}/`);do{let Or=k.get($r);if(typeof Or>"u"||Or.discardFromLookup&&!Fr){$r=$r.substring(0,$r.lastIndexOf("/",$r.length-2)+1);continue}return Or.locator}while($r!=="");return null}function Xe(Ar){try{return t.fakeFs.readFileSync(lc.toPortablePath(Ar),"utf8")}catch(or){if(or.code==="ENOENT")return;throw or}}function ft(Ar,or,{considerBuiltins:Fr=!0}={}){if(Ar.startsWith("#"))throw new Error("resolveToUnqualified can not handle private import mappings");if(Ar==="pnpapi")return lc.toPortablePath(t.pnpapiResolution);if(Fr&&RCe.isBuiltin(Ar))return null;let $r=qK(Ar),Or=or&&qK(or);if(or&&be(or)&&(!eC.isAbsolute(Ar)||Je(Ar)===null)){let tr=he(Ar,or);if(tr===!1)throw KT(Zw.BUILTIN_NODE_RESOLUTION_FAILED,`The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer was explicitely ignored by the regexp) Require request: "${$r}" Required by: ${Or} -`,{request:$r,issuer:Or});return lc.toPortablePath(tr)}let In,Br=Ar.match(a);if(Br){if(!or)throw UT(Fw.API_ERROR,"The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute",{request:$r,issuer:Or});let[,tr,gn]=Br,Gn=Je(or);if(!Gn){let vi=he(Ar,or);if(vi===!1)throw UT(Fw.BUILTIN_NODE_RESOLUTION_FAILED,`The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer doesn't seem to be part of the Yarn-managed dependency tree). +`,{request:$r,issuer:Or});return lc.toPortablePath(tr)}let In,Br=Ar.match(a);if(Br){if(!or)throw KT(Zw.API_ERROR,"The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute",{request:$r,issuer:Or});let[,tr,gn]=Br,Gn=Je(or);if(!Gn){let vi=he(Ar,or);if(vi===!1)throw KT(Zw.BUILTIN_NODE_RESOLUTION_FAILED,`The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer doesn't seem to be part of the Yarn-managed dependency tree). Require path: "${$r}" Required by: ${Or} -`,{request:$r,issuer:Or});return lc.toPortablePath(vi)}let Zi=U(Gn).packageDependencies.get(tr),Za=null;if(Zi==null&&Gn.name!==null){let vi=e.fallbackExclusionList.get(Gn.name);if(!vi||!vi.has(Gn.reference)){for(let Yu=0,YA=m.length;Yule(Qu))?ka=UT(Fw.MISSING_PEER_DEPENDENCY,`${Gn.name} tried to access ${tr} (a peer dependency) but it isn't provided by your application; this makes the require call ambiguous and unsound. +`,{request:$r,issuer:Or,dependencyName:tr});else{let vi=Ue(tr,Gn);vi.every(Hu=>le(Hu))?xa=KT(Zw.MISSING_PEER_DEPENDENCY,`${Gn.name} tried to access ${tr} (a peer dependency) but it isn't provided by your application; this makes the require call ambiguous and unsound. Required package: ${tr}${tr!==$r?` (via "${$r}")`:""} Required by: ${Gn.name}@${Gn.reference} (via ${Or}) -${vi.map(Qu=>`Ancestor breaking the chain: ${Qu.name}@${Qu.reference} +${vi.map(Hu=>`Ancestor breaking the chain: ${Hu.name}@${Hu.reference} `).join("")} -`,{request:$r,issuer:Or,issuerLocator:Object.assign({},Gn),dependencyName:tr,brokenAncestors:vi}):ka=UT(Fw.MISSING_PEER_DEPENDENCY,`${Gn.name} tried to access ${tr} (a peer dependency) but it isn't provided by its ancestors; this makes the require call ambiguous and unsound. +`,{request:$r,issuer:Or,issuerLocator:Object.assign({},Gn),dependencyName:tr,brokenAncestors:vi}):xa=KT(Zw.MISSING_PEER_DEPENDENCY,`${Gn.name} tried to access ${tr} (a peer dependency) but it isn't provided by its ancestors; this makes the require call ambiguous and unsound. Required package: ${tr}${tr!==$r?` (via "${$r}")`:""} Required by: ${Gn.name}@${Gn.reference} (via ${Or}) -${vi.map(Qu=>`Ancestor breaking the chain: ${Qu.name}@${Qu.reference} +${vi.map(Hu=>`Ancestor breaking the chain: ${Hu.name}@${Hu.reference} `).join("")} -`,{request:$r,issuer:Or,issuerLocator:Object.assign({},Gn),dependencyName:tr,brokenAncestors:vi})}else Zi===void 0&&(!Fr&&TCe.isBuiltin(Ar)?le(Gn)?ka=UT(Fw.UNDECLARED_DEPENDENCY,`Your application tried to access ${tr}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${tr} isn't otherwise declared in your dependencies, this makes the require call ambiguous and unsound. +`,{request:$r,issuer:Or,issuerLocator:Object.assign({},Gn),dependencyName:tr,brokenAncestors:vi})}else Zi===void 0&&(!Fr&&RCe.isBuiltin(Ar)?le(Gn)?xa=KT(Zw.UNDECLARED_DEPENDENCY,`Your application tried to access ${tr}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${tr} isn't otherwise declared in your dependencies, this makes the require call ambiguous and unsound. Required package: ${tr}${tr!==$r?` (via "${$r}")`:""} Required by: ${Or} -`,{request:$r,issuer:Or,dependencyName:tr}):ka=UT(Fw.UNDECLARED_DEPENDENCY,`${Gn.name} tried to access ${tr}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${tr} isn't otherwise declared in ${Gn.name}'s dependencies, this makes the require call ambiguous and unsound. +`,{request:$r,issuer:Or,dependencyName:tr}):xa=KT(Zw.UNDECLARED_DEPENDENCY,`${Gn.name} tried to access ${tr}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${tr} isn't otherwise declared in ${Gn.name}'s dependencies, this makes the require call ambiguous and unsound. Required package: ${tr}${tr!==$r?` (via "${$r}")`:""} Required by: ${Or} -`,{request:$r,issuer:Or,issuerLocator:Object.assign({},Gn),dependencyName:tr}):le(Gn)?ka=UT(Fw.UNDECLARED_DEPENDENCY,`Your application tried to access ${tr}, but it isn't declared in your dependencies; this makes the require call ambiguous and unsound. +`,{request:$r,issuer:Or,issuerLocator:Object.assign({},Gn),dependencyName:tr}):le(Gn)?xa=KT(Zw.UNDECLARED_DEPENDENCY,`Your application tried to access ${tr}, but it isn't declared in your dependencies; this makes the require call ambiguous and unsound. Required package: ${tr}${tr!==$r?` (via "${$r}")`:""} Required by: ${Or} -`,{request:$r,issuer:Or,dependencyName:tr}):ka=UT(Fw.UNDECLARED_DEPENDENCY,`${Gn.name} tried to access ${tr}, but it isn't declared in its dependencies; this makes the require call ambiguous and unsound. +`,{request:$r,issuer:Or,dependencyName:tr}):xa=KT(Zw.UNDECLARED_DEPENDENCY,`${Gn.name} tried to access ${tr}, but it isn't declared in its dependencies; this makes the require call ambiguous and unsound. Required package: ${tr}${tr!==$r?` (via "${$r}")`:""} Required by: ${Gn.name}@${Gn.reference} (via ${Or}) -`,{request:$r,issuer:Or,issuerLocator:Object.assign({},Gn),dependencyName:tr}));if(Zi==null){if(Za===null||ka===null)throw ka||new Error("Assertion failed: Expected an error to have been set");Zi=Za;let vi=ka.message.replace(/\n.*/g,"");ka.message=vi,!y.has(vi)&&s!==0&&(y.add(vi),process.emitWarning(ka))}let Qs=Array.isArray(Zi)?{name:Zi[0],reference:Zi[1]}:{name:tr,reference:Zi},lr=U(Qs);if(!lr.packageLocation)throw UT(Fw.MISSING_DEPENDENCY,`A dependency seems valid but didn't get installed for some reason. This might be caused by a partial install, such as dev vs prod. +`,{request:$r,issuer:Or,issuerLocator:Object.assign({},Gn),dependencyName:tr}));if(Zi==null){if(Fa===null||xa===null)throw xa||new Error("Assertion failed: Expected an error to have been set");Zi=Fa;let vi=xa.message.replace(/\n.*/g,"");xa.message=vi,!y.has(vi)&&s!==0&&(y.add(vi),process.emitWarning(xa))}let Qs=Array.isArray(Zi)?{name:Zi[0],reference:Zi[1]}:{name:tr,reference:Zi},lr=U(Qs);if(!lr.packageLocation)throw KT(Zw.MISSING_DEPENDENCY,`A dependency seems valid but didn't get installed for some reason. This might be caused by a partial install, such as dev vs prod. Required package: ${Qs.name}@${Qs.reference}${Qs.name!==$r?` (via "${$r}")`:""} Required by: ${Gn.name}@${Gn.reference} (via ${Or}) -`,{request:$r,issuer:Or,dependencyLocator:Object.assign({},Qs)});let ga=lr.packageLocation;gn?In=$I.join(ga,gn):In=ga}else if($I.isAbsolute(Ar))In=$I.normalize(Ar);else{if(!or)throw UT(Fw.API_ERROR,"The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute",{request:$r,issuer:Or});let tr=$I.resolve(or);or.match(g)?In=$I.normalize($I.join(tr,Ar)):In=$I.normalize($I.join($I.dirname(tr),Ar))}return $I.normalize(In)}function Gt(Ar,or,Fr=ae,$r){if(o.test(Ar))return or;let Or=ge(or,Fr,$r);return Or?$I.normalize(Or):or}function er(Ar,{extensions:or=Object.keys(TCe.Module._extensions)}={}){let Fr=[],$r=fe(Ar,Fr,{extensions:or});if($r)return $I.normalize($r);{zNc(Fr.map(Br=>lc.fromPortablePath(Br)));let Or=XK(Ar),In=Je(Ar);if(In){let{packageLocation:Br}=U(In),tr=!0;try{t.fakeFs.accessSync(Br)}catch(gn){if(gn?.code==="ENOENT")tr=!1;else{let Gn=(gn?.message??gn??"empty exception thrown").replace(/^[A-Z]/,we=>we.toLowerCase());throw UT(Fw.QUALIFIED_PATH_RESOLUTION_FAILED,`Required package exists but could not be accessed (${Gn}). +`,{request:$r,issuer:Or,dependencyLocator:Object.assign({},Qs)});let ua=lr.packageLocation;gn?In=eC.join(ua,gn):In=ua}else if(eC.isAbsolute(Ar))In=eC.normalize(Ar);else{if(!or)throw KT(Zw.API_ERROR,"The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute",{request:$r,issuer:Or});let tr=eC.resolve(or);or.match(g)?In=eC.normalize(eC.join(tr,Ar)):In=eC.normalize(eC.join(eC.dirname(tr),Ar))}return eC.normalize(In)}function Gt(Ar,or,Fr=ae,$r){if(o.test(Ar))return or;let Or=ge(or,Fr,$r);return Or?eC.normalize(Or):or}function er(Ar,{extensions:or=Object.keys(RCe.Module._extensions)}={}){let Fr=[],$r=fe(Ar,Fr,{extensions:or});if($r)return eC.normalize($r);{dRc(Fr.map(Br=>lc.fromPortablePath(Br)));let Or=qK(Ar),In=Je(Ar);if(In){let{packageLocation:Br}=U(In),tr=!0;try{t.fakeFs.accessSync(Br)}catch(gn){if(gn?.code==="ENOENT")tr=!1;else{let Gn=(gn?.message??gn??"empty exception thrown").replace(/^[A-Z]/,we=>we.toLowerCase());throw KT(Zw.QUALIFIED_PATH_RESOLUTION_FAILED,`Required package exists but could not be accessed (${Gn}). Missing package: ${In.name}@${In.reference} -Expected package location: ${XK(Br)} -`,{unqualifiedPath:Or,extensions:or})}}if(!tr){let gn=Br.includes("/unplugged/")?"Required unplugged package missing from disk. This may happen when switching branches without running installs (unplugged packages must be fully materialized on disk to work).":"Required package missing from disk. If you keep your packages inside your repository then restarting the Node process may be enough. Otherwise, try to run an install first.";throw UT(Fw.QUALIFIED_PATH_RESOLUTION_FAILED,`${gn} +Expected package location: ${qK(Br)} +`,{unqualifiedPath:Or,extensions:or})}}if(!tr){let gn=Br.includes("/unplugged/")?"Required unplugged package missing from disk. This may happen when switching branches without running installs (unplugged packages must be fully materialized on disk to work).":"Required package missing from disk. If you keep your packages inside your repository then restarting the Node process may be enough. Otherwise, try to run an install first.";throw KT(Zw.QUALIFIED_PATH_RESOLUTION_FAILED,`${gn} Missing package: ${In.name}@${In.reference} -Expected package location: ${XK(Br)} -`,{unqualifiedPath:Or,extensions:or})}}throw UT(Fw.QUALIFIED_PATH_RESOLUTION_FAILED,`Qualified path resolution failed: we looked for the following paths, but none could be accessed. +Expected package location: ${qK(Br)} +`,{unqualifiedPath:Or,extensions:or})}}throw KT(Zw.QUALIFIED_PATH_RESOLUTION_FAILED,`Qualified path resolution failed: we looked for the following paths, but none could be accessed. Source path: ${Or} -${Fr.map(Br=>`Not found: ${XK(Br)} -`).join("")}`,{unqualifiedPath:Or,extensions:or})}}function Ur(Ar,or,Fr){if(!or)throw new Error("Assertion failed: An issuer is required to resolve private import mappings");let $r=QNc({name:Ar,base:pv.pathToFileURL(lc.fromPortablePath(or)),conditions:Fr.conditions??ae,readFileSyncFn:Xe});if($r instanceof URL)return er(lc.toPortablePath(pv.fileURLToPath($r)),{extensions:Fr.extensions});if($r.startsWith("#"))throw new Error("Mapping from one private import to another isn't allowed");return Ot($r,or,Fr)}function Ot(Ar,or,Fr={}){try{if(Ar.startsWith("#"))return Ur(Ar,or,Fr);let{considerBuiltins:$r,extensions:Or,conditions:In}=Fr,Br=ft(Ar,or,{considerBuiltins:$r});if(Ar==="pnpapi")return Br;if(Br===null)return null;let tr=()=>or!==null?be(or):!1,gn=(!$r||!TCe.isBuiltin(Ar))&&!tr()?Gt(Ar,Br,In,or):Br;return er(gn,{extensions:Or})}catch($r){throw Object.hasOwn($r,"pnpCode")&&Object.assign($r.data,{request:XK(Ar),issuer:or&&XK(or)}),$r}}function dr(Ar){let or=$I.normalize(Ar),Fr=Uwt.resolveVirtual(or);return Fr!==or?Fr:null}return{VERSIONS:Te,topLevel:ke,getLocator:(Ar,or)=>Array.isArray(or)?{name:or[0],reference:or[1]}:{name:Ar,reference:or},getDependencyTreeRoots:()=>[...e.dependencyTreeRoots],getAllLocators(){let Ar=[];for(let[or,Fr]of v)for(let $r of Fr.keys())or!==null&&$r!==null&&Ar.push({name:or,reference:$r});return Ar},getPackageInformation:Ar=>{let or=x(Ar);if(or===null)return null;let Fr=lc.fromPortablePath(or.packageLocation);return{...or,packageLocation:Fr}},findPackageLocator:Ar=>Je(lc.toPortablePath(Ar)),resolveToUnqualified:X("resolveToUnqualified",(Ar,or,Fr)=>{let $r=or!==null?lc.toPortablePath(or):null,Or=ft(lc.toPortablePath(Ar),$r,Fr);return Or===null?null:lc.fromPortablePath(Or)}),resolveUnqualified:X("resolveUnqualified",(Ar,or)=>lc.fromPortablePath(er(lc.toPortablePath(Ar),or))),resolveRequest:X("resolveRequest",(Ar,or,Fr)=>{let $r=or!==null?lc.toPortablePath(or):null,Or=Ot(lc.toPortablePath(Ar),$r,Fr);return Or===null?null:lc.fromPortablePath(Or)}),resolveVirtual:X("resolveVirtual",Ar=>{let or=dr(lc.toPortablePath(Ar));return or!==null?lc.fromPortablePath(or):null})}}async function qNc(e,{fakeFs:t,pnpapiResolution:r}){let s=await t.readFilePromise(e,"utf8");return c4i(s,{basePath:HXi.dirname(e),fakeFs:t,pnpapiResolution:r})}function c4i(e,{basePath:t,fakeFs:r,pnpapiResolution:s}){let a=JSON.parse(e),o=t4i(a,{basePath:t});return a4i(o,{compatibilityMode:!0,fakeFs:r,pnpapiResolution:s})}var $Nc=(e,t,r)=>{let s=nRr(e),a=t4i(s,{basePath:t}),o=lc.join(t,Xwt.pnpCjs);return a4i(a,{fakeFs:r,pnpapiResolution:o})},JNr,eRc=()=>(typeof JNr>"u"&&(JNr=XXi.default.brotliDecompressSync(Buffer.from("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","base64")).toString()),JNr);iX.LinkType=JXi;iX.generateInlinedScript=vNc;iX.generateLoader=iRr;iX.generatePrettyJson=e4i;iX.generateSplitScript=SNc;iX.getESMLoaderTemplate=eRc;iX.hydratePnpFile=qNc;iX.hydratePnpSource=c4i;iX.makeRuntimeApi=$Nc});var aRr=z($Ne=>{"use strict";Object.defineProperty($Ne,"__esModule",{value:!0});$Ne.checkManifestCompatibility=l4i;$Ne.extractBuildRequest=rRc;$Ne.getExtractHint=iRc;$Ne.hasBindingGyp=sRc;var Z9=Bn(),tRc=Ro();function l4i(e){return Z9.structUtils.isPackageCompatible(e,Z9.nodeUtils.getArchitectureSet())}function rRc(e,t,r,{configuration:s}){let a=[];for(let o of["preinstall","install","postinstall"])t.manifest.scripts.has(o)&&a.push({type:Z9.BuildDirectiveType.SCRIPT,script:o});return!t.manifest.scripts.has("install")&&t.misc.hasBindingGyp&&a.push({type:Z9.BuildDirectiveType.SHELLCODE,script:"node-gyp rebuild"}),a.length===0?null:e.linkType!==Z9.LinkType.HARD?{skipped:!0,explain:o=>o.reportWarningOnce(Z9.MessageName.SOFT_LINK_BUILD,`${Z9.structUtils.prettyLocator(s,e)} lists build scripts, but is referenced through a soft link. Soft links don't support build scripts, so they'll be ignored.`)}:r&&r.built===!1?{skipped:!0,explain:o=>o.reportInfoOnce(Z9.MessageName.BUILD_DISABLED,`${Z9.structUtils.prettyLocator(s,e)} lists build scripts, but its build has been explicitly disabled through configuration.`)}:!s.get("enableScripts")&&!r.built?{skipped:!0,explain:o=>o.reportWarningOnce(Z9.MessageName.DISABLED_BUILD_SCRIPTS,`${Z9.structUtils.prettyLocator(s,e)} lists build scripts, but all build scripts have been disabled.`)}:l4i(e)?{skipped:!1,directives:a}:{skipped:!0,explain:o=>o.reportWarningOnce(Z9.MessageName.INCOMPATIBLE_ARCHITECTURE,`${Z9.structUtils.prettyLocator(s,e)} The ${Z9.nodeUtils.getArchitectureName()} architecture is incompatible with this package, build skipped.`)}}var nRc=new Set([".exe",".bin",".h",".hh",".hpp",".c",".cc",".cpp",".java",".jar",".node"]);function iRc(e){return e.packageFs.getExtractHint({relevantExtensions:nRc})}function sRc(e){let t=tRc.ppath.join(e.prefixPath,"binding.gyp");return e.packageFs.existsSync(t)}});var eTt=z(cRr=>{"use strict";Object.defineProperty(cRr,"__esModule",{value:!0});cRr.getUnpluggedPath=cRc;var oRc=Bn(),aRc=Ro();function cRc(e,{configuration:t}){return aRc.ppath.resolve(t.get("pnpUnpluggedFolder"),oRc.structUtils.slugifyLocator(e))}});var ARr=z(eRe=>{"use strict";Object.defineProperty(eRe,"__esModule",{value:!0});eRe.PnpInstaller=eRe.PnpLinker=void 0;var g4i=(Ma(),Ai(Oa)),Mm=Bn(),vae=Bn(),wm=Ro(),lRr=oRr(),u4i=(Fl(),Ai(dg)),tTt=tRe(),rTt=g4i.__importStar(aRr()),lRc=g4i.__importStar(eTt()),uRc=new Set([Mm.structUtils.makeIdent(null,"open").identHash,Mm.structUtils.makeIdent(null,"opn").identHash]),gRr=class{constructor(){this.mode="strict",this.pnpCache=new Map}getCustomDataKey(){return JSON.stringify({name:"PnpLinker",version:2})}supportsPackage(t,r){return this.isEnabled(r)}async findPackageLocation(t,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the PnP linker to be enabled");let s=(0,tTt.getPnpPath)(r.project).cjs;if(!wm.xfs.existsSync(s))throw new u4i.UsageError(`The project in ${Mm.formatUtils.pretty(r.project.configuration,`${r.project.cwd}/package.json`,Mm.formatUtils.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let a=Mm.miscUtils.getFactoryWithDefault(this.pnpCache,s,()=>Mm.miscUtils.dynamicRequire(s,{cachingStrategy:Mm.miscUtils.CachingStrategy.FsTime})),o={name:Mm.structUtils.stringifyIdent(t),reference:t.reference},g=a.getPackageInformation(o);if(!g)throw new u4i.UsageError(`Couldn't find ${Mm.structUtils.prettyLocator(r.project.configuration,t)} in the currently installed PnP map - running an install might help`);return wm.npath.toPortablePath(g.packageLocation)}async findPackageLocator(t,r){if(!this.isEnabled(r))return null;let s=(0,tTt.getPnpPath)(r.project).cjs;if(!wm.xfs.existsSync(s))return null;let o=Mm.miscUtils.getFactoryWithDefault(this.pnpCache,s,()=>Mm.miscUtils.dynamicRequire(s,{cachingStrategy:Mm.miscUtils.CachingStrategy.FsTime})).findPackageLocator(wm.npath.fromPortablePath(t));return o?Mm.structUtils.makeLocator(Mm.structUtils.parseIdent(o.name),o.reference):null}makeInstaller(t){return new nTt(t)}isEnabled(t){return!(t.project.configuration.get("nodeLinker")!=="pnp"||t.project.configuration.get("pnpMode")!==this.mode)}};eRe.PnpLinker=gRr;var nTt=class{constructor(t){this.opts=t,this.mode="strict",this.asyncActions=new Mm.miscUtils.AsyncActions(10),this.packageRegistry=new Map,this.virtualTemplates=new Map,this.isESMLoaderRequired=!1,this.customData={store:new Map},this.unpluggedPaths=new Set,this.opts=t}attachCustomData(t){this.customData=t}async installPackage(t,r,s){let a=Mm.structUtils.stringifyIdent(t),o=t.reference,g=!!this.opts.project.tryWorkspaceByLocator(t),p=Mm.structUtils.isVirtualLocator(t),f=t.peerDependencies.size>0&&!p,m=!f&&!g,y=!f&&t.linkType!==vae.LinkType.SOFT,B,v;if(m||y){let ae=p?Mm.structUtils.devirtualizeLocator(t):t;B=this.customData.store.get(ae.locatorHash),typeof B>"u"&&(B=await gRc(r),t.linkType===vae.LinkType.HARD&&this.customData.store.set(ae.locatorHash,B)),B.manifest.type==="module"&&(this.isESMLoaderRequired=!0),v=this.opts.project.getDependencyMeta(ae,t.version)}let G=m?rTt.extractBuildRequest(t,B,v,{configuration:this.opts.project.configuration}):null,T=y?await this.unplugPackageIfNeeded(t,B,r,v,s):r.packageFs;if(wm.ppath.isAbsolute(r.prefixPath))throw new Error(`Assertion failed: Expected the prefix path (${r.prefixPath}) to be relative to the parent`);let O=wm.ppath.resolve(T.getRealPath(),r.prefixPath),X=uRr(this.opts.project.cwd,O),U=new Map,le=new Set;if(p){for(let ae of t.peerDependencies.values())U.set(Mm.structUtils.stringifyIdent(ae),null),le.add(Mm.structUtils.stringifyIdent(ae));if(!g){let ae=Mm.structUtils.devirtualizeLocator(t);this.virtualTemplates.set(ae.locatorHash,{location:uRr(this.opts.project.cwd,wm.VirtualFS.resolveVirtual(O)),locator:ae})}}return Mm.miscUtils.getMapWithDefault(this.packageRegistry,a).set(o,{packageLocation:X,packageDependencies:U,packagePeers:le,linkType:t.linkType,discardFromLookup:r.discardFromLookup||!1}),{packageLocation:O,buildRequest:G}}async attachInternalDependencies(t,r){let s=this.getPackageInformation(t);for(let[a,o]of r){let g=Mm.structUtils.areIdentsEqual(a,o)?o.reference:[Mm.structUtils.stringifyIdent(o),o.reference];s.packageDependencies.set(Mm.structUtils.stringifyIdent(a),g)}}async attachExternalDependents(t,r){for(let s of r)this.getDiskInformation(s).packageDependencies.set(Mm.structUtils.stringifyIdent(t),t.reference)}async finalizeInstall(){if(this.opts.project.configuration.get("pnpMode")!==this.mode)return;let t=(0,tTt.getPnpPath)(this.opts.project);if(this.isEsmEnabled()||await wm.xfs.removePromise(t.esmLoader),this.opts.project.configuration.get("nodeLinker")!=="pnp"){await wm.xfs.removePromise(t.cjs),await wm.xfs.removePromise(t.data),await wm.xfs.removePromise(t.esmLoader),await wm.xfs.removePromise(this.opts.project.configuration.get("pnpUnpluggedFolder"));return}for(let{locator:y,location:B}of this.virtualTemplates.values())Mm.miscUtils.getMapWithDefault(this.packageRegistry,Mm.structUtils.stringifyIdent(y)).set(y.reference,{packageLocation:B,packageDependencies:new Map,packagePeers:new Set,linkType:vae.LinkType.SOFT,discardFromLookup:!1});this.packageRegistry.set(null,new Map([[null,this.getPackageInformation(this.opts.project.topLevelWorkspace.anchoredLocator)]]));let r=this.opts.project.configuration.get("pnpFallbackMode"),s=this.opts.project.workspaces.map(({anchoredLocator:y})=>({name:Mm.structUtils.stringifyIdent(y),reference:y.reference})),a=r!=="none",o=[],g=new Map,p=Mm.miscUtils.buildIgnorePattern([".yarn/sdks/**",...this.opts.project.configuration.get("pnpIgnorePatterns")]),f=this.packageRegistry,m=this.opts.project.configuration.get("pnpShebang");if(r==="dependencies-only")for(let y of this.opts.project.storedPackages.values())this.opts.project.tryWorkspaceByLocator(y)&&o.push({name:Mm.structUtils.stringifyIdent(y),reference:y.reference});return await this.asyncActions.wait(),await this.finalizeInstallWithPnp({dependencyTreeRoots:s,enableTopLevelFallback:a,fallbackExclusionList:o,fallbackPool:g,ignorePattern:p,packageRegistry:f,shebang:m}),{customData:this.customData}}async transformPnpSettings(t){}isEsmEnabled(){if(this.opts.project.configuration.sources.has("pnpEnableEsmLoader"))return this.opts.project.configuration.get("pnpEnableEsmLoader");if(this.isESMLoaderRequired)return!0;for(let t of this.opts.project.workspaces)if(t.manifest.type==="module")return!0;return!1}async finalizeInstallWithPnp(t){let r=(0,tTt.getPnpPath)(this.opts.project),s=await this.locateNodeModules(t.ignorePattern);if(s.length>0){this.opts.report.reportWarning(vae.MessageName.DANGEROUS_NODE_MODULES,"One or more node_modules have been detected and will be removed. This operation may take some time.");for(let o of s)await wm.xfs.removePromise(o)}if(await this.transformPnpSettings(t),this.opts.project.configuration.get("pnpEnableInlining")){let o=(0,lRr.generateInlinedScript)(t);await wm.xfs.changeFilePromise(r.cjs,o,{automaticNewlines:!0,mode:493}),await wm.xfs.removePromise(r.data)}else{let{dataFile:o,loaderFile:g}=(0,lRr.generateSplitScript)(t);await wm.xfs.changeFilePromise(r.cjs,g,{automaticNewlines:!0,mode:493}),await wm.xfs.changeFilePromise(r.data,o,{automaticNewlines:!0,mode:420})}this.isEsmEnabled()&&(this.opts.report.reportWarning(vae.MessageName.UNNAMED,"ESM support for PnP uses the experimental loader API and is therefore experimental"),await wm.xfs.changeFilePromise(r.esmLoader,(0,lRr.getESMLoaderTemplate)(),{automaticNewlines:!0,mode:420}));let a=this.opts.project.configuration.get("pnpUnpluggedFolder");if(this.unpluggedPaths.size===0)await wm.xfs.removePromise(a);else for(let o of await wm.xfs.readdirPromise(a)){let g=wm.ppath.resolve(a,o);this.unpluggedPaths.has(g)||await wm.xfs.removePromise(g)}}async locateNodeModules(t){let r=[],s=t?new RegExp(t):null;for(let a of this.opts.project.workspaces){let o=wm.ppath.join(a.cwd,"node_modules");if(s&&s.test(wm.ppath.relative(this.opts.project.cwd,a.cwd))||!wm.xfs.existsSync(o))continue;let g=await wm.xfs.readdirPromise(o,{withFileTypes:!0}),p=g.filter(f=>!f.isDirectory()||f.name===".bin"||!f.name.startsWith("."));if(p.length===g.length)r.push(o);else for(let f of p)r.push(wm.ppath.join(o,f.name))}return r}async unplugPackageIfNeeded(t,r,s,a,o){return this.shouldBeUnplugged(t,r,a)?this.unplugPackage(t,s,o):s.packageFs}shouldBeUnplugged(t,r,s){return typeof s.unplugged<"u"?s.unplugged:uRc.has(t.identHash)||t.conditions!=null?!0:r.manifest.preferUnplugged!==null?r.manifest.preferUnplugged:!!(rTt.extractBuildRequest(t,r,s,{configuration:this.opts.project.configuration})?.skipped===!1||r.misc.extractHint)}async unplugPackage(t,r,s){let a=lRc.getUnpluggedPath(t,{configuration:this.opts.project.configuration});return this.opts.project.disabledLocators.has(t.locatorHash)?new wm.AliasFS(a,{baseFs:r.packageFs,pathUtils:wm.ppath}):(this.unpluggedPaths.add(a),s.holdFetchResult(this.asyncActions.set(t.locatorHash,async()=>{let o=wm.ppath.join(a,r.prefixPath,".ready");await wm.xfs.existsPromise(o)||(this.opts.project.storedBuildState.delete(t.locatorHash),await wm.xfs.mkdirPromise(a,{recursive:!0}),await wm.xfs.copyPromise(a,wm.PortablePath.dot,{baseFs:r.packageFs,overwrite:!1}),await wm.xfs.writeFilePromise(o,""))})),new wm.CwdFS(a))}getPackageInformation(t){let r=Mm.structUtils.stringifyIdent(t),s=t.reference,a=this.packageRegistry.get(r);if(!a)throw new Error(`Assertion failed: The package information store should have been available (for ${Mm.structUtils.prettyIdent(this.opts.project.configuration,t)})`);let o=a.get(s);if(!o)throw new Error(`Assertion failed: The package information should have been available (for ${Mm.structUtils.prettyLocator(this.opts.project.configuration,t)})`);return o}getDiskInformation(t){let r=Mm.miscUtils.getMapWithDefault(this.packageRegistry,"@@disk"),s=uRr(this.opts.project.cwd,t);return Mm.miscUtils.getFactoryWithDefault(r,s,()=>({packageLocation:s,packageDependencies:new Map,packagePeers:new Set,linkType:vae.LinkType.SOFT,discardFromLookup:!1}))}};eRe.PnpInstaller=nTt;function uRr(e,t){let r=wm.ppath.relative(e,t);return r.match(/^\.{0,2}\//)||(r=`./${r}`),r.replace(/\/?$/,"/")}async function gRc(e){let t=await vae.Manifest.tryFind(e.prefixPath,{baseFs:e.packageFs})??new vae.Manifest,r=new Set(["preinstall","install","postinstall"]);for(let s of t.scripts.keys())r.has(s)||t.scripts.delete(s);return{manifest:{scripts:t.scripts,preferUnplugged:t.preferUnplugged,type:t.type},misc:{extractHint:rTt.getExtractHint(e),hasBindingGyp:rTt.hasBindingGyp(e)}}}});var p4i=z(dRr=>{"use strict";Object.defineProperty(dRr,"__esModule",{value:!0});var d4i=(Ma(),Ai(Oa)),A4i=nl(),tQ=Bn(),rQ=Bn(),t$=(Fl(),Ai(dg)),ARc=d4i.__importDefault(sk()),dRc=d4i.__importStar(eTt()),tUe=class extends A4i.BaseCommand{constructor(){super(...arguments),this.all=t$.Option.Boolean("-A,--all",!1,{description:"Unplug direct dependencies from the entire project"}),this.recursive=t$.Option.Boolean("-R,--recursive",!1,{description:"Unplug both direct and transitive dependencies"}),this.json=t$.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.patterns=t$.Option.Rest()}async execute(){let t=await tQ.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await tQ.Project.find(t,this.context.cwd),a=await tQ.Cache.find(t);if(!s)throw new A4i.WorkspaceRequiredError(r.cwd,this.context.cwd);if(t.get("nodeLinker")!=="pnp")throw new t$.UsageError("This command can only be used if the `nodeLinker` option is set to `pnp`");await r.restoreInstallState();let o=new Set(this.patterns),g=this.patterns.map(v=>{let G=rQ.structUtils.parseDescriptor(v),T=G.range!=="unknown"?G:rQ.structUtils.makeDescriptor(G,"*");if(!rQ.semverUtils.validRange(T.range))throw new t$.UsageError(`The range of the descriptor patterns must be a valid semver range (${rQ.structUtils.prettyDescriptor(t,T)})`);return O=>{let X=rQ.structUtils.stringifyIdent(O);return!ARc.default.isMatch(X,rQ.structUtils.stringifyIdent(T))||O.version&&!rQ.semverUtils.satisfiesWithPrereleases(O.version,T.range)?!1:(o.delete(v),!0)}}),p=()=>{let v=[];for(let G of r.storedPackages.values())!r.tryWorkspaceByLocator(G)&&!rQ.structUtils.isVirtualLocator(G)&&g.some(T=>T(G))&&v.push(G);return v},f=v=>{let G=new Set,T=[],O=(X,U)=>{if(G.has(X.locatorHash))return;let le=!!r.tryWorkspaceByLocator(X);if(!(U>0&&!this.recursive&&le)&&(G.add(X.locatorHash),!r.tryWorkspaceByLocator(X)&&g.some(ae=>ae(X))&&T.push(X),!(U>0&&!this.recursive)))for(let ae of X.dependencies.values()){let ge=r.storedResolutions.get(ae.descriptorHash);if(!ge)throw new Error("Assertion failed: The resolution should have been registered");let fe=r.storedPackages.get(ge);if(!fe)throw new Error("Assertion failed: The package should have been registered");O(fe,U+1)}};for(let X of v)O(X.anchoredPackage,0);return T},m,y;if(this.all&&this.recursive?(m=p(),y="the project"):this.all?(m=f(r.workspaces),y="any workspace"):(m=f([s]),y="this workspace"),o.size>1)throw new t$.UsageError(`Patterns ${tQ.formatUtils.prettyList(t,o,tQ.formatUtils.Type.CODE)} don't match any packages referenced by ${y}`);if(o.size>0)throw new t$.UsageError(`Pattern ${tQ.formatUtils.prettyList(t,o,tQ.formatUtils.Type.CODE)} doesn't match any packages referenced by ${y}`);m=tQ.miscUtils.sortMap(m,v=>rQ.structUtils.stringifyLocator(v));let B=await tQ.StreamReport.start({configuration:t,stdout:this.context.stdout,json:this.json},async v=>{for(let G of m){let T=G.version??"unknown",O=r.topLevelWorkspace.manifest.ensureDependencyMeta(rQ.structUtils.makeDescriptor(G,T));O.unplugged=!0,v.reportInfo(tQ.MessageName.UNNAMED,`Will unpack ${rQ.structUtils.prettyLocator(t,G)} to ${tQ.formatUtils.pretty(t,dRc.getUnpluggedPath(G,{configuration:t}),tQ.formatUtils.Type.PATH)}`),v.reportJson({locator:rQ.structUtils.stringifyLocator(G),version:T})}await r.topLevelWorkspace.persistManifest(),this.json||v.reportSeparator()});return B.hasErrors()?B.exitCode():await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:a})}};tUe.paths=[["unplug"]];tUe.usage=t$.Command.Usage({description:"force the unpacking of a list of packages",details:"\n This command will add the selectors matching the specified patterns to the list of packages that must be unplugged when installed.\n\n A package being unplugged means that instead of being referenced directly through its archive, it will be unpacked at install time in the directory configured via `pnpUnpluggedFolder`. Note that unpacking packages this way is generally not recommended because it'll make it harder to store your packages within the repository. However, it's a good approach to quickly and safely debug some packages, and can even sometimes be required depending on the context (for example when the package contains shellscripts).\n\n Running the command will set a persistent flag inside your top-level `package.json`, in the `dependenciesMeta` field. As such, to undo its effects, you'll need to revert the changes made to the manifest and run `yarn install` to apply the modification.\n\n By default, only direct dependencies from the current workspace are affected. If `-A,--all` is set, direct dependencies from the entire project are affected. Using the `-R,--recursive` flag will affect transitive dependencies as well as direct ones.\n\n This command accepts glob patterns inside the scope and name components (not the range). Make sure to escape the patterns to prevent your own shell from trying to expand them.\n ",examples:[["Unplug the lodash dependency from the active workspace","yarn unplug lodash"],["Unplug all instances of lodash referenced by any workspace","yarn unplug lodash -A"],["Unplug all instances of lodash referenced by the active workspace and its dependencies","yarn unplug lodash -R"],["Unplug all instances of lodash, anywhere","yarn unplug lodash -AR"],["Unplug one specific version of lodash","yarn unplug lodash@1.2.3"],["Unplug all packages with the `@babel` scope","yarn unplug '@babel/*'"],["Unplug all packages (only for testing, not recommended)","yarn unplug -R '*'"]]});dRr.default=tUe});var tRe=z(Zw=>{"use strict";Object.defineProperty(Zw,"__esModule",{value:!0});Zw.PnpLinker=Zw.PnpInstaller=Zw.quotePathIfNeeded=Zw.getPnpPath=Zw.pnpUtils=Zw.jsInstallUtils=Zw.UnplugCommand=void 0;var pRr=(Ma(),Ai(Oa)),nQ=Bn(),JK=Ro(),pRc=Dt("url"),fRc=ARr(),f4i=pRr.__importDefault(p4i());Zw.UnplugCommand=f4i.default;var IRc=pRr.__importStar(aRr());Zw.jsInstallUtils=IRc;var CRc=pRr.__importStar(eTt());Zw.pnpUtils=CRc;var mRc=e=>({cjs:JK.ppath.join(e.cwd,JK.Filename.pnpCjs),data:JK.ppath.join(e.cwd,JK.Filename.pnpData),esmLoader:JK.ppath.join(e.cwd,JK.Filename.pnpEsmLoader)});Zw.getPnpPath=mRc;var hRc=e=>/\s/.test(e)?JSON.stringify(e):e;Zw.quotePathIfNeeded=hRc;async function _Rc(e,t,r){let s=/\s*--require\s+\S*\.pnp\.c?js\s*/g,a=/\s*--experimental-loader\s+\S*\.pnp\.loader\.mjs\s*/,o=(t.NODE_OPTIONS??"").replace(s," ").replace(a," ").trim();if(e.configuration.get("nodeLinker")!=="pnp"){t.NODE_OPTIONS=o||void 0;return}let g=(0,Zw.getPnpPath)(e),p=`--require ${(0,Zw.quotePathIfNeeded)(JK.npath.fromPortablePath(g.cjs))}`;JK.xfs.existsSync(g.esmLoader)&&(p=`${p} --experimental-loader ${(0,pRc.pathToFileURL)(JK.npath.fromPortablePath(g.esmLoader)).href}`),JK.xfs.existsSync(g.cjs)&&(t.NODE_OPTIONS=o?`${p} ${o}`:p)}async function yRc(e,t){let r=(0,Zw.getPnpPath)(e);t(r.cjs),t(r.data),t(r.esmLoader),t(e.configuration.get("pnpUnpluggedFolder"))}var bRc={hooks:{populateYarnPaths:yRc,setupScriptEnvironment:_Rc},configuration:{nodeLinker:{description:'The linker used for installing Node packages, one of: "pnp", "pnpm", or "node-modules"',type:nQ.SettingsType.STRING,default:"pnp"},winLinkType:{description:"Whether Yarn should use Windows Junctions or symlinks when creating links on Windows.",type:nQ.SettingsType.STRING,values:[nQ.WindowsLinkType.JUNCTIONS,nQ.WindowsLinkType.SYMLINKS],default:nQ.WindowsLinkType.JUNCTIONS},pnpMode:{description:"If 'strict', generates standard PnP maps. If 'loose', merges them with the n_m resolution.",type:nQ.SettingsType.STRING,default:"strict"},pnpShebang:{description:"String to prepend to the generated PnP script",type:nQ.SettingsType.STRING,default:"#!/usr/bin/env node"},pnpIgnorePatterns:{description:"Array of glob patterns; files matching them will use the classic resolution",type:nQ.SettingsType.STRING,default:[],isArray:!0},pnpEnableEsmLoader:{description:"If true, Yarn will generate an ESM loader (`.pnp.loader.mjs`). If this is not explicitly set Yarn tries to automatically detect whether ESM support is required.",type:nQ.SettingsType.BOOLEAN,default:!1},pnpEnableInlining:{description:"If true, the PnP data will be inlined along with the generated loader",type:nQ.SettingsType.BOOLEAN,default:!0},pnpFallbackMode:{description:"If true, the generated PnP loader will follow the top-level fallback rule",type:nQ.SettingsType.STRING,default:"dependencies-only"},pnpUnpluggedFolder:{description:"Folder where the unplugged packages must be stored",type:nQ.SettingsType.ABSOLUTE_PATH,default:"./.yarn/unplugged"}},linkers:[fRc.PnpLinker],commands:[f4i.default]},I4i=ARr();Object.defineProperty(Zw,"PnpInstaller",{enumerable:!0,get:function(){return I4i.PnpInstaller}});Object.defineProperty(Zw,"PnpLinker",{enumerable:!0,get:function(){return I4i.PnpLinker}});Zw.default=bRc});var C4i=z((fRr,IRr)=>{(function(e){fRr&&typeof fRr=="object"&&typeof IRr<"u"?IRr.exports=e():typeof define=="function"&&define.amd?define([],e):typeof window<"u"?window.isWindows=e():typeof global<"u"?global.isWindows=e():typeof self<"u"?self.isWindows=e():this.isWindows=e()})(function(){"use strict";return function(){return process&&(process.platform==="win32"||/^(msys|cygwin)$/.test(process.env.OSTYPE))}})});var _4i=z((LXl,h4i)=>{"use strict";var ERc=Dt("path"),m4i;process.env.PATHEXT&&(m4i=process.env.PATHEXT.split(ERc.delimiter).find(e=>e.toUpperCase()===".CMD"));h4i.exports=m4i||".cmd"});var b4i=z((VXl,y4i)=>{var Sae=Dt("constants"),BRc=process.cwd,iTt=null,vRc=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){return iTt||(iTt=BRc.call(process)),iTt};try{process.cwd()}catch{}typeof process.chdir=="function"&&(CRr=process.chdir,process.chdir=function(e){iTt=null,CRr.call(process,e)},Object.setPrototypeOf&&Object.setPrototypeOf(process.chdir,CRr));var CRr;y4i.exports=SRc;function SRc(e){Sae.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)&&t(e),e.lutimes||r(e),e.chown=o(e.chown),e.fchown=o(e.fchown),e.lchown=o(e.lchown),e.chmod=s(e.chmod),e.fchmod=s(e.fchmod),e.lchmod=s(e.lchmod),e.chownSync=g(e.chownSync),e.fchownSync=g(e.fchownSync),e.lchownSync=g(e.lchownSync),e.chmodSync=a(e.chmodSync),e.fchmodSync=a(e.fchmodSync),e.lchmodSync=a(e.lchmodSync),e.stat=p(e.stat),e.fstat=p(e.fstat),e.lstat=p(e.lstat),e.statSync=f(e.statSync),e.fstatSync=f(e.fstatSync),e.lstatSync=f(e.lstatSync),e.chmod&&!e.lchmod&&(e.lchmod=function(y,B,v){v&&process.nextTick(v)},e.lchmodSync=function(){}),e.chown&&!e.lchown&&(e.lchown=function(y,B,v,G){G&&process.nextTick(G)},e.lchownSync=function(){}),vRc==="win32"&&(e.rename=typeof e.rename!="function"?e.rename:function(y){function B(v,G,T){var O=Date.now(),X=0;y(v,G,function U(le){if(le&&(le.code==="EACCES"||le.code==="EPERM"||le.code==="EBUSY")&&Date.now()-O<6e4){setTimeout(function(){e.stat(G,function(ae,ge){ae&&ae.code==="ENOENT"?y(v,G,U):T(le)})},X),X<100&&(X+=10);return}T&&T(le)})}return Object.setPrototypeOf&&Object.setPrototypeOf(B,y),B}(e.rename)),e.read=typeof e.read!="function"?e.read:function(y){function B(v,G,T,O,X,U){var le;if(U&&typeof U=="function"){var ae=0;le=function(ge,fe,pe){if(ge&&ge.code==="EAGAIN"&&ae<10)return ae++,y.call(e,v,G,T,O,X,le);U.apply(this,arguments)}}return y.call(e,v,G,T,O,X,le)}return Object.setPrototypeOf&&Object.setPrototypeOf(B,y),B}(e.read),e.readSync=typeof e.readSync!="function"?e.readSync:function(y){return function(B,v,G,T,O){for(var X=0;;)try{return y.call(e,B,v,G,T,O)}catch(U){if(U.code==="EAGAIN"&&X<10){X++;continue}throw U}}}(e.readSync);function t(y){y.lchmod=function(B,v,G){y.open(B,Sae.O_WRONLY|Sae.O_SYMLINK,v,function(T,O){if(T){G&&G(T);return}y.fchmod(O,v,function(X){y.close(O,function(U){G&&G(X||U)})})})},y.lchmodSync=function(B,v){var G=y.openSync(B,Sae.O_WRONLY|Sae.O_SYMLINK,v),T=!0,O;try{O=y.fchmodSync(G,v),T=!1}finally{if(T)try{y.closeSync(G)}catch{}else y.closeSync(G)}return O}}function r(y){Sae.hasOwnProperty("O_SYMLINK")&&y.futimes?(y.lutimes=function(B,v,G,T){y.open(B,Sae.O_SYMLINK,function(O,X){if(O){T&&T(O);return}y.futimes(X,v,G,function(U){y.close(X,function(le){T&&T(U||le)})})})},y.lutimesSync=function(B,v,G){var T=y.openSync(B,Sae.O_SYMLINK),O,X=!0;try{O=y.futimesSync(T,v,G),X=!1}finally{if(X)try{y.closeSync(T)}catch{}else y.closeSync(T)}return O}):y.futimes&&(y.lutimes=function(B,v,G,T){T&&process.nextTick(T)},y.lutimesSync=function(){})}function s(y){return y&&function(B,v,G){return y.call(e,B,v,function(T){m(T)&&(T=null),G&&G.apply(this,arguments)})}}function a(y){return y&&function(B,v){try{return y.call(e,B,v)}catch(G){if(!m(G))throw G}}}function o(y){return y&&function(B,v,G,T){return y.call(e,B,v,G,function(O){m(O)&&(O=null),T&&T.apply(this,arguments)})}}function g(y){return y&&function(B,v,G){try{return y.call(e,B,v,G)}catch(T){if(!m(T))throw T}}}function p(y){return y&&function(B,v,G){typeof v=="function"&&(G=v,v=null);function T(O,X){X&&(X.uid<0&&(X.uid+=4294967296),X.gid<0&&(X.gid+=4294967296)),G&&G.apply(this,arguments)}return v?y.call(e,B,v,T):y.call(e,B,T)}}function f(y){return y&&function(B,v){var G=v?y.call(e,B,v):y.call(e,B);return G&&(G.uid<0&&(G.uid+=4294967296),G.gid<0&&(G.gid+=4294967296)),G}}function m(y){if(!y||y.code==="ENOSYS")return!0;var B=!process.getuid||process.getuid()!==0;return!!(B&&(y.code==="EINVAL"||y.code==="EPERM"))}}});var v4i=z((WXl,B4i)=>{var E4i=Dt("stream").Stream;B4i.exports=wRc;function wRc(e){return{ReadStream:t,WriteStream:r};function t(s,a){if(!(this instanceof t))return new t(s,a);E4i.call(this);var o=this;this.path=s,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=64*1024,a=a||{};for(var g=Object.keys(a),p=0,f=g.length;pthis.end)throw new Error("start must be <= end");this.pos=this.start}if(this.fd!==null){process.nextTick(function(){o._read()});return}e.open(this.path,this.flags,this.mode,function(y,B){if(y){o.emit("error",y),o.readable=!1;return}o.fd=B,o.emit("open",B),o._read()})}function r(s,a){if(!(this instanceof r))return new r(s,a);E4i.call(this),this.path=s,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,a=a||{};for(var o=Object.keys(a),g=0,p=o.length;g= zero");this.pos=this.start}this.busy=!1,this._queue=[],this.fd===null&&(this._open=e.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush())}}});var w4i=z((PXl,S4i)=>{"use strict";S4i.exports=NRc;var TRc=Object.getPrototypeOf||function(e){return e.__proto__};function NRc(e){if(e===null||typeof e!="object")return e;if(e instanceof Object)var t={__proto__:TRc(e)};else var t=Object.create(null);return Object.getOwnPropertyNames(e).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(e,r))}),t}});var D4i=z((OXl,_Rr)=>{var pB=Dt("fs"),RRc=b4i(),DRc=v4i(),xRc=w4i(),sTt=Dt("util"),px,aTt;typeof Symbol=="function"&&typeof Symbol.for=="function"?(px=Symbol.for("graceful-fs.queue"),aTt=Symbol.for("graceful-fs.previous")):(px="___graceful-fs.queue",aTt="___graceful-fs.previous");function kRc(){}function R4i(e,t){Object.defineProperty(e,px,{get:function(){return t}})}var DCe=kRc;sTt.debuglog?DCe=sTt.debuglog("gfs4"):/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&(DCe=function(){var e=sTt.format.apply(sTt,arguments);e="GFS4: "+e.split(/\n/).join(` -GFS4: `),console.error(e)});pB[px]||(T4i=global[px]||[],R4i(pB,T4i),pB.close=function(e){function t(r,s){return e.call(pB,r,function(a){a||N4i(),typeof s=="function"&&s.apply(this,arguments)})}return Object.defineProperty(t,aTt,{value:e}),t}(pB.close),pB.closeSync=function(e){function t(r){e.apply(pB,arguments),N4i()}return Object.defineProperty(t,aTt,{value:e}),t}(pB.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",function(){DCe(pB[px]),Dt("assert").equal(pB[px].length,0)}));var T4i;global[px]||R4i(global,pB[px]);_Rr.exports=mRr(xRc(pB));process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!pB.__patched&&(_Rr.exports=mRr(pB),pB.__patched=!0);function mRr(e){RRc(e),e.gracefulify=mRr,e.createReadStream=fe,e.createWriteStream=pe;var t=e.readFile;e.readFile=r;function r(Te,ke,x){return typeof ke=="function"&&(x=ke,ke=null),et(Te,ke,x);function et(Ue,Je,Xe,ft){return t(Ue,Je,function(Gt){Gt&&(Gt.code==="EMFILE"||Gt.code==="ENFILE")?rRe([et,[Ue,Je,Xe],Gt,ft||Date.now(),Date.now()]):typeof Xe=="function"&&Xe.apply(this,arguments)})}}var s=e.writeFile;e.writeFile=a;function a(Te,ke,x,et){return typeof x=="function"&&(et=x,x=null),Ue(Te,ke,x,et);function Ue(Je,Xe,ft,Gt,er){return s(Je,Xe,ft,function(Ur){Ur&&(Ur.code==="EMFILE"||Ur.code==="ENFILE")?rRe([Ue,[Je,Xe,ft,Gt],Ur,er||Date.now(),Date.now()]):typeof Gt=="function"&&Gt.apply(this,arguments)})}}var o=e.appendFile;o&&(e.appendFile=g);function g(Te,ke,x,et){return typeof x=="function"&&(et=x,x=null),Ue(Te,ke,x,et);function Ue(Je,Xe,ft,Gt,er){return o(Je,Xe,ft,function(Ur){Ur&&(Ur.code==="EMFILE"||Ur.code==="ENFILE")?rRe([Ue,[Je,Xe,ft,Gt],Ur,er||Date.now(),Date.now()]):typeof Gt=="function"&&Gt.apply(this,arguments)})}}var p=e.copyFile;p&&(e.copyFile=f);function f(Te,ke,x,et){return typeof x=="function"&&(et=x,x=0),Ue(Te,ke,x,et);function Ue(Je,Xe,ft,Gt,er){return p(Je,Xe,ft,function(Ur){Ur&&(Ur.code==="EMFILE"||Ur.code==="ENFILE")?rRe([Ue,[Je,Xe,ft,Gt],Ur,er||Date.now(),Date.now()]):typeof Gt=="function"&&Gt.apply(this,arguments)})}}var m=e.readdir;e.readdir=B;var y=/^v[0-5]\./;function B(Te,ke,x){typeof ke=="function"&&(x=ke,ke=null);var et=y.test(process.version)?function(Xe,ft,Gt,er){return m(Xe,Ue(Xe,ft,Gt,er))}:function(Xe,ft,Gt,er){return m(Xe,ft,Ue(Xe,ft,Gt,er))};return et(Te,ke,x);function Ue(Je,Xe,ft,Gt){return function(er,Ur){er&&(er.code==="EMFILE"||er.code==="ENFILE")?rRe([et,[Je,Xe,ft],er,Gt||Date.now(),Date.now()]):(Ur&&Ur.sort&&Ur.sort(),typeof ft=="function"&&ft.call(this,er,Ur))}}}if(process.version.substr(0,4)==="v0.8"){var v=DRc(e);U=v.ReadStream,ae=v.WriteStream}var G=e.ReadStream;G&&(U.prototype=Object.create(G.prototype),U.prototype.open=le);var T=e.WriteStream;T&&(ae.prototype=Object.create(T.prototype),ae.prototype.open=ge),Object.defineProperty(e,"ReadStream",{get:function(){return U},set:function(Te){U=Te},enumerable:!0,configurable:!0}),Object.defineProperty(e,"WriteStream",{get:function(){return ae},set:function(Te){ae=Te},enumerable:!0,configurable:!0});var O=U;Object.defineProperty(e,"FileReadStream",{get:function(){return O},set:function(Te){O=Te},enumerable:!0,configurable:!0});var X=ae;Object.defineProperty(e,"FileWriteStream",{get:function(){return X},set:function(Te){X=Te},enumerable:!0,configurable:!0});function U(Te,ke){return this instanceof U?(G.apply(this,arguments),this):U.apply(Object.create(U.prototype),arguments)}function le(){var Te=this;be(Te.path,Te.flags,Te.mode,function(ke,x){ke?(Te.autoClose&&Te.destroy(),Te.emit("error",ke)):(Te.fd=x,Te.emit("open",x),Te.read())})}function ae(Te,ke){return this instanceof ae?(T.apply(this,arguments),this):ae.apply(Object.create(ae.prototype),arguments)}function ge(){var Te=this;be(Te.path,Te.flags,Te.mode,function(ke,x){ke?(Te.destroy(),Te.emit("error",ke)):(Te.fd=x,Te.emit("open",x))})}function fe(Te,ke){return new e.ReadStream(Te,ke)}function pe(Te,ke){return new e.WriteStream(Te,ke)}var he=e.open;e.open=be;function be(Te,ke,x,et){return typeof x=="function"&&(et=x,x=null),Ue(Te,ke,x,et);function Ue(Je,Xe,ft,Gt,er){return he(Je,Xe,ft,function(Ur,Ot){Ur&&(Ur.code==="EMFILE"||Ur.code==="ENFILE")?rRe([Ue,[Je,Xe,ft,Gt],Ur,er||Date.now(),Date.now()]):typeof Gt=="function"&&Gt.apply(this,arguments)})}}return e}function rRe(e){DCe("ENQUEUE",e[0].name,e[1]),pB[px].push(e),hRr()}var oTt;function N4i(){for(var e=Date.now(),t=0;t2&&(pB[px][t][3]=e,pB[px][t][4]=e);hRr()}function hRr(){if(clearTimeout(oTt),oTt=void 0,pB[px].length!==0){var e=pB[px].shift(),t=e[0],r=e[1],s=e[2],a=e[3],o=e[4];if(a===void 0)DCe("RETRY",t.name,r),t.apply(null,r);else if(Date.now()-a>=6e4){DCe("TIMEOUT",t.name,r);var g=r.pop();typeof g=="function"&&g.call(null,s)}else{var p=Date.now()-o,f=Math.max(o-a,1),m=Math.min(f*1.2,100);p>=m?(DCe("RETRY",t.name,r),t.apply(null,r.concat([a]))):pB[px].push(e)}oTt===void 0&&(oTt=setTimeout(hRr,0))}}});var G4i=z((MXl,k4i)=>{"use strict";bRr.ifExists=VRc;var nRe=Dt("util"),h3=Dt("path"),yRr=C4i(),GRc=_4i(),FRc=/^#!\s*(?:\/usr\/bin\/env(?:\s+-S\s*)?)?\s*([^ \t]+)(.*)$/,ZRc={createPwshFile:!0,createCmdFile:yRr(),fs:D4i()},LRc=new Map([[".js","node"],[".cjs","node"],[".mjs","node"],[".cmd","cmd"],[".bat","cmd"],[".ps1","pwsh"],[".sh","sh"]]);function x4i(e){let t={...ZRc,...e},r=t.fs;return t.fs_={chmod:r.chmod?(0,nRe.promisify)(r.chmod):async()=>{},mkdir:(0,nRe.promisify)(r.mkdir),readFile:(0,nRe.promisify)(r.readFile),stat:(0,nRe.promisify)(r.stat),unlink:(0,nRe.promisify)(r.unlink),writeFile:(0,nRe.promisify)(r.writeFile)},t}async function bRr(e,t,r){let s=x4i(r);await PRc(e,t,s)}function VRc(e,t,r){return bRr(e,t,r).catch(()=>{})}function WRc(e,t){return t.fs_.unlink(e).catch(()=>{})}async function PRc(e,t,r){let s=await HRc(e,r);return await ORc(t,r),MRc(e,t,s,r)}function ORc(e,t){return t.fs_.mkdir(h3.dirname(e),{recursive:!0})}function MRc(e,t,r,s){let a=x4i(s),o=[{generator:KRc,extension:""}];return a.createCmdFile&&o.push({generator:URc,extension:GRc}),a.createPwshFile&&o.push({generator:jRc,extension:".ps1"}),Promise.all(o.map(g=>JRc(e,t+g.extension,r,g.generator,a)))}function QRc(e,t){return WRc(e,t)}function YRc(e,t){return zRc(e,t)}async function HRc(e,t){try{let a=(await t.fs_.readFile(e,"utf8")).trim().split(/\r*\n/)[0].match(FRc);if(!a){let o=h3.extname(e).toLowerCase();return{program:LRc.get(o)||null,additionalArgs:""}}return{program:a[1],additionalArgs:a[2]}}catch(r){if(!yRr()||r.code!=="ENOENT")throw r;if(await t.fs_.stat(`${e}${XRc()}`))return{program:null,additionalArgs:""};throw r}}function XRc(){let e;return process.env.PATHEXT&&(e=process.env.PATHEXT.split(h3.delimiter).find(t=>t.toLowerCase()===".exe")),e||".exe"}async function JRc(e,t,r,s,a){let o=a.preserveSymlinks?"--preserve-symlinks":"",g=[r.additionalArgs,o].filter(p=>p).join(" ");return a=Object.assign({},a,{prog:r.program,args:g}),await QRc(t,a),await a.fs_.writeFile(t,s(e,t,a),"utf8"),YRc(t,a)}function URc(e,t,r){let a=h3.relative(h3.dirname(t),e).split("/").join("\\"),o=h3.isAbsolute(a)?`"${a}"`:`"%~dp0\\${a}"`,g,p=r.prog,f=r.args||"",m=rUe(r.nodePath).win32,y=rUe(r.prependToPath).win32;p?p==="node"&&r.nodeExecPath?(p=`"${r.nodeExecPath}"`,a=o):(g=`"%~dp0\\${p}.exe"`,a=o):(p=o,f="",a="");let B=r.progArgs?`${r.progArgs.join(" ")} `:"",v=`@SETLOCAL\r +${Fr.map(Br=>`Not found: ${qK(Br)} +`).join("")}`,{unqualifiedPath:Or,extensions:or})}}function Ur(Ar,or,Fr){if(!or)throw new Error("Assertion failed: An issuer is required to resolve private import mappings");let $r=sRc({name:Ar,base:fv.pathToFileURL(lc.fromPortablePath(or)),conditions:Fr.conditions??ae,readFileSyncFn:Xe});if($r instanceof URL)return er(lc.toPortablePath(fv.fileURLToPath($r)),{extensions:Fr.extensions});if($r.startsWith("#"))throw new Error("Mapping from one private import to another isn't allowed");return Ot($r,or,Fr)}function Ot(Ar,or,Fr={}){try{if(Ar.startsWith("#"))return Ur(Ar,or,Fr);let{considerBuiltins:$r,extensions:Or,conditions:In}=Fr,Br=ft(Ar,or,{considerBuiltins:$r});if(Ar==="pnpapi")return Br;if(Br===null)return null;let tr=()=>or!==null?be(or):!1,gn=(!$r||!RCe.isBuiltin(Ar))&&!tr()?Gt(Ar,Br,In,or):Br;return er(gn,{extensions:Or})}catch($r){throw Object.hasOwn($r,"pnpCode")&&Object.assign($r.data,{request:qK(Ar),issuer:or&&qK(or)}),$r}}function dr(Ar){let or=eC.normalize(Ar),Fr=zwt.resolveVirtual(or);return Fr!==or?Fr:null}return{VERSIONS:Te,topLevel:ke,getLocator:(Ar,or)=>Array.isArray(or)?{name:or[0],reference:or[1]}:{name:Ar,reference:or},getDependencyTreeRoots:()=>[...e.dependencyTreeRoots],getAllLocators(){let Ar=[];for(let[or,Fr]of v)for(let $r of Fr.keys())or!==null&&$r!==null&&Ar.push({name:or,reference:$r});return Ar},getPackageInformation:Ar=>{let or=x(Ar);if(or===null)return null;let Fr=lc.fromPortablePath(or.packageLocation);return{...or,packageLocation:Fr}},findPackageLocator:Ar=>Je(lc.toPortablePath(Ar)),resolveToUnqualified:X("resolveToUnqualified",(Ar,or,Fr)=>{let $r=or!==null?lc.toPortablePath(or):null,Or=ft(lc.toPortablePath(Ar),$r,Fr);return Or===null?null:lc.fromPortablePath(Or)}),resolveUnqualified:X("resolveUnqualified",(Ar,or)=>lc.fromPortablePath(er(lc.toPortablePath(Ar),or))),resolveRequest:X("resolveRequest",(Ar,or,Fr)=>{let $r=or!==null?lc.toPortablePath(or):null,Or=Ot(lc.toPortablePath(Ar),$r,Fr);return Or===null?null:lc.fromPortablePath(Or)}),resolveVirtual:X("resolveVirtual",Ar=>{let or=dr(lc.toPortablePath(Ar));return or!==null?lc.fromPortablePath(or):null})}}async function pRc(e,{fakeFs:t,pnpapiResolution:r}){let s=await t.readFilePromise(e,"utf8");return f4i(s,{basePath:qXi.dirname(e),fakeFs:t,pnpapiResolution:r})}function f4i(e,{basePath:t,fakeFs:r,pnpapiResolution:s}){let a=JSON.parse(e),o=c4i(a,{basePath:t});return p4i(o,{compatibilityMode:!0,fakeFs:r,pnpapiResolution:s})}var fRc=(e,t,r)=>{let s=lRr(e),a=c4i(s,{basePath:t}),o=lc.join(t,Kwt.pnpCjs);return p4i(a,{fakeFs:r,pnpapiResolution:o})},$Nr,IRc=()=>(typeof $Nr>"u"&&($Nr=$Xi.default.brotliDecompressSync(Buffer.from("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","base64")).toString()),$Nr);aX.LinkType=e4i;aX.generateInlinedScript=ONc;aX.generateLoader=uRr;aX.generatePrettyJson=a4i;aX.generateSplitScript=QNc;aX.getESMLoaderTemplate=IRc;aX.hydratePnpFile=pRc;aX.hydratePnpSource=f4i;aX.makeRuntimeApi=fRc});var dRr=z(tRe=>{"use strict";Object.defineProperty(tRe,"__esModule",{value:!0});tRe.checkManifestCompatibility=I4i;tRe.extractBuildRequest=mRc;tRe.getExtractHint=_Rc;tRe.hasBindingGyp=yRc;var L9=Bn(),CRc=No();function I4i(e){return L9.structUtils.isPackageCompatible(e,L9.nodeUtils.getArchitectureSet())}function mRc(e,t,r,{configuration:s}){let a=[];for(let o of["preinstall","install","postinstall"])t.manifest.scripts.has(o)&&a.push({type:L9.BuildDirectiveType.SCRIPT,script:o});return!t.manifest.scripts.has("install")&&t.misc.hasBindingGyp&&a.push({type:L9.BuildDirectiveType.SHELLCODE,script:"node-gyp rebuild"}),a.length===0?null:e.linkType!==L9.LinkType.HARD?{skipped:!0,explain:o=>o.reportWarningOnce(L9.MessageName.SOFT_LINK_BUILD,`${L9.structUtils.prettyLocator(s,e)} lists build scripts, but is referenced through a soft link. Soft links don't support build scripts, so they'll be ignored.`)}:r&&r.built===!1?{skipped:!0,explain:o=>o.reportInfoOnce(L9.MessageName.BUILD_DISABLED,`${L9.structUtils.prettyLocator(s,e)} lists build scripts, but its build has been explicitly disabled through configuration.`)}:!s.get("enableScripts")&&!r.built?{skipped:!0,explain:o=>o.reportWarningOnce(L9.MessageName.DISABLED_BUILD_SCRIPTS,`${L9.structUtils.prettyLocator(s,e)} lists build scripts, but all build scripts have been disabled.`)}:I4i(e)?{skipped:!1,directives:a}:{skipped:!0,explain:o=>o.reportWarningOnce(L9.MessageName.INCOMPATIBLE_ARCHITECTURE,`${L9.structUtils.prettyLocator(s,e)} The ${L9.nodeUtils.getArchitectureName()} architecture is incompatible with this package, build skipped.`)}}var hRc=new Set([".exe",".bin",".h",".hh",".hpp",".c",".cc",".cpp",".java",".jar",".node"]);function _Rc(e){return e.packageFs.getExtractHint({relevantExtensions:hRc})}function yRc(e){let t=CRc.ppath.join(e.prefixPath,"binding.gyp");return e.packageFs.existsSync(t)}});var nTt=z(pRr=>{"use strict";Object.defineProperty(pRr,"__esModule",{value:!0});pRr.getUnpluggedPath=BRc;var bRc=Bn(),ERc=No();function BRc(e,{configuration:t}){return ERc.ppath.resolve(t.get("pnpUnpluggedFolder"),bRc.structUtils.slugifyLocator(e))}});var mRr=z(rRe=>{"use strict";Object.defineProperty(rRe,"__esModule",{value:!0});rRe.PnpInstaller=rRe.PnpLinker=void 0;var m4i=(Oa(),Ai(Pa)),Mm=Bn(),Gae=Bn(),Tm=No(),fRr=ARr(),C4i=(Zl(),Ai(pg)),iTt=nRe(),sTt=m4i.__importStar(dRr()),vRc=m4i.__importStar(nTt()),SRc=new Set([Mm.structUtils.makeIdent(null,"open").identHash,Mm.structUtils.makeIdent(null,"opn").identHash]),CRr=class{constructor(){this.mode="strict",this.pnpCache=new Map}getCustomDataKey(){return JSON.stringify({name:"PnpLinker",version:2})}supportsPackage(t,r){return this.isEnabled(r)}async findPackageLocation(t,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the PnP linker to be enabled");let s=(0,iTt.getPnpPath)(r.project).cjs;if(!Tm.xfs.existsSync(s))throw new C4i.UsageError(`The project in ${Mm.formatUtils.pretty(r.project.configuration,`${r.project.cwd}/package.json`,Mm.formatUtils.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let a=Mm.miscUtils.getFactoryWithDefault(this.pnpCache,s,()=>Mm.miscUtils.dynamicRequire(s,{cachingStrategy:Mm.miscUtils.CachingStrategy.FsTime})),o={name:Mm.structUtils.stringifyIdent(t),reference:t.reference},g=a.getPackageInformation(o);if(!g)throw new C4i.UsageError(`Couldn't find ${Mm.structUtils.prettyLocator(r.project.configuration,t)} in the currently installed PnP map - running an install might help`);return Tm.npath.toPortablePath(g.packageLocation)}async findPackageLocator(t,r){if(!this.isEnabled(r))return null;let s=(0,iTt.getPnpPath)(r.project).cjs;if(!Tm.xfs.existsSync(s))return null;let o=Mm.miscUtils.getFactoryWithDefault(this.pnpCache,s,()=>Mm.miscUtils.dynamicRequire(s,{cachingStrategy:Mm.miscUtils.CachingStrategy.FsTime})).findPackageLocator(Tm.npath.fromPortablePath(t));return o?Mm.structUtils.makeLocator(Mm.structUtils.parseIdent(o.name),o.reference):null}makeInstaller(t){return new oTt(t)}isEnabled(t){return!(t.project.configuration.get("nodeLinker")!=="pnp"||t.project.configuration.get("pnpMode")!==this.mode)}};rRe.PnpLinker=CRr;var oTt=class{constructor(t){this.opts=t,this.mode="strict",this.asyncActions=new Mm.miscUtils.AsyncActions(10),this.packageRegistry=new Map,this.virtualTemplates=new Map,this.isESMLoaderRequired=!1,this.customData={store:new Map},this.unpluggedPaths=new Set,this.opts=t}attachCustomData(t){this.customData=t}async installPackage(t,r,s){let a=Mm.structUtils.stringifyIdent(t),o=t.reference,g=!!this.opts.project.tryWorkspaceByLocator(t),p=Mm.structUtils.isVirtualLocator(t),f=t.peerDependencies.size>0&&!p,m=!f&&!g,y=!f&&t.linkType!==Gae.LinkType.SOFT,B,v;if(m||y){let ae=p?Mm.structUtils.devirtualizeLocator(t):t;B=this.customData.store.get(ae.locatorHash),typeof B>"u"&&(B=await wRc(r),t.linkType===Gae.LinkType.HARD&&this.customData.store.set(ae.locatorHash,B)),B.manifest.type==="module"&&(this.isESMLoaderRequired=!0),v=this.opts.project.getDependencyMeta(ae,t.version)}let k=m?sTt.extractBuildRequest(t,B,v,{configuration:this.opts.project.configuration}):null,T=y?await this.unplugPackageIfNeeded(t,B,r,v,s):r.packageFs;if(Tm.ppath.isAbsolute(r.prefixPath))throw new Error(`Assertion failed: Expected the prefix path (${r.prefixPath}) to be relative to the parent`);let O=Tm.ppath.resolve(T.getRealPath(),r.prefixPath),X=IRr(this.opts.project.cwd,O),U=new Map,le=new Set;if(p){for(let ae of t.peerDependencies.values())U.set(Mm.structUtils.stringifyIdent(ae),null),le.add(Mm.structUtils.stringifyIdent(ae));if(!g){let ae=Mm.structUtils.devirtualizeLocator(t);this.virtualTemplates.set(ae.locatorHash,{location:IRr(this.opts.project.cwd,Tm.VirtualFS.resolveVirtual(O)),locator:ae})}}return Mm.miscUtils.getMapWithDefault(this.packageRegistry,a).set(o,{packageLocation:X,packageDependencies:U,packagePeers:le,linkType:t.linkType,discardFromLookup:r.discardFromLookup||!1}),{packageLocation:O,buildRequest:k}}async attachInternalDependencies(t,r){let s=this.getPackageInformation(t);for(let[a,o]of r){let g=Mm.structUtils.areIdentsEqual(a,o)?o.reference:[Mm.structUtils.stringifyIdent(o),o.reference];s.packageDependencies.set(Mm.structUtils.stringifyIdent(a),g)}}async attachExternalDependents(t,r){for(let s of r)this.getDiskInformation(s).packageDependencies.set(Mm.structUtils.stringifyIdent(t),t.reference)}async finalizeInstall(){if(this.opts.project.configuration.get("pnpMode")!==this.mode)return;let t=(0,iTt.getPnpPath)(this.opts.project);if(this.isEsmEnabled()||await Tm.xfs.removePromise(t.esmLoader),this.opts.project.configuration.get("nodeLinker")!=="pnp"){await Tm.xfs.removePromise(t.cjs),await Tm.xfs.removePromise(t.data),await Tm.xfs.removePromise(t.esmLoader),await Tm.xfs.removePromise(this.opts.project.configuration.get("pnpUnpluggedFolder"));return}for(let{locator:y,location:B}of this.virtualTemplates.values())Mm.miscUtils.getMapWithDefault(this.packageRegistry,Mm.structUtils.stringifyIdent(y)).set(y.reference,{packageLocation:B,packageDependencies:new Map,packagePeers:new Set,linkType:Gae.LinkType.SOFT,discardFromLookup:!1});this.packageRegistry.set(null,new Map([[null,this.getPackageInformation(this.opts.project.topLevelWorkspace.anchoredLocator)]]));let r=this.opts.project.configuration.get("pnpFallbackMode"),s=this.opts.project.workspaces.map(({anchoredLocator:y})=>({name:Mm.structUtils.stringifyIdent(y),reference:y.reference})),a=r!=="none",o=[],g=new Map,p=Mm.miscUtils.buildIgnorePattern([".yarn/sdks/**",...this.opts.project.configuration.get("pnpIgnorePatterns")]),f=this.packageRegistry,m=this.opts.project.configuration.get("pnpShebang");if(r==="dependencies-only")for(let y of this.opts.project.storedPackages.values())this.opts.project.tryWorkspaceByLocator(y)&&o.push({name:Mm.structUtils.stringifyIdent(y),reference:y.reference});return await this.asyncActions.wait(),await this.finalizeInstallWithPnp({dependencyTreeRoots:s,enableTopLevelFallback:a,fallbackExclusionList:o,fallbackPool:g,ignorePattern:p,packageRegistry:f,shebang:m}),{customData:this.customData}}async transformPnpSettings(t){}isEsmEnabled(){if(this.opts.project.configuration.sources.has("pnpEnableEsmLoader"))return this.opts.project.configuration.get("pnpEnableEsmLoader");if(this.isESMLoaderRequired)return!0;for(let t of this.opts.project.workspaces)if(t.manifest.type==="module")return!0;return!1}async finalizeInstallWithPnp(t){let r=(0,iTt.getPnpPath)(this.opts.project),s=await this.locateNodeModules(t.ignorePattern);if(s.length>0){this.opts.report.reportWarning(Gae.MessageName.DANGEROUS_NODE_MODULES,"One or more node_modules have been detected and will be removed. This operation may take some time.");for(let o of s)await Tm.xfs.removePromise(o)}if(await this.transformPnpSettings(t),this.opts.project.configuration.get("pnpEnableInlining")){let o=(0,fRr.generateInlinedScript)(t);await Tm.xfs.changeFilePromise(r.cjs,o,{automaticNewlines:!0,mode:493}),await Tm.xfs.removePromise(r.data)}else{let{dataFile:o,loaderFile:g}=(0,fRr.generateSplitScript)(t);await Tm.xfs.changeFilePromise(r.cjs,g,{automaticNewlines:!0,mode:493}),await Tm.xfs.changeFilePromise(r.data,o,{automaticNewlines:!0,mode:420})}this.isEsmEnabled()&&(this.opts.report.reportWarning(Gae.MessageName.UNNAMED,"ESM support for PnP uses the experimental loader API and is therefore experimental"),await Tm.xfs.changeFilePromise(r.esmLoader,(0,fRr.getESMLoaderTemplate)(),{automaticNewlines:!0,mode:420}));let a=this.opts.project.configuration.get("pnpUnpluggedFolder");if(this.unpluggedPaths.size===0)await Tm.xfs.removePromise(a);else for(let o of await Tm.xfs.readdirPromise(a)){let g=Tm.ppath.resolve(a,o);this.unpluggedPaths.has(g)||await Tm.xfs.removePromise(g)}}async locateNodeModules(t){let r=[],s=t?new RegExp(t):null;for(let a of this.opts.project.workspaces){let o=Tm.ppath.join(a.cwd,"node_modules");if(s&&s.test(Tm.ppath.relative(this.opts.project.cwd,a.cwd))||!Tm.xfs.existsSync(o))continue;let g=await Tm.xfs.readdirPromise(o,{withFileTypes:!0}),p=g.filter(f=>!f.isDirectory()||f.name===".bin"||!f.name.startsWith("."));if(p.length===g.length)r.push(o);else for(let f of p)r.push(Tm.ppath.join(o,f.name))}return r}async unplugPackageIfNeeded(t,r,s,a,o){return this.shouldBeUnplugged(t,r,a)?this.unplugPackage(t,s,o):s.packageFs}shouldBeUnplugged(t,r,s){return typeof s.unplugged<"u"?s.unplugged:SRc.has(t.identHash)||t.conditions!=null?!0:r.manifest.preferUnplugged!==null?r.manifest.preferUnplugged:!!(sTt.extractBuildRequest(t,r,s,{configuration:this.opts.project.configuration})?.skipped===!1||r.misc.extractHint)}async unplugPackage(t,r,s){let a=vRc.getUnpluggedPath(t,{configuration:this.opts.project.configuration});return this.opts.project.disabledLocators.has(t.locatorHash)?new Tm.AliasFS(a,{baseFs:r.packageFs,pathUtils:Tm.ppath}):(this.unpluggedPaths.add(a),s.holdFetchResult(this.asyncActions.set(t.locatorHash,async()=>{let o=Tm.ppath.join(a,r.prefixPath,".ready");await Tm.xfs.existsPromise(o)||(this.opts.project.storedBuildState.delete(t.locatorHash),await Tm.xfs.mkdirPromise(a,{recursive:!0}),await Tm.xfs.copyPromise(a,Tm.PortablePath.dot,{baseFs:r.packageFs,overwrite:!1}),await Tm.xfs.writeFilePromise(o,""))})),new Tm.CwdFS(a))}getPackageInformation(t){let r=Mm.structUtils.stringifyIdent(t),s=t.reference,a=this.packageRegistry.get(r);if(!a)throw new Error(`Assertion failed: The package information store should have been available (for ${Mm.structUtils.prettyIdent(this.opts.project.configuration,t)})`);let o=a.get(s);if(!o)throw new Error(`Assertion failed: The package information should have been available (for ${Mm.structUtils.prettyLocator(this.opts.project.configuration,t)})`);return o}getDiskInformation(t){let r=Mm.miscUtils.getMapWithDefault(this.packageRegistry,"@@disk"),s=IRr(this.opts.project.cwd,t);return Mm.miscUtils.getFactoryWithDefault(r,s,()=>({packageLocation:s,packageDependencies:new Map,packagePeers:new Set,linkType:Gae.LinkType.SOFT,discardFromLookup:!1}))}};rRe.PnpInstaller=oTt;function IRr(e,t){let r=Tm.ppath.relative(e,t);return r.match(/^\.{0,2}\//)||(r=`./${r}`),r.replace(/\/?$/,"/")}async function wRc(e){let t=await Gae.Manifest.tryFind(e.prefixPath,{baseFs:e.packageFs})??new Gae.Manifest,r=new Set(["preinstall","install","postinstall"]);for(let s of t.scripts.keys())r.has(s)||t.scripts.delete(s);return{manifest:{scripts:t.scripts,preferUnplugged:t.preferUnplugged,type:t.type},misc:{extractHint:sTt.getExtractHint(e),hasBindingGyp:sTt.hasBindingGyp(e)}}}});var y4i=z(hRr=>{"use strict";Object.defineProperty(hRr,"__esModule",{value:!0});var _4i=(Oa(),Ai(Pa)),h4i=il(),n5=Bn(),i5=Bn(),n$=(Zl(),Ai(pg)),TRc=_4i.__importDefault(gk()),NRc=_4i.__importStar(nTt()),nUe=class extends h4i.BaseCommand{constructor(){super(...arguments),this.all=n$.Option.Boolean("-A,--all",!1,{description:"Unplug direct dependencies from the entire project"}),this.recursive=n$.Option.Boolean("-R,--recursive",!1,{description:"Unplug both direct and transitive dependencies"}),this.json=n$.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.patterns=n$.Option.Rest()}async execute(){let t=await n5.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await n5.Project.find(t,this.context.cwd),a=await n5.Cache.find(t);if(!s)throw new h4i.WorkspaceRequiredError(r.cwd,this.context.cwd);if(t.get("nodeLinker")!=="pnp")throw new n$.UsageError("This command can only be used if the `nodeLinker` option is set to `pnp`");await r.restoreInstallState();let o=new Set(this.patterns),g=this.patterns.map(v=>{let k=i5.structUtils.parseDescriptor(v),T=k.range!=="unknown"?k:i5.structUtils.makeDescriptor(k,"*");if(!i5.semverUtils.validRange(T.range))throw new n$.UsageError(`The range of the descriptor patterns must be a valid semver range (${i5.structUtils.prettyDescriptor(t,T)})`);return O=>{let X=i5.structUtils.stringifyIdent(O);return!TRc.default.isMatch(X,i5.structUtils.stringifyIdent(T))||O.version&&!i5.semverUtils.satisfiesWithPrereleases(O.version,T.range)?!1:(o.delete(v),!0)}}),p=()=>{let v=[];for(let k of r.storedPackages.values())!r.tryWorkspaceByLocator(k)&&!i5.structUtils.isVirtualLocator(k)&&g.some(T=>T(k))&&v.push(k);return v},f=v=>{let k=new Set,T=[],O=(X,U)=>{if(k.has(X.locatorHash))return;let le=!!r.tryWorkspaceByLocator(X);if(!(U>0&&!this.recursive&&le)&&(k.add(X.locatorHash),!r.tryWorkspaceByLocator(X)&&g.some(ae=>ae(X))&&T.push(X),!(U>0&&!this.recursive)))for(let ae of X.dependencies.values()){let ge=r.storedResolutions.get(ae.descriptorHash);if(!ge)throw new Error("Assertion failed: The resolution should have been registered");let fe=r.storedPackages.get(ge);if(!fe)throw new Error("Assertion failed: The package should have been registered");O(fe,U+1)}};for(let X of v)O(X.anchoredPackage,0);return T},m,y;if(this.all&&this.recursive?(m=p(),y="the project"):this.all?(m=f(r.workspaces),y="any workspace"):(m=f([s]),y="this workspace"),o.size>1)throw new n$.UsageError(`Patterns ${n5.formatUtils.prettyList(t,o,n5.formatUtils.Type.CODE)} don't match any packages referenced by ${y}`);if(o.size>0)throw new n$.UsageError(`Pattern ${n5.formatUtils.prettyList(t,o,n5.formatUtils.Type.CODE)} doesn't match any packages referenced by ${y}`);m=n5.miscUtils.sortMap(m,v=>i5.structUtils.stringifyLocator(v));let B=await n5.StreamReport.start({configuration:t,stdout:this.context.stdout,json:this.json},async v=>{for(let k of m){let T=k.version??"unknown",O=r.topLevelWorkspace.manifest.ensureDependencyMeta(i5.structUtils.makeDescriptor(k,T));O.unplugged=!0,v.reportInfo(n5.MessageName.UNNAMED,`Will unpack ${i5.structUtils.prettyLocator(t,k)} to ${n5.formatUtils.pretty(t,NRc.getUnpluggedPath(k,{configuration:t}),n5.formatUtils.Type.PATH)}`),v.reportJson({locator:i5.structUtils.stringifyLocator(k),version:T})}await r.topLevelWorkspace.persistManifest(),this.json||v.reportSeparator()});return B.hasErrors()?B.exitCode():await r.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:a})}};nUe.paths=[["unplug"]];nUe.usage=n$.Command.Usage({description:"force the unpacking of a list of packages",details:"\n This command will add the selectors matching the specified patterns to the list of packages that must be unplugged when installed.\n\n A package being unplugged means that instead of being referenced directly through its archive, it will be unpacked at install time in the directory configured via `pnpUnpluggedFolder`. Note that unpacking packages this way is generally not recommended because it'll make it harder to store your packages within the repository. However, it's a good approach to quickly and safely debug some packages, and can even sometimes be required depending on the context (for example when the package contains shellscripts).\n\n Running the command will set a persistent flag inside your top-level `package.json`, in the `dependenciesMeta` field. As such, to undo its effects, you'll need to revert the changes made to the manifest and run `yarn install` to apply the modification.\n\n By default, only direct dependencies from the current workspace are affected. If `-A,--all` is set, direct dependencies from the entire project are affected. Using the `-R,--recursive` flag will affect transitive dependencies as well as direct ones.\n\n This command accepts glob patterns inside the scope and name components (not the range). Make sure to escape the patterns to prevent your own shell from trying to expand them.\n ",examples:[["Unplug the lodash dependency from the active workspace","yarn unplug lodash"],["Unplug all instances of lodash referenced by any workspace","yarn unplug lodash -A"],["Unplug all instances of lodash referenced by the active workspace and its dependencies","yarn unplug lodash -R"],["Unplug all instances of lodash, anywhere","yarn unplug lodash -AR"],["Unplug one specific version of lodash","yarn unplug lodash@1.2.3"],["Unplug all packages with the `@babel` scope","yarn unplug '@babel/*'"],["Unplug all packages (only for testing, not recommended)","yarn unplug -R '*'"]]});hRr.default=nUe});var nRe=z(Lw=>{"use strict";Object.defineProperty(Lw,"__esModule",{value:!0});Lw.PnpLinker=Lw.PnpInstaller=Lw.quotePathIfNeeded=Lw.getPnpPath=Lw.pnpUtils=Lw.jsInstallUtils=Lw.UnplugCommand=void 0;var _Rr=(Oa(),Ai(Pa)),s5=Bn(),$K=No(),RRc=xt("url"),DRc=mRr(),b4i=_Rr.__importDefault(y4i());Lw.UnplugCommand=b4i.default;var xRc=_Rr.__importStar(dRr());Lw.jsInstallUtils=xRc;var kRc=_Rr.__importStar(nTt());Lw.pnpUtils=kRc;var GRc=e=>({cjs:$K.ppath.join(e.cwd,$K.Filename.pnpCjs),data:$K.ppath.join(e.cwd,$K.Filename.pnpData),esmLoader:$K.ppath.join(e.cwd,$K.Filename.pnpEsmLoader)});Lw.getPnpPath=GRc;var FRc=e=>/\s/.test(e)?JSON.stringify(e):e;Lw.quotePathIfNeeded=FRc;async function ZRc(e,t,r){let s=/\s*--require\s+\S*\.pnp\.c?js\s*/g,a=/\s*--experimental-loader\s+\S*\.pnp\.loader\.mjs\s*/,o=(t.NODE_OPTIONS??"").replace(s," ").replace(a," ").trim();if(e.configuration.get("nodeLinker")!=="pnp"){t.NODE_OPTIONS=o||void 0;return}let g=(0,Lw.getPnpPath)(e),p=`--require ${(0,Lw.quotePathIfNeeded)($K.npath.fromPortablePath(g.cjs))}`;$K.xfs.existsSync(g.esmLoader)&&(p=`${p} --experimental-loader ${(0,RRc.pathToFileURL)($K.npath.fromPortablePath(g.esmLoader)).href}`),$K.xfs.existsSync(g.cjs)&&(t.NODE_OPTIONS=o?`${p} ${o}`:p)}async function LRc(e,t){let r=(0,Lw.getPnpPath)(e);t(r.cjs),t(r.data),t(r.esmLoader),t(e.configuration.get("pnpUnpluggedFolder"))}var VRc={hooks:{populateYarnPaths:LRc,setupScriptEnvironment:ZRc},configuration:{nodeLinker:{description:'The linker used for installing Node packages, one of: "pnp", "pnpm", or "node-modules"',type:s5.SettingsType.STRING,default:"pnp"},winLinkType:{description:"Whether Yarn should use Windows Junctions or symlinks when creating links on Windows.",type:s5.SettingsType.STRING,values:[s5.WindowsLinkType.JUNCTIONS,s5.WindowsLinkType.SYMLINKS],default:s5.WindowsLinkType.JUNCTIONS},pnpMode:{description:"If 'strict', generates standard PnP maps. If 'loose', merges them with the n_m resolution.",type:s5.SettingsType.STRING,default:"strict"},pnpShebang:{description:"String to prepend to the generated PnP script",type:s5.SettingsType.STRING,default:"#!/usr/bin/env node"},pnpIgnorePatterns:{description:"Array of glob patterns; files matching them will use the classic resolution",type:s5.SettingsType.STRING,default:[],isArray:!0},pnpEnableEsmLoader:{description:"If true, Yarn will generate an ESM loader (`.pnp.loader.mjs`). If this is not explicitly set Yarn tries to automatically detect whether ESM support is required.",type:s5.SettingsType.BOOLEAN,default:!1},pnpEnableInlining:{description:"If true, the PnP data will be inlined along with the generated loader",type:s5.SettingsType.BOOLEAN,default:!0},pnpFallbackMode:{description:"If true, the generated PnP loader will follow the top-level fallback rule",type:s5.SettingsType.STRING,default:"dependencies-only"},pnpUnpluggedFolder:{description:"Folder where the unplugged packages must be stored",type:s5.SettingsType.ABSOLUTE_PATH,default:"./.yarn/unplugged"}},linkers:[DRc.PnpLinker],commands:[b4i.default]},E4i=mRr();Object.defineProperty(Lw,"PnpInstaller",{enumerable:!0,get:function(){return E4i.PnpInstaller}});Object.defineProperty(Lw,"PnpLinker",{enumerable:!0,get:function(){return E4i.PnpLinker}});Lw.default=VRc});var B4i=z((yRr,bRr)=>{(function(e){yRr&&typeof yRr=="object"&&typeof bRr<"u"?bRr.exports=e():typeof define=="function"&&define.amd?define([],e):typeof window<"u"?window.isWindows=e():typeof global<"u"?global.isWindows=e():typeof self<"u"?self.isWindows=e():this.isWindows=e()})(function(){"use strict";return function(){return process&&(process.platform==="win32"||/^(msys|cygwin)$/.test(process.env.OSTYPE))}})});var w4i=z((s4l,S4i)=>{"use strict";var WRc=xt("path"),v4i;process.env.PATHEXT&&(v4i=process.env.PATHEXT.split(WRc.delimiter).find(e=>e.toUpperCase()===".CMD"));S4i.exports=v4i||".cmd"});var N4i=z((o4l,T4i)=>{var Fae=xt("constants"),PRc=process.cwd,aTt=null,ORc=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){return aTt||(aTt=PRc.call(process)),aTt};try{process.cwd()}catch{}typeof process.chdir=="function"&&(ERr=process.chdir,process.chdir=function(e){aTt=null,ERr.call(process,e)},Object.setPrototypeOf&&Object.setPrototypeOf(process.chdir,ERr));var ERr;T4i.exports=QRc;function QRc(e){Fae.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)&&t(e),e.lutimes||r(e),e.chown=o(e.chown),e.fchown=o(e.fchown),e.lchown=o(e.lchown),e.chmod=s(e.chmod),e.fchmod=s(e.fchmod),e.lchmod=s(e.lchmod),e.chownSync=g(e.chownSync),e.fchownSync=g(e.fchownSync),e.lchownSync=g(e.lchownSync),e.chmodSync=a(e.chmodSync),e.fchmodSync=a(e.fchmodSync),e.lchmodSync=a(e.lchmodSync),e.stat=p(e.stat),e.fstat=p(e.fstat),e.lstat=p(e.lstat),e.statSync=f(e.statSync),e.fstatSync=f(e.fstatSync),e.lstatSync=f(e.lstatSync),e.chmod&&!e.lchmod&&(e.lchmod=function(y,B,v){v&&process.nextTick(v)},e.lchmodSync=function(){}),e.chown&&!e.lchown&&(e.lchown=function(y,B,v,k){k&&process.nextTick(k)},e.lchownSync=function(){}),ORc==="win32"&&(e.rename=typeof e.rename!="function"?e.rename:function(y){function B(v,k,T){var O=Date.now(),X=0;y(v,k,function U(le){if(le&&(le.code==="EACCES"||le.code==="EPERM"||le.code==="EBUSY")&&Date.now()-O<6e4){setTimeout(function(){e.stat(k,function(ae,ge){ae&&ae.code==="ENOENT"?y(v,k,U):T(le)})},X),X<100&&(X+=10);return}T&&T(le)})}return Object.setPrototypeOf&&Object.setPrototypeOf(B,y),B}(e.rename)),e.read=typeof e.read!="function"?e.read:function(y){function B(v,k,T,O,X,U){var le;if(U&&typeof U=="function"){var ae=0;le=function(ge,fe,pe){if(ge&&ge.code==="EAGAIN"&&ae<10)return ae++,y.call(e,v,k,T,O,X,le);U.apply(this,arguments)}}return y.call(e,v,k,T,O,X,le)}return Object.setPrototypeOf&&Object.setPrototypeOf(B,y),B}(e.read),e.readSync=typeof e.readSync!="function"?e.readSync:function(y){return function(B,v,k,T,O){for(var X=0;;)try{return y.call(e,B,v,k,T,O)}catch(U){if(U.code==="EAGAIN"&&X<10){X++;continue}throw U}}}(e.readSync);function t(y){y.lchmod=function(B,v,k){y.open(B,Fae.O_WRONLY|Fae.O_SYMLINK,v,function(T,O){if(T){k&&k(T);return}y.fchmod(O,v,function(X){y.close(O,function(U){k&&k(X||U)})})})},y.lchmodSync=function(B,v){var k=y.openSync(B,Fae.O_WRONLY|Fae.O_SYMLINK,v),T=!0,O;try{O=y.fchmodSync(k,v),T=!1}finally{if(T)try{y.closeSync(k)}catch{}else y.closeSync(k)}return O}}function r(y){Fae.hasOwnProperty("O_SYMLINK")&&y.futimes?(y.lutimes=function(B,v,k,T){y.open(B,Fae.O_SYMLINK,function(O,X){if(O){T&&T(O);return}y.futimes(X,v,k,function(U){y.close(X,function(le){T&&T(U||le)})})})},y.lutimesSync=function(B,v,k){var T=y.openSync(B,Fae.O_SYMLINK),O,X=!0;try{O=y.futimesSync(T,v,k),X=!1}finally{if(X)try{y.closeSync(T)}catch{}else y.closeSync(T)}return O}):y.futimes&&(y.lutimes=function(B,v,k,T){T&&process.nextTick(T)},y.lutimesSync=function(){})}function s(y){return y&&function(B,v,k){return y.call(e,B,v,function(T){m(T)&&(T=null),k&&k.apply(this,arguments)})}}function a(y){return y&&function(B,v){try{return y.call(e,B,v)}catch(k){if(!m(k))throw k}}}function o(y){return y&&function(B,v,k,T){return y.call(e,B,v,k,function(O){m(O)&&(O=null),T&&T.apply(this,arguments)})}}function g(y){return y&&function(B,v,k){try{return y.call(e,B,v,k)}catch(T){if(!m(T))throw T}}}function p(y){return y&&function(B,v,k){typeof v=="function"&&(k=v,v=null);function T(O,X){X&&(X.uid<0&&(X.uid+=4294967296),X.gid<0&&(X.gid+=4294967296)),k&&k.apply(this,arguments)}return v?y.call(e,B,v,T):y.call(e,B,T)}}function f(y){return y&&function(B,v){var k=v?y.call(e,B,v):y.call(e,B);return k&&(k.uid<0&&(k.uid+=4294967296),k.gid<0&&(k.gid+=4294967296)),k}}function m(y){if(!y||y.code==="ENOSYS")return!0;var B=!process.getuid||process.getuid()!==0;return!!(B&&(y.code==="EINVAL"||y.code==="EPERM"))}}});var x4i=z((a4l,D4i)=>{var R4i=xt("stream").Stream;D4i.exports=MRc;function MRc(e){return{ReadStream:t,WriteStream:r};function t(s,a){if(!(this instanceof t))return new t(s,a);R4i.call(this);var o=this;this.path=s,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=64*1024,a=a||{};for(var g=Object.keys(a),p=0,f=g.length;pthis.end)throw new Error("start must be <= end");this.pos=this.start}if(this.fd!==null){process.nextTick(function(){o._read()});return}e.open(this.path,this.flags,this.mode,function(y,B){if(y){o.emit("error",y),o.readable=!1;return}o.fd=B,o.emit("open",B),o._read()})}function r(s,a){if(!(this instanceof r))return new r(s,a);R4i.call(this),this.path=s,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,a=a||{};for(var o=Object.keys(a),g=0,p=o.length;g= zero");this.pos=this.start}this.busy=!1,this._queue=[],this.fd===null&&(this._open=e.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush())}}});var G4i=z((c4l,k4i)=>{"use strict";k4i.exports=YRc;var HRc=Object.getPrototypeOf||function(e){return e.__proto__};function YRc(e){if(e===null||typeof e!="object")return e;if(e instanceof Object)var t={__proto__:HRc(e)};else var t=Object.create(null);return Object.getOwnPropertyNames(e).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(e,r))}),t}});var V4i=z((l4l,SRr)=>{var IB=xt("fs"),XRc=N4i(),JRc=x4i(),URc=G4i(),cTt=xt("util"),_x,uTt;typeof Symbol=="function"&&typeof Symbol.for=="function"?(_x=Symbol.for("graceful-fs.queue"),uTt=Symbol.for("graceful-fs.previous")):(_x="___graceful-fs.queue",uTt="___graceful-fs.previous");function KRc(){}function L4i(e,t){Object.defineProperty(e,_x,{get:function(){return t}})}var kCe=KRc;cTt.debuglog?kCe=cTt.debuglog("gfs4"):/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&(kCe=function(){var e=cTt.format.apply(cTt,arguments);e="GFS4: "+e.split(/\n/).join(` +GFS4: `),console.error(e)});IB[_x]||(F4i=global[_x]||[],L4i(IB,F4i),IB.close=function(e){function t(r,s){return e.call(IB,r,function(a){a||Z4i(),typeof s=="function"&&s.apply(this,arguments)})}return Object.defineProperty(t,uTt,{value:e}),t}(IB.close),IB.closeSync=function(e){function t(r){e.apply(IB,arguments),Z4i()}return Object.defineProperty(t,uTt,{value:e}),t}(IB.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",function(){kCe(IB[_x]),xt("assert").equal(IB[_x].length,0)}));var F4i;global[_x]||L4i(global,IB[_x]);SRr.exports=BRr(URc(IB));process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!IB.__patched&&(SRr.exports=BRr(IB),IB.__patched=!0);function BRr(e){XRc(e),e.gracefulify=BRr,e.createReadStream=fe,e.createWriteStream=pe;var t=e.readFile;e.readFile=r;function r(Te,ke,x){return typeof ke=="function"&&(x=ke,ke=null),et(Te,ke,x);function et(Ue,Je,Xe,ft){return t(Ue,Je,function(Gt){Gt&&(Gt.code==="EMFILE"||Gt.code==="ENFILE")?iRe([et,[Ue,Je,Xe],Gt,ft||Date.now(),Date.now()]):typeof Xe=="function"&&Xe.apply(this,arguments)})}}var s=e.writeFile;e.writeFile=a;function a(Te,ke,x,et){return typeof x=="function"&&(et=x,x=null),Ue(Te,ke,x,et);function Ue(Je,Xe,ft,Gt,er){return s(Je,Xe,ft,function(Ur){Ur&&(Ur.code==="EMFILE"||Ur.code==="ENFILE")?iRe([Ue,[Je,Xe,ft,Gt],Ur,er||Date.now(),Date.now()]):typeof Gt=="function"&&Gt.apply(this,arguments)})}}var o=e.appendFile;o&&(e.appendFile=g);function g(Te,ke,x,et){return typeof x=="function"&&(et=x,x=null),Ue(Te,ke,x,et);function Ue(Je,Xe,ft,Gt,er){return o(Je,Xe,ft,function(Ur){Ur&&(Ur.code==="EMFILE"||Ur.code==="ENFILE")?iRe([Ue,[Je,Xe,ft,Gt],Ur,er||Date.now(),Date.now()]):typeof Gt=="function"&&Gt.apply(this,arguments)})}}var p=e.copyFile;p&&(e.copyFile=f);function f(Te,ke,x,et){return typeof x=="function"&&(et=x,x=0),Ue(Te,ke,x,et);function Ue(Je,Xe,ft,Gt,er){return p(Je,Xe,ft,function(Ur){Ur&&(Ur.code==="EMFILE"||Ur.code==="ENFILE")?iRe([Ue,[Je,Xe,ft,Gt],Ur,er||Date.now(),Date.now()]):typeof Gt=="function"&&Gt.apply(this,arguments)})}}var m=e.readdir;e.readdir=B;var y=/^v[0-5]\./;function B(Te,ke,x){typeof ke=="function"&&(x=ke,ke=null);var et=y.test(process.version)?function(Xe,ft,Gt,er){return m(Xe,Ue(Xe,ft,Gt,er))}:function(Xe,ft,Gt,er){return m(Xe,ft,Ue(Xe,ft,Gt,er))};return et(Te,ke,x);function Ue(Je,Xe,ft,Gt){return function(er,Ur){er&&(er.code==="EMFILE"||er.code==="ENFILE")?iRe([et,[Je,Xe,ft],er,Gt||Date.now(),Date.now()]):(Ur&&Ur.sort&&Ur.sort(),typeof ft=="function"&&ft.call(this,er,Ur))}}}if(process.version.substr(0,4)==="v0.8"){var v=JRc(e);U=v.ReadStream,ae=v.WriteStream}var k=e.ReadStream;k&&(U.prototype=Object.create(k.prototype),U.prototype.open=le);var T=e.WriteStream;T&&(ae.prototype=Object.create(T.prototype),ae.prototype.open=ge),Object.defineProperty(e,"ReadStream",{get:function(){return U},set:function(Te){U=Te},enumerable:!0,configurable:!0}),Object.defineProperty(e,"WriteStream",{get:function(){return ae},set:function(Te){ae=Te},enumerable:!0,configurable:!0});var O=U;Object.defineProperty(e,"FileReadStream",{get:function(){return O},set:function(Te){O=Te},enumerable:!0,configurable:!0});var X=ae;Object.defineProperty(e,"FileWriteStream",{get:function(){return X},set:function(Te){X=Te},enumerable:!0,configurable:!0});function U(Te,ke){return this instanceof U?(k.apply(this,arguments),this):U.apply(Object.create(U.prototype),arguments)}function le(){var Te=this;be(Te.path,Te.flags,Te.mode,function(ke,x){ke?(Te.autoClose&&Te.destroy(),Te.emit("error",ke)):(Te.fd=x,Te.emit("open",x),Te.read())})}function ae(Te,ke){return this instanceof ae?(T.apply(this,arguments),this):ae.apply(Object.create(ae.prototype),arguments)}function ge(){var Te=this;be(Te.path,Te.flags,Te.mode,function(ke,x){ke?(Te.destroy(),Te.emit("error",ke)):(Te.fd=x,Te.emit("open",x))})}function fe(Te,ke){return new e.ReadStream(Te,ke)}function pe(Te,ke){return new e.WriteStream(Te,ke)}var he=e.open;e.open=be;function be(Te,ke,x,et){return typeof x=="function"&&(et=x,x=null),Ue(Te,ke,x,et);function Ue(Je,Xe,ft,Gt,er){return he(Je,Xe,ft,function(Ur,Ot){Ur&&(Ur.code==="EMFILE"||Ur.code==="ENFILE")?iRe([Ue,[Je,Xe,ft,Gt],Ur,er||Date.now(),Date.now()]):typeof Gt=="function"&&Gt.apply(this,arguments)})}}return e}function iRe(e){kCe("ENQUEUE",e[0].name,e[1]),IB[_x].push(e),vRr()}var lTt;function Z4i(){for(var e=Date.now(),t=0;t2&&(IB[_x][t][3]=e,IB[_x][t][4]=e);vRr()}function vRr(){if(clearTimeout(lTt),lTt=void 0,IB[_x].length!==0){var e=IB[_x].shift(),t=e[0],r=e[1],s=e[2],a=e[3],o=e[4];if(a===void 0)kCe("RETRY",t.name,r),t.apply(null,r);else if(Date.now()-a>=6e4){kCe("TIMEOUT",t.name,r);var g=r.pop();typeof g=="function"&&g.call(null,s)}else{var p=Date.now()-o,f=Math.max(o-a,1),m=Math.min(f*1.2,100);p>=m?(kCe("RETRY",t.name,r),t.apply(null,r.concat([a]))):IB[_x].push(e)}lTt===void 0&&(lTt=setTimeout(vRr,0))}}});var O4i=z((u4l,P4i)=>{"use strict";TRr.ifExists=eDc;var sRe=xt("util"),b3=xt("path"),wRr=B4i(),jRc=w4i(),zRc=/^#!\s*(?:\/usr\/bin\/env(?:\s+-S\s*)?)?\s*([^ \t]+)(.*)$/,qRc={createPwshFile:!0,createCmdFile:wRr(),fs:V4i()},$Rc=new Map([[".js","node"],[".cjs","node"],[".mjs","node"],[".cmd","cmd"],[".bat","cmd"],[".ps1","pwsh"],[".sh","sh"]]);function W4i(e){let t={...qRc,...e},r=t.fs;return t.fs_={chmod:r.chmod?(0,sRe.promisify)(r.chmod):async()=>{},mkdir:(0,sRe.promisify)(r.mkdir),readFile:(0,sRe.promisify)(r.readFile),stat:(0,sRe.promisify)(r.stat),unlink:(0,sRe.promisify)(r.unlink),writeFile:(0,sRe.promisify)(r.writeFile)},t}async function TRr(e,t,r){let s=W4i(r);await rDc(e,t,s)}function eDc(e,t,r){return TRr(e,t,r).catch(()=>{})}function tDc(e,t){return t.fs_.unlink(e).catch(()=>{})}async function rDc(e,t,r){let s=await aDc(e,r);return await nDc(t,r),iDc(e,t,s,r)}function nDc(e,t){return t.fs_.mkdir(b3.dirname(e),{recursive:!0})}function iDc(e,t,r,s){let a=W4i(s),o=[{generator:gDc,extension:""}];return a.createCmdFile&&o.push({generator:uDc,extension:jRc}),a.createPwshFile&&o.push({generator:ADc,extension:".ps1"}),Promise.all(o.map(g=>lDc(e,t+g.extension,r,g.generator,a)))}function sDc(e,t){return tDc(e,t)}function oDc(e,t){return dDc(e,t)}async function aDc(e,t){try{let a=(await t.fs_.readFile(e,"utf8")).trim().split(/\r*\n/)[0].match(zRc);if(!a){let o=b3.extname(e).toLowerCase();return{program:$Rc.get(o)||null,additionalArgs:""}}return{program:a[1],additionalArgs:a[2]}}catch(r){if(!wRr()||r.code!=="ENOENT")throw r;if(await t.fs_.stat(`${e}${cDc()}`))return{program:null,additionalArgs:""};throw r}}function cDc(){let e;return process.env.PATHEXT&&(e=process.env.PATHEXT.split(b3.delimiter).find(t=>t.toLowerCase()===".exe")),e||".exe"}async function lDc(e,t,r,s,a){let o=a.preserveSymlinks?"--preserve-symlinks":"",g=[r.additionalArgs,o].filter(p=>p).join(" ");return a=Object.assign({},a,{prog:r.program,args:g}),await sDc(t,a),await a.fs_.writeFile(t,s(e,t,a),"utf8"),oDc(t,a)}function uDc(e,t,r){let a=b3.relative(b3.dirname(t),e).split("/").join("\\"),o=b3.isAbsolute(a)?`"${a}"`:`"%~dp0\\${a}"`,g,p=r.prog,f=r.args||"",m=iUe(r.nodePath).win32,y=iUe(r.prependToPath).win32;p?p==="node"&&r.nodeExecPath?(p=`"${r.nodeExecPath}"`,a=o):(g=`"%~dp0\\${p}.exe"`,a=o):(p=o,f="",a="");let B=r.progArgs?`${r.progArgs.join(" ")} `:"",v=`@SETLOCAL\r `;return y&&(v+=`@SET "PATH=${y}:%PATH%"\r `),m&&(v+=`@IF NOT DEFINED NODE_PATH (\r @SET "NODE_PATH=${m}"\r @@ -1517,7 +1517,7 @@ GFS4: `),console.error(e)});pB[px]||(T4i=global[px]||[],R4i(pB,T4i),pB.close=fun ${p} ${f} ${a} ${B}%*\r )\r `:v+=`@${p} ${f} ${a} ${B}%*\r -`,v}function KRc(e,t,r){let s=h3.relative(h3.dirname(t),e),a=r.prog&&r.prog.split("\\").join("/"),o;s=s.split("\\").join("/");let g=h3.isAbsolute(s)?`"${s}"`:`"$basedir/${s}"`,p=r.args||"",f=rUe(r.nodePath).posix;a?r.prog==="node"&&r.nodeExecPath?(a=`"${r.nodeExecPath}"`,s=g):(o=`"$basedir/${r.prog}"`,s=g):(a=g,p="",s="");let m=r.progArgs?`${r.progArgs.join(" ")} `:"",y=`#!/bin/sh +`,v}function gDc(e,t,r){let s=b3.relative(b3.dirname(t),e),a=r.prog&&r.prog.split("\\").join("/"),o;s=s.split("\\").join("/");let g=b3.isAbsolute(s)?`"${s}"`:`"$basedir/${s}"`,p=r.args||"",f=iUe(r.nodePath).posix;a?r.prog==="node"&&r.nodeExecPath?(a=`"${r.nodeExecPath}"`,s=g):(o=`"$basedir/${r.prog}"`,s=g):(a=g,p="",s="");let m=r.progArgs?`${r.progArgs.join(" ")} `:"",y=`#!/bin/sh basedir=$(dirname "$(echo "$0" | sed -e 's,\\\\,/,g')") case \`uname\` in @@ -1537,20 +1537,20 @@ else fi `:y+=`${a} ${p} ${s} ${m}"$@" exit $? -`,y}function jRc(e,t,r){let s=h3.relative(h3.dirname(t),e),a=r.prog&&r.prog.split("\\").join("/"),o=a&&`"${a}$exe"`,g;s=s.split("\\").join("/");let p=h3.isAbsolute(s)?`"${s}"`:`"$basedir/${s}"`,f=r.args||"",m=rUe(r.nodePath),y=m.win32,B=m.posix,v=rUe(r.prependToPath),G=v.win32,T=v.posix;o?r.prog==="node"&&r.nodeExecPath?(o=`"${r.nodeExecPath}"`,s=p):(g=`"$basedir/${r.prog}$exe"`,s=p):(o=p,f="",s="");let O=r.progArgs?`${r.progArgs.join(" ")} `:"",X=`#!/usr/bin/env pwsh +`,y}function ADc(e,t,r){let s=b3.relative(b3.dirname(t),e),a=r.prog&&r.prog.split("\\").join("/"),o=a&&`"${a}$exe"`,g;s=s.split("\\").join("/");let p=b3.isAbsolute(s)?`"${s}"`:`"$basedir/${s}"`,f=r.args||"",m=iUe(r.nodePath),y=m.win32,B=m.posix,v=iUe(r.prependToPath),k=v.win32,T=v.posix;o?r.prog==="node"&&r.nodeExecPath?(o=`"${r.nodeExecPath}"`,s=p):(g=`"$basedir/${r.prog}$exe"`,s=p):(o=p,f="",s="");let O=r.progArgs?`${r.progArgs.join(" ")} `:"",X=`#!/usr/bin/env pwsh $basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent $exe="" -${y||G?`$pathsep=":" +${y||k?`$pathsep=":" `:""}${y?`$env_node_path=$env:NODE_PATH $new_node_path="${y}" -`:""}${G?`$env_path=$env:PATH -$prepend_path="${G}" +`:""}${k?`$env_path=$env:PATH +$prepend_path="${k}" `:""}if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { # Fix case when both the Windows and Linux builds of Node # are installed in the same directory $exe=".exe" -${y||G?` $pathsep=";" +${y||k?` $pathsep=";" `:""}}`;return(B||T)&&(X+=` else { ${B?` $new_node_path="${B}" `:""}${T?` $prepend_path="${T}" @@ -1582,7 +1582,7 @@ if (Test-Path ${g}) { $ret=$LASTEXITCODE } ${y?`$env:NODE_PATH=$env_node_path -`:""}${G?`$env:PATH=$env_path +`:""}${k?`$env:PATH=$env_path `:""}exit $ret `:X+=` # Support pipeline input @@ -1592,36 +1592,36 @@ if ($MyInvocation.ExpectingInput) { & ${o} ${f} ${s} ${O}$args } ${y?`$env:NODE_PATH=$env_node_path -`:""}${G?`$env:PATH=$env_path +`:""}${k?`$env:PATH=$env_path `:""}exit $LASTEXITCODE -`,X}function zRc(e,t){return t.fs_.chmod(e,493)}function rUe(e){if(!e||!e.length)return{win32:"",posix:""};let t=typeof e=="string"?e.split(h3.delimiter):Array.from(e),r={};for(let s=0;s`/mnt/${p.toLowerCase()}`):t[s];r.win32=r.win32?`${r.win32};${a}`:a,r.posix=r.posix?`${r.posix}:${o}`:o,r[s]={win32:a,posix:o}}return r}k4i.exports=bRr});var RRr=z(xCe=>{"use strict";Object.defineProperty(xCe,"__esModule",{value:!0});xCe.NodeModulesLinker=xCe.NodeModulesMode=void 0;xCe.getGlobalHardlinksStore=X4i;var TRr=(Ma(),Ai(Oa)),Jd=Bn(),V4i=Bn(),sX=Bn(),BRr=Bn(),Cu=Ro(),Vp=Ro(),qRc=SJ(),$Rc=jJe(),ERr=jJe(),eDc=aO(),W4i=tRe(),tDc=TRr.__importDefault(G4i()),F4i=(Fl(),Ai(dg)),P4i=TRr.__importDefault(Dt("crypto")),rDc=TRr.__importDefault(Dt("fs")),O4i=1,fB="node_modules",cTt=".bin",M4i=".yarn-state.yml",nDc=1e3,_3;(function(e){e.CLASSIC="classic",e.HARDLINKS_LOCAL="hardlinks-local",e.HARDLINKS_GLOBAL="hardlinks-global"})(_3||(xCe.NodeModulesMode=_3={}));var vRr=class{constructor(){this.installStateCache=new Map}getCustomDataKey(){return JSON.stringify({name:"NodeModulesLinker",version:3})}supportsPackage(t,r){return this.isEnabled(r)}async findPackageLocation(t,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the node-modules linker to be enabled");let s=r.project.tryWorkspaceByLocator(t);if(s)return s.cwd;let a=await Jd.miscUtils.getFactoryWithDefault(this.installStateCache,r.project.cwd,async()=>await wRr(r.project,{unrollAliases:!0}));if(a===null)throw new F4i.UsageError("Couldn't find the node_modules state file - running an install might help (findPackageLocation)");let o=a.locatorMap.get(Jd.structUtils.stringifyLocator(t));if(!o){let f=new F4i.UsageError(`Couldn't find ${Jd.structUtils.prettyLocator(r.project.configuration,t)} in the currently installed node_modules map - running an install might help`);throw f.code="LOCATOR_NOT_INSTALLED",f}let g=o.locations.sort((f,m)=>f.split(Cu.ppath.sep).length-m.split(Cu.ppath.sep).length),p=Cu.ppath.join(r.project.configuration.startingCwd,fB);return g.find(f=>Cu.ppath.contains(p,f))||o.locations[0]}async findPackageLocator(t,r){if(!this.isEnabled(r))return null;let s=await Jd.miscUtils.getFactoryWithDefault(this.installStateCache,r.project.cwd,async()=>await wRr(r.project,{unrollAliases:!0}));if(s===null)return null;let{locationRoot:a,segments:o}=lTt(Cu.ppath.resolve(t),{skipPrefix:r.project.cwd}),g=s.locationTree.get(a);if(!g)return null;let p=g.locator;for(let f of o){if(g=g.children.get(f),!g)break;p=g.locator||p}return Jd.structUtils.parseLocator(p)}makeInstaller(t){return new SRr(t)}isEnabled(t){return t.project.configuration.get("nodeLinker")==="node-modules"}};xCe.NodeModulesLinker=vRr;var SRr=class{constructor(t){this.opts=t,this.localStore=new Map,this.realLocatorChecksums=new Map,this.customData={store:new Map}}attachCustomData(t){this.customData=t}async installPackage(t,r){let s=Cu.ppath.resolve(r.packageFs.getRealPath(),r.prefixPath),a=this.customData.store.get(t.locatorHash);if(typeof a>"u"&&(a=await iDc(t,r),t.linkType===sX.LinkType.HARD&&this.customData.store.set(t.locatorHash,a)),!Jd.structUtils.isPackageCompatible(t,this.opts.project.configuration.getSupportedArchitectures()))return{packageLocation:null,buildRequest:null};let o=new Map,g=new Set;o.has(Jd.structUtils.stringifyIdent(t))||o.set(Jd.structUtils.stringifyIdent(t),t.reference);let p=t;if(Jd.structUtils.isVirtualLocator(t)){p=Jd.structUtils.devirtualizeLocator(t);for(let y of t.peerDependencies.values())o.set(Jd.structUtils.stringifyIdent(y),null),g.add(Jd.structUtils.stringifyIdent(y))}let f={packageLocation:`${Cu.npath.fromPortablePath(s)}/`,packageDependencies:o,packagePeers:g,linkType:t.linkType,discardFromLookup:r.discardFromLookup??!1};this.localStore.set(t.locatorHash,{pkg:t,customPackageData:a,dependencyMeta:this.opts.project.getDependencyMeta(t,t.version),pnpNode:f});let m=r.checksum?r.checksum.substring(r.checksum.indexOf("/")+1):null;return this.realLocatorChecksums.set(p.locatorHash,m),{packageLocation:s,buildRequest:null}}async attachInternalDependencies(t,r){let s=this.localStore.get(t.locatorHash);if(typeof s>"u")throw new Error("Assertion failed: Expected information object to have been registered");for(let[a,o]of r){let g=Jd.structUtils.areIdentsEqual(a,o)?o.reference:[Jd.structUtils.stringifyIdent(o),o.reference];s.pnpNode.packageDependencies.set(Jd.structUtils.stringifyIdent(a),g)}}async attachExternalDependents(t,r){throw new Error("External dependencies haven't been implemented for the node-modules linker")}async finalizeInstall(){if(this.opts.project.configuration.get("nodeLinker")!=="node-modules")return;let t=new Vp.VirtualFS({baseFs:new qRc.ZipOpenFS({maxOpenFiles:80,readOnlyArchives:!0})}),r=await wRr(this.opts.project),s=this.opts.project.configuration.get("nmMode");(r===null||s!==r.nmMode)&&(this.opts.project.storedBuildState.clear(),r={locatorMap:new Map,binSymlinks:new Map,locationTree:new Map,nmMode:s,mtimeMs:0});let a=new Map(this.opts.project.workspaces.map(v=>{let G=this.opts.project.configuration.get("nmHoistingLimits");try{G=Jd.miscUtils.validateEnum(ERr.NodeModulesHoistingLimits,v.manifest.installConfig?.hoistingLimits??G)}catch{let O=Jd.structUtils.prettyWorkspace(this.opts.project.configuration,v);this.opts.report.reportWarning(BRr.MessageName.INVALID_MANIFEST,`${O}: Invalid 'installConfig.hoistingLimits' value. Expected one of ${Object.values(ERr.NodeModulesHoistingLimits).join(", ")}, using default: "${G}"`)}return[v.relativeCwd,G]})),o=new Map(this.opts.project.workspaces.map(v=>{let G=this.opts.project.configuration.get("nmSelfReferences");return G=v.manifest.installConfig?.selfReferences??G,[v.relativeCwd,G]})),g={VERSIONS:{std:1},topLevel:{name:null,reference:null},getLocator:(v,G)=>Array.isArray(G)?{name:G[0],reference:G[1]}:{name:v,reference:G},getDependencyTreeRoots:()=>this.opts.project.workspaces.map(v=>{let G=v.anchoredLocator;return{name:Jd.structUtils.stringifyIdent(G),reference:G.reference}}),getPackageInformation:v=>{let G=v.reference===null?this.opts.project.topLevelWorkspace.anchoredLocator:Jd.structUtils.makeLocator(Jd.structUtils.parseIdent(v.name),v.reference),T=this.localStore.get(G.locatorHash);if(typeof T>"u")throw new Error("Assertion failed: Expected the package reference to have been registered");return T.pnpNode},findPackageLocator:v=>{let G=this.opts.project.tryWorkspaceByCwd(Cu.npath.toPortablePath(v));if(G!==null){let T=G.anchoredLocator;return{name:Jd.structUtils.stringifyIdent(T),reference:T.reference}}throw new Error("Assertion failed: Unimplemented")},resolveToUnqualified:()=>{throw new Error("Assertion failed: Unimplemented")},resolveUnqualified:()=>{throw new Error("Assertion failed: Unimplemented")},resolveRequest:()=>{throw new Error("Assertion failed: Unimplemented")},resolveVirtual:v=>Cu.npath.fromPortablePath(Vp.VirtualFS.resolveVirtual(Cu.npath.toPortablePath(v)))},{tree:p,errors:f,preserveSymlinksRequired:m}=(0,$Rc.buildNodeModulesTree)(g,{pnpifyFs:!1,validateExternalSoftLinks:!0,hoistingLimitsByCwd:a,project:this.opts.project,selfReferencesByCwd:o});if(!p){for(let{messageName:v,text:G}of f)this.opts.report.reportError(v,G);return}let y=(0,ERr.buildLocatorMap)(p);await uDc(r,y,{baseFs:t,project:this.opts.project,report:this.opts.report,realLocatorChecksums:this.realLocatorChecksums,loadManifest:async v=>{let G=Jd.structUtils.parseLocator(v),T=this.localStore.get(G.locatorHash);if(typeof T>"u")throw new Error("Assertion failed: Expected the slot to exist");return T.customPackageData.manifest}});let B=[];for(let[v,G]of y.entries()){if(H4i(v))continue;let T=Jd.structUtils.parseLocator(v),O=this.localStore.get(T.locatorHash);if(typeof O>"u")throw new Error("Assertion failed: Expected the slot to exist");if(this.opts.project.tryWorkspaceByLocator(O.pkg))continue;let X=W4i.jsInstallUtils.extractBuildRequest(O.pkg,O.customPackageData,O.dependencyMeta,{configuration:this.opts.project.configuration});X&&B.push({buildLocations:G.locations,locator:T,buildRequest:X})}return m&&this.opts.report.reportWarning(BRr.MessageName.NM_PRESERVE_SYMLINKS_REQUIRED,`The application uses portals and that's why ${Jd.formatUtils.pretty(this.opts.project.configuration,"--preserve-symlinks",Jd.formatUtils.Type.CODE)} Node option is required for launching it`),{customData:this.customData,records:B}}};async function iDc(e,t){let r=await Jd.Manifest.tryFind(t.prefixPath,{baseFs:t.packageFs})??new Jd.Manifest,s=new Set(["preinstall","install","postinstall"]);for(let a of r.scripts.keys())s.has(a)||r.scripts.delete(a);return{manifest:{bin:r.bin,scripts:r.scripts},misc:{hasBindingGyp:W4i.jsInstallUtils.hasBindingGyp(t)}}}async function sDc(e,t,r,s,{installChangedByUser:a}){let o="";o+=`# Warning: This file is automatically generated. Removing it is fine, but will +`,X}function dDc(e,t){return t.fs_.chmod(e,493)}function iUe(e){if(!e||!e.length)return{win32:"",posix:""};let t=typeof e=="string"?e.split(b3.delimiter):Array.from(e),r={};for(let s=0;s`/mnt/${p.toLowerCase()}`):t[s];r.win32=r.win32?`${r.win32};${a}`:a,r.posix=r.posix?`${r.posix}:${o}`:o,r[s]={win32:a,posix:o}}return r}P4i.exports=TRr});var ZRr=z(GCe=>{"use strict";Object.defineProperty(GCe,"__esModule",{value:!0});GCe.NodeModulesLinker=GCe.NodeModulesMode=void 0;GCe.getGlobalHardlinksStore=$4i;var GRr=(Oa(),Ai(Pa)),Ud=Bn(),Y4i=Bn(),cX=Bn(),RRr=Bn(),mu=No(),Wp=No(),pDc=NJ(),fDc=qJe(),NRr=qJe(),IDc=uO(),X4i=nRe(),CDc=GRr.__importDefault(O4i()),Q4i=(Zl(),Ai(pg)),J4i=GRr.__importDefault(xt("crypto")),mDc=GRr.__importDefault(xt("fs")),U4i=1,CB="node_modules",gTt=".bin",K4i=".yarn-state.yml",hDc=1e3,E3;(function(e){e.CLASSIC="classic",e.HARDLINKS_LOCAL="hardlinks-local",e.HARDLINKS_GLOBAL="hardlinks-global"})(E3||(GCe.NodeModulesMode=E3={}));var DRr=class{constructor(){this.installStateCache=new Map}getCustomDataKey(){return JSON.stringify({name:"NodeModulesLinker",version:3})}supportsPackage(t,r){return this.isEnabled(r)}async findPackageLocation(t,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the node-modules linker to be enabled");let s=r.project.tryWorkspaceByLocator(t);if(s)return s.cwd;let a=await Ud.miscUtils.getFactoryWithDefault(this.installStateCache,r.project.cwd,async()=>await kRr(r.project,{unrollAliases:!0}));if(a===null)throw new Q4i.UsageError("Couldn't find the node_modules state file - running an install might help (findPackageLocation)");let o=a.locatorMap.get(Ud.structUtils.stringifyLocator(t));if(!o){let f=new Q4i.UsageError(`Couldn't find ${Ud.structUtils.prettyLocator(r.project.configuration,t)} in the currently installed node_modules map - running an install might help`);throw f.code="LOCATOR_NOT_INSTALLED",f}let g=o.locations.sort((f,m)=>f.split(mu.ppath.sep).length-m.split(mu.ppath.sep).length),p=mu.ppath.join(r.project.configuration.startingCwd,CB);return g.find(f=>mu.ppath.contains(p,f))||o.locations[0]}async findPackageLocator(t,r){if(!this.isEnabled(r))return null;let s=await Ud.miscUtils.getFactoryWithDefault(this.installStateCache,r.project.cwd,async()=>await kRr(r.project,{unrollAliases:!0}));if(s===null)return null;let{locationRoot:a,segments:o}=ATt(mu.ppath.resolve(t),{skipPrefix:r.project.cwd}),g=s.locationTree.get(a);if(!g)return null;let p=g.locator;for(let f of o){if(g=g.children.get(f),!g)break;p=g.locator||p}return Ud.structUtils.parseLocator(p)}makeInstaller(t){return new xRr(t)}isEnabled(t){return t.project.configuration.get("nodeLinker")==="node-modules"}};GCe.NodeModulesLinker=DRr;var xRr=class{constructor(t){this.opts=t,this.localStore=new Map,this.realLocatorChecksums=new Map,this.customData={store:new Map}}attachCustomData(t){this.customData=t}async installPackage(t,r){let s=mu.ppath.resolve(r.packageFs.getRealPath(),r.prefixPath),a=this.customData.store.get(t.locatorHash);if(typeof a>"u"&&(a=await _Dc(t,r),t.linkType===cX.LinkType.HARD&&this.customData.store.set(t.locatorHash,a)),!Ud.structUtils.isPackageCompatible(t,this.opts.project.configuration.getSupportedArchitectures()))return{packageLocation:null,buildRequest:null};let o=new Map,g=new Set;o.has(Ud.structUtils.stringifyIdent(t))||o.set(Ud.structUtils.stringifyIdent(t),t.reference);let p=t;if(Ud.structUtils.isVirtualLocator(t)){p=Ud.structUtils.devirtualizeLocator(t);for(let y of t.peerDependencies.values())o.set(Ud.structUtils.stringifyIdent(y),null),g.add(Ud.structUtils.stringifyIdent(y))}let f={packageLocation:`${mu.npath.fromPortablePath(s)}/`,packageDependencies:o,packagePeers:g,linkType:t.linkType,discardFromLookup:r.discardFromLookup??!1};this.localStore.set(t.locatorHash,{pkg:t,customPackageData:a,dependencyMeta:this.opts.project.getDependencyMeta(t,t.version),pnpNode:f});let m=r.checksum?r.checksum.substring(r.checksum.indexOf("/")+1):null;return this.realLocatorChecksums.set(p.locatorHash,m),{packageLocation:s,buildRequest:null}}async attachInternalDependencies(t,r){let s=this.localStore.get(t.locatorHash);if(typeof s>"u")throw new Error("Assertion failed: Expected information object to have been registered");for(let[a,o]of r){let g=Ud.structUtils.areIdentsEqual(a,o)?o.reference:[Ud.structUtils.stringifyIdent(o),o.reference];s.pnpNode.packageDependencies.set(Ud.structUtils.stringifyIdent(a),g)}}async attachExternalDependents(t,r){throw new Error("External dependencies haven't been implemented for the node-modules linker")}async finalizeInstall(){if(this.opts.project.configuration.get("nodeLinker")!=="node-modules")return;let t=new Wp.VirtualFS({baseFs:new pDc.ZipOpenFS({maxOpenFiles:80,readOnlyArchives:!0})}),r=await kRr(this.opts.project),s=this.opts.project.configuration.get("nmMode");(r===null||s!==r.nmMode)&&(this.opts.project.storedBuildState.clear(),r={locatorMap:new Map,binSymlinks:new Map,locationTree:new Map,nmMode:s,mtimeMs:0});let a=new Map(this.opts.project.workspaces.map(v=>{let k=this.opts.project.configuration.get("nmHoistingLimits");try{k=Ud.miscUtils.validateEnum(NRr.NodeModulesHoistingLimits,v.manifest.installConfig?.hoistingLimits??k)}catch{let O=Ud.structUtils.prettyWorkspace(this.opts.project.configuration,v);this.opts.report.reportWarning(RRr.MessageName.INVALID_MANIFEST,`${O}: Invalid 'installConfig.hoistingLimits' value. Expected one of ${Object.values(NRr.NodeModulesHoistingLimits).join(", ")}, using default: "${k}"`)}return[v.relativeCwd,k]})),o=new Map(this.opts.project.workspaces.map(v=>{let k=this.opts.project.configuration.get("nmSelfReferences");return k=v.manifest.installConfig?.selfReferences??k,[v.relativeCwd,k]})),g={VERSIONS:{std:1},topLevel:{name:null,reference:null},getLocator:(v,k)=>Array.isArray(k)?{name:k[0],reference:k[1]}:{name:v,reference:k},getDependencyTreeRoots:()=>this.opts.project.workspaces.map(v=>{let k=v.anchoredLocator;return{name:Ud.structUtils.stringifyIdent(k),reference:k.reference}}),getPackageInformation:v=>{let k=v.reference===null?this.opts.project.topLevelWorkspace.anchoredLocator:Ud.structUtils.makeLocator(Ud.structUtils.parseIdent(v.name),v.reference),T=this.localStore.get(k.locatorHash);if(typeof T>"u")throw new Error("Assertion failed: Expected the package reference to have been registered");return T.pnpNode},findPackageLocator:v=>{let k=this.opts.project.tryWorkspaceByCwd(mu.npath.toPortablePath(v));if(k!==null){let T=k.anchoredLocator;return{name:Ud.structUtils.stringifyIdent(T),reference:T.reference}}throw new Error("Assertion failed: Unimplemented")},resolveToUnqualified:()=>{throw new Error("Assertion failed: Unimplemented")},resolveUnqualified:()=>{throw new Error("Assertion failed: Unimplemented")},resolveRequest:()=>{throw new Error("Assertion failed: Unimplemented")},resolveVirtual:v=>mu.npath.fromPortablePath(Wp.VirtualFS.resolveVirtual(mu.npath.toPortablePath(v)))},{tree:p,errors:f,preserveSymlinksRequired:m}=(0,fDc.buildNodeModulesTree)(g,{pnpifyFs:!1,validateExternalSoftLinks:!0,hoistingLimitsByCwd:a,project:this.opts.project,selfReferencesByCwd:o});if(!p){for(let{messageName:v,text:k}of f)this.opts.report.reportError(v,k);return}let y=(0,NRr.buildLocatorMap)(p);await SDc(r,y,{baseFs:t,project:this.opts.project,report:this.opts.report,realLocatorChecksums:this.realLocatorChecksums,loadManifest:async v=>{let k=Ud.structUtils.parseLocator(v),T=this.localStore.get(k.locatorHash);if(typeof T>"u")throw new Error("Assertion failed: Expected the slot to exist");return T.customPackageData.manifest}});let B=[];for(let[v,k]of y.entries()){if(q4i(v))continue;let T=Ud.structUtils.parseLocator(v),O=this.localStore.get(T.locatorHash);if(typeof O>"u")throw new Error("Assertion failed: Expected the slot to exist");if(this.opts.project.tryWorkspaceByLocator(O.pkg))continue;let X=X4i.jsInstallUtils.extractBuildRequest(O.pkg,O.customPackageData,O.dependencyMeta,{configuration:this.opts.project.configuration});X&&B.push({buildLocations:k.locations,locator:T,buildRequest:X})}return m&&this.opts.report.reportWarning(RRr.MessageName.NM_PRESERVE_SYMLINKS_REQUIRED,`The application uses portals and that's why ${Ud.formatUtils.pretty(this.opts.project.configuration,"--preserve-symlinks",Ud.formatUtils.Type.CODE)} Node option is required for launching it`),{customData:this.customData,records:B}}};async function _Dc(e,t){let r=await Ud.Manifest.tryFind(t.prefixPath,{baseFs:t.packageFs})??new Ud.Manifest,s=new Set(["preinstall","install","postinstall"]);for(let a of r.scripts.keys())s.has(a)||r.scripts.delete(a);return{manifest:{bin:r.bin,scripts:r.scripts},misc:{hasBindingGyp:X4i.jsInstallUtils.hasBindingGyp(t)}}}async function yDc(e,t,r,s,{installChangedByUser:a}){let o="";o+=`# Warning: This file is automatically generated. Removing it is fine, but will `,o+=`# cause your node_modules installation to become invalidated. `,o+=` `,o+=`__metadata: -`,o+=` version: ${O4i} +`,o+=` version: ${U4i} `,o+=` nmMode: ${s.value} -`;let g=Array.from(t.keys()).sort(),p=Jd.structUtils.stringifyLocator(e.topLevelWorkspace.anchoredLocator);for(let y of g){let B=t.get(y);o+=` +`;let g=Array.from(t.keys()).sort(),p=Ud.structUtils.stringifyLocator(e.topLevelWorkspace.anchoredLocator);for(let y of g){let B=t.get(y);o+=` `,o+=`${JSON.stringify(y)}: `,o+=` locations: -`;for(let v of B.locations){let G=Cu.ppath.contains(e.cwd,v);if(G===null)throw new Error(`Assertion failed: Expected the path to be within the project (${v})`);o+=` - ${JSON.stringify(G)} +`;for(let v of B.locations){let k=mu.ppath.contains(e.cwd,v);if(k===null)throw new Error(`Assertion failed: Expected the path to be within the project (${v})`);o+=` - ${JSON.stringify(k)} `}if(B.aliases.length>0){o+=` aliases: `;for(let v of B.aliases)o+=` - ${JSON.stringify(v)} `}if(y===p&&r.size>0){o+=` bin: -`;for(let[v,G]of r){let T=Cu.ppath.contains(e.cwd,v);if(T===null)throw new Error(`Assertion failed: Expected the path to be within the project (${v})`);o+=` ${JSON.stringify(T)}: -`;for(let[O,X]of G){let U=Cu.ppath.relative(Cu.ppath.join(v,fB),X);o+=` ${JSON.stringify(O)}: ${JSON.stringify(U)} -`}}}}let f=e.cwd,m=Cu.ppath.join(f,fB,M4i);a&&await Vp.xfs.removePromise(m),await Vp.xfs.changeFilePromise(m,o,{automaticNewlines:!0})}async function wRr(e,{unrollAliases:t=!1}={}){let r=e.cwd,s=Cu.ppath.join(r,fB,M4i),a;try{a=await Vp.xfs.statPromise(s)}catch{}if(!a)return null;let o=(0,eDc.parseSyml)(await Vp.xfs.readFilePromise(s,"utf8"));if(o.__metadata.version>O4i)return null;let g=o.__metadata.nmMode||_3.CLASSIC,p=new Map,f=new Map;delete o.__metadata;for(let[m,y]of Object.entries(o)){let B=y.locations.map(G=>Cu.ppath.join(r,G)),v=y.bin;if(v)for(let[G,T]of Object.entries(v)){let O=Cu.ppath.join(r,Cu.npath.toPortablePath(G)),X=Jd.miscUtils.getMapWithDefault(f,O);for(let[U,le]of Object.entries(T))X.set(U,Cu.npath.toPortablePath([O,fB,le].join(Cu.ppath.sep)))}if(p.set(m,{target:Cu.PortablePath.dot,linkType:sX.LinkType.HARD,locations:B,aliases:y.aliases||[]}),t&&y.aliases)for(let G of y.aliases){let{scope:T,name:O}=Jd.structUtils.parseLocator(m),X=Jd.structUtils.makeLocator(Jd.structUtils.makeIdent(T,O),G),U=Jd.structUtils.stringifyLocator(X);p.set(U,{target:Cu.PortablePath.dot,linkType:sX.LinkType.HARD,locations:B,aliases:[]})}}return{locatorMap:p,binSymlinks:f,locationTree:Q4i(p,{skipPrefix:e.cwd}),nmMode:g,mtimeMs:a.mtimeMs}}var iRe=async(e,t)=>{if(e.split(Cu.ppath.sep).indexOf(fB)<0)throw new Error(`Assertion failed: trying to remove dir that doesn't contain node_modules: ${e}`);try{let r;if(!t.innerLoop&&(r=await Vp.xfs.lstatPromise(e),!r.isDirectory()&&!r.isSymbolicLink()||r.isSymbolicLink()&&!t.isWorkspaceDir)){await Vp.xfs.unlinkPromise(e);return}let s=await Vp.xfs.readdirPromise(e,{withFileTypes:!0});for(let o of s){let g=Cu.ppath.join(e,o.name);o.isDirectory()?(o.name!==fB||t&&t.innerLoop)&&await iRe(g,{innerLoop:!0,contentsOnly:!1}):await Vp.xfs.unlinkPromise(g)}let a=!t.innerLoop&&t.isWorkspaceDir&&r?.isSymbolicLink();!t.contentsOnly&&!a&&await Vp.xfs.rmdirPromise(e)}catch(r){if(r.code!=="ENOENT"&&r.code!=="ENOTEMPTY")throw r}},Z4i=4,lTt=(e,{skipPrefix:t})=>{let r=Cu.ppath.contains(t,e);if(r===null)throw new Error(`Assertion failed: Writing attempt prevented to ${e} which is outside project root: ${t}`);let s=r.split(Cu.ppath.sep).filter(f=>f!==""),a=s.indexOf(fB),o=s.slice(0,a).join(Cu.ppath.sep),g=Cu.ppath.join(t,o),p=s.slice(a);return{locationRoot:g,segments:p}},Q4i=(e,{skipPrefix:t})=>{let r=new Map;if(e===null)return r;let s=()=>({children:new Map,linkType:sX.LinkType.HARD});for(let[a,o]of e.entries()){if(o.linkType===sX.LinkType.SOFT&&Cu.ppath.contains(t,o.target)!==null){let p=Jd.miscUtils.getFactoryWithDefault(r,o.target,s);p.locator=a,p.linkType=o.linkType}for(let g of o.locations){let{locationRoot:p,segments:f}=lTt(g,{skipPrefix:t}),m=Jd.miscUtils.getFactoryWithDefault(r,p,s);for(let y=0;y{if(process.platform==="win32"&&r===sX.WindowsLinkType.JUNCTIONS){let s;try{s=await Vp.xfs.lstatPromise(e)}catch{}if(!s||s.isDirectory()){await Vp.xfs.symlinkPromise(e,t,"junction");return}}await Vp.xfs.symlinkPromise(Cu.ppath.relative(Cu.ppath.dirname(t),e),t)};async function Y4i(e,t,r){let s=Cu.ppath.join(e,`${P4i.default.randomBytes(16).toString("hex")}.tmp`);try{await Vp.xfs.writeFilePromise(s,r);try{await Vp.xfs.linkPromise(s,t)}catch{}}finally{await Vp.xfs.unlinkPromise(s)}}async function oDc({srcPath:e,dstPath:t,entry:r,globalHardlinksStore:s,baseFs:a,nmMode:o}){if(r.kind===r$.FILE){if(o.value===_3.HARDLINKS_GLOBAL&&s&&r.digest){let p=Cu.ppath.join(s,r.digest.substring(0,2),`${r.digest.substring(2)}.dat`),f;try{let m=await Vp.xfs.statPromise(p);if(m&&(!r.mtimeMs||m.mtimeMs>r.mtimeMs||m.mtimeMs{await Vp.xfs.mkdirPromise(e,{recursive:!0});let p=async(y=Cu.PortablePath.dot)=>{let B=Cu.ppath.join(t,y),v=await r.readdirPromise(B,{withFileTypes:!0}),G=new Map;for(let T of v){let O=Cu.ppath.join(y,T.name),X,U=Cu.ppath.join(B,T.name);if(T.isFile()){if(X={kind:r$.FILE,mode:(await r.lstatPromise(U)).mode},a.value===_3.HARDLINKS_GLOBAL){let le=await V4i.hashUtils.checksumFile(U,{baseFs:r,algorithm:"sha1"});X.digest=le}}else if(T.isDirectory())X={kind:r$.DIRECTORY};else if(T.isSymbolicLink())X={kind:r$.SYMLINK,symlinkTo:await r.readlinkPromise(U)};else throw new Error(`Unsupported file type (file: ${U}, mode: 0o${await r.statSync(U).mode.toString(8).padStart(6,"0")})`);if(G.set(O,X),T.isDirectory()&&O!==fB){let le=await p(O);for(let[ae,ge]of le)G.set(ae,ge)}}return G},f;if(a.value===_3.HARDLINKS_GLOBAL&&s&&g){let y=Cu.ppath.join(s,g.substring(0,2),`${g.substring(2)}.json`);try{f=new Map(Object.entries(JSON.parse(await Vp.xfs.readFilePromise(y,"utf8"))))}catch{f=await p()}}else f=await p();let m=!1;for(let[y,B]of f){let v=Cu.ppath.join(t,y),G=Cu.ppath.join(e,y);if(B.kind===r$.DIRECTORY)await Vp.xfs.mkdirPromise(G,{recursive:!0});else if(B.kind===r$.FILE){let T=B.mtimeMs;await oDc({srcPath:v,dstPath:G,entry:B,nmMode:a,baseFs:r,globalHardlinksStore:s}),B.mtimeMs!==T&&(m=!0)}else B.kind===r$.SYMLINK&&await NRr(Cu.ppath.resolve(Cu.ppath.dirname(G),B.symlinkTo),G,o)}if(a.value===_3.HARDLINKS_GLOBAL&&s&&m&&g){let y=Cu.ppath.join(s,g.substring(0,2),`${g.substring(2)}.json`);await Vp.xfs.removePromise(y),await Y4i(s,y,Buffer.from(JSON.stringify(Object.fromEntries(f))))}};function cDc(e,t,r,s){let a=new Map,o=new Map,g=new Map,p=!1,f=(m,y,B,v,G)=>{let T=!0,O=Cu.ppath.join(m,y),X=new Set;if(y===fB||y.startsWith("@")){let le;try{le=Vp.xfs.statSync(O)}catch{}T=!!le,le?le.mtimeMs>r?(p=!0,X=new Set(Vp.xfs.readdirSync(O))):X=new Set(B.children.get(y).children.keys()):p=!0;let ae=t.get(m);if(ae){let ge=Cu.ppath.join(m,fB,cTt),fe;try{fe=Vp.xfs.statSync(ge)}catch{}if(!fe)p=!0;else if(fe.mtimeMs>r){p=!0;let pe=new Set(Vp.xfs.readdirSync(ge)),he=new Map;o.set(m,he);for(let[be,Te]of ae)pe.has(be)&&he.set(be,Te)}else o.set(m,ae)}}else T=G.has(y);let U=B.children.get(y);if(T){let{linkType:le,locator:ae}=U,ge={children:new Map,linkType:le,locator:ae};if(v.children.set(y,ge),ae){let fe=Jd.miscUtils.getSetWithDefault(g,ae);fe.add(O),g.set(ae,fe)}for(let fe of U.children.keys())f(O,fe,U,ge,X)}else U.locator&&s.storedBuildState.delete(Jd.structUtils.parseLocator(U.locator).locatorHash)};for(let[m,y]of e){let{linkType:B,locator:v}=y,G={children:new Map,linkType:B,locator:v};if(a.set(m,G),v){let T=Jd.miscUtils.getSetWithDefault(g,y.locator);T.add(m),g.set(y.locator,T)}y.children.has(fB)&&f(m,fB,y,G,new Set)}return{locationTree:a,binSymlinks:o,locatorLocations:g,installChangedByUser:p}}function H4i(e){let t=Jd.structUtils.parseDescriptor(e);return Jd.structUtils.isVirtualDescriptor(t)&&(t=Jd.structUtils.devirtualizeDescriptor(t)),t.range.startsWith("link:")}async function lDc(e,t,r,{loadManifest:s}){let a=new Map;for(let[p,{locations:f}]of e){let m=H4i(p)?null:await s(p,f[0]),y=new Map;if(m)for(let[B,v]of m.bin){let G=Cu.ppath.join(f[0],v);v!==""&&Vp.xfs.existsSync(G)&&y.set(B,v)}a.set(p,y)}let o=new Map,g=(p,f,m)=>{let y=new Map,B=Cu.ppath.contains(r,p);if(m.locator&&B!==null){let v=a.get(m.locator);for(let[G,T]of v){let O=Cu.ppath.join(p,Cu.npath.toPortablePath(T));y.set(G,O)}for(let[G,T]of m.children){let O=Cu.ppath.join(p,G),X=g(O,O,T);X.size>0&&o.set(p,new Map([...o.get(p)||new Map,...X]))}}else for(let[v,G]of m.children){let T=g(Cu.ppath.join(p,v),f,G);for(let[O,X]of T)y.set(O,X)}return y};for(let[p,f]of t){let m=g(p,p,f);m.size>0&&o.set(p,new Map([...o.get(p)||new Map,...m]))}return o}var L4i=(e,t)=>{if(!e||!t)return e===t;let r=Jd.structUtils.parseLocator(e);Jd.structUtils.isVirtualLocator(r)&&(r=Jd.structUtils.devirtualizeLocator(r));let s=Jd.structUtils.parseLocator(t);return Jd.structUtils.isVirtualLocator(s)&&(s=Jd.structUtils.devirtualizeLocator(s)),Jd.structUtils.areLocatorsEqual(r,s)};function X4i(e){return Cu.ppath.join(e.get("globalFolder"),"store")}async function uDc(e,t,{baseFs:r,project:s,report:a,loadManifest:o,realLocatorChecksums:g}){let p=Cu.ppath.join(s.cwd,fB),{locationTree:f,binSymlinks:m,locatorLocations:y,installChangedByUser:B}=cDc(e.locationTree,e.binSymlinks,e.mtimeMs,s),v=Q4i(t,{skipPrefix:s.cwd}),G=[],T=async({srcDir:Te,dstDir:ke,linkType:x,globalHardlinksStore:et,nmMode:Ue,windowsLinkType:Je,packageChecksum:Xe})=>{let ft=(async()=>{try{x===sX.LinkType.SOFT?(await Vp.xfs.mkdirPromise(Cu.ppath.dirname(ke),{recursive:!0}),await NRr(Cu.ppath.resolve(Te),ke,Je)):await aDc(ke,Te,{baseFs:r,globalHardlinksStore:et,nmMode:Ue,windowsLinkType:Je,packageChecksum:Xe})}catch(Gt){throw Gt.message=`While persisting ${Te} -> ${ke} ${Gt.message}`,Gt}finally{ge.tick()}})().then(()=>G.splice(G.indexOf(ft),1));G.push(ft),G.length>Z4i&&await Promise.race(G)},O=async(Te,ke,x)=>{let et=(async()=>{let Ue=async(Je,Xe,ft)=>{try{ft.innerLoop||await Vp.xfs.mkdirPromise(Xe,{recursive:!0});let Gt=await Vp.xfs.readdirPromise(Je,{withFileTypes:!0});for(let er of Gt){if(!ft.innerLoop&&er.name===cTt)continue;let Ur=Cu.ppath.join(Je,er.name),Ot=Cu.ppath.join(Xe,er.name);er.isDirectory()?(er.name!==fB||ft&&ft.innerLoop)&&(await Vp.xfs.mkdirPromise(Ot,{recursive:!0}),await Ue(Ur,Ot,{...ft,innerLoop:!0})):he.value===_3.HARDLINKS_LOCAL||he.value===_3.HARDLINKS_GLOBAL?await Vp.xfs.linkPromise(Ur,Ot):await Vp.xfs.copyFilePromise(Ur,Ot,rDc.default.constants.COPYFILE_FICLONE)}}catch(Gt){throw ft.innerLoop||(Gt.message=`While cloning ${Je} -> ${Xe} ${Gt.message}`),Gt}finally{ft.innerLoop||ge.tick()}};await Ue(Te,ke,x)})().then(()=>G.splice(G.indexOf(et),1));G.push(et),G.length>Z4i&&await Promise.race(G)},X=async(Te,ke,x)=>{if(x)for(let[et,Ue]of ke.children){let Je=x.children.get(et);await X(Cu.ppath.join(Te,et),Ue,Je)}else{ke.children.has(fB)&&await iRe(Cu.ppath.join(Te,fB),{contentsOnly:!1});let et=Cu.ppath.basename(Te)===fB&&f.has(Cu.ppath.join(Cu.ppath.dirname(Te)));await iRe(Te,{contentsOnly:Te===p,isWorkspaceDir:et})}};for(let[Te,ke]of f){let x=v.get(Te);for(let[et,Ue]of ke.children){if(et===".")continue;let Je=x&&x.children.get(et),Xe=Cu.ppath.join(Te,et);await X(Xe,Ue,Je)}}let U=async(Te,ke,x)=>{if(x){L4i(ke.locator,x.locator)||await iRe(Te,{contentsOnly:ke.linkType===sX.LinkType.HARD});for(let[et,Ue]of ke.children){let Je=x.children.get(et);await U(Cu.ppath.join(Te,et),Ue,Je)}}else{ke.children.has(fB)&&await iRe(Cu.ppath.join(Te,fB),{contentsOnly:!0});let et=Cu.ppath.basename(Te)===fB&&v.has(Cu.ppath.join(Cu.ppath.dirname(Te)));await iRe(Te,{contentsOnly:ke.linkType===sX.LinkType.HARD,isWorkspaceDir:et})}};for(let[Te,ke]of v){let x=f.get(Te);for(let[et,Ue]of ke.children){if(et===".")continue;let Je=x&&x.children.get(et);await U(Cu.ppath.join(Te,et),Ue,Je)}}let le=new Map,ae=[];for(let[Te,ke]of y)for(let x of ke){let{locationRoot:et,segments:Ue}=lTt(x,{skipPrefix:s.cwd}),Je=v.get(et),Xe=et;if(Je){for(let ft of Ue)if(Xe=Cu.ppath.join(Xe,ft),Je=Je.children.get(ft),!Je)break;if(Je){let ft=L4i(Je.locator,Te),Gt=t.get(Je.locator),er=Gt.target,Ur=Xe,Ot=Gt.linkType;if(ft)le.has(er)||le.set(er,Ur);else if(er!==Ur){let dr=Jd.structUtils.parseLocator(Je.locator);Jd.structUtils.isVirtualLocator(dr)&&(dr=Jd.structUtils.devirtualizeLocator(dr)),ae.push({srcDir:er,dstDir:Ur,linkType:Ot,realLocatorHash:dr.locatorHash})}}}}for(let[Te,{locations:ke}]of t.entries())for(let x of ke){let{locationRoot:et,segments:Ue}=lTt(x,{skipPrefix:s.cwd}),Je=f.get(et),Xe=v.get(et),ft=et,Gt=t.get(Te),er=Jd.structUtils.parseLocator(Te);Jd.structUtils.isVirtualLocator(er)&&(er=Jd.structUtils.devirtualizeLocator(er));let Ur=er.locatorHash,Ot=Gt.target,dr=x;if(Ot===dr)continue;let Ar=Gt.linkType;for(let or of Ue)Xe=Xe.children.get(or);if(!Je)ae.push({srcDir:Ot,dstDir:dr,linkType:Ar,realLocatorHash:Ur});else for(let or of Ue)if(ft=Cu.ppath.join(ft,or),Je=Je.children.get(or),!Je){ae.push({srcDir:Ot,dstDir:dr,linkType:Ar,realLocatorHash:Ur});break}}let ge=Jd.Report.progressViaCounter(ae.length),fe=a.reportProgress(ge),pe=s.configuration.get("nmMode"),he={value:pe},be=s.configuration.get("winLinkType");try{let Te=he.value===_3.HARDLINKS_GLOBAL?`${X4i(s.configuration)}/v1`:null;if(Te&&!await Vp.xfs.existsPromise(Te)){await Vp.xfs.mkdirpPromise(Te);for(let x=0;x<256;x++)await Vp.xfs.mkdirPromise(Cu.ppath.join(Te,x.toString(16).padStart(2,"0")))}for(let x of ae)(x.linkType===sX.LinkType.SOFT||!le.has(x.srcDir))&&(le.set(x.srcDir,x.dstDir),await T({...x,globalHardlinksStore:Te,nmMode:he,windowsLinkType:be,packageChecksum:g.get(x.realLocatorHash)||null}));await Promise.all(G),G.length=0;for(let x of ae){let et=le.get(x.srcDir);x.linkType!==sX.LinkType.SOFT&&x.dstDir!==et&&await O(et,x.dstDir,{nmMode:he})}await Promise.all(G),await Vp.xfs.mkdirPromise(p,{recursive:!0});let ke=await lDc(t,v,s.cwd,{loadManifest:o});await gDc(m,ke,s.cwd,be),await sDc(s,t,ke,he,{installChangedByUser:B}),pe==_3.HARDLINKS_GLOBAL&&he.value==_3.HARDLINKS_LOCAL&&a.reportWarningOnce(BRr.MessageName.NM_HARDLINKS_MODE_DOWNGRADED,"'nmMode' has been downgraded to 'hardlinks-local' due to global cache and install folder being on different devices")}finally{fe.stop()}}async function gDc(e,t,r,s){for(let a of e.keys()){if(Cu.ppath.contains(r,a)===null)throw new Error(`Assertion failed. Excepted bin symlink location to be inside project dir, instead it was at ${a}`);if(!t.has(a)){let o=Cu.ppath.join(a,fB,cTt);await Vp.xfs.removePromise(o)}}for(let[a,o]of t){if(Cu.ppath.contains(r,a)===null)throw new Error(`Assertion failed. Excepted bin symlink location to be inside project dir, instead it was at ${a}`);let g=Cu.ppath.join(a,fB,cTt),p=e.get(a)||new Map;await Vp.xfs.mkdirPromise(g,{recursive:!0});for(let f of p.keys())o.has(f)||(await Vp.xfs.removePromise(Cu.ppath.join(g,f)),process.platform==="win32"&&await Vp.xfs.removePromise(Cu.ppath.join(g,`${f}.cmd`)));for(let[f,m]of o){let y=p.get(f),B=Cu.ppath.join(g,f);y!==m&&(process.platform==="win32"?await(0,tDc.default)(Cu.npath.fromPortablePath(m),Cu.npath.fromPortablePath(B),{createPwshFile:!1}):(await Vp.xfs.removePromise(B),await NRr(m,B,s),Cu.ppath.contains(r,await Vp.xfs.realpathPromise(m))!==null&&await Vp.xfs.chmodPromise(m,493)))}}}});var K4i=z(uTt=>{"use strict";Object.defineProperty(uTt,"__esModule",{value:!0});uTt.PnpLooseLinker=void 0;var J4i=Bn(),nUe=Ro(),ADc=SJ(),dDc=jJe(),U4i=tRe(),pDc=oRr(),DRr=class extends U4i.PnpLinker{constructor(){super(...arguments),this.mode="loose"}makeInstaller(t){return new xRr(t)}};uTt.PnpLooseLinker=DRr;var xRr=class extends U4i.PnpInstaller{constructor(){super(...arguments),this.mode="loose"}async transformPnpSettings(t){let r=new nUe.VirtualFS({baseFs:new ADc.ZipOpenFS({maxOpenFiles:80,readOnlyArchives:!0})}),s=(0,pDc.makeRuntimeApi)(t,this.opts.project.cwd,r),{tree:a,errors:o}=(0,dDc.buildNodeModulesTree)(s,{pnpifyFs:!1,project:this.opts.project});if(!a){for(let{messageName:y,text:B}of o)this.opts.report.reportError(y,B);return}let g=new Map;t.fallbackPool=g;let p=(y,B)=>{let v=J4i.structUtils.parseLocator(B.locator),G=J4i.structUtils.stringifyIdent(v);G===y?g.set(y,v.reference):g.set(y,[G,v.reference])},f=nUe.ppath.join(this.opts.project.cwd,nUe.Filename.nodeModules),m=a.get(f);if(!(typeof m>"u")){if("target"in m)throw new Error("Assertion failed: Expected the root junction point to be a directory");for(let y of m.dirList){let B=nUe.ppath.join(f,y),v=a.get(B);if(typeof v>"u")throw new Error("Assertion failed: Expected the child to have been registered");if("target"in v)p(y,v);else for(let G of v.dirList){let T=nUe.ppath.join(B,G),O=a.get(T);if(typeof O>"u")throw new Error("Assertion failed: Expected the subchild to have been registered");if("target"in O)p(`${y}/${G}`,O);else throw new Error("Assertion failed: Expected the leaf junction to be a package")}}}}}});var z4i=z(n$=>{"use strict";Object.defineProperty(n$,"__esModule",{value:!0});n$.PnpLooseLinker=n$.NodeModulesMode=n$.NodeModulesLinker=void 0;var kRr=Bn(),fDc=Ro(),gTt=jJe(),kCe=RRr();Object.defineProperty(n$,"NodeModulesLinker",{enumerable:!0,get:function(){return kCe.NodeModulesLinker}});Object.defineProperty(n$,"NodeModulesMode",{enumerable:!0,get:function(){return kCe.NodeModulesMode}});var IDc=RRr(),j4i=K4i();Object.defineProperty(n$,"PnpLooseLinker",{enumerable:!0,get:function(){return j4i.PnpLooseLinker}});var CDc={hooks:{cleanGlobalArtifacts:async e=>{let t=(0,IDc.getGlobalHardlinksStore)(e);await fDc.xfs.removePromise(t)}},configuration:{nmHoistingLimits:{description:"Prevents packages to be hoisted past specific levels",type:kRr.SettingsType.STRING,values:[gTt.NodeModulesHoistingLimits.WORKSPACES,gTt.NodeModulesHoistingLimits.DEPENDENCIES,gTt.NodeModulesHoistingLimits.NONE],default:gTt.NodeModulesHoistingLimits.NONE},nmMode:{description:"Defines in which measure Yarn must use hardlinks and symlinks when generated `node_modules` directories.",type:kRr.SettingsType.STRING,values:[kCe.NodeModulesMode.CLASSIC,kCe.NodeModulesMode.HARDLINKS_LOCAL,kCe.NodeModulesMode.HARDLINKS_GLOBAL],default:kCe.NodeModulesMode.CLASSIC},nmSelfReferences:{description:"Defines whether the linker should generate self-referencing symlinks for workspaces.",type:kRr.SettingsType.BOOLEAN,default:!0}},linkers:[kCe.NodeModulesLinker,j4i.PnpLooseLinker]};n$.default=CDc});var sRe=z(ATt=>{"use strict";Object.defineProperty(ATt,"__esModule",{value:!0});ATt.PROTOCOL=void 0;ATt.PROTOCOL="npm:"});var sUe=z(Lw=>{"use strict";Object.defineProperty(Lw,"__esModule",{value:!0});Lw.getAuthConfiguration=Lw.getScopeConfiguration=Lw.getRegistryConfiguration=Lw.getDefaultRegistry=Lw.getScopeRegistry=Lw.getPublishRegistry=Lw.getAuditRegistry=Lw.normalizeRegistry=Lw.RegistryType=void 0;var wae;(function(e){e.AUDIT_REGISTRY="npmAuditRegistry",e.FETCH_REGISTRY="npmRegistryServer",e.PUBLISH_REGISTRY="npmPublishRegistry"})(wae||(Lw.RegistryType=wae={}));function oRe(e){return e.replace(/\/$/,"")}Lw.normalizeRegistry=oRe;function mDc({configuration:e}){return iUe({configuration:e,type:wae.AUDIT_REGISTRY})}Lw.getAuditRegistry=mDc;function hDc(e,{configuration:t}){return e.publishConfig?.registry?oRe(e.publishConfig.registry):e.name?q4i(e.name.scope,{configuration:t,type:wae.PUBLISH_REGISTRY}):iUe({configuration:t,type:wae.PUBLISH_REGISTRY})}Lw.getPublishRegistry=hDc;function q4i(e,{configuration:t,type:r=wae.FETCH_REGISTRY}){let s=GRr(e,{configuration:t});if(s===null)return iUe({configuration:t,type:r});let a=s.get(r);return a===null?iUe({configuration:t,type:r}):oRe(a)}Lw.getScopeRegistry=q4i;function iUe({configuration:e,type:t=wae.FETCH_REGISTRY}){let r=e.get(t);return oRe(r!==null?r:e.get(wae.FETCH_REGISTRY))}Lw.getDefaultRegistry=iUe;function $4i(e,{configuration:t}){let r=t.get("npmRegistries"),s=oRe(e),a=r.get(s);if(typeof a<"u")return a;let o=r.get(s.replace(/^[a-z]+:/,""));return typeof o<"u"?o:null}Lw.getRegistryConfiguration=$4i;function GRr(e,{configuration:t}){if(e===null)return null;let s=t.get("npmScopes").get(e);return s||null}Lw.getScopeConfiguration=GRr;function _Dc(e,{configuration:t,ident:r}){let s=r&&GRr(r.scope,{configuration:t});return s?.get("npmAuthIdent")||s?.get("npmAuthToken")?s:$4i(e,{configuration:t})||t}Lw.getAuthConfiguration=_Dc});var cRe=z(Vw=>{"use strict";Object.defineProperty(Vw,"__esModule",{value:!0});Vw.del=Vw.put=Vw.post=Vw.get=Vw.getPackageMetadata=Vw.getIdentUrl=Vw.customPackageError=Vw.handleInvalidAuthenticationError=Vw.AuthType=void 0;var ZRr=(Ma(),Ai(Oa)),KT=Bn(),Tae=Bn(),i$=Ro(),eJi=F4e(),yDc=ZRr.__importDefault(MKt()),bDc=ZRr.__importDefault(Lh()),FRr=ZRr.__importStar(sUe()),iQ;(function(e){e[e.NO_AUTH=0]="NO_AUTH",e[e.BEST_EFFORT=1]="BEST_EFFORT",e[e.CONFIGURATION=2]="CONFIGURATION",e[e.ALWAYS_AUTH=3]="ALWAYS_AUTH"})(iQ||(Vw.AuthType=iQ={}));async function Nae(e,{attemptedAs:t,registry:r,headers:s,configuration:a}){if(pTt(e))throw new Tae.ReportError(Tae.MessageName.AUTHENTICATION_INVALID,"Invalid OTP token");if(e.originalError?.name==="HTTPError"&&e.originalError?.response.statusCode===401)throw new Tae.ReportError(Tae.MessageName.AUTHENTICATION_INVALID,`Invalid authentication (${typeof t!="string"?`as ${await FDc(r,s,{configuration:a})}`:`attempted as ${t}`})`)}Vw.handleInvalidAuthenticationError=Nae;function tJi(e,t){let r=e.response?.statusCode;return r?r===404?"Package not found":r>=500&&r<600?`The registry appears to be down (using a ${KT.formatUtils.applyHyperlink(t,"local cache","https://yarnpkg.com/advanced/lexicon#local-cache")} might have protected you against such outages)`:null:null}Vw.customPackageError=tJi;function rJi(e){return e.scope?`/@${e.scope}%2f${e.name}`:`/${e.name}`}Vw.getIdentUrl=rJi;var nJi=new Map,EDc=new Map;async function BDc(e){return await KT.miscUtils.getFactoryWithDefault(nJi,e,async()=>{let t=null;try{t=await i$.xfs.readJsonPromise(e)}catch{}return t})}async function vDc(e,t,{configuration:r,cached:s,registry:a,headers:o,version:g,...p}){return await KT.miscUtils.getFactoryWithDefault(EDc,e,async()=>await sJi(rJi(t),{...p,customErrorMessage:tJi,configuration:r,registry:a,ident:t,headers:{...o,"If-None-Match":s?.etag,"If-Modified-Since":s?.lastModified},wrapNetworkRequest:async f=>async()=>{let m=await f();if(m.statusCode===304){if(s===null)throw new Error("Assertion failed: cachedMetadata should not be null");return{...m,body:s.metadata}}let y=wDc(JSON.parse(m.body.toString())),B={metadata:y,etag:m.headers.etag,lastModified:m.headers["last-modified"]};return nJi.set(e,Promise.resolve(B)),Promise.resolve().then(async()=>{let v=`${e}-${process.pid}.tmp`;await i$.xfs.mkdirPromise(i$.ppath.dirname(v),{recursive:!0}),await i$.xfs.writeJsonPromise(v,B,{compact:!0}),await i$.xfs.renamePromise(v,e)}).catch(()=>{}),{...m,body:y}}}))}async function SDc(e,{cache:t,project:r,registry:s,headers:a,version:o,...g}){let{configuration:p}=r;s=oUe(p,{ident:e,registry:s});let f=NDc(p,s),m=i$.ppath.join(f,`${KT.structUtils.slugifyIdent(e)}.json`),y=null;if(!r.lockfileNeedsRefresh&&(y=await BDc(m),y)){if(typeof o<"u"&&typeof y.metadata.versions[o]<"u")return y.metadata;if(p.get("enableOfflineMode")){let B=structuredClone(y.metadata),v=new Set;if(t){for(let T of Object.keys(B.versions)){let O=KT.structUtils.makeLocator(e,`npm:${T}`),X=t.getLocatorMirrorPath(O);(!X||!i$.xfs.existsSync(X))&&(delete B.versions[T],v.add(T))}let G=B["dist-tags"].latest;if(v.has(G)){let T=Object.keys(y.metadata.versions).sort(bDc.default.compare),O=T.indexOf(G);for(;v.has(T[O])&&O>=0;)O-=1;O>=0?B["dist-tags"].latest=T[O]:delete B["dist-tags"].latest}}return B}}return await vDc(m,e,{...g,configuration:p,cached:y,registry:s,headers:a,version:o})}Vw.getPackageMetadata=SDc;var iJi=["name","dist.tarball","bin","scripts","os","cpu","libc","dependencies","dependenciesMeta","optionalDependencies","peerDependencies","peerDependenciesMeta","deprecated"];function wDc(e){return{"dist-tags":e["dist-tags"],versions:Object.fromEntries(Object.entries(e.versions).map(([t,r])=>[t,(0,yDc.default)(r,iJi)]))}}var TDc=KT.hashUtils.makeHash(...iJi).slice(0,6);function NDc(e,t){let r=RDc(e),s=new URL(t);return i$.ppath.join(r,TDc,s.hostname)}function RDc(e){return i$.ppath.join(e.get("globalFolder"),"metadata/npm")}async function sJi(e,{configuration:t,headers:r,ident:s,authType:a,registry:o,...g}){o=oUe(t,{ident:s,registry:o}),s&&s.scope&&typeof a>"u"&&(a=iQ.BEST_EFFORT);let p=await dTt(o,{authType:a,configuration:t,ident:s});p&&(r={...r,authorization:p});try{return await KT.httpUtils.get(e.charAt(0)==="/"?`${o}${e}`:e,{configuration:t,headers:r,...g})}catch(f){throw await Nae(f,{registry:o,configuration:t,headers:r}),f}}Vw.get=sJi;async function DDc(e,t,{attemptedAs:r,configuration:s,headers:a,ident:o,authType:g=iQ.ALWAYS_AUTH,registry:p,otp:f,...m}){p=oUe(s,{ident:o,registry:p});let y=await dTt(p,{authType:g,configuration:s,ident:o});y&&(a={...a,authorization:y}),f&&(a={...a,...aRe(f)});try{return await KT.httpUtils.post(p+e,t,{configuration:s,headers:a,...m})}catch(B){if(!pTt(B)||f)throw await Nae(B,{attemptedAs:r,registry:p,configuration:s,headers:a}),B;f=await LRr(B,{configuration:s});let v={...a,...aRe(f)};try{return await KT.httpUtils.post(`${p}${e}`,t,{configuration:s,headers:v,...m})}catch(G){throw await Nae(G,{attemptedAs:r,registry:p,configuration:s,headers:a}),G}}}Vw.post=DDc;async function xDc(e,t,{attemptedAs:r,configuration:s,headers:a,ident:o,authType:g=iQ.ALWAYS_AUTH,registry:p,otp:f,...m}){p=oUe(s,{ident:o,registry:p});let y=await dTt(p,{authType:g,configuration:s,ident:o});y&&(a={...a,authorization:y}),f&&(a={...a,...aRe(f)});try{return await KT.httpUtils.put(p+e,t,{configuration:s,headers:a,...m})}catch(B){if(!pTt(B))throw await Nae(B,{attemptedAs:r,registry:p,configuration:s,headers:a}),B;f=await LRr(B,{configuration:s});let v={...a,...aRe(f)};try{return await KT.httpUtils.put(`${p}${e}`,t,{configuration:s,headers:v,...m})}catch(G){throw await Nae(G,{attemptedAs:r,registry:p,configuration:s,headers:a}),G}}}Vw.put=xDc;async function kDc(e,{attemptedAs:t,configuration:r,headers:s,ident:a,authType:o=iQ.ALWAYS_AUTH,registry:g,otp:p,...f}){g=oUe(r,{ident:a,registry:g});let m=await dTt(g,{authType:o,configuration:r,ident:a});m&&(s={...s,authorization:m}),p&&(s={...s,...aRe(p)});try{return await KT.httpUtils.del(g+e,{configuration:r,headers:s,...f})}catch(y){if(!pTt(y)||p)throw await Nae(y,{attemptedAs:t,registry:g,configuration:r,headers:s}),y;p=await LRr(y,{configuration:r});let B={...s,...aRe(p)};try{return await KT.httpUtils.del(`${g}${e}`,{configuration:r,headers:B,...f})}catch(v){throw await Nae(v,{attemptedAs:t,registry:g,configuration:r,headers:s}),v}}}Vw.del=kDc;function oUe(e,{ident:t,registry:r}){if(typeof r>"u"&&t)return FRr.getScopeRegistry(t.scope,{configuration:e});if(typeof r!="string")throw new Error("Assertion failed: The registry should be a string");return FRr.normalizeRegistry(r)}async function dTt(e,{authType:t=iQ.CONFIGURATION,configuration:r,ident:s}){let a=FRr.getAuthConfiguration(e,{configuration:r,ident:s}),o=GDc(a,t);if(!o)return null;let g=await r.reduceHook(p=>p.getNpmAuthenticationHeader,void 0,e,{configuration:r,ident:s});if(g)return g;if(a.get("npmAuthToken"))return`Bearer ${a.get("npmAuthToken")}`;if(a.get("npmAuthIdent")){let p=a.get("npmAuthIdent");return p.includes(":")?`Basic ${Buffer.from(p).toString("base64")}`:`Basic ${p}`}if(o&&t!==iQ.BEST_EFFORT)throw new Tae.ReportError(Tae.MessageName.AUTHENTICATION_NOT_FOUND,"No authentication configured for request");return null}function GDc(e,t){switch(t){case iQ.CONFIGURATION:return e.get("npmAlwaysAuth");case iQ.BEST_EFFORT:case iQ.ALWAYS_AUTH:return!0;case iQ.NO_AUTH:return!1;default:throw new Error("Unreachable")}}async function FDc(e,t,{configuration:r}){if(typeof t>"u"||typeof t.authorization>"u")return"an anonymous user";try{return(await KT.httpUtils.get(new URL(`${e}/-/whoami`).href,{configuration:r,headers:t,jsonResponse:!0})).username??"an unknown user"}catch{return"an unknown user"}}async function LRr(e,{configuration:t}){let r=e.originalError?.response.headers["npm-notice"];if(r&&(await KT.StreamReport.start({configuration:t,stdout:process.stdout,includeFooter:!1},async a=>{if(a.reportInfo(Tae.MessageName.UNNAMED,r.replace(/(https?:\/\/\S+)/g,KT.formatUtils.pretty(t,"$1",KT.formatUtils.Type.URL))),!process.env.YARN_IS_TEST_ENV){let o=r.match(/open (https?:\/\/\S+)/i);if(o&&KT.nodeUtils.openUrl){let{openNow:g}=await(0,eJi.prompt)({type:"confirm",name:"openNow",message:"Do you want to try to open this url now?",required:!0,initial:!0,onCancel:()=>process.exit(130)});g&&(await KT.nodeUtils.openUrl(o[1])||(a.reportSeparator(),a.reportWarning(Tae.MessageName.UNNAMED,"We failed to automatically open the url; you'll have to open it yourself in your browser of choice.")))}}}),process.stdout.write(` -`)),process.env.YARN_IS_TEST_ENV)return process.env.YARN_INJECT_NPM_2FA_TOKEN||"";let{otp:s}=await(0,eJi.prompt)({type:"password",name:"otp",message:"One-time password:",required:!0,onCancel:()=>process.exit(130)});return process.stdout.write(` -`),s}function pTt(e){if(e.originalError?.name!=="HTTPError")return!1;try{return(e.originalError?.response.headers["www-authenticate"].split(/,\s*/).map(r=>r.toLowerCase())).includes("otp")}catch{return!1}}function aRe(e){return{"npm-otp":e}}});var cJi=z(fTt=>{"use strict";Object.defineProperty(fTt,"__esModule",{value:!0});fTt.NpmHttpFetcher=void 0;var aJi=(Ma(),Ai(Oa)),lRe=Bn(),ZDc=aJi.__importDefault(Lh()),LDc=sRe(),oJi=aJi.__importStar(cRe()),VRr=class{supports(t,r){if(!t.reference.startsWith(LDc.PROTOCOL))return!1;let{selector:s,params:a}=lRe.structUtils.parseRange(t.reference);return!(!ZDc.default.valid(s)||a===null||typeof a.__archiveUrl!="string")}getLocalPath(t,r){return null}async fetch(t,r){let s=r.checksums.get(t.locatorHash)||null,[a,o,g]=await r.cache.fetchPackageFromCache(t,s,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${lRe.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote server`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:lRe.structUtils.getIdentVendorPath(t),checksum:g}}async fetchFromNetwork(t,r){let{params:s}=lRe.structUtils.parseRange(t.reference);if(s===null||typeof s.__archiveUrl!="string")throw new Error("Assertion failed: The archiveUrl querystring parameter should have been available");let a=await oJi.get(s.__archiveUrl,{customErrorMessage:oJi.customPackageError,configuration:r.project.configuration,ident:t});return await lRe.tgzUtils.convertToZip(a,{configuration:r.project.configuration,prefixPath:lRe.structUtils.getIdentVendorPath(t),stripComponents:1})}};fTt.NpmHttpFetcher=VRr});var lJi=z(CTt=>{"use strict";Object.defineProperty(CTt,"__esModule",{value:!0});CTt.NpmRemapResolver=void 0;var ITt=Bn(),aUe=sRe(),WRr=class{supportsDescriptor(t,r){return!(!t.range.startsWith(aUe.PROTOCOL)||!ITt.structUtils.tryParseDescriptor(t.range.slice(aUe.PROTOCOL.length),!0))}supportsLocator(t,r){return!1}shouldPersistResolution(t,r){throw new Error("Unreachable")}bindDescriptor(t,r,s){return t}getResolutionDependencies(t,r){let s=r.project.configuration.normalizeDependency(ITt.structUtils.parseDescriptor(t.range.slice(aUe.PROTOCOL.length),!0));return r.resolver.getResolutionDependencies(s,r)}async getCandidates(t,r,s){let a=s.project.configuration.normalizeDependency(ITt.structUtils.parseDescriptor(t.range.slice(aUe.PROTOCOL.length),!0));return await s.resolver.getCandidates(a,r,s)}async getSatisfying(t,r,s,a){let o=a.project.configuration.normalizeDependency(ITt.structUtils.parseDescriptor(t.range.slice(aUe.PROTOCOL.length),!0));return a.resolver.getSatisfying(o,r,s,a)}resolve(t,r){throw new Error("Unreachable")}};CTt.NpmRemapResolver=WRr});var hTt=z(mTt=>{"use strict";Object.defineProperty(mTt,"__esModule",{value:!0});mTt.NpmSemverFetcher=void 0;var ORr=(Ma(),Ai(Oa)),cUe=Bn(),uJi=Bn(),VDc=ORr.__importDefault(Lh()),gJi=sRe(),WDc=ORr.__importStar(sUe()),lUe=ORr.__importStar(cRe()),PRr=class e{supports(t,r){if(!t.reference.startsWith(gJi.PROTOCOL))return!1;let s=new URL(t.reference);return!(!VDc.default.valid(s.pathname)||s.searchParams.has("__archiveUrl"))}getLocalPath(t,r){return null}async fetch(t,r){let s=r.checksums.get(t.locatorHash)||null,[a,o,g]=await r.cache.fetchPackageFromCache(t,s,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${cUe.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote registry`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:cUe.structUtils.getIdentVendorPath(t),checksum:g}}async fetchFromNetwork(t,r){let s;try{s=await lUe.get(e.getLocatorUrl(t),{customErrorMessage:lUe.customPackageError,configuration:r.project.configuration,ident:t})}catch{s=await lUe.get(e.getLocatorUrl(t).replace(/%2f/g,"/"),{customErrorMessage:lUe.customPackageError,configuration:r.project.configuration,ident:t})}return await cUe.tgzUtils.convertToZip(s,{configuration:r.project.configuration,prefixPath:cUe.structUtils.getIdentVendorPath(t),stripComponents:1})}static isConventionalTarballUrl(t,r,{configuration:s}){let a=WDc.getScopeRegistry(t.scope,{configuration:s}),o=e.getLocatorUrl(t);return r=r.replace(/^https?:(\/\/(?:[^/]+\.)?npmjs.org(?:$|\/))/,"https:$1"),a=a.replace(/^https:\/\/registry\.npmjs\.org($|\/)/,"https://registry.yarnpkg.com$1"),r=r.replace(/^https:\/\/registry\.npmjs\.org($|\/)/,"https://registry.yarnpkg.com$1"),r===a+o||r===a+o.replace(/%2f/g,"/")}static getLocatorUrl(t){let r=cUe.semverUtils.clean(t.reference.slice(gJi.PROTOCOL.length));if(r===null)throw new uJi.ReportError(uJi.MessageName.RESOLVER_NOT_FOUND,"The npm semver resolver got selected, but the version isn't semver");return`${lUe.getIdentUrl(t)}/-/${t.name}-${r}.tgz`}};mTt.NpmSemverFetcher=PRr});var fJi=z(yTt=>{"use strict";Object.defineProperty(yTt,"__esModule",{value:!0});yTt.NpmSemverResolver=void 0;var pJi=(Ma(),Ai(Oa)),y3=Bn(),uRe=Bn(),PDc=Bn(),GCe=Bn(),AJi=pJi.__importDefault(Lh()),ODc=hTt(),s$=sRe(),dJi=pJi.__importStar(cRe()),_Tt=GCe.structUtils.makeIdent(null,"node-gyp"),MDc=/\b(node-gyp|prebuild-install)\b/,MRr=class{supportsDescriptor(t,r){return t.range.startsWith(s$.PROTOCOL)?!!uRe.semverUtils.validRange(t.range.slice(s$.PROTOCOL.length)):!1}supportsLocator(t,r){if(!t.reference.startsWith(s$.PROTOCOL))return!1;let{selector:s}=GCe.structUtils.parseRange(t.reference);return!!AJi.default.valid(s)}shouldPersistResolution(t,r){return!0}bindDescriptor(t,r,s){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,s){let a=uRe.semverUtils.validRange(t.range.slice(s$.PROTOCOL.length));if(a===null)throw new Error(`Expected a valid range, got ${t.range.slice(s$.PROTOCOL.length)}`);let o=await dJi.getPackageMetadata(t,{cache:s.fetchOptions?.cache,project:s.project,version:AJi.default.valid(a.raw)?a.raw:void 0}),g=y3.miscUtils.mapAndFilter(Object.keys(o.versions),m=>{try{let y=new uRe.semverUtils.SemVer(m);if(a.test(y))return y}catch{}return y3.miscUtils.mapAndFilter.skip}),p=g.filter(m=>!o.versions[m.raw].deprecated),f=p.length>0?p:g;return f.sort((m,y)=>-m.compare(y)),f.map(m=>{let y=GCe.structUtils.makeLocator(t,`${s$.PROTOCOL}${m.raw}`),B=o.versions[m.raw].dist.tarball;return ODc.NpmSemverFetcher.isConventionalTarballUrl(y,B,{configuration:s.project.configuration})?y:GCe.structUtils.bindLocator(y,{__archiveUrl:B})})}async getSatisfying(t,r,s,a){let o=uRe.semverUtils.validRange(t.range.slice(s$.PROTOCOL.length));if(o===null)throw new Error(`Expected a valid range, got ${t.range.slice(s$.PROTOCOL.length)}`);return{locators:y3.miscUtils.mapAndFilter(s,f=>{if(f.identHash!==t.identHash)return y3.miscUtils.mapAndFilter.skip;let m=GCe.structUtils.tryParseRange(f.reference,{requireProtocol:s$.PROTOCOL});if(!m)return y3.miscUtils.mapAndFilter.skip;let y=new uRe.semverUtils.SemVer(m.selector);return o.test(y)?{locator:f,version:y}:y3.miscUtils.mapAndFilter.skip}).sort((f,m)=>-f.version.compare(m.version)).map(({locator:f})=>f),sorted:!0}}async resolve(t,r){let{selector:s}=GCe.structUtils.parseRange(t.reference),a=uRe.semverUtils.clean(s);if(a===null)throw new y3.ReportError(y3.MessageName.RESOLVER_NOT_FOUND,"The npm semver resolver got selected, but the version isn't semver");let o=await dJi.getPackageMetadata(t,{cache:r.fetchOptions?.cache,project:r.project,version:a});if(!Object.hasOwn(o,"versions"))throw new y3.ReportError(y3.MessageName.REMOTE_INVALID,'Registry returned invalid data for - missing "versions" field');if(!Object.hasOwn(o.versions,a))throw new y3.ReportError(y3.MessageName.REMOTE_NOT_FOUND,`Registry failed to return reference "${a}"`);let g=new y3.Manifest;if(g.load(o.versions[a]),!g.dependencies.has(_Tt.identHash)&&!g.peerDependencies.has(_Tt.identHash)){for(let p of g.scripts.values())if(p.match(MDc)){g.dependencies.set(_Tt.identHash,GCe.structUtils.makeDescriptor(_Tt,"latest"));break}}return{...t,version:a,languageName:"node",linkType:PDc.LinkType.HARD,conditions:g.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(g.dependencies),peerDependencies:g.peerDependencies,dependenciesMeta:g.dependenciesMeta,peerDependenciesMeta:g.peerDependenciesMeta,bin:g.bin}}};yTt.NpmSemverResolver=MRr});var CJi=z(bTt=>{"use strict";Object.defineProperty(bTt,"__esModule",{value:!0});bTt.NpmTagResolver=void 0;var IJi=(Ma(),Ai(Oa)),uUe=Bn(),gUe=Bn(),QDc=IJi.__importDefault(Lh()),YDc=hTt(),gRe=sRe(),HDc=IJi.__importStar(cRe()),QRr=class{supportsDescriptor(t,r){return!(!t.range.startsWith(gRe.PROTOCOL)||!uUe.TAG_REGEXP.test(t.range.slice(gRe.PROTOCOL.length)))}supportsLocator(t,r){return!1}shouldPersistResolution(t,r){throw new Error("Unreachable")}bindDescriptor(t,r,s){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,s){let a=t.range.slice(gRe.PROTOCOL.length),o=await HDc.getPackageMetadata(t,{cache:s.fetchOptions?.cache,project:s.project});if(!Object.hasOwn(o,"dist-tags"))throw new uUe.ReportError(uUe.MessageName.REMOTE_INVALID,'Registry returned invalid data - missing "dist-tags" field');let g=o["dist-tags"];if(!Object.hasOwn(g,a))throw new uUe.ReportError(uUe.MessageName.REMOTE_NOT_FOUND,`Registry failed to return tag "${a}"`);let p=g[a],f=gUe.structUtils.makeLocator(t,`${gRe.PROTOCOL}${p}`),m=o.versions[p].dist.tarball;return YDc.NpmSemverFetcher.isConventionalTarballUrl(f,m,{configuration:s.project.configuration})?[f]:[gUe.structUtils.bindLocator(f,{__archiveUrl:m})]}async getSatisfying(t,r,s,a){let o=[];for(let g of s){if(g.identHash!==t.identHash)continue;let p=gUe.structUtils.tryParseRange(g.reference,{requireProtocol:gRe.PROTOCOL});if(!(!p||!QDc.default.valid(p.selector))){if(p.params?.__archiveUrl){let f=gUe.structUtils.makeRange({protocol:gRe.PROTOCOL,selector:p.selector,source:null,params:null}),[m]=await a.resolver.getCandidates(gUe.structUtils.makeDescriptor(t,f),r,a);if(g.reference!==m.reference)continue}o.push(g)}}return{locators:o,sorted:!1}}async resolve(t,r){throw new Error("Unreachable")}};bTt.NpmTagResolver=QRr});var bJi=z((e4l,yJi)=>{"use strict";var AUe=class e{constructor(t,r,s){this.__specs=t||{},Object.keys(this.__specs).forEach(a=>{if(typeof this.__specs[a]=="string"){let o=this.__specs[a],g=this.__specs[o];if(g){let p=g.aliases||[];p.push(a,o),g.aliases=[...new Set(p)],this.__specs[a]=g}else throw new Error(`Alias refers to invalid key: ${o} -> ${a}`)}}),this.__opts=r||{},this.__providers=hJi(s.filter(a=>a!=null&&typeof a=="object")),this.__isFiggyPudding=!0}get(t){return YRr(this,t,!0)}get[Symbol.toStringTag](){return"FiggyPudding"}forEach(t,r=this){for(let[s,a]of this.entries())t.call(r,a,s,this)}toJSON(){let t={};return this.forEach((r,s)=>{t[s]=r}),t}*entries(t){for(let s of Object.keys(this.__specs))yield[s,this.get(s)];let r=t||this.__opts.other;if(r){let s=new Set;for(let a of this.__providers){let o=a.entries?a.entries(r):UDc(a);for(let[g,p]of o)r(g)&&!s.has(g)&&(s.add(g),yield[g,p])}}}*[Symbol.iterator](){for(let[t,r]of this.entries())yield[t,r]}*keys(){for(let[t]of this.entries())yield t}*values(){for(let[,t]of this.entries())yield t}concat(...t){return new Proxy(new e(this.__specs,this.__opts,hJi(this.__providers).concat(t)),_Ji)}};try{let e=Dt("util");AUe.prototype[e.inspect.custom]=function(t,r){return this[Symbol.toStringTag]+" "+e.inspect(this.toJSON(),r)}}catch{}function XDc(e){throw Object.assign(new Error(`invalid config key requested: ${e}`),{code:"EBADKEY"})}function YRr(e,t,r){let s=e.__specs[t];if(r&&!s&&(!e.__opts.other||!e.__opts.other(t)))XDc(t);else{s||(s={});let a;for(let o of e.__providers){if(a=mJi(t,o),a===void 0&&s.aliases&&s.aliases.length){for(let g of s.aliases)if(g!==t&&(a=mJi(g,o),a!==void 0))break}if(a!==void 0)break}return a===void 0&&s.default!==void 0?typeof s.default=="function"?s.default(e):s.default:a}}function mJi(e,t){let r;return t.__isFiggyPudding?r=YRr(t,e,!1):typeof t.get=="function"?r=t.get(e):r=t[e],r}var _Ji={has(e,t){return t in e.__specs&&YRr(e,t,!1)!==void 0},ownKeys(e){return Object.keys(e.__specs)},get(e,t){return typeof t=="symbol"||t.slice(0,2)==="__"||t in AUe.prototype?e[t]:e.get(t)},set(e,t,r){if(typeof t=="symbol"||t.slice(0,2)==="__")return e[t]=r,!0;throw new Error("figgyPudding options cannot be modified. Use .concat() instead.")},deleteProperty(){throw new Error("figgyPudding options cannot be deleted. Use .concat() and shadow them instead.")}};yJi.exports=JDc;function JDc(e,t){function r(...s){return new Proxy(new AUe(e,t,s),_Ji)}return r}function hJi(e){let t=[];return e.forEach(r=>t.unshift(r)),t}function UDc(e){return Object.keys(e).map(t=>[t,e[t]])}});var vJi=z((t4l,KK)=>{"use strict";var pUe=Dt("crypto"),KDc=bJi(),jDc=Dt("stream").Transform,EJi=["sha256","sha384","sha512"],zDc=/^[a-z0-9+/]+(?:=?=?)$/i,qDc=/^([^-]+)-([^?]+)([?\S*]*)$/,$Dc=/^([^-]+)-([A-Za-z0-9+/=]{44,88})(\?[\x21-\x7E]*)?$/,exc=/^[\x21-\x7E]+$/,oZ=KDc({algorithms:{default:["sha512"]},error:{default:!1},integrity:{},options:{default:[]},pickAlgorithm:{default:()=>cxc},Promise:{default:()=>Promise},sep:{default:" "},single:{default:!1},size:{},strict:{default:!1}}),Rae=class{get isHash(){return!0}constructor(t,r){r=oZ(r);let s=!!r.strict;this.source=t.trim();let a=this.source.match(s?$Dc:qDc);if(!a||s&&!EJi.some(g=>g===a[1]))return;this.algorithm=a[1],this.digest=a[2];let o=a[3];this.options=o?o.slice(1).split("?"):[]}hexDigest(){return this.digest&&Buffer.from(this.digest,"base64").toString("hex")}toJSON(){return this.toString()}toString(t){if(t=oZ(t),t.strict&&!(EJi.some(s=>s===this.algorithm)&&this.digest.match(zDc)&&(this.options||[]).every(s=>s.match(exc))))return"";let r=this.options&&this.options.length?`?${this.options.join("?")}`:"";return`${this.algorithm}-${this.digest}${r}`}},FCe=class{get isIntegrity(){return!0}toJSON(){return this.toString()}toString(t){t=oZ(t);let r=t.sep||" ";return t.strict&&(r=r.replace(/\S+/g," ")),Object.keys(this).map(s=>this[s].map(a=>Rae.prototype.toString.call(a,t)).filter(a=>a.length).join(r)).filter(s=>s.length).join(r)}concat(t,r){r=oZ(r);let s=typeof t=="string"?t:dUe(t,r);return UK(`${this.toString(r)} ${s}`,r)}hexDigest(){return UK(this,{single:!0}).hexDigest()}match(t,r){r=oZ(r);let s=UK(t,r),a=s.pickAlgorithm(r);return this[a]&&s[a]&&this[a].find(o=>s[a].find(g=>o.digest===g.digest))||!1}pickAlgorithm(t){t=oZ(t);let r=t.pickAlgorithm,s=Object.keys(this);if(!s.length)throw new Error(`No algorithms available for ${JSON.stringify(this.toString())}`);return s.reduce((a,o)=>r(a,o)||a)}};KK.exports.parse=UK;function UK(e,t){if(t=oZ(t),typeof e=="string")return HRr(e,t);if(e.algorithm&&e.digest){let r=new FCe;return r[e.algorithm]=[e],HRr(dUe(r,t),t)}else return HRr(dUe(e,t),t)}function HRr(e,t){return t.single?new Rae(e,t):e.trim().split(/\s+/).reduce((r,s)=>{let a=new Rae(s,t);if(a.algorithm&&a.digest){let o=a.algorithm;r[o]||(r[o]=[]),r[o].push(a)}return r},new FCe)}KK.exports.stringify=dUe;function dUe(e,t){return t=oZ(t),e.algorithm&&e.digest?Rae.prototype.toString.call(e,t):typeof e=="string"?dUe(UK(e,t),t):FCe.prototype.toString.call(e,t)}KK.exports.fromHex=txc;function txc(e,t,r){r=oZ(r);let s=r.options&&r.options.length?`?${r.options.join("?")}`:"";return UK(`${t}-${Buffer.from(e,"hex").toString("base64")}${s}`,r)}KK.exports.fromData=rxc;function rxc(e,t){t=oZ(t);let r=t.algorithms,s=t.options&&t.options.length?`?${t.options.join("?")}`:"";return r.reduce((a,o)=>{let g=pUe.createHash(o).update(e).digest("base64"),p=new Rae(`${o}-${g}${s}`,t);if(p.algorithm&&p.digest){let f=p.algorithm;a[f]||(a[f]=[]),a[f].push(p)}return a},new FCe)}KK.exports.fromStream=nxc;function nxc(e,t){t=oZ(t);let r=t.Promise||Promise,s=XRr(t);return new r((a,o)=>{e.pipe(s),e.on("error",o),s.on("error",o);let g;s.on("integrity",p=>{g=p}),s.on("end",()=>a(g)),s.on("data",()=>{})})}KK.exports.checkData=ixc;function ixc(e,t,r){if(r=oZ(r),t=UK(t,r),!Object.keys(t).length){if(r.error)throw Object.assign(new Error("No valid integrity hashes to check against"),{code:"EINTEGRITY"});return!1}let s=t.pickAlgorithm(r),a=pUe.createHash(s).update(e).digest("base64"),o=UK({algorithm:s,digest:a}),g=o.match(t,r);if(g||!r.error)return g;if(typeof r.size=="number"&&e.length!==r.size){let p=new Error(`data size mismatch when checking ${t}. +`;for(let[v,k]of r){let T=mu.ppath.contains(e.cwd,v);if(T===null)throw new Error(`Assertion failed: Expected the path to be within the project (${v})`);o+=` ${JSON.stringify(T)}: +`;for(let[O,X]of k){let U=mu.ppath.relative(mu.ppath.join(v,CB),X);o+=` ${JSON.stringify(O)}: ${JSON.stringify(U)} +`}}}}let f=e.cwd,m=mu.ppath.join(f,CB,K4i);a&&await Wp.xfs.removePromise(m),await Wp.xfs.changeFilePromise(m,o,{automaticNewlines:!0})}async function kRr(e,{unrollAliases:t=!1}={}){let r=e.cwd,s=mu.ppath.join(r,CB,K4i),a;try{a=await Wp.xfs.statPromise(s)}catch{}if(!a)return null;let o=(0,IDc.parseSyml)(await Wp.xfs.readFilePromise(s,"utf8"));if(o.__metadata.version>U4i)return null;let g=o.__metadata.nmMode||E3.CLASSIC,p=new Map,f=new Map;delete o.__metadata;for(let[m,y]of Object.entries(o)){let B=y.locations.map(k=>mu.ppath.join(r,k)),v=y.bin;if(v)for(let[k,T]of Object.entries(v)){let O=mu.ppath.join(r,mu.npath.toPortablePath(k)),X=Ud.miscUtils.getMapWithDefault(f,O);for(let[U,le]of Object.entries(T))X.set(U,mu.npath.toPortablePath([O,CB,le].join(mu.ppath.sep)))}if(p.set(m,{target:mu.PortablePath.dot,linkType:cX.LinkType.HARD,locations:B,aliases:y.aliases||[]}),t&&y.aliases)for(let k of y.aliases){let{scope:T,name:O}=Ud.structUtils.parseLocator(m),X=Ud.structUtils.makeLocator(Ud.structUtils.makeIdent(T,O),k),U=Ud.structUtils.stringifyLocator(X);p.set(U,{target:mu.PortablePath.dot,linkType:cX.LinkType.HARD,locations:B,aliases:[]})}}return{locatorMap:p,binSymlinks:f,locationTree:j4i(p,{skipPrefix:e.cwd}),nmMode:g,mtimeMs:a.mtimeMs}}var oRe=async(e,t)=>{if(e.split(mu.ppath.sep).indexOf(CB)<0)throw new Error(`Assertion failed: trying to remove dir that doesn't contain node_modules: ${e}`);try{let r;if(!t.innerLoop&&(r=await Wp.xfs.lstatPromise(e),!r.isDirectory()&&!r.isSymbolicLink()||r.isSymbolicLink()&&!t.isWorkspaceDir)){await Wp.xfs.unlinkPromise(e);return}let s=await Wp.xfs.readdirPromise(e,{withFileTypes:!0});for(let o of s){let g=mu.ppath.join(e,o.name);o.isDirectory()?(o.name!==CB||t&&t.innerLoop)&&await oRe(g,{innerLoop:!0,contentsOnly:!1}):await Wp.xfs.unlinkPromise(g)}let a=!t.innerLoop&&t.isWorkspaceDir&&r?.isSymbolicLink();!t.contentsOnly&&!a&&await Wp.xfs.rmdirPromise(e)}catch(r){if(r.code!=="ENOENT"&&r.code!=="ENOTEMPTY")throw r}},M4i=4,ATt=(e,{skipPrefix:t})=>{let r=mu.ppath.contains(t,e);if(r===null)throw new Error(`Assertion failed: Writing attempt prevented to ${e} which is outside project root: ${t}`);let s=r.split(mu.ppath.sep).filter(f=>f!==""),a=s.indexOf(CB),o=s.slice(0,a).join(mu.ppath.sep),g=mu.ppath.join(t,o),p=s.slice(a);return{locationRoot:g,segments:p}},j4i=(e,{skipPrefix:t})=>{let r=new Map;if(e===null)return r;let s=()=>({children:new Map,linkType:cX.LinkType.HARD});for(let[a,o]of e.entries()){if(o.linkType===cX.LinkType.SOFT&&mu.ppath.contains(t,o.target)!==null){let p=Ud.miscUtils.getFactoryWithDefault(r,o.target,s);p.locator=a,p.linkType=o.linkType}for(let g of o.locations){let{locationRoot:p,segments:f}=ATt(g,{skipPrefix:t}),m=Ud.miscUtils.getFactoryWithDefault(r,p,s);for(let y=0;y{if(process.platform==="win32"&&r===cX.WindowsLinkType.JUNCTIONS){let s;try{s=await Wp.xfs.lstatPromise(e)}catch{}if(!s||s.isDirectory()){await Wp.xfs.symlinkPromise(e,t,"junction");return}}await Wp.xfs.symlinkPromise(mu.ppath.relative(mu.ppath.dirname(t),e),t)};async function z4i(e,t,r){let s=mu.ppath.join(e,`${J4i.default.randomBytes(16).toString("hex")}.tmp`);try{await Wp.xfs.writeFilePromise(s,r);try{await Wp.xfs.linkPromise(s,t)}catch{}}finally{await Wp.xfs.unlinkPromise(s)}}async function bDc({srcPath:e,dstPath:t,entry:r,globalHardlinksStore:s,baseFs:a,nmMode:o}){if(r.kind===i$.FILE){if(o.value===E3.HARDLINKS_GLOBAL&&s&&r.digest){let p=mu.ppath.join(s,r.digest.substring(0,2),`${r.digest.substring(2)}.dat`),f;try{let m=await Wp.xfs.statPromise(p);if(m&&(!r.mtimeMs||m.mtimeMs>r.mtimeMs||m.mtimeMs{await Wp.xfs.mkdirPromise(e,{recursive:!0});let p=async(y=mu.PortablePath.dot)=>{let B=mu.ppath.join(t,y),v=await r.readdirPromise(B,{withFileTypes:!0}),k=new Map;for(let T of v){let O=mu.ppath.join(y,T.name),X,U=mu.ppath.join(B,T.name);if(T.isFile()){if(X={kind:i$.FILE,mode:(await r.lstatPromise(U)).mode},a.value===E3.HARDLINKS_GLOBAL){let le=await Y4i.hashUtils.checksumFile(U,{baseFs:r,algorithm:"sha1"});X.digest=le}}else if(T.isDirectory())X={kind:i$.DIRECTORY};else if(T.isSymbolicLink())X={kind:i$.SYMLINK,symlinkTo:await r.readlinkPromise(U)};else throw new Error(`Unsupported file type (file: ${U}, mode: 0o${await r.statSync(U).mode.toString(8).padStart(6,"0")})`);if(k.set(O,X),T.isDirectory()&&O!==CB){let le=await p(O);for(let[ae,ge]of le)k.set(ae,ge)}}return k},f;if(a.value===E3.HARDLINKS_GLOBAL&&s&&g){let y=mu.ppath.join(s,g.substring(0,2),`${g.substring(2)}.json`);try{f=new Map(Object.entries(JSON.parse(await Wp.xfs.readFilePromise(y,"utf8"))))}catch{f=await p()}}else f=await p();let m=!1;for(let[y,B]of f){let v=mu.ppath.join(t,y),k=mu.ppath.join(e,y);if(B.kind===i$.DIRECTORY)await Wp.xfs.mkdirPromise(k,{recursive:!0});else if(B.kind===i$.FILE){let T=B.mtimeMs;await bDc({srcPath:v,dstPath:k,entry:B,nmMode:a,baseFs:r,globalHardlinksStore:s}),B.mtimeMs!==T&&(m=!0)}else B.kind===i$.SYMLINK&&await FRr(mu.ppath.resolve(mu.ppath.dirname(k),B.symlinkTo),k,o)}if(a.value===E3.HARDLINKS_GLOBAL&&s&&m&&g){let y=mu.ppath.join(s,g.substring(0,2),`${g.substring(2)}.json`);await Wp.xfs.removePromise(y),await z4i(s,y,Buffer.from(JSON.stringify(Object.fromEntries(f))))}};function BDc(e,t,r,s){let a=new Map,o=new Map,g=new Map,p=!1,f=(m,y,B,v,k)=>{let T=!0,O=mu.ppath.join(m,y),X=new Set;if(y===CB||y.startsWith("@")){let le;try{le=Wp.xfs.statSync(O)}catch{}T=!!le,le?le.mtimeMs>r?(p=!0,X=new Set(Wp.xfs.readdirSync(O))):X=new Set(B.children.get(y).children.keys()):p=!0;let ae=t.get(m);if(ae){let ge=mu.ppath.join(m,CB,gTt),fe;try{fe=Wp.xfs.statSync(ge)}catch{}if(!fe)p=!0;else if(fe.mtimeMs>r){p=!0;let pe=new Set(Wp.xfs.readdirSync(ge)),he=new Map;o.set(m,he);for(let[be,Te]of ae)pe.has(be)&&he.set(be,Te)}else o.set(m,ae)}}else T=k.has(y);let U=B.children.get(y);if(T){let{linkType:le,locator:ae}=U,ge={children:new Map,linkType:le,locator:ae};if(v.children.set(y,ge),ae){let fe=Ud.miscUtils.getSetWithDefault(g,ae);fe.add(O),g.set(ae,fe)}for(let fe of U.children.keys())f(O,fe,U,ge,X)}else U.locator&&s.storedBuildState.delete(Ud.structUtils.parseLocator(U.locator).locatorHash)};for(let[m,y]of e){let{linkType:B,locator:v}=y,k={children:new Map,linkType:B,locator:v};if(a.set(m,k),v){let T=Ud.miscUtils.getSetWithDefault(g,y.locator);T.add(m),g.set(y.locator,T)}y.children.has(CB)&&f(m,CB,y,k,new Set)}return{locationTree:a,binSymlinks:o,locatorLocations:g,installChangedByUser:p}}function q4i(e){let t=Ud.structUtils.parseDescriptor(e);return Ud.structUtils.isVirtualDescriptor(t)&&(t=Ud.structUtils.devirtualizeDescriptor(t)),t.range.startsWith("link:")}async function vDc(e,t,r,{loadManifest:s}){let a=new Map;for(let[p,{locations:f}]of e){let m=q4i(p)?null:await s(p,f[0]),y=new Map;if(m)for(let[B,v]of m.bin){let k=mu.ppath.join(f[0],v);v!==""&&Wp.xfs.existsSync(k)&&y.set(B,v)}a.set(p,y)}let o=new Map,g=(p,f,m)=>{let y=new Map,B=mu.ppath.contains(r,p);if(m.locator&&B!==null){let v=a.get(m.locator);for(let[k,T]of v){let O=mu.ppath.join(p,mu.npath.toPortablePath(T));y.set(k,O)}for(let[k,T]of m.children){let O=mu.ppath.join(p,k),X=g(O,O,T);X.size>0&&o.set(p,new Map([...o.get(p)||new Map,...X]))}}else for(let[v,k]of m.children){let T=g(mu.ppath.join(p,v),f,k);for(let[O,X]of T)y.set(O,X)}return y};for(let[p,f]of t){let m=g(p,p,f);m.size>0&&o.set(p,new Map([...o.get(p)||new Map,...m]))}return o}var H4i=(e,t)=>{if(!e||!t)return e===t;let r=Ud.structUtils.parseLocator(e);Ud.structUtils.isVirtualLocator(r)&&(r=Ud.structUtils.devirtualizeLocator(r));let s=Ud.structUtils.parseLocator(t);return Ud.structUtils.isVirtualLocator(s)&&(s=Ud.structUtils.devirtualizeLocator(s)),Ud.structUtils.areLocatorsEqual(r,s)};function $4i(e){return mu.ppath.join(e.get("globalFolder"),"store")}async function SDc(e,t,{baseFs:r,project:s,report:a,loadManifest:o,realLocatorChecksums:g}){let p=mu.ppath.join(s.cwd,CB),{locationTree:f,binSymlinks:m,locatorLocations:y,installChangedByUser:B}=BDc(e.locationTree,e.binSymlinks,e.mtimeMs,s),v=j4i(t,{skipPrefix:s.cwd}),k=[],T=async({srcDir:Te,dstDir:ke,linkType:x,globalHardlinksStore:et,nmMode:Ue,windowsLinkType:Je,packageChecksum:Xe})=>{let ft=(async()=>{try{x===cX.LinkType.SOFT?(await Wp.xfs.mkdirPromise(mu.ppath.dirname(ke),{recursive:!0}),await FRr(mu.ppath.resolve(Te),ke,Je)):await EDc(ke,Te,{baseFs:r,globalHardlinksStore:et,nmMode:Ue,windowsLinkType:Je,packageChecksum:Xe})}catch(Gt){throw Gt.message=`While persisting ${Te} -> ${ke} ${Gt.message}`,Gt}finally{ge.tick()}})().then(()=>k.splice(k.indexOf(ft),1));k.push(ft),k.length>M4i&&await Promise.race(k)},O=async(Te,ke,x)=>{let et=(async()=>{let Ue=async(Je,Xe,ft)=>{try{ft.innerLoop||await Wp.xfs.mkdirPromise(Xe,{recursive:!0});let Gt=await Wp.xfs.readdirPromise(Je,{withFileTypes:!0});for(let er of Gt){if(!ft.innerLoop&&er.name===gTt)continue;let Ur=mu.ppath.join(Je,er.name),Ot=mu.ppath.join(Xe,er.name);er.isDirectory()?(er.name!==CB||ft&&ft.innerLoop)&&(await Wp.xfs.mkdirPromise(Ot,{recursive:!0}),await Ue(Ur,Ot,{...ft,innerLoop:!0})):he.value===E3.HARDLINKS_LOCAL||he.value===E3.HARDLINKS_GLOBAL?await Wp.xfs.linkPromise(Ur,Ot):await Wp.xfs.copyFilePromise(Ur,Ot,mDc.default.constants.COPYFILE_FICLONE)}}catch(Gt){throw ft.innerLoop||(Gt.message=`While cloning ${Je} -> ${Xe} ${Gt.message}`),Gt}finally{ft.innerLoop||ge.tick()}};await Ue(Te,ke,x)})().then(()=>k.splice(k.indexOf(et),1));k.push(et),k.length>M4i&&await Promise.race(k)},X=async(Te,ke,x)=>{if(x)for(let[et,Ue]of ke.children){let Je=x.children.get(et);await X(mu.ppath.join(Te,et),Ue,Je)}else{ke.children.has(CB)&&await oRe(mu.ppath.join(Te,CB),{contentsOnly:!1});let et=mu.ppath.basename(Te)===CB&&f.has(mu.ppath.join(mu.ppath.dirname(Te)));await oRe(Te,{contentsOnly:Te===p,isWorkspaceDir:et})}};for(let[Te,ke]of f){let x=v.get(Te);for(let[et,Ue]of ke.children){if(et===".")continue;let Je=x&&x.children.get(et),Xe=mu.ppath.join(Te,et);await X(Xe,Ue,Je)}}let U=async(Te,ke,x)=>{if(x){H4i(ke.locator,x.locator)||await oRe(Te,{contentsOnly:ke.linkType===cX.LinkType.HARD});for(let[et,Ue]of ke.children){let Je=x.children.get(et);await U(mu.ppath.join(Te,et),Ue,Je)}}else{ke.children.has(CB)&&await oRe(mu.ppath.join(Te,CB),{contentsOnly:!0});let et=mu.ppath.basename(Te)===CB&&v.has(mu.ppath.join(mu.ppath.dirname(Te)));await oRe(Te,{contentsOnly:ke.linkType===cX.LinkType.HARD,isWorkspaceDir:et})}};for(let[Te,ke]of v){let x=f.get(Te);for(let[et,Ue]of ke.children){if(et===".")continue;let Je=x&&x.children.get(et);await U(mu.ppath.join(Te,et),Ue,Je)}}let le=new Map,ae=[];for(let[Te,ke]of y)for(let x of ke){let{locationRoot:et,segments:Ue}=ATt(x,{skipPrefix:s.cwd}),Je=v.get(et),Xe=et;if(Je){for(let ft of Ue)if(Xe=mu.ppath.join(Xe,ft),Je=Je.children.get(ft),!Je)break;if(Je){let ft=H4i(Je.locator,Te),Gt=t.get(Je.locator),er=Gt.target,Ur=Xe,Ot=Gt.linkType;if(ft)le.has(er)||le.set(er,Ur);else if(er!==Ur){let dr=Ud.structUtils.parseLocator(Je.locator);Ud.structUtils.isVirtualLocator(dr)&&(dr=Ud.structUtils.devirtualizeLocator(dr)),ae.push({srcDir:er,dstDir:Ur,linkType:Ot,realLocatorHash:dr.locatorHash})}}}}for(let[Te,{locations:ke}]of t.entries())for(let x of ke){let{locationRoot:et,segments:Ue}=ATt(x,{skipPrefix:s.cwd}),Je=f.get(et),Xe=v.get(et),ft=et,Gt=t.get(Te),er=Ud.structUtils.parseLocator(Te);Ud.structUtils.isVirtualLocator(er)&&(er=Ud.structUtils.devirtualizeLocator(er));let Ur=er.locatorHash,Ot=Gt.target,dr=x;if(Ot===dr)continue;let Ar=Gt.linkType;for(let or of Ue)Xe=Xe.children.get(or);if(!Je)ae.push({srcDir:Ot,dstDir:dr,linkType:Ar,realLocatorHash:Ur});else for(let or of Ue)if(ft=mu.ppath.join(ft,or),Je=Je.children.get(or),!Je){ae.push({srcDir:Ot,dstDir:dr,linkType:Ar,realLocatorHash:Ur});break}}let ge=Ud.Report.progressViaCounter(ae.length),fe=a.reportProgress(ge),pe=s.configuration.get("nmMode"),he={value:pe},be=s.configuration.get("winLinkType");try{let Te=he.value===E3.HARDLINKS_GLOBAL?`${$4i(s.configuration)}/v1`:null;if(Te&&!await Wp.xfs.existsPromise(Te)){await Wp.xfs.mkdirpPromise(Te);for(let x=0;x<256;x++)await Wp.xfs.mkdirPromise(mu.ppath.join(Te,x.toString(16).padStart(2,"0")))}for(let x of ae)(x.linkType===cX.LinkType.SOFT||!le.has(x.srcDir))&&(le.set(x.srcDir,x.dstDir),await T({...x,globalHardlinksStore:Te,nmMode:he,windowsLinkType:be,packageChecksum:g.get(x.realLocatorHash)||null}));await Promise.all(k),k.length=0;for(let x of ae){let et=le.get(x.srcDir);x.linkType!==cX.LinkType.SOFT&&x.dstDir!==et&&await O(et,x.dstDir,{nmMode:he})}await Promise.all(k),await Wp.xfs.mkdirPromise(p,{recursive:!0});let ke=await vDc(t,v,s.cwd,{loadManifest:o});await wDc(m,ke,s.cwd,be),await yDc(s,t,ke,he,{installChangedByUser:B}),pe==E3.HARDLINKS_GLOBAL&&he.value==E3.HARDLINKS_LOCAL&&a.reportWarningOnce(RRr.MessageName.NM_HARDLINKS_MODE_DOWNGRADED,"'nmMode' has been downgraded to 'hardlinks-local' due to global cache and install folder being on different devices")}finally{fe.stop()}}async function wDc(e,t,r,s){for(let a of e.keys()){if(mu.ppath.contains(r,a)===null)throw new Error(`Assertion failed. Excepted bin symlink location to be inside project dir, instead it was at ${a}`);if(!t.has(a)){let o=mu.ppath.join(a,CB,gTt);await Wp.xfs.removePromise(o)}}for(let[a,o]of t){if(mu.ppath.contains(r,a)===null)throw new Error(`Assertion failed. Excepted bin symlink location to be inside project dir, instead it was at ${a}`);let g=mu.ppath.join(a,CB,gTt),p=e.get(a)||new Map;await Wp.xfs.mkdirPromise(g,{recursive:!0});for(let f of p.keys())o.has(f)||(await Wp.xfs.removePromise(mu.ppath.join(g,f)),process.platform==="win32"&&await Wp.xfs.removePromise(mu.ppath.join(g,`${f}.cmd`)));for(let[f,m]of o){let y=p.get(f),B=mu.ppath.join(g,f);y!==m&&(process.platform==="win32"?await(0,CDc.default)(mu.npath.fromPortablePath(m),mu.npath.fromPortablePath(B),{createPwshFile:!1}):(await Wp.xfs.removePromise(B),await FRr(m,B,s),mu.ppath.contains(r,await Wp.xfs.realpathPromise(m))!==null&&await Wp.xfs.chmodPromise(m,493)))}}}});var rJi=z(dTt=>{"use strict";Object.defineProperty(dTt,"__esModule",{value:!0});dTt.PnpLooseLinker=void 0;var eJi=Bn(),sUe=No(),TDc=NJ(),NDc=qJe(),tJi=nRe(),RDc=ARr(),LRr=class extends tJi.PnpLinker{constructor(){super(...arguments),this.mode="loose"}makeInstaller(t){return new VRr(t)}};dTt.PnpLooseLinker=LRr;var VRr=class extends tJi.PnpInstaller{constructor(){super(...arguments),this.mode="loose"}async transformPnpSettings(t){let r=new sUe.VirtualFS({baseFs:new TDc.ZipOpenFS({maxOpenFiles:80,readOnlyArchives:!0})}),s=(0,RDc.makeRuntimeApi)(t,this.opts.project.cwd,r),{tree:a,errors:o}=(0,NDc.buildNodeModulesTree)(s,{pnpifyFs:!1,project:this.opts.project});if(!a){for(let{messageName:y,text:B}of o)this.opts.report.reportError(y,B);return}let g=new Map;t.fallbackPool=g;let p=(y,B)=>{let v=eJi.structUtils.parseLocator(B.locator),k=eJi.structUtils.stringifyIdent(v);k===y?g.set(y,v.reference):g.set(y,[k,v.reference])},f=sUe.ppath.join(this.opts.project.cwd,sUe.Filename.nodeModules),m=a.get(f);if(!(typeof m>"u")){if("target"in m)throw new Error("Assertion failed: Expected the root junction point to be a directory");for(let y of m.dirList){let B=sUe.ppath.join(f,y),v=a.get(B);if(typeof v>"u")throw new Error("Assertion failed: Expected the child to have been registered");if("target"in v)p(y,v);else for(let k of v.dirList){let T=sUe.ppath.join(B,k),O=a.get(T);if(typeof O>"u")throw new Error("Assertion failed: Expected the subchild to have been registered");if("target"in O)p(`${y}/${k}`,O);else throw new Error("Assertion failed: Expected the leaf junction to be a package")}}}}}});var iJi=z(s$=>{"use strict";Object.defineProperty(s$,"__esModule",{value:!0});s$.PnpLooseLinker=s$.NodeModulesMode=s$.NodeModulesLinker=void 0;var WRr=Bn(),DDc=No(),pTt=qJe(),FCe=ZRr();Object.defineProperty(s$,"NodeModulesLinker",{enumerable:!0,get:function(){return FCe.NodeModulesLinker}});Object.defineProperty(s$,"NodeModulesMode",{enumerable:!0,get:function(){return FCe.NodeModulesMode}});var xDc=ZRr(),nJi=rJi();Object.defineProperty(s$,"PnpLooseLinker",{enumerable:!0,get:function(){return nJi.PnpLooseLinker}});var kDc={hooks:{cleanGlobalArtifacts:async e=>{let t=(0,xDc.getGlobalHardlinksStore)(e);await DDc.xfs.removePromise(t)}},configuration:{nmHoistingLimits:{description:"Prevents packages to be hoisted past specific levels",type:WRr.SettingsType.STRING,values:[pTt.NodeModulesHoistingLimits.WORKSPACES,pTt.NodeModulesHoistingLimits.DEPENDENCIES,pTt.NodeModulesHoistingLimits.NONE],default:pTt.NodeModulesHoistingLimits.NONE},nmMode:{description:"Defines in which measure Yarn must use hardlinks and symlinks when generated `node_modules` directories.",type:WRr.SettingsType.STRING,values:[FCe.NodeModulesMode.CLASSIC,FCe.NodeModulesMode.HARDLINKS_LOCAL,FCe.NodeModulesMode.HARDLINKS_GLOBAL],default:FCe.NodeModulesMode.CLASSIC},nmSelfReferences:{description:"Defines whether the linker should generate self-referencing symlinks for workspaces.",type:WRr.SettingsType.BOOLEAN,default:!0}},linkers:[FCe.NodeModulesLinker,nJi.PnpLooseLinker]};s$.default=kDc});var aRe=z(fTt=>{"use strict";Object.defineProperty(fTt,"__esModule",{value:!0});fTt.PROTOCOL=void 0;fTt.PROTOCOL="npm:"});var aUe=z(Vw=>{"use strict";Object.defineProperty(Vw,"__esModule",{value:!0});Vw.getAuthConfiguration=Vw.getScopeConfiguration=Vw.getRegistryConfiguration=Vw.getDefaultRegistry=Vw.getScopeRegistry=Vw.getPublishRegistry=Vw.getAuditRegistry=Vw.normalizeRegistry=Vw.RegistryType=void 0;var Zae;(function(e){e.AUDIT_REGISTRY="npmAuditRegistry",e.FETCH_REGISTRY="npmRegistryServer",e.PUBLISH_REGISTRY="npmPublishRegistry"})(Zae||(Vw.RegistryType=Zae={}));function cRe(e){return e.replace(/\/$/,"")}Vw.normalizeRegistry=cRe;function GDc({configuration:e}){return oUe({configuration:e,type:Zae.AUDIT_REGISTRY})}Vw.getAuditRegistry=GDc;function FDc(e,{configuration:t}){return e.publishConfig?.registry?cRe(e.publishConfig.registry):e.name?sJi(e.name.scope,{configuration:t,type:Zae.PUBLISH_REGISTRY}):oUe({configuration:t,type:Zae.PUBLISH_REGISTRY})}Vw.getPublishRegistry=FDc;function sJi(e,{configuration:t,type:r=Zae.FETCH_REGISTRY}){let s=PRr(e,{configuration:t});if(s===null)return oUe({configuration:t,type:r});let a=s.get(r);return a===null?oUe({configuration:t,type:r}):cRe(a)}Vw.getScopeRegistry=sJi;function oUe({configuration:e,type:t=Zae.FETCH_REGISTRY}){let r=e.get(t);return cRe(r!==null?r:e.get(Zae.FETCH_REGISTRY))}Vw.getDefaultRegistry=oUe;function oJi(e,{configuration:t}){let r=t.get("npmRegistries"),s=cRe(e),a=r.get(s);if(typeof a<"u")return a;let o=r.get(s.replace(/^[a-z]+:/,""));return typeof o<"u"?o:null}Vw.getRegistryConfiguration=oJi;function PRr(e,{configuration:t}){if(e===null)return null;let s=t.get("npmScopes").get(e);return s||null}Vw.getScopeConfiguration=PRr;function ZDc(e,{configuration:t,ident:r}){let s=r&&PRr(r.scope,{configuration:t});return s?.get("npmAuthIdent")||s?.get("npmAuthToken")?s:oJi(e,{configuration:t})||t}Vw.getAuthConfiguration=ZDc});var uRe=z(Ww=>{"use strict";Object.defineProperty(Ww,"__esModule",{value:!0});Ww.del=Ww.put=Ww.post=Ww.get=Ww.getPackageMetadata=Ww.getIdentUrl=Ww.customPackageError=Ww.handleInvalidAuthenticationError=Ww.AuthType=void 0;var QRr=(Oa(),Ai(Pa)),jT=Bn(),Lae=Bn(),o$=No(),aJi=L4e(),LDc=QRr.__importDefault(YKt()),VDc=QRr.__importDefault(Vh()),ORr=QRr.__importStar(aUe()),o5;(function(e){e[e.NO_AUTH=0]="NO_AUTH",e[e.BEST_EFFORT=1]="BEST_EFFORT",e[e.CONFIGURATION=2]="CONFIGURATION",e[e.ALWAYS_AUTH=3]="ALWAYS_AUTH"})(o5||(Ww.AuthType=o5={}));async function Vae(e,{attemptedAs:t,registry:r,headers:s,configuration:a}){if(CTt(e))throw new Lae.ReportError(Lae.MessageName.AUTHENTICATION_INVALID,"Invalid OTP token");if(e.originalError?.name==="HTTPError"&&e.originalError?.response.statusCode===401)throw new Lae.ReportError(Lae.MessageName.AUTHENTICATION_INVALID,`Invalid authentication (${typeof t!="string"?`as ${await zDc(r,s,{configuration:a})}`:`attempted as ${t}`})`)}Ww.handleInvalidAuthenticationError=Vae;function cJi(e,t){let r=e.response?.statusCode;return r?r===404?"Package not found":r>=500&&r<600?`The registry appears to be down (using a ${jT.formatUtils.applyHyperlink(t,"local cache","https://yarnpkg.com/advanced/lexicon#local-cache")} might have protected you against such outages)`:null:null}Ww.customPackageError=cJi;function lJi(e){return e.scope?`/@${e.scope}%2f${e.name}`:`/${e.name}`}Ww.getIdentUrl=lJi;var uJi=new Map,WDc=new Map;async function PDc(e){return await jT.miscUtils.getFactoryWithDefault(uJi,e,async()=>{let t=null;try{t=await o$.xfs.readJsonPromise(e)}catch{}return t})}async function ODc(e,t,{configuration:r,cached:s,registry:a,headers:o,version:g,...p}){return await jT.miscUtils.getFactoryWithDefault(WDc,e,async()=>await AJi(lJi(t),{...p,customErrorMessage:cJi,configuration:r,registry:a,ident:t,headers:{...o,"If-None-Match":s?.etag,"If-Modified-Since":s?.lastModified},wrapNetworkRequest:async f=>async()=>{let m=await f();if(m.statusCode===304){if(s===null)throw new Error("Assertion failed: cachedMetadata should not be null");return{...m,body:s.metadata}}let y=MDc(JSON.parse(m.body.toString())),B={metadata:y,etag:m.headers.etag,lastModified:m.headers["last-modified"]};return uJi.set(e,Promise.resolve(B)),Promise.resolve().then(async()=>{let v=`${e}-${process.pid}.tmp`;await o$.xfs.mkdirPromise(o$.ppath.dirname(v),{recursive:!0}),await o$.xfs.writeJsonPromise(v,B,{compact:!0}),await o$.xfs.renamePromise(v,e)}).catch(()=>{}),{...m,body:y}}}))}async function QDc(e,{cache:t,project:r,registry:s,headers:a,version:o,...g}){let{configuration:p}=r;s=cUe(p,{ident:e,registry:s});let f=YDc(p,s),m=o$.ppath.join(f,`${jT.structUtils.slugifyIdent(e)}.json`),y=null;if(!r.lockfileNeedsRefresh&&(y=await PDc(m),y)){if(typeof o<"u"&&typeof y.metadata.versions[o]<"u")return y.metadata;if(p.get("enableOfflineMode")){let B=structuredClone(y.metadata),v=new Set;if(t){for(let T of Object.keys(B.versions)){let O=jT.structUtils.makeLocator(e,`npm:${T}`),X=t.getLocatorMirrorPath(O);(!X||!o$.xfs.existsSync(X))&&(delete B.versions[T],v.add(T))}let k=B["dist-tags"].latest;if(v.has(k)){let T=Object.keys(y.metadata.versions).sort(VDc.default.compare),O=T.indexOf(k);for(;v.has(T[O])&&O>=0;)O-=1;O>=0?B["dist-tags"].latest=T[O]:delete B["dist-tags"].latest}}return B}}return await ODc(m,e,{...g,configuration:p,cached:y,registry:s,headers:a,version:o})}Ww.getPackageMetadata=QDc;var gJi=["name","dist.tarball","bin","scripts","os","cpu","libc","dependencies","dependenciesMeta","optionalDependencies","peerDependencies","peerDependenciesMeta","deprecated"];function MDc(e){return{"dist-tags":e["dist-tags"],versions:Object.fromEntries(Object.entries(e.versions).map(([t,r])=>[t,(0,LDc.default)(r,gJi)]))}}var HDc=jT.hashUtils.makeHash(...gJi).slice(0,6);function YDc(e,t){let r=XDc(e),s=new URL(t);return o$.ppath.join(r,HDc,s.hostname)}function XDc(e){return o$.ppath.join(e.get("globalFolder"),"metadata/npm")}async function AJi(e,{configuration:t,headers:r,ident:s,authType:a,registry:o,...g}){o=cUe(t,{ident:s,registry:o}),s&&s.scope&&typeof a>"u"&&(a=o5.BEST_EFFORT);let p=await ITt(o,{authType:a,configuration:t,ident:s});p&&(r={...r,authorization:p});try{return await jT.httpUtils.get(e.charAt(0)==="/"?`${o}${e}`:e,{configuration:t,headers:r,...g})}catch(f){throw await Vae(f,{registry:o,configuration:t,headers:r}),f}}Ww.get=AJi;async function JDc(e,t,{attemptedAs:r,configuration:s,headers:a,ident:o,authType:g=o5.ALWAYS_AUTH,registry:p,otp:f,...m}){p=cUe(s,{ident:o,registry:p});let y=await ITt(p,{authType:g,configuration:s,ident:o});y&&(a={...a,authorization:y}),f&&(a={...a,...lRe(f)});try{return await jT.httpUtils.post(p+e,t,{configuration:s,headers:a,...m})}catch(B){if(!CTt(B)||f)throw await Vae(B,{attemptedAs:r,registry:p,configuration:s,headers:a}),B;f=await MRr(B,{configuration:s});let v={...a,...lRe(f)};try{return await jT.httpUtils.post(`${p}${e}`,t,{configuration:s,headers:v,...m})}catch(k){throw await Vae(k,{attemptedAs:r,registry:p,configuration:s,headers:a}),k}}}Ww.post=JDc;async function UDc(e,t,{attemptedAs:r,configuration:s,headers:a,ident:o,authType:g=o5.ALWAYS_AUTH,registry:p,otp:f,...m}){p=cUe(s,{ident:o,registry:p});let y=await ITt(p,{authType:g,configuration:s,ident:o});y&&(a={...a,authorization:y}),f&&(a={...a,...lRe(f)});try{return await jT.httpUtils.put(p+e,t,{configuration:s,headers:a,...m})}catch(B){if(!CTt(B))throw await Vae(B,{attemptedAs:r,registry:p,configuration:s,headers:a}),B;f=await MRr(B,{configuration:s});let v={...a,...lRe(f)};try{return await jT.httpUtils.put(`${p}${e}`,t,{configuration:s,headers:v,...m})}catch(k){throw await Vae(k,{attemptedAs:r,registry:p,configuration:s,headers:a}),k}}}Ww.put=UDc;async function KDc(e,{attemptedAs:t,configuration:r,headers:s,ident:a,authType:o=o5.ALWAYS_AUTH,registry:g,otp:p,...f}){g=cUe(r,{ident:a,registry:g});let m=await ITt(g,{authType:o,configuration:r,ident:a});m&&(s={...s,authorization:m}),p&&(s={...s,...lRe(p)});try{return await jT.httpUtils.del(g+e,{configuration:r,headers:s,...f})}catch(y){if(!CTt(y)||p)throw await Vae(y,{attemptedAs:t,registry:g,configuration:r,headers:s}),y;p=await MRr(y,{configuration:r});let B={...s,...lRe(p)};try{return await jT.httpUtils.del(`${g}${e}`,{configuration:r,headers:B,...f})}catch(v){throw await Vae(v,{attemptedAs:t,registry:g,configuration:r,headers:s}),v}}}Ww.del=KDc;function cUe(e,{ident:t,registry:r}){if(typeof r>"u"&&t)return ORr.getScopeRegistry(t.scope,{configuration:e});if(typeof r!="string")throw new Error("Assertion failed: The registry should be a string");return ORr.normalizeRegistry(r)}async function ITt(e,{authType:t=o5.CONFIGURATION,configuration:r,ident:s}){let a=ORr.getAuthConfiguration(e,{configuration:r,ident:s}),o=jDc(a,t);if(!o)return null;let g=await r.reduceHook(p=>p.getNpmAuthenticationHeader,void 0,e,{configuration:r,ident:s});if(g)return g;if(a.get("npmAuthToken"))return`Bearer ${a.get("npmAuthToken")}`;if(a.get("npmAuthIdent")){let p=a.get("npmAuthIdent");return p.includes(":")?`Basic ${Buffer.from(p).toString("base64")}`:`Basic ${p}`}if(o&&t!==o5.BEST_EFFORT)throw new Lae.ReportError(Lae.MessageName.AUTHENTICATION_NOT_FOUND,"No authentication configured for request");return null}function jDc(e,t){switch(t){case o5.CONFIGURATION:return e.get("npmAlwaysAuth");case o5.BEST_EFFORT:case o5.ALWAYS_AUTH:return!0;case o5.NO_AUTH:return!1;default:throw new Error("Unreachable")}}async function zDc(e,t,{configuration:r}){if(typeof t>"u"||typeof t.authorization>"u")return"an anonymous user";try{return(await jT.httpUtils.get(new URL(`${e}/-/whoami`).href,{configuration:r,headers:t,jsonResponse:!0})).username??"an unknown user"}catch{return"an unknown user"}}async function MRr(e,{configuration:t}){let r=e.originalError?.response.headers["npm-notice"];if(r&&(await jT.StreamReport.start({configuration:t,stdout:process.stdout,includeFooter:!1},async a=>{if(a.reportInfo(Lae.MessageName.UNNAMED,r.replace(/(https?:\/\/\S+)/g,jT.formatUtils.pretty(t,"$1",jT.formatUtils.Type.URL))),!process.env.YARN_IS_TEST_ENV){let o=r.match(/open (https?:\/\/\S+)/i);if(o&&jT.nodeUtils.openUrl){let{openNow:g}=await(0,aJi.prompt)({type:"confirm",name:"openNow",message:"Do you want to try to open this url now?",required:!0,initial:!0,onCancel:()=>process.exit(130)});g&&(await jT.nodeUtils.openUrl(o[1])||(a.reportSeparator(),a.reportWarning(Lae.MessageName.UNNAMED,"We failed to automatically open the url; you'll have to open it yourself in your browser of choice.")))}}}),process.stdout.write(` +`)),process.env.YARN_IS_TEST_ENV)return process.env.YARN_INJECT_NPM_2FA_TOKEN||"";let{otp:s}=await(0,aJi.prompt)({type:"password",name:"otp",message:"One-time password:",required:!0,onCancel:()=>process.exit(130)});return process.stdout.write(` +`),s}function CTt(e){if(e.originalError?.name!=="HTTPError")return!1;try{return(e.originalError?.response.headers["www-authenticate"].split(/,\s*/).map(r=>r.toLowerCase())).includes("otp")}catch{return!1}}function lRe(e){return{"npm-otp":e}}});var fJi=z(mTt=>{"use strict";Object.defineProperty(mTt,"__esModule",{value:!0});mTt.NpmHttpFetcher=void 0;var pJi=(Oa(),Ai(Pa)),gRe=Bn(),qDc=pJi.__importDefault(Vh()),$Dc=aRe(),dJi=pJi.__importStar(uRe()),HRr=class{supports(t,r){if(!t.reference.startsWith($Dc.PROTOCOL))return!1;let{selector:s,params:a}=gRe.structUtils.parseRange(t.reference);return!(!qDc.default.valid(s)||a===null||typeof a.__archiveUrl!="string")}getLocalPath(t,r){return null}async fetch(t,r){let s=r.checksums.get(t.locatorHash)||null,[a,o,g]=await r.cache.fetchPackageFromCache(t,s,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${gRe.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote server`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:gRe.structUtils.getIdentVendorPath(t),checksum:g}}async fetchFromNetwork(t,r){let{params:s}=gRe.structUtils.parseRange(t.reference);if(s===null||typeof s.__archiveUrl!="string")throw new Error("Assertion failed: The archiveUrl querystring parameter should have been available");let a=await dJi.get(s.__archiveUrl,{customErrorMessage:dJi.customPackageError,configuration:r.project.configuration,ident:t});return await gRe.tgzUtils.convertToZip(a,{configuration:r.project.configuration,prefixPath:gRe.structUtils.getIdentVendorPath(t),stripComponents:1})}};mTt.NpmHttpFetcher=HRr});var IJi=z(_Tt=>{"use strict";Object.defineProperty(_Tt,"__esModule",{value:!0});_Tt.NpmRemapResolver=void 0;var hTt=Bn(),lUe=aRe(),YRr=class{supportsDescriptor(t,r){return!(!t.range.startsWith(lUe.PROTOCOL)||!hTt.structUtils.tryParseDescriptor(t.range.slice(lUe.PROTOCOL.length),!0))}supportsLocator(t,r){return!1}shouldPersistResolution(t,r){throw new Error("Unreachable")}bindDescriptor(t,r,s){return t}getResolutionDependencies(t,r){let s=r.project.configuration.normalizeDependency(hTt.structUtils.parseDescriptor(t.range.slice(lUe.PROTOCOL.length),!0));return r.resolver.getResolutionDependencies(s,r)}async getCandidates(t,r,s){let a=s.project.configuration.normalizeDependency(hTt.structUtils.parseDescriptor(t.range.slice(lUe.PROTOCOL.length),!0));return await s.resolver.getCandidates(a,r,s)}async getSatisfying(t,r,s,a){let o=a.project.configuration.normalizeDependency(hTt.structUtils.parseDescriptor(t.range.slice(lUe.PROTOCOL.length),!0));return a.resolver.getSatisfying(o,r,s,a)}resolve(t,r){throw new Error("Unreachable")}};_Tt.NpmRemapResolver=YRr});var bTt=z(yTt=>{"use strict";Object.defineProperty(yTt,"__esModule",{value:!0});yTt.NpmSemverFetcher=void 0;var JRr=(Oa(),Ai(Pa)),uUe=Bn(),CJi=Bn(),exc=JRr.__importDefault(Vh()),mJi=aRe(),txc=JRr.__importStar(aUe()),gUe=JRr.__importStar(uRe()),XRr=class e{supports(t,r){if(!t.reference.startsWith(mJi.PROTOCOL))return!1;let s=new URL(t.reference);return!(!exc.default.valid(s.pathname)||s.searchParams.has("__archiveUrl"))}getLocalPath(t,r){return null}async fetch(t,r){let s=r.checksums.get(t.locatorHash)||null,[a,o,g]=await r.cache.fetchPackageFromCache(t,s,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${uUe.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the remote registry`),loader:()=>this.fetchFromNetwork(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:uUe.structUtils.getIdentVendorPath(t),checksum:g}}async fetchFromNetwork(t,r){let s;try{s=await gUe.get(e.getLocatorUrl(t),{customErrorMessage:gUe.customPackageError,configuration:r.project.configuration,ident:t})}catch{s=await gUe.get(e.getLocatorUrl(t).replace(/%2f/g,"/"),{customErrorMessage:gUe.customPackageError,configuration:r.project.configuration,ident:t})}return await uUe.tgzUtils.convertToZip(s,{configuration:r.project.configuration,prefixPath:uUe.structUtils.getIdentVendorPath(t),stripComponents:1})}static isConventionalTarballUrl(t,r,{configuration:s}){let a=txc.getScopeRegistry(t.scope,{configuration:s}),o=e.getLocatorUrl(t);return r=r.replace(/^https?:(\/\/(?:[^/]+\.)?npmjs.org(?:$|\/))/,"https:$1"),a=a.replace(/^https:\/\/registry\.npmjs\.org($|\/)/,"https://registry.yarnpkg.com$1"),r=r.replace(/^https:\/\/registry\.npmjs\.org($|\/)/,"https://registry.yarnpkg.com$1"),r===a+o||r===a+o.replace(/%2f/g,"/")}static getLocatorUrl(t){let r=uUe.semverUtils.clean(t.reference.slice(mJi.PROTOCOL.length));if(r===null)throw new CJi.ReportError(CJi.MessageName.RESOLVER_NOT_FOUND,"The npm semver resolver got selected, but the version isn't semver");return`${gUe.getIdentUrl(t)}/-/${t.name}-${r}.tgz`}};yTt.NpmSemverFetcher=XRr});var bJi=z(BTt=>{"use strict";Object.defineProperty(BTt,"__esModule",{value:!0});BTt.NpmSemverResolver=void 0;var yJi=(Oa(),Ai(Pa)),B3=Bn(),ARe=Bn(),rxc=Bn(),ZCe=Bn(),hJi=yJi.__importDefault(Vh()),nxc=bTt(),a$=aRe(),_Ji=yJi.__importStar(uRe()),ETt=ZCe.structUtils.makeIdent(null,"node-gyp"),ixc=/\b(node-gyp|prebuild-install)\b/,URr=class{supportsDescriptor(t,r){return t.range.startsWith(a$.PROTOCOL)?!!ARe.semverUtils.validRange(t.range.slice(a$.PROTOCOL.length)):!1}supportsLocator(t,r){if(!t.reference.startsWith(a$.PROTOCOL))return!1;let{selector:s}=ZCe.structUtils.parseRange(t.reference);return!!hJi.default.valid(s)}shouldPersistResolution(t,r){return!0}bindDescriptor(t,r,s){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,s){let a=ARe.semverUtils.validRange(t.range.slice(a$.PROTOCOL.length));if(a===null)throw new Error(`Expected a valid range, got ${t.range.slice(a$.PROTOCOL.length)}`);let o=await _Ji.getPackageMetadata(t,{cache:s.fetchOptions?.cache,project:s.project,version:hJi.default.valid(a.raw)?a.raw:void 0}),g=B3.miscUtils.mapAndFilter(Object.keys(o.versions),m=>{try{let y=new ARe.semverUtils.SemVer(m);if(a.test(y))return y}catch{}return B3.miscUtils.mapAndFilter.skip}),p=g.filter(m=>!o.versions[m.raw].deprecated),f=p.length>0?p:g;return f.sort((m,y)=>-m.compare(y)),f.map(m=>{let y=ZCe.structUtils.makeLocator(t,`${a$.PROTOCOL}${m.raw}`),B=o.versions[m.raw].dist.tarball;return nxc.NpmSemverFetcher.isConventionalTarballUrl(y,B,{configuration:s.project.configuration})?y:ZCe.structUtils.bindLocator(y,{__archiveUrl:B})})}async getSatisfying(t,r,s,a){let o=ARe.semverUtils.validRange(t.range.slice(a$.PROTOCOL.length));if(o===null)throw new Error(`Expected a valid range, got ${t.range.slice(a$.PROTOCOL.length)}`);return{locators:B3.miscUtils.mapAndFilter(s,f=>{if(f.identHash!==t.identHash)return B3.miscUtils.mapAndFilter.skip;let m=ZCe.structUtils.tryParseRange(f.reference,{requireProtocol:a$.PROTOCOL});if(!m)return B3.miscUtils.mapAndFilter.skip;let y=new ARe.semverUtils.SemVer(m.selector);return o.test(y)?{locator:f,version:y}:B3.miscUtils.mapAndFilter.skip}).sort((f,m)=>-f.version.compare(m.version)).map(({locator:f})=>f),sorted:!0}}async resolve(t,r){let{selector:s}=ZCe.structUtils.parseRange(t.reference),a=ARe.semverUtils.clean(s);if(a===null)throw new B3.ReportError(B3.MessageName.RESOLVER_NOT_FOUND,"The npm semver resolver got selected, but the version isn't semver");let o=await _Ji.getPackageMetadata(t,{cache:r.fetchOptions?.cache,project:r.project,version:a});if(!Object.hasOwn(o,"versions"))throw new B3.ReportError(B3.MessageName.REMOTE_INVALID,'Registry returned invalid data for - missing "versions" field');if(!Object.hasOwn(o.versions,a))throw new B3.ReportError(B3.MessageName.REMOTE_NOT_FOUND,`Registry failed to return reference "${a}"`);let g=new B3.Manifest;if(g.load(o.versions[a]),!g.dependencies.has(ETt.identHash)&&!g.peerDependencies.has(ETt.identHash)){for(let p of g.scripts.values())if(p.match(ixc)){g.dependencies.set(ETt.identHash,ZCe.structUtils.makeDescriptor(ETt,"latest"));break}}return{...t,version:a,languageName:"node",linkType:rxc.LinkType.HARD,conditions:g.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(g.dependencies),peerDependencies:g.peerDependencies,dependenciesMeta:g.dependenciesMeta,peerDependenciesMeta:g.peerDependenciesMeta,bin:g.bin}}};BTt.NpmSemverResolver=URr});var BJi=z(vTt=>{"use strict";Object.defineProperty(vTt,"__esModule",{value:!0});vTt.NpmTagResolver=void 0;var EJi=(Oa(),Ai(Pa)),AUe=Bn(),dUe=Bn(),sxc=EJi.__importDefault(Vh()),oxc=bTt(),dRe=aRe(),axc=EJi.__importStar(uRe()),KRr=class{supportsDescriptor(t,r){return!(!t.range.startsWith(dRe.PROTOCOL)||!AUe.TAG_REGEXP.test(t.range.slice(dRe.PROTOCOL.length)))}supportsLocator(t,r){return!1}shouldPersistResolution(t,r){throw new Error("Unreachable")}bindDescriptor(t,r,s){return t}getResolutionDependencies(t,r){return{}}async getCandidates(t,r,s){let a=t.range.slice(dRe.PROTOCOL.length),o=await axc.getPackageMetadata(t,{cache:s.fetchOptions?.cache,project:s.project});if(!Object.hasOwn(o,"dist-tags"))throw new AUe.ReportError(AUe.MessageName.REMOTE_INVALID,'Registry returned invalid data - missing "dist-tags" field');let g=o["dist-tags"];if(!Object.hasOwn(g,a))throw new AUe.ReportError(AUe.MessageName.REMOTE_NOT_FOUND,`Registry failed to return tag "${a}"`);let p=g[a],f=dUe.structUtils.makeLocator(t,`${dRe.PROTOCOL}${p}`),m=o.versions[p].dist.tarball;return oxc.NpmSemverFetcher.isConventionalTarballUrl(f,m,{configuration:s.project.configuration})?[f]:[dUe.structUtils.bindLocator(f,{__archiveUrl:m})]}async getSatisfying(t,r,s,a){let o=[];for(let g of s){if(g.identHash!==t.identHash)continue;let p=dUe.structUtils.tryParseRange(g.reference,{requireProtocol:dRe.PROTOCOL});if(!(!p||!sxc.default.valid(p.selector))){if(p.params?.__archiveUrl){let f=dUe.structUtils.makeRange({protocol:dRe.PROTOCOL,selector:p.selector,source:null,params:null}),[m]=await a.resolver.getCandidates(dUe.structUtils.makeDescriptor(t,f),r,a);if(g.reference!==m.reference)continue}o.push(g)}}return{locators:o,sorted:!1}}async resolve(t,r){throw new Error("Unreachable")}};vTt.NpmTagResolver=KRr});var NJi=z((b4l,TJi)=>{"use strict";var pUe=class e{constructor(t,r,s){this.__specs=t||{},Object.keys(this.__specs).forEach(a=>{if(typeof this.__specs[a]=="string"){let o=this.__specs[a],g=this.__specs[o];if(g){let p=g.aliases||[];p.push(a,o),g.aliases=[...new Set(p)],this.__specs[a]=g}else throw new Error(`Alias refers to invalid key: ${o} -> ${a}`)}}),this.__opts=r||{},this.__providers=SJi(s.filter(a=>a!=null&&typeof a=="object")),this.__isFiggyPudding=!0}get(t){return jRr(this,t,!0)}get[Symbol.toStringTag](){return"FiggyPudding"}forEach(t,r=this){for(let[s,a]of this.entries())t.call(r,a,s,this)}toJSON(){let t={};return this.forEach((r,s)=>{t[s]=r}),t}*entries(t){for(let s of Object.keys(this.__specs))yield[s,this.get(s)];let r=t||this.__opts.other;if(r){let s=new Set;for(let a of this.__providers){let o=a.entries?a.entries(r):uxc(a);for(let[g,p]of o)r(g)&&!s.has(g)&&(s.add(g),yield[g,p])}}}*[Symbol.iterator](){for(let[t,r]of this.entries())yield[t,r]}*keys(){for(let[t]of this.entries())yield t}*values(){for(let[,t]of this.entries())yield t}concat(...t){return new Proxy(new e(this.__specs,this.__opts,SJi(this.__providers).concat(t)),wJi)}};try{let e=xt("util");pUe.prototype[e.inspect.custom]=function(t,r){return this[Symbol.toStringTag]+" "+e.inspect(this.toJSON(),r)}}catch{}function cxc(e){throw Object.assign(new Error(`invalid config key requested: ${e}`),{code:"EBADKEY"})}function jRr(e,t,r){let s=e.__specs[t];if(r&&!s&&(!e.__opts.other||!e.__opts.other(t)))cxc(t);else{s||(s={});let a;for(let o of e.__providers){if(a=vJi(t,o),a===void 0&&s.aliases&&s.aliases.length){for(let g of s.aliases)if(g!==t&&(a=vJi(g,o),a!==void 0))break}if(a!==void 0)break}return a===void 0&&s.default!==void 0?typeof s.default=="function"?s.default(e):s.default:a}}function vJi(e,t){let r;return t.__isFiggyPudding?r=jRr(t,e,!1):typeof t.get=="function"?r=t.get(e):r=t[e],r}var wJi={has(e,t){return t in e.__specs&&jRr(e,t,!1)!==void 0},ownKeys(e){return Object.keys(e.__specs)},get(e,t){return typeof t=="symbol"||t.slice(0,2)==="__"||t in pUe.prototype?e[t]:e.get(t)},set(e,t,r){if(typeof t=="symbol"||t.slice(0,2)==="__")return e[t]=r,!0;throw new Error("figgyPudding options cannot be modified. Use .concat() instead.")},deleteProperty(){throw new Error("figgyPudding options cannot be deleted. Use .concat() and shadow them instead.")}};TJi.exports=lxc;function lxc(e,t){function r(...s){return new Proxy(new pUe(e,t,s),wJi)}return r}function SJi(e){let t=[];return e.forEach(r=>t.unshift(r)),t}function uxc(e){return Object.keys(e).map(t=>[t,e[t]])}});var xJi=z((E4l,t8)=>{"use strict";var IUe=xt("crypto"),gxc=NJi(),Axc=xt("stream").Transform,RJi=["sha256","sha384","sha512"],dxc=/^[a-z0-9+/]+(?:=?=?)$/i,pxc=/^([^-]+)-([^?]+)([?\S*]*)$/,fxc=/^([^-]+)-([A-Za-z0-9+/=]{44,88})(\?[\x21-\x7E]*)?$/,Ixc=/^[\x21-\x7E]+$/,aZ=gxc({algorithms:{default:["sha512"]},error:{default:!1},integrity:{},options:{default:[]},pickAlgorithm:{default:()=>Bxc},Promise:{default:()=>Promise},sep:{default:" "},single:{default:!1},size:{},strict:{default:!1}}),Wae=class{get isHash(){return!0}constructor(t,r){r=aZ(r);let s=!!r.strict;this.source=t.trim();let a=this.source.match(s?fxc:pxc);if(!a||s&&!RJi.some(g=>g===a[1]))return;this.algorithm=a[1],this.digest=a[2];let o=a[3];this.options=o?o.slice(1).split("?"):[]}hexDigest(){return this.digest&&Buffer.from(this.digest,"base64").toString("hex")}toJSON(){return this.toString()}toString(t){if(t=aZ(t),t.strict&&!(RJi.some(s=>s===this.algorithm)&&this.digest.match(dxc)&&(this.options||[]).every(s=>s.match(Ixc))))return"";let r=this.options&&this.options.length?`?${this.options.join("?")}`:"";return`${this.algorithm}-${this.digest}${r}`}},LCe=class{get isIntegrity(){return!0}toJSON(){return this.toString()}toString(t){t=aZ(t);let r=t.sep||" ";return t.strict&&(r=r.replace(/\S+/g," ")),Object.keys(this).map(s=>this[s].map(a=>Wae.prototype.toString.call(a,t)).filter(a=>a.length).join(r)).filter(s=>s.length).join(r)}concat(t,r){r=aZ(r);let s=typeof t=="string"?t:fUe(t,r);return e8(`${this.toString(r)} ${s}`,r)}hexDigest(){return e8(this,{single:!0}).hexDigest()}match(t,r){r=aZ(r);let s=e8(t,r),a=s.pickAlgorithm(r);return this[a]&&s[a]&&this[a].find(o=>s[a].find(g=>o.digest===g.digest))||!1}pickAlgorithm(t){t=aZ(t);let r=t.pickAlgorithm,s=Object.keys(this);if(!s.length)throw new Error(`No algorithms available for ${JSON.stringify(this.toString())}`);return s.reduce((a,o)=>r(a,o)||a)}};t8.exports.parse=e8;function e8(e,t){if(t=aZ(t),typeof e=="string")return zRr(e,t);if(e.algorithm&&e.digest){let r=new LCe;return r[e.algorithm]=[e],zRr(fUe(r,t),t)}else return zRr(fUe(e,t),t)}function zRr(e,t){return t.single?new Wae(e,t):e.trim().split(/\s+/).reduce((r,s)=>{let a=new Wae(s,t);if(a.algorithm&&a.digest){let o=a.algorithm;r[o]||(r[o]=[]),r[o].push(a)}return r},new LCe)}t8.exports.stringify=fUe;function fUe(e,t){return t=aZ(t),e.algorithm&&e.digest?Wae.prototype.toString.call(e,t):typeof e=="string"?fUe(e8(e,t),t):LCe.prototype.toString.call(e,t)}t8.exports.fromHex=Cxc;function Cxc(e,t,r){r=aZ(r);let s=r.options&&r.options.length?`?${r.options.join("?")}`:"";return e8(`${t}-${Buffer.from(e,"hex").toString("base64")}${s}`,r)}t8.exports.fromData=mxc;function mxc(e,t){t=aZ(t);let r=t.algorithms,s=t.options&&t.options.length?`?${t.options.join("?")}`:"";return r.reduce((a,o)=>{let g=IUe.createHash(o).update(e).digest("base64"),p=new Wae(`${o}-${g}${s}`,t);if(p.algorithm&&p.digest){let f=p.algorithm;a[f]||(a[f]=[]),a[f].push(p)}return a},new LCe)}t8.exports.fromStream=hxc;function hxc(e,t){t=aZ(t);let r=t.Promise||Promise,s=qRr(t);return new r((a,o)=>{e.pipe(s),e.on("error",o),s.on("error",o);let g;s.on("integrity",p=>{g=p}),s.on("end",()=>a(g)),s.on("data",()=>{})})}t8.exports.checkData=_xc;function _xc(e,t,r){if(r=aZ(r),t=e8(t,r),!Object.keys(t).length){if(r.error)throw Object.assign(new Error("No valid integrity hashes to check against"),{code:"EINTEGRITY"});return!1}let s=t.pickAlgorithm(r),a=IUe.createHash(s).update(e).digest("base64"),o=e8({algorithm:s,digest:a}),g=o.match(t,r);if(g||!r.error)return g;if(typeof r.size=="number"&&e.length!==r.size){let p=new Error(`data size mismatch when checking ${t}. Wanted: ${r.size} - Found: ${e.length}`);throw p.code="EBADSIZE",p.found=e.length,p.expected=r.size,p.sri=t,p}else{let p=new Error(`Integrity checksum failed when using ${s}: Wanted ${t}, but got ${o}. (${e.length} bytes)`);throw p.code="EINTEGRITY",p.found=o,p.expected=t,p.algorithm=s,p.sri=t,p}}KK.exports.checkStream=sxc;function sxc(e,t,r){r=oZ(r);let s=r.Promise||Promise,a=XRr(r.concat({integrity:t}));return new s((o,g)=>{e.pipe(a),e.on("error",g),a.on("error",g);let p;a.on("verified",f=>{p=f}),a.on("end",()=>o(p)),a.on("data",()=>{})})}KK.exports.integrityStream=XRr;function XRr(e){e=oZ(e);let t=e.integrity&&UK(e.integrity,e),r=t&&Object.keys(t).length,s=r&&t.pickAlgorithm(e),a=r&&t[s],o=Array.from(new Set(e.algorithms.concat(s?[s]:[]))),g=o.map(pUe.createHash),p=0,f=new jDc({transform(m,y,B){p+=m.length,g.forEach(v=>v.update(m,y)),B(null,m,y)}}).on("end",()=>{let m=e.options&&e.options.length?`?${e.options.join("?")}`:"",y=UK(g.map((v,G)=>`${o[G]}-${v.digest("base64")}${m}`).join(" "),e),B=r&&y.match(t,e);if(typeof e.size=="number"&&p!==e.size){let v=new Error(`stream size mismatch when checking ${t}. + Found: ${e.length}`);throw p.code="EBADSIZE",p.found=e.length,p.expected=r.size,p.sri=t,p}else{let p=new Error(`Integrity checksum failed when using ${s}: Wanted ${t}, but got ${o}. (${e.length} bytes)`);throw p.code="EINTEGRITY",p.found=o,p.expected=t,p.algorithm=s,p.sri=t,p}}t8.exports.checkStream=yxc;function yxc(e,t,r){r=aZ(r);let s=r.Promise||Promise,a=qRr(r.concat({integrity:t}));return new s((o,g)=>{e.pipe(a),e.on("error",g),a.on("error",g);let p;a.on("verified",f=>{p=f}),a.on("end",()=>o(p)),a.on("data",()=>{})})}t8.exports.integrityStream=qRr;function qRr(e){e=aZ(e);let t=e.integrity&&e8(e.integrity,e),r=t&&Object.keys(t).length,s=r&&t.pickAlgorithm(e),a=r&&t[s],o=Array.from(new Set(e.algorithms.concat(s?[s]:[]))),g=o.map(IUe.createHash),p=0,f=new Axc({transform(m,y,B){p+=m.length,g.forEach(v=>v.update(m,y)),B(null,m,y)}}).on("end",()=>{let m=e.options&&e.options.length?`?${e.options.join("?")}`:"",y=e8(g.map((v,k)=>`${o[k]}-${v.digest("base64")}${m}`).join(" "),e),B=r&&y.match(t,e);if(typeof e.size=="number"&&p!==e.size){let v=new Error(`stream size mismatch when checking ${t}. Wanted: ${e.size} - Found: ${p}`);v.code="EBADSIZE",v.found=p,v.expected=e.size,v.sri=t,f.emit("error",v)}else if(e.integrity&&!B){let v=new Error(`${t} integrity checksum failed when using ${s}: wanted ${a} but got ${y}. (${p} bytes)`);v.code="EINTEGRITY",v.found=y,v.expected=a,v.algorithm=s,v.sri=t,f.emit("error",v)}else f.emit("size",p),f.emit("integrity",y),B&&f.emit("verified",B)});return f}KK.exports.create=oxc;function oxc(e){e=oZ(e);let t=e.algorithms,r=e.options.length?`?${e.options.join("?")}`:"",s=t.map(pUe.createHash);return{update:function(a,o){return s.forEach(g=>g.update(a,o)),this},digest:function(a){return t.reduce((g,p)=>{let f=s.shift().digest("base64"),m=new Rae(`${p}-${f}${r}`,e);if(m.algorithm&&m.digest){let y=m.algorithm;g[y]||(g[y]=[]),g[y].push(m)}return g},new FCe)}}}var axc=new Set(pUe.getHashes()),BJi=["md5","whirlpool","sha1","sha224","sha256","sha384","sha512","sha3","sha3-256","sha3-384","sha3-512","sha3_256","sha3_384","sha3_512"].filter(e=>axc.has(e));function cxc(e,t){return BJi.indexOf(e.toLowerCase())>=BJi.indexOf(t.toLowerCase())?e:t}});var RJi=z(jK=>{"use strict";Object.defineProperty(jK,"__esModule",{value:!0});jK.getReadmeContent=jK.getPublishAccess=jK.getGitHead=jK.makePublishBody=void 0;var lxc=(Ma(),Ai(Oa)),uxc=Bn(),wJi=Bn(),SJi=Ro(),gxc=vpe(),Axc=Dt("crypto"),dxc=lxc.__importDefault(vJi()),pxc=sUe();async function fxc(e,t,{access:r,tag:s,registry:a,gitHead:o}){let g=e.manifest.name,p=e.manifest.version,f=wJi.structUtils.stringifyIdent(g),m=(0,Axc.createHash)("sha1").update(t).digest("hex"),y=dxc.default.fromData(t).toString(),B=r??TJi(e,g),v=await NJi(e),G=await gxc.packUtils.genPackageManifest(e),T=`${f}-${p}.tgz`,O=new URL(`${(0,pxc.normalizeRegistry)(a)}/${f}/-/${T}`);return{_id:f,_attachments:{[T]:{content_type:"application/octet-stream",data:t.toString("base64"),length:t.length}},name:f,access:B,"dist-tags":{[s]:p},versions:{[p]:{...G,_id:`${f}@${p}`,name:f,version:p,gitHead:o,dist:{shasum:m,integrity:y,tarball:O.toString()}}},readme:v}}jK.makePublishBody=fxc;async function Ixc(e){try{let{stdout:t}=await uxc.execUtils.execvp("git",["rev-parse","--revs-only","HEAD"],{cwd:e});return t.trim()===""?void 0:t.trim()}catch{return}}jK.getGitHead=Ixc;function TJi(e,t){let r=e.project.configuration;return e.manifest.publishConfig&&typeof e.manifest.publishConfig.access=="string"?e.manifest.publishConfig.access:r.get("npmPublishAccess")!==null?r.get("npmPublishAccess"):t.scope?"restricted":"public"}jK.getPublishAccess=TJi;async function NJi(e){let t=SJi.npath.toPortablePath(`${e.cwd}/README.md`),r=e.manifest.name,a=`# ${wJi.structUtils.stringifyIdent(r)} -`;try{a=await SJi.xfs.readFilePromise(t,"utf8")}catch(o){if(o.code==="ENOENT")return a;throw o}return a}jK.getReadmeContent=NJi});var oX=z(jT=>{"use strict";Object.defineProperty(jT,"__esModule",{value:!0});jT.NpmTagResolver=jT.NpmSemverResolver=jT.NpmSemverFetcher=jT.NpmRemapResolver=jT.NpmHttpFetcher=jT.npmPublishUtils=jT.npmHttpUtils=jT.npmConfigUtils=void 0;var URr=(Ma(),Ai(Oa)),zK=Bn(),xJi=cJi();Object.defineProperty(jT,"NpmHttpFetcher",{enumerable:!0,get:function(){return xJi.NpmHttpFetcher}});var kJi=lJi();Object.defineProperty(jT,"NpmRemapResolver",{enumerable:!0,get:function(){return kJi.NpmRemapResolver}});var GJi=hTt();Object.defineProperty(jT,"NpmSemverFetcher",{enumerable:!0,get:function(){return GJi.NpmSemverFetcher}});var FJi=fJi();Object.defineProperty(jT,"NpmSemverResolver",{enumerable:!0,get:function(){return FJi.NpmSemverResolver}});var ZJi=CJi();Object.defineProperty(jT,"NpmTagResolver",{enumerable:!0,get:function(){return ZJi.NpmTagResolver}});var LJi=URr.__importStar(sUe());jT.npmConfigUtils=LJi;var Cxc=URr.__importStar(cRe());jT.npmHttpUtils=Cxc;var mxc=URr.__importStar(RJi());jT.npmPublishUtils=mxc;var JRr={npmAlwaysAuth:{description:"URL of the selected npm registry (note: npm enterprise isn't supported)",type:zK.SettingsType.BOOLEAN,default:!1},npmAuthIdent:{description:"Authentication identity for the npm registry (_auth in npm and yarn v1)",type:zK.SettingsType.SECRET,default:null},npmAuthToken:{description:"Authentication token for the npm registry (_authToken in npm and yarn v1)",type:zK.SettingsType.SECRET,default:null}},DJi={npmAuditRegistry:{description:"Registry to query for audit reports",type:zK.SettingsType.STRING,default:null},npmPublishRegistry:{description:"Registry to push packages to",type:zK.SettingsType.STRING,default:null},npmRegistryServer:{description:"URL of the selected npm registry (note: npm enterprise isn't supported)",type:zK.SettingsType.STRING,default:"https://registry.yarnpkg.com"}},hxc={configuration:{...JRr,...DJi,npmScopes:{description:"Settings per package scope",type:zK.SettingsType.MAP,valueDefinition:{description:"",type:zK.SettingsType.SHAPE,properties:{...JRr,...DJi}}},npmRegistries:{description:"Settings per registry",type:zK.SettingsType.MAP,normalizeKeys:LJi.normalizeRegistry,valueDefinition:{description:"",type:zK.SettingsType.SHAPE,properties:{...JRr}}}},fetchers:[xJi.NpmHttpFetcher,GJi.NpmSemverFetcher],resolvers:[kJi.NpmRemapResolver,FJi.NpmSemverResolver,ZJi.NpmTagResolver]};jT.default=hxc});var ETt=z(ARe=>{"use strict";Object.defineProperty(ARe,"__esModule",{value:!0});ARe.Severity=ARe.Environment=void 0;var VJi;(function(e){e.All="all",e.Production="production",e.Development="development"})(VJi||(ARe.Environment=VJi={}));var WJi;(function(e){e.Info="info",e.Low="low",e.Moderate="moderate",e.High="high",e.Critical="critical"})(WJi||(ARe.Severity=WJi={}))});var KRr=z(aX=>{"use strict";Object.defineProperty(aX,"__esModule",{value:!0});aX.allSeverities=void 0;aX.getSeverityInclusions=yxc;aX.getReportTree=bxc;aX.getTopLevelDependencies=Exc;aX.getPackages=Bxc;var PJi=(Ma(),Ai(Oa)),d1=Bn(),_xc=PJi.__importDefault(Lh()),o$=PJi.__importStar(ETt());aX.allSeverities=[o$.Severity.Info,o$.Severity.Low,o$.Severity.Moderate,o$.Severity.High,o$.Severity.Critical];function yxc(e){if(typeof e>"u")return new Set(aX.allSeverities);let t=aX.allSeverities.indexOf(e),r=aX.allSeverities.slice(t);return new Set(r)}function bxc(e){let t={},r={children:t};for(let[s,a]of d1.miscUtils.sortMap(Object.entries(e),o=>o[0]))for(let o of d1.miscUtils.sortMap(a,g=>`${g.id}`))t[`${s}/${o.id}`]={value:d1.formatUtils.tuple(d1.formatUtils.Type.IDENT,d1.structUtils.parseIdent(s)),children:{ID:typeof o.id<"u"&&{label:"ID",value:d1.formatUtils.tuple(d1.formatUtils.Type.ID,o.id)},Issue:{label:"Issue",value:d1.formatUtils.tuple(d1.formatUtils.Type.NO_HINT,o.title)},URL:typeof o.url<"u"&&{label:"URL",value:d1.formatUtils.tuple(d1.formatUtils.Type.URL,o.url)},Severity:{label:"Severity",value:d1.formatUtils.tuple(d1.formatUtils.Type.NO_HINT,o.severity)},"Vulnerable Versions":{label:"Vulnerable Versions",value:d1.formatUtils.tuple(d1.formatUtils.Type.RANGE,o.vulnerable_versions)},"Tree Versions":{label:"Tree Versions",children:[...o.versions].sort(_xc.default.compare).map(g=>({value:d1.formatUtils.tuple(d1.formatUtils.Type.REFERENCE,g)}))},Dependents:{label:"Dependents",children:d1.miscUtils.sortMap(o.dependents,g=>d1.structUtils.stringifyLocator(g)).map(g=>({value:d1.formatUtils.tuple(d1.formatUtils.Type.LOCATOR,g)}))}}};return r}function Exc(e,t,{all:r,environment:s}){let a=[],o=r?e.workspaces:[t],g=[o$.Environment.All,o$.Environment.Production].includes(s),p=[o$.Environment.All,o$.Environment.Development].includes(s);for(let f of o)for(let m of f.anchoredPackage.dependencies.values())(f.manifest.devDependencies.has(m.identHash)?!p:!g)||a.push({workspace:f,dependency:m});return a}function Bxc(e,t,{recursive:r}){let s=new Map,a=new Set,o=[],g=(p,f)=>{let m=e.storedResolutions.get(f.descriptorHash);if(typeof m>"u")throw new Error("Assertion failed: The resolution should have been registered");if(!a.has(m))a.add(m);else return;let y=e.storedPackages.get(m);if(typeof y>"u")throw new Error("Assertion failed: The package should have been registered");if(d1.structUtils.ensureDevirtualizedLocator(y).reference.startsWith("npm:")&&y.version!==null){let v=d1.structUtils.stringifyIdent(y),G=d1.miscUtils.getMapWithDefault(s,v);d1.miscUtils.getArrayWithDefault(G,y.version).push(p)}if(r)for(let v of y.dependencies.values())o.push([y,v])};for(let{workspace:p,dependency:f}of t)o.push([p.anchoredLocator,f]);for(;o.length>0;){let[p,f]=o.shift();g(p,f)}return s}});var YJi=z(jRr=>{"use strict";Object.defineProperty(jRr,"__esModule",{value:!0});var vTt=(Ma(),Ai(Oa)),OJi=nl(),qK=Bn(),vxc=Bn(),BTt=oX(),a$=(Fl(),Ai(dg)),MJi=vTt.__importDefault(sk()),QJi=vTt.__importStar((_L(),Ai(hL))),fUe=vTt.__importStar(ETt()),IUe=vTt.__importStar(KRr()),CUe=class extends OJi.BaseCommand{constructor(){super(...arguments),this.all=a$.Option.Boolean("-A,--all",!1,{description:"Audit dependencies from all workspaces"}),this.recursive=a$.Option.Boolean("-R,--recursive",!1,{description:"Audit transitive dependencies as well"}),this.environment=a$.Option.String("--environment",fUe.Environment.All,{description:"Which environments to cover",validator:QJi.isEnum(fUe.Environment)}),this.json=a$.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.noDeprecations=a$.Option.Boolean("--no-deprecations",!1,{description:"Don't warn about deprecated packages"}),this.severity=a$.Option.String("--severity",fUe.Severity.Info,{description:"Minimal severity requested for packages to be displayed",validator:QJi.isEnum(fUe.Severity)}),this.excludes=a$.Option.Array("--exclude",[],{description:"Array of glob patterns of packages to exclude from audit"}),this.ignores=a$.Option.Array("--ignore",[],{description:"Array of glob patterns of advisory ID's to ignore in the audit report"})}async execute(){let t=await qK.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await qK.Project.find(t,this.context.cwd);if(!s)throw new OJi.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=IUe.getTopLevelDependencies(r,s,{all:this.all,environment:this.environment}),o=IUe.getPackages(r,a,{recursive:this.recursive}),g=Array.from(new Set([...t.get("npmAuditExcludePackages"),...this.excludes])),p=Object.create(null);for(let[O,X]of o)g.some(U=>MJi.default.isMatch(O,U))||(p[O]=[...X.keys()]);let f=BTt.npmConfigUtils.getAuditRegistry({configuration:t}),m,y=await qK.LightReport.start({configuration:t,stdout:this.context.stdout},async()=>{let O=BTt.npmHttpUtils.post("/-/npm/v1/security/advisories/bulk",p,{authType:BTt.npmHttpUtils.AuthType.BEST_EFFORT,configuration:t,jsonResponse:!0,registry:f}),X=this.noDeprecations?[]:await Promise.all(Array.from(Object.entries(p),async([le,ae])=>{let ge=await BTt.npmHttpUtils.getPackageMetadata(vxc.structUtils.parseIdent(le),{project:r});return qK.miscUtils.mapAndFilter(ae,fe=>{let{deprecated:pe}=ge.versions[fe];return pe?[le,fe,pe]:qK.miscUtils.mapAndFilter.skip})})),U=await O;for(let[le,ae,ge]of X.flat(1))Object.hasOwn(U,le)&&U[le].some(fe=>qK.semverUtils.satisfiesWithPrereleases(ae,fe.vulnerable_versions))||(U[le]??=[],U[le].push({id:`${le} (deprecation)`,title:ge.trim()||"This package has been deprecated.",severity:fUe.Severity.Moderate,vulnerable_versions:ae}));m=U});if(y.hasErrors())return y.exitCode();let B=IUe.getSeverityInclusions(this.severity),v=Array.from(new Set([...t.get("npmAuditIgnoreAdvisories"),...this.ignores])),G=Object.create(null);for(let[O,X]of Object.entries(m)){let U=X.filter(le=>!MJi.default.isMatch(`${le.id}`,v)&&B.has(le.severity));U.length>0&&(G[O]=U.map(le=>{let ae=o.get(O);if(typeof ae>"u")throw new Error("Assertion failed: Expected the registry to only return packages that were requested");let ge=[...ae.keys()].filter(pe=>qK.semverUtils.satisfiesWithPrereleases(pe,le.vulnerable_versions)),fe=new Map;for(let pe of ge)for(let he of ae.get(pe))fe.set(he.locatorHash,he);return{...le,versions:ge,dependents:[...fe.values()]}}))}let T=Object.keys(G).length>0;return T?(qK.treeUtils.emitTree(IUe.getReportTree(G),{configuration:t,json:this.json,stdout:this.context.stdout,separators:2}),1):(await qK.StreamReport.start({configuration:t,includeFooter:!1,json:this.json,stdout:this.context.stdout},async O=>{O.reportInfo(qK.MessageName.EXCEPTION,"No audit suggestions")}),T?1:0)}};CUe.paths=[["npm","audit"]];CUe.usage=a$.Command.Usage({description:"perform a vulnerability audit against the installed packages",details:` + Found: ${p}`);v.code="EBADSIZE",v.found=p,v.expected=e.size,v.sri=t,f.emit("error",v)}else if(e.integrity&&!B){let v=new Error(`${t} integrity checksum failed when using ${s}: wanted ${a} but got ${y}. (${p} bytes)`);v.code="EINTEGRITY",v.found=y,v.expected=a,v.algorithm=s,v.sri=t,f.emit("error",v)}else f.emit("size",p),f.emit("integrity",y),B&&f.emit("verified",B)});return f}t8.exports.create=bxc;function bxc(e){e=aZ(e);let t=e.algorithms,r=e.options.length?`?${e.options.join("?")}`:"",s=t.map(IUe.createHash);return{update:function(a,o){return s.forEach(g=>g.update(a,o)),this},digest:function(a){return t.reduce((g,p)=>{let f=s.shift().digest("base64"),m=new Wae(`${p}-${f}${r}`,e);if(m.algorithm&&m.digest){let y=m.algorithm;g[y]||(g[y]=[]),g[y].push(m)}return g},new LCe)}}}var Exc=new Set(IUe.getHashes()),DJi=["md5","whirlpool","sha1","sha224","sha256","sha384","sha512","sha3","sha3-256","sha3-384","sha3-512","sha3_256","sha3_384","sha3_512"].filter(e=>Exc.has(e));function Bxc(e,t){return DJi.indexOf(e.toLowerCase())>=DJi.indexOf(t.toLowerCase())?e:t}});var LJi=z(r8=>{"use strict";Object.defineProperty(r8,"__esModule",{value:!0});r8.getReadmeContent=r8.getPublishAccess=r8.getGitHead=r8.makePublishBody=void 0;var vxc=(Oa(),Ai(Pa)),Sxc=Bn(),GJi=Bn(),kJi=No(),wxc=kpe(),Txc=xt("crypto"),Nxc=vxc.__importDefault(xJi()),Rxc=aUe();async function Dxc(e,t,{access:r,tag:s,registry:a,gitHead:o}){let g=e.manifest.name,p=e.manifest.version,f=GJi.structUtils.stringifyIdent(g),m=(0,Txc.createHash)("sha1").update(t).digest("hex"),y=Nxc.default.fromData(t).toString(),B=r??FJi(e,g),v=await ZJi(e),k=await wxc.packUtils.genPackageManifest(e),T=`${f}-${p}.tgz`,O=new URL(`${(0,Rxc.normalizeRegistry)(a)}/${f}/-/${T}`);return{_id:f,_attachments:{[T]:{content_type:"application/octet-stream",data:t.toString("base64"),length:t.length}},name:f,access:B,"dist-tags":{[s]:p},versions:{[p]:{...k,_id:`${f}@${p}`,name:f,version:p,gitHead:o,dist:{shasum:m,integrity:y,tarball:O.toString()}}},readme:v}}r8.makePublishBody=Dxc;async function xxc(e){try{let{stdout:t}=await Sxc.execUtils.execvp("git",["rev-parse","--revs-only","HEAD"],{cwd:e});return t.trim()===""?void 0:t.trim()}catch{return}}r8.getGitHead=xxc;function FJi(e,t){let r=e.project.configuration;return e.manifest.publishConfig&&typeof e.manifest.publishConfig.access=="string"?e.manifest.publishConfig.access:r.get("npmPublishAccess")!==null?r.get("npmPublishAccess"):t.scope?"restricted":"public"}r8.getPublishAccess=FJi;async function ZJi(e){let t=kJi.npath.toPortablePath(`${e.cwd}/README.md`),r=e.manifest.name,a=`# ${GJi.structUtils.stringifyIdent(r)} +`;try{a=await kJi.xfs.readFilePromise(t,"utf8")}catch(o){if(o.code==="ENOENT")return a;throw o}return a}r8.getReadmeContent=ZJi});var lX=z(zT=>{"use strict";Object.defineProperty(zT,"__esModule",{value:!0});zT.NpmTagResolver=zT.NpmSemverResolver=zT.NpmSemverFetcher=zT.NpmRemapResolver=zT.NpmHttpFetcher=zT.npmPublishUtils=zT.npmHttpUtils=zT.npmConfigUtils=void 0;var eDr=(Oa(),Ai(Pa)),n8=Bn(),WJi=fJi();Object.defineProperty(zT,"NpmHttpFetcher",{enumerable:!0,get:function(){return WJi.NpmHttpFetcher}});var PJi=IJi();Object.defineProperty(zT,"NpmRemapResolver",{enumerable:!0,get:function(){return PJi.NpmRemapResolver}});var OJi=bTt();Object.defineProperty(zT,"NpmSemverFetcher",{enumerable:!0,get:function(){return OJi.NpmSemverFetcher}});var QJi=bJi();Object.defineProperty(zT,"NpmSemverResolver",{enumerable:!0,get:function(){return QJi.NpmSemverResolver}});var MJi=BJi();Object.defineProperty(zT,"NpmTagResolver",{enumerable:!0,get:function(){return MJi.NpmTagResolver}});var HJi=eDr.__importStar(aUe());zT.npmConfigUtils=HJi;var kxc=eDr.__importStar(uRe());zT.npmHttpUtils=kxc;var Gxc=eDr.__importStar(LJi());zT.npmPublishUtils=Gxc;var $Rr={npmAlwaysAuth:{description:"URL of the selected npm registry (note: npm enterprise isn't supported)",type:n8.SettingsType.BOOLEAN,default:!1},npmAuthIdent:{description:"Authentication identity for the npm registry (_auth in npm and yarn v1)",type:n8.SettingsType.SECRET,default:null},npmAuthToken:{description:"Authentication token for the npm registry (_authToken in npm and yarn v1)",type:n8.SettingsType.SECRET,default:null}},VJi={npmAuditRegistry:{description:"Registry to query for audit reports",type:n8.SettingsType.STRING,default:null},npmPublishRegistry:{description:"Registry to push packages to",type:n8.SettingsType.STRING,default:null},npmRegistryServer:{description:"URL of the selected npm registry (note: npm enterprise isn't supported)",type:n8.SettingsType.STRING,default:"https://registry.yarnpkg.com"}},Fxc={configuration:{...$Rr,...VJi,npmScopes:{description:"Settings per package scope",type:n8.SettingsType.MAP,valueDefinition:{description:"",type:n8.SettingsType.SHAPE,properties:{...$Rr,...VJi}}},npmRegistries:{description:"Settings per registry",type:n8.SettingsType.MAP,normalizeKeys:HJi.normalizeRegistry,valueDefinition:{description:"",type:n8.SettingsType.SHAPE,properties:{...$Rr}}}},fetchers:[WJi.NpmHttpFetcher,OJi.NpmSemverFetcher],resolvers:[PJi.NpmRemapResolver,QJi.NpmSemverResolver,MJi.NpmTagResolver]};zT.default=Fxc});var STt=z(pRe=>{"use strict";Object.defineProperty(pRe,"__esModule",{value:!0});pRe.Severity=pRe.Environment=void 0;var YJi;(function(e){e.All="all",e.Production="production",e.Development="development"})(YJi||(pRe.Environment=YJi={}));var XJi;(function(e){e.Info="info",e.Low="low",e.Moderate="moderate",e.High="high",e.Critical="critical"})(XJi||(pRe.Severity=XJi={}))});var tDr=z(uX=>{"use strict";Object.defineProperty(uX,"__esModule",{value:!0});uX.allSeverities=void 0;uX.getSeverityInclusions=Lxc;uX.getReportTree=Vxc;uX.getTopLevelDependencies=Wxc;uX.getPackages=Pxc;var JJi=(Oa(),Ai(Pa)),p1=Bn(),Zxc=JJi.__importDefault(Vh()),c$=JJi.__importStar(STt());uX.allSeverities=[c$.Severity.Info,c$.Severity.Low,c$.Severity.Moderate,c$.Severity.High,c$.Severity.Critical];function Lxc(e){if(typeof e>"u")return new Set(uX.allSeverities);let t=uX.allSeverities.indexOf(e),r=uX.allSeverities.slice(t);return new Set(r)}function Vxc(e){let t={},r={children:t};for(let[s,a]of p1.miscUtils.sortMap(Object.entries(e),o=>o[0]))for(let o of p1.miscUtils.sortMap(a,g=>`${g.id}`))t[`${s}/${o.id}`]={value:p1.formatUtils.tuple(p1.formatUtils.Type.IDENT,p1.structUtils.parseIdent(s)),children:{ID:typeof o.id<"u"&&{label:"ID",value:p1.formatUtils.tuple(p1.formatUtils.Type.ID,o.id)},Issue:{label:"Issue",value:p1.formatUtils.tuple(p1.formatUtils.Type.NO_HINT,o.title)},URL:typeof o.url<"u"&&{label:"URL",value:p1.formatUtils.tuple(p1.formatUtils.Type.URL,o.url)},Severity:{label:"Severity",value:p1.formatUtils.tuple(p1.formatUtils.Type.NO_HINT,o.severity)},"Vulnerable Versions":{label:"Vulnerable Versions",value:p1.formatUtils.tuple(p1.formatUtils.Type.RANGE,o.vulnerable_versions)},"Tree Versions":{label:"Tree Versions",children:[...o.versions].sort(Zxc.default.compare).map(g=>({value:p1.formatUtils.tuple(p1.formatUtils.Type.REFERENCE,g)}))},Dependents:{label:"Dependents",children:p1.miscUtils.sortMap(o.dependents,g=>p1.structUtils.stringifyLocator(g)).map(g=>({value:p1.formatUtils.tuple(p1.formatUtils.Type.LOCATOR,g)}))}}};return r}function Wxc(e,t,{all:r,environment:s}){let a=[],o=r?e.workspaces:[t],g=[c$.Environment.All,c$.Environment.Production].includes(s),p=[c$.Environment.All,c$.Environment.Development].includes(s);for(let f of o)for(let m of f.anchoredPackage.dependencies.values())(f.manifest.devDependencies.has(m.identHash)?!p:!g)||a.push({workspace:f,dependency:m});return a}function Pxc(e,t,{recursive:r}){let s=new Map,a=new Set,o=[],g=(p,f)=>{let m=e.storedResolutions.get(f.descriptorHash);if(typeof m>"u")throw new Error("Assertion failed: The resolution should have been registered");if(!a.has(m))a.add(m);else return;let y=e.storedPackages.get(m);if(typeof y>"u")throw new Error("Assertion failed: The package should have been registered");if(p1.structUtils.ensureDevirtualizedLocator(y).reference.startsWith("npm:")&&y.version!==null){let v=p1.structUtils.stringifyIdent(y),k=p1.miscUtils.getMapWithDefault(s,v);p1.miscUtils.getArrayWithDefault(k,y.version).push(p)}if(r)for(let v of y.dependencies.values())o.push([y,v])};for(let{workspace:p,dependency:f}of t)o.push([p.anchoredLocator,f]);for(;o.length>0;){let[p,f]=o.shift();g(p,f)}return s}});var zJi=z(rDr=>{"use strict";Object.defineProperty(rDr,"__esModule",{value:!0});var TTt=(Oa(),Ai(Pa)),UJi=il(),i8=Bn(),Oxc=Bn(),wTt=lX(),l$=(Zl(),Ai(pg)),KJi=TTt.__importDefault(gk()),jJi=TTt.__importStar((yL(),Ai(_L))),CUe=TTt.__importStar(STt()),mUe=TTt.__importStar(tDr()),hUe=class extends UJi.BaseCommand{constructor(){super(...arguments),this.all=l$.Option.Boolean("-A,--all",!1,{description:"Audit dependencies from all workspaces"}),this.recursive=l$.Option.Boolean("-R,--recursive",!1,{description:"Audit transitive dependencies as well"}),this.environment=l$.Option.String("--environment",CUe.Environment.All,{description:"Which environments to cover",validator:jJi.isEnum(CUe.Environment)}),this.json=l$.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.noDeprecations=l$.Option.Boolean("--no-deprecations",!1,{description:"Don't warn about deprecated packages"}),this.severity=l$.Option.String("--severity",CUe.Severity.Info,{description:"Minimal severity requested for packages to be displayed",validator:jJi.isEnum(CUe.Severity)}),this.excludes=l$.Option.Array("--exclude",[],{description:"Array of glob patterns of packages to exclude from audit"}),this.ignores=l$.Option.Array("--ignore",[],{description:"Array of glob patterns of advisory ID's to ignore in the audit report"})}async execute(){let t=await i8.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await i8.Project.find(t,this.context.cwd);if(!s)throw new UJi.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=mUe.getTopLevelDependencies(r,s,{all:this.all,environment:this.environment}),o=mUe.getPackages(r,a,{recursive:this.recursive}),g=Array.from(new Set([...t.get("npmAuditExcludePackages"),...this.excludes])),p=Object.create(null);for(let[O,X]of o)g.some(U=>KJi.default.isMatch(O,U))||(p[O]=[...X.keys()]);let f=wTt.npmConfigUtils.getAuditRegistry({configuration:t}),m,y=await i8.LightReport.start({configuration:t,stdout:this.context.stdout},async()=>{let O=wTt.npmHttpUtils.post("/-/npm/v1/security/advisories/bulk",p,{authType:wTt.npmHttpUtils.AuthType.BEST_EFFORT,configuration:t,jsonResponse:!0,registry:f}),X=this.noDeprecations?[]:await Promise.all(Array.from(Object.entries(p),async([le,ae])=>{let ge=await wTt.npmHttpUtils.getPackageMetadata(Oxc.structUtils.parseIdent(le),{project:r});return i8.miscUtils.mapAndFilter(ae,fe=>{let{deprecated:pe}=ge.versions[fe];return pe?[le,fe,pe]:i8.miscUtils.mapAndFilter.skip})})),U=await O;for(let[le,ae,ge]of X.flat(1))Object.hasOwn(U,le)&&U[le].some(fe=>i8.semverUtils.satisfiesWithPrereleases(ae,fe.vulnerable_versions))||(U[le]??=[],U[le].push({id:`${le} (deprecation)`,title:ge.trim()||"This package has been deprecated.",severity:CUe.Severity.Moderate,vulnerable_versions:ae}));m=U});if(y.hasErrors())return y.exitCode();let B=mUe.getSeverityInclusions(this.severity),v=Array.from(new Set([...t.get("npmAuditIgnoreAdvisories"),...this.ignores])),k=Object.create(null);for(let[O,X]of Object.entries(m)){let U=X.filter(le=>!KJi.default.isMatch(`${le.id}`,v)&&B.has(le.severity));U.length>0&&(k[O]=U.map(le=>{let ae=o.get(O);if(typeof ae>"u")throw new Error("Assertion failed: Expected the registry to only return packages that were requested");let ge=[...ae.keys()].filter(pe=>i8.semverUtils.satisfiesWithPrereleases(pe,le.vulnerable_versions)),fe=new Map;for(let pe of ge)for(let he of ae.get(pe))fe.set(he.locatorHash,he);return{...le,versions:ge,dependents:[...fe.values()]}}))}let T=Object.keys(k).length>0;return T?(i8.treeUtils.emitTree(mUe.getReportTree(k),{configuration:t,json:this.json,stdout:this.context.stdout,separators:2}),1):(await i8.StreamReport.start({configuration:t,includeFooter:!1,json:this.json,stdout:this.context.stdout},async O=>{O.reportInfo(i8.MessageName.EXCEPTION,"No audit suggestions")}),T?1:0)}};hUe.paths=[["npm","audit"]];hUe.usage=l$.Command.Usage({description:"perform a vulnerability audit against the installed packages",details:` This command checks for known security reports on the packages you use. The reports are by default extracted from the npm registry, and may or may not be relevant to your actual program (not all vulnerabilities affect all code paths). For consistency with our other commands the default is to only check the direct dependencies for the active workspace. To extend this search to all workspaces, use \`-A,--all\`. To extend this search to both direct and transitive dependencies, use \`-R,--recursive\`. - Applying the \`--severity\` flag will limit the audit table to vulnerabilities of the corresponding severity and above. Valid values are ${IUe.allSeverities.map(e=>`\`${e}\``).join(", ")}. + Applying the \`--severity\` flag will limit the audit table to vulnerabilities of the corresponding severity and above. Valid values are ${mUe.allSeverities.map(e=>`\`${e}\``).join(", ")}. If the \`--json\` flag is set, Yarn will print the output exactly as received from the registry. Regardless of this flag, the process will exit with a non-zero exit code if a report is found for the selected packages. @@ -1630,34 +1630,34 @@ ${y?`$env:NODE_PATH=$env_node_path If particular advisories are needed to be ignored, the \`--ignore\` flag can be used with Advisory ID's to ignore any number of advisories in the audit report. This can also be set in the configuration file with the \`npmAuditIgnoreAdvisories\` option. To understand the dependency tree requiring vulnerable packages, check the raw report with the \`--json\` flag or use \`yarn why package\` to get more information as to who depends on them. - `,examples:[["Checks for known security issues with the installed packages. The output is a list of known issues.","yarn npm audit"],["Audit dependencies in all workspaces","yarn npm audit --all"],["Limit auditing to `dependencies` (excludes `devDependencies`)","yarn npm audit --environment production"],["Show audit report as valid JSON","yarn npm audit --json"],["Audit all direct and transitive dependencies","yarn npm audit --recursive"],["Output moderate (or more severe) vulnerabilities","yarn npm audit --severity moderate"],["Exclude certain packages","yarn npm audit --exclude package1 --exclude package2"],["Ignore specific advisories","yarn npm audit --ignore 1234567 --ignore 7654321"]]});jRr.default=CUe});var JJi=z(eDr=>{"use strict";Object.defineProperty(eDr,"__esModule",{value:!0});var Sxc=(Ma(),Ai(Oa)),wxc=nl(),cX=Bn(),mUe=Bn(),zRr=Ro(),qRr=oX(),hUe=(Fl(),Ai(dg)),HJi=Sxc.__importDefault(Lh()),XJi=Dt("util"),_Ue=class extends wxc.BaseCommand{constructor(){super(...arguments),this.fields=hUe.Option.String("-f,--fields",{description:"A comma-separated list of manifest fields that should be displayed"}),this.json=hUe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.packages=hUe.Option.Rest()}async execute(){let t=await cX.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await cX.Project.find(t,this.context.cwd),s=typeof this.fields<"u"?new Set(["name",...this.fields.split(/\s*,\s*/)]):null,a=[],o=!1,g=await mUe.StreamReport.start({configuration:t,includeFooter:!1,json:this.json,stdout:this.context.stdout},async p=>{for(let f of this.packages){let m;if(f==="."){let ae=r.topLevelWorkspace;if(!ae.manifest.name)throw new hUe.UsageError(`Missing ${cX.formatUtils.pretty(t,"name",cX.formatUtils.Type.CODE)} field in ${zRr.npath.fromPortablePath(zRr.ppath.join(ae.cwd,zRr.Filename.manifest))}`);m=cX.structUtils.makeDescriptor(ae.manifest.name,"unknown")}else m=cX.structUtils.parseDescriptor(f);let y=qRr.npmHttpUtils.getIdentUrl(m),B=$Rr(await qRr.npmHttpUtils.get(y,{configuration:t,ident:m,jsonResponse:!0,customErrorMessage:qRr.npmHttpUtils.customPackageError})),v=Object.keys(B.versions).sort(HJi.default.compareLoose),T=B["dist-tags"].latest||v[v.length-1],O=mUe.semverUtils.validRange(m.range);if(O){let ae=HJi.default.maxSatisfying(v,O);ae!==null?T=ae:(p.reportWarning(mUe.MessageName.UNNAMED,`Unmet range ${cX.structUtils.prettyRange(t,m.range)}; falling back to the latest version`),o=!0)}else Object.hasOwn(B["dist-tags"],m.range)?T=B["dist-tags"][m.range]:m.range!=="unknown"&&(p.reportWarning(mUe.MessageName.UNNAMED,`Unknown tag ${cX.structUtils.prettyRange(t,m.range)}; falling back to the latest version`),o=!0);let X=B.versions[T],U={...B,...X,version:T,versions:v},le;if(s!==null){le={};for(let ae of s){let ge=U[ae];if(typeof ge<"u")le[ae]=ge;else{p.reportWarning(mUe.MessageName.EXCEPTION,`The ${cX.formatUtils.pretty(t,ae,cX.formatUtils.Type.CODE)} field doesn't exist inside ${cX.structUtils.prettyIdent(t,m)}'s information`),o=!0;continue}}}else this.json||(delete U.dist,delete U.readme,delete U.users),le=U;p.reportJson(le),this.json||a.push(le)}});XJi.inspect.styles.name="cyan";for(let p of a)(p!==a[0]||o)&&this.context.stdout.write(` -`),this.context.stdout.write(`${(0,XJi.inspect)(p,{depth:1/0,colors:!0,compact:!1})} -`);return g.exitCode()}};_Ue.paths=[["npm","info"]];_Ue.usage=hUe.Command.Usage({category:"Npm-related commands",description:"show information about a package",details:"\n This command fetches information about a package from the npm registry and prints it in a tree format.\n\n The package does not have to be installed locally, but needs to have been published (in particular, local changes will be ignored even for workspaces).\n\n Append `@` to the package argument to provide information specific to the latest version that satisfies the range or to the corresponding tagged version. If the range is invalid or if there is no version satisfying the range, the command will print a warning and fall back to the latest version.\n\n If the `-f,--fields` option is set, it's a comma-separated list of fields which will be used to only display part of the package information.\n\n By default, this command won't return the `dist`, `readme`, and `users` fields, since they are often very long. To explicitly request those fields, explicitly list them with the `--fields` flag or request the output in JSON mode.\n ",examples:[["Show all available information about react (except the `dist`, `readme`, and `users` fields)","yarn npm info react"],["Show all available information about react as valid JSON (including the `dist`, `readme`, and `users` fields)","yarn npm info react --json"],["Show all available information about react@16.12.0","yarn npm info react@16.12.0"],["Show all available information about react@next","yarn npm info react@next"],["Show the description of react","yarn npm info react --fields description"],["Show all available versions of react","yarn npm info react --fields versions"],["Show the readme of react","yarn npm info react --fields readme"],["Show a few fields of react","yarn npm info react --fields homepage,repository"]]});eDr.default=_Ue;function $Rr(e){if(Array.isArray(e)){let t=[];for(let r of e)r=$Rr(r),r&&t.push(r);return t}else if(typeof e=="object"&&e!==null){let t={};for(let r of Object.keys(e)){if(r.startsWith("_"))continue;let s=$Rr(e[r]);s&&(t[r]=s)}return t}else return e||null}});var tDr=z(wTt=>{"use strict";Object.defineProperty(wTt,"__esModule",{value:!0});wTt.getRegistry=KJi;var UJi=nl(),c$=Bn(),Txc=Bn(),$K=oX(),STt=(Fl(),Ai(dg)),Nxc=F4e(),yUe=class extends UJi.BaseCommand{constructor(){super(...arguments),this.scope=STt.Option.String("-s,--scope",{description:"Login to the registry configured for a given scope"}),this.publish=STt.Option.Boolean("--publish",!1,{description:"Login to the publish registry"}),this.alwaysAuth=STt.Option.Boolean("--always-auth",{description:"Set the npmAlwaysAuth configuration"})}async execute(){let t=await c$.Configuration.find(this.context.cwd,this.context.plugins),r=await KJi({configuration:t,cwd:this.context.cwd,publish:this.publish,scope:this.scope});return(await Txc.StreamReport.start({configuration:t,stdout:this.context.stdout,includeFooter:!1},async a=>{let o=await xxc({configuration:t,registry:r,report:a,stdin:this.context.stdin,stdout:this.context.stdout}),g=await Rxc(r,o,t);return await Dxc(r,g,{alwaysAuth:this.alwaysAuth,scope:this.scope}),a.reportInfo(c$.MessageName.UNNAMED,"Successfully logged in")})).exitCode()}};yUe.paths=[["npm","login"]];yUe.usage=STt.Command.Usage({category:"Npm-related commands",description:"store new login info to access the npm registry",details:"\n This command will ask you for your username, password, and 2FA One-Time-Password (when it applies). It will then modify your local configuration (in your home folder, never in the project itself) to reference the new tokens thus generated.\n\n Adding the `-s,--scope` flag will cause the authentication to be done against whatever registry is configured for the associated scope (see also `npmScopes`).\n\n Adding the `--publish` flag will cause the authentication to be done against the registry used when publishing the package (see also `publishConfig.registry` and `npmPublishRegistry`).\n ",examples:[["Login to the default registry","yarn npm login"],["Login to the registry linked to the @my-scope registry","yarn npm login --scope my-scope"],["Login to the publish registry for the current package","yarn npm login --publish"]]});wTt.default=yUe;async function KJi({scope:e,publish:t,configuration:r,cwd:s}){return e&&t?$K.npmConfigUtils.getScopeRegistry(e,{configuration:r,type:$K.npmConfigUtils.RegistryType.PUBLISH_REGISTRY}):e?$K.npmConfigUtils.getScopeRegistry(e,{configuration:r}):t?$K.npmConfigUtils.getPublishRegistry((await(0,UJi.openWorkspace)(r,s)).manifest,{configuration:r}):$K.npmConfigUtils.getDefaultRegistry({configuration:r})}async function Rxc(e,t,r){let s=`/-/user/org.couchdb.user:${encodeURIComponent(t.name)}`,a={_id:`org.couchdb.user:${t.name}`,name:t.name,password:t.password,type:"user",roles:[],date:new Date().toISOString()},o={attemptedAs:t.name,configuration:r,registry:e,jsonResponse:!0,authType:$K.npmHttpUtils.AuthType.NO_AUTH};try{return(await $K.npmHttpUtils.put(s,a,o)).token}catch(y){if(!(y.originalError?.name==="HTTPError"&&y.originalError?.response.statusCode===409))throw y}let g={...o,authType:$K.npmHttpUtils.AuthType.NO_AUTH,headers:{authorization:`Basic ${Buffer.from(`${t.name}:${t.password}`).toString("base64")}`}},p=await $K.npmHttpUtils.get(s,g);for(let[y,B]of Object.entries(p))(!a[y]||y==="roles")&&(a[y]=B);let f=`${s}/-rev/${a._rev}`;return(await $K.npmHttpUtils.put(f,a,g)).token}async function Dxc(e,t,{alwaysAuth:r,scope:s}){let a=g=>p=>{let f=c$.miscUtils.isIndexableObject(p)?p:{},m=f[g],y=c$.miscUtils.isIndexableObject(m)?m:{};return{...f,[g]:{...y,...r!==void 0?{npmAlwaysAuth:r}:{},npmAuthToken:t}}},o=s?{npmScopes:a(s)}:{npmRegistries:a(e)};return await c$.Configuration.updateHomeConfiguration(o)}async function xxc({configuration:e,registry:t,report:r,stdin:s,stdout:a}){r.reportInfo(c$.MessageName.UNNAMED,`Logging in to ${c$.formatUtils.pretty(e,t,c$.formatUtils.Type.URL)}`);let o=!1;if(t.match(/^https:\/\/npm\.pkg\.github\.com(\/|$)/)&&(r.reportInfo(c$.MessageName.UNNAMED,"You seem to be using the GitHub Package Registry. Tokens must be generated with the 'repo', 'write:packages', and 'read:packages' permissions."),o=!0),r.reportSeparator(),e.env.YARN_IS_TEST_ENV)return{name:e.env.YARN_INJECT_NPM_USER||"",password:e.env.YARN_INJECT_NPM_PASSWORD||""};let g=await(0,Nxc.prompt)([{type:"input",name:"name",message:"Username:",required:!0,onCancel:()=>process.exit(130),stdin:s,stdout:a},{type:"password",name:"password",message:o?"Token:":"Password:",required:!0,onCancel:()=>process.exit(130),stdin:s,stdout:a}]);return r.reportSeparator(),g}});var qJi=z(rDr=>{"use strict";Object.defineProperty(rDr,"__esModule",{value:!0});var kxc=nl(),L9=Bn(),Gxc=Bn(),Fxc=oX(),TTt=(Fl(),Ai(dg)),jJi=tDr(),dRe=new Set(["npmAuthIdent","npmAuthToken"]),bUe=class extends kxc.BaseCommand{constructor(){super(...arguments),this.scope=TTt.Option.String("-s,--scope",{description:"Logout of the registry configured for a given scope"}),this.publish=TTt.Option.Boolean("--publish",!1,{description:"Logout of the publish registry"}),this.all=TTt.Option.Boolean("-A,--all",!1,{description:"Logout of all registries"})}async execute(){let t=await L9.Configuration.find(this.context.cwd,this.context.plugins),r=async()=>{let a=await(0,jJi.getRegistry)({configuration:t,cwd:this.context.cwd,publish:this.publish,scope:this.scope}),o=await L9.Configuration.find(this.context.cwd,this.context.plugins),g=L9.structUtils.makeIdent(this.scope??null,"pkg");return!Fxc.npmConfigUtils.getAuthConfiguration(a,{configuration:o,ident:g}).get("npmAuthToken")};return(await Gxc.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{if(this.all&&(await Lxc(),a.reportInfo(L9.MessageName.UNNAMED,"Successfully logged out from everything")),this.scope){await zJi("npmScopes",this.scope),await r()?a.reportInfo(L9.MessageName.UNNAMED,`Successfully logged out from ${this.scope}`):a.reportWarning(L9.MessageName.UNNAMED,"Scope authentication settings removed, but some other ones settings still apply to it");return}let o=await(0,jJi.getRegistry)({configuration:t,cwd:this.context.cwd,publish:this.publish});await zJi("npmRegistries",o),await r()?a.reportInfo(L9.MessageName.UNNAMED,`Successfully logged out from ${o}`):a.reportWarning(L9.MessageName.UNNAMED,"Registry authentication settings removed, but some other ones settings still apply to it")})).exitCode()}};bUe.paths=[["npm","logout"]];bUe.usage=TTt.Command.Usage({category:"Npm-related commands",description:"logout of the npm registry",details:"\n This command will log you out by modifying your local configuration (in your home folder, never in the project itself) to delete all credentials linked to a registry.\n\n Adding the `-s,--scope` flag will cause the deletion to be done against whatever registry is configured for the associated scope (see also `npmScopes`).\n\n Adding the `--publish` flag will cause the deletion to be done against the registry used when publishing the package (see also `publishConfig.registry` and `npmPublishRegistry`).\n\n Adding the `-A,--all` flag will cause the deletion to be done against all registries and scopes.\n ",examples:[["Logout of the default registry","yarn npm logout"],["Logout of the @my-scope scope","yarn npm logout --scope my-scope"],["Logout of the publish registry for the current package","yarn npm logout --publish"],["Logout of all registries","yarn npm logout --all"]]});rDr.default=bUe;function Zxc(e,t){let r=e[t];if(!L9.miscUtils.isIndexableObject(r))return!1;let s=new Set(Object.keys(r));if([...dRe].every(o=>!s.has(o)))return!1;for(let o of dRe)s.delete(o);if(s.size===0)return e[t]=void 0,!0;let a={...r};for(let o of dRe)delete a[o];return e[t]=a,!0}async function Lxc(){let e=t=>{let r=!1,s=L9.miscUtils.isIndexableObject(t)?{...t}:{};s.npmAuthToken&&(delete s.npmAuthToken,r=!0);for(let a of Object.keys(s))Zxc(s,a)&&(r=!0);if(Object.keys(s).length!==0)return r?s:t};return await L9.Configuration.updateHomeConfiguration({npmRegistries:e,npmScopes:e})}async function zJi(e,t){return await L9.Configuration.updateHomeConfiguration({[e]:r=>{let s=L9.miscUtils.isIndexableObject(r)?r:{};if(!Object.hasOwn(s,t))return r;let a=s[t],o=L9.miscUtils.isIndexableObject(a)?a:{},g=new Set(Object.keys(o));if([...dRe].every(f=>!g.has(f)))return r;for(let f of dRe)g.delete(f);if(g.size===0)return Object.keys(s).length===1?void 0:{...s,[t]:void 0};let p={};for(let f of dRe)p[f]=void 0;return{...s,[t]:{...o,...p}}}})}});var eUi=z(iDr=>{"use strict";Object.defineProperty(iDr,"__esModule",{value:!0});var $Ji=nl(),l$=Bn(),ZCe=oX(),nDr=vpe(),LCe=(Fl(),Ai(dg)),EUe=class extends $Ji.BaseCommand{constructor(){super(...arguments),this.access=LCe.Option.String("--access",{description:"The access for the published package (public or restricted)"}),this.tag=LCe.Option.String("--tag","latest",{description:"The tag on the registry that the package should be attached to"}),this.tolerateRepublish=LCe.Option.Boolean("--tolerate-republish",!1,{description:"Warn and exit when republishing an already existing version of a package"}),this.otp=LCe.Option.String("--otp",{description:"The OTP token to use with the command"})}async execute(){let t=await l$.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await l$.Project.find(t,this.context.cwd);if(!s)throw new $Ji.WorkspaceRequiredError(r.cwd,this.context.cwd);if(s.manifest.private)throw new LCe.UsageError("Private workspaces cannot be published");if(s.manifest.name===null||s.manifest.version===null)throw new LCe.UsageError("Workspaces must have valid names and versions to be published on an external registry");await r.restoreInstallState();let a=s.manifest.name,o=s.manifest.version,g=ZCe.npmConfigUtils.getPublishRegistry(s.manifest,{configuration:t});return(await l$.StreamReport.start({configuration:t,stdout:this.context.stdout},async f=>{if(this.tolerateRepublish)try{let m=await ZCe.npmHttpUtils.get(ZCe.npmHttpUtils.getIdentUrl(a),{configuration:t,registry:g,ident:a,jsonResponse:!0});if(!Object.hasOwn(m,"versions"))throw new l$.ReportError(l$.MessageName.REMOTE_INVALID,'Registry returned invalid data for - missing "versions" field');if(Object.hasOwn(m.versions,o)){f.reportWarning(l$.MessageName.UNNAMED,`Registry already knows about version ${o}; skipping.`);return}}catch(m){if(m.originalError?.response?.statusCode!==404)throw m}await l$.scriptUtils.maybeExecuteWorkspaceLifecycleScript(s,"prepublish",{report:f}),await nDr.packUtils.prepareForPack(s,{report:f},async()=>{let m=await nDr.packUtils.genPackList(s);for(let T of m)f.reportInfo(null,T);let y=await nDr.packUtils.genPackStream(s,m),B=await l$.miscUtils.bufferStream(y),v=await ZCe.npmPublishUtils.getGitHead(s.cwd),G=await ZCe.npmPublishUtils.makePublishBody(s,B,{access:this.access,tag:this.tag,registry:g,gitHead:v});await ZCe.npmHttpUtils.put(ZCe.npmHttpUtils.getIdentUrl(a),G,{configuration:t,registry:g,ident:a,otp:this.otp,jsonResponse:!0})}),f.reportInfo(l$.MessageName.UNNAMED,"Package archive published")})).exitCode()}};EUe.paths=[["npm","publish"]];EUe.usage=LCe.Command.Usage({category:"Npm-related commands",description:"publish the active workspace to the npm registry",details:'\n This command will pack the active workspace into a fresh archive and upload it to the npm registry.\n\n The package will by default be attached to the `latest` tag on the registry, but this behavior can be overridden by using the `--tag` option.\n\n Note that for legacy reasons scoped packages are by default published with an access set to `restricted` (aka "private packages"). This requires you to register for a paid npm plan. In case you simply wish to publish a public scoped package to the registry (for free), just add the `--access public` flag. This behavior can be enabled by default through the `npmPublishAccess` settings.\n ',examples:[["Publish the active workspace","yarn npm publish"]]});iDr.default=EUe});var DTt=z(RTt=>{"use strict";Object.defineProperty(RTt,"__esModule",{value:!0});RTt.getDistTags=rUi;var tUi=nl(),u$=Bn(),sDr=Ro(),oDr=oX(),NTt=(Fl(),Ai(dg)),BUe=class extends tUi.BaseCommand{constructor(){super(...arguments),this.json=NTt.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.package=NTt.Option.String({required:!1})}async execute(){let t=await u$.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await u$.Project.find(t,this.context.cwd),a;if(typeof this.package<"u")a=u$.structUtils.parseIdent(this.package);else{if(!s)throw new tUi.WorkspaceRequiredError(r.cwd,this.context.cwd);if(!s.manifest.name)throw new NTt.UsageError(`Missing 'name' field in ${sDr.npath.fromPortablePath(sDr.ppath.join(s.cwd,sDr.Filename.manifest))}`);a=s.manifest.name}let o=await rUi(a,t),p={children:u$.miscUtils.sortMap(Object.entries(o),([f])=>f).map(([f,m])=>({value:u$.formatUtils.tuple(u$.formatUtils.Type.RESOLUTION,{descriptor:u$.structUtils.makeDescriptor(a,f),locator:u$.structUtils.makeLocator(a,m)})}))};return u$.treeUtils.emitTree(p,{configuration:t,json:this.json,stdout:this.context.stdout})}};BUe.paths=[["npm","tag","list"]];BUe.usage=NTt.Command.Usage({category:"Npm-related commands",description:"list all dist-tags of a package",details:` + `,examples:[["Checks for known security issues with the installed packages. The output is a list of known issues.","yarn npm audit"],["Audit dependencies in all workspaces","yarn npm audit --all"],["Limit auditing to `dependencies` (excludes `devDependencies`)","yarn npm audit --environment production"],["Show audit report as valid JSON","yarn npm audit --json"],["Audit all direct and transitive dependencies","yarn npm audit --recursive"],["Output moderate (or more severe) vulnerabilities","yarn npm audit --severity moderate"],["Exclude certain packages","yarn npm audit --exclude package1 --exclude package2"],["Ignore specific advisories","yarn npm audit --ignore 1234567 --ignore 7654321"]]});rDr.default=hUe});var eUi=z(oDr=>{"use strict";Object.defineProperty(oDr,"__esModule",{value:!0});var Qxc=(Oa(),Ai(Pa)),Mxc=il(),gX=Bn(),_Ue=Bn(),nDr=No(),iDr=lX(),yUe=(Zl(),Ai(pg)),qJi=Qxc.__importDefault(Vh()),$Ji=xt("util"),bUe=class extends Mxc.BaseCommand{constructor(){super(...arguments),this.fields=yUe.Option.String("-f,--fields",{description:"A comma-separated list of manifest fields that should be displayed"}),this.json=yUe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.packages=yUe.Option.Rest()}async execute(){let t=await gX.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await gX.Project.find(t,this.context.cwd),s=typeof this.fields<"u"?new Set(["name",...this.fields.split(/\s*,\s*/)]):null,a=[],o=!1,g=await _Ue.StreamReport.start({configuration:t,includeFooter:!1,json:this.json,stdout:this.context.stdout},async p=>{for(let f of this.packages){let m;if(f==="."){let ae=r.topLevelWorkspace;if(!ae.manifest.name)throw new yUe.UsageError(`Missing ${gX.formatUtils.pretty(t,"name",gX.formatUtils.Type.CODE)} field in ${nDr.npath.fromPortablePath(nDr.ppath.join(ae.cwd,nDr.Filename.manifest))}`);m=gX.structUtils.makeDescriptor(ae.manifest.name,"unknown")}else m=gX.structUtils.parseDescriptor(f);let y=iDr.npmHttpUtils.getIdentUrl(m),B=sDr(await iDr.npmHttpUtils.get(y,{configuration:t,ident:m,jsonResponse:!0,customErrorMessage:iDr.npmHttpUtils.customPackageError})),v=Object.keys(B.versions).sort(qJi.default.compareLoose),T=B["dist-tags"].latest||v[v.length-1],O=_Ue.semverUtils.validRange(m.range);if(O){let ae=qJi.default.maxSatisfying(v,O);ae!==null?T=ae:(p.reportWarning(_Ue.MessageName.UNNAMED,`Unmet range ${gX.structUtils.prettyRange(t,m.range)}; falling back to the latest version`),o=!0)}else Object.hasOwn(B["dist-tags"],m.range)?T=B["dist-tags"][m.range]:m.range!=="unknown"&&(p.reportWarning(_Ue.MessageName.UNNAMED,`Unknown tag ${gX.structUtils.prettyRange(t,m.range)}; falling back to the latest version`),o=!0);let X=B.versions[T],U={...B,...X,version:T,versions:v},le;if(s!==null){le={};for(let ae of s){let ge=U[ae];if(typeof ge<"u")le[ae]=ge;else{p.reportWarning(_Ue.MessageName.EXCEPTION,`The ${gX.formatUtils.pretty(t,ae,gX.formatUtils.Type.CODE)} field doesn't exist inside ${gX.structUtils.prettyIdent(t,m)}'s information`),o=!0;continue}}}else this.json||(delete U.dist,delete U.readme,delete U.users),le=U;p.reportJson(le),this.json||a.push(le)}});$Ji.inspect.styles.name="cyan";for(let p of a)(p!==a[0]||o)&&this.context.stdout.write(` +`),this.context.stdout.write(`${(0,$Ji.inspect)(p,{depth:1/0,colors:!0,compact:!1})} +`);return g.exitCode()}};bUe.paths=[["npm","info"]];bUe.usage=yUe.Command.Usage({category:"Npm-related commands",description:"show information about a package",details:"\n This command fetches information about a package from the npm registry and prints it in a tree format.\n\n The package does not have to be installed locally, but needs to have been published (in particular, local changes will be ignored even for workspaces).\n\n Append `@` to the package argument to provide information specific to the latest version that satisfies the range or to the corresponding tagged version. If the range is invalid or if there is no version satisfying the range, the command will print a warning and fall back to the latest version.\n\n If the `-f,--fields` option is set, it's a comma-separated list of fields which will be used to only display part of the package information.\n\n By default, this command won't return the `dist`, `readme`, and `users` fields, since they are often very long. To explicitly request those fields, explicitly list them with the `--fields` flag or request the output in JSON mode.\n ",examples:[["Show all available information about react (except the `dist`, `readme`, and `users` fields)","yarn npm info react"],["Show all available information about react as valid JSON (including the `dist`, `readme`, and `users` fields)","yarn npm info react --json"],["Show all available information about react@16.12.0","yarn npm info react@16.12.0"],["Show all available information about react@next","yarn npm info react@next"],["Show the description of react","yarn npm info react --fields description"],["Show all available versions of react","yarn npm info react --fields versions"],["Show the readme of react","yarn npm info react --fields readme"],["Show a few fields of react","yarn npm info react --fields homepage,repository"]]});oDr.default=bUe;function sDr(e){if(Array.isArray(e)){let t=[];for(let r of e)r=sDr(r),r&&t.push(r);return t}else if(typeof e=="object"&&e!==null){let t={};for(let r of Object.keys(e)){if(r.startsWith("_"))continue;let s=sDr(e[r]);s&&(t[r]=s)}return t}else return e||null}});var aDr=z(RTt=>{"use strict";Object.defineProperty(RTt,"__esModule",{value:!0});RTt.getRegistry=rUi;var tUi=il(),u$=Bn(),Hxc=Bn(),s8=lX(),NTt=(Zl(),Ai(pg)),Yxc=L4e(),EUe=class extends tUi.BaseCommand{constructor(){super(...arguments),this.scope=NTt.Option.String("-s,--scope",{description:"Login to the registry configured for a given scope"}),this.publish=NTt.Option.Boolean("--publish",!1,{description:"Login to the publish registry"}),this.alwaysAuth=NTt.Option.Boolean("--always-auth",{description:"Set the npmAlwaysAuth configuration"})}async execute(){let t=await u$.Configuration.find(this.context.cwd,this.context.plugins),r=await rUi({configuration:t,cwd:this.context.cwd,publish:this.publish,scope:this.scope});return(await Hxc.StreamReport.start({configuration:t,stdout:this.context.stdout,includeFooter:!1},async a=>{let o=await Uxc({configuration:t,registry:r,report:a,stdin:this.context.stdin,stdout:this.context.stdout}),g=await Xxc(r,o,t);return await Jxc(r,g,{alwaysAuth:this.alwaysAuth,scope:this.scope}),a.reportInfo(u$.MessageName.UNNAMED,"Successfully logged in")})).exitCode()}};EUe.paths=[["npm","login"]];EUe.usage=NTt.Command.Usage({category:"Npm-related commands",description:"store new login info to access the npm registry",details:"\n This command will ask you for your username, password, and 2FA One-Time-Password (when it applies). It will then modify your local configuration (in your home folder, never in the project itself) to reference the new tokens thus generated.\n\n Adding the `-s,--scope` flag will cause the authentication to be done against whatever registry is configured for the associated scope (see also `npmScopes`).\n\n Adding the `--publish` flag will cause the authentication to be done against the registry used when publishing the package (see also `publishConfig.registry` and `npmPublishRegistry`).\n ",examples:[["Login to the default registry","yarn npm login"],["Login to the registry linked to the @my-scope registry","yarn npm login --scope my-scope"],["Login to the publish registry for the current package","yarn npm login --publish"]]});RTt.default=EUe;async function rUi({scope:e,publish:t,configuration:r,cwd:s}){return e&&t?s8.npmConfigUtils.getScopeRegistry(e,{configuration:r,type:s8.npmConfigUtils.RegistryType.PUBLISH_REGISTRY}):e?s8.npmConfigUtils.getScopeRegistry(e,{configuration:r}):t?s8.npmConfigUtils.getPublishRegistry((await(0,tUi.openWorkspace)(r,s)).manifest,{configuration:r}):s8.npmConfigUtils.getDefaultRegistry({configuration:r})}async function Xxc(e,t,r){let s=`/-/user/org.couchdb.user:${encodeURIComponent(t.name)}`,a={_id:`org.couchdb.user:${t.name}`,name:t.name,password:t.password,type:"user",roles:[],date:new Date().toISOString()},o={attemptedAs:t.name,configuration:r,registry:e,jsonResponse:!0,authType:s8.npmHttpUtils.AuthType.NO_AUTH};try{return(await s8.npmHttpUtils.put(s,a,o)).token}catch(y){if(!(y.originalError?.name==="HTTPError"&&y.originalError?.response.statusCode===409))throw y}let g={...o,authType:s8.npmHttpUtils.AuthType.NO_AUTH,headers:{authorization:`Basic ${Buffer.from(`${t.name}:${t.password}`).toString("base64")}`}},p=await s8.npmHttpUtils.get(s,g);for(let[y,B]of Object.entries(p))(!a[y]||y==="roles")&&(a[y]=B);let f=`${s}/-rev/${a._rev}`;return(await s8.npmHttpUtils.put(f,a,g)).token}async function Jxc(e,t,{alwaysAuth:r,scope:s}){let a=g=>p=>{let f=u$.miscUtils.isIndexableObject(p)?p:{},m=f[g],y=u$.miscUtils.isIndexableObject(m)?m:{};return{...f,[g]:{...y,...r!==void 0?{npmAlwaysAuth:r}:{},npmAuthToken:t}}},o=s?{npmScopes:a(s)}:{npmRegistries:a(e)};return await u$.Configuration.updateHomeConfiguration(o)}async function Uxc({configuration:e,registry:t,report:r,stdin:s,stdout:a}){r.reportInfo(u$.MessageName.UNNAMED,`Logging in to ${u$.formatUtils.pretty(e,t,u$.formatUtils.Type.URL)}`);let o=!1;if(t.match(/^https:\/\/npm\.pkg\.github\.com(\/|$)/)&&(r.reportInfo(u$.MessageName.UNNAMED,"You seem to be using the GitHub Package Registry. Tokens must be generated with the 'repo', 'write:packages', and 'read:packages' permissions."),o=!0),r.reportSeparator(),e.env.YARN_IS_TEST_ENV)return{name:e.env.YARN_INJECT_NPM_USER||"",password:e.env.YARN_INJECT_NPM_PASSWORD||""};let g=await(0,Yxc.prompt)([{type:"input",name:"name",message:"Username:",required:!0,onCancel:()=>process.exit(130),stdin:s,stdout:a},{type:"password",name:"password",message:o?"Token:":"Password:",required:!0,onCancel:()=>process.exit(130),stdin:s,stdout:a}]);return r.reportSeparator(),g}});var sUi=z(cDr=>{"use strict";Object.defineProperty(cDr,"__esModule",{value:!0});var Kxc=il(),V9=Bn(),jxc=Bn(),zxc=lX(),DTt=(Zl(),Ai(pg)),nUi=aDr(),fRe=new Set(["npmAuthIdent","npmAuthToken"]),BUe=class extends Kxc.BaseCommand{constructor(){super(...arguments),this.scope=DTt.Option.String("-s,--scope",{description:"Logout of the registry configured for a given scope"}),this.publish=DTt.Option.Boolean("--publish",!1,{description:"Logout of the publish registry"}),this.all=DTt.Option.Boolean("-A,--all",!1,{description:"Logout of all registries"})}async execute(){let t=await V9.Configuration.find(this.context.cwd,this.context.plugins),r=async()=>{let a=await(0,nUi.getRegistry)({configuration:t,cwd:this.context.cwd,publish:this.publish,scope:this.scope}),o=await V9.Configuration.find(this.context.cwd,this.context.plugins),g=V9.structUtils.makeIdent(this.scope??null,"pkg");return!zxc.npmConfigUtils.getAuthConfiguration(a,{configuration:o,ident:g}).get("npmAuthToken")};return(await jxc.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{if(this.all&&(await $xc(),a.reportInfo(V9.MessageName.UNNAMED,"Successfully logged out from everything")),this.scope){await iUi("npmScopes",this.scope),await r()?a.reportInfo(V9.MessageName.UNNAMED,`Successfully logged out from ${this.scope}`):a.reportWarning(V9.MessageName.UNNAMED,"Scope authentication settings removed, but some other ones settings still apply to it");return}let o=await(0,nUi.getRegistry)({configuration:t,cwd:this.context.cwd,publish:this.publish});await iUi("npmRegistries",o),await r()?a.reportInfo(V9.MessageName.UNNAMED,`Successfully logged out from ${o}`):a.reportWarning(V9.MessageName.UNNAMED,"Registry authentication settings removed, but some other ones settings still apply to it")})).exitCode()}};BUe.paths=[["npm","logout"]];BUe.usage=DTt.Command.Usage({category:"Npm-related commands",description:"logout of the npm registry",details:"\n This command will log you out by modifying your local configuration (in your home folder, never in the project itself) to delete all credentials linked to a registry.\n\n Adding the `-s,--scope` flag will cause the deletion to be done against whatever registry is configured for the associated scope (see also `npmScopes`).\n\n Adding the `--publish` flag will cause the deletion to be done against the registry used when publishing the package (see also `publishConfig.registry` and `npmPublishRegistry`).\n\n Adding the `-A,--all` flag will cause the deletion to be done against all registries and scopes.\n ",examples:[["Logout of the default registry","yarn npm logout"],["Logout of the @my-scope scope","yarn npm logout --scope my-scope"],["Logout of the publish registry for the current package","yarn npm logout --publish"],["Logout of all registries","yarn npm logout --all"]]});cDr.default=BUe;function qxc(e,t){let r=e[t];if(!V9.miscUtils.isIndexableObject(r))return!1;let s=new Set(Object.keys(r));if([...fRe].every(o=>!s.has(o)))return!1;for(let o of fRe)s.delete(o);if(s.size===0)return e[t]=void 0,!0;let a={...r};for(let o of fRe)delete a[o];return e[t]=a,!0}async function $xc(){let e=t=>{let r=!1,s=V9.miscUtils.isIndexableObject(t)?{...t}:{};s.npmAuthToken&&(delete s.npmAuthToken,r=!0);for(let a of Object.keys(s))qxc(s,a)&&(r=!0);if(Object.keys(s).length!==0)return r?s:t};return await V9.Configuration.updateHomeConfiguration({npmRegistries:e,npmScopes:e})}async function iUi(e,t){return await V9.Configuration.updateHomeConfiguration({[e]:r=>{let s=V9.miscUtils.isIndexableObject(r)?r:{};if(!Object.hasOwn(s,t))return r;let a=s[t],o=V9.miscUtils.isIndexableObject(a)?a:{},g=new Set(Object.keys(o));if([...fRe].every(f=>!g.has(f)))return r;for(let f of fRe)g.delete(f);if(g.size===0)return Object.keys(s).length===1?void 0:{...s,[t]:void 0};let p={};for(let f of fRe)p[f]=void 0;return{...s,[t]:{...o,...p}}}})}});var aUi=z(uDr=>{"use strict";Object.defineProperty(uDr,"__esModule",{value:!0});var oUi=il(),g$=Bn(),VCe=lX(),lDr=kpe(),WCe=(Zl(),Ai(pg)),vUe=class extends oUi.BaseCommand{constructor(){super(...arguments),this.access=WCe.Option.String("--access",{description:"The access for the published package (public or restricted)"}),this.tag=WCe.Option.String("--tag","latest",{description:"The tag on the registry that the package should be attached to"}),this.tolerateRepublish=WCe.Option.Boolean("--tolerate-republish",!1,{description:"Warn and exit when republishing an already existing version of a package"}),this.otp=WCe.Option.String("--otp",{description:"The OTP token to use with the command"})}async execute(){let t=await g$.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await g$.Project.find(t,this.context.cwd);if(!s)throw new oUi.WorkspaceRequiredError(r.cwd,this.context.cwd);if(s.manifest.private)throw new WCe.UsageError("Private workspaces cannot be published");if(s.manifest.name===null||s.manifest.version===null)throw new WCe.UsageError("Workspaces must have valid names and versions to be published on an external registry");await r.restoreInstallState();let a=s.manifest.name,o=s.manifest.version,g=VCe.npmConfigUtils.getPublishRegistry(s.manifest,{configuration:t});return(await g$.StreamReport.start({configuration:t,stdout:this.context.stdout},async f=>{if(this.tolerateRepublish)try{let m=await VCe.npmHttpUtils.get(VCe.npmHttpUtils.getIdentUrl(a),{configuration:t,registry:g,ident:a,jsonResponse:!0});if(!Object.hasOwn(m,"versions"))throw new g$.ReportError(g$.MessageName.REMOTE_INVALID,'Registry returned invalid data for - missing "versions" field');if(Object.hasOwn(m.versions,o)){f.reportWarning(g$.MessageName.UNNAMED,`Registry already knows about version ${o}; skipping.`);return}}catch(m){if(m.originalError?.response?.statusCode!==404)throw m}await g$.scriptUtils.maybeExecuteWorkspaceLifecycleScript(s,"prepublish",{report:f}),await lDr.packUtils.prepareForPack(s,{report:f},async()=>{let m=await lDr.packUtils.genPackList(s);for(let T of m)f.reportInfo(null,T);let y=await lDr.packUtils.genPackStream(s,m),B=await g$.miscUtils.bufferStream(y),v=await VCe.npmPublishUtils.getGitHead(s.cwd),k=await VCe.npmPublishUtils.makePublishBody(s,B,{access:this.access,tag:this.tag,registry:g,gitHead:v});await VCe.npmHttpUtils.put(VCe.npmHttpUtils.getIdentUrl(a),k,{configuration:t,registry:g,ident:a,otp:this.otp,jsonResponse:!0})}),f.reportInfo(g$.MessageName.UNNAMED,"Package archive published")})).exitCode()}};vUe.paths=[["npm","publish"]];vUe.usage=WCe.Command.Usage({category:"Npm-related commands",description:"publish the active workspace to the npm registry",details:'\n This command will pack the active workspace into a fresh archive and upload it to the npm registry.\n\n The package will by default be attached to the `latest` tag on the registry, but this behavior can be overridden by using the `--tag` option.\n\n Note that for legacy reasons scoped packages are by default published with an access set to `restricted` (aka "private packages"). This requires you to register for a paid npm plan. In case you simply wish to publish a public scoped package to the registry (for free), just add the `--access public` flag. This behavior can be enabled by default through the `npmPublishAccess` settings.\n ',examples:[["Publish the active workspace","yarn npm publish"]]});uDr.default=vUe});var GTt=z(kTt=>{"use strict";Object.defineProperty(kTt,"__esModule",{value:!0});kTt.getDistTags=lUi;var cUi=il(),A$=Bn(),gDr=No(),ADr=lX(),xTt=(Zl(),Ai(pg)),SUe=class extends cUi.BaseCommand{constructor(){super(...arguments),this.json=xTt.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.package=xTt.Option.String({required:!1})}async execute(){let t=await A$.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await A$.Project.find(t,this.context.cwd),a;if(typeof this.package<"u")a=A$.structUtils.parseIdent(this.package);else{if(!s)throw new cUi.WorkspaceRequiredError(r.cwd,this.context.cwd);if(!s.manifest.name)throw new xTt.UsageError(`Missing 'name' field in ${gDr.npath.fromPortablePath(gDr.ppath.join(s.cwd,gDr.Filename.manifest))}`);a=s.manifest.name}let o=await lUi(a,t),p={children:A$.miscUtils.sortMap(Object.entries(o),([f])=>f).map(([f,m])=>({value:A$.formatUtils.tuple(A$.formatUtils.Type.RESOLUTION,{descriptor:A$.structUtils.makeDescriptor(a,f),locator:A$.structUtils.makeLocator(a,m)})}))};return A$.treeUtils.emitTree(p,{configuration:t,json:this.json,stdout:this.context.stdout})}};SUe.paths=[["npm","tag","list"]];SUe.usage=xTt.Command.Usage({category:"Npm-related commands",description:"list all dist-tags of a package",details:` This command will list all tags of a package from the npm registry. If the package is not specified, Yarn will default to the current workspace. - `,examples:[["List all tags of package `my-pkg`","yarn npm tag list my-pkg"]]});RTt.default=BUe;async function rUi(e,t){let r=`/-/package${oDr.npmHttpUtils.getIdentUrl(e)}/dist-tags`;return oDr.npmHttpUtils.get(r,{configuration:t,ident:e,jsonResponse:!0,customErrorMessage:oDr.npmHttpUtils.customPackageError})}});var iUi=z(cDr=>{"use strict";Object.defineProperty(cDr,"__esModule",{value:!0});var Vxc=(Ma(),Ai(Oa)),nUi=nl(),V9=Bn(),aDr=oX(),xTt=(Fl(),Ai(dg)),Wxc=Vxc.__importDefault(Lh()),Pxc=DTt(),vUe=class extends nUi.BaseCommand{constructor(){super(...arguments),this.package=xTt.Option.String(),this.tag=xTt.Option.String()}async execute(){let t=await V9.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await V9.Project.find(t,this.context.cwd);if(!s)throw new nUi.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=V9.structUtils.parseDescriptor(this.package,!0),o=a.range;if(!Wxc.default.valid(o))throw new xTt.UsageError(`The range ${V9.formatUtils.pretty(t,a.range,V9.formatUtils.Type.RANGE)} must be a valid semver version`);let g=aDr.npmConfigUtils.getPublishRegistry(s.manifest,{configuration:t}),p=V9.formatUtils.pretty(t,a,V9.formatUtils.Type.IDENT),f=V9.formatUtils.pretty(t,o,V9.formatUtils.Type.RANGE),m=V9.formatUtils.pretty(t,this.tag,V9.formatUtils.Type.CODE);return(await V9.StreamReport.start({configuration:t,stdout:this.context.stdout},async B=>{let v=await(0,Pxc.getDistTags)(a,t);Object.hasOwn(v,this.tag)&&v[this.tag]===o&&B.reportWarning(V9.MessageName.UNNAMED,`Tag ${m} is already set to version ${f}`);let G=`/-/package${aDr.npmHttpUtils.getIdentUrl(a)}/dist-tags/${encodeURIComponent(this.tag)}`;await aDr.npmHttpUtils.put(G,o,{configuration:t,registry:g,ident:a,jsonRequest:!0,jsonResponse:!0}),B.reportInfo(V9.MessageName.UNNAMED,`Tag ${m} added to version ${f} of package ${p}`)})).exitCode()}};vUe.paths=[["npm","tag","add"]];vUe.usage=xTt.Command.Usage({category:"Npm-related commands",description:"add a tag for a specific version of a package",details:` + `,examples:[["List all tags of package `my-pkg`","yarn npm tag list my-pkg"]]});kTt.default=SUe;async function lUi(e,t){let r=`/-/package${ADr.npmHttpUtils.getIdentUrl(e)}/dist-tags`;return ADr.npmHttpUtils.get(r,{configuration:t,ident:e,jsonResponse:!0,customErrorMessage:ADr.npmHttpUtils.customPackageError})}});var gUi=z(pDr=>{"use strict";Object.defineProperty(pDr,"__esModule",{value:!0});var ekc=(Oa(),Ai(Pa)),uUi=il(),W9=Bn(),dDr=lX(),FTt=(Zl(),Ai(pg)),tkc=ekc.__importDefault(Vh()),rkc=GTt(),wUe=class extends uUi.BaseCommand{constructor(){super(...arguments),this.package=FTt.Option.String(),this.tag=FTt.Option.String()}async execute(){let t=await W9.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await W9.Project.find(t,this.context.cwd);if(!s)throw new uUi.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=W9.structUtils.parseDescriptor(this.package,!0),o=a.range;if(!tkc.default.valid(o))throw new FTt.UsageError(`The range ${W9.formatUtils.pretty(t,a.range,W9.formatUtils.Type.RANGE)} must be a valid semver version`);let g=dDr.npmConfigUtils.getPublishRegistry(s.manifest,{configuration:t}),p=W9.formatUtils.pretty(t,a,W9.formatUtils.Type.IDENT),f=W9.formatUtils.pretty(t,o,W9.formatUtils.Type.RANGE),m=W9.formatUtils.pretty(t,this.tag,W9.formatUtils.Type.CODE);return(await W9.StreamReport.start({configuration:t,stdout:this.context.stdout},async B=>{let v=await(0,rkc.getDistTags)(a,t);Object.hasOwn(v,this.tag)&&v[this.tag]===o&&B.reportWarning(W9.MessageName.UNNAMED,`Tag ${m} is already set to version ${f}`);let k=`/-/package${dDr.npmHttpUtils.getIdentUrl(a)}/dist-tags/${encodeURIComponent(this.tag)}`;await dDr.npmHttpUtils.put(k,o,{configuration:t,registry:g,ident:a,jsonRequest:!0,jsonResponse:!0}),B.reportInfo(W9.MessageName.UNNAMED,`Tag ${m} added to version ${f} of package ${p}`)})).exitCode()}};wUe.paths=[["npm","tag","add"]];wUe.usage=FTt.Command.Usage({category:"Npm-related commands",description:"add a tag for a specific version of a package",details:` This command will add a tag to the npm registry for a specific version of a package. If the tag already exists, it will be overwritten. - `,examples:[["Add a `beta` tag for version `2.3.4-beta.4` of package `my-pkg`","yarn npm tag add my-pkg@2.3.4-beta.4 beta"]]});cDr.default=vUe});var oUi=z(uDr=>{"use strict";Object.defineProperty(uDr,"__esModule",{value:!0});var sUi=nl(),g$=Bn(),lDr=oX(),SUe=(Fl(),Ai(dg)),Oxc=DTt(),wUe=class extends sUi.BaseCommand{constructor(){super(...arguments),this.package=SUe.Option.String(),this.tag=SUe.Option.String()}async execute(){if(this.tag==="latest")throw new SUe.UsageError("The 'latest' tag cannot be removed.");let t=await g$.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await g$.Project.find(t,this.context.cwd);if(!s)throw new sUi.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=g$.structUtils.parseIdent(this.package),o=lDr.npmConfigUtils.getPublishRegistry(s.manifest,{configuration:t}),g=g$.formatUtils.pretty(t,this.tag,g$.formatUtils.Type.CODE),p=g$.formatUtils.pretty(t,a,g$.formatUtils.Type.IDENT),f=await(0,Oxc.getDistTags)(a,t);if(!Object.hasOwn(f,this.tag))throw new SUe.UsageError(`${g} is not a tag of package ${p}`);return(await g$.StreamReport.start({configuration:t,stdout:this.context.stdout},async y=>{let B=`/-/package${lDr.npmHttpUtils.getIdentUrl(a)}/dist-tags/${encodeURIComponent(this.tag)}`;await lDr.npmHttpUtils.del(B,{configuration:t,registry:o,ident:a,jsonResponse:!0}),y.reportInfo(g$.MessageName.UNNAMED,`Tag ${g} removed from package ${p}`)})).exitCode()}};wUe.paths=[["npm","tag","remove"]];wUe.usage=SUe.Command.Usage({category:"Npm-related commands",description:"remove a tag from a package",details:` + `,examples:[["Add a `beta` tag for version `2.3.4-beta.4` of package `my-pkg`","yarn npm tag add my-pkg@2.3.4-beta.4 beta"]]});pDr.default=wUe});var dUi=z(IDr=>{"use strict";Object.defineProperty(IDr,"__esModule",{value:!0});var AUi=il(),d$=Bn(),fDr=lX(),TUe=(Zl(),Ai(pg)),nkc=GTt(),NUe=class extends AUi.BaseCommand{constructor(){super(...arguments),this.package=TUe.Option.String(),this.tag=TUe.Option.String()}async execute(){if(this.tag==="latest")throw new TUe.UsageError("The 'latest' tag cannot be removed.");let t=await d$.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await d$.Project.find(t,this.context.cwd);if(!s)throw new AUi.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=d$.structUtils.parseIdent(this.package),o=fDr.npmConfigUtils.getPublishRegistry(s.manifest,{configuration:t}),g=d$.formatUtils.pretty(t,this.tag,d$.formatUtils.Type.CODE),p=d$.formatUtils.pretty(t,a,d$.formatUtils.Type.IDENT),f=await(0,nkc.getDistTags)(a,t);if(!Object.hasOwn(f,this.tag))throw new TUe.UsageError(`${g} is not a tag of package ${p}`);return(await d$.StreamReport.start({configuration:t,stdout:this.context.stdout},async y=>{let B=`/-/package${fDr.npmHttpUtils.getIdentUrl(a)}/dist-tags/${encodeURIComponent(this.tag)}`;await fDr.npmHttpUtils.del(B,{configuration:t,registry:o,ident:a,jsonResponse:!0}),y.reportInfo(d$.MessageName.UNNAMED,`Tag ${g} removed from package ${p}`)})).exitCode()}};NUe.paths=[["npm","tag","remove"]];NUe.usage=TUe.Command.Usage({category:"Npm-related commands",description:"remove a tag from a package",details:` This command will remove a tag from a package from the npm registry. - `,examples:[["Remove the `beta` tag from package `my-pkg`","yarn npm tag remove my-pkg beta"]]});uDr.default=wUe});var lUi=z(dDr=>{"use strict";Object.defineProperty(dDr,"__esModule",{value:!0});var aUi=nl(),gDr=Bn(),cUi=Bn(),VCe=oX(),ADr=(Fl(),Ai(dg)),TUe=class extends aUi.BaseCommand{constructor(){super(...arguments),this.scope=ADr.Option.String("-s,--scope",{description:"Print username for the registry configured for a given scope"}),this.publish=ADr.Option.Boolean("--publish",!1,{description:"Print username for the publish registry"})}async execute(){let t=await gDr.Configuration.find(this.context.cwd,this.context.plugins),r;return this.scope&&this.publish?r=VCe.npmConfigUtils.getScopeRegistry(this.scope,{configuration:t,type:VCe.npmConfigUtils.RegistryType.PUBLISH_REGISTRY}):this.scope?r=VCe.npmConfigUtils.getScopeRegistry(this.scope,{configuration:t}):this.publish?r=VCe.npmConfigUtils.getPublishRegistry((await(0,aUi.openWorkspace)(t,this.context.cwd)).manifest,{configuration:t}):r=VCe.npmConfigUtils.getDefaultRegistry({configuration:t}),(await cUi.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{let o;try{o=await VCe.npmHttpUtils.get("/-/whoami",{configuration:t,registry:r,authType:VCe.npmHttpUtils.AuthType.ALWAYS_AUTH,jsonResponse:!0,ident:this.scope?cUi.structUtils.makeIdent(this.scope,""):void 0})}catch(g){if(g.response?.statusCode===401||g.response?.statusCode===403){a.reportError(gDr.MessageName.AUTHENTICATION_INVALID,"Authentication failed - your credentials may have expired");return}else throw g}a.reportInfo(gDr.MessageName.UNNAMED,o.username)})).exitCode()}};TUe.paths=[["npm","whoami"]];TUe.usage=ADr.Command.Usage({category:"Npm-related commands",description:"display the name of the authenticated user",details:"\n Print the username associated with the current authentication settings to the standard output.\n\n When using `-s,--scope`, the username printed will be the one that matches the authentication settings of the registry associated with the given scope (those settings can be overriden using the `npmRegistries` map, and the registry associated with the scope is configured via the `npmScopes` map).\n\n When using `--publish`, the registry we'll select will by default be the one used when publishing packages (`publishConfig.registry` or `npmPublishRegistry` if available, otherwise we'll fallback to the regular `npmRegistryServer`).\n ",examples:[["Print username for the default registry","yarn npm whoami"],["Print username for the registry on a given scope","yarn npm whoami --scope company"]]});dDr.default=TUe});var hUi=z(p1=>{"use strict";Object.defineProperty(p1,"__esModule",{value:!0});p1.NpmWhoamiCommand=p1.NpmTagRemoveCommand=p1.NpmTagListCommand=p1.NpmTagAddCommand=p1.NpmPublishCommand=p1.NpmLogoutCommand=p1.NpmLoginCommand=p1.NpmInfoCommand=p1.NpmAuditCommand=p1.npmAuditUtils=p1.npmAuditTypes=void 0;var lX=(Ma(),Ai(Oa)),pDr=Bn(),uUi=lX.__importDefault(YJi());p1.NpmAuditCommand=uUi.default;var gUi=lX.__importDefault(JJi());p1.NpmInfoCommand=gUi.default;var AUi=lX.__importDefault(tDr());p1.NpmLoginCommand=AUi.default;var dUi=lX.__importDefault(qJi());p1.NpmLogoutCommand=dUi.default;var pUi=lX.__importDefault(eUi());p1.NpmPublishCommand=pUi.default;var fUi=lX.__importDefault(iUi());p1.NpmTagAddCommand=fUi.default;var IUi=lX.__importDefault(DTt());p1.NpmTagListCommand=IUi.default;var CUi=lX.__importDefault(oUi());p1.NpmTagRemoveCommand=CUi.default;var mUi=lX.__importDefault(lUi());p1.NpmWhoamiCommand=mUi.default;var Mxc=lX.__importStar(ETt());p1.npmAuditTypes=Mxc;var Qxc=lX.__importStar(KRr());p1.npmAuditUtils=Qxc;var Yxc={configuration:{npmPublishAccess:{description:"Default access of the published packages",type:pDr.SettingsType.STRING,default:null},npmAuditExcludePackages:{description:"Array of glob patterns of packages to exclude from npm audit",type:pDr.SettingsType.STRING,default:[],isArray:!0},npmAuditIgnoreAdvisories:{description:"Array of glob patterns of advisory IDs to exclude from npm audit",type:pDr.SettingsType.STRING,default:[],isArray:!0}},commands:[uUi.default,gUi.default,AUi.default,dUi.default,pUi.default,fUi.default,IUi.default,CUi.default,mUi.default]};p1.default=Yxc});var _Ui=z(kTt=>{"use strict";Object.defineProperty(kTt,"__esModule",{value:!0});kTt.CACHE_VERSION=void 0;kTt.CACHE_VERSION=3});var FTt=z(Ww=>{"use strict";Object.defineProperty(Ww,"__esModule",{value:!0});Ww.verifyHunkIntegrity=Ww.parsePatchFile=Ww.interpretParsedPatchFile=Ww.PatchMutationType=Ww.EXECUTABLE_FILE_MODE=Ww.NON_EXECUTABLE_FILE_MODE=Ww.parseHunkHeaderLine=Ww.getPath=void 0;var fDr=Bn(),NUe=Ro(),Hxc=/^@@ -(\d+)(,(\d+))? \+(\d+)(,(\d+))? @@.*/;function WCe(e){return NUe.ppath.relative(NUe.PortablePath.root,NUe.ppath.resolve(NUe.PortablePath.root,NUe.npath.toPortablePath(e)))}Ww.getPath=WCe;function bUi(e){let t=e.trim().match(Hxc);if(!t)throw new Error(`Bad header line: '${e}'`);return{original:{start:Math.max(Number(t[1]),1),length:Number(t[3]||1)},patched:{start:Math.max(Number(t[4]),1),length:Number(t[6]||1)}}}Ww.parseHunkHeaderLine=bUi;Ww.NON_EXECUTABLE_FILE_MODE=420;Ww.EXECUTABLE_FILE_MODE=493;var sQ;(function(e){e.Context="context",e.Insertion="insertion",e.Deletion="deletion"})(sQ||(Ww.PatchMutationType=sQ={}));var yUi=()=>({semverExclusivity:null,diffLineFromPath:null,diffLineToPath:null,oldMode:null,newMode:null,deletedFileMode:null,newFileMode:null,renameFrom:null,renameTo:null,beforeHash:null,afterHash:null,fromPath:null,toPath:null,hunks:null}),Xxc=e=>({header:bUi(e),parts:[]}),Jxc={"@":"header","-":sQ.Deletion,"+":sQ.Insertion," ":sQ.Context,"\\":"pragma",undefined:sQ.Context};function Uxc(e){let t=[],r=yUi(),s="parsing header",a=null,o=null;function g(){a&&(o&&(a.parts.push(o),o=null),r.hunks.push(a),a=null)}function p(){g(),t.push(r),r=yUi()}for(let f=0;f0?"patch":"mode change",le=null;switch(U){case"rename":{if(!y||!B)throw new Error("Bad parser state: rename from & to not given");t.push({type:"rename",semverExclusivity:s,fromPath:WCe(y),toPath:WCe(B)}),le=B}break;case"file deletion":{let ae=a||T;if(!ae)throw new Error("Bad parse state: no path given for file deletion");t.push({type:"file deletion",semverExclusivity:s,hunk:X&&X[0]||null,path:WCe(ae),mode:GTt(f),hash:v})}break;case"file creation":{let ae=o||O;if(!ae)throw new Error("Bad parse state: no path given for file creation");t.push({type:"file creation",semverExclusivity:s,hunk:X&&X[0]||null,path:WCe(ae),mode:GTt(m),hash:G})}break;case"patch":case"mode change":le=O||o;break;default:fDr.miscUtils.assertNever(U);break}le&&g&&p&&g!==p&&t.push({type:"mode change",semverExclusivity:s,path:WCe(le),oldMode:GTt(g),newMode:GTt(p)}),le&&X&&X.length&&t.push({type:"patch",semverExclusivity:s,path:WCe(le),hunks:X,beforeHash:v,afterHash:G})}if(t.length===0)throw new Error("Unable to parse patch file: No changes found. Make sure the patch is a valid UTF8 encoded string");return t}Ww.interpretParsedPatchFile=EUi;function GTt(e){let t=parseInt(e,8)&511;if(t!==Ww.NON_EXECUTABLE_FILE_MODE&&t!==Ww.EXECUTABLE_FILE_MODE)throw new Error(`Unexpected file mode string: ${e}`);return t}function Kxc(e){let t=e.split(/\n/g);return t[t.length-1]===""&&t.pop(),EUi(Uxc(t))}Ww.parsePatchFile=Kxc;function BUi(e){let t=0,r=0;for(let{type:s,lines:a}of e.parts)switch(s){case sQ.Context:r+=a.length,t+=a.length;break;case sQ.Deletion:t+=a.length;break;case sQ.Insertion:r+=a.length;break;default:fDr.miscUtils.assertNever(s);break}if(t!==e.header.original.length||r!==e.header.patched.length){let s=a=>a<0?a:`+${a}`;throw new Error(`hunk header integrity check failed (expected @@ ${s(e.header.original.length)} ${s(e.header.patched.length)} @@, got @@ ${s(t)} ${s(r)} @@)`)}}Ww.verifyHunkIntegrity=BUi});var CDr=z(ZTt=>{"use strict";Object.defineProperty(ZTt,"__esModule",{value:!0});ZTt.UnmatchedHunkError=void 0;var IDr=class extends Error{constructor(t,r){super(`Cannot apply hunk #${t+1}`),this.hunk=r}};ZTt.UnmatchedHunkError=IDr});var NUi=z(fRe=>{"use strict";Object.defineProperty(fRe,"__esModule",{value:!0});fRe.applyPatch=fRe.applyPatchFile=void 0;var VTt=Bn(),A$=Ro(),jxc=CDr(),LTt=FTt();async function pRe(e,t,r){let s=await e.lstatPromise(t),a=await r();typeof a<"u"&&(t=a),await e.lutimesPromise(t,s.atime,s.mtime)}async function zxc(e,{baseFs:t=new A$.NodeFS,dryRun:r=!1,version:s=null}={}){for(let a of e)if(!(a.semverExclusivity!==null&&s!==null&&!VTt.semverUtils.satisfiesWithPrereleases(s,a.semverExclusivity)))switch(a.type){case"file deletion":if(r){if(!t.existsSync(a.path))throw new Error(`Trying to delete a file that doesn't exist: ${a.path}`)}else await pRe(t,A$.ppath.dirname(a.path),async()=>{await t.unlinkPromise(a.path)});break;case"rename":if(r){if(!t.existsSync(a.fromPath))throw new Error(`Trying to move a file that doesn't exist: ${a.fromPath}`)}else await pRe(t,A$.ppath.dirname(a.fromPath),async()=>{await pRe(t,A$.ppath.dirname(a.toPath),async()=>{await pRe(t,a.fromPath,async()=>(await t.movePromise(a.fromPath,a.toPath),a.toPath))})});break;case"file creation":if(r){if(t.existsSync(a.path))throw new Error(`Trying to create a file that already exists: ${a.path}`)}else{let o=a.hunk?a.hunk.parts[0].lines.join(` + `,examples:[["Remove the `beta` tag from package `my-pkg`","yarn npm tag remove my-pkg beta"]]});IDr.default=NUe});var IUi=z(hDr=>{"use strict";Object.defineProperty(hDr,"__esModule",{value:!0});var pUi=il(),CDr=Bn(),fUi=Bn(),PCe=lX(),mDr=(Zl(),Ai(pg)),RUe=class extends pUi.BaseCommand{constructor(){super(...arguments),this.scope=mDr.Option.String("-s,--scope",{description:"Print username for the registry configured for a given scope"}),this.publish=mDr.Option.Boolean("--publish",!1,{description:"Print username for the publish registry"})}async execute(){let t=await CDr.Configuration.find(this.context.cwd,this.context.plugins),r;return this.scope&&this.publish?r=PCe.npmConfigUtils.getScopeRegistry(this.scope,{configuration:t,type:PCe.npmConfigUtils.RegistryType.PUBLISH_REGISTRY}):this.scope?r=PCe.npmConfigUtils.getScopeRegistry(this.scope,{configuration:t}):this.publish?r=PCe.npmConfigUtils.getPublishRegistry((await(0,pUi.openWorkspace)(t,this.context.cwd)).manifest,{configuration:t}):r=PCe.npmConfigUtils.getDefaultRegistry({configuration:t}),(await fUi.StreamReport.start({configuration:t,stdout:this.context.stdout},async a=>{let o;try{o=await PCe.npmHttpUtils.get("/-/whoami",{configuration:t,registry:r,authType:PCe.npmHttpUtils.AuthType.ALWAYS_AUTH,jsonResponse:!0,ident:this.scope?fUi.structUtils.makeIdent(this.scope,""):void 0})}catch(g){if(g.response?.statusCode===401||g.response?.statusCode===403){a.reportError(CDr.MessageName.AUTHENTICATION_INVALID,"Authentication failed - your credentials may have expired");return}else throw g}a.reportInfo(CDr.MessageName.UNNAMED,o.username)})).exitCode()}};RUe.paths=[["npm","whoami"]];RUe.usage=mDr.Command.Usage({category:"Npm-related commands",description:"display the name of the authenticated user",details:"\n Print the username associated with the current authentication settings to the standard output.\n\n When using `-s,--scope`, the username printed will be the one that matches the authentication settings of the registry associated with the given scope (those settings can be overriden using the `npmRegistries` map, and the registry associated with the scope is configured via the `npmScopes` map).\n\n When using `--publish`, the registry we'll select will by default be the one used when publishing packages (`publishConfig.registry` or `npmPublishRegistry` if available, otherwise we'll fallback to the regular `npmRegistryServer`).\n ",examples:[["Print username for the default registry","yarn npm whoami"],["Print username for the registry on a given scope","yarn npm whoami --scope company"]]});hDr.default=RUe});var SUi=z(f1=>{"use strict";Object.defineProperty(f1,"__esModule",{value:!0});f1.NpmWhoamiCommand=f1.NpmTagRemoveCommand=f1.NpmTagListCommand=f1.NpmTagAddCommand=f1.NpmPublishCommand=f1.NpmLogoutCommand=f1.NpmLoginCommand=f1.NpmInfoCommand=f1.NpmAuditCommand=f1.npmAuditUtils=f1.npmAuditTypes=void 0;var AX=(Oa(),Ai(Pa)),_Dr=Bn(),CUi=AX.__importDefault(zJi());f1.NpmAuditCommand=CUi.default;var mUi=AX.__importDefault(eUi());f1.NpmInfoCommand=mUi.default;var hUi=AX.__importDefault(aDr());f1.NpmLoginCommand=hUi.default;var _Ui=AX.__importDefault(sUi());f1.NpmLogoutCommand=_Ui.default;var yUi=AX.__importDefault(aUi());f1.NpmPublishCommand=yUi.default;var bUi=AX.__importDefault(gUi());f1.NpmTagAddCommand=bUi.default;var EUi=AX.__importDefault(GTt());f1.NpmTagListCommand=EUi.default;var BUi=AX.__importDefault(dUi());f1.NpmTagRemoveCommand=BUi.default;var vUi=AX.__importDefault(IUi());f1.NpmWhoamiCommand=vUi.default;var ikc=AX.__importStar(STt());f1.npmAuditTypes=ikc;var skc=AX.__importStar(tDr());f1.npmAuditUtils=skc;var okc={configuration:{npmPublishAccess:{description:"Default access of the published packages",type:_Dr.SettingsType.STRING,default:null},npmAuditExcludePackages:{description:"Array of glob patterns of packages to exclude from npm audit",type:_Dr.SettingsType.STRING,default:[],isArray:!0},npmAuditIgnoreAdvisories:{description:"Array of glob patterns of advisory IDs to exclude from npm audit",type:_Dr.SettingsType.STRING,default:[],isArray:!0}},commands:[CUi.default,mUi.default,hUi.default,_Ui.default,yUi.default,bUi.default,EUi.default,BUi.default,vUi.default]};f1.default=okc});var wUi=z(ZTt=>{"use strict";Object.defineProperty(ZTt,"__esModule",{value:!0});ZTt.CACHE_VERSION=void 0;ZTt.CACHE_VERSION=3});var VTt=z(Pw=>{"use strict";Object.defineProperty(Pw,"__esModule",{value:!0});Pw.verifyHunkIntegrity=Pw.parsePatchFile=Pw.interpretParsedPatchFile=Pw.PatchMutationType=Pw.EXECUTABLE_FILE_MODE=Pw.NON_EXECUTABLE_FILE_MODE=Pw.parseHunkHeaderLine=Pw.getPath=void 0;var yDr=Bn(),DUe=No(),akc=/^@@ -(\d+)(,(\d+))? \+(\d+)(,(\d+))? @@.*/;function OCe(e){return DUe.ppath.relative(DUe.PortablePath.root,DUe.ppath.resolve(DUe.PortablePath.root,DUe.npath.toPortablePath(e)))}Pw.getPath=OCe;function NUi(e){let t=e.trim().match(akc);if(!t)throw new Error(`Bad header line: '${e}'`);return{original:{start:Math.max(Number(t[1]),1),length:Number(t[3]||1)},patched:{start:Math.max(Number(t[4]),1),length:Number(t[6]||1)}}}Pw.parseHunkHeaderLine=NUi;Pw.NON_EXECUTABLE_FILE_MODE=420;Pw.EXECUTABLE_FILE_MODE=493;var a5;(function(e){e.Context="context",e.Insertion="insertion",e.Deletion="deletion"})(a5||(Pw.PatchMutationType=a5={}));var TUi=()=>({semverExclusivity:null,diffLineFromPath:null,diffLineToPath:null,oldMode:null,newMode:null,deletedFileMode:null,newFileMode:null,renameFrom:null,renameTo:null,beforeHash:null,afterHash:null,fromPath:null,toPath:null,hunks:null}),ckc=e=>({header:NUi(e),parts:[]}),lkc={"@":"header","-":a5.Deletion,"+":a5.Insertion," ":a5.Context,"\\":"pragma",undefined:a5.Context};function ukc(e){let t=[],r=TUi(),s="parsing header",a=null,o=null;function g(){a&&(o&&(a.parts.push(o),o=null),r.hunks.push(a),a=null)}function p(){g(),t.push(r),r=TUi()}for(let f=0;f0?"patch":"mode change",le=null;switch(U){case"rename":{if(!y||!B)throw new Error("Bad parser state: rename from & to not given");t.push({type:"rename",semverExclusivity:s,fromPath:OCe(y),toPath:OCe(B)}),le=B}break;case"file deletion":{let ae=a||T;if(!ae)throw new Error("Bad parse state: no path given for file deletion");t.push({type:"file deletion",semverExclusivity:s,hunk:X&&X[0]||null,path:OCe(ae),mode:LTt(f),hash:v})}break;case"file creation":{let ae=o||O;if(!ae)throw new Error("Bad parse state: no path given for file creation");t.push({type:"file creation",semverExclusivity:s,hunk:X&&X[0]||null,path:OCe(ae),mode:LTt(m),hash:k})}break;case"patch":case"mode change":le=O||o;break;default:yDr.miscUtils.assertNever(U);break}le&&g&&p&&g!==p&&t.push({type:"mode change",semverExclusivity:s,path:OCe(le),oldMode:LTt(g),newMode:LTt(p)}),le&&X&&X.length&&t.push({type:"patch",semverExclusivity:s,path:OCe(le),hunks:X,beforeHash:v,afterHash:k})}if(t.length===0)throw new Error("Unable to parse patch file: No changes found. Make sure the patch is a valid UTF8 encoded string");return t}Pw.interpretParsedPatchFile=RUi;function LTt(e){let t=parseInt(e,8)&511;if(t!==Pw.NON_EXECUTABLE_FILE_MODE&&t!==Pw.EXECUTABLE_FILE_MODE)throw new Error(`Unexpected file mode string: ${e}`);return t}function gkc(e){let t=e.split(/\n/g);return t[t.length-1]===""&&t.pop(),RUi(ukc(t))}Pw.parsePatchFile=gkc;function DUi(e){let t=0,r=0;for(let{type:s,lines:a}of e.parts)switch(s){case a5.Context:r+=a.length,t+=a.length;break;case a5.Deletion:t+=a.length;break;case a5.Insertion:r+=a.length;break;default:yDr.miscUtils.assertNever(s);break}if(t!==e.header.original.length||r!==e.header.patched.length){let s=a=>a<0?a:`+${a}`;throw new Error(`hunk header integrity check failed (expected @@ ${s(e.header.original.length)} ${s(e.header.patched.length)} @@, got @@ ${s(t)} ${s(r)} @@)`)}}Pw.verifyHunkIntegrity=DUi});var EDr=z(WTt=>{"use strict";Object.defineProperty(WTt,"__esModule",{value:!0});WTt.UnmatchedHunkError=void 0;var bDr=class extends Error{constructor(t,r){super(`Cannot apply hunk #${t+1}`),this.hunk=r}};WTt.UnmatchedHunkError=bDr});var ZUi=z(CRe=>{"use strict";Object.defineProperty(CRe,"__esModule",{value:!0});CRe.applyPatch=CRe.applyPatchFile=void 0;var OTt=Bn(),p$=No(),Akc=EDr(),PTt=VTt();async function IRe(e,t,r){let s=await e.lstatPromise(t),a=await r();typeof a<"u"&&(t=a),await e.lutimesPromise(t,s.atime,s.mtime)}async function dkc(e,{baseFs:t=new p$.NodeFS,dryRun:r=!1,version:s=null}={}){for(let a of e)if(!(a.semverExclusivity!==null&&s!==null&&!OTt.semverUtils.satisfiesWithPrereleases(s,a.semverExclusivity)))switch(a.type){case"file deletion":if(r){if(!t.existsSync(a.path))throw new Error(`Trying to delete a file that doesn't exist: ${a.path}`)}else await IRe(t,p$.ppath.dirname(a.path),async()=>{await t.unlinkPromise(a.path)});break;case"rename":if(r){if(!t.existsSync(a.fromPath))throw new Error(`Trying to move a file that doesn't exist: ${a.fromPath}`)}else await IRe(t,p$.ppath.dirname(a.fromPath),async()=>{await IRe(t,p$.ppath.dirname(a.toPath),async()=>{await IRe(t,a.fromPath,async()=>(await t.movePromise(a.fromPath,a.toPath),a.toPath))})});break;case"file creation":if(r){if(t.existsSync(a.path))throw new Error(`Trying to create a file that already exists: ${a.path}`)}else{let o=a.hunk?a.hunk.parts[0].lines.join(` `)+(a.hunk.parts[0].noNewlineAtEndOfFile?"":` -`):"";await t.mkdirpPromise(A$.ppath.dirname(a.path),{chmod:493,utimes:[A$.constants.SAFE_TIME,A$.constants.SAFE_TIME]}),await t.writeFilePromise(a.path,o,{mode:a.mode}),await t.utimesPromise(a.path,A$.constants.SAFE_TIME,A$.constants.SAFE_TIME)}break;case"patch":await pRe(t,a.path,async()=>{await TUi(a,{baseFs:t,dryRun:r})});break;case"mode change":{let g=(await t.statPromise(a.path)).mode;if(vUi(a.newMode)!==vUi(g))continue;await pRe(t,a.path,async()=>{await t.chmodPromise(a.path,a.newMode)})}break;default:VTt.miscUtils.assertNever(a);break}}fRe.applyPatchFile=zxc;function vUi(e){return(e&64)>0}function SUi(e){return e.replace(/\s+$/,"")}function qxc(e,t){return SUi(e)===SUi(t)}async function TUi({hunks:e,path:t},{baseFs:r,dryRun:s=!1}){let a=await r.statSync(t).mode,g=(await r.readFileSync(t,"utf8")).split(/\n/),p=[],f=0,m=0;for(let B of e){let v=Math.max(m,B.header.patched.start+f),G=Math.max(0,v-m),T=Math.max(0,g.length-v-B.header.original.length),O=Math.max(G,T),X=0,U=0,le=null;for(;X<=O;){if(X<=G&&(U=v-X,le=wUi(B,g,U),le!==null)){X=-X;break}if(X<=T&&(U=v+X,le=wUi(B,g,U),le!==null))break;X+=1}if(le===null)throw new jxc.UnmatchedHunkError(e.indexOf(B),B);p.push(le),f+=X,m=U+B.header.original.length}if(s)return;let y=0;for(let B of p)for(let v of B)switch(v.type){case"splice":{let G=v.index+y;g.splice(G,v.numToDelete,...v.linesToInsert),y+=v.linesToInsert.length-v.numToDelete}break;case"pop":g.pop();break;case"push":g.push(v.line);break;default:VTt.miscUtils.assertNever(v);break}await r.writeFilePromise(t,g.join(` -`),{mode:a})}fRe.applyPatch=TUi;function wUi(e,t,r){let s=[];for(let a of e.parts)switch(a.type){case LTt.PatchMutationType.Context:case LTt.PatchMutationType.Deletion:{for(let o of a.lines){let g=t[r];if(g==null||!qxc(g,o))return null;r+=1}a.type===LTt.PatchMutationType.Deletion&&(s.push({type:"splice",index:r-a.lines.length,numToDelete:a.lines.length,linesToInsert:[]}),a.noNewlineAtEndOfFile&&s.push({type:"push",line:""}))}break;case LTt.PatchMutationType.Insertion:s.push({type:"splice",index:r,numToDelete:0,linesToInsert:a.lines}),a.noNewlineAtEndOfFile&&s.push({type:"pop"});break;default:VTt.miscUtils.assertNever(a.type);break}return s}});var CRe=z(om=>{"use strict";Object.defineProperty(om,"__esModule",{value:!0});om.makePatchHash=om.diffFolders=om.extractPackageToDisk=om.loadPatchFiles=om.isParentRequired=om.extractPatchFlags=om.makeLocator=om.makeDescriptor=om.ensureUnpatchedLocator=om.ensureUnpatchedDescriptor=om.unpatchLocator=om.unpatchDescriptor=om.parseLocator=om.parseDescriptor=om.isPatchLocator=om.isPatchDescriptor=om.parsePatchFile=om.applyPatchFile=void 0;var l2=Bn(),fS=Ro(),$xc=_Ui(),RUi=FTt();Object.defineProperty(om,"parsePatchFile",{enumerable:!0,get:function(){return RUi.parsePatchFile}});var ekc=NUi();Object.defineProperty(om,"applyPatchFile",{enumerable:!0,get:function(){return ekc.applyPatchFile}});var tkc=/^builtin<([^>]+)>$/;function IRe(e,t){let{protocol:r,source:s,selector:a,params:o}=l2.structUtils.parseRange(e);if(r!=="patch:")throw new Error("Invalid patch range");if(s===null)throw new Error("Patch locators must explicitly define their source");let g=a?a.split(/&/).map(y=>fS.npath.toPortablePath(y)):[],p=o&&typeof o.locator=="string"?l2.structUtils.parseLocator(o.locator):null,f=o&&typeof o.version=="string"?o.version:null,m=t(s);return{parentLocator:p,sourceItem:m,patchPaths:g,sourceVersion:f}}function DUi(e){return e.range.startsWith("patch:")}om.isPatchDescriptor=DUi;function xUi(e){return e.reference.startsWith("patch:")}om.isPatchLocator=xUi;function rkc(e){let{sourceItem:t,...r}=IRe(e.range,l2.structUtils.parseDescriptor);return{...r,sourceDescriptor:t}}om.parseDescriptor=rkc;function nkc(e){let{sourceItem:t,...r}=IRe(e.reference,l2.structUtils.parseLocator);return{...r,sourceLocator:t}}om.parseLocator=nkc;function ikc(e){let{sourceItem:t}=IRe(e.range,l2.structUtils.parseDescriptor);return t}om.unpatchDescriptor=ikc;function skc(e){let{sourceItem:t}=IRe(e.reference,l2.structUtils.parseLocator);return t}om.unpatchLocator=skc;function okc(e){if(!DUi(e))return e;let{sourceItem:t}=IRe(e.range,l2.structUtils.parseDescriptor);return t}om.ensureUnpatchedDescriptor=okc;function kUi(e){if(!xUi(e))return e;let{sourceItem:t}=IRe(e.reference,l2.structUtils.parseLocator);return t}om.ensureUnpatchedLocator=kUi;function GUi({parentLocator:e,sourceItem:t,patchPaths:r,sourceVersion:s,patchHash:a},o){let g=e!==null?{locator:l2.structUtils.stringifyLocator(e)}:{},p=typeof s<"u"?{version:s}:{},f=typeof a<"u"?{hash:a}:{};return l2.structUtils.makeRange({protocol:"patch:",source:o(t),selector:r.join("&"),params:{...p,...f,...g}})}function akc(e,{parentLocator:t,sourceDescriptor:r,patchPaths:s}){return l2.structUtils.makeDescriptor(e,GUi({parentLocator:t,sourceItem:r,patchPaths:s},l2.structUtils.stringifyDescriptor))}om.makeDescriptor=akc;function ckc(e,{parentLocator:t,sourcePackage:r,patchPaths:s,patchHash:a}){return l2.structUtils.makeLocator(e,GUi({parentLocator:t,sourceItem:r,sourceVersion:r.version,patchPaths:s,patchHash:a},l2.structUtils.stringifyLocator))}om.makeLocator=ckc;function FUi({onAbsolute:e,onRelative:t,onProject:r,onBuiltin:s},a){let o=a.lastIndexOf("!");o!==-1&&(a=a.slice(o+1));let g=a.match(tkc);return g!==null?s(g[1]):a.startsWith("~/")?r(a.slice(2)):fS.ppath.isAbsolute(a)?e(a):t(a)}function ZUi(e){let t=e.lastIndexOf("!");return{optional:(t!==-1?new Set(e.slice(0,t).split(/!/)):new Set).has("optional")}}om.extractPatchFlags=ZUi;function lkc(e){return FUi({onAbsolute:()=>!1,onRelative:()=>!0,onProject:()=>!1,onBuiltin:()=>!1},e)}om.isParentRequired=lkc;async function ukc(e,t,r){let s=e!==null?await r.fetcher.fetch(e,r):null,a=s&&s.localPath?{packageFs:new fS.CwdFS(fS.PortablePath.root),prefixPath:fS.ppath.relative(fS.PortablePath.root,s.localPath)}:s;s&&s!==a&&s.releaseFs&&s.releaseFs();let o=await l2.miscUtils.releaseAfterUseAsync(async()=>await Promise.all(t.map(async g=>{let p=ZUi(g),f=await FUi({onAbsolute:async m=>await fS.xfs.readFilePromise(m,"utf8"),onRelative:async m=>{if(a===null)throw new Error("Assertion failed: The parent locator should have been fetched");return await a.packageFs.readFilePromise(fS.ppath.join(a.prefixPath,m),"utf8")},onProject:async m=>await fS.xfs.readFilePromise(fS.ppath.join(r.project.cwd,m),"utf8"),onBuiltin:async m=>await r.project.configuration.firstHook(y=>y.getBuiltinPatch,r.project,m)},g);return{...p,source:f}})));for(let g of o)typeof g.source=="string"&&(g.source=g.source.replace(/\r\n?/g,` -`));return o}om.loadPatchFiles=ukc;async function gkc(e,{cache:t,project:r}){let s=r.storedPackages.get(e.locatorHash);if(typeof s>"u")throw new Error("Assertion failed: Expected the package to be registered");let a=kUi(e),o=r.storedChecksums,g=new l2.ThrowReport,p=await fS.xfs.mktempPromise(),f=fS.ppath.join(p,"source"),m=fS.ppath.join(p,"user"),y=fS.ppath.join(p,".yarn-patch.json"),B=r.configuration.makeFetcher(),v=[];try{let G,T;if(e.locatorHash===a.locatorHash){let O=await B.fetch(e,{cache:t,project:r,fetcher:B,checksums:o,report:g});v.push(()=>O.releaseFs?.()),G=O,T=O}else G=await B.fetch(e,{cache:t,project:r,fetcher:B,checksums:o,report:g}),v.push(()=>G.releaseFs?.()),T=await B.fetch(e,{cache:t,project:r,fetcher:B,checksums:o,report:g}),v.push(()=>T.releaseFs?.());await Promise.all([fS.xfs.copyPromise(f,G.prefixPath,{baseFs:G.packageFs}),fS.xfs.copyPromise(m,T.prefixPath,{baseFs:T.packageFs}),fS.xfs.writeJsonPromise(y,{locator:l2.structUtils.stringifyLocator(e),version:s.version})])}finally{for(let G of v)G()}return fS.xfs.detachTemp(p),m}om.extractPackageToDisk=gkc;async function Akc(e,t){let r=fS.npath.fromPortablePath(e).replace(/\\/g,"/"),s=fS.npath.fromPortablePath(t).replace(/\\/g,"/"),{stdout:a,stderr:o}=await l2.execUtils.execvp("git",["-c","core.safecrlf=false","diff","--src-prefix=a/","--dst-prefix=b/","--ignore-cr-at-eol","--full-index","--no-index","--no-renames","--text",r,s],{cwd:fS.npath.toPortablePath(process.cwd()),env:{...process.env,GIT_CONFIG_NOSYSTEM:"1",HOME:"",XDG_CONFIG_HOME:"",USERPROFILE:""}});if(o.length>0)throw new Error(`Unable to diff directories. Make sure you have a recent version of 'git' available in PATH. +`):"";await t.mkdirpPromise(p$.ppath.dirname(a.path),{chmod:493,utimes:[p$.constants.SAFE_TIME,p$.constants.SAFE_TIME]}),await t.writeFilePromise(a.path,o,{mode:a.mode}),await t.utimesPromise(a.path,p$.constants.SAFE_TIME,p$.constants.SAFE_TIME)}break;case"patch":await IRe(t,a.path,async()=>{await FUi(a,{baseFs:t,dryRun:r})});break;case"mode change":{let g=(await t.statPromise(a.path)).mode;if(xUi(a.newMode)!==xUi(g))continue;await IRe(t,a.path,async()=>{await t.chmodPromise(a.path,a.newMode)})}break;default:OTt.miscUtils.assertNever(a);break}}CRe.applyPatchFile=dkc;function xUi(e){return(e&64)>0}function kUi(e){return e.replace(/\s+$/,"")}function pkc(e,t){return kUi(e)===kUi(t)}async function FUi({hunks:e,path:t},{baseFs:r,dryRun:s=!1}){let a=await r.statSync(t).mode,g=(await r.readFileSync(t,"utf8")).split(/\n/),p=[],f=0,m=0;for(let B of e){let v=Math.max(m,B.header.patched.start+f),k=Math.max(0,v-m),T=Math.max(0,g.length-v-B.header.original.length),O=Math.max(k,T),X=0,U=0,le=null;for(;X<=O;){if(X<=k&&(U=v-X,le=GUi(B,g,U),le!==null)){X=-X;break}if(X<=T&&(U=v+X,le=GUi(B,g,U),le!==null))break;X+=1}if(le===null)throw new Akc.UnmatchedHunkError(e.indexOf(B),B);p.push(le),f+=X,m=U+B.header.original.length}if(s)return;let y=0;for(let B of p)for(let v of B)switch(v.type){case"splice":{let k=v.index+y;g.splice(k,v.numToDelete,...v.linesToInsert),y+=v.linesToInsert.length-v.numToDelete}break;case"pop":g.pop();break;case"push":g.push(v.line);break;default:OTt.miscUtils.assertNever(v);break}await r.writeFilePromise(t,g.join(` +`),{mode:a})}CRe.applyPatch=FUi;function GUi(e,t,r){let s=[];for(let a of e.parts)switch(a.type){case PTt.PatchMutationType.Context:case PTt.PatchMutationType.Deletion:{for(let o of a.lines){let g=t[r];if(g==null||!pkc(g,o))return null;r+=1}a.type===PTt.PatchMutationType.Deletion&&(s.push({type:"splice",index:r-a.lines.length,numToDelete:a.lines.length,linesToInsert:[]}),a.noNewlineAtEndOfFile&&s.push({type:"push",line:""}))}break;case PTt.PatchMutationType.Insertion:s.push({type:"splice",index:r,numToDelete:0,linesToInsert:a.lines}),a.noNewlineAtEndOfFile&&s.push({type:"pop"});break;default:OTt.miscUtils.assertNever(a.type);break}return s}});var hRe=z(am=>{"use strict";Object.defineProperty(am,"__esModule",{value:!0});am.makePatchHash=am.diffFolders=am.extractPackageToDisk=am.loadPatchFiles=am.isParentRequired=am.extractPatchFlags=am.makeLocator=am.makeDescriptor=am.ensureUnpatchedLocator=am.ensureUnpatchedDescriptor=am.unpatchLocator=am.unpatchDescriptor=am.parseLocator=am.parseDescriptor=am.isPatchLocator=am.isPatchDescriptor=am.parsePatchFile=am.applyPatchFile=void 0;var u2=Bn(),IS=No(),fkc=wUi(),LUi=VTt();Object.defineProperty(am,"parsePatchFile",{enumerable:!0,get:function(){return LUi.parsePatchFile}});var Ikc=ZUi();Object.defineProperty(am,"applyPatchFile",{enumerable:!0,get:function(){return Ikc.applyPatchFile}});var Ckc=/^builtin<([^>]+)>$/;function mRe(e,t){let{protocol:r,source:s,selector:a,params:o}=u2.structUtils.parseRange(e);if(r!=="patch:")throw new Error("Invalid patch range");if(s===null)throw new Error("Patch locators must explicitly define their source");let g=a?a.split(/&/).map(y=>IS.npath.toPortablePath(y)):[],p=o&&typeof o.locator=="string"?u2.structUtils.parseLocator(o.locator):null,f=o&&typeof o.version=="string"?o.version:null,m=t(s);return{parentLocator:p,sourceItem:m,patchPaths:g,sourceVersion:f}}function VUi(e){return e.range.startsWith("patch:")}am.isPatchDescriptor=VUi;function WUi(e){return e.reference.startsWith("patch:")}am.isPatchLocator=WUi;function mkc(e){let{sourceItem:t,...r}=mRe(e.range,u2.structUtils.parseDescriptor);return{...r,sourceDescriptor:t}}am.parseDescriptor=mkc;function hkc(e){let{sourceItem:t,...r}=mRe(e.reference,u2.structUtils.parseLocator);return{...r,sourceLocator:t}}am.parseLocator=hkc;function _kc(e){let{sourceItem:t}=mRe(e.range,u2.structUtils.parseDescriptor);return t}am.unpatchDescriptor=_kc;function ykc(e){let{sourceItem:t}=mRe(e.reference,u2.structUtils.parseLocator);return t}am.unpatchLocator=ykc;function bkc(e){if(!VUi(e))return e;let{sourceItem:t}=mRe(e.range,u2.structUtils.parseDescriptor);return t}am.ensureUnpatchedDescriptor=bkc;function PUi(e){if(!WUi(e))return e;let{sourceItem:t}=mRe(e.reference,u2.structUtils.parseLocator);return t}am.ensureUnpatchedLocator=PUi;function OUi({parentLocator:e,sourceItem:t,patchPaths:r,sourceVersion:s,patchHash:a},o){let g=e!==null?{locator:u2.structUtils.stringifyLocator(e)}:{},p=typeof s<"u"?{version:s}:{},f=typeof a<"u"?{hash:a}:{};return u2.structUtils.makeRange({protocol:"patch:",source:o(t),selector:r.join("&"),params:{...p,...f,...g}})}function Ekc(e,{parentLocator:t,sourceDescriptor:r,patchPaths:s}){return u2.structUtils.makeDescriptor(e,OUi({parentLocator:t,sourceItem:r,patchPaths:s},u2.structUtils.stringifyDescriptor))}am.makeDescriptor=Ekc;function Bkc(e,{parentLocator:t,sourcePackage:r,patchPaths:s,patchHash:a}){return u2.structUtils.makeLocator(e,OUi({parentLocator:t,sourceItem:r,sourceVersion:r.version,patchPaths:s,patchHash:a},u2.structUtils.stringifyLocator))}am.makeLocator=Bkc;function QUi({onAbsolute:e,onRelative:t,onProject:r,onBuiltin:s},a){let o=a.lastIndexOf("!");o!==-1&&(a=a.slice(o+1));let g=a.match(Ckc);return g!==null?s(g[1]):a.startsWith("~/")?r(a.slice(2)):IS.ppath.isAbsolute(a)?e(a):t(a)}function MUi(e){let t=e.lastIndexOf("!");return{optional:(t!==-1?new Set(e.slice(0,t).split(/!/)):new Set).has("optional")}}am.extractPatchFlags=MUi;function vkc(e){return QUi({onAbsolute:()=>!1,onRelative:()=>!0,onProject:()=>!1,onBuiltin:()=>!1},e)}am.isParentRequired=vkc;async function Skc(e,t,r){let s=e!==null?await r.fetcher.fetch(e,r):null,a=s&&s.localPath?{packageFs:new IS.CwdFS(IS.PortablePath.root),prefixPath:IS.ppath.relative(IS.PortablePath.root,s.localPath)}:s;s&&s!==a&&s.releaseFs&&s.releaseFs();let o=await u2.miscUtils.releaseAfterUseAsync(async()=>await Promise.all(t.map(async g=>{let p=MUi(g),f=await QUi({onAbsolute:async m=>await IS.xfs.readFilePromise(m,"utf8"),onRelative:async m=>{if(a===null)throw new Error("Assertion failed: The parent locator should have been fetched");return await a.packageFs.readFilePromise(IS.ppath.join(a.prefixPath,m),"utf8")},onProject:async m=>await IS.xfs.readFilePromise(IS.ppath.join(r.project.cwd,m),"utf8"),onBuiltin:async m=>await r.project.configuration.firstHook(y=>y.getBuiltinPatch,r.project,m)},g);return{...p,source:f}})));for(let g of o)typeof g.source=="string"&&(g.source=g.source.replace(/\r\n?/g,` +`));return o}am.loadPatchFiles=Skc;async function wkc(e,{cache:t,project:r}){let s=r.storedPackages.get(e.locatorHash);if(typeof s>"u")throw new Error("Assertion failed: Expected the package to be registered");let a=PUi(e),o=r.storedChecksums,g=new u2.ThrowReport,p=await IS.xfs.mktempPromise(),f=IS.ppath.join(p,"source"),m=IS.ppath.join(p,"user"),y=IS.ppath.join(p,".yarn-patch.json"),B=r.configuration.makeFetcher(),v=[];try{let k,T;if(e.locatorHash===a.locatorHash){let O=await B.fetch(e,{cache:t,project:r,fetcher:B,checksums:o,report:g});v.push(()=>O.releaseFs?.()),k=O,T=O}else k=await B.fetch(e,{cache:t,project:r,fetcher:B,checksums:o,report:g}),v.push(()=>k.releaseFs?.()),T=await B.fetch(e,{cache:t,project:r,fetcher:B,checksums:o,report:g}),v.push(()=>T.releaseFs?.());await Promise.all([IS.xfs.copyPromise(f,k.prefixPath,{baseFs:k.packageFs}),IS.xfs.copyPromise(m,T.prefixPath,{baseFs:T.packageFs}),IS.xfs.writeJsonPromise(y,{locator:u2.structUtils.stringifyLocator(e),version:s.version})])}finally{for(let k of v)k()}return IS.xfs.detachTemp(p),m}am.extractPackageToDisk=wkc;async function Tkc(e,t){let r=IS.npath.fromPortablePath(e).replace(/\\/g,"/"),s=IS.npath.fromPortablePath(t).replace(/\\/g,"/"),{stdout:a,stderr:o}=await u2.execUtils.execvp("git",["-c","core.safecrlf=false","diff","--src-prefix=a/","--dst-prefix=b/","--ignore-cr-at-eol","--full-index","--no-index","--no-renames","--text",r,s],{cwd:IS.npath.toPortablePath(process.cwd()),env:{...process.env,GIT_CONFIG_NOSYSTEM:"1",HOME:"",XDG_CONFIG_HOME:"",USERPROFILE:""}});if(o.length>0)throw new Error(`Unable to diff directories. Make sure you have a recent version of 'git' available in PATH. The following error was reported by 'git': -${o}`);let g=r.startsWith("/")?p=>p.slice(1):p=>p;return a.replace(new RegExp(`(a|b)(${l2.miscUtils.escapeRegExp(`/${g(r)}/`)})`,"g"),"$1/").replace(new RegExp(`(a|b)${l2.miscUtils.escapeRegExp(`/${g(s)}/`)}`,"g"),"$1/").replace(new RegExp(l2.miscUtils.escapeRegExp(`${r}/`),"g"),"").replace(new RegExp(l2.miscUtils.escapeRegExp(`${s}/`),"g"),"")}om.diffFolders=Akc;function dkc(e,t){let r=[];for(let{source:s}of e){if(s===null)continue;let a=(0,RUi.parsePatchFile)(s);for(let o of a){let{semverExclusivity:g,...p}=o;g!==null&&t!==null&&!l2.semverUtils.satisfiesWithPrereleases(t,g)||r.push(JSON.stringify(p))}}return l2.hashUtils.makeHash(`${$xc.CACHE_VERSION}`,...r).slice(0,6)}om.makePatchHash=dkc});var LUi=z(WTt=>{"use strict";Object.defineProperty(WTt,"__esModule",{value:!0});WTt.reportHunk=void 0;var Dae=Bn(),mDr=FTt();function pkc(e,{configuration:t,report:r}){for(let s of e.parts)for(let a of s.lines)switch(s.type){case mDr.PatchMutationType.Context:r.reportInfo(null,` ${Dae.formatUtils.pretty(t,a,"grey")}`);break;case mDr.PatchMutationType.Deletion:r.reportError(Dae.MessageName.FROZEN_LOCKFILE_EXCEPTION,`- ${Dae.formatUtils.pretty(t,a,Dae.formatUtils.Type.REMOVED)}`);break;case mDr.PatchMutationType.Insertion:r.reportError(Dae.MessageName.FROZEN_LOCKFILE_EXCEPTION,`+ ${Dae.formatUtils.pretty(t,a,Dae.formatUtils.Type.ADDED)}`);break;default:Dae.miscUtils.assertNever(s.type)}}WTt.reportHunk=pkc});var VUi=z(PTt=>{"use strict";Object.defineProperty(PTt,"__esModule",{value:!0});PTt.PatchFetcher=void 0;var fkc=(Ma(),Ai(Oa)),hDr=Bn(),RUe=Bn(),DUe=Ro(),_Dr=SJ(),xUe=fkc.__importStar(CRe()),Ikc=CDr(),Ckc=LUi(),yDr=class{supports(t,r){return!!xUe.isPatchLocator(t)}getLocalPath(t,r){return null}async fetch(t,r){let s=r.checksums.get(t.locatorHash)||null,[a,o,g]=await r.cache.fetchPackageFromCache(t,s,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${RUe.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.patchPackage(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:RUe.structUtils.getIdentVendorPath(t),localPath:this.getLocalPath(t,r),checksum:g}}async patchPackage(t,r){let{parentLocator:s,sourceLocator:a,sourceVersion:o,patchPaths:g}=xUe.parseLocator(t),p=await xUe.loadPatchFiles(s,g,r),f=await DUe.xfs.mktempPromise(),m=DUe.ppath.join(f,"current.zip"),y=await r.fetcher.fetch(a,r),B=RUe.structUtils.getIdentVendorPath(t),v=new _Dr.ZipFS(m,{create:!0,level:r.project.configuration.get("compressionLevel")});await RUe.miscUtils.releaseAfterUseAsync(async()=>{await v.copyPromise(B,y.prefixPath,{baseFs:y.packageFs,stableSort:!0})},y.releaseFs),v.saveAndClose();for(let{source:G,optional:T}of p){if(G===null)continue;let O=new _Dr.ZipFS(m,{level:r.project.configuration.get("compressionLevel")}),X=new DUe.CwdFS(DUe.ppath.resolve(DUe.PortablePath.root,B),{baseFs:O});try{await xUe.applyPatchFile(xUe.parsePatchFile(G),{baseFs:X,version:o})}catch(U){if(!(U instanceof Ikc.UnmatchedHunkError))throw U;let le=r.project.configuration.get("enableInlineHunks"),ae=!le&&!T?" (set enableInlineHunks for details)":"",ge=`${RUe.structUtils.prettyLocator(r.project.configuration,t)}: ${U.message}${ae}`,fe=pe=>{le&&(0,Ckc.reportHunk)(U.hunk,{configuration:r.project.configuration,report:pe})};if(O.discardAndClose(),T){r.report.reportWarningOnce(hDr.MessageName.PATCH_HUNK_FAILED,ge,{reportExtra:fe});continue}else throw new hDr.ReportError(hDr.MessageName.PATCH_HUNK_FAILED,ge,fe)}O.saveAndClose()}return new _Dr.ZipFS(m,{level:r.project.configuration.get("compressionLevel")})}};PTt.PatchFetcher=yDr});var PUi=z(OTt=>{"use strict";Object.defineProperty(OTt,"__esModule",{value:!0});OTt.PatchResolver=void 0;var mkc=(Ma(),Ai(Oa)),WUi=Bn(),e8=mkc.__importStar(CRe()),bDr=class{supportsDescriptor(t,r){return!!e8.isPatchDescriptor(t)}supportsLocator(t,r){return!!e8.isPatchLocator(t)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,s){let{patchPaths:a}=e8.parseDescriptor(t);return a.every(o=>!e8.isParentRequired(o))?t:WUi.structUtils.bindDescriptor(t,{locator:WUi.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){let{sourceDescriptor:s}=e8.parseDescriptor(t);return{sourceDescriptor:r.project.configuration.normalizeDependency(s)}}async getCandidates(t,r,s){if(!s.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{parentLocator:a,patchPaths:o}=e8.parseDescriptor(t),g=await e8.loadPatchFiles(a,o,s.fetchOptions),p=r.sourceDescriptor;if(typeof p>"u")throw new Error("Assertion failed: The dependency should have been resolved");let f=e8.makePatchHash(g,p.version);return[e8.makeLocator(t,{parentLocator:a,sourcePackage:p,patchPaths:o,patchHash:f})]}async getSatisfying(t,r,s,a){let[o]=await this.getCandidates(t,r,a);return{locators:s.filter(g=>g.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){let{sourceLocator:s}=e8.parseLocator(t);return{...await r.resolver.resolve(s,r),...t}}};OTt.PatchResolver=bDr});var MUi=z(EDr=>{"use strict";Object.defineProperty(EDr,"__esModule",{value:!0});var hkc=(Ma(),Ai(Oa)),OUi=nl(),t8=Bn(),aZ=Ro(),kUe=(Fl(),Ai(dg)),MTt=hkc.__importStar(CRe()),GUe=class extends OUi.BaseCommand{constructor(){super(...arguments),this.save=kUe.Option.Boolean("-s,--save",!1,{description:"Add the patch to your resolution entries"}),this.patchFolder=kUe.Option.String()}async execute(){let t=await t8.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await t8.Project.find(t,this.context.cwd);if(!s)throw new OUi.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=aZ.ppath.resolve(this.context.cwd,aZ.npath.toPortablePath(this.patchFolder)),o=aZ.ppath.join(a,"../source"),g=aZ.ppath.join(a,"../.yarn-patch.json");if(!aZ.xfs.existsSync(o))throw new kUe.UsageError("The argument folder didn't get created by 'yarn patch'");let p=await MTt.diffFolders(o,a),f=await aZ.xfs.readJsonPromise(g),m=t8.structUtils.parseLocator(f.locator,!0);if(!r.storedPackages.has(m.locatorHash))throw new kUe.UsageError("No package found in the project for the given locator");if(!this.save){this.context.stdout.write(p);return}let y=t.get("patchFolder"),B=aZ.ppath.join(y,`${t8.structUtils.slugifyLocator(m)}.patch`);await aZ.xfs.mkdirPromise(y,{recursive:!0}),await aZ.xfs.writeFilePromise(B,p);let v=[],G=new Map;for(let T of r.storedPackages.values()){if(t8.structUtils.isVirtualLocator(T))continue;let O=T.dependencies.get(m.identHash);if(!O)continue;let X=t8.structUtils.ensureDevirtualizedDescriptor(O),U=MTt.ensureUnpatchedDescriptor(X),le=r.storedResolutions.get(U.descriptorHash);if(!le)throw new Error("Assertion failed: Expected the resolution to have been registered");if(!r.storedPackages.get(le))throw new Error("Assertion failed: Expected the package to have been registered");let ge=r.tryWorkspaceByLocator(T);if(ge)v.push(ge);else{let fe=r.originalPackages.get(T.locatorHash);if(!fe)throw new Error("Assertion failed: Expected the original package to have been registered");let pe=fe.dependencies.get(O.identHash);if(!pe)throw new Error("Assertion failed: Expected the original dependency to have been registered");G.set(pe.descriptorHash,pe)}}for(let T of v)for(let O of t8.Manifest.hardDependencies){let X=T.manifest[O].get(m.identHash);if(!X)continue;let U=MTt.makeDescriptor(X,{parentLocator:null,sourceDescriptor:t8.structUtils.convertLocatorToDescriptor(m),patchPaths:[aZ.ppath.join(aZ.Filename.home,aZ.ppath.relative(r.cwd,B))]});T.manifest[O].set(X.identHash,U)}for(let T of G.values()){let O=MTt.makeDescriptor(T,{parentLocator:null,sourceDescriptor:t8.structUtils.convertLocatorToDescriptor(m),patchPaths:[aZ.ppath.join(aZ.Filename.home,aZ.ppath.relative(r.cwd,B))]});r.topLevelWorkspace.manifest.resolutions.push({pattern:{descriptor:{fullName:t8.structUtils.stringifyIdent(O),description:T.range}},reference:O.range})}await r.persist()}};GUe.paths=[["patch-commit"]];GUe.usage=kUe.Command.Usage({description:"generate a patch out of a directory",details:"\n By default, this will print a patchfile on stdout based on the diff between the folder passed in and the original version of the package. Such file is suitable for consumption with the `patch:` protocol.\n\n With the `-s,--save` option set, the patchfile won't be printed on stdout anymore and will instead be stored within a local file (by default kept within `.yarn/patches`, but configurable via the `patchFolder` setting). A `resolutions` entry will also be added to your top-level manifest, referencing the patched package via the `patch:` protocol.\n\n Note that only folders generated by `yarn patch` are accepted as valid input for `yarn patch-commit`.\n "});EDr.default=GUe});var YUi=z(SDr=>{"use strict";Object.defineProperty(SDr,"__esModule",{value:!0});var _kc=(Ma(),Ai(Oa)),QUi=nl(),DR=Bn(),BDr=Ro(),PCe=(Fl(),Ai(dg)),vDr=_kc.__importStar(CRe()),FUe=class extends QUi.BaseCommand{constructor(){super(...arguments),this.update=PCe.Option.Boolean("-u,--update",!1,{description:"Reapply local patches that already apply to this packages"}),this.json=PCe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.package=PCe.Option.String()}async execute(){let t=await DR.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await DR.Project.find(t,this.context.cwd),a=await DR.Cache.find(t);if(!s)throw new QUi.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let o=DR.structUtils.parseLocator(this.package);if(o.reference==="unknown"){let g=DR.miscUtils.mapAndFilter([...r.storedPackages.values()],p=>p.identHash!==o.identHash||DR.structUtils.isVirtualLocator(p)||vDr.isPatchLocator(p)!==this.update?DR.miscUtils.mapAndFilter.skip:p);if(g.length===0)throw new PCe.UsageError("No package found in the project for the given locator");if(g.length>1)throw new PCe.UsageError(`Multiple candidate packages found; explicitly choose one of them (use \`yarn why \` to get more information as to who depends on them): +${o}`);let g=r.startsWith("/")?p=>p.slice(1):p=>p;return a.replace(new RegExp(`(a|b)(${u2.miscUtils.escapeRegExp(`/${g(r)}/`)})`,"g"),"$1/").replace(new RegExp(`(a|b)${u2.miscUtils.escapeRegExp(`/${g(s)}/`)}`,"g"),"$1/").replace(new RegExp(u2.miscUtils.escapeRegExp(`${r}/`),"g"),"").replace(new RegExp(u2.miscUtils.escapeRegExp(`${s}/`),"g"),"")}am.diffFolders=Tkc;function Nkc(e,t){let r=[];for(let{source:s}of e){if(s===null)continue;let a=(0,LUi.parsePatchFile)(s);for(let o of a){let{semverExclusivity:g,...p}=o;g!==null&&t!==null&&!u2.semverUtils.satisfiesWithPrereleases(t,g)||r.push(JSON.stringify(p))}}return u2.hashUtils.makeHash(`${fkc.CACHE_VERSION}`,...r).slice(0,6)}am.makePatchHash=Nkc});var HUi=z(QTt=>{"use strict";Object.defineProperty(QTt,"__esModule",{value:!0});QTt.reportHunk=void 0;var Pae=Bn(),BDr=VTt();function Rkc(e,{configuration:t,report:r}){for(let s of e.parts)for(let a of s.lines)switch(s.type){case BDr.PatchMutationType.Context:r.reportInfo(null,` ${Pae.formatUtils.pretty(t,a,"grey")}`);break;case BDr.PatchMutationType.Deletion:r.reportError(Pae.MessageName.FROZEN_LOCKFILE_EXCEPTION,`- ${Pae.formatUtils.pretty(t,a,Pae.formatUtils.Type.REMOVED)}`);break;case BDr.PatchMutationType.Insertion:r.reportError(Pae.MessageName.FROZEN_LOCKFILE_EXCEPTION,`+ ${Pae.formatUtils.pretty(t,a,Pae.formatUtils.Type.ADDED)}`);break;default:Pae.miscUtils.assertNever(s.type)}}QTt.reportHunk=Rkc});var YUi=z(MTt=>{"use strict";Object.defineProperty(MTt,"__esModule",{value:!0});MTt.PatchFetcher=void 0;var Dkc=(Oa(),Ai(Pa)),vDr=Bn(),xUe=Bn(),kUe=No(),SDr=NJ(),GUe=Dkc.__importStar(hRe()),xkc=EDr(),kkc=HUi(),wDr=class{supports(t,r){return!!GUe.isPatchLocator(t)}getLocalPath(t,r){return null}async fetch(t,r){let s=r.checksums.get(t.locatorHash)||null,[a,o,g]=await r.cache.fetchPackageFromCache(t,s,{onHit:()=>r.report.reportCacheHit(t),onMiss:()=>r.report.reportCacheMiss(t,`${xUe.structUtils.prettyLocator(r.project.configuration,t)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.patchPackage(t,r),...r.cacheOptions});return{packageFs:a,releaseFs:o,prefixPath:xUe.structUtils.getIdentVendorPath(t),localPath:this.getLocalPath(t,r),checksum:g}}async patchPackage(t,r){let{parentLocator:s,sourceLocator:a,sourceVersion:o,patchPaths:g}=GUe.parseLocator(t),p=await GUe.loadPatchFiles(s,g,r),f=await kUe.xfs.mktempPromise(),m=kUe.ppath.join(f,"current.zip"),y=await r.fetcher.fetch(a,r),B=xUe.structUtils.getIdentVendorPath(t),v=new SDr.ZipFS(m,{create:!0,level:r.project.configuration.get("compressionLevel")});await xUe.miscUtils.releaseAfterUseAsync(async()=>{await v.copyPromise(B,y.prefixPath,{baseFs:y.packageFs,stableSort:!0})},y.releaseFs),v.saveAndClose();for(let{source:k,optional:T}of p){if(k===null)continue;let O=new SDr.ZipFS(m,{level:r.project.configuration.get("compressionLevel")}),X=new kUe.CwdFS(kUe.ppath.resolve(kUe.PortablePath.root,B),{baseFs:O});try{await GUe.applyPatchFile(GUe.parsePatchFile(k),{baseFs:X,version:o})}catch(U){if(!(U instanceof xkc.UnmatchedHunkError))throw U;let le=r.project.configuration.get("enableInlineHunks"),ae=!le&&!T?" (set enableInlineHunks for details)":"",ge=`${xUe.structUtils.prettyLocator(r.project.configuration,t)}: ${U.message}${ae}`,fe=pe=>{le&&(0,kkc.reportHunk)(U.hunk,{configuration:r.project.configuration,report:pe})};if(O.discardAndClose(),T){r.report.reportWarningOnce(vDr.MessageName.PATCH_HUNK_FAILED,ge,{reportExtra:fe});continue}else throw new vDr.ReportError(vDr.MessageName.PATCH_HUNK_FAILED,ge,fe)}O.saveAndClose()}return new SDr.ZipFS(m,{level:r.project.configuration.get("compressionLevel")})}};MTt.PatchFetcher=wDr});var JUi=z(HTt=>{"use strict";Object.defineProperty(HTt,"__esModule",{value:!0});HTt.PatchResolver=void 0;var Gkc=(Oa(),Ai(Pa)),XUi=Bn(),o8=Gkc.__importStar(hRe()),TDr=class{supportsDescriptor(t,r){return!!o8.isPatchDescriptor(t)}supportsLocator(t,r){return!!o8.isPatchLocator(t)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,s){let{patchPaths:a}=o8.parseDescriptor(t);return a.every(o=>!o8.isParentRequired(o))?t:XUi.structUtils.bindDescriptor(t,{locator:XUi.structUtils.stringifyLocator(r)})}getResolutionDependencies(t,r){let{sourceDescriptor:s}=o8.parseDescriptor(t);return{sourceDescriptor:r.project.configuration.normalizeDependency(s)}}async getCandidates(t,r,s){if(!s.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{parentLocator:a,patchPaths:o}=o8.parseDescriptor(t),g=await o8.loadPatchFiles(a,o,s.fetchOptions),p=r.sourceDescriptor;if(typeof p>"u")throw new Error("Assertion failed: The dependency should have been resolved");let f=o8.makePatchHash(g,p.version);return[o8.makeLocator(t,{parentLocator:a,sourcePackage:p,patchPaths:o,patchHash:f})]}async getSatisfying(t,r,s,a){let[o]=await this.getCandidates(t,r,a);return{locators:s.filter(g=>g.locatorHash===o.locatorHash),sorted:!1}}async resolve(t,r){let{sourceLocator:s}=o8.parseLocator(t);return{...await r.resolver.resolve(s,r),...t}}};HTt.PatchResolver=TDr});var KUi=z(NDr=>{"use strict";Object.defineProperty(NDr,"__esModule",{value:!0});var Fkc=(Oa(),Ai(Pa)),UUi=il(),a8=Bn(),cZ=No(),FUe=(Zl(),Ai(pg)),YTt=Fkc.__importStar(hRe()),ZUe=class extends UUi.BaseCommand{constructor(){super(...arguments),this.save=FUe.Option.Boolean("-s,--save",!1,{description:"Add the patch to your resolution entries"}),this.patchFolder=FUe.Option.String()}async execute(){let t=await a8.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await a8.Project.find(t,this.context.cwd);if(!s)throw new UUi.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let a=cZ.ppath.resolve(this.context.cwd,cZ.npath.toPortablePath(this.patchFolder)),o=cZ.ppath.join(a,"../source"),g=cZ.ppath.join(a,"../.yarn-patch.json");if(!cZ.xfs.existsSync(o))throw new FUe.UsageError("The argument folder didn't get created by 'yarn patch'");let p=await YTt.diffFolders(o,a),f=await cZ.xfs.readJsonPromise(g),m=a8.structUtils.parseLocator(f.locator,!0);if(!r.storedPackages.has(m.locatorHash))throw new FUe.UsageError("No package found in the project for the given locator");if(!this.save){this.context.stdout.write(p);return}let y=t.get("patchFolder"),B=cZ.ppath.join(y,`${a8.structUtils.slugifyLocator(m)}.patch`);await cZ.xfs.mkdirPromise(y,{recursive:!0}),await cZ.xfs.writeFilePromise(B,p);let v=[],k=new Map;for(let T of r.storedPackages.values()){if(a8.structUtils.isVirtualLocator(T))continue;let O=T.dependencies.get(m.identHash);if(!O)continue;let X=a8.structUtils.ensureDevirtualizedDescriptor(O),U=YTt.ensureUnpatchedDescriptor(X),le=r.storedResolutions.get(U.descriptorHash);if(!le)throw new Error("Assertion failed: Expected the resolution to have been registered");if(!r.storedPackages.get(le))throw new Error("Assertion failed: Expected the package to have been registered");let ge=r.tryWorkspaceByLocator(T);if(ge)v.push(ge);else{let fe=r.originalPackages.get(T.locatorHash);if(!fe)throw new Error("Assertion failed: Expected the original package to have been registered");let pe=fe.dependencies.get(O.identHash);if(!pe)throw new Error("Assertion failed: Expected the original dependency to have been registered");k.set(pe.descriptorHash,pe)}}for(let T of v)for(let O of a8.Manifest.hardDependencies){let X=T.manifest[O].get(m.identHash);if(!X)continue;let U=YTt.makeDescriptor(X,{parentLocator:null,sourceDescriptor:a8.structUtils.convertLocatorToDescriptor(m),patchPaths:[cZ.ppath.join(cZ.Filename.home,cZ.ppath.relative(r.cwd,B))]});T.manifest[O].set(X.identHash,U)}for(let T of k.values()){let O=YTt.makeDescriptor(T,{parentLocator:null,sourceDescriptor:a8.structUtils.convertLocatorToDescriptor(m),patchPaths:[cZ.ppath.join(cZ.Filename.home,cZ.ppath.relative(r.cwd,B))]});r.topLevelWorkspace.manifest.resolutions.push({pattern:{descriptor:{fullName:a8.structUtils.stringifyIdent(O),description:T.range}},reference:O.range})}await r.persist()}};ZUe.paths=[["patch-commit"]];ZUe.usage=FUe.Command.Usage({description:"generate a patch out of a directory",details:"\n By default, this will print a patchfile on stdout based on the diff between the folder passed in and the original version of the package. Such file is suitable for consumption with the `patch:` protocol.\n\n With the `-s,--save` option set, the patchfile won't be printed on stdout anymore and will instead be stored within a local file (by default kept within `.yarn/patches`, but configurable via the `patchFolder` setting). A `resolutions` entry will also be added to your top-level manifest, referencing the patched package via the `patch:` protocol.\n\n Note that only folders generated by `yarn patch` are accepted as valid input for `yarn patch-commit`.\n "});NDr.default=ZUe});var zUi=z(xDr=>{"use strict";Object.defineProperty(xDr,"__esModule",{value:!0});var Zkc=(Oa(),Ai(Pa)),jUi=il(),GR=Bn(),RDr=No(),QCe=(Zl(),Ai(pg)),DDr=Zkc.__importStar(hRe()),LUe=class extends jUi.BaseCommand{constructor(){super(...arguments),this.update=QCe.Option.Boolean("-u,--update",!1,{description:"Reapply local patches that already apply to this packages"}),this.json=QCe.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"}),this.package=QCe.Option.String()}async execute(){let t=await GR.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await GR.Project.find(t,this.context.cwd),a=await GR.Cache.find(t);if(!s)throw new jUi.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let o=GR.structUtils.parseLocator(this.package);if(o.reference==="unknown"){let g=GR.miscUtils.mapAndFilter([...r.storedPackages.values()],p=>p.identHash!==o.identHash||GR.structUtils.isVirtualLocator(p)||DDr.isPatchLocator(p)!==this.update?GR.miscUtils.mapAndFilter.skip:p);if(g.length===0)throw new QCe.UsageError("No package found in the project for the given locator");if(g.length>1)throw new QCe.UsageError(`Multiple candidate packages found; explicitly choose one of them (use \`yarn why \` to get more information as to who depends on them): ${g.map(p=>` -- ${DR.structUtils.prettyLocator(t,p)}`).join("")}`);o=g[0]}if(!r.storedPackages.has(o.locatorHash))throw new PCe.UsageError("No package found in the project for the given locator");await DR.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async g=>{let p=vDr.ensureUnpatchedLocator(o),f=await vDr.extractPackageToDisk(o,{cache:a,project:r});g.reportJson({locator:DR.structUtils.stringifyLocator(p),path:BDr.npath.fromPortablePath(f)});let m=this.update?" along with its current modifications":"";g.reportInfo(DR.MessageName.UNNAMED,`Package ${DR.structUtils.prettyLocator(t,p)} got extracted with success${m}!`),g.reportInfo(DR.MessageName.UNNAMED,`You can now edit the following folder: ${DR.formatUtils.pretty(t,BDr.npath.fromPortablePath(f),"magenta")}`),g.reportInfo(DR.MessageName.UNNAMED,`Once you are done run ${DR.formatUtils.pretty(t,`yarn patch-commit -s ${process.platform==="win32"?'"':""}${BDr.npath.fromPortablePath(f)}${process.platform==="win32"?'"':""}`,"cyan")} and Yarn will store a patchfile based on your changes.`)})}};FUe.paths=[["patch"]];FUe.usage=PCe.Command.Usage({description:"prepare a package for patching",details:"\n This command will cause a package to be extracted in a temporary directory intended to be editable at will.\n\n Once you're done with your changes, run `yarn patch-commit -s path` (with `path` being the temporary directory you received) to generate a patchfile and register it into your top-level manifest via the `patch:` protocol. Run `yarn patch-commit -h` for more details.\n\n Calling the command when you already have a patch won't import it by default (in other words, the default behavior is to reset existing patches). However, adding the `-u,--update` flag will import any current patch.\n "});SDr.default=FUe});var jUi=z(b3=>{"use strict";Object.defineProperty(b3,"__esModule",{value:!0});b3.patchUtils=b3.PatchCommand=b3.PatchCommitCommand=b3.PatchResolver=b3.PatchFetcher=void 0;var wDr=(Ma(),Ai(Oa)),HUi=Bn(),XUi=VUi();Object.defineProperty(b3,"PatchFetcher",{enumerable:!0,get:function(){return XUi.PatchFetcher}});var JUi=PUi();Object.defineProperty(b3,"PatchResolver",{enumerable:!0,get:function(){return JUi.PatchResolver}});var UUi=wDr.__importDefault(MUi());b3.PatchCommitCommand=UUi.default;var KUi=wDr.__importDefault(YUi());b3.PatchCommand=KUi.default;var ykc=wDr.__importStar(CRe());b3.patchUtils=ykc;var bkc={configuration:{enableInlineHunks:{description:"If true, the installs will print unmatched patch hunks",type:HUi.SettingsType.BOOLEAN,default:!1},patchFolder:{description:"Folder where the patch files must be written",type:HUi.SettingsType.ABSOLUTE_PATH,default:"./.yarn/patches"}},commands:[UUi.default,KUi.default],fetchers:[XUi.PatchFetcher],resolvers:[JUi.PatchResolver]};b3.default=bkc});var tKi=z(QTt=>{"use strict";Object.defineProperty(QTt,"__esModule",{value:!0});QTt.PnpmLinker=void 0;var IB=Bn(),am=Ro(),zUi=tRe(),TDr=(Fl(),Ai(dg)),NDr=class{getCustomDataKey(){return JSON.stringify({name:"PnpmLinker",version:3})}supportsPackage(t,r){return this.isEnabled(r)}async findPackageLocation(t,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the pnpm linker to be enabled");let s=this.getCustomDataKey(),a=r.project.linkersCustomData.get(s);if(!a)throw new TDr.UsageError(`The project in ${IB.formatUtils.pretty(r.project.configuration,`${r.project.cwd}/package.json`,IB.formatUtils.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let o=a.pathsByLocator.get(t.locatorHash);if(typeof o>"u")throw new TDr.UsageError(`Couldn't find ${IB.structUtils.prettyLocator(r.project.configuration,t)} in the currently installed pnpm map - running an install might help`);return o.packageLocation}async findPackageLocator(t,r){if(!this.isEnabled(r))return null;let s=this.getCustomDataKey(),a=r.project.linkersCustomData.get(s);if(!a)throw new TDr.UsageError(`The project in ${IB.formatUtils.pretty(r.project.configuration,`${r.project.cwd}/package.json`,IB.formatUtils.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let o=t.match(/(^.*\/node_modules\/(@[^/]*\/)?[^/]+)(\/.*$)/);if(o){let f=a.locatorByPath.get(o[1]);if(f)return f}let g=t,p=t;do{p=g,g=am.ppath.dirname(p);let f=a.locatorByPath.get(p);if(f)return f}while(g!==p);return null}makeInstaller(t){return new RDr(t)}isEnabled(t){return t.project.configuration.get("nodeLinker")==="pnpm"}};QTt.PnpmLinker=NDr;var RDr=class{constructor(t){this.opts=t,this.asyncActions=new IB.miscUtils.AsyncActions(10),this.customData={pathsByLocator:new Map,locatorByPath:new Map},this.indexFolderPromise=(0,am.setupCopyIndex)(am.xfs,{indexPath:am.ppath.join(t.project.configuration.get("globalFolder"),"index")})}attachCustomData(t){}async installPackage(t,r,s){switch(t.linkType){case IB.LinkType.SOFT:return this.installPackageSoft(t,r,s);case IB.LinkType.HARD:return this.installPackageHard(t,r,s)}throw new Error("Assertion failed: Unsupported package link type")}async installPackageSoft(t,r,s){let a=am.ppath.resolve(r.packageFs.getRealPath(),r.prefixPath),o=this.opts.project.tryWorkspaceByLocator(t)?am.ppath.join(a,am.Filename.nodeModules):null;return this.customData.pathsByLocator.set(t.locatorHash,{packageLocation:a,dependenciesLocation:o}),{packageLocation:a,buildRequest:null}}async installPackageHard(t,r,s){let a=Ekc(t,{project:this.opts.project}),o=a.packageLocation;this.customData.locatorByPath.set(o,IB.structUtils.stringifyLocator(t)),this.customData.pathsByLocator.set(t.locatorHash,a),s.holdFetchResult(this.asyncActions.set(t.locatorHash,async()=>{await am.xfs.mkdirPromise(o,{recursive:!0}),await am.xfs.copyPromise(o,r.prefixPath,{baseFs:r.packageFs,overwrite:!1,linkStrategy:{type:"HardlinkFromIndex",indexPath:await this.indexFolderPromise,autoRepair:!0}})}));let p=IB.structUtils.isVirtualLocator(t)?IB.structUtils.devirtualizeLocator(t):t,f={manifest:await IB.Manifest.tryFind(r.prefixPath,{baseFs:r.packageFs})??new IB.Manifest,misc:{hasBindingGyp:zUi.jsInstallUtils.hasBindingGyp(r)}},m=this.opts.project.getDependencyMeta(p,t.version),y=zUi.jsInstallUtils.extractBuildRequest(t,f,m,{configuration:this.opts.project.configuration});return{packageLocation:o,buildRequest:y}}async attachInternalDependencies(t,r){if(this.opts.project.configuration.get("nodeLinker")!=="pnpm"||!qUi(t,{project:this.opts.project}))return;let s=this.customData.pathsByLocator.get(t.locatorHash);if(typeof s>"u")throw new Error(`Assertion failed: Expected the package to have been registered (${IB.structUtils.stringifyLocator(t)})`);let{dependenciesLocation:a}=s;a&&this.asyncActions.reduce(t.locatorHash,async o=>{await am.xfs.mkdirPromise(a,{recursive:!0});let g=await Bkc(a),p=new Map(g),f=[o],m=(B,v)=>{let G=v;qUi(v,{project:this.opts.project})||(this.opts.report.reportWarningOnce(IB.MessageName.UNNAMED,"The pnpm linker doesn't support providing different versions to workspaces' peer dependencies"),G=IB.structUtils.devirtualizeLocator(v));let T=this.customData.pathsByLocator.get(G.locatorHash);if(typeof T>"u")throw new Error(`Assertion failed: Expected the package to have been registered (${IB.structUtils.stringifyLocator(v)})`);let O=IB.structUtils.stringifyIdent(B),X=am.ppath.join(a,O),U=am.ppath.relative(am.ppath.dirname(X),T.packageLocation),le=p.get(O);p.delete(O),f.push(Promise.resolve().then(async()=>{if(le){if(le.isSymbolicLink()&&await am.xfs.readlinkPromise(X)===U)return;await am.xfs.removePromise(X)}await am.xfs.mkdirpPromise(am.ppath.dirname(X)),process.platform=="win32"&&this.opts.project.configuration.get("winLinkType")===IB.WindowsLinkType.JUNCTIONS?await am.xfs.symlinkPromise(T.packageLocation,X,"junction"):await am.xfs.symlinkPromise(U,X)}))},y=!1;for(let[B,v]of r)B.identHash===t.identHash&&(y=!0),m(B,v);!y&&!this.opts.project.tryWorkspaceByLocator(t)&&m(IB.structUtils.convertLocatorToDescriptor(t),t),f.push(vkc(a,p)),await Promise.all(f)})}async attachExternalDependents(t,r){throw new Error("External dependencies haven't been implemented for the pnpm linker")}async finalizeInstall(){let t=eKi(this.opts.project);if(this.opts.project.configuration.get("nodeLinker")!=="pnpm")await am.xfs.removePromise(t);else{let r;try{r=new Set(await am.xfs.readdirPromise(t))}catch{r=new Set}for(let{dependenciesLocation:s}of this.customData.pathsByLocator.values()){if(!s)continue;let a=am.ppath.contains(t,s);if(a===null)continue;let[o]=a.split(am.ppath.sep);r.delete(o)}await Promise.all([...r].map(async s=>{await am.xfs.removePromise(am.ppath.join(t,s))}))}return await this.asyncActions.wait(),await DDr(t),this.opts.project.configuration.get("nodeLinker")!=="node-modules"&&await DDr($Ui(this.opts.project)),{customData:this.customData}}};function $Ui(e){return am.ppath.join(e.cwd,am.Filename.nodeModules)}function eKi(e){return am.ppath.join($Ui(e),".store")}function Ekc(e,{project:t}){let r=IB.structUtils.slugifyLocator(e),s=eKi(t),a=am.ppath.join(s,r,"package"),o=am.ppath.join(s,r,am.Filename.nodeModules);return{packageLocation:a,dependenciesLocation:o}}function qUi(e,{project:t}){return!IB.structUtils.isVirtualLocator(e)||!t.tryWorkspaceByLocator(e)}async function Bkc(e){let t=new Map,r=[];try{r=await am.xfs.readdirPromise(e,{withFileTypes:!0})}catch(s){if(s.code!=="ENOENT")throw s}try{for(let s of r)if(!s.name.startsWith("."))if(s.name.startsWith("@")){let a=await am.xfs.readdirPromise(am.ppath.join(e,s.name),{withFileTypes:!0});if(a.length===0)t.set(s.name,s);else for(let o of a)t.set(`${s.name}/${o.name}`,o)}else t.set(s.name,s)}catch(s){if(s.code!=="ENOENT")throw s}return t}async function vkc(e,t){let r=[],s=new Set;for(let a of t.keys()){r.push(am.xfs.removePromise(am.ppath.join(e,a)));let o=IB.structUtils.tryParseIdent(a)?.scope;o&&s.add(`@${o}`)}return Promise.all(r).then(()=>Promise.all([...s].map(a=>DDr(am.ppath.join(e,a)))))}async function DDr(e){try{await am.xfs.rmdirPromise(e)}catch(t){if(t.code!=="ENOENT"&&t.code!=="ENOTEMPTY")throw t}}});var nKi=z(ZUe=>{"use strict";Object.defineProperty(ZUe,"__esModule",{value:!0});ZUe.PnpmLinker=void 0;var rKi=tKi();Object.defineProperty(ZUe,"PnpmLinker",{enumerable:!0,get:function(){return rKi.PnpmLinker}});var Skc={linkers:[rKi.PnpmLinker]};ZUe.default=Skc});var kDr=xt(nl(),1),GDr=xt(Ro(),1),FDr=xt(Ro(),1);var wkc=xt(nl()),Tkc=xt(Bn()),Nkc=xt(Ro()),Rkc=xt(SJ()),Dkc=xt(aO()),xkc=xt(uVe());Fl();var kkc=xt(Lh());_L();var I8t={};jf(I8t,{BadgesCommand:()=>rWe,default:()=>qmn});var Xmn=xt(nl(),1),Jmn=xt(nl(),1),Umn=xt(Bn(),1),Kmn=xt(Bn(),1),jmn=xt(Bn(),1),tWe=xt(Bn(),1),zmn=xt(Bn(),1);import{readFileSync as djs}from"node:fs";import{writeFileSync as pjs}from"node:fs";import{join as Hmn}from"node:path";import{PassThrough as Ajs}from"node:stream";var eWe=class{stream=new Ajs;chunks=[];constructor(){this.stream.on("data",t=>this.chunks.push(t))}get data(){return Buffer.concat(this.chunks).toString()}};var Jot=class{stdout;stderr;stdoutOutput=new eWe;stderrOutput=new eWe;constructor(){this.stdout=this.stdoutOutput.stream,this.stderr=this.stderrOutput.stream}get output(){return[this.stdoutOutput.data,this.stderrOutput.data].filter(Boolean).join(` -`)}};var Qmn=xt(Bn(),1),p8t=xt(Bn(),1),Uot=class e{constructor(t,r){this.stdout=t;this.configuration=r}static PROGRESS_FRAMES=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"];static PROGRESS_INTERVAL=120;running=!1;position=0;isEnabled(){return this.stdout.isTTY&&!process.env.TOOLS_DISABLE_PROGRESS}start(){this.isEnabled()&&(this.running=!0,this.write(),this.tick())}end(){this.isEnabled()&&this.running&&(this.running=!1,this.clear(!0))}tick(){setTimeout(()=>{this.running&&(this.clear(),this.write(),this.position=this.position===e.PROGRESS_FRAMES.length-1?0:this.position+1,this.tick())},e.PROGRESS_INTERVAL)}write(){let t=e.PROGRESS_FRAMES[this.position],r=p8t.formatUtils.pretty(this.configuration,`YN${Qmn.MessageName.UNNAMED.toString(10).padStart(4,"0")}`,"gray");this.stdout.write(`${p8t.formatUtils.pretty(this.configuration,"\u27A4","blueBright")} ${r}: \u2502 ${t} -`)}clear(t=!1){this.stdout.write("\x1B[0A"),t&&this.stdout.write("\x1B[0J")}};var Ymn=["@atls/code-service","@atls/schematics","@atls/next-identity-integration","@atls/react-kratos-browser-flows","@atls/nestjs-dataloader","@atls/nestjs-external-renderer","@atls/nestjs-gateway","@atls/nestjs-grpc-errors","@atls/nestjs-grpc-http-proxy","@atls/nestjs-grpc-identity","@atls/nestjs-grpc-playground","@atls/nestjs-grpc-reflection","@atls/nestjs-hydra","@atls/nestjs-keto","@atls/nestjs-kratos","@atls/nestjs-typesense-typeorm","@atls/nestjs-typesense","@atls-ui-generators/button","@atls-ui-generators/input","@atls-ui-generators/icons"],f8t={"@atls/nestjs":{labelColor:"#CB5458",color:"#BE4045"},"@atls/next":{labelColor:"#354247",color:"#1D282D"},"@atls/react":{labelColor:"#43CFF4",color:"#2DBFE6"},"@atls-ui":{labelColor:"#097CEB",color:"#0B6DCC"},tools:{labelColor:"#ECEEF5",color:"#D7DCEB"}};var rWe=class e extends Xmn.BaseCommand{static paths=[["badges","generate"]];static VERSIONS_SEPARATOR="[//]: # (VERSIONS)";static BADGE_URL="https://img.shields.io/static/v1";static BADGE_STYLE="for-the-badge";static REGISTRY_URL="https://npmjs.com";static REGISTRY_PACKAGE_PATH="/package";async execute(){let t=await Kmn.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await jmn.Project.find(t,this.context.cwd);if(!s)throw new Jmn.WorkspaceRequiredError(r.cwd,this.context.cwd);return await r.restoreInstallState(),(await Umn.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await o.startTimerPromise("Generating badges",async()=>{let g=new Uot(this.context.stdout,t);g.start();let p=U=>{let le=U.anchoredLocator.locatorHash,ae=new Map,ge=[le];for(;ge.length>0;){let fe=ge.shift();if(fe){if(ae.has(fe))continue;let pe=r.storedPackages.get(fe);if(typeof pe>"u")throw new Error("Assertion failed: Expected the package to be registered");if(ae.set(fe,pe),tWe.structUtils.isVirtualLocator(pe)&&ge.push(tWe.structUtils.devirtualizeLocator(pe).locatorHash),fe!==le)continue;for(let he of pe.dependencies.values()){let be=r.storedResolutions.get(he.descriptorHash);if(typeof be>"u")throw new Error("Assertion failed: Expected the resolution to be registered");ge.push(be)}}}return ae.values()},m=(()=>{let U=new Map;for(let le of r.workspaces)for(let ae of p(le))U.set(ae.locatorHash,ae);return U.values()})(),y=zmn.miscUtils.sortMap([...m],U=>tWe.structUtils.stringifyLocator(U)),B=async U=>{let le=tWe.structUtils.parseDescriptor(U),ae=y.filter(ge=>ge.scope===le.scope&&ge.name===le.name);return ae.length>0&&ae.shift()?.version||""},v=Hmn(process.cwd(),"README.md"),T=djs(v).toString("utf-8").split(e.VERSIONS_SEPARATOR),O=await Promise.all(Ymn.map(async U=>({name:U,version:await B(U)}))),X=(U,le)=>{let ae=()=>{let ge=pe=>({labelColor:pe.labelColor.replace("#",""),color:pe.color.replace("#","")}),fe=Object.entries(f8t).find(([pe])=>le.name.search(pe)!==-1);if(fe){let[,pe]=fe;return ge(pe)}return ge(f8t.tools)};if(le.version){let ge=`${e.REGISTRY_URL}${e.REGISTRY_PACKAGE_PATH}/${le.name}`;Hmn(e.REGISTRY_URL,e.REGISTRY_PACKAGE_PATH,le.name);let fe=new URLSearchParams({style:e.BADGE_STYLE,label:le.name,message:le.version,...ae()}),pe=`badge`;return`${U}${((be,Te)=>`[${be}](${Te})`)(pe,ge)} `}return U};T[1]=O.reduce(X,""),T[1]=` +- ${GR.structUtils.prettyLocator(t,p)}`).join("")}`);o=g[0]}if(!r.storedPackages.has(o.locatorHash))throw new QCe.UsageError("No package found in the project for the given locator");await GR.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async g=>{let p=DDr.ensureUnpatchedLocator(o),f=await DDr.extractPackageToDisk(o,{cache:a,project:r});g.reportJson({locator:GR.structUtils.stringifyLocator(p),path:RDr.npath.fromPortablePath(f)});let m=this.update?" along with its current modifications":"";g.reportInfo(GR.MessageName.UNNAMED,`Package ${GR.structUtils.prettyLocator(t,p)} got extracted with success${m}!`),g.reportInfo(GR.MessageName.UNNAMED,`You can now edit the following folder: ${GR.formatUtils.pretty(t,RDr.npath.fromPortablePath(f),"magenta")}`),g.reportInfo(GR.MessageName.UNNAMED,`Once you are done run ${GR.formatUtils.pretty(t,`yarn patch-commit -s ${process.platform==="win32"?'"':""}${RDr.npath.fromPortablePath(f)}${process.platform==="win32"?'"':""}`,"cyan")} and Yarn will store a patchfile based on your changes.`)})}};LUe.paths=[["patch"]];LUe.usage=QCe.Command.Usage({description:"prepare a package for patching",details:"\n This command will cause a package to be extracted in a temporary directory intended to be editable at will.\n\n Once you're done with your changes, run `yarn patch-commit -s path` (with `path` being the temporary directory you received) to generate a patchfile and register it into your top-level manifest via the `patch:` protocol. Run `yarn patch-commit -h` for more details.\n\n Calling the command when you already have a patch won't import it by default (in other words, the default behavior is to reset existing patches). However, adding the `-u,--update` flag will import any current patch.\n "});xDr.default=LUe});var nKi=z(v3=>{"use strict";Object.defineProperty(v3,"__esModule",{value:!0});v3.patchUtils=v3.PatchCommand=v3.PatchCommitCommand=v3.PatchResolver=v3.PatchFetcher=void 0;var kDr=(Oa(),Ai(Pa)),qUi=Bn(),$Ui=YUi();Object.defineProperty(v3,"PatchFetcher",{enumerable:!0,get:function(){return $Ui.PatchFetcher}});var eKi=JUi();Object.defineProperty(v3,"PatchResolver",{enumerable:!0,get:function(){return eKi.PatchResolver}});var tKi=kDr.__importDefault(KUi());v3.PatchCommitCommand=tKi.default;var rKi=kDr.__importDefault(zUi());v3.PatchCommand=rKi.default;var Lkc=kDr.__importStar(hRe());v3.patchUtils=Lkc;var Vkc={configuration:{enableInlineHunks:{description:"If true, the installs will print unmatched patch hunks",type:qUi.SettingsType.BOOLEAN,default:!1},patchFolder:{description:"Folder where the patch files must be written",type:qUi.SettingsType.ABSOLUTE_PATH,default:"./.yarn/patches"}},commands:[tKi.default,rKi.default],fetchers:[$Ui.PatchFetcher],resolvers:[eKi.PatchResolver]};v3.default=Vkc});var cKi=z(XTt=>{"use strict";Object.defineProperty(XTt,"__esModule",{value:!0});XTt.PnpmLinker=void 0;var mB=Bn(),cm=No(),iKi=nRe(),GDr=(Zl(),Ai(pg)),FDr=class{getCustomDataKey(){return JSON.stringify({name:"PnpmLinker",version:3})}supportsPackage(t,r){return this.isEnabled(r)}async findPackageLocation(t,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the pnpm linker to be enabled");let s=this.getCustomDataKey(),a=r.project.linkersCustomData.get(s);if(!a)throw new GDr.UsageError(`The project in ${mB.formatUtils.pretty(r.project.configuration,`${r.project.cwd}/package.json`,mB.formatUtils.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let o=a.pathsByLocator.get(t.locatorHash);if(typeof o>"u")throw new GDr.UsageError(`Couldn't find ${mB.structUtils.prettyLocator(r.project.configuration,t)} in the currently installed pnpm map - running an install might help`);return o.packageLocation}async findPackageLocator(t,r){if(!this.isEnabled(r))return null;let s=this.getCustomDataKey(),a=r.project.linkersCustomData.get(s);if(!a)throw new GDr.UsageError(`The project in ${mB.formatUtils.pretty(r.project.configuration,`${r.project.cwd}/package.json`,mB.formatUtils.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let o=t.match(/(^.*\/node_modules\/(@[^/]*\/)?[^/]+)(\/.*$)/);if(o){let f=a.locatorByPath.get(o[1]);if(f)return f}let g=t,p=t;do{p=g,g=cm.ppath.dirname(p);let f=a.locatorByPath.get(p);if(f)return f}while(g!==p);return null}makeInstaller(t){return new ZDr(t)}isEnabled(t){return t.project.configuration.get("nodeLinker")==="pnpm"}};XTt.PnpmLinker=FDr;var ZDr=class{constructor(t){this.opts=t,this.asyncActions=new mB.miscUtils.AsyncActions(10),this.customData={pathsByLocator:new Map,locatorByPath:new Map},this.indexFolderPromise=(0,cm.setupCopyIndex)(cm.xfs,{indexPath:cm.ppath.join(t.project.configuration.get("globalFolder"),"index")})}attachCustomData(t){}async installPackage(t,r,s){switch(t.linkType){case mB.LinkType.SOFT:return this.installPackageSoft(t,r,s);case mB.LinkType.HARD:return this.installPackageHard(t,r,s)}throw new Error("Assertion failed: Unsupported package link type")}async installPackageSoft(t,r,s){let a=cm.ppath.resolve(r.packageFs.getRealPath(),r.prefixPath),o=this.opts.project.tryWorkspaceByLocator(t)?cm.ppath.join(a,cm.Filename.nodeModules):null;return this.customData.pathsByLocator.set(t.locatorHash,{packageLocation:a,dependenciesLocation:o}),{packageLocation:a,buildRequest:null}}async installPackageHard(t,r,s){let a=Wkc(t,{project:this.opts.project}),o=a.packageLocation;this.customData.locatorByPath.set(o,mB.structUtils.stringifyLocator(t)),this.customData.pathsByLocator.set(t.locatorHash,a),s.holdFetchResult(this.asyncActions.set(t.locatorHash,async()=>{await cm.xfs.mkdirPromise(o,{recursive:!0}),await cm.xfs.copyPromise(o,r.prefixPath,{baseFs:r.packageFs,overwrite:!1,linkStrategy:{type:"HardlinkFromIndex",indexPath:await this.indexFolderPromise,autoRepair:!0}})}));let p=mB.structUtils.isVirtualLocator(t)?mB.structUtils.devirtualizeLocator(t):t,f={manifest:await mB.Manifest.tryFind(r.prefixPath,{baseFs:r.packageFs})??new mB.Manifest,misc:{hasBindingGyp:iKi.jsInstallUtils.hasBindingGyp(r)}},m=this.opts.project.getDependencyMeta(p,t.version),y=iKi.jsInstallUtils.extractBuildRequest(t,f,m,{configuration:this.opts.project.configuration});return{packageLocation:o,buildRequest:y}}async attachInternalDependencies(t,r){if(this.opts.project.configuration.get("nodeLinker")!=="pnpm"||!sKi(t,{project:this.opts.project}))return;let s=this.customData.pathsByLocator.get(t.locatorHash);if(typeof s>"u")throw new Error(`Assertion failed: Expected the package to have been registered (${mB.structUtils.stringifyLocator(t)})`);let{dependenciesLocation:a}=s;a&&this.asyncActions.reduce(t.locatorHash,async o=>{await cm.xfs.mkdirPromise(a,{recursive:!0});let g=await Pkc(a),p=new Map(g),f=[o],m=(B,v)=>{let k=v;sKi(v,{project:this.opts.project})||(this.opts.report.reportWarningOnce(mB.MessageName.UNNAMED,"The pnpm linker doesn't support providing different versions to workspaces' peer dependencies"),k=mB.structUtils.devirtualizeLocator(v));let T=this.customData.pathsByLocator.get(k.locatorHash);if(typeof T>"u")throw new Error(`Assertion failed: Expected the package to have been registered (${mB.structUtils.stringifyLocator(v)})`);let O=mB.structUtils.stringifyIdent(B),X=cm.ppath.join(a,O),U=cm.ppath.relative(cm.ppath.dirname(X),T.packageLocation),le=p.get(O);p.delete(O),f.push(Promise.resolve().then(async()=>{if(le){if(le.isSymbolicLink()&&await cm.xfs.readlinkPromise(X)===U)return;await cm.xfs.removePromise(X)}await cm.xfs.mkdirpPromise(cm.ppath.dirname(X)),process.platform=="win32"&&this.opts.project.configuration.get("winLinkType")===mB.WindowsLinkType.JUNCTIONS?await cm.xfs.symlinkPromise(T.packageLocation,X,"junction"):await cm.xfs.symlinkPromise(U,X)}))},y=!1;for(let[B,v]of r)B.identHash===t.identHash&&(y=!0),m(B,v);!y&&!this.opts.project.tryWorkspaceByLocator(t)&&m(mB.structUtils.convertLocatorToDescriptor(t),t),f.push(Okc(a,p)),await Promise.all(f)})}async attachExternalDependents(t,r){throw new Error("External dependencies haven't been implemented for the pnpm linker")}async finalizeInstall(){let t=aKi(this.opts.project);if(this.opts.project.configuration.get("nodeLinker")!=="pnpm")await cm.xfs.removePromise(t);else{let r;try{r=new Set(await cm.xfs.readdirPromise(t))}catch{r=new Set}for(let{dependenciesLocation:s}of this.customData.pathsByLocator.values()){if(!s)continue;let a=cm.ppath.contains(t,s);if(a===null)continue;let[o]=a.split(cm.ppath.sep);r.delete(o)}await Promise.all([...r].map(async s=>{await cm.xfs.removePromise(cm.ppath.join(t,s))}))}return await this.asyncActions.wait(),await LDr(t),this.opts.project.configuration.get("nodeLinker")!=="node-modules"&&await LDr(oKi(this.opts.project)),{customData:this.customData}}};function oKi(e){return cm.ppath.join(e.cwd,cm.Filename.nodeModules)}function aKi(e){return cm.ppath.join(oKi(e),".store")}function Wkc(e,{project:t}){let r=mB.structUtils.slugifyLocator(e),s=aKi(t),a=cm.ppath.join(s,r,"package"),o=cm.ppath.join(s,r,cm.Filename.nodeModules);return{packageLocation:a,dependenciesLocation:o}}function sKi(e,{project:t}){return!mB.structUtils.isVirtualLocator(e)||!t.tryWorkspaceByLocator(e)}async function Pkc(e){let t=new Map,r=[];try{r=await cm.xfs.readdirPromise(e,{withFileTypes:!0})}catch(s){if(s.code!=="ENOENT")throw s}try{for(let s of r)if(!s.name.startsWith("."))if(s.name.startsWith("@")){let a=await cm.xfs.readdirPromise(cm.ppath.join(e,s.name),{withFileTypes:!0});if(a.length===0)t.set(s.name,s);else for(let o of a)t.set(`${s.name}/${o.name}`,o)}else t.set(s.name,s)}catch(s){if(s.code!=="ENOENT")throw s}return t}async function Okc(e,t){let r=[],s=new Set;for(let a of t.keys()){r.push(cm.xfs.removePromise(cm.ppath.join(e,a)));let o=mB.structUtils.tryParseIdent(a)?.scope;o&&s.add(`@${o}`)}return Promise.all(r).then(()=>Promise.all([...s].map(a=>LDr(cm.ppath.join(e,a)))))}async function LDr(e){try{await cm.xfs.rmdirPromise(e)}catch(t){if(t.code!=="ENOENT"&&t.code!=="ENOTEMPTY")throw t}}});var uKi=z(VUe=>{"use strict";Object.defineProperty(VUe,"__esModule",{value:!0});VUe.PnpmLinker=void 0;var lKi=cKi();Object.defineProperty(VUe,"PnpmLinker",{enumerable:!0,get:function(){return lKi.PnpmLinker}});var Qkc={linkers:[lKi.PnpmLinker]};VUe.default=Qkc});var WDr=vt(il(),1),PDr=vt(No(),1),ODr=vt(No(),1);var Mkc=vt(il()),Hkc=vt(Bn()),Ykc=vt(No()),Xkc=vt(NJ()),Jkc=vt(uO()),Ukc=vt(AVe());Zl();var Kkc=vt(Vh());yL();var h8t={};zf(h8t,{BadgesCommand:()=>iWe,default:()=>ihn});var qmn=vt(il(),1),$mn=vt(il(),1),ehn=vt(Bn(),1),thn=vt(Bn(),1),rhn=vt(Bn(),1),nWe=vt(Bn(),1),nhn=vt(Bn(),1);import{readFileSync as _js}from"node:fs";import{writeFileSync as yjs}from"node:fs";import{join as zmn}from"node:path";import{PassThrough as hjs}from"node:stream";var rWe=class{stream=new hjs;chunks=[];constructor(){this.stream.on("data",t=>this.chunks.push(t))}get data(){return Buffer.concat(this.chunks).toString()}};var Kot=class{stdout;stderr;stdoutOutput=new rWe;stderrOutput=new rWe;constructor(){this.stdout=this.stdoutOutput.stream,this.stderr=this.stderrOutput.stream}get output(){return[this.stdoutOutput.data,this.stderrOutput.data].filter(Boolean).join(` +`)}};var Kmn=vt(Bn(),1),C8t=vt(Bn(),1),jot=class e{constructor(t,r){this.stdout=t;this.configuration=r}static PROGRESS_FRAMES=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"];static PROGRESS_INTERVAL=120;running=!1;position=0;isEnabled(){return this.stdout.isTTY&&!process.env.TOOLS_DISABLE_PROGRESS}start(){this.isEnabled()&&(this.running=!0,this.write(),this.tick())}end(){this.isEnabled()&&this.running&&(this.running=!1,this.clear(!0))}tick(){setTimeout(()=>{this.running&&(this.clear(),this.write(),this.position=this.position===e.PROGRESS_FRAMES.length-1?0:this.position+1,this.tick())},e.PROGRESS_INTERVAL)}write(){let t=e.PROGRESS_FRAMES[this.position],r=C8t.formatUtils.pretty(this.configuration,`YN${Kmn.MessageName.UNNAMED.toString(10).padStart(4,"0")}`,"gray");this.stdout.write(`${C8t.formatUtils.pretty(this.configuration,"\u27A4","blueBright")} ${r}: \u2502 ${t} +`)}clear(t=!1){this.stdout.write("\x1B[0A"),t&&this.stdout.write("\x1B[0J")}};var jmn=["@atls/code-service","@atls/schematics","@atls/next-identity-integration","@atls/react-kratos-browser-flows","@atls/nestjs-dataloader","@atls/nestjs-external-renderer","@atls/nestjs-gateway","@atls/nestjs-grpc-errors","@atls/nestjs-grpc-http-proxy","@atls/nestjs-grpc-identity","@atls/nestjs-grpc-playground","@atls/nestjs-grpc-reflection","@atls/nestjs-hydra","@atls/nestjs-keto","@atls/nestjs-kratos","@atls/nestjs-typesense-typeorm","@atls/nestjs-typesense","@atls-ui-generators/button","@atls-ui-generators/input","@atls-ui-generators/icons"],m8t={"@atls/nestjs":{labelColor:"#CB5458",color:"#BE4045"},"@atls/next":{labelColor:"#354247",color:"#1D282D"},"@atls/react":{labelColor:"#43CFF4",color:"#2DBFE6"},"@atls-ui":{labelColor:"#097CEB",color:"#0B6DCC"},tools:{labelColor:"#ECEEF5",color:"#D7DCEB"}};var iWe=class e extends qmn.BaseCommand{static paths=[["badges","generate"]];static VERSIONS_SEPARATOR="[//]: # (VERSIONS)";static BADGE_URL="https://img.shields.io/static/v1";static BADGE_STYLE="for-the-badge";static REGISTRY_URL="https://npmjs.com";static REGISTRY_PACKAGE_PATH="/package";async execute(){let t=await thn.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await rhn.Project.find(t,this.context.cwd);if(!s)throw new $mn.WorkspaceRequiredError(r.cwd,this.context.cwd);return await r.restoreInstallState(),(await ehn.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await o.startTimerPromise("Generating badges",async()=>{let g=new jot(this.context.stdout,t);g.start();let p=U=>{let le=U.anchoredLocator.locatorHash,ae=new Map,ge=[le];for(;ge.length>0;){let fe=ge.shift();if(fe){if(ae.has(fe))continue;let pe=r.storedPackages.get(fe);if(typeof pe>"u")throw new Error("Assertion failed: Expected the package to be registered");if(ae.set(fe,pe),nWe.structUtils.isVirtualLocator(pe)&&ge.push(nWe.structUtils.devirtualizeLocator(pe).locatorHash),fe!==le)continue;for(let he of pe.dependencies.values()){let be=r.storedResolutions.get(he.descriptorHash);if(typeof be>"u")throw new Error("Assertion failed: Expected the resolution to be registered");ge.push(be)}}}return ae.values()},m=(()=>{let U=new Map;for(let le of r.workspaces)for(let ae of p(le))U.set(ae.locatorHash,ae);return U.values()})(),y=nhn.miscUtils.sortMap([...m],U=>nWe.structUtils.stringifyLocator(U)),B=async U=>{let le=nWe.structUtils.parseDescriptor(U),ae=y.filter(ge=>ge.scope===le.scope&&ge.name===le.name);return ae.length>0&&ae.shift()?.version||""},v=zmn(process.cwd(),"README.md"),T=_js(v).toString("utf-8").split(e.VERSIONS_SEPARATOR),O=await Promise.all(jmn.map(async U=>({name:U,version:await B(U)}))),X=(U,le)=>{let ae=()=>{let ge=pe=>({labelColor:pe.labelColor.replace("#",""),color:pe.color.replace("#","")}),fe=Object.entries(m8t).find(([pe])=>le.name.search(pe)!==-1);if(fe){let[,pe]=fe;return ge(pe)}return ge(m8t.tools)};if(le.version){let ge=`${e.REGISTRY_URL}${e.REGISTRY_PACKAGE_PATH}/${le.name}`;zmn(e.REGISTRY_URL,e.REGISTRY_PACKAGE_PATH,le.name);let fe=new URLSearchParams({style:e.BADGE_STYLE,label:le.name,message:le.version,...ae()}),pe=`badge`;return`${U}${((be,Te)=>`[${be}](${Te})`)(pe,ge)} `}return U};T[1]=O.reduce(X,""),T[1]=` ${T[1]} -`,pjs(v,T.join("[//]: # (VERSIONS)")),g.end()})})).exitCode()}};var qmn={commands:[rWe]};var i7t={};jf(i7t,{default:()=>Zbn});var Dbn=xt(nl(),1),xbn=xt(nl(),1),kbn=xt(Bn(),1),Gbn=xt(Bn(),1),Fbn=xt(Bn(),1);Fl();import{relative as Vto}from"node:path";import{readFile as Fto}from"node:fs/promises";import{writeFile as Zto}from"node:fs/promises";import{join as Rbn}from"node:path";import{dirname as Lto}from"node:path";var Ibn=xt(nhn(),1);import{Readable as pbn,Transform as fbn}from"stream";import{execFileSync as Bto}from"child_process";import{Readable as Sjs}from"stream";import{spawn as fjs}from"child_process";function Ijs(e){return new Promise(t=>{let r="",s=null;e.stderr.on("data",a=>{r+=a.toString()}),e.on("error",a=>{s=a}),e.on("close",()=>{r&&(s=new Error(r)),t(s)})})}async function*jot(e,t,r){let s=fjs(e,t,r),a=Ijs(s);yield*s.stdout;let o=await a;if(o)throw o}async function PAe(e,t,r){let s=jot(e,t,r),a,o=[];for await(a of s)o.push(a);return Buffer.concat(o)}async function*ihn(e,t){let r,s,a="";for await(r of e)a+=r.toString(),a.includes(t)&&(s=a.split(t),a=s.pop()||"",yield*s);a&&(yield a)}function Kot(e,t){return`${e.length===1?"-":"--"}${e.replace(/[A-Z]/g,"-$&").toLowerCase()}${t?`=${t}`:""}`}function Cjs(e){let t=[],r,s,a;for(r in e)if(s=e[r],s===!0)t.push(Kot(r));else if(s===!1)t.push(Kot(`no-${r}`));else if(Array.isArray(s))for(a of s)t.push(Kot(r,a));else s&&t.push(Kot(r,s));return t}function _8t(...e){let t=[];for(let r of e)r&&(Array.isArray(r)?t.push(..._8t(...r)):typeof r=="object"&&!(r instanceof RegExp)?t.push(...Cjs(r)):t.push(String(r)));return t}var shn="------------------------ >8 ------------------------",REe=class{cwd;debug;constructor(t,r=!1){this.cwd=t,this.debug=r}formatArgs(...t){let r=_8t(...t);return this.debug&&this.debug(r),r}async*getRawCommits(t={}){let{path:r,from:s="",to:a="HEAD",format:o="%B",ignore:g,...p}=t,f=g?G=>!g.test(G):()=>!0,m=this.formatArgs("log",`--format=${o}%n${shn}`,[s,a].filter(Boolean).join(".."),p,r&&["--",r]),y=jot("git",m,{cwd:this.cwd}),B=ihn(y,`${shn} -`),v;for await(v of B)f(v)&&(yield v)}async*getTags(t={}){let r=/tag:\s*(.+?)[,)]/gi,s=this.formatArgs("log","--decorate","--no-color","--date-order",t),a=jot("git",s,{cwd:this.cwd}),o,g,p;for await(o of a){g=o.toString().trim().matchAll(r);for([,p]of g)yield p}}async getLastTag(t={}){return(await this.getTags(t).next()).value||null}async checkIgnore(t,r={}){let s=this.formatArgs("check-ignore",t,r);try{return await PAe("git",s,{cwd:this.cwd}),!0}catch{return!1}}async add(t,r={}){let s=this.formatArgs("add",t,r);await PAe("git",s,{cwd:this.cwd})}async commit(t){let{verify:r=!0,sign:s=!1,files:a=[],message:o,...g}=t,p=this.formatArgs("commit",!r&&"--no-verify",s&&"-S",a,"-m",o,g);await PAe("git",p,{cwd:this.cwd})}async tag(t){let{sign:r=!1,name:s,message:a,...o}=t;r&&(a="");let g=this.formatArgs("tag",r&&"-s",a&&"-a",s,a&&["-m",a],o);await PAe("git",g,{cwd:this.cwd})}async getCurrentBranch(t={}){let r=this.formatArgs("rev-parse","--abbrev-ref","HEAD",t);return(await PAe("git",r,{cwd:this.cwd})).toString().trim()}async push(t,r={}){let s=this.formatArgs("push","--follow-tags","origin",t,r);await PAe("git",s,{cwd:this.cwd})}};var sWe=xt(Lh(),1);function Bhn(e){return e?`${e}@`:/^.+@/}var zot=class extends REe{deps=null;loadDeps(){return this.deps?this.deps:(this.deps=Promise.all([Promise.resolve().then(()=>(v8t(),mhn)).then(({parseCommits:t})=>t),Promise.resolve().then(()=>(T8t(),Ehn)).then(({filterRevertedCommits:t})=>t)]),this.deps)}async*getCommits(t={},r={}){let{filterReverts:s,...a}=t,[o,g]=await this.loadDeps();if(s){yield*g(this.getCommits(a,r));return}let p=o(r),f=this.getRawCommits(a);yield*p(f)}async*getSemverTags(t={}){let{prefix:r,skipUnstable:s,clean:a,...o}=t,g=this.getTags(o),p=/.+-\w+\.\d+$/,f=a?(B,v)=>sWe.default.clean(v||B):B=>B,m,y;for await(y of g)s&&p.test(y)||(r?(typeof r=="string"?y.startsWith(r):r.test(y))&&(m=y.replace(r,""),sWe.default.valid(m)&&(y=f(y,m),y&&(yield y))):sWe.default.valid(y)&&(y=f(y),y&&(yield y)))}async getLastSemverTag(t={}){return(await this.getSemverTags(t).next()).value||null}async getVersionFromTags(t={}){let r=this.getSemverTags({clean:!0,...t}),s=[];for await(let a of r)s.push(a);return s.length&&s.sort(sWe.default.rcompare)[0]||null}};function wjs(e={}){let t={cwd:process.cwd(),...e};return e.debug&&(t.debug=r=>{e.debug(`Your git-log command is: -git `+r.join(" "))}),t}async function*Tjs(e){let{cwd:t,debug:r,...s}=wjs(e),a=new REe(t,r),o;typeof s.ignore=="string"&&(s.ignore=new RegExp(s.ignore));for await(o of a.getRawCommits(s))yield o}function N8t(e){return Sjs.from(Tjs(e))}v8t();var whn=xt(Lh(),1);function vhn(e){return new Date(e).toISOString().slice(0,10)}function Shn(e){let t=[],r=[],s;function a(g){return t[0]===g?"[Circular ~]":`[Circular ~.${r.slice(0,t.indexOf(g)).join(".")}]`}function o(g,p){let f=p;return t.length>0?(s=t.indexOf(this),s!==-1?(t.splice(s+1),r.splice(s,1/0,g)):(t.push(this),r.push(g)),t.includes(f)&&(f=a(f))):t.push(f),f}return JSON.stringify(e,o," ")}function oWe(e){return typeof e=="string"?(t,r)=>(t[e]||"").localeCompare(r[e]||""):Array.isArray(e)?(t,r)=>{let s="",a="";for(let o of e)s+=t[o]||"",a+=r[o]||"";return s.localeCompare(a)}:e}var Njs=7,Rjs=100;function Thn(e,t,r){let{hash:s,header:a,committerDate:o}=e;return{hash:typeof s=="string"?s.substring(0,Njs):s,header:typeof a=="string"?a.substring(0,Rjs):a,committerDate:o&&r.formatDate(o)}}function Nhn(e,t){let r={groupBy:"type",commitsSort:"header",noteGroupsSort:"title",notesSort:"text",transform:Thn,generateOn:a=>!!(0,whn.valid)(a.version),finalizeContext:a=>a,debug:()=>{},formatDate:vhn,reverse:!1,ignoreReverted:!0,doFlush:!0,...t,...e};return{...r,commitGroupsSort:oWe(r.commitGroupsSort),commitsSort:oWe(r.commitsSort),noteGroupsSort:oWe(r.noteGroupsSort),notesSort:oWe(r.notesSort)}}function Rhn(e,t){let{generateOn:r}=t;return typeof r=="string"?s=>typeof s[r]<"u":typeof r!="function"?()=>!1:(s,a)=>r(s,a,e,t)}import{Transform as S$s}from"stream";var OEe=xt(y0n(),1);T8t();var y6t=xt(Lh(),1);function b$s(e,t){let{groupBy:r,commitGroupsSort:s,commitsSort:a}=t,o=[],g=e.reduce((p,f)=>{let m=f[r]||"";return p[m]?p[m].push(f):p[m]=[f],p},{});return Object.entries(g).forEach(([p,f])=>{a&&f.sort(a),o.push({title:p,commits:f})}),s&&o.sort(s),o}function E$s(e,t){let{noteGroupsSort:r,notesSort:s}=t,a=[];return e.forEach(o=>{let{title:g}=o,p=!1;a.forEach(f=>{f.title===g&&(p=!0,f.notes.push(o))}),p||a.push({title:g,notes:[o]})}),r&&a.sort(r),s&&a.forEach(o=>{o.notes.sort(s)}),a}function B$s(e,t,r){return{commitGroups:b$s(e,r),noteGroups:E$s(t,r)}}function b0n(e,t){let r={commit:"commits",issue:"issues",date:t.formatDate(new Date),...e};return typeof r.linkReferences!="boolean"&&(r.repository||r.repoUrl)&&r.commit&&r.issue&&(r.linkReferences=!0),r}async function E0n(e,t,r,s,a,o){let g={...a,...e,...B$s(r,s,o)};return e?.committerDate&&(g.date=e.committerDate),g.version&&y6t.default.valid(g.version)&&(g.isPatch=g.isPatch||y6t.default.patch(g.version)!==0),g=await o.finalizeContext(g,o,r,e,t),o.debug(`Your final context is: -${Shn(g)}`),g}async function B0n(e={}){let t=` +`,yjs(v,T.join("[//]: # (VERSIONS)")),g.end()})})).exitCode()}};var ihn={commands:[iWe]};var a7t={};zf(a7t,{default:()=>Qbn});var Lbn=vt(il(),1),Vbn=vt(il(),1),Wbn=vt(Bn(),1),Pbn=vt(Bn(),1),Obn=vt(Bn(),1);Zl();import{relative as Yto}from"node:path";import{readFile as Qto}from"node:fs/promises";import{writeFile as Mto}from"node:fs/promises";import{join as Zbn}from"node:path";import{dirname as Hto}from"node:path";var bbn=vt(lhn(),1);import{Readable as _bn,Transform as ybn}from"stream";import{execFileSync as Dto}from"child_process";import{Readable as kjs}from"stream";import{spawn as bjs}from"child_process";function Ejs(e){return new Promise(t=>{let r="",s=null;e.stderr.on("data",a=>{r+=a.toString()}),e.on("error",a=>{s=a}),e.on("close",()=>{r&&(s=new Error(r)),t(s)})})}async function*qot(e,t,r){let s=bjs(e,t,r),a=Ejs(s);yield*s.stdout;let o=await a;if(o)throw o}async function KAe(e,t,r){let s=qot(e,t,r),a,o=[];for await(a of s)o.push(a);return Buffer.concat(o)}async function*uhn(e,t){let r,s,a="";for await(r of e)a+=r.toString(),a.includes(t)&&(s=a.split(t),a=s.pop()||"",yield*s);a&&(yield a)}function zot(e,t){return`${e.length===1?"-":"--"}${e.replace(/[A-Z]/g,"-$&").toLowerCase()}${t?`=${t}`:""}`}function Bjs(e){let t=[],r,s,a;for(r in e)if(s=e[r],s===!0)t.push(zot(r));else if(s===!1)t.push(zot(`no-${r}`));else if(Array.isArray(s))for(a of s)t.push(zot(r,a));else s&&t.push(zot(r,s));return t}function E8t(...e){let t=[];for(let r of e)r&&(Array.isArray(r)?t.push(...E8t(...r)):typeof r=="object"&&!(r instanceof RegExp)?t.push(...Bjs(r)):t.push(String(r)));return t}var ghn="------------------------ >8 ------------------------",xEe=class{cwd;debug;constructor(t,r=!1){this.cwd=t,this.debug=r}formatArgs(...t){let r=E8t(...t);return this.debug&&this.debug(r),r}async*getRawCommits(t={}){let{path:r,from:s="",to:a="HEAD",format:o="%B",ignore:g,...p}=t,f=g?k=>!g.test(k):()=>!0,m=this.formatArgs("log",`--format=${o}%n${ghn}`,[s,a].filter(Boolean).join(".."),p,r&&["--",r]),y=qot("git",m,{cwd:this.cwd}),B=uhn(y,`${ghn} +`),v;for await(v of B)f(v)&&(yield v)}async*getTags(t={}){let r=/tag:\s*(.+?)[,)]/gi,s=this.formatArgs("log","--decorate","--no-color","--date-order",t),a=qot("git",s,{cwd:this.cwd}),o,g,p;for await(o of a){g=o.toString().trim().matchAll(r);for([,p]of g)yield p}}async getLastTag(t={}){return(await this.getTags(t).next()).value||null}async checkIgnore(t,r={}){let s=this.formatArgs("check-ignore",t,r);try{return await KAe("git",s,{cwd:this.cwd}),!0}catch{return!1}}async add(t,r={}){let s=this.formatArgs("add",t,r);await KAe("git",s,{cwd:this.cwd})}async commit(t){let{verify:r=!0,sign:s=!1,files:a=[],message:o,...g}=t,p=this.formatArgs("commit",!r&&"--no-verify",s&&"-S",a,"-m",o,g);await KAe("git",p,{cwd:this.cwd})}async tag(t){let{sign:r=!1,name:s,message:a,...o}=t;r&&(a="");let g=this.formatArgs("tag",r&&"-s",a&&"-a",s,a&&["-m",a],o);await KAe("git",g,{cwd:this.cwd})}async getCurrentBranch(t={}){let r=this.formatArgs("rev-parse","--abbrev-ref","HEAD",t);return(await KAe("git",r,{cwd:this.cwd})).toString().trim()}async push(t,r={}){let s=this.formatArgs("push","--follow-tags","origin",t,r);await KAe("git",s,{cwd:this.cwd})}};var aWe=vt(Vh(),1);function Rhn(e){return e?`${e}@`:/^.+@/}var $ot=class extends xEe{deps=null;loadDeps(){return this.deps?this.deps:(this.deps=Promise.all([Promise.resolve().then(()=>(T8t(),Bhn)).then(({parseCommits:t})=>t),Promise.resolve().then(()=>(D8t(),Nhn)).then(({filterRevertedCommits:t})=>t)]),this.deps)}async*getCommits(t={},r={}){let{filterReverts:s,...a}=t,[o,g]=await this.loadDeps();if(s){yield*g(this.getCommits(a,r));return}let p=o(r),f=this.getRawCommits(a);yield*p(f)}async*getSemverTags(t={}){let{prefix:r,skipUnstable:s,clean:a,...o}=t,g=this.getTags(o),p=/.+-\w+\.\d+$/,f=a?(B,v)=>aWe.default.clean(v||B):B=>B,m,y;for await(y of g)s&&p.test(y)||(r?(typeof r=="string"?y.startsWith(r):r.test(y))&&(m=y.replace(r,""),aWe.default.valid(m)&&(y=f(y,m),y&&(yield y))):aWe.default.valid(y)&&(y=f(y),y&&(yield y)))}async getLastSemverTag(t={}){return(await this.getSemverTags(t).next()).value||null}async getVersionFromTags(t={}){let r=this.getSemverTags({clean:!0,...t}),s=[];for await(let a of r)s.push(a);return s.length&&s.sort(aWe.default.rcompare)[0]||null}};function Gjs(e={}){let t={cwd:process.cwd(),...e};return e.debug&&(t.debug=r=>{e.debug(`Your git-log command is: +git `+r.join(" "))}),t}async function*Fjs(e){let{cwd:t,debug:r,...s}=Gjs(e),a=new xEe(t,r),o;typeof s.ignore=="string"&&(s.ignore=new RegExp(s.ignore));for await(o of a.getRawCommits(s))yield o}function x8t(e){return kjs.from(Fjs(e))}T8t();var khn=vt(Vh(),1);function Dhn(e){return new Date(e).toISOString().slice(0,10)}function xhn(e){let t=[],r=[],s;function a(g){return t[0]===g?"[Circular ~]":`[Circular ~.${r.slice(0,t.indexOf(g)).join(".")}]`}function o(g,p){let f=p;return t.length>0?(s=t.indexOf(this),s!==-1?(t.splice(s+1),r.splice(s,1/0,g)):(t.push(this),r.push(g)),t.includes(f)&&(f=a(f))):t.push(f),f}return JSON.stringify(e,o," ")}function cWe(e){return typeof e=="string"?(t,r)=>(t[e]||"").localeCompare(r[e]||""):Array.isArray(e)?(t,r)=>{let s="",a="";for(let o of e)s+=t[o]||"",a+=r[o]||"";return s.localeCompare(a)}:e}var Zjs=7,Ljs=100;function Ghn(e,t,r){let{hash:s,header:a,committerDate:o}=e;return{hash:typeof s=="string"?s.substring(0,Zjs):s,header:typeof a=="string"?a.substring(0,Ljs):a,committerDate:o&&r.formatDate(o)}}function Fhn(e,t){let r={groupBy:"type",commitsSort:"header",noteGroupsSort:"title",notesSort:"text",transform:Ghn,generateOn:a=>!!(0,khn.valid)(a.version),finalizeContext:a=>a,debug:()=>{},formatDate:Dhn,reverse:!1,ignoreReverted:!0,doFlush:!0,...t,...e};return{...r,commitGroupsSort:cWe(r.commitGroupsSort),commitsSort:cWe(r.commitsSort),noteGroupsSort:cWe(r.noteGroupsSort),notesSort:cWe(r.notesSort)}}function Zhn(e,t){let{generateOn:r}=t;return typeof r=="string"?s=>typeof s[r]<"u":typeof r!="function"?()=>!1:(s,a)=>r(s,a,e,t)}import{Transform as k$s}from"stream";var MEe=vt(w0n(),1);D8t();var B6t=vt(Vh(),1);function N$s(e,t){let{groupBy:r,commitGroupsSort:s,commitsSort:a}=t,o=[],g=e.reduce((p,f)=>{let m=f[r]||"";return p[m]?p[m].push(f):p[m]=[f],p},{});return Object.entries(g).forEach(([p,f])=>{a&&f.sort(a),o.push({title:p,commits:f})}),s&&o.sort(s),o}function R$s(e,t){let{noteGroupsSort:r,notesSort:s}=t,a=[];return e.forEach(o=>{let{title:g}=o,p=!1;a.forEach(f=>{f.title===g&&(p=!0,f.notes.push(o))}),p||a.push({title:g,notes:[o]})}),r&&a.sort(r),s&&a.forEach(o=>{o.notes.sort(s)}),a}function D$s(e,t,r){return{commitGroups:N$s(e,r),noteGroups:R$s(t,r)}}function T0n(e,t){let r={commit:"commits",issue:"issues",date:t.formatDate(new Date),...e};return typeof r.linkReferences!="boolean"&&(r.repository||r.repoUrl)&&r.commit&&r.issue&&(r.linkReferences=!0),r}async function N0n(e,t,r,s,a,o){let g={...a,...e,...D$s(r,s,o)};return e?.committerDate&&(g.date=e.committerDate),g.version&&B6t.default.valid(g.version)&&(g.isPatch=g.isPatch||B6t.default.patch(g.version)!==0),g=await o.finalizeContext(g,o,r,e,t),o.debug(`Your final context is: +${xhn(g)}`),g}async function R0n(e={}){let t=` {{> header}} {{#each commitGroups}} @@ -1745,7 +1745,7 @@ ${Shn(g)}`),g}async function B0n(e={}){let t=` {{/each}} {{/each}} {{/if}} - `;if(e.mainTemplate&&e.headerPartial&&e.commitPartial&&e.footerPartial){let[o,g,p,f]=await Promise.all([e.mainTemplate,e.headerPartial,e.commitPartial,e.footerPartial]);return{mainTemplate:o,headerPartial:g,commitPartial:p,footerPartial:f}}return{mainTemplate:t,headerPartial:r,commitPartial:s,footerPartial:a}}function v$s(e){let{mainTemplate:t,headerPartial:r,commitPartial:s,footerPartial:a,partials:o}=e;return OEe.default.registerPartial("header",r),OEe.default.registerPartial("commit",s),OEe.default.registerPartial("footer",a),o&&Object.entries(o).forEach(([g,p])=>{typeof p=="string"&&OEe.default.registerPartial(g,p)}),OEe.default.compile(t,{noEscape:!0})}function v0n(e,t){let{ignoreReverted:r}=t,s=v$s(t);return async(a,o)=>{let g=[],p=(r?Array.from(w8t(a)):a).map(m=>({...m,notes:m.notes.map(y=>{let B={...y,commit:m};return g.push(B),B})})),f=await E0n(o,a,p,g,e,t);return s(f)}}function S0n(e){return new Proxy(e,{get(t,r){let s=t[r];return typeof s=="object"&&s!==null?S0n(s):s},set(){throw new Error("Cannot modify immutable object.")},deleteProperty(){throw new Error("Cannot modify immutable object.")}})}async function w0n(e,t,r,s){let a={};return typeof t=="function"&&(a=await t(S0n(e),r,s),!a)?null:{...e,...a,raw:e}}async function w$s(e={},t={}){let r=await B0n(t),s=Nhn(t,r),a=b0n(e,s),o=Rhn(a,s),g=v0n(a,s);return{finalContext:a,finalOptions:s,generateOn:o,renderTemplate:g}}function T$s(e={},t={},r=!1){let s=w$s(e,t),a=r?(o,g)=>({log:o,keyCommit:g}):o=>o;return async function*(g){let{finalContext:p,finalOptions:f,generateOn:m,renderTemplate:y}=await s,{transform:B,reverse:v,doFlush:G}=f,T,O,X,U=[],le=!0,ae,ge=null,fe=!0;for await(T of g)O=await w0n(T,B,p,f),X=O||T,v?(O&&U.push(O),m(X,U)&&(le=!1,ae=await y(U,X),U=[],yield a(ae,X))):(m(X,U)&&(le=!1,ae=await y(U,ge),U=[],(!fe||G)&&(yield a(ae,ge)),fe=!1,ge=X),O&&U.push(O));!G&&(v||le)||(ae=await y(U,ge),yield a(ae,ge))}}function T0n(e,t,r=!1){return S$s.from(T$s(e,t,r))}var gbn=xt(T6t(),1),Abn=xt(Q0n(),1);import Ito from"fs/promises";import{exec as Cto}from"child_process";import{URL as mto}from"url";function X$s(e={}){if(e.package&&!e.lernaTags)throw new Error("opts.package should only be used when running in lerna mode");return{cwd:e.cwd||process.cwd(),prefix:e.lernaTags?Bhn(e.package):e.tagPrefix,skipUnstable:e.skipUnstable}}async function Y0n(e={}){let{cwd:t,...r}=X$s(e),s=new zot(t),a=[];for await(let o of s.getSemverTags(r))a.push(o);return a}var dbn=xt(L6t(),1);var vyn={issue:"issues",commit:"commit",referenceActions:["close","closes","closed","fix","fixes","fixed","resolve","resolves","resolved"],issuePrefixes:["#","gh-"]};var Syn={issue:"issues",commit:"commit",referenceActions:["close","closes","closed","closing","fix","fixes","fixed","fixing"],issuePrefixes:["#"]};var wyn={issue:"issue",commit:"commits",referenceActions:["close","closes","closed","closing","fix","fixes","fixed","fixing","resolve","resolves","resolved","resolving"],issuePrefixes:["#"]};var hto=/github|bitbucket|gitlab/i,_to=Intl.DateTimeFormat("sv-SE",{timeZone:"UTC"});function yto(e,t){return e?e[0]==="v"&&t[0]!=="v"?"v"+t:e[0]!=="v"&&t[0]==="v"?t.replace(/^v/,""):t:t[0]!=="v"?"v"+t:t}function bto(e){if(!e)return{};let t={};for(let r in e)e[r]!==void 0&&(t[r]=e[r]);return t}function Eto(e){return new Promise((t,r)=>{Cto("git config --get remote.origin.url",{cwd:e},(s,a)=>{s?r(s):t(a.trim())})})}async function $6t(e,t,r,s,a,o){let g;e=bto(e),t=t||{},r=r||{},o={cwd:e?.cwd,...o||{}};let p=e&&e.tagPrefix?new RegExp(`tag:\\s*[=]?${e.tagPrefix}(.+?)[,)]`,"gi"):/tag:\s*[v=]?(.+?)[,)]/gi;e={append:!1,releaseCount:1,skipUnstable:!1,debug:function(){},transform:function(ae,ge){if(typeof ae.gitTags=="string"){let fe=p.exec(ae.gitTags);p.lastIndex=0,fe&&(ae.version=fe[1])}ae.committerDate&&(ae.committerDate=_to.format(new Date(ae.committerDate))),ge(null,ae)},lernaPackage:null,...e,pkg:{transform:function(ae){return ae},...e?.pkg}},e.warn=e.warn||e.debug,e.pkg&&(e.pkg.path?g=Promise.resolve().then(()=>(q6t(),nbn)).then(async({parsePackage:ae})=>{let ge=await Ito.readFile(e.pkg.path,"utf-8");return ae(ge)}):g=Promise.resolve().then(()=>(ubn(),lbn)).then(async({readPackageUp:ae})=>{let{packageJson:ge}=await ae({cwd:e.cwd});return ge}));let f=typeof e.config=="function"?e.config():e.config,[m,y,B,v]=await Promise.allSettled([f,g,Y0n({lernaTags:!!e.lernaPackage,package:e.lernaPackage,tagPrefix:e.tagPrefix,skipUnstable:e.skipUnstable,cwd:e.cwd}),Eto(e.cwd)]),G,T,O,X,U,le=[];if(e.config?m.status==="fulfilled"?G=m.value:(e.warn(m.reason.toString()),G={}):G={},t={...t,...G.context},e.pkg&&(y.status==="fulfilled"?(T=y.value||{},T=e.pkg.transform(T)):e.pkg.path&&e.warn(y.reason.toString())),(!T||!T.repository||!T.repository.url)&&v.status==="fulfilled"&&(T=T||{},T.repository=T.repository||{},T.repository.url=v.value,(0,dbn.default)(T)),T){t.version=t.version||T.version;try{let ae=typeof T.repository=="string"?T.repository:T.repository.url;ae&&(X=gbn.default.fromUrl(ae)||(0,Abn.default)(ae))}catch{X={}}if(X.browse){let ae=X.browse();if(!t.host)if(X.domain){let ge=new mto(ae);ge.origin.indexOf("//")!==-1?t.host=ge.protocol+"//"+X.domain:t.host=ge.protocol+X.domain}else t.host=null;t.owner=t.owner||X.user||"",t.repository=t.repository||X.project,X.host&&X.project&&X.user?t.repoUrl=ae:t.repoUrl=t.host}t.packageData=T}if(t.version=t.version||"",B.status==="fulfilled"){le=t.gitSemverTags=B.value,O=le[e.releaseCount-1];let ae=le[0];(ae===t.version||ae==="v"+t.version)&&(e.outputUnreleased?t.version="Unreleased":e.outputUnreleased=!1)}if(typeof e.outputUnreleased!="boolean"&&(e.outputUnreleased=!0),t.host&&(!t.issue||!t.commit||!s||!s.referenceActions)){let ae;if(t.host){let ge=t.host.match(hto);ge&&(ae=ge[0])}else X&&X.type&&(ae=X.type);if(ae){switch(ae){case"gitlab":U=Syn;break;case"bitbucket":U=wyn;break;default:U=vyn;break}t={issue:U.issue,commit:U.commit,...t}}else e.warn('Host: "'+t.host+'" does not exist'),U={}}else U={};return t.resetChangelog&&(O=null),r={format:"%B%n-hash-%n%H%n-gitTags-%n%d%n-committerDate-%n%ci",from:O,merges:!1,debug:e.debug,...G.commits,...r},e.append&&(r.reverse=r.reverse||!0),s={...G.parser,warn:e.warn,...s},U.referenceActions&&s&&(s.referenceActions=U.referenceActions),!s.issuePrefixes?.length&&U.issuePrefixes&&(s.issuePrefixes=U.issuePrefixes),a={finalizeContext:function(ae,ge,fe,pe,he){let be=he[0],Te=he[he.length-1],ke=be?be.hash:null,x=Te?Te.hash:null;if((!ae.currentTag||!ae.previousTag)&&pe){let et=/tag:\s*(.+?)[,)]/gi.exec(pe.gitTags),Ue=ae.currentTag;ae.currentTag=Ue||et?et[1]:null;let Je=le.indexOf(ae.currentTag);Je===-1?ae.currentTag=Ue||null:(ae.previousTag=le[Je+1])||(e.append?ae.previousTag=ae.previousTag||ke:ae.previousTag=ae.previousTag||x)}else ae.previousTag=ae.previousTag||le[0],ae.version==="Unreleased"?e.append?ae.currentTag=ae.currentTag||x:ae.currentTag=ae.currentTag||ke:ae.currentTag||(e.lernaPackage?ae.currentTag=e.lernaPackage+"@"+ae.version:e.tagPrefix?ae.currentTag=e.tagPrefix+ae.version:ae.currentTag=yto(le[0],ae.version));return typeof ae.linkCompare!="boolean"&&ae.previousTag&&ae.currentTag&&(ae.linkCompare=!0),ae},debug:e.debug,...G.writer,reverse:e.append,doFlush:e.outputUnreleased,...a},{options:e,context:t,gitRawCommitsOpts:r,parserOpts:s,writerOpts:a,gitRawExecOpts:o}}function e7t(e,t,r,s,a,o){let g=e?.cwd;a=a||{};let p=new pbn({objectMode:a.includeDetails});p._read=function(){};let f=!1,m=new pbn({objectMode:!0});m._read=function(){};function y(B,v){return N8t({...r,from:B,to:v,cwd:g}).on("error",function(G){f||(setImmediate(m.emit.bind(m),"error",G),f=!0)})}return $6t(e,t,r,s,a,o).then(function(B){e=B.options,t=B.context,r=B.gitRawCommitsOpts,s=B.parserOpts,a=B.writerOpts,o=B.gitRawExecOpts;try{Bto("git",["rev-parse","--verify","HEAD"],{cwd:g,stdio:"ignore"});let v=t.gitSemverTags.slice(0).reverse();v.push("HEAD"),r.from&&(v.indexOf(r.from)!==-1?v=v.slice(v.indexOf(r.from)):v=[r.from,"HEAD"]);let G=v.map((T,O)=>{let X=O>0?v[O-1]:"";return y(X,T)});r.from&&(G=G.splice(1)),r.reverse&&G.reverse(),G.reduce((T,O)=>O.pipe((0,Ibn.default)(T))).on("data",function(T){setImmediate(m.emit.bind(m),"data",T)}).on("end",function(){setImmediate(m.emit.bind(m),"end")})}catch{m=N8t({...r,...o})}m.on("error",function(v){v.message="Error in git-raw-commits: "+v.message,setImmediate(p.emit.bind(p),"error",v)}).pipe(B8t(s)).on("error",function(v){v.message="Error in conventional-commits-parser: "+v.message,setImmediate(p.emit.bind(p),"error",v)}).pipe(new fbn({objectMode:!0,highWaterMark:16,transform(v,G,T){try{e.transform.call(this,v,T)}catch(O){T(O)}}})).on("error",function(v){v.message="Error in options.transform: "+v.message,setImmediate(p.emit.bind(p),"error",v)}).pipe(T0n(t,a,a.includeDetails)).on("error",function(v){v.message="Error in conventional-changelog-writer: "+v.message,setImmediate(p.emit.bind(p),"error",v)}).pipe(new fbn({objectMode:a.includeDetails,transform(v,G,T){try{p.push(v)}catch(O){setImmediate(function(){throw O})}T()},flush(v){p.push(null),v()}}))}).catch(function(B){setImmediate(p.emit.bind(p),"error",B)}),p}import vto from"path";function Sto(e){if(vto.isAbsolute(e))return[e];let t="",r=e.toLocaleLowerCase();if(e.startsWith("@")){let a=e.split("/");if(t=`${a.shift()}/`,t==="@conventional-changelog/")return[e];r=a.join("/")}r.startsWith("conventional-changelog-")||(r=`conventional-changelog-${r}`);let s=`${t}${r}`;return s!==e?[s,e]:[e]}function wto(e){return("__esModule"in e||Object.getPrototypeOf(e)===null)&&"default"in e?e.default:e}async function Tto(e,t){let r=null;for(let s of t)try{return wto(await e(s))}catch(a){r||(r=a)}throw r}function Nto(e){return async function(r){let s="",a=null;if(typeof r=="string")s=r;else if(typeof r=="object"&&typeof r.name=="string")s=r.name,a=r;else throw Error("Preset must be string or object with property `name`");let o=Sto(s),g=null;try{g=await Tto(e,o)}catch(p){throw new Error(`Unable to load the "${s}" preset. Please make sure it's installed.`,{cause:p})}if(typeof g!="function")throw new Error(`The "${s}" preset does not export a function. Maybe you are using an old version of the preset. Please upgrade.`);return a?await g(a):await g()}}var Cbn=Nto(e=>import(e));function t7t(e,t,r,s,a){if(e.warn=e.warn||function(){},e.preset)try{e.config=Cbn(e.preset)}catch(o){typeof e.preset=="object"?e.warn(`Preset: "${e.preset.name}" ${o.message}`):typeof e.preset=="string"?e.warn(`Preset: "${e.preset}" ${o.message}`):e.warn(`Preset: ${o.message}`)}return e7t(e,t,r,s,a)}function mbn(){return{headerPattern:/^(\w*)(?:\((.*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],noteKeywords:["BREAKING CHANGE"],revertPattern:/^(?:Revert|revert:)\s"?([\s\S]+?)"?\s*This reverts commit (\w{7,40})\b/i,revertCorrespondence:["header","hash"]}}var wbn=xt(r7t(),1);async function Tbn(){let e=` + `;if(e.mainTemplate&&e.headerPartial&&e.commitPartial&&e.footerPartial){let[o,g,p,f]=await Promise.all([e.mainTemplate,e.headerPartial,e.commitPartial,e.footerPartial]);return{mainTemplate:o,headerPartial:g,commitPartial:p,footerPartial:f}}return{mainTemplate:t,headerPartial:r,commitPartial:s,footerPartial:a}}function x$s(e){let{mainTemplate:t,headerPartial:r,commitPartial:s,footerPartial:a,partials:o}=e;return MEe.default.registerPartial("header",r),MEe.default.registerPartial("commit",s),MEe.default.registerPartial("footer",a),o&&Object.entries(o).forEach(([g,p])=>{typeof p=="string"&&MEe.default.registerPartial(g,p)}),MEe.default.compile(t,{noEscape:!0})}function D0n(e,t){let{ignoreReverted:r}=t,s=x$s(t);return async(a,o)=>{let g=[],p=(r?Array.from(R8t(a)):a).map(m=>({...m,notes:m.notes.map(y=>{let B={...y,commit:m};return g.push(B),B})})),f=await N0n(o,a,p,g,e,t);return s(f)}}function x0n(e){return new Proxy(e,{get(t,r){let s=t[r];return typeof s=="object"&&s!==null?x0n(s):s},set(){throw new Error("Cannot modify immutable object.")},deleteProperty(){throw new Error("Cannot modify immutable object.")}})}async function k0n(e,t,r,s){let a={};return typeof t=="function"&&(a=await t(x0n(e),r,s),!a)?null:{...e,...a,raw:e}}async function G$s(e={},t={}){let r=await R0n(t),s=Fhn(t,r),a=T0n(e,s),o=Zhn(a,s),g=D0n(a,s);return{finalContext:a,finalOptions:s,generateOn:o,renderTemplate:g}}function F$s(e={},t={},r=!1){let s=G$s(e,t),a=r?(o,g)=>({log:o,keyCommit:g}):o=>o;return async function*(g){let{finalContext:p,finalOptions:f,generateOn:m,renderTemplate:y}=await s,{transform:B,reverse:v,doFlush:k}=f,T,O,X,U=[],le=!0,ae,ge=null,fe=!0;for await(T of g)O=await k0n(T,B,p,f),X=O||T,v?(O&&U.push(O),m(X,U)&&(le=!1,ae=await y(U,X),U=[],yield a(ae,X))):(m(X,U)&&(le=!1,ae=await y(U,ge),U=[],(!fe||k)&&(yield a(ae,ge)),fe=!1,ge=X),O&&U.push(O));!k&&(v||le)||(ae=await y(U,ge),yield a(ae,ge))}}function G0n(e,t,r=!1){return k$s.from(F$s(e,t,r))}var Cbn=vt(D6t(),1),mbn=vt(K0n(),1);import Eto from"fs/promises";import{exec as Bto}from"child_process";import{URL as vto}from"url";function $$s(e={}){if(e.package&&!e.lernaTags)throw new Error("opts.package should only be used when running in lerna mode");return{cwd:e.cwd||process.cwd(),prefix:e.lernaTags?Rhn(e.package):e.tagPrefix,skipUnstable:e.skipUnstable}}async function j0n(e={}){let{cwd:t,...r}=$$s(e),s=new $ot(t),a=[];for await(let o of s.getSemverTags(r))a.push(o);return a}var hbn=vt(P6t(),1);var Dyn={issue:"issues",commit:"commit",referenceActions:["close","closes","closed","fix","fixes","fixed","resolve","resolves","resolved"],issuePrefixes:["#","gh-"]};var xyn={issue:"issues",commit:"commit",referenceActions:["close","closes","closed","closing","fix","fixes","fixed","fixing"],issuePrefixes:["#"]};var kyn={issue:"issue",commit:"commits",referenceActions:["close","closes","closed","closing","fix","fixes","fixed","fixing","resolve","resolves","resolved","resolving"],issuePrefixes:["#"]};var Sto=/github|bitbucket|gitlab/i,wto=Intl.DateTimeFormat("sv-SE",{timeZone:"UTC"});function Tto(e,t){return e?e[0]==="v"&&t[0]!=="v"?"v"+t:e[0]!=="v"&&t[0]==="v"?t.replace(/^v/,""):t:t[0]!=="v"?"v"+t:t}function Nto(e){if(!e)return{};let t={};for(let r in e)e[r]!==void 0&&(t[r]=e[r]);return t}function Rto(e){return new Promise((t,r)=>{Bto("git config --get remote.origin.url",{cwd:e},(s,a)=>{s?r(s):t(a.trim())})})}async function r7t(e,t,r,s,a,o){let g;e=Nto(e),t=t||{},r=r||{},o={cwd:e?.cwd,...o||{}};let p=e&&e.tagPrefix?new RegExp(`tag:\\s*[=]?${e.tagPrefix}(.+?)[,)]`,"gi"):/tag:\s*[v=]?(.+?)[,)]/gi;e={append:!1,releaseCount:1,skipUnstable:!1,debug:function(){},transform:function(ae,ge){if(typeof ae.gitTags=="string"){let fe=p.exec(ae.gitTags);p.lastIndex=0,fe&&(ae.version=fe[1])}ae.committerDate&&(ae.committerDate=wto.format(new Date(ae.committerDate))),ge(null,ae)},lernaPackage:null,...e,pkg:{transform:function(ae){return ae},...e?.pkg}},e.warn=e.warn||e.debug,e.pkg&&(e.pkg.path?g=Promise.resolve().then(()=>(t7t(),lbn)).then(async({parsePackage:ae})=>{let ge=await Eto.readFile(e.pkg.path,"utf-8");return ae(ge)}):g=Promise.resolve().then(()=>(Ibn(),fbn)).then(async({readPackageUp:ae})=>{let{packageJson:ge}=await ae({cwd:e.cwd});return ge}));let f=typeof e.config=="function"?e.config():e.config,[m,y,B,v]=await Promise.allSettled([f,g,j0n({lernaTags:!!e.lernaPackage,package:e.lernaPackage,tagPrefix:e.tagPrefix,skipUnstable:e.skipUnstable,cwd:e.cwd}),Rto(e.cwd)]),k,T,O,X,U,le=[];if(e.config?m.status==="fulfilled"?k=m.value:(e.warn(m.reason.toString()),k={}):k={},t={...t,...k.context},e.pkg&&(y.status==="fulfilled"?(T=y.value||{},T=e.pkg.transform(T)):e.pkg.path&&e.warn(y.reason.toString())),(!T||!T.repository||!T.repository.url)&&v.status==="fulfilled"&&(T=T||{},T.repository=T.repository||{},T.repository.url=v.value,(0,hbn.default)(T)),T){t.version=t.version||T.version;try{let ae=typeof T.repository=="string"?T.repository:T.repository.url;ae&&(X=Cbn.default.fromUrl(ae)||(0,mbn.default)(ae))}catch{X={}}if(X.browse){let ae=X.browse();if(!t.host)if(X.domain){let ge=new vto(ae);ge.origin.indexOf("//")!==-1?t.host=ge.protocol+"//"+X.domain:t.host=ge.protocol+X.domain}else t.host=null;t.owner=t.owner||X.user||"",t.repository=t.repository||X.project,X.host&&X.project&&X.user?t.repoUrl=ae:t.repoUrl=t.host}t.packageData=T}if(t.version=t.version||"",B.status==="fulfilled"){le=t.gitSemverTags=B.value,O=le[e.releaseCount-1];let ae=le[0];(ae===t.version||ae==="v"+t.version)&&(e.outputUnreleased?t.version="Unreleased":e.outputUnreleased=!1)}if(typeof e.outputUnreleased!="boolean"&&(e.outputUnreleased=!0),t.host&&(!t.issue||!t.commit||!s||!s.referenceActions)){let ae;if(t.host){let ge=t.host.match(Sto);ge&&(ae=ge[0])}else X&&X.type&&(ae=X.type);if(ae){switch(ae){case"gitlab":U=xyn;break;case"bitbucket":U=kyn;break;default:U=Dyn;break}t={issue:U.issue,commit:U.commit,...t}}else e.warn('Host: "'+t.host+'" does not exist'),U={}}else U={};return t.resetChangelog&&(O=null),r={format:"%B%n-hash-%n%H%n-gitTags-%n%d%n-committerDate-%n%ci",from:O,merges:!1,debug:e.debug,...k.commits,...r},e.append&&(r.reverse=r.reverse||!0),s={...k.parser,warn:e.warn,...s},U.referenceActions&&s&&(s.referenceActions=U.referenceActions),!s.issuePrefixes?.length&&U.issuePrefixes&&(s.issuePrefixes=U.issuePrefixes),a={finalizeContext:function(ae,ge,fe,pe,he){let be=he[0],Te=he[he.length-1],ke=be?be.hash:null,x=Te?Te.hash:null;if((!ae.currentTag||!ae.previousTag)&&pe){let et=/tag:\s*(.+?)[,)]/gi.exec(pe.gitTags),Ue=ae.currentTag;ae.currentTag=Ue||et?et[1]:null;let Je=le.indexOf(ae.currentTag);Je===-1?ae.currentTag=Ue||null:(ae.previousTag=le[Je+1])||(e.append?ae.previousTag=ae.previousTag||ke:ae.previousTag=ae.previousTag||x)}else ae.previousTag=ae.previousTag||le[0],ae.version==="Unreleased"?e.append?ae.currentTag=ae.currentTag||x:ae.currentTag=ae.currentTag||ke:ae.currentTag||(e.lernaPackage?ae.currentTag=e.lernaPackage+"@"+ae.version:e.tagPrefix?ae.currentTag=e.tagPrefix+ae.version:ae.currentTag=Tto(le[0],ae.version));return typeof ae.linkCompare!="boolean"&&ae.previousTag&&ae.currentTag&&(ae.linkCompare=!0),ae},debug:e.debug,...k.writer,reverse:e.append,doFlush:e.outputUnreleased,...a},{options:e,context:t,gitRawCommitsOpts:r,parserOpts:s,writerOpts:a,gitRawExecOpts:o}}function n7t(e,t,r,s,a,o){let g=e?.cwd;a=a||{};let p=new _bn({objectMode:a.includeDetails});p._read=function(){};let f=!1,m=new _bn({objectMode:!0});m._read=function(){};function y(B,v){return x8t({...r,from:B,to:v,cwd:g}).on("error",function(k){f||(setImmediate(m.emit.bind(m),"error",k),f=!0)})}return r7t(e,t,r,s,a,o).then(function(B){e=B.options,t=B.context,r=B.gitRawCommitsOpts,s=B.parserOpts,a=B.writerOpts,o=B.gitRawExecOpts;try{Dto("git",["rev-parse","--verify","HEAD"],{cwd:g,stdio:"ignore"});let v=t.gitSemverTags.slice(0).reverse();v.push("HEAD"),r.from&&(v.indexOf(r.from)!==-1?v=v.slice(v.indexOf(r.from)):v=[r.from,"HEAD"]);let k=v.map((T,O)=>{let X=O>0?v[O-1]:"";return y(X,T)});r.from&&(k=k.splice(1)),r.reverse&&k.reverse(),k.reduce((T,O)=>O.pipe((0,bbn.default)(T))).on("data",function(T){setImmediate(m.emit.bind(m),"data",T)}).on("end",function(){setImmediate(m.emit.bind(m),"end")})}catch{m=x8t({...r,...o})}m.on("error",function(v){v.message="Error in git-raw-commits: "+v.message,setImmediate(p.emit.bind(p),"error",v)}).pipe(w8t(s)).on("error",function(v){v.message="Error in conventional-commits-parser: "+v.message,setImmediate(p.emit.bind(p),"error",v)}).pipe(new ybn({objectMode:!0,highWaterMark:16,transform(v,k,T){try{e.transform.call(this,v,T)}catch(O){T(O)}}})).on("error",function(v){v.message="Error in options.transform: "+v.message,setImmediate(p.emit.bind(p),"error",v)}).pipe(G0n(t,a,a.includeDetails)).on("error",function(v){v.message="Error in conventional-changelog-writer: "+v.message,setImmediate(p.emit.bind(p),"error",v)}).pipe(new ybn({objectMode:a.includeDetails,transform(v,k,T){try{p.push(v)}catch(O){setImmediate(function(){throw O})}T()},flush(v){p.push(null),v()}}))}).catch(function(B){setImmediate(p.emit.bind(p),"error",B)}),p}import xto from"path";function kto(e){if(xto.isAbsolute(e))return[e];let t="",r=e.toLocaleLowerCase();if(e.startsWith("@")){let a=e.split("/");if(t=`${a.shift()}/`,t==="@conventional-changelog/")return[e];r=a.join("/")}r.startsWith("conventional-changelog-")||(r=`conventional-changelog-${r}`);let s=`${t}${r}`;return s!==e?[s,e]:[e]}function Gto(e){return("__esModule"in e||Object.getPrototypeOf(e)===null)&&"default"in e?e.default:e}async function Fto(e,t){let r=null;for(let s of t)try{return Gto(await e(s))}catch(a){r||(r=a)}throw r}function Zto(e){return async function(r){let s="",a=null;if(typeof r=="string")s=r;else if(typeof r=="object"&&typeof r.name=="string")s=r.name,a=r;else throw Error("Preset must be string or object with property `name`");let o=kto(s),g=null;try{g=await Fto(e,o)}catch(p){throw new Error(`Unable to load the "${s}" preset. Please make sure it's installed.`,{cause:p})}if(typeof g!="function")throw new Error(`The "${s}" preset does not export a function. Maybe you are using an old version of the preset. Please upgrade.`);return a?await g(a):await g()}}var Ebn=Zto(e=>import(e));function i7t(e,t,r,s,a){if(e.warn=e.warn||function(){},e.preset)try{e.config=Ebn(e.preset)}catch(o){typeof e.preset=="object"?e.warn(`Preset: "${e.preset.name}" ${o.message}`):typeof e.preset=="string"?e.warn(`Preset: "${e.preset}" ${o.message}`):e.warn(`Preset: ${o.message}`)}return n7t(e,t,r,s,a)}function Bbn(){return{headerPattern:/^(\w*)(?:\((.*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],noteKeywords:["BREAKING CHANGE"],revertPattern:/^(?:Revert|revert:)\s"?([\s\S]+?)"?\s*This reverts commit (\w{7,40})\b/i,revertCorrespondence:["header","hash"]}}var kbn=vt(s7t(),1);async function Gbn(){let e=` {{> header}} {{#each commitGroups}} @@ -1860,136 +1860,136 @@ ${Shn(g)}`),g}async function B0n(e={}){let t=` {{/each}} {{/if}} -`,a=Gto();return a.mainTemplate=e,a.headerPartial=t,a.commitPartial=r,a.footerPartial=s,a}function Gto(){return{transform:(e,t)=>{let r=!0,s=e.notes.map(y=>(r=!1,{...y,title:"BREAKING CHANGES"})),a=e.type;if(e.type==="feat")a="Features";else if(e.type==="fix")a="Bug Fixes";else if(e.type==="perf")a="Performance Improvements";else if(e.type==="revert"||e.revert)a="Reverts";else{if(r)return;e.type==="docs"?a="Documentation":e.type==="style"?a="Styles":e.type==="refactor"?a="Code Refactoring":e.type==="test"?a="Tests":e.type==="build"?a="Build System":e.type==="ci"&&(a="Continuous Integration")}let o=e.scope==="*"?"":e.scope,g=typeof e.hash=="string"?e.hash.substring(0,7):e.shortHash,p=[],f=e.subject;if(typeof f=="string"){let y=t.repository?`${t.host}/${t.owner}/${t.repository}`:t.repoUrl;y&&(y=`${y}/issues/`,f=f.replace(/#([0-9]+)/g,(B,v)=>(p.push(v),`[#${v}](${y}${v})`))),t.host&&(f=f.replace(/\B@([a-z0-9](?:-?[a-z0-9/]){0,38})/g,(B,v)=>v.includes("/")?`@${v}`:`[@${v}](${t.host}/${v})`))}let m=e.references.filter(y=>!p.includes(y.issue));return{notes:s,type:a,scope:o,shortHash:g,subject:f,references:m}},groupBy:"type",commitGroupsSort:"title",commitsSort:["scope","subject"],noteGroupsSort:"title",notesSort:wbn.default}}function Nbn(e){let t=2,r=0,s=0;return e.forEach(a=>{a.notes.length>0?(r+=a.notes.length,t=0):a.type==="feat"&&(s+=1,t===2&&(t=1))}),{level:t,reason:r===1?`There is ${r} BREAKING CHANGE and ${s} features`:`There are ${r} BREAKING CHANGES and ${s} features`}}async function n7t(){return{parser:mbn(),writer:await Tbn(),whatBump:Nbn}}var YEe=class{async generate({path:t,packageName:r,debug:s,tagPrefix:a,file:o,releaseCount:g}){let p={lernaPackage:`${r}`,tagPrefix:a,debug:s?console.debug:void 0,warn:console.warn,append:!0,releaseCount:g,pkg:{path:Rbn(t,"package.json")},config:n7t};return o?this.generateToFile(p,t):this.generateToStdOut(p)}async generateToStdOut(t){return new Promise((r,s)=>{let a=t7t(t,void 0,{path:Lto(t.pkg?.path??"./")}),o="";a.on("data",g=>{o+=g.toString()}),a.on("end",()=>{r(o)}),a.on("error",g=>{s(g)})})}async generateToFile(t,r){let s=Rbn(r,"CHANGELOG.md");try{let a=await this.generateToStdOut(t),o="";try{o=await Fto(s,"utf8")}catch(p){let f=p;if(f.code!=="ENOENT")throw f}let g=o?`${a} -${o}`:a;return await Zto(s,g,"utf8"),g}catch(a){throw console.error("Error generating changelog:",a),a}}};var Jat=class extends Dbn.BaseCommand{static paths=[["changelog","generate"]];debug=ed.Boolean("--debug");tagPrefix=ed.String("-t,--tag-prefix");stdOut=ed.Boolean("--stdout",!1);async execute(){let t=await kbn.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await Fbn.Project.find(t,this.context.cwd);if(!s)throw new xbn.WorkspaceRequiredError(r.cwd,this.context.cwd);let a;return(await Gbn.StreamReport.start({stdout:this.context.stdout,configuration:t},async g=>{await g.startTimerPromise("Generating changelog",async()=>{let p="";s.manifest.name?.scope&&(p+=`@${s.manifest.name?.scope}/`),p+=`${s.manifest.name?.name}`;let f=Vto(r.cwd,this.context.cwd);a=await new YEe().generate({path:f,packageName:p,debug:this.debug,file:!this.stdOut,tagPrefix:this.tagPrefix}),this.stdOut&&console.log(a)})})).exitCode()}};var Zbn={commands:[Jat]};var s7t={};jf(s7t,{CheckCommand:()=>BWe,default:()=>Vbn});var Lbn=xt(nl(),1),BWe=class extends Lbn.BaseCommand{static paths=[["check"]];async execute(){await this.cli.run(["format"]),await this.cli.run(["typecheck"]),await this.cli.run(["lint"])}};var Vbn={commands:[BWe]};var cir={};jf(cir,{ChecksLintCommand:()=>dOe,ChecksTestIntegrationCommand:()=>IOe,ChecksTestUnitCommand:()=>COe,ChecksTypeCheckCommand:()=>_Oe,default:()=>hPn});var i3n=xt(nl(),1),s3n=xt(Bn(),1),Vnr=xt(Bn(),1),o3n=xt(Bn(),1),Wnr=xt(Bn(),1),Pnr=xt(Ro(),1),a3n=xt(tct(),1),c3n=xt(Bn(),1),l3n=xt(Bn(),1),u3n=xt(Ro(),1),g3n=xt(Fs(),1);import{readFileSync as XRo}from"node:fs";var Pjt=xt(Dc(),1),eie=xt(Dc(),1),_k=xt(Fs(),1);var Ljt=xt(Dc(),1),Vjt=xt(Fs(),1),PO=({children:e,line:t=0,column:r=0})=>Vjt.default.createElement(Ljt.Text,{color:"cyan"},e,Vjt.default.createElement(Ljt.Text,{color:"yellow"},":",t,":",r));var hBn=xt(Dc(),1),_Bn=xt(Fs(),1),DD=({offset:e=0})=>_Bn.default.createElement(hBn.Text,{color:"gray"},Array.from({length:process.stdout.columns-e},()=>"\u2500").join(""));var EBn=xt(tct(),1),BBn=xt(Dc(),1);import Wjt from"node:process";import soo from"node:os";import yBn from"node:tty";function OO(e,t=globalThis.Deno?globalThis.Deno.args:Wjt.argv){let r=e.startsWith("-")?"":e.length===1?"-":"--",s=t.indexOf(r+e),a=t.indexOf("--");return s!==-1&&(a===-1||s=2,has16m:e>=3}}function coo(e,{streamIsTTY:t,sniffFlags:r=!0}={}){let s=ooo();s!==void 0&&(Vct=s);let a=r?Vct:s;if(a===0)return 0;if(r){if(OO("color=16m")||OO("color=full")||OO("color=truecolor"))return 3;if(OO("color=256"))return 2}if("TF_BUILD"in iB&&"AGENT_NAME"in iB)return 1;if(e&&!t&&a===void 0)return 0;let o=a||0;if(iB.TERM==="dumb")return o;if(Wjt.platform==="win32"){let g=soo.release().split(".");return Number(g[0])>=10&&Number(g[2])>=10586?Number(g[2])>=14931?3:2:1}if("CI"in iB)return"GITHUB_ACTIONS"in iB||"GITEA_ACTIONS"in iB?3:["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(g=>g in iB)||iB.CI_NAME==="codeship"?1:o;if("TEAMCITY_VERSION"in iB)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(iB.TEAMCITY_VERSION)?1:0;if(iB.COLORTERM==="truecolor"||iB.TERM==="xterm-kitty")return 3;if("TERM_PROGRAM"in iB){let g=Number.parseInt((iB.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(iB.TERM_PROGRAM){case"iTerm.app":return g>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(iB.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(iB.TERM)||"COLORTERM"in iB?1:o}function Wct(e,t={}){let r=coo(e,{streamIsTTY:e&&e.isTTY,...t});return aoo(r)}var EJc={stdout:Wct({isTTY:yBn.isatty(1)}),stderr:Wct({isTTY:yBn.isatty(2)})};var vBn=xt(Fs(),1),{level:loo}=Wct({isTTY:!0})||{level:0},bBn=loo>=1,uoo=(e,t,r,s)=>(0,EBn.codeFrameColumns)(e,{start:{column:r,line:t}},{highlightCode:bBn,forceColor:bBn,message:s}),MO=({children:e,line:t,column:r,message:s})=>vBn.default.createElement(BBn.Text,null,uoo(e,t,r,s));var SBn=({filePath:e,message:t,source:r})=>_k.default.createElement(eie.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:"100%"},_k.default.createElement(eie.Box,{marginBottom:1,marginTop:1,marginX:2},_k.default.createElement(eie.Box,{flexDirection:"row",flexGrow:1},_k.default.createElement(PO,{line:t.line,column:t.column},e)),_k.default.createElement(eie.Box,null,_k.default.createElement(Pjt.Text,{color:"gray"}," ",t.ruleId))),_k.default.createElement(eie.Box,null,_k.default.createElement(DD,{offset:2})),!!r&&_k.default.createElement(_k.default.Fragment,null,_k.default.createElement(eie.Box,{marginBottom:1},_k.default.createElement(MO,{line:t.line,column:t.column},r)),_k.default.createElement(DD,{offset:2})),_k.default.createElement(eie.Box,{marginBottom:1,marginTop:1,marginX:2},_k.default.createElement(Pjt.Text,{color:"white"}," ",t.message)));var NBn=xt(Dc(),1);import{isAbsolute as doo}from"node:path";import{relative as poo}from"node:path";import{webcrypto as TBn}from"node:crypto";var wBn="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var goo=128,nde,l1e;function Aoo(e){!nde||nde.lengthnde.length&&(TBn.getRandomValues(nde),l1e=0),l1e+=e}function SW(e=21){Aoo(e-=0);let t="";for(let r=l1e-e;r{let a=(0,RBn.useMemo)(()=>doo(e)?poo(s,e):e,[e]);return r.length===0?null:Ojt.default.createElement(NBn.Box,{flexDirection:"column",width:"100%"},r.map(o=>Ojt.default.createElement(SBn,{key:SW(),filePath:a,message:o,source:t})))};import Koo from"node:events";import{readFileSync as joo}from"node:fs";import{readFile as zoo}from"node:fs/promises";import{writeFile as qoo}from"node:fs/promises";import{relative as $oo}from"node:path";import{join as pvn}from"node:path";var tvn=xt(mHt(),1),m3e=xt(Rbe(),1),C3e=xt(VBn(),1);import Poo from"node:fs";import Ooo from"node:path";var zjt=xt(Rbe(),1),UBn=xt(Oct(),1);import Zoo from"node:process";import JBn from"node:fs";import g1e from"node:path";function u1e(e){let t=/^\\\\\?\\/.test(e),r=/[^\u0000-\u0080]+/.test(e);return t||r?e:e.replace(/\\/g,"/")}import{fileURLToPath as Goo}from"node:url";import{Transform as Foo}from"node:stream";var I3e=e=>e instanceof URL?Goo(e):e,Mct=class extends Foo{constructor(t){super({objectMode:!0,transform(r,s,a){a(void 0,t(r)?r:void 0)}})}},Qct=e=>e[0]==="!";var KBn={ignore:["**/node_modules","**/flow-typed","**/coverage","**/.git"],absolute:!0,dot:!0},jBn="**/.gitignore",Loo=(e,t)=>Qct(e)?"!"+g1e.posix.join(t,e.slice(1)):g1e.posix.join(t,e),Voo=(e,t)=>{let r=u1e(g1e.relative(t,g1e.dirname(e.filePath)));return e.content.split(/\r?\n/).filter(s=>s&&!s.startsWith("#")).map(s=>Loo(s,r))},Woo=(e,t)=>{if(t=u1e(t),g1e.isAbsolute(e)){if(u1e(e).startsWith(t))return g1e.relative(t,e);throw new Error(`Path ${e} is not in cwd ${t}`)}return e},zBn=(e,t)=>{let r=e.flatMap(a=>Voo(a,t)),s=(0,UBn.default)().add(r);return a=>(a=I3e(a),a=Woo(a,t),a?s.ignores(u1e(a)):!1)},qBn=(e={})=>({cwd:I3e(e.cwd)||Zoo.cwd(),suppressErrors:!!e.suppressErrors,deep:typeof e.deep=="number"?e.deep:Number.POSITIVE_INFINITY}),$Bn=async(e,t)=>{let{cwd:r,suppressErrors:s,deep:a}=qBn(t),o=await(0,zjt.default)(e,{cwd:r,suppressErrors:s,deep:a,...KBn}),g=await Promise.all(o.map(async p=>({filePath:p,content:await JBn.promises.readFile(p,"utf8")})));return zBn(g,r)},evn=(e,t)=>{let{cwd:r,suppressErrors:s,deep:a}=qBn(t),g=zjt.default.sync(e,{cwd:r,suppressErrors:s,deep:a,...KBn}).map(p=>({filePath:p,content:JBn.readFileSync(p,"utf8")}));return zBn(g,r)};var Moo=e=>{if(e.some(t=>typeof t!="string"))throw new TypeError("Patterns must be a string or an array of strings")},qjt=e=>(e=[...new Set([e].flat())],Moo(e),e),Qoo=e=>{if(!e.cwd)return;let t;try{t=Poo.statSync(e.cwd)}catch{return}if(!t.isDirectory())throw new Error("The `cwd` option must be a path to a directory")},rvn=(e={})=>(e={...e,ignore:e.ignore||[],expandDirectories:e.expandDirectories===void 0?!0:e.expandDirectories,cwd:I3e(e.cwd)},Qoo(e),e),nvn=e=>async(t,r)=>e(qjt(t),rvn(r)),Yct=e=>(t,r)=>e(qjt(t),rvn(r)),ivn=e=>{let{ignoreFiles:t,gitignore:r}=e,s=t?qjt(t):[];return r&&s.push(jBn),s},Yoo=async e=>{let t=ivn(e);return ovn(t.length>0&&await $Bn(t,e))},svn=e=>{let t=ivn(e);return ovn(t.length>0&&evn(t,e))},ovn=e=>{let t=new Set;return r=>{let s=r.path||r,a=Ooo.normalize(s),o=t.has(a)||e&&e(s);return t.add(a),!o}},avn=(e,t)=>e.flat().filter(r=>t(r)),Hoo=(e,t)=>(0,tvn.default)(e).pipe(new Mct(r=>t(r))),cvn=(e,t)=>{let r=[];for(;e.length>0;){let s=e.findIndex(o=>Qct(o));if(s===-1){r.push({patterns:e,options:t});break}let a=e[s].slice(1);for(let o of r)o.options.ignore.push(a);s!==0&&r.push({patterns:e.slice(0,s),options:{...t,ignore:[...t.ignore,a]}}),e=e.slice(s+1)}return r},lvn=(e,t)=>({...t?{cwd:t}:{},...Array.isArray(e)?{files:e}:e}),uvn=async(e,t)=>{let r=cvn(e,t),{cwd:s,expandDirectories:a}=t;if(!a)return r;let o=lvn(a,s),g=s?{cwd:s}:void 0;return Promise.all(r.map(async p=>{let{patterns:f,options:m}=p;return[f,m.ignore]=await Promise.all([(0,C3e.default)(f,o),(0,C3e.default)(m.ignore,g)]),{patterns:f,options:m}}))},$jt=(e,t)=>{let r=cvn(e,t),{cwd:s,expandDirectories:a}=t;if(!a)return r;let o=lvn(a,s),g=s?{cwd:s}:void 0;return r.map(p=>{let{patterns:f,options:m}=p;return f=C3e.default.sync(f,o),m.ignore=C3e.default.sync(m.ignore,g),{patterns:f,options:m}})},Gj=nvn(async(e,t)=>{let[r,s]=await Promise.all([uvn(e,t),Yoo(t)]),a=await Promise.all(r.map(o=>(0,m3e.default)(o.patterns,o.options)));return avn(a,s)}),gvn=Yct((e,t)=>{let r=$jt(e,t),s=svn(t),a=r.map(o=>m3e.default.sync(o.patterns,o.options));return avn(a,s)}),uUc=Yct((e,t)=>{let r=$jt(e,t),s=svn(t),a=r.map(o=>m3e.default.stream(o.patterns,o.options));return Hoo(a,s)}),gUc=Yct((e,t)=>e.some(r=>m3e.default.isDynamicPattern(r,t))),AUc=nvn(uvn),dUc=Yct($jt);var fvn=xt(Oct(),1);import{join as Xoo}from"node:path";var Avn=[".c9",".pnp.js",".pnp.cjs",".pnp.loader.mjs",".pnp-ts.loader.mjs",".git","node_modules","coverage","bundles","dist","gen","lib",".yarn",".vscode",".next","**/**/dist/*","**/**/lib/*","**/**/build/*","**/**/.cache/*","**/**/bundles/*","**/**/templates/*.yaml","**/templates/*.yaml","**/types/**",".terraform",".idea","yarn.mjs"],Joo=["./**/*.{js,mjs,cjs,jsx,ts,tsx}"],Uoo=["!**/node_modules/**","!./node_modules/**","!**/.{git,svn,hg}/**","!./.{git,svn,hg}/**","!**/.yarn/**","!./.yarn/**","!**/gen/**","!**/.idea/**"],dvn=e=>[...Joo.map(t=>Xoo(e,t)),...Uoo];var ezt=(e,t,r)=>({filePath:e,source:t,messages:r,fixableErrorCount:0,fixableWarningCount:0,usedDeprecatedRules:[],suppressedMessages:[],errorCount:r.filter(s=>s.severity===1).length,fatalErrorCount:r.filter(s=>s.fatal).length,warningCount:r.filter(s=>s.severity===2).length});var A1e=class e extends Koo{constructor(r,s,a,o){super();this.linter=r;this.cacheLinter=s;this.config=a;this.cwd=o;this.ignore=fvn.default.default().add(Avn).add(this.getProjectIgnorePatterns())}ignore;static async initialize(r,s){let{Linter:a,ESLint:o}=await import("@atls/code-runtime/eslint"),{eslintconfig:g}=await import("@atls/code-runtime/eslint"),p=new a({configType:"flat"}),f=g.map(y=>({...y,languageOptions:{...y.languageOptions||{},parserOptions:{...y.languageOptions?.parserOptions||{},tsconfigRootDir:r}}})),m=new o({cache:!0,baseConfig:f,overrideConfigFile:!0,cwd:s,cacheLocation:pvn(r,".config/eslint/.eslintcache")});return new e(p,m,f,s)}async lintFile(r,s){let a=await zoo(r,"utf8");if(s?.fix){let{messages:o,fixed:g,output:p}=this.linter.verifyAndFix(a,this.config,{filename:r});return g&&await qoo(r,p,"utf8"),ezt(r,p,o)}return ezt(r,a,this.linter.verify(a,this.config,{filename:r}))}async lintFiles(r=[],s){let a=[];this.emit("start",{files:r});for await(let o of r){this.emit("lint:start",{file:o});let g=await this.lintFile(o,s);a.push(g),this.emit("lint:end",{result:g})}return this.emit("end",{results:a}),a}async lint(r,s){let o=(r&&r.length>0?r:await Gj(dvn(this.cwd),{dot:!0})).filter(g=>this.ignore.filter([$oo(this.cwd,g)]).length!==0);return s?.cache?this.lintWithCache(o):this.lintFiles(o,s)}async lintWithCache(r=[]){this.emit("start",{files:r});let s=await this.cacheLinter?.lintFiles(r);for(let a of s)this.emit("lint:end",{result:a});return this.emit("end",{results:s}),s}getProjectIgnorePatterns(){let r=joo(pvn(this.cwd,"package.json"),"utf-8"),{linterIgnorePatterns:s=[]}=JSON.parse(r);return s}};var Ivn=xt(Dc(),1);import{EventEmitter as eao}from"node:events";var Hct=class extends eao{frames=[];get columns(){return process.stdout.columns||160}write=t=>{this.frames.push(t)}},ky=e=>{let t=new Hct,r=new Hct,{cleanup:s}=(0,Ivn.render)(e,{stdout:t,stderr:r,debug:!0,exitOnCtrlC:!1,patchConsole:!1});return s(),[...t.frames,...r.frames].join(` -`)};var n3n=xt(z2e(),1),jde=xt(z2e(),1);var oM=class{constructor(t){this.name=t;if(process.env.GITHUB_TOKEN==null)throw new Error("GITHUB_TOKEN is not defined");this.octokit=(0,n3n.getOctokit)(process.env.GITHUB_TOKEN)}octokit;async create(t){return(await this.octokit.rest.checks.create(t)).data}async start(){let{payload:t}=jde.context;return this.create({...jde.context.repo,name:this.name,head_sha:t.after||t.pull_request?.head.sha||process.env.GITHUB_SHA,started_at:new Date().toISOString(),status:"in_progress"})}async complete(t,r){let{payload:s}=jde.context;return this.create({...jde.context.repo,check_run_id:t,name:this.name,head_sha:s.after||s.pull_request?.head.sha||process.env.GITHUB_SHA,completed_at:new Date().toISOString(),status:"completed",conclusion:r.annotations.length>0?"failure":"success",output:r.annotations?.length>50?{...r,annotations:r.annotations.slice(0,50)}:r})}async failure(t){let{payload:r}=jde.context;return this.create({...jde.context.repo,name:this.name,head_sha:r.after||r.pull_request?.head.sha||process.env.GITHUB_SHA,completed_at:new Date().toISOString(),status:"completed",conclusion:"failure",output:t.annotations&&t.annotations.length>50?{...t,annotations:t.annotations.slice(0,50)}:t})}};var dOe=class extends i3n.BaseCommand{static paths=[["checks","lint"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(Pnr.Filename.pnpCjs)&&t.includes(Pnr.Filename.pnpEsmLoader)?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await Vnr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Wnr.Project.find(t,this.context.cwd),s=await u3n.xfs.mktempPromise(),{code:a}=await c3n.execUtils.pipevp("yarn",["checks","lint"],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:await l3n.scriptUtils.makeScriptEnv({binFolder:s,project:r})});return a}async executeRegular(){let t=await Vnr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Wnr.Project.find(t,this.context.cwd);return(await s3n.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{let o=new oM("Lint"),{id:g}=await o.start();await a.startTimerPromise("Lint",async()=>{try{let f=await(await A1e.initialize(r.cwd,this.context.cwd)).lint();f.filter(v=>v.messages.length>0).forEach(v=>{ky(g3n.default.createElement(DBn,{...v})).split(` -`).forEach(T=>{a.reportInfo(o3n.MessageName.UNNAMED,T)})});let m=this.formatResults(f,r.cwd),y=m.filter(v=>v.annotation_level==="warning").length,B=m.filter(v=>v.annotation_level==="failure").length;await o.complete(g,{title:m.length>0?`Errors ${B}, Warnings ${y}`:"Successful",summary:m.length>0?`Found ${B} errors and ${y} warnings`:"All checks passed",annotations:m})}catch(p){await o.failure({title:"Lint run failed",summary:p instanceof Error?p.message:p})}})})).exitCode()}getAnnotationLevel(t){return t===1?"warning":"failure"}formatResults(t,r){return t.filter(s=>s.messages?.length>0).map(({filePath:s,messages:a=[]})=>a.map(o=>{let g=(o.line||0)+1;return{path:r?s.substring(r.length+1):s,start_line:g,end_line:g,annotation_level:this.getAnnotationLevel(o.severity),raw_details:(0,a3n.codeFrameColumns)(XRo(s).toString(),{start:{line:o.line||0,column:o.column||0}},{highlightCode:!1}),title:`(${o.ruleId||"unknown"}): ${o.message}`,message:o.message}})).flat()}};var T3n=xt(nl(),1),Hnr=xt(Bn(),1),Xnr=xt(Bn(),1),Jnr=xt(Ro(),1),N3n=xt(Bn(),1),R3n=xt(Bn(),1),D3n=xt(Ro(),1),x3n=xt(Ro(),1);pOe();var Ynr={};jf(Ynr,{FilesChangedListCommand:()=>fOe,default:()=>E3n,getChangedCommmits:()=>I3n,getChangedFiles:()=>cz,getCommitData:()=>f3n,getEventCommmits:()=>p3n,getGithubChangedFiles:()=>C3n});var m3n=xt(nl(),1),h3n=xt(nl(),1),_3n=xt(Bn(),1),y3n=xt(Bn(),1),b3n=xt(Bn(),1);Fl();var az=xt(z2e(),1),Qnr=xt(z2e(),1),d3n=xt(Bn(),1),p3n=async()=>{if(az.context.eventName==="push")return az.context.payload.commits;if(az.context.eventName==="pull_request"&&az.context.payload.pull_request){let e=az.context.payload.pull_request.commits_url;return(0,Qnr.getOctokit)(process.env.GITHUB_TOKEN).paginate(`GET ${e}`,az.context.repo)}return console.log(`Unknown event "${az.context.eventName}". Only "push" and "pull_request" supported.`),[]},f3n=async e=>await(0,Qnr.getOctokit)(process.env.GITHUB_TOKEN).rest.repos.getCommit({...az.context.repo,ref:e}),I3n=async()=>{let e=await p3n();return Promise.all(e.map(async t=>f3n(t.id||t.sha)))},C3n=async()=>(await I3n()).map(t=>t?.data?.files?t.data.files.map(r=>r.filename).filter(Boolean):[]).flat(),cz=async(e,t)=>{if(process.env.GITHUB_EVENT_PATH&&process.env.GITHUB_TOKEN)return C3n();let{stdout:r}=await d3n.execUtils.execvp("git",["diff","--name-only",...t?[t]:[]],{cwd:e.cwd,strict:!0});return r.split(/\r?\n/).filter(Boolean)};var fOe=class extends m3n.BaseCommand{static paths=[["files","changed","list"]];json=ed.Boolean("--json",!1);async execute(){let t=await _3n.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await y3n.Project.find(t,this.context.cwd);if(!s)throw new h3n.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await b3n.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async o=>{let g=await cz(r);for(let p of g)o.reportInfo(null,p),o.reportJson({location:p})})).exitCode()}};var E3n={commands:[fOe]};var B3n=xt(Bn(),1),v3n=e=>{let{project:t}=e,r=new Set,s=({manifest:a})=>{for(let o of B3n.Manifest.hardDependencies)for(let g of a.getForScope(o).values()){let p=t.tryWorkspaceByDescriptor(g);p&&!r.has(p)&&(r.add(p),s(p))}};return s(e),[...r]};var S3n=xt(Bn(),1);var w3n=e=>{let t=new Set;for(let r of e.project.workspaces)v3n(r).some(a=>S3n.structUtils.areLocatorsEqual(a.anchoredLocator,e.anchoredLocator))&&t.add(r);return[...t]};var q2e=(e,t)=>{let r=new Set;for(let s of e.workspaces)if(t.some(o=>o.startsWith(s.relativeCwd))&&!r.has(s)){r.add(s);for(let o of w3n(s))r.add(o)}return[...r]};var ZAt=class extends T3n.BaseCommand{static paths=[["checks","release"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(Jnr.Filename.pnpCjs)&&t.includes(Jnr.Filename.pnpEsmLoader)?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await Hnr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Xnr.Project.find(t,this.context.cwd),s=await x3n.xfs.mktempPromise(),{code:a}=await N3n.execUtils.pipevp("yarn",["checks","release"],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:await R3n.scriptUtils.makeScriptEnv({binFolder:s,project:r})});return a}async executeRegular(){let{project:t}=await Xnr.Project.find(await Hnr.Configuration.find(this.context.cwd,this.context.plugins),this.context.cwd),r=q2e(t,await cz(t)),s=new oM("Release"),{id:a}=await s.start();try{let o=[];for await(let g of r)if(g.manifest.scripts.get("build")){let p=new Jot,f=y=>this.context.stdout.write(y);p.stdout.on("data",f),p.stderr.on("data",f);let m=await this.cli.run(["workspace",g.manifest.raw.name,"build"],p);m>0&&o.push({annotation_level:"failure",title:`Error release workspace ${g.manifest.raw.name??g.relativeCwd}`,message:`Exit code ${m}`,raw_details:oz(p.output),path:D3n.ppath.join(g.relativeCwd,"package.json"),start_line:1,end_line:1}),p.stdout.off("data",f),p.stderr.off("data",f)}await s.complete(a,{title:o.length>0?`Errors ${o.length}`:"Successful",summary:o.length>0?`Found ${o.length} errors`:"All checks passed",annotations:o})}catch(o){await s.failure({title:"Release run failed",summary:o instanceof Error?o.message:o})}return 0}};var k3n=xt(nl(),1),G3n=xt(Bn(),1),F3n=xt(Bn(),1),Z3n=xt(Bn(),1),L3n=xt(Bn(),1),V3n=xt(Bn(),1),LAt=class extends k3n.BaseCommand{static paths=[["checks","run"]];async execute(){let t=await F3n.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await L3n.Project.find(t,this.context.cwd);return(await G3n.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{await Promise.allSettled([this.runCheck(r.cwd,["lint"],a),this.runCheck(r.cwd,["typecheck"],a),this.runCheck(r.cwd,["test","unit"],a),this.runCheck(r.cwd,["test","integration"],a)]),await this.runCheck(r.cwd,["release"],a)})).exitCode()}async runCheck(t,r,s){try{let{stdout:a,stderr:o}=await V3n.execUtils.execvp("yarn",["checks",...r],{cwd:t});this.context.stdout.write(a||o)}catch(a){s.reportError(Z3n.MessageName.UNNAMED,`Run check ${r.join(" ")} error: ${a instanceof Error?a.message:a}`)}}};var O3n=xt(Bn(),1),Unr=xt(Bn(),1),Knr=xt(Bn(),1),WAt=xt(Ro(),1),M3n=xt(Bn(),1),Q3n=xt(Bn(),1),Y3n=xt(Ro(),1),H3n=xt(Ro(),1),X3n=xt(Ro(),1);import{pathToFileURL as qRo}from"node:url";import KRo from"node:events";import{run as W3n}from"node:test";import{tap as jRo}from"node:test/reporters";import{readFile as URo}from"node:fs/promises";var VAt=class{static async load(t){return Promise.all(t.map(async r=>{let s=await URo(r,"utf8");return{file:r,source:s,tests:s.match(/test\(/gm)?.length||0}}))}};var hU=class e extends KRo{constructor(){super()}async run(t,r,s,a=!1,o){if(o==="tap"){let v=W3n({files:t,timeout:r,concurrency:s,watch:a}).compose(jRo);return v.pipe(process.stdout),v.toArray()}let g=await VAt.load(t);this.emit("start",{tests:g});let p=W3n({files:t,timeout:r,concurrency:s,watch:a}),f=v=>{this.emit("test:pass",v)},m=v=>{this.emit("test:fail",v)},y=v=>{this.emit("test:stdout",v)},B=v=>{this.emit("test:stderr",v)};p.on("test:pass",f),p.on("test:fail",m),p.on("test:stdout",y),p.on("test:stderr",B);try{return await p.toArray()}finally{this.emit("end"),p.off("test:pass",f),p.off("test:fail",m),p.off("test:stdout",y),p.off("test:stderr",B)}}static async initialize(){return new e}async unit(t,r){let s=await this.collectTestFiles(t,"unit",r?.files);return this.run(s,25e3,!0,r?.watch,r?.testReporter)}async integration(t,r){let s=await this.collectTestFiles(t,"integration",r?.files);return this.run(s,24e4,!1,r?.watch,r?.testReporter)}async general(t,r){let s=await this.collectTestFiles(t,void 0,r?.files);return this.run(s,24e4,!0,r?.watch,r?.testReporter)}async collectTestFiles(t,r,s){let a="*";return r!==void 0&&(a=r==="unit"?"!(integration)":"integration"),!s||s.length<1?Gj([`**/${a}/*.test.{ts,tsx,js,jsx}`],{cwd:t,dot:!0,absolute:!0,ignore:["**/node_modules/**","**/dist/**","**/.yarn/**"]}):Gj(s.map(o=>this.isFilename(o)?`**/${a}/*${o}*.test.{ts,tsx,js,jsx}`:this.isRootPath(o)?o:`**/${o}`),{cwd:t,dot:!0,absolute:!0,ignore:["**/node_modules/**","**/dist/**","**/.yarn/**"]})}isFilename(t){let r=t.includes("/")||t.includes("\\"),s=/\.(js|jsx|ts|tsx)$/.test(t);return!r&&!s}isRootPath(t){return t.startsWith("/")||t.startsWith("\\")}};var P3n=xt(nl(),1);import{relative as zRo}from"node:path";var $2e=class extends P3n.BaseCommand{formatResults(t,r){return t.map(s=>({path:s.file?zRo(r,s.file):r,start_line:s.column??1,end_line:s.column??1,annotation_level:"failure",raw_details:s.details.error.stack||s.details.error.message,title:s.details.error.message,message:s.details.error.message}))}};var IOe=class extends $2e{static paths=[["checks","test","integration"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(WAt.Filename.pnpCjs)&&t.includes(WAt.Filename.pnpEsmLoader)?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await Unr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Knr.Project.find(t,this.context.cwd),s=await Y3n.xfs.mktempPromise(),a=await Q3n.scriptUtils.makeScriptEnv({binFolder:s,project:r});a.NODE_OPTIONS?.includes("@atls/code-runtime/ts-node-register")||(a.NODE_OPTIONS=`${a.NODE_OPTIONS} --loader @atls/code-runtime/ts-node-register`,a.NODE_OPTIONS=`${a.NODE_OPTIONS} --loader ${qRo(X3n.npath.fromPortablePath(H3n.ppath.join(r.cwd,WAt.Filename.pnpEsmLoader))).href}`,a.NODE_OPTIONS=`${a.NODE_OPTIONS} --loader @atls/code-runtime/ts-ext-register`),a.NODE_OPTIONS?.includes("--enable-source-maps")||(a.NODE_OPTIONS=`${a.NODE_OPTIONS} --enable-source-maps`);let{code:o}=await M3n.execUtils.pipevp("yarn",["checks","test","integration"],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:a});return o}async executeRegular(){let t=await Unr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Knr.Project.find(t,this.context.cwd);return(await O3n.StreamReport.start({stdout:this.context.stdout,configuration:t},async()=>{let a=new oM("Test:Integration"),{id:o}=await a.start();try{let p=await(await hU.initialize()).integration(r.cwd),f=this.formatResults(p.filter(m=>m.type==="test:fail").map(m=>m.data),r.cwd);await a.complete(o,{title:f.length>0?`Errors ${f.length}`:"Successful",summary:f.length>0?`Found ${f.length} errors`:"All checks passed",annotations:f})}catch(g){await a.failure({title:"Test:Integration run failed",summary:g instanceof Error?g.message:g})}})).exitCode()}};var J3n=xt(Bn(),1),jnr=xt(Bn(),1),znr=xt(Bn(),1),PAt=xt(Ro(),1),U3n=xt(Bn(),1),K3n=xt(Bn(),1),j3n=xt(Ro(),1),z3n=xt(Ro(),1),q3n=xt(Ro(),1);import{pathToFileURL as $Ro}from"node:url";var COe=class extends $2e{static paths=[["checks","test","unit"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(PAt.Filename.pnpCjs)&&t.includes(PAt.Filename.pnpEsmLoader)?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await jnr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await znr.Project.find(t,this.context.cwd),s=await j3n.xfs.mktempPromise(),a=await K3n.scriptUtils.makeScriptEnv({binFolder:s,project:r});a.NODE_OPTIONS?.includes("@atls/code-runtime/ts-node-register")||(a.NODE_OPTIONS=`${a.NODE_OPTIONS} --loader @atls/code-runtime/ts-node-register`,a.NODE_OPTIONS=`${a.NODE_OPTIONS} --loader ${$Ro(q3n.npath.fromPortablePath(z3n.ppath.join(r.cwd,PAt.Filename.pnpEsmLoader))).href}`,a.NODE_OPTIONS=`${a.NODE_OPTIONS} --loader @atls/code-runtime/ts-ext-register`),a.NODE_OPTIONS?.includes("--enable-source-maps")||(a.NODE_OPTIONS=`${a.NODE_OPTIONS} --enable-source-maps`);let{code:o}=await U3n.execUtils.pipevp("yarn",["checks","test","unit"],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:a});return o}async executeRegular(){let t=await jnr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await znr.Project.find(t,this.context.cwd);return(await J3n.StreamReport.start({stdout:this.context.stdout,configuration:t},async()=>{let a=new oM("Test:Unit"),{id:o}=await a.start();try{let p=await(await hU.initialize()).unit(r.cwd),f=this.formatResults(p.filter(m=>m.type==="test:fail").map(m=>m.data),r.cwd);await a.complete(o,{title:f.length>0?`Errors ${f.length}`:"Successful",summary:f.length>0?`Found ${f.length} errors`:"All checks passed",annotations:f})}catch(g){await a.failure({title:"Test:Unit run failed",summary:g instanceof Error?g.message:g})}})).exitCode()}};var APn=xt(nl(),1),sir=xt(Bn(),1),oir=xt(Bn(),1),dPn=xt(Bn(),1),pPn=xt(Bn(),1),air=xt(Ro(),1),fPn=xt(tct(),1),IPn=xt(Bn(),1),CPn=xt(Bn(),1),mOe=xt(Ro(),1),hOe=xt(Ro(),1),HAt=xt(QAt(),1),mPn=xt(Fs(),1);import{EOL as YAt}from"node:os";var nir=xt(Dc(),1),zde=xt(Dc(),1),iir=xt(Fs(),1),aPn=xt(QAt(),1),ZF=xt(Fs(),1);import{isAbsolute as eDo}from"node:path";import{relative as tDo}from"node:path";var cPn=({messageText:e,start:t,file:r,code:s,cwd:a=process.cwd()})=>{let o=(0,iir.useMemo)(()=>r?eDo(r.fileName)?tDo(a,r.fileName):r.fileName:null,[r]),g=(0,iir.useMemo)(()=>r&&t?r.getLineAndCharacterOfPosition(t):null,[r,t]);return ZF.default.createElement(zde.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",paddingY:1,width:"100%"},!!o&&ZF.default.createElement(zde.Box,{flexDirection:"row"},ZF.default.createElement(zde.Box,{marginBottom:1,paddingX:2,flexGrow:1},ZF.default.createElement(PO,{line:g?g.line+1:1,column:g?.character},o)),ZF.default.createElement(zde.Box,{paddingX:2},ZF.default.createElement(nir.Text,{bold:!0,color:"red"},"TS",s))),ZF.default.createElement(DD,{offset:2}),!!r?.text&&!!g&&ZF.default.createElement(ZF.default.Fragment,null,ZF.default.createElement(zde.Box,null,ZF.default.createElement(MO,{line:g.line+1,column:g.character},r.text)),ZF.default.createElement(DD,{offset:2})),ZF.default.createElement(zde.Box,{marginTop:1,paddingX:2},ZF.default.createElement(nir.Text,{color:"white"},(0,aPn.flattenDiagnosticMessageText)(e,` -`))))};import rDo from"node:events";import{readFileSync as uPn}from"node:fs";import{join as gPn}from"node:path";var yU={compilerOptions:{lib:["dom","dom.iterable","esnext"],declaration:!1,emitDecoratorMetadata:!0,experimentalDecorators:!0,esModuleInterop:!0,forceConsistentCasingInFileNames:!0,importHelpers:!1,isolatedModules:!1,moduleResolution:"NodeNext",noFallthroughCasesInSwitch:!0,noImplicitAny:!0,noImplicitReturns:!0,noImplicitThis:!0,noUnusedLocals:!1,noUnusedParameters:!1,pretty:!0,removeComments:!0,resolveJsonModule:!0,strict:!0,strictPropertyInitialization:!1,sourceMap:!1,module:"NodeNext",target:"es2022",jsx:"react",outDir:"./dist"},exclude:["**/*/next-env.d.ts","integration","node_modules","src/**/*.spec.ts","src/**/*.test.ts","src/**/*.story.ts","src/**/*.stories.ts","**/*/dist/**/*.ts","**/*/dist/**/*.d.ts","integration/**/*.test.ts",".idea"]};var lPn=e=>t=>{let r=s=>{let{moduleSpecifier:a}=s;if(a&&e.isStringLiteral(a)){if(e.isImportDeclaration(s)&&a.text.endsWith(".jsx"))return t.factory.updateImportDeclaration(s,s.modifiers,s.importClause,t.factory.createStringLiteral(a.text.replace(".jsx",".js")),s.assertClause);if(e.isExportDeclaration(s))return t.factory.updateExportDeclaration(s,s.modifiers,s.isTypeOnly,s.exportClause,t.factory.createStringLiteral(a.text.replace(".jsx",".js")),s.assertClause)}return e.visitEachChild(s,r,t)};return s=>e.visitNode(s,r)};var xie=class e extends rDo{constructor(r,s){super();this.ts=r;this.cwd=s}static async initialize(r){let{ts:s}=await import("@atls/code-runtime/typescript");return new e(s,r)}async check(r=[]){return this.run(r)}async build(r=[],s={}){return this.run(r,s,!1)}async run(r=[],s={},a=!0){let o=this.getProjectIgnorePatterns(),g=this.getLibCheckOption(),p={...yU,compilerOptions:{...yU.compilerOptions,...s,skipLibCheck:g},include:r,exclude:[...yU.exclude,...o]},{fileNames:f,options:m,errors:y}=this.ts.parseJsonConfigFileContent(p,this.ts.sys,this.cwd);if(y.length>0)return this.emit("start",{files:[]}),this.emit("end",{diagnostics:y}),y;this.emit("start",{files:f});let B=this.ts.createProgram(f,{...m,noEmit:a}),v=X=>U=>(this.emit("build:start",{file:U.fileName}),U),G=X=>U=>(this.emit("build:end",{file:U.fileName}),U),T=B.emit(void 0,void 0,void 0,void 0,{before:[v],after:[G,lPn(this.ts)]}),O=this.filterDiagnostics(this.ts.getPreEmitDiagnostics(B).concat(T.diagnostics));return this.emit("end",{diagnostics:O}),O}filterDiagnostics(r){return r.filter(s=>s.code!==2209).filter(s=>!(s.code===1479&&s.file?.fileName.includes("/.yarn/"))).filter(s=>!(s.code===2834&&s.file?.fileName.includes("/.yarn/"))).filter(s=>!(s.code===7016&&s.file?.fileName.includes("/lexical/"))).filter(s=>!(s.code===6133&&s.file?.fileName.includes("/@yarnpkg/libui/"))).filter(s=>!([2315,2411,2304,7006,7016].includes(s.code)&&s.file?.fileName.includes("/@strapi/"))).filter(s=>!([2688,2307,2503].includes(s.code)&&s.file?.fileName.includes("/pkg-tests-core/"))).filter(s=>!([2307].includes(s.code)&&s.file?.fileName.includes("/@nestjs/testing/")))}getProjectIgnorePatterns(){let r=uPn(gPn(this.cwd,"package.json"),"utf-8"),{typecheckIgnorePatterns:s=[]}=JSON.parse(r);return s}getLibCheckOption(){let r=uPn(gPn(this.cwd,"package.json"),"utf-8"),{typecheckSkipLibCheck:s=!1}=JSON.parse(r);return s}};var _Oe=class extends APn.BaseCommand{static paths=[["checks","typecheck"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(air.Filename.pnpCjs)&&t.includes(air.Filename.pnpEsmLoader)?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await sir.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await oir.Project.find(t,this.context.cwd),s=await mOe.xfs.mktempPromise(),{code:a}=await IPn.execUtils.pipevp("yarn",["checks","typecheck"],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:await CPn.scriptUtils.makeScriptEnv({binFolder:s,project:r})});return a}async executeRegular(){let t=await sir.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await oir.Project.find(t,this.context.cwd);return(await dPn.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{let o=new oM("TypeCheck"),{id:g}=await o.start();await a.startTimerPromise("TypeCheck",async()=>{try{let f=await(await xie.initialize(r.cwd)).check(await this.getIncludes(r));f.forEach(y=>{ky(mPn.default.createElement(cPn,{...y})).split(` -`).forEach(v=>{a.reportInfo(pPn.MessageName.UNNAMED,v)})});let m=[];f.forEach(y=>{if(y.file){let B=y.start?y.file.getLineAndCharacterOfPosition(y.start):null;m.push({path:hOe.ppath.normalize(hOe.ppath.relative(r.cwd,y.file.fileName)),title:(0,HAt.flattenDiagnosticMessageText)(y.messageText,YAt).split(YAt).at(0),message:(0,HAt.flattenDiagnosticMessageText)(y.messageText,YAt),start_line:B?B.line+1:0,end_line:B?B.line+1:0,raw_details:B?(0,fPn.codeFrameColumns)(mOe.xfs.readFileSync(y.file.fileName).toString(),{start:{line:B.line+1,column:B.character+1}},{highlightCode:!1}):(0,HAt.flattenDiagnosticMessageText)(y.messageText,YAt),annotation_level:"failure"})}}),await o.complete(g,{title:f.length>0?`Errors ${m.length}`:"Successful",summary:f.length>0?`Found ${m.length} errors`:"All checks passed",annotations:m})}catch(p){await o.failure({title:"TypeCheck run failed",summary:p instanceof Error?p.message:p})}})})).exitCode()}async getIncludes(t){if(await mOe.xfs.existsPromise(hOe.ppath.join(t.cwd,"tsconfig.json"))){let r=await mOe.xfs.readJsonPromise(hOe.ppath.join(t.cwd,"tsconfig.json"));if(r.include&&r.include.length>0)return r.include}return t.topLevelWorkspace.manifest.workspaceDefinitions.map(r=>r.pattern)}};var hPn={commands:[IOe,COe,_Oe,dOe,ZAt,LAt]};var uir={};jf(uir,{beforeWorkspacePacking:()=>lir,default:()=>_Pn});var lir=(e,t)=>{t.name==="@atls/yarn-cli"&&(t.dependencies=new Proxy({},{set:()=>!0}))};var _Pn={hooks:{beforeWorkspacePacking:lir}};var Mcr={};jf(Mcr,{default:()=>w6n});var xHn=xt(nl(),1),kHn=xt(Bn(),1),GHn=xt(Bn(),1);var tMn=xt(BPn(),1);var VPn=xt(ZPn(),1);function LPn(e){let t=[];return new Promise((r,s)=>e.on("data",a=>t.push(a.toString("utf-8"))).on("error",s).on("end",()=>r(t)))}async function WPn(e,t={}){return LPn((0,VPn.default)(e,{cwd:t.cwd}))}import SDo from"path";import bOe from"node:path";import mDo from"node:process";import hDo from"node:path";import Vqc,{promises as PPn}from"node:fs";import{fileURLToPath as _Do}from"node:url";var gir=class{value;next;constructor(t){this.value=t}},yOe=class{#e;#t;#r;constructor(){this.clear()}enqueue(t){let r=new gir(t);this.#e?(this.#t.next=r,this.#t=r):(this.#e=r,this.#t=r),this.#r++}dequeue(){let t=this.#e;if(t)return this.#e=this.#e.next,this.#r--,t.value}peek(){if(this.#e)return this.#e.value}clear(){this.#e=void 0,this.#t=void 0,this.#r=0}get size(){return this.#r}*[Symbol.iterator](){let t=this.#e;for(;t;)yield t.value,t=t.next}};function JAt(e){if(!((Number.isInteger(e)||e===Number.POSITIVE_INFINITY)&&e>0))throw new TypeError("Expected `concurrency` to be a number from 1 and up");let t=new yOe,r=0,s=()=>{r--,t.size>0&&t.dequeue()()},a=async(p,f,m)=>{r++;let y=(async()=>p(...m))();f(y);try{await y}catch{}s()},o=(p,f,m)=>{t.enqueue(a.bind(void 0,p,f,m)),(async()=>(await Promise.resolve(),r0&&t.dequeue()()))()},g=(p,...f)=>new Promise(m=>{o(p,m,f)});return Object.defineProperties(g,{activeCount:{get:()=>r},pendingCount:{get:()=>t.size},clearQueue:{value:()=>{t.clear()}}}),g}var UAt=class extends Error{constructor(t){super(),this.value=t}},IDo=async(e,t)=>t(await e),CDo=async e=>{let t=await Promise.all(e);if(t[1]===!0)throw new UAt(t[0]);return!1};async function Air(e,t,{concurrency:r=Number.POSITIVE_INFINITY,preserveOrder:s=!0}={}){let a=JAt(r),o=[...e].map(p=>[p,a(IDo,p,t)]),g=JAt(s?1:Number.POSITIVE_INFINITY);try{await Promise.all(o.map(p=>g(CDo,p)))}catch(p){if(p instanceof UAt)return p.value;throw p}}var OPn={directory:"isDirectory",file:"isFile"};function yDo(e){if(!Object.hasOwnProperty.call(OPn,e))throw new Error(`Invalid type specified: ${e}`)}var bDo=(e,t)=>t[OPn[e]](),EDo=e=>e instanceof URL?_Do(e):e;async function dir(e,{cwd:t=mDo.cwd(),type:r="file",allowSymlinks:s=!0,concurrency:a,preserveOrder:o}={}){yDo(r),t=EDo(t);let g=s?PPn.stat:PPn.lstat;return Air(e,async p=>{try{let f=await g(hDo.resolve(t,p));return bDo(r,f)}catch{return!1}},{concurrency:a,preserveOrder:o})}U6t();var BDo=Symbol("findUpStop");async function vDo(e,t={}){let r=bOe.resolve(EWe(t.cwd)??""),{root:s}=bOe.parse(r),a=bOe.resolve(r,EWe(t.stopAt??s)),o=t.limit??Number.POSITIVE_INFINITY,g=[e].flat(),p=async m=>{if(typeof e!="function")return dir(g,m);let y=await e(m.cwd);return typeof y=="string"?dir([y],m):y},f=[];for(;;){let m=await p({...t,cwd:r});if(m===BDo||(m&&f.push(bOe.resolve(r,m)),r===a||f.length>=o))break;r=bOe.dirname(r)}return f}async function pir(e,t={}){return(await vDo(e,{...t,limit:1}))[0]}var MPn=wDo;async function wDo(e){let t=await TDo(e);return typeof t!="string"?t:SDo.join(t,"..")}async function TDo(e){let t=await pir(".git",{cwd:e,type:"file"}),r=await pir(".git",{cwd:e,type:"directory"});return t||r}import NDo from"fs/promises";import KAt from"path";import QPn from"fs/promises";async function YPn(e,t){if(typeof t=="string")return KAt.resolve(e,t);let r=KAt.join(e,".git");if((await QPn.lstat(r)).isDirectory())return KAt.join(e,".git/COMMIT_EDITMSG");let o=(await QPn.readFile(r,{encoding:"utf-8"})).replace("gitdir: ","").replace(` -`,"");return KAt.resolve(e,o,"COMMIT_EDITMSG")}async function HPn(e,t){let r=await MPn(e);if(typeof r!="string")throw new TypeError(`Could not find git root from ${e}`);let s=await YPn(r,t);return[`${(await NDo.readFile(s)).toString("utf-8")} -`]}var zOn=xt(cOn(),1);import{Buffer as cko}from"node:buffer";import lko from"node:path";import Xir from"node:child_process";import udt from"node:process";function bir(e){let t=typeof e=="string"?` -`:10,r=typeof e=="string"?"\r":13;return e[e.length-1]===t&&(e=e.slice(0,-1)),e[e.length-1]===r&&(e=e.slice(0,-1)),e}import zAt from"node:process";import EOe from"node:path";import{fileURLToPath as lOn}from"node:url";function jAt(e={}){let{env:t=process.env,platform:r=process.platform}=e;return r!=="win32"?"PATH":Object.keys(t).reverse().find(s=>s.toUpperCase()==="PATH")||"Path"}var UDo=({cwd:e=zAt.cwd(),path:t=zAt.env[jAt()],preferLocal:r=!0,execPath:s=zAt.execPath,addExecPath:a=!0}={})=>{let o=e instanceof URL?lOn(e):e,g=EOe.resolve(o),p=[];return r&&KDo(p,g),a&&jDo(p,s,g),[...p,t].join(EOe.delimiter)},KDo=(e,t)=>{let r;for(;r!==t;)e.push(EOe.join(t,"node_modules/.bin")),r=t,t=EOe.resolve(t,"..")},jDo=(e,t,r)=>{let s=t instanceof URL?lOn(t):t;e.push(EOe.resolve(r,s,".."))},uOn=({env:e=zAt.env,...t}={})=>{e={...e};let r=jAt({env:e});return t.path=e[r],e[r]=UDo(t),e};var zDo=(e,t,r,s)=>{if(r==="length"||r==="prototype"||r==="arguments"||r==="caller")return;let a=Object.getOwnPropertyDescriptor(e,r),o=Object.getOwnPropertyDescriptor(t,r);!qDo(a,o)&&s||Object.defineProperty(e,r,o)},qDo=function(e,t){return e===void 0||e.configurable||e.writable===t.writable&&e.enumerable===t.enumerable&&e.configurable===t.configurable&&(e.writable||e.value===t.value)},$Do=(e,t)=>{let r=Object.getPrototypeOf(t);r!==Object.getPrototypeOf(e)&&Object.setPrototypeOf(e,r)},exo=(e,t)=>`/* Wrapped ${e}*/ -${t}`,txo=Object.getOwnPropertyDescriptor(Function.prototype,"toString"),rxo=Object.getOwnPropertyDescriptor(Function.prototype.toString,"name"),nxo=(e,t,r)=>{let s=r===""?"":`with ${r.trim()}() `,a=exo.bind(null,s,t.toString());Object.defineProperty(a,"name",rxo),Object.defineProperty(e,"toString",{...txo,value:a})};function Eir(e,t,{ignoreNonConfigurable:r=!1}={}){let{name:s}=e;for(let a of Reflect.ownKeys(t))zDo(e,t,a,r);return $Do(e,t),nxo(e,t,s),e}var qAt=new WeakMap,gOn=(e,t={})=>{if(typeof e!="function")throw new TypeError("Expected a function");let r,s=0,a=e.displayName||e.name||"",o=function(...g){if(qAt.set(o,++s),s===1)r=e.apply(this,g),e=null;else if(t.throw===!0)throw new Error(`Function \`${a}\` can only be called once`);return r};return Eir(o,e),qAt.set(o,s),o};gOn.callCount=e=>{if(!qAt.has(e))throw new Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return qAt.get(e)};var AOn=gOn;import dxo from"node:process";import{constants as axo}from"node:os";var dOn=()=>{let e=fOn-pOn+1;return Array.from({length:e},ixo)},ixo=(e,t)=>({name:`SIGRT${t+1}`,number:pOn+t,action:"terminate",description:"Application-specific signal (realtime)",standard:"posix"}),pOn=34,fOn=64;import{constants as sxo}from"node:os";var IOn=[{name:"SIGHUP",number:1,action:"terminate",description:"Terminal closed",standard:"posix"},{name:"SIGINT",number:2,action:"terminate",description:"User interruption with CTRL-C",standard:"ansi"},{name:"SIGQUIT",number:3,action:"core",description:"User interruption with CTRL-\\",standard:"posix"},{name:"SIGILL",number:4,action:"core",description:"Invalid machine instruction",standard:"ansi"},{name:"SIGTRAP",number:5,action:"core",description:"Debugger breakpoint",standard:"posix"},{name:"SIGABRT",number:6,action:"core",description:"Aborted",standard:"ansi"},{name:"SIGIOT",number:6,action:"core",description:"Aborted",standard:"bsd"},{name:"SIGBUS",number:7,action:"core",description:"Bus error due to misaligned, non-existing address or paging error",standard:"bsd"},{name:"SIGEMT",number:7,action:"terminate",description:"Command should be emulated but is not implemented",standard:"other"},{name:"SIGFPE",number:8,action:"core",description:"Floating point arithmetic error",standard:"ansi"},{name:"SIGKILL",number:9,action:"terminate",description:"Forced termination",standard:"posix",forced:!0},{name:"SIGUSR1",number:10,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGSEGV",number:11,action:"core",description:"Segmentation fault",standard:"ansi"},{name:"SIGUSR2",number:12,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGPIPE",number:13,action:"terminate",description:"Broken pipe or socket",standard:"posix"},{name:"SIGALRM",number:14,action:"terminate",description:"Timeout or timer",standard:"posix"},{name:"SIGTERM",number:15,action:"terminate",description:"Termination",standard:"ansi"},{name:"SIGSTKFLT",number:16,action:"terminate",description:"Stack is empty or overflowed",standard:"other"},{name:"SIGCHLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"posix"},{name:"SIGCLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"other"},{name:"SIGCONT",number:18,action:"unpause",description:"Unpaused",standard:"posix",forced:!0},{name:"SIGSTOP",number:19,action:"pause",description:"Paused",standard:"posix",forced:!0},{name:"SIGTSTP",number:20,action:"pause",description:'Paused using CTRL-Z or "suspend"',standard:"posix"},{name:"SIGTTIN",number:21,action:"pause",description:"Background process cannot read terminal input",standard:"posix"},{name:"SIGBREAK",number:21,action:"terminate",description:"User interruption with CTRL-BREAK",standard:"other"},{name:"SIGTTOU",number:22,action:"pause",description:"Background process cannot write to terminal output",standard:"posix"},{name:"SIGURG",number:23,action:"ignore",description:"Socket received out-of-band data",standard:"bsd"},{name:"SIGXCPU",number:24,action:"core",description:"Process timed out",standard:"bsd"},{name:"SIGXFSZ",number:25,action:"core",description:"File too big",standard:"bsd"},{name:"SIGVTALRM",number:26,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGPROF",number:27,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGWINCH",number:28,action:"ignore",description:"Terminal window size changed",standard:"bsd"},{name:"SIGIO",number:29,action:"terminate",description:"I/O is available",standard:"other"},{name:"SIGPOLL",number:29,action:"terminate",description:"Watched event",standard:"other"},{name:"SIGINFO",number:29,action:"ignore",description:"Request for process information",standard:"other"},{name:"SIGPWR",number:30,action:"terminate",description:"Device running out of power",standard:"systemv"},{name:"SIGSYS",number:31,action:"core",description:"Invalid system call",standard:"other"},{name:"SIGUNUSED",number:31,action:"terminate",description:"Invalid system call",standard:"other"}];var Bir=()=>{let e=dOn();return[...IOn,...e].map(oxo)},oxo=({name:e,number:t,description:r,action:s,forced:a=!1,standard:o})=>{let{signals:{[e]:g}}=sxo,p=g!==void 0;return{name:e,number:p?g:t,description:r,supported:p,action:s,forced:a,standard:o}};var cxo=()=>{let e=Bir();return Object.fromEntries(e.map(lxo))},lxo=({name:e,number:t,description:r,supported:s,action:a,forced:o,standard:g})=>[e,{name:e,number:t,description:r,supported:s,action:a,forced:o,standard:g}],COn=cxo(),uxo=()=>{let e=Bir(),t=65,r=Array.from({length:t},(s,a)=>gxo(a,e));return Object.assign({},...r)},gxo=(e,t)=>{let r=Axo(e,t);if(r===void 0)return{};let{name:s,description:a,supported:o,action:g,forced:p,standard:f}=r;return{[e]:{name:s,number:e,description:a,supported:o,action:g,forced:p,standard:f}}},Axo=(e,t)=>{let r=t.find(({name:s})=>axo.signals[s]===e);return r!==void 0?r:t.find(s=>s.number===e)},D$c=uxo();var pxo=({timedOut:e,timeout:t,errorCode:r,signal:s,signalDescription:a,exitCode:o,isCanceled:g})=>e?`timed out after ${t} milliseconds`:g?"was canceled":r!==void 0?`failed with ${r}`:s!==void 0?`was killed with ${s} (${a})`:o!==void 0?`failed with exit code ${o}`:"failed",BOe=({stdout:e,stderr:t,all:r,error:s,signal:a,exitCode:o,command:g,escapedCommand:p,timedOut:f,isCanceled:m,killed:y,parsed:{options:{timeout:B,cwd:v=dxo.cwd()}}})=>{o=o===null?void 0:o,a=a===null?void 0:a;let G=a===void 0?void 0:COn[a].description,T=s&&s.code,X=`Command ${pxo({timedOut:f,timeout:B,errorCode:T,signal:a,signalDescription:G,exitCode:o,isCanceled:m})}: ${g}`,U=Object.prototype.toString.call(s)==="[object Error]",le=U?`${X} +`,a=Oto();return a.mainTemplate=e,a.headerPartial=t,a.commitPartial=r,a.footerPartial=s,a}function Oto(){return{transform:(e,t)=>{let r=!0,s=e.notes.map(y=>(r=!1,{...y,title:"BREAKING CHANGES"})),a=e.type;if(e.type==="feat")a="Features";else if(e.type==="fix")a="Bug Fixes";else if(e.type==="perf")a="Performance Improvements";else if(e.type==="revert"||e.revert)a="Reverts";else{if(r)return;e.type==="docs"?a="Documentation":e.type==="style"?a="Styles":e.type==="refactor"?a="Code Refactoring":e.type==="test"?a="Tests":e.type==="build"?a="Build System":e.type==="ci"&&(a="Continuous Integration")}let o=e.scope==="*"?"":e.scope,g=typeof e.hash=="string"?e.hash.substring(0,7):e.shortHash,p=[],f=e.subject;if(typeof f=="string"){let y=t.repository?`${t.host}/${t.owner}/${t.repository}`:t.repoUrl;y&&(y=`${y}/issues/`,f=f.replace(/#([0-9]+)/g,(B,v)=>(p.push(v),`[#${v}](${y}${v})`))),t.host&&(f=f.replace(/\B@([a-z0-9](?:-?[a-z0-9/]){0,38})/g,(B,v)=>v.includes("/")?`@${v}`:`[@${v}](${t.host}/${v})`))}let m=e.references.filter(y=>!p.includes(y.issue));return{notes:s,type:a,scope:o,shortHash:g,subject:f,references:m}},groupBy:"type",commitGroupsSort:"title",commitsSort:["scope","subject"],noteGroupsSort:"title",notesSort:kbn.default}}function Fbn(e){let t=2,r=0,s=0;return e.forEach(a=>{a.notes.length>0?(r+=a.notes.length,t=0):a.type==="feat"&&(s+=1,t===2&&(t=1))}),{level:t,reason:r===1?`There is ${r} BREAKING CHANGE and ${s} features`:`There are ${r} BREAKING CHANGES and ${s} features`}}async function o7t(){return{parser:Bbn(),writer:await Gbn(),whatBump:Fbn}}var XEe=class{async generate({path:t,packageName:r,debug:s,tagPrefix:a,file:o,releaseCount:g}){let p={lernaPackage:`${r}`,tagPrefix:a,debug:s?console.debug:void 0,warn:console.warn,append:!0,releaseCount:g,pkg:{path:Zbn(t,"package.json")},config:o7t};return o?this.generateToFile(p,t):this.generateToStdOut(p)}async generateToStdOut(t){return new Promise((r,s)=>{let a=i7t(t,void 0,{path:Hto(t.pkg?.path??"./")}),o="";a.on("data",g=>{o+=g.toString()}),a.on("end",()=>{r(o)}),a.on("error",g=>{s(g)})})}async generateToFile(t,r){let s=Zbn(r,"CHANGELOG.md");try{let a=await this.generateToStdOut(t),o="";try{o=await Qto(s,"utf8")}catch(p){let f=p;if(f.code!=="ENOENT")throw f}let g=o?`${a} +${o}`:a;return await Mto(s,g,"utf8"),g}catch(a){throw console.error("Error generating changelog:",a),a}}};var Kat=class extends Lbn.BaseCommand{static paths=[["changelog","generate"]];debug=td.Boolean("--debug");tagPrefix=td.String("-t,--tag-prefix");stdOut=td.Boolean("--stdout",!1);async execute(){let t=await Wbn.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await Obn.Project.find(t,this.context.cwd);if(!s)throw new Vbn.WorkspaceRequiredError(r.cwd,this.context.cwd);let a;return(await Pbn.StreamReport.start({stdout:this.context.stdout,configuration:t},async g=>{await g.startTimerPromise("Generating changelog",async()=>{let p="";s.manifest.name?.scope&&(p+=`@${s.manifest.name.scope}/`),p+=`${s.manifest.name?.name}`;let f=Yto(r.cwd,this.context.cwd);a=await new XEe().generate({path:f,packageName:p,debug:this.debug,file:!this.stdOut,tagPrefix:this.tagPrefix}),this.stdOut&&console.log(a)})})).exitCode()}};var Qbn={commands:[Kat]};var c7t={};zf(c7t,{CheckCommand:()=>SWe,default:()=>Hbn});var Mbn=vt(il(),1),SWe=class extends Mbn.BaseCommand{static paths=[["check"]];async execute(){await this.cli.run(["format"]),await this.cli.run(["typecheck"]),await this.cli.run(["lint"])}};var Hbn={commands:[SWe]};var pir={};zf(pir,{ChecksLintCommand:()=>IOe,ChecksTestIntegrationCommand:()=>hOe,ChecksTestUnitCommand:()=>_Oe,ChecksTypeCheckCommand:()=>EOe,default:()=>wPn});var d3n=vt(il(),1),p3n=vt(Bn(),1),Onr=vt(Bn(),1),f3n=vt(Bn(),1),Qnr=vt(Bn(),1),Mnr=vt(No(),1),I3n=vt(nct(),1),C3n=vt(Bn(),1),m3n=vt(Bn(),1),h3n=vt(No(),1);import{readFileSync as sDo}from"node:fs";var Mjt=vt(xc(),1),rie=vt(xc(),1);var Pjt=vt(xc(),1),Ojt=vt(Ac(),1),MO=({children:e,line:t=0,column:r=0})=>(0,Ojt.jsxs)(Pjt.Text,{color:"cyan",children:[e,(0,Ojt.jsxs)(Pjt.Text,{color:"yellow",children:[":",t,":",r]})]});var TBn=vt(xc(),1),NBn=vt(Ac(),1),GD=({offset:e=0})=>(0,NBn.jsx)(TBn.Text,{color:"gray",children:Array.from({length:process.stdout.columns-e},()=>"\u2500").join("")});var xBn=vt(nct(),1),kBn=vt(xc(),1);import Qjt from"node:process";import moo from"node:os";import RBn from"node:tty";function HO(e,t=globalThis.Deno?globalThis.Deno.args:Qjt.argv){let r=e.startsWith("-")?"":e.length===1?"-":"--",s=t.indexOf(r+e),a=t.indexOf("--");return s!==-1&&(a===-1||s=2,has16m:e>=3}}function yoo(e,{streamIsTTY:t,sniffFlags:r=!0}={}){let s=hoo();s!==void 0&&(Oct=s);let a=r?Oct:s;if(a===0)return 0;if(r){if(HO("color=16m")||HO("color=full")||HO("color=truecolor"))return 3;if(HO("color=256"))return 2}if("TF_BUILD"in sB&&"AGENT_NAME"in sB)return 1;if(e&&!t&&a===void 0)return 0;let o=a||0;if(sB.TERM==="dumb")return o;if(Qjt.platform==="win32"){let g=moo.release().split(".");return Number(g[0])>=10&&Number(g[2])>=10586?Number(g[2])>=14931?3:2:1}if("CI"in sB)return"GITHUB_ACTIONS"in sB||"GITEA_ACTIONS"in sB?3:["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(g=>g in sB)||sB.CI_NAME==="codeship"?1:o;if("TEAMCITY_VERSION"in sB)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(sB.TEAMCITY_VERSION)?1:0;if(sB.COLORTERM==="truecolor"||sB.TERM==="xterm-kitty")return 3;if("TERM_PROGRAM"in sB){let g=Number.parseInt((sB.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(sB.TERM_PROGRAM){case"iTerm.app":return g>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(sB.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(sB.TERM)||"COLORTERM"in sB?1:o}function Qct(e,t={}){let r=yoo(e,{streamIsTTY:e&&e.isTTY,...t});return _oo(r)}var OJc={stdout:Qct({isTTY:RBn.isatty(1)}),stderr:Qct({isTTY:RBn.isatty(2)})};var GBn=vt(Ac(),1),{level:boo}=Qct({isTTY:!0})||{level:0},DBn=boo>=1,Eoo=(e,t,r,s)=>(0,xBn.codeFrameColumns)(e,{start:{column:r,line:t}},{highlightCode:DBn,forceColor:DBn,message:s}),YO=({children:e,line:t,column:r,message:s})=>(0,GBn.jsx)(kBn.Text,{children:Eoo(e,t,r,s)});var AR=vt(Ac(),1),FBn=({filePath:e,message:t,source:r})=>(0,AR.jsxs)(rie.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:"100%",children:[(0,AR.jsxs)(rie.Box,{marginBottom:1,marginTop:1,marginX:2,children:[(0,AR.jsx)(rie.Box,{flexDirection:"row",flexGrow:1,children:(0,AR.jsx)(MO,{line:t.line,column:t.column,children:e})}),(0,AR.jsx)(rie.Box,{children:(0,AR.jsxs)(Mjt.Text,{color:"gray",children:[" ",t.ruleId]})})]}),(0,AR.jsx)(rie.Box,{children:(0,AR.jsx)(GD,{offset:2})}),!!r&&(0,AR.jsxs)(AR.Fragment,{children:[(0,AR.jsx)(rie.Box,{marginBottom:1,children:(0,AR.jsx)(YO,{line:t.line,column:t.column,children:r})}),(0,AR.jsx)(GD,{offset:2})]}),(0,AR.jsx)(rie.Box,{marginBottom:1,marginTop:1,marginX:2,children:(0,AR.jsxs)(Mjt.Text,{color:"white",children:[" ",t.message]})})]});var VBn=vt(xc(),1);import{isAbsolute as Soo}from"node:path";import{relative as woo}from"node:path";import{webcrypto as LBn}from"node:crypto";var ZBn="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var Boo=128,Ade,g1e;function voo(e){!Ade||Ade.lengthAde.length&&(LBn.getRandomValues(Ade),g1e=0),g1e+=e}function wW(e=21){voo(e-=0);let t="";for(let r=g1e-e;r{let a=(0,WBn.useMemo)(()=>Soo(e)?woo(s,e):e,[e]);return r.length===0?null:(0,Hjt.jsx)(VBn.Box,{flexDirection:"column",width:"100%",children:r.map(o=>(0,Hjt.jsx)(FBn,{filePath:a,message:o,source:t},wW()))})};import cao from"node:events";import{readFileSync as lao}from"node:fs";import{readFile as uao}from"node:fs/promises";import{writeFile as gao}from"node:fs/promises";import{relative as Aao}from"node:path";import{join as Evn}from"node:path";var uvn=vt(yHt(),1),y3e=vt(xbe(),1),_3e=vt(JBn(),1);import $oo from"node:fs";import eao from"node:path";var ezt=vt(xbe(),1),nvn=vt(m3e(),1);import Koo from"node:process";import rvn from"node:fs";import d1e from"node:path";function A1e(e){let t=/^\\\\\?\\/.test(e),r=/[^\u0000-\u0080]+/.test(e);return t||r?e:e.replace(/\\/g,"/")}import{fileURLToPath as Joo}from"node:url";import{Transform as Uoo}from"node:stream";var h3e=e=>e instanceof URL?Joo(e):e,Hct=class extends Uoo{constructor(t){super({objectMode:!0,transform(r,s,a){a(void 0,t(r)?r:void 0)}})}},Yct=e=>e[0]==="!";var ivn={ignore:["**/node_modules","**/flow-typed","**/coverage","**/.git"],absolute:!0,dot:!0},svn="**/.gitignore",joo=(e,t)=>Yct(e)?"!"+d1e.posix.join(t,e.slice(1)):d1e.posix.join(t,e),zoo=(e,t)=>{let r=A1e(d1e.relative(t,d1e.dirname(e.filePath)));return e.content.split(/\r?\n/).filter(s=>s&&!s.startsWith("#")).map(s=>joo(s,r))},qoo=(e,t)=>{if(t=A1e(t),d1e.isAbsolute(e)){if(A1e(e).startsWith(t))return d1e.relative(t,e);throw new Error(`Path ${e} is not in cwd ${t}`)}return e},ovn=(e,t)=>{let r=e.flatMap(a=>zoo(a,t)),s=(0,nvn.default)().add(r);return a=>(a=h3e(a),a=qoo(a,t),a?s.ignores(A1e(a)):!1)},avn=(e={})=>({cwd:h3e(e.cwd)||Koo.cwd(),suppressErrors:!!e.suppressErrors,deep:typeof e.deep=="number"?e.deep:Number.POSITIVE_INFINITY}),cvn=async(e,t)=>{let{cwd:r,suppressErrors:s,deep:a}=avn(t),o=await(0,ezt.default)(e,{cwd:r,suppressErrors:s,deep:a,...ivn}),g=await Promise.all(o.map(async p=>({filePath:p,content:await rvn.promises.readFile(p,"utf8")})));return ovn(g,r)},lvn=(e,t)=>{let{cwd:r,suppressErrors:s,deep:a}=avn(t),g=ezt.default.sync(e,{cwd:r,suppressErrors:s,deep:a,...ivn}).map(p=>({filePath:p,content:rvn.readFileSync(p,"utf8")}));return ovn(g,r)};var tao=e=>{if(e.some(t=>typeof t!="string"))throw new TypeError("Patterns must be a string or an array of strings")},tzt=e=>(e=[...new Set([e].flat())],tao(e),e),rao=e=>{if(!e.cwd)return;let t;try{t=$oo.statSync(e.cwd)}catch{return}if(!t.isDirectory())throw new Error("The `cwd` option must be a path to a directory")},gvn=(e={})=>(e={...e,ignore:e.ignore||[],expandDirectories:e.expandDirectories===void 0?!0:e.expandDirectories,cwd:h3e(e.cwd)},rao(e),e),Avn=e=>async(t,r)=>e(tzt(t),gvn(r)),Xct=e=>(t,r)=>e(tzt(t),gvn(r)),dvn=e=>{let{ignoreFiles:t,gitignore:r}=e,s=t?tzt(t):[];return r&&s.push(svn),s},nao=async e=>{let t=dvn(e);return fvn(t.length>0&&await cvn(t,e))},pvn=e=>{let t=dvn(e);return fvn(t.length>0&&lvn(t,e))},fvn=e=>{let t=new Set;return r=>{let s=r.path||r,a=eao.normalize(s),o=t.has(a)||e&&e(s);return t.add(a),!o}},Ivn=(e,t)=>e.flat().filter(r=>t(r)),iao=(e,t)=>(0,uvn.default)(e).pipe(new Hct(r=>t(r))),Cvn=(e,t)=>{let r=[];for(;e.length>0;){let s=e.findIndex(o=>Yct(o));if(s===-1){r.push({patterns:e,options:t});break}let a=e[s].slice(1);for(let o of r)o.options.ignore.push(a);s!==0&&r.push({patterns:e.slice(0,s),options:{...t,ignore:[...t.ignore,a]}}),e=e.slice(s+1)}return r},mvn=(e,t)=>({...t?{cwd:t}:{},...Array.isArray(e)?{files:e}:e}),hvn=async(e,t)=>{let r=Cvn(e,t),{cwd:s,expandDirectories:a}=t;if(!a)return r;let o=mvn(a,s),g=s?{cwd:s}:void 0;return Promise.all(r.map(async p=>{let{patterns:f,options:m}=p;return[f,m.ignore]=await Promise.all([(0,_3e.default)(f,o),(0,_3e.default)(m.ignore,g)]),{patterns:f,options:m}}))},rzt=(e,t)=>{let r=Cvn(e,t),{cwd:s,expandDirectories:a}=t;if(!a)return r;let o=mvn(a,s),g=s?{cwd:s}:void 0;return r.map(p=>{let{patterns:f,options:m}=p;return f=_3e.default.sync(f,o),m.ignore=_3e.default.sync(m.ignore,g),{patterns:f,options:m}})},Pj=Avn(async(e,t)=>{let[r,s]=await Promise.all([hvn(e,t),nao(t)]),a=await Promise.all(r.map(o=>(0,y3e.default)(o.patterns,o.options)));return Ivn(a,s)}),_vn=Xct((e,t)=>{let r=rzt(e,t),s=pvn(t),a=r.map(o=>y3e.default.sync(o.patterns,o.options));return Ivn(a,s)}),TUc=Xct((e,t)=>{let r=rzt(e,t),s=pvn(t),a=r.map(o=>y3e.default.stream(o.patterns,o.options));return iao(a,s)}),NUc=Xct((e,t)=>e.some(r=>y3e.default.isDynamicPattern(r,t))),RUc=Avn(hvn),DUc=Xct(rzt);var Bvn=vt(m3e(),1);import{join as sao}from"node:path";var yvn=[".c9",".pnp.js",".pnp.cjs",".pnp.loader.mjs",".pnp-ts.loader.mjs",".git","node_modules","coverage","bundles","dist","gen","lib",".yarn",".vscode",".next","**/**/dist/*","**/**/lib/*","**/**/build/*","**/**/.cache/*","**/**/bundles/*","**/**/templates/*.yaml","**/templates/*.yaml","**/types/**",".terraform",".idea","yarn.mjs"],oao=["./**/*.{js,mjs,cjs,jsx,ts,tsx}"],aao=["!**/node_modules/**","!./node_modules/**","!**/.{git,svn,hg}/**","!./.{git,svn,hg}/**","!**/.yarn/**","!./.yarn/**","!**/gen/**","!**/.idea/**"],bvn=e=>[...oao.map(t=>sao(e,t)),...aao];var nzt=(e,t,r)=>({filePath:e,source:t,messages:r,fixableErrorCount:0,fixableWarningCount:0,usedDeprecatedRules:[],suppressedMessages:[],errorCount:r.filter(s=>s.severity===1).length,fatalErrorCount:r.filter(s=>s.fatal).length,warningCount:r.filter(s=>s.severity===2).length});var p1e=class e extends cao{constructor(r,s,a,o){super();this.linter=r;this.cacheLinter=s;this.config=a;this.cwd=o;this.ignore=Bvn.default.default().add(yvn).add(this.getProjectIgnorePatterns())}ignore;static async initialize(r,s){let{Linter:a,ESLint:o}=await import("@atls/code-runtime/eslint"),{eslintconfig:g}=await import("@atls/code-runtime/eslint"),p=new a({configType:"flat"}),f=g.map(y=>({...y,languageOptions:{...y.languageOptions||{},parserOptions:{...y.languageOptions?.parserOptions||{},tsconfigRootDir:r}}})),m=new o({cache:!0,baseConfig:f,overrideConfigFile:!0,cwd:s,cacheLocation:Evn(r,".config/eslint/.eslintcache")});return new e(p,m,f,s)}async lintFile(r,s){let a=await uao(r,"utf8");if(s?.fix){let{messages:o,fixed:g,output:p}=this.linter.verifyAndFix(a,this.config,{filename:r});return g&&await gao(r,p,"utf8"),nzt(r,p,o)}return nzt(r,a,this.linter.verify(a,this.config,{filename:r}))}async lintFiles(r=[],s){let a=[];this.emit("start",{files:r});for await(let o of r){this.emit("lint:start",{file:o});let g=await this.lintFile(o,s);a.push(g),this.emit("lint:end",{result:g})}return this.emit("end",{results:a}),a}async lint(r,s){let o=(r&&r.length>0?r:await Pj(bvn(this.cwd),{dot:!0})).filter(g=>this.ignore.filter([Aao(this.cwd,g)]).length!==0);return s?.cache?this.lintWithCache(o):this.lintFiles(o,s)}async lintWithCache(r=[]){this.emit("start",{files:r});let s=await this.cacheLinter.lintFiles(r);for(let a of s)this.emit("lint:end",{result:a});return this.emit("end",{results:s}),s}getProjectIgnorePatterns(){let r=lao(Evn(this.cwd,"package.json"),"utf-8"),{linterIgnorePatterns:s=[]}=JSON.parse(r);return s}};var vvn=vt(xc(),1);import{EventEmitter as dao}from"node:events";var Jct=class extends dao{frames=[];get columns(){return process.stdout.columns||160}write=t=>{this.frames.push(t)}},Gy=e=>{let t=new Jct,r=new Jct,{cleanup:s}=(0,vvn.render)(e,{stdout:t,stderr:r,debug:!0,exitOnCtrlC:!1,patchConsole:!1});return s(),[...t.frames,...r.frames].join(` +`)};var A3n=vt($2e(),1),spe=vt($2e(),1);var lQ=class{constructor(t){this.name=t;if(process.env.GITHUB_TOKEN==null)throw new Error("GITHUB_TOKEN is not defined");this.octokit=(0,A3n.getOctokit)(process.env.GITHUB_TOKEN)}octokit;async create(t){return(await this.octokit.rest.checks.create(t)).data}async start(){let{payload:t}=spe.context;return this.create({...spe.context.repo,name:this.name,head_sha:t.after||t.pull_request?.head.sha||process.env.GITHUB_SHA,started_at:new Date().toISOString(),status:"in_progress"})}async complete(t,r){let{payload:s}=spe.context;return this.create({...spe.context.repo,check_run_id:t,name:this.name,head_sha:s.after||s.pull_request?.head.sha||process.env.GITHUB_SHA,completed_at:new Date().toISOString(),status:"completed",conclusion:r.annotations.length>0?"failure":"success",output:r.annotations.length>50?{...r,annotations:r.annotations.slice(0,50)}:r})}async failure(t){let{payload:r}=spe.context;return this.create({...spe.context.repo,name:this.name,head_sha:r.after||r.pull_request?.head.sha||process.env.GITHUB_SHA,completed_at:new Date().toISOString(),status:"completed",conclusion:"failure",output:t.annotations&&t.annotations.length>50?{...t,annotations:t.annotations.slice(0,50)}:t})}};var _3n=vt(Ac(),1),IOe=class extends d3n.BaseCommand{static paths=[["checks","lint"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(Mnr.Filename.pnpCjs)&&t.includes(Mnr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await Onr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Qnr.Project.find(t,this.context.cwd),s=await h3n.xfs.mktempPromise(),{code:a}=await C3n.execUtils.pipevp("yarn",["checks","lint"],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:{...await m3n.scriptUtils.makeScriptEnv({binFolder:s,project:r}),COMMAND_PROXY_EXECUTION:"true"}});return a}async executeRegular(){let t=await Onr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Qnr.Project.find(t,this.context.cwd);return(await p3n.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{let o=new lQ("Lint"),{id:g}=await o.start();await a.startTimerPromise("Lint",async()=>{try{let f=await(await p1e.initialize(r.cwd,this.context.cwd)).lint();f.filter(v=>v.messages.length>0).forEach(v=>{Gy((0,_3n.jsx)(PBn,{...v})).split(` +`).forEach(T=>{a.reportInfo(f3n.MessageName.UNNAMED,T)})});let m=this.formatResults(f,r.cwd),y=m.filter(v=>v.annotation_level==="warning").length,B=m.filter(v=>v.annotation_level==="failure").length;await o.complete(g,{title:m.length>0?`Errors ${B}, Warnings ${y}`:"Successful",summary:m.length>0?`Found ${B} errors and ${y} warnings`:"All checks passed",annotations:m})}catch(p){await o.failure({title:"Lint run failed",summary:p instanceof Error?p.message:p})}})})).exitCode()}getAnnotationLevel(t){return t===1?"warning":"failure"}formatResults(t,r){return t.filter(s=>s.messages.length>0).map(({filePath:s,messages:a=[]})=>a.map(o=>{let g=(o.line||0)+1;return{path:r?s.substring(r.length+1):s,start_line:g,end_line:g,annotation_level:this.getAnnotationLevel(o.severity),raw_details:(0,I3n.codeFrameColumns)(sDo(s).toString(),{start:{line:o.line||0,column:o.column||0}},{highlightCode:!1}),title:`(${o.ruleId||"unknown"}): ${o.message}`,message:o.message}})).flat()}};var L3n=vt(il(),1),Unr=vt(Bn(),1),Knr=vt(Bn(),1),jnr=vt(No(),1),V3n=vt(Bn(),1),W3n=vt(Bn(),1),P3n=vt(No(),1),O3n=vt(No(),1);COe();var Jnr={};zf(Jnr,{FilesChangedListCommand:()=>mOe,default:()=>x3n,getChangedCommmits:()=>v3n,getChangedFiles:()=>pz,getCommitData:()=>B3n,getEventCommmits:()=>E3n,getGithubChangedFiles:()=>S3n});var w3n=vt(il(),1),T3n=vt(il(),1),N3n=vt(Bn(),1),R3n=vt(Bn(),1),D3n=vt(Bn(),1);Zl();var dz=vt($2e(),1),Xnr=vt($2e(),1),b3n=vt(Bn(),1),E3n=async()=>{if(dz.context.eventName==="push")return dz.context.payload.commits;if(dz.context.eventName==="pull_request"&&dz.context.payload.pull_request){let e=dz.context.payload.pull_request.commits_url;return(0,Xnr.getOctokit)(process.env.GITHUB_TOKEN).paginate(`GET ${e}`,dz.context.repo)}return console.log(`Unknown event "${dz.context.eventName}". Only "push" and "pull_request" supported.`),[]},B3n=async e=>await(0,Xnr.getOctokit)(process.env.GITHUB_TOKEN).rest.repos.getCommit({...dz.context.repo,ref:e}),v3n=async()=>{let e=await E3n();return Promise.all(e.map(async t=>B3n(t.id||t.sha)))},S3n=async()=>(await v3n()).map(t=>t.data.files?t.data.files.map(r=>r.filename).filter(Boolean):[]).flat(),pz=async(e,t)=>{if(process.env.GITHUB_EVENT_PATH&&process.env.GITHUB_TOKEN)return S3n();let{stdout:r}=await b3n.execUtils.execvp("git",["diff","--name-only",...t?[t]:[]],{cwd:e.cwd,strict:!0});return r.split(/\r?\n/).filter(Boolean)};var mOe=class extends w3n.BaseCommand{static paths=[["files","changed","list"]];json=td.Boolean("--json",!1);async execute(){let t=await N3n.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await R3n.Project.find(t,this.context.cwd);if(!s)throw new T3n.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await D3n.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async o=>{let g=await pz(r);for(let p of g)o.reportInfo(null,p),o.reportJson({location:p})})).exitCode()}};var x3n={commands:[mOe]};var k3n=vt(Bn(),1),G3n=e=>{let{project:t}=e,r=new Set,s=({manifest:a})=>{for(let o of k3n.Manifest.hardDependencies)for(let g of a.getForScope(o).values()){let p=t.tryWorkspaceByDescriptor(g);p&&!r.has(p)&&(r.add(p),s(p))}};return s(e),[...r]};var F3n=vt(Bn(),1);var Z3n=e=>{let t=new Set;for(let r of e.project.workspaces)G3n(r).some(a=>F3n.structUtils.areLocatorsEqual(a.anchoredLocator,e.anchoredLocator))&&t.add(r);return[...t]};var eBe=(e,t)=>{let r=new Set;for(let s of e.workspaces)if(t.some(o=>o.startsWith(s.relativeCwd))&&!r.has(s)){r.add(s);for(let o of Z3n(s))r.add(o)}return[...r]};var VAt=class extends L3n.BaseCommand{static paths=[["checks","release"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(jnr.Filename.pnpCjs)&&t.includes(jnr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await Unr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Knr.Project.find(t,this.context.cwd),s=await O3n.xfs.mktempPromise(),{code:a}=await V3n.execUtils.pipevp("yarn",["checks","release"],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:{...await W3n.scriptUtils.makeScriptEnv({binFolder:s,project:r}),COMMAND_PROXY_EXECUTION:"true"}});return a}async executeRegular(){let{project:t}=await Knr.Project.find(await Unr.Configuration.find(this.context.cwd,this.context.plugins),this.context.cwd),r=eBe(t,await pz(t)),s=new lQ("Release"),{id:a}=await s.start();try{let o=[];for await(let g of r)if(g.manifest.scripts.get("build")){let p=new Kot,f=y=>this.context.stdout.write(y);p.stdout.on("data",f),p.stderr.on("data",f);let m=await this.cli.run(["workspace",g.manifest.raw.name,"build"],p);m>0&&o.push({annotation_level:"failure",title:`Error release workspace ${g.manifest.raw.name??g.relativeCwd}`,message:`Exit code ${m}`,raw_details:Az(p.output),path:P3n.ppath.join(g.relativeCwd,"package.json"),start_line:1,end_line:1}),p.stdout.off("data",f),p.stderr.off("data",f)}await s.complete(a,{title:o.length>0?`Errors ${o.length}`:"Successful",summary:o.length>0?`Found ${o.length} errors`:"All checks passed",annotations:o})}catch(o){await s.failure({title:"Release run failed",summary:o instanceof Error?o.message:o})}return 0}};var Q3n=vt(il(),1),M3n=vt(Bn(),1),H3n=vt(Bn(),1),Y3n=vt(Bn(),1),X3n=vt(Bn(),1),J3n=vt(Bn(),1),WAt=class extends Q3n.BaseCommand{static paths=[["checks","run"]];async execute(){let t=await H3n.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await X3n.Project.find(t,this.context.cwd);return(await M3n.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{await this.runCheck(r.cwd,["typecheck"],a),await this.runCheck(r.cwd,["lint"],a),await Promise.allSettled([this.runCheck(r.cwd,["test","unit"],a),this.runCheck(r.cwd,["test","integration"],a)]),await this.runCheck(r.cwd,["release"],a)})).exitCode()}async runCheck(t,r,s){try{let{stdout:a,stderr:o}=await J3n.execUtils.execvp("yarn",["checks",...r],{cwd:t});this.context.stdout.write(a||o)}catch(a){s.reportError(Y3n.MessageName.UNNAMED,`Run check ${r.join(" ")} error: ${a instanceof Error?a.message:a}`)}}};var z3n=vt(Bn(),1),qnr=vt(Bn(),1),$nr=vt(Bn(),1),OAt=vt(No(),1),q3n=vt(Bn(),1),$3n=vt(Bn(),1),eir=vt(No(),1),ePn=vt(No(),1),tPn=vt(No(),1);import{pathToFileURL as dDo}from"node:url";import cDo from"node:events";import{readFileSync as lDo}from"node:fs";import{relative as znr}from"node:path";import{join as uDo}from"node:path";import{run as U3n}from"node:test";import{tap as gDo}from"node:test/reporters";var K3n=vt(m3e(),1);import{readFile as aDo}from"node:fs/promises";var PAt=class{static async load(t){return Promise.all(t.map(async r=>{let s=await aDo(r,"utf8");return{file:r,source:s,tests:s.match(/test\(/gm)?.length||0}}))}};var bU=class e extends cDo{constructor(r){super();this.cwd=r;this.ignore=K3n.default.default().add(this.getProjectIgnorePatterns())}ignore;async run(r,s,a,o=!1,g){if(g==="tap"){let k=U3n({files:r,timeout:s,concurrency:a,watch:o}).compose(gDo);return k.pipe(process.stdout),k.toArray()}let p=await PAt.load(r);this.emit("start",{tests:p});let f=U3n({files:r,timeout:s,concurrency:a,watch:o}),m=k=>{this.emit("test:pass",k)},y=k=>{this.emit("test:fail",k)},B=k=>{this.emit("test:stdout",k)},v=k=>{this.emit("test:stderr",k)};f.on("test:pass",m),f.on("test:fail",y),f.on("test:stdout",B),f.on("test:stderr",v);try{return await f.toArray()}finally{this.emit("end"),f.off("test:pass",m),f.off("test:fail",y),f.off("test:stdout",B),f.off("test:stderr",v)}}static async initialize(r){return new e(r)}async unit(r,s){let o=(await this.collectTestFiles(r,"unit",s?.files)).filter(g=>this.ignore.filter([znr(this.cwd,g)]).length!==0);return this.run(o,24e4,!0,s?.watch,s?.testReporter)}async integration(r,s){let o=(await this.collectTestFiles(r,"integration",s?.files)).filter(g=>this.ignore.filter([znr(this.cwd,g)]).length!==0);return this.run(o,42e4,!1,s?.watch,s?.testReporter)}async general(r,s){let o=(await this.collectTestFiles(r,void 0,s?.files)).filter(g=>this.ignore.filter([znr(this.cwd,g)]).length!==0);return this.run(o,42e4,!0,s?.watch,s?.testReporter)}async collectTestFiles(r,s,a){let o="*";return s!==void 0&&(o=s==="unit"?"!(integration)":"integration"),!a||a.length<1?Pj([`**/${o}/*.test.{ts,tsx,js,jsx}`],{cwd:r,dot:!0,absolute:!0,ignore:["**/node_modules/**","**/dist/**","**/.yarn/**"]}):Pj(a.map(g=>this.isFilename(g)?`**/${o}/*${g}*.test.{ts,tsx,js,jsx}`:this.isRootPath(g)?g:`**/${g}`),{cwd:r,dot:!0,absolute:!0,ignore:["**/node_modules/**","**/dist/**","**/.yarn/**"]})}isFilename(r){let s=r.includes("/")||r.includes("\\"),a=/\.(js|jsx|ts|tsx)$/.test(r);return!s&&!a}isRootPath(r){return r.startsWith("/")||r.startsWith("\\")}getProjectIgnorePatterns(){let r=lDo(uDo(this.cwd,"package.json"),"utf-8"),{testIgnorePatterns:s=[]}=JSON.parse(r);return s}};var j3n=vt(il(),1);import{relative as ADo}from"node:path";var tBe=class extends j3n.BaseCommand{formatResults(t,r){return t.map(s=>({path:s.file?ADo(r,s.file):r,start_line:s.column??1,end_line:s.column??1,annotation_level:"failure",raw_details:s.details.error.stack||s.details.error.message,title:s.details.error.message,message:s.details.error.message}))}};var hOe=class extends tBe{static paths=[["checks","test","integration"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(OAt.Filename.pnpCjs)&&t.includes(OAt.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await qnr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await $nr.Project.find(t,this.context.cwd),s=await eir.xfs.mktempPromise(),a=await $3n.scriptUtils.makeScriptEnv({binFolder:s,project:r});if(!a.NODE_OPTIONS?.includes("@atls/code-runtime/ts-node-register")){a.NODE_OPTIONS=`${a.NODE_OPTIONS??""} --loader @atls/code-runtime/ts-node-register`;let g=ePn.ppath.join(r.cwd,OAt.Filename.pnpEsmLoader);await eir.xfs.existsPromise(g)&&(a.NODE_OPTIONS=`${a.NODE_OPTIONS} --loader ${dDo(tPn.npath.fromPortablePath(g)).href}`),a.NODE_OPTIONS=`${a.NODE_OPTIONS} --loader @atls/code-runtime/ts-ext-register`}a.NODE_OPTIONS.includes("--enable-source-maps")||(a.NODE_OPTIONS=`${a.NODE_OPTIONS} --enable-source-maps`),a.COMMAND_PROXY_EXECUTION="true";let{code:o}=await q3n.execUtils.pipevp("yarn",["checks","test","integration"],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:a});return o}async executeRegular(){let t=await qnr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await $nr.Project.find(t,this.context.cwd);return(await z3n.StreamReport.start({stdout:this.context.stdout,configuration:t},async()=>{let a=new lQ("Test:Integration"),{id:o}=await a.start();try{let p=await(await bU.initialize(this.context.cwd)).integration(r.cwd),f=this.formatResults(p.filter(m=>m.type==="test:fail").map(m=>m.data),r.cwd);await a.complete(o,{title:f.length>0?`Errors ${f.length}`:"Successful",summary:f.length>0?`Found ${f.length} errors`:"All checks passed",annotations:f})}catch(g){await a.failure({title:"Test:Integration run failed",summary:g instanceof Error?g.message:g})}})).exitCode()}};var rPn=vt(Bn(),1),tir=vt(Bn(),1),rir=vt(Bn(),1),QAt=vt(No(),1),nPn=vt(Bn(),1),iPn=vt(Bn(),1),nir=vt(No(),1),sPn=vt(No(),1),oPn=vt(No(),1);import{pathToFileURL as pDo}from"node:url";var _Oe=class extends tBe{static paths=[["checks","test","unit"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(QAt.Filename.pnpCjs)&&t.includes(QAt.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await tir.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await rir.Project.find(t,this.context.cwd),s=await nir.xfs.mktempPromise(),a=await iPn.scriptUtils.makeScriptEnv({binFolder:s,project:r});if(!a.NODE_OPTIONS?.includes("@atls/code-runtime/ts-node-register")){a.NODE_OPTIONS=`${a.NODE_OPTIONS??""} --loader @atls/code-runtime/ts-node-register`;let g=sPn.ppath.join(r.cwd,QAt.Filename.pnpEsmLoader);await nir.xfs.existsPromise(g)&&(a.NODE_OPTIONS=`${a.NODE_OPTIONS} --loader ${pDo(oPn.npath.fromPortablePath(g)).href}`),a.NODE_OPTIONS=`${a.NODE_OPTIONS} --loader @atls/code-runtime/ts-ext-register`}a.NODE_OPTIONS.includes("--enable-source-maps")||(a.NODE_OPTIONS=`${a.NODE_OPTIONS} --enable-source-maps`),a.COMMAND_PROXY_EXECUTION="true";let{code:o}=await nPn.execUtils.pipevp("yarn",["checks","test","unit"],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:a});return o}async executeRegular(){let t=await tir.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await rir.Project.find(t,this.context.cwd);return(await rPn.StreamReport.start({stdout:this.context.stdout,configuration:t},async()=>{let a=new lQ("Test:Unit"),{id:o}=await a.start();try{let p=await(await bU.initialize(this.context.cwd)).unit(r.cwd),f=this.formatResults(p.filter(m=>m.type==="test:fail").map(m=>m.data),r.cwd);await a.complete(o,{title:f.length>0?`Errors ${f.length}`:"Successful",summary:f.length>0?`Found ${f.length} errors`:"All checks passed",annotations:f})}catch(g){await a.failure({title:"Test:Unit run failed",summary:g instanceof Error?g.message:g})}})).exitCode()}};var _Pn=vt(il(),1),gir=vt(Bn(),1),Air=vt(Bn(),1),yPn=vt(Bn(),1),bPn=vt(Bn(),1),dir=vt(No(),1),EPn=vt(nct(),1),BPn=vt(Bn(),1),vPn=vt(Bn(),1),yOe=vt(No(),1),bOe=vt(No(),1),JAt=vt(YAt(),1);import{EOL as XAt}from"node:os";var lir=vt(xc(),1),ope=vt(xc(),1),uir=vt($a(),1),fPn=vt(YAt(),1);import{isAbsolute as fDo}from"node:path";import{relative as IDo}from"node:path";var OD=vt(Ac(),1),IPn=({messageText:e,start:t,file:r,code:s,cwd:a=process.cwd()})=>{let o=(0,uir.useMemo)(()=>r?fDo(r.fileName)?IDo(a,r.fileName):r.fileName:null,[r]),g=(0,uir.useMemo)(()=>r&&t?r.getLineAndCharacterOfPosition(t):null,[r,t]);return(0,OD.jsxs)(ope.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",paddingY:1,width:"100%",children:[!!o&&(0,OD.jsxs)(ope.Box,{flexDirection:"row",children:[(0,OD.jsx)(ope.Box,{marginBottom:1,paddingX:2,flexGrow:1,children:(0,OD.jsx)(MO,{line:g?g.line+1:1,column:g?.character,children:o})}),(0,OD.jsx)(ope.Box,{paddingX:2,children:(0,OD.jsxs)(lir.Text,{bold:!0,color:"red",children:["TS",s]})})]}),(0,OD.jsx)(GD,{offset:2}),!!r?.text&&!!g&&(0,OD.jsxs)(OD.Fragment,{children:[(0,OD.jsx)(ope.Box,{children:(0,OD.jsx)(YO,{line:g.line+1,column:g.character,children:r.text})}),(0,OD.jsx)(GD,{offset:2})]}),(0,OD.jsx)(ope.Box,{marginTop:1,paddingX:2,children:(0,OD.jsx)(lir.Text,{color:"white",children:(0,fPn.flattenDiagnosticMessageText)(e,` +`)})})]})};import CDo from"node:events";import{readFileSync as mPn}from"node:fs";import{join as hPn}from"node:path";var BU={compilerOptions:{lib:["dom","dom.iterable","esnext"],declaration:!1,emitDecoratorMetadata:!0,experimentalDecorators:!0,esModuleInterop:!0,forceConsistentCasingInFileNames:!0,importHelpers:!1,isolatedModules:!1,moduleResolution:"NodeNext",noFallthroughCasesInSwitch:!0,noImplicitAny:!0,noImplicitReturns:!0,noImplicitThis:!0,noUnusedLocals:!1,noUnusedParameters:!1,pretty:!0,removeComments:!0,resolveJsonModule:!0,strict:!0,strictPropertyInitialization:!1,sourceMap:!1,module:"NodeNext",target:"es2022",jsx:"react-jsx",outDir:"./dist"},exclude:["**/*/next-env.d.ts","integration","node_modules","src/**/*.spec.ts","src/**/*.test.ts","src/**/*.story.ts","src/**/*.stories.ts","**/*/dist/**/*.ts","**/*/dist/**/*.d.ts","integration/**/*.test.ts",".idea"]};var CPn=e=>t=>{let r=s=>{let{moduleSpecifier:a}=s;if(a&&e.isStringLiteral(a)){if(e.isImportDeclaration(s)&&a.text.endsWith(".jsx"))return t.factory.updateImportDeclaration(s,s.modifiers,s.importClause,t.factory.createStringLiteral(a.text.replace(".jsx",".js")),s.assertClause);if(e.isExportDeclaration(s))return t.factory.updateExportDeclaration(s,s.modifiers,s.isTypeOnly,s.exportClause,t.factory.createStringLiteral(a.text.replace(".jsx",".js")),s.assertClause)}return e.visitEachChild(s,r,t)};return s=>e.visitNode(s,r)};var Gie=class e extends CDo{constructor(r,s){super();this.ts=r;this.cwd=s}static async initialize(r){let{ts:s}=await import("@atls/code-runtime/typescript");return new e(s,r)}async check(r=[]){return this.run(r)}async build(r=[],s={}){return this.run(r,s,!1)}async run(r=[],s={},a=!0){let o=this.getProjectIgnorePatterns(),g=this.getLibCheckOption(),p={...BU,compilerOptions:{...BU.compilerOptions,...s,skipLibCheck:g},include:r,exclude:[...BU.exclude,...o]},{fileNames:f,options:m,errors:y}=this.ts.parseJsonConfigFileContent(p,this.ts.sys,this.cwd);if(y.length>0)return this.emit("start",{files:[]}),this.emit("end",{diagnostics:y}),y;this.emit("start",{files:f});let B=this.ts.createProgram(f,{...m,noEmit:a}),v=X=>U=>(this.emit("build:start",{file:U.fileName}),U),k=X=>U=>(this.emit("build:end",{file:U.fileName}),U),T=B.emit(void 0,void 0,void 0,void 0,{before:[v],after:[k,CPn(this.ts)]}),O=this.filterDiagnostics(this.ts.getPreEmitDiagnostics(B).concat(T.diagnostics));return this.emit("end",{diagnostics:O}),O}filterDiagnostics(r){return r.filter(s=>s.code!==2209).filter(s=>!(s.code===1479&&s.file?.fileName.includes("/.yarn/"))).filter(s=>!(s.code===2834&&s.file?.fileName.includes("/.yarn/"))).filter(s=>!(s.code===7016&&s.file?.fileName.includes("/lexical/"))).filter(s=>!(s.code===6133&&s.file?.fileName.includes("/@yarnpkg/libui/"))).filter(s=>!([2315,2411,2304,7006,7016].includes(s.code)&&s.file?.fileName.includes("/@strapi/"))).filter(s=>!([2688,2307,2503].includes(s.code)&&s.file?.fileName.includes("/pkg-tests-core/"))).filter(s=>!([2307].includes(s.code)&&s.file?.fileName.includes("/@nestjs/testing/")))}getProjectIgnorePatterns(){let r=mPn(hPn(this.cwd,"package.json"),"utf-8"),{typecheckIgnorePatterns:s=[]}=JSON.parse(r);return s}getLibCheckOption(){let r=mPn(hPn(this.cwd,"package.json"),"utf-8"),{typecheckSkipLibCheck:s=!1}=JSON.parse(r);return s}};var SPn=vt(Ac(),1),EOe=class extends _Pn.BaseCommand{static paths=[["checks","typecheck"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(dir.Filename.pnpCjs)&&t.includes(dir.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await gir.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Air.Project.find(t,this.context.cwd),s=await yOe.xfs.mktempPromise(),{code:a}=await BPn.execUtils.pipevp("yarn",["checks","typecheck"],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:{...await vPn.scriptUtils.makeScriptEnv({binFolder:s,project:r}),COMMAND_PROXY_EXECUTION:"true"}});return a}async executeRegular(){let t=await gir.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Air.Project.find(t,this.context.cwd);return(await yPn.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{let o=new lQ("TypeCheck");try{let{id:g}=await o.start();await a.startTimerPromise("TypeCheck",async()=>{try{let f=await(await Gie.initialize(r.cwd)).check(await this.getIncludes(r));f.forEach(y=>{Gy((0,SPn.jsx)(IPn,{...y})).split(` +`).forEach(v=>{a.reportInfo(bPn.MessageName.UNNAMED,v)})});let m=[];f.forEach(y=>{if(y.file){let B=y.start?y.file.getLineAndCharacterOfPosition(y.start):null;m.push({path:bOe.ppath.normalize(bOe.ppath.relative(r.cwd,y.file.fileName)),title:(0,JAt.flattenDiagnosticMessageText)(y.messageText,XAt).split(XAt).at(0),message:(0,JAt.flattenDiagnosticMessageText)(y.messageText,XAt),start_line:B?B.line+1:0,end_line:B?B.line+1:0,raw_details:B?(0,EPn.codeFrameColumns)(yOe.xfs.readFileSync(y.file.fileName).toString(),{start:{line:B.line+1,column:B.character+1}},{highlightCode:!1}):(0,JAt.flattenDiagnosticMessageText)(y.messageText,XAt),annotation_level:"failure"})}}),await o.complete(g,{title:f.length>0?`Errors ${m.length}`:"Successful",summary:f.length>0?`Found ${m.length} errors`:"All checks passed",annotations:m})}catch(p){await o.failure({title:"TypeCheck run failed",summary:p instanceof Error?p.message:p})}})}catch(g){await o.failure({title:"TypeCheck start failed",summary:g instanceof Error?g.message:g})}})).exitCode()}async getIncludes(t){if(await yOe.xfs.existsPromise(bOe.ppath.join(t.cwd,"tsconfig.json"))){let r=await yOe.xfs.readJsonPromise(bOe.ppath.join(t.cwd,"tsconfig.json"));if(r.include&&r.include.length>0)return r.include}return t.topLevelWorkspace.manifest.workspaceDefinitions.map(r=>r.pattern)}};var wPn={commands:[hOe,_Oe,EOe,IOe,VAt,WAt]};var Iir={};zf(Iir,{beforeWorkspacePacking:()=>fir,default:()=>TPn});var fir=(e,t)=>{t.name==="@atls/yarn-cli"&&(t.dependencies=new Proxy({},{set:()=>!0}))};var TPn={hooks:{beforeWorkspacePacking:fir}};var Ucr={};zf(Ucr,{default:()=>F6n});var PHn=vt(il(),1),OHn=vt(Bn(),1),QHn=vt(Bn(),1);var lQn=vt(xPn(),1);var XPn=vt(HPn(),1);function YPn(e){let t=[];return new Promise((r,s)=>e.on("data",a=>t.push(a.toString("utf-8"))).on("error",s).on("end",()=>r(t)))}async function JPn(e,t={}){return YPn((0,XPn.default)(e,{cwd:t.cwd}))}import ODo from"path";import vOe from"node:path";import kDo from"node:process";import GDo from"node:path";import s$c,{promises as UPn}from"node:fs";import{fileURLToPath as FDo}from"node:url";var Cir=class{value;next;constructor(t){this.value=t}},BOe=class{#e;#t;#r;constructor(){this.clear()}enqueue(t){let r=new Cir(t);this.#e?(this.#t.next=r,this.#t=r):(this.#e=r,this.#t=r),this.#r++}dequeue(){let t=this.#e;if(t)return this.#e=this.#e.next,this.#r--,t.value}peek(){if(this.#e)return this.#e.value}clear(){this.#e=void 0,this.#t=void 0,this.#r=0}get size(){return this.#r}*[Symbol.iterator](){let t=this.#e;for(;t;)yield t.value,t=t.next}};function KAt(e){if(!((Number.isInteger(e)||e===Number.POSITIVE_INFINITY)&&e>0))throw new TypeError("Expected `concurrency` to be a number from 1 and up");let t=new BOe,r=0,s=()=>{r--,t.size>0&&t.dequeue()()},a=async(p,f,m)=>{r++;let y=(async()=>p(...m))();f(y);try{await y}catch{}s()},o=(p,f,m)=>{t.enqueue(a.bind(void 0,p,f,m)),(async()=>(await Promise.resolve(),r0&&t.dequeue()()))()},g=(p,...f)=>new Promise(m=>{o(p,m,f)});return Object.defineProperties(g,{activeCount:{get:()=>r},pendingCount:{get:()=>t.size},clearQueue:{value:()=>{t.clear()}}}),g}var jAt=class extends Error{constructor(t){super(),this.value=t}},DDo=async(e,t)=>t(await e),xDo=async e=>{let t=await Promise.all(e);if(t[1]===!0)throw new jAt(t[0]);return!1};async function mir(e,t,{concurrency:r=Number.POSITIVE_INFINITY,preserveOrder:s=!0}={}){let a=KAt(r),o=[...e].map(p=>[p,a(DDo,p,t)]),g=KAt(s?1:Number.POSITIVE_INFINITY);try{await Promise.all(o.map(p=>g(xDo,p)))}catch(p){if(p instanceof jAt)return p.value;throw p}}var KPn={directory:"isDirectory",file:"isFile"};function ZDo(e){if(!Object.hasOwnProperty.call(KPn,e))throw new Error(`Invalid type specified: ${e}`)}var LDo=(e,t)=>t[KPn[e]](),VDo=e=>e instanceof URL?FDo(e):e;async function hir(e,{cwd:t=kDo.cwd(),type:r="file",allowSymlinks:s=!0,concurrency:a,preserveOrder:o}={}){ZDo(r),t=VDo(t);let g=s?UPn.stat:UPn.lstat;return mir(e,async p=>{try{let f=await g(GDo.resolve(t,p));return LDo(r,f)}catch{return!1}},{concurrency:a,preserveOrder:o})}z6t();var WDo=Symbol("findUpStop");async function PDo(e,t={}){let r=vOe.resolve(vWe(t.cwd)??""),{root:s}=vOe.parse(r),a=vOe.resolve(r,vWe(t.stopAt??s)),o=t.limit??Number.POSITIVE_INFINITY,g=[e].flat(),p=async m=>{if(typeof e!="function")return hir(g,m);let y=await e(m.cwd);return typeof y=="string"?hir([y],m):y},f=[];for(;;){let m=await p({...t,cwd:r});if(m===WDo||(m&&f.push(vOe.resolve(r,m)),r===a||f.length>=o))break;r=vOe.dirname(r)}return f}async function _ir(e,t={}){return(await PDo(e,{...t,limit:1}))[0]}var jPn=QDo;async function QDo(e){let t=await MDo(e);return typeof t!="string"?t:ODo.join(t,"..")}async function MDo(e){let t=await _ir(".git",{cwd:e,type:"file"}),r=await _ir(".git",{cwd:e,type:"directory"});return t||r}import HDo from"fs/promises";import zAt from"path";import zPn from"fs/promises";async function qPn(e,t){if(typeof t=="string")return zAt.resolve(e,t);let r=zAt.join(e,".git");if((await zPn.lstat(r)).isDirectory())return zAt.join(e,".git/COMMIT_EDITMSG");let o=(await zPn.readFile(r,{encoding:"utf-8"})).replace("gitdir: ","").replace(` +`,"");return zAt.resolve(e,o,"COMMIT_EDITMSG")}async function $Pn(e,t){let r=await jPn(e);if(typeof r!="string")throw new TypeError(`Could not find git root from ${e}`);let s=await qPn(r,t);return[`${(await HDo.readFile(s)).toString("utf-8")} +`]}var sQn=vt(IOn(),1);import{Buffer as Eko}from"node:buffer";import Bko from"node:path";import qir from"node:child_process";import Adt from"node:process";function Tir(e){let t=typeof e=="string"?` +`:10,r=typeof e=="string"?"\r":13;return e[e.length-1]===t&&(e=e.slice(0,-1)),e[e.length-1]===r&&(e=e.slice(0,-1)),e}import $At from"node:process";import SOe from"node:path";import{fileURLToPath as COn}from"node:url";function qAt(e={}){let{env:t=process.env,platform:r=process.platform}=e;return r!=="win32"?"PATH":Object.keys(t).reverse().find(s=>s.toUpperCase()==="PATH")||"Path"}var lxo=({cwd:e=$At.cwd(),path:t=$At.env[qAt()],preferLocal:r=!0,execPath:s=$At.execPath,addExecPath:a=!0}={})=>{let o=e instanceof URL?COn(e):e,g=SOe.resolve(o),p=[];return r&&uxo(p,g),a&&gxo(p,s,g),[...p,t].join(SOe.delimiter)},uxo=(e,t)=>{let r;for(;r!==t;)e.push(SOe.join(t,"node_modules/.bin")),r=t,t=SOe.resolve(t,"..")},gxo=(e,t,r)=>{let s=t instanceof URL?COn(t):t;e.push(SOe.resolve(r,s,".."))},mOn=({env:e=$At.env,...t}={})=>{e={...e};let r=qAt({env:e});return t.path=e[r],e[r]=lxo(t),e};var Axo=(e,t,r,s)=>{if(r==="length"||r==="prototype"||r==="arguments"||r==="caller")return;let a=Object.getOwnPropertyDescriptor(e,r),o=Object.getOwnPropertyDescriptor(t,r);!dxo(a,o)&&s||Object.defineProperty(e,r,o)},dxo=function(e,t){return e===void 0||e.configurable||e.writable===t.writable&&e.enumerable===t.enumerable&&e.configurable===t.configurable&&(e.writable||e.value===t.value)},pxo=(e,t)=>{let r=Object.getPrototypeOf(t);r!==Object.getPrototypeOf(e)&&Object.setPrototypeOf(e,r)},fxo=(e,t)=>`/* Wrapped ${e}*/ +${t}`,Ixo=Object.getOwnPropertyDescriptor(Function.prototype,"toString"),Cxo=Object.getOwnPropertyDescriptor(Function.prototype.toString,"name"),mxo=(e,t,r)=>{let s=r===""?"":`with ${r.trim()}() `,a=fxo.bind(null,s,t.toString());Object.defineProperty(a,"name",Cxo),Object.defineProperty(e,"toString",{...Ixo,value:a})};function Nir(e,t,{ignoreNonConfigurable:r=!1}={}){let{name:s}=e;for(let a of Reflect.ownKeys(t))Axo(e,t,a,r);return pxo(e,t),mxo(e,t,s),e}var edt=new WeakMap,hOn=(e,t={})=>{if(typeof e!="function")throw new TypeError("Expected a function");let r,s=0,a=e.displayName||e.name||"",o=function(...g){if(edt.set(o,++s),s===1)r=e.apply(this,g),e=null;else if(t.throw===!0)throw new Error(`Function \`${a}\` can only be called once`);return r};return Nir(o,e),edt.set(o,s),o};hOn.callCount=e=>{if(!edt.has(e))throw new Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return edt.get(e)};var _On=hOn;import Txo from"node:process";import{constants as bxo}from"node:os";var yOn=()=>{let e=EOn-bOn+1;return Array.from({length:e},hxo)},hxo=(e,t)=>({name:`SIGRT${t+1}`,number:bOn+t,action:"terminate",description:"Application-specific signal (realtime)",standard:"posix"}),bOn=34,EOn=64;import{constants as _xo}from"node:os";var BOn=[{name:"SIGHUP",number:1,action:"terminate",description:"Terminal closed",standard:"posix"},{name:"SIGINT",number:2,action:"terminate",description:"User interruption with CTRL-C",standard:"ansi"},{name:"SIGQUIT",number:3,action:"core",description:"User interruption with CTRL-\\",standard:"posix"},{name:"SIGILL",number:4,action:"core",description:"Invalid machine instruction",standard:"ansi"},{name:"SIGTRAP",number:5,action:"core",description:"Debugger breakpoint",standard:"posix"},{name:"SIGABRT",number:6,action:"core",description:"Aborted",standard:"ansi"},{name:"SIGIOT",number:6,action:"core",description:"Aborted",standard:"bsd"},{name:"SIGBUS",number:7,action:"core",description:"Bus error due to misaligned, non-existing address or paging error",standard:"bsd"},{name:"SIGEMT",number:7,action:"terminate",description:"Command should be emulated but is not implemented",standard:"other"},{name:"SIGFPE",number:8,action:"core",description:"Floating point arithmetic error",standard:"ansi"},{name:"SIGKILL",number:9,action:"terminate",description:"Forced termination",standard:"posix",forced:!0},{name:"SIGUSR1",number:10,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGSEGV",number:11,action:"core",description:"Segmentation fault",standard:"ansi"},{name:"SIGUSR2",number:12,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGPIPE",number:13,action:"terminate",description:"Broken pipe or socket",standard:"posix"},{name:"SIGALRM",number:14,action:"terminate",description:"Timeout or timer",standard:"posix"},{name:"SIGTERM",number:15,action:"terminate",description:"Termination",standard:"ansi"},{name:"SIGSTKFLT",number:16,action:"terminate",description:"Stack is empty or overflowed",standard:"other"},{name:"SIGCHLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"posix"},{name:"SIGCLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"other"},{name:"SIGCONT",number:18,action:"unpause",description:"Unpaused",standard:"posix",forced:!0},{name:"SIGSTOP",number:19,action:"pause",description:"Paused",standard:"posix",forced:!0},{name:"SIGTSTP",number:20,action:"pause",description:'Paused using CTRL-Z or "suspend"',standard:"posix"},{name:"SIGTTIN",number:21,action:"pause",description:"Background process cannot read terminal input",standard:"posix"},{name:"SIGBREAK",number:21,action:"terminate",description:"User interruption with CTRL-BREAK",standard:"other"},{name:"SIGTTOU",number:22,action:"pause",description:"Background process cannot write to terminal output",standard:"posix"},{name:"SIGURG",number:23,action:"ignore",description:"Socket received out-of-band data",standard:"bsd"},{name:"SIGXCPU",number:24,action:"core",description:"Process timed out",standard:"bsd"},{name:"SIGXFSZ",number:25,action:"core",description:"File too big",standard:"bsd"},{name:"SIGVTALRM",number:26,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGPROF",number:27,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGWINCH",number:28,action:"ignore",description:"Terminal window size changed",standard:"bsd"},{name:"SIGIO",number:29,action:"terminate",description:"I/O is available",standard:"other"},{name:"SIGPOLL",number:29,action:"terminate",description:"Watched event",standard:"other"},{name:"SIGINFO",number:29,action:"ignore",description:"Request for process information",standard:"other"},{name:"SIGPWR",number:30,action:"terminate",description:"Device running out of power",standard:"systemv"},{name:"SIGSYS",number:31,action:"core",description:"Invalid system call",standard:"other"},{name:"SIGUNUSED",number:31,action:"terminate",description:"Invalid system call",standard:"other"}];var Rir=()=>{let e=yOn();return[...BOn,...e].map(yxo)},yxo=({name:e,number:t,description:r,action:s,forced:a=!1,standard:o})=>{let{signals:{[e]:g}}=_xo,p=g!==void 0;return{name:e,number:p?g:t,description:r,supported:p,action:s,forced:a,standard:o}};var Exo=()=>{let e=Rir();return Object.fromEntries(e.map(Bxo))},Bxo=({name:e,number:t,description:r,supported:s,action:a,forced:o,standard:g})=>[e,{name:e,number:t,description:r,supported:s,action:a,forced:o,standard:g}],vOn=Exo(),vxo=()=>{let e=Rir(),t=65,r=Array.from({length:t},(s,a)=>Sxo(a,e));return Object.assign({},...r)},Sxo=(e,t)=>{let r=wxo(e,t);if(r===void 0)return{};let{name:s,description:a,supported:o,action:g,forced:p,standard:f}=r;return{[e]:{name:s,number:e,description:a,supported:o,action:g,forced:p,standard:f}}},wxo=(e,t)=>{let r=t.find(({name:s})=>bxo.signals[s]===e);return r!==void 0?r:t.find(s=>s.number===e)},q$c=vxo();var Nxo=({timedOut:e,timeout:t,errorCode:r,signal:s,signalDescription:a,exitCode:o,isCanceled:g})=>e?`timed out after ${t} milliseconds`:g?"was canceled":r!==void 0?`failed with ${r}`:s!==void 0?`was killed with ${s} (${a})`:o!==void 0?`failed with exit code ${o}`:"failed",wOe=({stdout:e,stderr:t,all:r,error:s,signal:a,exitCode:o,command:g,escapedCommand:p,timedOut:f,isCanceled:m,killed:y,parsed:{options:{timeout:B,cwd:v=Txo.cwd()}}})=>{o=o===null?void 0:o,a=a===null?void 0:a;let k=a===void 0?void 0:vOn[a].description,T=s&&s.code,X=`Command ${Nxo({timedOut:f,timeout:B,errorCode:T,signal:a,signalDescription:k,exitCode:o,isCanceled:m})}: ${g}`,U=Object.prototype.toString.call(s)==="[object Error]",le=U?`${X} ${s.message}`:X,ae=[le,t,e].filter(Boolean).join(` -`);return U?(s.originalMessage=s.message,s.message=ae):s=new Error(ae),s.shortMessage=le,s.command=g,s.escapedCommand=p,s.exitCode=o,s.signal=a,s.signalDescription=G,s.stdout=e,s.stderr=t,s.cwd=v,r!==void 0&&(s.all=r),"bufferedData"in s&&delete s.bufferedData,s.failed=!0,s.timedOut=!!f,s.isCanceled=m,s.killed=y&&!f,s};var $At=["stdin","stdout","stderr"],fxo=e=>$At.some(t=>e[t]!==void 0),mOn=e=>{if(!e)return;let{stdio:t}=e;if(t===void 0)return $At.map(s=>e[s]);if(fxo(e))throw new Error(`It's not possible to provide \`stdio\` in combination with one of ${$At.map(s=>`\`${s}\``).join(", ")}`);if(typeof t=="string")return t;if(!Array.isArray(t))throw new TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof t}\``);let r=Math.max(t.length,$At.length);return Array.from({length:r},(s,a)=>t[a])};Dir();import mxo from"node:os";var hxo=1e3*5,_On=(e,t="SIGTERM",r={})=>{let s=e(t);return _xo(e,t,r,s),s},_xo=(e,t,r,s)=>{if(!yxo(t,r,s))return;let a=Exo(r),o=setTimeout(()=>{e("SIGKILL")},a);o.unref&&o.unref()},yxo=(e,{forceKillAfterTimeout:t},r)=>bxo(e)&&t!==!1&&r,bxo=e=>e===mxo.constants.signals.SIGTERM||typeof e=="string"&&e.toUpperCase()==="SIGTERM",Exo=({forceKillAfterTimeout:e=!0})=>{if(e===!0)return hxo;if(!Number.isFinite(e)||e<0)throw new TypeError(`Expected the \`forceKillAfterTimeout\` option to be a non-negative integer, got \`${e}\` (${typeof e})`);return e},yOn=(e,t)=>{e.kill()&&(t.isCanceled=!0)},Bxo=(e,t,r)=>{e.kill(t),r(Object.assign(new Error("Timed out"),{timedOut:!0,signal:t}))},bOn=(e,{timeout:t,killSignal:r="SIGTERM"},s)=>{if(t===0||t===void 0)return s;let a,o=new Promise((p,f)=>{a=setTimeout(()=>{Bxo(e,r,f)},t)}),g=s.finally(()=>{clearTimeout(a)});return Promise.race([o,g])},EOn=({timeout:e})=>{if(e!==void 0&&(!Number.isFinite(e)||e<0))throw new TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${e}\` (${typeof e})`)},BOn=async(e,{cleanup:t,detached:r},s)=>{if(!t||r)return s;let a=rdt(()=>{e.kill()});return s.finally(()=>{a()})};import{createWriteStream as vxo}from"node:fs";import{ChildProcess as Sxo}from"node:child_process";function ndt(e){return e!==null&&typeof e=="object"&&typeof e.pipe=="function"}function xir(e){return ndt(e)&&e.writable!==!1&&typeof e._write=="function"&&typeof e._writableState=="object"}var wxo=e=>e instanceof Sxo&&typeof e.then=="function",kir=(e,t,r)=>{if(typeof r=="string")return e[t].pipe(vxo(r)),e;if(xir(r))return e[t].pipe(r),e;if(!wxo(r))throw new TypeError("The second argument must be a string, a stream or an Execa child process.");if(!xir(r.stdin))throw new TypeError("The target child process's stdin must be available.");return e[t].pipe(r.stdin),r},vOn=e=>{e.stdout!==null&&(e.pipeStdout=kir.bind(void 0,e,"stdout")),e.stderr!==null&&(e.pipeStderr=kir.bind(void 0,e,"stderr")),e.all!==void 0&&(e.pipeAll=kir.bind(void 0,e,"all"))};import{createReadStream as Xxo,readFileSync as Jxo}from"node:fs";import{setTimeout as Uxo}from"node:timers/promises";var vOe=async(e,{init:t,convertChunk:r,getSize:s,truncateChunk:a,addChunk:o,getFinalChunk:g,finalize:p},{maxBuffer:f=Number.POSITIVE_INFINITY}={})=>{if(!Nxo(e))throw new Error("The first argument must be a Readable, a ReadableStream, or an async iterable.");let m=t();m.length=0;try{for await(let y of e){let B=Rxo(y),v=r[B](y,m);TOn({convertedChunk:v,state:m,getSize:s,truncateChunk:a,addChunk:o,maxBuffer:f})}return Txo({state:m,convertChunk:r,getSize:s,truncateChunk:a,addChunk:o,getFinalChunk:g,maxBuffer:f}),p(m)}catch(y){throw y.bufferedData=p(m),y}},Txo=({state:e,getSize:t,truncateChunk:r,addChunk:s,getFinalChunk:a,maxBuffer:o})=>{let g=a(e);g!==void 0&&TOn({convertedChunk:g,state:e,getSize:t,truncateChunk:r,addChunk:s,maxBuffer:o})},TOn=({convertedChunk:e,state:t,getSize:r,truncateChunk:s,addChunk:a,maxBuffer:o})=>{let g=r(e),p=t.length+g;if(p<=o){SOn(e,t,a,p);return}let f=s(e,o-t.length);throw f!==void 0&&SOn(f,t,a,o),new idt},SOn=(e,t,r,s)=>{t.contents=r(e,t,s),t.length=s},Nxo=e=>typeof e=="object"&&e!==null&&typeof e[Symbol.asyncIterator]=="function",Rxo=e=>{let t=typeof e;if(t==="string")return"string";if(t!=="object"||e===null)return"others";if(globalThis.Buffer?.isBuffer(e))return"buffer";let r=wOn.call(e);return r==="[object ArrayBuffer]"?"arrayBuffer":r==="[object DataView]"?"dataView":Number.isInteger(e.byteLength)&&Number.isInteger(e.byteOffset)&&wOn.call(e.buffer)==="[object ArrayBuffer]"?"typedArray":"others"},{toString:wOn}=Object.prototype,idt=class extends Error{name="MaxBufferError";constructor(){super("maxBuffer exceeded")}};var Gir=e=>e,Fir=()=>{},Zir=({contents:e})=>e,sdt=e=>{throw new Error(`Streams in object mode are not supported: ${String(e)}`)},odt=e=>e.length;async function Lir(e,t){return vOe(e,Wxo,t)}var Dxo=()=>({contents:new ArrayBuffer(0)}),xxo=e=>kxo.encode(e),kxo=new TextEncoder,NOn=e=>new Uint8Array(e),ROn=e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength),Gxo=(e,t)=>e.slice(0,t),Fxo=(e,{contents:t,length:r},s)=>{let a=kOn()?Lxo(t,s):Zxo(t,s);return new Uint8Array(a).set(e,r),a},Zxo=(e,t)=>{if(t<=e.byteLength)return e;let r=new ArrayBuffer(xOn(t));return new Uint8Array(r).set(new Uint8Array(e),0),r},Lxo=(e,t)=>{if(t<=e.maxByteLength)return e.resize(t),e;let r=new ArrayBuffer(t,{maxByteLength:xOn(t)});return new Uint8Array(r).set(new Uint8Array(e),0),r},xOn=e=>DOn**Math.ceil(Math.log(e)/Math.log(DOn)),DOn=2,Vxo=({contents:e,length:t})=>kOn()?e:e.slice(0,t),kOn=()=>"resize"in ArrayBuffer.prototype,Wxo={init:Dxo,convertChunk:{string:xxo,buffer:NOn,arrayBuffer:NOn,dataView:ROn,typedArray:ROn,others:sdt},getSize:odt,truncateChunk:Gxo,addChunk:Fxo,getFinalChunk:Fir,finalize:Vxo};async function adt(e,t){if(!("Buffer"in globalThis))throw new Error("getStreamAsBuffer() is only supported in Node.js");try{return GOn(await Lir(e,t))}catch(r){throw r.bufferedData!==void 0&&(r.bufferedData=GOn(r.bufferedData)),r}}var GOn=e=>globalThis.Buffer.from(e);async function Vir(e,t){return vOe(e,Yxo,t)}var Pxo=()=>({contents:"",textDecoder:new TextDecoder}),cdt=(e,{textDecoder:t})=>t.decode(e,{stream:!0}),Oxo=(e,{contents:t})=>t+e,Mxo=(e,t)=>e.slice(0,t),Qxo=({textDecoder:e})=>{let t=e.decode();return t===""?void 0:t},Yxo={init:Pxo,convertChunk:{string:Gir,buffer:cdt,arrayBuffer:cdt,dataView:cdt,typedArray:cdt,others:sdt},getSize:odt,truncateChunk:Mxo,addChunk:Oxo,getFinalChunk:Qxo,finalize:Zir};var LOn=xt(ZOn(),1),VOn=e=>{if(e!==void 0)throw new TypeError("The `input` and `inputFile` options cannot be both set.")},Kxo=({input:e,inputFile:t})=>typeof t!="string"?e:(VOn(e),Jxo(t)),WOn=e=>{let t=Kxo(e);if(ndt(t))throw new TypeError("The `input` option cannot be a stream in sync mode");return t},jxo=({input:e,inputFile:t})=>typeof t!="string"?e:(VOn(e),Xxo(t)),POn=(e,t)=>{let r=jxo(t);r!==void 0&&(ndt(r)?r.pipe(e.stdin):e.stdin.end(r))},OOn=(e,{all:t})=>{if(!t||!e.stdout&&!e.stderr)return;let r=(0,LOn.default)();return e.stdout&&r.add(e.stdout),e.stderr&&r.add(e.stderr),r},Wir=async(e,t)=>{if(!(!e||t===void 0)){await Uxo(0),e.destroy();try{return await t}catch(r){return r.bufferedData}}},Pir=(e,{encoding:t,buffer:r,maxBuffer:s})=>{if(!(!e||!r))return t==="utf8"||t==="utf-8"?Vir(e,{maxBuffer:s}):t===null||t==="buffer"?adt(e,{maxBuffer:s}):zxo(e,s,t)},zxo=async(e,t,r)=>(await adt(e,{maxBuffer:t})).toString(r),MOn=async({stdout:e,stderr:t,all:r},{encoding:s,buffer:a,maxBuffer:o},g)=>{let p=Pir(e,{encoding:s,buffer:a,maxBuffer:o}),f=Pir(t,{encoding:s,buffer:a,maxBuffer:o}),m=Pir(r,{encoding:s,buffer:a,maxBuffer:o*2});try{return await Promise.all([g,p,f,m])}catch(y){return Promise.all([{error:y,signal:y.signal,timedOut:y.timedOut},Wir(e,p),Wir(t,f),Wir(r,m)])}};var qxo=(async()=>{})().constructor.prototype,$xo=["then","catch","finally"].map(e=>[e,Reflect.getOwnPropertyDescriptor(qxo,e)]),Oir=(e,t)=>{for(let[r,s]of $xo){let a=typeof t=="function"?(...o)=>Reflect.apply(s.value,t(),o):s.value.bind(t);Reflect.defineProperty(e,r,{...s,value:a})}},QOn=e=>new Promise((t,r)=>{e.on("exit",(s,a)=>{t({exitCode:s,signal:a})}),e.on("error",s=>{r(s)}),e.stdin&&e.stdin.on("error",s=>{r(s)})});import{Buffer as eko}from"node:buffer";import{ChildProcess as tko}from"node:child_process";var XOn=(e,t=[])=>Array.isArray(t)?[e,...t]:[e],rko=/^[\w.-]+$/,nko=e=>typeof e!="string"||rko.test(e)?e:`"${e.replaceAll('"','\\"')}"`,Mir=(e,t)=>XOn(e,t).join(" "),Qir=(e,t)=>XOn(e,t).map(r=>nko(r)).join(" "),JOn=/ +/g,UOn=e=>{let t=[];for(let r of e.trim().split(JOn)){let s=t.at(-1);s&&s.endsWith("\\")?t[t.length-1]=`${s.slice(0,-1)} ${r}`:t.push(r)}return t},YOn=e=>{let t=typeof e;if(t==="string")return e;if(t==="number")return String(e);if(t==="object"&&e!==null&&!(e instanceof tko)&&"stdout"in e){let r=typeof e.stdout;if(r==="string")return e.stdout;if(eko.isBuffer(e.stdout))return e.stdout.toString();throw new TypeError(`Unexpected "${r}" stdout in template expression`)}throw new TypeError(`Unexpected "${t}" in template expression`)},HOn=(e,t,r)=>r||e.length===0||t.length===0?[...e,...t]:[...e.slice(0,-1),`${e.at(-1)}${t[0]}`,...t.slice(1)],iko=({templates:e,expressions:t,tokens:r,index:s,template:a})=>{let o=a??e.raw[s],g=o.split(JOn).filter(Boolean),p=HOn(r,g,o.startsWith(" "));if(s===t.length)return p;let f=t[s],m=Array.isArray(f)?f.map(y=>YOn(y)):[YOn(f)];return HOn(p,m,o.endsWith(" "))},Yir=(e,t)=>{let r=[];for(let[s,a]of e.entries())r=iko({templates:e,expressions:t,tokens:r,index:s,template:a});return r};import{debuglog as sko}from"node:util";import oko from"node:process";var KOn=sko("execa").enabled,ldt=(e,t)=>String(e).padStart(t,"0"),ako=()=>{let e=new Date;return`${ldt(e.getHours(),2)}:${ldt(e.getMinutes(),2)}:${ldt(e.getSeconds(),2)}.${ldt(e.getMilliseconds(),3)}`},Hir=(e,{verbose:t})=>{t&&oko.stderr.write(`[${ako()}] ${e} -`)};var uko=1e3*1e3*100,gko=({env:e,extendEnv:t,preferLocal:r,localDir:s,execPath:a})=>{let o=t?{...udt.env,...e}:e;return r?uOn({env:o,cwd:s,execPath:a}):o},qOn=(e,t,r={})=>{let s=zOn.default._parse(e,t,r);return e=s.command,t=s.args,r=s.options,r={maxBuffer:uko,buffer:!0,stripFinalNewline:!0,extendEnv:!0,preferLocal:!1,localDir:r.cwd||udt.cwd(),execPath:udt.execPath,encoding:"utf8",reject:!0,cleanup:!0,all:!1,windowsHide:!0,verbose:KOn,...r},r.env=gko(r),r.stdio=mOn(r),udt.platform==="win32"&&lko.basename(e,".exe")==="cmd"&&t.unshift("/q"),{file:e,args:t,options:r,parsed:s}},SOe=(e,t,r)=>typeof t!="string"&&!cko.isBuffer(t)?r===void 0?void 0:"":e.stripFinalNewline?bir(t):t;function lz(e,t,r){let s=qOn(e,t,r),a=Mir(e,t),o=Qir(e,t);Hir(o,s.options),EOn(s.options);let g;try{g=Xir.spawn(s.file,s.args,s.options)}catch(G){let T=new Xir.ChildProcess,O=Promise.reject(BOe({error:G,stdout:"",stderr:"",all:"",command:a,escapedCommand:o,parsed:s,timedOut:!1,isCanceled:!1,killed:!1}));return Oir(T,O),T}let p=QOn(g),f=bOn(g,s.options,p),m=BOn(g,s.options,f),y={isCanceled:!1};g.kill=_On.bind(null,g.kill.bind(g)),g.cancel=yOn.bind(null,g,y);let v=AOn(async()=>{let[{error:G,exitCode:T,signal:O,timedOut:X},U,le,ae]=await MOn(g,s.options,m),ge=SOe(s.options,U),fe=SOe(s.options,le),pe=SOe(s.options,ae);if(G||T!==0||O!==null){let he=BOe({error:G,exitCode:T,signal:O,stdout:ge,stderr:fe,all:pe,command:a,escapedCommand:o,parsed:s,timedOut:X,isCanceled:y.isCanceled||(s.options.signal?s.options.signal.aborted:!1),killed:g.killed});if(!s.options.reject)return he;throw he}return{command:a,escapedCommand:o,exitCode:0,stdout:ge,stderr:fe,all:pe,failed:!1,timedOut:!1,isCanceled:!1,killed:!1}});return POn(g,s.options),g.all=OOn(g,s.options),vOn(g),Oir(g,v),g}function Ako(e,t,r){let s=qOn(e,t,r),a=Mir(e,t),o=Qir(e,t);Hir(o,s.options);let g=WOn(s.options),p;try{p=Xir.spawnSync(s.file,s.args,{...s.options,input:g})}catch(y){throw BOe({error:y,stdout:"",stderr:"",all:"",command:a,escapedCommand:o,parsed:s,timedOut:!1,isCanceled:!1,killed:!1})}let f=SOe(s.options,p.stdout,p.error),m=SOe(s.options,p.stderr,p.error);if(p.error||p.status!==0||p.signal!==null){let y=BOe({stdout:f,stderr:m,error:p.error,signal:p.signal,exitCode:p.status,command:a,escapedCommand:o,parsed:s,timedOut:p.error&&p.error.code==="ETIMEDOUT",isCanceled:!1,killed:p.signal!==null});if(!s.options.reject)return y;throw y}return{command:a,escapedCommand:o,exitCode:0,stdout:f,stderr:m,failed:!1,timedOut:!1,isCanceled:!1,killed:!1}}var dko=({input:e,inputFile:t,stdio:r})=>e===void 0&&t===void 0&&r===void 0?{stdin:"inherit"}:{},jOn=(e={})=>({preferLocal:!0,...dko(e),...e});function $On(e){function t(r,...s){if(!Array.isArray(r))return $On({...e,...r});let[a,...o]=Yir(r,s);return lz(a,o,jOn(e))}return t.sync=(r,...s)=>{if(!Array.isArray(r))throw new TypeError("Please use $(options).sync`command` instead of $.sync(options)`command`.");let[a,...o]=Yir(r,s);return Ako(a,o,jOn(e))},t}var Hel=$On();function eMn(e,t){let[r,...s]=UOn(e);return lz(r,s,t)}async function gdt(e){let{cwd:t,fromLastTag:r,to:s,last:a,edit:o,gitLogArgs:g}=e,p=e.from;if(o)return HPn(t,o);if(a){let y=(await lz("git",["log","-1","--pretty=format:%B"],{cwd:t})).stdout;return y[0]=='"'&&y[y.length-1]=='"'&&(y=y.slice(1,-1)),[y]}if(!p&&r){let{stdout:m}=await lz("git",["describe","--abbrev=40","--always","--first-parent","--long","--tags"],{cwd:t});if(m.length===40)p=m;else{let y=m.lastIndexOf("-",m.length-43);p=m.slice(0,y)}}let f={from:p,to:s};return g&&(f={...(0,tMn.default)(g.split(" ")),from:p,to:s}),WPn(f,{cwd:t})}var Adt;(function(e){e[e.Disabled=0]="Disabled",e[e.Warning=1]="Warning",e[e.Error=2]="Error"})(Adt||(Adt={}));var rMn;(function(e){e[e.User=0]="User",e[e.Qualified=1]="Qualified"})(rMn||(rMn={}));var nMn=(e=0)=>t=>`\x1B[${t+e}m`,iMn=(e=0)=>t=>`\x1B[${38+e};5;${t}m`,sMn=(e=0)=>(t,r,s)=>`\x1B[${38+e};2;${t};${r};${s}m`,z1={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},atl=Object.keys(z1.modifier),pko=Object.keys(z1.color),fko=Object.keys(z1.bgColor),ctl=[...pko,...fko];function Iko(){let e=new Map;for(let[t,r]of Object.entries(z1)){for(let[s,a]of Object.entries(r))z1[s]={open:`\x1B[${a[0]}m`,close:`\x1B[${a[1]}m`},r[s]=z1[s],e.set(a[0],a[1]);Object.defineProperty(z1,t,{value:r,enumerable:!1})}return Object.defineProperty(z1,"codes",{value:e,enumerable:!1}),z1.color.close="\x1B[39m",z1.bgColor.close="\x1B[49m",z1.color.ansi=nMn(),z1.color.ansi256=iMn(),z1.color.ansi16m=sMn(),z1.bgColor.ansi=nMn(10),z1.bgColor.ansi256=iMn(10),z1.bgColor.ansi16m=sMn(10),Object.defineProperties(z1,{rgbToAnsi256:{value(t,r,s){return t===r&&r===s?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(s/255*5)},enumerable:!1},hexToRgb:{value(t){let r=/[a-f\d]{6}|[a-f\d]{3}/i.exec(t.toString(16));if(!r)return[0,0,0];let[s]=r;s.length===3&&(s=[...s].map(o=>o+o).join(""));let a=Number.parseInt(s,16);return[a>>16&255,a>>8&255,a&255]},enumerable:!1},hexToAnsi256:{value:t=>z1.rgbToAnsi256(...z1.hexToRgb(t)),enumerable:!1},ansi256ToAnsi:{value(t){if(t<8)return 30+t;if(t<16)return 90+(t-8);let r,s,a;if(t>=232)r=((t-232)*10+8)/255,s=r,a=r;else{t-=16;let p=t%36;r=Math.floor(t/36)/5,s=Math.floor(p/6)/5,a=p%6/5}let o=Math.max(r,s,a)*2;if(o===0)return 30;let g=30+(Math.round(a)<<2|Math.round(s)<<1|Math.round(r));return o===2&&(g+=60),g},enumerable:!1},rgbToAnsi:{value:(t,r,s)=>z1.ansi256ToAnsi(z1.rgbToAnsi256(t,r,s)),enumerable:!1},hexToAnsi:{value:t=>z1.ansi256ToAnsi(z1.hexToAnsi256(t)),enumerable:!1}}),z1}var Cko=Iko(),zH=Cko;import Jir from"node:process";import mko from"node:os";import oMn from"node:tty";function aM(e,t=globalThis.Deno?globalThis.Deno.args:Jir.argv){let r=e.startsWith("-")?"":e.length===1?"-":"--",s=t.indexOf(r+e),a=t.indexOf("--");return s!==-1&&(a===-1||s=2,has16m:e>=3}}function yko(e,{streamIsTTY:t,sniffFlags:r=!0}={}){let s=hko();s!==void 0&&(ddt=s);let a=r?ddt:s;if(a===0)return 0;if(r){if(aM("color=16m")||aM("color=full")||aM("color=truecolor"))return 3;if(aM("color=256"))return 2}if("TF_BUILD"in cB&&"AGENT_NAME"in cB)return 1;if(e&&!t&&a===void 0)return 0;let o=a||0;if(cB.TERM==="dumb")return o;if(Jir.platform==="win32"){let g=mko.release().split(".");return Number(g[0])>=10&&Number(g[2])>=10586?Number(g[2])>=14931?3:2:1}if("CI"in cB)return"GITHUB_ACTIONS"in cB||"GITEA_ACTIONS"in cB?3:["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(g=>g in cB)||cB.CI_NAME==="codeship"?1:o;if("TEAMCITY_VERSION"in cB)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(cB.TEAMCITY_VERSION)?1:0;if(cB.COLORTERM==="truecolor"||cB.TERM==="xterm-kitty")return 3;if("TERM_PROGRAM"in cB){let g=Number.parseInt((cB.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(cB.TERM_PROGRAM){case"iTerm.app":return g>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(cB.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(cB.TERM)||"COLORTERM"in cB?1:o}function aMn(e,t={}){let r=yko(e,{streamIsTTY:e&&e.isTTY,...t});return _ko(r)}var bko={stdout:aMn({isTTY:oMn.isatty(1)}),stderr:aMn({isTTY:oMn.isatty(2)})},cMn=bko;function lMn(e,t,r){let s=e.indexOf(t);if(s===-1)return e;let a=t.length,o=0,g="";do g+=e.slice(o,s)+t+r,o=s+a,s=e.indexOf(t,o);while(s!==-1);return g+=e.slice(o),g}function uMn(e,t,r,s){let a=0,o="";do{let g=e[s-1]==="\r";o+=e.slice(a,g?s-1:s)+t+(g?`\r +`);return U?(s.originalMessage=s.message,s.message=ae):s=new Error(ae),s.shortMessage=le,s.command=g,s.escapedCommand=p,s.exitCode=o,s.signal=a,s.signalDescription=k,s.stdout=e,s.stderr=t,s.cwd=v,r!==void 0&&(s.all=r),"bufferedData"in s&&delete s.bufferedData,s.failed=!0,s.timedOut=!!f,s.isCanceled=m,s.killed=y&&!f,s};var tdt=["stdin","stdout","stderr"],Rxo=e=>tdt.some(t=>e[t]!==void 0),SOn=e=>{if(!e)return;let{stdio:t}=e;if(t===void 0)return tdt.map(s=>e[s]);if(Rxo(e))throw new Error(`It's not possible to provide \`stdio\` in combination with one of ${tdt.map(s=>`\`${s}\``).join(", ")}`);if(typeof t=="string")return t;if(!Array.isArray(t))throw new TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof t}\``);let r=Math.max(t.length,tdt.length);return Array.from({length:r},(s,a)=>t[a])};Lir();import kxo from"node:os";var Gxo=1e3*5,TOn=(e,t="SIGTERM",r={})=>{let s=e(t);return Fxo(e,t,r,s),s},Fxo=(e,t,r,s)=>{if(!Zxo(t,r,s))return;let a=Vxo(r),o=setTimeout(()=>{e("SIGKILL")},a);o.unref&&o.unref()},Zxo=(e,{forceKillAfterTimeout:t},r)=>Lxo(e)&&t!==!1&&r,Lxo=e=>e===kxo.constants.signals.SIGTERM||typeof e=="string"&&e.toUpperCase()==="SIGTERM",Vxo=({forceKillAfterTimeout:e=!0})=>{if(e===!0)return Gxo;if(!Number.isFinite(e)||e<0)throw new TypeError(`Expected the \`forceKillAfterTimeout\` option to be a non-negative integer, got \`${e}\` (${typeof e})`);return e},NOn=(e,t)=>{e.kill()&&(t.isCanceled=!0)},Wxo=(e,t,r)=>{e.kill(t),r(Object.assign(new Error("Timed out"),{timedOut:!0,signal:t}))},ROn=(e,{timeout:t,killSignal:r="SIGTERM"},s)=>{if(t===0||t===void 0)return s;let a,o=new Promise((p,f)=>{a=setTimeout(()=>{Wxo(e,r,f)},t)}),g=s.finally(()=>{clearTimeout(a)});return Promise.race([o,g])},DOn=({timeout:e})=>{if(e!==void 0&&(!Number.isFinite(e)||e<0))throw new TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${e}\` (${typeof e})`)},xOn=async(e,{cleanup:t,detached:r},s)=>{if(!t||r)return s;let a=idt(()=>{e.kill()});return s.finally(()=>{a()})};import{createWriteStream as Pxo}from"node:fs";import{ChildProcess as Oxo}from"node:child_process";function sdt(e){return e!==null&&typeof e=="object"&&typeof e.pipe=="function"}function Vir(e){return sdt(e)&&e.writable!==!1&&typeof e._write=="function"&&typeof e._writableState=="object"}var Qxo=e=>e instanceof Oxo&&typeof e.then=="function",Wir=(e,t,r)=>{if(typeof r=="string")return e[t].pipe(Pxo(r)),e;if(Vir(r))return e[t].pipe(r),e;if(!Qxo(r))throw new TypeError("The second argument must be a string, a stream or an Execa child process.");if(!Vir(r.stdin))throw new TypeError("The target child process's stdin must be available.");return e[t].pipe(r.stdin),r},kOn=e=>{e.stdout!==null&&(e.pipeStdout=Wir.bind(void 0,e,"stdout")),e.stderr!==null&&(e.pipeStderr=Wir.bind(void 0,e,"stderr")),e.all!==void 0&&(e.pipeAll=Wir.bind(void 0,e,"all"))};import{createReadStream as ako,readFileSync as cko}from"node:fs";import{setTimeout as lko}from"node:timers/promises";var TOe=async(e,{init:t,convertChunk:r,getSize:s,truncateChunk:a,addChunk:o,getFinalChunk:g,finalize:p},{maxBuffer:f=Number.POSITIVE_INFINITY}={})=>{if(!Hxo(e))throw new Error("The first argument must be a Readable, a ReadableStream, or an async iterable.");let m=t();m.length=0;try{for await(let y of e){let B=Yxo(y),v=r[B](y,m);ZOn({convertedChunk:v,state:m,getSize:s,truncateChunk:a,addChunk:o,maxBuffer:f})}return Mxo({state:m,convertChunk:r,getSize:s,truncateChunk:a,addChunk:o,getFinalChunk:g,maxBuffer:f}),p(m)}catch(y){throw y.bufferedData=p(m),y}},Mxo=({state:e,getSize:t,truncateChunk:r,addChunk:s,getFinalChunk:a,maxBuffer:o})=>{let g=a(e);g!==void 0&&ZOn({convertedChunk:g,state:e,getSize:t,truncateChunk:r,addChunk:s,maxBuffer:o})},ZOn=({convertedChunk:e,state:t,getSize:r,truncateChunk:s,addChunk:a,maxBuffer:o})=>{let g=r(e),p=t.length+g;if(p<=o){GOn(e,t,a,p);return}let f=s(e,o-t.length);throw f!==void 0&&GOn(f,t,a,o),new odt},GOn=(e,t,r,s)=>{t.contents=r(e,t,s),t.length=s},Hxo=e=>typeof e=="object"&&e!==null&&typeof e[Symbol.asyncIterator]=="function",Yxo=e=>{let t=typeof e;if(t==="string")return"string";if(t!=="object"||e===null)return"others";if(globalThis.Buffer?.isBuffer(e))return"buffer";let r=FOn.call(e);return r==="[object ArrayBuffer]"?"arrayBuffer":r==="[object DataView]"?"dataView":Number.isInteger(e.byteLength)&&Number.isInteger(e.byteOffset)&&FOn.call(e.buffer)==="[object ArrayBuffer]"?"typedArray":"others"},{toString:FOn}=Object.prototype,odt=class extends Error{name="MaxBufferError";constructor(){super("maxBuffer exceeded")}};var Pir=e=>e,Oir=()=>{},Qir=({contents:e})=>e,adt=e=>{throw new Error(`Streams in object mode are not supported: ${String(e)}`)},cdt=e=>e.length;async function Mir(e,t){return TOe(e,eko,t)}var Xxo=()=>({contents:new ArrayBuffer(0)}),Jxo=e=>Uxo.encode(e),Uxo=new TextEncoder,LOn=e=>new Uint8Array(e),VOn=e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength),Kxo=(e,t)=>e.slice(0,t),jxo=(e,{contents:t,length:r},s)=>{let a=OOn()?qxo(t,s):zxo(t,s);return new Uint8Array(a).set(e,r),a},zxo=(e,t)=>{if(t<=e.byteLength)return e;let r=new ArrayBuffer(POn(t));return new Uint8Array(r).set(new Uint8Array(e),0),r},qxo=(e,t)=>{if(t<=e.maxByteLength)return e.resize(t),e;let r=new ArrayBuffer(t,{maxByteLength:POn(t)});return new Uint8Array(r).set(new Uint8Array(e),0),r},POn=e=>WOn**Math.ceil(Math.log(e)/Math.log(WOn)),WOn=2,$xo=({contents:e,length:t})=>OOn()?e:e.slice(0,t),OOn=()=>"resize"in ArrayBuffer.prototype,eko={init:Xxo,convertChunk:{string:Jxo,buffer:LOn,arrayBuffer:LOn,dataView:VOn,typedArray:VOn,others:adt},getSize:cdt,truncateChunk:Kxo,addChunk:jxo,getFinalChunk:Oir,finalize:$xo};async function ldt(e,t){if(!("Buffer"in globalThis))throw new Error("getStreamAsBuffer() is only supported in Node.js");try{return QOn(await Mir(e,t))}catch(r){throw r.bufferedData!==void 0&&(r.bufferedData=QOn(r.bufferedData)),r}}var QOn=e=>globalThis.Buffer.from(e);async function Hir(e,t){return TOe(e,sko,t)}var tko=()=>({contents:"",textDecoder:new TextDecoder}),udt=(e,{textDecoder:t})=>t.decode(e,{stream:!0}),rko=(e,{contents:t})=>t+e,nko=(e,t)=>e.slice(0,t),iko=({textDecoder:e})=>{let t=e.decode();return t===""?void 0:t},sko={init:tko,convertChunk:{string:Pir,buffer:udt,arrayBuffer:udt,dataView:udt,typedArray:udt,others:adt},getSize:cdt,truncateChunk:nko,addChunk:rko,getFinalChunk:iko,finalize:Qir};var YOn=vt(HOn(),1),XOn=e=>{if(e!==void 0)throw new TypeError("The `input` and `inputFile` options cannot be both set.")},uko=({input:e,inputFile:t})=>typeof t!="string"?e:(XOn(e),cko(t)),JOn=e=>{let t=uko(e);if(sdt(t))throw new TypeError("The `input` option cannot be a stream in sync mode");return t},gko=({input:e,inputFile:t})=>typeof t!="string"?e:(XOn(e),ako(t)),UOn=(e,t)=>{let r=gko(t);r!==void 0&&(sdt(r)?r.pipe(e.stdin):e.stdin.end(r))},KOn=(e,{all:t})=>{if(!t||!e.stdout&&!e.stderr)return;let r=(0,YOn.default)();return e.stdout&&r.add(e.stdout),e.stderr&&r.add(e.stderr),r},Yir=async(e,t)=>{if(!(!e||t===void 0)){await lko(0),e.destroy();try{return await t}catch(r){return r.bufferedData}}},Xir=(e,{encoding:t,buffer:r,maxBuffer:s})=>{if(!(!e||!r))return t==="utf8"||t==="utf-8"?Hir(e,{maxBuffer:s}):t===null||t==="buffer"?ldt(e,{maxBuffer:s}):Ako(e,s,t)},Ako=async(e,t,r)=>(await ldt(e,{maxBuffer:t})).toString(r),jOn=async({stdout:e,stderr:t,all:r},{encoding:s,buffer:a,maxBuffer:o},g)=>{let p=Xir(e,{encoding:s,buffer:a,maxBuffer:o}),f=Xir(t,{encoding:s,buffer:a,maxBuffer:o}),m=Xir(r,{encoding:s,buffer:a,maxBuffer:o*2});try{return await Promise.all([g,p,f,m])}catch(y){return Promise.all([{error:y,signal:y.signal,timedOut:y.timedOut},Yir(e,p),Yir(t,f),Yir(r,m)])}};var dko=(async()=>{})().constructor.prototype,pko=["then","catch","finally"].map(e=>[e,Reflect.getOwnPropertyDescriptor(dko,e)]),Jir=(e,t)=>{for(let[r,s]of pko){let a=typeof t=="function"?(...o)=>Reflect.apply(s.value,t(),o):s.value.bind(t);Reflect.defineProperty(e,r,{...s,value:a})}},zOn=e=>new Promise((t,r)=>{e.on("exit",(s,a)=>{t({exitCode:s,signal:a})}),e.on("error",s=>{r(s)}),e.stdin&&e.stdin.on("error",s=>{r(s)})});import{Buffer as fko}from"node:buffer";import{ChildProcess as Iko}from"node:child_process";var eQn=(e,t=[])=>Array.isArray(t)?[e,...t]:[e],Cko=/^[\w.-]+$/,mko=e=>typeof e!="string"||Cko.test(e)?e:`"${e.replaceAll('"','\\"')}"`,Uir=(e,t)=>eQn(e,t).join(" "),Kir=(e,t)=>eQn(e,t).map(r=>mko(r)).join(" "),tQn=/ +/g,rQn=e=>{let t=[];for(let r of e.trim().split(tQn)){let s=t.at(-1);s&&s.endsWith("\\")?t[t.length-1]=`${s.slice(0,-1)} ${r}`:t.push(r)}return t},qOn=e=>{let t=typeof e;if(t==="string")return e;if(t==="number")return String(e);if(t==="object"&&e!==null&&!(e instanceof Iko)&&"stdout"in e){let r=typeof e.stdout;if(r==="string")return e.stdout;if(fko.isBuffer(e.stdout))return e.stdout.toString();throw new TypeError(`Unexpected "${r}" stdout in template expression`)}throw new TypeError(`Unexpected "${t}" in template expression`)},$On=(e,t,r)=>r||e.length===0||t.length===0?[...e,...t]:[...e.slice(0,-1),`${e.at(-1)}${t[0]}`,...t.slice(1)],hko=({templates:e,expressions:t,tokens:r,index:s,template:a})=>{let o=a??e.raw[s],g=o.split(tQn).filter(Boolean),p=$On(r,g,o.startsWith(" "));if(s===t.length)return p;let f=t[s],m=Array.isArray(f)?f.map(y=>qOn(y)):[qOn(f)];return $On(p,m,o.endsWith(" "))},jir=(e,t)=>{let r=[];for(let[s,a]of e.entries())r=hko({templates:e,expressions:t,tokens:r,index:s,template:a});return r};import{debuglog as _ko}from"node:util";import yko from"node:process";var nQn=_ko("execa").enabled,gdt=(e,t)=>String(e).padStart(t,"0"),bko=()=>{let e=new Date;return`${gdt(e.getHours(),2)}:${gdt(e.getMinutes(),2)}:${gdt(e.getSeconds(),2)}.${gdt(e.getMilliseconds(),3)}`},zir=(e,{verbose:t})=>{t&&yko.stderr.write(`[${bko()}] ${e} +`)};var vko=1e3*1e3*100,Sko=({env:e,extendEnv:t,preferLocal:r,localDir:s,execPath:a})=>{let o=t?{...Adt.env,...e}:e;return r?mOn({env:o,cwd:s,execPath:a}):o},oQn=(e,t,r={})=>{let s=sQn.default._parse(e,t,r);return e=s.command,t=s.args,r=s.options,r={maxBuffer:vko,buffer:!0,stripFinalNewline:!0,extendEnv:!0,preferLocal:!1,localDir:r.cwd||Adt.cwd(),execPath:Adt.execPath,encoding:"utf8",reject:!0,cleanup:!0,all:!1,windowsHide:!0,verbose:nQn,...r},r.env=Sko(r),r.stdio=SOn(r),Adt.platform==="win32"&&Bko.basename(e,".exe")==="cmd"&&t.unshift("/q"),{file:e,args:t,options:r,parsed:s}},NOe=(e,t,r)=>typeof t!="string"&&!Eko.isBuffer(t)?r===void 0?void 0:"":e.stripFinalNewline?Tir(t):t;function fz(e,t,r){let s=oQn(e,t,r),a=Uir(e,t),o=Kir(e,t);zir(o,s.options),DOn(s.options);let g;try{g=qir.spawn(s.file,s.args,s.options)}catch(k){let T=new qir.ChildProcess,O=Promise.reject(wOe({error:k,stdout:"",stderr:"",all:"",command:a,escapedCommand:o,parsed:s,timedOut:!1,isCanceled:!1,killed:!1}));return Jir(T,O),T}let p=zOn(g),f=ROn(g,s.options,p),m=xOn(g,s.options,f),y={isCanceled:!1};g.kill=TOn.bind(null,g.kill.bind(g)),g.cancel=NOn.bind(null,g,y);let v=_On(async()=>{let[{error:k,exitCode:T,signal:O,timedOut:X},U,le,ae]=await jOn(g,s.options,m),ge=NOe(s.options,U),fe=NOe(s.options,le),pe=NOe(s.options,ae);if(k||T!==0||O!==null){let he=wOe({error:k,exitCode:T,signal:O,stdout:ge,stderr:fe,all:pe,command:a,escapedCommand:o,parsed:s,timedOut:X,isCanceled:y.isCanceled||(s.options.signal?s.options.signal.aborted:!1),killed:g.killed});if(!s.options.reject)return he;throw he}return{command:a,escapedCommand:o,exitCode:0,stdout:ge,stderr:fe,all:pe,failed:!1,timedOut:!1,isCanceled:!1,killed:!1}});return UOn(g,s.options),g.all=KOn(g,s.options),kOn(g),Jir(g,v),g}function wko(e,t,r){let s=oQn(e,t,r),a=Uir(e,t),o=Kir(e,t);zir(o,s.options);let g=JOn(s.options),p;try{p=qir.spawnSync(s.file,s.args,{...s.options,input:g})}catch(y){throw wOe({error:y,stdout:"",stderr:"",all:"",command:a,escapedCommand:o,parsed:s,timedOut:!1,isCanceled:!1,killed:!1})}let f=NOe(s.options,p.stdout,p.error),m=NOe(s.options,p.stderr,p.error);if(p.error||p.status!==0||p.signal!==null){let y=wOe({stdout:f,stderr:m,error:p.error,signal:p.signal,exitCode:p.status,command:a,escapedCommand:o,parsed:s,timedOut:p.error&&p.error.code==="ETIMEDOUT",isCanceled:!1,killed:p.signal!==null});if(!s.options.reject)return y;throw y}return{command:a,escapedCommand:o,exitCode:0,stdout:f,stderr:m,failed:!1,timedOut:!1,isCanceled:!1,killed:!1}}var Tko=({input:e,inputFile:t,stdio:r})=>e===void 0&&t===void 0&&r===void 0?{stdin:"inherit"}:{},iQn=(e={})=>({preferLocal:!0,...Tko(e),...e});function aQn(e){function t(r,...s){if(!Array.isArray(r))return aQn({...e,...r});let[a,...o]=jir(r,s);return fz(a,o,iQn(e))}return t.sync=(r,...s)=>{if(!Array.isArray(r))throw new TypeError("Please use $(options).sync`command` instead of $.sync(options)`command`.");let[a,...o]=jir(r,s);return wko(a,o,iQn(e))},t}var Atl=aQn();function cQn(e,t){let[r,...s]=rQn(e);return fz(r,s,t)}async function ddt(e){let{cwd:t,fromLastTag:r,to:s,last:a,edit:o,gitLogArgs:g}=e,p=e.from;if(o)return $Pn(t,o);if(a){let y=(await fz("git",["log","-1","--pretty=format:%B"],{cwd:t})).stdout;return y[0]=='"'&&y[y.length-1]=='"'&&(y=y.slice(1,-1)),[y]}if(!p&&r){let{stdout:m}=await fz("git",["describe","--abbrev=40","--always","--first-parent","--long","--tags"],{cwd:t});if(m.length===40)p=m;else{let y=m.lastIndexOf("-",m.length-43);p=m.slice(0,y)}}let f={from:p,to:s};return g&&(f={...(0,lQn.default)(g.split(" ")),from:p,to:s}),JPn(f,{cwd:t})}var pdt;(function(e){e[e.Disabled=0]="Disabled",e[e.Warning=1]="Warning",e[e.Error=2]="Error"})(pdt||(pdt={}));var uQn;(function(e){e[e.User=0]="User",e[e.Qualified=1]="Qualified"})(uQn||(uQn={}));var gQn=(e=0)=>t=>`\x1B[${t+e}m`,AQn=(e=0)=>t=>`\x1B[${38+e};5;${t}m`,dQn=(e=0)=>(t,r,s)=>`\x1B[${38+e};2;${t};${r};${s}m`,q1={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},Ttl=Object.keys(q1.modifier),Nko=Object.keys(q1.color),Rko=Object.keys(q1.bgColor),Ntl=[...Nko,...Rko];function Dko(){let e=new Map;for(let[t,r]of Object.entries(q1)){for(let[s,a]of Object.entries(r))q1[s]={open:`\x1B[${a[0]}m`,close:`\x1B[${a[1]}m`},r[s]=q1[s],e.set(a[0],a[1]);Object.defineProperty(q1,t,{value:r,enumerable:!1})}return Object.defineProperty(q1,"codes",{value:e,enumerable:!1}),q1.color.close="\x1B[39m",q1.bgColor.close="\x1B[49m",q1.color.ansi=gQn(),q1.color.ansi256=AQn(),q1.color.ansi16m=dQn(),q1.bgColor.ansi=gQn(10),q1.bgColor.ansi256=AQn(10),q1.bgColor.ansi16m=dQn(10),Object.defineProperties(q1,{rgbToAnsi256:{value(t,r,s){return t===r&&r===s?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(s/255*5)},enumerable:!1},hexToRgb:{value(t){let r=/[a-f\d]{6}|[a-f\d]{3}/i.exec(t.toString(16));if(!r)return[0,0,0];let[s]=r;s.length===3&&(s=[...s].map(o=>o+o).join(""));let a=Number.parseInt(s,16);return[a>>16&255,a>>8&255,a&255]},enumerable:!1},hexToAnsi256:{value:t=>q1.rgbToAnsi256(...q1.hexToRgb(t)),enumerable:!1},ansi256ToAnsi:{value(t){if(t<8)return 30+t;if(t<16)return 90+(t-8);let r,s,a;if(t>=232)r=((t-232)*10+8)/255,s=r,a=r;else{t-=16;let p=t%36;r=Math.floor(t/36)/5,s=Math.floor(p/6)/5,a=p%6/5}let o=Math.max(r,s,a)*2;if(o===0)return 30;let g=30+(Math.round(a)<<2|Math.round(s)<<1|Math.round(r));return o===2&&(g+=60),g},enumerable:!1},rgbToAnsi:{value:(t,r,s)=>q1.ansi256ToAnsi(q1.rgbToAnsi256(t,r,s)),enumerable:!1},hexToAnsi:{value:t=>q1.ansi256ToAnsi(q1.hexToAnsi256(t)),enumerable:!1}}),q1}var xko=Dko(),$H=xko;import $ir from"node:process";import kko from"node:os";import pQn from"node:tty";function uQ(e,t=globalThis.Deno?globalThis.Deno.args:$ir.argv){let r=e.startsWith("-")?"":e.length===1?"-":"--",s=t.indexOf(r+e),a=t.indexOf("--");return s!==-1&&(a===-1||s=2,has16m:e>=3}}function Zko(e,{streamIsTTY:t,sniffFlags:r=!0}={}){let s=Gko();s!==void 0&&(fdt=s);let a=r?fdt:s;if(a===0)return 0;if(r){if(uQ("color=16m")||uQ("color=full")||uQ("color=truecolor"))return 3;if(uQ("color=256"))return 2}if("TF_BUILD"in lB&&"AGENT_NAME"in lB)return 1;if(e&&!t&&a===void 0)return 0;let o=a||0;if(lB.TERM==="dumb")return o;if($ir.platform==="win32"){let g=kko.release().split(".");return Number(g[0])>=10&&Number(g[2])>=10586?Number(g[2])>=14931?3:2:1}if("CI"in lB)return"GITHUB_ACTIONS"in lB||"GITEA_ACTIONS"in lB?3:["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(g=>g in lB)||lB.CI_NAME==="codeship"?1:o;if("TEAMCITY_VERSION"in lB)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(lB.TEAMCITY_VERSION)?1:0;if(lB.COLORTERM==="truecolor"||lB.TERM==="xterm-kitty")return 3;if("TERM_PROGRAM"in lB){let g=Number.parseInt((lB.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(lB.TERM_PROGRAM){case"iTerm.app":return g>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(lB.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(lB.TERM)||"COLORTERM"in lB?1:o}function fQn(e,t={}){let r=Zko(e,{streamIsTTY:e&&e.isTTY,...t});return Fko(r)}var Lko={stdout:fQn({isTTY:pQn.isatty(1)}),stderr:fQn({isTTY:pQn.isatty(2)})},IQn=Lko;function CQn(e,t,r){let s=e.indexOf(t);if(s===-1)return e;let a=t.length,o=0,g="";do g+=e.slice(o,s)+t+r,o=s+a,s=e.indexOf(t,o);while(s!==-1);return g+=e.slice(o),g}function mQn(e,t,r,s){let a=0,o="";do{let g=e[s-1]==="\r";o+=e.slice(a,g?s-1:s)+t+(g?`\r `:` `)+r,a=s+1,s=e.indexOf(` -`,a)}while(s!==-1);return o+=e.slice(a),o}var{stdout:gMn,stderr:AMn}=cMn,Uir=Symbol("GENERATOR"),rBe=Symbol("STYLER"),wOe=Symbol("IS_EMPTY"),dMn=["ansi","ansi","ansi256","ansi16m"],nBe=Object.create(null),Eko=(e,t={})=>{if(t.level&&!(Number.isInteger(t.level)&&t.level>=0&&t.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let r=gMn?gMn.level:0;e.level=t.level===void 0?r:t.level};var Bko=e=>{let t=(...r)=>r.join(" ");return Eko(t,e),Object.setPrototypeOf(t,TOe.prototype),t};function TOe(e){return Bko(e)}Object.setPrototypeOf(TOe.prototype,Function.prototype);for(let[e,t]of Object.entries(zH))nBe[e]={get(){let r=pdt(this,jir(t.open,t.close,this[rBe]),this[wOe]);return Object.defineProperty(this,e,{value:r}),r}};nBe.visible={get(){let e=pdt(this,this[rBe],!0);return Object.defineProperty(this,"visible",{value:e}),e}};var Kir=(e,t,r,...s)=>e==="rgb"?t==="ansi16m"?zH[r].ansi16m(...s):t==="ansi256"?zH[r].ansi256(zH.rgbToAnsi256(...s)):zH[r].ansi(zH.rgbToAnsi(...s)):e==="hex"?Kir("rgb",t,r,...zH.hexToRgb(...s)):zH[r][e](...s),vko=["rgb","hex","ansi256"];for(let e of vko){nBe[e]={get(){let{level:r}=this;return function(...s){let a=jir(Kir(e,dMn[r],"color",...s),zH.color.close,this[rBe]);return pdt(this,a,this[wOe])}}};let t="bg"+e[0].toUpperCase()+e.slice(1);nBe[t]={get(){let{level:r}=this;return function(...s){let a=jir(Kir(e,dMn[r],"bgColor",...s),zH.bgColor.close,this[rBe]);return pdt(this,a,this[wOe])}}}}var Sko=Object.defineProperties(()=>{},{...nBe,level:{enumerable:!0,get(){return this[Uir].level},set(e){this[Uir].level=e}}}),jir=(e,t,r)=>{let s,a;return r===void 0?(s=e,a=t):(s=r.openAll+e,a=t+r.closeAll),{open:e,close:t,openAll:s,closeAll:a,parent:r}},pdt=(e,t,r)=>{let s=(...a)=>wko(s,a.length===1?""+a[0]:a.join(" "));return Object.setPrototypeOf(s,Sko),s[Uir]=e,s[rBe]=t,s[wOe]=r,s},wko=(e,t)=>{if(e.level<=0||!t)return e[wOe]?"":t;let r=e[rBe];if(r===void 0)return t;let{openAll:s,closeAll:a}=r;if(t.includes("\x1B"))for(;r!==void 0;)t=lMn(t,r.close,r.open),r=r.parent;let o=t.indexOf(` -`);return o!==-1&&(t=uMn(t,a,s,o)),s+t+a};Object.defineProperties(TOe.prototype,nBe);var Tko=TOe(),mtl=TOe({level:AMn?AMn.level:0});var Ap=Tko;var Nko=[" ","\u26A0","\u2716"],Rko=["white","yellow","red"];function pMn(e={},t={}){let{results:r=[]}=e,s=o=>Dko(o,t),a=o=>xko(o,t);return r.filter(o=>Array.isArray(o.warnings)||Array.isArray(o.errors)).map(o=>[...s(o),...a(o)]).reduce((o,g)=>Array.isArray(g)?[...o,...g]:[...o,g],[]).join(` -`)}function Dko(e,t={}){let{color:r=!0}=t,{errors:s=[],warnings:a=[],input:o=""}=e;if(!o)return[""];let g="\u29D7",p=r?Ap.gray(g):g,f=r?Ap.bold(o):o,m=s.length>0||a.length>0;return t.verbose||m?[`${p} input: ${f}`]:[]}function xko(e={},t={}){let{signs:r=Nko,colors:s=Rko,color:a=!0}=t,{errors:o=[],warnings:g=[]}=e,p=[...o,...g].map(U=>{let le=r[U.level]||"",ae=s[U.level]||"white",ge=a?Ap[ae](le):le,fe=a?Ap.grey(`[${U.name}]`):`[${U.name}]`;return`${ge} ${U.message} ${fe}`}),f=kko(e),m=Gko(e),y=a?Ap[m](f):f,B=o.length,v=g.length,G=p.length>0,T=t.verbose||G?`${y} found ${B} problems, ${v} warnings`:void 0,O=a&&typeof T=="string"?Ap.bold(T):T,X=G&&t.helpUrl?`\u24D8 Get help: ${t.helpUrl}`:void 0;return[...p,G?"":void 0,O,X,G?"":void 0].filter(U=>typeof U=="string")}function kko(e){return(e.errors||[]).length>0?"\u2716":(e.warnings||[]).length?"\u26A0":"\u2714"}function Gko(e){return(e.errors||[]).length>0?"red":(e.warnings||[]).length?"yellow":"green"}import lBe from"util";var fMn=xt(Lh(),1),Fko=e=>{let t=e.split(` -`).shift();if(typeof t!="string")return!1;let r=t.replace(/^chore(\([^)]+\))?:/,"").trim();return fMn.default.valid(r)!==null},Gie=e=>e.test.bind(e),IMn=[Gie(/^((Merge pull request)|(Merge (.*?) into (.*?)|(Merge branch (.*?)))(?:\r?\n)*$)/m),Gie(/^(Merge tag (.*?))(?:\r?\n)*$/m),Gie(/^(R|r)evert (.*)/),Gie(/^(amend|fixup|squash)!/),Fko,Gie(/^(Merged (.*?)(in|into) (.*)|Merged PR (.*): (.*))/),Gie(/^Merge remote-tracking branch(\s*)(.*)/),Gie(/^Automatic merge(.*)/),Gie(/^Auto-merged (.*?) into (.*)/)];function fdt(e="",t={}){let r=typeof t.ignores>"u"?[]:t.ignores;if(!Array.isArray(r))throw new Error(`ignores must be of type array, received ${r} of type ${typeof r}`);let s=r.filter(o=>typeof o!="function");if(s.length>0)throw new Error(`ignores must be array of type function, received items of type: ${s.map(o=>typeof o).join(", ")}`);return[...t.defaults===!1?[]:IMn,...r].some(o=>o(e))}var LMn=xt(SMn(),1),VMn=xt(ZMn(),1);async function sGo(e,t=LMn.sync,r){let o={...(await(0,VMn.default)()).parserOpts,fieldPattern:null,...r||{}},g=t(e,o);return g.raw=e,g}var WMn=sGo;var dsr=xt(uQn(),1),QYn=xt(kQn(),1),YYn=xt(rYn(),1),psr=xt(CYn(),1),HYn=xt(MYn(),1);function bdt(e,t){switch(t){case"camel-case":return(0,dsr.default)(e);case"kebab-case":return(0,QYn.default)(e);case"snake-case":return(0,YYn.default)(e);case"pascal-case":return(0,psr.default)((0,dsr.default)(e));case"start-case":return(0,HYn.default)(e);case"upper-case":case"uppercase":return e.toUpperCase();case"sentence-case":case"sentencecase":return(0,psr.default)(e);case"lower-case":case"lowercase":case"lowerCase":return e.toLowerCase();default:throw new TypeError(`to-case: Unknown target case "${t}"`)}}var qH=jLo;function jLo(e="",t="lowercase"){let r=String(e).replace(/`.*?`|".*?"|'.*?'/g,"").trim(),s=bdt(r,t);return s===""||s.match(/^\d/)?!0:s===r}var NOe=(e,t=[])=>e===void 0||!Array.isArray(t)?!1:t.indexOf(e)>-1;var LF=(e,t)=>typeof e=="string"&&e.length<=t;var ROe=(e,t)=>typeof e=="string"&&e.split(/\r?\n/).every(r=>LF(r,t));var YW=(e,t)=>typeof e=="string"&&e.length>=t;var $H=e=>typeof e=="string"&&e.length>0;function Qf(e=[]){return e.filter(Boolean).join(" ")}var fsr=e=>e==="never",XYn=(e,t="always",r=[])=>{let{body:s}=e;if(!s)return[!0];let a=(Array.isArray(r)?r:[r]).map(p=>typeof p=="string"?{when:"always",case:p}:p),o=a.some(p=>{let f=qH(s,p.case);return fsr(p.when)?!f:f}),g=a.map(p=>p.case).join(", ");return[fsr(t)?!o:o,Qf(["body must",fsr(t)?"not":null,`be ${g}`])]};var JYn=(e,t="always")=>{let r=t==="never",s=$H(e.body||"");return[r?s:!s,Qf(["body",r?"may not":"must","be empty"])]};var UYn=(e,t="always",r=".")=>{let s=e.body;if(!s)return[!0];let a=t==="never",o=s[s.length-1]===r;return[a?!o:o,Qf(["body",a?"may not":"must","end with full stop"])]};function bU(e){return typeof e!="string"?[]:e.split(/(?:\r?\n)/)}var KYn=(e,t)=>{if(!e.body)return[!0];let r=t==="never",[s]=bU(e.raw).slice(1),a=s==="";return[r?!a:a,Qf(["body",r?"may not":"must","have leading blank line"])]};var jYn=(e,t=void 0,r=0)=>{let s=e.body;return s?[LF(s,r),`body must not be longer than ${r} characters`]:[!0]};var zYn=(e,t=void 0,r=0)=>{let s=e.body;return s?[ROe(s,r),`body's lines must not be longer than ${r} characters`]:[!0]};var qYn=(e,t=void 0,r=0)=>e.body?[YW(e.body,r),`body must not be shorter than ${r} characters`]:[!0];var $Yn=(e,t="always")=>{let r=t==="never",s=$H(e.footer||"");return[r?s:!s,Qf(["footer",r?"may not":"must","be empty"])]};var eHn=(e,t="always")=>{if(!e.footer)return[!0];let r=t==="never",s=bU(e.raw),a=bU(e.footer),o=s.indexOf(a[0]),[g]=s.slice(o-1),p=g==="";return[r?!p:p,Qf(["footer",r?"may not":"must","have leading blank line"])]};var tHn=(e,t=void 0,r=0)=>{let s=e.footer;return s?[LF(s,r),`footer must not be longer than ${r} characters`]:[!0]};var rHn=(e,t=void 0,r=0)=>{let s=e.footer;return s?[ROe(s,r),`footer's lines must not be longer than ${r} characters`]:[!0]};var nHn=(e,t=void 0,r=0)=>e.footer?[YW(e.footer,r),`footer must not be shorter than ${r} characters`]:[!0];var Isr=e=>e==="never",iHn=(e,t="always",r=[])=>{let{header:s}=e;if(typeof s!="string"||!s.match(/^[a-z]/i))return[!0];let a=(Array.isArray(r)?r:[r]).map(p=>typeof p=="string"?{when:"always",case:p}:p),o=a.some(p=>{let f=qH(s,p.case);return Isr(p.when)?!f:f}),g=a.map(p=>p.case).join(", ");return[Isr(t)?!o:o,Qf(["header must",Isr(t)?"not":null,`be ${g}`])]};var sHn=(e,t="always",r=".")=>{let{header:s}=e,a=t==="never",o=s?.[s.length-1]===r;return[a?!o:o,Qf(["header",a?"may not":"must","end with full stop"])]};var oHn=(e,t=void 0,r=0)=>[LF(e.header,r),`header must not be longer than ${r} characters, current length is ${e.header?.length}`];var aHn=(e,t=void 0,r=0)=>[YW(e.header,r),`header must not be shorter than ${r} characters, current length is ${e.header?.length}`];var cHn=e=>{let{header:t}=e;if(!t)return[!0];let r=t!==t.trimStart(),s=t!==t.trimEnd();switch(!0){case(r&&s):return[!1,Qf(["header","must not be surrounded by whitespace"])];case r:return[!1,Qf(["header","must not start with whitespace"])];case s:return[!1,Qf(["header","must not end with whitespace"])];default:return[!0]}};var lHn=(e,t="never")=>{let r=t==="always",s=e.references.length>0;return[r?!s:s,Qf(["references",r?"must":"may not","be empty"])]};var Csr=e=>e==="never",uHn=(e,t="always",r=[])=>{let{scope:s}=e;if(!s)return[!0];let a=(Array.isArray(r)?r:[r]).map(m=>typeof m=="string"?{when:"always",case:m}:m),o=/\/|\\|, ?/g,g=s.split(o),p=a.some(m=>{let y=g.every(B=>o.test(B)||qH(B,m.case));return Csr(m.when)?!y:y}),f=a.map(m=>m.case).join(", ");return[Csr(t)?!p:p,Qf(["scope must",Csr(t)?"not":null,`be ${f}`])]};var gHn=(e,t="never")=>{let r=t==="always",s=$H(e.scope||"");return[r?!s:s,Qf(["scope",r?"must":"may not","be empty"])]};var AHn=({scope:e},t="always",r=[])=>{if(!e||!r.length)return[!0,""];let s=/\/|\\|, ?/g,a=e.split(s),o=["scope must",`be one of [${r.join(", ")}]`],g=f=>NOe(f,r),p;return t==="never"?(p=!a.some(g),o.splice(1,0,"not")):p=a.every(g),[p,Qf(o)]};var dHn=(e,t=void 0,r=0)=>{let s=e.scope;return s?[LF(s,r),`scope must not be longer than ${r} characters`]:[!0]};var pHn=(e,t=void 0,r=0)=>{let s=e.scope;return s?[YW(s,r),`scope must not be shorter than ${r} characters`]:[!0]};var fHn=(e,t="always",r="")=>{let s=bU(e.raw).filter(p=>!p.startsWith("#")&&!!p),a=s[s.length-1],o=t==="never",g=a?a.startsWith(r):!1;return[o?!g:g,Qf(["message",o?"must not":"must","be signed off"])]};var zLo=/^[\p{Ll}\p{Lu}\p{Lt}]/iu,msr=e=>e==="never",IHn=(e,t="always",r=[])=>{let{subject:s}=e;if(typeof s!="string"||!s.match(zLo))return[!0];let a=(Array.isArray(r)?r:[r]).map(p=>typeof p=="string"?{when:"always",case:p}:p),o=a.some(p=>{let f=qH(s,p.case);return msr(p.when)?!f:f}),g=a.map(p=>p.case).join(", ");return[msr(t)?!o:o,Qf(["subject must",msr(t)?"not":null,`be ${g}`])]};var CHn=(e,t="always")=>{let r=t==="never",s=$H(e.subject||"");return[r?s:!s,Qf(["subject",r?"may not":"must","be empty"])]};var mHn=(e,t="always",r=".")=>{let s=e.header?.indexOf(":")||0;if(s>0&&s===e.header.length-1)return[!0];let a=e.header,o=t==="never",g=a?.[a.length-1]===r;return a?.slice(-3)==="..."&&(g=!1),[o?!g:g,Qf(["subject",o?"may not":"must","end with full stop"])]};var hHn=(e,t=void 0,r=0)=>{let s=e.subject;return s?[LF(s,r),`subject must not be longer than ${r} characters`]:[!0]};var _Hn=(e,t=void 0,r=0)=>{let s=e.subject;return s?[YW(s,r),`subject must not be shorter than ${r} characters`]:[!0]};var yHn=(e,t="always")=>{let r=e.header;if(!r)return[!0,""];let s=t==="never",a=/!:/.test(r);return[s?!a:a,Qf(["subject",s?"must not":"must","have an exclamation mark in the subject to identify a breaking change"])]};import{spawnSync as qLo}from"child_process";var bHn=(e,t="always",r="")=>{let s=qLo("git",["interpret-trailers","--parse"],{input:e.raw||""}).stdout,a=bU(s.toString()).filter(p=>p.startsWith(r)).length,o=t==="never",g=a>0;return[o?!g:g,Qf(["message",o?"must not":"must","have `"+r+"` trailer"])]};var hsr=e=>e==="never",EHn=(e,t="always",r=[])=>{let{type:s}=e;if(!s)return[!0];let a=(Array.isArray(r)?r:[r]).map(p=>typeof p=="string"?{when:"always",case:p}:p),o=a.some(p=>{let f=qH(s,p.case);return hsr(p.when)?!f:f}),g=a.map(p=>p.case).join(", ");return[hsr(t)?!o:o,Qf(["type must",hsr(t)?"not":null,`be ${g}`])]};var BHn=(e,t="always")=>{let r=t==="never",s=$H(e.type||"");return[r?s:!s,Qf(["type",r?"may not":"must","be empty"])]};var vHn=(e,t="always",r=[])=>{let{type:s}=e;if(!s)return[!0];let a=t==="never",o=NOe(s,r);return[a?!o:o,Qf(["type must",a?"not":null,`be one of [${r.join(", ")}]`])]};var SHn=(e,t=void 0,r=0)=>{let s=e.type;return s?[LF(s,r),`type must not be longer than ${r} characters`]:[!0]};var wHn=(e,t=void 0,r=0)=>{let s=e.type;return s?[YW(s,r),`type must not be shorter than ${r} characters`]:[!0]};var THn={"body-case":XYn,"body-empty":JYn,"body-full-stop":UYn,"body-leading-blank":KYn,"body-max-length":jYn,"body-max-line-length":zYn,"body-min-length":qYn,"footer-empty":$Yn,"footer-leading-blank":eHn,"footer-max-length":tHn,"footer-max-line-length":rHn,"footer-min-length":nHn,"header-case":iHn,"header-full-stop":sHn,"header-max-length":oHn,"header-min-length":aHn,"header-trim":cHn,"references-empty":lHn,"scope-case":uHn,"scope-empty":gHn,"scope-enum":AHn,"scope-max-length":dHn,"scope-min-length":pHn,"signed-off-by":fHn,"subject-case":IHn,"subject-empty":CHn,"subject-full-stop":mHn,"subject-max-length":hHn,"subject-min-length":_Hn,"subject-exclamation-mark":yHn,"trailer-exists":bHn,"type-case":EHn,"type-empty":BHn,"type-enum":vHn,"type-max-length":SHn,"type-min-length":wHn};var cBe;(function(e){e[e.Disabled=0]="Disabled",e[e.Warning=1]="Warning",e[e.Error=2]="Error"})(cBe||(cBe={}));var NHn;(function(e){e[e.User=0]="User",e[e.Qualified=1]="Qualified"})(NHn||(NHn={}));var RHn=({header:e,body:t,footer:r})=>{let s=e;return s=t?`${s} +`,a)}while(s!==-1);return o+=e.slice(a),o}var{stdout:hQn,stderr:_Qn}=IQn,esr=Symbol("GENERATOR"),iBe=Symbol("STYLER"),ROe=Symbol("IS_EMPTY"),yQn=["ansi","ansi","ansi256","ansi16m"],sBe=Object.create(null),Vko=(e,t={})=>{if(t.level&&!(Number.isInteger(t.level)&&t.level>=0&&t.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let r=hQn?hQn.level:0;e.level=t.level===void 0?r:t.level};var Wko=e=>{let t=(...r)=>r.join(" ");return Vko(t,e),Object.setPrototypeOf(t,DOe.prototype),t};function DOe(e){return Wko(e)}Object.setPrototypeOf(DOe.prototype,Function.prototype);for(let[e,t]of Object.entries($H))sBe[e]={get(){let r=Idt(this,rsr(t.open,t.close,this[iBe]),this[ROe]);return Object.defineProperty(this,e,{value:r}),r}};sBe.visible={get(){let e=Idt(this,this[iBe],!0);return Object.defineProperty(this,"visible",{value:e}),e}};var tsr=(e,t,r,...s)=>e==="rgb"?t==="ansi16m"?$H[r].ansi16m(...s):t==="ansi256"?$H[r].ansi256($H.rgbToAnsi256(...s)):$H[r].ansi($H.rgbToAnsi(...s)):e==="hex"?tsr("rgb",t,r,...$H.hexToRgb(...s)):$H[r][e](...s),Pko=["rgb","hex","ansi256"];for(let e of Pko){sBe[e]={get(){let{level:r}=this;return function(...s){let a=rsr(tsr(e,yQn[r],"color",...s),$H.color.close,this[iBe]);return Idt(this,a,this[ROe])}}};let t="bg"+e[0].toUpperCase()+e.slice(1);sBe[t]={get(){let{level:r}=this;return function(...s){let a=rsr(tsr(e,yQn[r],"bgColor",...s),$H.bgColor.close,this[iBe]);return Idt(this,a,this[ROe])}}}}var Oko=Object.defineProperties(()=>{},{...sBe,level:{enumerable:!0,get(){return this[esr].level},set(e){this[esr].level=e}}}),rsr=(e,t,r)=>{let s,a;return r===void 0?(s=e,a=t):(s=r.openAll+e,a=t+r.closeAll),{open:e,close:t,openAll:s,closeAll:a,parent:r}},Idt=(e,t,r)=>{let s=(...a)=>Qko(s,a.length===1?""+a[0]:a.join(" "));return Object.setPrototypeOf(s,Oko),s[esr]=e,s[iBe]=t,s[ROe]=r,s},Qko=(e,t)=>{if(e.level<=0||!t)return e[ROe]?"":t;let r=e[iBe];if(r===void 0)return t;let{openAll:s,closeAll:a}=r;if(t.includes("\x1B"))for(;r!==void 0;)t=CQn(t,r.close,r.open),r=r.parent;let o=t.indexOf(` +`);return o!==-1&&(t=mQn(t,a,s,o)),s+t+a};Object.defineProperties(DOe.prototype,sBe);var Mko=DOe(),Wtl=DOe({level:_Qn?_Qn.level:0});var dp=Mko;var Hko=[" ","\u26A0","\u2716"],Yko=["white","yellow","red"];function bQn(e={},t={}){let{results:r=[]}=e,s=o=>Xko(o,t),a=o=>Jko(o,t);return r.filter(o=>Array.isArray(o.warnings)||Array.isArray(o.errors)).map(o=>[...s(o),...a(o)]).reduce((o,g)=>Array.isArray(g)?[...o,...g]:[...o,g],[]).join(` +`)}function Xko(e,t={}){let{color:r=!0}=t,{errors:s=[],warnings:a=[],input:o=""}=e;if(!o)return[""];let g="\u29D7",p=r?dp.gray(g):g,f=r?dp.bold(o):o,m=s.length>0||a.length>0;return t.verbose||m?[`${p} input: ${f}`]:[]}function Jko(e={},t={}){let{signs:r=Hko,colors:s=Yko,color:a=!0}=t,{errors:o=[],warnings:g=[]}=e,p=[...o,...g].map(U=>{let le=r[U.level]||"",ae=s[U.level]||"white",ge=a?dp[ae](le):le,fe=a?dp.grey(`[${U.name}]`):`[${U.name}]`;return`${ge} ${U.message} ${fe}`}),f=Uko(e),m=Kko(e),y=a?dp[m](f):f,B=o.length,v=g.length,k=p.length>0,T=t.verbose||k?`${y} found ${B} problems, ${v} warnings`:void 0,O=a&&typeof T=="string"?dp.bold(T):T,X=k&&t.helpUrl?`\u24D8 Get help: ${t.helpUrl}`:void 0;return[...p,k?"":void 0,O,X,k?"":void 0].filter(U=>typeof U=="string")}function Uko(e){return(e.errors||[]).length>0?"\u2716":(e.warnings||[]).length?"\u26A0":"\u2714"}function Kko(e){return(e.errors||[]).length>0?"red":(e.warnings||[]).length?"yellow":"green"}import gBe from"util";var EQn=vt(Vh(),1),jko=e=>{let t=e.split(` +`).shift();if(typeof t!="string")return!1;let r=t.replace(/^chore(\([^)]+\))?:/,"").trim();return EQn.default.valid(r)!==null},Zie=e=>e.test.bind(e),BQn=[Zie(/^((Merge pull request)|(Merge (.*?) into (.*?)|(Merge branch (.*?)))(?:\r?\n)*$)/m),Zie(/^(Merge tag (.*?))(?:\r?\n)*$/m),Zie(/^(R|r)evert (.*)/),Zie(/^(amend|fixup|squash)!/),jko,Zie(/^(Merged (.*?)(in|into) (.*)|Merged PR (.*): (.*))/),Zie(/^Merge remote-tracking branch(\s*)(.*)/),Zie(/^Automatic merge(.*)/),Zie(/^Auto-merged (.*?) into (.*)/)];function Cdt(e="",t={}){let r=typeof t.ignores>"u"?[]:t.ignores;if(!Array.isArray(r))throw new Error(`ignores must be of type array, received ${r} of type ${typeof r}`);let s=r.filter(o=>typeof o!="function");if(s.length>0)throw new Error(`ignores must be array of type function, received items of type: ${s.map(o=>typeof o).join(", ")}`);return[...t.defaults===!1?[]:BQn,...r].some(o=>o(e))}var YQn=vt(GQn(),1),XQn=vt(HQn(),1);async function _Go(e,t=YQn.sync,r){let o={...(await(0,XQn.default)()).parserOpts,fieldPattern:null,...r||{}},g=t(e,o);return g.raw=e,g}var JQn=_Go;var hsr=vt(m5n(),1),zMn=vt(O5n(),1),qMn=vt(uMn(),1),_sr=vt(vMn(),1),$Mn=vt(jMn(),1);function Bdt(e,t){switch(t){case"camel-case":return(0,hsr.default)(e);case"kebab-case":return(0,zMn.default)(e);case"snake-case":return(0,qMn.default)(e);case"pascal-case":return(0,_sr.default)((0,hsr.default)(e));case"start-case":return(0,$Mn.default)(e);case"upper-case":case"uppercase":return e.toUpperCase();case"sentence-case":case"sentencecase":return(0,_sr.default)(e);case"lower-case":case"lowercase":case"lowerCase":return e.toLowerCase();default:throw new TypeError(`to-case: Unknown target case "${t}"`)}}var eY=g9o;function g9o(e="",t="lowercase"){let r=String(e).replace(/`.*?`|".*?"|'.*?'/g,"").trim(),s=Bdt(r,t);return s===""||s.match(/^\d/)?!0:s===r}var xOe=(e,t=[])=>e===void 0||!Array.isArray(t)?!1:t.indexOf(e)>-1;var OF=(e,t)=>typeof e=="string"&&e.length<=t;var kOe=(e,t)=>typeof e=="string"&&e.split(/\r?\n/).every(r=>OF(r,t));var YW=(e,t)=>typeof e=="string"&&e.length>=t;var tY=e=>typeof e=="string"&&e.length>0;function Hf(e=[]){return e.filter(Boolean).join(" ")}var ysr=e=>e==="never",eHn=(e,t="always",r=[])=>{let{body:s}=e;if(!s)return[!0];let a=(Array.isArray(r)?r:[r]).map(p=>typeof p=="string"?{when:"always",case:p}:p),o=a.some(p=>{let f=eY(s,p.case);return ysr(p.when)?!f:f}),g=a.map(p=>p.case).join(", ");return[ysr(t)?!o:o,Hf(["body must",ysr(t)?"not":null,`be ${g}`])]};var tHn=(e,t="always")=>{let r=t==="never",s=tY(e.body||"");return[r?s:!s,Hf(["body",r?"may not":"must","be empty"])]};var rHn=(e,t="always",r=".")=>{let s=e.body;if(!s)return[!0];let a=t==="never",o=s[s.length-1]===r;return[a?!o:o,Hf(["body",a?"may not":"must","end with full stop"])]};function vU(e){return typeof e!="string"?[]:e.split(/(?:\r?\n)/)}var nHn=(e,t)=>{if(!e.body)return[!0];let r=t==="never",[s]=vU(e.raw).slice(1),a=s==="";return[r?!a:a,Hf(["body",r?"may not":"must","have leading blank line"])]};var iHn=(e,t=void 0,r=0)=>{let s=e.body;return s?[OF(s,r),`body must not be longer than ${r} characters`]:[!0]};var sHn=(e,t=void 0,r=0)=>{let s=e.body;return s?[kOe(s,r),`body's lines must not be longer than ${r} characters`]:[!0]};var oHn=(e,t=void 0,r=0)=>e.body?[YW(e.body,r),`body must not be shorter than ${r} characters`]:[!0];var aHn=(e,t="always")=>{let r=t==="never",s=tY(e.footer||"");return[r?s:!s,Hf(["footer",r?"may not":"must","be empty"])]};var cHn=(e,t="always")=>{if(!e.footer)return[!0];let r=t==="never",s=vU(e.raw),a=vU(e.footer),o=s.indexOf(a[0]),[g]=s.slice(o-1),p=g==="";return[r?!p:p,Hf(["footer",r?"may not":"must","have leading blank line"])]};var lHn=(e,t=void 0,r=0)=>{let s=e.footer;return s?[OF(s,r),`footer must not be longer than ${r} characters`]:[!0]};var uHn=(e,t=void 0,r=0)=>{let s=e.footer;return s?[kOe(s,r),`footer's lines must not be longer than ${r} characters`]:[!0]};var gHn=(e,t=void 0,r=0)=>e.footer?[YW(e.footer,r),`footer must not be shorter than ${r} characters`]:[!0];var bsr=e=>e==="never",AHn=(e,t="always",r=[])=>{let{header:s}=e;if(typeof s!="string"||!s.match(/^[a-z]/i))return[!0];let a=(Array.isArray(r)?r:[r]).map(p=>typeof p=="string"?{when:"always",case:p}:p),o=a.some(p=>{let f=eY(s,p.case);return bsr(p.when)?!f:f}),g=a.map(p=>p.case).join(", ");return[bsr(t)?!o:o,Hf(["header must",bsr(t)?"not":null,`be ${g}`])]};var dHn=(e,t="always",r=".")=>{let{header:s}=e,a=t==="never",o=s?.[s.length-1]===r;return[a?!o:o,Hf(["header",a?"may not":"must","end with full stop"])]};var pHn=(e,t=void 0,r=0)=>[OF(e.header,r),`header must not be longer than ${r} characters, current length is ${e.header?.length}`];var fHn=(e,t=void 0,r=0)=>[YW(e.header,r),`header must not be shorter than ${r} characters, current length is ${e.header?.length}`];var IHn=e=>{let{header:t}=e;if(!t)return[!0];let r=t!==t.trimStart(),s=t!==t.trimEnd();switch(!0){case(r&&s):return[!1,Hf(["header","must not be surrounded by whitespace"])];case r:return[!1,Hf(["header","must not start with whitespace"])];case s:return[!1,Hf(["header","must not end with whitespace"])];default:return[!0]}};var CHn=(e,t="never")=>{let r=t==="always",s=e.references.length>0;return[r?!s:s,Hf(["references",r?"must":"may not","be empty"])]};var Esr=e=>e==="never",mHn=(e,t="always",r=[])=>{let{scope:s}=e;if(!s)return[!0];let a=(Array.isArray(r)?r:[r]).map(m=>typeof m=="string"?{when:"always",case:m}:m),o=/\/|\\|, ?/g,g=s.split(o),p=a.some(m=>{let y=g.every(B=>o.test(B)||eY(B,m.case));return Esr(m.when)?!y:y}),f=a.map(m=>m.case).join(", ");return[Esr(t)?!p:p,Hf(["scope must",Esr(t)?"not":null,`be ${f}`])]};var hHn=(e,t="never")=>{let r=t==="always",s=tY(e.scope||"");return[r?!s:s,Hf(["scope",r?"must":"may not","be empty"])]};var _Hn=({scope:e},t="always",r=[])=>{if(!e||!r.length)return[!0,""];let s=/\/|\\|, ?/g,a=e.split(s),o=["scope must",`be one of [${r.join(", ")}]`],g=f=>xOe(f,r),p;return t==="never"?(p=!a.some(g),o.splice(1,0,"not")):p=a.every(g),[p,Hf(o)]};var yHn=(e,t=void 0,r=0)=>{let s=e.scope;return s?[OF(s,r),`scope must not be longer than ${r} characters`]:[!0]};var bHn=(e,t=void 0,r=0)=>{let s=e.scope;return s?[YW(s,r),`scope must not be shorter than ${r} characters`]:[!0]};var EHn=(e,t="always",r="")=>{let s=vU(e.raw).filter(p=>!p.startsWith("#")&&!!p),a=s[s.length-1],o=t==="never",g=a?a.startsWith(r):!1;return[o?!g:g,Hf(["message",o?"must not":"must","be signed off"])]};var A9o=/^[\p{Ll}\p{Lu}\p{Lt}]/iu,Bsr=e=>e==="never",BHn=(e,t="always",r=[])=>{let{subject:s}=e;if(typeof s!="string"||!s.match(A9o))return[!0];let a=(Array.isArray(r)?r:[r]).map(p=>typeof p=="string"?{when:"always",case:p}:p),o=a.some(p=>{let f=eY(s,p.case);return Bsr(p.when)?!f:f}),g=a.map(p=>p.case).join(", ");return[Bsr(t)?!o:o,Hf(["subject must",Bsr(t)?"not":null,`be ${g}`])]};var vHn=(e,t="always")=>{let r=t==="never",s=tY(e.subject||"");return[r?s:!s,Hf(["subject",r?"may not":"must","be empty"])]};var SHn=(e,t="always",r=".")=>{let s=e.header?.indexOf(":")||0;if(s>0&&s===e.header.length-1)return[!0];let a=e.header,o=t==="never",g=a?.[a.length-1]===r;return a?.slice(-3)==="..."&&(g=!1),[o?!g:g,Hf(["subject",o?"may not":"must","end with full stop"])]};var wHn=(e,t=void 0,r=0)=>{let s=e.subject;return s?[OF(s,r),`subject must not be longer than ${r} characters`]:[!0]};var THn=(e,t=void 0,r=0)=>{let s=e.subject;return s?[YW(s,r),`subject must not be shorter than ${r} characters`]:[!0]};var NHn=(e,t="always")=>{let r=e.header;if(!r)return[!0,""];let s=t==="never",a=/!:/.test(r);return[s?!a:a,Hf(["subject",s?"must not":"must","have an exclamation mark in the subject to identify a breaking change"])]};import{spawnSync as d9o}from"child_process";var RHn=(e,t="always",r="")=>{let s=d9o("git",["interpret-trailers","--parse"],{input:e.raw||""}).stdout,a=vU(s.toString()).filter(p=>p.startsWith(r)).length,o=t==="never",g=a>0;return[o?!g:g,Hf(["message",o?"must not":"must","have `"+r+"` trailer"])]};var vsr=e=>e==="never",DHn=(e,t="always",r=[])=>{let{type:s}=e;if(!s)return[!0];let a=(Array.isArray(r)?r:[r]).map(p=>typeof p=="string"?{when:"always",case:p}:p),o=a.some(p=>{let f=eY(s,p.case);return vsr(p.when)?!f:f}),g=a.map(p=>p.case).join(", ");return[vsr(t)?!o:o,Hf(["type must",vsr(t)?"not":null,`be ${g}`])]};var xHn=(e,t="always")=>{let r=t==="never",s=tY(e.type||"");return[r?s:!s,Hf(["type",r?"may not":"must","be empty"])]};var kHn=(e,t="always",r=[])=>{let{type:s}=e;if(!s)return[!0];let a=t==="never",o=xOe(s,r);return[a?!o:o,Hf(["type must",a?"not":null,`be one of [${r.join(", ")}]`])]};var GHn=(e,t=void 0,r=0)=>{let s=e.type;return s?[OF(s,r),`type must not be longer than ${r} characters`]:[!0]};var FHn=(e,t=void 0,r=0)=>{let s=e.type;return s?[YW(s,r),`type must not be shorter than ${r} characters`]:[!0]};var ZHn={"body-case":eHn,"body-empty":tHn,"body-full-stop":rHn,"body-leading-blank":nHn,"body-max-length":iHn,"body-max-line-length":sHn,"body-min-length":oHn,"footer-empty":aHn,"footer-leading-blank":cHn,"footer-max-length":lHn,"footer-max-line-length":uHn,"footer-min-length":gHn,"header-case":AHn,"header-full-stop":dHn,"header-max-length":pHn,"header-min-length":fHn,"header-trim":IHn,"references-empty":CHn,"scope-case":mHn,"scope-empty":hHn,"scope-enum":_Hn,"scope-max-length":yHn,"scope-min-length":bHn,"signed-off-by":EHn,"subject-case":BHn,"subject-empty":vHn,"subject-full-stop":SHn,"subject-max-length":wHn,"subject-min-length":THn,"subject-exclamation-mark":NHn,"trailer-exists":RHn,"type-case":DHn,"type-empty":xHn,"type-enum":kHn,"type-max-length":GHn,"type-min-length":FHn};var uBe;(function(e){e[e.Disabled=0]="Disabled",e[e.Warning=1]="Warning",e[e.Error=2]="Error"})(uBe||(uBe={}));var LHn;(function(e){e[e.User=0]="User",e[e.Qualified=1]="Qualified"})(LHn||(LHn={}));var VHn=({header:e,body:t,footer:r})=>{let s=e;return s=t?`${s} ${t}`:s,s=r?`${s} -${r}`:s,s||""};async function _sr(e,t,r){let s=r||{defaultIgnores:void 0,ignores:void 0},a=t||{};if(fdt(e,{defaults:s.defaultIgnores,ignores:s.ignores}))return{valid:!0,errors:[],warnings:[],input:e};let o=e===""?{header:null,body:null,footer:null}:await WMn(e,void 0,s.parserOpts);if(o.header===null&&o.body===null&&o.footer===null)return{valid:!0,errors:[],warnings:[],input:e};let g=new Map(Object.entries(THn));s.plugins&&Object.values(s.plugins).forEach(T=>{T.rules&&Object.keys(T.rules).forEach(O=>g.set(O,T.rules[O]))});let p=Object.keys(a).filter(T=>typeof g.get(T)!="function");if(p.length>0){let T=[...g.keys()];throw new RangeError([`Found rules without implementation: ${p.join(", ")}.`,`Supported rules are: ${T.join(", ")}.`].join(` -`))}let f=Object.entries(a).map(([T,O])=>{if(!Array.isArray(O))return new Error(`config for rule ${T} must be array, received ${lBe.inspect(O)} of type ${typeof O}`);let[X]=O;if(X===cBe.Disabled&&O.length===1)return null;let[,U]=O;return typeof X!="number"||isNaN(X)?new Error(`level for rule ${T} must be number, received ${lBe.inspect(X)} of type ${typeof X}`):O.length<2||O.length>3?new Error(`config for rule ${T} must be 2 or 3 items long, received ${lBe.inspect(O)} of length ${O.length}`):X<0||X>2?new RangeError(`level for rule ${T} must be between 0 and 2, received ${lBe.inspect(X)}`):typeof U!="string"?new Error(`condition for rule ${T} must be string, received ${lBe.inspect(U)} of type ${typeof U}`):U!=="never"&&U!=="always"?new Error(`condition for rule ${T} must be "always" or "never", received ${lBe.inspect(U)}`):null}).filter(T=>T instanceof Error);if(f.length>0)throw new Error(f.map(T=>T.message).join(` -`));let m=Object.entries(a).filter(([,T])=>!!T&&T.length&&T[0]>0).map(async T=>{let[O,X]=T,[U,le,ae]=X,ge=g.get(O);if(!ge)throw new Error(`Could not find rule implementation for ${O}`);let fe=ge,[pe,he]=await fe(o,le,ae);return{level:U,valid:pe,name:O,message:he}}),y=(await Promise.all(m)).filter(T=>T!==null),B=y.filter(T=>T.level===cBe.Error&&!T.valid),v=y.filter(T=>T.level===cBe.Warning&&!T.valid);return{valid:B.length===0,errors:B,warnings:v,input:RHn(o)}}var ysr={back:{description:"Changes that affect backend code"},front:{description:"Changes that affect frontend code"},devops:{description:"Changes that affect devops code"},custom:{description:"Enter manually custom scope"}},DOe={feat:{description:"A new feature"},fix:{description:"Bug Fixes"},docs:{description:"Documentation only changes"},style:{description:"Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)"},refactor:{description:"A code change that neither fixes a bug nor adds a feature"},perf:{description:"A code change that improves performance"},test:{description:"Adding missing tests or correcting existing tests"},deps:{description:"Changes that affect external dependencies"},build:{description:"Changes that affect the build system"},ci:{description:"Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs)"},chore:{description:"Other changes that don't modify src or test files"},revert:{description:"Reverts a previous commit"}};var DHn={"body-leading-blank":[1,"always"],"body-max-line-length":[2,"always",180],"footer-leading-blank":[1,"always"],"footer-max-line-length":[2,"always",100],"header-max-length":[2,"always",140],"subject-case":[2,"never",["sentence-case","start-case","pascal-case","upper-case"]],"subject-empty":[2,"never"],"subject-full-stop":[2,"never","."],"type-case":[2,"always","lower-case"],"type-empty":[2,"never"],"type-enum":[2,"always",Object.keys(DOe)],"scope-case":[2,"always","lower-case"],"scope-empty":[2,"never"]};var $Lo={headerPattern:/^(\w*)(?:\((.*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],noteKeywords:["BREAKING CHANGE"],revertPattern:/^(?:Revert|revert:)\s"?([\s\S]+?)"?\s*This reverts commit (\w{7,40})\b/i,revertCorrespondence:["header","hash"]},e9o={parserOpts:$Lo},Edt=class{scopes;workspaceNames;constructor({scopes:t,workspaceNames:r}){this.scopes=t,this.workspaceNames=r}async lint(t){let r=this.prepareConfig(DHn);return _sr(t,r,e9o)}format(t,r={helpUrl:"https://github.com/conventional-changelog/commitlint/#what-is-commitlint"}){return pMn(t,r)}prepareConfig(t){let r=[];this.scopes&&r.push(...this.scopes.filter(a=>a&&a!=="atls")),this.workspaceNames&&r.push(...this.workspaceNames.filter(a=>a));let s=["common","github",...r];return t["scope-enum"]=[Adt.Error,"always",s],t}};var Bdt=class extends xHn.BaseCommand{static paths=[["commit","message","lint"]];async execute(){let t=await kHn.Configuration.find(this.context.cwd,this.context.plugins),{project:{workspaces:r}}=await GHn.Project.find(t,this.context.cwd),s=new Set(r.map(({manifest:m})=>m.name?.name??"")),a=new Set(r.map(({manifest:m})=>m.name?.scope??"")),o=new Edt({scopes:Array.from(a),workspaceNames:Array.from(s)}),g=await gdt({edit:!0}),p=await Promise.all(g.map(async m=>o.lint(m))),f=o.format({results:p});return f!==""&&this.context.stdout.write(f),p.some(m=>!m.valid)?1:0}};var EXn=xt(nl(),1),BXn=xt(Ro(),1),vXn=xt(PHn(),1);Fl();var SXn=xt(QHn(),1),wXn=xt(Dc(),1),TXn=xt(Fs(),1),NXn=xt(Fs(),1),ior=xt(Fs(),1),zdt=xt(HHn(),1);var yXn=xt(Fs(),1),Vie=xt(Fs(),1),Cz=xt(Fs(),1);var mBe=xt(Dc(),1),CBe=xt(Dc(),1),nXn=xt(Fs(),1),Jsr=xt($5n(),1),cM=xt(Fs(),1);import eXn from"node:process";function Ysr(){let{env:e}=eXn,{TERM:t,TERM_PROGRAM:r}=e;return eXn.platform!=="win32"?t!=="linux":!!e.WT_SESSION||!!e.TERMINUS_SUBLIME||e.ConEmuTask==="{cmd::Cmder}"||r==="Terminus-Sublime"||r==="vscode"||t==="xterm-256color"||t==="alacritty"||t==="rxvt-unicode"||t==="rxvt-unicode-256color"||e.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var tXn={circleQuestionMark:"(?)",questionMarkPrefix:"(?)",square:"\u2588",squareDarkShade:"\u2593",squareMediumShade:"\u2592",squareLightShade:"\u2591",squareTop:"\u2580",squareBottom:"\u2584",squareLeft:"\u258C",squareRight:"\u2590",squareCenter:"\u25A0",bullet:"\u25CF",dot:"\u2024",ellipsis:"\u2026",pointerSmall:"\u203A",triangleUp:"\u25B2",triangleUpSmall:"\u25B4",triangleDown:"\u25BC",triangleDownSmall:"\u25BE",triangleLeftSmall:"\u25C2",triangleRightSmall:"\u25B8",home:"\u2302",heart:"\u2665",musicNote:"\u266A",musicNoteBeamed:"\u266B",arrowUp:"\u2191",arrowDown:"\u2193",arrowLeft:"\u2190",arrowRight:"\u2192",arrowLeftRight:"\u2194",arrowUpDown:"\u2195",almostEqual:"\u2248",notEqual:"\u2260",lessOrEqual:"\u2264",greaterOrEqual:"\u2265",identical:"\u2261",infinity:"\u221E",subscriptZero:"\u2080",subscriptOne:"\u2081",subscriptTwo:"\u2082",subscriptThree:"\u2083",subscriptFour:"\u2084",subscriptFive:"\u2085",subscriptSix:"\u2086",subscriptSeven:"\u2087",subscriptEight:"\u2088",subscriptNine:"\u2089",oneHalf:"\xBD",oneThird:"\u2153",oneQuarter:"\xBC",oneFifth:"\u2155",oneSixth:"\u2159",oneEighth:"\u215B",twoThirds:"\u2154",twoFifths:"\u2156",threeQuarters:"\xBE",threeFifths:"\u2157",threeEighths:"\u215C",fourFifths:"\u2158",fiveSixths:"\u215A",fiveEighths:"\u215D",sevenEighths:"\u215E",line:"\u2500",lineBold:"\u2501",lineDouble:"\u2550",lineDashed0:"\u2504",lineDashed1:"\u2505",lineDashed2:"\u2508",lineDashed3:"\u2509",lineDashed4:"\u254C",lineDashed5:"\u254D",lineDashed6:"\u2574",lineDashed7:"\u2576",lineDashed8:"\u2578",lineDashed9:"\u257A",lineDashed10:"\u257C",lineDashed11:"\u257E",lineDashed12:"\u2212",lineDashed13:"\u2013",lineDashed14:"\u2010",lineDashed15:"\u2043",lineVertical:"\u2502",lineVerticalBold:"\u2503",lineVerticalDouble:"\u2551",lineVerticalDashed0:"\u2506",lineVerticalDashed1:"\u2507",lineVerticalDashed2:"\u250A",lineVerticalDashed3:"\u250B",lineVerticalDashed4:"\u254E",lineVerticalDashed5:"\u254F",lineVerticalDashed6:"\u2575",lineVerticalDashed7:"\u2577",lineVerticalDashed8:"\u2579",lineVerticalDashed9:"\u257B",lineVerticalDashed10:"\u257D",lineVerticalDashed11:"\u257F",lineDownLeft:"\u2510",lineDownLeftArc:"\u256E",lineDownBoldLeftBold:"\u2513",lineDownBoldLeft:"\u2512",lineDownLeftBold:"\u2511",lineDownDoubleLeftDouble:"\u2557",lineDownDoubleLeft:"\u2556",lineDownLeftDouble:"\u2555",lineDownRight:"\u250C",lineDownRightArc:"\u256D",lineDownBoldRightBold:"\u250F",lineDownBoldRight:"\u250E",lineDownRightBold:"\u250D",lineDownDoubleRightDouble:"\u2554",lineDownDoubleRight:"\u2553",lineDownRightDouble:"\u2552",lineUpLeft:"\u2518",lineUpLeftArc:"\u256F",lineUpBoldLeftBold:"\u251B",lineUpBoldLeft:"\u251A",lineUpLeftBold:"\u2519",lineUpDoubleLeftDouble:"\u255D",lineUpDoubleLeft:"\u255C",lineUpLeftDouble:"\u255B",lineUpRight:"\u2514",lineUpRightArc:"\u2570",lineUpBoldRightBold:"\u2517",lineUpBoldRight:"\u2516",lineUpRightBold:"\u2515",lineUpDoubleRightDouble:"\u255A",lineUpDoubleRight:"\u2559",lineUpRightDouble:"\u2558",lineUpDownLeft:"\u2524",lineUpBoldDownBoldLeftBold:"\u252B",lineUpBoldDownBoldLeft:"\u2528",lineUpDownLeftBold:"\u2525",lineUpBoldDownLeftBold:"\u2529",lineUpDownBoldLeftBold:"\u252A",lineUpDownBoldLeft:"\u2527",lineUpBoldDownLeft:"\u2526",lineUpDoubleDownDoubleLeftDouble:"\u2563",lineUpDoubleDownDoubleLeft:"\u2562",lineUpDownLeftDouble:"\u2561",lineUpDownRight:"\u251C",lineUpBoldDownBoldRightBold:"\u2523",lineUpBoldDownBoldRight:"\u2520",lineUpDownRightBold:"\u251D",lineUpBoldDownRightBold:"\u2521",lineUpDownBoldRightBold:"\u2522",lineUpDownBoldRight:"\u251F",lineUpBoldDownRight:"\u251E",lineUpDoubleDownDoubleRightDouble:"\u2560",lineUpDoubleDownDoubleRight:"\u255F",lineUpDownRightDouble:"\u255E",lineDownLeftRight:"\u252C",lineDownBoldLeftBoldRightBold:"\u2533",lineDownLeftBoldRightBold:"\u252F",lineDownBoldLeftRight:"\u2530",lineDownBoldLeftBoldRight:"\u2531",lineDownBoldLeftRightBold:"\u2532",lineDownLeftRightBold:"\u252E",lineDownLeftBoldRight:"\u252D",lineDownDoubleLeftDoubleRightDouble:"\u2566",lineDownDoubleLeftRight:"\u2565",lineDownLeftDoubleRightDouble:"\u2564",lineUpLeftRight:"\u2534",lineUpBoldLeftBoldRightBold:"\u253B",lineUpLeftBoldRightBold:"\u2537",lineUpBoldLeftRight:"\u2538",lineUpBoldLeftBoldRight:"\u2539",lineUpBoldLeftRightBold:"\u253A",lineUpLeftRightBold:"\u2536",lineUpLeftBoldRight:"\u2535",lineUpDoubleLeftDoubleRightDouble:"\u2569",lineUpDoubleLeftRight:"\u2568",lineUpLeftDoubleRightDouble:"\u2567",lineUpDownLeftRight:"\u253C",lineUpBoldDownBoldLeftBoldRightBold:"\u254B",lineUpDownBoldLeftBoldRightBold:"\u2548",lineUpBoldDownLeftBoldRightBold:"\u2547",lineUpBoldDownBoldLeftRightBold:"\u254A",lineUpBoldDownBoldLeftBoldRight:"\u2549",lineUpBoldDownLeftRight:"\u2540",lineUpDownBoldLeftRight:"\u2541",lineUpDownLeftBoldRight:"\u253D",lineUpDownLeftRightBold:"\u253E",lineUpBoldDownBoldLeftRight:"\u2542",lineUpDownLeftBoldRightBold:"\u253F",lineUpBoldDownLeftBoldRight:"\u2543",lineUpBoldDownLeftRightBold:"\u2544",lineUpDownBoldLeftBoldRight:"\u2545",lineUpDownBoldLeftRightBold:"\u2546",lineUpDoubleDownDoubleLeftDoubleRightDouble:"\u256C",lineUpDoubleDownDoubleLeftRight:"\u256B",lineUpDownLeftDoubleRightDouble:"\u256A",lineCross:"\u2573",lineBackslash:"\u2572",lineSlash:"\u2571"},rXn={tick:"\u2714",info:"\u2139",warning:"\u26A0",cross:"\u2718",squareSmall:"\u25FB",squareSmallFilled:"\u25FC",circle:"\u25EF",circleFilled:"\u25C9",circleDotted:"\u25CC",circleDouble:"\u25CE",circleCircle:"\u24DE",circleCross:"\u24E7",circlePipe:"\u24BE",radioOn:"\u25C9",radioOff:"\u25EF",checkboxOn:"\u2612",checkboxOff:"\u2610",checkboxCircleOn:"\u24E7",checkboxCircleOff:"\u24BE",pointer:"\u276F",triangleUpOutline:"\u25B3",triangleLeft:"\u25C0",triangleRight:"\u25B6",lozenge:"\u25C6",lozengeOutline:"\u25C7",hamburger:"\u2630",smiley:"\u32E1",mustache:"\u0DF4",star:"\u2605",play:"\u25B6",nodejs:"\u2B22",oneSeventh:"\u2150",oneNinth:"\u2151",oneTenth:"\u2152"},dWo={tick:"\u221A",info:"i",warning:"\u203C",cross:"\xD7",squareSmall:"\u25A1",squareSmallFilled:"\u25A0",circle:"( )",circleFilled:"(*)",circleDotted:"( )",circleDouble:"( )",circleCircle:"(\u25CB)",circleCross:"(\xD7)",circlePipe:"(\u2502)",radioOn:"(*)",radioOff:"( )",checkboxOn:"[\xD7]",checkboxOff:"[ ]",checkboxCircleOn:"(\xD7)",checkboxCircleOff:"( )",pointer:">",triangleUpOutline:"\u2206",triangleLeft:"\u25C4",triangleRight:"\u25BA",lozenge:"\u2666",lozengeOutline:"\u25CA",hamburger:"\u2261",smiley:"\u263A",mustache:"\u250C\u2500\u2510",star:"\u2736",play:"\u25BA",nodejs:"\u2666",oneSeventh:"1/7",oneNinth:"1/9",oneTenth:"1/10"},pWo={...tXn,...rXn},fWo={...tXn,...dWo},IWo=Ysr(),CWo=IWo?pWo:fWo,yI=CWo,msl=Object.entries(rXn);var Hsr=xt(Dc(),1),Xsr=xt(Dc(),1),WOe=xt(Fs(),1),IBe=({label:e,value:t})=>WOe.default.createElement(Xsr.Box,null,WOe.default.createElement(Xsr.Box,{width:12},WOe.default.createElement(Hsr.Text,{bold:!0,color:"#d7875f"},t)),WOe.default.createElement(Hsr.Text,null,e));var mWo=Jsr.default.default||Jsr.default,hWo=[{label:"Add a scope",value:"scope"},{label:"Resolves issues",value:"issues"},{label:"Introduces breaking changes",value:"breaking"},{label:"Add a long description",value:"body"},{label:"Skip ci/cd setups",value:"skipci"}],_Wo=({isSelected:e=!1})=>cM.default.createElement(CBe.Box,{marginRight:1},e?cM.default.createElement(mBe.Text,null,yI.circleFilled):cM.default.createElement(mBe.Text,null," ")),yWo=({isHighlighted:e=!1})=>cM.default.createElement(CBe.Box,{marginRight:1},e?cM.default.createElement(mBe.Text,{color:"cyanBright"},yI.pointer):cM.default.createElement(mBe.Text,null," ")),iXn=({onSubmit:e})=>{let t=(0,nXn.useCallback)(r=>{e(r.reduce((s,a)=>({...s,[a.value]:!0}),{}))},[e]);return cM.default.createElement(CBe.Box,{flexDirection:"column"},cM.default.createElement(CBe.Box,null,cM.default.createElement(mBe.Text,{bold:!0,color:"cyanBright"},"Please select additional actions:")),cM.default.createElement(CBe.Box,null,cM.default.createElement(mWo,{items:hWo,indicatorComponent:yWo,itemComponent:IBe,checkboxComponent:_Wo,onSubmit:t})))};var Usr=xt(Dc(),1),hBe=xt(Dc(),1);var Lie=xt(Fs(),1),Ydt=xt(Dc(),1);function sXn({value:e,placeholder:t="",focus:r=!0,mask:s,highlightPastedText:a=!1,showCursor:o=!0,onChange:g,onSubmit:p}){let[f,m]=(0,Lie.useState)({cursorOffset:(e||"").length,cursorWidth:0}),{cursorOffset:y,cursorWidth:B}=f;(0,Lie.useEffect)(()=>{m(X=>{if(!r||!o)return X;let U=e||"";return X.cursorOffset>U.length-1?{cursorOffset:U.length,cursorWidth:0}:X})},[e,r,o]);let v=a?B:0,G=s?s.repeat(e.length):e,T=G,O=t?Ap.grey(t):void 0;if(o&&r){O=t.length>0?Ap.inverse(t[0])+Ap.grey(t.slice(1)):Ap.inverse(" "),T=G.length>0?"":Ap.inverse(" ");let X=0;for(let U of G)T+=X>=y-v&&X<=y?Ap.inverse(U):U,X++;G.length>0&&y===G.length&&(T+=Ap.inverse(" "))}return(0,Ydt.useInput)((X,U)=>{if(U.upArrow||U.downArrow||U.ctrl&&X==="c"||U.tab||U.shift&&U.tab)return;if(U.return){p&&p(e);return}let le=y,ae=e,ge=0;U.leftArrow?o&&le--:U.rightArrow?o&&le++:U.backspace||U.delete?y>0&&(ae=e.slice(0,y-1)+e.slice(y,e.length),le--):(ae=e.slice(0,y)+X+e.slice(y,e.length),le+=X.length,X.length>1&&(ge=X.length)),y<0&&(le=0),y>e.length&&(le=e.length),m({cursorOffset:le,cursorWidth:ge}),ae!==e&&g(ae)},{isActive:r}),Lie.default.createElement(Ydt.Text,null,t?G.length>0?T:O:T)}var Hdt=sXn;function BU({initialValue:e="",...t}){let[r,s]=(0,Lie.useState)(e);return Lie.default.createElement(sXn,{...t,value:r,onChange:s})}var Az=xt(Fs(),1),oXn=({onSubmit:e})=>Az.default.createElement(hBe.Box,{flexDirection:"column"},Az.default.createElement(hBe.Box,null,Az.default.createElement(Usr.Text,{bold:!0,color:"cyanBright"},"Please give a long description:")),Az.default.createElement(hBe.Box,null,Az.default.createElement(hBe.Box,{marginRight:1},Az.default.createElement(Usr.Text,{color:"gray"},"\u2192")),Az.default.createElement(hBe.Box,null,Az.default.createElement(BU,{onSubmit:e}))));var Ksr=xt(Dc(),1),_Be=xt(Dc(),1);var dz=xt(Fs(),1),aXn=({onSubmit:e})=>dz.default.createElement(_Be.Box,{flexDirection:"column"},dz.default.createElement(_Be.Box,null,dz.default.createElement(Ksr.Text,{bold:!0,color:"cyanBright"},"Describe the breaking changes:")),dz.default.createElement(_Be.Box,null,dz.default.createElement(_Be.Box,{marginRight:1},dz.default.createElement(Ksr.Text,{color:"gray"},"\u2192")),dz.default.createElement(_Be.Box,null,dz.default.createElement(BU,{onSubmit:e}))));var jsr=xt(Dc(),1),yBe=xt(Dc(),1);var pz=xt(Fs(),1);var cXn=({onSubmit:e})=>pz.default.createElement(yBe.Box,{flexDirection:"column"},pz.default.createElement(yBe.Box,null,pz.default.createElement(jsr.Text,{bold:!0,color:"cyanBright"},'Add issue references (e.g. "fix #123, re #124".):')),pz.default.createElement(yBe.Box,null,pz.default.createElement(yBe.Box,{marginRight:1},pz.default.createElement(jsr.Text,{color:"gray"},yI.arrowRight)),pz.default.createElement(yBe.Box,null,pz.default.createElement(BU,{onSubmit:e}))));var Kdt=xt(Dc(),1),fz=xt(Dc(),1);var eor=xt(Fs(),1),tor=xt(Fs(),1),pXn=xt(Fs(),1);var Xdt=xt(Fs(),1),POe=xt(Dc(),1);function bWo({isSelected:e=!1}){return Xdt.default.createElement(POe.Box,{marginRight:1},e?Xdt.default.createElement(POe.Text,{color:"blue"},yI.pointer):Xdt.default.createElement(POe.Text,null," "))}var zsr=bWo;var lXn=xt(Fs(),1),uXn=xt(Dc(),1);function EWo({isSelected:e=!1,label:t}){return lXn.createElement(uXn.Text,{color:e?"blue":void 0},t)}var qsr=EWo;var UL=xt(Fs(),1),gXn=xt(Fsr(),1);function bBe(e,t){if(!Array.isArray(e))throw new TypeError(`Expected an array, got \`${typeof e}\`.`);if(!Number.isSafeInteger(t))throw new TypeError(`The \`steps\` parameter must be an integer, got ${t}.`);let{length:r}=e;if(r===0)return[...e];let s=(t%r+r)%r;return s===0?[...e]:[...e.slice(-s),...e.slice(0,-s)]}var OOe=xt(Dc(),1);function BWo({items:e=[],isFocused:t=!0,initialIndex:r=0,indicatorComponent:s=zsr,itemComponent:a=qsr,limit:o,onSelect:g,onHighlight:p}){let f=typeof o=="number"&&e.length>o,m=f?Math.min(o,e.length):e.length,y=m-1,[B,v]=(0,UL.useState)(r>y?y-r:0),[G,T]=(0,UL.useState)(r?r>y?y:r:0),O=(0,UL.useRef)(e);(0,UL.useEffect)(()=>{(0,gXn.default)(O.current.map(U=>U.value),e.map(U=>U.value))||(v(0),T(0)),O.current=e},[e]),(0,OOe.useInput)((0,UL.useCallback)((U,le)=>{if(U==="k"||le.upArrow){let ae=(f?m:e.length)-1,ge=G===0,fe=f?G:ae,pe=ge?B+1:B,he=ge?fe:G-1;v(pe),T(he);let be=f?bBe(e,pe).slice(0,m):e;typeof p=="function"&&p(be[he])}if(U==="j"||le.downArrow){let ae=G===(f?m:e.length)-1,ge=f?G:0,fe=ae?B-1:B,pe=ae?ge:G+1;v(fe),T(pe);let he=f?bBe(e,fe).slice(0,m):e;typeof p=="function"&&p(he[pe])}if(le.return){let ae=f?bBe(e,B).slice(0,m):e;typeof g=="function"&&g(ae[G])}},[f,m,B,G,e,g,p]),{isActive:t});let X=f?bBe(e,B).slice(0,m):e;return UL.default.createElement(OOe.Box,{flexDirection:"column"},X.map((U,le)=>{let ae=le===G;return UL.default.createElement(OOe.Box,{key:U.key??U.value},UL.default.createElement(s,{isSelected:ae}),UL.default.createElement(a,{...U,isSelected:ae}))}))}var MOe=BWo;var WF=xt(Fs(),1);var $sr=xt(Dc(),1),AXn=xt(Dc(),1),Jdt=xt(Fs(),1);var Udt=({isSelected:e=!1})=>Jdt.default.createElement(AXn.Box,{marginRight:1},e?Jdt.default.createElement($sr.Text,{color:"cyanBright"},yI.pointer):Jdt.default.createElement($sr.Text,null," "));var dXn=Object.keys(ysr).map(e=>({label:ysr[e].description,value:e})),fXn=({onSubmit:e})=>{let[t,r]=(0,eor.useState)(!1),[s,a]=(0,eor.useState)(""),o=(0,tor.useMemo)(()=>s.length>0?dXn.filter(f=>f.label.toLowerCase().includes(s.toLowerCase())):dXn,[s]),g=(0,tor.useMemo)(()=>o.length>0,[o]),p=(0,pXn.useCallback)(f=>{f.value==="custom"?r(!0):e(f.value)},[r,e]);return t?WF.default.createElement(fz.Box,{flexDirection:"column"},WF.default.createElement(fz.Box,null,WF.default.createElement(Kdt.Text,{bold:!0,color:"cyanBright"},"Please state the scope of the change:")),WF.default.createElement(fz.Box,null,WF.default.createElement(fz.Box,{marginRight:1},WF.default.createElement(Kdt.Text,{color:"gray"},"\u2192")),WF.default.createElement(fz.Box,null,WF.default.createElement(BU,{onSubmit:e})))):WF.default.createElement(fz.Box,{flexDirection:"column"},WF.default.createElement(fz.Box,null,WF.default.createElement(fz.Box,{marginRight:1},WF.default.createElement(Kdt.Text,{bold:!0,color:"cyanBright"},"Type of scope:")),WF.default.createElement(Hdt,{value:s,onChange:a})),!!g&&WF.default.createElement(MOe,{items:o,indicatorComponent:Udt,itemComponent:IBe,onSelect:p}))};var ror=xt(Dc(),1),EBe=xt(Dc(),1);var Iz=xt(Fs(),1),IXn=({onSubmit:e})=>Iz.default.createElement(EBe.Box,{flexDirection:"column"},Iz.default.createElement(EBe.Box,null,Iz.default.createElement(ror.Text,{bold:!0,color:"cyanBright"},"Write a short description (max 93) chars):")),Iz.default.createElement(EBe.Box,null,Iz.default.createElement(EBe.Box,{marginRight:1},Iz.default.createElement(ror.Text,{color:"gray"},"\u2192")),Iz.default.createElement(EBe.Box,null,Iz.default.createElement(BU,{onSubmit:e}))));var mXn=xt(Dc(),1),jdt=xt(Dc(),1),hXn=xt(Fs(),1),nor=xt(Fs(),1);var cpe=xt(Fs(),1);var CXn=Object.keys(DOe).map(e=>({label:DOe[e].description,value:e})),_Xn=({onSubmit:e})=>{let[t,r]=(0,hXn.useState)(""),s=(0,nor.useMemo)(()=>t.length>0?CXn.filter(o=>o.label.toLowerCase().includes(t.toLowerCase())):CXn,[t]),a=(0,nor.useMemo)(()=>s.length>0,[s]);return cpe.default.createElement(jdt.Box,{flexDirection:"column"},cpe.default.createElement(jdt.Box,null,cpe.default.createElement(jdt.Box,{marginRight:1},cpe.default.createElement(mXn.Text,{bold:!0,color:"cyanBright"},"Type of commit:")),cpe.default.createElement(Hdt,{value:t,onChange:r})),!!a&&cpe.default.createElement(MOe,{items:s,indicatorComponent:Udt,itemComponent:IBe,onSelect:o=>{e(o.value)}}))};var vWo=({onSubmit:e,...t})=>((0,yXn.useEffect)(()=>{e(t)},[t,e]),null),bXn=({onSubmit:e})=>{let[t,r]=(0,Vie.useState)(),[s,a]=(0,Vie.useState)(),[o,g]=(0,Vie.useState)(),[p,f]=(0,Vie.useState)(),[m,y]=(0,Vie.useState)(),[B,v]=(0,Vie.useState)(),[G,T]=(0,Vie.useState)();return t?o?G?G.scope&&!s?Cz.default.createElement(fXn,{onSubmit:a}):G.issues&&!p?Cz.default.createElement(cXn,{onSubmit:f}):G.body&&!m?Cz.default.createElement(oXn,{onSubmit:y}):G.breaking&&!B?Cz.default.createElement(aXn,{onSubmit:v}):Cz.default.createElement(vWo,{type:t,scope:s,subject:o,issues:p,body:m,breaking:B,skipci:G.skipci,onSubmit:e}):Cz.default.createElement(iXn,{onSubmit:T}):Cz.default.createElement(IXn,{onSubmit:g}):Cz.default.createElement(_Xn,{onSubmit:r})};var SWo=({commit:e,useSubmit:t})=>{let{stdin:r}=(0,wXn.useStdin)();return t(e),(0,TXn.useEffect)(()=>{r?.emit("keypress","",{name:"return"})},[r]),null},wWo=({useSubmit:e})=>{let[t,r]=(0,NXn.useState)();return t?ior.default.createElement(SWo,{commit:t,useSubmit:e}):ior.default.createElement(bXn,{onSubmit:r})},qdt=class extends EXn.BaseCommand{static paths=[["commit","message"]];args=ed.Rest({required:0});async execute(){let[t,r]=this.args;if(r)return 0;if(!t)throw new Error("Commit edit message file required.");let s=(0,SXn.forceStdinTty)(),a=await(0,vXn.renderForm)(wWo,{},{stdin:process.stdin,stdout:this.context.stdout,stderr:this.context.stderr});return a&&await BXn.xfs.writeFilePromise(t,this.formatCommit(a)),s&&process.stdin.destroy(),a?0:1}formatCommit(t){let r={trim:!0,cut:!1,newline:` -`,indent:"",width:100},s=`${t.type}${t.scope?`(${t.scope})`:""}: ${t.subject}`;t.skipci&&(s+=" [skip ci]");let a=t.body?(0,zdt.default)(t.body,r):!1,o=t.breaking?(0,zdt.default)(`BREAKING CHANGE: ${t.breaking.trim().replace(/^BREAKING CHANGE: /,"")}`,r):!1,g=t.issues?(0,zdt.default)(t.issues,r):!1;return[s,a,o,g].filter(Boolean).join(` +${r}`:s,s||""};async function Ssr(e,t,r){let s=r||{defaultIgnores:void 0,ignores:void 0},a=t||{};if(Cdt(e,{defaults:s.defaultIgnores,ignores:s.ignores}))return{valid:!0,errors:[],warnings:[],input:e};let o=e===""?{header:null,body:null,footer:null}:await JQn(e,void 0,s.parserOpts);if(o.header===null&&o.body===null&&o.footer===null)return{valid:!0,errors:[],warnings:[],input:e};let g=new Map(Object.entries(ZHn));s.plugins&&Object.values(s.plugins).forEach(T=>{T.rules&&Object.keys(T.rules).forEach(O=>g.set(O,T.rules[O]))});let p=Object.keys(a).filter(T=>typeof g.get(T)!="function");if(p.length>0){let T=[...g.keys()];throw new RangeError([`Found rules without implementation: ${p.join(", ")}.`,`Supported rules are: ${T.join(", ")}.`].join(` +`))}let f=Object.entries(a).map(([T,O])=>{if(!Array.isArray(O))return new Error(`config for rule ${T} must be array, received ${gBe.inspect(O)} of type ${typeof O}`);let[X]=O;if(X===uBe.Disabled&&O.length===1)return null;let[,U]=O;return typeof X!="number"||isNaN(X)?new Error(`level for rule ${T} must be number, received ${gBe.inspect(X)} of type ${typeof X}`):O.length<2||O.length>3?new Error(`config for rule ${T} must be 2 or 3 items long, received ${gBe.inspect(O)} of length ${O.length}`):X<0||X>2?new RangeError(`level for rule ${T} must be between 0 and 2, received ${gBe.inspect(X)}`):typeof U!="string"?new Error(`condition for rule ${T} must be string, received ${gBe.inspect(U)} of type ${typeof U}`):U!=="never"&&U!=="always"?new Error(`condition for rule ${T} must be "always" or "never", received ${gBe.inspect(U)}`):null}).filter(T=>T instanceof Error);if(f.length>0)throw new Error(f.map(T=>T.message).join(` +`));let m=Object.entries(a).filter(([,T])=>!!T&&T.length&&T[0]>0).map(async T=>{let[O,X]=T,[U,le,ae]=X,ge=g.get(O);if(!ge)throw new Error(`Could not find rule implementation for ${O}`);let fe=ge,[pe,he]=await fe(o,le,ae);return{level:U,valid:pe,name:O,message:he}}),y=(await Promise.all(m)).filter(T=>T!==null),B=y.filter(T=>T.level===uBe.Error&&!T.valid),v=y.filter(T=>T.level===uBe.Warning&&!T.valid);return{valid:B.length===0,errors:B,warnings:v,input:VHn(o)}}var wsr={back:{description:"Changes that affect backend code"},front:{description:"Changes that affect frontend code"},devops:{description:"Changes that affect devops code"},custom:{description:"Enter manually custom scope"}},GOe={feat:{description:"A new feature"},fix:{description:"Bug Fixes"},docs:{description:"Documentation only changes"},style:{description:"Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)"},refactor:{description:"A code change that neither fixes a bug nor adds a feature"},perf:{description:"A code change that improves performance"},test:{description:"Adding missing tests or correcting existing tests"},deps:{description:"Changes that affect external dependencies"},build:{description:"Changes that affect the build system"},ci:{description:"Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs)"},chore:{description:"Other changes that don't modify src or test files"},revert:{description:"Reverts a previous commit"}};var WHn={"body-leading-blank":[1,"always"],"body-max-line-length":[2,"always",180],"footer-leading-blank":[1,"always"],"footer-max-line-length":[2,"always",100],"header-max-length":[2,"always",140],"subject-case":[2,"never",["sentence-case","start-case","pascal-case","upper-case"]],"subject-empty":[2,"never"],"subject-full-stop":[2,"never","."],"type-case":[2,"always","lower-case"],"type-empty":[2,"never"],"type-enum":[2,"always",Object.keys(GOe)],"scope-case":[2,"always","lower-case"],"scope-empty":[2,"never"]};var p9o={headerPattern:/^(\w*)(?:\((.*)\))?: (.*)$/,headerCorrespondence:["type","scope","subject"],noteKeywords:["BREAKING CHANGE"],revertPattern:/^(?:Revert|revert:)\s"?([\s\S]+?)"?\s*This reverts commit (\w{7,40})\b/i,revertCorrespondence:["header","hash"]},f9o={parserOpts:p9o},vdt=class{scopes;workspaceNames;constructor({scopes:t,workspaceNames:r}){this.scopes=t,this.workspaceNames=r}async lint(t){let r=this.prepareConfig(WHn);return Ssr(t,r,f9o)}format(t,r={helpUrl:"https://github.com/conventional-changelog/commitlint/#what-is-commitlint"}){return bQn(t,r)}prepareConfig(t){let r=[];this.scopes&&r.push(...this.scopes.filter(a=>a&&a!=="atls")),this.workspaceNames&&r.push(...this.workspaceNames.filter(a=>a));let s=["common","github",...r];return t["scope-enum"]=[pdt.Error,"always",s],t}};var Sdt=class extends PHn.BaseCommand{static paths=[["commit","message","lint"]];async execute(){let t=await OHn.Configuration.find(this.context.cwd,this.context.plugins),{project:{workspaces:r}}=await QHn.Project.find(t,this.context.cwd),s=new Set(r.map(({manifest:m})=>m.name?.name??"")),a=new Set(r.map(({manifest:m})=>m.name?.scope??"")),o=new vdt({scopes:Array.from(a),workspaceNames:Array.from(s)}),g=await ddt({edit:!0}),p=await Promise.all(g.map(async m=>o.lint(m))),f=o.format({results:p});return f!==""&&this.context.stdout.write(f),p.some(m=>!m.valid)?1:0}};var DXn=vt(il(),1),xXn=vt(No(),1),kXn=vt(UHn(),1);Zl();var GXn=vt(zHn(),1),FXn=vt(xc(),1),ZXn=vt($a(),1),LXn=vt($a(),1),$dt=vt($Hn(),1);var NXn=vt($a(),1),Oie=vt($a(),1);var yBe=vt(xc(),1),_Be=vt(xc(),1),gXn=vt($a(),1),$sr=vt(aXn(),1);import cXn from"node:process";function jsr(){let{env:e}=cXn,{TERM:t,TERM_PROGRAM:r}=e;return cXn.platform!=="win32"?t!=="linux":!!e.WT_SESSION||!!e.TERMINUS_SUBLIME||e.ConEmuTask==="{cmd::Cmder}"||r==="Terminus-Sublime"||r==="vscode"||t==="xterm-256color"||t==="alacritty"||t==="rxvt-unicode"||t==="rxvt-unicode-256color"||e.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var lXn={circleQuestionMark:"(?)",questionMarkPrefix:"(?)",square:"\u2588",squareDarkShade:"\u2593",squareMediumShade:"\u2592",squareLightShade:"\u2591",squareTop:"\u2580",squareBottom:"\u2584",squareLeft:"\u258C",squareRight:"\u2590",squareCenter:"\u25A0",bullet:"\u25CF",dot:"\u2024",ellipsis:"\u2026",pointerSmall:"\u203A",triangleUp:"\u25B2",triangleUpSmall:"\u25B4",triangleDown:"\u25BC",triangleDownSmall:"\u25BE",triangleLeftSmall:"\u25C2",triangleRightSmall:"\u25B8",home:"\u2302",heart:"\u2665",musicNote:"\u266A",musicNoteBeamed:"\u266B",arrowUp:"\u2191",arrowDown:"\u2193",arrowLeft:"\u2190",arrowRight:"\u2192",arrowLeftRight:"\u2194",arrowUpDown:"\u2195",almostEqual:"\u2248",notEqual:"\u2260",lessOrEqual:"\u2264",greaterOrEqual:"\u2265",identical:"\u2261",infinity:"\u221E",subscriptZero:"\u2080",subscriptOne:"\u2081",subscriptTwo:"\u2082",subscriptThree:"\u2083",subscriptFour:"\u2084",subscriptFive:"\u2085",subscriptSix:"\u2086",subscriptSeven:"\u2087",subscriptEight:"\u2088",subscriptNine:"\u2089",oneHalf:"\xBD",oneThird:"\u2153",oneQuarter:"\xBC",oneFifth:"\u2155",oneSixth:"\u2159",oneEighth:"\u215B",twoThirds:"\u2154",twoFifths:"\u2156",threeQuarters:"\xBE",threeFifths:"\u2157",threeEighths:"\u215C",fourFifths:"\u2158",fiveSixths:"\u215A",fiveEighths:"\u215D",sevenEighths:"\u215E",line:"\u2500",lineBold:"\u2501",lineDouble:"\u2550",lineDashed0:"\u2504",lineDashed1:"\u2505",lineDashed2:"\u2508",lineDashed3:"\u2509",lineDashed4:"\u254C",lineDashed5:"\u254D",lineDashed6:"\u2574",lineDashed7:"\u2576",lineDashed8:"\u2578",lineDashed9:"\u257A",lineDashed10:"\u257C",lineDashed11:"\u257E",lineDashed12:"\u2212",lineDashed13:"\u2013",lineDashed14:"\u2010",lineDashed15:"\u2043",lineVertical:"\u2502",lineVerticalBold:"\u2503",lineVerticalDouble:"\u2551",lineVerticalDashed0:"\u2506",lineVerticalDashed1:"\u2507",lineVerticalDashed2:"\u250A",lineVerticalDashed3:"\u250B",lineVerticalDashed4:"\u254E",lineVerticalDashed5:"\u254F",lineVerticalDashed6:"\u2575",lineVerticalDashed7:"\u2577",lineVerticalDashed8:"\u2579",lineVerticalDashed9:"\u257B",lineVerticalDashed10:"\u257D",lineVerticalDashed11:"\u257F",lineDownLeft:"\u2510",lineDownLeftArc:"\u256E",lineDownBoldLeftBold:"\u2513",lineDownBoldLeft:"\u2512",lineDownLeftBold:"\u2511",lineDownDoubleLeftDouble:"\u2557",lineDownDoubleLeft:"\u2556",lineDownLeftDouble:"\u2555",lineDownRight:"\u250C",lineDownRightArc:"\u256D",lineDownBoldRightBold:"\u250F",lineDownBoldRight:"\u250E",lineDownRightBold:"\u250D",lineDownDoubleRightDouble:"\u2554",lineDownDoubleRight:"\u2553",lineDownRightDouble:"\u2552",lineUpLeft:"\u2518",lineUpLeftArc:"\u256F",lineUpBoldLeftBold:"\u251B",lineUpBoldLeft:"\u251A",lineUpLeftBold:"\u2519",lineUpDoubleLeftDouble:"\u255D",lineUpDoubleLeft:"\u255C",lineUpLeftDouble:"\u255B",lineUpRight:"\u2514",lineUpRightArc:"\u2570",lineUpBoldRightBold:"\u2517",lineUpBoldRight:"\u2516",lineUpRightBold:"\u2515",lineUpDoubleRightDouble:"\u255A",lineUpDoubleRight:"\u2559",lineUpRightDouble:"\u2558",lineUpDownLeft:"\u2524",lineUpBoldDownBoldLeftBold:"\u252B",lineUpBoldDownBoldLeft:"\u2528",lineUpDownLeftBold:"\u2525",lineUpBoldDownLeftBold:"\u2529",lineUpDownBoldLeftBold:"\u252A",lineUpDownBoldLeft:"\u2527",lineUpBoldDownLeft:"\u2526",lineUpDoubleDownDoubleLeftDouble:"\u2563",lineUpDoubleDownDoubleLeft:"\u2562",lineUpDownLeftDouble:"\u2561",lineUpDownRight:"\u251C",lineUpBoldDownBoldRightBold:"\u2523",lineUpBoldDownBoldRight:"\u2520",lineUpDownRightBold:"\u251D",lineUpBoldDownRightBold:"\u2521",lineUpDownBoldRightBold:"\u2522",lineUpDownBoldRight:"\u251F",lineUpBoldDownRight:"\u251E",lineUpDoubleDownDoubleRightDouble:"\u2560",lineUpDoubleDownDoubleRight:"\u255F",lineUpDownRightDouble:"\u255E",lineDownLeftRight:"\u252C",lineDownBoldLeftBoldRightBold:"\u2533",lineDownLeftBoldRightBold:"\u252F",lineDownBoldLeftRight:"\u2530",lineDownBoldLeftBoldRight:"\u2531",lineDownBoldLeftRightBold:"\u2532",lineDownLeftRightBold:"\u252E",lineDownLeftBoldRight:"\u252D",lineDownDoubleLeftDoubleRightDouble:"\u2566",lineDownDoubleLeftRight:"\u2565",lineDownLeftDoubleRightDouble:"\u2564",lineUpLeftRight:"\u2534",lineUpBoldLeftBoldRightBold:"\u253B",lineUpLeftBoldRightBold:"\u2537",lineUpBoldLeftRight:"\u2538",lineUpBoldLeftBoldRight:"\u2539",lineUpBoldLeftRightBold:"\u253A",lineUpLeftRightBold:"\u2536",lineUpLeftBoldRight:"\u2535",lineUpDoubleLeftDoubleRightDouble:"\u2569",lineUpDoubleLeftRight:"\u2568",lineUpLeftDoubleRightDouble:"\u2567",lineUpDownLeftRight:"\u253C",lineUpBoldDownBoldLeftBoldRightBold:"\u254B",lineUpDownBoldLeftBoldRightBold:"\u2548",lineUpBoldDownLeftBoldRightBold:"\u2547",lineUpBoldDownBoldLeftRightBold:"\u254A",lineUpBoldDownBoldLeftBoldRight:"\u2549",lineUpBoldDownLeftRight:"\u2540",lineUpDownBoldLeftRight:"\u2541",lineUpDownLeftBoldRight:"\u253D",lineUpDownLeftRightBold:"\u253E",lineUpBoldDownBoldLeftRight:"\u2542",lineUpDownLeftBoldRightBold:"\u253F",lineUpBoldDownLeftBoldRight:"\u2543",lineUpBoldDownLeftRightBold:"\u2544",lineUpDownBoldLeftBoldRight:"\u2545",lineUpDownBoldLeftRightBold:"\u2546",lineUpDoubleDownDoubleLeftDoubleRightDouble:"\u256C",lineUpDoubleDownDoubleLeftRight:"\u256B",lineUpDownLeftDoubleRightDouble:"\u256A",lineCross:"\u2573",lineBackslash:"\u2572",lineSlash:"\u2571"},uXn={tick:"\u2714",info:"\u2139",warning:"\u26A0",cross:"\u2718",squareSmall:"\u25FB",squareSmallFilled:"\u25FC",circle:"\u25EF",circleFilled:"\u25C9",circleDotted:"\u25CC",circleDouble:"\u25CE",circleCircle:"\u24DE",circleCross:"\u24E7",circlePipe:"\u24BE",radioOn:"\u25C9",radioOff:"\u25EF",checkboxOn:"\u2612",checkboxOff:"\u2610",checkboxCircleOn:"\u24E7",checkboxCircleOff:"\u24BE",pointer:"\u276F",triangleUpOutline:"\u25B3",triangleLeft:"\u25C0",triangleRight:"\u25B6",lozenge:"\u25C6",lozengeOutline:"\u25C7",hamburger:"\u2630",smiley:"\u32E1",mustache:"\u0DF4",star:"\u2605",play:"\u25B6",nodejs:"\u2B22",oneSeventh:"\u2150",oneNinth:"\u2151",oneTenth:"\u2152"},TWo={tick:"\u221A",info:"i",warning:"\u203C",cross:"\xD7",squareSmall:"\u25A1",squareSmallFilled:"\u25A0",circle:"( )",circleFilled:"(*)",circleDotted:"( )",circleDouble:"( )",circleCircle:"(\u25CB)",circleCross:"(\xD7)",circlePipe:"(\u2502)",radioOn:"(*)",radioOff:"( )",checkboxOn:"[\xD7]",checkboxOff:"[ ]",checkboxCircleOn:"(\xD7)",checkboxCircleOff:"( )",pointer:">",triangleUpOutline:"\u2206",triangleLeft:"\u25C4",triangleRight:"\u25BA",lozenge:"\u2666",lozengeOutline:"\u25CA",hamburger:"\u2261",smiley:"\u263A",mustache:"\u250C\u2500\u2510",star:"\u2736",play:"\u25BA",nodejs:"\u2666",oneSeventh:"1/7",oneNinth:"1/9",oneTenth:"1/10"},NWo={...lXn,...uXn},RWo={...lXn,...TWo},DWo=jsr(),xWo=DWo?NWo:RWo,bI=xWo,Wsl=Object.entries(uXn);var zsr=vt(xc(),1),qsr=vt(xc(),1),mBe=vt(Ac(),1),hBe=({label:e,value:t})=>(0,mBe.jsxs)(qsr.Box,{children:[(0,mBe.jsx)(qsr.Box,{width:12,children:(0,mBe.jsx)(zsr.Text,{bold:!0,color:"#d7875f",children:t})}),(0,mBe.jsx)(zsr.Text,{children:e})]});var XW=vt(Ac(),1),kWo=$sr.default.default||$sr.default,GWo=[{label:"Add a scope",value:"scope"},{label:"Resolves issues",value:"issues"},{label:"Introduces breaking changes",value:"breaking"},{label:"Add a long description",value:"body"},{label:"Skip ci/cd setups",value:"skipci"}],FWo=({isSelected:e=!1})=>(0,XW.jsx)(_Be.Box,{marginRight:1,children:e?(0,XW.jsx)(yBe.Text,{children:bI.circleFilled}):(0,XW.jsx)(yBe.Text,{children:" "})}),ZWo=({isHighlighted:e=!1})=>(0,XW.jsx)(_Be.Box,{marginRight:1,children:e?(0,XW.jsx)(yBe.Text,{color:"cyanBright",children:bI.pointer}):(0,XW.jsx)(yBe.Text,{children:" "})}),AXn=({onSubmit:e})=>{let t=(0,gXn.useCallback)(r=>{e(r.reduce((s,a)=>({...s,[a.value]:!0}),{}))},[e]);return(0,XW.jsxs)(_Be.Box,{flexDirection:"column",children:[(0,XW.jsx)(_Be.Box,{children:(0,XW.jsx)(yBe.Text,{bold:!0,color:"cyanBright",children:"Please select additional actions:"})}),(0,XW.jsx)(_Be.Box,{children:(0,XW.jsx)(kWo,{items:GWo,indicatorComponent:ZWo,itemComponent:hBe,checkboxComponent:FWo,onSubmit:t})})]})};var eor=vt(xc(),1),bBe=vt(xc(),1);var Wie=vt($a(),1),Xdt=vt(xc(),1);function dXn({value:e,placeholder:t="",focus:r=!0,mask:s,highlightPastedText:a=!1,showCursor:o=!0,onChange:g,onSubmit:p}){let[f,m]=(0,Wie.useState)({cursorOffset:(e||"").length,cursorWidth:0}),{cursorOffset:y,cursorWidth:B}=f;(0,Wie.useEffect)(()=>{m(X=>{if(!r||!o)return X;let U=e||"";return X.cursorOffset>U.length-1?{cursorOffset:U.length,cursorWidth:0}:X})},[e,r,o]);let v=a?B:0,k=s?s.repeat(e.length):e,T=k,O=t?dp.grey(t):void 0;if(o&&r){O=t.length>0?dp.inverse(t[0])+dp.grey(t.slice(1)):dp.inverse(" "),T=k.length>0?"":dp.inverse(" ");let X=0;for(let U of k)T+=X>=y-v&&X<=y?dp.inverse(U):U,X++;k.length>0&&y===k.length&&(T+=dp.inverse(" "))}return(0,Xdt.useInput)((X,U)=>{if(U.upArrow||U.downArrow||U.ctrl&&X==="c"||U.tab||U.shift&&U.tab)return;if(U.return){p&&p(e);return}let le=y,ae=e,ge=0;U.leftArrow?o&&le--:U.rightArrow?o&&le++:U.backspace||U.delete?y>0&&(ae=e.slice(0,y-1)+e.slice(y,e.length),le--):(ae=e.slice(0,y)+X+e.slice(y,e.length),le+=X.length,X.length>1&&(ge=X.length)),y<0&&(le=0),y>e.length&&(le=e.length),m({cursorOffset:le,cursorWidth:ge}),ae!==e&&g(ae)},{isActive:r}),Wie.default.createElement(Xdt.Text,null,t?k.length>0?T:O:T)}var Jdt=dXn;function wU({initialValue:e="",...t}){let[r,s]=(0,Wie.useState)(e);return Wie.default.createElement(dXn,{...t,value:r,onChange:s})}var TU=vt(Ac(),1),pXn=({onSubmit:e})=>(0,TU.jsxs)(bBe.Box,{flexDirection:"column",children:[(0,TU.jsx)(bBe.Box,{children:(0,TU.jsx)(eor.Text,{bold:!0,color:"cyanBright",children:"Please give a long description:"})}),(0,TU.jsxs)(bBe.Box,{children:[(0,TU.jsx)(bBe.Box,{marginRight:1,children:(0,TU.jsx)(eor.Text,{color:"gray",children:"\u2192"})}),(0,TU.jsx)(bBe.Box,{children:(0,TU.jsx)(wU,{onSubmit:e})})]})]});var tor=vt(xc(),1),EBe=vt(xc(),1);var NU=vt(Ac(),1),fXn=({onSubmit:e})=>(0,NU.jsxs)(EBe.Box,{flexDirection:"column",children:[(0,NU.jsx)(EBe.Box,{children:(0,NU.jsx)(tor.Text,{bold:!0,color:"cyanBright",children:"Describe the breaking changes:"})}),(0,NU.jsxs)(EBe.Box,{children:[(0,NU.jsx)(EBe.Box,{marginRight:1,children:(0,NU.jsx)(tor.Text,{color:"gray",children:"\u2192"})}),(0,NU.jsx)(EBe.Box,{children:(0,NU.jsx)(wU,{onSubmit:e})})]})]});var ror=vt(xc(),1),BBe=vt(xc(),1);var RU=vt(Ac(),1),IXn=({onSubmit:e})=>(0,RU.jsxs)(BBe.Box,{flexDirection:"column",children:[(0,RU.jsx)(BBe.Box,{children:(0,RU.jsx)(ror.Text,{bold:!0,color:"cyanBright",children:'Add issue references (e.g. "fix #123, re #124".):'})}),(0,RU.jsxs)(BBe.Box,{children:[(0,RU.jsx)(BBe.Box,{marginRight:1,children:(0,RU.jsx)(ror.Text,{color:"gray",children:bI.arrowRight})}),(0,RU.jsx)(BBe.Box,{children:(0,RU.jsx)(wU,{onSubmit:e})})]})]});var zdt=vt(xc(),1),mz=vt(xc(),1);var oor=vt($a(),1),aor=vt($a(),1),bXn=vt($a(),1);var Udt=vt($a(),1),QOe=vt(xc(),1);function LWo({isSelected:e=!1}){return Udt.default.createElement(QOe.Box,{marginRight:1},e?Udt.default.createElement(QOe.Text,{color:"blue"},bI.pointer):Udt.default.createElement(QOe.Text,null," "))}var nor=LWo;var CXn=vt($a(),1),mXn=vt(xc(),1);function VWo({isSelected:e=!1,label:t}){return CXn.createElement(mXn.Text,{color:e?"blue":void 0},t)}var ior=VWo;var KL=vt($a(),1),hXn=vt(Osr(),1);function vBe(e,t){if(!Array.isArray(e))throw new TypeError(`Expected an array, got \`${typeof e}\`.`);if(!Number.isSafeInteger(t))throw new TypeError(`The \`steps\` parameter must be an integer, got ${t}.`);let{length:r}=e;if(r===0)return[...e];let s=(t%r+r)%r;return s===0?[...e]:[...e.slice(-s),...e.slice(0,-s)]}var MOe=vt(xc(),1);function WWo({items:e=[],isFocused:t=!0,initialIndex:r=0,indicatorComponent:s=nor,itemComponent:a=ior,limit:o,onSelect:g,onHighlight:p}){let f=typeof o=="number"&&e.length>o,m=f?Math.min(o,e.length):e.length,y=m-1,[B,v]=(0,KL.useState)(r>y?y-r:0),[k,T]=(0,KL.useState)(r?r>y?y:r:0),O=(0,KL.useRef)(e);(0,KL.useEffect)(()=>{(0,hXn.default)(O.current.map(U=>U.value),e.map(U=>U.value))||(v(0),T(0)),O.current=e},[e]),(0,MOe.useInput)((0,KL.useCallback)((U,le)=>{if(U==="k"||le.upArrow){let ae=(f?m:e.length)-1,ge=k===0,fe=f?k:ae,pe=ge?B+1:B,he=ge?fe:k-1;v(pe),T(he);let be=f?vBe(e,pe).slice(0,m):e;typeof p=="function"&&p(be[he])}if(U==="j"||le.downArrow){let ae=k===(f?m:e.length)-1,ge=f?k:0,fe=ae?B-1:B,pe=ae?ge:k+1;v(fe),T(pe);let he=f?vBe(e,fe).slice(0,m):e;typeof p=="function"&&p(he[pe])}if(le.return){let ae=f?vBe(e,B).slice(0,m):e;typeof g=="function"&&g(ae[k])}},[f,m,B,k,e,g,p]),{isActive:t});let X=f?vBe(e,B).slice(0,m):e;return KL.default.createElement(MOe.Box,{flexDirection:"column"},X.map((U,le)=>{let ae=le===k;return KL.default.createElement(MOe.Box,{key:U.key??U.value},KL.default.createElement(s,{isSelected:ae}),KL.default.createElement(a,{...U,isSelected:ae}))}))}var HOe=WWo;var sor=vt(xc(),1),_Xn=vt(xc(),1);var Kdt=vt(Ac(),1),jdt=({isSelected:e=!1})=>(0,Kdt.jsx)(_Xn.Box,{marginRight:1,children:e?(0,Kdt.jsx)(sor.Text,{color:"cyanBright",children:bI.pointer}):(0,Kdt.jsx)(sor.Text,{children:" "})});var xk=vt(Ac(),1),yXn=Object.keys(wsr).map(e=>({label:wsr[e].description,value:e})),EXn=({onSubmit:e})=>{let[t,r]=(0,oor.useState)(!1),[s,a]=(0,oor.useState)(""),o=(0,aor.useMemo)(()=>s.length>0?yXn.filter(f=>f.label.toLowerCase().includes(s.toLowerCase())):yXn,[s]),g=(0,aor.useMemo)(()=>o.length>0,[o]),p=(0,bXn.useCallback)(f=>{f.value==="custom"?r(!0):e(f.value)},[r,e]);return t?(0,xk.jsxs)(mz.Box,{flexDirection:"column",children:[(0,xk.jsx)(mz.Box,{children:(0,xk.jsx)(zdt.Text,{bold:!0,color:"cyanBright",children:"Please state the scope of the change:"})}),(0,xk.jsxs)(mz.Box,{children:[(0,xk.jsx)(mz.Box,{marginRight:1,children:(0,xk.jsx)(zdt.Text,{color:"gray",children:"\u2192"})}),(0,xk.jsx)(mz.Box,{children:(0,xk.jsx)(wU,{onSubmit:e})})]})]}):(0,xk.jsxs)(mz.Box,{flexDirection:"column",children:[(0,xk.jsxs)(mz.Box,{children:[(0,xk.jsx)(mz.Box,{marginRight:1,children:(0,xk.jsx)(zdt.Text,{bold:!0,color:"cyanBright",children:"Type of scope:"})}),(0,xk.jsx)(Jdt,{value:s,onChange:a})]}),!!g&&(0,xk.jsx)(HOe,{items:o,indicatorComponent:jdt,itemComponent:hBe,onSelect:p})]})};var cor=vt(xc(),1),SBe=vt(xc(),1);var DU=vt(Ac(),1),BXn=({onSubmit:e})=>(0,DU.jsxs)(SBe.Box,{flexDirection:"column",children:[(0,DU.jsx)(SBe.Box,{children:(0,DU.jsx)(cor.Text,{bold:!0,color:"cyanBright",children:"Write a short description (max 93) chars):"})}),(0,DU.jsxs)(SBe.Box,{children:[(0,DU.jsx)(SBe.Box,{marginRight:1,children:(0,DU.jsx)(cor.Text,{color:"gray",children:"\u2192"})}),(0,DU.jsx)(SBe.Box,{children:(0,DU.jsx)(wU,{onSubmit:e})})]})]});var SXn=vt(xc(),1),qdt=vt(xc(),1),wXn=vt($a(),1),lor=vt($a(),1);var Pie=vt(Ac(),1),vXn=Object.keys(GOe).map(e=>({label:GOe[e].description,value:e})),TXn=({onSubmit:e})=>{let[t,r]=(0,wXn.useState)(""),s=(0,lor.useMemo)(()=>t.length>0?vXn.filter(o=>o.label.toLowerCase().includes(t.toLowerCase())):vXn,[t]),a=(0,lor.useMemo)(()=>s.length>0,[s]);return(0,Pie.jsxs)(qdt.Box,{flexDirection:"column",children:[(0,Pie.jsxs)(qdt.Box,{children:[(0,Pie.jsx)(qdt.Box,{marginRight:1,children:(0,Pie.jsx)(SXn.Text,{bold:!0,color:"cyanBright",children:"Type of commit:"})}),(0,Pie.jsx)(Jdt,{value:t,onChange:r})]}),!!a&&(0,Pie.jsx)(HOe,{items:s,indicatorComponent:jdt,itemComponent:hBe,onSelect:o=>{e(o.value)}})]})};var hz=vt(Ac(),1),PWo=({onSubmit:e,...t})=>((0,NXn.useEffect)(()=>{e(t)},[t,e]),null),RXn=({onSubmit:e})=>{let[t,r]=(0,Oie.useState)(),[s,a]=(0,Oie.useState)(),[o,g]=(0,Oie.useState)(),[p,f]=(0,Oie.useState)(),[m,y]=(0,Oie.useState)(),[B,v]=(0,Oie.useState)(),[k,T]=(0,Oie.useState)();return t?o?k?k.scope&&!s?(0,hz.jsx)(EXn,{onSubmit:a}):k.issues&&!p?(0,hz.jsx)(IXn,{onSubmit:f}):k.body&&!m?(0,hz.jsx)(pXn,{onSubmit:y}):k.breaking&&!B?(0,hz.jsx)(fXn,{onSubmit:v}):(0,hz.jsx)(PWo,{type:t,scope:s,subject:o,issues:p,body:m,breaking:B,skipci:k.skipci,onSubmit:e}):(0,hz.jsx)(AXn,{onSubmit:T}):(0,hz.jsx)(BXn,{onSubmit:g}):(0,hz.jsx)(TXn,{onSubmit:r})};var uor=vt(Ac(),1),OWo=({commit:e,useSubmit:t})=>{let{stdin:r}=(0,FXn.useStdin)();return t(e),(0,ZXn.useEffect)(()=>{r?.emit("keypress","",{name:"return"})},[r]),null},QWo=({useSubmit:e})=>{let[t,r]=(0,LXn.useState)();return t?(0,uor.jsx)(OWo,{commit:t,useSubmit:e}):(0,uor.jsx)(RXn,{onSubmit:r})},ept=class extends DXn.BaseCommand{static paths=[["commit","message"]];args=td.Rest({required:0});async execute(){let[t,r]=this.args;if(r)return 0;if(!t)throw new Error("Commit edit message file required.");let s=(0,GXn.forceStdinTty)(),a=await(0,kXn.renderForm)(QWo,{},{stdin:process.stdin,stdout:this.context.stdout,stderr:this.context.stderr});return a&&await xXn.xfs.writeFilePromise(t,this.formatCommit(a)),s&&process.stdin.destroy(),a?0:1}formatCommit(t){let r={trim:!0,cut:!1,newline:` +`,indent:"",width:100},s=`${t.type}${t.scope?`(${t.scope})`:""}: ${t.subject}`;t.skipci&&(s+=" [skip ci]");let a=t.body?(0,$dt.default)(t.body,r):!1,o=t.breaking?(0,$dt.default)(`BREAKING CHANGE: ${t.breaking.trim().replace(/^BREAKING CHANGE: /,"")}`,r):!1,g=t.issues?(0,$dt.default)(t.issues,r):!1;return[s,a,o,g].filter(Boolean).join(` -`)}};var S6n=xt(nl(),1);Fl();var B6n=xt(wk(),1);var ZXn=xt(wk(),1);var UWo=(0,ZXn.default)("lint-staged:execGit"),KWo=["-c","submodule.recurse=false"],jWo=[...KWo],PF=async(e,t={})=>{UWo("Running git command",e);try{let{stdout:r}=await lz("git",jWo.concat(e),{...t,all:!0,cwd:t.cwd||process.cwd(),stdin:"ignore"});return r}catch({all:r}){throw new Error(r)}};import{inspect as OPo}from"node:util";var WXn=xt(VXn(),1);var PXn=WXn.default;import*as ipt from"tty";var{env:Wie={},argv:MXn=[],platform:$Wo=""}=typeof process>"u"?{}:process,e3o="NO_COLOR"in Wie||MXn.includes("--no-color"),t3o="FORCE_COLOR"in Wie||MXn.includes("--color"),r3o=$Wo==="win32",QXn=Wie.TERM==="dumb",n3o=ipt&&ipt.isatty&&ipt.isatty(1)&&Wie.TERM&&!QXn,i3o="CI"in Wie&&("GITHUB_ACTIONS"in Wie||"GITLAB_CI"in Wie||"CIRCLECI"in Wie),s3o=!e3o&&(t3o||r3o&&!QXn||n3o||i3o),YXn=(e,t,r,s,a=t.substring(0,e)+s,o=t.substring(e+r.length),g=o.indexOf(r))=>a+(g<0?o:YXn(g,o,r,s)),o3o=(e,t,r,s,a)=>e<0?r+t+s:r+YXn(e,t,s,a)+s,a3o=(e,t,r=e,s=e.length+1)=>a=>a||!(a===""||a===void 0)?o3o((""+a).indexOf(t,s),a,e,t,r):"",aC=(e,t,r)=>a3o(`\x1B[${e}m`,`\x1B[${t}m`,r),OXn={reset:aC(0,0),bold:aC(1,22,"\x1B[22m\x1B[1m"),dim:aC(2,22,"\x1B[22m\x1B[2m"),italic:aC(3,23),underline:aC(4,24),inverse:aC(7,27),hidden:aC(8,28),strikethrough:aC(9,29),black:aC(30,39),red:aC(31,39),green:aC(32,39),yellow:aC(33,39),blue:aC(34,39),magenta:aC(35,39),cyan:aC(36,39),white:aC(37,39),gray:aC(90,39),bgBlack:aC(40,49),bgRed:aC(41,49),bgGreen:aC(42,49),bgYellow:aC(43,49),bgBlue:aC(44,49),bgMagenta:aC(45,49),bgCyan:aC(46,49),bgWhite:aC(47,49),blackBright:aC(90,39),redBright:aC(91,39),greenBright:aC(92,39),yellowBright:aC(93,39),blueBright:aC(94,39),magentaBright:aC(95,39),cyanBright:aC(96,39),whiteBright:aC(97,39),bgBlackBright:aC(100,49),bgRedBright:aC(101,49),bgGreenBright:aC(102,49),bgYellowBright:aC(103,49),bgBlueBright:aC(104,49),bgMagentaBright:aC(105,49),bgCyanBright:aC(106,49),bgWhiteBright:aC(107,49)},cor=({useColor:e=s3o}={})=>e?OXn:Object.keys(OXn).reduce((t,r)=>({...t,[r]:String}),{}),{reset:Rol,bold:Dol,dim:xol,italic:kol,underline:Gol,inverse:Fol,hidden:Zol,strikethrough:Lol,black:Vol,red:Wol,green:Pol,yellow:Ool,blue:Mol,magenta:Qol,cyan:Yol,white:Hol,gray:Xol,bgBlack:Jol,bgRed:Uol,bgGreen:Kol,bgYellow:jol,bgBlue:zol,bgMagenta:qol,bgCyan:$ol,bgWhite:eal,blackBright:tal,redBright:ral,greenBright:nal,yellowBright:ial,blueBright:sal,magentaBright:oal,cyanBright:aal,whiteBright:cal,bgBlackBright:lal,bgRedBright:ual,bgGreenBright:gal,bgYellowBright:Aal,bgBlueBright:dal,bgMagentaBright:pal,bgCyanBright:fal,bgWhiteBright:Ial}=cor();var eJn=xt(XXn(),1);import{format as EPo}from"util";import{EOL as V4n}from"os";import{StringDecoder as BPo}from"string_decoder";import{EOL as Ipt}from"os";import{Writable as vPo}from"stream";import{EOL as Cpt}from"os";import{randomUUID as VPo}from"crypto";var hPo=Object.defineProperty,Ep=(e,t)=>hPo(e,"name",{value:t,configurable:!0}),Z4n="\x1B[",L4n={CURSOR_HIDE:Z4n+"?25l",CURSOR_SHOW:Z4n+"?25h"};var Q4n=(e=>(e.WAITING="WAITING",e.STARTED="STARTED",e.COMPLETED="COMPLETED",e.FAILED="FAILED",e.SKIPPED="SKIPPED",e.ROLLING_BACK="ROLLING_BACK",e.ROLLED_BACK="ROLLED_BACK",e.RETRY="RETRY",e.PAUSED="PAUSED",e.PROMPT="PROMPT",e.PROMPT_COMPLETED="PROMPT_COMPLETED",e.PROMPT_FAILED="PROMPT_FAILED",e))(Q4n||{}),Y4n=class{static{Ep(this,"EventManager")}emitter=new PXn;emit(e,t){this.emitter.emit(e,t)}on(e,t){this.emitter.addListener(e,t)}once(e,t){this.emitter.once(e,t)}off(e,t){this.emitter.off(e,t)}complete(){this.emitter.removeAllListeners()}},Scl=class{static{Ep(this,"BaseEventMap")}};function H4n(e){return!!e&&typeof e=="object"&&typeof e.subscribe=="function"}Ep(H4n,"isObservable");function X4n(e){return!!e&&typeof e=="object"&&e.readable===!0&&typeof e.read=="function"&&typeof e.on=="function"}Ep(X4n,"isReadable");function Gor(){return!!process.env.LISTR_FORCE_UNICODE||process.platform!=="win32"||!!process.env.CI||!!process.env.WT_SESSION||process.env.TERM_PROGRAM==="vscode"||process.env.TERM==="xterm-256color"||process.env.TERM==="alacritty"}Ep(Gor,"isUnicodeSupported");var _Po="(?:\\u001b|\\u009b)\\[[\\=><~/#&.:=?%@~_-]*[0-9]*[\\a-ln-tqyz=><~/#&.:=?%@~_-]+",yPo=/\u0007/;function DBe(e){return String(e).replace(new RegExp(_Po,"gmi"),"").replace(new RegExp(yPo,"gmi"),"").trim()}Ep(DBe,"cleanseAnsi");var S0=cor();function Tor(e,t){return e.replace(/^(?!\s*$)/gm," ".repeat(t))}Ep(Tor,"indent");var J4n={warning:"\u26A0",cross:"\u2716",arrowDown:"\u2193",tick:"\u2714",arrowRight:"\u2192",pointer:"\u276F",checkboxOn:"\u2612",arrowLeft:"\u2190",squareSmallFilled:"\u25FC",pointerSmall:"\u203A"},bPo={...J4n,warning:"\u203C",cross:"\xD7",tick:"\u221A",pointer:">",checkboxOn:"[\xD7]",squareSmallFilled:"\u25A0"},Zy=Gor()?J4n:bPo;function RBe(e,...t){return EPo(String(e),...t)}Ep(RBe,"splat");var mpt={icon:{STARTED:Zy.pointer,FAILED:Zy.cross,SKIPPED:Zy.arrowDown,COMPLETED:Zy.tick,OUTPUT:Zy.pointerSmall,TITLE:Zy.arrowRight,RETRY:Zy.warning,ROLLBACK:Zy.arrowLeft,PAUSED:Zy.squareSmallFilled},color:{STARTED:S0.yellow,FAILED:S0.red,SKIPPED:S0.yellow,COMPLETED:S0.green,RETRY:S0.yellowBright,ROLLBACK:S0.redBright,PAUSED:S0.yellowBright}},U4n=["RETRY","ROLLBACK","FAILED"],xBe=class{constructor(e){this.options=e,this.options={useIcons:!0,toStderr:[],...e??{}},this.options.fields??={},this.options.fields.prefix??=[],this.options.fields.suffix??=[],this.process=this.options.processOutput??new For}static{Ep(this,"ListrLogger")}process;log(e,t,r){let s=this.format(e,t,r);if(this.options.toStderr.includes(e)){this.process.toStderr(s);return}this.process.toStdout(s)}toStdout(e,t,r=!0){this.process.toStdout(this.format(null,e,t),r)}toStderr(e,t,r=!0){this.process.toStderr(this.format(null,e,t),r)}wrap(e,t){return e&&this.applyFormat(`[${e}]`,t)}splat(...e){let t=e.shift()??"";return e.length===0?t:RBe(t,e)}suffix(e,...t){return t.filter(Boolean).forEach(r=>{if(e+=this.spacing(e),typeof r=="string")e+=this.wrap(r);else if(typeof r=="object"){if(r.args??=[],typeof r.condition=="function"?!r.condition(...r.args):!(r.condition??!0))return e;e+=this.wrap(typeof r.field=="function"?r.field(...r.args):r.field,{format:r?.format(...r.args)})}}),e}prefix(e,...t){return t.filter(Boolean).forEach(r=>{if(e=this.spacing(e)+e,typeof r=="string")e=this.wrap(r)+e;else if(typeof r=="object"){if(r.args??=[],typeof r.condition=="function"?!r.condition(...r.args):!(r.condition??!0))return e;e=this.wrap(typeof r.field=="function"?r.field(...r.args):r.field,{format:r?.format()})+e}}),e}fields(e,t){return this.options?.fields?.prefix&&(e=this.prefix(e,...this.options.fields.prefix)),t?.prefix&&(e=this.prefix(e,...t.prefix)),t?.suffix&&(e=this.suffix(e,...t.suffix)),this.options?.fields?.suffix&&(e=this.suffix(e,...this.options.fields.suffix)),e}icon(e,t){if(!e)return null;t||=this.options.icon?.[e];let r=this.options.color?.[e];return t&&r&&(t=r(t)),t}format(e,t,r){return Array.isArray(t)||(t=[t]),t=this.splat(t.shift(),...t).toString().split(V4n).filter(s=>!s||s.trim()!=="").map(s=>this.style(e,this.fields(s,{prefix:Array.isArray(r?.prefix)?r.prefix:[r?.prefix],suffix:Array.isArray(r?.suffix)?r.suffix:[r?.suffix]}))).join(V4n),t}style(e,t){if(!e||!t)return t;let r=this.icon(e,!this.options.useIcons&&this.wrap(e));return r&&(t=r+" "+t),t}applyFormat(e,t){return t?.format?t.format(e):e}spacing(e){return typeof e>"u"||e.trim()===""?"":" "}},Nor=class{constructor(e){this.options=e}static{Ep(this,"ProcessOutputBuffer")}buffer=[];decoder=new BPo;get all(){return this.buffer}get last(){return this.buffer.at(-1)}get length(){return this.buffer.length}write(e,...t){let r=t[t.length-1];return this.buffer.push({time:Date.now(),stream:this.options?.stream,entry:this.decoder.write(typeof e=="string"?Buffer.from(e,typeof t[0]=="string"?t[0]:void 0):Buffer.from(e))}),this.options?.limit&&(this.buffer=this.buffer.slice(-this.options.limit)),typeof r=="function"&&r(),!0}reset(){this.buffer=[]}},W4n=class{constructor(e){this.stream=e,this.method=e.write,this.buffer=new Nor({stream:e})}static{Ep(this,"ProcessOutputStream")}method;buffer;get out(){return Object.assign({},this.stream,{write:this.write.bind(this)})}hijack(){this.stream.write=this.buffer.write.bind(this.buffer)}release(){this.stream.write=this.method;let e=[...this.buffer.all];return this.buffer.reset(),e}write(...e){return this.method.apply(this.stream,e)}},For=class{constructor(e,t,r){this.options=r,this.stream={stdout:new W4n(e??process.stdout),stderr:new W4n(t??process.stderr)},this.options={dump:["stdout","stderr"],leaveEmptyLine:!0,...r}}static{Ep(this,"ProcessOutput")}stream;active;get stdout(){return this.stream.stdout.out}get stderr(){return this.stream.stderr.out}hijack(){if(this.active)throw new Error("ProcessOutput has been already hijacked!");this.stream.stdout.write(L4n.CURSOR_HIDE),Object.values(this.stream).forEach(e=>e.hijack()),this.active=!0}release(){let e=Object.entries(this.stream).map(([t,r])=>({name:t,buffer:r.release()})).filter(t=>this.options.dump.includes(t.name)).flatMap(t=>t.buffer).sort((t,r)=>t.time-r.time).map(t=>({...t,entry:DBe(t.entry)})).filter(t=>t.entry);e.length>0&&(this.options.leaveEmptyLine&&this.stdout.write(Ipt),e.forEach(t=>{(t.stream??this.stdout).write(t.entry+Ipt)})),this.stream.stdout.write(L4n.CURSOR_SHOW),this.active=!1}toStdout(e,t=!0){return t&&(e=e+Ipt),this.stream.stdout.write(e)}toStderr(e,t=!0){return t&&(e=e+Ipt),this.stream.stderr.write(e)}};function K4n(e){let t=new vPo;return t.rows=1/0,t.columns=1/0,t.write=r=>(e(r.toString()),!0),t}Ep(K4n,"createWritable");var kcl=class{constructor(e,t){this.task=e,this.wrapper=t}static{Ep(this,"ListrPromptAdapter")}state;reportStarted(){if(this.state=this.task.state,this.task.prompt)throw new rJn("There is already an active prompt attached to this task which may not be cleaned up properly.");this.task.prompt=this,this.task.state$="PROMPT"}reportFailed(){this.task.state$="PROMPT_FAILED",this.restoreState()}reportCompleted(){this.task.state$="PROMPT_COMPLETED",this.restoreState()}restoreState(){this.task.prompt=void 0,this.state&&(this.task.state=this.state)}},SPo=class{static{Ep(this,"Spinner")}spinner=Gor()?["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]:["-","\\","|","/"];id;spinnerPosition=0;spin(){this.spinnerPosition=++this.spinnerPosition%this.spinner.length}fetch(){return this.spinner[this.spinnerPosition]}isRunning(){return!!this.id}start(e,t=100){this.id=setInterval(()=>{this.spin(),e&&e()},t)}stop(){clearInterval(this.id)}};var P4n={icon:{SKIPPED_WITH_COLLAPSE:Zy.arrowDown,SKIPPED_WITHOUT_COLLAPSE:Zy.warning,OUTPUT:Zy.pointerSmall,OUTPUT_WITH_BOTTOMBAR:Zy.pointerSmall,PENDING:Zy.pointer,COMPLETED:Zy.tick,COMPLETED_WITH_FAILED_SUBTASKS:Zy.warning,COMPLETED_WITH_SISTER_TASKS_FAILED:Zy.squareSmallFilled,RETRY:Zy.warning,ROLLING_BACK:Zy.warning,ROLLED_BACK:Zy.arrowLeft,FAILED:Zy.cross,FAILED_WITH_SUBTASKS:Zy.pointer,WAITING:Zy.squareSmallFilled,PAUSED:Zy.squareSmallFilled},color:{SKIPPED_WITH_COLLAPSE:S0.yellow,SKIPPED_WITHOUT_COLLAPSE:S0.yellow,PENDING:S0.yellow,COMPLETED:S0.green,COMPLETED_WITH_FAILED_SUBTASKS:S0.yellow,COMPLETED_WITH_SISTER_TASKS_FAILED:S0.red,RETRY:S0.yellowBright,ROLLING_BACK:S0.redBright,ROLLED_BACK:S0.redBright,FAILED:S0.red,FAILED_WITH_SUBTASKS:S0.red,WAITING:S0.dim,PAUSED:S0.yellowBright}};function j4n(e){let t=Math.floor(e/1e3),r=Math.floor(t/60),s;return t===0&&r===0&&(s=`0.${Math.floor(e/100)}s`),t>0&&(s=`${t%60}s`),r>0&&(s=`${r}m${s}`),s}Ep(j4n,"parseTimer");var Zor={condition:!0,field:j4n,format:Ep(()=>S0.dim,"format")};function wPo(){let e=new Date;return String(e.getHours()).padStart(2,"0")+":"+String(e.getMinutes()).padStart(2,"0")+":"+String(e.getSeconds()).padStart(2,"0")}Ep(wPo,"parseTimestamp");var TPo=class Ror{constructor(t,r,s){this.tasks=t,this.options=r,this.events=s,this.options={...Ror.rendererOptions,...this.options,icon:{...P4n.icon,...r?.icon??{}},color:{...P4n.color,...r?.color??{}}},this.spinner=this.options.spinner??new SPo,this.logger=this.options.logger??new xBe({useIcons:!0,toStderr:[]}),this.logger.options.icon=this.options.icon,this.logger.options.color=this.options.color}static{Ep(this,"DefaultRenderer")}static nonTTY=!1;static rendererOptions={indentation:2,clearOutput:!1,showSubtasks:!0,collapseSubtasks:!0,collapseSkips:!0,showSkipMessage:!0,suffixSkips:!1,collapseErrors:!0,showErrorMessage:!0,suffixRetries:!0,lazy:!1,removeEmptyLines:!0,formatOutput:"wrap",pausedTimer:{...Zor,format:Ep(()=>S0.yellowBright,"format")}};static rendererTaskOptions={outputBar:!0};prompt;activePrompt;spinner;logger;updater;truncate;wrap;buffer={output:new Map,bottom:new Map};cache={render:new Map,rendererOptions:new Map,rendererTaskOptions:new Map};async render(){let{createLogUpdate:t}=await Promise.resolve().then(()=>(T4n(),w4n)),{default:r}=await Promise.resolve().then(()=>(F4n(),G4n)),{default:s}=await Promise.resolve().then(()=>(hor(),b4n));this.updater=t(this.logger.process.stdout),this.truncate=r,this.wrap=s,this.logger.process.hijack(),this.options?.lazy||this.spinner.start(()=>{this.update()}),this.events.on("SHOUD_REFRESH_RENDER",()=>{this.update()})}update(){this.updater(this.create())}end(){this.spinner.stop(),this.updater.clear(),this.updater.done(),this.options.clearOutput||this.logger.process.toStdout(this.create({prompt:!1})),this.logger.process.release()}create(t){t={tasks:!0,bottomBar:!0,prompt:!0,...t};let r=[],s=this.renderer(this.tasks),a=this.renderBottomBar(),o=this.renderPrompt();return t.tasks&&s.length>0&&r.push(...s),t.bottomBar&&a.length>0&&(r.length>0&&r.push(""),r.push(...a)),t.prompt&&o.length>0&&(r.length>0&&r.push(""),r.push(...o)),r.join(Cpt)}style(t,r=!1){let s=this.cache.rendererOptions.get(t.id);if(t.isSkipped()){if(r||s.collapseSkips)return this.logger.icon("SKIPPED_WITH_COLLAPSE");if(s.collapseSkips===!1)return this.logger.icon("SKIPPED_WITHOUT_COLLAPSE")}if(r)return this.shouldOutputToBottomBar(t)?this.logger.icon("OUTPUT_WITH_BOTTOMBAR"):this.logger.icon("OUTPUT");if(t.hasSubtasks()){if(t.isStarted()||t.isPrompt()&&s.showSubtasks!==!1&&!t.subtasks.every(a=>!a.hasTitle()))return this.logger.icon("PENDING");if(t.isCompleted()&&t.subtasks.some(a=>a.hasFailed()))return this.logger.icon("COMPLETED_WITH_FAILED_SUBTASKS");if(t.hasFailed())return this.logger.icon("FAILED_WITH_SUBTASKS")}return t.isStarted()||t.isPrompt()?this.logger.icon("PENDING",!this.options?.lazy&&this.spinner.fetch()):t.isCompleted()?this.logger.icon("COMPLETED"):t.isRetrying()?this.logger.icon("RETRY",!this.options?.lazy&&this.spinner.fetch()):t.isRollingBack()?this.logger.icon("ROLLING_BACK",!this.options?.lazy&&this.spinner.fetch()):t.hasRolledBack()?this.logger.icon("ROLLED_BACK"):t.hasFailed()?this.logger.icon("FAILED"):t.isPaused()?this.logger.icon("PAUSED"):this.logger.icon("WAITING")}format(t,r,s){if(t.trim()==="")return[];r&&(t=r+" "+t);let a,o=(process.stdout.columns??80)-s*this.options.indentation-2;switch(this.options.formatOutput){case"truncate":a=t.split(Cpt).map((g,p)=>this.truncate(this.indent(g,p),o));break;case"wrap":a=this.wrap(t,o,{hard:!0}).split(Cpt).map((g,p)=>this.indent(g,p));break;default:throw new O4n("Format option for the renderer is wrong.")}return this.options.removeEmptyLines&&(a=a.filter(Boolean)),a.map(g=>Tor(g,s*this.options.indentation))}shouldOutputToOutputBar(t){let r=this.cache.rendererTaskOptions.get(t.id).outputBar;return typeof r=="number"&&r!==0||typeof r=="boolean"&&r!==!1}shouldOutputToBottomBar(t){let r=this.cache.rendererTaskOptions.get(t.id).bottomBar;return typeof r=="number"&&r!==0||typeof r=="boolean"&&r!==!1||!t.hasTitle()}renderer(t,r=0){return t.flatMap(s=>{if(!s.isEnabled())return[];if(this.cache.render.has(s.id))return this.cache.render.get(s.id);this.calculate(s),this.setupBuffer(s);let a=this.cache.rendererOptions.get(s.id),o=this.cache.rendererTaskOptions.get(s.id),g=[];if(s.isPrompt()){if(this.activePrompt&&this.activePrompt!==s.id)throw new O4n("Only one prompt can be active at the given time, please re-evaluate your task design.");this.activePrompt||(s.on("PROMPT",p=>{let f=DBe(p);f&&(this.prompt=f)}),s.on("STATE",p=>{(p==="PROMPT_COMPLETED"||s.hasFinalized()||s.hasReset())&&(this.prompt=null,this.activePrompt=null,s.off("PROMPT"))}),this.activePrompt=s.id)}if(s.hasTitle()&&(t.some(p=>p.hasFailed())&&!s.hasFailed()&&s.options.exitOnError!==!1&&!(s.isCompleted()||s.isSkipped())?g.push(...this.format(s.title,this.logger.icon("COMPLETED_WITH_SISTER_TASKS_FAILED"),r)):s.hasFailed()&&a.collapseErrors?g.push(...this.format(!s.hasSubtasks()&&s.message.error&&a.showErrorMessage?s.message.error:s.title,this.style(s),r)):s.isSkipped()&&a.collapseSkips?g.push(...this.format(this.logger.suffix(s.message.skip&&a.showSkipMessage?s.message.skip:s.title,{field:"SKIPPED",condition:a.suffixSkips,format:Ep(()=>S0.dim,"format")}),this.style(s),r)):s.isRetrying()?g.push(...this.format(this.logger.suffix(s.title,{field:`RETRY:${s.message.retry.count}`,format:Ep(()=>S0.yellow,"format"),condition:a.suffixRetries}),this.style(s),r)):s.isCompleted()&&s.hasTitle()&&upe(o.timer?.condition,s.message.duration)?g.push(...this.format(this.logger.suffix(s?.title,{...o.timer,args:[s.message.duration]}),this.style(s),r)):s.isPaused()?g.push(...this.format(this.logger.suffix(s.title,{...a.pausedTimer,args:[s.message.paused-Date.now()]}),this.style(s),r)):g.push(...this.format(s.title,this.style(s),r))),(!s.hasSubtasks()||!a.showSubtasks)&&(s.hasFailed()&&a.collapseErrors===!1&&(a.showErrorMessage||!a.showSubtasks)?g.push(...this.dump(s,r,"FAILED")):s.isSkipped()&&a.collapseSkips===!1&&(a.showSkipMessage||!a.showSubtasks)&&g.push(...this.dump(s,r,"SKIPPED"))),(s.isPending()||o.persistentOutput)&&g.push(...this.renderOutputBar(s,r)),a.showSubtasks!==!1&&s.hasSubtasks()&&(s.isPending()||s.hasFinalized()&&!s.hasTitle()||s.isCompleted()&&a.collapseSubtasks===!1&&!s.subtasks.some(p=>this.cache.rendererOptions.get(p.id)?.collapseSubtasks===!0)||s.subtasks.some(p=>this.cache.rendererOptions.get(p.id)?.collapseSubtasks===!1)||s.subtasks.some(p=>p.hasFailed())||s.subtasks.some(p=>p.hasRolledBack()))){let p=s.hasTitle()?r+1:r,f=this.renderer(s.subtasks,p);g.push(...f)}return s.hasFinalized()&&(o.persistentOutput||(this.buffer.bottom.delete(s.id),this.buffer.output.delete(s.id))),s.isClosed()&&(this.cache.render.set(s.id,g),this.reset(s)),g})}renderOutputBar(t,r){let s=this.buffer.output.get(t.id);return s?s.all.flatMap(a=>this.dump(t,r,"OUTPUT",a.entry)):[]}renderBottomBar(){return this.buffer.bottom.size===0?[]:Array.from(this.buffer.bottom.values()).flatMap(t=>t.all).sort((t,r)=>t.time-r.time).map(t=>t.entry)}renderPrompt(){return this.prompt?[this.prompt]:[]}calculate(t){if(this.cache.rendererOptions.has(t.id)&&this.cache.rendererTaskOptions.has(t.id))return;let r={...this.options,...t.rendererOptions};this.cache.rendererOptions.set(t.id,r),this.cache.rendererTaskOptions.set(t.id,{...Ror.rendererTaskOptions,timer:r.timer,...t.rendererTaskOptions})}setupBuffer(t){if(this.buffer.bottom.has(t.id)||this.buffer.output.has(t.id))return;let r=this.cache.rendererTaskOptions.get(t.id);this.shouldOutputToBottomBar(t)&&!this.buffer.bottom.has(t.id)?(this.buffer.bottom.set(t.id,new Nor({limit:typeof r.bottomBar=="number"?r.bottomBar:1})),t.on("OUTPUT",s=>{let a=this.dump(t,-1,"OUTPUT",s);this.buffer.bottom.get(t.id).write(a.join(Cpt))}),t.on("STATE",s=>{switch(s){case"RETRY":this.buffer.bottom.delete(t.id);break}})):this.shouldOutputToOutputBar(t)&&!this.buffer.output.has(t.id)&&(this.buffer.output.set(t.id,new Nor({limit:typeof r.outputBar=="number"?r.outputBar:1})),t.on("OUTPUT",s=>{this.buffer.output.get(t.id).write(s)}),t.on("STATE",s=>{switch(s){case"RETRY":this.buffer.output.delete(t.id);break}}))}reset(t){this.cache.rendererOptions.delete(t.id),this.cache.rendererTaskOptions.delete(t.id),this.buffer.output.delete(t.id)}dump(t,r,s="OUTPUT",a){if(!a)switch(s){case"OUTPUT":a=t.output;break;case"SKIPPED":a=t.message.skip;break;case"FAILED":a=t.message.error;break}return t.hasTitle()&&s==="FAILED"&&a===t.title||typeof a!="string"?[]:(s==="OUTPUT"&&(a=DBe(a)),this.format(a,this.style(t,!0),r+1))}indent(t,r){return r>0?Tor(t.trim(),this.options.indentation):t.trim()}},NPo=class{constructor(e,t){this.tasks=e,this.options=t}static{Ep(this,"SilentRenderer")}static nonTTY=!0;static rendererOptions;static rendererTaskOptions;render(){}end(){}},RPo=class Dor{constructor(t,r){this.tasks=t,this.options=r,this.options={...Dor.rendererOptions,...r,icon:{...mpt.icon,...r?.icon??{}},color:{...mpt.color,...r?.color??{}}},this.logger=this.options.logger??new xBe({useIcons:!0,toStderr:U4n}),this.logger.options.icon=this.options.icon,this.logger.options.color=this.options.color,this.options.timestamp&&this.logger.options.fields.prefix.unshift(this.options.timestamp)}static{Ep(this,"SimpleRenderer")}static nonTTY=!0;static rendererOptions={pausedTimer:{...Zor,field:Ep(t=>`PAUSED:${t}`,"field"),format:Ep(()=>S0.yellowBright,"format")}};static rendererTaskOptions={};logger;cache={rendererOptions:new Map,rendererTaskOptions:new Map};end(){}render(){this.renderer(this.tasks)}renderer(t){t.forEach(r=>{this.calculate(r),r.once("CLOSED",()=>{this.reset(r)});let s=this.cache.rendererOptions.get(r.id),a=this.cache.rendererTaskOptions.get(r.id);r.on("SUBTASK",o=>{this.renderer(o)}),r.on("STATE",o=>{if(r.hasTitle())if(o==="STARTED")this.logger.log("STARTED",r.title);else if(o==="COMPLETED"){let g=a?.timer;this.logger.log("COMPLETED",r.title,g&&{suffix:{...g,condition:!!r.message?.duration&&g.condition,args:[r.message.duration]}})}else o==="PROMPT"?(this.logger.process.hijack(),r.on("PROMPT",g=>{this.logger.process.toStderr(g,!1)})):o==="PROMPT_COMPLETED"&&(r.off("PROMPT"),this.logger.process.release())}),r.on("OUTPUT",o=>{this.logger.log("OUTPUT",o)}),r.on("MESSAGE",o=>{if(o.error)this.logger.log("FAILED",r.title,{suffix:{field:`FAILED: ${o.error}`,format:Ep(()=>S0.red,"format")}});else if(o.skip)this.logger.log("SKIPPED",r.title,{suffix:{field:`SKIPPED: ${o.skip}`,format:Ep(()=>S0.yellow,"format")}});else if(o.rollback)this.logger.log("ROLLBACK",r.title,{suffix:{field:`ROLLBACK: ${o.rollback}`,format:Ep(()=>S0.red,"format")}});else if(o.retry)this.logger.log("RETRY",r.title,{suffix:{field:`RETRY:${o.retry.count}`,format:Ep(()=>S0.red,"format")}});else if(o.paused){let g=s?.pausedTimer;this.logger.log("PAUSED",r.title,g&&{suffix:{...g,condition:!!o?.paused&&g.condition,args:[o.paused-Date.now()]}})}})})}calculate(t){if(this.cache.rendererOptions.has(t.id)&&this.cache.rendererTaskOptions.has(t.id))return;let r={...this.options,...t.rendererOptions};this.cache.rendererOptions.set(t.id,r),this.cache.rendererTaskOptions.set(t.id,{...Dor.rendererTaskOptions,timer:r.timer,...t.rendererTaskOptions})}reset(t){this.cache.rendererOptions.delete(t.id),this.cache.rendererTaskOptions.delete(t.id)}},DPo=class{constructor(e){this.options=e}static{Ep(this,"TestRendererSerializer")}serialize(e,t,r){return JSON.stringify(this.generate(e,t,r))}generate(e,t,r){let s={event:e,data:t};if(typeof this.options?.task!="boolean"){let a=Object.fromEntries(this.options.task.map(o=>{let g=r[o];return typeof g=="function"?[o,g.call(r)]:[o,g]}));Object.keys(r).length>0&&(s.task=a)}return s}},xPo=class z4n{constructor(t,r){this.tasks=t,this.options=r,this.options={...z4n.rendererOptions,...this.options},this.logger=this.options.logger??new xBe({useIcons:!1}),this.serializer=new DPo(this.options)}static{Ep(this,"TestRenderer")}static nonTTY=!0;static rendererOptions={subtasks:!0,state:Object.values(Q4n),output:!0,prompt:!0,title:!0,messages:["skip","error","retry","rollback","paused"],messagesToStderr:["error","rollback","retry"],task:["hasRolledBack","isRollingBack","isCompleted","isSkipped","hasFinalized","hasSubtasks","title","hasReset","hasTitle","isPrompt","isPaused","isPending","isSkipped","isStarted","hasFailed","isEnabled","isRetrying","path"]};static rendererTaskOptions;logger;serializer;render(){this.renderer(this.tasks)}end(){}renderer(t){t.forEach(r=>{this.options.subtasks&&r.on("SUBTASK",s=>{this.renderer(s)}),this.options.state&&r.on("STATE",s=>{this.logger.toStdout(this.serializer.serialize("STATE",s,r))}),this.options.output&&r.on("OUTPUT",s=>{this.logger.toStdout(this.serializer.serialize("OUTPUT",s,r))}),this.options.prompt&&r.on("PROMPT",s=>{this.logger.toStdout(this.serializer.serialize("PROMPT",s,r))}),this.options.title&&r.on("TITLE",s=>{this.logger.toStdout(this.serializer.serialize("TITLE",s,r))}),r.on("MESSAGE",s=>{let a=Object.fromEntries(Object.entries(s).map(([o,g])=>{if(this.options.messages.includes(o))return[o,g]}).filter(Boolean));if(Object.keys(a).length>0){let o=this.serializer.serialize("MESSAGE",a,r);this.options.messagesToStderr.some(g=>Object.keys(a).includes(g))?this.logger.toStderr(o):this.logger.toStdout(o)}})})}},kPo=class xor{constructor(t,r){this.tasks=t,this.options=r,this.options={...xor.rendererOptions,...this.options,icon:{...mpt.icon,...r?.icon??{}},color:{...mpt.color,...r?.color??{}}},this.logger=this.options.logger??new xBe({useIcons:!1,toStderr:U4n}),this.logger.options.icon=this.options.icon,this.logger.options.color=this.options.color,this.options.timestamp&&this.logger.options.fields.prefix.unshift(this.options.timestamp)}static{Ep(this,"VerboseRenderer")}static nonTTY=!0;static rendererOptions={logTitleChange:!1,pausedTimer:{...Zor,format:Ep(()=>S0.yellowBright,"format")}};static rendererTaskOptions;logger;cache={rendererOptions:new Map,rendererTaskOptions:new Map};render(){this.renderer(this.tasks)}end(){}renderer(t){t.forEach(r=>{this.calculate(r),r.once("CLOSED",()=>{this.reset(r)});let s=this.cache.rendererOptions.get(r.id),a=this.cache.rendererTaskOptions.get(r.id);r.on("SUBTASK",o=>{this.renderer(o)}),r.on("STATE",o=>{if(r.hasTitle()){if(o==="STARTED")this.logger.log("STARTED",r.title);else if(o==="COMPLETED"){let g=a.timer;this.logger.log("COMPLETED",r.title,g&&{suffix:{...g,condition:!!r.message?.duration&&g.condition,args:[r.message.duration]}})}}}),r.on("OUTPUT",o=>{this.logger.log("OUTPUT",o)}),r.on("PROMPT",o=>{let g=DBe(o);g&&this.logger.log("PROMPT",g)}),this.options?.logTitleChange!==!1&&r.on("TITLE",o=>{this.logger.log("TITLE",o)}),r.on("MESSAGE",o=>{if(o?.error)this.logger.log("FAILED",o.error);else if(o?.skip)this.logger.log("SKIPPED",o.skip);else if(o?.rollback)this.logger.log("ROLLBACK",o.rollback);else if(o?.retry)this.logger.log("RETRY",r.title,{suffix:o.retry.count.toString()});else if(o?.paused){let g=s?.pausedTimer;this.logger.log("PAUSED",r.title,g&&{suffix:{...g,condition:!!o?.paused&&g.condition,args:[o.paused-Date.now()]}})}})})}calculate(t){if(this.cache.rendererOptions.has(t.id)&&this.cache.rendererTaskOptions.has(t.id))return;let r={...this.options,...t.rendererOptions};this.cache.rendererOptions.set(t.id,r),this.cache.rendererTaskOptions.set(t.id,{...xor.rendererTaskOptions,timer:r.timer,...t.rendererTaskOptions})}reset(t){this.cache.rendererOptions.delete(t.id),this.cache.rendererTaskOptions.delete(t.id)}},wor={default:TPo,simple:RPo,verbose:kPo,test:xPo,silent:NPo};function q4n(e){return process.stdout.isTTY===!0||e.nonTTY===!0}Ep(q4n,"isRendererSupported");function UOe(e){return typeof e=="string"?wor[e]??wor.default:typeof e=="function"?e:wor.default}Ep(UOe,"getRendererClass");function $4n(e){if(upe(e?.silentRendererCondition))return{renderer:UOe("silent"),selection:"SILENT"};let t={renderer:UOe(e.renderer),options:e.rendererOptions,selection:"PRIMARY"};return!q4n(t.renderer)||upe(e?.fallbackRendererCondition)?{renderer:UOe(e.fallbackRenderer),options:e.fallbackRendererOptions,selection:"SECONDARY"}:t}Ep($4n,"getRenderer");function upe(e,...t){return typeof e=="function"?e(...t):e}Ep(upe,"assertFunctionOrSelf");var GPo=(0,eJn.default)({circles:!0});function kor(e){return GPo(e)}Ep(kor,"cloneObject");var FPo=class{static{Ep(this,"Concurrency")}concurrency;count;queue;constructor(e){this.concurrency=e.concurrency,this.count=0,this.queue=new Set}add(e){return this.count{let r=Ep(()=>t(this.run(e)),"callback");this.queue.add(r)})}flush(){for(let e of this.queue){if(this.count>=this.concurrency)break;this.queue.delete(e),e()}}run(e){this.count++;let t=e(),r=Ep(()=>{this.count--,this.flush()},"cleanup");return t.then(r,()=>{this.queue.clear()}),t}};function tJn(e){return new Promise(t=>{setTimeout(t,e)})}Ep(tJn,"delay");var ZPo=class extends Error{constructor(e,t,r){super(e.message),this.error=e,this.type=t,this.task=r,this.name="ListrError",this.path=r.path,r?.options.collectErrors==="full"&&(this.task=kor(r),this.ctx=kor(r.listr.ctx)),this.stack=e?.stack}static{Ep(this,"ListrError")}path;ctx},O4n=class extends Error{static{Ep(this,"ListrRendererError")}},rJn=class extends Error{static{Ep(this,"PromptError")}},LPo=class{constructor(e){this.task=e}static{Ep(this,"TaskWrapper")}get title(){return this.task.title}set title(e){e=Array.isArray(e)?e:[e],this.task.title$=RBe(e.shift(),...e)}get output(){return this.task.output}set output(e){e=Array.isArray(e)?e:[e],this.task.output$=RBe(e.shift(),...e)}set promptOutput(e){this.task.promptOutput$=e}newListr(e,t){let r;return typeof e=="function"?r=e(this):r=e,new hpt(r,t,this.task)}report(e,t){this.task.options.collectErrors!==!1&&this.task.listr.errors.push(new ZPo(e,t,this.task)),this.task.message$={error:e.message??this.task?.title}}skip(e,...t){this.task.state$="SKIPPED",e&&(this.task.message$={skip:e?RBe(e,...t):this.task?.title})}isRetrying(){return this.task.isRetrying()?this.task.retry:{count:0}}prompt(e){return this.task.prompt?this.task.prompt:new e(this.task,this)}stdout(e){return K4n(t=>{switch(e){case"PROMPT":this.promptOutput=t;break;default:this.output=t}})}run(e){return this.task.run(e,this)}},WPo=class extends Y4n{static{Ep(this,"ListrTaskEventManager")}},PPo=class extends WPo{constructor(e,t,r,s,a){if(super(),this.listr=e,this.task=t,this.options=r,this.rendererOptions=s,this.rendererTaskOptions=a,t.title){let o=Array.isArray(t?.title)?t.title:[t.title];this.title=RBe(o.shift(),...o),this.initialTitle=this.title}this.taskFn=t.task,this.parent=e.parentTask}static{Ep(this,"Task")}id=VPo();state="WAITING";subtasks;title;initialTitle;output;retry;message={};prompt;parent;enabled;taskFn;closed;set state$(e){if(this.state=e,this.emit("STATE",e),this.hasSubtasks()&&this.hasFailed())for(let t of this.subtasks)t.state==="STARTED"&&(t.state$="FAILED");this.listr.events.emit("SHOUD_REFRESH_RENDER")}set output$(e){this.output=e,this.emit("OUTPUT",e),this.listr.events.emit("SHOUD_REFRESH_RENDER")}set promptOutput$(e){this.emit("PROMPT",e),DBe(e)&&this.listr.events.emit("SHOUD_REFRESH_RENDER")}set message$(e){this.message={...this.message,...e},this.emit("MESSAGE",e),this.listr.events.emit("SHOUD_REFRESH_RENDER")}set title$(e){this.title=e,this.emit("TITLE",e),this.listr.events.emit("SHOUD_REFRESH_RENDER")}get path(){return[...this.listr.path,this.initialTitle]}async check(e){return this.state==="WAITING"&&(this.enabled=await upe(this.task?.enabled??!0,e),this.emit("ENABLED",this.enabled),this.listr.events.emit("SHOUD_REFRESH_RENDER")),this.enabled}hasSubtasks(){return this.subtasks?.length>0}hasFinalized(){return this.isCompleted()||this.hasFailed()||this.isSkipped()||this.hasRolledBack()}isPending(){return this.isStarted()||this.isPrompt()||this.hasReset()}isStarted(){return this.state==="STARTED"}isSkipped(){return this.state==="SKIPPED"}isCompleted(){return this.state==="COMPLETED"}hasFailed(){return this.state==="FAILED"}isRollingBack(){return this.state==="ROLLING_BACK"}hasRolledBack(){return this.state==="ROLLED_BACK"}isRetrying(){return this.state==="RETRY"}hasReset(){return this.state==="RETRY"||this.state==="ROLLING_BACK"}isEnabled(){return this.enabled}hasTitle(){return typeof this?.title=="string"}isPrompt(){return this.state==="PROMPT"||this.state==="PROMPT_COMPLETED"}isPaused(){return this.state==="PAUSED"}isClosed(){return this.closed}async pause(e){let t=this.state;this.state$="PAUSED",this.message$={paused:Date.now()+e},await tJn(e),this.state$=t,this.message$={paused:null}}async run(e,t){let r=Ep(o=>(o instanceof hpt?(o.options={...this.options,...o.options},o.rendererClass=UOe("silent"),this.subtasks=o.tasks,o.errors=this.listr.errors,this.emit("SUBTASK",this.subtasks),o=o.run(e)):o instanceof Promise?o=o.then(r):X4n(o)?o=new Promise((g,p)=>{o.on("data",f=>{this.output$=f.toString()}),o.on("error",f=>p(f)),o.on("end",()=>g(null))}):H4n(o)&&(o=new Promise((g,p)=>{o.subscribe({next:Ep(f=>{this.output$=f},"next"),error:p,complete:g})})),o),"handleResult"),s=Date.now();this.state$="STARTED";let a=await upe(this.task?.skip??!1,e);if(a){typeof a=="string"?this.message$={skip:a}:this.hasTitle()?this.message$={skip:this.title}:this.message$={skip:"Skipped task without a title."},this.state$="SKIPPED";return}try{let o=typeof this.task?.retry=="number"&&this.task.retry>0?this.task.retry+1:typeof this.task?.retry=="object"&&this.task.retry.tries>0?this.task.retry.tries+1:1,g=typeof this.task.retry=="object"&&this.task.retry.delay;for(let p=1;p<=o;p++)try{await r(this.taskFn(e,t));break}catch(f){if(p!==o)this.retry={count:p,error:f},this.message$={retry:this.retry},this.title$=this.initialTitle,this.output=void 0,t.report(f,"WILL_RETRY"),this.state$="RETRY",g&&await this.pause(g);else throw f}(this.isStarted()||this.isRetrying())&&(this.message$={duration:Date.now()-s},this.state$="COMPLETED")}catch(o){if(this.prompt instanceof rJn&&(o=this.prompt),this.task?.rollback){t.report(o,"WILL_ROLLBACK");try{this.state$="ROLLING_BACK",await this.task.rollback(e,t),this.message$={rollback:this.title},this.state$="ROLLED_BACK"}catch(g){throw this.state$="FAILED",t.report(g,"HAS_FAILED_TO_ROLLBACK"),this.close(),g}if(this.listr.options?.exitAfterRollback!==!1)throw this.close(),o}else{if(this.state$="FAILED",this.listr.options.exitOnError!==!1&&await upe(this.task?.exitOnError,e)!==!1)throw t.report(o,"HAS_FAILED"),this.close(),o;this.hasSubtasks()||t.report(o,"HAS_FAILED_WITHOUT_ERROR")}}finally{this.close()}}close(){this.emit("CLOSED"),this.listr.events.emit("SHOUD_REFRESH_RENDER"),this.complete()}},M4n=class extends Y4n{static{Ep(this,"ListrEventManager")}},hpt=class{constructor(e,t,r){this.task=e,this.options=t,this.parentTask=r,this.options={concurrent:!1,renderer:"default",fallbackRenderer:"simple",exitOnError:!0,exitAfterRollback:!0,collectErrors:!1,registerSignalListeners:!0,...this.parentTask?.options??{},...t},this.options.concurrent===!0?this.options.concurrent=1/0:typeof this.options.concurrent!="number"&&(this.options.concurrent=1),this.concurrency=new FPo({concurrency:this.options.concurrent}),r&&(this.path=[...r.listr.path,r.title],this.errors=r.listr.errors),this.parentTask?.listr.events instanceof M4n?this.events=this.parentTask.listr.events:this.events=new M4n;let s=$4n({renderer:this.options.renderer,rendererOptions:this.options.rendererOptions,fallbackRenderer:this.options.fallbackRenderer,fallbackRendererOptions:this.options.fallbackRendererOptions,fallbackRendererCondition:this.options?.fallbackRendererCondition,silentRendererCondition:this.options?.silentRendererCondition});this.rendererClass=s.renderer,this.rendererClassOptions=s.options,this.rendererSelection=s.selection,this.add(e??[]),this.options.registerSignalListeners&&(this.boundSignalHandler=this.signalHandler.bind(this),process.once("SIGINT",this.boundSignalHandler).setMaxListeners(0)),(this.options?.forceTTY||process.env.LISTR_FORCE_TTY)&&(process.stdout.isTTY=!0,process.stderr.isTTY=!0),this.options?.forceUnicode&&(process.env.LISTR_FORCE_UNICODE="1")}static{Ep(this,"Listr")}tasks=[];errors=[];ctx;events;path=[];rendererClass;rendererClassOptions;rendererSelection;boundSignalHandler;concurrency;renderer;isRoot(){return!this.parentTask}isSubtask(){return!!this.parentTask}add(e){this.tasks.push(...this.generate(e))}async run(e){this.renderer||(this.renderer=new this.rendererClass(this.tasks,this.rendererClassOptions,this.events)),await this.renderer.render(),this.ctx=this.options?.ctx??e??{},await Promise.all(this.tasks.map(t=>t.check(this.ctx)));try{await Promise.all(this.tasks.map(t=>this.concurrency.add(()=>this.runTask(t)))),this.renderer.end(),this.removeSignalHandler()}catch(t){if(this.options.exitOnError!==!1)throw this.renderer.end(t),this.removeSignalHandler(),t}return this.ctx}generate(e){return e=Array.isArray(e)?e:[e],e.map(t=>{let r;return this.rendererSelection==="PRIMARY"?r=t.rendererOptions:this.rendererSelection==="SECONDARY"&&(r=t.fallbackRendererOptions),new PPo(this,t,this.options,this.rendererClassOptions,r)})}async runTask(e){if(await e.check(this.ctx))return new LPo(e).run(this.ctx)}signalHandler(){this.tasks?.forEach(async e=>{e.isPending()&&(e.state$="FAILED")}),this.isRoot()&&(this.renderer.end(new Error("Interrupted.")),process.exit(127))}removeSignalHandler(){this.boundSignalHandler&&process.removeListener("SIGINT",this.boundSignalHandler)}};var KOe=Ap.blue(Zy.arrowRight),uM=Ap.redBright(Zy.cross),kBe=Ap.yellow(Zy.warning);var jOe=(e,t,r)=>`${Ap.redBright(`${uM} Validation Error:`)} +`)}};var G6n=vt(il(),1);Zl();import{execSync as NYo}from"node:child_process";var x6n=vt(kk(),1);var HXn=vt(kk(),1);var l3o=(0,HXn.default)("lint-staged:execGit"),u3o=["-c","submodule.recurse=false"],g3o=[...u3o],MF=async(e,t={})=>{l3o("Running git command",e);try{let{stdout:r}=await fz("git",g3o.concat(e),{...t,all:!0,cwd:t.cwd||process.cwd(),stdin:"ignore"});return r}catch({all:r}){throw new Error(r)}};import{inspect as rOo}from"node:util";var JXn=vt(XXn(),1);var UXn=JXn.default;import*as opt from"tty";var{env:Qie={},argv:jXn=[],platform:p3o=""}=typeof process>"u"?{}:process,f3o="NO_COLOR"in Qie||jXn.includes("--no-color"),I3o="FORCE_COLOR"in Qie||jXn.includes("--color"),C3o=p3o==="win32",zXn=Qie.TERM==="dumb",m3o=opt&&opt.isatty&&opt.isatty(1)&&Qie.TERM&&!zXn,h3o="CI"in Qie&&("GITHUB_ACTIONS"in Qie||"GITLAB_CI"in Qie||"CIRCLECI"in Qie),_3o=!f3o&&(I3o||C3o&&!zXn||m3o||h3o),qXn=(e,t,r,s,a=t.substring(0,e)+s,o=t.substring(e+r.length),g=o.indexOf(r))=>a+(g<0?o:qXn(g,o,r,s)),y3o=(e,t,r,s,a)=>e<0?r+t+s:r+qXn(e,t,s,a)+s,b3o=(e,t,r=e,s=e.length+1)=>a=>a||!(a===""||a===void 0)?y3o((""+a).indexOf(t,s),a,e,t,r):"",cC=(e,t,r)=>b3o(`\x1B[${e}m`,`\x1B[${t}m`,r),KXn={reset:cC(0,0),bold:cC(1,22,"\x1B[22m\x1B[1m"),dim:cC(2,22,"\x1B[22m\x1B[2m"),italic:cC(3,23),underline:cC(4,24),inverse:cC(7,27),hidden:cC(8,28),strikethrough:cC(9,29),black:cC(30,39),red:cC(31,39),green:cC(32,39),yellow:cC(33,39),blue:cC(34,39),magenta:cC(35,39),cyan:cC(36,39),white:cC(37,39),gray:cC(90,39),bgBlack:cC(40,49),bgRed:cC(41,49),bgGreen:cC(42,49),bgYellow:cC(43,49),bgBlue:cC(44,49),bgMagenta:cC(45,49),bgCyan:cC(46,49),bgWhite:cC(47,49),blackBright:cC(90,39),redBright:cC(91,39),greenBright:cC(92,39),yellowBright:cC(93,39),blueBright:cC(94,39),magentaBright:cC(95,39),cyanBright:cC(96,39),whiteBright:cC(97,39),bgBlackBright:cC(100,49),bgRedBright:cC(101,49),bgGreenBright:cC(102,49),bgYellowBright:cC(103,49),bgBlueBright:cC(104,49),bgMagentaBright:cC(105,49),bgCyanBright:cC(106,49),bgWhiteBright:cC(107,49)},por=({useColor:e=_3o}={})=>e?KXn:Object.keys(KXn).reduce((t,r)=>({...t,[r]:String}),{}),{reset:zol,bold:qol,dim:$ol,italic:eal,underline:tal,inverse:ral,hidden:nal,strikethrough:ial,black:sal,red:oal,green:aal,yellow:cal,blue:lal,magenta:ual,cyan:gal,white:Aal,gray:dal,bgBlack:pal,bgRed:fal,bgGreen:Ial,bgYellow:Cal,bgBlue:mal,bgMagenta:hal,bgCyan:_al,bgWhite:yal,blackBright:bal,redBright:Eal,greenBright:Bal,yellowBright:val,blueBright:Sal,magentaBright:wal,cyanBright:Tal,whiteBright:Nal,bgBlackBright:Ral,bgRedBright:Dal,bgGreenBright:xal,bgYellowBright:kal,bgBlueBright:Gal,bgMagentaBright:Fal,bgCyanBright:Zal,bgWhiteBright:Lal}=por();var cJn=vt(e4n(),1);import{format as VPo}from"util";import{EOL as X4n}from"os";import{StringDecoder as WPo}from"string_decoder";import{EOL as mpt}from"os";import{Writable as PPo}from"stream";import{EOL as hpt}from"os";import{randomUUID as $Po}from"crypto";var GPo=Object.defineProperty,Bp=(e,t)=>GPo(e,"name",{value:t,configurable:!0}),H4n="\x1B[",Y4n={CURSOR_HIDE:H4n+"?25l",CURSOR_SHOW:H4n+"?25h"};var z4n=(e=>(e.WAITING="WAITING",e.STARTED="STARTED",e.COMPLETED="COMPLETED",e.FAILED="FAILED",e.SKIPPED="SKIPPED",e.ROLLING_BACK="ROLLING_BACK",e.ROLLED_BACK="ROLLED_BACK",e.RETRY="RETRY",e.PAUSED="PAUSED",e.PROMPT="PROMPT",e.PROMPT_COMPLETED="PROMPT_COMPLETED",e.PROMPT_FAILED="PROMPT_FAILED",e))(z4n||{}),q4n=class{static{Bp(this,"EventManager")}emitter=new UXn;emit(e,t){this.emitter.emit(e,t)}on(e,t){this.emitter.addListener(e,t)}once(e,t){this.emitter.once(e,t)}off(e,t){this.emitter.off(e,t)}complete(){this.emitter.removeAllListeners()}},Jcl=class{static{Bp(this,"BaseEventMap")}};function $4n(e){return!!e&&typeof e=="object"&&typeof e.subscribe=="function"}Bp($4n,"isObservable");function eJn(e){return!!e&&typeof e=="object"&&e.readable===!0&&typeof e.read=="function"&&typeof e.on=="function"}Bp(eJn,"isReadable");function Por(){return!!process.env.LISTR_FORCE_UNICODE||process.platform!=="win32"||!!process.env.CI||!!process.env.WT_SESSION||process.env.TERM_PROGRAM==="vscode"||process.env.TERM==="xterm-256color"||process.env.TERM==="alacritty"}Bp(Por,"isUnicodeSupported");var FPo="(?:\\u001b|\\u009b)\\[[\\=><~/#&.:=?%@~_-]*[0-9]*[\\a-ln-tqyz=><~/#&.:=?%@~_-]+",ZPo=/\u0007/;function GBe(e){return String(e).replace(new RegExp(FPo,"gmi"),"").replace(new RegExp(ZPo,"gmi"),"").trim()}Bp(GBe,"cleanseAnsi");var w0=por();function Gor(e,t){return e.replace(/^(?!\s*$)/gm," ".repeat(t))}Bp(Gor,"indent");var tJn={warning:"\u26A0",cross:"\u2716",arrowDown:"\u2193",tick:"\u2714",arrowRight:"\u2192",pointer:"\u276F",checkboxOn:"\u2612",arrowLeft:"\u2190",squareSmallFilled:"\u25FC",pointerSmall:"\u203A"},LPo={...tJn,warning:"\u203C",cross:"\xD7",tick:"\u221A",pointer:">",checkboxOn:"[\xD7]",squareSmallFilled:"\u25A0"},Ly=Por()?tJn:LPo;function kBe(e,...t){return VPo(String(e),...t)}Bp(kBe,"splat");var _pt={icon:{STARTED:Ly.pointer,FAILED:Ly.cross,SKIPPED:Ly.arrowDown,COMPLETED:Ly.tick,OUTPUT:Ly.pointerSmall,TITLE:Ly.arrowRight,RETRY:Ly.warning,ROLLBACK:Ly.arrowLeft,PAUSED:Ly.squareSmallFilled},color:{STARTED:w0.yellow,FAILED:w0.red,SKIPPED:w0.yellow,COMPLETED:w0.green,RETRY:w0.yellowBright,ROLLBACK:w0.redBright,PAUSED:w0.yellowBright}},rJn=["RETRY","ROLLBACK","FAILED"],FBe=class{constructor(e){this.options=e,this.options={useIcons:!0,toStderr:[],...e??{}},this.options.fields??={},this.options.fields.prefix??=[],this.options.fields.suffix??=[],this.process=this.options.processOutput??new Oor}static{Bp(this,"ListrLogger")}process;log(e,t,r){let s=this.format(e,t,r);if(this.options.toStderr.includes(e)){this.process.toStderr(s);return}this.process.toStdout(s)}toStdout(e,t,r=!0){this.process.toStdout(this.format(null,e,t),r)}toStderr(e,t,r=!0){this.process.toStderr(this.format(null,e,t),r)}wrap(e,t){return e&&this.applyFormat(`[${e}]`,t)}splat(...e){let t=e.shift()??"";return e.length===0?t:kBe(t,e)}suffix(e,...t){return t.filter(Boolean).forEach(r=>{if(e+=this.spacing(e),typeof r=="string")e+=this.wrap(r);else if(typeof r=="object"){if(r.args??=[],typeof r.condition=="function"?!r.condition(...r.args):!(r.condition??!0))return e;e+=this.wrap(typeof r.field=="function"?r.field(...r.args):r.field,{format:r?.format(...r.args)})}}),e}prefix(e,...t){return t.filter(Boolean).forEach(r=>{if(e=this.spacing(e)+e,typeof r=="string")e=this.wrap(r)+e;else if(typeof r=="object"){if(r.args??=[],typeof r.condition=="function"?!r.condition(...r.args):!(r.condition??!0))return e;e=this.wrap(typeof r.field=="function"?r.field(...r.args):r.field,{format:r?.format()})+e}}),e}fields(e,t){return this.options?.fields?.prefix&&(e=this.prefix(e,...this.options.fields.prefix)),t?.prefix&&(e=this.prefix(e,...t.prefix)),t?.suffix&&(e=this.suffix(e,...t.suffix)),this.options?.fields?.suffix&&(e=this.suffix(e,...this.options.fields.suffix)),e}icon(e,t){if(!e)return null;t||=this.options.icon?.[e];let r=this.options.color?.[e];return t&&r&&(t=r(t)),t}format(e,t,r){return Array.isArray(t)||(t=[t]),t=this.splat(t.shift(),...t).toString().split(X4n).filter(s=>!s||s.trim()!=="").map(s=>this.style(e,this.fields(s,{prefix:Array.isArray(r?.prefix)?r.prefix:[r?.prefix],suffix:Array.isArray(r?.suffix)?r.suffix:[r?.suffix]}))).join(X4n),t}style(e,t){if(!e||!t)return t;let r=this.icon(e,!this.options.useIcons&&this.wrap(e));return r&&(t=r+" "+t),t}applyFormat(e,t){return t?.format?t.format(e):e}spacing(e){return typeof e>"u"||e.trim()===""?"":" "}},For=class{constructor(e){this.options=e}static{Bp(this,"ProcessOutputBuffer")}buffer=[];decoder=new WPo;get all(){return this.buffer}get last(){return this.buffer.at(-1)}get length(){return this.buffer.length}write(e,...t){let r=t[t.length-1];return this.buffer.push({time:Date.now(),stream:this.options?.stream,entry:this.decoder.write(typeof e=="string"?Buffer.from(e,typeof t[0]=="string"?t[0]:void 0):Buffer.from(e))}),this.options?.limit&&(this.buffer=this.buffer.slice(-this.options.limit)),typeof r=="function"&&r(),!0}reset(){this.buffer=[]}},J4n=class{constructor(e){this.stream=e,this.method=e.write,this.buffer=new For({stream:e})}static{Bp(this,"ProcessOutputStream")}method;buffer;get out(){return Object.assign({},this.stream,{write:this.write.bind(this)})}hijack(){this.stream.write=this.buffer.write.bind(this.buffer)}release(){this.stream.write=this.method;let e=[...this.buffer.all];return this.buffer.reset(),e}write(...e){return this.method.apply(this.stream,e)}},Oor=class{constructor(e,t,r){this.options=r,this.stream={stdout:new J4n(e??process.stdout),stderr:new J4n(t??process.stderr)},this.options={dump:["stdout","stderr"],leaveEmptyLine:!0,...r}}static{Bp(this,"ProcessOutput")}stream;active;get stdout(){return this.stream.stdout.out}get stderr(){return this.stream.stderr.out}hijack(){if(this.active)throw new Error("ProcessOutput has been already hijacked!");this.stream.stdout.write(Y4n.CURSOR_HIDE),Object.values(this.stream).forEach(e=>e.hijack()),this.active=!0}release(){let e=Object.entries(this.stream).map(([t,r])=>({name:t,buffer:r.release()})).filter(t=>this.options.dump.includes(t.name)).flatMap(t=>t.buffer).sort((t,r)=>t.time-r.time).map(t=>({...t,entry:GBe(t.entry)})).filter(t=>t.entry);e.length>0&&(this.options.leaveEmptyLine&&this.stdout.write(mpt),e.forEach(t=>{(t.stream??this.stdout).write(t.entry+mpt)})),this.stream.stdout.write(Y4n.CURSOR_SHOW),this.active=!1}toStdout(e,t=!0){return t&&(e=e+mpt),this.stream.stdout.write(e)}toStderr(e,t=!0){return t&&(e=e+mpt),this.stream.stderr.write(e)}};function nJn(e){let t=new PPo;return t.rows=1/0,t.columns=1/0,t.write=r=>(e(r.toString()),!0),t}Bp(nJn,"createWritable");var ell=class{constructor(e,t){this.task=e,this.wrapper=t}static{Bp(this,"ListrPromptAdapter")}state;reportStarted(){if(this.state=this.task.state,this.task.prompt)throw new uJn("There is already an active prompt attached to this task which may not be cleaned up properly.");this.task.prompt=this,this.task.state$="PROMPT"}reportFailed(){this.task.state$="PROMPT_FAILED",this.restoreState()}reportCompleted(){this.task.state$="PROMPT_COMPLETED",this.restoreState()}restoreState(){this.task.prompt=void 0,this.state&&(this.task.state=this.state)}},OPo=class{static{Bp(this,"Spinner")}spinner=Por()?["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]:["-","\\","|","/"];id;spinnerPosition=0;spin(){this.spinnerPosition=++this.spinnerPosition%this.spinner.length}fetch(){return this.spinner[this.spinnerPosition]}isRunning(){return!!this.id}start(e,t=100){this.id=setInterval(()=>{this.spin(),e&&e()},t)}stop(){clearInterval(this.id)}};var U4n={icon:{SKIPPED_WITH_COLLAPSE:Ly.arrowDown,SKIPPED_WITHOUT_COLLAPSE:Ly.warning,OUTPUT:Ly.pointerSmall,OUTPUT_WITH_BOTTOMBAR:Ly.pointerSmall,PENDING:Ly.pointer,COMPLETED:Ly.tick,COMPLETED_WITH_FAILED_SUBTASKS:Ly.warning,COMPLETED_WITH_SISTER_TASKS_FAILED:Ly.squareSmallFilled,RETRY:Ly.warning,ROLLING_BACK:Ly.warning,ROLLED_BACK:Ly.arrowLeft,FAILED:Ly.cross,FAILED_WITH_SUBTASKS:Ly.pointer,WAITING:Ly.squareSmallFilled,PAUSED:Ly.squareSmallFilled},color:{SKIPPED_WITH_COLLAPSE:w0.yellow,SKIPPED_WITHOUT_COLLAPSE:w0.yellow,PENDING:w0.yellow,COMPLETED:w0.green,COMPLETED_WITH_FAILED_SUBTASKS:w0.yellow,COMPLETED_WITH_SISTER_TASKS_FAILED:w0.red,RETRY:w0.yellowBright,ROLLING_BACK:w0.redBright,ROLLED_BACK:w0.redBright,FAILED:w0.red,FAILED_WITH_SUBTASKS:w0.red,WAITING:w0.dim,PAUSED:w0.yellowBright}};function iJn(e){let t=Math.floor(e/1e3),r=Math.floor(t/60),s;return t===0&&r===0&&(s=`0.${Math.floor(e/100)}s`),t>0&&(s=`${t%60}s`),r>0&&(s=`${r}m${s}`),s}Bp(iJn,"parseTimer");var Qor={condition:!0,field:iJn,format:Bp(()=>w0.dim,"format")};function QPo(){let e=new Date;return String(e.getHours()).padStart(2,"0")+":"+String(e.getMinutes()).padStart(2,"0")+":"+String(e.getSeconds()).padStart(2,"0")}Bp(QPo,"parseTimestamp");var MPo=class Zor{constructor(t,r,s){this.tasks=t,this.options=r,this.events=s,this.options={...Zor.rendererOptions,...this.options,icon:{...U4n.icon,...r?.icon??{}},color:{...U4n.color,...r?.color??{}}},this.spinner=this.options.spinner??new OPo,this.logger=this.options.logger??new FBe({useIcons:!0,toStderr:[]}),this.logger.options.icon=this.options.icon,this.logger.options.color=this.options.color}static{Bp(this,"DefaultRenderer")}static nonTTY=!1;static rendererOptions={indentation:2,clearOutput:!1,showSubtasks:!0,collapseSubtasks:!0,collapseSkips:!0,showSkipMessage:!0,suffixSkips:!1,collapseErrors:!0,showErrorMessage:!0,suffixRetries:!0,lazy:!1,removeEmptyLines:!0,formatOutput:"wrap",pausedTimer:{...Qor,format:Bp(()=>w0.yellowBright,"format")}};static rendererTaskOptions={outputBar:!0};prompt;activePrompt;spinner;logger;updater;truncate;wrap;buffer={output:new Map,bottom:new Map};cache={render:new Map,rendererOptions:new Map,rendererTaskOptions:new Map};async render(){let{createLogUpdate:t}=await Promise.resolve().then(()=>(Z4n(),F4n)),{default:r}=await Promise.resolve().then(()=>(M4n(),Q4n)),{default:s}=await Promise.resolve().then(()=>(vor(),R4n));this.updater=t(this.logger.process.stdout),this.truncate=r,this.wrap=s,this.logger.process.hijack(),this.options?.lazy||this.spinner.start(()=>{this.update()}),this.events.on("SHOUD_REFRESH_RENDER",()=>{this.update()})}update(){this.updater(this.create())}end(){this.spinner.stop(),this.updater.clear(),this.updater.done(),this.options.clearOutput||this.logger.process.toStdout(this.create({prompt:!1})),this.logger.process.release()}create(t){t={tasks:!0,bottomBar:!0,prompt:!0,...t};let r=[],s=this.renderer(this.tasks),a=this.renderBottomBar(),o=this.renderPrompt();return t.tasks&&s.length>0&&r.push(...s),t.bottomBar&&a.length>0&&(r.length>0&&r.push(""),r.push(...a)),t.prompt&&o.length>0&&(r.length>0&&r.push(""),r.push(...o)),r.join(hpt)}style(t,r=!1){let s=this.cache.rendererOptions.get(t.id);if(t.isSkipped()){if(r||s.collapseSkips)return this.logger.icon("SKIPPED_WITH_COLLAPSE");if(s.collapseSkips===!1)return this.logger.icon("SKIPPED_WITHOUT_COLLAPSE")}if(r)return this.shouldOutputToBottomBar(t)?this.logger.icon("OUTPUT_WITH_BOTTOMBAR"):this.logger.icon("OUTPUT");if(t.hasSubtasks()){if(t.isStarted()||t.isPrompt()&&s.showSubtasks!==!1&&!t.subtasks.every(a=>!a.hasTitle()))return this.logger.icon("PENDING");if(t.isCompleted()&&t.subtasks.some(a=>a.hasFailed()))return this.logger.icon("COMPLETED_WITH_FAILED_SUBTASKS");if(t.hasFailed())return this.logger.icon("FAILED_WITH_SUBTASKS")}return t.isStarted()||t.isPrompt()?this.logger.icon("PENDING",!this.options?.lazy&&this.spinner.fetch()):t.isCompleted()?this.logger.icon("COMPLETED"):t.isRetrying()?this.logger.icon("RETRY",!this.options?.lazy&&this.spinner.fetch()):t.isRollingBack()?this.logger.icon("ROLLING_BACK",!this.options?.lazy&&this.spinner.fetch()):t.hasRolledBack()?this.logger.icon("ROLLED_BACK"):t.hasFailed()?this.logger.icon("FAILED"):t.isPaused()?this.logger.icon("PAUSED"):this.logger.icon("WAITING")}format(t,r,s){if(t.trim()==="")return[];r&&(t=r+" "+t);let a,o=(process.stdout.columns??80)-s*this.options.indentation-2;switch(this.options.formatOutput){case"truncate":a=t.split(hpt).map((g,p)=>this.truncate(this.indent(g,p),o));break;case"wrap":a=this.wrap(t,o,{hard:!0}).split(hpt).map((g,p)=>this.indent(g,p));break;default:throw new K4n("Format option for the renderer is wrong.")}return this.options.removeEmptyLines&&(a=a.filter(Boolean)),a.map(g=>Gor(g,s*this.options.indentation))}shouldOutputToOutputBar(t){let r=this.cache.rendererTaskOptions.get(t.id).outputBar;return typeof r=="number"&&r!==0||typeof r=="boolean"&&r!==!1}shouldOutputToBottomBar(t){let r=this.cache.rendererTaskOptions.get(t.id).bottomBar;return typeof r=="number"&&r!==0||typeof r=="boolean"&&r!==!1||!t.hasTitle()}renderer(t,r=0){return t.flatMap(s=>{if(!s.isEnabled())return[];if(this.cache.render.has(s.id))return this.cache.render.get(s.id);this.calculate(s),this.setupBuffer(s);let a=this.cache.rendererOptions.get(s.id),o=this.cache.rendererTaskOptions.get(s.id),g=[];if(s.isPrompt()){if(this.activePrompt&&this.activePrompt!==s.id)throw new K4n("Only one prompt can be active at the given time, please re-evaluate your task design.");this.activePrompt||(s.on("PROMPT",p=>{let f=GBe(p);f&&(this.prompt=f)}),s.on("STATE",p=>{(p==="PROMPT_COMPLETED"||s.hasFinalized()||s.hasReset())&&(this.prompt=null,this.activePrompt=null,s.off("PROMPT"))}),this.activePrompt=s.id)}if(s.hasTitle()&&(t.some(p=>p.hasFailed())&&!s.hasFailed()&&s.options.exitOnError!==!1&&!(s.isCompleted()||s.isSkipped())?g.push(...this.format(s.title,this.logger.icon("COMPLETED_WITH_SISTER_TASKS_FAILED"),r)):s.hasFailed()&&a.collapseErrors?g.push(...this.format(!s.hasSubtasks()&&s.message.error&&a.showErrorMessage?s.message.error:s.title,this.style(s),r)):s.isSkipped()&&a.collapseSkips?g.push(...this.format(this.logger.suffix(s.message.skip&&a.showSkipMessage?s.message.skip:s.title,{field:"SKIPPED",condition:a.suffixSkips,format:Bp(()=>w0.dim,"format")}),this.style(s),r)):s.isRetrying()?g.push(...this.format(this.logger.suffix(s.title,{field:`RETRY:${s.message.retry.count}`,format:Bp(()=>w0.yellow,"format"),condition:a.suffixRetries}),this.style(s),r)):s.isCompleted()&&s.hasTitle()&&mpe(o.timer?.condition,s.message.duration)?g.push(...this.format(this.logger.suffix(s?.title,{...o.timer,args:[s.message.duration]}),this.style(s),r)):s.isPaused()?g.push(...this.format(this.logger.suffix(s.title,{...a.pausedTimer,args:[s.message.paused-Date.now()]}),this.style(s),r)):g.push(...this.format(s.title,this.style(s),r))),(!s.hasSubtasks()||!a.showSubtasks)&&(s.hasFailed()&&a.collapseErrors===!1&&(a.showErrorMessage||!a.showSubtasks)?g.push(...this.dump(s,r,"FAILED")):s.isSkipped()&&a.collapseSkips===!1&&(a.showSkipMessage||!a.showSubtasks)&&g.push(...this.dump(s,r,"SKIPPED"))),(s.isPending()||o.persistentOutput)&&g.push(...this.renderOutputBar(s,r)),a.showSubtasks!==!1&&s.hasSubtasks()&&(s.isPending()||s.hasFinalized()&&!s.hasTitle()||s.isCompleted()&&a.collapseSubtasks===!1&&!s.subtasks.some(p=>this.cache.rendererOptions.get(p.id)?.collapseSubtasks===!0)||s.subtasks.some(p=>this.cache.rendererOptions.get(p.id)?.collapseSubtasks===!1)||s.subtasks.some(p=>p.hasFailed())||s.subtasks.some(p=>p.hasRolledBack()))){let p=s.hasTitle()?r+1:r,f=this.renderer(s.subtasks,p);g.push(...f)}return s.hasFinalized()&&(o.persistentOutput||(this.buffer.bottom.delete(s.id),this.buffer.output.delete(s.id))),s.isClosed()&&(this.cache.render.set(s.id,g),this.reset(s)),g})}renderOutputBar(t,r){let s=this.buffer.output.get(t.id);return s?s.all.flatMap(a=>this.dump(t,r,"OUTPUT",a.entry)):[]}renderBottomBar(){return this.buffer.bottom.size===0?[]:Array.from(this.buffer.bottom.values()).flatMap(t=>t.all).sort((t,r)=>t.time-r.time).map(t=>t.entry)}renderPrompt(){return this.prompt?[this.prompt]:[]}calculate(t){if(this.cache.rendererOptions.has(t.id)&&this.cache.rendererTaskOptions.has(t.id))return;let r={...this.options,...t.rendererOptions};this.cache.rendererOptions.set(t.id,r),this.cache.rendererTaskOptions.set(t.id,{...Zor.rendererTaskOptions,timer:r.timer,...t.rendererTaskOptions})}setupBuffer(t){if(this.buffer.bottom.has(t.id)||this.buffer.output.has(t.id))return;let r=this.cache.rendererTaskOptions.get(t.id);this.shouldOutputToBottomBar(t)&&!this.buffer.bottom.has(t.id)?(this.buffer.bottom.set(t.id,new For({limit:typeof r.bottomBar=="number"?r.bottomBar:1})),t.on("OUTPUT",s=>{let a=this.dump(t,-1,"OUTPUT",s);this.buffer.bottom.get(t.id).write(a.join(hpt))}),t.on("STATE",s=>{switch(s){case"RETRY":this.buffer.bottom.delete(t.id);break}})):this.shouldOutputToOutputBar(t)&&!this.buffer.output.has(t.id)&&(this.buffer.output.set(t.id,new For({limit:typeof r.outputBar=="number"?r.outputBar:1})),t.on("OUTPUT",s=>{this.buffer.output.get(t.id).write(s)}),t.on("STATE",s=>{switch(s){case"RETRY":this.buffer.output.delete(t.id);break}}))}reset(t){this.cache.rendererOptions.delete(t.id),this.cache.rendererTaskOptions.delete(t.id),this.buffer.output.delete(t.id)}dump(t,r,s="OUTPUT",a){if(!a)switch(s){case"OUTPUT":a=t.output;break;case"SKIPPED":a=t.message.skip;break;case"FAILED":a=t.message.error;break}return t.hasTitle()&&s==="FAILED"&&a===t.title||typeof a!="string"?[]:(s==="OUTPUT"&&(a=GBe(a)),this.format(a,this.style(t,!0),r+1))}indent(t,r){return r>0?Gor(t.trim(),this.options.indentation):t.trim()}},HPo=class{constructor(e,t){this.tasks=e,this.options=t}static{Bp(this,"SilentRenderer")}static nonTTY=!0;static rendererOptions;static rendererTaskOptions;render(){}end(){}},YPo=class Lor{constructor(t,r){this.tasks=t,this.options=r,this.options={...Lor.rendererOptions,...r,icon:{..._pt.icon,...r?.icon??{}},color:{..._pt.color,...r?.color??{}}},this.logger=this.options.logger??new FBe({useIcons:!0,toStderr:rJn}),this.logger.options.icon=this.options.icon,this.logger.options.color=this.options.color,this.options.timestamp&&this.logger.options.fields.prefix.unshift(this.options.timestamp)}static{Bp(this,"SimpleRenderer")}static nonTTY=!0;static rendererOptions={pausedTimer:{...Qor,field:Bp(t=>`PAUSED:${t}`,"field"),format:Bp(()=>w0.yellowBright,"format")}};static rendererTaskOptions={};logger;cache={rendererOptions:new Map,rendererTaskOptions:new Map};end(){}render(){this.renderer(this.tasks)}renderer(t){t.forEach(r=>{this.calculate(r),r.once("CLOSED",()=>{this.reset(r)});let s=this.cache.rendererOptions.get(r.id),a=this.cache.rendererTaskOptions.get(r.id);r.on("SUBTASK",o=>{this.renderer(o)}),r.on("STATE",o=>{if(r.hasTitle())if(o==="STARTED")this.logger.log("STARTED",r.title);else if(o==="COMPLETED"){let g=a?.timer;this.logger.log("COMPLETED",r.title,g&&{suffix:{...g,condition:!!r.message?.duration&&g.condition,args:[r.message.duration]}})}else o==="PROMPT"?(this.logger.process.hijack(),r.on("PROMPT",g=>{this.logger.process.toStderr(g,!1)})):o==="PROMPT_COMPLETED"&&(r.off("PROMPT"),this.logger.process.release())}),r.on("OUTPUT",o=>{this.logger.log("OUTPUT",o)}),r.on("MESSAGE",o=>{if(o.error)this.logger.log("FAILED",r.title,{suffix:{field:`FAILED: ${o.error}`,format:Bp(()=>w0.red,"format")}});else if(o.skip)this.logger.log("SKIPPED",r.title,{suffix:{field:`SKIPPED: ${o.skip}`,format:Bp(()=>w0.yellow,"format")}});else if(o.rollback)this.logger.log("ROLLBACK",r.title,{suffix:{field:`ROLLBACK: ${o.rollback}`,format:Bp(()=>w0.red,"format")}});else if(o.retry)this.logger.log("RETRY",r.title,{suffix:{field:`RETRY:${o.retry.count}`,format:Bp(()=>w0.red,"format")}});else if(o.paused){let g=s?.pausedTimer;this.logger.log("PAUSED",r.title,g&&{suffix:{...g,condition:!!o?.paused&&g.condition,args:[o.paused-Date.now()]}})}})})}calculate(t){if(this.cache.rendererOptions.has(t.id)&&this.cache.rendererTaskOptions.has(t.id))return;let r={...this.options,...t.rendererOptions};this.cache.rendererOptions.set(t.id,r),this.cache.rendererTaskOptions.set(t.id,{...Lor.rendererTaskOptions,timer:r.timer,...t.rendererTaskOptions})}reset(t){this.cache.rendererOptions.delete(t.id),this.cache.rendererTaskOptions.delete(t.id)}},XPo=class{constructor(e){this.options=e}static{Bp(this,"TestRendererSerializer")}serialize(e,t,r){return JSON.stringify(this.generate(e,t,r))}generate(e,t,r){let s={event:e,data:t};if(typeof this.options?.task!="boolean"){let a=Object.fromEntries(this.options.task.map(o=>{let g=r[o];return typeof g=="function"?[o,g.call(r)]:[o,g]}));Object.keys(r).length>0&&(s.task=a)}return s}},JPo=class sJn{constructor(t,r){this.tasks=t,this.options=r,this.options={...sJn.rendererOptions,...this.options},this.logger=this.options.logger??new FBe({useIcons:!1}),this.serializer=new XPo(this.options)}static{Bp(this,"TestRenderer")}static nonTTY=!0;static rendererOptions={subtasks:!0,state:Object.values(z4n),output:!0,prompt:!0,title:!0,messages:["skip","error","retry","rollback","paused"],messagesToStderr:["error","rollback","retry"],task:["hasRolledBack","isRollingBack","isCompleted","isSkipped","hasFinalized","hasSubtasks","title","hasReset","hasTitle","isPrompt","isPaused","isPending","isSkipped","isStarted","hasFailed","isEnabled","isRetrying","path"]};static rendererTaskOptions;logger;serializer;render(){this.renderer(this.tasks)}end(){}renderer(t){t.forEach(r=>{this.options.subtasks&&r.on("SUBTASK",s=>{this.renderer(s)}),this.options.state&&r.on("STATE",s=>{this.logger.toStdout(this.serializer.serialize("STATE",s,r))}),this.options.output&&r.on("OUTPUT",s=>{this.logger.toStdout(this.serializer.serialize("OUTPUT",s,r))}),this.options.prompt&&r.on("PROMPT",s=>{this.logger.toStdout(this.serializer.serialize("PROMPT",s,r))}),this.options.title&&r.on("TITLE",s=>{this.logger.toStdout(this.serializer.serialize("TITLE",s,r))}),r.on("MESSAGE",s=>{let a=Object.fromEntries(Object.entries(s).map(([o,g])=>{if(this.options.messages.includes(o))return[o,g]}).filter(Boolean));if(Object.keys(a).length>0){let o=this.serializer.serialize("MESSAGE",a,r);this.options.messagesToStderr.some(g=>Object.keys(a).includes(g))?this.logger.toStderr(o):this.logger.toStdout(o)}})})}},UPo=class Vor{constructor(t,r){this.tasks=t,this.options=r,this.options={...Vor.rendererOptions,...this.options,icon:{..._pt.icon,...r?.icon??{}},color:{..._pt.color,...r?.color??{}}},this.logger=this.options.logger??new FBe({useIcons:!1,toStderr:rJn}),this.logger.options.icon=this.options.icon,this.logger.options.color=this.options.color,this.options.timestamp&&this.logger.options.fields.prefix.unshift(this.options.timestamp)}static{Bp(this,"VerboseRenderer")}static nonTTY=!0;static rendererOptions={logTitleChange:!1,pausedTimer:{...Qor,format:Bp(()=>w0.yellowBright,"format")}};static rendererTaskOptions;logger;cache={rendererOptions:new Map,rendererTaskOptions:new Map};render(){this.renderer(this.tasks)}end(){}renderer(t){t.forEach(r=>{this.calculate(r),r.once("CLOSED",()=>{this.reset(r)});let s=this.cache.rendererOptions.get(r.id),a=this.cache.rendererTaskOptions.get(r.id);r.on("SUBTASK",o=>{this.renderer(o)}),r.on("STATE",o=>{if(r.hasTitle()){if(o==="STARTED")this.logger.log("STARTED",r.title);else if(o==="COMPLETED"){let g=a.timer;this.logger.log("COMPLETED",r.title,g&&{suffix:{...g,condition:!!r.message?.duration&&g.condition,args:[r.message.duration]}})}}}),r.on("OUTPUT",o=>{this.logger.log("OUTPUT",o)}),r.on("PROMPT",o=>{let g=GBe(o);g&&this.logger.log("PROMPT",g)}),this.options?.logTitleChange!==!1&&r.on("TITLE",o=>{this.logger.log("TITLE",o)}),r.on("MESSAGE",o=>{if(o?.error)this.logger.log("FAILED",o.error);else if(o?.skip)this.logger.log("SKIPPED",o.skip);else if(o?.rollback)this.logger.log("ROLLBACK",o.rollback);else if(o?.retry)this.logger.log("RETRY",r.title,{suffix:o.retry.count.toString()});else if(o?.paused){let g=s?.pausedTimer;this.logger.log("PAUSED",r.title,g&&{suffix:{...g,condition:!!o?.paused&&g.condition,args:[o.paused-Date.now()]}})}})})}calculate(t){if(this.cache.rendererOptions.has(t.id)&&this.cache.rendererTaskOptions.has(t.id))return;let r={...this.options,...t.rendererOptions};this.cache.rendererOptions.set(t.id,r),this.cache.rendererTaskOptions.set(t.id,{...Vor.rendererTaskOptions,timer:r.timer,...t.rendererTaskOptions})}reset(t){this.cache.rendererOptions.delete(t.id),this.cache.rendererTaskOptions.delete(t.id)}},kor={default:MPo,simple:YPo,verbose:UPo,test:JPo,silent:HPo};function oJn(e){return process.stdout.isTTY===!0||e.nonTTY===!0}Bp(oJn,"isRendererSupported");function jOe(e){return typeof e=="string"?kor[e]??kor.default:typeof e=="function"?e:kor.default}Bp(jOe,"getRendererClass");function aJn(e){if(mpe(e?.silentRendererCondition))return{renderer:jOe("silent"),selection:"SILENT"};let t={renderer:jOe(e.renderer),options:e.rendererOptions,selection:"PRIMARY"};return!oJn(t.renderer)||mpe(e?.fallbackRendererCondition)?{renderer:jOe(e.fallbackRenderer),options:e.fallbackRendererOptions,selection:"SECONDARY"}:t}Bp(aJn,"getRenderer");function mpe(e,...t){return typeof e=="function"?e(...t):e}Bp(mpe,"assertFunctionOrSelf");var KPo=(0,cJn.default)({circles:!0});function Wor(e){return KPo(e)}Bp(Wor,"cloneObject");var jPo=class{static{Bp(this,"Concurrency")}concurrency;count;queue;constructor(e){this.concurrency=e.concurrency,this.count=0,this.queue=new Set}add(e){return this.count{let r=Bp(()=>t(this.run(e)),"callback");this.queue.add(r)})}flush(){for(let e of this.queue){if(this.count>=this.concurrency)break;this.queue.delete(e),e()}}run(e){this.count++;let t=e(),r=Bp(()=>{this.count--,this.flush()},"cleanup");return t.then(r,()=>{this.queue.clear()}),t}};function lJn(e){return new Promise(t=>{setTimeout(t,e)})}Bp(lJn,"delay");var zPo=class extends Error{constructor(e,t,r){super(e.message),this.error=e,this.type=t,this.task=r,this.name="ListrError",this.path=r.path,r?.options.collectErrors==="full"&&(this.task=Wor(r),this.ctx=Wor(r.listr.ctx)),this.stack=e?.stack}static{Bp(this,"ListrError")}path;ctx},K4n=class extends Error{static{Bp(this,"ListrRendererError")}},uJn=class extends Error{static{Bp(this,"PromptError")}},qPo=class{constructor(e){this.task=e}static{Bp(this,"TaskWrapper")}get title(){return this.task.title}set title(e){e=Array.isArray(e)?e:[e],this.task.title$=kBe(e.shift(),...e)}get output(){return this.task.output}set output(e){e=Array.isArray(e)?e:[e],this.task.output$=kBe(e.shift(),...e)}set promptOutput(e){this.task.promptOutput$=e}newListr(e,t){let r;return typeof e=="function"?r=e(this):r=e,new ypt(r,t,this.task)}report(e,t){this.task.options.collectErrors!==!1&&this.task.listr.errors.push(new zPo(e,t,this.task)),this.task.message$={error:e.message??this.task?.title}}skip(e,...t){this.task.state$="SKIPPED",e&&(this.task.message$={skip:e?kBe(e,...t):this.task?.title})}isRetrying(){return this.task.isRetrying()?this.task.retry:{count:0}}prompt(e){return this.task.prompt?this.task.prompt:new e(this.task,this)}stdout(e){return nJn(t=>{switch(e){case"PROMPT":this.promptOutput=t;break;default:this.output=t}})}run(e){return this.task.run(e,this)}},eOo=class extends q4n{static{Bp(this,"ListrTaskEventManager")}},tOo=class extends eOo{constructor(e,t,r,s,a){if(super(),this.listr=e,this.task=t,this.options=r,this.rendererOptions=s,this.rendererTaskOptions=a,t.title){let o=Array.isArray(t?.title)?t.title:[t.title];this.title=kBe(o.shift(),...o),this.initialTitle=this.title}this.taskFn=t.task,this.parent=e.parentTask}static{Bp(this,"Task")}id=$Po();state="WAITING";subtasks;title;initialTitle;output;retry;message={};prompt;parent;enabled;taskFn;closed;set state$(e){if(this.state=e,this.emit("STATE",e),this.hasSubtasks()&&this.hasFailed())for(let t of this.subtasks)t.state==="STARTED"&&(t.state$="FAILED");this.listr.events.emit("SHOUD_REFRESH_RENDER")}set output$(e){this.output=e,this.emit("OUTPUT",e),this.listr.events.emit("SHOUD_REFRESH_RENDER")}set promptOutput$(e){this.emit("PROMPT",e),GBe(e)&&this.listr.events.emit("SHOUD_REFRESH_RENDER")}set message$(e){this.message={...this.message,...e},this.emit("MESSAGE",e),this.listr.events.emit("SHOUD_REFRESH_RENDER")}set title$(e){this.title=e,this.emit("TITLE",e),this.listr.events.emit("SHOUD_REFRESH_RENDER")}get path(){return[...this.listr.path,this.initialTitle]}async check(e){return this.state==="WAITING"&&(this.enabled=await mpe(this.task?.enabled??!0,e),this.emit("ENABLED",this.enabled),this.listr.events.emit("SHOUD_REFRESH_RENDER")),this.enabled}hasSubtasks(){return this.subtasks?.length>0}hasFinalized(){return this.isCompleted()||this.hasFailed()||this.isSkipped()||this.hasRolledBack()}isPending(){return this.isStarted()||this.isPrompt()||this.hasReset()}isStarted(){return this.state==="STARTED"}isSkipped(){return this.state==="SKIPPED"}isCompleted(){return this.state==="COMPLETED"}hasFailed(){return this.state==="FAILED"}isRollingBack(){return this.state==="ROLLING_BACK"}hasRolledBack(){return this.state==="ROLLED_BACK"}isRetrying(){return this.state==="RETRY"}hasReset(){return this.state==="RETRY"||this.state==="ROLLING_BACK"}isEnabled(){return this.enabled}hasTitle(){return typeof this?.title=="string"}isPrompt(){return this.state==="PROMPT"||this.state==="PROMPT_COMPLETED"}isPaused(){return this.state==="PAUSED"}isClosed(){return this.closed}async pause(e){let t=this.state;this.state$="PAUSED",this.message$={paused:Date.now()+e},await lJn(e),this.state$=t,this.message$={paused:null}}async run(e,t){let r=Bp(o=>(o instanceof ypt?(o.options={...this.options,...o.options},o.rendererClass=jOe("silent"),this.subtasks=o.tasks,o.errors=this.listr.errors,this.emit("SUBTASK",this.subtasks),o=o.run(e)):o instanceof Promise?o=o.then(r):eJn(o)?o=new Promise((g,p)=>{o.on("data",f=>{this.output$=f.toString()}),o.on("error",f=>p(f)),o.on("end",()=>g(null))}):$4n(o)&&(o=new Promise((g,p)=>{o.subscribe({next:Bp(f=>{this.output$=f},"next"),error:p,complete:g})})),o),"handleResult"),s=Date.now();this.state$="STARTED";let a=await mpe(this.task?.skip??!1,e);if(a){typeof a=="string"?this.message$={skip:a}:this.hasTitle()?this.message$={skip:this.title}:this.message$={skip:"Skipped task without a title."},this.state$="SKIPPED";return}try{let o=typeof this.task?.retry=="number"&&this.task.retry>0?this.task.retry+1:typeof this.task?.retry=="object"&&this.task.retry.tries>0?this.task.retry.tries+1:1,g=typeof this.task.retry=="object"&&this.task.retry.delay;for(let p=1;p<=o;p++)try{await r(this.taskFn(e,t));break}catch(f){if(p!==o)this.retry={count:p,error:f},this.message$={retry:this.retry},this.title$=this.initialTitle,this.output=void 0,t.report(f,"WILL_RETRY"),this.state$="RETRY",g&&await this.pause(g);else throw f}(this.isStarted()||this.isRetrying())&&(this.message$={duration:Date.now()-s},this.state$="COMPLETED")}catch(o){if(this.prompt instanceof uJn&&(o=this.prompt),this.task?.rollback){t.report(o,"WILL_ROLLBACK");try{this.state$="ROLLING_BACK",await this.task.rollback(e,t),this.message$={rollback:this.title},this.state$="ROLLED_BACK"}catch(g){throw this.state$="FAILED",t.report(g,"HAS_FAILED_TO_ROLLBACK"),this.close(),g}if(this.listr.options?.exitAfterRollback!==!1)throw this.close(),o}else{if(this.state$="FAILED",this.listr.options.exitOnError!==!1&&await mpe(this.task?.exitOnError,e)!==!1)throw t.report(o,"HAS_FAILED"),this.close(),o;this.hasSubtasks()||t.report(o,"HAS_FAILED_WITHOUT_ERROR")}}finally{this.close()}}close(){this.emit("CLOSED"),this.listr.events.emit("SHOUD_REFRESH_RENDER"),this.complete()}},j4n=class extends q4n{static{Bp(this,"ListrEventManager")}},ypt=class{constructor(e,t,r){this.task=e,this.options=t,this.parentTask=r,this.options={concurrent:!1,renderer:"default",fallbackRenderer:"simple",exitOnError:!0,exitAfterRollback:!0,collectErrors:!1,registerSignalListeners:!0,...this.parentTask?.options??{},...t},this.options.concurrent===!0?this.options.concurrent=1/0:typeof this.options.concurrent!="number"&&(this.options.concurrent=1),this.concurrency=new jPo({concurrency:this.options.concurrent}),r&&(this.path=[...r.listr.path,r.title],this.errors=r.listr.errors),this.parentTask?.listr.events instanceof j4n?this.events=this.parentTask.listr.events:this.events=new j4n;let s=aJn({renderer:this.options.renderer,rendererOptions:this.options.rendererOptions,fallbackRenderer:this.options.fallbackRenderer,fallbackRendererOptions:this.options.fallbackRendererOptions,fallbackRendererCondition:this.options?.fallbackRendererCondition,silentRendererCondition:this.options?.silentRendererCondition});this.rendererClass=s.renderer,this.rendererClassOptions=s.options,this.rendererSelection=s.selection,this.add(e??[]),this.options.registerSignalListeners&&(this.boundSignalHandler=this.signalHandler.bind(this),process.once("SIGINT",this.boundSignalHandler).setMaxListeners(0)),(this.options?.forceTTY||process.env.LISTR_FORCE_TTY)&&(process.stdout.isTTY=!0,process.stderr.isTTY=!0),this.options?.forceUnicode&&(process.env.LISTR_FORCE_UNICODE="1")}static{Bp(this,"Listr")}tasks=[];errors=[];ctx;events;path=[];rendererClass;rendererClassOptions;rendererSelection;boundSignalHandler;concurrency;renderer;isRoot(){return!this.parentTask}isSubtask(){return!!this.parentTask}add(e){this.tasks.push(...this.generate(e))}async run(e){this.renderer||(this.renderer=new this.rendererClass(this.tasks,this.rendererClassOptions,this.events)),await this.renderer.render(),this.ctx=this.options?.ctx??e??{},await Promise.all(this.tasks.map(t=>t.check(this.ctx)));try{await Promise.all(this.tasks.map(t=>this.concurrency.add(()=>this.runTask(t)))),this.renderer.end(),this.removeSignalHandler()}catch(t){if(this.options.exitOnError!==!1)throw this.renderer.end(t),this.removeSignalHandler(),t}return this.ctx}generate(e){return e=Array.isArray(e)?e:[e],e.map(t=>{let r;return this.rendererSelection==="PRIMARY"?r=t.rendererOptions:this.rendererSelection==="SECONDARY"&&(r=t.fallbackRendererOptions),new tOo(this,t,this.options,this.rendererClassOptions,r)})}async runTask(e){if(await e.check(this.ctx))return new qPo(e).run(this.ctx)}signalHandler(){this.tasks?.forEach(async e=>{e.isPending()&&(e.state$="FAILED")}),this.isRoot()&&(this.renderer.end(new Error("Interrupted.")),process.exit(127))}removeSignalHandler(){this.boundSignalHandler&&process.removeListener("SIGINT",this.boundSignalHandler)}};var zOe=dp.blue(Ly.arrowRight),AQ=dp.redBright(Ly.cross),ZBe=dp.yellow(Ly.warning);var qOe=(e,t,r)=>`${dp.redBright(`${AQ} Validation Error:`)} - Invalid value for '${Ap.bold(e)}': ${Ap.bold(OPo(r))} + Invalid value for '${dp.bold(e)}': ${dp.bold(rOo(r))} - ${t}`,nJn=Ap.redBright(`${uM} Current directory is not a git directory!`),iJn=Ap.redBright(`${uM} Failed to get staged files!`),sJn=(e,t)=>Ap.yellow(`${kBe} Detected incorrect braces with only single value: \`${e}\`. Reformatted as: \`${t}\` -`),oJn=`${uM} No valid configuration found.`,aJn=`${KOe} No staged files found.`,cJn=`${KOe} No staged files match any configured task.`,lJn=(e,t)=>{let r=t!==void 0?"`--diff` was used":e?"`--no-stash` was used":"there\u2019s no initial commit yet";return Ap.yellow(`${kBe} Skipping backup because ${r}. -`)},uJn=(e,t)=>{let r=t!==void 0?"`--diff` was used":e?"`--no-hide-partially-staged` was used":"`--no-stash` was used";return Ap.yellow(`${kBe} Skipping hiding unstaged changes from partially staged files because ${r}. -`)},gJn=Ap.yellow(`${kBe} Some of your tasks use \`git add\` command. Please remove it from the config since all modifications made by tasks will be automatically added to the git commit index. -`),Lor="Skipped because of errors from tasks.",AJn="Skipped because of previous git error.",Pie=` - ${Ap.redBright(`${uM} lint-staged failed due to a git error.`)}`,Vor=(e,t,r)=>`${Ap.redBright(`${uM} Validation Error:`)} + ${t}`,gJn=dp.redBright(`${AQ} Current directory is not a git directory!`),AJn=dp.redBright(`${AQ} Failed to get staged files!`),dJn=(e,t)=>dp.yellow(`${ZBe} Detected incorrect braces with only single value: \`${e}\`. Reformatted as: \`${t}\` +`),pJn=`${AQ} No valid configuration found.`,fJn=`${zOe} No staged files found.`,IJn=`${zOe} No staged files match any configured task.`,CJn=(e,t)=>{let r=t!==void 0?"`--diff` was used":e?"`--no-stash` was used":"there\u2019s no initial commit yet";return dp.yellow(`${ZBe} Skipping backup because ${r}. +`)},mJn=(e,t)=>{let r=t!==void 0?"`--diff` was used":e?"`--no-hide-partially-staged` was used":"`--no-stash` was used";return dp.yellow(`${ZBe} Skipping hiding unstaged changes from partially staged files because ${r}. +`)},hJn=dp.yellow(`${ZBe} Some of your tasks use \`git add\` command. Please remove it from the config since all modifications made by tasks will be automatically added to the git commit index. +`),Mor="Skipped because of errors from tasks.",_Jn="Skipped because of previous git error.",Mie=` + ${dp.redBright(`${AQ} lint-staged failed due to a git error.`)}`,Hor=(e,t,r)=>`${dp.redBright(`${AQ} Validation Error:`)} - Invalid value for option '${Ap.bold(e)}': ${Ap.bold(t)} + Invalid value for option '${dp.bold(e)}': ${dp.bold(t)} ${r} -See https://github.com/okonet/lint-staged#command-line-flags`,dJn=` - ${Ap.yellow(`${kBe} lint-staged prevented an empty git commit. +See https://github.com/okonet/lint-staged#command-line-flags`,yJn=` + ${dp.yellow(`${ZBe} lint-staged prevented an empty git commit. Use the --allow-empty option to continue, or check your task configuration`)} -`,pJn=` Any lost modifications can be restored from a git stash: +`,bJn=` Any lost modifications can be restored from a git stash: > git stash list stash@{0}: automatic lint-staged backup > git stash apply --index stash@{0} -`,cll=Ap.redBright(`${uM} Failed to read config from stdin.`),fJn=e=>Ap.redBright(`${uM} Failed to read config from file "${e}".`),Wor=(e,t)=>`${Ap.redBright(`${t} Failed to parse config from file "${e}".`)} +`,Nll=dp.redBright(`${AQ} Failed to read config from stdin.`),EJn=e=>dp.redBright(`${AQ} Failed to read config from file "${e}".`),Yor=(e,t)=>`${dp.redBright(`${t} Failed to parse config from file "${e}".`)} ${t} -See https://github.com/okonet/lint-staged#configuration.`;var Por=(e={},t)=>{if(!Array.isArray(e.output))return;let r=e.errors?.size>0?t.error:t.log;for(let s of e.output)r(s)};import GMe from"node:path";var m6n=xt(wk(),1);var IJn=xt(wk(),1);import YPo from"node:path";import zOe from"node:path";var MPo="\\\\?\\",QPo="\\\\.\\",Nk=e=>{if(e===zOe.posix.sep||e===zOe.win32.sep)return zOe.posix.sep;let t=e.split(/[/\\]+/).join(zOe.posix.sep);return(e.startsWith(MPo)||e.startsWith(QPo))&&(t=t.replace(/^\/(\.|\?)/,"//$1")),t.endsWith(zOe.posix.sep)&&(t=t.slice(0,-1)),t};var Oor=(0,IJn.default)("lint-staged:chunkFiles"),HPo=(e,t)=>{if(t===1)return[e];let r=[],s=0;for(let a=0;a{let a=e.map(p=>Nk(s||!t?p:YPo.resolve(t,p)));if(!r)return Oor("Skip chunking files because of undefined maxArgLength"),[a];let o=a.join(" ").length;Oor(`Resolved an argument string length of ${o} characters from ${a.length} files`);let g=Math.min(Math.ceil(o/r),a.length);return Oor(`Creating ${g} chunks for maxArgLength of ${r}`),HPo(a,g)};var mJn=xt(wk(),1),hJn=xt(sk(),1);import Qor from"node:path";var CJn=(0,mJn.default)("lint-staged:generateTasks"),_Jn=({config:e,cwd:t=process.cwd(),files:r,relative:s=!1})=>{CJn("Generating linter tasks");let a=r.map(o=>Nk(Qor.relative(t,o)));return Object.entries(e).map(([o,g])=>{let p=o.startsWith("../"),f=a.filter(v=>p?!0:!v.startsWith("..")&&!Qor.isAbsolute(v)),y=(0,hJn.default)(f,o,{cwd:t,dot:!0,matchBase:!o.includes("/"),posixSlashes:!0,strictBrackets:!0}).map(v=>Nk(s?v:Qor.resolve(t,v))),B={pattern:o,commands:g,fileList:y};return CJn(`Generated task: -%O`,B),B})};import{EOL as XPo}from"node:os";import{Writable as JPo}from"node:stream";var UPo=new RegExp(XPo+"$"),yJn=e=>new JPo({write:function(t,r,s){e(t.toString().replace(UPo,"")),s()}}),KPo=({debug:e,quiet:t},r,s)=>t?{renderer:"silent"}:s.NODE_ENV==="test"?{renderer:"test",rendererOptions:{logger:new xBe({processOutput:new For(yJn(r.log),yJn(r.error))})}}:e||s.TERM==="dumb"?{renderer:"verbose"}:{renderer:"update",rendererOptions:{formatOutput:"truncate"}},jPo=({renderer:e},{FORCE_COLOR:t})=>e==="silent"||e==="test"||Number(t)>0?e:"verbose",bJn=(e,t,r=process.env)=>{let s=KPo(e,t,r);return{...s,fallbackRenderer:jPo(s,r)}};import zPo from"node:path";function _pt(e,t){let r=t!==void 0?t.trim():"ACMR",s=e!==void 0?e.trim().split(" "):["--staged"];return["diff","--name-only","-z",`--diff-filter=${r}`,...s]}var qOe=e=>e?e.replace(/\u0000$/,"").split("\0"):[];var EJn=async({cwd:e=process.cwd(),diff:t,diffFilter:r}={})=>{try{let s=await PF(_pt(t,r),{cwd:e});return s?qOe(s).map(a=>Nk(zPo.resolve(e,a))):[]}catch{return null}};var GJn=xt(wk(),1);import tMe from"node:path";var BJn=xt(wk(),1);import Yor from"node:fs/promises";var $Oe=(0,BJn.default)("lint-staged:file"),ypt=async(e,t=!0)=>{$Oe("Reading file `%s`",e);try{return await Yor.readFile(e)}catch(r){if(t&&r.code==="ENOENT")return $Oe("File `%s` doesn't exist, ignoring...",e),null;throw r}},Hor=async(e,t=!0)=>{$Oe("Removing file `%s`",e);try{await Yor.unlink(e)}catch(r){if(t&&r.code==="ENOENT")$Oe("File `%s` doesn't exist, ignoring...",e);else throw r}},bpt=async(e,t)=>{$Oe("Writing file `%s`",e),await Yor.writeFile(e,t)};var Oie=Symbol("ApplyEmptyCommitError"),eMe=new Error("Configuration could not be found"),vJn=new Error("Configuration should be an object or a function"),SJn=new Error("Configuration should not be empty"),Ept=Symbol("GetBackupStashError"),Xor=Symbol("GetStagedFilesError"),t5=Symbol("GitError"),wJn=Symbol("GitRepoError"),TJn=Symbol("HideUnstagedChangesError"),Jor=new Error("Invalid Options"),NJn=Symbol("RestoreMergeStatusError"),Bpt=Symbol("RestoreOriginalStateError"),GBe=Symbol("RestoreUnstagedChangesError"),gpe=Symbol("TaskError");var $1=(0,GJn.default)("lint-staged:GitWorkflow"),qPo="MERGE_HEAD",$Po="MERGE_MODE",eOo="MERGE_MSG",RJn=/\x00/,DJn=(e,t=!0)=>e.reduce((r,s)=>{if(RJn.test(s)){let[a,o]=s.split(RJn);t&&r.push(o),r.push(a)}else r.push(s);return r},[]),xJn="lint-staged automatic backup",Uor="lint-staged_unstaged.patch",tOo=["--binary","--unified=0","--no-color","--no-ext-diff","--src-prefix=a/","--dst-prefix=b/","--patch","--submodule=short"],kJn=["-v","--whitespace=nowarn","--recount","--unidiff-zero"],Ape=(e,t,r)=>{throw t.errors.add(t5),r&&t.errors.add(r),e},vpt=class{constructor({allowEmpty:t,gitConfigDir:r,topLevelDir:s,matchedFileChunks:a,diff:o,diffFilter:g}){this.execGit=(p,f={})=>PF(p,{...f,cwd:s}),this.deletedFiles=[],this.gitConfigDir=r,this.topLevelDir=s,this.diff=o,this.diffFilter=g,this.allowEmpty=t,this.matchedFileChunks=a,this.mergeHeadFilename=tMe.resolve(r,qPo),this.mergeModeFilename=tMe.resolve(r,$Po),this.mergeMsgFilename=tMe.resolve(r,eOo)}getHiddenFilepath(t){return tMe.resolve(this.gitConfigDir,`./${t}`)}async getBackupStash(t){let s=(await this.execGit(["stash","list"])).split(` -`).findIndex(a=>a.includes(xJn));if(s===-1)throw t.errors.add(Ept),new Error("lint-staged automatic backup is missing!");return String(s)}async getDeletedFiles(){$1("Getting deleted files...");let r=(await this.execGit(["ls-files","--deleted"])).split(` -`).filter(Boolean).map(s=>tMe.resolve(this.topLevelDir,s));return $1("Found deleted files:",r),r}async backupMergeStatus(){$1("Backing up merge state..."),await Promise.all([ypt(this.mergeHeadFilename).then(t=>this.mergeHeadBuffer=t),ypt(this.mergeModeFilename).then(t=>this.mergeModeBuffer=t),ypt(this.mergeMsgFilename).then(t=>this.mergeMsgBuffer=t)]),$1("Done backing up merge state!")}async restoreMergeStatus(t){$1("Restoring merge state...");try{await Promise.all([this.mergeHeadBuffer&&bpt(this.mergeHeadFilename,this.mergeHeadBuffer),this.mergeModeBuffer&&bpt(this.mergeModeFilename,this.mergeModeBuffer),this.mergeMsgBuffer&&bpt(this.mergeMsgFilename,this.mergeMsgBuffer)]),$1("Done restoring merge state!")}catch(r){$1("Failed restoring merge state with error:"),$1(r),Ape(new Error("Merge state could not be restored due to an error!"),t,NJn)}}async getPartiallyStagedFiles(){$1("Getting partially staged files...");let r=(await this.execGit(["status","-z"])).split(/\x00(?=[ AMDRCU?!]{2} |$)/).filter(s=>{let[a,o]=s;return a!==" "&&o!==" "&&a!=="?"&&o!=="?"}).map(s=>s.substr(3)).filter(Boolean);return $1("Found partially staged files:",r),r.length?r:null}async prepare(t){try{if($1("Backing up original state..."),this.partiallyStagedFiles=await this.getPartiallyStagedFiles(),this.partiallyStagedFiles){t.hasPartiallyStagedFiles=!0;let s=this.getHiddenFilepath(Uor),a=DJn(this.partiallyStagedFiles);await this.execGit(["diff",...tOo,"--output",s,"--",...a])}else t.hasPartiallyStagedFiles=!1;if(!t.shouldBackup)return;await this.backupMergeStatus(),this.deletedFiles=await this.getDeletedFiles();let r=await this.execGit(["stash","create"]);await this.execGit(["stash","store","--quiet","--message",xJn,r]),$1("Done backing up original state!")}catch(r){Ape(r,t)}}async hideUnstagedChanges(t){try{let r=DJn(this.partiallyStagedFiles,!1);await this.execGit(["checkout","--force","--",...r])}catch(r){Ape(r,t,TJn)}}async applyModifications(t){$1("Adding task modifications to index...");for(let s of this.matchedFileChunks)await this.execGit(["add","--",...s]);$1("Done adding task modifications to index!"),!await this.execGit(_pt(this.diff,this.diffFilter))&&!this.allowEmpty&&Ape(new Error("Prevented an empty git commit!"),t,Oie)}async restoreUnstagedChanges(t){$1("Restoring unstaged changes...");let r=this.getHiddenFilepath(Uor);try{await this.execGit(["apply",...kJn,r])}catch(s){$1("Error while restoring changes:"),$1(s),$1("Retrying with 3-way merge");try{await this.execGit(["apply",...kJn,"--3way",r])}catch(a){$1("Error while restoring unstaged changes using 3-way merge:"),$1(a),Ape(new Error("Unstaged changes could not be restored due to a merge conflict!"),t,GBe)}}}async restoreOriginalState(t){try{$1("Restoring original state..."),await this.execGit(["reset","--hard","HEAD"]),await this.execGit(["stash","apply","--quiet","--index",await this.getBackupStash(t)]),await this.restoreMergeStatus(t),await Promise.all(this.deletedFiles.map(r=>Hor(r))),await Hor(this.getHiddenFilepath(Uor)),$1("Done restoring original state!")}catch(r){Ape(r,t,Bpt)}}async cleanup(t){try{$1("Dropping backup stash..."),await this.execGit(["stash","drop","--quiet",await this.getBackupStash(t)]),$1("Done dropping backup stash!")}catch(r){Ape(r,t)}}};var FJn=xt(wk(),1);import Spt from"node:path";var rOo=(0,FJn.default)("lint-staged:groupFilesByConfig"),ZJn=async({configs:e,files:t,singleConfigMode:r})=>{rOo("Grouping %d files by %d configurations",t.length,Object.keys(e).length);let s=new Set(t),a={};for(let[o,g]of Object.entries(e)){if(r){a[o]={config:g,files:t};break}let p=Spt.normalize(Spt.dirname(o)),f=B=>{let v=Spt.relative(p,B);return v&&!v.startsWith("..")&&!Spt.isAbsolute(v)},m=Object.keys(g).some(B=>B.startsWith("..")),y=new Set(m?s:void 0);m||s.forEach(B=>{f(B)&&y.add(B)}),y.forEach(B=>{s.delete(B)}),a[o]={config:g,files:Array.from(y)}}return a};var cUn=xt(wk(),1);var nUn=xt(wk(),1);function Kor(e,t,r){var s=/([^\s'"]([^\s'"]*(['"])([^\3]*?)\3)+[^\s'"]*)|[^\s'"]+|(['"])([^\5]*?)\5/gi,a=e,o=[];t&&o.push(t),r&&o.push(r);var g;do g=s.exec(a),g!==null&&o.push(nOo(g[1],g[6],g[0]));while(g!==null);return o}function nOo(){for(var e=[],t=0;t({hasPartiallyStagedFiles:null,shouldBackup:null,shouldHidePartiallyStaged:!0,errors:new Set([]),events:new _Oo,output:[],quiet:e}),qor=e=>e.hasPartiallyStagedFiles&&e.shouldHidePartiallyStaged,zJn=e=>{if(!e.shouldBackup)return!1;if(e.errors.has(t5))return Pie;if(e.errors.has(gpe))return Lor},qJn=e=>{if(e.errors.has(t5))return Pie;if(e.errors.has(gpe))return Lor},$Jn=e=>e.shouldBackup&&(e.errors.has(gpe)||e.errors.has(Oie)||e.errors.has(GBe)),eUn=e=>{if(e.errors.has(t5)&&!e.errors.has(Oie)&&!e.errors.has(GBe))return Pie},tUn=e=>e.shouldBackup,rUn=e=>{if(e.errors.has(t5)&&!e.errors.has(Oie)&&!e.errors.has(GBe))return Pie;if(e.errors.has(Bpt))return Pie};var $or="lint-staged:taskError",rMe=(0,nUn.default)("lint-staged:resolveTaskFn"),sUn=({code:e,killed:t,signal:r})=>t&&"KILLED"||r||e||"FAILED",oUn=(e,t,r,s=!1)=>{let{stderr:a,stdout:o}=t;if(!!a||!!o){let p=s?Ap.redBright(`${uM} ${e}:`):`${KOe} ${e}:`,f=[].concat(r.quiet?[]:["",p]).concat(a||[]).concat(o||[]);r.output.push(f.join(` -`))}else if(s){let p=sUn(t),f=Ap.redBright(` -${uM} ${e} failed without output (${p}).`);r.quiet||r.output.push(f)}},yOo=async e=>{try{let t=await(0,iUn.default)(e.pid);for(let r of t)try{process.kill(r)}catch(s){rMe('Failed to kill process with pid "%d": %o',r,s)}}catch(t){rMe('Failed to kill process with pid "%d": %o',e.pid,t)}e.kill()},bOo=(e,t)=>{let r,s=async()=>{r=yOo(t),await r};return e.events.on($or,s,{once:!0}),async()=>{e.events.off($or,s),await r}},EOo=(e,t,r)=>{r.errors.add(gpe),r.events.emit($or,gpe),oUn(e,t,r,!0);let s=sUn(t);return new Error(`${Ap.redBright(e)} ${Ap.dim(`[${s}]`)}`)},aUn=({command:e,cwd:t=process.cwd(),files:r,topLevelDir:s,isFn:a,shell:o=!1,verbose:g=!1})=>{let[p,...f]=Kor(e);rMe("cmd:",p),rMe("args:",f);let m={cwd:/^git(\.exe)?/i.test(p)?s:t,preferLocal:!0,reject:!1,shell:o,stdin:"ignore"};return rMe("execaOptions:",m),async(y=wpt())=>{let B=o?eMn(a?e:`${e} ${r.join(" ")}`,m):lz(p,a?f:f.concat(r),m),v=bOo(y,B),G=await B;if(await v(),G.failed||G.killed||G.signal!=null)throw EOo(e,G,y);g&&oUn(e,G,y)}};var BOo=(0,cUn.default)("lint-staged:makeCmdTasks"),lUn=async({commands:e,cwd:t,files:r,topLevelDir:s,shell:a,verbose:o})=>{BOo("Creating listr tasks for commands %o",e);let g=Array.isArray(e)?e:[e],p=[];for(let f of g){let m=typeof f=="function",y=m?await f([...r]):f,B=Array.isArray(y)?y:[y];for(let v of B){if(m&&typeof v!="string")throw new Error(jOe("[Function]","Function task should return a string or an array of strings",y));let G=aUn({command:v,cwd:t,files:r,topLevelDir:s,isFn:m,shell:a,verbose:o});p.push({title:v,command:v,task:G})}}return p};var uUn=xt(wk(),1);import ear from"node:path";var FBe=(0,uUn.default)("lint-staged:resolveGitRepo"),vOo=async(e=process.cwd())=>{let t=PF(["rev-parse","--show-toplevel"],{cwd:e}),r=PF(["rev-parse","--absolute-git-dir"],{cwd:e}),[s,a]=await Promise.all([t,r]);return ear.relative(s,a)},gUn=async(e=process.cwd())=>{try{FBe("Resolving git repo from `%s`",e),FBe("Unset GIT_DIR (was `%s`)",process.env.GIT_DIR),delete process.env.GIT_DIR,FBe("Unset GIT_WORK_TREE (was `%s`)",process.env.GIT_WORK_TREE),delete process.env.GIT_WORK_TREE;let t=await PF(["rev-parse","--show-cdup"],{cwd:e}),r=Nk(ear.join(e,t));FBe("Resolved git repository top-level directory to be `%s`",r);let s=await vOo(e),a=Nk(ear.join(r,s));return FBe("Resolved git config directory to be `%s`",a),{topLevelDir:r,gitConfigDir:a}}catch(t){return FBe("Failed to resolve git repo with error:",t),{error:t,topLevelDir:null,gitConfigDir:null}}};var I6n=xt(wk(),1);import f6n from"node:path";var s6n=xt(wk(),1),o6n=xt(j8n(),1);import qHo from"node:fs/promises";import KBe from"node:path";import{pathToFileURL as UHo}from"node:url";var yft=e=>import(UHo(e)).then(t=>t.default);import{createRequire as KHo}from"node:module";function z8n(e){try{return KHo(import.meta.url).resolve(e)}catch{return e}}var bft="lint-staged",Eft="package.json",Zcr=["package.yaml","package.yml"],Bft=[Eft,...Zcr,".lintstagedrc",".lintstagedrc.json",".lintstagedrc.yaml",".lintstagedrc.yml",".lintstagedrc.mjs",".lintstagedrc.js",".lintstagedrc.cjs","lint-staged.config.mjs","lint-staged.config.js","lint-staged.config.cjs"];var UBe=(0,s6n.default)("lint-staged:loadConfig"),$Ho=(e,t)=>{let r=Eft.includes(KBe.basename(e));try{let s=JSON.parse(t);return r?s[bft]:s}catch(s){if(KBe.basename(e)===Eft){UBe("Ignoring invalid package file `%s` with content:\n%s",e,t);return}throw s}},Wcr=(e,t)=>{let r=Zcr.includes(KBe.basename(e));try{let s=o6n.default.parse(t);return r?s[bft]:s}catch(s){if(r){UBe("Ignoring invalid package file `%s` with content:\n%s",e,t);return}throw s}},a6n="noExt",c6n={".js":yft,".json":$Ho,".mjs":yft,".cjs":yft,".yaml":Wcr,".yml":Wcr,[a6n]:Wcr},e5o=async e=>{let t=KBe.resolve(e);return await(await qHo.readFile(t)).toString()},t5o=async e=>{e=KBe.resolve(e);let t=KBe.extname(e)||a6n,r=c6n[t],s=r.length>1?await e5o(e):void 0;return{config:await r(e,s),filepath:e}},Nft=async({configPath:e,cwd:t},r)=>{try{let s;if(e)UBe("Loading configuration from `%s`...",e),s=await t5o(z8n(e));else{UBe("Searching for configuration from `%s`...",t);let{lilconfig:g}=await Promise.resolve().then(()=>xt(i6n(),1));s=await g(bft,{searchPlaces:Bft,loaders:c6n}).search(t)}if(!s)return{};let a=await s.config??null,o=s.filepath;return UBe("Successfully loaded config from `%s`:\n%O",o,a),{config:a,filepath:o}}catch(s){return UBe("Failed to load configuration from `%s` with error:\n",e,s),r.error(fJn(e)),{}}};var A6n=xt(wk(),1);import{inspect as o5o}from"node:util";var r5o=/(?{let t=`${e}`,r=null;for(;r=r5o.exec(e);){let s=r[0],a=s.replace(/{/,"").replace(/}/,"");t=t.replace(s,a)}return t},i5o=/{{[^}{]*}}/,s5o=e=>{let t=`${e}`,r=i5o.exec(e)?.[0];if(r){let s=r.replace("{{","{").replace("}}","}");t=t.replace(r,s)}return t},l6n=(e,t)=>{let r=s5o(n5o(e));return r!==e&&t.warn(sJn(e,r)),r};var Pcr=(0,A6n.default)("lint-staged:validateConfig"),u6n=e=>e&&typeof e=="object"&&!Array.isArray(e),g6n=new Map([["concurrent",e=>typeof e=="boolean"],["chunkSize",e=>typeof e=="number"],["globOptions",u6n],["linters",u6n],["ignore",e=>Array.isArray(e)],["subTaskConcurrency",e=>typeof e=="number"],["renderer",e=>typeof e=="string"],["relative",e=>typeof e=="boolean"]]),a5o=(e,t,r)=>{if(Pcr("Validating config from `%s`...",t),!e||typeof e!="object"&&typeof e!="function")throw vJn;if(typeof e=="function")return{"*":e};if(Object.entries(e).length===0)throw SJn;let s=[],a=Object.entries(e).reduce((o,[g,p])=>{if(g6n.has(g))return g6n.get(g)(p)&&s.push(jOe(g,"Advanced configuration has been deprecated.",p)),o;(!Array.isArray(p)||p.some(m=>typeof m!="string"&&typeof m!="function"))&&typeof p!="string"&&typeof p!="function"&&s.push(jOe(g,"Should be a string, a function, or an array of strings and functions.",p));let f=l6n(g,r);return{...o,[f]:p}},{});if(s.length){let o=s.join(` +See https://github.com/okonet/lint-staged#configuration.`;var Xor=(e={},t)=>{if(!Array.isArray(e.output))return;let r=e.errors?.size>0?t.error:t.log;for(let s of e.output)r(s)};import ZQe from"node:path";var S6n=vt(kk(),1);var BJn=vt(kk(),1);import sOo from"node:path";import $Oe from"node:path";var nOo="\\\\?\\",iOo="\\\\.\\",Fk=e=>{if(e===$Oe.posix.sep||e===$Oe.win32.sep)return $Oe.posix.sep;let t=e.split(/[/\\]+/).join($Oe.posix.sep);return(e.startsWith(nOo)||e.startsWith(iOo))&&(t=t.replace(/^\/(\.|\?)/,"//$1")),t.endsWith($Oe.posix.sep)&&(t=t.slice(0,-1)),t};var Jor=(0,BJn.default)("lint-staged:chunkFiles"),oOo=(e,t)=>{if(t===1)return[e];let r=[],s=0;for(let a=0;a{let a=e.map(p=>Fk(s||!t?p:sOo.resolve(t,p)));if(!r)return Jor("Skip chunking files because of undefined maxArgLength"),[a];let o=a.join(" ").length;Jor(`Resolved an argument string length of ${o} characters from ${a.length} files`);let g=Math.min(Math.ceil(o/r),a.length);return Jor(`Creating ${g} chunks for maxArgLength of ${r}`),oOo(a,g)};var SJn=vt(kk(),1),wJn=vt(gk(),1);import Kor from"node:path";var vJn=(0,SJn.default)("lint-staged:generateTasks"),TJn=({config:e,cwd:t=process.cwd(),files:r,relative:s=!1})=>{vJn("Generating linter tasks");let a=r.map(o=>Fk(Kor.relative(t,o)));return Object.entries(e).map(([o,g])=>{let p=o.startsWith("../"),f=a.filter(v=>p?!0:!v.startsWith("..")&&!Kor.isAbsolute(v)),y=(0,wJn.default)(f,o,{cwd:t,dot:!0,matchBase:!o.includes("/"),posixSlashes:!0,strictBrackets:!0}).map(v=>Fk(s?v:Kor.resolve(t,v))),B={pattern:o,commands:g,fileList:y};return vJn(`Generated task: +%O`,B),B})};import{EOL as aOo}from"node:os";import{Writable as cOo}from"node:stream";var lOo=new RegExp(aOo+"$"),NJn=e=>new cOo({write:function(t,r,s){e(t.toString().replace(lOo,"")),s()}}),uOo=({debug:e,quiet:t},r,s)=>t?{renderer:"silent"}:s.NODE_ENV==="test"?{renderer:"test",rendererOptions:{logger:new FBe({processOutput:new Oor(NJn(r.log),NJn(r.error))})}}:e||s.TERM==="dumb"?{renderer:"verbose"}:{renderer:"update",rendererOptions:{formatOutput:"truncate"}},gOo=({renderer:e},{FORCE_COLOR:t})=>e==="silent"||e==="test"||Number(t)>0?e:"verbose",RJn=(e,t,r=process.env)=>{let s=uOo(e,t,r);return{...s,fallbackRenderer:gOo(s,r)}};import AOo from"node:path";function bpt(e,t){let r=t!==void 0?t.trim():"ACMR",s=e!==void 0?e.trim().split(" "):["--staged"];return["diff","--name-only","-z",`--diff-filter=${r}`,...s]}var eQe=e=>e?e.replace(/\u0000$/,"").split("\0"):[];var DJn=async({cwd:e=process.cwd(),diff:t,diffFilter:r}={})=>{try{let s=await MF(bpt(t,r),{cwd:e});return s?eQe(s).map(a=>Fk(AOo.resolve(e,a))):[]}catch{return null}};var QJn=vt(kk(),1);import nQe from"node:path";var xJn=vt(kk(),1);import jor from"node:fs/promises";var tQe=(0,xJn.default)("lint-staged:file"),Ept=async(e,t=!0)=>{tQe("Reading file `%s`",e);try{return await jor.readFile(e)}catch(r){if(t&&r.code==="ENOENT")return tQe("File `%s` doesn't exist, ignoring...",e),null;throw r}},zor=async(e,t=!0)=>{tQe("Removing file `%s`",e);try{await jor.unlink(e)}catch(r){if(t&&r.code==="ENOENT")tQe("File `%s` doesn't exist, ignoring...",e);else throw r}},Bpt=async(e,t)=>{tQe("Writing file `%s`",e),await jor.writeFile(e,t)};var Hie=Symbol("ApplyEmptyCommitError"),rQe=new Error("Configuration could not be found"),kJn=new Error("Configuration should be an object or a function"),GJn=new Error("Configuration should not be empty"),vpt=Symbol("GetBackupStashError"),qor=Symbol("GetStagedFilesError"),nY=Symbol("GitError"),FJn=Symbol("GitRepoError"),ZJn=Symbol("HideUnstagedChangesError"),$or=new Error("Invalid Options"),LJn=Symbol("RestoreMergeStatusError"),Spt=Symbol("RestoreOriginalStateError"),LBe=Symbol("RestoreUnstagedChangesError"),hpe=Symbol("TaskError");var e2=(0,QJn.default)("lint-staged:GitWorkflow"),dOo="MERGE_HEAD",pOo="MERGE_MODE",fOo="MERGE_MSG",VJn=/\x00/,WJn=(e,t=!0)=>e.reduce((r,s)=>{if(VJn.test(s)){let[a,o]=s.split(VJn);t&&r.push(o),r.push(a)}else r.push(s);return r},[]),PJn="lint-staged automatic backup",ear="lint-staged_unstaged.patch",IOo=["--binary","--unified=0","--no-color","--no-ext-diff","--src-prefix=a/","--dst-prefix=b/","--patch","--submodule=short"],OJn=["-v","--whitespace=nowarn","--recount","--unidiff-zero"],_pe=(e,t,r)=>{throw t.errors.add(nY),r&&t.errors.add(r),e},wpt=class{constructor({allowEmpty:t,gitConfigDir:r,topLevelDir:s,matchedFileChunks:a,diff:o,diffFilter:g}){this.execGit=(p,f={})=>MF(p,{...f,cwd:s}),this.deletedFiles=[],this.gitConfigDir=r,this.topLevelDir=s,this.diff=o,this.diffFilter=g,this.allowEmpty=t,this.matchedFileChunks=a,this.mergeHeadFilename=nQe.resolve(r,dOo),this.mergeModeFilename=nQe.resolve(r,pOo),this.mergeMsgFilename=nQe.resolve(r,fOo)}getHiddenFilepath(t){return nQe.resolve(this.gitConfigDir,`./${t}`)}async getBackupStash(t){let s=(await this.execGit(["stash","list"])).split(` +`).findIndex(a=>a.includes(PJn));if(s===-1)throw t.errors.add(vpt),new Error("lint-staged automatic backup is missing!");return String(s)}async getDeletedFiles(){e2("Getting deleted files...");let r=(await this.execGit(["ls-files","--deleted"])).split(` +`).filter(Boolean).map(s=>nQe.resolve(this.topLevelDir,s));return e2("Found deleted files:",r),r}async backupMergeStatus(){e2("Backing up merge state..."),await Promise.all([Ept(this.mergeHeadFilename).then(t=>this.mergeHeadBuffer=t),Ept(this.mergeModeFilename).then(t=>this.mergeModeBuffer=t),Ept(this.mergeMsgFilename).then(t=>this.mergeMsgBuffer=t)]),e2("Done backing up merge state!")}async restoreMergeStatus(t){e2("Restoring merge state...");try{await Promise.all([this.mergeHeadBuffer&&Bpt(this.mergeHeadFilename,this.mergeHeadBuffer),this.mergeModeBuffer&&Bpt(this.mergeModeFilename,this.mergeModeBuffer),this.mergeMsgBuffer&&Bpt(this.mergeMsgFilename,this.mergeMsgBuffer)]),e2("Done restoring merge state!")}catch(r){e2("Failed restoring merge state with error:"),e2(r),_pe(new Error("Merge state could not be restored due to an error!"),t,LJn)}}async getPartiallyStagedFiles(){e2("Getting partially staged files...");let r=(await this.execGit(["status","-z"])).split(/\x00(?=[ AMDRCU?!]{2} |$)/).filter(s=>{let[a,o]=s;return a!==" "&&o!==" "&&a!=="?"&&o!=="?"}).map(s=>s.substr(3)).filter(Boolean);return e2("Found partially staged files:",r),r.length?r:null}async prepare(t){try{if(e2("Backing up original state..."),this.partiallyStagedFiles=await this.getPartiallyStagedFiles(),this.partiallyStagedFiles){t.hasPartiallyStagedFiles=!0;let s=this.getHiddenFilepath(ear),a=WJn(this.partiallyStagedFiles);await this.execGit(["diff",...IOo,"--output",s,"--",...a])}else t.hasPartiallyStagedFiles=!1;if(!t.shouldBackup)return;await this.backupMergeStatus(),this.deletedFiles=await this.getDeletedFiles();let r=await this.execGit(["stash","create"]);await this.execGit(["stash","store","--quiet","--message",PJn,r]),e2("Done backing up original state!")}catch(r){_pe(r,t)}}async hideUnstagedChanges(t){try{let r=WJn(this.partiallyStagedFiles,!1);await this.execGit(["checkout","--force","--",...r])}catch(r){_pe(r,t,ZJn)}}async applyModifications(t){e2("Adding task modifications to index...");for(let s of this.matchedFileChunks)await this.execGit(["add","--",...s]);e2("Done adding task modifications to index!"),!await this.execGit(bpt(this.diff,this.diffFilter))&&!this.allowEmpty&&_pe(new Error("Prevented an empty git commit!"),t,Hie)}async restoreUnstagedChanges(t){e2("Restoring unstaged changes...");let r=this.getHiddenFilepath(ear);try{await this.execGit(["apply",...OJn,r])}catch(s){e2("Error while restoring changes:"),e2(s),e2("Retrying with 3-way merge");try{await this.execGit(["apply",...OJn,"--3way",r])}catch(a){e2("Error while restoring unstaged changes using 3-way merge:"),e2(a),_pe(new Error("Unstaged changes could not be restored due to a merge conflict!"),t,LBe)}}}async restoreOriginalState(t){try{e2("Restoring original state..."),await this.execGit(["reset","--hard","HEAD"]),await this.execGit(["stash","apply","--quiet","--index",await this.getBackupStash(t)]),await this.restoreMergeStatus(t),await Promise.all(this.deletedFiles.map(r=>zor(r))),await zor(this.getHiddenFilepath(ear)),e2("Done restoring original state!")}catch(r){_pe(r,t,Spt)}}async cleanup(t){try{e2("Dropping backup stash..."),await this.execGit(["stash","drop","--quiet",await this.getBackupStash(t)]),e2("Done dropping backup stash!")}catch(r){_pe(r,t)}}};var MJn=vt(kk(),1);import Tpt from"node:path";var COo=(0,MJn.default)("lint-staged:groupFilesByConfig"),HJn=async({configs:e,files:t,singleConfigMode:r})=>{COo("Grouping %d files by %d configurations",t.length,Object.keys(e).length);let s=new Set(t),a={};for(let[o,g]of Object.entries(e)){if(r){a[o]={config:g,files:t};break}let p=Tpt.normalize(Tpt.dirname(o)),f=B=>{let v=Tpt.relative(p,B);return v&&!v.startsWith("..")&&!Tpt.isAbsolute(v)},m=Object.keys(g).some(B=>B.startsWith("..")),y=new Set(m?s:void 0);m||s.forEach(B=>{f(B)&&y.add(B)}),y.forEach(B=>{s.delete(B)}),a[o]={config:g,files:Array.from(y)}}return a};var IUn=vt(kk(),1);var gUn=vt(kk(),1);function tar(e,t,r){var s=/([^\s'"]([^\s'"]*(['"])([^\3]*?)\3)+[^\s'"]*)|[^\s'"]+|(['"])([^\5]*?)\5/gi,a=e,o=[];t&&o.push(t),r&&o.push(r);var g;do g=s.exec(a),g!==null&&o.push(mOo(g[1],g[6],g[0]));while(g!==null);return o}function mOo(){for(var e=[],t=0;t({hasPartiallyStagedFiles:null,shouldBackup:null,shouldHidePartiallyStaged:!0,errors:new Set([]),events:new FOo,output:[],quiet:e}),iar=e=>e.hasPartiallyStagedFiles&&e.shouldHidePartiallyStaged,sUn=e=>{if(!e.shouldBackup)return!1;if(e.errors.has(nY))return Mie;if(e.errors.has(hpe))return Mor},oUn=e=>{if(e.errors.has(nY))return Mie;if(e.errors.has(hpe))return Mor},aUn=e=>e.shouldBackup&&(e.errors.has(hpe)||e.errors.has(Hie)||e.errors.has(LBe)),cUn=e=>{if(e.errors.has(nY)&&!e.errors.has(Hie)&&!e.errors.has(LBe))return Mie},lUn=e=>e.shouldBackup,uUn=e=>{if(e.errors.has(nY)&&!e.errors.has(Hie)&&!e.errors.has(LBe))return Mie;if(e.errors.has(Spt))return Mie};var sar="lint-staged:taskError",iQe=(0,gUn.default)("lint-staged:resolveTaskFn"),dUn=({code:e,killed:t,signal:r})=>t&&"KILLED"||r||e||"FAILED",pUn=(e,t,r,s=!1)=>{let{stderr:a,stdout:o}=t;if(!!a||!!o){let p=s?dp.redBright(`${AQ} ${e}:`):`${zOe} ${e}:`,f=[].concat(r.quiet?[]:["",p]).concat(a||[]).concat(o||[]);r.output.push(f.join(` +`))}else if(s){let p=dUn(t),f=dp.redBright(` +${AQ} ${e} failed without output (${p}).`);r.quiet||r.output.push(f)}},ZOo=async e=>{try{let t=await(0,AUn.default)(e.pid);for(let r of t)try{process.kill(r)}catch(s){iQe('Failed to kill process with pid "%d": %o',r,s)}}catch(t){iQe('Failed to kill process with pid "%d": %o',e.pid,t)}e.kill()},LOo=(e,t)=>{let r,s=async()=>{r=ZOo(t),await r};return e.events.on(sar,s,{once:!0}),async()=>{e.events.off(sar,s),await r}},VOo=(e,t,r)=>{r.errors.add(hpe),r.events.emit(sar,hpe),pUn(e,t,r,!0);let s=dUn(t);return new Error(`${dp.redBright(e)} ${dp.dim(`[${s}]`)}`)},fUn=({command:e,cwd:t=process.cwd(),files:r,topLevelDir:s,isFn:a,shell:o=!1,verbose:g=!1})=>{let[p,...f]=tar(e);iQe("cmd:",p),iQe("args:",f);let m={cwd:/^git(\.exe)?/i.test(p)?s:t,preferLocal:!0,reject:!1,shell:o,stdin:"ignore"};return iQe("execaOptions:",m),async(y=Npt())=>{let B=o?cQn(a?e:`${e} ${r.join(" ")}`,m):fz(p,a?f:f.concat(r),m),v=LOo(y,B),k=await B;if(await v(),k.failed||k.killed||k.signal!=null)throw VOo(e,k,y);g&&pUn(e,k,y)}};var WOo=(0,IUn.default)("lint-staged:makeCmdTasks"),CUn=async({commands:e,cwd:t,files:r,topLevelDir:s,shell:a,verbose:o})=>{WOo("Creating listr tasks for commands %o",e);let g=Array.isArray(e)?e:[e],p=[];for(let f of g){let m=typeof f=="function",y=m?await f([...r]):f,B=Array.isArray(y)?y:[y];for(let v of B){if(m&&typeof v!="string")throw new Error(qOe("[Function]","Function task should return a string or an array of strings",y));let k=fUn({command:v,cwd:t,files:r,topLevelDir:s,isFn:m,shell:a,verbose:o});p.push({title:v,command:v,task:k})}}return p};var mUn=vt(kk(),1);import oar from"node:path";var VBe=(0,mUn.default)("lint-staged:resolveGitRepo"),POo=async(e=process.cwd())=>{let t=MF(["rev-parse","--show-toplevel"],{cwd:e}),r=MF(["rev-parse","--absolute-git-dir"],{cwd:e}),[s,a]=await Promise.all([t,r]);return oar.relative(s,a)},hUn=async(e=process.cwd())=>{try{VBe("Resolving git repo from `%s`",e),VBe("Unset GIT_DIR (was `%s`)",process.env.GIT_DIR),delete process.env.GIT_DIR,VBe("Unset GIT_WORK_TREE (was `%s`)",process.env.GIT_WORK_TREE),delete process.env.GIT_WORK_TREE;let t=await MF(["rev-parse","--show-cdup"],{cwd:e}),r=Fk(oar.join(e,t));VBe("Resolved git repository top-level directory to be `%s`",r);let s=await POo(e),a=Fk(oar.join(r,s));return VBe("Resolved git config directory to be `%s`",a),{topLevelDir:r,gitConfigDir:a}}catch(t){return VBe("Failed to resolve git repo with error:",t),{error:t,topLevelDir:null,gitConfigDir:null}}};var B6n=vt(kk(),1);import E6n from"node:path";var d6n=vt(kk(),1),p6n=vt(i6n(),1);import dYo from"node:fs/promises";import qBe from"node:path";import{pathToFileURL as lYo}from"node:url";var Eft=e=>import(lYo(e)).then(t=>t.default);import{createRequire as uYo}from"node:module";function s6n(e){try{return uYo(import.meta.url).resolve(e)}catch{return e}}var Bft="lint-staged",vft="package.json",Qcr=["package.yaml","package.yml"],Sft=[vft,...Qcr,".lintstagedrc",".lintstagedrc.json",".lintstagedrc.yaml",".lintstagedrc.yml",".lintstagedrc.mjs",".lintstagedrc.js",".lintstagedrc.cjs","lint-staged.config.mjs","lint-staged.config.js","lint-staged.config.cjs"];var zBe=(0,d6n.default)("lint-staged:loadConfig"),pYo=(e,t)=>{let r=vft.includes(qBe.basename(e));try{let s=JSON.parse(t);return r?s[Bft]:s}catch(s){if(qBe.basename(e)===vft){zBe("Ignoring invalid package file `%s` with content:\n%s",e,t);return}throw s}},Ycr=(e,t)=>{let r=Qcr.includes(qBe.basename(e));try{let s=p6n.default.parse(t);return r?s[Bft]:s}catch(s){if(r){zBe("Ignoring invalid package file `%s` with content:\n%s",e,t);return}throw s}},f6n="noExt",I6n={".js":Eft,".json":pYo,".mjs":Eft,".cjs":Eft,".yaml":Ycr,".yml":Ycr,[f6n]:Ycr},fYo=async e=>{let t=qBe.resolve(e);return await(await dYo.readFile(t)).toString()},IYo=async e=>{e=qBe.resolve(e);let t=qBe.extname(e)||f6n,r=I6n[t],s=r.length>1?await fYo(e):void 0;return{config:await r(e,s),filepath:e}},Dft=async({configPath:e,cwd:t},r)=>{try{let s;if(e)zBe("Loading configuration from `%s`...",e),s=await IYo(s6n(e));else{zBe("Searching for configuration from `%s`...",t);let{lilconfig:g}=await Promise.resolve().then(()=>vt(A6n(),1));s=await g(Bft,{searchPlaces:Sft,loaders:I6n}).search(t)}if(!s)return{};let a=await s.config??null,o=s.filepath;return zBe("Successfully loaded config from `%s`:\n%O",o,a),{config:a,filepath:o}}catch(s){return zBe("Failed to load configuration from `%s` with error:\n",e,s),r.error(EJn(e)),{}}};var _6n=vt(kk(),1);import{inspect as yYo}from"node:util";var CYo=/(?{let t=`${e}`,r=null;for(;r=CYo.exec(e);){let s=r[0],a=s.replace(/{/,"").replace(/}/,"");t=t.replace(s,a)}return t},hYo=/{{[^}{]*}}/,_Yo=e=>{let t=`${e}`,r=hYo.exec(e)?.[0];if(r){let s=r.replace("{{","{").replace("}}","}");t=t.replace(r,s)}return t},C6n=(e,t)=>{let r=_Yo(mYo(e));return r!==e&&t.warn(dJn(e,r)),r};var Xcr=(0,_6n.default)("lint-staged:validateConfig"),m6n=e=>e&&typeof e=="object"&&!Array.isArray(e),h6n=new Map([["concurrent",e=>typeof e=="boolean"],["chunkSize",e=>typeof e=="number"],["globOptions",m6n],["linters",m6n],["ignore",e=>Array.isArray(e)],["subTaskConcurrency",e=>typeof e=="number"],["renderer",e=>typeof e=="string"],["relative",e=>typeof e=="boolean"]]),bYo=(e,t,r)=>{if(Xcr("Validating config from `%s`...",t),!e||typeof e!="object"&&typeof e!="function")throw kJn;if(typeof e=="function")return{"*":e};if(Object.entries(e).length===0)throw GJn;let s=[],a=Object.entries(e).reduce((o,[g,p])=>{if(h6n.has(g))return h6n.get(g)(p)&&s.push(qOe(g,"Advanced configuration has been deprecated.",p)),o;(!Array.isArray(p)||p.some(m=>typeof m!="string"&&typeof m!="function"))&&typeof p!="string"&&typeof p!="function"&&s.push(qOe(g,"Should be a string, a function, or an array of strings and functions.",p));let f=C6n(g,r);return{...o,[f]:p}},{});if(s.length){let o=s.join(` -`);throw r.error(Wor(t,o)),new Error(o)}return Pcr("Validated config from `%s`:",t),Pcr(o5o(e,{compact:!1})),a},kMe=(e,t,r)=>{try{return a5o(e,t,r)}catch(s){throw r.error(Wor(t,s)),s}};var _z=(0,I6n.default)("lint-staged:searchConfigs"),d6n=["ls-files","-z","--full-name","-t"],c5o=e=>Bft.includes(f6n.basename(e)),p6n=e=>e.split("/").length,l5o=(e,t)=>p6n(e)>p6n(t)?-1:1,u5o=e=>t=>t.startsWith(Nk(e)),C6n=async({configObject:e,configPath:t,cwd:r=process.cwd(),topLevelDir:s=r},a)=>{if(_z("Searching for configuration files..."),e)return _z("Using single direct configuration object..."),{"":kMe(e,"config object",a)};if(t){_z("Using single configuration path...");let{config:y,filepath:B}=await Nft({configPath:t},a);return y?{[t]:kMe(y,B,a)}:{}}let[o,g]=await Promise.all([PF(d6n,{cwd:s}).then(qOe),PF([...d6n,"--others","--exclude-standard"],{cwd:s}).then(qOe)]),p=[...o,...g].flatMap(y=>y.startsWith("S ")?[]:[y.replace(/^[HSMRCK?U] /,"")]).filter(c5o).map(y=>Nk(f6n.join(s,y))).filter(u5o(r)).sort(l5o);_z("Found possible config files:",p);let f=p.reduce((y,B)=>Object.assign(y,{[B]:null}),{});await Promise.all(Object.keys(f).map(y=>Nft({configPath:y},a).then(({config:B,filepath:v})=>{B&&(y!==v&&_z('Config file "%s" resolved to "%s"',y,v),f[y]=kMe(B,v,a))})));let m=Object.entries(f).filter(([,y])=>!!y).reduce((y,[B,v])=>({...y,[B]:v}),{});if(!Object.keys(m).length){_z('Could not find config files inside "%s"',r);let{config:y,filepath:B}=await Nft({cwd:r},a);y?(_z('Found parent configuration file from "%s"',B),m[B]=kMe(y,B,a)):_z('Could not find parent configuration files from "%s"',r)}return _z("Found %d config files",Object.keys(m).length),m};var FMe=(0,m6n.default)("lint-staged:runAll"),Rft=e=>Object.assign(new Error("lint-staged failed"),{ctx:e}),h6n=async({allowEmpty:e=!1,concurrent:t=!0,configObject:r,configPath:s,cwd:a,debug:o=!1,diff:g,diffFilter:p,maxArgLength:f,quiet:m=!1,relative:y=!1,shell:B=!1,stash:v=g===void 0,hidePartiallyStaged:G=v,verbose:T=!1},O=console)=>{FMe("Running all linter scripts...");let X=!!a;a=X?GMe.resolve(a):process.cwd(),FMe("Using working directory `%s`",a);let U=wpt({quiet:m}),{topLevelDir:le,gitConfigDir:ae}=await gUn(a);if(!le)throw m||U.output.push(nJn),U.errors.add(wJn),Rft(U);let ge=await PF(["log","-1"],{cwd:le}).then(()=>!0).catch(()=>!1);U.shouldBackup=ge&&v,!U.shouldBackup&&!m&&O.warn(lJn(ge,g)),U.shouldHidePartiallyStaged=G,!U.shouldHidePartiallyStaged&&!m&&O.warn(uJn(ge&&v,g));let fe=await EJn({cwd:le,diff:g,diffFilter:p});if(!fe)throw m||U.output.push(iJn),U.errors.add(Xor),Rft(U,Xor);if(FMe(`Loaded list of staged files in git: -%O`,fe),fe.length===0)return m||U.output.push(aJn),U;let pe=await C6n({configObject:r,configPath:s,cwd:a,topLevelDir:le},O),he=Object.keys(pe).length;if(he===0)throw U.errors.add(eMe),Rft(U,eMe);let be=await ZJn({configs:pe,files:fe,singleConfigMode:r||s!==void 0}),Te=he>1,ke=!1,x={ctx:U,exitOnError:!1,registerSignalListeners:!1,...bJn({debug:o,quiet:m},O)},et=0,Ue=[],Je=new Set;for(let[er,{config:Ur,files:Ot}]of Object.entries(be)){let dr=er?Nk(GMe.relative(a,er)):"Config object",Ar=Mor({baseDir:le,files:Ot,maxArgLength:f,relative:y}),or=Te&&!X?GMe.dirname(er):a,Fr=Ar.length;Fr>1&&FMe("Chunked staged files from `%s` into %d part",er,Fr);for(let[$r,Or]of Ar.entries()){let In=await Promise.all(_Jn({config:Ur,cwd:or,files:Or,relative:y}).map(Br=>lUn({commands:Br.commands,cwd:or,files:Br.fileList,topLevelDir:le,shell:B,verbose:T}).then(tr=>{Br.fileList.forEach(Gn=>{let we=GMe.isAbsolute(Gn)?Gn:Nk(GMe.join(or,Gn));Je.add(we)}),ke=ke||tr.some(Gn=>Gn.command==="git add");let gn=Br.fileList.length;return{title:`${Br.pattern}${Ap.dim(` \u2014 ${gn} ${gn===1?"file":"files"}`)}`,task:async(Gn,we)=>we.newListr(tr,{concurrent:!1,exitOnError:!0}),skip:()=>gn===0?`${Br.pattern}${Ap.dim(" \u2014 no files")}`:!1}})));et+=In.length,Ue.push({title:`${dr}${Ap.dim(` \u2014 ${Or.length} ${Or.length>1?"files":"file"}`)}`+(Fr>1?Ap.dim(` (chunk ${$r+1}/${Fr})...`):""),task:(Br,tr)=>tr.newListr(In,{concurrent:t,exitOnError:!0}),skip:()=>U.errors.has(t5)?AJn:In.every(Br=>Br.skip())?`${dr}${Ap.dim(" \u2014 no tasks to run")}`:!1})}}if(ke&&!m&&O.warn(gJn),Ue.every(er=>er.skip()))return m||U.output.push(cJn),U;let Xe=Mor({baseDir:a,files:Array.from(Je),maxArgLength:f,relative:!1}),ft=new vpt({allowEmpty:e,gitConfigDir:ae,topLevelDir:le,matchedFileChunks:Xe,diff:g,diffFilter:p}),Gt=new hpt([{title:"Preparing lint-staged...",task:er=>ft.prepare(er)},{title:"Hiding unstaged changes to partially staged files...",task:er=>ft.hideUnstagedChanges(er),enabled:qor},{title:`Running tasks for ${g?"changed":"staged"} files...`,task:(er,Ur)=>Ur.newListr(Ue,{concurrent:t}),skip:()=>Ue.every(er=>er.skip())},{title:"Applying modifications from tasks...",task:er=>ft.applyModifications(er),skip:zJn},{title:"Restoring unstaged changes to partially staged files...",task:er=>ft.restoreUnstagedChanges(er),enabled:qor,skip:qJn},{title:"Reverting to original state because of errors...",task:er=>ft.restoreOriginalState(er),enabled:$Jn,skip:eUn},{title:"Cleaning up temporary files...",task:er=>ft.cleanup(er),enabled:tUn,skip:rUn}],x);if(FMe("Set max event listeners to the number of tasks: %i",et),U.events.setMaxListeners(et),await Gt.run(),U.errors.size>0)throw Rft(U);return U};var b6n=xt(wk(),1);import{constants as _6n}from"node:fs";import y6n from"node:fs/promises";import g5o from"node:path";var Dft=(0,b6n.default)("lint-staged:validateOptions"),E6n=async(e={},t)=>{if(Dft("Validating options..."),typeof e.cwd=="string")try{let r=g5o.resolve(e.cwd);await y6n.access(r,_6n.F_OK)}catch(r){throw Dft("Failed to validate options: %o",e),t.error(Vor("cwd",e.cwd,r.message)),Jor}if(typeof e.shell=="string")try{await y6n.access(e.shell,_6n.X_OK)}catch(r){throw Dft("Failed to validate options: %o",e),t.error(Vor("shell",e.shell,r.message)),Jor}Dft("Validated options: %o",e)};var Ocr=(0,B6n.default)("lint-staged"),A5o=()=>{switch(process.platform){case"darwin":return 262144;case"win32":return 8191;default:return 131072}},d5o=async({allowEmpty:e=!1,concurrent:t=!0,config:r,configPath:s,cwd:a,debug:o=!1,diff:g,diffFilter:p,maxArgLength:f=A5o()/2,quiet:m=!1,relative:y=!1,shell:B=!1,stash:v=g===void 0,hidePartiallyStaged:G=v,verbose:T=!1}={},O=console)=>{let X=await PF(["version","--build-options"],{cwd:a});Ocr("%s",X);let U={allowEmpty:e,concurrent:t,configObject:r,configPath:s,cwd:a,debug:o,diff:g,diffFilter:p,maxArgLength:f,quiet:m,relative:y,shell:B,stash:v,hidePartiallyStaged:G,verbose:T};await E6n(U,O),Ocr("Unset GIT_LITERAL_PATHSPECS (was `%s`)",process.env.GIT_LITERAL_PATHSPECS),delete process.env.GIT_LITERAL_PATHSPECS;try{let le=await h6n(U,O);return Ocr("Tasks were executed successfully!"),Por(le,O),!0}catch(le){if(le?.ctx?.errors){let{ctx:ae}=le;return ae.errors.has(eMe)?O.error(oJn):ae.errors.has(Oie)?O.warn(dJn):ae.errors.has(t5)&&!ae.errors.has(Ept)&&(O.error(Pie),ae.shouldBackup&&O.error(pJn)),Por(ae,O),!1}throw le}},v6n=d5o;var p5o={"*.{yml,yaml,json,graphql,md}":"yarn format","*.{js,mjs,cjs,jsx,ts,tsx}":["yarn format","yarn lint"],"*.{ts,tsx}":["yarn typecheck"],"*.{tsx,ts}":["yarn test unit"]},xft=class extends S6n.BaseCommand{static paths=[["commit","staged"]];args=ed.Rest({required:0});async execute(){try{return await v6n({config:p5o,debug:!1})?0:1}catch{return 1}}};var w6n={commands:[qdt,Bdt,xft]};var Qcr={};jf(Qcr,{SetVersionCommand:()=>ZMe,default:()=>R6n});var T6n=xt(nl(),1),N6n=xt(Bn(),1);Fl();var ZMe=class extends T6n.BaseCommand{static paths=[["set","version","atls"]];static usage=Cb.Usage({description:"lock the Yarn version used by the project",details:"\n This command will get latest Atlantis bundle from [Atlantis Raijin repo](https://github.com/atls/raijin) and bump `@atls/code-runtime` dependency\n "});async execute(){let t=["set","version"];t.push("https://raw.githubusercontent.com/atls/raijin/master/yarn/cli/dist/yarn.mjs");let r=await this.cli.run(t),s=["up","@atls/code-runtime"],a=await this.cli.run(s),o=await N6n.Configuration.find(this.context.cwd,this.context.plugins);return await o.triggerHook(g=>g.afterYarnVersionSet,o,this.context),a&&r}};var R6n={commands:[ZMe]};var dur={};jf(dur,{WorkspaceExportCommand:()=>uQe,default:()=>Uzn});var Mzn=xt(nl(),1),Qzn=xt(nl(),1),Yzn=xt(Bn(),1),Hzn=xt(Bn(),1),Xzn=xt(Bn(),1),Jzn=xt(Bn(),1);Fl();var fve={};jf(fve,{pack:()=>pKo});var Aur=xt(Bn(),1),Zzn=xt(Bn(),1),Lzn=xt(Bn(),1),Vzn=xt(Ro(),1),Wzn=xt(Bn(),1),Pzn=xt(Ro(),1),Ozn=xt(vpe(),1);var Ijn=xt(Bn(),1),Cjn=xt(Bn(),1),mjn=xt(Ro(),1),hjn=xt(Ro(),1),_jn=xt(Ro(),1),Rlr=xt(Bn(),1),Dlr=xt(Ro(),1),yjn=xt(Ro(),1),rIt=class e extends Ijn.Cache{nodeLinker;parentCache;parentMirror=new Map;workspaceMutexes=new Map;static async find(t,r){let s=t.get("nodeLinker"),a=new e(t.get("cacheFolder"),{configuration:t,nodeLinker:s,parentCache:r});return await a.setup(),a}constructor(t,{configuration:r,nodeLinker:s,parentCache:a}){super(t,{configuration:r}),this.nodeLinker=s,this.parentCache=a}getLocatorMirrorPath(t){return this.parentMirror.get(Rlr.structUtils.slugifyLocator(t))??null}async setup(){await super.setup();let t=await yjn.xfs.readdirPromise(this.parentCache.cwd,{withFileTypes:!0});for(let r of t){let s;r.isDirectory()||!(s=r.name.match(/^(.*)-[a-f\d]+\.zip$/i))||this.parentMirror.set(s[1],Dlr.ppath.join(this.parentCache.cwd,r.name))}}async fetchPackageFromCache(t,r,{loader:s}){let a=new hjn.NodeFS,o=async()=>{let g=Dlr.ppath.resolve(this.cwd,"../workspaces",Rlr.structUtils.stringifyIdent(t)),f=(async()=>{if(!await a.existsPromise(g)){let y=await s();await a.copyPromise(g,_jn.PortablePath.root,{baseFs:y}),y.discardAndClose()}return g})();this.workspaceMutexes.set(t.locatorHash,f);try{return await f}finally{this.workspaceMutexes.delete(t.locatorHash)}};if(t.reference.startsWith(Cjn.WorkspaceResolver.protocol)){for(let p;p=this.workspaceMutexes.get(t.locatorHash);)await p;let g=await o();return[new mjn.JailFS(g,{baseFs:a}),()=>{},null]}else return await super.fetchPackageFromCache(t,r,{loader:s})}};var Rzn=xt(Bn(),1),Dzn=xt(Bn(),1);var xzn=xt(Bn(),1),uur=xt(Ro(),1),kpe=xt(Ro(),1),gur=xt(vpe(),1),dKo=xt(Ezn(),1);var aur=xt(Bn(),1),pIt=class{resolvers;constructor(t){this.resolvers=t.filter(r=>r)}supportsDescriptor(t,r){return!!this.tryResolverByDescriptor(t,r)}supportsLocator(t,r){return!!this.tryResolverByLocator(t,r)}shouldPersistResolution(t,r){return this.getResolverByLocator(t,r).shouldPersistResolution(t,r)}bindDescriptor(t,r,s){return this.getResolverByDescriptor(t,s).bindDescriptor(t,r,s)}getResolutionDependencies(t,r){return this.getResolverByDescriptor(t,r).getResolutionDependencies(t,r)}async getCandidates(t,r,s){return await this.getResolverByDescriptor(t,s).getCandidates(t,r,s)}async getSatisfying(t,r,s,a){return this.getResolverByDescriptor(t,a).getSatisfying(t,r,s,a)}async resolve(t,r){return await this.getResolverByLocator(t,r).resolve(t,r)}tryResolverByDescriptor(t,r){let s=this.resolvers.find(a=>a.supportsDescriptor(t,r));return s||null}getResolverByDescriptor(t,r){let s=this.resolvers.find(a=>a.supportsDescriptor(t,r));if(!s)throw new Error(`${aur.structUtils.prettyDescriptor(r.project.configuration,t)} isn't supported by any available resolver`);return s}tryResolverByLocator(t,r){let s=this.resolvers.find(a=>a.supportsLocator(t,r));return s||null}getResolverByLocator(t,r){let s=this.resolvers.find(a=>a.supportsLocator(t,r));if(!s)throw new Error(`${aur.structUtils.prettyLocator(r.project.configuration,t)} isn't supported by any available resolver`);return s}};var vzn=xt(Bn(),1),fIt=xt(Bn(),1),Szn=xt(Lh(),1),Bzn=/^(?!v)[a-z0-9._-]+$/i,IIt=class{supportsDescriptor(t,r){return!!(vzn.semverUtils.validRange(t.range)||Bzn.test(t.range))}supportsLocator(t,r){return!!(Szn.default.valid(t.reference)||Bzn.test(t.reference))}shouldPersistResolution(t,r){return r.resolver.shouldPersistResolution(this.forwardLocator(t,r),r)}bindDescriptor(t,r,s){return s.resolver.bindDescriptor(this.forwardDescriptor(t,s),r,s)}getResolutionDependencies(t,r){return r.resolver.getResolutionDependencies(this.forwardDescriptor(t,r),r)}async getCandidates(t,r,s){return s.resolver.getCandidates(this.forwardDescriptor(t,s),r,s)}async getSatisfying(t,r,s,a){return a.resolver.getSatisfying(this.forwardDescriptor(t,a),r,s,a)}async resolve(t,r){let s=await r.resolver.resolve(this.forwardLocator(t,r),r);return fIt.structUtils.renamePackage(s,t)}forwardDescriptor(t,r){return fIt.structUtils.makeDescriptor(t,`${r.project.configuration.get("defaultProtocol")}${t.range}`)}forwardLocator(t,r){return fIt.structUtils.makeLocator(t,`${r.project.configuration.get("defaultProtocol")}${t.reference}`)}};var CIt=class e{static protocol="virtual:";static isVirtualDescriptor(t){return!!t.range.startsWith(e.protocol)}static isVirtualLocator(t){return!!t.reference.startsWith(e.protocol)}supportsDescriptor(t,r){return e.isVirtualDescriptor(t)}supportsLocator(t,r){return e.isVirtualLocator(t)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,s){throw new Error('Assertion failed: calling "bindDescriptor" on a virtual descriptor is unsupported')}getResolutionDependencies(t,r){throw new Error('Assertion failed: calling "getResolutionDependencies" on a virtual descriptor is unsupported')}async getCandidates(t,r,s){throw new Error('Assertion failed: calling "getCandidates" on a virtual descriptor is unsupported')}async getSatisfying(t,r,s,a){throw new Error('Assertion failed: calling "getSatisfying" on a virtual descriptor is unsupported')}async resolve(t,r){throw new Error('Assertion failed: calling "resolve" on a virtual locator is unsupported')}};var cur=xt(Bn(),1),wzn=xt(Bn(),1),Tzn=xt(Ro(),1);var mIt=class extends wzn.WorkspaceFetcher{constructor(r){super();this.originalProject=r}getLocalPath(r,s){return super.getLocalPath(r,this.rewriteOpts(r,s))}async fetch(r,s){if(r.reference.slice(cur.WorkspaceResolver.protocol.length)===".")return await super.fetch(r,s);let a=s.checksums.get(r.locatorHash)||null,[o,g]=await s.cache.fetchPackageFromCache(r,a,{loader:()=>this.packWorkspace(r)});return{packageFs:o,releaseFs:g,localPath:this.getLocalPath(r,s),prefixPath:Tzn.PortablePath.dot}}async packWorkspace(r){let s=this.originalProject.getWorkspaceByLocator(r);return await Nzn(s,{compressionLevel:this.originalProject.configuration.get("compressionLevel"),stripComponents:1})}rewriteOpts(r,s){return r.reference.slice(cur.WorkspaceResolver.protocol.length)==="."?s:{...s,project:this.originalProject}}};var lur=xt(Bn(),1),hIt=xt(Bn(),1),_It=class extends hIt.WorkspaceResolver{constructor(r){super();this.originalProject=r}supportsDescriptor(r,s){return super.supportsDescriptor(r,this.rewriteOpts(r,s))}supportsLocator(r,s){return super.supportsLocator(r,this.rewriteOpts(r,s))}shouldPersistResolution(r,s){return super.shouldPersistResolution(r,this.rewriteOpts(r,s))}bindDescriptor(r,s,a){return super.bindDescriptor(r,s,this.rewriteOpts(r,a))}getResolutionDependencies(r,s){return super.getResolutionDependencies(r,this.rewriteOpts(r,s))}async getCandidates(r,s,a){return await super.getCandidates(r,s,this.rewriteOpts(r,a))}async getSatisfying(r,s,a){return await super.getSatisfying(r,s,this.rewriteOpts(r,a))}async resolve(r,s){let a=r.reference.slice(hIt.WorkspaceResolver.protocol.length),{project:o}=this.rewriteOpts(r,s),g=o.getWorkspaceByCwd(a);return{...r,version:g.manifest.version||"0.0.0",languageName:"unknown",linkType:a==="."?lur.LinkType.SOFT:lur.LinkType.HARD,dependencies:g.manifest.dependencies,peerDependencies:g.manifest.peerDependencies,dependenciesMeta:g.manifest.dependenciesMeta,peerDependenciesMeta:g.manifest.peerDependenciesMeta,bin:g.manifest.bin}}rewriteOpts(r,s){return("descriptorHash"in r?r.range:r.reference).slice(hIt.WorkspaceResolver.protocol.length)==="."?s:{...s,project:this.originalProject}}};var kzn=e=>{let t=[];for(let r of e.configuration.plugins.values())for(let s of r.fetchers||[])t.push(new s);return new Dzn.MultiFetcher([new Rzn.VirtualFetcher,new mIt(e),...t])},Gzn=e=>{let t=[];for(let r of e.configuration.plugins.values())for(let s of r.resolvers||[])t.push(new s);return new pIt([new CIt,new _It(e),new IIt,...t])};var Fzn=async e=>{let t=await kpe.xfs.mktempPromise(),r=await gur.packUtils.genPackStream(e),s=uur.ppath.join(t,"package.tgz"),a=kpe.xfs.createWriteStream(s);return r.pipe(a),await new Promise(o=>{a.on("finish",o)}),kpe.xfs.readFilePromise(s)},Nzn=async(e,t)=>await kpe.xfs.mktempPromise(async r=>{let s=await gur.packUtils.genPackStream(e),a=uur.ppath.join(r,"package.tgz"),o=kpe.xfs.createWriteStream(a);s.pipe(o),await new Promise(p=>{o.on("finish",p)});let g=await kpe.xfs.readFilePromise(a);return await xzn.tgzUtils.convertToZip(g,t)});var pKo=async(e,t,r,s,a)=>{process.env.IMAGE_PACK=!0;let o=await Lzn.Cache.find(e,{immutable:!0});await t.restoreInstallState(),await Ozn.packUtils.prepareForPack(r,{report:s},async()=>{r.manifest.devDependencies.clear();let g=new Vzn.CwdFS(a),p=await Fzn(r);await Wzn.tgzUtils.extractArchiveTo(p,g,{stripComponents:1});let f=Aur.Configuration.create(a,a,e.plugins);f.values.set("compressionLevel",t.configuration.get("compressionLevel")),f.values.set("enableGlobalCache",!1),f.values.set("enableMirror",!1),f.values.set("globalFolder",e.get("globalFolder")),f.values.set("packageExtensions",e.get("packageExtensions")),f.values.set("pnpEnableEsmLoader",e.get("pnpEnableEsmLoader")),f.values.set("cacheFolder",Pzn.ppath.join(a,".yarn/packages")),f.values.set("preferAggregateCacheInfo",!0),await Aur.Configuration.updateConfiguration(a,{cacheFolder:".yarn/packages",compressionLevel:f.get("compressionLevel"),enableGlobalCache:f.get("enableGlobalCache"),enableNetwork:f.get("enableNetwork"),enableMirror:f.get("enableMirror"),packageExtensions:f.get("packageExtensions"),nodeLinker:t.configuration.get("nodeLinker")}),await f.getPackageExtensions();let{project:m,workspace:y}=await Zzn.Project.find(f,a);if(!y)throw new Error("Workspace not found");y.manifest.dependencies=r.manifest.dependencies,y.manifest.resolutions=t.topLevelWorkspace.manifest.resolutions,y.manifest.devDependencies.clear(),await m.install({cache:await rIt.find(f,o),fetcher:kzn(t),resolver:Gzn(t),persistProject:!0,report:s})})};var fKo=xt(vpe(),1);var uQe=class extends Mzn.BaseCommand{static paths=[["export"]];destination=ed.String("-d,--destination",{required:!0});async execute(){let t=await Yzn.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await Hzn.Project.find(t,this.context.cwd);if(!s)throw new Qzn.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await Xzn.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{await fve.pack(t,r,s,o,this.destination),o.reportInfo(null,`Workspace ${s.manifest.name?Jzn.structUtils.prettyIdent(t,s.manifest.name):s.relativeCwd} exported to ${this.destination}`)})).exitCode()}};var Uzn={commands:[uQe]};var Jpr={};jf(Jpr,{FormatCommand:()=>eHe,default:()=>Qui});var Wui=xt(nl(),1),Pui=xt(Bn(),1),Oui=xt(Bn(),1);Fl();var Mui=xt(Dc(),1),Xpr=xt(Fs(),1);var TIt=xt(Dc(),1),cqn=xt(Dc(),1),Zpe=xt(Fs(),1);var yIt=class{constructor(t){this.frames=t}get topFrame(){return this.frames.find(t=>t.file)}};var Kzn=xt(kct(),1);var jzn=e=>{let t=e.split(` -`),r=process.cwd(),s=new Kzn.default({cwd:r}),a=t.reduce((o,g)=>{let p=s.parseLine(g.trim());return p&&o.push(p),o},[]);return new yIt(a)};var aqn=xt(Dc(),1),mve=xt(Dc(),1);var SIt=xt(Fs(),1),vz=xt(Fs(),1);var iqn=xt(Dc(),1),vIt=xt(Fs(),1);import{basename as mKo}from"node:path";import{isAbsolute as hKo}from"node:path";import{relative as _Ko}from"node:path";var fur=xt(Fs(),1),BIt=xt(Dc(),1),Fpe=xt(uBe(),1);var oy="\x1B[",gQe="\x1B]",Ive="\x07",bIt=";",zzn=process.env.TERM_PROGRAM==="Apple_Terminal",ih={};ih.cursorTo=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");return typeof t!="number"?oy+(e+1)+"G":oy+(t+1)+";"+(e+1)+"H"};ih.cursorMove=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");let r="";return e<0?r+=oy+-e+"D":e>0&&(r+=oy+e+"C"),t<0?r+=oy+-t+"A":t>0&&(r+=oy+t+"B"),r};ih.cursorUp=(e=1)=>oy+e+"A";ih.cursorDown=(e=1)=>oy+e+"B";ih.cursorForward=(e=1)=>oy+e+"C";ih.cursorBackward=(e=1)=>oy+e+"D";ih.cursorLeft=oy+"G";ih.cursorSavePosition=zzn?"\x1B7":oy+"s";ih.cursorRestorePosition=zzn?"\x1B8":oy+"u";ih.cursorGetPosition=oy+"6n";ih.cursorNextLine=oy+"E";ih.cursorPrevLine=oy+"F";ih.cursorHide=oy+"?25l";ih.cursorShow=oy+"?25h";ih.eraseLines=e=>{let t="";for(let r=0;r[gQe,"8",bIt,bIt,t,Ive,e,gQe,"8",bIt,bIt,Ive].join("");ih.image=(e,t={})=>{let r=`${gQe}1337;File=inline=1`;return t.width&&(r+=`;width=${t.width}`),t.height&&(r+=`;height=${t.height}`),t.preserveAspectRatio===!1&&(r+=";preserveAspectRatio=0"),r+":"+e.toString("base64")+Ive};ih.iTerm={setCwd:(e=process.cwd())=>`${gQe}50;CurrentDir=${e}${Ive}`,annotation:(e,t={})=>{let r=`${gQe}1337;`,s=typeof t.x<"u",a=typeof t.y<"u";if((s||a)&&!(s&&a&&typeof t.length<"u"))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return e=e.replace(/\|/g,""),r+=t.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",t.length>0?r+=(s?[e,t.length,t.x,t.y]:[t.length,e]).join("|"):r+=e,r+Ive}};var qzn=ih;var EIt=xt(tqn(),1);function Gpe(e,t,{target:r="stdout",...s}={}){return EIt.default[r]?qzn.link(e,t):s.fallback===!1?e:typeof s.fallback=="function"?s.fallback(e,t):`${e} (\u200B${t}\u200B)`}Gpe.isSupported=EIt.default.stdout;Gpe.stderr=(e,t,r={})=>Gpe(e,t,{target:"stderr",...r});Gpe.stderr.isSupported=EIt.default.stderr;var rqn=({children:e,url:t,fallback:r=!0})=>fur.default.createElement(BIt.Transform,{transform:s=>Gpe(s,t,{fallback:r})},fur.default.createElement(BIt.Text,null,e));rqn.propTypes={children:Fpe.default.oneOfType([Fpe.default.arrayOf(Fpe.default.node),Fpe.default.node]).isRequired,url:Fpe.default.string.isRequired,fallback:Fpe.default.bool};var nqn=rqn;var Iur=xt(Fs(),1),sqn=({url:e,cwd:t=process.cwd(),column:r=0,line:s=0})=>{let a=(0,vIt.useMemo)(()=>{try{return new URL(e).pathname}catch{return e}},[e]),o=(0,vIt.useMemo)(()=>hKo(a)?_Ko(t,a):a,[a]),g=(0,vIt.useMemo)(()=>o.includes("/node_modules/")?mKo(o):o,[o]);return Iur.default.createElement(nqn,{url:e},Iur.default.createElement(iqn.Text,{color:"gray"},g,":",s,":",r))};import{readFileSync as yKo}from"node:fs";import{fileURLToPath as bKo}from"node:url";var oqn=e=>{if(e.sourceMap)return e.sourceMap.payload.sourcesContent[0];if(e.file)try{return yKo(e.file.startsWith("file:/")?bKo(new URL(e.file)):e.file,"utf-8")}catch{return null}return null};var wIt=({children:e,cwd:t})=>{let r=(0,SIt.useMemo)(()=>jzn(e),[e]),s=(0,SIt.useMemo)(()=>r.topFrame||r.frames.at(0),[r]),a=(0,SIt.useMemo)(()=>s?oqn(s):null,[s]);return r?vz.default.createElement(mve.Box,{flexDirection:"column",flexGrow:1},!!a&&!!r.topFrame?.line&&vz.default.createElement(mve.Box,{marginBottom:1},vz.default.createElement(MO,{line:r.topFrame.line,column:r.topFrame.column},a)),r.frames.map(o=>vz.default.createElement(mve.Box,{key:SW(),flexDirection:"row"},vz.default.createElement(mve.Box,{flexBasis:"30%"},vz.default.createElement(aqn.Text,null,o.function)),vz.default.createElement(mve.Box,{flexBasis:"70%",justifyContent:"flex-end"},!!o.file&&vz.default.createElement(sqn,{cwd:t,url:o.file,line:o.line,column:o.column}))))):null};var EKo=({children:e})=>e?Zpe.default.createElement(TIt.Box,{marginBottom:1},Zpe.default.createElement(cqn.Text,{bold:!0,color:"red"},e)):null,WD=({error:e,cwd:t})=>Zpe.default.createElement(TIt.Box,{flexDirection:"column",borderStyle:"single",borderColor:"gray",paddingX:2,paddingY:1},Zpe.default.createElement(EKo,null,e.message),!!e.stack&&Zpe.default.createElement(TIt.Box,null,Zpe.default.createElement(wIt,{cwd:t},e.stack)));var hQe=xt(Dc(),1),Uqn=xt(Fs(),1),Kqn=xt(Fs(),1),Wpe=xt(Fs(),1);var mur=xt(Dc(),1),hur=xt(Fs(),1);var dQe=xt(Fs(),1),qKo=xt(Cur(),1);var Aqn={info:"blue",success:"green",error:"red",warning:"yellow"},LKo={styles:{container:({variant:e})=>({flexGrow:1,borderStyle:"round",borderColor:Aqn[e],gap:1,paddingX:1}),iconContainer:()=>({flexShrink:0}),icon:({variant:e})=>({color:Aqn[e]}),content:()=>({flexShrink:1,flexGrow:1,minWidth:0,flexDirection:"column",gap:1}),title:()=>({bold:!0}),message:()=>({})},config({variant:e}){let t;return e==="info"&&(t=yI.info),e==="success"&&(t=yI.tick),e==="error"&&(t=yI.cross),e==="warning"&&(t=yI.warning),{icon:t}}},dqn=LKo;var VKo={styles:{container:({color:e})=>({backgroundColor:e}),label:()=>({color:"black"})}},pqn=VKo;var WKo={styles:{input:({isFocused:e})=>({dimColor:!e})}},fqn=WKo;var PKo={styles:{container:()=>({flexDirection:"column"}),option:({isFocused:e})=>({gap:1,paddingLeft:e?0:2}),selectedIndicator:()=>({color:"green"}),focusIndicator:()=>({color:"blue"}),label({isFocused:e,isSelected:t}){let r;return t&&(r="green"),e&&(r="blue"),{color:r}},highlightedText:()=>({bold:!0})}},Iqn=PKo;var OKo={styles:{list:()=>({flexDirection:"column"}),listItem:()=>({gap:1}),marker:()=>({dimColor:!0}),content:()=>({flexDirection:"column"})}},Cqn=OKo;var MKo={styles:{container:()=>({flexGrow:1,minWidth:0}),completed:()=>({color:"magenta"}),remaining:()=>({dimColor:!0})},config:()=>({completedCharacter:yI.square,remainingCharacter:yI.squareLightShade})},mqn=MKo;var QKo={styles:{container:()=>({flexDirection:"column"}),option:({isFocused:e})=>({gap:1,paddingLeft:e?0:2}),selectedIndicator:()=>({color:"green"}),focusIndicator:()=>({color:"blue"}),label({isFocused:e,isSelected:t}){let r;return t&&(r="green"),e&&(r="blue"),{color:r}},highlightedText:()=>({bold:!0})}},hqn=QKo;var YKo={styles:{container:()=>({gap:1}),frame:()=>({color:"blue"}),label:()=>({})}},_qn=YKo;var HKo={success:"green",error:"red",warning:"yellow",info:"blue"},XKo={success:yI.tick,error:yI.cross,warning:yI.warning,info:yI.info},JKo={styles:{container:()=>({gap:1}),iconContainer:()=>({flexShrink:0}),icon:({variant:e})=>({color:HKo[e]}),message:()=>({})},config:({variant:e})=>({icon:XKo[e]})},yqn=JKo;var UKo={styles:{list:()=>({flexDirection:"column"}),listItem:()=>({gap:1}),marker:()=>({dimColor:!0}),content:()=>({flexDirection:"column"})},config:()=>({marker:yI.line})},bqn=UKo;var KKo={styles:{value:()=>({})}},Eqn=KKo;var jKo={styles:{value:()=>({})}},Bqn=jKo;var zKo={styles:{value:()=>({})}},vqn=zKo;var $Ko={components:{Alert:dqn,Badge:pqn,ConfirmInput:fqn,MultiSelect:Iqn,OrderedList:Cqn,ProgressBar:mqn,Select:hqn,Spinner:_qn,StatusMessage:yqn,UnorderedList:bqn,TextInput:Eqn,EmailInput:Bqn,PasswordInput:vqn}},e8o=(0,dQe.createContext)($Ko);var uB=e=>(0,dQe.useContext)(e8o).components[e];function Dk({children:e,color:t="magenta"}){let{styles:r}=uB("Badge"),s=e;return typeof e=="string"&&(s=e.toUpperCase()),hur.default.createElement(mur.Text,{...r.container({color:t})}," ",hur.default.createElement(mur.Text,{...r.label()},s)," ")}var t8o=xt(Fs(),1),Sqn=xt(Dc(),1);var Rqn=xt(Dc(),1),Sz=xt(Fs(),1);var fQe=xt(Dc(),1),_ve=xt(Fs(),1);var wqn=xt(Fs(),1);var pQe=yI.line;var NIt=(0,wqn.createContext)({marker:pQe});function Tqn({children:e}){let{marker:t}=(0,_ve.useContext)(NIt),{styles:r}=uB("UnorderedList");return _ve.default.createElement(fQe.Box,{...r.listItem()},_ve.default.createElement(fQe.Text,{...r.marker()},t),_ve.default.createElement(fQe.Box,{...r.content()},e))}var Nqn=xt(Fs(),1),_ur=(0,Nqn.createContext)({depth:0});function r8o({children:e}){let{depth:t}=(0,Sz.useContext)(_ur),{styles:r,config:s}=uB("UnorderedList"),a=(0,Sz.useMemo)(()=>({depth:t+1}),[t]),o=(0,Sz.useMemo)(()=>{let{marker:g}=s();return typeof g=="string"?{marker:g}:Array.isArray(g)?{marker:g[t]??g.at(-1)??pQe}:{marker:pQe}},[s,t]);return Sz.default.createElement(_ur.Provider,{value:a},Sz.default.createElement(NIt.Provider,{value:o},Sz.default.createElement(Rqn.Box,{...r.list()},e)))}r8o.Item=Tqn;var o8o=xt(Fs(),1),xqn=xt(Dc(),1);var n8o=xt(Fs(),1),Dqn=xt(Dc(),1);var IQe=xt(Fs(),1);var s8o=xt(Dc(),1);var Lpe=xt(Fs(),1),Vpe=xt(Dc(),1);function fM({value:e}){let[t,r]=(0,Lpe.useState)(0),[s,a]=(0,Lpe.useState)(null);if(s){let y=(0,Vpe.measureElement)(s);y.width!==t&&r(y.width)}let o=Math.min(100,Math.max(0,e)),g=Math.round(o/100*t),p=t-g,{styles:f,config:m}=uB("ProgressBar");return Lpe.default.createElement(Vpe.Box,{ref:a,...f.container()},g>0&&Lpe.default.createElement(Vpe.Text,{...f.completed()},m().completedCharacter.repeat(g)),p>0&&Lpe.default.createElement(Vpe.Text,{...f.remaining()},m().remainingCharacter.repeat(p)))}var l8o=xt(Fs(),1),Gqn=xt(Dc(),1);var a8o=xt(Fs(),1),kqn=xt(Dc(),1);var CQe=xt(Fs(),1);var c8o=xt(Dc(),1);var u8o=xt(Fs(),1),Zqn=xt(Dc(),1);var Fqn=xt(Fs(),1);var d8o=xt(Fs(),1),p8o=xt(Dc(),1);var RIt=xt(Fs(),1);var g8o=xt(Fs(),1),A8o=xt(Dc(),1);var YIl=Ap.inverse(" ");var Wqn=xt(Dc(),1),o5=xt(Fs(),1);var mQe=xt(Dc(),1),yve=xt(Fs(),1);var Lqn=xt(Fs(),1);var DIt=(0,Lqn.createContext)({marker:yI.line});function xIt({children:e}){let{marker:t}=(0,yve.useContext)(DIt),{styles:r}=uB("OrderedList");return yve.default.createElement(mQe.Box,{...r.listItem()},yve.default.createElement(mQe.Text,{...r.marker()},t),yve.default.createElement(mQe.Box,{...r.content()},e))}var Vqn=xt(Fs(),1),yur=(0,Vqn.createContext)({marker:""});function f8o({children:e}){let{marker:t}=(0,o5.useContext)(yur),{styles:r}=uB("OrderedList"),s=0;for(let o of o5.default.Children.toArray(e))!(0,o5.isValidElement)(o)||o.type!==xIt||s++;let a=String(s).length;return o5.default.createElement(Wqn.Box,{...r.list()},o5.default.Children.map(e,(o,g)=>{if(!(0,o5.isValidElement)(o)||o.type!==xIt)return o;let p=`${String(g+1).padStart(a)}.`,f=`${t}${p}`;return o5.default.createElement(yur.Provider,{value:{marker:f}},o5.default.createElement(DIt.Provider,{value:{marker:f}},o))}))}f8o.Item=xIt;var m8o=xt(Fs(),1),h8o=xt(Dc(),1);var bur=xt(Fs(),1);var I8o=xt(Fs(),1),C8o=xt(Dc(),1);var fCl=Ap.inverse(" ");var _8o=xt(Fs(),1),Pqn=xt(Dc(),1);var y8o=xt(Fs(),1),Oqn=xt(Dc(),1);var B8o=xt(Fs(),1),v8o=xt(Dc(),1);var kIt=xt(Fs(),1);var b8o=xt(Fs(),1),E8o=xt(Dc(),1);var FCl=Ap.inverse(" ");var Mqn=xt(Fs(),1),Eur=xt(Fs(),1),Qqn=xt(Fs(),1),Yqn=({formatter:e})=>{let[t,r]=(0,Eur.useState)(0),[s,a]=(0,Eur.useState)(0);return(0,Mqn.useEffect)(()=>{let o=({files:f})=>{r(f.length)},g=()=>{a(f=>f+1)},p=()=>{a(t)};return e.on("start",o),e.on("format:end",g),e.on("end",p),()=>{e.off("start",o),e.off("format:end",g),e.off("end",p)}},[e,t,r,a]),Qqn.default.createElement(fM,{value:t>0?s/t*100:0})};import{relative as Hqn}from"node:path";var bve=xt(Dc(),1),UW=xt(Dc(),1),Xqn=xt(Fs(),1),GIt=xt(Fs(),1),rv=xt(Fs(),1);var S8o=({changed:e})=>e?rv.default.createElement(UW.Text,{color:"green"},yI.tick):rv.default.createElement(UW.Text,{color:"white"},yI.circleDotted),w8o=({changed:e,children:t})=>e?rv.default.createElement(UW.Text,{color:"white"},t):rv.default.createElement(UW.Text,{color:"gray"},t),Jqn=({cwd:e,formatter:t})=>{let[r,s]=(0,GIt.useState)(void 0),[a,o]=(0,GIt.useState)(0),[g,p]=(0,GIt.useState)(0);return(0,Xqn.useEffect)(()=>{let f=B=>{o(B.files.length)},m=B=>{s({changed:!1,file:Hqn(e,B.file)})},y=B=>{s({changed:B.changed,file:Hqn(e,B.file)}),B.changed&&p(v=>v+1)};return t.on("start",f),t.on("format:start",m),t.on("format:end",y),()=>{t.off("start",f),t.off("format:start",m),t.off("format:end",y)}},[t,s,o,p]),r?rv.default.createElement(bve.Box,{flexDirection:"row",width:"100%"},rv.default.createElement(bve.Box,{flexGrow:1},rv.default.createElement(Dk,{color:"cyan"},"Format:"),rv.default.createElement(UW.Text,null," "),rv.default.createElement(w8o,{changed:r.changed},r.file)),rv.default.createElement(bve.Box,{flexDirection:"row"},rv.default.createElement(bve.Box,null,rv.default.createElement(S8o,{changed:r.changed}),rv.default.createElement(UW.Text,null," "),rv.default.createElement(UW.Text,{color:"green"},g," Formatted"),rv.default.createElement(UW.Text,null," "),rv.default.createElement(UW.Text,{color:"white"},a," Files"),rv.default.createElement(UW.Text,null," ")))):rv.default.createElement(bve.Box,{flexDirection:"row"},rv.default.createElement(Dk,{color:"cyan"},"Format:"),rv.default.createElement(UW.Text,null," "),rv.default.createElement(UW.Text,{color:"white"},"Loading files..."))};var jqn=({cwd:e,formatter:t})=>{let[r,s]=(0,Uqn.useState)(!1);return(0,Kqn.useEffect)(()=>{let a=()=>{setTimeout(()=>{s(!0)},1)};return t.on("end",a),()=>{t.off("end",a)}},[s]),r?null:Wpe.default.createElement(hQe.Box,{position:"relative",height:7},Wpe.default.createElement(hQe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%"},Wpe.default.createElement(hQe.Box,null,Wpe.default.createElement(Jqn,{cwd:e,formatter:t})),Wpe.default.createElement(hQe.Box,{marginTop:1,marginBottom:1},Wpe.default.createElement(Yqn,{formatter:t}))))};import mya from"node:events";import{writeFile as hya}from"node:fs/promises";import{readFile as Lui}from"node:fs/promises";import{relative as _ya}from"node:path";import{join as yya}from"node:path";var Sve={};jf(Sve,{default:()=>O6o,parsers:()=>vve});var T8o=Object.create,Nur=Object.defineProperty,N8o=Object.getOwnPropertyDescriptor,R8o=Object.getOwnPropertyNames,D8o=Object.getPrototypeOf,x8o=Object.prototype.hasOwnProperty,k8o=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),G8o=(e,t)=>{for(var r in t)Nur(e,r,{get:t[r],enumerable:!0})},F8o=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of R8o(t))!x8o.call(e,a)&&a!==r&&Nur(e,a,{get:()=>t[a],enumerable:!(s=N8o(t,a))||s.enumerable});return e},c$n=(e,t,r)=>(r=e!=null?T8o(D8o(e)):{},F8o(t||!e||!e.__esModule?Nur(r,"default",{value:e,enumerable:!0}):r,e)),l$n=k8o(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});function t(ie,w){if(ie==null)return{};var J={};for(var ye in ie)if({}.hasOwnProperty.call(ie,ye)){if(w.includes(ye))continue;J[ye]=ie[ye]}return J}var r=class{constructor(ie,w,J){this.line=void 0,this.column=void 0,this.index=void 0,this.line=ie,this.column=w,this.index=J}},s=class{constructor(ie,w){this.start=void 0,this.end=void 0,this.filename=void 0,this.identifierName=void 0,this.start=ie,this.end=w}};function a(ie,w){let{line:J,column:ye,index:ut}=ie;return new r(J,ye+w,ut+w)}var o="BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED",g={ImportMetaOutsideModule:{message:`import.meta may appear only with 'sourceType: "module"'`,code:o},ImportOutsideModule:{message:`'import' and 'export' may appear only with 'sourceType: "module"'`,code:o}},p={ArrayPattern:"array destructuring pattern",AssignmentExpression:"assignment expression",AssignmentPattern:"assignment expression",ArrowFunctionExpression:"arrow function expression",ConditionalExpression:"conditional expression",CatchClause:"catch clause",ForOfStatement:"for-of statement",ForInStatement:"for-in statement",ForStatement:"for-loop",FormalParameters:"function parameter list",Identifier:"identifier",ImportSpecifier:"import specifier",ImportDefaultSpecifier:"import default specifier",ImportNamespaceSpecifier:"import namespace specifier",ObjectPattern:"object destructuring pattern",ParenthesizedExpression:"parenthesized expression",RestElement:"rest element",UpdateExpression:{true:"prefix operation",false:"postfix operation"},VariableDeclarator:"variable declaration",YieldExpression:"yield expression"},f=ie=>ie.type==="UpdateExpression"?p.UpdateExpression[`${ie.prefix}`]:p[ie.type],m={AccessorIsGenerator:({kind:ie})=>`A ${ie}ter cannot be a generator.`,ArgumentsInClass:"'arguments' is only allowed in functions and class methods.",AsyncFunctionInSingleStatementContext:"Async functions can only be declared at the top level or inside a block.",AwaitBindingIdentifier:"Can not use 'await' as identifier inside an async function.",AwaitBindingIdentifierInStaticBlock:"Can not use 'await' as identifier inside a static block.",AwaitExpressionFormalParameter:"'await' is not allowed in async function parameters.",AwaitUsingNotInAsyncContext:"'await using' is only allowed within async functions and at the top levels of modules.",AwaitNotInAsyncContext:"'await' is only allowed within async functions and at the top levels of modules.",AwaitNotInAsyncFunction:"'await' is only allowed within async functions.",BadGetterArity:"A 'get' accessor must not have any formal parameters.",BadSetterArity:"A 'set' accessor must have exactly one formal parameter.",BadSetterRestParameter:"A 'set' accessor function argument must not be a rest parameter.",ConstructorClassField:"Classes may not have a field named 'constructor'.",ConstructorClassPrivateField:"Classes may not have a private field named '#constructor'.",ConstructorIsAccessor:"Class constructor may not be an accessor.",ConstructorIsAsync:"Constructor can't be an async function.",ConstructorIsGenerator:"Constructor can't be a generator.",DeclarationMissingInitializer:({kind:ie})=>`Missing initializer in ${ie} declaration.`,DecoratorArgumentsOutsideParentheses:"Decorator arguments must be moved inside parentheses: use '@(decorator(args))' instead of '@(decorator)(args)'.",DecoratorBeforeExport:"Decorators must be placed *before* the 'export' keyword. Remove the 'decoratorsBeforeExport: true' option to use the 'export @decorator class {}' syntax.",DecoratorsBeforeAfterExport:"Decorators can be placed *either* before or after the 'export' keyword, but not in both locations at the same time.",DecoratorConstructor:"Decorators can't be used with a constructor. Did you mean '@dec class { ... }'?",DecoratorExportClass:"Decorators must be placed *after* the 'export' keyword. Remove the 'decoratorsBeforeExport: false' option to use the '@decorator export class {}' syntax.",DecoratorSemicolon:"Decorators must not be followed by a semicolon.",DecoratorStaticBlock:"Decorators can't be used with a static block.",DeferImportRequiresNamespace:'Only `import defer * as x from "./module"` is valid.',DeletePrivateField:"Deleting a private field is not allowed.",DestructureNamedImport:"ES2015 named imports do not destructure. Use another statement for destructuring after the import.",DuplicateConstructor:"Duplicate constructor in the same class.",DuplicateDefaultExport:"Only one default export allowed per module.",DuplicateExport:({exportName:ie})=>`\`${ie}\` has already been exported. Exported identifiers must be unique.`,DuplicateProto:"Redefinition of __proto__ property.",DuplicateRegExpFlags:"Duplicate regular expression flag.",DynamicImportPhaseRequiresImportExpressions:({phase:ie})=>`'import.${ie}(...)' can only be parsed when using the 'createImportExpressions' option.`,ElementAfterRest:"Rest element must be last element.",EscapedCharNotAnIdentifier:"Invalid Unicode escape.",ExportBindingIsString:({localName:ie,exportName:w})=>`A string literal cannot be used as an exported binding without \`from\`. +`);throw r.error(Yor(t,o)),new Error(o)}return Xcr("Validated config from `%s`:",t),Xcr(yYo(e,{compact:!1})),a},FQe=(e,t,r)=>{try{return bYo(e,t,r)}catch(s){throw r.error(Yor(t,s)),s}};var bz=(0,B6n.default)("lint-staged:searchConfigs"),y6n=["ls-files","-z","--full-name","-t"],EYo=e=>Sft.includes(E6n.basename(e)),b6n=e=>e.split("/").length,BYo=(e,t)=>b6n(e)>b6n(t)?-1:1,vYo=e=>t=>t.startsWith(Fk(e)),v6n=async({configObject:e,configPath:t,cwd:r=process.cwd(),topLevelDir:s=r},a)=>{if(bz("Searching for configuration files..."),e)return bz("Using single direct configuration object..."),{"":FQe(e,"config object",a)};if(t){bz("Using single configuration path...");let{config:y,filepath:B}=await Dft({configPath:t},a);return y?{[t]:FQe(y,B,a)}:{}}let[o,g]=await Promise.all([MF(y6n,{cwd:s}).then(eQe),MF([...y6n,"--others","--exclude-standard"],{cwd:s}).then(eQe)]),p=[...o,...g].flatMap(y=>y.startsWith("S ")?[]:[y.replace(/^[HSMRCK?U] /,"")]).filter(EYo).map(y=>Fk(E6n.join(s,y))).filter(vYo(r)).sort(BYo);bz("Found possible config files:",p);let f=p.reduce((y,B)=>Object.assign(y,{[B]:null}),{});await Promise.all(Object.keys(f).map(y=>Dft({configPath:y},a).then(({config:B,filepath:v})=>{B&&(y!==v&&bz('Config file "%s" resolved to "%s"',y,v),f[y]=FQe(B,v,a))})));let m=Object.entries(f).filter(([,y])=>!!y).reduce((y,[B,v])=>({...y,[B]:v}),{});if(!Object.keys(m).length){bz('Could not find config files inside "%s"',r);let{config:y,filepath:B}=await Dft({cwd:r},a);y?(bz('Found parent configuration file from "%s"',B),m[B]=FQe(y,B,a)):bz('Could not find parent configuration files from "%s"',r)}return bz("Found %d config files",Object.keys(m).length),m};var LQe=(0,S6n.default)("lint-staged:runAll"),xft=e=>Object.assign(new Error("lint-staged failed"),{ctx:e}),w6n=async({allowEmpty:e=!1,concurrent:t=!0,configObject:r,configPath:s,cwd:a,debug:o=!1,diff:g,diffFilter:p,maxArgLength:f,quiet:m=!1,relative:y=!1,shell:B=!1,stash:v=g===void 0,hidePartiallyStaged:k=v,verbose:T=!1},O=console)=>{LQe("Running all linter scripts...");let X=!!a;a=X?ZQe.resolve(a):process.cwd(),LQe("Using working directory `%s`",a);let U=Npt({quiet:m}),{topLevelDir:le,gitConfigDir:ae}=await hUn(a);if(!le)throw m||U.output.push(gJn),U.errors.add(FJn),xft(U);let ge=await MF(["log","-1"],{cwd:le}).then(()=>!0).catch(()=>!1);U.shouldBackup=ge&&v,!U.shouldBackup&&!m&&O.warn(CJn(ge,g)),U.shouldHidePartiallyStaged=k,!U.shouldHidePartiallyStaged&&!m&&O.warn(mJn(ge&&v,g));let fe=await DJn({cwd:le,diff:g,diffFilter:p});if(!fe)throw m||U.output.push(AJn),U.errors.add(qor),xft(U,qor);if(LQe(`Loaded list of staged files in git: +%O`,fe),fe.length===0)return m||U.output.push(fJn),U;let pe=await v6n({configObject:r,configPath:s,cwd:a,topLevelDir:le},O),he=Object.keys(pe).length;if(he===0)throw U.errors.add(rQe),xft(U,rQe);let be=await HJn({configs:pe,files:fe,singleConfigMode:r||s!==void 0}),Te=he>1,ke=!1,x={ctx:U,exitOnError:!1,registerSignalListeners:!1,...RJn({debug:o,quiet:m},O)},et=0,Ue=[],Je=new Set;for(let[er,{config:Ur,files:Ot}]of Object.entries(be)){let dr=er?Fk(ZQe.relative(a,er)):"Config object",Ar=Uor({baseDir:le,files:Ot,maxArgLength:f,relative:y}),or=Te&&!X?ZQe.dirname(er):a,Fr=Ar.length;Fr>1&&LQe("Chunked staged files from `%s` into %d part",er,Fr);for(let[$r,Or]of Ar.entries()){let In=await Promise.all(TJn({config:Ur,cwd:or,files:Or,relative:y}).map(Br=>CUn({commands:Br.commands,cwd:or,files:Br.fileList,topLevelDir:le,shell:B,verbose:T}).then(tr=>{Br.fileList.forEach(Gn=>{let we=ZQe.isAbsolute(Gn)?Gn:Fk(ZQe.join(or,Gn));Je.add(we)}),ke=ke||tr.some(Gn=>Gn.command==="git add");let gn=Br.fileList.length;return{title:`${Br.pattern}${dp.dim(` \u2014 ${gn} ${gn===1?"file":"files"}`)}`,task:async(Gn,we)=>we.newListr(tr,{concurrent:!1,exitOnError:!0}),skip:()=>gn===0?`${Br.pattern}${dp.dim(" \u2014 no files")}`:!1}})));et+=In.length,Ue.push({title:`${dr}${dp.dim(` \u2014 ${Or.length} ${Or.length>1?"files":"file"}`)}`+(Fr>1?dp.dim(` (chunk ${$r+1}/${Fr})...`):""),task:(Br,tr)=>tr.newListr(In,{concurrent:t,exitOnError:!0}),skip:()=>U.errors.has(nY)?_Jn:In.every(Br=>Br.skip())?`${dr}${dp.dim(" \u2014 no tasks to run")}`:!1})}}if(ke&&!m&&O.warn(hJn),Ue.every(er=>er.skip()))return m||U.output.push(IJn),U;let Xe=Uor({baseDir:a,files:Array.from(Je),maxArgLength:f,relative:!1}),ft=new wpt({allowEmpty:e,gitConfigDir:ae,topLevelDir:le,matchedFileChunks:Xe,diff:g,diffFilter:p}),Gt=new ypt([{title:"Preparing lint-staged...",task:er=>ft.prepare(er)},{title:"Hiding unstaged changes to partially staged files...",task:er=>ft.hideUnstagedChanges(er),enabled:iar},{title:`Running tasks for ${g?"changed":"staged"} files...`,task:(er,Ur)=>Ur.newListr(Ue,{concurrent:t}),skip:()=>Ue.every(er=>er.skip())},{title:"Applying modifications from tasks...",task:er=>ft.applyModifications(er),skip:sUn},{title:"Restoring unstaged changes to partially staged files...",task:er=>ft.restoreUnstagedChanges(er),enabled:iar,skip:oUn},{title:"Reverting to original state because of errors...",task:er=>ft.restoreOriginalState(er),enabled:aUn,skip:cUn},{title:"Cleaning up temporary files...",task:er=>ft.cleanup(er),enabled:lUn,skip:uUn}],x);if(LQe("Set max event listeners to the number of tasks: %i",et),U.events.setMaxListeners(et),await Gt.run(),U.errors.size>0)throw xft(U);return U};var R6n=vt(kk(),1);import{constants as T6n}from"node:fs";import N6n from"node:fs/promises";import SYo from"node:path";var kft=(0,R6n.default)("lint-staged:validateOptions"),D6n=async(e={},t)=>{if(kft("Validating options..."),typeof e.cwd=="string")try{let r=SYo.resolve(e.cwd);await N6n.access(r,T6n.F_OK)}catch(r){throw kft("Failed to validate options: %o",e),t.error(Hor("cwd",e.cwd,r.message)),$or}if(typeof e.shell=="string")try{await N6n.access(e.shell,T6n.X_OK)}catch(r){throw kft("Failed to validate options: %o",e),t.error(Hor("shell",e.shell,r.message)),$or}kft("Validated options: %o",e)};var Jcr=(0,x6n.default)("lint-staged"),wYo=()=>{switch(process.platform){case"darwin":return 262144;case"win32":return 8191;default:return 131072}},TYo=async({allowEmpty:e=!1,concurrent:t=!0,config:r,configPath:s,cwd:a,debug:o=!1,diff:g,diffFilter:p,maxArgLength:f=wYo()/2,quiet:m=!1,relative:y=!1,shell:B=!1,stash:v=g===void 0,hidePartiallyStaged:k=v,verbose:T=!1}={},O=console)=>{let X=await MF(["version","--build-options"],{cwd:a});Jcr("%s",X);let U={allowEmpty:e,concurrent:t,configObject:r,configPath:s,cwd:a,debug:o,diff:g,diffFilter:p,maxArgLength:f,quiet:m,relative:y,shell:B,stash:v,hidePartiallyStaged:k,verbose:T};await D6n(U,O),Jcr("Unset GIT_LITERAL_PATHSPECS (was `%s`)",process.env.GIT_LITERAL_PATHSPECS),delete process.env.GIT_LITERAL_PATHSPECS;try{let le=await w6n(U,O);return Jcr("Tasks were executed successfully!"),Xor(le,O),!0}catch(le){if(le?.ctx?.errors){let{ctx:ae}=le;return ae.errors.has(rQe)?O.error(pJn):ae.errors.has(Hie)?O.warn(yJn):ae.errors.has(nY)&&!ae.errors.has(vpt)&&(O.error(Mie),ae.shouldBackup&&O.error(bJn)),Xor(ae,O),!1}throw le}},k6n=TYo;var RYo={"*.{yml,yaml,json,graphql,md}":"yarn format","*.{js,mjs,cjs,jsx,ts,tsx}":["yarn format","yarn lint"],"*.{ts,tsx}":"yarn typecheck","*.{test,spec}.{ts,tsx}":"yarn test unit"},Gft=class extends G6n.BaseCommand{static paths=[["commit","staged"]];args=td.Rest({required:0});async execute(){try{let t=8190;try{let s=parseInt(NYo("getconf ARG_MAX",{encoding:"utf-8"}),10);t=Math.floor(s*.5)}catch{}return await k6n({config:RYo,maxArgLength:t})?0:1}catch{return 1}}};var F6n={commands:[ept,Sdt,Gft]};var Kcr={};zf(Kcr,{SetVersionCommand:()=>VQe,default:()=>V6n});var Z6n=vt(il(),1),L6n=vt(Bn(),1);Zl();var VQe=class extends Z6n.BaseCommand{static paths=[["set","version","atls"]];static usage=mb.Usage({description:"lock the Yarn version used by the project",details:"\n This command will get latest Atlantis bundle from [Atlantis Raijin repo](https://github.com/atls/raijin) and bump `@atls/code-runtime` dependency\n "});async execute(){let t=["set","version"];t.push("https://raw.githubusercontent.com/atls/raijin/master/yarn/cli/dist/yarn.mjs");let r=await this.cli.run(t),s=["up","@atls/code-runtime"],a=await this.cli.run(s),o=await L6n.Configuration.find(this.context.cwd,this.context.plugins);return await o.triggerHook(g=>g.afterYarnVersionSet,o,this.context),a&&r}};var V6n={commands:[VQe]};var hur={};zf(hur,{WorkspaceExportCommand:()=>A5e,default:()=>rqn});var jzn=vt(il(),1),zzn=vt(il(),1),qzn=vt(Bn(),1),$zn=vt(Bn(),1),eqn=vt(Bn(),1),tqn=vt(Bn(),1);Zl();var mve={};zf(mve,{pack:()=>RKo});var mur=vt(Bn(),1),Hzn=vt(Bn(),1),Yzn=vt(Bn(),1),Xzn=vt(No(),1),Jzn=vt(Bn(),1),Uzn=vt(No(),1),Kzn=vt(kpe(),1);var Bjn=vt(Bn(),1),vjn=vt(Bn(),1),Sjn=vt(No(),1),wjn=vt(No(),1),Tjn=vt(No(),1),Zlr=vt(Bn(),1),Llr=vt(No(),1),Njn=vt(No(),1),iIt=class e extends Bjn.Cache{nodeLinker;parentCache;parentMirror=new Map;workspaceMutexes=new Map;static async find(t,r){let s=t.get("nodeLinker"),a=new e(t.get("cacheFolder"),{configuration:t,nodeLinker:s,parentCache:r});return await a.setup(),a}constructor(t,{configuration:r,nodeLinker:s,parentCache:a}){super(t,{configuration:r}),this.nodeLinker=s,this.parentCache=a}getLocatorMirrorPath(t){return this.parentMirror.get(Zlr.structUtils.slugifyLocator(t))??null}async setup(){await super.setup();let t=await Njn.xfs.readdirPromise(this.parentCache.cwd,{withFileTypes:!0});for(let r of t){let s;r.isDirectory()||!(s=r.name.match(/^(.*)-[a-f\d]+\.zip$/i))||this.parentMirror.set(s[1],Llr.ppath.join(this.parentCache.cwd,r.name))}}async fetchPackageFromCache(t,r,{loader:s}){let a=new wjn.NodeFS,o=async()=>{let g=Llr.ppath.resolve(this.cwd,"../workspaces",Zlr.structUtils.stringifyIdent(t)),f=(async()=>{if(!await a.existsPromise(g)){let y=await s();await a.copyPromise(g,Tjn.PortablePath.root,{baseFs:y}),y.discardAndClose()}return g})();this.workspaceMutexes.set(t.locatorHash,f);try{return await f}finally{this.workspaceMutexes.delete(t.locatorHash)}};if(t.reference.startsWith(vjn.WorkspaceResolver.protocol)){for(let p;p=this.workspaceMutexes.get(t.locatorHash);)await p;let g=await o();return[new Sjn.JailFS(g,{baseFs:a}),()=>{},null]}else return await super.fetchPackageFromCache(t,r,{loader:s})}};var Vzn=vt(Bn(),1),Wzn=vt(Bn(),1);var Pzn=vt(Bn(),1),Iur=vt(No(),1),Ope=vt(No(),1),Cur=vt(kpe(),1),NKo=vt(Dzn(),1);var dur=vt(Bn(),1),IIt=class{resolvers;constructor(t){this.resolvers=t.filter(r=>r)}supportsDescriptor(t,r){return!!this.tryResolverByDescriptor(t,r)}supportsLocator(t,r){return!!this.tryResolverByLocator(t,r)}shouldPersistResolution(t,r){return this.getResolverByLocator(t,r).shouldPersistResolution(t,r)}bindDescriptor(t,r,s){return this.getResolverByDescriptor(t,s).bindDescriptor(t,r,s)}getResolutionDependencies(t,r){return this.getResolverByDescriptor(t,r).getResolutionDependencies(t,r)}async getCandidates(t,r,s){return await this.getResolverByDescriptor(t,s).getCandidates(t,r,s)}async getSatisfying(t,r,s,a){return this.getResolverByDescriptor(t,a).getSatisfying(t,r,s,a)}async resolve(t,r){return await this.getResolverByLocator(t,r).resolve(t,r)}tryResolverByDescriptor(t,r){let s=this.resolvers.find(a=>a.supportsDescriptor(t,r));return s||null}getResolverByDescriptor(t,r){let s=this.resolvers.find(a=>a.supportsDescriptor(t,r));if(!s)throw new Error(`${dur.structUtils.prettyDescriptor(r.project.configuration,t)} isn't supported by any available resolver`);return s}tryResolverByLocator(t,r){let s=this.resolvers.find(a=>a.supportsLocator(t,r));return s||null}getResolverByLocator(t,r){let s=this.resolvers.find(a=>a.supportsLocator(t,r));if(!s)throw new Error(`${dur.structUtils.prettyLocator(r.project.configuration,t)} isn't supported by any available resolver`);return s}};var kzn=vt(Bn(),1),CIt=vt(Bn(),1),Gzn=vt(Vh(),1),xzn=/^(?!v)[a-z0-9._-]+$/i,mIt=class{supportsDescriptor(t,r){return!!(kzn.semverUtils.validRange(t.range)||xzn.test(t.range))}supportsLocator(t,r){return!!(Gzn.default.valid(t.reference)||xzn.test(t.reference))}shouldPersistResolution(t,r){return r.resolver.shouldPersistResolution(this.forwardLocator(t,r),r)}bindDescriptor(t,r,s){return s.resolver.bindDescriptor(this.forwardDescriptor(t,s),r,s)}getResolutionDependencies(t,r){return r.resolver.getResolutionDependencies(this.forwardDescriptor(t,r),r)}async getCandidates(t,r,s){return s.resolver.getCandidates(this.forwardDescriptor(t,s),r,s)}async getSatisfying(t,r,s,a){return a.resolver.getSatisfying(this.forwardDescriptor(t,a),r,s,a)}async resolve(t,r){let s=await r.resolver.resolve(this.forwardLocator(t,r),r);return CIt.structUtils.renamePackage(s,t)}forwardDescriptor(t,r){return CIt.structUtils.makeDescriptor(t,`${r.project.configuration.get("defaultProtocol")}${t.range}`)}forwardLocator(t,r){return CIt.structUtils.makeLocator(t,`${r.project.configuration.get("defaultProtocol")}${t.reference}`)}};var hIt=class e{static protocol="virtual:";static isVirtualDescriptor(t){return!!t.range.startsWith(e.protocol)}static isVirtualLocator(t){return!!t.reference.startsWith(e.protocol)}supportsDescriptor(t,r){return e.isVirtualDescriptor(t)}supportsLocator(t,r){return e.isVirtualLocator(t)}shouldPersistResolution(t,r){return!1}bindDescriptor(t,r,s){throw new Error('Assertion failed: calling "bindDescriptor" on a virtual descriptor is unsupported')}getResolutionDependencies(t,r){throw new Error('Assertion failed: calling "getResolutionDependencies" on a virtual descriptor is unsupported')}async getCandidates(t,r,s){throw new Error('Assertion failed: calling "getCandidates" on a virtual descriptor is unsupported')}async getSatisfying(t,r,s,a){throw new Error('Assertion failed: calling "getSatisfying" on a virtual descriptor is unsupported')}async resolve(t,r){throw new Error('Assertion failed: calling "resolve" on a virtual locator is unsupported')}};var pur=vt(Bn(),1),Fzn=vt(Bn(),1),Zzn=vt(No(),1);var _It=class extends Fzn.WorkspaceFetcher{constructor(r){super();this.originalProject=r}getLocalPath(r,s){return super.getLocalPath(r,this.rewriteOpts(r,s))}async fetch(r,s){if(r.reference.slice(pur.WorkspaceResolver.protocol.length)===".")return await super.fetch(r,s);let a=s.checksums.get(r.locatorHash)||null,[o,g]=await s.cache.fetchPackageFromCache(r,a,{loader:()=>this.packWorkspace(r)});return{packageFs:o,releaseFs:g,localPath:this.getLocalPath(r,s),prefixPath:Zzn.PortablePath.dot}}async packWorkspace(r){let s=this.originalProject.getWorkspaceByLocator(r);return await Lzn(s,{compressionLevel:this.originalProject.configuration.get("compressionLevel"),stripComponents:1})}rewriteOpts(r,s){return r.reference.slice(pur.WorkspaceResolver.protocol.length)==="."?s:{...s,project:this.originalProject}}};var fur=vt(Bn(),1),yIt=vt(Bn(),1),bIt=class extends yIt.WorkspaceResolver{constructor(r){super();this.originalProject=r}supportsDescriptor(r,s){return super.supportsDescriptor(r,this.rewriteOpts(r,s))}supportsLocator(r,s){return super.supportsLocator(r,this.rewriteOpts(r,s))}shouldPersistResolution(r,s){return super.shouldPersistResolution(r,this.rewriteOpts(r,s))}bindDescriptor(r,s,a){return super.bindDescriptor(r,s,this.rewriteOpts(r,a))}getResolutionDependencies(r,s){return super.getResolutionDependencies(r,this.rewriteOpts(r,s))}async getCandidates(r,s,a){return await super.getCandidates(r,s,this.rewriteOpts(r,a))}async getSatisfying(r,s,a){return await super.getSatisfying(r,s,this.rewriteOpts(r,a))}async resolve(r,s){let a=r.reference.slice(yIt.WorkspaceResolver.protocol.length),{project:o}=this.rewriteOpts(r,s),g=o.getWorkspaceByCwd(a);return{...r,version:g.manifest.version||"0.0.0",languageName:"unknown",linkType:a==="."?fur.LinkType.SOFT:fur.LinkType.HARD,dependencies:g.manifest.dependencies,peerDependencies:g.manifest.peerDependencies,dependenciesMeta:g.manifest.dependenciesMeta,peerDependenciesMeta:g.manifest.peerDependenciesMeta,bin:g.manifest.bin}}rewriteOpts(r,s){return("descriptorHash"in r?r.range:r.reference).slice(yIt.WorkspaceResolver.protocol.length)==="."?s:{...s,project:this.originalProject}}};var Ozn=e=>{let t=[];for(let r of e.configuration.plugins.values())for(let s of r.fetchers||[])t.push(new s);return new Wzn.MultiFetcher([new Vzn.VirtualFetcher,new _It(e),...t])},Qzn=e=>{let t=[];for(let r of e.configuration.plugins.values())for(let s of r.resolvers||[])t.push(new s);return new IIt([new hIt,new bIt(e),new mIt,...t])};var Mzn=async e=>{let t=await Ope.xfs.mktempPromise(),r=await Cur.packUtils.genPackStream(e),s=Iur.ppath.join(t,"package.tgz"),a=Ope.xfs.createWriteStream(s);return r.pipe(a),await new Promise(o=>{a.on("finish",o)}),Ope.xfs.readFilePromise(s)},Lzn=async(e,t)=>await Ope.xfs.mktempPromise(async r=>{let s=await Cur.packUtils.genPackStream(e),a=Iur.ppath.join(r,"package.tgz"),o=Ope.xfs.createWriteStream(a);s.pipe(o),await new Promise(p=>{o.on("finish",p)});let g=await Ope.xfs.readFilePromise(a);return await Pzn.tgzUtils.convertToZip(g,t)});var RKo=async(e,t,r,s,a)=>{process.env.IMAGE_PACK=!0;let o=await Yzn.Cache.find(e,{immutable:!0});await t.restoreInstallState(),await Kzn.packUtils.prepareForPack(r,{report:s},async()=>{r.manifest.devDependencies.clear();let g=new Xzn.CwdFS(a),p=await Mzn(r);await Jzn.tgzUtils.extractArchiveTo(p,g,{stripComponents:1});let f=mur.Configuration.create(a,a,e.plugins);f.values.set("compressionLevel",t.configuration.get("compressionLevel")),f.values.set("enableGlobalCache",!1),f.values.set("enableMirror",!1),f.values.set("globalFolder",e.get("globalFolder")),f.values.set("packageExtensions",e.get("packageExtensions")),f.values.set("pnpEnableEsmLoader",e.get("pnpEnableEsmLoader")),f.values.set("cacheFolder",Uzn.ppath.join(a,".yarn/packages")),f.values.set("preferAggregateCacheInfo",!0),await mur.Configuration.updateConfiguration(a,{cacheFolder:".yarn/packages",compressionLevel:f.get("compressionLevel"),enableGlobalCache:f.get("enableGlobalCache"),enableNetwork:f.get("enableNetwork"),enableMirror:f.get("enableMirror"),packageExtensions:f.get("packageExtensions"),nodeLinker:t.configuration.get("nodeLinker")}),await f.getPackageExtensions();let{project:m,workspace:y}=await Hzn.Project.find(f,a);if(!y)throw new Error("Workspace not found");y.manifest.dependencies=r.manifest.dependencies,y.manifest.resolutions=t.topLevelWorkspace.manifest.resolutions,y.manifest.devDependencies.clear(),await m.install({cache:await iIt.find(f,o),fetcher:Ozn(t),resolver:Qzn(t),persistProject:!0,report:s})})};var DKo=vt(kpe(),1);var A5e=class extends jzn.BaseCommand{static paths=[["export"]];destination=td.String("-d,--destination",{required:!0});async execute(){let t=await qzn.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await $zn.Project.find(t,this.context.cwd);if(!s)throw new zzn.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await eqn.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{await mve.pack(t,r,s,o,this.destination),o.reportInfo(null,`Workspace ${s.manifest.name?tqn.structUtils.prettyIdent(t,s.manifest.name):s.relativeCwd} exported to ${this.destination}`)})).exitCode()}};var rqn={commands:[A5e]};var qpr={};zf(qpr,{FormatCommand:()=>rHe,default:()=>zui});var Jui=vt(il(),1),Uui=vt(Bn(),1),Kui=vt(Bn(),1);Zl();var jui=vt(xc(),1);var DIt=vt(xc(),1),Iqn=vt(xc(),1);var EIt=class{constructor(t){this.frames=t}get topFrame(){return this.frames.find(t=>t.file)}};var nqn=vt(Fct(),1);var iqn=e=>{let t=e.split(` +`),r=process.cwd(),s=new nqn.default({cwd:r}),a=t.reduce((o,g)=>{let p=s.parseLine(g.trim());return p&&o.push(p),o},[]);return new EIt(a)};var fqn=vt(xc(),1),yve=vt(xc(),1);var NIt=vt($a(),1);var Aqn=vt(xc(),1),wIt=vt($a(),1);import{basename as GKo}from"node:path";import{isAbsolute as FKo}from"node:path";import{relative as ZKo}from"node:path";var yur=vt($a(),1),SIt=vt(xc(),1),Mpe=vt(ABe(),1);var ay="\x1B[",d5e="\x1B]",hve="\x07",BIt=";",sqn=process.env.TERM_PROGRAM==="Apple_Terminal",sh={};sh.cursorTo=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");return typeof t!="number"?ay+(e+1)+"G":ay+(t+1)+";"+(e+1)+"H"};sh.cursorMove=(e,t)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");let r="";return e<0?r+=ay+-e+"D":e>0&&(r+=ay+e+"C"),t<0?r+=ay+-t+"A":t>0&&(r+=ay+t+"B"),r};sh.cursorUp=(e=1)=>ay+e+"A";sh.cursorDown=(e=1)=>ay+e+"B";sh.cursorForward=(e=1)=>ay+e+"C";sh.cursorBackward=(e=1)=>ay+e+"D";sh.cursorLeft=ay+"G";sh.cursorSavePosition=sqn?"\x1B7":ay+"s";sh.cursorRestorePosition=sqn?"\x1B8":ay+"u";sh.cursorGetPosition=ay+"6n";sh.cursorNextLine=ay+"E";sh.cursorPrevLine=ay+"F";sh.cursorHide=ay+"?25l";sh.cursorShow=ay+"?25h";sh.eraseLines=e=>{let t="";for(let r=0;r[d5e,"8",BIt,BIt,t,hve,e,d5e,"8",BIt,BIt,hve].join("");sh.image=(e,t={})=>{let r=`${d5e}1337;File=inline=1`;return t.width&&(r+=`;width=${t.width}`),t.height&&(r+=`;height=${t.height}`),t.preserveAspectRatio===!1&&(r+=";preserveAspectRatio=0"),r+":"+e.toString("base64")+hve};sh.iTerm={setCwd:(e=process.cwd())=>`${d5e}50;CurrentDir=${e}${hve}`,annotation:(e,t={})=>{let r=`${d5e}1337;`,s=typeof t.x<"u",a=typeof t.y<"u";if((s||a)&&!(s&&a&&typeof t.length<"u"))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return e=e.replace(/\|/g,""),r+=t.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",t.length>0?r+=(s?[e,t.length,t.x,t.y]:[t.length,e]).join("|"):r+=e,r+hve}};var oqn=sh;var vIt=vt(lqn(),1);function Qpe(e,t,{target:r="stdout",...s}={}){return vIt.default[r]?oqn.link(e,t):s.fallback===!1?e:typeof s.fallback=="function"?s.fallback(e,t):`${e} (\u200B${t}\u200B)`}Qpe.isSupported=vIt.default.stdout;Qpe.stderr=(e,t,r={})=>Qpe(e,t,{target:"stderr",...r});Qpe.stderr.isSupported=vIt.default.stderr;var uqn=({children:e,url:t,fallback:r=!0})=>yur.default.createElement(SIt.Transform,{transform:s=>Qpe(s,t,{fallback:r})},yur.default.createElement(SIt.Text,null,e));uqn.propTypes={children:Mpe.default.oneOfType([Mpe.default.arrayOf(Mpe.default.node),Mpe.default.node]).isRequired,url:Mpe.default.string.isRequired,fallback:Mpe.default.bool};var gqn=uqn;var TIt=vt(Ac(),1),dqn=({url:e,cwd:t=process.cwd(),column:r=0,line:s=0})=>{let a=(0,wIt.useMemo)(()=>{try{return new URL(e).pathname}catch{return e}},[e]),o=(0,wIt.useMemo)(()=>FKo(a)?ZKo(t,a):a,[a]),g=(0,wIt.useMemo)(()=>o.includes("/node_modules/")?GKo(o):o,[o]);return(0,TIt.jsx)(gqn,{url:e,children:(0,TIt.jsxs)(Aqn.Text,{color:"gray",children:[g,":",s,":",r]})})};import{readFileSync as LKo}from"node:fs";import{fileURLToPath as VKo}from"node:url";var pqn=e=>{if(e.sourceMap)return e.sourceMap.payload.sourcesContent[0];if(e.file)try{return LKo(e.file.startsWith("file:/")?VKo(new URL(e.file)):e.file,"utf-8")}catch{return null}return null};var WU=vt(Ac(),1),RIt=({children:e,cwd:t})=>{let r=(0,NIt.useMemo)(()=>iqn(e),[e]),s=(0,NIt.useMemo)(()=>r.topFrame||r.frames.at(0),[r]),a=(0,NIt.useMemo)(()=>s?pqn(s):null,[s]);return(0,WU.jsxs)(yve.Box,{flexDirection:"column",flexGrow:1,children:[!!a&&!!r.topFrame?.line&&(0,WU.jsx)(yve.Box,{marginBottom:1,children:(0,WU.jsx)(YO,{line:r.topFrame.line,column:r.topFrame.column,children:a})}),r.frames.map(o=>(0,WU.jsxs)(yve.Box,{flexDirection:"row",children:[(0,WU.jsx)(yve.Box,{flexBasis:"30%",children:(0,WU.jsx)(fqn.Text,{children:o.function})}),(0,WU.jsx)(yve.Box,{flexBasis:"70%",justifyContent:"flex-end",children:!!o.file&&(0,WU.jsx)(dqn,{cwd:t,url:o.file,line:o.line,column:o.column})})]},wW()))]})};var dse=vt(Ac(),1),WKo=({children:e})=>e?(0,dse.jsx)(DIt.Box,{marginBottom:1,children:(0,dse.jsx)(Iqn.Text,{bold:!0,color:"red",children:e})}):null,MD=({error:e,cwd:t})=>(0,dse.jsxs)(DIt.Box,{flexDirection:"column",borderStyle:"single",borderColor:"gray",paddingX:2,paddingY:1,children:[(0,dse.jsx)(WKo,{children:e.message}),!!e.stack&&(0,dse.jsx)(DIt.Box,{children:(0,dse.jsx)(RIt,{cwd:t,children:e.stack})})]});var y5e=vt(xc(),1),r$n=vt($a(),1),n$n=vt($a(),1);var Eur=vt(xc(),1),Bur=vt($a(),1);var f5e=vt($a(),1),p8o=vt(bur(),1);var _qn={info:"blue",success:"green",error:"red",warning:"yellow"},$Ko={styles:{container:({variant:e})=>({flexGrow:1,borderStyle:"round",borderColor:_qn[e],gap:1,paddingX:1}),iconContainer:()=>({flexShrink:0}),icon:({variant:e})=>({color:_qn[e]}),content:()=>({flexShrink:1,flexGrow:1,minWidth:0,flexDirection:"column",gap:1}),title:()=>({bold:!0}),message:()=>({})},config({variant:e}){let t;return e==="info"&&(t=bI.info),e==="success"&&(t=bI.tick),e==="error"&&(t=bI.cross),e==="warning"&&(t=bI.warning),{icon:t}}},yqn=$Ko;var e8o={styles:{container:({color:e})=>({backgroundColor:e}),label:()=>({color:"black"})}},bqn=e8o;var t8o={styles:{input:({isFocused:e})=>({dimColor:!e})}},Eqn=t8o;var r8o={styles:{container:()=>({flexDirection:"column"}),option:({isFocused:e})=>({gap:1,paddingLeft:e?0:2}),selectedIndicator:()=>({color:"green"}),focusIndicator:()=>({color:"blue"}),label({isFocused:e,isSelected:t}){let r;return t&&(r="green"),e&&(r="blue"),{color:r}},highlightedText:()=>({bold:!0})}},Bqn=r8o;var n8o={styles:{list:()=>({flexDirection:"column"}),listItem:()=>({gap:1}),marker:()=>({dimColor:!0}),content:()=>({flexDirection:"column"})}},vqn=n8o;var i8o={styles:{container:()=>({flexGrow:1,minWidth:0}),completed:()=>({color:"magenta"}),remaining:()=>({dimColor:!0})},config:()=>({completedCharacter:bI.square,remainingCharacter:bI.squareLightShade})},Sqn=i8o;var s8o={styles:{container:()=>({flexDirection:"column"}),option:({isFocused:e})=>({gap:1,paddingLeft:e?0:2}),selectedIndicator:()=>({color:"green"}),focusIndicator:()=>({color:"blue"}),label({isFocused:e,isSelected:t}){let r;return t&&(r="green"),e&&(r="blue"),{color:r}},highlightedText:()=>({bold:!0})}},wqn=s8o;var o8o={styles:{container:()=>({gap:1}),frame:()=>({color:"blue"}),label:()=>({})}},Tqn=o8o;var a8o={success:"green",error:"red",warning:"yellow",info:"blue"},c8o={success:bI.tick,error:bI.cross,warning:bI.warning,info:bI.info},l8o={styles:{container:()=>({gap:1}),iconContainer:()=>({flexShrink:0}),icon:({variant:e})=>({color:a8o[e]}),message:()=>({})},config:({variant:e})=>({icon:c8o[e]})},Nqn=l8o;var u8o={styles:{list:()=>({flexDirection:"column"}),listItem:()=>({gap:1}),marker:()=>({dimColor:!0}),content:()=>({flexDirection:"column"})},config:()=>({marker:bI.line})},Rqn=u8o;var g8o={styles:{value:()=>({})}},Dqn=g8o;var A8o={styles:{value:()=>({})}},xqn=A8o;var d8o={styles:{value:()=>({})}},kqn=d8o;var f8o={components:{Alert:yqn,Badge:bqn,ConfirmInput:Eqn,MultiSelect:Bqn,OrderedList:vqn,ProgressBar:Sqn,Select:wqn,Spinner:Tqn,StatusMessage:Nqn,UnorderedList:Rqn,TextInput:Dqn,EmailInput:xqn,PasswordInput:kqn}},I8o=(0,f5e.createContext)(f8o);var gB=e=>(0,f5e.useContext)(I8o).components[e];function Lk({children:e,color:t="magenta"}){let{styles:r}=gB("Badge"),s=e;return typeof e=="string"&&(s=e.toUpperCase()),Bur.default.createElement(Eur.Text,{...r.container({color:t})}," ",Bur.default.createElement(Eur.Text,{...r.label()},s)," ")}var C8o=vt($a(),1),Gqn=vt(xc(),1);var Vqn=vt(xc(),1),wz=vt($a(),1);var C5e=vt(xc(),1),Eve=vt($a(),1);var Fqn=vt($a(),1);var I5e=bI.line;var xIt=(0,Fqn.createContext)({marker:I5e});function Zqn({children:e}){let{marker:t}=(0,Eve.useContext)(xIt),{styles:r}=gB("UnorderedList");return Eve.default.createElement(C5e.Box,{...r.listItem()},Eve.default.createElement(C5e.Text,{...r.marker()},t),Eve.default.createElement(C5e.Box,{...r.content()},e))}var Lqn=vt($a(),1),vur=(0,Lqn.createContext)({depth:0});function m8o({children:e}){let{depth:t}=(0,wz.useContext)(vur),{styles:r,config:s}=gB("UnorderedList"),a=(0,wz.useMemo)(()=>({depth:t+1}),[t]),o=(0,wz.useMemo)(()=>{let{marker:g}=s();return typeof g=="string"?{marker:g}:Array.isArray(g)?{marker:g[t]??g.at(-1)??I5e}:{marker:I5e}},[s,t]);return wz.default.createElement(vur.Provider,{value:a},wz.default.createElement(xIt.Provider,{value:o},wz.default.createElement(Vqn.Box,{...r.list()},e)))}m8o.Item=Zqn;var b8o=vt($a(),1),Pqn=vt(xc(),1);var h8o=vt($a(),1),Wqn=vt(xc(),1);var m5e=vt($a(),1);var y8o=vt(xc(),1);var Hpe=vt($a(),1),Ype=vt(xc(),1);function CQ({value:e}){let[t,r]=(0,Hpe.useState)(0),[s,a]=(0,Hpe.useState)(null);if(s){let y=(0,Ype.measureElement)(s);y.width!==t&&r(y.width)}let o=Math.min(100,Math.max(0,e)),g=Math.round(o/100*t),p=t-g,{styles:f,config:m}=gB("ProgressBar");return Hpe.default.createElement(Ype.Box,{ref:a,...f.container()},g>0&&Hpe.default.createElement(Ype.Text,{...f.completed()},m().completedCharacter.repeat(g)),p>0&&Hpe.default.createElement(Ype.Text,{...f.remaining()},m().remainingCharacter.repeat(p)))}var v8o=vt($a(),1),Qqn=vt(xc(),1);var E8o=vt($a(),1),Oqn=vt(xc(),1);var h5e=vt($a(),1);var B8o=vt(xc(),1);var S8o=vt($a(),1),Hqn=vt(xc(),1);var Mqn=vt($a(),1);var N8o=vt($a(),1),R8o=vt(xc(),1);var kIt=vt($a(),1);var w8o=vt($a(),1),T8o=vt(xc(),1);var ACl=dp.inverse(" ");var Jqn=vt(xc(),1),cY=vt($a(),1);var _5e=vt(xc(),1),Bve=vt($a(),1);var Yqn=vt($a(),1);var GIt=(0,Yqn.createContext)({marker:bI.line});function FIt({children:e}){let{marker:t}=(0,Bve.useContext)(GIt),{styles:r}=gB("OrderedList");return Bve.default.createElement(_5e.Box,{...r.listItem()},Bve.default.createElement(_5e.Text,{...r.marker()},t),Bve.default.createElement(_5e.Box,{...r.content()},e))}var Xqn=vt($a(),1),Sur=(0,Xqn.createContext)({marker:""});function D8o({children:e}){let{marker:t}=(0,cY.useContext)(Sur),{styles:r}=gB("OrderedList"),s=0;for(let o of cY.default.Children.toArray(e))!(0,cY.isValidElement)(o)||o.type!==FIt||s++;let a=String(s).length;return cY.default.createElement(Jqn.Box,{...r.list()},cY.default.Children.map(e,(o,g)=>{if(!(0,cY.isValidElement)(o)||o.type!==FIt)return o;let p=`${String(g+1).padStart(a)}.`,f=`${t}${p}`;return cY.default.createElement(Sur.Provider,{value:{marker:f}},cY.default.createElement(GIt.Provider,{value:{marker:f}},o))}))}D8o.Item=FIt;var G8o=vt($a(),1),F8o=vt(xc(),1);var wur=vt($a(),1);var x8o=vt($a(),1),k8o=vt(xc(),1);var LCl=dp.inverse(" ");var Z8o=vt($a(),1),Uqn=vt(xc(),1);var L8o=vt($a(),1),Kqn=vt(xc(),1);var P8o=vt($a(),1),O8o=vt(xc(),1);var ZIt=vt($a(),1);var V8o=vt($a(),1),W8o=vt(xc(),1);var nml=dp.inverse(" ");var jqn=vt($a(),1),Tur=vt($a(),1),qqn=vt(Ac(),1),zqn=({formatter:e})=>{let[t,r]=(0,Tur.useState)(0),[s,a]=(0,Tur.useState)(0);return(0,jqn.useEffect)(()=>{let o=({files:f})=>{r(f.length)},g=()=>{a(f=>f+1)},p=()=>{a(t)};return e.on("start",o),e.on("format:end",g),e.on("end",p),()=>{e.off("start",o),e.off("format:end",g),e.off("end",p)}},[e,t,r,a]),(0,qqn.jsx)(CQ,{value:t>0?s/t*100:0})};import{relative as $qn}from"node:path";var vve=vt(xc(),1),jW=vt(xc(),1),e$n=vt($a(),1),LIt=vt($a(),1);var AB=vt(Ac(),1),Q8o=({changed:e})=>e?(0,AB.jsx)(jW.Text,{color:"green",children:bI.tick}):(0,AB.jsx)(jW.Text,{color:"white",children:bI.circleDotted}),M8o=({changed:e,children:t})=>e?(0,AB.jsx)(jW.Text,{color:"white",children:t}):(0,AB.jsx)(jW.Text,{color:"gray",children:t}),t$n=({cwd:e,formatter:t})=>{let[r,s]=(0,LIt.useState)(void 0),[a,o]=(0,LIt.useState)(0),[g,p]=(0,LIt.useState)(0);return(0,e$n.useEffect)(()=>{let f=B=>{o(B.files.length)},m=B=>{s({changed:!1,file:$qn(e,B.file)})},y=B=>{s({changed:B.changed,file:$qn(e,B.file)}),B.changed&&p(v=>v+1)};return t.on("start",f),t.on("format:start",m),t.on("format:end",y),()=>{t.off("start",f),t.off("format:start",m),t.off("format:end",y)}},[t,s,o,p]),r?(0,AB.jsxs)(vve.Box,{flexDirection:"row",width:"100%",children:[(0,AB.jsxs)(vve.Box,{flexGrow:1,children:[(0,AB.jsx)(Lk,{color:"cyan",children:"Format:"}),(0,AB.jsx)(jW.Text,{children:" "}),(0,AB.jsx)(M8o,{changed:r.changed,children:r.file})]}),(0,AB.jsx)(vve.Box,{flexDirection:"row",children:(0,AB.jsxs)(vve.Box,{children:[(0,AB.jsx)(Q8o,{changed:r.changed}),(0,AB.jsx)(jW.Text,{children:" "}),(0,AB.jsxs)(jW.Text,{color:"green",children:[g," Formatted"]}),(0,AB.jsx)(jW.Text,{children:" "}),(0,AB.jsxs)(jW.Text,{color:"white",children:[a," Files"]}),(0,AB.jsx)(jW.Text,{children:" "})]})})]}):(0,AB.jsxs)(vve.Box,{flexDirection:"row",children:[(0,AB.jsx)(Lk,{color:"cyan",children:"Format:"}),(0,AB.jsx)(jW.Text,{children:" "}),(0,AB.jsx)(jW.Text,{color:"white",children:"Loading files..."})]})};var pse=vt(Ac(),1),i$n=({cwd:e,formatter:t})=>{let[r,s]=(0,r$n.useState)(!1);return(0,n$n.useEffect)(()=>{let a=()=>{setTimeout(()=>{s(!0)},1)};return t.on("end",a),()=>{t.off("end",a)}},[s]),r?null:(0,pse.jsx)(y5e.Box,{position:"relative",height:7,children:(0,pse.jsxs)(y5e.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,pse.jsx)(y5e.Box,{children:(0,pse.jsx)(t$n,{cwd:e,formatter:t})}),(0,pse.jsx)(y5e.Box,{marginTop:1,marginBottom:1,children:(0,pse.jsx)(zqn,{formatter:t})})]})})};import Gya from"node:events";import{writeFile as Fya}from"node:fs/promises";import{readFile as Yui}from"node:fs/promises";import{relative as Zya}from"node:path";import{join as Lya}from"node:path";var Nve={};zf(Nve,{default:()=>n7o,parsers:()=>Tve});var H8o=Object.create,Gur=Object.defineProperty,Y8o=Object.getOwnPropertyDescriptor,X8o=Object.getOwnPropertyNames,J8o=Object.getPrototypeOf,U8o=Object.prototype.hasOwnProperty,K8o=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),j8o=(e,t)=>{for(var r in t)Gur(e,r,{get:t[r],enumerable:!0})},z8o=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of X8o(t))!U8o.call(e,a)&&a!==r&&Gur(e,a,{get:()=>t[a],enumerable:!(s=Y8o(t,a))||s.enumerable});return e},I$n=(e,t,r)=>(r=e!=null?H8o(J8o(e)):{},z8o(t||!e||!e.__esModule?Gur(r,"default",{value:e,enumerable:!0}):r,e)),C$n=K8o(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});function t(ie,w){if(ie==null)return{};var J={};for(var ye in ie)if({}.hasOwnProperty.call(ie,ye)){if(w.includes(ye))continue;J[ye]=ie[ye]}return J}var r=class{constructor(ie,w,J){this.line=void 0,this.column=void 0,this.index=void 0,this.line=ie,this.column=w,this.index=J}},s=class{constructor(ie,w){this.start=void 0,this.end=void 0,this.filename=void 0,this.identifierName=void 0,this.start=ie,this.end=w}};function a(ie,w){let{line:J,column:ye,index:ut}=ie;return new r(J,ye+w,ut+w)}var o="BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED",g={ImportMetaOutsideModule:{message:`import.meta may appear only with 'sourceType: "module"'`,code:o},ImportOutsideModule:{message:`'import' and 'export' may appear only with 'sourceType: "module"'`,code:o}},p={ArrayPattern:"array destructuring pattern",AssignmentExpression:"assignment expression",AssignmentPattern:"assignment expression",ArrowFunctionExpression:"arrow function expression",ConditionalExpression:"conditional expression",CatchClause:"catch clause",ForOfStatement:"for-of statement",ForInStatement:"for-in statement",ForStatement:"for-loop",FormalParameters:"function parameter list",Identifier:"identifier",ImportSpecifier:"import specifier",ImportDefaultSpecifier:"import default specifier",ImportNamespaceSpecifier:"import namespace specifier",ObjectPattern:"object destructuring pattern",ParenthesizedExpression:"parenthesized expression",RestElement:"rest element",UpdateExpression:{true:"prefix operation",false:"postfix operation"},VariableDeclarator:"variable declaration",YieldExpression:"yield expression"},f=ie=>ie.type==="UpdateExpression"?p.UpdateExpression[`${ie.prefix}`]:p[ie.type],m={AccessorIsGenerator:({kind:ie})=>`A ${ie}ter cannot be a generator.`,ArgumentsInClass:"'arguments' is only allowed in functions and class methods.",AsyncFunctionInSingleStatementContext:"Async functions can only be declared at the top level or inside a block.",AwaitBindingIdentifier:"Can not use 'await' as identifier inside an async function.",AwaitBindingIdentifierInStaticBlock:"Can not use 'await' as identifier inside a static block.",AwaitExpressionFormalParameter:"'await' is not allowed in async function parameters.",AwaitUsingNotInAsyncContext:"'await using' is only allowed within async functions and at the top levels of modules.",AwaitNotInAsyncContext:"'await' is only allowed within async functions and at the top levels of modules.",AwaitNotInAsyncFunction:"'await' is only allowed within async functions.",BadGetterArity:"A 'get' accessor must not have any formal parameters.",BadSetterArity:"A 'set' accessor must have exactly one formal parameter.",BadSetterRestParameter:"A 'set' accessor function argument must not be a rest parameter.",ConstructorClassField:"Classes may not have a field named 'constructor'.",ConstructorClassPrivateField:"Classes may not have a private field named '#constructor'.",ConstructorIsAccessor:"Class constructor may not be an accessor.",ConstructorIsAsync:"Constructor can't be an async function.",ConstructorIsGenerator:"Constructor can't be a generator.",DeclarationMissingInitializer:({kind:ie})=>`Missing initializer in ${ie} declaration.`,DecoratorArgumentsOutsideParentheses:"Decorator arguments must be moved inside parentheses: use '@(decorator(args))' instead of '@(decorator)(args)'.",DecoratorBeforeExport:"Decorators must be placed *before* the 'export' keyword. Remove the 'decoratorsBeforeExport: true' option to use the 'export @decorator class {}' syntax.",DecoratorsBeforeAfterExport:"Decorators can be placed *either* before or after the 'export' keyword, but not in both locations at the same time.",DecoratorConstructor:"Decorators can't be used with a constructor. Did you mean '@dec class { ... }'?",DecoratorExportClass:"Decorators must be placed *after* the 'export' keyword. Remove the 'decoratorsBeforeExport: false' option to use the '@decorator export class {}' syntax.",DecoratorSemicolon:"Decorators must not be followed by a semicolon.",DecoratorStaticBlock:"Decorators can't be used with a static block.",DeferImportRequiresNamespace:'Only `import defer * as x from "./module"` is valid.',DeletePrivateField:"Deleting a private field is not allowed.",DestructureNamedImport:"ES2015 named imports do not destructure. Use another statement for destructuring after the import.",DuplicateConstructor:"Duplicate constructor in the same class.",DuplicateDefaultExport:"Only one default export allowed per module.",DuplicateExport:({exportName:ie})=>`\`${ie}\` has already been exported. Exported identifiers must be unique.`,DuplicateProto:"Redefinition of __proto__ property.",DuplicateRegExpFlags:"Duplicate regular expression flag.",DynamicImportPhaseRequiresImportExpressions:({phase:ie})=>`'import.${ie}(...)' can only be parsed when using the 'createImportExpressions' option.`,ElementAfterRest:"Rest element must be last element.",EscapedCharNotAnIdentifier:"Invalid Unicode escape.",ExportBindingIsString:({localName:ie,exportName:w})=>`A string literal cannot be used as an exported binding without \`from\`. - Did you mean \`export { '${ie}' as '${w}' } from 'some-module'\`?`,ExportDefaultFromAsIdentifier:"'from' is not allowed as an identifier after 'export default'.",ForInOfLoopInitializer:({type:ie})=>`'${ie==="ForInStatement"?"for-in":"for-of"}' loop variable declaration may not have an initializer.`,ForInUsing:"For-in loop may not start with 'using' declaration.",ForOfAsync:"The left-hand side of a for-of loop may not be 'async'.",ForOfLet:"The left-hand side of a for-of loop may not start with 'let'.",GeneratorInSingleStatementContext:"Generators can only be declared at the top level or inside a block.",IllegalBreakContinue:({type:ie})=>`Unsyntactic ${ie==="BreakStatement"?"break":"continue"}.`,IllegalLanguageModeDirective:"Illegal 'use strict' directive in function with non-simple parameter list.",IllegalReturn:"'return' outside of function.",ImportAttributesUseAssert:"The `assert` keyword in import attributes is deprecated and it has been replaced by the `with` keyword. You can enable the `deprecatedImportAssert` parser plugin to suppress this error.",ImportBindingIsString:({importName:ie})=>`A string literal cannot be used as an imported binding. -- Did you mean \`import { "${ie}" as foo }\`?`,ImportCallArity:"`import()` requires exactly one or two arguments.",ImportCallNotNewExpression:"Cannot use new with import(...).",ImportCallSpreadArgument:"`...` is not allowed in `import()`.",ImportJSONBindingNotDefault:"A JSON module can only be imported with `default`.",ImportReflectionHasAssertion:"`import module x` cannot have assertions.",ImportReflectionNotBinding:'Only `import module x from "./module"` is valid.',IncompatibleRegExpUVFlags:"The 'u' and 'v' regular expression flags cannot be enabled at the same time.",InvalidBigIntLiteral:"Invalid BigIntLiteral.",InvalidCodePoint:"Code point out of bounds.",InvalidCoverInitializedName:"Invalid shorthand property initializer.",InvalidDecimal:"Invalid decimal.",InvalidDigit:({radix:ie})=>`Expected number in radix ${ie}.`,InvalidEscapeSequence:"Bad character escape sequence.",InvalidEscapeSequenceTemplate:"Invalid escape sequence in template.",InvalidEscapedReservedWord:({reservedWord:ie})=>`Escape sequence in keyword ${ie}.`,InvalidIdentifier:({identifierName:ie})=>`Invalid identifier ${ie}.`,InvalidLhs:({ancestor:ie})=>`Invalid left-hand side in ${f(ie)}.`,InvalidLhsBinding:({ancestor:ie})=>`Binding invalid left-hand side in ${f(ie)}.`,InvalidLhsOptionalChaining:({ancestor:ie})=>`Invalid optional chaining in the left-hand side of ${f(ie)}.`,InvalidNumber:"Invalid number.",InvalidOrMissingExponent:"Floating-point numbers require a valid exponent after the 'e'.",InvalidOrUnexpectedToken:({unexpected:ie})=>`Unexpected character '${ie}'.`,InvalidParenthesizedAssignment:"Invalid parenthesized assignment pattern.",InvalidPrivateFieldResolution:({identifierName:ie})=>`Private name #${ie} is not defined.`,InvalidPropertyBindingPattern:"Binding member expression.",InvalidRecordProperty:"Only properties and spread elements are allowed in record definitions.",InvalidRestAssignmentPattern:"Invalid rest operator's argument.",LabelRedeclaration:({labelName:ie})=>`Label '${ie}' is already declared.`,LetInLexicalBinding:"'let' is disallowed as a lexically bound name.",LineTerminatorBeforeArrow:"No line break is allowed before '=>'.",MalformedRegExpFlags:"Invalid regular expression flag.",MissingClassName:"A class name is required.",MissingEqInAssignment:"Only '=' operator can be used for specifying default value.",MissingSemicolon:"Missing semicolon.",MissingPlugin:({missingPlugin:ie})=>`This experimental syntax requires enabling the parser plugin: ${ie.map(w=>JSON.stringify(w)).join(", ")}.`,MissingOneOfPlugins:({missingPlugin:ie})=>`This experimental syntax requires enabling one of the following parser plugin(s): ${ie.map(w=>JSON.stringify(w)).join(", ")}.`,MissingUnicodeEscape:"Expecting Unicode escape sequence \\uXXXX.",MixingCoalesceWithLogical:"Nullish coalescing operator(??) requires parens when mixing with logical operators.",ModuleAttributeDifferentFromType:"The only accepted module attribute is `type`.",ModuleAttributeInvalidValue:"Only string literals are allowed as module attribute values.",ModuleAttributesWithDuplicateKeys:({key:ie})=>`Duplicate key "${ie}" is not allowed in module attributes.`,ModuleExportNameHasLoneSurrogate:({surrogateCharCode:ie})=>`An export name cannot include a lone surrogate, found '\\u${ie.toString(16)}'.`,ModuleExportUndefined:({localName:ie})=>`Export '${ie}' is not defined.`,MultipleDefaultsInSwitch:"Multiple default clauses.",NewlineAfterThrow:"Illegal newline after throw.",NoCatchOrFinally:"Missing catch or finally clause.",NumberIdentifier:"Identifier directly after number.",NumericSeparatorInEscapeSequence:"Numeric separators are not allowed inside unicode escape sequences or hex escape sequences.",ObsoleteAwaitStar:"'await*' has been removed from the async functions proposal. Use Promise.all() instead.",OptionalChainingNoNew:"Constructors in/after an Optional Chain are not allowed.",OptionalChainingNoTemplate:"Tagged Template Literals are not allowed in optionalChain.",OverrideOnConstructor:"'override' modifier cannot appear on a constructor declaration.",ParamDupe:"Argument name clash.",PatternHasAccessor:"Object pattern can't contain getter or setter.",PatternHasMethod:"Object pattern can't contain methods.",PrivateInExpectedIn:({identifierName:ie})=>`Private names are only allowed in property accesses (\`obj.#${ie}\`) or in \`in\` expressions (\`#${ie} in obj\`).`,PrivateNameRedeclaration:({identifierName:ie})=>`Duplicate private name #${ie}.`,RecordExpressionBarIncorrectEndSyntaxType:"Record expressions ending with '|}' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionBarIncorrectStartSyntaxType:"Record expressions starting with '{|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionHashIncorrectStartSyntaxType:"Record expressions starting with '#{' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",RecordNoProto:"'__proto__' is not allowed in Record expressions.",RestTrailingComma:"Unexpected trailing comma after rest element.",SloppyFunction:"In non-strict mode code, functions can only be declared at top level or inside a block.",SloppyFunctionAnnexB:"In non-strict mode code, functions can only be declared at top level, inside a block, or as the body of an if statement.",SourcePhaseImportRequiresDefault:'Only `import source x from "./module"` is valid.',StaticPrototype:"Classes may not have static property named prototype.",SuperNotAllowed:"`super()` is only valid inside a class constructor of a subclass. Maybe a typo in the method name ('constructor') or not extending another class?",SuperPrivateField:"Private fields can't be accessed on super.",TrailingDecorator:"Decorators must be attached to a class element.",TupleExpressionBarIncorrectEndSyntaxType:"Tuple expressions ending with '|]' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionBarIncorrectStartSyntaxType:"Tuple expressions starting with '[|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionHashIncorrectStartSyntaxType:"Tuple expressions starting with '#[' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",UnexpectedArgumentPlaceholder:"Unexpected argument placeholder.",UnexpectedAwaitAfterPipelineBody:'Unexpected "await" after pipeline body; await must have parentheses in minimal proposal.',UnexpectedDigitAfterHash:"Unexpected digit after hash token.",UnexpectedImportExport:"'import' and 'export' may only appear at the top level.",UnexpectedKeyword:({keyword:ie})=>`Unexpected keyword '${ie}'.`,UnexpectedLeadingDecorator:"Leading decorators must be attached to a class declaration.",UnexpectedLexicalDeclaration:"Lexical declaration cannot appear in a single-statement context.",UnexpectedNewTarget:"`new.target` can only be used in functions or class properties.",UnexpectedNumericSeparator:"A numeric separator is only allowed between two digits.",UnexpectedPrivateField:"Unexpected private name.",UnexpectedReservedWord:({reservedWord:ie})=>`Unexpected reserved word '${ie}'.`,UnexpectedSuper:"'super' is only allowed in object methods and classes.",UnexpectedToken:({expected:ie,unexpected:w})=>`Unexpected token${w?` '${w}'.`:""}${ie?`, expected "${ie}"`:""}`,UnexpectedTokenUnaryExponentiation:"Illegal expression. Wrap left hand side or entire exponentiation in parentheses.",UnexpectedUsingDeclaration:"Using declaration cannot appear in the top level when source type is `script`.",UnsupportedBind:"Binding should be performed on object property.",UnsupportedDecoratorExport:"A decorated export must export a class declaration.",UnsupportedDefaultExport:"Only expressions, functions or classes are allowed as the `default` export.",UnsupportedImport:"`import` can only be used in `import()` or `import.meta`.",UnsupportedMetaProperty:({target:ie,onlyValidPropertyName:w})=>`The only valid meta property for ${ie} is ${ie}.${w}.`,UnsupportedParameterDecorator:"Decorators cannot be used to decorate parameters.",UnsupportedPropertyDecorator:"Decorators cannot be used to decorate object literal properties.",UnsupportedSuper:"'super' can only be used with function calls (i.e. super()) or in property accesses (i.e. super.prop or super[prop]).",UnterminatedComment:"Unterminated comment.",UnterminatedRegExp:"Unterminated regular expression.",UnterminatedString:"Unterminated string constant.",UnterminatedTemplate:"Unterminated template.",UsingDeclarationExport:"Using declaration cannot be exported.",UsingDeclarationHasBindingPattern:"Using declaration cannot have destructuring patterns.",VarRedeclaration:({identifierName:ie})=>`Identifier '${ie}' has already been declared.`,YieldBindingIdentifier:"Can not use 'yield' as identifier inside a generator.",YieldInParameter:"Yield expression is not allowed in formal parameters.",ZeroDigitNumericSeparator:"Numeric separator can not be used after leading 0."},y={StrictDelete:"Deleting local variable in strict mode.",StrictEvalArguments:({referenceName:ie})=>`Assigning to '${ie}' in strict mode.`,StrictEvalArgumentsBinding:({bindingName:ie})=>`Binding '${ie}' in strict mode.`,StrictFunction:"In strict mode code, functions can only be declared at top level or inside a block.",StrictNumericEscape:"The only valid numeric escape in strict mode is '\\0'.",StrictOctalLiteral:"Legacy octal literals are not allowed in strict mode.",StrictWith:"'with' in strict mode."},B=new Set(["ArrowFunctionExpression","AssignmentExpression","ConditionalExpression","YieldExpression"]),v=Object.assign({PipeBodyIsTighter:"Unexpected yield after pipeline body; any yield expression acting as Hack-style pipe body must be parenthesized due to its loose operator precedence.",PipeTopicRequiresHackPipes:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.',PipeTopicUnbound:"Topic reference is unbound; it must be inside a pipe body.",PipeTopicUnconfiguredToken:({token:ie})=>`Invalid topic token ${ie}. In order to use ${ie} as a topic reference, the pipelineOperator plugin must be configured with { "proposal": "hack", "topicToken": "${ie}" }.`,PipeTopicUnused:"Hack-style pipe body does not contain a topic reference; Hack-style pipes must use topic at least once.",PipeUnparenthesizedBody:({type:ie})=>`Hack-style pipe body cannot be an unparenthesized ${f({type:ie})}; please wrap it in parentheses.`},{PipelineBodyNoArrow:'Unexpected arrow "=>" after pipeline body; arrow function in pipeline body must be parenthesized.',PipelineBodySequenceExpression:"Pipeline body may not be a comma-separated sequence expression.",PipelineHeadSequenceExpression:"Pipeline head should not be a comma-separated sequence expression.",PipelineTopicUnused:"Pipeline is in topic style but does not use topic reference.",PrimaryTopicNotAllowed:"Topic reference was used in a lexical context without topic binding.",PrimaryTopicRequiresSmartPipeline:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.'}),G=["message"];function T(ie,w,J){Object.defineProperty(ie,w,{enumerable:!1,configurable:!0,value:J})}function O({toMessage:ie,code:w,reasonCode:J,syntaxPlugin:ye}){let ut=J==="MissingPlugin"||J==="MissingOneOfPlugins";{let zt={AccessorCannotDeclareThisParameter:"AccesorCannotDeclareThisParameter",AccessorCannotHaveTypeParameters:"AccesorCannotHaveTypeParameters",ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:"ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference",SetAccessorCannotHaveOptionalParameter:"SetAccesorCannotHaveOptionalParameter",SetAccessorCannotHaveRestParameter:"SetAccesorCannotHaveRestParameter",SetAccessorCannotHaveReturnType:"SetAccesorCannotHaveReturnType"};zt[J]&&(J=zt[J])}return function zt(Zr,wr){let Yn=new SyntaxError;return Yn.code=w,Yn.reasonCode=J,Yn.loc=Zr,Yn.pos=Zr.index,Yn.syntaxPlugin=ye,ut&&(Yn.missingPlugin=wr.missingPlugin),T(Yn,"clone",function(Dn={}){var Po;let{line:fc,column:Xc,index:Yo}=(Po=Dn.loc)!=null?Po:Zr;return zt(new r(fc,Xc,Yo),Object.assign({},wr,Dn.details))}),T(Yn,"details",wr),Object.defineProperty(Yn,"message",{configurable:!0,get(){let Dn=`${ie(wr)} (${Zr.line}:${Zr.column})`;return this.message=Dn,Dn},set(Dn){Object.defineProperty(this,"message",{value:Dn,writable:!0})}}),Yn}}function X(ie,w){if(Array.isArray(ie))return ye=>X(ye,ie[0]);let J={};for(let ye of Object.keys(ie)){let ut=ie[ye],zt=typeof ut=="string"?{message:()=>ut}:typeof ut=="function"?{message:ut}:ut,{message:Zr}=zt,wr=t(zt,G),Yn=typeof Zr=="string"?()=>Zr:Zr;J[ye]=O(Object.assign({code:"BABEL_PARSER_SYNTAX_ERROR",reasonCode:ye,toMessage:Yn},w?{syntaxPlugin:w}:{},wr))}return J}var U=Object.assign({},X(g),X(m),X(y),X`pipelineOperator`(v));function le(){return{sourceType:"script",sourceFilename:void 0,startIndex:0,startColumn:0,startLine:1,allowAwaitOutsideFunction:!1,allowReturnOutsideFunction:!1,allowNewTargetOutsideFunction:!1,allowImportExportEverywhere:!1,allowSuperOutsideMethod:!1,allowUndeclaredExports:!1,plugins:[],strictMode:null,ranges:!1,tokens:!1,createImportExpressions:!1,createParenthesizedExpressions:!1,errorRecovery:!1,attachComment:!0,annexB:!0}}function ae(ie){let w=le();if(ie==null)return w;if(ie.annexB!=null&&ie.annexB!==!1)throw new Error("The `annexB` option can only be set to `false`.");for(let J of Object.keys(w))ie[J]!=null&&(w[J]=ie[J]);if(w.startLine===1)ie.startIndex==null&&w.startColumn>0?w.startIndex=w.startColumn:ie.startColumn==null&&w.startIndex>0&&(w.startColumn=w.startIndex);else if((ie.startColumn==null||ie.startIndex==null)&&ie.startIndex!=null)throw new Error("With a `startLine > 1` you must also specify `startIndex` and `startColumn`.");return w}var{defineProperty:ge}=Object,fe=(ie,w)=>{ie&&ge(ie,w,{enumerable:!1,value:ie[w]})};function pe(ie){return fe(ie.loc.start,"index"),fe(ie.loc.end,"index"),ie}var he=ie=>class extends ie{parse(){let w=pe(super.parse());return this.optionFlags&128&&(w.tokens=w.tokens.map(pe)),w}parseRegExpLiteral({pattern:w,flags:J}){let ye=null;try{ye=new RegExp(w,J)}catch{}let ut=this.estreeParseLiteral(ye);return ut.regex={pattern:w,flags:J},ut}parseBigIntLiteral(w){let J;try{J=BigInt(w)}catch{J=null}let ye=this.estreeParseLiteral(J);return ye.bigint=String(ye.value||w),ye}parseDecimalLiteral(w){let J=this.estreeParseLiteral(null);return J.decimal=String(J.value||w),J}estreeParseLiteral(w){return this.parseLiteral(w,"Literal")}parseStringLiteral(w){return this.estreeParseLiteral(w)}parseNumericLiteral(w){return this.estreeParseLiteral(w)}parseNullLiteral(){return this.estreeParseLiteral(null)}parseBooleanLiteral(w){return this.estreeParseLiteral(w)}directiveToStmt(w){let J=w.value;delete w.value,J.type="Literal",J.raw=J.extra.raw,J.value=J.extra.expressionValue;let ye=w;return ye.type="ExpressionStatement",ye.expression=J,ye.directive=J.extra.rawValue,delete J.extra,ye}initFunction(w,J){super.initFunction(w,J),w.expression=!1}checkDeclaration(w){w!=null&&this.isObjectProperty(w)?this.checkDeclaration(w.value):super.checkDeclaration(w)}getObjectOrClassMethodParams(w){return w.value.params}isValidDirective(w){var J;return w.type==="ExpressionStatement"&&w.expression.type==="Literal"&&typeof w.expression.value=="string"&&!((J=w.expression.extra)!=null&&J.parenthesized)}parseBlockBody(w,J,ye,ut,zt){super.parseBlockBody(w,J,ye,ut,zt);let Zr=w.directives.map(wr=>this.directiveToStmt(wr));w.body=Zr.concat(w.body),delete w.directives}parsePrivateName(){let w=super.parsePrivateName();return this.getPluginOption("estree","classFeatures")?this.convertPrivateNameToPrivateIdentifier(w):w}convertPrivateNameToPrivateIdentifier(w){let J=super.getPrivateNameSV(w);return w=w,delete w.id,w.name=J,w.type="PrivateIdentifier",w}isPrivateName(w){return this.getPluginOption("estree","classFeatures")?w.type==="PrivateIdentifier":super.isPrivateName(w)}getPrivateNameSV(w){return this.getPluginOption("estree","classFeatures")?w.name:super.getPrivateNameSV(w)}parseLiteral(w,J){let ye=super.parseLiteral(w,J);return ye.raw=ye.extra.raw,delete ye.extra,ye}parseFunctionBody(w,J,ye=!1){super.parseFunctionBody(w,J,ye),w.expression=w.body.type!=="BlockStatement"}parseMethod(w,J,ye,ut,zt,Zr,wr=!1){let Yn=this.startNode();Yn.kind=w.kind,Yn=super.parseMethod(Yn,J,ye,ut,zt,Zr,wr),Yn.type="FunctionExpression",delete Yn.kind,w.value=Yn;let{typeParameters:Dn}=w;return Dn&&(delete w.typeParameters,Yn.typeParameters=Dn,this.resetStartLocationFromNode(Yn,Dn)),Zr==="ClassPrivateMethod"&&(w.computed=!1),this.finishNode(w,"MethodDefinition")}nameIsConstructor(w){return w.type==="Literal"?w.value==="constructor":super.nameIsConstructor(w)}parseClassProperty(...w){let J=super.parseClassProperty(...w);return this.getPluginOption("estree","classFeatures")&&(J.type="PropertyDefinition"),J}parseClassPrivateProperty(...w){let J=super.parseClassPrivateProperty(...w);return this.getPluginOption("estree","classFeatures")&&(J.type="PropertyDefinition",J.computed=!1),J}parseObjectMethod(w,J,ye,ut,zt){let Zr=super.parseObjectMethod(w,J,ye,ut,zt);return Zr&&(Zr.type="Property",Zr.kind==="method"&&(Zr.kind="init"),Zr.shorthand=!1),Zr}parseObjectProperty(w,J,ye,ut){let zt=super.parseObjectProperty(w,J,ye,ut);return zt&&(zt.kind="init",zt.type="Property"),zt}isValidLVal(w,J,ye){return w==="Property"?"value":super.isValidLVal(w,J,ye)}isAssignable(w,J){return w!=null&&this.isObjectProperty(w)?this.isAssignable(w.value,J):super.isAssignable(w,J)}toAssignable(w,J=!1){if(w!=null&&this.isObjectProperty(w)){let{key:ye,value:ut}=w;this.isPrivateName(ye)&&this.classScope.usePrivateName(this.getPrivateNameSV(ye),ye.loc.start),this.toAssignable(ut,J)}else super.toAssignable(w,J)}toAssignableObjectExpressionProp(w,J,ye){w.type==="Property"&&(w.kind==="get"||w.kind==="set")?this.raise(U.PatternHasAccessor,w.key):w.type==="Property"&&w.method?this.raise(U.PatternHasMethod,w.key):super.toAssignableObjectExpressionProp(w,J,ye)}finishCallExpression(w,J){let ye=super.finishCallExpression(w,J);if(ye.callee.type==="Import"){var ut,zt;ye.type="ImportExpression",ye.source=ye.arguments[0],ye.options=(ut=ye.arguments[1])!=null?ut:null,ye.attributes=(zt=ye.arguments[1])!=null?zt:null,delete ye.arguments,delete ye.callee}return ye}toReferencedArguments(w){w.type!=="ImportExpression"&&super.toReferencedArguments(w)}parseExport(w,J){let ye=this.state.lastTokStartLoc,ut=super.parseExport(w,J);switch(ut.type){case"ExportAllDeclaration":ut.exported=null;break;case"ExportNamedDeclaration":ut.specifiers.length===1&&ut.specifiers[0].type==="ExportNamespaceSpecifier"&&(ut.type="ExportAllDeclaration",ut.exported=ut.specifiers[0].exported,delete ut.specifiers);case"ExportDefaultDeclaration":{var zt;let{declaration:Zr}=ut;Zr?.type==="ClassDeclaration"&&((zt=Zr.decorators)==null?void 0:zt.length)>0&&Zr.start===ut.start&&this.resetStartLocation(ut,ye)}break}return ut}parseSubscript(w,J,ye,ut){let zt=super.parseSubscript(w,J,ye,ut);if(ut.optionalChainMember){if((zt.type==="OptionalMemberExpression"||zt.type==="OptionalCallExpression")&&(zt.type=zt.type.substring(8)),ut.stop){let Zr=this.startNodeAtNode(zt);return Zr.expression=zt,this.finishNode(Zr,"ChainExpression")}}else(zt.type==="MemberExpression"||zt.type==="CallExpression")&&(zt.optional=!1);return zt}isOptionalMemberExpression(w){return w.type==="ChainExpression"?w.expression.type==="MemberExpression":super.isOptionalMemberExpression(w)}hasPropertyAsPrivateName(w){return w.type==="ChainExpression"&&(w=w.expression),super.hasPropertyAsPrivateName(w)}isObjectProperty(w){return w.type==="Property"&&w.kind==="init"&&!w.method}isObjectMethod(w){return w.type==="Property"&&(w.method||w.kind==="get"||w.kind==="set")}finishNodeAt(w,J,ye){return pe(super.finishNodeAt(w,J,ye))}resetStartLocation(w,J){super.resetStartLocation(w,J),pe(w)}resetEndLocation(w,J=this.state.lastTokEndLoc){super.resetEndLocation(w,J),pe(w)}},be=class{constructor(ie,w){this.token=void 0,this.preserveSpace=void 0,this.token=ie,this.preserveSpace=!!w}},Te={brace:new be("{"),j_oTag:new be("...",!0)};Te.template=new be("`",!0);var ke=!0,x=!0,et=!0,Ue=!0,Je=!0,Xe=!0,ft=class{constructor(ie,w={}){this.label=void 0,this.keyword=void 0,this.beforeExpr=void 0,this.startsExpr=void 0,this.rightAssociative=void 0,this.isLoop=void 0,this.isAssign=void 0,this.prefix=void 0,this.postfix=void 0,this.binop=void 0,this.label=ie,this.keyword=w.keyword,this.beforeExpr=!!w.beforeExpr,this.startsExpr=!!w.startsExpr,this.rightAssociative=!!w.rightAssociative,this.isLoop=!!w.isLoop,this.isAssign=!!w.isAssign,this.prefix=!!w.prefix,this.postfix=!!w.postfix,this.binop=w.binop!=null?w.binop:null,this.updateContext=null}},Gt=new Map;function er(ie,w={}){w.keyword=ie;let J=In(ie,w);return Gt.set(ie,J),J}function Ur(ie,w){return In(ie,{beforeExpr:ke,binop:w})}var Ot=-1,dr=[],Ar=[],or=[],Fr=[],$r=[],Or=[];function In(ie,w={}){var J,ye,ut,zt;return++Ot,Ar.push(ie),or.push((J=w.binop)!=null?J:-1),Fr.push((ye=w.beforeExpr)!=null?ye:!1),$r.push((ut=w.startsExpr)!=null?ut:!1),Or.push((zt=w.prefix)!=null?zt:!1),dr.push(new ft(ie,w)),Ot}function Br(ie,w={}){var J,ye,ut,zt;return++Ot,Gt.set(ie,Ot),Ar.push(ie),or.push((J=w.binop)!=null?J:-1),Fr.push((ye=w.beforeExpr)!=null?ye:!1),$r.push((ut=w.startsExpr)!=null?ut:!1),Or.push((zt=w.prefix)!=null?zt:!1),dr.push(new ft("name",w)),Ot}var tr={bracketL:In("[",{beforeExpr:ke,startsExpr:x}),bracketHashL:In("#[",{beforeExpr:ke,startsExpr:x}),bracketBarL:In("[|",{beforeExpr:ke,startsExpr:x}),bracketR:In("]"),bracketBarR:In("|]"),braceL:In("{",{beforeExpr:ke,startsExpr:x}),braceBarL:In("{|",{beforeExpr:ke,startsExpr:x}),braceHashL:In("#{",{beforeExpr:ke,startsExpr:x}),braceR:In("}"),braceBarR:In("|}"),parenL:In("(",{beforeExpr:ke,startsExpr:x}),parenR:In(")"),comma:In(",",{beforeExpr:ke}),semi:In(";",{beforeExpr:ke}),colon:In(":",{beforeExpr:ke}),doubleColon:In("::",{beforeExpr:ke}),dot:In("."),question:In("?",{beforeExpr:ke}),questionDot:In("?."),arrow:In("=>",{beforeExpr:ke}),template:In("template"),ellipsis:In("...",{beforeExpr:ke}),backQuote:In("`",{startsExpr:x}),dollarBraceL:In("${",{beforeExpr:ke,startsExpr:x}),templateTail:In("...`",{startsExpr:x}),templateNonTail:In("...${",{beforeExpr:ke,startsExpr:x}),at:In("@"),hash:In("#",{startsExpr:x}),interpreterDirective:In("#!..."),eq:In("=",{beforeExpr:ke,isAssign:Ue}),assign:In("_=",{beforeExpr:ke,isAssign:Ue}),slashAssign:In("_=",{beforeExpr:ke,isAssign:Ue}),xorAssign:In("_=",{beforeExpr:ke,isAssign:Ue}),moduloAssign:In("_=",{beforeExpr:ke,isAssign:Ue}),incDec:In("++/--",{prefix:Je,postfix:Xe,startsExpr:x}),bang:In("!",{beforeExpr:ke,prefix:Je,startsExpr:x}),tilde:In("~",{beforeExpr:ke,prefix:Je,startsExpr:x}),doubleCaret:In("^^",{startsExpr:x}),doubleAt:In("@@",{startsExpr:x}),pipeline:Ur("|>",0),nullishCoalescing:Ur("??",1),logicalOR:Ur("||",1),logicalAND:Ur("&&",2),bitwiseOR:Ur("|",3),bitwiseXOR:Ur("^",4),bitwiseAND:Ur("&",5),equality:Ur("==/!=/===/!==",6),lt:Ur("/<=/>=",7),gt:Ur("/<=/>=",7),relational:Ur("/<=/>=",7),bitShift:Ur("<>/>>>",8),bitShiftL:Ur("<>/>>>",8),bitShiftR:Ur("<>/>>>",8),plusMin:In("+/-",{beforeExpr:ke,binop:9,prefix:Je,startsExpr:x}),modulo:In("%",{binop:10,startsExpr:x}),star:In("*",{binop:10}),slash:Ur("/",10),exponent:In("**",{beforeExpr:ke,binop:11,rightAssociative:!0}),_in:er("in",{beforeExpr:ke,binop:7}),_instanceof:er("instanceof",{beforeExpr:ke,binop:7}),_break:er("break"),_case:er("case",{beforeExpr:ke}),_catch:er("catch"),_continue:er("continue"),_debugger:er("debugger"),_default:er("default",{beforeExpr:ke}),_else:er("else",{beforeExpr:ke}),_finally:er("finally"),_function:er("function",{startsExpr:x}),_if:er("if"),_return:er("return",{beforeExpr:ke}),_switch:er("switch"),_throw:er("throw",{beforeExpr:ke,prefix:Je,startsExpr:x}),_try:er("try"),_var:er("var"),_const:er("const"),_with:er("with"),_new:er("new",{beforeExpr:ke,startsExpr:x}),_this:er("this",{startsExpr:x}),_super:er("super",{startsExpr:x}),_class:er("class",{startsExpr:x}),_extends:er("extends",{beforeExpr:ke}),_export:er("export"),_import:er("import",{startsExpr:x}),_null:er("null",{startsExpr:x}),_true:er("true",{startsExpr:x}),_false:er("false",{startsExpr:x}),_typeof:er("typeof",{beforeExpr:ke,prefix:Je,startsExpr:x}),_void:er("void",{beforeExpr:ke,prefix:Je,startsExpr:x}),_delete:er("delete",{beforeExpr:ke,prefix:Je,startsExpr:x}),_do:er("do",{isLoop:et,beforeExpr:ke}),_for:er("for",{isLoop:et}),_while:er("while",{isLoop:et}),_as:Br("as",{startsExpr:x}),_assert:Br("assert",{startsExpr:x}),_async:Br("async",{startsExpr:x}),_await:Br("await",{startsExpr:x}),_defer:Br("defer",{startsExpr:x}),_from:Br("from",{startsExpr:x}),_get:Br("get",{startsExpr:x}),_let:Br("let",{startsExpr:x}),_meta:Br("meta",{startsExpr:x}),_of:Br("of",{startsExpr:x}),_sent:Br("sent",{startsExpr:x}),_set:Br("set",{startsExpr:x}),_source:Br("source",{startsExpr:x}),_static:Br("static",{startsExpr:x}),_using:Br("using",{startsExpr:x}),_yield:Br("yield",{startsExpr:x}),_asserts:Br("asserts",{startsExpr:x}),_checks:Br("checks",{startsExpr:x}),_exports:Br("exports",{startsExpr:x}),_global:Br("global",{startsExpr:x}),_implements:Br("implements",{startsExpr:x}),_intrinsic:Br("intrinsic",{startsExpr:x}),_infer:Br("infer",{startsExpr:x}),_is:Br("is",{startsExpr:x}),_mixins:Br("mixins",{startsExpr:x}),_proto:Br("proto",{startsExpr:x}),_require:Br("require",{startsExpr:x}),_satisfies:Br("satisfies",{startsExpr:x}),_keyof:Br("keyof",{startsExpr:x}),_readonly:Br("readonly",{startsExpr:x}),_unique:Br("unique",{startsExpr:x}),_abstract:Br("abstract",{startsExpr:x}),_declare:Br("declare",{startsExpr:x}),_enum:Br("enum",{startsExpr:x}),_module:Br("module",{startsExpr:x}),_namespace:Br("namespace",{startsExpr:x}),_interface:Br("interface",{startsExpr:x}),_type:Br("type",{startsExpr:x}),_opaque:Br("opaque",{startsExpr:x}),name:In("name",{startsExpr:x}),placeholder:In("%%",{startsExpr:!0}),string:In("string",{startsExpr:x}),num:In("num",{startsExpr:x}),bigint:In("bigint",{startsExpr:x}),decimal:In("decimal",{startsExpr:x}),regexp:In("regexp",{startsExpr:x}),privateName:In("#name",{startsExpr:x}),eof:In("eof"),jsxName:In("jsxName"),jsxText:In("jsxText",{beforeExpr:!0}),jsxTagStart:In("jsxTagStart",{startsExpr:!0}),jsxTagEnd:In("jsxTagEnd")};function gn(ie){return ie>=93&&ie<=133}function Gn(ie){return ie<=92}function we(ie){return ie>=58&&ie<=133}function Zi(ie){return ie>=58&&ie<=137}function Za(ie){return Fr[ie]}function ka(ie){return $r[ie]}function Qs(ie){return ie>=29&&ie<=33}function lr(ie){return ie>=129&&ie<=131}function ga(ie){return ie>=90&&ie<=92}function vi(ie){return ie>=58&&ie<=92}function Qu(ie){return ie>=39&&ie<=59}function Yu(ie){return ie===34}function YA(ie){return Or[ie]}function ud(ie){return ie>=121&&ie<=123}function TA(ie){return ie>=124&&ie<=130}function Ld(ie){return Ar[ie]}function jr(ie){return or[ie]}function Gr(ie){return ie===57}function Ir(ie){return ie>=24&&ie<=25}function nn(ie){return dr[ie]}dr[8].updateContext=ie=>{ie.pop()},dr[5].updateContext=dr[7].updateContext=dr[23].updateContext=ie=>{ie.push(Te.brace)},dr[22].updateContext=ie=>{ie[ie.length-1]===Te.template?ie.pop():ie.push(Te.template)},dr[143].updateContext=ie=>{ie.push(Te.j_expr,Te.j_oTag)};var Cn="\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\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\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\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\u0AF9\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-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\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-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\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\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\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\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\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",Vn="\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0897-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F\uFF65",Ji=new RegExp("["+Cn+"]"),Hr=new RegExp("["+Cn+Vn+"]");Cn=Vn=null;var Ws=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,4,51,13,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,39,27,10,22,251,41,7,1,17,2,60,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,200,32,32,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,42,9,8936,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,229,29,3,0,496,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4153,7,221,3,5761,15,7472,16,621,2467,541,1507,4938,6,4191],Ko=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,7,9,32,4,318,1,80,3,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,343,9,54,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,10,1,2,0,49,6,4,4,14,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,245,1,2,9,726,6,110,6,6,9,4759,9,787719,239];function ai(ie,w){let J=65536;for(let ye=0,ut=w.length;yeie)return!1;if(J+=w[ye+1],J>=ie)return!0}return!1}function pa(ie){return ie<65?ie===36:ie<=90?!0:ie<97?ie===95:ie<=122?!0:ie<=65535?ie>=170&&Ji.test(String.fromCharCode(ie)):ai(ie,Ws)}function sg(ie){return ie<48?ie===36:ie<58?!0:ie<65?!1:ie<=90?!0:ie<97?ie===95:ie<=122?!0:ie<=65535?ie>=170&&Hr.test(String.fromCharCode(ie)):ai(ie,Ws)||ai(ie,Ko)}var Fu={keyword:["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"],strict:["implements","interface","let","package","private","protected","public","static","yield"],strictBind:["eval","arguments"]},Cg=new Set(Fu.keyword),Zu=new Set(Fu.strict),Cl=new Set(Fu.strictBind);function wi(ie,w){return w&&ie==="await"||ie==="enum"}function ts(ie,w){return wi(ie,w)||Zu.has(ie)}function $i(ie){return Cl.has(ie)}function Ga(ie,w){return ts(ie,w)||$i(ie)}function $s(ie){return Cg.has(ie)}function xl(ie,w,J){return ie===64&&w===64&&pa(J)}var qo=new Set(["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete","implements","interface","let","package","private","protected","public","static","yield","eval","arguments","enum","await"]);function Na(ie){return qo.has(ie)}var wu=class{constructor(ie){this.flags=0,this.names=new Map,this.firstLexicalName="",this.flags=ie}},Dg=class{constructor(ie,w){this.parser=void 0,this.scopeStack=[],this.inModule=void 0,this.undefinedExports=new Map,this.parser=ie,this.inModule=w}get inTopLevel(){return(this.currentScope().flags&1)>0}get inFunction(){return(this.currentVarScopeFlags()&2)>0}get allowSuper(){return(this.currentThisScopeFlags()&16)>0}get allowDirectSuper(){return(this.currentThisScopeFlags()&32)>0}get inClass(){return(this.currentThisScopeFlags()&64)>0}get inClassAndNotInNonArrowFunction(){let ie=this.currentThisScopeFlags();return(ie&64)>0&&(ie&2)===0}get inStaticBlock(){for(let ie=this.scopeStack.length-1;;ie--){let{flags:w}=this.scopeStack[ie];if(w&128)return!0;if(w&451)return!1}}get inNonArrowFunction(){return(this.currentThisScopeFlags()&2)>0}get treatFunctionsAsVar(){return this.treatFunctionsAsVarInScope(this.currentScope())}createScope(ie){return new wu(ie)}enter(ie){this.scopeStack.push(this.createScope(ie))}exit(){return this.scopeStack.pop().flags}treatFunctionsAsVarInScope(ie){return!!(ie.flags&130||!this.parser.inModule&&ie.flags&1)}declareName(ie,w,J){let ye=this.currentScope();if(w&8||w&16){this.checkRedeclarationInScope(ye,ie,w,J);let ut=ye.names.get(ie)||0;w&16?ut=ut|4:(ye.firstLexicalName||(ye.firstLexicalName=ie),ut=ut|2),ye.names.set(ie,ut),w&8&&this.maybeExportDefined(ye,ie)}else if(w&4)for(let ut=this.scopeStack.length-1;ut>=0&&(ye=this.scopeStack[ut],this.checkRedeclarationInScope(ye,ie,w,J),ye.names.set(ie,(ye.names.get(ie)||0)|1),this.maybeExportDefined(ye,ie),!(ye.flags&387));--ut);this.parser.inModule&&ye.flags&1&&this.undefinedExports.delete(ie)}maybeExportDefined(ie,w){this.parser.inModule&&ie.flags&1&&this.undefinedExports.delete(w)}checkRedeclarationInScope(ie,w,J,ye){this.isRedeclaredInScope(ie,w,J)&&this.parser.raise(U.VarRedeclaration,ye,{identifierName:w})}isRedeclaredInScope(ie,w,J){if(!(J&1))return!1;if(J&8)return ie.names.has(w);let ye=ie.names.get(w);return J&16?(ye&2)>0||!this.treatFunctionsAsVarInScope(ie)&&(ye&1)>0:(ye&2)>0&&!(ie.flags&8&&ie.firstLexicalName===w)||!this.treatFunctionsAsVarInScope(ie)&&(ye&4)>0}checkLocalExport(ie){let{name:w}=ie;this.scopeStack[0].names.has(w)||this.undefinedExports.set(w,ie.loc.start)}currentScope(){return this.scopeStack[this.scopeStack.length-1]}currentVarScopeFlags(){for(let ie=this.scopeStack.length-1;;ie--){let{flags:w}=this.scopeStack[ie];if(w&387)return w}}currentThisScopeFlags(){for(let ie=this.scopeStack.length-1;;ie--){let{flags:w}=this.scopeStack[ie];if(w&451&&!(w&4))return w}}},hl=class extends wu{constructor(...ie){super(...ie),this.declareFunctions=new Set}},au=class extends Dg{createScope(ie){return new hl(ie)}declareName(ie,w,J){let ye=this.currentScope();if(w&2048){this.checkRedeclarationInScope(ye,ie,w,J),this.maybeExportDefined(ye,ie),ye.declareFunctions.add(ie);return}super.declareName(ie,w,J)}isRedeclaredInScope(ie,w,J){if(super.isRedeclaredInScope(ie,w,J))return!0;if(J&2048&&!ie.declareFunctions.has(w)){let ye=ie.names.get(w);return(ye&4)>0||(ye&2)>0}return!1}checkLocalExport(ie){this.scopeStack[0].declareFunctions.has(ie.name)||super.checkLocalExport(ie)}},Lg=class{constructor(){this.sawUnambiguousESM=!1,this.ambiguousScriptDifferentAst=!1}sourceToOffsetPos(ie){return ie+this.startIndex}offsetToSourcePos(ie){return ie-this.startIndex}hasPlugin(ie){if(typeof ie=="string")return this.plugins.has(ie);{let[w,J]=ie;if(!this.hasPlugin(w))return!1;let ye=this.plugins.get(w);for(let ut of Object.keys(J))if(ye?.[ut]!==J[ut])return!1;return!0}}getPluginOption(ie,w){var J;return(J=this.plugins.get(ie))==null?void 0:J[w]}};function cf(ie,w){ie.trailingComments===void 0?ie.trailingComments=w:ie.trailingComments.unshift(...w)}function Td(ie,w){ie.leadingComments===void 0?ie.leadingComments=w:ie.leadingComments.unshift(...w)}function ei(ie,w){ie.innerComments===void 0?ie.innerComments=w:ie.innerComments.unshift(...w)}function Qa(ie,w,J){let ye=null,ut=w.length;for(;ye===null&&ut>0;)ye=w[--ut];ye===null||ye.start>J.start?ei(ie,J.comments):cf(ye,J.comments)}var Rt=class extends Lg{addComment(ie){this.filename&&(ie.loc.filename=this.filename);let{commentsLen:w}=this.state;this.comments.length!==w&&(this.comments.length=w),this.comments.push(ie),this.state.commentsLen++}processComment(ie){let{commentStack:w}=this.state,J=w.length;if(J===0)return;let ye=J-1,ut=w[ye];ut.start===ie.end&&(ut.leadingNode=ie,ye--);let{start:zt}=ie;for(;ye>=0;ye--){let Zr=w[ye],wr=Zr.end;if(wr>zt)Zr.containingNode=ie,this.finalizeComment(Zr),w.splice(ye,1);else{wr===zt&&(Zr.trailingNode=ie);break}}}finalizeComment(ie){let{comments:w}=ie;if(ie.leadingNode!==null||ie.trailingNode!==null)ie.leadingNode!==null&&cf(ie.leadingNode,w),ie.trailingNode!==null&&Td(ie.trailingNode,w);else{let{containingNode:J,start:ye}=ie;if(this.input.charCodeAt(this.offsetToSourcePos(ye)-1)===44)switch(J.type){case"ObjectExpression":case"ObjectPattern":case"RecordExpression":Qa(J,J.properties,ie);break;case"CallExpression":case"OptionalCallExpression":Qa(J,J.arguments,ie);break;case"FunctionDeclaration":case"FunctionExpression":case"ArrowFunctionExpression":case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":Qa(J,J.params,ie);break;case"ArrayExpression":case"ArrayPattern":case"TupleExpression":Qa(J,J.elements,ie);break;case"ExportNamedDeclaration":case"ImportDeclaration":Qa(J,J.specifiers,ie);break;case"TSEnumDeclaration":Qa(J,J.members,ie);break;case"TSEnumBody":Qa(J,J.members,ie);break;default:ei(J,w)}else ei(J,w)}}finalizeRemainingComments(){let{commentStack:ie}=this.state;for(let w=ie.length-1;w>=0;w--)this.finalizeComment(ie[w]);this.state.commentStack=[]}resetPreviousNodeTrailingComments(ie){let{commentStack:w}=this.state,{length:J}=w;if(J===0)return;let ye=w[J-1];ye.leadingNode===ie&&(ye.leadingNode=null)}resetPreviousIdentifierLeadingComments(ie){let{commentStack:w}=this.state,{length:J}=w;J!==0&&(w[J-1].trailingNode===ie?w[J-1].trailingNode=null:J>=2&&w[J-2].trailingNode===ie&&(w[J-2].trailingNode=null))}takeSurroundingComments(ie,w,J){let{commentStack:ye}=this.state,ut=ye.length;if(ut===0)return;let zt=ut-1;for(;zt>=0;zt--){let Zr=ye[zt],wr=Zr.end;if(Zr.start===J)Zr.leadingNode=ie;else if(wr===w)Zr.trailingNode=ie;else if(wr0}set strict(w){w?this.flags|=1:this.flags&=-2}init({strictMode:w,sourceType:J,startIndex:ye,startLine:ut,startColumn:zt}){this.strict=w===!1?!1:w===!0?!0:J==="module",this.startIndex=ye,this.curLine=ut,this.lineStart=-zt,this.startLoc=this.endLoc=new r(ut,zt,ye)}get maybeInArrowParameters(){return(this.flags&2)>0}set maybeInArrowParameters(w){w?this.flags|=2:this.flags&=-3}get inType(){return(this.flags&4)>0}set inType(w){w?this.flags|=4:this.flags&=-5}get noAnonFunctionType(){return(this.flags&8)>0}set noAnonFunctionType(w){w?this.flags|=8:this.flags&=-9}get hasFlowComment(){return(this.flags&16)>0}set hasFlowComment(w){w?this.flags|=16:this.flags&=-17}get isAmbientContext(){return(this.flags&32)>0}set isAmbientContext(w){w?this.flags|=32:this.flags&=-33}get inAbstractClass(){return(this.flags&64)>0}set inAbstractClass(w){w?this.flags|=64:this.flags&=-65}get inDisallowConditionalTypesContext(){return(this.flags&128)>0}set inDisallowConditionalTypesContext(w){w?this.flags|=128:this.flags&=-129}get soloAwait(){return(this.flags&256)>0}set soloAwait(w){w?this.flags|=256:this.flags&=-257}get inFSharpPipelineDirectBody(){return(this.flags&512)>0}set inFSharpPipelineDirectBody(w){w?this.flags|=512:this.flags&=-513}get canStartJSXElement(){return(this.flags&1024)>0}set canStartJSXElement(w){w?this.flags|=1024:this.flags&=-1025}get containsEsc(){return(this.flags&2048)>0}set containsEsc(w){w?this.flags|=2048:this.flags&=-2049}get hasTopLevelAwait(){return(this.flags&4096)>0}set hasTopLevelAwait(w){w?this.flags|=4096:this.flags&=-4097}curPosition(){return new r(this.curLine,this.pos-this.lineStart,this.pos+this.startIndex)}clone(){let w=new u$n;return w.flags=this.flags,w.startIndex=this.startIndex,w.curLine=this.curLine,w.lineStart=this.lineStart,w.startLoc=this.startLoc,w.endLoc=this.endLoc,w.errors=this.errors.slice(),w.potentialArrowAt=this.potentialArrowAt,w.noArrowAt=this.noArrowAt.slice(),w.noArrowParamsConversionAt=this.noArrowParamsConversionAt.slice(),w.topicContext=this.topicContext,w.labels=this.labels.slice(),w.commentsLen=this.commentsLen,w.commentStack=this.commentStack.slice(),w.pos=this.pos,w.type=this.type,w.value=this.value,w.start=this.start,w.end=this.end,w.lastTokEndLoc=this.lastTokEndLoc,w.lastTokStartLoc=this.lastTokStartLoc,w.context=this.context.slice(),w.firstInvalidTemplateEscapePos=this.firstInvalidTemplateEscapePos,w.strictErrors=this.strictErrors,w.tokensLength=this.tokensLength,w}},HA=function(ie){return ie>=48&&ie<=57},No={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},Hl={bin:ie=>ie===48||ie===49,oct:ie=>ie>=48&&ie<=55,dec:ie=>ie>=48&&ie<=57,hex:ie=>ie>=48&&ie<=57||ie>=65&&ie<=70||ie>=97&&ie<=102};function Ff(ie,w,J,ye,ut,zt){let Zr=J,wr=ye,Yn=ut,Dn="",Po=null,fc=J,{length:Xc}=w;for(;;){if(J>=Xc){zt.unterminated(Zr,wr,Yn),Dn+=w.slice(fc,J);break}let Yo=w.charCodeAt(J);if(Vd(ie,Yo,w,J)){Dn+=w.slice(fc,J);break}if(Yo===92){Dn+=w.slice(fc,J);let yu=bA(w,J,ye,ut,ie==="template",zt);yu.ch===null&&!Po?Po={pos:J,lineStart:ye,curLine:ut}:Dn+=yu.ch,{pos:J,lineStart:ye,curLine:ut}=yu,fc=J}else Yo===8232||Yo===8233?(++J,++ut,ye=J):Yo===10||Yo===13?ie==="template"?(Dn+=w.slice(fc,J)+` -`,++J,Yo===13&&w.charCodeAt(J)===10&&++J,++ut,fc=ye=J):zt.unterminated(Zr,wr,Yn):++J}return{pos:J,str:Dn,firstInvalidLoc:Po,lineStart:ye,curLine:ut,containsInvalid:!!Po}}function Vd(ie,w,J,ye){return ie==="template"?w===96||w===36&&J.charCodeAt(ye+1)===123:w===(ie==="double"?34:39)}function bA(ie,w,J,ye,ut,zt){let Zr=!ut;w++;let wr=Dn=>({pos:w,ch:Dn,lineStart:J,curLine:ye}),Yn=ie.charCodeAt(w++);switch(Yn){case 110:return wr(` -`);case 114:return wr("\r");case 120:{let Dn;return{code:Dn,pos:w}=Os(ie,w,J,ye,2,!1,Zr,zt),wr(Dn===null?null:String.fromCharCode(Dn))}case 117:{let Dn;return{code:Dn,pos:w}=ec(ie,w,J,ye,Zr,zt),wr(Dn===null?null:String.fromCodePoint(Dn))}case 116:return wr(" ");case 98:return wr("\b");case 118:return wr("\v");case 102:return wr("\f");case 13:ie.charCodeAt(w)===10&&++w;case 10:J=w,++ye;case 8232:case 8233:return wr("");case 56:case 57:if(ut)return wr(null);zt.strictNumericEscape(w-1,J,ye);default:if(Yn>=48&&Yn<=55){let Dn=w-1,Po=/^[0-7]+/.exec(ie.slice(Dn,w+2))[0],fc=parseInt(Po,8);fc>255&&(Po=Po.slice(0,-1),fc=parseInt(Po,8)),w+=Po.length-1;let Xc=ie.charCodeAt(w);if(Po!=="0"||Xc===56||Xc===57){if(ut)return wr(null);zt.strictNumericEscape(Dn,J,ye)}return wr(String.fromCharCode(fc))}return wr(String.fromCharCode(Yn))}}function Os(ie,w,J,ye,ut,zt,Zr,wr){let Yn=w,Dn;return{n:Dn,pos:w}=Hi(ie,w,J,ye,16,ut,zt,!1,wr,!Zr),Dn===null&&(Zr?wr.invalidEscapeSequence(Yn,J,ye):w=Yn-1),{code:Dn,pos:w}}function Hi(ie,w,J,ye,ut,zt,Zr,wr,Yn,Dn){let Po=w,fc=ut===16?No.hex:No.decBinOct,Xc=ut===16?Hl.hex:ut===10?Hl.dec:ut===8?Hl.oct:Hl.bin,Yo=!1,yu=0;for(let op=0,lA=zt??1/0;op=97?Kd=tI-97+10:tI>=65?Kd=tI-65+10:HA(tI)?Kd=tI-48:Kd=1/0,Kd>=ut){if(Kd<=9&&Dn)return{n:null,pos:w};if(Kd<=9&&Yn.invalidDigit(w,J,ye,ut))Kd=0;else if(Zr)Kd=0,Yo=!0;else break}++w,yu=yu*ut+Kd}return w===Po||zt!=null&&w-Po!==zt||Yo?{n:null,pos:w}:{n:yu,pos:w}}function ec(ie,w,J,ye,ut,zt){let Zr=ie.charCodeAt(w),wr;if(Zr===123){if(++w,{code:wr,pos:w}=Os(ie,w,J,ye,ie.indexOf("}",w)-w,!0,ut,zt),++w,wr!==null&&wr>1114111)if(ut)zt.invalidCodePoint(w,J,ye);else return{code:null,pos:w}}else({code:wr,pos:w}=Os(ie,w,J,ye,4,!1,ut,zt));return{code:wr,pos:w}}function ll(ie,w,J){return new r(J,ie-w,ie)}var Ts=new Set([103,109,115,105,121,117,100,118]),NA=class{constructor(ie){let w=ie.startIndex||0;this.type=ie.type,this.value=ie.value,this.start=w+ie.start,this.end=w+ie.end,this.loc=new s(ie.startLoc,ie.endLoc)}},Ud=class extends Rt{constructor(ie,w){super(),this.isLookahead=void 0,this.tokens=[],this.errorHandlers_readInt={invalidDigit:(J,ye,ut,zt)=>this.optionFlags&1024?(this.raise(U.InvalidDigit,ll(J,ye,ut),{radix:zt}),!0):!1,numericSeparatorInEscapeSequence:this.errorBuilder(U.NumericSeparatorInEscapeSequence),unexpectedNumericSeparator:this.errorBuilder(U.UnexpectedNumericSeparator)},this.errorHandlers_readCodePoint=Object.assign({},this.errorHandlers_readInt,{invalidEscapeSequence:this.errorBuilder(U.InvalidEscapeSequence),invalidCodePoint:this.errorBuilder(U.InvalidCodePoint)}),this.errorHandlers_readStringContents_string=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:(J,ye,ut)=>{this.recordStrictModeErrors(U.StrictNumericEscape,ll(J,ye,ut))},unterminated:(J,ye,ut)=>{throw this.raise(U.UnterminatedString,ll(J-1,ye,ut))}}),this.errorHandlers_readStringContents_template=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:this.errorBuilder(U.StrictNumericEscape),unterminated:(J,ye,ut)=>{throw this.raise(U.UnterminatedTemplate,ll(J,ye,ut))}}),this.state=new cA,this.state.init(ie),this.input=w,this.length=w.length,this.comments=[],this.isLookahead=!1}pushToken(ie){this.tokens.length=this.state.tokensLength,this.tokens.push(ie),++this.state.tokensLength}next(){this.checkKeywordEscapes(),this.optionFlags&128&&this.pushToken(new NA(this.state)),this.state.lastTokEndLoc=this.state.endLoc,this.state.lastTokStartLoc=this.state.startLoc,this.nextToken()}eat(ie){return this.match(ie)?(this.next(),!0):!1}match(ie){return this.state.type===ie}createLookaheadState(ie){return{pos:ie.pos,value:null,type:ie.type,start:ie.start,end:ie.end,context:[this.curContext()],inType:ie.inType,startLoc:ie.startLoc,lastTokEndLoc:ie.lastTokEndLoc,curLine:ie.curLine,lineStart:ie.lineStart,curPosition:ie.curPosition}}lookahead(){let ie=this.state;this.state=this.createLookaheadState(ie),this.isLookahead=!0,this.nextToken(),this.isLookahead=!1;let w=this.state;return this.state=ie,w}nextTokenStart(){return this.nextTokenStartSince(this.state.pos)}nextTokenStartSince(ie){return on.lastIndex=ie,on.test(this.input)?on.lastIndex:ie}lookaheadCharCode(){return this.input.charCodeAt(this.nextTokenStart())}nextTokenInLineStart(){return this.nextTokenInLineStartSince(this.state.pos)}nextTokenInLineStartSince(ie){return Bo.lastIndex=ie,Bo.test(this.input)?Bo.lastIndex:ie}lookaheadInLineCharCode(){return this.input.charCodeAt(this.nextTokenInLineStart())}codePointAtPos(ie){let w=this.input.charCodeAt(ie);if((w&64512)===55296&&++iethis.raise(w,J)),this.state.strictErrors.clear())}curContext(){return this.state.context[this.state.context.length-1]}nextToken(){if(this.skipSpace(),this.state.start=this.state.pos,this.isLookahead||(this.state.startLoc=this.state.curPosition()),this.state.pos>=this.length){this.finishToken(140);return}this.getTokenFromCode(this.codePointAtPos(this.state.pos))}skipBlockComment(ie){let w;this.isLookahead||(w=this.state.curPosition());let J=this.state.pos,ye=this.input.indexOf(ie,J+2);if(ye===-1)throw this.raise(U.UnterminatedComment,this.state.curPosition());for(this.state.pos=ye+ie.length,Hu.lastIndex=J+2;Hu.test(this.input)&&Hu.lastIndex<=ye;)++this.state.curLine,this.state.lineStart=Hu.lastIndex;if(this.isLookahead)return;let ut={type:"CommentBlock",value:this.input.slice(J+2,ye),start:this.sourceToOffsetPos(J),end:this.sourceToOffsetPos(ye+ie.length),loc:new s(w,this.state.curPosition())};return this.optionFlags&128&&this.pushToken(ut),ut}skipLineComment(ie){let w=this.state.pos,J;this.isLookahead||(J=this.state.curPosition());let ye=this.input.charCodeAt(this.state.pos+=ie);if(this.state.posie)){let ut=this.skipLineComment(3);ut!==void 0&&(this.addComment(ut),w?.push(ut))}else break e}else if(J===60&&!this.inModule&&this.optionFlags&4096){let ye=this.state.pos;if(this.input.charCodeAt(ye+1)===33&&this.input.charCodeAt(ye+2)===45&&this.input.charCodeAt(ye+3)===45){let ut=this.skipLineComment(4);ut!==void 0&&(this.addComment(ut),w?.push(ut))}else break e}else break e}}if(w?.length>0){let J=this.state.pos,ye={start:this.sourceToOffsetPos(ie),end:this.sourceToOffsetPos(J),comments:w,leadingNode:null,trailingNode:null,containingNode:null};this.state.commentStack.push(ye)}}finishToken(ie,w){this.state.end=this.state.pos,this.state.endLoc=this.state.curPosition();let J=this.state.type;this.state.type=ie,this.state.value=w,this.isLookahead||this.updateContext(J)}replaceToken(ie){this.state.type=ie,this.updateContext()}readToken_numberSign(){if(this.state.pos===0&&this.readToken_interpreter())return;let ie=this.state.pos+1,w=this.codePointAtPos(ie);if(w>=48&&w<=57)throw this.raise(U.UnexpectedDigitAfterHash,this.state.curPosition());if(w===123||w===91&&this.hasPlugin("recordAndTuple")){if(this.expectPlugin("recordAndTuple"),this.getPluginOption("recordAndTuple","syntaxType")==="bar")throw this.raise(w===123?U.RecordExpressionHashIncorrectStartSyntaxType:U.TupleExpressionHashIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,w===123?this.finishToken(7):this.finishToken(1)}else pa(w)?(++this.state.pos,this.finishToken(139,this.readWord1(w))):w===92?(++this.state.pos,this.finishToken(139,this.readWord1())):this.finishOp(27,1)}readToken_dot(){let ie=this.input.charCodeAt(this.state.pos+1);if(ie>=48&&ie<=57){this.readNumber(!0);return}ie===46&&this.input.charCodeAt(this.state.pos+2)===46?(this.state.pos+=3,this.finishToken(21)):(++this.state.pos,this.finishToken(16))}readToken_slash(){this.input.charCodeAt(this.state.pos+1)===61?this.finishOp(31,2):this.finishOp(56,1)}readToken_interpreter(){if(this.state.pos!==0||this.length<2)return!1;let ie=this.input.charCodeAt(this.state.pos+1);if(ie!==33)return!1;let w=this.state.pos;for(this.state.pos+=1;!us(ie)&&++this.state.pos=48&&w<=57)?(this.state.pos+=2,this.finishToken(18)):(++this.state.pos,this.finishToken(17))}getTokenFromCode(ie){switch(ie){case 46:this.readToken_dot();return;case 40:++this.state.pos,this.finishToken(10);return;case 41:++this.state.pos,this.finishToken(11);return;case 59:++this.state.pos,this.finishToken(13);return;case 44:++this.state.pos,this.finishToken(12);return;case 91:if(this.hasPlugin("recordAndTuple")&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(U.TupleExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(2)}else++this.state.pos,this.finishToken(0);return;case 93:++this.state.pos,this.finishToken(3);return;case 123:if(this.hasPlugin("recordAndTuple")&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(U.RecordExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(6)}else++this.state.pos,this.finishToken(5);return;case 125:++this.state.pos,this.finishToken(8);return;case 58:this.hasPlugin("functionBind")&&this.input.charCodeAt(this.state.pos+1)===58?this.finishOp(15,2):(++this.state.pos,this.finishToken(14));return;case 63:this.readToken_question();return;case 96:this.readTemplateToken();return;case 48:{let w=this.input.charCodeAt(this.state.pos+1);if(w===120||w===88){this.readRadixNumber(16);return}if(w===111||w===79){this.readRadixNumber(8);return}if(w===98||w===66){this.readRadixNumber(2);return}}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:this.readNumber(!1);return;case 34:case 39:this.readString(ie);return;case 47:this.readToken_slash();return;case 37:case 42:this.readToken_mult_modulo(ie);return;case 124:case 38:this.readToken_pipe_amp(ie);return;case 94:this.readToken_caret();return;case 43:case 45:this.readToken_plus_min(ie);return;case 60:this.readToken_lt();return;case 62:this.readToken_gt();return;case 61:case 33:this.readToken_eq_excl(ie);return;case 126:this.finishOp(36,1);return;case 64:this.readToken_atSign();return;case 35:this.readToken_numberSign();return;case 92:this.readWord();return;default:if(pa(ie)){this.readWord(ie);return}}throw this.raise(U.InvalidOrUnexpectedToken,this.state.curPosition(),{unexpected:String.fromCodePoint(ie)})}finishOp(ie,w){let J=this.input.slice(this.state.pos,this.state.pos+w);this.state.pos+=w,this.finishToken(ie,J)}readRegexp(){let ie=this.state.startLoc,w=this.state.start+1,J,ye,{pos:ut}=this.state;for(;;++ut){if(ut>=this.length)throw this.raise(U.UnterminatedRegExp,a(ie,1));let Yn=this.input.charCodeAt(ut);if(us(Yn))throw this.raise(U.UnterminatedRegExp,a(ie,1));if(J)J=!1;else{if(Yn===91)ye=!0;else if(Yn===93&&ye)ye=!1;else if(Yn===47&&!ye)break;J=Yn===92}}let zt=this.input.slice(w,ut);++ut;let Zr="",wr=()=>a(ie,ut+2-w);for(;ut=2&&this.input.charCodeAt(w)===48;if(wr){let Xc=this.input.slice(w,this.state.pos);if(this.recordStrictModeErrors(U.StrictOctalLiteral,J),!this.state.strict){let Yo=Xc.indexOf("_");Yo>0&&this.raise(U.ZeroDigitNumericSeparator,a(J,Yo))}Zr=wr&&!/[89]/.test(Xc)}let Yn=this.input.charCodeAt(this.state.pos);if(Yn===46&&!Zr&&(++this.state.pos,this.readInt(10),ye=!0,Yn=this.input.charCodeAt(this.state.pos)),(Yn===69||Yn===101)&&!Zr&&(Yn=this.input.charCodeAt(++this.state.pos),(Yn===43||Yn===45)&&++this.state.pos,this.readInt(10)===null&&this.raise(U.InvalidOrMissingExponent,J),ye=!0,zt=!0,Yn=this.input.charCodeAt(this.state.pos)),Yn===110&&((ye||wr)&&this.raise(U.InvalidBigIntLiteral,J),++this.state.pos,ut=!0),Yn===109){this.expectPlugin("decimal",this.state.curPosition()),(zt||wr)&&this.raise(U.InvalidDecimal,J),++this.state.pos;var Dn=!0}if(pa(this.codePointAtPos(this.state.pos)))throw this.raise(U.NumberIdentifier,this.state.curPosition());let Po=this.input.slice(w,this.state.pos).replace(/[_mn]/g,"");if(ut){this.finishToken(136,Po);return}if(Dn){this.finishToken(137,Po);return}let fc=Zr?parseInt(Po,8):parseFloat(Po);this.finishToken(135,fc)}readCodePoint(ie){let{code:w,pos:J}=ec(this.input,this.state.pos,this.state.lineStart,this.state.curLine,ie,this.errorHandlers_readCodePoint);return this.state.pos=J,w}readString(ie){let{str:w,pos:J,curLine:ye,lineStart:ut}=Ff(ie===34?"double":"single",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_string);this.state.pos=J+1,this.state.lineStart=ut,this.state.curLine=ye,this.finishToken(134,w)}readTemplateContinuation(){this.match(8)||this.unexpected(null,8),this.state.pos--,this.readTemplateToken()}readTemplateToken(){let ie=this.input[this.state.pos],{str:w,firstInvalidLoc:J,pos:ye,curLine:ut,lineStart:zt}=Ff("template",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_template);this.state.pos=ye+1,this.state.lineStart=zt,this.state.curLine=ut,J&&(this.state.firstInvalidTemplateEscapePos=new r(J.curLine,J.pos-J.lineStart,this.sourceToOffsetPos(J.pos))),this.input.codePointAt(ye)===96?this.finishToken(24,J?null:ie+w+"`"):(this.state.pos++,this.finishToken(25,J?null:ie+w+"${"))}recordStrictModeErrors(ie,w){let J=w.index;this.state.strict&&!this.state.strictErrors.has(J)?this.raise(ie,w):this.state.strictErrors.set(J,[ie,w])}readWord1(ie){this.state.containsEsc=!1;let w="",J=this.state.pos,ye=this.state.pos;for(ie!==void 0&&(this.state.pos+=ie<=65535?1:2);this.state.pos=0;Zr--){let wr=zt[Zr];if(wr.loc.index===ut)return zt[Zr]=ie(ye,J);if(wr.loc.indexthis.hasPlugin(w)))throw this.raise(U.MissingOneOfPlugins,this.state.startLoc,{missingPlugin:ie})}errorBuilder(ie){return(w,J,ye)=>{this.raise(ie,ll(w,J,ye))}}},Ra=class{constructor(){this.privateNames=new Set,this.loneAccessors=new Map,this.undefinedPrivateNames=new Map}},ys=class{constructor(ie){this.parser=void 0,this.stack=[],this.undefinedPrivateNames=new Map,this.parser=ie}current(){return this.stack[this.stack.length-1]}enter(){this.stack.push(new Ra)}exit(){let ie=this.stack.pop(),w=this.current();for(let[J,ye]of Array.from(ie.undefinedPrivateNames))w?w.undefinedPrivateNames.has(J)||w.undefinedPrivateNames.set(J,ye):this.parser.raise(U.InvalidPrivateFieldResolution,ye,{identifierName:J})}declarePrivateName(ie,w,J){let{privateNames:ye,loneAccessors:ut,undefinedPrivateNames:zt}=this.current(),Zr=ye.has(ie);if(w&3){let wr=Zr&&ut.get(ie);if(wr){let Yn=wr&4,Dn=w&4,Po=wr&3,fc=w&3;Zr=Po===fc||Yn!==Dn,Zr||ut.delete(ie)}else Zr||ut.set(ie,w)}Zr&&this.parser.raise(U.PrivateNameRedeclaration,J,{identifierName:ie}),ye.add(ie),zt.delete(ie)}usePrivateName(ie,w){let J;for(J of this.stack)if(J.privateNames.has(ie))return;J?J.undefinedPrivateNames.set(ie,w):this.parser.raise(U.InvalidPrivateFieldResolution,w,{identifierName:ie})}},Xa=class{constructor(ie=0){this.type=ie}canBeArrowParameterDeclaration(){return this.type===2||this.type===1}isCertainlyParameterDeclaration(){return this.type===3}},cm=class extends Xa{constructor(ie){super(ie),this.declarationErrors=new Map}recordDeclarationError(ie,w){let J=w.index;this.declarationErrors.set(J,[ie,w])}clearDeclarationError(ie){this.declarationErrors.delete(ie)}iterateErrors(ie){this.declarationErrors.forEach(ie)}},eo=class{constructor(ie){this.parser=void 0,this.stack=[new Xa],this.parser=ie}enter(ie){this.stack.push(ie)}exit(){this.stack.pop()}recordParameterInitializerError(ie,w){let J=w.loc.start,{stack:ye}=this,ut=ye.length-1,zt=ye[ut];for(;!zt.isCertainlyParameterDeclaration();){if(zt.canBeArrowParameterDeclaration())zt.recordDeclarationError(ie,J);else return;zt=ye[--ut]}this.parser.raise(ie,J)}recordArrowParameterBindingError(ie,w){let{stack:J}=this,ye=J[J.length-1],ut=w.loc.start;if(ye.isCertainlyParameterDeclaration())this.parser.raise(ie,ut);else if(ye.canBeArrowParameterDeclaration())ye.recordDeclarationError(ie,ut);else return}recordAsyncArrowParametersError(ie){let{stack:w}=this,J=w.length-1,ye=w[J];for(;ye.canBeArrowParameterDeclaration();)ye.type===2&&ye.recordDeclarationError(U.AwaitBindingIdentifier,ie),ye=w[--J]}validateAsPattern(){let{stack:ie}=this,w=ie[ie.length-1];w.canBeArrowParameterDeclaration()&&w.iterateErrors(([J,ye])=>{this.parser.raise(J,ye);let ut=ie.length-2,zt=ie[ut];for(;zt.canBeArrowParameterDeclaration();)zt.clearDeclarationError(ye.index),zt=ie[--ut]})}};function ps(){return new Xa(3)}function oc(){return new cm(1)}function TC(){return new cm(2)}function pI(){return new Xa}var SI=class{constructor(){this.stacks=[]}enter(ie){this.stacks.push(ie)}exit(){this.stacks.pop()}currentFlags(){return this.stacks[this.stacks.length-1]}get hasAwait(){return(this.currentFlags()&2)>0}get hasYield(){return(this.currentFlags()&1)>0}get hasReturn(){return(this.currentFlags()&4)>0}get hasIn(){return(this.currentFlags()&8)>0}};function Bl(ie,w){return(ie?2:0)|(w?1:0)}var il=class extends Ud{addExtra(ie,w,J,ye=!0){if(!ie)return;let{extra:ut}=ie;ut==null&&(ut={},ie.extra=ut),ye?ut[w]=J:Object.defineProperty(ut,w,{enumerable:ye,value:J})}isContextual(ie){return this.state.type===ie&&!this.state.containsEsc}isUnparsedContextual(ie,w){let J=ie+w.length;if(this.input.slice(ie,J)===w){let ye=this.input.charCodeAt(J);return!(sg(ye)||(ye&64512)===55296)}return!1}isLookaheadContextual(ie){let w=this.nextTokenStart();return this.isUnparsedContextual(w,ie)}eatContextual(ie){return this.isContextual(ie)?(this.next(),!0):!1}expectContextual(ie,w){if(!this.eatContextual(ie)){if(w!=null)throw this.raise(w,this.state.startLoc);this.unexpected(null,ie)}}canInsertSemicolon(){return this.match(140)||this.match(8)||this.hasPrecedingLineBreak()}hasPrecedingLineBreak(){return og(this.input,this.offsetToSourcePos(this.state.lastTokEndLoc.index),this.state.start)}hasFollowingLineBreak(){return og(this.input,this.state.end,this.nextTokenStart())}isLineTerminator(){return this.eat(13)||this.canInsertSemicolon()}semicolon(ie=!0){(ie?this.isLineTerminator():this.eat(13))||this.raise(U.MissingSemicolon,this.state.lastTokEndLoc)}expect(ie,w){this.eat(ie)||this.unexpected(w,ie)}tryParse(ie,w=this.state.clone()){let J={node:null};try{let ye=ie((ut=null)=>{throw J.node=ut,J});if(this.state.errors.length>w.errors.length){let ut=this.state;return this.state=w,this.state.tokensLength=ut.tokensLength,{node:ye,error:ut.errors[w.errors.length],thrown:!1,aborted:!1,failState:ut}}return{node:ye,error:null,thrown:!1,aborted:!1,failState:null}}catch(ye){let ut=this.state;if(this.state=w,ye instanceof SyntaxError)return{node:null,error:ye,thrown:!0,aborted:!1,failState:ut};if(ye===J)return{node:J.node,error:null,thrown:!1,aborted:!0,failState:ut};throw ye}}checkExpressionErrors(ie,w){if(!ie)return!1;let{shorthandAssignLoc:J,doubleProtoLoc:ye,privateKeyLoc:ut,optionalParametersLoc:zt}=ie,Zr=!!J||!!ye||!!zt||!!ut;if(!w)return Zr;J!=null&&this.raise(U.InvalidCoverInitializedName,J),ye!=null&&this.raise(U.DuplicateProto,ye),ut!=null&&this.raise(U.UnexpectedPrivateField,ut),zt!=null&&this.unexpected(zt)}isLiteralPropertyName(){return Zi(this.state.type)}isPrivateName(ie){return ie.type==="PrivateName"}getPrivateNameSV(ie){return ie.id.name}hasPropertyAsPrivateName(ie){return(ie.type==="MemberExpression"||ie.type==="OptionalMemberExpression")&&this.isPrivateName(ie.property)}isObjectProperty(ie){return ie.type==="ObjectProperty"}isObjectMethod(ie){return ie.type==="ObjectMethod"}initializeScopes(ie=this.options.sourceType==="module"){let w=this.state.labels;this.state.labels=[];let J=this.exportedIdentifiers;this.exportedIdentifiers=new Set;let ye=this.inModule;this.inModule=ie;let ut=this.scope,zt=this.getScopeHandler();this.scope=new zt(this,ie);let Zr=this.prodParam;this.prodParam=new SI;let wr=this.classScope;this.classScope=new ys(this);let Yn=this.expressionScope;return this.expressionScope=new eo(this),()=>{this.state.labels=w,this.exportedIdentifiers=J,this.inModule=ye,this.scope=ut,this.prodParam=Zr,this.classScope=wr,this.expressionScope=Yn}}enterInitialScopes(){let ie=0;this.inModule&&(ie|=2),this.scope.enter(1),this.prodParam.enter(ie)}checkDestructuringPrivate(ie){let{privateKeyLoc:w}=ie;w!==null&&this.expectPlugin("destructuringPrivate",w)}},LA=class{constructor(){this.shorthandAssignLoc=null,this.doubleProtoLoc=null,this.privateKeyLoc=null,this.optionalParametersLoc=null}},lf=class{constructor(ie,w,J){this.type="",this.start=w,this.end=0,this.loc=new s(J),ie?.optionFlags&64&&(this.range=[w,0]),ie!=null&&ie.filename&&(this.loc.filename=ie.filename)}},za=lf.prototype;za.__clone=function(){let ie=new lf(void 0,this.start,this.loc.start),w=Object.keys(this);for(let J=0,ye=w.length;J`Cannot overwrite reserved type ${ie}.`,DeclareClassElement:"The `declare` modifier can only appear on class fields.",DeclareClassFieldInitializer:"Initializers are not allowed in fields with the `declare` modifier.",DuplicateDeclareModuleExports:"Duplicate `declare module.exports` statement.",EnumBooleanMemberNotInitialized:({memberName:ie,enumName:w})=>`Boolean enum members need to be initialized. Use either \`${ie} = true,\` or \`${ie} = false,\` in enum \`${w}\`.`,EnumDuplicateMemberName:({memberName:ie,enumName:w})=>`Enum member names need to be unique, but the name \`${ie}\` has already been used before in enum \`${w}\`.`,EnumInconsistentMemberValues:({enumName:ie})=>`Enum \`${ie}\` has inconsistent member initializers. Either use no initializers, or consistently use literals (either booleans, numbers, or strings) for all member initializers.`,EnumInvalidExplicitType:({invalidEnumType:ie,enumName:w})=>`Enum type \`${ie}\` is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${w}\`.`,EnumInvalidExplicitTypeUnknownSupplied:({enumName:ie})=>`Supplied enum type is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${ie}\`.`,EnumInvalidMemberInitializerPrimaryType:({enumName:ie,memberName:w,explicitType:J})=>`Enum \`${ie}\` has type \`${J}\`, so the initializer of \`${w}\` needs to be a ${J} literal.`,EnumInvalidMemberInitializerSymbolType:({enumName:ie,memberName:w})=>`Symbol enum members cannot be initialized. Use \`${w},\` in enum \`${ie}\`.`,EnumInvalidMemberInitializerUnknownType:({enumName:ie,memberName:w})=>`The enum member initializer for \`${w}\` needs to be a literal (either a boolean, number, or string) in enum \`${ie}\`.`,EnumInvalidMemberName:({enumName:ie,memberName:w,suggestion:J})=>`Enum member names cannot start with lowercase 'a' through 'z'. Instead of using \`${w}\`, consider using \`${J}\`, in enum \`${ie}\`.`,EnumNumberMemberNotInitialized:({enumName:ie,memberName:w})=>`Number enum members need to be initialized, e.g. \`${w} = 1\` in enum \`${ie}\`.`,EnumStringMemberInconsistentlyInitialized:({enumName:ie})=>`String enum members need to consistently either all use initializers, or use no initializers, in enum \`${ie}\`.`,GetterMayNotHaveThisParam:"A getter cannot have a `this` parameter.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` or `typeof` keyword.",ImportTypeShorthandOnlyInPureImport:"The `type` and `typeof` keywords on named imports can only be used on regular `import` statements. It cannot be used with `import type` or `import typeof` statements.",InexactInsideExact:"Explicit inexact syntax cannot appear inside an explicit exact object type.",InexactInsideNonObject:"Explicit inexact syntax cannot appear in class or interface definitions.",InexactVariance:"Explicit inexact syntax cannot have variance.",InvalidNonTypeImportInDeclareModule:"Imports within a `declare module` body must always be `import type` or `import typeof`.",MissingTypeParamDefault:"Type parameter declaration needs a default, since a preceding type parameter declaration has a default.",NestedDeclareModule:"`declare module` cannot be used inside another `declare module`.",NestedFlowComment:"Cannot have a flow comment inside another flow comment.",PatternIsOptional:Object.assign({message:"A binding pattern parameter cannot be optional in an implementation signature."},{reasonCode:"OptionalBindingPattern"}),SetterMayNotHaveThisParam:"A setter cannot have a `this` parameter.",SpreadVariance:"Spread properties cannot have variance.",ThisParamAnnotationRequired:"A type annotation is required for the `this` parameter.",ThisParamBannedInConstructor:"Constructors cannot have a `this` parameter; constructors don't bind `this` like other functions.",ThisParamMayNotBeOptional:"The `this` parameter cannot be optional.",ThisParamMustBeFirst:"The `this` parameter must be the first function parameter.",ThisParamNoDefault:"The `this` parameter may not have a default value.",TypeBeforeInitializer:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeCastInPattern:"The type cast expression is expected to be wrapped with parenthesis.",UnexpectedExplicitInexactInObject:"Explicit inexact syntax must appear at the end of an inexact object.",UnexpectedReservedType:({reservedType:ie})=>`Unexpected reserved type ${ie}.`,UnexpectedReservedUnderscore:"`_` is only allowed as a type argument to call or new.",UnexpectedSpaceBetweenModuloChecks:"Spaces between `%` and `checks` are not allowed here.",UnexpectedSpreadType:"Spread operator cannot appear in class or interface definitions.",UnexpectedSubtractionOperand:'Unexpected token, expected "number" or "bigint".',UnexpectedTokenAfterTypeParameter:"Expected an arrow function after this type parameter declaration.",UnexpectedTypeParameterBeforeAsyncArrowFunction:"Type parameters must come after the async keyword, e.g. instead of ` async () => {}`, use `async () => {}`.",UnsupportedDeclareExportKind:({unsupportedExportKind:ie,suggestion:w})=>`\`declare export ${ie}\` is not supported. Use \`${w}\` instead.`,UnsupportedStatementInDeclareModule:"Only declares and type imports are allowed inside declare module.",UnterminatedFlowComment:"Unterminated flow-comment."});function Og(ie){return ie.type==="DeclareExportAllDeclaration"||ie.type==="DeclareExportDeclaration"&&(!ie.declaration||ie.declaration.type!=="TypeAlias"&&ie.declaration.type!=="InterfaceDeclaration")}function sp(ie){return ie.importKind==="type"||ie.importKind==="typeof"}var lm={const:"declare export var",let:"declare export var",type:"export type",interface:"export interface"};function ch(ie,w){let J=[],ye=[];for(let ut=0;utclass extends ie{constructor(...w){super(...w),this.flowPragma=void 0}getScopeHandler(){return au}shouldParseTypes(){return this.getPluginOption("flow","all")||this.flowPragma==="flow"}finishToken(w,J){w!==134&&w!==13&&w!==28&&this.flowPragma===void 0&&(this.flowPragma=null),super.finishToken(w,J)}addComment(w){if(this.flowPragma===void 0){let J=Xl.exec(w.value);if(J)if(J[1]==="flow")this.flowPragma="flow";else if(J[1]==="noflow")this.flowPragma="noflow";else throw new Error("Unexpected flow pragma")}super.addComment(w)}flowParseTypeInitialiser(w){let J=this.state.inType;this.state.inType=!0,this.expect(w||14);let ye=this.flowParseType();return this.state.inType=J,ye}flowParsePredicate(){let w=this.startNode(),J=this.state.startLoc;return this.next(),this.expectContextual(110),this.state.lastTokStartLoc.index>J.index+1&&this.raise(_l.UnexpectedSpaceBetweenModuloChecks,J),this.eat(10)?(w.value=super.parseExpression(),this.expect(11),this.finishNode(w,"DeclaredPredicate")):this.finishNode(w,"InferredPredicate")}flowParseTypeAndPredicateInitialiser(){let w=this.state.inType;this.state.inType=!0,this.expect(14);let J=null,ye=null;return this.match(54)?(this.state.inType=w,ye=this.flowParsePredicate()):(J=this.flowParseType(),this.state.inType=w,this.match(54)&&(ye=this.flowParsePredicate())),[J,ye]}flowParseDeclareClass(w){return this.next(),this.flowParseInterfaceish(w,!0),this.finishNode(w,"DeclareClass")}flowParseDeclareFunction(w){this.next();let J=w.id=this.parseIdentifier(),ye=this.startNode(),ut=this.startNode();this.match(47)?ye.typeParameters=this.flowParseTypeParameterDeclaration():ye.typeParameters=null,this.expect(10);let zt=this.flowParseFunctionTypeParams();return ye.params=zt.params,ye.rest=zt.rest,ye.this=zt._this,this.expect(11),[ye.returnType,w.predicate]=this.flowParseTypeAndPredicateInitialiser(),ut.typeAnnotation=this.finishNode(ye,"FunctionTypeAnnotation"),J.typeAnnotation=this.finishNode(ut,"TypeAnnotation"),this.resetEndLocation(J),this.semicolon(),this.scope.declareName(w.id.name,2048,w.id.loc.start),this.finishNode(w,"DeclareFunction")}flowParseDeclare(w,J){if(this.match(80))return this.flowParseDeclareClass(w);if(this.match(68))return this.flowParseDeclareFunction(w);if(this.match(74))return this.flowParseDeclareVariable(w);if(this.eatContextual(127))return this.match(16)?this.flowParseDeclareModuleExports(w):(J&&this.raise(_l.NestedDeclareModule,this.state.lastTokStartLoc),this.flowParseDeclareModule(w));if(this.isContextual(130))return this.flowParseDeclareTypeAlias(w);if(this.isContextual(131))return this.flowParseDeclareOpaqueType(w);if(this.isContextual(129))return this.flowParseDeclareInterface(w);if(this.match(82))return this.flowParseDeclareExportDeclaration(w,J);this.unexpected()}flowParseDeclareVariable(w){return this.next(),w.id=this.flowParseTypeAnnotatableIdentifier(!0),this.scope.declareName(w.id.name,5,w.id.loc.start),this.semicolon(),this.finishNode(w,"DeclareVariable")}flowParseDeclareModule(w){this.scope.enter(0),this.match(134)?w.id=super.parseExprAtom():w.id=this.parseIdentifier();let J=w.body=this.startNode(),ye=J.body=[];for(this.expect(5);!this.match(8);){let Zr=this.startNode();this.match(83)?(this.next(),!this.isContextual(130)&&!this.match(87)&&this.raise(_l.InvalidNonTypeImportInDeclareModule,this.state.lastTokStartLoc),super.parseImport(Zr)):(this.expectContextual(125,_l.UnsupportedStatementInDeclareModule),Zr=this.flowParseDeclare(Zr,!0)),ye.push(Zr)}this.scope.exit(),this.expect(8),this.finishNode(J,"BlockStatement");let ut=null,zt=!1;return ye.forEach(Zr=>{Og(Zr)?(ut==="CommonJS"&&this.raise(_l.AmbiguousDeclareModuleKind,Zr),ut="ES"):Zr.type==="DeclareModuleExports"&&(zt&&this.raise(_l.DuplicateDeclareModuleExports,Zr),ut==="ES"&&this.raise(_l.AmbiguousDeclareModuleKind,Zr),ut="CommonJS",zt=!0)}),w.kind=ut||"CommonJS",this.finishNode(w,"DeclareModule")}flowParseDeclareExportDeclaration(w,J){if(this.expect(82),this.eat(65))return this.match(68)||this.match(80)?w.declaration=this.flowParseDeclare(this.startNode()):(w.declaration=this.flowParseType(),this.semicolon()),w.default=!0,this.finishNode(w,"DeclareExportDeclaration");if(this.match(75)||this.isLet()||(this.isContextual(130)||this.isContextual(129))&&!J){let ye=this.state.value;throw this.raise(_l.UnsupportedDeclareExportKind,this.state.startLoc,{unsupportedExportKind:ye,suggestion:lm[ye]})}if(this.match(74)||this.match(68)||this.match(80)||this.isContextual(131))return w.declaration=this.flowParseDeclare(this.startNode()),w.default=!1,this.finishNode(w,"DeclareExportDeclaration");if(this.match(55)||this.match(5)||this.isContextual(129)||this.isContextual(130)||this.isContextual(131))return w=this.parseExport(w,null),w.type==="ExportNamedDeclaration"&&(w.type="ExportDeclaration",w.default=!1,delete w.exportKind),w.type="Declare"+w.type,w;this.unexpected()}flowParseDeclareModuleExports(w){return this.next(),this.expectContextual(111),w.typeAnnotation=this.flowParseTypeAnnotation(),this.semicolon(),this.finishNode(w,"DeclareModuleExports")}flowParseDeclareTypeAlias(w){this.next();let J=this.flowParseTypeAlias(w);return J.type="DeclareTypeAlias",J}flowParseDeclareOpaqueType(w){this.next();let J=this.flowParseOpaqueType(w,!0);return J.type="DeclareOpaqueType",J}flowParseDeclareInterface(w){return this.next(),this.flowParseInterfaceish(w,!1),this.finishNode(w,"DeclareInterface")}flowParseInterfaceish(w,J){if(w.id=this.flowParseRestrictedIdentifier(!J,!0),this.scope.declareName(w.id.name,J?17:8201,w.id.loc.start),this.match(47)?w.typeParameters=this.flowParseTypeParameterDeclaration():w.typeParameters=null,w.extends=[],this.eat(81))do w.extends.push(this.flowParseInterfaceExtends());while(!J&&this.eat(12));if(J){if(w.implements=[],w.mixins=[],this.eatContextual(117))do w.mixins.push(this.flowParseInterfaceExtends());while(this.eat(12));if(this.eatContextual(113))do w.implements.push(this.flowParseInterfaceExtends());while(this.eat(12))}w.body=this.flowParseObjectType({allowStatic:J,allowExact:!1,allowSpread:!1,allowProto:J,allowInexact:!1})}flowParseInterfaceExtends(){let w=this.startNode();return w.id=this.flowParseQualifiedTypeIdentifier(),this.match(47)?w.typeParameters=this.flowParseTypeParameterInstantiation():w.typeParameters=null,this.finishNode(w,"InterfaceExtends")}flowParseInterface(w){return this.flowParseInterfaceish(w,!1),this.finishNode(w,"InterfaceDeclaration")}checkNotUnderscore(w){w==="_"&&this.raise(_l.UnexpectedReservedUnderscore,this.state.startLoc)}checkReservedType(w,J,ye){Tm.has(w)&&this.raise(ye?_l.AssignReservedType:_l.UnexpectedReservedType,J,{reservedType:w})}flowParseRestrictedIdentifier(w,J){return this.checkReservedType(this.state.value,this.state.startLoc,J),this.parseIdentifier(w)}flowParseTypeAlias(w){return w.id=this.flowParseRestrictedIdentifier(!1,!0),this.scope.declareName(w.id.name,8201,w.id.loc.start),this.match(47)?w.typeParameters=this.flowParseTypeParameterDeclaration():w.typeParameters=null,w.right=this.flowParseTypeInitialiser(29),this.semicolon(),this.finishNode(w,"TypeAlias")}flowParseOpaqueType(w,J){return this.expectContextual(130),w.id=this.flowParseRestrictedIdentifier(!0,!0),this.scope.declareName(w.id.name,8201,w.id.loc.start),this.match(47)?w.typeParameters=this.flowParseTypeParameterDeclaration():w.typeParameters=null,w.supertype=null,this.match(14)&&(w.supertype=this.flowParseTypeInitialiser(14)),w.impltype=null,J||(w.impltype=this.flowParseTypeInitialiser(29)),this.semicolon(),this.finishNode(w,"OpaqueType")}flowParseTypeParameter(w=!1){let J=this.state.startLoc,ye=this.startNode(),ut=this.flowParseVariance(),zt=this.flowParseTypeAnnotatableIdentifier();return ye.name=zt.name,ye.variance=ut,ye.bound=zt.typeAnnotation,this.match(29)?(this.eat(29),ye.default=this.flowParseType()):w&&this.raise(_l.MissingTypeParamDefault,J),this.finishNode(ye,"TypeParameter")}flowParseTypeParameterDeclaration(){let w=this.state.inType,J=this.startNode();J.params=[],this.state.inType=!0,this.match(47)||this.match(143)?this.next():this.unexpected();let ye=!1;do{let ut=this.flowParseTypeParameter(ye);J.params.push(ut),ut.default&&(ye=!0),this.match(48)||this.expect(12)}while(!this.match(48));return this.expect(48),this.state.inType=w,this.finishNode(J,"TypeParameterDeclaration")}flowInTopLevelContext(w){if(this.curContext()!==Te.brace){let J=this.state.context;this.state.context=[J[0]];try{return w()}finally{this.state.context=J}}else return w()}flowParseTypeParameterInstantiationInExpression(){if(this.reScan_lt()===47)return this.flowParseTypeParameterInstantiation()}flowParseTypeParameterInstantiation(){let w=this.startNode(),J=this.state.inType;return this.state.inType=!0,w.params=[],this.flowInTopLevelContext(()=>{this.expect(47);let ye=this.state.noAnonFunctionType;for(this.state.noAnonFunctionType=!1;!this.match(48);)w.params.push(this.flowParseType()),this.match(48)||this.expect(12);this.state.noAnonFunctionType=ye}),this.state.inType=J,!this.state.inType&&this.curContext()===Te.brace&&this.reScan_lt_gt(),this.expect(48),this.finishNode(w,"TypeParameterInstantiation")}flowParseTypeParameterInstantiationCallOrNew(){if(this.reScan_lt()!==47)return;let w=this.startNode(),J=this.state.inType;for(w.params=[],this.state.inType=!0,this.expect(47);!this.match(48);)w.params.push(this.flowParseTypeOrImplicitInstantiation()),this.match(48)||this.expect(12);return this.expect(48),this.state.inType=J,this.finishNode(w,"TypeParameterInstantiation")}flowParseInterfaceType(){let w=this.startNode();if(this.expectContextual(129),w.extends=[],this.eat(81))do w.extends.push(this.flowParseInterfaceExtends());while(this.eat(12));return w.body=this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!1,allowProto:!1,allowInexact:!1}),this.finishNode(w,"InterfaceTypeAnnotation")}flowParseObjectPropertyKey(){return this.match(135)||this.match(134)?super.parseExprAtom():this.parseIdentifier(!0)}flowParseObjectTypeIndexer(w,J,ye){return w.static=J,this.lookahead().type===14?(w.id=this.flowParseObjectPropertyKey(),w.key=this.flowParseTypeInitialiser()):(w.id=null,w.key=this.flowParseType()),this.expect(3),w.value=this.flowParseTypeInitialiser(),w.variance=ye,this.finishNode(w,"ObjectTypeIndexer")}flowParseObjectTypeInternalSlot(w,J){return w.static=J,w.id=this.flowParseObjectPropertyKey(),this.expect(3),this.expect(3),this.match(47)||this.match(10)?(w.method=!0,w.optional=!1,w.value=this.flowParseObjectTypeMethodish(this.startNodeAt(w.loc.start))):(w.method=!1,this.eat(17)&&(w.optional=!0),w.value=this.flowParseTypeInitialiser()),this.finishNode(w,"ObjectTypeInternalSlot")}flowParseObjectTypeMethodish(w){for(w.params=[],w.rest=null,w.typeParameters=null,w.this=null,this.match(47)&&(w.typeParameters=this.flowParseTypeParameterDeclaration()),this.expect(10),this.match(78)&&(w.this=this.flowParseFunctionTypeParam(!0),w.this.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)w.params.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(w.rest=this.flowParseFunctionTypeParam(!1)),this.expect(11),w.returnType=this.flowParseTypeInitialiser(),this.finishNode(w,"FunctionTypeAnnotation")}flowParseObjectTypeCallProperty(w,J){let ye=this.startNode();return w.static=J,w.value=this.flowParseObjectTypeMethodish(ye),this.finishNode(w,"ObjectTypeCallProperty")}flowParseObjectType({allowStatic:w,allowExact:J,allowSpread:ye,allowProto:ut,allowInexact:zt}){let Zr=this.state.inType;this.state.inType=!0;let wr=this.startNode();wr.callProperties=[],wr.properties=[],wr.indexers=[],wr.internalSlots=[];let Yn,Dn,Po=!1;for(J&&this.match(6)?(this.expect(6),Yn=9,Dn=!0):(this.expect(5),Yn=8,Dn=!1),wr.exact=Dn;!this.match(Yn);){let Xc=!1,Yo=null,yu=null,op=this.startNode();if(ut&&this.isContextual(118)){let tI=this.lookahead();tI.type!==14&&tI.type!==17&&(this.next(),Yo=this.state.startLoc,w=!1)}if(w&&this.isContextual(106)){let tI=this.lookahead();tI.type!==14&&tI.type!==17&&(this.next(),Xc=!0)}let lA=this.flowParseVariance();if(this.eat(0))Yo!=null&&this.unexpected(Yo),this.eat(0)?(lA&&this.unexpected(lA.loc.start),wr.internalSlots.push(this.flowParseObjectTypeInternalSlot(op,Xc))):wr.indexers.push(this.flowParseObjectTypeIndexer(op,Xc,lA));else if(this.match(10)||this.match(47))Yo!=null&&this.unexpected(Yo),lA&&this.unexpected(lA.loc.start),wr.callProperties.push(this.flowParseObjectTypeCallProperty(op,Xc));else{let tI="init";if(this.isContextual(99)||this.isContextual(104)){let D0=this.lookahead();Zi(D0.type)&&(tI=this.state.value,this.next())}let Kd=this.flowParseObjectTypeProperty(op,Xc,Yo,lA,tI,ye,zt??!Dn);Kd===null?(Po=!0,yu=this.state.lastTokStartLoc):wr.properties.push(Kd)}this.flowObjectTypeSemicolon(),yu&&!this.match(8)&&!this.match(9)&&this.raise(_l.UnexpectedExplicitInexactInObject,yu)}this.expect(Yn),ye&&(wr.inexact=Po);let fc=this.finishNode(wr,"ObjectTypeAnnotation");return this.state.inType=Zr,fc}flowParseObjectTypeProperty(w,J,ye,ut,zt,Zr,wr){if(this.eat(21))return this.match(12)||this.match(13)||this.match(8)||this.match(9)?(Zr?wr||this.raise(_l.InexactInsideExact,this.state.lastTokStartLoc):this.raise(_l.InexactInsideNonObject,this.state.lastTokStartLoc),ut&&this.raise(_l.InexactVariance,ut),null):(Zr||this.raise(_l.UnexpectedSpreadType,this.state.lastTokStartLoc),ye!=null&&this.unexpected(ye),ut&&this.raise(_l.SpreadVariance,ut),w.argument=this.flowParseType(),this.finishNode(w,"ObjectTypeSpreadProperty"));{w.key=this.flowParseObjectPropertyKey(),w.static=J,w.proto=ye!=null,w.kind=zt;let Yn=!1;return this.match(47)||this.match(10)?(w.method=!0,ye!=null&&this.unexpected(ye),ut&&this.unexpected(ut.loc.start),w.value=this.flowParseObjectTypeMethodish(this.startNodeAt(w.loc.start)),(zt==="get"||zt==="set")&&this.flowCheckGetterSetterParams(w),!Zr&&w.key.name==="constructor"&&w.value.this&&this.raise(_l.ThisParamBannedInConstructor,w.value.this)):(zt!=="init"&&this.unexpected(),w.method=!1,this.eat(17)&&(Yn=!0),w.value=this.flowParseTypeInitialiser(),w.variance=ut),w.optional=Yn,this.finishNode(w,"ObjectTypeProperty")}}flowCheckGetterSetterParams(w){let J=w.kind==="get"?0:1,ye=w.value.params.length+(w.value.rest?1:0);w.value.this&&this.raise(w.kind==="get"?_l.GetterMayNotHaveThisParam:_l.SetterMayNotHaveThisParam,w.value.this),ye!==J&&this.raise(w.kind==="get"?U.BadGetterArity:U.BadSetterArity,w),w.kind==="set"&&w.value.rest&&this.raise(U.BadSetterRestParameter,w)}flowObjectTypeSemicolon(){!this.eat(13)&&!this.eat(12)&&!this.match(8)&&!this.match(9)&&this.unexpected()}flowParseQualifiedTypeIdentifier(w,J){var ye;(ye=w)!=null||(w=this.state.startLoc);let ut=J||this.flowParseRestrictedIdentifier(!0);for(;this.eat(16);){let zt=this.startNodeAt(w);zt.qualification=ut,zt.id=this.flowParseRestrictedIdentifier(!0),ut=this.finishNode(zt,"QualifiedTypeIdentifier")}return ut}flowParseGenericType(w,J){let ye=this.startNodeAt(w);return ye.typeParameters=null,ye.id=this.flowParseQualifiedTypeIdentifier(w,J),this.match(47)&&(ye.typeParameters=this.flowParseTypeParameterInstantiation()),this.finishNode(ye,"GenericTypeAnnotation")}flowParseTypeofType(){let w=this.startNode();return this.expect(87),w.argument=this.flowParsePrimaryType(),this.finishNode(w,"TypeofTypeAnnotation")}flowParseTupleType(){let w=this.startNode();for(w.types=[],this.expect(0);this.state.possuper.parseFunctionBody(w,!0,ye));return}super.parseFunctionBody(w,!1,ye)}parseFunctionBodyAndFinish(w,J,ye=!1){if(this.match(14)){let ut=this.startNode();[ut.typeAnnotation,w.predicate]=this.flowParseTypeAndPredicateInitialiser(),w.returnType=ut.typeAnnotation?this.finishNode(ut,"TypeAnnotation"):null}return super.parseFunctionBodyAndFinish(w,J,ye)}parseStatementLike(w){if(this.state.strict&&this.isContextual(129)){let ye=this.lookahead();if(we(ye.type)){let ut=this.startNode();return this.next(),this.flowParseInterface(ut)}}else if(this.isContextual(126)){let ye=this.startNode();return this.next(),this.flowParseEnumDeclaration(ye)}let J=super.parseStatementLike(w);return this.flowPragma===void 0&&!this.isValidDirective(J)&&(this.flowPragma=null),J}parseExpressionStatement(w,J,ye){if(J.type==="Identifier"){if(J.name==="declare"){if(this.match(80)||gn(this.state.type)||this.match(68)||this.match(74)||this.match(82))return this.flowParseDeclare(w)}else if(gn(this.state.type)){if(J.name==="interface")return this.flowParseInterface(w);if(J.name==="type")return this.flowParseTypeAlias(w);if(J.name==="opaque")return this.flowParseOpaqueType(w,!1)}}return super.parseExpressionStatement(w,J,ye)}shouldParseExportDeclaration(){let{type:w}=this.state;return w===126||lr(w)?!this.state.containsEsc:super.shouldParseExportDeclaration()}isExportDefaultSpecifier(){let{type:w}=this.state;return w===126||lr(w)?this.state.containsEsc:super.isExportDefaultSpecifier()}parseExportDefaultExpression(){if(this.isContextual(126)){let w=this.startNode();return this.next(),this.flowParseEnumDeclaration(w)}return super.parseExportDefaultExpression()}parseConditional(w,J,ye){if(!this.match(17))return w;if(this.state.maybeInArrowParameters){let fc=this.lookaheadCharCode();if(fc===44||fc===61||fc===58||fc===41)return this.setOptionalParametersError(ye),w}this.expect(17);let ut=this.state.clone(),zt=this.state.noArrowAt,Zr=this.startNodeAt(J),{consequent:wr,failed:Yn}=this.tryParseConditionalConsequent(),[Dn,Po]=this.getArrowLikeExpressions(wr);if(Yn||Po.length>0){let fc=[...zt];if(Po.length>0){this.state=ut,this.state.noArrowAt=fc;for(let Xc=0;Xc1&&this.raise(_l.AmbiguousConditionalArrow,ut.startLoc),Yn&&Dn.length===1&&(this.state=ut,fc.push(Dn[0].start),this.state.noArrowAt=fc,{consequent:wr,failed:Yn}=this.tryParseConditionalConsequent())}return this.getArrowLikeExpressions(wr,!0),this.state.noArrowAt=zt,this.expect(14),Zr.test=w,Zr.consequent=wr,Zr.alternate=this.forwardNoArrowParamsConversionAt(Zr,()=>this.parseMaybeAssign(void 0,void 0)),this.finishNode(Zr,"ConditionalExpression")}tryParseConditionalConsequent(){this.state.noArrowParamsConversionAt.push(this.state.start);let w=this.parseMaybeAssignAllowIn(),J=!this.match(14);return this.state.noArrowParamsConversionAt.pop(),{consequent:w,failed:J}}getArrowLikeExpressions(w,J){let ye=[w],ut=[];for(;ye.length!==0;){let zt=ye.pop();zt.type==="ArrowFunctionExpression"&&zt.body.type!=="BlockStatement"?(zt.typeParameters||!zt.returnType?this.finishArrowValidation(zt):ut.push(zt),ye.push(zt.body)):zt.type==="ConditionalExpression"&&(ye.push(zt.consequent),ye.push(zt.alternate))}return J?(ut.forEach(zt=>this.finishArrowValidation(zt)),[ut,[]]):ch(ut,zt=>zt.params.every(Zr=>this.isAssignable(Zr,!0)))}finishArrowValidation(w){var J;this.toAssignableList(w.params,(J=w.extra)==null?void 0:J.trailingCommaLoc,!1),this.scope.enter(6),super.checkParams(w,!1,!0),this.scope.exit()}forwardNoArrowParamsConversionAt(w,J){let ye;return this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(w.start))?(this.state.noArrowParamsConversionAt.push(this.state.start),ye=J(),this.state.noArrowParamsConversionAt.pop()):ye=J(),ye}parseParenItem(w,J){let ye=super.parseParenItem(w,J);if(this.eat(17)&&(ye.optional=!0,this.resetEndLocation(w)),this.match(14)){let ut=this.startNodeAt(J);return ut.expression=ye,ut.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(ut,"TypeCastExpression")}return ye}assertModuleNodeAllowed(w){w.type==="ImportDeclaration"&&(w.importKind==="type"||w.importKind==="typeof")||w.type==="ExportNamedDeclaration"&&w.exportKind==="type"||w.type==="ExportAllDeclaration"&&w.exportKind==="type"||super.assertModuleNodeAllowed(w)}parseExportDeclaration(w){if(this.isContextual(130)){w.exportKind="type";let J=this.startNode();return this.next(),this.match(5)?(w.specifiers=this.parseExportSpecifiers(!0),super.parseExportFrom(w),null):this.flowParseTypeAlias(J)}else if(this.isContextual(131)){w.exportKind="type";let J=this.startNode();return this.next(),this.flowParseOpaqueType(J,!1)}else if(this.isContextual(129)){w.exportKind="type";let J=this.startNode();return this.next(),this.flowParseInterface(J)}else if(this.isContextual(126)){w.exportKind="value";let J=this.startNode();return this.next(),this.flowParseEnumDeclaration(J)}else return super.parseExportDeclaration(w)}eatExportStar(w){return super.eatExportStar(w)?!0:this.isContextual(130)&&this.lookahead().type===55?(w.exportKind="type",this.next(),this.next(),!0):!1}maybeParseExportNamespaceSpecifier(w){let{startLoc:J}=this.state,ye=super.maybeParseExportNamespaceSpecifier(w);return ye&&w.exportKind==="type"&&this.unexpected(J),ye}parseClassId(w,J,ye){super.parseClassId(w,J,ye),this.match(47)&&(w.typeParameters=this.flowParseTypeParameterDeclaration())}parseClassMember(w,J,ye){let{startLoc:ut}=this.state;if(this.isContextual(125)){if(super.parseClassMemberFromModifier(w,J))return;J.declare=!0}super.parseClassMember(w,J,ye),J.declare&&(J.type!=="ClassProperty"&&J.type!=="ClassPrivateProperty"&&J.type!=="PropertyDefinition"?this.raise(_l.DeclareClassElement,ut):J.value&&this.raise(_l.DeclareClassFieldInitializer,J.value))}isIterator(w){return w==="iterator"||w==="asyncIterator"}readIterator(){let w=super.readWord1(),J="@@"+w;(!this.isIterator(w)||!this.state.inType)&&this.raise(U.InvalidIdentifier,this.state.curPosition(),{identifierName:J}),this.finishToken(132,J)}getTokenFromCode(w){let J=this.input.charCodeAt(this.state.pos+1);w===123&&J===124?this.finishOp(6,2):this.state.inType&&(w===62||w===60)?this.finishOp(w===62?48:47,1):this.state.inType&&w===63?J===46?this.finishOp(18,2):this.finishOp(17,1):xl(w,J,this.input.charCodeAt(this.state.pos+2))?(this.state.pos+=2,this.readIterator()):super.getTokenFromCode(w)}isAssignable(w,J){return w.type==="TypeCastExpression"?this.isAssignable(w.expression,J):super.isAssignable(w,J)}toAssignable(w,J=!1){!J&&w.type==="AssignmentExpression"&&w.left.type==="TypeCastExpression"&&(w.left=this.typeCastToParameter(w.left)),super.toAssignable(w,J)}toAssignableList(w,J,ye){for(let ut=0;ut1||!J)&&this.raise(_l.TypeCastInPattern,zt.typeAnnotation)}return w}parseArrayLike(w,J,ye,ut){let zt=super.parseArrayLike(w,J,ye,ut);return J&&!this.state.maybeInArrowParameters&&this.toReferencedList(zt.elements),zt}isValidLVal(w,J,ye){return w==="TypeCastExpression"||super.isValidLVal(w,J,ye)}parseClassProperty(w){return this.match(14)&&(w.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassProperty(w)}parseClassPrivateProperty(w){return this.match(14)&&(w.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassPrivateProperty(w)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(14)||super.isClassProperty()}isNonstaticConstructor(w){return!this.match(14)&&super.isNonstaticConstructor(w)}pushClassMethod(w,J,ye,ut,zt,Zr){if(J.variance&&this.unexpected(J.variance.loc.start),delete J.variance,this.match(47)&&(J.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassMethod(w,J,ye,ut,zt,Zr),J.params&&zt){let wr=J.params;wr.length>0&&this.isThisParam(wr[0])&&this.raise(_l.ThisParamBannedInConstructor,J)}else if(J.type==="MethodDefinition"&&zt&&J.value.params){let wr=J.value.params;wr.length>0&&this.isThisParam(wr[0])&&this.raise(_l.ThisParamBannedInConstructor,J)}}pushClassPrivateMethod(w,J,ye,ut){J.variance&&this.unexpected(J.variance.loc.start),delete J.variance,this.match(47)&&(J.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassPrivateMethod(w,J,ye,ut)}parseClassSuper(w){if(super.parseClassSuper(w),w.superClass&&(this.match(47)||this.match(51))&&(w.superTypeParameters=this.flowParseTypeParameterInstantiationInExpression()),this.isContextual(113)){this.next();let J=w.implements=[];do{let ye=this.startNode();ye.id=this.flowParseRestrictedIdentifier(!0),this.match(47)?ye.typeParameters=this.flowParseTypeParameterInstantiation():ye.typeParameters=null,J.push(this.finishNode(ye,"ClassImplements"))}while(this.eat(12))}}checkGetterSetterParams(w){super.checkGetterSetterParams(w);let J=this.getObjectOrClassMethodParams(w);if(J.length>0){let ye=J[0];this.isThisParam(ye)&&w.kind==="get"?this.raise(_l.GetterMayNotHaveThisParam,ye):this.isThisParam(ye)&&this.raise(_l.SetterMayNotHaveThisParam,ye)}}parsePropertyNamePrefixOperator(w){w.variance=this.flowParseVariance()}parseObjPropValue(w,J,ye,ut,zt,Zr,wr){w.variance&&this.unexpected(w.variance.loc.start),delete w.variance;let Yn;this.match(47)&&!Zr&&(Yn=this.flowParseTypeParameterDeclaration(),this.match(10)||this.unexpected());let Dn=super.parseObjPropValue(w,J,ye,ut,zt,Zr,wr);return Yn&&((Dn.value||Dn).typeParameters=Yn),Dn}parseFunctionParamType(w){return this.eat(17)&&(w.type!=="Identifier"&&this.raise(_l.PatternIsOptional,w),this.isThisParam(w)&&this.raise(_l.ThisParamMayNotBeOptional,w),w.optional=!0),this.match(14)?w.typeAnnotation=this.flowParseTypeAnnotation():this.isThisParam(w)&&this.raise(_l.ThisParamAnnotationRequired,w),this.match(29)&&this.isThisParam(w)&&this.raise(_l.ThisParamNoDefault,w),this.resetEndLocation(w),w}parseMaybeDefault(w,J){let ye=super.parseMaybeDefault(w,J);return ye.type==="AssignmentPattern"&&ye.typeAnnotation&&ye.right.startsuper.parseMaybeAssign(w,J),ut),!zt.error)return zt.node;let{context:Yn}=this.state,Dn=Yn[Yn.length-1];(Dn===Te.j_oTag||Dn===Te.j_expr)&&Yn.pop()}if((ye=zt)!=null&&ye.error||this.match(47)){var Zr,wr;ut=ut||this.state.clone();let Yn,Dn=this.tryParse(fc=>{var Xc;Yn=this.flowParseTypeParameterDeclaration();let Yo=this.forwardNoArrowParamsConversionAt(Yn,()=>{let op=super.parseMaybeAssign(w,J);return this.resetStartLocationFromNode(op,Yn),op});(Xc=Yo.extra)!=null&&Xc.parenthesized&&fc();let yu=this.maybeUnwrapTypeCastExpression(Yo);return yu.type!=="ArrowFunctionExpression"&&fc(),yu.typeParameters=Yn,this.resetStartLocationFromNode(yu,Yn),Yo},ut),Po=null;if(Dn.node&&this.maybeUnwrapTypeCastExpression(Dn.node).type==="ArrowFunctionExpression"){if(!Dn.error&&!Dn.aborted)return Dn.node.async&&this.raise(_l.UnexpectedTypeParameterBeforeAsyncArrowFunction,Yn),Dn.node;Po=Dn.node}if((Zr=zt)!=null&&Zr.node)return this.state=zt.failState,zt.node;if(Po)return this.state=Dn.failState,Po;throw(wr=zt)!=null&&wr.thrown?zt.error:Dn.thrown?Dn.error:this.raise(_l.UnexpectedTokenAfterTypeParameter,Yn)}return super.parseMaybeAssign(w,J)}parseArrow(w){if(this.match(14)){let J=this.tryParse(()=>{let ye=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0;let ut=this.startNode();return[ut.typeAnnotation,w.predicate]=this.flowParseTypeAndPredicateInitialiser(),this.state.noAnonFunctionType=ye,this.canInsertSemicolon()&&this.unexpected(),this.match(19)||this.unexpected(),ut});if(J.thrown)return null;J.error&&(this.state=J.failState),w.returnType=J.node.typeAnnotation?this.finishNode(J.node,"TypeAnnotation"):null}return super.parseArrow(w)}shouldParseArrow(w){return this.match(14)||super.shouldParseArrow(w)}setArrowFunctionParameters(w,J){this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(w.start))?w.params=J:super.setArrowFunctionParameters(w,J)}checkParams(w,J,ye,ut=!0){if(!(ye&&this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(w.start)))){for(let zt=0;zt0&&this.raise(_l.ThisParamMustBeFirst,w.params[zt]);super.checkParams(w,J,ye,ut)}}parseParenAndDistinguishExpression(w){return super.parseParenAndDistinguishExpression(w&&!this.state.noArrowAt.includes(this.sourceToOffsetPos(this.state.start)))}parseSubscripts(w,J,ye){if(w.type==="Identifier"&&w.name==="async"&&this.state.noArrowAt.includes(J.index)){this.next();let ut=this.startNodeAt(J);ut.callee=w,ut.arguments=super.parseCallExpressionArguments(11),w=this.finishNode(ut,"CallExpression")}else if(w.type==="Identifier"&&w.name==="async"&&this.match(47)){let ut=this.state.clone(),zt=this.tryParse(wr=>this.parseAsyncArrowWithTypeParameters(J)||wr(),ut);if(!zt.error&&!zt.aborted)return zt.node;let Zr=this.tryParse(()=>super.parseSubscripts(w,J,ye),ut);if(Zr.node&&!Zr.error)return Zr.node;if(zt.node)return this.state=zt.failState,zt.node;if(Zr.node)return this.state=Zr.failState,Zr.node;throw zt.error||Zr.error}return super.parseSubscripts(w,J,ye)}parseSubscript(w,J,ye,ut){if(this.match(18)&&this.isLookaheadToken_lt()){if(ut.optionalChainMember=!0,ye)return ut.stop=!0,w;this.next();let zt=this.startNodeAt(J);return zt.callee=w,zt.typeArguments=this.flowParseTypeParameterInstantiationInExpression(),this.expect(10),zt.arguments=this.parseCallExpressionArguments(11),zt.optional=!0,this.finishCallExpression(zt,!0)}else if(!ye&&this.shouldParseTypes()&&(this.match(47)||this.match(51))){let zt=this.startNodeAt(J);zt.callee=w;let Zr=this.tryParse(()=>(zt.typeArguments=this.flowParseTypeParameterInstantiationCallOrNew(),this.expect(10),zt.arguments=super.parseCallExpressionArguments(11),ut.optionalChainMember&&(zt.optional=!1),this.finishCallExpression(zt,ut.optionalChainMember)));if(Zr.node)return Zr.error&&(this.state=Zr.failState),Zr.node}return super.parseSubscript(w,J,ye,ut)}parseNewCallee(w){super.parseNewCallee(w);let J=null;this.shouldParseTypes()&&this.match(47)&&(J=this.tryParse(()=>this.flowParseTypeParameterInstantiationCallOrNew()).node),w.typeArguments=J}parseAsyncArrowWithTypeParameters(w){let J=this.startNodeAt(w);if(this.parseFunctionParams(J,!1),!!this.parseArrow(J))return super.parseArrowExpression(J,void 0,!0)}readToken_mult_modulo(w){let J=this.input.charCodeAt(this.state.pos+1);if(w===42&&J===47&&this.state.hasFlowComment){this.state.hasFlowComment=!1,this.state.pos+=2,this.nextToken();return}super.readToken_mult_modulo(w)}readToken_pipe_amp(w){let J=this.input.charCodeAt(this.state.pos+1);if(w===124&&J===125){this.finishOp(9,2);return}super.readToken_pipe_amp(w)}parseTopLevel(w,J){let ye=super.parseTopLevel(w,J);return this.state.hasFlowComment&&this.raise(_l.UnterminatedFlowComment,this.state.curPosition()),ye}skipBlockComment(){if(this.hasPlugin("flowComments")&&this.skipFlowComment()){if(this.state.hasFlowComment)throw this.raise(_l.NestedFlowComment,this.state.startLoc);this.hasFlowCommentCompletion();let w=this.skipFlowComment();w&&(this.state.pos+=w,this.state.hasFlowComment=!0);return}return super.skipBlockComment(this.state.hasFlowComment?"*-/":"*/")}skipFlowComment(){let{pos:w}=this.state,J=2;for(;[32,9].includes(this.input.charCodeAt(w+J));)J++;let ye=this.input.charCodeAt(J+w),ut=this.input.charCodeAt(J+w+1);return ye===58&&ut===58?J+2:this.input.slice(J+w,J+w+12)==="flow-include"?J+12:ye===58&&ut!==58?J:!1}hasFlowCommentCompletion(){if(this.input.indexOf("*/",this.state.pos)===-1)throw this.raise(U.UnterminatedComment,this.state.curPosition())}flowEnumErrorBooleanMemberNotInitialized(w,{enumName:J,memberName:ye}){this.raise(_l.EnumBooleanMemberNotInitialized,w,{memberName:ye,enumName:J})}flowEnumErrorInvalidMemberInitializer(w,J){return this.raise(J.explicitType?J.explicitType==="symbol"?_l.EnumInvalidMemberInitializerSymbolType:_l.EnumInvalidMemberInitializerPrimaryType:_l.EnumInvalidMemberInitializerUnknownType,w,J)}flowEnumErrorNumberMemberNotInitialized(w,J){this.raise(_l.EnumNumberMemberNotInitialized,w,J)}flowEnumErrorStringMemberInconsistentlyInitialized(w,J){this.raise(_l.EnumStringMemberInconsistentlyInitialized,w,J)}flowEnumMemberInit(){let w=this.state.startLoc,J=()=>this.match(12)||this.match(8);switch(this.state.type){case 135:{let ye=this.parseNumericLiteral(this.state.value);return J()?{type:"number",loc:ye.loc.start,value:ye}:{type:"invalid",loc:w}}case 134:{let ye=this.parseStringLiteral(this.state.value);return J()?{type:"string",loc:ye.loc.start,value:ye}:{type:"invalid",loc:w}}case 85:case 86:{let ye=this.parseBooleanLiteral(this.match(85));return J()?{type:"boolean",loc:ye.loc.start,value:ye}:{type:"invalid",loc:w}}default:return{type:"invalid",loc:w}}}flowEnumMemberRaw(){let w=this.state.startLoc,J=this.parseIdentifier(!0),ye=this.eat(29)?this.flowEnumMemberInit():{type:"none",loc:w};return{id:J,init:ye}}flowEnumCheckExplicitTypeMismatch(w,J,ye){let{explicitType:ut}=J;ut!==null&&ut!==ye&&this.flowEnumErrorInvalidMemberInitializer(w,J)}flowEnumMembers({enumName:w,explicitType:J}){let ye=new Set,ut={booleanMembers:[],numberMembers:[],stringMembers:[],defaultedMembers:[]},zt=!1;for(;!this.match(8);){if(this.eat(21)){zt=!0;break}let Zr=this.startNode(),{id:wr,init:Yn}=this.flowEnumMemberRaw(),Dn=wr.name;if(Dn==="")continue;/^[a-z]/.test(Dn)&&this.raise(_l.EnumInvalidMemberName,wr,{memberName:Dn,suggestion:Dn[0].toUpperCase()+Dn.slice(1),enumName:w}),ye.has(Dn)&&this.raise(_l.EnumDuplicateMemberName,wr,{memberName:Dn,enumName:w}),ye.add(Dn);let Po={enumName:w,explicitType:J,memberName:Dn};switch(Zr.id=wr,Yn.type){case"boolean":{this.flowEnumCheckExplicitTypeMismatch(Yn.loc,Po,"boolean"),Zr.init=Yn.value,ut.booleanMembers.push(this.finishNode(Zr,"EnumBooleanMember"));break}case"number":{this.flowEnumCheckExplicitTypeMismatch(Yn.loc,Po,"number"),Zr.init=Yn.value,ut.numberMembers.push(this.finishNode(Zr,"EnumNumberMember"));break}case"string":{this.flowEnumCheckExplicitTypeMismatch(Yn.loc,Po,"string"),Zr.init=Yn.value,ut.stringMembers.push(this.finishNode(Zr,"EnumStringMember"));break}case"invalid":throw this.flowEnumErrorInvalidMemberInitializer(Yn.loc,Po);case"none":switch(J){case"boolean":this.flowEnumErrorBooleanMemberNotInitialized(Yn.loc,Po);break;case"number":this.flowEnumErrorNumberMemberNotInitialized(Yn.loc,Po);break;default:ut.defaultedMembers.push(this.finishNode(Zr,"EnumDefaultedMember"))}}this.match(8)||this.expect(12)}return{members:ut,hasUnknownMembers:zt}}flowEnumStringMembers(w,J,{enumName:ye}){if(w.length===0)return J;if(J.length===0)return w;if(J.length>w.length){for(let ut of w)this.flowEnumErrorStringMemberInconsistentlyInitialized(ut,{enumName:ye});return J}else{for(let ut of J)this.flowEnumErrorStringMemberInconsistentlyInitialized(ut,{enumName:ye});return w}}flowEnumParseExplicitType({enumName:w}){if(!this.eatContextual(102))return null;if(!gn(this.state.type))throw this.raise(_l.EnumInvalidExplicitTypeUnknownSupplied,this.state.startLoc,{enumName:w});let{value:J}=this.state;return this.next(),J!=="boolean"&&J!=="number"&&J!=="string"&&J!=="symbol"&&this.raise(_l.EnumInvalidExplicitType,this.state.startLoc,{enumName:w,invalidEnumType:J}),J}flowEnumBody(w,J){let ye=J.name,ut=J.loc.start,zt=this.flowEnumParseExplicitType({enumName:ye});this.expect(5);let{members:Zr,hasUnknownMembers:wr}=this.flowEnumMembers({enumName:ye,explicitType:zt});switch(w.hasUnknownMembers=wr,zt){case"boolean":return w.explicitType=!0,w.members=Zr.booleanMembers,this.expect(8),this.finishNode(w,"EnumBooleanBody");case"number":return w.explicitType=!0,w.members=Zr.numberMembers,this.expect(8),this.finishNode(w,"EnumNumberBody");case"string":return w.explicitType=!0,w.members=this.flowEnumStringMembers(Zr.stringMembers,Zr.defaultedMembers,{enumName:ye}),this.expect(8),this.finishNode(w,"EnumStringBody");case"symbol":return w.members=Zr.defaultedMembers,this.expect(8),this.finishNode(w,"EnumSymbolBody");default:{let Yn=()=>(w.members=[],this.expect(8),this.finishNode(w,"EnumStringBody"));w.explicitType=!1;let Dn=Zr.booleanMembers.length,Po=Zr.numberMembers.length,fc=Zr.stringMembers.length,Xc=Zr.defaultedMembers.length;if(!Dn&&!Po&&!fc&&!Xc)return Yn();if(!Dn&&!Po)return w.members=this.flowEnumStringMembers(Zr.stringMembers,Zr.defaultedMembers,{enumName:ye}),this.expect(8),this.finishNode(w,"EnumStringBody");if(!Po&&!fc&&Dn>=Xc){for(let Yo of Zr.defaultedMembers)this.flowEnumErrorBooleanMemberNotInitialized(Yo.loc.start,{enumName:ye,memberName:Yo.id.name});return w.members=Zr.booleanMembers,this.expect(8),this.finishNode(w,"EnumBooleanBody")}else if(!Dn&&!fc&&Po>=Xc){for(let Yo of Zr.defaultedMembers)this.flowEnumErrorNumberMemberNotInitialized(Yo.loc.start,{enumName:ye,memberName:Yo.id.name});return w.members=Zr.numberMembers,this.expect(8),this.finishNode(w,"EnumNumberBody")}else return this.raise(_l.EnumInconsistentMemberValues,ut,{enumName:ye}),Yn()}}}flowParseEnumDeclaration(w){let J=this.parseIdentifier();return w.id=J,w.body=this.flowEnumBody(this.startNode(),J),this.finishNode(w,"EnumDeclaration")}jsxParseOpeningElementAfterName(w){return this.shouldParseTypes()&&(this.match(47)||this.match(51))&&(w.typeArguments=this.flowParseTypeParameterInstantiationInExpression()),super.jsxParseOpeningElementAfterName(w)}isLookaheadToken_lt(){let w=this.nextTokenStart();if(this.input.charCodeAt(w)===60){let J=this.input.charCodeAt(w+1);return J!==60&&J!==61}return!1}reScan_lt_gt(){let{type:w}=this.state;w===47?(this.state.pos-=1,this.readToken_lt()):w===48&&(this.state.pos-=1,this.readToken_gt())}reScan_lt(){let{type:w}=this.state;return w===51?(this.state.pos-=2,this.finishOp(47,1),47):w}maybeUnwrapTypeCastExpression(w){return w.type==="TypeCastExpression"?w.expression:w}},uC=X`jsx`({AttributeIsEmpty:"JSX attributes must only be assigned a non-empty expression.",MissingClosingTagElement:({openingTagName:ie})=>`Expected corresponding JSX closing tag for <${ie}>.`,MissingClosingTagFragment:"Expected corresponding JSX closing tag for <>.",UnexpectedSequenceExpression:"Sequence expressions cannot be directly nested inside JSX. Did you mean to wrap it in parentheses (...)?",UnexpectedToken:({unexpected:ie,HTMLEntity:w})=>`Unexpected token \`${ie}\`. Did you mean \`${w}\` or \`{'${ie}'}\`?`,UnsupportedJsxValue:"JSX value should be either an expression or a quoted JSX text.",UnterminatedJsxContent:"Unterminated JSX contents.",UnwrappedAdjacentJSXElements:"Adjacent JSX elements must be wrapped in an enclosing tag. Did you want a JSX fragment <>...?"});function fs(ie){return ie?ie.type==="JSXOpeningFragment"||ie.type==="JSXClosingFragment":!1}function Ao(ie){if(ie.type==="JSXIdentifier")return ie.name;if(ie.type==="JSXNamespacedName")return ie.namespace.name+":"+ie.name.name;if(ie.type==="JSXMemberExpression")return Ao(ie.object)+"."+Ao(ie.property);throw new Error("Node had unexpected type: "+ie.type)}var Do=ie=>class extends ie{jsxReadToken(){let w="",J=this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(uC.UnterminatedJsxContent,this.state.startLoc);let ye=this.input.charCodeAt(this.state.pos);switch(ye){case 60:case 123:if(this.state.pos===this.state.start){ye===60&&this.state.canStartJSXElement?(++this.state.pos,this.finishToken(143)):super.getTokenFromCode(ye);return}w+=this.input.slice(J,this.state.pos),this.finishToken(142,w);return;case 38:w+=this.input.slice(J,this.state.pos),w+=this.jsxReadEntity(),J=this.state.pos;break;case 62:case 125:default:us(ye)?(w+=this.input.slice(J,this.state.pos),w+=this.jsxReadNewLine(!0),J=this.state.pos):++this.state.pos}}}jsxReadNewLine(w){let J=this.input.charCodeAt(this.state.pos),ye;return++this.state.pos,J===13&&this.input.charCodeAt(this.state.pos)===10?(++this.state.pos,ye=w?` +- Did you mean \`import { "${ie}" as foo }\`?`,ImportCallArity:"`import()` requires exactly one or two arguments.",ImportCallNotNewExpression:"Cannot use new with import(...).",ImportCallSpreadArgument:"`...` is not allowed in `import()`.",ImportJSONBindingNotDefault:"A JSON module can only be imported with `default`.",ImportReflectionHasAssertion:"`import module x` cannot have assertions.",ImportReflectionNotBinding:'Only `import module x from "./module"` is valid.',IncompatibleRegExpUVFlags:"The 'u' and 'v' regular expression flags cannot be enabled at the same time.",InvalidBigIntLiteral:"Invalid BigIntLiteral.",InvalidCodePoint:"Code point out of bounds.",InvalidCoverInitializedName:"Invalid shorthand property initializer.",InvalidDecimal:"Invalid decimal.",InvalidDigit:({radix:ie})=>`Expected number in radix ${ie}.`,InvalidEscapeSequence:"Bad character escape sequence.",InvalidEscapeSequenceTemplate:"Invalid escape sequence in template.",InvalidEscapedReservedWord:({reservedWord:ie})=>`Escape sequence in keyword ${ie}.`,InvalidIdentifier:({identifierName:ie})=>`Invalid identifier ${ie}.`,InvalidLhs:({ancestor:ie})=>`Invalid left-hand side in ${f(ie)}.`,InvalidLhsBinding:({ancestor:ie})=>`Binding invalid left-hand side in ${f(ie)}.`,InvalidLhsOptionalChaining:({ancestor:ie})=>`Invalid optional chaining in the left-hand side of ${f(ie)}.`,InvalidNumber:"Invalid number.",InvalidOrMissingExponent:"Floating-point numbers require a valid exponent after the 'e'.",InvalidOrUnexpectedToken:({unexpected:ie})=>`Unexpected character '${ie}'.`,InvalidParenthesizedAssignment:"Invalid parenthesized assignment pattern.",InvalidPrivateFieldResolution:({identifierName:ie})=>`Private name #${ie} is not defined.`,InvalidPropertyBindingPattern:"Binding member expression.",InvalidRecordProperty:"Only properties and spread elements are allowed in record definitions.",InvalidRestAssignmentPattern:"Invalid rest operator's argument.",LabelRedeclaration:({labelName:ie})=>`Label '${ie}' is already declared.`,LetInLexicalBinding:"'let' is disallowed as a lexically bound name.",LineTerminatorBeforeArrow:"No line break is allowed before '=>'.",MalformedRegExpFlags:"Invalid regular expression flag.",MissingClassName:"A class name is required.",MissingEqInAssignment:"Only '=' operator can be used for specifying default value.",MissingSemicolon:"Missing semicolon.",MissingPlugin:({missingPlugin:ie})=>`This experimental syntax requires enabling the parser plugin: ${ie.map(w=>JSON.stringify(w)).join(", ")}.`,MissingOneOfPlugins:({missingPlugin:ie})=>`This experimental syntax requires enabling one of the following parser plugin(s): ${ie.map(w=>JSON.stringify(w)).join(", ")}.`,MissingUnicodeEscape:"Expecting Unicode escape sequence \\uXXXX.",MixingCoalesceWithLogical:"Nullish coalescing operator(??) requires parens when mixing with logical operators.",ModuleAttributeDifferentFromType:"The only accepted module attribute is `type`.",ModuleAttributeInvalidValue:"Only string literals are allowed as module attribute values.",ModuleAttributesWithDuplicateKeys:({key:ie})=>`Duplicate key "${ie}" is not allowed in module attributes.`,ModuleExportNameHasLoneSurrogate:({surrogateCharCode:ie})=>`An export name cannot include a lone surrogate, found '\\u${ie.toString(16)}'.`,ModuleExportUndefined:({localName:ie})=>`Export '${ie}' is not defined.`,MultipleDefaultsInSwitch:"Multiple default clauses.",NewlineAfterThrow:"Illegal newline after throw.",NoCatchOrFinally:"Missing catch or finally clause.",NumberIdentifier:"Identifier directly after number.",NumericSeparatorInEscapeSequence:"Numeric separators are not allowed inside unicode escape sequences or hex escape sequences.",ObsoleteAwaitStar:"'await*' has been removed from the async functions proposal. Use Promise.all() instead.",OptionalChainingNoNew:"Constructors in/after an Optional Chain are not allowed.",OptionalChainingNoTemplate:"Tagged Template Literals are not allowed in optionalChain.",OverrideOnConstructor:"'override' modifier cannot appear on a constructor declaration.",ParamDupe:"Argument name clash.",PatternHasAccessor:"Object pattern can't contain getter or setter.",PatternHasMethod:"Object pattern can't contain methods.",PrivateInExpectedIn:({identifierName:ie})=>`Private names are only allowed in property accesses (\`obj.#${ie}\`) or in \`in\` expressions (\`#${ie} in obj\`).`,PrivateNameRedeclaration:({identifierName:ie})=>`Duplicate private name #${ie}.`,RecordExpressionBarIncorrectEndSyntaxType:"Record expressions ending with '|}' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionBarIncorrectStartSyntaxType:"Record expressions starting with '{|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionHashIncorrectStartSyntaxType:"Record expressions starting with '#{' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",RecordNoProto:"'__proto__' is not allowed in Record expressions.",RestTrailingComma:"Unexpected trailing comma after rest element.",SloppyFunction:"In non-strict mode code, functions can only be declared at top level or inside a block.",SloppyFunctionAnnexB:"In non-strict mode code, functions can only be declared at top level, inside a block, or as the body of an if statement.",SourcePhaseImportRequiresDefault:'Only `import source x from "./module"` is valid.',StaticPrototype:"Classes may not have static property named prototype.",SuperNotAllowed:"`super()` is only valid inside a class constructor of a subclass. Maybe a typo in the method name ('constructor') or not extending another class?",SuperPrivateField:"Private fields can't be accessed on super.",TrailingDecorator:"Decorators must be attached to a class element.",TupleExpressionBarIncorrectEndSyntaxType:"Tuple expressions ending with '|]' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionBarIncorrectStartSyntaxType:"Tuple expressions starting with '[|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionHashIncorrectStartSyntaxType:"Tuple expressions starting with '#[' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",UnexpectedArgumentPlaceholder:"Unexpected argument placeholder.",UnexpectedAwaitAfterPipelineBody:'Unexpected "await" after pipeline body; await must have parentheses in minimal proposal.',UnexpectedDigitAfterHash:"Unexpected digit after hash token.",UnexpectedImportExport:"'import' and 'export' may only appear at the top level.",UnexpectedKeyword:({keyword:ie})=>`Unexpected keyword '${ie}'.`,UnexpectedLeadingDecorator:"Leading decorators must be attached to a class declaration.",UnexpectedLexicalDeclaration:"Lexical declaration cannot appear in a single-statement context.",UnexpectedNewTarget:"`new.target` can only be used in functions or class properties.",UnexpectedNumericSeparator:"A numeric separator is only allowed between two digits.",UnexpectedPrivateField:"Unexpected private name.",UnexpectedReservedWord:({reservedWord:ie})=>`Unexpected reserved word '${ie}'.`,UnexpectedSuper:"'super' is only allowed in object methods and classes.",UnexpectedToken:({expected:ie,unexpected:w})=>`Unexpected token${w?` '${w}'.`:""}${ie?`, expected "${ie}"`:""}`,UnexpectedTokenUnaryExponentiation:"Illegal expression. Wrap left hand side or entire exponentiation in parentheses.",UnexpectedUsingDeclaration:"Using declaration cannot appear in the top level when source type is `script`.",UnsupportedBind:"Binding should be performed on object property.",UnsupportedDecoratorExport:"A decorated export must export a class declaration.",UnsupportedDefaultExport:"Only expressions, functions or classes are allowed as the `default` export.",UnsupportedImport:"`import` can only be used in `import()` or `import.meta`.",UnsupportedMetaProperty:({target:ie,onlyValidPropertyName:w})=>`The only valid meta property for ${ie} is ${ie}.${w}.`,UnsupportedParameterDecorator:"Decorators cannot be used to decorate parameters.",UnsupportedPropertyDecorator:"Decorators cannot be used to decorate object literal properties.",UnsupportedSuper:"'super' can only be used with function calls (i.e. super()) or in property accesses (i.e. super.prop or super[prop]).",UnterminatedComment:"Unterminated comment.",UnterminatedRegExp:"Unterminated regular expression.",UnterminatedString:"Unterminated string constant.",UnterminatedTemplate:"Unterminated template.",UsingDeclarationExport:"Using declaration cannot be exported.",UsingDeclarationHasBindingPattern:"Using declaration cannot have destructuring patterns.",VarRedeclaration:({identifierName:ie})=>`Identifier '${ie}' has already been declared.`,YieldBindingIdentifier:"Can not use 'yield' as identifier inside a generator.",YieldInParameter:"Yield expression is not allowed in formal parameters.",ZeroDigitNumericSeparator:"Numeric separator can not be used after leading 0."},y={StrictDelete:"Deleting local variable in strict mode.",StrictEvalArguments:({referenceName:ie})=>`Assigning to '${ie}' in strict mode.`,StrictEvalArgumentsBinding:({bindingName:ie})=>`Binding '${ie}' in strict mode.`,StrictFunction:"In strict mode code, functions can only be declared at top level or inside a block.",StrictNumericEscape:"The only valid numeric escape in strict mode is '\\0'.",StrictOctalLiteral:"Legacy octal literals are not allowed in strict mode.",StrictWith:"'with' in strict mode."},B=new Set(["ArrowFunctionExpression","AssignmentExpression","ConditionalExpression","YieldExpression"]),v=Object.assign({PipeBodyIsTighter:"Unexpected yield after pipeline body; any yield expression acting as Hack-style pipe body must be parenthesized due to its loose operator precedence.",PipeTopicRequiresHackPipes:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.',PipeTopicUnbound:"Topic reference is unbound; it must be inside a pipe body.",PipeTopicUnconfiguredToken:({token:ie})=>`Invalid topic token ${ie}. In order to use ${ie} as a topic reference, the pipelineOperator plugin must be configured with { "proposal": "hack", "topicToken": "${ie}" }.`,PipeTopicUnused:"Hack-style pipe body does not contain a topic reference; Hack-style pipes must use topic at least once.",PipeUnparenthesizedBody:({type:ie})=>`Hack-style pipe body cannot be an unparenthesized ${f({type:ie})}; please wrap it in parentheses.`},{PipelineBodyNoArrow:'Unexpected arrow "=>" after pipeline body; arrow function in pipeline body must be parenthesized.',PipelineBodySequenceExpression:"Pipeline body may not be a comma-separated sequence expression.",PipelineHeadSequenceExpression:"Pipeline head should not be a comma-separated sequence expression.",PipelineTopicUnused:"Pipeline is in topic style but does not use topic reference.",PrimaryTopicNotAllowed:"Topic reference was used in a lexical context without topic binding.",PrimaryTopicRequiresSmartPipeline:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.'}),k=["message"];function T(ie,w,J){Object.defineProperty(ie,w,{enumerable:!1,configurable:!0,value:J})}function O({toMessage:ie,code:w,reasonCode:J,syntaxPlugin:ye}){let ut=J==="MissingPlugin"||J==="MissingOneOfPlugins";{let zt={AccessorCannotDeclareThisParameter:"AccesorCannotDeclareThisParameter",AccessorCannotHaveTypeParameters:"AccesorCannotHaveTypeParameters",ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:"ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference",SetAccessorCannotHaveOptionalParameter:"SetAccesorCannotHaveOptionalParameter",SetAccessorCannotHaveRestParameter:"SetAccesorCannotHaveRestParameter",SetAccessorCannotHaveReturnType:"SetAccesorCannotHaveReturnType"};zt[J]&&(J=zt[J])}return function zt(Zr,wr){let Hn=new SyntaxError;return Hn.code=w,Hn.reasonCode=J,Hn.loc=Zr,Hn.pos=Zr.index,Hn.syntaxPlugin=ye,ut&&(Hn.missingPlugin=wr.missingPlugin),T(Hn,"clone",function(Dn={}){var Wo;let{line:Ic,column:Jc,index:Mo}=(Wo=Dn.loc)!=null?Wo:Zr;return zt(new r(Ic,Jc,Mo),Object.assign({},wr,Dn.details))}),T(Hn,"details",wr),Object.defineProperty(Hn,"message",{configurable:!0,get(){let Dn=`${ie(wr)} (${Zr.line}:${Zr.column})`;return this.message=Dn,Dn},set(Dn){Object.defineProperty(this,"message",{value:Dn,writable:!0})}}),Hn}}function X(ie,w){if(Array.isArray(ie))return ye=>X(ye,ie[0]);let J={};for(let ye of Object.keys(ie)){let ut=ie[ye],zt=typeof ut=="string"?{message:()=>ut}:typeof ut=="function"?{message:ut}:ut,{message:Zr}=zt,wr=t(zt,k),Hn=typeof Zr=="string"?()=>Zr:Zr;J[ye]=O(Object.assign({code:"BABEL_PARSER_SYNTAX_ERROR",reasonCode:ye,toMessage:Hn},w?{syntaxPlugin:w}:{},wr))}return J}var U=Object.assign({},X(g),X(m),X(y),X`pipelineOperator`(v));function le(){return{sourceType:"script",sourceFilename:void 0,startIndex:0,startColumn:0,startLine:1,allowAwaitOutsideFunction:!1,allowReturnOutsideFunction:!1,allowNewTargetOutsideFunction:!1,allowImportExportEverywhere:!1,allowSuperOutsideMethod:!1,allowUndeclaredExports:!1,plugins:[],strictMode:null,ranges:!1,tokens:!1,createImportExpressions:!1,createParenthesizedExpressions:!1,errorRecovery:!1,attachComment:!0,annexB:!0}}function ae(ie){let w=le();if(ie==null)return w;if(ie.annexB!=null&&ie.annexB!==!1)throw new Error("The `annexB` option can only be set to `false`.");for(let J of Object.keys(w))ie[J]!=null&&(w[J]=ie[J]);if(w.startLine===1)ie.startIndex==null&&w.startColumn>0?w.startIndex=w.startColumn:ie.startColumn==null&&w.startIndex>0&&(w.startColumn=w.startIndex);else if((ie.startColumn==null||ie.startIndex==null)&&ie.startIndex!=null)throw new Error("With a `startLine > 1` you must also specify `startIndex` and `startColumn`.");return w}var{defineProperty:ge}=Object,fe=(ie,w)=>{ie&&ge(ie,w,{enumerable:!1,value:ie[w]})};function pe(ie){return fe(ie.loc.start,"index"),fe(ie.loc.end,"index"),ie}var he=ie=>class extends ie{parse(){let w=pe(super.parse());return this.optionFlags&128&&(w.tokens=w.tokens.map(pe)),w}parseRegExpLiteral({pattern:w,flags:J}){let ye=null;try{ye=new RegExp(w,J)}catch{}let ut=this.estreeParseLiteral(ye);return ut.regex={pattern:w,flags:J},ut}parseBigIntLiteral(w){let J;try{J=BigInt(w)}catch{J=null}let ye=this.estreeParseLiteral(J);return ye.bigint=String(ye.value||w),ye}parseDecimalLiteral(w){let J=this.estreeParseLiteral(null);return J.decimal=String(J.value||w),J}estreeParseLiteral(w){return this.parseLiteral(w,"Literal")}parseStringLiteral(w){return this.estreeParseLiteral(w)}parseNumericLiteral(w){return this.estreeParseLiteral(w)}parseNullLiteral(){return this.estreeParseLiteral(null)}parseBooleanLiteral(w){return this.estreeParseLiteral(w)}directiveToStmt(w){let J=w.value;delete w.value,J.type="Literal",J.raw=J.extra.raw,J.value=J.extra.expressionValue;let ye=w;return ye.type="ExpressionStatement",ye.expression=J,ye.directive=J.extra.rawValue,delete J.extra,ye}initFunction(w,J){super.initFunction(w,J),w.expression=!1}checkDeclaration(w){w!=null&&this.isObjectProperty(w)?this.checkDeclaration(w.value):super.checkDeclaration(w)}getObjectOrClassMethodParams(w){return w.value.params}isValidDirective(w){var J;return w.type==="ExpressionStatement"&&w.expression.type==="Literal"&&typeof w.expression.value=="string"&&!((J=w.expression.extra)!=null&&J.parenthesized)}parseBlockBody(w,J,ye,ut,zt){super.parseBlockBody(w,J,ye,ut,zt);let Zr=w.directives.map(wr=>this.directiveToStmt(wr));w.body=Zr.concat(w.body),delete w.directives}parsePrivateName(){let w=super.parsePrivateName();return this.getPluginOption("estree","classFeatures")?this.convertPrivateNameToPrivateIdentifier(w):w}convertPrivateNameToPrivateIdentifier(w){let J=super.getPrivateNameSV(w);return w=w,delete w.id,w.name=J,w.type="PrivateIdentifier",w}isPrivateName(w){return this.getPluginOption("estree","classFeatures")?w.type==="PrivateIdentifier":super.isPrivateName(w)}getPrivateNameSV(w){return this.getPluginOption("estree","classFeatures")?w.name:super.getPrivateNameSV(w)}parseLiteral(w,J){let ye=super.parseLiteral(w,J);return ye.raw=ye.extra.raw,delete ye.extra,ye}parseFunctionBody(w,J,ye=!1){super.parseFunctionBody(w,J,ye),w.expression=w.body.type!=="BlockStatement"}parseMethod(w,J,ye,ut,zt,Zr,wr=!1){let Hn=this.startNode();Hn.kind=w.kind,Hn=super.parseMethod(Hn,J,ye,ut,zt,Zr,wr),Hn.type="FunctionExpression",delete Hn.kind,w.value=Hn;let{typeParameters:Dn}=w;return Dn&&(delete w.typeParameters,Hn.typeParameters=Dn,this.resetStartLocationFromNode(Hn,Dn)),Zr==="ClassPrivateMethod"&&(w.computed=!1),this.finishNode(w,"MethodDefinition")}nameIsConstructor(w){return w.type==="Literal"?w.value==="constructor":super.nameIsConstructor(w)}parseClassProperty(...w){let J=super.parseClassProperty(...w);return this.getPluginOption("estree","classFeatures")&&(J.type="PropertyDefinition"),J}parseClassPrivateProperty(...w){let J=super.parseClassPrivateProperty(...w);return this.getPluginOption("estree","classFeatures")&&(J.type="PropertyDefinition",J.computed=!1),J}parseObjectMethod(w,J,ye,ut,zt){let Zr=super.parseObjectMethod(w,J,ye,ut,zt);return Zr&&(Zr.type="Property",Zr.kind==="method"&&(Zr.kind="init"),Zr.shorthand=!1),Zr}parseObjectProperty(w,J,ye,ut){let zt=super.parseObjectProperty(w,J,ye,ut);return zt&&(zt.kind="init",zt.type="Property"),zt}isValidLVal(w,J,ye){return w==="Property"?"value":super.isValidLVal(w,J,ye)}isAssignable(w,J){return w!=null&&this.isObjectProperty(w)?this.isAssignable(w.value,J):super.isAssignable(w,J)}toAssignable(w,J=!1){if(w!=null&&this.isObjectProperty(w)){let{key:ye,value:ut}=w;this.isPrivateName(ye)&&this.classScope.usePrivateName(this.getPrivateNameSV(ye),ye.loc.start),this.toAssignable(ut,J)}else super.toAssignable(w,J)}toAssignableObjectExpressionProp(w,J,ye){w.type==="Property"&&(w.kind==="get"||w.kind==="set")?this.raise(U.PatternHasAccessor,w.key):w.type==="Property"&&w.method?this.raise(U.PatternHasMethod,w.key):super.toAssignableObjectExpressionProp(w,J,ye)}finishCallExpression(w,J){let ye=super.finishCallExpression(w,J);if(ye.callee.type==="Import"){var ut,zt;ye.type="ImportExpression",ye.source=ye.arguments[0],ye.options=(ut=ye.arguments[1])!=null?ut:null,ye.attributes=(zt=ye.arguments[1])!=null?zt:null,delete ye.arguments,delete ye.callee}return ye}toReferencedArguments(w){w.type!=="ImportExpression"&&super.toReferencedArguments(w)}parseExport(w,J){let ye=this.state.lastTokStartLoc,ut=super.parseExport(w,J);switch(ut.type){case"ExportAllDeclaration":ut.exported=null;break;case"ExportNamedDeclaration":ut.specifiers.length===1&&ut.specifiers[0].type==="ExportNamespaceSpecifier"&&(ut.type="ExportAllDeclaration",ut.exported=ut.specifiers[0].exported,delete ut.specifiers);case"ExportDefaultDeclaration":{var zt;let{declaration:Zr}=ut;Zr?.type==="ClassDeclaration"&&((zt=Zr.decorators)==null?void 0:zt.length)>0&&Zr.start===ut.start&&this.resetStartLocation(ut,ye)}break}return ut}parseSubscript(w,J,ye,ut){let zt=super.parseSubscript(w,J,ye,ut);if(ut.optionalChainMember){if((zt.type==="OptionalMemberExpression"||zt.type==="OptionalCallExpression")&&(zt.type=zt.type.substring(8)),ut.stop){let Zr=this.startNodeAtNode(zt);return Zr.expression=zt,this.finishNode(Zr,"ChainExpression")}}else(zt.type==="MemberExpression"||zt.type==="CallExpression")&&(zt.optional=!1);return zt}isOptionalMemberExpression(w){return w.type==="ChainExpression"?w.expression.type==="MemberExpression":super.isOptionalMemberExpression(w)}hasPropertyAsPrivateName(w){return w.type==="ChainExpression"&&(w=w.expression),super.hasPropertyAsPrivateName(w)}isObjectProperty(w){return w.type==="Property"&&w.kind==="init"&&!w.method}isObjectMethod(w){return w.type==="Property"&&(w.method||w.kind==="get"||w.kind==="set")}finishNodeAt(w,J,ye){return pe(super.finishNodeAt(w,J,ye))}resetStartLocation(w,J){super.resetStartLocation(w,J),pe(w)}resetEndLocation(w,J=this.state.lastTokEndLoc){super.resetEndLocation(w,J),pe(w)}},be=class{constructor(ie,w){this.token=void 0,this.preserveSpace=void 0,this.token=ie,this.preserveSpace=!!w}},Te={brace:new be("{"),j_oTag:new be("...",!0)};Te.template=new be("`",!0);var ke=!0,x=!0,et=!0,Ue=!0,Je=!0,Xe=!0,ft=class{constructor(ie,w={}){this.label=void 0,this.keyword=void 0,this.beforeExpr=void 0,this.startsExpr=void 0,this.rightAssociative=void 0,this.isLoop=void 0,this.isAssign=void 0,this.prefix=void 0,this.postfix=void 0,this.binop=void 0,this.label=ie,this.keyword=w.keyword,this.beforeExpr=!!w.beforeExpr,this.startsExpr=!!w.startsExpr,this.rightAssociative=!!w.rightAssociative,this.isLoop=!!w.isLoop,this.isAssign=!!w.isAssign,this.prefix=!!w.prefix,this.postfix=!!w.postfix,this.binop=w.binop!=null?w.binop:null,this.updateContext=null}},Gt=new Map;function er(ie,w={}){w.keyword=ie;let J=In(ie,w);return Gt.set(ie,J),J}function Ur(ie,w){return In(ie,{beforeExpr:ke,binop:w})}var Ot=-1,dr=[],Ar=[],or=[],Fr=[],$r=[],Or=[];function In(ie,w={}){var J,ye,ut,zt;return++Ot,Ar.push(ie),or.push((J=w.binop)!=null?J:-1),Fr.push((ye=w.beforeExpr)!=null?ye:!1),$r.push((ut=w.startsExpr)!=null?ut:!1),Or.push((zt=w.prefix)!=null?zt:!1),dr.push(new ft(ie,w)),Ot}function Br(ie,w={}){var J,ye,ut,zt;return++Ot,Gt.set(ie,Ot),Ar.push(ie),or.push((J=w.binop)!=null?J:-1),Fr.push((ye=w.beforeExpr)!=null?ye:!1),$r.push((ut=w.startsExpr)!=null?ut:!1),Or.push((zt=w.prefix)!=null?zt:!1),dr.push(new ft("name",w)),Ot}var tr={bracketL:In("[",{beforeExpr:ke,startsExpr:x}),bracketHashL:In("#[",{beforeExpr:ke,startsExpr:x}),bracketBarL:In("[|",{beforeExpr:ke,startsExpr:x}),bracketR:In("]"),bracketBarR:In("|]"),braceL:In("{",{beforeExpr:ke,startsExpr:x}),braceBarL:In("{|",{beforeExpr:ke,startsExpr:x}),braceHashL:In("#{",{beforeExpr:ke,startsExpr:x}),braceR:In("}"),braceBarR:In("|}"),parenL:In("(",{beforeExpr:ke,startsExpr:x}),parenR:In(")"),comma:In(",",{beforeExpr:ke}),semi:In(";",{beforeExpr:ke}),colon:In(":",{beforeExpr:ke}),doubleColon:In("::",{beforeExpr:ke}),dot:In("."),question:In("?",{beforeExpr:ke}),questionDot:In("?."),arrow:In("=>",{beforeExpr:ke}),template:In("template"),ellipsis:In("...",{beforeExpr:ke}),backQuote:In("`",{startsExpr:x}),dollarBraceL:In("${",{beforeExpr:ke,startsExpr:x}),templateTail:In("...`",{startsExpr:x}),templateNonTail:In("...${",{beforeExpr:ke,startsExpr:x}),at:In("@"),hash:In("#",{startsExpr:x}),interpreterDirective:In("#!..."),eq:In("=",{beforeExpr:ke,isAssign:Ue}),assign:In("_=",{beforeExpr:ke,isAssign:Ue}),slashAssign:In("_=",{beforeExpr:ke,isAssign:Ue}),xorAssign:In("_=",{beforeExpr:ke,isAssign:Ue}),moduloAssign:In("_=",{beforeExpr:ke,isAssign:Ue}),incDec:In("++/--",{prefix:Je,postfix:Xe,startsExpr:x}),bang:In("!",{beforeExpr:ke,prefix:Je,startsExpr:x}),tilde:In("~",{beforeExpr:ke,prefix:Je,startsExpr:x}),doubleCaret:In("^^",{startsExpr:x}),doubleAt:In("@@",{startsExpr:x}),pipeline:Ur("|>",0),nullishCoalescing:Ur("??",1),logicalOR:Ur("||",1),logicalAND:Ur("&&",2),bitwiseOR:Ur("|",3),bitwiseXOR:Ur("^",4),bitwiseAND:Ur("&",5),equality:Ur("==/!=/===/!==",6),lt:Ur("/<=/>=",7),gt:Ur("/<=/>=",7),relational:Ur("/<=/>=",7),bitShift:Ur("<>/>>>",8),bitShiftL:Ur("<>/>>>",8),bitShiftR:Ur("<>/>>>",8),plusMin:In("+/-",{beforeExpr:ke,binop:9,prefix:Je,startsExpr:x}),modulo:In("%",{binop:10,startsExpr:x}),star:In("*",{binop:10}),slash:Ur("/",10),exponent:In("**",{beforeExpr:ke,binop:11,rightAssociative:!0}),_in:er("in",{beforeExpr:ke,binop:7}),_instanceof:er("instanceof",{beforeExpr:ke,binop:7}),_break:er("break"),_case:er("case",{beforeExpr:ke}),_catch:er("catch"),_continue:er("continue"),_debugger:er("debugger"),_default:er("default",{beforeExpr:ke}),_else:er("else",{beforeExpr:ke}),_finally:er("finally"),_function:er("function",{startsExpr:x}),_if:er("if"),_return:er("return",{beforeExpr:ke}),_switch:er("switch"),_throw:er("throw",{beforeExpr:ke,prefix:Je,startsExpr:x}),_try:er("try"),_var:er("var"),_const:er("const"),_with:er("with"),_new:er("new",{beforeExpr:ke,startsExpr:x}),_this:er("this",{startsExpr:x}),_super:er("super",{startsExpr:x}),_class:er("class",{startsExpr:x}),_extends:er("extends",{beforeExpr:ke}),_export:er("export"),_import:er("import",{startsExpr:x}),_null:er("null",{startsExpr:x}),_true:er("true",{startsExpr:x}),_false:er("false",{startsExpr:x}),_typeof:er("typeof",{beforeExpr:ke,prefix:Je,startsExpr:x}),_void:er("void",{beforeExpr:ke,prefix:Je,startsExpr:x}),_delete:er("delete",{beforeExpr:ke,prefix:Je,startsExpr:x}),_do:er("do",{isLoop:et,beforeExpr:ke}),_for:er("for",{isLoop:et}),_while:er("while",{isLoop:et}),_as:Br("as",{startsExpr:x}),_assert:Br("assert",{startsExpr:x}),_async:Br("async",{startsExpr:x}),_await:Br("await",{startsExpr:x}),_defer:Br("defer",{startsExpr:x}),_from:Br("from",{startsExpr:x}),_get:Br("get",{startsExpr:x}),_let:Br("let",{startsExpr:x}),_meta:Br("meta",{startsExpr:x}),_of:Br("of",{startsExpr:x}),_sent:Br("sent",{startsExpr:x}),_set:Br("set",{startsExpr:x}),_source:Br("source",{startsExpr:x}),_static:Br("static",{startsExpr:x}),_using:Br("using",{startsExpr:x}),_yield:Br("yield",{startsExpr:x}),_asserts:Br("asserts",{startsExpr:x}),_checks:Br("checks",{startsExpr:x}),_exports:Br("exports",{startsExpr:x}),_global:Br("global",{startsExpr:x}),_implements:Br("implements",{startsExpr:x}),_intrinsic:Br("intrinsic",{startsExpr:x}),_infer:Br("infer",{startsExpr:x}),_is:Br("is",{startsExpr:x}),_mixins:Br("mixins",{startsExpr:x}),_proto:Br("proto",{startsExpr:x}),_require:Br("require",{startsExpr:x}),_satisfies:Br("satisfies",{startsExpr:x}),_keyof:Br("keyof",{startsExpr:x}),_readonly:Br("readonly",{startsExpr:x}),_unique:Br("unique",{startsExpr:x}),_abstract:Br("abstract",{startsExpr:x}),_declare:Br("declare",{startsExpr:x}),_enum:Br("enum",{startsExpr:x}),_module:Br("module",{startsExpr:x}),_namespace:Br("namespace",{startsExpr:x}),_interface:Br("interface",{startsExpr:x}),_type:Br("type",{startsExpr:x}),_opaque:Br("opaque",{startsExpr:x}),name:In("name",{startsExpr:x}),placeholder:In("%%",{startsExpr:!0}),string:In("string",{startsExpr:x}),num:In("num",{startsExpr:x}),bigint:In("bigint",{startsExpr:x}),decimal:In("decimal",{startsExpr:x}),regexp:In("regexp",{startsExpr:x}),privateName:In("#name",{startsExpr:x}),eof:In("eof"),jsxName:In("jsxName"),jsxText:In("jsxText",{beforeExpr:!0}),jsxTagStart:In("jsxTagStart",{startsExpr:!0}),jsxTagEnd:In("jsxTagEnd")};function gn(ie){return ie>=93&&ie<=133}function Gn(ie){return ie<=92}function we(ie){return ie>=58&&ie<=133}function Zi(ie){return ie>=58&&ie<=137}function Fa(ie){return Fr[ie]}function xa(ie){return $r[ie]}function Qs(ie){return ie>=29&&ie<=33}function lr(ie){return ie>=129&&ie<=131}function ua(ie){return ie>=90&&ie<=92}function vi(ie){return ie>=58&&ie<=92}function Hu(ie){return ie>=39&&ie<=59}function Yu(ie){return ie===34}function YA(ie){return Or[ie]}function gd(ie){return ie>=121&&ie<=123}function NA(ie){return ie>=124&&ie<=130}function Vd(ie){return Ar[ie]}function jr(ie){return or[ie]}function Gr(ie){return ie===57}function Ir(ie){return ie>=24&&ie<=25}function nn(ie){return dr[ie]}dr[8].updateContext=ie=>{ie.pop()},dr[5].updateContext=dr[7].updateContext=dr[23].updateContext=ie=>{ie.push(Te.brace)},dr[22].updateContext=ie=>{ie[ie.length-1]===Te.template?ie.pop():ie.push(Te.template)},dr[143].updateContext=ie=>{ie.push(Te.j_expr,Te.j_oTag)};var Cn="\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\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\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\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\u0AF9\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-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\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-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\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\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\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\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\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",Vn="\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0897-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F\uFF65",Ji=new RegExp("["+Cn+"]"),Yr=new RegExp("["+Cn+Vn+"]");Cn=Vn=null;var Vs=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,4,51,13,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,39,27,10,22,251,41,7,1,17,2,60,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,200,32,32,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,42,9,8936,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,229,29,3,0,496,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4153,7,221,3,5761,15,7472,16,621,2467,541,1507,4938,6,4191],Uo=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,7,9,32,4,318,1,80,3,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,343,9,54,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,10,1,2,0,49,6,4,4,14,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,245,1,2,9,726,6,110,6,6,9,4759,9,787719,239];function ai(ie,w){let J=65536;for(let ye=0,ut=w.length;yeie)return!1;if(J+=w[ye+1],J>=ie)return!0}return!1}function da(ie){return ie<65?ie===36:ie<=90?!0:ie<97?ie===95:ie<=122?!0:ie<=65535?ie>=170&&Ji.test(String.fromCharCode(ie)):ai(ie,Vs)}function og(ie){return ie<48?ie===36:ie<58?!0:ie<65?!1:ie<=90?!0:ie<97?ie===95:ie<=122?!0:ie<=65535?ie>=170&&Yr.test(String.fromCharCode(ie)):ai(ie,Vs)||ai(ie,Uo)}var Zu={keyword:["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"],strict:["implements","interface","let","package","private","protected","public","static","yield"],strictBind:["eval","arguments"]},mg=new Set(Zu.keyword),Lu=new Set(Zu.strict),ml=new Set(Zu.strictBind);function wi(ie,w){return w&&ie==="await"||ie==="enum"}function ts(ie,w){return wi(ie,w)||Lu.has(ie)}function $i(ie){return ml.has(ie)}function ka(ie,w){return ts(ie,w)||$i(ie)}function qs(ie){return mg.has(ie)}function kl(ie,w,J){return ie===64&&w===64&&da(J)}var zo=new Set(["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete","implements","interface","let","package","private","protected","public","static","yield","eval","arguments","enum","await"]);function Ta(ie){return zo.has(ie)}var Tu=class{constructor(ie){this.flags=0,this.names=new Map,this.firstLexicalName="",this.flags=ie}},xg=class{constructor(ie,w){this.parser=void 0,this.scopeStack=[],this.inModule=void 0,this.undefinedExports=new Map,this.parser=ie,this.inModule=w}get inTopLevel(){return(this.currentScope().flags&1)>0}get inFunction(){return(this.currentVarScopeFlags()&2)>0}get allowSuper(){return(this.currentThisScopeFlags()&16)>0}get allowDirectSuper(){return(this.currentThisScopeFlags()&32)>0}get inClass(){return(this.currentThisScopeFlags()&64)>0}get inClassAndNotInNonArrowFunction(){let ie=this.currentThisScopeFlags();return(ie&64)>0&&(ie&2)===0}get inStaticBlock(){for(let ie=this.scopeStack.length-1;;ie--){let{flags:w}=this.scopeStack[ie];if(w&128)return!0;if(w&451)return!1}}get inNonArrowFunction(){return(this.currentThisScopeFlags()&2)>0}get treatFunctionsAsVar(){return this.treatFunctionsAsVarInScope(this.currentScope())}createScope(ie){return new Tu(ie)}enter(ie){this.scopeStack.push(this.createScope(ie))}exit(){return this.scopeStack.pop().flags}treatFunctionsAsVarInScope(ie){return!!(ie.flags&130||!this.parser.inModule&&ie.flags&1)}declareName(ie,w,J){let ye=this.currentScope();if(w&8||w&16){this.checkRedeclarationInScope(ye,ie,w,J);let ut=ye.names.get(ie)||0;w&16?ut=ut|4:(ye.firstLexicalName||(ye.firstLexicalName=ie),ut=ut|2),ye.names.set(ie,ut),w&8&&this.maybeExportDefined(ye,ie)}else if(w&4)for(let ut=this.scopeStack.length-1;ut>=0&&(ye=this.scopeStack[ut],this.checkRedeclarationInScope(ye,ie,w,J),ye.names.set(ie,(ye.names.get(ie)||0)|1),this.maybeExportDefined(ye,ie),!(ye.flags&387));--ut);this.parser.inModule&&ye.flags&1&&this.undefinedExports.delete(ie)}maybeExportDefined(ie,w){this.parser.inModule&&ie.flags&1&&this.undefinedExports.delete(w)}checkRedeclarationInScope(ie,w,J,ye){this.isRedeclaredInScope(ie,w,J)&&this.parser.raise(U.VarRedeclaration,ye,{identifierName:w})}isRedeclaredInScope(ie,w,J){if(!(J&1))return!1;if(J&8)return ie.names.has(w);let ye=ie.names.get(w);return J&16?(ye&2)>0||!this.treatFunctionsAsVarInScope(ie)&&(ye&1)>0:(ye&2)>0&&!(ie.flags&8&&ie.firstLexicalName===w)||!this.treatFunctionsAsVarInScope(ie)&&(ye&4)>0}checkLocalExport(ie){let{name:w}=ie;this.scopeStack[0].names.has(w)||this.undefinedExports.set(w,ie.loc.start)}currentScope(){return this.scopeStack[this.scopeStack.length-1]}currentVarScopeFlags(){for(let ie=this.scopeStack.length-1;;ie--){let{flags:w}=this.scopeStack[ie];if(w&387)return w}}currentThisScopeFlags(){for(let ie=this.scopeStack.length-1;;ie--){let{flags:w}=this.scopeStack[ie];if(w&451&&!(w&4))return w}}},_l=class extends Tu{constructor(...ie){super(...ie),this.declareFunctions=new Set}},cu=class extends xg{createScope(ie){return new _l(ie)}declareName(ie,w,J){let ye=this.currentScope();if(w&2048){this.checkRedeclarationInScope(ye,ie,w,J),this.maybeExportDefined(ye,ie),ye.declareFunctions.add(ie);return}super.declareName(ie,w,J)}isRedeclaredInScope(ie,w,J){if(super.isRedeclaredInScope(ie,w,J))return!0;if(J&2048&&!ie.declareFunctions.has(w)){let ye=ie.names.get(w);return(ye&4)>0||(ye&2)>0}return!1}checkLocalExport(ie){this.scopeStack[0].declareFunctions.has(ie.name)||super.checkLocalExport(ie)}},Vg=class{constructor(){this.sawUnambiguousESM=!1,this.ambiguousScriptDifferentAst=!1}sourceToOffsetPos(ie){return ie+this.startIndex}offsetToSourcePos(ie){return ie-this.startIndex}hasPlugin(ie){if(typeof ie=="string")return this.plugins.has(ie);{let[w,J]=ie;if(!this.hasPlugin(w))return!1;let ye=this.plugins.get(w);for(let ut of Object.keys(J))if(ye?.[ut]!==J[ut])return!1;return!0}}getPluginOption(ie,w){var J;return(J=this.plugins.get(ie))==null?void 0:J[w]}};function lf(ie,w){ie.trailingComments===void 0?ie.trailingComments=w:ie.trailingComments.unshift(...w)}function Nd(ie,w){ie.leadingComments===void 0?ie.leadingComments=w:ie.leadingComments.unshift(...w)}function ei(ie,w){ie.innerComments===void 0?ie.innerComments=w:ie.innerComments.unshift(...w)}function Qa(ie,w,J){let ye=null,ut=w.length;for(;ye===null&&ut>0;)ye=w[--ut];ye===null||ye.start>J.start?ei(ie,J.comments):lf(ye,J.comments)}var Dt=class extends Vg{addComment(ie){this.filename&&(ie.loc.filename=this.filename);let{commentsLen:w}=this.state;this.comments.length!==w&&(this.comments.length=w),this.comments.push(ie),this.state.commentsLen++}processComment(ie){let{commentStack:w}=this.state,J=w.length;if(J===0)return;let ye=J-1,ut=w[ye];ut.start===ie.end&&(ut.leadingNode=ie,ye--);let{start:zt}=ie;for(;ye>=0;ye--){let Zr=w[ye],wr=Zr.end;if(wr>zt)Zr.containingNode=ie,this.finalizeComment(Zr),w.splice(ye,1);else{wr===zt&&(Zr.trailingNode=ie);break}}}finalizeComment(ie){let{comments:w}=ie;if(ie.leadingNode!==null||ie.trailingNode!==null)ie.leadingNode!==null&&lf(ie.leadingNode,w),ie.trailingNode!==null&&Nd(ie.trailingNode,w);else{let{containingNode:J,start:ye}=ie;if(this.input.charCodeAt(this.offsetToSourcePos(ye)-1)===44)switch(J.type){case"ObjectExpression":case"ObjectPattern":case"RecordExpression":Qa(J,J.properties,ie);break;case"CallExpression":case"OptionalCallExpression":Qa(J,J.arguments,ie);break;case"FunctionDeclaration":case"FunctionExpression":case"ArrowFunctionExpression":case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":Qa(J,J.params,ie);break;case"ArrayExpression":case"ArrayPattern":case"TupleExpression":Qa(J,J.elements,ie);break;case"ExportNamedDeclaration":case"ImportDeclaration":Qa(J,J.specifiers,ie);break;case"TSEnumDeclaration":Qa(J,J.members,ie);break;case"TSEnumBody":Qa(J,J.members,ie);break;default:ei(J,w)}else ei(J,w)}}finalizeRemainingComments(){let{commentStack:ie}=this.state;for(let w=ie.length-1;w>=0;w--)this.finalizeComment(ie[w]);this.state.commentStack=[]}resetPreviousNodeTrailingComments(ie){let{commentStack:w}=this.state,{length:J}=w;if(J===0)return;let ye=w[J-1];ye.leadingNode===ie&&(ye.leadingNode=null)}resetPreviousIdentifierLeadingComments(ie){let{commentStack:w}=this.state,{length:J}=w;J!==0&&(w[J-1].trailingNode===ie?w[J-1].trailingNode=null:J>=2&&w[J-2].trailingNode===ie&&(w[J-2].trailingNode=null))}takeSurroundingComments(ie,w,J){let{commentStack:ye}=this.state,ut=ye.length;if(ut===0)return;let zt=ut-1;for(;zt>=0;zt--){let Zr=ye[zt],wr=Zr.end;if(Zr.start===J)Zr.leadingNode=ie;else if(wr===w)Zr.trailingNode=ie;else if(wr0}set strict(w){w?this.flags|=1:this.flags&=-2}init({strictMode:w,sourceType:J,startIndex:ye,startLine:ut,startColumn:zt}){this.strict=w===!1?!1:w===!0?!0:J==="module",this.startIndex=ye,this.curLine=ut,this.lineStart=-zt,this.startLoc=this.endLoc=new r(ut,zt,ye)}get maybeInArrowParameters(){return(this.flags&2)>0}set maybeInArrowParameters(w){w?this.flags|=2:this.flags&=-3}get inType(){return(this.flags&4)>0}set inType(w){w?this.flags|=4:this.flags&=-5}get noAnonFunctionType(){return(this.flags&8)>0}set noAnonFunctionType(w){w?this.flags|=8:this.flags&=-9}get hasFlowComment(){return(this.flags&16)>0}set hasFlowComment(w){w?this.flags|=16:this.flags&=-17}get isAmbientContext(){return(this.flags&32)>0}set isAmbientContext(w){w?this.flags|=32:this.flags&=-33}get inAbstractClass(){return(this.flags&64)>0}set inAbstractClass(w){w?this.flags|=64:this.flags&=-65}get inDisallowConditionalTypesContext(){return(this.flags&128)>0}set inDisallowConditionalTypesContext(w){w?this.flags|=128:this.flags&=-129}get soloAwait(){return(this.flags&256)>0}set soloAwait(w){w?this.flags|=256:this.flags&=-257}get inFSharpPipelineDirectBody(){return(this.flags&512)>0}set inFSharpPipelineDirectBody(w){w?this.flags|=512:this.flags&=-513}get canStartJSXElement(){return(this.flags&1024)>0}set canStartJSXElement(w){w?this.flags|=1024:this.flags&=-1025}get containsEsc(){return(this.flags&2048)>0}set containsEsc(w){w?this.flags|=2048:this.flags&=-2049}get hasTopLevelAwait(){return(this.flags&4096)>0}set hasTopLevelAwait(w){w?this.flags|=4096:this.flags&=-4097}curPosition(){return new r(this.curLine,this.pos-this.lineStart,this.pos+this.startIndex)}clone(){let w=new m$n;return w.flags=this.flags,w.startIndex=this.startIndex,w.curLine=this.curLine,w.lineStart=this.lineStart,w.startLoc=this.startLoc,w.endLoc=this.endLoc,w.errors=this.errors.slice(),w.potentialArrowAt=this.potentialArrowAt,w.noArrowAt=this.noArrowAt.slice(),w.noArrowParamsConversionAt=this.noArrowParamsConversionAt.slice(),w.topicContext=this.topicContext,w.labels=this.labels.slice(),w.commentsLen=this.commentsLen,w.commentStack=this.commentStack.slice(),w.pos=this.pos,w.type=this.type,w.value=this.value,w.start=this.start,w.end=this.end,w.lastTokEndLoc=this.lastTokEndLoc,w.lastTokStartLoc=this.lastTokStartLoc,w.context=this.context.slice(),w.firstInvalidTemplateEscapePos=this.firstInvalidTemplateEscapePos,w.strictErrors=this.strictErrors,w.tokensLength=this.tokensLength,w}},XA=function(ie){return ie>=48&&ie<=57},To={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},Xl={bin:ie=>ie===48||ie===49,oct:ie=>ie>=48&&ie<=55,dec:ie=>ie>=48&&ie<=57,hex:ie=>ie>=48&&ie<=57||ie>=65&&ie<=70||ie>=97&&ie<=102};function Zf(ie,w,J,ye,ut,zt){let Zr=J,wr=ye,Hn=ut,Dn="",Wo=null,Ic=J,{length:Jc}=w;for(;;){if(J>=Jc){zt.unterminated(Zr,wr,Hn),Dn+=w.slice(Ic,J);break}let Mo=w.charCodeAt(J);if(Wd(ie,Mo,w,J)){Dn+=w.slice(Ic,J);break}if(Mo===92){Dn+=w.slice(Ic,J);let bu=EA(w,J,ye,ut,ie==="template",zt);bu.ch===null&&!Wo?Wo={pos:J,lineStart:ye,curLine:ut}:Dn+=bu.ch,{pos:J,lineStart:ye,curLine:ut}=bu,Ic=J}else Mo===8232||Mo===8233?(++J,++ut,ye=J):Mo===10||Mo===13?ie==="template"?(Dn+=w.slice(Ic,J)+` +`,++J,Mo===13&&w.charCodeAt(J)===10&&++J,++ut,Ic=ye=J):zt.unterminated(Zr,wr,Hn):++J}return{pos:J,str:Dn,firstInvalidLoc:Wo,lineStart:ye,curLine:ut,containsInvalid:!!Wo}}function Wd(ie,w,J,ye){return ie==="template"?w===96||w===36&&J.charCodeAt(ye+1)===123:w===(ie==="double"?34:39)}function EA(ie,w,J,ye,ut,zt){let Zr=!ut;w++;let wr=Dn=>({pos:w,ch:Dn,lineStart:J,curLine:ye}),Hn=ie.charCodeAt(w++);switch(Hn){case 110:return wr(` +`);case 114:return wr("\r");case 120:{let Dn;return{code:Dn,pos:w}=Ps(ie,w,J,ye,2,!1,Zr,zt),wr(Dn===null?null:String.fromCharCode(Dn))}case 117:{let Dn;return{code:Dn,pos:w}=ec(ie,w,J,ye,Zr,zt),wr(Dn===null?null:String.fromCodePoint(Dn))}case 116:return wr(" ");case 98:return wr("\b");case 118:return wr("\v");case 102:return wr("\f");case 13:ie.charCodeAt(w)===10&&++w;case 10:J=w,++ye;case 8232:case 8233:return wr("");case 56:case 57:if(ut)return wr(null);zt.strictNumericEscape(w-1,J,ye);default:if(Hn>=48&&Hn<=55){let Dn=w-1,Wo=/^[0-7]+/.exec(ie.slice(Dn,w+2))[0],Ic=parseInt(Wo,8);Ic>255&&(Wo=Wo.slice(0,-1),Ic=parseInt(Wo,8)),w+=Wo.length-1;let Jc=ie.charCodeAt(w);if(Wo!=="0"||Jc===56||Jc===57){if(ut)return wr(null);zt.strictNumericEscape(Dn,J,ye)}return wr(String.fromCharCode(Ic))}return wr(String.fromCharCode(Hn))}}function Ps(ie,w,J,ye,ut,zt,Zr,wr){let Hn=w,Dn;return{n:Dn,pos:w}=Yi(ie,w,J,ye,16,ut,zt,!1,wr,!Zr),Dn===null&&(Zr?wr.invalidEscapeSequence(Hn,J,ye):w=Hn-1),{code:Dn,pos:w}}function Yi(ie,w,J,ye,ut,zt,Zr,wr,Hn,Dn){let Wo=w,Ic=ut===16?To.hex:To.decBinOct,Jc=ut===16?Xl.hex:ut===10?Xl.dec:ut===8?Xl.oct:Xl.bin,Mo=!1,bu=0;for(let ap=0,uA=zt??1/0;ap=97?jd=rI-97+10:rI>=65?jd=rI-65+10:XA(rI)?jd=rI-48:jd=1/0,jd>=ut){if(jd<=9&&Dn)return{n:null,pos:w};if(jd<=9&&Hn.invalidDigit(w,J,ye,ut))jd=0;else if(Zr)jd=0,Mo=!0;else break}++w,bu=bu*ut+jd}return w===Wo||zt!=null&&w-Wo!==zt||Mo?{n:null,pos:w}:{n:bu,pos:w}}function ec(ie,w,J,ye,ut,zt){let Zr=ie.charCodeAt(w),wr;if(Zr===123){if(++w,{code:wr,pos:w}=Ps(ie,w,J,ye,ie.indexOf("}",w)-w,!0,ut,zt),++w,wr!==null&&wr>1114111)if(ut)zt.invalidCodePoint(w,J,ye);else return{code:null,pos:w}}else({code:wr,pos:w}=Ps(ie,w,J,ye,4,!1,ut,zt));return{code:wr,pos:w}}function ul(ie,w,J){return new r(J,ie-w,ie)}var Ts=new Set([103,109,115,105,121,117,100,118]),RA=class{constructor(ie){let w=ie.startIndex||0;this.type=ie.type,this.value=ie.value,this.start=w+ie.start,this.end=w+ie.end,this.loc=new s(ie.startLoc,ie.endLoc)}},Kd=class extends Dt{constructor(ie,w){super(),this.isLookahead=void 0,this.tokens=[],this.errorHandlers_readInt={invalidDigit:(J,ye,ut,zt)=>this.optionFlags&1024?(this.raise(U.InvalidDigit,ul(J,ye,ut),{radix:zt}),!0):!1,numericSeparatorInEscapeSequence:this.errorBuilder(U.NumericSeparatorInEscapeSequence),unexpectedNumericSeparator:this.errorBuilder(U.UnexpectedNumericSeparator)},this.errorHandlers_readCodePoint=Object.assign({},this.errorHandlers_readInt,{invalidEscapeSequence:this.errorBuilder(U.InvalidEscapeSequence),invalidCodePoint:this.errorBuilder(U.InvalidCodePoint)}),this.errorHandlers_readStringContents_string=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:(J,ye,ut)=>{this.recordStrictModeErrors(U.StrictNumericEscape,ul(J,ye,ut))},unterminated:(J,ye,ut)=>{throw this.raise(U.UnterminatedString,ul(J-1,ye,ut))}}),this.errorHandlers_readStringContents_template=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:this.errorBuilder(U.StrictNumericEscape),unterminated:(J,ye,ut)=>{throw this.raise(U.UnterminatedTemplate,ul(J,ye,ut))}}),this.state=new lA,this.state.init(ie),this.input=w,this.length=w.length,this.comments=[],this.isLookahead=!1}pushToken(ie){this.tokens.length=this.state.tokensLength,this.tokens.push(ie),++this.state.tokensLength}next(){this.checkKeywordEscapes(),this.optionFlags&128&&this.pushToken(new RA(this.state)),this.state.lastTokEndLoc=this.state.endLoc,this.state.lastTokStartLoc=this.state.startLoc,this.nextToken()}eat(ie){return this.match(ie)?(this.next(),!0):!1}match(ie){return this.state.type===ie}createLookaheadState(ie){return{pos:ie.pos,value:null,type:ie.type,start:ie.start,end:ie.end,context:[this.curContext()],inType:ie.inType,startLoc:ie.startLoc,lastTokEndLoc:ie.lastTokEndLoc,curLine:ie.curLine,lineStart:ie.lineStart,curPosition:ie.curPosition}}lookahead(){let ie=this.state;this.state=this.createLookaheadState(ie),this.isLookahead=!0,this.nextToken(),this.isLookahead=!1;let w=this.state;return this.state=ie,w}nextTokenStart(){return this.nextTokenStartSince(this.state.pos)}nextTokenStartSince(ie){return on.lastIndex=ie,on.test(this.input)?on.lastIndex:ie}lookaheadCharCode(){return this.input.charCodeAt(this.nextTokenStart())}nextTokenInLineStart(){return this.nextTokenInLineStartSince(this.state.pos)}nextTokenInLineStartSince(ie){return Eo.lastIndex=ie,Eo.test(this.input)?Eo.lastIndex:ie}lookaheadInLineCharCode(){return this.input.charCodeAt(this.nextTokenInLineStart())}codePointAtPos(ie){let w=this.input.charCodeAt(ie);if((w&64512)===55296&&++iethis.raise(w,J)),this.state.strictErrors.clear())}curContext(){return this.state.context[this.state.context.length-1]}nextToken(){if(this.skipSpace(),this.state.start=this.state.pos,this.isLookahead||(this.state.startLoc=this.state.curPosition()),this.state.pos>=this.length){this.finishToken(140);return}this.getTokenFromCode(this.codePointAtPos(this.state.pos))}skipBlockComment(ie){let w;this.isLookahead||(w=this.state.curPosition());let J=this.state.pos,ye=this.input.indexOf(ie,J+2);if(ye===-1)throw this.raise(U.UnterminatedComment,this.state.curPosition());for(this.state.pos=ye+ie.length,Xu.lastIndex=J+2;Xu.test(this.input)&&Xu.lastIndex<=ye;)++this.state.curLine,this.state.lineStart=Xu.lastIndex;if(this.isLookahead)return;let ut={type:"CommentBlock",value:this.input.slice(J+2,ye),start:this.sourceToOffsetPos(J),end:this.sourceToOffsetPos(ye+ie.length),loc:new s(w,this.state.curPosition())};return this.optionFlags&128&&this.pushToken(ut),ut}skipLineComment(ie){let w=this.state.pos,J;this.isLookahead||(J=this.state.curPosition());let ye=this.input.charCodeAt(this.state.pos+=ie);if(this.state.posie)){let ut=this.skipLineComment(3);ut!==void 0&&(this.addComment(ut),w?.push(ut))}else break e}else if(J===60&&!this.inModule&&this.optionFlags&4096){let ye=this.state.pos;if(this.input.charCodeAt(ye+1)===33&&this.input.charCodeAt(ye+2)===45&&this.input.charCodeAt(ye+3)===45){let ut=this.skipLineComment(4);ut!==void 0&&(this.addComment(ut),w?.push(ut))}else break e}else break e}}if(w?.length>0){let J=this.state.pos,ye={start:this.sourceToOffsetPos(ie),end:this.sourceToOffsetPos(J),comments:w,leadingNode:null,trailingNode:null,containingNode:null};this.state.commentStack.push(ye)}}finishToken(ie,w){this.state.end=this.state.pos,this.state.endLoc=this.state.curPosition();let J=this.state.type;this.state.type=ie,this.state.value=w,this.isLookahead||this.updateContext(J)}replaceToken(ie){this.state.type=ie,this.updateContext()}readToken_numberSign(){if(this.state.pos===0&&this.readToken_interpreter())return;let ie=this.state.pos+1,w=this.codePointAtPos(ie);if(w>=48&&w<=57)throw this.raise(U.UnexpectedDigitAfterHash,this.state.curPosition());if(w===123||w===91&&this.hasPlugin("recordAndTuple")){if(this.expectPlugin("recordAndTuple"),this.getPluginOption("recordAndTuple","syntaxType")==="bar")throw this.raise(w===123?U.RecordExpressionHashIncorrectStartSyntaxType:U.TupleExpressionHashIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,w===123?this.finishToken(7):this.finishToken(1)}else da(w)?(++this.state.pos,this.finishToken(139,this.readWord1(w))):w===92?(++this.state.pos,this.finishToken(139,this.readWord1())):this.finishOp(27,1)}readToken_dot(){let ie=this.input.charCodeAt(this.state.pos+1);if(ie>=48&&ie<=57){this.readNumber(!0);return}ie===46&&this.input.charCodeAt(this.state.pos+2)===46?(this.state.pos+=3,this.finishToken(21)):(++this.state.pos,this.finishToken(16))}readToken_slash(){this.input.charCodeAt(this.state.pos+1)===61?this.finishOp(31,2):this.finishOp(56,1)}readToken_interpreter(){if(this.state.pos!==0||this.length<2)return!1;let ie=this.input.charCodeAt(this.state.pos+1);if(ie!==33)return!1;let w=this.state.pos;for(this.state.pos+=1;!us(ie)&&++this.state.pos=48&&w<=57)?(this.state.pos+=2,this.finishToken(18)):(++this.state.pos,this.finishToken(17))}getTokenFromCode(ie){switch(ie){case 46:this.readToken_dot();return;case 40:++this.state.pos,this.finishToken(10);return;case 41:++this.state.pos,this.finishToken(11);return;case 59:++this.state.pos,this.finishToken(13);return;case 44:++this.state.pos,this.finishToken(12);return;case 91:if(this.hasPlugin("recordAndTuple")&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(U.TupleExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(2)}else++this.state.pos,this.finishToken(0);return;case 93:++this.state.pos,this.finishToken(3);return;case 123:if(this.hasPlugin("recordAndTuple")&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(U.RecordExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(6)}else++this.state.pos,this.finishToken(5);return;case 125:++this.state.pos,this.finishToken(8);return;case 58:this.hasPlugin("functionBind")&&this.input.charCodeAt(this.state.pos+1)===58?this.finishOp(15,2):(++this.state.pos,this.finishToken(14));return;case 63:this.readToken_question();return;case 96:this.readTemplateToken();return;case 48:{let w=this.input.charCodeAt(this.state.pos+1);if(w===120||w===88){this.readRadixNumber(16);return}if(w===111||w===79){this.readRadixNumber(8);return}if(w===98||w===66){this.readRadixNumber(2);return}}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:this.readNumber(!1);return;case 34:case 39:this.readString(ie);return;case 47:this.readToken_slash();return;case 37:case 42:this.readToken_mult_modulo(ie);return;case 124:case 38:this.readToken_pipe_amp(ie);return;case 94:this.readToken_caret();return;case 43:case 45:this.readToken_plus_min(ie);return;case 60:this.readToken_lt();return;case 62:this.readToken_gt();return;case 61:case 33:this.readToken_eq_excl(ie);return;case 126:this.finishOp(36,1);return;case 64:this.readToken_atSign();return;case 35:this.readToken_numberSign();return;case 92:this.readWord();return;default:if(da(ie)){this.readWord(ie);return}}throw this.raise(U.InvalidOrUnexpectedToken,this.state.curPosition(),{unexpected:String.fromCodePoint(ie)})}finishOp(ie,w){let J=this.input.slice(this.state.pos,this.state.pos+w);this.state.pos+=w,this.finishToken(ie,J)}readRegexp(){let ie=this.state.startLoc,w=this.state.start+1,J,ye,{pos:ut}=this.state;for(;;++ut){if(ut>=this.length)throw this.raise(U.UnterminatedRegExp,a(ie,1));let Hn=this.input.charCodeAt(ut);if(us(Hn))throw this.raise(U.UnterminatedRegExp,a(ie,1));if(J)J=!1;else{if(Hn===91)ye=!0;else if(Hn===93&&ye)ye=!1;else if(Hn===47&&!ye)break;J=Hn===92}}let zt=this.input.slice(w,ut);++ut;let Zr="",wr=()=>a(ie,ut+2-w);for(;ut=2&&this.input.charCodeAt(w)===48;if(wr){let Jc=this.input.slice(w,this.state.pos);if(this.recordStrictModeErrors(U.StrictOctalLiteral,J),!this.state.strict){let Mo=Jc.indexOf("_");Mo>0&&this.raise(U.ZeroDigitNumericSeparator,a(J,Mo))}Zr=wr&&!/[89]/.test(Jc)}let Hn=this.input.charCodeAt(this.state.pos);if(Hn===46&&!Zr&&(++this.state.pos,this.readInt(10),ye=!0,Hn=this.input.charCodeAt(this.state.pos)),(Hn===69||Hn===101)&&!Zr&&(Hn=this.input.charCodeAt(++this.state.pos),(Hn===43||Hn===45)&&++this.state.pos,this.readInt(10)===null&&this.raise(U.InvalidOrMissingExponent,J),ye=!0,zt=!0,Hn=this.input.charCodeAt(this.state.pos)),Hn===110&&((ye||wr)&&this.raise(U.InvalidBigIntLiteral,J),++this.state.pos,ut=!0),Hn===109){this.expectPlugin("decimal",this.state.curPosition()),(zt||wr)&&this.raise(U.InvalidDecimal,J),++this.state.pos;var Dn=!0}if(da(this.codePointAtPos(this.state.pos)))throw this.raise(U.NumberIdentifier,this.state.curPosition());let Wo=this.input.slice(w,this.state.pos).replace(/[_mn]/g,"");if(ut){this.finishToken(136,Wo);return}if(Dn){this.finishToken(137,Wo);return}let Ic=Zr?parseInt(Wo,8):parseFloat(Wo);this.finishToken(135,Ic)}readCodePoint(ie){let{code:w,pos:J}=ec(this.input,this.state.pos,this.state.lineStart,this.state.curLine,ie,this.errorHandlers_readCodePoint);return this.state.pos=J,w}readString(ie){let{str:w,pos:J,curLine:ye,lineStart:ut}=Zf(ie===34?"double":"single",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_string);this.state.pos=J+1,this.state.lineStart=ut,this.state.curLine=ye,this.finishToken(134,w)}readTemplateContinuation(){this.match(8)||this.unexpected(null,8),this.state.pos--,this.readTemplateToken()}readTemplateToken(){let ie=this.input[this.state.pos],{str:w,firstInvalidLoc:J,pos:ye,curLine:ut,lineStart:zt}=Zf("template",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_template);this.state.pos=ye+1,this.state.lineStart=zt,this.state.curLine=ut,J&&(this.state.firstInvalidTemplateEscapePos=new r(J.curLine,J.pos-J.lineStart,this.sourceToOffsetPos(J.pos))),this.input.codePointAt(ye)===96?this.finishToken(24,J?null:ie+w+"`"):(this.state.pos++,this.finishToken(25,J?null:ie+w+"${"))}recordStrictModeErrors(ie,w){let J=w.index;this.state.strict&&!this.state.strictErrors.has(J)?this.raise(ie,w):this.state.strictErrors.set(J,[ie,w])}readWord1(ie){this.state.containsEsc=!1;let w="",J=this.state.pos,ye=this.state.pos;for(ie!==void 0&&(this.state.pos+=ie<=65535?1:2);this.state.pos=0;Zr--){let wr=zt[Zr];if(wr.loc.index===ut)return zt[Zr]=ie(ye,J);if(wr.loc.indexthis.hasPlugin(w)))throw this.raise(U.MissingOneOfPlugins,this.state.startLoc,{missingPlugin:ie})}errorBuilder(ie){return(w,J,ye)=>{this.raise(ie,ul(w,J,ye))}}},Na=class{constructor(){this.privateNames=new Set,this.loneAccessors=new Map,this.undefinedPrivateNames=new Map}},ys=class{constructor(ie){this.parser=void 0,this.stack=[],this.undefinedPrivateNames=new Map,this.parser=ie}current(){return this.stack[this.stack.length-1]}enter(){this.stack.push(new Na)}exit(){let ie=this.stack.pop(),w=this.current();for(let[J,ye]of Array.from(ie.undefinedPrivateNames))w?w.undefinedPrivateNames.has(J)||w.undefinedPrivateNames.set(J,ye):this.parser.raise(U.InvalidPrivateFieldResolution,ye,{identifierName:J})}declarePrivateName(ie,w,J){let{privateNames:ye,loneAccessors:ut,undefinedPrivateNames:zt}=this.current(),Zr=ye.has(ie);if(w&3){let wr=Zr&&ut.get(ie);if(wr){let Hn=wr&4,Dn=w&4,Wo=wr&3,Ic=w&3;Zr=Wo===Ic||Hn!==Dn,Zr||ut.delete(ie)}else Zr||ut.set(ie,w)}Zr&&this.parser.raise(U.PrivateNameRedeclaration,J,{identifierName:ie}),ye.add(ie),zt.delete(ie)}usePrivateName(ie,w){let J;for(J of this.stack)if(J.privateNames.has(ie))return;J?J.undefinedPrivateNames.set(ie,w):this.parser.raise(U.InvalidPrivateFieldResolution,w,{identifierName:ie})}},Ya=class{constructor(ie=0){this.type=ie}canBeArrowParameterDeclaration(){return this.type===2||this.type===1}isCertainlyParameterDeclaration(){return this.type===3}},lm=class extends Ya{constructor(ie){super(ie),this.declarationErrors=new Map}recordDeclarationError(ie,w){let J=w.index;this.declarationErrors.set(J,[ie,w])}clearDeclarationError(ie){this.declarationErrors.delete(ie)}iterateErrors(ie){this.declarationErrors.forEach(ie)}},$s=class{constructor(ie){this.parser=void 0,this.stack=[new Ya],this.parser=ie}enter(ie){this.stack.push(ie)}exit(){this.stack.pop()}recordParameterInitializerError(ie,w){let J=w.loc.start,{stack:ye}=this,ut=ye.length-1,zt=ye[ut];for(;!zt.isCertainlyParameterDeclaration();){if(zt.canBeArrowParameterDeclaration())zt.recordDeclarationError(ie,J);else return;zt=ye[--ut]}this.parser.raise(ie,J)}recordArrowParameterBindingError(ie,w){let{stack:J}=this,ye=J[J.length-1],ut=w.loc.start;if(ye.isCertainlyParameterDeclaration())this.parser.raise(ie,ut);else if(ye.canBeArrowParameterDeclaration())ye.recordDeclarationError(ie,ut);else return}recordAsyncArrowParametersError(ie){let{stack:w}=this,J=w.length-1,ye=w[J];for(;ye.canBeArrowParameterDeclaration();)ye.type===2&&ye.recordDeclarationError(U.AwaitBindingIdentifier,ie),ye=w[--J]}validateAsPattern(){let{stack:ie}=this,w=ie[ie.length-1];w.canBeArrowParameterDeclaration()&&w.iterateErrors(([J,ye])=>{this.parser.raise(J,ye);let ut=ie.length-2,zt=ie[ut];for(;zt.canBeArrowParameterDeclaration();)zt.clearDeclarationError(ye.index),zt=ie[--ut]})}};function ps(){return new Ya(3)}function oc(){return new lm(1)}function NC(){return new lm(2)}function fI(){return new Ya}var wI=class{constructor(){this.stacks=[]}enter(ie){this.stacks.push(ie)}exit(){this.stacks.pop()}currentFlags(){return this.stacks[this.stacks.length-1]}get hasAwait(){return(this.currentFlags()&2)>0}get hasYield(){return(this.currentFlags()&1)>0}get hasReturn(){return(this.currentFlags()&4)>0}get hasIn(){return(this.currentFlags()&8)>0}};function vl(ie,w){return(ie?2:0)|(w?1:0)}var sl=class extends Kd{addExtra(ie,w,J,ye=!0){if(!ie)return;let{extra:ut}=ie;ut==null&&(ut={},ie.extra=ut),ye?ut[w]=J:Object.defineProperty(ut,w,{enumerable:ye,value:J})}isContextual(ie){return this.state.type===ie&&!this.state.containsEsc}isUnparsedContextual(ie,w){let J=ie+w.length;if(this.input.slice(ie,J)===w){let ye=this.input.charCodeAt(J);return!(og(ye)||(ye&64512)===55296)}return!1}isLookaheadContextual(ie){let w=this.nextTokenStart();return this.isUnparsedContextual(w,ie)}eatContextual(ie){return this.isContextual(ie)?(this.next(),!0):!1}expectContextual(ie,w){if(!this.eatContextual(ie)){if(w!=null)throw this.raise(w,this.state.startLoc);this.unexpected(null,ie)}}canInsertSemicolon(){return this.match(140)||this.match(8)||this.hasPrecedingLineBreak()}hasPrecedingLineBreak(){return ag(this.input,this.offsetToSourcePos(this.state.lastTokEndLoc.index),this.state.start)}hasFollowingLineBreak(){return ag(this.input,this.state.end,this.nextTokenStart())}isLineTerminator(){return this.eat(13)||this.canInsertSemicolon()}semicolon(ie=!0){(ie?this.isLineTerminator():this.eat(13))||this.raise(U.MissingSemicolon,this.state.lastTokEndLoc)}expect(ie,w){this.eat(ie)||this.unexpected(w,ie)}tryParse(ie,w=this.state.clone()){let J={node:null};try{let ye=ie((ut=null)=>{throw J.node=ut,J});if(this.state.errors.length>w.errors.length){let ut=this.state;return this.state=w,this.state.tokensLength=ut.tokensLength,{node:ye,error:ut.errors[w.errors.length],thrown:!1,aborted:!1,failState:ut}}return{node:ye,error:null,thrown:!1,aborted:!1,failState:null}}catch(ye){let ut=this.state;if(this.state=w,ye instanceof SyntaxError)return{node:null,error:ye,thrown:!0,aborted:!1,failState:ut};if(ye===J)return{node:J.node,error:null,thrown:!1,aborted:!0,failState:ut};throw ye}}checkExpressionErrors(ie,w){if(!ie)return!1;let{shorthandAssignLoc:J,doubleProtoLoc:ye,privateKeyLoc:ut,optionalParametersLoc:zt}=ie,Zr=!!J||!!ye||!!zt||!!ut;if(!w)return Zr;J!=null&&this.raise(U.InvalidCoverInitializedName,J),ye!=null&&this.raise(U.DuplicateProto,ye),ut!=null&&this.raise(U.UnexpectedPrivateField,ut),zt!=null&&this.unexpected(zt)}isLiteralPropertyName(){return Zi(this.state.type)}isPrivateName(ie){return ie.type==="PrivateName"}getPrivateNameSV(ie){return ie.id.name}hasPropertyAsPrivateName(ie){return(ie.type==="MemberExpression"||ie.type==="OptionalMemberExpression")&&this.isPrivateName(ie.property)}isObjectProperty(ie){return ie.type==="ObjectProperty"}isObjectMethod(ie){return ie.type==="ObjectMethod"}initializeScopes(ie=this.options.sourceType==="module"){let w=this.state.labels;this.state.labels=[];let J=this.exportedIdentifiers;this.exportedIdentifiers=new Set;let ye=this.inModule;this.inModule=ie;let ut=this.scope,zt=this.getScopeHandler();this.scope=new zt(this,ie);let Zr=this.prodParam;this.prodParam=new wI;let wr=this.classScope;this.classScope=new ys(this);let Hn=this.expressionScope;return this.expressionScope=new $s(this),()=>{this.state.labels=w,this.exportedIdentifiers=J,this.inModule=ye,this.scope=ut,this.prodParam=Zr,this.classScope=wr,this.expressionScope=Hn}}enterInitialScopes(){let ie=0;this.inModule&&(ie|=2),this.scope.enter(1),this.prodParam.enter(ie)}checkDestructuringPrivate(ie){let{privateKeyLoc:w}=ie;w!==null&&this.expectPlugin("destructuringPrivate",w)}},VA=class{constructor(){this.shorthandAssignLoc=null,this.doubleProtoLoc=null,this.privateKeyLoc=null,this.optionalParametersLoc=null}},uf=class{constructor(ie,w,J){this.type="",this.start=w,this.end=0,this.loc=new s(J),ie?.optionFlags&64&&(this.range=[w,0]),ie!=null&&ie.filename&&(this.loc.filename=ie.filename)}},ja=uf.prototype;ja.__clone=function(){let ie=new uf(void 0,this.start,this.loc.start),w=Object.keys(this);for(let J=0,ye=w.length;J`Cannot overwrite reserved type ${ie}.`,DeclareClassElement:"The `declare` modifier can only appear on class fields.",DeclareClassFieldInitializer:"Initializers are not allowed in fields with the `declare` modifier.",DuplicateDeclareModuleExports:"Duplicate `declare module.exports` statement.",EnumBooleanMemberNotInitialized:({memberName:ie,enumName:w})=>`Boolean enum members need to be initialized. Use either \`${ie} = true,\` or \`${ie} = false,\` in enum \`${w}\`.`,EnumDuplicateMemberName:({memberName:ie,enumName:w})=>`Enum member names need to be unique, but the name \`${ie}\` has already been used before in enum \`${w}\`.`,EnumInconsistentMemberValues:({enumName:ie})=>`Enum \`${ie}\` has inconsistent member initializers. Either use no initializers, or consistently use literals (either booleans, numbers, or strings) for all member initializers.`,EnumInvalidExplicitType:({invalidEnumType:ie,enumName:w})=>`Enum type \`${ie}\` is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${w}\`.`,EnumInvalidExplicitTypeUnknownSupplied:({enumName:ie})=>`Supplied enum type is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${ie}\`.`,EnumInvalidMemberInitializerPrimaryType:({enumName:ie,memberName:w,explicitType:J})=>`Enum \`${ie}\` has type \`${J}\`, so the initializer of \`${w}\` needs to be a ${J} literal.`,EnumInvalidMemberInitializerSymbolType:({enumName:ie,memberName:w})=>`Symbol enum members cannot be initialized. Use \`${w},\` in enum \`${ie}\`.`,EnumInvalidMemberInitializerUnknownType:({enumName:ie,memberName:w})=>`The enum member initializer for \`${w}\` needs to be a literal (either a boolean, number, or string) in enum \`${ie}\`.`,EnumInvalidMemberName:({enumName:ie,memberName:w,suggestion:J})=>`Enum member names cannot start with lowercase 'a' through 'z'. Instead of using \`${w}\`, consider using \`${J}\`, in enum \`${ie}\`.`,EnumNumberMemberNotInitialized:({enumName:ie,memberName:w})=>`Number enum members need to be initialized, e.g. \`${w} = 1\` in enum \`${ie}\`.`,EnumStringMemberInconsistentlyInitialized:({enumName:ie})=>`String enum members need to consistently either all use initializers, or use no initializers, in enum \`${ie}\`.`,GetterMayNotHaveThisParam:"A getter cannot have a `this` parameter.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` or `typeof` keyword.",ImportTypeShorthandOnlyInPureImport:"The `type` and `typeof` keywords on named imports can only be used on regular `import` statements. It cannot be used with `import type` or `import typeof` statements.",InexactInsideExact:"Explicit inexact syntax cannot appear inside an explicit exact object type.",InexactInsideNonObject:"Explicit inexact syntax cannot appear in class or interface definitions.",InexactVariance:"Explicit inexact syntax cannot have variance.",InvalidNonTypeImportInDeclareModule:"Imports within a `declare module` body must always be `import type` or `import typeof`.",MissingTypeParamDefault:"Type parameter declaration needs a default, since a preceding type parameter declaration has a default.",NestedDeclareModule:"`declare module` cannot be used inside another `declare module`.",NestedFlowComment:"Cannot have a flow comment inside another flow comment.",PatternIsOptional:Object.assign({message:"A binding pattern parameter cannot be optional in an implementation signature."},{reasonCode:"OptionalBindingPattern"}),SetterMayNotHaveThisParam:"A setter cannot have a `this` parameter.",SpreadVariance:"Spread properties cannot have variance.",ThisParamAnnotationRequired:"A type annotation is required for the `this` parameter.",ThisParamBannedInConstructor:"Constructors cannot have a `this` parameter; constructors don't bind `this` like other functions.",ThisParamMayNotBeOptional:"The `this` parameter cannot be optional.",ThisParamMustBeFirst:"The `this` parameter must be the first function parameter.",ThisParamNoDefault:"The `this` parameter may not have a default value.",TypeBeforeInitializer:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeCastInPattern:"The type cast expression is expected to be wrapped with parenthesis.",UnexpectedExplicitInexactInObject:"Explicit inexact syntax must appear at the end of an inexact object.",UnexpectedReservedType:({reservedType:ie})=>`Unexpected reserved type ${ie}.`,UnexpectedReservedUnderscore:"`_` is only allowed as a type argument to call or new.",UnexpectedSpaceBetweenModuloChecks:"Spaces between `%` and `checks` are not allowed here.",UnexpectedSpreadType:"Spread operator cannot appear in class or interface definitions.",UnexpectedSubtractionOperand:'Unexpected token, expected "number" or "bigint".',UnexpectedTokenAfterTypeParameter:"Expected an arrow function after this type parameter declaration.",UnexpectedTypeParameterBeforeAsyncArrowFunction:"Type parameters must come after the async keyword, e.g. instead of ` async () => {}`, use `async () => {}`.",UnsupportedDeclareExportKind:({unsupportedExportKind:ie,suggestion:w})=>`\`declare export ${ie}\` is not supported. Use \`${w}\` instead.`,UnsupportedStatementInDeclareModule:"Only declares and type imports are allowed inside declare module.",UnterminatedFlowComment:"Unterminated flow-comment."});function Qg(ie){return ie.type==="DeclareExportAllDeclaration"||ie.type==="DeclareExportDeclaration"&&(!ie.declaration||ie.declaration.type!=="TypeAlias"&&ie.declaration.type!=="InterfaceDeclaration")}function op(ie){return ie.importKind==="type"||ie.importKind==="typeof"}var um={const:"declare export var",let:"declare export var",type:"export type",interface:"export interface"};function lh(ie,w){let J=[],ye=[];for(let ut=0;utclass extends ie{constructor(...w){super(...w),this.flowPragma=void 0}getScopeHandler(){return cu}shouldParseTypes(){return this.getPluginOption("flow","all")||this.flowPragma==="flow"}finishToken(w,J){w!==134&&w!==13&&w!==28&&this.flowPragma===void 0&&(this.flowPragma=null),super.finishToken(w,J)}addComment(w){if(this.flowPragma===void 0){let J=Jl.exec(w.value);if(J)if(J[1]==="flow")this.flowPragma="flow";else if(J[1]==="noflow")this.flowPragma="noflow";else throw new Error("Unexpected flow pragma")}super.addComment(w)}flowParseTypeInitialiser(w){let J=this.state.inType;this.state.inType=!0,this.expect(w||14);let ye=this.flowParseType();return this.state.inType=J,ye}flowParsePredicate(){let w=this.startNode(),J=this.state.startLoc;return this.next(),this.expectContextual(110),this.state.lastTokStartLoc.index>J.index+1&&this.raise(yl.UnexpectedSpaceBetweenModuloChecks,J),this.eat(10)?(w.value=super.parseExpression(),this.expect(11),this.finishNode(w,"DeclaredPredicate")):this.finishNode(w,"InferredPredicate")}flowParseTypeAndPredicateInitialiser(){let w=this.state.inType;this.state.inType=!0,this.expect(14);let J=null,ye=null;return this.match(54)?(this.state.inType=w,ye=this.flowParsePredicate()):(J=this.flowParseType(),this.state.inType=w,this.match(54)&&(ye=this.flowParsePredicate())),[J,ye]}flowParseDeclareClass(w){return this.next(),this.flowParseInterfaceish(w,!0),this.finishNode(w,"DeclareClass")}flowParseDeclareFunction(w){this.next();let J=w.id=this.parseIdentifier(),ye=this.startNode(),ut=this.startNode();this.match(47)?ye.typeParameters=this.flowParseTypeParameterDeclaration():ye.typeParameters=null,this.expect(10);let zt=this.flowParseFunctionTypeParams();return ye.params=zt.params,ye.rest=zt.rest,ye.this=zt._this,this.expect(11),[ye.returnType,w.predicate]=this.flowParseTypeAndPredicateInitialiser(),ut.typeAnnotation=this.finishNode(ye,"FunctionTypeAnnotation"),J.typeAnnotation=this.finishNode(ut,"TypeAnnotation"),this.resetEndLocation(J),this.semicolon(),this.scope.declareName(w.id.name,2048,w.id.loc.start),this.finishNode(w,"DeclareFunction")}flowParseDeclare(w,J){if(this.match(80))return this.flowParseDeclareClass(w);if(this.match(68))return this.flowParseDeclareFunction(w);if(this.match(74))return this.flowParseDeclareVariable(w);if(this.eatContextual(127))return this.match(16)?this.flowParseDeclareModuleExports(w):(J&&this.raise(yl.NestedDeclareModule,this.state.lastTokStartLoc),this.flowParseDeclareModule(w));if(this.isContextual(130))return this.flowParseDeclareTypeAlias(w);if(this.isContextual(131))return this.flowParseDeclareOpaqueType(w);if(this.isContextual(129))return this.flowParseDeclareInterface(w);if(this.match(82))return this.flowParseDeclareExportDeclaration(w,J);this.unexpected()}flowParseDeclareVariable(w){return this.next(),w.id=this.flowParseTypeAnnotatableIdentifier(!0),this.scope.declareName(w.id.name,5,w.id.loc.start),this.semicolon(),this.finishNode(w,"DeclareVariable")}flowParseDeclareModule(w){this.scope.enter(0),this.match(134)?w.id=super.parseExprAtom():w.id=this.parseIdentifier();let J=w.body=this.startNode(),ye=J.body=[];for(this.expect(5);!this.match(8);){let Zr=this.startNode();this.match(83)?(this.next(),!this.isContextual(130)&&!this.match(87)&&this.raise(yl.InvalidNonTypeImportInDeclareModule,this.state.lastTokStartLoc),super.parseImport(Zr)):(this.expectContextual(125,yl.UnsupportedStatementInDeclareModule),Zr=this.flowParseDeclare(Zr,!0)),ye.push(Zr)}this.scope.exit(),this.expect(8),this.finishNode(J,"BlockStatement");let ut=null,zt=!1;return ye.forEach(Zr=>{Qg(Zr)?(ut==="CommonJS"&&this.raise(yl.AmbiguousDeclareModuleKind,Zr),ut="ES"):Zr.type==="DeclareModuleExports"&&(zt&&this.raise(yl.DuplicateDeclareModuleExports,Zr),ut==="ES"&&this.raise(yl.AmbiguousDeclareModuleKind,Zr),ut="CommonJS",zt=!0)}),w.kind=ut||"CommonJS",this.finishNode(w,"DeclareModule")}flowParseDeclareExportDeclaration(w,J){if(this.expect(82),this.eat(65))return this.match(68)||this.match(80)?w.declaration=this.flowParseDeclare(this.startNode()):(w.declaration=this.flowParseType(),this.semicolon()),w.default=!0,this.finishNode(w,"DeclareExportDeclaration");if(this.match(75)||this.isLet()||(this.isContextual(130)||this.isContextual(129))&&!J){let ye=this.state.value;throw this.raise(yl.UnsupportedDeclareExportKind,this.state.startLoc,{unsupportedExportKind:ye,suggestion:um[ye]})}if(this.match(74)||this.match(68)||this.match(80)||this.isContextual(131))return w.declaration=this.flowParseDeclare(this.startNode()),w.default=!1,this.finishNode(w,"DeclareExportDeclaration");if(this.match(55)||this.match(5)||this.isContextual(129)||this.isContextual(130)||this.isContextual(131))return w=this.parseExport(w,null),w.type==="ExportNamedDeclaration"&&(w.type="ExportDeclaration",w.default=!1,delete w.exportKind),w.type="Declare"+w.type,w;this.unexpected()}flowParseDeclareModuleExports(w){return this.next(),this.expectContextual(111),w.typeAnnotation=this.flowParseTypeAnnotation(),this.semicolon(),this.finishNode(w,"DeclareModuleExports")}flowParseDeclareTypeAlias(w){this.next();let J=this.flowParseTypeAlias(w);return J.type="DeclareTypeAlias",J}flowParseDeclareOpaqueType(w){this.next();let J=this.flowParseOpaqueType(w,!0);return J.type="DeclareOpaqueType",J}flowParseDeclareInterface(w){return this.next(),this.flowParseInterfaceish(w,!1),this.finishNode(w,"DeclareInterface")}flowParseInterfaceish(w,J){if(w.id=this.flowParseRestrictedIdentifier(!J,!0),this.scope.declareName(w.id.name,J?17:8201,w.id.loc.start),this.match(47)?w.typeParameters=this.flowParseTypeParameterDeclaration():w.typeParameters=null,w.extends=[],this.eat(81))do w.extends.push(this.flowParseInterfaceExtends());while(!J&&this.eat(12));if(J){if(w.implements=[],w.mixins=[],this.eatContextual(117))do w.mixins.push(this.flowParseInterfaceExtends());while(this.eat(12));if(this.eatContextual(113))do w.implements.push(this.flowParseInterfaceExtends());while(this.eat(12))}w.body=this.flowParseObjectType({allowStatic:J,allowExact:!1,allowSpread:!1,allowProto:J,allowInexact:!1})}flowParseInterfaceExtends(){let w=this.startNode();return w.id=this.flowParseQualifiedTypeIdentifier(),this.match(47)?w.typeParameters=this.flowParseTypeParameterInstantiation():w.typeParameters=null,this.finishNode(w,"InterfaceExtends")}flowParseInterface(w){return this.flowParseInterfaceish(w,!1),this.finishNode(w,"InterfaceDeclaration")}checkNotUnderscore(w){w==="_"&&this.raise(yl.UnexpectedReservedUnderscore,this.state.startLoc)}checkReservedType(w,J,ye){Nm.has(w)&&this.raise(ye?yl.AssignReservedType:yl.UnexpectedReservedType,J,{reservedType:w})}flowParseRestrictedIdentifier(w,J){return this.checkReservedType(this.state.value,this.state.startLoc,J),this.parseIdentifier(w)}flowParseTypeAlias(w){return w.id=this.flowParseRestrictedIdentifier(!1,!0),this.scope.declareName(w.id.name,8201,w.id.loc.start),this.match(47)?w.typeParameters=this.flowParseTypeParameterDeclaration():w.typeParameters=null,w.right=this.flowParseTypeInitialiser(29),this.semicolon(),this.finishNode(w,"TypeAlias")}flowParseOpaqueType(w,J){return this.expectContextual(130),w.id=this.flowParseRestrictedIdentifier(!0,!0),this.scope.declareName(w.id.name,8201,w.id.loc.start),this.match(47)?w.typeParameters=this.flowParseTypeParameterDeclaration():w.typeParameters=null,w.supertype=null,this.match(14)&&(w.supertype=this.flowParseTypeInitialiser(14)),w.impltype=null,J||(w.impltype=this.flowParseTypeInitialiser(29)),this.semicolon(),this.finishNode(w,"OpaqueType")}flowParseTypeParameter(w=!1){let J=this.state.startLoc,ye=this.startNode(),ut=this.flowParseVariance(),zt=this.flowParseTypeAnnotatableIdentifier();return ye.name=zt.name,ye.variance=ut,ye.bound=zt.typeAnnotation,this.match(29)?(this.eat(29),ye.default=this.flowParseType()):w&&this.raise(yl.MissingTypeParamDefault,J),this.finishNode(ye,"TypeParameter")}flowParseTypeParameterDeclaration(){let w=this.state.inType,J=this.startNode();J.params=[],this.state.inType=!0,this.match(47)||this.match(143)?this.next():this.unexpected();let ye=!1;do{let ut=this.flowParseTypeParameter(ye);J.params.push(ut),ut.default&&(ye=!0),this.match(48)||this.expect(12)}while(!this.match(48));return this.expect(48),this.state.inType=w,this.finishNode(J,"TypeParameterDeclaration")}flowInTopLevelContext(w){if(this.curContext()!==Te.brace){let J=this.state.context;this.state.context=[J[0]];try{return w()}finally{this.state.context=J}}else return w()}flowParseTypeParameterInstantiationInExpression(){if(this.reScan_lt()===47)return this.flowParseTypeParameterInstantiation()}flowParseTypeParameterInstantiation(){let w=this.startNode(),J=this.state.inType;return this.state.inType=!0,w.params=[],this.flowInTopLevelContext(()=>{this.expect(47);let ye=this.state.noAnonFunctionType;for(this.state.noAnonFunctionType=!1;!this.match(48);)w.params.push(this.flowParseType()),this.match(48)||this.expect(12);this.state.noAnonFunctionType=ye}),this.state.inType=J,!this.state.inType&&this.curContext()===Te.brace&&this.reScan_lt_gt(),this.expect(48),this.finishNode(w,"TypeParameterInstantiation")}flowParseTypeParameterInstantiationCallOrNew(){if(this.reScan_lt()!==47)return;let w=this.startNode(),J=this.state.inType;for(w.params=[],this.state.inType=!0,this.expect(47);!this.match(48);)w.params.push(this.flowParseTypeOrImplicitInstantiation()),this.match(48)||this.expect(12);return this.expect(48),this.state.inType=J,this.finishNode(w,"TypeParameterInstantiation")}flowParseInterfaceType(){let w=this.startNode();if(this.expectContextual(129),w.extends=[],this.eat(81))do w.extends.push(this.flowParseInterfaceExtends());while(this.eat(12));return w.body=this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!1,allowProto:!1,allowInexact:!1}),this.finishNode(w,"InterfaceTypeAnnotation")}flowParseObjectPropertyKey(){return this.match(135)||this.match(134)?super.parseExprAtom():this.parseIdentifier(!0)}flowParseObjectTypeIndexer(w,J,ye){return w.static=J,this.lookahead().type===14?(w.id=this.flowParseObjectPropertyKey(),w.key=this.flowParseTypeInitialiser()):(w.id=null,w.key=this.flowParseType()),this.expect(3),w.value=this.flowParseTypeInitialiser(),w.variance=ye,this.finishNode(w,"ObjectTypeIndexer")}flowParseObjectTypeInternalSlot(w,J){return w.static=J,w.id=this.flowParseObjectPropertyKey(),this.expect(3),this.expect(3),this.match(47)||this.match(10)?(w.method=!0,w.optional=!1,w.value=this.flowParseObjectTypeMethodish(this.startNodeAt(w.loc.start))):(w.method=!1,this.eat(17)&&(w.optional=!0),w.value=this.flowParseTypeInitialiser()),this.finishNode(w,"ObjectTypeInternalSlot")}flowParseObjectTypeMethodish(w){for(w.params=[],w.rest=null,w.typeParameters=null,w.this=null,this.match(47)&&(w.typeParameters=this.flowParseTypeParameterDeclaration()),this.expect(10),this.match(78)&&(w.this=this.flowParseFunctionTypeParam(!0),w.this.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)w.params.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(w.rest=this.flowParseFunctionTypeParam(!1)),this.expect(11),w.returnType=this.flowParseTypeInitialiser(),this.finishNode(w,"FunctionTypeAnnotation")}flowParseObjectTypeCallProperty(w,J){let ye=this.startNode();return w.static=J,w.value=this.flowParseObjectTypeMethodish(ye),this.finishNode(w,"ObjectTypeCallProperty")}flowParseObjectType({allowStatic:w,allowExact:J,allowSpread:ye,allowProto:ut,allowInexact:zt}){let Zr=this.state.inType;this.state.inType=!0;let wr=this.startNode();wr.callProperties=[],wr.properties=[],wr.indexers=[],wr.internalSlots=[];let Hn,Dn,Wo=!1;for(J&&this.match(6)?(this.expect(6),Hn=9,Dn=!0):(this.expect(5),Hn=8,Dn=!1),wr.exact=Dn;!this.match(Hn);){let Jc=!1,Mo=null,bu=null,ap=this.startNode();if(ut&&this.isContextual(118)){let rI=this.lookahead();rI.type!==14&&rI.type!==17&&(this.next(),Mo=this.state.startLoc,w=!1)}if(w&&this.isContextual(106)){let rI=this.lookahead();rI.type!==14&&rI.type!==17&&(this.next(),Jc=!0)}let uA=this.flowParseVariance();if(this.eat(0))Mo!=null&&this.unexpected(Mo),this.eat(0)?(uA&&this.unexpected(uA.loc.start),wr.internalSlots.push(this.flowParseObjectTypeInternalSlot(ap,Jc))):wr.indexers.push(this.flowParseObjectTypeIndexer(ap,Jc,uA));else if(this.match(10)||this.match(47))Mo!=null&&this.unexpected(Mo),uA&&this.unexpected(uA.loc.start),wr.callProperties.push(this.flowParseObjectTypeCallProperty(ap,Jc));else{let rI="init";if(this.isContextual(99)||this.isContextual(104)){let x0=this.lookahead();Zi(x0.type)&&(rI=this.state.value,this.next())}let jd=this.flowParseObjectTypeProperty(ap,Jc,Mo,uA,rI,ye,zt??!Dn);jd===null?(Wo=!0,bu=this.state.lastTokStartLoc):wr.properties.push(jd)}this.flowObjectTypeSemicolon(),bu&&!this.match(8)&&!this.match(9)&&this.raise(yl.UnexpectedExplicitInexactInObject,bu)}this.expect(Hn),ye&&(wr.inexact=Wo);let Ic=this.finishNode(wr,"ObjectTypeAnnotation");return this.state.inType=Zr,Ic}flowParseObjectTypeProperty(w,J,ye,ut,zt,Zr,wr){if(this.eat(21))return this.match(12)||this.match(13)||this.match(8)||this.match(9)?(Zr?wr||this.raise(yl.InexactInsideExact,this.state.lastTokStartLoc):this.raise(yl.InexactInsideNonObject,this.state.lastTokStartLoc),ut&&this.raise(yl.InexactVariance,ut),null):(Zr||this.raise(yl.UnexpectedSpreadType,this.state.lastTokStartLoc),ye!=null&&this.unexpected(ye),ut&&this.raise(yl.SpreadVariance,ut),w.argument=this.flowParseType(),this.finishNode(w,"ObjectTypeSpreadProperty"));{w.key=this.flowParseObjectPropertyKey(),w.static=J,w.proto=ye!=null,w.kind=zt;let Hn=!1;return this.match(47)||this.match(10)?(w.method=!0,ye!=null&&this.unexpected(ye),ut&&this.unexpected(ut.loc.start),w.value=this.flowParseObjectTypeMethodish(this.startNodeAt(w.loc.start)),(zt==="get"||zt==="set")&&this.flowCheckGetterSetterParams(w),!Zr&&w.key.name==="constructor"&&w.value.this&&this.raise(yl.ThisParamBannedInConstructor,w.value.this)):(zt!=="init"&&this.unexpected(),w.method=!1,this.eat(17)&&(Hn=!0),w.value=this.flowParseTypeInitialiser(),w.variance=ut),w.optional=Hn,this.finishNode(w,"ObjectTypeProperty")}}flowCheckGetterSetterParams(w){let J=w.kind==="get"?0:1,ye=w.value.params.length+(w.value.rest?1:0);w.value.this&&this.raise(w.kind==="get"?yl.GetterMayNotHaveThisParam:yl.SetterMayNotHaveThisParam,w.value.this),ye!==J&&this.raise(w.kind==="get"?U.BadGetterArity:U.BadSetterArity,w),w.kind==="set"&&w.value.rest&&this.raise(U.BadSetterRestParameter,w)}flowObjectTypeSemicolon(){!this.eat(13)&&!this.eat(12)&&!this.match(8)&&!this.match(9)&&this.unexpected()}flowParseQualifiedTypeIdentifier(w,J){var ye;(ye=w)!=null||(w=this.state.startLoc);let ut=J||this.flowParseRestrictedIdentifier(!0);for(;this.eat(16);){let zt=this.startNodeAt(w);zt.qualification=ut,zt.id=this.flowParseRestrictedIdentifier(!0),ut=this.finishNode(zt,"QualifiedTypeIdentifier")}return ut}flowParseGenericType(w,J){let ye=this.startNodeAt(w);return ye.typeParameters=null,ye.id=this.flowParseQualifiedTypeIdentifier(w,J),this.match(47)&&(ye.typeParameters=this.flowParseTypeParameterInstantiation()),this.finishNode(ye,"GenericTypeAnnotation")}flowParseTypeofType(){let w=this.startNode();return this.expect(87),w.argument=this.flowParsePrimaryType(),this.finishNode(w,"TypeofTypeAnnotation")}flowParseTupleType(){let w=this.startNode();for(w.types=[],this.expect(0);this.state.possuper.parseFunctionBody(w,!0,ye));return}super.parseFunctionBody(w,!1,ye)}parseFunctionBodyAndFinish(w,J,ye=!1){if(this.match(14)){let ut=this.startNode();[ut.typeAnnotation,w.predicate]=this.flowParseTypeAndPredicateInitialiser(),w.returnType=ut.typeAnnotation?this.finishNode(ut,"TypeAnnotation"):null}return super.parseFunctionBodyAndFinish(w,J,ye)}parseStatementLike(w){if(this.state.strict&&this.isContextual(129)){let ye=this.lookahead();if(we(ye.type)){let ut=this.startNode();return this.next(),this.flowParseInterface(ut)}}else if(this.isContextual(126)){let ye=this.startNode();return this.next(),this.flowParseEnumDeclaration(ye)}let J=super.parseStatementLike(w);return this.flowPragma===void 0&&!this.isValidDirective(J)&&(this.flowPragma=null),J}parseExpressionStatement(w,J,ye){if(J.type==="Identifier"){if(J.name==="declare"){if(this.match(80)||gn(this.state.type)||this.match(68)||this.match(74)||this.match(82))return this.flowParseDeclare(w)}else if(gn(this.state.type)){if(J.name==="interface")return this.flowParseInterface(w);if(J.name==="type")return this.flowParseTypeAlias(w);if(J.name==="opaque")return this.flowParseOpaqueType(w,!1)}}return super.parseExpressionStatement(w,J,ye)}shouldParseExportDeclaration(){let{type:w}=this.state;return w===126||lr(w)?!this.state.containsEsc:super.shouldParseExportDeclaration()}isExportDefaultSpecifier(){let{type:w}=this.state;return w===126||lr(w)?this.state.containsEsc:super.isExportDefaultSpecifier()}parseExportDefaultExpression(){if(this.isContextual(126)){let w=this.startNode();return this.next(),this.flowParseEnumDeclaration(w)}return super.parseExportDefaultExpression()}parseConditional(w,J,ye){if(!this.match(17))return w;if(this.state.maybeInArrowParameters){let Ic=this.lookaheadCharCode();if(Ic===44||Ic===61||Ic===58||Ic===41)return this.setOptionalParametersError(ye),w}this.expect(17);let ut=this.state.clone(),zt=this.state.noArrowAt,Zr=this.startNodeAt(J),{consequent:wr,failed:Hn}=this.tryParseConditionalConsequent(),[Dn,Wo]=this.getArrowLikeExpressions(wr);if(Hn||Wo.length>0){let Ic=[...zt];if(Wo.length>0){this.state=ut,this.state.noArrowAt=Ic;for(let Jc=0;Jc1&&this.raise(yl.AmbiguousConditionalArrow,ut.startLoc),Hn&&Dn.length===1&&(this.state=ut,Ic.push(Dn[0].start),this.state.noArrowAt=Ic,{consequent:wr,failed:Hn}=this.tryParseConditionalConsequent())}return this.getArrowLikeExpressions(wr,!0),this.state.noArrowAt=zt,this.expect(14),Zr.test=w,Zr.consequent=wr,Zr.alternate=this.forwardNoArrowParamsConversionAt(Zr,()=>this.parseMaybeAssign(void 0,void 0)),this.finishNode(Zr,"ConditionalExpression")}tryParseConditionalConsequent(){this.state.noArrowParamsConversionAt.push(this.state.start);let w=this.parseMaybeAssignAllowIn(),J=!this.match(14);return this.state.noArrowParamsConversionAt.pop(),{consequent:w,failed:J}}getArrowLikeExpressions(w,J){let ye=[w],ut=[];for(;ye.length!==0;){let zt=ye.pop();zt.type==="ArrowFunctionExpression"&&zt.body.type!=="BlockStatement"?(zt.typeParameters||!zt.returnType?this.finishArrowValidation(zt):ut.push(zt),ye.push(zt.body)):zt.type==="ConditionalExpression"&&(ye.push(zt.consequent),ye.push(zt.alternate))}return J?(ut.forEach(zt=>this.finishArrowValidation(zt)),[ut,[]]):lh(ut,zt=>zt.params.every(Zr=>this.isAssignable(Zr,!0)))}finishArrowValidation(w){var J;this.toAssignableList(w.params,(J=w.extra)==null?void 0:J.trailingCommaLoc,!1),this.scope.enter(6),super.checkParams(w,!1,!0),this.scope.exit()}forwardNoArrowParamsConversionAt(w,J){let ye;return this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(w.start))?(this.state.noArrowParamsConversionAt.push(this.state.start),ye=J(),this.state.noArrowParamsConversionAt.pop()):ye=J(),ye}parseParenItem(w,J){let ye=super.parseParenItem(w,J);if(this.eat(17)&&(ye.optional=!0,this.resetEndLocation(w)),this.match(14)){let ut=this.startNodeAt(J);return ut.expression=ye,ut.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(ut,"TypeCastExpression")}return ye}assertModuleNodeAllowed(w){w.type==="ImportDeclaration"&&(w.importKind==="type"||w.importKind==="typeof")||w.type==="ExportNamedDeclaration"&&w.exportKind==="type"||w.type==="ExportAllDeclaration"&&w.exportKind==="type"||super.assertModuleNodeAllowed(w)}parseExportDeclaration(w){if(this.isContextual(130)){w.exportKind="type";let J=this.startNode();return this.next(),this.match(5)?(w.specifiers=this.parseExportSpecifiers(!0),super.parseExportFrom(w),null):this.flowParseTypeAlias(J)}else if(this.isContextual(131)){w.exportKind="type";let J=this.startNode();return this.next(),this.flowParseOpaqueType(J,!1)}else if(this.isContextual(129)){w.exportKind="type";let J=this.startNode();return this.next(),this.flowParseInterface(J)}else if(this.isContextual(126)){w.exportKind="value";let J=this.startNode();return this.next(),this.flowParseEnumDeclaration(J)}else return super.parseExportDeclaration(w)}eatExportStar(w){return super.eatExportStar(w)?!0:this.isContextual(130)&&this.lookahead().type===55?(w.exportKind="type",this.next(),this.next(),!0):!1}maybeParseExportNamespaceSpecifier(w){let{startLoc:J}=this.state,ye=super.maybeParseExportNamespaceSpecifier(w);return ye&&w.exportKind==="type"&&this.unexpected(J),ye}parseClassId(w,J,ye){super.parseClassId(w,J,ye),this.match(47)&&(w.typeParameters=this.flowParseTypeParameterDeclaration())}parseClassMember(w,J,ye){let{startLoc:ut}=this.state;if(this.isContextual(125)){if(super.parseClassMemberFromModifier(w,J))return;J.declare=!0}super.parseClassMember(w,J,ye),J.declare&&(J.type!=="ClassProperty"&&J.type!=="ClassPrivateProperty"&&J.type!=="PropertyDefinition"?this.raise(yl.DeclareClassElement,ut):J.value&&this.raise(yl.DeclareClassFieldInitializer,J.value))}isIterator(w){return w==="iterator"||w==="asyncIterator"}readIterator(){let w=super.readWord1(),J="@@"+w;(!this.isIterator(w)||!this.state.inType)&&this.raise(U.InvalidIdentifier,this.state.curPosition(),{identifierName:J}),this.finishToken(132,J)}getTokenFromCode(w){let J=this.input.charCodeAt(this.state.pos+1);w===123&&J===124?this.finishOp(6,2):this.state.inType&&(w===62||w===60)?this.finishOp(w===62?48:47,1):this.state.inType&&w===63?J===46?this.finishOp(18,2):this.finishOp(17,1):kl(w,J,this.input.charCodeAt(this.state.pos+2))?(this.state.pos+=2,this.readIterator()):super.getTokenFromCode(w)}isAssignable(w,J){return w.type==="TypeCastExpression"?this.isAssignable(w.expression,J):super.isAssignable(w,J)}toAssignable(w,J=!1){!J&&w.type==="AssignmentExpression"&&w.left.type==="TypeCastExpression"&&(w.left=this.typeCastToParameter(w.left)),super.toAssignable(w,J)}toAssignableList(w,J,ye){for(let ut=0;ut1||!J)&&this.raise(yl.TypeCastInPattern,zt.typeAnnotation)}return w}parseArrayLike(w,J,ye,ut){let zt=super.parseArrayLike(w,J,ye,ut);return J&&!this.state.maybeInArrowParameters&&this.toReferencedList(zt.elements),zt}isValidLVal(w,J,ye){return w==="TypeCastExpression"||super.isValidLVal(w,J,ye)}parseClassProperty(w){return this.match(14)&&(w.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassProperty(w)}parseClassPrivateProperty(w){return this.match(14)&&(w.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassPrivateProperty(w)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(14)||super.isClassProperty()}isNonstaticConstructor(w){return!this.match(14)&&super.isNonstaticConstructor(w)}pushClassMethod(w,J,ye,ut,zt,Zr){if(J.variance&&this.unexpected(J.variance.loc.start),delete J.variance,this.match(47)&&(J.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassMethod(w,J,ye,ut,zt,Zr),J.params&&zt){let wr=J.params;wr.length>0&&this.isThisParam(wr[0])&&this.raise(yl.ThisParamBannedInConstructor,J)}else if(J.type==="MethodDefinition"&&zt&&J.value.params){let wr=J.value.params;wr.length>0&&this.isThisParam(wr[0])&&this.raise(yl.ThisParamBannedInConstructor,J)}}pushClassPrivateMethod(w,J,ye,ut){J.variance&&this.unexpected(J.variance.loc.start),delete J.variance,this.match(47)&&(J.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassPrivateMethod(w,J,ye,ut)}parseClassSuper(w){if(super.parseClassSuper(w),w.superClass&&(this.match(47)||this.match(51))&&(w.superTypeParameters=this.flowParseTypeParameterInstantiationInExpression()),this.isContextual(113)){this.next();let J=w.implements=[];do{let ye=this.startNode();ye.id=this.flowParseRestrictedIdentifier(!0),this.match(47)?ye.typeParameters=this.flowParseTypeParameterInstantiation():ye.typeParameters=null,J.push(this.finishNode(ye,"ClassImplements"))}while(this.eat(12))}}checkGetterSetterParams(w){super.checkGetterSetterParams(w);let J=this.getObjectOrClassMethodParams(w);if(J.length>0){let ye=J[0];this.isThisParam(ye)&&w.kind==="get"?this.raise(yl.GetterMayNotHaveThisParam,ye):this.isThisParam(ye)&&this.raise(yl.SetterMayNotHaveThisParam,ye)}}parsePropertyNamePrefixOperator(w){w.variance=this.flowParseVariance()}parseObjPropValue(w,J,ye,ut,zt,Zr,wr){w.variance&&this.unexpected(w.variance.loc.start),delete w.variance;let Hn;this.match(47)&&!Zr&&(Hn=this.flowParseTypeParameterDeclaration(),this.match(10)||this.unexpected());let Dn=super.parseObjPropValue(w,J,ye,ut,zt,Zr,wr);return Hn&&((Dn.value||Dn).typeParameters=Hn),Dn}parseFunctionParamType(w){return this.eat(17)&&(w.type!=="Identifier"&&this.raise(yl.PatternIsOptional,w),this.isThisParam(w)&&this.raise(yl.ThisParamMayNotBeOptional,w),w.optional=!0),this.match(14)?w.typeAnnotation=this.flowParseTypeAnnotation():this.isThisParam(w)&&this.raise(yl.ThisParamAnnotationRequired,w),this.match(29)&&this.isThisParam(w)&&this.raise(yl.ThisParamNoDefault,w),this.resetEndLocation(w),w}parseMaybeDefault(w,J){let ye=super.parseMaybeDefault(w,J);return ye.type==="AssignmentPattern"&&ye.typeAnnotation&&ye.right.startsuper.parseMaybeAssign(w,J),ut),!zt.error)return zt.node;let{context:Hn}=this.state,Dn=Hn[Hn.length-1];(Dn===Te.j_oTag||Dn===Te.j_expr)&&Hn.pop()}if((ye=zt)!=null&&ye.error||this.match(47)){var Zr,wr;ut=ut||this.state.clone();let Hn,Dn=this.tryParse(Ic=>{var Jc;Hn=this.flowParseTypeParameterDeclaration();let Mo=this.forwardNoArrowParamsConversionAt(Hn,()=>{let ap=super.parseMaybeAssign(w,J);return this.resetStartLocationFromNode(ap,Hn),ap});(Jc=Mo.extra)!=null&&Jc.parenthesized&&Ic();let bu=this.maybeUnwrapTypeCastExpression(Mo);return bu.type!=="ArrowFunctionExpression"&&Ic(),bu.typeParameters=Hn,this.resetStartLocationFromNode(bu,Hn),Mo},ut),Wo=null;if(Dn.node&&this.maybeUnwrapTypeCastExpression(Dn.node).type==="ArrowFunctionExpression"){if(!Dn.error&&!Dn.aborted)return Dn.node.async&&this.raise(yl.UnexpectedTypeParameterBeforeAsyncArrowFunction,Hn),Dn.node;Wo=Dn.node}if((Zr=zt)!=null&&Zr.node)return this.state=zt.failState,zt.node;if(Wo)return this.state=Dn.failState,Wo;throw(wr=zt)!=null&&wr.thrown?zt.error:Dn.thrown?Dn.error:this.raise(yl.UnexpectedTokenAfterTypeParameter,Hn)}return super.parseMaybeAssign(w,J)}parseArrow(w){if(this.match(14)){let J=this.tryParse(()=>{let ye=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0;let ut=this.startNode();return[ut.typeAnnotation,w.predicate]=this.flowParseTypeAndPredicateInitialiser(),this.state.noAnonFunctionType=ye,this.canInsertSemicolon()&&this.unexpected(),this.match(19)||this.unexpected(),ut});if(J.thrown)return null;J.error&&(this.state=J.failState),w.returnType=J.node.typeAnnotation?this.finishNode(J.node,"TypeAnnotation"):null}return super.parseArrow(w)}shouldParseArrow(w){return this.match(14)||super.shouldParseArrow(w)}setArrowFunctionParameters(w,J){this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(w.start))?w.params=J:super.setArrowFunctionParameters(w,J)}checkParams(w,J,ye,ut=!0){if(!(ye&&this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(w.start)))){for(let zt=0;zt0&&this.raise(yl.ThisParamMustBeFirst,w.params[zt]);super.checkParams(w,J,ye,ut)}}parseParenAndDistinguishExpression(w){return super.parseParenAndDistinguishExpression(w&&!this.state.noArrowAt.includes(this.sourceToOffsetPos(this.state.start)))}parseSubscripts(w,J,ye){if(w.type==="Identifier"&&w.name==="async"&&this.state.noArrowAt.includes(J.index)){this.next();let ut=this.startNodeAt(J);ut.callee=w,ut.arguments=super.parseCallExpressionArguments(11),w=this.finishNode(ut,"CallExpression")}else if(w.type==="Identifier"&&w.name==="async"&&this.match(47)){let ut=this.state.clone(),zt=this.tryParse(wr=>this.parseAsyncArrowWithTypeParameters(J)||wr(),ut);if(!zt.error&&!zt.aborted)return zt.node;let Zr=this.tryParse(()=>super.parseSubscripts(w,J,ye),ut);if(Zr.node&&!Zr.error)return Zr.node;if(zt.node)return this.state=zt.failState,zt.node;if(Zr.node)return this.state=Zr.failState,Zr.node;throw zt.error||Zr.error}return super.parseSubscripts(w,J,ye)}parseSubscript(w,J,ye,ut){if(this.match(18)&&this.isLookaheadToken_lt()){if(ut.optionalChainMember=!0,ye)return ut.stop=!0,w;this.next();let zt=this.startNodeAt(J);return zt.callee=w,zt.typeArguments=this.flowParseTypeParameterInstantiationInExpression(),this.expect(10),zt.arguments=this.parseCallExpressionArguments(11),zt.optional=!0,this.finishCallExpression(zt,!0)}else if(!ye&&this.shouldParseTypes()&&(this.match(47)||this.match(51))){let zt=this.startNodeAt(J);zt.callee=w;let Zr=this.tryParse(()=>(zt.typeArguments=this.flowParseTypeParameterInstantiationCallOrNew(),this.expect(10),zt.arguments=super.parseCallExpressionArguments(11),ut.optionalChainMember&&(zt.optional=!1),this.finishCallExpression(zt,ut.optionalChainMember)));if(Zr.node)return Zr.error&&(this.state=Zr.failState),Zr.node}return super.parseSubscript(w,J,ye,ut)}parseNewCallee(w){super.parseNewCallee(w);let J=null;this.shouldParseTypes()&&this.match(47)&&(J=this.tryParse(()=>this.flowParseTypeParameterInstantiationCallOrNew()).node),w.typeArguments=J}parseAsyncArrowWithTypeParameters(w){let J=this.startNodeAt(w);if(this.parseFunctionParams(J,!1),!!this.parseArrow(J))return super.parseArrowExpression(J,void 0,!0)}readToken_mult_modulo(w){let J=this.input.charCodeAt(this.state.pos+1);if(w===42&&J===47&&this.state.hasFlowComment){this.state.hasFlowComment=!1,this.state.pos+=2,this.nextToken();return}super.readToken_mult_modulo(w)}readToken_pipe_amp(w){let J=this.input.charCodeAt(this.state.pos+1);if(w===124&&J===125){this.finishOp(9,2);return}super.readToken_pipe_amp(w)}parseTopLevel(w,J){let ye=super.parseTopLevel(w,J);return this.state.hasFlowComment&&this.raise(yl.UnterminatedFlowComment,this.state.curPosition()),ye}skipBlockComment(){if(this.hasPlugin("flowComments")&&this.skipFlowComment()){if(this.state.hasFlowComment)throw this.raise(yl.NestedFlowComment,this.state.startLoc);this.hasFlowCommentCompletion();let w=this.skipFlowComment();w&&(this.state.pos+=w,this.state.hasFlowComment=!0);return}return super.skipBlockComment(this.state.hasFlowComment?"*-/":"*/")}skipFlowComment(){let{pos:w}=this.state,J=2;for(;[32,9].includes(this.input.charCodeAt(w+J));)J++;let ye=this.input.charCodeAt(J+w),ut=this.input.charCodeAt(J+w+1);return ye===58&&ut===58?J+2:this.input.slice(J+w,J+w+12)==="flow-include"?J+12:ye===58&&ut!==58?J:!1}hasFlowCommentCompletion(){if(this.input.indexOf("*/",this.state.pos)===-1)throw this.raise(U.UnterminatedComment,this.state.curPosition())}flowEnumErrorBooleanMemberNotInitialized(w,{enumName:J,memberName:ye}){this.raise(yl.EnumBooleanMemberNotInitialized,w,{memberName:ye,enumName:J})}flowEnumErrorInvalidMemberInitializer(w,J){return this.raise(J.explicitType?J.explicitType==="symbol"?yl.EnumInvalidMemberInitializerSymbolType:yl.EnumInvalidMemberInitializerPrimaryType:yl.EnumInvalidMemberInitializerUnknownType,w,J)}flowEnumErrorNumberMemberNotInitialized(w,J){this.raise(yl.EnumNumberMemberNotInitialized,w,J)}flowEnumErrorStringMemberInconsistentlyInitialized(w,J){this.raise(yl.EnumStringMemberInconsistentlyInitialized,w,J)}flowEnumMemberInit(){let w=this.state.startLoc,J=()=>this.match(12)||this.match(8);switch(this.state.type){case 135:{let ye=this.parseNumericLiteral(this.state.value);return J()?{type:"number",loc:ye.loc.start,value:ye}:{type:"invalid",loc:w}}case 134:{let ye=this.parseStringLiteral(this.state.value);return J()?{type:"string",loc:ye.loc.start,value:ye}:{type:"invalid",loc:w}}case 85:case 86:{let ye=this.parseBooleanLiteral(this.match(85));return J()?{type:"boolean",loc:ye.loc.start,value:ye}:{type:"invalid",loc:w}}default:return{type:"invalid",loc:w}}}flowEnumMemberRaw(){let w=this.state.startLoc,J=this.parseIdentifier(!0),ye=this.eat(29)?this.flowEnumMemberInit():{type:"none",loc:w};return{id:J,init:ye}}flowEnumCheckExplicitTypeMismatch(w,J,ye){let{explicitType:ut}=J;ut!==null&&ut!==ye&&this.flowEnumErrorInvalidMemberInitializer(w,J)}flowEnumMembers({enumName:w,explicitType:J}){let ye=new Set,ut={booleanMembers:[],numberMembers:[],stringMembers:[],defaultedMembers:[]},zt=!1;for(;!this.match(8);){if(this.eat(21)){zt=!0;break}let Zr=this.startNode(),{id:wr,init:Hn}=this.flowEnumMemberRaw(),Dn=wr.name;if(Dn==="")continue;/^[a-z]/.test(Dn)&&this.raise(yl.EnumInvalidMemberName,wr,{memberName:Dn,suggestion:Dn[0].toUpperCase()+Dn.slice(1),enumName:w}),ye.has(Dn)&&this.raise(yl.EnumDuplicateMemberName,wr,{memberName:Dn,enumName:w}),ye.add(Dn);let Wo={enumName:w,explicitType:J,memberName:Dn};switch(Zr.id=wr,Hn.type){case"boolean":{this.flowEnumCheckExplicitTypeMismatch(Hn.loc,Wo,"boolean"),Zr.init=Hn.value,ut.booleanMembers.push(this.finishNode(Zr,"EnumBooleanMember"));break}case"number":{this.flowEnumCheckExplicitTypeMismatch(Hn.loc,Wo,"number"),Zr.init=Hn.value,ut.numberMembers.push(this.finishNode(Zr,"EnumNumberMember"));break}case"string":{this.flowEnumCheckExplicitTypeMismatch(Hn.loc,Wo,"string"),Zr.init=Hn.value,ut.stringMembers.push(this.finishNode(Zr,"EnumStringMember"));break}case"invalid":throw this.flowEnumErrorInvalidMemberInitializer(Hn.loc,Wo);case"none":switch(J){case"boolean":this.flowEnumErrorBooleanMemberNotInitialized(Hn.loc,Wo);break;case"number":this.flowEnumErrorNumberMemberNotInitialized(Hn.loc,Wo);break;default:ut.defaultedMembers.push(this.finishNode(Zr,"EnumDefaultedMember"))}}this.match(8)||this.expect(12)}return{members:ut,hasUnknownMembers:zt}}flowEnumStringMembers(w,J,{enumName:ye}){if(w.length===0)return J;if(J.length===0)return w;if(J.length>w.length){for(let ut of w)this.flowEnumErrorStringMemberInconsistentlyInitialized(ut,{enumName:ye});return J}else{for(let ut of J)this.flowEnumErrorStringMemberInconsistentlyInitialized(ut,{enumName:ye});return w}}flowEnumParseExplicitType({enumName:w}){if(!this.eatContextual(102))return null;if(!gn(this.state.type))throw this.raise(yl.EnumInvalidExplicitTypeUnknownSupplied,this.state.startLoc,{enumName:w});let{value:J}=this.state;return this.next(),J!=="boolean"&&J!=="number"&&J!=="string"&&J!=="symbol"&&this.raise(yl.EnumInvalidExplicitType,this.state.startLoc,{enumName:w,invalidEnumType:J}),J}flowEnumBody(w,J){let ye=J.name,ut=J.loc.start,zt=this.flowEnumParseExplicitType({enumName:ye});this.expect(5);let{members:Zr,hasUnknownMembers:wr}=this.flowEnumMembers({enumName:ye,explicitType:zt});switch(w.hasUnknownMembers=wr,zt){case"boolean":return w.explicitType=!0,w.members=Zr.booleanMembers,this.expect(8),this.finishNode(w,"EnumBooleanBody");case"number":return w.explicitType=!0,w.members=Zr.numberMembers,this.expect(8),this.finishNode(w,"EnumNumberBody");case"string":return w.explicitType=!0,w.members=this.flowEnumStringMembers(Zr.stringMembers,Zr.defaultedMembers,{enumName:ye}),this.expect(8),this.finishNode(w,"EnumStringBody");case"symbol":return w.members=Zr.defaultedMembers,this.expect(8),this.finishNode(w,"EnumSymbolBody");default:{let Hn=()=>(w.members=[],this.expect(8),this.finishNode(w,"EnumStringBody"));w.explicitType=!1;let Dn=Zr.booleanMembers.length,Wo=Zr.numberMembers.length,Ic=Zr.stringMembers.length,Jc=Zr.defaultedMembers.length;if(!Dn&&!Wo&&!Ic&&!Jc)return Hn();if(!Dn&&!Wo)return w.members=this.flowEnumStringMembers(Zr.stringMembers,Zr.defaultedMembers,{enumName:ye}),this.expect(8),this.finishNode(w,"EnumStringBody");if(!Wo&&!Ic&&Dn>=Jc){for(let Mo of Zr.defaultedMembers)this.flowEnumErrorBooleanMemberNotInitialized(Mo.loc.start,{enumName:ye,memberName:Mo.id.name});return w.members=Zr.booleanMembers,this.expect(8),this.finishNode(w,"EnumBooleanBody")}else if(!Dn&&!Ic&&Wo>=Jc){for(let Mo of Zr.defaultedMembers)this.flowEnumErrorNumberMemberNotInitialized(Mo.loc.start,{enumName:ye,memberName:Mo.id.name});return w.members=Zr.numberMembers,this.expect(8),this.finishNode(w,"EnumNumberBody")}else return this.raise(yl.EnumInconsistentMemberValues,ut,{enumName:ye}),Hn()}}}flowParseEnumDeclaration(w){let J=this.parseIdentifier();return w.id=J,w.body=this.flowEnumBody(this.startNode(),J),this.finishNode(w,"EnumDeclaration")}jsxParseOpeningElementAfterName(w){return this.shouldParseTypes()&&(this.match(47)||this.match(51))&&(w.typeArguments=this.flowParseTypeParameterInstantiationInExpression()),super.jsxParseOpeningElementAfterName(w)}isLookaheadToken_lt(){let w=this.nextTokenStart();if(this.input.charCodeAt(w)===60){let J=this.input.charCodeAt(w+1);return J!==60&&J!==61}return!1}reScan_lt_gt(){let{type:w}=this.state;w===47?(this.state.pos-=1,this.readToken_lt()):w===48&&(this.state.pos-=1,this.readToken_gt())}reScan_lt(){let{type:w}=this.state;return w===51?(this.state.pos-=2,this.finishOp(47,1),47):w}maybeUnwrapTypeCastExpression(w){return w.type==="TypeCastExpression"?w.expression:w}},gC=X`jsx`({AttributeIsEmpty:"JSX attributes must only be assigned a non-empty expression.",MissingClosingTagElement:({openingTagName:ie})=>`Expected corresponding JSX closing tag for <${ie}>.`,MissingClosingTagFragment:"Expected corresponding JSX closing tag for <>.",UnexpectedSequenceExpression:"Sequence expressions cannot be directly nested inside JSX. Did you mean to wrap it in parentheses (...)?",UnexpectedToken:({unexpected:ie,HTMLEntity:w})=>`Unexpected token \`${ie}\`. Did you mean \`${w}\` or \`{'${ie}'}\`?`,UnsupportedJsxValue:"JSX value should be either an expression or a quoted JSX text.",UnterminatedJsxContent:"Unterminated JSX contents.",UnwrappedAdjacentJSXElements:"Adjacent JSX elements must be wrapped in an enclosing tag. Did you want a JSX fragment <>...?"});function fs(ie){return ie?ie.type==="JSXOpeningFragment"||ie.type==="JSXClosingFragment":!1}function go(ie){if(ie.type==="JSXIdentifier")return ie.name;if(ie.type==="JSXNamespacedName")return ie.namespace.name+":"+ie.name.name;if(ie.type==="JSXMemberExpression")return go(ie.object)+"."+go(ie.property);throw new Error("Node had unexpected type: "+ie.type)}var Ro=ie=>class extends ie{jsxReadToken(){let w="",J=this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(gC.UnterminatedJsxContent,this.state.startLoc);let ye=this.input.charCodeAt(this.state.pos);switch(ye){case 60:case 123:if(this.state.pos===this.state.start){ye===60&&this.state.canStartJSXElement?(++this.state.pos,this.finishToken(143)):super.getTokenFromCode(ye);return}w+=this.input.slice(J,this.state.pos),this.finishToken(142,w);return;case 38:w+=this.input.slice(J,this.state.pos),w+=this.jsxReadEntity(),J=this.state.pos;break;case 62:case 125:default:us(ye)?(w+=this.input.slice(J,this.state.pos),w+=this.jsxReadNewLine(!0),J=this.state.pos):++this.state.pos}}}jsxReadNewLine(w){let J=this.input.charCodeAt(this.state.pos),ye;return++this.state.pos,J===13&&this.input.charCodeAt(this.state.pos)===10?(++this.state.pos,ye=w?` `:`\r -`):ye=String.fromCharCode(J),++this.state.curLine,this.state.lineStart=this.state.pos,ye}jsxReadString(w){let J="",ye=++this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(U.UnterminatedString,this.state.startLoc);let ut=this.input.charCodeAt(this.state.pos);if(ut===w)break;ut===38?(J+=this.input.slice(ye,this.state.pos),J+=this.jsxReadEntity(),ye=this.state.pos):us(ut)?(J+=this.input.slice(ye,this.state.pos),J+=this.jsxReadNewLine(!1),ye=this.state.pos):++this.state.pos}J+=this.input.slice(ye,this.state.pos++),this.finishToken(134,J)}jsxReadEntity(){let w=++this.state.pos;if(this.codePointAtPos(this.state.pos)===35){++this.state.pos;let J=10;this.codePointAtPos(this.state.pos)===120&&(J=16,++this.state.pos);let ye=this.readInt(J,void 0,!1,"bail");if(ye!==null&&this.codePointAtPos(this.state.pos)===59)return++this.state.pos,String.fromCodePoint(ye)}else{let J=0,ye=!1;for(;J++<10&&this.state.pos1){for(let ye=0;ye0){if(J&256){let ut=!!(J&512),zt=(ye&4)>0;return ut!==zt}return!0}return J&128&&(ye&8)>0?ie.names.get(w)&2?!!(J&1):!1:J&2&&(ye&1)>0?!0:super.isRedeclaredInScope(ie,w,J)}checkLocalExport(ie){let{name:w}=ie;if(this.hasImport(w))return;let J=this.scopeStack.length;for(let ye=J-1;ye>=0;ye--){let ut=this.scopeStack[ye].tsNames.get(w);if((ut&1)>0||(ut&16)>0)return}super.checkLocalExport(ie)}},Nn=ie=>ie.type==="ParenthesizedExpression"?Nn(ie.expression):ie,Di=class extends Jh{toAssignable(ie,w=!1){var J,ye;let ut;switch((ie.type==="ParenthesizedExpression"||(J=ie.extra)!=null&&J.parenthesized)&&(ut=Nn(ie),w?ut.type==="Identifier"?this.expressionScope.recordArrowParameterBindingError(U.InvalidParenthesizedAssignment,ie):ut.type!=="MemberExpression"&&!this.isOptionalMemberExpression(ut)&&this.raise(U.InvalidParenthesizedAssignment,ie):this.raise(U.InvalidParenthesizedAssignment,ie)),ie.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":break;case"ObjectExpression":ie.type="ObjectPattern";for(let Zr=0,wr=ie.properties.length,Yn=wr-1;Zrye.type!=="ObjectMethod"&&(ut===J||ye.type!=="SpreadElement")&&this.isAssignable(ye))}case"ObjectProperty":return this.isAssignable(ie.value);case"SpreadElement":return this.isAssignable(ie.argument);case"ArrayExpression":return ie.elements.every(J=>J===null||this.isAssignable(J));case"AssignmentExpression":return ie.operator==="=";case"ParenthesizedExpression":return this.isAssignable(ie.expression);case"MemberExpression":case"OptionalMemberExpression":return!w;default:return!1}}toReferencedList(ie,w){return ie}toReferencedListDeep(ie,w){this.toReferencedList(ie,w);for(let J of ie)J?.type==="ArrayExpression"&&this.toReferencedListDeep(J.elements)}parseSpread(ie){let w=this.startNode();return this.next(),w.argument=this.parseMaybeAssignAllowIn(ie,void 0),this.finishNode(w,"SpreadElement")}parseRestBinding(){let ie=this.startNode();return this.next(),ie.argument=this.parseBindingAtom(),this.finishNode(ie,"RestElement")}parseBindingAtom(){switch(this.state.type){case 0:{let ie=this.startNode();return this.next(),ie.elements=this.parseBindingList(3,93,1),this.finishNode(ie,"ArrayPattern")}case 5:return this.parseObjectLike(8,!0)}return this.parseIdentifier()}parseBindingList(ie,w,J){let ye=J&1,ut=[],zt=!0;for(;!this.eat(ie);)if(zt?zt=!1:this.expect(12),ye&&this.match(12))ut.push(null);else{if(this.eat(ie))break;if(this.match(21)){let Zr=this.parseRestBinding();if((this.hasPlugin("flow")||J&2)&&(Zr=this.parseFunctionParamType(Zr)),ut.push(Zr),!this.checkCommaAfterRest(w)){this.expect(ie);break}}else{let Zr=[];for(this.match(26)&&this.hasPlugin("decorators")&&this.raise(U.UnsupportedParameterDecorator,this.state.startLoc);this.match(26);)Zr.push(this.parseDecorator());ut.push(this.parseAssignableListItem(J,Zr))}}return ut}parseBindingRestProperty(ie){return this.next(),ie.argument=this.parseIdentifier(),this.checkCommaAfterRest(125),this.finishNode(ie,"RestElement")}parseBindingProperty(){let{type:ie,startLoc:w}=this.state;if(ie===21)return this.parseBindingRestProperty(this.startNode());let J=this.startNode();return ie===139?(this.expectPlugin("destructuringPrivate",w),this.classScope.usePrivateName(this.state.value,w),J.key=this.parsePrivateName()):this.parsePropertyName(J),J.method=!1,this.parseObjPropValue(J,w,!1,!1,!0,!1)}parseAssignableListItem(ie,w){let J=this.parseMaybeDefault();(this.hasPlugin("flow")||ie&2)&&this.parseFunctionParamType(J);let ye=this.parseMaybeDefault(J.loc.start,J);return w.length&&(J.decorators=w),ye}parseFunctionParamType(ie){return ie}parseMaybeDefault(ie,w){var J,ye;if((J=ie)!=null||(ie=this.state.startLoc),w=(ye=w)!=null?ye:this.parseBindingAtom(),!this.eat(29))return w;let ut=this.startNodeAt(ie);return ut.left=w,ut.right=this.parseMaybeAssignAllowIn(),this.finishNode(ut,"AssignmentPattern")}isValidLVal(ie,w,J){switch(ie){case"AssignmentPattern":return"left";case"RestElement":return"argument";case"ObjectProperty":return"value";case"ParenthesizedExpression":return"expression";case"ArrayPattern":return"elements";case"ObjectPattern":return"properties"}return!1}isOptionalMemberExpression(ie){return ie.type==="OptionalMemberExpression"}checkLVal(ie,w,J=64,ye=!1,ut=!1,zt=!1){var Zr;let wr=ie.type;if(this.isObjectMethod(ie))return;let Yn=this.isOptionalMemberExpression(ie);if(Yn||wr==="MemberExpression"){Yn&&(this.expectPlugin("optionalChainingAssign",ie.loc.start),w.type!=="AssignmentExpression"&&this.raise(U.InvalidLhsOptionalChaining,ie,{ancestor:w})),J!==64&&this.raise(U.InvalidPropertyBindingPattern,ie);return}if(wr==="Identifier"){this.checkIdentifier(ie,J,ut);let{name:yu}=ie;ye&&(ye.has(yu)?this.raise(U.ParamDupe,ie):ye.add(yu));return}let Dn=this.isValidLVal(wr,!(zt||(Zr=ie.extra)!=null&&Zr.parenthesized)&&w.type==="AssignmentExpression",J);if(Dn===!0)return;if(Dn===!1){let yu=J===64?U.InvalidLhs:U.InvalidLhsBinding;this.raise(yu,ie,{ancestor:w});return}let Po,fc;typeof Dn=="string"?(Po=Dn,fc=wr==="ParenthesizedExpression"):[Po,fc]=Dn;let Xc=wr==="ArrayPattern"||wr==="ObjectPattern"?{type:wr}:w,Yo=ie[Po];if(Array.isArray(Yo))for(let yu of Yo)yu&&this.checkLVal(yu,Xc,J,ye,ut,fc);else Yo&&this.checkLVal(Yo,Xc,J,ye,ut,fc)}checkIdentifier(ie,w,J=!1){this.state.strict&&(J?Ga(ie.name,this.inModule):$i(ie.name))&&(w===64?this.raise(U.StrictEvalArguments,ie,{referenceName:ie.name}):this.raise(U.StrictEvalArgumentsBinding,ie,{bindingName:ie.name})),w&8192&&ie.name==="let"&&this.raise(U.LetInLexicalBinding,ie),w&64||this.declareNameFromIdentifier(ie,w)}declareNameFromIdentifier(ie,w){this.scope.declareName(ie.name,w,ie.loc.start)}checkToRestConversion(ie,w){switch(ie.type){case"ParenthesizedExpression":this.checkToRestConversion(ie.expression,w);break;case"Identifier":case"MemberExpression":break;case"ArrayExpression":case"ObjectExpression":if(w)break;default:this.raise(U.InvalidRestAssignmentPattern,ie)}}checkCommaAfterRest(ie){return this.match(12)?(this.raise(this.lookaheadCharCode()===ie?U.RestTrailingComma:U.ElementAfterRest,this.state.startLoc),!0):!1}};function na(ie){if(ie==null)throw new Error(`Unexpected ${ie} value.`);return ie}function Ks(ie){if(!ie)throw new Error("Assert fail")}var Li=X`typescript`({AbstractMethodHasImplementation:({methodName:ie})=>`Method '${ie}' cannot have an implementation because it is marked abstract.`,AbstractPropertyHasInitializer:({propertyName:ie})=>`Property '${ie}' cannot have an initializer because it is marked abstract.`,AccessorCannotBeOptional:"An 'accessor' property cannot be declared optional.",AccessorCannotDeclareThisParameter:"'get' and 'set' accessors cannot declare 'this' parameters.",AccessorCannotHaveTypeParameters:"An accessor cannot have type parameters.",ClassMethodHasDeclare:"Class methods cannot have the 'declare' modifier.",ClassMethodHasReadonly:"Class methods cannot have the 'readonly' modifier.",ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:"A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference.",ConstructorHasTypeParameters:"Type parameters cannot appear on a constructor declaration.",DeclareAccessor:({kind:ie})=>`'declare' is not allowed in ${ie}ters.`,DeclareClassFieldHasInitializer:"Initializers are not allowed in ambient contexts.",DeclareFunctionHasImplementation:"An implementation cannot be declared in ambient contexts.",DuplicateAccessibilityModifier:({modifier:ie})=>"Accessibility modifier already seen.",DuplicateModifier:({modifier:ie})=>`Duplicate modifier: '${ie}'.`,EmptyHeritageClauseType:({token:ie})=>`'${ie}' list cannot be empty.`,EmptyTypeArguments:"Type argument list cannot be empty.",EmptyTypeParameters:"Type parameter list cannot be empty.",ExpectedAmbientAfterExportDeclare:"'export declare' must be followed by an ambient declaration.",ImportAliasHasImportType:"An import alias can not use 'import type'.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` modifier",IncompatibleModifiers:({modifiers:ie})=>`'${ie[0]}' modifier cannot be used with '${ie[1]}' modifier.`,IndexSignatureHasAbstract:"Index signatures cannot have the 'abstract' modifier.",IndexSignatureHasAccessibility:({modifier:ie})=>`Index signatures cannot have an accessibility modifier ('${ie}').`,IndexSignatureHasDeclare:"Index signatures cannot have the 'declare' modifier.",IndexSignatureHasOverride:"'override' modifier cannot appear on an index signature.",IndexSignatureHasStatic:"Index signatures cannot have the 'static' modifier.",InitializerNotAllowedInAmbientContext:"Initializers are not allowed in ambient contexts.",InvalidModifierOnTypeMember:({modifier:ie})=>`'${ie}' modifier cannot appear on a type member.`,InvalidModifierOnTypeParameter:({modifier:ie})=>`'${ie}' modifier cannot appear on a type parameter.`,InvalidModifierOnTypeParameterPositions:({modifier:ie})=>`'${ie}' modifier can only appear on a type parameter of a class, interface or type alias.`,InvalidModifiersOrder:({orderedModifiers:ie})=>`'${ie[0]}' modifier must precede '${ie[1]}' modifier.`,InvalidPropertyAccessAfterInstantiationExpression:"Invalid property access after an instantiation expression. You can either wrap the instantiation expression in parentheses, or delete the type arguments.",InvalidTupleMemberLabel:"Tuple members must be labeled with a simple identifier.",MissingInterfaceName:"'interface' declarations must be followed by an identifier.",NonAbstractClassHasAbstractMethod:"Abstract methods can only appear within an abstract class.",NonClassMethodPropertyHasAbstractModifer:"'abstract' modifier can only appear on a class, method, or property declaration.",OptionalTypeBeforeRequired:"A required element cannot follow an optional element.",OverrideNotInSubClass:"This member cannot have an 'override' modifier because its containing class does not extend another class.",PatternIsOptional:"A binding pattern parameter cannot be optional in an implementation signature.",PrivateElementHasAbstract:"Private elements cannot have the 'abstract' modifier.",PrivateElementHasAccessibility:({modifier:ie})=>`Private elements cannot have an accessibility modifier ('${ie}').`,ReadonlyForMethodSignature:"'readonly' modifier can only appear on a property declaration or index signature.",ReservedArrowTypeParam:"This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma, as in `() => ...`.",ReservedTypeAssertion:"This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead.",SetAccessorCannotHaveOptionalParameter:"A 'set' accessor cannot have an optional parameter.",SetAccessorCannotHaveRestParameter:"A 'set' accessor cannot have rest parameter.",SetAccessorCannotHaveReturnType:"A 'set' accessor cannot have a return type annotation.",SingleTypeParameterWithoutTrailingComma:({typeParameterName:ie})=>`Single type parameter ${ie} should have a trailing comma. Example usage: <${ie},>.`,StaticBlockCannotHaveModifier:"Static class blocks cannot have any modifier.",TupleOptionalAfterType:"A labeled tuple optional element must be declared using a question mark after the name and before the colon (`name?: type`), rather than after the type (`name: type?`).",TypeAnnotationAfterAssign:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeImportCannotSpecifyDefaultAndNamed:"A type-only import can specify a default import or named bindings, but not both.",TypeModifierIsUsedInTypeExports:"The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement.",TypeModifierIsUsedInTypeImports:"The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement.",UnexpectedParameterModifier:"A parameter property is only allowed in a constructor implementation.",UnexpectedReadonly:"'readonly' type modifier is only permitted on array and tuple literal types.",UnexpectedTypeAnnotation:"Did not expect a type annotation here.",UnexpectedTypeCastInParameter:"Unexpected type cast in parameter position.",UnsupportedImportTypeArgument:"Argument in a type import must be a string literal.",UnsupportedParameterPropertyKind:"A parameter property may not be declared using a binding pattern.",UnsupportedSignatureParameterKind:({type:ie})=>`Name in a signature must be an Identifier, ObjectPattern or ArrayPattern, instead got ${ie}.`});function Zl(ie){switch(ie){case"any":return"TSAnyKeyword";case"boolean":return"TSBooleanKeyword";case"bigint":return"TSBigIntKeyword";case"never":return"TSNeverKeyword";case"number":return"TSNumberKeyword";case"object":return"TSObjectKeyword";case"string":return"TSStringKeyword";case"symbol":return"TSSymbolKeyword";case"undefined":return"TSUndefinedKeyword";case"unknown":return"TSUnknownKeyword";default:return}}function RA(ie){return ie==="private"||ie==="public"||ie==="protected"}function Nd(ie){return ie==="in"||ie==="out"}var WI=ie=>class extends ie{constructor(...w){super(...w),this.tsParseInOutModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out"],disallowedModifiers:["const","public","private","protected","readonly","declare","abstract","override"],errorTemplate:Li.InvalidModifierOnTypeParameter}),this.tsParseConstModifier=this.tsParseModifiers.bind(this,{allowedModifiers:["const"],disallowedModifiers:["in","out"],errorTemplate:Li.InvalidModifierOnTypeParameterPositions}),this.tsParseInOutConstModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out","const"],disallowedModifiers:["public","private","protected","readonly","declare","abstract","override"],errorTemplate:Li.InvalidModifierOnTypeParameter})}getScopeHandler(){return Nr}tsIsIdentifier(){return gn(this.state.type)}tsTokenCanFollowModifier(){return this.match(0)||this.match(5)||this.match(55)||this.match(21)||this.match(139)||this.isLiteralPropertyName()}tsNextTokenOnSameLineAndCanFollowModifier(){return this.next(),this.hasPrecedingLineBreak()?!1:this.tsTokenCanFollowModifier()}tsNextTokenCanFollowModifier(){return this.match(106)?(this.next(),this.tsTokenCanFollowModifier()):this.tsNextTokenOnSameLineAndCanFollowModifier()}tsParseModifier(w,J){if(!gn(this.state.type)&&this.state.type!==58&&this.state.type!==75)return;let ye=this.state.value;if(w.includes(ye)){if(J&&this.tsIsStartOfStaticBlocks())return;if(this.tsTryParse(this.tsNextTokenCanFollowModifier.bind(this)))return ye}}tsParseModifiers({allowedModifiers:w,disallowedModifiers:J,stopOnStartOfClassStaticBlock:ye,errorTemplate:ut=Li.InvalidModifierOnTypeMember},zt){let Zr=(Yn,Dn,Po,fc)=>{Dn===Po&&zt[fc]&&this.raise(Li.InvalidModifiersOrder,Yn,{orderedModifiers:[Po,fc]})},wr=(Yn,Dn,Po,fc)=>{(zt[Po]&&Dn===fc||zt[fc]&&Dn===Po)&&this.raise(Li.IncompatibleModifiers,Yn,{modifiers:[Po,fc]})};for(;;){let{startLoc:Yn}=this.state,Dn=this.tsParseModifier(w.concat(J??[]),ye);if(!Dn)break;RA(Dn)?zt.accessibility?this.raise(Li.DuplicateAccessibilityModifier,Yn,{modifier:Dn}):(Zr(Yn,Dn,Dn,"override"),Zr(Yn,Dn,Dn,"static"),Zr(Yn,Dn,Dn,"readonly"),zt.accessibility=Dn):Nd(Dn)?(zt[Dn]&&this.raise(Li.DuplicateModifier,Yn,{modifier:Dn}),zt[Dn]=!0,Zr(Yn,Dn,"in","out")):(hasOwnProperty.call(zt,Dn)?this.raise(Li.DuplicateModifier,Yn,{modifier:Dn}):(Zr(Yn,Dn,"static","readonly"),Zr(Yn,Dn,"static","override"),Zr(Yn,Dn,"override","readonly"),Zr(Yn,Dn,"abstract","override"),wr(Yn,Dn,"declare","override"),wr(Yn,Dn,"static","abstract")),zt[Dn]=!0),J!=null&&J.includes(Dn)&&this.raise(ut,Yn,{modifier:Dn})}}tsIsListTerminator(w){switch(w){case"EnumMembers":case"TypeMembers":return this.match(8);case"HeritageClauseElement":return this.match(5);case"TupleElementTypes":return this.match(3);case"TypeParametersOrArguments":return this.match(48)}}tsParseList(w,J){let ye=[];for(;!this.tsIsListTerminator(w);)ye.push(J());return ye}tsParseDelimitedList(w,J,ye){return na(this.tsParseDelimitedListWorker(w,J,!0,ye))}tsParseDelimitedListWorker(w,J,ye,ut){let zt=[],Zr=-1;for(;!this.tsIsListTerminator(w);){Zr=-1;let wr=J();if(wr==null)return;if(zt.push(wr),this.eat(12)){Zr=this.state.lastTokStartLoc.index;continue}if(this.tsIsListTerminator(w))break;ye&&this.expect(12);return}return ut&&(ut.value=Zr),zt}tsParseBracketedList(w,J,ye,ut,zt){ut||(ye?this.expect(0):this.expect(47));let Zr=this.tsParseDelimitedList(w,J,zt);return ye?this.expect(3):this.expect(48),Zr}tsParseImportType(){let w=this.startNode();return this.expect(83),this.expect(10),this.match(134)?w.argument=this.parseStringLiteral(this.state.value):(this.raise(Li.UnsupportedImportTypeArgument,this.state.startLoc),w.argument=super.parseExprAtom()),this.eat(12)&&!this.match(11)?(w.options=super.parseMaybeAssignAllowIn(),this.eat(12)):w.options=null,this.expect(11),this.eat(16)&&(w.qualifier=this.tsParseEntityName(3)),this.match(47)&&(w.typeParameters=this.tsParseTypeArguments()),this.finishNode(w,"TSImportType")}tsParseEntityName(w){let J;if(w&1&&this.match(78))if(w&2)J=this.parseIdentifier(!0);else{let ye=this.startNode();this.next(),J=this.finishNode(ye,"ThisExpression")}else J=this.parseIdentifier(!!(w&1));for(;this.eat(16);){let ye=this.startNodeAtNode(J);ye.left=J,ye.right=this.parseIdentifier(!!(w&1)),J=this.finishNode(ye,"TSQualifiedName")}return J}tsParseTypeReference(){let w=this.startNode();return w.typeName=this.tsParseEntityName(1),!this.hasPrecedingLineBreak()&&this.match(47)&&(w.typeParameters=this.tsParseTypeArguments()),this.finishNode(w,"TSTypeReference")}tsParseThisTypePredicate(w){this.next();let J=this.startNodeAtNode(w);return J.parameterName=w,J.typeAnnotation=this.tsParseTypeAnnotation(!1),J.asserts=!1,this.finishNode(J,"TSTypePredicate")}tsParseThisTypeNode(){let w=this.startNode();return this.next(),this.finishNode(w,"TSThisType")}tsParseTypeQuery(){let w=this.startNode();return this.expect(87),this.match(83)?w.exprName=this.tsParseImportType():w.exprName=this.tsParseEntityName(3),!this.hasPrecedingLineBreak()&&this.match(47)&&(w.typeParameters=this.tsParseTypeArguments()),this.finishNode(w,"TSTypeQuery")}tsParseTypeParameter(w){let J=this.startNode();return w(J),J.name=this.tsParseTypeParameterName(),J.constraint=this.tsEatThenParseType(81),J.default=this.tsEatThenParseType(29),this.finishNode(J,"TSTypeParameter")}tsTryParseTypeParameters(w){if(this.match(47))return this.tsParseTypeParameters(w)}tsParseTypeParameters(w){let J=this.startNode();this.match(47)||this.match(143)?this.next():this.unexpected();let ye={value:-1};return J.params=this.tsParseBracketedList("TypeParametersOrArguments",this.tsParseTypeParameter.bind(this,w),!1,!0,ye),J.params.length===0&&this.raise(Li.EmptyTypeParameters,J),ye.value!==-1&&this.addExtra(J,"trailingComma",ye.value),this.finishNode(J,"TSTypeParameterDeclaration")}tsFillSignature(w,J){let ye=w===19,ut="parameters",zt="typeAnnotation";J.typeParameters=this.tsTryParseTypeParameters(this.tsParseConstModifier),this.expect(10),J[ut]=this.tsParseBindingListForSignature(),ye?J[zt]=this.tsParseTypeOrTypePredicateAnnotation(w):this.match(w)&&(J[zt]=this.tsParseTypeOrTypePredicateAnnotation(w))}tsParseBindingListForSignature(){let w=super.parseBindingList(11,41,2);for(let J of w){let{type:ye}=J;(ye==="AssignmentPattern"||ye==="TSParameterProperty")&&this.raise(Li.UnsupportedSignatureParameterKind,J,{type:ye})}return w}tsParseTypeMemberSemicolon(){!this.eat(12)&&!this.isLineTerminator()&&this.expect(13)}tsParseSignatureMember(w,J){return this.tsFillSignature(14,J),this.tsParseTypeMemberSemicolon(),this.finishNode(J,w)}tsIsUnambiguouslyIndexSignature(){return this.next(),gn(this.state.type)?(this.next(),this.match(14)):!1}tsTryParseIndexSignature(w){if(!(this.match(0)&&this.tsLookAhead(this.tsIsUnambiguouslyIndexSignature.bind(this))))return;this.expect(0);let J=this.parseIdentifier();J.typeAnnotation=this.tsParseTypeAnnotation(),this.resetEndLocation(J),this.expect(3),w.parameters=[J];let ye=this.tsTryParseTypeAnnotation();return ye&&(w.typeAnnotation=ye),this.tsParseTypeMemberSemicolon(),this.finishNode(w,"TSIndexSignature")}tsParsePropertyOrMethodSignature(w,J){this.eat(17)&&(w.optional=!0);let ye=w;if(this.match(10)||this.match(47)){J&&this.raise(Li.ReadonlyForMethodSignature,w);let ut=ye;ut.kind&&this.match(47)&&this.raise(Li.AccessorCannotHaveTypeParameters,this.state.curPosition()),this.tsFillSignature(14,ut),this.tsParseTypeMemberSemicolon();let zt="parameters",Zr="typeAnnotation";if(ut.kind==="get")ut[zt].length>0&&(this.raise(U.BadGetterArity,this.state.curPosition()),this.isThisParam(ut[zt][0])&&this.raise(Li.AccessorCannotDeclareThisParameter,this.state.curPosition()));else if(ut.kind==="set"){if(ut[zt].length!==1)this.raise(U.BadSetterArity,this.state.curPosition());else{let wr=ut[zt][0];this.isThisParam(wr)&&this.raise(Li.AccessorCannotDeclareThisParameter,this.state.curPosition()),wr.type==="Identifier"&&wr.optional&&this.raise(Li.SetAccessorCannotHaveOptionalParameter,this.state.curPosition()),wr.type==="RestElement"&&this.raise(Li.SetAccessorCannotHaveRestParameter,this.state.curPosition())}ut[Zr]&&this.raise(Li.SetAccessorCannotHaveReturnType,ut[Zr])}else ut.kind="method";return this.finishNode(ut,"TSMethodSignature")}else{let ut=ye;J&&(ut.readonly=!0);let zt=this.tsTryParseTypeAnnotation();return zt&&(ut.typeAnnotation=zt),this.tsParseTypeMemberSemicolon(),this.finishNode(ut,"TSPropertySignature")}}tsParseTypeMember(){let w=this.startNode();if(this.match(10)||this.match(47))return this.tsParseSignatureMember("TSCallSignatureDeclaration",w);if(this.match(77)){let ye=this.startNode();return this.next(),this.match(10)||this.match(47)?this.tsParseSignatureMember("TSConstructSignatureDeclaration",w):(w.key=this.createIdentifier(ye,"new"),this.tsParsePropertyOrMethodSignature(w,!1))}return this.tsParseModifiers({allowedModifiers:["readonly"],disallowedModifiers:["declare","abstract","private","protected","public","static","override"]},w),this.tsTryParseIndexSignature(w)||(super.parsePropertyName(w),!w.computed&&w.key.type==="Identifier"&&(w.key.name==="get"||w.key.name==="set")&&this.tsTokenCanFollowModifier()&&(w.kind=w.key.name,super.parsePropertyName(w)),this.tsParsePropertyOrMethodSignature(w,!!w.readonly))}tsParseTypeLiteral(){let w=this.startNode();return w.members=this.tsParseObjectTypeMembers(),this.finishNode(w,"TSTypeLiteral")}tsParseObjectTypeMembers(){this.expect(5);let w=this.tsParseList("TypeMembers",this.tsParseTypeMember.bind(this));return this.expect(8),w}tsIsStartOfMappedType(){return this.next(),this.eat(53)?this.isContextual(122):(this.isContextual(122)&&this.next(),!this.match(0)||(this.next(),!this.tsIsIdentifier())?!1:(this.next(),this.match(58)))}tsParseMappedType(){let w=this.startNode();this.expect(5),this.match(53)?(w.readonly=this.state.value,this.next(),this.expectContextual(122)):this.eatContextual(122)&&(w.readonly=!0),this.expect(0);{let J=this.startNode();J.name=this.tsParseTypeParameterName(),J.constraint=this.tsExpectThenParseType(58),w.typeParameter=this.finishNode(J,"TSTypeParameter")}return w.nameType=this.eatContextual(93)?this.tsParseType():null,this.expect(3),this.match(53)?(w.optional=this.state.value,this.next(),this.expect(17)):this.eat(17)&&(w.optional=!0),w.typeAnnotation=this.tsTryParseType(),this.semicolon(),this.expect(8),this.finishNode(w,"TSMappedType")}tsParseTupleType(){let w=this.startNode();w.elementTypes=this.tsParseBracketedList("TupleElementTypes",this.tsParseTupleElementType.bind(this),!0,!1);let J=!1;return w.elementTypes.forEach(ye=>{let{type:ut}=ye;J&&ut!=="TSRestType"&&ut!=="TSOptionalType"&&!(ut==="TSNamedTupleMember"&&ye.optional)&&this.raise(Li.OptionalTypeBeforeRequired,ye),J||(J=ut==="TSNamedTupleMember"&&ye.optional||ut==="TSOptionalType")}),this.finishNode(w,"TSTupleType")}tsParseTupleElementType(){let w=this.state.startLoc,J=this.eat(21),{startLoc:ye}=this.state,ut,zt,Zr,wr,Yn=we(this.state.type)?this.lookaheadCharCode():null;if(Yn===58)ut=!0,Zr=!1,zt=this.parseIdentifier(!0),this.expect(14),wr=this.tsParseType();else if(Yn===63){Zr=!0;let Dn=this.state.value,Po=this.tsParseNonArrayType();this.lookaheadCharCode()===58?(ut=!0,zt=this.createIdentifier(this.startNodeAt(ye),Dn),this.expect(17),this.expect(14),wr=this.tsParseType()):(ut=!1,wr=Po,this.expect(17))}else wr=this.tsParseType(),Zr=this.eat(17),ut=this.eat(14);if(ut){let Dn;zt?(Dn=this.startNodeAt(ye),Dn.optional=Zr,Dn.label=zt,Dn.elementType=wr,this.eat(17)&&(Dn.optional=!0,this.raise(Li.TupleOptionalAfterType,this.state.lastTokStartLoc))):(Dn=this.startNodeAt(ye),Dn.optional=Zr,this.raise(Li.InvalidTupleMemberLabel,wr),Dn.label=wr,Dn.elementType=this.tsParseType()),wr=this.finishNode(Dn,"TSNamedTupleMember")}else if(Zr){let Dn=this.startNodeAt(ye);Dn.typeAnnotation=wr,wr=this.finishNode(Dn,"TSOptionalType")}if(J){let Dn=this.startNodeAt(w);Dn.typeAnnotation=wr,wr=this.finishNode(Dn,"TSRestType")}return wr}tsParseParenthesizedType(){let w=this.startNode();return this.expect(10),w.typeAnnotation=this.tsParseType(),this.expect(11),this.finishNode(w,"TSParenthesizedType")}tsParseFunctionOrConstructorType(w,J){let ye=this.startNode();return w==="TSConstructorType"&&(ye.abstract=!!J,J&&this.next(),this.next()),this.tsInAllowConditionalTypesContext(()=>this.tsFillSignature(19,ye)),this.finishNode(ye,w)}tsParseLiteralTypeNode(){let w=this.startNode();switch(this.state.type){case 135:case 136:case 134:case 85:case 86:w.literal=super.parseExprAtom();break;default:this.unexpected()}return this.finishNode(w,"TSLiteralType")}tsParseTemplateLiteralType(){{let w=this.startNode();return w.literal=super.parseTemplate(!1),this.finishNode(w,"TSLiteralType")}}parseTemplateSubstitution(){return this.state.inType?this.tsParseType():super.parseTemplateSubstitution()}tsParseThisTypeOrThisTypePredicate(){let w=this.tsParseThisTypeNode();return this.isContextual(116)&&!this.hasPrecedingLineBreak()?this.tsParseThisTypePredicate(w):w}tsParseNonArrayType(){switch(this.state.type){case 134:case 135:case 136:case 85:case 86:return this.tsParseLiteralTypeNode();case 53:if(this.state.value==="-"){let w=this.startNode(),J=this.lookahead();return J.type!==135&&J.type!==136&&this.unexpected(),w.literal=this.parseMaybeUnary(),this.finishNode(w,"TSLiteralType")}break;case 78:return this.tsParseThisTypeOrThisTypePredicate();case 87:return this.tsParseTypeQuery();case 83:return this.tsParseImportType();case 5:return this.tsLookAhead(this.tsIsStartOfMappedType.bind(this))?this.tsParseMappedType():this.tsParseTypeLiteral();case 0:return this.tsParseTupleType();case 10:return this.tsParseParenthesizedType();case 25:case 24:return this.tsParseTemplateLiteralType();default:{let{type:w}=this.state;if(gn(w)||w===88||w===84){let J=w===88?"TSVoidKeyword":w===84?"TSNullKeyword":Zl(this.state.value);if(J!==void 0&&this.lookaheadCharCode()!==46){let ye=this.startNode();return this.next(),this.finishNode(ye,J)}return this.tsParseTypeReference()}}}this.unexpected()}tsParseArrayTypeOrHigher(){let{startLoc:w}=this.state,J=this.tsParseNonArrayType();for(;!this.hasPrecedingLineBreak()&&this.eat(0);)if(this.match(3)){let ye=this.startNodeAt(w);ye.elementType=J,this.expect(3),J=this.finishNode(ye,"TSArrayType")}else{let ye=this.startNodeAt(w);ye.objectType=J,ye.indexType=this.tsParseType(),this.expect(3),J=this.finishNode(ye,"TSIndexedAccessType")}return J}tsParseTypeOperator(){let w=this.startNode(),J=this.state.value;return this.next(),w.operator=J,w.typeAnnotation=this.tsParseTypeOperatorOrHigher(),J==="readonly"&&this.tsCheckTypeAnnotationForReadOnly(w),this.finishNode(w,"TSTypeOperator")}tsCheckTypeAnnotationForReadOnly(w){switch(w.typeAnnotation.type){case"TSTupleType":case"TSArrayType":return;default:this.raise(Li.UnexpectedReadonly,w)}}tsParseInferType(){let w=this.startNode();this.expectContextual(115);let J=this.startNode();return J.name=this.tsParseTypeParameterName(),J.constraint=this.tsTryParse(()=>this.tsParseConstraintForInferType()),w.typeParameter=this.finishNode(J,"TSTypeParameter"),this.finishNode(w,"TSInferType")}tsParseConstraintForInferType(){if(this.eat(81)){let w=this.tsInDisallowConditionalTypesContext(()=>this.tsParseType());if(this.state.inDisallowConditionalTypesContext||!this.match(17))return w}}tsParseTypeOperatorOrHigher(){return ud(this.state.type)&&!this.state.containsEsc?this.tsParseTypeOperator():this.isContextual(115)?this.tsParseInferType():this.tsInAllowConditionalTypesContext(()=>this.tsParseArrayTypeOrHigher())}tsParseUnionOrIntersectionType(w,J,ye){let ut=this.startNode(),zt=this.eat(ye),Zr=[];do Zr.push(J());while(this.eat(ye));return Zr.length===1&&!zt?Zr[0]:(ut.types=Zr,this.finishNode(ut,w))}tsParseIntersectionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSIntersectionType",this.tsParseTypeOperatorOrHigher.bind(this),45)}tsParseUnionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSUnionType",this.tsParseIntersectionTypeOrHigher.bind(this),43)}tsIsStartOfFunctionType(){return this.match(47)?!0:this.match(10)&&this.tsLookAhead(this.tsIsUnambiguouslyStartOfFunctionType.bind(this))}tsSkipParameterStart(){if(gn(this.state.type)||this.match(78))return this.next(),!0;if(this.match(5)){let{errors:w}=this.state,J=w.length;try{return this.parseObjectLike(8,!0),w.length===J}catch{return!1}}if(this.match(0)){this.next();let{errors:w}=this.state,J=w.length;try{return super.parseBindingList(3,93,1),w.length===J}catch{return!1}}return!1}tsIsUnambiguouslyStartOfFunctionType(){return this.next(),!!(this.match(11)||this.match(21)||this.tsSkipParameterStart()&&(this.match(14)||this.match(12)||this.match(17)||this.match(29)||this.match(11)&&(this.next(),this.match(19))))}tsParseTypeOrTypePredicateAnnotation(w){return this.tsInType(()=>{let J=this.startNode();this.expect(w);let ye=this.startNode(),ut=!!this.tsTryParse(this.tsParseTypePredicateAsserts.bind(this));if(ut&&this.match(78)){let wr=this.tsParseThisTypeOrThisTypePredicate();return wr.type==="TSThisType"?(ye.parameterName=wr,ye.asserts=!0,ye.typeAnnotation=null,wr=this.finishNode(ye,"TSTypePredicate")):(this.resetStartLocationFromNode(wr,ye),wr.asserts=!0),J.typeAnnotation=wr,this.finishNode(J,"TSTypeAnnotation")}let zt=this.tsIsIdentifier()&&this.tsTryParse(this.tsParseTypePredicatePrefix.bind(this));if(!zt)return ut?(ye.parameterName=this.parseIdentifier(),ye.asserts=ut,ye.typeAnnotation=null,J.typeAnnotation=this.finishNode(ye,"TSTypePredicate"),this.finishNode(J,"TSTypeAnnotation")):this.tsParseTypeAnnotation(!1,J);let Zr=this.tsParseTypeAnnotation(!1);return ye.parameterName=zt,ye.typeAnnotation=Zr,ye.asserts=ut,J.typeAnnotation=this.finishNode(ye,"TSTypePredicate"),this.finishNode(J,"TSTypeAnnotation")})}tsTryParseTypeOrTypePredicateAnnotation(){if(this.match(14))return this.tsParseTypeOrTypePredicateAnnotation(14)}tsTryParseTypeAnnotation(){if(this.match(14))return this.tsParseTypeAnnotation()}tsTryParseType(){return this.tsEatThenParseType(14)}tsParseTypePredicatePrefix(){let w=this.parseIdentifier();if(this.isContextual(116)&&!this.hasPrecedingLineBreak())return this.next(),w}tsParseTypePredicateAsserts(){if(this.state.type!==109)return!1;let w=this.state.containsEsc;return this.next(),!gn(this.state.type)&&!this.match(78)?!1:(w&&this.raise(U.InvalidEscapedReservedWord,this.state.lastTokStartLoc,{reservedWord:"asserts"}),!0)}tsParseTypeAnnotation(w=!0,J=this.startNode()){return this.tsInType(()=>{w&&this.expect(14),J.typeAnnotation=this.tsParseType()}),this.finishNode(J,"TSTypeAnnotation")}tsParseType(){Ks(this.state.inType);let w=this.tsParseNonConditionalType();if(this.state.inDisallowConditionalTypesContext||this.hasPrecedingLineBreak()||!this.eat(81))return w;let J=this.startNodeAtNode(w);return J.checkType=w,J.extendsType=this.tsInDisallowConditionalTypesContext(()=>this.tsParseNonConditionalType()),this.expect(17),J.trueType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.expect(14),J.falseType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.finishNode(J,"TSConditionalType")}isAbstractConstructorSignature(){return this.isContextual(124)&&this.lookahead().type===77}tsParseNonConditionalType(){return this.tsIsStartOfFunctionType()?this.tsParseFunctionOrConstructorType("TSFunctionType"):this.match(77)?this.tsParseFunctionOrConstructorType("TSConstructorType"):this.isAbstractConstructorSignature()?this.tsParseFunctionOrConstructorType("TSConstructorType",!0):this.tsParseUnionTypeOrHigher()}tsParseTypeAssertion(){this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(Li.ReservedTypeAssertion,this.state.startLoc);let w=this.startNode();return w.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?this.tsParseTypeReference():this.tsParseType())),this.expect(48),w.expression=this.parseMaybeUnary(),this.finishNode(w,"TSTypeAssertion")}tsParseHeritageClause(w){let J=this.state.startLoc,ye=this.tsParseDelimitedList("HeritageClauseElement",()=>{let ut=this.startNode();return ut.expression=this.tsParseEntityName(3),this.match(47)&&(ut.typeParameters=this.tsParseTypeArguments()),this.finishNode(ut,"TSExpressionWithTypeArguments")});return ye.length||this.raise(Li.EmptyHeritageClauseType,J,{token:w}),ye}tsParseInterfaceDeclaration(w,J={}){if(this.hasFollowingLineBreak())return null;this.expectContextual(129),J.declare&&(w.declare=!0),gn(this.state.type)?(w.id=this.parseIdentifier(),this.checkIdentifier(w.id,130)):(w.id=null,this.raise(Li.MissingInterfaceName,this.state.startLoc)),w.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers),this.eat(81)&&(w.extends=this.tsParseHeritageClause("extends"));let ye=this.startNode();return ye.body=this.tsInType(this.tsParseObjectTypeMembers.bind(this)),w.body=this.finishNode(ye,"TSInterfaceBody"),this.finishNode(w,"TSInterfaceDeclaration")}tsParseTypeAliasDeclaration(w){return w.id=this.parseIdentifier(),this.checkIdentifier(w.id,2),w.typeAnnotation=this.tsInType(()=>{if(w.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutModifiers),this.expect(29),this.isContextual(114)&&this.lookahead().type!==16){let J=this.startNode();return this.next(),this.finishNode(J,"TSIntrinsicKeyword")}return this.tsParseType()}),this.semicolon(),this.finishNode(w,"TSTypeAliasDeclaration")}tsInTopLevelContext(w){if(this.curContext()!==Te.brace){let J=this.state.context;this.state.context=[J[0]];try{return w()}finally{this.state.context=J}}else return w()}tsInType(w){let J=this.state.inType;this.state.inType=!0;try{return w()}finally{this.state.inType=J}}tsInDisallowConditionalTypesContext(w){let J=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!0;try{return w()}finally{this.state.inDisallowConditionalTypesContext=J}}tsInAllowConditionalTypesContext(w){let J=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!1;try{return w()}finally{this.state.inDisallowConditionalTypesContext=J}}tsEatThenParseType(w){if(this.match(w))return this.tsNextThenParseType()}tsExpectThenParseType(w){return this.tsInType(()=>(this.expect(w),this.tsParseType()))}tsNextThenParseType(){return this.tsInType(()=>(this.next(),this.tsParseType()))}tsParseEnumMember(){let w=this.startNode();return w.id=this.match(134)?super.parseStringLiteral(this.state.value):this.parseIdentifier(!0),this.eat(29)&&(w.initializer=super.parseMaybeAssignAllowIn()),this.finishNode(w,"TSEnumMember")}tsParseEnumDeclaration(w,J={}){return J.const&&(w.const=!0),J.declare&&(w.declare=!0),this.expectContextual(126),w.id=this.parseIdentifier(),this.checkIdentifier(w.id,w.const?8971:8459),this.expect(5),w.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(w,"TSEnumDeclaration")}tsParseEnumBody(){let w=this.startNode();return this.expect(5),w.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(w,"TSEnumBody")}tsParseModuleBlock(){let w=this.startNode();return this.scope.enter(0),this.expect(5),super.parseBlockOrModuleBlockBody(w.body=[],void 0,!0,8),this.scope.exit(),this.finishNode(w,"TSModuleBlock")}tsParseModuleOrNamespaceDeclaration(w,J=!1){if(w.id=this.parseIdentifier(),J||this.checkIdentifier(w.id,1024),this.eat(16)){let ye=this.startNode();this.tsParseModuleOrNamespaceDeclaration(ye,!0),w.body=ye}else this.scope.enter(256),this.prodParam.enter(0),w.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit();return this.finishNode(w,"TSModuleDeclaration")}tsParseAmbientExternalModuleDeclaration(w){return this.isContextual(112)?(w.kind="global",w.global=!0,w.id=this.parseIdentifier()):this.match(134)?(w.kind="module",w.id=super.parseStringLiteral(this.state.value)):this.unexpected(),this.match(5)?(this.scope.enter(256),this.prodParam.enter(0),w.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit()):this.semicolon(),this.finishNode(w,"TSModuleDeclaration")}tsParseImportEqualsDeclaration(w,J,ye){w.isExport=ye||!1,w.id=J||this.parseIdentifier(),this.checkIdentifier(w.id,4096),this.expect(29);let ut=this.tsParseModuleReference();return w.importKind==="type"&&ut.type!=="TSExternalModuleReference"&&this.raise(Li.ImportAliasHasImportType,ut),w.moduleReference=ut,this.semicolon(),this.finishNode(w,"TSImportEqualsDeclaration")}tsIsExternalModuleReference(){return this.isContextual(119)&&this.lookaheadCharCode()===40}tsParseModuleReference(){return this.tsIsExternalModuleReference()?this.tsParseExternalModuleReference():this.tsParseEntityName(0)}tsParseExternalModuleReference(){let w=this.startNode();return this.expectContextual(119),this.expect(10),this.match(134)||this.unexpected(),w.expression=super.parseExprAtom(),this.expect(11),this.sawUnambiguousESM=!0,this.finishNode(w,"TSExternalModuleReference")}tsLookAhead(w){let J=this.state.clone(),ye=w();return this.state=J,ye}tsTryParseAndCatch(w){let J=this.tryParse(ye=>w()||ye());if(!(J.aborted||!J.node))return J.error&&(this.state=J.failState),J.node}tsTryParse(w){let J=this.state.clone(),ye=w();if(ye!==void 0&&ye!==!1)return ye;this.state=J}tsTryParseDeclare(w){if(this.isLineTerminator())return;let J=this.state.type,ye;return this.isContextual(100)&&(J=74,ye="let"),this.tsInAmbientContext(()=>{switch(J){case 68:return w.declare=!0,super.parseFunctionStatement(w,!1,!1);case 80:return w.declare=!0,this.parseClass(w,!0,!1);case 126:return this.tsParseEnumDeclaration(w,{declare:!0});case 112:return this.tsParseAmbientExternalModuleDeclaration(w);case 75:case 74:return!this.match(75)||!this.isLookaheadContextual("enum")?(w.declare=!0,this.parseVarStatement(w,ye||this.state.value,!0)):(this.expect(75),this.tsParseEnumDeclaration(w,{const:!0,declare:!0}));case 129:{let ut=this.tsParseInterfaceDeclaration(w,{declare:!0});if(ut)return ut}default:if(gn(J))return this.tsParseDeclaration(w,this.state.value,!0,null)}})}tsTryParseExportDeclaration(){return this.tsParseDeclaration(this.startNode(),this.state.value,!0,null)}tsParseExpressionStatement(w,J,ye){switch(J.name){case"declare":{let ut=this.tsTryParseDeclare(w);return ut&&(ut.declare=!0),ut}case"global":if(this.match(5)){this.scope.enter(256),this.prodParam.enter(0);let ut=w;return ut.kind="global",w.global=!0,ut.id=J,ut.body=this.tsParseModuleBlock(),this.scope.exit(),this.prodParam.exit(),this.finishNode(ut,"TSModuleDeclaration")}break;default:return this.tsParseDeclaration(w,J.name,!1,ye)}}tsParseDeclaration(w,J,ye,ut){switch(J){case"abstract":if(this.tsCheckLineTerminator(ye)&&(this.match(80)||gn(this.state.type)))return this.tsParseAbstractDeclaration(w,ut);break;case"module":if(this.tsCheckLineTerminator(ye)){if(this.match(134))return this.tsParseAmbientExternalModuleDeclaration(w);if(gn(this.state.type))return w.kind="module",this.tsParseModuleOrNamespaceDeclaration(w)}break;case"namespace":if(this.tsCheckLineTerminator(ye)&&gn(this.state.type))return w.kind="namespace",this.tsParseModuleOrNamespaceDeclaration(w);break;case"type":if(this.tsCheckLineTerminator(ye)&&gn(this.state.type))return this.tsParseTypeAliasDeclaration(w);break}}tsCheckLineTerminator(w){return w?this.hasFollowingLineBreak()?!1:(this.next(),!0):!this.isLineTerminator()}tsTryParseGenericAsyncArrowFunction(w){if(!this.match(47))return;let J=this.state.maybeInArrowParameters;this.state.maybeInArrowParameters=!0;let ye=this.tsTryParseAndCatch(()=>{let ut=this.startNodeAt(w);return ut.typeParameters=this.tsParseTypeParameters(this.tsParseConstModifier),super.parseFunctionParams(ut),ut.returnType=this.tsTryParseTypeOrTypePredicateAnnotation(),this.expect(19),ut});if(this.state.maybeInArrowParameters=J,!!ye)return super.parseArrowExpression(ye,null,!0)}tsParseTypeArgumentsInExpression(){if(this.reScan_lt()===47)return this.tsParseTypeArguments()}tsParseTypeArguments(){let w=this.startNode();return w.params=this.tsInType(()=>this.tsInTopLevelContext(()=>(this.expect(47),this.tsParseDelimitedList("TypeParametersOrArguments",this.tsParseType.bind(this))))),w.params.length===0?this.raise(Li.EmptyTypeArguments,w):!this.state.inType&&this.curContext()===Te.brace&&this.reScan_lt_gt(),this.expect(48),this.finishNode(w,"TSTypeParameterInstantiation")}tsIsDeclarationStart(){return TA(this.state.type)}isExportDefaultSpecifier(){return this.tsIsDeclarationStart()?!1:super.isExportDefaultSpecifier()}parseAssignableListItem(w,J){let ye=this.state.startLoc,ut={};this.tsParseModifiers({allowedModifiers:["public","private","protected","override","readonly"]},ut);let zt=ut.accessibility,Zr=ut.override,wr=ut.readonly;!(w&4)&&(zt||wr||Zr)&&this.raise(Li.UnexpectedParameterModifier,ye);let Yn=this.parseMaybeDefault();w&2&&this.parseFunctionParamType(Yn);let Dn=this.parseMaybeDefault(Yn.loc.start,Yn);if(zt||wr||Zr){let Po=this.startNodeAt(ye);return J.length&&(Po.decorators=J),zt&&(Po.accessibility=zt),wr&&(Po.readonly=wr),Zr&&(Po.override=Zr),Dn.type!=="Identifier"&&Dn.type!=="AssignmentPattern"&&this.raise(Li.UnsupportedParameterPropertyKind,Po),Po.parameter=Dn,this.finishNode(Po,"TSParameterProperty")}return J.length&&(Yn.decorators=J),Dn}isSimpleParameter(w){return w.type==="TSParameterProperty"&&super.isSimpleParameter(w.parameter)||super.isSimpleParameter(w)}tsDisallowOptionalPattern(w){for(let J of w.params)J.type!=="Identifier"&&J.optional&&!this.state.isAmbientContext&&this.raise(Li.PatternIsOptional,J)}setArrowFunctionParameters(w,J,ye){super.setArrowFunctionParameters(w,J,ye),this.tsDisallowOptionalPattern(w)}parseFunctionBodyAndFinish(w,J,ye=!1){this.match(14)&&(w.returnType=this.tsParseTypeOrTypePredicateAnnotation(14));let ut=J==="FunctionDeclaration"?"TSDeclareFunction":J==="ClassMethod"||J==="ClassPrivateMethod"?"TSDeclareMethod":void 0;return ut&&!this.match(5)&&this.isLineTerminator()?this.finishNode(w,ut):ut==="TSDeclareFunction"&&this.state.isAmbientContext&&(this.raise(Li.DeclareFunctionHasImplementation,w),w.declare)?super.parseFunctionBodyAndFinish(w,ut,ye):(this.tsDisallowOptionalPattern(w),super.parseFunctionBodyAndFinish(w,J,ye))}registerFunctionStatementId(w){!w.body&&w.id?this.checkIdentifier(w.id,1024):super.registerFunctionStatementId(w)}tsCheckForInvalidTypeCasts(w){w.forEach(J=>{J?.type==="TSTypeCastExpression"&&this.raise(Li.UnexpectedTypeAnnotation,J.typeAnnotation)})}toReferencedList(w,J){return this.tsCheckForInvalidTypeCasts(w),w}parseArrayLike(w,J,ye,ut){let zt=super.parseArrayLike(w,J,ye,ut);return zt.type==="ArrayExpression"&&this.tsCheckForInvalidTypeCasts(zt.elements),zt}parseSubscript(w,J,ye,ut){if(!this.hasPrecedingLineBreak()&&this.match(35)){this.state.canStartJSXElement=!1,this.next();let Zr=this.startNodeAt(J);return Zr.expression=w,this.finishNode(Zr,"TSNonNullExpression")}let zt=!1;if(this.match(18)&&this.lookaheadCharCode()===60){if(ye)return ut.stop=!0,w;ut.optionalChainMember=zt=!0,this.next()}if(this.match(47)||this.match(51)){let Zr,wr=this.tsTryParseAndCatch(()=>{if(!ye&&this.atPossibleAsyncArrow(w)){let fc=this.tsTryParseGenericAsyncArrowFunction(J);if(fc)return fc}let Yn=this.tsParseTypeArgumentsInExpression();if(!Yn)return;if(zt&&!this.match(10)){Zr=this.state.curPosition();return}if(Ir(this.state.type)){let fc=super.parseTaggedTemplateExpression(w,J,ut);return fc.typeParameters=Yn,fc}if(!ye&&this.eat(10)){let fc=this.startNodeAt(J);return fc.callee=w,fc.arguments=this.parseCallExpressionArguments(11),this.tsCheckForInvalidTypeCasts(fc.arguments),fc.typeParameters=Yn,ut.optionalChainMember&&(fc.optional=zt),this.finishCallExpression(fc,ut.optionalChainMember)}let Dn=this.state.type;if(Dn===48||Dn===52||Dn!==10&&ka(Dn)&&!this.hasPrecedingLineBreak())return;let Po=this.startNodeAt(J);return Po.expression=w,Po.typeParameters=Yn,this.finishNode(Po,"TSInstantiationExpression")});if(Zr&&this.unexpected(Zr,10),wr)return wr.type==="TSInstantiationExpression"&&(this.match(16)||this.match(18)&&this.lookaheadCharCode()!==40)&&this.raise(Li.InvalidPropertyAccessAfterInstantiationExpression,this.state.startLoc),wr}return super.parseSubscript(w,J,ye,ut)}parseNewCallee(w){var J;super.parseNewCallee(w);let{callee:ye}=w;ye.type==="TSInstantiationExpression"&&!((J=ye.extra)!=null&&J.parenthesized)&&(w.typeParameters=ye.typeParameters,w.callee=ye.expression)}parseExprOp(w,J,ye){let ut;if(jr(58)>ye&&!this.hasPrecedingLineBreak()&&(this.isContextual(93)||(ut=this.isContextual(120)))){let zt=this.startNodeAt(J);return zt.expression=w,zt.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?(ut&&this.raise(U.UnexpectedKeyword,this.state.startLoc,{keyword:"const"}),this.tsParseTypeReference()):this.tsParseType())),this.finishNode(zt,ut?"TSSatisfiesExpression":"TSAsExpression"),this.reScan_lt_gt(),this.parseExprOp(zt,J,ye)}return super.parseExprOp(w,J,ye)}checkReservedWord(w,J,ye,ut){this.state.isAmbientContext||super.checkReservedWord(w,J,ye,ut)}checkImportReflection(w){super.checkImportReflection(w),w.module&&w.importKind!=="value"&&this.raise(Li.ImportReflectionHasImportType,w.specifiers[0].loc.start)}checkDuplicateExports(){}isPotentialImportPhase(w){if(super.isPotentialImportPhase(w))return!0;if(this.isContextual(130)){let J=this.lookaheadCharCode();return w?J===123||J===42:J!==61}return!w&&this.isContextual(87)}applyImportPhase(w,J,ye,ut){super.applyImportPhase(w,J,ye,ut),J?w.exportKind=ye==="type"?"type":"value":w.importKind=ye==="type"||ye==="typeof"?ye:"value"}parseImport(w){if(this.match(134))return w.importKind="value",super.parseImport(w);let J;if(gn(this.state.type)&&this.lookaheadCharCode()===61)return w.importKind="value",this.tsParseImportEqualsDeclaration(w);if(this.isContextual(130)){let ye=this.parseMaybeImportPhase(w,!1);if(this.lookaheadCharCode()===61)return this.tsParseImportEqualsDeclaration(w,ye);J=super.parseImportSpecifiersAndAfter(w,ye)}else J=super.parseImport(w);return J.importKind==="type"&&J.specifiers.length>1&&J.specifiers[0].type==="ImportDefaultSpecifier"&&this.raise(Li.TypeImportCannotSpecifyDefaultAndNamed,J),J}parseExport(w,J){if(this.match(83)){let ye=w;this.next();let ut=null;return this.isContextual(130)&&this.isPotentialImportPhase(!1)?ut=this.parseMaybeImportPhase(ye,!1):ye.importKind="value",this.tsParseImportEqualsDeclaration(ye,ut,!0)}else if(this.eat(29)){let ye=w;return ye.expression=super.parseExpression(),this.semicolon(),this.sawUnambiguousESM=!0,this.finishNode(ye,"TSExportAssignment")}else if(this.eatContextual(93)){let ye=w;return this.expectContextual(128),ye.id=this.parseIdentifier(),this.semicolon(),this.finishNode(ye,"TSNamespaceExportDeclaration")}else return super.parseExport(w,J)}isAbstractClass(){return this.isContextual(124)&&this.lookahead().type===80}parseExportDefaultExpression(){if(this.isAbstractClass()){let w=this.startNode();return this.next(),w.abstract=!0,this.parseClass(w,!0,!0)}if(this.match(129)){let w=this.tsParseInterfaceDeclaration(this.startNode());if(w)return w}return super.parseExportDefaultExpression()}parseVarStatement(w,J,ye=!1){let{isAmbientContext:ut}=this.state,zt=super.parseVarStatement(w,J,ye||ut);if(!ut)return zt;for(let{id:Zr,init:wr}of zt.declarations)wr&&(J!=="const"||Zr.typeAnnotation?this.raise(Li.InitializerNotAllowedInAmbientContext,wr):Qm(wr,this.hasPlugin("estree"))||this.raise(Li.ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference,wr));return zt}parseStatementContent(w,J){if(this.match(75)&&this.isLookaheadContextual("enum")){let ye=this.startNode();return this.expect(75),this.tsParseEnumDeclaration(ye,{const:!0})}if(this.isContextual(126))return this.tsParseEnumDeclaration(this.startNode());if(this.isContextual(129)){let ye=this.tsParseInterfaceDeclaration(this.startNode());if(ye)return ye}return super.parseStatementContent(w,J)}parseAccessModifier(){return this.tsParseModifier(["public","protected","private"])}tsHasSomeModifiers(w,J){return J.some(ye=>RA(ye)?w.accessibility===ye:!!w[ye])}tsIsStartOfStaticBlocks(){return this.isContextual(106)&&this.lookaheadCharCode()===123}parseClassMember(w,J,ye){let ut=["declare","private","public","protected","override","abstract","readonly","static"];this.tsParseModifiers({allowedModifiers:ut,disallowedModifiers:["in","out"],stopOnStartOfClassStaticBlock:!0,errorTemplate:Li.InvalidModifierOnTypeParameterPositions},J);let zt=()=>{this.tsIsStartOfStaticBlocks()?(this.next(),this.next(),this.tsHasSomeModifiers(J,ut)&&this.raise(Li.StaticBlockCannotHaveModifier,this.state.curPosition()),super.parseClassStaticBlock(w,J)):this.parseClassMemberWithIsStatic(w,J,ye,!!J.static)};J.declare?this.tsInAmbientContext(zt):zt()}parseClassMemberWithIsStatic(w,J,ye,ut){let zt=this.tsTryParseIndexSignature(J);if(zt){w.body.push(zt),J.abstract&&this.raise(Li.IndexSignatureHasAbstract,J),J.accessibility&&this.raise(Li.IndexSignatureHasAccessibility,J,{modifier:J.accessibility}),J.declare&&this.raise(Li.IndexSignatureHasDeclare,J),J.override&&this.raise(Li.IndexSignatureHasOverride,J);return}!this.state.inAbstractClass&&J.abstract&&this.raise(Li.NonAbstractClassHasAbstractMethod,J),J.override&&(ye.hadSuperClass||this.raise(Li.OverrideNotInSubClass,J)),super.parseClassMemberWithIsStatic(w,J,ye,ut)}parsePostMemberNameModifiers(w){this.eat(17)&&(w.optional=!0),w.readonly&&this.match(10)&&this.raise(Li.ClassMethodHasReadonly,w),w.declare&&this.match(10)&&this.raise(Li.ClassMethodHasDeclare,w)}parseExpressionStatement(w,J,ye){return(J.type==="Identifier"?this.tsParseExpressionStatement(w,J,ye):void 0)||super.parseExpressionStatement(w,J,ye)}shouldParseExportDeclaration(){return this.tsIsDeclarationStart()?!0:super.shouldParseExportDeclaration()}parseConditional(w,J,ye){if(!this.state.maybeInArrowParameters||!this.match(17))return super.parseConditional(w,J,ye);let ut=this.tryParse(()=>super.parseConditional(w,J));return ut.node?(ut.error&&(this.state=ut.failState),ut.node):(ut.error&&super.setOptionalParametersError(ye,ut.error),w)}parseParenItem(w,J){let ye=super.parseParenItem(w,J);if(this.eat(17)&&(ye.optional=!0,this.resetEndLocation(w)),this.match(14)){let ut=this.startNodeAt(J);return ut.expression=w,ut.typeAnnotation=this.tsParseTypeAnnotation(),this.finishNode(ut,"TSTypeCastExpression")}return w}parseExportDeclaration(w){if(!this.state.isAmbientContext&&this.isContextual(125))return this.tsInAmbientContext(()=>this.parseExportDeclaration(w));let J=this.state.startLoc,ye=this.eatContextual(125);if(ye&&(this.isContextual(125)||!this.shouldParseExportDeclaration()))throw this.raise(Li.ExpectedAmbientAfterExportDeclare,this.state.startLoc);let ut=gn(this.state.type)&&this.tsTryParseExportDeclaration()||super.parseExportDeclaration(w);return ut?((ut.type==="TSInterfaceDeclaration"||ut.type==="TSTypeAliasDeclaration"||ye)&&(w.exportKind="type"),ye&&ut.type!=="TSImportEqualsDeclaration"&&(this.resetStartLocation(ut,J),ut.declare=!0),ut):null}parseClassId(w,J,ye,ut){if((!J||ye)&&this.isContextual(113))return;super.parseClassId(w,J,ye,w.declare?1024:8331);let zt=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers);zt&&(w.typeParameters=zt)}parseClassPropertyAnnotation(w){w.optional||(this.eat(35)?w.definite=!0:this.eat(17)&&(w.optional=!0));let J=this.tsTryParseTypeAnnotation();J&&(w.typeAnnotation=J)}parseClassProperty(w){if(this.parseClassPropertyAnnotation(w),this.state.isAmbientContext&&!(w.readonly&&!w.typeAnnotation)&&this.match(29)&&this.raise(Li.DeclareClassFieldHasInitializer,this.state.startLoc),w.abstract&&this.match(29)){let{key:J}=w;this.raise(Li.AbstractPropertyHasInitializer,this.state.startLoc,{propertyName:J.type==="Identifier"&&!w.computed?J.name:`[${this.input.slice(this.offsetToSourcePos(J.start),this.offsetToSourcePos(J.end))}]`})}return super.parseClassProperty(w)}parseClassPrivateProperty(w){return w.abstract&&this.raise(Li.PrivateElementHasAbstract,w),w.accessibility&&this.raise(Li.PrivateElementHasAccessibility,w,{modifier:w.accessibility}),this.parseClassPropertyAnnotation(w),super.parseClassPrivateProperty(w)}parseClassAccessorProperty(w){return this.parseClassPropertyAnnotation(w),w.optional&&this.raise(Li.AccessorCannotBeOptional,w),super.parseClassAccessorProperty(w)}pushClassMethod(w,J,ye,ut,zt,Zr){let wr=this.tsTryParseTypeParameters(this.tsParseConstModifier);wr&&zt&&this.raise(Li.ConstructorHasTypeParameters,wr);let{declare:Yn=!1,kind:Dn}=J;Yn&&(Dn==="get"||Dn==="set")&&this.raise(Li.DeclareAccessor,J,{kind:Dn}),wr&&(J.typeParameters=wr),super.pushClassMethod(w,J,ye,ut,zt,Zr)}pushClassPrivateMethod(w,J,ye,ut){let zt=this.tsTryParseTypeParameters(this.tsParseConstModifier);zt&&(J.typeParameters=zt),super.pushClassPrivateMethod(w,J,ye,ut)}declareClassPrivateMethodInScope(w,J){w.type!=="TSDeclareMethod"&&(w.type==="MethodDefinition"&&!hasOwnProperty.call(w.value,"body")||super.declareClassPrivateMethodInScope(w,J))}parseClassSuper(w){super.parseClassSuper(w),w.superClass&&(this.match(47)||this.match(51))&&(w.superTypeParameters=this.tsParseTypeArgumentsInExpression()),this.eatContextual(113)&&(w.implements=this.tsParseHeritageClause("implements"))}parseObjPropValue(w,J,ye,ut,zt,Zr,wr){let Yn=this.tsTryParseTypeParameters(this.tsParseConstModifier);return Yn&&(w.typeParameters=Yn),super.parseObjPropValue(w,J,ye,ut,zt,Zr,wr)}parseFunctionParams(w,J){let ye=this.tsTryParseTypeParameters(this.tsParseConstModifier);ye&&(w.typeParameters=ye),super.parseFunctionParams(w,J)}parseVarId(w,J){super.parseVarId(w,J),w.id.type==="Identifier"&&!this.hasPrecedingLineBreak()&&this.eat(35)&&(w.definite=!0);let ye=this.tsTryParseTypeAnnotation();ye&&(w.id.typeAnnotation=ye,this.resetEndLocation(w.id))}parseAsyncArrowFromCallExpression(w,J){return this.match(14)&&(w.returnType=this.tsParseTypeAnnotation()),super.parseAsyncArrowFromCallExpression(w,J)}parseMaybeAssign(w,J){var ye,ut,zt,Zr,wr;let Yn,Dn,Po;if(this.hasPlugin("jsx")&&(this.match(143)||this.match(47))){if(Yn=this.state.clone(),Dn=this.tryParse(()=>super.parseMaybeAssign(w,J),Yn),!Dn.error)return Dn.node;let{context:Yo}=this.state,yu=Yo[Yo.length-1];(yu===Te.j_oTag||yu===Te.j_expr)&&Yo.pop()}if(!((ye=Dn)!=null&&ye.error)&&!this.match(47))return super.parseMaybeAssign(w,J);(!Yn||Yn===this.state)&&(Yn=this.state.clone());let fc,Xc=this.tryParse(Yo=>{var yu,op;fc=this.tsParseTypeParameters(this.tsParseConstModifier);let lA=super.parseMaybeAssign(w,J);return(lA.type!=="ArrowFunctionExpression"||(yu=lA.extra)!=null&&yu.parenthesized)&&Yo(),((op=fc)==null?void 0:op.params.length)!==0&&this.resetStartLocationFromNode(lA,fc),lA.typeParameters=fc,lA},Yn);if(!Xc.error&&!Xc.aborted)return fc&&this.reportReservedArrowTypeParam(fc),Xc.node;if(!Dn&&(Ks(!this.hasPlugin("jsx")),Po=this.tryParse(()=>super.parseMaybeAssign(w,J),Yn),!Po.error))return Po.node;if((ut=Dn)!=null&&ut.node)return this.state=Dn.failState,Dn.node;if(Xc.node)return this.state=Xc.failState,fc&&this.reportReservedArrowTypeParam(fc),Xc.node;if((zt=Po)!=null&&zt.node)return this.state=Po.failState,Po.node;throw((Zr=Dn)==null?void 0:Zr.error)||Xc.error||((wr=Po)==null?void 0:wr.error)}reportReservedArrowTypeParam(w){var J;w.params.length===1&&!w.params[0].constraint&&!((J=w.extra)!=null&&J.trailingComma)&&this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(Li.ReservedArrowTypeParam,w)}parseMaybeUnary(w,J){return!this.hasPlugin("jsx")&&this.match(47)?this.tsParseTypeAssertion():super.parseMaybeUnary(w,J)}parseArrow(w){if(this.match(14)){let J=this.tryParse(ye=>{let ut=this.tsParseTypeOrTypePredicateAnnotation(14);return(this.canInsertSemicolon()||!this.match(19))&&ye(),ut});if(J.aborted)return;J.thrown||(J.error&&(this.state=J.failState),w.returnType=J.node)}return super.parseArrow(w)}parseFunctionParamType(w){this.eat(17)&&(w.optional=!0);let J=this.tsTryParseTypeAnnotation();return J&&(w.typeAnnotation=J),this.resetEndLocation(w),w}isAssignable(w,J){switch(w.type){case"TSTypeCastExpression":return this.isAssignable(w.expression,J);case"TSParameterProperty":return!0;default:return super.isAssignable(w,J)}}toAssignable(w,J=!1){switch(w.type){case"ParenthesizedExpression":this.toAssignableParenthesizedExpression(w,J);break;case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":J?this.expressionScope.recordArrowParameterBindingError(Li.UnexpectedTypeCastInParameter,w):this.raise(Li.UnexpectedTypeCastInParameter,w),this.toAssignable(w.expression,J);break;case"AssignmentExpression":!J&&w.left.type==="TSTypeCastExpression"&&(w.left=this.typeCastToParameter(w.left));default:super.toAssignable(w,J)}}toAssignableParenthesizedExpression(w,J){switch(w.expression.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":case"ParenthesizedExpression":this.toAssignable(w.expression,J);break;default:super.toAssignable(w,J)}}checkToRestConversion(w,J){switch(w.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":this.checkToRestConversion(w.expression,!1);break;default:super.checkToRestConversion(w,J)}}isValidLVal(w,J,ye){switch(w){case"TSTypeCastExpression":return!0;case"TSParameterProperty":return"parameter";case"TSNonNullExpression":case"TSInstantiationExpression":return"expression";case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":return(ye!==64||!J)&&["expression",!0];default:return super.isValidLVal(w,J,ye)}}parseBindingAtom(){return this.state.type===78?this.parseIdentifier(!0):super.parseBindingAtom()}parseMaybeDecoratorArguments(w,J){if(this.match(47)||this.match(51)){let ye=this.tsParseTypeArgumentsInExpression();if(this.match(10)){let ut=super.parseMaybeDecoratorArguments(w,J);return ut.typeParameters=ye,ut}this.unexpected(null,10)}return super.parseMaybeDecoratorArguments(w,J)}checkCommaAfterRest(w){return this.state.isAmbientContext&&this.match(12)&&this.lookaheadCharCode()===w?(this.next(),!1):super.checkCommaAfterRest(w)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(35)||this.match(14)||super.isClassProperty()}parseMaybeDefault(w,J){let ye=super.parseMaybeDefault(w,J);return ye.type==="AssignmentPattern"&&ye.typeAnnotation&&ye.right.startthis.isAssignable(J,!0)):super.shouldParseArrow(w)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}canHaveLeadingDecorator(){return super.canHaveLeadingDecorator()||this.isAbstractClass()}jsxParseOpeningElementAfterName(w){if(this.match(47)||this.match(51)){let J=this.tsTryParseAndCatch(()=>this.tsParseTypeArgumentsInExpression());J&&(w.typeParameters=J)}return super.jsxParseOpeningElementAfterName(w)}getGetterSetterExpectedParamCount(w){let J=super.getGetterSetterExpectedParamCount(w),ye=this.getObjectOrClassMethodParams(w)[0];return ye&&this.isThisParam(ye)?J+1:J}parseCatchClauseParam(){let w=super.parseCatchClauseParam(),J=this.tsTryParseTypeAnnotation();return J&&(w.typeAnnotation=J,this.resetEndLocation(w)),w}tsInAmbientContext(w){let{isAmbientContext:J,strict:ye}=this.state;this.state.isAmbientContext=!0,this.state.strict=!1;try{return w()}finally{this.state.isAmbientContext=J,this.state.strict=ye}}parseClass(w,J,ye){let ut=this.state.inAbstractClass;this.state.inAbstractClass=!!w.abstract;try{return super.parseClass(w,J,ye)}finally{this.state.inAbstractClass=ut}}tsParseAbstractDeclaration(w,J){if(this.match(80))return w.abstract=!0,this.maybeTakeDecorators(J,this.parseClass(w,!0,!1));if(this.isContextual(129)){if(!this.hasFollowingLineBreak())return w.abstract=!0,this.raise(Li.NonClassMethodPropertyHasAbstractModifer,w),this.tsParseInterfaceDeclaration(w)}else this.unexpected(null,80)}parseMethod(w,J,ye,ut,zt,Zr,wr){let Yn=super.parseMethod(w,J,ye,ut,zt,Zr,wr);if(Yn.abstract&&(this.hasPlugin("estree")?Yn.value:Yn).body){let{key:Dn}=Yn;this.raise(Li.AbstractMethodHasImplementation,Yn,{methodName:Dn.type==="Identifier"&&!Yn.computed?Dn.name:`[${this.input.slice(this.offsetToSourcePos(Dn.start),this.offsetToSourcePos(Dn.end))}]`})}return Yn}tsParseTypeParameterName(){return this.parseIdentifier().name}shouldParseAsAmbientContext(){return!!this.getPluginOption("typescript","dts")}parse(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),super.parse()}getExpression(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),super.getExpression()}parseExportSpecifier(w,J,ye,ut){return!J&&ut?(this.parseTypeOnlyImportExportSpecifier(w,!1,ye),this.finishNode(w,"ExportSpecifier")):(w.exportKind="value",super.parseExportSpecifier(w,J,ye,ut))}parseImportSpecifier(w,J,ye,ut,zt){return!J&&ut?(this.parseTypeOnlyImportExportSpecifier(w,!0,ye),this.finishNode(w,"ImportSpecifier")):(w.importKind="value",super.parseImportSpecifier(w,J,ye,ut,ye?4098:4096))}parseTypeOnlyImportExportSpecifier(w,J,ye){let ut=J?"imported":"local",zt=J?"local":"exported",Zr=w[ut],wr,Yn=!1,Dn=!0,Po=Zr.loc.start;if(this.isContextual(93)){let Xc=this.parseIdentifier();if(this.isContextual(93)){let Yo=this.parseIdentifier();we(this.state.type)?(Yn=!0,Zr=Xc,wr=J?this.parseIdentifier():this.parseModuleExportName(),Dn=!1):(wr=Yo,Dn=!1)}else we(this.state.type)?(Dn=!1,wr=J?this.parseIdentifier():this.parseModuleExportName()):(Yn=!0,Zr=Xc)}else we(this.state.type)&&(Yn=!0,J?(Zr=this.parseIdentifier(!0),this.isContextual(93)||this.checkReservedWord(Zr.name,Zr.loc.start,!0,!0)):Zr=this.parseModuleExportName());Yn&&ye&&this.raise(J?Li.TypeModifierIsUsedInTypeImports:Li.TypeModifierIsUsedInTypeExports,Po),w[ut]=Zr,w[zt]=wr;let fc=J?"importKind":"exportKind";w[fc]=Yn?"type":"value",Dn&&this.eatContextual(93)&&(w[zt]=J?this.parseIdentifier():this.parseModuleExportName()),w[zt]||(w[zt]=ii(w[ut])),J&&this.checkIdentifier(w[zt],Yn?4098:4096)}};function pl(ie){if(ie.type!=="MemberExpression")return!1;let{computed:w,property:J}=ie;return w&&J.type!=="StringLiteral"&&(J.type!=="TemplateLiteral"||J.expressions.length>0)?!1:eA(ie.object)}function Qm(ie,w){var J;let{type:ye}=ie;if((J=ie.extra)!=null&&J.parenthesized)return!1;if(w){if(ye==="Literal"){let{value:ut}=ie;if(typeof ut=="string"||typeof ut=="boolean")return!0}}else if(ye==="StringLiteral"||ye==="BooleanLiteral")return!0;return!!(f1(ie,w)||fv(ie,w)||ye==="TemplateLiteral"&&ie.expressions.length===0||pl(ie))}function f1(ie,w){return w?ie.type==="Literal"&&(typeof ie.value=="number"||"bigint"in ie):ie.type==="NumericLiteral"||ie.type==="BigIntLiteral"}function fv(ie,w){if(ie.type==="UnaryExpression"){let{operator:J,argument:ye}=ie;if(J==="-"&&f1(ye,w))return!0}return!1}function eA(ie){return ie.type==="Identifier"?!0:ie.type!=="MemberExpression"||ie.computed?!1:eA(ie.object)}var Nm=X`placeholders`({ClassNameIsRequired:"A class name is required.",UnexpectedSpace:"Unexpected space in placeholder."}),lh=ie=>class extends ie{parsePlaceholder(w){if(this.match(133)){let J=this.startNode();return this.next(),this.assertNoSpace(),J.name=super.parseIdentifier(!0),this.assertNoSpace(),this.expect(133),this.finishPlaceholder(J,w)}}finishPlaceholder(w,J){let ye=w;return(!ye.expectedNode||!ye.type)&&(ye=this.finishNode(ye,"Placeholder")),ye.expectedNode=J,ye}getTokenFromCode(w){w===37&&this.input.charCodeAt(this.state.pos+1)===37?this.finishOp(133,2):super.getTokenFromCode(w)}parseExprAtom(w){return this.parsePlaceholder("Expression")||super.parseExprAtom(w)}parseIdentifier(w){return this.parsePlaceholder("Identifier")||super.parseIdentifier(w)}checkReservedWord(w,J,ye,ut){w!==void 0&&super.checkReservedWord(w,J,ye,ut)}parseBindingAtom(){return this.parsePlaceholder("Pattern")||super.parseBindingAtom()}isValidLVal(w,J,ye){return w==="Placeholder"||super.isValidLVal(w,J,ye)}toAssignable(w,J){w&&w.type==="Placeholder"&&w.expectedNode==="Expression"?w.expectedNode="Pattern":super.toAssignable(w,J)}chStartsBindingIdentifier(w,J){return!!(super.chStartsBindingIdentifier(w,J)||this.lookahead().type===133)}verifyBreakContinue(w,J){w.label&&w.label.type==="Placeholder"||super.verifyBreakContinue(w,J)}parseExpressionStatement(w,J){var ye;if(J.type!=="Placeholder"||(ye=J.extra)!=null&&ye.parenthesized)return super.parseExpressionStatement(w,J);if(this.match(14)){let zt=w;return zt.label=this.finishPlaceholder(J,"Identifier"),this.next(),zt.body=super.parseStatementOrSloppyAnnexBFunctionDeclaration(),this.finishNode(zt,"LabeledStatement")}this.semicolon();let ut=w;return ut.name=J.name,this.finishPlaceholder(ut,"Statement")}parseBlock(w,J,ye){return this.parsePlaceholder("BlockStatement")||super.parseBlock(w,J,ye)}parseFunctionId(w){return this.parsePlaceholder("Identifier")||super.parseFunctionId(w)}parseClass(w,J,ye){let ut=J?"ClassDeclaration":"ClassExpression";this.next();let zt=this.state.strict,Zr=this.parsePlaceholder("Identifier");if(Zr)if(this.match(81)||this.match(133)||this.match(5))w.id=Zr;else{if(ye||!J)return w.id=null,w.body=this.finishPlaceholder(Zr,"ClassBody"),this.finishNode(w,ut);throw this.raise(Nm.ClassNameIsRequired,this.state.startLoc)}else this.parseClassId(w,J,ye);return super.parseClassSuper(w),w.body=this.parsePlaceholder("ClassBody")||super.parseClassBody(!!w.superClass,zt),this.finishNode(w,ut)}parseExport(w,J){let ye=this.parsePlaceholder("Identifier");if(!ye)return super.parseExport(w,J);let ut=w;if(!this.isContextual(98)&&!this.match(12))return ut.specifiers=[],ut.source=null,ut.declaration=this.finishPlaceholder(ye,"Declaration"),this.finishNode(ut,"ExportNamedDeclaration");this.expectPlugin("exportDefaultFrom");let zt=this.startNode();return zt.exported=ye,ut.specifiers=[this.finishNode(zt,"ExportDefaultSpecifier")],super.parseExport(ut,J)}isExportDefaultSpecifier(){if(this.match(65)){let w=this.nextTokenStart();if(this.isUnparsedContextual(w,"from")&&this.input.startsWith(Ld(133),this.nextTokenStartSince(w+4)))return!0}return super.isExportDefaultSpecifier()}maybeParseExportDefaultSpecifier(w,J){var ye;return(ye=w.specifiers)!=null&&ye.length?!0:super.maybeParseExportDefaultSpecifier(w,J)}checkExport(w){let{specifiers:J}=w;J!=null&&J.length&&(w.specifiers=J.filter(ye=>ye.exported.type==="Placeholder")),super.checkExport(w),w.specifiers=J}parseImport(w){let J=this.parsePlaceholder("Identifier");if(!J)return super.parseImport(w);if(w.specifiers=[],!this.isContextual(98)&&!this.match(12))return w.source=this.finishPlaceholder(J,"StringLiteral"),this.semicolon(),this.finishNode(w,"ImportDeclaration");let ye=this.startNodeAtNode(J);return ye.local=J,w.specifiers.push(this.finishNode(ye,"ImportDefaultSpecifier")),this.eat(12)&&(this.maybeParseStarImportSpecifier(w)||this.parseNamedImportSpecifiers(w)),this.expectContextual(98),w.source=this.parseImportSource(),this.semicolon(),this.finishNode(w,"ImportDeclaration")}parseImportSource(){return this.parsePlaceholder("StringLiteral")||super.parseImportSource()}assertNoSpace(){this.state.start>this.offsetToSourcePos(this.state.lastTokEndLoc.index)&&this.raise(Nm.UnexpectedSpace,this.state.lastTokEndLoc)}},Oy=ie=>class extends ie{parseV8Intrinsic(){if(this.match(54)){let w=this.state.startLoc,J=this.startNode();if(this.next(),gn(this.state.type)){let ye=this.parseIdentifierName(),ut=this.createIdentifier(J,ye);if(ut.type="V8IntrinsicIdentifier",this.match(10))return ut}this.unexpected(w)}}parseExprAtom(w){return this.parseV8Intrinsic()||super.parseExprAtom(w)}},vp=["minimal","fsharp","hack","smart"],tA=["^^","@@","^","%","#"];function R0(ie){if(ie.has("decorators")){if(ie.has("decorators-legacy"))throw new Error("Cannot use the decorators and decorators-legacy plugin together");let J=ie.get("decorators").decoratorsBeforeExport;if(J!=null&&typeof J!="boolean")throw new Error("'decoratorsBeforeExport' must be a boolean, if specified.");let ye=ie.get("decorators").allowCallParenthesized;if(ye!=null&&typeof ye!="boolean")throw new Error("'allowCallParenthesized' must be a boolean.")}if(ie.has("flow")&&ie.has("typescript"))throw new Error("Cannot combine flow and typescript plugins.");if(ie.has("placeholders")&&ie.has("v8intrinsic"))throw new Error("Cannot combine placeholders and v8intrinsic plugins.");if(ie.has("pipelineOperator")){var w;let J=ie.get("pipelineOperator").proposal;if(!vp.includes(J)){let ut=vp.map(zt=>`"${zt}"`).join(", ");throw new Error(`"pipelineOperator" requires "proposal" option whose value must be one of: ${ut}.`)}let ye=((w=ie.get("recordAndTuple"))==null?void 0:w.syntaxType)==="hash";if(J==="hack"){if(ie.has("placeholders"))throw new Error("Cannot combine placeholders plugin and Hack-style pipes.");if(ie.has("v8intrinsic"))throw new Error("Cannot combine v8intrinsic plugin and Hack-style pipes.");let ut=ie.get("pipelineOperator").topicToken;if(!tA.includes(ut)){let zt=tA.map(Zr=>`"${Zr}"`).join(", ");throw new Error(`"pipelineOperator" in "proposal": "hack" mode also requires a "topicToken" option whose value must be one of: ${zt}.`)}if(ut==="#"&&ye)throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "hack", topicToken: "#" }]\` and \`${JSON.stringify(["recordAndTuple",ie.get("recordAndTuple")])}\`.`)}else if(J==="smart"&&ye)throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "smart" }]\` and \`${JSON.stringify(["recordAndTuple",ie.get("recordAndTuple")])}\`.`)}if(ie.has("moduleAttributes")){if(ie.has("deprecatedImportAssert")||ie.has("importAssertions"))throw new Error("Cannot combine importAssertions, deprecatedImportAssert and moduleAttributes plugins.");if(ie.get("moduleAttributes").version!=="may-2020")throw new Error("The 'moduleAttributes' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is 'may-2020'.")}if(ie.has("importAssertions")&&ie.has("deprecatedImportAssert"))throw new Error("Cannot combine importAssertions and deprecatedImportAssert plugins.");if(!ie.has("deprecatedImportAssert")&&ie.has("importAttributes")&&ie.get("importAttributes").deprecatedAssertSyntax&&ie.set("deprecatedImportAssert",{}),ie.has("recordAndTuple")){let J=ie.get("recordAndTuple").syntaxType;if(J!=null){let ye=["hash","bar"];if(!ye.includes(J))throw new Error("The 'syntaxType' option of the 'recordAndTuple' plugin must be one of: "+ye.map(ut=>`'${ut}'`).join(", "))}}if(ie.has("asyncDoExpressions")&&!ie.has("doExpressions")){let J=new Error("'asyncDoExpressions' requires 'doExpressions', please add 'doExpressions' to parser plugins.");throw J.missingPlugins="doExpressions",J}if(ie.has("optionalChainingAssign")&&ie.get("optionalChainingAssign").version!=="2023-07")throw new Error("The 'optionalChainingAssign' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is '2023-07'.")}var _h={estree:he,jsx:Do,flow:Wp,typescript:WI,v8intrinsic:Oy,placeholders:lh},ly=Object.keys(_h),uc=class extends Di{checkProto(ie,w,J,ye){if(ie.type==="SpreadElement"||this.isObjectMethod(ie)||ie.computed||ie.shorthand)return;let ut=ie.key;if((ut.type==="Identifier"?ut.name:ut.value)==="__proto__"){if(w){this.raise(U.RecordNoProto,ut);return}J.used&&(ye?ye.doubleProtoLoc===null&&(ye.doubleProtoLoc=ut.loc.start):this.raise(U.DuplicateProto,ut)),J.used=!0}}shouldExitDescending(ie,w){return ie.type==="ArrowFunctionExpression"&&this.offsetToSourcePos(ie.start)===w}getExpression(){this.enterInitialScopes(),this.nextToken();let ie=this.parseExpression();return this.match(140)||this.unexpected(),this.finalizeRemainingComments(),ie.comments=this.comments,ie.errors=this.state.errors,this.optionFlags&128&&(ie.tokens=this.tokens),ie}parseExpression(ie,w){return ie?this.disallowInAnd(()=>this.parseExpressionBase(w)):this.allowInAnd(()=>this.parseExpressionBase(w))}parseExpressionBase(ie){let w=this.state.startLoc,J=this.parseMaybeAssign(ie);if(this.match(12)){let ye=this.startNodeAt(w);for(ye.expressions=[J];this.eat(12);)ye.expressions.push(this.parseMaybeAssign(ie));return this.toReferencedList(ye.expressions),this.finishNode(ye,"SequenceExpression")}return J}parseMaybeAssignDisallowIn(ie,w){return this.disallowInAnd(()=>this.parseMaybeAssign(ie,w))}parseMaybeAssignAllowIn(ie,w){return this.allowInAnd(()=>this.parseMaybeAssign(ie,w))}setOptionalParametersError(ie,w){var J;ie.optionalParametersLoc=(J=w?.loc)!=null?J:this.state.startLoc}parseMaybeAssign(ie,w){let J=this.state.startLoc;if(this.isContextual(108)&&this.prodParam.hasYield){let Zr=this.parseYield();return w&&(Zr=w.call(this,Zr,J)),Zr}let ye;ie?ye=!1:(ie=new LA,ye=!0);let{type:ut}=this.state;(ut===10||gn(ut))&&(this.state.potentialArrowAt=this.state.start);let zt=this.parseMaybeConditional(ie);if(w&&(zt=w.call(this,zt,J)),Qs(this.state.type)){let Zr=this.startNodeAt(J),wr=this.state.value;if(Zr.operator=wr,this.match(29)){this.toAssignable(zt,!0),Zr.left=zt;let Yn=J.index;ie.doubleProtoLoc!=null&&ie.doubleProtoLoc.index>=Yn&&(ie.doubleProtoLoc=null),ie.shorthandAssignLoc!=null&&ie.shorthandAssignLoc.index>=Yn&&(ie.shorthandAssignLoc=null),ie.privateKeyLoc!=null&&ie.privateKeyLoc.index>=Yn&&(this.checkDestructuringPrivate(ie),ie.privateKeyLoc=null)}else Zr.left=zt;return this.next(),Zr.right=this.parseMaybeAssign(),this.checkLVal(zt,this.finishNode(Zr,"AssignmentExpression")),Zr}else ye&&this.checkExpressionErrors(ie,!0);return zt}parseMaybeConditional(ie){let w=this.state.startLoc,J=this.state.potentialArrowAt,ye=this.parseExprOps(ie);return this.shouldExitDescending(ye,J)?ye:this.parseConditional(ye,w,ie)}parseConditional(ie,w,J){if(this.eat(17)){let ye=this.startNodeAt(w);return ye.test=ie,ye.consequent=this.parseMaybeAssignAllowIn(),this.expect(14),ye.alternate=this.parseMaybeAssign(),this.finishNode(ye,"ConditionalExpression")}return ie}parseMaybeUnaryOrPrivate(ie){return this.match(139)?this.parsePrivateName():this.parseMaybeUnary(ie)}parseExprOps(ie){let w=this.state.startLoc,J=this.state.potentialArrowAt,ye=this.parseMaybeUnaryOrPrivate(ie);return this.shouldExitDescending(ye,J)?ye:this.parseExprOp(ye,w,-1)}parseExprOp(ie,w,J){if(this.isPrivateName(ie)){let ut=this.getPrivateNameSV(ie);(J>=jr(58)||!this.prodParam.hasIn||!this.match(58))&&this.raise(U.PrivateInExpectedIn,ie,{identifierName:ut}),this.classScope.usePrivateName(ut,ie.loc.start)}let ye=this.state.type;if(Qu(ye)&&(this.prodParam.hasIn||!this.match(58))){let ut=jr(ye);if(ut>J){if(ye===39){if(this.expectPlugin("pipelineOperator"),this.state.inFSharpPipelineDirectBody)return ie;this.checkPipelineAtInfixOperator(ie,w)}let zt=this.startNodeAt(w);zt.left=ie,zt.operator=this.state.value;let Zr=ye===41||ye===42,wr=ye===40;if(wr&&(ut=jr(42)),this.next(),ye===39&&this.hasPlugin(["pipelineOperator",{proposal:"minimal"}])&&this.state.type===96&&this.prodParam.hasAwait)throw this.raise(U.UnexpectedAwaitAfterPipelineBody,this.state.startLoc);zt.right=this.parseExprOpRightExpr(ye,ut);let Yn=this.finishNode(zt,Zr||wr?"LogicalExpression":"BinaryExpression"),Dn=this.state.type;if(wr&&(Dn===41||Dn===42)||Zr&&Dn===40)throw this.raise(U.MixingCoalesceWithLogical,this.state.startLoc);return this.parseExprOp(Yn,w,J)}}return ie}parseExprOpRightExpr(ie,w){let J=this.state.startLoc;switch(ie){case 39:switch(this.getPluginOption("pipelineOperator","proposal")){case"hack":return this.withTopicBindingContext(()=>this.parseHackPipeBody());case"fsharp":return this.withSoloAwaitPermittingContext(()=>this.parseFSharpPipelineBody(w))}if(this.getPluginOption("pipelineOperator","proposal")==="smart")return this.withTopicBindingContext(()=>{if(this.prodParam.hasYield&&this.isContextual(108))throw this.raise(U.PipeBodyIsTighter,this.state.startLoc);return this.parseSmartPipelineBodyInStyle(this.parseExprOpBaseRightExpr(ie,w),J)});default:return this.parseExprOpBaseRightExpr(ie,w)}}parseExprOpBaseRightExpr(ie,w){let J=this.state.startLoc;return this.parseExprOp(this.parseMaybeUnaryOrPrivate(),J,Gr(ie)?w-1:w)}parseHackPipeBody(){var ie;let{startLoc:w}=this.state,J=this.parseMaybeAssign();return B.has(J.type)&&!((ie=J.extra)!=null&&ie.parenthesized)&&this.raise(U.PipeUnparenthesizedBody,w,{type:J.type}),this.topicReferenceWasUsedInCurrentContext()||this.raise(U.PipeTopicUnused,w),J}checkExponentialAfterUnary(ie){this.match(57)&&this.raise(U.UnexpectedTokenUnaryExponentiation,ie.argument)}parseMaybeUnary(ie,w){let J=this.state.startLoc,ye=this.isContextual(96);if(ye&&this.recordAwaitIfAllowed()){this.next();let wr=this.parseAwait(J);return w||this.checkExponentialAfterUnary(wr),wr}let ut=this.match(34),zt=this.startNode();if(YA(this.state.type)){zt.operator=this.state.value,zt.prefix=!0,this.match(72)&&this.expectPlugin("throwExpressions");let wr=this.match(89);if(this.next(),zt.argument=this.parseMaybeUnary(null,!0),this.checkExpressionErrors(ie,!0),this.state.strict&&wr){let Yn=zt.argument;Yn.type==="Identifier"?this.raise(U.StrictDelete,zt):this.hasPropertyAsPrivateName(Yn)&&this.raise(U.DeletePrivateField,zt)}if(!ut)return w||this.checkExponentialAfterUnary(zt),this.finishNode(zt,"UnaryExpression")}let Zr=this.parseUpdate(zt,ut,ie);if(ye){let{type:wr}=this.state;if((this.hasPlugin("v8intrinsic")?ka(wr):ka(wr)&&!this.match(54))&&!this.isAmbiguousAwait())return this.raiseOverwrite(U.AwaitNotInAsyncContext,J),this.parseAwait(J)}return Zr}parseUpdate(ie,w,J){if(w){let zt=ie;return this.checkLVal(zt.argument,this.finishNode(zt,"UpdateExpression")),ie}let ye=this.state.startLoc,ut=this.parseExprSubscripts(J);if(this.checkExpressionErrors(J,!1))return ut;for(;Yu(this.state.type)&&!this.canInsertSemicolon();){let zt=this.startNodeAt(ye);zt.operator=this.state.value,zt.prefix=!1,zt.argument=ut,this.next(),this.checkLVal(ut,ut=this.finishNode(zt,"UpdateExpression"))}return ut}parseExprSubscripts(ie){let w=this.state.startLoc,J=this.state.potentialArrowAt,ye=this.parseExprAtom(ie);return this.shouldExitDescending(ye,J)?ye:this.parseSubscripts(ye,w)}parseSubscripts(ie,w,J){let ye={optionalChainMember:!1,maybeAsyncArrow:this.atPossibleAsyncArrow(ie),stop:!1};do ie=this.parseSubscript(ie,w,J,ye),ye.maybeAsyncArrow=!1;while(!ye.stop);return ie}parseSubscript(ie,w,J,ye){let{type:ut}=this.state;if(!J&&ut===15)return this.parseBind(ie,w,J,ye);if(Ir(ut))return this.parseTaggedTemplateExpression(ie,w,ye);let zt=!1;if(ut===18){if(J&&(this.raise(U.OptionalChainingNoNew,this.state.startLoc),this.lookaheadCharCode()===40))return ye.stop=!0,ie;ye.optionalChainMember=zt=!0,this.next()}if(!J&&this.match(10))return this.parseCoverCallAndAsyncArrowHead(ie,w,ye,zt);{let Zr=this.eat(0);return Zr||zt||this.eat(16)?this.parseMember(ie,w,ye,Zr,zt):(ye.stop=!0,ie)}}parseMember(ie,w,J,ye,ut){let zt=this.startNodeAt(w);return zt.object=ie,zt.computed=ye,ye?(zt.property=this.parseExpression(),this.expect(3)):this.match(139)?(ie.type==="Super"&&this.raise(U.SuperPrivateField,w),this.classScope.usePrivateName(this.state.value,this.state.startLoc),zt.property=this.parsePrivateName()):zt.property=this.parseIdentifier(!0),J.optionalChainMember?(zt.optional=ut,this.finishNode(zt,"OptionalMemberExpression")):this.finishNode(zt,"MemberExpression")}parseBind(ie,w,J,ye){let ut=this.startNodeAt(w);return ut.object=ie,this.next(),ut.callee=this.parseNoCallExpr(),ye.stop=!0,this.parseSubscripts(this.finishNode(ut,"BindExpression"),w,J)}parseCoverCallAndAsyncArrowHead(ie,w,J,ye){let ut=this.state.maybeInArrowParameters,zt=null;this.state.maybeInArrowParameters=!0,this.next();let Zr=this.startNodeAt(w);Zr.callee=ie;let{maybeAsyncArrow:wr,optionalChainMember:Yn}=J;wr&&(this.expressionScope.enter(TC()),zt=new LA),Yn&&(Zr.optional=ye),ye?Zr.arguments=this.parseCallExpressionArguments(11):Zr.arguments=this.parseCallExpressionArguments(11,ie.type!=="Super",Zr,zt);let Dn=this.finishCallExpression(Zr,Yn);return wr&&this.shouldParseAsyncArrow()&&!ye?(J.stop=!0,this.checkDestructuringPrivate(zt),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),Dn=this.parseAsyncArrowFromCallExpression(this.startNodeAt(w),Dn)):(wr&&(this.checkExpressionErrors(zt,!0),this.expressionScope.exit()),this.toReferencedArguments(Dn)),this.state.maybeInArrowParameters=ut,Dn}toReferencedArguments(ie,w){this.toReferencedListDeep(ie.arguments,w)}parseTaggedTemplateExpression(ie,w,J){let ye=this.startNodeAt(w);return ye.tag=ie,ye.quasi=this.parseTemplate(!0),J.optionalChainMember&&this.raise(U.OptionalChainingNoTemplate,w),this.finishNode(ye,"TaggedTemplateExpression")}atPossibleAsyncArrow(ie){return ie.type==="Identifier"&&ie.name==="async"&&this.state.lastTokEndLoc.index===ie.end&&!this.canInsertSemicolon()&&ie.end-ie.start===5&&this.offsetToSourcePos(ie.start)===this.state.potentialArrowAt}finishCallExpression(ie,w){if(ie.callee.type==="Import")if(ie.arguments.length===0||ie.arguments.length>2)this.raise(U.ImportCallArity,ie);else for(let J of ie.arguments)J.type==="SpreadElement"&&this.raise(U.ImportCallSpreadArgument,J);return this.finishNode(ie,w?"OptionalCallExpression":"CallExpression")}parseCallExpressionArguments(ie,w,J,ye){let ut=[],zt=!0,Zr=this.state.inFSharpPipelineDirectBody;for(this.state.inFSharpPipelineDirectBody=!1;!this.eat(ie);){if(zt)zt=!1;else if(this.expect(12),this.match(ie)){J&&this.addTrailingCommaExtraToNode(J),this.next();break}ut.push(this.parseExprListItem(!1,ye,w))}return this.state.inFSharpPipelineDirectBody=Zr,ut}shouldParseAsyncArrow(){return this.match(19)&&!this.canInsertSemicolon()}parseAsyncArrowFromCallExpression(ie,w){var J;return this.resetPreviousNodeTrailingComments(w),this.expect(19),this.parseArrowExpression(ie,w.arguments,!0,(J=w.extra)==null?void 0:J.trailingCommaLoc),w.innerComments&&ei(ie,w.innerComments),w.callee.trailingComments&&ei(ie,w.callee.trailingComments),ie}parseNoCallExpr(){let ie=this.state.startLoc;return this.parseSubscripts(this.parseExprAtom(),ie,!0)}parseExprAtom(ie){let w,J=null,{type:ye}=this.state;switch(ye){case 79:return this.parseSuper();case 83:return w=this.startNode(),this.next(),this.match(16)?this.parseImportMetaProperty(w):this.match(10)?this.optionFlags&256?this.parseImportCall(w):this.finishNode(w,"Import"):(this.raise(U.UnsupportedImport,this.state.lastTokStartLoc),this.finishNode(w,"Import"));case 78:return w=this.startNode(),this.next(),this.finishNode(w,"ThisExpression");case 90:return this.parseDo(this.startNode(),!1);case 56:case 31:return this.readRegexp(),this.parseRegExpLiteral(this.state.value);case 135:return this.parseNumericLiteral(this.state.value);case 136:return this.parseBigIntLiteral(this.state.value);case 134:return this.parseStringLiteral(this.state.value);case 84:return this.parseNullLiteral();case 85:return this.parseBooleanLiteral(!0);case 86:return this.parseBooleanLiteral(!1);case 10:{let ut=this.state.potentialArrowAt===this.state.start;return this.parseParenAndDistinguishExpression(ut)}case 2:case 1:return this.parseArrayLike(this.state.type===2?4:3,!1,!0);case 0:return this.parseArrayLike(3,!0,!1,ie);case 6:case 7:return this.parseObjectLike(this.state.type===6?9:8,!1,!0);case 5:return this.parseObjectLike(8,!1,!1,ie);case 68:return this.parseFunctionOrFunctionSent();case 26:J=this.parseDecorators();case 80:return this.parseClass(this.maybeTakeDecorators(J,this.startNode()),!1);case 77:return this.parseNewOrNewTarget();case 25:case 24:return this.parseTemplate(!1);case 15:{w=this.startNode(),this.next(),w.object=null;let ut=w.callee=this.parseNoCallExpr();if(ut.type==="MemberExpression")return this.finishNode(w,"BindExpression");throw this.raise(U.UnsupportedBind,ut)}case 139:return this.raise(U.PrivateInExpectedIn,this.state.startLoc,{identifierName:this.state.value}),this.parsePrivateName();case 33:return this.parseTopicReferenceThenEqualsSign(54,"%");case 32:return this.parseTopicReferenceThenEqualsSign(44,"^");case 37:case 38:return this.parseTopicReference("hack");case 44:case 54:case 27:{let ut=this.getPluginOption("pipelineOperator","proposal");if(ut)return this.parseTopicReference(ut);this.unexpected();break}case 47:{let ut=this.input.codePointAt(this.nextTokenStart());pa(ut)||ut===62?this.expectOnePlugin(["jsx","flow","typescript"]):this.unexpected();break}default:if(ye===137)return this.parseDecimalLiteral(this.state.value);if(gn(ye)){if(this.isContextual(127)&&this.lookaheadInLineCharCode()===123)return this.parseModuleExpression();let ut=this.state.potentialArrowAt===this.state.start,zt=this.state.containsEsc,Zr=this.parseIdentifier();if(!zt&&Zr.name==="async"&&!this.canInsertSemicolon()){let{type:wr}=this.state;if(wr===68)return this.resetPreviousNodeTrailingComments(Zr),this.next(),this.parseAsyncFunctionExpression(this.startNodeAtNode(Zr));if(gn(wr))return this.lookaheadCharCode()===61?this.parseAsyncArrowUnaryFunction(this.startNodeAtNode(Zr)):Zr;if(wr===90)return this.resetPreviousNodeTrailingComments(Zr),this.parseDo(this.startNodeAtNode(Zr),!0)}return ut&&this.match(19)&&!this.canInsertSemicolon()?(this.next(),this.parseArrowExpression(this.startNodeAtNode(Zr),[Zr],!1)):Zr}else this.unexpected()}}parseTopicReferenceThenEqualsSign(ie,w){let J=this.getPluginOption("pipelineOperator","proposal");if(J)return this.state.type=ie,this.state.value=w,this.state.pos--,this.state.end--,this.state.endLoc=a(this.state.endLoc,-1),this.parseTopicReference(J);this.unexpected()}parseTopicReference(ie){let w=this.startNode(),J=this.state.startLoc,ye=this.state.type;return this.next(),this.finishTopicReference(w,J,ie,ye)}finishTopicReference(ie,w,J,ye){if(this.testTopicReferenceConfiguration(J,w,ye))return J==="hack"?(this.topicReferenceIsAllowedInCurrentContext()||this.raise(U.PipeTopicUnbound,w),this.registerTopicReference(),this.finishNode(ie,"TopicReference")):(this.topicReferenceIsAllowedInCurrentContext()||this.raise(U.PrimaryTopicNotAllowed,w),this.registerTopicReference(),this.finishNode(ie,"PipelinePrimaryTopicReference"));throw this.raise(U.PipeTopicUnconfiguredToken,w,{token:Ld(ye)})}testTopicReferenceConfiguration(ie,w,J){switch(ie){case"hack":return this.hasPlugin(["pipelineOperator",{topicToken:Ld(J)}]);case"smart":return J===27;default:throw this.raise(U.PipeTopicRequiresHackPipes,w)}}parseAsyncArrowUnaryFunction(ie){this.prodParam.enter(Bl(!0,this.prodParam.hasYield));let w=[this.parseIdentifier()];return this.prodParam.exit(),this.hasPrecedingLineBreak()&&this.raise(U.LineTerminatorBeforeArrow,this.state.curPosition()),this.expect(19),this.parseArrowExpression(ie,w,!0)}parseDo(ie,w){this.expectPlugin("doExpressions"),w&&this.expectPlugin("asyncDoExpressions"),ie.async=w,this.next();let J=this.state.labels;return this.state.labels=[],w?(this.prodParam.enter(2),ie.body=this.parseBlock(),this.prodParam.exit()):ie.body=this.parseBlock(),this.state.labels=J,this.finishNode(ie,"DoExpression")}parseSuper(){let ie=this.startNode();return this.next(),this.match(10)&&!this.scope.allowDirectSuper&&!(this.optionFlags&16)?this.raise(U.SuperNotAllowed,ie):!this.scope.allowSuper&&!(this.optionFlags&16)&&this.raise(U.UnexpectedSuper,ie),!this.match(10)&&!this.match(0)&&!this.match(16)&&this.raise(U.UnsupportedSuper,ie),this.finishNode(ie,"Super")}parsePrivateName(){let ie=this.startNode(),w=this.startNodeAt(a(this.state.startLoc,1)),J=this.state.value;return this.next(),ie.id=this.createIdentifier(w,J),this.finishNode(ie,"PrivateName")}parseFunctionOrFunctionSent(){let ie=this.startNode();if(this.next(),this.prodParam.hasYield&&this.match(16)){let w=this.createIdentifier(this.startNodeAtNode(ie),"function");return this.next(),this.match(103)?this.expectPlugin("functionSent"):this.hasPlugin("functionSent")||this.unexpected(),this.parseMetaProperty(ie,w,"sent")}return this.parseFunction(ie)}parseMetaProperty(ie,w,J){ie.meta=w;let ye=this.state.containsEsc;return ie.property=this.parseIdentifier(!0),(ie.property.name!==J||ye)&&this.raise(U.UnsupportedMetaProperty,ie.property,{target:w.name,onlyValidPropertyName:J}),this.finishNode(ie,"MetaProperty")}parseImportMetaProperty(ie){let w=this.createIdentifier(this.startNodeAtNode(ie),"import");if(this.next(),this.isContextual(101))this.inModule||this.raise(U.ImportMetaOutsideModule,w),this.sawUnambiguousESM=!0;else if(this.isContextual(105)||this.isContextual(97)){let J=this.isContextual(105);if(this.expectPlugin(J?"sourcePhaseImports":"deferredImportEvaluation"),!(this.optionFlags&256))throw this.raise(U.DynamicImportPhaseRequiresImportExpressions,this.state.startLoc,{phase:this.state.value});return this.next(),ie.phase=J?"source":"defer",this.parseImportCall(ie)}return this.parseMetaProperty(ie,w,"meta")}parseLiteralAtNode(ie,w,J){return this.addExtra(J,"rawValue",ie),this.addExtra(J,"raw",this.input.slice(this.offsetToSourcePos(J.start),this.state.end)),J.value=ie,this.next(),this.finishNode(J,w)}parseLiteral(ie,w){let J=this.startNode();return this.parseLiteralAtNode(ie,w,J)}parseStringLiteral(ie){return this.parseLiteral(ie,"StringLiteral")}parseNumericLiteral(ie){return this.parseLiteral(ie,"NumericLiteral")}parseBigIntLiteral(ie){return this.parseLiteral(ie,"BigIntLiteral")}parseDecimalLiteral(ie){return this.parseLiteral(ie,"DecimalLiteral")}parseRegExpLiteral(ie){let w=this.startNode();return this.addExtra(w,"raw",this.input.slice(this.offsetToSourcePos(w.start),this.state.end)),w.pattern=ie.pattern,w.flags=ie.flags,this.next(),this.finishNode(w,"RegExpLiteral")}parseBooleanLiteral(ie){let w=this.startNode();return w.value=ie,this.next(),this.finishNode(w,"BooleanLiteral")}parseNullLiteral(){let ie=this.startNode();return this.next(),this.finishNode(ie,"NullLiteral")}parseParenAndDistinguishExpression(ie){let w=this.state.startLoc,J;this.next(),this.expressionScope.enter(oc());let ye=this.state.maybeInArrowParameters,ut=this.state.inFSharpPipelineDirectBody;this.state.maybeInArrowParameters=!0,this.state.inFSharpPipelineDirectBody=!1;let zt=this.state.startLoc,Zr=[],wr=new LA,Yn=!0,Dn,Po;for(;!this.match(11);){if(Yn)Yn=!1;else if(this.expect(12,wr.optionalParametersLoc===null?null:wr.optionalParametersLoc),this.match(11)){Po=this.state.startLoc;break}if(this.match(21)){let Yo=this.state.startLoc;if(Dn=this.state.startLoc,Zr.push(this.parseParenItem(this.parseRestBinding(),Yo)),!this.checkCommaAfterRest(41))break}else Zr.push(this.parseMaybeAssignAllowIn(wr,this.parseParenItem))}let fc=this.state.lastTokEndLoc;this.expect(11),this.state.maybeInArrowParameters=ye,this.state.inFSharpPipelineDirectBody=ut;let Xc=this.startNodeAt(w);return ie&&this.shouldParseArrow(Zr)&&(Xc=this.parseArrow(Xc))?(this.checkDestructuringPrivate(wr),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),this.parseArrowExpression(Xc,Zr,!1),Xc):(this.expressionScope.exit(),Zr.length||this.unexpected(this.state.lastTokStartLoc),Po&&this.unexpected(Po),Dn&&this.unexpected(Dn),this.checkExpressionErrors(wr,!0),this.toReferencedListDeep(Zr,!0),Zr.length>1?(J=this.startNodeAt(zt),J.expressions=Zr,this.finishNode(J,"SequenceExpression"),this.resetEndLocation(J,fc)):J=Zr[0],this.wrapParenthesis(w,J))}wrapParenthesis(ie,w){if(!(this.optionFlags&512))return this.addExtra(w,"parenthesized",!0),this.addExtra(w,"parenStart",ie.index),this.takeSurroundingComments(w,ie.index,this.state.lastTokEndLoc.index),w;let J=this.startNodeAt(ie);return J.expression=w,this.finishNode(J,"ParenthesizedExpression")}shouldParseArrow(ie){return!this.canInsertSemicolon()}parseArrow(ie){if(this.eat(19))return ie}parseParenItem(ie,w){return ie}parseNewOrNewTarget(){let ie=this.startNode();if(this.next(),this.match(16)){let w=this.createIdentifier(this.startNodeAtNode(ie),"new");this.next();let J=this.parseMetaProperty(ie,w,"target");return!this.scope.inNonArrowFunction&&!this.scope.inClass&&!(this.optionFlags&4)&&this.raise(U.UnexpectedNewTarget,J),J}return this.parseNew(ie)}parseNew(ie){if(this.parseNewCallee(ie),this.eat(10)){let w=this.parseExprList(11);this.toReferencedList(w),ie.arguments=w}else ie.arguments=[];return this.finishNode(ie,"NewExpression")}parseNewCallee(ie){let w=this.match(83),J=this.parseNoCallExpr();ie.callee=J,w&&(J.type==="Import"||J.type==="ImportExpression")&&this.raise(U.ImportCallNotNewExpression,J)}parseTemplateElement(ie){let{start:w,startLoc:J,end:ye,value:ut}=this.state,zt=w+1,Zr=this.startNodeAt(a(J,1));ut===null&&(ie||this.raise(U.InvalidEscapeSequenceTemplate,a(this.state.firstInvalidTemplateEscapePos,1)));let wr=this.match(24),Yn=wr?-1:-2,Dn=ye+Yn;Zr.value={raw:this.input.slice(zt,Dn).replace(/\r\n?/g,` -`),cooked:ut===null?null:ut.slice(1,Yn)},Zr.tail=wr,this.next();let Po=this.finishNode(Zr,"TemplateElement");return this.resetEndLocation(Po,a(this.state.lastTokEndLoc,Yn)),Po}parseTemplate(ie){let w=this.startNode(),J=this.parseTemplateElement(ie),ye=[J],ut=[];for(;!J.tail;)ut.push(this.parseTemplateSubstitution()),this.readTemplateContinuation(),ye.push(J=this.parseTemplateElement(ie));return w.expressions=ut,w.quasis=ye,this.finishNode(w,"TemplateLiteral")}parseTemplateSubstitution(){return this.parseExpression()}parseObjectLike(ie,w,J,ye){J&&this.expectPlugin("recordAndTuple");let ut=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let zt=Object.create(null),Zr=!0,wr=this.startNode();for(wr.properties=[],this.next();!this.match(ie);){if(Zr)Zr=!1;else if(this.expect(12),this.match(ie)){this.addTrailingCommaExtraToNode(wr);break}let Dn;w?Dn=this.parseBindingProperty():(Dn=this.parsePropertyDefinition(ye),this.checkProto(Dn,J,zt,ye)),J&&!this.isObjectProperty(Dn)&&Dn.type!=="SpreadElement"&&this.raise(U.InvalidRecordProperty,Dn),Dn.shorthand&&this.addExtra(Dn,"shorthand",!0),wr.properties.push(Dn)}this.next(),this.state.inFSharpPipelineDirectBody=ut;let Yn="ObjectExpression";return w?Yn="ObjectPattern":J&&(Yn="RecordExpression"),this.finishNode(wr,Yn)}addTrailingCommaExtraToNode(ie){this.addExtra(ie,"trailingComma",this.state.lastTokStartLoc.index),this.addExtra(ie,"trailingCommaLoc",this.state.lastTokStartLoc,!1)}maybeAsyncOrAccessorProp(ie){return!ie.computed&&ie.key.type==="Identifier"&&(this.isLiteralPropertyName()||this.match(0)||this.match(55))}parsePropertyDefinition(ie){let w=[];if(this.match(26))for(this.hasPlugin("decorators")&&this.raise(U.UnsupportedPropertyDecorator,this.state.startLoc);this.match(26);)w.push(this.parseDecorator());let J=this.startNode(),ye=!1,ut=!1,zt;if(this.match(21))return w.length&&this.unexpected(),this.parseSpread();w.length&&(J.decorators=w,w=[]),J.method=!1,ie&&(zt=this.state.startLoc);let Zr=this.eat(55);this.parsePropertyNamePrefixOperator(J);let wr=this.state.containsEsc;if(this.parsePropertyName(J,ie),!Zr&&!wr&&this.maybeAsyncOrAccessorProp(J)){let{key:Yn}=J,Dn=Yn.name;Dn==="async"&&!this.hasPrecedingLineBreak()&&(ye=!0,this.resetPreviousNodeTrailingComments(Yn),Zr=this.eat(55),this.parsePropertyName(J)),(Dn==="get"||Dn==="set")&&(ut=!0,this.resetPreviousNodeTrailingComments(Yn),J.kind=Dn,this.match(55)&&(Zr=!0,this.raise(U.AccessorIsGenerator,this.state.curPosition(),{kind:Dn}),this.next()),this.parsePropertyName(J))}return this.parseObjPropValue(J,zt,Zr,ye,!1,ut,ie)}getGetterSetterExpectedParamCount(ie){return ie.kind==="get"?0:1}getObjectOrClassMethodParams(ie){return ie.params}checkGetterSetterParams(ie){var w;let J=this.getGetterSetterExpectedParamCount(ie),ye=this.getObjectOrClassMethodParams(ie);ye.length!==J&&this.raise(ie.kind==="get"?U.BadGetterArity:U.BadSetterArity,ie),ie.kind==="set"&&((w=ye[ye.length-1])==null?void 0:w.type)==="RestElement"&&this.raise(U.BadSetterRestParameter,ie)}parseObjectMethod(ie,w,J,ye,ut){if(ut){let zt=this.parseMethod(ie,w,!1,!1,!1,"ObjectMethod");return this.checkGetterSetterParams(zt),zt}if(J||w||this.match(10))return ye&&this.unexpected(),ie.kind="method",ie.method=!0,this.parseMethod(ie,w,J,!1,!1,"ObjectMethod")}parseObjectProperty(ie,w,J,ye){if(ie.shorthand=!1,this.eat(14))return ie.value=J?this.parseMaybeDefault(this.state.startLoc):this.parseMaybeAssignAllowIn(ye),this.finishNode(ie,"ObjectProperty");if(!ie.computed&&ie.key.type==="Identifier"){if(this.checkReservedWord(ie.key.name,ie.key.loc.start,!0,!1),J)ie.value=this.parseMaybeDefault(w,ii(ie.key));else if(this.match(29)){let ut=this.state.startLoc;ye!=null?ye.shorthandAssignLoc===null&&(ye.shorthandAssignLoc=ut):this.raise(U.InvalidCoverInitializedName,ut),ie.value=this.parseMaybeDefault(w,ii(ie.key))}else ie.value=ii(ie.key);return ie.shorthand=!0,this.finishNode(ie,"ObjectProperty")}}parseObjPropValue(ie,w,J,ye,ut,zt,Zr){let wr=this.parseObjectMethod(ie,J,ye,ut,zt)||this.parseObjectProperty(ie,w,ut,Zr);return wr||this.unexpected(),wr}parsePropertyName(ie,w){if(this.eat(0))ie.computed=!0,ie.key=this.parseMaybeAssignAllowIn(),this.expect(3);else{let{type:J,value:ye}=this.state,ut;if(we(J))ut=this.parseIdentifier(!0);else switch(J){case 135:ut=this.parseNumericLiteral(ye);break;case 134:ut=this.parseStringLiteral(ye);break;case 136:ut=this.parseBigIntLiteral(ye);break;case 139:{let zt=this.state.startLoc;w!=null?w.privateKeyLoc===null&&(w.privateKeyLoc=zt):this.raise(U.UnexpectedPrivateField,zt),ut=this.parsePrivateName();break}default:if(J===137){ut=this.parseDecimalLiteral(ye);break}this.unexpected()}ie.key=ut,J!==139&&(ie.computed=!1)}}initFunction(ie,w){ie.id=null,ie.generator=!1,ie.async=w}parseMethod(ie,w,J,ye,ut,zt,Zr=!1){this.initFunction(ie,J),ie.generator=w,this.scope.enter(18|(Zr?64:0)|(ut?32:0)),this.prodParam.enter(Bl(J,ie.generator)),this.parseFunctionParams(ie,ye);let wr=this.parseFunctionBodyAndFinish(ie,zt,!0);return this.prodParam.exit(),this.scope.exit(),wr}parseArrayLike(ie,w,J,ye){J&&this.expectPlugin("recordAndTuple");let ut=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let zt=this.startNode();return this.next(),zt.elements=this.parseExprList(ie,!J,ye,zt),this.state.inFSharpPipelineDirectBody=ut,this.finishNode(zt,J?"TupleExpression":"ArrayExpression")}parseArrowExpression(ie,w,J,ye){this.scope.enter(6);let ut=Bl(J,!1);!this.match(5)&&this.prodParam.hasIn&&(ut|=8),this.prodParam.enter(ut),this.initFunction(ie,J);let zt=this.state.maybeInArrowParameters;return w&&(this.state.maybeInArrowParameters=!0,this.setArrowFunctionParameters(ie,w,ye)),this.state.maybeInArrowParameters=!1,this.parseFunctionBody(ie,!0),this.prodParam.exit(),this.scope.exit(),this.state.maybeInArrowParameters=zt,this.finishNode(ie,"ArrowFunctionExpression")}setArrowFunctionParameters(ie,w,J){this.toAssignableList(w,J,!1),ie.params=w}parseFunctionBodyAndFinish(ie,w,J=!1){return this.parseFunctionBody(ie,!1,J),this.finishNode(ie,w)}parseFunctionBody(ie,w,J=!1){let ye=w&&!this.match(5);if(this.expressionScope.enter(pI()),ye)ie.body=this.parseMaybeAssign(),this.checkParams(ie,!1,w,!1);else{let ut=this.state.strict,zt=this.state.labels;this.state.labels=[],this.prodParam.enter(this.prodParam.currentFlags()|4),ie.body=this.parseBlock(!0,!1,Zr=>{let wr=!this.isSimpleParamList(ie.params);Zr&&wr&&this.raise(U.IllegalLanguageModeDirective,(ie.kind==="method"||ie.kind==="constructor")&&ie.key?ie.key.loc.end:ie);let Yn=!ut&&this.state.strict;this.checkParams(ie,!this.state.strict&&!w&&!J&&!wr,w,Yn),this.state.strict&&ie.id&&this.checkIdentifier(ie.id,65,Yn)}),this.prodParam.exit(),this.state.labels=zt}this.expressionScope.exit()}isSimpleParameter(ie){return ie.type==="Identifier"}isSimpleParamList(ie){for(let w=0,J=ie.length;w10||!Na(ie))){if(J&&$s(ie)){this.raise(U.UnexpectedKeyword,w,{keyword:ie});return}if((this.state.strict?ye?Ga:ts:wi)(ie,this.inModule)){this.raise(U.UnexpectedReservedWord,w,{reservedWord:ie});return}else if(ie==="yield"){if(this.prodParam.hasYield){this.raise(U.YieldBindingIdentifier,w);return}}else if(ie==="await"){if(this.prodParam.hasAwait){this.raise(U.AwaitBindingIdentifier,w);return}if(this.scope.inStaticBlock){this.raise(U.AwaitBindingIdentifierInStaticBlock,w);return}this.expressionScope.recordAsyncArrowParametersError(w)}else if(ie==="arguments"&&this.scope.inClassAndNotInNonArrowFunction){this.raise(U.ArgumentsInClass,w);return}}}recordAwaitIfAllowed(){let ie=this.prodParam.hasAwait||this.optionFlags&1&&!this.scope.inFunction;return ie&&!this.scope.inFunction&&(this.state.hasTopLevelAwait=!0),ie}parseAwait(ie){let w=this.startNodeAt(ie);return this.expressionScope.recordParameterInitializerError(U.AwaitExpressionFormalParameter,w),this.eat(55)&&this.raise(U.ObsoleteAwaitStar,w),!this.scope.inFunction&&!(this.optionFlags&1)&&(this.isAmbiguousAwait()?this.ambiguousScriptDifferentAst=!0:this.sawUnambiguousESM=!0),this.state.soloAwait||(w.argument=this.parseMaybeUnary(null,!0)),this.finishNode(w,"AwaitExpression")}isAmbiguousAwait(){if(this.hasPrecedingLineBreak())return!0;let{type:ie}=this.state;return ie===53||ie===10||ie===0||Ir(ie)||ie===102&&!this.state.containsEsc||ie===138||ie===56||this.hasPlugin("v8intrinsic")&&ie===54}parseYield(){let ie=this.startNode();this.expressionScope.recordParameterInitializerError(U.YieldInParameter,ie),this.next();let w=!1,J=null;if(!this.hasPrecedingLineBreak())switch(w=this.eat(55),this.state.type){case 13:case 140:case 8:case 11:case 3:case 9:case 14:case 12:if(!w)break;default:J=this.parseMaybeAssign()}return ie.delegate=w,ie.argument=J,this.finishNode(ie,"YieldExpression")}parseImportCall(ie){if(this.next(),ie.source=this.parseMaybeAssignAllowIn(),ie.options=null,this.eat(12)&&!this.match(11)&&(ie.options=this.parseMaybeAssignAllowIn(),this.eat(12)&&!this.match(11))){do this.parseMaybeAssignAllowIn();while(this.eat(12)&&!this.match(11));this.raise(U.ImportCallArity,ie)}return this.expect(11),this.finishNode(ie,"ImportExpression")}checkPipelineAtInfixOperator(ie,w){this.hasPlugin(["pipelineOperator",{proposal:"smart"}])&&ie.type==="SequenceExpression"&&this.raise(U.PipelineHeadSequenceExpression,w)}parseSmartPipelineBodyInStyle(ie,w){if(this.isSimpleReference(ie)){let J=this.startNodeAt(w);return J.callee=ie,this.finishNode(J,"PipelineBareFunction")}else{let J=this.startNodeAt(w);return this.checkSmartPipeTopicBodyEarlyErrors(w),J.expression=ie,this.finishNode(J,"PipelineTopicExpression")}}isSimpleReference(ie){switch(ie.type){case"MemberExpression":return!ie.computed&&this.isSimpleReference(ie.object);case"Identifier":return!0;default:return!1}}checkSmartPipeTopicBodyEarlyErrors(ie){if(this.match(19))throw this.raise(U.PipelineBodyNoArrow,this.state.startLoc);this.topicReferenceWasUsedInCurrentContext()||this.raise(U.PipelineTopicUnused,ie)}withTopicBindingContext(ie){let w=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:1,maxTopicIndex:null};try{return ie()}finally{this.state.topicContext=w}}withSmartMixTopicForbiddingContext(ie){if(this.hasPlugin(["pipelineOperator",{proposal:"smart"}])){let w=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null};try{return ie()}finally{this.state.topicContext=w}}else return ie()}withSoloAwaitPermittingContext(ie){let w=this.state.soloAwait;this.state.soloAwait=!0;try{return ie()}finally{this.state.soloAwait=w}}allowInAnd(ie){let w=this.prodParam.currentFlags();if(8&~w){this.prodParam.enter(w|8);try{return ie()}finally{this.prodParam.exit()}}return ie()}disallowInAnd(ie){let w=this.prodParam.currentFlags();if(8&w){this.prodParam.enter(w&-9);try{return ie()}finally{this.prodParam.exit()}}return ie()}registerTopicReference(){this.state.topicContext.maxTopicIndex=0}topicReferenceIsAllowedInCurrentContext(){return this.state.topicContext.maxNumOfResolvableTopics>=1}topicReferenceWasUsedInCurrentContext(){return this.state.topicContext.maxTopicIndex!=null&&this.state.topicContext.maxTopicIndex>=0}parseFSharpPipelineBody(ie){let w=this.state.startLoc;this.state.potentialArrowAt=this.state.start;let J=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!0;let ye=this.parseExprOp(this.parseMaybeUnaryOrPrivate(),w,ie);return this.state.inFSharpPipelineDirectBody=J,ye}parseModuleExpression(){this.expectPlugin("moduleBlocks");let ie=this.startNode();this.next(),this.match(5)||this.unexpected(null,5);let w=this.startNodeAt(this.state.endLoc);this.next();let J=this.initializeScopes(!0);this.enterInitialScopes();try{ie.body=this.parseProgram(w,8,"module")}finally{J()}return this.finishNode(ie,"ModuleExpression")}parsePropertyNamePrefixOperator(ie){}},b_={kind:1},Sb={kind:2},um=/[\uD800-\uDFFF]/u,uh=/in(?:stanceof)?/y;function pg(ie,w,J){for(let ye=0;ye0)for(let[ut,zt]of Array.from(this.scope.undefinedExports))this.raise(U.ModuleExportUndefined,zt,{localName:ut});this.addExtra(ie,"topLevelAwait",this.state.hasTopLevelAwait)}let ye;return w===140?ye=this.finishNode(ie,"Program"):ye=this.finishNodeAt(ie,"Program",a(this.state.startLoc,-1)),ye}stmtToDirective(ie){let w=ie;w.type="Directive",w.value=w.expression,delete w.expression;let J=w.value,ye=J.value,ut=this.input.slice(this.offsetToSourcePos(J.start),this.offsetToSourcePos(J.end)),zt=J.value=ut.slice(1,-1);return this.addExtra(J,"raw",ut),this.addExtra(J,"rawValue",zt),this.addExtra(J,"expressionValue",ye),J.type="DirectiveLiteral",w}parseInterpreterDirective(){if(!this.match(28))return null;let ie=this.startNode();return ie.value=this.state.value,this.next(),this.finishNode(ie,"InterpreterDirective")}isLet(){return this.isContextual(100)?this.hasFollowingBindingAtom():!1}chStartsBindingIdentifier(ie,w){if(pa(ie)){if(uh.lastIndex=w,uh.test(this.input)){let J=this.codePointAtPos(uh.lastIndex);if(!sg(J)&&J!==92)return!1}return!0}else return ie===92}chStartsBindingPattern(ie){return ie===91||ie===123}hasFollowingBindingAtom(){let ie=this.nextTokenStart(),w=this.codePointAtPos(ie);return this.chStartsBindingPattern(w)||this.chStartsBindingIdentifier(w,ie)}hasInLineFollowingBindingIdentifierOrBrace(){let ie=this.nextTokenInLineStart(),w=this.codePointAtPos(ie);return w===123||this.chStartsBindingIdentifier(w,ie)}startsUsingForOf(){let{type:ie,containsEsc:w}=this.lookahead();if(ie===102&&!w)return!1;if(gn(ie)&&!this.hasFollowingLineBreak())return this.expectPlugin("explicitResourceManagement"),!0}startsAwaitUsing(){let ie=this.nextTokenInLineStart();if(this.isUnparsedContextual(ie,"using")){ie=this.nextTokenInLineStartSince(ie+5);let w=this.codePointAtPos(ie);if(this.chStartsBindingIdentifier(w,ie))return this.expectPlugin("explicitResourceManagement"),!0}return!1}parseModuleItem(){return this.parseStatementLike(15)}parseStatementListItem(){return this.parseStatementLike(6|(!this.options.annexB||this.state.strict?0:8))}parseStatementOrSloppyAnnexBFunctionDeclaration(ie=!1){let w=0;return this.options.annexB&&!this.state.strict&&(w|=4,ie&&(w|=8)),this.parseStatementLike(w)}parseStatement(){return this.parseStatementLike(0)}parseStatementLike(ie){let w=null;return this.match(26)&&(w=this.parseDecorators(!0)),this.parseStatementContent(ie,w)}parseStatementContent(ie,w){let J=this.state.type,ye=this.startNode(),ut=!!(ie&2),zt=!!(ie&4),Zr=ie&1;switch(J){case 60:return this.parseBreakContinueStatement(ye,!0);case 63:return this.parseBreakContinueStatement(ye,!1);case 64:return this.parseDebuggerStatement(ye);case 90:return this.parseDoWhileStatement(ye);case 91:return this.parseForStatement(ye);case 68:if(this.lookaheadCharCode()===46)break;return zt||this.raise(this.state.strict?U.StrictFunction:this.options.annexB?U.SloppyFunctionAnnexB:U.SloppyFunction,this.state.startLoc),this.parseFunctionStatement(ye,!1,!ut&&zt);case 80:return ut||this.unexpected(),this.parseClass(this.maybeTakeDecorators(w,ye),!0);case 69:return this.parseIfStatement(ye);case 70:return this.parseReturnStatement(ye);case 71:return this.parseSwitchStatement(ye);case 72:return this.parseThrowStatement(ye);case 73:return this.parseTryStatement(ye);case 96:if(!this.state.containsEsc&&this.startsAwaitUsing())return this.recordAwaitIfAllowed()?ut||this.raise(U.UnexpectedLexicalDeclaration,ye):this.raise(U.AwaitUsingNotInAsyncContext,ye),this.next(),this.parseVarStatement(ye,"await using");break;case 107:if(this.state.containsEsc||!this.hasInLineFollowingBindingIdentifierOrBrace())break;return this.expectPlugin("explicitResourceManagement"),!this.scope.inModule&&this.scope.inTopLevel?this.raise(U.UnexpectedUsingDeclaration,this.state.startLoc):ut||this.raise(U.UnexpectedLexicalDeclaration,this.state.startLoc),this.parseVarStatement(ye,"using");case 100:{if(this.state.containsEsc)break;let Dn=this.nextTokenStart(),Po=this.codePointAtPos(Dn);if(Po!==91&&(!ut&&this.hasFollowingLineBreak()||!this.chStartsBindingIdentifier(Po,Dn)&&Po!==123))break}case 75:ut||this.raise(U.UnexpectedLexicalDeclaration,this.state.startLoc);case 74:{let Dn=this.state.value;return this.parseVarStatement(ye,Dn)}case 92:return this.parseWhileStatement(ye);case 76:return this.parseWithStatement(ye);case 5:return this.parseBlock();case 13:return this.parseEmptyStatement(ye);case 83:{let Dn=this.lookaheadCharCode();if(Dn===40||Dn===46)break}case 82:{!(this.optionFlags&8)&&!Zr&&this.raise(U.UnexpectedImportExport,this.state.startLoc),this.next();let Dn;return J===83?(Dn=this.parseImport(ye),Dn.type==="ImportDeclaration"&&(!Dn.importKind||Dn.importKind==="value")&&(this.sawUnambiguousESM=!0)):(Dn=this.parseExport(ye,w),(Dn.type==="ExportNamedDeclaration"&&(!Dn.exportKind||Dn.exportKind==="value")||Dn.type==="ExportAllDeclaration"&&(!Dn.exportKind||Dn.exportKind==="value")||Dn.type==="ExportDefaultDeclaration")&&(this.sawUnambiguousESM=!0)),this.assertModuleNodeAllowed(Dn),Dn}default:if(this.isAsyncFunction())return ut||this.raise(U.AsyncFunctionInSingleStatementContext,this.state.startLoc),this.next(),this.parseFunctionStatement(ye,!0,!ut&&zt)}let wr=this.state.value,Yn=this.parseExpression();return gn(J)&&Yn.type==="Identifier"&&this.eat(14)?this.parseLabeledStatement(ye,wr,Yn,ie):this.parseExpressionStatement(ye,Yn,w)}assertModuleNodeAllowed(ie){!(this.optionFlags&8)&&!this.inModule&&this.raise(U.ImportOutsideModule,ie)}decoratorsEnabledBeforeExport(){return this.hasPlugin("decorators-legacy")?!0:this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")!==!1}maybeTakeDecorators(ie,w,J){if(ie){var ye;(ye=w.decorators)!=null&&ye.length?(typeof this.getPluginOption("decorators","decoratorsBeforeExport")!="boolean"&&this.raise(U.DecoratorsBeforeAfterExport,w.decorators[0]),w.decorators.unshift(...ie)):w.decorators=ie,this.resetStartLocationFromNode(w,ie[0]),J&&this.resetStartLocationFromNode(J,w)}return w}canHaveLeadingDecorator(){return this.match(80)}parseDecorators(ie){let w=[];do w.push(this.parseDecorator());while(this.match(26));if(this.match(82))ie||this.unexpected(),this.decoratorsEnabledBeforeExport()||this.raise(U.DecoratorExportClass,this.state.startLoc);else if(!this.canHaveLeadingDecorator())throw this.raise(U.UnexpectedLeadingDecorator,this.state.startLoc);return w}parseDecorator(){this.expectOnePlugin(["decorators","decorators-legacy"]);let ie=this.startNode();if(this.next(),this.hasPlugin("decorators")){let w=this.state.startLoc,J;if(this.match(10)){let ye=this.state.startLoc;this.next(),J=this.parseExpression(),this.expect(11),J=this.wrapParenthesis(ye,J);let ut=this.state.startLoc;ie.expression=this.parseMaybeDecoratorArguments(J,ye),this.getPluginOption("decorators","allowCallParenthesized")===!1&&ie.expression!==J&&this.raise(U.DecoratorArgumentsOutsideParentheses,ut)}else{for(J=this.parseIdentifier(!1);this.eat(16);){let ye=this.startNodeAt(w);ye.object=J,this.match(139)?(this.classScope.usePrivateName(this.state.value,this.state.startLoc),ye.property=this.parsePrivateName()):ye.property=this.parseIdentifier(!0),ye.computed=!1,J=this.finishNode(ye,"MemberExpression")}ie.expression=this.parseMaybeDecoratorArguments(J,w)}}else ie.expression=this.parseExprSubscripts();return this.finishNode(ie,"Decorator")}parseMaybeDecoratorArguments(ie,w){if(this.eat(10)){let J=this.startNodeAt(w);return J.callee=ie,J.arguments=this.parseCallExpressionArguments(11),this.toReferencedList(J.arguments),this.finishNode(J,"CallExpression")}return ie}parseBreakContinueStatement(ie,w){return this.next(),this.isLineTerminator()?ie.label=null:(ie.label=this.parseIdentifier(),this.semicolon()),this.verifyBreakContinue(ie,w),this.finishNode(ie,w?"BreakStatement":"ContinueStatement")}verifyBreakContinue(ie,w){let J;for(J=0;Jthis.parseStatement()),this.state.labels.pop(),this.expect(92),ie.test=this.parseHeaderExpression(),this.eat(13),this.finishNode(ie,"DoWhileStatement")}parseForStatement(ie){this.next(),this.state.labels.push(b_);let w=null;if(this.isContextual(96)&&this.recordAwaitIfAllowed()&&(w=this.state.startLoc,this.next()),this.scope.enter(0),this.expect(10),this.match(13))return w!==null&&this.unexpected(w),this.parseFor(ie,null);let J=this.isContextual(100);{let wr=this.isContextual(96)&&this.startsAwaitUsing(),Yn=wr||this.isContextual(107)&&this.startsUsingForOf(),Dn=J&&this.hasFollowingBindingAtom()||Yn;if(this.match(74)||this.match(75)||Dn){let Po=this.startNode(),fc;wr?(fc="await using",this.recordAwaitIfAllowed()||this.raise(U.AwaitUsingNotInAsyncContext,this.state.startLoc),this.next()):fc=this.state.value,this.next(),this.parseVar(Po,!0,fc);let Xc=this.finishNode(Po,"VariableDeclaration"),Yo=this.match(58);return Yo&&Yn&&this.raise(U.ForInUsing,Xc),(Yo||this.isContextual(102))&&Xc.declarations.length===1?this.parseForIn(ie,Xc,w):(w!==null&&this.unexpected(w),this.parseFor(ie,Xc))}}let ye=this.isContextual(95),ut=new LA,zt=this.parseExpression(!0,ut),Zr=this.isContextual(102);if(Zr&&(J&&this.raise(U.ForOfLet,zt),w===null&&ye&&zt.type==="Identifier"&&this.raise(U.ForOfAsync,zt)),Zr||this.match(58)){this.checkDestructuringPrivate(ut),this.toAssignable(zt,!0);let wr=Zr?"ForOfStatement":"ForInStatement";return this.checkLVal(zt,{type:wr}),this.parseForIn(ie,zt,w)}else this.checkExpressionErrors(ut,!0);return w!==null&&this.unexpected(w),this.parseFor(ie,zt)}parseFunctionStatement(ie,w,J){return this.next(),this.parseFunction(ie,1|(J?2:0)|(w?8:0))}parseIfStatement(ie){return this.next(),ie.test=this.parseHeaderExpression(),ie.consequent=this.parseStatementOrSloppyAnnexBFunctionDeclaration(),ie.alternate=this.eat(66)?this.parseStatementOrSloppyAnnexBFunctionDeclaration():null,this.finishNode(ie,"IfStatement")}parseReturnStatement(ie){return!this.prodParam.hasReturn&&!(this.optionFlags&2)&&this.raise(U.IllegalReturn,this.state.startLoc),this.next(),this.isLineTerminator()?ie.argument=null:(ie.argument=this.parseExpression(),this.semicolon()),this.finishNode(ie,"ReturnStatement")}parseSwitchStatement(ie){this.next(),ie.discriminant=this.parseHeaderExpression();let w=ie.cases=[];this.expect(5),this.state.labels.push(Sb),this.scope.enter(0);let J;for(let ye;!this.match(8);)if(this.match(61)||this.match(65)){let ut=this.match(61);J&&this.finishNode(J,"SwitchCase"),w.push(J=this.startNode()),J.consequent=[],this.next(),ut?J.test=this.parseExpression():(ye&&this.raise(U.MultipleDefaultsInSwitch,this.state.lastTokStartLoc),ye=!0,J.test=null),this.expect(14)}else J?J.consequent.push(this.parseStatementListItem()):this.unexpected();return this.scope.exit(),J&&this.finishNode(J,"SwitchCase"),this.next(),this.state.labels.pop(),this.finishNode(ie,"SwitchStatement")}parseThrowStatement(ie){return this.next(),this.hasPrecedingLineBreak()&&this.raise(U.NewlineAfterThrow,this.state.lastTokEndLoc),ie.argument=this.parseExpression(),this.semicolon(),this.finishNode(ie,"ThrowStatement")}parseCatchClauseParam(){let ie=this.parseBindingAtom();return this.scope.enter(this.options.annexB&&ie.type==="Identifier"?8:0),this.checkLVal(ie,{type:"CatchClause"},9),ie}parseTryStatement(ie){if(this.next(),ie.block=this.parseBlock(),ie.handler=null,this.match(62)){let w=this.startNode();this.next(),this.match(10)?(this.expect(10),w.param=this.parseCatchClauseParam(),this.expect(11)):(w.param=null,this.scope.enter(0)),w.body=this.withSmartMixTopicForbiddingContext(()=>this.parseBlock(!1,!1)),this.scope.exit(),ie.handler=this.finishNode(w,"CatchClause")}return ie.finalizer=this.eat(67)?this.parseBlock():null,!ie.handler&&!ie.finalizer&&this.raise(U.NoCatchOrFinally,ie),this.finishNode(ie,"TryStatement")}parseVarStatement(ie,w,J=!1){return this.next(),this.parseVar(ie,!1,w,J),this.semicolon(),this.finishNode(ie,"VariableDeclaration")}parseWhileStatement(ie){return this.next(),ie.test=this.parseHeaderExpression(),this.state.labels.push(b_),ie.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.state.labels.pop(),this.finishNode(ie,"WhileStatement")}parseWithStatement(ie){return this.state.strict&&this.raise(U.StrictWith,this.state.startLoc),this.next(),ie.object=this.parseHeaderExpression(),ie.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.finishNode(ie,"WithStatement")}parseEmptyStatement(ie){return this.next(),this.finishNode(ie,"EmptyStatement")}parseLabeledStatement(ie,w,J,ye){for(let zt of this.state.labels)zt.name===w&&this.raise(U.LabelRedeclaration,J,{labelName:w});let ut=ga(this.state.type)?1:this.match(71)?2:null;for(let zt=this.state.labels.length-1;zt>=0;zt--){let Zr=this.state.labels[zt];if(Zr.statementStart===ie.start)Zr.statementStart=this.sourceToOffsetPos(this.state.start),Zr.kind=ut;else break}return this.state.labels.push({name:w,kind:ut,statementStart:this.sourceToOffsetPos(this.state.start)}),ie.body=ye&8?this.parseStatementOrSloppyAnnexBFunctionDeclaration(!0):this.parseStatement(),this.state.labels.pop(),ie.label=J,this.finishNode(ie,"LabeledStatement")}parseExpressionStatement(ie,w,J){return ie.expression=w,this.semicolon(),this.finishNode(ie,"ExpressionStatement")}parseBlock(ie=!1,w=!0,J){let ye=this.startNode();return ie&&this.state.strictErrors.clear(),this.expect(5),w&&this.scope.enter(0),this.parseBlockBody(ye,ie,!1,8,J),w&&this.scope.exit(),this.finishNode(ye,"BlockStatement")}isValidDirective(ie){return ie.type==="ExpressionStatement"&&ie.expression.type==="StringLiteral"&&!ie.expression.extra.parenthesized}parseBlockBody(ie,w,J,ye,ut){let zt=ie.body=[],Zr=ie.directives=[];this.parseBlockOrModuleBlockBody(zt,w?Zr:void 0,J,ye,ut)}parseBlockOrModuleBlockBody(ie,w,J,ye,ut){let zt=this.state.strict,Zr=!1,wr=!1;for(;!this.match(ye);){let Yn=J?this.parseModuleItem():this.parseStatementListItem();if(w&&!wr){if(this.isValidDirective(Yn)){let Dn=this.stmtToDirective(Yn);w.push(Dn),!Zr&&Dn.value.value==="use strict"&&(Zr=!0,this.setStrict(!0));continue}wr=!0,this.state.strictErrors.clear()}ie.push(Yn)}ut?.call(this,Zr),zt||this.setStrict(!1),this.next()}parseFor(ie,w){return ie.init=w,this.semicolon(!1),ie.test=this.match(13)?null:this.parseExpression(),this.semicolon(!1),ie.update=this.match(11)?null:this.parseExpression(),this.expect(11),ie.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(ie,"ForStatement")}parseForIn(ie,w,J){let ye=this.match(58);return this.next(),ye?J!==null&&this.unexpected(J):ie.await=J!==null,w.type==="VariableDeclaration"&&w.declarations[0].init!=null&&(!ye||!this.options.annexB||this.state.strict||w.kind!=="var"||w.declarations[0].id.type!=="Identifier")&&this.raise(U.ForInOfLoopInitializer,w,{type:ye?"ForInStatement":"ForOfStatement"}),w.type==="AssignmentPattern"&&this.raise(U.InvalidLhs,w,{ancestor:{type:"ForStatement"}}),ie.left=w,ie.right=ye?this.parseExpression():this.parseMaybeAssignAllowIn(),this.expect(11),ie.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(ie,ye?"ForInStatement":"ForOfStatement")}parseVar(ie,w,J,ye=!1){let ut=ie.declarations=[];for(ie.kind=J;;){let zt=this.startNode();if(this.parseVarId(zt,J),zt.init=this.eat(29)?w?this.parseMaybeAssignDisallowIn():this.parseMaybeAssignAllowIn():null,zt.init===null&&!ye&&(zt.id.type!=="Identifier"&&!(w&&(this.match(58)||this.isContextual(102)))?this.raise(U.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:"destructuring"}):(J==="const"||J==="using"||J==="await using")&&!(this.match(58)||this.isContextual(102))&&this.raise(U.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:J})),ut.push(this.finishNode(zt,"VariableDeclarator")),!this.eat(12))break}return ie}parseVarId(ie,w){let J=this.parseBindingAtom();(w==="using"||w==="await using")&&(J.type==="ArrayPattern"||J.type==="ObjectPattern")&&this.raise(U.UsingDeclarationHasBindingPattern,J.loc.start),this.checkLVal(J,{type:"VariableDeclarator"},w==="var"?5:8201),ie.id=J}parseAsyncFunctionExpression(ie){return this.parseFunction(ie,8)}parseFunction(ie,w=0){let J=w&2,ye=!!(w&1),ut=ye&&!(w&4),zt=!!(w&8);this.initFunction(ie,zt),this.match(55)&&(J&&this.raise(U.GeneratorInSingleStatementContext,this.state.startLoc),this.next(),ie.generator=!0),ye&&(ie.id=this.parseFunctionId(ut));let Zr=this.state.maybeInArrowParameters;return this.state.maybeInArrowParameters=!1,this.scope.enter(2),this.prodParam.enter(Bl(zt,ie.generator)),ye||(ie.id=this.parseFunctionId()),this.parseFunctionParams(ie,!1),this.withSmartMixTopicForbiddingContext(()=>{this.parseFunctionBodyAndFinish(ie,ye?"FunctionDeclaration":"FunctionExpression")}),this.prodParam.exit(),this.scope.exit(),ye&&!J&&this.registerFunctionStatementId(ie),this.state.maybeInArrowParameters=Zr,ie}parseFunctionId(ie){return ie||gn(this.state.type)?this.parseIdentifier():null}parseFunctionParams(ie,w){this.expect(10),this.expressionScope.enter(ps()),ie.params=this.parseBindingList(11,41,2|(w?4:0)),this.expressionScope.exit()}registerFunctionStatementId(ie){ie.id&&this.scope.declareName(ie.id.name,!this.options.annexB||this.state.strict||ie.generator||ie.async?this.scope.treatFunctionsAsVar?5:8201:17,ie.id.loc.start)}parseClass(ie,w,J){this.next();let ye=this.state.strict;return this.state.strict=!0,this.parseClassId(ie,w,J),this.parseClassSuper(ie),ie.body=this.parseClassBody(!!ie.superClass,ye),this.finishNode(ie,w?"ClassDeclaration":"ClassExpression")}isClassProperty(){return this.match(29)||this.match(13)||this.match(8)}isClassMethod(){return this.match(10)}nameIsConstructor(ie){return ie.type==="Identifier"&&ie.name==="constructor"||ie.type==="StringLiteral"&&ie.value==="constructor"}isNonstaticConstructor(ie){return!ie.computed&&!ie.static&&this.nameIsConstructor(ie.key)}parseClassBody(ie,w){this.classScope.enter();let J={hadConstructor:!1,hadSuperClass:ie},ye=[],ut=this.startNode();if(ut.body=[],this.expect(5),this.withSmartMixTopicForbiddingContext(()=>{for(;!this.match(8);){if(this.eat(13)){if(ye.length>0)throw this.raise(U.DecoratorSemicolon,this.state.lastTokEndLoc);continue}if(this.match(26)){ye.push(this.parseDecorator());continue}let zt=this.startNode();ye.length&&(zt.decorators=ye,this.resetStartLocationFromNode(zt,ye[0]),ye=[]),this.parseClassMember(ut,zt,J),zt.kind==="constructor"&&zt.decorators&&zt.decorators.length>0&&this.raise(U.DecoratorConstructor,zt)}}),this.state.strict=w,this.next(),ye.length)throw this.raise(U.TrailingDecorator,this.state.startLoc);return this.classScope.exit(),this.finishNode(ut,"ClassBody")}parseClassMemberFromModifier(ie,w){let J=this.parseIdentifier(!0);if(this.isClassMethod()){let ye=w;return ye.kind="method",ye.computed=!1,ye.key=J,ye.static=!1,this.pushClassMethod(ie,ye,!1,!1,!1,!1),!0}else if(this.isClassProperty()){let ye=w;return ye.computed=!1,ye.key=J,ye.static=!1,ie.body.push(this.parseClassProperty(ye)),!0}return this.resetPreviousNodeTrailingComments(J),!1}parseClassMember(ie,w,J){let ye=this.isContextual(106);if(ye){if(this.parseClassMemberFromModifier(ie,w))return;if(this.eat(5)){this.parseClassStaticBlock(ie,w);return}}this.parseClassMemberWithIsStatic(ie,w,J,ye)}parseClassMemberWithIsStatic(ie,w,J,ye){let ut=w,zt=w,Zr=w,wr=w,Yn=w,Dn=ut,Po=ut;if(w.static=ye,this.parsePropertyNamePrefixOperator(w),this.eat(55)){Dn.kind="method";let lA=this.match(139);if(this.parseClassElementName(Dn),lA){this.pushClassPrivateMethod(ie,zt,!0,!1);return}this.isNonstaticConstructor(ut)&&this.raise(U.ConstructorIsGenerator,ut.key),this.pushClassMethod(ie,ut,!0,!1,!1,!1);return}let fc=!this.state.containsEsc&&gn(this.state.type),Xc=this.parseClassElementName(w),Yo=fc?Xc.name:null,yu=this.isPrivateName(Xc),op=this.state.startLoc;if(this.parsePostMemberNameModifiers(Po),this.isClassMethod()){if(Dn.kind="method",yu){this.pushClassPrivateMethod(ie,zt,!1,!1);return}let lA=this.isNonstaticConstructor(ut),tI=!1;lA&&(ut.kind="constructor",J.hadConstructor&&!this.hasPlugin("typescript")&&this.raise(U.DuplicateConstructor,Xc),lA&&this.hasPlugin("typescript")&&w.override&&this.raise(U.OverrideOnConstructor,Xc),J.hadConstructor=!0,tI=J.hadSuperClass),this.pushClassMethod(ie,ut,!1,!1,lA,tI)}else if(this.isClassProperty())yu?this.pushClassPrivateProperty(ie,wr):this.pushClassProperty(ie,Zr);else if(Yo==="async"&&!this.isLineTerminator()){this.resetPreviousNodeTrailingComments(Xc);let lA=this.eat(55);Po.optional&&this.unexpected(op),Dn.kind="method";let tI=this.match(139);this.parseClassElementName(Dn),this.parsePostMemberNameModifiers(Po),tI?this.pushClassPrivateMethod(ie,zt,lA,!0):(this.isNonstaticConstructor(ut)&&this.raise(U.ConstructorIsAsync,ut.key),this.pushClassMethod(ie,ut,lA,!0,!1,!1))}else if((Yo==="get"||Yo==="set")&&!(this.match(55)&&this.isLineTerminator())){this.resetPreviousNodeTrailingComments(Xc),Dn.kind=Yo;let lA=this.match(139);this.parseClassElementName(ut),lA?this.pushClassPrivateMethod(ie,zt,!1,!1):(this.isNonstaticConstructor(ut)&&this.raise(U.ConstructorIsAccessor,ut.key),this.pushClassMethod(ie,ut,!1,!1,!1,!1)),this.checkGetterSetterParams(ut)}else if(Yo==="accessor"&&!this.isLineTerminator()){this.expectPlugin("decoratorAutoAccessors"),this.resetPreviousNodeTrailingComments(Xc);let lA=this.match(139);this.parseClassElementName(Zr),this.pushClassAccessorProperty(ie,Yn,lA)}else this.isLineTerminator()?yu?this.pushClassPrivateProperty(ie,wr):this.pushClassProperty(ie,Zr):this.unexpected()}parseClassElementName(ie){let{type:w,value:J}=this.state;if((w===132||w===134)&&ie.static&&J==="prototype"&&this.raise(U.StaticPrototype,this.state.startLoc),w===139){J==="constructor"&&this.raise(U.ConstructorClassPrivateField,this.state.startLoc);let ye=this.parsePrivateName();return ie.key=ye,ye}return this.parsePropertyName(ie),ie.key}parseClassStaticBlock(ie,w){var J;this.scope.enter(208);let ye=this.state.labels;this.state.labels=[],this.prodParam.enter(0);let ut=w.body=[];this.parseBlockOrModuleBlockBody(ut,void 0,!1,8),this.prodParam.exit(),this.scope.exit(),this.state.labels=ye,ie.body.push(this.finishNode(w,"StaticBlock")),(J=w.decorators)!=null&&J.length&&this.raise(U.DecoratorStaticBlock,w)}pushClassProperty(ie,w){!w.computed&&this.nameIsConstructor(w.key)&&this.raise(U.ConstructorClassField,w.key),ie.body.push(this.parseClassProperty(w))}pushClassPrivateProperty(ie,w){let J=this.parseClassPrivateProperty(w);ie.body.push(J),this.classScope.declarePrivateName(this.getPrivateNameSV(J.key),0,J.key.loc.start)}pushClassAccessorProperty(ie,w,J){!J&&!w.computed&&this.nameIsConstructor(w.key)&&this.raise(U.ConstructorClassField,w.key);let ye=this.parseClassAccessorProperty(w);ie.body.push(ye),J&&this.classScope.declarePrivateName(this.getPrivateNameSV(ye.key),0,ye.key.loc.start)}pushClassMethod(ie,w,J,ye,ut,zt){ie.body.push(this.parseMethod(w,J,ye,ut,zt,"ClassMethod",!0))}pushClassPrivateMethod(ie,w,J,ye){let ut=this.parseMethod(w,J,ye,!1,!1,"ClassPrivateMethod",!0);ie.body.push(ut);let zt=ut.kind==="get"?ut.static?6:2:ut.kind==="set"?ut.static?5:1:0;this.declareClassPrivateMethodInScope(ut,zt)}declareClassPrivateMethodInScope(ie,w){this.classScope.declarePrivateName(this.getPrivateNameSV(ie.key),w,ie.key.loc.start)}parsePostMemberNameModifiers(ie){}parseClassPrivateProperty(ie){return this.parseInitializer(ie),this.semicolon(),this.finishNode(ie,"ClassPrivateProperty")}parseClassProperty(ie){return this.parseInitializer(ie),this.semicolon(),this.finishNode(ie,"ClassProperty")}parseClassAccessorProperty(ie){return this.parseInitializer(ie),this.semicolon(),this.finishNode(ie,"ClassAccessorProperty")}parseInitializer(ie){this.scope.enter(80),this.expressionScope.enter(pI()),this.prodParam.enter(0),ie.value=this.eat(29)?this.parseMaybeAssignAllowIn():null,this.expressionScope.exit(),this.prodParam.exit(),this.scope.exit()}parseClassId(ie,w,J,ye=8331){if(gn(this.state.type))ie.id=this.parseIdentifier(),w&&this.declareNameFromIdentifier(ie.id,ye);else if(J||!w)ie.id=null;else throw this.raise(U.MissingClassName,this.state.startLoc)}parseClassSuper(ie){ie.superClass=this.eat(81)?this.parseExprSubscripts():null}parseExport(ie,w){let J=this.parseMaybeImportPhase(ie,!0),ye=this.maybeParseExportDefaultSpecifier(ie,J),ut=!ye||this.eat(12),zt=ut&&this.eatExportStar(ie),Zr=zt&&this.maybeParseExportNamespaceSpecifier(ie),wr=ut&&(!Zr||this.eat(12)),Yn=ye||zt;if(zt&&!Zr){if(ye&&this.unexpected(),w)throw this.raise(U.UnsupportedDecoratorExport,ie);return this.parseExportFrom(ie,!0),this.finishNode(ie,"ExportAllDeclaration")}let Dn=this.maybeParseExportNamedSpecifiers(ie);ye&&ut&&!zt&&!Dn&&this.unexpected(null,5),Zr&&wr&&this.unexpected(null,98);let Po;if(Yn||Dn){if(Po=!1,w)throw this.raise(U.UnsupportedDecoratorExport,ie);this.parseExportFrom(ie,Yn)}else Po=this.maybeParseExportDeclaration(ie);if(Yn||Dn||Po){var fc;let Xc=ie;if(this.checkExport(Xc,!0,!1,!!Xc.source),((fc=Xc.declaration)==null?void 0:fc.type)==="ClassDeclaration")this.maybeTakeDecorators(w,Xc.declaration,Xc);else if(w)throw this.raise(U.UnsupportedDecoratorExport,ie);return this.finishNode(Xc,"ExportNamedDeclaration")}if(this.eat(65)){let Xc=ie,Yo=this.parseExportDefaultExpression();if(Xc.declaration=Yo,Yo.type==="ClassDeclaration")this.maybeTakeDecorators(w,Yo,Xc);else if(w)throw this.raise(U.UnsupportedDecoratorExport,ie);return this.checkExport(Xc,!0,!0),this.finishNode(Xc,"ExportDefaultDeclaration")}this.unexpected(null,5)}eatExportStar(ie){return this.eat(55)}maybeParseExportDefaultSpecifier(ie,w){if(w||this.isExportDefaultSpecifier()){this.expectPlugin("exportDefaultFrom",w?.loc.start);let J=w||this.parseIdentifier(!0),ye=this.startNodeAtNode(J);return ye.exported=J,ie.specifiers=[this.finishNode(ye,"ExportDefaultSpecifier")],!0}return!1}maybeParseExportNamespaceSpecifier(ie){if(this.isContextual(93)){var w,J;(J=(w=ie).specifiers)!=null||(w.specifiers=[]);let ye=this.startNodeAt(this.state.lastTokStartLoc);return this.next(),ye.exported=this.parseModuleExportName(),ie.specifiers.push(this.finishNode(ye,"ExportNamespaceSpecifier")),!0}return!1}maybeParseExportNamedSpecifiers(ie){if(this.match(5)){let w=ie;w.specifiers||(w.specifiers=[]);let J=w.exportKind==="type";return w.specifiers.push(...this.parseExportSpecifiers(J)),w.source=null,w.declaration=null,this.hasPlugin("importAssertions")&&(w.assertions=[]),!0}return!1}maybeParseExportDeclaration(ie){return this.shouldParseExportDeclaration()?(ie.specifiers=[],ie.source=null,this.hasPlugin("importAssertions")&&(ie.assertions=[]),ie.declaration=this.parseExportDeclaration(ie),!0):!1}isAsyncFunction(){if(!this.isContextual(95))return!1;let ie=this.nextTokenInLineStart();return this.isUnparsedContextual(ie,"function")}parseExportDefaultExpression(){let ie=this.startNode();if(this.match(68))return this.next(),this.parseFunction(ie,5);if(this.isAsyncFunction())return this.next(),this.next(),this.parseFunction(ie,13);if(this.match(80))return this.parseClass(ie,!0,!0);if(this.match(26))return this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(U.DecoratorBeforeExport,this.state.startLoc),this.parseClass(this.maybeTakeDecorators(this.parseDecorators(!1),this.startNode()),!0,!0);if(this.match(75)||this.match(74)||this.isLet())throw this.raise(U.UnsupportedDefaultExport,this.state.startLoc);let w=this.parseMaybeAssignAllowIn();return this.semicolon(),w}parseExportDeclaration(ie){return this.match(80)?this.parseClass(this.startNode(),!0,!1):this.parseStatementListItem()}isExportDefaultSpecifier(){let{type:ie}=this.state;if(gn(ie)){if(ie===95&&!this.state.containsEsc||ie===100)return!1;if((ie===130||ie===129)&&!this.state.containsEsc){let{type:ye}=this.lookahead();if(gn(ye)&&ye!==98||ye===5)return this.expectOnePlugin(["flow","typescript"]),!1}}else if(!this.match(65))return!1;let w=this.nextTokenStart(),J=this.isUnparsedContextual(w,"from");if(this.input.charCodeAt(w)===44||gn(this.state.type)&&J)return!0;if(this.match(65)&&J){let ye=this.input.charCodeAt(this.nextTokenStartSince(w+4));return ye===34||ye===39}return!1}parseExportFrom(ie,w){this.eatContextual(98)?(ie.source=this.parseImportSource(),this.checkExport(ie),this.maybeParseImportAttributes(ie),this.checkJSONModuleImport(ie)):w&&this.unexpected(),this.semicolon()}shouldParseExportDeclaration(){let{type:ie}=this.state;return ie===26&&(this.expectOnePlugin(["decorators","decorators-legacy"]),this.hasPlugin("decorators"))?(this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(U.DecoratorBeforeExport,this.state.startLoc),!0):this.isContextual(107)?(this.raise(U.UsingDeclarationExport,this.state.startLoc),!0):this.isContextual(96)&&this.startsAwaitUsing()?(this.raise(U.UsingDeclarationExport,this.state.startLoc),!0):ie===74||ie===75||ie===68||ie===80||this.isLet()||this.isAsyncFunction()}checkExport(ie,w,J,ye){if(w){var ut;if(J){if(this.checkDuplicateExports(ie,"default"),this.hasPlugin("exportDefaultFrom")){var zt;let Zr=ie.declaration;Zr.type==="Identifier"&&Zr.name==="from"&&Zr.end-Zr.start===4&&!((zt=Zr.extra)!=null&&zt.parenthesized)&&this.raise(U.ExportDefaultFromAsIdentifier,Zr)}}else if((ut=ie.specifiers)!=null&&ut.length)for(let Zr of ie.specifiers){let{exported:wr}=Zr,Yn=wr.type==="Identifier"?wr.name:wr.value;if(this.checkDuplicateExports(Zr,Yn),!ye&&Zr.local){let{local:Dn}=Zr;Dn.type!=="Identifier"?this.raise(U.ExportBindingIsString,Zr,{localName:Dn.value,exportName:Yn}):(this.checkReservedWord(Dn.name,Dn.loc.start,!0,!1),this.scope.checkLocalExport(Dn))}}else if(ie.declaration){let Zr=ie.declaration;if(Zr.type==="FunctionDeclaration"||Zr.type==="ClassDeclaration"){let{id:wr}=Zr;if(!wr)throw new Error("Assertion failure");this.checkDuplicateExports(ie,wr.name)}else if(Zr.type==="VariableDeclaration")for(let wr of Zr.declarations)this.checkDeclaration(wr.id)}}}checkDeclaration(ie){if(ie.type==="Identifier")this.checkDuplicateExports(ie,ie.name);else if(ie.type==="ObjectPattern")for(let w of ie.properties)this.checkDeclaration(w);else if(ie.type==="ArrayPattern")for(let w of ie.elements)w&&this.checkDeclaration(w);else ie.type==="ObjectProperty"?this.checkDeclaration(ie.value):ie.type==="RestElement"?this.checkDeclaration(ie.argument):ie.type==="AssignmentPattern"&&this.checkDeclaration(ie.left)}checkDuplicateExports(ie,w){this.exportedIdentifiers.has(w)&&(w==="default"?this.raise(U.DuplicateDefaultExport,ie):this.raise(U.DuplicateExport,ie,{exportName:w})),this.exportedIdentifiers.add(w)}parseExportSpecifiers(ie){let w=[],J=!0;for(this.expect(5);!this.eat(8);){if(J)J=!1;else if(this.expect(12),this.eat(8))break;let ye=this.isContextual(130),ut=this.match(134),zt=this.startNode();zt.local=this.parseModuleExportName(),w.push(this.parseExportSpecifier(zt,ut,ie,ye))}return w}parseExportSpecifier(ie,w,J,ye){return this.eatContextual(93)?ie.exported=this.parseModuleExportName():w?ie.exported=NC(ie.local):ie.exported||(ie.exported=ii(ie.local)),this.finishNode(ie,"ExportSpecifier")}parseModuleExportName(){if(this.match(134)){let ie=this.parseStringLiteral(this.state.value),w=um.exec(ie.value);return w&&this.raise(U.ModuleExportNameHasLoneSurrogate,ie,{surrogateCharCode:w[0].charCodeAt(0)}),ie}return this.parseIdentifier(!0)}isJSONModuleImport(ie){return ie.assertions!=null?ie.assertions.some(({key:w,value:J})=>J.value==="json"&&(w.type==="Identifier"?w.name==="type":w.value==="type")):!1}checkImportReflection(ie){let{specifiers:w}=ie,J=w.length===1?w[0].type:null;if(ie.phase==="source")J!=="ImportDefaultSpecifier"&&this.raise(U.SourcePhaseImportRequiresDefault,w[0].loc.start);else if(ie.phase==="defer")J!=="ImportNamespaceSpecifier"&&this.raise(U.DeferImportRequiresNamespace,w[0].loc.start);else if(ie.module){var ye;J!=="ImportDefaultSpecifier"&&this.raise(U.ImportReflectionNotBinding,w[0].loc.start),((ye=ie.assertions)==null?void 0:ye.length)>0&&this.raise(U.ImportReflectionHasAssertion,w[0].loc.start)}}checkJSONModuleImport(ie){if(this.isJSONModuleImport(ie)&&ie.type!=="ExportAllDeclaration"){let{specifiers:w}=ie;if(w!=null){let J=w.find(ye=>{let ut;if(ye.type==="ExportSpecifier"?ut=ye.local:ye.type==="ImportSpecifier"&&(ut=ye.imported),ut!==void 0)return ut.type==="Identifier"?ut.name!=="default":ut.value!=="default"});J!==void 0&&this.raise(U.ImportJSONBindingNotDefault,J.loc.start)}}}isPotentialImportPhase(ie){return ie?!1:this.isContextual(105)||this.isContextual(97)||this.isContextual(127)}applyImportPhase(ie,w,J,ye){w||(J==="module"?(this.expectPlugin("importReflection",ye),ie.module=!0):this.hasPlugin("importReflection")&&(ie.module=!1),J==="source"?(this.expectPlugin("sourcePhaseImports",ye),ie.phase="source"):J==="defer"?(this.expectPlugin("deferredImportEvaluation",ye),ie.phase="defer"):this.hasPlugin("sourcePhaseImports")&&(ie.phase=null))}parseMaybeImportPhase(ie,w){if(!this.isPotentialImportPhase(w))return this.applyImportPhase(ie,w,null),null;let J=this.parseIdentifier(!0),{type:ye}=this.state;return(we(ye)?ye!==98||this.lookaheadCharCode()===102:ye!==12)?(this.resetPreviousIdentifierLeadingComments(J),this.applyImportPhase(ie,w,J.name,J.loc.start),null):(this.applyImportPhase(ie,w,null),J)}isPrecedingIdImportPhase(ie){let{type:w}=this.state;return gn(w)?w!==98||this.lookaheadCharCode()===102:w!==12}parseImport(ie){return this.match(134)?this.parseImportSourceAndAttributes(ie):this.parseImportSpecifiersAndAfter(ie,this.parseMaybeImportPhase(ie,!1))}parseImportSpecifiersAndAfter(ie,w){ie.specifiers=[];let J=!this.maybeParseDefaultImportSpecifier(ie,w)||this.eat(12),ye=J&&this.maybeParseStarImportSpecifier(ie);return J&&!ye&&this.parseNamedImportSpecifiers(ie),this.expectContextual(98),this.parseImportSourceAndAttributes(ie)}parseImportSourceAndAttributes(ie){var w;return(w=ie.specifiers)!=null||(ie.specifiers=[]),ie.source=this.parseImportSource(),this.maybeParseImportAttributes(ie),this.checkImportReflection(ie),this.checkJSONModuleImport(ie),this.semicolon(),this.finishNode(ie,"ImportDeclaration")}parseImportSource(){return this.match(134)||this.unexpected(),this.parseExprAtom()}parseImportSpecifierLocal(ie,w,J){w.local=this.parseIdentifier(),ie.specifiers.push(this.finishImportSpecifier(w,J))}finishImportSpecifier(ie,w,J=8201){return this.checkLVal(ie.local,{type:w},J),this.finishNode(ie,w)}parseImportAttributes(){this.expect(5);let ie=[],w=new Set;do{if(this.match(8))break;let J=this.startNode(),ye=this.state.value;if(w.has(ye)&&this.raise(U.ModuleAttributesWithDuplicateKeys,this.state.startLoc,{key:ye}),w.add(ye),this.match(134)?J.key=this.parseStringLiteral(ye):J.key=this.parseIdentifier(!0),this.expect(14),!this.match(134))throw this.raise(U.ModuleAttributeInvalidValue,this.state.startLoc);J.value=this.parseStringLiteral(this.state.value),ie.push(this.finishNode(J,"ImportAttribute"))}while(this.eat(12));return this.expect(8),ie}parseModuleAttributes(){let ie=[],w=new Set;do{let J=this.startNode();if(J.key=this.parseIdentifier(!0),J.key.name!=="type"&&this.raise(U.ModuleAttributeDifferentFromType,J.key),w.has(J.key.name)&&this.raise(U.ModuleAttributesWithDuplicateKeys,J.key,{key:J.key.name}),w.add(J.key.name),this.expect(14),!this.match(134))throw this.raise(U.ModuleAttributeInvalidValue,this.state.startLoc);J.value=this.parseStringLiteral(this.state.value),ie.push(this.finishNode(J,"ImportAttribute"))}while(this.eat(12));return ie}maybeParseImportAttributes(ie){let w;var J=!1;if(this.match(76)){if(this.hasPrecedingLineBreak()&&this.lookaheadCharCode()===40)return;this.next(),this.hasPlugin("moduleAttributes")?w=this.parseModuleAttributes():w=this.parseImportAttributes(),J=!0}else this.isContextual(94)&&!this.hasPrecedingLineBreak()?(!this.hasPlugin("deprecatedImportAssert")&&!this.hasPlugin("importAssertions")&&this.raise(U.ImportAttributesUseAssert,this.state.startLoc),this.hasPlugin("importAssertions")||this.addExtra(ie,"deprecatedAssertSyntax",!0),this.next(),w=this.parseImportAttributes()):w=[];!J&&this.hasPlugin("importAssertions")?ie.assertions=w:ie.attributes=w}maybeParseDefaultImportSpecifier(ie,w){if(w){let J=this.startNodeAtNode(w);return J.local=w,ie.specifiers.push(this.finishImportSpecifier(J,"ImportDefaultSpecifier")),!0}else if(we(this.state.type))return this.parseImportSpecifierLocal(ie,this.startNode(),"ImportDefaultSpecifier"),!0;return!1}maybeParseStarImportSpecifier(ie){if(this.match(55)){let w=this.startNode();return this.next(),this.expectContextual(93),this.parseImportSpecifierLocal(ie,w,"ImportNamespaceSpecifier"),!0}return!1}parseNamedImportSpecifiers(ie){let w=!0;for(this.expect(5);!this.eat(8);){if(w)w=!1;else{if(this.eat(14))throw this.raise(U.DestructureNamedImport,this.state.startLoc);if(this.expect(12),this.eat(8))break}let J=this.startNode(),ye=this.match(134),ut=this.isContextual(130);J.imported=this.parseModuleExportName();let zt=this.parseImportSpecifier(J,ye,ie.importKind==="type"||ie.importKind==="typeof",ut,void 0);ie.specifiers.push(zt)}}parseImportSpecifier(ie,w,J,ye,ut){if(this.eatContextual(93))ie.local=this.parseIdentifier();else{let{imported:zt}=ie;if(w)throw this.raise(U.ImportBindingIsString,ie,{importName:zt.value});this.checkReservedWord(zt.name,ie.loc.start,!0,!0),ie.local||(ie.local=ii(zt))}return this.finishImportSpecifier(ie,"ImportSpecifier",ut)}isThisParam(ie){return ie.type==="Identifier"&&ie.name==="this"}},wb=class extends gm{constructor(ie,w,J){ie=ae(ie),super(ie,w),this.options=ie,this.initializeScopes(),this.plugins=J,this.filename=ie.sourceFilename,this.startIndex=ie.startIndex;let ye=0;ie.allowAwaitOutsideFunction&&(ye|=1),ie.allowReturnOutsideFunction&&(ye|=2),ie.allowImportExportEverywhere&&(ye|=8),ie.allowSuperOutsideMethod&&(ye|=16),ie.allowUndeclaredExports&&(ye|=32),ie.allowNewTargetOutsideFunction&&(ye|=4),ie.ranges&&(ye|=64),ie.tokens&&(ye|=128),ie.createImportExpressions&&(ye|=256),ie.createParenthesizedExpressions&&(ye|=512),ie.errorRecovery&&(ye|=1024),ie.attachComment&&(ye|=2048),ie.annexB&&(ye|=4096),this.optionFlags=ye}getScopeHandler(){return Dg}parse(){this.enterInitialScopes();let ie=this.startNode(),w=this.startNode();return this.nextToken(),ie.errors=null,this.parseTopLevel(ie,w),ie.errors=this.state.errors,ie.comments.length=this.state.commentsLen,ie}};function Rm(ie,w){var J;if(((J=w)==null?void 0:J.sourceType)==="unambiguous"){w=Object.assign({},w);try{w.sourceType="module";let ye=Zf(w,ie),ut=ye.parse();if(ye.sawUnambiguousESM)return ut;if(ye.ambiguousScriptDifferentAst)try{return w.sourceType="script",Zf(w,ie).parse()}catch{}else ut.program.sourceType="script";return ut}catch(ye){try{return w.sourceType="script",Zf(w,ie).parse()}catch{}throw ye}}else return Zf(w,ie).parse()}function PI(ie,w){let J=Zf(w,ie);return J.options.strictMode&&(J.state.strict=!0),J.getExpression()}function Ef(ie){let w={};for(let J of Object.keys(ie))w[J]=nn(ie[J]);return w}var eI=Ef(tr);function Zf(ie,w){let J=wb,ye=new Map;if(ie!=null&&ie.plugins){for(let ut of ie.plugins){let zt,Zr;typeof ut=="string"?zt=ut:[zt,Zr]=ut,ye.has(zt)||ye.set(zt,Zr||{})}R0(ye),J=uy(ye)}return new J(ie,w,ye)}var hE=new Map;function uy(ie){let w=[];for(let ut of ly)ie.has(ut)&&w.push(ut);let J=w.join("|"),ye=hE.get(J);if(!ye){ye=wb;for(let ut of w)ye=_h[ut](ye);hE.set(J,ye)}return ye}e.parse=Rm,e.parseExpression=PI,e.tokTypes=eI}),g$n={};G8o(g$n,{parsers:()=>vve});var zqn=c$n(l$n(),1);function ZIt(e){return(t,r,s)=>{let a=!!(s!=null&&s.backwards);if(r===!1)return!1;let{length:o}=t,g=r;for(;g>=0&&g=this.length)throw this.raise(U.UnterminatedString,this.state.startLoc);let ut=this.input.charCodeAt(this.state.pos);if(ut===w)break;ut===38?(J+=this.input.slice(ye,this.state.pos),J+=this.jsxReadEntity(),ye=this.state.pos):us(ut)?(J+=this.input.slice(ye,this.state.pos),J+=this.jsxReadNewLine(!1),ye=this.state.pos):++this.state.pos}J+=this.input.slice(ye,this.state.pos++),this.finishToken(134,J)}jsxReadEntity(){let w=++this.state.pos;if(this.codePointAtPos(this.state.pos)===35){++this.state.pos;let J=10;this.codePointAtPos(this.state.pos)===120&&(J=16,++this.state.pos);let ye=this.readInt(J,void 0,!1,"bail");if(ye!==null&&this.codePointAtPos(this.state.pos)===59)return++this.state.pos,String.fromCodePoint(ye)}else{let J=0,ye=!1;for(;J++<10&&this.state.pos1){for(let ye=0;ye0){if(J&256){let ut=!!(J&512),zt=(ye&4)>0;return ut!==zt}return!0}return J&128&&(ye&8)>0?ie.names.get(w)&2?!!(J&1):!1:J&2&&(ye&1)>0?!0:super.isRedeclaredInScope(ie,w,J)}checkLocalExport(ie){let{name:w}=ie;if(this.hasImport(w))return;let J=this.scopeStack.length;for(let ye=J-1;ye>=0;ye--){let ut=this.scopeStack[ye].tsNames.get(w);if((ut&1)>0||(ut&16)>0)return}super.checkLocalExport(ie)}},Nn=ie=>ie.type==="ParenthesizedExpression"?Nn(ie.expression):ie,Di=class extends Uh{toAssignable(ie,w=!1){var J,ye;let ut;switch((ie.type==="ParenthesizedExpression"||(J=ie.extra)!=null&&J.parenthesized)&&(ut=Nn(ie),w?ut.type==="Identifier"?this.expressionScope.recordArrowParameterBindingError(U.InvalidParenthesizedAssignment,ie):ut.type!=="MemberExpression"&&!this.isOptionalMemberExpression(ut)&&this.raise(U.InvalidParenthesizedAssignment,ie):this.raise(U.InvalidParenthesizedAssignment,ie)),ie.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":break;case"ObjectExpression":ie.type="ObjectPattern";for(let Zr=0,wr=ie.properties.length,Hn=wr-1;Zrye.type!=="ObjectMethod"&&(ut===J||ye.type!=="SpreadElement")&&this.isAssignable(ye))}case"ObjectProperty":return this.isAssignable(ie.value);case"SpreadElement":return this.isAssignable(ie.argument);case"ArrayExpression":return ie.elements.every(J=>J===null||this.isAssignable(J));case"AssignmentExpression":return ie.operator==="=";case"ParenthesizedExpression":return this.isAssignable(ie.expression);case"MemberExpression":case"OptionalMemberExpression":return!w;default:return!1}}toReferencedList(ie,w){return ie}toReferencedListDeep(ie,w){this.toReferencedList(ie,w);for(let J of ie)J?.type==="ArrayExpression"&&this.toReferencedListDeep(J.elements)}parseSpread(ie){let w=this.startNode();return this.next(),w.argument=this.parseMaybeAssignAllowIn(ie,void 0),this.finishNode(w,"SpreadElement")}parseRestBinding(){let ie=this.startNode();return this.next(),ie.argument=this.parseBindingAtom(),this.finishNode(ie,"RestElement")}parseBindingAtom(){switch(this.state.type){case 0:{let ie=this.startNode();return this.next(),ie.elements=this.parseBindingList(3,93,1),this.finishNode(ie,"ArrayPattern")}case 5:return this.parseObjectLike(8,!0)}return this.parseIdentifier()}parseBindingList(ie,w,J){let ye=J&1,ut=[],zt=!0;for(;!this.eat(ie);)if(zt?zt=!1:this.expect(12),ye&&this.match(12))ut.push(null);else{if(this.eat(ie))break;if(this.match(21)){let Zr=this.parseRestBinding();if((this.hasPlugin("flow")||J&2)&&(Zr=this.parseFunctionParamType(Zr)),ut.push(Zr),!this.checkCommaAfterRest(w)){this.expect(ie);break}}else{let Zr=[];for(this.match(26)&&this.hasPlugin("decorators")&&this.raise(U.UnsupportedParameterDecorator,this.state.startLoc);this.match(26);)Zr.push(this.parseDecorator());ut.push(this.parseAssignableListItem(J,Zr))}}return ut}parseBindingRestProperty(ie){return this.next(),ie.argument=this.parseIdentifier(),this.checkCommaAfterRest(125),this.finishNode(ie,"RestElement")}parseBindingProperty(){let{type:ie,startLoc:w}=this.state;if(ie===21)return this.parseBindingRestProperty(this.startNode());let J=this.startNode();return ie===139?(this.expectPlugin("destructuringPrivate",w),this.classScope.usePrivateName(this.state.value,w),J.key=this.parsePrivateName()):this.parsePropertyName(J),J.method=!1,this.parseObjPropValue(J,w,!1,!1,!0,!1)}parseAssignableListItem(ie,w){let J=this.parseMaybeDefault();(this.hasPlugin("flow")||ie&2)&&this.parseFunctionParamType(J);let ye=this.parseMaybeDefault(J.loc.start,J);return w.length&&(J.decorators=w),ye}parseFunctionParamType(ie){return ie}parseMaybeDefault(ie,w){var J,ye;if((J=ie)!=null||(ie=this.state.startLoc),w=(ye=w)!=null?ye:this.parseBindingAtom(),!this.eat(29))return w;let ut=this.startNodeAt(ie);return ut.left=w,ut.right=this.parseMaybeAssignAllowIn(),this.finishNode(ut,"AssignmentPattern")}isValidLVal(ie,w,J){switch(ie){case"AssignmentPattern":return"left";case"RestElement":return"argument";case"ObjectProperty":return"value";case"ParenthesizedExpression":return"expression";case"ArrayPattern":return"elements";case"ObjectPattern":return"properties"}return!1}isOptionalMemberExpression(ie){return ie.type==="OptionalMemberExpression"}checkLVal(ie,w,J=64,ye=!1,ut=!1,zt=!1){var Zr;let wr=ie.type;if(this.isObjectMethod(ie))return;let Hn=this.isOptionalMemberExpression(ie);if(Hn||wr==="MemberExpression"){Hn&&(this.expectPlugin("optionalChainingAssign",ie.loc.start),w.type!=="AssignmentExpression"&&this.raise(U.InvalidLhsOptionalChaining,ie,{ancestor:w})),J!==64&&this.raise(U.InvalidPropertyBindingPattern,ie);return}if(wr==="Identifier"){this.checkIdentifier(ie,J,ut);let{name:bu}=ie;ye&&(ye.has(bu)?this.raise(U.ParamDupe,ie):ye.add(bu));return}let Dn=this.isValidLVal(wr,!(zt||(Zr=ie.extra)!=null&&Zr.parenthesized)&&w.type==="AssignmentExpression",J);if(Dn===!0)return;if(Dn===!1){let bu=J===64?U.InvalidLhs:U.InvalidLhsBinding;this.raise(bu,ie,{ancestor:w});return}let Wo,Ic;typeof Dn=="string"?(Wo=Dn,Ic=wr==="ParenthesizedExpression"):[Wo,Ic]=Dn;let Jc=wr==="ArrayPattern"||wr==="ObjectPattern"?{type:wr}:w,Mo=ie[Wo];if(Array.isArray(Mo))for(let bu of Mo)bu&&this.checkLVal(bu,Jc,J,ye,ut,Ic);else Mo&&this.checkLVal(Mo,Jc,J,ye,ut,Ic)}checkIdentifier(ie,w,J=!1){this.state.strict&&(J?ka(ie.name,this.inModule):$i(ie.name))&&(w===64?this.raise(U.StrictEvalArguments,ie,{referenceName:ie.name}):this.raise(U.StrictEvalArgumentsBinding,ie,{bindingName:ie.name})),w&8192&&ie.name==="let"&&this.raise(U.LetInLexicalBinding,ie),w&64||this.declareNameFromIdentifier(ie,w)}declareNameFromIdentifier(ie,w){this.scope.declareName(ie.name,w,ie.loc.start)}checkToRestConversion(ie,w){switch(ie.type){case"ParenthesizedExpression":this.checkToRestConversion(ie.expression,w);break;case"Identifier":case"MemberExpression":break;case"ArrayExpression":case"ObjectExpression":if(w)break;default:this.raise(U.InvalidRestAssignmentPattern,ie)}}checkCommaAfterRest(ie){return this.match(12)?(this.raise(this.lookaheadCharCode()===ie?U.RestTrailingComma:U.ElementAfterRest,this.state.startLoc),!0):!1}};function ra(ie){if(ie==null)throw new Error(`Unexpected ${ie} value.`);return ie}function Us(ie){if(!ie)throw new Error("Assert fail")}var Li=X`typescript`({AbstractMethodHasImplementation:({methodName:ie})=>`Method '${ie}' cannot have an implementation because it is marked abstract.`,AbstractPropertyHasInitializer:({propertyName:ie})=>`Property '${ie}' cannot have an initializer because it is marked abstract.`,AccessorCannotBeOptional:"An 'accessor' property cannot be declared optional.",AccessorCannotDeclareThisParameter:"'get' and 'set' accessors cannot declare 'this' parameters.",AccessorCannotHaveTypeParameters:"An accessor cannot have type parameters.",ClassMethodHasDeclare:"Class methods cannot have the 'declare' modifier.",ClassMethodHasReadonly:"Class methods cannot have the 'readonly' modifier.",ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:"A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference.",ConstructorHasTypeParameters:"Type parameters cannot appear on a constructor declaration.",DeclareAccessor:({kind:ie})=>`'declare' is not allowed in ${ie}ters.`,DeclareClassFieldHasInitializer:"Initializers are not allowed in ambient contexts.",DeclareFunctionHasImplementation:"An implementation cannot be declared in ambient contexts.",DuplicateAccessibilityModifier:({modifier:ie})=>"Accessibility modifier already seen.",DuplicateModifier:({modifier:ie})=>`Duplicate modifier: '${ie}'.`,EmptyHeritageClauseType:({token:ie})=>`'${ie}' list cannot be empty.`,EmptyTypeArguments:"Type argument list cannot be empty.",EmptyTypeParameters:"Type parameter list cannot be empty.",ExpectedAmbientAfterExportDeclare:"'export declare' must be followed by an ambient declaration.",ImportAliasHasImportType:"An import alias can not use 'import type'.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` modifier",IncompatibleModifiers:({modifiers:ie})=>`'${ie[0]}' modifier cannot be used with '${ie[1]}' modifier.`,IndexSignatureHasAbstract:"Index signatures cannot have the 'abstract' modifier.",IndexSignatureHasAccessibility:({modifier:ie})=>`Index signatures cannot have an accessibility modifier ('${ie}').`,IndexSignatureHasDeclare:"Index signatures cannot have the 'declare' modifier.",IndexSignatureHasOverride:"'override' modifier cannot appear on an index signature.",IndexSignatureHasStatic:"Index signatures cannot have the 'static' modifier.",InitializerNotAllowedInAmbientContext:"Initializers are not allowed in ambient contexts.",InvalidModifierOnTypeMember:({modifier:ie})=>`'${ie}' modifier cannot appear on a type member.`,InvalidModifierOnTypeParameter:({modifier:ie})=>`'${ie}' modifier cannot appear on a type parameter.`,InvalidModifierOnTypeParameterPositions:({modifier:ie})=>`'${ie}' modifier can only appear on a type parameter of a class, interface or type alias.`,InvalidModifiersOrder:({orderedModifiers:ie})=>`'${ie[0]}' modifier must precede '${ie[1]}' modifier.`,InvalidPropertyAccessAfterInstantiationExpression:"Invalid property access after an instantiation expression. You can either wrap the instantiation expression in parentheses, or delete the type arguments.",InvalidTupleMemberLabel:"Tuple members must be labeled with a simple identifier.",MissingInterfaceName:"'interface' declarations must be followed by an identifier.",NonAbstractClassHasAbstractMethod:"Abstract methods can only appear within an abstract class.",NonClassMethodPropertyHasAbstractModifer:"'abstract' modifier can only appear on a class, method, or property declaration.",OptionalTypeBeforeRequired:"A required element cannot follow an optional element.",OverrideNotInSubClass:"This member cannot have an 'override' modifier because its containing class does not extend another class.",PatternIsOptional:"A binding pattern parameter cannot be optional in an implementation signature.",PrivateElementHasAbstract:"Private elements cannot have the 'abstract' modifier.",PrivateElementHasAccessibility:({modifier:ie})=>`Private elements cannot have an accessibility modifier ('${ie}').`,ReadonlyForMethodSignature:"'readonly' modifier can only appear on a property declaration or index signature.",ReservedArrowTypeParam:"This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma, as in `() => ...`.",ReservedTypeAssertion:"This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead.",SetAccessorCannotHaveOptionalParameter:"A 'set' accessor cannot have an optional parameter.",SetAccessorCannotHaveRestParameter:"A 'set' accessor cannot have rest parameter.",SetAccessorCannotHaveReturnType:"A 'set' accessor cannot have a return type annotation.",SingleTypeParameterWithoutTrailingComma:({typeParameterName:ie})=>`Single type parameter ${ie} should have a trailing comma. Example usage: <${ie},>.`,StaticBlockCannotHaveModifier:"Static class blocks cannot have any modifier.",TupleOptionalAfterType:"A labeled tuple optional element must be declared using a question mark after the name and before the colon (`name?: type`), rather than after the type (`name: type?`).",TypeAnnotationAfterAssign:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeImportCannotSpecifyDefaultAndNamed:"A type-only import can specify a default import or named bindings, but not both.",TypeModifierIsUsedInTypeExports:"The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement.",TypeModifierIsUsedInTypeImports:"The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement.",UnexpectedParameterModifier:"A parameter property is only allowed in a constructor implementation.",UnexpectedReadonly:"'readonly' type modifier is only permitted on array and tuple literal types.",UnexpectedTypeAnnotation:"Did not expect a type annotation here.",UnexpectedTypeCastInParameter:"Unexpected type cast in parameter position.",UnsupportedImportTypeArgument:"Argument in a type import must be a string literal.",UnsupportedParameterPropertyKind:"A parameter property may not be declared using a binding pattern.",UnsupportedSignatureParameterKind:({type:ie})=>`Name in a signature must be an Identifier, ObjectPattern or ArrayPattern, instead got ${ie}.`});function Ll(ie){switch(ie){case"any":return"TSAnyKeyword";case"boolean":return"TSBooleanKeyword";case"bigint":return"TSBigIntKeyword";case"never":return"TSNeverKeyword";case"number":return"TSNumberKeyword";case"object":return"TSObjectKeyword";case"string":return"TSStringKeyword";case"symbol":return"TSSymbolKeyword";case"undefined":return"TSUndefinedKeyword";case"unknown":return"TSUnknownKeyword";default:return}}function DA(ie){return ie==="private"||ie==="public"||ie==="protected"}function Rd(ie){return ie==="in"||ie==="out"}var PI=ie=>class extends ie{constructor(...w){super(...w),this.tsParseInOutModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out"],disallowedModifiers:["const","public","private","protected","readonly","declare","abstract","override"],errorTemplate:Li.InvalidModifierOnTypeParameter}),this.tsParseConstModifier=this.tsParseModifiers.bind(this,{allowedModifiers:["const"],disallowedModifiers:["in","out"],errorTemplate:Li.InvalidModifierOnTypeParameterPositions}),this.tsParseInOutConstModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out","const"],disallowedModifiers:["public","private","protected","readonly","declare","abstract","override"],errorTemplate:Li.InvalidModifierOnTypeParameter})}getScopeHandler(){return Nr}tsIsIdentifier(){return gn(this.state.type)}tsTokenCanFollowModifier(){return this.match(0)||this.match(5)||this.match(55)||this.match(21)||this.match(139)||this.isLiteralPropertyName()}tsNextTokenOnSameLineAndCanFollowModifier(){return this.next(),this.hasPrecedingLineBreak()?!1:this.tsTokenCanFollowModifier()}tsNextTokenCanFollowModifier(){return this.match(106)?(this.next(),this.tsTokenCanFollowModifier()):this.tsNextTokenOnSameLineAndCanFollowModifier()}tsParseModifier(w,J){if(!gn(this.state.type)&&this.state.type!==58&&this.state.type!==75)return;let ye=this.state.value;if(w.includes(ye)){if(J&&this.tsIsStartOfStaticBlocks())return;if(this.tsTryParse(this.tsNextTokenCanFollowModifier.bind(this)))return ye}}tsParseModifiers({allowedModifiers:w,disallowedModifiers:J,stopOnStartOfClassStaticBlock:ye,errorTemplate:ut=Li.InvalidModifierOnTypeMember},zt){let Zr=(Hn,Dn,Wo,Ic)=>{Dn===Wo&&zt[Ic]&&this.raise(Li.InvalidModifiersOrder,Hn,{orderedModifiers:[Wo,Ic]})},wr=(Hn,Dn,Wo,Ic)=>{(zt[Wo]&&Dn===Ic||zt[Ic]&&Dn===Wo)&&this.raise(Li.IncompatibleModifiers,Hn,{modifiers:[Wo,Ic]})};for(;;){let{startLoc:Hn}=this.state,Dn=this.tsParseModifier(w.concat(J??[]),ye);if(!Dn)break;DA(Dn)?zt.accessibility?this.raise(Li.DuplicateAccessibilityModifier,Hn,{modifier:Dn}):(Zr(Hn,Dn,Dn,"override"),Zr(Hn,Dn,Dn,"static"),Zr(Hn,Dn,Dn,"readonly"),zt.accessibility=Dn):Rd(Dn)?(zt[Dn]&&this.raise(Li.DuplicateModifier,Hn,{modifier:Dn}),zt[Dn]=!0,Zr(Hn,Dn,"in","out")):(hasOwnProperty.call(zt,Dn)?this.raise(Li.DuplicateModifier,Hn,{modifier:Dn}):(Zr(Hn,Dn,"static","readonly"),Zr(Hn,Dn,"static","override"),Zr(Hn,Dn,"override","readonly"),Zr(Hn,Dn,"abstract","override"),wr(Hn,Dn,"declare","override"),wr(Hn,Dn,"static","abstract")),zt[Dn]=!0),J!=null&&J.includes(Dn)&&this.raise(ut,Hn,{modifier:Dn})}}tsIsListTerminator(w){switch(w){case"EnumMembers":case"TypeMembers":return this.match(8);case"HeritageClauseElement":return this.match(5);case"TupleElementTypes":return this.match(3);case"TypeParametersOrArguments":return this.match(48)}}tsParseList(w,J){let ye=[];for(;!this.tsIsListTerminator(w);)ye.push(J());return ye}tsParseDelimitedList(w,J,ye){return ra(this.tsParseDelimitedListWorker(w,J,!0,ye))}tsParseDelimitedListWorker(w,J,ye,ut){let zt=[],Zr=-1;for(;!this.tsIsListTerminator(w);){Zr=-1;let wr=J();if(wr==null)return;if(zt.push(wr),this.eat(12)){Zr=this.state.lastTokStartLoc.index;continue}if(this.tsIsListTerminator(w))break;ye&&this.expect(12);return}return ut&&(ut.value=Zr),zt}tsParseBracketedList(w,J,ye,ut,zt){ut||(ye?this.expect(0):this.expect(47));let Zr=this.tsParseDelimitedList(w,J,zt);return ye?this.expect(3):this.expect(48),Zr}tsParseImportType(){let w=this.startNode();return this.expect(83),this.expect(10),this.match(134)?w.argument=this.parseStringLiteral(this.state.value):(this.raise(Li.UnsupportedImportTypeArgument,this.state.startLoc),w.argument=super.parseExprAtom()),this.eat(12)&&!this.match(11)?(w.options=super.parseMaybeAssignAllowIn(),this.eat(12)):w.options=null,this.expect(11),this.eat(16)&&(w.qualifier=this.tsParseEntityName(3)),this.match(47)&&(w.typeParameters=this.tsParseTypeArguments()),this.finishNode(w,"TSImportType")}tsParseEntityName(w){let J;if(w&1&&this.match(78))if(w&2)J=this.parseIdentifier(!0);else{let ye=this.startNode();this.next(),J=this.finishNode(ye,"ThisExpression")}else J=this.parseIdentifier(!!(w&1));for(;this.eat(16);){let ye=this.startNodeAtNode(J);ye.left=J,ye.right=this.parseIdentifier(!!(w&1)),J=this.finishNode(ye,"TSQualifiedName")}return J}tsParseTypeReference(){let w=this.startNode();return w.typeName=this.tsParseEntityName(1),!this.hasPrecedingLineBreak()&&this.match(47)&&(w.typeParameters=this.tsParseTypeArguments()),this.finishNode(w,"TSTypeReference")}tsParseThisTypePredicate(w){this.next();let J=this.startNodeAtNode(w);return J.parameterName=w,J.typeAnnotation=this.tsParseTypeAnnotation(!1),J.asserts=!1,this.finishNode(J,"TSTypePredicate")}tsParseThisTypeNode(){let w=this.startNode();return this.next(),this.finishNode(w,"TSThisType")}tsParseTypeQuery(){let w=this.startNode();return this.expect(87),this.match(83)?w.exprName=this.tsParseImportType():w.exprName=this.tsParseEntityName(3),!this.hasPrecedingLineBreak()&&this.match(47)&&(w.typeParameters=this.tsParseTypeArguments()),this.finishNode(w,"TSTypeQuery")}tsParseTypeParameter(w){let J=this.startNode();return w(J),J.name=this.tsParseTypeParameterName(),J.constraint=this.tsEatThenParseType(81),J.default=this.tsEatThenParseType(29),this.finishNode(J,"TSTypeParameter")}tsTryParseTypeParameters(w){if(this.match(47))return this.tsParseTypeParameters(w)}tsParseTypeParameters(w){let J=this.startNode();this.match(47)||this.match(143)?this.next():this.unexpected();let ye={value:-1};return J.params=this.tsParseBracketedList("TypeParametersOrArguments",this.tsParseTypeParameter.bind(this,w),!1,!0,ye),J.params.length===0&&this.raise(Li.EmptyTypeParameters,J),ye.value!==-1&&this.addExtra(J,"trailingComma",ye.value),this.finishNode(J,"TSTypeParameterDeclaration")}tsFillSignature(w,J){let ye=w===19,ut="parameters",zt="typeAnnotation";J.typeParameters=this.tsTryParseTypeParameters(this.tsParseConstModifier),this.expect(10),J[ut]=this.tsParseBindingListForSignature(),ye?J[zt]=this.tsParseTypeOrTypePredicateAnnotation(w):this.match(w)&&(J[zt]=this.tsParseTypeOrTypePredicateAnnotation(w))}tsParseBindingListForSignature(){let w=super.parseBindingList(11,41,2);for(let J of w){let{type:ye}=J;(ye==="AssignmentPattern"||ye==="TSParameterProperty")&&this.raise(Li.UnsupportedSignatureParameterKind,J,{type:ye})}return w}tsParseTypeMemberSemicolon(){!this.eat(12)&&!this.isLineTerminator()&&this.expect(13)}tsParseSignatureMember(w,J){return this.tsFillSignature(14,J),this.tsParseTypeMemberSemicolon(),this.finishNode(J,w)}tsIsUnambiguouslyIndexSignature(){return this.next(),gn(this.state.type)?(this.next(),this.match(14)):!1}tsTryParseIndexSignature(w){if(!(this.match(0)&&this.tsLookAhead(this.tsIsUnambiguouslyIndexSignature.bind(this))))return;this.expect(0);let J=this.parseIdentifier();J.typeAnnotation=this.tsParseTypeAnnotation(),this.resetEndLocation(J),this.expect(3),w.parameters=[J];let ye=this.tsTryParseTypeAnnotation();return ye&&(w.typeAnnotation=ye),this.tsParseTypeMemberSemicolon(),this.finishNode(w,"TSIndexSignature")}tsParsePropertyOrMethodSignature(w,J){this.eat(17)&&(w.optional=!0);let ye=w;if(this.match(10)||this.match(47)){J&&this.raise(Li.ReadonlyForMethodSignature,w);let ut=ye;ut.kind&&this.match(47)&&this.raise(Li.AccessorCannotHaveTypeParameters,this.state.curPosition()),this.tsFillSignature(14,ut),this.tsParseTypeMemberSemicolon();let zt="parameters",Zr="typeAnnotation";if(ut.kind==="get")ut[zt].length>0&&(this.raise(U.BadGetterArity,this.state.curPosition()),this.isThisParam(ut[zt][0])&&this.raise(Li.AccessorCannotDeclareThisParameter,this.state.curPosition()));else if(ut.kind==="set"){if(ut[zt].length!==1)this.raise(U.BadSetterArity,this.state.curPosition());else{let wr=ut[zt][0];this.isThisParam(wr)&&this.raise(Li.AccessorCannotDeclareThisParameter,this.state.curPosition()),wr.type==="Identifier"&&wr.optional&&this.raise(Li.SetAccessorCannotHaveOptionalParameter,this.state.curPosition()),wr.type==="RestElement"&&this.raise(Li.SetAccessorCannotHaveRestParameter,this.state.curPosition())}ut[Zr]&&this.raise(Li.SetAccessorCannotHaveReturnType,ut[Zr])}else ut.kind="method";return this.finishNode(ut,"TSMethodSignature")}else{let ut=ye;J&&(ut.readonly=!0);let zt=this.tsTryParseTypeAnnotation();return zt&&(ut.typeAnnotation=zt),this.tsParseTypeMemberSemicolon(),this.finishNode(ut,"TSPropertySignature")}}tsParseTypeMember(){let w=this.startNode();if(this.match(10)||this.match(47))return this.tsParseSignatureMember("TSCallSignatureDeclaration",w);if(this.match(77)){let ye=this.startNode();return this.next(),this.match(10)||this.match(47)?this.tsParseSignatureMember("TSConstructSignatureDeclaration",w):(w.key=this.createIdentifier(ye,"new"),this.tsParsePropertyOrMethodSignature(w,!1))}return this.tsParseModifiers({allowedModifiers:["readonly"],disallowedModifiers:["declare","abstract","private","protected","public","static","override"]},w),this.tsTryParseIndexSignature(w)||(super.parsePropertyName(w),!w.computed&&w.key.type==="Identifier"&&(w.key.name==="get"||w.key.name==="set")&&this.tsTokenCanFollowModifier()&&(w.kind=w.key.name,super.parsePropertyName(w)),this.tsParsePropertyOrMethodSignature(w,!!w.readonly))}tsParseTypeLiteral(){let w=this.startNode();return w.members=this.tsParseObjectTypeMembers(),this.finishNode(w,"TSTypeLiteral")}tsParseObjectTypeMembers(){this.expect(5);let w=this.tsParseList("TypeMembers",this.tsParseTypeMember.bind(this));return this.expect(8),w}tsIsStartOfMappedType(){return this.next(),this.eat(53)?this.isContextual(122):(this.isContextual(122)&&this.next(),!this.match(0)||(this.next(),!this.tsIsIdentifier())?!1:(this.next(),this.match(58)))}tsParseMappedType(){let w=this.startNode();this.expect(5),this.match(53)?(w.readonly=this.state.value,this.next(),this.expectContextual(122)):this.eatContextual(122)&&(w.readonly=!0),this.expect(0);{let J=this.startNode();J.name=this.tsParseTypeParameterName(),J.constraint=this.tsExpectThenParseType(58),w.typeParameter=this.finishNode(J,"TSTypeParameter")}return w.nameType=this.eatContextual(93)?this.tsParseType():null,this.expect(3),this.match(53)?(w.optional=this.state.value,this.next(),this.expect(17)):this.eat(17)&&(w.optional=!0),w.typeAnnotation=this.tsTryParseType(),this.semicolon(),this.expect(8),this.finishNode(w,"TSMappedType")}tsParseTupleType(){let w=this.startNode();w.elementTypes=this.tsParseBracketedList("TupleElementTypes",this.tsParseTupleElementType.bind(this),!0,!1);let J=!1;return w.elementTypes.forEach(ye=>{let{type:ut}=ye;J&&ut!=="TSRestType"&&ut!=="TSOptionalType"&&!(ut==="TSNamedTupleMember"&&ye.optional)&&this.raise(Li.OptionalTypeBeforeRequired,ye),J||(J=ut==="TSNamedTupleMember"&&ye.optional||ut==="TSOptionalType")}),this.finishNode(w,"TSTupleType")}tsParseTupleElementType(){let w=this.state.startLoc,J=this.eat(21),{startLoc:ye}=this.state,ut,zt,Zr,wr,Hn=we(this.state.type)?this.lookaheadCharCode():null;if(Hn===58)ut=!0,Zr=!1,zt=this.parseIdentifier(!0),this.expect(14),wr=this.tsParseType();else if(Hn===63){Zr=!0;let Dn=this.state.value,Wo=this.tsParseNonArrayType();this.lookaheadCharCode()===58?(ut=!0,zt=this.createIdentifier(this.startNodeAt(ye),Dn),this.expect(17),this.expect(14),wr=this.tsParseType()):(ut=!1,wr=Wo,this.expect(17))}else wr=this.tsParseType(),Zr=this.eat(17),ut=this.eat(14);if(ut){let Dn;zt?(Dn=this.startNodeAt(ye),Dn.optional=Zr,Dn.label=zt,Dn.elementType=wr,this.eat(17)&&(Dn.optional=!0,this.raise(Li.TupleOptionalAfterType,this.state.lastTokStartLoc))):(Dn=this.startNodeAt(ye),Dn.optional=Zr,this.raise(Li.InvalidTupleMemberLabel,wr),Dn.label=wr,Dn.elementType=this.tsParseType()),wr=this.finishNode(Dn,"TSNamedTupleMember")}else if(Zr){let Dn=this.startNodeAt(ye);Dn.typeAnnotation=wr,wr=this.finishNode(Dn,"TSOptionalType")}if(J){let Dn=this.startNodeAt(w);Dn.typeAnnotation=wr,wr=this.finishNode(Dn,"TSRestType")}return wr}tsParseParenthesizedType(){let w=this.startNode();return this.expect(10),w.typeAnnotation=this.tsParseType(),this.expect(11),this.finishNode(w,"TSParenthesizedType")}tsParseFunctionOrConstructorType(w,J){let ye=this.startNode();return w==="TSConstructorType"&&(ye.abstract=!!J,J&&this.next(),this.next()),this.tsInAllowConditionalTypesContext(()=>this.tsFillSignature(19,ye)),this.finishNode(ye,w)}tsParseLiteralTypeNode(){let w=this.startNode();switch(this.state.type){case 135:case 136:case 134:case 85:case 86:w.literal=super.parseExprAtom();break;default:this.unexpected()}return this.finishNode(w,"TSLiteralType")}tsParseTemplateLiteralType(){{let w=this.startNode();return w.literal=super.parseTemplate(!1),this.finishNode(w,"TSLiteralType")}}parseTemplateSubstitution(){return this.state.inType?this.tsParseType():super.parseTemplateSubstitution()}tsParseThisTypeOrThisTypePredicate(){let w=this.tsParseThisTypeNode();return this.isContextual(116)&&!this.hasPrecedingLineBreak()?this.tsParseThisTypePredicate(w):w}tsParseNonArrayType(){switch(this.state.type){case 134:case 135:case 136:case 85:case 86:return this.tsParseLiteralTypeNode();case 53:if(this.state.value==="-"){let w=this.startNode(),J=this.lookahead();return J.type!==135&&J.type!==136&&this.unexpected(),w.literal=this.parseMaybeUnary(),this.finishNode(w,"TSLiteralType")}break;case 78:return this.tsParseThisTypeOrThisTypePredicate();case 87:return this.tsParseTypeQuery();case 83:return this.tsParseImportType();case 5:return this.tsLookAhead(this.tsIsStartOfMappedType.bind(this))?this.tsParseMappedType():this.tsParseTypeLiteral();case 0:return this.tsParseTupleType();case 10:return this.tsParseParenthesizedType();case 25:case 24:return this.tsParseTemplateLiteralType();default:{let{type:w}=this.state;if(gn(w)||w===88||w===84){let J=w===88?"TSVoidKeyword":w===84?"TSNullKeyword":Ll(this.state.value);if(J!==void 0&&this.lookaheadCharCode()!==46){let ye=this.startNode();return this.next(),this.finishNode(ye,J)}return this.tsParseTypeReference()}}}this.unexpected()}tsParseArrayTypeOrHigher(){let{startLoc:w}=this.state,J=this.tsParseNonArrayType();for(;!this.hasPrecedingLineBreak()&&this.eat(0);)if(this.match(3)){let ye=this.startNodeAt(w);ye.elementType=J,this.expect(3),J=this.finishNode(ye,"TSArrayType")}else{let ye=this.startNodeAt(w);ye.objectType=J,ye.indexType=this.tsParseType(),this.expect(3),J=this.finishNode(ye,"TSIndexedAccessType")}return J}tsParseTypeOperator(){let w=this.startNode(),J=this.state.value;return this.next(),w.operator=J,w.typeAnnotation=this.tsParseTypeOperatorOrHigher(),J==="readonly"&&this.tsCheckTypeAnnotationForReadOnly(w),this.finishNode(w,"TSTypeOperator")}tsCheckTypeAnnotationForReadOnly(w){switch(w.typeAnnotation.type){case"TSTupleType":case"TSArrayType":return;default:this.raise(Li.UnexpectedReadonly,w)}}tsParseInferType(){let w=this.startNode();this.expectContextual(115);let J=this.startNode();return J.name=this.tsParseTypeParameterName(),J.constraint=this.tsTryParse(()=>this.tsParseConstraintForInferType()),w.typeParameter=this.finishNode(J,"TSTypeParameter"),this.finishNode(w,"TSInferType")}tsParseConstraintForInferType(){if(this.eat(81)){let w=this.tsInDisallowConditionalTypesContext(()=>this.tsParseType());if(this.state.inDisallowConditionalTypesContext||!this.match(17))return w}}tsParseTypeOperatorOrHigher(){return gd(this.state.type)&&!this.state.containsEsc?this.tsParseTypeOperator():this.isContextual(115)?this.tsParseInferType():this.tsInAllowConditionalTypesContext(()=>this.tsParseArrayTypeOrHigher())}tsParseUnionOrIntersectionType(w,J,ye){let ut=this.startNode(),zt=this.eat(ye),Zr=[];do Zr.push(J());while(this.eat(ye));return Zr.length===1&&!zt?Zr[0]:(ut.types=Zr,this.finishNode(ut,w))}tsParseIntersectionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSIntersectionType",this.tsParseTypeOperatorOrHigher.bind(this),45)}tsParseUnionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSUnionType",this.tsParseIntersectionTypeOrHigher.bind(this),43)}tsIsStartOfFunctionType(){return this.match(47)?!0:this.match(10)&&this.tsLookAhead(this.tsIsUnambiguouslyStartOfFunctionType.bind(this))}tsSkipParameterStart(){if(gn(this.state.type)||this.match(78))return this.next(),!0;if(this.match(5)){let{errors:w}=this.state,J=w.length;try{return this.parseObjectLike(8,!0),w.length===J}catch{return!1}}if(this.match(0)){this.next();let{errors:w}=this.state,J=w.length;try{return super.parseBindingList(3,93,1),w.length===J}catch{return!1}}return!1}tsIsUnambiguouslyStartOfFunctionType(){return this.next(),!!(this.match(11)||this.match(21)||this.tsSkipParameterStart()&&(this.match(14)||this.match(12)||this.match(17)||this.match(29)||this.match(11)&&(this.next(),this.match(19))))}tsParseTypeOrTypePredicateAnnotation(w){return this.tsInType(()=>{let J=this.startNode();this.expect(w);let ye=this.startNode(),ut=!!this.tsTryParse(this.tsParseTypePredicateAsserts.bind(this));if(ut&&this.match(78)){let wr=this.tsParseThisTypeOrThisTypePredicate();return wr.type==="TSThisType"?(ye.parameterName=wr,ye.asserts=!0,ye.typeAnnotation=null,wr=this.finishNode(ye,"TSTypePredicate")):(this.resetStartLocationFromNode(wr,ye),wr.asserts=!0),J.typeAnnotation=wr,this.finishNode(J,"TSTypeAnnotation")}let zt=this.tsIsIdentifier()&&this.tsTryParse(this.tsParseTypePredicatePrefix.bind(this));if(!zt)return ut?(ye.parameterName=this.parseIdentifier(),ye.asserts=ut,ye.typeAnnotation=null,J.typeAnnotation=this.finishNode(ye,"TSTypePredicate"),this.finishNode(J,"TSTypeAnnotation")):this.tsParseTypeAnnotation(!1,J);let Zr=this.tsParseTypeAnnotation(!1);return ye.parameterName=zt,ye.typeAnnotation=Zr,ye.asserts=ut,J.typeAnnotation=this.finishNode(ye,"TSTypePredicate"),this.finishNode(J,"TSTypeAnnotation")})}tsTryParseTypeOrTypePredicateAnnotation(){if(this.match(14))return this.tsParseTypeOrTypePredicateAnnotation(14)}tsTryParseTypeAnnotation(){if(this.match(14))return this.tsParseTypeAnnotation()}tsTryParseType(){return this.tsEatThenParseType(14)}tsParseTypePredicatePrefix(){let w=this.parseIdentifier();if(this.isContextual(116)&&!this.hasPrecedingLineBreak())return this.next(),w}tsParseTypePredicateAsserts(){if(this.state.type!==109)return!1;let w=this.state.containsEsc;return this.next(),!gn(this.state.type)&&!this.match(78)?!1:(w&&this.raise(U.InvalidEscapedReservedWord,this.state.lastTokStartLoc,{reservedWord:"asserts"}),!0)}tsParseTypeAnnotation(w=!0,J=this.startNode()){return this.tsInType(()=>{w&&this.expect(14),J.typeAnnotation=this.tsParseType()}),this.finishNode(J,"TSTypeAnnotation")}tsParseType(){Us(this.state.inType);let w=this.tsParseNonConditionalType();if(this.state.inDisallowConditionalTypesContext||this.hasPrecedingLineBreak()||!this.eat(81))return w;let J=this.startNodeAtNode(w);return J.checkType=w,J.extendsType=this.tsInDisallowConditionalTypesContext(()=>this.tsParseNonConditionalType()),this.expect(17),J.trueType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.expect(14),J.falseType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.finishNode(J,"TSConditionalType")}isAbstractConstructorSignature(){return this.isContextual(124)&&this.lookahead().type===77}tsParseNonConditionalType(){return this.tsIsStartOfFunctionType()?this.tsParseFunctionOrConstructorType("TSFunctionType"):this.match(77)?this.tsParseFunctionOrConstructorType("TSConstructorType"):this.isAbstractConstructorSignature()?this.tsParseFunctionOrConstructorType("TSConstructorType",!0):this.tsParseUnionTypeOrHigher()}tsParseTypeAssertion(){this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(Li.ReservedTypeAssertion,this.state.startLoc);let w=this.startNode();return w.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?this.tsParseTypeReference():this.tsParseType())),this.expect(48),w.expression=this.parseMaybeUnary(),this.finishNode(w,"TSTypeAssertion")}tsParseHeritageClause(w){let J=this.state.startLoc,ye=this.tsParseDelimitedList("HeritageClauseElement",()=>{let ut=this.startNode();return ut.expression=this.tsParseEntityName(3),this.match(47)&&(ut.typeParameters=this.tsParseTypeArguments()),this.finishNode(ut,"TSExpressionWithTypeArguments")});return ye.length||this.raise(Li.EmptyHeritageClauseType,J,{token:w}),ye}tsParseInterfaceDeclaration(w,J={}){if(this.hasFollowingLineBreak())return null;this.expectContextual(129),J.declare&&(w.declare=!0),gn(this.state.type)?(w.id=this.parseIdentifier(),this.checkIdentifier(w.id,130)):(w.id=null,this.raise(Li.MissingInterfaceName,this.state.startLoc)),w.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers),this.eat(81)&&(w.extends=this.tsParseHeritageClause("extends"));let ye=this.startNode();return ye.body=this.tsInType(this.tsParseObjectTypeMembers.bind(this)),w.body=this.finishNode(ye,"TSInterfaceBody"),this.finishNode(w,"TSInterfaceDeclaration")}tsParseTypeAliasDeclaration(w){return w.id=this.parseIdentifier(),this.checkIdentifier(w.id,2),w.typeAnnotation=this.tsInType(()=>{if(w.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutModifiers),this.expect(29),this.isContextual(114)&&this.lookahead().type!==16){let J=this.startNode();return this.next(),this.finishNode(J,"TSIntrinsicKeyword")}return this.tsParseType()}),this.semicolon(),this.finishNode(w,"TSTypeAliasDeclaration")}tsInTopLevelContext(w){if(this.curContext()!==Te.brace){let J=this.state.context;this.state.context=[J[0]];try{return w()}finally{this.state.context=J}}else return w()}tsInType(w){let J=this.state.inType;this.state.inType=!0;try{return w()}finally{this.state.inType=J}}tsInDisallowConditionalTypesContext(w){let J=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!0;try{return w()}finally{this.state.inDisallowConditionalTypesContext=J}}tsInAllowConditionalTypesContext(w){let J=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!1;try{return w()}finally{this.state.inDisallowConditionalTypesContext=J}}tsEatThenParseType(w){if(this.match(w))return this.tsNextThenParseType()}tsExpectThenParseType(w){return this.tsInType(()=>(this.expect(w),this.tsParseType()))}tsNextThenParseType(){return this.tsInType(()=>(this.next(),this.tsParseType()))}tsParseEnumMember(){let w=this.startNode();return w.id=this.match(134)?super.parseStringLiteral(this.state.value):this.parseIdentifier(!0),this.eat(29)&&(w.initializer=super.parseMaybeAssignAllowIn()),this.finishNode(w,"TSEnumMember")}tsParseEnumDeclaration(w,J={}){return J.const&&(w.const=!0),J.declare&&(w.declare=!0),this.expectContextual(126),w.id=this.parseIdentifier(),this.checkIdentifier(w.id,w.const?8971:8459),this.expect(5),w.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(w,"TSEnumDeclaration")}tsParseEnumBody(){let w=this.startNode();return this.expect(5),w.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(w,"TSEnumBody")}tsParseModuleBlock(){let w=this.startNode();return this.scope.enter(0),this.expect(5),super.parseBlockOrModuleBlockBody(w.body=[],void 0,!0,8),this.scope.exit(),this.finishNode(w,"TSModuleBlock")}tsParseModuleOrNamespaceDeclaration(w,J=!1){if(w.id=this.parseIdentifier(),J||this.checkIdentifier(w.id,1024),this.eat(16)){let ye=this.startNode();this.tsParseModuleOrNamespaceDeclaration(ye,!0),w.body=ye}else this.scope.enter(256),this.prodParam.enter(0),w.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit();return this.finishNode(w,"TSModuleDeclaration")}tsParseAmbientExternalModuleDeclaration(w){return this.isContextual(112)?(w.kind="global",w.global=!0,w.id=this.parseIdentifier()):this.match(134)?(w.kind="module",w.id=super.parseStringLiteral(this.state.value)):this.unexpected(),this.match(5)?(this.scope.enter(256),this.prodParam.enter(0),w.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit()):this.semicolon(),this.finishNode(w,"TSModuleDeclaration")}tsParseImportEqualsDeclaration(w,J,ye){w.isExport=ye||!1,w.id=J||this.parseIdentifier(),this.checkIdentifier(w.id,4096),this.expect(29);let ut=this.tsParseModuleReference();return w.importKind==="type"&&ut.type!=="TSExternalModuleReference"&&this.raise(Li.ImportAliasHasImportType,ut),w.moduleReference=ut,this.semicolon(),this.finishNode(w,"TSImportEqualsDeclaration")}tsIsExternalModuleReference(){return this.isContextual(119)&&this.lookaheadCharCode()===40}tsParseModuleReference(){return this.tsIsExternalModuleReference()?this.tsParseExternalModuleReference():this.tsParseEntityName(0)}tsParseExternalModuleReference(){let w=this.startNode();return this.expectContextual(119),this.expect(10),this.match(134)||this.unexpected(),w.expression=super.parseExprAtom(),this.expect(11),this.sawUnambiguousESM=!0,this.finishNode(w,"TSExternalModuleReference")}tsLookAhead(w){let J=this.state.clone(),ye=w();return this.state=J,ye}tsTryParseAndCatch(w){let J=this.tryParse(ye=>w()||ye());if(!(J.aborted||!J.node))return J.error&&(this.state=J.failState),J.node}tsTryParse(w){let J=this.state.clone(),ye=w();if(ye!==void 0&&ye!==!1)return ye;this.state=J}tsTryParseDeclare(w){if(this.isLineTerminator())return;let J=this.state.type,ye;return this.isContextual(100)&&(J=74,ye="let"),this.tsInAmbientContext(()=>{switch(J){case 68:return w.declare=!0,super.parseFunctionStatement(w,!1,!1);case 80:return w.declare=!0,this.parseClass(w,!0,!1);case 126:return this.tsParseEnumDeclaration(w,{declare:!0});case 112:return this.tsParseAmbientExternalModuleDeclaration(w);case 75:case 74:return!this.match(75)||!this.isLookaheadContextual("enum")?(w.declare=!0,this.parseVarStatement(w,ye||this.state.value,!0)):(this.expect(75),this.tsParseEnumDeclaration(w,{const:!0,declare:!0}));case 129:{let ut=this.tsParseInterfaceDeclaration(w,{declare:!0});if(ut)return ut}default:if(gn(J))return this.tsParseDeclaration(w,this.state.value,!0,null)}})}tsTryParseExportDeclaration(){return this.tsParseDeclaration(this.startNode(),this.state.value,!0,null)}tsParseExpressionStatement(w,J,ye){switch(J.name){case"declare":{let ut=this.tsTryParseDeclare(w);return ut&&(ut.declare=!0),ut}case"global":if(this.match(5)){this.scope.enter(256),this.prodParam.enter(0);let ut=w;return ut.kind="global",w.global=!0,ut.id=J,ut.body=this.tsParseModuleBlock(),this.scope.exit(),this.prodParam.exit(),this.finishNode(ut,"TSModuleDeclaration")}break;default:return this.tsParseDeclaration(w,J.name,!1,ye)}}tsParseDeclaration(w,J,ye,ut){switch(J){case"abstract":if(this.tsCheckLineTerminator(ye)&&(this.match(80)||gn(this.state.type)))return this.tsParseAbstractDeclaration(w,ut);break;case"module":if(this.tsCheckLineTerminator(ye)){if(this.match(134))return this.tsParseAmbientExternalModuleDeclaration(w);if(gn(this.state.type))return w.kind="module",this.tsParseModuleOrNamespaceDeclaration(w)}break;case"namespace":if(this.tsCheckLineTerminator(ye)&&gn(this.state.type))return w.kind="namespace",this.tsParseModuleOrNamespaceDeclaration(w);break;case"type":if(this.tsCheckLineTerminator(ye)&&gn(this.state.type))return this.tsParseTypeAliasDeclaration(w);break}}tsCheckLineTerminator(w){return w?this.hasFollowingLineBreak()?!1:(this.next(),!0):!this.isLineTerminator()}tsTryParseGenericAsyncArrowFunction(w){if(!this.match(47))return;let J=this.state.maybeInArrowParameters;this.state.maybeInArrowParameters=!0;let ye=this.tsTryParseAndCatch(()=>{let ut=this.startNodeAt(w);return ut.typeParameters=this.tsParseTypeParameters(this.tsParseConstModifier),super.parseFunctionParams(ut),ut.returnType=this.tsTryParseTypeOrTypePredicateAnnotation(),this.expect(19),ut});if(this.state.maybeInArrowParameters=J,!!ye)return super.parseArrowExpression(ye,null,!0)}tsParseTypeArgumentsInExpression(){if(this.reScan_lt()===47)return this.tsParseTypeArguments()}tsParseTypeArguments(){let w=this.startNode();return w.params=this.tsInType(()=>this.tsInTopLevelContext(()=>(this.expect(47),this.tsParseDelimitedList("TypeParametersOrArguments",this.tsParseType.bind(this))))),w.params.length===0?this.raise(Li.EmptyTypeArguments,w):!this.state.inType&&this.curContext()===Te.brace&&this.reScan_lt_gt(),this.expect(48),this.finishNode(w,"TSTypeParameterInstantiation")}tsIsDeclarationStart(){return NA(this.state.type)}isExportDefaultSpecifier(){return this.tsIsDeclarationStart()?!1:super.isExportDefaultSpecifier()}parseAssignableListItem(w,J){let ye=this.state.startLoc,ut={};this.tsParseModifiers({allowedModifiers:["public","private","protected","override","readonly"]},ut);let zt=ut.accessibility,Zr=ut.override,wr=ut.readonly;!(w&4)&&(zt||wr||Zr)&&this.raise(Li.UnexpectedParameterModifier,ye);let Hn=this.parseMaybeDefault();w&2&&this.parseFunctionParamType(Hn);let Dn=this.parseMaybeDefault(Hn.loc.start,Hn);if(zt||wr||Zr){let Wo=this.startNodeAt(ye);return J.length&&(Wo.decorators=J),zt&&(Wo.accessibility=zt),wr&&(Wo.readonly=wr),Zr&&(Wo.override=Zr),Dn.type!=="Identifier"&&Dn.type!=="AssignmentPattern"&&this.raise(Li.UnsupportedParameterPropertyKind,Wo),Wo.parameter=Dn,this.finishNode(Wo,"TSParameterProperty")}return J.length&&(Hn.decorators=J),Dn}isSimpleParameter(w){return w.type==="TSParameterProperty"&&super.isSimpleParameter(w.parameter)||super.isSimpleParameter(w)}tsDisallowOptionalPattern(w){for(let J of w.params)J.type!=="Identifier"&&J.optional&&!this.state.isAmbientContext&&this.raise(Li.PatternIsOptional,J)}setArrowFunctionParameters(w,J,ye){super.setArrowFunctionParameters(w,J,ye),this.tsDisallowOptionalPattern(w)}parseFunctionBodyAndFinish(w,J,ye=!1){this.match(14)&&(w.returnType=this.tsParseTypeOrTypePredicateAnnotation(14));let ut=J==="FunctionDeclaration"?"TSDeclareFunction":J==="ClassMethod"||J==="ClassPrivateMethod"?"TSDeclareMethod":void 0;return ut&&!this.match(5)&&this.isLineTerminator()?this.finishNode(w,ut):ut==="TSDeclareFunction"&&this.state.isAmbientContext&&(this.raise(Li.DeclareFunctionHasImplementation,w),w.declare)?super.parseFunctionBodyAndFinish(w,ut,ye):(this.tsDisallowOptionalPattern(w),super.parseFunctionBodyAndFinish(w,J,ye))}registerFunctionStatementId(w){!w.body&&w.id?this.checkIdentifier(w.id,1024):super.registerFunctionStatementId(w)}tsCheckForInvalidTypeCasts(w){w.forEach(J=>{J?.type==="TSTypeCastExpression"&&this.raise(Li.UnexpectedTypeAnnotation,J.typeAnnotation)})}toReferencedList(w,J){return this.tsCheckForInvalidTypeCasts(w),w}parseArrayLike(w,J,ye,ut){let zt=super.parseArrayLike(w,J,ye,ut);return zt.type==="ArrayExpression"&&this.tsCheckForInvalidTypeCasts(zt.elements),zt}parseSubscript(w,J,ye,ut){if(!this.hasPrecedingLineBreak()&&this.match(35)){this.state.canStartJSXElement=!1,this.next();let Zr=this.startNodeAt(J);return Zr.expression=w,this.finishNode(Zr,"TSNonNullExpression")}let zt=!1;if(this.match(18)&&this.lookaheadCharCode()===60){if(ye)return ut.stop=!0,w;ut.optionalChainMember=zt=!0,this.next()}if(this.match(47)||this.match(51)){let Zr,wr=this.tsTryParseAndCatch(()=>{if(!ye&&this.atPossibleAsyncArrow(w)){let Ic=this.tsTryParseGenericAsyncArrowFunction(J);if(Ic)return Ic}let Hn=this.tsParseTypeArgumentsInExpression();if(!Hn)return;if(zt&&!this.match(10)){Zr=this.state.curPosition();return}if(Ir(this.state.type)){let Ic=super.parseTaggedTemplateExpression(w,J,ut);return Ic.typeParameters=Hn,Ic}if(!ye&&this.eat(10)){let Ic=this.startNodeAt(J);return Ic.callee=w,Ic.arguments=this.parseCallExpressionArguments(11),this.tsCheckForInvalidTypeCasts(Ic.arguments),Ic.typeParameters=Hn,ut.optionalChainMember&&(Ic.optional=zt),this.finishCallExpression(Ic,ut.optionalChainMember)}let Dn=this.state.type;if(Dn===48||Dn===52||Dn!==10&&xa(Dn)&&!this.hasPrecedingLineBreak())return;let Wo=this.startNodeAt(J);return Wo.expression=w,Wo.typeParameters=Hn,this.finishNode(Wo,"TSInstantiationExpression")});if(Zr&&this.unexpected(Zr,10),wr)return wr.type==="TSInstantiationExpression"&&(this.match(16)||this.match(18)&&this.lookaheadCharCode()!==40)&&this.raise(Li.InvalidPropertyAccessAfterInstantiationExpression,this.state.startLoc),wr}return super.parseSubscript(w,J,ye,ut)}parseNewCallee(w){var J;super.parseNewCallee(w);let{callee:ye}=w;ye.type==="TSInstantiationExpression"&&!((J=ye.extra)!=null&&J.parenthesized)&&(w.typeParameters=ye.typeParameters,w.callee=ye.expression)}parseExprOp(w,J,ye){let ut;if(jr(58)>ye&&!this.hasPrecedingLineBreak()&&(this.isContextual(93)||(ut=this.isContextual(120)))){let zt=this.startNodeAt(J);return zt.expression=w,zt.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?(ut&&this.raise(U.UnexpectedKeyword,this.state.startLoc,{keyword:"const"}),this.tsParseTypeReference()):this.tsParseType())),this.finishNode(zt,ut?"TSSatisfiesExpression":"TSAsExpression"),this.reScan_lt_gt(),this.parseExprOp(zt,J,ye)}return super.parseExprOp(w,J,ye)}checkReservedWord(w,J,ye,ut){this.state.isAmbientContext||super.checkReservedWord(w,J,ye,ut)}checkImportReflection(w){super.checkImportReflection(w),w.module&&w.importKind!=="value"&&this.raise(Li.ImportReflectionHasImportType,w.specifiers[0].loc.start)}checkDuplicateExports(){}isPotentialImportPhase(w){if(super.isPotentialImportPhase(w))return!0;if(this.isContextual(130)){let J=this.lookaheadCharCode();return w?J===123||J===42:J!==61}return!w&&this.isContextual(87)}applyImportPhase(w,J,ye,ut){super.applyImportPhase(w,J,ye,ut),J?w.exportKind=ye==="type"?"type":"value":w.importKind=ye==="type"||ye==="typeof"?ye:"value"}parseImport(w){if(this.match(134))return w.importKind="value",super.parseImport(w);let J;if(gn(this.state.type)&&this.lookaheadCharCode()===61)return w.importKind="value",this.tsParseImportEqualsDeclaration(w);if(this.isContextual(130)){let ye=this.parseMaybeImportPhase(w,!1);if(this.lookaheadCharCode()===61)return this.tsParseImportEqualsDeclaration(w,ye);J=super.parseImportSpecifiersAndAfter(w,ye)}else J=super.parseImport(w);return J.importKind==="type"&&J.specifiers.length>1&&J.specifiers[0].type==="ImportDefaultSpecifier"&&this.raise(Li.TypeImportCannotSpecifyDefaultAndNamed,J),J}parseExport(w,J){if(this.match(83)){let ye=w;this.next();let ut=null;return this.isContextual(130)&&this.isPotentialImportPhase(!1)?ut=this.parseMaybeImportPhase(ye,!1):ye.importKind="value",this.tsParseImportEqualsDeclaration(ye,ut,!0)}else if(this.eat(29)){let ye=w;return ye.expression=super.parseExpression(),this.semicolon(),this.sawUnambiguousESM=!0,this.finishNode(ye,"TSExportAssignment")}else if(this.eatContextual(93)){let ye=w;return this.expectContextual(128),ye.id=this.parseIdentifier(),this.semicolon(),this.finishNode(ye,"TSNamespaceExportDeclaration")}else return super.parseExport(w,J)}isAbstractClass(){return this.isContextual(124)&&this.lookahead().type===80}parseExportDefaultExpression(){if(this.isAbstractClass()){let w=this.startNode();return this.next(),w.abstract=!0,this.parseClass(w,!0,!0)}if(this.match(129)){let w=this.tsParseInterfaceDeclaration(this.startNode());if(w)return w}return super.parseExportDefaultExpression()}parseVarStatement(w,J,ye=!1){let{isAmbientContext:ut}=this.state,zt=super.parseVarStatement(w,J,ye||ut);if(!ut)return zt;for(let{id:Zr,init:wr}of zt.declarations)wr&&(J!=="const"||Zr.typeAnnotation?this.raise(Li.InitializerNotAllowedInAmbientContext,wr):Hm(wr,this.hasPlugin("estree"))||this.raise(Li.ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference,wr));return zt}parseStatementContent(w,J){if(this.match(75)&&this.isLookaheadContextual("enum")){let ye=this.startNode();return this.expect(75),this.tsParseEnumDeclaration(ye,{const:!0})}if(this.isContextual(126))return this.tsParseEnumDeclaration(this.startNode());if(this.isContextual(129)){let ye=this.tsParseInterfaceDeclaration(this.startNode());if(ye)return ye}return super.parseStatementContent(w,J)}parseAccessModifier(){return this.tsParseModifier(["public","protected","private"])}tsHasSomeModifiers(w,J){return J.some(ye=>DA(ye)?w.accessibility===ye:!!w[ye])}tsIsStartOfStaticBlocks(){return this.isContextual(106)&&this.lookaheadCharCode()===123}parseClassMember(w,J,ye){let ut=["declare","private","public","protected","override","abstract","readonly","static"];this.tsParseModifiers({allowedModifiers:ut,disallowedModifiers:["in","out"],stopOnStartOfClassStaticBlock:!0,errorTemplate:Li.InvalidModifierOnTypeParameterPositions},J);let zt=()=>{this.tsIsStartOfStaticBlocks()?(this.next(),this.next(),this.tsHasSomeModifiers(J,ut)&&this.raise(Li.StaticBlockCannotHaveModifier,this.state.curPosition()),super.parseClassStaticBlock(w,J)):this.parseClassMemberWithIsStatic(w,J,ye,!!J.static)};J.declare?this.tsInAmbientContext(zt):zt()}parseClassMemberWithIsStatic(w,J,ye,ut){let zt=this.tsTryParseIndexSignature(J);if(zt){w.body.push(zt),J.abstract&&this.raise(Li.IndexSignatureHasAbstract,J),J.accessibility&&this.raise(Li.IndexSignatureHasAccessibility,J,{modifier:J.accessibility}),J.declare&&this.raise(Li.IndexSignatureHasDeclare,J),J.override&&this.raise(Li.IndexSignatureHasOverride,J);return}!this.state.inAbstractClass&&J.abstract&&this.raise(Li.NonAbstractClassHasAbstractMethod,J),J.override&&(ye.hadSuperClass||this.raise(Li.OverrideNotInSubClass,J)),super.parseClassMemberWithIsStatic(w,J,ye,ut)}parsePostMemberNameModifiers(w){this.eat(17)&&(w.optional=!0),w.readonly&&this.match(10)&&this.raise(Li.ClassMethodHasReadonly,w),w.declare&&this.match(10)&&this.raise(Li.ClassMethodHasDeclare,w)}parseExpressionStatement(w,J,ye){return(J.type==="Identifier"?this.tsParseExpressionStatement(w,J,ye):void 0)||super.parseExpressionStatement(w,J,ye)}shouldParseExportDeclaration(){return this.tsIsDeclarationStart()?!0:super.shouldParseExportDeclaration()}parseConditional(w,J,ye){if(!this.state.maybeInArrowParameters||!this.match(17))return super.parseConditional(w,J,ye);let ut=this.tryParse(()=>super.parseConditional(w,J));return ut.node?(ut.error&&(this.state=ut.failState),ut.node):(ut.error&&super.setOptionalParametersError(ye,ut.error),w)}parseParenItem(w,J){let ye=super.parseParenItem(w,J);if(this.eat(17)&&(ye.optional=!0,this.resetEndLocation(w)),this.match(14)){let ut=this.startNodeAt(J);return ut.expression=w,ut.typeAnnotation=this.tsParseTypeAnnotation(),this.finishNode(ut,"TSTypeCastExpression")}return w}parseExportDeclaration(w){if(!this.state.isAmbientContext&&this.isContextual(125))return this.tsInAmbientContext(()=>this.parseExportDeclaration(w));let J=this.state.startLoc,ye=this.eatContextual(125);if(ye&&(this.isContextual(125)||!this.shouldParseExportDeclaration()))throw this.raise(Li.ExpectedAmbientAfterExportDeclare,this.state.startLoc);let ut=gn(this.state.type)&&this.tsTryParseExportDeclaration()||super.parseExportDeclaration(w);return ut?((ut.type==="TSInterfaceDeclaration"||ut.type==="TSTypeAliasDeclaration"||ye)&&(w.exportKind="type"),ye&&ut.type!=="TSImportEqualsDeclaration"&&(this.resetStartLocation(ut,J),ut.declare=!0),ut):null}parseClassId(w,J,ye,ut){if((!J||ye)&&this.isContextual(113))return;super.parseClassId(w,J,ye,w.declare?1024:8331);let zt=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers);zt&&(w.typeParameters=zt)}parseClassPropertyAnnotation(w){w.optional||(this.eat(35)?w.definite=!0:this.eat(17)&&(w.optional=!0));let J=this.tsTryParseTypeAnnotation();J&&(w.typeAnnotation=J)}parseClassProperty(w){if(this.parseClassPropertyAnnotation(w),this.state.isAmbientContext&&!(w.readonly&&!w.typeAnnotation)&&this.match(29)&&this.raise(Li.DeclareClassFieldHasInitializer,this.state.startLoc),w.abstract&&this.match(29)){let{key:J}=w;this.raise(Li.AbstractPropertyHasInitializer,this.state.startLoc,{propertyName:J.type==="Identifier"&&!w.computed?J.name:`[${this.input.slice(this.offsetToSourcePos(J.start),this.offsetToSourcePos(J.end))}]`})}return super.parseClassProperty(w)}parseClassPrivateProperty(w){return w.abstract&&this.raise(Li.PrivateElementHasAbstract,w),w.accessibility&&this.raise(Li.PrivateElementHasAccessibility,w,{modifier:w.accessibility}),this.parseClassPropertyAnnotation(w),super.parseClassPrivateProperty(w)}parseClassAccessorProperty(w){return this.parseClassPropertyAnnotation(w),w.optional&&this.raise(Li.AccessorCannotBeOptional,w),super.parseClassAccessorProperty(w)}pushClassMethod(w,J,ye,ut,zt,Zr){let wr=this.tsTryParseTypeParameters(this.tsParseConstModifier);wr&&zt&&this.raise(Li.ConstructorHasTypeParameters,wr);let{declare:Hn=!1,kind:Dn}=J;Hn&&(Dn==="get"||Dn==="set")&&this.raise(Li.DeclareAccessor,J,{kind:Dn}),wr&&(J.typeParameters=wr),super.pushClassMethod(w,J,ye,ut,zt,Zr)}pushClassPrivateMethod(w,J,ye,ut){let zt=this.tsTryParseTypeParameters(this.tsParseConstModifier);zt&&(J.typeParameters=zt),super.pushClassPrivateMethod(w,J,ye,ut)}declareClassPrivateMethodInScope(w,J){w.type!=="TSDeclareMethod"&&(w.type==="MethodDefinition"&&!hasOwnProperty.call(w.value,"body")||super.declareClassPrivateMethodInScope(w,J))}parseClassSuper(w){super.parseClassSuper(w),w.superClass&&(this.match(47)||this.match(51))&&(w.superTypeParameters=this.tsParseTypeArgumentsInExpression()),this.eatContextual(113)&&(w.implements=this.tsParseHeritageClause("implements"))}parseObjPropValue(w,J,ye,ut,zt,Zr,wr){let Hn=this.tsTryParseTypeParameters(this.tsParseConstModifier);return Hn&&(w.typeParameters=Hn),super.parseObjPropValue(w,J,ye,ut,zt,Zr,wr)}parseFunctionParams(w,J){let ye=this.tsTryParseTypeParameters(this.tsParseConstModifier);ye&&(w.typeParameters=ye),super.parseFunctionParams(w,J)}parseVarId(w,J){super.parseVarId(w,J),w.id.type==="Identifier"&&!this.hasPrecedingLineBreak()&&this.eat(35)&&(w.definite=!0);let ye=this.tsTryParseTypeAnnotation();ye&&(w.id.typeAnnotation=ye,this.resetEndLocation(w.id))}parseAsyncArrowFromCallExpression(w,J){return this.match(14)&&(w.returnType=this.tsParseTypeAnnotation()),super.parseAsyncArrowFromCallExpression(w,J)}parseMaybeAssign(w,J){var ye,ut,zt,Zr,wr;let Hn,Dn,Wo;if(this.hasPlugin("jsx")&&(this.match(143)||this.match(47))){if(Hn=this.state.clone(),Dn=this.tryParse(()=>super.parseMaybeAssign(w,J),Hn),!Dn.error)return Dn.node;let{context:Mo}=this.state,bu=Mo[Mo.length-1];(bu===Te.j_oTag||bu===Te.j_expr)&&Mo.pop()}if(!((ye=Dn)!=null&&ye.error)&&!this.match(47))return super.parseMaybeAssign(w,J);(!Hn||Hn===this.state)&&(Hn=this.state.clone());let Ic,Jc=this.tryParse(Mo=>{var bu,ap;Ic=this.tsParseTypeParameters(this.tsParseConstModifier);let uA=super.parseMaybeAssign(w,J);return(uA.type!=="ArrowFunctionExpression"||(bu=uA.extra)!=null&&bu.parenthesized)&&Mo(),((ap=Ic)==null?void 0:ap.params.length)!==0&&this.resetStartLocationFromNode(uA,Ic),uA.typeParameters=Ic,uA},Hn);if(!Jc.error&&!Jc.aborted)return Ic&&this.reportReservedArrowTypeParam(Ic),Jc.node;if(!Dn&&(Us(!this.hasPlugin("jsx")),Wo=this.tryParse(()=>super.parseMaybeAssign(w,J),Hn),!Wo.error))return Wo.node;if((ut=Dn)!=null&&ut.node)return this.state=Dn.failState,Dn.node;if(Jc.node)return this.state=Jc.failState,Ic&&this.reportReservedArrowTypeParam(Ic),Jc.node;if((zt=Wo)!=null&&zt.node)return this.state=Wo.failState,Wo.node;throw((Zr=Dn)==null?void 0:Zr.error)||Jc.error||((wr=Wo)==null?void 0:wr.error)}reportReservedArrowTypeParam(w){var J;w.params.length===1&&!w.params[0].constraint&&!((J=w.extra)!=null&&J.trailingComma)&&this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(Li.ReservedArrowTypeParam,w)}parseMaybeUnary(w,J){return!this.hasPlugin("jsx")&&this.match(47)?this.tsParseTypeAssertion():super.parseMaybeUnary(w,J)}parseArrow(w){if(this.match(14)){let J=this.tryParse(ye=>{let ut=this.tsParseTypeOrTypePredicateAnnotation(14);return(this.canInsertSemicolon()||!this.match(19))&&ye(),ut});if(J.aborted)return;J.thrown||(J.error&&(this.state=J.failState),w.returnType=J.node)}return super.parseArrow(w)}parseFunctionParamType(w){this.eat(17)&&(w.optional=!0);let J=this.tsTryParseTypeAnnotation();return J&&(w.typeAnnotation=J),this.resetEndLocation(w),w}isAssignable(w,J){switch(w.type){case"TSTypeCastExpression":return this.isAssignable(w.expression,J);case"TSParameterProperty":return!0;default:return super.isAssignable(w,J)}}toAssignable(w,J=!1){switch(w.type){case"ParenthesizedExpression":this.toAssignableParenthesizedExpression(w,J);break;case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":J?this.expressionScope.recordArrowParameterBindingError(Li.UnexpectedTypeCastInParameter,w):this.raise(Li.UnexpectedTypeCastInParameter,w),this.toAssignable(w.expression,J);break;case"AssignmentExpression":!J&&w.left.type==="TSTypeCastExpression"&&(w.left=this.typeCastToParameter(w.left));default:super.toAssignable(w,J)}}toAssignableParenthesizedExpression(w,J){switch(w.expression.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":case"ParenthesizedExpression":this.toAssignable(w.expression,J);break;default:super.toAssignable(w,J)}}checkToRestConversion(w,J){switch(w.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":this.checkToRestConversion(w.expression,!1);break;default:super.checkToRestConversion(w,J)}}isValidLVal(w,J,ye){switch(w){case"TSTypeCastExpression":return!0;case"TSParameterProperty":return"parameter";case"TSNonNullExpression":case"TSInstantiationExpression":return"expression";case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":return(ye!==64||!J)&&["expression",!0];default:return super.isValidLVal(w,J,ye)}}parseBindingAtom(){return this.state.type===78?this.parseIdentifier(!0):super.parseBindingAtom()}parseMaybeDecoratorArguments(w,J){if(this.match(47)||this.match(51)){let ye=this.tsParseTypeArgumentsInExpression();if(this.match(10)){let ut=super.parseMaybeDecoratorArguments(w,J);return ut.typeParameters=ye,ut}this.unexpected(null,10)}return super.parseMaybeDecoratorArguments(w,J)}checkCommaAfterRest(w){return this.state.isAmbientContext&&this.match(12)&&this.lookaheadCharCode()===w?(this.next(),!1):super.checkCommaAfterRest(w)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(35)||this.match(14)||super.isClassProperty()}parseMaybeDefault(w,J){let ye=super.parseMaybeDefault(w,J);return ye.type==="AssignmentPattern"&&ye.typeAnnotation&&ye.right.startthis.isAssignable(J,!0)):super.shouldParseArrow(w)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}canHaveLeadingDecorator(){return super.canHaveLeadingDecorator()||this.isAbstractClass()}jsxParseOpeningElementAfterName(w){if(this.match(47)||this.match(51)){let J=this.tsTryParseAndCatch(()=>this.tsParseTypeArgumentsInExpression());J&&(w.typeParameters=J)}return super.jsxParseOpeningElementAfterName(w)}getGetterSetterExpectedParamCount(w){let J=super.getGetterSetterExpectedParamCount(w),ye=this.getObjectOrClassMethodParams(w)[0];return ye&&this.isThisParam(ye)?J+1:J}parseCatchClauseParam(){let w=super.parseCatchClauseParam(),J=this.tsTryParseTypeAnnotation();return J&&(w.typeAnnotation=J,this.resetEndLocation(w)),w}tsInAmbientContext(w){let{isAmbientContext:J,strict:ye}=this.state;this.state.isAmbientContext=!0,this.state.strict=!1;try{return w()}finally{this.state.isAmbientContext=J,this.state.strict=ye}}parseClass(w,J,ye){let ut=this.state.inAbstractClass;this.state.inAbstractClass=!!w.abstract;try{return super.parseClass(w,J,ye)}finally{this.state.inAbstractClass=ut}}tsParseAbstractDeclaration(w,J){if(this.match(80))return w.abstract=!0,this.maybeTakeDecorators(J,this.parseClass(w,!0,!1));if(this.isContextual(129)){if(!this.hasFollowingLineBreak())return w.abstract=!0,this.raise(Li.NonClassMethodPropertyHasAbstractModifer,w),this.tsParseInterfaceDeclaration(w)}else this.unexpected(null,80)}parseMethod(w,J,ye,ut,zt,Zr,wr){let Hn=super.parseMethod(w,J,ye,ut,zt,Zr,wr);if(Hn.abstract&&(this.hasPlugin("estree")?Hn.value:Hn).body){let{key:Dn}=Hn;this.raise(Li.AbstractMethodHasImplementation,Hn,{methodName:Dn.type==="Identifier"&&!Hn.computed?Dn.name:`[${this.input.slice(this.offsetToSourcePos(Dn.start),this.offsetToSourcePos(Dn.end))}]`})}return Hn}tsParseTypeParameterName(){return this.parseIdentifier().name}shouldParseAsAmbientContext(){return!!this.getPluginOption("typescript","dts")}parse(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),super.parse()}getExpression(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),super.getExpression()}parseExportSpecifier(w,J,ye,ut){return!J&&ut?(this.parseTypeOnlyImportExportSpecifier(w,!1,ye),this.finishNode(w,"ExportSpecifier")):(w.exportKind="value",super.parseExportSpecifier(w,J,ye,ut))}parseImportSpecifier(w,J,ye,ut,zt){return!J&&ut?(this.parseTypeOnlyImportExportSpecifier(w,!0,ye),this.finishNode(w,"ImportSpecifier")):(w.importKind="value",super.parseImportSpecifier(w,J,ye,ut,ye?4098:4096))}parseTypeOnlyImportExportSpecifier(w,J,ye){let ut=J?"imported":"local",zt=J?"local":"exported",Zr=w[ut],wr,Hn=!1,Dn=!0,Wo=Zr.loc.start;if(this.isContextual(93)){let Jc=this.parseIdentifier();if(this.isContextual(93)){let Mo=this.parseIdentifier();we(this.state.type)?(Hn=!0,Zr=Jc,wr=J?this.parseIdentifier():this.parseModuleExportName(),Dn=!1):(wr=Mo,Dn=!1)}else we(this.state.type)?(Dn=!1,wr=J?this.parseIdentifier():this.parseModuleExportName()):(Hn=!0,Zr=Jc)}else we(this.state.type)&&(Hn=!0,J?(Zr=this.parseIdentifier(!0),this.isContextual(93)||this.checkReservedWord(Zr.name,Zr.loc.start,!0,!0)):Zr=this.parseModuleExportName());Hn&&ye&&this.raise(J?Li.TypeModifierIsUsedInTypeImports:Li.TypeModifierIsUsedInTypeExports,Wo),w[ut]=Zr,w[zt]=wr;let Ic=J?"importKind":"exportKind";w[Ic]=Hn?"type":"value",Dn&&this.eatContextual(93)&&(w[zt]=J?this.parseIdentifier():this.parseModuleExportName()),w[zt]||(w[zt]=ii(w[ut])),J&&this.checkIdentifier(w[zt],Hn?4098:4096)}};function fl(ie){if(ie.type!=="MemberExpression")return!1;let{computed:w,property:J}=ie;return w&&J.type!=="StringLiteral"&&(J.type!=="TemplateLiteral"||J.expressions.length>0)?!1:tA(ie.object)}function Hm(ie,w){var J;let{type:ye}=ie;if((J=ie.extra)!=null&&J.parenthesized)return!1;if(w){if(ye==="Literal"){let{value:ut}=ie;if(typeof ut=="string"||typeof ut=="boolean")return!0}}else if(ye==="StringLiteral"||ye==="BooleanLiteral")return!0;return!!(I1(ie,w)||Iv(ie,w)||ye==="TemplateLiteral"&&ie.expressions.length===0||fl(ie))}function I1(ie,w){return w?ie.type==="Literal"&&(typeof ie.value=="number"||"bigint"in ie):ie.type==="NumericLiteral"||ie.type==="BigIntLiteral"}function Iv(ie,w){if(ie.type==="UnaryExpression"){let{operator:J,argument:ye}=ie;if(J==="-"&&I1(ye,w))return!0}return!1}function tA(ie){return ie.type==="Identifier"?!0:ie.type!=="MemberExpression"||ie.computed?!1:tA(ie.object)}var Rm=X`placeholders`({ClassNameIsRequired:"A class name is required.",UnexpectedSpace:"Unexpected space in placeholder."}),uh=ie=>class extends ie{parsePlaceholder(w){if(this.match(133)){let J=this.startNode();return this.next(),this.assertNoSpace(),J.name=super.parseIdentifier(!0),this.assertNoSpace(),this.expect(133),this.finishPlaceholder(J,w)}}finishPlaceholder(w,J){let ye=w;return(!ye.expectedNode||!ye.type)&&(ye=this.finishNode(ye,"Placeholder")),ye.expectedNode=J,ye}getTokenFromCode(w){w===37&&this.input.charCodeAt(this.state.pos+1)===37?this.finishOp(133,2):super.getTokenFromCode(w)}parseExprAtom(w){return this.parsePlaceholder("Expression")||super.parseExprAtom(w)}parseIdentifier(w){return this.parsePlaceholder("Identifier")||super.parseIdentifier(w)}checkReservedWord(w,J,ye,ut){w!==void 0&&super.checkReservedWord(w,J,ye,ut)}parseBindingAtom(){return this.parsePlaceholder("Pattern")||super.parseBindingAtom()}isValidLVal(w,J,ye){return w==="Placeholder"||super.isValidLVal(w,J,ye)}toAssignable(w,J){w&&w.type==="Placeholder"&&w.expectedNode==="Expression"?w.expectedNode="Pattern":super.toAssignable(w,J)}chStartsBindingIdentifier(w,J){return!!(super.chStartsBindingIdentifier(w,J)||this.lookahead().type===133)}verifyBreakContinue(w,J){w.label&&w.label.type==="Placeholder"||super.verifyBreakContinue(w,J)}parseExpressionStatement(w,J){var ye;if(J.type!=="Placeholder"||(ye=J.extra)!=null&&ye.parenthesized)return super.parseExpressionStatement(w,J);if(this.match(14)){let zt=w;return zt.label=this.finishPlaceholder(J,"Identifier"),this.next(),zt.body=super.parseStatementOrSloppyAnnexBFunctionDeclaration(),this.finishNode(zt,"LabeledStatement")}this.semicolon();let ut=w;return ut.name=J.name,this.finishPlaceholder(ut,"Statement")}parseBlock(w,J,ye){return this.parsePlaceholder("BlockStatement")||super.parseBlock(w,J,ye)}parseFunctionId(w){return this.parsePlaceholder("Identifier")||super.parseFunctionId(w)}parseClass(w,J,ye){let ut=J?"ClassDeclaration":"ClassExpression";this.next();let zt=this.state.strict,Zr=this.parsePlaceholder("Identifier");if(Zr)if(this.match(81)||this.match(133)||this.match(5))w.id=Zr;else{if(ye||!J)return w.id=null,w.body=this.finishPlaceholder(Zr,"ClassBody"),this.finishNode(w,ut);throw this.raise(Rm.ClassNameIsRequired,this.state.startLoc)}else this.parseClassId(w,J,ye);return super.parseClassSuper(w),w.body=this.parsePlaceholder("ClassBody")||super.parseClassBody(!!w.superClass,zt),this.finishNode(w,ut)}parseExport(w,J){let ye=this.parsePlaceholder("Identifier");if(!ye)return super.parseExport(w,J);let ut=w;if(!this.isContextual(98)&&!this.match(12))return ut.specifiers=[],ut.source=null,ut.declaration=this.finishPlaceholder(ye,"Declaration"),this.finishNode(ut,"ExportNamedDeclaration");this.expectPlugin("exportDefaultFrom");let zt=this.startNode();return zt.exported=ye,ut.specifiers=[this.finishNode(zt,"ExportDefaultSpecifier")],super.parseExport(ut,J)}isExportDefaultSpecifier(){if(this.match(65)){let w=this.nextTokenStart();if(this.isUnparsedContextual(w,"from")&&this.input.startsWith(Vd(133),this.nextTokenStartSince(w+4)))return!0}return super.isExportDefaultSpecifier()}maybeParseExportDefaultSpecifier(w,J){var ye;return(ye=w.specifiers)!=null&&ye.length?!0:super.maybeParseExportDefaultSpecifier(w,J)}checkExport(w){let{specifiers:J}=w;J!=null&&J.length&&(w.specifiers=J.filter(ye=>ye.exported.type==="Placeholder")),super.checkExport(w),w.specifiers=J}parseImport(w){let J=this.parsePlaceholder("Identifier");if(!J)return super.parseImport(w);if(w.specifiers=[],!this.isContextual(98)&&!this.match(12))return w.source=this.finishPlaceholder(J,"StringLiteral"),this.semicolon(),this.finishNode(w,"ImportDeclaration");let ye=this.startNodeAtNode(J);return ye.local=J,w.specifiers.push(this.finishNode(ye,"ImportDefaultSpecifier")),this.eat(12)&&(this.maybeParseStarImportSpecifier(w)||this.parseNamedImportSpecifiers(w)),this.expectContextual(98),w.source=this.parseImportSource(),this.semicolon(),this.finishNode(w,"ImportDeclaration")}parseImportSource(){return this.parsePlaceholder("StringLiteral")||super.parseImportSource()}assertNoSpace(){this.state.start>this.offsetToSourcePos(this.state.lastTokEndLoc.index)&&this.raise(Rm.UnexpectedSpace,this.state.lastTokEndLoc)}},Qy=ie=>class extends ie{parseV8Intrinsic(){if(this.match(54)){let w=this.state.startLoc,J=this.startNode();if(this.next(),gn(this.state.type)){let ye=this.parseIdentifierName(),ut=this.createIdentifier(J,ye);if(ut.type="V8IntrinsicIdentifier",this.match(10))return ut}this.unexpected(w)}}parseExprAtom(w){return this.parseV8Intrinsic()||super.parseExprAtom(w)}},Sp=["minimal","fsharp","hack","smart"],rA=["^^","@@","^","%","#"];function D0(ie){if(ie.has("decorators")){if(ie.has("decorators-legacy"))throw new Error("Cannot use the decorators and decorators-legacy plugin together");let J=ie.get("decorators").decoratorsBeforeExport;if(J!=null&&typeof J!="boolean")throw new Error("'decoratorsBeforeExport' must be a boolean, if specified.");let ye=ie.get("decorators").allowCallParenthesized;if(ye!=null&&typeof ye!="boolean")throw new Error("'allowCallParenthesized' must be a boolean.")}if(ie.has("flow")&&ie.has("typescript"))throw new Error("Cannot combine flow and typescript plugins.");if(ie.has("placeholders")&&ie.has("v8intrinsic"))throw new Error("Cannot combine placeholders and v8intrinsic plugins.");if(ie.has("pipelineOperator")){var w;let J=ie.get("pipelineOperator").proposal;if(!Sp.includes(J)){let ut=Sp.map(zt=>`"${zt}"`).join(", ");throw new Error(`"pipelineOperator" requires "proposal" option whose value must be one of: ${ut}.`)}let ye=((w=ie.get("recordAndTuple"))==null?void 0:w.syntaxType)==="hash";if(J==="hack"){if(ie.has("placeholders"))throw new Error("Cannot combine placeholders plugin and Hack-style pipes.");if(ie.has("v8intrinsic"))throw new Error("Cannot combine v8intrinsic plugin and Hack-style pipes.");let ut=ie.get("pipelineOperator").topicToken;if(!rA.includes(ut)){let zt=rA.map(Zr=>`"${Zr}"`).join(", ");throw new Error(`"pipelineOperator" in "proposal": "hack" mode also requires a "topicToken" option whose value must be one of: ${zt}.`)}if(ut==="#"&&ye)throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "hack", topicToken: "#" }]\` and \`${JSON.stringify(["recordAndTuple",ie.get("recordAndTuple")])}\`.`)}else if(J==="smart"&&ye)throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "smart" }]\` and \`${JSON.stringify(["recordAndTuple",ie.get("recordAndTuple")])}\`.`)}if(ie.has("moduleAttributes")){if(ie.has("deprecatedImportAssert")||ie.has("importAssertions"))throw new Error("Cannot combine importAssertions, deprecatedImportAssert and moduleAttributes plugins.");if(ie.get("moduleAttributes").version!=="may-2020")throw new Error("The 'moduleAttributes' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is 'may-2020'.")}if(ie.has("importAssertions")&&ie.has("deprecatedImportAssert"))throw new Error("Cannot combine importAssertions and deprecatedImportAssert plugins.");if(!ie.has("deprecatedImportAssert")&&ie.has("importAttributes")&&ie.get("importAttributes").deprecatedAssertSyntax&&ie.set("deprecatedImportAssert",{}),ie.has("recordAndTuple")){let J=ie.get("recordAndTuple").syntaxType;if(J!=null){let ye=["hash","bar"];if(!ye.includes(J))throw new Error("The 'syntaxType' option of the 'recordAndTuple' plugin must be one of: "+ye.map(ut=>`'${ut}'`).join(", "))}}if(ie.has("asyncDoExpressions")&&!ie.has("doExpressions")){let J=new Error("'asyncDoExpressions' requires 'doExpressions', please add 'doExpressions' to parser plugins.");throw J.missingPlugins="doExpressions",J}if(ie.has("optionalChainingAssign")&&ie.get("optionalChainingAssign").version!=="2023-07")throw new Error("The 'optionalChainingAssign' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is '2023-07'.")}var yh={estree:he,jsx:Ro,flow:Pp,typescript:PI,v8intrinsic:Qy,placeholders:uh},uy=Object.keys(yh),uc=class extends Di{checkProto(ie,w,J,ye){if(ie.type==="SpreadElement"||this.isObjectMethod(ie)||ie.computed||ie.shorthand)return;let ut=ie.key;if((ut.type==="Identifier"?ut.name:ut.value)==="__proto__"){if(w){this.raise(U.RecordNoProto,ut);return}J.used&&(ye?ye.doubleProtoLoc===null&&(ye.doubleProtoLoc=ut.loc.start):this.raise(U.DuplicateProto,ut)),J.used=!0}}shouldExitDescending(ie,w){return ie.type==="ArrowFunctionExpression"&&this.offsetToSourcePos(ie.start)===w}getExpression(){this.enterInitialScopes(),this.nextToken();let ie=this.parseExpression();return this.match(140)||this.unexpected(),this.finalizeRemainingComments(),ie.comments=this.comments,ie.errors=this.state.errors,this.optionFlags&128&&(ie.tokens=this.tokens),ie}parseExpression(ie,w){return ie?this.disallowInAnd(()=>this.parseExpressionBase(w)):this.allowInAnd(()=>this.parseExpressionBase(w))}parseExpressionBase(ie){let w=this.state.startLoc,J=this.parseMaybeAssign(ie);if(this.match(12)){let ye=this.startNodeAt(w);for(ye.expressions=[J];this.eat(12);)ye.expressions.push(this.parseMaybeAssign(ie));return this.toReferencedList(ye.expressions),this.finishNode(ye,"SequenceExpression")}return J}parseMaybeAssignDisallowIn(ie,w){return this.disallowInAnd(()=>this.parseMaybeAssign(ie,w))}parseMaybeAssignAllowIn(ie,w){return this.allowInAnd(()=>this.parseMaybeAssign(ie,w))}setOptionalParametersError(ie,w){var J;ie.optionalParametersLoc=(J=w?.loc)!=null?J:this.state.startLoc}parseMaybeAssign(ie,w){let J=this.state.startLoc;if(this.isContextual(108)&&this.prodParam.hasYield){let Zr=this.parseYield();return w&&(Zr=w.call(this,Zr,J)),Zr}let ye;ie?ye=!1:(ie=new VA,ye=!0);let{type:ut}=this.state;(ut===10||gn(ut))&&(this.state.potentialArrowAt=this.state.start);let zt=this.parseMaybeConditional(ie);if(w&&(zt=w.call(this,zt,J)),Qs(this.state.type)){let Zr=this.startNodeAt(J),wr=this.state.value;if(Zr.operator=wr,this.match(29)){this.toAssignable(zt,!0),Zr.left=zt;let Hn=J.index;ie.doubleProtoLoc!=null&&ie.doubleProtoLoc.index>=Hn&&(ie.doubleProtoLoc=null),ie.shorthandAssignLoc!=null&&ie.shorthandAssignLoc.index>=Hn&&(ie.shorthandAssignLoc=null),ie.privateKeyLoc!=null&&ie.privateKeyLoc.index>=Hn&&(this.checkDestructuringPrivate(ie),ie.privateKeyLoc=null)}else Zr.left=zt;return this.next(),Zr.right=this.parseMaybeAssign(),this.checkLVal(zt,this.finishNode(Zr,"AssignmentExpression")),Zr}else ye&&this.checkExpressionErrors(ie,!0);return zt}parseMaybeConditional(ie){let w=this.state.startLoc,J=this.state.potentialArrowAt,ye=this.parseExprOps(ie);return this.shouldExitDescending(ye,J)?ye:this.parseConditional(ye,w,ie)}parseConditional(ie,w,J){if(this.eat(17)){let ye=this.startNodeAt(w);return ye.test=ie,ye.consequent=this.parseMaybeAssignAllowIn(),this.expect(14),ye.alternate=this.parseMaybeAssign(),this.finishNode(ye,"ConditionalExpression")}return ie}parseMaybeUnaryOrPrivate(ie){return this.match(139)?this.parsePrivateName():this.parseMaybeUnary(ie)}parseExprOps(ie){let w=this.state.startLoc,J=this.state.potentialArrowAt,ye=this.parseMaybeUnaryOrPrivate(ie);return this.shouldExitDescending(ye,J)?ye:this.parseExprOp(ye,w,-1)}parseExprOp(ie,w,J){if(this.isPrivateName(ie)){let ut=this.getPrivateNameSV(ie);(J>=jr(58)||!this.prodParam.hasIn||!this.match(58))&&this.raise(U.PrivateInExpectedIn,ie,{identifierName:ut}),this.classScope.usePrivateName(ut,ie.loc.start)}let ye=this.state.type;if(Hu(ye)&&(this.prodParam.hasIn||!this.match(58))){let ut=jr(ye);if(ut>J){if(ye===39){if(this.expectPlugin("pipelineOperator"),this.state.inFSharpPipelineDirectBody)return ie;this.checkPipelineAtInfixOperator(ie,w)}let zt=this.startNodeAt(w);zt.left=ie,zt.operator=this.state.value;let Zr=ye===41||ye===42,wr=ye===40;if(wr&&(ut=jr(42)),this.next(),ye===39&&this.hasPlugin(["pipelineOperator",{proposal:"minimal"}])&&this.state.type===96&&this.prodParam.hasAwait)throw this.raise(U.UnexpectedAwaitAfterPipelineBody,this.state.startLoc);zt.right=this.parseExprOpRightExpr(ye,ut);let Hn=this.finishNode(zt,Zr||wr?"LogicalExpression":"BinaryExpression"),Dn=this.state.type;if(wr&&(Dn===41||Dn===42)||Zr&&Dn===40)throw this.raise(U.MixingCoalesceWithLogical,this.state.startLoc);return this.parseExprOp(Hn,w,J)}}return ie}parseExprOpRightExpr(ie,w){let J=this.state.startLoc;switch(ie){case 39:switch(this.getPluginOption("pipelineOperator","proposal")){case"hack":return this.withTopicBindingContext(()=>this.parseHackPipeBody());case"fsharp":return this.withSoloAwaitPermittingContext(()=>this.parseFSharpPipelineBody(w))}if(this.getPluginOption("pipelineOperator","proposal")==="smart")return this.withTopicBindingContext(()=>{if(this.prodParam.hasYield&&this.isContextual(108))throw this.raise(U.PipeBodyIsTighter,this.state.startLoc);return this.parseSmartPipelineBodyInStyle(this.parseExprOpBaseRightExpr(ie,w),J)});default:return this.parseExprOpBaseRightExpr(ie,w)}}parseExprOpBaseRightExpr(ie,w){let J=this.state.startLoc;return this.parseExprOp(this.parseMaybeUnaryOrPrivate(),J,Gr(ie)?w-1:w)}parseHackPipeBody(){var ie;let{startLoc:w}=this.state,J=this.parseMaybeAssign();return B.has(J.type)&&!((ie=J.extra)!=null&&ie.parenthesized)&&this.raise(U.PipeUnparenthesizedBody,w,{type:J.type}),this.topicReferenceWasUsedInCurrentContext()||this.raise(U.PipeTopicUnused,w),J}checkExponentialAfterUnary(ie){this.match(57)&&this.raise(U.UnexpectedTokenUnaryExponentiation,ie.argument)}parseMaybeUnary(ie,w){let J=this.state.startLoc,ye=this.isContextual(96);if(ye&&this.recordAwaitIfAllowed()){this.next();let wr=this.parseAwait(J);return w||this.checkExponentialAfterUnary(wr),wr}let ut=this.match(34),zt=this.startNode();if(YA(this.state.type)){zt.operator=this.state.value,zt.prefix=!0,this.match(72)&&this.expectPlugin("throwExpressions");let wr=this.match(89);if(this.next(),zt.argument=this.parseMaybeUnary(null,!0),this.checkExpressionErrors(ie,!0),this.state.strict&&wr){let Hn=zt.argument;Hn.type==="Identifier"?this.raise(U.StrictDelete,zt):this.hasPropertyAsPrivateName(Hn)&&this.raise(U.DeletePrivateField,zt)}if(!ut)return w||this.checkExponentialAfterUnary(zt),this.finishNode(zt,"UnaryExpression")}let Zr=this.parseUpdate(zt,ut,ie);if(ye){let{type:wr}=this.state;if((this.hasPlugin("v8intrinsic")?xa(wr):xa(wr)&&!this.match(54))&&!this.isAmbiguousAwait())return this.raiseOverwrite(U.AwaitNotInAsyncContext,J),this.parseAwait(J)}return Zr}parseUpdate(ie,w,J){if(w){let zt=ie;return this.checkLVal(zt.argument,this.finishNode(zt,"UpdateExpression")),ie}let ye=this.state.startLoc,ut=this.parseExprSubscripts(J);if(this.checkExpressionErrors(J,!1))return ut;for(;Yu(this.state.type)&&!this.canInsertSemicolon();){let zt=this.startNodeAt(ye);zt.operator=this.state.value,zt.prefix=!1,zt.argument=ut,this.next(),this.checkLVal(ut,ut=this.finishNode(zt,"UpdateExpression"))}return ut}parseExprSubscripts(ie){let w=this.state.startLoc,J=this.state.potentialArrowAt,ye=this.parseExprAtom(ie);return this.shouldExitDescending(ye,J)?ye:this.parseSubscripts(ye,w)}parseSubscripts(ie,w,J){let ye={optionalChainMember:!1,maybeAsyncArrow:this.atPossibleAsyncArrow(ie),stop:!1};do ie=this.parseSubscript(ie,w,J,ye),ye.maybeAsyncArrow=!1;while(!ye.stop);return ie}parseSubscript(ie,w,J,ye){let{type:ut}=this.state;if(!J&&ut===15)return this.parseBind(ie,w,J,ye);if(Ir(ut))return this.parseTaggedTemplateExpression(ie,w,ye);let zt=!1;if(ut===18){if(J&&(this.raise(U.OptionalChainingNoNew,this.state.startLoc),this.lookaheadCharCode()===40))return ye.stop=!0,ie;ye.optionalChainMember=zt=!0,this.next()}if(!J&&this.match(10))return this.parseCoverCallAndAsyncArrowHead(ie,w,ye,zt);{let Zr=this.eat(0);return Zr||zt||this.eat(16)?this.parseMember(ie,w,ye,Zr,zt):(ye.stop=!0,ie)}}parseMember(ie,w,J,ye,ut){let zt=this.startNodeAt(w);return zt.object=ie,zt.computed=ye,ye?(zt.property=this.parseExpression(),this.expect(3)):this.match(139)?(ie.type==="Super"&&this.raise(U.SuperPrivateField,w),this.classScope.usePrivateName(this.state.value,this.state.startLoc),zt.property=this.parsePrivateName()):zt.property=this.parseIdentifier(!0),J.optionalChainMember?(zt.optional=ut,this.finishNode(zt,"OptionalMemberExpression")):this.finishNode(zt,"MemberExpression")}parseBind(ie,w,J,ye){let ut=this.startNodeAt(w);return ut.object=ie,this.next(),ut.callee=this.parseNoCallExpr(),ye.stop=!0,this.parseSubscripts(this.finishNode(ut,"BindExpression"),w,J)}parseCoverCallAndAsyncArrowHead(ie,w,J,ye){let ut=this.state.maybeInArrowParameters,zt=null;this.state.maybeInArrowParameters=!0,this.next();let Zr=this.startNodeAt(w);Zr.callee=ie;let{maybeAsyncArrow:wr,optionalChainMember:Hn}=J;wr&&(this.expressionScope.enter(NC()),zt=new VA),Hn&&(Zr.optional=ye),ye?Zr.arguments=this.parseCallExpressionArguments(11):Zr.arguments=this.parseCallExpressionArguments(11,ie.type!=="Super",Zr,zt);let Dn=this.finishCallExpression(Zr,Hn);return wr&&this.shouldParseAsyncArrow()&&!ye?(J.stop=!0,this.checkDestructuringPrivate(zt),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),Dn=this.parseAsyncArrowFromCallExpression(this.startNodeAt(w),Dn)):(wr&&(this.checkExpressionErrors(zt,!0),this.expressionScope.exit()),this.toReferencedArguments(Dn)),this.state.maybeInArrowParameters=ut,Dn}toReferencedArguments(ie,w){this.toReferencedListDeep(ie.arguments,w)}parseTaggedTemplateExpression(ie,w,J){let ye=this.startNodeAt(w);return ye.tag=ie,ye.quasi=this.parseTemplate(!0),J.optionalChainMember&&this.raise(U.OptionalChainingNoTemplate,w),this.finishNode(ye,"TaggedTemplateExpression")}atPossibleAsyncArrow(ie){return ie.type==="Identifier"&&ie.name==="async"&&this.state.lastTokEndLoc.index===ie.end&&!this.canInsertSemicolon()&&ie.end-ie.start===5&&this.offsetToSourcePos(ie.start)===this.state.potentialArrowAt}finishCallExpression(ie,w){if(ie.callee.type==="Import")if(ie.arguments.length===0||ie.arguments.length>2)this.raise(U.ImportCallArity,ie);else for(let J of ie.arguments)J.type==="SpreadElement"&&this.raise(U.ImportCallSpreadArgument,J);return this.finishNode(ie,w?"OptionalCallExpression":"CallExpression")}parseCallExpressionArguments(ie,w,J,ye){let ut=[],zt=!0,Zr=this.state.inFSharpPipelineDirectBody;for(this.state.inFSharpPipelineDirectBody=!1;!this.eat(ie);){if(zt)zt=!1;else if(this.expect(12),this.match(ie)){J&&this.addTrailingCommaExtraToNode(J),this.next();break}ut.push(this.parseExprListItem(!1,ye,w))}return this.state.inFSharpPipelineDirectBody=Zr,ut}shouldParseAsyncArrow(){return this.match(19)&&!this.canInsertSemicolon()}parseAsyncArrowFromCallExpression(ie,w){var J;return this.resetPreviousNodeTrailingComments(w),this.expect(19),this.parseArrowExpression(ie,w.arguments,!0,(J=w.extra)==null?void 0:J.trailingCommaLoc),w.innerComments&&ei(ie,w.innerComments),w.callee.trailingComments&&ei(ie,w.callee.trailingComments),ie}parseNoCallExpr(){let ie=this.state.startLoc;return this.parseSubscripts(this.parseExprAtom(),ie,!0)}parseExprAtom(ie){let w,J=null,{type:ye}=this.state;switch(ye){case 79:return this.parseSuper();case 83:return w=this.startNode(),this.next(),this.match(16)?this.parseImportMetaProperty(w):this.match(10)?this.optionFlags&256?this.parseImportCall(w):this.finishNode(w,"Import"):(this.raise(U.UnsupportedImport,this.state.lastTokStartLoc),this.finishNode(w,"Import"));case 78:return w=this.startNode(),this.next(),this.finishNode(w,"ThisExpression");case 90:return this.parseDo(this.startNode(),!1);case 56:case 31:return this.readRegexp(),this.parseRegExpLiteral(this.state.value);case 135:return this.parseNumericLiteral(this.state.value);case 136:return this.parseBigIntLiteral(this.state.value);case 134:return this.parseStringLiteral(this.state.value);case 84:return this.parseNullLiteral();case 85:return this.parseBooleanLiteral(!0);case 86:return this.parseBooleanLiteral(!1);case 10:{let ut=this.state.potentialArrowAt===this.state.start;return this.parseParenAndDistinguishExpression(ut)}case 2:case 1:return this.parseArrayLike(this.state.type===2?4:3,!1,!0);case 0:return this.parseArrayLike(3,!0,!1,ie);case 6:case 7:return this.parseObjectLike(this.state.type===6?9:8,!1,!0);case 5:return this.parseObjectLike(8,!1,!1,ie);case 68:return this.parseFunctionOrFunctionSent();case 26:J=this.parseDecorators();case 80:return this.parseClass(this.maybeTakeDecorators(J,this.startNode()),!1);case 77:return this.parseNewOrNewTarget();case 25:case 24:return this.parseTemplate(!1);case 15:{w=this.startNode(),this.next(),w.object=null;let ut=w.callee=this.parseNoCallExpr();if(ut.type==="MemberExpression")return this.finishNode(w,"BindExpression");throw this.raise(U.UnsupportedBind,ut)}case 139:return this.raise(U.PrivateInExpectedIn,this.state.startLoc,{identifierName:this.state.value}),this.parsePrivateName();case 33:return this.parseTopicReferenceThenEqualsSign(54,"%");case 32:return this.parseTopicReferenceThenEqualsSign(44,"^");case 37:case 38:return this.parseTopicReference("hack");case 44:case 54:case 27:{let ut=this.getPluginOption("pipelineOperator","proposal");if(ut)return this.parseTopicReference(ut);this.unexpected();break}case 47:{let ut=this.input.codePointAt(this.nextTokenStart());da(ut)||ut===62?this.expectOnePlugin(["jsx","flow","typescript"]):this.unexpected();break}default:if(ye===137)return this.parseDecimalLiteral(this.state.value);if(gn(ye)){if(this.isContextual(127)&&this.lookaheadInLineCharCode()===123)return this.parseModuleExpression();let ut=this.state.potentialArrowAt===this.state.start,zt=this.state.containsEsc,Zr=this.parseIdentifier();if(!zt&&Zr.name==="async"&&!this.canInsertSemicolon()){let{type:wr}=this.state;if(wr===68)return this.resetPreviousNodeTrailingComments(Zr),this.next(),this.parseAsyncFunctionExpression(this.startNodeAtNode(Zr));if(gn(wr))return this.lookaheadCharCode()===61?this.parseAsyncArrowUnaryFunction(this.startNodeAtNode(Zr)):Zr;if(wr===90)return this.resetPreviousNodeTrailingComments(Zr),this.parseDo(this.startNodeAtNode(Zr),!0)}return ut&&this.match(19)&&!this.canInsertSemicolon()?(this.next(),this.parseArrowExpression(this.startNodeAtNode(Zr),[Zr],!1)):Zr}else this.unexpected()}}parseTopicReferenceThenEqualsSign(ie,w){let J=this.getPluginOption("pipelineOperator","proposal");if(J)return this.state.type=ie,this.state.value=w,this.state.pos--,this.state.end--,this.state.endLoc=a(this.state.endLoc,-1),this.parseTopicReference(J);this.unexpected()}parseTopicReference(ie){let w=this.startNode(),J=this.state.startLoc,ye=this.state.type;return this.next(),this.finishTopicReference(w,J,ie,ye)}finishTopicReference(ie,w,J,ye){if(this.testTopicReferenceConfiguration(J,w,ye))return J==="hack"?(this.topicReferenceIsAllowedInCurrentContext()||this.raise(U.PipeTopicUnbound,w),this.registerTopicReference(),this.finishNode(ie,"TopicReference")):(this.topicReferenceIsAllowedInCurrentContext()||this.raise(U.PrimaryTopicNotAllowed,w),this.registerTopicReference(),this.finishNode(ie,"PipelinePrimaryTopicReference"));throw this.raise(U.PipeTopicUnconfiguredToken,w,{token:Vd(ye)})}testTopicReferenceConfiguration(ie,w,J){switch(ie){case"hack":return this.hasPlugin(["pipelineOperator",{topicToken:Vd(J)}]);case"smart":return J===27;default:throw this.raise(U.PipeTopicRequiresHackPipes,w)}}parseAsyncArrowUnaryFunction(ie){this.prodParam.enter(vl(!0,this.prodParam.hasYield));let w=[this.parseIdentifier()];return this.prodParam.exit(),this.hasPrecedingLineBreak()&&this.raise(U.LineTerminatorBeforeArrow,this.state.curPosition()),this.expect(19),this.parseArrowExpression(ie,w,!0)}parseDo(ie,w){this.expectPlugin("doExpressions"),w&&this.expectPlugin("asyncDoExpressions"),ie.async=w,this.next();let J=this.state.labels;return this.state.labels=[],w?(this.prodParam.enter(2),ie.body=this.parseBlock(),this.prodParam.exit()):ie.body=this.parseBlock(),this.state.labels=J,this.finishNode(ie,"DoExpression")}parseSuper(){let ie=this.startNode();return this.next(),this.match(10)&&!this.scope.allowDirectSuper&&!(this.optionFlags&16)?this.raise(U.SuperNotAllowed,ie):!this.scope.allowSuper&&!(this.optionFlags&16)&&this.raise(U.UnexpectedSuper,ie),!this.match(10)&&!this.match(0)&&!this.match(16)&&this.raise(U.UnsupportedSuper,ie),this.finishNode(ie,"Super")}parsePrivateName(){let ie=this.startNode(),w=this.startNodeAt(a(this.state.startLoc,1)),J=this.state.value;return this.next(),ie.id=this.createIdentifier(w,J),this.finishNode(ie,"PrivateName")}parseFunctionOrFunctionSent(){let ie=this.startNode();if(this.next(),this.prodParam.hasYield&&this.match(16)){let w=this.createIdentifier(this.startNodeAtNode(ie),"function");return this.next(),this.match(103)?this.expectPlugin("functionSent"):this.hasPlugin("functionSent")||this.unexpected(),this.parseMetaProperty(ie,w,"sent")}return this.parseFunction(ie)}parseMetaProperty(ie,w,J){ie.meta=w;let ye=this.state.containsEsc;return ie.property=this.parseIdentifier(!0),(ie.property.name!==J||ye)&&this.raise(U.UnsupportedMetaProperty,ie.property,{target:w.name,onlyValidPropertyName:J}),this.finishNode(ie,"MetaProperty")}parseImportMetaProperty(ie){let w=this.createIdentifier(this.startNodeAtNode(ie),"import");if(this.next(),this.isContextual(101))this.inModule||this.raise(U.ImportMetaOutsideModule,w),this.sawUnambiguousESM=!0;else if(this.isContextual(105)||this.isContextual(97)){let J=this.isContextual(105);if(this.expectPlugin(J?"sourcePhaseImports":"deferredImportEvaluation"),!(this.optionFlags&256))throw this.raise(U.DynamicImportPhaseRequiresImportExpressions,this.state.startLoc,{phase:this.state.value});return this.next(),ie.phase=J?"source":"defer",this.parseImportCall(ie)}return this.parseMetaProperty(ie,w,"meta")}parseLiteralAtNode(ie,w,J){return this.addExtra(J,"rawValue",ie),this.addExtra(J,"raw",this.input.slice(this.offsetToSourcePos(J.start),this.state.end)),J.value=ie,this.next(),this.finishNode(J,w)}parseLiteral(ie,w){let J=this.startNode();return this.parseLiteralAtNode(ie,w,J)}parseStringLiteral(ie){return this.parseLiteral(ie,"StringLiteral")}parseNumericLiteral(ie){return this.parseLiteral(ie,"NumericLiteral")}parseBigIntLiteral(ie){return this.parseLiteral(ie,"BigIntLiteral")}parseDecimalLiteral(ie){return this.parseLiteral(ie,"DecimalLiteral")}parseRegExpLiteral(ie){let w=this.startNode();return this.addExtra(w,"raw",this.input.slice(this.offsetToSourcePos(w.start),this.state.end)),w.pattern=ie.pattern,w.flags=ie.flags,this.next(),this.finishNode(w,"RegExpLiteral")}parseBooleanLiteral(ie){let w=this.startNode();return w.value=ie,this.next(),this.finishNode(w,"BooleanLiteral")}parseNullLiteral(){let ie=this.startNode();return this.next(),this.finishNode(ie,"NullLiteral")}parseParenAndDistinguishExpression(ie){let w=this.state.startLoc,J;this.next(),this.expressionScope.enter(oc());let ye=this.state.maybeInArrowParameters,ut=this.state.inFSharpPipelineDirectBody;this.state.maybeInArrowParameters=!0,this.state.inFSharpPipelineDirectBody=!1;let zt=this.state.startLoc,Zr=[],wr=new VA,Hn=!0,Dn,Wo;for(;!this.match(11);){if(Hn)Hn=!1;else if(this.expect(12,wr.optionalParametersLoc===null?null:wr.optionalParametersLoc),this.match(11)){Wo=this.state.startLoc;break}if(this.match(21)){let Mo=this.state.startLoc;if(Dn=this.state.startLoc,Zr.push(this.parseParenItem(this.parseRestBinding(),Mo)),!this.checkCommaAfterRest(41))break}else Zr.push(this.parseMaybeAssignAllowIn(wr,this.parseParenItem))}let Ic=this.state.lastTokEndLoc;this.expect(11),this.state.maybeInArrowParameters=ye,this.state.inFSharpPipelineDirectBody=ut;let Jc=this.startNodeAt(w);return ie&&this.shouldParseArrow(Zr)&&(Jc=this.parseArrow(Jc))?(this.checkDestructuringPrivate(wr),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),this.parseArrowExpression(Jc,Zr,!1),Jc):(this.expressionScope.exit(),Zr.length||this.unexpected(this.state.lastTokStartLoc),Wo&&this.unexpected(Wo),Dn&&this.unexpected(Dn),this.checkExpressionErrors(wr,!0),this.toReferencedListDeep(Zr,!0),Zr.length>1?(J=this.startNodeAt(zt),J.expressions=Zr,this.finishNode(J,"SequenceExpression"),this.resetEndLocation(J,Ic)):J=Zr[0],this.wrapParenthesis(w,J))}wrapParenthesis(ie,w){if(!(this.optionFlags&512))return this.addExtra(w,"parenthesized",!0),this.addExtra(w,"parenStart",ie.index),this.takeSurroundingComments(w,ie.index,this.state.lastTokEndLoc.index),w;let J=this.startNodeAt(ie);return J.expression=w,this.finishNode(J,"ParenthesizedExpression")}shouldParseArrow(ie){return!this.canInsertSemicolon()}parseArrow(ie){if(this.eat(19))return ie}parseParenItem(ie,w){return ie}parseNewOrNewTarget(){let ie=this.startNode();if(this.next(),this.match(16)){let w=this.createIdentifier(this.startNodeAtNode(ie),"new");this.next();let J=this.parseMetaProperty(ie,w,"target");return!this.scope.inNonArrowFunction&&!this.scope.inClass&&!(this.optionFlags&4)&&this.raise(U.UnexpectedNewTarget,J),J}return this.parseNew(ie)}parseNew(ie){if(this.parseNewCallee(ie),this.eat(10)){let w=this.parseExprList(11);this.toReferencedList(w),ie.arguments=w}else ie.arguments=[];return this.finishNode(ie,"NewExpression")}parseNewCallee(ie){let w=this.match(83),J=this.parseNoCallExpr();ie.callee=J,w&&(J.type==="Import"||J.type==="ImportExpression")&&this.raise(U.ImportCallNotNewExpression,J)}parseTemplateElement(ie){let{start:w,startLoc:J,end:ye,value:ut}=this.state,zt=w+1,Zr=this.startNodeAt(a(J,1));ut===null&&(ie||this.raise(U.InvalidEscapeSequenceTemplate,a(this.state.firstInvalidTemplateEscapePos,1)));let wr=this.match(24),Hn=wr?-1:-2,Dn=ye+Hn;Zr.value={raw:this.input.slice(zt,Dn).replace(/\r\n?/g,` +`),cooked:ut===null?null:ut.slice(1,Hn)},Zr.tail=wr,this.next();let Wo=this.finishNode(Zr,"TemplateElement");return this.resetEndLocation(Wo,a(this.state.lastTokEndLoc,Hn)),Wo}parseTemplate(ie){let w=this.startNode(),J=this.parseTemplateElement(ie),ye=[J],ut=[];for(;!J.tail;)ut.push(this.parseTemplateSubstitution()),this.readTemplateContinuation(),ye.push(J=this.parseTemplateElement(ie));return w.expressions=ut,w.quasis=ye,this.finishNode(w,"TemplateLiteral")}parseTemplateSubstitution(){return this.parseExpression()}parseObjectLike(ie,w,J,ye){J&&this.expectPlugin("recordAndTuple");let ut=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let zt=Object.create(null),Zr=!0,wr=this.startNode();for(wr.properties=[],this.next();!this.match(ie);){if(Zr)Zr=!1;else if(this.expect(12),this.match(ie)){this.addTrailingCommaExtraToNode(wr);break}let Dn;w?Dn=this.parseBindingProperty():(Dn=this.parsePropertyDefinition(ye),this.checkProto(Dn,J,zt,ye)),J&&!this.isObjectProperty(Dn)&&Dn.type!=="SpreadElement"&&this.raise(U.InvalidRecordProperty,Dn),Dn.shorthand&&this.addExtra(Dn,"shorthand",!0),wr.properties.push(Dn)}this.next(),this.state.inFSharpPipelineDirectBody=ut;let Hn="ObjectExpression";return w?Hn="ObjectPattern":J&&(Hn="RecordExpression"),this.finishNode(wr,Hn)}addTrailingCommaExtraToNode(ie){this.addExtra(ie,"trailingComma",this.state.lastTokStartLoc.index),this.addExtra(ie,"trailingCommaLoc",this.state.lastTokStartLoc,!1)}maybeAsyncOrAccessorProp(ie){return!ie.computed&&ie.key.type==="Identifier"&&(this.isLiteralPropertyName()||this.match(0)||this.match(55))}parsePropertyDefinition(ie){let w=[];if(this.match(26))for(this.hasPlugin("decorators")&&this.raise(U.UnsupportedPropertyDecorator,this.state.startLoc);this.match(26);)w.push(this.parseDecorator());let J=this.startNode(),ye=!1,ut=!1,zt;if(this.match(21))return w.length&&this.unexpected(),this.parseSpread();w.length&&(J.decorators=w,w=[]),J.method=!1,ie&&(zt=this.state.startLoc);let Zr=this.eat(55);this.parsePropertyNamePrefixOperator(J);let wr=this.state.containsEsc;if(this.parsePropertyName(J,ie),!Zr&&!wr&&this.maybeAsyncOrAccessorProp(J)){let{key:Hn}=J,Dn=Hn.name;Dn==="async"&&!this.hasPrecedingLineBreak()&&(ye=!0,this.resetPreviousNodeTrailingComments(Hn),Zr=this.eat(55),this.parsePropertyName(J)),(Dn==="get"||Dn==="set")&&(ut=!0,this.resetPreviousNodeTrailingComments(Hn),J.kind=Dn,this.match(55)&&(Zr=!0,this.raise(U.AccessorIsGenerator,this.state.curPosition(),{kind:Dn}),this.next()),this.parsePropertyName(J))}return this.parseObjPropValue(J,zt,Zr,ye,!1,ut,ie)}getGetterSetterExpectedParamCount(ie){return ie.kind==="get"?0:1}getObjectOrClassMethodParams(ie){return ie.params}checkGetterSetterParams(ie){var w;let J=this.getGetterSetterExpectedParamCount(ie),ye=this.getObjectOrClassMethodParams(ie);ye.length!==J&&this.raise(ie.kind==="get"?U.BadGetterArity:U.BadSetterArity,ie),ie.kind==="set"&&((w=ye[ye.length-1])==null?void 0:w.type)==="RestElement"&&this.raise(U.BadSetterRestParameter,ie)}parseObjectMethod(ie,w,J,ye,ut){if(ut){let zt=this.parseMethod(ie,w,!1,!1,!1,"ObjectMethod");return this.checkGetterSetterParams(zt),zt}if(J||w||this.match(10))return ye&&this.unexpected(),ie.kind="method",ie.method=!0,this.parseMethod(ie,w,J,!1,!1,"ObjectMethod")}parseObjectProperty(ie,w,J,ye){if(ie.shorthand=!1,this.eat(14))return ie.value=J?this.parseMaybeDefault(this.state.startLoc):this.parseMaybeAssignAllowIn(ye),this.finishNode(ie,"ObjectProperty");if(!ie.computed&&ie.key.type==="Identifier"){if(this.checkReservedWord(ie.key.name,ie.key.loc.start,!0,!1),J)ie.value=this.parseMaybeDefault(w,ii(ie.key));else if(this.match(29)){let ut=this.state.startLoc;ye!=null?ye.shorthandAssignLoc===null&&(ye.shorthandAssignLoc=ut):this.raise(U.InvalidCoverInitializedName,ut),ie.value=this.parseMaybeDefault(w,ii(ie.key))}else ie.value=ii(ie.key);return ie.shorthand=!0,this.finishNode(ie,"ObjectProperty")}}parseObjPropValue(ie,w,J,ye,ut,zt,Zr){let wr=this.parseObjectMethod(ie,J,ye,ut,zt)||this.parseObjectProperty(ie,w,ut,Zr);return wr||this.unexpected(),wr}parsePropertyName(ie,w){if(this.eat(0))ie.computed=!0,ie.key=this.parseMaybeAssignAllowIn(),this.expect(3);else{let{type:J,value:ye}=this.state,ut;if(we(J))ut=this.parseIdentifier(!0);else switch(J){case 135:ut=this.parseNumericLiteral(ye);break;case 134:ut=this.parseStringLiteral(ye);break;case 136:ut=this.parseBigIntLiteral(ye);break;case 139:{let zt=this.state.startLoc;w!=null?w.privateKeyLoc===null&&(w.privateKeyLoc=zt):this.raise(U.UnexpectedPrivateField,zt),ut=this.parsePrivateName();break}default:if(J===137){ut=this.parseDecimalLiteral(ye);break}this.unexpected()}ie.key=ut,J!==139&&(ie.computed=!1)}}initFunction(ie,w){ie.id=null,ie.generator=!1,ie.async=w}parseMethod(ie,w,J,ye,ut,zt,Zr=!1){this.initFunction(ie,J),ie.generator=w,this.scope.enter(18|(Zr?64:0)|(ut?32:0)),this.prodParam.enter(vl(J,ie.generator)),this.parseFunctionParams(ie,ye);let wr=this.parseFunctionBodyAndFinish(ie,zt,!0);return this.prodParam.exit(),this.scope.exit(),wr}parseArrayLike(ie,w,J,ye){J&&this.expectPlugin("recordAndTuple");let ut=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let zt=this.startNode();return this.next(),zt.elements=this.parseExprList(ie,!J,ye,zt),this.state.inFSharpPipelineDirectBody=ut,this.finishNode(zt,J?"TupleExpression":"ArrayExpression")}parseArrowExpression(ie,w,J,ye){this.scope.enter(6);let ut=vl(J,!1);!this.match(5)&&this.prodParam.hasIn&&(ut|=8),this.prodParam.enter(ut),this.initFunction(ie,J);let zt=this.state.maybeInArrowParameters;return w&&(this.state.maybeInArrowParameters=!0,this.setArrowFunctionParameters(ie,w,ye)),this.state.maybeInArrowParameters=!1,this.parseFunctionBody(ie,!0),this.prodParam.exit(),this.scope.exit(),this.state.maybeInArrowParameters=zt,this.finishNode(ie,"ArrowFunctionExpression")}setArrowFunctionParameters(ie,w,J){this.toAssignableList(w,J,!1),ie.params=w}parseFunctionBodyAndFinish(ie,w,J=!1){return this.parseFunctionBody(ie,!1,J),this.finishNode(ie,w)}parseFunctionBody(ie,w,J=!1){let ye=w&&!this.match(5);if(this.expressionScope.enter(fI()),ye)ie.body=this.parseMaybeAssign(),this.checkParams(ie,!1,w,!1);else{let ut=this.state.strict,zt=this.state.labels;this.state.labels=[],this.prodParam.enter(this.prodParam.currentFlags()|4),ie.body=this.parseBlock(!0,!1,Zr=>{let wr=!this.isSimpleParamList(ie.params);Zr&&wr&&this.raise(U.IllegalLanguageModeDirective,(ie.kind==="method"||ie.kind==="constructor")&&ie.key?ie.key.loc.end:ie);let Hn=!ut&&this.state.strict;this.checkParams(ie,!this.state.strict&&!w&&!J&&!wr,w,Hn),this.state.strict&&ie.id&&this.checkIdentifier(ie.id,65,Hn)}),this.prodParam.exit(),this.state.labels=zt}this.expressionScope.exit()}isSimpleParameter(ie){return ie.type==="Identifier"}isSimpleParamList(ie){for(let w=0,J=ie.length;w10||!Ta(ie))){if(J&&qs(ie)){this.raise(U.UnexpectedKeyword,w,{keyword:ie});return}if((this.state.strict?ye?ka:ts:wi)(ie,this.inModule)){this.raise(U.UnexpectedReservedWord,w,{reservedWord:ie});return}else if(ie==="yield"){if(this.prodParam.hasYield){this.raise(U.YieldBindingIdentifier,w);return}}else if(ie==="await"){if(this.prodParam.hasAwait){this.raise(U.AwaitBindingIdentifier,w);return}if(this.scope.inStaticBlock){this.raise(U.AwaitBindingIdentifierInStaticBlock,w);return}this.expressionScope.recordAsyncArrowParametersError(w)}else if(ie==="arguments"&&this.scope.inClassAndNotInNonArrowFunction){this.raise(U.ArgumentsInClass,w);return}}}recordAwaitIfAllowed(){let ie=this.prodParam.hasAwait||this.optionFlags&1&&!this.scope.inFunction;return ie&&!this.scope.inFunction&&(this.state.hasTopLevelAwait=!0),ie}parseAwait(ie){let w=this.startNodeAt(ie);return this.expressionScope.recordParameterInitializerError(U.AwaitExpressionFormalParameter,w),this.eat(55)&&this.raise(U.ObsoleteAwaitStar,w),!this.scope.inFunction&&!(this.optionFlags&1)&&(this.isAmbiguousAwait()?this.ambiguousScriptDifferentAst=!0:this.sawUnambiguousESM=!0),this.state.soloAwait||(w.argument=this.parseMaybeUnary(null,!0)),this.finishNode(w,"AwaitExpression")}isAmbiguousAwait(){if(this.hasPrecedingLineBreak())return!0;let{type:ie}=this.state;return ie===53||ie===10||ie===0||Ir(ie)||ie===102&&!this.state.containsEsc||ie===138||ie===56||this.hasPlugin("v8intrinsic")&&ie===54}parseYield(){let ie=this.startNode();this.expressionScope.recordParameterInitializerError(U.YieldInParameter,ie),this.next();let w=!1,J=null;if(!this.hasPrecedingLineBreak())switch(w=this.eat(55),this.state.type){case 13:case 140:case 8:case 11:case 3:case 9:case 14:case 12:if(!w)break;default:J=this.parseMaybeAssign()}return ie.delegate=w,ie.argument=J,this.finishNode(ie,"YieldExpression")}parseImportCall(ie){if(this.next(),ie.source=this.parseMaybeAssignAllowIn(),ie.options=null,this.eat(12)&&!this.match(11)&&(ie.options=this.parseMaybeAssignAllowIn(),this.eat(12)&&!this.match(11))){do this.parseMaybeAssignAllowIn();while(this.eat(12)&&!this.match(11));this.raise(U.ImportCallArity,ie)}return this.expect(11),this.finishNode(ie,"ImportExpression")}checkPipelineAtInfixOperator(ie,w){this.hasPlugin(["pipelineOperator",{proposal:"smart"}])&&ie.type==="SequenceExpression"&&this.raise(U.PipelineHeadSequenceExpression,w)}parseSmartPipelineBodyInStyle(ie,w){if(this.isSimpleReference(ie)){let J=this.startNodeAt(w);return J.callee=ie,this.finishNode(J,"PipelineBareFunction")}else{let J=this.startNodeAt(w);return this.checkSmartPipeTopicBodyEarlyErrors(w),J.expression=ie,this.finishNode(J,"PipelineTopicExpression")}}isSimpleReference(ie){switch(ie.type){case"MemberExpression":return!ie.computed&&this.isSimpleReference(ie.object);case"Identifier":return!0;default:return!1}}checkSmartPipeTopicBodyEarlyErrors(ie){if(this.match(19))throw this.raise(U.PipelineBodyNoArrow,this.state.startLoc);this.topicReferenceWasUsedInCurrentContext()||this.raise(U.PipelineTopicUnused,ie)}withTopicBindingContext(ie){let w=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:1,maxTopicIndex:null};try{return ie()}finally{this.state.topicContext=w}}withSmartMixTopicForbiddingContext(ie){if(this.hasPlugin(["pipelineOperator",{proposal:"smart"}])){let w=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null};try{return ie()}finally{this.state.topicContext=w}}else return ie()}withSoloAwaitPermittingContext(ie){let w=this.state.soloAwait;this.state.soloAwait=!0;try{return ie()}finally{this.state.soloAwait=w}}allowInAnd(ie){let w=this.prodParam.currentFlags();if(8&~w){this.prodParam.enter(w|8);try{return ie()}finally{this.prodParam.exit()}}return ie()}disallowInAnd(ie){let w=this.prodParam.currentFlags();if(8&w){this.prodParam.enter(w&-9);try{return ie()}finally{this.prodParam.exit()}}return ie()}registerTopicReference(){this.state.topicContext.maxTopicIndex=0}topicReferenceIsAllowedInCurrentContext(){return this.state.topicContext.maxNumOfResolvableTopics>=1}topicReferenceWasUsedInCurrentContext(){return this.state.topicContext.maxTopicIndex!=null&&this.state.topicContext.maxTopicIndex>=0}parseFSharpPipelineBody(ie){let w=this.state.startLoc;this.state.potentialArrowAt=this.state.start;let J=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!0;let ye=this.parseExprOp(this.parseMaybeUnaryOrPrivate(),w,ie);return this.state.inFSharpPipelineDirectBody=J,ye}parseModuleExpression(){this.expectPlugin("moduleBlocks");let ie=this.startNode();this.next(),this.match(5)||this.unexpected(null,5);let w=this.startNodeAt(this.state.endLoc);this.next();let J=this.initializeScopes(!0);this.enterInitialScopes();try{ie.body=this.parseProgram(w,8,"module")}finally{J()}return this.finishNode(ie,"ModuleExpression")}parsePropertyNamePrefixOperator(ie){}},E_={kind:1},Tb={kind:2},gm=/[\uD800-\uDFFF]/u,gh=/in(?:stanceof)?/y;function fg(ie,w,J){for(let ye=0;ye0)for(let[ut,zt]of Array.from(this.scope.undefinedExports))this.raise(U.ModuleExportUndefined,zt,{localName:ut});this.addExtra(ie,"topLevelAwait",this.state.hasTopLevelAwait)}let ye;return w===140?ye=this.finishNode(ie,"Program"):ye=this.finishNodeAt(ie,"Program",a(this.state.startLoc,-1)),ye}stmtToDirective(ie){let w=ie;w.type="Directive",w.value=w.expression,delete w.expression;let J=w.value,ye=J.value,ut=this.input.slice(this.offsetToSourcePos(J.start),this.offsetToSourcePos(J.end)),zt=J.value=ut.slice(1,-1);return this.addExtra(J,"raw",ut),this.addExtra(J,"rawValue",zt),this.addExtra(J,"expressionValue",ye),J.type="DirectiveLiteral",w}parseInterpreterDirective(){if(!this.match(28))return null;let ie=this.startNode();return ie.value=this.state.value,this.next(),this.finishNode(ie,"InterpreterDirective")}isLet(){return this.isContextual(100)?this.hasFollowingBindingAtom():!1}chStartsBindingIdentifier(ie,w){if(da(ie)){if(gh.lastIndex=w,gh.test(this.input)){let J=this.codePointAtPos(gh.lastIndex);if(!og(J)&&J!==92)return!1}return!0}else return ie===92}chStartsBindingPattern(ie){return ie===91||ie===123}hasFollowingBindingAtom(){let ie=this.nextTokenStart(),w=this.codePointAtPos(ie);return this.chStartsBindingPattern(w)||this.chStartsBindingIdentifier(w,ie)}hasInLineFollowingBindingIdentifierOrBrace(){let ie=this.nextTokenInLineStart(),w=this.codePointAtPos(ie);return w===123||this.chStartsBindingIdentifier(w,ie)}startsUsingForOf(){let{type:ie,containsEsc:w}=this.lookahead();if(ie===102&&!w)return!1;if(gn(ie)&&!this.hasFollowingLineBreak())return this.expectPlugin("explicitResourceManagement"),!0}startsAwaitUsing(){let ie=this.nextTokenInLineStart();if(this.isUnparsedContextual(ie,"using")){ie=this.nextTokenInLineStartSince(ie+5);let w=this.codePointAtPos(ie);if(this.chStartsBindingIdentifier(w,ie))return this.expectPlugin("explicitResourceManagement"),!0}return!1}parseModuleItem(){return this.parseStatementLike(15)}parseStatementListItem(){return this.parseStatementLike(6|(!this.options.annexB||this.state.strict?0:8))}parseStatementOrSloppyAnnexBFunctionDeclaration(ie=!1){let w=0;return this.options.annexB&&!this.state.strict&&(w|=4,ie&&(w|=8)),this.parseStatementLike(w)}parseStatement(){return this.parseStatementLike(0)}parseStatementLike(ie){let w=null;return this.match(26)&&(w=this.parseDecorators(!0)),this.parseStatementContent(ie,w)}parseStatementContent(ie,w){let J=this.state.type,ye=this.startNode(),ut=!!(ie&2),zt=!!(ie&4),Zr=ie&1;switch(J){case 60:return this.parseBreakContinueStatement(ye,!0);case 63:return this.parseBreakContinueStatement(ye,!1);case 64:return this.parseDebuggerStatement(ye);case 90:return this.parseDoWhileStatement(ye);case 91:return this.parseForStatement(ye);case 68:if(this.lookaheadCharCode()===46)break;return zt||this.raise(this.state.strict?U.StrictFunction:this.options.annexB?U.SloppyFunctionAnnexB:U.SloppyFunction,this.state.startLoc),this.parseFunctionStatement(ye,!1,!ut&&zt);case 80:return ut||this.unexpected(),this.parseClass(this.maybeTakeDecorators(w,ye),!0);case 69:return this.parseIfStatement(ye);case 70:return this.parseReturnStatement(ye);case 71:return this.parseSwitchStatement(ye);case 72:return this.parseThrowStatement(ye);case 73:return this.parseTryStatement(ye);case 96:if(!this.state.containsEsc&&this.startsAwaitUsing())return this.recordAwaitIfAllowed()?ut||this.raise(U.UnexpectedLexicalDeclaration,ye):this.raise(U.AwaitUsingNotInAsyncContext,ye),this.next(),this.parseVarStatement(ye,"await using");break;case 107:if(this.state.containsEsc||!this.hasInLineFollowingBindingIdentifierOrBrace())break;return this.expectPlugin("explicitResourceManagement"),!this.scope.inModule&&this.scope.inTopLevel?this.raise(U.UnexpectedUsingDeclaration,this.state.startLoc):ut||this.raise(U.UnexpectedLexicalDeclaration,this.state.startLoc),this.parseVarStatement(ye,"using");case 100:{if(this.state.containsEsc)break;let Dn=this.nextTokenStart(),Wo=this.codePointAtPos(Dn);if(Wo!==91&&(!ut&&this.hasFollowingLineBreak()||!this.chStartsBindingIdentifier(Wo,Dn)&&Wo!==123))break}case 75:ut||this.raise(U.UnexpectedLexicalDeclaration,this.state.startLoc);case 74:{let Dn=this.state.value;return this.parseVarStatement(ye,Dn)}case 92:return this.parseWhileStatement(ye);case 76:return this.parseWithStatement(ye);case 5:return this.parseBlock();case 13:return this.parseEmptyStatement(ye);case 83:{let Dn=this.lookaheadCharCode();if(Dn===40||Dn===46)break}case 82:{!(this.optionFlags&8)&&!Zr&&this.raise(U.UnexpectedImportExport,this.state.startLoc),this.next();let Dn;return J===83?(Dn=this.parseImport(ye),Dn.type==="ImportDeclaration"&&(!Dn.importKind||Dn.importKind==="value")&&(this.sawUnambiguousESM=!0)):(Dn=this.parseExport(ye,w),(Dn.type==="ExportNamedDeclaration"&&(!Dn.exportKind||Dn.exportKind==="value")||Dn.type==="ExportAllDeclaration"&&(!Dn.exportKind||Dn.exportKind==="value")||Dn.type==="ExportDefaultDeclaration")&&(this.sawUnambiguousESM=!0)),this.assertModuleNodeAllowed(Dn),Dn}default:if(this.isAsyncFunction())return ut||this.raise(U.AsyncFunctionInSingleStatementContext,this.state.startLoc),this.next(),this.parseFunctionStatement(ye,!0,!ut&&zt)}let wr=this.state.value,Hn=this.parseExpression();return gn(J)&&Hn.type==="Identifier"&&this.eat(14)?this.parseLabeledStatement(ye,wr,Hn,ie):this.parseExpressionStatement(ye,Hn,w)}assertModuleNodeAllowed(ie){!(this.optionFlags&8)&&!this.inModule&&this.raise(U.ImportOutsideModule,ie)}decoratorsEnabledBeforeExport(){return this.hasPlugin("decorators-legacy")?!0:this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")!==!1}maybeTakeDecorators(ie,w,J){if(ie){var ye;(ye=w.decorators)!=null&&ye.length?(typeof this.getPluginOption("decorators","decoratorsBeforeExport")!="boolean"&&this.raise(U.DecoratorsBeforeAfterExport,w.decorators[0]),w.decorators.unshift(...ie)):w.decorators=ie,this.resetStartLocationFromNode(w,ie[0]),J&&this.resetStartLocationFromNode(J,w)}return w}canHaveLeadingDecorator(){return this.match(80)}parseDecorators(ie){let w=[];do w.push(this.parseDecorator());while(this.match(26));if(this.match(82))ie||this.unexpected(),this.decoratorsEnabledBeforeExport()||this.raise(U.DecoratorExportClass,this.state.startLoc);else if(!this.canHaveLeadingDecorator())throw this.raise(U.UnexpectedLeadingDecorator,this.state.startLoc);return w}parseDecorator(){this.expectOnePlugin(["decorators","decorators-legacy"]);let ie=this.startNode();if(this.next(),this.hasPlugin("decorators")){let w=this.state.startLoc,J;if(this.match(10)){let ye=this.state.startLoc;this.next(),J=this.parseExpression(),this.expect(11),J=this.wrapParenthesis(ye,J);let ut=this.state.startLoc;ie.expression=this.parseMaybeDecoratorArguments(J,ye),this.getPluginOption("decorators","allowCallParenthesized")===!1&&ie.expression!==J&&this.raise(U.DecoratorArgumentsOutsideParentheses,ut)}else{for(J=this.parseIdentifier(!1);this.eat(16);){let ye=this.startNodeAt(w);ye.object=J,this.match(139)?(this.classScope.usePrivateName(this.state.value,this.state.startLoc),ye.property=this.parsePrivateName()):ye.property=this.parseIdentifier(!0),ye.computed=!1,J=this.finishNode(ye,"MemberExpression")}ie.expression=this.parseMaybeDecoratorArguments(J,w)}}else ie.expression=this.parseExprSubscripts();return this.finishNode(ie,"Decorator")}parseMaybeDecoratorArguments(ie,w){if(this.eat(10)){let J=this.startNodeAt(w);return J.callee=ie,J.arguments=this.parseCallExpressionArguments(11),this.toReferencedList(J.arguments),this.finishNode(J,"CallExpression")}return ie}parseBreakContinueStatement(ie,w){return this.next(),this.isLineTerminator()?ie.label=null:(ie.label=this.parseIdentifier(),this.semicolon()),this.verifyBreakContinue(ie,w),this.finishNode(ie,w?"BreakStatement":"ContinueStatement")}verifyBreakContinue(ie,w){let J;for(J=0;Jthis.parseStatement()),this.state.labels.pop(),this.expect(92),ie.test=this.parseHeaderExpression(),this.eat(13),this.finishNode(ie,"DoWhileStatement")}parseForStatement(ie){this.next(),this.state.labels.push(E_);let w=null;if(this.isContextual(96)&&this.recordAwaitIfAllowed()&&(w=this.state.startLoc,this.next()),this.scope.enter(0),this.expect(10),this.match(13))return w!==null&&this.unexpected(w),this.parseFor(ie,null);let J=this.isContextual(100);{let wr=this.isContextual(96)&&this.startsAwaitUsing(),Hn=wr||this.isContextual(107)&&this.startsUsingForOf(),Dn=J&&this.hasFollowingBindingAtom()||Hn;if(this.match(74)||this.match(75)||Dn){let Wo=this.startNode(),Ic;wr?(Ic="await using",this.recordAwaitIfAllowed()||this.raise(U.AwaitUsingNotInAsyncContext,this.state.startLoc),this.next()):Ic=this.state.value,this.next(),this.parseVar(Wo,!0,Ic);let Jc=this.finishNode(Wo,"VariableDeclaration"),Mo=this.match(58);return Mo&&Hn&&this.raise(U.ForInUsing,Jc),(Mo||this.isContextual(102))&&Jc.declarations.length===1?this.parseForIn(ie,Jc,w):(w!==null&&this.unexpected(w),this.parseFor(ie,Jc))}}let ye=this.isContextual(95),ut=new VA,zt=this.parseExpression(!0,ut),Zr=this.isContextual(102);if(Zr&&(J&&this.raise(U.ForOfLet,zt),w===null&&ye&&zt.type==="Identifier"&&this.raise(U.ForOfAsync,zt)),Zr||this.match(58)){this.checkDestructuringPrivate(ut),this.toAssignable(zt,!0);let wr=Zr?"ForOfStatement":"ForInStatement";return this.checkLVal(zt,{type:wr}),this.parseForIn(ie,zt,w)}else this.checkExpressionErrors(ut,!0);return w!==null&&this.unexpected(w),this.parseFor(ie,zt)}parseFunctionStatement(ie,w,J){return this.next(),this.parseFunction(ie,1|(J?2:0)|(w?8:0))}parseIfStatement(ie){return this.next(),ie.test=this.parseHeaderExpression(),ie.consequent=this.parseStatementOrSloppyAnnexBFunctionDeclaration(),ie.alternate=this.eat(66)?this.parseStatementOrSloppyAnnexBFunctionDeclaration():null,this.finishNode(ie,"IfStatement")}parseReturnStatement(ie){return!this.prodParam.hasReturn&&!(this.optionFlags&2)&&this.raise(U.IllegalReturn,this.state.startLoc),this.next(),this.isLineTerminator()?ie.argument=null:(ie.argument=this.parseExpression(),this.semicolon()),this.finishNode(ie,"ReturnStatement")}parseSwitchStatement(ie){this.next(),ie.discriminant=this.parseHeaderExpression();let w=ie.cases=[];this.expect(5),this.state.labels.push(Tb),this.scope.enter(0);let J;for(let ye;!this.match(8);)if(this.match(61)||this.match(65)){let ut=this.match(61);J&&this.finishNode(J,"SwitchCase"),w.push(J=this.startNode()),J.consequent=[],this.next(),ut?J.test=this.parseExpression():(ye&&this.raise(U.MultipleDefaultsInSwitch,this.state.lastTokStartLoc),ye=!0,J.test=null),this.expect(14)}else J?J.consequent.push(this.parseStatementListItem()):this.unexpected();return this.scope.exit(),J&&this.finishNode(J,"SwitchCase"),this.next(),this.state.labels.pop(),this.finishNode(ie,"SwitchStatement")}parseThrowStatement(ie){return this.next(),this.hasPrecedingLineBreak()&&this.raise(U.NewlineAfterThrow,this.state.lastTokEndLoc),ie.argument=this.parseExpression(),this.semicolon(),this.finishNode(ie,"ThrowStatement")}parseCatchClauseParam(){let ie=this.parseBindingAtom();return this.scope.enter(this.options.annexB&&ie.type==="Identifier"?8:0),this.checkLVal(ie,{type:"CatchClause"},9),ie}parseTryStatement(ie){if(this.next(),ie.block=this.parseBlock(),ie.handler=null,this.match(62)){let w=this.startNode();this.next(),this.match(10)?(this.expect(10),w.param=this.parseCatchClauseParam(),this.expect(11)):(w.param=null,this.scope.enter(0)),w.body=this.withSmartMixTopicForbiddingContext(()=>this.parseBlock(!1,!1)),this.scope.exit(),ie.handler=this.finishNode(w,"CatchClause")}return ie.finalizer=this.eat(67)?this.parseBlock():null,!ie.handler&&!ie.finalizer&&this.raise(U.NoCatchOrFinally,ie),this.finishNode(ie,"TryStatement")}parseVarStatement(ie,w,J=!1){return this.next(),this.parseVar(ie,!1,w,J),this.semicolon(),this.finishNode(ie,"VariableDeclaration")}parseWhileStatement(ie){return this.next(),ie.test=this.parseHeaderExpression(),this.state.labels.push(E_),ie.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.state.labels.pop(),this.finishNode(ie,"WhileStatement")}parseWithStatement(ie){return this.state.strict&&this.raise(U.StrictWith,this.state.startLoc),this.next(),ie.object=this.parseHeaderExpression(),ie.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.finishNode(ie,"WithStatement")}parseEmptyStatement(ie){return this.next(),this.finishNode(ie,"EmptyStatement")}parseLabeledStatement(ie,w,J,ye){for(let zt of this.state.labels)zt.name===w&&this.raise(U.LabelRedeclaration,J,{labelName:w});let ut=ua(this.state.type)?1:this.match(71)?2:null;for(let zt=this.state.labels.length-1;zt>=0;zt--){let Zr=this.state.labels[zt];if(Zr.statementStart===ie.start)Zr.statementStart=this.sourceToOffsetPos(this.state.start),Zr.kind=ut;else break}return this.state.labels.push({name:w,kind:ut,statementStart:this.sourceToOffsetPos(this.state.start)}),ie.body=ye&8?this.parseStatementOrSloppyAnnexBFunctionDeclaration(!0):this.parseStatement(),this.state.labels.pop(),ie.label=J,this.finishNode(ie,"LabeledStatement")}parseExpressionStatement(ie,w,J){return ie.expression=w,this.semicolon(),this.finishNode(ie,"ExpressionStatement")}parseBlock(ie=!1,w=!0,J){let ye=this.startNode();return ie&&this.state.strictErrors.clear(),this.expect(5),w&&this.scope.enter(0),this.parseBlockBody(ye,ie,!1,8,J),w&&this.scope.exit(),this.finishNode(ye,"BlockStatement")}isValidDirective(ie){return ie.type==="ExpressionStatement"&&ie.expression.type==="StringLiteral"&&!ie.expression.extra.parenthesized}parseBlockBody(ie,w,J,ye,ut){let zt=ie.body=[],Zr=ie.directives=[];this.parseBlockOrModuleBlockBody(zt,w?Zr:void 0,J,ye,ut)}parseBlockOrModuleBlockBody(ie,w,J,ye,ut){let zt=this.state.strict,Zr=!1,wr=!1;for(;!this.match(ye);){let Hn=J?this.parseModuleItem():this.parseStatementListItem();if(w&&!wr){if(this.isValidDirective(Hn)){let Dn=this.stmtToDirective(Hn);w.push(Dn),!Zr&&Dn.value.value==="use strict"&&(Zr=!0,this.setStrict(!0));continue}wr=!0,this.state.strictErrors.clear()}ie.push(Hn)}ut?.call(this,Zr),zt||this.setStrict(!1),this.next()}parseFor(ie,w){return ie.init=w,this.semicolon(!1),ie.test=this.match(13)?null:this.parseExpression(),this.semicolon(!1),ie.update=this.match(11)?null:this.parseExpression(),this.expect(11),ie.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(ie,"ForStatement")}parseForIn(ie,w,J){let ye=this.match(58);return this.next(),ye?J!==null&&this.unexpected(J):ie.await=J!==null,w.type==="VariableDeclaration"&&w.declarations[0].init!=null&&(!ye||!this.options.annexB||this.state.strict||w.kind!=="var"||w.declarations[0].id.type!=="Identifier")&&this.raise(U.ForInOfLoopInitializer,w,{type:ye?"ForInStatement":"ForOfStatement"}),w.type==="AssignmentPattern"&&this.raise(U.InvalidLhs,w,{ancestor:{type:"ForStatement"}}),ie.left=w,ie.right=ye?this.parseExpression():this.parseMaybeAssignAllowIn(),this.expect(11),ie.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(ie,ye?"ForInStatement":"ForOfStatement")}parseVar(ie,w,J,ye=!1){let ut=ie.declarations=[];for(ie.kind=J;;){let zt=this.startNode();if(this.parseVarId(zt,J),zt.init=this.eat(29)?w?this.parseMaybeAssignDisallowIn():this.parseMaybeAssignAllowIn():null,zt.init===null&&!ye&&(zt.id.type!=="Identifier"&&!(w&&(this.match(58)||this.isContextual(102)))?this.raise(U.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:"destructuring"}):(J==="const"||J==="using"||J==="await using")&&!(this.match(58)||this.isContextual(102))&&this.raise(U.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:J})),ut.push(this.finishNode(zt,"VariableDeclarator")),!this.eat(12))break}return ie}parseVarId(ie,w){let J=this.parseBindingAtom();(w==="using"||w==="await using")&&(J.type==="ArrayPattern"||J.type==="ObjectPattern")&&this.raise(U.UsingDeclarationHasBindingPattern,J.loc.start),this.checkLVal(J,{type:"VariableDeclarator"},w==="var"?5:8201),ie.id=J}parseAsyncFunctionExpression(ie){return this.parseFunction(ie,8)}parseFunction(ie,w=0){let J=w&2,ye=!!(w&1),ut=ye&&!(w&4),zt=!!(w&8);this.initFunction(ie,zt),this.match(55)&&(J&&this.raise(U.GeneratorInSingleStatementContext,this.state.startLoc),this.next(),ie.generator=!0),ye&&(ie.id=this.parseFunctionId(ut));let Zr=this.state.maybeInArrowParameters;return this.state.maybeInArrowParameters=!1,this.scope.enter(2),this.prodParam.enter(vl(zt,ie.generator)),ye||(ie.id=this.parseFunctionId()),this.parseFunctionParams(ie,!1),this.withSmartMixTopicForbiddingContext(()=>{this.parseFunctionBodyAndFinish(ie,ye?"FunctionDeclaration":"FunctionExpression")}),this.prodParam.exit(),this.scope.exit(),ye&&!J&&this.registerFunctionStatementId(ie),this.state.maybeInArrowParameters=Zr,ie}parseFunctionId(ie){return ie||gn(this.state.type)?this.parseIdentifier():null}parseFunctionParams(ie,w){this.expect(10),this.expressionScope.enter(ps()),ie.params=this.parseBindingList(11,41,2|(w?4:0)),this.expressionScope.exit()}registerFunctionStatementId(ie){ie.id&&this.scope.declareName(ie.id.name,!this.options.annexB||this.state.strict||ie.generator||ie.async?this.scope.treatFunctionsAsVar?5:8201:17,ie.id.loc.start)}parseClass(ie,w,J){this.next();let ye=this.state.strict;return this.state.strict=!0,this.parseClassId(ie,w,J),this.parseClassSuper(ie),ie.body=this.parseClassBody(!!ie.superClass,ye),this.finishNode(ie,w?"ClassDeclaration":"ClassExpression")}isClassProperty(){return this.match(29)||this.match(13)||this.match(8)}isClassMethod(){return this.match(10)}nameIsConstructor(ie){return ie.type==="Identifier"&&ie.name==="constructor"||ie.type==="StringLiteral"&&ie.value==="constructor"}isNonstaticConstructor(ie){return!ie.computed&&!ie.static&&this.nameIsConstructor(ie.key)}parseClassBody(ie,w){this.classScope.enter();let J={hadConstructor:!1,hadSuperClass:ie},ye=[],ut=this.startNode();if(ut.body=[],this.expect(5),this.withSmartMixTopicForbiddingContext(()=>{for(;!this.match(8);){if(this.eat(13)){if(ye.length>0)throw this.raise(U.DecoratorSemicolon,this.state.lastTokEndLoc);continue}if(this.match(26)){ye.push(this.parseDecorator());continue}let zt=this.startNode();ye.length&&(zt.decorators=ye,this.resetStartLocationFromNode(zt,ye[0]),ye=[]),this.parseClassMember(ut,zt,J),zt.kind==="constructor"&&zt.decorators&&zt.decorators.length>0&&this.raise(U.DecoratorConstructor,zt)}}),this.state.strict=w,this.next(),ye.length)throw this.raise(U.TrailingDecorator,this.state.startLoc);return this.classScope.exit(),this.finishNode(ut,"ClassBody")}parseClassMemberFromModifier(ie,w){let J=this.parseIdentifier(!0);if(this.isClassMethod()){let ye=w;return ye.kind="method",ye.computed=!1,ye.key=J,ye.static=!1,this.pushClassMethod(ie,ye,!1,!1,!1,!1),!0}else if(this.isClassProperty()){let ye=w;return ye.computed=!1,ye.key=J,ye.static=!1,ie.body.push(this.parseClassProperty(ye)),!0}return this.resetPreviousNodeTrailingComments(J),!1}parseClassMember(ie,w,J){let ye=this.isContextual(106);if(ye){if(this.parseClassMemberFromModifier(ie,w))return;if(this.eat(5)){this.parseClassStaticBlock(ie,w);return}}this.parseClassMemberWithIsStatic(ie,w,J,ye)}parseClassMemberWithIsStatic(ie,w,J,ye){let ut=w,zt=w,Zr=w,wr=w,Hn=w,Dn=ut,Wo=ut;if(w.static=ye,this.parsePropertyNamePrefixOperator(w),this.eat(55)){Dn.kind="method";let uA=this.match(139);if(this.parseClassElementName(Dn),uA){this.pushClassPrivateMethod(ie,zt,!0,!1);return}this.isNonstaticConstructor(ut)&&this.raise(U.ConstructorIsGenerator,ut.key),this.pushClassMethod(ie,ut,!0,!1,!1,!1);return}let Ic=!this.state.containsEsc&&gn(this.state.type),Jc=this.parseClassElementName(w),Mo=Ic?Jc.name:null,bu=this.isPrivateName(Jc),ap=this.state.startLoc;if(this.parsePostMemberNameModifiers(Wo),this.isClassMethod()){if(Dn.kind="method",bu){this.pushClassPrivateMethod(ie,zt,!1,!1);return}let uA=this.isNonstaticConstructor(ut),rI=!1;uA&&(ut.kind="constructor",J.hadConstructor&&!this.hasPlugin("typescript")&&this.raise(U.DuplicateConstructor,Jc),uA&&this.hasPlugin("typescript")&&w.override&&this.raise(U.OverrideOnConstructor,Jc),J.hadConstructor=!0,rI=J.hadSuperClass),this.pushClassMethod(ie,ut,!1,!1,uA,rI)}else if(this.isClassProperty())bu?this.pushClassPrivateProperty(ie,wr):this.pushClassProperty(ie,Zr);else if(Mo==="async"&&!this.isLineTerminator()){this.resetPreviousNodeTrailingComments(Jc);let uA=this.eat(55);Wo.optional&&this.unexpected(ap),Dn.kind="method";let rI=this.match(139);this.parseClassElementName(Dn),this.parsePostMemberNameModifiers(Wo),rI?this.pushClassPrivateMethod(ie,zt,uA,!0):(this.isNonstaticConstructor(ut)&&this.raise(U.ConstructorIsAsync,ut.key),this.pushClassMethod(ie,ut,uA,!0,!1,!1))}else if((Mo==="get"||Mo==="set")&&!(this.match(55)&&this.isLineTerminator())){this.resetPreviousNodeTrailingComments(Jc),Dn.kind=Mo;let uA=this.match(139);this.parseClassElementName(ut),uA?this.pushClassPrivateMethod(ie,zt,!1,!1):(this.isNonstaticConstructor(ut)&&this.raise(U.ConstructorIsAccessor,ut.key),this.pushClassMethod(ie,ut,!1,!1,!1,!1)),this.checkGetterSetterParams(ut)}else if(Mo==="accessor"&&!this.isLineTerminator()){this.expectPlugin("decoratorAutoAccessors"),this.resetPreviousNodeTrailingComments(Jc);let uA=this.match(139);this.parseClassElementName(Zr),this.pushClassAccessorProperty(ie,Hn,uA)}else this.isLineTerminator()?bu?this.pushClassPrivateProperty(ie,wr):this.pushClassProperty(ie,Zr):this.unexpected()}parseClassElementName(ie){let{type:w,value:J}=this.state;if((w===132||w===134)&&ie.static&&J==="prototype"&&this.raise(U.StaticPrototype,this.state.startLoc),w===139){J==="constructor"&&this.raise(U.ConstructorClassPrivateField,this.state.startLoc);let ye=this.parsePrivateName();return ie.key=ye,ye}return this.parsePropertyName(ie),ie.key}parseClassStaticBlock(ie,w){var J;this.scope.enter(208);let ye=this.state.labels;this.state.labels=[],this.prodParam.enter(0);let ut=w.body=[];this.parseBlockOrModuleBlockBody(ut,void 0,!1,8),this.prodParam.exit(),this.scope.exit(),this.state.labels=ye,ie.body.push(this.finishNode(w,"StaticBlock")),(J=w.decorators)!=null&&J.length&&this.raise(U.DecoratorStaticBlock,w)}pushClassProperty(ie,w){!w.computed&&this.nameIsConstructor(w.key)&&this.raise(U.ConstructorClassField,w.key),ie.body.push(this.parseClassProperty(w))}pushClassPrivateProperty(ie,w){let J=this.parseClassPrivateProperty(w);ie.body.push(J),this.classScope.declarePrivateName(this.getPrivateNameSV(J.key),0,J.key.loc.start)}pushClassAccessorProperty(ie,w,J){!J&&!w.computed&&this.nameIsConstructor(w.key)&&this.raise(U.ConstructorClassField,w.key);let ye=this.parseClassAccessorProperty(w);ie.body.push(ye),J&&this.classScope.declarePrivateName(this.getPrivateNameSV(ye.key),0,ye.key.loc.start)}pushClassMethod(ie,w,J,ye,ut,zt){ie.body.push(this.parseMethod(w,J,ye,ut,zt,"ClassMethod",!0))}pushClassPrivateMethod(ie,w,J,ye){let ut=this.parseMethod(w,J,ye,!1,!1,"ClassPrivateMethod",!0);ie.body.push(ut);let zt=ut.kind==="get"?ut.static?6:2:ut.kind==="set"?ut.static?5:1:0;this.declareClassPrivateMethodInScope(ut,zt)}declareClassPrivateMethodInScope(ie,w){this.classScope.declarePrivateName(this.getPrivateNameSV(ie.key),w,ie.key.loc.start)}parsePostMemberNameModifiers(ie){}parseClassPrivateProperty(ie){return this.parseInitializer(ie),this.semicolon(),this.finishNode(ie,"ClassPrivateProperty")}parseClassProperty(ie){return this.parseInitializer(ie),this.semicolon(),this.finishNode(ie,"ClassProperty")}parseClassAccessorProperty(ie){return this.parseInitializer(ie),this.semicolon(),this.finishNode(ie,"ClassAccessorProperty")}parseInitializer(ie){this.scope.enter(80),this.expressionScope.enter(fI()),this.prodParam.enter(0),ie.value=this.eat(29)?this.parseMaybeAssignAllowIn():null,this.expressionScope.exit(),this.prodParam.exit(),this.scope.exit()}parseClassId(ie,w,J,ye=8331){if(gn(this.state.type))ie.id=this.parseIdentifier(),w&&this.declareNameFromIdentifier(ie.id,ye);else if(J||!w)ie.id=null;else throw this.raise(U.MissingClassName,this.state.startLoc)}parseClassSuper(ie){ie.superClass=this.eat(81)?this.parseExprSubscripts():null}parseExport(ie,w){let J=this.parseMaybeImportPhase(ie,!0),ye=this.maybeParseExportDefaultSpecifier(ie,J),ut=!ye||this.eat(12),zt=ut&&this.eatExportStar(ie),Zr=zt&&this.maybeParseExportNamespaceSpecifier(ie),wr=ut&&(!Zr||this.eat(12)),Hn=ye||zt;if(zt&&!Zr){if(ye&&this.unexpected(),w)throw this.raise(U.UnsupportedDecoratorExport,ie);return this.parseExportFrom(ie,!0),this.finishNode(ie,"ExportAllDeclaration")}let Dn=this.maybeParseExportNamedSpecifiers(ie);ye&&ut&&!zt&&!Dn&&this.unexpected(null,5),Zr&&wr&&this.unexpected(null,98);let Wo;if(Hn||Dn){if(Wo=!1,w)throw this.raise(U.UnsupportedDecoratorExport,ie);this.parseExportFrom(ie,Hn)}else Wo=this.maybeParseExportDeclaration(ie);if(Hn||Dn||Wo){var Ic;let Jc=ie;if(this.checkExport(Jc,!0,!1,!!Jc.source),((Ic=Jc.declaration)==null?void 0:Ic.type)==="ClassDeclaration")this.maybeTakeDecorators(w,Jc.declaration,Jc);else if(w)throw this.raise(U.UnsupportedDecoratorExport,ie);return this.finishNode(Jc,"ExportNamedDeclaration")}if(this.eat(65)){let Jc=ie,Mo=this.parseExportDefaultExpression();if(Jc.declaration=Mo,Mo.type==="ClassDeclaration")this.maybeTakeDecorators(w,Mo,Jc);else if(w)throw this.raise(U.UnsupportedDecoratorExport,ie);return this.checkExport(Jc,!0,!0),this.finishNode(Jc,"ExportDefaultDeclaration")}this.unexpected(null,5)}eatExportStar(ie){return this.eat(55)}maybeParseExportDefaultSpecifier(ie,w){if(w||this.isExportDefaultSpecifier()){this.expectPlugin("exportDefaultFrom",w?.loc.start);let J=w||this.parseIdentifier(!0),ye=this.startNodeAtNode(J);return ye.exported=J,ie.specifiers=[this.finishNode(ye,"ExportDefaultSpecifier")],!0}return!1}maybeParseExportNamespaceSpecifier(ie){if(this.isContextual(93)){var w,J;(J=(w=ie).specifiers)!=null||(w.specifiers=[]);let ye=this.startNodeAt(this.state.lastTokStartLoc);return this.next(),ye.exported=this.parseModuleExportName(),ie.specifiers.push(this.finishNode(ye,"ExportNamespaceSpecifier")),!0}return!1}maybeParseExportNamedSpecifiers(ie){if(this.match(5)){let w=ie;w.specifiers||(w.specifiers=[]);let J=w.exportKind==="type";return w.specifiers.push(...this.parseExportSpecifiers(J)),w.source=null,w.declaration=null,this.hasPlugin("importAssertions")&&(w.assertions=[]),!0}return!1}maybeParseExportDeclaration(ie){return this.shouldParseExportDeclaration()?(ie.specifiers=[],ie.source=null,this.hasPlugin("importAssertions")&&(ie.assertions=[]),ie.declaration=this.parseExportDeclaration(ie),!0):!1}isAsyncFunction(){if(!this.isContextual(95))return!1;let ie=this.nextTokenInLineStart();return this.isUnparsedContextual(ie,"function")}parseExportDefaultExpression(){let ie=this.startNode();if(this.match(68))return this.next(),this.parseFunction(ie,5);if(this.isAsyncFunction())return this.next(),this.next(),this.parseFunction(ie,13);if(this.match(80))return this.parseClass(ie,!0,!0);if(this.match(26))return this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(U.DecoratorBeforeExport,this.state.startLoc),this.parseClass(this.maybeTakeDecorators(this.parseDecorators(!1),this.startNode()),!0,!0);if(this.match(75)||this.match(74)||this.isLet())throw this.raise(U.UnsupportedDefaultExport,this.state.startLoc);let w=this.parseMaybeAssignAllowIn();return this.semicolon(),w}parseExportDeclaration(ie){return this.match(80)?this.parseClass(this.startNode(),!0,!1):this.parseStatementListItem()}isExportDefaultSpecifier(){let{type:ie}=this.state;if(gn(ie)){if(ie===95&&!this.state.containsEsc||ie===100)return!1;if((ie===130||ie===129)&&!this.state.containsEsc){let{type:ye}=this.lookahead();if(gn(ye)&&ye!==98||ye===5)return this.expectOnePlugin(["flow","typescript"]),!1}}else if(!this.match(65))return!1;let w=this.nextTokenStart(),J=this.isUnparsedContextual(w,"from");if(this.input.charCodeAt(w)===44||gn(this.state.type)&&J)return!0;if(this.match(65)&&J){let ye=this.input.charCodeAt(this.nextTokenStartSince(w+4));return ye===34||ye===39}return!1}parseExportFrom(ie,w){this.eatContextual(98)?(ie.source=this.parseImportSource(),this.checkExport(ie),this.maybeParseImportAttributes(ie),this.checkJSONModuleImport(ie)):w&&this.unexpected(),this.semicolon()}shouldParseExportDeclaration(){let{type:ie}=this.state;return ie===26&&(this.expectOnePlugin(["decorators","decorators-legacy"]),this.hasPlugin("decorators"))?(this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(U.DecoratorBeforeExport,this.state.startLoc),!0):this.isContextual(107)?(this.raise(U.UsingDeclarationExport,this.state.startLoc),!0):this.isContextual(96)&&this.startsAwaitUsing()?(this.raise(U.UsingDeclarationExport,this.state.startLoc),!0):ie===74||ie===75||ie===68||ie===80||this.isLet()||this.isAsyncFunction()}checkExport(ie,w,J,ye){if(w){var ut;if(J){if(this.checkDuplicateExports(ie,"default"),this.hasPlugin("exportDefaultFrom")){var zt;let Zr=ie.declaration;Zr.type==="Identifier"&&Zr.name==="from"&&Zr.end-Zr.start===4&&!((zt=Zr.extra)!=null&&zt.parenthesized)&&this.raise(U.ExportDefaultFromAsIdentifier,Zr)}}else if((ut=ie.specifiers)!=null&&ut.length)for(let Zr of ie.specifiers){let{exported:wr}=Zr,Hn=wr.type==="Identifier"?wr.name:wr.value;if(this.checkDuplicateExports(Zr,Hn),!ye&&Zr.local){let{local:Dn}=Zr;Dn.type!=="Identifier"?this.raise(U.ExportBindingIsString,Zr,{localName:Dn.value,exportName:Hn}):(this.checkReservedWord(Dn.name,Dn.loc.start,!0,!1),this.scope.checkLocalExport(Dn))}}else if(ie.declaration){let Zr=ie.declaration;if(Zr.type==="FunctionDeclaration"||Zr.type==="ClassDeclaration"){let{id:wr}=Zr;if(!wr)throw new Error("Assertion failure");this.checkDuplicateExports(ie,wr.name)}else if(Zr.type==="VariableDeclaration")for(let wr of Zr.declarations)this.checkDeclaration(wr.id)}}}checkDeclaration(ie){if(ie.type==="Identifier")this.checkDuplicateExports(ie,ie.name);else if(ie.type==="ObjectPattern")for(let w of ie.properties)this.checkDeclaration(w);else if(ie.type==="ArrayPattern")for(let w of ie.elements)w&&this.checkDeclaration(w);else ie.type==="ObjectProperty"?this.checkDeclaration(ie.value):ie.type==="RestElement"?this.checkDeclaration(ie.argument):ie.type==="AssignmentPattern"&&this.checkDeclaration(ie.left)}checkDuplicateExports(ie,w){this.exportedIdentifiers.has(w)&&(w==="default"?this.raise(U.DuplicateDefaultExport,ie):this.raise(U.DuplicateExport,ie,{exportName:w})),this.exportedIdentifiers.add(w)}parseExportSpecifiers(ie){let w=[],J=!0;for(this.expect(5);!this.eat(8);){if(J)J=!1;else if(this.expect(12),this.eat(8))break;let ye=this.isContextual(130),ut=this.match(134),zt=this.startNode();zt.local=this.parseModuleExportName(),w.push(this.parseExportSpecifier(zt,ut,ie,ye))}return w}parseExportSpecifier(ie,w,J,ye){return this.eatContextual(93)?ie.exported=this.parseModuleExportName():w?ie.exported=RC(ie.local):ie.exported||(ie.exported=ii(ie.local)),this.finishNode(ie,"ExportSpecifier")}parseModuleExportName(){if(this.match(134)){let ie=this.parseStringLiteral(this.state.value),w=gm.exec(ie.value);return w&&this.raise(U.ModuleExportNameHasLoneSurrogate,ie,{surrogateCharCode:w[0].charCodeAt(0)}),ie}return this.parseIdentifier(!0)}isJSONModuleImport(ie){return ie.assertions!=null?ie.assertions.some(({key:w,value:J})=>J.value==="json"&&(w.type==="Identifier"?w.name==="type":w.value==="type")):!1}checkImportReflection(ie){let{specifiers:w}=ie,J=w.length===1?w[0].type:null;if(ie.phase==="source")J!=="ImportDefaultSpecifier"&&this.raise(U.SourcePhaseImportRequiresDefault,w[0].loc.start);else if(ie.phase==="defer")J!=="ImportNamespaceSpecifier"&&this.raise(U.DeferImportRequiresNamespace,w[0].loc.start);else if(ie.module){var ye;J!=="ImportDefaultSpecifier"&&this.raise(U.ImportReflectionNotBinding,w[0].loc.start),((ye=ie.assertions)==null?void 0:ye.length)>0&&this.raise(U.ImportReflectionHasAssertion,w[0].loc.start)}}checkJSONModuleImport(ie){if(this.isJSONModuleImport(ie)&&ie.type!=="ExportAllDeclaration"){let{specifiers:w}=ie;if(w!=null){let J=w.find(ye=>{let ut;if(ye.type==="ExportSpecifier"?ut=ye.local:ye.type==="ImportSpecifier"&&(ut=ye.imported),ut!==void 0)return ut.type==="Identifier"?ut.name!=="default":ut.value!=="default"});J!==void 0&&this.raise(U.ImportJSONBindingNotDefault,J.loc.start)}}}isPotentialImportPhase(ie){return ie?!1:this.isContextual(105)||this.isContextual(97)||this.isContextual(127)}applyImportPhase(ie,w,J,ye){w||(J==="module"?(this.expectPlugin("importReflection",ye),ie.module=!0):this.hasPlugin("importReflection")&&(ie.module=!1),J==="source"?(this.expectPlugin("sourcePhaseImports",ye),ie.phase="source"):J==="defer"?(this.expectPlugin("deferredImportEvaluation",ye),ie.phase="defer"):this.hasPlugin("sourcePhaseImports")&&(ie.phase=null))}parseMaybeImportPhase(ie,w){if(!this.isPotentialImportPhase(w))return this.applyImportPhase(ie,w,null),null;let J=this.parseIdentifier(!0),{type:ye}=this.state;return(we(ye)?ye!==98||this.lookaheadCharCode()===102:ye!==12)?(this.resetPreviousIdentifierLeadingComments(J),this.applyImportPhase(ie,w,J.name,J.loc.start),null):(this.applyImportPhase(ie,w,null),J)}isPrecedingIdImportPhase(ie){let{type:w}=this.state;return gn(w)?w!==98||this.lookaheadCharCode()===102:w!==12}parseImport(ie){return this.match(134)?this.parseImportSourceAndAttributes(ie):this.parseImportSpecifiersAndAfter(ie,this.parseMaybeImportPhase(ie,!1))}parseImportSpecifiersAndAfter(ie,w){ie.specifiers=[];let J=!this.maybeParseDefaultImportSpecifier(ie,w)||this.eat(12),ye=J&&this.maybeParseStarImportSpecifier(ie);return J&&!ye&&this.parseNamedImportSpecifiers(ie),this.expectContextual(98),this.parseImportSourceAndAttributes(ie)}parseImportSourceAndAttributes(ie){var w;return(w=ie.specifiers)!=null||(ie.specifiers=[]),ie.source=this.parseImportSource(),this.maybeParseImportAttributes(ie),this.checkImportReflection(ie),this.checkJSONModuleImport(ie),this.semicolon(),this.finishNode(ie,"ImportDeclaration")}parseImportSource(){return this.match(134)||this.unexpected(),this.parseExprAtom()}parseImportSpecifierLocal(ie,w,J){w.local=this.parseIdentifier(),ie.specifiers.push(this.finishImportSpecifier(w,J))}finishImportSpecifier(ie,w,J=8201){return this.checkLVal(ie.local,{type:w},J),this.finishNode(ie,w)}parseImportAttributes(){this.expect(5);let ie=[],w=new Set;do{if(this.match(8))break;let J=this.startNode(),ye=this.state.value;if(w.has(ye)&&this.raise(U.ModuleAttributesWithDuplicateKeys,this.state.startLoc,{key:ye}),w.add(ye),this.match(134)?J.key=this.parseStringLiteral(ye):J.key=this.parseIdentifier(!0),this.expect(14),!this.match(134))throw this.raise(U.ModuleAttributeInvalidValue,this.state.startLoc);J.value=this.parseStringLiteral(this.state.value),ie.push(this.finishNode(J,"ImportAttribute"))}while(this.eat(12));return this.expect(8),ie}parseModuleAttributes(){let ie=[],w=new Set;do{let J=this.startNode();if(J.key=this.parseIdentifier(!0),J.key.name!=="type"&&this.raise(U.ModuleAttributeDifferentFromType,J.key),w.has(J.key.name)&&this.raise(U.ModuleAttributesWithDuplicateKeys,J.key,{key:J.key.name}),w.add(J.key.name),this.expect(14),!this.match(134))throw this.raise(U.ModuleAttributeInvalidValue,this.state.startLoc);J.value=this.parseStringLiteral(this.state.value),ie.push(this.finishNode(J,"ImportAttribute"))}while(this.eat(12));return ie}maybeParseImportAttributes(ie){let w;var J=!1;if(this.match(76)){if(this.hasPrecedingLineBreak()&&this.lookaheadCharCode()===40)return;this.next(),this.hasPlugin("moduleAttributes")?w=this.parseModuleAttributes():w=this.parseImportAttributes(),J=!0}else this.isContextual(94)&&!this.hasPrecedingLineBreak()?(!this.hasPlugin("deprecatedImportAssert")&&!this.hasPlugin("importAssertions")&&this.raise(U.ImportAttributesUseAssert,this.state.startLoc),this.hasPlugin("importAssertions")||this.addExtra(ie,"deprecatedAssertSyntax",!0),this.next(),w=this.parseImportAttributes()):w=[];!J&&this.hasPlugin("importAssertions")?ie.assertions=w:ie.attributes=w}maybeParseDefaultImportSpecifier(ie,w){if(w){let J=this.startNodeAtNode(w);return J.local=w,ie.specifiers.push(this.finishImportSpecifier(J,"ImportDefaultSpecifier")),!0}else if(we(this.state.type))return this.parseImportSpecifierLocal(ie,this.startNode(),"ImportDefaultSpecifier"),!0;return!1}maybeParseStarImportSpecifier(ie){if(this.match(55)){let w=this.startNode();return this.next(),this.expectContextual(93),this.parseImportSpecifierLocal(ie,w,"ImportNamespaceSpecifier"),!0}return!1}parseNamedImportSpecifiers(ie){let w=!0;for(this.expect(5);!this.eat(8);){if(w)w=!1;else{if(this.eat(14))throw this.raise(U.DestructureNamedImport,this.state.startLoc);if(this.expect(12),this.eat(8))break}let J=this.startNode(),ye=this.match(134),ut=this.isContextual(130);J.imported=this.parseModuleExportName();let zt=this.parseImportSpecifier(J,ye,ie.importKind==="type"||ie.importKind==="typeof",ut,void 0);ie.specifiers.push(zt)}}parseImportSpecifier(ie,w,J,ye,ut){if(this.eatContextual(93))ie.local=this.parseIdentifier();else{let{imported:zt}=ie;if(w)throw this.raise(U.ImportBindingIsString,ie,{importName:zt.value});this.checkReservedWord(zt.name,ie.loc.start,!0,!0),ie.local||(ie.local=ii(zt))}return this.finishImportSpecifier(ie,"ImportSpecifier",ut)}isThisParam(ie){return ie.type==="Identifier"&&ie.name==="this"}},Nb=class extends Am{constructor(ie,w,J){ie=ae(ie),super(ie,w),this.options=ie,this.initializeScopes(),this.plugins=J,this.filename=ie.sourceFilename,this.startIndex=ie.startIndex;let ye=0;ie.allowAwaitOutsideFunction&&(ye|=1),ie.allowReturnOutsideFunction&&(ye|=2),ie.allowImportExportEverywhere&&(ye|=8),ie.allowSuperOutsideMethod&&(ye|=16),ie.allowUndeclaredExports&&(ye|=32),ie.allowNewTargetOutsideFunction&&(ye|=4),ie.ranges&&(ye|=64),ie.tokens&&(ye|=128),ie.createImportExpressions&&(ye|=256),ie.createParenthesizedExpressions&&(ye|=512),ie.errorRecovery&&(ye|=1024),ie.attachComment&&(ye|=2048),ie.annexB&&(ye|=4096),this.optionFlags=ye}getScopeHandler(){return xg}parse(){this.enterInitialScopes();let ie=this.startNode(),w=this.startNode();return this.nextToken(),ie.errors=null,this.parseTopLevel(ie,w),ie.errors=this.state.errors,ie.comments.length=this.state.commentsLen,ie}};function Dm(ie,w){var J;if(((J=w)==null?void 0:J.sourceType)==="unambiguous"){w=Object.assign({},w);try{w.sourceType="module";let ye=Lf(w,ie),ut=ye.parse();if(ye.sawUnambiguousESM)return ut;if(ye.ambiguousScriptDifferentAst)try{return w.sourceType="script",Lf(w,ie).parse()}catch{}else ut.program.sourceType="script";return ut}catch(ye){try{return w.sourceType="script",Lf(w,ie).parse()}catch{}throw ye}}else return Lf(w,ie).parse()}function OI(ie,w){let J=Lf(w,ie);return J.options.strictMode&&(J.state.strict=!0),J.getExpression()}function Bf(ie){let w={};for(let J of Object.keys(ie))w[J]=nn(ie[J]);return w}var tI=Bf(tr);function Lf(ie,w){let J=Nb,ye=new Map;if(ie!=null&&ie.plugins){for(let ut of ie.plugins){let zt,Zr;typeof ut=="string"?zt=ut:[zt,Zr]=ut,ye.has(zt)||ye.set(zt,Zr||{})}D0(ye),J=gy(ye)}return new J(ie,w,ye)}var yE=new Map;function gy(ie){let w=[];for(let ut of uy)ie.has(ut)&&w.push(ut);let J=w.join("|"),ye=yE.get(J);if(!ye){ye=Nb;for(let ut of w)ye=yh[ut](ye);yE.set(J,ye)}return ye}e.parse=Dm,e.parseExpression=OI,e.tokTypes=tI}),h$n={};j8o(h$n,{parsers:()=>Tve});var s$n=I$n(C$n(),1);function WIt(e){return(t,r,s)=>{let a=!!(s!=null&&s.backwards);if(r===!1)return!1;let{length:o}=t,g=r;for(;g>=0&&g{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},qqn=K8o;function j8o(e){return Array.isArray(e)&&e.length>0}var Rur=j8o;function xU(e){var t,r,s;let a=((t=e.range)==null?void 0:t[0])??e.start,o=(s=((r=e.declaration)==null?void 0:r.decorators)??e.decorators)==null?void 0:s[0];return o?Math.min(xU(o),a):a}function Ppe(e){var t;return((t=e.range)==null?void 0:t[1])??e.end}function z8o(e){let t=new Set(e);return r=>t.has(r?.type)}var q8o=z8o,$8o=q8o(["Block","CommentBlock","MultiLine"]),Sur=$8o;function e6o(e){let t=`*${e.value}*`.split(` -`);return t.length>1&&t.every(r=>r.trimStart()[0]==="*")}var $qn=e6o;function t6o(e){return Sur(e)&&e.value[0]==="*"&&/@(?:type|satisfies)\b/u.test(e.value)}var r6o=t6o,_Qe=null;function bQe(e){if(_Qe!==null&&typeof _Qe.property){let t=_Qe;return _Qe=bQe.prototype=null,t}return _Qe=bQe.prototype=e??Object.create(null),new bQe}var n6o=10;for(let e=0;e<=n6o;e++)bQe();function i6o(e){return bQe(e)}function s6o(e,t="type"){i6o(e);function r(s){let a=s[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:s});return o}return r}var o6o=s6o,a6o={ArrayExpression:["elements"],AssignmentExpression:["left","right"],BinaryExpression:["left","right"],InterpreterDirective:[],Directive:["value"],DirectiveLiteral:[],BlockStatement:["directives","body"],BreakStatement:["label"],CallExpression:["callee","arguments","typeParameters","typeArguments"],CatchClause:["param","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExpressionStatement:["expression"],File:["program"],ForInStatement:["left","right","body"],ForStatement:["init","test","update","body"],FunctionDeclaration:["id","typeParameters","params","predicate","returnType","body"],FunctionExpression:["id","typeParameters","params","returnType","body"],Identifier:["typeAnnotation","decorators"],IfStatement:["test","consequent","alternate"],LabeledStatement:["label","body"],StringLiteral:[],NumericLiteral:[],NullLiteral:[],BooleanLiteral:[],RegExpLiteral:[],LogicalExpression:["left","right"],MemberExpression:["object","property"],NewExpression:["callee","arguments","typeParameters","typeArguments"],Program:["directives","body"],ObjectExpression:["properties"],ObjectMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectProperty:["key","value","decorators"],RestElement:["argument","typeAnnotation","decorators"],ReturnStatement:["argument"],SequenceExpression:["expressions"],ParenthesizedExpression:["expression"],SwitchCase:["test","consequent"],SwitchStatement:["discriminant","cases"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],AssignmentPattern:["left","right","decorators","typeAnnotation"],ArrayPattern:["elements","typeAnnotation","decorators"],ArrowFunctionExpression:["typeParameters","params","predicate","returnType","body"],ClassBody:["body"],ClassExpression:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ClassDeclaration:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ExportAllDeclaration:["source","attributes","exported"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source","attributes"],ExportSpecifier:["local","exported"],ForOfStatement:["left","right","body"],ImportDeclaration:["specifiers","source","attributes"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],ImportExpression:["source","options"],MetaProperty:["meta","property"],ClassMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectPattern:["properties","typeAnnotation","decorators"],SpreadElement:["argument"],Super:[],TaggedTemplateExpression:["tag","typeParameters","quasi","typeArguments"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],YieldExpression:["argument"],AwaitExpression:["argument"],BigIntLiteral:[],ExportNamespaceSpecifier:["exported"],OptionalMemberExpression:["object","property"],OptionalCallExpression:["callee","arguments","typeParameters","typeArguments"],ClassProperty:["decorators","variance","key","typeAnnotation","value"],ClassAccessorProperty:["decorators","key","typeAnnotation","value"],ClassPrivateProperty:["decorators","variance","key","typeAnnotation","value"],ClassPrivateMethod:["decorators","key","typeParameters","params","returnType","body"],PrivateName:["id"],StaticBlock:["body"],AnyTypeAnnotation:[],ArrayTypeAnnotation:["elementType"],BooleanTypeAnnotation:[],BooleanLiteralTypeAnnotation:[],NullLiteralTypeAnnotation:[],ClassImplements:["id","typeParameters"],DeclareClass:["id","typeParameters","extends","mixins","implements","body"],DeclareFunction:["id","predicate"],DeclareInterface:["id","typeParameters","extends","body"],DeclareModule:["id","body"],DeclareModuleExports:["typeAnnotation"],DeclareTypeAlias:["id","typeParameters","right"],DeclareOpaqueType:["id","typeParameters","supertype"],DeclareVariable:["id"],DeclareExportDeclaration:["declaration","specifiers","source","attributes"],DeclareExportAllDeclaration:["source","attributes"],DeclaredPredicate:["value"],ExistsTypeAnnotation:[],FunctionTypeAnnotation:["typeParameters","this","params","rest","returnType"],FunctionTypeParam:["name","typeAnnotation"],GenericTypeAnnotation:["id","typeParameters"],InferredPredicate:[],InterfaceExtends:["id","typeParameters"],InterfaceDeclaration:["id","typeParameters","extends","body"],InterfaceTypeAnnotation:["extends","body"],IntersectionTypeAnnotation:["types"],MixedTypeAnnotation:[],EmptyTypeAnnotation:[],NullableTypeAnnotation:["typeAnnotation"],NumberLiteralTypeAnnotation:[],NumberTypeAnnotation:[],ObjectTypeAnnotation:["properties","indexers","callProperties","internalSlots"],ObjectTypeInternalSlot:["id","value"],ObjectTypeCallProperty:["value"],ObjectTypeIndexer:["variance","id","key","value"],ObjectTypeProperty:["key","value","variance"],ObjectTypeSpreadProperty:["argument"],OpaqueType:["id","typeParameters","supertype","impltype"],QualifiedTypeIdentifier:["qualification","id"],StringLiteralTypeAnnotation:[],StringTypeAnnotation:[],SymbolTypeAnnotation:[],ThisTypeAnnotation:[],TupleTypeAnnotation:["types","elementTypes"],TypeofTypeAnnotation:["argument","typeArguments"],TypeAlias:["id","typeParameters","right"],TypeAnnotation:["typeAnnotation"],TypeCastExpression:["expression","typeAnnotation"],TypeParameter:["bound","default","variance"],TypeParameterDeclaration:["params"],TypeParameterInstantiation:["params"],UnionTypeAnnotation:["types"],Variance:[],VoidTypeAnnotation:[],EnumDeclaration:["id","body"],EnumBooleanBody:["members"],EnumNumberBody:["members"],EnumStringBody:["members"],EnumSymbolBody:["members"],EnumBooleanMember:["id","init"],EnumNumberMember:["id","init"],EnumStringMember:["id","init"],EnumDefaultedMember:["id"],IndexedAccessType:["objectType","indexType"],OptionalIndexedAccessType:["objectType","indexType"],JSXAttribute:["name","value"],JSXClosingElement:["name"],JSXElement:["openingElement","children","closingElement"],JSXEmptyExpression:[],JSXExpressionContainer:["expression"],JSXSpreadChild:["expression"],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],JSXOpeningElement:["name","typeParameters","typeArguments","attributes"],JSXSpreadAttribute:["argument"],JSXText:[],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningFragment:[],JSXClosingFragment:[],Noop:[],Placeholder:[],V8IntrinsicIdentifier:[],ArgumentPlaceholder:[],BindExpression:["object","callee"],ImportAttribute:["key","value"],Decorator:["expression"],DoExpression:["body"],ExportDefaultSpecifier:["exported"],RecordExpression:["properties"],TupleExpression:["elements"],ModuleExpression:["body"],TopicReference:[],PipelineTopicExpression:["expression"],PipelineBareFunction:["callee"],PipelinePrimaryTopicReference:[],TSParameterProperty:["parameter","decorators"],TSDeclareFunction:["id","typeParameters","params","returnType","body"],TSDeclareMethod:["decorators","key","typeParameters","params","returnType"],TSQualifiedName:["left","right"],TSCallSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSPropertySignature:["key","typeAnnotation"],TSMethodSignature:["key","typeParameters","parameters","typeAnnotation","params","returnType"],TSIndexSignature:["parameters","typeAnnotation"],TSAnyKeyword:[],TSBooleanKeyword:[],TSBigIntKeyword:[],TSIntrinsicKeyword:[],TSNeverKeyword:[],TSNullKeyword:[],TSNumberKeyword:[],TSObjectKeyword:[],TSStringKeyword:[],TSSymbolKeyword:[],TSUndefinedKeyword:[],TSUnknownKeyword:[],TSVoidKeyword:[],TSThisType:[],TSFunctionType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructorType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSTypeReference:["typeName","typeParameters","typeArguments"],TSTypePredicate:["parameterName","typeAnnotation"],TSTypeQuery:["exprName","typeParameters","typeArguments"],TSTypeLiteral:["members"],TSArrayType:["elementType"],TSTupleType:["elementTypes"],TSOptionalType:["typeAnnotation"],TSRestType:["typeAnnotation"],TSNamedTupleMember:["label","elementType"],TSUnionType:["types"],TSIntersectionType:["types"],TSConditionalType:["checkType","extendsType","trueType","falseType"],TSInferType:["typeParameter"],TSParenthesizedType:["typeAnnotation"],TSTypeOperator:["typeAnnotation"],TSIndexedAccessType:["objectType","indexType"],TSMappedType:["typeParameter","nameType","typeAnnotation"],TSTemplateLiteralType:["quasis","types"],TSLiteralType:["literal"],TSExpressionWithTypeArguments:["expression","typeParameters"],TSInterfaceDeclaration:["id","typeParameters","extends","body"],TSInterfaceBody:["body"],TSTypeAliasDeclaration:["id","typeParameters","typeAnnotation"],TSInstantiationExpression:["expression","typeParameters","typeArguments"],TSAsExpression:["expression","typeAnnotation"],TSSatisfiesExpression:["expression","typeAnnotation"],TSTypeAssertion:["typeAnnotation","expression"],TSEnumBody:["members"],TSEnumDeclaration:["id","members"],TSEnumMember:["id","initializer"],TSModuleDeclaration:["id","body"],TSModuleBlock:["body"],TSImportType:["argument","options","qualifier","typeParameters","typeArguments"],TSImportEqualsDeclaration:["id","moduleReference"],TSExternalModuleReference:["expression"],TSNonNullExpression:["expression"],TSExportAssignment:["expression"],TSNamespaceExportDeclaration:["id"],TSTypeAnnotation:["typeAnnotation"],TSTypeParameterInstantiation:["params"],TSTypeParameterDeclaration:["params"],TSTypeParameter:["constraint","default","name"],ChainExpression:["expression"],ExperimentalRestProperty:["argument"],ExperimentalSpreadProperty:["argument"],Literal:[],MethodDefinition:["decorators","key","value"],PrivateIdentifier:[],Property:["key","value"],PropertyDefinition:["decorators","key","typeAnnotation","value","variance"],AccessorProperty:["decorators","key","typeAnnotation","value"],TSAbstractAccessorProperty:["decorators","key","typeAnnotation"],TSAbstractKeyword:[],TSAbstractMethodDefinition:["key","value"],TSAbstractPropertyDefinition:["decorators","key","typeAnnotation"],TSAsyncKeyword:[],TSClassImplements:["expression","typeArguments","typeParameters"],TSDeclareKeyword:[],TSEmptyBodyFunctionExpression:["id","typeParameters","params","returnType"],TSExportKeyword:[],TSInterfaceHeritage:["expression","typeArguments","typeParameters"],TSPrivateKeyword:[],TSProtectedKeyword:[],TSPublicKeyword:[],TSReadonlyKeyword:[],TSStaticKeyword:[],AsConstExpression:["expression"],AsExpression:["expression","typeAnnotation"],BigIntLiteralTypeAnnotation:[],BigIntTypeAnnotation:[],ComponentDeclaration:["id","params","body","typeParameters","rendersType"],ComponentParameter:["name","local"],ComponentTypeAnnotation:["params","rest","typeParameters","rendersType"],ComponentTypeParameter:["name","typeAnnotation"],ConditionalTypeAnnotation:["checkType","extendsType","trueType","falseType"],DeclareComponent:["id","params","rest","typeParameters","rendersType"],DeclareEnum:["id","body"],DeclareHook:["id"],DeclareNamespace:["id","body"],EnumBigIntBody:["members"],EnumBigIntMember:["id","init"],HookDeclaration:["id","params","body","typeParameters","returnType"],HookTypeAnnotation:["params","returnType","rest","typeParameters"],InferTypeAnnotation:["typeParameter"],KeyofTypeAnnotation:["argument"],ObjectTypeMappedTypeProperty:["keyTparam","propType","sourceType","variance"],QualifiedTypeofIdentifier:["qualification","id"],TupleTypeLabeledElement:["label","elementType","variance"],TupleTypeSpreadElement:["label","typeAnnotation"],TypeOperator:["typeAnnotation"],TypePredicate:["parameterName","typeAnnotation","asserts"],NGRoot:["node"],NGPipeExpression:["left","right","arguments"],NGChainedExpression:["expressions"],NGEmptyExpression:[],NGMicrosyntax:["body"],NGMicrosyntaxKey:[],NGMicrosyntaxExpression:["expression","alias"],NGMicrosyntaxKeyedExpression:["key","expression"],NGMicrosyntaxLet:["key","value"],NGMicrosyntaxAs:["key","alias"],JsExpressionRoot:["node"],JsonRoot:["node"],TSJSDocAllType:[],TSJSDocUnknownType:[],TSJSDocNullableType:["typeAnnotation"],TSJSDocNonNullableType:["typeAnnotation"],NeverTypeAnnotation:[],UndefinedTypeAnnotation:[],UnknownTypeAnnotation:[],SatisfiesExpression:["expression","typeAnnotation"]},c6o=o6o(a6o),l6o=c6o;function wur(e,t){if(!(e!==null&&typeof e=="object"))return e;if(Array.isArray(e)){for(let s=0;s{var g;(g=o.leadingComments)!=null&&g.some(r6o)&&a.add(xU(o))}),e=Bur(e,o=>{if(o.type==="ParenthesizedExpression"){let{expression:g}=o;if(g.type==="TypeCastExpression")return g.range=[...o.range],g;let p=xU(o);if(!a.has(p))return g.extra={...g.extra,parenthesized:!0},g}})}if(e=Bur(e,a=>{switch(a.type){case"LogicalExpression":if(d$n(a))return Tur(a);break;case"VariableDeclaration":{let o=qqn(!1,a.declarations,-1);o!=null&&o.init&&s[Ppe(o)]!==";"&&(a.range=[xU(a),Ppe(o)]);break}case"TSParenthesizedType":return a.typeAnnotation;case"TSTypeParameter":if(typeof a.name=="string"){let o=xU(a);a.name={type:"Identifier",name:a.name,range:[o,o+a.name.length]}}break;case"TopicReference":e.extra={...e.extra,__isUsingHackPipeline:!0};break;case"TSUnionType":case"TSIntersectionType":if(a.types.length===1)return a.types[0];break}}),Rur(e.comments)){let a=qqn(!1,e.comments,-1);for(let o=e.comments.length-2;o>=0;o--){let g=e.comments[o];Ppe(g)===xU(a)&&Sur(g)&&Sur(a)&&$qn(g)&&$qn(a)&&(e.comments.splice(o+1,1),g.value+="*//*"+a.value,g.range=[xU(g),Ppe(a)]),a=g}}return e.type==="Program"&&(e.range=[0,s.length]),e}function d$n(e){return e.type==="LogicalExpression"&&e.right.type==="LogicalExpression"&&e.operator===e.right.operator}function Tur(e){return d$n(e)?Tur({type:"LogicalExpression",operator:e.operator,left:Tur({type:"LogicalExpression",operator:e.operator,left:e.left,right:e.right.left,range:[xU(e.left),Ppe(e.right.left)]}),right:e.right.right,range:[xU(e),Ppe(e)]}):e}var g6o=u6o;function A6o(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var p$n=A6o;function d6o(e){let{message:t,loc:{line:r,column:s},reasonCode:a}=e,o=e;(a==="MissingPlugin"||a==="MissingOneOfPlugins")&&(t="Unexpected token.",o=void 0);let g=` (${r}:${s})`;return t.endsWith(g)&&(t=t.slice(0,-g.length)),p$n(t,{loc:{start:{line:r,column:s+1}},cause:o})}var f$n=d6o,p6o=(e,t,r,s)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,s):r.global?t.replace(r,s):t.split(r).join(s)},FIt=p6o,f6o=/\*\/$/,I6o=/^\/\*\*?/,C6o=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,m6o=/(^|\s+)\/\/([^\n\r]*)/g,e$n=/^(\r?\n)+/,h6o=/(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g,t$n=/(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g,_6o=/(\r?\n|^) *\* ?/g,y6o=[];function b6o(e){let t=e.match(C6o);return t?t[0].trimStart():""}function E6o(e){let t=` -`;e=FIt(!1,e.replace(I6o,"").replace(f6o,""),_6o,"$1");let r="";for(;r!==e;)r=e,e=FIt(!1,e,h6o,`${t}$1 $2${t}`);e=e.replace(e$n,"").trimEnd();let s=Object.create(null),a=FIt(!1,e,t$n,"").replace(e$n,"").trimEnd(),o;for(;o=t$n.exec(e);){let g=FIt(!1,o[2],m6o,"");if(typeof s[o[1]]=="string"||Array.isArray(s[o[1]])){let p=s[o[1]];s[o[1]]=[...y6o,...Array.isArray(p)?p:[p],g]}else s[o[1]]=g}return{comments:a,pragmas:s}}function B6o(e){let t=A$n(e);t&&(e=e.slice(t.length+1));let r=b6o(e),{pragmas:s,comments:a}=E6o(r);return{shebang:t,text:e,pragmas:s,comments:a}}function v6o(e){let{pragmas:t}=B6o(e);return Object.prototype.hasOwnProperty.call(t,"prettier")||Object.prototype.hasOwnProperty.call(t,"format")}function S6o(e){return e=typeof e=="function"?{parse:e}:e,{astFormat:"estree",hasPragma:v6o,locStart:xU,locEnd:Ppe,...e}}var yQe=S6o;function w6o(e){let{filepath:t}=e;if(t){if(t=t.toLowerCase(),t.endsWith(".cjs")||t.endsWith(".cts"))return"script";if(t.endsWith(".mjs")||t.endsWith(".mts"))return"module"}}var T6o=w6o;function N6o(e,t){let{type:r="JsExpressionRoot",rootMarker:s,text:a}=t,{tokens:o,comments:g}=e;return delete e.tokens,delete e.comments,{tokens:o,comments:g,type:r,node:e,range:[0,a.length],rootMarker:s}}var I$n=N6o,Bve=e=>yQe(G6o(e)),R6o={sourceType:"module",allowImportExportEverywhere:!0,allowReturnOutsideFunction:!0,allowNewTargetOutsideFunction:!0,allowSuperOutsideMethod:!0,allowUndeclaredExports:!0,errorRecovery:!0,createParenthesizedExpressions:!0,createImportExpressions:!0,plugins:["doExpressions","exportDefaultFrom","functionBind","functionSent","throwExpressions","partialApplication","decorators","moduleBlocks","asyncDoExpressions","destructuringPrivate","decoratorAutoAccessors","explicitResourceManagement","sourcePhaseImports","deferredImportEvaluation",["optionalChainingAssign",{version:"2023-07"}],"recordAndTuple"],tokens:!0,ranges:!0},r$n="v8intrinsic",n$n=[["pipelineOperator",{proposal:"hack",topicToken:"%"}],["pipelineOperator",{proposal:"fsharp"}]],wz=(e,t=R6o)=>({...t,plugins:[...t.plugins,...e]}),D6o=/@(?:no)?flow\b/u;function x6o(e,t){var r;if((r=t.filepath)!=null&&r.endsWith(".js.flow"))return!0;let s=A$n(e);s&&(e=e.slice(s.length));let a=H8o(e,0);return a!==!1&&(e=e.slice(0,a)),D6o.test(e)}function k6o(e,t,r){let s=e(t,r),a=s.errors.find(o=>!F6o.has(o.reasonCode));if(a)throw a;return s}function G6o({isExpression:e=!1,optionsCombinations:t}){return(r,s={})=>{if((s.parser==="babel"||s.parser==="__babel_estree")&&x6o(r,s))return s.parser="babel-flow",m$n.parse(r,s);let a=t;(s.__babelSourceType??T6o(s))==="script"&&(a=a.map(f=>({...f,sourceType:"script"})));let o=/%[A-Z]/u.test(r);r.includes("|>")?a=(o?[...n$n,r$n]:n$n).flatMap(f=>a.map(m=>wz([f],m))):o&&(a=a.map(f=>wz([r$n],f)));let g=e?zqn.parseExpression:zqn.parse,p;try{p=J8o(a.map(f=>()=>k6o(g,r,f)))}catch({errors:[f]}){throw f$n(f)}return e&&(p=I$n(p,{text:r,rootMarker:s.rootMarker})),g6o(p,{parser:"babel",text:r})}}var F6o=new Set(["StrictNumericEscape","StrictWith","StrictOctalLiteral","StrictDelete","StrictEvalArguments","StrictEvalArgumentsBinding","StrictFunction","ForInOfLoopInitializer","EmptyTypeArguments","EmptyTypeParameters","ConstructorHasTypeParameters","UnsupportedParameterPropertyKind","DecoratorExportClass","ParamDupe","InvalidDecimal","RestTrailingComma","UnsupportedParameterDecorator","UnterminatedJsxContent","UnexpectedReservedWord","ModuleAttributesWithDuplicateKeys","LineTerminatorBeforeArrow","InvalidEscapeSequenceTemplate","NonAbstractClassHasAbstractMethod","OptionalTypeBeforeRequired","PatternIsOptional","OptionalBindingPattern","DeclareClassFieldHasInitializer","TypeImportCannotSpecifyDefaultAndNamed","ConstructorClassField","VarRedeclaration","InvalidPrivateFieldResolution","DuplicateExport","ImportAttributesUseAssert"]),C$n=[wz(["jsx"])],i$n=Bve({optionsCombinations:C$n}),s$n=Bve({optionsCombinations:[wz(["jsx","typescript"]),wz(["typescript"])]}),o$n=Bve({isExpression:!0,optionsCombinations:[wz(["jsx"])]}),a$n=Bve({isExpression:!0,optionsCombinations:[wz(["typescript"])]}),m$n=Bve({optionsCombinations:[wz(["jsx",["flow",{all:!0}],"flowComments"])]}),Z6o=Bve({optionsCombinations:C$n.map(e=>wz(["estree"],e))}),L6o={babel:i$n,"babel-flow":m$n,"babel-ts":s$n,__js_expression:o$n,__ts_expression:a$n,__vue_expression:o$n,__vue_ts_expression:a$n,__vue_event_binding:i$n,__vue_ts_event_binding:s$n,__babel_estree:Z6o},V6o=c$n(l$n(),1);function h$n(e={}){let{allowComments:t=!0}=e;return function(r){let s;try{s=(0,V6o.parseExpression)(r,{tokens:!0,ranges:!0,attachComment:!1})}catch(a){throw f$n(a)}if(!t&&Rur(s.comments))throw use(s.comments[0],"Comment");return Eve(s),I$n(s,{type:"JsonRoot",text:r})}}function use(e,t){let[r,s]=[e.loc.start,e.loc.end].map(({line:a,column:o})=>({line:a,column:o+1}));return p$n(`${t} is not allowed in JSON.`,{loc:{start:r,end:s}})}function Eve(e){switch(e.type){case"ArrayExpression":for(let t of e.elements)t!==null&&Eve(t);return;case"ObjectExpression":for(let t of e.properties)Eve(t);return;case"ObjectProperty":if(e.computed)throw use(e.key,"Computed key");if(e.shorthand)throw use(e.key,"Shorthand property");e.key.type!=="Identifier"&&Eve(e.key),Eve(e.value);return;case"UnaryExpression":{let{operator:t,argument:r}=e;if(t!=="+"&&t!=="-")throw use(e,`Operator '${e.operator}'`);if(r.type==="NumericLiteral"||r.type==="Identifier"&&(r.name==="Infinity"||r.name==="NaN"))return;throw use(r,`Operator '${t}' before '${r.type}'`)}case"Identifier":if(e.name!=="Infinity"&&e.name!=="NaN"&&e.name!=="undefined")throw use(e,`Identifier '${e.name}'`);return;case"TemplateLiteral":if(Rur(e.expressions))throw use(e.expressions[0],"'TemplateLiteral' with expression");for(let t of e.quasis)Eve(t);return;case"NullLiteral":case"BooleanLiteral":case"NumericLiteral":case"StringLiteral":case"TemplateElement":return;default:throw use(e,`'${e.type}'`)}}var vur=h$n(),W6o={json:yQe({parse:vur,hasPragma(){return!0}}),json5:yQe(vur),jsonc:yQe(vur),"json-stringify":yQe({parse:h$n({allowComments:!1}),astFormat:"estree-json"})},P6o=W6o,vve={...L6o,...P6o},O6o=g$n;var ZQe={};jf(ZQe,{default:()=>zea,languages:()=>nri,options:()=>tri,printers:()=>rri});var M6o=Object.defineProperty,H$n=e=>{throw TypeError(e)},jIt=(e,t)=>{for(var r in t)M6o(e,r,{get:t[r],enumerable:!0})},X$n=(e,t,r)=>t.has(e)||H$n("Cannot "+r),gse=(e,t,r)=>(X$n(e,t,"read from private field"),r?r.call(e):t.get(e)),Q6o=(e,t,r)=>t.has(e)?H$n("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),Y6o=(e,t,r,s)=>(X$n(e,t,"write to private field"),s?s.call(e,r):t.set(e,r),r),J$n={};jIt(J$n,{languages:()=>nri,options:()=>tri,printers:()=>rri});var H6o=[{linguistLanguageId:183,name:"JavaScript",type:"programming",tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"text/javascript",color:"#f1e05a",aliases:["js","node"],extensions:[".js","._js",".bones",".cjs",".es",".es6",".frag",".gs",".jake",".javascript",".jsb",".jscad",".jsfl",".jslib",".jsm",".jspre",".jss",".mjs",".njs",".pac",".sjs",".ssjs",".xsjs",".xsjslib",".wxs"],filenames:["Jakefile"],interpreters:["chakra","d8","gjs","js","node","nodejs","qjs","rhino","v8","v8-shell","zx"],parsers:["babel","acorn","espree","meriyah","babel-flow","babel-ts","flow","typescript"],vscodeLanguageIds:["javascript","mongo"]},{linguistLanguageId:183,name:"Flow",type:"programming",tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"text/javascript",color:"#f1e05a",aliases:[],extensions:[".js.flow"],filenames:[],interpreters:["chakra","d8","gjs","js","node","nodejs","qjs","rhino","v8","v8-shell"],parsers:["flow","babel-flow"],vscodeLanguageIds:["javascript"]},{linguistLanguageId:183,name:"JSX",type:"programming",tmScope:"source.js.jsx",aceMode:"javascript",codemirrorMode:"jsx",codemirrorMimeType:"text/jsx",color:void 0,aliases:void 0,extensions:[".jsx"],filenames:void 0,interpreters:void 0,parsers:["babel","babel-flow","babel-ts","flow","typescript","espree","meriyah"],vscodeLanguageIds:["javascriptreact"],group:"JavaScript"},{linguistLanguageId:378,name:"TypeScript",type:"programming",color:"#3178c6",aliases:["ts"],interpreters:["deno","ts-node"],extensions:[".ts",".cts",".mts"],tmScope:"source.ts",aceMode:"typescript",codemirrorMode:"javascript",codemirrorMimeType:"application/typescript",parsers:["typescript","babel-ts"],vscodeLanguageIds:["typescript"]},{linguistLanguageId:94901924,name:"TSX",type:"programming",color:"#3178c6",group:"TypeScript",extensions:[".tsx"],tmScope:"source.tsx",aceMode:"javascript",codemirrorMode:"jsx",codemirrorMimeType:"text/jsx",parsers:["typescript","babel-ts"],vscodeLanguageIds:["typescriptreact"]}],U$n={};jIt(U$n,{canAttachComment:()=>zjo,embed:()=>Vzo,experimentalFeatures:()=>Mea,getCommentChildNodes:()=>qjo,getVisitorKeys:()=>q$n,handleComments:()=>hei,insertPragma:()=>zzo,isBlockComment:()=>hM,isGap:()=>$jo,massageAstNode:()=>j7o,print:()=>Oea,printComment:()=>fjo,willPrintOwnComments:()=>Rei});var X6o=(e,t,r,s)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,s):r.global?t.replace(r,s):t.split(r).join(s)},PD=X6o,J6o=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},T0=J6o;function U6o(e){return e!==null&&typeof e=="object"}var K6o=U6o;function*j6o(e,t){let{getVisitorKeys:r,filter:s=()=>!0}=t,a=o=>K6o(o)&&s(o);for(let o of r(e)){let g=e[o];if(Array.isArray(g))for(let p of g)a(p)&&(yield p);else a(g)&&(yield g)}}function*z6o(e,t){let r=[e];for(let s=0;s/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;function e7o(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function t7o(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var r7o=e=>!(e7o(e)||t7o(e)),n7o=/[^\x20-\x7F]/u;function i7o(e){if(!e)return 0;if(!n7o.test(e))return e.length;e=e.replace($6o()," ");let t=0;for(let r of e){let s=r.codePointAt(0);s<=31||s>=127&&s<=159||s>=768&&s<=879||(t+=r7o(s)?1:2)}return t}var Dve=i7o;function zIt(e){return(t,r,s)=>{let a=!!(s!=null&&s.backwards);if(r===!1)return!1;let{length:o}=t,g=r;for(;g>=0&&g{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},o$n=g6o;function A6o(e){return Array.isArray(e)&&e.length>0}var Fur=A6o;function PU(e){var t,r,s;let a=((t=e.range)==null?void 0:t[0])??e.start,o=(s=((r=e.declaration)==null?void 0:r.decorators)??e.decorators)==null?void 0:s[0];return o?Math.min(PU(o),a):a}function Xpe(e){var t;return((t=e.range)==null?void 0:t[1])??e.end}function d6o(e){let t=new Set(e);return r=>t.has(r?.type)}var p6o=d6o,f6o=p6o(["Block","CommentBlock","MultiLine"]),Dur=f6o;function I6o(e){let t=`*${e.value}*`.split(` +`);return t.length>1&&t.every(r=>r.trimStart()[0]==="*")}var a$n=I6o;function C6o(e){return Dur(e)&&e.value[0]==="*"&&/@(?:type|satisfies)\b/u.test(e.value)}var m6o=C6o,b5e=null;function B5e(e){if(b5e!==null&&typeof b5e.property){let t=b5e;return b5e=B5e.prototype=null,t}return b5e=B5e.prototype=e??Object.create(null),new B5e}var h6o=10;for(let e=0;e<=h6o;e++)B5e();function _6o(e){return B5e(e)}function y6o(e,t="type"){_6o(e);function r(s){let a=s[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:s});return o}return r}var b6o=y6o,E6o={ArrayExpression:["elements"],AssignmentExpression:["left","right"],BinaryExpression:["left","right"],InterpreterDirective:[],Directive:["value"],DirectiveLiteral:[],BlockStatement:["directives","body"],BreakStatement:["label"],CallExpression:["callee","arguments","typeParameters","typeArguments"],CatchClause:["param","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExpressionStatement:["expression"],File:["program"],ForInStatement:["left","right","body"],ForStatement:["init","test","update","body"],FunctionDeclaration:["id","typeParameters","params","predicate","returnType","body"],FunctionExpression:["id","typeParameters","params","returnType","body"],Identifier:["typeAnnotation","decorators"],IfStatement:["test","consequent","alternate"],LabeledStatement:["label","body"],StringLiteral:[],NumericLiteral:[],NullLiteral:[],BooleanLiteral:[],RegExpLiteral:[],LogicalExpression:["left","right"],MemberExpression:["object","property"],NewExpression:["callee","arguments","typeParameters","typeArguments"],Program:["directives","body"],ObjectExpression:["properties"],ObjectMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectProperty:["key","value","decorators"],RestElement:["argument","typeAnnotation","decorators"],ReturnStatement:["argument"],SequenceExpression:["expressions"],ParenthesizedExpression:["expression"],SwitchCase:["test","consequent"],SwitchStatement:["discriminant","cases"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],AssignmentPattern:["left","right","decorators","typeAnnotation"],ArrayPattern:["elements","typeAnnotation","decorators"],ArrowFunctionExpression:["typeParameters","params","predicate","returnType","body"],ClassBody:["body"],ClassExpression:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ClassDeclaration:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ExportAllDeclaration:["source","attributes","exported"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source","attributes"],ExportSpecifier:["local","exported"],ForOfStatement:["left","right","body"],ImportDeclaration:["specifiers","source","attributes"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],ImportExpression:["source","options"],MetaProperty:["meta","property"],ClassMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectPattern:["properties","typeAnnotation","decorators"],SpreadElement:["argument"],Super:[],TaggedTemplateExpression:["tag","typeParameters","quasi","typeArguments"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],YieldExpression:["argument"],AwaitExpression:["argument"],BigIntLiteral:[],ExportNamespaceSpecifier:["exported"],OptionalMemberExpression:["object","property"],OptionalCallExpression:["callee","arguments","typeParameters","typeArguments"],ClassProperty:["decorators","variance","key","typeAnnotation","value"],ClassAccessorProperty:["decorators","key","typeAnnotation","value"],ClassPrivateProperty:["decorators","variance","key","typeAnnotation","value"],ClassPrivateMethod:["decorators","key","typeParameters","params","returnType","body"],PrivateName:["id"],StaticBlock:["body"],AnyTypeAnnotation:[],ArrayTypeAnnotation:["elementType"],BooleanTypeAnnotation:[],BooleanLiteralTypeAnnotation:[],NullLiteralTypeAnnotation:[],ClassImplements:["id","typeParameters"],DeclareClass:["id","typeParameters","extends","mixins","implements","body"],DeclareFunction:["id","predicate"],DeclareInterface:["id","typeParameters","extends","body"],DeclareModule:["id","body"],DeclareModuleExports:["typeAnnotation"],DeclareTypeAlias:["id","typeParameters","right"],DeclareOpaqueType:["id","typeParameters","supertype"],DeclareVariable:["id"],DeclareExportDeclaration:["declaration","specifiers","source","attributes"],DeclareExportAllDeclaration:["source","attributes"],DeclaredPredicate:["value"],ExistsTypeAnnotation:[],FunctionTypeAnnotation:["typeParameters","this","params","rest","returnType"],FunctionTypeParam:["name","typeAnnotation"],GenericTypeAnnotation:["id","typeParameters"],InferredPredicate:[],InterfaceExtends:["id","typeParameters"],InterfaceDeclaration:["id","typeParameters","extends","body"],InterfaceTypeAnnotation:["extends","body"],IntersectionTypeAnnotation:["types"],MixedTypeAnnotation:[],EmptyTypeAnnotation:[],NullableTypeAnnotation:["typeAnnotation"],NumberLiteralTypeAnnotation:[],NumberTypeAnnotation:[],ObjectTypeAnnotation:["properties","indexers","callProperties","internalSlots"],ObjectTypeInternalSlot:["id","value"],ObjectTypeCallProperty:["value"],ObjectTypeIndexer:["variance","id","key","value"],ObjectTypeProperty:["key","value","variance"],ObjectTypeSpreadProperty:["argument"],OpaqueType:["id","typeParameters","supertype","impltype"],QualifiedTypeIdentifier:["qualification","id"],StringLiteralTypeAnnotation:[],StringTypeAnnotation:[],SymbolTypeAnnotation:[],ThisTypeAnnotation:[],TupleTypeAnnotation:["types","elementTypes"],TypeofTypeAnnotation:["argument","typeArguments"],TypeAlias:["id","typeParameters","right"],TypeAnnotation:["typeAnnotation"],TypeCastExpression:["expression","typeAnnotation"],TypeParameter:["bound","default","variance"],TypeParameterDeclaration:["params"],TypeParameterInstantiation:["params"],UnionTypeAnnotation:["types"],Variance:[],VoidTypeAnnotation:[],EnumDeclaration:["id","body"],EnumBooleanBody:["members"],EnumNumberBody:["members"],EnumStringBody:["members"],EnumSymbolBody:["members"],EnumBooleanMember:["id","init"],EnumNumberMember:["id","init"],EnumStringMember:["id","init"],EnumDefaultedMember:["id"],IndexedAccessType:["objectType","indexType"],OptionalIndexedAccessType:["objectType","indexType"],JSXAttribute:["name","value"],JSXClosingElement:["name"],JSXElement:["openingElement","children","closingElement"],JSXEmptyExpression:[],JSXExpressionContainer:["expression"],JSXSpreadChild:["expression"],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],JSXOpeningElement:["name","typeParameters","typeArguments","attributes"],JSXSpreadAttribute:["argument"],JSXText:[],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningFragment:[],JSXClosingFragment:[],Noop:[],Placeholder:[],V8IntrinsicIdentifier:[],ArgumentPlaceholder:[],BindExpression:["object","callee"],ImportAttribute:["key","value"],Decorator:["expression"],DoExpression:["body"],ExportDefaultSpecifier:["exported"],RecordExpression:["properties"],TupleExpression:["elements"],ModuleExpression:["body"],TopicReference:[],PipelineTopicExpression:["expression"],PipelineBareFunction:["callee"],PipelinePrimaryTopicReference:[],TSParameterProperty:["parameter","decorators"],TSDeclareFunction:["id","typeParameters","params","returnType","body"],TSDeclareMethod:["decorators","key","typeParameters","params","returnType"],TSQualifiedName:["left","right"],TSCallSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSPropertySignature:["key","typeAnnotation"],TSMethodSignature:["key","typeParameters","parameters","typeAnnotation","params","returnType"],TSIndexSignature:["parameters","typeAnnotation"],TSAnyKeyword:[],TSBooleanKeyword:[],TSBigIntKeyword:[],TSIntrinsicKeyword:[],TSNeverKeyword:[],TSNullKeyword:[],TSNumberKeyword:[],TSObjectKeyword:[],TSStringKeyword:[],TSSymbolKeyword:[],TSUndefinedKeyword:[],TSUnknownKeyword:[],TSVoidKeyword:[],TSThisType:[],TSFunctionType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructorType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSTypeReference:["typeName","typeParameters","typeArguments"],TSTypePredicate:["parameterName","typeAnnotation"],TSTypeQuery:["exprName","typeParameters","typeArguments"],TSTypeLiteral:["members"],TSArrayType:["elementType"],TSTupleType:["elementTypes"],TSOptionalType:["typeAnnotation"],TSRestType:["typeAnnotation"],TSNamedTupleMember:["label","elementType"],TSUnionType:["types"],TSIntersectionType:["types"],TSConditionalType:["checkType","extendsType","trueType","falseType"],TSInferType:["typeParameter"],TSParenthesizedType:["typeAnnotation"],TSTypeOperator:["typeAnnotation"],TSIndexedAccessType:["objectType","indexType"],TSMappedType:["typeParameter","nameType","typeAnnotation"],TSTemplateLiteralType:["quasis","types"],TSLiteralType:["literal"],TSExpressionWithTypeArguments:["expression","typeParameters"],TSInterfaceDeclaration:["id","typeParameters","extends","body"],TSInterfaceBody:["body"],TSTypeAliasDeclaration:["id","typeParameters","typeAnnotation"],TSInstantiationExpression:["expression","typeParameters","typeArguments"],TSAsExpression:["expression","typeAnnotation"],TSSatisfiesExpression:["expression","typeAnnotation"],TSTypeAssertion:["typeAnnotation","expression"],TSEnumBody:["members"],TSEnumDeclaration:["id","members"],TSEnumMember:["id","initializer"],TSModuleDeclaration:["id","body"],TSModuleBlock:["body"],TSImportType:["argument","options","qualifier","typeParameters","typeArguments"],TSImportEqualsDeclaration:["id","moduleReference"],TSExternalModuleReference:["expression"],TSNonNullExpression:["expression"],TSExportAssignment:["expression"],TSNamespaceExportDeclaration:["id"],TSTypeAnnotation:["typeAnnotation"],TSTypeParameterInstantiation:["params"],TSTypeParameterDeclaration:["params"],TSTypeParameter:["constraint","default","name"],ChainExpression:["expression"],ExperimentalRestProperty:["argument"],ExperimentalSpreadProperty:["argument"],Literal:[],MethodDefinition:["decorators","key","value"],PrivateIdentifier:[],Property:["key","value"],PropertyDefinition:["decorators","key","typeAnnotation","value","variance"],AccessorProperty:["decorators","key","typeAnnotation","value"],TSAbstractAccessorProperty:["decorators","key","typeAnnotation"],TSAbstractKeyword:[],TSAbstractMethodDefinition:["key","value"],TSAbstractPropertyDefinition:["decorators","key","typeAnnotation"],TSAsyncKeyword:[],TSClassImplements:["expression","typeArguments","typeParameters"],TSDeclareKeyword:[],TSEmptyBodyFunctionExpression:["id","typeParameters","params","returnType"],TSExportKeyword:[],TSInterfaceHeritage:["expression","typeArguments","typeParameters"],TSPrivateKeyword:[],TSProtectedKeyword:[],TSPublicKeyword:[],TSReadonlyKeyword:[],TSStaticKeyword:[],AsConstExpression:["expression"],AsExpression:["expression","typeAnnotation"],BigIntLiteralTypeAnnotation:[],BigIntTypeAnnotation:[],ComponentDeclaration:["id","params","body","typeParameters","rendersType"],ComponentParameter:["name","local"],ComponentTypeAnnotation:["params","rest","typeParameters","rendersType"],ComponentTypeParameter:["name","typeAnnotation"],ConditionalTypeAnnotation:["checkType","extendsType","trueType","falseType"],DeclareComponent:["id","params","rest","typeParameters","rendersType"],DeclareEnum:["id","body"],DeclareHook:["id"],DeclareNamespace:["id","body"],EnumBigIntBody:["members"],EnumBigIntMember:["id","init"],HookDeclaration:["id","params","body","typeParameters","returnType"],HookTypeAnnotation:["params","returnType","rest","typeParameters"],InferTypeAnnotation:["typeParameter"],KeyofTypeAnnotation:["argument"],ObjectTypeMappedTypeProperty:["keyTparam","propType","sourceType","variance"],QualifiedTypeofIdentifier:["qualification","id"],TupleTypeLabeledElement:["label","elementType","variance"],TupleTypeSpreadElement:["label","typeAnnotation"],TypeOperator:["typeAnnotation"],TypePredicate:["parameterName","typeAnnotation","asserts"],NGRoot:["node"],NGPipeExpression:["left","right","arguments"],NGChainedExpression:["expressions"],NGEmptyExpression:[],NGMicrosyntax:["body"],NGMicrosyntaxKey:[],NGMicrosyntaxExpression:["expression","alias"],NGMicrosyntaxKeyedExpression:["key","expression"],NGMicrosyntaxLet:["key","value"],NGMicrosyntaxAs:["key","alias"],JsExpressionRoot:["node"],JsonRoot:["node"],TSJSDocAllType:[],TSJSDocUnknownType:[],TSJSDocNullableType:["typeAnnotation"],TSJSDocNonNullableType:["typeAnnotation"],NeverTypeAnnotation:[],UndefinedTypeAnnotation:[],UnknownTypeAnnotation:[],SatisfiesExpression:["expression","typeAnnotation"]},B6o=b6o(E6o),v6o=B6o;function xur(e,t){if(!(e!==null&&typeof e=="object"))return e;if(Array.isArray(e)){for(let s=0;s{var g;(g=o.leadingComments)!=null&&g.some(m6o)&&a.add(PU(o))}),e=Nur(e,o=>{if(o.type==="ParenthesizedExpression"){let{expression:g}=o;if(g.type==="TypeCastExpression")return g.range=[...o.range],g;let p=PU(o);if(!a.has(p))return g.extra={...g.extra,parenthesized:!0},g}})}if(e=Nur(e,a=>{switch(a.type){case"LogicalExpression":if(y$n(a))return kur(a);break;case"VariableDeclaration":{let o=o$n(!1,a.declarations,-1);o!=null&&o.init&&s[Xpe(o)]!==";"&&(a.range=[PU(a),Xpe(o)]);break}case"TSParenthesizedType":return a.typeAnnotation;case"TSTypeParameter":if(typeof a.name=="string"){let o=PU(a);a.name={type:"Identifier",name:a.name,range:[o,o+a.name.length]}}break;case"TopicReference":e.extra={...e.extra,__isUsingHackPipeline:!0};break;case"TSUnionType":case"TSIntersectionType":if(a.types.length===1)return a.types[0];break}}),Fur(e.comments)){let a=o$n(!1,e.comments,-1);for(let o=e.comments.length-2;o>=0;o--){let g=e.comments[o];Xpe(g)===PU(a)&&Dur(g)&&Dur(a)&&a$n(g)&&a$n(a)&&(e.comments.splice(o+1,1),g.value+="*//*"+a.value,g.range=[PU(g),Xpe(a)]),a=g}}return e.type==="Program"&&(e.range=[0,s.length]),e}function y$n(e){return e.type==="LogicalExpression"&&e.right.type==="LogicalExpression"&&e.operator===e.right.operator}function kur(e){return y$n(e)?kur({type:"LogicalExpression",operator:e.operator,left:kur({type:"LogicalExpression",operator:e.operator,left:e.left,right:e.right.left,range:[PU(e.left),Xpe(e.right.left)]}),right:e.right.right,range:[PU(e),Xpe(e)]}):e}var w6o=S6o;function T6o(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var b$n=T6o;function N6o(e){let{message:t,loc:{line:r,column:s},reasonCode:a}=e,o=e;(a==="MissingPlugin"||a==="MissingOneOfPlugins")&&(t="Unexpected token.",o=void 0);let g=` (${r}:${s})`;return t.endsWith(g)&&(t=t.slice(0,-g.length)),b$n(t,{loc:{start:{line:r,column:s+1}},cause:o})}var E$n=N6o,R6o=(e,t,r,s)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,s):r.global?t.replace(r,s):t.split(r).join(s)},VIt=R6o,D6o=/\*\/$/,x6o=/^\/\*\*?/,k6o=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,G6o=/(^|\s+)\/\/([^\n\r]*)/g,c$n=/^(\r?\n)+/,F6o=/(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g,l$n=/(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g,Z6o=/(\r?\n|^) *\* ?/g,L6o=[];function V6o(e){let t=e.match(k6o);return t?t[0].trimStart():""}function W6o(e){let t=` +`;e=VIt(!1,e.replace(x6o,"").replace(D6o,""),Z6o,"$1");let r="";for(;r!==e;)r=e,e=VIt(!1,e,F6o,`${t}$1 $2${t}`);e=e.replace(c$n,"").trimEnd();let s=Object.create(null),a=VIt(!1,e,l$n,"").replace(c$n,"").trimEnd(),o;for(;o=l$n.exec(e);){let g=VIt(!1,o[2],G6o,"");if(typeof s[o[1]]=="string"||Array.isArray(s[o[1]])){let p=s[o[1]];s[o[1]]=[...L6o,...Array.isArray(p)?p:[p],g]}else s[o[1]]=g}return{comments:a,pragmas:s}}function P6o(e){let t=_$n(e);t&&(e=e.slice(t.length+1));let r=V6o(e),{pragmas:s,comments:a}=W6o(r);return{shebang:t,text:e,pragmas:s,comments:a}}function O6o(e){let{pragmas:t}=P6o(e);return Object.prototype.hasOwnProperty.call(t,"prettier")||Object.prototype.hasOwnProperty.call(t,"format")}function Q6o(e){return e=typeof e=="function"?{parse:e}:e,{astFormat:"estree",hasPragma:O6o,locStart:PU,locEnd:Xpe,...e}}var E5e=Q6o;function M6o(e){let{filepath:t}=e;if(t){if(t=t.toLowerCase(),t.endsWith(".cjs")||t.endsWith(".cts"))return"script";if(t.endsWith(".mjs")||t.endsWith(".mts"))return"module"}}var H6o=M6o;function Y6o(e,t){let{type:r="JsExpressionRoot",rootMarker:s,text:a}=t,{tokens:o,comments:g}=e;return delete e.tokens,delete e.comments,{tokens:o,comments:g,type:r,node:e,range:[0,a.length],rootMarker:s}}var B$n=Y6o,wve=e=>E5e(j6o(e)),X6o={sourceType:"module",allowImportExportEverywhere:!0,allowReturnOutsideFunction:!0,allowNewTargetOutsideFunction:!0,allowSuperOutsideMethod:!0,allowUndeclaredExports:!0,errorRecovery:!0,createParenthesizedExpressions:!0,createImportExpressions:!0,plugins:["doExpressions","exportDefaultFrom","functionBind","functionSent","throwExpressions","partialApplication","decorators","moduleBlocks","asyncDoExpressions","destructuringPrivate","decoratorAutoAccessors","explicitResourceManagement","sourcePhaseImports","deferredImportEvaluation",["optionalChainingAssign",{version:"2023-07"}],"recordAndTuple"],tokens:!0,ranges:!0},u$n="v8intrinsic",g$n=[["pipelineOperator",{proposal:"hack",topicToken:"%"}],["pipelineOperator",{proposal:"fsharp"}]],Tz=(e,t=X6o)=>({...t,plugins:[...t.plugins,...e]}),J6o=/@(?:no)?flow\b/u;function U6o(e,t){var r;if((r=t.filepath)!=null&&r.endsWith(".js.flow"))return!0;let s=_$n(e);s&&(e=e.slice(s.length));let a=a6o(e,0);return a!==!1&&(e=e.slice(0,a)),J6o.test(e)}function K6o(e,t,r){let s=e(t,r),a=s.errors.find(o=>!z6o.has(o.reasonCode));if(a)throw a;return s}function j6o({isExpression:e=!1,optionsCombinations:t}){return(r,s={})=>{if((s.parser==="babel"||s.parser==="__babel_estree")&&U6o(r,s))return s.parser="babel-flow",S$n.parse(r,s);let a=t;(s.__babelSourceType??H6o(s))==="script"&&(a=a.map(f=>({...f,sourceType:"script"})));let o=/%[A-Z]/u.test(r);r.includes("|>")?a=(o?[...g$n,u$n]:g$n).flatMap(f=>a.map(m=>Tz([f],m))):o&&(a=a.map(f=>Tz([u$n],f)));let g=e?s$n.parseExpression:s$n.parse,p;try{p=l6o(a.map(f=>()=>K6o(g,r,f)))}catch({errors:[f]}){throw E$n(f)}return e&&(p=B$n(p,{text:r,rootMarker:s.rootMarker})),w6o(p,{parser:"babel",text:r})}}var z6o=new Set(["StrictNumericEscape","StrictWith","StrictOctalLiteral","StrictDelete","StrictEvalArguments","StrictEvalArgumentsBinding","StrictFunction","ForInOfLoopInitializer","EmptyTypeArguments","EmptyTypeParameters","ConstructorHasTypeParameters","UnsupportedParameterPropertyKind","DecoratorExportClass","ParamDupe","InvalidDecimal","RestTrailingComma","UnsupportedParameterDecorator","UnterminatedJsxContent","UnexpectedReservedWord","ModuleAttributesWithDuplicateKeys","LineTerminatorBeforeArrow","InvalidEscapeSequenceTemplate","NonAbstractClassHasAbstractMethod","OptionalTypeBeforeRequired","PatternIsOptional","OptionalBindingPattern","DeclareClassFieldHasInitializer","TypeImportCannotSpecifyDefaultAndNamed","ConstructorClassField","VarRedeclaration","InvalidPrivateFieldResolution","DuplicateExport","ImportAttributesUseAssert"]),v$n=[Tz(["jsx"])],A$n=wve({optionsCombinations:v$n}),d$n=wve({optionsCombinations:[Tz(["jsx","typescript"]),Tz(["typescript"])]}),p$n=wve({isExpression:!0,optionsCombinations:[Tz(["jsx"])]}),f$n=wve({isExpression:!0,optionsCombinations:[Tz(["typescript"])]}),S$n=wve({optionsCombinations:[Tz(["jsx",["flow",{all:!0}],"flowComments"])]}),q6o=wve({optionsCombinations:v$n.map(e=>Tz(["estree"],e))}),$6o={babel:A$n,"babel-flow":S$n,"babel-ts":d$n,__js_expression:p$n,__ts_expression:f$n,__vue_expression:p$n,__vue_ts_expression:f$n,__vue_event_binding:A$n,__vue_ts_event_binding:d$n,__babel_estree:q6o},e7o=I$n(C$n(),1);function w$n(e={}){let{allowComments:t=!0}=e;return function(r){let s;try{s=(0,e7o.parseExpression)(r,{tokens:!0,ranges:!0,attachComment:!1})}catch(a){throw E$n(a)}if(!t&&Fur(s.comments))throw fse(s.comments[0],"Comment");return Sve(s),B$n(s,{type:"JsonRoot",text:r})}}function fse(e,t){let[r,s]=[e.loc.start,e.loc.end].map(({line:a,column:o})=>({line:a,column:o+1}));return b$n(`${t} is not allowed in JSON.`,{loc:{start:r,end:s}})}function Sve(e){switch(e.type){case"ArrayExpression":for(let t of e.elements)t!==null&&Sve(t);return;case"ObjectExpression":for(let t of e.properties)Sve(t);return;case"ObjectProperty":if(e.computed)throw fse(e.key,"Computed key");if(e.shorthand)throw fse(e.key,"Shorthand property");e.key.type!=="Identifier"&&Sve(e.key),Sve(e.value);return;case"UnaryExpression":{let{operator:t,argument:r}=e;if(t!=="+"&&t!=="-")throw fse(e,`Operator '${e.operator}'`);if(r.type==="NumericLiteral"||r.type==="Identifier"&&(r.name==="Infinity"||r.name==="NaN"))return;throw fse(r,`Operator '${t}' before '${r.type}'`)}case"Identifier":if(e.name!=="Infinity"&&e.name!=="NaN"&&e.name!=="undefined")throw fse(e,`Identifier '${e.name}'`);return;case"TemplateLiteral":if(Fur(e.expressions))throw fse(e.expressions[0],"'TemplateLiteral' with expression");for(let t of e.quasis)Sve(t);return;case"NullLiteral":case"BooleanLiteral":case"NumericLiteral":case"StringLiteral":case"TemplateElement":return;default:throw fse(e,`'${e.type}'`)}}var Rur=w$n(),t7o={json:E5e({parse:Rur,hasPragma(){return!0}}),json5:E5e(Rur),jsonc:E5e(Rur),"json-stringify":E5e({parse:w$n({allowComments:!1}),astFormat:"estree-json"})},r7o=t7o,Tve={...$6o,...r7o},n7o=h$n;var V5e={};zf(V5e,{default:()=>dta,languages:()=>gri,options:()=>lri,printers:()=>uri});var i7o=Object.defineProperty,$$n=e=>{throw TypeError(e)},$It=(e,t)=>{for(var r in t)i7o(e,r,{get:t[r],enumerable:!0})},eei=(e,t,r)=>t.has(e)||$$n("Cannot "+r),Ise=(e,t,r)=>(eei(e,t,"read from private field"),r?r.call(e):t.get(e)),s7o=(e,t,r)=>t.has(e)?$$n("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),o7o=(e,t,r,s)=>(eei(e,t,"write to private field"),s?s.call(e,r):t.set(e,r),r),tei={};$It(tei,{languages:()=>gri,options:()=>lri,printers:()=>uri});var a7o=[{linguistLanguageId:183,name:"JavaScript",type:"programming",tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"text/javascript",color:"#f1e05a",aliases:["js","node"],extensions:[".js","._js",".bones",".cjs",".es",".es6",".frag",".gs",".jake",".javascript",".jsb",".jscad",".jsfl",".jslib",".jsm",".jspre",".jss",".mjs",".njs",".pac",".sjs",".ssjs",".xsjs",".xsjslib",".wxs"],filenames:["Jakefile"],interpreters:["chakra","d8","gjs","js","node","nodejs","qjs","rhino","v8","v8-shell","zx"],parsers:["babel","acorn","espree","meriyah","babel-flow","babel-ts","flow","typescript"],vscodeLanguageIds:["javascript","mongo"]},{linguistLanguageId:183,name:"Flow",type:"programming",tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"text/javascript",color:"#f1e05a",aliases:[],extensions:[".js.flow"],filenames:[],interpreters:["chakra","d8","gjs","js","node","nodejs","qjs","rhino","v8","v8-shell"],parsers:["flow","babel-flow"],vscodeLanguageIds:["javascript"]},{linguistLanguageId:183,name:"JSX",type:"programming",tmScope:"source.js.jsx",aceMode:"javascript",codemirrorMode:"jsx",codemirrorMimeType:"text/jsx",color:void 0,aliases:void 0,extensions:[".jsx"],filenames:void 0,interpreters:void 0,parsers:["babel","babel-flow","babel-ts","flow","typescript","espree","meriyah"],vscodeLanguageIds:["javascriptreact"],group:"JavaScript"},{linguistLanguageId:378,name:"TypeScript",type:"programming",color:"#3178c6",aliases:["ts"],interpreters:["deno","ts-node"],extensions:[".ts",".cts",".mts"],tmScope:"source.ts",aceMode:"typescript",codemirrorMode:"javascript",codemirrorMimeType:"application/typescript",parsers:["typescript","babel-ts"],vscodeLanguageIds:["typescript"]},{linguistLanguageId:94901924,name:"TSX",type:"programming",color:"#3178c6",group:"TypeScript",extensions:[".tsx"],tmScope:"source.tsx",aceMode:"javascript",codemirrorMode:"jsx",codemirrorMimeType:"text/jsx",parsers:["typescript","babel-ts"],vscodeLanguageIds:["typescriptreact"]}],rei={};$It(rei,{canAttachComment:()=>dzo,embed:()=>eqo,experimentalFeatures:()=>ita,getCommentChildNodes:()=>pzo,getVisitorKeys:()=>oei,handleComments:()=>wei,insertPragma:()=>dqo,isBlockComment:()=>yQ,isGap:()=>fzo,massageAstNode:()=>Ajo,print:()=>nta,printComment:()=>Djo,willPrintOwnComments:()=>Vei});var c7o=(e,t,r,s)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,s):r.global?t.replace(r,s):t.split(r).join(s)},HD=c7o,l7o=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},N0=l7o;function u7o(e){return e!==null&&typeof e=="object"}var g7o=u7o;function*A7o(e,t){let{getVisitorKeys:r,filter:s=()=>!0}=t,a=o=>g7o(o)&&s(o);for(let o of r(e)){let g=e[o];if(Array.isArray(g))for(let p of g)a(p)&&(yield p);else a(g)&&(yield g)}}function*d7o(e,t){let r=[e];for(let s=0;s/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;function I7o(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function C7o(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var m7o=e=>!(I7o(e)||C7o(e)),h7o=/[^\x20-\x7F]/u;function _7o(e){if(!e)return 0;if(!h7o.test(e))return e.length;e=e.replace(f7o()," ");let t=0;for(let r of e){let s=r.codePointAt(0);s<=31||s>=127&&s<=159||s>=768&&s<=879||(t+=m7o(s)?1:2)}return t}var Gve=_7o;function eCt(e){return(t,r,s)=>{let a=!!(s!=null&&s.backwards);if(r===!1)return!1;let{length:o}=t,g=r;for(;g>=0&&g0}var m_=A7o,K$n=new Proxy(()=>{},{get:()=>K$n}),agr=K$n,LIt="'",_$n='"';function d7o(e,t){let r=t===!0||t===LIt?LIt:_$n,s=r===LIt?_$n:LIt,a=0,o=0;for(let g of e)g===r?a++:g===s&&o++;return a>o?s:r}var j$n=d7o;function p7o(e,t,r){let s=t==='"'?"'":'"',a=PD(!1,e,/\\(.)|(["'])/gsu,(o,g,p)=>g===s?g:p===t?"\\"+p:p||(r&&/^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/u.test(g)?g:"\\"+g));return t+a+t}var f7o=p7o;function I7o(e,t){agr.ok(/^(?["']).*\k$/su.test(e));let r=e.slice(1,-1),s=t.parser==="json"||t.parser==="jsonc"||t.parser==="json5"&&t.quoteProps==="preserve"&&!t.singleQuote?'"':t.__isInHtmlAttribute?"'":j$n(r,t.singleQuote);return e.charAt(0)===s?e:f7o(r,s,!1)}var Gve=I7o;function gB(e){var t,r,s;let a=((t=e.range)==null?void 0:t[0])??e.start,o=(s=((r=e.declaration)==null?void 0:r.decorators)??e.decorators)==null?void 0:s[0];return o?Math.min(gB(o),a):a}function oh(e){var t;return((t=e.range)==null?void 0:t[1])??e.end}function qIt(e,t){let r=gB(e);return Number.isInteger(r)&&r===gB(t)}function C7o(e,t){let r=oh(e);return Number.isInteger(r)&&r===oh(t)}function m7o(e,t){return qIt(e,t)&&C7o(e,t)}var EQe=null;function SQe(e){if(EQe!==null&&typeof EQe.property){let t=EQe;return EQe=SQe.prototype=null,t}return EQe=SQe.prototype=e??Object.create(null),new SQe}var h7o=10;for(let e=0;e<=h7o;e++)SQe();function _7o(e){return SQe(e)}function y7o(e,t="type"){_7o(e);function r(s){let a=s[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:s});return o}return r}var z$n=y7o,b7o={ArrayExpression:["elements"],AssignmentExpression:["left","right"],BinaryExpression:["left","right"],InterpreterDirective:[],Directive:["value"],DirectiveLiteral:[],BlockStatement:["directives","body"],BreakStatement:["label"],CallExpression:["callee","arguments","typeParameters","typeArguments"],CatchClause:["param","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExpressionStatement:["expression"],File:["program"],ForInStatement:["left","right","body"],ForStatement:["init","test","update","body"],FunctionDeclaration:["id","typeParameters","params","predicate","returnType","body"],FunctionExpression:["id","typeParameters","params","returnType","body"],Identifier:["typeAnnotation","decorators"],IfStatement:["test","consequent","alternate"],LabeledStatement:["label","body"],StringLiteral:[],NumericLiteral:[],NullLiteral:[],BooleanLiteral:[],RegExpLiteral:[],LogicalExpression:["left","right"],MemberExpression:["object","property"],NewExpression:["callee","arguments","typeParameters","typeArguments"],Program:["directives","body"],ObjectExpression:["properties"],ObjectMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectProperty:["key","value","decorators"],RestElement:["argument","typeAnnotation","decorators"],ReturnStatement:["argument"],SequenceExpression:["expressions"],ParenthesizedExpression:["expression"],SwitchCase:["test","consequent"],SwitchStatement:["discriminant","cases"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],AssignmentPattern:["left","right","decorators","typeAnnotation"],ArrayPattern:["elements","typeAnnotation","decorators"],ArrowFunctionExpression:["typeParameters","params","predicate","returnType","body"],ClassBody:["body"],ClassExpression:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ClassDeclaration:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ExportAllDeclaration:["source","attributes","exported"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source","attributes"],ExportSpecifier:["local","exported"],ForOfStatement:["left","right","body"],ImportDeclaration:["specifiers","source","attributes"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],ImportExpression:["source","options"],MetaProperty:["meta","property"],ClassMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectPattern:["properties","typeAnnotation","decorators"],SpreadElement:["argument"],Super:[],TaggedTemplateExpression:["tag","typeParameters","quasi","typeArguments"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],YieldExpression:["argument"],AwaitExpression:["argument"],BigIntLiteral:[],ExportNamespaceSpecifier:["exported"],OptionalMemberExpression:["object","property"],OptionalCallExpression:["callee","arguments","typeParameters","typeArguments"],ClassProperty:["decorators","variance","key","typeAnnotation","value"],ClassAccessorProperty:["decorators","key","typeAnnotation","value"],ClassPrivateProperty:["decorators","variance","key","typeAnnotation","value"],ClassPrivateMethod:["decorators","key","typeParameters","params","returnType","body"],PrivateName:["id"],StaticBlock:["body"],AnyTypeAnnotation:[],ArrayTypeAnnotation:["elementType"],BooleanTypeAnnotation:[],BooleanLiteralTypeAnnotation:[],NullLiteralTypeAnnotation:[],ClassImplements:["id","typeParameters"],DeclareClass:["id","typeParameters","extends","mixins","implements","body"],DeclareFunction:["id","predicate"],DeclareInterface:["id","typeParameters","extends","body"],DeclareModule:["id","body"],DeclareModuleExports:["typeAnnotation"],DeclareTypeAlias:["id","typeParameters","right"],DeclareOpaqueType:["id","typeParameters","supertype"],DeclareVariable:["id"],DeclareExportDeclaration:["declaration","specifiers","source","attributes"],DeclareExportAllDeclaration:["source","attributes"],DeclaredPredicate:["value"],ExistsTypeAnnotation:[],FunctionTypeAnnotation:["typeParameters","this","params","rest","returnType"],FunctionTypeParam:["name","typeAnnotation"],GenericTypeAnnotation:["id","typeParameters"],InferredPredicate:[],InterfaceExtends:["id","typeParameters"],InterfaceDeclaration:["id","typeParameters","extends","body"],InterfaceTypeAnnotation:["extends","body"],IntersectionTypeAnnotation:["types"],MixedTypeAnnotation:[],EmptyTypeAnnotation:[],NullableTypeAnnotation:["typeAnnotation"],NumberLiteralTypeAnnotation:[],NumberTypeAnnotation:[],ObjectTypeAnnotation:["properties","indexers","callProperties","internalSlots"],ObjectTypeInternalSlot:["id","value"],ObjectTypeCallProperty:["value"],ObjectTypeIndexer:["variance","id","key","value"],ObjectTypeProperty:["key","value","variance"],ObjectTypeSpreadProperty:["argument"],OpaqueType:["id","typeParameters","supertype","impltype"],QualifiedTypeIdentifier:["qualification","id"],StringLiteralTypeAnnotation:[],StringTypeAnnotation:[],SymbolTypeAnnotation:[],ThisTypeAnnotation:[],TupleTypeAnnotation:["types","elementTypes"],TypeofTypeAnnotation:["argument","typeArguments"],TypeAlias:["id","typeParameters","right"],TypeAnnotation:["typeAnnotation"],TypeCastExpression:["expression","typeAnnotation"],TypeParameter:["bound","default","variance"],TypeParameterDeclaration:["params"],TypeParameterInstantiation:["params"],UnionTypeAnnotation:["types"],Variance:[],VoidTypeAnnotation:[],EnumDeclaration:["id","body"],EnumBooleanBody:["members"],EnumNumberBody:["members"],EnumStringBody:["members"],EnumSymbolBody:["members"],EnumBooleanMember:["id","init"],EnumNumberMember:["id","init"],EnumStringMember:["id","init"],EnumDefaultedMember:["id"],IndexedAccessType:["objectType","indexType"],OptionalIndexedAccessType:["objectType","indexType"],JSXAttribute:["name","value"],JSXClosingElement:["name"],JSXElement:["openingElement","children","closingElement"],JSXEmptyExpression:[],JSXExpressionContainer:["expression"],JSXSpreadChild:["expression"],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],JSXOpeningElement:["name","typeParameters","typeArguments","attributes"],JSXSpreadAttribute:["argument"],JSXText:[],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningFragment:[],JSXClosingFragment:[],Noop:[],Placeholder:[],V8IntrinsicIdentifier:[],ArgumentPlaceholder:[],BindExpression:["object","callee"],ImportAttribute:["key","value"],Decorator:["expression"],DoExpression:["body"],ExportDefaultSpecifier:["exported"],RecordExpression:["properties"],TupleExpression:["elements"],ModuleExpression:["body"],TopicReference:[],PipelineTopicExpression:["expression"],PipelineBareFunction:["callee"],PipelinePrimaryTopicReference:[],TSParameterProperty:["parameter","decorators"],TSDeclareFunction:["id","typeParameters","params","returnType","body"],TSDeclareMethod:["decorators","key","typeParameters","params","returnType"],TSQualifiedName:["left","right"],TSCallSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSPropertySignature:["key","typeAnnotation"],TSMethodSignature:["key","typeParameters","parameters","typeAnnotation","params","returnType"],TSIndexSignature:["parameters","typeAnnotation"],TSAnyKeyword:[],TSBooleanKeyword:[],TSBigIntKeyword:[],TSIntrinsicKeyword:[],TSNeverKeyword:[],TSNullKeyword:[],TSNumberKeyword:[],TSObjectKeyword:[],TSStringKeyword:[],TSSymbolKeyword:[],TSUndefinedKeyword:[],TSUnknownKeyword:[],TSVoidKeyword:[],TSThisType:[],TSFunctionType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructorType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSTypeReference:["typeName","typeParameters","typeArguments"],TSTypePredicate:["parameterName","typeAnnotation"],TSTypeQuery:["exprName","typeParameters","typeArguments"],TSTypeLiteral:["members"],TSArrayType:["elementType"],TSTupleType:["elementTypes"],TSOptionalType:["typeAnnotation"],TSRestType:["typeAnnotation"],TSNamedTupleMember:["label","elementType"],TSUnionType:["types"],TSIntersectionType:["types"],TSConditionalType:["checkType","extendsType","trueType","falseType"],TSInferType:["typeParameter"],TSParenthesizedType:["typeAnnotation"],TSTypeOperator:["typeAnnotation"],TSIndexedAccessType:["objectType","indexType"],TSMappedType:["typeParameter","nameType","typeAnnotation"],TSTemplateLiteralType:["quasis","types"],TSLiteralType:["literal"],TSExpressionWithTypeArguments:["expression","typeParameters"],TSInterfaceDeclaration:["id","typeParameters","extends","body"],TSInterfaceBody:["body"],TSTypeAliasDeclaration:["id","typeParameters","typeAnnotation"],TSInstantiationExpression:["expression","typeParameters","typeArguments"],TSAsExpression:["expression","typeAnnotation"],TSSatisfiesExpression:["expression","typeAnnotation"],TSTypeAssertion:["typeAnnotation","expression"],TSEnumBody:["members"],TSEnumDeclaration:["id","members"],TSEnumMember:["id","initializer"],TSModuleDeclaration:["id","body"],TSModuleBlock:["body"],TSImportType:["argument","options","qualifier","typeParameters","typeArguments"],TSImportEqualsDeclaration:["id","moduleReference"],TSExternalModuleReference:["expression"],TSNonNullExpression:["expression"],TSExportAssignment:["expression"],TSNamespaceExportDeclaration:["id"],TSTypeAnnotation:["typeAnnotation"],TSTypeParameterInstantiation:["params"],TSTypeParameterDeclaration:["params"],TSTypeParameter:["constraint","default","name"],ChainExpression:["expression"],ExperimentalRestProperty:["argument"],ExperimentalSpreadProperty:["argument"],Literal:[],MethodDefinition:["decorators","key","value"],PrivateIdentifier:[],Property:["key","value"],PropertyDefinition:["decorators","key","typeAnnotation","value","variance"],AccessorProperty:["decorators","key","typeAnnotation","value"],TSAbstractAccessorProperty:["decorators","key","typeAnnotation"],TSAbstractKeyword:[],TSAbstractMethodDefinition:["key","value"],TSAbstractPropertyDefinition:["decorators","key","typeAnnotation"],TSAsyncKeyword:[],TSClassImplements:["expression","typeArguments","typeParameters"],TSDeclareKeyword:[],TSEmptyBodyFunctionExpression:["id","typeParameters","params","returnType"],TSExportKeyword:[],TSInterfaceHeritage:["expression","typeArguments","typeParameters"],TSPrivateKeyword:[],TSProtectedKeyword:[],TSPublicKeyword:[],TSReadonlyKeyword:[],TSStaticKeyword:[],AsConstExpression:["expression"],AsExpression:["expression","typeAnnotation"],BigIntLiteralTypeAnnotation:[],BigIntTypeAnnotation:[],ComponentDeclaration:["id","params","body","typeParameters","rendersType"],ComponentParameter:["name","local"],ComponentTypeAnnotation:["params","rest","typeParameters","rendersType"],ComponentTypeParameter:["name","typeAnnotation"],ConditionalTypeAnnotation:["checkType","extendsType","trueType","falseType"],DeclareComponent:["id","params","rest","typeParameters","rendersType"],DeclareEnum:["id","body"],DeclareHook:["id"],DeclareNamespace:["id","body"],EnumBigIntBody:["members"],EnumBigIntMember:["id","init"],HookDeclaration:["id","params","body","typeParameters","returnType"],HookTypeAnnotation:["params","returnType","rest","typeParameters"],InferTypeAnnotation:["typeParameter"],KeyofTypeAnnotation:["argument"],ObjectTypeMappedTypeProperty:["keyTparam","propType","sourceType","variance"],QualifiedTypeofIdentifier:["qualification","id"],TupleTypeLabeledElement:["label","elementType","variance"],TupleTypeSpreadElement:["label","typeAnnotation"],TypeOperator:["typeAnnotation"],TypePredicate:["parameterName","typeAnnotation","asserts"],NGRoot:["node"],NGPipeExpression:["left","right","arguments"],NGChainedExpression:["expressions"],NGEmptyExpression:[],NGMicrosyntax:["body"],NGMicrosyntaxKey:[],NGMicrosyntaxExpression:["expression","alias"],NGMicrosyntaxKeyedExpression:["key","expression"],NGMicrosyntaxLet:["key","value"],NGMicrosyntaxAs:["key","alias"],JsExpressionRoot:["node"],JsonRoot:["node"],TSJSDocAllType:[],TSJSDocUnknownType:[],TSJSDocNullableType:["typeAnnotation"],TSJSDocNonNullableType:["typeAnnotation"],NeverTypeAnnotation:[],UndefinedTypeAnnotation:[],UnknownTypeAnnotation:[],SatisfiesExpression:["expression","typeAnnotation"]},E7o=z$n(b7o),q$n=E7o;function B7o(e){let t=new Set(e);return r=>t.has(r?.type)}var H_=B7o,v7o=H_(["Block","CommentBlock","MultiLine"]),hM=v7o,S7o=H_(["AnyTypeAnnotation","ThisTypeAnnotation","NumberTypeAnnotation","VoidTypeAnnotation","BooleanTypeAnnotation","BigIntTypeAnnotation","SymbolTypeAnnotation","StringTypeAnnotation","NeverTypeAnnotation","UndefinedTypeAnnotation","UnknownTypeAnnotation","EmptyTypeAnnotation","MixedTypeAnnotation"]),$$n=S7o;function w7o(e,t){let r=t.split(".");for(let s=r.length-1;s>=0;s--){let a=r[s];if(s===0)return e.type==="Identifier"&&e.name===a;if(e.type!=="MemberExpression"||e.optional||e.computed||e.property.type!=="Identifier"||e.property.name!==a)return!1;e=e.object}}function T7o(e,t){return t.some(r=>w7o(e,r))}var N7o=T7o;function R7o({type:e}){return e.startsWith("TS")&&e.endsWith("Keyword")}var eei=R7o;function Mur(e,t){return t(e)||q6o(e,{getVisitorKeys:q$n,predicate:t})}function cgr(e){return e.type==="AssignmentExpression"||e.type==="BinaryExpression"||e.type==="LogicalExpression"||e.type==="NGPipeExpression"||e.type==="ConditionalExpression"||Oh(e)||nv(e)||e.type==="SequenceExpression"||e.type==="TaggedTemplateExpression"||e.type==="BindExpression"||e.type==="UpdateExpression"&&!e.prefix||GU(e)||e.type==="TSNonNullExpression"||e.type==="ChainExpression"}function D7o(e){return e.expressions?e.expressions[0]:e.left??e.test??e.callee??e.object??e.tag??e.argument??e.expression}function tei(e){if(e.expressions)return["expressions",0];if(e.left)return["left"];if(e.test)return["test"];if(e.object)return["object"];if(e.callee)return["callee"];if(e.tag)return["tag"];if(e.argument)return["argument"];if(e.expression)return["expression"];throw new Error("Unexpected node has no left side.")}var Lve=H_(["Line","CommentLine","SingleLine","HashbangComment","HTMLOpen","HTMLClose","Hashbang","InterpreterDirective"]),x7o=H_(["ExportDefaultDeclaration","DeclareExportDeclaration","ExportNamedDeclaration","ExportAllDeclaration","DeclareExportAllDeclaration"]),MD=H_(["ArrayExpression","TupleExpression"]),u5=H_(["ObjectExpression","RecordExpression"]);function k7o(e){return e.type==="LogicalExpression"&&e.operator==="??"}function Tz(e){return e.type==="NumericLiteral"||e.type==="Literal"&&typeof e.value=="number"}function rei(e){return e.type==="UnaryExpression"&&(e.operator==="+"||e.operator==="-")&&Tz(e.argument)}function $L(e){return!!(e&&(e.type==="StringLiteral"||e.type==="Literal"&&typeof e.value=="string"))}function nei(e){return e.type==="RegExpLiteral"||e.type==="Literal"&&!!e.regex}var lgr=H_(["Literal","BooleanLiteral","BigIntLiteral","DirectiveLiteral","NullLiteral","NumericLiteral","RegExpLiteral","StringLiteral"]),G7o=H_(["Identifier","ThisExpression","Super","PrivateName","PrivateIdentifier"]),pse=H_(["ObjectTypeAnnotation","TSTypeLiteral","TSMappedType"]),NQe=H_(["FunctionExpression","ArrowFunctionExpression"]);function F7o(e){return e.type==="FunctionExpression"||e.type==="ArrowFunctionExpression"&&e.body.type==="BlockStatement"}function Dur(e){return Oh(e)&&e.callee.type==="Identifier"&&["async","inject","fakeAsync","waitForAsync"].includes(e.callee.name)}var fR=H_(["JSXElement","JSXFragment"]);function $It(e){return e.method&&e.kind==="init"||e.kind==="get"||e.kind==="set"}function iei(e){return(e.type==="ObjectTypeProperty"||e.type==="ObjectTypeInternalSlot")&&!e.static&&!e.method&&e.kind!=="get"&&e.kind!=="set"&&e.value.type==="FunctionTypeAnnotation"}function Z7o(e){return(e.type==="TypeAnnotation"||e.type==="TSTypeAnnotation")&&e.typeAnnotation.type==="FunctionTypeAnnotation"&&!e.static&&!qIt(e,e.typeAnnotation)}var Nz=H_(["BinaryExpression","LogicalExpression","NGPipeExpression"]);function Tve(e){return nv(e)||e.type==="BindExpression"&&!!e.object}var L7o=H_(["TSThisType","NullLiteralTypeAnnotation","BooleanLiteralTypeAnnotation","StringLiteralTypeAnnotation","BigIntLiteralTypeAnnotation","NumberLiteralTypeAnnotation","TSLiteralType","TSTemplateLiteralType"]);function ugr(e){return eei(e)||$$n(e)||L7o(e)||(e.type==="GenericTypeAnnotation"||e.type==="TSTypeReference")&&!e.typeParameters&&!e.typeArguments}function V7o(e){return e.type==="Identifier"&&(e.name==="beforeEach"||e.name==="beforeAll"||e.name==="afterEach"||e.name==="afterAll")}var W7o=["it","it.only","it.skip","describe","describe.only","describe.skip","test","test.only","test.skip","test.step","test.describe","test.describe.only","test.describe.parallel","test.describe.parallel.only","test.describe.serial","test.describe.serial.only","skip","xit","xdescribe","xtest","fit","fdescribe","ftest"];function P7o(e){return N7o(e,W7o)}function eCt(e,t){if(e?.type!=="CallExpression"||e.optional)return!1;let r=_M(e);if(r.length===1){if(Dur(e)&&eCt(t))return NQe(r[0]);if(V7o(e.callee))return Dur(r[0])}else if((r.length===2||r.length===3)&&(r[0].type==="TemplateLiteral"||$L(r[0]))&&P7o(e.callee))return r[2]&&!Tz(r[2])?!1:(r.length===2?NQe(r[1]):F7o(r[1])&&xk(r[1]).length<=1)||Dur(r[1]);return!1}var sei=e=>t=>(t?.type==="ChainExpression"&&(t=t.expression),e(t)),Oh=sei(H_(["CallExpression","OptionalCallExpression"])),nv=sei(H_(["MemberExpression","OptionalMemberExpression"]));function y$n(e,t=5){return oei(e,t)<=t}function oei(e,t){let r=0;for(let s in e){let a=e[s];if(a&&typeof a=="object"&&typeof a.type=="string"&&(r++,r+=oei(a,t-r)),r>t)return r}return r}var O7o=.25;function ggr(e,t){let{printWidth:r}=t;if(ku(e))return!1;let s=r*O7o;if(e.type==="ThisExpression"||e.type==="Identifier"&&e.name.length<=s||rei(e)&&!ku(e.argument))return!0;let a=e.type==="Literal"&&"regex"in e&&e.regex.pattern||e.type==="RegExpLiteral"&&e.pattern;return a?a.length<=s:$L(e)?Gve(IM(e),t).length<=s:e.type==="TemplateLiteral"?e.expressions.length===0&&e.quasis[0].value.raw.length<=s&&!e.quasis[0].value.raw.includes(` -`):e.type==="UnaryExpression"?ggr(e.argument,{printWidth:r}):e.type==="CallExpression"&&e.arguments.length===0&&e.callee.type==="Identifier"?e.callee.name.length<=s-2:lgr(e)}function fse(e,t){return fR(t)?tCt(t):ku(t,qg.Leading,r=>KW(e,oh(r)))}function b$n(e){return e.quasis.some(t=>t.value.raw.includes(` -`))}function aei(e,t){return(e.type==="TemplateLiteral"&&b$n(e)||e.type==="TaggedTemplateExpression"&&b$n(e.quasi))&&!KW(t,gB(e),{backwards:!0})}function cei(e){if(!ku(e))return!1;let t=T0(!1,Rve(e,qg.Dangling),-1);return t&&!hM(t)}function M7o(e){if(e.length<=1)return!1;let t=0;for(let r of e)if(NQe(r)){if(t+=1,t>1)return!0}else if(Oh(r)){for(let s of _M(r))if(NQe(s))return!0}return!1}function lei(e){let{node:t,parent:r,key:s}=e;return s==="callee"&&Oh(t)&&Oh(r)&&r.arguments.length>0&&t.arguments.length>r.arguments.length}var Q7o=new Set(["!","-","+","~"]);function c5(e,t=2){if(t<=0)return!1;if(e.type==="ChainExpression"||e.type==="TSNonNullExpression")return c5(e.expression,t);let r=s=>c5(s,t-1);if(nei(e))return Dve(e.pattern??e.regex.pattern)<=5;if(lgr(e)||G7o(e)||e.type==="ArgumentPlaceholder")return!0;if(e.type==="TemplateLiteral")return e.quasis.every(s=>!s.value.raw.includes(` -`))&&e.expressions.every(r);if(u5(e))return e.properties.every(s=>!s.computed&&(s.shorthand||s.value&&r(s.value)));if(MD(e))return e.elements.every(s=>s===null||r(s));if(Fve(e)){if(e.type==="ImportExpression"||c5(e.callee,t)){let s=_M(e);return s.length<=t&&s.every(r)}return!1}return nv(e)?c5(e.object,t)&&c5(e.property,t):e.type==="UnaryExpression"&&Q7o.has(e.operator)||e.type==="UpdateExpression"?c5(e.argument,t):!1}function IM(e){var t;return((t=e.extra)==null?void 0:t.raw)??e.raw}function Y7o(e){return e}function xz(e,t="es5"){return e.trailingComma==="es5"&&t==="es5"||e.trailingComma==="all"&&(t==="all"||t==="es5")}function MF(e,t){switch(e.type){case"BinaryExpression":case"LogicalExpression":case"AssignmentExpression":case"NGPipeExpression":return MF(e.left,t);case"MemberExpression":case"OptionalMemberExpression":return MF(e.object,t);case"TaggedTemplateExpression":return e.tag.type==="FunctionExpression"?!1:MF(e.tag,t);case"CallExpression":case"OptionalCallExpression":return e.callee.type==="FunctionExpression"?!1:MF(e.callee,t);case"ConditionalExpression":return MF(e.test,t);case"UpdateExpression":return!e.prefix&&MF(e.argument,t);case"BindExpression":return e.object&&MF(e.object,t);case"SequenceExpression":return MF(e.expressions[0],t);case"ChainExpression":case"TSSatisfiesExpression":case"TSAsExpression":case"TSNonNullExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":return MF(e.expression,t);default:return t(e)}}var E$n={"==":!0,"!=":!0,"===":!0,"!==":!0},VIt={"*":!0,"/":!0,"%":!0},Qur={">>":!0,">>>":!0,"<<":!0};function Agr(e,t){return!(HIt(t)!==HIt(e)||e==="**"||E$n[e]&&E$n[t]||t==="%"&&VIt[e]||e==="%"&&VIt[t]||t!==e&&VIt[t]&&VIt[e]||Qur[e]&&Qur[t])}var H7o=new Map([["|>"],["??"],["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"],["**"]].flatMap((e,t)=>e.map(r=>[r,t])));function HIt(e){return H7o.get(e)}function X7o(e){return!!Qur[e]||e==="|"||e==="^"||e==="&"}function J7o(e){var t;if(e.rest)return!0;let r=xk(e);return((t=T0(!1,r,-1))==null?void 0:t.type)==="RestElement"}var xur=new WeakMap;function xk(e){if(xur.has(e))return xur.get(e);let t=[];return e.this&&t.push(e.this),Array.isArray(e.parameters)?t.push(...e.parameters):Array.isArray(e.params)&&t.push(...e.params),e.rest&&t.push(e.rest),xur.set(e,t),t}function U7o(e,t){let{node:r}=e,s=0,a=o=>t(o,s++);r.this&&e.call(a,"this"),Array.isArray(r.parameters)?e.each(a,"parameters"):Array.isArray(r.params)&&e.each(a,"params"),r.rest&&e.call(a,"rest")}var kur=new WeakMap;function _M(e){if(kur.has(e))return kur.get(e);if(e.type==="ChainExpression")return _M(e.expression);let t=e.arguments;return e.type==="ImportExpression"&&(t=[e.source],e.options&&t.push(e.options)),kur.set(e,t),t}function XIt(e,t){let{node:r}=e;if(r.type==="ChainExpression")return e.call(()=>XIt(e,t),"expression");r.type==="ImportExpression"?(e.call(s=>t(s,0),"source"),r.options&&e.call(s=>t(s,1),"options")):e.each(t,"arguments")}function B$n(e,t){let r=[];if(e.type==="ChainExpression"&&(e=e.expression,r.push("expression")),e.type==="ImportExpression"){if(t===0||t===(e.options?-2:-1))return[...r,"source"];if(e.options&&(t===1||t===-1))return[...r,"options"];throw new RangeError("Invalid argument index")}if(t<0&&(t=e.arguments.length+t),t<0||t>=e.arguments.length)throw new RangeError("Invalid argument index");return[...r,"arguments",t]}function JIt(e){return e.value.trim()==="prettier-ignore"&&!e.unignore}function tCt(e){return e?.prettierIgnore||ku(e,qg.PrettierIgnore)}var qg={Leading:2,Trailing:4,Dangling:8,Block:16,Line:32,PrettierIgnore:64,First:128,Last:256},uei=(e,t)=>{if(typeof e=="function"&&(t=e,e=0),e||t)return(r,s,a)=>!(e&qg.Leading&&!r.leading||e&qg.Trailing&&!r.trailing||e&qg.Dangling&&(r.leading||r.trailing)||e&qg.Block&&!hM(r)||e&qg.Line&&!Lve(r)||e&qg.First&&s!==0||e&qg.Last&&s!==a.length-1||e&qg.PrettierIgnore&&!JIt(r)||t&&!t(r))};function ku(e,t,r){if(!m_(e?.comments))return!1;let s=uei(t,r);return s?e.comments.some(s):!0}function Rve(e,t,r){if(!Array.isArray(e?.comments))return[];let s=uei(t,r);return s?e.comments.filter(s):e.comments}var kz=(e,{originalText:t})=>ogr(t,oh(e));function Fve(e){return Oh(e)||e.type==="NewExpression"||e.type==="ImportExpression"}function Gz(e){return e&&(e.type==="ObjectProperty"||e.type==="Property"&&!$It(e))}var GU=H_(["TSAsExpression","TSSatisfiesExpression","AsExpression","AsConstExpression","SatisfiesExpression"]),Ise=H_(["TSUnionType","UnionTypeAnnotation"]),dgr=H_(["TSIntersectionType","IntersectionTypeAnnotation"]),Cse=H_(["TSConditionalType","ConditionalTypeAnnotation"]),K7o=new Set(["range","raw","comments","leadingComments","trailingComments","innerComments","extra","start","end","loc","flags","errors","tokens"]),wve=e=>{for(let t of e.quasis)delete t.value};function gei(e,t,r){var s,a;if(e.type==="Program"&&delete t.sourceType,(e.type==="BigIntLiteral"||e.type==="BigIntLiteralTypeAnnotation")&&e.value&&(t.value=e.value.toLowerCase()),(e.type==="BigIntLiteral"||e.type==="Literal")&&e.bigint&&(t.bigint=e.bigint.toLowerCase()),e.type==="EmptyStatement"||e.type==="JSXText"||e.type==="JSXExpressionContainer"&&(e.expression.type==="Literal"||e.expression.type==="StringLiteral")&&e.expression.value===" ")return null;if((e.type==="Property"||e.type==="ObjectProperty"||e.type==="MethodDefinition"||e.type==="ClassProperty"||e.type==="ClassMethod"||e.type==="PropertyDefinition"||e.type==="TSDeclareMethod"||e.type==="TSPropertySignature"||e.type==="ObjectTypeProperty"||e.type==="ImportAttribute")&&e.key&&!e.computed){let{key:g}=e;$L(g)||Tz(g)?t.key=String(g.value):g.type==="Identifier"&&(t.key=g.name)}if(e.type==="JSXElement"&&e.openingElement.name.name==="style"&&e.openingElement.attributes.some(g=>g.type==="JSXAttribute"&&g.name.name==="jsx"))for(let{type:g,expression:p}of t.children)g==="JSXExpressionContainer"&&p.type==="TemplateLiteral"&&wve(p);e.type==="JSXAttribute"&&e.name.name==="css"&&e.value.type==="JSXExpressionContainer"&&e.value.expression.type==="TemplateLiteral"&&wve(t.value.expression),e.type==="JSXAttribute"&&((s=e.value)==null?void 0:s.type)==="Literal"&&/["']|"|'/u.test(e.value.value)&&(t.value.value=PD(!1,e.value.value,/["']|"|'/gu,'"'));let o=e.expression||e.callee;if(e.type==="Decorator"&&o.type==="CallExpression"&&o.callee.name==="Component"&&o.arguments.length===1){let g=e.expression.arguments[0].properties;for(let[p,f]of t.expression.arguments[0].properties.entries())switch(g[p].key.name){case"styles":MD(f.value)&&wve(f.value.elements[0]);break;case"template":f.value.type==="TemplateLiteral"&&wve(f.value);break}}e.type==="TaggedTemplateExpression"&&(e.tag.type==="MemberExpression"||e.tag.type==="Identifier"&&(e.tag.name==="gql"||e.tag.name==="graphql"||e.tag.name==="css"||e.tag.name==="md"||e.tag.name==="markdown"||e.tag.name==="html")||e.tag.type==="CallExpression")&&wve(t.quasi),e.type==="TemplateLiteral"&&((a=e.leadingComments)!=null&&a.some(g=>hM(g)&&["GraphQL","HTML"].some(p=>g.value===` ${p} `))||r.type==="CallExpression"&&r.callee.name==="graphql"||!e.leadingComments)&&wve(t),e.type==="ChainExpression"&&e.expression.type==="TSNonNullExpression"&&(t.type="TSNonNullExpression",t.expression.type="ChainExpression"),e.type==="TSMappedType"&&(delete t.key,delete t.constraint),e.type==="TSEnumDeclaration"&&delete t.body}gei.ignoredProperties=K7o;var j7o=gei,Ype="string",Rz="array",Vve="cursor",Hpe="indent",Xpe="align",Jpe="trim",CM="group",hse="fill",FU="if-break",Upe="indent-if-break",Kpe="line-suffix",_se="line-suffix-boundary",t9="line",Fz="label",Zz="break-parent",Aei=new Set([Vve,Hpe,Xpe,Jpe,CM,hse,FU,Upe,Kpe,_se,t9,Fz,Zz]);function z7o(e){if(typeof e=="string")return Ype;if(Array.isArray(e))return Rz;if(!e)return;let{type:t}=e;if(Aei.has(t))return t}var yse=z7o,q7o=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function $7o(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', -Expected it to be 'string' or 'object'.`;if(yse(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let s=q7o([...Aei].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. -Expected it to be ${s}.`}var ejo=class extends Error{name="InvalidDocError";constructor(e){super($7o(e)),this.doc=e}},RQe=ejo,v$n={};function tjo(e,t,r,s){let a=[e];for(;a.length>0;){let o=a.pop();if(o===v$n){r(a.pop());continue}r&&a.push(o,v$n);let g=yse(o);if(!g)throw new RQe(o);if(t?.(o)!==!1)switch(g){case Rz:case hse:{let p=g===Rz?o:o.parts;for(let f=p.length,m=f-1;m>=0;--m)a.push(p[m]);break}case FU:a.push(o.flatContents,o.breakContents);break;case CM:if(s&&o.expandedStates)for(let p=o.expandedStates.length,f=p-1;f>=0;--f)a.push(o.expandedStates[f]);else a.push(o.contents);break;case Xpe:case Hpe:case Upe:case Fz:case Kpe:a.push(o.contents);break;case Ype:case Vve:case Jpe:case _se:case t9:case Zz:break;default:throw new RQe(o)}}}var pgr=tjo;function Wve(e,t){if(typeof e=="string")return t(e);let r=new Map;return s(e);function s(o){if(r.has(o))return r.get(o);let g=a(o);return r.set(o,g),g}function a(o){switch(yse(o)){case Rz:return t(o.map(s));case hse:return t({...o,parts:o.parts.map(s)});case FU:return t({...o,breakContents:s(o.breakContents),flatContents:s(o.flatContents)});case CM:{let{expandedStates:g,contents:p}=o;return g?(g=g.map(s),p=g[0]):p=s(p),t({...o,contents:p,expandedStates:g})}case Xpe:case Hpe:case Upe:case Fz:case Kpe:return t({...o,contents:s(o.contents)});case Ype:case Vve:case Jpe:case _se:case t9:case Zz:return t(o);default:throw new RQe(o)}}}function dei(e,t,r){let s=r,a=!1;function o(g){if(a)return!1;let p=t(g);p!==void 0&&(a=!0,s=p)}return pgr(e,o),s}function rjo(e){if(e.type===CM&&e.break||e.type===t9&&e.hard||e.type===Zz)return!0}function QF(e){return dei(e,rjo,!1)}function S$n(e){if(e.length>0){let t=T0(!1,e,-1);!t.expandedStates&&!t.break&&(t.break="propagated")}return null}function njo(e){let t=new Set,r=[];function s(o){if(o.type===Zz&&S$n(r),o.type===CM){if(r.push(o),t.has(o))return!1;t.add(o)}}function a(o){o.type===CM&&r.pop().break&&S$n(r)}pgr(e,s,a,!0)}function ijo(e){return e.type===t9&&!e.hard?e.soft?"":" ":e.type===FU?e.flatContents:e}function Yur(e){return Wve(e,ijo)}function sjo(e){switch(yse(e)){case hse:if(e.parts.every(t=>t===""))return"";break;case CM:if(!e.contents&&!e.id&&!e.break&&!e.expandedStates)return"";if(e.contents.type===CM&&e.contents.id===e.id&&e.contents.break===e.break&&e.contents.expandedStates===e.expandedStates)return e.contents;break;case Xpe:case Hpe:case Upe:case Kpe:if(!e.contents)return"";break;case FU:if(!e.flatContents&&!e.breakContents)return"";break;case Rz:{let t=[];for(let r of e){if(!r)continue;let[s,...a]=Array.isArray(r)?r:[r];typeof s=="string"&&typeof T0(!1,t,-1)=="string"?t[t.length-1]+=s:t.push(s),t.push(...a)}return t.length===0?"":t.length===1?t[0]:t}case Ype:case Vve:case Jpe:case _se:case t9:case Fz:case Zz:break;default:throw new RQe(e)}return e}function fgr(e){return Wve(e,t=>sjo(t))}function Mpe(e,t=mei){return Wve(e,r=>typeof r=="string"?sh(t,r.split(` -`)):r)}function ojo(e){if(e.type===t9)return!0}function ajo(e){return dei(e,ojo,!1)}function Hur(e,t){return e.type===Fz?{...e,contents:t(e.contents)}:t(e)}function cjo(e){let t=!0;return pgr(e,r=>{switch(yse(r)){case Ype:if(r==="")break;case Jpe:case _se:case t9:case Zz:return t=!1,!1}}),t}var Igr=()=>{},ZU=Igr,pei=Igr,ljo=Igr;function Al(e){return ZU(e),{type:Hpe,contents:e}}function LU(e,t){return ZU(t),{type:Xpe,contents:t,n:e}}function ra(e,t={}){return ZU(e),pei(t.expandedStates,!0),{type:CM,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function ujo(e){return LU(Number.NEGATIVE_INFINITY,e)}function fei(e){return LU(-1,e)}function Ope(e,t){return ra(e[0],{...t,expandedStates:e})}function Iei(e){return ljo(e),{type:hse,parts:e}}function jI(e,t="",r={}){return ZU(e),t!==""&&ZU(t),{type:FU,breakContents:e,flatContents:t,groupId:r.groupId}}function rCt(e,t){return ZU(e),{type:Upe,contents:e,groupId:t.groupId,negate:t.negate}}function w$n(e){return ZU(e),{type:Kpe,contents:e}}var Dz={type:_se},VU={type:Zz},Cei={type:t9,hard:!0},gjo={type:t9,hard:!0,literal:!0},Fg={type:t9},$c={type:t9,soft:!0},sl=[Cei,VU],mei=[gjo,VU],WIt={type:Vve};function sh(e,t){ZU(e),pei(t);let r=[];for(let s=0;s0){for(let a=0;a1&&t.every(r=>r.trimStart()[0]==="*")}var pjo=djo;function fjo(e,t){let r=e.node;if(Lve(r))return t.originalText.slice(gB(r),oh(r)).trimEnd();if(hM(r))return pjo(r)?Ijo(r):["/*",Mpe(r.value),"*/"];throw new Error("Not a comment: "+JSON.stringify(r))}function Ijo(e){let t=e.value.split(` -`);return["/*",sh(sl,t.map((r,s)=>s===0?r.trimEnd():" "+(sEjo,ownLine:()=>bjo,remaining:()=>Bjo});function Cjo(e){let t=e.type||e.kind||"(unknown type)",r=String(e.name||e.id&&(typeof e.id=="object"?e.id.name:e.id)||e.key&&(typeof e.key=="object"?e.key.name:e.key)||e.value&&(typeof e.value=="object"?"":String(e.value))||e.operator||"");return r.length>20&&(r=r.slice(0,19)+"\u2026"),t+(r?" "+r:"")}function Cgr(e,t){(e.comments??(e.comments=[])).push(t),t.printed=!1,t.nodeDescription=Cjo(e)}function QD(e,t){t.leading=!0,t.trailing=!1,Cgr(e,t)}function mM(e,t,r){t.leading=!1,t.trailing=!1,r&&(t.marker=r),Cgr(e,t)}function t2(e,t){t.leading=!1,t.trailing=!0,Cgr(e,t)}function mjo(e,t){let r=null,s=t;for(;s!==r;)r=s,s=xve(e,s),s=igr(e,s),s=sgr(e,s),s=kve(e,s);return s}var Pve=mjo;function hjo(e,t){let r=Pve(e,t);return r===!1?"":e.charAt(r)}var g5=hjo;function _jo(e,t,r){for(let s=t;st(e))}function Ejo(e){return[vjo,vei,bei,wei,mgr,hgr,yei,Eei,Sei,Zjo,Vjo,ygr,Qjo,_gr,Xjo,Jjo,Kjo].some(t=>t(e))}function Bjo(e){return[Tei,mgr,hgr,Tjo,Gjo,Bei,ygr,kjo,xjo,Hjo,_gr,Yjo].some(t=>t(e))}function jpe(e,t){let r=(e.body||e.properties).find(({type:s})=>s!=="EmptyStatement");r?QD(r,t):mM(e,t)}function Xur(e,t){e.type==="BlockStatement"?jpe(e,t):QD(e,t)}function vjo({comment:e,followingNode:t}){return t&&_ei(e)?(QD(t,e),!0):!1}function mgr({comment:e,precedingNode:t,enclosingNode:r,followingNode:s,text:a}){if(r?.type!=="IfStatement"||!s)return!1;if(g5(a,oh(e))===")")return t2(t,e),!0;if(t===r.consequent&&s===r.alternate){let o=Pve(a,oh(r.consequent));if(gB(e)"?(mM(t,e),!0):!1}function Gjo({comment:e,enclosingNode:t,text:r}){return g5(r,oh(e))!==")"?!1:t&&(Nei(t)&&xk(t).length===0||Fve(t)&&_M(t).length===0)?(mM(t,e),!0):(t?.type==="MethodDefinition"||t?.type==="TSAbstractMethodDefinition")&&xk(t.value).length===0?(mM(t.value,e),!0):!1}function Fjo({comment:e,precedingNode:t,enclosingNode:r,followingNode:s,text:a}){return t?.type==="ComponentTypeParameter"&&(r?.type==="DeclareComponent"||r?.type==="ComponentTypeAnnotation")&&s?.type!=="ComponentTypeParameter"||(t?.type==="ComponentParameter"||t?.type==="RestElement")&&r?.type==="ComponentDeclaration"&&g5(a,oh(e))===")"?(t2(t,e),!0):!1}function vei({comment:e,precedingNode:t,enclosingNode:r,followingNode:s,text:a}){return t?.type==="FunctionTypeParam"&&r?.type==="FunctionTypeAnnotation"&&s?.type!=="FunctionTypeParam"||(t?.type==="Identifier"||t?.type==="AssignmentPattern"||t?.type==="ObjectPattern"||t?.type==="ArrayPattern"||t?.type==="RestElement"||t?.type==="TSParameterProperty")&&Nei(r)&&g5(a,oh(e))===")"?(t2(t,e),!0):!hM(e)&&(r?.type==="FunctionDeclaration"||r?.type==="FunctionExpression"||r?.type==="ObjectMethod")&&s?.type==="BlockStatement"&&r.body===s&&Pve(a,oh(e))===gB(s)?(jpe(s,e),!0):!1}function Sei({comment:e,enclosingNode:t}){return t?.type==="LabeledStatement"?(QD(t,e),!0):!1}function _gr({comment:e,enclosingNode:t}){return(t?.type==="ContinueStatement"||t?.type==="BreakStatement")&&!t.label?(t2(t,e),!0):!1}function Zjo({comment:e,precedingNode:t,enclosingNode:r}){return Oh(r)&&t&&r.callee===t&&r.arguments.length>0?(QD(r.arguments[0],e),!0):!1}function Ljo({comment:e,precedingNode:t,enclosingNode:r,followingNode:s}){return Ise(r)?(JIt(e)&&(s.prettierIgnore=!0,e.unignore=!0),t?(t2(t,e),!0):!1):(Ise(s)&&JIt(e)&&(s.types[0].prettierIgnore=!0,e.unignore=!0),!1)}function Vjo({comment:e,enclosingNode:t}){return Gz(t)?(QD(t,e),!0):!1}function ygr({comment:e,enclosingNode:t,ast:r,isLastComment:s}){var a;return((a=r?.body)==null?void 0:a.length)===0?(s?mM(r,e):QD(r,e),!0):t?.type==="Program"&&t.body.length===0&&!m_(t.directives)?(s?mM(t,e):QD(t,e),!0):!1}function Wjo({comment:e,enclosingNode:t}){return t?.type==="ForInStatement"||t?.type==="ForOfStatement"?(QD(t,e),!0):!1}function wei({comment:e,precedingNode:t,enclosingNode:r,text:s}){if(r?.type==="ImportSpecifier"||r?.type==="ExportSpecifier")return QD(r,e),!0;let a=t?.type==="ImportSpecifier"&&r?.type==="ImportDeclaration",o=t?.type==="ExportSpecifier"&&r?.type==="ExportNamedDeclaration";return(a||o)&&KW(s,oh(e))?(t2(t,e),!0):!1}function Pjo({comment:e,enclosingNode:t}){return t?.type==="AssignmentPattern"?(QD(t,e),!0):!1}var Ojo=new Set(["VariableDeclarator","AssignmentExpression","TypeAlias","TSTypeAliasDeclaration"]),Mjo=new Set(["ObjectExpression","RecordExpression","ArrayExpression","TupleExpression","TemplateLiteral","TaggedTemplateExpression","ObjectTypeAnnotation","TSTypeLiteral"]);function Qjo({comment:e,enclosingNode:t,followingNode:r}){return Ojo.has(t?.type)&&r&&(Mjo.has(r.type)||hM(e))?(QD(r,e),!0):!1}function Yjo({comment:e,enclosingNode:t,followingNode:r,text:s}){return!r&&(t?.type==="TSMethodSignature"||t?.type==="TSDeclareFunction"||t?.type==="TSAbstractMethodDefinition")&&g5(s,oh(e))===";"?(t2(t,e),!0):!1}function Tei({comment:e,enclosingNode:t,followingNode:r}){if(JIt(e)&&t?.type==="TSMappedType"&&r?.type==="TSTypeParameter"&&r.constraint)return t.prettierIgnore=!0,e.unignore=!0,!0}function Hjo({comment:e,precedingNode:t,enclosingNode:r,followingNode:s}){return r?.type!=="TSMappedType"?!1:s?.type==="TSTypeParameter"&&s.name?(QD(s.name,e),!0):t?.type==="TSTypeParameter"&&t.constraint?(t2(t.constraint,e),!0):!1}function Xjo({comment:e,enclosingNode:t,followingNode:r}){return!t||t.type!=="SwitchCase"||t.test||!r||r!==t.consequent[0]?!1:(r.type==="BlockStatement"&&Lve(e)?jpe(r,e):mM(t,e),!0)}function Jjo({comment:e,precedingNode:t,enclosingNode:r,followingNode:s}){return Ise(t)&&((r.type==="TSArrayType"||r.type==="ArrayTypeAnnotation")&&!s||dgr(r))?(t2(T0(!1,t.types,-1),e),!0):!1}function Ujo({comment:e,enclosingNode:t,precedingNode:r,followingNode:s}){if((t?.type==="ObjectPattern"||t?.type==="ArrayPattern")&&s?.type==="TSTypeAnnotation")return r?t2(r,e):mM(t,e),!0}function Kjo({comment:e,precedingNode:t,enclosingNode:r,followingNode:s}){var a;if(!s&&r?.type==="UnaryExpression"&&(t?.type==="LogicalExpression"||t?.type==="BinaryExpression")){let o=((a=r.argument.loc)==null?void 0:a.start.line)!==t.right.loc.start.line,g=Lve(e)||e.loc.start.line===e.loc.end.line,p=e.loc.start.line===t.right.loc.start.line;if(o&&g&&p)return t2(t.right,e),!0}return!1}var Nei=H_(["ArrowFunctionExpression","FunctionExpression","FunctionDeclaration","ObjectMethod","ClassMethod","TSDeclareFunction","TSCallSignatureDeclaration","TSConstructSignatureDeclaration","TSMethodSignature","TSConstructorType","TSFunctionType","TSDeclareMethod"]),jjo=new Set(["EmptyStatement","TemplateElement","TSEmptyBodyFunctionExpression","ChainExpression"]);function zjo(e){return!jjo.has(e.type)}function qjo(e,t){var r;if((t.parser==="typescript"||t.parser==="flow"||t.parser==="acorn"||t.parser==="espree"||t.parser==="meriyah"||t.parser==="__babel_estree")&&e.type==="MethodDefinition"&&((r=e.value)==null?void 0:r.type)==="FunctionExpression"&&xk(e.value).length===0&&!e.value.returnType&&!m_(e.value.typeParameters)&&e.value.body)return[...e.decorators||[],e.key,e.value.body]}function Rei(e){let{node:t,parent:r}=e;return(fR(t)||r&&(r.type==="JSXSpreadAttribute"||r.type==="JSXSpreadChild"||Ise(r)||(r.type==="ClassDeclaration"||r.type==="ClassExpression")&&r.superClass===t))&&(!tCt(t)||Ise(r))}function $jo(e,{parser:t}){if(t==="flow"||t==="babel-flow")return e=PD(!1,e,/[\s(]/gu,""),e===""||e==="/*"||e==="/*::"}function ezo(e){switch(e){case"cr":return"\r";case"crlf":return`\r +`||a==="\r"||a==="\u2028"||a==="\u2029")return t+1}return t}var Zve=E7o;function B7o(e,t,r={}){let s=Fve(e,r.backwards?t-1:t,r),a=Zve(e,s,r);return s!==a}var zW=B7o;function v7o(e,t){if(t===!1)return!1;if(e.charAt(t)==="/"&&e.charAt(t+1)==="*"){for(let r=t+2;r0}var h_=T7o,nei=new Proxy(()=>{},{get:()=>nei}),Agr=nei,PIt="'",T$n='"';function N7o(e,t){let r=t===!0||t===PIt?PIt:T$n,s=r===PIt?T$n:PIt,a=0,o=0;for(let g of e)g===r?a++:g===s&&o++;return a>o?s:r}var iei=N7o;function R7o(e,t,r){let s=t==='"'?"'":'"',a=HD(!1,e,/\\(.)|(["'])/gsu,(o,g,p)=>g===s?g:p===t?"\\"+p:p||(r&&/^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/u.test(g)?g:"\\"+g));return t+a+t}var D7o=R7o;function x7o(e,t){Agr.ok(/^(?["']).*\k$/su.test(e));let r=e.slice(1,-1),s=t.parser==="json"||t.parser==="jsonc"||t.parser==="json5"&&t.quoteProps==="preserve"&&!t.singleQuote?'"':t.__isInHtmlAttribute?"'":iei(r,t.singleQuote);return e.charAt(0)===s?e:D7o(r,s,!1)}var Lve=x7o;function dB(e){var t,r,s;let a=((t=e.range)==null?void 0:t[0])??e.start,o=(s=((r=e.declaration)==null?void 0:r.decorators)??e.decorators)==null?void 0:s[0];return o?Math.min(dB(o),a):a}function ah(e){var t;return((t=e.range)==null?void 0:t[1])??e.end}function tCt(e,t){let r=dB(e);return Number.isInteger(r)&&r===dB(t)}function k7o(e,t){let r=ah(e);return Number.isInteger(r)&&r===ah(t)}function G7o(e,t){return tCt(e,t)&&k7o(e,t)}var v5e=null;function T5e(e){if(v5e!==null&&typeof v5e.property){let t=v5e;return v5e=T5e.prototype=null,t}return v5e=T5e.prototype=e??Object.create(null),new T5e}var F7o=10;for(let e=0;e<=F7o;e++)T5e();function Z7o(e){return T5e(e)}function L7o(e,t="type"){Z7o(e);function r(s){let a=s[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:s});return o}return r}var sei=L7o,V7o={ArrayExpression:["elements"],AssignmentExpression:["left","right"],BinaryExpression:["left","right"],InterpreterDirective:[],Directive:["value"],DirectiveLiteral:[],BlockStatement:["directives","body"],BreakStatement:["label"],CallExpression:["callee","arguments","typeParameters","typeArguments"],CatchClause:["param","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExpressionStatement:["expression"],File:["program"],ForInStatement:["left","right","body"],ForStatement:["init","test","update","body"],FunctionDeclaration:["id","typeParameters","params","predicate","returnType","body"],FunctionExpression:["id","typeParameters","params","returnType","body"],Identifier:["typeAnnotation","decorators"],IfStatement:["test","consequent","alternate"],LabeledStatement:["label","body"],StringLiteral:[],NumericLiteral:[],NullLiteral:[],BooleanLiteral:[],RegExpLiteral:[],LogicalExpression:["left","right"],MemberExpression:["object","property"],NewExpression:["callee","arguments","typeParameters","typeArguments"],Program:["directives","body"],ObjectExpression:["properties"],ObjectMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectProperty:["key","value","decorators"],RestElement:["argument","typeAnnotation","decorators"],ReturnStatement:["argument"],SequenceExpression:["expressions"],ParenthesizedExpression:["expression"],SwitchCase:["test","consequent"],SwitchStatement:["discriminant","cases"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],AssignmentPattern:["left","right","decorators","typeAnnotation"],ArrayPattern:["elements","typeAnnotation","decorators"],ArrowFunctionExpression:["typeParameters","params","predicate","returnType","body"],ClassBody:["body"],ClassExpression:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ClassDeclaration:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ExportAllDeclaration:["source","attributes","exported"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source","attributes"],ExportSpecifier:["local","exported"],ForOfStatement:["left","right","body"],ImportDeclaration:["specifiers","source","attributes"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],ImportExpression:["source","options"],MetaProperty:["meta","property"],ClassMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectPattern:["properties","typeAnnotation","decorators"],SpreadElement:["argument"],Super:[],TaggedTemplateExpression:["tag","typeParameters","quasi","typeArguments"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],YieldExpression:["argument"],AwaitExpression:["argument"],BigIntLiteral:[],ExportNamespaceSpecifier:["exported"],OptionalMemberExpression:["object","property"],OptionalCallExpression:["callee","arguments","typeParameters","typeArguments"],ClassProperty:["decorators","variance","key","typeAnnotation","value"],ClassAccessorProperty:["decorators","key","typeAnnotation","value"],ClassPrivateProperty:["decorators","variance","key","typeAnnotation","value"],ClassPrivateMethod:["decorators","key","typeParameters","params","returnType","body"],PrivateName:["id"],StaticBlock:["body"],AnyTypeAnnotation:[],ArrayTypeAnnotation:["elementType"],BooleanTypeAnnotation:[],BooleanLiteralTypeAnnotation:[],NullLiteralTypeAnnotation:[],ClassImplements:["id","typeParameters"],DeclareClass:["id","typeParameters","extends","mixins","implements","body"],DeclareFunction:["id","predicate"],DeclareInterface:["id","typeParameters","extends","body"],DeclareModule:["id","body"],DeclareModuleExports:["typeAnnotation"],DeclareTypeAlias:["id","typeParameters","right"],DeclareOpaqueType:["id","typeParameters","supertype"],DeclareVariable:["id"],DeclareExportDeclaration:["declaration","specifiers","source","attributes"],DeclareExportAllDeclaration:["source","attributes"],DeclaredPredicate:["value"],ExistsTypeAnnotation:[],FunctionTypeAnnotation:["typeParameters","this","params","rest","returnType"],FunctionTypeParam:["name","typeAnnotation"],GenericTypeAnnotation:["id","typeParameters"],InferredPredicate:[],InterfaceExtends:["id","typeParameters"],InterfaceDeclaration:["id","typeParameters","extends","body"],InterfaceTypeAnnotation:["extends","body"],IntersectionTypeAnnotation:["types"],MixedTypeAnnotation:[],EmptyTypeAnnotation:[],NullableTypeAnnotation:["typeAnnotation"],NumberLiteralTypeAnnotation:[],NumberTypeAnnotation:[],ObjectTypeAnnotation:["properties","indexers","callProperties","internalSlots"],ObjectTypeInternalSlot:["id","value"],ObjectTypeCallProperty:["value"],ObjectTypeIndexer:["variance","id","key","value"],ObjectTypeProperty:["key","value","variance"],ObjectTypeSpreadProperty:["argument"],OpaqueType:["id","typeParameters","supertype","impltype"],QualifiedTypeIdentifier:["qualification","id"],StringLiteralTypeAnnotation:[],StringTypeAnnotation:[],SymbolTypeAnnotation:[],ThisTypeAnnotation:[],TupleTypeAnnotation:["types","elementTypes"],TypeofTypeAnnotation:["argument","typeArguments"],TypeAlias:["id","typeParameters","right"],TypeAnnotation:["typeAnnotation"],TypeCastExpression:["expression","typeAnnotation"],TypeParameter:["bound","default","variance"],TypeParameterDeclaration:["params"],TypeParameterInstantiation:["params"],UnionTypeAnnotation:["types"],Variance:[],VoidTypeAnnotation:[],EnumDeclaration:["id","body"],EnumBooleanBody:["members"],EnumNumberBody:["members"],EnumStringBody:["members"],EnumSymbolBody:["members"],EnumBooleanMember:["id","init"],EnumNumberMember:["id","init"],EnumStringMember:["id","init"],EnumDefaultedMember:["id"],IndexedAccessType:["objectType","indexType"],OptionalIndexedAccessType:["objectType","indexType"],JSXAttribute:["name","value"],JSXClosingElement:["name"],JSXElement:["openingElement","children","closingElement"],JSXEmptyExpression:[],JSXExpressionContainer:["expression"],JSXSpreadChild:["expression"],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],JSXOpeningElement:["name","typeParameters","typeArguments","attributes"],JSXSpreadAttribute:["argument"],JSXText:[],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningFragment:[],JSXClosingFragment:[],Noop:[],Placeholder:[],V8IntrinsicIdentifier:[],ArgumentPlaceholder:[],BindExpression:["object","callee"],ImportAttribute:["key","value"],Decorator:["expression"],DoExpression:["body"],ExportDefaultSpecifier:["exported"],RecordExpression:["properties"],TupleExpression:["elements"],ModuleExpression:["body"],TopicReference:[],PipelineTopicExpression:["expression"],PipelineBareFunction:["callee"],PipelinePrimaryTopicReference:[],TSParameterProperty:["parameter","decorators"],TSDeclareFunction:["id","typeParameters","params","returnType","body"],TSDeclareMethod:["decorators","key","typeParameters","params","returnType"],TSQualifiedName:["left","right"],TSCallSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSPropertySignature:["key","typeAnnotation"],TSMethodSignature:["key","typeParameters","parameters","typeAnnotation","params","returnType"],TSIndexSignature:["parameters","typeAnnotation"],TSAnyKeyword:[],TSBooleanKeyword:[],TSBigIntKeyword:[],TSIntrinsicKeyword:[],TSNeverKeyword:[],TSNullKeyword:[],TSNumberKeyword:[],TSObjectKeyword:[],TSStringKeyword:[],TSSymbolKeyword:[],TSUndefinedKeyword:[],TSUnknownKeyword:[],TSVoidKeyword:[],TSThisType:[],TSFunctionType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructorType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSTypeReference:["typeName","typeParameters","typeArguments"],TSTypePredicate:["parameterName","typeAnnotation"],TSTypeQuery:["exprName","typeParameters","typeArguments"],TSTypeLiteral:["members"],TSArrayType:["elementType"],TSTupleType:["elementTypes"],TSOptionalType:["typeAnnotation"],TSRestType:["typeAnnotation"],TSNamedTupleMember:["label","elementType"],TSUnionType:["types"],TSIntersectionType:["types"],TSConditionalType:["checkType","extendsType","trueType","falseType"],TSInferType:["typeParameter"],TSParenthesizedType:["typeAnnotation"],TSTypeOperator:["typeAnnotation"],TSIndexedAccessType:["objectType","indexType"],TSMappedType:["typeParameter","nameType","typeAnnotation"],TSTemplateLiteralType:["quasis","types"],TSLiteralType:["literal"],TSExpressionWithTypeArguments:["expression","typeParameters"],TSInterfaceDeclaration:["id","typeParameters","extends","body"],TSInterfaceBody:["body"],TSTypeAliasDeclaration:["id","typeParameters","typeAnnotation"],TSInstantiationExpression:["expression","typeParameters","typeArguments"],TSAsExpression:["expression","typeAnnotation"],TSSatisfiesExpression:["expression","typeAnnotation"],TSTypeAssertion:["typeAnnotation","expression"],TSEnumBody:["members"],TSEnumDeclaration:["id","members"],TSEnumMember:["id","initializer"],TSModuleDeclaration:["id","body"],TSModuleBlock:["body"],TSImportType:["argument","options","qualifier","typeParameters","typeArguments"],TSImportEqualsDeclaration:["id","moduleReference"],TSExternalModuleReference:["expression"],TSNonNullExpression:["expression"],TSExportAssignment:["expression"],TSNamespaceExportDeclaration:["id"],TSTypeAnnotation:["typeAnnotation"],TSTypeParameterInstantiation:["params"],TSTypeParameterDeclaration:["params"],TSTypeParameter:["constraint","default","name"],ChainExpression:["expression"],ExperimentalRestProperty:["argument"],ExperimentalSpreadProperty:["argument"],Literal:[],MethodDefinition:["decorators","key","value"],PrivateIdentifier:[],Property:["key","value"],PropertyDefinition:["decorators","key","typeAnnotation","value","variance"],AccessorProperty:["decorators","key","typeAnnotation","value"],TSAbstractAccessorProperty:["decorators","key","typeAnnotation"],TSAbstractKeyword:[],TSAbstractMethodDefinition:["key","value"],TSAbstractPropertyDefinition:["decorators","key","typeAnnotation"],TSAsyncKeyword:[],TSClassImplements:["expression","typeArguments","typeParameters"],TSDeclareKeyword:[],TSEmptyBodyFunctionExpression:["id","typeParameters","params","returnType"],TSExportKeyword:[],TSInterfaceHeritage:["expression","typeArguments","typeParameters"],TSPrivateKeyword:[],TSProtectedKeyword:[],TSPublicKeyword:[],TSReadonlyKeyword:[],TSStaticKeyword:[],AsConstExpression:["expression"],AsExpression:["expression","typeAnnotation"],BigIntLiteralTypeAnnotation:[],BigIntTypeAnnotation:[],ComponentDeclaration:["id","params","body","typeParameters","rendersType"],ComponentParameter:["name","local"],ComponentTypeAnnotation:["params","rest","typeParameters","rendersType"],ComponentTypeParameter:["name","typeAnnotation"],ConditionalTypeAnnotation:["checkType","extendsType","trueType","falseType"],DeclareComponent:["id","params","rest","typeParameters","rendersType"],DeclareEnum:["id","body"],DeclareHook:["id"],DeclareNamespace:["id","body"],EnumBigIntBody:["members"],EnumBigIntMember:["id","init"],HookDeclaration:["id","params","body","typeParameters","returnType"],HookTypeAnnotation:["params","returnType","rest","typeParameters"],InferTypeAnnotation:["typeParameter"],KeyofTypeAnnotation:["argument"],ObjectTypeMappedTypeProperty:["keyTparam","propType","sourceType","variance"],QualifiedTypeofIdentifier:["qualification","id"],TupleTypeLabeledElement:["label","elementType","variance"],TupleTypeSpreadElement:["label","typeAnnotation"],TypeOperator:["typeAnnotation"],TypePredicate:["parameterName","typeAnnotation","asserts"],NGRoot:["node"],NGPipeExpression:["left","right","arguments"],NGChainedExpression:["expressions"],NGEmptyExpression:[],NGMicrosyntax:["body"],NGMicrosyntaxKey:[],NGMicrosyntaxExpression:["expression","alias"],NGMicrosyntaxKeyedExpression:["key","expression"],NGMicrosyntaxLet:["key","value"],NGMicrosyntaxAs:["key","alias"],JsExpressionRoot:["node"],JsonRoot:["node"],TSJSDocAllType:[],TSJSDocUnknownType:[],TSJSDocNullableType:["typeAnnotation"],TSJSDocNonNullableType:["typeAnnotation"],NeverTypeAnnotation:[],UndefinedTypeAnnotation:[],UnknownTypeAnnotation:[],SatisfiesExpression:["expression","typeAnnotation"]},W7o=sei(V7o),oei=W7o;function P7o(e){let t=new Set(e);return r=>t.has(r?.type)}var X_=P7o,O7o=X_(["Block","CommentBlock","MultiLine"]),yQ=O7o,Q7o=X_(["AnyTypeAnnotation","ThisTypeAnnotation","NumberTypeAnnotation","VoidTypeAnnotation","BooleanTypeAnnotation","BigIntTypeAnnotation","SymbolTypeAnnotation","StringTypeAnnotation","NeverTypeAnnotation","UndefinedTypeAnnotation","UnknownTypeAnnotation","EmptyTypeAnnotation","MixedTypeAnnotation"]),aei=Q7o;function M7o(e,t){let r=t.split(".");for(let s=r.length-1;s>=0;s--){let a=r[s];if(s===0)return e.type==="Identifier"&&e.name===a;if(e.type!=="MemberExpression"||e.optional||e.computed||e.property.type!=="Identifier"||e.property.name!==a)return!1;e=e.object}}function H7o(e,t){return t.some(r=>M7o(e,r))}var Y7o=H7o;function X7o({type:e}){return e.startsWith("TS")&&e.endsWith("Keyword")}var cei=X7o;function Jur(e,t){return t(e)||p7o(e,{getVisitorKeys:oei,predicate:t})}function dgr(e){return e.type==="AssignmentExpression"||e.type==="BinaryExpression"||e.type==="LogicalExpression"||e.type==="NGPipeExpression"||e.type==="ConditionalExpression"||Qh(e)||iv(e)||e.type==="SequenceExpression"||e.type==="TaggedTemplateExpression"||e.type==="BindExpression"||e.type==="UpdateExpression"&&!e.prefix||QU(e)||e.type==="TSNonNullExpression"||e.type==="ChainExpression"}function J7o(e){return e.expressions?e.expressions[0]:e.left??e.test??e.callee??e.object??e.tag??e.argument??e.expression}function lei(e){if(e.expressions)return["expressions",0];if(e.left)return["left"];if(e.test)return["test"];if(e.object)return["object"];if(e.callee)return["callee"];if(e.tag)return["tag"];if(e.argument)return["argument"];if(e.expression)return["expression"];throw new Error("Unexpected node has no left side.")}var Pve=X_(["Line","CommentLine","SingleLine","HashbangComment","HTMLOpen","HTMLClose","Hashbang","InterpreterDirective"]),U7o=X_(["ExportDefaultDeclaration","DeclareExportDeclaration","ExportNamedDeclaration","ExportAllDeclaration","DeclareExportAllDeclaration"]),XD=X_(["ArrayExpression","TupleExpression"]),AY=X_(["ObjectExpression","RecordExpression"]);function K7o(e){return e.type==="LogicalExpression"&&e.operator==="??"}function Nz(e){return e.type==="NumericLiteral"||e.type==="Literal"&&typeof e.value=="number"}function uei(e){return e.type==="UnaryExpression"&&(e.operator==="+"||e.operator==="-")&&Nz(e.argument)}function e9(e){return!!(e&&(e.type==="StringLiteral"||e.type==="Literal"&&typeof e.value=="string"))}function gei(e){return e.type==="RegExpLiteral"||e.type==="Literal"&&!!e.regex}var pgr=X_(["Literal","BooleanLiteral","BigIntLiteral","DirectiveLiteral","NullLiteral","NumericLiteral","RegExpLiteral","StringLiteral"]),j7o=X_(["Identifier","ThisExpression","Super","PrivateName","PrivateIdentifier"]),hse=X_(["ObjectTypeAnnotation","TSTypeLiteral","TSMappedType"]),D5e=X_(["FunctionExpression","ArrowFunctionExpression"]);function z7o(e){return e.type==="FunctionExpression"||e.type==="ArrowFunctionExpression"&&e.body.type==="BlockStatement"}function Zur(e){return Qh(e)&&e.callee.type==="Identifier"&&["async","inject","fakeAsync","waitForAsync"].includes(e.callee.name)}var CR=X_(["JSXElement","JSXFragment"]);function rCt(e){return e.method&&e.kind==="init"||e.kind==="get"||e.kind==="set"}function Aei(e){return(e.type==="ObjectTypeProperty"||e.type==="ObjectTypeInternalSlot")&&!e.static&&!e.method&&e.kind!=="get"&&e.kind!=="set"&&e.value.type==="FunctionTypeAnnotation"}function q7o(e){return(e.type==="TypeAnnotation"||e.type==="TSTypeAnnotation")&&e.typeAnnotation.type==="FunctionTypeAnnotation"&&!e.static&&!tCt(e,e.typeAnnotation)}var Rz=X_(["BinaryExpression","LogicalExpression","NGPipeExpression"]);function Dve(e){return iv(e)||e.type==="BindExpression"&&!!e.object}var $7o=X_(["TSThisType","NullLiteralTypeAnnotation","BooleanLiteralTypeAnnotation","StringLiteralTypeAnnotation","BigIntLiteralTypeAnnotation","NumberLiteralTypeAnnotation","TSLiteralType","TSTemplateLiteralType"]);function fgr(e){return cei(e)||aei(e)||$7o(e)||(e.type==="GenericTypeAnnotation"||e.type==="TSTypeReference")&&!e.typeParameters&&!e.typeArguments}function ejo(e){return e.type==="Identifier"&&(e.name==="beforeEach"||e.name==="beforeAll"||e.name==="afterEach"||e.name==="afterAll")}var tjo=["it","it.only","it.skip","describe","describe.only","describe.skip","test","test.only","test.skip","test.step","test.describe","test.describe.only","test.describe.parallel","test.describe.parallel.only","test.describe.serial","test.describe.serial.only","skip","xit","xdescribe","xtest","fit","fdescribe","ftest"];function rjo(e){return Y7o(e,tjo)}function nCt(e,t){if(e?.type!=="CallExpression"||e.optional)return!1;let r=bQ(e);if(r.length===1){if(Zur(e)&&nCt(t))return D5e(r[0]);if(ejo(e.callee))return Zur(r[0])}else if((r.length===2||r.length===3)&&(r[0].type==="TemplateLiteral"||e9(r[0]))&&rjo(e.callee))return r[2]&&!Nz(r[2])?!1:(r.length===2?D5e(r[1]):z7o(r[1])&&Vk(r[1]).length<=1)||Zur(r[1]);return!1}var dei=e=>t=>(t?.type==="ChainExpression"&&(t=t.expression),e(t)),Qh=dei(X_(["CallExpression","OptionalCallExpression"])),iv=dei(X_(["MemberExpression","OptionalMemberExpression"]));function N$n(e,t=5){return pei(e,t)<=t}function pei(e,t){let r=0;for(let s in e){let a=e[s];if(a&&typeof a=="object"&&typeof a.type=="string"&&(r++,r+=pei(a,t-r)),r>t)return r}return r}var njo=.25;function Igr(e,t){let{printWidth:r}=t;if(Gu(e))return!1;let s=r*njo;if(e.type==="ThisExpression"||e.type==="Identifier"&&e.name.length<=s||uei(e)&&!Gu(e.argument))return!0;let a=e.type==="Literal"&&"regex"in e&&e.regex.pattern||e.type==="RegExpLiteral"&&e.pattern;return a?a.length<=s:e9(e)?Lve(mQ(e),t).length<=s:e.type==="TemplateLiteral"?e.expressions.length===0&&e.quasis[0].value.raw.length<=s&&!e.quasis[0].value.raw.includes(` +`):e.type==="UnaryExpression"?Igr(e.argument,{printWidth:r}):e.type==="CallExpression"&&e.arguments.length===0&&e.callee.type==="Identifier"?e.callee.name.length<=s-2:pgr(e)}function _se(e,t){return CR(t)?iCt(t):Gu(t,$g.Leading,r=>zW(e,ah(r)))}function R$n(e){return e.quasis.some(t=>t.value.raw.includes(` +`))}function fei(e,t){return(e.type==="TemplateLiteral"&&R$n(e)||e.type==="TaggedTemplateExpression"&&R$n(e.quasi))&&!zW(t,dB(e),{backwards:!0})}function Iei(e){if(!Gu(e))return!1;let t=N0(!1,kve(e,$g.Dangling),-1);return t&&!yQ(t)}function ijo(e){if(e.length<=1)return!1;let t=0;for(let r of e)if(D5e(r)){if(t+=1,t>1)return!0}else if(Qh(r)){for(let s of bQ(r))if(D5e(s))return!0}return!1}function Cei(e){let{node:t,parent:r,key:s}=e;return s==="callee"&&Qh(t)&&Qh(r)&&r.arguments.length>0&&t.arguments.length>r.arguments.length}var sjo=new Set(["!","-","+","~"]);function uY(e,t=2){if(t<=0)return!1;if(e.type==="ChainExpression"||e.type==="TSNonNullExpression")return uY(e.expression,t);let r=s=>uY(s,t-1);if(gei(e))return Gve(e.pattern??e.regex.pattern)<=5;if(pgr(e)||j7o(e)||e.type==="ArgumentPlaceholder")return!0;if(e.type==="TemplateLiteral")return e.quasis.every(s=>!s.value.raw.includes(` +`))&&e.expressions.every(r);if(AY(e))return e.properties.every(s=>!s.computed&&(s.shorthand||s.value&&r(s.value)));if(XD(e))return e.elements.every(s=>s===null||r(s));if(Vve(e)){if(e.type==="ImportExpression"||uY(e.callee,t)){let s=bQ(e);return s.length<=t&&s.every(r)}return!1}return iv(e)?uY(e.object,t)&&uY(e.property,t):e.type==="UnaryExpression"&&sjo.has(e.operator)||e.type==="UpdateExpression"?uY(e.argument,t):!1}function mQ(e){var t;return((t=e.extra)==null?void 0:t.raw)??e.raw}function ojo(e){return e}function kz(e,t="es5"){return e.trailingComma==="es5"&&t==="es5"||e.trailingComma==="all"&&(t==="all"||t==="es5")}function YF(e,t){switch(e.type){case"BinaryExpression":case"LogicalExpression":case"AssignmentExpression":case"NGPipeExpression":return YF(e.left,t);case"MemberExpression":case"OptionalMemberExpression":return YF(e.object,t);case"TaggedTemplateExpression":return e.tag.type==="FunctionExpression"?!1:YF(e.tag,t);case"CallExpression":case"OptionalCallExpression":return e.callee.type==="FunctionExpression"?!1:YF(e.callee,t);case"ConditionalExpression":return YF(e.test,t);case"UpdateExpression":return!e.prefix&&YF(e.argument,t);case"BindExpression":return e.object&&YF(e.object,t);case"SequenceExpression":return YF(e.expressions[0],t);case"ChainExpression":case"TSSatisfiesExpression":case"TSAsExpression":case"TSNonNullExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":return YF(e.expression,t);default:return t(e)}}var D$n={"==":!0,"!=":!0,"===":!0,"!==":!0},OIt={"*":!0,"/":!0,"%":!0},Uur={">>":!0,">>>":!0,"<<":!0};function Cgr(e,t){return!(UIt(t)!==UIt(e)||e==="**"||D$n[e]&&D$n[t]||t==="%"&&OIt[e]||e==="%"&&OIt[t]||t!==e&&OIt[t]&&OIt[e]||Uur[e]&&Uur[t])}var ajo=new Map([["|>"],["??"],["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"],["**"]].flatMap((e,t)=>e.map(r=>[r,t])));function UIt(e){return ajo.get(e)}function cjo(e){return!!Uur[e]||e==="|"||e==="^"||e==="&"}function ljo(e){var t;if(e.rest)return!0;let r=Vk(e);return((t=N0(!1,r,-1))==null?void 0:t.type)==="RestElement"}var Lur=new WeakMap;function Vk(e){if(Lur.has(e))return Lur.get(e);let t=[];return e.this&&t.push(e.this),Array.isArray(e.parameters)?t.push(...e.parameters):Array.isArray(e.params)&&t.push(...e.params),e.rest&&t.push(e.rest),Lur.set(e,t),t}function ujo(e,t){let{node:r}=e,s=0,a=o=>t(o,s++);r.this&&e.call(a,"this"),Array.isArray(r.parameters)?e.each(a,"parameters"):Array.isArray(r.params)&&e.each(a,"params"),r.rest&&e.call(a,"rest")}var Vur=new WeakMap;function bQ(e){if(Vur.has(e))return Vur.get(e);if(e.type==="ChainExpression")return bQ(e.expression);let t=e.arguments;return e.type==="ImportExpression"&&(t=[e.source],e.options&&t.push(e.options)),Vur.set(e,t),t}function KIt(e,t){let{node:r}=e;if(r.type==="ChainExpression")return e.call(()=>KIt(e,t),"expression");r.type==="ImportExpression"?(e.call(s=>t(s,0),"source"),r.options&&e.call(s=>t(s,1),"options")):e.each(t,"arguments")}function x$n(e,t){let r=[];if(e.type==="ChainExpression"&&(e=e.expression,r.push("expression")),e.type==="ImportExpression"){if(t===0||t===(e.options?-2:-1))return[...r,"source"];if(e.options&&(t===1||t===-1))return[...r,"options"];throw new RangeError("Invalid argument index")}if(t<0&&(t=e.arguments.length+t),t<0||t>=e.arguments.length)throw new RangeError("Invalid argument index");return[...r,"arguments",t]}function jIt(e){return e.value.trim()==="prettier-ignore"&&!e.unignore}function iCt(e){return e?.prettierIgnore||Gu(e,$g.PrettierIgnore)}var $g={Leading:2,Trailing:4,Dangling:8,Block:16,Line:32,PrettierIgnore:64,First:128,Last:256},mei=(e,t)=>{if(typeof e=="function"&&(t=e,e=0),e||t)return(r,s,a)=>!(e&$g.Leading&&!r.leading||e&$g.Trailing&&!r.trailing||e&$g.Dangling&&(r.leading||r.trailing)||e&$g.Block&&!yQ(r)||e&$g.Line&&!Pve(r)||e&$g.First&&s!==0||e&$g.Last&&s!==a.length-1||e&$g.PrettierIgnore&&!jIt(r)||t&&!t(r))};function Gu(e,t,r){if(!h_(e?.comments))return!1;let s=mei(t,r);return s?e.comments.some(s):!0}function kve(e,t,r){if(!Array.isArray(e?.comments))return[];let s=mei(t,r);return s?e.comments.filter(s):e.comments}var Gz=(e,{originalText:t})=>ggr(t,ah(e));function Vve(e){return Qh(e)||e.type==="NewExpression"||e.type==="ImportExpression"}function Fz(e){return e&&(e.type==="ObjectProperty"||e.type==="Property"&&!rCt(e))}var QU=X_(["TSAsExpression","TSSatisfiesExpression","AsExpression","AsConstExpression","SatisfiesExpression"]),yse=X_(["TSUnionType","UnionTypeAnnotation"]),mgr=X_(["TSIntersectionType","IntersectionTypeAnnotation"]),bse=X_(["TSConditionalType","ConditionalTypeAnnotation"]),gjo=new Set(["range","raw","comments","leadingComments","trailingComments","innerComments","extra","start","end","loc","flags","errors","tokens"]),Rve=e=>{for(let t of e.quasis)delete t.value};function hei(e,t,r){var s,a;if(e.type==="Program"&&delete t.sourceType,(e.type==="BigIntLiteral"||e.type==="BigIntLiteralTypeAnnotation")&&e.value&&(t.value=e.value.toLowerCase()),(e.type==="BigIntLiteral"||e.type==="Literal")&&e.bigint&&(t.bigint=e.bigint.toLowerCase()),e.type==="EmptyStatement"||e.type==="JSXText"||e.type==="JSXExpressionContainer"&&(e.expression.type==="Literal"||e.expression.type==="StringLiteral")&&e.expression.value===" ")return null;if((e.type==="Property"||e.type==="ObjectProperty"||e.type==="MethodDefinition"||e.type==="ClassProperty"||e.type==="ClassMethod"||e.type==="PropertyDefinition"||e.type==="TSDeclareMethod"||e.type==="TSPropertySignature"||e.type==="ObjectTypeProperty"||e.type==="ImportAttribute")&&e.key&&!e.computed){let{key:g}=e;e9(g)||Nz(g)?t.key=String(g.value):g.type==="Identifier"&&(t.key=g.name)}if(e.type==="JSXElement"&&e.openingElement.name.name==="style"&&e.openingElement.attributes.some(g=>g.type==="JSXAttribute"&&g.name.name==="jsx"))for(let{type:g,expression:p}of t.children)g==="JSXExpressionContainer"&&p.type==="TemplateLiteral"&&Rve(p);e.type==="JSXAttribute"&&e.name.name==="css"&&e.value.type==="JSXExpressionContainer"&&e.value.expression.type==="TemplateLiteral"&&Rve(t.value.expression),e.type==="JSXAttribute"&&((s=e.value)==null?void 0:s.type)==="Literal"&&/["']|"|'/u.test(e.value.value)&&(t.value.value=HD(!1,e.value.value,/["']|"|'/gu,'"'));let o=e.expression||e.callee;if(e.type==="Decorator"&&o.type==="CallExpression"&&o.callee.name==="Component"&&o.arguments.length===1){let g=e.expression.arguments[0].properties;for(let[p,f]of t.expression.arguments[0].properties.entries())switch(g[p].key.name){case"styles":XD(f.value)&&Rve(f.value.elements[0]);break;case"template":f.value.type==="TemplateLiteral"&&Rve(f.value);break}}e.type==="TaggedTemplateExpression"&&(e.tag.type==="MemberExpression"||e.tag.type==="Identifier"&&(e.tag.name==="gql"||e.tag.name==="graphql"||e.tag.name==="css"||e.tag.name==="md"||e.tag.name==="markdown"||e.tag.name==="html")||e.tag.type==="CallExpression")&&Rve(t.quasi),e.type==="TemplateLiteral"&&((a=e.leadingComments)!=null&&a.some(g=>yQ(g)&&["GraphQL","HTML"].some(p=>g.value===` ${p} `))||r.type==="CallExpression"&&r.callee.name==="graphql"||!e.leadingComments)&&Rve(t),e.type==="ChainExpression"&&e.expression.type==="TSNonNullExpression"&&(t.type="TSNonNullExpression",t.expression.type="ChainExpression"),e.type==="TSMappedType"&&(delete t.key,delete t.constraint),e.type==="TSEnumDeclaration"&&delete t.body}hei.ignoredProperties=gjo;var Ajo=hei,jpe="string",Dz="array",Ove="cursor",zpe="indent",qpe="align",$pe="trim",hQ="group",Bse="fill",MU="if-break",efe="indent-if-break",tfe="line-suffix",vse="line-suffix-boundary",r9="line",Zz="label",Lz="break-parent",_ei=new Set([Ove,zpe,qpe,$pe,hQ,Bse,MU,efe,tfe,vse,r9,Zz,Lz]);function djo(e){if(typeof e=="string")return jpe;if(Array.isArray(e))return Dz;if(!e)return;let{type:t}=e;if(_ei.has(t))return t}var Sse=djo,pjo=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function fjo(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', +Expected it to be 'string' or 'object'.`;if(Sse(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let s=pjo([..._ei].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. +Expected it to be ${s}.`}var Ijo=class extends Error{name="InvalidDocError";constructor(e){super(fjo(e)),this.doc=e}},x5e=Ijo,k$n={};function Cjo(e,t,r,s){let a=[e];for(;a.length>0;){let o=a.pop();if(o===k$n){r(a.pop());continue}r&&a.push(o,k$n);let g=Sse(o);if(!g)throw new x5e(o);if(t?.(o)!==!1)switch(g){case Dz:case Bse:{let p=g===Dz?o:o.parts;for(let f=p.length,m=f-1;m>=0;--m)a.push(p[m]);break}case MU:a.push(o.flatContents,o.breakContents);break;case hQ:if(s&&o.expandedStates)for(let p=o.expandedStates.length,f=p-1;f>=0;--f)a.push(o.expandedStates[f]);else a.push(o.contents);break;case qpe:case zpe:case efe:case Zz:case tfe:a.push(o.contents);break;case jpe:case Ove:case $pe:case vse:case r9:case Lz:break;default:throw new x5e(o)}}}var hgr=Cjo;function Qve(e,t){if(typeof e=="string")return t(e);let r=new Map;return s(e);function s(o){if(r.has(o))return r.get(o);let g=a(o);return r.set(o,g),g}function a(o){switch(Sse(o)){case Dz:return t(o.map(s));case Bse:return t({...o,parts:o.parts.map(s)});case MU:return t({...o,breakContents:s(o.breakContents),flatContents:s(o.flatContents)});case hQ:{let{expandedStates:g,contents:p}=o;return g?(g=g.map(s),p=g[0]):p=s(p),t({...o,contents:p,expandedStates:g})}case qpe:case zpe:case efe:case Zz:case tfe:return t({...o,contents:s(o.contents)});case jpe:case Ove:case $pe:case vse:case r9:case Lz:return t(o);default:throw new x5e(o)}}}function yei(e,t,r){let s=r,a=!1;function o(g){if(a)return!1;let p=t(g);p!==void 0&&(a=!0,s=p)}return hgr(e,o),s}function mjo(e){if(e.type===hQ&&e.break||e.type===r9&&e.hard||e.type===Lz)return!0}function XF(e){return yei(e,mjo,!1)}function G$n(e){if(e.length>0){let t=N0(!1,e,-1);!t.expandedStates&&!t.break&&(t.break="propagated")}return null}function hjo(e){let t=new Set,r=[];function s(o){if(o.type===Lz&&G$n(r),o.type===hQ){if(r.push(o),t.has(o))return!1;t.add(o)}}function a(o){o.type===hQ&&r.pop().break&&G$n(r)}hgr(e,s,a,!0)}function _jo(e){return e.type===r9&&!e.hard?e.soft?"":" ":e.type===MU?e.flatContents:e}function Kur(e){return Qve(e,_jo)}function yjo(e){switch(Sse(e)){case Bse:if(e.parts.every(t=>t===""))return"";break;case hQ:if(!e.contents&&!e.id&&!e.break&&!e.expandedStates)return"";if(e.contents.type===hQ&&e.contents.id===e.id&&e.contents.break===e.break&&e.contents.expandedStates===e.expandedStates)return e.contents;break;case qpe:case zpe:case efe:case tfe:if(!e.contents)return"";break;case MU:if(!e.flatContents&&!e.breakContents)return"";break;case Dz:{let t=[];for(let r of e){if(!r)continue;let[s,...a]=Array.isArray(r)?r:[r];typeof s=="string"&&typeof N0(!1,t,-1)=="string"?t[t.length-1]+=s:t.push(s),t.push(...a)}return t.length===0?"":t.length===1?t[0]:t}case jpe:case Ove:case $pe:case vse:case r9:case Zz:case Lz:break;default:throw new x5e(e)}return e}function _gr(e){return Qve(e,t=>yjo(t))}function Upe(e,t=Sei){return Qve(e,r=>typeof r=="string"?oh(t,r.split(` +`)):r)}function bjo(e){if(e.type===r9)return!0}function Ejo(e){return yei(e,bjo,!1)}function jur(e,t){return e.type===Zz?{...e,contents:t(e.contents)}:t(e)}function Bjo(e){let t=!0;return hgr(e,r=>{switch(Sse(r)){case jpe:if(r==="")break;case $pe:case vse:case r9:case Lz:return t=!1,!1}}),t}var ygr=()=>{},HU=ygr,bei=ygr,vjo=ygr;function dl(e){return HU(e),{type:zpe,contents:e}}function YU(e,t){return HU(t),{type:qpe,contents:t,n:e}}function ta(e,t={}){return HU(e),bei(t.expandedStates,!0),{type:hQ,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function Sjo(e){return YU(Number.NEGATIVE_INFINITY,e)}function Eei(e){return YU(-1,e)}function Jpe(e,t){return ta(e[0],{...t,expandedStates:e})}function Bei(e){return vjo(e),{type:Bse,parts:e}}function zI(e,t="",r={}){return HU(e),t!==""&&HU(t),{type:MU,breakContents:e,flatContents:t,groupId:r.groupId}}function sCt(e,t){return HU(e),{type:efe,contents:e,groupId:t.groupId,negate:t.negate}}function F$n(e){return HU(e),{type:tfe,contents:e}}var xz={type:vse},XU={type:Lz},vei={type:r9,hard:!0},wjo={type:r9,hard:!0,literal:!0},Zg={type:r9},el={type:r9,soft:!0},ol=[vei,XU],Sei=[wjo,XU],QIt={type:Ove};function oh(e,t){HU(e),bei(t);let r=[];for(let s=0;s0){for(let a=0;a1&&t.every(r=>r.trimStart()[0]==="*")}var Rjo=Njo;function Djo(e,t){let r=e.node;if(Pve(r))return t.originalText.slice(dB(r),ah(r)).trimEnd();if(yQ(r))return Rjo(r)?xjo(r):["/*",Upe(r.value),"*/"];throw new Error("Not a comment: "+JSON.stringify(r))}function xjo(e){let t=e.value.split(` +`);return["/*",oh(ol,t.map((r,s)=>s===0?r.trimEnd():" "+(sWjo,ownLine:()=>Vjo,remaining:()=>Pjo});function kjo(e){let t=e.type||e.kind||"(unknown type)",r=String(e.name||e.id&&(typeof e.id=="object"?e.id.name:e.id)||e.key&&(typeof e.key=="object"?e.key.name:e.key)||e.value&&(typeof e.value=="object"?"":String(e.value))||e.operator||"");return r.length>20&&(r=r.slice(0,19)+"\u2026"),t+(r?" "+r:"")}function bgr(e,t){(e.comments??(e.comments=[])).push(t),t.printed=!1,t.nodeDescription=kjo(e)}function JD(e,t){t.leading=!0,t.trailing=!1,bgr(e,t)}function _Q(e,t,r){t.leading=!1,t.trailing=!1,r&&(t.marker=r),bgr(e,t)}function r2(e,t){t.leading=!1,t.trailing=!0,bgr(e,t)}function Gjo(e,t){let r=null,s=t;for(;s!==r;)r=s,s=Fve(e,s),s=lgr(e,s),s=ugr(e,s),s=Zve(e,s);return s}var Mve=Gjo;function Fjo(e,t){let r=Mve(e,t);return r===!1?"":e.charAt(r)}var dY=Fjo;function Zjo(e,t,r){for(let s=t;st(e))}function Wjo(e){return[Ojo,kei,Rei,Fei,Egr,Bgr,Nei,Dei,Gei,qjo,ezo,Sgr,szo,vgr,czo,lzo,gzo].some(t=>t(e))}function Pjo(e){return[Zei,Egr,Bgr,Hjo,jjo,xei,Sgr,Kjo,Ujo,azo,vgr,ozo].some(t=>t(e))}function rfe(e,t){let r=(e.body||e.properties).find(({type:s})=>s!=="EmptyStatement");r?JD(r,t):_Q(e,t)}function zur(e,t){e.type==="BlockStatement"?rfe(e,t):JD(e,t)}function Ojo({comment:e,followingNode:t}){return t&&Tei(e)?(JD(t,e),!0):!1}function Egr({comment:e,precedingNode:t,enclosingNode:r,followingNode:s,text:a}){if(r?.type!=="IfStatement"||!s)return!1;if(dY(a,ah(e))===")")return r2(t,e),!0;if(t===r.consequent&&s===r.alternate){let o=Mve(a,ah(r.consequent));if(dB(e)"?(_Q(t,e),!0):!1}function jjo({comment:e,enclosingNode:t,text:r}){return dY(r,ah(e))!==")"?!1:t&&(Lei(t)&&Vk(t).length===0||Vve(t)&&bQ(t).length===0)?(_Q(t,e),!0):(t?.type==="MethodDefinition"||t?.type==="TSAbstractMethodDefinition")&&Vk(t.value).length===0?(_Q(t.value,e),!0):!1}function zjo({comment:e,precedingNode:t,enclosingNode:r,followingNode:s,text:a}){return t?.type==="ComponentTypeParameter"&&(r?.type==="DeclareComponent"||r?.type==="ComponentTypeAnnotation")&&s?.type!=="ComponentTypeParameter"||(t?.type==="ComponentParameter"||t?.type==="RestElement")&&r?.type==="ComponentDeclaration"&&dY(a,ah(e))===")"?(r2(t,e),!0):!1}function kei({comment:e,precedingNode:t,enclosingNode:r,followingNode:s,text:a}){return t?.type==="FunctionTypeParam"&&r?.type==="FunctionTypeAnnotation"&&s?.type!=="FunctionTypeParam"||(t?.type==="Identifier"||t?.type==="AssignmentPattern"||t?.type==="ObjectPattern"||t?.type==="ArrayPattern"||t?.type==="RestElement"||t?.type==="TSParameterProperty")&&Lei(r)&&dY(a,ah(e))===")"?(r2(t,e),!0):!yQ(e)&&(r?.type==="FunctionDeclaration"||r?.type==="FunctionExpression"||r?.type==="ObjectMethod")&&s?.type==="BlockStatement"&&r.body===s&&Mve(a,ah(e))===dB(s)?(rfe(s,e),!0):!1}function Gei({comment:e,enclosingNode:t}){return t?.type==="LabeledStatement"?(JD(t,e),!0):!1}function vgr({comment:e,enclosingNode:t}){return(t?.type==="ContinueStatement"||t?.type==="BreakStatement")&&!t.label?(r2(t,e),!0):!1}function qjo({comment:e,precedingNode:t,enclosingNode:r}){return Qh(r)&&t&&r.callee===t&&r.arguments.length>0?(JD(r.arguments[0],e),!0):!1}function $jo({comment:e,precedingNode:t,enclosingNode:r,followingNode:s}){return yse(r)?(jIt(e)&&(s.prettierIgnore=!0,e.unignore=!0),t?(r2(t,e),!0):!1):(yse(s)&&jIt(e)&&(s.types[0].prettierIgnore=!0,e.unignore=!0),!1)}function ezo({comment:e,enclosingNode:t}){return Fz(t)?(JD(t,e),!0):!1}function Sgr({comment:e,enclosingNode:t,ast:r,isLastComment:s}){var a;return((a=r?.body)==null?void 0:a.length)===0?(s?_Q(r,e):JD(r,e),!0):t?.type==="Program"&&t.body.length===0&&!h_(t.directives)?(s?_Q(t,e):JD(t,e),!0):!1}function tzo({comment:e,enclosingNode:t}){return t?.type==="ForInStatement"||t?.type==="ForOfStatement"?(JD(t,e),!0):!1}function Fei({comment:e,precedingNode:t,enclosingNode:r,text:s}){if(r?.type==="ImportSpecifier"||r?.type==="ExportSpecifier")return JD(r,e),!0;let a=t?.type==="ImportSpecifier"&&r?.type==="ImportDeclaration",o=t?.type==="ExportSpecifier"&&r?.type==="ExportNamedDeclaration";return(a||o)&&zW(s,ah(e))?(r2(t,e),!0):!1}function rzo({comment:e,enclosingNode:t}){return t?.type==="AssignmentPattern"?(JD(t,e),!0):!1}var nzo=new Set(["VariableDeclarator","AssignmentExpression","TypeAlias","TSTypeAliasDeclaration"]),izo=new Set(["ObjectExpression","RecordExpression","ArrayExpression","TupleExpression","TemplateLiteral","TaggedTemplateExpression","ObjectTypeAnnotation","TSTypeLiteral"]);function szo({comment:e,enclosingNode:t,followingNode:r}){return nzo.has(t?.type)&&r&&(izo.has(r.type)||yQ(e))?(JD(r,e),!0):!1}function ozo({comment:e,enclosingNode:t,followingNode:r,text:s}){return!r&&(t?.type==="TSMethodSignature"||t?.type==="TSDeclareFunction"||t?.type==="TSAbstractMethodDefinition")&&dY(s,ah(e))===";"?(r2(t,e),!0):!1}function Zei({comment:e,enclosingNode:t,followingNode:r}){if(jIt(e)&&t?.type==="TSMappedType"&&r?.type==="TSTypeParameter"&&r.constraint)return t.prettierIgnore=!0,e.unignore=!0,!0}function azo({comment:e,precedingNode:t,enclosingNode:r,followingNode:s}){return r?.type!=="TSMappedType"?!1:s?.type==="TSTypeParameter"&&s.name?(JD(s.name,e),!0):t?.type==="TSTypeParameter"&&t.constraint?(r2(t.constraint,e),!0):!1}function czo({comment:e,enclosingNode:t,followingNode:r}){return!t||t.type!=="SwitchCase"||t.test||!r||r!==t.consequent[0]?!1:(r.type==="BlockStatement"&&Pve(e)?rfe(r,e):_Q(t,e),!0)}function lzo({comment:e,precedingNode:t,enclosingNode:r,followingNode:s}){return yse(t)&&((r.type==="TSArrayType"||r.type==="ArrayTypeAnnotation")&&!s||mgr(r))?(r2(N0(!1,t.types,-1),e),!0):!1}function uzo({comment:e,enclosingNode:t,precedingNode:r,followingNode:s}){if((t?.type==="ObjectPattern"||t?.type==="ArrayPattern")&&s?.type==="TSTypeAnnotation")return r?r2(r,e):_Q(t,e),!0}function gzo({comment:e,precedingNode:t,enclosingNode:r,followingNode:s}){var a;if(!s&&r?.type==="UnaryExpression"&&(t?.type==="LogicalExpression"||t?.type==="BinaryExpression")){let o=((a=r.argument.loc)==null?void 0:a.start.line)!==t.right.loc.start.line,g=Pve(e)||e.loc.start.line===e.loc.end.line,p=e.loc.start.line===t.right.loc.start.line;if(o&&g&&p)return r2(t.right,e),!0}return!1}var Lei=X_(["ArrowFunctionExpression","FunctionExpression","FunctionDeclaration","ObjectMethod","ClassMethod","TSDeclareFunction","TSCallSignatureDeclaration","TSConstructSignatureDeclaration","TSMethodSignature","TSConstructorType","TSFunctionType","TSDeclareMethod"]),Azo=new Set(["EmptyStatement","TemplateElement","TSEmptyBodyFunctionExpression","ChainExpression"]);function dzo(e){return!Azo.has(e.type)}function pzo(e,t){var r;if((t.parser==="typescript"||t.parser==="flow"||t.parser==="acorn"||t.parser==="espree"||t.parser==="meriyah"||t.parser==="__babel_estree")&&e.type==="MethodDefinition"&&((r=e.value)==null?void 0:r.type)==="FunctionExpression"&&Vk(e.value).length===0&&!e.value.returnType&&!h_(e.value.typeParameters)&&e.value.body)return[...e.decorators||[],e.key,e.value.body]}function Vei(e){let{node:t,parent:r}=e;return(CR(t)||r&&(r.type==="JSXSpreadAttribute"||r.type==="JSXSpreadChild"||yse(r)||(r.type==="ClassDeclaration"||r.type==="ClassExpression")&&r.superClass===t))&&(!iCt(t)||yse(r))}function fzo(e,{parser:t}){if(t==="flow"||t==="babel-flow")return e=HD(!1,e,/[\s(]/gu,""),e===""||e==="/*"||e==="/*::"}function Izo(e){switch(e){case"cr":return"\r";case"crlf":return`\r `;default:return` -`}}var qL=Symbol("MODE_BREAK"),kU=Symbol("MODE_FLAT"),Nve=Symbol("cursor"),Jur=Symbol("DOC_FILL_PRINTED_LENGTH");function Dei(){return{value:"",length:0,queue:[]}}function tzo(e,t){return Uur(e,{type:"indent"},t)}function rzo(e,t,r){return t===Number.NEGATIVE_INFINITY?e.root||Dei():t<0?Uur(e,{type:"dedent"},r):t?t.type==="root"?{...e,root:e}:Uur(e,{type:typeof t=="string"?"stringAlign":"numberAlign",n:t},r):e}function Uur(e,t,r){let s=t.type==="dedent"?e.queue.slice(0,-1):[...e.queue,t],a="",o=0,g=0,p=0;for(let T of s)switch(T.type){case"indent":y(),r.useTabs?f(1):m(r.tabWidth);break;case"stringAlign":y(),a+=T.n,o+=T.n.length;break;case"numberAlign":g+=1,p+=T.n;break;default:throw new Error(`Unexpected type '${T.type}'`)}return v(),{...e,value:a,length:o,queue:s};function f(T){a+=" ".repeat(T),o+=r.tabWidth*T}function m(T){a+=" ".repeat(T),o+=T}function y(){r.useTabs?B():v()}function B(){g>0&&f(g),G()}function v(){p>0&&m(p),G()}function G(){g=0,p=0}}function Kur(e){let t=0,r=0,s=e.length;e:for(;s--;){let a=e[s];if(a===Nve){r++;continue}for(let o=a.length-1;o>=0;o--){let g=a[o];if(g===" "||g===" ")t++;else{e[s]=a.slice(0,o+1);break e}}}if(t>0||r>0)for(e.length=s+1;r-- >0;)e.push(Nve);return t}function PIt(e,t,r,s,a,o){if(r===Number.POSITIVE_INFINITY)return!0;let g=t.length,p=[e],f=[];for(;r>=0;){if(p.length===0){if(g===0)return!0;p.push(t[--g]);continue}let{mode:m,doc:y}=p.pop(),B=yse(y);switch(B){case Ype:f.push(y),r-=Dve(y);break;case Rz:case hse:{let v=B===Rz?y:y.parts,G=y[Jur]??0;for(let T=v.length-1;T>=G;T--)p.push({mode:m,doc:v[T]});break}case Hpe:case Xpe:case Upe:case Fz:p.push({mode:m,doc:y.contents});break;case Jpe:r+=Kur(f);break;case CM:{if(o&&y.break)return!1;let v=y.break?qL:m,G=y.expandedStates&&v===qL?T0(!1,y.expandedStates,-1):y.contents;p.push({mode:v,doc:G});break}case FU:{let v=(y.groupId?a[y.groupId]||kU:m)===qL?y.breakContents:y.flatContents;v&&p.push({mode:m,doc:v});break}case t9:if(m===qL||y.hard)return!0;y.soft||(f.push(" "),r--);break;case Kpe:s=!0;break;case _se:if(s)return!1;break}}return!1}function xei(e,t){let r={},s=t.printWidth,a=ezo(t.endOfLine),o=0,g=[{ind:Dei(),mode:qL,doc:e}],p=[],f=!1,m=[],y=0;for(njo(e);g.length>0;){let{ind:v,mode:G,doc:T}=g.pop();switch(yse(T)){case Ype:{let O=a!==` -`?PD(!1,T,` -`,a):T;p.push(O),g.length>0&&(o+=Dve(O));break}case Rz:for(let O=T.length-1;O>=0;O--)g.push({ind:v,mode:G,doc:T[O]});break;case Vve:if(y>=2)throw new Error("There are too many 'cursor' in doc.");p.push(Nve),y++;break;case Hpe:g.push({ind:tzo(v,t),mode:G,doc:T.contents});break;case Xpe:g.push({ind:rzo(v,T.n,t),mode:G,doc:T.contents});break;case Jpe:o-=Kur(p);break;case CM:switch(G){case kU:if(!f){g.push({ind:v,mode:T.break?qL:kU,doc:T.contents});break}case qL:{f=!1;let O={ind:v,mode:kU,doc:T.contents},X=s-o,U=m.length>0;if(!T.break&&PIt(O,g,X,U,r))g.push(O);else if(T.expandedStates){let le=T0(!1,T.expandedStates,-1);if(T.break){g.push({ind:v,mode:qL,doc:le});break}else for(let ae=1;ae=T.expandedStates.length){g.push({ind:v,mode:qL,doc:le});break}else{let ge=T.expandedStates[ae],fe={ind:v,mode:kU,doc:ge};if(PIt(fe,g,X,U,r)){g.push(fe);break}}}else g.push({ind:v,mode:qL,doc:T.contents});break}}T.id&&(r[T.id]=T0(!1,g,-1).mode);break;case hse:{let O=s-o,X=T[Jur]??0,{parts:U}=T,le=U.length-X;if(le===0)break;let ae=U[X+0],ge=U[X+1],fe={ind:v,mode:kU,doc:ae},pe={ind:v,mode:qL,doc:ae},he=PIt(fe,[],O,m.length>0,r,!0);if(le===1){he?g.push(fe):g.push(pe);break}let be={ind:v,mode:kU,doc:ge},Te={ind:v,mode:qL,doc:ge};if(le===2){he?g.push(be,fe):g.push(Te,pe);break}let ke=U[X+2],x={ind:v,mode:G,doc:{...T,[Jur]:X+2}};PIt({ind:v,mode:kU,doc:[ae,ge,ke]},[],O,m.length>0,r,!0)?g.push(x,be,fe):he?g.push(x,Te,fe):g.push(x,Te,pe);break}case FU:case Upe:{let O=T.groupId?r[T.groupId]:G;if(O===qL){let X=T.type===FU?T.breakContents:T.negate?T.contents:Al(T.contents);X&&g.push({ind:v,mode:G,doc:X})}if(O===kU){let X=T.type===FU?T.flatContents:T.negate?Al(T.contents):T.contents;X&&g.push({ind:v,mode:G,doc:X})}break}case Kpe:m.push({ind:v,mode:G,doc:T.contents});break;case _se:m.length>0&&g.push({ind:v,mode:G,doc:Cei});break;case t9:switch(G){case kU:if(T.hard)f=!0;else{T.soft||(p.push(" "),o+=1);break}case qL:if(m.length>0){g.push({ind:v,mode:G,doc:T},...m.reverse()),m.length=0;break}T.literal?v.root?(p.push(a,v.root.value),o=v.root.length):(p.push(a),o=0):(o-=Kur(p),p.push(a+v.value),o=v.length);break}break;case Fz:g.push({ind:v,mode:G,doc:T.contents});break;case Zz:break;default:throw new RQe(T)}g.length===0&&m.length>0&&(g.push(...m.reverse()),m.length=0)}let B=p.indexOf(Nve);if(B!==-1){let v=p.indexOf(Nve,B+1);if(v===-1)return{formatted:p.filter(X=>X!==Nve).join("")};let G=p.slice(0,B).join(""),T=p.slice(B+1,v).join(""),O=p.slice(v+1).join("");return{formatted:G+T+O,cursorNodeStart:G.length,cursorNodeText:T}}return{formatted:p.join("")}}function nzo(e,t,r=0){let s=0;for(let a=r;a{if(o.push(t()),m.tail)return;let{tabWidth:y}=r,B=m.value.raw,v=B.includes(` -`)?ozo(B,y):p;p=v;let G=g[f],T=s[a][f],O=mse(r.originalText,oh(m),gB(s.quasis[f+1]));if(!O){let U=xei(G,{...r,printWidth:Number.POSITIVE_INFINITY}).formatted;U.includes(` -`)?O=!0:G=U}O&&(ku(T)||T.type==="Identifier"||nv(T)||T.type==="ConditionalExpression"||T.type==="SequenceExpression"||GU(T)||Nz(T))&&(G=[Al([$c,G]),$c]);let X=v===0&&B.endsWith(` -`)?LU(Number.NEGATIVE_INFINITY,G):Ajo(G,v,y);o.push(ra(["${",X,Dz,"}"]))},"quasis"),o.push("`"),o}function azo(e,t){let r=t("quasi");return kQe(r.label&&{tagged:!0,...r.label},[t("tag"),t(e.node.typeArguments?"typeArguments":"typeParameters"),Dz,r])}function czo(e,t,r){let{node:s}=e,a=s.quasis[0].value.raw.trim().split(/\s*\|\s*/u);if(a.length>1||a.some(o=>o.length>0)){t.__inJestEach=!0;let o=e.map(r,"expressions");t.__inJestEach=!1;let g=[],p=o.map(v=>"${"+xei(v,{...t,printWidth:Number.POSITIVE_INFINITY,endOfLine:"lf"}).formatted+"}"),f=[{hasLineBreak:!1,cells:[]}];for(let v=1;vv.cells.length)),y=Array.from({length:m}).fill(0),B=[{cells:a},...f.filter(v=>v.cells.length>0)];for(let{cells:v}of B.filter(G=>!G.hasLineBreak))for(let[G,T]of v.entries())y[G]=Math.max(y[G],Dve(T));return g.push(Dz,"`",Al([sl,sh(sl,B.map(v=>sh(" | ",v.cells.map((G,T)=>v.hasLineBreak?G:G+" ".repeat(y[T]-Dve(G))))))]),sl,"`"),g}}function lzo(e,t){let{node:r}=e,s=t();return ku(r)&&(s=ra([Al([$c,s]),$c])),["${",s,Dz,"}"]}function bgr(e,t){return e.map(r=>lzo(r,t),"expressions")}function Gei(e,t){return Wve(e,r=>typeof r=="string"?t?PD(!1,r,/(\\*)`/gu,"$1$1\\`"):Fei(r):r)}function Fei(e){return PD(!1,e,/([\\`]|\$\{)/gu,String.raw`\$1`)}function uzo({node:e,parent:t}){let r=/^[fx]?(?:describe|it|test)$/u;return t.type==="TaggedTemplateExpression"&&t.quasi===e&&t.tag.type==="MemberExpression"&&t.tag.property.type==="Identifier"&&t.tag.property.name==="each"&&(t.tag.object.type==="Identifier"&&r.test(t.tag.object.name)||t.tag.object.type==="MemberExpression"&&t.tag.object.property.type==="Identifier"&&(t.tag.object.property.name==="only"||t.tag.object.property.name==="skip")&&t.tag.object.object.type==="Identifier"&&r.test(t.tag.object.object.name))}var jur=[(e,t)=>e.type==="ObjectExpression"&&t==="properties",(e,t)=>e.type==="CallExpression"&&e.callee.type==="Identifier"&&e.callee.name==="Component"&&t==="arguments",(e,t)=>e.type==="Decorator"&&t==="expression"];function gzo(e){let t=s=>s.type==="TemplateLiteral",r=(s,a)=>Gz(s)&&!s.computed&&s.key.type==="Identifier"&&s.key.name==="styles"&&a==="value";return e.match(t,(s,a)=>MD(s)&&a==="elements",r,...jur)||e.match(t,r,...jur)}function Azo(e){return e.match(t=>t.type==="TemplateLiteral",(t,r)=>Gz(t)&&!t.computed&&t.key.type==="Identifier"&&t.key.name==="template"&&r==="value",...jur)}function Gur(e,t){return ku(e,qg.Block|qg.Leading,({value:r})=>r===` ${t} `)}function Zei({node:e,parent:t},r){return Gur(e,r)||dzo(t)&&Gur(t,r)||t.type==="ExpressionStatement"&&Gur(t,r)}function dzo(e){return e.type==="AsConstExpression"||e.type==="TSAsExpression"&&e.typeAnnotation.type==="TSTypeReference"&&e.typeAnnotation.typeName.type==="Identifier"&&e.typeAnnotation.typeName.name==="const"}async function pzo(e,t,r){let{node:s}=r,a=s.quasis.map(y=>y.value.raw),o=0,g=a.reduce((y,B,v)=>v===0?B:y+"@prettier-placeholder-"+o+++"-id"+B,""),p=await e(g,{parser:"scss"}),f=bgr(r,t),m=fzo(p,f);if(!m)throw new Error("Couldn't insert all the expressions");return["`",Al([sl,m]),$c,"`"]}function fzo(e,t){if(!m_(t))return e;let r=0,s=Wve(fgr(e),a=>typeof a!="string"||!a.includes("@prettier-placeholder")?a:a.split(/@prettier-placeholder-(\d+)-id/u).map((o,g)=>g%2===0?Mpe(o):(r++,t[o])));return t.length===r?s:null}function Izo({node:e,parent:t,grandparent:r}){return r&&e.quasis&&t.type==="JSXExpressionContainer"&&r.type==="JSXElement"&&r.openingElement.name.name==="style"&&r.openingElement.attributes.some(s=>s.type==="JSXAttribute"&&s.name.name==="jsx")||t?.type==="TaggedTemplateExpression"&&t.tag.type==="Identifier"&&t.tag.name==="css"||t?.type==="TaggedTemplateExpression"&&t.tag.type==="MemberExpression"&&t.tag.object.name==="css"&&(t.tag.property.name==="global"||t.tag.property.name==="resolve")}function OIt(e){return e.type==="Identifier"&&e.name==="styled"}function T$n(e){return/^[A-Z]/u.test(e.object.name)&&e.property.name==="extend"}function Czo({parent:e}){if(!e||e.type!=="TaggedTemplateExpression")return!1;let t=e.tag.type==="ParenthesizedExpression"?e.tag.expression:e.tag;switch(t.type){case"MemberExpression":return OIt(t.object)||T$n(t);case"CallExpression":return OIt(t.callee)||t.callee.type==="MemberExpression"&&(t.callee.object.type==="MemberExpression"&&(OIt(t.callee.object.object)||T$n(t.callee.object))||t.callee.object.type==="CallExpression"&&OIt(t.callee.object.callee));case"Identifier":return t.name==="css";default:return!1}}function mzo({parent:e,grandparent:t}){return t?.type==="JSXAttribute"&&e.type==="JSXExpressionContainer"&&t.name.type==="JSXIdentifier"&&t.name.name==="css"}function hzo(e){if(Izo(e)||Czo(e)||mzo(e)||gzo(e))return pzo}var _zo=hzo;async function yzo(e,t,r){let{node:s}=r,a=s.quasis.length,o=bgr(r,t),g=[];for(let p=0;p2&&v[0].trim()===""&&v[1].trim()==="",X=G>2&&v[G-1].trim()===""&&v[G-2].trim()==="",U=v.every(ae=>/^\s*(?:#[^\n\r]*)?$/u.test(ae));if(!y&&/#[^\n\r]*$/u.test(v[G-1]))return null;let le=null;U?le=bzo(v):le=await e(B,{parser:"graphql"}),le?(le=Gei(le,!1),!m&&O&&g.push(""),g.push(le),!y&&X&&g.push("")):!m&&!y&&O&&g.push(""),T&&g.push(T)}return["`",Al([sl,sh(sl,g)]),sl,"`"]}function bzo(e){let t=[],r=!1,s=e.map(a=>a.trim());for(let[a,o]of s.entries())o!==""&&(s[a-1]===""&&r?t.push([sl,o]):t.push(o),r=!0);return t.length===0?null:sh(sl,t)}function Ezo({node:e,parent:t}){return Zei({node:e,parent:t},"GraphQL")||t&&(t.type==="TaggedTemplateExpression"&&(t.tag.type==="MemberExpression"&&t.tag.object.name==="graphql"&&t.tag.property.name==="experimental"||t.tag.type==="Identifier"&&(t.tag.name==="gql"||t.tag.name==="graphql"))||t.type==="CallExpression"&&t.callee.type==="Identifier"&&t.callee.name==="graphql")}function Bzo(e){if(Ezo(e))return yzo}var vzo=Bzo,Fur=0;async function Lei(e,t,r,s,a){let{node:o}=s,g=Fur;Fur=Fur+1>>>0;let p=U=>`PRETTIER_HTML_PLACEHOLDER_${U}_${g}_IN_JS`,f=o.quasis.map((U,le,ae)=>le===ae.length-1?U.value.cooked:U.value.cooked+p(le)).join(""),m=bgr(s,r),y=new RegExp(p(String.raw`(\d+)`),"gu"),B=0,v=await t(f,{parser:e,__onHtmlRoot(U){B=U.children.length}}),G=Wve(v,U=>{if(typeof U!="string")return U;let le=[],ae=U.split(y);for(let ge=0;ge1?Al(ra(G)):ra(G),O,"`"]))}function Szo(e){return Zei(e,"HTML")||e.match(t=>t.type==="TemplateLiteral",(t,r)=>t.type==="TaggedTemplateExpression"&&t.tag.type==="Identifier"&&t.tag.name==="html"&&r==="quasi")}var wzo=Lei.bind(void 0,"html"),Tzo=Lei.bind(void 0,"angular");function Nzo(e){if(Szo(e))return wzo;if(Azo(e))return Tzo}var Rzo=Nzo;async function Dzo(e,t,r){let{node:s}=r,a=PD(!1,s.quasis[0].value.raw,/((?:\\\\)*)\\`/gu,(f,m)=>"\\".repeat(m.length/2)+"`"),o=xzo(a),g=o!=="";g&&(a=PD(!1,a,new RegExp(`^${o}`,"gmu"),""));let p=Gei(await e(a,{parser:"markdown",__inJsTemplate:!0}),!0);return["`",g?Al([$c,p]):[mei,ujo(p)],$c,"`"]}function xzo(e){let t=e.match(/^([^\S\n]*)\S/mu);return t===null?"":t[1]}function kzo(e){if(Gzo(e))return Dzo}function Gzo({node:e,parent:t}){return t?.type==="TaggedTemplateExpression"&&e.quasis.length===1&&t.tag.type==="Identifier"&&(t.tag.name==="md"||t.tag.name==="markdown")}var Fzo=kzo;function Zzo(e){let{node:t}=e;if(t.type!=="TemplateLiteral"||Lzo(t))return;let r;for(let s of[_zo,vzo,Rzo,Fzo])if(r=s(e),!!r)return t.quasis.length===1&&t.quasis[0].value.raw.trim()===""?"``":async(...a)=>{let o=await r(...a);return o&&kQe({embed:!0,...o.label},o)}}function Lzo({quasis:e}){return e.some(({value:{cooked:t}})=>t===null)}var Vzo=Zzo,Wzo=/\*\/$/,Pzo=/^\/\*\*?/,Vei=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,Ozo=/(^|\s+)\/\/([^\n\r]*)/g,N$n=/^(\r?\n)+/,Mzo=/(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g,R$n=/(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g,Qzo=/(\r?\n|^) *\* ?/g,Wei=[];function Yzo(e){let t=e.match(Vei);return t?t[0].trimStart():""}function Hzo(e){let t=e.match(Vei),r=t?.[0];return r==null?e:e.slice(r.length)}function Xzo(e){let t=` -`;e=PD(!1,e.replace(Pzo,"").replace(Wzo,""),Qzo,"$1");let r="";for(;r!==e;)r=e,e=PD(!1,e,Mzo,`${t}$1 $2${t}`);e=e.replace(N$n,"").trimEnd();let s=Object.create(null),a=PD(!1,e,R$n,"").replace(N$n,"").trimEnd(),o;for(;o=R$n.exec(e);){let g=PD(!1,o[2],Ozo,"");if(typeof s[o[1]]=="string"||Array.isArray(s[o[1]])){let p=s[o[1]];s[o[1]]=[...Wei,...Array.isArray(p)?p:[p],g]}else s[o[1]]=g}return{comments:a,pragmas:s}}function Jzo({comments:e="",pragmas:t={}}){let r=` -`,s="/**",a=" *",o=" */",g=Object.keys(t),p=g.flatMap(m=>D$n(m,t[m])).map(m=>`${a} ${m}${r}`).join("");if(!e){if(g.length===0)return"";if(g.length===1&&!Array.isArray(t[g[0]])){let m=t[g[0]];return`${s} ${D$n(g[0],m)[0]}${o}`}}let f=e.split(r).map(m=>`${a} ${m}`).join(r)+r;return s+r+(e?f:"")+(e&&g.length>0?a+r:"")+p+o}function D$n(e,t){return[...Wei,...Array.isArray(t)?t:[t]].map(r=>`@${e} ${r}`.trim())}function Uzo(e){if(!e.startsWith("#!"))return"";let t=e.indexOf(` -`);return t===-1?e:e.slice(0,t)}var Kzo=Uzo;function jzo(e){let t=Kzo(e);t&&(e=e.slice(t.length+1));let r=Yzo(e),{pragmas:s,comments:a}=Xzo(r);return{shebang:t,text:e,pragmas:s,comments:a}}function zzo(e){let{shebang:t,text:r,pragmas:s,comments:a}=jzo(e),o=Hzo(r),g=Jzo({pragmas:{format:"",...s},comments:a.trimStart()});return(t?`${t} +`}}var $L=Symbol("MODE_BREAK"),OU=Symbol("MODE_FLAT"),xve=Symbol("cursor"),qur=Symbol("DOC_FILL_PRINTED_LENGTH");function Wei(){return{value:"",length:0,queue:[]}}function Czo(e,t){return $ur(e,{type:"indent"},t)}function mzo(e,t,r){return t===Number.NEGATIVE_INFINITY?e.root||Wei():t<0?$ur(e,{type:"dedent"},r):t?t.type==="root"?{...e,root:e}:$ur(e,{type:typeof t=="string"?"stringAlign":"numberAlign",n:t},r):e}function $ur(e,t,r){let s=t.type==="dedent"?e.queue.slice(0,-1):[...e.queue,t],a="",o=0,g=0,p=0;for(let T of s)switch(T.type){case"indent":y(),r.useTabs?f(1):m(r.tabWidth);break;case"stringAlign":y(),a+=T.n,o+=T.n.length;break;case"numberAlign":g+=1,p+=T.n;break;default:throw new Error(`Unexpected type '${T.type}'`)}return v(),{...e,value:a,length:o,queue:s};function f(T){a+=" ".repeat(T),o+=r.tabWidth*T}function m(T){a+=" ".repeat(T),o+=T}function y(){r.useTabs?B():v()}function B(){g>0&&f(g),k()}function v(){p>0&&m(p),k()}function k(){g=0,p=0}}function egr(e){let t=0,r=0,s=e.length;e:for(;s--;){let a=e[s];if(a===xve){r++;continue}for(let o=a.length-1;o>=0;o--){let g=a[o];if(g===" "||g===" ")t++;else{e[s]=a.slice(0,o+1);break e}}}if(t>0||r>0)for(e.length=s+1;r-- >0;)e.push(xve);return t}function MIt(e,t,r,s,a,o){if(r===Number.POSITIVE_INFINITY)return!0;let g=t.length,p=[e],f=[];for(;r>=0;){if(p.length===0){if(g===0)return!0;p.push(t[--g]);continue}let{mode:m,doc:y}=p.pop(),B=Sse(y);switch(B){case jpe:f.push(y),r-=Gve(y);break;case Dz:case Bse:{let v=B===Dz?y:y.parts,k=y[qur]??0;for(let T=v.length-1;T>=k;T--)p.push({mode:m,doc:v[T]});break}case zpe:case qpe:case efe:case Zz:p.push({mode:m,doc:y.contents});break;case $pe:r+=egr(f);break;case hQ:{if(o&&y.break)return!1;let v=y.break?$L:m,k=y.expandedStates&&v===$L?N0(!1,y.expandedStates,-1):y.contents;p.push({mode:v,doc:k});break}case MU:{let v=(y.groupId?a[y.groupId]||OU:m)===$L?y.breakContents:y.flatContents;v&&p.push({mode:m,doc:v});break}case r9:if(m===$L||y.hard)return!0;y.soft||(f.push(" "),r--);break;case tfe:s=!0;break;case vse:if(s)return!1;break}}return!1}function Pei(e,t){let r={},s=t.printWidth,a=Izo(t.endOfLine),o=0,g=[{ind:Wei(),mode:$L,doc:e}],p=[],f=!1,m=[],y=0;for(hjo(e);g.length>0;){let{ind:v,mode:k,doc:T}=g.pop();switch(Sse(T)){case jpe:{let O=a!==` +`?HD(!1,T,` +`,a):T;p.push(O),g.length>0&&(o+=Gve(O));break}case Dz:for(let O=T.length-1;O>=0;O--)g.push({ind:v,mode:k,doc:T[O]});break;case Ove:if(y>=2)throw new Error("There are too many 'cursor' in doc.");p.push(xve),y++;break;case zpe:g.push({ind:Czo(v,t),mode:k,doc:T.contents});break;case qpe:g.push({ind:mzo(v,T.n,t),mode:k,doc:T.contents});break;case $pe:o-=egr(p);break;case hQ:switch(k){case OU:if(!f){g.push({ind:v,mode:T.break?$L:OU,doc:T.contents});break}case $L:{f=!1;let O={ind:v,mode:OU,doc:T.contents},X=s-o,U=m.length>0;if(!T.break&&MIt(O,g,X,U,r))g.push(O);else if(T.expandedStates){let le=N0(!1,T.expandedStates,-1);if(T.break){g.push({ind:v,mode:$L,doc:le});break}else for(let ae=1;ae=T.expandedStates.length){g.push({ind:v,mode:$L,doc:le});break}else{let ge=T.expandedStates[ae],fe={ind:v,mode:OU,doc:ge};if(MIt(fe,g,X,U,r)){g.push(fe);break}}}else g.push({ind:v,mode:$L,doc:T.contents});break}}T.id&&(r[T.id]=N0(!1,g,-1).mode);break;case Bse:{let O=s-o,X=T[qur]??0,{parts:U}=T,le=U.length-X;if(le===0)break;let ae=U[X+0],ge=U[X+1],fe={ind:v,mode:OU,doc:ae},pe={ind:v,mode:$L,doc:ae},he=MIt(fe,[],O,m.length>0,r,!0);if(le===1){he?g.push(fe):g.push(pe);break}let be={ind:v,mode:OU,doc:ge},Te={ind:v,mode:$L,doc:ge};if(le===2){he?g.push(be,fe):g.push(Te,pe);break}let ke=U[X+2],x={ind:v,mode:k,doc:{...T,[qur]:X+2}};MIt({ind:v,mode:OU,doc:[ae,ge,ke]},[],O,m.length>0,r,!0)?g.push(x,be,fe):he?g.push(x,Te,fe):g.push(x,Te,pe);break}case MU:case efe:{let O=T.groupId?r[T.groupId]:k;if(O===$L){let X=T.type===MU?T.breakContents:T.negate?T.contents:dl(T.contents);X&&g.push({ind:v,mode:k,doc:X})}if(O===OU){let X=T.type===MU?T.flatContents:T.negate?dl(T.contents):T.contents;X&&g.push({ind:v,mode:k,doc:X})}break}case tfe:m.push({ind:v,mode:k,doc:T.contents});break;case vse:m.length>0&&g.push({ind:v,mode:k,doc:vei});break;case r9:switch(k){case OU:if(T.hard)f=!0;else{T.soft||(p.push(" "),o+=1);break}case $L:if(m.length>0){g.push({ind:v,mode:k,doc:T},...m.reverse()),m.length=0;break}T.literal?v.root?(p.push(a,v.root.value),o=v.root.length):(p.push(a),o=0):(o-=egr(p),p.push(a+v.value),o=v.length);break}break;case Zz:g.push({ind:v,mode:k,doc:T.contents});break;case Lz:break;default:throw new x5e(T)}g.length===0&&m.length>0&&(g.push(...m.reverse()),m.length=0)}let B=p.indexOf(xve);if(B!==-1){let v=p.indexOf(xve,B+1);if(v===-1)return{formatted:p.filter(X=>X!==xve).join("")};let k=p.slice(0,B).join(""),T=p.slice(B+1,v).join(""),O=p.slice(v+1).join("");return{formatted:k+T+O,cursorNodeStart:k.length,cursorNodeText:T}}return{formatted:p.join("")}}function hzo(e,t,r=0){let s=0;for(let a=r;a{if(o.push(t()),m.tail)return;let{tabWidth:y}=r,B=m.value.raw,v=B.includes(` +`)?bzo(B,y):p;p=v;let k=g[f],T=s[a][f],O=Ese(r.originalText,ah(m),dB(s.quasis[f+1]));if(!O){let U=Pei(k,{...r,printWidth:Number.POSITIVE_INFINITY}).formatted;U.includes(` +`)?O=!0:k=U}O&&(Gu(T)||T.type==="Identifier"||iv(T)||T.type==="ConditionalExpression"||T.type==="SequenceExpression"||QU(T)||Rz(T))&&(k=[dl([el,k]),el]);let X=v===0&&B.endsWith(` +`)?YU(Number.NEGATIVE_INFINITY,k):Tjo(k,v,y);o.push(ta(["${",X,xz,"}"]))},"quasis"),o.push("`"),o}function Ezo(e,t){let r=t("quasi");return F5e(r.label&&{tagged:!0,...r.label},[t("tag"),t(e.node.typeArguments?"typeArguments":"typeParameters"),xz,r])}function Bzo(e,t,r){let{node:s}=e,a=s.quasis[0].value.raw.trim().split(/\s*\|\s*/u);if(a.length>1||a.some(o=>o.length>0)){t.__inJestEach=!0;let o=e.map(r,"expressions");t.__inJestEach=!1;let g=[],p=o.map(v=>"${"+Pei(v,{...t,printWidth:Number.POSITIVE_INFINITY,endOfLine:"lf"}).formatted+"}"),f=[{hasLineBreak:!1,cells:[]}];for(let v=1;vv.cells.length)),y=Array.from({length:m}).fill(0),B=[{cells:a},...f.filter(v=>v.cells.length>0)];for(let{cells:v}of B.filter(k=>!k.hasLineBreak))for(let[k,T]of v.entries())y[k]=Math.max(y[k],Gve(T));return g.push(xz,"`",dl([ol,oh(ol,B.map(v=>oh(" | ",v.cells.map((k,T)=>v.hasLineBreak?k:k+" ".repeat(y[T]-Gve(k))))))]),ol,"`"),g}}function vzo(e,t){let{node:r}=e,s=t();return Gu(r)&&(s=ta([dl([el,s]),el])),["${",s,xz,"}"]}function wgr(e,t){return e.map(r=>vzo(r,t),"expressions")}function Qei(e,t){return Qve(e,r=>typeof r=="string"?t?HD(!1,r,/(\\*)`/gu,"$1$1\\`"):Mei(r):r)}function Mei(e){return HD(!1,e,/([\\`]|\$\{)/gu,String.raw`\$1`)}function Szo({node:e,parent:t}){let r=/^[fx]?(?:describe|it|test)$/u;return t.type==="TaggedTemplateExpression"&&t.quasi===e&&t.tag.type==="MemberExpression"&&t.tag.property.type==="Identifier"&&t.tag.property.name==="each"&&(t.tag.object.type==="Identifier"&&r.test(t.tag.object.name)||t.tag.object.type==="MemberExpression"&&t.tag.object.property.type==="Identifier"&&(t.tag.object.property.name==="only"||t.tag.object.property.name==="skip")&&t.tag.object.object.type==="Identifier"&&r.test(t.tag.object.object.name))}var tgr=[(e,t)=>e.type==="ObjectExpression"&&t==="properties",(e,t)=>e.type==="CallExpression"&&e.callee.type==="Identifier"&&e.callee.name==="Component"&&t==="arguments",(e,t)=>e.type==="Decorator"&&t==="expression"];function wzo(e){let t=s=>s.type==="TemplateLiteral",r=(s,a)=>Fz(s)&&!s.computed&&s.key.type==="Identifier"&&s.key.name==="styles"&&a==="value";return e.match(t,(s,a)=>XD(s)&&a==="elements",r,...tgr)||e.match(t,r,...tgr)}function Tzo(e){return e.match(t=>t.type==="TemplateLiteral",(t,r)=>Fz(t)&&!t.computed&&t.key.type==="Identifier"&&t.key.name==="template"&&r==="value",...tgr)}function Wur(e,t){return Gu(e,$g.Block|$g.Leading,({value:r})=>r===` ${t} `)}function Hei({node:e,parent:t},r){return Wur(e,r)||Nzo(t)&&Wur(t,r)||t.type==="ExpressionStatement"&&Wur(t,r)}function Nzo(e){return e.type==="AsConstExpression"||e.type==="TSAsExpression"&&e.typeAnnotation.type==="TSTypeReference"&&e.typeAnnotation.typeName.type==="Identifier"&&e.typeAnnotation.typeName.name==="const"}async function Rzo(e,t,r){let{node:s}=r,a=s.quasis.map(y=>y.value.raw),o=0,g=a.reduce((y,B,v)=>v===0?B:y+"@prettier-placeholder-"+o+++"-id"+B,""),p=await e(g,{parser:"scss"}),f=wgr(r,t),m=Dzo(p,f);if(!m)throw new Error("Couldn't insert all the expressions");return["`",dl([ol,m]),el,"`"]}function Dzo(e,t){if(!h_(t))return e;let r=0,s=Qve(_gr(e),a=>typeof a!="string"||!a.includes("@prettier-placeholder")?a:a.split(/@prettier-placeholder-(\d+)-id/u).map((o,g)=>g%2===0?Upe(o):(r++,t[o])));return t.length===r?s:null}function xzo({node:e,parent:t,grandparent:r}){return r&&e.quasis&&t.type==="JSXExpressionContainer"&&r.type==="JSXElement"&&r.openingElement.name.name==="style"&&r.openingElement.attributes.some(s=>s.type==="JSXAttribute"&&s.name.name==="jsx")||t?.type==="TaggedTemplateExpression"&&t.tag.type==="Identifier"&&t.tag.name==="css"||t?.type==="TaggedTemplateExpression"&&t.tag.type==="MemberExpression"&&t.tag.object.name==="css"&&(t.tag.property.name==="global"||t.tag.property.name==="resolve")}function HIt(e){return e.type==="Identifier"&&e.name==="styled"}function Z$n(e){return/^[A-Z]/u.test(e.object.name)&&e.property.name==="extend"}function kzo({parent:e}){if(!e||e.type!=="TaggedTemplateExpression")return!1;let t=e.tag.type==="ParenthesizedExpression"?e.tag.expression:e.tag;switch(t.type){case"MemberExpression":return HIt(t.object)||Z$n(t);case"CallExpression":return HIt(t.callee)||t.callee.type==="MemberExpression"&&(t.callee.object.type==="MemberExpression"&&(HIt(t.callee.object.object)||Z$n(t.callee.object))||t.callee.object.type==="CallExpression"&&HIt(t.callee.object.callee));case"Identifier":return t.name==="css";default:return!1}}function Gzo({parent:e,grandparent:t}){return t?.type==="JSXAttribute"&&e.type==="JSXExpressionContainer"&&t.name.type==="JSXIdentifier"&&t.name.name==="css"}function Fzo(e){if(xzo(e)||kzo(e)||Gzo(e)||wzo(e))return Rzo}var Zzo=Fzo;async function Lzo(e,t,r){let{node:s}=r,a=s.quasis.length,o=wgr(r,t),g=[];for(let p=0;p2&&v[0].trim()===""&&v[1].trim()==="",X=k>2&&v[k-1].trim()===""&&v[k-2].trim()==="",U=v.every(ae=>/^\s*(?:#[^\n\r]*)?$/u.test(ae));if(!y&&/#[^\n\r]*$/u.test(v[k-1]))return null;let le=null;U?le=Vzo(v):le=await e(B,{parser:"graphql"}),le?(le=Qei(le,!1),!m&&O&&g.push(""),g.push(le),!y&&X&&g.push("")):!m&&!y&&O&&g.push(""),T&&g.push(T)}return["`",dl([ol,oh(ol,g)]),ol,"`"]}function Vzo(e){let t=[],r=!1,s=e.map(a=>a.trim());for(let[a,o]of s.entries())o!==""&&(s[a-1]===""&&r?t.push([ol,o]):t.push(o),r=!0);return t.length===0?null:oh(ol,t)}function Wzo({node:e,parent:t}){return Hei({node:e,parent:t},"GraphQL")||t&&(t.type==="TaggedTemplateExpression"&&(t.tag.type==="MemberExpression"&&t.tag.object.name==="graphql"&&t.tag.property.name==="experimental"||t.tag.type==="Identifier"&&(t.tag.name==="gql"||t.tag.name==="graphql"))||t.type==="CallExpression"&&t.callee.type==="Identifier"&&t.callee.name==="graphql")}function Pzo(e){if(Wzo(e))return Lzo}var Ozo=Pzo,Pur=0;async function Yei(e,t,r,s,a){let{node:o}=s,g=Pur;Pur=Pur+1>>>0;let p=U=>`PRETTIER_HTML_PLACEHOLDER_${U}_${g}_IN_JS`,f=o.quasis.map((U,le,ae)=>le===ae.length-1?U.value.cooked:U.value.cooked+p(le)).join(""),m=wgr(s,r),y=new RegExp(p(String.raw`(\d+)`),"gu"),B=0,v=await t(f,{parser:e,__onHtmlRoot(U){B=U.children.length}}),k=Qve(v,U=>{if(typeof U!="string")return U;let le=[],ae=U.split(y);for(let ge=0;ge1?dl(ta(k)):ta(k),O,"`"]))}function Qzo(e){return Hei(e,"HTML")||e.match(t=>t.type==="TemplateLiteral",(t,r)=>t.type==="TaggedTemplateExpression"&&t.tag.type==="Identifier"&&t.tag.name==="html"&&r==="quasi")}var Mzo=Yei.bind(void 0,"html"),Hzo=Yei.bind(void 0,"angular");function Yzo(e){if(Qzo(e))return Mzo;if(Tzo(e))return Hzo}var Xzo=Yzo;async function Jzo(e,t,r){let{node:s}=r,a=HD(!1,s.quasis[0].value.raw,/((?:\\\\)*)\\`/gu,(f,m)=>"\\".repeat(m.length/2)+"`"),o=Uzo(a),g=o!=="";g&&(a=HD(!1,a,new RegExp(`^${o}`,"gmu"),""));let p=Qei(await e(a,{parser:"markdown",__inJsTemplate:!0}),!0);return["`",g?dl([el,p]):[Sei,Sjo(p)],el,"`"]}function Uzo(e){let t=e.match(/^([^\S\n]*)\S/mu);return t===null?"":t[1]}function Kzo(e){if(jzo(e))return Jzo}function jzo({node:e,parent:t}){return t?.type==="TaggedTemplateExpression"&&e.quasis.length===1&&t.tag.type==="Identifier"&&(t.tag.name==="md"||t.tag.name==="markdown")}var zzo=Kzo;function qzo(e){let{node:t}=e;if(t.type!=="TemplateLiteral"||$zo(t))return;let r;for(let s of[Zzo,Ozo,Xzo,zzo])if(r=s(e),!!r)return t.quasis.length===1&&t.quasis[0].value.raw.trim()===""?"``":async(...a)=>{let o=await r(...a);return o&&F5e({embed:!0,...o.label},o)}}function $zo({quasis:e}){return e.some(({value:{cooked:t}})=>t===null)}var eqo=qzo,tqo=/\*\/$/,rqo=/^\/\*\*?/,Xei=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,nqo=/(^|\s+)\/\/([^\n\r]*)/g,L$n=/^(\r?\n)+/,iqo=/(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g,V$n=/(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g,sqo=/(\r?\n|^) *\* ?/g,Jei=[];function oqo(e){let t=e.match(Xei);return t?t[0].trimStart():""}function aqo(e){let t=e.match(Xei),r=t?.[0];return r==null?e:e.slice(r.length)}function cqo(e){let t=` +`;e=HD(!1,e.replace(rqo,"").replace(tqo,""),sqo,"$1");let r="";for(;r!==e;)r=e,e=HD(!1,e,iqo,`${t}$1 $2${t}`);e=e.replace(L$n,"").trimEnd();let s=Object.create(null),a=HD(!1,e,V$n,"").replace(L$n,"").trimEnd(),o;for(;o=V$n.exec(e);){let g=HD(!1,o[2],nqo,"");if(typeof s[o[1]]=="string"||Array.isArray(s[o[1]])){let p=s[o[1]];s[o[1]]=[...Jei,...Array.isArray(p)?p:[p],g]}else s[o[1]]=g}return{comments:a,pragmas:s}}function lqo({comments:e="",pragmas:t={}}){let r=` +`,s="/**",a=" *",o=" */",g=Object.keys(t),p=g.flatMap(m=>W$n(m,t[m])).map(m=>`${a} ${m}${r}`).join("");if(!e){if(g.length===0)return"";if(g.length===1&&!Array.isArray(t[g[0]])){let m=t[g[0]];return`${s} ${W$n(g[0],m)[0]}${o}`}}let f=e.split(r).map(m=>`${a} ${m}`).join(r)+r;return s+r+(e?f:"")+(e&&g.length>0?a+r:"")+p+o}function W$n(e,t){return[...Jei,...Array.isArray(t)?t:[t]].map(r=>`@${e} ${r}`.trim())}function uqo(e){if(!e.startsWith("#!"))return"";let t=e.indexOf(` +`);return t===-1?e:e.slice(0,t)}var gqo=uqo;function Aqo(e){let t=gqo(e);t&&(e=e.slice(t.length+1));let r=oqo(e),{pragmas:s,comments:a}=cqo(r);return{shebang:t,text:e,pragmas:s,comments:a}}function dqo(e){let{shebang:t,text:r,pragmas:s,comments:a}=Aqo(e),o=aqo(r),g=lqo({pragmas:{format:"",...s},comments:a.trimStart()});return(t?`${t} `:"")+g+(o.startsWith(` `)?` `:` -`)+o}function qzo(e,t){let{originalText:r,[Symbol.for("comments")]:s,locStart:a,locEnd:o,[Symbol.for("printedComments")]:g}=t,{node:p}=e,f=a(p),m=o(p);for(let y of s)a(y)>=f&&o(y)<=m&&g.add(y);return r.slice(f,m)}var $zo=qzo;function zur(e,t){var r,s,a,o,g,p,f,m,y;if(e.isRoot)return!1;let{node:B,key:v,parent:G}=e;if(t.__isInHtmlInterpolation&&!t.bracketSpacing&&nqo(B)&&vQe(e))return!0;if(eqo(B))return!1;if(B.type==="Identifier"){if((r=B.extra)!=null&&r.parenthesized&&/^PRETTIER_HTML_PLACEHOLDER_\d+_\d+_IN_JS$/u.test(B.name)||v==="left"&&(B.name==="async"&&!G.await||B.name==="let")&&G.type==="ForOfStatement")return!0;if(B.name==="let"){let T=(s=e.findAncestor(O=>O.type==="ForOfStatement"))==null?void 0:s.left;if(T&&MF(T,O=>O===B))return!0}if(v==="object"&&B.name==="let"&&G.type==="MemberExpression"&&G.computed&&!G.optional){let T=e.findAncestor(X=>X.type==="ExpressionStatement"||X.type==="ForStatement"||X.type==="ForInStatement"),O=T?T.type==="ExpressionStatement"?T.expression:T.type==="ForStatement"?T.init:T.left:void 0;if(O&&MF(O,X=>X===B))return!0}if(v==="expression")switch(B.name){case"await":case"interface":case"module":case"using":case"yield":case"let":case"component":case"hook":case"type":{let T=e.findAncestor(O=>!GU(O));if(T!==G&&T.type==="ExpressionStatement")return!0}}return!1}if(B.type==="ObjectExpression"||B.type==="FunctionExpression"||B.type==="ClassExpression"||B.type==="DoExpression"){let T=(a=e.findAncestor(O=>O.type==="ExpressionStatement"))==null?void 0:a.expression;if(T&&MF(T,O=>O===B))return!0}if(B.type==="ObjectExpression"){let T=(o=e.findAncestor(O=>O.type==="ArrowFunctionExpression"))==null?void 0:o.body;if(T&&T.type!=="SequenceExpression"&&T.type!=="AssignmentExpression"&&MF(T,O=>O===B))return!0}switch(G.type){case"ParenthesizedExpression":return!1;case"ClassDeclaration":case"ClassExpression":if(v==="superClass"&&(B.type==="ArrowFunctionExpression"||B.type==="AssignmentExpression"||B.type==="AwaitExpression"||B.type==="BinaryExpression"||B.type==="ConditionalExpression"||B.type==="LogicalExpression"||B.type==="NewExpression"||B.type==="ObjectExpression"||B.type==="SequenceExpression"||B.type==="TaggedTemplateExpression"||B.type==="UnaryExpression"||B.type==="UpdateExpression"||B.type==="YieldExpression"||B.type==="TSNonNullExpression"||B.type==="ClassExpression"&&m_(B.decorators)))return!0;break;case"ExportDefaultDeclaration":return Pei(e,t)||B.type==="SequenceExpression";case"Decorator":if(v==="expression"&&!sqo(B))return!0;break;case"TypeAnnotation":if(e.match(void 0,void 0,(T,O)=>O==="returnType"&&T.type==="ArrowFunctionExpression")&&rqo(B))return!0;break;case"BinaryExpression":if(v==="left"&&(G.operator==="in"||G.operator==="instanceof")&&B.type==="UnaryExpression")return!0;break;case"VariableDeclarator":if(v==="init"&&e.match(void 0,void 0,(T,O)=>O==="declarations"&&T.type==="VariableDeclaration",(T,O)=>O==="left"&&T.type==="ForInStatement"))return!0;break}switch(B.type){case"UpdateExpression":if(G.type==="UnaryExpression")return B.prefix&&(B.operator==="++"&&G.operator==="+"||B.operator==="--"&&G.operator==="-");case"UnaryExpression":switch(G.type){case"UnaryExpression":return B.operator===G.operator&&(B.operator==="+"||B.operator==="-");case"BindExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":return v==="object";case"TaggedTemplateExpression":return!0;case"NewExpression":case"CallExpression":case"OptionalCallExpression":return v==="callee";case"BinaryExpression":return v==="left"&&G.operator==="**";case"TSNonNullExpression":return!0;default:return!1}case"BinaryExpression":if(G.type==="UpdateExpression"||B.operator==="in"&&tqo(e))return!0;if(B.operator==="|>"&&(g=B.extra)!=null&&g.parenthesized){let T=e.grandparent;if(T.type==="BinaryExpression"&&T.operator==="|>")return!0}case"TSTypeAssertion":case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":case"LogicalExpression":switch(G.type){case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":return!GU(B);case"ConditionalExpression":return GU(B)||k7o(B);case"CallExpression":case"NewExpression":case"OptionalCallExpression":return v==="callee";case"ClassExpression":case"ClassDeclaration":return v==="superClass";case"TSTypeAssertion":case"TaggedTemplateExpression":case"UnaryExpression":case"JSXSpreadAttribute":case"SpreadElement":case"BindExpression":case"AwaitExpression":case"TSNonNullExpression":case"UpdateExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":return v==="object";case"AssignmentExpression":case"AssignmentPattern":return v==="left"&&(B.type==="TSTypeAssertion"||GU(B));case"LogicalExpression":if(B.type==="LogicalExpression")return G.operator!==B.operator;case"BinaryExpression":{let{operator:T,type:O}=B;if(!T&&O!=="TSTypeAssertion")return!0;let X=HIt(T),U=G.operator,le=HIt(U);return le>X||v==="right"&&le===X||le===X&&!Agr(U,T)?!0:le");default:return!1}case"TSFunctionType":if(e.match(T=>T.type==="TSFunctionType",(T,O)=>O==="typeAnnotation"&&T.type==="TSTypeAnnotation",(T,O)=>O==="returnType"&&T.type==="ArrowFunctionExpression"))return!0;case"TSConditionalType":case"TSConstructorType":case"ConditionalTypeAnnotation":if(v==="extendsType"&&Cse(B)&&G.type===B.type||v==="checkType"&&Cse(G))return!0;if(v==="extendsType"&&G.type==="TSConditionalType"){let{typeAnnotation:T}=B.returnType||B.typeAnnotation;if(T.type==="TSTypePredicate"&&T.typeAnnotation&&(T=T.typeAnnotation.typeAnnotation),T.type==="TSInferType"&&T.typeParameter.constraint)return!0}case"TSUnionType":case"TSIntersectionType":if((Ise(G)||dgr(G))&&G.types.length>1&&(!B.types||B.types.length>1))return!0;case"TSInferType":if(B.type==="TSInferType"){if(G.type==="TSRestType")return!1;if(v==="types"&&(G.type==="TSUnionType"||G.type==="TSIntersectionType")&&B.typeParameter.type==="TSTypeParameter"&&B.typeParameter.constraint)return!0}case"TSTypeOperator":return G.type==="TSArrayType"||G.type==="TSOptionalType"||G.type==="TSRestType"||v==="objectType"&&G.type==="TSIndexedAccessType"||G.type==="TSTypeOperator"||G.type==="TSTypeAnnotation"&&e.grandparent.type.startsWith("TSJSDoc");case"TSTypeQuery":return v==="objectType"&&G.type==="TSIndexedAccessType"||v==="elementType"&&G.type==="TSArrayType";case"TypeOperator":return G.type==="ArrayTypeAnnotation"||G.type==="NullableTypeAnnotation"||v==="objectType"&&(G.type==="IndexedAccessType"||G.type==="OptionalIndexedAccessType")||G.type==="TypeOperator";case"TypeofTypeAnnotation":return v==="objectType"&&(G.type==="IndexedAccessType"||G.type==="OptionalIndexedAccessType")||v==="elementType"&&G.type==="ArrayTypeAnnotation";case"ArrayTypeAnnotation":return G.type==="NullableTypeAnnotation";case"IntersectionTypeAnnotation":case"UnionTypeAnnotation":return G.type==="TypeOperator"||G.type==="ArrayTypeAnnotation"||G.type==="NullableTypeAnnotation"||G.type==="IntersectionTypeAnnotation"||G.type==="UnionTypeAnnotation"||v==="objectType"&&(G.type==="IndexedAccessType"||G.type==="OptionalIndexedAccessType");case"InferTypeAnnotation":case"NullableTypeAnnotation":return G.type==="ArrayTypeAnnotation"||v==="objectType"&&(G.type==="IndexedAccessType"||G.type==="OptionalIndexedAccessType");case"ComponentTypeAnnotation":case"FunctionTypeAnnotation":{if(B.type==="ComponentTypeAnnotation"&&(B.rendersType===null||B.rendersType===void 0))return!1;if(e.match(void 0,(O,X)=>X==="typeAnnotation"&&O.type==="TypeAnnotation",(O,X)=>X==="returnType"&&O.type==="ArrowFunctionExpression")||e.match(void 0,(O,X)=>X==="typeAnnotation"&&O.type==="TypePredicate",(O,X)=>X==="typeAnnotation"&&O.type==="TypeAnnotation",(O,X)=>X==="returnType"&&O.type==="ArrowFunctionExpression"))return!0;let T=G.type==="NullableTypeAnnotation"?e.grandparent:G;return T.type==="UnionTypeAnnotation"||T.type==="IntersectionTypeAnnotation"||T.type==="ArrayTypeAnnotation"||v==="objectType"&&(T.type==="IndexedAccessType"||T.type==="OptionalIndexedAccessType")||v==="checkType"&&G.type==="ConditionalTypeAnnotation"||v==="extendsType"&&G.type==="ConditionalTypeAnnotation"&&((p=B.returnType)==null?void 0:p.type)==="InferTypeAnnotation"&&((f=B.returnType)==null?void 0:f.typeParameter.bound)||T.type==="NullableTypeAnnotation"||G.type==="FunctionTypeParam"&&G.name===null&&xk(B).some(O=>{var X;return((X=O.typeAnnotation)==null?void 0:X.type)==="NullableTypeAnnotation"})}case"OptionalIndexedAccessType":return v==="objectType"&&G.type==="IndexedAccessType";case"StringLiteral":case"NumericLiteral":case"Literal":if(typeof B.value=="string"&&G.type==="ExpressionStatement"&&!G.directive){let T=e.grandparent;return T.type==="Program"||T.type==="BlockStatement"}return v==="object"&&G.type==="MemberExpression"&&typeof B.value=="number";case"AssignmentExpression":{let T=e.grandparent;return v==="body"&&G.type==="ArrowFunctionExpression"?!0:v==="key"&&(G.type==="ClassProperty"||G.type==="PropertyDefinition")&&G.computed||(v==="init"||v==="update")&&G.type==="ForStatement"?!1:G.type==="ExpressionStatement"?B.left.type==="ObjectPattern":!(v==="key"&&G.type==="TSPropertySignature"||G.type==="AssignmentExpression"||G.type==="SequenceExpression"&&T.type==="ForStatement"&&(T.init===G||T.update===G)||v==="value"&&G.type==="Property"&&T.type==="ObjectPattern"&&T.properties.includes(G)||G.type==="NGChainedExpression"||v==="node"&&G.type==="JsExpressionRoot")}case"ConditionalExpression":switch(G.type){case"TaggedTemplateExpression":case"UnaryExpression":case"SpreadElement":case"BinaryExpression":case"LogicalExpression":case"NGPipeExpression":case"ExportDefaultDeclaration":case"AwaitExpression":case"JSXSpreadAttribute":case"TSTypeAssertion":case"TypeCastExpression":case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":case"TSNonNullExpression":return!0;case"NewExpression":case"CallExpression":case"OptionalCallExpression":return v==="callee";case"ConditionalExpression":return t.experimentalTernaries?!1:v==="test";case"MemberExpression":case"OptionalMemberExpression":return v==="object";default:return!1}case"FunctionExpression":switch(G.type){case"NewExpression":case"CallExpression":case"OptionalCallExpression":return v==="callee";case"TaggedTemplateExpression":return!0;default:return!1}case"ArrowFunctionExpression":switch(G.type){case"BinaryExpression":return G.operator!=="|>"||((m=B.extra)==null?void 0:m.parenthesized);case"NewExpression":case"CallExpression":case"OptionalCallExpression":return v==="callee";case"MemberExpression":case"OptionalMemberExpression":return v==="object";case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":case"TSNonNullExpression":case"BindExpression":case"TaggedTemplateExpression":case"UnaryExpression":case"LogicalExpression":case"AwaitExpression":case"TSTypeAssertion":return!0;case"ConditionalExpression":return v==="test";default:return!1}case"ClassExpression":switch(G.type){case"NewExpression":return v==="callee";default:return!1}case"OptionalMemberExpression":case"OptionalCallExpression":case"CallExpression":case"MemberExpression":if(iqo(e))return!0;case"TaggedTemplateExpression":case"TSNonNullExpression":if(v==="callee"&&(G.type==="BindExpression"||G.type==="NewExpression")){let T=B;for(;T;)switch(T.type){case"CallExpression":case"OptionalCallExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":case"BindExpression":T=T.object;break;case"TaggedTemplateExpression":T=T.tag;break;case"TSNonNullExpression":T=T.expression;break;default:return!1}}return!1;case"BindExpression":return v==="callee"&&(G.type==="BindExpression"||G.type==="NewExpression")||v==="object"&&nv(G);case"NGPipeExpression":return!(G.type==="NGRoot"||G.type==="NGMicrosyntaxExpression"||G.type==="ObjectProperty"&&!((y=B.extra)!=null&&y.parenthesized)||MD(G)||v==="arguments"&&Oh(G)||v==="right"&&G.type==="NGPipeExpression"||v==="property"&&G.type==="MemberExpression"||G.type==="AssignmentExpression");case"JSXFragment":case"JSXElement":return v==="callee"||v==="left"&&G.type==="BinaryExpression"&&G.operator==="<"||!MD(G)&&G.type!=="ArrowFunctionExpression"&&G.type!=="AssignmentExpression"&&G.type!=="AssignmentPattern"&&G.type!=="BinaryExpression"&&G.type!=="NewExpression"&&G.type!=="ConditionalExpression"&&G.type!=="ExpressionStatement"&&G.type!=="JsExpressionRoot"&&G.type!=="JSXAttribute"&&G.type!=="JSXElement"&&G.type!=="JSXExpressionContainer"&&G.type!=="JSXFragment"&&G.type!=="LogicalExpression"&&!Oh(G)&&!Gz(G)&&G.type!=="ReturnStatement"&&G.type!=="ThrowStatement"&&G.type!=="TypeCastExpression"&&G.type!=="VariableDeclarator"&&G.type!=="YieldExpression";case"TSInstantiationExpression":return v==="object"&&nv(G)}return!1}var eqo=H_(["BlockStatement","BreakStatement","ComponentDeclaration","ClassBody","ClassDeclaration","ClassMethod","ClassProperty","PropertyDefinition","ClassPrivateProperty","ContinueStatement","DebuggerStatement","DeclareComponent","DeclareClass","DeclareExportAllDeclaration","DeclareExportDeclaration","DeclareFunction","DeclareHook","DeclareInterface","DeclareModule","DeclareModuleExports","DeclareNamespace","DeclareVariable","DeclareEnum","DoWhileStatement","EnumDeclaration","ExportAllDeclaration","ExportDefaultDeclaration","ExportNamedDeclaration","ExpressionStatement","ForInStatement","ForOfStatement","ForStatement","FunctionDeclaration","HookDeclaration","IfStatement","ImportDeclaration","InterfaceDeclaration","LabeledStatement","MethodDefinition","ReturnStatement","SwitchStatement","ThrowStatement","TryStatement","TSDeclareFunction","TSEnumDeclaration","TSImportEqualsDeclaration","TSInterfaceDeclaration","TSModuleDeclaration","TSNamespaceExportDeclaration","TypeAlias","VariableDeclaration","WhileStatement","WithStatement"]);function tqo(e){let t=0,{node:r}=e;for(;r;){let s=e.getParentNode(t++);if(s?.type==="ForStatement"&&s.init===r)return!0;r=s}return!1}function rqo(e){return Mur(e,t=>t.type==="ObjectTypeAnnotation"&&Mur(t,r=>r.type==="FunctionTypeAnnotation"))}function nqo(e){return u5(e)}function vQe(e){let{parent:t,key:r}=e;switch(t.type){case"NGPipeExpression":if(r==="arguments"&&e.isLast)return e.callParent(vQe);break;case"ObjectProperty":if(r==="value")return e.callParent(()=>e.key==="properties"&&e.isLast);break;case"BinaryExpression":case"LogicalExpression":if(r==="right")return e.callParent(vQe);break;case"ConditionalExpression":if(r==="alternate")return e.callParent(vQe);break;case"UnaryExpression":if(t.prefix)return e.callParent(vQe);break}return!1}function Pei(e,t){let{node:r,parent:s}=e;return r.type==="FunctionExpression"||r.type==="ClassExpression"?s.type==="ExportDefaultDeclaration"||!zur(e,t):!cgr(r)||s.type!=="ExportDefaultDeclaration"&&zur(e,t)?!1:e.call(()=>Pei(e,t),...tei(r))}function iqo(e){return!!(e.match(void 0,(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(t=>t.type==="OptionalCallExpression"||t.type==="OptionalMemberExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(t=>t.type==="OptionalCallExpression"||t.type==="OptionalMemberExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(void 0,(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(void 0,(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(t=>t.type==="OptionalMemberExpression"||t.type==="OptionalCallExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&(t.type==="CallExpression"||t.type==="NewExpression"))||e.match(t=>t.type==="OptionalMemberExpression"||t.type==="OptionalCallExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&t.type==="CallExpression")||e.match(t=>t.type==="CallExpression"||t.type==="MemberExpression",(t,r)=>r==="expression"&&t.type==="ChainExpression")&&(e.match(void 0,void 0,(t,r)=>r==="callee"&&(t.type==="CallExpression"&&!t.optional||t.type==="NewExpression")||r==="object"&&t.type==="MemberExpression"&&!t.optional)||e.match(void 0,void 0,(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&t.type==="CallExpression"))||e.match(t=>t.type==="CallExpression"||t.type==="MemberExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&t.type==="CallExpression"))}function qur(e){return e.type==="Identifier"?!0:nv(e)?!e.computed&&!e.optional&&e.property.type==="Identifier"&&qur(e.object):!1}function sqo(e){return e.type==="ChainExpression"&&(e=e.expression),qur(e)||Oh(e)&&!e.optional&&qur(e.callee)}var zpe=zur;function oqo(e,t){let r=t-1;r=xve(e,r,{backwards:!0}),r=kve(e,r,{backwards:!0}),r=xve(e,r,{backwards:!0});let s=kve(e,r,{backwards:!0});return r!==s}var aqo=oqo,cqo=()=>!0;function Egr(e,t){let r=e.node;return r.printed=!0,t.printer.printComment(e,t)}function lqo(e,t){var r;let s=e.node,a=[Egr(e,t)],{printer:o,originalText:g,locStart:p,locEnd:f}=t;if((r=o.isBlockComment)!=null&&r.call(o,s)){let y=KW(g,f(s))?KW(g,p(s),{backwards:!0})?sl:Fg:" ";a.push(y)}else a.push(sl);let m=kve(g,xve(g,f(s)));return m!==!1&&KW(g,m)&&a.push(sl),a}function uqo(e,t,r){var s;let a=e.node,o=Egr(e,t),{printer:g,originalText:p,locStart:f}=t,m=(s=g.isBlockComment)==null?void 0:s.call(g,a);if(r!=null&&r.hasLineSuffix&&!(r!=null&&r.isBlock)||KW(p,f(a),{backwards:!0})){let y=aqo(p,f(a));return{doc:w$n([sl,y?sl:"",o]),isBlock:m,hasLineSuffix:!0}}return!m||r!=null&&r.hasLineSuffix?{doc:[w$n([" ",o]),VU],isBlock:m,hasLineSuffix:!0}:{doc:[" ",o],isBlock:m,hasLineSuffix:!1}}function e2(e,t,r={}){let{node:s}=e;if(!m_(s?.comments))return"";let{indent:a=!1,marker:o,filter:g=cqo}=r,p=[];if(e.each(({node:m})=>{m.leading||m.trailing||m.marker!==o||!g(m)||p.push(Egr(e,t))},"comments"),p.length===0)return"";let f=sh(sl,p);return a?Al([sl,f]):f}function Oei(e,t){let r=e.node;if(!r)return{};let s=t[Symbol.for("printedComments")];if((r.comments||[]).filter(p=>!s.has(p)).length===0)return{leading:"",trailing:""};let a=[],o=[],g;return e.each(()=>{let p=e.node;if(s!=null&&s.has(p))return;let{leading:f,trailing:m}=p;f?a.push(lqo(e,t)):m&&(g=uqo(e,t,g),o.push(g.doc))},"comments"),{leading:a,trailing:o}}function l5(e,t,r){let{leading:s,trailing:a}=Oei(e,r);return!s&&!a?t:Hur(t,o=>[s,o,a])}var gqo=class extends Error{name="UnexpectedNodeError";constructor(e,t,r="type"){super(`Unexpected ${t} node ${r}: ${JSON.stringify(e[r])}.`),this.node=e}},Ove=gqo;function Aqo(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}var a5,dqo=class{constructor(e){Q6o(this,a5),Y6o(this,a5,new Set(e))}getLeadingWhitespaceCount(e){let t=gse(this,a5),r=0;for(let s=0;s=0&&t.has(e.charAt(s));s--)r++;return r}getLeadingWhitespace(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(0,t)}getTrailingWhitespace(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(e.length-t)}hasLeadingWhitespace(e){return gse(this,a5).has(e.charAt(0))}hasTrailingWhitespace(e){return gse(this,a5).has(T0(!1,e,-1))}trimStart(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(t)}trimEnd(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(0,e.length-t)}trim(e){return this.trimEnd(this.trimStart(e))}split(e,t=!1){let r=`[${Aqo([...gse(this,a5)].join(""))}]+`,s=new RegExp(t?`(${r})`:r,"u");return e.split(s)}hasWhitespaceCharacter(e){let t=gse(this,a5);return Array.prototype.some.call(e,r=>t.has(r))}hasNonWhitespaceCharacter(e){let t=gse(this,a5);return Array.prototype.some.call(e,r=>!t.has(r))}isWhitespaceOnly(e){let t=gse(this,a5);return Array.prototype.every.call(e,r=>t.has(r))}};a5=new WeakMap;var pqo=dqo,MIt=new pqo(` -\r `),Zur=e=>e===""||e===Fg||e===sl||e===$c;function fqo(e,t,r){var s,a,o,g,p;let{node:f}=e;if(f.type==="JSXElement"&&Rqo(f))return[r("openingElement"),r("closingElement")];let m=f.type==="JSXElement"?r("openingElement"):r("openingFragment"),y=f.type==="JSXElement"?r("closingElement"):r("closingFragment");if(f.children.length===1&&f.children[0].type==="JSXExpressionContainer"&&(f.children[0].expression.type==="TemplateLiteral"||f.children[0].expression.type==="TaggedTemplateExpression"))return[m,...e.map(r,"children"),y];f.children=f.children.map(be=>Dqo(be)?{type:"JSXText",value:" ",raw:" "}:be);let B=f.children.some(fR),v=f.children.filter(be=>be.type==="JSXExpressionContainer").length>1,G=f.type==="JSXElement"&&f.openingElement.attributes.length>1,T=QF(m)||B||G||v,O=e.parent.rootMarker==="mdx",X=t.singleQuote?"{' '}":'{" "}',U=O?Fg:jI([X,$c]," "),le=((a=(s=f.openingElement)==null?void 0:s.name)==null?void 0:a.name)==="fbt",ae=Iqo(e,t,r,U,le),ge=f.children.some(be=>DQe(be));for(let be=ae.length-2;be>=0;be--){let Te=ae[be]===""&&ae[be+1]==="",ke=ae[be]===sl&&ae[be+1]===""&&ae[be+2]===sl,x=(ae[be]===$c||ae[be]===sl)&&ae[be+1]===""&&ae[be+2]===U,et=ae[be]===U&&ae[be+1]===""&&(ae[be+2]===$c||ae[be+2]===sl),Ue=ae[be]===U&&ae[be+1]===""&&ae[be+2]===U,Je=ae[be]===$c&&ae[be+1]===""&&ae[be+2]===sl||ae[be]===sl&&ae[be+1]===""&&ae[be+2]===$c;ke&&ge||Te||x||Ue||Je?ae.splice(be,2):et&&ae.splice(be+1,2)}for(;ae.length>0&&Zur(T0(!1,ae,-1));)ae.pop();for(;ae.length>1&&Zur(ae[0])&&Zur(ae[1]);)ae.shift(),ae.shift();let fe=[""];for(let[be,Te]of ae.entries()){if(Te===U){if(be===1&&cjo(ae[be-1])){if(ae.length===2){fe.push([fe.pop(),X]);continue}fe.push([X,sl],"");continue}else if(be===ae.length-1){fe.push([fe.pop(),X]);continue}else if(ae[be-1]===""&&ae[be-2]===sl){fe.push([fe.pop(),X]);continue}}be%2===0?fe.push([fe.pop(),Te]):fe.push(Te,""),QF(Te)&&(T=!0)}let pe=ge?Iei(fe):ra(fe,{shouldBreak:!0});if(((o=t.cursorNode)==null?void 0:o.type)==="JSXText"&&f.children.includes(t.cursorNode)?pe=[WIt,pe,WIt]:((g=t.nodeBeforeCursor)==null?void 0:g.type)==="JSXText"&&f.children.includes(t.nodeBeforeCursor)?pe=[WIt,pe]:((p=t.nodeAfterCursor)==null?void 0:p.type)==="JSXText"&&f.children.includes(t.nodeAfterCursor)&&(pe=[pe,WIt]),O)return pe;let he=ra([m,Al([sl,pe]),sl,y]);return T?he:Ope([ra([m,...ae,y]),he])}function Iqo(e,t,r,s,a){let o="",g=[o];function p(m){o=m,g.push([g.pop(),m])}function f(m){m!==""&&(o=m,g.push(m,""))}return e.each(({node:m,next:y})=>{if(m.type==="JSXText"){let B=IM(m);if(DQe(m)){let v=MIt.split(B,!0);v[0]===""&&(v.shift(),/\n/u.test(v[0])?f(k$n(a,v[1],m,y)):f(s),v.shift());let G;if(T0(!1,v,-1)===""&&(v.pop(),G=v.pop()),v.length===0)return;for(let[T,O]of v.entries())T%2===1?f(Fg):p(O);G!==void 0?/\n/u.test(G)?f(k$n(a,o,m,y)):f(s):f(x$n(a,o,m,y))}else/\n/u.test(B)?B.match(/\n/gu).length>1&&f(sl):f(s)}else{let B=r();if(p(B),y&&DQe(y)){let v=MIt.trim(IM(y)),[G]=MIt.split(v);f(x$n(a,G,m,y))}else f(sl)}},"children"),g}function x$n(e,t,r,s){return e?"":r.type==="JSXElement"&&!r.closingElement||s?.type==="JSXElement"&&!s.closingElement?t.length===1?$c:sl:$c}function k$n(e,t,r,s){return e?sl:t.length===1?r.type==="JSXElement"&&!r.closingElement||s?.type==="JSXElement"&&!s.closingElement?sl:$c:sl}var Cqo=new Set(["ArrayExpression","TupleExpression","JSXAttribute","JSXElement","JSXExpressionContainer","JSXFragment","ExpressionStatement","CallExpression","OptionalCallExpression","ConditionalExpression","JsExpressionRoot"]);function mqo(e,t,r){let{parent:s}=e;if(Cqo.has(s.type))return t;let a=e.match(void 0,g=>g.type==="ArrowFunctionExpression",Oh,g=>g.type==="JSXExpressionContainer"),o=zpe(e,r);return ra([o?"":jI("("),Al([$c,t]),$c,o?"":jI(")")],{shouldBreak:a})}function hqo(e,t,r){let{node:s}=e,a=[];if(a.push(r("name")),s.value){let o;if($L(s.value)){let g=IM(s.value),p=PD(!1,PD(!1,g.slice(1,-1),"'","'"),""",'"'),f=j$n(p,t.jsxSingleQuote);p=f==='"'?PD(!1,p,'"',"""):PD(!1,p,"'","'"),o=e.call(()=>l5(e,Mpe(f+p+f),t),"value")}else o=r("value");a.push("=",o)}return a}function _qo(e,t,r){let{node:s}=e,a=(o,g)=>o.type==="JSXEmptyExpression"||!ku(o)&&(MD(o)||u5(o)||o.type==="ArrowFunctionExpression"||o.type==="AwaitExpression"&&(a(o.argument,o)||o.argument.type==="JSXElement")||Oh(o)||o.type==="ChainExpression"&&Oh(o.expression)||o.type==="FunctionExpression"||o.type==="TemplateLiteral"||o.type==="TaggedTemplateExpression"||o.type==="DoExpression"||fR(g)&&(o.type==="ConditionalExpression"||Nz(o)));return a(s.expression,e.parent)?ra(["{",r("expression"),Dz,"}"]):ra(["{",Al([$c,r("expression")]),$c,Dz,"}"])}function yqo(e,t,r){var s,a;let{node:o}=e,g=ku(o.name)||ku(o.typeParameters)||ku(o.typeArguments);if(o.selfClosing&&o.attributes.length===0&&!g)return["<",r("name"),o.typeArguments?r("typeArguments"):r("typeParameters")," />"];if(((s=o.attributes)==null?void 0:s.length)===1&&$L(o.attributes[0].value)&&!o.attributes[0].value.value.includes(` -`)&&!g&&!ku(o.attributes[0]))return ra(["<",r("name"),o.typeArguments?r("typeArguments"):r("typeParameters")," ",...e.map(r,"attributes"),o.selfClosing?" />":">"]);let p=(a=o.attributes)==null?void 0:a.some(m=>$L(m.value)&&m.value.value.includes(` -`)),f=t.singleAttributePerLine&&o.attributes.length>1?sl:Fg;return ra(["<",r("name"),o.typeArguments?r("typeArguments"):r("typeParameters"),Al(e.map(()=>[f,r()],"attributes")),...bqo(o,t,g)],{shouldBreak:p})}function bqo(e,t,r){return e.selfClosing?[Fg,"/>"]:Eqo(e,t,r)?[">"]:[$c,">"]}function Eqo(e,t,r){let s=e.attributes.length>0&&ku(T0(!1,e.attributes,-1),qg.Trailing);return e.attributes.length===0&&!r||(t.bracketSameLine||t.jsxBracketSameLine)&&(!r||e.attributes.length>0)&&!s}function Bqo(e,t,r){let{node:s}=e,a=[];a.push(""),a}function vqo(e,t){let{node:r}=e,s=ku(r),a=ku(r,qg.Line),o=r.type==="JSXOpeningFragment";return[o?"<":""]}function Sqo(e,t,r){let s=l5(e,fqo(e,t,r),t);return mqo(e,s,t)}function wqo(e,t){let{node:r}=e,s=ku(r,qg.Line);return[e2(e,t,{indent:s}),s?sl:""]}function Tqo(e,t,r){let{node:s}=e;return["{",e.call(({node:a})=>{let o=["...",r()];return!ku(a)||!Rei(e)?o:[Al([$c,l5(e,o,t)]),$c]},s.type==="JSXSpreadAttribute"?"argument":"expression"),"}"]}function Nqo(e,t,r){let{node:s}=e;if(s.type.startsWith("JSX"))switch(s.type){case"JSXAttribute":return hqo(e,t,r);case"JSXIdentifier":return s.name;case"JSXNamespacedName":return sh(":",[r("namespace"),r("name")]);case"JSXMemberExpression":return sh(".",[r("object"),r("property")]);case"JSXSpreadAttribute":case"JSXSpreadChild":return Tqo(e,t,r);case"JSXExpressionContainer":return _qo(e,t,r);case"JSXFragment":case"JSXElement":return Sqo(e,t,r);case"JSXOpeningElement":return yqo(e,t,r);case"JSXClosingElement":return Bqo(e,t,r);case"JSXOpeningFragment":case"JSXClosingFragment":return vqo(e,t);case"JSXEmptyExpression":return wqo(e,t);case"JSXText":throw new Error("JSXText should be handled by JSXElement");default:throw new Ove(s,"JSX")}}function Rqo(e){if(e.children.length===0)return!0;if(e.children.length>1)return!1;let t=e.children[0];return t.type==="JSXText"&&!DQe(t)}function DQe(e){return e.type==="JSXText"&&(MIt.hasNonWhitespaceCharacter(IM(e))||!/\n/u.test(IM(e)))}function Dqo(e){return e.type==="JSXExpressionContainer"&&$L(e.expression)&&e.expression.value===" "&&!ku(e.expression)}function xqo(e){let{node:t,parent:r}=e;if(!fR(t)||!fR(r))return!1;let{index:s,siblings:a}=e,o;for(let g=s;g>0;g--){let p=a[g-1];if(!(p.type==="JSXText"&&!DQe(p))){o=p;break}}return o?.type==="JSXExpressionContainer"&&o.expression.type==="JSXEmptyExpression"&&tCt(o.expression)}function kqo(e){return tCt(e.node)||xqo(e)}var Mei=kqo,Gqo=0;function Qei(e,t,r){var s;let{node:a,parent:o,grandparent:g,key:p}=e,f=p!=="body"&&(o.type==="IfStatement"||o.type==="WhileStatement"||o.type==="SwitchStatement"||o.type==="DoWhileStatement"),m=a.operator==="|>"&&((s=e.root.extra)==null?void 0:s.__isUsingHackPipeline),y=$ur(e,r,t,!1,f);if(f)return y;if(m)return ra(y);if(Oh(o)&&o.callee===a||o.type==="UnaryExpression"||nv(o)&&!o.computed)return ra([Al([$c,...y]),$c]);let B=o.type==="ReturnStatement"||o.type==="ThrowStatement"||o.type==="JSXExpressionContainer"&&g.type==="JSXAttribute"||a.operator!=="|"&&o.type==="JsExpressionRoot"||a.type!=="NGPipeExpression"&&(o.type==="NGRoot"&&t.parser==="__ng_binding"||o.type==="NGMicrosyntaxExpression"&&g.type==="NGMicrosyntax"&&g.body.length===1)||a===o.body&&o.type==="ArrowFunctionExpression"||a!==o.body&&o.type==="ForStatement"||o.type==="ConditionalExpression"&&g.type!=="ReturnStatement"&&g.type!=="ThrowStatement"&&!Oh(g)||o.type==="TemplateLiteral",v=o.type==="AssignmentExpression"||o.type==="VariableDeclarator"||o.type==="ClassProperty"||o.type==="PropertyDefinition"||o.type==="TSAbstractPropertyDefinition"||o.type==="ClassPrivateProperty"||Gz(o),G=Nz(a.left)&&Agr(a.operator,a.left.operator);if(B||xQe(a)&&!G||!xQe(a)&&v)return ra(y);if(y.length===0)return"";let T=fR(a.right),O=y.findIndex(fe=>typeof fe!="string"&&!Array.isArray(fe)&&fe.type===CM),X=y.slice(0,O===-1?1:O+1),U=y.slice(X.length,T?-1:void 0),le=Symbol("logicalChain-"+ ++Gqo),ae=ra([...X,Al(U)],{id:le});if(!T)return ae;let ge=T0(!1,y,-1);return ra([ae,rCt(ge,{groupId:le})])}function $ur(e,t,r,s,a){var o;let{node:g}=e;if(!Nz(g))return[ra(t())];let p=[];Agr(g.operator,g.left.operator)?p=e.call(X=>$ur(X,t,r,!0,a),"left"):p.push(ra(t("left")));let f=xQe(g),m=(g.operator==="|>"||g.type==="NGPipeExpression"||Fqo(e,r))&&!fse(r.originalText,g.right),y=!ku(g.right,qg.Leading,_ei)&&fse(r.originalText,g.right),B=g.type==="NGPipeExpression"?"|":g.operator,v=g.type==="NGPipeExpression"&&g.arguments.length>0?ra(Al([$c,": ",sh([Fg,": "],e.map(()=>LU(2,ra(t())),"arguments"))])):"",G;if(f)G=[B," ",t("right"),v];else{let X=B==="|>"&&((o=e.root.extra)!=null&&o.__isUsingHackPipeline)?e.call(U=>$ur(U,t,r,!0,a),"right"):t("right");if(r.experimentalOperatorPosition==="start"){let U="";if(y)switch(yse(X)){case Rz:U=X.splice(0,1)[0];break;case Fz:U=X.contents.splice(0,1)[0];break}G=[Fg,U,B," ",X,v]}else G=[m?Fg:"",B,m?" ":Fg,X,v]}let{parent:T}=e,O=ku(g.left,qg.Trailing|qg.Line);if((O||!(a&&g.type==="LogicalExpression")&&T.type!==g.type&&g.left.type!==g.type&&g.right.type!==g.type)&&(G=ra(G,{shouldBreak:O})),r.experimentalOperatorPosition==="start"?p.push(f||y?" ":"",G):p.push(m?"":" ",G),s&&ku(g)){let X=fgr(l5(e,p,r));return X.type===hse?X.parts:Array.isArray(X)?X:[X]}return p}function xQe(e){return e.type!=="LogicalExpression"?!1:!!(u5(e.right)&&e.right.properties.length>0||MD(e.right)&&e.right.elements.length>0||fR(e.right))}var G$n=e=>e.type==="BinaryExpression"&&e.operator==="|";function Fqo(e,t){return(t.parser==="__vue_expression"||t.parser==="__vue_ts_expression")&&G$n(e.node)&&!e.hasAncestor(r=>!G$n(r)&&r.type!=="JsExpressionRoot")}function Zqo(e,t,r){let{node:s}=e;if(s.type.startsWith("NG"))switch(s.type){case"NGRoot":return[r("node"),ku(s.node)?" //"+Rve(s.node)[0].value.trimEnd():""];case"NGPipeExpression":return Qei(e,t,r);case"NGChainedExpression":return ra(sh([";",Fg],e.map(()=>Vqo(e)?r():["(",r(),")"],"expressions")));case"NGEmptyExpression":return"";case"NGMicrosyntax":return e.map(()=>[e.isFirst?"":F$n(e)?" ":[";",Fg],r()],"body");case"NGMicrosyntaxKey":return/^[$_a-z][\w$]*(?:-[$_a-z][\w$])*$/iu.test(s.name)?s.name:JSON.stringify(s.name);case"NGMicrosyntaxExpression":return[r("expression"),s.alias===null?"":[" as ",r("alias")]];case"NGMicrosyntaxKeyedExpression":{let{index:a,parent:o}=e,g=F$n(e)||(a===1&&(s.key.name==="then"||s.key.name==="else"||s.key.name==="as")||(a===2||a===3)&&(s.key.name==="else"&&o.body[a-1].type==="NGMicrosyntaxKeyedExpression"&&o.body[a-1].key.name==="then"||s.key.name==="track"))&&o.body[0].type==="NGMicrosyntaxExpression";return[r("key"),g?" ":": ",r("expression")]}case"NGMicrosyntaxLet":return["let ",r("key"),s.value===null?"":[" = ",r("value")]];case"NGMicrosyntaxAs":return[r("key")," as ",r("alias")];default:throw new Ove(s,"Angular")}}function F$n({node:e,index:t}){return e.type==="NGMicrosyntaxKeyedExpression"&&e.key.name==="of"&&t===1}var Lqo=H_(["CallExpression","OptionalCallExpression","AssignmentExpression"]);function Vqo({node:e}){return Mur(e,Lqo)}function Yei(e,t,r){let{node:s}=e;return ra([sh(Fg,e.map(r,"decorators")),Hei(s,t)?sl:Fg])}function Wqo(e,t,r){return Xei(e.node)?[sh(sl,e.map(r,"declaration","decorators")),sl]:""}function Pqo(e,t,r){let{node:s,parent:a}=e,{decorators:o}=s;if(!m_(o)||Xei(a)||Mei(e))return"";let g=s.type==="ClassExpression"||s.type==="ClassDeclaration"||Hei(s,t);return[e.key==="declaration"&&x7o(a)?sl:g?VU:"",sh(Fg,e.map(r,"decorators")),Fg]}function Hei(e,t){return e.decorators.some(r=>KW(t.originalText,oh(r)))}function Xei(e){var t;if(e.type!=="ExportDefaultDeclaration"&&e.type!=="ExportNamedDeclaration"&&e.type!=="DeclareExportDeclaration")return!1;let r=(t=e.declaration)==null?void 0:t.decorators;return m_(r)&&qIt(e,r[0])}var UIt=class extends Error{name="ArgExpansionBailout"};function Oqo(e,t,r){let{node:s}=e,a=_M(s);if(a.length===0)return["(",e2(e,t),")"];let o=a.length-1;if(Yqo(a)){let B=["("];return XIt(e,(v,G)=>{B.push(r()),G!==o&&B.push(", ")}),B.push(")"),B}let g=!1,p=[];XIt(e,({node:B},v)=>{let G=r();v===o||(kz(B,t)?(g=!0,G=[G,",",sl,sl]):G=[G,",",Fg]),p.push(G)});let f=!t.parser.startsWith("__ng_")&&s.type!=="ImportExpression"&&xz(t,"all")?",":"";function m(){return ra(["(",Al([Fg,...p]),f,Fg,")"],{shouldBreak:!0})}if(g||e.parent.type!=="Decorator"&&M7o(a))return m();if(Qqo(a)){let B=p.slice(1);if(B.some(QF))return m();let v;try{v=r(B$n(s,0),{expandFirstArg:!0})}catch(G){if(G instanceof UIt)return m();throw G}return QF(v)?[VU,Ope([["(",ra(v,{shouldBreak:!0}),", ",...B,")"],m()])]:Ope([["(",v,", ",...B,")"],["(",ra(v,{shouldBreak:!0}),", ",...B,")"],m()])}if(Mqo(a,p,t)){let B=p.slice(0,-1);if(B.some(QF))return m();let v;try{v=r(B$n(s,-1),{expandLastArg:!0})}catch(G){if(G instanceof UIt)return m();throw G}return QF(v)?[VU,Ope([["(",...B,ra(v,{shouldBreak:!0}),")"],m()])]:Ope([["(",...B,v,")"],["(",...B,ra(v,{shouldBreak:!0}),")"],m()])}let y=["(",Al([$c,...p]),jI(f),$c,")"];return lei(e)?y:ra(y,{shouldBreak:p.some(QF)||g})}function wQe(e,t=!1){return u5(e)&&(e.properties.length>0||ku(e))||MD(e)&&(e.elements.length>0||ku(e))||e.type==="TSTypeAssertion"&&wQe(e.expression)||GU(e)&&wQe(e.expression)||e.type==="FunctionExpression"||e.type==="ArrowFunctionExpression"&&(!e.returnType||!e.returnType.typeAnnotation||e.returnType.typeAnnotation.type!=="TSTypeReference"||Hqo(e.body))&&(e.body.type==="BlockStatement"||e.body.type==="ArrowFunctionExpression"&&wQe(e.body,!0)||u5(e.body)||MD(e.body)||!t&&(Oh(e.body)||e.body.type==="ConditionalExpression")||fR(e.body))||e.type==="DoExpression"||e.type==="ModuleExpression"}function Mqo(e,t,r){var s,a;let o=T0(!1,e,-1);if(e.length===1){let p=T0(!1,t,-1);if((s=p.label)!=null&&s.embed&&((a=p.label)==null?void 0:a.hug)!==!1)return!0}let g=T0(!1,e,-2);return!ku(o,qg.Leading)&&!ku(o,qg.Trailing)&&wQe(o)&&(!g||g.type!==o.type)&&(e.length!==2||g.type!=="ArrowFunctionExpression"||!MD(o))&&!(e.length>1&&mti(o,r))}function Qqo(e){if(e.length!==2)return!1;let[t,r]=e;return t.type==="ModuleExpression"&&Xqo(r)?!0:!ku(t)&&(t.type==="FunctionExpression"||t.type==="ArrowFunctionExpression"&&t.body.type==="BlockStatement")&&r.type!=="FunctionExpression"&&r.type!=="ArrowFunctionExpression"&&r.type!=="ConditionalExpression"&&Jei(r)&&!wQe(r)}function Jei(e){if(e.type==="ParenthesizedExpression")return Jei(e.expression);if(GU(e)||e.type==="TypeCastExpression"){let{typeAnnotation:t}=e;if(t.type==="TypeAnnotation"&&(t=t.typeAnnotation),t.type==="TSArrayType"&&(t=t.elementType,t.type==="TSArrayType"&&(t=t.elementType)),t.type==="GenericTypeAnnotation"||t.type==="TSTypeReference"){let r=t.typeArguments??t.typeParameters;r?.params.length===1&&(t=r.params[0])}return ugr(t)&&c5(e.expression,1)}return Fve(e)&&_M(e).length>1?!1:Nz(e)?c5(e.left,1)&&c5(e.right,1):nei(e)||c5(e)}function Yqo(e){return e.length===2?Z$n(e,0):e.length===3?e[0].type==="Identifier"&&Z$n(e,1):!1}function Z$n(e,t){let r=e[t],s=e[t+1];return r.type==="ArrowFunctionExpression"&&xk(r).length===0&&r.body.type==="BlockStatement"&&s.type==="ArrayExpression"&&!e.some(a=>ku(a))}function Hqo(e){return e.type==="BlockStatement"&&(e.body.some(t=>t.type!=="EmptyStatement")||ku(e,qg.Dangling))}function Xqo(e){return e.type==="ObjectExpression"&&e.properties.length===1&&Gz(e.properties[0])&&e.properties[0].key.type==="Identifier"&&e.properties[0].key.name==="type"&&$L(e.properties[0].value)&&e.properties[0].value.value==="module"}var egr=Oqo,Jqo=e=>((e.type==="ChainExpression"||e.type==="TSNonNullExpression")&&(e=e.expression),Oh(e)&&_M(e).length>0);function Uqo(e,t,r){var s;let a=r("object"),o=Uei(e,t,r),{node:g}=e,p=e.findAncestor(y=>!(nv(y)||y.type==="TSNonNullExpression")),f=e.findAncestor(y=>!(y.type==="ChainExpression"||y.type==="TSNonNullExpression")),m=p&&(p.type==="NewExpression"||p.type==="BindExpression"||p.type==="AssignmentExpression"&&p.left.type!=="Identifier")||g.computed||g.object.type==="Identifier"&&g.property.type==="Identifier"&&!nv(f)||(f.type==="AssignmentExpression"||f.type==="VariableDeclarator")&&(Jqo(g.object)||((s=a.label)==null?void 0:s.memberChain));return kQe(a.label,[a,m?o:ra(Al([$c,o]))])}function Uei(e,t,r){let s=r("property"),{node:a}=e,o=YF(e);return a.computed?!a.property||Tz(a.property)?[o,"[",s,"]"]:ra([o,"[",Al([$c,s]),$c,"]"]):[o,".",s]}function Kei(e,t,r){if(e.node.type==="ChainExpression")return e.call(()=>Kei(e,t,r),"expression");let{parent:s}=e,a=!s||s.type==="ExpressionStatement",o=[];function g(Je){let{originalText:Xe}=t,ft=Pve(Xe,oh(Je));return Xe.charAt(ft)===")"?ft!==!1&&ogr(Xe,ft+1):kz(Je,t)}function p(){let{node:Je}=e;if(Je.type==="ChainExpression")return e.call(p,"expression");if(Oh(Je)&&(Tve(Je.callee)||Oh(Je.callee))){let Xe=g(Je);o.unshift({node:Je,hasTrailingEmptyLine:Xe,printed:[l5(e,[YF(e),Qpe(e,t,r),egr(e,t,r)],t),Xe?sl:""]}),e.call(p,"callee")}else Tve(Je)?(o.unshift({node:Je,needsParens:zpe(e,t),printed:l5(e,nv(Je)?Uei(e,t,r):Iti(e,t,r),t)}),e.call(p,"object")):Je.type==="TSNonNullExpression"?(o.unshift({node:Je,printed:l5(e,"!",t)}),e.call(p,"expression")):o.unshift({node:Je,printed:r()})}let{node:f}=e;o.unshift({node:f,printed:[YF(e),Qpe(e,t,r),egr(e,t,r)]}),f.callee&&e.call(p,"callee");let m=[],y=[o[0]],B=1;for(;B0&&m.push(y);function G(Je){return/^[A-Z]|^[$_]+$/u.test(Je)}function T(Je){return Je.length<=t.tabWidth}function O(Je){var Xe;let ft=(Xe=Je[1][0])==null?void 0:Xe.node.computed;if(Je[0].length===1){let er=Je[0][0].node;return er.type==="ThisExpression"||er.type==="Identifier"&&(G(er.name)||a&&T(er.name)||ft)}let Gt=T0(!1,Je[0],-1).node;return nv(Gt)&&Gt.property.type==="Identifier"&&(G(Gt.property.name)||ft)}let X=m.length>=2&&!ku(m[1][0].node)&&O(m);function U(Je){let Xe=Je.map(ft=>ft.printed);return Je.length>0&&T0(!1,Je,-1).needsParens?["(",...Xe,")"]:Xe}function le(Je){return Je.length===0?"":Al([sl,sh(sl,Je.map(U))])}let ae=m.map(U),ge=ae,fe=X?3:2,pe=m.flat(),he=pe.slice(1,-1).some(Je=>ku(Je.node,qg.Leading))||pe.slice(0,-1).some(Je=>ku(Je.node,qg.Trailing))||m[fe]&&ku(m[fe][0].node,qg.Leading);if(m.length<=fe&&!he&&!m.some(Je=>T0(!1,Je,-1).hasTrailingEmptyLine))return lei(e)?ge:ra(ge);let be=T0(!1,m[X?1:0],-1).node,Te=!Oh(be)&&g(be),ke=[U(m[0]),X?m.slice(1,2).map(U):"",Te?sl:"",le(m.slice(X?2:1))],x=o.map(({node:Je})=>Je).filter(Oh);function et(){let Je=T0(!1,T0(!1,m,-1),-1).node,Xe=T0(!1,ae,-1);return Oh(Je)&&QF(Xe)&&x.slice(0,-1).some(ft=>ft.arguments.some(NQe))}let Ue;return he||x.length>2&&x.some(Je=>!Je.arguments.every(Xe=>c5(Xe)))||ae.slice(0,-1).some(QF)||et()?Ue=ra(ke):Ue=[QF(ge)||Te?VU:"",Ope([ge,ke])],kQe({memberChain:!0},Ue)}var Kqo=Kei;function jei(e,t,r){var s;let{node:a}=e,o=a.type==="NewExpression",g=a.type==="ImportExpression",p=YF(e),f=_M(a),m=f.length===1&&aei(f[0],t.originalText);if(m||jqo(e)||eCt(a,e.parent)){let B=[];if(XIt(e,()=>{B.push(r())}),!(m&&(s=B[0].label)!=null&&s.embed))return[o?"new ":"",L$n(e,r),p,Qpe(e,t,r),"(",sh(", ",B),")"]}if(!g&&!o&&Tve(a.callee)&&!e.call(B=>zpe(B,t),"callee",...a.callee.type==="ChainExpression"?["expression"]:[]))return Kqo(e,t,r);let y=[o?"new ":"",L$n(e,r),p,Qpe(e,t,r),egr(e,t,r)];return g||Oh(a.callee)?ra(y):y}function L$n(e,t){let{node:r}=e;return r.type==="ImportExpression"?`import${r.phase?`.${r.phase}`:""}`:t("callee")}function jqo(e){let{node:t}=e;if(t.type!=="CallExpression"||t.optional||t.callee.type!=="Identifier")return!1;let r=_M(t);return t.callee.name==="require"?r.length===1&&$L(r[0])||r.length>1:t.callee.name==="define"&&e.parent.type==="ExpressionStatement"?r.length===1||r.length===2&&r[0].type==="ArrayExpression"||r.length===3&&$L(r[0])&&r[1].type==="ArrayExpression":!1}function GQe(e,t,r,s,a,o){let g=$qo(e,t,r,s,o),p=o?r(o,{assignmentLayout:g}):"";switch(g){case"break-after-operator":return ra([ra(s),a,ra(Al([Fg,p]))]);case"never-break-after-operator":return ra([ra(s),a," ",p]);case"fluid":{let f=Symbol("assignment");return ra([ra(s),a,ra(Al(Fg),{id:f}),Dz,rCt(p,{groupId:f})])}case"break-lhs":return ra([s,a," ",ra(p)]);case"chain":return[ra(s),a,Fg,p];case"chain-tail":return[ra(s),a,Al([Fg,p])];case"chain-tail-arrow-chain":return[ra(s),a,p];case"only-left":return s}}function zqo(e,t,r){let{node:s}=e;return GQe(e,t,r,r("left"),[" ",s.operator],"right")}function qqo(e,t,r){return GQe(e,t,r,r("id")," =","init")}function $qo(e,t,r,s,a){let{node:o}=e,g=o[a];if(!g)return"only-left";let p=!QIt(g);if(e.match(QIt,zei,y=>!p||y.type!=="ExpressionStatement"&&y.type!=="VariableDeclaration"))return p?g.type==="ArrowFunctionExpression"&&g.body.type==="ArrowFunctionExpression"?"chain-tail-arrow-chain":"chain-tail":"chain";if(!p&&QIt(g.right)||fse(t.originalText,g))return"break-after-operator";if(o.type==="ImportAttribute"||g.type==="CallExpression"&&g.callee.name==="require"||t.parser==="json5"||t.parser==="jsonc"||t.parser==="json")return"never-break-after-operator";let f=ajo(s);if(t$o(o)||s$o(o)||qei(o)&&f)return"break-lhs";let m=a$o(o,s,t);return e.call(()=>e$o(e,t,r,m),a)?"break-after-operator":r$o(o)?"break-lhs":!f&&(m||g.type==="TemplateLiteral"||g.type==="TaggedTemplateExpression"||g.type==="BooleanLiteral"||Tz(g)||g.type==="ClassExpression")?"never-break-after-operator":"fluid"}function e$o(e,t,r,s){let a=e.node;if(Nz(a)&&!xQe(a))return!0;switch(a.type){case"StringLiteralTypeAnnotation":case"SequenceExpression":return!0;case"TSConditionalType":case"ConditionalTypeAnnotation":if(!t.experimentalTernaries&&!u$o(a))break;return!0;case"ConditionalExpression":{if(!t.experimentalTernaries){let{test:m}=a;return Nz(m)&&!xQe(m)}let{consequent:p,alternate:f}=a;return p.type==="ConditionalExpression"||f.type==="ConditionalExpression"}case"ClassExpression":return m_(a.decorators)}if(s)return!1;let o=a,g=[];for(;;)if(o.type==="UnaryExpression"||o.type==="AwaitExpression"||o.type==="YieldExpression"&&o.argument!==null)o=o.argument,g.push("argument");else if(o.type==="TSNonNullExpression")o=o.expression,g.push("expression");else break;return!!($L(o)||e.call(()=>$ei(e,t,r),...g))}function t$o(e){if(zei(e)){let t=e.left||e.id;return t.type==="ObjectPattern"&&t.properties.length>2&&t.properties.some(r=>{var s;return Gz(r)&&(!r.shorthand||((s=r.value)==null?void 0:s.type)==="AssignmentPattern")})}return!1}function QIt(e){return e.type==="AssignmentExpression"}function zei(e){return QIt(e)||e.type==="VariableDeclarator"}function r$o(e){let t=i$o(e);if(m_(t)){let r=e.type==="TSTypeAliasDeclaration"?"constraint":"bound";if(t.length>1&&t.some(s=>s[r]||s.default))return!0}return!1}var n$o=H_(["TSTypeAliasDeclaration","TypeAlias"]);function i$o(e){var t;if(n$o(e))return(t=e.typeParameters)==null?void 0:t.params}function s$o(e){if(e.type!=="VariableDeclarator")return!1;let{typeAnnotation:t}=e.id;if(!t||!t.typeAnnotation)return!1;let r=V$n(t.typeAnnotation);return m_(r)&&r.length>1&&r.some(s=>m_(V$n(s))||s.type==="TSConditionalType")}function qei(e){var t;return e.type==="VariableDeclarator"&&((t=e.init)==null?void 0:t.type)==="ArrowFunctionExpression"}var o$o=H_(["TSTypeReference","GenericTypeAnnotation"]);function V$n(e){var t;if(o$o(e))return(t=e.typeArguments??e.typeParameters)==null?void 0:t.params}function $ei(e,t,r,s=!1){var a;let{node:o}=e,g=()=>$ei(e,t,r,!0);if(o.type==="ChainExpression"||o.type==="TSNonNullExpression")return e.call(g,"expression");if(Oh(o)){if((a=jei(e,t,r).label)!=null&&a.memberChain)return!1;let p=_M(o);return!(p.length===0||p.length===1&&ggr(p[0],t))||c$o(o,r)?!1:e.call(g,"callee")}return nv(o)?e.call(g,"object"):s&&(o.type==="Identifier"||o.type==="ThisExpression")}function a$o(e,t,r){return Gz(e)?(t=fgr(t),typeof t=="string"&&Dve(t)1)return!0;if(r.length===1){let a=r[0];if(Ise(a)||dgr(a)||a.type==="TSTypeLiteral"||a.type==="ObjectTypeAnnotation")return!0}let s=e.typeParameters?"typeParameters":"typeArguments";if(QF(t(s)))return!0}return!1}function l$o(e){var t;return(t=e.typeParameters??e.typeArguments)==null?void 0:t.params}function u$o(e){function t(r){switch(r.type){case"FunctionTypeAnnotation":case"GenericTypeAnnotation":case"TSFunctionType":return!!r.typeParameters;case"TSTypeReference":return!!(r.typeArguments??r.typeParameters);default:return!1}}return t(e.checkType)||t(e.extendsType)}function qpe(e,t,r,s,a){let o=e.node,g=xk(o),p=a?Qpe(e,r,t):"";if(g.length===0)return[p,"(",e2(e,r,{filter:G=>g5(r.originalText,oh(G))===")"}),")"];let{parent:f}=e,m=eCt(f),y=eti(o),B=[];if(U7o(e,(G,T)=>{let O=T===g.length-1;O&&o.rest&&B.push("..."),B.push(t()),!O&&(B.push(","),m||y?B.push(" "):kz(g[T],r)?B.push(sl,sl):B.push(Fg))}),s&&!A$o(e)){if(QF(p)||QF(B))throw new UIt;return ra([Yur(p),"(",Yur(B),")"])}let v=g.every(G=>!m_(G.decorators));return y&&v?[p,"(",...B,")"]:m?[p,"(",...B,")"]:(iei(f)||Z7o(f)||f.type==="TypeAlias"||f.type==="UnionTypeAnnotation"||f.type==="IntersectionTypeAnnotation"||f.type==="FunctionTypeAnnotation"&&f.returnType===o)&&g.length===1&&g[0].name===null&&o.this!==g[0]&&g[0].typeAnnotation&&o.typeParameters===null&&ugr(g[0].typeAnnotation)&&!o.rest?r.arrowParens==="always"||o.type==="HookTypeAnnotation"?["(",...B,")"]:B:[p,"(",Al([$c,...B]),jI(!J7o(o)&&xz(r,"all")?",":""),$c,")"]}function eti(e){if(!e)return!1;let t=xk(e);if(t.length!==1)return!1;let[r]=t;return!ku(r)&&(r.type==="ObjectPattern"||r.type==="ArrayPattern"||r.type==="Identifier"&&r.typeAnnotation&&(r.typeAnnotation.type==="TypeAnnotation"||r.typeAnnotation.type==="TSTypeAnnotation")&&pse(r.typeAnnotation.typeAnnotation)||r.type==="FunctionTypeParam"&&pse(r.typeAnnotation)&&r!==e.rest||r.type==="AssignmentPattern"&&(r.left.type==="ObjectPattern"||r.left.type==="ArrayPattern")&&(r.right.type==="Identifier"||u5(r.right)&&r.right.properties.length===0||MD(r.right)&&r.right.elements.length===0))}function g$o(e){let t;return e.returnType?(t=e.returnType,t.typeAnnotation&&(t=t.typeAnnotation)):e.typeAnnotation&&(t=e.typeAnnotation),t}function Mve(e,t){var r;let s=g$o(e);if(!s)return!1;let a=(r=e.typeParameters)==null?void 0:r.params;if(a){if(a.length>1)return!1;if(a.length===1){let o=a[0];if(o.constraint||o.default)return!1}}return xk(e).length===1&&(pse(s)||QF(t))}function A$o(e){return e.match(t=>t.type==="ArrowFunctionExpression"&&t.body.type==="BlockStatement",(t,r)=>{if(t.type==="CallExpression"&&r==="arguments"&&t.arguments.length===1&&t.callee.type==="CallExpression"){let s=t.callee.callee;return s.type==="Identifier"||s.type==="MemberExpression"&&!s.computed&&s.object.type==="Identifier"&&s.property.type==="Identifier"}return!1},(t,r)=>t.type==="VariableDeclarator"&&r==="init"||t.type==="ExportDefaultDeclaration"&&r==="declaration"||t.type==="TSExportAssignment"&&r==="expression"||t.type==="AssignmentExpression"&&r==="right"&&t.left.type==="MemberExpression"&&t.left.object.type==="Identifier"&&t.left.object.name==="module"&&t.left.property.type==="Identifier"&&t.left.property.name==="exports",t=>t.type!=="VariableDeclaration"||t.kind==="const"&&t.declarations.length===1)}function d$o(e){let t=xk(e);return t.length>1&&t.some(r=>r.type==="TSParameterProperty")}var p$o=H_(["VoidTypeAnnotation","TSVoidKeyword","NullLiteralTypeAnnotation","TSNullKeyword"]),f$o=H_(["ObjectTypeAnnotation","TSTypeLiteral","GenericTypeAnnotation","TSTypeReference"]);function I$o(e){let{types:t}=e;if(t.some(s=>ku(s)))return!1;let r=t.find(s=>f$o(s));return r?t.every(s=>s===r||p$o(s)):!1}function tti(e){return ugr(e)||pse(e)?!0:Ise(e)?I$o(e):!1}function C$o(e,t,r){let s=t.semi?";":"",{node:a}=e,o=[e9(e),"opaque type ",r("id"),r("typeParameters")];return a.supertype&&o.push(": ",r("supertype")),a.impltype&&o.push(" = ",r("impltype")),o.push(s),o}function rti(e,t,r){let s=t.semi?";":"",{node:a}=e,o=[e9(e)];o.push("type ",r("id"),r("typeParameters"));let g=a.type==="TSTypeAliasDeclaration"?"typeAnnotation":"right";return[GQe(e,t,r,o," =",g),s]}function nti(e,t,r){let s=!1;return ra(e.map(({isFirst:a,previous:o,node:g,index:p})=>{let f=r();if(a)return f;let m=pse(g),y=pse(o);return y&&m?[" & ",s?Al(f):f]:!y&&!m?t.experimentalOperatorPosition==="start"?Al([Fg,"& ",f]):Al([" &",Fg,f]):(p>1&&(s=!0),[" & ",p>1?Al(f):f])},"types"))}function iti(e,t,r){let{node:s}=e,{parent:a}=e,o=a.type!=="TypeParameterInstantiation"&&(!Cse(a)||!t.experimentalTernaries)&&a.type!=="TSTypeParameterInstantiation"&&a.type!=="GenericTypeAnnotation"&&a.type!=="TSTypeReference"&&a.type!=="TSTypeAssertion"&&a.type!=="TupleTypeAnnotation"&&a.type!=="TSTupleType"&&!(a.type==="FunctionTypeParam"&&!a.name&&e.grandparent.this!==a)&&!((a.type==="TypeAlias"||a.type==="VariableDeclarator"||a.type==="TSTypeAliasDeclaration")&&fse(t.originalText,s)),g=tti(s),p=e.map(y=>{let B=r();return g||(B=LU(2,B)),l5(y,B,t)},"types");if(g)return sh(" | ",p);let f=o&&!fse(t.originalText,s),m=[jI([f?Fg:"","| "]),sh([Fg,"| "],p)];return zpe(e,t)?ra([Al(m),$c]):(a.type==="TupleTypeAnnotation"||a.type==="TSTupleType")&&a[a.type==="TupleTypeAnnotation"&&a.types?"types":"elementTypes"].length>1?ra([Al([jI(["(",$c]),m]),$c,jI(")")]):ra(o?Al(m):m)}function m$o(e){var t;let{node:r,parent:s}=e;return r.type==="FunctionTypeAnnotation"&&(iei(s)||!((s.type==="ObjectTypeProperty"||s.type==="ObjectTypeInternalSlot")&&!s.variance&&!s.optional&&qIt(s,r)||s.type==="ObjectTypeCallProperty"||((t=e.getParentNode(2))==null?void 0:t.type)==="DeclareFunction"))}function sti(e,t,r){let{node:s}=e,a=[nCt(e)];(s.type==="TSConstructorType"||s.type==="TSConstructSignatureDeclaration")&&a.push("new ");let o=qpe(e,r,t,!1,!0),g=[];return s.type==="FunctionTypeAnnotation"?g.push(m$o(e)?" => ":": ",r("returnType")):g.push(OD(e,r,s.returnType?"returnType":"typeAnnotation")),Mve(s,g)&&(o=ra(o)),a.push(o,g),ra(a)}function oti(e,t,r){return[r("objectType"),YF(e),"[",r("indexType"),"]"]}function ati(e,t,r){return["infer ",r("typeParameter")]}function W$n(e,t,r){let{node:s}=e;return[s.postfix?"":r,OD(e,t),s.postfix?r:""]}function cti(e,t,r){let{node:s}=e;return["...",...s.type==="TupleTypeSpreadElement"&&s.label?[r("label"),": "]:[],r("typeAnnotation")]}function lti(e,t,r){let{node:s}=e;return[s.variance?r("variance"):"",r("label"),s.optional?"?":"",": ",r("elementType")]}var h$o=new WeakSet;function OD(e,t,r="typeAnnotation"){let{node:{[r]:s}}=e;if(!s)return"";let a=!1;if(s.type==="TSTypeAnnotation"||s.type==="TypeAnnotation"){let o=e.call(uti,r);(o==="=>"||o===":"&&ku(s,qg.Leading))&&(a=!0),h$o.add(s)}return a?[" ",t(r)]:t(r)}var uti=e=>e.match(t=>t.type==="TSTypeAnnotation",(t,r)=>(r==="returnType"||r==="typeAnnotation")&&(t.type==="TSFunctionType"||t.type==="TSConstructorType"))?"=>":e.match(t=>t.type==="TSTypeAnnotation",(t,r)=>r==="typeAnnotation"&&(t.type==="TSJSDocNullableType"||t.type==="TSJSDocNonNullableType"||t.type==="TSTypePredicate"))||e.match(t=>t.type==="TypeAnnotation",(t,r)=>r==="typeAnnotation"&&t.type==="Identifier",(t,r)=>r==="id"&&t.type==="DeclareFunction")||e.match(t=>t.type==="TypeAnnotation",(t,r)=>r==="typeAnnotation"&&t.type==="Identifier",(t,r)=>r==="id"&&t.type==="DeclareHook")||e.match(t=>t.type==="TypeAnnotation",(t,r)=>r==="bound"&&t.type==="TypeParameter"&&t.usesExtendsBound)?"":":";function gti(e,t,r){let s=uti(e);return s?[s," ",r("typeAnnotation")]:r("typeAnnotation")}function Ati(e){return[e("elementType"),"[]"]}function dti({node:e},t){let r=e.type==="TSTypeQuery"?"exprName":"argument",s=e.type==="TypeofTypeAnnotation"||e.typeArguments?"typeArguments":"typeParameters";return["typeof ",t(r),t(s)]}function pti(e,t){let{node:r}=e;return[r.type==="TSTypePredicate"&&r.asserts?"asserts ":r.type==="TypePredicate"&&r.kind?`${r.kind} `:"",t("parameterName"),r.typeAnnotation?[" is ",OD(e,t)]:""]}function YF(e){let{node:t}=e;return!t.optional||t.type==="Identifier"&&t===e.parent.key?"":Oh(t)||nv(t)&&t.computed||t.type==="OptionalIndexedAccessType"?"?.":"?"}function fti(e){return e.node.definite||e.match(void 0,(t,r)=>r==="id"&&t.type==="VariableDeclarator"&&t.definite)?"!":""}var _$o=new Set(["DeclareClass","DeclareComponent","DeclareFunction","DeclareHook","DeclareVariable","DeclareExportDeclaration","DeclareExportAllDeclaration","DeclareOpaqueType","DeclareTypeAlias","DeclareEnum","DeclareInterface"]);function e9(e){let{node:t}=e;return t.declare||_$o.has(t.type)&&e.parent.type!=="DeclareExportDeclaration"?"declare ":""}var y$o=new Set(["TSAbstractMethodDefinition","TSAbstractPropertyDefinition","TSAbstractAccessorProperty"]);function nCt({node:e}){return e.abstract||y$o.has(e.type)?"abstract ":""}function Qpe(e,t,r){let s=e.node;return s.typeArguments?r("typeArguments"):s.typeParameters?r("typeParameters"):""}function Iti(e,t,r){return["::",r("callee")]}function Ase(e,t,r){return e.type==="EmptyStatement"?";":e.type==="BlockStatement"||r?[" ",t]:Al([Fg,t])}function Cti(e,t){return["...",t("argument"),OD(e,t)]}function KIt(e){return e.accessibility?e.accessibility+" ":""}function b$o(e,t,r,s){let{node:a}=e,o=a.inexact?"...":"";return ku(a,qg.Dangling)?ra([r,o,e2(e,t,{indent:!0}),$c,s]):[r,o,s]}function Bgr(e,t,r){let{node:s}=e,a=[],o=s.type==="TupleExpression"?"#[":"[",g="]",p=s.type==="TupleTypeAnnotation"&&s.types?"types":s.type==="TSTupleType"||s.type==="TupleTypeAnnotation"?"elementTypes":"elements",f=s[p];if(f.length===0)a.push(b$o(e,t,o,g));else{let m=T0(!1,f,-1),y=m?.type!=="RestElement"&&!s.inexact,B=m===null,v=Symbol("array"),G=!t.__inJestEach&&f.length>1&&f.every((X,U,le)=>{let ae=X?.type;if(!MD(X)&&!u5(X))return!1;let ge=le[U+1];if(ge&&ae!==ge.type)return!1;let fe=MD(X)?"elements":"properties";return X[fe]&&X[fe].length>1}),T=mti(s,t),O=y?B?",":xz(t)?T?jI(",","",{groupId:v}):jI(","):"":"";a.push(ra([o,Al([$c,T?B$o(e,t,r,O):[E$o(e,t,p,s.inexact,r),O],e2(e,t)]),$c,g],{shouldBreak:G,id:v}))}return a.push(YF(e),OD(e,r)),a}function mti(e,t){return MD(e)&&e.elements.length>1&&e.elements.every(r=>r&&(Tz(r)||rei(r)&&!ku(r.argument))&&!ku(r,qg.Trailing|qg.Line,s=>!KW(t.originalText,gB(s),{backwards:!0})))}function hti({node:e},{originalText:t}){let r=a=>igr(t,sgr(t,a)),s=a=>t[a]===","?a:s(r(a+1));return ogr(t,s(oh(e)))}function E$o(e,t,r,s,a){let o=[];return e.each(({node:g,isLast:p})=>{o.push(g?ra(a()):""),(!p||s)&&o.push([",",Fg,g&&hti(e,t)?$c:""])},r),s&&o.push("..."),o}function B$o(e,t,r,s){let a=[];return e.each(({isLast:o,next:g})=>{a.push([r(),o?s:","]),o||a.push(hti(e,t)?[sl,sl]:ku(g,qg.Leading|qg.Line)?sl:Fg)},"elements"),Iei(a)}var v$o=/^[\$A-Z_a-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\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-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\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\u0AF9\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-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\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-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\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\u2160-\u2188\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-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\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][\$0-9A-Z_a-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\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\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\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\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]*$/,S$o=e=>v$o.test(e),w$o=S$o;function T$o(e){return e.length===1?e:e.toLowerCase().replace(/^([+-]?[\d.]+e)(?:\+|(-))?0*(?=\d)/u,"$1$2").replace(/^([+-]?[\d.]+)e[+-]?0+$/u,"$1").replace(/^([+-])?\./u,"$10.").replace(/(\.\d+?)0+(?=e|$)/u,"$1").replace(/\.(?=e|$)/u,"")}var Zve=T$o,YIt=new WeakMap;function _ti(e){return/^(?:\d+|\d+\.\d+)$/u.test(e)}function P$n(e,t){return t.parser==="json"||t.parser==="jsonc"||!$L(e.key)||Gve(IM(e.key),t).slice(1,-1)!==e.key.value?!1:!!(w$o(e.key.value)&&!(t.parser==="babel-ts"&&e.type==="ClassProperty"||t.parser==="typescript"&&e.type==="PropertyDefinition")||_ti(e.key.value)&&String(Number(e.key.value))===e.key.value&&e.type!=="ImportAttribute"&&(t.parser==="babel"||t.parser==="acorn"||t.parser==="espree"||t.parser==="meriyah"||t.parser==="__babel_estree"))}function N$o(e,t){let{key:r}=e.node;return(r.type==="Identifier"||Tz(r)&&_ti(Zve(IM(r)))&&String(r.value)===Zve(IM(r))&&!(t.parser==="typescript"||t.parser==="babel-ts"))&&(t.parser==="json"||t.parser==="jsonc"||t.quoteProps==="consistent"&&YIt.get(e.parent))}function FQe(e,t,r){let{node:s}=e;if(s.computed)return["[",r("key"),"]"];let{parent:a}=e,{key:o}=s;if(t.quoteProps==="consistent"&&!YIt.has(a)){let g=e.siblings.some(p=>!p.computed&&$L(p.key)&&!P$n(p,t));YIt.set(a,g)}if(N$o(e,t)){let g=Gve(JSON.stringify(o.type==="Identifier"?o.name:o.value.toString()),t);return e.call(p=>l5(p,g,t),"key")}return P$n(s,t)&&(t.quoteProps==="as-needed"||t.quoteProps==="consistent"&&!YIt.get(a))?e.call(g=>l5(g,/^\d/u.test(o.value)?Zve(o.value):o.value,t),"key"):r("key")}function Lur(e,t,r){let{node:s}=e;return s.shorthand?r("value"):GQe(e,t,r,FQe(e,t,r),":","value")}var R$o=({node:e,key:t,parent:r})=>t==="value"&&e.type==="FunctionExpression"&&(r.type==="ObjectMethod"||r.type==="ClassMethod"||r.type==="ClassPrivateMethod"||r.type==="MethodDefinition"||r.type==="TSAbstractMethodDefinition"||r.type==="TSDeclareMethod"||r.type==="Property"&&$It(r));function yti(e,t,r,s){if(R$o(e))return vgr(e,r,t);let{node:a}=e,o=!1;if((a.type==="FunctionDeclaration"||a.type==="FunctionExpression")&&s!=null&&s.expandLastArg){let{parent:y}=e;Oh(y)&&(_M(y).length>1||xk(a).every(B=>B.type==="Identifier"&&!B.typeAnnotation))&&(o=!0)}let g=[e9(e),a.async?"async ":"",`function${a.generator?"*":""} `,a.id?t("id"):""],p=qpe(e,t,r,o),f=iCt(e,t),m=Mve(a,f);return g.push(Qpe(e,r,t),ra([m?ra(p):p,f]),a.body?" ":"",t("body")),r.semi&&(a.declare||!a.body)&&g.push(";"),g}function tgr(e,t,r){let{node:s}=e,{kind:a}=s,o=s.value||s,g=[];return!a||a==="init"||a==="method"||a==="constructor"?o.async&&g.push("async "):(agr.ok(a==="get"||a==="set"),g.push(a," ")),o.generator&&g.push("*"),g.push(FQe(e,t,r),s.optional||s.key.optional?"?":"",s===o?vgr(e,t,r):r("value")),g}function vgr(e,t,r){let{node:s}=e,a=qpe(e,r,t),o=iCt(e,r),g=d$o(s),p=Mve(s,o),f=[Qpe(e,t,r),ra([g?ra(a,{shouldBreak:!0}):p?ra(a):a,o])];return s.body?f.push(" ",r("body")):f.push(t.semi?";":""),f}function D$o(e){let t=xk(e);return t.length===1&&!e.typeParameters&&!ku(e,qg.Dangling)&&t[0].type==="Identifier"&&!t[0].typeAnnotation&&!ku(t[0])&&!t[0].optional&&!e.predicate&&!e.returnType}function bti(e,t){if(t.arrowParens==="always")return!1;if(t.arrowParens==="avoid"){let{node:r}=e;return D$o(r)}return!1}function iCt(e,t){let{node:r}=e,s=[OD(e,t,"returnType")];return r.predicate&&s.push(t("predicate")),s}function Eti(e,t,r){let{node:s}=e,a=t.semi?";":"",o=[];if(s.argument){let f=r("argument");G$o(t,s.argument)?f=["(",Al([sl,f]),sl,")"]:(Nz(s.argument)||s.argument.type==="SequenceExpression"||t.experimentalTernaries&&s.argument.type==="ConditionalExpression"&&(s.argument.consequent.type==="ConditionalExpression"||s.argument.alternate.type==="ConditionalExpression"))&&(f=ra([jI("("),Al([$c,f]),$c,jI(")")])),o.push(" ",f)}let g=ku(s,qg.Dangling),p=a&&g&&ku(s,qg.Last|qg.Line);return p&&o.push(a),g&&o.push(" ",e2(e,t)),p||o.push(a),o}function x$o(e,t,r){return["return",Eti(e,t,r)]}function k$o(e,t,r){return["throw",Eti(e,t,r)]}function G$o(e,t){if(fse(e.originalText,t)||ku(t,qg.Leading,r=>mse(e.originalText,gB(r),oh(r)))&&!fR(t))return!0;if(cgr(t)){let r=t,s;for(;s=D7o(r);)if(r=s,fse(e.originalText,r))return!0}return!1}var Vur=new WeakMap;function Bti(e){return Vur.has(e)||Vur.set(e,e.type==="ConditionalExpression"&&!MF(e,t=>t.type==="ObjectExpression")),Vur.get(e)}var vti=e=>e.type==="SequenceExpression";function F$o(e,t,r,s={}){let a=[],o,g=[],p=!1,f=!s.expandLastArg&&e.node.body.type==="ArrowFunctionExpression",m;(function U(){let{node:le}=e,ae=Z$o(e,t,r,s);if(a.length===0)a.push(ae);else{let{leading:ge,trailing:fe}=Oei(e,t);a.push([ge,ae]),g.unshift(fe)}f&&(p||(p=le.returnType&&xk(le).length>0||le.typeParameters||xk(le).some(ge=>ge.type!=="Identifier"))),!f||le.body.type!=="ArrowFunctionExpression"?(o=r("body",s),m=le.body):e.call(U,"body")})();let y=!fse(t.originalText,m)&&(vti(m)||L$o(m,o,t)||!p&&Bti(m)),B=e.key==="callee"&&Fve(e.parent),v=Symbol("arrow-chain"),G=V$o(e,s,{signatureDocs:a,shouldBreak:p}),T=!1,O=!1,X=!1;return f&&(B||s.assignmentLayout)&&(O=!0,X=!ku(e.node,qg.Leading&qg.Line),T=s.assignmentLayout==="chain-tail-arrow-chain"||B&&!y),o=W$o(e,t,s,{bodyDoc:o,bodyComments:g,functionBody:m,shouldPutBodyOnSameLine:y}),ra([ra(O?Al([X?$c:"",G]):G,{shouldBreak:T,id:v})," =>",f?rCt(o,{groupId:v}):ra(o),f&&B?jI($c,"",{groupId:v}):""])}function Z$o(e,t,r,s){let{node:a}=e,o=[];if(a.async&&o.push("async "),bti(e,t))o.push(r(["params",0]));else{let p=s.expandLastArg||s.expandFirstArg,f=iCt(e,r);if(p){if(QF(f))throw new UIt;f=ra(Yur(f))}o.push(ra([qpe(e,r,t,p,!0),f]))}let g=e2(e,t,{filter(p){let f=Pve(t.originalText,oh(p));return f!==!1&&t.originalText.slice(f,f+2)==="=>"}});return g&&o.push(" ",g),o}function L$o(e,t,r){var s,a;return MD(e)||u5(e)||e.type==="ArrowFunctionExpression"||e.type==="DoExpression"||e.type==="BlockStatement"||fR(e)||((s=t.label)==null?void 0:s.hug)!==!1&&(((a=t.label)==null?void 0:a.embed)||aei(e,r.originalText))}function V$o(e,t,{signatureDocs:r,shouldBreak:s}){if(r.length===1)return r[0];let{parent:a,key:o}=e;return o!=="callee"&&Fve(a)||Nz(a)?ra([r[0]," =>",Al([Fg,sh([" =>",Fg],r.slice(1))])],{shouldBreak:s}):o==="callee"&&Fve(a)||t.assignmentLayout?ra(sh([" =>",Fg],r),{shouldBreak:s}):ra(Al(sh([" =>",Fg],r)),{shouldBreak:s})}function W$o(e,t,r,{bodyDoc:s,bodyComments:a,functionBody:o,shouldPutBodyOnSameLine:g}){let{node:p,parent:f}=e,m=r.expandLastArg&&xz(t,"all")?jI(","):"",y=(r.expandLastArg||f.type==="JSXExpressionContainer")&&!ku(p)?$c:"";return g&&Bti(o)?[" ",ra([jI("","("),Al([$c,s]),jI("",")"),m,y]),a]:(vti(o)&&(s=ra(["(",Al([$c,s]),$c,")"])),g?[" ",s,a]:[Al([Fg,s,a]),m,y])}var P$o=(e,t,r)=>{if(!(e&&t==null)){if(t.findLast)return t.findLast(r);for(let s=t.length-1;s>=0;s--){let a=t[s];if(r(a,s,t))return a}}},O$o=P$o;function rgr(e,t,r,s){let{node:a}=e,o=[],g=O$o(!1,a[s],p=>p.type!=="EmptyStatement");return e.each(({node:p})=>{p.type!=="EmptyStatement"&&(o.push(r()),p!==g&&(o.push(sl),kz(p,t)&&o.push(sl)))},s),o}function Sti(e,t,r){let s=M$o(e,t,r),{node:a,parent:o}=e;if(a.type==="Program"&&o?.type!=="ModuleExpression")return s?[s,sl]:"";let g=[];if(a.type==="StaticBlock"&&g.push("static "),g.push("{"),s)g.push(Al([sl,s]),sl);else{let p=e.grandparent;o.type==="ArrowFunctionExpression"||o.type==="FunctionExpression"||o.type==="FunctionDeclaration"||o.type==="ComponentDeclaration"||o.type==="HookDeclaration"||o.type==="ObjectMethod"||o.type==="ClassMethod"||o.type==="ClassPrivateMethod"||o.type==="ForStatement"||o.type==="WhileStatement"||o.type==="DoWhileStatement"||o.type==="DoExpression"||o.type==="ModuleExpression"||o.type==="CatchClause"&&!p.finalizer||o.type==="TSModuleDeclaration"||a.type==="StaticBlock"||g.push(sl)}return g.push("}"),g}function M$o(e,t,r){let{node:s}=e,a=m_(s.directives),o=s.body.some(f=>f.type!=="EmptyStatement"),g=ku(s,qg.Dangling);if(!a&&!o&&!g)return"";let p=[];return a&&(p.push(rgr(e,t,r,"directives")),(o||g)&&(p.push(sl),kz(T0(!1,s.directives,-1),t)&&p.push(sl))),o&&p.push(rgr(e,t,r,"body")),g&&p.push(e2(e,t)),p}function Q$o(e){let t=new WeakMap;return function(r){return t.has(r)||t.set(r,Symbol(e)),t.get(r)}}var wti=Q$o;function Y$o(e){switch(e){case null:return"";case"PlusOptional":return"+?";case"MinusOptional":return"-?";case"Optional":return"?"}}function H$o(e,t,r){let{node:s}=e;return ra([s.variance?r("variance"):"","[",Al([r("keyTparam")," in ",r("sourceType")]),"]",Y$o(s.optional),": ",r("propType")])}function Tti(e,t){return e==="+"||e==="-"?e+t:t}function X$o(e,t,r){let{node:s}=e,a=t.objectWrap==="preserve"&&mse(t.originalText,gB(s),gB(s.typeParameter));return ra(["{",Al([t.bracketSpacing?Fg:$c,ra([r("typeParameter"),s.optional?Tti(s.optional,"?"):"",s.typeAnnotation?": ":"",r("typeAnnotation")]),t.semi?jI(";"):""]),e2(e,t),t.bracketSpacing?Fg:$c,"}"],{shouldBreak:a})}var Sgr=wti("typeParameters");function J$o(e,t,r){let{node:s}=e;return xk(s).length===1&&s.type.startsWith("TS")&&!s[r][0].constraint&&e.parent.type==="ArrowFunctionExpression"&&!(t.filepath&&/\.ts$/u.test(t.filepath))}function TQe(e,t,r,s){let{node:a}=e;if(!a[s])return"";if(!Array.isArray(a[s]))return r(s);let o=eCt(e.grandparent),g=e.match(f=>!(f[s].length===1&&pse(f[s][0])),void 0,(f,m)=>m==="typeAnnotation",f=>f.type==="Identifier",qei);if(a[s].length===0||!g&&(o||a[s].length===1&&(a[s][0].type==="NullableTypeAnnotation"||tti(a[s][0]))))return["<",sh(", ",e.map(r,s)),U$o(e,t),">"];let p=a.type==="TSTypeParameterInstantiation"?"":J$o(e,t,s)?",":xz(t)?jI(","):"";return ra(["<",Al([$c,sh([",",Fg],e.map(r,s))]),p,$c,">"],{id:Sgr(a)})}function U$o(e,t){let{node:r}=e;if(!ku(r,qg.Dangling))return"";let s=!ku(r,qg.Line),a=e2(e,t,{indent:!s});return s?a:[a,sl]}function Nti(e,t,r){let{node:s,parent:a}=e,o=[s.const?"const ":""],g=s.type==="TSTypeParameter"?r("name"):s.name;if(a.type==="TSMappedType")return a.readonly&&o.push(Tti(a.readonly,"readonly")," "),o.push("[",g),s.constraint&&o.push(" in ",r("constraint")),a.nameType&&o.push(" as ",e.callParent(()=>r("nameType"))),o.push("]"),o;if(s.variance&&o.push(r("variance")),s.in&&o.push("in "),s.out&&o.push("out "),o.push(g),s.bound&&(s.usesExtendsBound&&o.push(" extends "),o.push(OD(e,r,"bound"))),s.constraint){let p=Symbol("constraint");o.push(" extends",ra(Al(Fg),{id:p}),Dz,rCt(r("constraint"),{groupId:p}))}return s.default&&o.push(" = ",r("default")),ra(o)}var Rti=H_(["ClassProperty","PropertyDefinition","ClassPrivateProperty","ClassAccessorProperty","AccessorProperty","TSAbstractPropertyDefinition","TSAbstractAccessorProperty"]);function Dti(e,t,r){let{node:s}=e,a=[e9(e),nCt(e),"class"],o=ku(s.id,qg.Trailing)||ku(s.typeParameters,qg.Trailing)||ku(s.superClass)||m_(s.extends)||m_(s.mixins)||m_(s.implements),g=[],p=[];if(s.id&&g.push(" ",r("id")),g.push(r("typeParameters")),s.superClass){let y=[z$o(e,t,r),r(s.superTypeArguments?"superTypeArguments":"superTypeParameters")],B=e.call(v=>["extends ",l5(v,y,t)],"superClass");o?p.push(Fg,ra(B)):p.push(" ",B)}else p.push(Wur(e,t,r,"extends"));p.push(Wur(e,t,r,"mixins"),Wur(e,t,r,"implements"));let f;if(o){let y;kti(s)?y=[...g,Al(p)]:y=Al([...g,p]),f=xti(s),a.push(ra(y,{id:f}))}else a.push(...g,...p);let m=s.body;return o&&m_(m.body)?a.push(jI(sl," ",{groupId:f})):a.push(" "),a.push(r("body")),a}var xti=wti("heritageGroup");function K$o(e){return jI(sl,"",{groupId:xti(e)})}function j$o(e){return["extends","mixins","implements"].reduce((t,r)=>t+(Array.isArray(e[r])?e[r].length:0),e.superClass?1:0)>1}function kti(e){return e.typeParameters&&!ku(e.typeParameters,qg.Trailing|qg.Line)&&!j$o(e)}function Wur(e,t,r,s){let{node:a}=e;if(!m_(a[s]))return"";let o=e2(e,t,{marker:s});return[kti(a)?jI(" ",Fg,{groupId:Sgr(a.typeParameters)}):Fg,o,o&&sl,s,ra(Al([Fg,sh([",",Fg],e.map(r,s))]))]}function z$o(e,t,r){let s=r("superClass"),{parent:a}=e;return a.type==="AssignmentExpression"?ra(jI(["(",Al([$c,s]),$c,")"],s)):s}function Gti(e,t,r){let{node:s}=e,a=[];return m_(s.decorators)&&a.push(Yei(e,t,r)),a.push(KIt(s)),s.static&&a.push("static "),a.push(nCt(e)),s.override&&a.push("override "),a.push(tgr(e,t,r)),a}function Fti(e,t,r){let{node:s}=e,a=[],o=t.semi?";":"";m_(s.decorators)&&a.push(Yei(e,t,r)),a.push(e9(e),KIt(s)),s.static&&a.push("static "),a.push(nCt(e)),s.override&&a.push("override "),s.readonly&&a.push("readonly "),s.variance&&a.push(r("variance")),(s.type==="ClassAccessorProperty"||s.type==="AccessorProperty"||s.type==="TSAbstractAccessorProperty")&&a.push("accessor "),a.push(FQe(e,t,r),YF(e),fti(e),OD(e,r));let g=s.type==="TSAbstractPropertyDefinition"||s.type==="TSAbstractAccessorProperty";return[GQe(e,t,r,a," =",g?void 0:"value"),o]}function q$o(e,t,r){let{node:s}=e,a=[];return e.each(({node:o,next:g,isLast:p})=>{a.push(r()),!t.semi&&Rti(o)&&$$o(o,g)&&a.push(";"),p||(a.push(sl),kz(o,t)&&a.push(sl))},"body"),ku(s,qg.Dangling)&&a.push(e2(e,t)),["{",a.length>0?[Al([sl,a]),sl]:"","}"]}function $$o(e,t){var r;let{type:s,name:a}=e.key;if(!e.computed&&s==="Identifier"&&(a==="static"||a==="get"||a==="set")&&!e.value&&!e.typeAnnotation)return!0;if(!t||t.static||t.accessibility||t.readonly)return!1;if(!t.computed){let o=(r=t.key)==null?void 0:r.name;if(o==="in"||o==="instanceof")return!0}if(Rti(t)&&t.variance&&!t.static&&!t.declare)return!0;switch(t.type){case"ClassProperty":case"PropertyDefinition":case"TSAbstractPropertyDefinition":return t.computed;case"MethodDefinition":case"TSAbstractMethodDefinition":case"ClassMethod":case"ClassPrivateMethod":{if((t.value?t.value.async:t.async)||t.kind==="get"||t.kind==="set")return!1;let o=t.value?t.value.generator:t.generator;return!!(t.computed||o)}case"TSIndexSignature":return!0}return!1}var eea=H_(["TSAsExpression","TSTypeAssertion","TSNonNullExpression","TSInstantiationExpression","TSSatisfiesExpression"]);function Zti(e){return eea(e)?Zti(e.expression):e}var tea=H_(["FunctionExpression","ArrowFunctionExpression"]);function rea(e){return e.type==="MemberExpression"||e.type==="OptionalMemberExpression"||e.type==="Identifier"&&e.name!=="undefined"}function nea(e,t){if(t.semi||Vti(e,t)||Wti(e,t))return!1;let{node:r,key:s,parent:a}=e;return!!(r.type==="ExpressionStatement"&&(s==="body"&&(a.type==="Program"||a.type==="BlockStatement"||a.type==="StaticBlock"||a.type==="TSModuleBlock")||s==="consequent"&&a.type==="SwitchCase")&&e.call(()=>Lti(e,t),"expression"))}function Lti(e,t){let{node:r}=e;switch(r.type){case"ParenthesizedExpression":case"TypeCastExpression":case"ArrayExpression":case"ArrayPattern":case"TemplateLiteral":case"TemplateElement":case"RegExpLiteral":return!0;case"ArrowFunctionExpression":if(!bti(e,t))return!0;break;case"UnaryExpression":{let{prefix:s,operator:a}=r;if(s&&(a==="+"||a==="-"))return!0;break}case"BindExpression":if(!r.object)return!0;break;case"Literal":if(r.regex)return!0;break;default:if(fR(r))return!0}return zpe(e,t)?!0:cgr(r)?e.call(()=>Lti(e,t),...tei(r)):!1}function Vti({node:e,parent:t},r){return(r.parentParser==="markdown"||r.parentParser==="mdx")&&e.type==="ExpressionStatement"&&fR(e.expression)&&t.type==="Program"&&t.body.length===1}function Wti({node:e,parent:t},r){return(r.parser==="__vue_event_binding"||r.parser==="__vue_ts_event_binding")&&e.type==="ExpressionStatement"&&t.type==="Program"&&t.body.length===1}function iea(e,t,r){let s=[r("expression")];if(Wti(e,t)){let a=Zti(e.node.expression);(tea(a)||rea(a))&&s.push(";")}else Vti(e,t)||t.semi&&s.push(";");return s}function sea(e,t,r){if(t.__isVueBindings||t.__isVueForBindingLeft){let s=e.map(r,"program","body",0,"params");if(s.length===1)return s[0];let a=sh([",",Fg],s);return t.__isVueForBindingLeft?["(",Al([$c,ra(a)]),$c,")"]:a}if(t.__isEmbeddedTypescriptGenericParameters){let s=e.map(r,"program","body",0,"typeParameters","params");return sh([",",Fg],s)}}function oea(e,t){let{node:r}=e;switch(r.type){case"RegExpLiteral":return O$n(r);case"BigIntLiteral":return ngr(r.extra.raw);case"NumericLiteral":return Zve(r.extra.raw);case"StringLiteral":return Mpe(Gve(r.extra.raw,t));case"NullLiteral":return"null";case"BooleanLiteral":return String(r.value);case"DirectiveLiteral":return M$n(r.extra.raw,t);case"Literal":{if(r.regex)return O$n(r.regex);if(r.bigint)return ngr(r.raw);let{value:s}=r;return typeof s=="number"?Zve(r.raw):typeof s=="string"?aea(e)?M$n(r.raw,t):Mpe(Gve(r.raw,t)):String(s)}}}function aea(e){if(e.key!=="expression")return;let{parent:t}=e;return t.type==="ExpressionStatement"&&t.directive}function ngr(e){return e.toLowerCase()}function O$n({pattern:e,flags:t}){return t=[...t].sort().join(""),`/${e}/${t}`}function M$n(e,t){let r=e.slice(1,-1);if(r.includes('"')||r.includes("'"))return e;let s=t.singleQuote?"'":'"';return s+r+s}function cea(e,t,r){let s=e.originalText.slice(t,r);for(let a of e[Symbol.for("comments")]){let o=gB(a);if(o>r)break;let g=oh(a);if(ge.type==="ExportDefaultDeclaration"||e.type==="DeclareExportDeclaration"&&e.default;function Mti(e,t,r){let{node:s}=e,a=[Wqo(e,t,r),e9(e),"export",Oti(s)?" default":""],{declaration:o,exported:g}=s;return ku(s,qg.Dangling)&&(a.push(" ",e2(e,t)),cei(s)&&a.push(sl)),o?a.push(" ",r("declaration")):(a.push(Aea(s)),s.type==="ExportAllDeclaration"||s.type==="DeclareExportAllDeclaration"?(a.push(" *"),g&&a.push(" as ",r("exported"))):a.push(Hti(e,t,r)),a.push(Yti(e,t,r),Jti(e,t,r))),a.push(gea(s,t)),a}var uea=H_(["ClassDeclaration","ComponentDeclaration","FunctionDeclaration","TSInterfaceDeclaration","DeclareClass","DeclareComponent","DeclareFunction","DeclareHook","HookDeclaration","TSDeclareFunction","EnumDeclaration"]);function gea(e,t){return t.semi&&(!e.declaration||Oti(e)&&!uea(e.declaration))?";":""}function wgr(e,t=!0){return e&&e!=="value"?`${t?" ":""}${e}${t?"":" "}`:""}function Qti(e,t){return wgr(e.importKind,t)}function Aea(e){return wgr(e.exportKind)}function Yti(e,t,r){let{node:s}=e;if(!s.source)return"";let a=[];return Xti(s,t)&&a.push(" from"),a.push(" ",r("source")),a}function Hti(e,t,r){let{node:s}=e;if(!Xti(s,t))return"";let a=[" "];if(m_(s.specifiers)){let o=[],g=[];e.each(()=>{let p=e.node.type;if(p==="ExportNamespaceSpecifier"||p==="ExportDefaultSpecifier"||p==="ImportNamespaceSpecifier"||p==="ImportDefaultSpecifier")o.push(r());else if(p==="ExportSpecifier"||p==="ImportSpecifier")g.push(r());else throw new Ove(s,"specifier")},"specifiers"),a.push(sh(", ",o)),g.length>0&&(o.length>0&&a.push(", "),g.length>1||o.length>0||s.specifiers.some(p=>ku(p))?a.push(ra(["{",Al([t.bracketSpacing?Fg:$c,sh([",",Fg],g)]),jI(xz(t)?",":""),t.bracketSpacing?Fg:$c,"}"])):a.push(["{",t.bracketSpacing?" ":"",...g,t.bracketSpacing?" ":"","}"]))}else a.push("{}");return a}function Xti(e,t){return e.type!=="ImportDeclaration"||m_(e.specifiers)||e.importKind==="type"?!0:Pti(t,gB(e),gB(e.source)).trimEnd().endsWith("from")}function dea(e,t){var r,s;if((r=e.extra)!=null&&r.deprecatedAssertSyntax)return"assert";let a=Pti(t,oh(e.source),(s=e.attributes)!=null&&s[0]?gB(e.attributes[0]):oh(e)).trimStart();return a.startsWith("assert")?"assert":a.startsWith("with")||m_(e.attributes)?"with":void 0}function Jti(e,t,r){let{node:s}=e;if(!s.source)return"";let a=dea(s,t);if(!a)return"";let o=[` ${a} {`];return m_(s.attributes)&&(t.bracketSpacing&&o.push(" "),o.push(sh(", ",e.map(r,"attributes"))),t.bracketSpacing&&o.push(" ")),o.push("}"),o}function pea(e,t,r){let{node:s}=e,{type:a}=s,o=a.startsWith("Import"),g=o?"imported":"local",p=o?"local":"exported",f=s[g],m=s[p],y="",B="";return a==="ExportNamespaceSpecifier"||a==="ImportNamespaceSpecifier"?y="*":f&&(y=r(g)),m&&!fea(s)&&(B=r(p)),[wgr(a==="ImportSpecifier"?s.importKind:s.exportKind,!1),y,y&&B?" as ":"",B]}function fea(e){if(e.type!=="ImportSpecifier"&&e.type!=="ExportSpecifier")return!1;let{local:t,[e.type==="ImportSpecifier"?"imported":"exported"]:r}=e;if(t.type!==r.type||!m7o(t,r))return!1;if($L(t))return t.value===r.value&&IM(t)===IM(r);switch(t.type){case"Identifier":return t.name===r.name;default:return!1}}function sCt(e,t,r){var s;let a=t.semi?";":"",{node:o}=e,g=o.type==="ObjectTypeAnnotation",p=o.type==="TSEnumDeclaration"||o.type==="EnumBooleanBody"||o.type==="EnumNumberBody"||o.type==="EnumBigIntBody"||o.type==="EnumStringBody"||o.type==="EnumSymbolBody",f=[o.type==="TSTypeLiteral"||p?"members":o.type==="TSInterfaceBody"?"body":"properties"];g&&f.push("indexers","callProperties","internalSlots");let m=f.flatMap(pe=>e.map(({node:he})=>({node:he,printed:r(),loc:gB(he)}),pe));f.length>1&&m.sort((pe,he)=>pe.loc-he.loc);let{parent:y,key:B}=e,v=g&&B==="body"&&(y.type==="InterfaceDeclaration"||y.type==="DeclareInterface"||y.type==="DeclareClass"),G=o.type==="TSInterfaceBody"||p||v||o.type==="ObjectPattern"&&y.type!=="FunctionDeclaration"&&y.type!=="FunctionExpression"&&y.type!=="ArrowFunctionExpression"&&y.type!=="ObjectMethod"&&y.type!=="ClassMethod"&&y.type!=="ClassPrivateMethod"&&y.type!=="AssignmentPattern"&&y.type!=="CatchClause"&&o.properties.some(pe=>pe.value&&(pe.value.type==="ObjectPattern"||pe.value.type==="ArrayPattern"))||o.type!=="ObjectPattern"&&t.objectWrap==="preserve"&&m.length>0&&mse(t.originalText,gB(o),m[0].loc),T=v?";":o.type==="TSInterfaceBody"||o.type==="TSTypeLiteral"?jI(a,";"):",",O=o.type==="RecordExpression"?"#{":o.exact?"{|":"{",X=o.exact?"|}":"}",U=[],le=m.map(pe=>{let he=[...U,ra(pe.printed)];return U=[T,Fg],(pe.node.type==="TSPropertySignature"||pe.node.type==="TSMethodSignature"||pe.node.type==="TSConstructSignatureDeclaration"||pe.node.type==="TSCallSignatureDeclaration")&&ku(pe.node,qg.PrettierIgnore)&&U.shift(),kz(pe.node,t)&&U.push(sl),he});if(o.inexact||o.hasUnknownMembers){let pe;if(ku(o,qg.Dangling)){let he=ku(o,qg.Line);pe=[e2(e,t),he||KW(t.originalText,oh(T0(!1,Rve(o),-1)))?sl:Fg,"..."]}else pe=["..."];le.push([...U,...pe])}let ae=(s=T0(!1,m,-1))==null?void 0:s.node,ge=!(o.inexact||o.hasUnknownMembers||ae&&(ae.type==="RestElement"||(ae.type==="TSPropertySignature"||ae.type==="TSCallSignatureDeclaration"||ae.type==="TSMethodSignature"||ae.type==="TSConstructSignatureDeclaration")&&ku(ae,qg.PrettierIgnore))),fe;if(le.length===0){if(!ku(o,qg.Dangling))return[O,X,OD(e,r)];fe=ra([O,e2(e,t,{indent:!0}),$c,X,YF(e),OD(e,r)])}else fe=[v&&m_(o.properties)?K$o(y):"",O,Al([t.bracketSpacing?Fg:$c,...le]),jI(ge&&(T!==","||xz(t))?T:""),t.bracketSpacing?Fg:$c,X,YF(e),OD(e,r)];return e.match(pe=>pe.type==="ObjectPattern"&&!m_(pe.decorators),Pur)||pse(o)&&(e.match(void 0,(pe,he)=>he==="typeAnnotation",(pe,he)=>he==="typeAnnotation",Pur)||e.match(void 0,(pe,he)=>pe.type==="FunctionTypeParam"&&he==="typeAnnotation",Pur))||!G&&e.match(pe=>pe.type==="ObjectPattern",pe=>pe.type==="AssignmentExpression"||pe.type==="VariableDeclarator")?fe:ra(fe,{shouldBreak:G})}function Pur(e,t){return(t==="params"||t==="parameters"||t==="this"||t==="rest")&&eti(e)}function Iea(e){let t=[e];for(let r=0;rv[Te]===s),T=v.type===s.type&&!G,O,X,U=0;do X=O||s,O=e.getParentNode(U),U++;while(O&&O.type===s.type&&p.every(Te=>O[Te]!==X));let le=O||v,ae=X;if(a&&(fR(s[p[0]])||fR(f)||fR(m)||Iea(ae))){B=!0,T=!0;let Te=x=>[jI("("),Al([$c,x]),$c,jI(")")],ke=x=>x.type==="NullLiteral"||x.type==="Literal"&&x.value===null||x.type==="Identifier"&&x.name==="undefined";y.push(" ? ",ke(f)?r(o):Te(r(o))," : ",m.type===s.type||ke(m)?r(g):Te(r(g)))}else{let Te=x=>t.useTabs?Al(r(x)):LU(2,r(x)),ke=[Fg,"? ",f.type===s.type?jI("","("):"",Te(o),f.type===s.type?jI("",")"):"",Fg,": ",Te(g)];y.push(v.type!==s.type||v[g]===s||G?ke:t.useTabs?fei(Al(ke)):LU(Math.max(0,t.tabWidth-2),ke))}let ge=[o,g,...p].some(Te=>ku(s[Te],ke=>hM(ke)&&mse(t.originalText,gB(ke),oh(ke)))),fe=Te=>v===le?ra(Te,{shouldBreak:ge}):ge?[Te,VU]:Te,pe=!B&&(nv(v)||v.type==="NGPipeExpression"&&v.left===s)&&!v.computed,he=hea(e),be=fe([Cea(e,t,r),T?y:Al(y),a&&pe&&!he?$c:""]);return G||he?ra([Al([$c,be]),$c]):be}function yea(e,t){return(nv(t)||t.type==="NGPipeExpression"&&t.left===e)&&!t.computed}function bea(e,t,r,s){return[...e.map(a=>Rve(a)),Rve(t),Rve(r)].flat().some(a=>hM(a)&&mse(s.originalText,gB(a),oh(a)))}var Eea=new Map([["AssignmentExpression","right"],["VariableDeclarator","init"],["ReturnStatement","argument"],["ThrowStatement","argument"],["UnaryExpression","argument"],["YieldExpression","argument"],["AwaitExpression","argument"]]);function Bea(e){let{node:t}=e;if(t.type!=="ConditionalExpression")return!1;let r,s=t;for(let a=0;!r;a++){let o=e.getParentNode(a);if(o.type==="ChainExpression"&&o.expression===s||Oh(o)&&o.callee===s||nv(o)&&o.object===s||o.type==="TSNonNullExpression"&&o.expression===s){s=o;continue}o.type==="NewExpression"&&o.callee===s||GU(o)&&o.expression===s?(r=e.getParentNode(a+1),s=o):r=o}return s===t?!1:r[Eea.get(r.type)]===s}var Our=e=>[jI("("),Al([$c,e]),$c,jI(")")];function Tgr(e,t,r,s){if(!t.experimentalTernaries)return _ea(e,t,r);let{node:a}=e,o=a.type==="ConditionalExpression",g=Cse(a),p=o?"consequent":"trueType",f=o?"alternate":"falseType",m=o?["test"]:["checkType","extendsType"],y=a[p],B=a[f],v=m.map(we=>a[we]),{parent:G}=e,T=G.type===a.type,O=T&&m.some(we=>G[we]===a),X=T&&G[f]===a,U=y.type===a.type,le=B.type===a.type,ae=le||X,ge=t.tabWidth>2||t.useTabs,fe,pe,he=0;do pe=fe||a,fe=e.getParentNode(he),he++;while(fe&&fe.type===a.type&&m.every(we=>fe[we]!==pe));let be=fe||G,Te=s&&s.assignmentLayout&&s.assignmentLayout!=="break-after-operator"&&(G.type==="AssignmentExpression"||G.type==="VariableDeclarator"||G.type==="ClassProperty"||G.type==="PropertyDefinition"||G.type==="ClassPrivateProperty"||G.type==="ObjectProperty"||G.type==="Property"),ke=(G.type==="ReturnStatement"||G.type==="ThrowStatement")&&!(U||le),x=o&&be.type==="JSXExpressionContainer"&&e.grandparent.type!=="JSXAttribute",et=Bea(e),Ue=yea(a,G),Je=g&&zpe(e,t),Xe=ge?t.useTabs?" ":" ".repeat(t.tabWidth-1):"",ft=bea(v,y,B,t)||U||le,Gt=!ae&&!T&&!g&&(x?y.type==="NullLiteral"||y.type==="Literal"&&y.value===null:ggr(y,t)&&y$n(a.test,3)),er=ae||X||g&&!T||T&&o&&y$n(a.test,1)||Gt,Ur=[];!U&&ku(y,qg.Dangling)&&e.call(we=>{Ur.push(e2(we,t),sl)},"consequent");let Ot=[];ku(a.test,qg.Dangling)&&e.call(we=>{Ot.push(e2(we,t))},"test"),!le&&ku(B,qg.Dangling)&&e.call(we=>{Ot.push(e2(we,t))},"alternate"),ku(a,qg.Dangling)&&Ot.push(e2(e,t));let dr=Symbol("test"),Ar=Symbol("consequent"),or=Symbol("test-and-consequent"),Fr=o?[Our(r("test")),a.test.type==="ConditionalExpression"?VU:""]:[r("checkType")," ","extends"," ",Cse(a.extendsType)||a.extendsType.type==="TSMappedType"?r("extendsType"):ra(Our(r("extendsType")))],$r=ra([Fr," ?"],{id:dr}),Or=r(p),In=Al([U||x&&(fR(y)||T||ae)?sl:Fg,Ur,Or]),Br=er?ra([$r,ae?In:jI(In,ra(In,{id:Ar}),{groupId:dr})],{id:or}):[$r,In],tr=r(f),gn=Gt?jI(tr,fei(Our(tr)),{groupId:or}):tr,Gn=[Br,Ot.length>0?[Al([sl,Ot]),sl]:le?sl:Gt?jI(Fg," ",{groupId:or}):Fg,":",le?" ":ge?er?jI(Xe,jI(ae||Gt?" ":Xe," "),{groupId:or}):jI(Xe," "):" ",le?gn:ra([Al(gn),x&&!Gt?$c:""]),Ue&&!et?$c:"",ft?VU:""];return Te&&!ft?ra(Al([$c,ra(Gn)])):Te||ke?ra(Al(Gn)):et||g&&O?ra([Al([$c,Gn]),Je?$c:""]):G===be?ra(Gn):Gn}function vea(e,t,r,s){let{node:a}=e;if(lgr(a))return oea(e,t);let o=t.semi?";":"",g=[];switch(a.type){case"JsExpressionRoot":return r("node");case"JsonRoot":return[r("node"),sl];case"File":return sea(e,t,r)??r("program");case"EmptyStatement":return"";case"ExpressionStatement":return iea(e,t,r);case"ChainExpression":return r("expression");case"ParenthesizedExpression":return!ku(a.expression)&&(u5(a.expression)||MD(a.expression))?["(",r("expression"),")"]:ra(["(",Al([$c,r("expression")]),$c,")"]);case"AssignmentExpression":return zqo(e,t,r);case"VariableDeclarator":return qqo(e,t,r);case"BinaryExpression":case"LogicalExpression":return Qei(e,t,r);case"AssignmentPattern":return[r("left")," = ",r("right")];case"OptionalMemberExpression":case"MemberExpression":return Uqo(e,t,r);case"MetaProperty":return[r("meta"),".",r("property")];case"BindExpression":return a.object&&g.push(r("object")),g.push(ra(Al([$c,Iti(e,t,r)]))),g;case"Identifier":return[a.name,YF(e),fti(e),OD(e,r)];case"V8IntrinsicIdentifier":return["%",a.name];case"SpreadElement":case"SpreadElementPattern":case"SpreadPropertyPattern":case"RestElement":return Cti(e,r);case"FunctionDeclaration":case"FunctionExpression":return yti(e,r,t,s);case"ArrowFunctionExpression":return F$o(e,t,r,s);case"YieldExpression":return g.push("yield"),a.delegate&&g.push("*"),a.argument&&g.push(" ",r("argument")),g;case"AwaitExpression":if(g.push("await"),a.argument){g.push(" ",r("argument"));let{parent:p}=e;if(Oh(p)&&p.callee===a||nv(p)&&p.object===a){g=[Al([$c,...g]),$c];let f=e.findAncestor(m=>m.type==="AwaitExpression"||m.type==="BlockStatement");if(f?.type!=="AwaitExpression"||!MF(f.argument,m=>m===a))return ra(g)}}return g;case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ExportAllDeclaration":return Mti(e,t,r);case"ImportDeclaration":return lea(e,t,r);case"ImportSpecifier":case"ExportSpecifier":case"ImportNamespaceSpecifier":case"ExportNamespaceSpecifier":case"ImportDefaultSpecifier":case"ExportDefaultSpecifier":return pea(e,t,r);case"ImportAttribute":return Lur(e,t,r);case"Program":case"BlockStatement":case"StaticBlock":return Sti(e,t,r);case"ClassBody":return q$o(e,t,r);case"ThrowStatement":return k$o(e,t,r);case"ReturnStatement":return x$o(e,t,r);case"NewExpression":case"ImportExpression":case"OptionalCallExpression":case"CallExpression":return jei(e,t,r);case"ObjectExpression":case"ObjectPattern":case"RecordExpression":return sCt(e,t,r);case"Property":return $It(a)?tgr(e,t,r):Lur(e,t,r);case"ObjectProperty":return Lur(e,t,r);case"ObjectMethod":return tgr(e,t,r);case"Decorator":return["@",r("expression")];case"ArrayExpression":case"ArrayPattern":case"TupleExpression":return Bgr(e,t,r);case"SequenceExpression":{let{parent:p}=e;if(p.type==="ExpressionStatement"||p.type==="ForStatement"){let f=[];return e.each(({isFirst:m})=>{m?f.push(r()):f.push(",",Al([Fg,r()]))},"expressions"),ra(f)}return ra(sh([",",Fg],e.map(r,"expressions")))}case"ThisExpression":return"this";case"Super":return"super";case"Directive":return[r("value"),o];case"UnaryExpression":return g.push(a.operator),/[a-z]$/u.test(a.operator)&&g.push(" "),ku(a.argument)?g.push(ra(["(",Al([$c,r("argument")]),$c,")"])):g.push(r("argument")),g;case"UpdateExpression":return[a.prefix?a.operator:"",r("argument"),a.prefix?"":a.operator];case"ConditionalExpression":return Tgr(e,t,r,s);case"VariableDeclaration":{let p=e.map(r,"declarations"),f=e.parent,m=f.type==="ForStatement"||f.type==="ForInStatement"||f.type==="ForOfStatement",y=a.declarations.some(v=>v.init),B;return p.length===1&&!ku(a.declarations[0])?B=p[0]:p.length>0&&(B=Al(p[0])),g=[e9(e),a.kind,B?[" ",B]:"",Al(p.slice(1).map(v=>[",",y&&!m?sl:Fg,v]))],m&&f.body!==a||g.push(o),ra(g)}case"WithStatement":return ra(["with (",r("object"),")",Ase(a.body,r("body"))]);case"IfStatement":{let p=Ase(a.consequent,r("consequent")),f=ra(["if (",ra([Al([$c,r("test")]),$c]),")",p]);if(g.push(f),a.alternate){let m=ku(a.consequent,qg.Trailing|qg.Line)||cei(a),y=a.consequent.type==="BlockStatement"&&!m;g.push(y?" ":sl),ku(a,qg.Dangling)&&g.push(e2(e,t),m?sl:" "),g.push("else",ra(Ase(a.alternate,r("alternate"),a.alternate.type==="IfStatement")))}return g}case"ForStatement":{let p=Ase(a.body,r("body")),f=e2(e,t),m=f?[f,$c]:"";return!a.init&&!a.test&&!a.update?[m,ra(["for (;;)",p])]:[m,ra(["for (",ra([Al([$c,r("init"),";",Fg,r("test"),";",Fg,r("update")]),$c]),")",p])]}case"WhileStatement":return ra(["while (",ra([Al([$c,r("test")]),$c]),")",Ase(a.body,r("body"))]);case"ForInStatement":return ra(["for (",r("left")," in ",r("right"),")",Ase(a.body,r("body"))]);case"ForOfStatement":return ra(["for",a.await?" await":""," (",r("left")," of ",r("right"),")",Ase(a.body,r("body"))]);case"DoWhileStatement":{let p=Ase(a.body,r("body"));return g=[ra(["do",p])],a.body.type==="BlockStatement"?g.push(" "):g.push(sl),g.push("while (",ra([Al([$c,r("test")]),$c]),")",o),g}case"DoExpression":return[a.async?"async ":"","do ",r("body")];case"BreakStatement":case"ContinueStatement":return g.push(a.type==="BreakStatement"?"break":"continue"),a.label&&g.push(" ",r("label")),g.push(o),g;case"LabeledStatement":return a.body.type==="EmptyStatement"?[r("label"),":;"]:[r("label"),": ",r("body")];case"TryStatement":return["try ",r("block"),a.handler?[" ",r("handler")]:"",a.finalizer?[" finally ",r("finalizer")]:""];case"CatchClause":if(a.param){let p=ku(a.param,m=>!hM(m)||m.leading&&KW(t.originalText,oh(m))||m.trailing&&KW(t.originalText,gB(m),{backwards:!0})),f=r("param");return["catch ",p?["(",Al([$c,f]),$c,") "]:["(",f,") "],r("body")]}return["catch ",r("body")];case"SwitchStatement":return[ra(["switch (",Al([$c,r("discriminant")]),$c,")"])," {",a.cases.length>0?Al([sl,sh(sl,e.map(({node:p,isLast:f})=>[r(),!f&&kz(p,t)?sl:""],"cases"))]):"",sl,"}"];case"SwitchCase":{a.test?g.push("case ",r("test"),":"):g.push("default:"),ku(a,qg.Dangling)&&g.push(" ",e2(e,t));let p=a.consequent.filter(f=>f.type!=="EmptyStatement");if(p.length>0){let f=rgr(e,t,r,"consequent");g.push(p.length===1&&p[0].type==="BlockStatement"?[" ",f]:Al([sl,f]))}return g}case"DebuggerStatement":return["debugger",o];case"ClassDeclaration":case"ClassExpression":return Dti(e,t,r);case"ClassMethod":case"ClassPrivateMethod":case"MethodDefinition":return Gti(e,t,r);case"ClassProperty":case"PropertyDefinition":case"ClassPrivateProperty":case"ClassAccessorProperty":case"AccessorProperty":return Fti(e,t,r);case"TemplateElement":return Mpe(a.value.raw);case"TemplateLiteral":return kei(e,r,t);case"TaggedTemplateExpression":return azo(e,r);case"PrivateIdentifier":return["#",a.name];case"PrivateName":return["#",r("id")];case"TopicReference":return"%";case"ArgumentPlaceholder":return"?";case"ModuleExpression":return["module ",r("body")];case"InterpreterDirective":default:throw new Ove(a,"ESTree")}}function Uti(e,t,r){let{parent:s,node:a,key:o}=e,g=[r("expression")];switch(a.type){case"AsConstExpression":g.push(" as const");break;case"AsExpression":case"TSAsExpression":g.push(" as ",r("typeAnnotation"));break;case"SatisfiesExpression":case"TSSatisfiesExpression":g.push(" satisfies ",r("typeAnnotation"));break}return o==="callee"&&Oh(s)||o==="object"&&nv(s)?ra([Al([$c,...g]),$c]):g}function Sea(e,t,r){let{node:s}=e,a=[e9(e),"component"];s.id&&a.push(" ",r("id")),a.push(r("typeParameters"));let o=wea(e,r,t);return s.rendersType?a.push(ra([o," ",r("rendersType")])):a.push(ra([o])),s.body&&a.push(" ",r("body")),t.semi&&s.type==="DeclareComponent"&&a.push(";"),a}function wea(e,t,r){let{node:s}=e,a=s.params;if(s.rest&&(a=[...a,s.rest]),a.length===0)return["(",e2(e,r,{filter:g=>g5(r.originalText,oh(g))===")"}),")"];let o=[];return Nea(e,(g,p)=>{let f=p===a.length-1;f&&s.rest&&o.push("..."),o.push(t()),!f&&(o.push(","),kz(a[p],r)?o.push(sl,sl):o.push(Fg))}),["(",Al([$c,...o]),jI(xz(r,"all")&&!Tea(s,a)?",":""),$c,")"]}function Tea(e,t){var r;return e.rest||((r=T0(!1,t,-1))==null?void 0:r.type)==="RestElement"}function Nea(e,t){let{node:r}=e,s=0,a=o=>t(o,s++);e.each(a,"params"),r.rest&&e.call(a,"rest")}function Rea(e,t,r){let{node:s}=e;return s.shorthand?r("local"):[r("name")," as ",r("local")]}function Dea(e,t,r){let{node:s}=e,a=[];return s.name&&a.push(r("name"),s.optional?"?: ":": "),a.push(r("typeAnnotation")),a}function Kti(e,t,r){return sCt(e,r,t)}function jti(e,t){let{node:r}=e,s=t("id");r.computed&&(s=["[",s,"]"]);let a="";return r.initializer&&(a=t("initializer")),r.init&&(a=t("init")),a?[s," = ",a]:s}function xea(e,t,r){let{node:s}=e,a;if(s.type==="EnumSymbolBody"||s.explicitType)switch(s.type){case"EnumBooleanBody":a="boolean";break;case"EnumNumberBody":a="number";break;case"EnumBigIntBody":a="bigint";break;case"EnumStringBody":a="string";break;case"EnumSymbolBody":a="symbol";break}return[a?`of ${a} `:"",Kti(e,t,r)]}function zti(e,t,r){let{node:s}=e;return[e9(e),s.const?"const ":"","enum ",t("id")," ",s.type==="TSEnumDeclaration"?Kti(e,t,r):t("body")]}function kea(e,t,r){let{node:s}=e,a=["hook"];s.id&&a.push(" ",r("id"));let o=qpe(e,r,t,!1,!0),g=iCt(e,r),p=Mve(s,g);return a.push(ra([p?ra(o):o,g]),s.body?" ":"",r("body")),a}function Gea(e,t,r){let{node:s}=e,a=[e9(e),"hook"];return s.id&&a.push(" ",r("id")),t.semi&&a.push(";"),a}function Q$n(e){var t;let{node:r}=e;return r.type==="HookTypeAnnotation"&&((t=e.getParentNode(2))==null?void 0:t.type)==="DeclareHook"}function Fea(e,t,r){let{node:s}=e,a=[];a.push(Q$n(e)?"":"hook ");let o=qpe(e,r,t,!1,!0),g=[];return g.push(Q$n(e)?": ":" => ",r("returnType")),Mve(s,g)&&(o=ra(o)),a.push(o,g),ra(a)}function qti(e,t,r){let{node:s}=e,a=[e9(e),"interface"],o=[],g=[];s.type!=="InterfaceTypeAnnotation"&&o.push(" ",r("id"),r("typeParameters"));let p=s.typeParameters&&!ku(s.typeParameters,qg.Trailing|qg.Line);return m_(s.extends)&&g.push(p?jI(" ",Fg,{groupId:Sgr(s.typeParameters)}):Fg,"extends ",(s.extends.length===1?Y7o:Al)(sh([",",Fg],e.map(r,"extends")))),ku(s.id,qg.Trailing)||m_(s.extends)?p?a.push(ra([...o,Al(g)])):a.push(ra(Al([...o,...g]))):a.push(...o,...g),a.push(" ",r("body")),ra(a)}function Zea(e,t,r){let{node:s}=e;if($$n(s))return s.type.slice(0,-14).toLowerCase();let a=t.semi?";":"";switch(s.type){case"ComponentDeclaration":case"DeclareComponent":case"ComponentTypeAnnotation":return Sea(e,t,r);case"ComponentParameter":return Rea(e,t,r);case"ComponentTypeParameter":return Dea(e,t,r);case"HookDeclaration":return kea(e,t,r);case"DeclareHook":return Gea(e,t,r);case"HookTypeAnnotation":return Fea(e,t,r);case"DeclareClass":return Dti(e,t,r);case"DeclareFunction":return[e9(e),"function ",r("id"),r("predicate"),a];case"DeclareModule":return["declare module ",r("id")," ",r("body")];case"DeclareModuleExports":return["declare module.exports",OD(e,r),a];case"DeclareNamespace":return["declare namespace ",r("id")," ",r("body")];case"DeclareVariable":return[e9(e),s.kind??"var"," ",r("id"),a];case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":return Mti(e,t,r);case"DeclareOpaqueType":case"OpaqueType":return C$o(e,t,r);case"DeclareTypeAlias":case"TypeAlias":return rti(e,t,r);case"IntersectionTypeAnnotation":return nti(e,t,r);case"UnionTypeAnnotation":return iti(e,t,r);case"ConditionalTypeAnnotation":return Tgr(e,t,r);case"InferTypeAnnotation":return ati(e,t,r);case"FunctionTypeAnnotation":return sti(e,t,r);case"TupleTypeAnnotation":return Bgr(e,t,r);case"TupleTypeLabeledElement":return lti(e,t,r);case"TupleTypeSpreadElement":return cti(e,t,r);case"GenericTypeAnnotation":return[r("id"),TQe(e,t,r,"typeParameters")];case"IndexedAccessType":case"OptionalIndexedAccessType":return oti(e,t,r);case"TypeAnnotation":return gti(e,t,r);case"TypeParameter":return Nti(e,t,r);case"TypeofTypeAnnotation":return dti(e,r);case"ExistsTypeAnnotation":return"*";case"ArrayTypeAnnotation":return Ati(r);case"DeclareEnum":case"EnumDeclaration":return zti(e,r,t);case"EnumBooleanBody":case"EnumNumberBody":case"EnumBigIntBody":case"EnumStringBody":case"EnumSymbolBody":return xea(e,r,t);case"EnumBooleanMember":case"EnumNumberMember":case"EnumBigIntMember":case"EnumStringMember":case"EnumDefaultedMember":return jti(e,r);case"FunctionTypeParam":{let o=s.name?r("name"):e.parent.this===s?"this":"";return[o,YF(e),o?": ":"",r("typeAnnotation")]}case"DeclareInterface":case"InterfaceDeclaration":case"InterfaceTypeAnnotation":return qti(e,t,r);case"ClassImplements":case"InterfaceExtends":return[r("id"),r("typeParameters")];case"NullableTypeAnnotation":return["?",r("typeAnnotation")];case"Variance":{let{kind:o}=s;return agr.ok(o==="plus"||o==="minus"),o==="plus"?"+":"-"}case"KeyofTypeAnnotation":return["keyof ",r("argument")];case"ObjectTypeCallProperty":return[s.static?"static ":"",r("value")];case"ObjectTypeMappedTypeProperty":return H$o(e,t,r);case"ObjectTypeIndexer":return[s.static?"static ":"",s.variance?r("variance"):"","[",r("id"),s.id?": ":"",r("key"),"]: ",r("value")];case"ObjectTypeProperty":{let o="";return s.proto?o="proto ":s.static&&(o="static "),[o,s.kind!=="init"?s.kind+" ":"",s.variance?r("variance"):"",FQe(e,t,r),YF(e),$It(s)?"":": ",r("value")]}case"ObjectTypeAnnotation":return sCt(e,t,r);case"ObjectTypeInternalSlot":return[s.static?"static ":"","[[",r("id"),"]]",YF(e),s.method?"":": ",r("value")];case"ObjectTypeSpreadProperty":return Cti(e,r);case"QualifiedTypeofIdentifier":case"QualifiedTypeIdentifier":return[r("qualification"),".",r("id")];case"NullLiteralTypeAnnotation":return"null";case"BooleanLiteralTypeAnnotation":return String(s.value);case"StringLiteralTypeAnnotation":return Mpe(Gve(IM(s),t));case"NumberLiteralTypeAnnotation":return Zve(s.raw??s.extra.raw);case"BigIntLiteralTypeAnnotation":return ngr(s.raw??s.extra.raw);case"TypeCastExpression":return["(",r("expression"),OD(e,r),")"];case"TypePredicate":return pti(e,r);case"TypeOperator":return[s.operator," ",r("typeAnnotation")];case"TypeParameterDeclaration":case"TypeParameterInstantiation":return TQe(e,t,r,"params");case"InferredPredicate":case"DeclaredPredicate":return[e.key==="predicate"&&e.parent.type!=="DeclareFunction"&&!e.parent.returnType?": ":" ","%checks",...s.type==="DeclaredPredicate"?["(",r("value"),")"]:[]];case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":return Uti(e,t,r)}}function Lea(e,t,r){var s;let{node:a}=e;if(!a.type.startsWith("TS"))return;if(eei(a))return a.type.slice(2,-7).toLowerCase();let o=t.semi?";":"",g=[];switch(a.type){case"TSThisType":return"this";case"TSTypeAssertion":{let p=!(MD(a.expression)||u5(a.expression)),f=ra(["<",Al([$c,r("typeAnnotation")]),$c,">"]),m=[jI("("),Al([$c,r("expression")]),$c,jI(")")];return p?Ope([[f,r("expression")],[f,ra(m,{shouldBreak:!0})],[f,r("expression")]]):ra([f,r("expression")])}case"TSDeclareFunction":return yti(e,r,t);case"TSExportAssignment":return["export = ",r("expression"),o];case"TSModuleBlock":return Sti(e,t,r);case"TSInterfaceBody":case"TSTypeLiteral":return sCt(e,t,r);case"TSTypeAliasDeclaration":return rti(e,t,r);case"TSQualifiedName":return[r("left"),".",r("right")];case"TSAbstractMethodDefinition":case"TSDeclareMethod":return Gti(e,t,r);case"TSAbstractAccessorProperty":case"TSAbstractPropertyDefinition":return Fti(e,t,r);case"TSInterfaceHeritage":case"TSClassImplements":case"TSExpressionWithTypeArguments":case"TSInstantiationExpression":return[r("expression"),r(a.typeArguments?"typeArguments":"typeParameters")];case"TSTemplateLiteralType":return kei(e,r,t);case"TSNamedTupleMember":return lti(e,t,r);case"TSRestType":return cti(e,t,r);case"TSOptionalType":return[r("typeAnnotation"),"?"];case"TSInterfaceDeclaration":return qti(e,t,r);case"TSTypeParameterDeclaration":case"TSTypeParameterInstantiation":return TQe(e,t,r,"params");case"TSTypeParameter":return Nti(e,t,r);case"TSAsExpression":case"TSSatisfiesExpression":return Uti(e,t,r);case"TSArrayType":return Ati(r);case"TSPropertySignature":return[a.readonly?"readonly ":"",FQe(e,t,r),YF(e),OD(e,r)];case"TSParameterProperty":return[KIt(a),a.static?"static ":"",a.override?"override ":"",a.readonly?"readonly ":"",r("parameter")];case"TSTypeQuery":return dti(e,r);case"TSIndexSignature":{let p=a.parameters.length>1?jI(xz(t)?",":""):"",f=ra([Al([$c,sh([", ",$c],e.map(r,"parameters"))]),p,$c]),m=e.parent.type==="ClassBody"&&e.key==="body";return[m&&a.static?"static ":"",a.readonly?"readonly ":"","[",a.parameters?f:"","]",OD(e,r),m?o:""]}case"TSTypePredicate":return pti(e,r);case"TSNonNullExpression":return[r("expression"),"!"];case"TSImportType":return["import(",r("argument"),")",a.qualifier?[".",r("qualifier")]:"",TQe(e,t,r,a.typeArguments?"typeArguments":"typeParameters")];case"TSLiteralType":return r("literal");case"TSIndexedAccessType":return oti(e,t,r);case"TSTypeOperator":return[a.operator," ",r("typeAnnotation")];case"TSMappedType":return X$o(e,t,r);case"TSMethodSignature":{let p=a.kind&&a.kind!=="method"?`${a.kind} `:"";g.push(KIt(a),p,a.computed?"[":"",r("key"),a.computed?"]":"",YF(e));let f=qpe(e,r,t,!1,!0),m=a.returnType?"returnType":"typeAnnotation",y=a[m],B=y?OD(e,r,m):"",v=Mve(a,B);return g.push(v?ra(f):f),y&&g.push(ra(B)),ra(g)}case"TSNamespaceExportDeclaration":return["export as namespace ",r("id"),t.semi?";":""];case"TSEnumDeclaration":return zti(e,r,t);case"TSEnumMember":return jti(e,r);case"TSImportEqualsDeclaration":return[a.isExport?"export ":"","import ",Qti(a,!1),r("id")," = ",r("moduleReference"),t.semi?";":""];case"TSExternalModuleReference":return["require(",r("expression"),")"];case"TSModuleDeclaration":{let{parent:p}=e,f=p.type==="TSModuleDeclaration",m=((s=a.body)==null?void 0:s.type)==="TSModuleDeclaration";return f?g.push("."):(g.push(e9(e)),a.kind!=="global"&&g.push(a.kind," ")),g.push(r("id")),m?g.push(r("body")):a.body?g.push(" ",ra(r("body"))):g.push(o),g}case"TSConditionalType":return Tgr(e,t,r);case"TSInferType":return ati(e,t,r);case"TSIntersectionType":return nti(e,t,r);case"TSUnionType":return iti(e,t,r);case"TSFunctionType":case"TSCallSignatureDeclaration":case"TSConstructorType":case"TSConstructSignatureDeclaration":return sti(e,t,r);case"TSTupleType":return Bgr(e,t,r);case"TSTypeReference":return[r("typeName"),TQe(e,t,r,a.typeArguments?"typeArguments":"typeParameters")];case"TSTypeAnnotation":return gti(e,t,r);case"TSEmptyBodyFunctionExpression":return vgr(e,t,r);case"TSJSDocAllType":return"*";case"TSJSDocUnknownType":return"?";case"TSJSDocNullableType":return W$n(e,r,"?");case"TSJSDocNonNullableType":return W$n(e,r,"!");case"TSParenthesizedType":default:throw new Ove(a,"TypeScript")}}function Vea(e,t,r,s){if(Mei(e))return $zo(e,t);for(let a of[Zqo,Nqo,Zea,Lea,vea]){let o=a(e,t,r,s);if(o!==void 0)return o}}var Wea=H_(["ClassMethod","ClassPrivateMethod","ClassProperty","ClassAccessorProperty","AccessorProperty","TSAbstractAccessorProperty","PropertyDefinition","TSAbstractPropertyDefinition","ClassPrivateProperty","MethodDefinition","TSAbstractMethodDefinition","TSDeclareMethod"]);function Pea(e,t,r,s){var a;e.isRoot&&((a=t.__onHtmlBindingRoot)==null||a.call(t,e.node,t));let o=Vea(e,t,r,s);if(!o)return"";let{node:g}=e;if(Wea(g))return o;let p=m_(g.decorators),f=Pqo(e,t,r),m=g.type==="ClassExpression";if(p&&!m)return Hur(o,v=>ra([f,v]));let y=zpe(e,t),B=nea(e,t);return!f&&!y&&!B?o:Hur(o,v=>[B?";":"",y?"(":"",y&&m&&p?[Al([Fg,f,v]),Fg]:[f,v],y?")":""])}var Oea=Pea,Mea={avoidAstMutation:!0},Qea=[{linguistLanguageId:174,name:"JSON.stringify",type:"data",color:"#292929",tmScope:"source.json",aceMode:"json",codemirrorMode:"javascript",codemirrorMimeType:"application/json",aliases:["geojson","jsonl","topojson"],extensions:[".importmap"],filenames:["package.json","package-lock.json","composer.json"],parsers:["json-stringify"],vscodeLanguageIds:["json"]},{linguistLanguageId:174,name:"JSON",type:"data",color:"#292929",tmScope:"source.json",aceMode:"json",codemirrorMode:"javascript",codemirrorMimeType:"application/json",aliases:["geojson","jsonl","topojson"],extensions:[".json",".4DForm",".4DProject",".avsc",".geojson",".gltf",".har",".ice",".JSON-tmLanguage",".mcmeta",".tfstate",".tfstate.backup",".topojson",".webapp",".webmanifest",".yy",".yyp"],filenames:[".all-contributorsrc",".arcconfig",".auto-changelog",".c8rc",".htmlhintrc",".imgbotconfig",".nycrc",".tern-config",".tern-project",".watchmanconfig","Pipfile.lock","composer.lock","flake.lock","mcmod.info",".babelrc",".jscsrc",".jshintrc",".jslintrc",".swcrc"],parsers:["json"],vscodeLanguageIds:["json"]},{linguistLanguageId:423,name:"JSON with Comments",type:"data",color:"#292929",group:"JSON",tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"text/javascript",aliases:["jsonc"],extensions:[".jsonc",".code-snippets",".code-workspace",".sublime-build",".sublime-commands",".sublime-completions",".sublime-keymap",".sublime-macro",".sublime-menu",".sublime-mousemap",".sublime-project",".sublime-settings",".sublime-theme",".sublime-workspace",".sublime_metrics",".sublime_session"],filenames:[],parsers:["jsonc"],vscodeLanguageIds:["jsonc"]},{linguistLanguageId:175,name:"JSON5",type:"data",color:"#267CB9",extensions:[".json5"],tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"application/json",parsers:["json5"],vscodeLanguageIds:["json5"]}],$ti={};jIt($ti,{getVisitorKeys:()=>Jea,massageAstNode:()=>eri,print:()=>Uea});var Yea={JsonRoot:["node"],ArrayExpression:["elements"],ObjectExpression:["properties"],ObjectProperty:["key","value"],UnaryExpression:["argument"],NullLiteral:[],BooleanLiteral:[],StringLiteral:[],NumericLiteral:[],Identifier:[],TemplateLiteral:["quasis"],TemplateElement:[]},Hea=Yea,Xea=z$n(Hea),Jea=Xea;function Uea(e,t,r){let{node:s}=e;switch(s.type){case"JsonRoot":return[r("node"),sl];case"ArrayExpression":{if(s.elements.length===0)return"[]";let a=e.map(()=>e.node===null?"null":r(),"elements");return["[",Al([sl,sh([",",sl],a)]),sl,"]"]}case"ObjectExpression":return s.properties.length===0?"{}":["{",Al([sl,sh([",",sl],e.map(r,"properties"))]),sl,"}"];case"ObjectProperty":return[r("key"),": ",r("value")];case"UnaryExpression":return[s.operator==="+"?"":s.operator,r("argument")];case"NullLiteral":return"null";case"BooleanLiteral":return s.value?"true":"false";case"StringLiteral":return JSON.stringify(s.value);case"NumericLiteral":return Y$n(e)?JSON.stringify(String(s.value)):JSON.stringify(s.value);case"Identifier":return Y$n(e)?JSON.stringify(s.name):s.name;case"TemplateLiteral":return r(["quasis",0]);case"TemplateElement":return JSON.stringify(s.value.cooked);default:throw new Ove(s,"JSON")}}function Y$n(e){return e.key==="key"&&e.parent.type==="ObjectProperty"}var Kea=new Set(["start","end","extra","loc","comments","leadingComments","trailingComments","innerComments","errors","range","tokens"]);function eri(e,t){let{type:r}=e;if(r==="ObjectProperty"){let{key:s}=e;s.type==="Identifier"?t.key={type:"StringLiteral",value:s.name}:s.type==="NumericLiteral"&&(t.key={type:"StringLiteral",value:String(s.value)});return}if(r==="UnaryExpression"&&e.operator==="+")return t.argument;if(r==="ArrayExpression"){for(let[s,a]of e.elements.entries())a===null&&t.elements.splice(s,0,{type:"NullLiteral"});return}if(r==="TemplateLiteral")return{type:"StringLiteral",value:e.quasis[0].value.cooked}}eri.ignoredProperties=Kea;var BQe={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},dse="JavaScript",jea={arrowParens:{category:dse,type:"choice",default:"always",description:"Include parentheses around a sole arrow function parameter.",choices:[{value:"always",description:"Always include parens. Example: `(x) => x`"},{value:"avoid",description:"Omit parens when possible. Example: `x => x`"}]},bracketSameLine:BQe.bracketSameLine,objectWrap:BQe.objectWrap,bracketSpacing:BQe.bracketSpacing,jsxBracketSameLine:{category:dse,type:"boolean",description:"Put > on the last line instead of at a new line.",deprecated:"2.4.0"},semi:{category:dse,type:"boolean",default:!0,description:"Print semicolons.",oppositeDescription:"Do not print semicolons, except at the beginning of lines which may need them."},experimentalOperatorPosition:{category:dse,type:"choice",default:"end",description:"Where to print operators when binary expressions wrap lines.",choices:[{value:"start",description:"Print operators at the start of new lines."},{value:"end",description:"Print operators at the end of previous lines."}]},experimentalTernaries:{category:dse,type:"boolean",default:!1,description:"Use curious ternaries, with the question mark after the condition.",oppositeDescription:"Default behavior of ternaries; keep question marks on the same line as the consequent."},singleQuote:BQe.singleQuote,jsxSingleQuote:{category:dse,type:"boolean",default:!1,description:"Use single quotes in JSX."},quoteProps:{category:dse,type:"choice",default:"as-needed",description:"Change when properties in objects are quoted.",choices:[{value:"as-needed",description:"Only add quotes around object properties where required."},{value:"consistent",description:"If at least one property in an object requires quotes, quote all properties."},{value:"preserve",description:"Respect the input use of quotes in object properties."}]},trailingComma:{category:dse,type:"choice",default:"all",description:"Print trailing commas wherever possible when multi-line.",choices:[{value:"all",description:"Trailing commas wherever possible (including function arguments)."},{value:"es5",description:"Trailing commas where valid in ES5 (objects, arrays, etc.)"},{value:"none",description:"No trailing commas."}]},singleAttributePerLine:BQe.singleAttributePerLine},tri=jea,rri={estree:U$n,"estree-json":$ti},nri=[...H6o,...Qea],zea=J$n;var Zgr={};jf(Zgr,{default:()=>Era,languages:()=>_ri,options:()=>yri,parsers:()=>Fgr,printers:()=>Dri});var qea=Object.defineProperty,cri=(e,t)=>{for(var r in t)qea(e,r,{get:t[r],enumerable:!0})},lri={};cri(lri,{languages:()=>_ri,options:()=>yri,parsers:()=>Fgr,printers:()=>Dri});var $ea=(e,t,r,s)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,s):r.global?t.replace(r,s):t.split(r).join(s)},Ngr=$ea,eta="indent",tta="group",rta="if-break",Ggr="line",nta="break-parent",uri=()=>{},PQe=uri,gri=uri;function r9(e){return PQe(e),{type:eta,contents:e}}function yM(e,t={}){return PQe(e),gri(t.expandedStates,!0),{type:tta,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function PU(e,t="",r={}){return PQe(e),t!==""&&PQe(t),{type:rta,breakContents:e,flatContents:t,groupId:r.groupId}}var ita={type:nta},sta={type:Ggr,hard:!0},Yve={type:Ggr},iv={type:Ggr,soft:!0},Sw=[sta,ita];function YD(e,t){PQe(e),gri(t);let r=[];for(let s=0;s{let a=!!(s!=null&&s.backwards);if(r===!1)return!1;let{length:o}=t,g=r;for(;g>=0&&g=f&&o(y)<=m&&g.add(y);return r.slice(f,m)}var fqo=pqo;function rgr(e,t){var r,s,a,o,g,p,f,m,y;if(e.isRoot)return!1;let{node:B,key:v,parent:k}=e;if(t.__isInHtmlInterpolation&&!t.bracketSpacing&&hqo(B)&&w5e(e))return!0;if(Iqo(B))return!1;if(B.type==="Identifier"){if((r=B.extra)!=null&&r.parenthesized&&/^PRETTIER_HTML_PLACEHOLDER_\d+_\d+_IN_JS$/u.test(B.name)||v==="left"&&(B.name==="async"&&!k.await||B.name==="let")&&k.type==="ForOfStatement")return!0;if(B.name==="let"){let T=(s=e.findAncestor(O=>O.type==="ForOfStatement"))==null?void 0:s.left;if(T&&YF(T,O=>O===B))return!0}if(v==="object"&&B.name==="let"&&k.type==="MemberExpression"&&k.computed&&!k.optional){let T=e.findAncestor(X=>X.type==="ExpressionStatement"||X.type==="ForStatement"||X.type==="ForInStatement"),O=T?T.type==="ExpressionStatement"?T.expression:T.type==="ForStatement"?T.init:T.left:void 0;if(O&&YF(O,X=>X===B))return!0}if(v==="expression")switch(B.name){case"await":case"interface":case"module":case"using":case"yield":case"let":case"component":case"hook":case"type":{let T=e.findAncestor(O=>!QU(O));if(T!==k&&T.type==="ExpressionStatement")return!0}}return!1}if(B.type==="ObjectExpression"||B.type==="FunctionExpression"||B.type==="ClassExpression"||B.type==="DoExpression"){let T=(a=e.findAncestor(O=>O.type==="ExpressionStatement"))==null?void 0:a.expression;if(T&&YF(T,O=>O===B))return!0}if(B.type==="ObjectExpression"){let T=(o=e.findAncestor(O=>O.type==="ArrowFunctionExpression"))==null?void 0:o.body;if(T&&T.type!=="SequenceExpression"&&T.type!=="AssignmentExpression"&&YF(T,O=>O===B))return!0}switch(k.type){case"ParenthesizedExpression":return!1;case"ClassDeclaration":case"ClassExpression":if(v==="superClass"&&(B.type==="ArrowFunctionExpression"||B.type==="AssignmentExpression"||B.type==="AwaitExpression"||B.type==="BinaryExpression"||B.type==="ConditionalExpression"||B.type==="LogicalExpression"||B.type==="NewExpression"||B.type==="ObjectExpression"||B.type==="SequenceExpression"||B.type==="TaggedTemplateExpression"||B.type==="UnaryExpression"||B.type==="UpdateExpression"||B.type==="YieldExpression"||B.type==="TSNonNullExpression"||B.type==="ClassExpression"&&h_(B.decorators)))return!0;break;case"ExportDefaultDeclaration":return Uei(e,t)||B.type==="SequenceExpression";case"Decorator":if(v==="expression"&&!yqo(B))return!0;break;case"TypeAnnotation":if(e.match(void 0,void 0,(T,O)=>O==="returnType"&&T.type==="ArrowFunctionExpression")&&mqo(B))return!0;break;case"BinaryExpression":if(v==="left"&&(k.operator==="in"||k.operator==="instanceof")&&B.type==="UnaryExpression")return!0;break;case"VariableDeclarator":if(v==="init"&&e.match(void 0,void 0,(T,O)=>O==="declarations"&&T.type==="VariableDeclaration",(T,O)=>O==="left"&&T.type==="ForInStatement"))return!0;break}switch(B.type){case"UpdateExpression":if(k.type==="UnaryExpression")return B.prefix&&(B.operator==="++"&&k.operator==="+"||B.operator==="--"&&k.operator==="-");case"UnaryExpression":switch(k.type){case"UnaryExpression":return B.operator===k.operator&&(B.operator==="+"||B.operator==="-");case"BindExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":return v==="object";case"TaggedTemplateExpression":return!0;case"NewExpression":case"CallExpression":case"OptionalCallExpression":return v==="callee";case"BinaryExpression":return v==="left"&&k.operator==="**";case"TSNonNullExpression":return!0;default:return!1}case"BinaryExpression":if(k.type==="UpdateExpression"||B.operator==="in"&&Cqo(e))return!0;if(B.operator==="|>"&&(g=B.extra)!=null&&g.parenthesized){let T=e.grandparent;if(T.type==="BinaryExpression"&&T.operator==="|>")return!0}case"TSTypeAssertion":case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":case"LogicalExpression":switch(k.type){case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":return!QU(B);case"ConditionalExpression":return QU(B)||K7o(B);case"CallExpression":case"NewExpression":case"OptionalCallExpression":return v==="callee";case"ClassExpression":case"ClassDeclaration":return v==="superClass";case"TSTypeAssertion":case"TaggedTemplateExpression":case"UnaryExpression":case"JSXSpreadAttribute":case"SpreadElement":case"BindExpression":case"AwaitExpression":case"TSNonNullExpression":case"UpdateExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":return v==="object";case"AssignmentExpression":case"AssignmentPattern":return v==="left"&&(B.type==="TSTypeAssertion"||QU(B));case"LogicalExpression":if(B.type==="LogicalExpression")return k.operator!==B.operator;case"BinaryExpression":{let{operator:T,type:O}=B;if(!T&&O!=="TSTypeAssertion")return!0;let X=UIt(T),U=k.operator,le=UIt(U);return le>X||v==="right"&&le===X||le===X&&!Cgr(U,T)?!0:le");default:return!1}case"TSFunctionType":if(e.match(T=>T.type==="TSFunctionType",(T,O)=>O==="typeAnnotation"&&T.type==="TSTypeAnnotation",(T,O)=>O==="returnType"&&T.type==="ArrowFunctionExpression"))return!0;case"TSConditionalType":case"TSConstructorType":case"ConditionalTypeAnnotation":if(v==="extendsType"&&bse(B)&&k.type===B.type||v==="checkType"&&bse(k))return!0;if(v==="extendsType"&&k.type==="TSConditionalType"){let{typeAnnotation:T}=B.returnType||B.typeAnnotation;if(T.type==="TSTypePredicate"&&T.typeAnnotation&&(T=T.typeAnnotation.typeAnnotation),T.type==="TSInferType"&&T.typeParameter.constraint)return!0}case"TSUnionType":case"TSIntersectionType":if((yse(k)||mgr(k))&&k.types.length>1&&(!B.types||B.types.length>1))return!0;case"TSInferType":if(B.type==="TSInferType"){if(k.type==="TSRestType")return!1;if(v==="types"&&(k.type==="TSUnionType"||k.type==="TSIntersectionType")&&B.typeParameter.type==="TSTypeParameter"&&B.typeParameter.constraint)return!0}case"TSTypeOperator":return k.type==="TSArrayType"||k.type==="TSOptionalType"||k.type==="TSRestType"||v==="objectType"&&k.type==="TSIndexedAccessType"||k.type==="TSTypeOperator"||k.type==="TSTypeAnnotation"&&e.grandparent.type.startsWith("TSJSDoc");case"TSTypeQuery":return v==="objectType"&&k.type==="TSIndexedAccessType"||v==="elementType"&&k.type==="TSArrayType";case"TypeOperator":return k.type==="ArrayTypeAnnotation"||k.type==="NullableTypeAnnotation"||v==="objectType"&&(k.type==="IndexedAccessType"||k.type==="OptionalIndexedAccessType")||k.type==="TypeOperator";case"TypeofTypeAnnotation":return v==="objectType"&&(k.type==="IndexedAccessType"||k.type==="OptionalIndexedAccessType")||v==="elementType"&&k.type==="ArrayTypeAnnotation";case"ArrayTypeAnnotation":return k.type==="NullableTypeAnnotation";case"IntersectionTypeAnnotation":case"UnionTypeAnnotation":return k.type==="TypeOperator"||k.type==="ArrayTypeAnnotation"||k.type==="NullableTypeAnnotation"||k.type==="IntersectionTypeAnnotation"||k.type==="UnionTypeAnnotation"||v==="objectType"&&(k.type==="IndexedAccessType"||k.type==="OptionalIndexedAccessType");case"InferTypeAnnotation":case"NullableTypeAnnotation":return k.type==="ArrayTypeAnnotation"||v==="objectType"&&(k.type==="IndexedAccessType"||k.type==="OptionalIndexedAccessType");case"ComponentTypeAnnotation":case"FunctionTypeAnnotation":{if(B.type==="ComponentTypeAnnotation"&&(B.rendersType===null||B.rendersType===void 0))return!1;if(e.match(void 0,(O,X)=>X==="typeAnnotation"&&O.type==="TypeAnnotation",(O,X)=>X==="returnType"&&O.type==="ArrowFunctionExpression")||e.match(void 0,(O,X)=>X==="typeAnnotation"&&O.type==="TypePredicate",(O,X)=>X==="typeAnnotation"&&O.type==="TypeAnnotation",(O,X)=>X==="returnType"&&O.type==="ArrowFunctionExpression"))return!0;let T=k.type==="NullableTypeAnnotation"?e.grandparent:k;return T.type==="UnionTypeAnnotation"||T.type==="IntersectionTypeAnnotation"||T.type==="ArrayTypeAnnotation"||v==="objectType"&&(T.type==="IndexedAccessType"||T.type==="OptionalIndexedAccessType")||v==="checkType"&&k.type==="ConditionalTypeAnnotation"||v==="extendsType"&&k.type==="ConditionalTypeAnnotation"&&((p=B.returnType)==null?void 0:p.type)==="InferTypeAnnotation"&&((f=B.returnType)==null?void 0:f.typeParameter.bound)||T.type==="NullableTypeAnnotation"||k.type==="FunctionTypeParam"&&k.name===null&&Vk(B).some(O=>{var X;return((X=O.typeAnnotation)==null?void 0:X.type)==="NullableTypeAnnotation"})}case"OptionalIndexedAccessType":return v==="objectType"&&k.type==="IndexedAccessType";case"StringLiteral":case"NumericLiteral":case"Literal":if(typeof B.value=="string"&&k.type==="ExpressionStatement"&&!k.directive){let T=e.grandparent;return T.type==="Program"||T.type==="BlockStatement"}return v==="object"&&k.type==="MemberExpression"&&typeof B.value=="number";case"AssignmentExpression":{let T=e.grandparent;return v==="body"&&k.type==="ArrowFunctionExpression"?!0:v==="key"&&(k.type==="ClassProperty"||k.type==="PropertyDefinition")&&k.computed||(v==="init"||v==="update")&&k.type==="ForStatement"?!1:k.type==="ExpressionStatement"?B.left.type==="ObjectPattern":!(v==="key"&&k.type==="TSPropertySignature"||k.type==="AssignmentExpression"||k.type==="SequenceExpression"&&T.type==="ForStatement"&&(T.init===k||T.update===k)||v==="value"&&k.type==="Property"&&T.type==="ObjectPattern"&&T.properties.includes(k)||k.type==="NGChainedExpression"||v==="node"&&k.type==="JsExpressionRoot")}case"ConditionalExpression":switch(k.type){case"TaggedTemplateExpression":case"UnaryExpression":case"SpreadElement":case"BinaryExpression":case"LogicalExpression":case"NGPipeExpression":case"ExportDefaultDeclaration":case"AwaitExpression":case"JSXSpreadAttribute":case"TSTypeAssertion":case"TypeCastExpression":case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":case"TSNonNullExpression":return!0;case"NewExpression":case"CallExpression":case"OptionalCallExpression":return v==="callee";case"ConditionalExpression":return t.experimentalTernaries?!1:v==="test";case"MemberExpression":case"OptionalMemberExpression":return v==="object";default:return!1}case"FunctionExpression":switch(k.type){case"NewExpression":case"CallExpression":case"OptionalCallExpression":return v==="callee";case"TaggedTemplateExpression":return!0;default:return!1}case"ArrowFunctionExpression":switch(k.type){case"BinaryExpression":return k.operator!=="|>"||((m=B.extra)==null?void 0:m.parenthesized);case"NewExpression":case"CallExpression":case"OptionalCallExpression":return v==="callee";case"MemberExpression":case"OptionalMemberExpression":return v==="object";case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":case"TSNonNullExpression":case"BindExpression":case"TaggedTemplateExpression":case"UnaryExpression":case"LogicalExpression":case"AwaitExpression":case"TSTypeAssertion":return!0;case"ConditionalExpression":return v==="test";default:return!1}case"ClassExpression":switch(k.type){case"NewExpression":return v==="callee";default:return!1}case"OptionalMemberExpression":case"OptionalCallExpression":case"CallExpression":case"MemberExpression":if(_qo(e))return!0;case"TaggedTemplateExpression":case"TSNonNullExpression":if(v==="callee"&&(k.type==="BindExpression"||k.type==="NewExpression")){let T=B;for(;T;)switch(T.type){case"CallExpression":case"OptionalCallExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":case"BindExpression":T=T.object;break;case"TaggedTemplateExpression":T=T.tag;break;case"TSNonNullExpression":T=T.expression;break;default:return!1}}return!1;case"BindExpression":return v==="callee"&&(k.type==="BindExpression"||k.type==="NewExpression")||v==="object"&&iv(k);case"NGPipeExpression":return!(k.type==="NGRoot"||k.type==="NGMicrosyntaxExpression"||k.type==="ObjectProperty"&&!((y=B.extra)!=null&&y.parenthesized)||XD(k)||v==="arguments"&&Qh(k)||v==="right"&&k.type==="NGPipeExpression"||v==="property"&&k.type==="MemberExpression"||k.type==="AssignmentExpression");case"JSXFragment":case"JSXElement":return v==="callee"||v==="left"&&k.type==="BinaryExpression"&&k.operator==="<"||!XD(k)&&k.type!=="ArrowFunctionExpression"&&k.type!=="AssignmentExpression"&&k.type!=="AssignmentPattern"&&k.type!=="BinaryExpression"&&k.type!=="NewExpression"&&k.type!=="ConditionalExpression"&&k.type!=="ExpressionStatement"&&k.type!=="JsExpressionRoot"&&k.type!=="JSXAttribute"&&k.type!=="JSXElement"&&k.type!=="JSXExpressionContainer"&&k.type!=="JSXFragment"&&k.type!=="LogicalExpression"&&!Qh(k)&&!Fz(k)&&k.type!=="ReturnStatement"&&k.type!=="ThrowStatement"&&k.type!=="TypeCastExpression"&&k.type!=="VariableDeclarator"&&k.type!=="YieldExpression";case"TSInstantiationExpression":return v==="object"&&iv(k)}return!1}var Iqo=X_(["BlockStatement","BreakStatement","ComponentDeclaration","ClassBody","ClassDeclaration","ClassMethod","ClassProperty","PropertyDefinition","ClassPrivateProperty","ContinueStatement","DebuggerStatement","DeclareComponent","DeclareClass","DeclareExportAllDeclaration","DeclareExportDeclaration","DeclareFunction","DeclareHook","DeclareInterface","DeclareModule","DeclareModuleExports","DeclareNamespace","DeclareVariable","DeclareEnum","DoWhileStatement","EnumDeclaration","ExportAllDeclaration","ExportDefaultDeclaration","ExportNamedDeclaration","ExpressionStatement","ForInStatement","ForOfStatement","ForStatement","FunctionDeclaration","HookDeclaration","IfStatement","ImportDeclaration","InterfaceDeclaration","LabeledStatement","MethodDefinition","ReturnStatement","SwitchStatement","ThrowStatement","TryStatement","TSDeclareFunction","TSEnumDeclaration","TSImportEqualsDeclaration","TSInterfaceDeclaration","TSModuleDeclaration","TSNamespaceExportDeclaration","TypeAlias","VariableDeclaration","WhileStatement","WithStatement"]);function Cqo(e){let t=0,{node:r}=e;for(;r;){let s=e.getParentNode(t++);if(s?.type==="ForStatement"&&s.init===r)return!0;r=s}return!1}function mqo(e){return Jur(e,t=>t.type==="ObjectTypeAnnotation"&&Jur(t,r=>r.type==="FunctionTypeAnnotation"))}function hqo(e){return AY(e)}function w5e(e){let{parent:t,key:r}=e;switch(t.type){case"NGPipeExpression":if(r==="arguments"&&e.isLast)return e.callParent(w5e);break;case"ObjectProperty":if(r==="value")return e.callParent(()=>e.key==="properties"&&e.isLast);break;case"BinaryExpression":case"LogicalExpression":if(r==="right")return e.callParent(w5e);break;case"ConditionalExpression":if(r==="alternate")return e.callParent(w5e);break;case"UnaryExpression":if(t.prefix)return e.callParent(w5e);break}return!1}function Uei(e,t){let{node:r,parent:s}=e;return r.type==="FunctionExpression"||r.type==="ClassExpression"?s.type==="ExportDefaultDeclaration"||!rgr(e,t):!dgr(r)||s.type!=="ExportDefaultDeclaration"&&rgr(e,t)?!1:e.call(()=>Uei(e,t),...lei(r))}function _qo(e){return!!(e.match(void 0,(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(t=>t.type==="OptionalCallExpression"||t.type==="OptionalMemberExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(t=>t.type==="OptionalCallExpression"||t.type==="OptionalMemberExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(void 0,(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(void 0,(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="tag"&&t.type==="TaggedTemplateExpression")||e.match(t=>t.type==="OptionalMemberExpression"||t.type==="OptionalCallExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&(t.type==="CallExpression"||t.type==="NewExpression"))||e.match(t=>t.type==="OptionalMemberExpression"||t.type==="OptionalCallExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&t.type==="CallExpression")||e.match(t=>t.type==="CallExpression"||t.type==="MemberExpression",(t,r)=>r==="expression"&&t.type==="ChainExpression")&&(e.match(void 0,void 0,(t,r)=>r==="callee"&&(t.type==="CallExpression"&&!t.optional||t.type==="NewExpression")||r==="object"&&t.type==="MemberExpression"&&!t.optional)||e.match(void 0,void 0,(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&t.type==="CallExpression"))||e.match(t=>t.type==="CallExpression"||t.type==="MemberExpression",(t,r)=>r==="expression"&&t.type==="TSNonNullExpression",(t,r)=>r==="expression"&&t.type==="ChainExpression",(t,r)=>r==="object"&&t.type==="MemberExpression"||r==="callee"&&t.type==="CallExpression"))}function ngr(e){return e.type==="Identifier"?!0:iv(e)?!e.computed&&!e.optional&&e.property.type==="Identifier"&&ngr(e.object):!1}function yqo(e){return e.type==="ChainExpression"&&(e=e.expression),ngr(e)||Qh(e)&&!e.optional&&ngr(e.callee)}var nfe=rgr;function bqo(e,t){let r=t-1;r=Fve(e,r,{backwards:!0}),r=Zve(e,r,{backwards:!0}),r=Fve(e,r,{backwards:!0});let s=Zve(e,r,{backwards:!0});return r!==s}var Eqo=bqo,Bqo=()=>!0;function Tgr(e,t){let r=e.node;return r.printed=!0,t.printer.printComment(e,t)}function vqo(e,t){var r;let s=e.node,a=[Tgr(e,t)],{printer:o,originalText:g,locStart:p,locEnd:f}=t;if((r=o.isBlockComment)!=null&&r.call(o,s)){let y=zW(g,f(s))?zW(g,p(s),{backwards:!0})?ol:Zg:" ";a.push(y)}else a.push(ol);let m=Zve(g,Fve(g,f(s)));return m!==!1&&zW(g,m)&&a.push(ol),a}function Sqo(e,t,r){var s;let a=e.node,o=Tgr(e,t),{printer:g,originalText:p,locStart:f}=t,m=(s=g.isBlockComment)==null?void 0:s.call(g,a);if(r!=null&&r.hasLineSuffix&&!(r!=null&&r.isBlock)||zW(p,f(a),{backwards:!0})){let y=Eqo(p,f(a));return{doc:F$n([ol,y?ol:"",o]),isBlock:m,hasLineSuffix:!0}}return!m||r!=null&&r.hasLineSuffix?{doc:[F$n([" ",o]),XU],isBlock:m,hasLineSuffix:!0}:{doc:[" ",o],isBlock:m,hasLineSuffix:!1}}function t2(e,t,r={}){let{node:s}=e;if(!h_(s?.comments))return"";let{indent:a=!1,marker:o,filter:g=Bqo}=r,p=[];if(e.each(({node:m})=>{m.leading||m.trailing||m.marker!==o||!g(m)||p.push(Tgr(e,t))},"comments"),p.length===0)return"";let f=oh(ol,p);return a?dl([ol,f]):f}function Kei(e,t){let r=e.node;if(!r)return{};let s=t[Symbol.for("printedComments")];if((r.comments||[]).filter(p=>!s.has(p)).length===0)return{leading:"",trailing:""};let a=[],o=[],g;return e.each(()=>{let p=e.node;if(s!=null&&s.has(p))return;let{leading:f,trailing:m}=p;f?a.push(vqo(e,t)):m&&(g=Sqo(e,t,g),o.push(g.doc))},"comments"),{leading:a,trailing:o}}function gY(e,t,r){let{leading:s,trailing:a}=Kei(e,r);return!s&&!a?t:jur(t,o=>[s,o,a])}var wqo=class extends Error{name="UnexpectedNodeError";constructor(e,t,r="type"){super(`Unexpected ${t} node ${r}: ${JSON.stringify(e[r])}.`),this.node=e}},Hve=wqo;function Tqo(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}var lY,Nqo=class{constructor(e){s7o(this,lY),o7o(this,lY,new Set(e))}getLeadingWhitespaceCount(e){let t=Ise(this,lY),r=0;for(let s=0;s=0&&t.has(e.charAt(s));s--)r++;return r}getLeadingWhitespace(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(0,t)}getTrailingWhitespace(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(e.length-t)}hasLeadingWhitespace(e){return Ise(this,lY).has(e.charAt(0))}hasTrailingWhitespace(e){return Ise(this,lY).has(N0(!1,e,-1))}trimStart(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(t)}trimEnd(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(0,e.length-t)}trim(e){return this.trimEnd(this.trimStart(e))}split(e,t=!1){let r=`[${Tqo([...Ise(this,lY)].join(""))}]+`,s=new RegExp(t?`(${r})`:r,"u");return e.split(s)}hasWhitespaceCharacter(e){let t=Ise(this,lY);return Array.prototype.some.call(e,r=>t.has(r))}hasNonWhitespaceCharacter(e){let t=Ise(this,lY);return Array.prototype.some.call(e,r=>!t.has(r))}isWhitespaceOnly(e){let t=Ise(this,lY);return Array.prototype.every.call(e,r=>t.has(r))}};lY=new WeakMap;var Rqo=Nqo,YIt=new Rqo(` +\r `),Our=e=>e===""||e===Zg||e===ol||e===el;function Dqo(e,t,r){var s,a,o,g,p;let{node:f}=e;if(f.type==="JSXElement"&&Xqo(f))return[r("openingElement"),r("closingElement")];let m=f.type==="JSXElement"?r("openingElement"):r("openingFragment"),y=f.type==="JSXElement"?r("closingElement"):r("closingFragment");if(f.children.length===1&&f.children[0].type==="JSXExpressionContainer"&&(f.children[0].expression.type==="TemplateLiteral"||f.children[0].expression.type==="TaggedTemplateExpression"))return[m,...e.map(r,"children"),y];f.children=f.children.map(be=>Jqo(be)?{type:"JSXText",value:" ",raw:" "}:be);let B=f.children.some(CR),v=f.children.filter(be=>be.type==="JSXExpressionContainer").length>1,k=f.type==="JSXElement"&&f.openingElement.attributes.length>1,T=XF(m)||B||k||v,O=e.parent.rootMarker==="mdx",X=t.singleQuote?"{' '}":'{" "}',U=O?Zg:zI([X,el]," "),le=((a=(s=f.openingElement)==null?void 0:s.name)==null?void 0:a.name)==="fbt",ae=xqo(e,t,r,U,le),ge=f.children.some(be=>k5e(be));for(let be=ae.length-2;be>=0;be--){let Te=ae[be]===""&&ae[be+1]==="",ke=ae[be]===ol&&ae[be+1]===""&&ae[be+2]===ol,x=(ae[be]===el||ae[be]===ol)&&ae[be+1]===""&&ae[be+2]===U,et=ae[be]===U&&ae[be+1]===""&&(ae[be+2]===el||ae[be+2]===ol),Ue=ae[be]===U&&ae[be+1]===""&&ae[be+2]===U,Je=ae[be]===el&&ae[be+1]===""&&ae[be+2]===ol||ae[be]===ol&&ae[be+1]===""&&ae[be+2]===el;ke&&ge||Te||x||Ue||Je?ae.splice(be,2):et&&ae.splice(be+1,2)}for(;ae.length>0&&Our(N0(!1,ae,-1));)ae.pop();for(;ae.length>1&&Our(ae[0])&&Our(ae[1]);)ae.shift(),ae.shift();let fe=[""];for(let[be,Te]of ae.entries()){if(Te===U){if(be===1&&Bjo(ae[be-1])){if(ae.length===2){fe.push([fe.pop(),X]);continue}fe.push([X,ol],"");continue}else if(be===ae.length-1){fe.push([fe.pop(),X]);continue}else if(ae[be-1]===""&&ae[be-2]===ol){fe.push([fe.pop(),X]);continue}}be%2===0?fe.push([fe.pop(),Te]):fe.push(Te,""),XF(Te)&&(T=!0)}let pe=ge?Bei(fe):ta(fe,{shouldBreak:!0});if(((o=t.cursorNode)==null?void 0:o.type)==="JSXText"&&f.children.includes(t.cursorNode)?pe=[QIt,pe,QIt]:((g=t.nodeBeforeCursor)==null?void 0:g.type)==="JSXText"&&f.children.includes(t.nodeBeforeCursor)?pe=[QIt,pe]:((p=t.nodeAfterCursor)==null?void 0:p.type)==="JSXText"&&f.children.includes(t.nodeAfterCursor)&&(pe=[pe,QIt]),O)return pe;let he=ta([m,dl([ol,pe]),ol,y]);return T?he:Jpe([ta([m,...ae,y]),he])}function xqo(e,t,r,s,a){let o="",g=[o];function p(m){o=m,g.push([g.pop(),m])}function f(m){m!==""&&(o=m,g.push(m,""))}return e.each(({node:m,next:y})=>{if(m.type==="JSXText"){let B=mQ(m);if(k5e(m)){let v=YIt.split(B,!0);v[0]===""&&(v.shift(),/\n/u.test(v[0])?f(O$n(a,v[1],m,y)):f(s),v.shift());let k;if(N0(!1,v,-1)===""&&(v.pop(),k=v.pop()),v.length===0)return;for(let[T,O]of v.entries())T%2===1?f(Zg):p(O);k!==void 0?/\n/u.test(k)?f(O$n(a,o,m,y)):f(s):f(P$n(a,o,m,y))}else/\n/u.test(B)?B.match(/\n/gu).length>1&&f(ol):f(s)}else{let B=r();if(p(B),y&&k5e(y)){let v=YIt.trim(mQ(y)),[k]=YIt.split(v);f(P$n(a,k,m,y))}else f(ol)}},"children"),g}function P$n(e,t,r,s){return e?"":r.type==="JSXElement"&&!r.closingElement||s?.type==="JSXElement"&&!s.closingElement?t.length===1?el:ol:el}function O$n(e,t,r,s){return e?ol:t.length===1?r.type==="JSXElement"&&!r.closingElement||s?.type==="JSXElement"&&!s.closingElement?ol:el:ol}var kqo=new Set(["ArrayExpression","TupleExpression","JSXAttribute","JSXElement","JSXExpressionContainer","JSXFragment","ExpressionStatement","CallExpression","OptionalCallExpression","ConditionalExpression","JsExpressionRoot"]);function Gqo(e,t,r){let{parent:s}=e;if(kqo.has(s.type))return t;let a=e.match(void 0,g=>g.type==="ArrowFunctionExpression",Qh,g=>g.type==="JSXExpressionContainer"),o=nfe(e,r);return ta([o?"":zI("("),dl([el,t]),el,o?"":zI(")")],{shouldBreak:a})}function Fqo(e,t,r){let{node:s}=e,a=[];if(a.push(r("name")),s.value){let o;if(e9(s.value)){let g=mQ(s.value),p=HD(!1,HD(!1,g.slice(1,-1),"'","'"),""",'"'),f=iei(p,t.jsxSingleQuote);p=f==='"'?HD(!1,p,'"',"""):HD(!1,p,"'","'"),o=e.call(()=>gY(e,Upe(f+p+f),t),"value")}else o=r("value");a.push("=",o)}return a}function Zqo(e,t,r){let{node:s}=e,a=(o,g)=>o.type==="JSXEmptyExpression"||!Gu(o)&&(XD(o)||AY(o)||o.type==="ArrowFunctionExpression"||o.type==="AwaitExpression"&&(a(o.argument,o)||o.argument.type==="JSXElement")||Qh(o)||o.type==="ChainExpression"&&Qh(o.expression)||o.type==="FunctionExpression"||o.type==="TemplateLiteral"||o.type==="TaggedTemplateExpression"||o.type==="DoExpression"||CR(g)&&(o.type==="ConditionalExpression"||Rz(o)));return a(s.expression,e.parent)?ta(["{",r("expression"),xz,"}"]):ta(["{",dl([el,r("expression")]),el,xz,"}"])}function Lqo(e,t,r){var s,a;let{node:o}=e,g=Gu(o.name)||Gu(o.typeParameters)||Gu(o.typeArguments);if(o.selfClosing&&o.attributes.length===0&&!g)return["<",r("name"),o.typeArguments?r("typeArguments"):r("typeParameters")," />"];if(((s=o.attributes)==null?void 0:s.length)===1&&e9(o.attributes[0].value)&&!o.attributes[0].value.value.includes(` +`)&&!g&&!Gu(o.attributes[0]))return ta(["<",r("name"),o.typeArguments?r("typeArguments"):r("typeParameters")," ",...e.map(r,"attributes"),o.selfClosing?" />":">"]);let p=(a=o.attributes)==null?void 0:a.some(m=>e9(m.value)&&m.value.value.includes(` +`)),f=t.singleAttributePerLine&&o.attributes.length>1?ol:Zg;return ta(["<",r("name"),o.typeArguments?r("typeArguments"):r("typeParameters"),dl(e.map(()=>[f,r()],"attributes")),...Vqo(o,t,g)],{shouldBreak:p})}function Vqo(e,t,r){return e.selfClosing?[Zg,"/>"]:Wqo(e,t,r)?[">"]:[el,">"]}function Wqo(e,t,r){let s=e.attributes.length>0&&Gu(N0(!1,e.attributes,-1),$g.Trailing);return e.attributes.length===0&&!r||(t.bracketSameLine||t.jsxBracketSameLine)&&(!r||e.attributes.length>0)&&!s}function Pqo(e,t,r){let{node:s}=e,a=[];a.push(""),a}function Oqo(e,t){let{node:r}=e,s=Gu(r),a=Gu(r,$g.Line),o=r.type==="JSXOpeningFragment";return[o?"<":""]}function Qqo(e,t,r){let s=gY(e,Dqo(e,t,r),t);return Gqo(e,s,t)}function Mqo(e,t){let{node:r}=e,s=Gu(r,$g.Line);return[t2(e,t,{indent:s}),s?ol:""]}function Hqo(e,t,r){let{node:s}=e;return["{",e.call(({node:a})=>{let o=["...",r()];return!Gu(a)||!Vei(e)?o:[dl([el,gY(e,o,t)]),el]},s.type==="JSXSpreadAttribute"?"argument":"expression"),"}"]}function Yqo(e,t,r){let{node:s}=e;if(s.type.startsWith("JSX"))switch(s.type){case"JSXAttribute":return Fqo(e,t,r);case"JSXIdentifier":return s.name;case"JSXNamespacedName":return oh(":",[r("namespace"),r("name")]);case"JSXMemberExpression":return oh(".",[r("object"),r("property")]);case"JSXSpreadAttribute":case"JSXSpreadChild":return Hqo(e,t,r);case"JSXExpressionContainer":return Zqo(e,t,r);case"JSXFragment":case"JSXElement":return Qqo(e,t,r);case"JSXOpeningElement":return Lqo(e,t,r);case"JSXClosingElement":return Pqo(e,t,r);case"JSXOpeningFragment":case"JSXClosingFragment":return Oqo(e,t);case"JSXEmptyExpression":return Mqo(e,t);case"JSXText":throw new Error("JSXText should be handled by JSXElement");default:throw new Hve(s,"JSX")}}function Xqo(e){if(e.children.length===0)return!0;if(e.children.length>1)return!1;let t=e.children[0];return t.type==="JSXText"&&!k5e(t)}function k5e(e){return e.type==="JSXText"&&(YIt.hasNonWhitespaceCharacter(mQ(e))||!/\n/u.test(mQ(e)))}function Jqo(e){return e.type==="JSXExpressionContainer"&&e9(e.expression)&&e.expression.value===" "&&!Gu(e.expression)}function Uqo(e){let{node:t,parent:r}=e;if(!CR(t)||!CR(r))return!1;let{index:s,siblings:a}=e,o;for(let g=s;g>0;g--){let p=a[g-1];if(!(p.type==="JSXText"&&!k5e(p))){o=p;break}}return o?.type==="JSXExpressionContainer"&&o.expression.type==="JSXEmptyExpression"&&iCt(o.expression)}function Kqo(e){return iCt(e.node)||Uqo(e)}var jei=Kqo,jqo=0;function zei(e,t,r){var s;let{node:a,parent:o,grandparent:g,key:p}=e,f=p!=="body"&&(o.type==="IfStatement"||o.type==="WhileStatement"||o.type==="SwitchStatement"||o.type==="DoWhileStatement"),m=a.operator==="|>"&&((s=e.root.extra)==null?void 0:s.__isUsingHackPipeline),y=igr(e,r,t,!1,f);if(f)return y;if(m)return ta(y);if(Qh(o)&&o.callee===a||o.type==="UnaryExpression"||iv(o)&&!o.computed)return ta([dl([el,...y]),el]);let B=o.type==="ReturnStatement"||o.type==="ThrowStatement"||o.type==="JSXExpressionContainer"&&g.type==="JSXAttribute"||a.operator!=="|"&&o.type==="JsExpressionRoot"||a.type!=="NGPipeExpression"&&(o.type==="NGRoot"&&t.parser==="__ng_binding"||o.type==="NGMicrosyntaxExpression"&&g.type==="NGMicrosyntax"&&g.body.length===1)||a===o.body&&o.type==="ArrowFunctionExpression"||a!==o.body&&o.type==="ForStatement"||o.type==="ConditionalExpression"&&g.type!=="ReturnStatement"&&g.type!=="ThrowStatement"&&!Qh(g)||o.type==="TemplateLiteral",v=o.type==="AssignmentExpression"||o.type==="VariableDeclarator"||o.type==="ClassProperty"||o.type==="PropertyDefinition"||o.type==="TSAbstractPropertyDefinition"||o.type==="ClassPrivateProperty"||Fz(o),k=Rz(a.left)&&Cgr(a.operator,a.left.operator);if(B||G5e(a)&&!k||!G5e(a)&&v)return ta(y);if(y.length===0)return"";let T=CR(a.right),O=y.findIndex(fe=>typeof fe!="string"&&!Array.isArray(fe)&&fe.type===hQ),X=y.slice(0,O===-1?1:O+1),U=y.slice(X.length,T?-1:void 0),le=Symbol("logicalChain-"+ ++jqo),ae=ta([...X,dl(U)],{id:le});if(!T)return ae;let ge=N0(!1,y,-1);return ta([ae,sCt(ge,{groupId:le})])}function igr(e,t,r,s,a){var o;let{node:g}=e;if(!Rz(g))return[ta(t())];let p=[];Cgr(g.operator,g.left.operator)?p=e.call(X=>igr(X,t,r,!0,a),"left"):p.push(ta(t("left")));let f=G5e(g),m=(g.operator==="|>"||g.type==="NGPipeExpression"||zqo(e,r))&&!_se(r.originalText,g.right),y=!Gu(g.right,$g.Leading,Tei)&&_se(r.originalText,g.right),B=g.type==="NGPipeExpression"?"|":g.operator,v=g.type==="NGPipeExpression"&&g.arguments.length>0?ta(dl([el,": ",oh([Zg,": "],e.map(()=>YU(2,ta(t())),"arguments"))])):"",k;if(f)k=[B," ",t("right"),v];else{let X=B==="|>"&&((o=e.root.extra)!=null&&o.__isUsingHackPipeline)?e.call(U=>igr(U,t,r,!0,a),"right"):t("right");if(r.experimentalOperatorPosition==="start"){let U="";if(y)switch(Sse(X)){case Dz:U=X.splice(0,1)[0];break;case Zz:U=X.contents.splice(0,1)[0];break}k=[Zg,U,B," ",X,v]}else k=[m?Zg:"",B,m?" ":Zg,X,v]}let{parent:T}=e,O=Gu(g.left,$g.Trailing|$g.Line);if((O||!(a&&g.type==="LogicalExpression")&&T.type!==g.type&&g.left.type!==g.type&&g.right.type!==g.type)&&(k=ta(k,{shouldBreak:O})),r.experimentalOperatorPosition==="start"?p.push(f||y?" ":"",k):p.push(m?"":" ",k),s&&Gu(g)){let X=_gr(gY(e,p,r));return X.type===Bse?X.parts:Array.isArray(X)?X:[X]}return p}function G5e(e){return e.type!=="LogicalExpression"?!1:!!(AY(e.right)&&e.right.properties.length>0||XD(e.right)&&e.right.elements.length>0||CR(e.right))}var Q$n=e=>e.type==="BinaryExpression"&&e.operator==="|";function zqo(e,t){return(t.parser==="__vue_expression"||t.parser==="__vue_ts_expression")&&Q$n(e.node)&&!e.hasAncestor(r=>!Q$n(r)&&r.type!=="JsExpressionRoot")}function qqo(e,t,r){let{node:s}=e;if(s.type.startsWith("NG"))switch(s.type){case"NGRoot":return[r("node"),Gu(s.node)?" //"+kve(s.node)[0].value.trimEnd():""];case"NGPipeExpression":return zei(e,t,r);case"NGChainedExpression":return ta(oh([";",Zg],e.map(()=>e$o(e)?r():["(",r(),")"],"expressions")));case"NGEmptyExpression":return"";case"NGMicrosyntax":return e.map(()=>[e.isFirst?"":M$n(e)?" ":[";",Zg],r()],"body");case"NGMicrosyntaxKey":return/^[$_a-z][\w$]*(?:-[$_a-z][\w$])*$/iu.test(s.name)?s.name:JSON.stringify(s.name);case"NGMicrosyntaxExpression":return[r("expression"),s.alias===null?"":[" as ",r("alias")]];case"NGMicrosyntaxKeyedExpression":{let{index:a,parent:o}=e,g=M$n(e)||(a===1&&(s.key.name==="then"||s.key.name==="else"||s.key.name==="as")||(a===2||a===3)&&(s.key.name==="else"&&o.body[a-1].type==="NGMicrosyntaxKeyedExpression"&&o.body[a-1].key.name==="then"||s.key.name==="track"))&&o.body[0].type==="NGMicrosyntaxExpression";return[r("key"),g?" ":": ",r("expression")]}case"NGMicrosyntaxLet":return["let ",r("key"),s.value===null?"":[" = ",r("value")]];case"NGMicrosyntaxAs":return[r("key")," as ",r("alias")];default:throw new Hve(s,"Angular")}}function M$n({node:e,index:t}){return e.type==="NGMicrosyntaxKeyedExpression"&&e.key.name==="of"&&t===1}var $qo=X_(["CallExpression","OptionalCallExpression","AssignmentExpression"]);function e$o({node:e}){return Jur(e,$qo)}function qei(e,t,r){let{node:s}=e;return ta([oh(Zg,e.map(r,"decorators")),$ei(s,t)?ol:Zg])}function t$o(e,t,r){return eti(e.node)?[oh(ol,e.map(r,"declaration","decorators")),ol]:""}function r$o(e,t,r){let{node:s,parent:a}=e,{decorators:o}=s;if(!h_(o)||eti(a)||jei(e))return"";let g=s.type==="ClassExpression"||s.type==="ClassDeclaration"||$ei(s,t);return[e.key==="declaration"&&U7o(a)?ol:g?XU:"",oh(Zg,e.map(r,"decorators")),Zg]}function $ei(e,t){return e.decorators.some(r=>zW(t.originalText,ah(r)))}function eti(e){var t;if(e.type!=="ExportDefaultDeclaration"&&e.type!=="ExportNamedDeclaration"&&e.type!=="DeclareExportDeclaration")return!1;let r=(t=e.declaration)==null?void 0:t.decorators;return h_(r)&&tCt(e,r[0])}var zIt=class extends Error{name="ArgExpansionBailout"};function n$o(e,t,r){let{node:s}=e,a=bQ(s);if(a.length===0)return["(",t2(e,t),")"];let o=a.length-1;if(o$o(a)){let B=["("];return KIt(e,(v,k)=>{B.push(r()),k!==o&&B.push(", ")}),B.push(")"),B}let g=!1,p=[];KIt(e,({node:B},v)=>{let k=r();v===o||(Gz(B,t)?(g=!0,k=[k,",",ol,ol]):k=[k,",",Zg]),p.push(k)});let f=!t.parser.startsWith("__ng_")&&s.type!=="ImportExpression"&&kz(t,"all")?",":"";function m(){return ta(["(",dl([Zg,...p]),f,Zg,")"],{shouldBreak:!0})}if(g||e.parent.type!=="Decorator"&&ijo(a))return m();if(s$o(a)){let B=p.slice(1);if(B.some(XF))return m();let v;try{v=r(x$n(s,0),{expandFirstArg:!0})}catch(k){if(k instanceof zIt)return m();throw k}return XF(v)?[XU,Jpe([["(",ta(v,{shouldBreak:!0}),", ",...B,")"],m()])]:Jpe([["(",v,", ",...B,")"],["(",ta(v,{shouldBreak:!0}),", ",...B,")"],m()])}if(i$o(a,p,t)){let B=p.slice(0,-1);if(B.some(XF))return m();let v;try{v=r(x$n(s,-1),{expandLastArg:!0})}catch(k){if(k instanceof zIt)return m();throw k}return XF(v)?[XU,Jpe([["(",...B,ta(v,{shouldBreak:!0}),")"],m()])]:Jpe([["(",...B,v,")"],["(",...B,ta(v,{shouldBreak:!0}),")"],m()])}let y=["(",dl([el,...p]),zI(f),el,")"];return Cei(e)?y:ta(y,{shouldBreak:p.some(XF)||g})}function N5e(e,t=!1){return AY(e)&&(e.properties.length>0||Gu(e))||XD(e)&&(e.elements.length>0||Gu(e))||e.type==="TSTypeAssertion"&&N5e(e.expression)||QU(e)&&N5e(e.expression)||e.type==="FunctionExpression"||e.type==="ArrowFunctionExpression"&&(!e.returnType||!e.returnType.typeAnnotation||e.returnType.typeAnnotation.type!=="TSTypeReference"||a$o(e.body))&&(e.body.type==="BlockStatement"||e.body.type==="ArrowFunctionExpression"&&N5e(e.body,!0)||AY(e.body)||XD(e.body)||!t&&(Qh(e.body)||e.body.type==="ConditionalExpression")||CR(e.body))||e.type==="DoExpression"||e.type==="ModuleExpression"}function i$o(e,t,r){var s,a;let o=N0(!1,e,-1);if(e.length===1){let p=N0(!1,t,-1);if((s=p.label)!=null&&s.embed&&((a=p.label)==null?void 0:a.hug)!==!1)return!0}let g=N0(!1,e,-2);return!Gu(o,$g.Leading)&&!Gu(o,$g.Trailing)&&N5e(o)&&(!g||g.type!==o.type)&&(e.length!==2||g.type!=="ArrowFunctionExpression"||!XD(o))&&!(e.length>1&&Sti(o,r))}function s$o(e){if(e.length!==2)return!1;let[t,r]=e;return t.type==="ModuleExpression"&&c$o(r)?!0:!Gu(t)&&(t.type==="FunctionExpression"||t.type==="ArrowFunctionExpression"&&t.body.type==="BlockStatement")&&r.type!=="FunctionExpression"&&r.type!=="ArrowFunctionExpression"&&r.type!=="ConditionalExpression"&&tti(r)&&!N5e(r)}function tti(e){if(e.type==="ParenthesizedExpression")return tti(e.expression);if(QU(e)||e.type==="TypeCastExpression"){let{typeAnnotation:t}=e;if(t.type==="TypeAnnotation"&&(t=t.typeAnnotation),t.type==="TSArrayType"&&(t=t.elementType,t.type==="TSArrayType"&&(t=t.elementType)),t.type==="GenericTypeAnnotation"||t.type==="TSTypeReference"){let r=t.typeArguments??t.typeParameters;r?.params.length===1&&(t=r.params[0])}return fgr(t)&&uY(e.expression,1)}return Vve(e)&&bQ(e).length>1?!1:Rz(e)?uY(e.left,1)&&uY(e.right,1):gei(e)||uY(e)}function o$o(e){return e.length===2?H$n(e,0):e.length===3?e[0].type==="Identifier"&&H$n(e,1):!1}function H$n(e,t){let r=e[t],s=e[t+1];return r.type==="ArrowFunctionExpression"&&Vk(r).length===0&&r.body.type==="BlockStatement"&&s.type==="ArrayExpression"&&!e.some(a=>Gu(a))}function a$o(e){return e.type==="BlockStatement"&&(e.body.some(t=>t.type!=="EmptyStatement")||Gu(e,$g.Dangling))}function c$o(e){return e.type==="ObjectExpression"&&e.properties.length===1&&Fz(e.properties[0])&&e.properties[0].key.type==="Identifier"&&e.properties[0].key.name==="type"&&e9(e.properties[0].value)&&e.properties[0].value.value==="module"}var sgr=n$o,l$o=e=>((e.type==="ChainExpression"||e.type==="TSNonNullExpression")&&(e=e.expression),Qh(e)&&bQ(e).length>0);function u$o(e,t,r){var s;let a=r("object"),o=rti(e,t,r),{node:g}=e,p=e.findAncestor(y=>!(iv(y)||y.type==="TSNonNullExpression")),f=e.findAncestor(y=>!(y.type==="ChainExpression"||y.type==="TSNonNullExpression")),m=p&&(p.type==="NewExpression"||p.type==="BindExpression"||p.type==="AssignmentExpression"&&p.left.type!=="Identifier")||g.computed||g.object.type==="Identifier"&&g.property.type==="Identifier"&&!iv(f)||(f.type==="AssignmentExpression"||f.type==="VariableDeclarator")&&(l$o(g.object)||((s=a.label)==null?void 0:s.memberChain));return F5e(a.label,[a,m?o:ta(dl([el,o]))])}function rti(e,t,r){let s=r("property"),{node:a}=e,o=JF(e);return a.computed?!a.property||Nz(a.property)?[o,"[",s,"]"]:ta([o,"[",dl([el,s]),el,"]"]):[o,".",s]}function nti(e,t,r){if(e.node.type==="ChainExpression")return e.call(()=>nti(e,t,r),"expression");let{parent:s}=e,a=!s||s.type==="ExpressionStatement",o=[];function g(Je){let{originalText:Xe}=t,ft=Mve(Xe,ah(Je));return Xe.charAt(ft)===")"?ft!==!1&&ggr(Xe,ft+1):Gz(Je,t)}function p(){let{node:Je}=e;if(Je.type==="ChainExpression")return e.call(p,"expression");if(Qh(Je)&&(Dve(Je.callee)||Qh(Je.callee))){let Xe=g(Je);o.unshift({node:Je,hasTrailingEmptyLine:Xe,printed:[gY(e,[JF(e),Kpe(e,t,r),sgr(e,t,r)],t),Xe?ol:""]}),e.call(p,"callee")}else Dve(Je)?(o.unshift({node:Je,needsParens:nfe(e,t),printed:gY(e,iv(Je)?rti(e,t,r):Bti(e,t,r),t)}),e.call(p,"object")):Je.type==="TSNonNullExpression"?(o.unshift({node:Je,printed:gY(e,"!",t)}),e.call(p,"expression")):o.unshift({node:Je,printed:r()})}let{node:f}=e;o.unshift({node:f,printed:[JF(e),Kpe(e,t,r),sgr(e,t,r)]}),f.callee&&e.call(p,"callee");let m=[],y=[o[0]],B=1;for(;B0&&m.push(y);function k(Je){return/^[A-Z]|^[$_]+$/u.test(Je)}function T(Je){return Je.length<=t.tabWidth}function O(Je){var Xe;let ft=(Xe=Je[1][0])==null?void 0:Xe.node.computed;if(Je[0].length===1){let er=Je[0][0].node;return er.type==="ThisExpression"||er.type==="Identifier"&&(k(er.name)||a&&T(er.name)||ft)}let Gt=N0(!1,Je[0],-1).node;return iv(Gt)&&Gt.property.type==="Identifier"&&(k(Gt.property.name)||ft)}let X=m.length>=2&&!Gu(m[1][0].node)&&O(m);function U(Je){let Xe=Je.map(ft=>ft.printed);return Je.length>0&&N0(!1,Je,-1).needsParens?["(",...Xe,")"]:Xe}function le(Je){return Je.length===0?"":dl([ol,oh(ol,Je.map(U))])}let ae=m.map(U),ge=ae,fe=X?3:2,pe=m.flat(),he=pe.slice(1,-1).some(Je=>Gu(Je.node,$g.Leading))||pe.slice(0,-1).some(Je=>Gu(Je.node,$g.Trailing))||m[fe]&&Gu(m[fe][0].node,$g.Leading);if(m.length<=fe&&!he&&!m.some(Je=>N0(!1,Je,-1).hasTrailingEmptyLine))return Cei(e)?ge:ta(ge);let be=N0(!1,m[X?1:0],-1).node,Te=!Qh(be)&&g(be),ke=[U(m[0]),X?m.slice(1,2).map(U):"",Te?ol:"",le(m.slice(X?2:1))],x=o.map(({node:Je})=>Je).filter(Qh);function et(){let Je=N0(!1,N0(!1,m,-1),-1).node,Xe=N0(!1,ae,-1);return Qh(Je)&&XF(Xe)&&x.slice(0,-1).some(ft=>ft.arguments.some(D5e))}let Ue;return he||x.length>2&&x.some(Je=>!Je.arguments.every(Xe=>uY(Xe)))||ae.slice(0,-1).some(XF)||et()?Ue=ta(ke):Ue=[XF(ge)||Te?XU:"",Jpe([ge,ke])],F5e({memberChain:!0},Ue)}var g$o=nti;function iti(e,t,r){var s;let{node:a}=e,o=a.type==="NewExpression",g=a.type==="ImportExpression",p=JF(e),f=bQ(a),m=f.length===1&&fei(f[0],t.originalText);if(m||A$o(e)||nCt(a,e.parent)){let B=[];if(KIt(e,()=>{B.push(r())}),!(m&&(s=B[0].label)!=null&&s.embed))return[o?"new ":"",Y$n(e,r),p,Kpe(e,t,r),"(",oh(", ",B),")"]}if(!g&&!o&&Dve(a.callee)&&!e.call(B=>nfe(B,t),"callee",...a.callee.type==="ChainExpression"?["expression"]:[]))return g$o(e,t,r);let y=[o?"new ":"",Y$n(e,r),p,Kpe(e,t,r),sgr(e,t,r)];return g||Qh(a.callee)?ta(y):y}function Y$n(e,t){let{node:r}=e;return r.type==="ImportExpression"?`import${r.phase?`.${r.phase}`:""}`:t("callee")}function A$o(e){let{node:t}=e;if(t.type!=="CallExpression"||t.optional||t.callee.type!=="Identifier")return!1;let r=bQ(t);return t.callee.name==="require"?r.length===1&&e9(r[0])||r.length>1:t.callee.name==="define"&&e.parent.type==="ExpressionStatement"?r.length===1||r.length===2&&r[0].type==="ArrayExpression"||r.length===3&&e9(r[0])&&r[1].type==="ArrayExpression":!1}function Z5e(e,t,r,s,a,o){let g=f$o(e,t,r,s,o),p=o?r(o,{assignmentLayout:g}):"";switch(g){case"break-after-operator":return ta([ta(s),a,ta(dl([Zg,p]))]);case"never-break-after-operator":return ta([ta(s),a," ",p]);case"fluid":{let f=Symbol("assignment");return ta([ta(s),a,ta(dl(Zg),{id:f}),xz,sCt(p,{groupId:f})])}case"break-lhs":return ta([s,a," ",ta(p)]);case"chain":return[ta(s),a,Zg,p];case"chain-tail":return[ta(s),a,dl([Zg,p])];case"chain-tail-arrow-chain":return[ta(s),a,p];case"only-left":return s}}function d$o(e,t,r){let{node:s}=e;return Z5e(e,t,r,r("left"),[" ",s.operator],"right")}function p$o(e,t,r){return Z5e(e,t,r,r("id")," =","init")}function f$o(e,t,r,s,a){let{node:o}=e,g=o[a];if(!g)return"only-left";let p=!XIt(g);if(e.match(XIt,sti,y=>!p||y.type!=="ExpressionStatement"&&y.type!=="VariableDeclaration"))return p?g.type==="ArrowFunctionExpression"&&g.body.type==="ArrowFunctionExpression"?"chain-tail-arrow-chain":"chain-tail":"chain";if(!p&&XIt(g.right)||_se(t.originalText,g))return"break-after-operator";if(o.type==="ImportAttribute"||g.type==="CallExpression"&&g.callee.name==="require"||t.parser==="json5"||t.parser==="jsonc"||t.parser==="json")return"never-break-after-operator";let f=Ejo(s);if(C$o(o)||y$o(o)||oti(o)&&f)return"break-lhs";let m=E$o(o,s,t);return e.call(()=>I$o(e,t,r,m),a)?"break-after-operator":m$o(o)?"break-lhs":!f&&(m||g.type==="TemplateLiteral"||g.type==="TaggedTemplateExpression"||g.type==="BooleanLiteral"||Nz(g)||g.type==="ClassExpression")?"never-break-after-operator":"fluid"}function I$o(e,t,r,s){let a=e.node;if(Rz(a)&&!G5e(a))return!0;switch(a.type){case"StringLiteralTypeAnnotation":case"SequenceExpression":return!0;case"TSConditionalType":case"ConditionalTypeAnnotation":if(!t.experimentalTernaries&&!S$o(a))break;return!0;case"ConditionalExpression":{if(!t.experimentalTernaries){let{test:m}=a;return Rz(m)&&!G5e(m)}let{consequent:p,alternate:f}=a;return p.type==="ConditionalExpression"||f.type==="ConditionalExpression"}case"ClassExpression":return h_(a.decorators)}if(s)return!1;let o=a,g=[];for(;;)if(o.type==="UnaryExpression"||o.type==="AwaitExpression"||o.type==="YieldExpression"&&o.argument!==null)o=o.argument,g.push("argument");else if(o.type==="TSNonNullExpression")o=o.expression,g.push("expression");else break;return!!(e9(o)||e.call(()=>ati(e,t,r),...g))}function C$o(e){if(sti(e)){let t=e.left||e.id;return t.type==="ObjectPattern"&&t.properties.length>2&&t.properties.some(r=>{var s;return Fz(r)&&(!r.shorthand||((s=r.value)==null?void 0:s.type)==="AssignmentPattern")})}return!1}function XIt(e){return e.type==="AssignmentExpression"}function sti(e){return XIt(e)||e.type==="VariableDeclarator"}function m$o(e){let t=_$o(e);if(h_(t)){let r=e.type==="TSTypeAliasDeclaration"?"constraint":"bound";if(t.length>1&&t.some(s=>s[r]||s.default))return!0}return!1}var h$o=X_(["TSTypeAliasDeclaration","TypeAlias"]);function _$o(e){var t;if(h$o(e))return(t=e.typeParameters)==null?void 0:t.params}function y$o(e){if(e.type!=="VariableDeclarator")return!1;let{typeAnnotation:t}=e.id;if(!t||!t.typeAnnotation)return!1;let r=X$n(t.typeAnnotation);return h_(r)&&r.length>1&&r.some(s=>h_(X$n(s))||s.type==="TSConditionalType")}function oti(e){var t;return e.type==="VariableDeclarator"&&((t=e.init)==null?void 0:t.type)==="ArrowFunctionExpression"}var b$o=X_(["TSTypeReference","GenericTypeAnnotation"]);function X$n(e){var t;if(b$o(e))return(t=e.typeArguments??e.typeParameters)==null?void 0:t.params}function ati(e,t,r,s=!1){var a;let{node:o}=e,g=()=>ati(e,t,r,!0);if(o.type==="ChainExpression"||o.type==="TSNonNullExpression")return e.call(g,"expression");if(Qh(o)){if((a=iti(e,t,r).label)!=null&&a.memberChain)return!1;let p=bQ(o);return!(p.length===0||p.length===1&&Igr(p[0],t))||B$o(o,r)?!1:e.call(g,"callee")}return iv(o)?e.call(g,"object"):s&&(o.type==="Identifier"||o.type==="ThisExpression")}function E$o(e,t,r){return Fz(e)?(t=_gr(t),typeof t=="string"&&Gve(t)1)return!0;if(r.length===1){let a=r[0];if(yse(a)||mgr(a)||a.type==="TSTypeLiteral"||a.type==="ObjectTypeAnnotation")return!0}let s=e.typeParameters?"typeParameters":"typeArguments";if(XF(t(s)))return!0}return!1}function v$o(e){var t;return(t=e.typeParameters??e.typeArguments)==null?void 0:t.params}function S$o(e){function t(r){switch(r.type){case"FunctionTypeAnnotation":case"GenericTypeAnnotation":case"TSFunctionType":return!!r.typeParameters;case"TSTypeReference":return!!(r.typeArguments??r.typeParameters);default:return!1}}return t(e.checkType)||t(e.extendsType)}function ife(e,t,r,s,a){let o=e.node,g=Vk(o),p=a?Kpe(e,r,t):"";if(g.length===0)return[p,"(",t2(e,r,{filter:k=>dY(r.originalText,ah(k))===")"}),")"];let{parent:f}=e,m=nCt(f),y=cti(o),B=[];if(ujo(e,(k,T)=>{let O=T===g.length-1;O&&o.rest&&B.push("..."),B.push(t()),!O&&(B.push(","),m||y?B.push(" "):Gz(g[T],r)?B.push(ol,ol):B.push(Zg))}),s&&!T$o(e)){if(XF(p)||XF(B))throw new zIt;return ta([Kur(p),"(",Kur(B),")"])}let v=g.every(k=>!h_(k.decorators));return y&&v?[p,"(",...B,")"]:m?[p,"(",...B,")"]:(Aei(f)||q7o(f)||f.type==="TypeAlias"||f.type==="UnionTypeAnnotation"||f.type==="IntersectionTypeAnnotation"||f.type==="FunctionTypeAnnotation"&&f.returnType===o)&&g.length===1&&g[0].name===null&&o.this!==g[0]&&g[0].typeAnnotation&&o.typeParameters===null&&fgr(g[0].typeAnnotation)&&!o.rest?r.arrowParens==="always"||o.type==="HookTypeAnnotation"?["(",...B,")"]:B:[p,"(",dl([el,...B]),zI(!ljo(o)&&kz(r,"all")?",":""),el,")"]}function cti(e){if(!e)return!1;let t=Vk(e);if(t.length!==1)return!1;let[r]=t;return!Gu(r)&&(r.type==="ObjectPattern"||r.type==="ArrayPattern"||r.type==="Identifier"&&r.typeAnnotation&&(r.typeAnnotation.type==="TypeAnnotation"||r.typeAnnotation.type==="TSTypeAnnotation")&&hse(r.typeAnnotation.typeAnnotation)||r.type==="FunctionTypeParam"&&hse(r.typeAnnotation)&&r!==e.rest||r.type==="AssignmentPattern"&&(r.left.type==="ObjectPattern"||r.left.type==="ArrayPattern")&&(r.right.type==="Identifier"||AY(r.right)&&r.right.properties.length===0||XD(r.right)&&r.right.elements.length===0))}function w$o(e){let t;return e.returnType?(t=e.returnType,t.typeAnnotation&&(t=t.typeAnnotation)):e.typeAnnotation&&(t=e.typeAnnotation),t}function Yve(e,t){var r;let s=w$o(e);if(!s)return!1;let a=(r=e.typeParameters)==null?void 0:r.params;if(a){if(a.length>1)return!1;if(a.length===1){let o=a[0];if(o.constraint||o.default)return!1}}return Vk(e).length===1&&(hse(s)||XF(t))}function T$o(e){return e.match(t=>t.type==="ArrowFunctionExpression"&&t.body.type==="BlockStatement",(t,r)=>{if(t.type==="CallExpression"&&r==="arguments"&&t.arguments.length===1&&t.callee.type==="CallExpression"){let s=t.callee.callee;return s.type==="Identifier"||s.type==="MemberExpression"&&!s.computed&&s.object.type==="Identifier"&&s.property.type==="Identifier"}return!1},(t,r)=>t.type==="VariableDeclarator"&&r==="init"||t.type==="ExportDefaultDeclaration"&&r==="declaration"||t.type==="TSExportAssignment"&&r==="expression"||t.type==="AssignmentExpression"&&r==="right"&&t.left.type==="MemberExpression"&&t.left.object.type==="Identifier"&&t.left.object.name==="module"&&t.left.property.type==="Identifier"&&t.left.property.name==="exports",t=>t.type!=="VariableDeclaration"||t.kind==="const"&&t.declarations.length===1)}function N$o(e){let t=Vk(e);return t.length>1&&t.some(r=>r.type==="TSParameterProperty")}var R$o=X_(["VoidTypeAnnotation","TSVoidKeyword","NullLiteralTypeAnnotation","TSNullKeyword"]),D$o=X_(["ObjectTypeAnnotation","TSTypeLiteral","GenericTypeAnnotation","TSTypeReference"]);function x$o(e){let{types:t}=e;if(t.some(s=>Gu(s)))return!1;let r=t.find(s=>D$o(s));return r?t.every(s=>s===r||R$o(s)):!1}function lti(e){return fgr(e)||hse(e)?!0:yse(e)?x$o(e):!1}function k$o(e,t,r){let s=t.semi?";":"",{node:a}=e,o=[t9(e),"opaque type ",r("id"),r("typeParameters")];return a.supertype&&o.push(": ",r("supertype")),a.impltype&&o.push(" = ",r("impltype")),o.push(s),o}function uti(e,t,r){let s=t.semi?";":"",{node:a}=e,o=[t9(e)];o.push("type ",r("id"),r("typeParameters"));let g=a.type==="TSTypeAliasDeclaration"?"typeAnnotation":"right";return[Z5e(e,t,r,o," =",g),s]}function gti(e,t,r){let s=!1;return ta(e.map(({isFirst:a,previous:o,node:g,index:p})=>{let f=r();if(a)return f;let m=hse(g),y=hse(o);return y&&m?[" & ",s?dl(f):f]:!y&&!m?t.experimentalOperatorPosition==="start"?dl([Zg,"& ",f]):dl([" &",Zg,f]):(p>1&&(s=!0),[" & ",p>1?dl(f):f])},"types"))}function Ati(e,t,r){let{node:s}=e,{parent:a}=e,o=a.type!=="TypeParameterInstantiation"&&(!bse(a)||!t.experimentalTernaries)&&a.type!=="TSTypeParameterInstantiation"&&a.type!=="GenericTypeAnnotation"&&a.type!=="TSTypeReference"&&a.type!=="TSTypeAssertion"&&a.type!=="TupleTypeAnnotation"&&a.type!=="TSTupleType"&&!(a.type==="FunctionTypeParam"&&!a.name&&e.grandparent.this!==a)&&!((a.type==="TypeAlias"||a.type==="VariableDeclarator"||a.type==="TSTypeAliasDeclaration")&&_se(t.originalText,s)),g=lti(s),p=e.map(y=>{let B=r();return g||(B=YU(2,B)),gY(y,B,t)},"types");if(g)return oh(" | ",p);let f=o&&!_se(t.originalText,s),m=[zI([f?Zg:"","| "]),oh([Zg,"| "],p)];return nfe(e,t)?ta([dl(m),el]):(a.type==="TupleTypeAnnotation"||a.type==="TSTupleType")&&a[a.type==="TupleTypeAnnotation"&&a.types?"types":"elementTypes"].length>1?ta([dl([zI(["(",el]),m]),el,zI(")")]):ta(o?dl(m):m)}function G$o(e){var t;let{node:r,parent:s}=e;return r.type==="FunctionTypeAnnotation"&&(Aei(s)||!((s.type==="ObjectTypeProperty"||s.type==="ObjectTypeInternalSlot")&&!s.variance&&!s.optional&&tCt(s,r)||s.type==="ObjectTypeCallProperty"||((t=e.getParentNode(2))==null?void 0:t.type)==="DeclareFunction"))}function dti(e,t,r){let{node:s}=e,a=[oCt(e)];(s.type==="TSConstructorType"||s.type==="TSConstructSignatureDeclaration")&&a.push("new ");let o=ife(e,r,t,!1,!0),g=[];return s.type==="FunctionTypeAnnotation"?g.push(G$o(e)?" => ":": ",r("returnType")):g.push(YD(e,r,s.returnType?"returnType":"typeAnnotation")),Yve(s,g)&&(o=ta(o)),a.push(o,g),ta(a)}function pti(e,t,r){return[r("objectType"),JF(e),"[",r("indexType"),"]"]}function fti(e,t,r){return["infer ",r("typeParameter")]}function J$n(e,t,r){let{node:s}=e;return[s.postfix?"":r,YD(e,t),s.postfix?r:""]}function Iti(e,t,r){let{node:s}=e;return["...",...s.type==="TupleTypeSpreadElement"&&s.label?[r("label"),": "]:[],r("typeAnnotation")]}function Cti(e,t,r){let{node:s}=e;return[s.variance?r("variance"):"",r("label"),s.optional?"?":"",": ",r("elementType")]}var F$o=new WeakSet;function YD(e,t,r="typeAnnotation"){let{node:{[r]:s}}=e;if(!s)return"";let a=!1;if(s.type==="TSTypeAnnotation"||s.type==="TypeAnnotation"){let o=e.call(mti,r);(o==="=>"||o===":"&&Gu(s,$g.Leading))&&(a=!0),F$o.add(s)}return a?[" ",t(r)]:t(r)}var mti=e=>e.match(t=>t.type==="TSTypeAnnotation",(t,r)=>(r==="returnType"||r==="typeAnnotation")&&(t.type==="TSFunctionType"||t.type==="TSConstructorType"))?"=>":e.match(t=>t.type==="TSTypeAnnotation",(t,r)=>r==="typeAnnotation"&&(t.type==="TSJSDocNullableType"||t.type==="TSJSDocNonNullableType"||t.type==="TSTypePredicate"))||e.match(t=>t.type==="TypeAnnotation",(t,r)=>r==="typeAnnotation"&&t.type==="Identifier",(t,r)=>r==="id"&&t.type==="DeclareFunction")||e.match(t=>t.type==="TypeAnnotation",(t,r)=>r==="typeAnnotation"&&t.type==="Identifier",(t,r)=>r==="id"&&t.type==="DeclareHook")||e.match(t=>t.type==="TypeAnnotation",(t,r)=>r==="bound"&&t.type==="TypeParameter"&&t.usesExtendsBound)?"":":";function hti(e,t,r){let s=mti(e);return s?[s," ",r("typeAnnotation")]:r("typeAnnotation")}function _ti(e){return[e("elementType"),"[]"]}function yti({node:e},t){let r=e.type==="TSTypeQuery"?"exprName":"argument",s=e.type==="TypeofTypeAnnotation"||e.typeArguments?"typeArguments":"typeParameters";return["typeof ",t(r),t(s)]}function bti(e,t){let{node:r}=e;return[r.type==="TSTypePredicate"&&r.asserts?"asserts ":r.type==="TypePredicate"&&r.kind?`${r.kind} `:"",t("parameterName"),r.typeAnnotation?[" is ",YD(e,t)]:""]}function JF(e){let{node:t}=e;return!t.optional||t.type==="Identifier"&&t===e.parent.key?"":Qh(t)||iv(t)&&t.computed||t.type==="OptionalIndexedAccessType"?"?.":"?"}function Eti(e){return e.node.definite||e.match(void 0,(t,r)=>r==="id"&&t.type==="VariableDeclarator"&&t.definite)?"!":""}var Z$o=new Set(["DeclareClass","DeclareComponent","DeclareFunction","DeclareHook","DeclareVariable","DeclareExportDeclaration","DeclareExportAllDeclaration","DeclareOpaqueType","DeclareTypeAlias","DeclareEnum","DeclareInterface"]);function t9(e){let{node:t}=e;return t.declare||Z$o.has(t.type)&&e.parent.type!=="DeclareExportDeclaration"?"declare ":""}var L$o=new Set(["TSAbstractMethodDefinition","TSAbstractPropertyDefinition","TSAbstractAccessorProperty"]);function oCt({node:e}){return e.abstract||L$o.has(e.type)?"abstract ":""}function Kpe(e,t,r){let s=e.node;return s.typeArguments?r("typeArguments"):s.typeParameters?r("typeParameters"):""}function Bti(e,t,r){return["::",r("callee")]}function Cse(e,t,r){return e.type==="EmptyStatement"?";":e.type==="BlockStatement"||r?[" ",t]:dl([Zg,t])}function vti(e,t){return["...",t("argument"),YD(e,t)]}function qIt(e){return e.accessibility?e.accessibility+" ":""}function V$o(e,t,r,s){let{node:a}=e,o=a.inexact?"...":"";return Gu(a,$g.Dangling)?ta([r,o,t2(e,t,{indent:!0}),el,s]):[r,o,s]}function Ngr(e,t,r){let{node:s}=e,a=[],o=s.type==="TupleExpression"?"#[":"[",g="]",p=s.type==="TupleTypeAnnotation"&&s.types?"types":s.type==="TSTupleType"||s.type==="TupleTypeAnnotation"?"elementTypes":"elements",f=s[p];if(f.length===0)a.push(V$o(e,t,o,g));else{let m=N0(!1,f,-1),y=m?.type!=="RestElement"&&!s.inexact,B=m===null,v=Symbol("array"),k=!t.__inJestEach&&f.length>1&&f.every((X,U,le)=>{let ae=X?.type;if(!XD(X)&&!AY(X))return!1;let ge=le[U+1];if(ge&&ae!==ge.type)return!1;let fe=XD(X)?"elements":"properties";return X[fe]&&X[fe].length>1}),T=Sti(s,t),O=y?B?",":kz(t)?T?zI(",","",{groupId:v}):zI(","):"":"";a.push(ta([o,dl([el,T?P$o(e,t,r,O):[W$o(e,t,p,s.inexact,r),O],t2(e,t)]),el,g],{shouldBreak:k,id:v}))}return a.push(JF(e),YD(e,r)),a}function Sti(e,t){return XD(e)&&e.elements.length>1&&e.elements.every(r=>r&&(Nz(r)||uei(r)&&!Gu(r.argument))&&!Gu(r,$g.Trailing|$g.Line,s=>!zW(t.originalText,dB(s),{backwards:!0})))}function wti({node:e},{originalText:t}){let r=a=>lgr(t,ugr(t,a)),s=a=>t[a]===","?a:s(r(a+1));return ggr(t,s(ah(e)))}function W$o(e,t,r,s,a){let o=[];return e.each(({node:g,isLast:p})=>{o.push(g?ta(a()):""),(!p||s)&&o.push([",",Zg,g&&wti(e,t)?el:""])},r),s&&o.push("..."),o}function P$o(e,t,r,s){let a=[];return e.each(({isLast:o,next:g})=>{a.push([r(),o?s:","]),o||a.push(wti(e,t)?[ol,ol]:Gu(g,$g.Leading|$g.Line)?ol:Zg)},"elements"),Bei(a)}var O$o=/^[\$A-Z_a-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\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-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\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\u0AF9\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-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\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-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\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\u2160-\u2188\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-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\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][\$0-9A-Z_a-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\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\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\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\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]*$/,Q$o=e=>O$o.test(e),M$o=Q$o;function H$o(e){return e.length===1?e:e.toLowerCase().replace(/^([+-]?[\d.]+e)(?:\+|(-))?0*(?=\d)/u,"$1$2").replace(/^([+-]?[\d.]+)e[+-]?0+$/u,"$1").replace(/^([+-])?\./u,"$10.").replace(/(\.\d+?)0+(?=e|$)/u,"$1").replace(/\.(?=e|$)/u,"")}var Wve=H$o,JIt=new WeakMap;function Tti(e){return/^(?:\d+|\d+\.\d+)$/u.test(e)}function U$n(e,t){return t.parser==="json"||t.parser==="jsonc"||!e9(e.key)||Lve(mQ(e.key),t).slice(1,-1)!==e.key.value?!1:!!(M$o(e.key.value)&&!(t.parser==="babel-ts"&&e.type==="ClassProperty"||t.parser==="typescript"&&e.type==="PropertyDefinition")||Tti(e.key.value)&&String(Number(e.key.value))===e.key.value&&e.type!=="ImportAttribute"&&(t.parser==="babel"||t.parser==="acorn"||t.parser==="espree"||t.parser==="meriyah"||t.parser==="__babel_estree"))}function Y$o(e,t){let{key:r}=e.node;return(r.type==="Identifier"||Nz(r)&&Tti(Wve(mQ(r)))&&String(r.value)===Wve(mQ(r))&&!(t.parser==="typescript"||t.parser==="babel-ts"))&&(t.parser==="json"||t.parser==="jsonc"||t.quoteProps==="consistent"&&JIt.get(e.parent))}function L5e(e,t,r){let{node:s}=e;if(s.computed)return["[",r("key"),"]"];let{parent:a}=e,{key:o}=s;if(t.quoteProps==="consistent"&&!JIt.has(a)){let g=e.siblings.some(p=>!p.computed&&e9(p.key)&&!U$n(p,t));JIt.set(a,g)}if(Y$o(e,t)){let g=Lve(JSON.stringify(o.type==="Identifier"?o.name:o.value.toString()),t);return e.call(p=>gY(p,g,t),"key")}return U$n(s,t)&&(t.quoteProps==="as-needed"||t.quoteProps==="consistent"&&!JIt.get(a))?e.call(g=>gY(g,/^\d/u.test(o.value)?Wve(o.value):o.value,t),"key"):r("key")}function Qur(e,t,r){let{node:s}=e;return s.shorthand?r("value"):Z5e(e,t,r,L5e(e,t,r),":","value")}var X$o=({node:e,key:t,parent:r})=>t==="value"&&e.type==="FunctionExpression"&&(r.type==="ObjectMethod"||r.type==="ClassMethod"||r.type==="ClassPrivateMethod"||r.type==="MethodDefinition"||r.type==="TSAbstractMethodDefinition"||r.type==="TSDeclareMethod"||r.type==="Property"&&rCt(r));function Nti(e,t,r,s){if(X$o(e))return Rgr(e,r,t);let{node:a}=e,o=!1;if((a.type==="FunctionDeclaration"||a.type==="FunctionExpression")&&s!=null&&s.expandLastArg){let{parent:y}=e;Qh(y)&&(bQ(y).length>1||Vk(a).every(B=>B.type==="Identifier"&&!B.typeAnnotation))&&(o=!0)}let g=[t9(e),a.async?"async ":"",`function${a.generator?"*":""} `,a.id?t("id"):""],p=ife(e,t,r,o),f=aCt(e,t),m=Yve(a,f);return g.push(Kpe(e,r,t),ta([m?ta(p):p,f]),a.body?" ":"",t("body")),r.semi&&(a.declare||!a.body)&&g.push(";"),g}function ogr(e,t,r){let{node:s}=e,{kind:a}=s,o=s.value||s,g=[];return!a||a==="init"||a==="method"||a==="constructor"?o.async&&g.push("async "):(Agr.ok(a==="get"||a==="set"),g.push(a," ")),o.generator&&g.push("*"),g.push(L5e(e,t,r),s.optional||s.key.optional?"?":"",s===o?Rgr(e,t,r):r("value")),g}function Rgr(e,t,r){let{node:s}=e,a=ife(e,r,t),o=aCt(e,r),g=N$o(s),p=Yve(s,o),f=[Kpe(e,t,r),ta([g?ta(a,{shouldBreak:!0}):p?ta(a):a,o])];return s.body?f.push(" ",r("body")):f.push(t.semi?";":""),f}function J$o(e){let t=Vk(e);return t.length===1&&!e.typeParameters&&!Gu(e,$g.Dangling)&&t[0].type==="Identifier"&&!t[0].typeAnnotation&&!Gu(t[0])&&!t[0].optional&&!e.predicate&&!e.returnType}function Rti(e,t){if(t.arrowParens==="always")return!1;if(t.arrowParens==="avoid"){let{node:r}=e;return J$o(r)}return!1}function aCt(e,t){let{node:r}=e,s=[YD(e,t,"returnType")];return r.predicate&&s.push(t("predicate")),s}function Dti(e,t,r){let{node:s}=e,a=t.semi?";":"",o=[];if(s.argument){let f=r("argument");j$o(t,s.argument)?f=["(",dl([ol,f]),ol,")"]:(Rz(s.argument)||s.argument.type==="SequenceExpression"||t.experimentalTernaries&&s.argument.type==="ConditionalExpression"&&(s.argument.consequent.type==="ConditionalExpression"||s.argument.alternate.type==="ConditionalExpression"))&&(f=ta([zI("("),dl([el,f]),el,zI(")")])),o.push(" ",f)}let g=Gu(s,$g.Dangling),p=a&&g&&Gu(s,$g.Last|$g.Line);return p&&o.push(a),g&&o.push(" ",t2(e,t)),p||o.push(a),o}function U$o(e,t,r){return["return",Dti(e,t,r)]}function K$o(e,t,r){return["throw",Dti(e,t,r)]}function j$o(e,t){if(_se(e.originalText,t)||Gu(t,$g.Leading,r=>Ese(e.originalText,dB(r),ah(r)))&&!CR(t))return!0;if(dgr(t)){let r=t,s;for(;s=J7o(r);)if(r=s,_se(e.originalText,r))return!0}return!1}var Mur=new WeakMap;function xti(e){return Mur.has(e)||Mur.set(e,e.type==="ConditionalExpression"&&!YF(e,t=>t.type==="ObjectExpression")),Mur.get(e)}var kti=e=>e.type==="SequenceExpression";function z$o(e,t,r,s={}){let a=[],o,g=[],p=!1,f=!s.expandLastArg&&e.node.body.type==="ArrowFunctionExpression",m;(function U(){let{node:le}=e,ae=q$o(e,t,r,s);if(a.length===0)a.push(ae);else{let{leading:ge,trailing:fe}=Kei(e,t);a.push([ge,ae]),g.unshift(fe)}f&&(p||(p=le.returnType&&Vk(le).length>0||le.typeParameters||Vk(le).some(ge=>ge.type!=="Identifier"))),!f||le.body.type!=="ArrowFunctionExpression"?(o=r("body",s),m=le.body):e.call(U,"body")})();let y=!_se(t.originalText,m)&&(kti(m)||$$o(m,o,t)||!p&&xti(m)),B=e.key==="callee"&&Vve(e.parent),v=Symbol("arrow-chain"),k=eea(e,s,{signatureDocs:a,shouldBreak:p}),T=!1,O=!1,X=!1;return f&&(B||s.assignmentLayout)&&(O=!0,X=!Gu(e.node,$g.Leading&$g.Line),T=s.assignmentLayout==="chain-tail-arrow-chain"||B&&!y),o=tea(e,t,s,{bodyDoc:o,bodyComments:g,functionBody:m,shouldPutBodyOnSameLine:y}),ta([ta(O?dl([X?el:"",k]):k,{shouldBreak:T,id:v})," =>",f?sCt(o,{groupId:v}):ta(o),f&&B?zI(el,"",{groupId:v}):""])}function q$o(e,t,r,s){let{node:a}=e,o=[];if(a.async&&o.push("async "),Rti(e,t))o.push(r(["params",0]));else{let p=s.expandLastArg||s.expandFirstArg,f=aCt(e,r);if(p){if(XF(f))throw new zIt;f=ta(Kur(f))}o.push(ta([ife(e,r,t,p,!0),f]))}let g=t2(e,t,{filter(p){let f=Mve(t.originalText,ah(p));return f!==!1&&t.originalText.slice(f,f+2)==="=>"}});return g&&o.push(" ",g),o}function $$o(e,t,r){var s,a;return XD(e)||AY(e)||e.type==="ArrowFunctionExpression"||e.type==="DoExpression"||e.type==="BlockStatement"||CR(e)||((s=t.label)==null?void 0:s.hug)!==!1&&(((a=t.label)==null?void 0:a.embed)||fei(e,r.originalText))}function eea(e,t,{signatureDocs:r,shouldBreak:s}){if(r.length===1)return r[0];let{parent:a,key:o}=e;return o!=="callee"&&Vve(a)||Rz(a)?ta([r[0]," =>",dl([Zg,oh([" =>",Zg],r.slice(1))])],{shouldBreak:s}):o==="callee"&&Vve(a)||t.assignmentLayout?ta(oh([" =>",Zg],r),{shouldBreak:s}):ta(dl(oh([" =>",Zg],r)),{shouldBreak:s})}function tea(e,t,r,{bodyDoc:s,bodyComments:a,functionBody:o,shouldPutBodyOnSameLine:g}){let{node:p,parent:f}=e,m=r.expandLastArg&&kz(t,"all")?zI(","):"",y=(r.expandLastArg||f.type==="JSXExpressionContainer")&&!Gu(p)?el:"";return g&&xti(o)?[" ",ta([zI("","("),dl([el,s]),zI("",")"),m,y]),a]:(kti(o)&&(s=ta(["(",dl([el,s]),el,")"])),g?[" ",s,a]:[dl([Zg,s,a]),m,y])}var rea=(e,t,r)=>{if(!(e&&t==null)){if(t.findLast)return t.findLast(r);for(let s=t.length-1;s>=0;s--){let a=t[s];if(r(a,s,t))return a}}},nea=rea;function agr(e,t,r,s){let{node:a}=e,o=[],g=nea(!1,a[s],p=>p.type!=="EmptyStatement");return e.each(({node:p})=>{p.type!=="EmptyStatement"&&(o.push(r()),p!==g&&(o.push(ol),Gz(p,t)&&o.push(ol)))},s),o}function Gti(e,t,r){let s=iea(e,t,r),{node:a,parent:o}=e;if(a.type==="Program"&&o?.type!=="ModuleExpression")return s?[s,ol]:"";let g=[];if(a.type==="StaticBlock"&&g.push("static "),g.push("{"),s)g.push(dl([ol,s]),ol);else{let p=e.grandparent;o.type==="ArrowFunctionExpression"||o.type==="FunctionExpression"||o.type==="FunctionDeclaration"||o.type==="ComponentDeclaration"||o.type==="HookDeclaration"||o.type==="ObjectMethod"||o.type==="ClassMethod"||o.type==="ClassPrivateMethod"||o.type==="ForStatement"||o.type==="WhileStatement"||o.type==="DoWhileStatement"||o.type==="DoExpression"||o.type==="ModuleExpression"||o.type==="CatchClause"&&!p.finalizer||o.type==="TSModuleDeclaration"||a.type==="StaticBlock"||g.push(ol)}return g.push("}"),g}function iea(e,t,r){let{node:s}=e,a=h_(s.directives),o=s.body.some(f=>f.type!=="EmptyStatement"),g=Gu(s,$g.Dangling);if(!a&&!o&&!g)return"";let p=[];return a&&(p.push(agr(e,t,r,"directives")),(o||g)&&(p.push(ol),Gz(N0(!1,s.directives,-1),t)&&p.push(ol))),o&&p.push(agr(e,t,r,"body")),g&&p.push(t2(e,t)),p}function sea(e){let t=new WeakMap;return function(r){return t.has(r)||t.set(r,Symbol(e)),t.get(r)}}var Fti=sea;function oea(e){switch(e){case null:return"";case"PlusOptional":return"+?";case"MinusOptional":return"-?";case"Optional":return"?"}}function aea(e,t,r){let{node:s}=e;return ta([s.variance?r("variance"):"","[",dl([r("keyTparam")," in ",r("sourceType")]),"]",oea(s.optional),": ",r("propType")])}function Zti(e,t){return e==="+"||e==="-"?e+t:t}function cea(e,t,r){let{node:s}=e,a=t.objectWrap==="preserve"&&Ese(t.originalText,dB(s),dB(s.typeParameter));return ta(["{",dl([t.bracketSpacing?Zg:el,ta([r("typeParameter"),s.optional?Zti(s.optional,"?"):"",s.typeAnnotation?": ":"",r("typeAnnotation")]),t.semi?zI(";"):""]),t2(e,t),t.bracketSpacing?Zg:el,"}"],{shouldBreak:a})}var Dgr=Fti("typeParameters");function lea(e,t,r){let{node:s}=e;return Vk(s).length===1&&s.type.startsWith("TS")&&!s[r][0].constraint&&e.parent.type==="ArrowFunctionExpression"&&!(t.filepath&&/\.ts$/u.test(t.filepath))}function R5e(e,t,r,s){let{node:a}=e;if(!a[s])return"";if(!Array.isArray(a[s]))return r(s);let o=nCt(e.grandparent),g=e.match(f=>!(f[s].length===1&&hse(f[s][0])),void 0,(f,m)=>m==="typeAnnotation",f=>f.type==="Identifier",oti);if(a[s].length===0||!g&&(o||a[s].length===1&&(a[s][0].type==="NullableTypeAnnotation"||lti(a[s][0]))))return["<",oh(", ",e.map(r,s)),uea(e,t),">"];let p=a.type==="TSTypeParameterInstantiation"?"":lea(e,t,s)?",":kz(t)?zI(","):"";return ta(["<",dl([el,oh([",",Zg],e.map(r,s))]),p,el,">"],{id:Dgr(a)})}function uea(e,t){let{node:r}=e;if(!Gu(r,$g.Dangling))return"";let s=!Gu(r,$g.Line),a=t2(e,t,{indent:!s});return s?a:[a,ol]}function Lti(e,t,r){let{node:s,parent:a}=e,o=[s.const?"const ":""],g=s.type==="TSTypeParameter"?r("name"):s.name;if(a.type==="TSMappedType")return a.readonly&&o.push(Zti(a.readonly,"readonly")," "),o.push("[",g),s.constraint&&o.push(" in ",r("constraint")),a.nameType&&o.push(" as ",e.callParent(()=>r("nameType"))),o.push("]"),o;if(s.variance&&o.push(r("variance")),s.in&&o.push("in "),s.out&&o.push("out "),o.push(g),s.bound&&(s.usesExtendsBound&&o.push(" extends "),o.push(YD(e,r,"bound"))),s.constraint){let p=Symbol("constraint");o.push(" extends",ta(dl(Zg),{id:p}),xz,sCt(r("constraint"),{groupId:p}))}return s.default&&o.push(" = ",r("default")),ta(o)}var Vti=X_(["ClassProperty","PropertyDefinition","ClassPrivateProperty","ClassAccessorProperty","AccessorProperty","TSAbstractPropertyDefinition","TSAbstractAccessorProperty"]);function Wti(e,t,r){let{node:s}=e,a=[t9(e),oCt(e),"class"],o=Gu(s.id,$g.Trailing)||Gu(s.typeParameters,$g.Trailing)||Gu(s.superClass)||h_(s.extends)||h_(s.mixins)||h_(s.implements),g=[],p=[];if(s.id&&g.push(" ",r("id")),g.push(r("typeParameters")),s.superClass){let y=[dea(e,t,r),r(s.superTypeArguments?"superTypeArguments":"superTypeParameters")],B=e.call(v=>["extends ",gY(v,y,t)],"superClass");o?p.push(Zg,ta(B)):p.push(" ",B)}else p.push(Hur(e,t,r,"extends"));p.push(Hur(e,t,r,"mixins"),Hur(e,t,r,"implements"));let f;if(o){let y;Oti(s)?y=[...g,dl(p)]:y=dl([...g,p]),f=Pti(s),a.push(ta(y,{id:f}))}else a.push(...g,...p);let m=s.body;return o&&h_(m.body)?a.push(zI(ol," ",{groupId:f})):a.push(" "),a.push(r("body")),a}var Pti=Fti("heritageGroup");function gea(e){return zI(ol,"",{groupId:Pti(e)})}function Aea(e){return["extends","mixins","implements"].reduce((t,r)=>t+(Array.isArray(e[r])?e[r].length:0),e.superClass?1:0)>1}function Oti(e){return e.typeParameters&&!Gu(e.typeParameters,$g.Trailing|$g.Line)&&!Aea(e)}function Hur(e,t,r,s){let{node:a}=e;if(!h_(a[s]))return"";let o=t2(e,t,{marker:s});return[Oti(a)?zI(" ",Zg,{groupId:Dgr(a.typeParameters)}):Zg,o,o&&ol,s,ta(dl([Zg,oh([",",Zg],e.map(r,s))]))]}function dea(e,t,r){let s=r("superClass"),{parent:a}=e;return a.type==="AssignmentExpression"?ta(zI(["(",dl([el,s]),el,")"],s)):s}function Qti(e,t,r){let{node:s}=e,a=[];return h_(s.decorators)&&a.push(qei(e,t,r)),a.push(qIt(s)),s.static&&a.push("static "),a.push(oCt(e)),s.override&&a.push("override "),a.push(ogr(e,t,r)),a}function Mti(e,t,r){let{node:s}=e,a=[],o=t.semi?";":"";h_(s.decorators)&&a.push(qei(e,t,r)),a.push(t9(e),qIt(s)),s.static&&a.push("static "),a.push(oCt(e)),s.override&&a.push("override "),s.readonly&&a.push("readonly "),s.variance&&a.push(r("variance")),(s.type==="ClassAccessorProperty"||s.type==="AccessorProperty"||s.type==="TSAbstractAccessorProperty")&&a.push("accessor "),a.push(L5e(e,t,r),JF(e),Eti(e),YD(e,r));let g=s.type==="TSAbstractPropertyDefinition"||s.type==="TSAbstractAccessorProperty";return[Z5e(e,t,r,a," =",g?void 0:"value"),o]}function pea(e,t,r){let{node:s}=e,a=[];return e.each(({node:o,next:g,isLast:p})=>{a.push(r()),!t.semi&&Vti(o)&&fea(o,g)&&a.push(";"),p||(a.push(ol),Gz(o,t)&&a.push(ol))},"body"),Gu(s,$g.Dangling)&&a.push(t2(e,t)),["{",a.length>0?[dl([ol,a]),ol]:"","}"]}function fea(e,t){var r;let{type:s,name:a}=e.key;if(!e.computed&&s==="Identifier"&&(a==="static"||a==="get"||a==="set")&&!e.value&&!e.typeAnnotation)return!0;if(!t||t.static||t.accessibility||t.readonly)return!1;if(!t.computed){let o=(r=t.key)==null?void 0:r.name;if(o==="in"||o==="instanceof")return!0}if(Vti(t)&&t.variance&&!t.static&&!t.declare)return!0;switch(t.type){case"ClassProperty":case"PropertyDefinition":case"TSAbstractPropertyDefinition":return t.computed;case"MethodDefinition":case"TSAbstractMethodDefinition":case"ClassMethod":case"ClassPrivateMethod":{if((t.value?t.value.async:t.async)||t.kind==="get"||t.kind==="set")return!1;let o=t.value?t.value.generator:t.generator;return!!(t.computed||o)}case"TSIndexSignature":return!0}return!1}var Iea=X_(["TSAsExpression","TSTypeAssertion","TSNonNullExpression","TSInstantiationExpression","TSSatisfiesExpression"]);function Hti(e){return Iea(e)?Hti(e.expression):e}var Cea=X_(["FunctionExpression","ArrowFunctionExpression"]);function mea(e){return e.type==="MemberExpression"||e.type==="OptionalMemberExpression"||e.type==="Identifier"&&e.name!=="undefined"}function hea(e,t){if(t.semi||Xti(e,t)||Jti(e,t))return!1;let{node:r,key:s,parent:a}=e;return!!(r.type==="ExpressionStatement"&&(s==="body"&&(a.type==="Program"||a.type==="BlockStatement"||a.type==="StaticBlock"||a.type==="TSModuleBlock")||s==="consequent"&&a.type==="SwitchCase")&&e.call(()=>Yti(e,t),"expression"))}function Yti(e,t){let{node:r}=e;switch(r.type){case"ParenthesizedExpression":case"TypeCastExpression":case"ArrayExpression":case"ArrayPattern":case"TemplateLiteral":case"TemplateElement":case"RegExpLiteral":return!0;case"ArrowFunctionExpression":if(!Rti(e,t))return!0;break;case"UnaryExpression":{let{prefix:s,operator:a}=r;if(s&&(a==="+"||a==="-"))return!0;break}case"BindExpression":if(!r.object)return!0;break;case"Literal":if(r.regex)return!0;break;default:if(CR(r))return!0}return nfe(e,t)?!0:dgr(r)?e.call(()=>Yti(e,t),...lei(r)):!1}function Xti({node:e,parent:t},r){return(r.parentParser==="markdown"||r.parentParser==="mdx")&&e.type==="ExpressionStatement"&&CR(e.expression)&&t.type==="Program"&&t.body.length===1}function Jti({node:e,parent:t},r){return(r.parser==="__vue_event_binding"||r.parser==="__vue_ts_event_binding")&&e.type==="ExpressionStatement"&&t.type==="Program"&&t.body.length===1}function _ea(e,t,r){let s=[r("expression")];if(Jti(e,t)){let a=Hti(e.node.expression);(Cea(a)||mea(a))&&s.push(";")}else Xti(e,t)||t.semi&&s.push(";");return s}function yea(e,t,r){if(t.__isVueBindings||t.__isVueForBindingLeft){let s=e.map(r,"program","body",0,"params");if(s.length===1)return s[0];let a=oh([",",Zg],s);return t.__isVueForBindingLeft?["(",dl([el,ta(a)]),el,")"]:a}if(t.__isEmbeddedTypescriptGenericParameters){let s=e.map(r,"program","body",0,"typeParameters","params");return oh([",",Zg],s)}}function bea(e,t){let{node:r}=e;switch(r.type){case"RegExpLiteral":return K$n(r);case"BigIntLiteral":return cgr(r.extra.raw);case"NumericLiteral":return Wve(r.extra.raw);case"StringLiteral":return Upe(Lve(r.extra.raw,t));case"NullLiteral":return"null";case"BooleanLiteral":return String(r.value);case"DirectiveLiteral":return j$n(r.extra.raw,t);case"Literal":{if(r.regex)return K$n(r.regex);if(r.bigint)return cgr(r.raw);let{value:s}=r;return typeof s=="number"?Wve(r.raw):typeof s=="string"?Eea(e)?j$n(r.raw,t):Upe(Lve(r.raw,t)):String(s)}}}function Eea(e){if(e.key!=="expression")return;let{parent:t}=e;return t.type==="ExpressionStatement"&&t.directive}function cgr(e){return e.toLowerCase()}function K$n({pattern:e,flags:t}){return t=[...t].sort().join(""),`/${e}/${t}`}function j$n(e,t){let r=e.slice(1,-1);if(r.includes('"')||r.includes("'"))return e;let s=t.singleQuote?"'":'"';return s+r+s}function Bea(e,t,r){let s=e.originalText.slice(t,r);for(let a of e[Symbol.for("comments")]){let o=dB(a);if(o>r)break;let g=ah(a);if(ge.type==="ExportDefaultDeclaration"||e.type==="DeclareExportDeclaration"&&e.default;function jti(e,t,r){let{node:s}=e,a=[t$o(e,t,r),t9(e),"export",Kti(s)?" default":""],{declaration:o,exported:g}=s;return Gu(s,$g.Dangling)&&(a.push(" ",t2(e,t)),Iei(s)&&a.push(ol)),o?a.push(" ",r("declaration")):(a.push(Tea(s)),s.type==="ExportAllDeclaration"||s.type==="DeclareExportAllDeclaration"?(a.push(" *"),g&&a.push(" as ",r("exported"))):a.push($ti(e,t,r)),a.push(qti(e,t,r),tri(e,t,r))),a.push(wea(s,t)),a}var Sea=X_(["ClassDeclaration","ComponentDeclaration","FunctionDeclaration","TSInterfaceDeclaration","DeclareClass","DeclareComponent","DeclareFunction","DeclareHook","HookDeclaration","TSDeclareFunction","EnumDeclaration"]);function wea(e,t){return t.semi&&(!e.declaration||Kti(e)&&!Sea(e.declaration))?";":""}function xgr(e,t=!0){return e&&e!=="value"?`${t?" ":""}${e}${t?"":" "}`:""}function zti(e,t){return xgr(e.importKind,t)}function Tea(e){return xgr(e.exportKind)}function qti(e,t,r){let{node:s}=e;if(!s.source)return"";let a=[];return eri(s,t)&&a.push(" from"),a.push(" ",r("source")),a}function $ti(e,t,r){let{node:s}=e;if(!eri(s,t))return"";let a=[" "];if(h_(s.specifiers)){let o=[],g=[];e.each(()=>{let p=e.node.type;if(p==="ExportNamespaceSpecifier"||p==="ExportDefaultSpecifier"||p==="ImportNamespaceSpecifier"||p==="ImportDefaultSpecifier")o.push(r());else if(p==="ExportSpecifier"||p==="ImportSpecifier")g.push(r());else throw new Hve(s,"specifier")},"specifiers"),a.push(oh(", ",o)),g.length>0&&(o.length>0&&a.push(", "),g.length>1||o.length>0||s.specifiers.some(p=>Gu(p))?a.push(ta(["{",dl([t.bracketSpacing?Zg:el,oh([",",Zg],g)]),zI(kz(t)?",":""),t.bracketSpacing?Zg:el,"}"])):a.push(["{",t.bracketSpacing?" ":"",...g,t.bracketSpacing?" ":"","}"]))}else a.push("{}");return a}function eri(e,t){return e.type!=="ImportDeclaration"||h_(e.specifiers)||e.importKind==="type"?!0:Uti(t,dB(e),dB(e.source)).trimEnd().endsWith("from")}function Nea(e,t){var r,s;if((r=e.extra)!=null&&r.deprecatedAssertSyntax)return"assert";let a=Uti(t,ah(e.source),(s=e.attributes)!=null&&s[0]?dB(e.attributes[0]):ah(e)).trimStart();return a.startsWith("assert")?"assert":a.startsWith("with")||h_(e.attributes)?"with":void 0}function tri(e,t,r){let{node:s}=e;if(!s.source)return"";let a=Nea(s,t);if(!a)return"";let o=[` ${a} {`];return h_(s.attributes)&&(t.bracketSpacing&&o.push(" "),o.push(oh(", ",e.map(r,"attributes"))),t.bracketSpacing&&o.push(" ")),o.push("}"),o}function Rea(e,t,r){let{node:s}=e,{type:a}=s,o=a.startsWith("Import"),g=o?"imported":"local",p=o?"local":"exported",f=s[g],m=s[p],y="",B="";return a==="ExportNamespaceSpecifier"||a==="ImportNamespaceSpecifier"?y="*":f&&(y=r(g)),m&&!Dea(s)&&(B=r(p)),[xgr(a==="ImportSpecifier"?s.importKind:s.exportKind,!1),y,y&&B?" as ":"",B]}function Dea(e){if(e.type!=="ImportSpecifier"&&e.type!=="ExportSpecifier")return!1;let{local:t,[e.type==="ImportSpecifier"?"imported":"exported"]:r}=e;if(t.type!==r.type||!G7o(t,r))return!1;if(e9(t))return t.value===r.value&&mQ(t)===mQ(r);switch(t.type){case"Identifier":return t.name===r.name;default:return!1}}function cCt(e,t,r){var s;let a=t.semi?";":"",{node:o}=e,g=o.type==="ObjectTypeAnnotation",p=o.type==="TSEnumDeclaration"||o.type==="EnumBooleanBody"||o.type==="EnumNumberBody"||o.type==="EnumBigIntBody"||o.type==="EnumStringBody"||o.type==="EnumSymbolBody",f=[o.type==="TSTypeLiteral"||p?"members":o.type==="TSInterfaceBody"?"body":"properties"];g&&f.push("indexers","callProperties","internalSlots");let m=f.flatMap(pe=>e.map(({node:he})=>({node:he,printed:r(),loc:dB(he)}),pe));f.length>1&&m.sort((pe,he)=>pe.loc-he.loc);let{parent:y,key:B}=e,v=g&&B==="body"&&(y.type==="InterfaceDeclaration"||y.type==="DeclareInterface"||y.type==="DeclareClass"),k=o.type==="TSInterfaceBody"||p||v||o.type==="ObjectPattern"&&y.type!=="FunctionDeclaration"&&y.type!=="FunctionExpression"&&y.type!=="ArrowFunctionExpression"&&y.type!=="ObjectMethod"&&y.type!=="ClassMethod"&&y.type!=="ClassPrivateMethod"&&y.type!=="AssignmentPattern"&&y.type!=="CatchClause"&&o.properties.some(pe=>pe.value&&(pe.value.type==="ObjectPattern"||pe.value.type==="ArrayPattern"))||o.type!=="ObjectPattern"&&t.objectWrap==="preserve"&&m.length>0&&Ese(t.originalText,dB(o),m[0].loc),T=v?";":o.type==="TSInterfaceBody"||o.type==="TSTypeLiteral"?zI(a,";"):",",O=o.type==="RecordExpression"?"#{":o.exact?"{|":"{",X=o.exact?"|}":"}",U=[],le=m.map(pe=>{let he=[...U,ta(pe.printed)];return U=[T,Zg],(pe.node.type==="TSPropertySignature"||pe.node.type==="TSMethodSignature"||pe.node.type==="TSConstructSignatureDeclaration"||pe.node.type==="TSCallSignatureDeclaration")&&Gu(pe.node,$g.PrettierIgnore)&&U.shift(),Gz(pe.node,t)&&U.push(ol),he});if(o.inexact||o.hasUnknownMembers){let pe;if(Gu(o,$g.Dangling)){let he=Gu(o,$g.Line);pe=[t2(e,t),he||zW(t.originalText,ah(N0(!1,kve(o),-1)))?ol:Zg,"..."]}else pe=["..."];le.push([...U,...pe])}let ae=(s=N0(!1,m,-1))==null?void 0:s.node,ge=!(o.inexact||o.hasUnknownMembers||ae&&(ae.type==="RestElement"||(ae.type==="TSPropertySignature"||ae.type==="TSCallSignatureDeclaration"||ae.type==="TSMethodSignature"||ae.type==="TSConstructSignatureDeclaration")&&Gu(ae,$g.PrettierIgnore))),fe;if(le.length===0){if(!Gu(o,$g.Dangling))return[O,X,YD(e,r)];fe=ta([O,t2(e,t,{indent:!0}),el,X,JF(e),YD(e,r)])}else fe=[v&&h_(o.properties)?gea(y):"",O,dl([t.bracketSpacing?Zg:el,...le]),zI(ge&&(T!==","||kz(t))?T:""),t.bracketSpacing?Zg:el,X,JF(e),YD(e,r)];return e.match(pe=>pe.type==="ObjectPattern"&&!h_(pe.decorators),Yur)||hse(o)&&(e.match(void 0,(pe,he)=>he==="typeAnnotation",(pe,he)=>he==="typeAnnotation",Yur)||e.match(void 0,(pe,he)=>pe.type==="FunctionTypeParam"&&he==="typeAnnotation",Yur))||!k&&e.match(pe=>pe.type==="ObjectPattern",pe=>pe.type==="AssignmentExpression"||pe.type==="VariableDeclarator")?fe:ta(fe,{shouldBreak:k})}function Yur(e,t){return(t==="params"||t==="parameters"||t==="this"||t==="rest")&&cti(e)}function xea(e){let t=[e];for(let r=0;rv[Te]===s),T=v.type===s.type&&!k,O,X,U=0;do X=O||s,O=e.getParentNode(U),U++;while(O&&O.type===s.type&&p.every(Te=>O[Te]!==X));let le=O||v,ae=X;if(a&&(CR(s[p[0]])||CR(f)||CR(m)||xea(ae))){B=!0,T=!0;let Te=x=>[zI("("),dl([el,x]),el,zI(")")],ke=x=>x.type==="NullLiteral"||x.type==="Literal"&&x.value===null||x.type==="Identifier"&&x.name==="undefined";y.push(" ? ",ke(f)?r(o):Te(r(o))," : ",m.type===s.type||ke(m)?r(g):Te(r(g)))}else{let Te=x=>t.useTabs?dl(r(x)):YU(2,r(x)),ke=[Zg,"? ",f.type===s.type?zI("","("):"",Te(o),f.type===s.type?zI("",")"):"",Zg,": ",Te(g)];y.push(v.type!==s.type||v[g]===s||k?ke:t.useTabs?Eei(dl(ke)):YU(Math.max(0,t.tabWidth-2),ke))}let ge=[o,g,...p].some(Te=>Gu(s[Te],ke=>yQ(ke)&&Ese(t.originalText,dB(ke),ah(ke)))),fe=Te=>v===le?ta(Te,{shouldBreak:ge}):ge?[Te,XU]:Te,pe=!B&&(iv(v)||v.type==="NGPipeExpression"&&v.left===s)&&!v.computed,he=Fea(e),be=fe([kea(e,t,r),T?y:dl(y),a&&pe&&!he?el:""]);return k||he?ta([dl([el,be]),el]):be}function Lea(e,t){return(iv(t)||t.type==="NGPipeExpression"&&t.left===e)&&!t.computed}function Vea(e,t,r,s){return[...e.map(a=>kve(a)),kve(t),kve(r)].flat().some(a=>yQ(a)&&Ese(s.originalText,dB(a),ah(a)))}var Wea=new Map([["AssignmentExpression","right"],["VariableDeclarator","init"],["ReturnStatement","argument"],["ThrowStatement","argument"],["UnaryExpression","argument"],["YieldExpression","argument"],["AwaitExpression","argument"]]);function Pea(e){let{node:t}=e;if(t.type!=="ConditionalExpression")return!1;let r,s=t;for(let a=0;!r;a++){let o=e.getParentNode(a);if(o.type==="ChainExpression"&&o.expression===s||Qh(o)&&o.callee===s||iv(o)&&o.object===s||o.type==="TSNonNullExpression"&&o.expression===s){s=o;continue}o.type==="NewExpression"&&o.callee===s||QU(o)&&o.expression===s?(r=e.getParentNode(a+1),s=o):r=o}return s===t?!1:r[Wea.get(r.type)]===s}var Xur=e=>[zI("("),dl([el,e]),el,zI(")")];function kgr(e,t,r,s){if(!t.experimentalTernaries)return Zea(e,t,r);let{node:a}=e,o=a.type==="ConditionalExpression",g=bse(a),p=o?"consequent":"trueType",f=o?"alternate":"falseType",m=o?["test"]:["checkType","extendsType"],y=a[p],B=a[f],v=m.map(we=>a[we]),{parent:k}=e,T=k.type===a.type,O=T&&m.some(we=>k[we]===a),X=T&&k[f]===a,U=y.type===a.type,le=B.type===a.type,ae=le||X,ge=t.tabWidth>2||t.useTabs,fe,pe,he=0;do pe=fe||a,fe=e.getParentNode(he),he++;while(fe&&fe.type===a.type&&m.every(we=>fe[we]!==pe));let be=fe||k,Te=s&&s.assignmentLayout&&s.assignmentLayout!=="break-after-operator"&&(k.type==="AssignmentExpression"||k.type==="VariableDeclarator"||k.type==="ClassProperty"||k.type==="PropertyDefinition"||k.type==="ClassPrivateProperty"||k.type==="ObjectProperty"||k.type==="Property"),ke=(k.type==="ReturnStatement"||k.type==="ThrowStatement")&&!(U||le),x=o&&be.type==="JSXExpressionContainer"&&e.grandparent.type!=="JSXAttribute",et=Pea(e),Ue=Lea(a,k),Je=g&&nfe(e,t),Xe=ge?t.useTabs?" ":" ".repeat(t.tabWidth-1):"",ft=Vea(v,y,B,t)||U||le,Gt=!ae&&!T&&!g&&(x?y.type==="NullLiteral"||y.type==="Literal"&&y.value===null:Igr(y,t)&&N$n(a.test,3)),er=ae||X||g&&!T||T&&o&&N$n(a.test,1)||Gt,Ur=[];!U&&Gu(y,$g.Dangling)&&e.call(we=>{Ur.push(t2(we,t),ol)},"consequent");let Ot=[];Gu(a.test,$g.Dangling)&&e.call(we=>{Ot.push(t2(we,t))},"test"),!le&&Gu(B,$g.Dangling)&&e.call(we=>{Ot.push(t2(we,t))},"alternate"),Gu(a,$g.Dangling)&&Ot.push(t2(e,t));let dr=Symbol("test"),Ar=Symbol("consequent"),or=Symbol("test-and-consequent"),Fr=o?[Xur(r("test")),a.test.type==="ConditionalExpression"?XU:""]:[r("checkType")," ","extends"," ",bse(a.extendsType)||a.extendsType.type==="TSMappedType"?r("extendsType"):ta(Xur(r("extendsType")))],$r=ta([Fr," ?"],{id:dr}),Or=r(p),In=dl([U||x&&(CR(y)||T||ae)?ol:Zg,Ur,Or]),Br=er?ta([$r,ae?In:zI(In,ta(In,{id:Ar}),{groupId:dr})],{id:or}):[$r,In],tr=r(f),gn=Gt?zI(tr,Eei(Xur(tr)),{groupId:or}):tr,Gn=[Br,Ot.length>0?[dl([ol,Ot]),ol]:le?ol:Gt?zI(Zg," ",{groupId:or}):Zg,":",le?" ":ge?er?zI(Xe,zI(ae||Gt?" ":Xe," "),{groupId:or}):zI(Xe," "):" ",le?gn:ta([dl(gn),x&&!Gt?el:""]),Ue&&!et?el:"",ft?XU:""];return Te&&!ft?ta(dl([el,ta(Gn)])):Te||ke?ta(dl(Gn)):et||g&&O?ta([dl([el,Gn]),Je?el:""]):k===be?ta(Gn):Gn}function Oea(e,t,r,s){let{node:a}=e;if(pgr(a))return bea(e,t);let o=t.semi?";":"",g=[];switch(a.type){case"JsExpressionRoot":return r("node");case"JsonRoot":return[r("node"),ol];case"File":return yea(e,t,r)??r("program");case"EmptyStatement":return"";case"ExpressionStatement":return _ea(e,t,r);case"ChainExpression":return r("expression");case"ParenthesizedExpression":return!Gu(a.expression)&&(AY(a.expression)||XD(a.expression))?["(",r("expression"),")"]:ta(["(",dl([el,r("expression")]),el,")"]);case"AssignmentExpression":return d$o(e,t,r);case"VariableDeclarator":return p$o(e,t,r);case"BinaryExpression":case"LogicalExpression":return zei(e,t,r);case"AssignmentPattern":return[r("left")," = ",r("right")];case"OptionalMemberExpression":case"MemberExpression":return u$o(e,t,r);case"MetaProperty":return[r("meta"),".",r("property")];case"BindExpression":return a.object&&g.push(r("object")),g.push(ta(dl([el,Bti(e,t,r)]))),g;case"Identifier":return[a.name,JF(e),Eti(e),YD(e,r)];case"V8IntrinsicIdentifier":return["%",a.name];case"SpreadElement":case"SpreadElementPattern":case"SpreadPropertyPattern":case"RestElement":return vti(e,r);case"FunctionDeclaration":case"FunctionExpression":return Nti(e,r,t,s);case"ArrowFunctionExpression":return z$o(e,t,r,s);case"YieldExpression":return g.push("yield"),a.delegate&&g.push("*"),a.argument&&g.push(" ",r("argument")),g;case"AwaitExpression":if(g.push("await"),a.argument){g.push(" ",r("argument"));let{parent:p}=e;if(Qh(p)&&p.callee===a||iv(p)&&p.object===a){g=[dl([el,...g]),el];let f=e.findAncestor(m=>m.type==="AwaitExpression"||m.type==="BlockStatement");if(f?.type!=="AwaitExpression"||!YF(f.argument,m=>m===a))return ta(g)}}return g;case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ExportAllDeclaration":return jti(e,t,r);case"ImportDeclaration":return vea(e,t,r);case"ImportSpecifier":case"ExportSpecifier":case"ImportNamespaceSpecifier":case"ExportNamespaceSpecifier":case"ImportDefaultSpecifier":case"ExportDefaultSpecifier":return Rea(e,t,r);case"ImportAttribute":return Qur(e,t,r);case"Program":case"BlockStatement":case"StaticBlock":return Gti(e,t,r);case"ClassBody":return pea(e,t,r);case"ThrowStatement":return K$o(e,t,r);case"ReturnStatement":return U$o(e,t,r);case"NewExpression":case"ImportExpression":case"OptionalCallExpression":case"CallExpression":return iti(e,t,r);case"ObjectExpression":case"ObjectPattern":case"RecordExpression":return cCt(e,t,r);case"Property":return rCt(a)?ogr(e,t,r):Qur(e,t,r);case"ObjectProperty":return Qur(e,t,r);case"ObjectMethod":return ogr(e,t,r);case"Decorator":return["@",r("expression")];case"ArrayExpression":case"ArrayPattern":case"TupleExpression":return Ngr(e,t,r);case"SequenceExpression":{let{parent:p}=e;if(p.type==="ExpressionStatement"||p.type==="ForStatement"){let f=[];return e.each(({isFirst:m})=>{m?f.push(r()):f.push(",",dl([Zg,r()]))},"expressions"),ta(f)}return ta(oh([",",Zg],e.map(r,"expressions")))}case"ThisExpression":return"this";case"Super":return"super";case"Directive":return[r("value"),o];case"UnaryExpression":return g.push(a.operator),/[a-z]$/u.test(a.operator)&&g.push(" "),Gu(a.argument)?g.push(ta(["(",dl([el,r("argument")]),el,")"])):g.push(r("argument")),g;case"UpdateExpression":return[a.prefix?a.operator:"",r("argument"),a.prefix?"":a.operator];case"ConditionalExpression":return kgr(e,t,r,s);case"VariableDeclaration":{let p=e.map(r,"declarations"),f=e.parent,m=f.type==="ForStatement"||f.type==="ForInStatement"||f.type==="ForOfStatement",y=a.declarations.some(v=>v.init),B;return p.length===1&&!Gu(a.declarations[0])?B=p[0]:p.length>0&&(B=dl(p[0])),g=[t9(e),a.kind,B?[" ",B]:"",dl(p.slice(1).map(v=>[",",y&&!m?ol:Zg,v]))],m&&f.body!==a||g.push(o),ta(g)}case"WithStatement":return ta(["with (",r("object"),")",Cse(a.body,r("body"))]);case"IfStatement":{let p=Cse(a.consequent,r("consequent")),f=ta(["if (",ta([dl([el,r("test")]),el]),")",p]);if(g.push(f),a.alternate){let m=Gu(a.consequent,$g.Trailing|$g.Line)||Iei(a),y=a.consequent.type==="BlockStatement"&&!m;g.push(y?" ":ol),Gu(a,$g.Dangling)&&g.push(t2(e,t),m?ol:" "),g.push("else",ta(Cse(a.alternate,r("alternate"),a.alternate.type==="IfStatement")))}return g}case"ForStatement":{let p=Cse(a.body,r("body")),f=t2(e,t),m=f?[f,el]:"";return!a.init&&!a.test&&!a.update?[m,ta(["for (;;)",p])]:[m,ta(["for (",ta([dl([el,r("init"),";",Zg,r("test"),";",Zg,r("update")]),el]),")",p])]}case"WhileStatement":return ta(["while (",ta([dl([el,r("test")]),el]),")",Cse(a.body,r("body"))]);case"ForInStatement":return ta(["for (",r("left")," in ",r("right"),")",Cse(a.body,r("body"))]);case"ForOfStatement":return ta(["for",a.await?" await":""," (",r("left")," of ",r("right"),")",Cse(a.body,r("body"))]);case"DoWhileStatement":{let p=Cse(a.body,r("body"));return g=[ta(["do",p])],a.body.type==="BlockStatement"?g.push(" "):g.push(ol),g.push("while (",ta([dl([el,r("test")]),el]),")",o),g}case"DoExpression":return[a.async?"async ":"","do ",r("body")];case"BreakStatement":case"ContinueStatement":return g.push(a.type==="BreakStatement"?"break":"continue"),a.label&&g.push(" ",r("label")),g.push(o),g;case"LabeledStatement":return a.body.type==="EmptyStatement"?[r("label"),":;"]:[r("label"),": ",r("body")];case"TryStatement":return["try ",r("block"),a.handler?[" ",r("handler")]:"",a.finalizer?[" finally ",r("finalizer")]:""];case"CatchClause":if(a.param){let p=Gu(a.param,m=>!yQ(m)||m.leading&&zW(t.originalText,ah(m))||m.trailing&&zW(t.originalText,dB(m),{backwards:!0})),f=r("param");return["catch ",p?["(",dl([el,f]),el,") "]:["(",f,") "],r("body")]}return["catch ",r("body")];case"SwitchStatement":return[ta(["switch (",dl([el,r("discriminant")]),el,")"])," {",a.cases.length>0?dl([ol,oh(ol,e.map(({node:p,isLast:f})=>[r(),!f&&Gz(p,t)?ol:""],"cases"))]):"",ol,"}"];case"SwitchCase":{a.test?g.push("case ",r("test"),":"):g.push("default:"),Gu(a,$g.Dangling)&&g.push(" ",t2(e,t));let p=a.consequent.filter(f=>f.type!=="EmptyStatement");if(p.length>0){let f=agr(e,t,r,"consequent");g.push(p.length===1&&p[0].type==="BlockStatement"?[" ",f]:dl([ol,f]))}return g}case"DebuggerStatement":return["debugger",o];case"ClassDeclaration":case"ClassExpression":return Wti(e,t,r);case"ClassMethod":case"ClassPrivateMethod":case"MethodDefinition":return Qti(e,t,r);case"ClassProperty":case"PropertyDefinition":case"ClassPrivateProperty":case"ClassAccessorProperty":case"AccessorProperty":return Mti(e,t,r);case"TemplateElement":return Upe(a.value.raw);case"TemplateLiteral":return Oei(e,r,t);case"TaggedTemplateExpression":return Ezo(e,r);case"PrivateIdentifier":return["#",a.name];case"PrivateName":return["#",r("id")];case"TopicReference":return"%";case"ArgumentPlaceholder":return"?";case"ModuleExpression":return["module ",r("body")];case"InterpreterDirective":default:throw new Hve(a,"ESTree")}}function rri(e,t,r){let{parent:s,node:a,key:o}=e,g=[r("expression")];switch(a.type){case"AsConstExpression":g.push(" as const");break;case"AsExpression":case"TSAsExpression":g.push(" as ",r("typeAnnotation"));break;case"SatisfiesExpression":case"TSSatisfiesExpression":g.push(" satisfies ",r("typeAnnotation"));break}return o==="callee"&&Qh(s)||o==="object"&&iv(s)?ta([dl([el,...g]),el]):g}function Qea(e,t,r){let{node:s}=e,a=[t9(e),"component"];s.id&&a.push(" ",r("id")),a.push(r("typeParameters"));let o=Mea(e,r,t);return s.rendersType?a.push(ta([o," ",r("rendersType")])):a.push(ta([o])),s.body&&a.push(" ",r("body")),t.semi&&s.type==="DeclareComponent"&&a.push(";"),a}function Mea(e,t,r){let{node:s}=e,a=s.params;if(s.rest&&(a=[...a,s.rest]),a.length===0)return["(",t2(e,r,{filter:g=>dY(r.originalText,ah(g))===")"}),")"];let o=[];return Yea(e,(g,p)=>{let f=p===a.length-1;f&&s.rest&&o.push("..."),o.push(t()),!f&&(o.push(","),Gz(a[p],r)?o.push(ol,ol):o.push(Zg))}),["(",dl([el,...o]),zI(kz(r,"all")&&!Hea(s,a)?",":""),el,")"]}function Hea(e,t){var r;return e.rest||((r=N0(!1,t,-1))==null?void 0:r.type)==="RestElement"}function Yea(e,t){let{node:r}=e,s=0,a=o=>t(o,s++);e.each(a,"params"),r.rest&&e.call(a,"rest")}function Xea(e,t,r){let{node:s}=e;return s.shorthand?r("local"):[r("name")," as ",r("local")]}function Jea(e,t,r){let{node:s}=e,a=[];return s.name&&a.push(r("name"),s.optional?"?: ":": "),a.push(r("typeAnnotation")),a}function nri(e,t,r){return cCt(e,r,t)}function iri(e,t){let{node:r}=e,s=t("id");r.computed&&(s=["[",s,"]"]);let a="";return r.initializer&&(a=t("initializer")),r.init&&(a=t("init")),a?[s," = ",a]:s}function Uea(e,t,r){let{node:s}=e,a;if(s.type==="EnumSymbolBody"||s.explicitType)switch(s.type){case"EnumBooleanBody":a="boolean";break;case"EnumNumberBody":a="number";break;case"EnumBigIntBody":a="bigint";break;case"EnumStringBody":a="string";break;case"EnumSymbolBody":a="symbol";break}return[a?`of ${a} `:"",nri(e,t,r)]}function sri(e,t,r){let{node:s}=e;return[t9(e),s.const?"const ":"","enum ",t("id")," ",s.type==="TSEnumDeclaration"?nri(e,t,r):t("body")]}function Kea(e,t,r){let{node:s}=e,a=["hook"];s.id&&a.push(" ",r("id"));let o=ife(e,r,t,!1,!0),g=aCt(e,r),p=Yve(s,g);return a.push(ta([p?ta(o):o,g]),s.body?" ":"",r("body")),a}function jea(e,t,r){let{node:s}=e,a=[t9(e),"hook"];return s.id&&a.push(" ",r("id")),t.semi&&a.push(";"),a}function z$n(e){var t;let{node:r}=e;return r.type==="HookTypeAnnotation"&&((t=e.getParentNode(2))==null?void 0:t.type)==="DeclareHook"}function zea(e,t,r){let{node:s}=e,a=[];a.push(z$n(e)?"":"hook ");let o=ife(e,r,t,!1,!0),g=[];return g.push(z$n(e)?": ":" => ",r("returnType")),Yve(s,g)&&(o=ta(o)),a.push(o,g),ta(a)}function ori(e,t,r){let{node:s}=e,a=[t9(e),"interface"],o=[],g=[];s.type!=="InterfaceTypeAnnotation"&&o.push(" ",r("id"),r("typeParameters"));let p=s.typeParameters&&!Gu(s.typeParameters,$g.Trailing|$g.Line);return h_(s.extends)&&g.push(p?zI(" ",Zg,{groupId:Dgr(s.typeParameters)}):Zg,"extends ",(s.extends.length===1?ojo:dl)(oh([",",Zg],e.map(r,"extends")))),Gu(s.id,$g.Trailing)||h_(s.extends)?p?a.push(ta([...o,dl(g)])):a.push(ta(dl([...o,...g]))):a.push(...o,...g),a.push(" ",r("body")),ta(a)}function qea(e,t,r){let{node:s}=e;if(aei(s))return s.type.slice(0,-14).toLowerCase();let a=t.semi?";":"";switch(s.type){case"ComponentDeclaration":case"DeclareComponent":case"ComponentTypeAnnotation":return Qea(e,t,r);case"ComponentParameter":return Xea(e,t,r);case"ComponentTypeParameter":return Jea(e,t,r);case"HookDeclaration":return Kea(e,t,r);case"DeclareHook":return jea(e,t,r);case"HookTypeAnnotation":return zea(e,t,r);case"DeclareClass":return Wti(e,t,r);case"DeclareFunction":return[t9(e),"function ",r("id"),r("predicate"),a];case"DeclareModule":return["declare module ",r("id")," ",r("body")];case"DeclareModuleExports":return["declare module.exports",YD(e,r),a];case"DeclareNamespace":return["declare namespace ",r("id")," ",r("body")];case"DeclareVariable":return[t9(e),s.kind??"var"," ",r("id"),a];case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":return jti(e,t,r);case"DeclareOpaqueType":case"OpaqueType":return k$o(e,t,r);case"DeclareTypeAlias":case"TypeAlias":return uti(e,t,r);case"IntersectionTypeAnnotation":return gti(e,t,r);case"UnionTypeAnnotation":return Ati(e,t,r);case"ConditionalTypeAnnotation":return kgr(e,t,r);case"InferTypeAnnotation":return fti(e,t,r);case"FunctionTypeAnnotation":return dti(e,t,r);case"TupleTypeAnnotation":return Ngr(e,t,r);case"TupleTypeLabeledElement":return Cti(e,t,r);case"TupleTypeSpreadElement":return Iti(e,t,r);case"GenericTypeAnnotation":return[r("id"),R5e(e,t,r,"typeParameters")];case"IndexedAccessType":case"OptionalIndexedAccessType":return pti(e,t,r);case"TypeAnnotation":return hti(e,t,r);case"TypeParameter":return Lti(e,t,r);case"TypeofTypeAnnotation":return yti(e,r);case"ExistsTypeAnnotation":return"*";case"ArrayTypeAnnotation":return _ti(r);case"DeclareEnum":case"EnumDeclaration":return sri(e,r,t);case"EnumBooleanBody":case"EnumNumberBody":case"EnumBigIntBody":case"EnumStringBody":case"EnumSymbolBody":return Uea(e,r,t);case"EnumBooleanMember":case"EnumNumberMember":case"EnumBigIntMember":case"EnumStringMember":case"EnumDefaultedMember":return iri(e,r);case"FunctionTypeParam":{let o=s.name?r("name"):e.parent.this===s?"this":"";return[o,JF(e),o?": ":"",r("typeAnnotation")]}case"DeclareInterface":case"InterfaceDeclaration":case"InterfaceTypeAnnotation":return ori(e,t,r);case"ClassImplements":case"InterfaceExtends":return[r("id"),r("typeParameters")];case"NullableTypeAnnotation":return["?",r("typeAnnotation")];case"Variance":{let{kind:o}=s;return Agr.ok(o==="plus"||o==="minus"),o==="plus"?"+":"-"}case"KeyofTypeAnnotation":return["keyof ",r("argument")];case"ObjectTypeCallProperty":return[s.static?"static ":"",r("value")];case"ObjectTypeMappedTypeProperty":return aea(e,t,r);case"ObjectTypeIndexer":return[s.static?"static ":"",s.variance?r("variance"):"","[",r("id"),s.id?": ":"",r("key"),"]: ",r("value")];case"ObjectTypeProperty":{let o="";return s.proto?o="proto ":s.static&&(o="static "),[o,s.kind!=="init"?s.kind+" ":"",s.variance?r("variance"):"",L5e(e,t,r),JF(e),rCt(s)?"":": ",r("value")]}case"ObjectTypeAnnotation":return cCt(e,t,r);case"ObjectTypeInternalSlot":return[s.static?"static ":"","[[",r("id"),"]]",JF(e),s.method?"":": ",r("value")];case"ObjectTypeSpreadProperty":return vti(e,r);case"QualifiedTypeofIdentifier":case"QualifiedTypeIdentifier":return[r("qualification"),".",r("id")];case"NullLiteralTypeAnnotation":return"null";case"BooleanLiteralTypeAnnotation":return String(s.value);case"StringLiteralTypeAnnotation":return Upe(Lve(mQ(s),t));case"NumberLiteralTypeAnnotation":return Wve(s.raw??s.extra.raw);case"BigIntLiteralTypeAnnotation":return cgr(s.raw??s.extra.raw);case"TypeCastExpression":return["(",r("expression"),YD(e,r),")"];case"TypePredicate":return bti(e,r);case"TypeOperator":return[s.operator," ",r("typeAnnotation")];case"TypeParameterDeclaration":case"TypeParameterInstantiation":return R5e(e,t,r,"params");case"InferredPredicate":case"DeclaredPredicate":return[e.key==="predicate"&&e.parent.type!=="DeclareFunction"&&!e.parent.returnType?": ":" ","%checks",...s.type==="DeclaredPredicate"?["(",r("value"),")"]:[]];case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":return rri(e,t,r)}}function $ea(e,t,r){var s;let{node:a}=e;if(!a.type.startsWith("TS"))return;if(cei(a))return a.type.slice(2,-7).toLowerCase();let o=t.semi?";":"",g=[];switch(a.type){case"TSThisType":return"this";case"TSTypeAssertion":{let p=!(XD(a.expression)||AY(a.expression)),f=ta(["<",dl([el,r("typeAnnotation")]),el,">"]),m=[zI("("),dl([el,r("expression")]),el,zI(")")];return p?Jpe([[f,r("expression")],[f,ta(m,{shouldBreak:!0})],[f,r("expression")]]):ta([f,r("expression")])}case"TSDeclareFunction":return Nti(e,r,t);case"TSExportAssignment":return["export = ",r("expression"),o];case"TSModuleBlock":return Gti(e,t,r);case"TSInterfaceBody":case"TSTypeLiteral":return cCt(e,t,r);case"TSTypeAliasDeclaration":return uti(e,t,r);case"TSQualifiedName":return[r("left"),".",r("right")];case"TSAbstractMethodDefinition":case"TSDeclareMethod":return Qti(e,t,r);case"TSAbstractAccessorProperty":case"TSAbstractPropertyDefinition":return Mti(e,t,r);case"TSInterfaceHeritage":case"TSClassImplements":case"TSExpressionWithTypeArguments":case"TSInstantiationExpression":return[r("expression"),r(a.typeArguments?"typeArguments":"typeParameters")];case"TSTemplateLiteralType":return Oei(e,r,t);case"TSNamedTupleMember":return Cti(e,t,r);case"TSRestType":return Iti(e,t,r);case"TSOptionalType":return[r("typeAnnotation"),"?"];case"TSInterfaceDeclaration":return ori(e,t,r);case"TSTypeParameterDeclaration":case"TSTypeParameterInstantiation":return R5e(e,t,r,"params");case"TSTypeParameter":return Lti(e,t,r);case"TSAsExpression":case"TSSatisfiesExpression":return rri(e,t,r);case"TSArrayType":return _ti(r);case"TSPropertySignature":return[a.readonly?"readonly ":"",L5e(e,t,r),JF(e),YD(e,r)];case"TSParameterProperty":return[qIt(a),a.static?"static ":"",a.override?"override ":"",a.readonly?"readonly ":"",r("parameter")];case"TSTypeQuery":return yti(e,r);case"TSIndexSignature":{let p=a.parameters.length>1?zI(kz(t)?",":""):"",f=ta([dl([el,oh([", ",el],e.map(r,"parameters"))]),p,el]),m=e.parent.type==="ClassBody"&&e.key==="body";return[m&&a.static?"static ":"",a.readonly?"readonly ":"","[",a.parameters?f:"","]",YD(e,r),m?o:""]}case"TSTypePredicate":return bti(e,r);case"TSNonNullExpression":return[r("expression"),"!"];case"TSImportType":return["import(",r("argument"),")",a.qualifier?[".",r("qualifier")]:"",R5e(e,t,r,a.typeArguments?"typeArguments":"typeParameters")];case"TSLiteralType":return r("literal");case"TSIndexedAccessType":return pti(e,t,r);case"TSTypeOperator":return[a.operator," ",r("typeAnnotation")];case"TSMappedType":return cea(e,t,r);case"TSMethodSignature":{let p=a.kind&&a.kind!=="method"?`${a.kind} `:"";g.push(qIt(a),p,a.computed?"[":"",r("key"),a.computed?"]":"",JF(e));let f=ife(e,r,t,!1,!0),m=a.returnType?"returnType":"typeAnnotation",y=a[m],B=y?YD(e,r,m):"",v=Yve(a,B);return g.push(v?ta(f):f),y&&g.push(ta(B)),ta(g)}case"TSNamespaceExportDeclaration":return["export as namespace ",r("id"),t.semi?";":""];case"TSEnumDeclaration":return sri(e,r,t);case"TSEnumMember":return iri(e,r);case"TSImportEqualsDeclaration":return[a.isExport?"export ":"","import ",zti(a,!1),r("id")," = ",r("moduleReference"),t.semi?";":""];case"TSExternalModuleReference":return["require(",r("expression"),")"];case"TSModuleDeclaration":{let{parent:p}=e,f=p.type==="TSModuleDeclaration",m=((s=a.body)==null?void 0:s.type)==="TSModuleDeclaration";return f?g.push("."):(g.push(t9(e)),a.kind!=="global"&&g.push(a.kind," ")),g.push(r("id")),m?g.push(r("body")):a.body?g.push(" ",ta(r("body"))):g.push(o),g}case"TSConditionalType":return kgr(e,t,r);case"TSInferType":return fti(e,t,r);case"TSIntersectionType":return gti(e,t,r);case"TSUnionType":return Ati(e,t,r);case"TSFunctionType":case"TSCallSignatureDeclaration":case"TSConstructorType":case"TSConstructSignatureDeclaration":return dti(e,t,r);case"TSTupleType":return Ngr(e,t,r);case"TSTypeReference":return[r("typeName"),R5e(e,t,r,a.typeArguments?"typeArguments":"typeParameters")];case"TSTypeAnnotation":return hti(e,t,r);case"TSEmptyBodyFunctionExpression":return Rgr(e,t,r);case"TSJSDocAllType":return"*";case"TSJSDocUnknownType":return"?";case"TSJSDocNullableType":return J$n(e,r,"?");case"TSJSDocNonNullableType":return J$n(e,r,"!");case"TSParenthesizedType":default:throw new Hve(a,"TypeScript")}}function eta(e,t,r,s){if(jei(e))return fqo(e,t);for(let a of[qqo,Yqo,qea,$ea,Oea]){let o=a(e,t,r,s);if(o!==void 0)return o}}var tta=X_(["ClassMethod","ClassPrivateMethod","ClassProperty","ClassAccessorProperty","AccessorProperty","TSAbstractAccessorProperty","PropertyDefinition","TSAbstractPropertyDefinition","ClassPrivateProperty","MethodDefinition","TSAbstractMethodDefinition","TSDeclareMethod"]);function rta(e,t,r,s){var a;e.isRoot&&((a=t.__onHtmlBindingRoot)==null||a.call(t,e.node,t));let o=eta(e,t,r,s);if(!o)return"";let{node:g}=e;if(tta(g))return o;let p=h_(g.decorators),f=r$o(e,t,r),m=g.type==="ClassExpression";if(p&&!m)return jur(o,v=>ta([f,v]));let y=nfe(e,t),B=hea(e,t);return!f&&!y&&!B?o:jur(o,v=>[B?";":"",y?"(":"",y&&m&&p?[dl([Zg,f,v]),Zg]:[f,v],y?")":""])}var nta=rta,ita={avoidAstMutation:!0},sta=[{linguistLanguageId:174,name:"JSON.stringify",type:"data",color:"#292929",tmScope:"source.json",aceMode:"json",codemirrorMode:"javascript",codemirrorMimeType:"application/json",aliases:["geojson","jsonl","topojson"],extensions:[".importmap"],filenames:["package.json","package-lock.json","composer.json"],parsers:["json-stringify"],vscodeLanguageIds:["json"]},{linguistLanguageId:174,name:"JSON",type:"data",color:"#292929",tmScope:"source.json",aceMode:"json",codemirrorMode:"javascript",codemirrorMimeType:"application/json",aliases:["geojson","jsonl","topojson"],extensions:[".json",".4DForm",".4DProject",".avsc",".geojson",".gltf",".har",".ice",".JSON-tmLanguage",".mcmeta",".tfstate",".tfstate.backup",".topojson",".webapp",".webmanifest",".yy",".yyp"],filenames:[".all-contributorsrc",".arcconfig",".auto-changelog",".c8rc",".htmlhintrc",".imgbotconfig",".nycrc",".tern-config",".tern-project",".watchmanconfig","Pipfile.lock","composer.lock","flake.lock","mcmod.info",".babelrc",".jscsrc",".jshintrc",".jslintrc",".swcrc"],parsers:["json"],vscodeLanguageIds:["json"]},{linguistLanguageId:423,name:"JSON with Comments",type:"data",color:"#292929",group:"JSON",tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"text/javascript",aliases:["jsonc"],extensions:[".jsonc",".code-snippets",".code-workspace",".sublime-build",".sublime-commands",".sublime-completions",".sublime-keymap",".sublime-macro",".sublime-menu",".sublime-mousemap",".sublime-project",".sublime-settings",".sublime-theme",".sublime-workspace",".sublime_metrics",".sublime_session"],filenames:[],parsers:["jsonc"],vscodeLanguageIds:["jsonc"]},{linguistLanguageId:175,name:"JSON5",type:"data",color:"#267CB9",extensions:[".json5"],tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"application/json",parsers:["json5"],vscodeLanguageIds:["json5"]}],ari={};$It(ari,{getVisitorKeys:()=>lta,massageAstNode:()=>cri,print:()=>uta});var ota={JsonRoot:["node"],ArrayExpression:["elements"],ObjectExpression:["properties"],ObjectProperty:["key","value"],UnaryExpression:["argument"],NullLiteral:[],BooleanLiteral:[],StringLiteral:[],NumericLiteral:[],Identifier:[],TemplateLiteral:["quasis"],TemplateElement:[]},ata=ota,cta=sei(ata),lta=cta;function uta(e,t,r){let{node:s}=e;switch(s.type){case"JsonRoot":return[r("node"),ol];case"ArrayExpression":{if(s.elements.length===0)return"[]";let a=e.map(()=>e.node===null?"null":r(),"elements");return["[",dl([ol,oh([",",ol],a)]),ol,"]"]}case"ObjectExpression":return s.properties.length===0?"{}":["{",dl([ol,oh([",",ol],e.map(r,"properties"))]),ol,"}"];case"ObjectProperty":return[r("key"),": ",r("value")];case"UnaryExpression":return[s.operator==="+"?"":s.operator,r("argument")];case"NullLiteral":return"null";case"BooleanLiteral":return s.value?"true":"false";case"StringLiteral":return JSON.stringify(s.value);case"NumericLiteral":return q$n(e)?JSON.stringify(String(s.value)):JSON.stringify(s.value);case"Identifier":return q$n(e)?JSON.stringify(s.name):s.name;case"TemplateLiteral":return r(["quasis",0]);case"TemplateElement":return JSON.stringify(s.value.cooked);default:throw new Hve(s,"JSON")}}function q$n(e){return e.key==="key"&&e.parent.type==="ObjectProperty"}var gta=new Set(["start","end","extra","loc","comments","leadingComments","trailingComments","innerComments","errors","range","tokens"]);function cri(e,t){let{type:r}=e;if(r==="ObjectProperty"){let{key:s}=e;s.type==="Identifier"?t.key={type:"StringLiteral",value:s.name}:s.type==="NumericLiteral"&&(t.key={type:"StringLiteral",value:String(s.value)});return}if(r==="UnaryExpression"&&e.operator==="+")return t.argument;if(r==="ArrayExpression"){for(let[s,a]of e.elements.entries())a===null&&t.elements.splice(s,0,{type:"NullLiteral"});return}if(r==="TemplateLiteral")return{type:"StringLiteral",value:e.quasis[0].value.cooked}}cri.ignoredProperties=gta;var S5e={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},mse="JavaScript",Ata={arrowParens:{category:mse,type:"choice",default:"always",description:"Include parentheses around a sole arrow function parameter.",choices:[{value:"always",description:"Always include parens. Example: `(x) => x`"},{value:"avoid",description:"Omit parens when possible. Example: `x => x`"}]},bracketSameLine:S5e.bracketSameLine,objectWrap:S5e.objectWrap,bracketSpacing:S5e.bracketSpacing,jsxBracketSameLine:{category:mse,type:"boolean",description:"Put > on the last line instead of at a new line.",deprecated:"2.4.0"},semi:{category:mse,type:"boolean",default:!0,description:"Print semicolons.",oppositeDescription:"Do not print semicolons, except at the beginning of lines which may need them."},experimentalOperatorPosition:{category:mse,type:"choice",default:"end",description:"Where to print operators when binary expressions wrap lines.",choices:[{value:"start",description:"Print operators at the start of new lines."},{value:"end",description:"Print operators at the end of previous lines."}]},experimentalTernaries:{category:mse,type:"boolean",default:!1,description:"Use curious ternaries, with the question mark after the condition.",oppositeDescription:"Default behavior of ternaries; keep question marks on the same line as the consequent."},singleQuote:S5e.singleQuote,jsxSingleQuote:{category:mse,type:"boolean",default:!1,description:"Use single quotes in JSX."},quoteProps:{category:mse,type:"choice",default:"as-needed",description:"Change when properties in objects are quoted.",choices:[{value:"as-needed",description:"Only add quotes around object properties where required."},{value:"consistent",description:"If at least one property in an object requires quotes, quote all properties."},{value:"preserve",description:"Respect the input use of quotes in object properties."}]},trailingComma:{category:mse,type:"choice",default:"all",description:"Print trailing commas wherever possible when multi-line.",choices:[{value:"all",description:"Trailing commas wherever possible (including function arguments)."},{value:"es5",description:"Trailing commas where valid in ES5 (objects, arrays, etc.)"},{value:"none",description:"No trailing commas."}]},singleAttributePerLine:S5e.singleAttributePerLine},lri=Ata,uri={estree:rei,"estree-json":ari},gri=[...a7o,...sta],dta=tei;var Ogr={};zf(Ogr,{default:()=>Wra,languages:()=>Tri,options:()=>Nri,parsers:()=>Pgr,printers:()=>Wri});var pta=Object.defineProperty,Iri=(e,t)=>{for(var r in t)pta(e,r,{get:t[r],enumerable:!0})},Cri={};Iri(Cri,{languages:()=>Tri,options:()=>Nri,parsers:()=>Pgr,printers:()=>Wri});var fta=(e,t,r,s)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,s):r.global?t.replace(r,s):t.split(r).join(s)},Ggr=fta,Ita="indent",Cta="group",mta="if-break",Wgr="line",hta="break-parent",mri=()=>{},Q5e=mri,hri=mri;function n9(e){return Q5e(e),{type:Ita,contents:e}}function EQ(e,t={}){return Q5e(e),hri(t.expandedStates,!0),{type:Cta,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function UU(e,t="",r={}){return Q5e(e),t!==""&&Q5e(t),{type:mta,breakContents:e,flatContents:t,groupId:r.groupId}}var _ta={type:hta},yta={type:Wgr,hard:!0},Jve={type:Wgr},sv={type:Wgr,soft:!0},ww=[yta,_ta];function UD(e,t){Q5e(e),hri(t);let r=[];for(let s=0;s{let a=!!(s!=null&&s.backwards);if(r===!1)return!1;let{length:o}=t,g=r;for(;g>=0&&g0}var pri=Cta,mta=class extends Error{name="UnexpectedNodeError";constructor(e,t,r="type"){super(`Unexpected ${t} node ${r}: ${JSON.stringify(e[r])}.`),this.node=e}},hta=mta,LQe=null;function WQe(e){if(LQe!==null&&typeof LQe.property){let t=LQe;return LQe=WQe.prototype=null,t}return LQe=WQe.prototype=e??Object.create(null),new WQe}var _ta=10;for(let e=0;e<=_ta;e++)WQe();function yta(e){return WQe(e)}function bta(e,t="type"){yta(e);function r(s){let a=s[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:s});return o}return r}var Eta=bta,Bta=class{constructor(e,t,r){this.start=e.start,this.end=t.end,this.startToken=e,this.endToken=t,this.source=r}get[Symbol.toStringTag](){return"Location"}toJSON(){return{start:this.start,end:this.end}}},fri=class{constructor(e,t,r,s,a,o){this.kind=e,this.start=t,this.end=r,this.line=s,this.column=a,this.value=o,this.prev=null,this.next=null}get[Symbol.toStringTag](){return"Token"}toJSON(){return{kind:this.kind,value:this.value,line:this.line,column:this.column}}},Iri={Name:[],Document:["definitions"],OperationDefinition:["name","variableDefinitions","directives","selectionSet"],VariableDefinition:["variable","type","defaultValue","directives"],Variable:["name"],SelectionSet:["selections"],Field:["alias","name","arguments","directives","selectionSet"],Argument:["name","value"],FragmentSpread:["name","directives"],InlineFragment:["typeCondition","directives","selectionSet"],FragmentDefinition:["name","variableDefinitions","typeCondition","directives","selectionSet"],IntValue:[],FloatValue:[],StringValue:[],BooleanValue:[],NullValue:[],EnumValue:[],ListValue:["values"],ObjectValue:["fields"],ObjectField:["name","value"],Directive:["name","arguments"],NamedType:["name"],ListType:["type"],NonNullType:["type"],SchemaDefinition:["description","directives","operationTypes"],OperationTypeDefinition:["type"],ScalarTypeDefinition:["description","name","directives"],ObjectTypeDefinition:["description","name","interfaces","directives","fields"],FieldDefinition:["description","name","arguments","type","directives"],InputValueDefinition:["description","name","type","defaultValue","directives"],InterfaceTypeDefinition:["description","name","interfaces","directives","fields"],UnionTypeDefinition:["description","name","directives","types"],EnumTypeDefinition:["description","name","directives","values"],EnumValueDefinition:["description","name","directives"],InputObjectTypeDefinition:["description","name","directives","fields"],DirectiveDefinition:["description","name","arguments","locations"],SchemaExtension:["directives","operationTypes"],ScalarTypeExtension:["name","directives"],ObjectTypeExtension:["name","interfaces","directives","fields"],InterfaceTypeExtension:["name","interfaces","directives","fields"],UnionTypeExtension:["name","directives","types"],EnumTypeExtension:["name","directives","values"],InputObjectTypeExtension:["name","directives","fields"]},ohl=new Set(Object.keys(Iri)),Qve;(function(e){e.QUERY="query",e.MUTATION="mutation",e.SUBSCRIPTION="subscription"})(Qve||(Qve={}));var vta=Eta(Iri,"kind"),Sta=vta;function Cri(e){return e.loc.start}function mri(e){return e.loc.end}function wta(e){return/^\s*#[^\S\n]*@(?:format|prettier)\s*(?:\n|$)/u.test(e)}function Tta(e){return`# @format +`||a==="\r"||a==="\u2028"||a==="\u2029")return t+1}return t}var yri=Bta;function vta(e,t,r={}){let s=_ri(e,r.backwards?t-1:t,r),a=yri(e,s,r);return s!==a}var Sta=vta;function wta(e,t){if(t===!1)return!1;if(e.charAt(t)==="/"&&e.charAt(t+1)==="*"){for(let r=t+2;r0}var bri=kta,Gta=class extends Error{name="UnexpectedNodeError";constructor(e,t,r="type"){super(`Unexpected ${t} node ${r}: ${JSON.stringify(e[r])}.`),this.node=e}},Fta=Gta,W5e=null;function O5e(e){if(W5e!==null&&typeof W5e.property){let t=W5e;return W5e=O5e.prototype=null,t}return W5e=O5e.prototype=e??Object.create(null),new O5e}var Zta=10;for(let e=0;e<=Zta;e++)O5e();function Lta(e){return O5e(e)}function Vta(e,t="type"){Lta(e);function r(s){let a=s[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:s});return o}return r}var Wta=Vta,Pta=class{constructor(e,t,r){this.start=e.start,this.end=t.end,this.startToken=e,this.endToken=t,this.source=r}get[Symbol.toStringTag](){return"Location"}toJSON(){return{start:this.start,end:this.end}}},Eri=class{constructor(e,t,r,s,a,o){this.kind=e,this.start=t,this.end=r,this.line=s,this.column=a,this.value=o,this.prev=null,this.next=null}get[Symbol.toStringTag](){return"Token"}toJSON(){return{kind:this.kind,value:this.value,line:this.line,column:this.column}}},Bri={Name:[],Document:["definitions"],OperationDefinition:["name","variableDefinitions","directives","selectionSet"],VariableDefinition:["variable","type","defaultValue","directives"],Variable:["name"],SelectionSet:["selections"],Field:["alias","name","arguments","directives","selectionSet"],Argument:["name","value"],FragmentSpread:["name","directives"],InlineFragment:["typeCondition","directives","selectionSet"],FragmentDefinition:["name","variableDefinitions","typeCondition","directives","selectionSet"],IntValue:[],FloatValue:[],StringValue:[],BooleanValue:[],NullValue:[],EnumValue:[],ListValue:["values"],ObjectValue:["fields"],ObjectField:["name","value"],Directive:["name","arguments"],NamedType:["name"],ListType:["type"],NonNullType:["type"],SchemaDefinition:["description","directives","operationTypes"],OperationTypeDefinition:["type"],ScalarTypeDefinition:["description","name","directives"],ObjectTypeDefinition:["description","name","interfaces","directives","fields"],FieldDefinition:["description","name","arguments","type","directives"],InputValueDefinition:["description","name","type","defaultValue","directives"],InterfaceTypeDefinition:["description","name","interfaces","directives","fields"],UnionTypeDefinition:["description","name","directives","types"],EnumTypeDefinition:["description","name","directives","values"],EnumValueDefinition:["description","name","directives"],InputObjectTypeDefinition:["description","name","directives","fields"],DirectiveDefinition:["description","name","arguments","locations"],SchemaExtension:["directives","operationTypes"],ScalarTypeExtension:["name","directives"],ObjectTypeExtension:["name","interfaces","directives","fields"],InterfaceTypeExtension:["name","interfaces","directives","fields"],UnionTypeExtension:["name","directives","types"],EnumTypeExtension:["name","directives","values"],InputObjectTypeExtension:["name","directives","fields"]},Thl=new Set(Object.keys(Bri)),Xve;(function(e){e.QUERY="query",e.MUTATION="mutation",e.SUBSCRIPTION="subscription"})(Xve||(Xve={}));var Ota=Wta(Bri,"kind"),Qta=Ota;function vri(e){return e.loc.start}function Sri(e){return e.loc.end}function Mta(e){return/^\s*#[^\S\n]*@(?:format|prettier)\s*(?:\n|$)/u.test(e)}function Hta(e){return`# @format -`+e}function Nta(e,t,r){let{node:s}=e;if(!s.description)return"";let a=[r("description")];return s.kind==="InputValueDefinition"&&!s.description.block?a.push(Yve):a.push(Sw),a}var Lz=Nta;function Rta(e,t,r){let{node:s}=e;switch(s.kind){case"Document":return[...YD(Sw,WU(e,t,r,"definitions")),Sw];case"OperationDefinition":{let a=t.originalText[Cri(s)]!=="{",o=!!s.name;return[a?s.operation:"",a&&o?[" ",r("name")]:"",a&&!o&&pri(s.variableDefinitions)?" ":"",iri(e,r),HF(e,r,s),!a&&!o?"":" ",r("selectionSet")]}case"FragmentDefinition":return["fragment ",r("name"),iri(e,r)," on ",r("typeCondition"),HF(e,r,s)," ",r("selectionSet")];case"SelectionSet":return["{",r9([Sw,YD(Sw,WU(e,t,r,"selections"))]),Sw,"}"];case"Field":return yM([s.alias?[r("alias"),": "]:"",r("name"),s.arguments.length>0?yM(["(",r9([iv,YD([PU("",", "),iv],WU(e,t,r,"arguments"))]),iv,")"]):"",HF(e,r,s),s.selectionSet?" ":"",r("selectionSet")]);case"Name":return s.value;case"StringValue":if(s.block){let a=Ngr(!1,s.value,'"""',String.raw`\"""`).split(` -`);return a.length===1&&(a[0]=a[0].trim()),a.every(o=>o==="")&&(a.length=0),YD(Sw,['"""',...a,'"""'])}return['"',Ngr(!1,Ngr(!1,s.value,/["\\]/gu,String.raw`\$&`),` -`,String.raw`\n`),'"'];case"IntValue":case"FloatValue":case"EnumValue":return s.value;case"BooleanValue":return s.value?"true":"false";case"NullValue":return"null";case"Variable":return["$",r("name")];case"ListValue":return yM(["[",r9([iv,YD([PU("",", "),iv],e.map(r,"values"))]),iv,"]"]);case"ObjectValue":{let a=t.bracketSpacing&&s.fields.length>0?" ":"";return yM(["{",a,r9([iv,YD([PU("",", "),iv],e.map(r,"fields"))]),iv,PU("",a),"}"])}case"ObjectField":case"Argument":return[r("name"),": ",r("value")];case"Directive":return["@",r("name"),s.arguments.length>0?yM(["(",r9([iv,YD([PU("",", "),iv],WU(e,t,r,"arguments"))]),iv,")"]):""];case"NamedType":return r("name");case"VariableDefinition":return[r("variable"),": ",r("type"),s.defaultValue?[" = ",r("defaultValue")]:"",HF(e,r,s)];case"ObjectTypeExtension":case"ObjectTypeDefinition":case"InputObjectTypeExtension":case"InputObjectTypeDefinition":case"InterfaceTypeExtension":case"InterfaceTypeDefinition":{let{kind:a}=s,o=[];return a.endsWith("TypeDefinition")?o.push(Lz(e,t,r)):o.push("extend "),a.startsWith("ObjectType")?o.push("type"):a.startsWith("InputObjectType")?o.push("input"):o.push("interface"),o.push(" ",r("name")),!a.startsWith("InputObjectType")&&s.interfaces.length>0&&o.push(" implements ",...kta(e,t,r)),o.push(HF(e,r,s)),s.fields.length>0&&o.push([" {",r9([Sw,YD(Sw,WU(e,t,r,"fields"))]),Sw,"}"]),o}case"FieldDefinition":return[Lz(e,t,r),r("name"),s.arguments.length>0?yM(["(",r9([iv,YD([PU("",", "),iv],WU(e,t,r,"arguments"))]),iv,")"]):"",": ",r("type"),HF(e,r,s)];case"DirectiveDefinition":return[Lz(e,t,r),"directive ","@",r("name"),s.arguments.length>0?yM(["(",r9([iv,YD([PU("",", "),iv],WU(e,t,r,"arguments"))]),iv,")"]):"",s.repeatable?" repeatable":""," on ",...YD(" | ",e.map(r,"locations"))];case"EnumTypeExtension":case"EnumTypeDefinition":return[Lz(e,t,r),s.kind==="EnumTypeExtension"?"extend ":"","enum ",r("name"),HF(e,r,s),s.values.length>0?[" {",r9([Sw,YD(Sw,WU(e,t,r,"values"))]),Sw,"}"]:""];case"EnumValueDefinition":return[Lz(e,t,r),r("name"),HF(e,r,s)];case"InputValueDefinition":return[Lz(e,t,r),r("name"),": ",r("type"),s.defaultValue?[" = ",r("defaultValue")]:"",HF(e,r,s)];case"SchemaExtension":return["extend schema",HF(e,r,s),...s.operationTypes.length>0?[" {",r9([Sw,YD(Sw,WU(e,t,r,"operationTypes"))]),Sw,"}"]:[]];case"SchemaDefinition":return[Lz(e,t,r),"schema",HF(e,r,s)," {",s.operationTypes.length>0?r9([Sw,YD(Sw,WU(e,t,r,"operationTypes"))]):"",Sw,"}"];case"OperationTypeDefinition":return[s.operation,": ",r("type")];case"FragmentSpread":return["...",r("name"),HF(e,r,s)];case"InlineFragment":return["...",s.typeCondition?[" on ",r("typeCondition")]:"",HF(e,r,s)," ",r("selectionSet")];case"UnionTypeExtension":case"UnionTypeDefinition":return yM([Lz(e,t,r),yM([s.kind==="UnionTypeExtension"?"extend ":"","union ",r("name"),HF(e,r,s),s.types.length>0?[" =",PU(""," "),r9([PU([Yve,"| "]),YD([Yve,"| "],e.map(r,"types"))])]:""])]);case"ScalarTypeExtension":case"ScalarTypeDefinition":return[Lz(e,t,r),s.kind==="ScalarTypeExtension"?"extend ":"","scalar ",r("name"),HF(e,r,s)];case"NonNullType":return[r("type"),"!"];case"ListType":return["[",r("type"),"]"];default:throw new hta(s,"Graphql","kind")}}function HF(e,t,r){if(r.directives.length===0)return"";let s=YD(Yve,e.map(t,"directives"));return r.kind==="FragmentDefinition"||r.kind==="OperationDefinition"?yM([Yve,s]):[" ",yM(r9([iv,s]))]}function WU(e,t,r,s){return e.map(({isLast:a,node:o})=>{let g=r();return!a&&Ita(t.originalText,mri(o))?[g,Sw]:g},s)}function Dta(e){return e.kind!=="Comment"}function xta(e){let t=e.node;if(t.kind==="Comment")return"#"+t.value.trimEnd();throw new Error("Not a comment: "+JSON.stringify(t))}function kta(e,t,r){let{node:s}=e,a=[],{interfaces:o}=s,g=e.map(r,"interfaces");for(let p=0;ps.value.trim()==="prettier-ignore")}var Fta={print:Rta,massageAstNode:hri,hasPrettierIgnore:Gta,insertPragma:Tta,printComment:xta,canAttachComment:Dta,getVisitorKeys:Sta},Zta=Fta,_ri=[{linguistLanguageId:139,name:"GraphQL",type:"data",color:"#e10098",extensions:[".graphql",".gql",".graphqls"],tmScope:"source.graphql",aceMode:"text",parsers:["graphql"],vscodeLanguageIds:["graphql"]}],Lta={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},Vta={bracketSpacing:Lta.bracketSpacing},yri=Vta,Fgr={};cri(Fgr,{graphql:()=>bra});function Wta(e){return typeof e=="object"&&e!==null}function Pta(e,t){if(!e)throw new Error(t??"Unexpected invariant triggered.")}var Ota=/\r\n|[\n\r]/g;function xgr(e,t){let r=0,s=1;for(let a of e.body.matchAll(Ota)){if(typeof a.index=="number"||Pta(!1),a.index>=t)break;r=a.index+a[0].length,s+=1}return{line:s,column:t+1-r}}function Mta(e){return bri(e.source,xgr(e.source,e.start))}function bri(e,t){let r=e.locationOffset.column-1,s="".padStart(r)+e.body,a=t.line-1,o=e.locationOffset.line-1,g=t.line+o,p=t.line===1?r:0,f=t.column+p,m=`${e.name}:${g}:${f} -`,y=s.split(/\r\n|[\n\r]/g),B=y[a];if(B.length>120){let v=Math.floor(f/80),G=f%80,T=[];for(let O=0;O["|",O]),["|","^".padStart(G)],["|",T[v+1]]])}return m+sri([[`${g-1} |`,y[a-1]],[`${g} |`,B],["|","^".padStart(f)],[`${g+1} |`,y[a+1]]])}function sri(e){let t=e.filter(([s,a])=>a!==void 0),r=Math.max(...t.map(([s])=>s.length));return t.map(([s,a])=>s.padStart(r)+(a?" "+a:"")).join(` -`)}function Qta(e){let t=e[0];return t==null||"kind"in t||"length"in t?{nodes:t,source:e[1],positions:e[2],path:e[3],originalError:e[4],extensions:e[5]}:t}var Yta=class Eri extends Error{constructor(t,...r){var s,a,o;let{nodes:g,source:p,positions:f,path:m,originalError:y,extensions:B}=Qta(r);super(t),this.name="GraphQLError",this.path=m??void 0,this.originalError=y??void 0,this.nodes=ori(Array.isArray(g)?g:g?[g]:void 0);let v=ori((s=this.nodes)===null||s===void 0?void 0:s.map(T=>T.loc).filter(T=>T!=null));this.source=p??(v==null||(a=v[0])===null||a===void 0?void 0:a.source),this.positions=f??v?.map(T=>T.start),this.locations=f&&p?f.map(T=>xgr(p,T)):v?.map(T=>xgr(T.source,T.start));let G=Wta(y?.extensions)?y?.extensions:void 0;this.extensions=(o=B??G)!==null&&o!==void 0?o:Object.create(null),Object.defineProperties(this,{message:{writable:!0,enumerable:!0},name:{enumerable:!1},nodes:{enumerable:!1},source:{enumerable:!1},positions:{enumerable:!1},originalError:{enumerable:!1}}),y!=null&&y.stack?Object.defineProperty(this,"stack",{value:y.stack,writable:!0,configurable:!0}):Error.captureStackTrace?Error.captureStackTrace(this,Eri):Object.defineProperty(this,"stack",{value:Error().stack,writable:!0,configurable:!0})}get[Symbol.toStringTag](){return"GraphQLError"}toString(){let t=this.message;if(this.nodes)for(let r of this.nodes)r.loc&&(t+=` +`+e}function Yta(e,t,r){let{node:s}=e;if(!s.description)return"";let a=[r("description")];return s.kind==="InputValueDefinition"&&!s.description.block?a.push(Jve):a.push(ww),a}var Vz=Yta;function Xta(e,t,r){let{node:s}=e;switch(s.kind){case"Document":return[...UD(ww,JU(e,t,r,"definitions")),ww];case"OperationDefinition":{let a=t.originalText[vri(s)]!=="{",o=!!s.name;return[a?s.operation:"",a&&o?[" ",r("name")]:"",a&&!o&&bri(s.variableDefinitions)?" ":"",Ari(e,r),UF(e,r,s),!a&&!o?"":" ",r("selectionSet")]}case"FragmentDefinition":return["fragment ",r("name"),Ari(e,r)," on ",r("typeCondition"),UF(e,r,s)," ",r("selectionSet")];case"SelectionSet":return["{",n9([ww,UD(ww,JU(e,t,r,"selections"))]),ww,"}"];case"Field":return EQ([s.alias?[r("alias"),": "]:"",r("name"),s.arguments.length>0?EQ(["(",n9([sv,UD([UU("",", "),sv],JU(e,t,r,"arguments"))]),sv,")"]):"",UF(e,r,s),s.selectionSet?" ":"",r("selectionSet")]);case"Name":return s.value;case"StringValue":if(s.block){let a=Ggr(!1,s.value,'"""',String.raw`\"""`).split(` +`);return a.length===1&&(a[0]=a[0].trim()),a.every(o=>o==="")&&(a.length=0),UD(ww,['"""',...a,'"""'])}return['"',Ggr(!1,Ggr(!1,s.value,/["\\]/gu,String.raw`\$&`),` +`,String.raw`\n`),'"'];case"IntValue":case"FloatValue":case"EnumValue":return s.value;case"BooleanValue":return s.value?"true":"false";case"NullValue":return"null";case"Variable":return["$",r("name")];case"ListValue":return EQ(["[",n9([sv,UD([UU("",", "),sv],e.map(r,"values"))]),sv,"]"]);case"ObjectValue":{let a=t.bracketSpacing&&s.fields.length>0?" ":"";return EQ(["{",a,n9([sv,UD([UU("",", "),sv],e.map(r,"fields"))]),sv,UU("",a),"}"])}case"ObjectField":case"Argument":return[r("name"),": ",r("value")];case"Directive":return["@",r("name"),s.arguments.length>0?EQ(["(",n9([sv,UD([UU("",", "),sv],JU(e,t,r,"arguments"))]),sv,")"]):""];case"NamedType":return r("name");case"VariableDefinition":return[r("variable"),": ",r("type"),s.defaultValue?[" = ",r("defaultValue")]:"",UF(e,r,s)];case"ObjectTypeExtension":case"ObjectTypeDefinition":case"InputObjectTypeExtension":case"InputObjectTypeDefinition":case"InterfaceTypeExtension":case"InterfaceTypeDefinition":{let{kind:a}=s,o=[];return a.endsWith("TypeDefinition")?o.push(Vz(e,t,r)):o.push("extend "),a.startsWith("ObjectType")?o.push("type"):a.startsWith("InputObjectType")?o.push("input"):o.push("interface"),o.push(" ",r("name")),!a.startsWith("InputObjectType")&&s.interfaces.length>0&&o.push(" implements ",...Kta(e,t,r)),o.push(UF(e,r,s)),s.fields.length>0&&o.push([" {",n9([ww,UD(ww,JU(e,t,r,"fields"))]),ww,"}"]),o}case"FieldDefinition":return[Vz(e,t,r),r("name"),s.arguments.length>0?EQ(["(",n9([sv,UD([UU("",", "),sv],JU(e,t,r,"arguments"))]),sv,")"]):"",": ",r("type"),UF(e,r,s)];case"DirectiveDefinition":return[Vz(e,t,r),"directive ","@",r("name"),s.arguments.length>0?EQ(["(",n9([sv,UD([UU("",", "),sv],JU(e,t,r,"arguments"))]),sv,")"]):"",s.repeatable?" repeatable":""," on ",...UD(" | ",e.map(r,"locations"))];case"EnumTypeExtension":case"EnumTypeDefinition":return[Vz(e,t,r),s.kind==="EnumTypeExtension"?"extend ":"","enum ",r("name"),UF(e,r,s),s.values.length>0?[" {",n9([ww,UD(ww,JU(e,t,r,"values"))]),ww,"}"]:""];case"EnumValueDefinition":return[Vz(e,t,r),r("name"),UF(e,r,s)];case"InputValueDefinition":return[Vz(e,t,r),r("name"),": ",r("type"),s.defaultValue?[" = ",r("defaultValue")]:"",UF(e,r,s)];case"SchemaExtension":return["extend schema",UF(e,r,s),...s.operationTypes.length>0?[" {",n9([ww,UD(ww,JU(e,t,r,"operationTypes"))]),ww,"}"]:[]];case"SchemaDefinition":return[Vz(e,t,r),"schema",UF(e,r,s)," {",s.operationTypes.length>0?n9([ww,UD(ww,JU(e,t,r,"operationTypes"))]):"",ww,"}"];case"OperationTypeDefinition":return[s.operation,": ",r("type")];case"FragmentSpread":return["...",r("name"),UF(e,r,s)];case"InlineFragment":return["...",s.typeCondition?[" on ",r("typeCondition")]:"",UF(e,r,s)," ",r("selectionSet")];case"UnionTypeExtension":case"UnionTypeDefinition":return EQ([Vz(e,t,r),EQ([s.kind==="UnionTypeExtension"?"extend ":"","union ",r("name"),UF(e,r,s),s.types.length>0?[" =",UU(""," "),n9([UU([Jve,"| "]),UD([Jve,"| "],e.map(r,"types"))])]:""])]);case"ScalarTypeExtension":case"ScalarTypeDefinition":return[Vz(e,t,r),s.kind==="ScalarTypeExtension"?"extend ":"","scalar ",r("name"),UF(e,r,s)];case"NonNullType":return[r("type"),"!"];case"ListType":return["[",r("type"),"]"];default:throw new Fta(s,"Graphql","kind")}}function UF(e,t,r){if(r.directives.length===0)return"";let s=UD(Jve,e.map(t,"directives"));return r.kind==="FragmentDefinition"||r.kind==="OperationDefinition"?EQ([Jve,s]):[" ",EQ(n9([sv,s]))]}function JU(e,t,r,s){return e.map(({isLast:a,node:o})=>{let g=r();return!a&&xta(t.originalText,Sri(o))?[g,ww]:g},s)}function Jta(e){return e.kind!=="Comment"}function Uta(e){let t=e.node;if(t.kind==="Comment")return"#"+t.value.trimEnd();throw new Error("Not a comment: "+JSON.stringify(t))}function Kta(e,t,r){let{node:s}=e,a=[],{interfaces:o}=s,g=e.map(r,"interfaces");for(let p=0;ps.value.trim()==="prettier-ignore")}var zta={print:Xta,massageAstNode:wri,hasPrettierIgnore:jta,insertPragma:Hta,printComment:Uta,canAttachComment:Jta,getVisitorKeys:Qta},qta=zta,Tri=[{linguistLanguageId:139,name:"GraphQL",type:"data",color:"#e10098",extensions:[".graphql",".gql",".graphqls"],tmScope:"source.graphql",aceMode:"text",parsers:["graphql"],vscodeLanguageIds:["graphql"]}],$ta={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},era={bracketSpacing:$ta.bracketSpacing},Nri=era,Pgr={};Iri(Pgr,{graphql:()=>Vra});function tra(e){return typeof e=="object"&&e!==null}function rra(e,t){if(!e)throw new Error(t??"Unexpected invariant triggered.")}var nra=/\r\n|[\n\r]/g;function Lgr(e,t){let r=0,s=1;for(let a of e.body.matchAll(nra)){if(typeof a.index=="number"||rra(!1),a.index>=t)break;r=a.index+a[0].length,s+=1}return{line:s,column:t+1-r}}function ira(e){return Rri(e.source,Lgr(e.source,e.start))}function Rri(e,t){let r=e.locationOffset.column-1,s="".padStart(r)+e.body,a=t.line-1,o=e.locationOffset.line-1,g=t.line+o,p=t.line===1?r:0,f=t.column+p,m=`${e.name}:${g}:${f} +`,y=s.split(/\r\n|[\n\r]/g),B=y[a];if(B.length>120){let v=Math.floor(f/80),k=f%80,T=[];for(let O=0;O["|",O]),["|","^".padStart(k)],["|",T[v+1]]])}return m+dri([[`${g-1} |`,y[a-1]],[`${g} |`,B],["|","^".padStart(f)],[`${g+1} |`,y[a+1]]])}function dri(e){let t=e.filter(([s,a])=>a!==void 0),r=Math.max(...t.map(([s])=>s.length));return t.map(([s,a])=>s.padStart(r)+(a?" "+a:"")).join(` +`)}function sra(e){let t=e[0];return t==null||"kind"in t||"length"in t?{nodes:t,source:e[1],positions:e[2],path:e[3],originalError:e[4],extensions:e[5]}:t}var ora=class Dri extends Error{constructor(t,...r){var s,a,o;let{nodes:g,source:p,positions:f,path:m,originalError:y,extensions:B}=sra(r);super(t),this.name="GraphQLError",this.path=m??void 0,this.originalError=y??void 0,this.nodes=pri(Array.isArray(g)?g:g?[g]:void 0);let v=pri((s=this.nodes)===null||s===void 0?void 0:s.map(T=>T.loc).filter(T=>T!=null));this.source=p??(v==null||(a=v[0])===null||a===void 0?void 0:a.source),this.positions=f??v?.map(T=>T.start),this.locations=f&&p?f.map(T=>Lgr(p,T)):v?.map(T=>Lgr(T.source,T.start));let k=tra(y?.extensions)?y?.extensions:void 0;this.extensions=(o=B??k)!==null&&o!==void 0?o:Object.create(null),Object.defineProperties(this,{message:{writable:!0,enumerable:!0},name:{enumerable:!1},nodes:{enumerable:!1},source:{enumerable:!1},positions:{enumerable:!1},originalError:{enumerable:!1}}),y!=null&&y.stack?Object.defineProperty(this,"stack",{value:y.stack,writable:!0,configurable:!0}):Error.captureStackTrace?Error.captureStackTrace(this,Dri):Object.defineProperty(this,"stack",{value:Error().stack,writable:!0,configurable:!0})}get[Symbol.toStringTag](){return"GraphQLError"}toString(){let t=this.message;if(this.nodes)for(let r of this.nodes)r.loc&&(t+=` -`+Mta(r.loc));else if(this.source&&this.locations)for(let r of this.locations)t+=` +`+ira(r.loc));else if(this.source&&this.locations)for(let r of this.locations)t+=` -`+bri(this.source,r);return t}toJSON(){let t={message:this.message};return this.locations!=null&&(t.locations=this.locations),this.path!=null&&(t.path=this.path),this.extensions!=null&&Object.keys(this.extensions).length>0&&(t.extensions=this.extensions),t}};function ori(e){return e===void 0||e.length===0?void 0:e}function IR(e,t,r){return new Yta(`Syntax Error: ${r}`,{source:e,positions:[t]})}var kgr;(function(e){e.QUERY="QUERY",e.MUTATION="MUTATION",e.SUBSCRIPTION="SUBSCRIPTION",e.FIELD="FIELD",e.FRAGMENT_DEFINITION="FRAGMENT_DEFINITION",e.FRAGMENT_SPREAD="FRAGMENT_SPREAD",e.INLINE_FRAGMENT="INLINE_FRAGMENT",e.VARIABLE_DEFINITION="VARIABLE_DEFINITION",e.SCHEMA="SCHEMA",e.SCALAR="SCALAR",e.OBJECT="OBJECT",e.FIELD_DEFINITION="FIELD_DEFINITION",e.ARGUMENT_DEFINITION="ARGUMENT_DEFINITION",e.INTERFACE="INTERFACE",e.UNION="UNION",e.ENUM="ENUM",e.ENUM_VALUE="ENUM_VALUE",e.INPUT_OBJECT="INPUT_OBJECT",e.INPUT_FIELD_DEFINITION="INPUT_FIELD_DEFINITION"})(kgr||(kgr={}));var Gf;(function(e){e.NAME="Name",e.DOCUMENT="Document",e.OPERATION_DEFINITION="OperationDefinition",e.VARIABLE_DEFINITION="VariableDefinition",e.SELECTION_SET="SelectionSet",e.FIELD="Field",e.ARGUMENT="Argument",e.FRAGMENT_SPREAD="FragmentSpread",e.INLINE_FRAGMENT="InlineFragment",e.FRAGMENT_DEFINITION="FragmentDefinition",e.VARIABLE="Variable",e.INT="IntValue",e.FLOAT="FloatValue",e.STRING="StringValue",e.BOOLEAN="BooleanValue",e.NULL="NullValue",e.ENUM="EnumValue",e.LIST="ListValue",e.OBJECT="ObjectValue",e.OBJECT_FIELD="ObjectField",e.DIRECTIVE="Directive",e.NAMED_TYPE="NamedType",e.LIST_TYPE="ListType",e.NON_NULL_TYPE="NonNullType",e.SCHEMA_DEFINITION="SchemaDefinition",e.OPERATION_TYPE_DEFINITION="OperationTypeDefinition",e.SCALAR_TYPE_DEFINITION="ScalarTypeDefinition",e.OBJECT_TYPE_DEFINITION="ObjectTypeDefinition",e.FIELD_DEFINITION="FieldDefinition",e.INPUT_VALUE_DEFINITION="InputValueDefinition",e.INTERFACE_TYPE_DEFINITION="InterfaceTypeDefinition",e.UNION_TYPE_DEFINITION="UnionTypeDefinition",e.ENUM_TYPE_DEFINITION="EnumTypeDefinition",e.ENUM_VALUE_DEFINITION="EnumValueDefinition",e.INPUT_OBJECT_TYPE_DEFINITION="InputObjectTypeDefinition",e.DIRECTIVE_DEFINITION="DirectiveDefinition",e.SCHEMA_EXTENSION="SchemaExtension",e.SCALAR_TYPE_EXTENSION="ScalarTypeExtension",e.OBJECT_TYPE_EXTENSION="ObjectTypeExtension",e.INTERFACE_TYPE_EXTENSION="InterfaceTypeExtension",e.UNION_TYPE_EXTENSION="UnionTypeExtension",e.ENUM_TYPE_EXTENSION="EnumTypeExtension",e.INPUT_OBJECT_TYPE_EXTENSION="InputObjectTypeExtension"})(Gf||(Gf={}));function Hta(e){return e===9||e===32}function OQe(e){return e>=48&&e<=57}function Bri(e){return e>=97&&e<=122||e>=65&&e<=90}function vri(e){return Bri(e)||e===95}function Xta(e){return Bri(e)||OQe(e)||e===95}function Jta(e){var t;let r=Number.MAX_SAFE_INTEGER,s=null,a=-1;for(let g=0;gp===0?g:g.slice(r)).slice((t=s)!==null&&t!==void 0?t:0,a+1)}function Uta(e){let t=0;for(;t=0&&e<=55295||e>=57344&&e<=1114111}function cCt(e,t){return Sri(e.charCodeAt(t))&&wri(e.charCodeAt(t+1))}function Sri(e){return e>=55296&&e<=56319}function wri(e){return e>=56320&&e<=57343}function $pe(e,t){let r=e.source.body.codePointAt(t);if(r===void 0)return Tc.EOF;if(r>=32&&r<=126){let s=String.fromCodePoint(r);return s==='"'?`'"'`:`"${s}"`}return"U+"+r.toString(16).toUpperCase().padStart(4,"0")}function ww(e,t,r,s,a){let o=e.line,g=1+r-e.lineStart;return new fri(t,r,s,o,g,a)}function zta(e,t){let r=e.source.body,s=r.length,a=t;for(;a=48&&e<=57?e-48:e>=65&&e<=70?e-55:e>=97&&e<=102?e-87:-1}function nra(e,t){let r=e.source.body;switch(r.charCodeAt(t+1)){case 34:return{value:'"',size:2};case 92:return{value:"\\",size:2};case 47:return{value:"/",size:2};case 98:return{value:"\b",size:2};case 102:return{value:"\f",size:2};case 110:return{value:` -`,size:2};case 114:return{value:"\r",size:2};case 116:return{value:" ",size:2}}throw IR(e.source,t,`Invalid character escape sequence: "${r.slice(t,t+2)}".`)}function ira(e,t){let r=e.source.body,s=r.length,a=e.lineStart,o=t+3,g=o,p="",f=[];for(;o2?"["+ura(e)+"]":"{ "+r.map(([s,a])=>s+": "+lCt(a,t)).join(", ")+" }"}function lra(e,t){if(e.length===0)return"[]";if(t.length>2)return"[Array]";let r=Math.min(10,e.length),s=e.length-r,a=[];for(let o=0;o1&&a.push(`... ${s} more items`),"["+a.join(", ")+"]"}function ura(e){let t=Object.prototype.toString.call(e).replace(/^\[object /,"").replace(/]$/,"");if(t==="Object"&&typeof e.constructor=="function"){let r=e.constructor.name;if(typeof r=="string"&&r!=="")return r}return t}var gra=globalThis.process&&!0,Ara=gra?function(e,t){return e instanceof t}:function(e,t){if(e instanceof t)return!0;if(typeof e=="object"&&e!==null){var r;let s=t.prototype[Symbol.toStringTag],a=Symbol.toStringTag in e?e[Symbol.toStringTag]:(r=e.constructor)===null||r===void 0?void 0:r.name;if(s===a){let o=Tri(e);throw new Error(`Cannot use ${s} "${o}" from another module or realm. +`+Rri(this.source,r);return t}toJSON(){let t={message:this.message};return this.locations!=null&&(t.locations=this.locations),this.path!=null&&(t.path=this.path),this.extensions!=null&&Object.keys(this.extensions).length>0&&(t.extensions=this.extensions),t}};function pri(e){return e===void 0||e.length===0?void 0:e}function mR(e,t,r){return new ora(`Syntax Error: ${r}`,{source:e,positions:[t]})}var Vgr;(function(e){e.QUERY="QUERY",e.MUTATION="MUTATION",e.SUBSCRIPTION="SUBSCRIPTION",e.FIELD="FIELD",e.FRAGMENT_DEFINITION="FRAGMENT_DEFINITION",e.FRAGMENT_SPREAD="FRAGMENT_SPREAD",e.INLINE_FRAGMENT="INLINE_FRAGMENT",e.VARIABLE_DEFINITION="VARIABLE_DEFINITION",e.SCHEMA="SCHEMA",e.SCALAR="SCALAR",e.OBJECT="OBJECT",e.FIELD_DEFINITION="FIELD_DEFINITION",e.ARGUMENT_DEFINITION="ARGUMENT_DEFINITION",e.INTERFACE="INTERFACE",e.UNION="UNION",e.ENUM="ENUM",e.ENUM_VALUE="ENUM_VALUE",e.INPUT_OBJECT="INPUT_OBJECT",e.INPUT_FIELD_DEFINITION="INPUT_FIELD_DEFINITION"})(Vgr||(Vgr={}));var Ff;(function(e){e.NAME="Name",e.DOCUMENT="Document",e.OPERATION_DEFINITION="OperationDefinition",e.VARIABLE_DEFINITION="VariableDefinition",e.SELECTION_SET="SelectionSet",e.FIELD="Field",e.ARGUMENT="Argument",e.FRAGMENT_SPREAD="FragmentSpread",e.INLINE_FRAGMENT="InlineFragment",e.FRAGMENT_DEFINITION="FragmentDefinition",e.VARIABLE="Variable",e.INT="IntValue",e.FLOAT="FloatValue",e.STRING="StringValue",e.BOOLEAN="BooleanValue",e.NULL="NullValue",e.ENUM="EnumValue",e.LIST="ListValue",e.OBJECT="ObjectValue",e.OBJECT_FIELD="ObjectField",e.DIRECTIVE="Directive",e.NAMED_TYPE="NamedType",e.LIST_TYPE="ListType",e.NON_NULL_TYPE="NonNullType",e.SCHEMA_DEFINITION="SchemaDefinition",e.OPERATION_TYPE_DEFINITION="OperationTypeDefinition",e.SCALAR_TYPE_DEFINITION="ScalarTypeDefinition",e.OBJECT_TYPE_DEFINITION="ObjectTypeDefinition",e.FIELD_DEFINITION="FieldDefinition",e.INPUT_VALUE_DEFINITION="InputValueDefinition",e.INTERFACE_TYPE_DEFINITION="InterfaceTypeDefinition",e.UNION_TYPE_DEFINITION="UnionTypeDefinition",e.ENUM_TYPE_DEFINITION="EnumTypeDefinition",e.ENUM_VALUE_DEFINITION="EnumValueDefinition",e.INPUT_OBJECT_TYPE_DEFINITION="InputObjectTypeDefinition",e.DIRECTIVE_DEFINITION="DirectiveDefinition",e.SCHEMA_EXTENSION="SchemaExtension",e.SCALAR_TYPE_EXTENSION="ScalarTypeExtension",e.OBJECT_TYPE_EXTENSION="ObjectTypeExtension",e.INTERFACE_TYPE_EXTENSION="InterfaceTypeExtension",e.UNION_TYPE_EXTENSION="UnionTypeExtension",e.ENUM_TYPE_EXTENSION="EnumTypeExtension",e.INPUT_OBJECT_TYPE_EXTENSION="InputObjectTypeExtension"})(Ff||(Ff={}));function ara(e){return e===9||e===32}function M5e(e){return e>=48&&e<=57}function xri(e){return e>=97&&e<=122||e>=65&&e<=90}function kri(e){return xri(e)||e===95}function cra(e){return xri(e)||M5e(e)||e===95}function lra(e){var t;let r=Number.MAX_SAFE_INTEGER,s=null,a=-1;for(let g=0;gp===0?g:g.slice(r)).slice((t=s)!==null&&t!==void 0?t:0,a+1)}function ura(e){let t=0;for(;t=0&&e<=55295||e>=57344&&e<=1114111}function gCt(e,t){return Gri(e.charCodeAt(t))&&Fri(e.charCodeAt(t+1))}function Gri(e){return e>=55296&&e<=56319}function Fri(e){return e>=56320&&e<=57343}function sfe(e,t){let r=e.source.body.codePointAt(t);if(r===void 0)return Nc.EOF;if(r>=32&&r<=126){let s=String.fromCodePoint(r);return s==='"'?`'"'`:`"${s}"`}return"U+"+r.toString(16).toUpperCase().padStart(4,"0")}function Tw(e,t,r,s,a){let o=e.line,g=1+r-e.lineStart;return new Eri(t,r,s,o,g,a)}function dra(e,t){let r=e.source.body,s=r.length,a=t;for(;a=48&&e<=57?e-48:e>=65&&e<=70?e-55:e>=97&&e<=102?e-87:-1}function hra(e,t){let r=e.source.body;switch(r.charCodeAt(t+1)){case 34:return{value:'"',size:2};case 92:return{value:"\\",size:2};case 47:return{value:"/",size:2};case 98:return{value:"\b",size:2};case 102:return{value:"\f",size:2};case 110:return{value:` +`,size:2};case 114:return{value:"\r",size:2};case 116:return{value:" ",size:2}}throw mR(e.source,t,`Invalid character escape sequence: "${r.slice(t,t+2)}".`)}function _ra(e,t){let r=e.source.body,s=r.length,a=e.lineStart,o=t+3,g=o,p="",f=[];for(;o2?"["+Sra(e)+"]":"{ "+r.map(([s,a])=>s+": "+ACt(a,t)).join(", ")+" }"}function vra(e,t){if(e.length===0)return"[]";if(t.length>2)return"[Array]";let r=Math.min(10,e.length),s=e.length-r,a=[];for(let o=0;o1&&a.push(`... ${s} more items`),"["+a.join(", ")+"]"}function Sra(e){let t=Object.prototype.toString.call(e).replace(/^\[object /,"").replace(/]$/,"");if(t==="Object"&&typeof e.constructor=="function"){let r=e.constructor.name;if(typeof r=="string"&&r!=="")return r}return t}var wra=globalThis.process&&!0,Tra=wra?function(e,t){return e instanceof t}:function(e,t){if(e instanceof t)return!0;if(typeof e=="object"&&e!==null){var r;let s=t.prototype[Symbol.toStringTag],a=Symbol.toStringTag in e?e[Symbol.toStringTag]:(r=e.constructor)===null||r===void 0?void 0:r.name;if(s===a){let o=Zri(e);throw new Error(`Cannot use ${s} "${o}" from another module or realm. Ensure that there is only one instance of "graphql" in the node_modules directory. If different versions of "graphql" are the dependencies of other @@ -2000,93 +2000,93 @@ https://yarnpkg.com/en/docs/selective-version-resolutions Duplicate "graphql" modules cannot be used at the same time since different versions may have different capabilities and behavior. The data from one version used in the function from another could produce confusing and -spurious results.`)}}return!1},Nri=class{constructor(e,t="GraphQL request",r={line:1,column:1}){typeof e=="string"||Dgr(!1,`Body must be a string. Received: ${Tri(e)}.`),this.body=e,this.name=t,this.locationOffset=r,this.locationOffset.line>0||Dgr(!1,"line in locationOffset is 1-indexed and must be positive."),this.locationOffset.column>0||Dgr(!1,"column in locationOffset is 1-indexed and must be positive.")}get[Symbol.toStringTag](){return"Source"}};function dra(e){return Ara(e,Nri)}function pra(e,t){let r=new fra(e,t),s=r.parseDocument();return Object.defineProperty(s,"tokenCount",{enumerable:!1,value:r.tokenCount}),s}var fra=class{constructor(e,t={}){let r=dra(e)?e:new Nri(e);this._lexer=new Kta(r),this._options=t,this._tokenCounter=0}get tokenCount(){return this._tokenCounter}parseName(){let e=this.expectToken(Tc.NAME);return this.node(e,{kind:Gf.NAME,value:e.value})}parseDocument(){return this.node(this._lexer.token,{kind:Gf.DOCUMENT,definitions:this.many(Tc.SOF,this.parseDefinition,Tc.EOF)})}parseDefinition(){if(this.peek(Tc.BRACE_L))return this.parseOperationDefinition();let e=this.peekDescription(),t=e?this._lexer.lookahead():this._lexer.token;if(t.kind===Tc.NAME){switch(t.value){case"schema":return this.parseSchemaDefinition();case"scalar":return this.parseScalarTypeDefinition();case"type":return this.parseObjectTypeDefinition();case"interface":return this.parseInterfaceTypeDefinition();case"union":return this.parseUnionTypeDefinition();case"enum":return this.parseEnumTypeDefinition();case"input":return this.parseInputObjectTypeDefinition();case"directive":return this.parseDirectiveDefinition()}if(e)throw IR(this._lexer.source,this._lexer.token.start,"Unexpected description, descriptions are supported only on type definitions.");switch(t.value){case"query":case"mutation":case"subscription":return this.parseOperationDefinition();case"fragment":return this.parseFragmentDefinition();case"extend":return this.parseTypeSystemExtension()}}throw this.unexpected(t)}parseOperationDefinition(){let e=this._lexer.token;if(this.peek(Tc.BRACE_L))return this.node(e,{kind:Gf.OPERATION_DEFINITION,operation:Qve.QUERY,name:void 0,variableDefinitions:[],directives:[],selectionSet:this.parseSelectionSet()});let t=this.parseOperationType(),r;return this.peek(Tc.NAME)&&(r=this.parseName()),this.node(e,{kind:Gf.OPERATION_DEFINITION,operation:t,name:r,variableDefinitions:this.parseVariableDefinitions(),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseOperationType(){let e=this.expectToken(Tc.NAME);switch(e.value){case"query":return Qve.QUERY;case"mutation":return Qve.MUTATION;case"subscription":return Qve.SUBSCRIPTION}throw this.unexpected(e)}parseVariableDefinitions(){return this.optionalMany(Tc.PAREN_L,this.parseVariableDefinition,Tc.PAREN_R)}parseVariableDefinition(){return this.node(this._lexer.token,{kind:Gf.VARIABLE_DEFINITION,variable:this.parseVariable(),type:(this.expectToken(Tc.COLON),this.parseTypeReference()),defaultValue:this.expectOptionalToken(Tc.EQUALS)?this.parseConstValueLiteral():void 0,directives:this.parseConstDirectives()})}parseVariable(){let e=this._lexer.token;return this.expectToken(Tc.DOLLAR),this.node(e,{kind:Gf.VARIABLE,name:this.parseName()})}parseSelectionSet(){return this.node(this._lexer.token,{kind:Gf.SELECTION_SET,selections:this.many(Tc.BRACE_L,this.parseSelection,Tc.BRACE_R)})}parseSelection(){return this.peek(Tc.SPREAD)?this.parseFragment():this.parseField()}parseField(){let e=this._lexer.token,t=this.parseName(),r,s;return this.expectOptionalToken(Tc.COLON)?(r=t,s=this.parseName()):s=t,this.node(e,{kind:Gf.FIELD,alias:r,name:s,arguments:this.parseArguments(!1),directives:this.parseDirectives(!1),selectionSet:this.peek(Tc.BRACE_L)?this.parseSelectionSet():void 0})}parseArguments(e){let t=e?this.parseConstArgument:this.parseArgument;return this.optionalMany(Tc.PAREN_L,t,Tc.PAREN_R)}parseArgument(e=!1){let t=this._lexer.token,r=this.parseName();return this.expectToken(Tc.COLON),this.node(t,{kind:Gf.ARGUMENT,name:r,value:this.parseValueLiteral(e)})}parseConstArgument(){return this.parseArgument(!0)}parseFragment(){let e=this._lexer.token;this.expectToken(Tc.SPREAD);let t=this.expectOptionalKeyword("on");return!t&&this.peek(Tc.NAME)?this.node(e,{kind:Gf.FRAGMENT_SPREAD,name:this.parseFragmentName(),directives:this.parseDirectives(!1)}):this.node(e,{kind:Gf.INLINE_FRAGMENT,typeCondition:t?this.parseNamedType():void 0,directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseFragmentDefinition(){let e=this._lexer.token;return this.expectKeyword("fragment"),this._options.allowLegacyFragmentVariables===!0?this.node(e,{kind:Gf.FRAGMENT_DEFINITION,name:this.parseFragmentName(),variableDefinitions:this.parseVariableDefinitions(),typeCondition:(this.expectKeyword("on"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()}):this.node(e,{kind:Gf.FRAGMENT_DEFINITION,name:this.parseFragmentName(),typeCondition:(this.expectKeyword("on"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseFragmentName(){if(this._lexer.token.value==="on")throw this.unexpected();return this.parseName()}parseValueLiteral(e){let t=this._lexer.token;switch(t.kind){case Tc.BRACKET_L:return this.parseList(e);case Tc.BRACE_L:return this.parseObject(e);case Tc.INT:return this.advanceLexer(),this.node(t,{kind:Gf.INT,value:t.value});case Tc.FLOAT:return this.advanceLexer(),this.node(t,{kind:Gf.FLOAT,value:t.value});case Tc.STRING:case Tc.BLOCK_STRING:return this.parseStringLiteral();case Tc.NAME:switch(this.advanceLexer(),t.value){case"true":return this.node(t,{kind:Gf.BOOLEAN,value:!0});case"false":return this.node(t,{kind:Gf.BOOLEAN,value:!1});case"null":return this.node(t,{kind:Gf.NULL});default:return this.node(t,{kind:Gf.ENUM,value:t.value})}case Tc.DOLLAR:if(e)if(this.expectToken(Tc.DOLLAR),this._lexer.token.kind===Tc.NAME){let r=this._lexer.token.value;throw IR(this._lexer.source,t.start,`Unexpected variable "$${r}" in constant value.`)}else throw this.unexpected(t);return this.parseVariable();default:throw this.unexpected()}}parseConstValueLiteral(){return this.parseValueLiteral(!0)}parseStringLiteral(){let e=this._lexer.token;return this.advanceLexer(),this.node(e,{kind:Gf.STRING,value:e.value,block:e.kind===Tc.BLOCK_STRING})}parseList(e){let t=()=>this.parseValueLiteral(e);return this.node(this._lexer.token,{kind:Gf.LIST,values:this.any(Tc.BRACKET_L,t,Tc.BRACKET_R)})}parseObject(e){let t=()=>this.parseObjectField(e);return this.node(this._lexer.token,{kind:Gf.OBJECT,fields:this.any(Tc.BRACE_L,t,Tc.BRACE_R)})}parseObjectField(e){let t=this._lexer.token,r=this.parseName();return this.expectToken(Tc.COLON),this.node(t,{kind:Gf.OBJECT_FIELD,name:r,value:this.parseValueLiteral(e)})}parseDirectives(e){let t=[];for(;this.peek(Tc.AT);)t.push(this.parseDirective(e));return t}parseConstDirectives(){return this.parseDirectives(!0)}parseDirective(e){let t=this._lexer.token;return this.expectToken(Tc.AT),this.node(t,{kind:Gf.DIRECTIVE,name:this.parseName(),arguments:this.parseArguments(e)})}parseTypeReference(){let e=this._lexer.token,t;if(this.expectOptionalToken(Tc.BRACKET_L)){let r=this.parseTypeReference();this.expectToken(Tc.BRACKET_R),t=this.node(e,{kind:Gf.LIST_TYPE,type:r})}else t=this.parseNamedType();return this.expectOptionalToken(Tc.BANG)?this.node(e,{kind:Gf.NON_NULL_TYPE,type:t}):t}parseNamedType(){return this.node(this._lexer.token,{kind:Gf.NAMED_TYPE,name:this.parseName()})}peekDescription(){return this.peek(Tc.STRING)||this.peek(Tc.BLOCK_STRING)}parseDescription(){if(this.peekDescription())return this.parseStringLiteral()}parseSchemaDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("schema");let r=this.parseConstDirectives(),s=this.many(Tc.BRACE_L,this.parseOperationTypeDefinition,Tc.BRACE_R);return this.node(e,{kind:Gf.SCHEMA_DEFINITION,description:t,directives:r,operationTypes:s})}parseOperationTypeDefinition(){let e=this._lexer.token,t=this.parseOperationType();this.expectToken(Tc.COLON);let r=this.parseNamedType();return this.node(e,{kind:Gf.OPERATION_TYPE_DEFINITION,operation:t,type:r})}parseScalarTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("scalar");let r=this.parseName(),s=this.parseConstDirectives();return this.node(e,{kind:Gf.SCALAR_TYPE_DEFINITION,description:t,name:r,directives:s})}parseObjectTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("type");let r=this.parseName(),s=this.parseImplementsInterfaces(),a=this.parseConstDirectives(),o=this.parseFieldsDefinition();return this.node(e,{kind:Gf.OBJECT_TYPE_DEFINITION,description:t,name:r,interfaces:s,directives:a,fields:o})}parseImplementsInterfaces(){return this.expectOptionalKeyword("implements")?this.delimitedMany(Tc.AMP,this.parseNamedType):[]}parseFieldsDefinition(){return this.optionalMany(Tc.BRACE_L,this.parseFieldDefinition,Tc.BRACE_R)}parseFieldDefinition(){let e=this._lexer.token,t=this.parseDescription(),r=this.parseName(),s=this.parseArgumentDefs();this.expectToken(Tc.COLON);let a=this.parseTypeReference(),o=this.parseConstDirectives();return this.node(e,{kind:Gf.FIELD_DEFINITION,description:t,name:r,arguments:s,type:a,directives:o})}parseArgumentDefs(){return this.optionalMany(Tc.PAREN_L,this.parseInputValueDef,Tc.PAREN_R)}parseInputValueDef(){let e=this._lexer.token,t=this.parseDescription(),r=this.parseName();this.expectToken(Tc.COLON);let s=this.parseTypeReference(),a;this.expectOptionalToken(Tc.EQUALS)&&(a=this.parseConstValueLiteral());let o=this.parseConstDirectives();return this.node(e,{kind:Gf.INPUT_VALUE_DEFINITION,description:t,name:r,type:s,defaultValue:a,directives:o})}parseInterfaceTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("interface");let r=this.parseName(),s=this.parseImplementsInterfaces(),a=this.parseConstDirectives(),o=this.parseFieldsDefinition();return this.node(e,{kind:Gf.INTERFACE_TYPE_DEFINITION,description:t,name:r,interfaces:s,directives:a,fields:o})}parseUnionTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("union");let r=this.parseName(),s=this.parseConstDirectives(),a=this.parseUnionMemberTypes();return this.node(e,{kind:Gf.UNION_TYPE_DEFINITION,description:t,name:r,directives:s,types:a})}parseUnionMemberTypes(){return this.expectOptionalToken(Tc.EQUALS)?this.delimitedMany(Tc.PIPE,this.parseNamedType):[]}parseEnumTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("enum");let r=this.parseName(),s=this.parseConstDirectives(),a=this.parseEnumValuesDefinition();return this.node(e,{kind:Gf.ENUM_TYPE_DEFINITION,description:t,name:r,directives:s,values:a})}parseEnumValuesDefinition(){return this.optionalMany(Tc.BRACE_L,this.parseEnumValueDefinition,Tc.BRACE_R)}parseEnumValueDefinition(){let e=this._lexer.token,t=this.parseDescription(),r=this.parseEnumValueName(),s=this.parseConstDirectives();return this.node(e,{kind:Gf.ENUM_VALUE_DEFINITION,description:t,name:r,directives:s})}parseEnumValueName(){if(this._lexer.token.value==="true"||this._lexer.token.value==="false"||this._lexer.token.value==="null")throw IR(this._lexer.source,this._lexer.token.start,`${oCt(this._lexer.token)} is reserved and cannot be used for an enum value.`);return this.parseName()}parseInputObjectTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("input");let r=this.parseName(),s=this.parseConstDirectives(),a=this.parseInputFieldsDefinition();return this.node(e,{kind:Gf.INPUT_OBJECT_TYPE_DEFINITION,description:t,name:r,directives:s,fields:a})}parseInputFieldsDefinition(){return this.optionalMany(Tc.BRACE_L,this.parseInputValueDef,Tc.BRACE_R)}parseTypeSystemExtension(){let e=this._lexer.lookahead();if(e.kind===Tc.NAME)switch(e.value){case"schema":return this.parseSchemaExtension();case"scalar":return this.parseScalarTypeExtension();case"type":return this.parseObjectTypeExtension();case"interface":return this.parseInterfaceTypeExtension();case"union":return this.parseUnionTypeExtension();case"enum":return this.parseEnumTypeExtension();case"input":return this.parseInputObjectTypeExtension()}throw this.unexpected(e)}parseSchemaExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("schema");let t=this.parseConstDirectives(),r=this.optionalMany(Tc.BRACE_L,this.parseOperationTypeDefinition,Tc.BRACE_R);if(t.length===0&&r.length===0)throw this.unexpected();return this.node(e,{kind:Gf.SCHEMA_EXTENSION,directives:t,operationTypes:r})}parseScalarTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("scalar");let t=this.parseName(),r=this.parseConstDirectives();if(r.length===0)throw this.unexpected();return this.node(e,{kind:Gf.SCALAR_TYPE_EXTENSION,name:t,directives:r})}parseObjectTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("type");let t=this.parseName(),r=this.parseImplementsInterfaces(),s=this.parseConstDirectives(),a=this.parseFieldsDefinition();if(r.length===0&&s.length===0&&a.length===0)throw this.unexpected();return this.node(e,{kind:Gf.OBJECT_TYPE_EXTENSION,name:t,interfaces:r,directives:s,fields:a})}parseInterfaceTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("interface");let t=this.parseName(),r=this.parseImplementsInterfaces(),s=this.parseConstDirectives(),a=this.parseFieldsDefinition();if(r.length===0&&s.length===0&&a.length===0)throw this.unexpected();return this.node(e,{kind:Gf.INTERFACE_TYPE_EXTENSION,name:t,interfaces:r,directives:s,fields:a})}parseUnionTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("union");let t=this.parseName(),r=this.parseConstDirectives(),s=this.parseUnionMemberTypes();if(r.length===0&&s.length===0)throw this.unexpected();return this.node(e,{kind:Gf.UNION_TYPE_EXTENSION,name:t,directives:r,types:s})}parseEnumTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("enum");let t=this.parseName(),r=this.parseConstDirectives(),s=this.parseEnumValuesDefinition();if(r.length===0&&s.length===0)throw this.unexpected();return this.node(e,{kind:Gf.ENUM_TYPE_EXTENSION,name:t,directives:r,values:s})}parseInputObjectTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("input");let t=this.parseName(),r=this.parseConstDirectives(),s=this.parseInputFieldsDefinition();if(r.length===0&&s.length===0)throw this.unexpected();return this.node(e,{kind:Gf.INPUT_OBJECT_TYPE_EXTENSION,name:t,directives:r,fields:s})}parseDirectiveDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("directive"),this.expectToken(Tc.AT);let r=this.parseName(),s=this.parseArgumentDefs(),a=this.expectOptionalKeyword("repeatable");this.expectKeyword("on");let o=this.parseDirectiveLocations();return this.node(e,{kind:Gf.DIRECTIVE_DEFINITION,description:t,name:r,arguments:s,repeatable:a,locations:o})}parseDirectiveLocations(){return this.delimitedMany(Tc.PIPE,this.parseDirectiveLocation)}parseDirectiveLocation(){let e=this._lexer.token,t=this.parseName();if(Object.prototype.hasOwnProperty.call(kgr,t.value))return t;throw this.unexpected(e)}node(e,t){return this._options.noLocation!==!0&&(t.loc=new Bta(e,this._lexer.lastToken,this._lexer.source)),t}peek(e){return this._lexer.token.kind===e}expectToken(e){let t=this._lexer.token;if(t.kind===e)return this.advanceLexer(),t;throw IR(this._lexer.source,t.start,`Expected ${Rri(e)}, found ${oCt(t)}.`)}expectOptionalToken(e){return this._lexer.token.kind===e?(this.advanceLexer(),!0):!1}expectKeyword(e){let t=this._lexer.token;if(t.kind===Tc.NAME&&t.value===e)this.advanceLexer();else throw IR(this._lexer.source,t.start,`Expected "${e}", found ${oCt(t)}.`)}expectOptionalKeyword(e){let t=this._lexer.token;return t.kind===Tc.NAME&&t.value===e?(this.advanceLexer(),!0):!1}unexpected(e){let t=e??this._lexer.token;return IR(this._lexer.source,t.start,`Unexpected ${oCt(t)}.`)}any(e,t,r){this.expectToken(e);let s=[];for(;!this.expectOptionalToken(r);)s.push(t.call(this));return s}optionalMany(e,t,r){if(this.expectOptionalToken(e)){let s=[];do s.push(t.call(this));while(!this.expectOptionalToken(r));return s}return[]}many(e,t,r){this.expectToken(e);let s=[];do s.push(t.call(this));while(!this.expectOptionalToken(r));return s}delimitedMany(e,t){this.expectOptionalToken(e);let r=[];do r.push(t.call(this));while(this.expectOptionalToken(e));return r}advanceLexer(){let{maxTokens:e}=this._options,t=this._lexer.advance();if(t.kind!==Tc.EOF&&(++this._tokenCounter,e!==void 0&&this._tokenCounter>e))throw IR(this._lexer.source,t.start,`Document contains more that ${e} tokens. Parsing aborted.`)}};function oCt(e){let t=e.value;return Rri(e.kind)+(t!=null?` "${t}"`:"")}function Rri(e){return jta(e)?`"${e}"`:e}function Ira(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var Cra=Ira;function mra(e){let t=[],{startToken:r,endToken:s}=e.loc;for(let a=r;a!==s;a=a.next)a.kind==="Comment"&&t.push({...a,loc:{start:a.start,end:a.end}});return t}var hra={allowLegacyFragmentVariables:!0};function _ra(e){if(e?.name==="GraphQLError"){let{message:t,locations:[r]}=e;return Cra(t,{loc:{start:r},cause:e})}return e}function yra(e){let t;try{t=pra(e,hra)}catch(r){throw _ra(r)}return t.comments=mra(t),t}var bra={parse:yra,astFormat:"graphql",hasPragma:wta,locStart:Cri,locEnd:mri},Dri={graphql:Zta},Era=lri;var rAr={};jf(rAr,{default:()=>coa,languages:()=>Eni,options:()=>Bni,parsers:()=>tAr,printers:()=>Rni});var Bra=Object.create,Hgr=Object.defineProperty,vra=Object.getOwnPropertyDescriptor,Sra=Object.getOwnPropertyNames,wra=Object.getPrototypeOf,Tra=Object.prototype.hasOwnProperty,jri=e=>{throw TypeError(e)},Dl=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),zri=(e,t)=>{for(var r in t)Hgr(e,r,{get:t[r],enumerable:!0})},Nra=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of Sra(t))!Tra.call(e,a)&&a!==r&&Hgr(e,a,{get:()=>t[a],enumerable:!(s=vra(t,a))||s.enumerable});return e},jve=(e,t,r)=>(r=e!=null?Bra(wra(e)):{},Nra(t||!e||!e.__esModule?Hgr(r,"default",{value:e,enumerable:!0}):r,e)),qri=(e,t,r)=>t.has(e)||jri("Cannot "+r),bse=(e,t,r)=>(qri(e,t,"read from private field"),r?r.call(e):t.get(e)),Rra=(e,t,r)=>t.has(e)?jri("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),Dra=(e,t,r,s)=>(qri(e,t,"write to private field"),s?s.call(e,r):t.set(e,r),r),Xgr=Dl((e,t)=>{"use strict";t.exports=r;function r(s){return String(s).replace(/\s+/g," ")}}),xra=Dl((e,t)=>{"use strict";t.exports=T;var r=9,s=10,a=32,o=33,g=58,p=91,f=92,m=93,y=94,B=96,v=4,G=1024;function T(fe){var pe=this.Parser,he=this.Compiler;O(pe)&&U(pe,fe),X(he)&&le(he)}function O(fe){return!!(fe&&fe.prototype&&fe.prototype.blockTokenizers)}function X(fe){return!!(fe&&fe.prototype&&fe.prototype.visitors)}function U(fe,pe){for(var he=pe||{},be=fe.prototype,Te=be.blockTokenizers,ke=be.inlineTokenizers,x=be.blockMethods,et=be.inlineMethods,Ue=Te.definition,Je=ke.reference,Xe=[],ft=-1,Gt=x.length,er;++ftv&&(TA=void 0,Ld=Zi);else{if(TA0&&(Gr=jr[we-1],Gr.contentStart===Gr.contentEnd);)we--;for(Qu=Or(In.slice(0,Gr.contentEnd));++Zi0||Zgr(!1,"line in locationOffset is 1-indexed and must be positive."),this.locationOffset.column>0||Zgr(!1,"column in locationOffset is 1-indexed and must be positive.")}get[Symbol.toStringTag](){return"Source"}};function Nra(e){return Tra(e,Lri)}function Rra(e,t){let r=new Dra(e,t),s=r.parseDocument();return Object.defineProperty(s,"tokenCount",{enumerable:!1,value:r.tokenCount}),s}var Dra=class{constructor(e,t={}){let r=Nra(e)?e:new Lri(e);this._lexer=new gra(r),this._options=t,this._tokenCounter=0}get tokenCount(){return this._tokenCounter}parseName(){let e=this.expectToken(Nc.NAME);return this.node(e,{kind:Ff.NAME,value:e.value})}parseDocument(){return this.node(this._lexer.token,{kind:Ff.DOCUMENT,definitions:this.many(Nc.SOF,this.parseDefinition,Nc.EOF)})}parseDefinition(){if(this.peek(Nc.BRACE_L))return this.parseOperationDefinition();let e=this.peekDescription(),t=e?this._lexer.lookahead():this._lexer.token;if(t.kind===Nc.NAME){switch(t.value){case"schema":return this.parseSchemaDefinition();case"scalar":return this.parseScalarTypeDefinition();case"type":return this.parseObjectTypeDefinition();case"interface":return this.parseInterfaceTypeDefinition();case"union":return this.parseUnionTypeDefinition();case"enum":return this.parseEnumTypeDefinition();case"input":return this.parseInputObjectTypeDefinition();case"directive":return this.parseDirectiveDefinition()}if(e)throw mR(this._lexer.source,this._lexer.token.start,"Unexpected description, descriptions are supported only on type definitions.");switch(t.value){case"query":case"mutation":case"subscription":return this.parseOperationDefinition();case"fragment":return this.parseFragmentDefinition();case"extend":return this.parseTypeSystemExtension()}}throw this.unexpected(t)}parseOperationDefinition(){let e=this._lexer.token;if(this.peek(Nc.BRACE_L))return this.node(e,{kind:Ff.OPERATION_DEFINITION,operation:Xve.QUERY,name:void 0,variableDefinitions:[],directives:[],selectionSet:this.parseSelectionSet()});let t=this.parseOperationType(),r;return this.peek(Nc.NAME)&&(r=this.parseName()),this.node(e,{kind:Ff.OPERATION_DEFINITION,operation:t,name:r,variableDefinitions:this.parseVariableDefinitions(),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseOperationType(){let e=this.expectToken(Nc.NAME);switch(e.value){case"query":return Xve.QUERY;case"mutation":return Xve.MUTATION;case"subscription":return Xve.SUBSCRIPTION}throw this.unexpected(e)}parseVariableDefinitions(){return this.optionalMany(Nc.PAREN_L,this.parseVariableDefinition,Nc.PAREN_R)}parseVariableDefinition(){return this.node(this._lexer.token,{kind:Ff.VARIABLE_DEFINITION,variable:this.parseVariable(),type:(this.expectToken(Nc.COLON),this.parseTypeReference()),defaultValue:this.expectOptionalToken(Nc.EQUALS)?this.parseConstValueLiteral():void 0,directives:this.parseConstDirectives()})}parseVariable(){let e=this._lexer.token;return this.expectToken(Nc.DOLLAR),this.node(e,{kind:Ff.VARIABLE,name:this.parseName()})}parseSelectionSet(){return this.node(this._lexer.token,{kind:Ff.SELECTION_SET,selections:this.many(Nc.BRACE_L,this.parseSelection,Nc.BRACE_R)})}parseSelection(){return this.peek(Nc.SPREAD)?this.parseFragment():this.parseField()}parseField(){let e=this._lexer.token,t=this.parseName(),r,s;return this.expectOptionalToken(Nc.COLON)?(r=t,s=this.parseName()):s=t,this.node(e,{kind:Ff.FIELD,alias:r,name:s,arguments:this.parseArguments(!1),directives:this.parseDirectives(!1),selectionSet:this.peek(Nc.BRACE_L)?this.parseSelectionSet():void 0})}parseArguments(e){let t=e?this.parseConstArgument:this.parseArgument;return this.optionalMany(Nc.PAREN_L,t,Nc.PAREN_R)}parseArgument(e=!1){let t=this._lexer.token,r=this.parseName();return this.expectToken(Nc.COLON),this.node(t,{kind:Ff.ARGUMENT,name:r,value:this.parseValueLiteral(e)})}parseConstArgument(){return this.parseArgument(!0)}parseFragment(){let e=this._lexer.token;this.expectToken(Nc.SPREAD);let t=this.expectOptionalKeyword("on");return!t&&this.peek(Nc.NAME)?this.node(e,{kind:Ff.FRAGMENT_SPREAD,name:this.parseFragmentName(),directives:this.parseDirectives(!1)}):this.node(e,{kind:Ff.INLINE_FRAGMENT,typeCondition:t?this.parseNamedType():void 0,directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseFragmentDefinition(){let e=this._lexer.token;return this.expectKeyword("fragment"),this._options.allowLegacyFragmentVariables===!0?this.node(e,{kind:Ff.FRAGMENT_DEFINITION,name:this.parseFragmentName(),variableDefinitions:this.parseVariableDefinitions(),typeCondition:(this.expectKeyword("on"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()}):this.node(e,{kind:Ff.FRAGMENT_DEFINITION,name:this.parseFragmentName(),typeCondition:(this.expectKeyword("on"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseFragmentName(){if(this._lexer.token.value==="on")throw this.unexpected();return this.parseName()}parseValueLiteral(e){let t=this._lexer.token;switch(t.kind){case Nc.BRACKET_L:return this.parseList(e);case Nc.BRACE_L:return this.parseObject(e);case Nc.INT:return this.advanceLexer(),this.node(t,{kind:Ff.INT,value:t.value});case Nc.FLOAT:return this.advanceLexer(),this.node(t,{kind:Ff.FLOAT,value:t.value});case Nc.STRING:case Nc.BLOCK_STRING:return this.parseStringLiteral();case Nc.NAME:switch(this.advanceLexer(),t.value){case"true":return this.node(t,{kind:Ff.BOOLEAN,value:!0});case"false":return this.node(t,{kind:Ff.BOOLEAN,value:!1});case"null":return this.node(t,{kind:Ff.NULL});default:return this.node(t,{kind:Ff.ENUM,value:t.value})}case Nc.DOLLAR:if(e)if(this.expectToken(Nc.DOLLAR),this._lexer.token.kind===Nc.NAME){let r=this._lexer.token.value;throw mR(this._lexer.source,t.start,`Unexpected variable "$${r}" in constant value.`)}else throw this.unexpected(t);return this.parseVariable();default:throw this.unexpected()}}parseConstValueLiteral(){return this.parseValueLiteral(!0)}parseStringLiteral(){let e=this._lexer.token;return this.advanceLexer(),this.node(e,{kind:Ff.STRING,value:e.value,block:e.kind===Nc.BLOCK_STRING})}parseList(e){let t=()=>this.parseValueLiteral(e);return this.node(this._lexer.token,{kind:Ff.LIST,values:this.any(Nc.BRACKET_L,t,Nc.BRACKET_R)})}parseObject(e){let t=()=>this.parseObjectField(e);return this.node(this._lexer.token,{kind:Ff.OBJECT,fields:this.any(Nc.BRACE_L,t,Nc.BRACE_R)})}parseObjectField(e){let t=this._lexer.token,r=this.parseName();return this.expectToken(Nc.COLON),this.node(t,{kind:Ff.OBJECT_FIELD,name:r,value:this.parseValueLiteral(e)})}parseDirectives(e){let t=[];for(;this.peek(Nc.AT);)t.push(this.parseDirective(e));return t}parseConstDirectives(){return this.parseDirectives(!0)}parseDirective(e){let t=this._lexer.token;return this.expectToken(Nc.AT),this.node(t,{kind:Ff.DIRECTIVE,name:this.parseName(),arguments:this.parseArguments(e)})}parseTypeReference(){let e=this._lexer.token,t;if(this.expectOptionalToken(Nc.BRACKET_L)){let r=this.parseTypeReference();this.expectToken(Nc.BRACKET_R),t=this.node(e,{kind:Ff.LIST_TYPE,type:r})}else t=this.parseNamedType();return this.expectOptionalToken(Nc.BANG)?this.node(e,{kind:Ff.NON_NULL_TYPE,type:t}):t}parseNamedType(){return this.node(this._lexer.token,{kind:Ff.NAMED_TYPE,name:this.parseName()})}peekDescription(){return this.peek(Nc.STRING)||this.peek(Nc.BLOCK_STRING)}parseDescription(){if(this.peekDescription())return this.parseStringLiteral()}parseSchemaDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("schema");let r=this.parseConstDirectives(),s=this.many(Nc.BRACE_L,this.parseOperationTypeDefinition,Nc.BRACE_R);return this.node(e,{kind:Ff.SCHEMA_DEFINITION,description:t,directives:r,operationTypes:s})}parseOperationTypeDefinition(){let e=this._lexer.token,t=this.parseOperationType();this.expectToken(Nc.COLON);let r=this.parseNamedType();return this.node(e,{kind:Ff.OPERATION_TYPE_DEFINITION,operation:t,type:r})}parseScalarTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("scalar");let r=this.parseName(),s=this.parseConstDirectives();return this.node(e,{kind:Ff.SCALAR_TYPE_DEFINITION,description:t,name:r,directives:s})}parseObjectTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("type");let r=this.parseName(),s=this.parseImplementsInterfaces(),a=this.parseConstDirectives(),o=this.parseFieldsDefinition();return this.node(e,{kind:Ff.OBJECT_TYPE_DEFINITION,description:t,name:r,interfaces:s,directives:a,fields:o})}parseImplementsInterfaces(){return this.expectOptionalKeyword("implements")?this.delimitedMany(Nc.AMP,this.parseNamedType):[]}parseFieldsDefinition(){return this.optionalMany(Nc.BRACE_L,this.parseFieldDefinition,Nc.BRACE_R)}parseFieldDefinition(){let e=this._lexer.token,t=this.parseDescription(),r=this.parseName(),s=this.parseArgumentDefs();this.expectToken(Nc.COLON);let a=this.parseTypeReference(),o=this.parseConstDirectives();return this.node(e,{kind:Ff.FIELD_DEFINITION,description:t,name:r,arguments:s,type:a,directives:o})}parseArgumentDefs(){return this.optionalMany(Nc.PAREN_L,this.parseInputValueDef,Nc.PAREN_R)}parseInputValueDef(){let e=this._lexer.token,t=this.parseDescription(),r=this.parseName();this.expectToken(Nc.COLON);let s=this.parseTypeReference(),a;this.expectOptionalToken(Nc.EQUALS)&&(a=this.parseConstValueLiteral());let o=this.parseConstDirectives();return this.node(e,{kind:Ff.INPUT_VALUE_DEFINITION,description:t,name:r,type:s,defaultValue:a,directives:o})}parseInterfaceTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("interface");let r=this.parseName(),s=this.parseImplementsInterfaces(),a=this.parseConstDirectives(),o=this.parseFieldsDefinition();return this.node(e,{kind:Ff.INTERFACE_TYPE_DEFINITION,description:t,name:r,interfaces:s,directives:a,fields:o})}parseUnionTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("union");let r=this.parseName(),s=this.parseConstDirectives(),a=this.parseUnionMemberTypes();return this.node(e,{kind:Ff.UNION_TYPE_DEFINITION,description:t,name:r,directives:s,types:a})}parseUnionMemberTypes(){return this.expectOptionalToken(Nc.EQUALS)?this.delimitedMany(Nc.PIPE,this.parseNamedType):[]}parseEnumTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("enum");let r=this.parseName(),s=this.parseConstDirectives(),a=this.parseEnumValuesDefinition();return this.node(e,{kind:Ff.ENUM_TYPE_DEFINITION,description:t,name:r,directives:s,values:a})}parseEnumValuesDefinition(){return this.optionalMany(Nc.BRACE_L,this.parseEnumValueDefinition,Nc.BRACE_R)}parseEnumValueDefinition(){let e=this._lexer.token,t=this.parseDescription(),r=this.parseEnumValueName(),s=this.parseConstDirectives();return this.node(e,{kind:Ff.ENUM_VALUE_DEFINITION,description:t,name:r,directives:s})}parseEnumValueName(){if(this._lexer.token.value==="true"||this._lexer.token.value==="false"||this._lexer.token.value==="null")throw mR(this._lexer.source,this._lexer.token.start,`${lCt(this._lexer.token)} is reserved and cannot be used for an enum value.`);return this.parseName()}parseInputObjectTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("input");let r=this.parseName(),s=this.parseConstDirectives(),a=this.parseInputFieldsDefinition();return this.node(e,{kind:Ff.INPUT_OBJECT_TYPE_DEFINITION,description:t,name:r,directives:s,fields:a})}parseInputFieldsDefinition(){return this.optionalMany(Nc.BRACE_L,this.parseInputValueDef,Nc.BRACE_R)}parseTypeSystemExtension(){let e=this._lexer.lookahead();if(e.kind===Nc.NAME)switch(e.value){case"schema":return this.parseSchemaExtension();case"scalar":return this.parseScalarTypeExtension();case"type":return this.parseObjectTypeExtension();case"interface":return this.parseInterfaceTypeExtension();case"union":return this.parseUnionTypeExtension();case"enum":return this.parseEnumTypeExtension();case"input":return this.parseInputObjectTypeExtension()}throw this.unexpected(e)}parseSchemaExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("schema");let t=this.parseConstDirectives(),r=this.optionalMany(Nc.BRACE_L,this.parseOperationTypeDefinition,Nc.BRACE_R);if(t.length===0&&r.length===0)throw this.unexpected();return this.node(e,{kind:Ff.SCHEMA_EXTENSION,directives:t,operationTypes:r})}parseScalarTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("scalar");let t=this.parseName(),r=this.parseConstDirectives();if(r.length===0)throw this.unexpected();return this.node(e,{kind:Ff.SCALAR_TYPE_EXTENSION,name:t,directives:r})}parseObjectTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("type");let t=this.parseName(),r=this.parseImplementsInterfaces(),s=this.parseConstDirectives(),a=this.parseFieldsDefinition();if(r.length===0&&s.length===0&&a.length===0)throw this.unexpected();return this.node(e,{kind:Ff.OBJECT_TYPE_EXTENSION,name:t,interfaces:r,directives:s,fields:a})}parseInterfaceTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("interface");let t=this.parseName(),r=this.parseImplementsInterfaces(),s=this.parseConstDirectives(),a=this.parseFieldsDefinition();if(r.length===0&&s.length===0&&a.length===0)throw this.unexpected();return this.node(e,{kind:Ff.INTERFACE_TYPE_EXTENSION,name:t,interfaces:r,directives:s,fields:a})}parseUnionTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("union");let t=this.parseName(),r=this.parseConstDirectives(),s=this.parseUnionMemberTypes();if(r.length===0&&s.length===0)throw this.unexpected();return this.node(e,{kind:Ff.UNION_TYPE_EXTENSION,name:t,directives:r,types:s})}parseEnumTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("enum");let t=this.parseName(),r=this.parseConstDirectives(),s=this.parseEnumValuesDefinition();if(r.length===0&&s.length===0)throw this.unexpected();return this.node(e,{kind:Ff.ENUM_TYPE_EXTENSION,name:t,directives:r,values:s})}parseInputObjectTypeExtension(){let e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("input");let t=this.parseName(),r=this.parseConstDirectives(),s=this.parseInputFieldsDefinition();if(r.length===0&&s.length===0)throw this.unexpected();return this.node(e,{kind:Ff.INPUT_OBJECT_TYPE_EXTENSION,name:t,directives:r,fields:s})}parseDirectiveDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword("directive"),this.expectToken(Nc.AT);let r=this.parseName(),s=this.parseArgumentDefs(),a=this.expectOptionalKeyword("repeatable");this.expectKeyword("on");let o=this.parseDirectiveLocations();return this.node(e,{kind:Ff.DIRECTIVE_DEFINITION,description:t,name:r,arguments:s,repeatable:a,locations:o})}parseDirectiveLocations(){return this.delimitedMany(Nc.PIPE,this.parseDirectiveLocation)}parseDirectiveLocation(){let e=this._lexer.token,t=this.parseName();if(Object.prototype.hasOwnProperty.call(Vgr,t.value))return t;throw this.unexpected(e)}node(e,t){return this._options.noLocation!==!0&&(t.loc=new Pta(e,this._lexer.lastToken,this._lexer.source)),t}peek(e){return this._lexer.token.kind===e}expectToken(e){let t=this._lexer.token;if(t.kind===e)return this.advanceLexer(),t;throw mR(this._lexer.source,t.start,`Expected ${Vri(e)}, found ${lCt(t)}.`)}expectOptionalToken(e){return this._lexer.token.kind===e?(this.advanceLexer(),!0):!1}expectKeyword(e){let t=this._lexer.token;if(t.kind===Nc.NAME&&t.value===e)this.advanceLexer();else throw mR(this._lexer.source,t.start,`Expected "${e}", found ${lCt(t)}.`)}expectOptionalKeyword(e){let t=this._lexer.token;return t.kind===Nc.NAME&&t.value===e?(this.advanceLexer(),!0):!1}unexpected(e){let t=e??this._lexer.token;return mR(this._lexer.source,t.start,`Unexpected ${lCt(t)}.`)}any(e,t,r){this.expectToken(e);let s=[];for(;!this.expectOptionalToken(r);)s.push(t.call(this));return s}optionalMany(e,t,r){if(this.expectOptionalToken(e)){let s=[];do s.push(t.call(this));while(!this.expectOptionalToken(r));return s}return[]}many(e,t,r){this.expectToken(e);let s=[];do s.push(t.call(this));while(!this.expectOptionalToken(r));return s}delimitedMany(e,t){this.expectOptionalToken(e);let r=[];do r.push(t.call(this));while(this.expectOptionalToken(e));return r}advanceLexer(){let{maxTokens:e}=this._options,t=this._lexer.advance();if(t.kind!==Nc.EOF&&(++this._tokenCounter,e!==void 0&&this._tokenCounter>e))throw mR(this._lexer.source,t.start,`Document contains more that ${e} tokens. Parsing aborted.`)}};function lCt(e){let t=e.value;return Vri(e.kind)+(t!=null?` "${t}"`:"")}function Vri(e){return Ara(e)?`"${e}"`:e}function xra(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var kra=xra;function Gra(e){let t=[],{startToken:r,endToken:s}=e.loc;for(let a=r;a!==s;a=a.next)a.kind==="Comment"&&t.push({...a,loc:{start:a.start,end:a.end}});return t}var Fra={allowLegacyFragmentVariables:!0};function Zra(e){if(e?.name==="GraphQLError"){let{message:t,locations:[r]}=e;return kra(t,{loc:{start:r},cause:e})}return e}function Lra(e){let t;try{t=Rra(e,Fra)}catch(r){throw Zra(r)}return t.comments=Gra(t),t}var Vra={parse:Lra,astFormat:"graphql",hasPragma:Mta,locStart:vri,locEnd:Sri},Wri={graphql:qta},Wra=Cri;var aAr={};zf(aAr,{default:()=>Boa,languages:()=>Dni,options:()=>xni,parsers:()=>oAr,printers:()=>Vni});var Pra=Object.create,jgr=Object.defineProperty,Ora=Object.getOwnPropertyDescriptor,Qra=Object.getOwnPropertyNames,Mra=Object.getPrototypeOf,Hra=Object.prototype.hasOwnProperty,ini=e=>{throw TypeError(e)},xl=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),sni=(e,t)=>{for(var r in t)jgr(e,r,{get:t[r],enumerable:!0})},Yra=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of Qra(t))!Hra.call(e,a)&&a!==r&&jgr(e,a,{get:()=>t[a],enumerable:!(s=Ora(t,a))||s.enumerable});return e},$ve=(e,t,r)=>(r=e!=null?Pra(Mra(e)):{},Yra(t||!e||!e.__esModule?jgr(r,"default",{value:e,enumerable:!0}):r,e)),oni=(e,t,r)=>t.has(e)||ini("Cannot "+r),wse=(e,t,r)=>(oni(e,t,"read from private field"),r?r.call(e):t.get(e)),Xra=(e,t,r)=>t.has(e)?ini("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),Jra=(e,t,r,s)=>(oni(e,t,"write to private field"),s?s.call(e,r):t.set(e,r),r),zgr=xl((e,t)=>{"use strict";t.exports=r;function r(s){return String(s).replace(/\s+/g," ")}}),Ura=xl((e,t)=>{"use strict";t.exports=T;var r=9,s=10,a=32,o=33,g=58,p=91,f=92,m=93,y=94,B=96,v=4,k=1024;function T(fe){var pe=this.Parser,he=this.Compiler;O(pe)&&U(pe,fe),X(he)&&le(he)}function O(fe){return!!(fe&&fe.prototype&&fe.prototype.blockTokenizers)}function X(fe){return!!(fe&&fe.prototype&&fe.prototype.visitors)}function U(fe,pe){for(var he=pe||{},be=fe.prototype,Te=be.blockTokenizers,ke=be.inlineTokenizers,x=be.blockMethods,et=be.inlineMethods,Ue=Te.definition,Je=ke.reference,Xe=[],ft=-1,Gt=x.length,er;++ftv&&(NA=void 0,Vd=Zi);else{if(NA0&&(Gr=jr[we-1],Gr.contentStart===Gr.contentEnd);)we--;for(Hu=Or(In.slice(0,Gr.contentEnd));++Zi{e.isRemarkParser=t,e.isRemarkCompiler=r;function t(s){return!!(s&&s.prototype&&s.prototype.blockTokenizers)}function r(s){return!!(s&&s.prototype&&s.prototype.visitors)}}),kra=Dl((e,t)=>{var r=$ri();t.exports=B;var s=9,a=32,o=36,g=48,p=57,f=92,m=["math","math-inline"],y="math-display";function B(T){let O=this.Parser,X=this.Compiler;r.isRemarkParser(O)&&v(O,T),r.isRemarkCompiler(X)&&G(X,T)}function v(T,O){let X=T.prototype,U=X.inlineMethods;ae.locator=le,X.inlineTokenizers.math=ae,U.splice(U.indexOf("text"),0,"math");function le(ge,fe){return ge.indexOf("$",fe)}function ae(ge,fe,pe){let he=fe.length,be=!1,Te=!1,ke=0,x,et,Ue,Je,Xe,ft,Gt;if(fe.charCodeAt(ke)===f&&(Te=!0,ke++),fe.charCodeAt(ke)===o){if(ke++,Te)return pe?!0:ge(fe.slice(0,ke))({type:"text",value:"$"});if(fe.charCodeAt(ke)===o&&(be=!0,ke++),Ue=fe.charCodeAt(ke),!(Ue===a||Ue===s)){for(Je=ke;kep)&&(!be||Ue===o)){Xe=ke-1,ke++,be&&ke++,ft=ke;break}}else et===f&&(ke++,Ue=fe.charCodeAt(ke+1));ke++}if(ft!==void 0)return pe?!0:(Gt=fe.slice(Je,Xe+1),ge(fe.slice(0,ft))({type:"inlineMath",value:Gt,data:{hName:"span",hProperties:{className:m.concat(be&&O.inlineMathDouble?[y]:[])},hChildren:[{type:"text",value:Gt}]}}))}}}}function G(T){let O=T.prototype;O.visitors.inlineMath=X;function X(U){let le="$";return(U.data&&U.data.hProperties&&U.data.hProperties.className||[]).includes(y)&&(le="$$"),le+U.value+le}}}),Gra=Dl((e,t)=>{var r=$ri();t.exports=y;var s=10,a=32,o=36,g=` -`,p="$",f=2,m=["math","math-display"];function y(){let G=this.Parser,T=this.Compiler;r.isRemarkParser(G)&&B(G),r.isRemarkCompiler(T)&&v(T)}function B(G){let T=G.prototype,O=T.blockMethods,X=T.interruptParagraph,U=T.interruptList,le=T.interruptBlockquote;T.blockTokenizers.math=ae,O.splice(O.indexOf("fencedCode")+1,0,"math"),X.splice(X.indexOf("fencedCode")+1,0,["math"]),U.splice(U.indexOf("fencedCode")+1,0,["math"]),le.splice(le.indexOf("fencedCode")+1,0,["math"]);function ae(ge,fe,pe){var he=fe.length,be=0;let Te,ke,x,et,Ue,Je,Xe,ft,Gt,er,Ur;for(;beer&&fe.charCodeAt(et-1)===a;)et--;for(;et>er&&fe.charCodeAt(et-1)===o;)Gt++,et--;for(Je<=Gt&&fe.indexOf(p,er)===et&&(ft=!0,Ur=et);er<=Ur&&er-beer&&fe.charCodeAt(Ur-1)===a;)Ur--;if((!ft||er!==Ur)&&ke.push(fe.slice(er,Ur)),ft)break;be=x+1,x=fe.indexOf(g,be+1),x=x===-1?he:x}return ke=ke.join(` -`),ge(fe.slice(0,x))({type:"math",value:ke,data:{hName:"div",hProperties:{className:m.concat()},hChildren:[{type:"text",value:ke}]}})}}}}function v(G){let T=G.prototype;T.visitors.math=O;function O(X){return`$$ +`)}}function ae(fe,pe,he){fe.splice(fe.indexOf(pe),0,he)}function ge(fe,pe,he,be){for(var Te=fe.length,ke=-1;++ke{e.isRemarkParser=t,e.isRemarkCompiler=r;function t(s){return!!(s&&s.prototype&&s.prototype.blockTokenizers)}function r(s){return!!(s&&s.prototype&&s.prototype.visitors)}}),Kra=xl((e,t)=>{var r=ani();t.exports=B;var s=9,a=32,o=36,g=48,p=57,f=92,m=["math","math-inline"],y="math-display";function B(T){let O=this.Parser,X=this.Compiler;r.isRemarkParser(O)&&v(O,T),r.isRemarkCompiler(X)&&k(X,T)}function v(T,O){let X=T.prototype,U=X.inlineMethods;ae.locator=le,X.inlineTokenizers.math=ae,U.splice(U.indexOf("text"),0,"math");function le(ge,fe){return ge.indexOf("$",fe)}function ae(ge,fe,pe){let he=fe.length,be=!1,Te=!1,ke=0,x,et,Ue,Je,Xe,ft,Gt;if(fe.charCodeAt(ke)===f&&(Te=!0,ke++),fe.charCodeAt(ke)===o){if(ke++,Te)return pe?!0:ge(fe.slice(0,ke))({type:"text",value:"$"});if(fe.charCodeAt(ke)===o&&(be=!0,ke++),Ue=fe.charCodeAt(ke),!(Ue===a||Ue===s)){for(Je=ke;kep)&&(!be||Ue===o)){Xe=ke-1,ke++,be&&ke++,ft=ke;break}}else et===f&&(ke++,Ue=fe.charCodeAt(ke+1));ke++}if(ft!==void 0)return pe?!0:(Gt=fe.slice(Je,Xe+1),ge(fe.slice(0,ft))({type:"inlineMath",value:Gt,data:{hName:"span",hProperties:{className:m.concat(be&&O.inlineMathDouble?[y]:[])},hChildren:[{type:"text",value:Gt}]}}))}}}}function k(T){let O=T.prototype;O.visitors.inlineMath=X;function X(U){let le="$";return(U.data&&U.data.hProperties&&U.data.hProperties.className||[]).includes(y)&&(le="$$"),le+U.value+le}}}),jra=xl((e,t)=>{var r=ani();t.exports=y;var s=10,a=32,o=36,g=` +`,p="$",f=2,m=["math","math-display"];function y(){let k=this.Parser,T=this.Compiler;r.isRemarkParser(k)&&B(k),r.isRemarkCompiler(T)&&v(T)}function B(k){let T=k.prototype,O=T.blockMethods,X=T.interruptParagraph,U=T.interruptList,le=T.interruptBlockquote;T.blockTokenizers.math=ae,O.splice(O.indexOf("fencedCode")+1,0,"math"),X.splice(X.indexOf("fencedCode")+1,0,["math"]),U.splice(U.indexOf("fencedCode")+1,0,["math"]),le.splice(le.indexOf("fencedCode")+1,0,["math"]);function ae(ge,fe,pe){var he=fe.length,be=0;let Te,ke,x,et,Ue,Je,Xe,ft,Gt,er,Ur;for(;beer&&fe.charCodeAt(et-1)===a;)et--;for(;et>er&&fe.charCodeAt(et-1)===o;)Gt++,et--;for(Je<=Gt&&fe.indexOf(p,er)===et&&(ft=!0,Ur=et);er<=Ur&&er-beer&&fe.charCodeAt(Ur-1)===a;)Ur--;if((!ft||er!==Ur)&&ke.push(fe.slice(er,Ur)),ft)break;be=x+1,x=fe.indexOf(g,be+1),x=x===-1?he:x}return ke=ke.join(` +`),ge(fe.slice(0,x))({type:"math",value:ke,data:{hName:"div",hProperties:{className:m.concat()},hChildren:[{type:"text",value:ke}]}})}}}}function v(k){let T=k.prototype;T.visitors.math=O;function O(X){return`$$ `+X.value+` -$$`}}}),Fra=Dl((e,t)=>{var r=kra(),s=Gra();t.exports=a;function a(o){var g=o||{};s.call(this,g),r.call(this,g)}}),zve=Dl((e,t)=>{t.exports=s;var r=Object.prototype.hasOwnProperty;function s(){for(var a={},o=0;o{typeof Object.create=="function"?t.exports=function(r,s){s&&(r.super_=s,r.prototype=Object.create(s.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}))}:t.exports=function(r,s){if(s){r.super_=s;var a=function(){};a.prototype=s.prototype,r.prototype=new a,r.prototype.constructor=r}}}),Lra=Dl((e,t)=>{"use strict";var r=zve(),s=Zra();t.exports=a;function a(o){var g,p,f;s(y,o),s(m,y),g=y.prototype;for(p in g)f=g[p],f&&typeof f=="object"&&(g[p]="concat"in f?f.concat():r(f));return y;function m(B){return o.apply(this,B)}function y(){return this instanceof y?o.apply(this,arguments):new m(arguments)}}}),Vra=Dl((e,t)=>{"use strict";t.exports=r;function r(s,a,o){return g;function g(){var p=o||this,f=p[s];return p[s]=!a,m;function m(){p[s]=f}}}}),Wra=Dl((e,t)=>{"use strict";t.exports=r;function r(s){for(var a=String(s),o=[],g=/\r?\n|\r/g;g.exec(a);)o.push(g.lastIndex);return o.push(a.length+1),{toPoint:p,toPosition:p,toOffset:f};function p(m){var y=-1;if(m>-1&&mm)return{line:y+1,column:m-(o[y-1]||0)+1,offset:m}}return{}}function f(m){var y=m&&m.line,B=m&&m.column,v;return!isNaN(y)&&!isNaN(B)&&y-1 in o&&(v=(o[y-2]||0)+B-1||0),v>-1&&v{"use strict";t.exports=s;var r="\\";function s(a,o){return g;function g(p){for(var f=0,m=p.indexOf(r),y=a[o],B=[],v;m!==-1;)B.push(p.slice(f,m)),f=m+1,v=p.charAt(f),(!v||y.indexOf(v)===-1)&&B.push(r),m=p.indexOf(r,f+1);return B.push(p.slice(f)),B.join("")}}}),Ora=Dl((e,t)=>{t.exports={AElig:"\xC6",AMP:"&",Aacute:"\xC1",Acirc:"\xC2",Agrave:"\xC0",Aring:"\xC5",Atilde:"\xC3",Auml:"\xC4",COPY:"\xA9",Ccedil:"\xC7",ETH:"\xD0",Eacute:"\xC9",Ecirc:"\xCA",Egrave:"\xC8",Euml:"\xCB",GT:">",Iacute:"\xCD",Icirc:"\xCE",Igrave:"\xCC",Iuml:"\xCF",LT:"<",Ntilde:"\xD1",Oacute:"\xD3",Ocirc:"\xD4",Ograve:"\xD2",Oslash:"\xD8",Otilde:"\xD5",Ouml:"\xD6",QUOT:'"',REG:"\xAE",THORN:"\xDE",Uacute:"\xDA",Ucirc:"\xDB",Ugrave:"\xD9",Uuml:"\xDC",Yacute:"\xDD",aacute:"\xE1",acirc:"\xE2",acute:"\xB4",aelig:"\xE6",agrave:"\xE0",amp:"&",aring:"\xE5",atilde:"\xE3",auml:"\xE4",brvbar:"\xA6",ccedil:"\xE7",cedil:"\xB8",cent:"\xA2",copy:"\xA9",curren:"\xA4",deg:"\xB0",divide:"\xF7",eacute:"\xE9",ecirc:"\xEA",egrave:"\xE8",eth:"\xF0",euml:"\xEB",frac12:"\xBD",frac14:"\xBC",frac34:"\xBE",gt:">",iacute:"\xED",icirc:"\xEE",iexcl:"\xA1",igrave:"\xEC",iquest:"\xBF",iuml:"\xEF",laquo:"\xAB",lt:"<",macr:"\xAF",micro:"\xB5",middot:"\xB7",nbsp:"\xA0",not:"\xAC",ntilde:"\xF1",oacute:"\xF3",ocirc:"\xF4",ograve:"\xF2",ordf:"\xAA",ordm:"\xBA",oslash:"\xF8",otilde:"\xF5",ouml:"\xF6",para:"\xB6",plusmn:"\xB1",pound:"\xA3",quot:'"',raquo:"\xBB",reg:"\xAE",sect:"\xA7",shy:"\xAD",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",szlig:"\xDF",thorn:"\xFE",times:"\xD7",uacute:"\xFA",ucirc:"\xFB",ugrave:"\xF9",uml:"\xA8",uuml:"\xFC",yacute:"\xFD",yen:"\xA5",yuml:"\xFF"}}),Mra=Dl((e,t)=>{t.exports={0:"\uFFFD",128:"\u20AC",130:"\u201A",131:"\u0192",132:"\u201E",133:"\u2026",134:"\u2020",135:"\u2021",136:"\u02C6",137:"\u2030",138:"\u0160",139:"\u2039",140:"\u0152",142:"\u017D",145:"\u2018",146:"\u2019",147:"\u201C",148:"\u201D",149:"\u2022",150:"\u2013",151:"\u2014",152:"\u02DC",153:"\u2122",154:"\u0161",155:"\u203A",156:"\u0153",158:"\u017E",159:"\u0178"}}),qve=Dl((e,t)=>{"use strict";t.exports=r;function r(s){var a=typeof s=="string"?s.charCodeAt(0):s;return a>=48&&a<=57}}),Qra=Dl((e,t)=>{"use strict";t.exports=r;function r(s){var a=typeof s=="string"?s.charCodeAt(0):s;return a>=97&&a<=102||a>=65&&a<=70||a>=48&&a<=57}}),UQe=Dl((e,t)=>{"use strict";t.exports=r;function r(s){var a=typeof s=="string"?s.charCodeAt(0):s;return a>=97&&a<=122||a>=65&&a<=90}}),Yra=Dl((e,t)=>{"use strict";var r=UQe(),s=qve();t.exports=a;function a(o){return r(o)||s(o)}}),Hra=Dl((e,t)=>{t.exports={AEli:"\xC6",AElig:"\xC6",AM:"&",AMP:"&",Aacut:"\xC1",Aacute:"\xC1",Abreve:"\u0102",Acir:"\xC2",Acirc:"\xC2",Acy:"\u0410",Afr:"\u{1D504}",Agrav:"\xC0",Agrave:"\xC0",Alpha:"\u0391",Amacr:"\u0100",And:"\u2A53",Aogon:"\u0104",Aopf:"\u{1D538}",ApplyFunction:"\u2061",Arin:"\xC5",Aring:"\xC5",Ascr:"\u{1D49C}",Assign:"\u2254",Atild:"\xC3",Atilde:"\xC3",Aum:"\xC4",Auml:"\xC4",Backslash:"\u2216",Barv:"\u2AE7",Barwed:"\u2306",Bcy:"\u0411",Because:"\u2235",Bernoullis:"\u212C",Beta:"\u0392",Bfr:"\u{1D505}",Bopf:"\u{1D539}",Breve:"\u02D8",Bscr:"\u212C",Bumpeq:"\u224E",CHcy:"\u0427",COP:"\xA9",COPY:"\xA9",Cacute:"\u0106",Cap:"\u22D2",CapitalDifferentialD:"\u2145",Cayleys:"\u212D",Ccaron:"\u010C",Ccedi:"\xC7",Ccedil:"\xC7",Ccirc:"\u0108",Cconint:"\u2230",Cdot:"\u010A",Cedilla:"\xB8",CenterDot:"\xB7",Cfr:"\u212D",Chi:"\u03A7",CircleDot:"\u2299",CircleMinus:"\u2296",CirclePlus:"\u2295",CircleTimes:"\u2297",ClockwiseContourIntegral:"\u2232",CloseCurlyDoubleQuote:"\u201D",CloseCurlyQuote:"\u2019",Colon:"\u2237",Colone:"\u2A74",Congruent:"\u2261",Conint:"\u222F",ContourIntegral:"\u222E",Copf:"\u2102",Coproduct:"\u2210",CounterClockwiseContourIntegral:"\u2233",Cross:"\u2A2F",Cscr:"\u{1D49E}",Cup:"\u22D3",CupCap:"\u224D",DD:"\u2145",DDotrahd:"\u2911",DJcy:"\u0402",DScy:"\u0405",DZcy:"\u040F",Dagger:"\u2021",Darr:"\u21A1",Dashv:"\u2AE4",Dcaron:"\u010E",Dcy:"\u0414",Del:"\u2207",Delta:"\u0394",Dfr:"\u{1D507}",DiacriticalAcute:"\xB4",DiacriticalDot:"\u02D9",DiacriticalDoubleAcute:"\u02DD",DiacriticalGrave:"`",DiacriticalTilde:"\u02DC",Diamond:"\u22C4",DifferentialD:"\u2146",Dopf:"\u{1D53B}",Dot:"\xA8",DotDot:"\u20DC",DotEqual:"\u2250",DoubleContourIntegral:"\u222F",DoubleDot:"\xA8",DoubleDownArrow:"\u21D3",DoubleLeftArrow:"\u21D0",DoubleLeftRightArrow:"\u21D4",DoubleLeftTee:"\u2AE4",DoubleLongLeftArrow:"\u27F8",DoubleLongLeftRightArrow:"\u27FA",DoubleLongRightArrow:"\u27F9",DoubleRightArrow:"\u21D2",DoubleRightTee:"\u22A8",DoubleUpArrow:"\u21D1",DoubleUpDownArrow:"\u21D5",DoubleVerticalBar:"\u2225",DownArrow:"\u2193",DownArrowBar:"\u2913",DownArrowUpArrow:"\u21F5",DownBreve:"\u0311",DownLeftRightVector:"\u2950",DownLeftTeeVector:"\u295E",DownLeftVector:"\u21BD",DownLeftVectorBar:"\u2956",DownRightTeeVector:"\u295F",DownRightVector:"\u21C1",DownRightVectorBar:"\u2957",DownTee:"\u22A4",DownTeeArrow:"\u21A7",Downarrow:"\u21D3",Dscr:"\u{1D49F}",Dstrok:"\u0110",ENG:"\u014A",ET:"\xD0",ETH:"\xD0",Eacut:"\xC9",Eacute:"\xC9",Ecaron:"\u011A",Ecir:"\xCA",Ecirc:"\xCA",Ecy:"\u042D",Edot:"\u0116",Efr:"\u{1D508}",Egrav:"\xC8",Egrave:"\xC8",Element:"\u2208",Emacr:"\u0112",EmptySmallSquare:"\u25FB",EmptyVerySmallSquare:"\u25AB",Eogon:"\u0118",Eopf:"\u{1D53C}",Epsilon:"\u0395",Equal:"\u2A75",EqualTilde:"\u2242",Equilibrium:"\u21CC",Escr:"\u2130",Esim:"\u2A73",Eta:"\u0397",Eum:"\xCB",Euml:"\xCB",Exists:"\u2203",ExponentialE:"\u2147",Fcy:"\u0424",Ffr:"\u{1D509}",FilledSmallSquare:"\u25FC",FilledVerySmallSquare:"\u25AA",Fopf:"\u{1D53D}",ForAll:"\u2200",Fouriertrf:"\u2131",Fscr:"\u2131",GJcy:"\u0403",G:">",GT:">",Gamma:"\u0393",Gammad:"\u03DC",Gbreve:"\u011E",Gcedil:"\u0122",Gcirc:"\u011C",Gcy:"\u0413",Gdot:"\u0120",Gfr:"\u{1D50A}",Gg:"\u22D9",Gopf:"\u{1D53E}",GreaterEqual:"\u2265",GreaterEqualLess:"\u22DB",GreaterFullEqual:"\u2267",GreaterGreater:"\u2AA2",GreaterLess:"\u2277",GreaterSlantEqual:"\u2A7E",GreaterTilde:"\u2273",Gscr:"\u{1D4A2}",Gt:"\u226B",HARDcy:"\u042A",Hacek:"\u02C7",Hat:"^",Hcirc:"\u0124",Hfr:"\u210C",HilbertSpace:"\u210B",Hopf:"\u210D",HorizontalLine:"\u2500",Hscr:"\u210B",Hstrok:"\u0126",HumpDownHump:"\u224E",HumpEqual:"\u224F",IEcy:"\u0415",IJlig:"\u0132",IOcy:"\u0401",Iacut:"\xCD",Iacute:"\xCD",Icir:"\xCE",Icirc:"\xCE",Icy:"\u0418",Idot:"\u0130",Ifr:"\u2111",Igrav:"\xCC",Igrave:"\xCC",Im:"\u2111",Imacr:"\u012A",ImaginaryI:"\u2148",Implies:"\u21D2",Int:"\u222C",Integral:"\u222B",Intersection:"\u22C2",InvisibleComma:"\u2063",InvisibleTimes:"\u2062",Iogon:"\u012E",Iopf:"\u{1D540}",Iota:"\u0399",Iscr:"\u2110",Itilde:"\u0128",Iukcy:"\u0406",Ium:"\xCF",Iuml:"\xCF",Jcirc:"\u0134",Jcy:"\u0419",Jfr:"\u{1D50D}",Jopf:"\u{1D541}",Jscr:"\u{1D4A5}",Jsercy:"\u0408",Jukcy:"\u0404",KHcy:"\u0425",KJcy:"\u040C",Kappa:"\u039A",Kcedil:"\u0136",Kcy:"\u041A",Kfr:"\u{1D50E}",Kopf:"\u{1D542}",Kscr:"\u{1D4A6}",LJcy:"\u0409",L:"<",LT:"<",Lacute:"\u0139",Lambda:"\u039B",Lang:"\u27EA",Laplacetrf:"\u2112",Larr:"\u219E",Lcaron:"\u013D",Lcedil:"\u013B",Lcy:"\u041B",LeftAngleBracket:"\u27E8",LeftArrow:"\u2190",LeftArrowBar:"\u21E4",LeftArrowRightArrow:"\u21C6",LeftCeiling:"\u2308",LeftDoubleBracket:"\u27E6",LeftDownTeeVector:"\u2961",LeftDownVector:"\u21C3",LeftDownVectorBar:"\u2959",LeftFloor:"\u230A",LeftRightArrow:"\u2194",LeftRightVector:"\u294E",LeftTee:"\u22A3",LeftTeeArrow:"\u21A4",LeftTeeVector:"\u295A",LeftTriangle:"\u22B2",LeftTriangleBar:"\u29CF",LeftTriangleEqual:"\u22B4",LeftUpDownVector:"\u2951",LeftUpTeeVector:"\u2960",LeftUpVector:"\u21BF",LeftUpVectorBar:"\u2958",LeftVector:"\u21BC",LeftVectorBar:"\u2952",Leftarrow:"\u21D0",Leftrightarrow:"\u21D4",LessEqualGreater:"\u22DA",LessFullEqual:"\u2266",LessGreater:"\u2276",LessLess:"\u2AA1",LessSlantEqual:"\u2A7D",LessTilde:"\u2272",Lfr:"\u{1D50F}",Ll:"\u22D8",Lleftarrow:"\u21DA",Lmidot:"\u013F",LongLeftArrow:"\u27F5",LongLeftRightArrow:"\u27F7",LongRightArrow:"\u27F6",Longleftarrow:"\u27F8",Longleftrightarrow:"\u27FA",Longrightarrow:"\u27F9",Lopf:"\u{1D543}",LowerLeftArrow:"\u2199",LowerRightArrow:"\u2198",Lscr:"\u2112",Lsh:"\u21B0",Lstrok:"\u0141",Lt:"\u226A",Map:"\u2905",Mcy:"\u041C",MediumSpace:"\u205F",Mellintrf:"\u2133",Mfr:"\u{1D510}",MinusPlus:"\u2213",Mopf:"\u{1D544}",Mscr:"\u2133",Mu:"\u039C",NJcy:"\u040A",Nacute:"\u0143",Ncaron:"\u0147",Ncedil:"\u0145",Ncy:"\u041D",NegativeMediumSpace:"\u200B",NegativeThickSpace:"\u200B",NegativeThinSpace:"\u200B",NegativeVeryThinSpace:"\u200B",NestedGreaterGreater:"\u226B",NestedLessLess:"\u226A",NewLine:` -`,Nfr:"\u{1D511}",NoBreak:"\u2060",NonBreakingSpace:"\xA0",Nopf:"\u2115",Not:"\u2AEC",NotCongruent:"\u2262",NotCupCap:"\u226D",NotDoubleVerticalBar:"\u2226",NotElement:"\u2209",NotEqual:"\u2260",NotEqualTilde:"\u2242\u0338",NotExists:"\u2204",NotGreater:"\u226F",NotGreaterEqual:"\u2271",NotGreaterFullEqual:"\u2267\u0338",NotGreaterGreater:"\u226B\u0338",NotGreaterLess:"\u2279",NotGreaterSlantEqual:"\u2A7E\u0338",NotGreaterTilde:"\u2275",NotHumpDownHump:"\u224E\u0338",NotHumpEqual:"\u224F\u0338",NotLeftTriangle:"\u22EA",NotLeftTriangleBar:"\u29CF\u0338",NotLeftTriangleEqual:"\u22EC",NotLess:"\u226E",NotLessEqual:"\u2270",NotLessGreater:"\u2278",NotLessLess:"\u226A\u0338",NotLessSlantEqual:"\u2A7D\u0338",NotLessTilde:"\u2274",NotNestedGreaterGreater:"\u2AA2\u0338",NotNestedLessLess:"\u2AA1\u0338",NotPrecedes:"\u2280",NotPrecedesEqual:"\u2AAF\u0338",NotPrecedesSlantEqual:"\u22E0",NotReverseElement:"\u220C",NotRightTriangle:"\u22EB",NotRightTriangleBar:"\u29D0\u0338",NotRightTriangleEqual:"\u22ED",NotSquareSubset:"\u228F\u0338",NotSquareSubsetEqual:"\u22E2",NotSquareSuperset:"\u2290\u0338",NotSquareSupersetEqual:"\u22E3",NotSubset:"\u2282\u20D2",NotSubsetEqual:"\u2288",NotSucceeds:"\u2281",NotSucceedsEqual:"\u2AB0\u0338",NotSucceedsSlantEqual:"\u22E1",NotSucceedsTilde:"\u227F\u0338",NotSuperset:"\u2283\u20D2",NotSupersetEqual:"\u2289",NotTilde:"\u2241",NotTildeEqual:"\u2244",NotTildeFullEqual:"\u2247",NotTildeTilde:"\u2249",NotVerticalBar:"\u2224",Nscr:"\u{1D4A9}",Ntild:"\xD1",Ntilde:"\xD1",Nu:"\u039D",OElig:"\u0152",Oacut:"\xD3",Oacute:"\xD3",Ocir:"\xD4",Ocirc:"\xD4",Ocy:"\u041E",Odblac:"\u0150",Ofr:"\u{1D512}",Ograv:"\xD2",Ograve:"\xD2",Omacr:"\u014C",Omega:"\u03A9",Omicron:"\u039F",Oopf:"\u{1D546}",OpenCurlyDoubleQuote:"\u201C",OpenCurlyQuote:"\u2018",Or:"\u2A54",Oscr:"\u{1D4AA}",Oslas:"\xD8",Oslash:"\xD8",Otild:"\xD5",Otilde:"\xD5",Otimes:"\u2A37",Oum:"\xD6",Ouml:"\xD6",OverBar:"\u203E",OverBrace:"\u23DE",OverBracket:"\u23B4",OverParenthesis:"\u23DC",PartialD:"\u2202",Pcy:"\u041F",Pfr:"\u{1D513}",Phi:"\u03A6",Pi:"\u03A0",PlusMinus:"\xB1",Poincareplane:"\u210C",Popf:"\u2119",Pr:"\u2ABB",Precedes:"\u227A",PrecedesEqual:"\u2AAF",PrecedesSlantEqual:"\u227C",PrecedesTilde:"\u227E",Prime:"\u2033",Product:"\u220F",Proportion:"\u2237",Proportional:"\u221D",Pscr:"\u{1D4AB}",Psi:"\u03A8",QUO:'"',QUOT:'"',Qfr:"\u{1D514}",Qopf:"\u211A",Qscr:"\u{1D4AC}",RBarr:"\u2910",RE:"\xAE",REG:"\xAE",Racute:"\u0154",Rang:"\u27EB",Rarr:"\u21A0",Rarrtl:"\u2916",Rcaron:"\u0158",Rcedil:"\u0156",Rcy:"\u0420",Re:"\u211C",ReverseElement:"\u220B",ReverseEquilibrium:"\u21CB",ReverseUpEquilibrium:"\u296F",Rfr:"\u211C",Rho:"\u03A1",RightAngleBracket:"\u27E9",RightArrow:"\u2192",RightArrowBar:"\u21E5",RightArrowLeftArrow:"\u21C4",RightCeiling:"\u2309",RightDoubleBracket:"\u27E7",RightDownTeeVector:"\u295D",RightDownVector:"\u21C2",RightDownVectorBar:"\u2955",RightFloor:"\u230B",RightTee:"\u22A2",RightTeeArrow:"\u21A6",RightTeeVector:"\u295B",RightTriangle:"\u22B3",RightTriangleBar:"\u29D0",RightTriangleEqual:"\u22B5",RightUpDownVector:"\u294F",RightUpTeeVector:"\u295C",RightUpVector:"\u21BE",RightUpVectorBar:"\u2954",RightVector:"\u21C0",RightVectorBar:"\u2953",Rightarrow:"\u21D2",Ropf:"\u211D",RoundImplies:"\u2970",Rrightarrow:"\u21DB",Rscr:"\u211B",Rsh:"\u21B1",RuleDelayed:"\u29F4",SHCHcy:"\u0429",SHcy:"\u0428",SOFTcy:"\u042C",Sacute:"\u015A",Sc:"\u2ABC",Scaron:"\u0160",Scedil:"\u015E",Scirc:"\u015C",Scy:"\u0421",Sfr:"\u{1D516}",ShortDownArrow:"\u2193",ShortLeftArrow:"\u2190",ShortRightArrow:"\u2192",ShortUpArrow:"\u2191",Sigma:"\u03A3",SmallCircle:"\u2218",Sopf:"\u{1D54A}",Sqrt:"\u221A",Square:"\u25A1",SquareIntersection:"\u2293",SquareSubset:"\u228F",SquareSubsetEqual:"\u2291",SquareSuperset:"\u2290",SquareSupersetEqual:"\u2292",SquareUnion:"\u2294",Sscr:"\u{1D4AE}",Star:"\u22C6",Sub:"\u22D0",Subset:"\u22D0",SubsetEqual:"\u2286",Succeeds:"\u227B",SucceedsEqual:"\u2AB0",SucceedsSlantEqual:"\u227D",SucceedsTilde:"\u227F",SuchThat:"\u220B",Sum:"\u2211",Sup:"\u22D1",Superset:"\u2283",SupersetEqual:"\u2287",Supset:"\u22D1",THOR:"\xDE",THORN:"\xDE",TRADE:"\u2122",TSHcy:"\u040B",TScy:"\u0426",Tab:" ",Tau:"\u03A4",Tcaron:"\u0164",Tcedil:"\u0162",Tcy:"\u0422",Tfr:"\u{1D517}",Therefore:"\u2234",Theta:"\u0398",ThickSpace:"\u205F\u200A",ThinSpace:"\u2009",Tilde:"\u223C",TildeEqual:"\u2243",TildeFullEqual:"\u2245",TildeTilde:"\u2248",Topf:"\u{1D54B}",TripleDot:"\u20DB",Tscr:"\u{1D4AF}",Tstrok:"\u0166",Uacut:"\xDA",Uacute:"\xDA",Uarr:"\u219F",Uarrocir:"\u2949",Ubrcy:"\u040E",Ubreve:"\u016C",Ucir:"\xDB",Ucirc:"\xDB",Ucy:"\u0423",Udblac:"\u0170",Ufr:"\u{1D518}",Ugrav:"\xD9",Ugrave:"\xD9",Umacr:"\u016A",UnderBar:"_",UnderBrace:"\u23DF",UnderBracket:"\u23B5",UnderParenthesis:"\u23DD",Union:"\u22C3",UnionPlus:"\u228E",Uogon:"\u0172",Uopf:"\u{1D54C}",UpArrow:"\u2191",UpArrowBar:"\u2912",UpArrowDownArrow:"\u21C5",UpDownArrow:"\u2195",UpEquilibrium:"\u296E",UpTee:"\u22A5",UpTeeArrow:"\u21A5",Uparrow:"\u21D1",Updownarrow:"\u21D5",UpperLeftArrow:"\u2196",UpperRightArrow:"\u2197",Upsi:"\u03D2",Upsilon:"\u03A5",Uring:"\u016E",Uscr:"\u{1D4B0}",Utilde:"\u0168",Uum:"\xDC",Uuml:"\xDC",VDash:"\u22AB",Vbar:"\u2AEB",Vcy:"\u0412",Vdash:"\u22A9",Vdashl:"\u2AE6",Vee:"\u22C1",Verbar:"\u2016",Vert:"\u2016",VerticalBar:"\u2223",VerticalLine:"|",VerticalSeparator:"\u2758",VerticalTilde:"\u2240",VeryThinSpace:"\u200A",Vfr:"\u{1D519}",Vopf:"\u{1D54D}",Vscr:"\u{1D4B1}",Vvdash:"\u22AA",Wcirc:"\u0174",Wedge:"\u22C0",Wfr:"\u{1D51A}",Wopf:"\u{1D54E}",Wscr:"\u{1D4B2}",Xfr:"\u{1D51B}",Xi:"\u039E",Xopf:"\u{1D54F}",Xscr:"\u{1D4B3}",YAcy:"\u042F",YIcy:"\u0407",YUcy:"\u042E",Yacut:"\xDD",Yacute:"\xDD",Ycirc:"\u0176",Ycy:"\u042B",Yfr:"\u{1D51C}",Yopf:"\u{1D550}",Yscr:"\u{1D4B4}",Yuml:"\u0178",ZHcy:"\u0416",Zacute:"\u0179",Zcaron:"\u017D",Zcy:"\u0417",Zdot:"\u017B",ZeroWidthSpace:"\u200B",Zeta:"\u0396",Zfr:"\u2128",Zopf:"\u2124",Zscr:"\u{1D4B5}",aacut:"\xE1",aacute:"\xE1",abreve:"\u0103",ac:"\u223E",acE:"\u223E\u0333",acd:"\u223F",acir:"\xE2",acirc:"\xE2",acut:"\xB4",acute:"\xB4",acy:"\u0430",aeli:"\xE6",aelig:"\xE6",af:"\u2061",afr:"\u{1D51E}",agrav:"\xE0",agrave:"\xE0",alefsym:"\u2135",aleph:"\u2135",alpha:"\u03B1",amacr:"\u0101",amalg:"\u2A3F",am:"&",amp:"&",and:"\u2227",andand:"\u2A55",andd:"\u2A5C",andslope:"\u2A58",andv:"\u2A5A",ang:"\u2220",ange:"\u29A4",angle:"\u2220",angmsd:"\u2221",angmsdaa:"\u29A8",angmsdab:"\u29A9",angmsdac:"\u29AA",angmsdad:"\u29AB",angmsdae:"\u29AC",angmsdaf:"\u29AD",angmsdag:"\u29AE",angmsdah:"\u29AF",angrt:"\u221F",angrtvb:"\u22BE",angrtvbd:"\u299D",angsph:"\u2222",angst:"\xC5",angzarr:"\u237C",aogon:"\u0105",aopf:"\u{1D552}",ap:"\u2248",apE:"\u2A70",apacir:"\u2A6F",ape:"\u224A",apid:"\u224B",apos:"'",approx:"\u2248",approxeq:"\u224A",arin:"\xE5",aring:"\xE5",ascr:"\u{1D4B6}",ast:"*",asymp:"\u2248",asympeq:"\u224D",atild:"\xE3",atilde:"\xE3",aum:"\xE4",auml:"\xE4",awconint:"\u2233",awint:"\u2A11",bNot:"\u2AED",backcong:"\u224C",backepsilon:"\u03F6",backprime:"\u2035",backsim:"\u223D",backsimeq:"\u22CD",barvee:"\u22BD",barwed:"\u2305",barwedge:"\u2305",bbrk:"\u23B5",bbrktbrk:"\u23B6",bcong:"\u224C",bcy:"\u0431",bdquo:"\u201E",becaus:"\u2235",because:"\u2235",bemptyv:"\u29B0",bepsi:"\u03F6",bernou:"\u212C",beta:"\u03B2",beth:"\u2136",between:"\u226C",bfr:"\u{1D51F}",bigcap:"\u22C2",bigcirc:"\u25EF",bigcup:"\u22C3",bigodot:"\u2A00",bigoplus:"\u2A01",bigotimes:"\u2A02",bigsqcup:"\u2A06",bigstar:"\u2605",bigtriangledown:"\u25BD",bigtriangleup:"\u25B3",biguplus:"\u2A04",bigvee:"\u22C1",bigwedge:"\u22C0",bkarow:"\u290D",blacklozenge:"\u29EB",blacksquare:"\u25AA",blacktriangle:"\u25B4",blacktriangledown:"\u25BE",blacktriangleleft:"\u25C2",blacktriangleright:"\u25B8",blank:"\u2423",blk12:"\u2592",blk14:"\u2591",blk34:"\u2593",block:"\u2588",bne:"=\u20E5",bnequiv:"\u2261\u20E5",bnot:"\u2310",bopf:"\u{1D553}",bot:"\u22A5",bottom:"\u22A5",bowtie:"\u22C8",boxDL:"\u2557",boxDR:"\u2554",boxDl:"\u2556",boxDr:"\u2553",boxH:"\u2550",boxHD:"\u2566",boxHU:"\u2569",boxHd:"\u2564",boxHu:"\u2567",boxUL:"\u255D",boxUR:"\u255A",boxUl:"\u255C",boxUr:"\u2559",boxV:"\u2551",boxVH:"\u256C",boxVL:"\u2563",boxVR:"\u2560",boxVh:"\u256B",boxVl:"\u2562",boxVr:"\u255F",boxbox:"\u29C9",boxdL:"\u2555",boxdR:"\u2552",boxdl:"\u2510",boxdr:"\u250C",boxh:"\u2500",boxhD:"\u2565",boxhU:"\u2568",boxhd:"\u252C",boxhu:"\u2534",boxminus:"\u229F",boxplus:"\u229E",boxtimes:"\u22A0",boxuL:"\u255B",boxuR:"\u2558",boxul:"\u2518",boxur:"\u2514",boxv:"\u2502",boxvH:"\u256A",boxvL:"\u2561",boxvR:"\u255E",boxvh:"\u253C",boxvl:"\u2524",boxvr:"\u251C",bprime:"\u2035",breve:"\u02D8",brvba:"\xA6",brvbar:"\xA6",bscr:"\u{1D4B7}",bsemi:"\u204F",bsim:"\u223D",bsime:"\u22CD",bsol:"\\",bsolb:"\u29C5",bsolhsub:"\u27C8",bull:"\u2022",bullet:"\u2022",bump:"\u224E",bumpE:"\u2AAE",bumpe:"\u224F",bumpeq:"\u224F",cacute:"\u0107",cap:"\u2229",capand:"\u2A44",capbrcup:"\u2A49",capcap:"\u2A4B",capcup:"\u2A47",capdot:"\u2A40",caps:"\u2229\uFE00",caret:"\u2041",caron:"\u02C7",ccaps:"\u2A4D",ccaron:"\u010D",ccedi:"\xE7",ccedil:"\xE7",ccirc:"\u0109",ccups:"\u2A4C",ccupssm:"\u2A50",cdot:"\u010B",cedi:"\xB8",cedil:"\xB8",cemptyv:"\u29B2",cen:"\xA2",cent:"\xA2",centerdot:"\xB7",cfr:"\u{1D520}",chcy:"\u0447",check:"\u2713",checkmark:"\u2713",chi:"\u03C7",cir:"\u25CB",cirE:"\u29C3",circ:"\u02C6",circeq:"\u2257",circlearrowleft:"\u21BA",circlearrowright:"\u21BB",circledR:"\xAE",circledS:"\u24C8",circledast:"\u229B",circledcirc:"\u229A",circleddash:"\u229D",cire:"\u2257",cirfnint:"\u2A10",cirmid:"\u2AEF",cirscir:"\u29C2",clubs:"\u2663",clubsuit:"\u2663",colon:":",colone:"\u2254",coloneq:"\u2254",comma:",",commat:"@",comp:"\u2201",compfn:"\u2218",complement:"\u2201",complexes:"\u2102",cong:"\u2245",congdot:"\u2A6D",conint:"\u222E",copf:"\u{1D554}",coprod:"\u2210",cop:"\xA9",copy:"\xA9",copysr:"\u2117",crarr:"\u21B5",cross:"\u2717",cscr:"\u{1D4B8}",csub:"\u2ACF",csube:"\u2AD1",csup:"\u2AD0",csupe:"\u2AD2",ctdot:"\u22EF",cudarrl:"\u2938",cudarrr:"\u2935",cuepr:"\u22DE",cuesc:"\u22DF",cularr:"\u21B6",cularrp:"\u293D",cup:"\u222A",cupbrcap:"\u2A48",cupcap:"\u2A46",cupcup:"\u2A4A",cupdot:"\u228D",cupor:"\u2A45",cups:"\u222A\uFE00",curarr:"\u21B7",curarrm:"\u293C",curlyeqprec:"\u22DE",curlyeqsucc:"\u22DF",curlyvee:"\u22CE",curlywedge:"\u22CF",curre:"\xA4",curren:"\xA4",curvearrowleft:"\u21B6",curvearrowright:"\u21B7",cuvee:"\u22CE",cuwed:"\u22CF",cwconint:"\u2232",cwint:"\u2231",cylcty:"\u232D",dArr:"\u21D3",dHar:"\u2965",dagger:"\u2020",daleth:"\u2138",darr:"\u2193",dash:"\u2010",dashv:"\u22A3",dbkarow:"\u290F",dblac:"\u02DD",dcaron:"\u010F",dcy:"\u0434",dd:"\u2146",ddagger:"\u2021",ddarr:"\u21CA",ddotseq:"\u2A77",de:"\xB0",deg:"\xB0",delta:"\u03B4",demptyv:"\u29B1",dfisht:"\u297F",dfr:"\u{1D521}",dharl:"\u21C3",dharr:"\u21C2",diam:"\u22C4",diamond:"\u22C4",diamondsuit:"\u2666",diams:"\u2666",die:"\xA8",digamma:"\u03DD",disin:"\u22F2",div:"\xF7",divid:"\xF7",divide:"\xF7",divideontimes:"\u22C7",divonx:"\u22C7",djcy:"\u0452",dlcorn:"\u231E",dlcrop:"\u230D",dollar:"$",dopf:"\u{1D555}",dot:"\u02D9",doteq:"\u2250",doteqdot:"\u2251",dotminus:"\u2238",dotplus:"\u2214",dotsquare:"\u22A1",doublebarwedge:"\u2306",downarrow:"\u2193",downdownarrows:"\u21CA",downharpoonleft:"\u21C3",downharpoonright:"\u21C2",drbkarow:"\u2910",drcorn:"\u231F",drcrop:"\u230C",dscr:"\u{1D4B9}",dscy:"\u0455",dsol:"\u29F6",dstrok:"\u0111",dtdot:"\u22F1",dtri:"\u25BF",dtrif:"\u25BE",duarr:"\u21F5",duhar:"\u296F",dwangle:"\u29A6",dzcy:"\u045F",dzigrarr:"\u27FF",eDDot:"\u2A77",eDot:"\u2251",eacut:"\xE9",eacute:"\xE9",easter:"\u2A6E",ecaron:"\u011B",ecir:"\xEA",ecirc:"\xEA",ecolon:"\u2255",ecy:"\u044D",edot:"\u0117",ee:"\u2147",efDot:"\u2252",efr:"\u{1D522}",eg:"\u2A9A",egrav:"\xE8",egrave:"\xE8",egs:"\u2A96",egsdot:"\u2A98",el:"\u2A99",elinters:"\u23E7",ell:"\u2113",els:"\u2A95",elsdot:"\u2A97",emacr:"\u0113",empty:"\u2205",emptyset:"\u2205",emptyv:"\u2205",emsp13:"\u2004",emsp14:"\u2005",emsp:"\u2003",eng:"\u014B",ensp:"\u2002",eogon:"\u0119",eopf:"\u{1D556}",epar:"\u22D5",eparsl:"\u29E3",eplus:"\u2A71",epsi:"\u03B5",epsilon:"\u03B5",epsiv:"\u03F5",eqcirc:"\u2256",eqcolon:"\u2255",eqsim:"\u2242",eqslantgtr:"\u2A96",eqslantless:"\u2A95",equals:"=",equest:"\u225F",equiv:"\u2261",equivDD:"\u2A78",eqvparsl:"\u29E5",erDot:"\u2253",erarr:"\u2971",escr:"\u212F",esdot:"\u2250",esim:"\u2242",eta:"\u03B7",et:"\xF0",eth:"\xF0",eum:"\xEB",euml:"\xEB",euro:"\u20AC",excl:"!",exist:"\u2203",expectation:"\u2130",exponentiale:"\u2147",fallingdotseq:"\u2252",fcy:"\u0444",female:"\u2640",ffilig:"\uFB03",fflig:"\uFB00",ffllig:"\uFB04",ffr:"\u{1D523}",filig:"\uFB01",fjlig:"fj",flat:"\u266D",fllig:"\uFB02",fltns:"\u25B1",fnof:"\u0192",fopf:"\u{1D557}",forall:"\u2200",fork:"\u22D4",forkv:"\u2AD9",fpartint:"\u2A0D",frac1:"\xBC",frac12:"\xBD",frac13:"\u2153",frac14:"\xBC",frac15:"\u2155",frac16:"\u2159",frac18:"\u215B",frac23:"\u2154",frac25:"\u2156",frac3:"\xBE",frac34:"\xBE",frac35:"\u2157",frac38:"\u215C",frac45:"\u2158",frac56:"\u215A",frac58:"\u215D",frac78:"\u215E",frasl:"\u2044",frown:"\u2322",fscr:"\u{1D4BB}",gE:"\u2267",gEl:"\u2A8C",gacute:"\u01F5",gamma:"\u03B3",gammad:"\u03DD",gap:"\u2A86",gbreve:"\u011F",gcirc:"\u011D",gcy:"\u0433",gdot:"\u0121",ge:"\u2265",gel:"\u22DB",geq:"\u2265",geqq:"\u2267",geqslant:"\u2A7E",ges:"\u2A7E",gescc:"\u2AA9",gesdot:"\u2A80",gesdoto:"\u2A82",gesdotol:"\u2A84",gesl:"\u22DB\uFE00",gesles:"\u2A94",gfr:"\u{1D524}",gg:"\u226B",ggg:"\u22D9",gimel:"\u2137",gjcy:"\u0453",gl:"\u2277",glE:"\u2A92",gla:"\u2AA5",glj:"\u2AA4",gnE:"\u2269",gnap:"\u2A8A",gnapprox:"\u2A8A",gne:"\u2A88",gneq:"\u2A88",gneqq:"\u2269",gnsim:"\u22E7",gopf:"\u{1D558}",grave:"`",gscr:"\u210A",gsim:"\u2273",gsime:"\u2A8E",gsiml:"\u2A90",g:">",gt:">",gtcc:"\u2AA7",gtcir:"\u2A7A",gtdot:"\u22D7",gtlPar:"\u2995",gtquest:"\u2A7C",gtrapprox:"\u2A86",gtrarr:"\u2978",gtrdot:"\u22D7",gtreqless:"\u22DB",gtreqqless:"\u2A8C",gtrless:"\u2277",gtrsim:"\u2273",gvertneqq:"\u2269\uFE00",gvnE:"\u2269\uFE00",hArr:"\u21D4",hairsp:"\u200A",half:"\xBD",hamilt:"\u210B",hardcy:"\u044A",harr:"\u2194",harrcir:"\u2948",harrw:"\u21AD",hbar:"\u210F",hcirc:"\u0125",hearts:"\u2665",heartsuit:"\u2665",hellip:"\u2026",hercon:"\u22B9",hfr:"\u{1D525}",hksearow:"\u2925",hkswarow:"\u2926",hoarr:"\u21FF",homtht:"\u223B",hookleftarrow:"\u21A9",hookrightarrow:"\u21AA",hopf:"\u{1D559}",horbar:"\u2015",hscr:"\u{1D4BD}",hslash:"\u210F",hstrok:"\u0127",hybull:"\u2043",hyphen:"\u2010",iacut:"\xED",iacute:"\xED",ic:"\u2063",icir:"\xEE",icirc:"\xEE",icy:"\u0438",iecy:"\u0435",iexc:"\xA1",iexcl:"\xA1",iff:"\u21D4",ifr:"\u{1D526}",igrav:"\xEC",igrave:"\xEC",ii:"\u2148",iiiint:"\u2A0C",iiint:"\u222D",iinfin:"\u29DC",iiota:"\u2129",ijlig:"\u0133",imacr:"\u012B",image:"\u2111",imagline:"\u2110",imagpart:"\u2111",imath:"\u0131",imof:"\u22B7",imped:"\u01B5",in:"\u2208",incare:"\u2105",infin:"\u221E",infintie:"\u29DD",inodot:"\u0131",int:"\u222B",intcal:"\u22BA",integers:"\u2124",intercal:"\u22BA",intlarhk:"\u2A17",intprod:"\u2A3C",iocy:"\u0451",iogon:"\u012F",iopf:"\u{1D55A}",iota:"\u03B9",iprod:"\u2A3C",iques:"\xBF",iquest:"\xBF",iscr:"\u{1D4BE}",isin:"\u2208",isinE:"\u22F9",isindot:"\u22F5",isins:"\u22F4",isinsv:"\u22F3",isinv:"\u2208",it:"\u2062",itilde:"\u0129",iukcy:"\u0456",ium:"\xEF",iuml:"\xEF",jcirc:"\u0135",jcy:"\u0439",jfr:"\u{1D527}",jmath:"\u0237",jopf:"\u{1D55B}",jscr:"\u{1D4BF}",jsercy:"\u0458",jukcy:"\u0454",kappa:"\u03BA",kappav:"\u03F0",kcedil:"\u0137",kcy:"\u043A",kfr:"\u{1D528}",kgreen:"\u0138",khcy:"\u0445",kjcy:"\u045C",kopf:"\u{1D55C}",kscr:"\u{1D4C0}",lAarr:"\u21DA",lArr:"\u21D0",lAtail:"\u291B",lBarr:"\u290E",lE:"\u2266",lEg:"\u2A8B",lHar:"\u2962",lacute:"\u013A",laemptyv:"\u29B4",lagran:"\u2112",lambda:"\u03BB",lang:"\u27E8",langd:"\u2991",langle:"\u27E8",lap:"\u2A85",laqu:"\xAB",laquo:"\xAB",larr:"\u2190",larrb:"\u21E4",larrbfs:"\u291F",larrfs:"\u291D",larrhk:"\u21A9",larrlp:"\u21AB",larrpl:"\u2939",larrsim:"\u2973",larrtl:"\u21A2",lat:"\u2AAB",latail:"\u2919",late:"\u2AAD",lates:"\u2AAD\uFE00",lbarr:"\u290C",lbbrk:"\u2772",lbrace:"{",lbrack:"[",lbrke:"\u298B",lbrksld:"\u298F",lbrkslu:"\u298D",lcaron:"\u013E",lcedil:"\u013C",lceil:"\u2308",lcub:"{",lcy:"\u043B",ldca:"\u2936",ldquo:"\u201C",ldquor:"\u201E",ldrdhar:"\u2967",ldrushar:"\u294B",ldsh:"\u21B2",le:"\u2264",leftarrow:"\u2190",leftarrowtail:"\u21A2",leftharpoondown:"\u21BD",leftharpoonup:"\u21BC",leftleftarrows:"\u21C7",leftrightarrow:"\u2194",leftrightarrows:"\u21C6",leftrightharpoons:"\u21CB",leftrightsquigarrow:"\u21AD",leftthreetimes:"\u22CB",leg:"\u22DA",leq:"\u2264",leqq:"\u2266",leqslant:"\u2A7D",les:"\u2A7D",lescc:"\u2AA8",lesdot:"\u2A7F",lesdoto:"\u2A81",lesdotor:"\u2A83",lesg:"\u22DA\uFE00",lesges:"\u2A93",lessapprox:"\u2A85",lessdot:"\u22D6",lesseqgtr:"\u22DA",lesseqqgtr:"\u2A8B",lessgtr:"\u2276",lesssim:"\u2272",lfisht:"\u297C",lfloor:"\u230A",lfr:"\u{1D529}",lg:"\u2276",lgE:"\u2A91",lhard:"\u21BD",lharu:"\u21BC",lharul:"\u296A",lhblk:"\u2584",ljcy:"\u0459",ll:"\u226A",llarr:"\u21C7",llcorner:"\u231E",llhard:"\u296B",lltri:"\u25FA",lmidot:"\u0140",lmoust:"\u23B0",lmoustache:"\u23B0",lnE:"\u2268",lnap:"\u2A89",lnapprox:"\u2A89",lne:"\u2A87",lneq:"\u2A87",lneqq:"\u2268",lnsim:"\u22E6",loang:"\u27EC",loarr:"\u21FD",lobrk:"\u27E6",longleftarrow:"\u27F5",longleftrightarrow:"\u27F7",longmapsto:"\u27FC",longrightarrow:"\u27F6",looparrowleft:"\u21AB",looparrowright:"\u21AC",lopar:"\u2985",lopf:"\u{1D55D}",loplus:"\u2A2D",lotimes:"\u2A34",lowast:"\u2217",lowbar:"_",loz:"\u25CA",lozenge:"\u25CA",lozf:"\u29EB",lpar:"(",lparlt:"\u2993",lrarr:"\u21C6",lrcorner:"\u231F",lrhar:"\u21CB",lrhard:"\u296D",lrm:"\u200E",lrtri:"\u22BF",lsaquo:"\u2039",lscr:"\u{1D4C1}",lsh:"\u21B0",lsim:"\u2272",lsime:"\u2A8D",lsimg:"\u2A8F",lsqb:"[",lsquo:"\u2018",lsquor:"\u201A",lstrok:"\u0142",l:"<",lt:"<",ltcc:"\u2AA6",ltcir:"\u2A79",ltdot:"\u22D6",lthree:"\u22CB",ltimes:"\u22C9",ltlarr:"\u2976",ltquest:"\u2A7B",ltrPar:"\u2996",ltri:"\u25C3",ltrie:"\u22B4",ltrif:"\u25C2",lurdshar:"\u294A",luruhar:"\u2966",lvertneqq:"\u2268\uFE00",lvnE:"\u2268\uFE00",mDDot:"\u223A",mac:"\xAF",macr:"\xAF",male:"\u2642",malt:"\u2720",maltese:"\u2720",map:"\u21A6",mapsto:"\u21A6",mapstodown:"\u21A7",mapstoleft:"\u21A4",mapstoup:"\u21A5",marker:"\u25AE",mcomma:"\u2A29",mcy:"\u043C",mdash:"\u2014",measuredangle:"\u2221",mfr:"\u{1D52A}",mho:"\u2127",micr:"\xB5",micro:"\xB5",mid:"\u2223",midast:"*",midcir:"\u2AF0",middo:"\xB7",middot:"\xB7",minus:"\u2212",minusb:"\u229F",minusd:"\u2238",minusdu:"\u2A2A",mlcp:"\u2ADB",mldr:"\u2026",mnplus:"\u2213",models:"\u22A7",mopf:"\u{1D55E}",mp:"\u2213",mscr:"\u{1D4C2}",mstpos:"\u223E",mu:"\u03BC",multimap:"\u22B8",mumap:"\u22B8",nGg:"\u22D9\u0338",nGt:"\u226B\u20D2",nGtv:"\u226B\u0338",nLeftarrow:"\u21CD",nLeftrightarrow:"\u21CE",nLl:"\u22D8\u0338",nLt:"\u226A\u20D2",nLtv:"\u226A\u0338",nRightarrow:"\u21CF",nVDash:"\u22AF",nVdash:"\u22AE",nabla:"\u2207",nacute:"\u0144",nang:"\u2220\u20D2",nap:"\u2249",napE:"\u2A70\u0338",napid:"\u224B\u0338",napos:"\u0149",napprox:"\u2249",natur:"\u266E",natural:"\u266E",naturals:"\u2115",nbs:"\xA0",nbsp:"\xA0",nbump:"\u224E\u0338",nbumpe:"\u224F\u0338",ncap:"\u2A43",ncaron:"\u0148",ncedil:"\u0146",ncong:"\u2247",ncongdot:"\u2A6D\u0338",ncup:"\u2A42",ncy:"\u043D",ndash:"\u2013",ne:"\u2260",neArr:"\u21D7",nearhk:"\u2924",nearr:"\u2197",nearrow:"\u2197",nedot:"\u2250\u0338",nequiv:"\u2262",nesear:"\u2928",nesim:"\u2242\u0338",nexist:"\u2204",nexists:"\u2204",nfr:"\u{1D52B}",ngE:"\u2267\u0338",nge:"\u2271",ngeq:"\u2271",ngeqq:"\u2267\u0338",ngeqslant:"\u2A7E\u0338",nges:"\u2A7E\u0338",ngsim:"\u2275",ngt:"\u226F",ngtr:"\u226F",nhArr:"\u21CE",nharr:"\u21AE",nhpar:"\u2AF2",ni:"\u220B",nis:"\u22FC",nisd:"\u22FA",niv:"\u220B",njcy:"\u045A",nlArr:"\u21CD",nlE:"\u2266\u0338",nlarr:"\u219A",nldr:"\u2025",nle:"\u2270",nleftarrow:"\u219A",nleftrightarrow:"\u21AE",nleq:"\u2270",nleqq:"\u2266\u0338",nleqslant:"\u2A7D\u0338",nles:"\u2A7D\u0338",nless:"\u226E",nlsim:"\u2274",nlt:"\u226E",nltri:"\u22EA",nltrie:"\u22EC",nmid:"\u2224",nopf:"\u{1D55F}",no:"\xAC",not:"\xAC",notin:"\u2209",notinE:"\u22F9\u0338",notindot:"\u22F5\u0338",notinva:"\u2209",notinvb:"\u22F7",notinvc:"\u22F6",notni:"\u220C",notniva:"\u220C",notnivb:"\u22FE",notnivc:"\u22FD",npar:"\u2226",nparallel:"\u2226",nparsl:"\u2AFD\u20E5",npart:"\u2202\u0338",npolint:"\u2A14",npr:"\u2280",nprcue:"\u22E0",npre:"\u2AAF\u0338",nprec:"\u2280",npreceq:"\u2AAF\u0338",nrArr:"\u21CF",nrarr:"\u219B",nrarrc:"\u2933\u0338",nrarrw:"\u219D\u0338",nrightarrow:"\u219B",nrtri:"\u22EB",nrtrie:"\u22ED",nsc:"\u2281",nsccue:"\u22E1",nsce:"\u2AB0\u0338",nscr:"\u{1D4C3}",nshortmid:"\u2224",nshortparallel:"\u2226",nsim:"\u2241",nsime:"\u2244",nsimeq:"\u2244",nsmid:"\u2224",nspar:"\u2226",nsqsube:"\u22E2",nsqsupe:"\u22E3",nsub:"\u2284",nsubE:"\u2AC5\u0338",nsube:"\u2288",nsubset:"\u2282\u20D2",nsubseteq:"\u2288",nsubseteqq:"\u2AC5\u0338",nsucc:"\u2281",nsucceq:"\u2AB0\u0338",nsup:"\u2285",nsupE:"\u2AC6\u0338",nsupe:"\u2289",nsupset:"\u2283\u20D2",nsupseteq:"\u2289",nsupseteqq:"\u2AC6\u0338",ntgl:"\u2279",ntild:"\xF1",ntilde:"\xF1",ntlg:"\u2278",ntriangleleft:"\u22EA",ntrianglelefteq:"\u22EC",ntriangleright:"\u22EB",ntrianglerighteq:"\u22ED",nu:"\u03BD",num:"#",numero:"\u2116",numsp:"\u2007",nvDash:"\u22AD",nvHarr:"\u2904",nvap:"\u224D\u20D2",nvdash:"\u22AC",nvge:"\u2265\u20D2",nvgt:">\u20D2",nvinfin:"\u29DE",nvlArr:"\u2902",nvle:"\u2264\u20D2",nvlt:"<\u20D2",nvltrie:"\u22B4\u20D2",nvrArr:"\u2903",nvrtrie:"\u22B5\u20D2",nvsim:"\u223C\u20D2",nwArr:"\u21D6",nwarhk:"\u2923",nwarr:"\u2196",nwarrow:"\u2196",nwnear:"\u2927",oS:"\u24C8",oacut:"\xF3",oacute:"\xF3",oast:"\u229B",ocir:"\xF4",ocirc:"\xF4",ocy:"\u043E",odash:"\u229D",odblac:"\u0151",odiv:"\u2A38",odot:"\u2299",odsold:"\u29BC",oelig:"\u0153",ofcir:"\u29BF",ofr:"\u{1D52C}",ogon:"\u02DB",ograv:"\xF2",ograve:"\xF2",ogt:"\u29C1",ohbar:"\u29B5",ohm:"\u03A9",oint:"\u222E",olarr:"\u21BA",olcir:"\u29BE",olcross:"\u29BB",oline:"\u203E",olt:"\u29C0",omacr:"\u014D",omega:"\u03C9",omicron:"\u03BF",omid:"\u29B6",ominus:"\u2296",oopf:"\u{1D560}",opar:"\u29B7",operp:"\u29B9",oplus:"\u2295",or:"\u2228",orarr:"\u21BB",ord:"\xBA",order:"\u2134",orderof:"\u2134",ordf:"\xAA",ordm:"\xBA",origof:"\u22B6",oror:"\u2A56",orslope:"\u2A57",orv:"\u2A5B",oscr:"\u2134",oslas:"\xF8",oslash:"\xF8",osol:"\u2298",otild:"\xF5",otilde:"\xF5",otimes:"\u2297",otimesas:"\u2A36",oum:"\xF6",ouml:"\xF6",ovbar:"\u233D",par:"\xB6",para:"\xB6",parallel:"\u2225",parsim:"\u2AF3",parsl:"\u2AFD",part:"\u2202",pcy:"\u043F",percnt:"%",period:".",permil:"\u2030",perp:"\u22A5",pertenk:"\u2031",pfr:"\u{1D52D}",phi:"\u03C6",phiv:"\u03D5",phmmat:"\u2133",phone:"\u260E",pi:"\u03C0",pitchfork:"\u22D4",piv:"\u03D6",planck:"\u210F",planckh:"\u210E",plankv:"\u210F",plus:"+",plusacir:"\u2A23",plusb:"\u229E",pluscir:"\u2A22",plusdo:"\u2214",plusdu:"\u2A25",pluse:"\u2A72",plusm:"\xB1",plusmn:"\xB1",plussim:"\u2A26",plustwo:"\u2A27",pm:"\xB1",pointint:"\u2A15",popf:"\u{1D561}",poun:"\xA3",pound:"\xA3",pr:"\u227A",prE:"\u2AB3",prap:"\u2AB7",prcue:"\u227C",pre:"\u2AAF",prec:"\u227A",precapprox:"\u2AB7",preccurlyeq:"\u227C",preceq:"\u2AAF",precnapprox:"\u2AB9",precneqq:"\u2AB5",precnsim:"\u22E8",precsim:"\u227E",prime:"\u2032",primes:"\u2119",prnE:"\u2AB5",prnap:"\u2AB9",prnsim:"\u22E8",prod:"\u220F",profalar:"\u232E",profline:"\u2312",profsurf:"\u2313",prop:"\u221D",propto:"\u221D",prsim:"\u227E",prurel:"\u22B0",pscr:"\u{1D4C5}",psi:"\u03C8",puncsp:"\u2008",qfr:"\u{1D52E}",qint:"\u2A0C",qopf:"\u{1D562}",qprime:"\u2057",qscr:"\u{1D4C6}",quaternions:"\u210D",quatint:"\u2A16",quest:"?",questeq:"\u225F",quo:'"',quot:'"',rAarr:"\u21DB",rArr:"\u21D2",rAtail:"\u291C",rBarr:"\u290F",rHar:"\u2964",race:"\u223D\u0331",racute:"\u0155",radic:"\u221A",raemptyv:"\u29B3",rang:"\u27E9",rangd:"\u2992",range:"\u29A5",rangle:"\u27E9",raqu:"\xBB",raquo:"\xBB",rarr:"\u2192",rarrap:"\u2975",rarrb:"\u21E5",rarrbfs:"\u2920",rarrc:"\u2933",rarrfs:"\u291E",rarrhk:"\u21AA",rarrlp:"\u21AC",rarrpl:"\u2945",rarrsim:"\u2974",rarrtl:"\u21A3",rarrw:"\u219D",ratail:"\u291A",ratio:"\u2236",rationals:"\u211A",rbarr:"\u290D",rbbrk:"\u2773",rbrace:"}",rbrack:"]",rbrke:"\u298C",rbrksld:"\u298E",rbrkslu:"\u2990",rcaron:"\u0159",rcedil:"\u0157",rceil:"\u2309",rcub:"}",rcy:"\u0440",rdca:"\u2937",rdldhar:"\u2969",rdquo:"\u201D",rdquor:"\u201D",rdsh:"\u21B3",real:"\u211C",realine:"\u211B",realpart:"\u211C",reals:"\u211D",rect:"\u25AD",re:"\xAE",reg:"\xAE",rfisht:"\u297D",rfloor:"\u230B",rfr:"\u{1D52F}",rhard:"\u21C1",rharu:"\u21C0",rharul:"\u296C",rho:"\u03C1",rhov:"\u03F1",rightarrow:"\u2192",rightarrowtail:"\u21A3",rightharpoondown:"\u21C1",rightharpoonup:"\u21C0",rightleftarrows:"\u21C4",rightleftharpoons:"\u21CC",rightrightarrows:"\u21C9",rightsquigarrow:"\u219D",rightthreetimes:"\u22CC",ring:"\u02DA",risingdotseq:"\u2253",rlarr:"\u21C4",rlhar:"\u21CC",rlm:"\u200F",rmoust:"\u23B1",rmoustache:"\u23B1",rnmid:"\u2AEE",roang:"\u27ED",roarr:"\u21FE",robrk:"\u27E7",ropar:"\u2986",ropf:"\u{1D563}",roplus:"\u2A2E",rotimes:"\u2A35",rpar:")",rpargt:"\u2994",rppolint:"\u2A12",rrarr:"\u21C9",rsaquo:"\u203A",rscr:"\u{1D4C7}",rsh:"\u21B1",rsqb:"]",rsquo:"\u2019",rsquor:"\u2019",rthree:"\u22CC",rtimes:"\u22CA",rtri:"\u25B9",rtrie:"\u22B5",rtrif:"\u25B8",rtriltri:"\u29CE",ruluhar:"\u2968",rx:"\u211E",sacute:"\u015B",sbquo:"\u201A",sc:"\u227B",scE:"\u2AB4",scap:"\u2AB8",scaron:"\u0161",sccue:"\u227D",sce:"\u2AB0",scedil:"\u015F",scirc:"\u015D",scnE:"\u2AB6",scnap:"\u2ABA",scnsim:"\u22E9",scpolint:"\u2A13",scsim:"\u227F",scy:"\u0441",sdot:"\u22C5",sdotb:"\u22A1",sdote:"\u2A66",seArr:"\u21D8",searhk:"\u2925",searr:"\u2198",searrow:"\u2198",sec:"\xA7",sect:"\xA7",semi:";",seswar:"\u2929",setminus:"\u2216",setmn:"\u2216",sext:"\u2736",sfr:"\u{1D530}",sfrown:"\u2322",sharp:"\u266F",shchcy:"\u0449",shcy:"\u0448",shortmid:"\u2223",shortparallel:"\u2225",sh:"\xAD",shy:"\xAD",sigma:"\u03C3",sigmaf:"\u03C2",sigmav:"\u03C2",sim:"\u223C",simdot:"\u2A6A",sime:"\u2243",simeq:"\u2243",simg:"\u2A9E",simgE:"\u2AA0",siml:"\u2A9D",simlE:"\u2A9F",simne:"\u2246",simplus:"\u2A24",simrarr:"\u2972",slarr:"\u2190",smallsetminus:"\u2216",smashp:"\u2A33",smeparsl:"\u29E4",smid:"\u2223",smile:"\u2323",smt:"\u2AAA",smte:"\u2AAC",smtes:"\u2AAC\uFE00",softcy:"\u044C",sol:"/",solb:"\u29C4",solbar:"\u233F",sopf:"\u{1D564}",spades:"\u2660",spadesuit:"\u2660",spar:"\u2225",sqcap:"\u2293",sqcaps:"\u2293\uFE00",sqcup:"\u2294",sqcups:"\u2294\uFE00",sqsub:"\u228F",sqsube:"\u2291",sqsubset:"\u228F",sqsubseteq:"\u2291",sqsup:"\u2290",sqsupe:"\u2292",sqsupset:"\u2290",sqsupseteq:"\u2292",squ:"\u25A1",square:"\u25A1",squarf:"\u25AA",squf:"\u25AA",srarr:"\u2192",sscr:"\u{1D4C8}",ssetmn:"\u2216",ssmile:"\u2323",sstarf:"\u22C6",star:"\u2606",starf:"\u2605",straightepsilon:"\u03F5",straightphi:"\u03D5",strns:"\xAF",sub:"\u2282",subE:"\u2AC5",subdot:"\u2ABD",sube:"\u2286",subedot:"\u2AC3",submult:"\u2AC1",subnE:"\u2ACB",subne:"\u228A",subplus:"\u2ABF",subrarr:"\u2979",subset:"\u2282",subseteq:"\u2286",subseteqq:"\u2AC5",subsetneq:"\u228A",subsetneqq:"\u2ACB",subsim:"\u2AC7",subsub:"\u2AD5",subsup:"\u2AD3",succ:"\u227B",succapprox:"\u2AB8",succcurlyeq:"\u227D",succeq:"\u2AB0",succnapprox:"\u2ABA",succneqq:"\u2AB6",succnsim:"\u22E9",succsim:"\u227F",sum:"\u2211",sung:"\u266A",sup:"\u2283",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",supE:"\u2AC6",supdot:"\u2ABE",supdsub:"\u2AD8",supe:"\u2287",supedot:"\u2AC4",suphsol:"\u27C9",suphsub:"\u2AD7",suplarr:"\u297B",supmult:"\u2AC2",supnE:"\u2ACC",supne:"\u228B",supplus:"\u2AC0",supset:"\u2283",supseteq:"\u2287",supseteqq:"\u2AC6",supsetneq:"\u228B",supsetneqq:"\u2ACC",supsim:"\u2AC8",supsub:"\u2AD4",supsup:"\u2AD6",swArr:"\u21D9",swarhk:"\u2926",swarr:"\u2199",swarrow:"\u2199",swnwar:"\u292A",szli:"\xDF",szlig:"\xDF",target:"\u2316",tau:"\u03C4",tbrk:"\u23B4",tcaron:"\u0165",tcedil:"\u0163",tcy:"\u0442",tdot:"\u20DB",telrec:"\u2315",tfr:"\u{1D531}",there4:"\u2234",therefore:"\u2234",theta:"\u03B8",thetasym:"\u03D1",thetav:"\u03D1",thickapprox:"\u2248",thicksim:"\u223C",thinsp:"\u2009",thkap:"\u2248",thksim:"\u223C",thor:"\xFE",thorn:"\xFE",tilde:"\u02DC",time:"\xD7",times:"\xD7",timesb:"\u22A0",timesbar:"\u2A31",timesd:"\u2A30",tint:"\u222D",toea:"\u2928",top:"\u22A4",topbot:"\u2336",topcir:"\u2AF1",topf:"\u{1D565}",topfork:"\u2ADA",tosa:"\u2929",tprime:"\u2034",trade:"\u2122",triangle:"\u25B5",triangledown:"\u25BF",triangleleft:"\u25C3",trianglelefteq:"\u22B4",triangleq:"\u225C",triangleright:"\u25B9",trianglerighteq:"\u22B5",tridot:"\u25EC",trie:"\u225C",triminus:"\u2A3A",triplus:"\u2A39",trisb:"\u29CD",tritime:"\u2A3B",trpezium:"\u23E2",tscr:"\u{1D4C9}",tscy:"\u0446",tshcy:"\u045B",tstrok:"\u0167",twixt:"\u226C",twoheadleftarrow:"\u219E",twoheadrightarrow:"\u21A0",uArr:"\u21D1",uHar:"\u2963",uacut:"\xFA",uacute:"\xFA",uarr:"\u2191",ubrcy:"\u045E",ubreve:"\u016D",ucir:"\xFB",ucirc:"\xFB",ucy:"\u0443",udarr:"\u21C5",udblac:"\u0171",udhar:"\u296E",ufisht:"\u297E",ufr:"\u{1D532}",ugrav:"\xF9",ugrave:"\xF9",uharl:"\u21BF",uharr:"\u21BE",uhblk:"\u2580",ulcorn:"\u231C",ulcorner:"\u231C",ulcrop:"\u230F",ultri:"\u25F8",umacr:"\u016B",um:"\xA8",uml:"\xA8",uogon:"\u0173",uopf:"\u{1D566}",uparrow:"\u2191",updownarrow:"\u2195",upharpoonleft:"\u21BF",upharpoonright:"\u21BE",uplus:"\u228E",upsi:"\u03C5",upsih:"\u03D2",upsilon:"\u03C5",upuparrows:"\u21C8",urcorn:"\u231D",urcorner:"\u231D",urcrop:"\u230E",uring:"\u016F",urtri:"\u25F9",uscr:"\u{1D4CA}",utdot:"\u22F0",utilde:"\u0169",utri:"\u25B5",utrif:"\u25B4",uuarr:"\u21C8",uum:"\xFC",uuml:"\xFC",uwangle:"\u29A7",vArr:"\u21D5",vBar:"\u2AE8",vBarv:"\u2AE9",vDash:"\u22A8",vangrt:"\u299C",varepsilon:"\u03F5",varkappa:"\u03F0",varnothing:"\u2205",varphi:"\u03D5",varpi:"\u03D6",varpropto:"\u221D",varr:"\u2195",varrho:"\u03F1",varsigma:"\u03C2",varsubsetneq:"\u228A\uFE00",varsubsetneqq:"\u2ACB\uFE00",varsupsetneq:"\u228B\uFE00",varsupsetneqq:"\u2ACC\uFE00",vartheta:"\u03D1",vartriangleleft:"\u22B2",vartriangleright:"\u22B3",vcy:"\u0432",vdash:"\u22A2",vee:"\u2228",veebar:"\u22BB",veeeq:"\u225A",vellip:"\u22EE",verbar:"|",vert:"|",vfr:"\u{1D533}",vltri:"\u22B2",vnsub:"\u2282\u20D2",vnsup:"\u2283\u20D2",vopf:"\u{1D567}",vprop:"\u221D",vrtri:"\u22B3",vscr:"\u{1D4CB}",vsubnE:"\u2ACB\uFE00",vsubne:"\u228A\uFE00",vsupnE:"\u2ACC\uFE00",vsupne:"\u228B\uFE00",vzigzag:"\u299A",wcirc:"\u0175",wedbar:"\u2A5F",wedge:"\u2227",wedgeq:"\u2259",weierp:"\u2118",wfr:"\u{1D534}",wopf:"\u{1D568}",wp:"\u2118",wr:"\u2240",wreath:"\u2240",wscr:"\u{1D4CC}",xcap:"\u22C2",xcirc:"\u25EF",xcup:"\u22C3",xdtri:"\u25BD",xfr:"\u{1D535}",xhArr:"\u27FA",xharr:"\u27F7",xi:"\u03BE",xlArr:"\u27F8",xlarr:"\u27F5",xmap:"\u27FC",xnis:"\u22FB",xodot:"\u2A00",xopf:"\u{1D569}",xoplus:"\u2A01",xotime:"\u2A02",xrArr:"\u27F9",xrarr:"\u27F6",xscr:"\u{1D4CD}",xsqcup:"\u2A06",xuplus:"\u2A04",xutri:"\u25B3",xvee:"\u22C1",xwedge:"\u22C0",yacut:"\xFD",yacute:"\xFD",yacy:"\u044F",ycirc:"\u0177",ycy:"\u044B",ye:"\xA5",yen:"\xA5",yfr:"\u{1D536}",yicy:"\u0457",yopf:"\u{1D56A}",yscr:"\u{1D4CE}",yucy:"\u044E",yum:"\xFF",yuml:"\xFF",zacute:"\u017A",zcaron:"\u017E",zcy:"\u0437",zdot:"\u017C",zeetrf:"\u2128",zeta:"\u03B6",zfr:"\u{1D537}",zhcy:"\u0436",zigrarr:"\u21DD",zopf:"\u{1D56B}",zscr:"\u{1D4CF}",zwj:"\u200D",zwnj:"\u200C"}}),Xra=Dl((e,t)=>{"use strict";var r=Hra();t.exports=a;var s={}.hasOwnProperty;function a(o){return s.call(r,o)?r[o]:!1}}),_Ct=Dl((e,t)=>{"use strict";var r=Ora(),s=Mra(),a=qve(),o=Qra(),g=Yra(),p=Xra();t.exports=dr;var f={}.hasOwnProperty,m=String.fromCharCode,y=Function.prototype,B={warning:null,reference:null,text:null,warningContext:null,referenceContext:null,textContext:null,position:{},additional:null,attribute:!1,nonTerminated:!0},v=9,G=10,T=12,O=32,X=38,U=59,le=60,ae=61,ge=35,fe=88,pe=120,he=65533,be="named",Te="hexadecimal",ke="decimal",x={};x[Te]=16,x[ke]=10;var et={};et[be]=g,et[ke]=a,et[Te]=o;var Ue=1,Je=2,Xe=3,ft=4,Gt=5,er=6,Ur=7,Ot={};Ot[Ue]="Named character references must be terminated by a semicolon",Ot[Je]="Numeric character references must be terminated by a semicolon",Ot[Xe]="Named character references cannot be empty",Ot[ft]="Numeric character references cannot be empty",Ot[Gt]="Named character references must be known",Ot[er]="Numeric character references cannot be disallowed",Ot[Ur]="Numeric character references cannot be outside the permissible Unicode range";function dr($r,Or){var In={},Br,tr;Or||(Or={});for(tr in B)Br=Or[tr],In[tr]=Br??B[tr];return(In.position.indent||In.position.start)&&(In.indent=In.position.indent||[],In.position=In.position.start),Ar($r,In)}function Ar($r,Or){var In=Or.additional,Br=Or.nonTerminated,tr=Or.text,gn=Or.reference,Gn=Or.warning,we=Or.textContext,Zi=Or.referenceContext,Za=Or.warningContext,ka=Or.position,Qs=Or.indent||[],lr=$r.length,ga=0,vi=-1,Qu=ka.column||1,Yu=ka.line||1,YA="",ud=[],TA,Ld,jr,Gr,Ir,nn,Cn,Vn,Ji,Hr,Ws,Ko,ai,pa,sg,Fu,Cg,Zu,Cl;for(typeof In=="string"&&(In=In.charCodeAt(0)),Fu=wi(),Vn=Gn?ts:y,ga--,lr++;++ga65535&&(nn-=65536,Hr+=m(nn>>>10|55296),nn=56320|nn&1023),nn=Hr+m(nn))):pa!==be&&Vn(ft,Zu)),nn?($i(),Fu=wi(),ga=Cl-1,Qu+=Cl-ai+1,ud.push(nn),Cg=wi(),Cg.offset++,gn&&gn.call(Zi,nn,{start:Fu,end:Cg},$r.slice(ai-1,Cl)),Fu=Cg):(Gr=$r.slice(ai-1,Cl),YA+=Gr,Qu+=Gr.length,ga=Cl-1)}else Ir===10&&(Yu++,vi++,Qu=0),Ir===Ir?(YA+=m(Ir),Qu++):$i();return ud.join("");function wi(){return{line:Yu,column:Qu,offset:ga+(ka.offset||0)}}function ts(Ga,$s){var xl=wi();xl.column+=$s,xl.offset+=$s,Gn.call(Za,Ot[Ga],xl,Ga)}function $i(){YA&&(ud.push(YA),tr&&tr.call(we,YA,{start:Fu,end:wi()}),YA="")}}function or($r){return $r>=55296&&$r<=57343||$r>1114111}function Fr($r){return $r>=1&&$r<=8||$r===11||$r>=13&&$r<=31||$r>=127&&$r<=159||$r>=64976&&$r<=65007||($r&65535)===65535||($r&65535)===65534}}),Jra=Dl((e,t)=>{"use strict";var r=zve(),s=_Ct();t.exports=a;function a(o){return p.raw=f,p;function g(y){for(var B=o.offset,v=y.line,G=[];++v&&v in B;)G.push((B[v]||0)+1);return{start:y,indent:G}}function p(y,B,v){s(y,{position:g(B),warning:m,text:v,reference:v,textContext:o,referenceContext:o})}function f(y,B,v){return s(y,r(v,{position:g(B),warning:m}))}function m(y,B,v){v!==3&&o.file.message(y,B)}}}),Ura=Dl((e,t)=>{"use strict";t.exports=r;function r(g){return p;function p(f,m){var y=this,B=y.offset,v=[],G=y[g+"Methods"],T=y[g+"Tokenizers"],O=m.line,X=m.column,U,le,ae,ge,fe,pe;if(!f)return v;for(Je.now=Te,Je.file=y.file,he("");f;){for(U=-1,le=G.length,fe=!1;++U{var r=Kra(),s=jra();t.exports=a;function a(o){var g=o||{};s.call(this,g),r.call(this,g)}}),eSe=xl((e,t)=>{t.exports=s;var r=Object.prototype.hasOwnProperty;function s(){for(var a={},o=0;o{typeof Object.create=="function"?t.exports=function(r,s){s&&(r.super_=s,r.prototype=Object.create(s.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}))}:t.exports=function(r,s){if(s){r.super_=s;var a=function(){};a.prototype=s.prototype,r.prototype=new a,r.prototype.constructor=r}}}),$ra=xl((e,t)=>{"use strict";var r=eSe(),s=qra();t.exports=a;function a(o){var g,p,f;s(y,o),s(m,y),g=y.prototype;for(p in g)f=g[p],f&&typeof f=="object"&&(g[p]="concat"in f?f.concat():r(f));return y;function m(B){return o.apply(this,B)}function y(){return this instanceof y?o.apply(this,arguments):new m(arguments)}}}),ena=xl((e,t)=>{"use strict";t.exports=r;function r(s,a,o){return g;function g(){var p=o||this,f=p[s];return p[s]=!a,m;function m(){p[s]=f}}}}),tna=xl((e,t)=>{"use strict";t.exports=r;function r(s){for(var a=String(s),o=[],g=/\r?\n|\r/g;g.exec(a);)o.push(g.lastIndex);return o.push(a.length+1),{toPoint:p,toPosition:p,toOffset:f};function p(m){var y=-1;if(m>-1&&mm)return{line:y+1,column:m-(o[y-1]||0)+1,offset:m}}return{}}function f(m){var y=m&&m.line,B=m&&m.column,v;return!isNaN(y)&&!isNaN(B)&&y-1 in o&&(v=(o[y-2]||0)+B-1||0),v>-1&&v{"use strict";t.exports=s;var r="\\";function s(a,o){return g;function g(p){for(var f=0,m=p.indexOf(r),y=a[o],B=[],v;m!==-1;)B.push(p.slice(f,m)),f=m+1,v=p.charAt(f),(!v||y.indexOf(v)===-1)&&B.push(r),m=p.indexOf(r,f+1);return B.push(p.slice(f)),B.join("")}}}),nna=xl((e,t)=>{t.exports={AElig:"\xC6",AMP:"&",Aacute:"\xC1",Acirc:"\xC2",Agrave:"\xC0",Aring:"\xC5",Atilde:"\xC3",Auml:"\xC4",COPY:"\xA9",Ccedil:"\xC7",ETH:"\xD0",Eacute:"\xC9",Ecirc:"\xCA",Egrave:"\xC8",Euml:"\xCB",GT:">",Iacute:"\xCD",Icirc:"\xCE",Igrave:"\xCC",Iuml:"\xCF",LT:"<",Ntilde:"\xD1",Oacute:"\xD3",Ocirc:"\xD4",Ograve:"\xD2",Oslash:"\xD8",Otilde:"\xD5",Ouml:"\xD6",QUOT:'"',REG:"\xAE",THORN:"\xDE",Uacute:"\xDA",Ucirc:"\xDB",Ugrave:"\xD9",Uuml:"\xDC",Yacute:"\xDD",aacute:"\xE1",acirc:"\xE2",acute:"\xB4",aelig:"\xE6",agrave:"\xE0",amp:"&",aring:"\xE5",atilde:"\xE3",auml:"\xE4",brvbar:"\xA6",ccedil:"\xE7",cedil:"\xB8",cent:"\xA2",copy:"\xA9",curren:"\xA4",deg:"\xB0",divide:"\xF7",eacute:"\xE9",ecirc:"\xEA",egrave:"\xE8",eth:"\xF0",euml:"\xEB",frac12:"\xBD",frac14:"\xBC",frac34:"\xBE",gt:">",iacute:"\xED",icirc:"\xEE",iexcl:"\xA1",igrave:"\xEC",iquest:"\xBF",iuml:"\xEF",laquo:"\xAB",lt:"<",macr:"\xAF",micro:"\xB5",middot:"\xB7",nbsp:"\xA0",not:"\xAC",ntilde:"\xF1",oacute:"\xF3",ocirc:"\xF4",ograve:"\xF2",ordf:"\xAA",ordm:"\xBA",oslash:"\xF8",otilde:"\xF5",ouml:"\xF6",para:"\xB6",plusmn:"\xB1",pound:"\xA3",quot:'"',raquo:"\xBB",reg:"\xAE",sect:"\xA7",shy:"\xAD",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",szlig:"\xDF",thorn:"\xFE",times:"\xD7",uacute:"\xFA",ucirc:"\xFB",ugrave:"\xF9",uml:"\xA8",uuml:"\xFC",yacute:"\xFD",yen:"\xA5",yuml:"\xFF"}}),ina=xl((e,t)=>{t.exports={0:"\uFFFD",128:"\u20AC",130:"\u201A",131:"\u0192",132:"\u201E",133:"\u2026",134:"\u2020",135:"\u2021",136:"\u02C6",137:"\u2030",138:"\u0160",139:"\u2039",140:"\u0152",142:"\u017D",145:"\u2018",146:"\u2019",147:"\u201C",148:"\u201D",149:"\u2022",150:"\u2013",151:"\u2014",152:"\u02DC",153:"\u2122",154:"\u0161",155:"\u203A",156:"\u0153",158:"\u017E",159:"\u0178"}}),tSe=xl((e,t)=>{"use strict";t.exports=r;function r(s){var a=typeof s=="string"?s.charCodeAt(0):s;return a>=48&&a<=57}}),sna=xl((e,t)=>{"use strict";t.exports=r;function r(s){var a=typeof s=="string"?s.charCodeAt(0):s;return a>=97&&a<=102||a>=65&&a<=70||a>=48&&a<=57}}),j5e=xl((e,t)=>{"use strict";t.exports=r;function r(s){var a=typeof s=="string"?s.charCodeAt(0):s;return a>=97&&a<=122||a>=65&&a<=90}}),ona=xl((e,t)=>{"use strict";var r=j5e(),s=tSe();t.exports=a;function a(o){return r(o)||s(o)}}),ana=xl((e,t)=>{t.exports={AEli:"\xC6",AElig:"\xC6",AM:"&",AMP:"&",Aacut:"\xC1",Aacute:"\xC1",Abreve:"\u0102",Acir:"\xC2",Acirc:"\xC2",Acy:"\u0410",Afr:"\u{1D504}",Agrav:"\xC0",Agrave:"\xC0",Alpha:"\u0391",Amacr:"\u0100",And:"\u2A53",Aogon:"\u0104",Aopf:"\u{1D538}",ApplyFunction:"\u2061",Arin:"\xC5",Aring:"\xC5",Ascr:"\u{1D49C}",Assign:"\u2254",Atild:"\xC3",Atilde:"\xC3",Aum:"\xC4",Auml:"\xC4",Backslash:"\u2216",Barv:"\u2AE7",Barwed:"\u2306",Bcy:"\u0411",Because:"\u2235",Bernoullis:"\u212C",Beta:"\u0392",Bfr:"\u{1D505}",Bopf:"\u{1D539}",Breve:"\u02D8",Bscr:"\u212C",Bumpeq:"\u224E",CHcy:"\u0427",COP:"\xA9",COPY:"\xA9",Cacute:"\u0106",Cap:"\u22D2",CapitalDifferentialD:"\u2145",Cayleys:"\u212D",Ccaron:"\u010C",Ccedi:"\xC7",Ccedil:"\xC7",Ccirc:"\u0108",Cconint:"\u2230",Cdot:"\u010A",Cedilla:"\xB8",CenterDot:"\xB7",Cfr:"\u212D",Chi:"\u03A7",CircleDot:"\u2299",CircleMinus:"\u2296",CirclePlus:"\u2295",CircleTimes:"\u2297",ClockwiseContourIntegral:"\u2232",CloseCurlyDoubleQuote:"\u201D",CloseCurlyQuote:"\u2019",Colon:"\u2237",Colone:"\u2A74",Congruent:"\u2261",Conint:"\u222F",ContourIntegral:"\u222E",Copf:"\u2102",Coproduct:"\u2210",CounterClockwiseContourIntegral:"\u2233",Cross:"\u2A2F",Cscr:"\u{1D49E}",Cup:"\u22D3",CupCap:"\u224D",DD:"\u2145",DDotrahd:"\u2911",DJcy:"\u0402",DScy:"\u0405",DZcy:"\u040F",Dagger:"\u2021",Darr:"\u21A1",Dashv:"\u2AE4",Dcaron:"\u010E",Dcy:"\u0414",Del:"\u2207",Delta:"\u0394",Dfr:"\u{1D507}",DiacriticalAcute:"\xB4",DiacriticalDot:"\u02D9",DiacriticalDoubleAcute:"\u02DD",DiacriticalGrave:"`",DiacriticalTilde:"\u02DC",Diamond:"\u22C4",DifferentialD:"\u2146",Dopf:"\u{1D53B}",Dot:"\xA8",DotDot:"\u20DC",DotEqual:"\u2250",DoubleContourIntegral:"\u222F",DoubleDot:"\xA8",DoubleDownArrow:"\u21D3",DoubleLeftArrow:"\u21D0",DoubleLeftRightArrow:"\u21D4",DoubleLeftTee:"\u2AE4",DoubleLongLeftArrow:"\u27F8",DoubleLongLeftRightArrow:"\u27FA",DoubleLongRightArrow:"\u27F9",DoubleRightArrow:"\u21D2",DoubleRightTee:"\u22A8",DoubleUpArrow:"\u21D1",DoubleUpDownArrow:"\u21D5",DoubleVerticalBar:"\u2225",DownArrow:"\u2193",DownArrowBar:"\u2913",DownArrowUpArrow:"\u21F5",DownBreve:"\u0311",DownLeftRightVector:"\u2950",DownLeftTeeVector:"\u295E",DownLeftVector:"\u21BD",DownLeftVectorBar:"\u2956",DownRightTeeVector:"\u295F",DownRightVector:"\u21C1",DownRightVectorBar:"\u2957",DownTee:"\u22A4",DownTeeArrow:"\u21A7",Downarrow:"\u21D3",Dscr:"\u{1D49F}",Dstrok:"\u0110",ENG:"\u014A",ET:"\xD0",ETH:"\xD0",Eacut:"\xC9",Eacute:"\xC9",Ecaron:"\u011A",Ecir:"\xCA",Ecirc:"\xCA",Ecy:"\u042D",Edot:"\u0116",Efr:"\u{1D508}",Egrav:"\xC8",Egrave:"\xC8",Element:"\u2208",Emacr:"\u0112",EmptySmallSquare:"\u25FB",EmptyVerySmallSquare:"\u25AB",Eogon:"\u0118",Eopf:"\u{1D53C}",Epsilon:"\u0395",Equal:"\u2A75",EqualTilde:"\u2242",Equilibrium:"\u21CC",Escr:"\u2130",Esim:"\u2A73",Eta:"\u0397",Eum:"\xCB",Euml:"\xCB",Exists:"\u2203",ExponentialE:"\u2147",Fcy:"\u0424",Ffr:"\u{1D509}",FilledSmallSquare:"\u25FC",FilledVerySmallSquare:"\u25AA",Fopf:"\u{1D53D}",ForAll:"\u2200",Fouriertrf:"\u2131",Fscr:"\u2131",GJcy:"\u0403",G:">",GT:">",Gamma:"\u0393",Gammad:"\u03DC",Gbreve:"\u011E",Gcedil:"\u0122",Gcirc:"\u011C",Gcy:"\u0413",Gdot:"\u0120",Gfr:"\u{1D50A}",Gg:"\u22D9",Gopf:"\u{1D53E}",GreaterEqual:"\u2265",GreaterEqualLess:"\u22DB",GreaterFullEqual:"\u2267",GreaterGreater:"\u2AA2",GreaterLess:"\u2277",GreaterSlantEqual:"\u2A7E",GreaterTilde:"\u2273",Gscr:"\u{1D4A2}",Gt:"\u226B",HARDcy:"\u042A",Hacek:"\u02C7",Hat:"^",Hcirc:"\u0124",Hfr:"\u210C",HilbertSpace:"\u210B",Hopf:"\u210D",HorizontalLine:"\u2500",Hscr:"\u210B",Hstrok:"\u0126",HumpDownHump:"\u224E",HumpEqual:"\u224F",IEcy:"\u0415",IJlig:"\u0132",IOcy:"\u0401",Iacut:"\xCD",Iacute:"\xCD",Icir:"\xCE",Icirc:"\xCE",Icy:"\u0418",Idot:"\u0130",Ifr:"\u2111",Igrav:"\xCC",Igrave:"\xCC",Im:"\u2111",Imacr:"\u012A",ImaginaryI:"\u2148",Implies:"\u21D2",Int:"\u222C",Integral:"\u222B",Intersection:"\u22C2",InvisibleComma:"\u2063",InvisibleTimes:"\u2062",Iogon:"\u012E",Iopf:"\u{1D540}",Iota:"\u0399",Iscr:"\u2110",Itilde:"\u0128",Iukcy:"\u0406",Ium:"\xCF",Iuml:"\xCF",Jcirc:"\u0134",Jcy:"\u0419",Jfr:"\u{1D50D}",Jopf:"\u{1D541}",Jscr:"\u{1D4A5}",Jsercy:"\u0408",Jukcy:"\u0404",KHcy:"\u0425",KJcy:"\u040C",Kappa:"\u039A",Kcedil:"\u0136",Kcy:"\u041A",Kfr:"\u{1D50E}",Kopf:"\u{1D542}",Kscr:"\u{1D4A6}",LJcy:"\u0409",L:"<",LT:"<",Lacute:"\u0139",Lambda:"\u039B",Lang:"\u27EA",Laplacetrf:"\u2112",Larr:"\u219E",Lcaron:"\u013D",Lcedil:"\u013B",Lcy:"\u041B",LeftAngleBracket:"\u27E8",LeftArrow:"\u2190",LeftArrowBar:"\u21E4",LeftArrowRightArrow:"\u21C6",LeftCeiling:"\u2308",LeftDoubleBracket:"\u27E6",LeftDownTeeVector:"\u2961",LeftDownVector:"\u21C3",LeftDownVectorBar:"\u2959",LeftFloor:"\u230A",LeftRightArrow:"\u2194",LeftRightVector:"\u294E",LeftTee:"\u22A3",LeftTeeArrow:"\u21A4",LeftTeeVector:"\u295A",LeftTriangle:"\u22B2",LeftTriangleBar:"\u29CF",LeftTriangleEqual:"\u22B4",LeftUpDownVector:"\u2951",LeftUpTeeVector:"\u2960",LeftUpVector:"\u21BF",LeftUpVectorBar:"\u2958",LeftVector:"\u21BC",LeftVectorBar:"\u2952",Leftarrow:"\u21D0",Leftrightarrow:"\u21D4",LessEqualGreater:"\u22DA",LessFullEqual:"\u2266",LessGreater:"\u2276",LessLess:"\u2AA1",LessSlantEqual:"\u2A7D",LessTilde:"\u2272",Lfr:"\u{1D50F}",Ll:"\u22D8",Lleftarrow:"\u21DA",Lmidot:"\u013F",LongLeftArrow:"\u27F5",LongLeftRightArrow:"\u27F7",LongRightArrow:"\u27F6",Longleftarrow:"\u27F8",Longleftrightarrow:"\u27FA",Longrightarrow:"\u27F9",Lopf:"\u{1D543}",LowerLeftArrow:"\u2199",LowerRightArrow:"\u2198",Lscr:"\u2112",Lsh:"\u21B0",Lstrok:"\u0141",Lt:"\u226A",Map:"\u2905",Mcy:"\u041C",MediumSpace:"\u205F",Mellintrf:"\u2133",Mfr:"\u{1D510}",MinusPlus:"\u2213",Mopf:"\u{1D544}",Mscr:"\u2133",Mu:"\u039C",NJcy:"\u040A",Nacute:"\u0143",Ncaron:"\u0147",Ncedil:"\u0145",Ncy:"\u041D",NegativeMediumSpace:"\u200B",NegativeThickSpace:"\u200B",NegativeThinSpace:"\u200B",NegativeVeryThinSpace:"\u200B",NestedGreaterGreater:"\u226B",NestedLessLess:"\u226A",NewLine:` +`,Nfr:"\u{1D511}",NoBreak:"\u2060",NonBreakingSpace:"\xA0",Nopf:"\u2115",Not:"\u2AEC",NotCongruent:"\u2262",NotCupCap:"\u226D",NotDoubleVerticalBar:"\u2226",NotElement:"\u2209",NotEqual:"\u2260",NotEqualTilde:"\u2242\u0338",NotExists:"\u2204",NotGreater:"\u226F",NotGreaterEqual:"\u2271",NotGreaterFullEqual:"\u2267\u0338",NotGreaterGreater:"\u226B\u0338",NotGreaterLess:"\u2279",NotGreaterSlantEqual:"\u2A7E\u0338",NotGreaterTilde:"\u2275",NotHumpDownHump:"\u224E\u0338",NotHumpEqual:"\u224F\u0338",NotLeftTriangle:"\u22EA",NotLeftTriangleBar:"\u29CF\u0338",NotLeftTriangleEqual:"\u22EC",NotLess:"\u226E",NotLessEqual:"\u2270",NotLessGreater:"\u2278",NotLessLess:"\u226A\u0338",NotLessSlantEqual:"\u2A7D\u0338",NotLessTilde:"\u2274",NotNestedGreaterGreater:"\u2AA2\u0338",NotNestedLessLess:"\u2AA1\u0338",NotPrecedes:"\u2280",NotPrecedesEqual:"\u2AAF\u0338",NotPrecedesSlantEqual:"\u22E0",NotReverseElement:"\u220C",NotRightTriangle:"\u22EB",NotRightTriangleBar:"\u29D0\u0338",NotRightTriangleEqual:"\u22ED",NotSquareSubset:"\u228F\u0338",NotSquareSubsetEqual:"\u22E2",NotSquareSuperset:"\u2290\u0338",NotSquareSupersetEqual:"\u22E3",NotSubset:"\u2282\u20D2",NotSubsetEqual:"\u2288",NotSucceeds:"\u2281",NotSucceedsEqual:"\u2AB0\u0338",NotSucceedsSlantEqual:"\u22E1",NotSucceedsTilde:"\u227F\u0338",NotSuperset:"\u2283\u20D2",NotSupersetEqual:"\u2289",NotTilde:"\u2241",NotTildeEqual:"\u2244",NotTildeFullEqual:"\u2247",NotTildeTilde:"\u2249",NotVerticalBar:"\u2224",Nscr:"\u{1D4A9}",Ntild:"\xD1",Ntilde:"\xD1",Nu:"\u039D",OElig:"\u0152",Oacut:"\xD3",Oacute:"\xD3",Ocir:"\xD4",Ocirc:"\xD4",Ocy:"\u041E",Odblac:"\u0150",Ofr:"\u{1D512}",Ograv:"\xD2",Ograve:"\xD2",Omacr:"\u014C",Omega:"\u03A9",Omicron:"\u039F",Oopf:"\u{1D546}",OpenCurlyDoubleQuote:"\u201C",OpenCurlyQuote:"\u2018",Or:"\u2A54",Oscr:"\u{1D4AA}",Oslas:"\xD8",Oslash:"\xD8",Otild:"\xD5",Otilde:"\xD5",Otimes:"\u2A37",Oum:"\xD6",Ouml:"\xD6",OverBar:"\u203E",OverBrace:"\u23DE",OverBracket:"\u23B4",OverParenthesis:"\u23DC",PartialD:"\u2202",Pcy:"\u041F",Pfr:"\u{1D513}",Phi:"\u03A6",Pi:"\u03A0",PlusMinus:"\xB1",Poincareplane:"\u210C",Popf:"\u2119",Pr:"\u2ABB",Precedes:"\u227A",PrecedesEqual:"\u2AAF",PrecedesSlantEqual:"\u227C",PrecedesTilde:"\u227E",Prime:"\u2033",Product:"\u220F",Proportion:"\u2237",Proportional:"\u221D",Pscr:"\u{1D4AB}",Psi:"\u03A8",QUO:'"',QUOT:'"',Qfr:"\u{1D514}",Qopf:"\u211A",Qscr:"\u{1D4AC}",RBarr:"\u2910",RE:"\xAE",REG:"\xAE",Racute:"\u0154",Rang:"\u27EB",Rarr:"\u21A0",Rarrtl:"\u2916",Rcaron:"\u0158",Rcedil:"\u0156",Rcy:"\u0420",Re:"\u211C",ReverseElement:"\u220B",ReverseEquilibrium:"\u21CB",ReverseUpEquilibrium:"\u296F",Rfr:"\u211C",Rho:"\u03A1",RightAngleBracket:"\u27E9",RightArrow:"\u2192",RightArrowBar:"\u21E5",RightArrowLeftArrow:"\u21C4",RightCeiling:"\u2309",RightDoubleBracket:"\u27E7",RightDownTeeVector:"\u295D",RightDownVector:"\u21C2",RightDownVectorBar:"\u2955",RightFloor:"\u230B",RightTee:"\u22A2",RightTeeArrow:"\u21A6",RightTeeVector:"\u295B",RightTriangle:"\u22B3",RightTriangleBar:"\u29D0",RightTriangleEqual:"\u22B5",RightUpDownVector:"\u294F",RightUpTeeVector:"\u295C",RightUpVector:"\u21BE",RightUpVectorBar:"\u2954",RightVector:"\u21C0",RightVectorBar:"\u2953",Rightarrow:"\u21D2",Ropf:"\u211D",RoundImplies:"\u2970",Rrightarrow:"\u21DB",Rscr:"\u211B",Rsh:"\u21B1",RuleDelayed:"\u29F4",SHCHcy:"\u0429",SHcy:"\u0428",SOFTcy:"\u042C",Sacute:"\u015A",Sc:"\u2ABC",Scaron:"\u0160",Scedil:"\u015E",Scirc:"\u015C",Scy:"\u0421",Sfr:"\u{1D516}",ShortDownArrow:"\u2193",ShortLeftArrow:"\u2190",ShortRightArrow:"\u2192",ShortUpArrow:"\u2191",Sigma:"\u03A3",SmallCircle:"\u2218",Sopf:"\u{1D54A}",Sqrt:"\u221A",Square:"\u25A1",SquareIntersection:"\u2293",SquareSubset:"\u228F",SquareSubsetEqual:"\u2291",SquareSuperset:"\u2290",SquareSupersetEqual:"\u2292",SquareUnion:"\u2294",Sscr:"\u{1D4AE}",Star:"\u22C6",Sub:"\u22D0",Subset:"\u22D0",SubsetEqual:"\u2286",Succeeds:"\u227B",SucceedsEqual:"\u2AB0",SucceedsSlantEqual:"\u227D",SucceedsTilde:"\u227F",SuchThat:"\u220B",Sum:"\u2211",Sup:"\u22D1",Superset:"\u2283",SupersetEqual:"\u2287",Supset:"\u22D1",THOR:"\xDE",THORN:"\xDE",TRADE:"\u2122",TSHcy:"\u040B",TScy:"\u0426",Tab:" ",Tau:"\u03A4",Tcaron:"\u0164",Tcedil:"\u0162",Tcy:"\u0422",Tfr:"\u{1D517}",Therefore:"\u2234",Theta:"\u0398",ThickSpace:"\u205F\u200A",ThinSpace:"\u2009",Tilde:"\u223C",TildeEqual:"\u2243",TildeFullEqual:"\u2245",TildeTilde:"\u2248",Topf:"\u{1D54B}",TripleDot:"\u20DB",Tscr:"\u{1D4AF}",Tstrok:"\u0166",Uacut:"\xDA",Uacute:"\xDA",Uarr:"\u219F",Uarrocir:"\u2949",Ubrcy:"\u040E",Ubreve:"\u016C",Ucir:"\xDB",Ucirc:"\xDB",Ucy:"\u0423",Udblac:"\u0170",Ufr:"\u{1D518}",Ugrav:"\xD9",Ugrave:"\xD9",Umacr:"\u016A",UnderBar:"_",UnderBrace:"\u23DF",UnderBracket:"\u23B5",UnderParenthesis:"\u23DD",Union:"\u22C3",UnionPlus:"\u228E",Uogon:"\u0172",Uopf:"\u{1D54C}",UpArrow:"\u2191",UpArrowBar:"\u2912",UpArrowDownArrow:"\u21C5",UpDownArrow:"\u2195",UpEquilibrium:"\u296E",UpTee:"\u22A5",UpTeeArrow:"\u21A5",Uparrow:"\u21D1",Updownarrow:"\u21D5",UpperLeftArrow:"\u2196",UpperRightArrow:"\u2197",Upsi:"\u03D2",Upsilon:"\u03A5",Uring:"\u016E",Uscr:"\u{1D4B0}",Utilde:"\u0168",Uum:"\xDC",Uuml:"\xDC",VDash:"\u22AB",Vbar:"\u2AEB",Vcy:"\u0412",Vdash:"\u22A9",Vdashl:"\u2AE6",Vee:"\u22C1",Verbar:"\u2016",Vert:"\u2016",VerticalBar:"\u2223",VerticalLine:"|",VerticalSeparator:"\u2758",VerticalTilde:"\u2240",VeryThinSpace:"\u200A",Vfr:"\u{1D519}",Vopf:"\u{1D54D}",Vscr:"\u{1D4B1}",Vvdash:"\u22AA",Wcirc:"\u0174",Wedge:"\u22C0",Wfr:"\u{1D51A}",Wopf:"\u{1D54E}",Wscr:"\u{1D4B2}",Xfr:"\u{1D51B}",Xi:"\u039E",Xopf:"\u{1D54F}",Xscr:"\u{1D4B3}",YAcy:"\u042F",YIcy:"\u0407",YUcy:"\u042E",Yacut:"\xDD",Yacute:"\xDD",Ycirc:"\u0176",Ycy:"\u042B",Yfr:"\u{1D51C}",Yopf:"\u{1D550}",Yscr:"\u{1D4B4}",Yuml:"\u0178",ZHcy:"\u0416",Zacute:"\u0179",Zcaron:"\u017D",Zcy:"\u0417",Zdot:"\u017B",ZeroWidthSpace:"\u200B",Zeta:"\u0396",Zfr:"\u2128",Zopf:"\u2124",Zscr:"\u{1D4B5}",aacut:"\xE1",aacute:"\xE1",abreve:"\u0103",ac:"\u223E",acE:"\u223E\u0333",acd:"\u223F",acir:"\xE2",acirc:"\xE2",acut:"\xB4",acute:"\xB4",acy:"\u0430",aeli:"\xE6",aelig:"\xE6",af:"\u2061",afr:"\u{1D51E}",agrav:"\xE0",agrave:"\xE0",alefsym:"\u2135",aleph:"\u2135",alpha:"\u03B1",amacr:"\u0101",amalg:"\u2A3F",am:"&",amp:"&",and:"\u2227",andand:"\u2A55",andd:"\u2A5C",andslope:"\u2A58",andv:"\u2A5A",ang:"\u2220",ange:"\u29A4",angle:"\u2220",angmsd:"\u2221",angmsdaa:"\u29A8",angmsdab:"\u29A9",angmsdac:"\u29AA",angmsdad:"\u29AB",angmsdae:"\u29AC",angmsdaf:"\u29AD",angmsdag:"\u29AE",angmsdah:"\u29AF",angrt:"\u221F",angrtvb:"\u22BE",angrtvbd:"\u299D",angsph:"\u2222",angst:"\xC5",angzarr:"\u237C",aogon:"\u0105",aopf:"\u{1D552}",ap:"\u2248",apE:"\u2A70",apacir:"\u2A6F",ape:"\u224A",apid:"\u224B",apos:"'",approx:"\u2248",approxeq:"\u224A",arin:"\xE5",aring:"\xE5",ascr:"\u{1D4B6}",ast:"*",asymp:"\u2248",asympeq:"\u224D",atild:"\xE3",atilde:"\xE3",aum:"\xE4",auml:"\xE4",awconint:"\u2233",awint:"\u2A11",bNot:"\u2AED",backcong:"\u224C",backepsilon:"\u03F6",backprime:"\u2035",backsim:"\u223D",backsimeq:"\u22CD",barvee:"\u22BD",barwed:"\u2305",barwedge:"\u2305",bbrk:"\u23B5",bbrktbrk:"\u23B6",bcong:"\u224C",bcy:"\u0431",bdquo:"\u201E",becaus:"\u2235",because:"\u2235",bemptyv:"\u29B0",bepsi:"\u03F6",bernou:"\u212C",beta:"\u03B2",beth:"\u2136",between:"\u226C",bfr:"\u{1D51F}",bigcap:"\u22C2",bigcirc:"\u25EF",bigcup:"\u22C3",bigodot:"\u2A00",bigoplus:"\u2A01",bigotimes:"\u2A02",bigsqcup:"\u2A06",bigstar:"\u2605",bigtriangledown:"\u25BD",bigtriangleup:"\u25B3",biguplus:"\u2A04",bigvee:"\u22C1",bigwedge:"\u22C0",bkarow:"\u290D",blacklozenge:"\u29EB",blacksquare:"\u25AA",blacktriangle:"\u25B4",blacktriangledown:"\u25BE",blacktriangleleft:"\u25C2",blacktriangleright:"\u25B8",blank:"\u2423",blk12:"\u2592",blk14:"\u2591",blk34:"\u2593",block:"\u2588",bne:"=\u20E5",bnequiv:"\u2261\u20E5",bnot:"\u2310",bopf:"\u{1D553}",bot:"\u22A5",bottom:"\u22A5",bowtie:"\u22C8",boxDL:"\u2557",boxDR:"\u2554",boxDl:"\u2556",boxDr:"\u2553",boxH:"\u2550",boxHD:"\u2566",boxHU:"\u2569",boxHd:"\u2564",boxHu:"\u2567",boxUL:"\u255D",boxUR:"\u255A",boxUl:"\u255C",boxUr:"\u2559",boxV:"\u2551",boxVH:"\u256C",boxVL:"\u2563",boxVR:"\u2560",boxVh:"\u256B",boxVl:"\u2562",boxVr:"\u255F",boxbox:"\u29C9",boxdL:"\u2555",boxdR:"\u2552",boxdl:"\u2510",boxdr:"\u250C",boxh:"\u2500",boxhD:"\u2565",boxhU:"\u2568",boxhd:"\u252C",boxhu:"\u2534",boxminus:"\u229F",boxplus:"\u229E",boxtimes:"\u22A0",boxuL:"\u255B",boxuR:"\u2558",boxul:"\u2518",boxur:"\u2514",boxv:"\u2502",boxvH:"\u256A",boxvL:"\u2561",boxvR:"\u255E",boxvh:"\u253C",boxvl:"\u2524",boxvr:"\u251C",bprime:"\u2035",breve:"\u02D8",brvba:"\xA6",brvbar:"\xA6",bscr:"\u{1D4B7}",bsemi:"\u204F",bsim:"\u223D",bsime:"\u22CD",bsol:"\\",bsolb:"\u29C5",bsolhsub:"\u27C8",bull:"\u2022",bullet:"\u2022",bump:"\u224E",bumpE:"\u2AAE",bumpe:"\u224F",bumpeq:"\u224F",cacute:"\u0107",cap:"\u2229",capand:"\u2A44",capbrcup:"\u2A49",capcap:"\u2A4B",capcup:"\u2A47",capdot:"\u2A40",caps:"\u2229\uFE00",caret:"\u2041",caron:"\u02C7",ccaps:"\u2A4D",ccaron:"\u010D",ccedi:"\xE7",ccedil:"\xE7",ccirc:"\u0109",ccups:"\u2A4C",ccupssm:"\u2A50",cdot:"\u010B",cedi:"\xB8",cedil:"\xB8",cemptyv:"\u29B2",cen:"\xA2",cent:"\xA2",centerdot:"\xB7",cfr:"\u{1D520}",chcy:"\u0447",check:"\u2713",checkmark:"\u2713",chi:"\u03C7",cir:"\u25CB",cirE:"\u29C3",circ:"\u02C6",circeq:"\u2257",circlearrowleft:"\u21BA",circlearrowright:"\u21BB",circledR:"\xAE",circledS:"\u24C8",circledast:"\u229B",circledcirc:"\u229A",circleddash:"\u229D",cire:"\u2257",cirfnint:"\u2A10",cirmid:"\u2AEF",cirscir:"\u29C2",clubs:"\u2663",clubsuit:"\u2663",colon:":",colone:"\u2254",coloneq:"\u2254",comma:",",commat:"@",comp:"\u2201",compfn:"\u2218",complement:"\u2201",complexes:"\u2102",cong:"\u2245",congdot:"\u2A6D",conint:"\u222E",copf:"\u{1D554}",coprod:"\u2210",cop:"\xA9",copy:"\xA9",copysr:"\u2117",crarr:"\u21B5",cross:"\u2717",cscr:"\u{1D4B8}",csub:"\u2ACF",csube:"\u2AD1",csup:"\u2AD0",csupe:"\u2AD2",ctdot:"\u22EF",cudarrl:"\u2938",cudarrr:"\u2935",cuepr:"\u22DE",cuesc:"\u22DF",cularr:"\u21B6",cularrp:"\u293D",cup:"\u222A",cupbrcap:"\u2A48",cupcap:"\u2A46",cupcup:"\u2A4A",cupdot:"\u228D",cupor:"\u2A45",cups:"\u222A\uFE00",curarr:"\u21B7",curarrm:"\u293C",curlyeqprec:"\u22DE",curlyeqsucc:"\u22DF",curlyvee:"\u22CE",curlywedge:"\u22CF",curre:"\xA4",curren:"\xA4",curvearrowleft:"\u21B6",curvearrowright:"\u21B7",cuvee:"\u22CE",cuwed:"\u22CF",cwconint:"\u2232",cwint:"\u2231",cylcty:"\u232D",dArr:"\u21D3",dHar:"\u2965",dagger:"\u2020",daleth:"\u2138",darr:"\u2193",dash:"\u2010",dashv:"\u22A3",dbkarow:"\u290F",dblac:"\u02DD",dcaron:"\u010F",dcy:"\u0434",dd:"\u2146",ddagger:"\u2021",ddarr:"\u21CA",ddotseq:"\u2A77",de:"\xB0",deg:"\xB0",delta:"\u03B4",demptyv:"\u29B1",dfisht:"\u297F",dfr:"\u{1D521}",dharl:"\u21C3",dharr:"\u21C2",diam:"\u22C4",diamond:"\u22C4",diamondsuit:"\u2666",diams:"\u2666",die:"\xA8",digamma:"\u03DD",disin:"\u22F2",div:"\xF7",divid:"\xF7",divide:"\xF7",divideontimes:"\u22C7",divonx:"\u22C7",djcy:"\u0452",dlcorn:"\u231E",dlcrop:"\u230D",dollar:"$",dopf:"\u{1D555}",dot:"\u02D9",doteq:"\u2250",doteqdot:"\u2251",dotminus:"\u2238",dotplus:"\u2214",dotsquare:"\u22A1",doublebarwedge:"\u2306",downarrow:"\u2193",downdownarrows:"\u21CA",downharpoonleft:"\u21C3",downharpoonright:"\u21C2",drbkarow:"\u2910",drcorn:"\u231F",drcrop:"\u230C",dscr:"\u{1D4B9}",dscy:"\u0455",dsol:"\u29F6",dstrok:"\u0111",dtdot:"\u22F1",dtri:"\u25BF",dtrif:"\u25BE",duarr:"\u21F5",duhar:"\u296F",dwangle:"\u29A6",dzcy:"\u045F",dzigrarr:"\u27FF",eDDot:"\u2A77",eDot:"\u2251",eacut:"\xE9",eacute:"\xE9",easter:"\u2A6E",ecaron:"\u011B",ecir:"\xEA",ecirc:"\xEA",ecolon:"\u2255",ecy:"\u044D",edot:"\u0117",ee:"\u2147",efDot:"\u2252",efr:"\u{1D522}",eg:"\u2A9A",egrav:"\xE8",egrave:"\xE8",egs:"\u2A96",egsdot:"\u2A98",el:"\u2A99",elinters:"\u23E7",ell:"\u2113",els:"\u2A95",elsdot:"\u2A97",emacr:"\u0113",empty:"\u2205",emptyset:"\u2205",emptyv:"\u2205",emsp13:"\u2004",emsp14:"\u2005",emsp:"\u2003",eng:"\u014B",ensp:"\u2002",eogon:"\u0119",eopf:"\u{1D556}",epar:"\u22D5",eparsl:"\u29E3",eplus:"\u2A71",epsi:"\u03B5",epsilon:"\u03B5",epsiv:"\u03F5",eqcirc:"\u2256",eqcolon:"\u2255",eqsim:"\u2242",eqslantgtr:"\u2A96",eqslantless:"\u2A95",equals:"=",equest:"\u225F",equiv:"\u2261",equivDD:"\u2A78",eqvparsl:"\u29E5",erDot:"\u2253",erarr:"\u2971",escr:"\u212F",esdot:"\u2250",esim:"\u2242",eta:"\u03B7",et:"\xF0",eth:"\xF0",eum:"\xEB",euml:"\xEB",euro:"\u20AC",excl:"!",exist:"\u2203",expectation:"\u2130",exponentiale:"\u2147",fallingdotseq:"\u2252",fcy:"\u0444",female:"\u2640",ffilig:"\uFB03",fflig:"\uFB00",ffllig:"\uFB04",ffr:"\u{1D523}",filig:"\uFB01",fjlig:"fj",flat:"\u266D",fllig:"\uFB02",fltns:"\u25B1",fnof:"\u0192",fopf:"\u{1D557}",forall:"\u2200",fork:"\u22D4",forkv:"\u2AD9",fpartint:"\u2A0D",frac1:"\xBC",frac12:"\xBD",frac13:"\u2153",frac14:"\xBC",frac15:"\u2155",frac16:"\u2159",frac18:"\u215B",frac23:"\u2154",frac25:"\u2156",frac3:"\xBE",frac34:"\xBE",frac35:"\u2157",frac38:"\u215C",frac45:"\u2158",frac56:"\u215A",frac58:"\u215D",frac78:"\u215E",frasl:"\u2044",frown:"\u2322",fscr:"\u{1D4BB}",gE:"\u2267",gEl:"\u2A8C",gacute:"\u01F5",gamma:"\u03B3",gammad:"\u03DD",gap:"\u2A86",gbreve:"\u011F",gcirc:"\u011D",gcy:"\u0433",gdot:"\u0121",ge:"\u2265",gel:"\u22DB",geq:"\u2265",geqq:"\u2267",geqslant:"\u2A7E",ges:"\u2A7E",gescc:"\u2AA9",gesdot:"\u2A80",gesdoto:"\u2A82",gesdotol:"\u2A84",gesl:"\u22DB\uFE00",gesles:"\u2A94",gfr:"\u{1D524}",gg:"\u226B",ggg:"\u22D9",gimel:"\u2137",gjcy:"\u0453",gl:"\u2277",glE:"\u2A92",gla:"\u2AA5",glj:"\u2AA4",gnE:"\u2269",gnap:"\u2A8A",gnapprox:"\u2A8A",gne:"\u2A88",gneq:"\u2A88",gneqq:"\u2269",gnsim:"\u22E7",gopf:"\u{1D558}",grave:"`",gscr:"\u210A",gsim:"\u2273",gsime:"\u2A8E",gsiml:"\u2A90",g:">",gt:">",gtcc:"\u2AA7",gtcir:"\u2A7A",gtdot:"\u22D7",gtlPar:"\u2995",gtquest:"\u2A7C",gtrapprox:"\u2A86",gtrarr:"\u2978",gtrdot:"\u22D7",gtreqless:"\u22DB",gtreqqless:"\u2A8C",gtrless:"\u2277",gtrsim:"\u2273",gvertneqq:"\u2269\uFE00",gvnE:"\u2269\uFE00",hArr:"\u21D4",hairsp:"\u200A",half:"\xBD",hamilt:"\u210B",hardcy:"\u044A",harr:"\u2194",harrcir:"\u2948",harrw:"\u21AD",hbar:"\u210F",hcirc:"\u0125",hearts:"\u2665",heartsuit:"\u2665",hellip:"\u2026",hercon:"\u22B9",hfr:"\u{1D525}",hksearow:"\u2925",hkswarow:"\u2926",hoarr:"\u21FF",homtht:"\u223B",hookleftarrow:"\u21A9",hookrightarrow:"\u21AA",hopf:"\u{1D559}",horbar:"\u2015",hscr:"\u{1D4BD}",hslash:"\u210F",hstrok:"\u0127",hybull:"\u2043",hyphen:"\u2010",iacut:"\xED",iacute:"\xED",ic:"\u2063",icir:"\xEE",icirc:"\xEE",icy:"\u0438",iecy:"\u0435",iexc:"\xA1",iexcl:"\xA1",iff:"\u21D4",ifr:"\u{1D526}",igrav:"\xEC",igrave:"\xEC",ii:"\u2148",iiiint:"\u2A0C",iiint:"\u222D",iinfin:"\u29DC",iiota:"\u2129",ijlig:"\u0133",imacr:"\u012B",image:"\u2111",imagline:"\u2110",imagpart:"\u2111",imath:"\u0131",imof:"\u22B7",imped:"\u01B5",in:"\u2208",incare:"\u2105",infin:"\u221E",infintie:"\u29DD",inodot:"\u0131",int:"\u222B",intcal:"\u22BA",integers:"\u2124",intercal:"\u22BA",intlarhk:"\u2A17",intprod:"\u2A3C",iocy:"\u0451",iogon:"\u012F",iopf:"\u{1D55A}",iota:"\u03B9",iprod:"\u2A3C",iques:"\xBF",iquest:"\xBF",iscr:"\u{1D4BE}",isin:"\u2208",isinE:"\u22F9",isindot:"\u22F5",isins:"\u22F4",isinsv:"\u22F3",isinv:"\u2208",it:"\u2062",itilde:"\u0129",iukcy:"\u0456",ium:"\xEF",iuml:"\xEF",jcirc:"\u0135",jcy:"\u0439",jfr:"\u{1D527}",jmath:"\u0237",jopf:"\u{1D55B}",jscr:"\u{1D4BF}",jsercy:"\u0458",jukcy:"\u0454",kappa:"\u03BA",kappav:"\u03F0",kcedil:"\u0137",kcy:"\u043A",kfr:"\u{1D528}",kgreen:"\u0138",khcy:"\u0445",kjcy:"\u045C",kopf:"\u{1D55C}",kscr:"\u{1D4C0}",lAarr:"\u21DA",lArr:"\u21D0",lAtail:"\u291B",lBarr:"\u290E",lE:"\u2266",lEg:"\u2A8B",lHar:"\u2962",lacute:"\u013A",laemptyv:"\u29B4",lagran:"\u2112",lambda:"\u03BB",lang:"\u27E8",langd:"\u2991",langle:"\u27E8",lap:"\u2A85",laqu:"\xAB",laquo:"\xAB",larr:"\u2190",larrb:"\u21E4",larrbfs:"\u291F",larrfs:"\u291D",larrhk:"\u21A9",larrlp:"\u21AB",larrpl:"\u2939",larrsim:"\u2973",larrtl:"\u21A2",lat:"\u2AAB",latail:"\u2919",late:"\u2AAD",lates:"\u2AAD\uFE00",lbarr:"\u290C",lbbrk:"\u2772",lbrace:"{",lbrack:"[",lbrke:"\u298B",lbrksld:"\u298F",lbrkslu:"\u298D",lcaron:"\u013E",lcedil:"\u013C",lceil:"\u2308",lcub:"{",lcy:"\u043B",ldca:"\u2936",ldquo:"\u201C",ldquor:"\u201E",ldrdhar:"\u2967",ldrushar:"\u294B",ldsh:"\u21B2",le:"\u2264",leftarrow:"\u2190",leftarrowtail:"\u21A2",leftharpoondown:"\u21BD",leftharpoonup:"\u21BC",leftleftarrows:"\u21C7",leftrightarrow:"\u2194",leftrightarrows:"\u21C6",leftrightharpoons:"\u21CB",leftrightsquigarrow:"\u21AD",leftthreetimes:"\u22CB",leg:"\u22DA",leq:"\u2264",leqq:"\u2266",leqslant:"\u2A7D",les:"\u2A7D",lescc:"\u2AA8",lesdot:"\u2A7F",lesdoto:"\u2A81",lesdotor:"\u2A83",lesg:"\u22DA\uFE00",lesges:"\u2A93",lessapprox:"\u2A85",lessdot:"\u22D6",lesseqgtr:"\u22DA",lesseqqgtr:"\u2A8B",lessgtr:"\u2276",lesssim:"\u2272",lfisht:"\u297C",lfloor:"\u230A",lfr:"\u{1D529}",lg:"\u2276",lgE:"\u2A91",lhard:"\u21BD",lharu:"\u21BC",lharul:"\u296A",lhblk:"\u2584",ljcy:"\u0459",ll:"\u226A",llarr:"\u21C7",llcorner:"\u231E",llhard:"\u296B",lltri:"\u25FA",lmidot:"\u0140",lmoust:"\u23B0",lmoustache:"\u23B0",lnE:"\u2268",lnap:"\u2A89",lnapprox:"\u2A89",lne:"\u2A87",lneq:"\u2A87",lneqq:"\u2268",lnsim:"\u22E6",loang:"\u27EC",loarr:"\u21FD",lobrk:"\u27E6",longleftarrow:"\u27F5",longleftrightarrow:"\u27F7",longmapsto:"\u27FC",longrightarrow:"\u27F6",looparrowleft:"\u21AB",looparrowright:"\u21AC",lopar:"\u2985",lopf:"\u{1D55D}",loplus:"\u2A2D",lotimes:"\u2A34",lowast:"\u2217",lowbar:"_",loz:"\u25CA",lozenge:"\u25CA",lozf:"\u29EB",lpar:"(",lparlt:"\u2993",lrarr:"\u21C6",lrcorner:"\u231F",lrhar:"\u21CB",lrhard:"\u296D",lrm:"\u200E",lrtri:"\u22BF",lsaquo:"\u2039",lscr:"\u{1D4C1}",lsh:"\u21B0",lsim:"\u2272",lsime:"\u2A8D",lsimg:"\u2A8F",lsqb:"[",lsquo:"\u2018",lsquor:"\u201A",lstrok:"\u0142",l:"<",lt:"<",ltcc:"\u2AA6",ltcir:"\u2A79",ltdot:"\u22D6",lthree:"\u22CB",ltimes:"\u22C9",ltlarr:"\u2976",ltquest:"\u2A7B",ltrPar:"\u2996",ltri:"\u25C3",ltrie:"\u22B4",ltrif:"\u25C2",lurdshar:"\u294A",luruhar:"\u2966",lvertneqq:"\u2268\uFE00",lvnE:"\u2268\uFE00",mDDot:"\u223A",mac:"\xAF",macr:"\xAF",male:"\u2642",malt:"\u2720",maltese:"\u2720",map:"\u21A6",mapsto:"\u21A6",mapstodown:"\u21A7",mapstoleft:"\u21A4",mapstoup:"\u21A5",marker:"\u25AE",mcomma:"\u2A29",mcy:"\u043C",mdash:"\u2014",measuredangle:"\u2221",mfr:"\u{1D52A}",mho:"\u2127",micr:"\xB5",micro:"\xB5",mid:"\u2223",midast:"*",midcir:"\u2AF0",middo:"\xB7",middot:"\xB7",minus:"\u2212",minusb:"\u229F",minusd:"\u2238",minusdu:"\u2A2A",mlcp:"\u2ADB",mldr:"\u2026",mnplus:"\u2213",models:"\u22A7",mopf:"\u{1D55E}",mp:"\u2213",mscr:"\u{1D4C2}",mstpos:"\u223E",mu:"\u03BC",multimap:"\u22B8",mumap:"\u22B8",nGg:"\u22D9\u0338",nGt:"\u226B\u20D2",nGtv:"\u226B\u0338",nLeftarrow:"\u21CD",nLeftrightarrow:"\u21CE",nLl:"\u22D8\u0338",nLt:"\u226A\u20D2",nLtv:"\u226A\u0338",nRightarrow:"\u21CF",nVDash:"\u22AF",nVdash:"\u22AE",nabla:"\u2207",nacute:"\u0144",nang:"\u2220\u20D2",nap:"\u2249",napE:"\u2A70\u0338",napid:"\u224B\u0338",napos:"\u0149",napprox:"\u2249",natur:"\u266E",natural:"\u266E",naturals:"\u2115",nbs:"\xA0",nbsp:"\xA0",nbump:"\u224E\u0338",nbumpe:"\u224F\u0338",ncap:"\u2A43",ncaron:"\u0148",ncedil:"\u0146",ncong:"\u2247",ncongdot:"\u2A6D\u0338",ncup:"\u2A42",ncy:"\u043D",ndash:"\u2013",ne:"\u2260",neArr:"\u21D7",nearhk:"\u2924",nearr:"\u2197",nearrow:"\u2197",nedot:"\u2250\u0338",nequiv:"\u2262",nesear:"\u2928",nesim:"\u2242\u0338",nexist:"\u2204",nexists:"\u2204",nfr:"\u{1D52B}",ngE:"\u2267\u0338",nge:"\u2271",ngeq:"\u2271",ngeqq:"\u2267\u0338",ngeqslant:"\u2A7E\u0338",nges:"\u2A7E\u0338",ngsim:"\u2275",ngt:"\u226F",ngtr:"\u226F",nhArr:"\u21CE",nharr:"\u21AE",nhpar:"\u2AF2",ni:"\u220B",nis:"\u22FC",nisd:"\u22FA",niv:"\u220B",njcy:"\u045A",nlArr:"\u21CD",nlE:"\u2266\u0338",nlarr:"\u219A",nldr:"\u2025",nle:"\u2270",nleftarrow:"\u219A",nleftrightarrow:"\u21AE",nleq:"\u2270",nleqq:"\u2266\u0338",nleqslant:"\u2A7D\u0338",nles:"\u2A7D\u0338",nless:"\u226E",nlsim:"\u2274",nlt:"\u226E",nltri:"\u22EA",nltrie:"\u22EC",nmid:"\u2224",nopf:"\u{1D55F}",no:"\xAC",not:"\xAC",notin:"\u2209",notinE:"\u22F9\u0338",notindot:"\u22F5\u0338",notinva:"\u2209",notinvb:"\u22F7",notinvc:"\u22F6",notni:"\u220C",notniva:"\u220C",notnivb:"\u22FE",notnivc:"\u22FD",npar:"\u2226",nparallel:"\u2226",nparsl:"\u2AFD\u20E5",npart:"\u2202\u0338",npolint:"\u2A14",npr:"\u2280",nprcue:"\u22E0",npre:"\u2AAF\u0338",nprec:"\u2280",npreceq:"\u2AAF\u0338",nrArr:"\u21CF",nrarr:"\u219B",nrarrc:"\u2933\u0338",nrarrw:"\u219D\u0338",nrightarrow:"\u219B",nrtri:"\u22EB",nrtrie:"\u22ED",nsc:"\u2281",nsccue:"\u22E1",nsce:"\u2AB0\u0338",nscr:"\u{1D4C3}",nshortmid:"\u2224",nshortparallel:"\u2226",nsim:"\u2241",nsime:"\u2244",nsimeq:"\u2244",nsmid:"\u2224",nspar:"\u2226",nsqsube:"\u22E2",nsqsupe:"\u22E3",nsub:"\u2284",nsubE:"\u2AC5\u0338",nsube:"\u2288",nsubset:"\u2282\u20D2",nsubseteq:"\u2288",nsubseteqq:"\u2AC5\u0338",nsucc:"\u2281",nsucceq:"\u2AB0\u0338",nsup:"\u2285",nsupE:"\u2AC6\u0338",nsupe:"\u2289",nsupset:"\u2283\u20D2",nsupseteq:"\u2289",nsupseteqq:"\u2AC6\u0338",ntgl:"\u2279",ntild:"\xF1",ntilde:"\xF1",ntlg:"\u2278",ntriangleleft:"\u22EA",ntrianglelefteq:"\u22EC",ntriangleright:"\u22EB",ntrianglerighteq:"\u22ED",nu:"\u03BD",num:"#",numero:"\u2116",numsp:"\u2007",nvDash:"\u22AD",nvHarr:"\u2904",nvap:"\u224D\u20D2",nvdash:"\u22AC",nvge:"\u2265\u20D2",nvgt:">\u20D2",nvinfin:"\u29DE",nvlArr:"\u2902",nvle:"\u2264\u20D2",nvlt:"<\u20D2",nvltrie:"\u22B4\u20D2",nvrArr:"\u2903",nvrtrie:"\u22B5\u20D2",nvsim:"\u223C\u20D2",nwArr:"\u21D6",nwarhk:"\u2923",nwarr:"\u2196",nwarrow:"\u2196",nwnear:"\u2927",oS:"\u24C8",oacut:"\xF3",oacute:"\xF3",oast:"\u229B",ocir:"\xF4",ocirc:"\xF4",ocy:"\u043E",odash:"\u229D",odblac:"\u0151",odiv:"\u2A38",odot:"\u2299",odsold:"\u29BC",oelig:"\u0153",ofcir:"\u29BF",ofr:"\u{1D52C}",ogon:"\u02DB",ograv:"\xF2",ograve:"\xF2",ogt:"\u29C1",ohbar:"\u29B5",ohm:"\u03A9",oint:"\u222E",olarr:"\u21BA",olcir:"\u29BE",olcross:"\u29BB",oline:"\u203E",olt:"\u29C0",omacr:"\u014D",omega:"\u03C9",omicron:"\u03BF",omid:"\u29B6",ominus:"\u2296",oopf:"\u{1D560}",opar:"\u29B7",operp:"\u29B9",oplus:"\u2295",or:"\u2228",orarr:"\u21BB",ord:"\xBA",order:"\u2134",orderof:"\u2134",ordf:"\xAA",ordm:"\xBA",origof:"\u22B6",oror:"\u2A56",orslope:"\u2A57",orv:"\u2A5B",oscr:"\u2134",oslas:"\xF8",oslash:"\xF8",osol:"\u2298",otild:"\xF5",otilde:"\xF5",otimes:"\u2297",otimesas:"\u2A36",oum:"\xF6",ouml:"\xF6",ovbar:"\u233D",par:"\xB6",para:"\xB6",parallel:"\u2225",parsim:"\u2AF3",parsl:"\u2AFD",part:"\u2202",pcy:"\u043F",percnt:"%",period:".",permil:"\u2030",perp:"\u22A5",pertenk:"\u2031",pfr:"\u{1D52D}",phi:"\u03C6",phiv:"\u03D5",phmmat:"\u2133",phone:"\u260E",pi:"\u03C0",pitchfork:"\u22D4",piv:"\u03D6",planck:"\u210F",planckh:"\u210E",plankv:"\u210F",plus:"+",plusacir:"\u2A23",plusb:"\u229E",pluscir:"\u2A22",plusdo:"\u2214",plusdu:"\u2A25",pluse:"\u2A72",plusm:"\xB1",plusmn:"\xB1",plussim:"\u2A26",plustwo:"\u2A27",pm:"\xB1",pointint:"\u2A15",popf:"\u{1D561}",poun:"\xA3",pound:"\xA3",pr:"\u227A",prE:"\u2AB3",prap:"\u2AB7",prcue:"\u227C",pre:"\u2AAF",prec:"\u227A",precapprox:"\u2AB7",preccurlyeq:"\u227C",preceq:"\u2AAF",precnapprox:"\u2AB9",precneqq:"\u2AB5",precnsim:"\u22E8",precsim:"\u227E",prime:"\u2032",primes:"\u2119",prnE:"\u2AB5",prnap:"\u2AB9",prnsim:"\u22E8",prod:"\u220F",profalar:"\u232E",profline:"\u2312",profsurf:"\u2313",prop:"\u221D",propto:"\u221D",prsim:"\u227E",prurel:"\u22B0",pscr:"\u{1D4C5}",psi:"\u03C8",puncsp:"\u2008",qfr:"\u{1D52E}",qint:"\u2A0C",qopf:"\u{1D562}",qprime:"\u2057",qscr:"\u{1D4C6}",quaternions:"\u210D",quatint:"\u2A16",quest:"?",questeq:"\u225F",quo:'"',quot:'"',rAarr:"\u21DB",rArr:"\u21D2",rAtail:"\u291C",rBarr:"\u290F",rHar:"\u2964",race:"\u223D\u0331",racute:"\u0155",radic:"\u221A",raemptyv:"\u29B3",rang:"\u27E9",rangd:"\u2992",range:"\u29A5",rangle:"\u27E9",raqu:"\xBB",raquo:"\xBB",rarr:"\u2192",rarrap:"\u2975",rarrb:"\u21E5",rarrbfs:"\u2920",rarrc:"\u2933",rarrfs:"\u291E",rarrhk:"\u21AA",rarrlp:"\u21AC",rarrpl:"\u2945",rarrsim:"\u2974",rarrtl:"\u21A3",rarrw:"\u219D",ratail:"\u291A",ratio:"\u2236",rationals:"\u211A",rbarr:"\u290D",rbbrk:"\u2773",rbrace:"}",rbrack:"]",rbrke:"\u298C",rbrksld:"\u298E",rbrkslu:"\u2990",rcaron:"\u0159",rcedil:"\u0157",rceil:"\u2309",rcub:"}",rcy:"\u0440",rdca:"\u2937",rdldhar:"\u2969",rdquo:"\u201D",rdquor:"\u201D",rdsh:"\u21B3",real:"\u211C",realine:"\u211B",realpart:"\u211C",reals:"\u211D",rect:"\u25AD",re:"\xAE",reg:"\xAE",rfisht:"\u297D",rfloor:"\u230B",rfr:"\u{1D52F}",rhard:"\u21C1",rharu:"\u21C0",rharul:"\u296C",rho:"\u03C1",rhov:"\u03F1",rightarrow:"\u2192",rightarrowtail:"\u21A3",rightharpoondown:"\u21C1",rightharpoonup:"\u21C0",rightleftarrows:"\u21C4",rightleftharpoons:"\u21CC",rightrightarrows:"\u21C9",rightsquigarrow:"\u219D",rightthreetimes:"\u22CC",ring:"\u02DA",risingdotseq:"\u2253",rlarr:"\u21C4",rlhar:"\u21CC",rlm:"\u200F",rmoust:"\u23B1",rmoustache:"\u23B1",rnmid:"\u2AEE",roang:"\u27ED",roarr:"\u21FE",robrk:"\u27E7",ropar:"\u2986",ropf:"\u{1D563}",roplus:"\u2A2E",rotimes:"\u2A35",rpar:")",rpargt:"\u2994",rppolint:"\u2A12",rrarr:"\u21C9",rsaquo:"\u203A",rscr:"\u{1D4C7}",rsh:"\u21B1",rsqb:"]",rsquo:"\u2019",rsquor:"\u2019",rthree:"\u22CC",rtimes:"\u22CA",rtri:"\u25B9",rtrie:"\u22B5",rtrif:"\u25B8",rtriltri:"\u29CE",ruluhar:"\u2968",rx:"\u211E",sacute:"\u015B",sbquo:"\u201A",sc:"\u227B",scE:"\u2AB4",scap:"\u2AB8",scaron:"\u0161",sccue:"\u227D",sce:"\u2AB0",scedil:"\u015F",scirc:"\u015D",scnE:"\u2AB6",scnap:"\u2ABA",scnsim:"\u22E9",scpolint:"\u2A13",scsim:"\u227F",scy:"\u0441",sdot:"\u22C5",sdotb:"\u22A1",sdote:"\u2A66",seArr:"\u21D8",searhk:"\u2925",searr:"\u2198",searrow:"\u2198",sec:"\xA7",sect:"\xA7",semi:";",seswar:"\u2929",setminus:"\u2216",setmn:"\u2216",sext:"\u2736",sfr:"\u{1D530}",sfrown:"\u2322",sharp:"\u266F",shchcy:"\u0449",shcy:"\u0448",shortmid:"\u2223",shortparallel:"\u2225",sh:"\xAD",shy:"\xAD",sigma:"\u03C3",sigmaf:"\u03C2",sigmav:"\u03C2",sim:"\u223C",simdot:"\u2A6A",sime:"\u2243",simeq:"\u2243",simg:"\u2A9E",simgE:"\u2AA0",siml:"\u2A9D",simlE:"\u2A9F",simne:"\u2246",simplus:"\u2A24",simrarr:"\u2972",slarr:"\u2190",smallsetminus:"\u2216",smashp:"\u2A33",smeparsl:"\u29E4",smid:"\u2223",smile:"\u2323",smt:"\u2AAA",smte:"\u2AAC",smtes:"\u2AAC\uFE00",softcy:"\u044C",sol:"/",solb:"\u29C4",solbar:"\u233F",sopf:"\u{1D564}",spades:"\u2660",spadesuit:"\u2660",spar:"\u2225",sqcap:"\u2293",sqcaps:"\u2293\uFE00",sqcup:"\u2294",sqcups:"\u2294\uFE00",sqsub:"\u228F",sqsube:"\u2291",sqsubset:"\u228F",sqsubseteq:"\u2291",sqsup:"\u2290",sqsupe:"\u2292",sqsupset:"\u2290",sqsupseteq:"\u2292",squ:"\u25A1",square:"\u25A1",squarf:"\u25AA",squf:"\u25AA",srarr:"\u2192",sscr:"\u{1D4C8}",ssetmn:"\u2216",ssmile:"\u2323",sstarf:"\u22C6",star:"\u2606",starf:"\u2605",straightepsilon:"\u03F5",straightphi:"\u03D5",strns:"\xAF",sub:"\u2282",subE:"\u2AC5",subdot:"\u2ABD",sube:"\u2286",subedot:"\u2AC3",submult:"\u2AC1",subnE:"\u2ACB",subne:"\u228A",subplus:"\u2ABF",subrarr:"\u2979",subset:"\u2282",subseteq:"\u2286",subseteqq:"\u2AC5",subsetneq:"\u228A",subsetneqq:"\u2ACB",subsim:"\u2AC7",subsub:"\u2AD5",subsup:"\u2AD3",succ:"\u227B",succapprox:"\u2AB8",succcurlyeq:"\u227D",succeq:"\u2AB0",succnapprox:"\u2ABA",succneqq:"\u2AB6",succnsim:"\u22E9",succsim:"\u227F",sum:"\u2211",sung:"\u266A",sup:"\u2283",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",supE:"\u2AC6",supdot:"\u2ABE",supdsub:"\u2AD8",supe:"\u2287",supedot:"\u2AC4",suphsol:"\u27C9",suphsub:"\u2AD7",suplarr:"\u297B",supmult:"\u2AC2",supnE:"\u2ACC",supne:"\u228B",supplus:"\u2AC0",supset:"\u2283",supseteq:"\u2287",supseteqq:"\u2AC6",supsetneq:"\u228B",supsetneqq:"\u2ACC",supsim:"\u2AC8",supsub:"\u2AD4",supsup:"\u2AD6",swArr:"\u21D9",swarhk:"\u2926",swarr:"\u2199",swarrow:"\u2199",swnwar:"\u292A",szli:"\xDF",szlig:"\xDF",target:"\u2316",tau:"\u03C4",tbrk:"\u23B4",tcaron:"\u0165",tcedil:"\u0163",tcy:"\u0442",tdot:"\u20DB",telrec:"\u2315",tfr:"\u{1D531}",there4:"\u2234",therefore:"\u2234",theta:"\u03B8",thetasym:"\u03D1",thetav:"\u03D1",thickapprox:"\u2248",thicksim:"\u223C",thinsp:"\u2009",thkap:"\u2248",thksim:"\u223C",thor:"\xFE",thorn:"\xFE",tilde:"\u02DC",time:"\xD7",times:"\xD7",timesb:"\u22A0",timesbar:"\u2A31",timesd:"\u2A30",tint:"\u222D",toea:"\u2928",top:"\u22A4",topbot:"\u2336",topcir:"\u2AF1",topf:"\u{1D565}",topfork:"\u2ADA",tosa:"\u2929",tprime:"\u2034",trade:"\u2122",triangle:"\u25B5",triangledown:"\u25BF",triangleleft:"\u25C3",trianglelefteq:"\u22B4",triangleq:"\u225C",triangleright:"\u25B9",trianglerighteq:"\u22B5",tridot:"\u25EC",trie:"\u225C",triminus:"\u2A3A",triplus:"\u2A39",trisb:"\u29CD",tritime:"\u2A3B",trpezium:"\u23E2",tscr:"\u{1D4C9}",tscy:"\u0446",tshcy:"\u045B",tstrok:"\u0167",twixt:"\u226C",twoheadleftarrow:"\u219E",twoheadrightarrow:"\u21A0",uArr:"\u21D1",uHar:"\u2963",uacut:"\xFA",uacute:"\xFA",uarr:"\u2191",ubrcy:"\u045E",ubreve:"\u016D",ucir:"\xFB",ucirc:"\xFB",ucy:"\u0443",udarr:"\u21C5",udblac:"\u0171",udhar:"\u296E",ufisht:"\u297E",ufr:"\u{1D532}",ugrav:"\xF9",ugrave:"\xF9",uharl:"\u21BF",uharr:"\u21BE",uhblk:"\u2580",ulcorn:"\u231C",ulcorner:"\u231C",ulcrop:"\u230F",ultri:"\u25F8",umacr:"\u016B",um:"\xA8",uml:"\xA8",uogon:"\u0173",uopf:"\u{1D566}",uparrow:"\u2191",updownarrow:"\u2195",upharpoonleft:"\u21BF",upharpoonright:"\u21BE",uplus:"\u228E",upsi:"\u03C5",upsih:"\u03D2",upsilon:"\u03C5",upuparrows:"\u21C8",urcorn:"\u231D",urcorner:"\u231D",urcrop:"\u230E",uring:"\u016F",urtri:"\u25F9",uscr:"\u{1D4CA}",utdot:"\u22F0",utilde:"\u0169",utri:"\u25B5",utrif:"\u25B4",uuarr:"\u21C8",uum:"\xFC",uuml:"\xFC",uwangle:"\u29A7",vArr:"\u21D5",vBar:"\u2AE8",vBarv:"\u2AE9",vDash:"\u22A8",vangrt:"\u299C",varepsilon:"\u03F5",varkappa:"\u03F0",varnothing:"\u2205",varphi:"\u03D5",varpi:"\u03D6",varpropto:"\u221D",varr:"\u2195",varrho:"\u03F1",varsigma:"\u03C2",varsubsetneq:"\u228A\uFE00",varsubsetneqq:"\u2ACB\uFE00",varsupsetneq:"\u228B\uFE00",varsupsetneqq:"\u2ACC\uFE00",vartheta:"\u03D1",vartriangleleft:"\u22B2",vartriangleright:"\u22B3",vcy:"\u0432",vdash:"\u22A2",vee:"\u2228",veebar:"\u22BB",veeeq:"\u225A",vellip:"\u22EE",verbar:"|",vert:"|",vfr:"\u{1D533}",vltri:"\u22B2",vnsub:"\u2282\u20D2",vnsup:"\u2283\u20D2",vopf:"\u{1D567}",vprop:"\u221D",vrtri:"\u22B3",vscr:"\u{1D4CB}",vsubnE:"\u2ACB\uFE00",vsubne:"\u228A\uFE00",vsupnE:"\u2ACC\uFE00",vsupne:"\u228B\uFE00",vzigzag:"\u299A",wcirc:"\u0175",wedbar:"\u2A5F",wedge:"\u2227",wedgeq:"\u2259",weierp:"\u2118",wfr:"\u{1D534}",wopf:"\u{1D568}",wp:"\u2118",wr:"\u2240",wreath:"\u2240",wscr:"\u{1D4CC}",xcap:"\u22C2",xcirc:"\u25EF",xcup:"\u22C3",xdtri:"\u25BD",xfr:"\u{1D535}",xhArr:"\u27FA",xharr:"\u27F7",xi:"\u03BE",xlArr:"\u27F8",xlarr:"\u27F5",xmap:"\u27FC",xnis:"\u22FB",xodot:"\u2A00",xopf:"\u{1D569}",xoplus:"\u2A01",xotime:"\u2A02",xrArr:"\u27F9",xrarr:"\u27F6",xscr:"\u{1D4CD}",xsqcup:"\u2A06",xuplus:"\u2A04",xutri:"\u25B3",xvee:"\u22C1",xwedge:"\u22C0",yacut:"\xFD",yacute:"\xFD",yacy:"\u044F",ycirc:"\u0177",ycy:"\u044B",ye:"\xA5",yen:"\xA5",yfr:"\u{1D536}",yicy:"\u0457",yopf:"\u{1D56A}",yscr:"\u{1D4CE}",yucy:"\u044E",yum:"\xFF",yuml:"\xFF",zacute:"\u017A",zcaron:"\u017E",zcy:"\u0437",zdot:"\u017C",zeetrf:"\u2128",zeta:"\u03B6",zfr:"\u{1D537}",zhcy:"\u0436",zigrarr:"\u21DD",zopf:"\u{1D56B}",zscr:"\u{1D4CF}",zwj:"\u200D",zwnj:"\u200C"}}),cna=xl((e,t)=>{"use strict";var r=ana();t.exports=a;var s={}.hasOwnProperty;function a(o){return s.call(r,o)?r[o]:!1}}),ECt=xl((e,t)=>{"use strict";var r=nna(),s=ina(),a=tSe(),o=sna(),g=ona(),p=cna();t.exports=dr;var f={}.hasOwnProperty,m=String.fromCharCode,y=Function.prototype,B={warning:null,reference:null,text:null,warningContext:null,referenceContext:null,textContext:null,position:{},additional:null,attribute:!1,nonTerminated:!0},v=9,k=10,T=12,O=32,X=38,U=59,le=60,ae=61,ge=35,fe=88,pe=120,he=65533,be="named",Te="hexadecimal",ke="decimal",x={};x[Te]=16,x[ke]=10;var et={};et[be]=g,et[ke]=a,et[Te]=o;var Ue=1,Je=2,Xe=3,ft=4,Gt=5,er=6,Ur=7,Ot={};Ot[Ue]="Named character references must be terminated by a semicolon",Ot[Je]="Numeric character references must be terminated by a semicolon",Ot[Xe]="Named character references cannot be empty",Ot[ft]="Numeric character references cannot be empty",Ot[Gt]="Named character references must be known",Ot[er]="Numeric character references cannot be disallowed",Ot[Ur]="Numeric character references cannot be outside the permissible Unicode range";function dr($r,Or){var In={},Br,tr;Or||(Or={});for(tr in B)Br=Or[tr],In[tr]=Br??B[tr];return(In.position.indent||In.position.start)&&(In.indent=In.position.indent||[],In.position=In.position.start),Ar($r,In)}function Ar($r,Or){var In=Or.additional,Br=Or.nonTerminated,tr=Or.text,gn=Or.reference,Gn=Or.warning,we=Or.textContext,Zi=Or.referenceContext,Fa=Or.warningContext,xa=Or.position,Qs=Or.indent||[],lr=$r.length,ua=0,vi=-1,Hu=xa.column||1,Yu=xa.line||1,YA="",gd=[],NA,Vd,jr,Gr,Ir,nn,Cn,Vn,Ji,Yr,Vs,Uo,ai,da,og,Zu,mg,Lu,ml;for(typeof In=="string"&&(In=In.charCodeAt(0)),Zu=wi(),Vn=Gn?ts:y,ua--,lr++;++ua65535&&(nn-=65536,Yr+=m(nn>>>10|55296),nn=56320|nn&1023),nn=Yr+m(nn))):da!==be&&Vn(ft,Lu)),nn?($i(),Zu=wi(),ua=ml-1,Hu+=ml-ai+1,gd.push(nn),mg=wi(),mg.offset++,gn&&gn.call(Zi,nn,{start:Zu,end:mg},$r.slice(ai-1,ml)),Zu=mg):(Gr=$r.slice(ai-1,ml),YA+=Gr,Hu+=Gr.length,ua=ml-1)}else Ir===10&&(Yu++,vi++,Hu=0),Ir===Ir?(YA+=m(Ir),Hu++):$i();return gd.join("");function wi(){return{line:Yu,column:Hu,offset:ua+(xa.offset||0)}}function ts(ka,qs){var kl=wi();kl.column+=qs,kl.offset+=qs,Gn.call(Fa,Ot[ka],kl,ka)}function $i(){YA&&(gd.push(YA),tr&&tr.call(we,YA,{start:Zu,end:wi()}),YA="")}}function or($r){return $r>=55296&&$r<=57343||$r>1114111}function Fr($r){return $r>=1&&$r<=8||$r===11||$r>=13&&$r<=31||$r>=127&&$r<=159||$r>=64976&&$r<=65007||($r&65535)===65535||($r&65535)===65534}}),lna=xl((e,t)=>{"use strict";var r=eSe(),s=ECt();t.exports=a;function a(o){return p.raw=f,p;function g(y){for(var B=o.offset,v=y.line,k=[];++v&&v in B;)k.push((B[v]||0)+1);return{start:y,indent:k}}function p(y,B,v){s(y,{position:g(B),warning:m,text:v,reference:v,textContext:o,referenceContext:o})}function f(y,B,v){return s(y,r(v,{position:g(B),warning:m}))}function m(y,B,v){v!==3&&o.file.message(y,B)}}}),una=xl((e,t)=>{"use strict";t.exports=r;function r(g){return p;function p(f,m){var y=this,B=y.offset,v=[],k=y[g+"Methods"],T=y[g+"Tokenizers"],O=m.line,X=m.column,U,le,ae,ge,fe,pe;if(!f)return v;for(Je.now=Te,Je.file=y.file,he("");f;){for(U=-1,le=k.length,fe=!1;++U{"use strict";t.exports=o;var r=["\\","`","*","{","}","[","]","(",")","#","+","-",".","!","_",">"],s=r.concat(["~","|"]),a=s.concat([` -`,'"',"$","%","&","'",",","/",":",";","<","=","?","@","^"]);o.default=r,o.gfm=s,o.commonmark=a;function o(g){var p=g||{};return p.commonmark?a:p.gfm?s:r}}),jra=Dl((e,t)=>{"use strict";t.exports=["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","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","iframe","legend","li","link","main","menu","menuitem","meta","nav","noframes","ol","optgroup","option","p","param","pre","section","source","title","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"]}),eni=Dl((e,t)=>{"use strict";t.exports={position:!0,gfm:!0,commonmark:!1,pedantic:!1,blocks:jra()}}),zra=Dl((e,t)=>{"use strict";var r=zve(),s=Kra(),a=eni();t.exports=o;function o(g){var p=this,f=p.options,m,y;if(g==null)g={};else if(typeof g=="object")g=r(g);else throw new Error("Invalid value `"+g+"` for setting `options`");for(m in a){if(y=g[m],y==null&&(y=f[m]),m!=="blocks"&&typeof y!="boolean"||m==="blocks"&&typeof y!="object")throw new Error("Invalid value `"+y+"` for setting `options."+m+"`");g[m]=y}return p.options=g,p.escape=s(g),p}}),qra=Dl((e,t)=>{"use strict";t.exports=r;function r(p){if(p==null)return g;if(typeof p=="string")return o(p);if(typeof p=="object")return"length"in p?a(p):s(p);if(typeof p=="function")return p;throw new Error("Expected function, string, or object as test")}function s(p){return f;function f(m){var y;for(y in p)if(m[y]!==p[y])return!1;return!0}}function a(p){for(var f=[],m=-1;++m{t.exports=r;function r(s){return s}}),ena=Dl((e,t)=>{"use strict";t.exports=p;var r=qra(),s=$ra(),a=!0,o="skip",g=!1;p.CONTINUE=a,p.SKIP=o,p.EXIT=g;function p(m,y,B,v){var G,T;typeof y=="function"&&typeof B!="function"&&(v=B,B=y,y=null),T=r(y),G=v?-1:1,O(m,null,[])();function O(X,U,le){var ae=typeof X=="object"&&X!==null?X:{},ge;return typeof ae.type=="string"&&(ge=typeof ae.tagName=="string"?ae.tagName:typeof ae.name=="string"?ae.name:void 0,fe.displayName="node ("+s(ae.type+(ge?"<"+ge+">":""))+")"),fe;function fe(){var pe=le.concat(X),he=[],be,Te;if((!y||T(X,U,le[le.length-1]||null))&&(he=f(B(X,le)),he[0]===g))return he;if(X.children&&he[0]!==o)for(Te=(v?X.children.length:-1)+G;Te>-1&&Te{"use strict";t.exports=g;var r=ena(),s=r.CONTINUE,a=r.SKIP,o=r.EXIT;g.CONTINUE=s,g.SKIP=a,g.EXIT=o;function g(p,f,m,y){typeof f=="function"&&typeof m!="function"&&(y=m,m=f,f=null),r(p,f,B,y);function B(v,G){var T=G[G.length-1],O=T?T.children.indexOf(v):null;return m(v,O,T)}}}),rna=Dl((e,t)=>{"use strict";var r=tna();t.exports=s;function s(g,p){return r(g,p?a:o),g}function a(g){delete g.position}function o(g){g.position=void 0}}),nna=Dl((e,t)=>{"use strict";var r=zve(),s=rna();t.exports=g;var a=` -`,o=/\r\n|\r/g;function g(){var p=this,f=String(p.file),m={line:1,column:1,offset:0},y=r(m),B;return f=f.replace(o,a),f.charCodeAt(0)===65279&&(f=f.slice(1),y.column++,y.offset++),B={type:"root",children:p.tokenizeBlock(f,y),position:{start:m,end:p.eof||r(m)}},p.options.position||s(B,!0),B}}),ina=Dl((e,t)=>{"use strict";var r=/^[ \t]*(\n|$)/;t.exports=s;function s(a,o,g){for(var p,f="",m=0,y=o.length;m{"use strict";var r="",s;t.exports=a;function a(o,g){if(typeof o!="string")throw new TypeError("expected a string");if(g===1)return o;if(g===2)return o+o;var p=o.length*g;if(s!==o||typeof s>"u")s=o,r="";else if(r.length>=p)return r.substr(0,p);for(;p>r.length&&g>1;)g&1&&(r+=o),g>>=1,o+=o;return r+=o,r=r.substr(0,p),r}}),tni=Dl((e,t)=>{"use strict";t.exports=r;function r(s){return String(s).replace(/\n+$/,"")}}),sna=Dl((e,t)=>{"use strict";var r=Jgr(),s=tni();t.exports=m;var a=` -`,o=" ",g=" ",p=4,f=r(g,p);function m(y,B,v){for(var G=-1,T=B.length,O="",X="",U="",le="",ae,ge,fe;++G{"use strict";t.exports=m;var r=` -`,s=" ",a=" ",o="~",g="`",p=3,f=4;function m(y,B,v){var G=this,T=G.options.gfm,O=B.length+1,X=0,U="",le,ae,ge,fe,pe,he,be,Te,ke,x,et,Ue,Je;if(T){for(;X=f)){for(be="";X{e=t.exports=r;function r(s){return s.trim?s.trim():e.right(e.left(s))}e.left=function(s){return s.trimLeft?s.trimLeft():s.replace(/^\s\s*/,"")},e.right=function(s){if(s.trimRight)return s.trimRight();for(var a=/\s/,o=s.length;a.test(s.charAt(--o)););return s.slice(0,o+1)}}),Ugr=Dl((e,t)=>{"use strict";t.exports=r;function r(s,a,o,g){for(var p=s.length,f=-1,m,y;++f{"use strict";var r=$ve(),s=Ugr();t.exports=f;var a=` -`,o=" ",g=" ",p=">";function f(m,y,B){for(var v=this,G=v.offset,T=v.blockTokenizers,O=v.interruptBlockquote,X=m.now(),U=X.line,le=y.length,ae=[],ge=[],fe=[],pe,he=0,be,Te,ke,x,et,Ue,Je,Xe;he{"use strict";t.exports=p;var r=` -`,s=" ",a=" ",o="#",g=6;function p(f,m,y){for(var B=this,v=B.options.pedantic,G=m.length+1,T=-1,O=f.now(),X="",U="",le,ae,ge;++Tg)&&!(!ge||!v&&m.charAt(T+1)===o)){for(G=m.length+1,ae="";++T{"use strict";t.exports=m;var r=" ",s=` -`,a=" ",o="*",g="-",p="_",f=3;function m(y,B,v){for(var G=-1,T=B.length+1,O="",X,U,le,ae;++G=f&&(!X||X===s)?(O+=ae,v?!0:y(O)({type:"thematicBreak"})):void 0}}),rni=Dl((e,t)=>{"use strict";t.exports=g;var r=" ",s=" ",a=1,o=4;function g(p){for(var f=0,m=0,y=p.charAt(f),B={},v,G=0;y===r||y===s;){for(v=y===r?o:a,m+=v,v>1&&(m=Math.floor(m/v)*v);G{"use strict";var r=$ve(),s=Jgr(),a=rni();t.exports=f;var o=` -`,g=" ",p="!";function f(m,y){var B=m.split(o),v=B.length+1,G=1/0,T=[],O,X,U;for(B.unshift(s(g,y)+p);v--;)if(X=a(B[v]),T[v]=X.stops,r(B[v]).length!==0)if(X.indent)X.indent>0&&X.indent{"use strict";var r=$ve(),s=Jgr(),a=qve(),o=rni(),g=una(),p=Ugr();t.exports=be;var f="*",m="_",y="+",B="-",v=".",G=" ",T=` -`,O=" ",X=")",U="x",le=4,ae=/\n\n(?!\s*$)/,ge=/^\[([ X\tx])][ \t]/,fe=/^([ \t]*)([*+-]|\d+[.)])( {1,4}(?! )| |\t|$|(?=\n))([^\n]*)/,pe=/^([ \t]*)([*+-]|\d+[.)])([ \t]+)/,he=/^( {1,4}|\t)?/gm;function be(et,Ue,Je){for(var Xe=this,ft=Xe.options.commonmark,Gt=Xe.options.pedantic,er=Xe.blockTokenizers,Ur=Xe.interruptList,Ot=0,dr=Ue.length,Ar=null,or,Fr,$r,Or,In,Br,tr,gn,Gn,we,Zi,Za,ka,Qs,lr,ga,vi,Qu,Yu,YA=!1,ud,TA,Ld,jr;Ot=vi.indent&&(jr=!0),Or=Ue.charAt(Ot),Gn=null,!jr){if(Or===f||Or===y||Or===B)Gn=Or,Ot++,or++;else{for(Fr="";Ot=vi.indent||or>le),gn=!1,Ot=tr;if(Zi=Ue.slice(tr,Br),we=tr===Ot?Zi:Ue.slice(Ot,Br),(Gn===f||Gn===m||Gn===B)&&er.thematicBreak.call(Xe,et,Zi,!0))break;if(Za=ka,ka=!gn&&!r(we).length,jr&&vi)vi.value=vi.value.concat(ga,Zi),lr=lr.concat(ga,Zi),ga=[];else if(gn)ga.length!==0&&(YA=!0,vi.value.push(""),vi.trail=ga.concat()),vi={value:[Zi],indent:or,trail:[]},Qs.push(vi),lr=lr.concat(ga,Zi),ga=[];else if(ka){if(Za&&!ft)break;ga.push(Zi)}else{if(Za||p(Ur,er,Xe,[et,Zi,!0]))break;vi.value=vi.value.concat(ga,Zi),lr=lr.concat(ga,Zi),ga=[]}Ot=Br+1}for(ud=et(lr.join(T)).reset({type:"list",ordered:$r,start:Ar,spread:YA,children:[]}),Qu=Xe.enterList(),Yu=Xe.enterBlock(),Ot=-1,dr=Qs.length;++Ot{"use strict";t.exports=y;var r=` -`,s=" ",a=" ",o="=",g="-",p=3,f=1,m=2;function y(B,v,G){for(var T=this,O=B.now(),X=v.length,U=-1,le="",ae,ge,fe,pe,he;++U=p){U--;break}le+=fe}for(ae="",ge="";++U{"use strict";var t="[a-zA-Z_:][a-zA-Z0-9:._-]*",r="[^\"'=<>`\\u0000-\\u0020]+",s="'[^']*'",a='"[^"]*"',o="(?:"+r+"|"+s+"|"+a+")",g="(?:\\s+"+t+"(?:\\s*=\\s*"+o+")?)",p="<[A-Za-z][A-Za-z0-9\\-]*"+g+"*\\s*\\/?>",f="<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>",m="|",y="<[?].*?[?]>",B="]*>",v="";e.openCloseTag=new RegExp("^(?:"+p+"|"+f+")"),e.tag=new RegExp("^(?:"+p+"|"+f+"|"+m+"|"+y+"|"+B+"|"+v+")")}),dna=Dl((e,t)=>{"use strict";var r=nni().openCloseTag;t.exports=ae;var s=" ",a=" ",o=` -`,g="<",p=/^<(script|pre|style)(?=(\s|>|$))/i,f=/<\/(script|pre|style)>/i,m=/^/,B=/^<\?/,v=/\?>/,G=/^/,O=/^/,U=/^$/,le=new RegExp(r.source+"\\s*$");function ae(ge,fe,pe){for(var he=this,be=he.options.blocks.join("|"),Te=new RegExp("^|$))","i"),ke=fe.length,x=0,et,Ue,Je,Xe,ft,Gt,er,Ur=[[p,f,!0],[m,y,!0],[B,v,!0],[G,T,!0],[O,X,!0],[Te,U,!0],[le,U,!1]];x{"use strict";t.exports=a;var r=String.fromCharCode,s=/\s/;function a(o){return s.test(typeof o=="number"?r(o):o.charAt(0))}}),ini=Dl((e,t)=>{"use strict";var r=Xgr();t.exports=s;function s(a){return r(a).toLowerCase()}}),pna=Dl((e,t)=>{"use strict";var r=Wz(),s=ini();t.exports=U;var a='"',o="'",g="\\",p=` -`,f=" ",m=" ",y="[",B="]",v="(",G=")",T=":",O="<",X=">";function U(ge,fe,pe){for(var he=this,be=he.options.commonmark,Te=0,ke=fe.length,x="",et,Ue,Je,Xe,ft,Gt,er,Ur;Te{"use strict";var r=Wz();t.exports=O;var s=" ",a=` -`,o=" ",g="-",p=":",f="\\",m="|",y=1,B=2,v="left",G="center",T="right";function O(X,U,le){var ae=this,ge,fe,pe,he,be,Te,ke,x,et,Ue,Je,Xe,ft,Gt,er,Ur,Ot,dr,Ar,or,Fr,$r;if(ae.options.gfm){for(ge=0,Ur=0,Te=U.length+1,ke=[];geor){if(Ur1&&(et?(he+=x.slice(0,-1),x=x.charAt(x.length-1)):(he+=x,x="")),Gt=X.now(),X(he)({type:"tableCell",children:ae.tokenizeInline(Xe,Gt)},be)),X(x+et),x="",Xe=""):(x&&(Xe+=x,x=""),Xe+=et,et===f&&ge!==Te-2&&(Xe+=Ot.charAt(ge+1),ge++)),ft=!1,ge++}er||X(a+fe)}return Ar}}}}),Ina=Dl((e,t)=>{"use strict";var r=$ve(),s=tni(),a=Ugr();t.exports=m;var o=" ",g=` -`,p=" ",f=4;function m(y,B,v){for(var G=this,T=G.options,O=T.commonmark,X=G.blockTokenizers,U=G.interruptParagraph,le=B.indexOf(g),ae=B.length,ge,fe,pe,he,be;le=f&&pe!==g){le=B.indexOf(g,le+1);continue}}if(fe=B.slice(le+1),a(U,X,G,[y,fe,!0]))break;if(ge=le,le=B.indexOf(g,le+1),le!==-1&&r(B.slice(ge,le))===""){le=ge;break}}return fe=B.slice(0,le),v?!0:(be=y.now(),fe=s(fe),y(fe)({type:"paragraph",children:G.tokenizeInline(fe,be)}))}}),Cna=Dl((e,t)=>{"use strict";t.exports=r;function r(s,a){return s.indexOf("\\",a)}}),mna=Dl((e,t)=>{"use strict";var r=Cna();t.exports=o,o.locator=r;var s=` -`,a="\\";function o(g,p,f){var m=this,y,B;if(p.charAt(0)===a&&(y=p.charAt(1),m.escape.indexOf(y)!==-1))return f?!0:(y===s?B={type:"break"}:B={type:"text",value:y},g(a+y)(B))}}),sni=Dl((e,t)=>{"use strict";t.exports=r;function r(s,a){return s.indexOf("<",a)}}),hna=Dl((e,t)=>{"use strict";var r=Wz(),s=_Ct(),a=sni();t.exports=B,B.locator=a,B.notInLink=!0;var o="<",g=">",p="@",f="/",m="mailto:",y=m.length;function B(v,G,T){var O=this,X="",U=G.length,le=0,ae="",ge=!1,fe="",pe,he,be,Te,ke;if(G.charAt(0)===o){for(le++,X=o;le{"use strict";t.exports=r;function r(s,a){var o=String(s),g=0,p;if(typeof a!="string")throw new Error("Expected character");for(p=o.indexOf(a);p!==-1;)g++,p=o.indexOf(a,p+a.length);return g}}),yna=Dl((e,t)=>{"use strict";t.exports=s;var r=["www.","http://","https://"];function s(a,o){var g=-1,p,f,m;if(!this.options.gfm)return g;for(f=r.length,p=-1;++p{"use strict";var r=_na(),s=_Ct(),a=qve(),o=UQe(),g=Wz(),p=yna();t.exports=he,he.locator=p,he.notInLink=!0;var f=33,m=38,y=41,B=42,v=44,G=45,T=46,O=58,X=59,U=63,le=60,ae=95,ge=126,fe="(",pe=")";function he(be,Te,ke){var x=this,et=x.options.gfm,Ue=x.inlineTokenizers,Je=Te.length,Xe=-1,ft=!1,Gt,er,Ur,Ot,dr,Ar,or,Fr,$r,Or,In,Br,tr,gn;if(et){if(Te.slice(0,4)==="www.")ft=!0,Ot=4;else if(Te.slice(0,7).toLowerCase()==="http://")Ot=7;else if(Te.slice(0,8).toLowerCase()==="https://")Ot=8;else return;for(Xe=Ot-1,Ur=Ot,Gt=[];Ot$r;)Ot=dr+Ar.lastIndexOf(pe),Ar=Te.slice(dr,Ot),Or--;if(Te.charCodeAt(Ot-1)===X&&(Ot--,o(Te.charCodeAt(Ot-1)))){for(Fr=Ot-2;o(Te.charCodeAt(Fr));)Fr--;Te.charCodeAt(Fr)===m&&(Ot=Fr)}return In=Te.slice(0,Ot),tr=s(In,{nonTerminated:!1}),ft&&(tr="http://"+tr),gn=x.enterLink(),x.inlineTokenizers={text:Ue.text},Br=x.tokenizeInline(In,be.now()),x.inlineTokenizers=Ue,gn(),be(In)({type:"link",title:null,url:tr,children:Br})}}}}),Ena=Dl((e,t)=>{"use strict";var r=qve(),s=UQe(),a=43,o=45,g=46,p=95;t.exports=f;function f(y,B){var v=this,G,T;if(!this.options.gfm||(G=y.indexOf("@",B),G===-1))return-1;if(T=G,T===B||!m(y.charCodeAt(T-1)))return f.call(v,y,G+1);for(;T>B&&m(y.charCodeAt(T-1));)T--;return T}function m(y){return r(y)||s(y)||y===a||y===o||y===g||y===p}}),Bna=Dl((e,t)=>{"use strict";var r=_Ct(),s=qve(),a=UQe(),o=Ena();t.exports=B,B.locator=o,B.notInLink=!0;var g=43,p=45,f=46,m=64,y=95;function B(v,G,T){var O=this,X=O.options.gfm,U=O.inlineTokenizers,le=0,ae=G.length,ge=-1,fe,pe,he,be;if(X){for(fe=G.charCodeAt(le);s(fe)||a(fe)||fe===g||fe===p||fe===f||fe===y;)fe=G.charCodeAt(++le);if(le!==0&&fe===m){for(le++;le{"use strict";var r=UQe(),s=sni(),a=nni().tag;t.exports=B,B.locator=s;var o="<",g="?",p="!",f="/",m=/^/i;function B(v,G,T){var O=this,X=G.length,U,le;if(!(G.charAt(0)!==o||X<3)&&(U=G.charAt(1),!(!r(U)&&U!==g&&U!==p&&U!==f)&&(le=G.match(a),!!le)))return T?!0:(le=le[0],!O.inLink&&m.test(le)?O.inLink=!0:O.inLink&&y.test(le)&&(O.inLink=!1),v(le)({type:"html",value:le}))}}),oni=Dl((e,t)=>{"use strict";t.exports=r;function r(s,a){var o=s.indexOf("[",a),g=s.indexOf("![",a);return g===-1||o{"use strict";var r=Wz(),s=oni();t.exports=X,X.locator=s;var a=` -`,o="!",g='"',p="'",f="(",m=")",y="<",B=">",v="[",G="\\",T="]",O="`";function X(U,le,ae){var ge=this,fe="",pe=0,he=le.charAt(0),be=ge.options.pedantic,Te=ge.options.commonmark,ke=ge.options.gfm,x,et,Ue,Je,Xe,ft,Gt,er,Ur,Ot,dr,Ar,or,Fr,$r,Or,In,Br;if(he===o&&(er=!0,fe=he,he=le.charAt(++pe)),he===v&&!(!er&&ge.inLink)){for(fe+=he,Fr="",pe++,dr=le.length,Or=U.now(),or=0,Or.column+=pe,Or.offset+=pe;pe=Ue&&(Ue=0):Ue=et}else if(he===G)pe++,ft+=le.charAt(pe);else if((!Ue||ke)&&he===v)or++;else if((!Ue||ke)&&he===T)if(or)or--;else{if(le.charAt(pe+1)!==f)return;ft+=f,x=!0,pe++;break}Fr+=ft,ft="",pe++}if(x){for(Ur=Fr,fe+=Fr+ft,pe++;pe{"use strict";var r=Wz(),s=oni(),a=ini();t.exports=T,T.locator=s;var o="link",g="image",p="shortcut",f="collapsed",m="full",y="!",B="[",v="\\",G="]";function T(O,X,U){var le=this,ae=le.options.commonmark,ge=X.charAt(0),fe=0,pe=X.length,he="",be="",Te=o,ke=p,x,et,Ue,Je,Xe,ft,Gt,er;if(ge===y&&(Te=g,be=ge,ge=X.charAt(++fe)),ge===B){for(fe++,be+=ge,ft="",er=0;fe{"use strict";t.exports=r;function r(s,a){var o=s.indexOf("**",a),g=s.indexOf("__",a);return g===-1?o:o===-1||g{"use strict";var r=$ve(),s=Wz(),a=Tna();t.exports=f,f.locator=a;var o="\\",g="*",p="_";function f(m,y,B){var v=this,G=0,T=y.charAt(G),O,X,U,le,ae,ge,fe;if(!(T!==g&&T!==p||y.charAt(++G)!==T)&&(X=v.options.pedantic,U=T,ae=U+U,ge=y.length,G++,le="",T="",!(X&&s(y.charAt(G)))))for(;G{"use strict";t.exports=a;var r=String.fromCharCode,s=/\w/;function a(o){return s.test(typeof o=="number"?r(o):o.charAt(0))}}),Dna=Dl((e,t)=>{"use strict";t.exports=r;function r(s,a){var o=s.indexOf("*",a),g=s.indexOf("_",a);return g===-1?o:o===-1||g{"use strict";var r=$ve(),s=Rna(),a=Wz(),o=Dna();t.exports=m,m.locator=o;var g="*",p="_",f="\\";function m(y,B,v){var G=this,T=0,O=B.charAt(T),X,U,le,ae,ge,fe,pe;if(!(O!==g&&O!==p)&&(U=G.options.pedantic,ge=O,le=O,fe=B.length,T++,ae="",O="",!(U&&a(B.charAt(T)))))for(;T{"use strict";t.exports=r;function r(s,a){return s.indexOf("~~",a)}}),Gna=Dl((e,t)=>{"use strict";var r=Wz(),s=kna();t.exports=g,g.locator=s;var a="~",o="~~";function g(p,f,m){var y=this,B="",v="",G="",T="",O,X,U;if(!(!y.options.gfm||f.charAt(0)!==a||f.charAt(1)!==a||r(f.charAt(2))))for(O=1,X=f.length,U=p.now(),U.column+=2,U.offset+=2;++O{"use strict";t.exports=r;function r(s,a){return s.indexOf("`",a)}}),Zna=Dl((e,t)=>{"use strict";var r=Fna();t.exports=g,g.locator=r;var s=10,a=32,o=96;function g(p,f,m){for(var y=f.length,B=0,v,G,T,O,X,U;B2&&(O===a||O===s)&&(X===a||X===s)){for(B++,y--;B{"use strict";t.exports=r;function r(s,a){for(var o=s.indexOf(` -`,a);o>a&&s.charAt(o-1)===" ";)o--;return o}}),Vna=Dl((e,t)=>{"use strict";var r=Lna();t.exports=g,g.locator=r;var s=" ",a=` -`,o=2;function g(p,f,m){for(var y=f.length,B=-1,v="",G;++B{"use strict";t.exports=r;function r(s,a,o){var g=this,p,f,m,y,B,v,G,T,O,X;if(o)return!0;for(p=g.inlineMethods,y=p.length,f=g.inlineTokenizers,m=-1,O=a.length;++m{"use strict";var r=zve(),s=Vra(),a=Wra(),o=Pra(),g=Jra(),p=Ura();t.exports=f;function f(B,v){this.file=v,this.offset={},this.options=r(this.options),this.setOptions({}),this.inList=!1,this.inBlock=!1,this.inLink=!1,this.atStart=!0,this.toOffset=a(v).toOffset,this.unescape=o(this,"escape"),this.decode=g(this)}var m=f.prototype;m.setOptions=zra(),m.parse=nna(),m.options=eni(),m.exitStart=s("atStart",!0),m.enterList=s("inList",!1),m.enterLink=s("inLink",!1),m.enterBlock=s("inBlock",!1),m.interruptParagraph=[["thematicBreak"],["list"],["atxHeading"],["fencedCode"],["blockquote"],["html"],["setextHeading",{commonmark:!1}],["definition",{commonmark:!1}]],m.interruptList=[["atxHeading",{pedantic:!1}],["fencedCode",{pedantic:!1}],["thematicBreak",{pedantic:!1}],["definition",{commonmark:!1}]],m.interruptBlockquote=[["indentedCode",{commonmark:!0}],["fencedCode",{commonmark:!0}],["atxHeading",{commonmark:!0}],["setextHeading",{commonmark:!0}],["thematicBreak",{commonmark:!0}],["html",{commonmark:!0}],["list",{commonmark:!0}],["definition",{commonmark:!1}]],m.blockTokenizers={blankLine:ina(),indentedCode:sna(),fencedCode:ona(),blockquote:ana(),atxHeading:cna(),thematicBreak:lna(),list:gna(),setextHeading:Ana(),html:dna(),definition:pna(),table:fna(),paragraph:Ina()},m.inlineTokenizers={escape:mna(),autoLink:hna(),url:bna(),email:Bna(),html:vna(),link:Sna(),reference:wna(),strong:Nna(),emphasis:xna(),deletion:Gna(),code:Zna(),break:Vna(),text:Wna()},m.blockMethods=y(m.blockTokenizers),m.inlineMethods=y(m.inlineTokenizers),m.tokenizeBlock=p("block"),m.tokenizeInline=p("inline"),m.tokenizeFactory=p;function y(B){var v=[],G;for(G in B)v.push(G);return v}}),Ona=Dl((e,t)=>{"use strict";var r=Lra(),s=zve(),a=Pna();t.exports=o,o.Parser=a;function o(g){var p=this.data("settings"),f=r(a);f.prototype.options=s(f.prototype.options,p,g),this.Parser=f}}),Mna=Dl((e,t)=>{"use strict";t.exports=r;function r(s){if(s)throw s}}),ani=Dl((e,t)=>{t.exports=function(r){return r!=null&&r.constructor!=null&&typeof r.constructor.isBuffer=="function"&&r.constructor.isBuffer(r)}}),Qna=Dl((e,t)=>{"use strict";var r=Object.prototype.hasOwnProperty,s=Object.prototype.toString,a=Object.defineProperty,o=Object.getOwnPropertyDescriptor,g=function(y){return typeof Array.isArray=="function"?Array.isArray(y):s.call(y)==="[object Array]"},p=function(y){if(!y||s.call(y)!=="[object Object]")return!1;var B=r.call(y,"constructor"),v=y.constructor&&y.constructor.prototype&&r.call(y.constructor.prototype,"isPrototypeOf");if(y.constructor&&!B&&!v)return!1;var G;for(G in y);return typeof G>"u"||r.call(y,G)},f=function(y,B){a&&B.name==="__proto__"?a(y,B.name,{enumerable:!0,configurable:!0,value:B.newValue,writable:!0}):y[B.name]=B.newValue},m=function(y,B){if(B==="__proto__")if(r.call(y,B)){if(o)return o(y,B).value}else return;return y[B]};t.exports=function y(){var B,v,G,T,O,X,U=arguments[0],le=1,ae=arguments.length,ge=!1;for(typeof U=="boolean"&&(ge=U,U=arguments[1]||{},le=2),(U==null||typeof U!="object"&&typeof U!="function")&&(U={});le{"use strict";t.exports=r=>{if(Object.prototype.toString.call(r)!=="[object Object]")return!1;let s=Object.getPrototypeOf(r);return s===null||s===Object.prototype}}),Hna=Dl((e,t)=>{"use strict";var r=[].slice;t.exports=s;function s(a,o){var g;return p;function p(){var y=r.call(arguments,0),B=a.length>y.length,v;B&&y.push(f);try{v=a.apply(null,y)}catch(G){if(B&&g)throw G;return f(G)}B||(v&&typeof v.then=="function"?v.then(m,f):v instanceof Error?f(v):m(v))}function f(){g||(g=!0,o.apply(null,arguments))}function m(y){f(null,y)}}}),Xna=Dl((e,t)=>{"use strict";var r=Hna();t.exports=a,a.wrap=r;var s=[].slice;function a(){var o=[],g={};return g.run=p,g.use=f,g;function p(){var m=-1,y=s.call(arguments,0,-1),B=arguments[arguments.length-1];if(typeof B!="function")throw new Error("Expected function as last argument, not "+B);v.apply(null,[null].concat(y));function v(G){var T=o[++m],O=s.call(arguments,0),X=O.slice(1),U=y.length,le=-1;if(G){B(G);return}for(;++le{"use strict";var r={}.hasOwnProperty;t.exports=s;function s(p){return!p||typeof p!="object"?"":r.call(p,"position")||r.call(p,"type")?o(p.position):r.call(p,"start")||r.call(p,"end")?o(p):r.call(p,"line")||r.call(p,"column")?a(p):""}function a(p){return(!p||typeof p!="object")&&(p={}),g(p.line)+":"+g(p.column)}function o(p){return(!p||typeof p!="object")&&(p={}),a(p.start)+"-"+a(p.end)}function g(p){return p&&typeof p=="number"?p:1}}),Una=Dl((e,t)=>{"use strict";var r=Jna();t.exports=o;function s(){}s.prototype=Error.prototype,o.prototype=new s;var a=o.prototype;a.file="",a.name="",a.reason="",a.message="",a.stack="",a.fatal=null,a.column=null,a.line=null;function o(p,f,m){var y,B,v;typeof f=="string"&&(m=f,f=null),y=g(m),B=r(f)||"1:1",v={start:{line:null,column:null},end:{line:null,column:null}},f&&f.position&&(f=f.position),f&&(f.start?(v=f,f=f.start):v.start=f),p.stack&&(this.stack=p.stack,p=p.message),this.message=p,this.name=B,this.reason=p,this.line=f?f.line:null,this.column=f?f.column:null,this.location=v,this.source=y[0],this.ruleId=y[1]}function g(p){var f=[null,null],m;return typeof p=="string"&&(m=p.indexOf(":"),m===-1?f[1]=p:(f[0]=p.slice(0,m),f[1]=p.slice(m+1))),f}}),Kna=Dl(e=>{"use strict";e.basename=t,e.dirname=r,e.extname=s,e.join=a,e.sep="/";function t(f,m){var y=0,B=-1,v,G,T,O;if(m!==void 0&&typeof m!="string")throw new TypeError('"ext" argument must be a string');if(p(f),v=f.length,m===void 0||!m.length||m.length>f.length){for(;v--;)if(f.charCodeAt(v)===47){if(T){y=v+1;break}}else B<0&&(T=!0,B=v+1);return B<0?"":f.slice(y,B)}if(m===f)return"";for(G=-1,O=m.length-1;v--;)if(f.charCodeAt(v)===47){if(T){y=v+1;break}}else G<0&&(T=!0,G=v+1),O>-1&&(f.charCodeAt(v)===m.charCodeAt(O--)?O<0&&(B=v):(O=-1,B=G));return y===B?B=G:B<0&&(B=f.length),f.slice(y,B)}function r(f){var m,y,B;if(p(f),!f.length)return".";for(m=-1,B=f.length;--B;)if(f.charCodeAt(B)===47){if(y){m=B;break}}else y||(y=!0);return m<0?f.charCodeAt(0)===47?"/":".":m===1&&f.charCodeAt(0)===47?"//":f.slice(0,m)}function s(f){var m=-1,y=0,B=-1,v=0,G,T,O;for(p(f),O=f.length;O--;){if(T=f.charCodeAt(O),T===47){if(G){y=O+1;break}continue}B<0&&(G=!0,B=O+1),T===46?m<0?m=O:v!==1&&(v=1):m>-1&&(v=-1)}return m<0||B<0||v===0||v===1&&m===B-1&&m===y+1?"":f.slice(m,B)}function a(){for(var f=-1,m;++f2){if(X=y.lastIndexOf("/"),X!==y.length-1){X<0?(y="",B=0):(y=y.slice(0,X),B=y.length-1-y.lastIndexOf("/")),v=T,G=0;continue}}else if(y.length){y="",B=0,v=T,G=0;continue}}m&&(y=y.length?y+"/..":"..",B=2)}else y.length?y+="/"+f.slice(v+1,T):y=f.slice(v+1,T),B=T-v-1;v=T,G=0}else O===46&&G>-1?G++:G=-1}return y}function p(f){if(typeof f!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(f))}}),jna=Dl(e=>{"use strict";e.cwd=t;function t(){return"/"}}),zna=Dl((e,t)=>{"use strict";var r=Kna(),s=jna(),a=ani();t.exports=p;var o={}.hasOwnProperty,g=["history","path","basename","stem","extname","dirname"];p.prototype.toString=le,Object.defineProperty(p.prototype,"path",{get:f,set:m}),Object.defineProperty(p.prototype,"dirname",{get:y,set:B}),Object.defineProperty(p.prototype,"basename",{get:v,set:G}),Object.defineProperty(p.prototype,"extname",{get:T,set:O}),Object.defineProperty(p.prototype,"stem",{get:X,set:U});function p(pe){var he,be;if(!pe)pe={};else if(typeof pe=="string"||a(pe))pe={contents:pe};else if("message"in pe&&"messages"in pe)return pe;if(!(this instanceof p))return new p(pe);for(this.data={},this.messages=[],this.history=[],this.cwd=s.cwd(),be=-1;++be-1)throw new Error("`extname` cannot contain multiple dots")}this.path=r.join(this.dirname,this.stem+(pe||""))}function X(){return typeof this.path=="string"?r.basename(this.path,this.extname):void 0}function U(pe){ge(pe,"stem"),ae(pe,"stem"),this.path=r.join(this.dirname||"",pe+(this.extname||""))}function le(pe){return(this.contents||"").toString(pe)}function ae(pe,he){if(pe&&pe.indexOf(r.sep)>-1)throw new Error("`"+he+"` cannot be a path: did not expect `"+r.sep+"`")}function ge(pe,he){if(!pe)throw new Error("`"+he+"` cannot be empty")}function fe(pe,he){if(!pe)throw new Error("Setting `"+he+"` requires `path` to be set too")}}),qna=Dl((e,t)=>{"use strict";var r=Una(),s=zna();t.exports=s,s.prototype.message=a,s.prototype.info=g,s.prototype.fail=o;function a(p,f,m){var y=new r(p,f,m);return this.path&&(y.name=this.path+":"+y.name,y.file=this.path),y.fatal=!1,this.messages.push(y),y}function o(){var p=this.message.apply(this,arguments);throw p.fatal=!0,p}function g(){var p=this.message.apply(this,arguments);return p.fatal=null,p}}),$na=Dl((e,t)=>{"use strict";t.exports=qna()}),eia=Dl((e,t)=>{"use strict";var r=Mna(),s=ani(),a=Qna(),o=Yna(),g=Xna(),p=$na();t.exports=T().freeze();var f=[].slice,m={}.hasOwnProperty,y=g().use(B).use(v).use(G);function B(pe,he){he.tree=pe.parse(he.file)}function v(pe,he,be){pe.run(he.tree,he.file,Te);function Te(ke,x,et){ke?be(ke):(he.tree=x,he.file=et,be())}}function G(pe,he){var be=pe.stringify(he.tree,he.file);be==null||(typeof be=="string"||s(be)?("value"in he.file&&(he.file.value=be),he.file.contents=be):he.file.result=be)}function T(){var pe=[],he=g(),be={},Te=-1,ke;return x.data=Ue,x.freeze=et,x.attachers=pe,x.use=Je,x.parse=ft,x.stringify=Ur,x.run=Gt,x.runSync=er,x.process=Ot,x.processSync=dr,x;function x(){for(var Ar=T(),or=-1;++orEni,options:()=>Bni,parsers:()=>tAr,printers:()=>Rni});var tia=(e,t,r,s)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,s):r.global?t.replace(r,s):t.split(r).join(s)},kk=tia,ria=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},d5=ria,nia=jve(Xgr(),1);function yCt(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}var tfe="string",Bse="array",bCt="cursor",eSe="indent",tSe="align",KQe="trim",vse="group",rfe="fill",Ese="if-break",jQe="indent-if-break",zQe="line-suffix",qQe="line-suffix-boundary",Pz="line",$Qe="label",rSe="break-parent",lni=new Set([bCt,eSe,tSe,KQe,vse,rfe,Ese,jQe,zQe,qQe,Pz,$Qe,rSe]);function iia(e){if(typeof e=="string")return tfe;if(Array.isArray(e))return Bse;if(!e)return;let{type:t}=e;if(lni.has(t))return t}var Sse=iia,sia=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function oia(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', -Expected it to be 'string' or 'object'.`;if(Sse(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let s=sia([...lni].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. -Expected it to be ${s}.`}var aia=class extends Error{name="InvalidDocError";constructor(e){super(oia(e)),this.doc=e}},pCt=aia,xri={};function cia(e,t,r,s){let a=[e];for(;a.length>0;){let o=a.pop();if(o===xri){r(a.pop());continue}r&&a.push(o,xri);let g=Sse(o);if(!g)throw new pCt(o);if(t?.(o)!==!1)switch(g){case Bse:case rfe:{let p=g===Bse?o:o.parts;for(let f=p.length,m=f-1;m>=0;--m)a.push(p[m]);break}case Ese:a.push(o.flatContents,o.breakContents);break;case vse:if(s&&o.expandedStates)for(let p=o.expandedStates.length,f=p-1;f>=0;--f)a.push(o.expandedStates[f]);else a.push(o.contents);break;case tSe:case eSe:case jQe:case $Qe:case zQe:a.push(o.contents);break;case tfe:case bCt:case KQe:case qQe:case Pz:case rSe:break;default:throw new pCt(o)}}}var lia=cia;function uia(e,t){if(typeof e=="string")return t(e);let r=new Map;return s(e);function s(o){if(r.has(o))return r.get(o);let g=a(o);return r.set(o,g),g}function a(o){switch(Sse(o)){case Bse:return t(o.map(s));case rfe:return t({...o,parts:o.parts.map(s)});case Ese:return t({...o,breakContents:s(o.breakContents),flatContents:s(o.flatContents)});case vse:{let{expandedStates:g,contents:p}=o;return g?(g=g.map(s),p=g[0]):p=s(p),t({...o,contents:p,expandedStates:g})}case tSe:case eSe:case jQe:case $Qe:case zQe:return t({...o,contents:s(o.contents)});case tfe:case bCt:case KQe:case qQe:case Pz:case rSe:return t(o);default:throw new pCt(o)}}}function kri(e){if(e.length>0){let t=d5(!1,e,-1);!t.expandedStates&&!t.break&&(t.break="propagated")}return null}function gia(e){let t=new Set,r=[];function s(o){if(o.type===rSe&&kri(r),o.type===vse){if(r.push(o),t.has(o))return!1;t.add(o)}}function a(o){o.type===vse&&r.pop().break&&kri(r)}lia(e,s,a,!0)}function Xve(e,t=Pgr){return uia(e,r=>typeof r=="string"?dni(t,r.split(` -`)):r)}var Kgr=()=>{},Uve=Kgr,uni=Kgr,Aia=Kgr;function Wgr(e){return Uve(e),{type:eSe,contents:e}}function efe(e,t){return Uve(t),{type:tSe,contents:t,n:e}}function ACt(e,t={}){return Uve(e),uni(t.expandedStates,!0),{type:vse,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function fCt(e){return efe({type:"root"},e)}function jgr(e){return Aia(e),{type:rfe,parts:e}}function dia(e,t="",r={}){return Uve(e),t!==""&&Uve(t),{type:Ese,breakContents:e,flatContents:t,groupId:r.groupId}}var ICt={type:rSe},zgr={type:Pz,hard:!0},pia={type:Pz,hard:!0,literal:!0},gni={type:Pz},Ani={type:Pz,soft:!0},LT=[zgr,ICt],Pgr=[pia,ICt];function dni(e,t){Uve(e),uni(t);let r=[];for(let s=0;sMath.max(s,a.length/t.length),0)}var pni=fia;function Iia(e,t){let r=e.match(new RegExp(`(${yCt(t)})+`,"gu"));if(r===null)return 0;let s=new Map,a=0;for(let o of r){let g=o.length/t.length;s.set(g,!0),g>a&&(a=g)}for(let o=1;oo?s:r}var hia=mia,_ia=class extends Error{name="UnexpectedNodeError";constructor(e,t,r="type"){super(`Unexpected ${t} node ${r}: ${JSON.stringify(e[r])}.`),this.node=e}},yia=_ia,bia=jve(Xgr(),1);function Eia(e){return e?.type==="front-matter"}var Bia=Eia,MQe=3;function via(e){let t=e.slice(0,MQe);if(t!=="---"&&t!=="+++")return;let r=e.indexOf(` -`,MQe);if(r===-1)return;let s=e.slice(MQe,r).trim(),a=e.indexOf(` +`,Gt+1);ft===-1?X+=Xe.length:X=Xe.length-ft,O in B&&(ft!==-1?X+=B[O]:X<=B[O]&&(X=B[O]+1))}function be(){var Xe=[],ft=O+1;return function(){for(var Gt=O+1;ft{"use strict";t.exports=o;var r=["\\","`","*","{","}","[","]","(",")","#","+","-",".","!","_",">"],s=r.concat(["~","|"]),a=s.concat([` +`,'"',"$","%","&","'",",","/",":",";","<","=","?","@","^"]);o.default=r,o.gfm=s,o.commonmark=a;function o(g){var p=g||{};return p.commonmark?a:p.gfm?s:r}}),Ana=xl((e,t)=>{"use strict";t.exports=["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","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","iframe","legend","li","link","main","menu","menuitem","meta","nav","noframes","ol","optgroup","option","p","param","pre","section","source","title","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"]}),cni=xl((e,t)=>{"use strict";t.exports={position:!0,gfm:!0,commonmark:!1,pedantic:!1,blocks:Ana()}}),dna=xl((e,t)=>{"use strict";var r=eSe(),s=gna(),a=cni();t.exports=o;function o(g){var p=this,f=p.options,m,y;if(g==null)g={};else if(typeof g=="object")g=r(g);else throw new Error("Invalid value `"+g+"` for setting `options`");for(m in a){if(y=g[m],y==null&&(y=f[m]),m!=="blocks"&&typeof y!="boolean"||m==="blocks"&&typeof y!="object")throw new Error("Invalid value `"+y+"` for setting `options."+m+"`");g[m]=y}return p.options=g,p.escape=s(g),p}}),pna=xl((e,t)=>{"use strict";t.exports=r;function r(p){if(p==null)return g;if(typeof p=="string")return o(p);if(typeof p=="object")return"length"in p?a(p):s(p);if(typeof p=="function")return p;throw new Error("Expected function, string, or object as test")}function s(p){return f;function f(m){var y;for(y in p)if(m[y]!==p[y])return!1;return!0}}function a(p){for(var f=[],m=-1;++m{t.exports=r;function r(s){return s}}),Ina=xl((e,t)=>{"use strict";t.exports=p;var r=pna(),s=fna(),a=!0,o="skip",g=!1;p.CONTINUE=a,p.SKIP=o,p.EXIT=g;function p(m,y,B,v){var k,T;typeof y=="function"&&typeof B!="function"&&(v=B,B=y,y=null),T=r(y),k=v?-1:1,O(m,null,[])();function O(X,U,le){var ae=typeof X=="object"&&X!==null?X:{},ge;return typeof ae.type=="string"&&(ge=typeof ae.tagName=="string"?ae.tagName:typeof ae.name=="string"?ae.name:void 0,fe.displayName="node ("+s(ae.type+(ge?"<"+ge+">":""))+")"),fe;function fe(){var pe=le.concat(X),he=[],be,Te;if((!y||T(X,U,le[le.length-1]||null))&&(he=f(B(X,le)),he[0]===g))return he;if(X.children&&he[0]!==o)for(Te=(v?X.children.length:-1)+k;Te>-1&&Te{"use strict";t.exports=g;var r=Ina(),s=r.CONTINUE,a=r.SKIP,o=r.EXIT;g.CONTINUE=s,g.SKIP=a,g.EXIT=o;function g(p,f,m,y){typeof f=="function"&&typeof m!="function"&&(y=m,m=f,f=null),r(p,f,B,y);function B(v,k){var T=k[k.length-1],O=T?T.children.indexOf(v):null;return m(v,O,T)}}}),mna=xl((e,t)=>{"use strict";var r=Cna();t.exports=s;function s(g,p){return r(g,p?a:o),g}function a(g){delete g.position}function o(g){g.position=void 0}}),hna=xl((e,t)=>{"use strict";var r=eSe(),s=mna();t.exports=g;var a=` +`,o=/\r\n|\r/g;function g(){var p=this,f=String(p.file),m={line:1,column:1,offset:0},y=r(m),B;return f=f.replace(o,a),f.charCodeAt(0)===65279&&(f=f.slice(1),y.column++,y.offset++),B={type:"root",children:p.tokenizeBlock(f,y),position:{start:m,end:p.eof||r(m)}},p.options.position||s(B,!0),B}}),_na=xl((e,t)=>{"use strict";var r=/^[ \t]*(\n|$)/;t.exports=s;function s(a,o,g){for(var p,f="",m=0,y=o.length;m{"use strict";var r="",s;t.exports=a;function a(o,g){if(typeof o!="string")throw new TypeError("expected a string");if(g===1)return o;if(g===2)return o+o;var p=o.length*g;if(s!==o||typeof s>"u")s=o,r="";else if(r.length>=p)return r.substr(0,p);for(;p>r.length&&g>1;)g&1&&(r+=o),g>>=1,o+=o;return r+=o,r=r.substr(0,p),r}}),lni=xl((e,t)=>{"use strict";t.exports=r;function r(s){return String(s).replace(/\n+$/,"")}}),yna=xl((e,t)=>{"use strict";var r=qgr(),s=lni();t.exports=m;var a=` +`,o=" ",g=" ",p=4,f=r(g,p);function m(y,B,v){for(var k=-1,T=B.length,O="",X="",U="",le="",ae,ge,fe;++k{"use strict";t.exports=m;var r=` +`,s=" ",a=" ",o="~",g="`",p=3,f=4;function m(y,B,v){var k=this,T=k.options.gfm,O=B.length+1,X=0,U="",le,ae,ge,fe,pe,he,be,Te,ke,x,et,Ue,Je;if(T){for(;X=f)){for(be="";X{e=t.exports=r;function r(s){return s.trim?s.trim():e.right(e.left(s))}e.left=function(s){return s.trimLeft?s.trimLeft():s.replace(/^\s\s*/,"")},e.right=function(s){if(s.trimRight)return s.trimRight();for(var a=/\s/,o=s.length;a.test(s.charAt(--o)););return s.slice(0,o+1)}}),$gr=xl((e,t)=>{"use strict";t.exports=r;function r(s,a,o,g){for(var p=s.length,f=-1,m,y;++f{"use strict";var r=rSe(),s=$gr();t.exports=f;var a=` +`,o=" ",g=" ",p=">";function f(m,y,B){for(var v=this,k=v.offset,T=v.blockTokenizers,O=v.interruptBlockquote,X=m.now(),U=X.line,le=y.length,ae=[],ge=[],fe=[],pe,he=0,be,Te,ke,x,et,Ue,Je,Xe;he{"use strict";t.exports=p;var r=` +`,s=" ",a=" ",o="#",g=6;function p(f,m,y){for(var B=this,v=B.options.pedantic,k=m.length+1,T=-1,O=f.now(),X="",U="",le,ae,ge;++Tg)&&!(!ge||!v&&m.charAt(T+1)===o)){for(k=m.length+1,ae="";++T{"use strict";t.exports=m;var r=" ",s=` +`,a=" ",o="*",g="-",p="_",f=3;function m(y,B,v){for(var k=-1,T=B.length+1,O="",X,U,le,ae;++k=f&&(!X||X===s)?(O+=ae,v?!0:y(O)({type:"thematicBreak"})):void 0}}),uni=xl((e,t)=>{"use strict";t.exports=g;var r=" ",s=" ",a=1,o=4;function g(p){for(var f=0,m=0,y=p.charAt(f),B={},v,k=0;y===r||y===s;){for(v=y===r?o:a,m+=v,v>1&&(m=Math.floor(m/v)*v);k{"use strict";var r=rSe(),s=qgr(),a=uni();t.exports=f;var o=` +`,g=" ",p="!";function f(m,y){var B=m.split(o),v=B.length+1,k=1/0,T=[],O,X,U;for(B.unshift(s(g,y)+p);v--;)if(X=a(B[v]),T[v]=X.stops,r(B[v]).length!==0)if(X.indent)X.indent>0&&X.indent{"use strict";var r=rSe(),s=qgr(),a=tSe(),o=uni(),g=Sna(),p=$gr();t.exports=be;var f="*",m="_",y="+",B="-",v=".",k=" ",T=` +`,O=" ",X=")",U="x",le=4,ae=/\n\n(?!\s*$)/,ge=/^\[([ X\tx])][ \t]/,fe=/^([ \t]*)([*+-]|\d+[.)])( {1,4}(?! )| |\t|$|(?=\n))([^\n]*)/,pe=/^([ \t]*)([*+-]|\d+[.)])([ \t]+)/,he=/^( {1,4}|\t)?/gm;function be(et,Ue,Je){for(var Xe=this,ft=Xe.options.commonmark,Gt=Xe.options.pedantic,er=Xe.blockTokenizers,Ur=Xe.interruptList,Ot=0,dr=Ue.length,Ar=null,or,Fr,$r,Or,In,Br,tr,gn,Gn,we,Zi,Fa,xa,Qs,lr,ua,vi,Hu,Yu,YA=!1,gd,NA,Vd,jr;Ot=vi.indent&&(jr=!0),Or=Ue.charAt(Ot),Gn=null,!jr){if(Or===f||Or===y||Or===B)Gn=Or,Ot++,or++;else{for(Fr="";Ot=vi.indent||or>le),gn=!1,Ot=tr;if(Zi=Ue.slice(tr,Br),we=tr===Ot?Zi:Ue.slice(Ot,Br),(Gn===f||Gn===m||Gn===B)&&er.thematicBreak.call(Xe,et,Zi,!0))break;if(Fa=xa,xa=!gn&&!r(we).length,jr&&vi)vi.value=vi.value.concat(ua,Zi),lr=lr.concat(ua,Zi),ua=[];else if(gn)ua.length!==0&&(YA=!0,vi.value.push(""),vi.trail=ua.concat()),vi={value:[Zi],indent:or,trail:[]},Qs.push(vi),lr=lr.concat(ua,Zi),ua=[];else if(xa){if(Fa&&!ft)break;ua.push(Zi)}else{if(Fa||p(Ur,er,Xe,[et,Zi,!0]))break;vi.value=vi.value.concat(ua,Zi),lr=lr.concat(ua,Zi),ua=[]}Ot=Br+1}for(gd=et(lr.join(T)).reset({type:"list",ordered:$r,start:Ar,spread:YA,children:[]}),Hu=Xe.enterList(),Yu=Xe.enterBlock(),Ot=-1,dr=Qs.length;++Ot{"use strict";t.exports=y;var r=` +`,s=" ",a=" ",o="=",g="-",p=3,f=1,m=2;function y(B,v,k){for(var T=this,O=B.now(),X=v.length,U=-1,le="",ae,ge,fe,pe,he;++U=p){U--;break}le+=fe}for(ae="",ge="";++U{"use strict";var t="[a-zA-Z_:][a-zA-Z0-9:._-]*",r="[^\"'=<>`\\u0000-\\u0020]+",s="'[^']*'",a='"[^"]*"',o="(?:"+r+"|"+s+"|"+a+")",g="(?:\\s+"+t+"(?:\\s*=\\s*"+o+")?)",p="<[A-Za-z][A-Za-z0-9\\-]*"+g+"*\\s*\\/?>",f="<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>",m="|",y="<[?].*?[?]>",B="]*>",v="";e.openCloseTag=new RegExp("^(?:"+p+"|"+f+")"),e.tag=new RegExp("^(?:"+p+"|"+f+"|"+m+"|"+y+"|"+B+"|"+v+")")}),Nna=xl((e,t)=>{"use strict";var r=gni().openCloseTag;t.exports=ae;var s=" ",a=" ",o=` +`,g="<",p=/^<(script|pre|style)(?=(\s|>|$))/i,f=/<\/(script|pre|style)>/i,m=/^/,B=/^<\?/,v=/\?>/,k=/^/,O=/^/,U=/^$/,le=new RegExp(r.source+"\\s*$");function ae(ge,fe,pe){for(var he=this,be=he.options.blocks.join("|"),Te=new RegExp("^|$))","i"),ke=fe.length,x=0,et,Ue,Je,Xe,ft,Gt,er,Ur=[[p,f,!0],[m,y,!0],[B,v,!0],[k,T,!0],[O,X,!0],[Te,U,!0],[le,U,!1]];x{"use strict";t.exports=a;var r=String.fromCharCode,s=/\s/;function a(o){return s.test(typeof o=="number"?r(o):o.charAt(0))}}),Ani=xl((e,t)=>{"use strict";var r=zgr();t.exports=s;function s(a){return r(a).toLowerCase()}}),Rna=xl((e,t)=>{"use strict";var r=Pz(),s=Ani();t.exports=U;var a='"',o="'",g="\\",p=` +`,f=" ",m=" ",y="[",B="]",v="(",k=")",T=":",O="<",X=">";function U(ge,fe,pe){for(var he=this,be=he.options.commonmark,Te=0,ke=fe.length,x="",et,Ue,Je,Xe,ft,Gt,er,Ur;Te{"use strict";var r=Pz();t.exports=O;var s=" ",a=` +`,o=" ",g="-",p=":",f="\\",m="|",y=1,B=2,v="left",k="center",T="right";function O(X,U,le){var ae=this,ge,fe,pe,he,be,Te,ke,x,et,Ue,Je,Xe,ft,Gt,er,Ur,Ot,dr,Ar,or,Fr,$r;if(ae.options.gfm){for(ge=0,Ur=0,Te=U.length+1,ke=[];geor){if(Ur1&&(et?(he+=x.slice(0,-1),x=x.charAt(x.length-1)):(he+=x,x="")),Gt=X.now(),X(he)({type:"tableCell",children:ae.tokenizeInline(Xe,Gt)},be)),X(x+et),x="",Xe=""):(x&&(Xe+=x,x=""),Xe+=et,et===f&&ge!==Te-2&&(Xe+=Ot.charAt(ge+1),ge++)),ft=!1,ge++}er||X(a+fe)}return Ar}}}}),xna=xl((e,t)=>{"use strict";var r=rSe(),s=lni(),a=$gr();t.exports=m;var o=" ",g=` +`,p=" ",f=4;function m(y,B,v){for(var k=this,T=k.options,O=T.commonmark,X=k.blockTokenizers,U=k.interruptParagraph,le=B.indexOf(g),ae=B.length,ge,fe,pe,he,be;le=f&&pe!==g){le=B.indexOf(g,le+1);continue}}if(fe=B.slice(le+1),a(U,X,k,[y,fe,!0]))break;if(ge=le,le=B.indexOf(g,le+1),le!==-1&&r(B.slice(ge,le))===""){le=ge;break}}return fe=B.slice(0,le),v?!0:(be=y.now(),fe=s(fe),y(fe)({type:"paragraph",children:k.tokenizeInline(fe,be)}))}}),kna=xl((e,t)=>{"use strict";t.exports=r;function r(s,a){return s.indexOf("\\",a)}}),Gna=xl((e,t)=>{"use strict";var r=kna();t.exports=o,o.locator=r;var s=` +`,a="\\";function o(g,p,f){var m=this,y,B;if(p.charAt(0)===a&&(y=p.charAt(1),m.escape.indexOf(y)!==-1))return f?!0:(y===s?B={type:"break"}:B={type:"text",value:y},g(a+y)(B))}}),dni=xl((e,t)=>{"use strict";t.exports=r;function r(s,a){return s.indexOf("<",a)}}),Fna=xl((e,t)=>{"use strict";var r=Pz(),s=ECt(),a=dni();t.exports=B,B.locator=a,B.notInLink=!0;var o="<",g=">",p="@",f="/",m="mailto:",y=m.length;function B(v,k,T){var O=this,X="",U=k.length,le=0,ae="",ge=!1,fe="",pe,he,be,Te,ke;if(k.charAt(0)===o){for(le++,X=o;le{"use strict";t.exports=r;function r(s,a){var o=String(s),g=0,p;if(typeof a!="string")throw new Error("Expected character");for(p=o.indexOf(a);p!==-1;)g++,p=o.indexOf(a,p+a.length);return g}}),Lna=xl((e,t)=>{"use strict";t.exports=s;var r=["www.","http://","https://"];function s(a,o){var g=-1,p,f,m;if(!this.options.gfm)return g;for(f=r.length,p=-1;++p{"use strict";var r=Zna(),s=ECt(),a=tSe(),o=j5e(),g=Pz(),p=Lna();t.exports=he,he.locator=p,he.notInLink=!0;var f=33,m=38,y=41,B=42,v=44,k=45,T=46,O=58,X=59,U=63,le=60,ae=95,ge=126,fe="(",pe=")";function he(be,Te,ke){var x=this,et=x.options.gfm,Ue=x.inlineTokenizers,Je=Te.length,Xe=-1,ft=!1,Gt,er,Ur,Ot,dr,Ar,or,Fr,$r,Or,In,Br,tr,gn;if(et){if(Te.slice(0,4)==="www.")ft=!0,Ot=4;else if(Te.slice(0,7).toLowerCase()==="http://")Ot=7;else if(Te.slice(0,8).toLowerCase()==="https://")Ot=8;else return;for(Xe=Ot-1,Ur=Ot,Gt=[];Ot$r;)Ot=dr+Ar.lastIndexOf(pe),Ar=Te.slice(dr,Ot),Or--;if(Te.charCodeAt(Ot-1)===X&&(Ot--,o(Te.charCodeAt(Ot-1)))){for(Fr=Ot-2;o(Te.charCodeAt(Fr));)Fr--;Te.charCodeAt(Fr)===m&&(Ot=Fr)}return In=Te.slice(0,Ot),tr=s(In,{nonTerminated:!1}),ft&&(tr="http://"+tr),gn=x.enterLink(),x.inlineTokenizers={text:Ue.text},Br=x.tokenizeInline(In,be.now()),x.inlineTokenizers=Ue,gn(),be(In)({type:"link",title:null,url:tr,children:Br})}}}}),Wna=xl((e,t)=>{"use strict";var r=tSe(),s=j5e(),a=43,o=45,g=46,p=95;t.exports=f;function f(y,B){var v=this,k,T;if(!this.options.gfm||(k=y.indexOf("@",B),k===-1))return-1;if(T=k,T===B||!m(y.charCodeAt(T-1)))return f.call(v,y,k+1);for(;T>B&&m(y.charCodeAt(T-1));)T--;return T}function m(y){return r(y)||s(y)||y===a||y===o||y===g||y===p}}),Pna=xl((e,t)=>{"use strict";var r=ECt(),s=tSe(),a=j5e(),o=Wna();t.exports=B,B.locator=o,B.notInLink=!0;var g=43,p=45,f=46,m=64,y=95;function B(v,k,T){var O=this,X=O.options.gfm,U=O.inlineTokenizers,le=0,ae=k.length,ge=-1,fe,pe,he,be;if(X){for(fe=k.charCodeAt(le);s(fe)||a(fe)||fe===g||fe===p||fe===f||fe===y;)fe=k.charCodeAt(++le);if(le!==0&&fe===m){for(le++;le{"use strict";var r=j5e(),s=dni(),a=gni().tag;t.exports=B,B.locator=s;var o="<",g="?",p="!",f="/",m=/^/i;function B(v,k,T){var O=this,X=k.length,U,le;if(!(k.charAt(0)!==o||X<3)&&(U=k.charAt(1),!(!r(U)&&U!==g&&U!==p&&U!==f)&&(le=k.match(a),!!le)))return T?!0:(le=le[0],!O.inLink&&m.test(le)?O.inLink=!0:O.inLink&&y.test(le)&&(O.inLink=!1),v(le)({type:"html",value:le}))}}),pni=xl((e,t)=>{"use strict";t.exports=r;function r(s,a){var o=s.indexOf("[",a),g=s.indexOf("![",a);return g===-1||o{"use strict";var r=Pz(),s=pni();t.exports=X,X.locator=s;var a=` +`,o="!",g='"',p="'",f="(",m=")",y="<",B=">",v="[",k="\\",T="]",O="`";function X(U,le,ae){var ge=this,fe="",pe=0,he=le.charAt(0),be=ge.options.pedantic,Te=ge.options.commonmark,ke=ge.options.gfm,x,et,Ue,Je,Xe,ft,Gt,er,Ur,Ot,dr,Ar,or,Fr,$r,Or,In,Br;if(he===o&&(er=!0,fe=he,he=le.charAt(++pe)),he===v&&!(!er&&ge.inLink)){for(fe+=he,Fr="",pe++,dr=le.length,Or=U.now(),or=0,Or.column+=pe,Or.offset+=pe;pe=Ue&&(Ue=0):Ue=et}else if(he===k)pe++,ft+=le.charAt(pe);else if((!Ue||ke)&&he===v)or++;else if((!Ue||ke)&&he===T)if(or)or--;else{if(le.charAt(pe+1)!==f)return;ft+=f,x=!0,pe++;break}Fr+=ft,ft="",pe++}if(x){for(Ur=Fr,fe+=Fr+ft,pe++;pe{"use strict";var r=Pz(),s=pni(),a=Ani();t.exports=T,T.locator=s;var o="link",g="image",p="shortcut",f="collapsed",m="full",y="!",B="[",v="\\",k="]";function T(O,X,U){var le=this,ae=le.options.commonmark,ge=X.charAt(0),fe=0,pe=X.length,he="",be="",Te=o,ke=p,x,et,Ue,Je,Xe,ft,Gt,er;if(ge===y&&(Te=g,be=ge,ge=X.charAt(++fe)),ge===B){for(fe++,be+=ge,ft="",er=0;fe{"use strict";t.exports=r;function r(s,a){var o=s.indexOf("**",a),g=s.indexOf("__",a);return g===-1?o:o===-1||g{"use strict";var r=rSe(),s=Pz(),a=Hna();t.exports=f,f.locator=a;var o="\\",g="*",p="_";function f(m,y,B){var v=this,k=0,T=y.charAt(k),O,X,U,le,ae,ge,fe;if(!(T!==g&&T!==p||y.charAt(++k)!==T)&&(X=v.options.pedantic,U=T,ae=U+U,ge=y.length,k++,le="",T="",!(X&&s(y.charAt(k)))))for(;k{"use strict";t.exports=a;var r=String.fromCharCode,s=/\w/;function a(o){return s.test(typeof o=="number"?r(o):o.charAt(0))}}),Jna=xl((e,t)=>{"use strict";t.exports=r;function r(s,a){var o=s.indexOf("*",a),g=s.indexOf("_",a);return g===-1?o:o===-1||g{"use strict";var r=rSe(),s=Xna(),a=Pz(),o=Jna();t.exports=m,m.locator=o;var g="*",p="_",f="\\";function m(y,B,v){var k=this,T=0,O=B.charAt(T),X,U,le,ae,ge,fe,pe;if(!(O!==g&&O!==p)&&(U=k.options.pedantic,ge=O,le=O,fe=B.length,T++,ae="",O="",!(U&&a(B.charAt(T)))))for(;T{"use strict";t.exports=r;function r(s,a){return s.indexOf("~~",a)}}),jna=xl((e,t)=>{"use strict";var r=Pz(),s=Kna();t.exports=g,g.locator=s;var a="~",o="~~";function g(p,f,m){var y=this,B="",v="",k="",T="",O,X,U;if(!(!y.options.gfm||f.charAt(0)!==a||f.charAt(1)!==a||r(f.charAt(2))))for(O=1,X=f.length,U=p.now(),U.column+=2,U.offset+=2;++O{"use strict";t.exports=r;function r(s,a){return s.indexOf("`",a)}}),qna=xl((e,t)=>{"use strict";var r=zna();t.exports=g,g.locator=r;var s=10,a=32,o=96;function g(p,f,m){for(var y=f.length,B=0,v,k,T,O,X,U;B2&&(O===a||O===s)&&(X===a||X===s)){for(B++,y--;B{"use strict";t.exports=r;function r(s,a){for(var o=s.indexOf(` +`,a);o>a&&s.charAt(o-1)===" ";)o--;return o}}),eia=xl((e,t)=>{"use strict";var r=$na();t.exports=g,g.locator=r;var s=" ",a=` +`,o=2;function g(p,f,m){for(var y=f.length,B=-1,v="",k;++B{"use strict";t.exports=r;function r(s,a,o){var g=this,p,f,m,y,B,v,k,T,O,X;if(o)return!0;for(p=g.inlineMethods,y=p.length,f=g.inlineTokenizers,m=-1,O=a.length;++m{"use strict";var r=eSe(),s=ena(),a=tna(),o=rna(),g=lna(),p=una();t.exports=f;function f(B,v){this.file=v,this.offset={},this.options=r(this.options),this.setOptions({}),this.inList=!1,this.inBlock=!1,this.inLink=!1,this.atStart=!0,this.toOffset=a(v).toOffset,this.unescape=o(this,"escape"),this.decode=g(this)}var m=f.prototype;m.setOptions=dna(),m.parse=hna(),m.options=cni(),m.exitStart=s("atStart",!0),m.enterList=s("inList",!1),m.enterLink=s("inLink",!1),m.enterBlock=s("inBlock",!1),m.interruptParagraph=[["thematicBreak"],["list"],["atxHeading"],["fencedCode"],["blockquote"],["html"],["setextHeading",{commonmark:!1}],["definition",{commonmark:!1}]],m.interruptList=[["atxHeading",{pedantic:!1}],["fencedCode",{pedantic:!1}],["thematicBreak",{pedantic:!1}],["definition",{commonmark:!1}]],m.interruptBlockquote=[["indentedCode",{commonmark:!0}],["fencedCode",{commonmark:!0}],["atxHeading",{commonmark:!0}],["setextHeading",{commonmark:!0}],["thematicBreak",{commonmark:!0}],["html",{commonmark:!0}],["list",{commonmark:!0}],["definition",{commonmark:!1}]],m.blockTokenizers={blankLine:_na(),indentedCode:yna(),fencedCode:bna(),blockquote:Ena(),atxHeading:Bna(),thematicBreak:vna(),list:wna(),setextHeading:Tna(),html:Nna(),definition:Rna(),table:Dna(),paragraph:xna()},m.inlineTokenizers={escape:Gna(),autoLink:Fna(),url:Vna(),email:Pna(),html:Ona(),link:Qna(),reference:Mna(),strong:Yna(),emphasis:Una(),deletion:jna(),code:qna(),break:eia(),text:tia()},m.blockMethods=y(m.blockTokenizers),m.inlineMethods=y(m.inlineTokenizers),m.tokenizeBlock=p("block"),m.tokenizeInline=p("inline"),m.tokenizeFactory=p;function y(B){var v=[],k;for(k in B)v.push(k);return v}}),nia=xl((e,t)=>{"use strict";var r=$ra(),s=eSe(),a=ria();t.exports=o,o.Parser=a;function o(g){var p=this.data("settings"),f=r(a);f.prototype.options=s(f.prototype.options,p,g),this.Parser=f}}),iia=xl((e,t)=>{"use strict";t.exports=r;function r(s){if(s)throw s}}),fni=xl((e,t)=>{t.exports=function(r){return r!=null&&r.constructor!=null&&typeof r.constructor.isBuffer=="function"&&r.constructor.isBuffer(r)}}),sia=xl((e,t)=>{"use strict";var r=Object.prototype.hasOwnProperty,s=Object.prototype.toString,a=Object.defineProperty,o=Object.getOwnPropertyDescriptor,g=function(y){return typeof Array.isArray=="function"?Array.isArray(y):s.call(y)==="[object Array]"},p=function(y){if(!y||s.call(y)!=="[object Object]")return!1;var B=r.call(y,"constructor"),v=y.constructor&&y.constructor.prototype&&r.call(y.constructor.prototype,"isPrototypeOf");if(y.constructor&&!B&&!v)return!1;var k;for(k in y);return typeof k>"u"||r.call(y,k)},f=function(y,B){a&&B.name==="__proto__"?a(y,B.name,{enumerable:!0,configurable:!0,value:B.newValue,writable:!0}):y[B.name]=B.newValue},m=function(y,B){if(B==="__proto__")if(r.call(y,B)){if(o)return o(y,B).value}else return;return y[B]};t.exports=function y(){var B,v,k,T,O,X,U=arguments[0],le=1,ae=arguments.length,ge=!1;for(typeof U=="boolean"&&(ge=U,U=arguments[1]||{},le=2),(U==null||typeof U!="object"&&typeof U!="function")&&(U={});le{"use strict";t.exports=r=>{if(Object.prototype.toString.call(r)!=="[object Object]")return!1;let s=Object.getPrototypeOf(r);return s===null||s===Object.prototype}}),aia=xl((e,t)=>{"use strict";var r=[].slice;t.exports=s;function s(a,o){var g;return p;function p(){var y=r.call(arguments,0),B=a.length>y.length,v;B&&y.push(f);try{v=a.apply(null,y)}catch(k){if(B&&g)throw k;return f(k)}B||(v&&typeof v.then=="function"?v.then(m,f):v instanceof Error?f(v):m(v))}function f(){g||(g=!0,o.apply(null,arguments))}function m(y){f(null,y)}}}),cia=xl((e,t)=>{"use strict";var r=aia();t.exports=a,a.wrap=r;var s=[].slice;function a(){var o=[],g={};return g.run=p,g.use=f,g;function p(){var m=-1,y=s.call(arguments,0,-1),B=arguments[arguments.length-1];if(typeof B!="function")throw new Error("Expected function as last argument, not "+B);v.apply(null,[null].concat(y));function v(k){var T=o[++m],O=s.call(arguments,0),X=O.slice(1),U=y.length,le=-1;if(k){B(k);return}for(;++le{"use strict";var r={}.hasOwnProperty;t.exports=s;function s(p){return!p||typeof p!="object"?"":r.call(p,"position")||r.call(p,"type")?o(p.position):r.call(p,"start")||r.call(p,"end")?o(p):r.call(p,"line")||r.call(p,"column")?a(p):""}function a(p){return(!p||typeof p!="object")&&(p={}),g(p.line)+":"+g(p.column)}function o(p){return(!p||typeof p!="object")&&(p={}),a(p.start)+"-"+a(p.end)}function g(p){return p&&typeof p=="number"?p:1}}),uia=xl((e,t)=>{"use strict";var r=lia();t.exports=o;function s(){}s.prototype=Error.prototype,o.prototype=new s;var a=o.prototype;a.file="",a.name="",a.reason="",a.message="",a.stack="",a.fatal=null,a.column=null,a.line=null;function o(p,f,m){var y,B,v;typeof f=="string"&&(m=f,f=null),y=g(m),B=r(f)||"1:1",v={start:{line:null,column:null},end:{line:null,column:null}},f&&f.position&&(f=f.position),f&&(f.start?(v=f,f=f.start):v.start=f),p.stack&&(this.stack=p.stack,p=p.message),this.message=p,this.name=B,this.reason=p,this.line=f?f.line:null,this.column=f?f.column:null,this.location=v,this.source=y[0],this.ruleId=y[1]}function g(p){var f=[null,null],m;return typeof p=="string"&&(m=p.indexOf(":"),m===-1?f[1]=p:(f[0]=p.slice(0,m),f[1]=p.slice(m+1))),f}}),gia=xl(e=>{"use strict";e.basename=t,e.dirname=r,e.extname=s,e.join=a,e.sep="/";function t(f,m){var y=0,B=-1,v,k,T,O;if(m!==void 0&&typeof m!="string")throw new TypeError('"ext" argument must be a string');if(p(f),v=f.length,m===void 0||!m.length||m.length>f.length){for(;v--;)if(f.charCodeAt(v)===47){if(T){y=v+1;break}}else B<0&&(T=!0,B=v+1);return B<0?"":f.slice(y,B)}if(m===f)return"";for(k=-1,O=m.length-1;v--;)if(f.charCodeAt(v)===47){if(T){y=v+1;break}}else k<0&&(T=!0,k=v+1),O>-1&&(f.charCodeAt(v)===m.charCodeAt(O--)?O<0&&(B=v):(O=-1,B=k));return y===B?B=k:B<0&&(B=f.length),f.slice(y,B)}function r(f){var m,y,B;if(p(f),!f.length)return".";for(m=-1,B=f.length;--B;)if(f.charCodeAt(B)===47){if(y){m=B;break}}else y||(y=!0);return m<0?f.charCodeAt(0)===47?"/":".":m===1&&f.charCodeAt(0)===47?"//":f.slice(0,m)}function s(f){var m=-1,y=0,B=-1,v=0,k,T,O;for(p(f),O=f.length;O--;){if(T=f.charCodeAt(O),T===47){if(k){y=O+1;break}continue}B<0&&(k=!0,B=O+1),T===46?m<0?m=O:v!==1&&(v=1):m>-1&&(v=-1)}return m<0||B<0||v===0||v===1&&m===B-1&&m===y+1?"":f.slice(m,B)}function a(){for(var f=-1,m;++f2){if(X=y.lastIndexOf("/"),X!==y.length-1){X<0?(y="",B=0):(y=y.slice(0,X),B=y.length-1-y.lastIndexOf("/")),v=T,k=0;continue}}else if(y.length){y="",B=0,v=T,k=0;continue}}m&&(y=y.length?y+"/..":"..",B=2)}else y.length?y+="/"+f.slice(v+1,T):y=f.slice(v+1,T),B=T-v-1;v=T,k=0}else O===46&&k>-1?k++:k=-1}return y}function p(f){if(typeof f!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(f))}}),Aia=xl(e=>{"use strict";e.cwd=t;function t(){return"/"}}),dia=xl((e,t)=>{"use strict";var r=gia(),s=Aia(),a=fni();t.exports=p;var o={}.hasOwnProperty,g=["history","path","basename","stem","extname","dirname"];p.prototype.toString=le,Object.defineProperty(p.prototype,"path",{get:f,set:m}),Object.defineProperty(p.prototype,"dirname",{get:y,set:B}),Object.defineProperty(p.prototype,"basename",{get:v,set:k}),Object.defineProperty(p.prototype,"extname",{get:T,set:O}),Object.defineProperty(p.prototype,"stem",{get:X,set:U});function p(pe){var he,be;if(!pe)pe={};else if(typeof pe=="string"||a(pe))pe={contents:pe};else if("message"in pe&&"messages"in pe)return pe;if(!(this instanceof p))return new p(pe);for(this.data={},this.messages=[],this.history=[],this.cwd=s.cwd(),be=-1;++be-1)throw new Error("`extname` cannot contain multiple dots")}this.path=r.join(this.dirname,this.stem+(pe||""))}function X(){return typeof this.path=="string"?r.basename(this.path,this.extname):void 0}function U(pe){ge(pe,"stem"),ae(pe,"stem"),this.path=r.join(this.dirname||"",pe+(this.extname||""))}function le(pe){return(this.contents||"").toString(pe)}function ae(pe,he){if(pe&&pe.indexOf(r.sep)>-1)throw new Error("`"+he+"` cannot be a path: did not expect `"+r.sep+"`")}function ge(pe,he){if(!pe)throw new Error("`"+he+"` cannot be empty")}function fe(pe,he){if(!pe)throw new Error("Setting `"+he+"` requires `path` to be set too")}}),pia=xl((e,t)=>{"use strict";var r=uia(),s=dia();t.exports=s,s.prototype.message=a,s.prototype.info=g,s.prototype.fail=o;function a(p,f,m){var y=new r(p,f,m);return this.path&&(y.name=this.path+":"+y.name,y.file=this.path),y.fatal=!1,this.messages.push(y),y}function o(){var p=this.message.apply(this,arguments);throw p.fatal=!0,p}function g(){var p=this.message.apply(this,arguments);return p.fatal=null,p}}),fia=xl((e,t)=>{"use strict";t.exports=pia()}),Iia=xl((e,t)=>{"use strict";var r=iia(),s=fni(),a=sia(),o=oia(),g=cia(),p=fia();t.exports=T().freeze();var f=[].slice,m={}.hasOwnProperty,y=g().use(B).use(v).use(k);function B(pe,he){he.tree=pe.parse(he.file)}function v(pe,he,be){pe.run(he.tree,he.file,Te);function Te(ke,x,et){ke?be(ke):(he.tree=x,he.file=et,be())}}function k(pe,he){var be=pe.stringify(he.tree,he.file);be==null||(typeof be=="string"||s(be)?("value"in he.file&&(he.file.value=be),he.file.contents=be):he.file.result=be)}function T(){var pe=[],he=g(),be={},Te=-1,ke;return x.data=Ue,x.freeze=et,x.attachers=pe,x.use=Je,x.parse=ft,x.stringify=Ur,x.run=Gt,x.runSync=er,x.process=Ot,x.processSync=dr,x;function x(){for(var Ar=T(),or=-1;++orDni,options:()=>xni,parsers:()=>oAr,printers:()=>Vni});var Cia=(e,t,r,s)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,s):r.global?t.replace(r,s):t.split(r).join(s)},Wk=Cia,mia=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},fY=mia,hia=$ve(zgr(),1);function BCt(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}var afe="string",Nse="array",vCt="cursor",nSe="indent",iSe="align",z5e="trim",Rse="group",cfe="fill",Tse="if-break",q5e="indent-if-break",$5e="line-suffix",eMe="line-suffix-boundary",Oz="line",tMe="label",sSe="break-parent",Cni=new Set([vCt,nSe,iSe,z5e,Rse,cfe,Tse,q5e,$5e,eMe,Oz,tMe,sSe]);function _ia(e){if(typeof e=="string")return afe;if(Array.isArray(e))return Nse;if(!e)return;let{type:t}=e;if(Cni.has(t))return t}var Dse=_ia,yia=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function bia(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', +Expected it to be 'string' or 'object'.`;if(Dse(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let s=yia([...Cni].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. +Expected it to be ${s}.`}var Eia=class extends Error{name="InvalidDocError";constructor(e){super(bia(e)),this.doc=e}},CCt=Eia,Pri={};function Bia(e,t,r,s){let a=[e];for(;a.length>0;){let o=a.pop();if(o===Pri){r(a.pop());continue}r&&a.push(o,Pri);let g=Dse(o);if(!g)throw new CCt(o);if(t?.(o)!==!1)switch(g){case Nse:case cfe:{let p=g===Nse?o:o.parts;for(let f=p.length,m=f-1;m>=0;--m)a.push(p[m]);break}case Tse:a.push(o.flatContents,o.breakContents);break;case Rse:if(s&&o.expandedStates)for(let p=o.expandedStates.length,f=p-1;f>=0;--f)a.push(o.expandedStates[f]);else a.push(o.contents);break;case iSe:case nSe:case q5e:case tMe:case $5e:a.push(o.contents);break;case afe:case vCt:case z5e:case eMe:case Oz:case sSe:break;default:throw new CCt(o)}}}var via=Bia;function Sia(e,t){if(typeof e=="string")return t(e);let r=new Map;return s(e);function s(o){if(r.has(o))return r.get(o);let g=a(o);return r.set(o,g),g}function a(o){switch(Dse(o)){case Nse:return t(o.map(s));case cfe:return t({...o,parts:o.parts.map(s)});case Tse:return t({...o,breakContents:s(o.breakContents),flatContents:s(o.flatContents)});case Rse:{let{expandedStates:g,contents:p}=o;return g?(g=g.map(s),p=g[0]):p=s(p),t({...o,contents:p,expandedStates:g})}case iSe:case nSe:case q5e:case tMe:case $5e:return t({...o,contents:s(o.contents)});case afe:case vCt:case z5e:case eMe:case Oz:case sSe:return t(o);default:throw new CCt(o)}}}function Ori(e){if(e.length>0){let t=fY(!1,e,-1);!t.expandedStates&&!t.break&&(t.break="propagated")}return null}function wia(e){let t=new Set,r=[];function s(o){if(o.type===sSe&&Ori(r),o.type===Rse){if(r.push(o),t.has(o))return!1;t.add(o)}}function a(o){o.type===Rse&&r.pop().break&&Ori(r)}via(e,s,a,!0)}function Kve(e,t=Ygr){return Sia(e,r=>typeof r=="string"?yni(t,r.split(` +`)):r)}var eAr=()=>{},zve=eAr,mni=eAr,Tia=eAr;function Hgr(e){return zve(e),{type:nSe,contents:e}}function ofe(e,t){return zve(t),{type:iSe,contents:t,n:e}}function fCt(e,t={}){return zve(e),mni(t.expandedStates,!0),{type:Rse,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function mCt(e){return ofe({type:"root"},e)}function tAr(e){return Tia(e),{type:cfe,parts:e}}function Nia(e,t="",r={}){return zve(e),t!==""&&zve(t),{type:Tse,breakContents:e,flatContents:t,groupId:r.groupId}}var hCt={type:sSe},rAr={type:Oz,hard:!0},Ria={type:Oz,hard:!0,literal:!0},hni={type:Oz},_ni={type:Oz,soft:!0},VT=[rAr,hCt],Ygr=[Ria,hCt];function yni(e,t){zve(e),mni(t);let r=[];for(let s=0;sMath.max(s,a.length/t.length),0)}var bni=Dia;function xia(e,t){let r=e.match(new RegExp(`(${BCt(t)})+`,"gu"));if(r===null)return 0;let s=new Map,a=0;for(let o of r){let g=o.length/t.length;s.set(g,!0),g>a&&(a=g)}for(let o=1;oo?s:r}var Fia=Gia,Zia=class extends Error{name="UnexpectedNodeError";constructor(e,t,r="type"){super(`Unexpected ${t} node ${r}: ${JSON.stringify(e[r])}.`),this.node=e}},Lia=Zia,Via=$ve(zgr(),1);function Wia(e){return e?.type==="front-matter"}var Pia=Wia,H5e=3;function Oia(e){let t=e.slice(0,H5e);if(t!=="---"&&t!=="+++")return;let r=e.indexOf(` +`,H5e);if(r===-1)return;let s=e.slice(H5e,r).trim(),a=e.indexOf(` ${t}`,r),o=s;if(o||(o=t==="+++"?"toml":"yaml"),a===-1&&t==="---"&&o==="yaml"&&(a=e.indexOf(` -...`,r)),a===-1)return;let g=a+1+MQe,p=e.charAt(g+1);if(!/\s?/u.test(p))return;let f=e.slice(0,g);return{type:"front-matter",language:o,explicitLanguage:s,value:e.slice(r+1,a),startDelimiter:t,endDelimiter:f.slice(-MQe),raw:f}}function Sia(e){let t=via(e);if(!t)return{content:e};let{raw:r}=t;return{frontMatter:t,content:kk(!1,r,/[^\n]/gu," ")+e.slice(r.length)}}var qgr=Sia,fni=["format","prettier"];function Ini(e){let t=`@(${fni.join("|")})`,r=new RegExp([``,`\\{\\s*\\/\\*\\s*${t}\\s*\\*\\/\\s*\\}`,``,`\\{\\s*\\/\\*\\s*${t}\\s*\\*\\/\\s*\\}`,``].join("|"),"mu"),s=e.match(r);return s?.index===0}var wia=e=>Ini(qgr(e).content.trimStart()),Tia=e=>{let t=qgr(e),r=``;return t.frontMatter?`${t.frontMatter.raw} +.*-->`].join("|"),"mu"),s=e.match(r);return s?.index===0}var Mia=e=>Bni(nAr(e).content.trimStart()),Hia=e=>{let t=nAr(e),r=``;return t.frontMatter?`${t.frontMatter.raw} ${r} ${t.content}`:`${r} -${t.content}`},Nia=new Set(["position","raw"]);function Cni(e,t,r){if((e.type==="front-matter"||e.type==="code"||e.type==="yaml"||e.type==="import"||e.type==="export"||e.type==="jsx")&&delete t.value,e.type==="list"&&delete t.isAligned,(e.type==="list"||e.type==="listItem")&&delete t.spread,e.type==="text")return null;if(e.type==="inlineCode"&&(t.value=kk(!1,e.value,` -`," ")),e.type==="wikiLink"&&(t.value=kk(!1,e.value.trim(),/[\t\n]+/gu," ")),(e.type==="definition"||e.type==="linkReference"||e.type==="imageReference")&&(t.label=(0,bia.default)(e.label)),(e.type==="link"||e.type==="image")&&e.url&&e.url.includes("("))for(let s of"<>")t.url=kk(!1,e.url,s,encodeURIComponent(s));if((e.type==="definition"||e.type==="link"||e.type==="image")&&e.title&&(t.title=kk(!1,e.title,/\\(?=["')])/gu,"")),r?.type==="root"&&r.children.length>0&&(r.children[0]===e||Bia(r.children[0])&&r.children[1]===e)&&e.type==="html"&&Ini(e.value))return null}Cni.ignoredProperties=Nia;var Ria=Cni,Dia=/(?:[\u{2ea}-\u{2eb}\u{1100}-\u{11ff}\u{2e80}-\u{2e99}\u{2e9b}-\u{2ef3}\u{2f00}-\u{2fd5}\u{2ff0}-\u{303f}\u{3041}-\u{3096}\u{3099}-\u{30ff}\u{3105}-\u{312f}\u{3131}-\u{318e}\u{3190}-\u{4dbf}\u{4e00}-\u{9fff}\u{a700}-\u{a707}\u{a960}-\u{a97c}\u{ac00}-\u{d7a3}\u{d7b0}-\u{d7c6}\u{d7cb}-\u{d7fb}\u{f900}-\u{fa6d}\u{fa70}-\u{fad9}\u{fe10}-\u{fe1f}\u{fe30}-\u{fe6f}\u{ff00}-\u{ffef}\u{16fe3}\u{1aff0}-\u{1aff3}\u{1aff5}-\u{1affb}\u{1affd}-\u{1affe}\u{1b000}-\u{1b122}\u{1b132}\u{1b150}-\u{1b152}\u{1b155}\u{1b164}-\u{1b167}\u{1f200}\u{1f250}-\u{1f251}\u{20000}-\u{2a6df}\u{2a700}-\u{2b739}\u{2b740}-\u{2b81d}\u{2b820}-\u{2cea1}\u{2ceb0}-\u{2ebe0}\u{2f800}-\u{2fa1d}\u{30000}-\u{3134a}\u{31350}-\u{323af}])(?:[\u{fe00}-\u{fe0f}\u{e0100}-\u{e01ef}])?/u,YQe=/(?:[\u{21}-\u{2f}\u{3a}-\u{40}\u{5b}-\u{60}\u{7b}-\u{7e}]|\p{General_Category=Connector_Punctuation}|\p{General_Category=Dash_Punctuation}|\p{General_Category=Close_Punctuation}|\p{General_Category=Final_Punctuation}|\p{General_Category=Initial_Punctuation}|\p{General_Category=Other_Punctuation}|\p{General_Category=Open_Punctuation})/u;async function xia(e,t){if(e.language==="yaml"){let r=e.value.trim(),s=r?await t(r,{parser:"yaml"}):"";return fCt([e.startDelimiter,e.explicitLanguage,LT,s,s?LT:"",e.endDelimiter])}}var kia=xia,Gia=e=>String(e).split(/[/\\]/u).pop();function Fri(e,t){if(!t)return;let r=Gia(t).toLowerCase();return e.find(({filenames:s})=>s?.some(a=>a.toLowerCase()===r))??e.find(({extensions:s})=>s?.some(a=>r.endsWith(a)))}function Fia(e,t){if(t)return e.find(({name:r})=>r.toLowerCase()===t)??e.find(({aliases:r})=>r?.includes(t))??e.find(({extensions:r})=>r?.includes(`.${t}`))}function Zia(e,t){let r=e.plugins.flatMap(a=>a.languages??[]),s=Fia(r,t.language)??Fri(r,t.physicalFile)??Fri(r,t.file)??(t.physicalFile,void 0);return s?.parsers[0]}var Lia=Zia,Via=new Proxy(()=>{},{get:()=>Via});function CCt(e){return e.position.start.offset}function mCt(e){return e.position.end.offset}var mni=new Set(["liquidNode","inlineCode","emphasis","esComment","strong","delete","wikiLink","link","linkReference","image","imageReference","footnote","footnoteReference","sentence","whitespace","word","break","inlineMath"]),hni=new Set([...mni,"tableCell","paragraph","heading"]),JQe="non-cjk",Vz="cj-letter",Kve="k-letter",hCt="cjk-punctuation",Wia=/\p{Script_Extensions=Hangul}/u;function _ni(e){let t=[],r=e.split(/([\t\n ]+)/u);for(let[a,o]of r.entries()){if(a%2===1){t.push({type:"whitespace",value:/\n/u.test(o)?` -`:" "});continue}if((a===0||a===r.length-1)&&o==="")continue;let g=o.split(new RegExp(`(${Dia.source})`,"u"));for(let[p,f]of g.entries())if(!((p===0||p===g.length-1)&&f==="")){if(p%2===0){f!==""&&s({type:"word",value:f,kind:JQe,isCJ:!1,hasLeadingPunctuation:YQe.test(f[0]),hasTrailingPunctuation:YQe.test(d5(!1,f,-1))});continue}if(YQe.test(f)){s({type:"word",value:f,kind:hCt,isCJ:!0,hasLeadingPunctuation:!0,hasTrailingPunctuation:!0});continue}if(Wia.test(f)){s({type:"word",value:f,kind:Kve,isCJ:!1,hasLeadingPunctuation:!1,hasTrailingPunctuation:!1});continue}s({type:"word",value:f,kind:Vz,isCJ:!0,hasLeadingPunctuation:!1,hasTrailingPunctuation:!1})}}return t;function s(a){let o=d5(!1,t,-1);o?.type==="word"&&!g(JQe,hCt)&&![o.value,a.value].some(p=>/\u3000/u.test(p))&&t.push({type:"whitespace",value:""}),t.push(a);function g(p,f){return o.kind===p&&a.kind===f||o.kind===f&&a.kind===p}}}function HQe(e,t){let r=t.originalText.slice(e.position.start.offset,e.position.end.offset),{numberText:s,leadingSpaces:a}=r.match(/^\s*(?\d+)(\.|\))(?\s*)/u).groups;return{number:Number(s),leadingSpaces:a}}function Pia(e,t){return!e.ordered||e.children.length<2||HQe(e.children[1],t).number!==1?!1:HQe(e.children[0],t).number!==0?!0:e.children.length>2&&HQe(e.children[2],t).number===1}function yni(e,t){let{value:r}=e;return e.position.end.offset===t.length&&r.endsWith(` +${t.content}`},Yia=new Set(["position","raw"]);function vni(e,t,r){if((e.type==="front-matter"||e.type==="code"||e.type==="yaml"||e.type==="import"||e.type==="export"||e.type==="jsx")&&delete t.value,e.type==="list"&&delete t.isAligned,(e.type==="list"||e.type==="listItem")&&delete t.spread,e.type==="text")return null;if(e.type==="inlineCode"&&(t.value=Wk(!1,e.value,` +`," ")),e.type==="wikiLink"&&(t.value=Wk(!1,e.value.trim(),/[\t\n]+/gu," ")),(e.type==="definition"||e.type==="linkReference"||e.type==="imageReference")&&(t.label=(0,Via.default)(e.label)),(e.type==="link"||e.type==="image")&&e.url&&e.url.includes("("))for(let s of"<>")t.url=Wk(!1,e.url,s,encodeURIComponent(s));if((e.type==="definition"||e.type==="link"||e.type==="image")&&e.title&&(t.title=Wk(!1,e.title,/\\(?=["')])/gu,"")),r?.type==="root"&&r.children.length>0&&(r.children[0]===e||Pia(r.children[0])&&r.children[1]===e)&&e.type==="html"&&Bni(e.value))return null}vni.ignoredProperties=Yia;var Xia=vni,Jia=/(?:[\u{2ea}-\u{2eb}\u{1100}-\u{11ff}\u{2e80}-\u{2e99}\u{2e9b}-\u{2ef3}\u{2f00}-\u{2fd5}\u{2ff0}-\u{303f}\u{3041}-\u{3096}\u{3099}-\u{30ff}\u{3105}-\u{312f}\u{3131}-\u{318e}\u{3190}-\u{4dbf}\u{4e00}-\u{9fff}\u{a700}-\u{a707}\u{a960}-\u{a97c}\u{ac00}-\u{d7a3}\u{d7b0}-\u{d7c6}\u{d7cb}-\u{d7fb}\u{f900}-\u{fa6d}\u{fa70}-\u{fad9}\u{fe10}-\u{fe1f}\u{fe30}-\u{fe6f}\u{ff00}-\u{ffef}\u{16fe3}\u{1aff0}-\u{1aff3}\u{1aff5}-\u{1affb}\u{1affd}-\u{1affe}\u{1b000}-\u{1b122}\u{1b132}\u{1b150}-\u{1b152}\u{1b155}\u{1b164}-\u{1b167}\u{1f200}\u{1f250}-\u{1f251}\u{20000}-\u{2a6df}\u{2a700}-\u{2b739}\u{2b740}-\u{2b81d}\u{2b820}-\u{2cea1}\u{2ceb0}-\u{2ebe0}\u{2f800}-\u{2fa1d}\u{30000}-\u{3134a}\u{31350}-\u{323af}])(?:[\u{fe00}-\u{fe0f}\u{e0100}-\u{e01ef}])?/u,X5e=/(?:[\u{21}-\u{2f}\u{3a}-\u{40}\u{5b}-\u{60}\u{7b}-\u{7e}]|\p{General_Category=Connector_Punctuation}|\p{General_Category=Dash_Punctuation}|\p{General_Category=Close_Punctuation}|\p{General_Category=Final_Punctuation}|\p{General_Category=Initial_Punctuation}|\p{General_Category=Other_Punctuation}|\p{General_Category=Open_Punctuation})/u;async function Uia(e,t){if(e.language==="yaml"){let r=e.value.trim(),s=r?await t(r,{parser:"yaml"}):"";return mCt([e.startDelimiter,e.explicitLanguage,VT,s,s?VT:"",e.endDelimiter])}}var Kia=Uia,jia=e=>String(e).split(/[/\\]/u).pop();function Mri(e,t){if(!t)return;let r=jia(t).toLowerCase();return e.find(({filenames:s})=>s?.some(a=>a.toLowerCase()===r))??e.find(({extensions:s})=>s?.some(a=>r.endsWith(a)))}function zia(e,t){if(t)return e.find(({name:r})=>r.toLowerCase()===t)??e.find(({aliases:r})=>r?.includes(t))??e.find(({extensions:r})=>r?.includes(`.${t}`))}function qia(e,t){let r=e.plugins.flatMap(a=>a.languages??[]),s=zia(r,t.language)??Mri(r,t.physicalFile)??Mri(r,t.file)??(t.physicalFile,void 0);return s?.parsers[0]}var $ia=qia,esa=new Proxy(()=>{},{get:()=>esa});function _Ct(e){return e.position.start.offset}function yCt(e){return e.position.end.offset}var Sni=new Set(["liquidNode","inlineCode","emphasis","esComment","strong","delete","wikiLink","link","linkReference","image","imageReference","footnote","footnoteReference","sentence","whitespace","word","break","inlineMath"]),wni=new Set([...Sni,"tableCell","paragraph","heading"]),K5e="non-cjk",Wz="cj-letter",qve="k-letter",bCt="cjk-punctuation",tsa=/\p{Script_Extensions=Hangul}/u;function Tni(e){let t=[],r=e.split(/([\t\n ]+)/u);for(let[a,o]of r.entries()){if(a%2===1){t.push({type:"whitespace",value:/\n/u.test(o)?` +`:" "});continue}if((a===0||a===r.length-1)&&o==="")continue;let g=o.split(new RegExp(`(${Jia.source})`,"u"));for(let[p,f]of g.entries())if(!((p===0||p===g.length-1)&&f==="")){if(p%2===0){f!==""&&s({type:"word",value:f,kind:K5e,isCJ:!1,hasLeadingPunctuation:X5e.test(f[0]),hasTrailingPunctuation:X5e.test(fY(!1,f,-1))});continue}if(X5e.test(f)){s({type:"word",value:f,kind:bCt,isCJ:!0,hasLeadingPunctuation:!0,hasTrailingPunctuation:!0});continue}if(tsa.test(f)){s({type:"word",value:f,kind:qve,isCJ:!1,hasLeadingPunctuation:!1,hasTrailingPunctuation:!1});continue}s({type:"word",value:f,kind:Wz,isCJ:!0,hasLeadingPunctuation:!1,hasTrailingPunctuation:!1})}}return t;function s(a){let o=fY(!1,t,-1);o?.type==="word"&&!g(K5e,bCt)&&![o.value,a.value].some(p=>/\u3000/u.test(p))&&t.push({type:"whitespace",value:""}),t.push(a);function g(p,f){return o.kind===p&&a.kind===f||o.kind===f&&a.kind===p}}}function J5e(e,t){let r=t.originalText.slice(e.position.start.offset,e.position.end.offset),{numberText:s,leadingSpaces:a}=r.match(/^\s*(?\d+)(\.|\))(?\s*)/u).groups;return{number:Number(s),leadingSpaces:a}}function rsa(e,t){return!e.ordered||e.children.length<2||J5e(e.children[1],t).number!==1?!1:J5e(e.children[0],t).number!==0?!0:e.children.length>2&&J5e(e.children[2],t).number===1}function Nni(e,t){let{value:r}=e;return e.position.end.offset===t.length&&r.endsWith(` `)&&t.endsWith(` -`)?r.slice(0,-1):r}function nSe(e,t){return function r(s,a,o){let g={...t(s,a,o)};return g.children&&(g.children=g.children.map((p,f)=>r(p,f,[g,...o]))),g}(e,null,[])}function Zri(e){if(e?.type!=="link"||e.children.length!==1)return!1;let[t]=e.children;return CCt(e)===CCt(t)&&mCt(e)===mCt(t)}function Oia(e,t){let{node:r}=e;if(r.type==="code"&&r.lang!==null){let s=Lia(t,{language:r.lang});if(s)return async a=>{let o=t.__inJsTemplate?"~":"`",g=o.repeat(Math.max(3,pni(r.value,o)+1)),p={parser:s};r.lang==="ts"||r.lang==="typescript"?p.filepath="dummy.ts":r.lang==="tsx"&&(p.filepath="dummy.tsx");let f=await a(yni(r,t.originalText),p);return fCt([g,r.lang,r.meta?" "+r.meta:"",LT,Xve(f),LT,g])}}switch(r.type){case"front-matter":return s=>kia(r,s);case"import":case"export":return s=>s(r.value,{parser:"babel"});case"jsx":return s=>s(`<$>${r.value}`,{parser:"__js_expression",rootMarker:"mdx"})}return null}var Mia=Oia,QQe=null;function XQe(e){if(QQe!==null&&typeof QQe.property){let t=QQe;return QQe=XQe.prototype=null,t}return QQe=XQe.prototype=e??Object.create(null),new XQe}var Qia=10;for(let e=0;e<=Qia;e++)XQe();function Yia(e){return XQe(e)}function Hia(e,t="type"){Yia(e);function r(s){let a=s[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:s});return o}return r}var Xia=Hia,Jia={"front-matter":[],root:["children"],paragraph:["children"],sentence:["children"],word:[],whitespace:[],emphasis:["children"],strong:["children"],delete:["children"],inlineCode:[],wikiLink:[],link:["children"],image:[],blockquote:["children"],heading:["children"],code:[],html:[],list:["children"],thematicBreak:[],linkReference:["children"],imageReference:[],definition:[],footnote:["children"],footnoteReference:[],footnoteDefinition:["children"],table:["children"],tableCell:["children"],break:[],liquidNode:[],import:[],export:[],esComment:[],jsx:[],math:[],inlineMath:[],tableRow:["children"],listItem:["children"],text:[]},Uia=Jia,Kia=Xia(Uia),jia=Kia;function zia(e){switch(e){case"cr":return"\r";case"crlf":return`\r +`)?r.slice(0,-1):r}function oSe(e,t){return function r(s,a,o){let g={...t(s,a,o)};return g.children&&(g.children=g.children.map((p,f)=>r(p,f,[g,...o]))),g}(e,null,[])}function Hri(e){if(e?.type!=="link"||e.children.length!==1)return!1;let[t]=e.children;return _Ct(e)===_Ct(t)&&yCt(e)===yCt(t)}function nsa(e,t){let{node:r}=e;if(r.type==="code"&&r.lang!==null){let s=$ia(t,{language:r.lang});if(s)return async a=>{let o=t.__inJsTemplate?"~":"`",g=o.repeat(Math.max(3,bni(r.value,o)+1)),p={parser:s};r.lang==="ts"||r.lang==="typescript"?p.filepath="dummy.ts":r.lang==="tsx"&&(p.filepath="dummy.tsx");let f=await a(Nni(r,t.originalText),p);return mCt([g,r.lang,r.meta?" "+r.meta:"",VT,Kve(f),VT,g])}}switch(r.type){case"front-matter":return s=>Kia(r,s);case"import":case"export":return s=>s(r.value,{parser:"babel"});case"jsx":return s=>s(`<$>${r.value}`,{parser:"__js_expression",rootMarker:"mdx"})}return null}var isa=nsa,Y5e=null;function U5e(e){if(Y5e!==null&&typeof Y5e.property){let t=Y5e;return Y5e=U5e.prototype=null,t}return Y5e=U5e.prototype=e??Object.create(null),new U5e}var ssa=10;for(let e=0;e<=ssa;e++)U5e();function osa(e){return U5e(e)}function asa(e,t="type"){osa(e);function r(s){let a=s[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:s});return o}return r}var csa=asa,lsa={"front-matter":[],root:["children"],paragraph:["children"],sentence:["children"],word:[],whitespace:[],emphasis:["children"],strong:["children"],delete:["children"],inlineCode:[],wikiLink:[],link:["children"],image:[],blockquote:["children"],heading:["children"],code:[],html:[],list:["children"],thematicBreak:[],linkReference:["children"],imageReference:[],definition:[],footnote:["children"],footnoteReference:[],footnoteDefinition:["children"],table:["children"],tableCell:["children"],break:[],liquidNode:[],import:[],export:[],esComment:[],jsx:[],math:[],inlineMath:[],tableRow:["children"],listItem:["children"],text:[]},usa=lsa,gsa=csa(usa),Asa=gsa;function dsa(e){switch(e){case"cr":return"\r";case"crlf":return`\r `;default:return` -`}}var qia=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;function $ia(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function esa(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var tsa=e=>!($ia(e)||esa(e)),rsa=/[^\x20-\x7F]/u;function nsa(e){if(!e)return 0;if(!rsa.test(e))return e.length;e=e.replace(qia()," ");let t=0;for(let r of e){let s=r.codePointAt(0);s<=31||s>=127&&s<=159||s>=768&&s<=879||(t+=tsa(s)?1:2)}return t}var $gr=nsa,i9=Symbol("MODE_BREAK"),OU=Symbol("MODE_FLAT"),Jve=Symbol("cursor"),Ogr=Symbol("DOC_FILL_PRINTED_LENGTH");function bni(){return{value:"",length:0,queue:[]}}function isa(e,t){return Mgr(e,{type:"indent"},t)}function ssa(e,t,r){return t===Number.NEGATIVE_INFINITY?e.root||bni():t<0?Mgr(e,{type:"dedent"},r):t?t.type==="root"?{...e,root:e}:Mgr(e,{type:typeof t=="string"?"stringAlign":"numberAlign",n:t},r):e}function Mgr(e,t,r){let s=t.type==="dedent"?e.queue.slice(0,-1):[...e.queue,t],a="",o=0,g=0,p=0;for(let T of s)switch(T.type){case"indent":y(),r.useTabs?f(1):m(r.tabWidth);break;case"stringAlign":y(),a+=T.n,o+=T.n.length;break;case"numberAlign":g+=1,p+=T.n;break;default:throw new Error(`Unexpected type '${T.type}'`)}return v(),{...e,value:a,length:o,queue:s};function f(T){a+=" ".repeat(T),o+=r.tabWidth*T}function m(T){a+=" ".repeat(T),o+=T}function y(){r.useTabs?B():v()}function B(){g>0&&f(g),G()}function v(){p>0&&m(p),G()}function G(){g=0,p=0}}function Qgr(e){let t=0,r=0,s=e.length;e:for(;s--;){let a=e[s];if(a===Jve){r++;continue}for(let o=a.length-1;o>=0;o--){let g=a[o];if(g===" "||g===" ")t++;else{e[s]=a.slice(0,o+1);break e}}}if(t>0||r>0)for(e.length=s+1;r-- >0;)e.push(Jve);return t}function gCt(e,t,r,s,a,o){if(r===Number.POSITIVE_INFINITY)return!0;let g=t.length,p=[e],f=[];for(;r>=0;){if(p.length===0){if(g===0)return!0;p.push(t[--g]);continue}let{mode:m,doc:y}=p.pop(),B=Sse(y);switch(B){case tfe:f.push(y),r-=$gr(y);break;case Bse:case rfe:{let v=B===Bse?y:y.parts,G=y[Ogr]??0;for(let T=v.length-1;T>=G;T--)p.push({mode:m,doc:v[T]});break}case eSe:case tSe:case jQe:case $Qe:p.push({mode:m,doc:y.contents});break;case KQe:r+=Qgr(f);break;case vse:{if(o&&y.break)return!1;let v=y.break?i9:m,G=y.expandedStates&&v===i9?d5(!1,y.expandedStates,-1):y.contents;p.push({mode:v,doc:G});break}case Ese:{let v=(y.groupId?a[y.groupId]||OU:m)===i9?y.breakContents:y.flatContents;v&&p.push({mode:m,doc:v});break}case Pz:if(m===i9||y.hard)return!0;y.soft||(f.push(" "),r--);break;case zQe:s=!0;break;case qQe:if(s)return!1;break}}return!1}function osa(e,t){let r={},s=t.printWidth,a=zia(t.endOfLine),o=0,g=[{ind:bni(),mode:i9,doc:e}],p=[],f=!1,m=[],y=0;for(gia(e);g.length>0;){let{ind:v,mode:G,doc:T}=g.pop();switch(Sse(T)){case tfe:{let O=a!==` -`?kk(!1,T,` -`,a):T;p.push(O),g.length>0&&(o+=$gr(O));break}case Bse:for(let O=T.length-1;O>=0;O--)g.push({ind:v,mode:G,doc:T[O]});break;case bCt:if(y>=2)throw new Error("There are too many 'cursor' in doc.");p.push(Jve),y++;break;case eSe:g.push({ind:isa(v,t),mode:G,doc:T.contents});break;case tSe:g.push({ind:ssa(v,T.n,t),mode:G,doc:T.contents});break;case KQe:o-=Qgr(p);break;case vse:switch(G){case OU:if(!f){g.push({ind:v,mode:T.break?i9:OU,doc:T.contents});break}case i9:{f=!1;let O={ind:v,mode:OU,doc:T.contents},X=s-o,U=m.length>0;if(!T.break&&gCt(O,g,X,U,r))g.push(O);else if(T.expandedStates){let le=d5(!1,T.expandedStates,-1);if(T.break){g.push({ind:v,mode:i9,doc:le});break}else for(let ae=1;ae=T.expandedStates.length){g.push({ind:v,mode:i9,doc:le});break}else{let ge=T.expandedStates[ae],fe={ind:v,mode:OU,doc:ge};if(gCt(fe,g,X,U,r)){g.push(fe);break}}}else g.push({ind:v,mode:i9,doc:T.contents});break}}T.id&&(r[T.id]=d5(!1,g,-1).mode);break;case rfe:{let O=s-o,X=T[Ogr]??0,{parts:U}=T,le=U.length-X;if(le===0)break;let ae=U[X+0],ge=U[X+1],fe={ind:v,mode:OU,doc:ae},pe={ind:v,mode:i9,doc:ae},he=gCt(fe,[],O,m.length>0,r,!0);if(le===1){he?g.push(fe):g.push(pe);break}let be={ind:v,mode:OU,doc:ge},Te={ind:v,mode:i9,doc:ge};if(le===2){he?g.push(be,fe):g.push(Te,pe);break}let ke=U[X+2],x={ind:v,mode:G,doc:{...T,[Ogr]:X+2}};gCt({ind:v,mode:OU,doc:[ae,ge,ke]},[],O,m.length>0,r,!0)?g.push(x,be,fe):he?g.push(x,Te,fe):g.push(x,Te,pe);break}case Ese:case jQe:{let O=T.groupId?r[T.groupId]:G;if(O===i9){let X=T.type===Ese?T.breakContents:T.negate?T.contents:Wgr(T.contents);X&&g.push({ind:v,mode:G,doc:X})}if(O===OU){let X=T.type===Ese?T.flatContents:T.negate?Wgr(T.contents):T.contents;X&&g.push({ind:v,mode:G,doc:X})}break}case zQe:m.push({ind:v,mode:G,doc:T.contents});break;case qQe:m.length>0&&g.push({ind:v,mode:G,doc:zgr});break;case Pz:switch(G){case OU:if(T.hard)f=!0;else{T.soft||(p.push(" "),o+=1);break}case i9:if(m.length>0){g.push({ind:v,mode:G,doc:T},...m.reverse()),m.length=0;break}T.literal?v.root?(p.push(a,v.root.value),o=v.root.length):(p.push(a),o=0):(o-=Qgr(p),p.push(a+v.value),o=v.length);break}break;case $Qe:g.push({ind:v,mode:G,doc:T.contents});break;case rSe:break;default:throw new pCt(T)}g.length===0&&m.length>0&&(g.push(...m.reverse()),m.length=0)}let B=p.indexOf(Jve);if(B!==-1){let v=p.indexOf(Jve,B+1);if(v===-1)return{formatted:p.filter(X=>X!==Jve).join("")};let G=p.slice(0,B).join(""),T=p.slice(B+1,v).join(""),O=p.slice(v+1).join("");return{formatted:G+T+O,cursorNodeStart:G.length,cursorNodeText:T}}return{formatted:p.join("")}}function asa(e,t,r){let{node:s}=e,a=[],o=e.map(()=>e.map(({index:B})=>{let v=osa(r(),t).formatted,G=$gr(v);return a[B]=Math.max(a[B]??3,G),{text:v,width:G}},"children"),"children"),g=f(!1);if(t.proseWrap!=="never")return[ICt,g];let p=f(!0);return[ICt,ACt(dia(p,g))];function f(B){return dni(zgr,[y(o[0],B),m(B),...o.slice(1).map(v=>y(v,B))].map(v=>`| ${v.join(" | ")} |`))}function m(B){return a.map((v,G)=>{let T=s.align[G],O=T==="center"||T==="left"?":":"-",X=T==="center"||T==="right"?":":"-",U=B?"-":"-".repeat(v-2);return`${O}${U}${X}`})}function y(B,v){return B.map(({text:G,width:T},O)=>{if(v)return G;let X=a[O]-T,U=s.align[O],le=0;U==="right"?le=X:U==="center"&&(le=Math.floor(X/2));let ae=X-le;return`${" ".repeat(le)}${G}${" ".repeat(ae)}`})}}function csa(e,t,r){let s=e.map(r,"children");return lsa(s)}function lsa(e){let t=[""];return function r(s){for(let a of s){let o=Sse(a);if(o===Bse){r(a);continue}let g=a,p=[];o===rfe&&([g,...p]=a.parts),t.push([t.pop(),g],...p)}}(e),jgr(t)}var A5,usa=class{constructor(e){Rra(this,A5),Dra(this,A5,new Set(e))}getLeadingWhitespaceCount(e){let t=bse(this,A5),r=0;for(let s=0;s=0&&t.has(e.charAt(s));s--)r++;return r}getLeadingWhitespace(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(0,t)}getTrailingWhitespace(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(e.length-t)}hasLeadingWhitespace(e){return bse(this,A5).has(e.charAt(0))}hasTrailingWhitespace(e){return bse(this,A5).has(d5(!1,e,-1))}trimStart(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(t)}trimEnd(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(0,e.length-t)}trim(e){return this.trimEnd(this.trimStart(e))}split(e,t=!1){let r=`[${yCt([...bse(this,A5)].join(""))}]+`,s=new RegExp(t?`(${r})`:r,"u");return e.split(s)}hasWhitespaceCharacter(e){let t=bse(this,A5);return Array.prototype.some.call(e,r=>t.has(r))}hasNonWhitespaceCharacter(e){let t=bse(this,A5);return Array.prototype.some.call(e,r=>!t.has(r))}isWhitespaceOnly(e){let t=bse(this,A5);return Array.prototype.every.call(e,r=>t.has(r))}};A5=new WeakMap;var gsa=usa,Asa=[" ",` -`,"\f","\r"," "],dsa=new gsa(Asa),Lri=dsa,psa=/^.$/su;function fsa(e,t){return e=Isa(e,t),e=msa(e),e=_sa(e,t),e=ysa(e,t),e=hsa(e),e}function Isa(e,t){return nSe(e,r=>r.type!=="text"||r.value==="*"||r.value==="_"||!psa.test(r.value)||r.position.end.offset-r.position.start.offset===r.value.length?r:{...r,value:t.originalText.slice(r.position.start.offset,r.position.end.offset)})}function Csa(e,t,r){return nSe(e,s=>{if(!s.children)return s;let a=s.children.reduce((o,g)=>{let p=d5(!1,o,-1);return p&&t(p,g)?o.splice(-1,1,r(p,g)):o.push(g),o},[]);return{...s,children:a}})}function msa(e){return Csa(e,(t,r)=>t.type==="text"&&r.type==="text",(t,r)=>({type:"text",value:t.value+r.value,position:{start:t.position.start,end:r.position.end}}))}function hsa(e){return nSe(e,(t,r,[s])=>{if(t.type!=="text")return t;let{value:a}=t;return s.type==="paragraph"&&(r===0&&(a=Lri.trimStart(a)),r===s.children.length-1&&(a=Lri.trimEnd(a))),{type:"sentence",position:t.position,children:_ni(a)}})}function _sa(e,t){return nSe(e,(r,s,a)=>{if(r.type==="code"){let o=/^\n?(?: {4,}|\t)/u.test(t.originalText.slice(r.position.start.offset,r.position.end.offset));if(r.isIndented=o,o)for(let g=0;g{if(a.type==="list"&&a.children.length>0){for(let p=0;p1)return!0;let p=r(o);if(p===-1)return!1;if(a.children.length===1)return p%t.tabWidth===0;let f=r(g);return p!==f?!1:p%t.tabWidth===0?!0:HQe(g,t).leadingSpaces.length>1}}var bsa=fsa;function Esa(e,t){let r=[""];return e.each(()=>{let{node:s}=e,a=t();switch(s.type){case"whitespace":if(Sse(a)!==tfe){r.push(a,"");break}default:r.push([r.pop(),a])}},"children"),jgr(r)}var Bsa=new Set(["heading","tableCell","link","wikiLink"]),Vri=new Set("!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~");function vsa({parent:e}){if(e.usesCJSpaces===void 0){let t={" ":0,"":0},{children:r}=e;for(let s=1;st[""]}return e.usesCJSpaces}function Ssa(e,t){if(t)return!0;let{previous:r,next:s}=e;if(!r||!s)return!0;let a=r.kind,o=s.kind;return Wri(a)&&Wri(o)||a===Kve&&o===Vz||o===Kve&&a===Vz?!0:a===hCt||o===hCt||a===Vz&&o===Vz?!1:Vri.has(s.value[0])||Vri.has(d5(!1,r.value,-1))?!0:r.hasTrailingPunctuation||s.hasLeadingPunctuation?!1:vsa(e)}function Wri(e){return e===JQe||e===Kve}function wsa(e,t,r,s){if(r!=="always"||e.hasAncestor(g=>Bsa.has(g.type)))return!1;if(s)return t!=="";let{previous:a,next:o}=e;return!a||!o?!0:t===""?!1:a.kind===Kve&&o.kind===Vz||o.kind===Kve&&a.kind===Vz?!0:!(a.isCJ||o.isCJ)}function Pri(e,t,r,s){if(r==="preserve"&&t===` -`)return LT;let a=t===" "||t===` -`&&Ssa(e,s);return wsa(e,t,r,s)?a?gni:Ani:a?" ":""}var Tsa=new Set(["listItem","definition"]);function Nsa(e,t,r){var s,a;let{node:o}=e;if(Fsa(e)){let g=[""],p=_ni(t.originalText.slice(o.position.start.offset,o.position.end.offset));for(let f of p){if(f.type==="word"){g.push([g.pop(),f.value]);continue}let m=Pri(e,f.value,t.proseWrap,!0);if(Sse(m)===tfe){g.push([g.pop(),m]);continue}g.push(m,"")}return jgr(g)}switch(o.type){case"front-matter":return t.originalText.slice(o.position.start.offset,o.position.end.offset);case"root":return o.children.length===0?"":[xsa(e,t,r),LT];case"paragraph":return csa(e,t,r);case"sentence":return Esa(e,r);case"word":{let g=kk(!1,kk(!1,o.value,"*",String.raw`\*`),new RegExp([`(^|${YQe.source})(_+)`,`(_+)(${YQe.source}|$)`].join("|"),"gu"),(m,y,B,v,G)=>kk(!1,B?`${y}${B}`:`${v}${G}`,"_",String.raw`\_`)),p=(m,y,B)=>m.type==="sentence"&&B===0,f=(m,y,B)=>Zri(m.children[B-1]);return g!==o.value&&(e.match(void 0,p,f)||e.match(void 0,p,(m,y,B)=>m.type==="emphasis"&&B===0,f))&&(g=g.replace(/^(\\?[*_])+/u,m=>kk(!1,m,"\\",""))),g}case"whitespace":{let{next:g}=e,p=g&&/^>|^(?:[*+-]|#{1,6}|\d+[).])$/u.test(g.value)?"never":t.proseWrap;return Pri(e,o.value,p)}case"emphasis":{let g;if(Zri(o.children[0]))g=t.originalText[o.position.start.offset];else{let{previous:p,next:f}=e;g=p?.type==="sentence"&&((s=d5(!1,p.children,-1))==null?void 0:s.type)==="word"&&!d5(!1,p.children,-1).hasTrailingPunctuation||f?.type==="sentence"&&((a=f.children[0])==null?void 0:a.type)==="word"&&!f.children[0].hasLeadingPunctuation||e.hasAncestor(m=>m.type==="emphasis")?"*":"_"}return[g,n9(e,t,r),g]}case"strong":return["**",n9(e,t,r),"**"];case"delete":return["~~",n9(e,t,r),"~~"];case"inlineCode":{let g=t.proseWrap==="preserve"?o.value:kk(!1,o.value,` -`," "),p=Cia(g,"`"),f="`".repeat(p||1),m=g.startsWith("`")||g.endsWith("`")||/^[\n ]/u.test(g)&&/[\n ]$/u.test(g)&&/[^\n ]/u.test(g)?" ":"";return[f,m,g,m,f]}case"wikiLink":{let g="";return t.proseWrap==="preserve"?g=o.value:g=kk(!1,o.value,/[\t\n]+/gu," "),["[[",g,"]]"]}case"link":switch(t.originalText[o.position.start.offset]){case"<":{let g="mailto:";return["<",o.url.startsWith(g)&&t.originalText.slice(o.position.start.offset+1,o.position.start.offset+1+g.length)!==g?o.url.slice(g.length):o.url,">"]}case"[":return["[",n9(e,t,r),"](",Lgr(o.url,")"),dCt(o.title,t),")"];default:return t.originalText.slice(o.position.start.offset,o.position.end.offset)}case"image":return["![",o.alt||"","](",Lgr(o.url,")"),dCt(o.title,t),")"];case"blockquote":return["> ",efe("> ",n9(e,t,r))];case"heading":return["#".repeat(o.depth)+" ",n9(e,t,r)];case"code":{if(o.isIndented){let f=" ".repeat(4);return efe(f,[f,Xve(o.value,LT)])}let g=t.__inJsTemplate?"~":"`",p=g.repeat(Math.max(3,pni(o.value,g)+1));return[p,o.lang||"",o.meta?" "+o.meta:"",LT,Xve(yni(o,t.originalText),LT),LT,p]}case"html":{let{parent:g,isLast:p}=e,f=g.type==="root"&&p?o.value.trimEnd():o.value,m=/^$/su.test(f);return Xve(f,m?LT:fCt(Pgr))}case"list":{let g=Mri(o,e.parent),p=Pia(o,t);return n9(e,t,r,{processor(f){let m=B(),y=f.node;if(y.children.length===2&&y.children[1].type==="html"&&y.children[0].position.start.column!==y.children[1].position.start.column)return[m,Ori(f,t,r,m)];return[m,efe(" ".repeat(m.length),Ori(f,t,r,m))];function B(){let v=o.ordered?(f.isFirst?o.start:p?1:o.start+f.index)+(g%2===0?". ":") "):g%2===0?"- ":"* ";return(o.isAligned||o.hasIndentedCodeblock)&&o.ordered?Rsa(v,t):v}}})}case"thematicBreak":{let{ancestors:g}=e,p=g.findIndex(f=>f.type==="list");return p===-1?"---":Mri(g[p],g[p+1])%2===0?"***":"---"}case"linkReference":return["[",n9(e,t,r),"]",o.referenceType==="full"?Vgr(o):o.referenceType==="collapsed"?"[]":""];case"imageReference":switch(o.referenceType){case"full":return["![",o.alt||"","]",Vgr(o)];default:return["![",o.alt,"]",o.referenceType==="collapsed"?"[]":""]}case"definition":{let g=t.proseWrap==="always"?gni:" ";return ACt([Vgr(o),":",Wgr([g,Lgr(o.url),o.title===null?"":[g,dCt(o.title,t,!1)]])])}case"footnote":return["[^",n9(e,t,r),"]"];case"footnoteReference":return Xri(o);case"footnoteDefinition":{let g=o.children.length===1&&o.children[0].type==="paragraph"&&(t.proseWrap==="never"||t.proseWrap==="preserve"&&o.children[0].position.start.line===o.children[0].position.end.line);return[Xri(o),": ",g?n9(e,t,r):ACt([efe(" ".repeat(4),n9(e,t,r,{processor:({isFirst:p})=>p?ACt([Ani,r()]):r()}))])]}case"table":return asa(e,t,r);case"tableCell":return n9(e,t,r);case"break":return/\s/u.test(t.originalText[o.position.start.offset])?[" ",fCt(Pgr)]:["\\",LT];case"liquidNode":return Xve(o.value,LT);case"import":case"export":case"jsx":return o.value;case"esComment":return["{/* ",o.value," */}"];case"math":return["$$",LT,o.value?[Xve(o.value,LT),LT]:"","$$"];case"inlineMath":return t.originalText.slice(CCt(o),mCt(o));case"tableRow":case"listItem":case"text":default:throw new yia(o,"Markdown")}}function Ori(e,t,r,s){let{node:a}=e,o=a.checked===null?"":a.checked?"[x] ":"[ ] ";return[o,n9(e,t,r,{processor({node:g,isFirst:p}){if(p&&g.type!=="list")return efe(" ".repeat(o.length),r());let f=" ".repeat(Lsa(t.tabWidth-s.length,0,3));return[f,efe(f,r())]}})]}function Rsa(e,t){let r=s();return e+" ".repeat(r>=4?0:r);function s(){let a=e.length%t.tabWidth;return a===0?0:t.tabWidth-a}}function Mri(e,t){return Dsa(e,t,r=>r.ordered===e.ordered)}function Dsa(e,t,r){let s=-1;for(let a of t.children)if(a.type===e.type&&r(a)?s++:s=-1,a===e)return s}function xsa(e,t,r){let s=[],a=null,{children:o}=e.node;for(let[g,p]of o.entries())switch(eAr(p)){case"start":a===null&&(a={index:g,offset:p.position.end.offset});break;case"end":a!==null&&(s.push({start:a,end:{index:g,offset:p.position.start.offset}}),a=null);break;default:break}return n9(e,t,r,{processor({index:g}){if(s.length>0){let p=s[0];if(g===p.start.index)return[Qri(o[p.start.index]),t.originalText.slice(p.start.offset,p.end.offset),Qri(o[p.end.index])];if(p.start.index{let g=a(e);g!==!1&&(o.length>0&&ksa(e)&&(o.push(LT),(Gsa(e,t)||Hri(e))&&o.push(LT),Hri(e)&&o.push(LT)),o.push(g))},"children"),o}function Qri(e){if(e.type==="html")return e.value;if(e.type==="paragraph"&&Array.isArray(e.children)&&e.children.length===1&&e.children[0].type==="esComment")return["{/* ",e.children[0].value," */}"]}function eAr(e){let t;if(e.type==="html")t=e.value.match(/^$/u);else{let r;e.type==="esComment"?r=e:e.type==="paragraph"&&e.children.length===1&&e.children[0].type==="esComment"&&(r=e.children[0]),r&&(t=r.value.match(/^prettier-ignore(?:-(start|end))?$/u))}return t?t[1]||"next":!1}function ksa({node:e,parent:t}){let r=mni.has(e.type),s=e.type==="html"&&hni.has(t.type);return!r&&!s}function Yri(e,t){return e.type==="listItem"&&(e.spread||t.originalText.charAt(e.position.end.offset-1)===` -`)}function Gsa({node:e,previous:t,parent:r},s){if(Yri(t,s))return!0;let a=t.type===e.type&&Tsa.has(e.type),o=r.type==="listItem"&&!Yri(r,s),g=eAr(t)==="next",p=e.type==="html"&&t.type==="html"&&t.position.end.line+1===e.position.start.line,f=e.type==="html"&&r.type==="listItem"&&t.type==="paragraph"&&t.position.end.line+1===e.position.start.line;return!(a||o||g||p||f)}function Hri({node:e,previous:t}){let r=t.type==="list",s=e.type==="code"&&e.isIndented;return r&&s}function Fsa(e){let t=e.findAncestor(r=>r.type==="linkReference"||r.type==="imageReference");return t&&(t.type!=="linkReference"||t.referenceType!=="full")}var Zsa=(e,t)=>{for(let r of t)e=kk(!1,e,r,encodeURIComponent(r));return e};function Lgr(e,t=[]){let r=[" ",...Array.isArray(t)?t:[t]];return new RegExp(r.map(s=>yCt(s)).join("|"),"u").test(e)?`<${Zsa(e,"<>")}>`:e}function dCt(e,t,r=!0){if(!e)return"";if(r)return" "+dCt(e,t,!1);if(e=kk(!1,e,/\\(?=["')])/gu,""),e.includes('"')&&e.includes("'")&&!e.includes(")"))return`(${e})`;let s=hia(e,t.singleQuote);return e=kk(!1,e,"\\","\\\\"),e=kk(!1,e,s,`\\${s}`),`${s}${e}${s}`}function Lsa(e,t,r){return Math.max(t,Math.min(e,r))}function Vsa(e){return e.index>0&&eAr(e.previous)==="next"}function Vgr(e){return`[${(0,nia.default)(e.label)}]`}function Xri(e){return`[^${e.label}]`}var Wsa={preprocess:bsa,print:Nsa,embed:Mia,massageAstNode:Ria,hasPrettierIgnore:Vsa,insertPragma:Tia,getVisitorKeys:jia},Psa=Wsa,Eni=[{linguistLanguageId:222,name:"Markdown",type:"prose",color:"#083fa1",aliases:["md","pandoc"],aceMode:"markdown",codemirrorMode:"gfm",codemirrorMimeType:"text/x-gfm",wrap:!0,extensions:[".md",".livemd",".markdown",".mdown",".mdwn",".mkd",".mkdn",".mkdown",".ronn",".scd",".workbook"],filenames:["contents.lr","README"],tmScope:"text.md",parsers:["markdown"],vscodeLanguageIds:["markdown"]},{linguistLanguageId:222,name:"MDX",type:"prose",color:"#083fa1",aliases:["md","pandoc"],aceMode:"markdown",codemirrorMode:"gfm",codemirrorMimeType:"text/x-gfm",wrap:!0,extensions:[".mdx"],filenames:[],tmScope:"text.md",parsers:["mdx"],vscodeLanguageIds:["mdx"]}],Jri={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},Osa={proseWrap:Jri.proseWrap,singleQuote:Jri.singleQuote},Bni=Osa,tAr={};zri(tAr,{markdown:()=>Kri,mdx:()=>aoa,remark:()=>Kri});var Msa=jve(xra(),1),Qsa=jve(Fra(),1),Ysa=jve(Ona(),1),Hsa=jve(eia(),1),Xsa=/^import\s/u,Jsa=/^export\s/u,Usa=String.raw`[a-z][a-z0-9]*(\.[a-z][a-z0-9]*)*|`,Ksa=/|/u,jsa=/^\{\s*\/\*(.*)\*\/\s*\}/u,zsa=` - -`,vni=e=>Xsa.test(e),Ygr=e=>Jsa.test(e),Sni=(e,t)=>{let r=t.indexOf(zsa),s=t.slice(0,r);if(Ygr(s)||vni(s))return e(s)({type:Ygr(s)?"export":"import",value:s})},wni=(e,t)=>{let r=jsa.exec(t);if(r)return e(r[0])({type:"esComment",value:r[1].trim()})};Sni.locator=e=>Ygr(e)||vni(e)?-1:1;wni.locator=(e,t)=>e.indexOf("{",t);var qsa=function(){let{Parser:e}=this,{blockTokenizers:t,blockMethods:r,inlineTokenizers:s,inlineMethods:a}=e.prototype;t.esSyntax=Sni,s.esComment=wni,r.splice(r.indexOf("paragraph"),0,"esSyntax"),a.splice(a.indexOf("text"),0,"esComment")},$sa=function(){let e=this.Parser.prototype;e.blockMethods=["frontMatter",...e.blockMethods],e.blockTokenizers.frontMatter=t;function t(r,s){let a=qgr(s);if(a.frontMatter)return r(a.frontMatter.raw)(a.frontMatter)}t.onlyAtStart=!0},eoa=$sa;function toa(){return e=>nSe(e,(t,r,[s])=>t.type!=="html"||Ksa.test(t.value)||hni.has(s.type)?t:{...t,type:"jsx"})}var roa=toa,noa=function(){let e=this.Parser.prototype,t=e.inlineMethods;t.splice(t.indexOf("text"),0,"liquid"),e.inlineTokenizers.liquid=r;function r(s,a){let o=a.match(/^(\{%.*?%\}|\{\{.*?\}\})/su);if(o)return s(o[0])({type:"liquidNode",value:o[0]})}r.locator=function(s,a){return s.indexOf("{",a)}},ioa=noa,soa=function(){let e="wikiLink",t=/^\[\[(?.+?)\]\]/su,r=this.Parser.prototype,s=r.inlineMethods;s.splice(s.indexOf("link"),0,e),r.inlineTokenizers.wikiLink=a;function a(o,g){let p=t.exec(g);if(p){let f=p.groups.linkContents.trim();return o(p[0])({type:e,value:f})}}a.locator=function(o,g){return o.indexOf("[",g)}},ooa=soa;function Tni({isMDX:e}){return t=>{let r=(0,Hsa.default)().use(Ysa.default,{commonmark:!0,...e&&{blocks:[Usa]}}).use(Msa.default).use(eoa).use(Qsa.default).use(e?qsa:Uri).use(ioa).use(e?roa:Uri).use(ooa);return r.run(r.parse(t))}}function Uri(){}var Nni={astFormat:"mdast",hasPragma:wia,locStart:CCt,locEnd:mCt},Kri={...Nni,parse:Tni({isMDX:!1})},aoa={...Nni,parse:Tni({isMDX:!0})},Rni={mdast:Psa},coa=cni;var ESe={};jf(ESe,{default:()=>cpa,parsers:()=>Jz});var Jii=Object.defineProperty,Uii=e=>{throw TypeError(e)},loa=(e,t,r)=>t in e?Jii(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,Kii=(e,t)=>{for(var r in t)Jii(e,r,{get:t[r],enumerable:!0})},eYe=(e,t,r)=>loa(e,typeof t!="symbol"?t+"":t,r),uoa=(e,t,r)=>t.has(e)||Uii("Cannot "+r),goa=(e,t,r)=>t.has(e)?Uii("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),zu=(e,t,r)=>(uoa(e,t,"access private method"),r),jii={};Kii(jii,{parsers:()=>Jz});var Jz={};Kii(Jz,{typescript:()=>apa});var Aoa=()=>()=>{},OAr=Aoa,doa=(e,t,r,s)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,s):r.global?t.replace(r,s):t.split(r).join(s)},dSe=doa,poa="5.7",n2=[],foa=new Map;function cYe(e){return e!==void 0?e.length:0}function $W(e,t){if(e!==void 0)for(let r=0;r0;return!1}function QAr(e,t){return t===void 0||t.length===0?e:e===void 0||e.length===0?t:[...e,...t]}function _oa(e,t,r=HAr){if(e===void 0||t===void 0)return e===t;if(e.length!==t.length)return!1;for(let s=0;se?.at(t):(e,t)=>{if(e!==void 0&&(t=mAr(e,t),t>1),f=r(e[p],p);switch(s(f,t)){case-1:o=p+1;break;case 0:return p;case 1:g=p-1;break}}return~o}function Toa(e,t,r,s,a){if(e&&e.length>0){let o=e.length;if(o>0){let g=s===void 0||s<0?0:s,p=a===void 0||g+a>o-1?o-1:g+a,f;for(arguments.length<=2?(f=e[g],g++):f=r;g<=p;)f=t(f,e[g],g),g++;return f}}return r}var esi=Object.prototype.hasOwnProperty;function XU(e,t){return esi.call(e,t)}function Noa(e){let t=[];for(let r in e)esi.call(e,r)&&t.push(r);return t}function Roa(){let e=new Map;return e.add=Doa,e.remove=xoa,e}function Doa(e,t){let r=this.get(e);return r!==void 0?r.push(t):this.set(e,r=[t]),r}function xoa(e,t){let r=this.get(e);r!==void 0&&(Ooa(r,t),r.length||this.delete(e))}function Xz(e){return Array.isArray(e)}function iAr(e){return Xz(e)?e:[e]}function koa(e,t){return e!==void 0&&t(e)?e:void 0}function QU(e,t){return e!==void 0&&t(e)?e:_o.fail(`Invalid cast. The supplied value ${e} did not pass the test '${_o.getFunctionName(t)}'.`)}function _Se(e){}function Goa(){return!0}function gE(e){return e}function xni(e){let t;return()=>(e&&(t=e(),e=void 0),t)}function bM(e){let t=new Map;return r=>{let s=`${typeof r}:${r}`,a=t.get(s);return a===void 0&&!t.has(s)&&(a=e(r),t.set(s,a)),a}}function HAr(e,t){return e===t}function XAr(e,t){return e===t||e!==void 0&&t!==void 0&&e.toUpperCase()===t.toUpperCase()}function Foa(e,t){return HAr(e,t)}function Zoa(e,t){return e===t?0:e===void 0?-1:t===void 0?1:er?p-r:1),y=Math.floor(t.length>r+p?r+p:t.length);a[0]=p;let B=p;for(let G=1;Gr)return;let v=s;s=a,a=v}let g=s[t.length];return g>r?void 0:g}function Woa(e,t,r){let s=e.length-t.length;return s>=0&&(r?XAr(e.slice(s),t):e.indexOf(t,s)===s)}function Poa(e,t){e[t]=e[e.length-1],e.pop()}function Ooa(e,t){return Moa(e,r=>r===t)}function Moa(e,t){for(let r=0;r{let t=0;e.currentLogLevel=2,e.isDebugging=!1;function r(Ir){return e.currentLogLevel<=Ir}e.shouldLog=r;function s(Ir,nn){e.loggingHost&&r(Ir)&&e.loggingHost.log(Ir,nn)}function a(Ir){s(3,Ir)}e.log=a,(Ir=>{function nn(Hr){s(1,Hr)}Ir.error=nn;function Cn(Hr){s(2,Hr)}Ir.warn=Cn;function Vn(Hr){s(3,Hr)}Ir.log=Vn;function Ji(Hr){s(4,Hr)}Ir.trace=Ji})(a=e.log||(e.log={}));let o={};function g(){return t}e.getAssertionLevel=g;function p(Ir){let nn=t;if(t=Ir,Ir>nn)for(let Cn of Noa(o)){let Vn=o[Cn];Vn!==void 0&&e[Cn]!==Vn.assertion&&Ir>=Vn.level&&(e[Cn]=Vn,o[Cn]=void 0)}}e.setAssertionLevel=p;function f(Ir){return t>=Ir}e.shouldAssert=f;function m(Ir,nn){return f(Ir)?!0:(o[nn]={level:Ir,assertion:e[nn]},e[nn]=_Se,!1)}function y(Ir,nn){debugger;let Cn=new Error(Ir?`Debug Failure. ${Ir}`:"Debug Failure.");throw Error.captureStackTrace&&Error.captureStackTrace(Cn,nn||y),Cn}e.fail=y;function B(Ir,nn,Cn){return y(`${nn||"Unexpected node."}\r +`}}var psa=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;function fsa(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function Isa(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var Csa=e=>!(fsa(e)||Isa(e)),msa=/[^\x20-\x7F]/u;function hsa(e){if(!e)return 0;if(!msa.test(e))return e.length;e=e.replace(psa()," ");let t=0;for(let r of e){let s=r.codePointAt(0);s<=31||s>=127&&s<=159||s>=768&&s<=879||(t+=Csa(s)?1:2)}return t}var iAr=hsa,s9=Symbol("MODE_BREAK"),KU=Symbol("MODE_FLAT"),jve=Symbol("cursor"),Xgr=Symbol("DOC_FILL_PRINTED_LENGTH");function Rni(){return{value:"",length:0,queue:[]}}function _sa(e,t){return Jgr(e,{type:"indent"},t)}function ysa(e,t,r){return t===Number.NEGATIVE_INFINITY?e.root||Rni():t<0?Jgr(e,{type:"dedent"},r):t?t.type==="root"?{...e,root:e}:Jgr(e,{type:typeof t=="string"?"stringAlign":"numberAlign",n:t},r):e}function Jgr(e,t,r){let s=t.type==="dedent"?e.queue.slice(0,-1):[...e.queue,t],a="",o=0,g=0,p=0;for(let T of s)switch(T.type){case"indent":y(),r.useTabs?f(1):m(r.tabWidth);break;case"stringAlign":y(),a+=T.n,o+=T.n.length;break;case"numberAlign":g+=1,p+=T.n;break;default:throw new Error(`Unexpected type '${T.type}'`)}return v(),{...e,value:a,length:o,queue:s};function f(T){a+=" ".repeat(T),o+=r.tabWidth*T}function m(T){a+=" ".repeat(T),o+=T}function y(){r.useTabs?B():v()}function B(){g>0&&f(g),k()}function v(){p>0&&m(p),k()}function k(){g=0,p=0}}function Ugr(e){let t=0,r=0,s=e.length;e:for(;s--;){let a=e[s];if(a===jve){r++;continue}for(let o=a.length-1;o>=0;o--){let g=a[o];if(g===" "||g===" ")t++;else{e[s]=a.slice(0,o+1);break e}}}if(t>0||r>0)for(e.length=s+1;r-- >0;)e.push(jve);return t}function pCt(e,t,r,s,a,o){if(r===Number.POSITIVE_INFINITY)return!0;let g=t.length,p=[e],f=[];for(;r>=0;){if(p.length===0){if(g===0)return!0;p.push(t[--g]);continue}let{mode:m,doc:y}=p.pop(),B=Dse(y);switch(B){case afe:f.push(y),r-=iAr(y);break;case Nse:case cfe:{let v=B===Nse?y:y.parts,k=y[Xgr]??0;for(let T=v.length-1;T>=k;T--)p.push({mode:m,doc:v[T]});break}case nSe:case iSe:case q5e:case tMe:p.push({mode:m,doc:y.contents});break;case z5e:r+=Ugr(f);break;case Rse:{if(o&&y.break)return!1;let v=y.break?s9:m,k=y.expandedStates&&v===s9?fY(!1,y.expandedStates,-1):y.contents;p.push({mode:v,doc:k});break}case Tse:{let v=(y.groupId?a[y.groupId]||KU:m)===s9?y.breakContents:y.flatContents;v&&p.push({mode:m,doc:v});break}case Oz:if(m===s9||y.hard)return!0;y.soft||(f.push(" "),r--);break;case $5e:s=!0;break;case eMe:if(s)return!1;break}}return!1}function bsa(e,t){let r={},s=t.printWidth,a=dsa(t.endOfLine),o=0,g=[{ind:Rni(),mode:s9,doc:e}],p=[],f=!1,m=[],y=0;for(wia(e);g.length>0;){let{ind:v,mode:k,doc:T}=g.pop();switch(Dse(T)){case afe:{let O=a!==` +`?Wk(!1,T,` +`,a):T;p.push(O),g.length>0&&(o+=iAr(O));break}case Nse:for(let O=T.length-1;O>=0;O--)g.push({ind:v,mode:k,doc:T[O]});break;case vCt:if(y>=2)throw new Error("There are too many 'cursor' in doc.");p.push(jve),y++;break;case nSe:g.push({ind:_sa(v,t),mode:k,doc:T.contents});break;case iSe:g.push({ind:ysa(v,T.n,t),mode:k,doc:T.contents});break;case z5e:o-=Ugr(p);break;case Rse:switch(k){case KU:if(!f){g.push({ind:v,mode:T.break?s9:KU,doc:T.contents});break}case s9:{f=!1;let O={ind:v,mode:KU,doc:T.contents},X=s-o,U=m.length>0;if(!T.break&&pCt(O,g,X,U,r))g.push(O);else if(T.expandedStates){let le=fY(!1,T.expandedStates,-1);if(T.break){g.push({ind:v,mode:s9,doc:le});break}else for(let ae=1;ae=T.expandedStates.length){g.push({ind:v,mode:s9,doc:le});break}else{let ge=T.expandedStates[ae],fe={ind:v,mode:KU,doc:ge};if(pCt(fe,g,X,U,r)){g.push(fe);break}}}else g.push({ind:v,mode:s9,doc:T.contents});break}}T.id&&(r[T.id]=fY(!1,g,-1).mode);break;case cfe:{let O=s-o,X=T[Xgr]??0,{parts:U}=T,le=U.length-X;if(le===0)break;let ae=U[X+0],ge=U[X+1],fe={ind:v,mode:KU,doc:ae},pe={ind:v,mode:s9,doc:ae},he=pCt(fe,[],O,m.length>0,r,!0);if(le===1){he?g.push(fe):g.push(pe);break}let be={ind:v,mode:KU,doc:ge},Te={ind:v,mode:s9,doc:ge};if(le===2){he?g.push(be,fe):g.push(Te,pe);break}let ke=U[X+2],x={ind:v,mode:k,doc:{...T,[Xgr]:X+2}};pCt({ind:v,mode:KU,doc:[ae,ge,ke]},[],O,m.length>0,r,!0)?g.push(x,be,fe):he?g.push(x,Te,fe):g.push(x,Te,pe);break}case Tse:case q5e:{let O=T.groupId?r[T.groupId]:k;if(O===s9){let X=T.type===Tse?T.breakContents:T.negate?T.contents:Hgr(T.contents);X&&g.push({ind:v,mode:k,doc:X})}if(O===KU){let X=T.type===Tse?T.flatContents:T.negate?Hgr(T.contents):T.contents;X&&g.push({ind:v,mode:k,doc:X})}break}case $5e:m.push({ind:v,mode:k,doc:T.contents});break;case eMe:m.length>0&&g.push({ind:v,mode:k,doc:rAr});break;case Oz:switch(k){case KU:if(T.hard)f=!0;else{T.soft||(p.push(" "),o+=1);break}case s9:if(m.length>0){g.push({ind:v,mode:k,doc:T},...m.reverse()),m.length=0;break}T.literal?v.root?(p.push(a,v.root.value),o=v.root.length):(p.push(a),o=0):(o-=Ugr(p),p.push(a+v.value),o=v.length);break}break;case tMe:g.push({ind:v,mode:k,doc:T.contents});break;case sSe:break;default:throw new CCt(T)}g.length===0&&m.length>0&&(g.push(...m.reverse()),m.length=0)}let B=p.indexOf(jve);if(B!==-1){let v=p.indexOf(jve,B+1);if(v===-1)return{formatted:p.filter(X=>X!==jve).join("")};let k=p.slice(0,B).join(""),T=p.slice(B+1,v).join(""),O=p.slice(v+1).join("");return{formatted:k+T+O,cursorNodeStart:k.length,cursorNodeText:T}}return{formatted:p.join("")}}function Esa(e,t,r){let{node:s}=e,a=[],o=e.map(()=>e.map(({index:B})=>{let v=bsa(r(),t).formatted,k=iAr(v);return a[B]=Math.max(a[B]??3,k),{text:v,width:k}},"children"),"children"),g=f(!1);if(t.proseWrap!=="never")return[hCt,g];let p=f(!0);return[hCt,fCt(Nia(p,g))];function f(B){return yni(rAr,[y(o[0],B),m(B),...o.slice(1).map(v=>y(v,B))].map(v=>`| ${v.join(" | ")} |`))}function m(B){return a.map((v,k)=>{let T=s.align[k],O=T==="center"||T==="left"?":":"-",X=T==="center"||T==="right"?":":"-",U=B?"-":"-".repeat(v-2);return`${O}${U}${X}`})}function y(B,v){return B.map(({text:k,width:T},O)=>{if(v)return k;let X=a[O]-T,U=s.align[O],le=0;U==="right"?le=X:U==="center"&&(le=Math.floor(X/2));let ae=X-le;return`${" ".repeat(le)}${k}${" ".repeat(ae)}`})}}function Bsa(e,t,r){let s=e.map(r,"children");return vsa(s)}function vsa(e){let t=[""];return function r(s){for(let a of s){let o=Dse(a);if(o===Nse){r(a);continue}let g=a,p=[];o===cfe&&([g,...p]=a.parts),t.push([t.pop(),g],...p)}}(e),tAr(t)}var pY,Ssa=class{constructor(e){Xra(this,pY),Jra(this,pY,new Set(e))}getLeadingWhitespaceCount(e){let t=wse(this,pY),r=0;for(let s=0;s=0&&t.has(e.charAt(s));s--)r++;return r}getLeadingWhitespace(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(0,t)}getTrailingWhitespace(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(e.length-t)}hasLeadingWhitespace(e){return wse(this,pY).has(e.charAt(0))}hasTrailingWhitespace(e){return wse(this,pY).has(fY(!1,e,-1))}trimStart(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(t)}trimEnd(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(0,e.length-t)}trim(e){return this.trimEnd(this.trimStart(e))}split(e,t=!1){let r=`[${BCt([...wse(this,pY)].join(""))}]+`,s=new RegExp(t?`(${r})`:r,"u");return e.split(s)}hasWhitespaceCharacter(e){let t=wse(this,pY);return Array.prototype.some.call(e,r=>t.has(r))}hasNonWhitespaceCharacter(e){let t=wse(this,pY);return Array.prototype.some.call(e,r=>!t.has(r))}isWhitespaceOnly(e){let t=wse(this,pY);return Array.prototype.every.call(e,r=>t.has(r))}};pY=new WeakMap;var wsa=Ssa,Tsa=[" ",` +`,"\f","\r"," "],Nsa=new wsa(Tsa),Yri=Nsa,Rsa=/^.$/su;function Dsa(e,t){return e=xsa(e,t),e=Gsa(e),e=Zsa(e,t),e=Lsa(e,t),e=Fsa(e),e}function xsa(e,t){return oSe(e,r=>r.type!=="text"||r.value==="*"||r.value==="_"||!Rsa.test(r.value)||r.position.end.offset-r.position.start.offset===r.value.length?r:{...r,value:t.originalText.slice(r.position.start.offset,r.position.end.offset)})}function ksa(e,t,r){return oSe(e,s=>{if(!s.children)return s;let a=s.children.reduce((o,g)=>{let p=fY(!1,o,-1);return p&&t(p,g)?o.splice(-1,1,r(p,g)):o.push(g),o},[]);return{...s,children:a}})}function Gsa(e){return ksa(e,(t,r)=>t.type==="text"&&r.type==="text",(t,r)=>({type:"text",value:t.value+r.value,position:{start:t.position.start,end:r.position.end}}))}function Fsa(e){return oSe(e,(t,r,[s])=>{if(t.type!=="text")return t;let{value:a}=t;return s.type==="paragraph"&&(r===0&&(a=Yri.trimStart(a)),r===s.children.length-1&&(a=Yri.trimEnd(a))),{type:"sentence",position:t.position,children:Tni(a)}})}function Zsa(e,t){return oSe(e,(r,s,a)=>{if(r.type==="code"){let o=/^\n?(?: {4,}|\t)/u.test(t.originalText.slice(r.position.start.offset,r.position.end.offset));if(r.isIndented=o,o)for(let g=0;g{if(a.type==="list"&&a.children.length>0){for(let p=0;p1)return!0;let p=r(o);if(p===-1)return!1;if(a.children.length===1)return p%t.tabWidth===0;let f=r(g);return p!==f?!1:p%t.tabWidth===0?!0:J5e(g,t).leadingSpaces.length>1}}var Vsa=Dsa;function Wsa(e,t){let r=[""];return e.each(()=>{let{node:s}=e,a=t();switch(s.type){case"whitespace":if(Dse(a)!==afe){r.push(a,"");break}default:r.push([r.pop(),a])}},"children"),tAr(r)}var Psa=new Set(["heading","tableCell","link","wikiLink"]),Xri=new Set("!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~");function Osa({parent:e}){if(e.usesCJSpaces===void 0){let t={" ":0,"":0},{children:r}=e;for(let s=1;st[""]}return e.usesCJSpaces}function Qsa(e,t){if(t)return!0;let{previous:r,next:s}=e;if(!r||!s)return!0;let a=r.kind,o=s.kind;return Jri(a)&&Jri(o)||a===qve&&o===Wz||o===qve&&a===Wz?!0:a===bCt||o===bCt||a===Wz&&o===Wz?!1:Xri.has(s.value[0])||Xri.has(fY(!1,r.value,-1))?!0:r.hasTrailingPunctuation||s.hasLeadingPunctuation?!1:Osa(e)}function Jri(e){return e===K5e||e===qve}function Msa(e,t,r,s){if(r!=="always"||e.hasAncestor(g=>Psa.has(g.type)))return!1;if(s)return t!=="";let{previous:a,next:o}=e;return!a||!o?!0:t===""?!1:a.kind===qve&&o.kind===Wz||o.kind===qve&&a.kind===Wz?!0:!(a.isCJ||o.isCJ)}function Uri(e,t,r,s){if(r==="preserve"&&t===` +`)return VT;let a=t===" "||t===` +`&&Qsa(e,s);return Msa(e,t,r,s)?a?hni:_ni:a?" ":""}var Hsa=new Set(["listItem","definition"]);function Ysa(e,t,r){var s,a;let{node:o}=e;if(zsa(e)){let g=[""],p=Tni(t.originalText.slice(o.position.start.offset,o.position.end.offset));for(let f of p){if(f.type==="word"){g.push([g.pop(),f.value]);continue}let m=Uri(e,f.value,t.proseWrap,!0);if(Dse(m)===afe){g.push([g.pop(),m]);continue}g.push(m,"")}return tAr(g)}switch(o.type){case"front-matter":return t.originalText.slice(o.position.start.offset,o.position.end.offset);case"root":return o.children.length===0?"":[Usa(e,t,r),VT];case"paragraph":return Bsa(e,t,r);case"sentence":return Wsa(e,r);case"word":{let g=Wk(!1,Wk(!1,o.value,"*",String.raw`\*`),new RegExp([`(^|${X5e.source})(_+)`,`(_+)(${X5e.source}|$)`].join("|"),"gu"),(m,y,B,v,k)=>Wk(!1,B?`${y}${B}`:`${v}${k}`,"_",String.raw`\_`)),p=(m,y,B)=>m.type==="sentence"&&B===0,f=(m,y,B)=>Hri(m.children[B-1]);return g!==o.value&&(e.match(void 0,p,f)||e.match(void 0,p,(m,y,B)=>m.type==="emphasis"&&B===0,f))&&(g=g.replace(/^(\\?[*_])+/u,m=>Wk(!1,m,"\\",""))),g}case"whitespace":{let{next:g}=e,p=g&&/^>|^(?:[*+-]|#{1,6}|\d+[).])$/u.test(g.value)?"never":t.proseWrap;return Uri(e,o.value,p)}case"emphasis":{let g;if(Hri(o.children[0]))g=t.originalText[o.position.start.offset];else{let{previous:p,next:f}=e;g=p?.type==="sentence"&&((s=fY(!1,p.children,-1))==null?void 0:s.type)==="word"&&!fY(!1,p.children,-1).hasTrailingPunctuation||f?.type==="sentence"&&((a=f.children[0])==null?void 0:a.type)==="word"&&!f.children[0].hasLeadingPunctuation||e.hasAncestor(m=>m.type==="emphasis")?"*":"_"}return[g,i9(e,t,r),g]}case"strong":return["**",i9(e,t,r),"**"];case"delete":return["~~",i9(e,t,r),"~~"];case"inlineCode":{let g=t.proseWrap==="preserve"?o.value:Wk(!1,o.value,` +`," "),p=kia(g,"`"),f="`".repeat(p||1),m=g.startsWith("`")||g.endsWith("`")||/^[\n ]/u.test(g)&&/[\n ]$/u.test(g)&&/[^\n ]/u.test(g)?" ":"";return[f,m,g,m,f]}case"wikiLink":{let g="";return t.proseWrap==="preserve"?g=o.value:g=Wk(!1,o.value,/[\t\n]+/gu," "),["[[",g,"]]"]}case"link":switch(t.originalText[o.position.start.offset]){case"<":{let g="mailto:";return["<",o.url.startsWith(g)&&t.originalText.slice(o.position.start.offset+1,o.position.start.offset+1+g.length)!==g?o.url.slice(g.length):o.url,">"]}case"[":return["[",i9(e,t,r),"](",Qgr(o.url,")"),ICt(o.title,t),")"];default:return t.originalText.slice(o.position.start.offset,o.position.end.offset)}case"image":return["![",o.alt||"","](",Qgr(o.url,")"),ICt(o.title,t),")"];case"blockquote":return["> ",ofe("> ",i9(e,t,r))];case"heading":return["#".repeat(o.depth)+" ",i9(e,t,r)];case"code":{if(o.isIndented){let f=" ".repeat(4);return ofe(f,[f,Kve(o.value,VT)])}let g=t.__inJsTemplate?"~":"`",p=g.repeat(Math.max(3,bni(o.value,g)+1));return[p,o.lang||"",o.meta?" "+o.meta:"",VT,Kve(Nni(o,t.originalText),VT),VT,p]}case"html":{let{parent:g,isLast:p}=e,f=g.type==="root"&&p?o.value.trimEnd():o.value,m=/^$/su.test(f);return Kve(f,m?VT:mCt(Ygr))}case"list":{let g=jri(o,e.parent),p=rsa(o,t);return i9(e,t,r,{processor(f){let m=B(),y=f.node;if(y.children.length===2&&y.children[1].type==="html"&&y.children[0].position.start.column!==y.children[1].position.start.column)return[m,Kri(f,t,r,m)];return[m,ofe(" ".repeat(m.length),Kri(f,t,r,m))];function B(){let v=o.ordered?(f.isFirst?o.start:p?1:o.start+f.index)+(g%2===0?". ":") "):g%2===0?"- ":"* ";return(o.isAligned||o.hasIndentedCodeblock)&&o.ordered?Xsa(v,t):v}}})}case"thematicBreak":{let{ancestors:g}=e,p=g.findIndex(f=>f.type==="list");return p===-1?"---":jri(g[p],g[p+1])%2===0?"***":"---"}case"linkReference":return["[",i9(e,t,r),"]",o.referenceType==="full"?Mgr(o):o.referenceType==="collapsed"?"[]":""];case"imageReference":switch(o.referenceType){case"full":return["![",o.alt||"","]",Mgr(o)];default:return["![",o.alt,"]",o.referenceType==="collapsed"?"[]":""]}case"definition":{let g=t.proseWrap==="always"?hni:" ";return fCt([Mgr(o),":",Hgr([g,Qgr(o.url),o.title===null?"":[g,ICt(o.title,t,!1)]])])}case"footnote":return["[^",i9(e,t,r),"]"];case"footnoteReference":return eni(o);case"footnoteDefinition":{let g=o.children.length===1&&o.children[0].type==="paragraph"&&(t.proseWrap==="never"||t.proseWrap==="preserve"&&o.children[0].position.start.line===o.children[0].position.end.line);return[eni(o),": ",g?i9(e,t,r):fCt([ofe(" ".repeat(4),i9(e,t,r,{processor:({isFirst:p})=>p?fCt([_ni,r()]):r()}))])]}case"table":return Esa(e,t,r);case"tableCell":return i9(e,t,r);case"break":return/\s/u.test(t.originalText[o.position.start.offset])?[" ",mCt(Ygr)]:["\\",VT];case"liquidNode":return Kve(o.value,VT);case"import":case"export":case"jsx":return o.value;case"esComment":return["{/* ",o.value," */}"];case"math":return["$$",VT,o.value?[Kve(o.value,VT),VT]:"","$$"];case"inlineMath":return t.originalText.slice(_Ct(o),yCt(o));case"tableRow":case"listItem":case"text":default:throw new Lia(o,"Markdown")}}function Kri(e,t,r,s){let{node:a}=e,o=a.checked===null?"":a.checked?"[x] ":"[ ] ";return[o,i9(e,t,r,{processor({node:g,isFirst:p}){if(p&&g.type!=="list")return ofe(" ".repeat(o.length),r());let f=" ".repeat($sa(t.tabWidth-s.length,0,3));return[f,ofe(f,r())]}})]}function Xsa(e,t){let r=s();return e+" ".repeat(r>=4?0:r);function s(){let a=e.length%t.tabWidth;return a===0?0:t.tabWidth-a}}function jri(e,t){return Jsa(e,t,r=>r.ordered===e.ordered)}function Jsa(e,t,r){let s=-1;for(let a of t.children)if(a.type===e.type&&r(a)?s++:s=-1,a===e)return s}function Usa(e,t,r){let s=[],a=null,{children:o}=e.node;for(let[g,p]of o.entries())switch(sAr(p)){case"start":a===null&&(a={index:g,offset:p.position.end.offset});break;case"end":a!==null&&(s.push({start:a,end:{index:g,offset:p.position.start.offset}}),a=null);break;default:break}return i9(e,t,r,{processor({index:g}){if(s.length>0){let p=s[0];if(g===p.start.index)return[zri(o[p.start.index]),t.originalText.slice(p.start.offset,p.end.offset),zri(o[p.end.index])];if(p.start.index{let g=a(e);g!==!1&&(o.length>0&&Ksa(e)&&(o.push(VT),(jsa(e,t)||$ri(e))&&o.push(VT),$ri(e)&&o.push(VT)),o.push(g))},"children"),o}function zri(e){if(e.type==="html")return e.value;if(e.type==="paragraph"&&Array.isArray(e.children)&&e.children.length===1&&e.children[0].type==="esComment")return["{/* ",e.children[0].value," */}"]}function sAr(e){let t;if(e.type==="html")t=e.value.match(/^$/u);else{let r;e.type==="esComment"?r=e:e.type==="paragraph"&&e.children.length===1&&e.children[0].type==="esComment"&&(r=e.children[0]),r&&(t=r.value.match(/^prettier-ignore(?:-(start|end))?$/u))}return t?t[1]||"next":!1}function Ksa({node:e,parent:t}){let r=Sni.has(e.type),s=e.type==="html"&&wni.has(t.type);return!r&&!s}function qri(e,t){return e.type==="listItem"&&(e.spread||t.originalText.charAt(e.position.end.offset-1)===` +`)}function jsa({node:e,previous:t,parent:r},s){if(qri(t,s))return!0;let a=t.type===e.type&&Hsa.has(e.type),o=r.type==="listItem"&&!qri(r,s),g=sAr(t)==="next",p=e.type==="html"&&t.type==="html"&&t.position.end.line+1===e.position.start.line,f=e.type==="html"&&r.type==="listItem"&&t.type==="paragraph"&&t.position.end.line+1===e.position.start.line;return!(a||o||g||p||f)}function $ri({node:e,previous:t}){let r=t.type==="list",s=e.type==="code"&&e.isIndented;return r&&s}function zsa(e){let t=e.findAncestor(r=>r.type==="linkReference"||r.type==="imageReference");return t&&(t.type!=="linkReference"||t.referenceType!=="full")}var qsa=(e,t)=>{for(let r of t)e=Wk(!1,e,r,encodeURIComponent(r));return e};function Qgr(e,t=[]){let r=[" ",...Array.isArray(t)?t:[t]];return new RegExp(r.map(s=>BCt(s)).join("|"),"u").test(e)?`<${qsa(e,"<>")}>`:e}function ICt(e,t,r=!0){if(!e)return"";if(r)return" "+ICt(e,t,!1);if(e=Wk(!1,e,/\\(?=["')])/gu,""),e.includes('"')&&e.includes("'")&&!e.includes(")"))return`(${e})`;let s=Fia(e,t.singleQuote);return e=Wk(!1,e,"\\","\\\\"),e=Wk(!1,e,s,`\\${s}`),`${s}${e}${s}`}function $sa(e,t,r){return Math.max(t,Math.min(e,r))}function eoa(e){return e.index>0&&sAr(e.previous)==="next"}function Mgr(e){return`[${(0,hia.default)(e.label)}]`}function eni(e){return`[^${e.label}]`}var toa={preprocess:Vsa,print:Ysa,embed:isa,massageAstNode:Xia,hasPrettierIgnore:eoa,insertPragma:Hia,getVisitorKeys:Asa},roa=toa,Dni=[{linguistLanguageId:222,name:"Markdown",type:"prose",color:"#083fa1",aliases:["md","pandoc"],aceMode:"markdown",codemirrorMode:"gfm",codemirrorMimeType:"text/x-gfm",wrap:!0,extensions:[".md",".livemd",".markdown",".mdown",".mdwn",".mkd",".mkdn",".mkdown",".ronn",".scd",".workbook"],filenames:["contents.lr","README"],tmScope:"text.md",parsers:["markdown"],vscodeLanguageIds:["markdown"]},{linguistLanguageId:222,name:"MDX",type:"prose",color:"#083fa1",aliases:["md","pandoc"],aceMode:"markdown",codemirrorMode:"gfm",codemirrorMimeType:"text/x-gfm",wrap:!0,extensions:[".mdx"],filenames:[],tmScope:"text.md",parsers:["mdx"],vscodeLanguageIds:["mdx"]}],tni={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},noa={proseWrap:tni.proseWrap,singleQuote:tni.singleQuote},xni=noa,oAr={};sni(oAr,{markdown:()=>nni,mdx:()=>Eoa,remark:()=>nni});var ioa=$ve(Ura(),1),soa=$ve(zra(),1),ooa=$ve(nia(),1),aoa=$ve(Iia(),1),coa=/^import\s/u,loa=/^export\s/u,uoa=String.raw`[a-z][a-z0-9]*(\.[a-z][a-z0-9]*)*|`,goa=/|/u,Aoa=/^\{\s*\/\*(.*)\*\/\s*\}/u,doa=` + +`,kni=e=>coa.test(e),Kgr=e=>loa.test(e),Gni=(e,t)=>{let r=t.indexOf(doa),s=t.slice(0,r);if(Kgr(s)||kni(s))return e(s)({type:Kgr(s)?"export":"import",value:s})},Fni=(e,t)=>{let r=Aoa.exec(t);if(r)return e(r[0])({type:"esComment",value:r[1].trim()})};Gni.locator=e=>Kgr(e)||kni(e)?-1:1;Fni.locator=(e,t)=>e.indexOf("{",t);var poa=function(){let{Parser:e}=this,{blockTokenizers:t,blockMethods:r,inlineTokenizers:s,inlineMethods:a}=e.prototype;t.esSyntax=Gni,s.esComment=Fni,r.splice(r.indexOf("paragraph"),0,"esSyntax"),a.splice(a.indexOf("text"),0,"esComment")},foa=function(){let e=this.Parser.prototype;e.blockMethods=["frontMatter",...e.blockMethods],e.blockTokenizers.frontMatter=t;function t(r,s){let a=nAr(s);if(a.frontMatter)return r(a.frontMatter.raw)(a.frontMatter)}t.onlyAtStart=!0},Ioa=foa;function Coa(){return e=>oSe(e,(t,r,[s])=>t.type!=="html"||goa.test(t.value)||wni.has(s.type)?t:{...t,type:"jsx"})}var moa=Coa,hoa=function(){let e=this.Parser.prototype,t=e.inlineMethods;t.splice(t.indexOf("text"),0,"liquid"),e.inlineTokenizers.liquid=r;function r(s,a){let o=a.match(/^(\{%.*?%\}|\{\{.*?\}\})/su);if(o)return s(o[0])({type:"liquidNode",value:o[0]})}r.locator=function(s,a){return s.indexOf("{",a)}},_oa=hoa,yoa=function(){let e="wikiLink",t=/^\[\[(?.+?)\]\]/su,r=this.Parser.prototype,s=r.inlineMethods;s.splice(s.indexOf("link"),0,e),r.inlineTokenizers.wikiLink=a;function a(o,g){let p=t.exec(g);if(p){let f=p.groups.linkContents.trim();return o(p[0])({type:e,value:f})}}a.locator=function(o,g){return o.indexOf("[",g)}},boa=yoa;function Zni({isMDX:e}){return t=>{let r=(0,aoa.default)().use(ooa.default,{commonmark:!0,...e&&{blocks:[uoa]}}).use(ioa.default).use(Ioa).use(soa.default).use(e?poa:rni).use(_oa).use(e?moa:rni).use(boa);return r.run(r.parse(t))}}function rni(){}var Lni={astFormat:"mdast",hasPragma:Mia,locStart:_Ct,locEnd:yCt},nni={...Lni,parse:Zni({isMDX:!1})},Eoa={...Lni,parse:Zni({isMDX:!0})},Vni={mdast:roa},Boa=Ini;var SSe={};zf(SSe,{default:()=>Bpa,parsers:()=>Uz});var tsi=Object.defineProperty,rsi=e=>{throw TypeError(e)},voa=(e,t,r)=>t in e?tsi(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,nsi=(e,t)=>{for(var r in t)tsi(e,r,{get:t[r],enumerable:!0})},rMe=(e,t,r)=>voa(e,typeof t!="symbol"?t+"":t,r),Soa=(e,t,r)=>t.has(e)||rsi("Cannot "+r),woa=(e,t,r)=>t.has(e)?rsi("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),qu=(e,t,r)=>(Soa(e,t,"access private method"),r),isi={};nsi(isi,{parsers:()=>Uz});var Uz={};nsi(Uz,{typescript:()=>Epa});var Toa=()=>()=>{},XAr=Toa,Noa=(e,t,r,s)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,s):r.global?t.replace(r,s):t.split(r).join(s)},ISe=Noa,Roa="5.7",i2=[],Doa=new Map;function uMe(e){return e!==void 0?e.length:0}function t3(e,t){if(e!==void 0)for(let r=0;r0;return!1}function UAr(e,t){return t===void 0||t.length===0?e:e===void 0||e.length===0?t:[...e,...t]}function Zoa(e,t,r=jAr){if(e===void 0||t===void 0)return e===t;if(e.length!==t.length)return!1;for(let s=0;se?.at(t):(e,t)=>{if(e!==void 0&&(t=EAr(e,t),t>1),f=r(e[p],p);switch(s(f,t)){case-1:o=p+1;break;case 0:return p;case 1:g=p-1;break}}return~o}function Hoa(e,t,r,s,a){if(e&&e.length>0){let o=e.length;if(o>0){let g=s===void 0||s<0?0:s,p=a===void 0||g+a>o-1?o-1:g+a,f;for(arguments.length<=2?(f=e[g],g++):f=r;g<=p;)f=t(f,e[g],g),g++;return f}}return r}var csi=Object.prototype.hasOwnProperty;function eK(e,t){return csi.call(e,t)}function Yoa(e){let t=[];for(let r in e)csi.call(e,r)&&t.push(r);return t}function Xoa(){let e=new Map;return e.add=Joa,e.remove=Uoa,e}function Joa(e,t){let r=this.get(e);return r!==void 0?r.push(t):this.set(e,r=[t]),r}function Uoa(e,t){let r=this.get(e);r!==void 0&&(naa(r,t),r.length||this.delete(e))}function Jz(e){return Array.isArray(e)}function lAr(e){return Jz(e)?e:[e]}function Koa(e,t){return e!==void 0&&t(e)?e:void 0}function zU(e,t){return e!==void 0&&t(e)?e:ho.fail(`Invalid cast. The supplied value ${e} did not pass the test '${ho.getFunctionName(t)}'.`)}function ESe(e){}function joa(){return!0}function dE(e){return e}function Pni(e){let t;return()=>(e&&(t=e(),e=void 0),t)}function BQ(e){let t=new Map;return r=>{let s=`${typeof r}:${r}`,a=t.get(s);return a===void 0&&!t.has(s)&&(a=e(r),t.set(s,a)),a}}function jAr(e,t){return e===t}function zAr(e,t){return e===t||e!==void 0&&t!==void 0&&e.toUpperCase()===t.toUpperCase()}function zoa(e,t){return jAr(e,t)}function qoa(e,t){return e===t?0:e===void 0?-1:t===void 0?1:er?p-r:1),y=Math.floor(t.length>r+p?r+p:t.length);a[0]=p;let B=p;for(let k=1;kr)return;let v=s;s=a,a=v}let g=s[t.length];return g>r?void 0:g}function taa(e,t,r){let s=e.length-t.length;return s>=0&&(r?zAr(e.slice(s),t):e.indexOf(t,s)===s)}function raa(e,t){e[t]=e[e.length-1],e.pop()}function naa(e,t){return iaa(e,r=>r===t)}function iaa(e,t){for(let r=0;r{let t=0;e.currentLogLevel=2,e.isDebugging=!1;function r(Ir){return e.currentLogLevel<=Ir}e.shouldLog=r;function s(Ir,nn){e.loggingHost&&r(Ir)&&e.loggingHost.log(Ir,nn)}function a(Ir){s(3,Ir)}e.log=a,(Ir=>{function nn(Yr){s(1,Yr)}Ir.error=nn;function Cn(Yr){s(2,Yr)}Ir.warn=Cn;function Vn(Yr){s(3,Yr)}Ir.log=Vn;function Ji(Yr){s(4,Yr)}Ir.trace=Ji})(a=e.log||(e.log={}));let o={};function g(){return t}e.getAssertionLevel=g;function p(Ir){let nn=t;if(t=Ir,Ir>nn)for(let Cn of Yoa(o)){let Vn=o[Cn];Vn!==void 0&&e[Cn]!==Vn.assertion&&Ir>=Vn.level&&(e[Cn]=Vn,o[Cn]=void 0)}}e.setAssertionLevel=p;function f(Ir){return t>=Ir}e.shouldAssert=f;function m(Ir,nn){return f(Ir)?!0:(o[nn]={level:Ir,assertion:e[nn]},e[nn]=ESe,!1)}function y(Ir,nn){debugger;let Cn=new Error(Ir?`Debug Failure. ${Ir}`:"Debug Failure.");throw Error.captureStackTrace&&Error.captureStackTrace(Cn,nn||y),Cn}e.fail=y;function B(Ir,nn,Cn){return y(`${nn||"Unexpected node."}\r Node ${er(Ir.kind)} was unexpected.`,Cn||B)}e.failBadSyntaxKind=B;function v(Ir,nn,Cn,Vn){Ir||(nn=nn?`False expression: ${nn}`:"False expression.",Cn&&(nn+=`\r -Verbose Debug Information: `+(typeof Cn=="string"?Cn:Cn())),y(nn,Vn||v))}e.assert=v;function G(Ir,nn,Cn,Vn,Ji){if(Ir!==nn){let Hr=Cn?Vn?`${Cn} ${Vn}`:Cn:"";y(`Expected ${Ir} === ${nn}. ${Hr}`,Ji||G)}}e.assertEqual=G;function T(Ir,nn,Cn,Vn){Ir>=nn&&y(`Expected ${Ir} < ${nn}. ${Cn||""}`,Vn||T)}e.assertLessThan=T;function O(Ir,nn,Cn){Ir>nn&&y(`Expected ${Ir} <= ${nn}`,Cn||O)}e.assertLessThanOrEqual=O;function X(Ir,nn,Cn){Ir= ${nn}`,Cn||X)}e.assertGreaterThanOrEqual=X;function U(Ir,nn,Cn){Ir==null&&y(nn,Cn||U)}e.assertIsDefined=U;function le(Ir,nn,Cn){return U(Ir,nn,Cn||le),Ir}e.checkDefined=le;function ae(Ir,nn,Cn){for(let Vn of Ir)U(Vn,nn,Cn||ae)}e.assertEachIsDefined=ae;function ge(Ir,nn,Cn){return ae(Ir,nn,Cn||ge),Ir}e.checkEachDefined=ge;function fe(Ir,nn="Illegal value:",Cn){let Vn=typeof Ir=="object"&&XU(Ir,"kind")&&XU(Ir,"pos")?"SyntaxKind: "+er(Ir.kind):JSON.stringify(Ir);return y(`${nn} ${Vn}`,Cn||fe)}e.assertNever=fe;function pe(Ir,nn,Cn,Vn){m(1,"assertEachNode")&&v(nn===void 0||MAr(Ir,nn),Cn||"Unexpected node.",()=>`Node array did not pass test '${Ue(nn)}'.`,Vn||pe)}e.assertEachNode=pe;function he(Ir,nn,Cn,Vn){m(1,"assertNode")&&v(Ir!==void 0&&(nn===void 0||nn(Ir)),Cn||"Unexpected node.",()=>`Node ${er(Ir?.kind)} did not pass test '${Ue(nn)}'.`,Vn||he)}e.assertNode=he;function be(Ir,nn,Cn,Vn){m(1,"assertNotNode")&&v(Ir===void 0||nn===void 0||!nn(Ir),Cn||"Unexpected node.",()=>`Node ${er(Ir.kind)} should not have passed test '${Ue(nn)}'.`,Vn||be)}e.assertNotNode=be;function Te(Ir,nn,Cn,Vn){m(1,"assertOptionalNode")&&v(nn===void 0||Ir===void 0||nn(Ir),Cn||"Unexpected node.",()=>`Node ${er(Ir?.kind)} did not pass test '${Ue(nn)}'.`,Vn||Te)}e.assertOptionalNode=Te;function ke(Ir,nn,Cn,Vn){m(1,"assertOptionalToken")&&v(nn===void 0||Ir===void 0||Ir.kind===nn,Cn||"Unexpected node.",()=>`Node ${er(Ir?.kind)} was not a '${er(nn)}' token.`,Vn||ke)}e.assertOptionalToken=ke;function x(Ir,nn,Cn){m(1,"assertMissingNode")&&v(Ir===void 0,nn||"Unexpected node.",()=>`Node ${er(Ir.kind)} was unexpected'.`,Cn||x)}e.assertMissingNode=x;function et(Ir){}e.type=et;function Ue(Ir){if(typeof Ir!="function")return"";if(XU(Ir,"name"))return Ir.name;{let nn=Function.prototype.toString.call(Ir),Cn=/^function\s+([\w$]+)\s*\(/.exec(nn);return Cn?Cn[1]:""}}e.getFunctionName=Ue;function Je(Ir){return`{ name: ${mYe(Ir.escapedName)}; flags: ${Or(Ir.flags)}; declarations: ${CAr(Ir.declarations,nn=>er(nn.kind))} }`}e.formatSymbol=Je;function Xe(Ir=0,nn,Cn){let Vn=Gt(nn);if(Ir===0)return Vn.length>0&&Vn[0][0]===0?Vn[0][1]:"0";if(Cn){let Ji=[],Hr=Ir;for(let[Ws,Ko]of Vn){if(Ws>Ir)break;Ws!==0&&Ws&Ir&&(Ji.push(Ko),Hr&=~Ws)}if(Hr===0)return Ji.join("|")}else for(let[Ji,Hr]of Vn)if(Ji===Ir)return Hr;return Ir.toString()}e.formatEnum=Xe;let ft=new Map;function Gt(Ir){let nn=ft.get(Ir);if(nn)return nn;let Cn=[];for(let Ji in Ir){let Hr=Ir[Ji];typeof Hr=="number"&&Cn.push([Hr,Ji])}let Vn=Eoa(Cn,(Ji,Hr)=>tsi(Ji[0],Hr[0]));return ft.set(Ir,Vn),Vn}function er(Ir){return Xe(Ir,Bp,!1)}e.formatSyntaxKind=er;function Ur(Ir){return Xe(Ir,usi,!1)}e.formatSnippetKind=Ur;function Ot(Ir){return Xe(Ir,Yz,!1)}e.formatScriptKind=Ot;function dr(Ir){return Xe(Ir,qW,!0)}e.formatNodeFlags=dr;function Ar(Ir){return Xe(Ir,ssi,!0)}e.formatNodeCheckFlags=Ar;function or(Ir){return Xe(Ir,rsi,!0)}e.formatModifierFlags=or;function Fr(Ir){return Xe(Ir,lsi,!0)}e.formatTransformFlags=Fr;function $r(Ir){return Xe(Ir,gsi,!0)}e.formatEmitFlags=$r;function Or(Ir){return Xe(Ir,isi,!0)}e.formatSymbolFlags=Or;function In(Ir){return Xe(Ir,Gk,!0)}e.formatTypeFlags=In;function Br(Ir){return Xe(Ir,asi,!0)}e.formatSignatureFlags=Br;function tr(Ir){return Xe(Ir,osi,!0)}e.formatObjectFlags=tr;function gn(Ir){return Xe(Ir,_Ar,!0)}e.formatFlowFlags=gn;function Gn(Ir){return Xe(Ir,nsi,!0)}e.formatRelationComparisonResult=Gn;function we(Ir){return Xe(Ir,CheckMode,!0)}e.formatCheckMode=we;function Zi(Ir){return Xe(Ir,SignatureCheckMode,!0)}e.formatSignatureCheckMode=Zi;function Za(Ir){return Xe(Ir,TypeFacts,!0)}e.formatTypeFacts=Za;let ka=!1,Qs;function lr(Ir){"__debugFlowFlags"in Ir||Object.defineProperties(Ir,{__tsDebuggerDisplay:{value(){let nn=this.flags&2?"FlowStart":this.flags&4?"FlowBranchLabel":this.flags&8?"FlowLoopLabel":this.flags&16?"FlowAssignment":this.flags&32?"FlowTrueCondition":this.flags&64?"FlowFalseCondition":this.flags&128?"FlowSwitchClause":this.flags&256?"FlowArrayMutation":this.flags&512?"FlowCall":this.flags&1024?"FlowReduceLabel":this.flags&1?"FlowUnreachable":"UnknownFlow",Cn=this.flags&-2048;return`${nn}${Cn?` (${gn(Cn)})`:""}`}},__debugFlowFlags:{get(){return Xe(this.flags,_Ar,!0)}},__debugToString:{value(){return Gr(this)}}})}function ga(Ir){return ka&&(typeof Object.setPrototypeOf=="function"?(Qs||(Qs=Object.create(Object.prototype),lr(Qs)),Object.setPrototypeOf(Ir,Qs)):lr(Ir)),Ir}e.attachFlowNodeDebugInfo=ga;let vi;function Qu(Ir){"__tsDebuggerDisplay"in Ir||Object.defineProperties(Ir,{__tsDebuggerDisplay:{value(nn){return nn=String(nn).replace(/(?:,[\s\w]+:[^,]+)+\]$/,"]"),`NodeArray ${nn}`}}})}function Yu(Ir){ka&&(typeof Object.setPrototypeOf=="function"?(vi||(vi=Object.create(Array.prototype),Qu(vi)),Object.setPrototypeOf(Ir,vi)):Qu(Ir))}e.attachNodeArrayDebugInfo=Yu;function YA(){if(ka)return;let Ir=new WeakMap,nn=new WeakMap;Object.defineProperties(r2.getSymbolConstructor().prototype,{__tsDebuggerDisplay:{value(){let Vn=this.flags&33554432?"TransientSymbol":"Symbol",Ji=this.flags&-33554433;return`${Vn} '${EAr(this)}'${Ji?` (${Or(Ji)})`:""}`}},__debugFlags:{get(){return Or(this.flags)}}}),Object.defineProperties(r2.getTypeConstructor().prototype,{__tsDebuggerDisplay:{value(){let Vn=this.flags&67359327?`IntrinsicType ${this.intrinsicName}${this.debugIntrinsicName?` (${this.debugIntrinsicName})`:""}`:this.flags&98304?"NullableType":this.flags&384?`LiteralType ${JSON.stringify(this.value)}`:this.flags&2048?`LiteralType ${this.value.negative?"-":""}${this.value.base10Value}n`:this.flags&8192?"UniqueESSymbolType":this.flags&32?"EnumType":this.flags&1048576?"UnionType":this.flags&2097152?"IntersectionType":this.flags&4194304?"IndexType":this.flags&8388608?"IndexedAccessType":this.flags&16777216?"ConditionalType":this.flags&33554432?"SubstitutionType":this.flags&262144?"TypeParameter":this.flags&524288?this.objectFlags&3?"InterfaceType":this.objectFlags&4?"TypeReference":this.objectFlags&8?"TupleType":this.objectFlags&16?"AnonymousType":this.objectFlags&32?"MappedType":this.objectFlags&1024?"ReverseMappedType":this.objectFlags&256?"EvolvingArrayType":"ObjectType":"Type",Ji=this.flags&524288?this.objectFlags&-1344:0;return`${Vn}${this.symbol?` '${EAr(this.symbol)}'`:""}${Ji?` (${tr(Ji)})`:""}`}},__debugFlags:{get(){return In(this.flags)}},__debugObjectFlags:{get(){return this.flags&524288?tr(this.objectFlags):""}},__debugTypeToString:{value(){let Vn=Ir.get(this);return Vn===void 0&&(Vn=this.checker.typeToString(this),Ir.set(this,Vn)),Vn}}}),Object.defineProperties(r2.getSignatureConstructor().prototype,{__debugFlags:{get(){return Br(this.flags)}},__debugSignatureToString:{value(){var Vn;return(Vn=this.checker)==null?void 0:Vn.signatureToString(this)}}});let Cn=[r2.getNodeConstructor(),r2.getIdentifierConstructor(),r2.getTokenConstructor(),r2.getSourceFileConstructor()];for(let Vn of Cn)XU(Vn.prototype,"__debugKind")||Object.defineProperties(Vn.prototype,{__tsDebuggerDisplay:{value(){return`${fSe(this)?"GeneratedIdentifier":mh(this)?`Identifier '${l9(this)}'`:Cfe(this)?`PrivateIdentifier '${l9(this)}'`:jCt(this)?`StringLiteral ${JSON.stringify(this.text.length<10?this.text:this.text.slice(10)+"...")}`:bSe(this)?`NumericLiteral ${this.text}`:iua(this)?`BigIntLiteral ${this.text}n`:soi(this)?"TypeParameterDeclaration":QCt(this)?"ParameterDeclaration":ooi(this)?"ConstructorDeclaration":RAr(this)?"GetAccessorDeclaration":HCt(this)?"SetAccessorDeclaration":Aua(this)?"CallSignatureDeclaration":dua(this)?"ConstructSignatureDeclaration":aoi(this)?"IndexSignatureDeclaration":pua(this)?"TypePredicateNode":coi(this)?"TypeReferenceNode":loi(this)?"FunctionTypeNode":uoi(this)?"ConstructorTypeNode":fua(this)?"TypeQueryNode":Iua(this)?"TypeLiteralNode":Cua(this)?"ArrayTypeNode":mua(this)?"TupleTypeNode":_ua(this)?"OptionalTypeNode":yua(this)?"RestTypeNode":bua(this)?"UnionTypeNode":Eua(this)?"IntersectionTypeNode":Bua(this)?"ConditionalTypeNode":vua(this)?"InferTypeNode":Sua(this)?"ParenthesizedTypeNode":wua(this)?"ThisTypeNode":Tua(this)?"TypeOperatorNode":Nua(this)?"IndexedAccessTypeNode":Rua(this)?"MappedTypeNode":Dua(this)?"LiteralTypeNode":hua(this)?"NamedTupleMember":xua(this)?"ImportTypeNode":er(this.kind)}${this.flags?` (${dr(this.flags)})`:""}`}},__debugKind:{get(){return er(this.kind)}},__debugNodeFlags:{get(){return dr(this.flags)}},__debugModifierFlags:{get(){return or(pla(this))}},__debugTransformFlags:{get(){return Fr(this.transformFlags)}},__debugIsParseTreeNode:{get(){return PCt(this)}},__debugEmitFlags:{get(){return $r(hSe(this))}},__debugGetText:{value(Ji){if(lSe(this))return"";let Hr=nn.get(this);if(Hr===void 0){let Ws=Raa(this),Ko=Ws&&kse(Ws);Hr=Ko?Jni(Ko,Ws,Ji):"",nn.set(this,Hr)}return Hr}}});ka=!0}e.enableDebugInfo=YA;function ud(Ir){let nn=Ir&7,Cn=nn===0?"in out":nn===3?"[bivariant]":nn===2?"in":nn===1?"out":nn===4?"[independent]":"";return Ir&8?Cn+=" (unmeasurable)":Ir&16&&(Cn+=" (unreliable)"),Cn}e.formatVariance=ud;class TA{__debugToString(){var nn;switch(this.kind){case 3:return((nn=this.debugInfo)==null?void 0:nn.call(this))||"(function mapper)";case 0:return`${this.source.__debugTypeToString()} -> ${this.target.__debugTypeToString()}`;case 1:return Dni(this.sources,this.targets||CAr(this.sources,()=>"any"),(Cn,Vn)=>`${Cn.__debugTypeToString()} -> ${typeof Vn=="string"?Vn:Vn.__debugTypeToString()}`).join(", ");case 2:return Dni(this.sources,this.targets,(Cn,Vn)=>`${Cn.__debugTypeToString()} -> ${Vn().__debugTypeToString()}`).join(", ");case 5:case 4:return`m1: ${this.mapper1.__debugToString().split(` +Verbose Debug Information: `+(typeof Cn=="string"?Cn:Cn())),y(nn,Vn||v))}e.assert=v;function k(Ir,nn,Cn,Vn,Ji){if(Ir!==nn){let Yr=Cn?Vn?`${Cn} ${Vn}`:Cn:"";y(`Expected ${Ir} === ${nn}. ${Yr}`,Ji||k)}}e.assertEqual=k;function T(Ir,nn,Cn,Vn){Ir>=nn&&y(`Expected ${Ir} < ${nn}. ${Cn||""}`,Vn||T)}e.assertLessThan=T;function O(Ir,nn,Cn){Ir>nn&&y(`Expected ${Ir} <= ${nn}`,Cn||O)}e.assertLessThanOrEqual=O;function X(Ir,nn,Cn){Ir= ${nn}`,Cn||X)}e.assertGreaterThanOrEqual=X;function U(Ir,nn,Cn){Ir==null&&y(nn,Cn||U)}e.assertIsDefined=U;function le(Ir,nn,Cn){return U(Ir,nn,Cn||le),Ir}e.checkDefined=le;function ae(Ir,nn,Cn){for(let Vn of Ir)U(Vn,nn,Cn||ae)}e.assertEachIsDefined=ae;function ge(Ir,nn,Cn){return ae(Ir,nn,Cn||ge),Ir}e.checkEachDefined=ge;function fe(Ir,nn="Illegal value:",Cn){let Vn=typeof Ir=="object"&&eK(Ir,"kind")&&eK(Ir,"pos")?"SyntaxKind: "+er(Ir.kind):JSON.stringify(Ir);return y(`${nn} ${Vn}`,Cn||fe)}e.assertNever=fe;function pe(Ir,nn,Cn,Vn){m(1,"assertEachNode")&&v(nn===void 0||JAr(Ir,nn),Cn||"Unexpected node.",()=>`Node array did not pass test '${Ue(nn)}'.`,Vn||pe)}e.assertEachNode=pe;function he(Ir,nn,Cn,Vn){m(1,"assertNode")&&v(Ir!==void 0&&(nn===void 0||nn(Ir)),Cn||"Unexpected node.",()=>`Node ${er(Ir?.kind)} did not pass test '${Ue(nn)}'.`,Vn||he)}e.assertNode=he;function be(Ir,nn,Cn,Vn){m(1,"assertNotNode")&&v(Ir===void 0||nn===void 0||!nn(Ir),Cn||"Unexpected node.",()=>`Node ${er(Ir.kind)} should not have passed test '${Ue(nn)}'.`,Vn||be)}e.assertNotNode=be;function Te(Ir,nn,Cn,Vn){m(1,"assertOptionalNode")&&v(nn===void 0||Ir===void 0||nn(Ir),Cn||"Unexpected node.",()=>`Node ${er(Ir?.kind)} did not pass test '${Ue(nn)}'.`,Vn||Te)}e.assertOptionalNode=Te;function ke(Ir,nn,Cn,Vn){m(1,"assertOptionalToken")&&v(nn===void 0||Ir===void 0||Ir.kind===nn,Cn||"Unexpected node.",()=>`Node ${er(Ir?.kind)} was not a '${er(nn)}' token.`,Vn||ke)}e.assertOptionalToken=ke;function x(Ir,nn,Cn){m(1,"assertMissingNode")&&v(Ir===void 0,nn||"Unexpected node.",()=>`Node ${er(Ir.kind)} was unexpected'.`,Cn||x)}e.assertMissingNode=x;function et(Ir){}e.type=et;function Ue(Ir){if(typeof Ir!="function")return"";if(eK(Ir,"name"))return Ir.name;{let nn=Function.prototype.toString.call(Ir),Cn=/^function\s+([\w$]+)\s*\(/.exec(nn);return Cn?Cn[1]:""}}e.getFunctionName=Ue;function Je(Ir){return`{ name: ${_Me(Ir.escapedName)}; flags: ${Or(Ir.flags)}; declarations: ${bAr(Ir.declarations,nn=>er(nn.kind))} }`}e.formatSymbol=Je;function Xe(Ir=0,nn,Cn){let Vn=Gt(nn);if(Ir===0)return Vn.length>0&&Vn[0][0]===0?Vn[0][1]:"0";if(Cn){let Ji=[],Yr=Ir;for(let[Vs,Uo]of Vn){if(Vs>Ir)break;Vs!==0&&Vs&Ir&&(Ji.push(Uo),Yr&=~Vs)}if(Yr===0)return Ji.join("|")}else for(let[Ji,Yr]of Vn)if(Ji===Ir)return Yr;return Ir.toString()}e.formatEnum=Xe;let ft=new Map;function Gt(Ir){let nn=ft.get(Ir);if(nn)return nn;let Cn=[];for(let Ji in Ir){let Yr=Ir[Ji];typeof Yr=="number"&&Cn.push([Yr,Ji])}let Vn=Woa(Cn,(Ji,Yr)=>lsi(Ji[0],Yr[0]));return ft.set(Ir,Vn),Vn}function er(Ir){return Xe(Ir,vp,!1)}e.formatSyntaxKind=er;function Ur(Ir){return Xe(Ir,msi,!1)}e.formatSnippetKind=Ur;function Ot(Ir){return Xe(Ir,Yz,!1)}e.formatScriptKind=Ot;function dr(Ir){return Xe(Ir,e3,!0)}e.formatNodeFlags=dr;function Ar(Ir){return Xe(Ir,dsi,!0)}e.formatNodeCheckFlags=Ar;function or(Ir){return Xe(Ir,usi,!0)}e.formatModifierFlags=or;function Fr(Ir){return Xe(Ir,Csi,!0)}e.formatTransformFlags=Fr;function $r(Ir){return Xe(Ir,hsi,!0)}e.formatEmitFlags=$r;function Or(Ir){return Xe(Ir,Asi,!0)}e.formatSymbolFlags=Or;function In(Ir){return Xe(Ir,Pk,!0)}e.formatTypeFlags=In;function Br(Ir){return Xe(Ir,fsi,!0)}e.formatSignatureFlags=Br;function tr(Ir){return Xe(Ir,psi,!0)}e.formatObjectFlags=tr;function gn(Ir){return Xe(Ir,vAr,!0)}e.formatFlowFlags=gn;function Gn(Ir){return Xe(Ir,gsi,!0)}e.formatRelationComparisonResult=Gn;function we(Ir){return Xe(Ir,CheckMode,!0)}e.formatCheckMode=we;function Zi(Ir){return Xe(Ir,SignatureCheckMode,!0)}e.formatSignatureCheckMode=Zi;function Fa(Ir){return Xe(Ir,TypeFacts,!0)}e.formatTypeFacts=Fa;let xa=!1,Qs;function lr(Ir){"__debugFlowFlags"in Ir||Object.defineProperties(Ir,{__tsDebuggerDisplay:{value(){let nn=this.flags&2?"FlowStart":this.flags&4?"FlowBranchLabel":this.flags&8?"FlowLoopLabel":this.flags&16?"FlowAssignment":this.flags&32?"FlowTrueCondition":this.flags&64?"FlowFalseCondition":this.flags&128?"FlowSwitchClause":this.flags&256?"FlowArrayMutation":this.flags&512?"FlowCall":this.flags&1024?"FlowReduceLabel":this.flags&1?"FlowUnreachable":"UnknownFlow",Cn=this.flags&-2048;return`${nn}${Cn?` (${gn(Cn)})`:""}`}},__debugFlowFlags:{get(){return Xe(this.flags,vAr,!0)}},__debugToString:{value(){return Gr(this)}}})}function ua(Ir){return xa&&(typeof Object.setPrototypeOf=="function"?(Qs||(Qs=Object.create(Object.prototype),lr(Qs)),Object.setPrototypeOf(Ir,Qs)):lr(Ir)),Ir}e.attachFlowNodeDebugInfo=ua;let vi;function Hu(Ir){"__tsDebuggerDisplay"in Ir||Object.defineProperties(Ir,{__tsDebuggerDisplay:{value(nn){return nn=String(nn).replace(/(?:,[\s\w]+:[^,]+)+\]$/,"]"),`NodeArray ${nn}`}}})}function Yu(Ir){xa&&(typeof Object.setPrototypeOf=="function"?(vi||(vi=Object.create(Array.prototype),Hu(vi)),Object.setPrototypeOf(Ir,vi)):Hu(Ir))}e.attachNodeArrayDebugInfo=Yu;function YA(){if(xa)return;let Ir=new WeakMap,nn=new WeakMap;Object.defineProperties(n2.getSymbolConstructor().prototype,{__tsDebuggerDisplay:{value(){let Vn=this.flags&33554432?"TransientSymbol":"Symbol",Ji=this.flags&-33554433;return`${Vn} '${TAr(this)}'${Ji?` (${Or(Ji)})`:""}`}},__debugFlags:{get(){return Or(this.flags)}}}),Object.defineProperties(n2.getTypeConstructor().prototype,{__tsDebuggerDisplay:{value(){let Vn=this.flags&67359327?`IntrinsicType ${this.intrinsicName}${this.debugIntrinsicName?` (${this.debugIntrinsicName})`:""}`:this.flags&98304?"NullableType":this.flags&384?`LiteralType ${JSON.stringify(this.value)}`:this.flags&2048?`LiteralType ${this.value.negative?"-":""}${this.value.base10Value}n`:this.flags&8192?"UniqueESSymbolType":this.flags&32?"EnumType":this.flags&1048576?"UnionType":this.flags&2097152?"IntersectionType":this.flags&4194304?"IndexType":this.flags&8388608?"IndexedAccessType":this.flags&16777216?"ConditionalType":this.flags&33554432?"SubstitutionType":this.flags&262144?"TypeParameter":this.flags&524288?this.objectFlags&3?"InterfaceType":this.objectFlags&4?"TypeReference":this.objectFlags&8?"TupleType":this.objectFlags&16?"AnonymousType":this.objectFlags&32?"MappedType":this.objectFlags&1024?"ReverseMappedType":this.objectFlags&256?"EvolvingArrayType":"ObjectType":"Type",Ji=this.flags&524288?this.objectFlags&-1344:0;return`${Vn}${this.symbol?` '${TAr(this.symbol)}'`:""}${Ji?` (${tr(Ji)})`:""}`}},__debugFlags:{get(){return In(this.flags)}},__debugObjectFlags:{get(){return this.flags&524288?tr(this.objectFlags):""}},__debugTypeToString:{value(){let Vn=Ir.get(this);return Vn===void 0&&(Vn=this.checker.typeToString(this),Ir.set(this,Vn)),Vn}}}),Object.defineProperties(n2.getSignatureConstructor().prototype,{__debugFlags:{get(){return Br(this.flags)}},__debugSignatureToString:{value(){var Vn;return(Vn=this.checker)==null?void 0:Vn.signatureToString(this)}}});let Cn=[n2.getNodeConstructor(),n2.getIdentifierConstructor(),n2.getTokenConstructor(),n2.getSourceFileConstructor()];for(let Vn of Cn)eK(Vn.prototype,"__debugKind")||Object.defineProperties(Vn.prototype,{__tsDebuggerDisplay:{value(){return`${mSe(this)?"GeneratedIdentifier":hh(this)?`Identifier '${u9(this)}'`:Efe(this)?`PrivateIdentifier '${u9(this)}'`:$Ct(this)?`StringLiteral ${JSON.stringify(this.text.length<10?this.text:this.text.slice(10)+"...")}`:vSe(this)?`NumericLiteral ${this.text}`:_ua(this)?`BigIntLiteral ${this.text}n`:doi(this)?"TypeParameterDeclaration":XCt(this)?"ParameterDeclaration":poi(this)?"ConstructorDeclaration":FAr(this)?"GetAccessorDeclaration":UCt(this)?"SetAccessorDeclaration":Tua(this)?"CallSignatureDeclaration":Nua(this)?"ConstructSignatureDeclaration":foi(this)?"IndexSignatureDeclaration":Rua(this)?"TypePredicateNode":Ioi(this)?"TypeReferenceNode":Coi(this)?"FunctionTypeNode":moi(this)?"ConstructorTypeNode":Dua(this)?"TypeQueryNode":xua(this)?"TypeLiteralNode":kua(this)?"ArrayTypeNode":Gua(this)?"TupleTypeNode":Zua(this)?"OptionalTypeNode":Lua(this)?"RestTypeNode":Vua(this)?"UnionTypeNode":Wua(this)?"IntersectionTypeNode":Pua(this)?"ConditionalTypeNode":Oua(this)?"InferTypeNode":Qua(this)?"ParenthesizedTypeNode":Mua(this)?"ThisTypeNode":Hua(this)?"TypeOperatorNode":Yua(this)?"IndexedAccessTypeNode":Xua(this)?"MappedTypeNode":Jua(this)?"LiteralTypeNode":Fua(this)?"NamedTupleMember":Uua(this)?"ImportTypeNode":er(this.kind)}${this.flags?` (${dr(this.flags)})`:""}`}},__debugKind:{get(){return er(this.kind)}},__debugNodeFlags:{get(){return dr(this.flags)}},__debugModifierFlags:{get(){return or(Rla(this))}},__debugTransformFlags:{get(){return Fr(this.transformFlags)}},__debugIsParseTreeNode:{get(){return MCt(this)}},__debugEmitFlags:{get(){return $r(bSe(this))}},__debugGetText:{value(Ji){if(ASe(this))return"";let Yr=nn.get(this);if(Yr===void 0){let Vs=Xaa(this),Uo=Vs&&Vse(Vs);Yr=Uo?tii(Uo,Vs,Ji):"",nn.set(this,Yr)}return Yr}}});xa=!0}e.enableDebugInfo=YA;function gd(Ir){let nn=Ir&7,Cn=nn===0?"in out":nn===3?"[bivariant]":nn===2?"in":nn===1?"out":nn===4?"[independent]":"";return Ir&8?Cn+=" (unmeasurable)":Ir&16&&(Cn+=" (unreliable)"),Cn}e.formatVariance=gd;class NA{__debugToString(){var nn;switch(this.kind){case 3:return((nn=this.debugInfo)==null?void 0:nn.call(this))||"(function mapper)";case 0:return`${this.source.__debugTypeToString()} -> ${this.target.__debugTypeToString()}`;case 1:return Wni(this.sources,this.targets||bAr(this.sources,()=>"any"),(Cn,Vn)=>`${Cn.__debugTypeToString()} -> ${typeof Vn=="string"?Vn:Vn.__debugTypeToString()}`).join(", ");case 2:return Wni(this.sources,this.targets,(Cn,Vn)=>`${Cn.__debugTypeToString()} -> ${Vn().__debugTypeToString()}`).join(", ");case 5:case 4:return`m1: ${this.mapper1.__debugToString().split(` `).join(` `)} m2: ${this.mapper2.__debugToString().split(` `).join(` - `)}`;default:return fe(this)}}}e.DebugTypeMapper=TA;function Ld(Ir){return e.isDebugging?Object.setPrototypeOf(Ir,TA.prototype):Ir}e.attachDebugPrototypeIfDebug=Ld;function jr(Ir){return console.log(Gr(Ir))}e.printControlFlowGraph=jr;function Gr(Ir){let nn=-1;function Cn(Rt){return Rt.id||(Rt.id=nn,nn--),Rt.id}let Vn;(Rt=>{Rt.lr="\u2500",Rt.ud="\u2502",Rt.dr="\u256D",Rt.dl="\u256E",Rt.ul="\u256F",Rt.ur="\u2570",Rt.udr="\u251C",Rt.udl="\u2524",Rt.dlr="\u252C",Rt.ulr="\u2534",Rt.udlr="\u256B"})(Vn||(Vn={}));let Ji;(Rt=>{Rt[Rt.None=0]="None",Rt[Rt.Up=1]="Up",Rt[Rt.Down=2]="Down",Rt[Rt.Left=4]="Left",Rt[Rt.Right=8]="Right",Rt[Rt.UpDown=3]="UpDown",Rt[Rt.LeftRight=12]="LeftRight",Rt[Rt.UpLeft=5]="UpLeft",Rt[Rt.UpRight=9]="UpRight",Rt[Rt.DownLeft=6]="DownLeft",Rt[Rt.DownRight=10]="DownRight",Rt[Rt.UpDownLeft=7]="UpDownLeft",Rt[Rt.UpDownRight=11]="UpDownRight",Rt[Rt.UpLeftRight=13]="UpLeftRight",Rt[Rt.DownLeftRight=14]="DownLeftRight",Rt[Rt.UpDownLeftRight=15]="UpDownLeftRight",Rt[Rt.NoChildren=16]="NoChildren"})(Ji||(Ji={}));let Hr=2032,Ws=882,Ko=Object.create(null),ai=[],pa=[],sg=$s(Ir,new Set);for(let Rt of ai)Rt.text=Lg(Rt.flowNode,Rt.circular),qo(Rt);let Fu=Na(sg),Cg=wu(Fu);return Dg(sg,0),cf();function Zu(Rt){return!!(Rt.flags&128)}function Cl(Rt){return!!(Rt.flags&12)&&!!Rt.antecedent}function wi(Rt){return!!(Rt.flags&Hr)}function ts(Rt){return!!(Rt.flags&Ws)}function $i(Rt){let kl=[];for(let Hu of Rt.edges)Hu.source===Rt&&kl.push(Hu.target);return kl}function Ga(Rt){let kl=[];for(let Hu of Rt.edges)Hu.target===Rt&&kl.push(Hu.source);return kl}function $s(Rt,kl){let Hu=Cn(Rt),us=Ko[Hu];if(us&&kl.has(Rt))return us.circular=!0,us={id:-1,flowNode:Rt,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:"circularity"},ai.push(us),us;if(kl.add(Rt),!us)if(Ko[Hu]=us={id:Hu,flowNode:Rt,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:!1},ai.push(us),Cl(Rt))for(let og of Rt.antecedent)xl(us,og,kl);else wi(Rt)&&xl(us,Rt.antecedent,kl);return kl.delete(Rt),us}function xl(Rt,kl,Hu){let us=$s(kl,Hu),og={source:Rt,target:us};pa.push(og),Rt.edges.push(og),us.edges.push(og)}function qo(Rt){if(Rt.level!==-1)return Rt.level;let kl=0;for(let Hu of Ga(Rt))kl=Math.max(kl,qo(Hu)+1);return Rt.level=kl}function Na(Rt){let kl=0;for(let Hu of $i(Rt))kl=Math.max(kl,Na(Hu));return kl+1}function wu(Rt){let kl=ei(Array(Rt),0);for(let Hu of ai)kl[Hu.level]=Math.max(kl[Hu.level],Hu.text.length);return kl}function Dg(Rt,kl){if(Rt.lane===-1){Rt.lane=kl,Rt.endLane=kl;let Hu=$i(Rt);for(let us=0;us0&&kl++;let og=Hu[us];Dg(og,kl),og.endLane>Rt.endLane&&(kl=og.endLane)}Rt.endLane=kl}}function hl(Rt){if(Rt&2)return"Start";if(Rt&4)return"Branch";if(Rt&8)return"Loop";if(Rt&16)return"Assignment";if(Rt&32)return"True";if(Rt&64)return"False";if(Rt&128)return"SwitchClause";if(Rt&256)return"ArrayMutation";if(Rt&512)return"Call";if(Rt&1024)return"ReduceLabel";if(Rt&1)return"Unreachable";throw new Error}function au(Rt){let kl=kse(Rt);return Jni(kl,Rt,!1)}function Lg(Rt,kl){let Hu=hl(Rt.flags);if(kl&&(Hu=`${Hu}#${Cn(Rt)}`),Zu(Rt)){let us=[],{switchStatement:og,clauseStart:on,clauseEnd:Bo}=Rt.node;for(let $g=on;$gBo.lane)+1,Hu=ei(Array(kl),""),us=Cg.map(()=>Array(kl)),og=Cg.map(()=>ei(Array(kl),0));for(let Bo of ai){us[Bo.level][Bo.lane]=Bo;let $g=$i(Bo);for(let HA=0;HA<$g.length;HA++){let No=$g[HA],Hl=8;No.lane===Bo.lane&&(Hl|=4),HA>0&&(Hl|=1),HA<$g.length-1&&(Hl|=2),og[Bo.level][No.lane]|=Hl}$g.length===0&&(og[Bo.level][Bo.lane]|=16);let cA=Ga(Bo);for(let HA=0;HA0&&(Hl|=1),HA0?og[Bo-1][$g]:0,HA=$g>0?og[Bo][$g-1]:0,No=og[Bo][$g];No||(cA&8&&(No|=12),HA&2&&(No|=3),og[Bo][$g]=No)}for(let Bo=0;Bo{Dt.lr="\u2500",Dt.ud="\u2502",Dt.dr="\u256D",Dt.dl="\u256E",Dt.ul="\u256F",Dt.ur="\u2570",Dt.udr="\u251C",Dt.udl="\u2524",Dt.dlr="\u252C",Dt.ulr="\u2534",Dt.udlr="\u256B"})(Vn||(Vn={}));let Ji;(Dt=>{Dt[Dt.None=0]="None",Dt[Dt.Up=1]="Up",Dt[Dt.Down=2]="Down",Dt[Dt.Left=4]="Left",Dt[Dt.Right=8]="Right",Dt[Dt.UpDown=3]="UpDown",Dt[Dt.LeftRight=12]="LeftRight",Dt[Dt.UpLeft=5]="UpLeft",Dt[Dt.UpRight=9]="UpRight",Dt[Dt.DownLeft=6]="DownLeft",Dt[Dt.DownRight=10]="DownRight",Dt[Dt.UpDownLeft=7]="UpDownLeft",Dt[Dt.UpDownRight=11]="UpDownRight",Dt[Dt.UpLeftRight=13]="UpLeftRight",Dt[Dt.DownLeftRight=14]="DownLeftRight",Dt[Dt.UpDownLeftRight=15]="UpDownLeftRight",Dt[Dt.NoChildren=16]="NoChildren"})(Ji||(Ji={}));let Yr=2032,Vs=882,Uo=Object.create(null),ai=[],da=[],og=qs(Ir,new Set);for(let Dt of ai)Dt.text=Vg(Dt.flowNode,Dt.circular),zo(Dt);let Zu=Ta(og),mg=Tu(Zu);return xg(og,0),lf();function Lu(Dt){return!!(Dt.flags&128)}function ml(Dt){return!!(Dt.flags&12)&&!!Dt.antecedent}function wi(Dt){return!!(Dt.flags&Yr)}function ts(Dt){return!!(Dt.flags&Vs)}function $i(Dt){let Gl=[];for(let Xu of Dt.edges)Xu.source===Dt&&Gl.push(Xu.target);return Gl}function ka(Dt){let Gl=[];for(let Xu of Dt.edges)Xu.target===Dt&&Gl.push(Xu.source);return Gl}function qs(Dt,Gl){let Xu=Cn(Dt),us=Uo[Xu];if(us&&Gl.has(Dt))return us.circular=!0,us={id:-1,flowNode:Dt,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:"circularity"},ai.push(us),us;if(Gl.add(Dt),!us)if(Uo[Xu]=us={id:Xu,flowNode:Dt,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:!1},ai.push(us),ml(Dt))for(let ag of Dt.antecedent)kl(us,ag,Gl);else wi(Dt)&&kl(us,Dt.antecedent,Gl);return Gl.delete(Dt),us}function kl(Dt,Gl,Xu){let us=qs(Gl,Xu),ag={source:Dt,target:us};da.push(ag),Dt.edges.push(ag),us.edges.push(ag)}function zo(Dt){if(Dt.level!==-1)return Dt.level;let Gl=0;for(let Xu of ka(Dt))Gl=Math.max(Gl,zo(Xu)+1);return Dt.level=Gl}function Ta(Dt){let Gl=0;for(let Xu of $i(Dt))Gl=Math.max(Gl,Ta(Xu));return Gl+1}function Tu(Dt){let Gl=ei(Array(Dt),0);for(let Xu of ai)Gl[Xu.level]=Math.max(Gl[Xu.level],Xu.text.length);return Gl}function xg(Dt,Gl){if(Dt.lane===-1){Dt.lane=Gl,Dt.endLane=Gl;let Xu=$i(Dt);for(let us=0;us0&&Gl++;let ag=Xu[us];xg(ag,Gl),ag.endLane>Dt.endLane&&(Gl=ag.endLane)}Dt.endLane=Gl}}function _l(Dt){if(Dt&2)return"Start";if(Dt&4)return"Branch";if(Dt&8)return"Loop";if(Dt&16)return"Assignment";if(Dt&32)return"True";if(Dt&64)return"False";if(Dt&128)return"SwitchClause";if(Dt&256)return"ArrayMutation";if(Dt&512)return"Call";if(Dt&1024)return"ReduceLabel";if(Dt&1)return"Unreachable";throw new Error}function cu(Dt){let Gl=Vse(Dt);return tii(Gl,Dt,!1)}function Vg(Dt,Gl){let Xu=_l(Dt.flags);if(Gl&&(Xu=`${Xu}#${Cn(Dt)}`),Lu(Dt)){let us=[],{switchStatement:ag,clauseStart:on,clauseEnd:Eo}=Dt.node;for(let eA=on;eAEo.lane)+1,Xu=ei(Array(Gl),""),us=mg.map(()=>Array(Gl)),ag=mg.map(()=>ei(Array(Gl),0));for(let Eo of ai){us[Eo.level][Eo.lane]=Eo;let eA=$i(Eo);for(let XA=0;XA0&&(Xl|=1),XA0&&(Xl|=1),XA0?ag[Eo-1][eA]:0,XA=eA>0?ag[Eo][eA-1]:0,To=ag[Eo][eA];To||(lA&8&&(To|=12),XA&2&&(To|=3),ag[Eo][eA]=To)}for(let Eo=0;Eo0?Rt.repeat(kl):"";let Hu="";for(;Hu.length{},Qoa=()=>{},RCt,Bp=(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.NotEmittedTypeElement=354]="NotEmittedTypeElement",e[e.PartiallyEmittedExpression=355]="PartiallyEmittedExpression",e[e.CommaListExpression=356]="CommaListExpression",e[e.SyntheticReferenceExpression=357]="SyntheticReferenceExpression",e[e.Count=358]="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))(Bp||{}),qW=(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))(qW||{}),rsi=(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))(rsi||{}),nsi=(e=>(e[e.None=0]="None",e[e.Succeeded=1]="Succeeded",e[e.Failed=2]="Failed",e[e.ReportsUnmeasurable=8]="ReportsUnmeasurable",e[e.ReportsUnreliable=16]="ReportsUnreliable",e[e.ReportsMask=24]="ReportsMask",e[e.ComplexityOverflow=32]="ComplexityOverflow",e[e.StackDepthOverflow=64]="StackDepthOverflow",e[e.Overflow=96]="Overflow",e))(nsi||{}),_Ar=(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))(_Ar||{}),isi=(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))(isi||{}),ssi=(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.PartiallyTypeChecked=8388608]="PartiallyTypeChecked",e[e.LazyFlags=539358128]="LazyFlags",e))(ssi||{}),Gk=(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))(Gk||{}),osi=(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))(osi||{}),asi=(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))(asi||{}),Yz=(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))(Yz||{}),JAr=(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.ES2024=11]="ES2024",e[e.ESNext=99]="ESNext",e[e.JSON=100]="JSON",e[e.Latest=99]="Latest",e))(JAr||{}),csi=(e=>(e[e.Standard=0]="Standard",e[e.JSX=1]="JSX",e))(csi||{}),EM=(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))(EM||{}),lsi=(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))(lsi||{}),usi=(e=>(e[e.TabStop=0]="TabStop",e[e.Placeholder=1]="Placeholder",e[e.Choice=2]="Choice",e[e.Variable=3]="Variable",e))(usi||{}),gsi=(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))(gsi||{}),tYe={Classes:2,ForOf:2,Generators:2,Iteration:2,SpreadElements:2,RestElements:2,TaggedTemplates:2,DestructuringAssignment:2,BindingPatterns:2,ArrowFunctions:2,BlockScopedVariables:2,ObjectAssign:2,RegularExpressionFlagsUnicode:2,RegularExpressionFlagsSticky:2,Exponentiation:3,AsyncFunctions:4,ForAwaitOf:5,AsyncGenerators:5,AsyncIteration:5,ObjectSpreadRest:5,RegularExpressionFlagsDotAll:5,BindinglessCatch:6,BigInt:7,NullishCoalesce:7,OptionalChaining:7,LogicalAssignment:8,TopLevelAwait:9,ClassFields:9,PrivateNamesAndClassStaticBlocks:9,RegularExpressionFlagsHasIndices:9,ShebangComments:10,RegularExpressionFlagsUnicodeSets:11,UsingAndAwaitUsing:99,ClassAndClassElementDecorators:99},Asi={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}},uYe=(e=>(e[e.ParseAll=0]="ParseAll",e[e.ParseNone=1]="ParseNone",e[e.ParseForTypeErrors=2]="ParseForTypeErrors",e[e.ParseForTypeInfo=3]="ParseForTypeInfo",e))(uYe||{}),Ife="/",Yoa="\\",Gni="://",Hoa=/\\/g;function Xoa(e){return e===47||e===92}function Joa(e,t){return e.length>t.length&&Woa(e,t)}function UAr(e){return e.length>0&&Xoa(e.charCodeAt(e.length-1))}function Fni(e){return e>=97&&e<=122||e>=65&&e<=90}function Uoa(e,t){let r=e.charCodeAt(t);if(r===58)return t+1;if(r===37&&e.charCodeAt(t+1)===51){let s=e.charCodeAt(t+2);if(s===97||s===65)return t+3}return-1}function Koa(e){if(!e)return 0;let t=e.charCodeAt(0);if(t===47||t===92){if(e.charCodeAt(1)!==t)return 1;let s=e.indexOf(t===47?Ife:Yoa,2);return s<0?e.length:s+1}if(Fni(t)&&e.charCodeAt(1)===58){let s=e.charCodeAt(2);if(s===47||s===92)return 3;if(e.length===2)return 2}let r=e.indexOf(Gni);if(r!==-1){let s=r+Gni.length,a=e.indexOf(Ife,s);if(a!==-1){let o=e.slice(0,r),g=e.slice(s,a);if(o==="file"&&(g===""||g==="localhost")&&Fni(e.charCodeAt(a+1))){let p=Uoa(e,a+2);if(p!==-1){if(e.charCodeAt(p)===47)return~(p+1);if(p===e.length)return~p}}return~(a+1)}return~e.length}return 0}function LCt(e){let t=Koa(e);return t<0?~t:t}function dsi(e,t,r){if(e=VCt(e),LCt(e)===e.length)return"";e=fsi(e);let s=e.slice(Math.max(LCt(e),e.lastIndexOf(Ife)+1)),a=t!==void 0&&r!==void 0?psi(s,t,r):void 0;return a?s.slice(0,s.length-a.length):s}function Zni(e,t,r){if(ZCt(t,".")||(t="."+t),e.length>=t.length&&e.charCodeAt(e.length-t.length)===46){let s=e.slice(e.length-t.length);if(r(s,t))return s}}function joa(e,t,r){if(typeof t=="string")return Zni(e,t,r)||"";for(let s of t){let a=Zni(e,s,r);if(a)return a}return""}function psi(e,t,r){if(t)return joa(fsi(e),t,r?XAr:Foa);let s=dsi(e),a=s.lastIndexOf(".");return a>=0?s.substring(a):""}function zoa(e,t){let r=e.substring(0,t),s=e.substring(t).split(Ife);return s.length&&!gfe(s)&&s.pop(),[r,...s]}function qoa(e,t=""){return e=taa(t,e),zoa(e,LCt(e))}function $oa(e,t){return e.length===0?"":(e[0]&&KAr(e[0]))+e.slice(1,t).join(Ife)}function VCt(e){return e.includes("\\")?e.replace(Hoa,Ife):e}function eaa(e){if(!mR(e))return[];let t=[e[0]];for(let r=1;r1){if(t[t.length-1]!==".."){t.pop();continue}}else if(t[0])continue}t.push(s)}}return t}function taa(e,...t){e&&(e=VCt(e));for(let r of t)r&&(r=VCt(r),!e||LCt(r)!==0?e=r:e=KAr(e)+r);return e}function raa(e){if(e=VCt(e),!Lni.test(e))return e;let t=e.replace(/\/\.\//g,"/").replace(/^\.\//,"");if(t!==e&&(e=t,!Lni.test(e)))return e;let r=$oa(eaa(qoa(e)));return r&&UAr(e)?KAr(r):r}function fsi(e){return UAr(e)?e.substr(0,e.length-1):e}function KAr(e){return UAr(e)?e:e+Ife}var Lni=/\/\/|(?:^|\/)\.\.?(?:$|\/)/;function q(e,t,r,s,a,o,g){return{code:e,category:t,key:r,message:s,reportsUnnecessary:a,elidedInCompatabilityPyramid:o,reportsDeprecated:g}}var Ni={Unterminated_string_literal:q(1002,1,"Unterminated_string_literal_1002","Unterminated string literal."),Identifier_expected:q(1003,1,"Identifier_expected_1003","Identifier expected."),_0_expected:q(1005,1,"_0_expected_1005","'{0}' expected."),A_file_cannot_have_a_reference_to_itself:q(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:q(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:q(1009,1,"Trailing_comma_not_allowed_1009","Trailing comma not allowed."),Asterisk_Slash_expected:q(1010,1,"Asterisk_Slash_expected_1010","'*/' expected."),An_element_access_expression_should_take_an_argument:q(1011,1,"An_element_access_expression_should_take_an_argument_1011","An element access expression should take an argument."),Unexpected_token:q(1012,1,"Unexpected_token_1012","Unexpected token."),A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(1025,1,"An_index_signature_cannot_have_a_trailing_comma_1025","An index signature cannot have a trailing comma."),Accessibility_modifier_already_seen:q(1028,1,"Accessibility_modifier_already_seen_1028","Accessibility modifier already seen."),_0_modifier_must_precede_1_modifier:q(1029,1,"_0_modifier_must_precede_1_modifier_1029","'{0}' modifier must precede '{1}' modifier."),_0_modifier_already_seen:q(1030,1,"_0_modifier_already_seen_1030","'{0}' modifier already seen."),_0_modifier_cannot_appear_on_class_elements_of_this_kind:q(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:q(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:q(1035,1,"Only_ambient_modules_can_use_quoted_names_1035","Only ambient modules can use quoted names."),Statements_are_not_allowed_in_ambient_contexts:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(1047,1,"A_rest_parameter_cannot_be_optional_1047","A rest parameter cannot be optional."),A_rest_parameter_cannot_have_an_initializer:q(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:q(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:q(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:q(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:q(1053,1,"A_set_accessor_cannot_have_rest_parameter_1053","A 'set' accessor cannot have rest parameter."),A_get_accessor_cannot_have_parameters:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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 type. Did you mean to write 'Promise<{0}>'?"),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type:q(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 type."),In_ambient_enum_declarations_member_initializer_must_be_constant_expression:q(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:q(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:q(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:q(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:q(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:q(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:q(1084,1,"Invalid_reference_directive_syntax_1084","Invalid 'reference' directive syntax."),_0_modifier_cannot_appear_on_a_constructor_declaration:q(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:q(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:q(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:q(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:q(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:q(1094,1,"An_accessor_cannot_have_type_parameters_1094","An accessor cannot have type parameters."),A_set_accessor_cannot_have_a_return_type_annotation:q(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:q(1096,1,"An_index_signature_must_have_exactly_one_parameter_1096","An index signature must have exactly one parameter."),_0_list_cannot_be_empty:q(1097,1,"_0_list_cannot_be_empty_1097","'{0}' list cannot be empty."),Type_parameter_list_cannot_be_empty:q(1098,1,"Type_parameter_list_cannot_be_empty_1098","Type parameter list cannot be empty."),Type_argument_list_cannot_be_empty:q(1099,1,"Type_argument_list_cannot_be_empty_1099","Type argument list cannot be empty."),Invalid_use_of_0_in_strict_mode:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(1109,1,"Expression_expected_1109","Expression expected."),Type_expected:q(1110,1,"Type_expected_1110","Type expected."),Private_field_0_must_be_declared_in_an_enclosing_class:q(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:q(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:q(1114,1,"Duplicate_label_0_1114","Duplicate label '{0}'."),A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement:q(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:q(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:q(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:q(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:q(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:q(1120,1,"An_export_assignment_cannot_have_modifiers_1120","An export assignment cannot have modifiers."),Octal_literals_are_not_allowed_Use_the_syntax_0:q(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:q(1123,1,"Variable_declaration_list_cannot_be_empty_1123","Variable declaration list cannot be empty."),Digit_expected:q(1124,1,"Digit_expected_1124","Digit expected."),Hexadecimal_digit_expected:q(1125,1,"Hexadecimal_digit_expected_1125","Hexadecimal digit expected."),Unexpected_end_of_text:q(1126,1,"Unexpected_end_of_text_1126","Unexpected end of text."),Invalid_character:q(1127,1,"Invalid_character_1127","Invalid character."),Declaration_or_statement_expected:q(1128,1,"Declaration_or_statement_expected_1128","Declaration or statement expected."),Statement_expected:q(1129,1,"Statement_expected_1129","Statement expected."),case_or_default_expected:q(1130,1,"case_or_default_expected_1130","'case' or 'default' expected."),Property_or_signature_expected:q(1131,1,"Property_or_signature_expected_1131","Property or signature expected."),Enum_member_expected:q(1132,1,"Enum_member_expected_1132","Enum member expected."),Variable_declaration_expected:q(1134,1,"Variable_declaration_expected_1134","Variable declaration expected."),Argument_expression_expected:q(1135,1,"Argument_expression_expected_1135","Argument expression expected."),Property_assignment_expected:q(1136,1,"Property_assignment_expected_1136","Property assignment expected."),Expression_or_comma_expected:q(1137,1,"Expression_or_comma_expected_1137","Expression or comma expected."),Parameter_declaration_expected:q(1138,1,"Parameter_declaration_expected_1138","Parameter declaration expected."),Type_parameter_declaration_expected:q(1139,1,"Type_parameter_declaration_expected_1139","Type parameter declaration expected."),Type_argument_expected:q(1140,1,"Type_argument_expected_1140","Type argument expected."),String_literal_expected:q(1141,1,"String_literal_expected_1141","String literal expected."),Line_break_not_permitted_here:q(1142,1,"Line_break_not_permitted_here_1142","Line break not permitted here."),or_expected:q(1144,1,"or_expected_1144","'{' or ';' expected."),or_JSX_element_expected:q(1145,1,"or_JSX_element_expected_1145","'{' or JSX element expected."),Declaration_expected:q(1146,1,"Declaration_expected_1146","Declaration expected."),Import_declarations_in_a_namespace_cannot_reference_a_module:q(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:q(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:q(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:q(1155,1,"_0_declarations_must_be_initialized_1155","'{0}' declarations must be initialized."),_0_declarations_can_only_be_declared_inside_a_block:q(1156,1,"_0_declarations_can_only_be_declared_inside_a_block_1156","'{0}' declarations can only be declared inside a block."),Unterminated_template_literal:q(1160,1,"Unterminated_template_literal_1160","Unterminated template literal."),Unterminated_regular_expression_literal:q(1161,1,"Unterminated_regular_expression_literal_1161","Unterminated regular expression literal."),An_object_member_cannot_be_declared_optional:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(1172,1,"extends_clause_already_seen_1172","'extends' clause already seen."),extends_clause_must_precede_implements_clause:q(1173,1,"extends_clause_must_precede_implements_clause_1173","'extends' clause must precede 'implements' clause."),Classes_can_only_extend_a_single_class:q(1174,1,"Classes_can_only_extend_a_single_class_1174","Classes can only extend a single class."),implements_clause_already_seen:q(1175,1,"implements_clause_already_seen_1175","'implements' clause already seen."),Interface_declaration_cannot_have_implements_clause:q(1176,1,"Interface_declaration_cannot_have_implements_clause_1176","Interface declaration cannot have 'implements' clause."),Binary_digit_expected:q(1177,1,"Binary_digit_expected_1177","Binary digit expected."),Octal_digit_expected:q(1178,1,"Octal_digit_expected_1178","Octal digit expected."),Unexpected_token_expected:q(1179,1,"Unexpected_token_expected_1179","Unexpected token. '{' expected."),Property_destructuring_pattern_expected:q(1180,1,"Property_destructuring_pattern_expected_1180","Property destructuring pattern expected."),Array_element_destructuring_pattern_expected:q(1181,1,"Array_element_destructuring_pattern_expected_1181","Array element destructuring pattern expected."),A_destructuring_declaration_must_have_an_initializer:q(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:q(1183,1,"An_implementation_cannot_be_declared_in_ambient_contexts_1183","An implementation cannot be declared in ambient contexts."),Modifiers_cannot_appear_here:q(1184,1,"Modifiers_cannot_appear_here_1184","Modifiers cannot appear here."),Merge_conflict_marker_encountered:q(1185,1,"Merge_conflict_marker_encountered_1185","Merge conflict marker encountered."),A_rest_element_cannot_have_an_initializer:q(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:q(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:q(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:q(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:q(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:q(1191,1,"An_import_declaration_cannot_have_modifiers_1191","An import declaration cannot have modifiers."),Module_0_has_no_default_export:q(1192,1,"Module_0_has_no_default_export_1192","Module '{0}' has no default export."),An_export_declaration_cannot_have_modifiers:q(1193,1,"An_export_declaration_cannot_have_modifiers_1193","An export declaration cannot have modifiers."),Export_declarations_are_not_permitted_in_a_namespace:q(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:q(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:q(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:q(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:q(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:q(1199,1,"Unterminated_Unicode_escape_sequence_1199","Unterminated Unicode escape sequence."),Line_terminator_not_permitted_before_arrow:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(1223,1,"_0_tag_already_specified_1223","'{0}' tag already specified."),Signature_0_must_be_a_type_predicate:q(1224,1,"Signature_0_must_be_a_type_predicate_1224","Signature '{0}' must be a type predicate."),Cannot_find_parameter_0:q(1225,1,"Cannot_find_parameter_0_1225","Cannot find parameter '{0}'."),Type_predicate_0_is_not_assignable_to_1:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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 }'."),ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve:q(1293,1,"ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve_1293","ESM syntax is not allowed in a CommonJS module when 'module' is set to 'preserve'."),with_statements_are_not_allowed_in_an_async_function_block:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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_nodenext_or_preserve:q(1324,1,"Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_nodene_1324","Dynamic imports only support a second argument when the '--module' option is set to 'esnext', 'node16', 'nodenext', or 'preserve'."),Argument_of_dynamic_import_cannot_be_spread_element:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(1348,1,"Non_simple_parameter_declared_here_1348","Non-simple parameter declared here."),use_strict_directive_used_here:q(1349,1,"use_strict_directive_used_here_1349","'use strict' directive used here."),Print_the_final_configuration_instead_of_building:q(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:q(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:q(1352,1,"A_bigint_literal_cannot_use_exponential_notation_1352","A bigint literal cannot use exponential notation."),A_bigint_literal_must_be_an_integer:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(1364,3,"Convert_to_type_only_export_1364","Convert to type-only export"),Convert_all_re_exported_types_to_type_only_exports:q(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:q(1366,3,"Split_into_two_separate_import_declarations_1366","Split into two separate import declarations"),Split_all_invalid_type_only_imports:q(1367,3,"Split_all_invalid_type_only_imports_1367","Split all invalid type-only imports"),Class_constructor_may_not_be_a_generator:q(1368,1,"Class_constructor_may_not_be_a_generator_1368","Class constructor may not be a generator."),Did_you_mean_0:q(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:q(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:q(1376,3,"_0_was_imported_here_1376","'{0}' was imported here."),_0_was_exported_here:q(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:q(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:q(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:q(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:q(1381,1,"Unexpected_token_Did_you_mean_or_rbrace_1381","Unexpected token. Did you mean `{'}'}` or `}`?"),Unexpected_token_Did_you_mean_or_gt:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(1392,1,"An_import_alias_cannot_use_import_type_1392","An import alias cannot use 'import type'"),Imported_via_0_from_file_1:q(1393,3,"Imported_via_0_from_file_1_1393","Imported via {0} from file '{1}'"),Imported_via_0_from_file_1_with_packageId_2:q(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:q(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:q(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:q(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:q(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:q(1399,3,"File_is_included_via_import_here_1399","File is included via import here."),Referenced_via_0_from_file_1:q(1400,3,"Referenced_via_0_from_file_1_1400","Referenced via '{0}' from file '{1}'"),File_is_included_via_reference_here:q(1401,3,"File_is_included_via_reference_here_1401","File is included via reference here."),Type_library_referenced_via_0_from_file_1:q(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:q(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:q(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:q(1405,3,"Library_referenced_via_0_from_file_1_1405","Library referenced via '{0}' from file '{1}'"),File_is_included_via_library_reference_here:q(1406,3,"File_is_included_via_library_reference_here_1406","File is included via library reference here."),Matched_by_include_pattern_0_in_1:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(1422,3,"Library_0_specified_in_compilerOptions_1422","Library '{0}' specified in compilerOptions"),File_is_library_specified_here:q(1423,3,"File_is_library_specified_here_1423","File is library specified here."),Default_library:q(1424,3,"Default_library_1424","Default library"),Default_library_for_target_0:q(1425,3,"Default_library_for_target_0_1425","Default library for target '{0}'"),File_is_default_library_for_target_specified_here:q(1426,3,"File_is_default_library_for_target_specified_here_1426","File is default library for target specified here."),Root_file_specified_for_compilation:q(1427,3,"Root_file_specified_for_compilation_1427","Root file specified for compilation"),File_is_output_of_project_reference_source_0:q(1428,3,"File_is_output_of_project_reference_source_0_1428","File is output of project reference source '{0}'"),File_redirects_to_file_0:q(1429,3,"File_redirects_to_file_0_1429","File redirects to file '{0}'"),The_file_is_in_the_program_because_Colon:q(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:q(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:q(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:q(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:q(1434,1,"Unexpected_keyword_or_identifier_1434","Unexpected keyword or identifier."),Unknown_keyword_or_identifier_Did_you_mean_0:q(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:q(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:q(1437,1,"Namespace_must_be_given_a_name_1437","Namespace must be given a name."),Interface_must_be_given_a_name:q(1438,1,"Interface_must_be_given_a_name_1438","Interface must be given a name."),Type_alias_must_be_given_a_name:q(1439,1,"Type_alias_must_be_given_a_name_1439","Type alias must be given a name."),Variable_declaration_not_allowed_at_this_location:q(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:q(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:q(1442,1,"Expected_for_property_initializer_1442","Expected '=' for property initializer."),Module_declaration_names_may_only_use_or_quoted_strings:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(1486,1,"Decorator_used_before_export_here_1486","Decorator used before 'export' here."),Octal_escape_sequences_are_not_allowed_Use_the_syntax_0:q(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:q(1488,1,"Escape_sequence_0_is_not_allowed_1488","Escape sequence '{0}' is not allowed."),Decimals_with_leading_zeros_are_not_allowed:q(1489,1,"Decimals_with_leading_zeros_are_not_allowed_1489","Decimals with leading zeros are not allowed."),File_appears_to_be_binary:q(1490,1,"File_appears_to_be_binary_1490","File appears to be binary."),_0_modifier_cannot_appear_on_a_using_declaration:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(1498,1,"Invalid_syntax_in_decorator_1498","Invalid syntax in decorator."),Unknown_regular_expression_flag:q(1499,1,"Unknown_regular_expression_flag_1499","Unknown regular expression flag."),Duplicate_regular_expression_flag:q(1500,1,"Duplicate_regular_expression_flag_1500","Duplicate regular expression flag."),This_regular_expression_flag_is_only_available_when_targeting_0_or_later:q(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:q(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:q(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:q(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:q(1505,1,"Incomplete_quantifier_Digit_expected_1505","Incomplete quantifier. Digit expected."),Numbers_out_of_order_in_quantifier:q(1506,1,"Numbers_out_of_order_in_quantifier_1506","Numbers out of order in quantifier."),There_is_nothing_available_for_repetition:q(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:q(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:q(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:q(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:q(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:q(1512,1,"c_must_be_followed_by_an_ASCII_letter_1512","'\\c' must be followed by an ASCII letter."),Undetermined_character_escape:q(1513,1,"Undetermined_character_escape_1513","Undetermined character escape."),Expected_a_capturing_group_name:q(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:q(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:q(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:q(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:q(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:q(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:q(1520,1,"Expected_a_class_set_operand_1520","Expected a class set operand."),q_must_be_followed_by_string_alternatives_enclosed_in_braces:q(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:q(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:q(1523,1,"Expected_a_Unicode_property_name_1523","Expected a Unicode property name."),Unknown_Unicode_property_name:q(1524,1,"Unknown_Unicode_property_name_1524","Unknown Unicode property name."),Expected_a_Unicode_property_value:q(1525,1,"Expected_a_Unicode_property_value_1525","Expected a Unicode property value."),Unknown_Unicode_property_value:q(1526,1,"Unknown_Unicode_property_value_1526","Unknown Unicode property value."),Expected_a_Unicode_property_name_or_value:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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."),Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set:q(1538,1,"Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_se_1538","Unicode escape sequences are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set."),A_bigint_literal_cannot_be_used_as_a_property_name:q(1539,1,"A_bigint_literal_cannot_be_used_as_a_property_name_1539","A 'bigint' literal cannot be used as a property name."),A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_keyword_instead:q(1540,2,"A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_key_1540","A 'namespace' declaration should not be declared using the 'module' keyword. Please use the 'namespace' keyword instead.",void 0,void 0,!0),Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:q(1541,1,"Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribut_1541","Type-only import of an ECMAScript module from a CommonJS module must have a 'resolution-mode' attribute."),Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:q(1542,1,"Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute_1542","Type import of an ECMAScript module from a CommonJS module must have a 'resolution-mode' attribute."),Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_module_is_set_to_0:q(1543,1,"Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_mod_1543",`Importing a JSON file into an ECMAScript module requires a 'type: "json"' import attribute when 'module' is set to '{0}'.`),Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0:q(1544,1,"Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0_1544","Named imports from a JSON file into an ECMAScript module are not allowed when 'module' is set to '{0}'."),The_types_of_0_are_incompatible_between_these_types:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2211,3,"Add_extends_constraint_2211","Add `extends` constraint."),Add_extends_constraint_to_all_type_parameters:q(2212,3,"Add_extends_constraint_to_all_type_parameters_2212","Add `extends` constraint to all type parameters"),Duplicate_identifier_0:q(2300,1,"Duplicate_identifier_0_2300","Duplicate identifier '{0}'."),Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:q(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:q(2302,1,"Static_members_cannot_reference_class_type_parameters_2302","Static members cannot reference class type parameters."),Circular_definition_of_import_alias_0:q(2303,1,"Circular_definition_of_import_alias_0_2303","Circular definition of import alias '{0}'."),Cannot_find_name_0:q(2304,1,"Cannot_find_name_0_2304","Cannot find name '{0}'."),Module_0_has_no_exported_member_1:q(2305,1,"Module_0_has_no_exported_member_1_2305","Module '{0}' has no exported member '{1}'."),File_0_is_not_a_module:q(2306,1,"File_0_is_not_a_module_2306","File '{0}' is not a module."),Cannot_find_module_0_or_its_corresponding_type_declarations:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2314,1,"Generic_type_0_requires_1_type_argument_s_2314","Generic type '{0}' requires {1} type argument(s)."),Type_0_is_not_generic:q(2315,1,"Type_0_is_not_generic_2315","Type '{0}' is not generic."),Global_type_0_must_be_a_class_or_interface_type:q(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:q(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:q(2318,1,"Cannot_find_global_type_0_2318","Cannot find global type '{0}'."),Named_property_0_of_types_1_and_2_are_not_identical:q(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:q(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:q(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:q(2322,1,"Type_0_is_not_assignable_to_type_1_2322","Type '{0}' is not assignable to type '{1}'."),Cannot_redeclare_exported_variable_0:q(2323,1,"Cannot_redeclare_exported_variable_0_2323","Cannot redeclare exported variable '{0}'."),Property_0_is_missing_in_type_1:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2349,1,"This_expression_is_not_callable_2349","This expression is not callable."),Only_a_void_function_can_be_called_with_the_new_keyword:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2372,1,"Parameter_0_cannot_reference_itself_2372","Parameter '{0}' cannot reference itself."),Parameter_0_cannot_reference_identifier_1_declared_after_it:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2386,1,"Overload_signatures_must_all_be_optional_or_required_2386","Overload signatures must all be optional or required."),Function_overload_must_be_static:q(2387,1,"Function_overload_must_be_static_2387","Function overload must be static."),Function_overload_must_not_be_static:q(2388,1,"Function_overload_must_not_be_static_2388","Function overload must not be static."),Function_implementation_name_must_be_0:q(2389,1,"Function_implementation_name_must_be_0_2389","Function implementation name must be '{0}'."),Constructor_implementation_is_missing:q(2390,1,"Constructor_implementation_is_missing_2390","Constructor implementation is missing."),Function_implementation_is_missing_or_not_immediately_following_the_declaration:q(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:q(2392,1,"Multiple_constructor_implementations_are_not_allowed_2392","Multiple constructor implementations are not allowed."),Duplicate_function_implementation:q(2393,1,"Duplicate_function_implementation_2393","Duplicate function implementation."),This_overload_signature_is_not_compatible_with_its_implementation_signature:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2414,1,"Class_name_cannot_be_0_2414","Class name cannot be '{0}'."),Class_0_incorrectly_extends_base_class_1:q(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:q(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:q(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:q(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:q(2419,1,"Types_of_construct_signatures_are_incompatible_2419","Types of construct signatures are incompatible."),Class_0_incorrectly_implements_interface_1:q(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:q(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:q(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:q(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:q(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:q(2427,1,"Interface_name_cannot_be_0_2427","Interface name cannot be '{0}'."),All_declarations_of_0_must_have_identical_type_parameters:q(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:q(2430,1,"Interface_0_incorrectly_extends_interface_1_2430","Interface '{0}' incorrectly extends interface '{1}'."),Enum_name_cannot_be_0:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2449,1,"Class_0_used_before_its_declaration_2449","Class '{0}' used before its declaration."),Enum_0_used_before_its_declaration:q(2450,1,"Enum_0_used_before_its_declaration_2450","Enum '{0}' used before its declaration."),Cannot_redeclare_block_scoped_variable_0:q(2451,1,"Cannot_redeclare_block_scoped_variable_0_2451","Cannot redeclare block-scoped variable '{0}'."),An_enum_member_cannot_have_a_numeric_name:q(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:q(2454,1,"Variable_0_is_used_before_being_assigned_2454","Variable '{0}' is used before being assigned."),Type_alias_0_circularly_references_itself:q(2456,1,"Type_alias_0_circularly_references_itself_2456","Type alias '{0}' circularly references itself."),Type_alias_name_cannot_be_0:q(2457,1,"Type_alias_name_cannot_be_0_2457","Type alias name cannot be '{0}'."),An_AMD_module_cannot_have_multiple_name_assignments:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2468,1,"Cannot_find_global_value_0_2468","Cannot find global value '{0}'."),The_0_operator_cannot_be_applied_to_type_symbol:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2503,1,"Cannot_find_namespace_0_2503","Cannot find namespace '{0}'."),Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2524,1,"await_expressions_cannot_be_used_in_a_parameter_initializer_2524","'await' expressions cannot be used in a parameter initializer."),A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface:q(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:q(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:q(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:q(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:q(2530,1,"Property_0_is_incompatible_with_index_signature_2530","Property '{0}' is incompatible with index signature."),Object_is_possibly_null:q(2531,1,"Object_is_possibly_null_2531","Object is possibly 'null'."),Object_is_possibly_undefined:q(2532,1,"Object_is_possibly_undefined_2532","Object is possibly 'undefined'."),Object_is_possibly_null_or_undefined:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2554,1,"Expected_0_arguments_but_got_1_2554","Expected {0} arguments, but got {1}."),Expected_at_least_0_arguments_but_got_1:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2571,1,"Object_is_of_type_unknown_2571","Object is of type 'unknown'."),A_rest_element_type_must_be_an_array_type:q(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:q(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:q(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:q(2577,1,"Return_type_annotation_circularly_references_itself_2577","Return type annotation circularly references itself."),Unused_ts_expect_error_directive:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2708,1,"Cannot_use_namespace_0_as_a_value_2708","Cannot use namespace '{0}' as a value."),Cannot_use_namespace_0_as_a_type:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2728,3,"_0_is_declared_here_2728","'{0}' is declared here."),Property_0_is_used_before_its_initialization:q(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:q(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:q(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:q(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:q(2733,1,"Property_0_was_also_declared_here_2733","Property '{0}' was also declared here."),Are_you_missing_a_semicolon:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2750,1,"The_implementation_signature_is_declared_here_2750","The implementation signature is declared here."),Circularity_originates_in_type_at_this_location:q(2751,1,"Circularity_originates_in_type_at_this_location_2751","Circularity originates in type at this location."),The_first_export_default_is_here:q(2752,1,"The_first_export_default_is_here_2752","The first export default is here."),Another_export_default_is_here:q(2753,1,"Another_export_default_is_here_2753","Another export default is here."),super_may_not_use_type_arguments:q(2754,1,"super_may_not_use_type_arguments_2754","'super' may not use type arguments."),No_constituent_of_type_0_is_callable:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2769,1,"No_overload_matches_this_call_2769","No overload matches this call."),The_last_overload_gave_the_following_error:q(2770,1,"The_last_overload_gave_the_following_error_2770","The last overload gave the following error."),The_last_overload_is_declared_here:q(2771,1,"The_last_overload_is_declared_here_2771","The last overload is declared here."),Overload_0_of_1_2_gave_the_following_error:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2785,1,"This_spread_always_overwrites_this_property_2785","This spread always overwrites this property."),_0_cannot_be_used_as_a_JSX_component:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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."),Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish:q(2869,1,"Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish_2869","Right operand of ?? is unreachable because the left operand is never nullish."),This_binary_expression_is_never_nullish_Are_you_missing_parentheses:q(2870,1,"This_binary_expression_is_never_nullish_Are_you_missing_parentheses_2870","This binary expression is never nullish. Are you missing parentheses?"),This_expression_is_always_nullish:q(2871,1,"This_expression_is_always_nullish_2871","This expression is always nullish."),This_kind_of_expression_is_always_truthy:q(2872,1,"This_kind_of_expression_is_always_truthy_2872","This kind of expression is always truthy."),This_kind_of_expression_is_always_falsy:q(2873,1,"This_kind_of_expression_is_always_falsy_2873","This kind of expression is always falsy."),This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found:q(2874,1,"This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found_2874","This JSX tag requires '{0}' to be in scope, but it could not be found."),This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_for_the_appropriate_package_installed:q(2875,1,"This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_fo_2875","This JSX tag requires the module path '{0}' to exist, but none could be found. Make sure you have types for the appropriate package installed."),This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolves_to_0:q(2876,1,"This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolv_2876",'This relative import path is unsafe to rewrite because it looks like a file name, but actually resolves to "{0}".'),This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_during_emit_because_it_is_not_a_relative_path:q(2877,1,"This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_duri_2877","This import uses a '{0}' extension to resolve to an input TypeScript file, but will not be rewritten during emit because it is not a relative path."),This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_between_the_projects_output_files_is_not_the_same_as_the_relative_path_between_its_input_files:q(2878,1,"This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_b_2878","This import path is unsafe to rewrite because it resolves to another project, and the relative path between the projects' output files is not the same as the relative path between its input files."),Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found:q(2879,1,"Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found_2879","Using JSX fragments requires fragment factory '{0}' to be in scope, but it could not be found."),Import_declaration_0_is_using_private_name_1:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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_anonymous_class_type_may_not_be_private_or_protected:q(4094,1,"Property_0_of_exported_anonymous_class_type_may_not_be_private_or_protected_4094","Property '{0}' of exported anonymous class type 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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(4109,1,"Type_arguments_for_0_circularly_reference_themselves_4109","Type arguments for '{0}' circularly reference themselves."),Tuple_type_arguments_circularly_reference_themselves:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(5012,1,"Cannot_read_file_0_Colon_1_5012","Cannot read file '{0}': {1}."),Unknown_compiler_option_0:q(5023,1,"Unknown_compiler_option_0_5023","Unknown compiler option '{0}'."),Compiler_option_0_requires_a_value_of_type_1:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(5072,1,"Unknown_build_option_0_5072","Unknown build option '{0}'."),Build_option_0_requires_a_value_of_type_1:q(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:q(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:q(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:q(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:q(5077,1,"Unknown_build_option_0_Did_you_mean_1_5077","Unknown build option '{0}'. Did you mean '{1}'?"),Unknown_watch_option_0:q(5078,1,"Unknown_watch_option_0_5078","Unknown watch option '{0}'."),Unknown_watch_option_0_Did_you_mean_1:q(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:q(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:q(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:q(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:q(5083,1,"Cannot_read_file_0_5083","Cannot read file '{0}'."),A_tuple_member_cannot_be_both_optional_and_rest:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(5103,1,"Invalid_value_for_ignoreDeprecations_5103","Invalid value for '--ignoreDeprecations'."),Option_0_is_redundant_and_cannot_be_specified_with_option_1:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6001,3,"Concatenate_and_emit_output_to_single_file_6001","Concatenate and emit output to single file."),Generates_corresponding_d_ts_file:q(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:q(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:q(6005,3,"Watch_input_files_6005","Watch input files."),Redirect_output_structure_to_the_directory:q(6006,3,"Redirect_output_structure_to_the_directory_6006","Redirect output structure to the directory."),Do_not_erase_const_enum_declarations_in_generated_code:q(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:q(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:q(6009,3,"Do_not_emit_comments_to_output_6009","Do not emit comments to output."),Do_not_emit_outputs:q(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:q(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:q(6012,3,"Skip_type_checking_of_declaration_files_6012","Skip type checking of declaration files."),Do_not_resolve_the_real_path_of_symlinks:q(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:q(6014,3,"Only_emit_d_ts_declaration_files_6014","Only emit '.d.ts' declaration files."),Specify_ECMAScript_target_version:q(6015,3,"Specify_ECMAScript_target_version_6015","Specify ECMAScript target version."),Specify_module_code_generation:q(6016,3,"Specify_module_code_generation_6016","Specify module code generation."),Print_this_message:q(6017,3,"Print_this_message_6017","Print this message."),Print_the_compiler_s_version:q(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:q(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:q(6023,3,"Syntax_Colon_0_6023","Syntax: {0}"),options:q(6024,3,"options_6024","options"),file:q(6025,3,"file_6025","file"),Examples_Colon_0:q(6026,3,"Examples_Colon_0_6026","Examples: {0}"),Options_Colon:q(6027,3,"Options_Colon_6027","Options:"),Version_0:q(6029,3,"Version_0_6029","Version {0}"),Insert_command_line_options_and_files_from_a_file:q(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:q(6031,3,"Starting_compilation_in_watch_mode_6031","Starting compilation in watch mode..."),File_change_detected_Starting_incremental_compilation:q(6032,3,"File_change_detected_Starting_incremental_compilation_6032","File change detected. Starting incremental compilation..."),KIND:q(6034,3,"KIND_6034","KIND"),FILE:q(6035,3,"FILE_6035","FILE"),VERSION:q(6036,3,"VERSION_6036","VERSION"),LOCATION:q(6037,3,"LOCATION_6037","LOCATION"),DIRECTORY:q(6038,3,"DIRECTORY_6038","DIRECTORY"),STRATEGY:q(6039,3,"STRATEGY_6039","STRATEGY"),FILE_OR_DIRECTORY:q(6040,3,"FILE_OR_DIRECTORY_6040","FILE OR DIRECTORY"),Errors_Files:q(6041,3,"Errors_Files_6041","Errors Files"),Generates_corresponding_map_file:q(6043,3,"Generates_corresponding_map_file_6043","Generates corresponding '.map' file."),Compiler_option_0_expects_an_argument:q(6044,1,"Compiler_option_0_expects_an_argument_6044","Compiler option '{0}' expects an argument."),Unterminated_quoted_string_in_response_file_0:q(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:q(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:q(6048,1,"Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1_6048","Locale must be of the form or -. For example '{0}' or '{1}'."),Unable_to_open_file_0:q(6050,1,"Unable_to_open_file_0_6050","Unable to open file '{0}'."),Corrupted_locale_file_0:q(6051,1,"Corrupted_locale_file_0_6051","Corrupted locale file {0}."),Raise_error_on_expressions_and_declarations_with_an_implied_any_type:q(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:q(6053,1,"File_0_not_found_6053","File '{0}' not found."),File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1:q(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:q(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:q(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:q(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:q(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:q(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:q(6061,3,"NEWLINE_6061","NEWLINE"),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line:q(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:q(6065,3,"Enables_experimental_support_for_ES7_decorators_6065","Enables experimental support for ES7 decorators."),Enables_experimental_support_for_emitting_type_metadata_for_decorators:q(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:q(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:q(6071,3,"Successfully_created_a_tsconfig_json_file_6071","Successfully created a tsconfig.json file."),Suppress_excess_property_checks_for_object_literals:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6080,3,"Specify_JSX_code_generation_6080","Specify JSX code generation."),Only_amd_and_system_modules_are_supported_alongside_0:q(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:q(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:q(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:q(6085,3,"Enable_tracing_of_the_name_resolution_process_6085","Enable tracing of the name resolution process."),Resolving_module_0_from_1:q(6086,3,"Resolving_module_0_from_1_6086","======== Resolving module '{0}' from '{1}'. ========"),Explicitly_specified_module_resolution_kind_Colon_0:q(6087,3,"Explicitly_specified_module_resolution_kind_Colon_0_6087","Explicitly specified module resolution kind: '{0}'."),Module_resolution_kind_is_not_specified_using_0:q(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:q(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:q(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:q(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:q(6092,3,"Module_name_0_matched_pattern_1_6092","Module name '{0}', matched pattern '{1}'."),Trying_substitution_0_candidate_module_location_Colon_1:q(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:q(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:q(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:q(6096,3,"File_0_does_not_exist_6096","File '{0}' does not exist."),File_0_exists_use_it_as_a_name_resolution_result:q(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:q(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:q(6099,3,"Found_package_json_at_0_6099","Found 'package.json' at '{0}'."),package_json_does_not_have_a_0_field:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6110,3,"Trying_other_entries_in_rootDirs_6110","Trying other entries in 'rootDirs'."),Module_resolution_using_rootDirs_has_failed:q(6111,3,"Module_resolution_using_rootDirs_has_failed_6111","Module resolution using 'rootDirs' has failed."),Do_not_emit_use_strict_directives_in_module_output:q(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:q(6113,3,"Enable_strict_null_checks_6113","Enable strict null checks."),Unknown_option_excludes_Did_you_mean_exclude:q(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:q(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:q(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:q(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:q(6120,3,"Type_reference_directive_0_was_not_resolved_6120","======== Type reference directive '{0}' was not resolved. ========"),Resolving_with_primary_search_path_0:q(6121,3,"Resolving_with_primary_search_path_0_6121","Resolving with primary search path '{0}'."),Root_directory_cannot_be_determined_skipping_primary_search_paths:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6134,3,"Report_errors_on_unused_locals_6134","Report errors on unused locals."),Report_errors_on_unused_parameters:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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}'."),Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h:q(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:q(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:q(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:q(6149,3,"Show_diagnostic_information_6149","Show diagnostic information."),Show_verbose_diagnostic_information:q(6150,3,"Show_verbose_diagnostic_information_6150","Show verbose diagnostic information."),Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6162,3,"Disable_size_limitations_on_JavaScript_projects_6162","Disable size limitations on JavaScript projects."),The_character_set_of_the_input_files:q(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:q(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:q(6165,3,"Do_not_truncate_error_messages_6165","Do not truncate error messages."),Output_directory_for_generated_declaration_files:q(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:q(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:q(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:q(6169,3,"Show_all_compiler_options_6169","Show all compiler options."),Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file:q(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:q(6171,3,"Command_line_Options_6171","Command-line Options"),Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5:q(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:q(6180,3,"Enable_all_strict_type_checking_options_6180","Enable all strict type-checking options."),Scoped_package_detected_looking_in_0:q(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:q(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:q(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:q(6186,3,"Enable_strict_checking_of_function_types_6186","Enable strict checking of function types."),Enable_strict_checking_of_property_initialization_in_classes:q(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:q(6188,1,"Numeric_separators_are_not_allowed_here_6188","Numeric separators are not allowed here."),Multiple_consecutive_numeric_separators_are_not_permitted:q(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:q(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:q(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:q(6193,3,"Found_1_error_Watching_for_file_changes_6193","Found 1 error. Watching for file changes."),Found_0_errors_Watching_for_file_changes:q(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:q(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:q(6196,1,"_0_is_declared_but_never_used_6196","'{0}' is declared but never used.",!0),Include_modules_imported_with_json_extension:q(6197,3,"Include_modules_imported_with_json_extension_6197","Include modules imported with '.json' extension"),All_destructured_elements_are_unused:q(6198,1,"All_destructured_elements_are_unused_6198","All destructured elements are unused.",!0),All_variables_are_unused:q(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:q(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:q(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:q(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:q(6203,3,"_0_was_also_declared_here_6203","'{0}' was also declared here."),and_here:q(6204,3,"and_here_6204","and here."),All_type_parameters_are_unused:q(6205,1,"All_type_parameters_are_unused_6205","All type parameters are unused."),package_json_has_a_typesVersions_field_with_version_specific_path_mappings:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6215,3,"Using_compiler_options_of_project_reference_redirect_0_6215","Using compiler options of project reference redirect '{0}'."),Found_1_error:q(6216,3,"Found_1_error_6216","Found 1 error."),Found_0_errors:q(6217,3,"Found_0_errors_6217","Found {0} errors."),Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2:q(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:q(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:q(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:q(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:q(6222,3,"Emit_class_fields_with_Define_instead_of_Set_6222","Emit class fields with Define instead of Set."),Generates_a_CPU_profile:q(6223,3,"Generates_a_CPU_profile_6223","Generates a CPU profile."),Disable_solution_searching_for_this_project:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6235,3,"Disable_loading_referenced_projects_6235","Disable loading referenced projects."),Arguments_for_the_rest_parameter_0_were_not_provided:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6243,3,"Interpret_optional_property_types_as_written_rather_than_adding_undefined_6243","Interpret optional property types as written, rather than adding 'undefined'."),Modules:q(6244,3,"Modules_6244","Modules"),File_Management:q(6245,3,"File_Management_6245","File Management"),Emit:q(6246,3,"Emit_6246","Emit"),JavaScript_Support:q(6247,3,"JavaScript_Support_6247","JavaScript Support"),Type_Checking:q(6248,3,"Type_Checking_6248","Type Checking"),Editor_Support:q(6249,3,"Editor_Support_6249","Editor Support"),Watch_and_Build_Modes:q(6250,3,"Watch_and_Build_Modes_6250","Watch and Build Modes"),Compiler_Diagnostics:q(6251,3,"Compiler_Diagnostics_6251","Compiler Diagnostics"),Interop_Constraints:q(6252,3,"Interop_Constraints_6252","Interop Constraints"),Backwards_Compatibility:q(6253,3,"Backwards_Compatibility_6253","Backwards Compatibility"),Language_and_Environment:q(6254,3,"Language_and_Environment_6254","Language and Environment"),Projects:q(6255,3,"Projects_6255","Projects"),Output_Formatting:q(6256,3,"Output_Formatting_6256","Output Formatting"),Completeness:q(6257,3,"Completeness_6257","Completeness"),_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file:q(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:q(6259,3,"Found_1_error_in_0_6259","Found 1 error in {0}"),Found_0_errors_in_the_same_file_starting_at_Colon_1:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6281,3,"package_json_has_a_peerDependencies_field_6281","'package.json' has a 'peerDependencies' field."),Found_peerDependency_0_with_1_version:q(6282,3,"Found_peerDependency_0_with_1_version_6282","Found peerDependency '{0}' with '{1}' version."),Failed_to_find_peerDependency_0:q(6283,3,"Failed_to_find_peerDependency_0_6283","Failed to find peerDependency '{0}'."),Enable_project_compilation:q(6302,3,"Enable_project_compilation_6302","Enable project compilation"),Composite_projects_may_not_disable_declaration_emit:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6357,3,"A_non_dry_build_would_build_project_0_6357","A non-dry build would build project '{0}'"),Building_project_0:q(6358,3,"Building_project_0_6358","Building project '{0}'..."),Updating_output_timestamps_of_project_0:q(6359,3,"Updating_output_timestamps_of_project_0_6359","Updating output timestamps of project '{0}'..."),Project_0_is_up_to_date:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6370,1,"Options_0_and_1_cannot_be_combined_6370","Options '{0}' and '{1}' cannot be combined."),Updating_unchanged_output_timestamps_of_project_0:q(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:q(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:q(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:q(6379,1,"Composite_projects_may_not_disable_incremental_compilation_6379","Composite projects may not disable incremental compilation."),Specify_file_to_store_incremental_compilation_information:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6402,3,"Resolving_in_0_mode_with_conditions_1_6402","Resolving in {0} mode with conditions {1}."),Matched_0_condition_1:q(6403,3,"Matched_0_condition_1_6403","Matched '{0}' condition '{1}'."),Using_0_subpath_1_with_target_2:q(6404,3,"Using_0_subpath_1_with_target_2_6404","Using '{0}' subpath '{1}' with target '{2}'."),Saw_non_matching_condition_0:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6413,3,"Entering_conditional_exports_6413","Entering conditional exports."),Resolved_under_condition_0:q(6414,3,"Resolved_under_condition_0_6414","Resolved under condition '{0}'."),Failed_to_resolve_under_condition_0:q(6415,3,"Failed_to_resolve_under_condition_0_6415","Failed to resolve under condition '{0}'."),Exiting_conditional_exports:q(6416,3,"Exiting_conditional_exports_6416","Exiting conditional exports."),Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0:q(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:q(6418,3,"Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0_6418","Searching all ancestor node_modules directories for fallback extensions: {0}."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors:q(6419,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors_6419","Project '{0}' is out of date because buildinfo file '{1}' indicates that program needs to report errors."),Project_0_is_out_of_date_because_1:q(6420,3,"Project_0_is_out_of_date_because_1_6420","Project '{0}' is out of date because {1}."),Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_in_output_files:q(6421,3,"Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_i_6421","Rewrite '.ts', '.tsx', '.mts', and '.cts' file extensions in relative import paths to their JavaScript equivalent in output files."),The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6602,3,"Allow_accessing_UMD_globals_from_modules_6602","Allow accessing UMD globals from modules."),Disable_error_reporting_for_unreachable_code:q(6603,3,"Disable_error_reporting_for_unreachable_code_6603","Disable error reporting for unreachable code."),Disable_error_reporting_for_unused_labels:q(6604,3,"Disable_error_reporting_for_unused_labels_6604","Disable error reporting for unused labels."),Ensure_use_strict_is_always_emitted:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6614,3,"Create_sourcemaps_for_d_ts_files_6614","Create sourcemaps for d.ts files."),Output_compiler_performance_information_after_building:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6627,3,"Filters_results_from_the_include_option_6627","Filters results from the `include` option."),Remove_a_list_of_directories_from_the_watch_process:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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."),Skip_building_downstream_projects_on_error_in_upstream_project:q(6640,3,"Skip_building_downstream_projects_on_error_in_upstream_project_6640","Skip building downstream projects on error in upstream project."),Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6659,3,"Set_the_newline_character_for_emitting_files_6659","Set the newline character for emitting files."),Disable_emitting_files_from_a_compilation:q(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:q(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:q(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:q(6663,3,"Disable_truncating_types_in_error_messages_6663","Disable truncating types in error messages."),Enable_error_reporting_for_fallthrough_cases_in_switch_statements:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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 ''s from expanding the number of files TypeScript should add to a project."),Disable_strict_checking_of_generic_signatures_in_function_types:q(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:q(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:q(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:q(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:q(6677,3,"Deprecated_setting_Use_outFile_instead_6677","Deprecated setting. Use 'outFile' instead."),Specify_an_output_folder_for_all_emitted_files:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6688,3,"Disable_emitting_comments_6688","Disable emitting comments."),Enable_importing_json_files:q(6689,3,"Enable_importing_json_files_6689","Enable importing .json files."),Specify_the_root_folder_within_your_source_files:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6712,3,"Emit_ECMAScript_standard_compliant_class_fields_6712","Emit ECMAScript-standard-compliant class fields."),Enable_verbose_logging:q(6713,3,"Enable_verbose_logging_6713","Enable verbose logging."),Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality:q(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:q(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:q(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:q(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:q(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."),Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any:q(6720,3,"Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any_6720","Built-in iterators are instantiated with a 'TReturn' type of 'undefined' instead of 'any'."),Default_catch_clause_variables_as_unknown_instead_of_any:q(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:q(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:q(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)."),Check_side_effect_imports:q(6806,3,"Check_side_effect_imports_6806","Check side effect imports."),This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2:q(6807,1,"This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2_6807","This operation can be simplified. This shift is identical to `{0} {1} {2}`."),one_of_Colon:q(6900,3,"one_of_Colon_6900","one of:"),one_or_more_Colon:q(6901,3,"one_or_more_Colon_6901","one or more:"),type_Colon:q(6902,3,"type_Colon_6902","type:"),default_Colon:q(6903,3,"default_Colon_6903","default:"),module_system_or_esModuleInterop:q(6904,3,"module_system_or_esModuleInterop_6904",'module === "system" or esModuleInterop'),false_unless_strict_is_set:q(6905,3,"false_unless_strict_is_set_6905","`false`, unless `strict` is set"),false_unless_composite_is_set:q(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:q(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:q(6908,3,"if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk_6908",'`[]` if `files` is specified, otherwise `["**/*"]`'),true_if_composite_false_otherwise:q(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:q(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:q(6911,3,"Computed_from_the_list_of_input_files_6911","Computed from the list of input files"),Platform_specific:q(6912,3,"Platform_specific_6912","Platform specific"),You_can_learn_about_all_of_the_compiler_options_at_0:q(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:q(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:q(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:q(6916,3,"COMMON_COMMANDS_6916","COMMON COMMANDS"),ALL_COMPILER_OPTIONS:q(6917,3,"ALL_COMPILER_OPTIONS_6917","ALL COMPILER OPTIONS"),WATCH_OPTIONS:q(6918,3,"WATCH_OPTIONS_6918","WATCH OPTIONS"),BUILD_OPTIONS:q(6919,3,"BUILD_OPTIONS_6919","BUILD OPTIONS"),COMMON_COMPILER_OPTIONS:q(6920,3,"COMMON_COMPILER_OPTIONS_6920","COMMON COMPILER OPTIONS"),COMMAND_LINE_FLAGS:q(6921,3,"COMMAND_LINE_FLAGS_6921","COMMAND LINE FLAGS"),tsc_Colon_The_TypeScript_Compiler:q(6922,3,"tsc_Colon_The_TypeScript_Compiler_6922","tsc: The TypeScript Compiler"),Compiles_the_current_project_tsconfig_json_in_the_working_directory:q(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:q(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:q(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:q(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:q(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:q(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:q(6929,3,"Compiles_the_current_project_with_additional_settings_6929","Compiles the current project, with additional settings."),true_for_ES2022_and_above_including_ESNext:q(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:q(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:q(7005,1,"Variable_0_implicitly_has_an_1_type_7005","Variable '{0}' implicitly has an '{1}' type."),Parameter_0_implicitly_has_an_1_type:q(7006,1,"Parameter_0_implicitly_has_an_1_type_7006","Parameter '{0}' implicitly has an '{1}' type."),Member_0_implicitly_has_an_1_type:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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_Consider_supplying_a_return_type_annotation:q(7025,1,"Generator_implicitly_has_yield_type_0_Consider_supplying_a_return_type_annotation_7025","Generator implicitly has yield type '{0}'. Consider supplying a return type annotation."),JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists:q(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:q(7027,1,"Unreachable_code_detected_7027","Unreachable code detected.",!0),Unused_label:q(7028,1,"Unused_label_7028","Unused label.",!0),Fallthrough_case_in_switch:q(7029,1,"Fallthrough_case_in_switch_7029","Fallthrough case in switch."),Not_all_code_paths_return_a_value:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(8019,3,"Report_errors_in_js_files_8019","Report errors in .js files."),JSDoc_types_can_only_be_used_inside_documentation_comments:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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_type_annotation_with_isolatedDeclarations:q(9009,1,"At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9009","At least one accessor must have an explicit type annotation with --isolatedDeclarations."),Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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_its_type_This_is_not_supported_with_isolatedDeclarations:q(9025,1,"Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_sup_9025","Declaration emit for this parameter requires implicitly adding undefined to its type. This is not supported with --isolatedDeclarations."),Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_supported_with_isolatedDeclarations:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(17014,1,"JSX_fragment_has_no_corresponding_closing_tag_17014","JSX fragment has no corresponding closing tag."),Expected_corresponding_closing_tag_for_JSX_fragment:q(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:q(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:q(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:q(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:q(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:q(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:q(17021,1,"Unicode_escape_sequence_cannot_appear_here_17021","Unicode escape sequence cannot appear here."),Circularity_detected_while_resolving_configuration_Colon_0:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(80010,2,"JSDoc_typedefs_may_be_converted_to_TypeScript_types_80010","JSDoc typedefs may be converted to TypeScript types."),Add_missing_super_call:q(90001,3,"Add_missing_super_call_90001","Add missing 'super()' call"),Make_super_call_the_first_statement_in_the_constructor:q(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:q(90003,3,"Change_extends_to_implements_90003","Change 'extends' to 'implements'"),Remove_unused_declaration_for_Colon_0:q(90004,3,"Remove_unused_declaration_for_Colon_0_90004","Remove unused declaration for: '{0}'"),Remove_import_from_0:q(90005,3,"Remove_import_from_0_90005","Remove import from '{0}'"),Implement_interface_0:q(90006,3,"Implement_interface_0_90006","Implement interface '{0}'"),Implement_inherited_abstract_class:q(90007,3,"Implement_inherited_abstract_class_90007","Implement inherited abstract class"),Add_0_to_unresolved_variable:q(90008,3,"Add_0_to_unresolved_variable_90008","Add '{0}.' to unresolved variable"),Remove_variable_statement:q(90010,3,"Remove_variable_statement_90010","Remove variable statement"),Remove_template_tag:q(90011,3,"Remove_template_tag_90011","Remove template tag"),Remove_type_parameters:q(90012,3,"Remove_type_parameters_90012","Remove type parameters"),Import_0_from_1:q(90013,3,"Import_0_from_1_90013",`Import '{0}' from "{1}"`),Change_0_to_1:q(90014,3,"Change_0_to_1_90014","Change '{0}' to '{1}'"),Declare_property_0:q(90016,3,"Declare_property_0_90016","Declare property '{0}'"),Add_index_signature_for_property_0:q(90017,3,"Add_index_signature_for_property_0_90017","Add index signature for property '{0}'"),Disable_checking_for_this_file:q(90018,3,"Disable_checking_for_this_file_90018","Disable checking for this file"),Ignore_this_error_message:q(90019,3,"Ignore_this_error_message_90019","Ignore this error message"),Initialize_property_0_in_the_constructor:q(90020,3,"Initialize_property_0_in_the_constructor_90020","Initialize property '{0}' in the constructor"),Initialize_static_property_0:q(90021,3,"Initialize_static_property_0_90021","Initialize static property '{0}'"),Change_spelling_to_0:q(90022,3,"Change_spelling_to_0_90022","Change spelling to '{0}'"),Declare_method_0:q(90023,3,"Declare_method_0_90023","Declare method '{0}'"),Declare_static_method_0:q(90024,3,"Declare_static_method_0_90024","Declare static method '{0}'"),Prefix_0_with_an_underscore:q(90025,3,"Prefix_0_with_an_underscore_90025","Prefix '{0}' with an underscore"),Rewrite_as_the_indexed_access_type_0:q(90026,3,"Rewrite_as_the_indexed_access_type_0_90026","Rewrite as the indexed access type '{0}'"),Declare_static_property_0:q(90027,3,"Declare_static_property_0_90027","Declare static property '{0}'"),Call_decorator_expression:q(90028,3,"Call_decorator_expression_90028","Call decorator expression"),Add_async_modifier_to_containing_function:q(90029,3,"Add_async_modifier_to_containing_function_90029","Add async modifier to containing function"),Replace_infer_0_with_unknown:q(90030,3,"Replace_infer_0_with_unknown_90030","Replace 'infer {0}' with 'unknown'"),Replace_all_unused_infer_with_unknown:q(90031,3,"Replace_all_unused_infer_with_unknown_90031","Replace all unused 'infer' with 'unknown'"),Add_parameter_name:q(90034,3,"Add_parameter_name_90034","Add parameter name"),Declare_private_property_0:q(90035,3,"Declare_private_property_0_90035","Declare private property '{0}'"),Replace_0_with_Promise_1:q(90036,3,"Replace_0_with_Promise_1_90036","Replace '{0}' with 'Promise<{1}>'"),Fix_all_incorrect_return_type_of_an_async_functions:q(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:q(90038,3,"Declare_private_method_0_90038","Declare private method '{0}'"),Remove_unused_destructuring_declaration:q(90039,3,"Remove_unused_destructuring_declaration_90039","Remove unused destructuring declaration"),Remove_unused_declarations_for_Colon_0:q(90041,3,"Remove_unused_declarations_for_Colon_0_90041","Remove unused declarations for: '{0}'"),Declare_a_private_field_named_0:q(90053,3,"Declare_a_private_field_named_0_90053","Declare a private field named '{0}'."),Includes_imports_of_types_referenced_by_0:q(90054,3,"Includes_imports_of_types_referenced_by_0_90054","Includes imports of types referenced by '{0}'"),Remove_type_from_import_declaration_from_0:q(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:q(90056,3,"Remove_type_from_import_of_0_from_1_90056",`Remove 'type' from import of '{0}' from "{1}"`),Add_import_from_0:q(90057,3,"Add_import_from_0_90057",'Add import from "{0}"'),Update_import_from_0:q(90058,3,"Update_import_from_0_90058",'Update import from "{0}"'),Export_0_from_module_1:q(90059,3,"Export_0_from_module_1_90059","Export '{0}' from module '{1}'"),Export_all_referenced_locals:q(90060,3,"Export_all_referenced_locals_90060","Export all referenced locals"),Update_modifiers_of_0:q(90061,3,"Update_modifiers_of_0_90061","Update modifiers of '{0}'"),Add_annotation_of_type_0:q(90062,3,"Add_annotation_of_type_0_90062","Add annotation of type '{0}'"),Add_return_type_0:q(90063,3,"Add_return_type_0_90063","Add return type '{0}'"),Extract_base_class_to_variable:q(90064,3,"Extract_base_class_to_variable_90064","Extract base class to variable"),Extract_default_export_to_variable:q(90065,3,"Extract_default_export_to_variable_90065","Extract default export to variable"),Extract_binding_expressions_to_variable:q(90066,3,"Extract_binding_expressions_to_variable_90066","Extract binding expressions to variable"),Add_all_missing_type_annotations:q(90067,3,"Add_all_missing_type_annotations_90067","Add all missing type annotations"),Add_satisfies_and_an_inline_type_assertion_with_0:q(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:q(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:q(90070,3,"Mark_array_literal_as_const_90070","Mark array literal as const"),Annotate_types_of_properties_expando_function_in_a_namespace:q(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:q(95001,3,"Convert_function_to_an_ES2015_class_95001","Convert function to an ES2015 class"),Convert_0_to_1_in_0:q(95003,3,"Convert_0_to_1_in_0_95003","Convert '{0}' to '{1} in {0}'"),Extract_to_0_in_1:q(95004,3,"Extract_to_0_in_1_95004","Extract to {0} in {1}"),Extract_function:q(95005,3,"Extract_function_95005","Extract function"),Extract_constant:q(95006,3,"Extract_constant_95006","Extract constant"),Extract_to_0_in_enclosing_scope:q(95007,3,"Extract_to_0_in_enclosing_scope_95007","Extract to {0} in enclosing scope"),Extract_to_0_in_1_scope:q(95008,3,"Extract_to_0_in_1_scope_95008","Extract to {0} in {1} scope"),Annotate_with_type_from_JSDoc:q(95009,3,"Annotate_with_type_from_JSDoc_95009","Annotate with type from JSDoc"),Infer_type_of_0_from_usage:q(95011,3,"Infer_type_of_0_from_usage_95011","Infer type of '{0}' from usage"),Infer_parameter_types_from_usage:q(95012,3,"Infer_parameter_types_from_usage_95012","Infer parameter types from usage"),Convert_to_default_import:q(95013,3,"Convert_to_default_import_95013","Convert to default import"),Install_0:q(95014,3,"Install_0_95014","Install '{0}'"),Replace_import_with_0:q(95015,3,"Replace_import_with_0_95015","Replace import with '{0}'."),Use_synthetic_default_member:q(95016,3,"Use_synthetic_default_member_95016","Use synthetic 'default' member."),Convert_to_ES_module:q(95017,3,"Convert_to_ES_module_95017","Convert to ES module"),Add_undefined_type_to_property_0:q(95018,3,"Add_undefined_type_to_property_0_95018","Add 'undefined' type to property '{0}'"),Add_initializer_to_property_0:q(95019,3,"Add_initializer_to_property_0_95019","Add initializer to property '{0}'"),Add_definite_assignment_assertion_to_property_0:q(95020,3,"Add_definite_assignment_assertion_to_property_0_95020","Add definite assignment assertion to property '{0}'"),Convert_all_type_literals_to_mapped_type:q(95021,3,"Convert_all_type_literals_to_mapped_type_95021","Convert all type literals to mapped type"),Add_all_missing_members:q(95022,3,"Add_all_missing_members_95022","Add all missing members"),Infer_all_types_from_usage:q(95023,3,"Infer_all_types_from_usage_95023","Infer all types from usage"),Delete_all_unused_declarations:q(95024,3,"Delete_all_unused_declarations_95024","Delete all unused declarations"),Prefix_all_unused_declarations_with_where_possible:q(95025,3,"Prefix_all_unused_declarations_with_where_possible_95025","Prefix all unused declarations with '_' where possible"),Fix_all_detected_spelling_errors:q(95026,3,"Fix_all_detected_spelling_errors_95026","Fix all detected spelling errors"),Add_initializers_to_all_uninitialized_properties:q(95027,3,"Add_initializers_to_all_uninitialized_properties_95027","Add initializers to all uninitialized properties"),Add_definite_assignment_assertions_to_all_uninitialized_properties:q(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:q(95029,3,"Add_undefined_type_to_all_uninitialized_properties_95029","Add undefined type to all uninitialized properties"),Change_all_jsdoc_style_types_to_TypeScript:q(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:q(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:q(95032,3,"Implement_all_unimplemented_interfaces_95032","Implement all unimplemented interfaces"),Install_all_missing_types_packages:q(95033,3,"Install_all_missing_types_packages_95033","Install all missing types packages"),Rewrite_all_as_indexed_access_types:q(95034,3,"Rewrite_all_as_indexed_access_types_95034","Rewrite all as indexed access types"),Convert_all_to_default_imports:q(95035,3,"Convert_all_to_default_imports_95035","Convert all to default imports"),Make_all_super_calls_the_first_statement_in_their_constructor:q(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:q(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:q(95038,3,"Change_all_extended_interfaces_to_implements_95038","Change all extended interfaces to 'implements'"),Add_all_missing_super_calls:q(95039,3,"Add_all_missing_super_calls_95039","Add all missing super calls"),Implement_all_inherited_abstract_classes:q(95040,3,"Implement_all_inherited_abstract_classes_95040","Implement all inherited abstract classes"),Add_all_missing_async_modifiers:q(95041,3,"Add_all_missing_async_modifiers_95041","Add all missing 'async' modifiers"),Add_ts_ignore_to_all_error_messages:q(95042,3,"Add_ts_ignore_to_all_error_messages_95042","Add '@ts-ignore' to all error messages"),Annotate_everything_with_types_from_JSDoc:q(95043,3,"Annotate_everything_with_types_from_JSDoc_95043","Annotate everything with types from JSDoc"),Add_to_all_uncalled_decorators:q(95044,3,"Add_to_all_uncalled_decorators_95044","Add '()' to all uncalled decorators"),Convert_all_constructor_functions_to_classes:q(95045,3,"Convert_all_constructor_functions_to_classes_95045","Convert all constructor functions to classes"),Generate_get_and_set_accessors:q(95046,3,"Generate_get_and_set_accessors_95046","Generate 'get' and 'set' accessors"),Convert_require_to_import:q(95047,3,"Convert_require_to_import_95047","Convert 'require' to 'import'"),Convert_all_require_to_import:q(95048,3,"Convert_all_require_to_import_95048","Convert all 'require' to 'import'"),Move_to_a_new_file:q(95049,3,"Move_to_a_new_file_95049","Move to a new file"),Remove_unreachable_code:q(95050,3,"Remove_unreachable_code_95050","Remove unreachable code"),Remove_all_unreachable_code:q(95051,3,"Remove_all_unreachable_code_95051","Remove all unreachable code"),Add_missing_typeof:q(95052,3,"Add_missing_typeof_95052","Add missing 'typeof'"),Remove_unused_label:q(95053,3,"Remove_unused_label_95053","Remove unused label"),Remove_all_unused_labels:q(95054,3,"Remove_all_unused_labels_95054","Remove all unused labels"),Convert_0_to_mapped_object_type:q(95055,3,"Convert_0_to_mapped_object_type_95055","Convert '{0}' to mapped object type"),Convert_namespace_import_to_named_imports:q(95056,3,"Convert_namespace_import_to_named_imports_95056","Convert namespace import to named imports"),Convert_named_imports_to_namespace_import:q(95057,3,"Convert_named_imports_to_namespace_import_95057","Convert named imports to namespace import"),Add_or_remove_braces_in_an_arrow_function:q(95058,3,"Add_or_remove_braces_in_an_arrow_function_95058","Add or remove braces in an arrow function"),Add_braces_to_arrow_function:q(95059,3,"Add_braces_to_arrow_function_95059","Add braces to arrow function"),Remove_braces_from_arrow_function:q(95060,3,"Remove_braces_from_arrow_function_95060","Remove braces from arrow function"),Convert_default_export_to_named_export:q(95061,3,"Convert_default_export_to_named_export_95061","Convert default export to named export"),Convert_named_export_to_default_export:q(95062,3,"Convert_named_export_to_default_export_95062","Convert named export to default export"),Add_missing_enum_member_0:q(95063,3,"Add_missing_enum_member_0_95063","Add missing enum member '{0}'"),Add_all_missing_imports:q(95064,3,"Add_all_missing_imports_95064","Add all missing imports"),Convert_to_async_function:q(95065,3,"Convert_to_async_function_95065","Convert to async function"),Convert_all_to_async_functions:q(95066,3,"Convert_all_to_async_functions_95066","Convert all to async functions"),Add_missing_call_parentheses:q(95067,3,"Add_missing_call_parentheses_95067","Add missing call parentheses"),Add_all_missing_call_parentheses:q(95068,3,"Add_all_missing_call_parentheses_95068","Add all missing call parentheses"),Add_unknown_conversion_for_non_overlapping_types:q(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:q(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:q(95071,3,"Add_missing_new_operator_to_call_95071","Add missing 'new' operator to call"),Add_missing_new_operator_to_all_calls:q(95072,3,"Add_missing_new_operator_to_all_calls_95072","Add missing 'new' operator to all calls"),Add_names_to_all_parameters_without_names:q(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:q(95074,3,"Enable_the_experimentalDecorators_option_in_your_configuration_file_95074","Enable the 'experimentalDecorators' option in your configuration file"),Convert_parameters_to_destructured_object:q(95075,3,"Convert_parameters_to_destructured_object_95075","Convert parameters to destructured object"),Extract_type:q(95077,3,"Extract_type_95077","Extract type"),Extract_to_type_alias:q(95078,3,"Extract_to_type_alias_95078","Extract to type alias"),Extract_to_typedef:q(95079,3,"Extract_to_typedef_95079","Extract to typedef"),Infer_this_type_of_0_from_usage:q(95080,3,"Infer_this_type_of_0_from_usage_95080","Infer 'this' type of '{0}' from usage"),Add_const_to_unresolved_variable:q(95081,3,"Add_const_to_unresolved_variable_95081","Add 'const' to unresolved variable"),Add_const_to_all_unresolved_variables:q(95082,3,"Add_const_to_all_unresolved_variables_95082","Add 'const' to all unresolved variables"),Add_await:q(95083,3,"Add_await_95083","Add 'await'"),Add_await_to_initializer_for_0:q(95084,3,"Add_await_to_initializer_for_0_95084","Add 'await' to initializer for '{0}'"),Fix_all_expressions_possibly_missing_await:q(95085,3,"Fix_all_expressions_possibly_missing_await_95085","Fix all expressions possibly missing 'await'"),Remove_unnecessary_await:q(95086,3,"Remove_unnecessary_await_95086","Remove unnecessary 'await'"),Remove_all_unnecessary_uses_of_await:q(95087,3,"Remove_all_unnecessary_uses_of_await_95087","Remove all unnecessary uses of 'await'"),Enable_the_jsx_flag_in_your_configuration_file:q(95088,3,"Enable_the_jsx_flag_in_your_configuration_file_95088","Enable the '--jsx' flag in your configuration file"),Add_await_to_initializers:q(95089,3,"Add_await_to_initializers_95089","Add 'await' to initializers"),Extract_to_interface:q(95090,3,"Extract_to_interface_95090","Extract to interface"),Convert_to_a_bigint_numeric_literal:q(95091,3,"Convert_to_a_bigint_numeric_literal_95091","Convert to a bigint numeric literal"),Convert_all_to_bigint_numeric_literals:q(95092,3,"Convert_all_to_bigint_numeric_literals_95092","Convert all to bigint numeric literals"),Convert_const_to_let:q(95093,3,"Convert_const_to_let_95093","Convert 'const' to 'let'"),Prefix_with_declare:q(95094,3,"Prefix_with_declare_95094","Prefix with 'declare'"),Prefix_all_incorrect_property_declarations_with_declare:q(95095,3,"Prefix_all_incorrect_property_declarations_with_declare_95095","Prefix all incorrect property declarations with 'declare'"),Convert_to_template_string:q(95096,3,"Convert_to_template_string_95096","Convert to template string"),Add_export_to_make_this_file_into_a_module:q(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:q(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:q(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:q(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:q(95101,3,"Convert_all_invalid_characters_to_HTML_entity_code_95101","Convert all invalid characters to HTML entity code"),Convert_all_const_to_let:q(95102,3,"Convert_all_const_to_let_95102","Convert all 'const' to 'let'"),Convert_function_expression_0_to_arrow_function:q(95105,3,"Convert_function_expression_0_to_arrow_function_95105","Convert function expression '{0}' to arrow function"),Convert_function_declaration_0_to_arrow_function:q(95106,3,"Convert_function_declaration_0_to_arrow_function_95106","Convert function declaration '{0}' to arrow function"),Fix_all_implicit_this_errors:q(95107,3,"Fix_all_implicit_this_errors_95107","Fix all implicit-'this' errors"),Wrap_invalid_character_in_an_expression_container:q(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:q(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:q(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:q(95111,3,"Add_a_return_statement_95111","Add a return statement"),Remove_braces_from_arrow_function_body:q(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:q(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:q(95114,3,"Add_all_missing_return_statement_95114","Add all missing return statement"),Remove_braces_from_all_arrow_function_bodies_with_relevant_issues:q(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:q(95116,3,"Wrap_all_object_literal_with_parentheses_95116","Wrap all object literal with parentheses"),Move_labeled_tuple_element_modifiers_to_labels:q(95117,3,"Move_labeled_tuple_element_modifiers_to_labels_95117","Move labeled tuple element modifiers to labels"),Convert_overload_list_to_single_signature:q(95118,3,"Convert_overload_list_to_single_signature_95118","Convert overload list to single signature"),Generate_get_and_set_accessors_for_all_overriding_properties:q(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:q(95120,3,"Wrap_in_JSX_fragment_95120","Wrap in JSX fragment"),Wrap_all_unparented_JSX_in_JSX_fragment:q(95121,3,"Wrap_all_unparented_JSX_in_JSX_fragment_95121","Wrap all unparented JSX in JSX fragment"),Convert_arrow_function_or_function_expression:q(95122,3,"Convert_arrow_function_or_function_expression_95122","Convert arrow function or function expression"),Convert_to_anonymous_function:q(95123,3,"Convert_to_anonymous_function_95123","Convert to anonymous function"),Convert_to_named_function:q(95124,3,"Convert_to_named_function_95124","Convert to named function"),Convert_to_arrow_function:q(95125,3,"Convert_to_arrow_function_95125","Convert to arrow function"),Remove_parentheses:q(95126,3,"Remove_parentheses_95126","Remove parentheses"),Could_not_find_a_containing_arrow_function:q(95127,3,"Could_not_find_a_containing_arrow_function_95127","Could not find a containing arrow function"),Containing_function_is_not_an_arrow_function:q(95128,3,"Containing_function_is_not_an_arrow_function_95128","Containing function is not an arrow function"),Could_not_find_export_statement:q(95129,3,"Could_not_find_export_statement_95129","Could not find export statement"),This_file_already_has_a_default_export:q(95130,3,"This_file_already_has_a_default_export_95130","This file already has a default export"),Could_not_find_import_clause:q(95131,3,"Could_not_find_import_clause_95131","Could not find import clause"),Could_not_find_namespace_import_or_named_imports:q(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:q(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:q(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:q(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:q(95136,3,"Name_is_not_valid_95136","Name is not valid"),Can_only_convert_property_with_modifier:q(95137,3,"Can_only_convert_property_with_modifier_95137","Can only convert property with modifier"),Switch_each_misused_0_to_1:q(95138,3,"Switch_each_misused_0_to_1_95138","Switch each misused '{0}' to '{1}'"),Convert_to_optional_chain_expression:q(95139,3,"Convert_to_optional_chain_expression_95139","Convert to optional chain expression"),Could_not_find_convertible_access_expression:q(95140,3,"Could_not_find_convertible_access_expression_95140","Could not find convertible access expression"),Could_not_find_matching_access_expressions:q(95141,3,"Could_not_find_matching_access_expressions_95141","Could not find matching access expressions"),Can_only_convert_logical_AND_access_chains:q(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:q(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:q(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:q(95145,3,"Use_element_access_for_0_95145","Use element access for '{0}'"),Use_element_access_for_all_undeclared_properties:q(95146,3,"Use_element_access_for_all_undeclared_properties_95146","Use element access for all undeclared properties."),Delete_all_unused_imports:q(95147,3,"Delete_all_unused_imports_95147","Delete all unused imports"),Infer_function_return_type:q(95148,3,"Infer_function_return_type_95148","Infer function return type"),Return_type_must_be_inferred_from_a_function:q(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:q(95150,3,"Could_not_determine_function_return_type_95150","Could not determine function return type"),Could_not_convert_to_arrow_function:q(95151,3,"Could_not_convert_to_arrow_function_95151","Could not convert to arrow function"),Could_not_convert_to_named_function:q(95152,3,"Could_not_convert_to_named_function_95152","Could not convert to named function"),Could_not_convert_to_anonymous_function:q(95153,3,"Could_not_convert_to_anonymous_function_95153","Could not convert to anonymous function"),Can_only_convert_string_concatenations_and_string_literals:q(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:q(95155,3,"Selection_is_not_a_valid_statement_or_statements_95155","Selection is not a valid statement or statements"),Add_missing_function_declaration_0:q(95156,3,"Add_missing_function_declaration_0_95156","Add missing function declaration '{0}'"),Add_all_missing_function_declarations:q(95157,3,"Add_all_missing_function_declarations_95157","Add all missing function declarations"),Method_not_implemented:q(95158,3,"Method_not_implemented_95158","Method not implemented."),Function_not_implemented:q(95159,3,"Function_not_implemented_95159","Function not implemented."),Add_override_modifier:q(95160,3,"Add_override_modifier_95160","Add 'override' modifier"),Remove_override_modifier:q(95161,3,"Remove_override_modifier_95161","Remove 'override' modifier"),Add_all_missing_override_modifiers:q(95162,3,"Add_all_missing_override_modifiers_95162","Add all missing 'override' modifiers"),Remove_all_unnecessary_override_modifiers:q(95163,3,"Remove_all_unnecessary_override_modifiers_95163","Remove all unnecessary 'override' modifiers"),Can_only_convert_named_export:q(95164,3,"Can_only_convert_named_export_95164","Can only convert named export"),Add_missing_properties:q(95165,3,"Add_missing_properties_95165","Add missing properties"),Add_all_missing_properties:q(95166,3,"Add_all_missing_properties_95166","Add all missing properties"),Add_missing_attributes:q(95167,3,"Add_missing_attributes_95167","Add missing attributes"),Add_all_missing_attributes:q(95168,3,"Add_all_missing_attributes_95168","Add all missing attributes"),Add_undefined_to_optional_property_type:q(95169,3,"Add_undefined_to_optional_property_type_95169","Add 'undefined' to optional property type"),Convert_named_imports_to_default_import:q(95170,3,"Convert_named_imports_to_default_import_95170","Convert named imports to default import"),Delete_unused_param_tag_0:q(95171,3,"Delete_unused_param_tag_0_95171","Delete unused '@param' tag '{0}'"),Delete_all_unused_param_tags:q(95172,3,"Delete_all_unused_param_tags_95172","Delete all unused '@param' tags"),Rename_param_tag_name_0_to_1:q(95173,3,"Rename_param_tag_name_0_to_1_95173","Rename '@param' tag name '{0}' to '{1}'"),Use_0:q(95174,3,"Use_0_95174","Use `{0}`."),Use_Number_isNaN_in_all_conditions:q(95175,3,"Use_Number_isNaN_in_all_conditions_95175","Use `Number.isNaN` in all conditions."),Convert_typedef_to_TypeScript_type:q(95176,3,"Convert_typedef_to_TypeScript_type_95176","Convert typedef to TypeScript type."),Convert_all_typedef_to_TypeScript_types:q(95177,3,"Convert_all_typedef_to_TypeScript_types_95177","Convert all typedef to TypeScript types."),Move_to_file:q(95178,3,"Move_to_file_95178","Move to file"),Cannot_move_to_file_selected_file_is_invalid:q(95179,3,"Cannot_move_to_file_selected_file_is_invalid_95179","Cannot move to file, selected file is invalid"),Use_import_type:q(95180,3,"Use_import_type_95180","Use 'import type'"),Use_type_0:q(95181,3,"Use_type_0_95181","Use 'type {0}'"),Fix_all_with_type_only_imports:q(95182,3,"Fix_all_with_type_only_imports_95182","Fix all with type-only imports"),Cannot_move_statements_to_the_selected_file:q(95183,3,"Cannot_move_statements_to_the_selected_file_95183","Cannot move statements to the selected file"),Inline_variable:q(95184,3,"Inline_variable_95184","Inline variable"),Could_not_find_variable_to_inline:q(95185,3,"Could_not_find_variable_to_inline_95185","Could not find variable to inline."),Variables_with_multiple_declarations_cannot_be_inlined:q(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:q(95187,3,"Add_missing_comma_for_object_member_completion_0_95187","Add missing comma for object member completion '{0}'."),Add_missing_parameter_to_0:q(95188,3,"Add_missing_parameter_to_0_95188","Add missing parameter to '{0}'"),Add_missing_parameters_to_0:q(95189,3,"Add_missing_parameters_to_0_95189","Add missing parameters to '{0}'"),Add_all_missing_parameters:q(95190,3,"Add_all_missing_parameters_95190","Add all missing parameters"),Add_optional_parameter_to_0:q(95191,3,"Add_optional_parameter_to_0_95191","Add optional parameter to '{0}'"),Add_optional_parameters_to_0:q(95192,3,"Add_optional_parameters_to_0_95192","Add optional parameters to '{0}'"),Add_all_optional_parameters:q(95193,3,"Add_all_optional_parameters_95193","Add all optional parameters"),Wrap_in_parentheses:q(95194,3,"Wrap_in_parentheses_95194","Wrap in parentheses"),Wrap_all_invalid_decorator_expressions_in_parentheses:q(95195,3,"Wrap_all_invalid_decorator_expressions_in_parentheses_95195","Wrap all invalid decorator expressions in parentheses"),Add_resolution_mode_import_attribute:q(95196,3,"Add_resolution_mode_import_attribute_95196","Add 'resolution-mode' import attribute"),Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it:q(95197,3,"Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it_95197","Add 'resolution-mode' import attribute to all type-only imports that need it"),No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(18046,1,"_0_is_of_type_unknown_18046","'{0}' is of type 'unknown'."),_0_is_possibly_null:q(18047,1,"_0_is_possibly_null_18047","'{0}' is possibly 'null'."),_0_is_possibly_undefined:q(18048,1,"_0_is_possibly_undefined_18048","'{0}' is possibly 'undefined'."),_0_is_possibly_null_or_undefined:q(18049,1,"_0_is_possibly_null_or_undefined_18049","'{0}' is possibly 'null' or 'undefined'."),The_value_0_cannot_be_used_here:q(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:q(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:q(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:q(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:q(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:q(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."),String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es2020:q(18057,1,"String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es_18057","String literal import and export names are not supported when the '--module' flag is set to 'es2015' or 'es2020'.")};function a1(e){return e>=80}function naa(e){return e===32||a1(e)}var jAr={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},iaa=new Map(Object.entries(jAr)),Isi=new Map(Object.entries({...jAr,"{":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,">":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})),Csi=new Map([[100,1],[103,2],[105,4],[109,8],[115,16],[117,32],[118,64],[121,128]]),saa=new Map([[1,tYe.RegularExpressionFlagsHasIndices],[16,tYe.RegularExpressionFlagsDotAll],[32,tYe.RegularExpressionFlagsUnicode],[64,tYe.RegularExpressionFlagsUnicodeSets],[128,tYe.RegularExpressionFlagsSticky]]),oaa=[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],aaa=[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],caa=[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],laa=[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],uaa=/^\/\/\/?\s*@(ts-expect-error|ts-ignore)/,gaa=/^(?:\/|\*)*\s*@(ts-expect-error|ts-ignore)/,Aaa=/@(?:see|link)/i;function WCt(e,t){if(e=2?WCt(e,caa):WCt(e,oaa)}function paa(e,t){return t>=2?WCt(e,laa):WCt(e,aaa)}function msi(e){let t=[];return e.forEach((r,s)=>{t[r]=s}),t}var faa=msi(Isi);function ay(e){return faa[e]}function hsi(e){return Isi.get(e)}var mhl=msi(Csi);function Vni(e){return Csi.get(e)}function _si(e){let t=[],r=0,s=0;for(;r127&&a9(a)&&(t.push(s),s=r);break}}return t.push(s),t}function Iaa(e,t,r,s,a){(t<0||t>=e.length)&&(a?t=t<0?0:t>=e.length?e.length-1:t:_o.fail(`Bad line number. Line: ${t}, lineStarts.length: ${e.length} , line map is correct? ${s!==void 0?_oa(e,_si(s)):"unknown"}`));let o=e[t]+r;return a?o>e[t+1]?e[t+1]:typeof s=="string"&&o>s.length?s.length:o:(t=8192&&e<=8203||e===8239||e===8287||e===12288||e===65279}function a9(e){return e===10||e===13||e===8232||e===8233}function Nse(e){return e>=48&&e<=57}function sAr(e){return Nse(e)||e>=65&&e<=70||e>=97&&e<=102}function zAr(e){return e>=65&&e<=90||e>=97&&e<=122}function bsi(e){return zAr(e)||Nse(e)||e===95}function oAr(e){return e>=48&&e<=55}function YU(e,t,r,s,a){if(bYe(t))return t;let o=!1;for(;;){let g=e.charCodeAt(t);switch(g){case 13:e.charCodeAt(t+1)===10&&t++;case 10:if(t++,r)return t;o=!!a;continue;case 9:case 11:case 12:case 32:t++;continue;case 47:if(s)break;if(e.charCodeAt(t+1)===47){for(t+=2;t127&&ISe(g)){t++;continue}break}return t}}var DCt=7;function afe(e,t){if(_o.assert(t>=0),t===0||a9(e.charCodeAt(t-1))){let r=e.charCodeAt(t);if(t+DCt=0&&r127&&ISe(T)){B&&a9(T)&&(y=!0),r++;continue}break e}}return B&&(G=a(p,f,m,y,o,G)),G}function haa(e,t,r,s){return UCt(!1,e,t,!1,r,s)}function _aa(e,t,r,s){return UCt(!1,e,t,!0,r,s)}function yaa(e,t,r,s,a){return UCt(!0,e,t,!1,r,s,a)}function baa(e,t,r,s,a){return UCt(!0,e,t,!0,r,s,a)}function vsi(e,t,r,s,a,o=[]){return o.push({kind:r,pos:e,end:t,hasTrailingNewLine:s}),o}function bAr(e,t){return yaa(e,t,vsi,void 0,void 0)}function Eaa(e,t){return baa(e,t,vsi,void 0,void 0)}function Ssi(e){let t=qAr.exec(e);if(t)return t[0]}function p5(e,t){return zAr(e)||e===36||e===95||e>127&&daa(e,t)}function Mz(e,t,r){return bsi(e)||e===36||(r===1?e===45||e===58:!1)||e>127&&paa(e,t)}function Baa(e,t,r){let s=cfe(e,0);if(!p5(s,t))return!1;for(let a=WT(s);ay,getStartPos:()=>y,getTokenEnd:()=>f,getTextPos:()=>f,getToken:()=>v,getTokenStart:()=>B,getTokenPos:()=>B,getTokenText:()=>p.substring(B,f),getTokenValue:()=>G,hasUnicodeEscape:()=>(T&1024)!==0,hasExtendedUnicodeEscape:()=>(T&8)!==0,hasPrecedingLineBreak:()=>(T&1)!==0,hasPrecedingJSDocComment:()=>(T&2)!==0,hasPrecedingJSDocLeadingAsterisks:()=>(T&32768)!==0,isIdentifier:()=>v===80||v>118,isReservedWord:()=>v>=83&&v<=118,isUnterminated:()=>(T&4)!==0,getCommentDirectives:()=>O,getNumericLiteralFlags:()=>T&25584,getTokenFlags:()=>T,reScanGreaterToken:gn,reScanAsteriskEqualsToken:Gn,reScanSlashToken:we,reScanTemplateToken:lr,reScanTemplateHeadOrNoSubstitutionTemplate:ga,scanJsxIdentifier:TA,scanJsxAttributeValue:Ld,reScanJsxAttributeValue:jr,reScanJsxToken:vi,reScanLessThanToken:Qu,reScanHashToken:Yu,reScanQuestionToken:YA,reScanInvalidIdentifier:Br,scanJsxToken:ud,scanJsDocToken:Ir,scanJSDocCommentTextToken:Gr,scan:Or,getText:Hr,clearCommentDirectives:Ws,setText:Ko,setScriptTarget:pa,setLanguageVariant:sg,setScriptKind:Fu,setJSDocParsingMode:Cg,setOnError:ai,resetTokenState:Zu,setTextPos:Zu,setSkipJsDocLeadingAsterisks:Cl,tryScan:Ji,lookAhead:Vn,scanRange:Cn};return _o.isDebugging&&Object.defineProperty(ae,"__debugShowCurrentPositionInText",{get:()=>{let wi=ae.getText();return wi.slice(0,ae.getTokenFullStart())+"\u2551"+wi.slice(ae.getTokenFullStart())}}),ae;function ge(wi){return cfe(p,wi)}function fe(wi){return wi>=0&&wi=0&&wi=65&&qo<=70)qo+=32;else if(!(qo>=48&&qo<=57||qo>=97&&qo<=102))break;Ga.push(qo),f++,xl=!1}return Ga.length=m){$i+=p.substring(Ga,f),T|=4,be(Ni.Unterminated_string_literal);break}let $s=pe(f);if($s===ts){$i+=p.substring(Ga,f),f++;break}if($s===92&&!wi){$i+=p.substring(Ga,f),$i+=er(3),Ga=f;continue}if(($s===10||$s===13)&&!wi){$i+=p.substring(Ga,f),T|=4,be(Ni.Unterminated_string_literal);break}f++}return $i}function Gt(wi){let ts=pe(f)===96;f++;let $i=f,Ga="",$s;for(;;){if(f>=m){Ga+=p.substring($i,f),T|=4,be(Ni.Unterminated_template_literal),$s=ts?15:18;break}let xl=pe(f);if(xl===96){Ga+=p.substring($i,f),f++,$s=ts?15:18;break}if(xl===36&&f+1=m)return be(Ni.Unexpected_end_of_text),"";let $i=pe(f);switch(f++,$i){case 48:if(f>=m||!Nse(pe(f)))return"\0";case 49:case 50:case 51:f=55296&&Ga<=56319&&f+6=56320&&Na<=57343)return f=qo,$s+String.fromCharCode(Na)}return $s;case 120:for(;f1114111&&(wi&&be(Ni.An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive,$i,f-$i),xl=!0),f>=m?(wi&&be(Ni.Unexpected_end_of_text),xl=!0):pe(f)===125?f++:(wi&&be(Ni.Unterminated_Unicode_escape_sequence),xl=!0),xl?(T|=2048,p.substring(ts,f)):(T|=8,Wni($s))}function Ot(){if(f+5=0&&Mz($i,e)){wi+=Ur(!0),ts=f;continue}if($i=Ot(),!($i>=0&&Mz($i,e)))break;T|=1024,wi+=p.substring(ts,f),wi+=Wni($i),f+=6,ts=f}else break}return wi+=p.substring(ts,f),wi}function or(){let wi=G.length;if(wi>=2&&wi<=12){let ts=G.charCodeAt(0);if(ts>=97&&ts<=122){let $i=iaa.get(G);if($i!==void 0)return v=$i}}return v=80}function Fr(wi){let ts="",$i=!1,Ga=!1;for(;;){let $s=pe(f);if($s===95){T|=512,$i?($i=!1,Ga=!0):be(Ga?Ni.Multiple_consecutive_numeric_separators_are_not_permitted:Ni.Numeric_separators_are_not_allowed_here,f,1),f++;continue}if($i=!0,!Nse($s)||$s-48>=wi)break;ts+=p[f],f++,Ga=!1}return pe(f-1)===95&&be(Ni.Numeric_separators_are_not_allowed_here,f-1,1),ts}function $r(){return pe(f)===110?(G+="n",T&384&&(G=Pla(G)+"n"),f++,10):(G=""+(T&128?parseInt(G.slice(2),2):T&256?parseInt(G.slice(2),8):+G),9)}function Or(){for(y=f,T=0;;){if(B=f,f>=m)return v=1;let wi=ge(f);if(f===0&&wi===35&&Esi(p,f)){if(f=Bsi(p,f),t)continue;return v=6}switch(wi){case 10:case 13:if(T|=1,t){f++;continue}else return wi===13&&f+1=0&&p5(ts,e))return G=Ur(!0)+Ar(),v=or();let $i=Ot();return $i>=0&&p5($i,e)?(f+=6,T|=1024,G=String.fromCharCode($i)+Ar(),v=or()):(be(Ni.Invalid_character),f++,v=0);case 35:if(f!==0&&p[f+1]==="!")return be(Ni.can_only_be_used_at_the_start_of_a_file,f,2),f++,v=0;let Ga=ge(f+1);if(Ga===92){f++;let qo=dr();if(qo>=0&&p5(qo,e))return G="#"+Ur(!0)+Ar(),v=81;let Na=Ot();if(Na>=0&&p5(Na,e))return f+=6,T|=1024,G="#"+String.fromCharCode(Na)+Ar(),v=81;f--}return p5(Ga,e)?(f++,tr(Ga,e)):(G="#",be(Ni.Invalid_character,f++,WT(wi))),v=81;case 65533:return be(Ni.File_appears_to_be_binary,0,0),f=m,v=8;default:let $s=tr(wi,e);if($s)return v=$s;if(gYe(wi)){f+=WT(wi);continue}else if(a9(wi)){T|=1,f+=WT(wi);continue}let xl=WT(wi);return be(Ni.Invalid_character,f,xl),f+=xl,v=0}}}function In(){switch(le){case 0:return!0;case 1:return!1}return U!==3&&U!==4?!0:le===3?!1:Aaa.test(p.slice(y,f))}function Br(){_o.assert(v===0,"'reScanInvalidIdentifier' should only be called when the current token is 'SyntaxKind.Unknown'."),f=B=y,T=0;let wi=ge(f),ts=tr(wi,99);return ts?v=ts:(f+=WT(wi),v)}function tr(wi,ts){let $i=wi;if(p5($i,ts)){for(f+=WT($i);f=m)return v=1;let ts=pe(f);if(ts===60)return pe(f+1)===47?(f+=2,v=31):(f++,v=30);if(ts===123)return f++,v=19;let $i=0;for(;f0)break;ISe(ts)||($i=f)}f++}return G=p.substring(y,f),$i===-1?13:12}function TA(){if(a1(v)){for(;f=m)return v=1;for(let ts=pe(f);f=0&&gYe(pe(f-1))&&!(f+1=m)return v=1;let wi=ge(f);switch(f+=WT(wi),wi){case 9:case 11:case 12:case 32:for(;f=0&&p5(ts,e))return G=Ur(!0)+Ar(),v=or();let $i=Ot();return $i>=0&&p5($i,e)?(f+=6,T|=1024,G=String.fromCharCode($i)+Ar(),v=or()):(f++,v=0)}if(p5(wi,e)){let ts=wi;for(;f=0),f=wi,y=wi,B=wi,v=0,G=void 0,T=0}function Cl(wi){X+=wi?1:-1}}function cfe(e,t){return e.codePointAt(t)}function WT(e){return e>=65536?2:e===-1?0:1}function vaa(e){if(_o.assert(0<=e&&e<=1114111),e<=65535)return String.fromCharCode(e);let t=Math.floor((e-65536)/1024)+55296,r=(e-65536)%1024+56320;return String.fromCharCode(t,r)}var Saa=String.fromCodePoint?e=>String.fromCodePoint(e):vaa;function Wni(e){return Saa(e)}var Pni=new Map(Object.entries({General_Category:"General_Category",gc:"General_Category",Script:"Script",sc:"Script",Script_Extensions:"Script_Extensions",scx:"Script_Extensions"})),Oni=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"]),Mni=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"]),pSe={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};pSe.Script_Extensions=pSe.Script;function MU(e){return e.start+e.length}function waa(e){return e.length===0}function edr(e,t){if(e<0)throw new Error("start < 0");if(t<0)throw new Error("length < 0");return{start:e,length:t}}function Taa(e,t){return edr(e,t-e)}function rYe(e){return edr(e.span.start,e.newLength)}function Naa(e){return waa(e.span)&&e.newLength===0}function wsi(e,t){if(t<0)throw new Error("newLength < 0");return{span:e,newLength:t}}var hhl=wsi(edr(0,0),0);function Tsi(e,t){for(;e;){let r=t(e);if(r==="quit")return;if(r)return e;e=e.parent}}function PCt(e){return(e.flags&16)===0}function Raa(e,t){if(e===void 0||PCt(e))return e;for(e=e.original;e;){if(PCt(e))return!t||t(e)?e:void 0;e=e.original}}function cSe(e){return e.length>=2&&e.charCodeAt(0)===95&&e.charCodeAt(1)===95?"_"+e:e}function mYe(e){let t=e;return t.length>=3&&t.charCodeAt(0)===95&&t.charCodeAt(1)===95&&t.charCodeAt(2)===95?t.substr(1):t}function l9(e){return mYe(e.escapedText)}function Nsi(e){let t=hsi(e.escapedText);return t?koa(t,Rse):void 0}function EAr(e){return e.valueDeclaration&&tca(e.valueDeclaration)?l9(e.valueDeclaration.name):mYe(e.escapedName)}function Rsi(e){let t=e.parent.parent;if(t){if(Hni(t))return ECt(t);switch(t.kind){case 243:if(t.declarationList&&t.declarationList.declarations[0])return ECt(t.declarationList.declarations[0]);break;case 244:let r=t.expression;switch(r.kind===226&&r.operatorToken.kind===64&&(r=r.left),r.kind){case 211:return r.name;case 212:let s=r.argumentExpression;if(mh(s))return s}break;case 217:return ECt(t.expression);case 256:{if(Hni(t.statement)||pca(t.statement))return ECt(t.statement);break}}}}function ECt(e){let t=Dsi(e);return t&&mh(t)?t:void 0}function Daa(e){return e.name||Rsi(e)}function xaa(e){return!!e.name}function tdr(e){switch(e.kind){case 80:return e;case 348:case 341:{let{name:r}=e;if(r.kind===166)return r.right;break}case 213:case 226:{let r=e;switch(odr(r)){case 1:case 4:case 5:case 3:return adr(r.left);case 7:case 8:case 9:return r.arguments[1];default:return}}case 346:return Daa(e);case 340:return Rsi(e);case 277:{let{expression:r}=e;return mh(r)?r:void 0}case 212:let t=e;if(Jsi(t))return t.argumentExpression}return e.name}function Dsi(e){if(e!==void 0)return tdr(e)||(doi(e)||poi(e)||DAr(e)?kaa(e):void 0)}function kaa(e){if(e.parent){if(jua(e.parent)||kua(e.parent))return e.parent.name;if(ySe(e.parent)&&e===e.parent.right){if(mh(e.parent.left))return e.parent.left;if($si(e.parent.left))return adr(e.parent.left)}else if(Ioi(e.parent)&&mh(e.parent.name))return e.parent.name}else return}function Gaa(e){if(cla(e))return Hz(e.modifiers,pdr)}function Faa(e){if(vYe(e,98303))return Hz(e.modifiers,ica)}function xsi(e,t){if(e.name)if(mh(e.name)){let r=e.name.escapedText;return hYe(e.parent,t).filter(s=>aii(s)&&mh(s.name)&&s.name.escapedText===r)}else{let r=e.parent.parameters.indexOf(e);_o.assert(r>-1,"Parameters should always be in their parents' parameter list");let s=hYe(e.parent,t).filter(aii);if(rgga(s)&&s.typeParameters.some(a=>a.name.escapedText===r))}function Vaa(e){return ksi(e,!1)}function Waa(e){return ksi(e,!0)}function Paa(e){return Fse(e,rga)}function Oaa(e){return Kaa(e,Aga)}function Maa(e){return Fse(e,nga,!0)}function Qaa(e){return Fse(e,iga,!0)}function Yaa(e){return Fse(e,sga,!0)}function Haa(e){return Fse(e,oga,!0)}function Xaa(e){return Fse(e,aga,!0)}function Jaa(e){return Fse(e,lga,!0)}function Uaa(e){let t=Fse(e,Cdr);if(t&&t.typeExpression&&t.typeExpression.type)return t}function hYe(e,t){var r;if(!cdr(e))return n2;let s=(r=e.jsDoc)==null?void 0:r.jsDocCache;if(s===void 0||t){let a=Xca(e,t);_o.assert(a.length<2||a[0]!==a[1]),s=$ii(a,o=>voi(o)?o.tags:o),t||(e.jsDoc??(e.jsDoc=[]),e.jsDoc.jsDocCache=s)}return s}function Gsi(e){return hYe(e,!1)}function Fse(e,t,r){return zii(hYe(e,r),t)}function Kaa(e,t){return Gsi(e).filter(t)}function BAr(e){return e.kind===80||e.kind===81}function jaa(e){return Zse(e)&&!!(e.flags&64)}function zaa(e){return SYe(e)&&!!(e.flags&64)}function Qni(e){return Aoi(e)&&!!(e.flags&64)}function rdr(e){return mdr(e,8)}function qaa(e){return kCt(e)&&!!(e.flags&64)}function ndr(e){return e>=166}function Fsi(e){return e>=0&&e<=165}function $aa(e){return Fsi(e.kind)}function Dse(e){return XU(e,"pos")&&XU(e,"end")}function eca(e){return 9<=e&&e<=15}function Yni(e){return 15<=e&&e<=18}function fSe(e){var t;return mh(e)&&((t=e.emitNode)==null?void 0:t.autoGenerate)!==void 0}function Zsi(e){var t;return Cfe(e)&&((t=e.emitNode)==null?void 0:t.autoGenerate)!==void 0}function tca(e){return(YCt(e)||aca(e))&&Cfe(e.name)}function Qz(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 rca(e){return!!(zsi(e)&31)}function nca(e){return rca(e)||e===126||e===164||e===129}function ica(e){return Qz(e.kind)}function Lsi(e){let t=e.kind;return t===80||t===81||t===11||t===9||t===167}function Vsi(e){return!!e&&oca(e.kind)}function sca(e){switch(e){case 262:case 174:case 176:case 177:case 178:case 218:case 219:return!0;default:return!1}}function oca(e){switch(e){case 173:case 179:case 323:case 180:case 181:case 184:case 317:case 185:return!0;default:return sca(e)}}function CSe(e){return e&&(e.kind===263||e.kind===231)}function aca(e){switch(e.kind){case 174:case 177:case 178:return!0;default:return!1}}function cca(e){let t=e.kind;return t===303||t===304||t===305||t===174||t===177||t===178}function lca(e){return hla(e.kind)}function uca(e){if(e){let t=e.kind;return t===207||t===206}return!1}function gca(e){let t=e.kind;return t===209||t===210}function Aca(e){switch(e.kind){case 260:case 169:case 208:return!0}return!1}function mSe(e){return Wsi(rdr(e).kind)}function Wsi(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 dca(e){return Psi(rdr(e).kind)}function Psi(e){switch(e){case 224:case 225:case 220:case 221:case 222:case 223:case 216:return!0;default:return Wsi(e)}}function pca(e){return fca(rdr(e).kind)}function fca(e){switch(e){case 227:case 229:case 219:case 226:case 230:case 234:case 232:case 356:case 355:case 238:return!0;default:return Psi(e)}}function Ica(e){return e===219||e===208||e===263||e===231||e===175||e===176||e===266||e===306||e===281||e===262||e===218||e===177||e===273||e===271||e===276||e===264||e===291||e===174||e===173||e===267||e===270||e===274||e===280||e===169||e===303||e===172||e===171||e===178||e===304||e===265||e===168||e===260||e===346||e===338||e===348||e===202}function Osi(e){return e===262||e===282||e===263||e===264||e===265||e===266||e===267||e===272||e===271||e===278||e===277||e===270}function Msi(e){return e===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}function Hni(e){return e.kind===168?e.parent&&e.parent.kind!==345||mfe(e):Ica(e.kind)}function Cca(e){let t=e.kind;return Msi(t)||Osi(t)||mca(e)}function mca(e){return e.kind!==241||e.parent!==void 0&&(e.parent.kind===258||e.parent.kind===299)?!1:!kca(e)}function hca(e){let t=e.kind;return Msi(t)||Osi(t)||t===241}function Qsi(e){return e.kind>=309&&e.kind<=351}function _ca(e){return e.kind===320||e.kind===319||e.kind===321||Eca(e)||yca(e)||tga(e)||Soi(e)}function yca(e){return e.kind>=327&&e.kind<=351}function BCt(e){return e.kind===178}function vCt(e){return e.kind===177}function Afe(e){if(!cdr(e))return!1;let{jsDoc:t}=e;return!!t&&t.length>0}function bca(e){return!!e.initializer}function idr(e){return e.kind===11||e.kind===15}function Eca(e){return e.kind===324||e.kind===325||e.kind===326}function Xni(e){return(e.flags&33554432)!==0}var _hl=Bca();function Bca(){var e="";let t=r=>e+=r;return{getText:()=>e,write:t,rawWrite:t,writeKeyword:t,writeOperator:t,writePunctuation:t,writeSpace:t,writeStringLiteral:t,writeLiteral:t,writeParameter:t,writeProperty:t,writeSymbol:(r,s)=>t(r),writeTrailingSemicolon:t,writeComment:t,getTextPos:()=>e.length,getLine:()=>0,getColumn:()=>0,getIndent:()=>0,isAtStartOfLine:()=>!1,hasTrailingComment:()=>!1,hasTrailingWhitespace:()=>!!e.length&&ISe(e.charCodeAt(e.length-1)),writeLine:()=>e+=" ",increaseIndent:_Se,decreaseIndent:_Se,clear:()=>e=""}}function vca(e,t){let r=e.entries();for(let[s,a]of r){let o=t(a,s);if(o)return o}}function Sca(e){return e.end-e.pos}function Ysi(e){return wca(e),(e.flags&1048576)!==0}function wca(e){e.flags&2097152||((e.flags&262144||HD(e,Ysi))&&(e.flags|=1048576),e.flags|=2097152)}function kse(e){for(;e&&e.kind!==307;)e=e.parent;return e}function dfe(e){return e===void 0?!0:e.pos===e.end&&e.pos>=0&&e.kind!==1}function vAr(e){return!dfe(e)}function OCt(e,t,r){if(dfe(e))return e.pos;if(Qsi(e)||e.kind===12)return YU((t??kse(e)).text,e.pos,!1,!0);if(r&&Afe(e))return OCt(e.jsDoc[0],t);if(e.kind===352){t??(t=kse(e));let s=YAr(woi(e,t));if(s)return OCt(s,t,r)}return YU((t??kse(e)).text,e.pos,!1,!1,Gca(e))}function Jni(e,t,r=!1){return AYe(e.text,t,r)}function Tca(e){return!!Tsi(e,qua)}function AYe(e,t,r=!1){if(dfe(t))return"";let s=e.substring(r?t.pos:YU(e,t.pos),t.end);return Tca(t)&&(s=s.split(/\r\n|\n|\r/).map(a=>a.replace(/^\s*\*/,"").trimStart()).join(` -`)),s}function hSe(e){let t=e.emitNode;return t&&t.flags||0}function Nca(e,t,r){_o.assertGreaterThanOrEqual(t,0),_o.assertGreaterThanOrEqual(r,0),_o.assertLessThanOrEqual(t,e.length),_o.assertLessThanOrEqual(t+r,e.length)}function xCt(e){return e.kind===244&&e.expression.kind===11}function sdr(e){return!!(hSe(e)&2097152)}function Uni(e){return sdr(e)&&Coi(e)}function Rca(e){return mh(e.name)&&!e.initializer}function Kni(e){return sdr(e)&&zCt(e)&&MAr(e.declarationList.declarations,Rca)}function Dca(e,t){let r=e.kind===169||e.kind===168||e.kind===218||e.kind===219||e.kind===217||e.kind===260||e.kind===281?QAr(Eaa(t,e.pos),bAr(t,e.pos)):bAr(t,e.pos);return Hz(r,s=>s.end<=e.end&&t.charCodeAt(s.pos+1)===42&&t.charCodeAt(s.pos+2)===42&&t.charCodeAt(s.pos+3)!==47)}function xca(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 kca(e){return e&&e.kind===241&&Vsi(e.parent)}function jni(e){let t=e.kind;return(t===211||t===212)&&e.expression.kind===108}function mfe(e){return!!e&&!!(e.flags&524288)}function Gca(e){return!!e&&!!(e.flags&16777216)}function Fca(e){for(;MCt(e,!0);)e=e.right;return e}function Zca(e){return mh(e)&&e.escapedText==="exports"}function Lca(e){return mh(e)&&e.escapedText==="module"}function Hsi(e){return(Zse(e)||Xsi(e))&&Lca(e.expression)&&yYe(e)==="exports"}function odr(e){let t=Wca(e);return t===5||mfe(e)?t:0}function Vca(e){return cYe(e.arguments)===3&&Zse(e.expression)&&mh(e.expression.expression)&&l9(e.expression.expression)==="Object"&&l9(e.expression.name)==="defineProperty"&&KCt(e.arguments[1])&&_Ye(e.arguments[0],!0)}function Xsi(e){return SYe(e)&&KCt(e.argumentExpression)}function BYe(e,t){return Zse(e)&&(!t&&e.expression.kind===110||mh(e.name)&&_Ye(e.expression,!0))||Jsi(e,t)}function Jsi(e,t){return Xsi(e)&&(!t&&e.expression.kind===110||gdr(e.expression)||BYe(e.expression,!0))}function _Ye(e,t){return gdr(e)||BYe(e,t)}function Wca(e){if(Aoi(e)){if(!Vca(e))return 0;let t=e.arguments[0];return Zca(t)||Hsi(t)?8:BYe(t)&&yYe(t)==="prototype"?9:7}return e.operatorToken.kind!==64||!$si(e.left)||Pca(Fca(e))?0:_Ye(e.left.expression,!0)&&yYe(e.left)==="prototype"&&goi(Mca(e))?6:Oca(e.left)}function Pca(e){return Zua(e)&&bSe(e.expression)&&e.expression.text==="0"}function adr(e){if(Zse(e))return e.name;let t=ldr(e.argumentExpression);return bSe(t)||idr(t)?t:e}function yYe(e){let t=adr(e);if(t){if(mh(t))return t.escapedText;if(idr(t)||bSe(t))return cSe(t.text)}}function Oca(e){if(e.expression.kind===110)return 4;if(Hsi(e))return 2;if(_Ye(e.expression,!0)){if(Cla(e.expression))return 3;let t=e;for(;!mh(t.expression);)t=t.expression;let r=t.expression;if((r.escapedText==="exports"||r.escapedText==="module"&&yYe(t)==="exports")&&BYe(e))return 1;if(_Ye(e,!0)||SYe(e)&&rla(e))return 5}return 0}function Mca(e){for(;ySe(e.right);)e=e.right;return e.right}function Qca(e){return foi(e)&&ySe(e.expression)&&odr(e.expression)!==0&&ySe(e.expression.right)&&(e.expression.right.operatorToken.kind===57||e.expression.right.operatorToken.kind===61)?e.expression.right.right:void 0}function Yca(e){switch(e.kind){case 243:let t=SAr(e);return t&&t.initializer;case 172:return e.initializer;case 303:return e.initializer}}function SAr(e){return zCt(e)?YAr(e.declarationList.declarations):void 0}function Hca(e){return EYe(e)&&e.body&&e.body.kind===267?e.body:void 0}function cdr(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 Xca(e,t){let r;xca(e)&&bca(e)&&Afe(e.initializer)&&(r=c9(r,zni(e,e.initializer.jsDoc)));let s=e;for(;s&&s.parent;){if(Afe(s)&&(r=c9(r,zni(e,s.jsDoc))),s.kind===169){r=c9(r,(t?Laa:Zaa)(s));break}if(s.kind===168){r=c9(r,(t?Waa:Vaa)(s));break}s=Uca(s)}return r||n2}function zni(e,t){let r=Boa(t);return $ii(t,s=>{if(s===r){let a=Hz(s.tags,o=>Jca(e,o));return s.tags===a?[s]:a}else return Hz(s.tags,cga)})}function Jca(e,t){return!(Cdr(t)||dga(t))||!t.parent||!voi(t.parent)||!fdr(t.parent.parent)||t.parent.parent===e}function Uca(e){let t=e.parent;if(t.kind===303||t.kind===277||t.kind===172||t.kind===244&&e.kind===211||t.kind===253||Hca(t)||MCt(e))return t;if(t.parent&&(SAr(t.parent)===e||MCt(t)))return t.parent;if(t.parent&&t.parent.parent&&(SAr(t.parent.parent)||Yca(t.parent.parent)===e||Qca(t.parent.parent)))return t.parent.parent}function ldr(e,t){return mdr(e,t?-2147483647:1)}function Kca(e){let t=jca(e);if(t&&mfe(e)){let r=Paa(e);if(r)return r.class}return t}function jca(e){let t=udr(e.heritageClauses,96);return t&&t.types.length>0?t.types[0]:void 0}function zca(e){if(mfe(e))return Oaa(e).map(t=>t.class);{let t=udr(e.heritageClauses,119);return t?.types}}function qca(e){return Idr(e)?$ca(e)||n2:CSe(e)&&QAr(hAr(Kca(e)),zca(e))||n2}function $ca(e){let t=udr(e.heritageClauses,96);return t?t.types:void 0}function udr(e,t){if(e){for(let r of e)if(r.token===t)return r}}function Rse(e){return 83<=e&&e<=165}function ela(e){return 19<=e&&e<=79}function aAr(e){return Rse(e)||ela(e)}function KCt(e){return idr(e)||bSe(e)}function tla(e){return Lua(e)&&(e.operator===40||e.operator===41)&&bSe(e.operand)}function rla(e){if(!(e.kind===167||e.kind===212))return!1;let t=SYe(e)?ldr(e.argumentExpression):e.expression;return!KCt(t)&&!tla(t)}function nla(e){return BAr(e)?l9(e):Boi(e)?Xla(e):e.text}function lSe(e){return bYe(e.pos)||bYe(e.end)}function cAr(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 lAr(e){return!!((e.templateFlags||0)&2048)}function ila(e){return e&&!!(sua(e)?lAr(e):lAr(e.head)||mR(e.templateSpans,t=>lAr(t.literal)))}var yhl=new Map(Object.entries({" ":"\\t","\v":"\\v","\f":"\\f","\b":"\\b","\r":"\\r","\n":"\\n","\\":"\\\\",'"':'\\"',"'":"\\'","`":"\\`","\u2028":"\\u2028","\u2029":"\\u2029","\x85":"\\u0085","\r\n":"\\r\\n"})),bhl=new Map(Object.entries({'"':""","'":"'"}));function sla(e){return!!e&&e.kind===80&&ola(e)}function ola(e){return e.escapedText==="this"}function vYe(e,t){return!!lla(e,t)}function ala(e){return vYe(e,256)}function cla(e){return vYe(e,32768)}function lla(e,t){return gla(e)&t}function ula(e,t,r){return e.kind>=0&&e.kind<=165?0:(e.modifierFlagsCache&536870912||(e.modifierFlagsCache=jsi(e)|536870912),r||t&&mfe(e)?(!(e.modifierFlagsCache&268435456)&&e.parent&&(e.modifierFlagsCache|=Usi(e)|268435456),Ksi(e.modifierFlagsCache)):Ala(e.modifierFlagsCache))}function gla(e){return ula(e,!1)}function Usi(e){let t=0;return e.parent&&!QCt(e)&&(mfe(e)&&(Maa(e)&&(t|=8388608),Qaa(e)&&(t|=16777216),Yaa(e)&&(t|=33554432),Haa(e)&&(t|=67108864),Xaa(e)&&(t|=134217728)),Jaa(e)&&(t|=65536)),t}function Ala(e){return e&65535}function Ksi(e){return e&131071|(e&260046848)>>>23}function dla(e){return Ksi(Usi(e))}function pla(e){return jsi(e)|dla(e)}function jsi(e){let t=hdr(e)?zW(e.modifiers):0;return(e.flags&8||e.kind===80&&e.flags&4096)&&(t|=32),t}function zW(e){let t=0;if(e)for(let r of e)t|=zsi(r.kind);return t}function zsi(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 fla(e){return e===76||e===77||e===78}function qsi(e){return e>=64&&e<=79}function MCt(e,t){return ySe(e)&&(t?e.operatorToken.kind===64:qsi(e.operatorToken.kind))&&mSe(e.left)}function gdr(e){return e.kind===80||Ila(e)}function Ila(e){return Zse(e)&&mh(e.name)&&gdr(e.expression)}function Cla(e){return BYe(e)&&yYe(e)==="prototype"}function uAr(e){return e.flags&3899393?e.objectFlags:0}function mla(e){let t;return HD(e,r=>{vAr(r)&&(t=r)},r=>{for(let s=r.length-1;s>=0;s--)if(vAr(r[s])){t=r[s];break}}),t}function hla(e){return e>=182&&e<=205||e===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}function $si(e){return e.kind===211||e.kind===212}function _la(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 yla(e,t){this.flags=t,(_o.isDebugging||RCt)&&(this.checker=e)}function bla(e,t){this.flags=t,_o.isDebugging&&(this.checker=e)}function gAr(e,t,r){this.pos=t,this.end=r,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 Ela(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.emitNode=void 0}function Bla(e,t,r){this.pos=t,this.end=r,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 vla(e,t,r){this.fileName=e,this.text=t,this.skipTrivia=r||(s=>s)}var r2={getNodeConstructor:()=>gAr,getTokenConstructor:()=>Ela,getIdentifierConstructor:()=>Bla,getPrivateIdentifierConstructor:()=>gAr,getSourceFileConstructor:()=>gAr,getSymbolConstructor:()=>_la,getTypeConstructor:()=>yla,getSignatureConstructor:()=>bla,getSourceMapSourceConstructor:()=>vla},Sla=[];function wla(e){Object.assign(r2,e),$W(Sla,t=>t(r2))}function Tla(e,t){return e.replace(/\{(\d+)\}/g,(r,s)=>""+_o.checkDefined(t[+s]))}var qni;function Nla(e){return qni&&qni[e.key]||e.message}function iSe(e,t,r,s,a,...o){r+s>t.length&&(s=t.length-r),Nca(t,r,s);let g=Nla(a);return mR(o)&&(g=Tla(g,o)),{file:void 0,start:r,length:s,messageText:g,category:a.category,code:a.code,reportsUnnecessary:a.reportsUnnecessary,fileName:e}}function Rla(e){return e.file===void 0&&e.start!==void 0&&e.length!==void 0&&typeof e.fileName=="string"}function eoi(e,t){let r=t.fileName||"",s=t.text.length;_o.assertEqual(e.fileName,r),_o.assertLessThanOrEqual(e.start,s),_o.assertLessThanOrEqual(e.start+e.length,s);let a={file:t,start:e.start,length:e.length,messageText:e.messageText,category:e.category,code:e.code,reportsUnnecessary:e.reportsUnnecessary};if(e.relatedInformation){a.relatedInformation=[];for(let o of e.relatedInformation)Rla(o)&&o.fileName===r?(_o.assertLessThanOrEqual(o.start,s),_o.assertLessThanOrEqual(o.start+o.length,s),a.relatedInformation.push(eoi(o,t))):a.relatedInformation.push(o)}return a}function nfe(e,t){let r=[];for(let s of e)r.push(eoi(s,t));return r}function $ni(e){return e===4||e===2||e===1||e===6?1:0}var X_={allowImportingTsExtensions:{dependencies:["rewriteRelativeImportExtensions"],computeValue:e=>!!(e.allowImportingTsExtensions||e.rewriteRelativeImportExtensions)},target:{dependencies:["module"],computeValue:e=>(e.target===0?void 0:e.target)??(e.module===100&&9||e.module===199&&99||1)},module:{dependencies:["target"],computeValue:e=>typeof e.module=="number"?e.module:X_.target.computeValue(e)>=2?5:1},moduleResolution:{dependencies:["module","target"],computeValue:e=>{let t=e.moduleResolution;if(t===void 0)switch(X_.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;break}return t}},moduleDetection:{dependencies:["module","target"],computeValue:e=>e.moduleDetection||(X_.module.computeValue(e)===100||X_.module.computeValue(e)===199?3:2)},isolatedModules:{dependencies:["verbatimModuleSyntax"],computeValue:e=>!!(e.isolatedModules||e.verbatimModuleSyntax)},esModuleInterop:{dependencies:["module","target"],computeValue:e=>{if(e.esModuleInterop!==void 0)return e.esModuleInterop;switch(X_.module.computeValue(e)){case 100:case 199:case 200:return!0}return!1}},allowSyntheticDefaultImports:{dependencies:["module","target","moduleResolution"],computeValue:e=>e.allowSyntheticDefaultImports!==void 0?e.allowSyntheticDefaultImports:X_.esModuleInterop.computeValue(e)||X_.module.computeValue(e)===4||X_.moduleResolution.computeValue(e)===100},resolvePackageJsonExports:{dependencies:["moduleResolution"],computeValue:e=>{let t=X_.moduleResolution.computeValue(e);if(!eii(t))return!1;if(e.resolvePackageJsonExports!==void 0)return e.resolvePackageJsonExports;switch(t){case 3:case 99:case 100:return!0}return!1}},resolvePackageJsonImports:{dependencies:["moduleResolution","resolvePackageJsonExports"],computeValue:e=>{let t=X_.moduleResolution.computeValue(e);if(!eii(t))return!1;if(e.resolvePackageJsonExports!==void 0)return e.resolvePackageJsonExports;switch(t){case 3:case 99:case 100:return!0}return!1}},resolveJsonModule:{dependencies:["moduleResolution","module","target"],computeValue:e=>e.resolveJsonModule!==void 0?e.resolveJsonModule:X_.moduleResolution.computeValue(e)===100},declaration:{dependencies:["composite"],computeValue:e=>!!(e.declaration||e.composite)},preserveConstEnums:{dependencies:["isolatedModules","verbatimModuleSyntax"],computeValue:e=>!!(e.preserveConstEnums||X_.isolatedModules.computeValue(e))},incremental:{dependencies:["composite"],computeValue:e=>!!(e.incremental||e.composite)},declarationMap:{dependencies:["declaration","composite"],computeValue:e=>!!(e.declarationMap&&X_.declaration.computeValue(e))},allowJs:{dependencies:["checkJs"],computeValue:e=>e.allowJs===void 0?!!e.checkJs:e.allowJs},useDefineForClassFields:{dependencies:["target","module"],computeValue:e=>e.useDefineForClassFields===void 0?X_.target.computeValue(e)>=9:e.useDefineForClassFields},noImplicitAny:{dependencies:["strict"],computeValue:e=>Oz(e,"noImplicitAny")},noImplicitThis:{dependencies:["strict"],computeValue:e=>Oz(e,"noImplicitThis")},strictNullChecks:{dependencies:["strict"],computeValue:e=>Oz(e,"strictNullChecks")},strictFunctionTypes:{dependencies:["strict"],computeValue:e=>Oz(e,"strictFunctionTypes")},strictBindCallApply:{dependencies:["strict"],computeValue:e=>Oz(e,"strictBindCallApply")},strictPropertyInitialization:{dependencies:["strict"],computeValue:e=>Oz(e,"strictPropertyInitialization")},strictBuiltinIteratorReturn:{dependencies:["strict"],computeValue:e=>Oz(e,"strictBuiltinIteratorReturn")},alwaysStrict:{dependencies:["strict"],computeValue:e=>Oz(e,"alwaysStrict")},useUnknownInCatchVariables:{dependencies:["strict"],computeValue:e=>Oz(e,"useUnknownInCatchVariables")}},Ehl=X_.allowImportingTsExtensions.computeValue,Bhl=X_.target.computeValue,vhl=X_.module.computeValue,Shl=X_.moduleResolution.computeValue,whl=X_.moduleDetection.computeValue,Thl=X_.isolatedModules.computeValue,Nhl=X_.esModuleInterop.computeValue,Rhl=X_.allowSyntheticDefaultImports.computeValue,Dhl=X_.resolvePackageJsonExports.computeValue,xhl=X_.resolvePackageJsonImports.computeValue,khl=X_.resolveJsonModule.computeValue,Ghl=X_.declaration.computeValue,Fhl=X_.preserveConstEnums.computeValue,Zhl=X_.incremental.computeValue,Lhl=X_.declarationMap.computeValue,Vhl=X_.allowJs.computeValue,Whl=X_.useDefineForClassFields.computeValue;function eii(e){return e>=3&&e<=99||e===100}function Oz(e,t){return e[t]===void 0?!!e.strict:!!e[t]}function Dla(e){return vca(targetOptionDeclaration.type,(t,r)=>t===e?r:void 0)}var xla=["node_modules","bower_components","jspm_packages"],toi=`(?!(${xla.join("|")})(/|$))`,kla={singleAsteriskRegexFragment:"([^./]|(\\.(?!min\\.js$))?)*",doubleAsteriskRegexFragment:`(/${toi}[^/.][^/]*)*?`,replaceWildcardCharacter:e=>roi(e,kla.singleAsteriskRegexFragment)},Gla={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:`(/${toi}[^/.][^/]*)*?`,replaceWildcardCharacter:e=>roi(e,Gla.singleAsteriskRegexFragment)};function roi(e,t){return e==="*"?t:e==="?"?"[^/]":"\\"+e}function Fla(e,t){return t||Zla(e)||3}function Zla(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 noi=[[".ts",".tsx",".d.ts"],[".cts",".d.cts"],[".mts",".d.mts"]],Phl=qii(noi),Ohl=[...noi,[".json"]],Lla=[[".js",".jsx"],[".mjs"],[".cjs"]],Mhl=qii(Lla),Vla=[[".ts",".tsx",".d.ts",".js",".jsx"],[".cts",".d.cts",".cjs"],[".mts",".d.mts",".mjs"]],Qhl=[...Vla,[".json"]],Wla=[".d.ts",".d.cts",".d.mts"];function bYe(e){return!(e>=0)}function SCt(e,...t){return t.length&&(e.relatedInformation||(e.relatedInformation=[]),_o.assert(e.relatedInformation!==n2,"Diagnostic had empty array singleton for related info, but is still being constructed!"),e.relatedInformation.push(...t)),e}function Pla(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:let m=e.length-1,y=0;for(;e.charCodeAt(y)===48;)y++;return e.slice(y,m)||"0"}let r=2,s=e.length-1,a=(s-r)*t,o=new Uint16Array((a>>>4)+(a&15?1:0));for(let m=s-1,y=0;m>=r;m--,y+=t){let B=y>>>4,v=e.charCodeAt(m),G=(v<=57?v-48:10+v-(v<=70?65:97))<<(y&15);o[B]|=G;let T=G>>>16;T&&(o[B+1]|=T)}let g="",p=o.length-1,f=!0;for(;f;){let m=0;f=!1;for(let y=p;y>=0;y--){let B=m<<16|o[y],v=B/10|0;o[y]=v,m=B-v*10,v&&!f&&(p=y,f=!0)}g=m+g}return g}function Ola({negative:e,base10Value:t}){return(e&&t!=="0"?"-":"")+t}function wAr(e,t){return e.pos=t,e}function Mla(e,t){return e.end=t,e}function Gse(e,t,r){return Mla(wAr(e,t),r)}function tii(e,t,r){return Gse(e,t,t+r)}function Adr(e,t){return e&&t&&(e.parent=t),e}function Qla(e,t){if(!e)return e;return Rii(e,Qsi(e)?r:a),e;function r(o,g){if(t&&o.parent===g)return"skip";Adr(o,g)}function s(o){if(Afe(o))for(let g of o.jsDoc)r(g,o),Rii(g,r)}function a(o,g){return r(o,g)||s(o)}}function Yla(e){return!!(e.flags&262144&&e.isThisType)}function Hla(e){var t;return((t=getSnippetElement(e))==null?void 0:t.kind)===0}function Xla(e){return`${l9(e.namespace)}:${l9(e.name)}`}var Yhl=String.prototype.replace,TAr=["assert","assert/strict","async_hooks","buffer","child_process","cluster","console","constants","crypto","dgram","diagnostics_channel","dns","dns/promises","domain","events","fs","fs/promises","http","http2","https","inspector","inspector/promises","module","net","os","path","path/posix","path/win32","perf_hooks","process","punycode","querystring","readline","readline/promises","repl","stream","stream/consumers","stream/promises","stream/web","string_decoder","sys","test/mock_loader","timers","timers/promises","tls","trace_events","tty","url","util","util/types","v8","vm","wasi","worker_threads","zlib"],Hhl=new Set(TAr),Jla=new Set(["node:sea","node:sqlite","node:test","node:test/reporters"]),Xhl=new Set([...TAr,...TAr.map(e=>`node:${e}`),...Jla]);function Ula(){let e,t,r,s,a;return{createBaseSourceFileNode:o,createBaseIdentifierNode:g,createBasePrivateIdentifierNode:p,createBaseTokenNode:f,createBaseNode:m};function o(y){return new(a||(a=r2.getSourceFileConstructor()))(y,-1,-1)}function g(y){return new(r||(r=r2.getIdentifierConstructor()))(y,-1,-1)}function p(y){return new(s||(s=r2.getPrivateIdentifierConstructor()))(y,-1,-1)}function f(y){return new(t||(t=r2.getTokenConstructor()))(y,-1,-1)}function m(y){return new(e||(e=r2.getNodeConstructor()))(y,-1,-1)}}var Kla={getParenthesizeLeftSideOfBinaryForOperator:e=>gE,getParenthesizeRightSideOfBinaryForOperator:e=>gE,parenthesizeLeftSideOfBinary:(e,t)=>t,parenthesizeRightSideOfBinary:(e,t,r)=>r,parenthesizeExpressionOfComputedPropertyName:gE,parenthesizeConditionOfConditionalExpression:gE,parenthesizeBranchOfConditionalExpression:gE,parenthesizeExpressionOfExportDefault:gE,parenthesizeExpressionOfNew:e=>QU(e,mSe),parenthesizeLeftSideOfAccess:e=>QU(e,mSe),parenthesizeOperandOfPostfixUnary:e=>QU(e,mSe),parenthesizeOperandOfPrefixUnary:e=>QU(e,dca),parenthesizeExpressionsOfCommaDelimitedList:e=>QU(e,Dse),parenthesizeExpressionForDisallowedComma:gE,parenthesizeExpressionOfExpressionStatement:gE,parenthesizeConciseBodyOfArrowFunction:gE,parenthesizeCheckTypeOfConditionalType:gE,parenthesizeExtendsTypeOfConditionalType:gE,parenthesizeConstituentTypesOfUnionType:e=>QU(e,Dse),parenthesizeConstituentTypeOfUnionType:gE,parenthesizeConstituentTypesOfIntersectionType:e=>QU(e,Dse),parenthesizeConstituentTypeOfIntersectionType:gE,parenthesizeOperandOfTypeOperator:gE,parenthesizeOperandOfReadonlyTypeOperator:gE,parenthesizeNonArrayTypeOfPostfixType:gE,parenthesizeElementTypesOfTupleType:e=>QU(e,Dse),parenthesizeElementTypeOfTupleType:gE,parenthesizeTypeOfOptionalType:gE,parenthesizeTypeArguments:e=>e&&QU(e,Dse),parenthesizeLeadingTypeArgument:gE},wCt=0,jla=[];function ddr(e,t){let r=e&8?gE:tua,s=xni(()=>e&1?Kla:createParenthesizerRules(U)),a=xni(()=>e&2?nullNodeConverters:createNodeConverters(U)),o=bM(K=>(Ce,Ze)=>ut(Ce,K,Ze)),g=bM(K=>Ce=>ie(K,Ce)),p=bM(K=>Ce=>J(Ce,K)),f=bM(K=>()=>rN(K)),m=bM(K=>Ce=>Bh(K,Ce)),y=bM(K=>(Ce,Ze)=>Hw(K,Ce,Ze)),B=bM(K=>(Ce,Ze)=>fx(K,Ce,Ze)),v=bM(K=>(Ce,Ze)=>nN(K,Ce,Ze)),G=bM(K=>(Ce,Ze)=>W0(K,Ce,Ze)),T=bM(K=>(Ce,Ze,pt)=>v1(K,Ce,Ze,pt)),O=bM(K=>(Ce,Ze,pt)=>gd(K,Ce,Ze,pt)),X=bM(K=>(Ce,Ze,pt,hr)=>pp(K,Ce,Ze,pt,hr)),U={get parenthesizer(){return s()},get converters(){return a()},baseFactory:t,flags:e,createNodeArray:le,createNumericLiteral:pe,createBigIntLiteral:he,createStringLiteral:Te,createStringLiteralFromNode:ke,createRegularExpressionLiteral:x,createLiteralLikeNode:et,createIdentifier:Xe,createTempVariable:ft,createLoopVariable:Gt,createUniqueName:er,getGeneratedNameForNode:Ur,createPrivateIdentifier:dr,createUniquePrivateName:or,getGeneratedPrivateNameForNode:Fr,createToken:Or,createSuper:In,createThis:Br,createNull:tr,createTrue:gn,createFalse:Gn,createModifier:we,createModifiersFromModifierFlags:Zi,createQualifiedName:Za,updateQualifiedName:ka,createComputedPropertyName:Qs,updateComputedPropertyName:lr,createTypeParameterDeclaration:ga,updateTypeParameterDeclaration:vi,createParameterDeclaration:Qu,updateParameterDeclaration:Yu,createDecorator:YA,updateDecorator:ud,createPropertySignature:TA,updatePropertySignature:Ld,createPropertyDeclaration:Gr,updatePropertyDeclaration:Ir,createMethodSignature:nn,updateMethodSignature:Cn,createMethodDeclaration:Vn,updateMethodDeclaration:Ji,createConstructorDeclaration:pa,updateConstructorDeclaration:sg,createGetAccessorDeclaration:Cg,updateGetAccessorDeclaration:Zu,createSetAccessorDeclaration:wi,updateSetAccessorDeclaration:ts,createCallSignature:Ga,updateCallSignature:$s,createConstructSignature:xl,updateConstructSignature:qo,createIndexSignature:Na,updateIndexSignature:wu,createClassStaticBlockDeclaration:Ws,updateClassStaticBlockDeclaration:Ko,createTemplateLiteralTypeSpan:Dg,updateTemplateLiteralTypeSpan:hl,createKeywordTypeNode:au,createTypePredicateNode:Lg,updateTypePredicateNode:cf,createTypeReferenceNode:Td,updateTypeReferenceNode:ei,createFunctionTypeNode:Qa,updateFunctionTypeNode:Rt,createConstructorTypeNode:Hu,updateConstructorTypeNode:on,createTypeQueryNode:cA,updateTypeQueryNode:HA,createTypeLiteralNode:No,updateTypeLiteralNode:Hl,createArrayTypeNode:Ff,updateArrayTypeNode:Vd,createTupleTypeNode:bA,updateTupleTypeNode:Os,createNamedTupleMember:Hi,updateNamedTupleMember:ec,createOptionalTypeNode:ll,updateOptionalTypeNode:Ts,createRestTypeNode:NA,updateRestTypeNode:Ud,createUnionTypeNode:Xa,updateUnionTypeNode:cm,createIntersectionTypeNode:eo,updateIntersectionTypeNode:ps,createConditionalTypeNode:oc,updateConditionalTypeNode:TC,createInferTypeNode:pI,updateInferTypeNode:SI,createImportTypeNode:LA,updateImportTypeNode:lf,createParenthesizedType:za,updateParenthesizedType:iu,createThisTypeNode:ii,createTypeOperatorNode:NC,updateTypeOperatorNode:Jh,createIndexedAccessTypeNode:Tm,updateIndexedAccessTypeNode:_l,createMappedTypeNode:Og,updateMappedTypeNode:sp,createLiteralTypeNode:lm,updateLiteralTypeNode:ch,createTemplateLiteralType:Bl,updateTemplateLiteralType:il,createObjectBindingPattern:Xl,updateObjectBindingPattern:Wp,createArrayBindingPattern:uC,updateArrayBindingPattern:fs,createBindingElement:Ao,updateBindingElement:Do,createArrayLiteralExpression:zl,updateArrayLiteralExpression:Nr,createObjectLiteralExpression:Nn,updateObjectLiteralExpression:Di,createPropertyAccessExpression:e&4?(K,Ce)=>setEmitFlags(Ks(K,Ce),262144):Ks,updatePropertyAccessExpression:Li,createPropertyAccessChain:e&4?(K,Ce,Ze)=>setEmitFlags(Zl(K,Ce,Ze),262144):Zl,updatePropertyAccessChain:RA,createElementAccessExpression:WI,updateElementAccessExpression:pl,createElementAccessChain:Qm,updateElementAccessChain:f1,createCallExpression:eA,updateCallExpression:Nm,createCallChain:lh,updateCallChain:Oy,createNewExpression:vp,updateNewExpression:tA,createTaggedTemplateExpression:R0,updateTaggedTemplateExpression:_h,createTypeAssertion:ly,updateTypeAssertion:uc,createParenthesizedExpression:b_,updateParenthesizedExpression:Sb,createFunctionExpression:um,updateFunctionExpression:uh,createArrowFunction:pg,updateArrowFunction:gm,createDeleteExpression:wb,updateDeleteExpression:Rm,createTypeOfExpression:PI,updateTypeOfExpression:Ef,createVoidExpression:eI,updateVoidExpression:Zf,createAwaitExpression:hE,updateAwaitExpression:uy,createPrefixUnaryExpression:ie,updatePrefixUnaryExpression:w,createPostfixUnaryExpression:J,updatePostfixUnaryExpression:ye,createBinaryExpression:ut,updateBinaryExpression:Zr,createConditionalExpression:wr,updateConditionalExpression:Yn,createTemplateExpression:Dn,updateTemplateExpression:Po,createTemplateHead:lA,createTemplateMiddle:tI,createTemplateTail:Kd,createNoSubstitutionTemplateLiteral:D0,createTemplateLiteralLikeNode:op,createYieldExpression:ya,updateYieldExpression:md,createSpreadElement:fI,updateSpreadElement:Bf,createClassExpression:Uh,updateClassExpression:Ym,createOmittedExpression:IS,createExpressionWithTypeArguments:CS,updateExpressionWithTypeArguments:_E,createAsExpression:x0,updateAsExpression:yE,createNonNullExpression:CB,updateNonNullExpression:J_,createSatisfiesExpression:yh,updateSatisfiesExpression:U_,createNonNullChain:ql,updateNonNullChain:RC,createMetaProperty:Kl,updateMetaProperty:ap,createTemplateSpan:ug,updateTemplateSpan:Hm,createSemicolonClassElement:Tb,createBlock:rA,updateBlock:Iv,createVariableStatement:My,updateVariableStatement:QC,createEmptyStatement:wI,createExpressionStatement:Fi,updateExpressionStatement:Lo,createIfStatement:rs,updateIfStatement:vc,createDoStatement:Ml,updateDoStatement:DA,createWhileStatement:Lf,updateWhileStatement:jd,createForStatement:bh,updateForStatement:u2,createForInStatement:Dm,updateForInStatement:gy,createForOfStatement:E_,updateForOfStatement:Mi,createContinueStatement:Ay,updateContinueStatement:bE,createBreakStatement:uf,updateBreakStatement:g2,createReturnStatement:EE,updateReturnStatement:k0,createWithStatement:mS,updateWithStatement:I1,createSwitchStatement:dc,updateSwitchStatement:at,createLabeledStatement:$t,updateLabeledStatement:Wr,createThrowStatement:vn,updateThrowStatement:os,createTryStatement:wo,updateTryStatement:fg,createDebuggerStatement:mg,createVariableDeclaration:gf,updateVariableDeclaration:rI,createVariableDeclarationList:gC,updateVariableDeclarationList:Nb,createFunctionDeclaration:zT,updateFunctionDeclaration:Cv,createClassDeclaration:Qy,updateClassDeclaration:C1,createInterfaceDeclaration:K_,updateInterfaceDeclaration:Ow,createTypeAliasDeclaration:jp,updateTypeAliasDeclaration:dy,createEnumDeclaration:A2,updateEnumDeclaration:OI,createModuleDeclaration:uA,updateModuleDeclaration:VA,createModuleBlock:Am,updateModuleBlock:Vf,createCaseBlock:Yy,updateCaseBlock:Kh,createNamespaceExportDeclaration:Hy,updateNamespaceExportDeclaration:py,createImportEqualsDeclaration:_S,updateImportEqualsDeclaration:Xy,createImportDeclaration:BE,updateImportDeclaration:mv,createImportClause:Mw,updateImportClause:hv,createAssertClause:xR,updateAssertClause:qT,createAssertEntry:m1,updateAssertEntry:jh,createImportTypeAssertionContainer:Rb,updateImportTypeAssertionContainer:Qw,createImportAttributes:An,updateImportAttributes:h1,createImportAttribute:d2,updateImportAttribute:zh,createNamespaceImport:dp,updateNamespaceImport:Yw,createNamespaceExport:yS,updateNamespaceExport:$T,createNamedImports:Db,updateNamedImports:eN,createImportSpecifier:G0,updateImportSpecifier:iG,createExportAssignment:_1,updateExportAssignment:xb,createExportDeclaration:Eh,updateExportDeclaration:y1,createNamedExports:SE,updateNamedExports:bS,createExportSpecifier:Jy,updateExportSpecifier:qh,createMissingDeclaration:tN,createExternalModuleReference:_v,updateExternalModuleReference:yv,get createJSDocAllType(){return f(312)},get createJSDocUnknownType(){return f(313)},get createJSDocNonNullableType(){return B(315)},get updateJSDocNonNullableType(){return v(315)},get createJSDocNullableType(){return B(314)},get updateJSDocNullableType(){return v(314)},get createJSDocOptionalType(){return m(316)},get updateJSDocOptionalType(){return y(316)},get createJSDocVariadicType(){return m(318)},get updateJSDocVariadicType(){return y(318)},get createJSDocNamepathType(){return m(319)},get updateJSDocNamepathType(){return y(319)},createJSDocFunctionType:Wa,updateJSDocFunctionType:EA,createJSDocTypeLiteral:hd,updateJSDocTypeLiteral:nI,createJSDocTypeExpression:F0,updateJSDocTypeExpression:mB,createJSDocSignature:Pp,updateJSDocSignature:ES,createJSDocTemplateTag:p2,updateJSDocTemplateTag:hB,createJSDocTypedefTag:BS,updateJSDocTypedefTag:bv,createJSDocParameterTag:vh,updateJSDocParameterTag:Oo,createJSDocPropertyTag:Uy,updateJSDocPropertyTag:kb,createJSDocCallbackTag:TI,updateJSDocCallbackTag:j_,createJSDocOverloadTag:f2,updateJSDocOverloadTag:b1,createJSDocAugmentsTag:E1,updateJSDocAugmentsTag:Z0,createJSDocImplementsTag:Sh,updateJSDocImplementsTag:Op,createJSDocSeeTag:L0,updateJSDocSeeTag:_d,createJSDocImportTag:e_,updateJSDocImportTag:aa,createJSDocNameReference:Ev,updateJSDocNameReference:qu,createJSDocMemberName:AC,updateJSDocMemberName:B1,createJSDocLink:I2,updateJSDocLink:Sp,createJSDocLinkCode:eC,updateJSDocLinkCode:yd,createJSDocLinkPlain:V0,updateJSDocLinkPlain:II,get createJSDocTypeTag(){return O(344)},get updateJSDocTypeTag(){return X(344)},get createJSDocReturnTag(){return O(342)},get updateJSDocReturnTag(){return X(342)},get createJSDocThisTag(){return O(343)},get updateJSDocThisTag(){return X(343)},get createJSDocAuthorTag(){return G(330)},get updateJSDocAuthorTag(){return T(330)},get createJSDocClassTag(){return G(332)},get updateJSDocClassTag(){return T(332)},get createJSDocPublicTag(){return G(333)},get updateJSDocPublicTag(){return T(333)},get createJSDocPrivateTag(){return G(334)},get updateJSDocPrivateTag(){return T(334)},get createJSDocProtectedTag(){return G(335)},get updateJSDocProtectedTag(){return T(335)},get createJSDocReadonlyTag(){return G(336)},get updateJSDocReadonlyTag(){return T(336)},get createJSDocOverrideTag(){return G(337)},get updateJSDocOverrideTag(){return T(337)},get createJSDocDeprecatedTag(){return G(331)},get updateJSDocDeprecatedTag(){return T(331)},get createJSDocThrowsTag(){return O(349)},get updateJSDocThrowsTag(){return X(349)},get createJSDocSatisfiesTag(){return O(350)},get updateJSDocSatisfiesTag(){return X(350)},createJSDocEnumTag:_B,updateJSDocEnumTag:z_,createJSDocUnknownTag:v_,updateJSDocUnknownTag:vS,createJSDocText:xA,updateJSDocText:cZ,createJSDocComment:kR,updateJSDocComment:wE,createJsxElement:GR,updateJsxElement:Ad,createJsxSelfClosingElement:fy,updateJsxSelfClosingElement:Af,createJsxOpeningElement:tC,updateJsxOpeningElement:xo,createJsxClosingElement:q_,updateJsxClosingElement:gh,createJsxFragment:Oc,createJsxText:iN,updateJsxText:SS,createJsxOpeningFragment:gA,createJsxJsxClosingFragment:S_,updateJsxFragment:Mc,createJsxAttribute:AA,updateJsxAttribute:Ky,createJsxAttributes:S1,updateJsxAttributes:Iy,createJsxSpreadAttribute:wh,updateJsxSpreadAttribute:wS,createJsxExpression:Xw,updateJsxExpression:dC,createJsxNamespacedName:Ah,updateJsxNamespacedName:Bg,createCaseClause:Th,updateCaseClause:C2,createDefaultClause:fp,updateDefaultClause:TE,createHeritageClause:w1,updateHeritageClause:xm,createCatchClause:iI,updateCatchClause:TS,createPropertyAssignment:$,updatePropertyAssignment:Z,createShorthandPropertyAssignment:FR,updateShorthandPropertyAssignment:k,createSpreadAssignment:ee,updateSpreadAssignment:ve,createEnumMember:xe,updateEnumMember:gt,createSourceFile:nr,updateSourceFile:Eo,createRedirectedSourceFile:Xr,createBundle:vg,updateBundle:nd,createSyntheticExpression:YC,createSyntaxList:Sn,createNotEmittedStatement:vr,createNotEmittedTypeElement:tc,createPartiallyEmittedExpression:Hn,updatePartiallyEmittedExpression:Fo,createCommaListExpression:pc,updateCommaListExpression:Xu,createSyntheticReferenceExpression:Lu,updateSyntheticReferenceExpression:Rc,cloneNode:Xm,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 g(40)},get createPrefixMinus(){return g(41)},get createPrefixIncrement(){return g(46)},get createPrefixDecrement(){return g(47)},get createBitwiseNot(){return g(55)},get createLogicalNot(){return g(54)},get createPostfixIncrement(){return p(46)},get createPostfixDecrement(){return p(47)},createImmediatelyInvokedFunctionExpression:$_,createImmediatelyInvokedArrowFunction:HC,createVoidZero:yB,createExportDefault:ZR,createExternalModuleExport:sG,createTypeCheck:E3,createIsNotTypeCheck:lZ,createMethodCall:sN,createGlobalMethodCall:wp,createFunctionBindCall:Ju,createFunctionCallCall:W9,createFunctionApplyCall:oN,createArraySliceCall:aN,createArrayConcatCall:uZ,createObjectDefinePropertyCall:oG,createObjectGetOwnPropertyDescriptorCall:NS,createReflectGetCall:vf,createReflectSetCall:Ix,createPropertyDescriptor:gZ,createCallBinding:h2,createAssignmentTargetWrapper:Ke,inlineExpressions:Ft,getInternalName:Jr,getLocalName:Un,getExportName:Ki,getDeclarationName:Ss,getNamespaceMemberName:vo,getExternalModuleOrNamespaceExportName:Pa,restoreOuterExpressions:m2,restoreEnclosingLabel:aG,createUseStrictPrologue:Jl,copyPrologue:js,copyStandardPrologue:nA,copyCustomPrologue:Ig,ensureUseStrict:Uu,liftToBlock:NE,mergeLexicalEnvironment:_2,replaceModifiers:y2,replaceDecoratorsAndModifiers:LR,replacePropertyName:B3};return $W(jla,K=>K(U)),U;function le(K,Ce){if(K===void 0||K===n2)K=[];else if(Dse(K)){if(Ce===void 0||K.hasTrailingComma===Ce)return K.transformFlags===void 0&&nii(K),_o.attachNodeArrayDebugInfo(K),K;let hr=K.slice();return hr.pos=K.pos,hr.end=K.end,hr.hasTrailingComma=Ce,hr.transformFlags=K.transformFlags,_o.attachNodeArrayDebugInfo(hr),hr}let Ze=K.length,pt=Ze>=1&&Ze<=4?K.slice():K;return pt.pos=-1,pt.end=-1,pt.hasTrailingComma=!!Ce,pt.transformFlags=0,nii(pt),_o.attachNodeArrayDebugInfo(pt),pt}function ae(K){return t.createBaseNode(K)}function ge(K){let Ce=ae(K);return Ce.symbol=void 0,Ce.localSymbol=void 0,Ce}function fe(K,Ce){return K!==Ce&&(K.typeArguments=Ce.typeArguments),Ys(K,Ce)}function pe(K,Ce=0){let Ze=typeof K=="number"?K+"":K;_o.assert(Ze.charCodeAt(0)!==45,"Negative numbers should be created in combination with createPrefixUnaryExpression");let pt=ge(9);return pt.text=Ze,pt.numericLiteralFlags=Ce,Ce&384&&(pt.transformFlags|=1024),pt}function he(K){let Ce=$r(10);return Ce.text=typeof K=="string"?K:Ola(K)+"n",Ce.transformFlags|=32,Ce}function be(K,Ce){let Ze=ge(11);return Ze.text=K,Ze.singleQuote=Ce,Ze}function Te(K,Ce,Ze){let pt=be(K,Ce);return pt.hasExtendedUnicodeEscape=Ze,Ze&&(pt.transformFlags|=1024),pt}function ke(K){let Ce=be(nla(K),void 0);return Ce.textSourceNode=K,Ce}function x(K){let Ce=$r(14);return Ce.text=K,Ce}function et(K,Ce){switch(K){case 9:return pe(Ce,0);case 10:return he(Ce);case 11:return Te(Ce,void 0);case 12:return iN(Ce,!1);case 13:return iN(Ce,!0);case 14:return x(Ce);case 15:return op(K,Ce,void 0,0)}}function Ue(K){let Ce=t.createBaseIdentifierNode(80);return Ce.escapedText=K,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce.symbol=void 0,Ce}function Je(K,Ce,Ze,pt){let hr=Ue(cSe(K));return setIdentifierAutoGenerate(hr,{flags:Ce,id:wCt,prefix:Ze,suffix:pt}),wCt++,hr}function Xe(K,Ce,Ze){Ce===void 0&&K&&(Ce=hsi(K)),Ce===80&&(Ce=void 0);let pt=Ue(cSe(K));return Ze&&(pt.flags|=256),pt.escapedText==="await"&&(pt.transformFlags|=67108864),pt.flags&256&&(pt.transformFlags|=1024),pt}function ft(K,Ce,Ze,pt){let hr=1;Ce&&(hr|=8);let Zn=Je("",hr,Ze,pt);return K&&K(Zn),Zn}function Gt(K){let Ce=2;return K&&(Ce|=8),Je("",Ce,void 0,void 0)}function er(K,Ce=0,Ze,pt){return _o.assert(!(Ce&7),"Argument out of range: flags"),_o.assert((Ce&48)!==32,"GeneratedIdentifierFlags.FileLevel cannot be set without also setting GeneratedIdentifierFlags.Optimistic"),Je(K,3|Ce,Ze,pt)}function Ur(K,Ce=0,Ze,pt){_o.assert(!(Ce&7),"Argument out of range: flags");let hr=K?BAr(K)?xAr(!1,Ze,K,pt,l9):`generated@${getNodeId(K)}`:"";(Ze||pt)&&(Ce|=16);let Zn=Je(hr,4|Ce,Ze,pt);return Zn.original=K,Zn}function Ot(K){let Ce=t.createBasePrivateIdentifierNode(81);return Ce.escapedText=K,Ce.transformFlags|=16777216,Ce}function dr(K){return ZCt(K,"#")||_o.fail("First character of private identifier must be #: "+K),Ot(cSe(K))}function Ar(K,Ce,Ze,pt){let hr=Ot(cSe(K));return setIdentifierAutoGenerate(hr,{flags:Ce,id:wCt,prefix:Ze,suffix:pt}),wCt++,hr}function or(K,Ce,Ze){K&&!ZCt(K,"#")&&_o.fail("First character of private identifier must be #: "+K);let pt=8|(K?3:1);return Ar(K??"",pt,Ce,Ze)}function Fr(K,Ce,Ze){let pt=BAr(K)?xAr(!0,Ce,K,Ze,l9):`#generated@${getNodeId(K)}`,hr=Ar(pt,4|(Ce||Ze?16:0),Ce,Ze);return hr.original=K,hr}function $r(K){return t.createBaseTokenNode(K)}function Or(K){_o.assert(K>=0&&K<=165,"Invalid token"),_o.assert(K<=15||K>=18,"Invalid token. Use 'createTemplateLiteralLikeNode' to create template literals."),_o.assert(K<=9||K>=15,"Invalid token. Use 'createLiteralLikeNode' to create literals."),_o.assert(K!==80,"Invalid token. Use 'createIdentifier' to create identifiers");let Ce=$r(K),Ze=0;switch(K){case 134:Ze=384;break;case 160:Ze=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:Ze=1;break;case 108:Ze=134218752,Ce.flowNode=void 0;break;case 126:Ze=1024;break;case 129:Ze=16777216;break;case 110:Ze=16384,Ce.flowNode=void 0;break}return Ze&&(Ce.transformFlags|=Ze),Ce}function In(){return Or(108)}function Br(){return Or(110)}function tr(){return Or(106)}function gn(){return Or(112)}function Gn(){return Or(97)}function we(K){return Or(K)}function Zi(K){let Ce=[];return K&32&&Ce.push(we(95)),K&128&&Ce.push(we(138)),K&2048&&Ce.push(we(90)),K&4096&&Ce.push(we(87)),K&1&&Ce.push(we(125)),K&2&&Ce.push(we(123)),K&4&&Ce.push(we(124)),K&64&&Ce.push(we(128)),K&256&&Ce.push(we(126)),K&16&&Ce.push(we(164)),K&8&&Ce.push(we(148)),K&512&&Ce.push(we(129)),K&1024&&Ce.push(we(134)),K&8192&&Ce.push(we(103)),K&16384&&Ce.push(we(147)),Ce.length?Ce:void 0}function Za(K,Ce){let Ze=ae(166);return Ze.left=K,Ze.right=sI(Ce),Ze.transformFlags|=Zo(Ze.left)|uSe(Ze.right),Ze.flowNode=void 0,Ze}function ka(K,Ce,Ze){return K.left!==Ce||K.right!==Ze?Ys(Za(Ce,Ze),K):K}function Qs(K){let Ce=ae(167);return Ce.expression=s().parenthesizeExpressionOfComputedPropertyName(K),Ce.transformFlags|=Zo(Ce.expression)|1024|131072,Ce}function lr(K,Ce){return K.expression!==Ce?Ys(Qs(Ce),K):K}function ga(K,Ce,Ze,pt){let hr=ge(168);return hr.modifiers=pA(K),hr.name=sI(Ce),hr.constraint=Ze,hr.default=pt,hr.transformFlags=1,hr.expression=void 0,hr.jsDoc=void 0,hr}function vi(K,Ce,Ze,pt,hr){return K.modifiers!==Ce||K.name!==Ze||K.constraint!==pt||K.default!==hr?Ys(ga(Ce,Ze,pt,hr),K):K}function Qu(K,Ce,Ze,pt,hr,Zn){let yo=ge(169);return yo.modifiers=pA(K),yo.dotDotDotToken=Ce,yo.name=sI(Ze),yo.questionToken=pt,yo.type=hr,yo.initializer=my(Zn),sla(yo.name)?yo.transformFlags=1:yo.transformFlags=ZA(yo.modifiers)|Zo(yo.dotDotDotToken)|jW(yo.name)|Zo(yo.questionToken)|Zo(yo.initializer)|(yo.questionToken??yo.type?1:0)|(yo.dotDotDotToken??yo.initializer?1024:0)|(zW(yo.modifiers)&31?8192:0),yo.jsDoc=void 0,yo}function Yu(K,Ce,Ze,pt,hr,Zn,yo){return K.modifiers!==Ce||K.dotDotDotToken!==Ze||K.name!==pt||K.questionToken!==hr||K.type!==Zn||K.initializer!==yo?Ys(Qu(Ce,Ze,pt,hr,Zn,yo),K):K}function YA(K){let Ce=ae(170);return Ce.expression=s().parenthesizeLeftSideOfAccess(K,!1),Ce.transformFlags|=Zo(Ce.expression)|1|8192|33554432,Ce}function ud(K,Ce){return K.expression!==Ce?Ys(YA(Ce),K):K}function TA(K,Ce,Ze,pt){let hr=ge(171);return hr.modifiers=pA(K),hr.name=sI(Ce),hr.type=pt,hr.questionToken=Ze,hr.transformFlags=1,hr.initializer=void 0,hr.jsDoc=void 0,hr}function Ld(K,Ce,Ze,pt,hr){return K.modifiers!==Ce||K.name!==Ze||K.questionToken!==pt||K.type!==hr?jr(TA(Ce,Ze,pt,hr),K):K}function jr(K,Ce){return K!==Ce&&(K.initializer=Ce.initializer),Ys(K,Ce)}function Gr(K,Ce,Ze,pt,hr){let Zn=ge(172);Zn.modifiers=pA(K),Zn.name=sI(Ce),Zn.questionToken=Ze&&sii(Ze)?Ze:void 0,Zn.exclamationToken=Ze&&iii(Ze)?Ze:void 0,Zn.type=pt,Zn.initializer=my(hr);let yo=Zn.flags&33554432||zW(Zn.modifiers)&128;return Zn.transformFlags=ZA(Zn.modifiers)|jW(Zn.name)|Zo(Zn.initializer)|(yo||Zn.questionToken||Zn.exclamationToken||Zn.type?1:0)|(ioi(Zn.name)||zW(Zn.modifiers)&256&&Zn.initializer?8192:0)|16777216,Zn.jsDoc=void 0,Zn}function Ir(K,Ce,Ze,pt,hr,Zn){return K.modifiers!==Ce||K.name!==Ze||K.questionToken!==(pt!==void 0&&sii(pt)?pt:void 0)||K.exclamationToken!==(pt!==void 0&&iii(pt)?pt:void 0)||K.type!==hr||K.initializer!==Zn?Ys(Gr(Ce,Ze,pt,hr,Zn),K):K}function nn(K,Ce,Ze,pt,hr,Zn){let yo=ge(173);return yo.modifiers=pA(K),yo.name=sI(Ce),yo.questionToken=Ze,yo.typeParameters=pA(pt),yo.parameters=pA(hr),yo.type=Zn,yo.transformFlags=1,yo.jsDoc=void 0,yo.locals=void 0,yo.nextContainer=void 0,yo.typeArguments=void 0,yo}function Cn(K,Ce,Ze,pt,hr,Zn,yo){return K.modifiers!==Ce||K.name!==Ze||K.questionToken!==pt||K.typeParameters!==hr||K.parameters!==Zn||K.type!==yo?fe(nn(Ce,Ze,pt,hr,Zn,yo),K):K}function Vn(K,Ce,Ze,pt,hr,Zn,yo,Kc){let fA=ge(174);if(fA.modifiers=pA(K),fA.asteriskToken=Ce,fA.name=sI(Ze),fA.questionToken=pt,fA.exclamationToken=void 0,fA.typeParameters=pA(hr),fA.parameters=le(Zn),fA.type=yo,fA.body=Kc,!fA.body)fA.transformFlags=1;else{let Fb=zW(fA.modifiers)&1024,Nh=!!fA.asteriskToken,b2=Fb&&Nh;fA.transformFlags=ZA(fA.modifiers)|Zo(fA.asteriskToken)|jW(fA.name)|Zo(fA.questionToken)|ZA(fA.typeParameters)|ZA(fA.parameters)|Zo(fA.type)|Zo(fA.body)&-67108865|(b2?128:Fb?256:Nh?2048:0)|(fA.questionToken||fA.typeParameters||fA.type?1:0)|1024}return fA.typeArguments=void 0,fA.jsDoc=void 0,fA.locals=void 0,fA.nextContainer=void 0,fA.flowNode=void 0,fA.endFlowNode=void 0,fA.returnFlowNode=void 0,fA}function Ji(K,Ce,Ze,pt,hr,Zn,yo,Kc,fA){return K.modifiers!==Ce||K.asteriskToken!==Ze||K.name!==pt||K.questionToken!==hr||K.typeParameters!==Zn||K.parameters!==yo||K.type!==Kc||K.body!==fA?Hr(Vn(Ce,Ze,pt,hr,Zn,yo,Kc,fA),K):K}function Hr(K,Ce){return K!==Ce&&(K.exclamationToken=Ce.exclamationToken),Ys(K,Ce)}function Ws(K){let Ce=ge(175);return Ce.body=K,Ce.transformFlags=Zo(K)|16777216,Ce.modifiers=void 0,Ce.jsDoc=void 0,Ce.locals=void 0,Ce.nextContainer=void 0,Ce.endFlowNode=void 0,Ce.returnFlowNode=void 0,Ce}function Ko(K,Ce){return K.body!==Ce?ai(Ws(Ce),K):K}function ai(K,Ce){return K!==Ce&&(K.modifiers=Ce.modifiers),Ys(K,Ce)}function pa(K,Ce,Ze){let pt=ge(176);return pt.modifiers=pA(K),pt.parameters=le(Ce),pt.body=Ze,pt.body?pt.transformFlags=ZA(pt.modifiers)|ZA(pt.parameters)|Zo(pt.body)&-67108865|1024:pt.transformFlags=1,pt.typeParameters=void 0,pt.type=void 0,pt.typeArguments=void 0,pt.jsDoc=void 0,pt.locals=void 0,pt.nextContainer=void 0,pt.endFlowNode=void 0,pt.returnFlowNode=void 0,pt}function sg(K,Ce,Ze,pt){return K.modifiers!==Ce||K.parameters!==Ze||K.body!==pt?Fu(pa(Ce,Ze,pt),K):K}function Fu(K,Ce){return K!==Ce&&(K.typeParameters=Ce.typeParameters,K.type=Ce.type),fe(K,Ce)}function Cg(K,Ce,Ze,pt,hr){let Zn=ge(177);return Zn.modifiers=pA(K),Zn.name=sI(Ce),Zn.parameters=le(Ze),Zn.type=pt,Zn.body=hr,Zn.body?Zn.transformFlags=ZA(Zn.modifiers)|jW(Zn.name)|ZA(Zn.parameters)|Zo(Zn.type)|Zo(Zn.body)&-67108865|(Zn.type?1:0):Zn.transformFlags=1,Zn.typeArguments=void 0,Zn.typeParameters=void 0,Zn.jsDoc=void 0,Zn.locals=void 0,Zn.nextContainer=void 0,Zn.flowNode=void 0,Zn.endFlowNode=void 0,Zn.returnFlowNode=void 0,Zn}function Zu(K,Ce,Ze,pt,hr,Zn){return K.modifiers!==Ce||K.name!==Ze||K.parameters!==pt||K.type!==hr||K.body!==Zn?Cl(Cg(Ce,Ze,pt,hr,Zn),K):K}function Cl(K,Ce){return K!==Ce&&(K.typeParameters=Ce.typeParameters),fe(K,Ce)}function wi(K,Ce,Ze,pt){let hr=ge(178);return hr.modifiers=pA(K),hr.name=sI(Ce),hr.parameters=le(Ze),hr.body=pt,hr.body?hr.transformFlags=ZA(hr.modifiers)|jW(hr.name)|ZA(hr.parameters)|Zo(hr.body)&-67108865|(hr.type?1:0):hr.transformFlags=1,hr.typeArguments=void 0,hr.typeParameters=void 0,hr.type=void 0,hr.jsDoc=void 0,hr.locals=void 0,hr.nextContainer=void 0,hr.flowNode=void 0,hr.endFlowNode=void 0,hr.returnFlowNode=void 0,hr}function ts(K,Ce,Ze,pt,hr){return K.modifiers!==Ce||K.name!==Ze||K.parameters!==pt||K.body!==hr?$i(wi(Ce,Ze,pt,hr),K):K}function $i(K,Ce){return K!==Ce&&(K.typeParameters=Ce.typeParameters,K.type=Ce.type),fe(K,Ce)}function Ga(K,Ce,Ze){let pt=ge(179);return pt.typeParameters=pA(K),pt.parameters=pA(Ce),pt.type=Ze,pt.transformFlags=1,pt.jsDoc=void 0,pt.locals=void 0,pt.nextContainer=void 0,pt.typeArguments=void 0,pt}function $s(K,Ce,Ze,pt){return K.typeParameters!==Ce||K.parameters!==Ze||K.type!==pt?fe(Ga(Ce,Ze,pt),K):K}function xl(K,Ce,Ze){let pt=ge(180);return pt.typeParameters=pA(K),pt.parameters=pA(Ce),pt.type=Ze,pt.transformFlags=1,pt.jsDoc=void 0,pt.locals=void 0,pt.nextContainer=void 0,pt.typeArguments=void 0,pt}function qo(K,Ce,Ze,pt){return K.typeParameters!==Ce||K.parameters!==Ze||K.type!==pt?fe(xl(Ce,Ze,pt),K):K}function Na(K,Ce,Ze){let pt=ge(181);return pt.modifiers=pA(K),pt.parameters=pA(Ce),pt.type=Ze,pt.transformFlags=1,pt.jsDoc=void 0,pt.locals=void 0,pt.nextContainer=void 0,pt.typeArguments=void 0,pt}function wu(K,Ce,Ze,pt){return K.parameters!==Ze||K.type!==pt||K.modifiers!==Ce?fe(Na(Ce,Ze,pt),K):K}function Dg(K,Ce){let Ze=ae(204);return Ze.type=K,Ze.literal=Ce,Ze.transformFlags=1,Ze}function hl(K,Ce,Ze){return K.type!==Ce||K.literal!==Ze?Ys(Dg(Ce,Ze),K):K}function au(K){return Or(K)}function Lg(K,Ce,Ze){let pt=ae(182);return pt.assertsModifier=K,pt.parameterName=sI(Ce),pt.type=Ze,pt.transformFlags=1,pt}function cf(K,Ce,Ze,pt){return K.assertsModifier!==Ce||K.parameterName!==Ze||K.type!==pt?Ys(Lg(Ce,Ze,pt),K):K}function Td(K,Ce){let Ze=ae(183);return Ze.typeName=sI(K),Ze.typeArguments=Ce&&s().parenthesizeTypeArguments(le(Ce)),Ze.transformFlags=1,Ze}function ei(K,Ce,Ze){return K.typeName!==Ce||K.typeArguments!==Ze?Ys(Td(Ce,Ze),K):K}function Qa(K,Ce,Ze){let pt=ge(184);return pt.typeParameters=pA(K),pt.parameters=pA(Ce),pt.type=Ze,pt.transformFlags=1,pt.modifiers=void 0,pt.jsDoc=void 0,pt.locals=void 0,pt.nextContainer=void 0,pt.typeArguments=void 0,pt}function Rt(K,Ce,Ze,pt){return K.typeParameters!==Ce||K.parameters!==Ze||K.type!==pt?kl(Qa(Ce,Ze,pt),K):K}function kl(K,Ce){return K!==Ce&&(K.modifiers=Ce.modifiers),fe(K,Ce)}function Hu(...K){return K.length===4?us(...K):K.length===3?og(...K):_o.fail("Incorrect number of arguments specified.")}function us(K,Ce,Ze,pt){let hr=ge(185);return hr.modifiers=pA(K),hr.typeParameters=pA(Ce),hr.parameters=pA(Ze),hr.type=pt,hr.transformFlags=1,hr.jsDoc=void 0,hr.locals=void 0,hr.nextContainer=void 0,hr.typeArguments=void 0,hr}function og(K,Ce,Ze){return us(void 0,K,Ce,Ze)}function on(...K){return K.length===5?Bo(...K):K.length===4?$g(...K):_o.fail("Incorrect number of arguments specified.")}function Bo(K,Ce,Ze,pt,hr){return K.modifiers!==Ce||K.typeParameters!==Ze||K.parameters!==pt||K.type!==hr?fe(Hu(Ce,Ze,pt,hr),K):K}function $g(K,Ce,Ze,pt){return Bo(K,K.modifiers,Ce,Ze,pt)}function cA(K,Ce){let Ze=ae(186);return Ze.exprName=K,Ze.typeArguments=Ce&&s().parenthesizeTypeArguments(Ce),Ze.transformFlags=1,Ze}function HA(K,Ce,Ze){return K.exprName!==Ce||K.typeArguments!==Ze?Ys(cA(Ce,Ze),K):K}function No(K){let Ce=ge(187);return Ce.members=le(K),Ce.transformFlags=1,Ce}function Hl(K,Ce){return K.members!==Ce?Ys(No(Ce),K):K}function Ff(K){let Ce=ae(188);return Ce.elementType=s().parenthesizeNonArrayTypeOfPostfixType(K),Ce.transformFlags=1,Ce}function Vd(K,Ce){return K.elementType!==Ce?Ys(Ff(Ce),K):K}function bA(K){let Ce=ae(189);return Ce.elements=le(s().parenthesizeElementTypesOfTupleType(K)),Ce.transformFlags=1,Ce}function Os(K,Ce){return K.elements!==Ce?Ys(bA(Ce),K):K}function Hi(K,Ce,Ze,pt){let hr=ge(202);return hr.dotDotDotToken=K,hr.name=Ce,hr.questionToken=Ze,hr.type=pt,hr.transformFlags=1,hr.jsDoc=void 0,hr}function ec(K,Ce,Ze,pt,hr){return K.dotDotDotToken!==Ce||K.name!==Ze||K.questionToken!==pt||K.type!==hr?Ys(Hi(Ce,Ze,pt,hr),K):K}function ll(K){let Ce=ae(190);return Ce.type=s().parenthesizeTypeOfOptionalType(K),Ce.transformFlags=1,Ce}function Ts(K,Ce){return K.type!==Ce?Ys(ll(Ce),K):K}function NA(K){let Ce=ae(191);return Ce.type=K,Ce.transformFlags=1,Ce}function Ud(K,Ce){return K.type!==Ce?Ys(NA(Ce),K):K}function Ra(K,Ce,Ze){let pt=ae(K);return pt.types=U.createNodeArray(Ze(Ce)),pt.transformFlags=1,pt}function ys(K,Ce,Ze){return K.types!==Ce?Ys(Ra(K.kind,Ce,Ze),K):K}function Xa(K){return Ra(192,K,s().parenthesizeConstituentTypesOfUnionType)}function cm(K,Ce){return ys(K,Ce,s().parenthesizeConstituentTypesOfUnionType)}function eo(K){return Ra(193,K,s().parenthesizeConstituentTypesOfIntersectionType)}function ps(K,Ce){return ys(K,Ce,s().parenthesizeConstituentTypesOfIntersectionType)}function oc(K,Ce,Ze,pt){let hr=ae(194);return hr.checkType=s().parenthesizeCheckTypeOfConditionalType(K),hr.extendsType=s().parenthesizeExtendsTypeOfConditionalType(Ce),hr.trueType=Ze,hr.falseType=pt,hr.transformFlags=1,hr.locals=void 0,hr.nextContainer=void 0,hr}function TC(K,Ce,Ze,pt,hr){return K.checkType!==Ce||K.extendsType!==Ze||K.trueType!==pt||K.falseType!==hr?Ys(oc(Ce,Ze,pt,hr),K):K}function pI(K){let Ce=ae(195);return Ce.typeParameter=K,Ce.transformFlags=1,Ce}function SI(K,Ce){return K.typeParameter!==Ce?Ys(pI(Ce),K):K}function Bl(K,Ce){let Ze=ae(203);return Ze.head=K,Ze.templateSpans=le(Ce),Ze.transformFlags=1,Ze}function il(K,Ce,Ze){return K.head!==Ce||K.templateSpans!==Ze?Ys(Bl(Ce,Ze),K):K}function LA(K,Ce,Ze,pt,hr=!1){let Zn=ae(205);return Zn.argument=K,Zn.attributes=Ce,Zn.assertions&&Zn.assertions.assertClause&&Zn.attributes&&(Zn.assertions.assertClause=Zn.attributes),Zn.qualifier=Ze,Zn.typeArguments=pt&&s().parenthesizeTypeArguments(pt),Zn.isTypeOf=hr,Zn.transformFlags=1,Zn}function lf(K,Ce,Ze,pt,hr,Zn=K.isTypeOf){return K.argument!==Ce||K.attributes!==Ze||K.qualifier!==pt||K.typeArguments!==hr||K.isTypeOf!==Zn?Ys(LA(Ce,Ze,pt,hr,Zn),K):K}function za(K){let Ce=ae(196);return Ce.type=K,Ce.transformFlags=1,Ce}function iu(K,Ce){return K.type!==Ce?Ys(za(Ce),K):K}function ii(){let K=ae(197);return K.transformFlags=1,K}function NC(K,Ce){let Ze=ae(198);return Ze.operator=K,Ze.type=K===148?s().parenthesizeOperandOfReadonlyTypeOperator(Ce):s().parenthesizeOperandOfTypeOperator(Ce),Ze.transformFlags=1,Ze}function Jh(K,Ce){return K.type!==Ce?Ys(NC(K.operator,Ce),K):K}function Tm(K,Ce){let Ze=ae(199);return Ze.objectType=s().parenthesizeNonArrayTypeOfPostfixType(K),Ze.indexType=Ce,Ze.transformFlags=1,Ze}function _l(K,Ce,Ze){return K.objectType!==Ce||K.indexType!==Ze?Ys(Tm(Ce,Ze),K):K}function Og(K,Ce,Ze,pt,hr,Zn){let yo=ge(200);return yo.readonlyToken=K,yo.typeParameter=Ce,yo.nameType=Ze,yo.questionToken=pt,yo.type=hr,yo.members=Zn&&le(Zn),yo.transformFlags=1,yo.locals=void 0,yo.nextContainer=void 0,yo}function sp(K,Ce,Ze,pt,hr,Zn,yo){return K.readonlyToken!==Ce||K.typeParameter!==Ze||K.nameType!==pt||K.questionToken!==hr||K.type!==Zn||K.members!==yo?Ys(Og(Ce,Ze,pt,hr,Zn,yo),K):K}function lm(K){let Ce=ae(201);return Ce.literal=K,Ce.transformFlags=1,Ce}function ch(K,Ce){return K.literal!==Ce?Ys(lm(Ce),K):K}function Xl(K){let Ce=ae(206);return Ce.elements=le(K),Ce.transformFlags|=ZA(Ce.elements)|1024|524288,Ce.transformFlags&32768&&(Ce.transformFlags|=65664),Ce}function Wp(K,Ce){return K.elements!==Ce?Ys(Xl(Ce),K):K}function uC(K){let Ce=ae(207);return Ce.elements=le(K),Ce.transformFlags|=ZA(Ce.elements)|1024|524288,Ce}function fs(K,Ce){return K.elements!==Ce?Ys(uC(Ce),K):K}function Ao(K,Ce,Ze,pt){let hr=ge(208);return hr.dotDotDotToken=K,hr.propertyName=sI(Ce),hr.name=sI(Ze),hr.initializer=my(pt),hr.transformFlags|=Zo(hr.dotDotDotToken)|jW(hr.propertyName)|jW(hr.name)|Zo(hr.initializer)|(hr.dotDotDotToken?32768:0)|1024,hr.flowNode=void 0,hr}function Do(K,Ce,Ze,pt,hr){return K.propertyName!==Ze||K.dotDotDotToken!==Ce||K.name!==pt||K.initializer!==hr?Ys(Ao(Ce,Ze,pt,hr),K):K}function zl(K,Ce){let Ze=ae(209),pt=K&&gfe(K),hr=le(K,pt&&Wua(pt)?!0:void 0);return Ze.elements=s().parenthesizeExpressionsOfCommaDelimitedList(hr),Ze.multiLine=Ce,Ze.transformFlags|=ZA(Ze.elements),Ze}function Nr(K,Ce){return K.elements!==Ce?Ys(zl(Ce,K.multiLine),K):K}function Nn(K,Ce){let Ze=ge(210);return Ze.properties=le(K),Ze.multiLine=Ce,Ze.transformFlags|=ZA(Ze.properties),Ze.jsDoc=void 0,Ze}function Di(K,Ce){return K.properties!==Ce?Ys(Nn(Ce,K.multiLine),K):K}function na(K,Ce,Ze){let pt=ge(211);return pt.expression=K,pt.questionDotToken=Ce,pt.name=Ze,pt.transformFlags=Zo(pt.expression)|Zo(pt.questionDotToken)|(mh(pt.name)?uSe(pt.name):Zo(pt.name)|536870912),pt.jsDoc=void 0,pt.flowNode=void 0,pt}function Ks(K,Ce){let Ze=na(s().parenthesizeLeftSideOfAccess(K,!1),void 0,sI(Ce));return AAr(K)&&(Ze.transformFlags|=384),Ze}function Li(K,Ce,Ze){return jaa(K)?RA(K,Ce,K.questionDotToken,QU(Ze,mh)):K.expression!==Ce||K.name!==Ze?Ys(Ks(Ce,Ze),K):K}function Zl(K,Ce,Ze){let pt=na(s().parenthesizeLeftSideOfAccess(K,!0),Ce,sI(Ze));return pt.flags|=64,pt.transformFlags|=32,pt}function RA(K,Ce,Ze,pt){return _o.assert(!!(K.flags&64),"Cannot update a PropertyAccessExpression using updatePropertyAccessChain. Use updatePropertyAccess instead."),K.expression!==Ce||K.questionDotToken!==Ze||K.name!==pt?Ys(Zl(Ce,Ze,pt),K):K}function Nd(K,Ce,Ze){let pt=ge(212);return pt.expression=K,pt.questionDotToken=Ce,pt.argumentExpression=Ze,pt.transformFlags|=Zo(pt.expression)|Zo(pt.questionDotToken)|Zo(pt.argumentExpression),pt.jsDoc=void 0,pt.flowNode=void 0,pt}function WI(K,Ce){let Ze=Nd(s().parenthesizeLeftSideOfAccess(K,!1),void 0,e0(Ce));return AAr(K)&&(Ze.transformFlags|=384),Ze}function pl(K,Ce,Ze){return zaa(K)?f1(K,Ce,K.questionDotToken,Ze):K.expression!==Ce||K.argumentExpression!==Ze?Ys(WI(Ce,Ze),K):K}function Qm(K,Ce,Ze){let pt=Nd(s().parenthesizeLeftSideOfAccess(K,!0),Ce,e0(Ze));return pt.flags|=64,pt.transformFlags|=32,pt}function f1(K,Ce,Ze,pt){return _o.assert(!!(K.flags&64),"Cannot update a ElementAccessExpression using updateElementAccessChain. Use updateElementAccess instead."),K.expression!==Ce||K.questionDotToken!==Ze||K.argumentExpression!==pt?Ys(Qm(Ce,Ze,pt),K):K}function fv(K,Ce,Ze,pt){let hr=ge(213);return hr.expression=K,hr.questionDotToken=Ce,hr.typeArguments=Ze,hr.arguments=pt,hr.transformFlags|=Zo(hr.expression)|Zo(hr.questionDotToken)|ZA(hr.typeArguments)|ZA(hr.arguments),hr.typeArguments&&(hr.transformFlags|=1),jni(hr.expression)&&(hr.transformFlags|=16384),hr}function eA(K,Ce,Ze){let pt=fv(s().parenthesizeLeftSideOfAccess(K,!1),void 0,pA(Ce),s().parenthesizeExpressionsOfCommaDelimitedList(le(Ze)));return cua(pt.expression)&&(pt.transformFlags|=8388608),pt}function Nm(K,Ce,Ze,pt){return Qni(K)?Oy(K,Ce,K.questionDotToken,Ze,pt):K.expression!==Ce||K.typeArguments!==Ze||K.arguments!==pt?Ys(eA(Ce,Ze,pt),K):K}function lh(K,Ce,Ze,pt){let hr=fv(s().parenthesizeLeftSideOfAccess(K,!0),Ce,pA(Ze),s().parenthesizeExpressionsOfCommaDelimitedList(le(pt)));return hr.flags|=64,hr.transformFlags|=32,hr}function Oy(K,Ce,Ze,pt,hr){return _o.assert(!!(K.flags&64),"Cannot update a CallExpression using updateCallChain. Use updateCall instead."),K.expression!==Ce||K.questionDotToken!==Ze||K.typeArguments!==pt||K.arguments!==hr?Ys(lh(Ce,Ze,pt,hr),K):K}function vp(K,Ce,Ze){let pt=ge(214);return pt.expression=s().parenthesizeExpressionOfNew(K),pt.typeArguments=pA(Ce),pt.arguments=Ze?s().parenthesizeExpressionsOfCommaDelimitedList(Ze):void 0,pt.transformFlags|=Zo(pt.expression)|ZA(pt.typeArguments)|ZA(pt.arguments)|32,pt.typeArguments&&(pt.transformFlags|=1),pt}function tA(K,Ce,Ze,pt){return K.expression!==Ce||K.typeArguments!==Ze||K.arguments!==pt?Ys(vp(Ce,Ze,pt),K):K}function R0(K,Ce,Ze){let pt=ae(215);return pt.tag=s().parenthesizeLeftSideOfAccess(K,!1),pt.typeArguments=pA(Ce),pt.template=Ze,pt.transformFlags|=Zo(pt.tag)|ZA(pt.typeArguments)|Zo(pt.template)|1024,pt.typeArguments&&(pt.transformFlags|=1),ila(pt.template)&&(pt.transformFlags|=128),pt}function _h(K,Ce,Ze,pt){return K.tag!==Ce||K.typeArguments!==Ze||K.template!==pt?Ys(R0(Ce,Ze,pt),K):K}function ly(K,Ce){let Ze=ae(216);return Ze.expression=s().parenthesizeOperandOfPrefixUnary(Ce),Ze.type=K,Ze.transformFlags|=Zo(Ze.expression)|Zo(Ze.type)|1,Ze}function uc(K,Ce,Ze){return K.type!==Ce||K.expression!==Ze?Ys(ly(Ce,Ze),K):K}function b_(K){let Ce=ae(217);return Ce.expression=K,Ce.transformFlags=Zo(Ce.expression),Ce.jsDoc=void 0,Ce}function Sb(K,Ce){return K.expression!==Ce?Ys(b_(Ce),K):K}function um(K,Ce,Ze,pt,hr,Zn,yo){let Kc=ge(218);Kc.modifiers=pA(K),Kc.asteriskToken=Ce,Kc.name=sI(Ze),Kc.typeParameters=pA(pt),Kc.parameters=le(hr),Kc.type=Zn,Kc.body=yo;let fA=zW(Kc.modifiers)&1024,Fb=!!Kc.asteriskToken,Nh=fA&&Fb;return Kc.transformFlags=ZA(Kc.modifiers)|Zo(Kc.asteriskToken)|jW(Kc.name)|ZA(Kc.typeParameters)|ZA(Kc.parameters)|Zo(Kc.type)|Zo(Kc.body)&-67108865|(Nh?128:fA?256:Fb?2048:0)|(Kc.typeParameters||Kc.type?1:0)|4194304,Kc.typeArguments=void 0,Kc.jsDoc=void 0,Kc.locals=void 0,Kc.nextContainer=void 0,Kc.flowNode=void 0,Kc.endFlowNode=void 0,Kc.returnFlowNode=void 0,Kc}function uh(K,Ce,Ze,pt,hr,Zn,yo,Kc){return K.name!==pt||K.modifiers!==Ce||K.asteriskToken!==Ze||K.typeParameters!==hr||K.parameters!==Zn||K.type!==yo||K.body!==Kc?fe(um(Ce,Ze,pt,hr,Zn,yo,Kc),K):K}function pg(K,Ce,Ze,pt,hr,Zn){let yo=ge(219);yo.modifiers=pA(K),yo.typeParameters=pA(Ce),yo.parameters=le(Ze),yo.type=pt,yo.equalsGreaterThanToken=hr??Or(39),yo.body=s().parenthesizeConciseBodyOfArrowFunction(Zn);let Kc=zW(yo.modifiers)&1024;return yo.transformFlags=ZA(yo.modifiers)|ZA(yo.typeParameters)|ZA(yo.parameters)|Zo(yo.type)|Zo(yo.equalsGreaterThanToken)|Zo(yo.body)&-67108865|(yo.typeParameters||yo.type?1:0)|(Kc?16640:0)|1024,yo.typeArguments=void 0,yo.jsDoc=void 0,yo.locals=void 0,yo.nextContainer=void 0,yo.flowNode=void 0,yo.endFlowNode=void 0,yo.returnFlowNode=void 0,yo}function gm(K,Ce,Ze,pt,hr,Zn,yo){return K.modifiers!==Ce||K.typeParameters!==Ze||K.parameters!==pt||K.type!==hr||K.equalsGreaterThanToken!==Zn||K.body!==yo?fe(pg(Ce,Ze,pt,hr,Zn,yo),K):K}function wb(K){let Ce=ae(220);return Ce.expression=s().parenthesizeOperandOfPrefixUnary(K),Ce.transformFlags|=Zo(Ce.expression),Ce}function Rm(K,Ce){return K.expression!==Ce?Ys(wb(Ce),K):K}function PI(K){let Ce=ae(221);return Ce.expression=s().parenthesizeOperandOfPrefixUnary(K),Ce.transformFlags|=Zo(Ce.expression),Ce}function Ef(K,Ce){return K.expression!==Ce?Ys(PI(Ce),K):K}function eI(K){let Ce=ae(222);return Ce.expression=s().parenthesizeOperandOfPrefixUnary(K),Ce.transformFlags|=Zo(Ce.expression),Ce}function Zf(K,Ce){return K.expression!==Ce?Ys(eI(Ce),K):K}function hE(K){let Ce=ae(223);return Ce.expression=s().parenthesizeOperandOfPrefixUnary(K),Ce.transformFlags|=Zo(Ce.expression)|256|128|2097152,Ce}function uy(K,Ce){return K.expression!==Ce?Ys(hE(Ce),K):K}function ie(K,Ce){let Ze=ae(224);return Ze.operator=K,Ze.operand=s().parenthesizeOperandOfPrefixUnary(Ce),Ze.transformFlags|=Zo(Ze.operand),(K===46||K===47)&&mh(Ze.operand)&&!fSe(Ze.operand)&&!lii(Ze.operand)&&(Ze.transformFlags|=268435456),Ze}function w(K,Ce){return K.operand!==Ce?Ys(ie(K.operator,Ce),K):K}function J(K,Ce){let Ze=ae(225);return Ze.operator=Ce,Ze.operand=s().parenthesizeOperandOfPostfixUnary(K),Ze.transformFlags|=Zo(Ze.operand),mh(Ze.operand)&&!fSe(Ze.operand)&&!lii(Ze.operand)&&(Ze.transformFlags|=268435456),Ze}function ye(K,Ce){return K.operand!==Ce?Ys(J(Ce,K.operator),K):K}function ut(K,Ce,Ze){let pt=ge(226),hr=AZ(Ce),Zn=hr.kind;return pt.left=s().parenthesizeLeftSideOfBinary(Zn,K),pt.operatorToken=hr,pt.right=s().parenthesizeRightSideOfBinary(Zn,pt.left,Ze),pt.transformFlags|=Zo(pt.left)|Zo(pt.operatorToken)|Zo(pt.right),Zn===61?pt.transformFlags|=32:Zn===64?goi(pt.left)?pt.transformFlags|=5248|zt(pt.left):Gua(pt.left)&&(pt.transformFlags|=5120|zt(pt.left)):Zn===43||Zn===68?pt.transformFlags|=512:fla(Zn)&&(pt.transformFlags|=16),Zn===103&&Cfe(pt.left)&&(pt.transformFlags|=536870912),pt.jsDoc=void 0,pt}function zt(K){return Noi(K)?65536:0}function Zr(K,Ce,Ze,pt){return K.left!==Ce||K.operatorToken!==Ze||K.right!==pt?Ys(ut(Ce,Ze,pt),K):K}function wr(K,Ce,Ze,pt,hr){let Zn=ae(227);return Zn.condition=s().parenthesizeConditionOfConditionalExpression(K),Zn.questionToken=Ce??Or(58),Zn.whenTrue=s().parenthesizeBranchOfConditionalExpression(Ze),Zn.colonToken=pt??Or(59),Zn.whenFalse=s().parenthesizeBranchOfConditionalExpression(hr),Zn.transformFlags|=Zo(Zn.condition)|Zo(Zn.questionToken)|Zo(Zn.whenTrue)|Zo(Zn.colonToken)|Zo(Zn.whenFalse),Zn}function Yn(K,Ce,Ze,pt,hr,Zn){return K.condition!==Ce||K.questionToken!==Ze||K.whenTrue!==pt||K.colonToken!==hr||K.whenFalse!==Zn?Ys(wr(Ce,Ze,pt,hr,Zn),K):K}function Dn(K,Ce){let Ze=ae(228);return Ze.head=K,Ze.templateSpans=le(Ce),Ze.transformFlags|=Zo(Ze.head)|ZA(Ze.templateSpans)|1024,Ze}function Po(K,Ce,Ze){return K.head!==Ce||K.templateSpans!==Ze?Ys(Dn(Ce,Ze),K):K}function fc(K,Ce,Ze,pt=0){_o.assert(!(pt&-7177),"Unsupported template flags.");let hr;if(Ze!==void 0&&Ze!==Ce&&(hr=zla(K,Ze),typeof hr=="object"))return _o.fail("Invalid raw text");if(Ce===void 0){if(hr===void 0)return _o.fail("Arguments 'text' and 'rawText' may not both be undefined.");Ce=hr}else hr!==void 0&&_o.assert(Ce===hr,"Expected argument 'text' to be the normalized (i.e. 'cooked') version of argument 'rawText'.");return Ce}function Xc(K){let Ce=1024;return K&&(Ce|=128),Ce}function Yo(K,Ce,Ze,pt){let hr=$r(K);return hr.text=Ce,hr.rawText=Ze,hr.templateFlags=pt&7176,hr.transformFlags=Xc(hr.templateFlags),hr}function yu(K,Ce,Ze,pt){let hr=ge(K);return hr.text=Ce,hr.rawText=Ze,hr.templateFlags=pt&7176,hr.transformFlags=Xc(hr.templateFlags),hr}function op(K,Ce,Ze,pt){return K===15?yu(K,Ce,Ze,pt):Yo(K,Ce,Ze,pt)}function lA(K,Ce,Ze){return K=fc(16,K,Ce,Ze),op(16,K,Ce,Ze)}function tI(K,Ce,Ze){return K=fc(16,K,Ce,Ze),op(17,K,Ce,Ze)}function Kd(K,Ce,Ze){return K=fc(16,K,Ce,Ze),op(18,K,Ce,Ze)}function D0(K,Ce,Ze){return K=fc(16,K,Ce,Ze),yu(15,K,Ce,Ze)}function ya(K,Ce){_o.assert(!K||!!Ce,"A `YieldExpression` with an asteriskToken must have an expression.");let Ze=ae(229);return Ze.expression=Ce&&s().parenthesizeExpressionForDisallowedComma(Ce),Ze.asteriskToken=K,Ze.transformFlags|=Zo(Ze.expression)|Zo(Ze.asteriskToken)|1024|128|1048576,Ze}function md(K,Ce,Ze){return K.expression!==Ze||K.asteriskToken!==Ce?Ys(ya(Ce,Ze),K):K}function fI(K){let Ce=ae(230);return Ce.expression=s().parenthesizeExpressionForDisallowedComma(K),Ce.transformFlags|=Zo(Ce.expression)|1024|32768,Ce}function Bf(K,Ce){return K.expression!==Ce?Ys(fI(Ce),K):K}function Uh(K,Ce,Ze,pt,hr){let Zn=ge(231);return Zn.modifiers=pA(K),Zn.name=sI(Ce),Zn.typeParameters=pA(Ze),Zn.heritageClauses=pA(pt),Zn.members=le(hr),Zn.transformFlags|=ZA(Zn.modifiers)|jW(Zn.name)|ZA(Zn.typeParameters)|ZA(Zn.heritageClauses)|ZA(Zn.members)|(Zn.typeParameters?1:0)|1024,Zn.jsDoc=void 0,Zn}function Ym(K,Ce,Ze,pt,hr,Zn){return K.modifiers!==Ce||K.name!==Ze||K.typeParameters!==pt||K.heritageClauses!==hr||K.members!==Zn?Ys(Uh(Ce,Ze,pt,hr,Zn),K):K}function IS(){return ae(232)}function CS(K,Ce){let Ze=ae(233);return Ze.expression=s().parenthesizeLeftSideOfAccess(K,!1),Ze.typeArguments=Ce&&s().parenthesizeTypeArguments(Ce),Ze.transformFlags|=Zo(Ze.expression)|ZA(Ze.typeArguments)|1024,Ze}function _E(K,Ce,Ze){return K.expression!==Ce||K.typeArguments!==Ze?Ys(CS(Ce,Ze),K):K}function x0(K,Ce){let Ze=ae(234);return Ze.expression=K,Ze.type=Ce,Ze.transformFlags|=Zo(Ze.expression)|Zo(Ze.type)|1,Ze}function yE(K,Ce,Ze){return K.expression!==Ce||K.type!==Ze?Ys(x0(Ce,Ze),K):K}function CB(K){let Ce=ae(235);return Ce.expression=s().parenthesizeLeftSideOfAccess(K,!1),Ce.transformFlags|=Zo(Ce.expression)|1,Ce}function J_(K,Ce){return qaa(K)?RC(K,Ce):K.expression!==Ce?Ys(CB(Ce),K):K}function yh(K,Ce){let Ze=ae(238);return Ze.expression=K,Ze.type=Ce,Ze.transformFlags|=Zo(Ze.expression)|Zo(Ze.type)|1,Ze}function U_(K,Ce,Ze){return K.expression!==Ce||K.type!==Ze?Ys(yh(Ce,Ze),K):K}function ql(K){let Ce=ae(235);return Ce.flags|=64,Ce.expression=s().parenthesizeLeftSideOfAccess(K,!0),Ce.transformFlags|=Zo(Ce.expression)|1,Ce}function RC(K,Ce){return _o.assert(!!(K.flags&64),"Cannot update a NonNullExpression using updateNonNullChain. Use updateNonNullExpression instead."),K.expression!==Ce?Ys(ql(Ce),K):K}function Kl(K,Ce){let Ze=ae(236);switch(Ze.keywordToken=K,Ze.name=Ce,Ze.transformFlags|=Zo(Ze.name),K){case 105:Ze.transformFlags|=1024;break;case 102:Ze.transformFlags|=32;break;default:return _o.assertNever(K)}return Ze.flowNode=void 0,Ze}function ap(K,Ce){return K.name!==Ce?Ys(Kl(K.keywordToken,Ce),K):K}function ug(K,Ce){let Ze=ae(239);return Ze.expression=K,Ze.literal=Ce,Ze.transformFlags|=Zo(Ze.expression)|Zo(Ze.literal)|1024,Ze}function Hm(K,Ce,Ze){return K.expression!==Ce||K.literal!==Ze?Ys(ug(Ce,Ze),K):K}function Tb(){let K=ae(240);return K.transformFlags|=1024,K}function rA(K,Ce){let Ze=ae(241);return Ze.statements=le(K),Ze.multiLine=Ce,Ze.transformFlags|=ZA(Ze.statements),Ze.jsDoc=void 0,Ze.locals=void 0,Ze.nextContainer=void 0,Ze}function Iv(K,Ce){return K.statements!==Ce?Ys(rA(Ce,K.multiLine),K):K}function My(K,Ce){let Ze=ae(243);return Ze.modifiers=pA(K),Ze.declarationList=Xz(Ce)?gC(Ce):Ce,Ze.transformFlags|=ZA(Ze.modifiers)|Zo(Ze.declarationList),zW(Ze.modifiers)&128&&(Ze.transformFlags=1),Ze.jsDoc=void 0,Ze.flowNode=void 0,Ze}function QC(K,Ce,Ze){return K.modifiers!==Ce||K.declarationList!==Ze?Ys(My(Ce,Ze),K):K}function wI(){let K=ae(242);return K.jsDoc=void 0,K}function Fi(K){let Ce=ae(244);return Ce.expression=s().parenthesizeExpressionOfExpressionStatement(K),Ce.transformFlags|=Zo(Ce.expression),Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function Lo(K,Ce){return K.expression!==Ce?Ys(Fi(Ce),K):K}function rs(K,Ce,Ze){let pt=ae(245);return pt.expression=K,pt.thenStatement=bd(Ce),pt.elseStatement=bd(Ze),pt.transformFlags|=Zo(pt.expression)|Zo(pt.thenStatement)|Zo(pt.elseStatement),pt.jsDoc=void 0,pt.flowNode=void 0,pt}function vc(K,Ce,Ze,pt){return K.expression!==Ce||K.thenStatement!==Ze||K.elseStatement!==pt?Ys(rs(Ce,Ze,pt),K):K}function Ml(K,Ce){let Ze=ae(246);return Ze.statement=bd(K),Ze.expression=Ce,Ze.transformFlags|=Zo(Ze.statement)|Zo(Ze.expression),Ze.jsDoc=void 0,Ze.flowNode=void 0,Ze}function DA(K,Ce,Ze){return K.statement!==Ce||K.expression!==Ze?Ys(Ml(Ce,Ze),K):K}function Lf(K,Ce){let Ze=ae(247);return Ze.expression=K,Ze.statement=bd(Ce),Ze.transformFlags|=Zo(Ze.expression)|Zo(Ze.statement),Ze.jsDoc=void 0,Ze.flowNode=void 0,Ze}function jd(K,Ce,Ze){return K.expression!==Ce||K.statement!==Ze?Ys(Lf(Ce,Ze),K):K}function bh(K,Ce,Ze,pt){let hr=ae(248);return hr.initializer=K,hr.condition=Ce,hr.incrementor=Ze,hr.statement=bd(pt),hr.transformFlags|=Zo(hr.initializer)|Zo(hr.condition)|Zo(hr.incrementor)|Zo(hr.statement),hr.jsDoc=void 0,hr.locals=void 0,hr.nextContainer=void 0,hr.flowNode=void 0,hr}function u2(K,Ce,Ze,pt,hr){return K.initializer!==Ce||K.condition!==Ze||K.incrementor!==pt||K.statement!==hr?Ys(bh(Ce,Ze,pt,hr),K):K}function Dm(K,Ce,Ze){let pt=ae(249);return pt.initializer=K,pt.expression=Ce,pt.statement=bd(Ze),pt.transformFlags|=Zo(pt.initializer)|Zo(pt.expression)|Zo(pt.statement),pt.jsDoc=void 0,pt.locals=void 0,pt.nextContainer=void 0,pt.flowNode=void 0,pt}function gy(K,Ce,Ze,pt){return K.initializer!==Ce||K.expression!==Ze||K.statement!==pt?Ys(Dm(Ce,Ze,pt),K):K}function E_(K,Ce,Ze,pt){let hr=ae(250);return hr.awaitModifier=K,hr.initializer=Ce,hr.expression=s().parenthesizeExpressionForDisallowedComma(Ze),hr.statement=bd(pt),hr.transformFlags|=Zo(hr.awaitModifier)|Zo(hr.initializer)|Zo(hr.expression)|Zo(hr.statement)|1024,K&&(hr.transformFlags|=128),hr.jsDoc=void 0,hr.locals=void 0,hr.nextContainer=void 0,hr.flowNode=void 0,hr}function Mi(K,Ce,Ze,pt,hr){return K.awaitModifier!==Ce||K.initializer!==Ze||K.expression!==pt||K.statement!==hr?Ys(E_(Ce,Ze,pt,hr),K):K}function Ay(K){let Ce=ae(251);return Ce.label=sI(K),Ce.transformFlags|=Zo(Ce.label)|4194304,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function bE(K,Ce){return K.label!==Ce?Ys(Ay(Ce),K):K}function uf(K){let Ce=ae(252);return Ce.label=sI(K),Ce.transformFlags|=Zo(Ce.label)|4194304,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function g2(K,Ce){return K.label!==Ce?Ys(uf(Ce),K):K}function EE(K){let Ce=ae(253);return Ce.expression=K,Ce.transformFlags|=Zo(Ce.expression)|128|4194304,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function k0(K,Ce){return K.expression!==Ce?Ys(EE(Ce),K):K}function mS(K,Ce){let Ze=ae(254);return Ze.expression=K,Ze.statement=bd(Ce),Ze.transformFlags|=Zo(Ze.expression)|Zo(Ze.statement),Ze.jsDoc=void 0,Ze.flowNode=void 0,Ze}function I1(K,Ce,Ze){return K.expression!==Ce||K.statement!==Ze?Ys(mS(Ce,Ze),K):K}function dc(K,Ce){let Ze=ae(255);return Ze.expression=s().parenthesizeExpressionForDisallowedComma(K),Ze.caseBlock=Ce,Ze.transformFlags|=Zo(Ze.expression)|Zo(Ze.caseBlock),Ze.jsDoc=void 0,Ze.flowNode=void 0,Ze.possiblyExhaustive=!1,Ze}function at(K,Ce,Ze){return K.expression!==Ce||K.caseBlock!==Ze?Ys(dc(Ce,Ze),K):K}function $t(K,Ce){let Ze=ae(256);return Ze.label=sI(K),Ze.statement=bd(Ce),Ze.transformFlags|=Zo(Ze.label)|Zo(Ze.statement),Ze.jsDoc=void 0,Ze.flowNode=void 0,Ze}function Wr(K,Ce,Ze){return K.label!==Ce||K.statement!==Ze?Ys($t(Ce,Ze),K):K}function vn(K){let Ce=ae(257);return Ce.expression=K,Ce.transformFlags|=Zo(Ce.expression),Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function os(K,Ce){return K.expression!==Ce?Ys(vn(Ce),K):K}function wo(K,Ce,Ze){let pt=ae(258);return pt.tryBlock=K,pt.catchClause=Ce,pt.finallyBlock=Ze,pt.transformFlags|=Zo(pt.tryBlock)|Zo(pt.catchClause)|Zo(pt.finallyBlock),pt.jsDoc=void 0,pt.flowNode=void 0,pt}function fg(K,Ce,Ze,pt){return K.tryBlock!==Ce||K.catchClause!==Ze||K.finallyBlock!==pt?Ys(wo(Ce,Ze,pt),K):K}function mg(){let K=ae(259);return K.jsDoc=void 0,K.flowNode=void 0,K}function gf(K,Ce,Ze,pt){let hr=ge(260);return hr.name=sI(K),hr.exclamationToken=Ce,hr.type=Ze,hr.initializer=my(pt),hr.transformFlags|=jW(hr.name)|Zo(hr.initializer)|(hr.exclamationToken??hr.type?1:0),hr.jsDoc=void 0,hr}function rI(K,Ce,Ze,pt,hr){return K.name!==Ce||K.type!==pt||K.exclamationToken!==Ze||K.initializer!==hr?Ys(gf(Ce,Ze,pt,hr),K):K}function gC(K,Ce=0){let Ze=ae(261);return Ze.flags|=Ce&7,Ze.declarations=le(K),Ze.transformFlags|=ZA(Ze.declarations)|4194304,Ce&7&&(Ze.transformFlags|=263168),Ce&4&&(Ze.transformFlags|=4),Ze}function Nb(K,Ce){return K.declarations!==Ce?Ys(gC(Ce,K.flags),K):K}function zT(K,Ce,Ze,pt,hr,Zn,yo){let Kc=ge(262);if(Kc.modifiers=pA(K),Kc.asteriskToken=Ce,Kc.name=sI(Ze),Kc.typeParameters=pA(pt),Kc.parameters=le(hr),Kc.type=Zn,Kc.body=yo,!Kc.body||zW(Kc.modifiers)&128)Kc.transformFlags=1;else{let fA=zW(Kc.modifiers)&1024,Fb=!!Kc.asteriskToken,Nh=fA&&Fb;Kc.transformFlags=ZA(Kc.modifiers)|Zo(Kc.asteriskToken)|jW(Kc.name)|ZA(Kc.typeParameters)|ZA(Kc.parameters)|Zo(Kc.type)|Zo(Kc.body)&-67108865|(Nh?128:fA?256:Fb?2048:0)|(Kc.typeParameters||Kc.type?1:0)|4194304}return Kc.typeArguments=void 0,Kc.jsDoc=void 0,Kc.locals=void 0,Kc.nextContainer=void 0,Kc.endFlowNode=void 0,Kc.returnFlowNode=void 0,Kc}function Cv(K,Ce,Ze,pt,hr,Zn,yo,Kc){return K.modifiers!==Ce||K.asteriskToken!==Ze||K.name!==pt||K.typeParameters!==hr||K.parameters!==Zn||K.type!==yo||K.body!==Kc?Pw(zT(Ce,Ze,pt,hr,Zn,yo,Kc),K):K}function Pw(K,Ce){return K!==Ce&&K.modifiers===Ce.modifiers&&(K.modifiers=Ce.modifiers),fe(K,Ce)}function Qy(K,Ce,Ze,pt,hr){let Zn=ge(263);return Zn.modifiers=pA(K),Zn.name=sI(Ce),Zn.typeParameters=pA(Ze),Zn.heritageClauses=pA(pt),Zn.members=le(hr),zW(Zn.modifiers)&128?Zn.transformFlags=1:(Zn.transformFlags|=ZA(Zn.modifiers)|jW(Zn.name)|ZA(Zn.typeParameters)|ZA(Zn.heritageClauses)|ZA(Zn.members)|(Zn.typeParameters?1:0)|1024,Zn.transformFlags&8192&&(Zn.transformFlags|=1)),Zn.jsDoc=void 0,Zn}function C1(K,Ce,Ze,pt,hr,Zn){return K.modifiers!==Ce||K.name!==Ze||K.typeParameters!==pt||K.heritageClauses!==hr||K.members!==Zn?Ys(Qy(Ce,Ze,pt,hr,Zn),K):K}function K_(K,Ce,Ze,pt,hr){let Zn=ge(264);return Zn.modifiers=pA(K),Zn.name=sI(Ce),Zn.typeParameters=pA(Ze),Zn.heritageClauses=pA(pt),Zn.members=le(hr),Zn.transformFlags=1,Zn.jsDoc=void 0,Zn}function Ow(K,Ce,Ze,pt,hr,Zn){return K.modifiers!==Ce||K.name!==Ze||K.typeParameters!==pt||K.heritageClauses!==hr||K.members!==Zn?Ys(K_(Ce,Ze,pt,hr,Zn),K):K}function jp(K,Ce,Ze,pt){let hr=ge(265);return hr.modifiers=pA(K),hr.name=sI(Ce),hr.typeParameters=pA(Ze),hr.type=pt,hr.transformFlags=1,hr.jsDoc=void 0,hr.locals=void 0,hr.nextContainer=void 0,hr}function dy(K,Ce,Ze,pt,hr){return K.modifiers!==Ce||K.name!==Ze||K.typeParameters!==pt||K.type!==hr?Ys(jp(Ce,Ze,pt,hr),K):K}function A2(K,Ce,Ze){let pt=ge(266);return pt.modifiers=pA(K),pt.name=sI(Ce),pt.members=le(Ze),pt.transformFlags|=ZA(pt.modifiers)|Zo(pt.name)|ZA(pt.members)|1,pt.transformFlags&=-67108865,pt.jsDoc=void 0,pt}function OI(K,Ce,Ze,pt){return K.modifiers!==Ce||K.name!==Ze||K.members!==pt?Ys(A2(Ce,Ze,pt),K):K}function uA(K,Ce,Ze,pt=0){let hr=ge(267);return hr.modifiers=pA(K),hr.flags|=pt&2088,hr.name=Ce,hr.body=Ze,zW(hr.modifiers)&128?hr.transformFlags=1:hr.transformFlags|=ZA(hr.modifiers)|Zo(hr.name)|Zo(hr.body)|1,hr.transformFlags&=-67108865,hr.jsDoc=void 0,hr.locals=void 0,hr.nextContainer=void 0,hr}function VA(K,Ce,Ze,pt){return K.modifiers!==Ce||K.name!==Ze||K.body!==pt?Ys(uA(Ce,Ze,pt,K.flags),K):K}function Am(K){let Ce=ae(268);return Ce.statements=le(K),Ce.transformFlags|=ZA(Ce.statements),Ce.jsDoc=void 0,Ce}function Vf(K,Ce){return K.statements!==Ce?Ys(Am(Ce),K):K}function Yy(K){let Ce=ae(269);return Ce.clauses=le(K),Ce.transformFlags|=ZA(Ce.clauses),Ce.locals=void 0,Ce.nextContainer=void 0,Ce}function Kh(K,Ce){return K.clauses!==Ce?Ys(Yy(Ce),K):K}function Hy(K){let Ce=ge(270);return Ce.name=sI(K),Ce.transformFlags|=uSe(Ce.name)|1,Ce.modifiers=void 0,Ce.jsDoc=void 0,Ce}function py(K,Ce){return K.name!==Ce?hS(Hy(Ce),K):K}function hS(K,Ce){return K!==Ce&&(K.modifiers=Ce.modifiers),Ys(K,Ce)}function _S(K,Ce,Ze,pt){let hr=ge(271);return hr.modifiers=pA(K),hr.name=sI(Ze),hr.isTypeOnly=Ce,hr.moduleReference=pt,hr.transformFlags|=ZA(hr.modifiers)|uSe(hr.name)|Zo(hr.moduleReference),Eoi(hr.moduleReference)||(hr.transformFlags|=1),hr.transformFlags&=-67108865,hr.jsDoc=void 0,hr}function Xy(K,Ce,Ze,pt,hr){return K.modifiers!==Ce||K.isTypeOnly!==Ze||K.name!==pt||K.moduleReference!==hr?Ys(_S(Ce,Ze,pt,hr),K):K}function BE(K,Ce,Ze,pt){let hr=ae(272);return hr.modifiers=pA(K),hr.importClause=Ce,hr.moduleSpecifier=Ze,hr.attributes=hr.assertClause=pt,hr.transformFlags|=Zo(hr.importClause)|Zo(hr.moduleSpecifier),hr.transformFlags&=-67108865,hr.jsDoc=void 0,hr}function mv(K,Ce,Ze,pt,hr){return K.modifiers!==Ce||K.importClause!==Ze||K.moduleSpecifier!==pt||K.attributes!==hr?Ys(BE(Ce,Ze,pt,hr),K):K}function Mw(K,Ce,Ze){let pt=ge(273);return pt.isTypeOnly=K,pt.name=Ce,pt.namedBindings=Ze,pt.transformFlags|=Zo(pt.name)|Zo(pt.namedBindings),K&&(pt.transformFlags|=1),pt.transformFlags&=-67108865,pt}function hv(K,Ce,Ze,pt){return K.isTypeOnly!==Ce||K.name!==Ze||K.namedBindings!==pt?Ys(Mw(Ce,Ze,pt),K):K}function xR(K,Ce){let Ze=ae(300);return Ze.elements=le(K),Ze.multiLine=Ce,Ze.token=132,Ze.transformFlags|=4,Ze}function qT(K,Ce,Ze){return K.elements!==Ce||K.multiLine!==Ze?Ys(xR(Ce,Ze),K):K}function m1(K,Ce){let Ze=ae(301);return Ze.name=K,Ze.value=Ce,Ze.transformFlags|=4,Ze}function jh(K,Ce,Ze){return K.name!==Ce||K.value!==Ze?Ys(m1(Ce,Ze),K):K}function Rb(K,Ce){let Ze=ae(302);return Ze.assertClause=K,Ze.multiLine=Ce,Ze}function Qw(K,Ce,Ze){return K.assertClause!==Ce||K.multiLine!==Ze?Ys(Rb(Ce,Ze),K):K}function An(K,Ce,Ze){let pt=ae(300);return pt.token=Ze??118,pt.elements=le(K),pt.multiLine=Ce,pt.transformFlags|=4,pt}function h1(K,Ce,Ze){return K.elements!==Ce||K.multiLine!==Ze?Ys(An(Ce,Ze,K.token),K):K}function d2(K,Ce){let Ze=ae(301);return Ze.name=K,Ze.value=Ce,Ze.transformFlags|=4,Ze}function zh(K,Ce,Ze){return K.name!==Ce||K.value!==Ze?Ys(d2(Ce,Ze),K):K}function dp(K){let Ce=ge(274);return Ce.name=K,Ce.transformFlags|=Zo(Ce.name),Ce.transformFlags&=-67108865,Ce}function Yw(K,Ce){return K.name!==Ce?Ys(dp(Ce),K):K}function yS(K){let Ce=ge(280);return Ce.name=K,Ce.transformFlags|=Zo(Ce.name)|32,Ce.transformFlags&=-67108865,Ce}function $T(K,Ce){return K.name!==Ce?Ys(yS(Ce),K):K}function Db(K){let Ce=ae(275);return Ce.elements=le(K),Ce.transformFlags|=ZA(Ce.elements),Ce.transformFlags&=-67108865,Ce}function eN(K,Ce){return K.elements!==Ce?Ys(Db(Ce),K):K}function G0(K,Ce,Ze){let pt=ge(276);return pt.isTypeOnly=K,pt.propertyName=Ce,pt.name=Ze,pt.transformFlags|=Zo(pt.propertyName)|Zo(pt.name),pt.transformFlags&=-67108865,pt}function iG(K,Ce,Ze,pt){return K.isTypeOnly!==Ce||K.propertyName!==Ze||K.name!==pt?Ys(G0(Ce,Ze,pt),K):K}function _1(K,Ce,Ze){let pt=ge(277);return pt.modifiers=pA(K),pt.isExportEquals=Ce,pt.expression=Ce?s().parenthesizeRightSideOfBinary(64,void 0,Ze):s().parenthesizeExpressionOfExportDefault(Ze),pt.transformFlags|=ZA(pt.modifiers)|Zo(pt.expression),pt.transformFlags&=-67108865,pt.jsDoc=void 0,pt}function xb(K,Ce,Ze){return K.modifiers!==Ce||K.expression!==Ze?Ys(_1(Ce,K.isExportEquals,Ze),K):K}function Eh(K,Ce,Ze,pt,hr){let Zn=ge(278);return Zn.modifiers=pA(K),Zn.isTypeOnly=Ce,Zn.exportClause=Ze,Zn.moduleSpecifier=pt,Zn.attributes=Zn.assertClause=hr,Zn.transformFlags|=ZA(Zn.modifiers)|Zo(Zn.exportClause)|Zo(Zn.moduleSpecifier),Zn.transformFlags&=-67108865,Zn.jsDoc=void 0,Zn}function y1(K,Ce,Ze,pt,hr,Zn){return K.modifiers!==Ce||K.isTypeOnly!==Ze||K.exportClause!==pt||K.moduleSpecifier!==hr||K.attributes!==Zn?vE(Eh(Ce,Ze,pt,hr,Zn),K):K}function vE(K,Ce){return K!==Ce&&K.modifiers===Ce.modifiers&&(K.modifiers=Ce.modifiers),Ys(K,Ce)}function SE(K){let Ce=ae(279);return Ce.elements=le(K),Ce.transformFlags|=ZA(Ce.elements),Ce.transformFlags&=-67108865,Ce}function bS(K,Ce){return K.elements!==Ce?Ys(SE(Ce),K):K}function Jy(K,Ce,Ze){let pt=ae(281);return pt.isTypeOnly=K,pt.propertyName=sI(Ce),pt.name=sI(Ze),pt.transformFlags|=Zo(pt.propertyName)|Zo(pt.name),pt.transformFlags&=-67108865,pt.jsDoc=void 0,pt}function qh(K,Ce,Ze,pt){return K.isTypeOnly!==Ce||K.propertyName!==Ze||K.name!==pt?Ys(Jy(Ce,Ze,pt),K):K}function tN(){let K=ge(282);return K.jsDoc=void 0,K}function _v(K){let Ce=ae(283);return Ce.expression=K,Ce.transformFlags|=Zo(Ce.expression),Ce.transformFlags&=-67108865,Ce}function yv(K,Ce){return K.expression!==Ce?Ys(_v(Ce),K):K}function rN(K){return ae(K)}function fx(K,Ce,Ze=!1){let pt=Bh(K,Ze?Ce&&s().parenthesizeNonArrayTypeOfPostfixType(Ce):Ce);return pt.postfix=Ze,pt}function Bh(K,Ce){let Ze=ae(K);return Ze.type=Ce,Ze}function nN(K,Ce,Ze){return Ce.type!==Ze?Ys(fx(K,Ze,Ce.postfix),Ce):Ce}function Hw(K,Ce,Ze){return Ce.type!==Ze?Ys(Bh(K,Ze),Ce):Ce}function Wa(K,Ce){let Ze=ge(317);return Ze.parameters=pA(K),Ze.type=Ce,Ze.transformFlags=ZA(Ze.parameters)|(Ze.type?1:0),Ze.jsDoc=void 0,Ze.locals=void 0,Ze.nextContainer=void 0,Ze.typeArguments=void 0,Ze}function EA(K,Ce,Ze){return K.parameters!==Ce||K.type!==Ze?Ys(Wa(Ce,Ze),K):K}function hd(K,Ce=!1){let Ze=ge(322);return Ze.jsDocPropertyTags=pA(K),Ze.isArrayType=Ce,Ze}function nI(K,Ce,Ze){return K.jsDocPropertyTags!==Ce||K.isArrayType!==Ze?Ys(hd(Ce,Ze),K):K}function F0(K){let Ce=ae(309);return Ce.type=K,Ce}function mB(K,Ce){return K.type!==Ce?Ys(F0(Ce),K):K}function Pp(K,Ce,Ze){let pt=ge(323);return pt.typeParameters=pA(K),pt.parameters=le(Ce),pt.type=Ze,pt.jsDoc=void 0,pt.locals=void 0,pt.nextContainer=void 0,pt}function ES(K,Ce,Ze,pt){return K.typeParameters!==Ce||K.parameters!==Ze||K.type!==pt?Ys(Pp(Ce,Ze,pt),K):K}function dm(K){let Ce=TCt(K.kind);return K.tagName.escapedText===cSe(Ce)?K.tagName:Xe(Ce)}function $h(K,Ce,Ze){let pt=ae(K);return pt.tagName=Ce,pt.comment=Ze,pt}function B_(K,Ce,Ze){let pt=ge(K);return pt.tagName=Ce,pt.comment=Ze,pt}function p2(K,Ce,Ze,pt){let hr=$h(345,K??Xe("template"),pt);return hr.constraint=Ce,hr.typeParameters=le(Ze),hr}function hB(K,Ce=dm(K),Ze,pt,hr){return K.tagName!==Ce||K.constraint!==Ze||K.typeParameters!==pt||K.comment!==hr?Ys(p2(Ce,Ze,pt,hr),K):K}function BS(K,Ce,Ze,pt){let hr=B_(346,K??Xe("typedef"),pt);return hr.typeExpression=Ce,hr.fullName=Ze,hr.name=uii(Ze),hr.locals=void 0,hr.nextContainer=void 0,hr}function bv(K,Ce=dm(K),Ze,pt,hr){return K.tagName!==Ce||K.typeExpression!==Ze||K.fullName!==pt||K.comment!==hr?Ys(BS(Ce,Ze,pt,hr),K):K}function vh(K,Ce,Ze,pt,hr,Zn){let yo=B_(341,K??Xe("param"),Zn);return yo.typeExpression=pt,yo.name=Ce,yo.isNameFirst=!!hr,yo.isBracketed=Ze,yo}function Oo(K,Ce=dm(K),Ze,pt,hr,Zn,yo){return K.tagName!==Ce||K.name!==Ze||K.isBracketed!==pt||K.typeExpression!==hr||K.isNameFirst!==Zn||K.comment!==yo?Ys(vh(Ce,Ze,pt,hr,Zn,yo),K):K}function Uy(K,Ce,Ze,pt,hr,Zn){let yo=B_(348,K??Xe("prop"),Zn);return yo.typeExpression=pt,yo.name=Ce,yo.isNameFirst=!!hr,yo.isBracketed=Ze,yo}function kb(K,Ce=dm(K),Ze,pt,hr,Zn,yo){return K.tagName!==Ce||K.name!==Ze||K.isBracketed!==pt||K.typeExpression!==hr||K.isNameFirst!==Zn||K.comment!==yo?Ys(Uy(Ce,Ze,pt,hr,Zn,yo),K):K}function TI(K,Ce,Ze,pt){let hr=B_(338,K??Xe("callback"),pt);return hr.typeExpression=Ce,hr.fullName=Ze,hr.name=uii(Ze),hr.locals=void 0,hr.nextContainer=void 0,hr}function j_(K,Ce=dm(K),Ze,pt,hr){return K.tagName!==Ce||K.typeExpression!==Ze||K.fullName!==pt||K.comment!==hr?Ys(TI(Ce,Ze,pt,hr),K):K}function f2(K,Ce,Ze){let pt=$h(339,K??Xe("overload"),Ze);return pt.typeExpression=Ce,pt}function b1(K,Ce=dm(K),Ze,pt){return K.tagName!==Ce||K.typeExpression!==Ze||K.comment!==pt?Ys(f2(Ce,Ze,pt),K):K}function E1(K,Ce,Ze){let pt=$h(328,K??Xe("augments"),Ze);return pt.class=Ce,pt}function Z0(K,Ce=dm(K),Ze,pt){return K.tagName!==Ce||K.class!==Ze||K.comment!==pt?Ys(E1(Ce,Ze,pt),K):K}function Sh(K,Ce,Ze){let pt=$h(329,K??Xe("implements"),Ze);return pt.class=Ce,pt}function L0(K,Ce,Ze){let pt=$h(347,K??Xe("see"),Ze);return pt.name=Ce,pt}function _d(K,Ce,Ze,pt){return K.tagName!==Ce||K.name!==Ze||K.comment!==pt?Ys(L0(Ce,Ze,pt),K):K}function Ev(K){let Ce=ae(310);return Ce.name=K,Ce}function qu(K,Ce){return K.name!==Ce?Ys(Ev(Ce),K):K}function AC(K,Ce){let Ze=ae(311);return Ze.left=K,Ze.right=Ce,Ze.transformFlags|=Zo(Ze.left)|Zo(Ze.right),Ze}function B1(K,Ce,Ze){return K.left!==Ce||K.right!==Ze?Ys(AC(Ce,Ze),K):K}function I2(K,Ce){let Ze=ae(324);return Ze.name=K,Ze.text=Ce,Ze}function Sp(K,Ce,Ze){return K.name!==Ce?Ys(I2(Ce,Ze),K):K}function eC(K,Ce){let Ze=ae(325);return Ze.name=K,Ze.text=Ce,Ze}function yd(K,Ce,Ze){return K.name!==Ce?Ys(eC(Ce,Ze),K):K}function V0(K,Ce){let Ze=ae(326);return Ze.name=K,Ze.text=Ce,Ze}function II(K,Ce,Ze){return K.name!==Ce?Ys(V0(Ce,Ze),K):K}function Op(K,Ce=dm(K),Ze,pt){return K.tagName!==Ce||K.class!==Ze||K.comment!==pt?Ys(Sh(Ce,Ze,pt),K):K}function W0(K,Ce,Ze){return $h(K,Ce??Xe(TCt(K)),Ze)}function v1(K,Ce,Ze=dm(Ce),pt){return Ce.tagName!==Ze||Ce.comment!==pt?Ys(W0(K,Ze,pt),Ce):Ce}function gd(K,Ce,Ze,pt){let hr=$h(K,Ce??Xe(TCt(K)),pt);return hr.typeExpression=Ze,hr}function pp(K,Ce,Ze=dm(Ce),pt,hr){return Ce.tagName!==Ze||Ce.typeExpression!==pt||Ce.comment!==hr?Ys(gd(K,Ze,pt,hr),Ce):Ce}function v_(K,Ce){return $h(327,K,Ce)}function vS(K,Ce,Ze){return K.tagName!==Ce||K.comment!==Ze?Ys(v_(Ce,Ze),K):K}function _B(K,Ce,Ze){let pt=B_(340,K??Xe(TCt(340)),Ze);return pt.typeExpression=Ce,pt.locals=void 0,pt.nextContainer=void 0,pt}function z_(K,Ce=dm(K),Ze,pt){return K.tagName!==Ce||K.typeExpression!==Ze||K.comment!==pt?Ys(_B(Ce,Ze,pt),K):K}function e_(K,Ce,Ze,pt,hr){let Zn=$h(351,K??Xe("import"),hr);return Zn.importClause=Ce,Zn.moduleSpecifier=Ze,Zn.attributes=pt,Zn.comment=hr,Zn}function aa(K,Ce,Ze,pt,hr,Zn){return K.tagName!==Ce||K.comment!==Zn||K.importClause!==Ze||K.moduleSpecifier!==pt||K.attributes!==hr?Ys(e_(Ce,Ze,pt,hr,Zn),K):K}function xA(K){let Ce=ae(321);return Ce.text=K,Ce}function cZ(K,Ce){return K.text!==Ce?Ys(xA(Ce),K):K}function kR(K,Ce){let Ze=ae(320);return Ze.comment=K,Ze.tags=pA(Ce),Ze}function wE(K,Ce,Ze){return K.comment!==Ce||K.tags!==Ze?Ys(kR(Ce,Ze),K):K}function GR(K,Ce,Ze){let pt=ae(284);return pt.openingElement=K,pt.children=le(Ce),pt.closingElement=Ze,pt.transformFlags|=Zo(pt.openingElement)|ZA(pt.children)|Zo(pt.closingElement)|2,pt}function Ad(K,Ce,Ze,pt){return K.openingElement!==Ce||K.children!==Ze||K.closingElement!==pt?Ys(GR(Ce,Ze,pt),K):K}function fy(K,Ce,Ze){let pt=ae(285);return pt.tagName=K,pt.typeArguments=pA(Ce),pt.attributes=Ze,pt.transformFlags|=Zo(pt.tagName)|ZA(pt.typeArguments)|Zo(pt.attributes)|2,pt.typeArguments&&(pt.transformFlags|=1),pt}function Af(K,Ce,Ze,pt){return K.tagName!==Ce||K.typeArguments!==Ze||K.attributes!==pt?Ys(fy(Ce,Ze,pt),K):K}function tC(K,Ce,Ze){let pt=ae(286);return pt.tagName=K,pt.typeArguments=pA(Ce),pt.attributes=Ze,pt.transformFlags|=Zo(pt.tagName)|ZA(pt.typeArguments)|Zo(pt.attributes)|2,Ce&&(pt.transformFlags|=1),pt}function xo(K,Ce,Ze,pt){return K.tagName!==Ce||K.typeArguments!==Ze||K.attributes!==pt?Ys(tC(Ce,Ze,pt),K):K}function q_(K){let Ce=ae(287);return Ce.tagName=K,Ce.transformFlags|=Zo(Ce.tagName)|2,Ce}function gh(K,Ce){return K.tagName!==Ce?Ys(q_(Ce),K):K}function Oc(K,Ce,Ze){let pt=ae(288);return pt.openingFragment=K,pt.children=le(Ce),pt.closingFragment=Ze,pt.transformFlags|=Zo(pt.openingFragment)|ZA(pt.children)|Zo(pt.closingFragment)|2,pt}function Mc(K,Ce,Ze,pt){return K.openingFragment!==Ce||K.children!==Ze||K.closingFragment!==pt?Ys(Oc(Ce,Ze,pt),K):K}function iN(K,Ce){let Ze=ae(12);return Ze.text=K,Ze.containsOnlyTriviaWhiteSpaces=!!Ce,Ze.transformFlags|=2,Ze}function SS(K,Ce,Ze){return K.text!==Ce||K.containsOnlyTriviaWhiteSpaces!==Ze?Ys(iN(Ce,Ze),K):K}function gA(){let K=ae(289);return K.transformFlags|=2,K}function S_(){let K=ae(290);return K.transformFlags|=2,K}function AA(K,Ce){let Ze=ge(291);return Ze.name=K,Ze.initializer=Ce,Ze.transformFlags|=Zo(Ze.name)|Zo(Ze.initializer)|2,Ze}function Ky(K,Ce,Ze){return K.name!==Ce||K.initializer!==Ze?Ys(AA(Ce,Ze),K):K}function S1(K){let Ce=ge(292);return Ce.properties=le(K),Ce.transformFlags|=ZA(Ce.properties)|2,Ce}function Iy(K,Ce){return K.properties!==Ce?Ys(S1(Ce),K):K}function wh(K){let Ce=ae(293);return Ce.expression=K,Ce.transformFlags|=Zo(Ce.expression)|2,Ce}function wS(K,Ce){return K.expression!==Ce?Ys(wh(Ce),K):K}function Xw(K,Ce){let Ze=ae(294);return Ze.dotDotDotToken=K,Ze.expression=Ce,Ze.transformFlags|=Zo(Ze.dotDotDotToken)|Zo(Ze.expression)|2,Ze}function dC(K,Ce){return K.expression!==Ce?Ys(Xw(K.dotDotDotToken,Ce),K):K}function Ah(K,Ce){let Ze=ae(295);return Ze.namespace=K,Ze.name=Ce,Ze.transformFlags|=Zo(Ze.namespace)|Zo(Ze.name)|2,Ze}function Bg(K,Ce,Ze){return K.namespace!==Ce||K.name!==Ze?Ys(Ah(Ce,Ze),K):K}function Th(K,Ce){let Ze=ae(296);return Ze.expression=s().parenthesizeExpressionForDisallowedComma(K),Ze.statements=le(Ce),Ze.transformFlags|=Zo(Ze.expression)|ZA(Ze.statements),Ze.jsDoc=void 0,Ze}function C2(K,Ce,Ze){return K.expression!==Ce||K.statements!==Ze?Ys(Th(Ce,Ze),K):K}function fp(K){let Ce=ae(297);return Ce.statements=le(K),Ce.transformFlags=ZA(Ce.statements),Ce}function TE(K,Ce){return K.statements!==Ce?Ys(fp(Ce),K):K}function w1(K,Ce){let Ze=ae(298);switch(Ze.token=K,Ze.types=le(Ce),Ze.transformFlags|=ZA(Ze.types),K){case 96:Ze.transformFlags|=1024;break;case 119:Ze.transformFlags|=1;break;default:return _o.assertNever(K)}return Ze}function xm(K,Ce){return K.types!==Ce?Ys(w1(K.token,Ce),K):K}function iI(K,Ce){let Ze=ae(299);return Ze.variableDeclaration=Wd(K),Ze.block=Ce,Ze.transformFlags|=Zo(Ze.variableDeclaration)|Zo(Ze.block)|(K?0:64),Ze.locals=void 0,Ze.nextContainer=void 0,Ze}function TS(K,Ce,Ze){return K.variableDeclaration!==Ce||K.block!==Ze?Ys(iI(Ce,Ze),K):K}function $(K,Ce){let Ze=ge(303);return Ze.name=sI(K),Ze.initializer=s().parenthesizeExpressionForDisallowedComma(Ce),Ze.transformFlags|=jW(Ze.name)|Zo(Ze.initializer),Ze.modifiers=void 0,Ze.questionToken=void 0,Ze.exclamationToken=void 0,Ze.jsDoc=void 0,Ze}function Z(K,Ce,Ze){return K.name!==Ce||K.initializer!==Ze?MI($(Ce,Ze),K):K}function MI(K,Ce){return K!==Ce&&(K.modifiers=Ce.modifiers,K.questionToken=Ce.questionToken,K.exclamationToken=Ce.exclamationToken),Ys(K,Ce)}function FR(K,Ce){let Ze=ge(304);return Ze.name=sI(K),Ze.objectAssignmentInitializer=Ce&&s().parenthesizeExpressionForDisallowedComma(Ce),Ze.transformFlags|=uSe(Ze.name)|Zo(Ze.objectAssignmentInitializer)|1024,Ze.equalsToken=void 0,Ze.modifiers=void 0,Ze.questionToken=void 0,Ze.exclamationToken=void 0,Ze.jsDoc=void 0,Ze}function k(K,Ce,Ze){return K.name!==Ce||K.objectAssignmentInitializer!==Ze?L(FR(Ce,Ze),K):K}function L(K,Ce){return K!==Ce&&(K.modifiers=Ce.modifiers,K.questionToken=Ce.questionToken,K.exclamationToken=Ce.exclamationToken,K.equalsToken=Ce.equalsToken),Ys(K,Ce)}function ee(K){let Ce=ge(305);return Ce.expression=s().parenthesizeExpressionForDisallowedComma(K),Ce.transformFlags|=Zo(Ce.expression)|128|65536,Ce.jsDoc=void 0,Ce}function ve(K,Ce){return K.expression!==Ce?Ys(ee(Ce),K):K}function xe(K,Ce){let Ze=ge(306);return Ze.name=sI(K),Ze.initializer=Ce&&s().parenthesizeExpressionForDisallowedComma(Ce),Ze.transformFlags|=Zo(Ze.name)|Zo(Ze.initializer)|1,Ze.jsDoc=void 0,Ze}function gt(K,Ce,Ze){return K.name!==Ce||K.initializer!==Ze?Ys(xe(Ce,Ze),K):K}function nr(K,Ce,Ze){let pt=t.createBaseSourceFileNode(307);return pt.statements=le(K),pt.endOfFileToken=Ce,pt.flags|=Ze,pt.text="",pt.fileName="",pt.path="",pt.resolvedPath="",pt.originalFileName="",pt.languageVersion=1,pt.languageVariant=0,pt.scriptKind=0,pt.isDeclarationFile=!1,pt.hasNoDefaultLib=!1,pt.transformFlags|=ZA(pt.statements)|Zo(pt.endOfFileToken),pt.locals=void 0,pt.nextContainer=void 0,pt.endFlowNode=void 0,pt.nodeCount=0,pt.identifierCount=0,pt.symbolCount=0,pt.parseDiagnostics=void 0,pt.bindDiagnostics=void 0,pt.bindSuggestionDiagnostics=void 0,pt.lineMap=void 0,pt.externalModuleIndicator=void 0,pt.setExternalModuleIndicator=void 0,pt.pragmas=void 0,pt.checkJsDirective=void 0,pt.referencedFiles=void 0,pt.typeReferenceDirectives=void 0,pt.libReferenceDirectives=void 0,pt.amdDependencies=void 0,pt.commentDirectives=void 0,pt.identifiers=void 0,pt.packageJsonLocations=void 0,pt.packageJsonScope=void 0,pt.imports=void 0,pt.moduleAugmentations=void 0,pt.ambientModuleNames=void 0,pt.classifiableNames=void 0,pt.impliedNodeFormat=void 0,pt}function Xr(K){let Ce=Object.create(K.redirectTarget);return Object.defineProperties(Ce,{id:{get(){return this.redirectInfo.redirectTarget.id},set(Ze){this.redirectInfo.redirectTarget.id=Ze}},symbol:{get(){return this.redirectInfo.redirectTarget.symbol},set(Ze){this.redirectInfo.redirectTarget.symbol=Ze}}}),Ce.redirectInfo=K,Ce}function Kn(K){let Ce=Xr(K.redirectInfo);return Ce.flags|=K.flags&-17,Ce.fileName=K.fileName,Ce.path=K.path,Ce.resolvedPath=K.resolvedPath,Ce.originalFileName=K.originalFileName,Ce.packageJsonLocations=K.packageJsonLocations,Ce.packageJsonScope=K.packageJsonScope,Ce.emitNode=void 0,Ce}function to(K){let Ce=t.createBaseSourceFileNode(307);Ce.flags|=K.flags&-17;for(let Ze in K)if(!(XU(Ce,Ze)||!XU(K,Ze))){if(Ze==="emitNode"){Ce.emitNode=void 0;continue}Ce[Ze]=K[Ze]}return Ce}function Fa(K){let Ce=K.redirectInfo?Kn(K):to(K);return r(Ce,K),Ce}function el(K,Ce,Ze,pt,hr,Zn,yo){let Kc=Fa(K);return Kc.statements=le(Ce),Kc.isDeclarationFile=Ze,Kc.referencedFiles=pt,Kc.typeReferenceDirectives=hr,Kc.hasNoDefaultLib=Zn,Kc.libReferenceDirectives=yo,Kc.transformFlags=ZA(Kc.statements)|Zo(Kc.endOfFileToken),Kc}function Eo(K,Ce,Ze=K.isDeclarationFile,pt=K.referencedFiles,hr=K.typeReferenceDirectives,Zn=K.hasNoDefaultLib,yo=K.libReferenceDirectives){return K.statements!==Ce||K.isDeclarationFile!==Ze||K.referencedFiles!==pt||K.typeReferenceDirectives!==hr||K.hasNoDefaultLib!==Zn||K.libReferenceDirectives!==yo?Ys(el(K,Ce,Ze,pt,hr,Zn,yo),K):K}function vg(K){let Ce=ae(308);return Ce.sourceFiles=K,Ce.syntheticFileReferences=void 0,Ce.syntheticTypeReferences=void 0,Ce.syntheticLibReferences=void 0,Ce.hasNoDefaultLib=void 0,Ce}function nd(K,Ce){return K.sourceFiles!==Ce?Ys(vg(Ce),K):K}function YC(K,Ce=!1,Ze){let pt=ae(237);return pt.type=K,pt.isSpread=Ce,pt.tupleNameSource=Ze,pt}function Sn(K){let Ce=ae(352);return Ce._children=K,Ce}function vr(K){let Ce=ae(353);return Ce.original=K,XF(Ce,K),Ce}function Hn(K,Ce){let Ze=ae(355);return Ze.expression=K,Ze.original=Ce,Ze.transformFlags|=Zo(Ze.expression)|1,XF(Ze,Ce),Ze}function Fo(K,Ce){return K.expression!==Ce?Ys(Hn(Ce,K.original),K):K}function tc(){return ae(354)}function dA(K){if(lSe(K)&&!PCt(K)&&!K.original&&!K.emitNode&&!K.id){if(Mua(K))return K.elements;if(ySe(K)&&oua(K.operatorToken))return[K.left,K.right]}return K}function pc(K){let Ce=ae(356);return Ce.elements=le(moa(K,dA)),Ce.transformFlags|=ZA(Ce.elements),Ce}function Xu(K,Ce){return K.elements!==Ce?Ys(pc(Ce),K):K}function Lu(K,Ce){let Ze=ae(357);return Ze.expression=K,Ze.thisArg=Ce,Ze.transformFlags|=Zo(Ze.expression)|Zo(Ze.thisArg),Ze}function Rc(K,Ce,Ze){return K.expression!==Ce||K.thisArg!==Ze?Ys(Lu(Ce,Ze),K):K}function Mp(K){let Ce=Ue(K.escapedText);return Ce.flags|=K.flags&-17,Ce.transformFlags=K.transformFlags,r(Ce,K),setIdentifierAutoGenerate(Ce,{...K.emitNode.autoGenerate}),Ce}function jy(K){let Ce=Ue(K.escapedText);Ce.flags|=K.flags&-17,Ce.jsDoc=K.jsDoc,Ce.flowNode=K.flowNode,Ce.symbol=K.symbol,Ce.transformFlags=K.transformFlags,r(Ce,K);let Ze=getIdentifierTypeArguments(K);return Ze&&setIdentifierTypeArguments(Ce,Ze),Ce}function Bv(K){let Ce=Ot(K.escapedText);return Ce.flags|=K.flags&-17,Ce.transformFlags=K.transformFlags,r(Ce,K),setIdentifierAutoGenerate(Ce,{...K.emitNode.autoGenerate}),Ce}function Ll(K){let Ce=Ot(K.escapedText);return Ce.flags|=K.flags&-17,Ce.transformFlags=K.transformFlags,r(Ce,K),Ce}function Xm(K){if(K===void 0)return K;if(zua(K))return Fa(K);if(fSe(K))return Mp(K);if(mh(K))return jy(K);if(Zsi(K))return Bv(K);if(Cfe(K))return Ll(K);let Ce=ndr(K.kind)?t.createBaseNode(K.kind):t.createBaseTokenNode(K.kind);Ce.flags|=K.flags&-17,Ce.transformFlags=K.transformFlags,r(Ce,K);for(let Ze in K)XU(Ce,Ze)||!XU(K,Ze)||(Ce[Ze]=K[Ze]);return Ce}function $_(K,Ce,Ze){return eA(um(void 0,void 0,void 0,void 0,Ce?[Ce]:[],void 0,rA(K,!0)),void 0,Ze?[Ze]:[])}function HC(K,Ce,Ze){return eA(pg(void 0,void 0,Ce?[Ce]:[],void 0,void 0,rA(K,!0)),void 0,Ze?[Ze]:[])}function yB(){return eI(pe("0"))}function ZR(K){return _1(void 0,!1,K)}function sG(K){return Eh(void 0,!1,SE([Jy(!1,void 0,K)]))}function E3(K,Ce){return Ce==="null"?U.createStrictEquality(K,tr()):Ce==="undefined"?U.createStrictEquality(K,yB()):U.createStrictEquality(PI(K),Te(Ce))}function lZ(K,Ce){return Ce==="null"?U.createStrictInequality(K,tr()):Ce==="undefined"?U.createStrictInequality(K,yB()):U.createStrictInequality(PI(K),Te(Ce))}function sN(K,Ce,Ze){return Qni(K)?lh(Zl(K,void 0,Ce),void 0,void 0,Ze):eA(Ks(K,Ce),void 0,Ze)}function Ju(K,Ce,Ze){return sN(K,"bind",[Ce,...Ze])}function W9(K,Ce,Ze){return sN(K,"call",[Ce,...Ze])}function oN(K,Ce,Ze){return sN(K,"apply",[Ce,Ze])}function wp(K,Ce,Ze){return sN(Xe(K),Ce,Ze)}function aN(K,Ce){return sN(K,"slice",Ce===void 0?[]:[e0(Ce)])}function uZ(K,Ce){return sN(K,"concat",Ce)}function oG(K,Ce,Ze){return wp("Object","defineProperty",[K,e0(Ce),Ze])}function NS(K,Ce){return wp("Object","getOwnPropertyDescriptor",[K,e0(Ce)])}function vf(K,Ce,Ze){return wp("Reflect","get",Ze?[K,Ce,Ze]:[K,Ce])}function Ix(K,Ce,Ze,pt){return wp("Reflect","set",pt?[K,Ce,Ze,pt]:[K,Ce,Ze])}function Cx(K,Ce,Ze){return Ze?(K.push($(Ce,Ze)),!0):!1}function gZ(K,Ce){let Ze=[];Cx(Ze,"enumerable",e0(K.enumerable)),Cx(Ze,"configurable",e0(K.configurable));let pt=Cx(Ze,"writable",e0(K.writable));pt=Cx(Ze,"value",K.value)||pt;let hr=Cx(Ze,"get",K.get);return hr=Cx(Ze,"set",K.set)||hr,_o.assert(!(pt&&hr),"A PropertyDescriptor may not be both an accessor descriptor and a data descriptor."),Nn(Ze,!Ce)}function ag(K,Ce){switch(K.kind){case 217:return Sb(K,Ce);case 216:return uc(K,K.type,Ce);case 234:return yE(K,Ce,K.type);case 238:return U_(K,Ce,K.type);case 235:return J_(K,Ce);case 233:return _E(K,Ce,K.typeArguments);case 355:return Fo(K,Ce)}}function Gb(K){return fdr(K)&&lSe(K)&&lSe(getSourceMapRange(K))&&lSe(getCommentRange(K))&&!mR(getSyntheticLeadingComments(K))&&!mR(getSyntheticTrailingComments(K))}function m2(K,Ce,Ze=31){return K&&Toi(K,Ze)&&!Gb(K)?ag(K,m2(K.expression,Ce)):Ce}function aG(K,Ce,Ze){if(!Ce)return K;let pt=Wr(Ce,Ce.label,Qua(Ce.statement)?aG(K,Ce.statement):K);return Ze&&Ze(Ce),pt}function zy(K,Ce){let Ze=ldr(K);switch(Ze.kind){case 80:return Ce;case 110:case 9:case 10:case 11:return!1;case 209:return Ze.elements.length!==0;case 210:return Ze.properties.length>0;default:return!0}}function h2(K,Ce,Ze,pt=!1){let hr=mdr(K,31),Zn,yo;return jni(hr)?(Zn=Br(),yo=hr):AAr(hr)?(Zn=Br(),yo=Ze!==void 0&&Ze<2?XF(Xe("_super"),hr):hr):hSe(hr)&8192?(Zn=yB(),yo=s().parenthesizeLeftSideOfAccess(hr,!1)):Zse(hr)?zy(hr.expression,pt)?(Zn=ft(Ce),yo=Ks(XF(U.createAssignment(Zn,hr.expression),hr.expression),hr.name),XF(yo,hr)):(Zn=hr.expression,yo=hr):SYe(hr)?zy(hr.expression,pt)?(Zn=ft(Ce),yo=WI(XF(U.createAssignment(Zn,hr.expression),hr.expression),hr.argumentExpression),XF(yo,hr)):(Zn=hr.expression,yo=hr):(Zn=yB(),yo=s().parenthesizeLeftSideOfAccess(K,!1)),{target:yo,thisArg:Zn}}function Ke(K,Ce){return Ks(b_(Nn([wi(void 0,"value",[Qu(void 0,void 0,K,void 0,void 0,void 0)],rA([Fi(Ce)]))])),"value")}function Ft(K){return K.length>10?pc(K):Toa(K,U.createComma)}function Er(K,Ce,Ze,pt=0,hr){let Zn=hr?K&&tdr(K):Dsi(K);if(Zn&&mh(Zn)&&!fSe(Zn)){let yo=Adr(XF(Xm(Zn),Zn),Zn.parent);return pt|=hSe(Zn),Ze||(pt|=96),Ce||(pt|=3072),pt&&setEmitFlags(yo,pt),yo}return Ur(K)}function Jr(K,Ce,Ze){return Er(K,Ce,Ze,98304)}function Un(K,Ce,Ze,pt){return Er(K,Ce,Ze,32768,pt)}function Ki(K,Ce,Ze){return Er(K,Ce,Ze,16384)}function Ss(K,Ce,Ze){return Er(K,Ce,Ze)}function vo(K,Ce,Ze,pt){let hr=Ks(K,lSe(Ce)?Ce:Xm(Ce));XF(hr,Ce);let Zn=0;return pt||(Zn|=96),Ze||(Zn|=3072),Zn&&setEmitFlags(hr,Zn),hr}function Pa(K,Ce,Ze,pt){return K&&vYe(Ce,32)?vo(K,Er(Ce),Ze,pt):Ki(Ce,Ze,pt)}function js(K,Ce,Ze,pt){let hr=nA(K,Ce,0,Ze);return Ig(K,Ce,hr,pt)}function xc(K){return jCt(K.expression)&&K.expression.text==="use strict"}function Jl(){return hga(Fi(Te("use strict")))}function nA(K,Ce,Ze=0,pt){_o.assert(Ce.length===0,"Prologue directives should be at the first statement in the target statements array");let hr=!1,Zn=K.length;for(;ZeKc&&Fb.splice(hr,0,...Ce.slice(Kc,fA)),Kc>yo&&Fb.splice(pt,0,...Ce.slice(yo,Kc)),yo>Zn&&Fb.splice(Ze,0,...Ce.slice(Zn,yo)),Zn>0)if(Ze===0)Fb.splice(0,0,...Ce.slice(0,Zn));else{let Nh=new Map;for(let b2=0;b2=0;b2--){let qy=Ce[b2];Nh.has(qy.expression.text)||Fb.unshift(qy)}}return Dse(K)?XF(le(Fb,K.hasTrailingComma),K):K}function y2(K,Ce){let Ze;return typeof Ce=="number"?Ze=Zi(Ce):Ze=Ce,soi(K)?vi(K,Ze,K.name,K.constraint,K.default):QCt(K)?Yu(K,Ze,K.dotDotDotToken,K.name,K.questionToken,K.type,K.initializer):uoi(K)?Bo(K,Ze,K.typeParameters,K.parameters,K.type):uua(K)?Ld(K,Ze,K.name,K.questionToken,K.type):YCt(K)?Ir(K,Ze,K.name,K.questionToken??K.exclamationToken,K.type,K.initializer):gua(K)?Cn(K,Ze,K.name,K.questionToken,K.typeParameters,K.parameters,K.type):NAr(K)?Ji(K,Ze,K.asteriskToken,K.name,K.questionToken,K.typeParameters,K.parameters,K.type,K.body):ooi(K)?sg(K,Ze,K.parameters,K.body):RAr(K)?Zu(K,Ze,K.name,K.parameters,K.type,K.body):HCt(K)?ts(K,Ze,K.name,K.parameters,K.body):aoi(K)?wu(K,Ze,K.parameters,K.type):doi(K)?uh(K,Ze,K.asteriskToken,K.name,K.typeParameters,K.parameters,K.type,K.body):poi(K)?gm(K,Ze,K.typeParameters,K.parameters,K.type,K.equalsGreaterThanToken,K.body):DAr(K)?Ym(K,Ze,K.name,K.typeParameters,K.heritageClauses,K.members):zCt(K)?QC(K,Ze,K.declarationList):Coi(K)?Cv(K,Ze,K.asteriskToken,K.name,K.typeParameters,K.parameters,K.type,K.body):XCt(K)?C1(K,Ze,K.name,K.typeParameters,K.heritageClauses,K.members):Idr(K)?Ow(K,Ze,K.name,K.typeParameters,K.heritageClauses,K.members):moi(K)?dy(K,Ze,K.name,K.typeParameters,K.type):Hua(K)?OI(K,Ze,K.name,K.members):EYe(K)?VA(K,Ze,K.name,K.body):hoi(K)?Xy(K,Ze,K.isTypeOnly,K.name,K.moduleReference):_oi(K)?mv(K,Ze,K.importClause,K.moduleSpecifier,K.attributes):yoi(K)?xb(K,Ze,K.expression):boi(K)?y1(K,Ze,K.isTypeOnly,K.exportClause,K.moduleSpecifier,K.attributes):_o.assertNever(K)}function LR(K,Ce){return QCt(K)?Yu(K,Ce,K.dotDotDotToken,K.name,K.questionToken,K.type,K.initializer):YCt(K)?Ir(K,Ce,K.name,K.questionToken??K.exclamationToken,K.type,K.initializer):NAr(K)?Ji(K,Ce,K.asteriskToken,K.name,K.questionToken,K.typeParameters,K.parameters,K.type,K.body):RAr(K)?Zu(K,Ce,K.name,K.parameters,K.type,K.body):HCt(K)?ts(K,Ce,K.name,K.parameters,K.body):DAr(K)?Ym(K,Ce,K.name,K.typeParameters,K.heritageClauses,K.members):XCt(K)?C1(K,Ce,K.name,K.typeParameters,K.heritageClauses,K.members):_o.assertNever(K)}function B3(K,Ce){switch(K.kind){case 177:return Zu(K,K.modifiers,Ce,K.parameters,K.type,K.body);case 178:return ts(K,K.modifiers,Ce,K.parameters,K.body);case 174:return Ji(K,K.modifiers,K.asteriskToken,Ce,K.questionToken,K.typeParameters,K.parameters,K.type,K.body);case 173:return Cn(K,K.modifiers,Ce,K.questionToken,K.typeParameters,K.parameters,K.type);case 172:return Ir(K,K.modifiers,Ce,K.questionToken??K.exclamationToken,K.type,K.initializer);case 171:return Ld(K,K.modifiers,Ce,K.questionToken,K.type);case 303:return Z(K,Ce,K.initializer)}}function pA(K){return K?le(K):void 0}function sI(K){return typeof K=="string"?Xe(K):K}function e0(K){return typeof K=="string"?Te(K):typeof K=="number"?pe(K):typeof K=="boolean"?K?gn():Gn():K}function my(K){return K&&s().parenthesizeExpressionForDisallowedComma(K)}function AZ(K){return typeof K=="number"?Or(K):K}function bd(K){return K&&Jua(K)?XF(r(wI(),K),K):K}function Wd(K){return typeof K=="string"||K&&!Ioi(K)?gf(K,void 0,void 0,void 0):K}function Ys(K,Ce){return K!==Ce&&(r(K,Ce),XF(K,Ce)),K}}function TCt(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 _o.fail(`Unsupported kind: ${_o.formatSyntaxKind(e)}`)}}var s9,rii={};function zla(e,t){switch(s9||(s9=$Ar(99,!1,0)),e){case 15:s9.setText("`"+t+"`");break;case 16:s9.setText("`"+t+"${");break;case 17:s9.setText("}"+t+"${");break;case 18:s9.setText("}"+t+"`");break}let r=s9.scan();if(r===20&&(r=s9.reScanTemplateToken(!1)),s9.isUnterminated())return s9.setText(void 0),rii;let s;switch(r){case 15:case 16:case 17:case 18:s=s9.getTokenValue();break}return s===void 0||s9.scan()!==1?(s9.setText(void 0),rii):(s9.setText(void 0),s)}function jW(e){return e&&mh(e)?uSe(e):Zo(e)}function uSe(e){return Zo(e)&-67108865}function qla(e,t){return t|e.transformFlags&134234112}function Zo(e){if(!e)return 0;let t=e.transformFlags&~$la(e.kind);return xaa(e)&&Lsi(e.name)?qla(e.name,t):t}function ZA(e){return e?e.transformFlags:0}function nii(e){let t=0;for(let r of e)t|=Zo(r);e.transformFlags=t}function $la(e){if(e>=182&&e<=205)return-2;switch(e){case 213:case 214:case 209:return-2147450880;case 267:return-1941676032;case 169: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;case 206:case 207:return-2147450880;case 216:case 238:case 234:case 355:case 217:case 108:return-2147483648;case 211:case 212:return-2147483648;default:return-2147483648}}var nYe=Ula();function iYe(e){return e.flags|=16,e}var eua={createBaseSourceFileNode:e=>iYe(nYe.createBaseSourceFileNode(e)),createBaseIdentifierNode:e=>iYe(nYe.createBaseIdentifierNode(e)),createBasePrivateIdentifierNode:e=>iYe(nYe.createBasePrivateIdentifierNode(e)),createBaseTokenNode:e=>iYe(nYe.createBaseTokenNode(e)),createBaseNode:e=>iYe(nYe.createBaseNode(e))},Jhl=ddr(4,eua);function tua(e,t){if(e.original!==t&&(e.original=t,t)){let r=t.emitNode;r&&(e.emitNode=rua(r,e.emitNode))}return e}function rua(e,t){let{flags:r,internalFlags:s,leadingComments:a,trailingComments:o,commentRange:g,sourceMapRange:p,tokenSourceMapRanges:f,constantValue:m,helpers:y,startsOnNewLine:B,snippetElement:v,classThis:G,assignedName:T}=e;if(t||(t={}),r&&(t.flags=r),s&&(t.internalFlags=s&-9),a&&(t.leadingComments=c9(a.slice(),t.leadingComments)),o&&(t.trailingComments=c9(o.slice(),t.trailingComments)),g&&(t.commentRange=g),p&&(t.sourceMapRange=p),f&&(t.tokenSourceMapRanges=nua(f,t.tokenSourceMapRanges)),m!==void 0&&(t.constantValue=m),y)for(let O of y)t.helpers=boa(t.helpers,O);return B!==void 0&&(t.startsOnNewLine=B),v!==void 0&&(t.snippetElement=v),G&&(t.classThis=G),T&&(t.assignedName=T),t}function nua(e,t){t||(t=[]);for(let r in e)t[r]=e[r];return t}function bSe(e){return e.kind===9}function iua(e){return e.kind===10}function jCt(e){return e.kind===11}function sua(e){return e.kind===15}function oua(e){return e.kind===28}function iii(e){return e.kind===54}function sii(e){return e.kind===58}function mh(e){return e.kind===80}function Cfe(e){return e.kind===81}function aua(e){return e.kind===95}function NCt(e){return e.kind===134}function AAr(e){return e.kind===108}function cua(e){return e.kind===102}function lua(e){return e.kind===166}function ioi(e){return e.kind===167}function soi(e){return e.kind===168}function QCt(e){return e.kind===169}function pdr(e){return e.kind===170}function uua(e){return e.kind===171}function YCt(e){return e.kind===172}function gua(e){return e.kind===173}function NAr(e){return e.kind===174}function ooi(e){return e.kind===176}function RAr(e){return e.kind===177}function HCt(e){return e.kind===178}function Aua(e){return e.kind===179}function dua(e){return e.kind===180}function aoi(e){return e.kind===181}function pua(e){return e.kind===182}function coi(e){return e.kind===183}function loi(e){return e.kind===184}function uoi(e){return e.kind===185}function fua(e){return e.kind===186}function Iua(e){return e.kind===187}function Cua(e){return e.kind===188}function mua(e){return e.kind===189}function hua(e){return e.kind===202}function _ua(e){return e.kind===190}function yua(e){return e.kind===191}function bua(e){return e.kind===192}function Eua(e){return e.kind===193}function Bua(e){return e.kind===194}function vua(e){return e.kind===195}function Sua(e){return e.kind===196}function wua(e){return e.kind===197}function Tua(e){return e.kind===198}function Nua(e){return e.kind===199}function Rua(e){return e.kind===200}function Dua(e){return e.kind===201}function xua(e){return e.kind===205}function kua(e){return e.kind===208}function Gua(e){return e.kind===209}function goi(e){return e.kind===210}function Zse(e){return e.kind===211}function SYe(e){return e.kind===212}function Aoi(e){return e.kind===213}function Fua(e){return e.kind===215}function fdr(e){return e.kind===217}function doi(e){return e.kind===218}function poi(e){return e.kind===219}function Zua(e){return e.kind===222}function Lua(e){return e.kind===224}function ySe(e){return e.kind===226}function Vua(e){return e.kind===230}function DAr(e){return e.kind===231}function Wua(e){return e.kind===232}function Pua(e){return e.kind===233}function kCt(e){return e.kind===235}function Oua(e){return e.kind===236}function Mua(e){return e.kind===356}function zCt(e){return e.kind===243}function foi(e){return e.kind===244}function Qua(e){return e.kind===256}function Ioi(e){return e.kind===260}function Yua(e){return e.kind===261}function Coi(e){return e.kind===262}function XCt(e){return e.kind===263}function Idr(e){return e.kind===264}function moi(e){return e.kind===265}function Hua(e){return e.kind===266}function EYe(e){return e.kind===267}function hoi(e){return e.kind===271}function _oi(e){return e.kind===272}function yoi(e){return e.kind===277}function boi(e){return e.kind===278}function Xua(e){return e.kind===279}function Jua(e){return e.kind===353}function Eoi(e){return e.kind===283}function oii(e){return e.kind===286}function Uua(e){return e.kind===289}function Boi(e){return e.kind===295}function Kua(e){return e.kind===297}function jua(e){return e.kind===303}function zua(e){return e.kind===307}function qua(e){return e.kind===309}function $ua(e){return e.kind===314}function ega(e){return e.kind===317}function voi(e){return e.kind===320}function tga(e){return e.kind===322}function Soi(e){return e.kind===323}function rga(e){return e.kind===328}function nga(e){return e.kind===333}function iga(e){return e.kind===334}function sga(e){return e.kind===335}function oga(e){return e.kind===336}function aga(e){return e.kind===337}function cga(e){return e.kind===339}function lga(e){return e.kind===331}function aii(e){return e.kind===341}function uga(e){return e.kind===342}function Cdr(e){return e.kind===344}function gga(e){return e.kind===345}function Aga(e){return e.kind===329}function dga(e){return e.kind===350}var pfe=new WeakMap;function woi(e,t){var r;let s=e.kind;return ndr(s)?s===352?e._children:(r=pfe.get(t))==null?void 0:r.get(e):n2}function pga(e,t,r){e.kind===352&&_o.fail("Should not need to re-set the children of a SyntaxList.");let s=pfe.get(t);return s===void 0&&(s=new WeakMap,pfe.set(t,s)),s.set(e,r),r}function cii(e,t){var r;e.kind===352&&_o.fail("Did not expect to unset the children of a SyntaxList."),(r=pfe.get(t))==null||r.delete(e)}function fga(e,t){let r=pfe.get(e);r!==void 0&&(pfe.delete(e),pfe.set(t,r))}function lii(e){return(hSe(e)&32768)!==0}function Iga(e){return jCt(e.expression)&&e.expression.text==="use strict"}function Cga(e){for(let t of e)if(xCt(t)){if(Iga(t))return t}else break}function mga(e){return fdr(e)&&mfe(e)&&!!Uaa(e)}function Toi(e,t=31){switch(e.kind){case 217:return t&-2147483648&&mga(e)?!1:(t&1)!==0;case 216:case 234:case 238:return(t&2)!==0;case 233:return(t&16)!==0;case 235:return(t&4)!==0;case 355:return(t&8)!==0}return!1}function mdr(e,t=31){for(;Toi(e,t);)e=e.expression;return e}function hga(e){return setStartsOnNewLine(e,!0)}function dYe(e){if(Aca(e))return e.name;if(cca(e)){switch(e.kind){case 303:return dYe(e.initializer);case 304:return e.name;case 305:return dYe(e.expression)}return}return MCt(e,!0)?dYe(e.left):Vua(e)?dYe(e.expression):e}function _ga(e){switch(e.kind){case 206:case 207:case 209:return e.elements;case 210:return e.properties}}function uii(e){if(e){let t=e;for(;;){if(mh(t)||!t.body)return mh(t)?t:t.name;t=t.body}}}var gii;(e=>{function t(y,B,v,G,T,O,X){let U=B>0?T[B-1]:void 0;return _o.assertEqual(v[B],t),T[B]=y.onEnter(G[B],U,X),v[B]=p(y,t),B}e.enter=t;function r(y,B,v,G,T,O,X){_o.assertEqual(v[B],r),_o.assertIsDefined(y.onLeft),v[B]=p(y,r);let U=y.onLeft(G[B].left,T[B],G[B]);return U?(m(B,G,U),f(B,v,G,T,U)):B}e.left=r;function s(y,B,v,G,T,O,X){return _o.assertEqual(v[B],s),_o.assertIsDefined(y.onOperator),v[B]=p(y,s),y.onOperator(G[B].operatorToken,T[B],G[B]),B}e.operator=s;function a(y,B,v,G,T,O,X){_o.assertEqual(v[B],a),_o.assertIsDefined(y.onRight),v[B]=p(y,a);let U=y.onRight(G[B].right,T[B],G[B]);return U?(m(B,G,U),f(B,v,G,T,U)):B}e.right=a;function o(y,B,v,G,T,O,X){_o.assertEqual(v[B],o),v[B]=p(y,o);let U=y.onExit(G[B],T[B]);if(B>0){if(B--,y.foldState){let le=v[B]===o?"right":"left";T[B]=y.foldState(T[B],U,le)}}else O.value=U;return B}e.exit=o;function g(y,B,v,G,T,O,X){return _o.assertEqual(v[B],g),B}e.done=g;function p(y,B){switch(B){case t:if(y.onLeft)return r;case r:if(y.onOperator)return s;case s:if(y.onRight)return a;case a:return o;case o:return g;case g:return g;default:_o.fail("Invalid state")}}e.nextState=p;function f(y,B,v,G,T){return y++,B[y]=t,v[y]=T,G[y]=void 0,y}function m(y,B,v){if(_o.shouldAssert(2))for(;y>=0;)_o.assert(B[y]!==v,"Circular traversal detected."),y--}})(gii||(gii={}));function Aii(e,t){return typeof e=="object"?xAr(!1,e.prefix,e.node,e.suffix,t):typeof e=="string"?e.length>0&&e.charCodeAt(0)===35?e.slice(1):e:""}function yga(e,t){return typeof e=="string"?e:bga(e,_o.checkDefined(t))}function bga(e,t){return Zsi(e)?t(e).slice(1):fSe(e)?t(e):Cfe(e)?e.escapedText.slice(1):l9(e)}function xAr(e,t,r,s,a){return t=Aii(t,a),s=Aii(s,a),r=yga(r,a),`${e?"#":""}${t}${r}${s}`}function Noi(e){if(e.transformFlags&65536)return!0;if(e.transformFlags&128)for(let t of _ga(e)){let r=dYe(t);if(r&&gca(r)&&(r.transformFlags&65536||r.transformFlags&128&&Noi(r)))return!0}return!1}function XF(e,t){return t?Gse(e,t.pos,t.end):e}function hdr(e){let t=e.kind;return t===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}function Ega(e){let t=e.kind;return t===169||t===172||t===174||t===177||t===178||t===231||t===263}var dii,pii,fii,Iii,Cii,Bga={createBaseSourceFileNode:e=>new(Cii||(Cii=r2.getSourceFileConstructor()))(e,-1,-1),createBaseIdentifierNode:e=>new(fii||(fii=r2.getIdentifierConstructor()))(e,-1,-1),createBasePrivateIdentifierNode:e=>new(Iii||(Iii=r2.getPrivateIdentifierConstructor()))(e,-1,-1),createBaseTokenNode:e=>new(pii||(pii=r2.getTokenConstructor()))(e,-1,-1),createBaseNode:e=>new(dii||(dii=r2.getNodeConstructor()))(e,-1,-1)},Uhl=ddr(1,Bga);function oi(e,t){return t&&e(t)}function Pc(e,t,r){if(r){if(t)return t(r);for(let s of r){let a=e(s);if(a)return a}}}function vga(e,t){return e.charCodeAt(t+1)===42&&e.charCodeAt(t+2)===42&&e.charCodeAt(t+3)!==47}function Sga(e){return $W(e.statements,wga)||Tga(e)}function wga(e){return hdr(e)&&Nga(e,95)||hoi(e)&&Eoi(e.moduleReference)||_oi(e)||yoi(e)||boi(e)?e:void 0}function Tga(e){return e.flags&8388608?Roi(e):void 0}function Roi(e){return Rga(e)?e:HD(e,Roi)}function Nga(e,t){return mR(e.modifiers,r=>r.kind===t)}function Rga(e){return Oua(e)&&e.keywordToken===102&&e.name.escapedText==="meta"}var Dga={166:function(e,t,r){return oi(t,e.left)||oi(t,e.right)},168:function(e,t,r){return Pc(t,r,e.modifiers)||oi(t,e.name)||oi(t,e.constraint)||oi(t,e.default)||oi(t,e.expression)},304:function(e,t,r){return Pc(t,r,e.modifiers)||oi(t,e.name)||oi(t,e.questionToken)||oi(t,e.exclamationToken)||oi(t,e.equalsToken)||oi(t,e.objectAssignmentInitializer)},305:function(e,t,r){return oi(t,e.expression)},169:function(e,t,r){return Pc(t,r,e.modifiers)||oi(t,e.dotDotDotToken)||oi(t,e.name)||oi(t,e.questionToken)||oi(t,e.type)||oi(t,e.initializer)},172:function(e,t,r){return Pc(t,r,e.modifiers)||oi(t,e.name)||oi(t,e.questionToken)||oi(t,e.exclamationToken)||oi(t,e.type)||oi(t,e.initializer)},171:function(e,t,r){return Pc(t,r,e.modifiers)||oi(t,e.name)||oi(t,e.questionToken)||oi(t,e.type)||oi(t,e.initializer)},303:function(e,t,r){return Pc(t,r,e.modifiers)||oi(t,e.name)||oi(t,e.questionToken)||oi(t,e.exclamationToken)||oi(t,e.initializer)},260:function(e,t,r){return oi(t,e.name)||oi(t,e.exclamationToken)||oi(t,e.type)||oi(t,e.initializer)},208:function(e,t,r){return oi(t,e.dotDotDotToken)||oi(t,e.propertyName)||oi(t,e.name)||oi(t,e.initializer)},181:function(e,t,r){return Pc(t,r,e.modifiers)||Pc(t,r,e.typeParameters)||Pc(t,r,e.parameters)||oi(t,e.type)},185:function(e,t,r){return Pc(t,r,e.modifiers)||Pc(t,r,e.typeParameters)||Pc(t,r,e.parameters)||oi(t,e.type)},184:function(e,t,r){return Pc(t,r,e.modifiers)||Pc(t,r,e.typeParameters)||Pc(t,r,e.parameters)||oi(t,e.type)},179:mii,180:mii,174:function(e,t,r){return Pc(t,r,e.modifiers)||oi(t,e.asteriskToken)||oi(t,e.name)||oi(t,e.questionToken)||oi(t,e.exclamationToken)||Pc(t,r,e.typeParameters)||Pc(t,r,e.parameters)||oi(t,e.type)||oi(t,e.body)},173:function(e,t,r){return Pc(t,r,e.modifiers)||oi(t,e.name)||oi(t,e.questionToken)||Pc(t,r,e.typeParameters)||Pc(t,r,e.parameters)||oi(t,e.type)},176:function(e,t,r){return Pc(t,r,e.modifiers)||oi(t,e.name)||Pc(t,r,e.typeParameters)||Pc(t,r,e.parameters)||oi(t,e.type)||oi(t,e.body)},177:function(e,t,r){return Pc(t,r,e.modifiers)||oi(t,e.name)||Pc(t,r,e.typeParameters)||Pc(t,r,e.parameters)||oi(t,e.type)||oi(t,e.body)},178:function(e,t,r){return Pc(t,r,e.modifiers)||oi(t,e.name)||Pc(t,r,e.typeParameters)||Pc(t,r,e.parameters)||oi(t,e.type)||oi(t,e.body)},262:function(e,t,r){return Pc(t,r,e.modifiers)||oi(t,e.asteriskToken)||oi(t,e.name)||Pc(t,r,e.typeParameters)||Pc(t,r,e.parameters)||oi(t,e.type)||oi(t,e.body)},218:function(e,t,r){return Pc(t,r,e.modifiers)||oi(t,e.asteriskToken)||oi(t,e.name)||Pc(t,r,e.typeParameters)||Pc(t,r,e.parameters)||oi(t,e.type)||oi(t,e.body)},219:function(e,t,r){return Pc(t,r,e.modifiers)||Pc(t,r,e.typeParameters)||Pc(t,r,e.parameters)||oi(t,e.type)||oi(t,e.equalsGreaterThanToken)||oi(t,e.body)},175:function(e,t,r){return Pc(t,r,e.modifiers)||oi(t,e.body)},183:function(e,t,r){return oi(t,e.typeName)||Pc(t,r,e.typeArguments)},182:function(e,t,r){return oi(t,e.assertsModifier)||oi(t,e.parameterName)||oi(t,e.type)},186:function(e,t,r){return oi(t,e.exprName)||Pc(t,r,e.typeArguments)},187:function(e,t,r){return Pc(t,r,e.members)},188:function(e,t,r){return oi(t,e.elementType)},189:function(e,t,r){return Pc(t,r,e.elements)},192:hii,193:hii,194:function(e,t,r){return oi(t,e.checkType)||oi(t,e.extendsType)||oi(t,e.trueType)||oi(t,e.falseType)},195:function(e,t,r){return oi(t,e.typeParameter)},205:function(e,t,r){return oi(t,e.argument)||oi(t,e.attributes)||oi(t,e.qualifier)||Pc(t,r,e.typeArguments)},302:function(e,t,r){return oi(t,e.assertClause)},196:_ii,198:_ii,199:function(e,t,r){return oi(t,e.objectType)||oi(t,e.indexType)},200:function(e,t,r){return oi(t,e.readonlyToken)||oi(t,e.typeParameter)||oi(t,e.nameType)||oi(t,e.questionToken)||oi(t,e.type)||Pc(t,r,e.members)},201:function(e,t,r){return oi(t,e.literal)},202:function(e,t,r){return oi(t,e.dotDotDotToken)||oi(t,e.name)||oi(t,e.questionToken)||oi(t,e.type)},206:yii,207:yii,209:function(e,t,r){return Pc(t,r,e.elements)},210:function(e,t,r){return Pc(t,r,e.properties)},211:function(e,t,r){return oi(t,e.expression)||oi(t,e.questionDotToken)||oi(t,e.name)},212:function(e,t,r){return oi(t,e.expression)||oi(t,e.questionDotToken)||oi(t,e.argumentExpression)},213:bii,214:bii,215:function(e,t,r){return oi(t,e.tag)||oi(t,e.questionDotToken)||Pc(t,r,e.typeArguments)||oi(t,e.template)},216:function(e,t,r){return oi(t,e.type)||oi(t,e.expression)},217:function(e,t,r){return oi(t,e.expression)},220:function(e,t,r){return oi(t,e.expression)},221:function(e,t,r){return oi(t,e.expression)},222:function(e,t,r){return oi(t,e.expression)},224:function(e,t,r){return oi(t,e.operand)},229:function(e,t,r){return oi(t,e.asteriskToken)||oi(t,e.expression)},223:function(e,t,r){return oi(t,e.expression)},225:function(e,t,r){return oi(t,e.operand)},226:function(e,t,r){return oi(t,e.left)||oi(t,e.operatorToken)||oi(t,e.right)},234:function(e,t,r){return oi(t,e.expression)||oi(t,e.type)},235:function(e,t,r){return oi(t,e.expression)},238:function(e,t,r){return oi(t,e.expression)||oi(t,e.type)},236:function(e,t,r){return oi(t,e.name)},227:function(e,t,r){return oi(t,e.condition)||oi(t,e.questionToken)||oi(t,e.whenTrue)||oi(t,e.colonToken)||oi(t,e.whenFalse)},230:function(e,t,r){return oi(t,e.expression)},241:Eii,268:Eii,307:function(e,t,r){return Pc(t,r,e.statements)||oi(t,e.endOfFileToken)},243:function(e,t,r){return Pc(t,r,e.modifiers)||oi(t,e.declarationList)},261:function(e,t,r){return Pc(t,r,e.declarations)},244:function(e,t,r){return oi(t,e.expression)},245:function(e,t,r){return oi(t,e.expression)||oi(t,e.thenStatement)||oi(t,e.elseStatement)},246:function(e,t,r){return oi(t,e.statement)||oi(t,e.expression)},247:function(e,t,r){return oi(t,e.expression)||oi(t,e.statement)},248:function(e,t,r){return oi(t,e.initializer)||oi(t,e.condition)||oi(t,e.incrementor)||oi(t,e.statement)},249:function(e,t,r){return oi(t,e.initializer)||oi(t,e.expression)||oi(t,e.statement)},250:function(e,t,r){return oi(t,e.awaitModifier)||oi(t,e.initializer)||oi(t,e.expression)||oi(t,e.statement)},251:Bii,252:Bii,253:function(e,t,r){return oi(t,e.expression)},254:function(e,t,r){return oi(t,e.expression)||oi(t,e.statement)},255:function(e,t,r){return oi(t,e.expression)||oi(t,e.caseBlock)},269:function(e,t,r){return Pc(t,r,e.clauses)},296:function(e,t,r){return oi(t,e.expression)||Pc(t,r,e.statements)},297:function(e,t,r){return Pc(t,r,e.statements)},256:function(e,t,r){return oi(t,e.label)||oi(t,e.statement)},257:function(e,t,r){return oi(t,e.expression)},258:function(e,t,r){return oi(t,e.tryBlock)||oi(t,e.catchClause)||oi(t,e.finallyBlock)},299:function(e,t,r){return oi(t,e.variableDeclaration)||oi(t,e.block)},170:function(e,t,r){return oi(t,e.expression)},263:vii,231:vii,264:function(e,t,r){return Pc(t,r,e.modifiers)||oi(t,e.name)||Pc(t,r,e.typeParameters)||Pc(t,r,e.heritageClauses)||Pc(t,r,e.members)},265:function(e,t,r){return Pc(t,r,e.modifiers)||oi(t,e.name)||Pc(t,r,e.typeParameters)||oi(t,e.type)},266:function(e,t,r){return Pc(t,r,e.modifiers)||oi(t,e.name)||Pc(t,r,e.members)},306:function(e,t,r){return oi(t,e.name)||oi(t,e.initializer)},267:function(e,t,r){return Pc(t,r,e.modifiers)||oi(t,e.name)||oi(t,e.body)},271:function(e,t,r){return Pc(t,r,e.modifiers)||oi(t,e.name)||oi(t,e.moduleReference)},272:function(e,t,r){return Pc(t,r,e.modifiers)||oi(t,e.importClause)||oi(t,e.moduleSpecifier)||oi(t,e.attributes)},273:function(e,t,r){return oi(t,e.name)||oi(t,e.namedBindings)},300:function(e,t,r){return Pc(t,r,e.elements)},301:function(e,t,r){return oi(t,e.name)||oi(t,e.value)},270:function(e,t,r){return Pc(t,r,e.modifiers)||oi(t,e.name)},274:function(e,t,r){return oi(t,e.name)},280:function(e,t,r){return oi(t,e.name)},275:Sii,279:Sii,278:function(e,t,r){return Pc(t,r,e.modifiers)||oi(t,e.exportClause)||oi(t,e.moduleSpecifier)||oi(t,e.attributes)},276:wii,281:wii,277:function(e,t,r){return Pc(t,r,e.modifiers)||oi(t,e.expression)},228:function(e,t,r){return oi(t,e.head)||Pc(t,r,e.templateSpans)},239:function(e,t,r){return oi(t,e.expression)||oi(t,e.literal)},203:function(e,t,r){return oi(t,e.head)||Pc(t,r,e.templateSpans)},204:function(e,t,r){return oi(t,e.type)||oi(t,e.literal)},167:function(e,t,r){return oi(t,e.expression)},298:function(e,t,r){return Pc(t,r,e.types)},233:function(e,t,r){return oi(t,e.expression)||Pc(t,r,e.typeArguments)},283:function(e,t,r){return oi(t,e.expression)},282:function(e,t,r){return Pc(t,r,e.modifiers)},356:function(e,t,r){return Pc(t,r,e.elements)},284:function(e,t,r){return oi(t,e.openingElement)||Pc(t,r,e.children)||oi(t,e.closingElement)},288:function(e,t,r){return oi(t,e.openingFragment)||Pc(t,r,e.children)||oi(t,e.closingFragment)},285:Tii,286:Tii,292:function(e,t,r){return Pc(t,r,e.properties)},291:function(e,t,r){return oi(t,e.name)||oi(t,e.initializer)},293:function(e,t,r){return oi(t,e.expression)},294:function(e,t,r){return oi(t,e.dotDotDotToken)||oi(t,e.expression)},287:function(e,t,r){return oi(t,e.tagName)},295:function(e,t,r){return oi(t,e.namespace)||oi(t,e.name)},190:ife,191:ife,309:ife,315:ife,314:ife,316:ife,318:ife,317:function(e,t,r){return Pc(t,r,e.parameters)||oi(t,e.type)},320:function(e,t,r){return(typeof e.comment=="string"?void 0:Pc(t,r,e.comment))||Pc(t,r,e.tags)},347:function(e,t,r){return oi(t,e.tagName)||oi(t,e.name)||(typeof e.comment=="string"?void 0:Pc(t,r,e.comment))},310:function(e,t,r){return oi(t,e.name)},311:function(e,t,r){return oi(t,e.left)||oi(t,e.right)},341:Nii,348:Nii,330:function(e,t,r){return oi(t,e.tagName)||(typeof e.comment=="string"?void 0:Pc(t,r,e.comment))},329:function(e,t,r){return oi(t,e.tagName)||oi(t,e.class)||(typeof e.comment=="string"?void 0:Pc(t,r,e.comment))},328:function(e,t,r){return oi(t,e.tagName)||oi(t,e.class)||(typeof e.comment=="string"?void 0:Pc(t,r,e.comment))},345:function(e,t,r){return oi(t,e.tagName)||oi(t,e.constraint)||Pc(t,r,e.typeParameters)||(typeof e.comment=="string"?void 0:Pc(t,r,e.comment))},346:function(e,t,r){return oi(t,e.tagName)||(e.typeExpression&&e.typeExpression.kind===309?oi(t,e.typeExpression)||oi(t,e.fullName)||(typeof e.comment=="string"?void 0:Pc(t,r,e.comment)):oi(t,e.fullName)||oi(t,e.typeExpression)||(typeof e.comment=="string"?void 0:Pc(t,r,e.comment)))},338:function(e,t,r){return oi(t,e.tagName)||oi(t,e.fullName)||oi(t,e.typeExpression)||(typeof e.comment=="string"?void 0:Pc(t,r,e.comment))},342:sfe,344:sfe,343:sfe,340:sfe,350:sfe,349:sfe,339:sfe,323:function(e,t,r){return $W(e.typeParameters,t)||$W(e.parameters,t)||oi(t,e.type)},324:dAr,325:dAr,326:dAr,322:function(e,t,r){return $W(e.jsDocPropertyTags,t)},327:wse,332:wse,333:wse,334:wse,335:wse,336:wse,331:wse,337:wse,351:xga,355:kga};function mii(e,t,r){return Pc(t,r,e.typeParameters)||Pc(t,r,e.parameters)||oi(t,e.type)}function hii(e,t,r){return Pc(t,r,e.types)}function _ii(e,t,r){return oi(t,e.type)}function yii(e,t,r){return Pc(t,r,e.elements)}function bii(e,t,r){return oi(t,e.expression)||oi(t,e.questionDotToken)||Pc(t,r,e.typeArguments)||Pc(t,r,e.arguments)}function Eii(e,t,r){return Pc(t,r,e.statements)}function Bii(e,t,r){return oi(t,e.label)}function vii(e,t,r){return Pc(t,r,e.modifiers)||oi(t,e.name)||Pc(t,r,e.typeParameters)||Pc(t,r,e.heritageClauses)||Pc(t,r,e.members)}function Sii(e,t,r){return Pc(t,r,e.elements)}function wii(e,t,r){return oi(t,e.propertyName)||oi(t,e.name)}function Tii(e,t,r){return oi(t,e.tagName)||Pc(t,r,e.typeArguments)||oi(t,e.attributes)}function ife(e,t,r){return oi(t,e.type)}function Nii(e,t,r){return oi(t,e.tagName)||(e.isNameFirst?oi(t,e.name)||oi(t,e.typeExpression):oi(t,e.typeExpression)||oi(t,e.name))||(typeof e.comment=="string"?void 0:Pc(t,r,e.comment))}function sfe(e,t,r){return oi(t,e.tagName)||oi(t,e.typeExpression)||(typeof e.comment=="string"?void 0:Pc(t,r,e.comment))}function dAr(e,t,r){return oi(t,e.name)}function wse(e,t,r){return oi(t,e.tagName)||(typeof e.comment=="string"?void 0:Pc(t,r,e.comment))}function xga(e,t,r){return oi(t,e.tagName)||oi(t,e.importClause)||oi(t,e.moduleSpecifier)||oi(t,e.attributes)||(typeof e.comment=="string"?void 0:Pc(t,r,e.comment))}function kga(e,t,r){return oi(t,e.expression)}function HD(e,t,r){if(e===void 0||e.kind<=165)return;let s=Dga[e.kind];return s===void 0?void 0:s(e,t,r)}function Rii(e,t,r){let s=Dii(e),a=[];for(;a.length=0;--p)s.push(o[p]),a.push(g)}else{let p=t(o,g);if(p){if(p==="skip")continue;return p}if(o.kind>=166)for(let f of Dii(o))s.push(f),a.push(o)}}}function Dii(e){let t=[];return HD(e,r,r),t;function r(s){t.unshift(s)}}function Doi(e){e.externalModuleIndicator=Sga(e)}function Gga(e,t,r,s=!1,a){var o,g;(o=RCt)==null||o.push(RCt.Phase.Parse,"createSourceFile",{path:e},!0),kni("beforeParse");let p,{languageVersion:f,setExternalModuleIndicator:m,impliedNodeFormat:y,jsDocParsingMode:B}=typeof r=="object"?r:{languageVersion:r};if(f===100)p=ffe.parseSourceFile(e,t,f,void 0,s,6,_Se,B);else{let v=y===void 0?m:G=>(G.impliedNodeFormat=y,(m||Doi)(G));p=ffe.parseSourceFile(e,t,f,void 0,s,a,v,B)}return kni("afterParse"),Qoa("Parse","beforeParse","afterParse"),(g=RCt)==null||g.pop(),p}function Fga(e){return e.externalModuleIndicator!==void 0}function Zga(e,t,r,s=!1){let a=JCt.updateSourceFile(e,t,r,s);return a.flags|=e.flags&12582912,a}var ffe;(e=>{var t=$Ar(99,!0),r=40960,s,a,o,g,p;function f(Ke){return Gn++,Ke}var m={createBaseSourceFileNode:Ke=>f(new p(Ke,0,0)),createBaseIdentifierNode:Ke=>f(new o(Ke,0,0)),createBasePrivateIdentifierNode:Ke=>f(new g(Ke,0,0)),createBaseTokenNode:Ke=>f(new a(Ke,0,0)),createBaseNode:Ke=>f(new s(Ke,0,0))},y=ddr(11,m),{createNodeArray:B,createNumericLiteral:v,createStringLiteral:G,createLiteralLikeNode:T,createIdentifier:O,createPrivateIdentifier:X,createToken:U,createArrayLiteralExpression:le,createObjectLiteralExpression:ae,createPropertyAccessExpression:ge,createPropertyAccessChain:fe,createElementAccessExpression:pe,createElementAccessChain:he,createCallExpression:be,createCallChain:Te,createNewExpression:ke,createParenthesizedExpression:x,createBlock:et,createVariableStatement:Ue,createExpressionStatement:Je,createIfStatement:Xe,createWhileStatement:ft,createForStatement:Gt,createForOfStatement:er,createVariableDeclaration:Ur,createVariableDeclarationList:Ot}=y,dr,Ar,or,Fr,$r,Or,In,Br,tr,gn,Gn,we,Zi,Za,ka,Qs,lr=!0,ga=!1;function vi(Ke,Ft,Er,Jr,Un=!1,Ki,Ss,vo=0){var Pa;if(Ki=Fla(Ke,Ki),Ki===6){let xc=Yu(Ke,Ft,Er,Jr,Un);return convertToJson(xc,(Pa=xc.statements[0])==null?void 0:Pa.expression,xc.parseDiagnostics,!1,void 0),xc.referencedFiles=n2,xc.typeReferenceDirectives=n2,xc.libReferenceDirectives=n2,xc.amdDependencies=n2,xc.hasNoDefaultLib=!1,xc.pragmas=foa,xc}YA(Ke,Ft,Er,Jr,Ki,vo);let js=TA(Er,Un,Ki,Ss||Doi,vo);return ud(),js}e.parseSourceFile=vi;function Qu(Ke,Ft){YA("",Ke,Ft,void 0,1,0),us();let Er=ie(!0),Jr=Rt()===1&&!In.length;return ud(),Jr?Er:void 0}e.parseIsolatedEntityName=Qu;function Yu(Ke,Ft,Er=2,Jr,Un=!1){YA(Ke,Ft,Er,Jr,6,0),Ar=Qs,us();let Ki=ei(),Ss,vo;if(Rt()===1)Ss=iu([],Ki,Ki),vo=Bl();else{let xc;for(;Rt()!==1;){let Ig;switch(Rt()){case 23:Ig=j_();break;case 112:case 97:case 106:Ig=Bl();break;case 41:Os(()=>us()===9&&us()!==59)?Ig=zh():Ig=b1();break;case 9:case 11:if(Os(()=>us()!==59)){Ig=Po();break}default:Ig=b1();break}xc&&Xz(xc)?xc.push(Ig):xc?xc=[xc,Ig]:(xc=Ig,Rt()!==1&&hl(Ni.Unexpected_token))}let Jl=Xz(xc)?ii(le(xc),Ki):_o.checkDefined(xc),nA=Je(Jl);ii(nA,Ki),Ss=iu([nA],Ki),vo=pI(1,Ni.Unexpected_token)}let Pa=nn(Ke,2,6,!1,Ss,vo,Ar,_Se);Un&&Ir(Pa),Pa.nodeCount=Gn,Pa.identifierCount=Zi,Pa.identifiers=we,Pa.parseDiagnostics=nfe(In,Pa),Br&&(Pa.jsDocDiagnostics=nfe(Br,Pa));let js=Pa;return ud(),js}e.parseJsonText=Yu;function YA(Ke,Ft,Er,Jr,Un,Ki){switch(s=r2.getNodeConstructor(),a=r2.getTokenConstructor(),o=r2.getIdentifierConstructor(),g=r2.getPrivateIdentifierConstructor(),p=r2.getSourceFileConstructor(),dr=raa(Ke),or=Ft,Fr=Er,tr=Jr,$r=Un,Or=$ni(Un),In=[],Za=0,we=new Map,Zi=0,Gn=0,Ar=0,lr=!0,$r){case 1:case 2:Qs=524288;break;case 6:Qs=134742016;break;default:Qs=0;break}ga=!1,t.setText(or),t.setOnError(Td),t.setScriptTarget(Fr),t.setLanguageVariant(Or),t.setScriptKind($r),t.setJSDocParsingMode(Ki)}function ud(){t.clearCommentDirectives(),t.setText(""),t.setOnError(void 0),t.setScriptKind(0),t.setJSDocParsingMode(0),or=void 0,Fr=void 0,tr=void 0,$r=void 0,Or=void 0,Ar=0,In=void 0,Br=void 0,Za=0,we=void 0,ka=void 0,lr=!0}function TA(Ke,Ft,Er,Jr,Un){let Ki=Wga(dr);Ki&&(Qs|=33554432),Ar=Qs,us();let Ss=vp(0,gh);_o.assert(Rt()===1);let vo=Qa(),Pa=jr(Bl(),vo),js=nn(dr,Ke,Er,Ki,Ss,Pa,Ar,Jr);return Mga(js,or),Qga(js,xc),js.commentDirectives=t.getCommentDirectives(),js.nodeCount=Gn,js.identifierCount=Zi,js.identifiers=we,js.parseDiagnostics=nfe(In,js),js.jsDocParsingMode=Un,Br&&(js.jsDocDiagnostics=nfe(Br,js)),Ft&&Ir(js),js;function xc(Jl,nA,Ig){In.push(iSe(dr,or,Jl,nA,Ig))}}let Ld=!1;function jr(Ke,Ft){if(!Ft)return Ke;_o.assert(!Ke.jsDoc);let Er=hoa(Dca(Ke,or),Jr=>h2.parseJSDocComment(Ke,Jr.pos,Jr.end-Jr.pos));return Er.length&&(Ke.jsDoc=Er),Ld&&(Ld=!1,Ke.flags|=536870912),Ke}function Gr(Ke){let Ft=tr,Er=JCt.createSyntaxCursor(Ke);tr={currentNode:xc};let Jr=[],Un=In;In=[];let Ki=0,Ss=Pa(Ke.statements,0);for(;Ss!==-1;){let Jl=Ke.statements[Ki],nA=Ke.statements[Ss];c9(Jr,Ke.statements,Ki,Ss),Ki=js(Ke.statements,Ss);let Ig=nAr(Un,NE=>NE.start>=Jl.pos),Uu=Ig>=0?nAr(Un,NE=>NE.start>=nA.pos,Ig):-1;Ig>=0&&c9(In,Un,Ig,Uu>=0?Uu:void 0),bA(()=>{let NE=Qs;for(Qs|=65536,t.resetTokenState(nA.pos),us();Rt()!==1;){let Cy=t.getTokenFullStart(),_2=tA(0,gh);if(Jr.push(_2),Cy===t.getTokenFullStart()&&us(),Ki>=0){let y2=Ke.statements[Ki];if(_2.end===y2.pos)break;_2.end>y2.pos&&(Ki=js(Ke.statements,Ki+1))}}Qs=NE},2),Ss=Ki>=0?Pa(Ke.statements,Ki):-1}if(Ki>=0){let Jl=Ke.statements[Ki];c9(Jr,Ke.statements,Ki);let nA=nAr(Un,Ig=>Ig.start>=Jl.pos);nA>=0&&c9(In,Un,nA)}return tr=Ft,y.updateSourceFile(Ke,XF(B(Jr),Ke.statements));function vo(Jl){return!(Jl.flags&65536)&&!!(Jl.transformFlags&67108864)}function Pa(Jl,nA){for(let Ig=nA;Ig118}function ll(){return Rt()===80?!0:Rt()===127&&xl()||Rt()===135&&Dg()?!1:Rt()>118}function Ts(Ke,Ft,Er=!0){return Rt()===Ke?(Er&&us(),!0):(Ft?hl(Ft):hl(Ni._0_expected,ay(Ke)),!1)}let NA=Object.keys(jAr).filter(Ke=>Ke.length>2);function Ud(Ke){if(Fua(Ke)){Lg(YU(or,Ke.template.pos),Ke.template.end,Ni.Module_declaration_names_may_only_use_or_quoted_strings);return}let Ft=mh(Ke)?l9(Ke):void 0;if(!Ft||!Baa(Ft,Fr)){hl(Ni._0_expected,ay(27));return}let Er=YU(or,Ke.pos);switch(Ft){case"const":case"let":case"var":Lg(Er,Ke.end,Ni.Variable_declaration_not_allowed_at_this_location);return;case"declare":return;case"interface":Ra(Ni.Interface_name_cannot_be_0,Ni.Interface_must_be_given_a_name,19);return;case"is":Lg(Er,t.getTokenStart(),Ni.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return;case"module":case"namespace":Ra(Ni.Namespace_name_cannot_be_0,Ni.Namespace_must_be_given_a_name,19);return;case"type":Ra(Ni.Type_alias_name_cannot_be_0,Ni.Type_alias_must_be_given_a_name,64);return}let Jr=lYe(Ft,NA,gE)??ys(Ft);if(Jr){Lg(Er,Ke.end,Ni.Unknown_keyword_or_identifier_Did_you_mean_0,Jr);return}Rt()!==0&&Lg(Er,Ke.end,Ni.Unexpected_keyword_or_identifier)}function Ra(Ke,Ft,Er){Rt()===Er?hl(Ft):hl(Ke,t.getTokenValue())}function ys(Ke){for(let Ft of NA)if(Ke.length>Ft.length+2&&ZCt(Ke,Ft))return`${Ft} ${Ke.slice(Ft.length)}`}function Xa(Ke,Ft,Er){if(Rt()===60&&!t.hasPrecedingLineBreak()){hl(Ni.Decorators_must_precede_the_name_and_all_keywords_of_property_declarations);return}if(Rt()===21){hl(Ni.Cannot_start_a_function_call_in_a_type_annotation),us();return}if(Ft&&!LA()){Er?hl(Ni._0_expected,ay(27)):hl(Ni.Expected_for_property_initializer);return}if(!lf()){if(Er){hl(Ni._0_expected,ay(27));return}Ud(Ke)}}function cm(Ke){return Rt()===Ke?(og(),!0):(_o.assert(aAr(Ke)),hl(Ni._0_expected,ay(Ke)),!1)}function eo(Ke,Ft,Er,Jr){if(Rt()===Ft){us();return}let Un=hl(Ni._0_expected,ay(Ft));Er&&Un&&SCt(Un,iSe(dr,or,Jr,1,Ni.The_parser_expected_to_find_a_1_to_match_the_0_token_here,ay(Ke),ay(Ft)))}function ps(Ke){return Rt()===Ke?(us(),!0):!1}function oc(Ke){if(Rt()===Ke)return Bl()}function TC(Ke){if(Rt()===Ke)return il()}function pI(Ke,Ft,Er){return oc(Ke)||NC(Ke,!1,Ft||Ni._0_expected,Er||ay(Ke))}function SI(Ke){return TC(Ke)||(_o.assert(aAr(Ke)),NC(Ke,!1,Ni._0_expected,ay(Ke)))}function Bl(){let Ke=ei(),Ft=Rt();return us(),ii(U(Ft),Ke)}function il(){let Ke=ei(),Ft=Rt();return og(),ii(U(Ft),Ke)}function LA(){return Rt()===27?!0:Rt()===20||Rt()===1||t.hasPrecedingLineBreak()}function lf(){return LA()?(Rt()===27&&us(),!0):!1}function za(){return lf()||Ts(27)}function iu(Ke,Ft,Er,Jr){let Un=B(Ke,Jr);return Gse(Un,Ft,Er??t.getTokenFullStart()),Un}function ii(Ke,Ft,Er){return Gse(Ke,Ft,Er??t.getTokenFullStart()),Qs&&(Ke.flags|=Qs),ga&&(ga=!1,Ke.flags|=262144),Ke}function NC(Ke,Ft,Er,...Jr){Ft?au(t.getTokenFullStart(),0,Er,...Jr):Er&&hl(Er,...Jr);let Un=ei(),Ki=Ke===80?O("",void 0):Yni(Ke)?y.createTemplateLiteralLikeNode(Ke,"","",void 0):Ke===9?v("",void 0):Ke===11?G("",void 0):Ke===282?y.createMissingDeclaration():U(Ke);return ii(Ki,Un)}function Jh(Ke){let Ft=we.get(Ke);return Ft===void 0&&we.set(Ke,Ft=Ke),Ft}function Tm(Ke,Ft,Er){if(Ke){Zi++;let vo=t.hasPrecedingJSDocLeadingAsterisks()?t.getTokenStart():ei(),Pa=Rt(),js=Jh(t.getTokenValue()),xc=t.hasExtendedUnicodeEscape();return kl(),ii(O(js,Pa,xc),vo)}if(Rt()===81)return hl(Er||Ni.Private_identifiers_are_not_allowed_outside_class_bodies),Tm(!0);if(Rt()===0&&t.tryScan(()=>t.reScanInvalidIdentifier()===80))return Tm(!0);Zi++;let Jr=Rt()===1,Un=t.isReservedWord(),Ki=t.getTokenText(),Ss=Un?Ni.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:Ni.Identifier_expected;return NC(80,Jr,Ft||Ss,Ki)}function _l(Ke){return Tm(ec(),void 0,Ke)}function Og(Ke,Ft){return Tm(ll(),Ke,Ft)}function sp(Ke){return Tm(a1(Rt()),Ke)}function lm(){return(t.hasUnicodeEscape()||t.hasExtendedUnicodeEscape())&&hl(Ni.Unicode_escape_sequence_cannot_appear_here),Tm(a1(Rt()))}function ch(){return a1(Rt())||Rt()===11||Rt()===9||Rt()===10}function Xl(){return a1(Rt())||Rt()===11}function Wp(Ke){if(Rt()===11||Rt()===9||Rt()===10){let Ft=Po();return Ft.text=Jh(Ft.text),Ft}return Ke&&Rt()===23?fs():Rt()===81?Ao():sp()}function uC(){return Wp(!0)}function fs(){let Ke=ei();Ts(23);let Ft=pa(VA);return Ts(24),ii(y.createComputedPropertyName(Ft),Ke)}function Ao(){let Ke=ei(),Ft=X(Jh(t.getTokenValue()));return us(),ii(Ft,Ke)}function Do(Ke){return Rt()===Ke&&Hi(Nr)}function zl(){return us(),t.hasPrecedingLineBreak()?!1:Ks()}function Nr(){switch(Rt()){case 87:return us()===94;case 95:return us(),Rt()===90?Os(Zl):Rt()===156?Os(Di):Nn();case 90:return Zl();case 126:return us(),Ks();case 139:case 153:return us(),Li();default:return zl()}}function Nn(){return Rt()===60||Rt()!==42&&Rt()!==130&&Rt()!==19&&Ks()}function Di(){return us(),Nn()}function na(){return Qz(Rt())&&Hi(Nr)}function Ks(){return Rt()===23||Rt()===19||Rt()===42||Rt()===26||ch()}function Li(){return Rt()===23||ch()}function Zl(){return us(),Rt()===86||Rt()===100||Rt()===120||Rt()===60||Rt()===128&&Os(e_)||Rt()===134&&Os(aa)}function RA(Ke,Ft){if(R0(Ke))return!0;switch(Ke){case 0:case 1:case 3:return!(Rt()===27&&Ft)&&wE();case 2:return Rt()===84||Rt()===90;case 4:return Os(wI);case 5:return Os(MI)||Rt()===27&&!Ft;case 6:return Rt()===23||ch();case 12:switch(Rt()){case 23:case 42:case 26:case 25:return!0;default:return ch()}case 18:return ch();case 9:return Rt()===23||Rt()===26||ch();case 24:return Xl();case 7:return Rt()===19?Os(Nd):Ft?ll()&&!f1():A2()&&!f1();case 8:return Xw();case 10:return Rt()===28||Rt()===26||Xw();case 19:return Rt()===103||Rt()===87||ll();case 15:switch(Rt()){case 28:case 25:return!0}case 11:return Rt()===26||OI();case 16:return yE(!1);case 17:return yE(!0);case 20:case 21:return Rt()===28||at();case 22:return vr();case 23:return Rt()===161&&Os(gA)?!1:Rt()===11?!0:a1(Rt());case 13:return a1(Rt())||Rt()===19;case 14:return!0;case 25:return!0;case 26:return _o.fail("ParsingContext.Count used as a context");default:_o.assertNever(Ke,"Non-exhaustive case in 'isListElement'.")}}function Nd(){if(_o.assert(Rt()===19),us()===20){let Ke=us();return Ke===28||Ke===19||Ke===96||Ke===119}return!0}function WI(){return us(),ll()}function pl(){return us(),a1(Rt())}function Qm(){return us(),naa(Rt())}function f1(){return Rt()===119||Rt()===96?Os(fv):!1}function fv(){return us(),OI()}function eA(){return us(),at()}function Nm(Ke){if(Rt()===1)return!0;switch(Ke){case 1:case 2:case 4:case 5:case 6:case 12:case 9:case 23:case 24:return Rt()===20;case 3:return Rt()===20||Rt()===84||Rt()===90;case 7:return Rt()===19||Rt()===96||Rt()===119;case 8:return lh();case 19:return Rt()===32||Rt()===21||Rt()===19||Rt()===96||Rt()===119;case 11:return Rt()===22||Rt()===27;case 15:case 21:case 10:return Rt()===24;case 17:case 16:case 18:return Rt()===22||Rt()===24;case 20:return Rt()!==28;case 22:return Rt()===19||Rt()===20;case 13:return Rt()===32||Rt()===44;case 14:return Rt()===30&&Os(Xm);default:return!1}}function lh(){return!!(LA()||jh(Rt())||Rt()===39)}function Oy(){_o.assert(Za,"Missing parsing context");for(let Ke=0;Ke<26;Ke++)if(Za&1<=0)}function eI(Ke){return Ke===6?Ni.An_enum_member_name_must_be_followed_by_a_or:void 0}function Zf(){let Ke=iu([],ei());return Ke.isMissingList=!0,Ke}function hE(Ke){return!!Ke.isMissingList}function uy(Ke,Ft,Er,Jr){if(Ts(Er)){let Un=Ef(Ke,Ft);return Ts(Jr),Un}return Zf()}function ie(Ke,Ft){let Er=ei(),Jr=Ke?sp(Ft):Og(Ft);for(;ps(25)&&Rt()!==30;)Jr=ii(y.createQualifiedName(Jr,J(Ke,!1,!0)),Er);return Jr}function w(Ke,Ft){return ii(y.createQualifiedName(Ke,Ft),Ke.pos)}function J(Ke,Ft,Er){if(t.hasPrecedingLineBreak()&&a1(Rt())&&Os(z_))return NC(80,!0,Ni.Identifier_expected);if(Rt()===81){let Jr=Ao();return Ft?Jr:NC(80,!0,Ni.Identifier_expected)}return Ke?Er?sp():lm():Og()}function ye(Ke){let Ft=ei(),Er=[],Jr;do Jr=Dn(Ke),Er.push(Jr);while(Jr.literal.kind===17);return iu(Er,Ft)}function ut(Ke){let Ft=ei();return ii(y.createTemplateExpression(fc(Ke),ye(Ke)),Ft)}function zt(){let Ke=ei();return ii(y.createTemplateLiteralType(fc(!1),Zr()),Ke)}function Zr(){let Ke=ei(),Ft=[],Er;do Er=wr(),Ft.push(Er);while(Er.literal.kind===17);return iu(Ft,Ke)}function wr(){let Ke=ei();return ii(y.createTemplateLiteralTypeSpan(jp(),Yn(!1)),Ke)}function Yn(Ke){return Rt()===20?(cA(Ke),Xc()):pI(18,Ni._0_expected,ay(20))}function Dn(Ke){let Ft=ei();return ii(y.createTemplateSpan(pa(VA),Yn(Ke)),Ft)}function Po(){return yu(Rt())}function fc(Ke){!Ke&&t.getTokenFlags()&26656&&cA(!1);let Ft=yu(Rt());return _o.assert(Ft.kind===16,"Template head has wrong token kind"),Ft}function Xc(){let Ke=yu(Rt());return _o.assert(Ke.kind===17||Ke.kind===18,"Template fragment has wrong token kind"),Ke}function Yo(Ke){let Ft=Ke===15||Ke===18,Er=t.getTokenText();return Er.substring(1,Er.length-(t.isUnterminated()?0:Ft?1:2))}function yu(Ke){let Ft=ei(),Er=Yni(Ke)?y.createTemplateLiteralLikeNode(Ke,t.getTokenValue(),Yo(Ke),t.getTokenFlags()&7176):Ke===9?v(t.getTokenValue(),t.getNumericLiteralFlags()):Ke===11?G(t.getTokenValue(),void 0,t.hasExtendedUnicodeEscape()):eca(Ke)?T(Ke,t.getTokenValue()):_o.fail();return t.hasExtendedUnicodeEscape()&&(Er.hasExtendedUnicodeEscape=!0),t.isUnterminated()&&(Er.isUnterminated=!0),us(),ii(Er,Ft)}function op(){return ie(!0,Ni.Type_expected)}function lA(){if(!t.hasPrecedingLineBreak()&&HA()===30)return uy(20,jp,30,32)}function tI(){let Ke=ei();return ii(y.createTypeReferenceNode(op(),lA()),Ke)}function Kd(Ke){switch(Ke.kind){case 183:return dfe(Ke.typeName);case 184:case 185:{let{parameters:Ft,type:Er}=Ke;return hE(Ft)||Kd(Er)}case 196:return Kd(Ke.type);default:return!1}}function D0(Ke){return us(),ii(y.createTypePredicateNode(void 0,Ke,jp()),Ke.pos)}function ya(){let Ke=ei();return us(),ii(y.createThisTypeNode(),Ke)}function md(){let Ke=ei();return us(),ii(y.createJSDocAllType(),Ke)}function fI(){let Ke=ei();return us(),ii(y.createJSDocNonNullableType(dc(),!1),Ke)}function Bf(){let Ke=ei();return us(),Rt()===28||Rt()===20||Rt()===22||Rt()===32||Rt()===64||Rt()===52?ii(y.createJSDocUnknownType(),Ke):ii(y.createJSDocNullableType(jp(),!1),Ke)}function Uh(){let Ke=ei(),Ft=Qa();if(Hi(Bv)){let Er=ug(36),Jr=RC(59,!1);return jr(ii(y.createJSDocFunctionType(Er,Jr),Ke),Ft)}return ii(y.createTypeReferenceNode(sp(),void 0),Ke)}function Ym(){let Ke=ei(),Ft;return(Rt()===110||Rt()===105)&&(Ft=sp(),Ts(59)),ii(y.createParameterDeclaration(void 0,void 0,Ft,void 0,IS(),void 0),Ke)}function IS(){t.setSkipJsDocLeadingAsterisks(!0);let Ke=ei();if(ps(144)){let Jr=y.createJSDocNamepathType(void 0);e:for(;;)switch(Rt()){case 20:case 1:case 28:case 5:break e;default:og()}return t.setSkipJsDocLeadingAsterisks(!1),ii(Jr,Ke)}let Ft=ps(26),Er=C1();return t.setSkipJsDocLeadingAsterisks(!1),Ft&&(Er=ii(y.createJSDocVariadicType(Er),Ke)),Rt()===64?(us(),ii(y.createJSDocOptionalType(Er),Ke)):Er}function CS(){let Ke=ei();Ts(114);let Ft=ie(!0),Er=t.hasPrecedingLineBreak()?void 0:Sn();return ii(y.createTypeQueryNode(Ft,Er),Ke)}function _E(){let Ke=ei(),Ft=xe(!1,!0),Er=Og(),Jr,Un;ps(96)&&(at()||!OI()?Jr=jp():Un=eN());let Ki=ps(64)?jp():void 0,Ss=y.createTypeParameterDeclaration(Ft,Er,Jr,Ki);return Ss.expression=Un,ii(Ss,Ke)}function x0(){if(Rt()===30)return uy(19,_E,30,32)}function yE(Ke){return Rt()===26||Xw()||Qz(Rt())||Rt()===60||at(!Ke)}function CB(Ke){let Ft=dC(Ni.Private_identifiers_cannot_be_used_as_parameters);return Sca(Ft)===0&&!mR(Ke)&&Qz(Rt())&&us(),Ft}function J_(){return ec()||Rt()===23||Rt()===19}function yh(Ke){return ql(Ke)}function U_(Ke){return ql(Ke,!1)}function ql(Ke,Ft=!0){let Er=ei(),Jr=Qa(),Un=Ke?wi(()=>xe(!0)):ts(()=>xe(!0));if(Rt()===110){let Pa=y.createParameterDeclaration(Un,void 0,Tm(!0),void 0,dy(),void 0),js=YAr(Un);return js&&cf(js,Ni.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters),jr(ii(Pa,Er),Jr)}let Ki=lr;lr=!1;let Ss=oc(26);if(!Ft&&!J_())return;let vo=jr(ii(y.createParameterDeclaration(Un,Ss,CB(Un),oc(58),dy(),Am()),Er),Jr);return lr=Ki,vo}function RC(Ke,Ft){if(Kl(Ke,Ft))return Fu(C1)}function Kl(Ke,Ft){return Ke===39?(Ts(Ke),!0):ps(59)?!0:Ft&&Rt()===39?(hl(Ni._0_expected,ay(59)),us(),!0):!1}function ap(Ke,Ft){let Er=xl(),Jr=Dg();Ji(!!(Ke&1)),Ws(!!(Ke&2));let Un=Ke&32?Ef(17,Ym):Ef(16,()=>Ft?yh(Jr):U_(Jr));return Ji(Er),Ws(Jr),Un}function ug(Ke){if(!Ts(21))return Zf();let Ft=ap(Ke,!0);return Ts(22),Ft}function Hm(){ps(28)||za()}function Tb(Ke){let Ft=ei(),Er=Qa();Ke===180&&Ts(105);let Jr=x0(),Un=ug(4),Ki=RC(59,!0);Hm();let Ss=Ke===179?y.createCallSignature(Jr,Un,Ki):y.createConstructSignature(Jr,Un,Ki);return jr(ii(Ss,Ft),Er)}function rA(){return Rt()===23&&Os(Iv)}function Iv(){if(us(),Rt()===26||Rt()===24)return!0;if(Qz(Rt())){if(us(),ll())return!0}else if(ll())us();else return!1;return Rt()===59||Rt()===28?!0:Rt()!==58?!1:(us(),Rt()===59||Rt()===28||Rt()===24)}function My(Ke,Ft,Er){let Jr=uy(16,()=>yh(!1),23,24),Un=dy();Hm();let Ki=y.createIndexSignature(Er,Jr,Un);return jr(ii(Ki,Ke),Ft)}function QC(Ke,Ft,Er){let Jr=uC(),Un=oc(58),Ki;if(Rt()===21||Rt()===30){let Ss=x0(),vo=ug(4),Pa=RC(59,!0);Ki=y.createMethodSignature(Er,Jr,Un,Ss,vo,Pa)}else{let Ss=dy();Ki=y.createPropertySignature(Er,Jr,Un,Ss),Rt()===64&&(Ki.initializer=Am())}return Hm(),jr(ii(Ki,Ke),Ft)}function wI(){if(Rt()===21||Rt()===30||Rt()===139||Rt()===153)return!0;let Ke=!1;for(;Qz(Rt());)Ke=!0,us();return Rt()===23?!0:(ch()&&(Ke=!0,us()),Ke?Rt()===21||Rt()===30||Rt()===58||Rt()===59||Rt()===28||LA():!1)}function Fi(){if(Rt()===21||Rt()===30)return Tb(179);if(Rt()===105&&Os(Lo))return Tb(180);let Ke=ei(),Ft=Qa(),Er=xe(!1);return Do(139)?Z(Ke,Ft,Er,177,4):Do(153)?Z(Ke,Ft,Er,178,4):rA()?My(Ke,Ft,Er):QC(Ke,Ft,Er)}function Lo(){return us(),Rt()===21||Rt()===30}function rs(){return us()===25}function vc(){switch(us()){case 21:case 30:case 25:return!0}return!1}function Ml(){let Ke=ei();return ii(y.createTypeLiteralNode(DA()),Ke)}function DA(){let Ke;return Ts(19)?(Ke=vp(4,Fi),Ts(20)):Ke=Zf(),Ke}function Lf(){return us(),Rt()===40||Rt()===41?us()===148:(Rt()===148&&us(),Rt()===23&&WI()&&us()===103)}function jd(){let Ke=ei(),Ft=sp();Ts(103);let Er=jp();return ii(y.createTypeParameterDeclaration(void 0,Ft,Er,void 0),Ke)}function bh(){let Ke=ei();Ts(19);let Ft;(Rt()===148||Rt()===40||Rt()===41)&&(Ft=Bl(),Ft.kind!==148&&Ts(148)),Ts(23);let Er=jd(),Jr=ps(130)?jp():void 0;Ts(24);let Un;(Rt()===58||Rt()===40||Rt()===41)&&(Un=Bl(),Un.kind!==58&&Ts(58));let Ki=dy();za();let Ss=vp(4,Fi);return Ts(20),ii(y.createMappedTypeNode(Ft,Er,Jr,Un,Ki,Ss),Ke)}function u2(){let Ke=ei();if(ps(26))return ii(y.createRestTypeNode(jp()),Ke);let Ft=jp();if($ua(Ft)&&Ft.pos===Ft.type.pos){let Er=y.createOptionalTypeNode(Ft.type);return XF(Er,Ft),Er.flags=Ft.flags,Er}return Ft}function Dm(){return us()===59||Rt()===58&&us()===59}function gy(){return Rt()===26?a1(us())&&Dm():a1(Rt())&&Dm()}function E_(){if(Os(gy)){let Ke=ei(),Ft=Qa(),Er=oc(26),Jr=sp(),Un=oc(58);Ts(59);let Ki=u2(),Ss=y.createNamedTupleMember(Er,Jr,Un,Ki);return jr(ii(Ss,Ke),Ft)}return u2()}function Mi(){let Ke=ei();return ii(y.createTupleTypeNode(uy(21,E_,23,24)),Ke)}function Ay(){let Ke=ei();Ts(21);let Ft=jp();return Ts(22),ii(y.createParenthesizedType(Ft),Ke)}function bE(){let Ke;if(Rt()===128){let Ft=ei();us();let Er=ii(U(128),Ft);Ke=iu([Er],Ft)}return Ke}function uf(){let Ke=ei(),Ft=Qa(),Er=bE(),Jr=ps(105);_o.assert(!Er||Jr,"Per isStartOfFunctionOrConstructorType, a function type cannot have modifiers.");let Un=x0(),Ki=ug(4),Ss=RC(39,!1),vo=Jr?y.createConstructorTypeNode(Er,Un,Ki,Ss):y.createFunctionTypeNode(Un,Ki,Ss);return jr(ii(vo,Ke),Ft)}function g2(){let Ke=Bl();return Rt()===25?void 0:Ke}function EE(Ke){let Ft=ei();Ke&&us();let Er=Rt()===112||Rt()===97||Rt()===106?Bl():yu(Rt());return Ke&&(Er=ii(y.createPrefixUnaryExpression(41,Er),Ft)),ii(y.createLiteralTypeNode(Er),Ft)}function k0(){return us(),Rt()===102}function mS(){Ar|=4194304;let Ke=ei(),Ft=ps(114);Ts(102),Ts(21);let Er=jp(),Jr;if(ps(28)){let Ss=t.getTokenStart();Ts(19);let vo=Rt();if(vo===118||vo===132?us():hl(Ni._0_expected,ay(118)),Ts(59),Jr=E3(vo,!0),!Ts(20)){let Pa=gfe(In);Pa&&Pa.code===Ni._0_expected.code&&SCt(Pa,iSe(dr,or,Ss,1,Ni.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}}Ts(22);let Un=ps(25)?op():void 0,Ki=lA();return ii(y.createImportTypeNode(Er,Jr,Un,Ki,Ft),Ke)}function I1(){return us(),Rt()===9||Rt()===10}function dc(){switch(Rt()){case 133:case 159:case 154:case 150:case 163:case 155:case 136:case 157:case 146:case 151:return Hi(g2)||tI();case 67:t.reScanAsteriskEqualsToken();case 42:return md();case 61:t.reScanQuestionToken();case 58:return Bf();case 100:return Uh();case 54:return fI();case 15:case 11:case 9:case 10:case 112:case 97:case 106:return EE();case 41:return Os(I1)?EE(!0):tI();case 116:return Bl();case 110:{let Ke=ya();return Rt()===142&&!t.hasPrecedingLineBreak()?D0(Ke):Ke}case 114:return Os(k0)?mS():CS();case 19:return Os(Lf)?bh():Ml();case 23:return Mi();case 21:return Ay();case 102:return mS();case 131:return Os(z_)?Ow():tI();case 16:return zt();default:return tI()}}function at(Ke){switch(Rt()){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!Ke;case 41:return!Ke&&Os(I1);case 21:return!Ke&&Os($t);default:return ll()}}function $t(){return us(),Rt()===22||yE(!1)||at()}function Wr(){let Ke=ei(),Ft=dc();for(;!t.hasPrecedingLineBreak();)switch(Rt()){case 54:us(),Ft=ii(y.createJSDocNonNullableType(Ft,!0),Ke);break;case 58:if(Os(eA))return Ft;us(),Ft=ii(y.createJSDocNullableType(Ft,!0),Ke);break;case 23:if(Ts(23),at()){let Er=jp();Ts(24),Ft=ii(y.createIndexedAccessTypeNode(Ft,Er),Ke)}else Ts(24),Ft=ii(y.createArrayTypeNode(Ft),Ke);break;default:return Ft}return Ft}function vn(Ke){let Ft=ei();return Ts(Ke),ii(y.createTypeOperatorNode(Ke,mg()),Ft)}function os(){if(ps(96)){let Ke=Cg(jp);if(Na()||Rt()!==58)return Ke}}function wo(){let Ke=ei(),Ft=Og(),Er=Hi(os),Jr=y.createTypeParameterDeclaration(void 0,Ft,Er);return ii(Jr,Ke)}function fg(){let Ke=ei();return Ts(140),ii(y.createInferTypeNode(wo()),Ke)}function mg(){let Ke=Rt();switch(Ke){case 143:case 158:case 148:return vn(Ke);case 140:return fg()}return Fu(Wr)}function gf(Ke){if(Cv()){let Ft=uf(),Er;return loi(Ft)?Er=Ke?Ni.Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:Ni.Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:Er=Ke?Ni.Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:Ni.Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type,cf(Ft,Er),Ft}}function rI(Ke,Ft,Er){let Jr=ei(),Un=Ke===52,Ki=ps(Ke),Ss=Ki&&gf(Un)||Ft();if(Rt()===Ke||Ki){let vo=[Ss];for(;ps(Ke);)vo.push(gf(Un)||Ft());Ss=ii(Er(iu(vo,Jr)),Jr)}return Ss}function gC(){return rI(51,mg,y.createIntersectionTypeNode)}function Nb(){return rI(52,gC,y.createUnionTypeNode)}function zT(){return us(),Rt()===105}function Cv(){return Rt()===30||Rt()===21&&Os(Qy)?!0:Rt()===105||Rt()===128&&Os(zT)}function Pw(){if(Qz(Rt())&&xe(!1),ll()||Rt()===110)return us(),!0;if(Rt()===23||Rt()===19){let Ke=In.length;return dC(),Ke===In.length}return!1}function Qy(){return us(),!!(Rt()===22||Rt()===26||Pw()&&(Rt()===59||Rt()===28||Rt()===58||Rt()===64||Rt()===22&&(us(),Rt()===39)))}function C1(){let Ke=ei(),Ft=ll()&&Hi(K_),Er=jp();return Ft?ii(y.createTypePredicateNode(void 0,Ft,Er),Ke):Er}function K_(){let Ke=Og();if(Rt()===142&&!t.hasPrecedingLineBreak())return us(),Ke}function Ow(){let Ke=ei(),Ft=pI(131),Er=Rt()===110?ya():Og(),Jr=ps(142)?jp():void 0;return ii(y.createTypePredicateNode(Ft,Er,Jr),Ke)}function jp(){if(Qs&81920)return Ko(81920,jp);if(Cv())return uf();let Ke=ei(),Ft=Nb();if(!Na()&&!t.hasPrecedingLineBreak()&&ps(96)){let Er=Cg(jp);Ts(58);let Jr=Fu(jp);Ts(59);let Un=Fu(jp);return ii(y.createConditionalTypeNode(Ft,Er,Jr,Un),Ke)}return Ft}function dy(){return ps(59)?jp():void 0}function A2(){switch(Rt()){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 Os(vc);default:return ll()}}function OI(){if(A2())return!0;switch(Rt()){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 Qw()?!0:ll()}}function uA(){return Rt()!==19&&Rt()!==100&&Rt()!==86&&Rt()!==60&&OI()}function VA(){let Ke=wu();Ke&&Hr(!1);let Ft=ei(),Er=Vf(!0),Jr;for(;Jr=oc(28);)Er=h1(Er,Jr,Vf(!0),Ft);return Ke&&Hr(!0),Er}function Am(){return ps(64)?Vf(!0):void 0}function Vf(Ke){if(Yy())return Hy();let Ft=hS(Ke)||mv(Ke);if(Ft)return Ft;let Er=ei(),Jr=Qa(),Un=m1(0);return Un.kind===80&&Rt()===39?py(Er,Un,Ke,Jr,void 0):mSe(Un)&&qsi(Bo())?h1(Un,Bl(),Vf(Ke),Er):qT(Un,Er,Ke)}function Yy(){return Rt()===127?xl()?!0:Os(xA):!1}function Kh(){return us(),!t.hasPrecedingLineBreak()&&ll()}function Hy(){let Ke=ei();return us(),!t.hasPrecedingLineBreak()&&(Rt()===42||OI())?ii(y.createYieldExpression(oc(42),Vf(!0)),Ke):ii(y.createYieldExpression(void 0,void 0),Ke)}function py(Ke,Ft,Er,Jr,Un){_o.assert(Rt()===39,"parseSimpleArrowFunctionExpression should only have been called if we had a =>");let Ki=y.createParameterDeclaration(void 0,void 0,Ft,void 0,void 0,void 0);ii(Ki,Ft.pos);let Ss=iu([Ki],Ki.pos,Ki.end),vo=pI(39),Pa=xR(!!Un,Er),js=y.createArrowFunction(Un,void 0,Ss,void 0,vo,Pa);return jr(ii(js,Ke),Jr)}function hS(Ke){let Ft=_S();if(Ft!==0)return Ft===1?hv(!0,!0):Hi(()=>BE(Ke))}function _S(){return Rt()===21||Rt()===30||Rt()===134?Os(Xy):Rt()===39?1:0}function Xy(){if(Rt()===134&&(us(),t.hasPrecedingLineBreak()||Rt()!==21&&Rt()!==30))return 0;let Ke=Rt(),Ft=us();if(Ke===21){if(Ft===22)switch(us()){case 39:case 59:case 19:return 1;default:return 0}if(Ft===23||Ft===19)return 2;if(Ft===26)return 1;if(Qz(Ft)&&Ft!==134&&Os(WI))return us()===130?0:1;if(!ll()&&Ft!==110)return 0;switch(us()){case 59:return 1;case 58:return us(),Rt()===59||Rt()===28||Rt()===64||Rt()===22?1:0;case 28:case 64:case 22:return 2}return 0}else return _o.assert(Ke===30),!ll()&&Rt()!==87?0:Or===1?Os(()=>{ps(87);let Er=us();if(Er===96)switch(us()){case 64:case 32:case 44:return!1;default:return!0}else if(Er===28||Er===64)return!0;return!1})?1:0:2}function BE(Ke){let Ft=t.getTokenStart();if(ka!=null&&ka.has(Ft))return;let Er=hv(!1,Ke);return Er||(ka||(ka=new Set)).add(Ft),Er}function mv(Ke){if(Rt()===134&&Os(Mw)===1){let Ft=ei(),Er=Qa(),Jr=gt(),Un=m1(0);return py(Ft,Un,Ke,Er,Jr)}}function Mw(){if(Rt()===134){if(us(),t.hasPrecedingLineBreak()||Rt()===39)return 0;let Ke=m1(0);if(!t.hasPrecedingLineBreak()&&Ke.kind===80&&Rt()===39)return 1}return 0}function hv(Ke,Ft){let Er=ei(),Jr=Qa(),Un=gt(),Ki=mR(Un,NCt)?2:0,Ss=x0(),vo;if(Ts(21)){if(Ke)vo=ap(Ki,Ke);else{let Cy=ap(Ki,Ke);if(!Cy)return;vo=Cy}if(!Ts(22)&&!Ke)return}else{if(!Ke)return;vo=Zf()}let Pa=Rt()===59,js=RC(59,!1);if(js&&!Ke&&Kd(js))return;let xc=js;for(;xc?.kind===196;)xc=xc.type;let Jl=xc&&ega(xc);if(!Ke&&Rt()!==39&&(Jl||Rt()!==19))return;let nA=Rt(),Ig=pI(39),Uu=nA===39||nA===19?xR(mR(Un,NCt),Ft):Og();if(!Ft&&Pa&&Rt()!==59)return;let NE=y.createArrowFunction(Un,Ss,vo,js,Ig,Uu);return jr(ii(NE,Er),Jr)}function xR(Ke,Ft){if(Rt()===19)return _d(Ke?2:0);if(Rt()!==27&&Rt()!==100&&Rt()!==86&&wE()&&!uA())return _d(16|(Ke?2:0));let Er=lr;lr=!1;let Jr=Ke?wi(()=>Vf(Ft)):ts(()=>Vf(Ft));return lr=Er,Jr}function qT(Ke,Ft,Er){let Jr=oc(58);if(!Jr)return Ke;let Un;return ii(y.createConditionalExpression(Ke,Jr,Ko(r,()=>Vf(!1)),Un=pI(59),vAr(Un)?Vf(Er):NC(80,!1,Ni._0_expected,ay(59))),Ft)}function m1(Ke){let Ft=ei(),Er=eN();return Rb(Ke,Er,Ft)}function jh(Ke){return Ke===103||Ke===165}function Rb(Ke,Ft,Er){for(;;){Bo();let Jr=cAr(Rt());if(!(Rt()===43?Jr>=Ke:Jr>Ke)||Rt()===103&&qo())break;if(Rt()===130||Rt()===152){if(t.hasPrecedingLineBreak())break;{let Un=Rt();us(),Ft=Un===152?An(Ft,jp()):d2(Ft,jp())}}else Ft=h1(Ft,Bl(),m1(Jr),Er)}return Ft}function Qw(){return qo()&&Rt()===103?!1:cAr(Rt())>0}function An(Ke,Ft){return ii(y.createSatisfiesExpression(Ke,Ft),Ke.pos)}function h1(Ke,Ft,Er,Jr){return ii(y.createBinaryExpression(Ke,Ft,Er),Jr)}function d2(Ke,Ft){return ii(y.createAsExpression(Ke,Ft),Ke.pos)}function zh(){let Ke=ei();return ii(y.createPrefixUnaryExpression(Rt(),Hu(G0)),Ke)}function dp(){let Ke=ei();return ii(y.createDeleteExpression(Hu(G0)),Ke)}function Yw(){let Ke=ei();return ii(y.createTypeOfExpression(Hu(G0)),Ke)}function yS(){let Ke=ei();return ii(y.createVoidExpression(Hu(G0)),Ke)}function $T(){return Rt()===135?Dg()?!0:Os(xA):!1}function Db(){let Ke=ei();return ii(y.createAwaitExpression(Hu(G0)),Ke)}function eN(){if(iG()){let Er=ei(),Jr=_1();return Rt()===43?Rb(cAr(Rt()),Jr,Er):Jr}let Ke=Rt(),Ft=G0();if(Rt()===43){let Er=YU(or,Ft.pos),{end:Jr}=Ft;Ft.kind===216?Lg(Er,Jr,Ni.A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses):(_o.assert(aAr(Ke)),Lg(Er,Jr,Ni.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,ay(Ke)))}return Ft}function G0(){switch(Rt()){case 40:case 41:case 55:case 54:return zh();case 91:return dp();case 114:return Yw();case 116:return yS();case 30:return Or===1?vE(!0,void 0,void 0,!0):hd();case 135:if($T())return Db();default:return _1()}}function iG(){switch(Rt()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 135:return!1;case 30:if(Or!==1)return!1;default:return!0}}function _1(){if(Rt()===46||Rt()===47){let Ft=ei();return ii(y.createPrefixUnaryExpression(Rt(),Hu(xb)),Ft)}else if(Or===1&&Rt()===30&&Os(Qm))return vE(!0);let Ke=xb();if(_o.assert(mSe(Ke)),(Rt()===46||Rt()===47)&&!t.hasPrecedingLineBreak()){let Ft=Rt();return us(),ii(y.createPostfixUnaryExpression(Ke,Ft),Ke.pos)}return Ke}function xb(){let Ke=ei(),Ft;return Rt()===102?Os(Lo)?(Ar|=4194304,Ft=Bl()):Os(rs)?(us(),us(),Ft=ii(y.createMetaProperty(102,sp()),Ke),Ar|=8388608):Ft=Eh():Ft=Rt()===108?y1():Eh(),p2(Ke,Ft)}function Eh(){let Ke=ei(),Ft=vh();return dm(Ke,Ft,!0)}function y1(){let Ke=ei(),Ft=Bl();if(Rt()===30){let Er=ei(),Jr=Hi(BS);Jr!==void 0&&(Lg(Er,ei(),Ni.super_may_not_use_type_arguments),$h()||(Ft=y.createExpressionWithTypeArguments(Ft,Jr)))}return Rt()===21||Rt()===25||Rt()===23?Ft:(pI(25,Ni.super_must_be_followed_by_an_argument_list_or_member_access),ii(ge(Ft,J(!0,!0,!0)),Ke))}function vE(Ke,Ft,Er,Jr=!1){let Un=ei(),Ki=tN(Ke),Ss;if(Ki.kind===286){let vo=Jy(Ki),Pa,js=vo[vo.length-1];if(js?.kind===284&&!Tse(js.openingElement.tagName,js.closingElement.tagName)&&Tse(Ki.tagName,js.closingElement.tagName)){let xc=js.children.end,Jl=ii(y.createJsxElement(js.openingElement,js.children,ii(y.createJsxClosingElement(ii(O(""),xc,xc)),xc,xc)),js.openingElement.pos,xc);vo=iu([...vo.slice(0,vo.length-1),Jl],vo.pos,xc),Pa=js.closingElement}else Pa=Wa(Ki,Ke),Tse(Ki.tagName,Pa.tagName)||(Er&&oii(Er)&&Tse(Pa.tagName,Er.tagName)?cf(Ki.tagName,Ni.JSX_element_0_has_no_corresponding_closing_tag,AYe(or,Ki.tagName)):cf(Pa.tagName,Ni.Expected_corresponding_JSX_closing_tag_for_0,AYe(or,Ki.tagName)));Ss=ii(y.createJsxElement(Ki,vo,Pa),Un)}else Ki.kind===289?Ss=ii(y.createJsxFragment(Ki,Jy(Ki),EA(Ke)),Un):(_o.assert(Ki.kind===285),Ss=Ki);if(!Jr&&Ke&&Rt()===30){let vo=typeof Ft>"u"?Ss.pos:Ft,Pa=Hi(()=>vE(!0,vo));if(Pa){let js=NC(28,!1);return tii(js,Pa.pos,0),Lg(YU(or,vo),Pa.end,Ni.JSX_expressions_must_have_one_parent_element),ii(y.createBinaryExpression(Ss,js,Pa),Un)}}return Ss}function SE(){let Ke=ei(),Ft=y.createJsxText(t.getTokenValue(),gn===13);return gn=t.scanJsxToken(),ii(Ft,Ke)}function bS(Ke,Ft){switch(Ft){case 1:if(Uua(Ke))cf(Ke,Ni.JSX_fragment_has_no_corresponding_closing_tag);else{let Er=Ke.tagName,Jr=Math.min(YU(or,Er.pos),Er.end);Lg(Jr,Er.end,Ni.JSX_element_0_has_no_corresponding_closing_tag,AYe(or,Ke.tagName))}return;case 31:case 7:return;case 12:case 13:return SE();case 19:return rN(!1);case 30:return vE(!1,void 0,Ke);default:return _o.assertNever(Ft)}}function Jy(Ke){let Ft=[],Er=ei(),Jr=Za;for(Za|=16384;;){let Un=bS(Ke,gn=t.reScanJsxToken());if(!Un||(Ft.push(Un),oii(Ke)&&Un?.kind===284&&!Tse(Un.openingElement.tagName,Un.closingElement.tagName)&&Tse(Ke.tagName,Un.closingElement.tagName)))break}return Za=Jr,iu(Ft,Er)}function qh(){let Ke=ei();return ii(y.createJsxAttributes(vp(13,fx)),Ke)}function tN(Ke){let Ft=ei();if(Ts(30),Rt()===32)return Ff(),ii(y.createJsxOpeningFragment(),Ft);let Er=_v(),Jr=Qs&524288?void 0:Sn(),Un=qh(),Ki;return Rt()===32?(Ff(),Ki=y.createJsxOpeningElement(Er,Jr,Un)):(Ts(44),Ts(32,void 0,!1)&&(Ke?us():Ff()),Ki=y.createJsxSelfClosingElement(Er,Jr,Un)),ii(Ki,Ft)}function _v(){let Ke=ei(),Ft=yv();if(Boi(Ft))return Ft;let Er=Ft;for(;ps(25);)Er=ii(ge(Er,J(!0,!1,!1)),Ke);return Er}function yv(){let Ke=ei();Hl();let Ft=Rt()===110,Er=lm();return ps(59)?(Hl(),ii(y.createJsxNamespacedName(Er,lm()),Ke)):Ft?ii(y.createToken(110),Ke):Er}function rN(Ke){let Ft=ei();if(!Ts(19))return;let Er,Jr;return Rt()!==20&&(Ke||(Er=oc(26)),Jr=VA()),Ke?Ts(20):Ts(20,void 0,!1)&&Ff(),ii(y.createJsxExpression(Er,Jr),Ft)}function fx(){if(Rt()===19)return Hw();let Ke=ei();return ii(y.createJsxAttribute(nN(),Bh()),Ke)}function Bh(){if(Rt()===64){if(Vd()===11)return Po();if(Rt()===19)return rN(!0);if(Rt()===30)return vE(!0);hl(Ni.or_JSX_element_expected)}}function nN(){let Ke=ei();Hl();let Ft=lm();return ps(59)?(Hl(),ii(y.createJsxNamespacedName(Ft,lm()),Ke)):Ft}function Hw(){let Ke=ei();Ts(19),Ts(26);let Ft=VA();return Ts(20),ii(y.createJsxSpreadAttribute(Ft),Ke)}function Wa(Ke,Ft){let Er=ei();Ts(31);let Jr=_v();return Ts(32,void 0,!1)&&(Ft||!Tse(Ke.tagName,Jr)?us():Ff()),ii(y.createJsxClosingElement(Jr),Er)}function EA(Ke){let Ft=ei();return Ts(31),Ts(32,Ni.Expected_corresponding_closing_tag_for_JSX_fragment,!1)&&(Ke?us():Ff()),ii(y.createJsxJsxClosingFragment(),Ft)}function hd(){_o.assert(Or!==1,"Type assertions should never be parsed in JSX; they should be parsed as comparisons or JSX elements/fragments.");let Ke=ei();Ts(30);let Ft=jp();Ts(32);let Er=G0();return ii(y.createTypeAssertion(Ft,Er),Ke)}function nI(){return us(),a1(Rt())||Rt()===23||$h()}function F0(){return Rt()===29&&Os(nI)}function mB(Ke){if(Ke.flags&64)return!0;if(kCt(Ke)){let Ft=Ke.expression;for(;kCt(Ft)&&!(Ft.flags&64);)Ft=Ft.expression;if(Ft.flags&64){for(;kCt(Ke);)Ke.flags|=64,Ke=Ke.expression;return!0}}return!1}function Pp(Ke,Ft,Er){let Jr=J(!0,!0,!0),Un=Er||mB(Ft),Ki=Un?fe(Ft,Er,Jr):ge(Ft,Jr);if(Un&&Cfe(Ki.name)&&cf(Ki.name,Ni.An_optional_chain_cannot_contain_private_identifiers),Pua(Ft)&&Ft.typeArguments){let Ss=Ft.typeArguments.pos-1,vo=YU(or,Ft.typeArguments.end)+1;Lg(Ss,vo,Ni.An_instantiation_expression_cannot_be_followed_by_a_property_access)}return ii(Ki,Ke)}function ES(Ke,Ft,Er){let Jr;if(Rt()===24)Jr=NC(80,!0,Ni.An_element_access_expression_should_take_an_argument);else{let Ki=pa(VA);KCt(Ki)&&(Ki.text=Jh(Ki.text)),Jr=Ki}Ts(24);let Un=Er||mB(Ft)?he(Ft,Er,Jr):pe(Ft,Jr);return ii(Un,Ke)}function dm(Ke,Ft,Er){for(;;){let Jr,Un=!1;if(Er&&F0()?(Jr=pI(29),Un=a1(Rt())):Un=ps(25),Un){Ft=Pp(Ke,Ft,Jr);continue}if((Jr||!wu())&&ps(23)){Ft=ES(Ke,Ft,Jr);continue}if($h()){Ft=!Jr&&Ft.kind===233?B_(Ke,Ft.expression,Jr,Ft.typeArguments):B_(Ke,Ft,Jr,void 0);continue}if(!Jr){if(Rt()===54&&!t.hasPrecedingLineBreak()){us(),Ft=ii(y.createNonNullExpression(Ft),Ke);continue}let Ki=Hi(BS);if(Ki){Ft=ii(y.createExpressionWithTypeArguments(Ft,Ki),Ke);continue}}return Ft}}function $h(){return Rt()===15||Rt()===16}function B_(Ke,Ft,Er,Jr){let Un=y.createTaggedTemplateExpression(Ft,Jr,Rt()===15?(cA(!0),Po()):ut(!0));return(Er||Ft.flags&64)&&(Un.flags|=64),Un.questionDotToken=Er,ii(Un,Ke)}function p2(Ke,Ft){for(;;){Ft=dm(Ke,Ft,!0);let Er,Jr=oc(29);if(Jr&&(Er=Hi(BS),$h())){Ft=B_(Ke,Ft,Jr,Er);continue}if(Er||Rt()===21){!Jr&&Ft.kind===233&&(Er=Ft.typeArguments,Ft=Ft.expression);let Un=hB(),Ki=Jr||mB(Ft)?Te(Ft,Jr,Er,Un):be(Ft,Er,Un);Ft=ii(Ki,Ke);continue}if(Jr){let Un=NC(80,!1,Ni.Identifier_expected);Ft=ii(fe(Ft,Jr,Un),Ke)}break}return Ft}function hB(){Ts(21);let Ke=Ef(11,TI);return Ts(22),Ke}function BS(){if(Qs&524288||HA()!==30)return;us();let Ke=Ef(20,jp);if(Bo()===32)return us(),Ke&&bv()?Ke:void 0}function bv(){switch(Rt()){case 21:case 15:case 16:return!0;case 30:case 32:case 40:case 41:return!1}return t.hasPrecedingLineBreak()||Qw()||!OI()}function vh(){switch(Rt()){case 15:t.getTokenFlags()&26656&&cA(!1);case 9:case 10:case 11:return Po();case 110:case 108:case 106:case 112:case 97:return Bl();case 21:return Oo();case 23:return j_();case 19:return b1();case 134:if(!Os(aa))break;return E1();case 60:return Xr();case 86:return Kn();case 100:return E1();case 105:return Sh();case 44:case 69:if($g()===14)return Po();break;case 16:return ut(!1);case 81:return Ao()}return Og(Ni.Expression_expected)}function Oo(){let Ke=ei(),Ft=Qa();Ts(21);let Er=pa(VA);return Ts(22),jr(ii(x(Er),Ke),Ft)}function Uy(){let Ke=ei();Ts(26);let Ft=Vf(!0);return ii(y.createSpreadElement(Ft),Ke)}function kb(){return Rt()===26?Uy():Rt()===28?ii(y.createOmittedExpression(),ei()):Vf(!0)}function TI(){return Ko(r,kb)}function j_(){let Ke=ei(),Ft=t.getTokenStart(),Er=Ts(23),Jr=t.hasPrecedingLineBreak(),Un=Ef(15,kb);return eo(23,24,Er,Ft),ii(le(Un,Jr),Ke)}function f2(){let Ke=ei(),Ft=Qa();if(oc(26)){let js=Vf(!0);return jr(ii(y.createSpreadAssignment(js),Ke),Ft)}let Er=xe(!0);if(Do(139))return Z(Ke,Ft,Er,177,0);if(Do(153))return Z(Ke,Ft,Er,178,0);let Jr=oc(42),Un=ll(),Ki=uC(),Ss=oc(58),vo=oc(54);if(Jr||Rt()===21||Rt()===30)return iI(Ke,Ft,Er,Jr,Ki,Ss,vo);let Pa;if(Un&&Rt()!==59){let js=oc(64),xc=js?pa(()=>Vf(!0)):void 0;Pa=y.createShorthandPropertyAssignment(Ki,xc),Pa.equalsToken=js}else{Ts(59);let js=pa(()=>Vf(!0));Pa=y.createPropertyAssignment(Ki,js)}return Pa.modifiers=Er,Pa.questionToken=Ss,Pa.exclamationToken=vo,jr(ii(Pa,Ke),Ft)}function b1(){let Ke=ei(),Ft=t.getTokenStart(),Er=Ts(19),Jr=t.hasPrecedingLineBreak(),Un=Ef(12,f2,!0);return eo(19,20,Er,Ft),ii(ae(Un,Jr),Ke)}function E1(){let Ke=wu();Hr(!1);let Ft=ei(),Er=Qa(),Jr=xe(!1);Ts(100);let Un=oc(42),Ki=Un?1:0,Ss=mR(Jr,NCt)?2:0,vo=Ki&&Ss?$i(Z0):Ki?Zu(Z0):Ss?wi(Z0):Z0(),Pa=x0(),js=ug(Ki|Ss),xc=RC(59,!1),Jl=_d(Ki|Ss);Hr(Ke);let nA=y.createFunctionExpression(Jr,Un,vo,Pa,js,xc,Jl);return jr(ii(nA,Ft),Er)}function Z0(){return ec()?_l():void 0}function Sh(){let Ke=ei();if(Ts(105),ps(25)){let Ki=sp();return ii(y.createMetaProperty(105,Ki),Ke)}let Ft=ei(),Er=dm(Ft,vh(),!1),Jr;Er.kind===233&&(Jr=Er.typeArguments,Er=Er.expression),Rt()===29&&hl(Ni.Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0,AYe(or,Er));let Un=Rt()===21?hB():void 0;return ii(ke(Er,Jr,Un),Ke)}function L0(Ke,Ft){let Er=ei(),Jr=Qa(),Un=t.getTokenStart(),Ki=Ts(19,Ft);if(Ki||Ke){let Ss=t.hasPrecedingLineBreak(),vo=vp(1,gh);eo(19,20,Ki,Un);let Pa=jr(ii(et(vo,Ss),Er),Jr);return Rt()===64&&(hl(Ni.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),us()),Pa}else{let Ss=Zf();return jr(ii(et(Ss,void 0),Er),Jr)}}function _d(Ke,Ft){let Er=xl();Ji(!!(Ke&1));let Jr=Dg();Ws(!!(Ke&2));let Un=lr;lr=!1;let Ki=wu();Ki&&Hr(!1);let Ss=L0(!!(Ke&16),Ft);return Ki&&Hr(!0),lr=Un,Ji(Er),Ws(Jr),Ss}function Ev(){let Ke=ei(),Ft=Qa();return Ts(27),jr(ii(y.createEmptyStatement(),Ke),Ft)}function qu(){let Ke=ei(),Ft=Qa();Ts(101);let Er=t.getTokenStart(),Jr=Ts(21),Un=pa(VA);eo(21,22,Jr,Er);let Ki=gh(),Ss=ps(93)?gh():void 0;return jr(ii(Xe(Un,Ki,Ss),Ke),Ft)}function AC(){let Ke=ei(),Ft=Qa();Ts(92);let Er=gh();Ts(117);let Jr=t.getTokenStart(),Un=Ts(21),Ki=pa(VA);return eo(21,22,Un,Jr),ps(27),jr(ii(y.createDoStatement(Er,Ki),Ke),Ft)}function B1(){let Ke=ei(),Ft=Qa();Ts(117);let Er=t.getTokenStart(),Jr=Ts(21),Un=pa(VA);eo(21,22,Jr,Er);let Ki=gh();return jr(ii(ft(Un,Ki),Ke),Ft)}function I2(){let Ke=ei(),Ft=Qa();Ts(99);let Er=oc(135);Ts(21);let Jr;Rt()!==27&&(Rt()===115||Rt()===121||Rt()===87||Rt()===160&&Os(fy)||Rt()===135&&Os(xo)?Jr=Th(!0):Jr=sg(VA));let Un;if(Er?Ts(165):ps(165)){let Ki=pa(()=>Vf(!0));Ts(22),Un=er(Er,Jr,Ki,gh())}else if(ps(103)){let Ki=pa(VA);Ts(22),Un=y.createForInStatement(Jr,Ki,gh())}else{Ts(27);let Ki=Rt()!==27&&Rt()!==22?pa(VA):void 0;Ts(27);let Ss=Rt()!==22?pa(VA):void 0;Ts(22),Un=Gt(Jr,Ki,Ss,gh())}return jr(ii(Un,Ke),Ft)}function Sp(Ke){let Ft=ei(),Er=Qa();Ts(Ke===252?83:88);let Jr=LA()?void 0:Og();za();let Un=Ke===252?y.createBreakStatement(Jr):y.createContinueStatement(Jr);return jr(ii(Un,Ft),Er)}function eC(){let Ke=ei(),Ft=Qa();Ts(107);let Er=LA()?void 0:pa(VA);return za(),jr(ii(y.createReturnStatement(Er),Ke),Ft)}function yd(){let Ke=ei(),Ft=Qa();Ts(118);let Er=t.getTokenStart(),Jr=Ts(21),Un=pa(VA);eo(21,22,Jr,Er);let Ki=ai(67108864,gh);return jr(ii(y.createWithStatement(Un,Ki),Ke),Ft)}function V0(){let Ke=ei(),Ft=Qa();Ts(84);let Er=pa(VA);Ts(59);let Jr=vp(3,gh);return jr(ii(y.createCaseClause(Er,Jr),Ke),Ft)}function II(){let Ke=ei();Ts(90),Ts(59);let Ft=vp(3,gh);return ii(y.createDefaultClause(Ft),Ke)}function Op(){return Rt()===84?V0():II()}function W0(){let Ke=ei();Ts(19);let Ft=vp(2,Op);return Ts(20),ii(y.createCaseBlock(Ft),Ke)}function v1(){let Ke=ei(),Ft=Qa();Ts(109),Ts(21);let Er=pa(VA);Ts(22);let Jr=W0();return jr(ii(y.createSwitchStatement(Er,Jr),Ke),Ft)}function gd(){let Ke=ei(),Ft=Qa();Ts(111);let Er=t.hasPrecedingLineBreak()?void 0:pa(VA);return Er===void 0&&(Zi++,Er=ii(O(""),ei())),lf()||Ud(Er),jr(ii(y.createThrowStatement(Er),Ke),Ft)}function pp(){let Ke=ei(),Ft=Qa();Ts(113);let Er=L0(!1),Jr=Rt()===85?v_():void 0,Un;return(!Jr||Rt()===98)&&(Ts(98,Ni.catch_or_finally_expected),Un=L0(!1)),jr(ii(y.createTryStatement(Er,Jr,Un),Ke),Ft)}function v_(){let Ke=ei();Ts(85);let Ft;ps(21)?(Ft=Bg(),Ts(22)):Ft=void 0;let Er=L0(!1);return ii(y.createCatchClause(Ft,Er),Ke)}function vS(){let Ke=ei(),Ft=Qa();return Ts(89),za(),jr(ii(y.createDebuggerStatement(),Ke),Ft)}function _B(){let Ke=ei(),Ft=Qa(),Er,Jr=Rt()===21,Un=pa(VA);return mh(Un)&&ps(59)?Er=y.createLabeledStatement(Un,gh()):(lf()||Ud(Un),Er=Je(Un),Jr&&(Ft=!1)),jr(ii(Er,Ke),Ft)}function z_(){return us(),a1(Rt())&&!t.hasPrecedingLineBreak()}function e_(){return us(),Rt()===86&&!t.hasPrecedingLineBreak()}function aa(){return us(),Rt()===100&&!t.hasPrecedingLineBreak()}function xA(){return us(),(a1(Rt())||Rt()===9||Rt()===10||Rt()===11)&&!t.hasPrecedingLineBreak()}function cZ(){for(;;)switch(Rt()){case 115:case 121:case 87:case 100:case 86:case 94:return!0;case 160:return tC();case 135:return q_();case 120:case 156:return Kh();case 144:case 145:return AA();case 128:case 129:case 134:case 138:case 123:case 124:case 125:case 148:let Ke=Rt();if(us(),t.hasPrecedingLineBreak())return!1;if(Ke===138&&Rt()===156)return!0;continue;case 162:return us(),Rt()===19||Rt()===80||Rt()===95;case 102:return us(),Rt()===11||Rt()===42||Rt()===19||a1(Rt());case 95:let Ft=us();if(Ft===156&&(Ft=Os(us)),Ft===64||Ft===42||Ft===19||Ft===90||Ft===130||Ft===60)return!0;continue;case 126:us();continue;default:return!1}}function kR(){return Os(cZ)}function wE(){switch(Rt()){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:return!0;case 102:return kR()||Os(vc);case 87:case 95:return kR();case 134:case 138:case 120:case 144:case 145:case 156:case 162:return!0;case 129:case 125:case 123:case 124:case 126:case 148:return kR()||!Os(z_);default:return OI()}}function GR(){return us(),ec()||Rt()===19||Rt()===23}function Ad(){return Os(GR)}function fy(){return Af(!0)}function Af(Ke){return us(),Ke&&Rt()===165?!1:(ec()||Rt()===19)&&!t.hasPrecedingLineBreak()}function tC(){return Os(Af)}function xo(Ke){return us()===160?Af(Ke):!1}function q_(){return Os(xo)}function gh(){switch(Rt()){case 27:return Ev();case 19:return L0(!1);case 115:return fp(ei(),Qa(),void 0);case 121:if(Ad())return fp(ei(),Qa(),void 0);break;case 135:if(q_())return fp(ei(),Qa(),void 0);break;case 160:if(tC())return fp(ei(),Qa(),void 0);break;case 100:return TE(ei(),Qa(),void 0);case 86:return to(ei(),Qa(),void 0);case 101:return qu();case 92:return AC();case 117:return B1();case 99:return I2();case 88:return Sp(251);case 83:return Sp(252);case 107:return eC();case 118:return yd();case 109:return v1();case 111:return gd();case 113:case 85:case 98:return pp();case 89:return vS();case 60:return Mc();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(kR())return Mc();break}return _B()}function Oc(Ke){return Ke.kind===138}function Mc(){let Ke=ei(),Ft=Qa(),Er=xe(!0);if(mR(Er,Oc)){let Jr=iN(Ke);if(Jr)return Jr;for(let Un of Er)Un.flags|=33554432;return ai(33554432,()=>SS(Ke,Ft,Er))}else return SS(Ke,Ft,Er)}function iN(Ke){return ai(33554432,()=>{let Ft=R0(Za,Ke);if(Ft)return _h(Ft)})}function SS(Ke,Ft,Er){switch(Rt()){case 115:case 121:case 87:case 160:case 135:return fp(Ke,Ft,Er);case 100:return TE(Ke,Ft,Er);case 86:return to(Ke,Ft,Er);case 120:return Fo(Ke,Ft,Er);case 156:return tc(Ke,Ft,Er);case 94:return pc(Ke,Ft,Er);case 162:case 144:case 145:return Mp(Ke,Ft,Er);case 102:return HC(Ke,Ft,Er);case 95:switch(us(),Rt()){case 90:case 64:return m2(Ke,Ft,Er);case 130:return $_(Ke,Ft,Er);default:return Gb(Ke,Ft,Er)}default:if(Er){let Jr=NC(282,!0,Ni.Declaration_expected);return wAr(Jr,Ke),Jr.modifiers=Er,Jr}return}}function gA(){return us()===11}function S_(){return us(),Rt()===161||Rt()===64}function AA(){return us(),!t.hasPrecedingLineBreak()&&(ll()||Rt()===11)}function Ky(Ke,Ft){if(Rt()!==19){if(Ke&4){Hm();return}if(LA()){za();return}}return _d(Ke,Ft)}function S1(){let Ke=ei();if(Rt()===28)return ii(y.createOmittedExpression(),Ke);let Ft=oc(26),Er=dC(),Jr=Am();return ii(y.createBindingElement(Ft,void 0,Er,Jr),Ke)}function Iy(){let Ke=ei(),Ft=oc(26),Er=ec(),Jr=uC(),Un;Er&&Rt()!==59?(Un=Jr,Jr=void 0):(Ts(59),Un=dC());let Ki=Am();return ii(y.createBindingElement(Ft,Jr,Un,Ki),Ke)}function wh(){let Ke=ei();Ts(19);let Ft=pa(()=>Ef(9,Iy));return Ts(20),ii(y.createObjectBindingPattern(Ft),Ke)}function wS(){let Ke=ei();Ts(23);let Ft=pa(()=>Ef(10,S1));return Ts(24),ii(y.createArrayBindingPattern(Ft),Ke)}function Xw(){return Rt()===19||Rt()===23||Rt()===81||ec()}function dC(Ke){return Rt()===23?wS():Rt()===19?wh():_l(Ke)}function Ah(){return Bg(!0)}function Bg(Ke){let Ft=ei(),Er=Qa(),Jr=dC(Ni.Private_identifiers_are_not_allowed_in_variable_declarations),Un;Ke&&Jr.kind===80&&Rt()===54&&!t.hasPrecedingLineBreak()&&(Un=Bl());let Ki=dy(),Ss=jh(Rt())?void 0:Am(),vo=Ur(Jr,Un,Ki,Ss);return jr(ii(vo,Ft),Er)}function Th(Ke){let Ft=ei(),Er=0;switch(Rt()){case 115:break;case 121:Er|=1;break;case 87:Er|=2;break;case 160:Er|=4;break;case 135:_o.assert(q_()),Er|=6,us();break;default:_o.fail()}us();let Jr;if(Rt()===165&&Os(C2))Jr=Zf();else{let Un=qo();Vn(Ke),Jr=Ef(8,Ke?Bg:Ah),Vn(Un)}return ii(Ot(Jr,Er),Ft)}function C2(){return WI()&&us()===22}function fp(Ke,Ft,Er){let Jr=Th(!1);za();let Un=Ue(Er,Jr);return jr(ii(Un,Ke),Ft)}function TE(Ke,Ft,Er){let Jr=Dg(),Un=zW(Er);Ts(100);let Ki=oc(42),Ss=Un&2048?Z0():_l(),vo=Ki?1:0,Pa=Un&1024?2:0,js=x0();Un&32&&Ws(!0);let xc=ug(vo|Pa),Jl=RC(59,!1),nA=Ky(vo|Pa,Ni.or_expected);Ws(Jr);let Ig=y.createFunctionDeclaration(Er,Ki,Ss,js,xc,Jl,nA);return jr(ii(Ig,Ke),Ft)}function w1(){if(Rt()===137)return Ts(137);if(Rt()===11&&Os(us)===21)return Hi(()=>{let Ke=Po();return Ke.text==="constructor"?Ke:void 0})}function xm(Ke,Ft,Er){return Hi(()=>{if(w1()){let Jr=x0(),Un=ug(0),Ki=RC(59,!1),Ss=Ky(0,Ni.or_expected),vo=y.createConstructorDeclaration(Er,Un,Ss);return vo.typeParameters=Jr,vo.type=Ki,jr(ii(vo,Ke),Ft)}})}function iI(Ke,Ft,Er,Jr,Un,Ki,Ss,vo){let Pa=Jr?1:0,js=mR(Er,NCt)?2:0,xc=x0(),Jl=ug(Pa|js),nA=RC(59,!1),Ig=Ky(Pa|js,vo),Uu=y.createMethodDeclaration(Er,Jr,Un,Ki,xc,Jl,nA,Ig);return Uu.exclamationToken=Ss,jr(ii(Uu,Ke),Ft)}function TS(Ke,Ft,Er,Jr,Un){let Ki=!Un&&!t.hasPrecedingLineBreak()?oc(54):void 0,Ss=dy(),vo=Ko(90112,Am);Xa(Jr,Ss,vo);let Pa=y.createPropertyDeclaration(Er,Jr,Un||Ki,Ss,vo);return jr(ii(Pa,Ke),Ft)}function $(Ke,Ft,Er){let Jr=oc(42),Un=uC(),Ki=oc(58);return Jr||Rt()===21||Rt()===30?iI(Ke,Ft,Er,Jr,Un,Ki,void 0,Ni.or_expected):TS(Ke,Ft,Er,Un,Ki)}function Z(Ke,Ft,Er,Jr,Un){let Ki=uC(),Ss=x0(),vo=ug(0),Pa=RC(59,!1),js=Ky(Un),xc=Jr===177?y.createGetAccessorDeclaration(Er,Ki,vo,Pa,js):y.createSetAccessorDeclaration(Er,Ki,vo,js);return xc.typeParameters=Ss,HCt(xc)&&(xc.type=Pa),jr(ii(xc,Ke),Ft)}function MI(){let Ke;if(Rt()===60)return!0;for(;Qz(Rt());){if(Ke=Rt(),nca(Ke))return!0;us()}if(Rt()===42||(ch()&&(Ke=Rt(),us()),Rt()===23))return!0;if(Ke!==void 0){if(!Rse(Ke)||Ke===153||Ke===139)return!0;switch(Rt()){case 21:case 30:case 54:case 59:case 64:case 58:return!0;default:return LA()}}return!1}function FR(Ke,Ft,Er){pI(126);let Jr=k(),Un=jr(ii(y.createClassStaticBlockDeclaration(Jr),Ke),Ft);return Un.modifiers=Er,Un}function k(){let Ke=xl(),Ft=Dg();Ji(!1),Ws(!0);let Er=L0(!1);return Ji(Ke),Ws(Ft),Er}function L(){if(Dg()&&Rt()===135){let Ke=ei(),Ft=Og(Ni.Expression_expected);us();let Er=dm(Ke,Ft,!0);return p2(Ke,Er)}return xb()}function ee(){let Ke=ei();if(!ps(60))return;let Ft=Cl(L);return ii(y.createDecorator(Ft),Ke)}function ve(Ke,Ft,Er){let Jr=ei(),Un=Rt();if(Rt()===87&&Ft){if(!Hi(zl))return}else if(Er&&Rt()===126&&Os(Ll)||Ke&&Rt()===126||!na())return;return ii(U(Un),Jr)}function xe(Ke,Ft,Er){let Jr=ei(),Un,Ki,Ss,vo=!1,Pa=!1,js=!1;if(Ke&&Rt()===60)for(;Ki=ee();)Un=o9(Un,Ki);for(;Ss=ve(vo,Ft,Er);)Ss.kind===126&&(vo=!0),Un=o9(Un,Ss),Pa=!0;if(Pa&&Ke&&Rt()===60)for(;Ki=ee();)Un=o9(Un,Ki),js=!0;if(js)for(;Ss=ve(vo,Ft,Er);)Ss.kind===126&&(vo=!0),Un=o9(Un,Ss);return Un&&iu(Un,Jr)}function gt(){let Ke;if(Rt()===134){let Ft=ei();us();let Er=ii(U(134),Ft);Ke=iu([Er],Ft)}return Ke}function nr(){let Ke=ei(),Ft=Qa();if(Rt()===27)return us(),jr(ii(y.createSemicolonClassElement(),Ke),Ft);let Er=xe(!0,!0,!0);if(Rt()===126&&Os(Ll))return FR(Ke,Ft,Er);if(Do(139))return Z(Ke,Ft,Er,177,0);if(Do(153))return Z(Ke,Ft,Er,178,0);if(Rt()===137||Rt()===11){let Jr=xm(Ke,Ft,Er);if(Jr)return Jr}if(rA())return My(Ke,Ft,Er);if(a1(Rt())||Rt()===11||Rt()===9||Rt()===10||Rt()===42||Rt()===23)if(mR(Er,Oc)){for(let Jr of Er)Jr.flags|=33554432;return ai(33554432,()=>$(Ke,Ft,Er))}else return $(Ke,Ft,Er);if(Er){let Jr=NC(80,!0,Ni.Declaration_expected);return TS(Ke,Ft,Er,Jr,void 0)}return _o.fail("Should not have attempted to parse class member declaration.")}function Xr(){let Ke=ei(),Ft=Qa(),Er=xe(!0);if(Rt()===86)return Fa(Ke,Ft,Er,231);let Jr=NC(282,!0,Ni.Expression_expected);return wAr(Jr,Ke),Jr.modifiers=Er,Jr}function Kn(){return Fa(ei(),Qa(),void 0,231)}function to(Ke,Ft,Er){return Fa(Ke,Ft,Er,263)}function Fa(Ke,Ft,Er,Jr){let Un=Dg();Ts(86);let Ki=el(),Ss=x0();mR(Er,aua)&&Ws(!0);let vo=vg(),Pa;Ts(19)?(Pa=Hn(),Ts(20)):Pa=Zf(),Ws(Un);let js=Jr===263?y.createClassDeclaration(Er,Ki,Ss,vo,Pa):y.createClassExpression(Er,Ki,Ss,vo,Pa);return jr(ii(js,Ke),Ft)}function el(){return ec()&&!Eo()?Tm(ec()):void 0}function Eo(){return Rt()===119&&Os(pl)}function vg(){if(vr())return vp(22,nd)}function nd(){let Ke=ei(),Ft=Rt();_o.assert(Ft===96||Ft===119),us();let Er=Ef(7,YC);return ii(y.createHeritageClause(Ft,Er),Ke)}function YC(){let Ke=ei(),Ft=xb();if(Ft.kind===233)return Ft;let Er=Sn();return ii(y.createExpressionWithTypeArguments(Ft,Er),Ke)}function Sn(){return Rt()===30?uy(20,jp,30,32):void 0}function vr(){return Rt()===96||Rt()===119}function Hn(){return vp(5,nr)}function Fo(Ke,Ft,Er){Ts(120);let Jr=Og(),Un=x0(),Ki=vg(),Ss=DA(),vo=y.createInterfaceDeclaration(Er,Jr,Un,Ki,Ss);return jr(ii(vo,Ke),Ft)}function tc(Ke,Ft,Er){Ts(156),t.hasPrecedingLineBreak()&&hl(Ni.Line_break_not_permitted_here);let Jr=Og(),Un=x0();Ts(64);let Ki=Rt()===141&&Hi(g2)||jp();za();let Ss=y.createTypeAliasDeclaration(Er,Jr,Un,Ki);return jr(ii(Ss,Ke),Ft)}function dA(){let Ke=ei(),Ft=Qa(),Er=uC(),Jr=pa(Am);return jr(ii(y.createEnumMember(Er,Jr),Ke),Ft)}function pc(Ke,Ft,Er){Ts(94);let Jr=Og(),Un;Ts(19)?(Un=Ga(()=>Ef(6,dA)),Ts(20)):Un=Zf();let Ki=y.createEnumDeclaration(Er,Jr,Un);return jr(ii(Ki,Ke),Ft)}function Xu(){let Ke=ei(),Ft;return Ts(19)?(Ft=vp(1,gh),Ts(20)):Ft=Zf(),ii(y.createModuleBlock(Ft),Ke)}function Lu(Ke,Ft,Er,Jr){let Un=Jr&32,Ki=Jr&8?sp():Og(),Ss=ps(25)?Lu(ei(),!1,void 0,8|Un):Xu(),vo=y.createModuleDeclaration(Er,Ki,Ss,Jr);return jr(ii(vo,Ke),Ft)}function Rc(Ke,Ft,Er){let Jr=0,Un;Rt()===162?(Un=Og(),Jr|=2048):(Un=Po(),Un.text=Jh(Un.text));let Ki;Rt()===19?Ki=Xu():za();let Ss=y.createModuleDeclaration(Er,Un,Ki,Jr);return jr(ii(Ss,Ke),Ft)}function Mp(Ke,Ft,Er){let Jr=0;if(Rt()===162)return Rc(Ke,Ft,Er);if(ps(145))Jr|=32;else if(Ts(144),Rt()===11)return Rc(Ke,Ft,Er);return Lu(Ke,Ft,Er,Jr)}function jy(){return Rt()===149&&Os(Bv)}function Bv(){return us()===21}function Ll(){return us()===19}function Xm(){return us()===44}function $_(Ke,Ft,Er){Ts(130),Ts(145);let Jr=Og();za();let Un=y.createNamespaceExportDeclaration(Jr);return Un.modifiers=Er,jr(ii(Un,Ke),Ft)}function HC(Ke,Ft,Er){Ts(102);let Jr=t.getTokenFullStart(),Un;ll()&&(Un=Og());let Ki=!1;if(Un?.escapedText==="type"&&(Rt()!==161||ll()&&Os(S_))&&(ll()||lZ())&&(Ki=!0,Un=ll()?Og():void 0),Un&&!sN())return Ju(Ke,Ft,Er,Un,Ki);let Ss=yB(Un,Jr,Ki),vo=aN(),Pa=ZR();za();let js=y.createImportDeclaration(Er,Ss,vo,Pa);return jr(ii(js,Ke),Ft)}function yB(Ke,Ft,Er,Jr=!1){let Un;return(Ke||Rt()===42||Rt()===19)&&(Un=W9(Ke,Ft,Er,Jr),Ts(161)),Un}function ZR(){let Ke=Rt();if((Ke===118||Ke===132)&&!t.hasPrecedingLineBreak())return E3(Ke)}function sG(){let Ke=ei(),Ft=a1(Rt())?sp():yu(11);Ts(59);let Er=Vf(!0);return ii(y.createImportAttribute(Ft,Er),Ke)}function E3(Ke,Ft){let Er=ei();Ft||Ts(Ke);let Jr=t.getTokenStart();if(Ts(19)){let Un=t.hasPrecedingLineBreak(),Ki=Ef(24,sG,!0);if(!Ts(20)){let Ss=gfe(In);Ss&&Ss.code===Ni._0_expected.code&&SCt(Ss,iSe(dr,or,Jr,1,Ni.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}return ii(y.createImportAttributes(Ki,Un,Ke),Er)}else{let Un=iu([],ei(),void 0,!1);return ii(y.createImportAttributes(Un,!1,Ke),Er)}}function lZ(){return Rt()===42||Rt()===19}function sN(){return Rt()===28||Rt()===161}function Ju(Ke,Ft,Er,Jr,Un){Ts(64);let Ki=oN();za();let Ss=y.createImportEqualsDeclaration(Er,Un,Jr,Ki);return jr(ii(Ss,Ke),Ft)}function W9(Ke,Ft,Er,Jr){let Un;return(!Ke||ps(28))&&(Jr&&t.setSkipJsDocLeadingAsterisks(!0),Un=Rt()===42?uZ():vf(275),Jr&&t.setSkipJsDocLeadingAsterisks(!1)),ii(y.createImportClause(Er,Ke,Un),Ft)}function oN(){return jy()?wp():ie(!1)}function wp(){let Ke=ei();Ts(149),Ts(21);let Ft=aN();return Ts(22),ii(y.createExternalModuleReference(Ft),Ke)}function aN(){if(Rt()===11){let Ke=Po();return Ke.text=Jh(Ke.text),Ke}else return VA()}function uZ(){let Ke=ei();Ts(42),Ts(130);let Ft=Og();return ii(y.createNamespaceImport(Ft),Ke)}function oG(){return a1(Rt())||Rt()===11}function NS(Ke){return Rt()===11?Po():Ke()}function vf(Ke){let Ft=ei(),Er=Ke===275?y.createNamedImports(uy(23,Cx,19,20)):y.createNamedExports(uy(23,Ix,19,20));return ii(Er,Ft)}function Ix(){let Ke=Qa();return jr(gZ(281),Ke)}function Cx(){return gZ(276)}function gZ(Ke){let Ft=ei(),Er=Rse(Rt())&&!ll(),Jr=t.getTokenStart(),Un=t.getTokenEnd(),Ki=!1,Ss,vo=!0,Pa=NS(sp);if(Pa.kind===80&&Pa.escapedText==="type")if(Rt()===130){let Jl=sp();if(Rt()===130){let nA=sp();oG()?(Ki=!0,Ss=Jl,Pa=NS(xc),vo=!1):(Ss=Pa,Pa=nA,vo=!1)}else oG()?(Ss=Pa,vo=!1,Pa=NS(xc)):(Ki=!0,Pa=Jl)}else oG()&&(Ki=!0,Pa=NS(xc));vo&&Rt()===130&&(Ss=Pa,Ts(130),Pa=NS(xc)),Ke===276&&(Pa.kind!==80?(Lg(YU(or,Pa.pos),Pa.end,Ni.Identifier_expected),Pa=Gse(NC(80,!1),Pa.pos,Pa.pos)):Er&&Lg(Jr,Un,Ni.Identifier_expected));let js=Ke===276?y.createImportSpecifier(Ki,Ss,Pa):y.createExportSpecifier(Ki,Ss,Pa);return ii(js,Ft);function xc(){return Er=Rse(Rt())&&!ll(),Jr=t.getTokenStart(),Un=t.getTokenEnd(),sp()}}function ag(Ke){return ii(y.createNamespaceExport(NS(sp)),Ke)}function Gb(Ke,Ft,Er){let Jr=Dg();Ws(!0);let Un,Ki,Ss,vo=ps(156),Pa=ei();ps(42)?(ps(130)&&(Un=ag(Pa)),Ts(161),Ki=aN()):(Un=vf(279),(Rt()===161||Rt()===11&&!t.hasPrecedingLineBreak())&&(Ts(161),Ki=aN()));let js=Rt();Ki&&(js===118||js===132)&&!t.hasPrecedingLineBreak()&&(Ss=E3(js)),za(),Ws(Jr);let xc=y.createExportDeclaration(Er,vo,Un,Ki,Ss);return jr(ii(xc,Ke),Ft)}function m2(Ke,Ft,Er){let Jr=Dg();Ws(!0);let Un;ps(64)?Un=!0:Ts(90);let Ki=Vf(!0);za(),Ws(Jr);let Ss=y.createExportAssignment(Er,Un,Ki);return jr(ii(Ss,Ke),Ft)}let aG;(Ke=>{Ke[Ke.SourceElements=0]="SourceElements",Ke[Ke.BlockStatements=1]="BlockStatements",Ke[Ke.SwitchClauses=2]="SwitchClauses",Ke[Ke.SwitchClauseStatements=3]="SwitchClauseStatements",Ke[Ke.TypeMembers=4]="TypeMembers",Ke[Ke.ClassMembers=5]="ClassMembers",Ke[Ke.EnumMembers=6]="EnumMembers",Ke[Ke.HeritageClauseElement=7]="HeritageClauseElement",Ke[Ke.VariableDeclarations=8]="VariableDeclarations",Ke[Ke.ObjectBindingElements=9]="ObjectBindingElements",Ke[Ke.ArrayBindingElements=10]="ArrayBindingElements",Ke[Ke.ArgumentExpressions=11]="ArgumentExpressions",Ke[Ke.ObjectLiteralMembers=12]="ObjectLiteralMembers",Ke[Ke.JsxAttributes=13]="JsxAttributes",Ke[Ke.JsxChildren=14]="JsxChildren",Ke[Ke.ArrayLiteralMembers=15]="ArrayLiteralMembers",Ke[Ke.Parameters=16]="Parameters",Ke[Ke.JSDocParameters=17]="JSDocParameters",Ke[Ke.RestProperties=18]="RestProperties",Ke[Ke.TypeParameters=19]="TypeParameters",Ke[Ke.TypeArguments=20]="TypeArguments",Ke[Ke.TupleElementTypes=21]="TupleElementTypes",Ke[Ke.HeritageClauses=22]="HeritageClauses",Ke[Ke.ImportOrExportSpecifiers=23]="ImportOrExportSpecifiers",Ke[Ke.ImportAttributes=24]="ImportAttributes",Ke[Ke.JSDocComment=25]="JSDocComment",Ke[Ke.Count=26]="Count"})(aG||(aG={}));let zy;(Ke=>{Ke[Ke.False=0]="False",Ke[Ke.True=1]="True",Ke[Ke.Unknown=2]="Unknown"})(zy||(zy={}));let h2;(Ke=>{function Ft(js,xc,Jl){YA("file.js",js,99,void 0,1,0),t.setText(js,xc,Jl),gn=t.scan();let nA=Er(),Ig=nn("file.js",99,1,!1,[],U(1),0,_Se),Uu=nfe(In,Ig);return Br&&(Ig.jsDocDiagnostics=nfe(Br,Ig)),ud(),nA?{jsDocTypeExpression:nA,diagnostics:Uu}:void 0}Ke.parseJSDocTypeExpressionForTests=Ft;function Er(js){let xc=ei(),Jl=(js?ps:Ts)(19),nA=ai(16777216,IS);(!js||Jl)&&cm(20);let Ig=y.createJSDocTypeExpression(nA);return Ir(Ig),ii(Ig,xc)}Ke.parseJSDocTypeExpression=Er;function Jr(){let js=ei(),xc=ps(19),Jl=ei(),nA=ie(!1);for(;Rt()===81;)No(),og(),nA=ii(y.createJSDocMemberName(nA,Og()),Jl);xc&&cm(20);let Ig=y.createJSDocNameReference(nA);return Ir(Ig),ii(Ig,js)}Ke.parseJSDocNameReference=Jr;function Un(js,xc,Jl){YA("",js,99,void 0,1,0);let nA=ai(16777216,()=>Pa(xc,Jl)),Ig=nfe(In,{languageVariant:0,text:js});return ud(),nA?{jsDoc:nA,diagnostics:Ig}:void 0}Ke.parseIsolatedJSDocComment=Un;function Ki(js,xc,Jl){let nA=gn,Ig=In.length,Uu=ga,NE=ai(16777216,()=>Pa(xc,Jl));return Adr(NE,js),Qs&524288&&(Br||(Br=[]),c9(Br,In,Ig)),gn=nA,In.length=Ig,ga=Uu,NE}Ke.parseJSDocComment=Ki;let Ss;(js=>{js[js.BeginningOfLine=0]="BeginningOfLine",js[js.SawAsterisk=1]="SawAsterisk",js[js.SavingComments=2]="SavingComments",js[js.SavingBackticks=3]="SavingBackticks"})(Ss||(Ss={}));let vo;(js=>{js[js.Property=1]="Property",js[js.Parameter=2]="Parameter",js[js.CallbackParameter=4]="CallbackParameter"})(vo||(vo={}));function Pa(js=0,xc){let Jl=or,nA=xc===void 0?Jl.length:js+xc;if(xc=nA-js,_o.assert(js>=0),_o.assert(js<=nA),_o.assert(nA<=Jl.length),!vga(Jl,js))return;let Ig,Uu,NE,Cy,_2,y2=[],LR=[],B3=Za;Za|=1<<25;let pA=t.scanRange(js+3,xc-5,sI);return Za=B3,pA;function sI(){let ss=1,jo,ea=js-(Jl.lastIndexOf(` -`,js)+1)+4;function La(Dd){jo||(jo=ea),y2.push(Dd),ea+=Dd.length}for(og();cG(5););cG(4)&&(ss=0,ea=0);e:for(;;){switch(Rt()){case 60:my(y2),_2||(_2=ei()),Kc(Ys(ea)),ss=0,jo=void 0;break;case 4:y2.push(t.getTokenText()),ss=0,ea=0;break;case 42:let Dd=t.getTokenText();ss===1?(ss=2,La(Dd)):(_o.assert(ss===0),ss=1,ea+=Dd.length);break;case 5:_o.assert(ss!==2,"whitespace shouldn't come from the scanner while saving top-level comment text");let pm=t.getTokenText();jo!==void 0&&ea+pm.length>jo&&y2.push(pm.slice(jo-ea)),ea+=pm.length;break;case 1:break e;case 82:ss=2,La(t.getTokenValue());break;case 19:ss=2;let T1=t.getTokenFullStart(),N1=t.getTokenEnd()-1,Zb=Ze(N1);if(Zb){Cy||e0(y2),LR.push(ii(y.createJSDocText(y2.join("")),Cy??js,T1)),LR.push(Zb),y2=[],Cy=t.getTokenEnd();break}default:ss=2,La(t.getTokenText());break}ss===2?on(!1):og()}let gc=y2.join("").trimEnd();LR.length&&gc.length&&LR.push(ii(y.createJSDocText(gc),Cy??js,_2)),LR.length&&Ig&&_o.assertIsDefined(_2,"having parsed tags implies that the end of the comment span should be set");let IA=Ig&&iu(Ig,Uu,NE);return ii(y.createJSDocComment(LR.length?iu(LR,js,_2):gc.length?gc:void 0,IA),js,nA)}function e0(ss){for(;ss.length&&(ss[0]===` -`||ss[0]==="\r");)ss.shift()}function my(ss){for(;ss.length;){let jo=ss[ss.length-1].trimEnd();if(jo==="")ss.pop();else if(jo.lengthpm&&(La.push(bB.slice(pm-ss)),Dd=2),ss+=bB.length;break;case 19:Dd=2;let lG=t.getTokenFullStart(),hx=t.getTokenEnd()-1,P9=Ze(hx);P9?(gc.push(ii(y.createJSDocText(La.join("")),IA??ea,lG)),gc.push(P9),La=[],IA=t.getTokenEnd()):T1(t.getTokenText());break;case 62:Dd===3?Dd=2:Dd=3,T1(t.getTokenText());break;case 82:Dd!==3&&(Dd=2),T1(t.getTokenValue());break;case 42:if(Dd===0){Dd=1,ss+=1;break}default:Dd!==3&&(Dd=2),T1(t.getTokenText());break}Dd===2||Dd===3?N1=on(Dd===3):N1=og()}e0(La);let Zb=La.join("").trimEnd();if(gc.length)return Zb.length&&gc.push(ii(y.createJSDocText(Zb),IA??ea)),iu(gc,ea,t.getTokenEnd());if(Zb.length)return Zb}function Ze(ss){let jo=Hi(hr);if(!jo)return;og(),bd();let ea=pt(),La=[];for(;Rt()!==20&&Rt()!==4&&Rt()!==1;)La.push(t.getTokenText()),og();let gc=jo==="link"?y.createJSDocLink:jo==="linkcode"?y.createJSDocLinkCode:y.createJSDocLinkPlain;return ii(gc(ea,La.join("")),ss,t.getTokenEnd())}function pt(){if(a1(Rt())){let ss=ei(),jo=sp();for(;ps(25);)jo=ii(y.createQualifiedName(jo,Rt()===81?NC(80,!1):sp()),ss);for(;Rt()===81;)No(),og(),jo=ii(y.createJSDocMemberName(jo,Og()),ss);return jo}}function hr(){if(Wd(),Rt()===19&&og()===60&&a1(og())){let ss=t.getTokenValue();if(Zn(ss))return ss}}function Zn(ss){return ss==="link"||ss==="linkcode"||ss==="linkplain"}function yo(ss,jo,ea,La){return ii(y.createJSDocUnknownTag(jo,K(ss,ei(),ea,La)),ss)}function Kc(ss){ss&&(Ig?Ig.push(ss):(Ig=[ss],Uu=ss.pos),NE=ss.end)}function fA(){return Wd(),Rt()===19?Er():void 0}function Fb(){let ss=cG(23);ss&&bd();let jo=cG(62),ea=s8();return jo&&SI(62),ss&&(bd(),oc(64)&&VA(),Ts(24)),{name:ea,isBracketed:ss}}function Nh(ss){switch(ss.kind){case 151:return!0;case 188:return Nh(ss.elementType);default:return coi(ss)&&mh(ss.typeName)&&ss.typeName.escapedText==="Object"&&!ss.typeArguments}}function b2(ss,jo,ea,La){let gc=fA(),IA=!gc;Wd();let{name:Dd,isBracketed:pm}=Fb(),T1=Wd();IA&&!Os(hr)&&(gc=fA());let N1=K(ss,ei(),La,T1),Zb=qy(gc,Dd,ea,La);Zb&&(gc=Zb,IA=!0);let bB=ea===1?y.createJSDocPropertyTag(jo,Dd,pm,gc,IA,N1):y.createJSDocParameterTag(jo,Dd,pm,gc,IA,N1);return ii(bB,ss)}function qy(ss,jo,ea,La){if(ss&&Nh(ss.type)){let gc=ei(),IA,Dd;for(;IA=Hi(()=>WR(ea,La,jo));)IA.kind===341||IA.kind===348?Dd=o9(Dd,IA):IA.kind===345&&cf(IA.tagName,Ni.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);if(Dd){let pm=ii(y.createJSDocTypeLiteral(Dd,ss.type.kind===188),gc);return ii(y.createJSDocTypeExpression(pm),gc)}}}function v3(ss,jo,ea,La){mR(Ig,uga)&&Lg(jo.pos,t.getTokenStart(),Ni._0_tag_already_specified,mYe(jo.escapedText));let gc=fA();return ii(y.createJSDocReturnTag(jo,gc,K(ss,ei(),ea,La)),ss)}function S3(ss,jo,ea,La){mR(Ig,Cdr)&&Lg(jo.pos,t.getTokenStart(),Ni._0_tag_already_specified,mYe(jo.escapedText));let gc=Er(!0),IA=ea!==void 0&&La!==void 0?K(ss,ei(),ea,La):void 0;return ii(y.createJSDocTypeTag(jo,gc,IA),ss)}function oQ(ss,jo,ea,La){let gc=Rt()===23||Os(()=>og()===60&&a1(og())&&Zn(t.getTokenValue()))?void 0:Jr(),IA=ea!==void 0&&La!==void 0?K(ss,ei(),ea,La):void 0;return ii(y.createJSDocSeeTag(jo,gc,IA),ss)}function Tp(ss,jo,ea,La){let gc=fA(),IA=K(ss,ei(),ea,La);return ii(y.createJSDocThrowsTag(jo,gc,IA),ss)}function Si(ss,jo,ea,La){let gc=ei(),IA=dZ(),Dd=t.getTokenFullStart(),pm=K(ss,Dd,ea,La);pm||(Dd=t.getTokenFullStart());let T1=typeof pm!="string"?iu(QAr([ii(IA,gc,Dd)],pm),gc):IA.text+pm;return ii(y.createJSDocAuthorTag(jo,T1),ss)}function dZ(){let ss=[],jo=!1,ea=t.getToken();for(;ea!==1&&ea!==4;){if(ea===30)jo=!0;else{if(ea===60&&!jo)break;if(ea===32&&jo){ss.push(t.getTokenText()),t.resetTokenState(t.getTokenEnd());break}}ss.push(t.getTokenText()),ea=og()}return y.createJSDocText(ss.join(""))}function jc(ss,jo,ea,La){let gc=VR();return ii(y.createJSDocImplementsTag(jo,gc,K(ss,ei(),ea,La)),ss)}function Rd(ss,jo,ea,La){let gc=VR();return ii(y.createJSDocAugmentsTag(jo,gc,K(ss,ei(),ea,La)),ss)}function Sc(ss,jo,ea,La){let gc=Er(!1),IA=ea!==void 0&&La!==void 0?K(ss,ei(),ea,La):void 0;return ii(y.createJSDocSatisfiesTag(jo,gc,IA),ss)}function ao(ss,jo,ea,La){let gc=t.getTokenFullStart(),IA;ll()&&(IA=Og());let Dd=yB(IA,gc,!0,!0),pm=aN(),T1=ZR(),N1=ea!==void 0&&La!==void 0?K(ss,ei(),ea,La):void 0;return ii(y.createJSDocImportTag(jo,Dd,pm,T1,N1),ss)}function VR(){let ss=ps(19),jo=ei(),ea=df();t.setSkipJsDocLeadingAsterisks(!0);let La=Sn();t.setSkipJsDocLeadingAsterisks(!1);let gc=y.createExpressionWithTypeArguments(ea,La),IA=ii(gc,jo);return ss&&Ts(20),IA}function df(){let ss=ei(),jo=mx();for(;ps(25);){let ea=mx();jo=ii(ge(jo,ea),ss)}return jo}function pZ(ss,jo,ea,La,gc){return ii(jo(ea,K(ss,ei(),La,gc)),ss)}function aQ(ss,jo,ea,La){let gc=Er(!0);return bd(),ii(y.createJSDocThisTag(jo,gc,K(ss,ei(),ea,La)),ss)}function vv(ss,jo,ea,La){let gc=Er(!0);return bd(),ii(y.createJSDocEnumTag(jo,gc,K(ss,ei(),ea,La)),ss)}function cN(ss,jo,ea,La){let gc=fA();Wd();let IA=Sf();bd();let Dd=Ce(ea),pm;if(!gc||Nh(gc.type)){let N1,Zb,bB,lG=!1;for(;(N1=Hi(()=>lQ(ea)))&&N1.kind!==345;)if(lG=!0,N1.kind===344)if(Zb){let hx=hl(Ni.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);hx&&SCt(hx,iSe(dr,or,0,0,Ni.The_tag_was_first_specified_here));break}else Zb=N1;else bB=o9(bB,N1);if(lG){let hx=gc&&gc.type.kind===188,P9=y.createJSDocTypeLiteral(bB,hx);gc=Zb&&Zb.typeExpression&&!Nh(Zb.typeExpression.type)?Zb.typeExpression:ii(P9,ss),pm=gc.end}}pm=pm||Dd!==void 0?ei():(IA??gc??jo).end,Dd||(Dd=K(ss,pm,ea,La));let T1=y.createJSDocTypedefTag(jo,gc,IA,Dd);return ii(T1,ss,pm)}function Sf(ss){let jo=t.getTokenStart();if(!a1(Rt()))return;let ea=mx();if(ps(25)){let La=Sf(!0),gc=y.createModuleDeclaration(void 0,ea,La,ss?8:void 0);return ii(gc,jo)}return ss&&(ea.flags|=4096),ea}function Jw(ss){let jo=ei(),ea,La;for(;ea=Hi(()=>WR(4,ss));){if(ea.kind===345){cf(ea.tagName,Ni.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);break}La=o9(La,ea)}return iu(La||[],jo)}function vl(ss,jo){let ea=Jw(jo),La=Hi(()=>{if(cG(60)){let gc=Ys(jo);if(gc&&gc.kind===342)return gc}});return ii(y.createJSDocSignature(void 0,ea,La),ss)}function cQ(ss,jo,ea,La){let gc=Sf();bd();let IA=Ce(ea),Dd=vl(ss,ea);IA||(IA=K(ss,ei(),ea,La));let pm=IA!==void 0?ei():Dd.end;return ii(y.createJSDocCallbackTag(jo,Dd,gc,IA),ss,pm)}function Uw(ss,jo,ea,La){bd();let gc=Ce(ea),IA=vl(ss,ea);gc||(gc=K(ss,ei(),ea,La));let Dd=gc!==void 0?ei():IA.end;return ii(y.createJSDocOverloadTag(jo,IA,gc),ss,Dd)}function lN(ss,jo){for(;!mh(ss)||!mh(jo);)if(!mh(ss)&&!mh(jo)&&ss.right.escapedText===jo.right.escapedText)ss=ss.left,jo=jo.left;else return!1;return ss.escapedText===jo.escapedText}function lQ(ss){return WR(1,ss)}function WR(ss,jo,ea){let La=!0,gc=!1;for(;;)switch(og()){case 60:if(La){let IA=r8(ss,jo);return IA&&(IA.kind===341||IA.kind===348)&&ea&&(mh(IA.name)||!lN(ea,IA.name.left))?!1:IA}gc=!1;break;case 4:La=!0,gc=!1;break;case 42:gc&&(La=!1),gc=!0;break;case 80:La=!1;break;case 1:return!1}}function r8(ss,jo){_o.assert(Rt()===60);let ea=t.getTokenFullStart();og();let La=mx(),gc=Wd(),IA;switch(La.escapedText){case"type":return ss===1&&S3(ea,La);case"prop":case"property":IA=1;break;case"arg":case"argument":case"param":IA=6;break;case"template":return uQ(ea,La,jo,gc);case"this":return aQ(ea,La,jo,gc);default:return!1}return ss&IA?b2(ea,La,ss,jo):!1}function n8(){let ss=ei(),jo=cG(23);jo&&bd();let ea=xe(!1,!0),La=mx(Ni.Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces),gc;if(jo&&(bd(),Ts(64),gc=ai(16777216,IS),Ts(24)),!dfe(La))return ii(y.createTypeParameterDeclaration(ea,La,void 0,gc),ss)}function i8(){let ss=ei(),jo=[];do{bd();let ea=n8();ea!==void 0&&jo.push(ea),Wd()}while(cG(28));return iu(jo,ss)}function uQ(ss,jo,ea,La){let gc=Rt()===19?Er():void 0,IA=i8();return ii(y.createJSDocTemplateTag(jo,gc,IA,K(ss,ei(),ea,La)),ss)}function cG(ss){return Rt()===ss?(og(),!0):!1}function s8(){let ss=mx();for(ps(23)&&Ts(24);ps(25);){let jo=mx();ps(23)&&Ts(24),ss=w(ss,jo)}return ss}function mx(ss){if(!a1(Rt()))return NC(80,!ss,ss||Ni.Identifier_expected);Zi++;let jo=t.getTokenStart(),ea=t.getTokenEnd(),La=Rt(),gc=Jh(t.getTokenValue()),IA=ii(O(gc,La),jo,ea);return og(),IA}}})(h2=e.JSDocParser||(e.JSDocParser={}))})(ffe||(ffe={}));var xii=new WeakSet;function Lga(e){xii.has(e)&&_o.fail("Source file has already been incrementally parsed"),xii.add(e)}var xoi=new WeakSet;function Vga(e){return xoi.has(e)}function kAr(e){xoi.add(e)}var JCt;(e=>{function t(G,T,O,X){if(X=X||_o.shouldAssert(2),y(G,T,O,X),Naa(O))return G;if(G.statements.length===0)return ffe.parseSourceFile(G.fileName,T,G.languageVersion,void 0,!0,G.scriptKind,G.setExternalModuleIndicator,G.jsDocParsingMode);Lga(G),ffe.fixupParentReferences(G);let U=G.text,le=B(G),ae=f(G,O);y(G,T,ae,X),_o.assert(ae.span.start<=O.span.start),_o.assert(MU(ae.span)===MU(O.span)),_o.assert(MU(rYe(ae))===MU(rYe(O)));let ge=rYe(ae).length-ae.span.length;p(G,ae.span.start,MU(ae.span),MU(rYe(ae)),ge,U,T,X);let fe=ffe.parseSourceFile(G.fileName,T,G.languageVersion,le,!0,G.scriptKind,G.setExternalModuleIndicator,G.jsDocParsingMode);return fe.commentDirectives=r(G.commentDirectives,fe.commentDirectives,ae.span.start,MU(ae.span),ge,U,T,X),fe.impliedNodeFormat=G.impliedNodeFormat,fga(G,fe),fe}e.updateSourceFile=t;function r(G,T,O,X,U,le,ae,ge){if(!G)return T;let fe,pe=!1;for(let be of G){let{range:Te,type:ke}=be;if(Te.endX){he();let x={range:{pos:Te.pos+U,end:Te.end+U},type:ke};fe=o9(fe,x),ge&&_o.assert(le.substring(Te.pos,Te.end)===ae.substring(x.range.pos,x.range.end))}}return he(),fe;function he(){pe||(pe=!0,fe?T&&fe.push(...T):fe=T)}}function s(G,T,O,X,U,le,ae){O?fe(G):ge(G);return;function ge(pe){let he="";if(ae&&a(pe)&&(he=U.substring(pe.pos,pe.end)),cii(pe,T),Gse(pe,pe.pos+X,pe.end+X),ae&&a(pe)&&_o.assert(he===le.substring(pe.pos,pe.end)),HD(pe,ge,fe),Afe(pe))for(let be of pe.jsDoc)ge(be);g(pe,ae)}function fe(pe){Gse(pe,pe.pos+X,pe.end+X);for(let he of pe)ge(he)}}function a(G){switch(G.kind){case 11:case 9:case 80:return!0}return!1}function o(G,T,O,X,U){_o.assert(G.end>=T,"Adjusting an element that was entirely before the change range"),_o.assert(G.pos<=O,"Adjusting an element that was entirely after the change range"),_o.assert(G.pos<=G.end);let le=Math.min(G.pos,X),ae=G.end>=O?G.end+U:Math.min(G.end,X);if(_o.assert(le<=ae),G.parent){let ge=G.parent;_o.assertGreaterThanOrEqual(le,ge.pos),_o.assertLessThanOrEqual(ae,ge.end)}Gse(G,le,ae)}function g(G,T){if(T){let O=G.pos,X=U=>{_o.assert(U.pos>=O),O=U.end};if(Afe(G))for(let U of G.jsDoc)X(U);HD(G,X),_o.assert(O<=G.end)}}function p(G,T,O,X,U,le,ae,ge){fe(G);return;function fe(he){if(_o.assert(he.pos<=he.end),he.pos>O){s(he,G,!1,U,le,ae,ge);return}let be=he.end;if(be>=T){if(kAr(he),cii(he,G),o(he,T,O,X,U),HD(he,fe,pe),Afe(he))for(let Te of he.jsDoc)fe(Te);g(he,ge);return}_o.assert(beO){s(he,G,!0,U,le,ae,ge);return}let be=he.end;if(be>=T){kAr(he),o(he,T,O,X,U);for(let Te of he)fe(Te);return}_o.assert(be0&&le<=1;le++){let ae=m(G,O);_o.assert(ae.pos<=O);let ge=ae.pos;O=Math.max(0,ge-1)}let X=Taa(O,MU(T.span)),U=T.newLength+(T.span.start-O);return wsi(X,U)}function m(G,T){let O=G,X;if(HD(G,le),X){let ae=U(X);ae.pos>O.pos&&(O=ae)}return O;function U(ae){for(;;){let ge=mla(ae);if(ge)ae=ge;else return ae}}function le(ae){if(!dfe(ae))if(ae.pos<=T){if(ae.pos>=O.pos&&(O=ae),TT),!0}}function y(G,T,O,X){let U=G.text;if(O&&(_o.assert(U.length-O.span.length+O.newLength===T.length),X||_o.shouldAssert(3))){let le=U.substr(0,O.span.start),ae=T.substr(0,O.span.start);_o.assert(le===ae);let ge=U.substring(MU(O.span),U.length),fe=T.substring(MU(rYe(O)),T.length);_o.assert(ge===fe)}}function B(G){let T=G.statements,O=0;_o.assert(O=pe.pos&&ae=pe.pos&&ae{G[G.Value=-1]="Value"})(v||(v={}))})(JCt||(JCt={}));function Wga(e){return Pga(e)!==void 0}function Pga(e){let t=psi(e,Wla,!1);if(t)return t;if(Joa(e,".ts")){let r=dsi(e),s=r.lastIndexOf(".d.");if(s>=0)return r.substring(s)}}function Oga(e,t,r,s){if(e){if(e==="import")return 99;if(e==="require")return 1;s(t,r-t,Ni.resolution_mode_should_be_either_require_or_import)}}function Mga(e,t){let r=[];for(let s of bAr(t,0)||n2){let a=t.substring(s.pos,s.end);Jga(r,s,a)}e.pragmas=new Map;for(let s of r){if(e.pragmas.has(s.name)){let a=e.pragmas.get(s.name);a instanceof Array?a.push(s.args):e.pragmas.set(s.name,[a,s.args]);continue}e.pragmas.set(s.name,s.args)}}function Qga(e,t){e.checkJsDirective=void 0,e.referencedFiles=[],e.typeReferenceDirectives=[],e.libReferenceDirectives=[],e.amdDependencies=[],e.hasNoDefaultLib=!1,e.pragmas.forEach((r,s)=>{switch(s){case"reference":{let a=e.referencedFiles,o=e.typeReferenceDirectives,g=e.libReferenceDirectives;$W(iAr(r),p=>{let{types:f,lib:m,path:y,["resolution-mode"]:B,preserve:v}=p.arguments,G=v==="true"?!0:void 0;if(p.arguments["no-default-lib"]==="true")e.hasNoDefaultLib=!0;else if(f){let T=Oga(B,f.pos,f.end,t);o.push({pos:f.pos,end:f.end,fileName:f.value,...T?{resolutionMode:T}:{},...G?{preserve:G}:{}})}else m?g.push({pos:m.pos,end:m.end,fileName:m.value,...G?{preserve:G}:{}}):y?a.push({pos:y.pos,end:y.end,fileName:y.value,...G?{preserve:G}:{}}):t(p.range.pos,p.range.end-p.range.pos,Ni.Invalid_reference_directive_syntax)});break}case"amd-dependency":{e.amdDependencies=CAr(iAr(r),a=>({name:a.arguments.name,path:a.arguments.path}));break}case"amd-module":{if(r instanceof Array)for(let a of r)e.moduleName&&t(a.range.pos,a.range.end-a.range.pos,Ni.An_AMD_module_cannot_have_multiple_name_assignments),e.moduleName=a.arguments.name;else e.moduleName=r.arguments.name;break}case"ts-nocheck":case"ts-check":{$W(iAr(r),a=>{(!e.checkJsDirective||a.range.pos>e.checkJsDirective.pos)&&(e.checkJsDirective={enabled:s==="ts-check",end:a.range.end,pos:a.range.pos})});break}case"jsx":case"jsxfrag":case"jsximportsource":case"jsxruntime":return;default:_o.fail("Unhandled pragma kind")}})}var pAr=new Map;function Yga(e){if(pAr.has(e))return pAr.get(e);let t=new RegExp(`(\\s${e}\\s*=\\s*)(?:(?:'([^']*)')|(?:"([^"]*)"))`,"im");return pAr.set(e,t),t}var Hga=/^\/\/\/\s*<(\S+)\s.*?\/>/m,Xga=/^\/\/\/?\s*@([^\s:]+)((?:[^\S\r\n]|:).*)?$/m;function Jga(e,t,r){let s=t.kind===2&&Hga.exec(r);if(s){let o=s[1].toLowerCase(),g=Asi[o];if(!g||!(g.kind&1))return;if(g.args){let p={};for(let f of g.args){let m=Yga(f.name).exec(r);if(!m&&!f.optional)return;if(m){let y=m[2]||m[3];if(f.captureSpan){let B=t.pos+m.index+m[1].length+1;p[f.name]={value:y,pos:B,end:B+y.length}}else p[f.name]=y}}e.push({name:o,args:{arguments:p,range:t}})}else e.push({name:o,args:{arguments:{},range:t}});return}let a=t.kind===2&&Xga.exec(r);if(a)return kii(e,t,2,a);if(t.kind===3){let o=/@(\S+)(\s+(?:\S.*)?)?$/gm,g;for(;g=o.exec(r);)kii(e,t,4,g)}}function kii(e,t,r,s){if(!s)return;let a=s[1].toLowerCase(),o=Asi[a];if(!o||!(o.kind&r))return;let g=s[2],p=Uga(o,g);p!=="fail"&&e.push({name:a,args:{arguments:p,range:t}})}function Uga(e,t){if(!t)return{};if(!e.args)return{};let r=t.trim().split(/\s+/),s={};for(let a=0;as.kind<309||s.kind>351);return r.kind<166?r:r.getFirstToken(e)}getLastToken(e){this.assertHasRealPosition();let t=this.getChildren(e),r=gfe(t);if(r)return r.kind<166?r:r.getLastToken(e)}forEachChild(e,t){return HD(this,e,t)}};function Kga(e,t){let r=[];if(_ca(e))return e.forEachChild(g=>{r.push(g)}),r;fYe.setText((t||e.getSourceFile()).text);let s=e.pos,a=g=>{IYe(r,s,g.pos,e),r.push(g),s=g.end},o=g=>{IYe(r,s,g.pos,e),r.push(jga(g,e)),s=g.end};return $W(e.jsDoc,a),s=e.pos,e.forEachChild(a,o),IYe(r,s,e.end,e),fYe.setText(void 0),r}function IYe(e,t,r,s){for(fYe.resetTokenState(t);tt.tagName.text==="inheritDoc"||t.tagName.text==="inheritdoc")}function GCt(e,t){if(!e)return n2;let r=ts_JsDoc_exports.getJsDocTagsFromDeclarations(e,t);if(t&&(r.length===0||e.some(Loi))){let s=new Set;for(let a of e){let o=Voi(t,a,g=>{var p;if(!s.has(g))return s.add(g),a.kind===177||a.kind===178?g.getContextualJsDocTags(a,t):((p=g.declarations)==null?void 0:p.length)===1?g.getJsDocTags(t):void 0});o&&(r=[...o,...r])}}return r}function pYe(e,t){if(!e)return n2;let r=ts_JsDoc_exports.getJsDocCommentsFromDeclarations(e,t);if(t&&(r.length===0||e.some(Loi))){let s=new Set;for(let a of e){let o=Voi(t,a,g=>{if(!s.has(g))return s.add(g),a.kind===177||a.kind===178?g.getContextualDocumentationComment(a,t):g.getDocumentationComment(t)});o&&(r=r.length===0?o.slice():o.concat(lineBreakPart(),r))}}return r}function Voi(e,t,r){var s;let a=((s=t.parent)==null?void 0:s.kind)===176?t.parent.parent:t.parent;if(!a)return;let o=ala(t);return Ioa(qca(a),g=>{let p=e.getTypeAtLocation(g),f=o&&p.symbol?e.getTypeOfSymbol(p.symbol):p,m=e.getPropertyOfType(f,t.symbol.name);return m?r(m):void 0})}var eAa=class extends _dr{constructor(e,t,r){super(e,t,r)}update(e,t){return Zga(this,e,t)}getLineAndCharacterOfPosition(e){return ysi(this,e)}getLineStarts(){return yAr(this)}getPositionOfLineAndCharacter(e,t,r){return Iaa(yAr(this),e,t,this.text,r)}getLineEndOfPosition(e){let{line:t}=this.getLineAndCharacterOfPosition(e),r=this.getLineStarts(),s;t+1>=r.length&&(s=this.getEnd()),s||(s=r[t+1]-1);let a=this.getFullText();return a[s]===` -`&&a[s-1]==="\r"?s-1:s}getNamedDeclarations(){return this.namedDeclarations||(this.namedDeclarations=this.computeNamedDeclarations()),this.namedDeclarations}computeNamedDeclarations(){let e=Roa();return this.forEachChild(a),e;function t(o){let g=s(o);g&&e.add(g,o)}function r(o){let g=e.get(o);return g||e.set(o,g=[]),g}function s(o){let g=tdr(o);return g&&(ioi(g)&&Zse(g.expression)?g.expression.name.text:Lsi(g)?getNameFromPropertyName(g):void 0)}function a(o){switch(o.kind){case 262:case 218:case 174:case 173:let g=o,p=s(g);if(p){let y=r(p),B=gfe(y);B&&g.parent===B.parent&&g.symbol===B.symbol?g.body&&!B.body&&(y[y.length-1]=g):y.push(g)}HD(o,a);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(o),HD(o,a);break;case 169:if(!vYe(o,31))break;case 260:case 208:{let y=o;if(uca(y.name)){HD(y.name,a);break}y.initializer&&a(y.initializer)}case 306:case 172:case 171:t(o);break;case 278:let f=o;f.exportClause&&(Xua(f.exportClause)?$W(f.exportClause.elements,a):a(f.exportClause.name));break;case 272:let m=o.importClause;m&&(m.name&&t(m.name),m.namedBindings&&(m.namedBindings.kind===274?t(m.namedBindings):$W(m.namedBindings.elements,a)));break;case 226:odr(o)!==0&&t(o);default:HD(o,a)}}}},tAa=class{constructor(e,t,r){this.fileName=e,this.text=t,this.skipTrivia=r||(s=>s)}getLineAndCharacterOfPosition(e){return ysi(this,e)}};function rAa(){return{getNodeConstructor:()=>_dr,getTokenConstructor:()=>Goi,getIdentifierConstructor:()=>Foi,getPrivateIdentifierConstructor:()=>Zoi,getSourceFileConstructor:()=>eAa,getSymbolConstructor:()=>zga,getTypeConstructor:()=>qga,getSignatureConstructor:()=>$ga,getSourceMapSourceConstructor:()=>tAa}}var nAa=["getSemanticDiagnostics","getSuggestionDiagnostics","getCompilerOptionsDiagnostics","getSemanticClassifications","getEncodedSemanticClassifications","getCodeFixesAtPosition","getCombinedCodeFix","applyCodeActionCommand","organizeImports","getEditsForFileRename","getEmitOutput","getApplicableRefactors","getEditsForRefactor","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls","provideInlayHints","getSupportedCodeFixes","getPasteEdits"],Khl=[...nAa,"getCompletionsAtPosition","getCompletionEntryDetails","getCompletionEntrySymbol","getSignatureHelpItems","getQuickInfoAtPosition","getDefinitionAtPosition","getDefinitionAndBoundSpan","getImplementationAtPosition","getTypeDefinitionAtPosition","getReferencesAtPosition","findReferences","getDocumentHighlights","getNavigateToItems","getRenameInfo","findRenameLocations","getApplicableRefactors","preparePasteEditsForFile"];wla(rAa());var Woi=new Proxy({},{get:()=>!0}),Poi=Woi["4.8"];function JU(e,t=!1){var r;if(e!=null){if(Poi){if(t||hdr(e)){let s=Faa(e);return s?[...s]:void 0}return}return(r=e.modifiers)==null?void 0:r.filter(s=>!pdr(s))}}function gSe(e,t=!1){var r;if(e!=null){if(Poi){if(t||Ega(e)){let s=Gaa(e);return s?[...s]:void 0}return}return(r=e.decorators)==null?void 0:r.filter(pdr)}}var iAa={},Ooi=new Proxy({},{get:(e,t)=>t}),sAa=Ooi,oAa=Ooi,Ui=sAa,CR=oAa,Moi=Woi["5.0"],Pl=Bp,aAa=new Set([Pl.AmpersandAmpersandToken,Pl.BarBarToken,Pl.QuestionQuestionToken]),cAa=new Set([Bp.AmpersandAmpersandEqualsToken,Bp.AmpersandEqualsToken,Bp.AsteriskAsteriskEqualsToken,Bp.AsteriskEqualsToken,Bp.BarBarEqualsToken,Bp.BarEqualsToken,Bp.CaretEqualsToken,Bp.EqualsToken,Bp.GreaterThanGreaterThanEqualsToken,Bp.GreaterThanGreaterThanGreaterThanEqualsToken,Bp.LessThanLessThanEqualsToken,Bp.MinusEqualsToken,Bp.PercentEqualsToken,Bp.PlusEqualsToken,Bp.QuestionQuestionEqualsToken,Bp.SlashEqualsToken]),lAa=new Set([Pl.AmpersandAmpersandToken,Pl.AmpersandToken,Pl.AsteriskAsteriskToken,Pl.AsteriskToken,Pl.BarBarToken,Pl.BarToken,Pl.CaretToken,Pl.EqualsEqualsEqualsToken,Pl.EqualsEqualsToken,Pl.ExclamationEqualsEqualsToken,Pl.ExclamationEqualsToken,Pl.GreaterThanEqualsToken,Pl.GreaterThanGreaterThanGreaterThanToken,Pl.GreaterThanGreaterThanToken,Pl.GreaterThanToken,Pl.InKeyword,Pl.InstanceOfKeyword,Pl.LessThanEqualsToken,Pl.LessThanLessThanToken,Pl.LessThanToken,Pl.MinusToken,Pl.PercentToken,Pl.PlusToken,Pl.SlashToken]);function uAa(e){return cAa.has(e.kind)}function gAa(e){return aAa.has(e.kind)}function AAa(e){return lAa.has(e.kind)}function xse(e){return ay(e)}function dAa(e){return e.kind!==Pl.SemicolonClassElement}function cC(e,t){let r=JU(t);return r?.some(s=>s.kind===e)===!0}function pAa(e){let t=JU(e);return t==null?null:t[t.length-1]??null}function fAa(e){return e.kind===Pl.CommaToken}function IAa(e){return e.kind===Pl.SingleLineCommentTrivia||e.kind===Pl.MultiLineCommentTrivia}function CAa(e){return e.kind===Pl.JSDocComment}function mAa(e){if(uAa(e))return{type:Ui.AssignmentExpression,operator:xse(e.kind)};if(gAa(e))return{type:Ui.LogicalExpression,operator:xse(e.kind)};if(AAa(e))return{type:Ui.BinaryExpression,operator:xse(e.kind)};throw new Error(`Unexpected binary operator ${ay(e.kind)}`)}function FCt(e,t){let r=t.getLineAndCharacterOfPosition(e);return{column:r.character,line:r.line+1}}function lfe(e,t){let[r,s]=e.map(a=>FCt(a,t));return{end:s,start:r}}function hAa(e){if(e.kind===Bp.Block)switch(e.parent.kind){case Bp.Constructor:case Bp.GetAccessor:case Bp.SetAccessor:case Bp.ArrowFunction:case Bp.FunctionExpression:case Bp.FunctionDeclaration:case Bp.MethodDeclaration:return!0;default:return!1}return!0}function sYe(e,t){return[e.getStart(t),e.getEnd()]}function _Aa(e){return e.kind>=Pl.FirstToken&&e.kind<=Pl.LastToken}function Qoi(e){return e.kind>=Pl.JsxElement&&e.kind<=Pl.JsxAttribute}function GAr(e){return e.flags&qW.Let?"let":(e.flags&qW.AwaitUsing)===qW.AwaitUsing?"await using":e.flags&qW.Const?"const":e.flags&qW.Using?"using":"var"}function ofe(e){let t=JU(e);if(t!=null)for(let r of t)switch(r.kind){case Pl.PublicKeyword:return"public";case Pl.ProtectedKeyword:return"protected";case Pl.PrivateKeyword:return"private";default:break}}function sSe(e,t,r){return s(t);function s(a){return $aa(a)&&a.pos===e.end?a:RAa(a.getChildren(r),o=>(o.pos<=e.pos&&o.end>e.end||o.pos===e.end)&&NAa(o,r)?s(o):void 0)}}function yAa(e,t){let r=e;for(;r;){if(t(r))return r;r=r.parent}}function bAa(e){return!!yAa(e,Qoi)}function Gii(e){return dSe(!1,e,/&(?:#\d+|#x[\da-fA-F]+|[0-9a-zA-Z]+);/g,t=>{let r=t.slice(1,-1);if(r[0]==="#"){let s=r[1]==="x"?parseInt(r.slice(2),16):parseInt(r.slice(1),10);return s>1114111?t:String.fromCodePoint(s)}return iAa[r]||t})}function oSe(e){return e.kind===Pl.ComputedPropertyName}function Fii(e){return!!e.questionToken}function Yoi(e){return e.type===Ui.ChainExpression}function EAa(e,t){return Yoi(t)&&e.expression.kind!==Bp.ParenthesizedExpression}function BAa(e){let t;if(Moi&&e.kind===Pl.Identifier?t=Nsi(e):"originalKeywordKind"in e&&(t=e.originalKeywordKind),t)return t===Pl.NullKeyword?CR.Null:t>=Pl.FirstFutureReservedWord&&t<=Pl.LastKeyword?CR.Identifier:CR.Keyword;if(e.kind>=Pl.FirstKeyword&&e.kind<=Pl.LastFutureReservedWord)return e.kind===Pl.FalseKeyword||e.kind===Pl.TrueKeyword?CR.Boolean:CR.Keyword;if(e.kind>=Pl.FirstPunctuation&&e.kind<=Pl.LastPunctuation)return CR.Punctuator;if(e.kind>=Pl.NoSubstitutionTemplateLiteral&&e.kind<=Pl.TemplateTail)return CR.Template;switch(e.kind){case Pl.NumericLiteral:return CR.Numeric;case Pl.JsxText:return CR.JSXText;case Pl.StringLiteral:return e.parent.kind===Pl.JsxAttribute||e.parent.kind===Pl.JsxElement?CR.JSXText:CR.String;case Pl.RegularExpressionLiteral:return CR.RegularExpression;case Pl.Identifier:case Pl.ConstructorKeyword:case Pl.GetKeyword:case Pl.SetKeyword:default:}return e.kind===Pl.Identifier&&(Qoi(e.parent)||e.parent.kind===Pl.PropertyAccessExpression&&bAa(e))?CR.JSXIdentifier:CR.Identifier}function vAa(e,t){let r=e.kind===Pl.JsxText?e.getFullStart():e.getStart(t),s=e.getEnd(),a=t.text.slice(r,s),o=BAa(e),g=[r,s],p=lfe(g,t);return o===CR.RegularExpression?{type:o,loc:p,range:g,regex:{flags:a.slice(a.lastIndexOf("/")+1),pattern:a.slice(1,a.lastIndexOf("/"))},value:a}:{type:o,loc:p,range:g,value:a}}function SAa(e){let t=[];function r(s){IAa(s)||CAa(s)||(_Aa(s)&&s.kind!==Pl.EndOfFileToken?t.push(vAa(s,e)):s.getChildren(e).forEach(r))}return r(e),t}var wAa=class extends Error{fileName;location;constructor(e,t,r){super(e),this.fileName=t,this.location=r,Object.defineProperty(this,"name",{configurable:!0,enumerable:!1,value:new.target.name})}get index(){return this.location.start.offset}get lineNumber(){return this.location.start.line}get column(){return this.location.start.column}};function Hoi(e,t,r,s=r){let[a,o]=[r,s].map(g=>{let{character:p,line:f}=t.getLineAndCharacterOfPosition(g);return{column:p,line:f+1,offset:g}});return new wAa(e,t.fileName,{end:o,start:a})}function TAa(e){var t;return!!("illegalDecorators"in e&&(t=e.illegalDecorators)!=null&&t.length)}function NAa(e,t){return e.kind===Pl.EndOfFileToken?!!e.jsDoc:e.getWidth(t)!==0}function RAa(e,t){if(e!==void 0)for(let r=0;r=0&&e.kind!==Pl.EndOfFileToken}function Zii(e){return!kAa(e)}function GAa(e){return Tsi(e.parent,Vsi)}function FAa(e){return cC(Pl.AbstractKeyword,e)}function ZAa(e){if(e.parameters.length&&!Soi(e)){let t=e.parameters[0];if(LAa(t))return t}return null}function LAa(e){return Xoi(e.name)}function VAa(e){switch(e.kind){case Pl.ClassDeclaration:return!0;case Pl.ClassExpression:return!0;case Pl.PropertyDeclaration:{let{parent:t}=e;return!!(XCt(t)||CSe(t)&&!FAa(e))}case Pl.GetAccessor:case Pl.SetAccessor:case Pl.MethodDeclaration:{let{parent:t}=e;return!!e.body&&(XCt(t)||CSe(t))}case Pl.Parameter:{let{parent:t}=e,r=t.parent;return!!t&&"body"in t&&!!t.body&&(t.kind===Pl.Constructor||t.kind===Pl.MethodDeclaration||t.kind===Pl.SetAccessor)&&ZAa(t)!==e&&!!r&&r.kind===Pl.ClassDeclaration}}return!1}function bdr(e){switch(e.kind){case Pl.Identifier:return!0;case Pl.PropertyAccessExpression:case Pl.ElementAccessExpression:return!(e.flags&qW.OptionalChain);case Pl.ParenthesizedExpression:case Pl.TypeAssertionExpression:case Pl.AsExpression:case Pl.SatisfiesExpression:case Pl.ExpressionWithTypeArguments:case Pl.NonNullExpression:return bdr(e.expression);default:return!1}}function WAa(e){let t=JU(e),r=e;for(;(!t||t.length===0)&&EYe(r.parent);){let s=JU(r.parent);s!=null&&s.length&&(t=s),r=r.parent}return t}var Tn=Bp;function PAa(e){return Hoi("message"in e&&e.message||e.messageText,e.file,e.start)}var Gu,FAr,Joi,Kp,VT,ASe,ZAr,OAa=class{constructor(e,t){goa(this,Gu),eYe(this,"allowPattern",!1),eYe(this,"ast"),eYe(this,"esTreeNodeToTSNodeMap",new WeakMap),eYe(this,"options"),eYe(this,"tsNodeToESTreeNodeMap",new WeakMap),this.ast=e,this.options={...t}}assertModuleSpecifier(e,t){var r;!t&&e.moduleSpecifier==null&&zu(this,Gu,VT).call(this,e,"Module specifier must be a string literal."),e.moduleSpecifier&&((r=e.moduleSpecifier)==null?void 0:r.kind)!==Tn.StringLiteral&&zu(this,Gu,VT).call(this,e.moduleSpecifier,"Module specifier must be a string literal.")}convertBindingNameWithTypeAnnotation(e,t,r){let s=this.convertPattern(e);return t&&(s.typeAnnotation=this.convertTypeAnnotation(t,r),this.fixParentLocation(s,s.typeAnnotation.range)),s}convertBodyExpressions(e,t){let r=hAa(t);return e.map(s=>{let a=this.convertChild(s);if(r){if(a!=null&&a.expression&&foi(s)&&jCt(s.expression)){let o=a.expression.raw;return a.directive=o.slice(1,-1),a}r=!1}return a}).filter(s=>s)}convertChainExpression(e,t){let{child:r,isOptional:s}=e.type===Ui.MemberExpression?{child:e.object,isOptional:e.optional}:e.type===Ui.CallExpression?{child:e.callee,isOptional:e.optional}:{child:e.expression,isOptional:!1},a=EAa(t,r);if(!a&&!s)return e;if(a&&Yoi(r)){let o=r.expression;e.type===Ui.MemberExpression?e.object=o:e.type===Ui.CallExpression?e.callee=o:e.expression=o}return this.createNode(t,{type:Ui.ChainExpression,expression:e})}convertChild(e,t){return this.converter(e,t,!1)}convertPattern(e,t){return this.converter(e,t,!0)}convertTypeAnnotation(e,t){let r=t?.kind===Tn.FunctionType||t?.kind===Tn.ConstructorType?2:1,s=[e.getFullStart()-r,e.end],a=lfe(s,this.ast);return{type:Ui.TSTypeAnnotation,loc:a,range:s,typeAnnotation:this.convertChild(e)}}convertTypeArgumentsToTypeParameterInstantiation(e,t){let r=sSe(e,this.ast,this.ast);return this.createNode(t,{type:Ui.TSTypeParameterInstantiation,range:[e.pos-1,r.end],params:e.map(s=>this.convertChild(s))})}convertTSTypeParametersToTypeParametersDeclaration(e){let t=sSe(e,this.ast,this.ast),r=[e.pos-1,t.end];return{type:Ui.TSTypeParameterDeclaration,loc:lfe(r,this.ast),range:r,params:e.map(s=>this.convertChild(s))}}convertParameters(e){return e!=null&&e.length?e.map(t=>{var r;let s=this.convertChild(t);return s.decorators=((r=gSe(t))==null?void 0:r.map(a=>this.convertChild(a)))??[],s}):[]}converter(e,t,r){if(!e)return null;zu(this,Gu,Joi).call(this,e);let s=this.allowPattern;r!=null&&(this.allowPattern=r);let a=this.convertNode(e,t??e.parent);return this.registerTSNodeInNodeMap(e,a),this.allowPattern=s,a}convertImportAttributes(e){return e==null?[]:e.elements.map(t=>this.convertChild(t))}convertJSXIdentifier(e){let t=this.createNode(e,{type:Ui.JSXIdentifier,name:e.getText()});return this.registerTSNodeInNodeMap(e,t),t}convertJSXNamespaceOrIdentifier(e){if(e.kind===Bp.JsxNamespacedName){let s=this.createNode(e,{type:Ui.JSXNamespacedName,name:this.createNode(e.name,{type:Ui.JSXIdentifier,name:e.name.text}),namespace:this.createNode(e.namespace,{type:Ui.JSXIdentifier,name:e.namespace.text})});return this.registerTSNodeInNodeMap(e,s),s}let t=e.getText(),r=t.indexOf(":");if(r>0){let s=sYe(e,this.ast),a=this.createNode(e,{type:Ui.JSXNamespacedName,range:s,name:this.createNode(e,{type:Ui.JSXIdentifier,range:[s[0]+r+1,s[1]],name:t.slice(r+1)}),namespace:this.createNode(e,{type:Ui.JSXIdentifier,range:[s[0],s[0]+r],name:t.slice(0,r)})});return this.registerTSNodeInNodeMap(e,a),a}return this.convertJSXIdentifier(e)}convertJSXTagName(e,t){let r;switch(e.kind){case Tn.PropertyAccessExpression:e.name.kind===Tn.PrivateIdentifier&&zu(this,Gu,Kp).call(this,e.name,"Non-private identifier expected."),r=this.createNode(e,{type:Ui.JSXMemberExpression,object:this.convertJSXTagName(e.expression,t),property:this.convertJSXIdentifier(e.name)});break;case Tn.ThisKeyword:case Tn.Identifier:default:return this.convertJSXNamespaceOrIdentifier(e)}return this.registerTSNodeInNodeMap(e,r),r}convertMethodSignature(e){return this.createNode(e,{type:Ui.TSMethodSignature,accessibility:ofe(e),computed:oSe(e.name),key:this.convertChild(e.name),kind:(()=>{switch(e.kind){case Tn.GetAccessor:return"get";case Tn.SetAccessor:return"set";case Tn.MethodSignature:return"method"}})(),optional:Fii(e),params:this.convertParameters(e.parameters),readonly:cC(Tn.ReadonlyKeyword,e),returnType:e.type&&this.convertTypeAnnotation(e.type,e),static:cC(Tn.StaticKeyword,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)})}fixParentLocation(e,t){t[0]e.range[1]&&(e.range[1]=t[1],e.loc.end=FCt(e.range[1],this.ast))}convertNode(e,t){var r,s,a,o,g,p,f,m;switch(e.kind){case Tn.SourceFile:return this.createNode(e,{type:Ui.Program,range:[e.getStart(this.ast),e.endOfFileToken.end],body:this.convertBodyExpressions(e.statements,e),comments:void 0,sourceType:e.externalModuleIndicator?"module":"script",tokens:void 0});case Tn.Block:return this.createNode(e,{type:Ui.BlockStatement,body:this.convertBodyExpressions(e.statements,e)});case Tn.Identifier:return xAa(e)?this.createNode(e,{type:Ui.ThisExpression}):this.createNode(e,{type:Ui.Identifier,decorators:[],name:e.text,optional:!1,typeAnnotation:void 0});case Tn.PrivateIdentifier:return this.createNode(e,{type:Ui.PrivateIdentifier,name:e.text.slice(1)});case Tn.WithStatement:return this.createNode(e,{type:Ui.WithStatement,body:this.convertChild(e.statement),object:this.convertChild(e.expression)});case Tn.ReturnStatement:return this.createNode(e,{type:Ui.ReturnStatement,argument:this.convertChild(e.expression)});case Tn.LabeledStatement:return this.createNode(e,{type:Ui.LabeledStatement,body:this.convertChild(e.statement),label:this.convertChild(e.label)});case Tn.ContinueStatement:return this.createNode(e,{type:Ui.ContinueStatement,label:this.convertChild(e.label)});case Tn.BreakStatement:return this.createNode(e,{type:Ui.BreakStatement,label:this.convertChild(e.label)});case Tn.IfStatement:return this.createNode(e,{type:Ui.IfStatement,alternate:this.convertChild(e.elseStatement),consequent:this.convertChild(e.thenStatement),test:this.convertChild(e.expression)});case Tn.SwitchStatement:return e.caseBlock.clauses.filter(y=>y.kind===Tn.DefaultClause).length>1&&zu(this,Gu,Kp).call(this,e,"A 'default' clause cannot appear more than once in a 'switch' statement."),this.createNode(e,{type:Ui.SwitchStatement,cases:e.caseBlock.clauses.map(y=>this.convertChild(y)),discriminant:this.convertChild(e.expression)});case Tn.CaseClause:case Tn.DefaultClause:return this.createNode(e,{type:Ui.SwitchCase,consequent:e.statements.map(y=>this.convertChild(y)),test:e.kind===Tn.CaseClause?this.convertChild(e.expression):null});case Tn.ThrowStatement:return e.expression.end===e.expression.pos&&zu(this,Gu,VT).call(this,e,"A throw statement must throw an expression."),this.createNode(e,{type:Ui.ThrowStatement,argument:this.convertChild(e.expression)});case Tn.TryStatement:return this.createNode(e,{type:Ui.TryStatement,block:this.convertChild(e.tryBlock),finalizer:this.convertChild(e.finallyBlock),handler:this.convertChild(e.catchClause)});case Tn.CatchClause:return(r=e.variableDeclaration)!=null&&r.initializer&&zu(this,Gu,Kp).call(this,e.variableDeclaration.initializer,"Catch clause variable cannot have an initializer."),this.createNode(e,{type:Ui.CatchClause,body:this.convertChild(e.block),param:e.variableDeclaration?this.convertBindingNameWithTypeAnnotation(e.variableDeclaration.name,e.variableDeclaration.type):null});case Tn.WhileStatement:return this.createNode(e,{type:Ui.WhileStatement,body:this.convertChild(e.statement),test:this.convertChild(e.expression)});case Tn.DoStatement:return this.createNode(e,{type:Ui.DoWhileStatement,body:this.convertChild(e.statement),test:this.convertChild(e.expression)});case Tn.ForStatement:return this.createNode(e,{type:Ui.ForStatement,body:this.convertChild(e.statement),init:this.convertChild(e.initializer),test:this.convertChild(e.condition),update:this.convertChild(e.incrementor)});case Tn.ForInStatement:return zu(this,Gu,FAr).call(this,e.initializer,e.kind),this.createNode(e,{type:Ui.ForInStatement,body:this.convertChild(e.statement),left:this.convertPattern(e.initializer),right:this.convertChild(e.expression)});case Tn.ForOfStatement:return zu(this,Gu,FAr).call(this,e.initializer,e.kind),this.createNode(e,{type:Ui.ForOfStatement,await:!!(e.awaitModifier&&e.awaitModifier.kind===Tn.AwaitKeyword),body:this.convertChild(e.statement),left:this.convertPattern(e.initializer),right:this.convertChild(e.expression)});case Tn.FunctionDeclaration:{let y=cC(Tn.DeclareKeyword,e),B=cC(Tn.AsyncKeyword,e),v=!!e.asteriskToken;y?e.body?zu(this,Gu,Kp).call(this,e,"An implementation cannot be declared in ambient contexts."):B?zu(this,Gu,Kp).call(this,e,"'async' modifier cannot be used in an ambient context."):v&&zu(this,Gu,Kp).call(this,e,"Generators are not allowed in an ambient context."):!e.body&&v&&zu(this,Gu,Kp).call(this,e,"A function signature cannot be declared as a generator.");let G=this.createNode(e,{type:e.body?Ui.FunctionDeclaration:Ui.TSDeclareFunction,async:B,body:this.convertChild(e.body)||void 0,declare:y,expression:!1,generator:v,id:this.convertChild(e.name),params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return this.fixExports(e,G)}case Tn.VariableDeclaration:{let y=!!e.exclamationToken,B=this.convertChild(e.initializer),v=this.convertBindingNameWithTypeAnnotation(e.name,e.type,e);return y&&(B?zu(this,Gu,Kp).call(this,e,"Declarations with initializers cannot also have definite assignment assertions."):(v.type!==Ui.Identifier||!v.typeAnnotation)&&zu(this,Gu,Kp).call(this,e,"Declarations with definite assignment assertions must also have type annotations.")),this.createNode(e,{type:Ui.VariableDeclarator,definite:y,id:v,init:B})}case Tn.VariableStatement:{let y=this.createNode(e,{type:Ui.VariableDeclaration,declarations:e.declarationList.declarations.map(B=>this.convertChild(B)),declare:cC(Tn.DeclareKeyword,e),kind:GAr(e.declarationList)});return y.declarations.length||zu(this,Gu,VT).call(this,e,"A variable declaration list must have at least one variable declarator."),(y.kind==="using"||y.kind==="await using")&&e.declarationList.declarations.forEach((B,v)=>{y.declarations[v].init==null&&zu(this,Gu,Kp).call(this,B,`'${y.kind}' declarations must be initialized.`),y.declarations[v].id.type!==Ui.Identifier&&zu(this,Gu,Kp).call(this,B.name,`'${y.kind}' declarations may not have binding patterns.`)}),(y.declare||["await using","const","using"].includes(y.kind))&&e.declarationList.declarations.forEach((B,v)=>{y.declarations[v].definite&&zu(this,Gu,Kp).call(this,B,"A definite assignment assertion '!' is not permitted in this context.")}),y.declare&&e.declarationList.declarations.forEach((B,v)=>{y.declarations[v].init&&(["let","var"].includes(y.kind)||y.declarations[v].id.typeAnnotation)&&zu(this,Gu,Kp).call(this,B,"Initializers are not permitted in ambient contexts.")}),this.fixExports(e,y)}case Tn.VariableDeclarationList:{let y=this.createNode(e,{type:Ui.VariableDeclaration,declarations:e.declarations.map(B=>this.convertChild(B)),declare:!1,kind:GAr(e)});return(y.kind==="using"||y.kind==="await using")&&e.declarations.forEach((B,v)=>{y.declarations[v].init!=null&&zu(this,Gu,Kp).call(this,B,`'${y.kind}' declarations may not be initialized in for statement.`),y.declarations[v].id.type!==Ui.Identifier&&zu(this,Gu,Kp).call(this,B.name,`'${y.kind}' declarations may not have binding patterns.`)}),y}case Tn.ExpressionStatement:return this.createNode(e,{type:Ui.ExpressionStatement,directive:void 0,expression:this.convertChild(e.expression)});case Tn.ThisKeyword:return this.createNode(e,{type:Ui.ThisExpression});case Tn.ArrayLiteralExpression:return this.allowPattern?this.createNode(e,{type:Ui.ArrayPattern,decorators:[],elements:e.elements.map(y=>this.convertPattern(y)),optional:!1,typeAnnotation:void 0}):this.createNode(e,{type:Ui.ArrayExpression,elements:e.elements.map(y=>this.convertChild(y))});case Tn.ObjectLiteralExpression:{if(this.allowPattern)return this.createNode(e,{type:Ui.ObjectPattern,decorators:[],optional:!1,properties:e.properties.map(B=>this.convertPattern(B)),typeAnnotation:void 0});let y=[];for(let B of e.properties)(B.kind===Tn.GetAccessor||B.kind===Tn.SetAccessor||B.kind===Tn.MethodDeclaration)&&!B.body&&zu(this,Gu,VT).call(this,B.end-1,"'{' expected."),y.push(this.convertChild(B));return this.createNode(e,{type:Ui.ObjectExpression,properties:y})}case Tn.PropertyAssignment:{let{exclamationToken:y,questionToken:B}=e;return B&&zu(this,Gu,Kp).call(this,B,"A property assignment cannot have a question token."),y&&zu(this,Gu,Kp).call(this,y,"A property assignment cannot have an exclamation token."),this.createNode(e,{type:Ui.Property,computed:oSe(e.name),key:this.convertChild(e.name),kind:"init",method:!1,optional:!1,shorthand:!1,value:this.converter(e.initializer,e,this.allowPattern)})}case Tn.ShorthandPropertyAssignment:{let{exclamationToken:y,modifiers:B,questionToken:v}=e;return B&&zu(this,Gu,Kp).call(this,B[0],"A shorthand property assignment cannot have modifiers."),v&&zu(this,Gu,Kp).call(this,v,"A shorthand property assignment cannot have a question token."),y&&zu(this,Gu,Kp).call(this,y,"A shorthand property assignment cannot have an exclamation token."),e.objectAssignmentInitializer?this.createNode(e,{type:Ui.Property,computed:!1,key:this.convertChild(e.name),kind:"init",method:!1,optional:!1,shorthand:!0,value:this.createNode(e,{type:Ui.AssignmentPattern,decorators:[],left:this.convertPattern(e.name),optional:!1,right:this.convertChild(e.objectAssignmentInitializer),typeAnnotation:void 0})}):this.createNode(e,{type:Ui.Property,computed:!1,key:this.convertChild(e.name),kind:"init",method:!1,optional:!1,shorthand:!0,value:this.convertChild(e.name)})}case Tn.ComputedPropertyName:return this.convertChild(e.expression);case Tn.PropertyDeclaration:{let y=cC(Tn.AbstractKeyword,e);y&&e.initializer&&zu(this,Gu,Kp).call(this,e.initializer,"Abstract property cannot have an initializer.");let B=cC(Tn.AccessorKeyword,e),v=B?y?Ui.TSAbstractAccessorProperty:Ui.AccessorProperty:y?Ui.TSAbstractPropertyDefinition:Ui.PropertyDefinition,G=this.convertChild(e.name);return this.createNode(e,{type:v,accessibility:ofe(e),computed:oSe(e.name),declare:cC(Tn.DeclareKeyword,e),decorators:((s=gSe(e))==null?void 0:s.map(T=>this.convertChild(T)))??[],definite:!!e.exclamationToken,key:G,optional:(G.type===Ui.Literal||e.name.kind===Tn.Identifier||e.name.kind===Tn.ComputedPropertyName||e.name.kind===Tn.PrivateIdentifier)&&!!e.questionToken,override:cC(Tn.OverrideKeyword,e),readonly:cC(Tn.ReadonlyKeyword,e),static:cC(Tn.StaticKeyword,e),typeAnnotation:e.type&&this.convertTypeAnnotation(e.type,e),value:y?null:this.convertChild(e.initializer)})}case Tn.GetAccessor:case Tn.SetAccessor:if(e.parent.kind===Tn.InterfaceDeclaration||e.parent.kind===Tn.TypeLiteral)return this.convertMethodSignature(e);case Tn.MethodDeclaration:{let y=this.createNode(e,{type:e.body?Ui.FunctionExpression:Ui.TSEmptyBodyFunctionExpression,range:[e.parameters.pos-1,e.end],async:cC(Tn.AsyncKeyword,e),body:this.convertChild(e.body),declare:!1,expression:!1,generator:!!e.asteriskToken,id:null,params:[],returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});y.typeParameters&&this.fixParentLocation(y,y.typeParameters.range);let B;if(t.kind===Tn.ObjectLiteralExpression)y.params=e.parameters.map(v=>this.convertChild(v)),B=this.createNode(e,{type:Ui.Property,computed:oSe(e.name),key:this.convertChild(e.name),kind:"init",method:e.kind===Tn.MethodDeclaration,optional:!!e.questionToken,shorthand:!1,value:y});else{y.params=this.convertParameters(e.parameters);let v=cC(Tn.AbstractKeyword,e)?Ui.TSAbstractMethodDefinition:Ui.MethodDefinition;B=this.createNode(e,{type:v,accessibility:ofe(e),computed:oSe(e.name),decorators:((a=gSe(e))==null?void 0:a.map(G=>this.convertChild(G)))??[],key:this.convertChild(e.name),kind:"method",optional:!!e.questionToken,override:cC(Tn.OverrideKeyword,e),static:cC(Tn.StaticKeyword,e),value:y})}return e.kind===Tn.GetAccessor?B.kind="get":e.kind===Tn.SetAccessor?B.kind="set":!B.static&&e.name.kind===Tn.StringLiteral&&e.name.text==="constructor"&&B.type!==Ui.Property&&(B.kind="constructor"),B}case Tn.Constructor:{let y=pAa(e),B=(y&&sSe(y,e,this.ast))??e.getFirstToken(),v=this.createNode(e,{type:e.body?Ui.FunctionExpression:Ui.TSEmptyBodyFunctionExpression,range:[e.parameters.pos-1,e.end],async:!1,body:this.convertChild(e.body),declare:!1,expression:!1,generator:!1,id:null,params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});v.typeParameters&&this.fixParentLocation(v,v.typeParameters.range);let G=this.createNode(e,{type:Ui.Identifier,range:[B.getStart(this.ast),B.end],decorators:[],name:"constructor",optional:!1,typeAnnotation:void 0}),T=cC(Tn.StaticKeyword,e);return this.createNode(e,{type:cC(Tn.AbstractKeyword,e)?Ui.TSAbstractMethodDefinition:Ui.MethodDefinition,accessibility:ofe(e),computed:!1,decorators:[],key:G,kind:T?"method":"constructor",optional:!1,override:!1,static:T,value:v})}case Tn.FunctionExpression:return this.createNode(e,{type:Ui.FunctionExpression,async:cC(Tn.AsyncKeyword,e),body:this.convertChild(e.body),declare:!1,expression:!1,generator:!!e.asteriskToken,id:this.convertChild(e.name),params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});case Tn.SuperKeyword:return this.createNode(e,{type:Ui.Super});case Tn.ArrayBindingPattern:return this.createNode(e,{type:Ui.ArrayPattern,decorators:[],elements:e.elements.map(y=>this.convertPattern(y)),optional:!1,typeAnnotation:void 0});case Tn.OmittedExpression:return null;case Tn.ObjectBindingPattern:return this.createNode(e,{type:Ui.ObjectPattern,decorators:[],optional:!1,properties:e.elements.map(y=>this.convertPattern(y)),typeAnnotation:void 0});case Tn.BindingElement:{if(t.kind===Tn.ArrayBindingPattern){let B=this.convertChild(e.name,t);return e.initializer?this.createNode(e,{type:Ui.AssignmentPattern,decorators:[],left:B,optional:!1,right:this.convertChild(e.initializer),typeAnnotation:void 0}):e.dotDotDotToken?this.createNode(e,{type:Ui.RestElement,argument:B,decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):B}let y;return e.dotDotDotToken?y=this.createNode(e,{type:Ui.RestElement,argument:this.convertChild(e.propertyName??e.name),decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):y=this.createNode(e,{type:Ui.Property,computed:!!(e.propertyName&&e.propertyName.kind===Tn.ComputedPropertyName),key:this.convertChild(e.propertyName??e.name),kind:"init",method:!1,optional:!1,shorthand:!e.propertyName,value:this.convertChild(e.name)}),e.initializer&&(y.value=this.createNode(e,{type:Ui.AssignmentPattern,range:[e.name.getStart(this.ast),e.initializer.end],decorators:[],left:this.convertChild(e.name),optional:!1,right:this.convertChild(e.initializer),typeAnnotation:void 0})),y}case Tn.ArrowFunction:return this.createNode(e,{type:Ui.ArrowFunctionExpression,async:cC(Tn.AsyncKeyword,e),body:this.convertChild(e.body),expression:e.body.kind!==Tn.Block,generator:!1,id:null,params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});case Tn.YieldExpression:return this.createNode(e,{type:Ui.YieldExpression,argument:this.convertChild(e.expression),delegate:!!e.asteriskToken});case Tn.AwaitExpression:return this.createNode(e,{type:Ui.AwaitExpression,argument:this.convertChild(e.expression)});case Tn.NoSubstitutionTemplateLiteral:return this.createNode(e,{type:Ui.TemplateLiteral,expressions:[],quasis:[this.createNode(e,{type:Ui.TemplateElement,tail:!0,value:{cooked:e.text,raw:this.ast.text.slice(e.getStart(this.ast)+1,e.end-1)}})]});case Tn.TemplateExpression:{let y=this.createNode(e,{type:Ui.TemplateLiteral,expressions:[],quasis:[this.convertChild(e.head)]});return e.templateSpans.forEach(B=>{y.expressions.push(this.convertChild(B.expression)),y.quasis.push(this.convertChild(B.literal))}),y}case Tn.TaggedTemplateExpression:return this.createNode(e,{type:Ui.TaggedTemplateExpression,quasi:this.convertChild(e.template),tag:this.convertChild(e.tag),typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)});case Tn.TemplateHead:case Tn.TemplateMiddle:case Tn.TemplateTail:{let y=e.kind===Tn.TemplateTail;return this.createNode(e,{type:Ui.TemplateElement,tail:y,value:{cooked:e.text,raw:this.ast.text.slice(e.getStart(this.ast)+1,e.end-(y?1:2))}})}case Tn.SpreadAssignment:case Tn.SpreadElement:return this.allowPattern?this.createNode(e,{type:Ui.RestElement,argument:this.convertPattern(e.expression),decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):this.createNode(e,{type:Ui.SpreadElement,argument:this.convertChild(e.expression)});case Tn.Parameter:{let y,B;return e.dotDotDotToken?y=B=this.createNode(e,{type:Ui.RestElement,argument:this.convertChild(e.name),decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):e.initializer?(y=this.convertChild(e.name),B=this.createNode(e,{type:Ui.AssignmentPattern,decorators:[],left:y,optional:!1,right:this.convertChild(e.initializer),typeAnnotation:void 0}),JU(e)&&(B.range[0]=y.range[0],B.loc=lfe(B.range,this.ast))):y=B=this.convertChild(e.name,t),e.type&&(y.typeAnnotation=this.convertTypeAnnotation(e.type,e),this.fixParentLocation(y,y.typeAnnotation.range)),e.questionToken&&(e.questionToken.end>y.range[1]&&(y.range[1]=e.questionToken.end,y.loc.end=FCt(y.range[1],this.ast)),y.optional=!0),JU(e)?this.createNode(e,{type:Ui.TSParameterProperty,accessibility:ofe(e),decorators:[],override:cC(Tn.OverrideKeyword,e),parameter:B,readonly:cC(Tn.ReadonlyKeyword,e),static:cC(Tn.StaticKeyword,e)}):B}case Tn.ClassDeclaration:!e.name&&(!cC(Bp.ExportKeyword,e)||!cC(Bp.DefaultKeyword,e))&&zu(this,Gu,VT).call(this,e,"A class declaration without the 'default' modifier must have a name.");case Tn.ClassExpression:{let y=e.heritageClauses??[],B=e.kind===Tn.ClassDeclaration?Ui.ClassDeclaration:Ui.ClassExpression,v,G;for(let O of y){let{token:X,types:U}=O;U.length===0&&zu(this,Gu,VT).call(this,O,`'${ay(X)}' list cannot be empty.`),X===Tn.ExtendsKeyword?(v&&zu(this,Gu,VT).call(this,O,"'extends' clause already seen."),G&&zu(this,Gu,VT).call(this,O,"'extends' clause must precede 'implements' clause."),U.length>1&&zu(this,Gu,VT).call(this,U[1],"Classes can only extend a single class."),v??(v=O)):X===Tn.ImplementsKeyword&&(G&&zu(this,Gu,VT).call(this,O,"'implements' clause already seen."),G??(G=O))}let T=this.createNode(e,{type:B,abstract:cC(Tn.AbstractKeyword,e),body:this.createNode(e,{type:Ui.ClassBody,range:[e.members.pos-1,e.end],body:e.members.filter(dAa).map(O=>this.convertChild(O))}),declare:cC(Tn.DeclareKeyword,e),decorators:((o=gSe(e))==null?void 0:o.map(O=>this.convertChild(O)))??[],id:this.convertChild(e.name),implements:G?.types.map(O=>this.convertChild(O))??[],superClass:v!=null&&v.types[0]?this.convertChild(v.types[0].expression):null,superTypeArguments:void 0,typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return(g=v?.types[0])!=null&&g.typeArguments&&(T.superTypeArguments=this.convertTypeArgumentsToTypeParameterInstantiation(v.types[0].typeArguments,v.types[0])),this.fixExports(e,T)}case Tn.ModuleBlock:return this.createNode(e,{type:Ui.TSModuleBlock,body:this.convertBodyExpressions(e.statements,e)});case Tn.ImportDeclaration:{this.assertModuleSpecifier(e,!1);let y=this.createNode(e,zu(this,Gu,ASe).call(this,{type:Ui.ImportDeclaration,attributes:this.convertImportAttributes(e.attributes??e.assertClause),importKind:"value",source:this.convertChild(e.moduleSpecifier),specifiers:[]},"assertions","attributes",!0));if(e.importClause&&(e.importClause.isTypeOnly&&(y.importKind="type"),e.importClause.name&&y.specifiers.push(this.convertChild(e.importClause)),e.importClause.namedBindings))switch(e.importClause.namedBindings.kind){case Tn.NamespaceImport:y.specifiers.push(this.convertChild(e.importClause.namedBindings));break;case Tn.NamedImports:y.specifiers.push(...e.importClause.namedBindings.elements.map(B=>this.convertChild(B)));break}return y}case Tn.NamespaceImport:return this.createNode(e,{type:Ui.ImportNamespaceSpecifier,local:this.convertChild(e.name)});case Tn.ImportSpecifier:return this.createNode(e,{type:Ui.ImportSpecifier,imported:this.convertChild(e.propertyName??e.name),importKind:e.isTypeOnly?"type":"value",local:this.convertChild(e.name)});case Tn.ImportClause:{let y=this.convertChild(e.name);return this.createNode(e,{type:Ui.ImportDefaultSpecifier,range:y.range,local:y})}case Tn.ExportDeclaration:return((p=e.exportClause)==null?void 0:p.kind)===Tn.NamedExports?(this.assertModuleSpecifier(e,!0),this.createNode(e,zu(this,Gu,ASe).call(this,{type:Ui.ExportNamedDeclaration,attributes:this.convertImportAttributes(e.attributes??e.assertClause),declaration:null,exportKind:e.isTypeOnly?"type":"value",source:this.convertChild(e.moduleSpecifier),specifiers:e.exportClause.elements.map(y=>this.convertChild(y,e))},"assertions","attributes",!0))):(this.assertModuleSpecifier(e,!1),this.createNode(e,zu(this,Gu,ASe).call(this,{type:Ui.ExportAllDeclaration,attributes:this.convertImportAttributes(e.attributes??e.assertClause),exported:((f=e.exportClause)==null?void 0:f.kind)===Tn.NamespaceExport?this.convertChild(e.exportClause.name):null,exportKind:e.isTypeOnly?"type":"value",source:this.convertChild(e.moduleSpecifier)},"assertions","attributes",!0)));case Tn.ExportSpecifier:{let y=e.propertyName??e.name;return y.kind===Tn.StringLiteral&&t.kind===Tn.ExportDeclaration&&((m=t.moduleSpecifier)==null?void 0:m.kind)!==Tn.StringLiteral&&zu(this,Gu,Kp).call(this,y,"A string literal cannot be used as a local exported binding without `from`."),this.createNode(e,{type:Ui.ExportSpecifier,exported:this.convertChild(e.name),exportKind:e.isTypeOnly?"type":"value",local:this.convertChild(y)})}case Tn.ExportAssignment:return e.isExportEquals?this.createNode(e,{type:Ui.TSExportAssignment,expression:this.convertChild(e.expression)}):this.createNode(e,{type:Ui.ExportDefaultDeclaration,declaration:this.convertChild(e.expression),exportKind:"value"});case Tn.PrefixUnaryExpression:case Tn.PostfixUnaryExpression:{let y=xse(e.operator);return y==="++"||y==="--"?(bdr(e.operand)||zu(this,Gu,VT).call(this,e.operand,"Invalid left-hand side expression in unary operation"),this.createNode(e,{type:Ui.UpdateExpression,argument:this.convertChild(e.operand),operator:y,prefix:e.kind===Tn.PrefixUnaryExpression})):this.createNode(e,{type:Ui.UnaryExpression,argument:this.convertChild(e.operand),operator:y,prefix:e.kind===Tn.PrefixUnaryExpression})}case Tn.DeleteExpression:return this.createNode(e,{type:Ui.UnaryExpression,argument:this.convertChild(e.expression),operator:"delete",prefix:!0});case Tn.VoidExpression:return this.createNode(e,{type:Ui.UnaryExpression,argument:this.convertChild(e.expression),operator:"void",prefix:!0});case Tn.TypeOfExpression:return this.createNode(e,{type:Ui.UnaryExpression,argument:this.convertChild(e.expression),operator:"typeof",prefix:!0});case Tn.TypeOperator:return this.createNode(e,{type:Ui.TSTypeOperator,operator:xse(e.operator),typeAnnotation:this.convertChild(e.type)});case Tn.BinaryExpression:{if(fAa(e.operatorToken)){let B=this.createNode(e,{type:Ui.SequenceExpression,expressions:[]}),v=this.convertChild(e.left);return v.type===Ui.SequenceExpression&&e.left.kind!==Tn.ParenthesizedExpression?B.expressions.push(...v.expressions):B.expressions.push(v),B.expressions.push(this.convertChild(e.right)),B}let y=mAa(e.operatorToken);return this.allowPattern&&y.type===Ui.AssignmentExpression?this.createNode(e,{type:Ui.AssignmentPattern,decorators:[],left:this.convertPattern(e.left,e),optional:!1,right:this.convertChild(e.right),typeAnnotation:void 0}):this.createNode(e,{...y,left:this.converter(e.left,e,y.type===Ui.AssignmentExpression),right:this.convertChild(e.right)})}case Tn.PropertyAccessExpression:{let y=this.convertChild(e.expression),B=this.convertChild(e.name),v=this.createNode(e,{type:Ui.MemberExpression,computed:!1,object:y,optional:e.questionDotToken!=null,property:B});return this.convertChainExpression(v,e)}case Tn.ElementAccessExpression:{let y=this.convertChild(e.expression),B=this.convertChild(e.argumentExpression),v=this.createNode(e,{type:Ui.MemberExpression,computed:!0,object:y,optional:e.questionDotToken!=null,property:B});return this.convertChainExpression(v,e)}case Tn.CallExpression:{if(e.expression.kind===Tn.ImportKeyword)return e.arguments.length!==1&&e.arguments.length!==2&&zu(this,Gu,VT).call(this,e.arguments[2]??e,"Dynamic import requires exactly one or two arguments."),this.createNode(e,zu(this,Gu,ASe).call(this,{type:Ui.ImportExpression,options:e.arguments[1]?this.convertChild(e.arguments[1]):null,source:this.convertChild(e.arguments[0])},"attributes","options",!0));let y=this.convertChild(e.expression),B=e.arguments.map(T=>this.convertChild(T)),v=e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e),G=this.createNode(e,{type:Ui.CallExpression,arguments:B,callee:y,optional:e.questionDotToken!=null,typeArguments:v});return this.convertChainExpression(G,e)}case Tn.NewExpression:{let y=e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e);return this.createNode(e,{type:Ui.NewExpression,arguments:e.arguments?e.arguments.map(B=>this.convertChild(B)):[],callee:this.convertChild(e.expression),typeArguments:y})}case Tn.ConditionalExpression:return this.createNode(e,{type:Ui.ConditionalExpression,alternate:this.convertChild(e.whenFalse),consequent:this.convertChild(e.whenTrue),test:this.convertChild(e.condition)});case Tn.MetaProperty:return this.createNode(e,{type:Ui.MetaProperty,meta:this.createNode(e.getFirstToken(),{type:Ui.Identifier,decorators:[],name:xse(e.keywordToken),optional:!1,typeAnnotation:void 0}),property:this.convertChild(e.name)});case Tn.Decorator:return this.createNode(e,{type:Ui.Decorator,expression:this.convertChild(e.expression)});case Tn.StringLiteral:return this.createNode(e,{type:Ui.Literal,raw:e.getText(),value:t.kind===Tn.JsxAttribute?Gii(e.text):e.text});case Tn.NumericLiteral:return this.createNode(e,{type:Ui.Literal,raw:e.getText(),value:Number(e.text)});case Tn.BigIntLiteral:{let y=sYe(e,this.ast),B=this.ast.text.slice(y[0],y[1]),v=dSe(!1,B.slice(0,-1),"_",""),G=typeof BigInt<"u"?BigInt(v):null;return this.createNode(e,{type:Ui.Literal,range:y,bigint:G==null?v:String(G),raw:B,value:G})}case Tn.RegularExpressionLiteral:{let y=e.text.slice(1,e.text.lastIndexOf("/")),B=e.text.slice(e.text.lastIndexOf("/")+1),v=null;try{v=new RegExp(y,B)}catch{}return this.createNode(e,{type:Ui.Literal,raw:e.text,regex:{flags:B,pattern:y},value:v})}case Tn.TrueKeyword:return this.createNode(e,{type:Ui.Literal,raw:"true",value:!0});case Tn.FalseKeyword:return this.createNode(e,{type:Ui.Literal,raw:"false",value:!1});case Tn.NullKeyword:return this.createNode(e,{type:Ui.Literal,raw:"null",value:null});case Tn.EmptyStatement:return this.createNode(e,{type:Ui.EmptyStatement});case Tn.DebuggerStatement:return this.createNode(e,{type:Ui.DebuggerStatement});case Tn.JsxElement:return this.createNode(e,{type:Ui.JSXElement,children:e.children.map(y=>this.convertChild(y)),closingElement:this.convertChild(e.closingElement),openingElement:this.convertChild(e.openingElement)});case Tn.JsxFragment:return this.createNode(e,{type:Ui.JSXFragment,children:e.children.map(y=>this.convertChild(y)),closingFragment:this.convertChild(e.closingFragment),openingFragment:this.convertChild(e.openingFragment)});case Tn.JsxSelfClosingElement:return this.createNode(e,{type:Ui.JSXElement,children:[],closingElement:null,openingElement:this.createNode(e,{type:Ui.JSXOpeningElement,range:sYe(e,this.ast),attributes:e.attributes.properties.map(y=>this.convertChild(y)),name:this.convertJSXTagName(e.tagName,e),selfClosing:!0,typeArguments:e.typeArguments?this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e):void 0})});case Tn.JsxOpeningElement:return this.createNode(e,{type:Ui.JSXOpeningElement,attributes:e.attributes.properties.map(y=>this.convertChild(y)),name:this.convertJSXTagName(e.tagName,e),selfClosing:!1,typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)});case Tn.JsxClosingElement:return this.createNode(e,{type:Ui.JSXClosingElement,name:this.convertJSXTagName(e.tagName,e)});case Tn.JsxOpeningFragment:return this.createNode(e,{type:Ui.JSXOpeningFragment});case Tn.JsxClosingFragment:return this.createNode(e,{type:Ui.JSXClosingFragment});case Tn.JsxExpression:{let y=e.expression?this.convertChild(e.expression):this.createNode(e,{type:Ui.JSXEmptyExpression,range:[e.getStart(this.ast)+1,e.getEnd()-1]});return e.dotDotDotToken?this.createNode(e,{type:Ui.JSXSpreadChild,expression:y}):this.createNode(e,{type:Ui.JSXExpressionContainer,expression:y})}case Tn.JsxAttribute:return this.createNode(e,{type:Ui.JSXAttribute,name:this.convertJSXNamespaceOrIdentifier(e.name),value:this.convertChild(e.initializer)});case Tn.JsxText:{let y=e.getFullStart(),B=e.getEnd(),v=this.ast.text.slice(y,B);return this.createNode(e,{type:Ui.JSXText,range:[y,B],raw:v,value:Gii(v)})}case Tn.JsxSpreadAttribute:return this.createNode(e,{type:Ui.JSXSpreadAttribute,argument:this.convertChild(e.expression)});case Tn.QualifiedName:return this.createNode(e,{type:Ui.TSQualifiedName,left:this.convertChild(e.left),right:this.convertChild(e.right)});case Tn.TypeReference:return this.createNode(e,{type:Ui.TSTypeReference,typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e),typeName:this.convertChild(e.typeName)});case Tn.TypeParameter:return this.createNode(e,{type:Ui.TSTypeParameter,const:cC(Tn.ConstKeyword,e),constraint:e.constraint&&this.convertChild(e.constraint),default:e.default?this.convertChild(e.default):void 0,in:cC(Tn.InKeyword,e),name:this.convertChild(e.name),out:cC(Tn.OutKeyword,e)});case Tn.ThisType:return this.createNode(e,{type:Ui.TSThisType});case Tn.AnyKeyword:case Tn.BigIntKeyword:case Tn.BooleanKeyword:case Tn.NeverKeyword:case Tn.NumberKeyword:case Tn.ObjectKeyword:case Tn.StringKeyword:case Tn.SymbolKeyword:case Tn.UnknownKeyword:case Tn.VoidKeyword:case Tn.UndefinedKeyword:case Tn.IntrinsicKeyword:return this.createNode(e,{type:Ui[`TS${Tn[e.kind]}`]});case Tn.NonNullExpression:{let y=this.createNode(e,{type:Ui.TSNonNullExpression,expression:this.convertChild(e.expression)});return this.convertChainExpression(y,e)}case Tn.TypeLiteral:return this.createNode(e,{type:Ui.TSTypeLiteral,members:e.members.map(y=>this.convertChild(y))});case Tn.ArrayType:return this.createNode(e,{type:Ui.TSArrayType,elementType:this.convertChild(e.elementType)});case Tn.IndexedAccessType:return this.createNode(e,{type:Ui.TSIndexedAccessType,indexType:this.convertChild(e.indexType),objectType:this.convertChild(e.objectType)});case Tn.ConditionalType:return this.createNode(e,{type:Ui.TSConditionalType,checkType:this.convertChild(e.checkType),extendsType:this.convertChild(e.extendsType),falseType:this.convertChild(e.falseType),trueType:this.convertChild(e.trueType)});case Tn.TypeQuery:return this.createNode(e,{type:Ui.TSTypeQuery,exprName:this.convertChild(e.exprName),typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)});case Tn.MappedType:return e.members&&e.members.length>0&&zu(this,Gu,VT).call(this,e.members[0],"A mapped type may not declare properties or methods."),this.createNode(e,zu(this,Gu,ZAr).call(this,{type:Ui.TSMappedType,constraint:this.convertChild(e.typeParameter.constraint),key:this.convertChild(e.typeParameter.name),nameType:this.convertChild(e.nameType)??null,optional:e.questionToken&&(e.questionToken.kind===Tn.QuestionToken||xse(e.questionToken.kind)),readonly:e.readonlyToken&&(e.readonlyToken.kind===Tn.ReadonlyKeyword||xse(e.readonlyToken.kind)),typeAnnotation:e.type&&this.convertChild(e.type)},"typeParameter","'constraint' and 'key'",this.convertChild(e.typeParameter)));case Tn.ParenthesizedExpression:return this.convertChild(e.expression,t);case Tn.TypeAliasDeclaration:{let y=this.createNode(e,{type:Ui.TSTypeAliasDeclaration,declare:cC(Tn.DeclareKeyword,e),id:this.convertChild(e.name),typeAnnotation:this.convertChild(e.type),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return this.fixExports(e,y)}case Tn.MethodSignature:return this.convertMethodSignature(e);case Tn.PropertySignature:{let{initializer:y}=e;return y&&zu(this,Gu,Kp).call(this,y,"A property signature cannot have an initializer."),this.createNode(e,{type:Ui.TSPropertySignature,accessibility:ofe(e),computed:oSe(e.name),key:this.convertChild(e.name),optional:Fii(e),readonly:cC(Tn.ReadonlyKeyword,e),static:cC(Tn.StaticKeyword,e),typeAnnotation:e.type&&this.convertTypeAnnotation(e.type,e)})}case Tn.IndexSignature:return this.createNode(e,{type:Ui.TSIndexSignature,accessibility:ofe(e),parameters:e.parameters.map(y=>this.convertChild(y)),readonly:cC(Tn.ReadonlyKeyword,e),static:cC(Tn.StaticKeyword,e),typeAnnotation:e.type&&this.convertTypeAnnotation(e.type,e)});case Tn.ConstructorType:return this.createNode(e,{type:Ui.TSConstructorType,abstract:cC(Tn.AbstractKeyword,e),params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});case Tn.FunctionType:{let{modifiers:y}=e;y&&zu(this,Gu,Kp).call(this,y[0],"A function type cannot have modifiers.")}case Tn.ConstructSignature:case Tn.CallSignature:{let y=e.kind===Tn.ConstructSignature?Ui.TSConstructSignatureDeclaration:e.kind===Tn.CallSignature?Ui.TSCallSignatureDeclaration:Ui.TSFunctionType;return this.createNode(e,{type:y,params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)})}case Tn.ExpressionWithTypeArguments:{let y=t.kind,B=y===Tn.InterfaceDeclaration?Ui.TSInterfaceHeritage:y===Tn.HeritageClause?Ui.TSClassImplements:Ui.TSInstantiationExpression;return this.createNode(e,{type:B,expression:this.convertChild(e.expression),typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)})}case Tn.InterfaceDeclaration:{let y=e.heritageClauses??[],B=[];for(let G of y){G.token!==Tn.ExtendsKeyword&&zu(this,Gu,Kp).call(this,G,G.token===Tn.ImplementsKeyword?"Interface declaration cannot have 'implements' clause.":"Unexpected token.");for(let T of G.types)B.push(this.convertChild(T,e))}let v=this.createNode(e,{type:Ui.TSInterfaceDeclaration,body:this.createNode(e,{type:Ui.TSInterfaceBody,range:[e.members.pos-1,e.end],body:e.members.map(G=>this.convertChild(G))}),declare:cC(Tn.DeclareKeyword,e),extends:B,id:this.convertChild(e.name),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return this.fixExports(e,v)}case Tn.TypePredicate:{let y=this.createNode(e,{type:Ui.TSTypePredicate,asserts:e.assertsModifier!=null,parameterName:this.convertChild(e.parameterName),typeAnnotation:null});return e.type&&(y.typeAnnotation=this.convertTypeAnnotation(e.type,e),y.typeAnnotation.loc=y.typeAnnotation.typeAnnotation.loc,y.typeAnnotation.range=y.typeAnnotation.typeAnnotation.range),y}case Tn.ImportType:{let y=sYe(e,this.ast);if(e.isTypeOf){let v=sSe(e.getFirstToken(),e,this.ast);y[0]=v.getStart(this.ast)}let B=this.createNode(e,{type:Ui.TSImportType,range:y,argument:this.convertChild(e.argument),attributes:this.convertImportAttributes(e.attributes),qualifier:this.convertChild(e.qualifier),typeArguments:e.typeArguments?this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e):null});return e.isTypeOf?this.createNode(e,{type:Ui.TSTypeQuery,exprName:B,typeArguments:void 0}):B}case Tn.EnumDeclaration:{let y=e.members.map(v=>this.convertChild(v)),B=this.createNode(e,zu(this,Gu,ZAr).call(this,{type:Ui.TSEnumDeclaration,body:this.createNode(e,{type:Ui.TSEnumBody,range:[e.members.pos-1,e.end],members:y}),const:cC(Tn.ConstKeyword,e),declare:cC(Tn.DeclareKeyword,e),id:this.convertChild(e.name)},"members","'body.members'",e.members.map(v=>this.convertChild(v))));return this.fixExports(e,B)}case Tn.EnumMember:return this.createNode(e,{type:Ui.TSEnumMember,computed:e.name.kind===Bp.ComputedPropertyName,id:this.convertChild(e.name),initializer:e.initializer&&this.convertChild(e.initializer)});case Tn.ModuleDeclaration:{let y=cC(Tn.DeclareKeyword,e),B=this.createNode(e,{type:Ui.TSModuleDeclaration,...(()=>{if(e.flags&qW.GlobalAugmentation){let G=this.convertChild(e.name),T=this.convertChild(e.body);return(T==null||T.type===Ui.TSModuleDeclaration)&&zu(this,Gu,VT).call(this,e.body??e,"Expected a valid module body"),G.type!==Ui.Identifier&&zu(this,Gu,VT).call(this,e.name,"global module augmentation must have an Identifier id"),{body:T,declare:!1,global:!1,id:G,kind:"global"}}if(!(e.flags&qW.Namespace)){let G=this.convertChild(e.body);return{kind:"module",...G!=null?{body:G}:{},declare:!1,global:!1,id:this.convertChild(e.name)}}e.body==null&&zu(this,Gu,VT).call(this,e,"Expected a module body"),e.name.kind!==Bp.Identifier&&zu(this,Gu,VT).call(this,e.name,"`namespace`s must have an Identifier id");let v=this.createNode(e.name,{type:Ui.Identifier,range:[e.name.getStart(this.ast),e.name.getEnd()],decorators:[],name:e.name.text,optional:!1,typeAnnotation:void 0});for(;e.body&&EYe(e.body)&&e.body.name;){e=e.body,y||(y=cC(Tn.DeclareKeyword,e));let G=e.name,T=this.createNode(G,{type:Ui.Identifier,range:[G.getStart(this.ast),G.getEnd()],decorators:[],name:G.text,optional:!1,typeAnnotation:void 0});v=this.createNode(G,{type:Ui.TSQualifiedName,range:[v.range[0],T.range[1]],left:v,right:T})}return{body:this.convertChild(e.body),declare:!1,global:!1,id:v,kind:"namespace"}})()});return B.declare=y,e.flags&qW.GlobalAugmentation&&(B.global=!0),this.fixExports(e,B)}case Tn.ParenthesizedType:return this.convertChild(e.type);case Tn.UnionType:return this.createNode(e,{type:Ui.TSUnionType,types:e.types.map(y=>this.convertChild(y))});case Tn.IntersectionType:return this.createNode(e,{type:Ui.TSIntersectionType,types:e.types.map(y=>this.convertChild(y))});case Tn.AsExpression:return this.createNode(e,{type:Ui.TSAsExpression,expression:this.convertChild(e.expression),typeAnnotation:this.convertChild(e.type)});case Tn.InferType:return this.createNode(e,{type:Ui.TSInferType,typeParameter:this.convertChild(e.typeParameter)});case Tn.LiteralType:return e.literal.kind===Tn.NullKeyword?this.createNode(e.literal,{type:Ui.TSNullKeyword}):this.createNode(e,{type:Ui.TSLiteralType,literal:this.convertChild(e.literal)});case Tn.TypeAssertionExpression:return this.createNode(e,{type:Ui.TSTypeAssertion,expression:this.convertChild(e.expression),typeAnnotation:this.convertChild(e.type)});case Tn.ImportEqualsDeclaration:return this.fixExports(e,this.createNode(e,{type:Ui.TSImportEqualsDeclaration,id:this.convertChild(e.name),importKind:e.isTypeOnly?"type":"value",moduleReference:this.convertChild(e.moduleReference)}));case Tn.ExternalModuleReference:return e.expression.kind!==Tn.StringLiteral&&zu(this,Gu,Kp).call(this,e.expression,"String literal expected."),this.createNode(e,{type:Ui.TSExternalModuleReference,expression:this.convertChild(e.expression)});case Tn.NamespaceExportDeclaration:return this.createNode(e,{type:Ui.TSNamespaceExportDeclaration,id:this.convertChild(e.name)});case Tn.AbstractKeyword:return this.createNode(e,{type:Ui.TSAbstractKeyword});case Tn.TupleType:{let y=e.elements.map(B=>this.convertChild(B));return this.createNode(e,{type:Ui.TSTupleType,elementTypes:y})}case Tn.NamedTupleMember:{let y=this.createNode(e,{type:Ui.TSNamedTupleMember,elementType:this.convertChild(e.type,e),label:this.convertChild(e.name,e),optional:e.questionToken!=null});return e.dotDotDotToken?(y.range[0]=y.label.range[0],y.loc.start=y.label.loc.start,this.createNode(e,{type:Ui.TSRestType,typeAnnotation:y})):y}case Tn.OptionalType:return this.createNode(e,{type:Ui.TSOptionalType,typeAnnotation:this.convertChild(e.type)});case Tn.RestType:return this.createNode(e,{type:Ui.TSRestType,typeAnnotation:this.convertChild(e.type)});case Tn.TemplateLiteralType:{let y=this.createNode(e,{type:Ui.TSTemplateLiteralType,quasis:[this.convertChild(e.head)],types:[]});return e.templateSpans.forEach(B=>{y.types.push(this.convertChild(B.type)),y.quasis.push(this.convertChild(B.literal))}),y}case Tn.ClassStaticBlockDeclaration:return this.createNode(e,{type:Ui.StaticBlock,body:this.convertBodyExpressions(e.body.statements,e)});case Tn.AssertEntry:case Tn.ImportAttribute:return this.createNode(e,{type:Ui.ImportAttribute,key:this.convertChild(e.name),value:this.convertChild(e.value)});case Tn.SatisfiesExpression:return this.createNode(e,{type:Ui.TSSatisfiesExpression,expression:this.convertChild(e.expression),typeAnnotation:this.convertChild(e.type)});default:return this.deeplyCopy(e)}}createNode(e,t){let r=t;return r.range??(r.range=sYe(e,this.ast)),r.loc??(r.loc=lfe(r.range,this.ast)),r&&this.options.shouldPreserveNodeMaps&&this.esTreeNodeToTSNodeMap.set(r,e),r}convertProgram(){return this.converter(this.ast)}deeplyCopy(e){e.kind===Bp.JSDocFunctionType&&zu(this,Gu,Kp).call(this,e,"JSDoc types can only be used inside documentation comments.");let t=`TS${Tn[e.kind]}`;if(this.options.errorOnUnknownASTType&&!Ui[t])throw new Error(`Unknown AST_NODE_TYPE: "${t}"`);let r=this.createNode(e,{type:t});"type"in e&&(r.typeAnnotation=e.type&&"kind"in e.type&&lca(e.type)?this.convertTypeAnnotation(e.type,e):null),"typeArguments"in e&&(r.typeArguments=e.typeArguments&&"pos"in e.typeArguments?this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e):null),"typeParameters"in e&&(r.typeParameters=e.typeParameters&&"pos"in e.typeParameters?this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters):null);let s=gSe(e);s!=null&&s.length&&(r.decorators=s.map(o=>this.convertChild(o)));let a=new Set(["_children","decorators","end","flags","heritageClauses","illegalDecorators","jsDoc","kind","locals","localSymbol","modifierFlagsCache","modifiers","nextContainer","parent","pos","symbol","transformFlags","type","typeArguments","typeParameters"]);return Object.entries(e).filter(([o])=>!a.has(o)).forEach(([o,g])=>{Array.isArray(g)?r[o]=g.map(p=>this.convertChild(p)):g&&typeof g=="object"&&g.kind?r[o]=this.convertChild(g):r[o]=g}),r}fixExports(e,t){let r=EYe(e)&&e.flags&qW.Namespace?WAa(e):JU(e);if(r?.[0].kind===Tn.ExportKeyword){this.registerTSNodeInNodeMap(e,t);let s=r[0],a=r[1],o=a?.kind===Tn.DefaultKeyword,g=o?sSe(a,this.ast,this.ast):sSe(s,this.ast,this.ast);if(t.range[0]=g.getStart(this.ast),t.loc=lfe(t.range,this.ast),o)return this.createNode(e,{type:Ui.ExportDefaultDeclaration,range:[s.getStart(this.ast),t.range[1]],declaration:t,exportKind:"value"});let p=t.type===Ui.TSInterfaceDeclaration||t.type===Ui.TSTypeAliasDeclaration,f="declare"in t&&t.declare;return this.createNode(e,zu(this,Gu,ASe).call(this,{type:Ui.ExportNamedDeclaration,range:[s.getStart(this.ast),t.range[1]],attributes:[],declaration:t,exportKind:p||f?"type":"value",source:null,specifiers:[]},"assertions","attributes",!0))}return t}getASTMaps(){return{esTreeNodeToTSNodeMap:this.esTreeNodeToTSNodeMap,tsNodeToESTreeNodeMap:this.tsNodeToESTreeNodeMap}}registerTSNodeInNodeMap(e,t){t&&this.options.shouldPreserveNodeMaps&&!this.tsNodeToESTreeNodeMap.has(e)&&this.tsNodeToESTreeNodeMap.set(e,t)}};Gu=new WeakSet,FAr=function(e,t){let r=t===Bp.ForInStatement?"for...in":"for...of";if(Yua(e)){e.declarations.length!==1&&zu(this,Gu,Kp).call(this,e,`Only a single variable declaration is allowed in a '${r}' statement.`);let s=e.declarations[0];s.initializer?zu(this,Gu,Kp).call(this,s,`The variable declaration of a '${r}' statement cannot have an initializer.`):s.type&&zu(this,Gu,Kp).call(this,s,`The variable declaration of a '${r}' statement cannot have a type annotation.`),t===Bp.ForInStatement&&e.flags&qW.Using&&zu(this,Gu,Kp).call(this,e,"The left-hand side of a 'for...in' statement cannot be a 'using' declaration.")}else!bdr(e)&&e.kind!==Bp.ObjectLiteralExpression&&e.kind!==Bp.ArrayLiteralExpression&&zu(this,Gu,Kp).call(this,e,`The left-hand side of a '${r}' statement must be a variable or a property access.`)},Joi=function(e){if(!this.options.allowInvalidAST){TAa(e)&&zu(this,Gu,Kp).call(this,e.illegalDecorators[0],"Decorators are not valid here.");for(let t of gSe(e,!0)??[])VAa(e)||(NAr(e)&&!Zii(e.body)?zu(this,Gu,Kp).call(this,t,"A decorator can only decorate a method implementation, not an overload."):zu(this,Gu,Kp).call(this,t,"Decorators are not valid here."));for(let t of JU(e,!0)??[]){if(t.kind!==Tn.ReadonlyKeyword&&((e.kind===Tn.PropertySignature||e.kind===Tn.MethodSignature)&&zu(this,Gu,Kp).call(this,t,`'${ay(t.kind)}' modifier cannot appear on a type member`),e.kind===Tn.IndexSignature&&(t.kind!==Tn.StaticKeyword||!CSe(e.parent))&&zu(this,Gu,Kp).call(this,t,`'${ay(t.kind)}' modifier cannot appear on an index signature`)),t.kind!==Tn.InKeyword&&t.kind!==Tn.OutKeyword&&t.kind!==Tn.ConstKeyword&&e.kind===Tn.TypeParameter&&zu(this,Gu,Kp).call(this,t,`'${ay(t.kind)}' modifier cannot appear on a type parameter`),(t.kind===Tn.InKeyword||t.kind===Tn.OutKeyword)&&(e.kind!==Tn.TypeParameter||!(Idr(e.parent)||CSe(e.parent)||moi(e.parent)))&&zu(this,Gu,Kp).call(this,t,`'${ay(t.kind)}' modifier can only appear on a type parameter of a class, interface or type alias`),t.kind===Tn.ReadonlyKeyword&&e.kind!==Tn.PropertyDeclaration&&e.kind!==Tn.PropertySignature&&e.kind!==Tn.IndexSignature&&e.kind!==Tn.Parameter&&zu(this,Gu,Kp).call(this,t,"'readonly' modifier can only appear on a property declaration or index signature."),t.kind===Tn.DeclareKeyword&&CSe(e.parent)&&!YCt(e)&&zu(this,Gu,Kp).call(this,t,`'${ay(t.kind)}' modifier cannot appear on class elements of this kind.`),t.kind===Tn.DeclareKeyword&&zCt(e)){let r=GAr(e.declarationList);(r==="using"||r==="await using")&&zu(this,Gu,Kp).call(this,t,`'declare' modifier cannot appear on a '${r}' declaration.`)}if(t.kind===Tn.AbstractKeyword&&e.kind!==Tn.ClassDeclaration&&e.kind!==Tn.ConstructorType&&e.kind!==Tn.MethodDeclaration&&e.kind!==Tn.PropertyDeclaration&&e.kind!==Tn.GetAccessor&&e.kind!==Tn.SetAccessor&&zu(this,Gu,Kp).call(this,t,`'${ay(t.kind)}' modifier can only appear on a class, method, or property declaration.`),(t.kind===Tn.StaticKeyword||t.kind===Tn.PublicKeyword||t.kind===Tn.ProtectedKeyword||t.kind===Tn.PrivateKeyword)&&(e.parent.kind===Tn.ModuleBlock||e.parent.kind===Tn.SourceFile)&&zu(this,Gu,Kp).call(this,t,`'${ay(t.kind)}' modifier cannot appear on a module or namespace element.`),t.kind===Tn.AccessorKeyword&&e.kind!==Tn.PropertyDeclaration&&zu(this,Gu,Kp).call(this,t,"'accessor' modifier can only appear on a property declaration."),t.kind===Tn.AsyncKeyword&&e.kind!==Tn.MethodDeclaration&&e.kind!==Tn.FunctionDeclaration&&e.kind!==Tn.FunctionExpression&&e.kind!==Tn.ArrowFunction&&zu(this,Gu,Kp).call(this,t,"'async' modifier cannot be used here."),e.kind===Tn.Parameter&&(t.kind===Tn.StaticKeyword||t.kind===Tn.ExportKeyword||t.kind===Tn.DeclareKeyword||t.kind===Tn.AsyncKeyword)&&zu(this,Gu,Kp).call(this,t,`'${ay(t.kind)}' modifier cannot appear on a parameter.`),t.kind===Tn.PublicKeyword||t.kind===Tn.ProtectedKeyword||t.kind===Tn.PrivateKeyword)for(let r of JU(e)??[])r!==t&&(r.kind===Tn.PublicKeyword||r.kind===Tn.ProtectedKeyword||r.kind===Tn.PrivateKeyword)&&zu(this,Gu,Kp).call(this,r,"Accessibility modifier already seen.");if(e.kind===Tn.Parameter&&(t.kind===Tn.PublicKeyword||t.kind===Tn.PrivateKeyword||t.kind===Tn.ProtectedKeyword||t.kind===Tn.ReadonlyKeyword||t.kind===Tn.OverrideKeyword)){let r=GAa(e);r.kind===Tn.Constructor&&Zii(r.body)||zu(this,Gu,Kp).call(this,t,"A parameter property is only allowed in a constructor implementation.")}}}},Kp=function(e,t){let r,s;throw typeof e=="number"?r=s=e:(r=e.getStart(this.ast),s=e.getEnd()),Hoi(t,this.ast,r,s)},VT=function(e,t){this.options.allowInvalidAST||zu(this,Gu,Kp).call(this,e,t)},ASe=function(e,t,r,s=!1){let a=s;return Object.defineProperty(e,t,{configurable:!0,get:this.options.suppressDeprecatedPropertyWarnings?()=>e[r]:()=>(a||((void 0)(`The '${t}' property is deprecated on ${e.type} nodes. Use '${r}' instead. See https://typescript-eslint.io/troubleshooting/faqs/general#the-key-property-is-deprecated-on-type-nodes-use-key-instead-warnings.`,"DeprecationWarning"),a=!0),e[r]),set(o){Object.defineProperty(e,t,{enumerable:!0,value:o,writable:!0})}}),e},ZAr=function(e,t,r,s){let a=!1;return Object.defineProperty(e,t,{configurable:!0,get:this.options.suppressDeprecatedPropertyWarnings?()=>s:()=>(a||((void 0)(`The '${t}' property is deprecated on ${e.type} nodes. Use ${r} instead. See https://typescript-eslint.io/troubleshooting/faqs/general#the-key-property-is-deprecated-on-type-nodes-use-key-instead-warnings.`,"DeprecationWarning"),a=!0),s),set(o){Object.defineProperty(e,t,{enumerable:!0,value:o,writable:!0})}}),e};function MAa(e,t,r=e.getSourceFile()){let s=[];for(;;){if(Fsi(e.kind))t(e);else{let a=e.getChildren(r);if(a.length===1){e=a[0];continue}for(let o=a.length-1;o>=0;--o)s.push(a[o])}if(s.length===0)break;e=s.pop()}}function QAa(e,t,r=e.getSourceFile()){let s=r.text,a=r.languageVariant!==csi.JSX;return MAa(e,g=>{if(g.pos!==g.end&&(g.kind!==Bp.JsxText&&haa(s,g.pos===0?(Ssi(s)??"").length:g.pos,o),a||YAa(g)))return _aa(s,g.end,o)},r);function o(g,p,f){t(s,{end:p,kind:f,pos:g})}}function YAa(e){switch(e.kind){case Bp.CloseBraceToken:return e.parent.kind!==Bp.JsxExpression||!fAr(e.parent.parent);case Bp.GreaterThanToken:switch(e.parent.kind){case Bp.JsxClosingElement:case Bp.JsxClosingFragment:return!fAr(e.parent.parent.parent);case Bp.JsxOpeningElement:return e.end!==e.parent.end;case Bp.JsxOpeningFragment:return!1;case Bp.JsxSelfClosingElement:return e.end!==e.parent.end||!fAr(e.parent.parent)}}return!0}function fAr(e){return e.kind===Bp.JsxElement||e.kind===Bp.JsxFragment}var[jhl,zhl]=poa.split(".").map(e=>Number.parseInt(e,10)),qhl=Gk.Intrinsic??Gk.Any|Gk.Unknown|Gk.String|Gk.Number|Gk.BigInt|Gk.Boolean|Gk.BooleanLiteral|Gk.ESSymbol|Gk.Void|Gk.Undefined|Gk.Null|Gk.Never|Gk.NonPrimitive;function HAa(e,t){let r=[];return QAa(e,(s,a)=>{let o=a.kind===Bp.SingleLineCommentTrivia?CR.Line:CR.Block,g=[a.pos,a.end],p=lfe(g,e),f=g[0]+2,m=a.kind===Bp.SingleLineCommentTrivia?g[1]-f:g[1]-f-2;r.push({type:o,loc:p,range:g,value:t.slice(f,f+m)})},e),r}var XAa=()=>{};function JAa(e,t,r){let{parseDiagnostics:s}=e;if(s.length)throw PAa(s[0]);let a=new OAa(e,{allowInvalidAST:t.allowInvalidAST,errorOnUnknownASTType:t.errorOnUnknownASTType,shouldPreserveNodeMaps:r,suppressDeprecatedPropertyWarnings:t.suppressDeprecatedPropertyWarnings}),o=a.convertProgram();return(!t.range||!t.loc)&&XAa(o,{enter:g=>{t.range||delete g.range,t.loc||delete g.loc}}),t.tokens&&(o.tokens=SAa(e)),t.comment&&(o.comments=HAa(e,t.codeFullText)),{astMaps:a.getASTMaps(),estree:o}}function Uoi(e){if(typeof e!="object"||e==null)return!1;let t=e;return t.kind===Bp.SourceFile&&typeof t.getFullText=="function"}var UAa=function(e){return e&&e.__esModule?e:{default:e}},KAa=UAa({extname:e=>"."+e.split(".").pop()});function jAa(e,t){switch(KAa.default.extname(e).toLowerCase()){case EM.Cjs:case EM.Js:case EM.Mjs:return Yz.JS;case EM.Cts:case EM.Mts:case EM.Ts:return Yz.TS;case EM.Json:return Yz.JSON;case EM.Jsx:return Yz.JSX;case EM.Tsx:return Yz.TSX;default:return t?Yz.TSX:Yz.TS}}var zAa={default:OAr},qAa=(0,zAa.default)("typescript-eslint:typescript-estree:create-program:createSourceFile");function $Aa(e){return qAa("Getting AST without type information in %s mode for: %s",e.jsx?"TSX":"TS",e.filePath),Uoi(e.code)?e.code:Gga(e.filePath,e.codeFullText,{jsDocParsingMode:e.jsDocParsingMode,languageVersion:JAr.Latest,setExternalModuleIndicator:e.setExternalModuleIndicator},!0,jAa(e.filePath,e.jsx))}var eda=()=>{},tda=e=>e,rda=class{},nda=()=>!1,ida=()=>{},sda=function(e){return e&&e.__esModule?e:{default:e}},LAr={default:OAr},oda=sda({extname:e=>"."+e.split(".").pop()}),ada=(0,LAr.default)("typescript-eslint:typescript-estree:parseSettings:createParseSettings"),Lii,Vii=null,Wii,Pii,Oii,Mii,oYe={ParseAll:(Wii=uYe)==null?void 0:Wii.ParseAll,ParseForTypeErrors:(Pii=uYe)==null?void 0:Pii.ParseForTypeErrors,ParseForTypeInfo:(Oii=uYe)==null?void 0:Oii.ParseForTypeInfo,ParseNone:(Mii=uYe)==null?void 0:Mii.ParseNone};function cda(e,t={}){var r;let s=lda(e),a=nda(t),o=typeof t.tsconfigRootDir=="string"?t.tsconfigRootDir:"/prettier-security-dirname-placeholder",g=typeof t.loggerFn=="function",p=tda(typeof t.filePath=="string"&&t.filePath!==""?t.filePath:uda(t.jsx),o),f=oda.default.extname(p).toLowerCase(),m=(()=>{switch(t.jsDocParsingMode){case"all":return oYe.ParseAll;case"none":return oYe.ParseNone;case"type-info":return oYe.ParseForTypeInfo;default:return oYe.ParseAll}})(),y={loc:t.loc===!0,range:t.range===!0,allowInvalidAST:t.allowInvalidAST===!0,code:e,codeFullText:s,comment:t.comment===!0,comments:[],debugLevel:t.debugLevel===!0?new Set(["typescript-eslint"]):Array.isArray(t.debugLevel)?new Set(t.debugLevel):new Set,errorOnTypeScriptSyntacticAndSemanticIssues:!1,errorOnUnknownASTType:t.errorOnUnknownASTType===!0,extraFileExtensions:Array.isArray(t.extraFileExtensions)&&t.extraFileExtensions.every(B=>typeof B=="string")?t.extraFileExtensions:[],filePath:p,jsDocParsingMode:m,jsx:t.jsx===!0,log:typeof t.loggerFn=="function"?t.loggerFn:t.loggerFn===!1?()=>{}:console.log,preserveNodeMaps:t.preserveNodeMaps!==!1,programs:Array.isArray(t.programs)?t.programs:null,projects:new Map,projectService:t.projectService||t.project&&t.projectService!==!1&&(void 0).env.TYPESCRIPT_ESLINT_PROJECT_SERVICE==="true"?Vii??(Vii=eda(t.projectService,m,o)):void 0,setExternalModuleIndicator:t.sourceType==="module"||t.sourceType==null&&f===EM.Mjs||t.sourceType==null&&f===EM.Mts?B=>{B.externalModuleIndicator=!0}:void 0,singleRun:a,suppressDeprecatedPropertyWarnings:t.suppressDeprecatedPropertyWarnings??!0,tokens:t.tokens===!0?[]:null,tsconfigMatchCache:Lii??(Lii=new rda(a?"Infinity":((r=t.cacheLifetime)==null?void 0:r.glob)??void 0)),tsconfigRootDir:o};if(y.debugLevel.size>0){let B=[];y.debugLevel.has("typescript-eslint")&&B.push("typescript-eslint:*"),(y.debugLevel.has("eslint")||LAr.default.enabled("eslint:*,-eslint:code-path"))&&B.push("eslint:*,-eslint:code-path"),LAr.default.enable(B.join(","))}if(Array.isArray(t.programs)){if(!t.programs.length)throw new Error("You have set parserOptions.programs to an empty array. This will cause all files to not be found in existing programs. Either provide one or more existing TypeScript Program instances in the array, or remove the parserOptions.programs setting.");ada("parserOptions.programs was provided, so parserOptions.project will be ignored.")}return!y.programs&&!y.projectService&&(y.projects=new Map),t.jsDocParsingMode==null&&y.projects.size===0&&y.programs==null&&y.projectService==null&&(y.jsDocParsingMode=oYe.ParseNone),ida(y,g),y}function lda(e){return Uoi(e)?e.getFullText(e):typeof e=="string"?e:String(e)}function uda(e){return e?"estree.tsx":"estree.ts"}var gda={default:OAr},$hl=(0,gda.default)("typescript-eslint:typescript-estree:parser");function Ada(e,t){let{ast:r}=dda(e,t,!1);return r}function dda(e,t,r){let s=cda(e,t);if(t!=null&&t.errorOnTypeScriptSyntacticAndSemanticIssues)throw new Error('"errorOnTypeScriptSyntacticAndSemanticIssues" is only supported for parseAndGenerateServices()');let a=$Aa(s),{astMaps:o,estree:g}=JAa(a,s,r);return{ast:g,esTreeNodeToTSNodeMap:o.esTreeNodeToTSNodeMap,tsNodeToESTreeNodeMap:o.tsNodeToESTreeNodeMap}}function pda(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var fda=pda;function Ida(e){let t=[];for(let r of e)try{return r()}catch(s){t.push(s)}throw Object.assign(new Error("All combinations failed"),{errors:t})}var Cda=Ida,mda=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},Qii=mda;function hda(e){return Array.isArray(e)&&e.length>0}var _da=hda;function HU(e){var t,r,s;let a=((t=e.range)==null?void 0:t[0])??e.start,o=(s=((r=e.declaration)==null?void 0:r.decorators)??e.decorators)==null?void 0:s[0];return o?Math.min(HU(o),a):a}function ufe(e){var t;return((t=e.range)==null?void 0:t[1])??e.end}function yda(e){let t=new Set(e);return r=>t.has(r?.type)}var bda=yda,Eda=bda(["Block","CommentBlock","MultiLine"]),VAr=Eda;function Bda(e){let t=`*${e.value}*`.split(` -`);return t.length>1&&t.every(r=>r.trimStart()[0]==="*")}var Yii=Bda;function vda(e){return VAr(e)&&e.value[0]==="*"&&/@(?:type|satisfies)\b/u.test(e.value)}var Sda=vda,aYe=null;function CYe(e){if(aYe!==null&&typeof aYe.property){let t=aYe;return aYe=CYe.prototype=null,t}return aYe=CYe.prototype=e??Object.create(null),new CYe}var wda=10;for(let e=0;e<=wda;e++)CYe();function Tda(e){return CYe(e)}function Nda(e,t="type"){Tda(e);function r(s){let a=s[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:s});return o}return r}var Rda=Nda,Dda={ArrayExpression:["elements"],AssignmentExpression:["left","right"],BinaryExpression:["left","right"],InterpreterDirective:[],Directive:["value"],DirectiveLiteral:[],BlockStatement:["directives","body"],BreakStatement:["label"],CallExpression:["callee","arguments","typeParameters","typeArguments"],CatchClause:["param","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExpressionStatement:["expression"],File:["program"],ForInStatement:["left","right","body"],ForStatement:["init","test","update","body"],FunctionDeclaration:["id","typeParameters","params","predicate","returnType","body"],FunctionExpression:["id","typeParameters","params","returnType","body"],Identifier:["typeAnnotation","decorators"],IfStatement:["test","consequent","alternate"],LabeledStatement:["label","body"],StringLiteral:[],NumericLiteral:[],NullLiteral:[],BooleanLiteral:[],RegExpLiteral:[],LogicalExpression:["left","right"],MemberExpression:["object","property"],NewExpression:["callee","arguments","typeParameters","typeArguments"],Program:["directives","body"],ObjectExpression:["properties"],ObjectMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectProperty:["key","value","decorators"],RestElement:["argument","typeAnnotation","decorators"],ReturnStatement:["argument"],SequenceExpression:["expressions"],ParenthesizedExpression:["expression"],SwitchCase:["test","consequent"],SwitchStatement:["discriminant","cases"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],AssignmentPattern:["left","right","decorators","typeAnnotation"],ArrayPattern:["elements","typeAnnotation","decorators"],ArrowFunctionExpression:["typeParameters","params","predicate","returnType","body"],ClassBody:["body"],ClassExpression:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ClassDeclaration:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ExportAllDeclaration:["source","attributes","exported"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source","attributes"],ExportSpecifier:["local","exported"],ForOfStatement:["left","right","body"],ImportDeclaration:["specifiers","source","attributes"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],ImportExpression:["source","options"],MetaProperty:["meta","property"],ClassMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectPattern:["properties","typeAnnotation","decorators"],SpreadElement:["argument"],Super:[],TaggedTemplateExpression:["tag","typeParameters","quasi","typeArguments"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],YieldExpression:["argument"],AwaitExpression:["argument"],BigIntLiteral:[],ExportNamespaceSpecifier:["exported"],OptionalMemberExpression:["object","property"],OptionalCallExpression:["callee","arguments","typeParameters","typeArguments"],ClassProperty:["decorators","variance","key","typeAnnotation","value"],ClassAccessorProperty:["decorators","key","typeAnnotation","value"],ClassPrivateProperty:["decorators","variance","key","typeAnnotation","value"],ClassPrivateMethod:["decorators","key","typeParameters","params","returnType","body"],PrivateName:["id"],StaticBlock:["body"],AnyTypeAnnotation:[],ArrayTypeAnnotation:["elementType"],BooleanTypeAnnotation:[],BooleanLiteralTypeAnnotation:[],NullLiteralTypeAnnotation:[],ClassImplements:["id","typeParameters"],DeclareClass:["id","typeParameters","extends","mixins","implements","body"],DeclareFunction:["id","predicate"],DeclareInterface:["id","typeParameters","extends","body"],DeclareModule:["id","body"],DeclareModuleExports:["typeAnnotation"],DeclareTypeAlias:["id","typeParameters","right"],DeclareOpaqueType:["id","typeParameters","supertype"],DeclareVariable:["id"],DeclareExportDeclaration:["declaration","specifiers","source","attributes"],DeclareExportAllDeclaration:["source","attributes"],DeclaredPredicate:["value"],ExistsTypeAnnotation:[],FunctionTypeAnnotation:["typeParameters","this","params","rest","returnType"],FunctionTypeParam:["name","typeAnnotation"],GenericTypeAnnotation:["id","typeParameters"],InferredPredicate:[],InterfaceExtends:["id","typeParameters"],InterfaceDeclaration:["id","typeParameters","extends","body"],InterfaceTypeAnnotation:["extends","body"],IntersectionTypeAnnotation:["types"],MixedTypeAnnotation:[],EmptyTypeAnnotation:[],NullableTypeAnnotation:["typeAnnotation"],NumberLiteralTypeAnnotation:[],NumberTypeAnnotation:[],ObjectTypeAnnotation:["properties","indexers","callProperties","internalSlots"],ObjectTypeInternalSlot:["id","value"],ObjectTypeCallProperty:["value"],ObjectTypeIndexer:["variance","id","key","value"],ObjectTypeProperty:["key","value","variance"],ObjectTypeSpreadProperty:["argument"],OpaqueType:["id","typeParameters","supertype","impltype"],QualifiedTypeIdentifier:["qualification","id"],StringLiteralTypeAnnotation:[],StringTypeAnnotation:[],SymbolTypeAnnotation:[],ThisTypeAnnotation:[],TupleTypeAnnotation:["types","elementTypes"],TypeofTypeAnnotation:["argument","typeArguments"],TypeAlias:["id","typeParameters","right"],TypeAnnotation:["typeAnnotation"],TypeCastExpression:["expression","typeAnnotation"],TypeParameter:["bound","default","variance"],TypeParameterDeclaration:["params"],TypeParameterInstantiation:["params"],UnionTypeAnnotation:["types"],Variance:[],VoidTypeAnnotation:[],EnumDeclaration:["id","body"],EnumBooleanBody:["members"],EnumNumberBody:["members"],EnumStringBody:["members"],EnumSymbolBody:["members"],EnumBooleanMember:["id","init"],EnumNumberMember:["id","init"],EnumStringMember:["id","init"],EnumDefaultedMember:["id"],IndexedAccessType:["objectType","indexType"],OptionalIndexedAccessType:["objectType","indexType"],JSXAttribute:["name","value"],JSXClosingElement:["name"],JSXElement:["openingElement","children","closingElement"],JSXEmptyExpression:[],JSXExpressionContainer:["expression"],JSXSpreadChild:["expression"],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],JSXOpeningElement:["name","typeParameters","typeArguments","attributes"],JSXSpreadAttribute:["argument"],JSXText:[],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningFragment:[],JSXClosingFragment:[],Noop:[],Placeholder:[],V8IntrinsicIdentifier:[],ArgumentPlaceholder:[],BindExpression:["object","callee"],ImportAttribute:["key","value"],Decorator:["expression"],DoExpression:["body"],ExportDefaultSpecifier:["exported"],RecordExpression:["properties"],TupleExpression:["elements"],ModuleExpression:["body"],TopicReference:[],PipelineTopicExpression:["expression"],PipelineBareFunction:["callee"],PipelinePrimaryTopicReference:[],TSParameterProperty:["parameter","decorators"],TSDeclareFunction:["id","typeParameters","params","returnType","body"],TSDeclareMethod:["decorators","key","typeParameters","params","returnType"],TSQualifiedName:["left","right"],TSCallSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSPropertySignature:["key","typeAnnotation"],TSMethodSignature:["key","typeParameters","parameters","typeAnnotation","params","returnType"],TSIndexSignature:["parameters","typeAnnotation"],TSAnyKeyword:[],TSBooleanKeyword:[],TSBigIntKeyword:[],TSIntrinsicKeyword:[],TSNeverKeyword:[],TSNullKeyword:[],TSNumberKeyword:[],TSObjectKeyword:[],TSStringKeyword:[],TSSymbolKeyword:[],TSUndefinedKeyword:[],TSUnknownKeyword:[],TSVoidKeyword:[],TSThisType:[],TSFunctionType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructorType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSTypeReference:["typeName","typeParameters","typeArguments"],TSTypePredicate:["parameterName","typeAnnotation"],TSTypeQuery:["exprName","typeParameters","typeArguments"],TSTypeLiteral:["members"],TSArrayType:["elementType"],TSTupleType:["elementTypes"],TSOptionalType:["typeAnnotation"],TSRestType:["typeAnnotation"],TSNamedTupleMember:["label","elementType"],TSUnionType:["types"],TSIntersectionType:["types"],TSConditionalType:["checkType","extendsType","trueType","falseType"],TSInferType:["typeParameter"],TSParenthesizedType:["typeAnnotation"],TSTypeOperator:["typeAnnotation"],TSIndexedAccessType:["objectType","indexType"],TSMappedType:["typeParameter","nameType","typeAnnotation"],TSTemplateLiteralType:["quasis","types"],TSLiteralType:["literal"],TSExpressionWithTypeArguments:["expression","typeParameters"],TSInterfaceDeclaration:["id","typeParameters","extends","body"],TSInterfaceBody:["body"],TSTypeAliasDeclaration:["id","typeParameters","typeAnnotation"],TSInstantiationExpression:["expression","typeParameters","typeArguments"],TSAsExpression:["expression","typeAnnotation"],TSSatisfiesExpression:["expression","typeAnnotation"],TSTypeAssertion:["typeAnnotation","expression"],TSEnumBody:["members"],TSEnumDeclaration:["id","members"],TSEnumMember:["id","initializer"],TSModuleDeclaration:["id","body"],TSModuleBlock:["body"],TSImportType:["argument","options","qualifier","typeParameters","typeArguments"],TSImportEqualsDeclaration:["id","moduleReference"],TSExternalModuleReference:["expression"],TSNonNullExpression:["expression"],TSExportAssignment:["expression"],TSNamespaceExportDeclaration:["id"],TSTypeAnnotation:["typeAnnotation"],TSTypeParameterInstantiation:["params"],TSTypeParameterDeclaration:["params"],TSTypeParameter:["constraint","default","name"],ChainExpression:["expression"],ExperimentalRestProperty:["argument"],ExperimentalSpreadProperty:["argument"],Literal:[],MethodDefinition:["decorators","key","value"],PrivateIdentifier:[],Property:["key","value"],PropertyDefinition:["decorators","key","typeAnnotation","value","variance"],AccessorProperty:["decorators","key","typeAnnotation","value"],TSAbstractAccessorProperty:["decorators","key","typeAnnotation"],TSAbstractKeyword:[],TSAbstractMethodDefinition:["key","value"],TSAbstractPropertyDefinition:["decorators","key","typeAnnotation"],TSAsyncKeyword:[],TSClassImplements:["expression","typeArguments","typeParameters"],TSDeclareKeyword:[],TSEmptyBodyFunctionExpression:["id","typeParameters","params","returnType"],TSExportKeyword:[],TSInterfaceHeritage:["expression","typeArguments","typeParameters"],TSPrivateKeyword:[],TSProtectedKeyword:[],TSPublicKeyword:[],TSReadonlyKeyword:[],TSStaticKeyword:[],AsConstExpression:["expression"],AsExpression:["expression","typeAnnotation"],BigIntLiteralTypeAnnotation:[],BigIntTypeAnnotation:[],ComponentDeclaration:["id","params","body","typeParameters","rendersType"],ComponentParameter:["name","local"],ComponentTypeAnnotation:["params","rest","typeParameters","rendersType"],ComponentTypeParameter:["name","typeAnnotation"],ConditionalTypeAnnotation:["checkType","extendsType","trueType","falseType"],DeclareComponent:["id","params","rest","typeParameters","rendersType"],DeclareEnum:["id","body"],DeclareHook:["id"],DeclareNamespace:["id","body"],EnumBigIntBody:["members"],EnumBigIntMember:["id","init"],HookDeclaration:["id","params","body","typeParameters","returnType"],HookTypeAnnotation:["params","returnType","rest","typeParameters"],InferTypeAnnotation:["typeParameter"],KeyofTypeAnnotation:["argument"],ObjectTypeMappedTypeProperty:["keyTparam","propType","sourceType","variance"],QualifiedTypeofIdentifier:["qualification","id"],TupleTypeLabeledElement:["label","elementType","variance"],TupleTypeSpreadElement:["label","typeAnnotation"],TypeOperator:["typeAnnotation"],TypePredicate:["parameterName","typeAnnotation","asserts"],NGRoot:["node"],NGPipeExpression:["left","right","arguments"],NGChainedExpression:["expressions"],NGEmptyExpression:[],NGMicrosyntax:["body"],NGMicrosyntaxKey:[],NGMicrosyntaxExpression:["expression","alias"],NGMicrosyntaxKeyedExpression:["key","expression"],NGMicrosyntaxLet:["key","value"],NGMicrosyntaxAs:["key","alias"],JsExpressionRoot:["node"],JsonRoot:["node"],TSJSDocAllType:[],TSJSDocUnknownType:[],TSJSDocNullableType:["typeAnnotation"],TSJSDocNonNullableType:["typeAnnotation"],NeverTypeAnnotation:[],UndefinedTypeAnnotation:[],UnknownTypeAnnotation:[],SatisfiesExpression:["expression","typeAnnotation"]},xda=Rda(Dda),kda=xda;function WAr(e,t){if(!(e!==null&&typeof e=="object"))return e;if(Array.isArray(e)){for(let s=0;s{var g;(g=o.leadingComments)!=null&&g.some(Sda)&&a.add(HU(o))}),e=IAr(e,o=>{if(o.type==="ParenthesizedExpression"){let{expression:g}=o;if(g.type==="TypeCastExpression")return g.range=[...o.range],g;let p=HU(o);if(!a.has(p))return g.extra={...g.extra,parenthesized:!0},g}})}if(e=IAr(e,a=>{switch(a.type){case"LogicalExpression":if(Koi(a))return PAr(a);break;case"VariableDeclaration":{let o=Qii(!1,a.declarations,-1);o!=null&&o.init&&s[ufe(o)]!==";"&&(a.range=[HU(a),ufe(o)]);break}case"TSParenthesizedType":return a.typeAnnotation;case"TSTypeParameter":if(typeof a.name=="string"){let o=HU(a);a.name={type:"Identifier",name:a.name,range:[o,o+a.name.length]}}break;case"TopicReference":e.extra={...e.extra,__isUsingHackPipeline:!0};break;case"TSUnionType":case"TSIntersectionType":if(a.types.length===1)return a.types[0];break}}),_da(e.comments)){let a=Qii(!1,e.comments,-1);for(let o=e.comments.length-2;o>=0;o--){let g=e.comments[o];ufe(g)===HU(a)&&VAr(g)&&VAr(a)&&Yii(g)&&Yii(a)&&(e.comments.splice(o+1,1),g.value+="*//*"+a.value,g.range=[HU(g),ufe(a)]),a=g}}return e.type==="Program"&&(e.range=[0,s.length]),e}function Koi(e){return e.type==="LogicalExpression"&&e.right.type==="LogicalExpression"&&e.operator===e.right.operator}function PAr(e){return Koi(e)?PAr({type:"LogicalExpression",operator:e.operator,left:PAr({type:"LogicalExpression",operator:e.operator,left:e.left,right:e.right.left,range:[HU(e.left),ufe(e.right.left)]}),right:e.right.right,range:[HU(e),ufe(e)]}):e}var Fda=Gda,Zda=/\*\/$/,Lda=/^\/\*\*?/,Vda=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,Wda=/(^|\s+)\/\/([^\n\r]*)/g,Hii=/^(\r?\n)+/,Pda=/(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g,Xii=/(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g,Oda=/(\r?\n|^) *\* ?/g,Mda=[];function Qda(e){let t=e.match(Vda);return t?t[0].trimStart():""}function Yda(e){let t=` -`;e=dSe(!1,e.replace(Lda,"").replace(Zda,""),Oda,"$1");let r="";for(;r!==e;)r=e,e=dSe(!1,e,Pda,`${t}$1 $2${t}`);e=e.replace(Hii,"").trimEnd();let s=Object.create(null),a=dSe(!1,e,Xii,"").replace(Hii,"").trimEnd(),o;for(;o=Xii.exec(e);){let g=dSe(!1,o[2],Wda,"");if(typeof s[o[1]]=="string"||Array.isArray(s[o[1]])){let p=s[o[1]];s[o[1]]=[...Mda,...Array.isArray(p)?p:[p],g]}else s[o[1]]=g}return{comments:a,pragmas:s}}function Hda(e){if(!e.startsWith("#!"))return"";let t=e.indexOf(` -`);return t===-1?e:e.slice(0,t)}var Xda=Hda;function Jda(e){let t=Xda(e);t&&(e=e.slice(t.length+1));let r=Qda(e),{pragmas:s,comments:a}=Yda(r);return{shebang:t,text:e,pragmas:s,comments:a}}function Uda(e){let{pragmas:t}=Jda(e);return Object.prototype.hasOwnProperty.call(t,"prettier")||Object.prototype.hasOwnProperty.call(t,"format")}function Kda(e){return e=typeof e=="function"?{parse:e}:e,{astFormat:"estree",hasPragma:Uda,locStart:HU,locEnd:ufe,...e}}var jda=Kda;function zda(e){let{filepath:t}=e;if(t){if(t=t.toLowerCase(),t.endsWith(".cjs")||t.endsWith(".cts"))return"script";if(t.endsWith(".mjs")||t.endsWith(".mts"))return"module"}}var qda=zda;function $da(e){return e.charAt(0)==="#"&&e.charAt(1)==="!"?"//"+e.slice(2):e}var epa=$da,tpa={loc:!0,range:!0,comment:!0,tokens:!0,loggerFn:!1,project:!1,jsDocParsingMode:"none",suppressDeprecatedPropertyWarnings:!0};function rpa(e){if(!(e!=null&&e.location))return e;let{message:t,location:{start:r,end:s}}=e;return fda(t,{loc:{start:{line:r.line,column:r.column+1},end:{line:s.line,column:s.column+1}},cause:e})}var npa=e=>/\.(?:js|mjs|cjs|jsx|ts|mts|cts|tsx)$/iu.test(e);function ipa(e,t){let r=t?.filepath,s=[{...tpa,filePath:r}],a=qda(t);if(a?s=s.map(g=>({...g,sourceType:a})):s=["module","script"].flatMap(g=>s.map(p=>({...p,sourceType:g}))),r&&npa(r))return s;let o=opa(e);return[o,!o].flatMap(g=>s.map(p=>({...p,jsx:g})))}function spa(e,t={}){let r=epa(e),s=ipa(e,t),a;try{a=Cda(s.map(o=>()=>Ada(r,o)))}catch({errors:[o]}){throw rpa(o)}return Fda(a,{text:e})}function opa(e){return new RegExp(["(?:^[^\"'`]*)"].join(""),"mu").test(e)}var apa=jda(spa),cpa=jii;var jdr={};jf(jdr,{default:()=>OIa,languages:()=>Qai,options:()=>Yai,parsers:()=>Xdr,printers:()=>ici});var lpa=Object.create,Ldr=Object.defineProperty,upa=Object.getOwnPropertyDescriptor,gpa=Object.getOwnPropertyNames,Apa=Object.getPrototypeOf,dpa=Object.prototype.hasOwnProperty,jz=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),aai=(e,t)=>{for(var r in t)Ldr(e,r,{get:t[r],enumerable:!0})},ppa=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of gpa(t))!dpa.call(e,a)&&a!==r&&Ldr(e,a,{get:()=>t[a],enumerable:!(s=upa(t,a))||s.enumerable});return e},cai=(e,t,r)=>(r=e!=null?lpa(Apa(e)):{},ppa(t||!e||!e.__esModule?Ldr(r,"default",{value:e,enumerable:!0}):r,e)),yfe=jz(e=>{"use strict";var t={ANCHOR:"&",COMMENT:"#",TAG:"!",DIRECTIVES_END:"-",DOCUMENT_END:"."},r={ALIAS:"ALIAS",BLANK_LINE:"BLANK_LINE",BLOCK_FOLDED:"BLOCK_FOLDED",BLOCK_LITERAL:"BLOCK_LITERAL",COMMENT:"COMMENT",DIRECTIVE:"DIRECTIVE",DOCUMENT:"DOCUMENT",FLOW_MAP:"FLOW_MAP",FLOW_SEQ:"FLOW_SEQ",MAP:"MAP",MAP_KEY:"MAP_KEY",MAP_VALUE:"MAP_VALUE",PLAIN:"PLAIN",QUOTE_DOUBLE:"QUOTE_DOUBLE",QUOTE_SINGLE:"QUOTE_SINGLE",SEQ:"SEQ",SEQ_ITEM:"SEQ_ITEM"},s="tag:yaml.org,2002:",a={MAP:"tag:yaml.org,2002:map",SEQ:"tag:yaml.org,2002:seq",STR:"tag:yaml.org,2002:str"};function o(ae){let ge=[0],fe=ae.indexOf(` +`;function on(Eo,eA){Xu[Eo]+=eA}}function Nd(Dt){switch(Dt){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 ei(Dt,Gl){if(Dt.fill)Dt.fill(Gl);else for(let Xu=0;Xu0?Dt.repeat(Gl):"";let Xu="";for(;Xu.length{},saa=()=>{},kCt,vp=(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.NotEmittedTypeElement=354]="NotEmittedTypeElement",e[e.PartiallyEmittedExpression=355]="PartiallyEmittedExpression",e[e.CommaListExpression=356]="CommaListExpression",e[e.SyntheticReferenceExpression=357]="SyntheticReferenceExpression",e[e.Count=358]="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))(vp||{}),e3=(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))(e3||{}),usi=(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))(usi||{}),gsi=(e=>(e[e.None=0]="None",e[e.Succeeded=1]="Succeeded",e[e.Failed=2]="Failed",e[e.ReportsUnmeasurable=8]="ReportsUnmeasurable",e[e.ReportsUnreliable=16]="ReportsUnreliable",e[e.ReportsMask=24]="ReportsMask",e[e.ComplexityOverflow=32]="ComplexityOverflow",e[e.StackDepthOverflow=64]="StackDepthOverflow",e[e.Overflow=96]="Overflow",e))(gsi||{}),vAr=(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))(vAr||{}),Asi=(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))(Asi||{}),dsi=(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.PartiallyTypeChecked=8388608]="PartiallyTypeChecked",e[e.LazyFlags=539358128]="LazyFlags",e))(dsi||{}),Pk=(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))(Pk||{}),psi=(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))(psi||{}),fsi=(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))(fsi||{}),Yz=(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))(Yz||{}),qAr=(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.ES2024=11]="ES2024",e[e.ESNext=99]="ESNext",e[e.JSON=100]="JSON",e[e.Latest=99]="Latest",e))(qAr||{}),Isi=(e=>(e[e.Standard=0]="Standard",e[e.JSX=1]="JSX",e))(Isi||{}),vQ=(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))(vQ||{}),Csi=(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))(Csi||{}),msi=(e=>(e[e.TabStop=0]="TabStop",e[e.Placeholder=1]="Placeholder",e[e.Choice=2]="Choice",e[e.Variable=3]="Variable",e))(msi||{}),hsi=(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))(hsi||{}),nMe={Classes:2,ForOf:2,Generators:2,Iteration:2,SpreadElements:2,RestElements:2,TaggedTemplates:2,DestructuringAssignment:2,BindingPatterns:2,ArrowFunctions:2,BlockScopedVariables:2,ObjectAssign:2,RegularExpressionFlagsUnicode:2,RegularExpressionFlagsSticky:2,Exponentiation:3,AsyncFunctions:4,ForAwaitOf:5,AsyncGenerators:5,AsyncIteration:5,ObjectSpreadRest:5,RegularExpressionFlagsDotAll:5,BindinglessCatch:6,BigInt:7,NullishCoalesce:7,OptionalChaining:7,LogicalAssignment:8,TopLevelAwait:9,ClassFields:9,PrivateNamesAndClassStaticBlocks:9,RegularExpressionFlagsHasIndices:9,ShebangComments:10,RegularExpressionFlagsUnicodeSets:11,UsingAndAwaitUsing:99,ClassAndClassElementDecorators:99},_si={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}},AMe=(e=>(e[e.ParseAll=0]="ParseAll",e[e.ParseNone=1]="ParseNone",e[e.ParseForTypeErrors=2]="ParseForTypeErrors",e[e.ParseForTypeInfo=3]="ParseForTypeInfo",e))(AMe||{}),bfe="/",oaa="\\",Qni="://",aaa=/\\/g;function caa(e){return e===47||e===92}function laa(e,t){return e.length>t.length&&taa(e,t)}function $Ar(e){return e.length>0&&caa(e.charCodeAt(e.length-1))}function Mni(e){return e>=97&&e<=122||e>=65&&e<=90}function uaa(e,t){let r=e.charCodeAt(t);if(r===58)return t+1;if(r===37&&e.charCodeAt(t+1)===51){let s=e.charCodeAt(t+2);if(s===97||s===65)return t+3}return-1}function gaa(e){if(!e)return 0;let t=e.charCodeAt(0);if(t===47||t===92){if(e.charCodeAt(1)!==t)return 1;let s=e.indexOf(t===47?bfe:oaa,2);return s<0?e.length:s+1}if(Mni(t)&&e.charCodeAt(1)===58){let s=e.charCodeAt(2);if(s===47||s===92)return 3;if(e.length===2)return 2}let r=e.indexOf(Qni);if(r!==-1){let s=r+Qni.length,a=e.indexOf(bfe,s);if(a!==-1){let o=e.slice(0,r),g=e.slice(s,a);if(o==="file"&&(g===""||g==="localhost")&&Mni(e.charCodeAt(a+1))){let p=uaa(e,a+2);if(p!==-1){if(e.charCodeAt(p)===47)return~(p+1);if(p===e.length)return~p}}return~(a+1)}return~e.length}return 0}function PCt(e){let t=gaa(e);return t<0?~t:t}function ysi(e,t,r){if(e=OCt(e),PCt(e)===e.length)return"";e=Esi(e);let s=e.slice(Math.max(PCt(e),e.lastIndexOf(bfe)+1)),a=t!==void 0&&r!==void 0?bsi(s,t,r):void 0;return a?s.slice(0,s.length-a.length):s}function Hni(e,t,r){if(WCt(t,".")||(t="."+t),e.length>=t.length&&e.charCodeAt(e.length-t.length)===46){let s=e.slice(e.length-t.length);if(r(s,t))return s}}function Aaa(e,t,r){if(typeof t=="string")return Hni(e,t,r)||"";for(let s of t){let a=Hni(e,s,r);if(a)return a}return""}function bsi(e,t,r){if(t)return Aaa(Esi(e),t,r?zAr:zoa);let s=ysi(e),a=s.lastIndexOf(".");return a>=0?s.substring(a):""}function daa(e,t){let r=e.substring(0,t),s=e.substring(t).split(bfe);return s.length&&!Cfe(s)&&s.pop(),[r,...s]}function paa(e,t=""){return e=Caa(t,e),daa(e,PCt(e))}function faa(e,t){return e.length===0?"":(e[0]&&edr(e[0]))+e.slice(1,t).join(bfe)}function OCt(e){return e.includes("\\")?e.replace(aaa,bfe):e}function Iaa(e){if(!_R(e))return[];let t=[e[0]];for(let r=1;r1){if(t[t.length-1]!==".."){t.pop();continue}}else if(t[0])continue}t.push(s)}}return t}function Caa(e,...t){e&&(e=OCt(e));for(let r of t)r&&(r=OCt(r),!e||PCt(r)!==0?e=r:e=edr(e)+r);return e}function maa(e){if(e=OCt(e),!Yni.test(e))return e;let t=e.replace(/\/\.\//g,"/").replace(/^\.\//,"");if(t!==e&&(e=t,!Yni.test(e)))return e;let r=faa(Iaa(paa(e)));return r&&$Ar(e)?edr(r):r}function Esi(e){return $Ar(e)?e.substr(0,e.length-1):e}function edr(e){return $Ar(e)?e:e+bfe}var Yni=/\/\/|(?:^|\/)\.\.?(?:$|\/)/;function q(e,t,r,s,a,o,g){return{code:e,category:t,key:r,message:s,reportsUnnecessary:a,elidedInCompatabilityPyramid:o,reportsDeprecated:g}}var Ni={Unterminated_string_literal:q(1002,1,"Unterminated_string_literal_1002","Unterminated string literal."),Identifier_expected:q(1003,1,"Identifier_expected_1003","Identifier expected."),_0_expected:q(1005,1,"_0_expected_1005","'{0}' expected."),A_file_cannot_have_a_reference_to_itself:q(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:q(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:q(1009,1,"Trailing_comma_not_allowed_1009","Trailing comma not allowed."),Asterisk_Slash_expected:q(1010,1,"Asterisk_Slash_expected_1010","'*/' expected."),An_element_access_expression_should_take_an_argument:q(1011,1,"An_element_access_expression_should_take_an_argument_1011","An element access expression should take an argument."),Unexpected_token:q(1012,1,"Unexpected_token_1012","Unexpected token."),A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(1025,1,"An_index_signature_cannot_have_a_trailing_comma_1025","An index signature cannot have a trailing comma."),Accessibility_modifier_already_seen:q(1028,1,"Accessibility_modifier_already_seen_1028","Accessibility modifier already seen."),_0_modifier_must_precede_1_modifier:q(1029,1,"_0_modifier_must_precede_1_modifier_1029","'{0}' modifier must precede '{1}' modifier."),_0_modifier_already_seen:q(1030,1,"_0_modifier_already_seen_1030","'{0}' modifier already seen."),_0_modifier_cannot_appear_on_class_elements_of_this_kind:q(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:q(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:q(1035,1,"Only_ambient_modules_can_use_quoted_names_1035","Only ambient modules can use quoted names."),Statements_are_not_allowed_in_ambient_contexts:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(1047,1,"A_rest_parameter_cannot_be_optional_1047","A rest parameter cannot be optional."),A_rest_parameter_cannot_have_an_initializer:q(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:q(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:q(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:q(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:q(1053,1,"A_set_accessor_cannot_have_rest_parameter_1053","A 'set' accessor cannot have rest parameter."),A_get_accessor_cannot_have_parameters:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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 type. Did you mean to write 'Promise<{0}>'?"),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type:q(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 type."),In_ambient_enum_declarations_member_initializer_must_be_constant_expression:q(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:q(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:q(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:q(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:q(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:q(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:q(1084,1,"Invalid_reference_directive_syntax_1084","Invalid 'reference' directive syntax."),_0_modifier_cannot_appear_on_a_constructor_declaration:q(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:q(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:q(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:q(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:q(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:q(1094,1,"An_accessor_cannot_have_type_parameters_1094","An accessor cannot have type parameters."),A_set_accessor_cannot_have_a_return_type_annotation:q(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:q(1096,1,"An_index_signature_must_have_exactly_one_parameter_1096","An index signature must have exactly one parameter."),_0_list_cannot_be_empty:q(1097,1,"_0_list_cannot_be_empty_1097","'{0}' list cannot be empty."),Type_parameter_list_cannot_be_empty:q(1098,1,"Type_parameter_list_cannot_be_empty_1098","Type parameter list cannot be empty."),Type_argument_list_cannot_be_empty:q(1099,1,"Type_argument_list_cannot_be_empty_1099","Type argument list cannot be empty."),Invalid_use_of_0_in_strict_mode:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(1109,1,"Expression_expected_1109","Expression expected."),Type_expected:q(1110,1,"Type_expected_1110","Type expected."),Private_field_0_must_be_declared_in_an_enclosing_class:q(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:q(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:q(1114,1,"Duplicate_label_0_1114","Duplicate label '{0}'."),A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement:q(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:q(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:q(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:q(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:q(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:q(1120,1,"An_export_assignment_cannot_have_modifiers_1120","An export assignment cannot have modifiers."),Octal_literals_are_not_allowed_Use_the_syntax_0:q(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:q(1123,1,"Variable_declaration_list_cannot_be_empty_1123","Variable declaration list cannot be empty."),Digit_expected:q(1124,1,"Digit_expected_1124","Digit expected."),Hexadecimal_digit_expected:q(1125,1,"Hexadecimal_digit_expected_1125","Hexadecimal digit expected."),Unexpected_end_of_text:q(1126,1,"Unexpected_end_of_text_1126","Unexpected end of text."),Invalid_character:q(1127,1,"Invalid_character_1127","Invalid character."),Declaration_or_statement_expected:q(1128,1,"Declaration_or_statement_expected_1128","Declaration or statement expected."),Statement_expected:q(1129,1,"Statement_expected_1129","Statement expected."),case_or_default_expected:q(1130,1,"case_or_default_expected_1130","'case' or 'default' expected."),Property_or_signature_expected:q(1131,1,"Property_or_signature_expected_1131","Property or signature expected."),Enum_member_expected:q(1132,1,"Enum_member_expected_1132","Enum member expected."),Variable_declaration_expected:q(1134,1,"Variable_declaration_expected_1134","Variable declaration expected."),Argument_expression_expected:q(1135,1,"Argument_expression_expected_1135","Argument expression expected."),Property_assignment_expected:q(1136,1,"Property_assignment_expected_1136","Property assignment expected."),Expression_or_comma_expected:q(1137,1,"Expression_or_comma_expected_1137","Expression or comma expected."),Parameter_declaration_expected:q(1138,1,"Parameter_declaration_expected_1138","Parameter declaration expected."),Type_parameter_declaration_expected:q(1139,1,"Type_parameter_declaration_expected_1139","Type parameter declaration expected."),Type_argument_expected:q(1140,1,"Type_argument_expected_1140","Type argument expected."),String_literal_expected:q(1141,1,"String_literal_expected_1141","String literal expected."),Line_break_not_permitted_here:q(1142,1,"Line_break_not_permitted_here_1142","Line break not permitted here."),or_expected:q(1144,1,"or_expected_1144","'{' or ';' expected."),or_JSX_element_expected:q(1145,1,"or_JSX_element_expected_1145","'{' or JSX element expected."),Declaration_expected:q(1146,1,"Declaration_expected_1146","Declaration expected."),Import_declarations_in_a_namespace_cannot_reference_a_module:q(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:q(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:q(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:q(1155,1,"_0_declarations_must_be_initialized_1155","'{0}' declarations must be initialized."),_0_declarations_can_only_be_declared_inside_a_block:q(1156,1,"_0_declarations_can_only_be_declared_inside_a_block_1156","'{0}' declarations can only be declared inside a block."),Unterminated_template_literal:q(1160,1,"Unterminated_template_literal_1160","Unterminated template literal."),Unterminated_regular_expression_literal:q(1161,1,"Unterminated_regular_expression_literal_1161","Unterminated regular expression literal."),An_object_member_cannot_be_declared_optional:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(1172,1,"extends_clause_already_seen_1172","'extends' clause already seen."),extends_clause_must_precede_implements_clause:q(1173,1,"extends_clause_must_precede_implements_clause_1173","'extends' clause must precede 'implements' clause."),Classes_can_only_extend_a_single_class:q(1174,1,"Classes_can_only_extend_a_single_class_1174","Classes can only extend a single class."),implements_clause_already_seen:q(1175,1,"implements_clause_already_seen_1175","'implements' clause already seen."),Interface_declaration_cannot_have_implements_clause:q(1176,1,"Interface_declaration_cannot_have_implements_clause_1176","Interface declaration cannot have 'implements' clause."),Binary_digit_expected:q(1177,1,"Binary_digit_expected_1177","Binary digit expected."),Octal_digit_expected:q(1178,1,"Octal_digit_expected_1178","Octal digit expected."),Unexpected_token_expected:q(1179,1,"Unexpected_token_expected_1179","Unexpected token. '{' expected."),Property_destructuring_pattern_expected:q(1180,1,"Property_destructuring_pattern_expected_1180","Property destructuring pattern expected."),Array_element_destructuring_pattern_expected:q(1181,1,"Array_element_destructuring_pattern_expected_1181","Array element destructuring pattern expected."),A_destructuring_declaration_must_have_an_initializer:q(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:q(1183,1,"An_implementation_cannot_be_declared_in_ambient_contexts_1183","An implementation cannot be declared in ambient contexts."),Modifiers_cannot_appear_here:q(1184,1,"Modifiers_cannot_appear_here_1184","Modifiers cannot appear here."),Merge_conflict_marker_encountered:q(1185,1,"Merge_conflict_marker_encountered_1185","Merge conflict marker encountered."),A_rest_element_cannot_have_an_initializer:q(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:q(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:q(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:q(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:q(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:q(1191,1,"An_import_declaration_cannot_have_modifiers_1191","An import declaration cannot have modifiers."),Module_0_has_no_default_export:q(1192,1,"Module_0_has_no_default_export_1192","Module '{0}' has no default export."),An_export_declaration_cannot_have_modifiers:q(1193,1,"An_export_declaration_cannot_have_modifiers_1193","An export declaration cannot have modifiers."),Export_declarations_are_not_permitted_in_a_namespace:q(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:q(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:q(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:q(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:q(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:q(1199,1,"Unterminated_Unicode_escape_sequence_1199","Unterminated Unicode escape sequence."),Line_terminator_not_permitted_before_arrow:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(1223,1,"_0_tag_already_specified_1223","'{0}' tag already specified."),Signature_0_must_be_a_type_predicate:q(1224,1,"Signature_0_must_be_a_type_predicate_1224","Signature '{0}' must be a type predicate."),Cannot_find_parameter_0:q(1225,1,"Cannot_find_parameter_0_1225","Cannot find parameter '{0}'."),Type_predicate_0_is_not_assignable_to_1:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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 }'."),ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve:q(1293,1,"ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve_1293","ESM syntax is not allowed in a CommonJS module when 'module' is set to 'preserve'."),with_statements_are_not_allowed_in_an_async_function_block:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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_nodenext_or_preserve:q(1324,1,"Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_nodene_1324","Dynamic imports only support a second argument when the '--module' option is set to 'esnext', 'node16', 'nodenext', or 'preserve'."),Argument_of_dynamic_import_cannot_be_spread_element:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(1348,1,"Non_simple_parameter_declared_here_1348","Non-simple parameter declared here."),use_strict_directive_used_here:q(1349,1,"use_strict_directive_used_here_1349","'use strict' directive used here."),Print_the_final_configuration_instead_of_building:q(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:q(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:q(1352,1,"A_bigint_literal_cannot_use_exponential_notation_1352","A bigint literal cannot use exponential notation."),A_bigint_literal_must_be_an_integer:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(1364,3,"Convert_to_type_only_export_1364","Convert to type-only export"),Convert_all_re_exported_types_to_type_only_exports:q(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:q(1366,3,"Split_into_two_separate_import_declarations_1366","Split into two separate import declarations"),Split_all_invalid_type_only_imports:q(1367,3,"Split_all_invalid_type_only_imports_1367","Split all invalid type-only imports"),Class_constructor_may_not_be_a_generator:q(1368,1,"Class_constructor_may_not_be_a_generator_1368","Class constructor may not be a generator."),Did_you_mean_0:q(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:q(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:q(1376,3,"_0_was_imported_here_1376","'{0}' was imported here."),_0_was_exported_here:q(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:q(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:q(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:q(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:q(1381,1,"Unexpected_token_Did_you_mean_or_rbrace_1381","Unexpected token. Did you mean `{'}'}` or `}`?"),Unexpected_token_Did_you_mean_or_gt:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(1392,1,"An_import_alias_cannot_use_import_type_1392","An import alias cannot use 'import type'"),Imported_via_0_from_file_1:q(1393,3,"Imported_via_0_from_file_1_1393","Imported via {0} from file '{1}'"),Imported_via_0_from_file_1_with_packageId_2:q(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:q(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:q(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:q(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:q(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:q(1399,3,"File_is_included_via_import_here_1399","File is included via import here."),Referenced_via_0_from_file_1:q(1400,3,"Referenced_via_0_from_file_1_1400","Referenced via '{0}' from file '{1}'"),File_is_included_via_reference_here:q(1401,3,"File_is_included_via_reference_here_1401","File is included via reference here."),Type_library_referenced_via_0_from_file_1:q(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:q(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:q(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:q(1405,3,"Library_referenced_via_0_from_file_1_1405","Library referenced via '{0}' from file '{1}'"),File_is_included_via_library_reference_here:q(1406,3,"File_is_included_via_library_reference_here_1406","File is included via library reference here."),Matched_by_include_pattern_0_in_1:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(1422,3,"Library_0_specified_in_compilerOptions_1422","Library '{0}' specified in compilerOptions"),File_is_library_specified_here:q(1423,3,"File_is_library_specified_here_1423","File is library specified here."),Default_library:q(1424,3,"Default_library_1424","Default library"),Default_library_for_target_0:q(1425,3,"Default_library_for_target_0_1425","Default library for target '{0}'"),File_is_default_library_for_target_specified_here:q(1426,3,"File_is_default_library_for_target_specified_here_1426","File is default library for target specified here."),Root_file_specified_for_compilation:q(1427,3,"Root_file_specified_for_compilation_1427","Root file specified for compilation"),File_is_output_of_project_reference_source_0:q(1428,3,"File_is_output_of_project_reference_source_0_1428","File is output of project reference source '{0}'"),File_redirects_to_file_0:q(1429,3,"File_redirects_to_file_0_1429","File redirects to file '{0}'"),The_file_is_in_the_program_because_Colon:q(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:q(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:q(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:q(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:q(1434,1,"Unexpected_keyword_or_identifier_1434","Unexpected keyword or identifier."),Unknown_keyword_or_identifier_Did_you_mean_0:q(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:q(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:q(1437,1,"Namespace_must_be_given_a_name_1437","Namespace must be given a name."),Interface_must_be_given_a_name:q(1438,1,"Interface_must_be_given_a_name_1438","Interface must be given a name."),Type_alias_must_be_given_a_name:q(1439,1,"Type_alias_must_be_given_a_name_1439","Type alias must be given a name."),Variable_declaration_not_allowed_at_this_location:q(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:q(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:q(1442,1,"Expected_for_property_initializer_1442","Expected '=' for property initializer."),Module_declaration_names_may_only_use_or_quoted_strings:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(1486,1,"Decorator_used_before_export_here_1486","Decorator used before 'export' here."),Octal_escape_sequences_are_not_allowed_Use_the_syntax_0:q(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:q(1488,1,"Escape_sequence_0_is_not_allowed_1488","Escape sequence '{0}' is not allowed."),Decimals_with_leading_zeros_are_not_allowed:q(1489,1,"Decimals_with_leading_zeros_are_not_allowed_1489","Decimals with leading zeros are not allowed."),File_appears_to_be_binary:q(1490,1,"File_appears_to_be_binary_1490","File appears to be binary."),_0_modifier_cannot_appear_on_a_using_declaration:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(1498,1,"Invalid_syntax_in_decorator_1498","Invalid syntax in decorator."),Unknown_regular_expression_flag:q(1499,1,"Unknown_regular_expression_flag_1499","Unknown regular expression flag."),Duplicate_regular_expression_flag:q(1500,1,"Duplicate_regular_expression_flag_1500","Duplicate regular expression flag."),This_regular_expression_flag_is_only_available_when_targeting_0_or_later:q(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:q(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:q(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:q(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:q(1505,1,"Incomplete_quantifier_Digit_expected_1505","Incomplete quantifier. Digit expected."),Numbers_out_of_order_in_quantifier:q(1506,1,"Numbers_out_of_order_in_quantifier_1506","Numbers out of order in quantifier."),There_is_nothing_available_for_repetition:q(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:q(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:q(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:q(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:q(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:q(1512,1,"c_must_be_followed_by_an_ASCII_letter_1512","'\\c' must be followed by an ASCII letter."),Undetermined_character_escape:q(1513,1,"Undetermined_character_escape_1513","Undetermined character escape."),Expected_a_capturing_group_name:q(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:q(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:q(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:q(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:q(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:q(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:q(1520,1,"Expected_a_class_set_operand_1520","Expected a class set operand."),q_must_be_followed_by_string_alternatives_enclosed_in_braces:q(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:q(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:q(1523,1,"Expected_a_Unicode_property_name_1523","Expected a Unicode property name."),Unknown_Unicode_property_name:q(1524,1,"Unknown_Unicode_property_name_1524","Unknown Unicode property name."),Expected_a_Unicode_property_value:q(1525,1,"Expected_a_Unicode_property_value_1525","Expected a Unicode property value."),Unknown_Unicode_property_value:q(1526,1,"Unknown_Unicode_property_value_1526","Unknown Unicode property value."),Expected_a_Unicode_property_name_or_value:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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."),Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set:q(1538,1,"Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_se_1538","Unicode escape sequences are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set."),A_bigint_literal_cannot_be_used_as_a_property_name:q(1539,1,"A_bigint_literal_cannot_be_used_as_a_property_name_1539","A 'bigint' literal cannot be used as a property name."),A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_keyword_instead:q(1540,2,"A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_key_1540","A 'namespace' declaration should not be declared using the 'module' keyword. Please use the 'namespace' keyword instead.",void 0,void 0,!0),Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:q(1541,1,"Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribut_1541","Type-only import of an ECMAScript module from a CommonJS module must have a 'resolution-mode' attribute."),Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute:q(1542,1,"Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute_1542","Type import of an ECMAScript module from a CommonJS module must have a 'resolution-mode' attribute."),Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_module_is_set_to_0:q(1543,1,"Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_mod_1543",`Importing a JSON file into an ECMAScript module requires a 'type: "json"' import attribute when 'module' is set to '{0}'.`),Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0:q(1544,1,"Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0_1544","Named imports from a JSON file into an ECMAScript module are not allowed when 'module' is set to '{0}'."),The_types_of_0_are_incompatible_between_these_types:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2211,3,"Add_extends_constraint_2211","Add `extends` constraint."),Add_extends_constraint_to_all_type_parameters:q(2212,3,"Add_extends_constraint_to_all_type_parameters_2212","Add `extends` constraint to all type parameters"),Duplicate_identifier_0:q(2300,1,"Duplicate_identifier_0_2300","Duplicate identifier '{0}'."),Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:q(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:q(2302,1,"Static_members_cannot_reference_class_type_parameters_2302","Static members cannot reference class type parameters."),Circular_definition_of_import_alias_0:q(2303,1,"Circular_definition_of_import_alias_0_2303","Circular definition of import alias '{0}'."),Cannot_find_name_0:q(2304,1,"Cannot_find_name_0_2304","Cannot find name '{0}'."),Module_0_has_no_exported_member_1:q(2305,1,"Module_0_has_no_exported_member_1_2305","Module '{0}' has no exported member '{1}'."),File_0_is_not_a_module:q(2306,1,"File_0_is_not_a_module_2306","File '{0}' is not a module."),Cannot_find_module_0_or_its_corresponding_type_declarations:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2314,1,"Generic_type_0_requires_1_type_argument_s_2314","Generic type '{0}' requires {1} type argument(s)."),Type_0_is_not_generic:q(2315,1,"Type_0_is_not_generic_2315","Type '{0}' is not generic."),Global_type_0_must_be_a_class_or_interface_type:q(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:q(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:q(2318,1,"Cannot_find_global_type_0_2318","Cannot find global type '{0}'."),Named_property_0_of_types_1_and_2_are_not_identical:q(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:q(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:q(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:q(2322,1,"Type_0_is_not_assignable_to_type_1_2322","Type '{0}' is not assignable to type '{1}'."),Cannot_redeclare_exported_variable_0:q(2323,1,"Cannot_redeclare_exported_variable_0_2323","Cannot redeclare exported variable '{0}'."),Property_0_is_missing_in_type_1:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2349,1,"This_expression_is_not_callable_2349","This expression is not callable."),Only_a_void_function_can_be_called_with_the_new_keyword:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2372,1,"Parameter_0_cannot_reference_itself_2372","Parameter '{0}' cannot reference itself."),Parameter_0_cannot_reference_identifier_1_declared_after_it:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2386,1,"Overload_signatures_must_all_be_optional_or_required_2386","Overload signatures must all be optional or required."),Function_overload_must_be_static:q(2387,1,"Function_overload_must_be_static_2387","Function overload must be static."),Function_overload_must_not_be_static:q(2388,1,"Function_overload_must_not_be_static_2388","Function overload must not be static."),Function_implementation_name_must_be_0:q(2389,1,"Function_implementation_name_must_be_0_2389","Function implementation name must be '{0}'."),Constructor_implementation_is_missing:q(2390,1,"Constructor_implementation_is_missing_2390","Constructor implementation is missing."),Function_implementation_is_missing_or_not_immediately_following_the_declaration:q(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:q(2392,1,"Multiple_constructor_implementations_are_not_allowed_2392","Multiple constructor implementations are not allowed."),Duplicate_function_implementation:q(2393,1,"Duplicate_function_implementation_2393","Duplicate function implementation."),This_overload_signature_is_not_compatible_with_its_implementation_signature:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2414,1,"Class_name_cannot_be_0_2414","Class name cannot be '{0}'."),Class_0_incorrectly_extends_base_class_1:q(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:q(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:q(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:q(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:q(2419,1,"Types_of_construct_signatures_are_incompatible_2419","Types of construct signatures are incompatible."),Class_0_incorrectly_implements_interface_1:q(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:q(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:q(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:q(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:q(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:q(2427,1,"Interface_name_cannot_be_0_2427","Interface name cannot be '{0}'."),All_declarations_of_0_must_have_identical_type_parameters:q(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:q(2430,1,"Interface_0_incorrectly_extends_interface_1_2430","Interface '{0}' incorrectly extends interface '{1}'."),Enum_name_cannot_be_0:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2449,1,"Class_0_used_before_its_declaration_2449","Class '{0}' used before its declaration."),Enum_0_used_before_its_declaration:q(2450,1,"Enum_0_used_before_its_declaration_2450","Enum '{0}' used before its declaration."),Cannot_redeclare_block_scoped_variable_0:q(2451,1,"Cannot_redeclare_block_scoped_variable_0_2451","Cannot redeclare block-scoped variable '{0}'."),An_enum_member_cannot_have_a_numeric_name:q(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:q(2454,1,"Variable_0_is_used_before_being_assigned_2454","Variable '{0}' is used before being assigned."),Type_alias_0_circularly_references_itself:q(2456,1,"Type_alias_0_circularly_references_itself_2456","Type alias '{0}' circularly references itself."),Type_alias_name_cannot_be_0:q(2457,1,"Type_alias_name_cannot_be_0_2457","Type alias name cannot be '{0}'."),An_AMD_module_cannot_have_multiple_name_assignments:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2468,1,"Cannot_find_global_value_0_2468","Cannot find global value '{0}'."),The_0_operator_cannot_be_applied_to_type_symbol:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2503,1,"Cannot_find_namespace_0_2503","Cannot find namespace '{0}'."),Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2524,1,"await_expressions_cannot_be_used_in_a_parameter_initializer_2524","'await' expressions cannot be used in a parameter initializer."),A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface:q(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:q(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:q(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:q(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:q(2530,1,"Property_0_is_incompatible_with_index_signature_2530","Property '{0}' is incompatible with index signature."),Object_is_possibly_null:q(2531,1,"Object_is_possibly_null_2531","Object is possibly 'null'."),Object_is_possibly_undefined:q(2532,1,"Object_is_possibly_undefined_2532","Object is possibly 'undefined'."),Object_is_possibly_null_or_undefined:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2554,1,"Expected_0_arguments_but_got_1_2554","Expected {0} arguments, but got {1}."),Expected_at_least_0_arguments_but_got_1:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2571,1,"Object_is_of_type_unknown_2571","Object is of type 'unknown'."),A_rest_element_type_must_be_an_array_type:q(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:q(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:q(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:q(2577,1,"Return_type_annotation_circularly_references_itself_2577","Return type annotation circularly references itself."),Unused_ts_expect_error_directive:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2708,1,"Cannot_use_namespace_0_as_a_value_2708","Cannot use namespace '{0}' as a value."),Cannot_use_namespace_0_as_a_type:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2728,3,"_0_is_declared_here_2728","'{0}' is declared here."),Property_0_is_used_before_its_initialization:q(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:q(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:q(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:q(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:q(2733,1,"Property_0_was_also_declared_here_2733","Property '{0}' was also declared here."),Are_you_missing_a_semicolon:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2750,1,"The_implementation_signature_is_declared_here_2750","The implementation signature is declared here."),Circularity_originates_in_type_at_this_location:q(2751,1,"Circularity_originates_in_type_at_this_location_2751","Circularity originates in type at this location."),The_first_export_default_is_here:q(2752,1,"The_first_export_default_is_here_2752","The first export default is here."),Another_export_default_is_here:q(2753,1,"Another_export_default_is_here_2753","Another export default is here."),super_may_not_use_type_arguments:q(2754,1,"super_may_not_use_type_arguments_2754","'super' may not use type arguments."),No_constituent_of_type_0_is_callable:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2769,1,"No_overload_matches_this_call_2769","No overload matches this call."),The_last_overload_gave_the_following_error:q(2770,1,"The_last_overload_gave_the_following_error_2770","The last overload gave the following error."),The_last_overload_is_declared_here:q(2771,1,"The_last_overload_is_declared_here_2771","The last overload is declared here."),Overload_0_of_1_2_gave_the_following_error:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(2785,1,"This_spread_always_overwrites_this_property_2785","This spread always overwrites this property."),_0_cannot_be_used_as_a_JSX_component:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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."),Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish:q(2869,1,"Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish_2869","Right operand of ?? is unreachable because the left operand is never nullish."),This_binary_expression_is_never_nullish_Are_you_missing_parentheses:q(2870,1,"This_binary_expression_is_never_nullish_Are_you_missing_parentheses_2870","This binary expression is never nullish. Are you missing parentheses?"),This_expression_is_always_nullish:q(2871,1,"This_expression_is_always_nullish_2871","This expression is always nullish."),This_kind_of_expression_is_always_truthy:q(2872,1,"This_kind_of_expression_is_always_truthy_2872","This kind of expression is always truthy."),This_kind_of_expression_is_always_falsy:q(2873,1,"This_kind_of_expression_is_always_falsy_2873","This kind of expression is always falsy."),This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found:q(2874,1,"This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found_2874","This JSX tag requires '{0}' to be in scope, but it could not be found."),This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_for_the_appropriate_package_installed:q(2875,1,"This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_fo_2875","This JSX tag requires the module path '{0}' to exist, but none could be found. Make sure you have types for the appropriate package installed."),This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolves_to_0:q(2876,1,"This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolv_2876",'This relative import path is unsafe to rewrite because it looks like a file name, but actually resolves to "{0}".'),This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_during_emit_because_it_is_not_a_relative_path:q(2877,1,"This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_duri_2877","This import uses a '{0}' extension to resolve to an input TypeScript file, but will not be rewritten during emit because it is not a relative path."),This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_between_the_projects_output_files_is_not_the_same_as_the_relative_path_between_its_input_files:q(2878,1,"This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_b_2878","This import path is unsafe to rewrite because it resolves to another project, and the relative path between the projects' output files is not the same as the relative path between its input files."),Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found:q(2879,1,"Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found_2879","Using JSX fragments requires fragment factory '{0}' to be in scope, but it could not be found."),Import_declaration_0_is_using_private_name_1:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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_anonymous_class_type_may_not_be_private_or_protected:q(4094,1,"Property_0_of_exported_anonymous_class_type_may_not_be_private_or_protected_4094","Property '{0}' of exported anonymous class type 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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(4109,1,"Type_arguments_for_0_circularly_reference_themselves_4109","Type arguments for '{0}' circularly reference themselves."),Tuple_type_arguments_circularly_reference_themselves:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(5012,1,"Cannot_read_file_0_Colon_1_5012","Cannot read file '{0}': {1}."),Unknown_compiler_option_0:q(5023,1,"Unknown_compiler_option_0_5023","Unknown compiler option '{0}'."),Compiler_option_0_requires_a_value_of_type_1:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(5072,1,"Unknown_build_option_0_5072","Unknown build option '{0}'."),Build_option_0_requires_a_value_of_type_1:q(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:q(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:q(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:q(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:q(5077,1,"Unknown_build_option_0_Did_you_mean_1_5077","Unknown build option '{0}'. Did you mean '{1}'?"),Unknown_watch_option_0:q(5078,1,"Unknown_watch_option_0_5078","Unknown watch option '{0}'."),Unknown_watch_option_0_Did_you_mean_1:q(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:q(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:q(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:q(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:q(5083,1,"Cannot_read_file_0_5083","Cannot read file '{0}'."),A_tuple_member_cannot_be_both_optional_and_rest:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(5103,1,"Invalid_value_for_ignoreDeprecations_5103","Invalid value for '--ignoreDeprecations'."),Option_0_is_redundant_and_cannot_be_specified_with_option_1:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6001,3,"Concatenate_and_emit_output_to_single_file_6001","Concatenate and emit output to single file."),Generates_corresponding_d_ts_file:q(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:q(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:q(6005,3,"Watch_input_files_6005","Watch input files."),Redirect_output_structure_to_the_directory:q(6006,3,"Redirect_output_structure_to_the_directory_6006","Redirect output structure to the directory."),Do_not_erase_const_enum_declarations_in_generated_code:q(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:q(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:q(6009,3,"Do_not_emit_comments_to_output_6009","Do not emit comments to output."),Do_not_emit_outputs:q(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:q(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:q(6012,3,"Skip_type_checking_of_declaration_files_6012","Skip type checking of declaration files."),Do_not_resolve_the_real_path_of_symlinks:q(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:q(6014,3,"Only_emit_d_ts_declaration_files_6014","Only emit '.d.ts' declaration files."),Specify_ECMAScript_target_version:q(6015,3,"Specify_ECMAScript_target_version_6015","Specify ECMAScript target version."),Specify_module_code_generation:q(6016,3,"Specify_module_code_generation_6016","Specify module code generation."),Print_this_message:q(6017,3,"Print_this_message_6017","Print this message."),Print_the_compiler_s_version:q(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:q(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:q(6023,3,"Syntax_Colon_0_6023","Syntax: {0}"),options:q(6024,3,"options_6024","options"),file:q(6025,3,"file_6025","file"),Examples_Colon_0:q(6026,3,"Examples_Colon_0_6026","Examples: {0}"),Options_Colon:q(6027,3,"Options_Colon_6027","Options:"),Version_0:q(6029,3,"Version_0_6029","Version {0}"),Insert_command_line_options_and_files_from_a_file:q(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:q(6031,3,"Starting_compilation_in_watch_mode_6031","Starting compilation in watch mode..."),File_change_detected_Starting_incremental_compilation:q(6032,3,"File_change_detected_Starting_incremental_compilation_6032","File change detected. Starting incremental compilation..."),KIND:q(6034,3,"KIND_6034","KIND"),FILE:q(6035,3,"FILE_6035","FILE"),VERSION:q(6036,3,"VERSION_6036","VERSION"),LOCATION:q(6037,3,"LOCATION_6037","LOCATION"),DIRECTORY:q(6038,3,"DIRECTORY_6038","DIRECTORY"),STRATEGY:q(6039,3,"STRATEGY_6039","STRATEGY"),FILE_OR_DIRECTORY:q(6040,3,"FILE_OR_DIRECTORY_6040","FILE OR DIRECTORY"),Errors_Files:q(6041,3,"Errors_Files_6041","Errors Files"),Generates_corresponding_map_file:q(6043,3,"Generates_corresponding_map_file_6043","Generates corresponding '.map' file."),Compiler_option_0_expects_an_argument:q(6044,1,"Compiler_option_0_expects_an_argument_6044","Compiler option '{0}' expects an argument."),Unterminated_quoted_string_in_response_file_0:q(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:q(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:q(6048,1,"Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1_6048","Locale must be of the form or -. For example '{0}' or '{1}'."),Unable_to_open_file_0:q(6050,1,"Unable_to_open_file_0_6050","Unable to open file '{0}'."),Corrupted_locale_file_0:q(6051,1,"Corrupted_locale_file_0_6051","Corrupted locale file {0}."),Raise_error_on_expressions_and_declarations_with_an_implied_any_type:q(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:q(6053,1,"File_0_not_found_6053","File '{0}' not found."),File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1:q(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:q(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:q(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:q(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:q(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:q(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:q(6061,3,"NEWLINE_6061","NEWLINE"),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line:q(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:q(6065,3,"Enables_experimental_support_for_ES7_decorators_6065","Enables experimental support for ES7 decorators."),Enables_experimental_support_for_emitting_type_metadata_for_decorators:q(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:q(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:q(6071,3,"Successfully_created_a_tsconfig_json_file_6071","Successfully created a tsconfig.json file."),Suppress_excess_property_checks_for_object_literals:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6080,3,"Specify_JSX_code_generation_6080","Specify JSX code generation."),Only_amd_and_system_modules_are_supported_alongside_0:q(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:q(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:q(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:q(6085,3,"Enable_tracing_of_the_name_resolution_process_6085","Enable tracing of the name resolution process."),Resolving_module_0_from_1:q(6086,3,"Resolving_module_0_from_1_6086","======== Resolving module '{0}' from '{1}'. ========"),Explicitly_specified_module_resolution_kind_Colon_0:q(6087,3,"Explicitly_specified_module_resolution_kind_Colon_0_6087","Explicitly specified module resolution kind: '{0}'."),Module_resolution_kind_is_not_specified_using_0:q(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:q(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:q(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:q(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:q(6092,3,"Module_name_0_matched_pattern_1_6092","Module name '{0}', matched pattern '{1}'."),Trying_substitution_0_candidate_module_location_Colon_1:q(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:q(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:q(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:q(6096,3,"File_0_does_not_exist_6096","File '{0}' does not exist."),File_0_exists_use_it_as_a_name_resolution_result:q(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:q(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:q(6099,3,"Found_package_json_at_0_6099","Found 'package.json' at '{0}'."),package_json_does_not_have_a_0_field:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6110,3,"Trying_other_entries_in_rootDirs_6110","Trying other entries in 'rootDirs'."),Module_resolution_using_rootDirs_has_failed:q(6111,3,"Module_resolution_using_rootDirs_has_failed_6111","Module resolution using 'rootDirs' has failed."),Do_not_emit_use_strict_directives_in_module_output:q(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:q(6113,3,"Enable_strict_null_checks_6113","Enable strict null checks."),Unknown_option_excludes_Did_you_mean_exclude:q(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:q(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:q(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:q(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:q(6120,3,"Type_reference_directive_0_was_not_resolved_6120","======== Type reference directive '{0}' was not resolved. ========"),Resolving_with_primary_search_path_0:q(6121,3,"Resolving_with_primary_search_path_0_6121","Resolving with primary search path '{0}'."),Root_directory_cannot_be_determined_skipping_primary_search_paths:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6134,3,"Report_errors_on_unused_locals_6134","Report errors on unused locals."),Report_errors_on_unused_parameters:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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}'."),Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h:q(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:q(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:q(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:q(6149,3,"Show_diagnostic_information_6149","Show diagnostic information."),Show_verbose_diagnostic_information:q(6150,3,"Show_verbose_diagnostic_information_6150","Show verbose diagnostic information."),Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6162,3,"Disable_size_limitations_on_JavaScript_projects_6162","Disable size limitations on JavaScript projects."),The_character_set_of_the_input_files:q(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:q(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:q(6165,3,"Do_not_truncate_error_messages_6165","Do not truncate error messages."),Output_directory_for_generated_declaration_files:q(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:q(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:q(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:q(6169,3,"Show_all_compiler_options_6169","Show all compiler options."),Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file:q(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:q(6171,3,"Command_line_Options_6171","Command-line Options"),Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5:q(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:q(6180,3,"Enable_all_strict_type_checking_options_6180","Enable all strict type-checking options."),Scoped_package_detected_looking_in_0:q(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:q(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:q(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:q(6186,3,"Enable_strict_checking_of_function_types_6186","Enable strict checking of function types."),Enable_strict_checking_of_property_initialization_in_classes:q(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:q(6188,1,"Numeric_separators_are_not_allowed_here_6188","Numeric separators are not allowed here."),Multiple_consecutive_numeric_separators_are_not_permitted:q(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:q(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:q(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:q(6193,3,"Found_1_error_Watching_for_file_changes_6193","Found 1 error. Watching for file changes."),Found_0_errors_Watching_for_file_changes:q(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:q(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:q(6196,1,"_0_is_declared_but_never_used_6196","'{0}' is declared but never used.",!0),Include_modules_imported_with_json_extension:q(6197,3,"Include_modules_imported_with_json_extension_6197","Include modules imported with '.json' extension"),All_destructured_elements_are_unused:q(6198,1,"All_destructured_elements_are_unused_6198","All destructured elements are unused.",!0),All_variables_are_unused:q(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:q(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:q(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:q(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:q(6203,3,"_0_was_also_declared_here_6203","'{0}' was also declared here."),and_here:q(6204,3,"and_here_6204","and here."),All_type_parameters_are_unused:q(6205,1,"All_type_parameters_are_unused_6205","All type parameters are unused."),package_json_has_a_typesVersions_field_with_version_specific_path_mappings:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6215,3,"Using_compiler_options_of_project_reference_redirect_0_6215","Using compiler options of project reference redirect '{0}'."),Found_1_error:q(6216,3,"Found_1_error_6216","Found 1 error."),Found_0_errors:q(6217,3,"Found_0_errors_6217","Found {0} errors."),Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2:q(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:q(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:q(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:q(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:q(6222,3,"Emit_class_fields_with_Define_instead_of_Set_6222","Emit class fields with Define instead of Set."),Generates_a_CPU_profile:q(6223,3,"Generates_a_CPU_profile_6223","Generates a CPU profile."),Disable_solution_searching_for_this_project:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6235,3,"Disable_loading_referenced_projects_6235","Disable loading referenced projects."),Arguments_for_the_rest_parameter_0_were_not_provided:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6243,3,"Interpret_optional_property_types_as_written_rather_than_adding_undefined_6243","Interpret optional property types as written, rather than adding 'undefined'."),Modules:q(6244,3,"Modules_6244","Modules"),File_Management:q(6245,3,"File_Management_6245","File Management"),Emit:q(6246,3,"Emit_6246","Emit"),JavaScript_Support:q(6247,3,"JavaScript_Support_6247","JavaScript Support"),Type_Checking:q(6248,3,"Type_Checking_6248","Type Checking"),Editor_Support:q(6249,3,"Editor_Support_6249","Editor Support"),Watch_and_Build_Modes:q(6250,3,"Watch_and_Build_Modes_6250","Watch and Build Modes"),Compiler_Diagnostics:q(6251,3,"Compiler_Diagnostics_6251","Compiler Diagnostics"),Interop_Constraints:q(6252,3,"Interop_Constraints_6252","Interop Constraints"),Backwards_Compatibility:q(6253,3,"Backwards_Compatibility_6253","Backwards Compatibility"),Language_and_Environment:q(6254,3,"Language_and_Environment_6254","Language and Environment"),Projects:q(6255,3,"Projects_6255","Projects"),Output_Formatting:q(6256,3,"Output_Formatting_6256","Output Formatting"),Completeness:q(6257,3,"Completeness_6257","Completeness"),_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file:q(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:q(6259,3,"Found_1_error_in_0_6259","Found 1 error in {0}"),Found_0_errors_in_the_same_file_starting_at_Colon_1:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6281,3,"package_json_has_a_peerDependencies_field_6281","'package.json' has a 'peerDependencies' field."),Found_peerDependency_0_with_1_version:q(6282,3,"Found_peerDependency_0_with_1_version_6282","Found peerDependency '{0}' with '{1}' version."),Failed_to_find_peerDependency_0:q(6283,3,"Failed_to_find_peerDependency_0_6283","Failed to find peerDependency '{0}'."),Enable_project_compilation:q(6302,3,"Enable_project_compilation_6302","Enable project compilation"),Composite_projects_may_not_disable_declaration_emit:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6357,3,"A_non_dry_build_would_build_project_0_6357","A non-dry build would build project '{0}'"),Building_project_0:q(6358,3,"Building_project_0_6358","Building project '{0}'..."),Updating_output_timestamps_of_project_0:q(6359,3,"Updating_output_timestamps_of_project_0_6359","Updating output timestamps of project '{0}'..."),Project_0_is_up_to_date:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6370,1,"Options_0_and_1_cannot_be_combined_6370","Options '{0}' and '{1}' cannot be combined."),Updating_unchanged_output_timestamps_of_project_0:q(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:q(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:q(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:q(6379,1,"Composite_projects_may_not_disable_incremental_compilation_6379","Composite projects may not disable incremental compilation."),Specify_file_to_store_incremental_compilation_information:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6402,3,"Resolving_in_0_mode_with_conditions_1_6402","Resolving in {0} mode with conditions {1}."),Matched_0_condition_1:q(6403,3,"Matched_0_condition_1_6403","Matched '{0}' condition '{1}'."),Using_0_subpath_1_with_target_2:q(6404,3,"Using_0_subpath_1_with_target_2_6404","Using '{0}' subpath '{1}' with target '{2}'."),Saw_non_matching_condition_0:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6413,3,"Entering_conditional_exports_6413","Entering conditional exports."),Resolved_under_condition_0:q(6414,3,"Resolved_under_condition_0_6414","Resolved under condition '{0}'."),Failed_to_resolve_under_condition_0:q(6415,3,"Failed_to_resolve_under_condition_0_6415","Failed to resolve under condition '{0}'."),Exiting_conditional_exports:q(6416,3,"Exiting_conditional_exports_6416","Exiting conditional exports."),Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0:q(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:q(6418,3,"Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0_6418","Searching all ancestor node_modules directories for fallback extensions: {0}."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors:q(6419,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors_6419","Project '{0}' is out of date because buildinfo file '{1}' indicates that program needs to report errors."),Project_0_is_out_of_date_because_1:q(6420,3,"Project_0_is_out_of_date_because_1_6420","Project '{0}' is out of date because {1}."),Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_in_output_files:q(6421,3,"Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_i_6421","Rewrite '.ts', '.tsx', '.mts', and '.cts' file extensions in relative import paths to their JavaScript equivalent in output files."),The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6602,3,"Allow_accessing_UMD_globals_from_modules_6602","Allow accessing UMD globals from modules."),Disable_error_reporting_for_unreachable_code:q(6603,3,"Disable_error_reporting_for_unreachable_code_6603","Disable error reporting for unreachable code."),Disable_error_reporting_for_unused_labels:q(6604,3,"Disable_error_reporting_for_unused_labels_6604","Disable error reporting for unused labels."),Ensure_use_strict_is_always_emitted:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6614,3,"Create_sourcemaps_for_d_ts_files_6614","Create sourcemaps for d.ts files."),Output_compiler_performance_information_after_building:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6627,3,"Filters_results_from_the_include_option_6627","Filters results from the `include` option."),Remove_a_list_of_directories_from_the_watch_process:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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."),Skip_building_downstream_projects_on_error_in_upstream_project:q(6640,3,"Skip_building_downstream_projects_on_error_in_upstream_project_6640","Skip building downstream projects on error in upstream project."),Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6659,3,"Set_the_newline_character_for_emitting_files_6659","Set the newline character for emitting files."),Disable_emitting_files_from_a_compilation:q(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:q(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:q(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:q(6663,3,"Disable_truncating_types_in_error_messages_6663","Disable truncating types in error messages."),Enable_error_reporting_for_fallthrough_cases_in_switch_statements:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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 ''s from expanding the number of files TypeScript should add to a project."),Disable_strict_checking_of_generic_signatures_in_function_types:q(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:q(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:q(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:q(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:q(6677,3,"Deprecated_setting_Use_outFile_instead_6677","Deprecated setting. Use 'outFile' instead."),Specify_an_output_folder_for_all_emitted_files:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6688,3,"Disable_emitting_comments_6688","Disable emitting comments."),Enable_importing_json_files:q(6689,3,"Enable_importing_json_files_6689","Enable importing .json files."),Specify_the_root_folder_within_your_source_files:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(6712,3,"Emit_ECMAScript_standard_compliant_class_fields_6712","Emit ECMAScript-standard-compliant class fields."),Enable_verbose_logging:q(6713,3,"Enable_verbose_logging_6713","Enable verbose logging."),Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality:q(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:q(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:q(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:q(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:q(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."),Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any:q(6720,3,"Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any_6720","Built-in iterators are instantiated with a 'TReturn' type of 'undefined' instead of 'any'."),Default_catch_clause_variables_as_unknown_instead_of_any:q(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:q(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:q(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)."),Check_side_effect_imports:q(6806,3,"Check_side_effect_imports_6806","Check side effect imports."),This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2:q(6807,1,"This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2_6807","This operation can be simplified. This shift is identical to `{0} {1} {2}`."),one_of_Colon:q(6900,3,"one_of_Colon_6900","one of:"),one_or_more_Colon:q(6901,3,"one_or_more_Colon_6901","one or more:"),type_Colon:q(6902,3,"type_Colon_6902","type:"),default_Colon:q(6903,3,"default_Colon_6903","default:"),module_system_or_esModuleInterop:q(6904,3,"module_system_or_esModuleInterop_6904",'module === "system" or esModuleInterop'),false_unless_strict_is_set:q(6905,3,"false_unless_strict_is_set_6905","`false`, unless `strict` is set"),false_unless_composite_is_set:q(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:q(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:q(6908,3,"if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk_6908",'`[]` if `files` is specified, otherwise `["**/*"]`'),true_if_composite_false_otherwise:q(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:q(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:q(6911,3,"Computed_from_the_list_of_input_files_6911","Computed from the list of input files"),Platform_specific:q(6912,3,"Platform_specific_6912","Platform specific"),You_can_learn_about_all_of_the_compiler_options_at_0:q(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:q(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:q(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:q(6916,3,"COMMON_COMMANDS_6916","COMMON COMMANDS"),ALL_COMPILER_OPTIONS:q(6917,3,"ALL_COMPILER_OPTIONS_6917","ALL COMPILER OPTIONS"),WATCH_OPTIONS:q(6918,3,"WATCH_OPTIONS_6918","WATCH OPTIONS"),BUILD_OPTIONS:q(6919,3,"BUILD_OPTIONS_6919","BUILD OPTIONS"),COMMON_COMPILER_OPTIONS:q(6920,3,"COMMON_COMPILER_OPTIONS_6920","COMMON COMPILER OPTIONS"),COMMAND_LINE_FLAGS:q(6921,3,"COMMAND_LINE_FLAGS_6921","COMMAND LINE FLAGS"),tsc_Colon_The_TypeScript_Compiler:q(6922,3,"tsc_Colon_The_TypeScript_Compiler_6922","tsc: The TypeScript Compiler"),Compiles_the_current_project_tsconfig_json_in_the_working_directory:q(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:q(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:q(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:q(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:q(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:q(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:q(6929,3,"Compiles_the_current_project_with_additional_settings_6929","Compiles the current project, with additional settings."),true_for_ES2022_and_above_including_ESNext:q(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:q(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:q(7005,1,"Variable_0_implicitly_has_an_1_type_7005","Variable '{0}' implicitly has an '{1}' type."),Parameter_0_implicitly_has_an_1_type:q(7006,1,"Parameter_0_implicitly_has_an_1_type_7006","Parameter '{0}' implicitly has an '{1}' type."),Member_0_implicitly_has_an_1_type:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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_Consider_supplying_a_return_type_annotation:q(7025,1,"Generator_implicitly_has_yield_type_0_Consider_supplying_a_return_type_annotation_7025","Generator implicitly has yield type '{0}'. Consider supplying a return type annotation."),JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists:q(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:q(7027,1,"Unreachable_code_detected_7027","Unreachable code detected.",!0),Unused_label:q(7028,1,"Unused_label_7028","Unused label.",!0),Fallthrough_case_in_switch:q(7029,1,"Fallthrough_case_in_switch_7029","Fallthrough case in switch."),Not_all_code_paths_return_a_value:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(8019,3,"Report_errors_in_js_files_8019","Report errors in .js files."),JSDoc_types_can_only_be_used_inside_documentation_comments:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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_type_annotation_with_isolatedDeclarations:q(9009,1,"At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9009","At least one accessor must have an explicit type annotation with --isolatedDeclarations."),Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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_its_type_This_is_not_supported_with_isolatedDeclarations:q(9025,1,"Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_sup_9025","Declaration emit for this parameter requires implicitly adding undefined to its type. This is not supported with --isolatedDeclarations."),Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_supported_with_isolatedDeclarations:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(17014,1,"JSX_fragment_has_no_corresponding_closing_tag_17014","JSX fragment has no corresponding closing tag."),Expected_corresponding_closing_tag_for_JSX_fragment:q(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:q(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:q(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:q(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:q(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:q(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:q(17021,1,"Unicode_escape_sequence_cannot_appear_here_17021","Unicode escape sequence cannot appear here."),Circularity_detected_while_resolving_configuration_Colon_0:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(80010,2,"JSDoc_typedefs_may_be_converted_to_TypeScript_types_80010","JSDoc typedefs may be converted to TypeScript types."),Add_missing_super_call:q(90001,3,"Add_missing_super_call_90001","Add missing 'super()' call"),Make_super_call_the_first_statement_in_the_constructor:q(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:q(90003,3,"Change_extends_to_implements_90003","Change 'extends' to 'implements'"),Remove_unused_declaration_for_Colon_0:q(90004,3,"Remove_unused_declaration_for_Colon_0_90004","Remove unused declaration for: '{0}'"),Remove_import_from_0:q(90005,3,"Remove_import_from_0_90005","Remove import from '{0}'"),Implement_interface_0:q(90006,3,"Implement_interface_0_90006","Implement interface '{0}'"),Implement_inherited_abstract_class:q(90007,3,"Implement_inherited_abstract_class_90007","Implement inherited abstract class"),Add_0_to_unresolved_variable:q(90008,3,"Add_0_to_unresolved_variable_90008","Add '{0}.' to unresolved variable"),Remove_variable_statement:q(90010,3,"Remove_variable_statement_90010","Remove variable statement"),Remove_template_tag:q(90011,3,"Remove_template_tag_90011","Remove template tag"),Remove_type_parameters:q(90012,3,"Remove_type_parameters_90012","Remove type parameters"),Import_0_from_1:q(90013,3,"Import_0_from_1_90013",`Import '{0}' from "{1}"`),Change_0_to_1:q(90014,3,"Change_0_to_1_90014","Change '{0}' to '{1}'"),Declare_property_0:q(90016,3,"Declare_property_0_90016","Declare property '{0}'"),Add_index_signature_for_property_0:q(90017,3,"Add_index_signature_for_property_0_90017","Add index signature for property '{0}'"),Disable_checking_for_this_file:q(90018,3,"Disable_checking_for_this_file_90018","Disable checking for this file"),Ignore_this_error_message:q(90019,3,"Ignore_this_error_message_90019","Ignore this error message"),Initialize_property_0_in_the_constructor:q(90020,3,"Initialize_property_0_in_the_constructor_90020","Initialize property '{0}' in the constructor"),Initialize_static_property_0:q(90021,3,"Initialize_static_property_0_90021","Initialize static property '{0}'"),Change_spelling_to_0:q(90022,3,"Change_spelling_to_0_90022","Change spelling to '{0}'"),Declare_method_0:q(90023,3,"Declare_method_0_90023","Declare method '{0}'"),Declare_static_method_0:q(90024,3,"Declare_static_method_0_90024","Declare static method '{0}'"),Prefix_0_with_an_underscore:q(90025,3,"Prefix_0_with_an_underscore_90025","Prefix '{0}' with an underscore"),Rewrite_as_the_indexed_access_type_0:q(90026,3,"Rewrite_as_the_indexed_access_type_0_90026","Rewrite as the indexed access type '{0}'"),Declare_static_property_0:q(90027,3,"Declare_static_property_0_90027","Declare static property '{0}'"),Call_decorator_expression:q(90028,3,"Call_decorator_expression_90028","Call decorator expression"),Add_async_modifier_to_containing_function:q(90029,3,"Add_async_modifier_to_containing_function_90029","Add async modifier to containing function"),Replace_infer_0_with_unknown:q(90030,3,"Replace_infer_0_with_unknown_90030","Replace 'infer {0}' with 'unknown'"),Replace_all_unused_infer_with_unknown:q(90031,3,"Replace_all_unused_infer_with_unknown_90031","Replace all unused 'infer' with 'unknown'"),Add_parameter_name:q(90034,3,"Add_parameter_name_90034","Add parameter name"),Declare_private_property_0:q(90035,3,"Declare_private_property_0_90035","Declare private property '{0}'"),Replace_0_with_Promise_1:q(90036,3,"Replace_0_with_Promise_1_90036","Replace '{0}' with 'Promise<{1}>'"),Fix_all_incorrect_return_type_of_an_async_functions:q(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:q(90038,3,"Declare_private_method_0_90038","Declare private method '{0}'"),Remove_unused_destructuring_declaration:q(90039,3,"Remove_unused_destructuring_declaration_90039","Remove unused destructuring declaration"),Remove_unused_declarations_for_Colon_0:q(90041,3,"Remove_unused_declarations_for_Colon_0_90041","Remove unused declarations for: '{0}'"),Declare_a_private_field_named_0:q(90053,3,"Declare_a_private_field_named_0_90053","Declare a private field named '{0}'."),Includes_imports_of_types_referenced_by_0:q(90054,3,"Includes_imports_of_types_referenced_by_0_90054","Includes imports of types referenced by '{0}'"),Remove_type_from_import_declaration_from_0:q(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:q(90056,3,"Remove_type_from_import_of_0_from_1_90056",`Remove 'type' from import of '{0}' from "{1}"`),Add_import_from_0:q(90057,3,"Add_import_from_0_90057",'Add import from "{0}"'),Update_import_from_0:q(90058,3,"Update_import_from_0_90058",'Update import from "{0}"'),Export_0_from_module_1:q(90059,3,"Export_0_from_module_1_90059","Export '{0}' from module '{1}'"),Export_all_referenced_locals:q(90060,3,"Export_all_referenced_locals_90060","Export all referenced locals"),Update_modifiers_of_0:q(90061,3,"Update_modifiers_of_0_90061","Update modifiers of '{0}'"),Add_annotation_of_type_0:q(90062,3,"Add_annotation_of_type_0_90062","Add annotation of type '{0}'"),Add_return_type_0:q(90063,3,"Add_return_type_0_90063","Add return type '{0}'"),Extract_base_class_to_variable:q(90064,3,"Extract_base_class_to_variable_90064","Extract base class to variable"),Extract_default_export_to_variable:q(90065,3,"Extract_default_export_to_variable_90065","Extract default export to variable"),Extract_binding_expressions_to_variable:q(90066,3,"Extract_binding_expressions_to_variable_90066","Extract binding expressions to variable"),Add_all_missing_type_annotations:q(90067,3,"Add_all_missing_type_annotations_90067","Add all missing type annotations"),Add_satisfies_and_an_inline_type_assertion_with_0:q(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:q(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:q(90070,3,"Mark_array_literal_as_const_90070","Mark array literal as const"),Annotate_types_of_properties_expando_function_in_a_namespace:q(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:q(95001,3,"Convert_function_to_an_ES2015_class_95001","Convert function to an ES2015 class"),Convert_0_to_1_in_0:q(95003,3,"Convert_0_to_1_in_0_95003","Convert '{0}' to '{1} in {0}'"),Extract_to_0_in_1:q(95004,3,"Extract_to_0_in_1_95004","Extract to {0} in {1}"),Extract_function:q(95005,3,"Extract_function_95005","Extract function"),Extract_constant:q(95006,3,"Extract_constant_95006","Extract constant"),Extract_to_0_in_enclosing_scope:q(95007,3,"Extract_to_0_in_enclosing_scope_95007","Extract to {0} in enclosing scope"),Extract_to_0_in_1_scope:q(95008,3,"Extract_to_0_in_1_scope_95008","Extract to {0} in {1} scope"),Annotate_with_type_from_JSDoc:q(95009,3,"Annotate_with_type_from_JSDoc_95009","Annotate with type from JSDoc"),Infer_type_of_0_from_usage:q(95011,3,"Infer_type_of_0_from_usage_95011","Infer type of '{0}' from usage"),Infer_parameter_types_from_usage:q(95012,3,"Infer_parameter_types_from_usage_95012","Infer parameter types from usage"),Convert_to_default_import:q(95013,3,"Convert_to_default_import_95013","Convert to default import"),Install_0:q(95014,3,"Install_0_95014","Install '{0}'"),Replace_import_with_0:q(95015,3,"Replace_import_with_0_95015","Replace import with '{0}'."),Use_synthetic_default_member:q(95016,3,"Use_synthetic_default_member_95016","Use synthetic 'default' member."),Convert_to_ES_module:q(95017,3,"Convert_to_ES_module_95017","Convert to ES module"),Add_undefined_type_to_property_0:q(95018,3,"Add_undefined_type_to_property_0_95018","Add 'undefined' type to property '{0}'"),Add_initializer_to_property_0:q(95019,3,"Add_initializer_to_property_0_95019","Add initializer to property '{0}'"),Add_definite_assignment_assertion_to_property_0:q(95020,3,"Add_definite_assignment_assertion_to_property_0_95020","Add definite assignment assertion to property '{0}'"),Convert_all_type_literals_to_mapped_type:q(95021,3,"Convert_all_type_literals_to_mapped_type_95021","Convert all type literals to mapped type"),Add_all_missing_members:q(95022,3,"Add_all_missing_members_95022","Add all missing members"),Infer_all_types_from_usage:q(95023,3,"Infer_all_types_from_usage_95023","Infer all types from usage"),Delete_all_unused_declarations:q(95024,3,"Delete_all_unused_declarations_95024","Delete all unused declarations"),Prefix_all_unused_declarations_with_where_possible:q(95025,3,"Prefix_all_unused_declarations_with_where_possible_95025","Prefix all unused declarations with '_' where possible"),Fix_all_detected_spelling_errors:q(95026,3,"Fix_all_detected_spelling_errors_95026","Fix all detected spelling errors"),Add_initializers_to_all_uninitialized_properties:q(95027,3,"Add_initializers_to_all_uninitialized_properties_95027","Add initializers to all uninitialized properties"),Add_definite_assignment_assertions_to_all_uninitialized_properties:q(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:q(95029,3,"Add_undefined_type_to_all_uninitialized_properties_95029","Add undefined type to all uninitialized properties"),Change_all_jsdoc_style_types_to_TypeScript:q(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:q(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:q(95032,3,"Implement_all_unimplemented_interfaces_95032","Implement all unimplemented interfaces"),Install_all_missing_types_packages:q(95033,3,"Install_all_missing_types_packages_95033","Install all missing types packages"),Rewrite_all_as_indexed_access_types:q(95034,3,"Rewrite_all_as_indexed_access_types_95034","Rewrite all as indexed access types"),Convert_all_to_default_imports:q(95035,3,"Convert_all_to_default_imports_95035","Convert all to default imports"),Make_all_super_calls_the_first_statement_in_their_constructor:q(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:q(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:q(95038,3,"Change_all_extended_interfaces_to_implements_95038","Change all extended interfaces to 'implements'"),Add_all_missing_super_calls:q(95039,3,"Add_all_missing_super_calls_95039","Add all missing super calls"),Implement_all_inherited_abstract_classes:q(95040,3,"Implement_all_inherited_abstract_classes_95040","Implement all inherited abstract classes"),Add_all_missing_async_modifiers:q(95041,3,"Add_all_missing_async_modifiers_95041","Add all missing 'async' modifiers"),Add_ts_ignore_to_all_error_messages:q(95042,3,"Add_ts_ignore_to_all_error_messages_95042","Add '@ts-ignore' to all error messages"),Annotate_everything_with_types_from_JSDoc:q(95043,3,"Annotate_everything_with_types_from_JSDoc_95043","Annotate everything with types from JSDoc"),Add_to_all_uncalled_decorators:q(95044,3,"Add_to_all_uncalled_decorators_95044","Add '()' to all uncalled decorators"),Convert_all_constructor_functions_to_classes:q(95045,3,"Convert_all_constructor_functions_to_classes_95045","Convert all constructor functions to classes"),Generate_get_and_set_accessors:q(95046,3,"Generate_get_and_set_accessors_95046","Generate 'get' and 'set' accessors"),Convert_require_to_import:q(95047,3,"Convert_require_to_import_95047","Convert 'require' to 'import'"),Convert_all_require_to_import:q(95048,3,"Convert_all_require_to_import_95048","Convert all 'require' to 'import'"),Move_to_a_new_file:q(95049,3,"Move_to_a_new_file_95049","Move to a new file"),Remove_unreachable_code:q(95050,3,"Remove_unreachable_code_95050","Remove unreachable code"),Remove_all_unreachable_code:q(95051,3,"Remove_all_unreachable_code_95051","Remove all unreachable code"),Add_missing_typeof:q(95052,3,"Add_missing_typeof_95052","Add missing 'typeof'"),Remove_unused_label:q(95053,3,"Remove_unused_label_95053","Remove unused label"),Remove_all_unused_labels:q(95054,3,"Remove_all_unused_labels_95054","Remove all unused labels"),Convert_0_to_mapped_object_type:q(95055,3,"Convert_0_to_mapped_object_type_95055","Convert '{0}' to mapped object type"),Convert_namespace_import_to_named_imports:q(95056,3,"Convert_namespace_import_to_named_imports_95056","Convert namespace import to named imports"),Convert_named_imports_to_namespace_import:q(95057,3,"Convert_named_imports_to_namespace_import_95057","Convert named imports to namespace import"),Add_or_remove_braces_in_an_arrow_function:q(95058,3,"Add_or_remove_braces_in_an_arrow_function_95058","Add or remove braces in an arrow function"),Add_braces_to_arrow_function:q(95059,3,"Add_braces_to_arrow_function_95059","Add braces to arrow function"),Remove_braces_from_arrow_function:q(95060,3,"Remove_braces_from_arrow_function_95060","Remove braces from arrow function"),Convert_default_export_to_named_export:q(95061,3,"Convert_default_export_to_named_export_95061","Convert default export to named export"),Convert_named_export_to_default_export:q(95062,3,"Convert_named_export_to_default_export_95062","Convert named export to default export"),Add_missing_enum_member_0:q(95063,3,"Add_missing_enum_member_0_95063","Add missing enum member '{0}'"),Add_all_missing_imports:q(95064,3,"Add_all_missing_imports_95064","Add all missing imports"),Convert_to_async_function:q(95065,3,"Convert_to_async_function_95065","Convert to async function"),Convert_all_to_async_functions:q(95066,3,"Convert_all_to_async_functions_95066","Convert all to async functions"),Add_missing_call_parentheses:q(95067,3,"Add_missing_call_parentheses_95067","Add missing call parentheses"),Add_all_missing_call_parentheses:q(95068,3,"Add_all_missing_call_parentheses_95068","Add all missing call parentheses"),Add_unknown_conversion_for_non_overlapping_types:q(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:q(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:q(95071,3,"Add_missing_new_operator_to_call_95071","Add missing 'new' operator to call"),Add_missing_new_operator_to_all_calls:q(95072,3,"Add_missing_new_operator_to_all_calls_95072","Add missing 'new' operator to all calls"),Add_names_to_all_parameters_without_names:q(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:q(95074,3,"Enable_the_experimentalDecorators_option_in_your_configuration_file_95074","Enable the 'experimentalDecorators' option in your configuration file"),Convert_parameters_to_destructured_object:q(95075,3,"Convert_parameters_to_destructured_object_95075","Convert parameters to destructured object"),Extract_type:q(95077,3,"Extract_type_95077","Extract type"),Extract_to_type_alias:q(95078,3,"Extract_to_type_alias_95078","Extract to type alias"),Extract_to_typedef:q(95079,3,"Extract_to_typedef_95079","Extract to typedef"),Infer_this_type_of_0_from_usage:q(95080,3,"Infer_this_type_of_0_from_usage_95080","Infer 'this' type of '{0}' from usage"),Add_const_to_unresolved_variable:q(95081,3,"Add_const_to_unresolved_variable_95081","Add 'const' to unresolved variable"),Add_const_to_all_unresolved_variables:q(95082,3,"Add_const_to_all_unresolved_variables_95082","Add 'const' to all unresolved variables"),Add_await:q(95083,3,"Add_await_95083","Add 'await'"),Add_await_to_initializer_for_0:q(95084,3,"Add_await_to_initializer_for_0_95084","Add 'await' to initializer for '{0}'"),Fix_all_expressions_possibly_missing_await:q(95085,3,"Fix_all_expressions_possibly_missing_await_95085","Fix all expressions possibly missing 'await'"),Remove_unnecessary_await:q(95086,3,"Remove_unnecessary_await_95086","Remove unnecessary 'await'"),Remove_all_unnecessary_uses_of_await:q(95087,3,"Remove_all_unnecessary_uses_of_await_95087","Remove all unnecessary uses of 'await'"),Enable_the_jsx_flag_in_your_configuration_file:q(95088,3,"Enable_the_jsx_flag_in_your_configuration_file_95088","Enable the '--jsx' flag in your configuration file"),Add_await_to_initializers:q(95089,3,"Add_await_to_initializers_95089","Add 'await' to initializers"),Extract_to_interface:q(95090,3,"Extract_to_interface_95090","Extract to interface"),Convert_to_a_bigint_numeric_literal:q(95091,3,"Convert_to_a_bigint_numeric_literal_95091","Convert to a bigint numeric literal"),Convert_all_to_bigint_numeric_literals:q(95092,3,"Convert_all_to_bigint_numeric_literals_95092","Convert all to bigint numeric literals"),Convert_const_to_let:q(95093,3,"Convert_const_to_let_95093","Convert 'const' to 'let'"),Prefix_with_declare:q(95094,3,"Prefix_with_declare_95094","Prefix with 'declare'"),Prefix_all_incorrect_property_declarations_with_declare:q(95095,3,"Prefix_all_incorrect_property_declarations_with_declare_95095","Prefix all incorrect property declarations with 'declare'"),Convert_to_template_string:q(95096,3,"Convert_to_template_string_95096","Convert to template string"),Add_export_to_make_this_file_into_a_module:q(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:q(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:q(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:q(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:q(95101,3,"Convert_all_invalid_characters_to_HTML_entity_code_95101","Convert all invalid characters to HTML entity code"),Convert_all_const_to_let:q(95102,3,"Convert_all_const_to_let_95102","Convert all 'const' to 'let'"),Convert_function_expression_0_to_arrow_function:q(95105,3,"Convert_function_expression_0_to_arrow_function_95105","Convert function expression '{0}' to arrow function"),Convert_function_declaration_0_to_arrow_function:q(95106,3,"Convert_function_declaration_0_to_arrow_function_95106","Convert function declaration '{0}' to arrow function"),Fix_all_implicit_this_errors:q(95107,3,"Fix_all_implicit_this_errors_95107","Fix all implicit-'this' errors"),Wrap_invalid_character_in_an_expression_container:q(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:q(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:q(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:q(95111,3,"Add_a_return_statement_95111","Add a return statement"),Remove_braces_from_arrow_function_body:q(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:q(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:q(95114,3,"Add_all_missing_return_statement_95114","Add all missing return statement"),Remove_braces_from_all_arrow_function_bodies_with_relevant_issues:q(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:q(95116,3,"Wrap_all_object_literal_with_parentheses_95116","Wrap all object literal with parentheses"),Move_labeled_tuple_element_modifiers_to_labels:q(95117,3,"Move_labeled_tuple_element_modifiers_to_labels_95117","Move labeled tuple element modifiers to labels"),Convert_overload_list_to_single_signature:q(95118,3,"Convert_overload_list_to_single_signature_95118","Convert overload list to single signature"),Generate_get_and_set_accessors_for_all_overriding_properties:q(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:q(95120,3,"Wrap_in_JSX_fragment_95120","Wrap in JSX fragment"),Wrap_all_unparented_JSX_in_JSX_fragment:q(95121,3,"Wrap_all_unparented_JSX_in_JSX_fragment_95121","Wrap all unparented JSX in JSX fragment"),Convert_arrow_function_or_function_expression:q(95122,3,"Convert_arrow_function_or_function_expression_95122","Convert arrow function or function expression"),Convert_to_anonymous_function:q(95123,3,"Convert_to_anonymous_function_95123","Convert to anonymous function"),Convert_to_named_function:q(95124,3,"Convert_to_named_function_95124","Convert to named function"),Convert_to_arrow_function:q(95125,3,"Convert_to_arrow_function_95125","Convert to arrow function"),Remove_parentheses:q(95126,3,"Remove_parentheses_95126","Remove parentheses"),Could_not_find_a_containing_arrow_function:q(95127,3,"Could_not_find_a_containing_arrow_function_95127","Could not find a containing arrow function"),Containing_function_is_not_an_arrow_function:q(95128,3,"Containing_function_is_not_an_arrow_function_95128","Containing function is not an arrow function"),Could_not_find_export_statement:q(95129,3,"Could_not_find_export_statement_95129","Could not find export statement"),This_file_already_has_a_default_export:q(95130,3,"This_file_already_has_a_default_export_95130","This file already has a default export"),Could_not_find_import_clause:q(95131,3,"Could_not_find_import_clause_95131","Could not find import clause"),Could_not_find_namespace_import_or_named_imports:q(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:q(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:q(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:q(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:q(95136,3,"Name_is_not_valid_95136","Name is not valid"),Can_only_convert_property_with_modifier:q(95137,3,"Can_only_convert_property_with_modifier_95137","Can only convert property with modifier"),Switch_each_misused_0_to_1:q(95138,3,"Switch_each_misused_0_to_1_95138","Switch each misused '{0}' to '{1}'"),Convert_to_optional_chain_expression:q(95139,3,"Convert_to_optional_chain_expression_95139","Convert to optional chain expression"),Could_not_find_convertible_access_expression:q(95140,3,"Could_not_find_convertible_access_expression_95140","Could not find convertible access expression"),Could_not_find_matching_access_expressions:q(95141,3,"Could_not_find_matching_access_expressions_95141","Could not find matching access expressions"),Can_only_convert_logical_AND_access_chains:q(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:q(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:q(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:q(95145,3,"Use_element_access_for_0_95145","Use element access for '{0}'"),Use_element_access_for_all_undeclared_properties:q(95146,3,"Use_element_access_for_all_undeclared_properties_95146","Use element access for all undeclared properties."),Delete_all_unused_imports:q(95147,3,"Delete_all_unused_imports_95147","Delete all unused imports"),Infer_function_return_type:q(95148,3,"Infer_function_return_type_95148","Infer function return type"),Return_type_must_be_inferred_from_a_function:q(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:q(95150,3,"Could_not_determine_function_return_type_95150","Could not determine function return type"),Could_not_convert_to_arrow_function:q(95151,3,"Could_not_convert_to_arrow_function_95151","Could not convert to arrow function"),Could_not_convert_to_named_function:q(95152,3,"Could_not_convert_to_named_function_95152","Could not convert to named function"),Could_not_convert_to_anonymous_function:q(95153,3,"Could_not_convert_to_anonymous_function_95153","Could not convert to anonymous function"),Can_only_convert_string_concatenations_and_string_literals:q(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:q(95155,3,"Selection_is_not_a_valid_statement_or_statements_95155","Selection is not a valid statement or statements"),Add_missing_function_declaration_0:q(95156,3,"Add_missing_function_declaration_0_95156","Add missing function declaration '{0}'"),Add_all_missing_function_declarations:q(95157,3,"Add_all_missing_function_declarations_95157","Add all missing function declarations"),Method_not_implemented:q(95158,3,"Method_not_implemented_95158","Method not implemented."),Function_not_implemented:q(95159,3,"Function_not_implemented_95159","Function not implemented."),Add_override_modifier:q(95160,3,"Add_override_modifier_95160","Add 'override' modifier"),Remove_override_modifier:q(95161,3,"Remove_override_modifier_95161","Remove 'override' modifier"),Add_all_missing_override_modifiers:q(95162,3,"Add_all_missing_override_modifiers_95162","Add all missing 'override' modifiers"),Remove_all_unnecessary_override_modifiers:q(95163,3,"Remove_all_unnecessary_override_modifiers_95163","Remove all unnecessary 'override' modifiers"),Can_only_convert_named_export:q(95164,3,"Can_only_convert_named_export_95164","Can only convert named export"),Add_missing_properties:q(95165,3,"Add_missing_properties_95165","Add missing properties"),Add_all_missing_properties:q(95166,3,"Add_all_missing_properties_95166","Add all missing properties"),Add_missing_attributes:q(95167,3,"Add_missing_attributes_95167","Add missing attributes"),Add_all_missing_attributes:q(95168,3,"Add_all_missing_attributes_95168","Add all missing attributes"),Add_undefined_to_optional_property_type:q(95169,3,"Add_undefined_to_optional_property_type_95169","Add 'undefined' to optional property type"),Convert_named_imports_to_default_import:q(95170,3,"Convert_named_imports_to_default_import_95170","Convert named imports to default import"),Delete_unused_param_tag_0:q(95171,3,"Delete_unused_param_tag_0_95171","Delete unused '@param' tag '{0}'"),Delete_all_unused_param_tags:q(95172,3,"Delete_all_unused_param_tags_95172","Delete all unused '@param' tags"),Rename_param_tag_name_0_to_1:q(95173,3,"Rename_param_tag_name_0_to_1_95173","Rename '@param' tag name '{0}' to '{1}'"),Use_0:q(95174,3,"Use_0_95174","Use `{0}`."),Use_Number_isNaN_in_all_conditions:q(95175,3,"Use_Number_isNaN_in_all_conditions_95175","Use `Number.isNaN` in all conditions."),Convert_typedef_to_TypeScript_type:q(95176,3,"Convert_typedef_to_TypeScript_type_95176","Convert typedef to TypeScript type."),Convert_all_typedef_to_TypeScript_types:q(95177,3,"Convert_all_typedef_to_TypeScript_types_95177","Convert all typedef to TypeScript types."),Move_to_file:q(95178,3,"Move_to_file_95178","Move to file"),Cannot_move_to_file_selected_file_is_invalid:q(95179,3,"Cannot_move_to_file_selected_file_is_invalid_95179","Cannot move to file, selected file is invalid"),Use_import_type:q(95180,3,"Use_import_type_95180","Use 'import type'"),Use_type_0:q(95181,3,"Use_type_0_95181","Use 'type {0}'"),Fix_all_with_type_only_imports:q(95182,3,"Fix_all_with_type_only_imports_95182","Fix all with type-only imports"),Cannot_move_statements_to_the_selected_file:q(95183,3,"Cannot_move_statements_to_the_selected_file_95183","Cannot move statements to the selected file"),Inline_variable:q(95184,3,"Inline_variable_95184","Inline variable"),Could_not_find_variable_to_inline:q(95185,3,"Could_not_find_variable_to_inline_95185","Could not find variable to inline."),Variables_with_multiple_declarations_cannot_be_inlined:q(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:q(95187,3,"Add_missing_comma_for_object_member_completion_0_95187","Add missing comma for object member completion '{0}'."),Add_missing_parameter_to_0:q(95188,3,"Add_missing_parameter_to_0_95188","Add missing parameter to '{0}'"),Add_missing_parameters_to_0:q(95189,3,"Add_missing_parameters_to_0_95189","Add missing parameters to '{0}'"),Add_all_missing_parameters:q(95190,3,"Add_all_missing_parameters_95190","Add all missing parameters"),Add_optional_parameter_to_0:q(95191,3,"Add_optional_parameter_to_0_95191","Add optional parameter to '{0}'"),Add_optional_parameters_to_0:q(95192,3,"Add_optional_parameters_to_0_95192","Add optional parameters to '{0}'"),Add_all_optional_parameters:q(95193,3,"Add_all_optional_parameters_95193","Add all optional parameters"),Wrap_in_parentheses:q(95194,3,"Wrap_in_parentheses_95194","Wrap in parentheses"),Wrap_all_invalid_decorator_expressions_in_parentheses:q(95195,3,"Wrap_all_invalid_decorator_expressions_in_parentheses_95195","Wrap all invalid decorator expressions in parentheses"),Add_resolution_mode_import_attribute:q(95196,3,"Add_resolution_mode_import_attribute_95196","Add 'resolution-mode' import attribute"),Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it:q(95197,3,"Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it_95197","Add 'resolution-mode' import attribute to all type-only imports that need it"),No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(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:q(18046,1,"_0_is_of_type_unknown_18046","'{0}' is of type 'unknown'."),_0_is_possibly_null:q(18047,1,"_0_is_possibly_null_18047","'{0}' is possibly 'null'."),_0_is_possibly_undefined:q(18048,1,"_0_is_possibly_undefined_18048","'{0}' is possibly 'undefined'."),_0_is_possibly_null_or_undefined:q(18049,1,"_0_is_possibly_null_or_undefined_18049","'{0}' is possibly 'null' or 'undefined'."),The_value_0_cannot_be_used_here:q(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:q(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:q(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:q(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:q(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:q(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."),String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es2020:q(18057,1,"String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es_18057","String literal import and export names are not supported when the '--module' flag is set to 'es2015' or 'es2020'.")};function l1(e){return e>=80}function haa(e){return e===32||l1(e)}var tdr={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},_aa=new Map(Object.entries(tdr)),Bsi=new Map(Object.entries({...tdr,"{":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,">":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})),vsi=new Map([[100,1],[103,2],[105,4],[109,8],[115,16],[117,32],[118,64],[121,128]]),yaa=new Map([[1,nMe.RegularExpressionFlagsHasIndices],[16,nMe.RegularExpressionFlagsDotAll],[32,nMe.RegularExpressionFlagsUnicode],[64,nMe.RegularExpressionFlagsUnicodeSets],[128,nMe.RegularExpressionFlagsSticky]]),baa=[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],Eaa=[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],Baa=[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],vaa=[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],Saa=/^\/\/\/?\s*@(ts-expect-error|ts-ignore)/,waa=/^(?:\/|\*)*\s*@(ts-expect-error|ts-ignore)/,Taa=/@(?:see|link)/i;function QCt(e,t){if(e=2?QCt(e,Baa):QCt(e,baa)}function Raa(e,t){return t>=2?QCt(e,vaa):QCt(e,Eaa)}function Ssi(e){let t=[];return e.forEach((r,s)=>{t[r]=s}),t}var Daa=Ssi(Bsi);function cy(e){return Daa[e]}function wsi(e){return Bsi.get(e)}var Phl=Ssi(vsi);function Xni(e){return vsi.get(e)}function Tsi(e){let t=[],r=0,s=0;for(;r127&&c9(a)&&(t.push(s),s=r);break}}return t.push(s),t}function xaa(e,t,r,s,a){(t<0||t>=e.length)&&(a?t=t<0?0:t>=e.length?e.length-1:t:ho.fail(`Bad line number. Line: ${t}, lineStarts.length: ${e.length} , line map is correct? ${s!==void 0?Zoa(e,Tsi(s)):"unknown"}`));let o=e[t]+r;return a?o>e[t+1]?e[t+1]:typeof s=="string"&&o>s.length?s.length:o:(t=8192&&e<=8203||e===8239||e===8287||e===12288||e===65279}function c9(e){return e===10||e===13||e===8232||e===8233}function Gse(e){return e>=48&&e<=57}function uAr(e){return Gse(e)||e>=65&&e<=70||e>=97&&e<=102}function rdr(e){return e>=65&&e<=90||e>=97&&e<=122}function Rsi(e){return rdr(e)||Gse(e)||e===95}function gAr(e){return e>=48&&e<=55}function qU(e,t,r,s,a){if(BMe(t))return t;let o=!1;for(;;){let g=e.charCodeAt(t);switch(g){case 13:e.charCodeAt(t+1)===10&&t++;case 10:if(t++,r)return t;o=!!a;continue;case 9:case 11:case 12:case 32:t++;continue;case 47:if(s)break;if(e.charCodeAt(t+1)===47){for(t+=2;t127&&hSe(g)){t++;continue}break}return t}}var GCt=7;function dfe(e,t){if(ho.assert(t>=0),t===0||c9(e.charCodeAt(t-1))){let r=e.charCodeAt(t);if(t+GCt=0&&r127&&hSe(T)){B&&c9(T)&&(y=!0),r++;continue}break e}}return B&&(k=a(p,f,m,y,o,k)),k}function Faa(e,t,r,s){return zCt(!1,e,t,!1,r,s)}function Zaa(e,t,r,s){return zCt(!1,e,t,!0,r,s)}function Laa(e,t,r,s,a){return zCt(!0,e,t,!1,r,s,a)}function Vaa(e,t,r,s,a){return zCt(!0,e,t,!0,r,s,a)}function ksi(e,t,r,s,a,o=[]){return o.push({kind:r,pos:e,end:t,hasTrailingNewLine:s}),o}function wAr(e,t){return Laa(e,t,ksi,void 0,void 0)}function Waa(e,t){return Vaa(e,t,ksi,void 0,void 0)}function Gsi(e){let t=ndr.exec(e);if(t)return t[0]}function IY(e,t){return rdr(e)||e===36||e===95||e>127&&Naa(e,t)}function Mz(e,t,r){return Rsi(e)||e===36||(r===1?e===45||e===58:!1)||e>127&&Raa(e,t)}function Paa(e,t,r){let s=pfe(e,0);if(!IY(s,t))return!1;for(let a=PT(s);ay,getStartPos:()=>y,getTokenEnd:()=>f,getTextPos:()=>f,getToken:()=>v,getTokenStart:()=>B,getTokenPos:()=>B,getTokenText:()=>p.substring(B,f),getTokenValue:()=>k,hasUnicodeEscape:()=>(T&1024)!==0,hasExtendedUnicodeEscape:()=>(T&8)!==0,hasPrecedingLineBreak:()=>(T&1)!==0,hasPrecedingJSDocComment:()=>(T&2)!==0,hasPrecedingJSDocLeadingAsterisks:()=>(T&32768)!==0,isIdentifier:()=>v===80||v>118,isReservedWord:()=>v>=83&&v<=118,isUnterminated:()=>(T&4)!==0,getCommentDirectives:()=>O,getNumericLiteralFlags:()=>T&25584,getTokenFlags:()=>T,reScanGreaterToken:gn,reScanAsteriskEqualsToken:Gn,reScanSlashToken:we,reScanTemplateToken:lr,reScanTemplateHeadOrNoSubstitutionTemplate:ua,scanJsxIdentifier:NA,scanJsxAttributeValue:Vd,reScanJsxAttributeValue:jr,reScanJsxToken:vi,reScanLessThanToken:Hu,reScanHashToken:Yu,reScanQuestionToken:YA,reScanInvalidIdentifier:Br,scanJsxToken:gd,scanJsDocToken:Ir,scanJSDocCommentTextToken:Gr,scan:Or,getText:Yr,clearCommentDirectives:Vs,setText:Uo,setScriptTarget:da,setLanguageVariant:og,setScriptKind:Zu,setJSDocParsingMode:mg,setOnError:ai,resetTokenState:Lu,setTextPos:Lu,setSkipJsDocLeadingAsterisks:ml,tryScan:Ji,lookAhead:Vn,scanRange:Cn};return ho.isDebugging&&Object.defineProperty(ae,"__debugShowCurrentPositionInText",{get:()=>{let wi=ae.getText();return wi.slice(0,ae.getTokenFullStart())+"\u2551"+wi.slice(ae.getTokenFullStart())}}),ae;function ge(wi){return pfe(p,wi)}function fe(wi){return wi>=0&&wi=0&&wi=65&&zo<=70)zo+=32;else if(!(zo>=48&&zo<=57||zo>=97&&zo<=102))break;ka.push(zo),f++,kl=!1}return ka.length=m){$i+=p.substring(ka,f),T|=4,be(Ni.Unterminated_string_literal);break}let qs=pe(f);if(qs===ts){$i+=p.substring(ka,f),f++;break}if(qs===92&&!wi){$i+=p.substring(ka,f),$i+=er(3),ka=f;continue}if((qs===10||qs===13)&&!wi){$i+=p.substring(ka,f),T|=4,be(Ni.Unterminated_string_literal);break}f++}return $i}function Gt(wi){let ts=pe(f)===96;f++;let $i=f,ka="",qs;for(;;){if(f>=m){ka+=p.substring($i,f),T|=4,be(Ni.Unterminated_template_literal),qs=ts?15:18;break}let kl=pe(f);if(kl===96){ka+=p.substring($i,f),f++,qs=ts?15:18;break}if(kl===36&&f+1=m)return be(Ni.Unexpected_end_of_text),"";let $i=pe(f);switch(f++,$i){case 48:if(f>=m||!Gse(pe(f)))return"\0";case 49:case 50:case 51:f=55296&&ka<=56319&&f+6=56320&&Ta<=57343)return f=zo,qs+String.fromCharCode(Ta)}return qs;case 120:for(;f1114111&&(wi&&be(Ni.An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive,$i,f-$i),kl=!0),f>=m?(wi&&be(Ni.Unexpected_end_of_text),kl=!0):pe(f)===125?f++:(wi&&be(Ni.Unterminated_Unicode_escape_sequence),kl=!0),kl?(T|=2048,p.substring(ts,f)):(T|=8,Jni(qs))}function Ot(){if(f+5=0&&Mz($i,e)){wi+=Ur(!0),ts=f;continue}if($i=Ot(),!($i>=0&&Mz($i,e)))break;T|=1024,wi+=p.substring(ts,f),wi+=Jni($i),f+=6,ts=f}else break}return wi+=p.substring(ts,f),wi}function or(){let wi=k.length;if(wi>=2&&wi<=12){let ts=k.charCodeAt(0);if(ts>=97&&ts<=122){let $i=_aa.get(k);if($i!==void 0)return v=$i}}return v=80}function Fr(wi){let ts="",$i=!1,ka=!1;for(;;){let qs=pe(f);if(qs===95){T|=512,$i?($i=!1,ka=!0):be(ka?Ni.Multiple_consecutive_numeric_separators_are_not_permitted:Ni.Numeric_separators_are_not_allowed_here,f,1),f++;continue}if($i=!0,!Gse(qs)||qs-48>=wi)break;ts+=p[f],f++,ka=!1}return pe(f-1)===95&&be(Ni.Numeric_separators_are_not_allowed_here,f-1,1),ts}function $r(){return pe(f)===110?(k+="n",T&384&&(k=rua(k)+"n"),f++,10):(k=""+(T&128?parseInt(k.slice(2),2):T&256?parseInt(k.slice(2),8):+k),9)}function Or(){for(y=f,T=0;;){if(B=f,f>=m)return v=1;let wi=ge(f);if(f===0&&wi===35&&Dsi(p,f)){if(f=xsi(p,f),t)continue;return v=6}switch(wi){case 10:case 13:if(T|=1,t){f++;continue}else return wi===13&&f+1=0&&IY(ts,e))return k=Ur(!0)+Ar(),v=or();let $i=Ot();return $i>=0&&IY($i,e)?(f+=6,T|=1024,k=String.fromCharCode($i)+Ar(),v=or()):(be(Ni.Invalid_character),f++,v=0);case 35:if(f!==0&&p[f+1]==="!")return be(Ni.can_only_be_used_at_the_start_of_a_file,f,2),f++,v=0;let ka=ge(f+1);if(ka===92){f++;let zo=dr();if(zo>=0&&IY(zo,e))return k="#"+Ur(!0)+Ar(),v=81;let Ta=Ot();if(Ta>=0&&IY(Ta,e))return f+=6,T|=1024,k="#"+String.fromCharCode(Ta)+Ar(),v=81;f--}return IY(ka,e)?(f++,tr(ka,e)):(k="#",be(Ni.Invalid_character,f++,PT(wi))),v=81;case 65533:return be(Ni.File_appears_to_be_binary,0,0),f=m,v=8;default:let qs=tr(wi,e);if(qs)return v=qs;if(dMe(wi)){f+=PT(wi);continue}else if(c9(wi)){T|=1,f+=PT(wi);continue}let kl=PT(wi);return be(Ni.Invalid_character,f,kl),f+=kl,v=0}}}function In(){switch(le){case 0:return!0;case 1:return!1}return U!==3&&U!==4?!0:le===3?!1:Taa.test(p.slice(y,f))}function Br(){ho.assert(v===0,"'reScanInvalidIdentifier' should only be called when the current token is 'SyntaxKind.Unknown'."),f=B=y,T=0;let wi=ge(f),ts=tr(wi,99);return ts?v=ts:(f+=PT(wi),v)}function tr(wi,ts){let $i=wi;if(IY($i,ts)){for(f+=PT($i);f=m)return v=1;let ts=pe(f);if(ts===60)return pe(f+1)===47?(f+=2,v=31):(f++,v=30);if(ts===123)return f++,v=19;let $i=0;for(;f0)break;hSe(ts)||($i=f)}f++}return k=p.substring(y,f),$i===-1?13:12}function NA(){if(l1(v)){for(;f=m)return v=1;for(let ts=pe(f);f=0&&dMe(pe(f-1))&&!(f+1=m)return v=1;let wi=ge(f);switch(f+=PT(wi),wi){case 9:case 11:case 12:case 32:for(;f=0&&IY(ts,e))return k=Ur(!0)+Ar(),v=or();let $i=Ot();return $i>=0&&IY($i,e)?(f+=6,T|=1024,k=String.fromCharCode($i)+Ar(),v=or()):(f++,v=0)}if(IY(wi,e)){let ts=wi;for(;f=0),f=wi,y=wi,B=wi,v=0,k=void 0,T=0}function ml(wi){X+=wi?1:-1}}function pfe(e,t){return e.codePointAt(t)}function PT(e){return e>=65536?2:e===-1?0:1}function Oaa(e){if(ho.assert(0<=e&&e<=1114111),e<=65535)return String.fromCharCode(e);let t=Math.floor((e-65536)/1024)+55296,r=(e-65536)%1024+56320;return String.fromCharCode(t,r)}var Qaa=String.fromCodePoint?e=>String.fromCodePoint(e):Oaa;function Jni(e){return Qaa(e)}var Uni=new Map(Object.entries({General_Category:"General_Category",gc:"General_Category",Script:"Script",sc:"Script",Script_Extensions:"Script_Extensions",scx:"Script_Extensions"})),Kni=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"]),jni=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"]),CSe={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};CSe.Script_Extensions=CSe.Script;function jU(e){return e.start+e.length}function Maa(e){return e.length===0}function sdr(e,t){if(e<0)throw new Error("start < 0");if(t<0)throw new Error("length < 0");return{start:e,length:t}}function Haa(e,t){return sdr(e,t-e)}function iMe(e){return sdr(e.span.start,e.newLength)}function Yaa(e){return Maa(e.span)&&e.newLength===0}function Fsi(e,t){if(t<0)throw new Error("newLength < 0");return{span:e,newLength:t}}var Ohl=Fsi(sdr(0,0),0);function Zsi(e,t){for(;e;){let r=t(e);if(r==="quit")return;if(r)return e;e=e.parent}}function MCt(e){return(e.flags&16)===0}function Xaa(e,t){if(e===void 0||MCt(e))return e;for(e=e.original;e;){if(MCt(e))return!t||t(e)?e:void 0;e=e.original}}function gSe(e){return e.length>=2&&e.charCodeAt(0)===95&&e.charCodeAt(1)===95?"_"+e:e}function _Me(e){let t=e;return t.length>=3&&t.charCodeAt(0)===95&&t.charCodeAt(1)===95&&t.charCodeAt(2)===95?t.substr(1):t}function u9(e){return _Me(e.escapedText)}function Lsi(e){let t=wsi(e.escapedText);return t?Koa(t,Fse):void 0}function TAr(e){return e.valueDeclaration&&Cca(e.valueDeclaration)?u9(e.valueDeclaration.name):_Me(e.escapedName)}function Vsi(e){let t=e.parent.parent;if(t){if($ni(t))return SCt(t);switch(t.kind){case 243:if(t.declarationList&&t.declarationList.declarations[0])return SCt(t.declarationList.declarations[0]);break;case 244:let r=t.expression;switch(r.kind===226&&r.operatorToken.kind===64&&(r=r.left),r.kind){case 211:return r.name;case 212:let s=r.argumentExpression;if(hh(s))return s}break;case 217:return SCt(t.expression);case 256:{if($ni(t.statement)||Rca(t.statement))return SCt(t.statement);break}}}}function SCt(e){let t=Wsi(e);return t&&hh(t)?t:void 0}function Jaa(e){return e.name||Vsi(e)}function Uaa(e){return!!e.name}function odr(e){switch(e.kind){case 80:return e;case 348:case 341:{let{name:r}=e;if(r.kind===166)return r.right;break}case 213:case 226:{let r=e;switch(gdr(r)){case 1:case 4:case 5:case 3:return Adr(r.left);case 7:case 8:case 9:return r.arguments[1];default:return}}case 346:return Jaa(e);case 340:return Vsi(e);case 277:{let{expression:r}=e;return hh(r)?r:void 0}case 212:let t=e;if(toi(t))return t.argumentExpression}return e.name}function Wsi(e){if(e!==void 0)return odr(e)||(yoi(e)||boi(e)||ZAr(e)?Kaa(e):void 0)}function Kaa(e){if(e.parent){if(Aga(e.parent)||Kua(e.parent))return e.parent.name;if(BSe(e.parent)&&e===e.parent.right){if(hh(e.parent.left))return e.parent.left;if(aoi(e.parent.left))return Adr(e.parent.left)}else if(Boi(e.parent)&&hh(e.parent.name))return e.parent.name}else return}function jaa(e){if(Bla(e))return Xz(e.modifiers,hdr)}function zaa(e){if(wMe(e,98303))return Xz(e.modifiers,_ca)}function Psi(e,t){if(e.name)if(hh(e.name)){let r=e.name.escapedText;return yMe(e.parent,t).filter(s=>fii(s)&&hh(s.name)&&s.name.escapedText===r)}else{let r=e.parent.parameters.indexOf(e);ho.assert(r>-1,"Parameters should always be in their parents' parameter list");let s=yMe(e.parent,t).filter(fii);if(rwga(s)&&s.typeParameters.some(a=>a.name.escapedText===r))}function eca(e){return Osi(e,!1)}function tca(e){return Osi(e,!0)}function rca(e){return Pse(e,mga)}function nca(e){return gca(e,Tga)}function ica(e){return Pse(e,hga,!0)}function sca(e){return Pse(e,_ga,!0)}function oca(e){return Pse(e,yga,!0)}function aca(e){return Pse(e,bga,!0)}function cca(e){return Pse(e,Ega,!0)}function lca(e){return Pse(e,vga,!0)}function uca(e){let t=Pse(e,bdr);if(t&&t.typeExpression&&t.typeExpression.type)return t}function yMe(e,t){var r;if(!ddr(e))return i2;let s=(r=e.jsDoc)==null?void 0:r.jsDocCache;if(s===void 0||t){let a=cla(e,t);ho.assert(a.length<2||a[0]!==a[1]),s=asi(a,o=>koi(o)?o.tags:o),t||(e.jsDoc??(e.jsDoc=[]),e.jsDoc.jsDocCache=s)}return s}function Qsi(e){return yMe(e,!1)}function Pse(e,t,r){return ssi(yMe(e,r),t)}function gca(e,t){return Qsi(e).filter(t)}function NAr(e){return e.kind===80||e.kind===81}function Aca(e){return Ose(e)&&!!(e.flags&64)}function dca(e){return TMe(e)&&!!(e.flags&64)}function zni(e){return _oi(e)&&!!(e.flags&64)}function adr(e){return Edr(e,8)}function pca(e){return ZCt(e)&&!!(e.flags&64)}function cdr(e){return e>=166}function Msi(e){return e>=0&&e<=165}function fca(e){return Msi(e.kind)}function Zse(e){return eK(e,"pos")&&eK(e,"end")}function Ica(e){return 9<=e&&e<=15}function qni(e){return 15<=e&&e<=18}function mSe(e){var t;return hh(e)&&((t=e.emitNode)==null?void 0:t.autoGenerate)!==void 0}function Hsi(e){var t;return Efe(e)&&((t=e.emitNode)==null?void 0:t.autoGenerate)!==void 0}function Cca(e){return(JCt(e)||Eca(e))&&Efe(e.name)}function Hz(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 mca(e){return!!(soi(e)&31)}function hca(e){return mca(e)||e===126||e===164||e===129}function _ca(e){return Hz(e.kind)}function Ysi(e){let t=e.kind;return t===80||t===81||t===11||t===9||t===167}function Xsi(e){return!!e&&bca(e.kind)}function yca(e){switch(e){case 262:case 174:case 176:case 177:case 178:case 218:case 219:return!0;default:return!1}}function bca(e){switch(e){case 173:case 179:case 323:case 180:case 181:case 184:case 317:case 185:return!0;default:return yca(e)}}function _Se(e){return e&&(e.kind===263||e.kind===231)}function Eca(e){switch(e.kind){case 174:case 177:case 178:return!0;default:return!1}}function Bca(e){let t=e.kind;return t===303||t===304||t===305||t===174||t===177||t===178}function vca(e){return Fla(e.kind)}function Sca(e){if(e){let t=e.kind;return t===207||t===206}return!1}function wca(e){let t=e.kind;return t===209||t===210}function Tca(e){switch(e.kind){case 260:case 169:case 208:return!0}return!1}function ySe(e){return Jsi(adr(e).kind)}function Jsi(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 Nca(e){return Usi(adr(e).kind)}function Usi(e){switch(e){case 224:case 225:case 220:case 221:case 222:case 223:case 216:return!0;default:return Jsi(e)}}function Rca(e){return Dca(adr(e).kind)}function Dca(e){switch(e){case 227:case 229:case 219:case 226:case 230:case 234:case 232:case 356:case 355:case 238:return!0;default:return Usi(e)}}function xca(e){return e===219||e===208||e===263||e===231||e===175||e===176||e===266||e===306||e===281||e===262||e===218||e===177||e===273||e===271||e===276||e===264||e===291||e===174||e===173||e===267||e===270||e===274||e===280||e===169||e===303||e===172||e===171||e===178||e===304||e===265||e===168||e===260||e===346||e===338||e===348||e===202}function Ksi(e){return e===262||e===282||e===263||e===264||e===265||e===266||e===267||e===272||e===271||e===278||e===277||e===270}function jsi(e){return e===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}function $ni(e){return e.kind===168?e.parent&&e.parent.kind!==345||Bfe(e):xca(e.kind)}function kca(e){let t=e.kind;return jsi(t)||Ksi(t)||Gca(e)}function Gca(e){return e.kind!==241||e.parent!==void 0&&(e.parent.kind===258||e.parent.kind===299)?!1:!Kca(e)}function Fca(e){let t=e.kind;return jsi(t)||Ksi(t)||t===241}function zsi(e){return e.kind>=309&&e.kind<=351}function Zca(e){return e.kind===320||e.kind===319||e.kind===321||Wca(e)||Lca(e)||Cga(e)||Goi(e)}function Lca(e){return e.kind>=327&&e.kind<=351}function wCt(e){return e.kind===178}function TCt(e){return e.kind===177}function mfe(e){if(!ddr(e))return!1;let{jsDoc:t}=e;return!!t&&t.length>0}function Vca(e){return!!e.initializer}function ldr(e){return e.kind===11||e.kind===15}function Wca(e){return e.kind===324||e.kind===325||e.kind===326}function eii(e){return(e.flags&33554432)!==0}var Qhl=Pca();function Pca(){var e="";let t=r=>e+=r;return{getText:()=>e,write:t,rawWrite:t,writeKeyword:t,writeOperator:t,writePunctuation:t,writeSpace:t,writeStringLiteral:t,writeLiteral:t,writeParameter:t,writeProperty:t,writeSymbol:(r,s)=>t(r),writeTrailingSemicolon:t,writeComment:t,getTextPos:()=>e.length,getLine:()=>0,getColumn:()=>0,getIndent:()=>0,isAtStartOfLine:()=>!1,hasTrailingComment:()=>!1,hasTrailingWhitespace:()=>!!e.length&&hSe(e.charCodeAt(e.length-1)),writeLine:()=>e+=" ",increaseIndent:ESe,decreaseIndent:ESe,clear:()=>e=""}}function Oca(e,t){let r=e.entries();for(let[s,a]of r){let o=t(a,s);if(o)return o}}function Qca(e){return e.end-e.pos}function qsi(e){return Mca(e),(e.flags&1048576)!==0}function Mca(e){e.flags&2097152||((e.flags&262144||KD(e,qsi))&&(e.flags|=1048576),e.flags|=2097152)}function Vse(e){for(;e&&e.kind!==307;)e=e.parent;return e}function hfe(e){return e===void 0?!0:e.pos===e.end&&e.pos>=0&&e.kind!==1}function RAr(e){return!hfe(e)}function HCt(e,t,r){if(hfe(e))return e.pos;if(zsi(e)||e.kind===12)return qU((t??Vse(e)).text,e.pos,!1,!0);if(r&&mfe(e))return HCt(e.jsDoc[0],t);if(e.kind===352){t??(t=Vse(e));let s=KAr(Foi(e,t));if(s)return HCt(s,t,r)}return qU((t??Vse(e)).text,e.pos,!1,!1,jca(e))}function tii(e,t,r=!1){return pMe(e.text,t,r)}function Hca(e){return!!Zsi(e,pga)}function pMe(e,t,r=!1){if(hfe(t))return"";let s=e.substring(r?t.pos:qU(e,t.pos),t.end);return Hca(t)&&(s=s.split(/\r\n|\n|\r/).map(a=>a.replace(/^\s*\*/,"").trimStart()).join(` +`)),s}function bSe(e){let t=e.emitNode;return t&&t.flags||0}function Yca(e,t,r){ho.assertGreaterThanOrEqual(t,0),ho.assertGreaterThanOrEqual(r,0),ho.assertLessThanOrEqual(t,e.length),ho.assertLessThanOrEqual(t+r,e.length)}function FCt(e){return e.kind===244&&e.expression.kind===11}function udr(e){return!!(bSe(e)&2097152)}function rii(e){return udr(e)&&voi(e)}function Xca(e){return hh(e.name)&&!e.initializer}function nii(e){return udr(e)&&emt(e)&&JAr(e.declarationList.declarations,Xca)}function Jca(e,t){let r=e.kind===169||e.kind===168||e.kind===218||e.kind===219||e.kind===217||e.kind===260||e.kind===281?UAr(Waa(t,e.pos),wAr(t,e.pos)):wAr(t,e.pos);return Xz(r,s=>s.end<=e.end&&t.charCodeAt(s.pos+1)===42&&t.charCodeAt(s.pos+2)===42&&t.charCodeAt(s.pos+3)!==47)}function Uca(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 Kca(e){return e&&e.kind===241&&Xsi(e.parent)}function iii(e){let t=e.kind;return(t===211||t===212)&&e.expression.kind===108}function Bfe(e){return!!e&&!!(e.flags&524288)}function jca(e){return!!e&&!!(e.flags&16777216)}function zca(e){for(;YCt(e,!0);)e=e.right;return e}function qca(e){return hh(e)&&e.escapedText==="exports"}function $ca(e){return hh(e)&&e.escapedText==="module"}function $si(e){return(Ose(e)||eoi(e))&&$ca(e.expression)&&EMe(e)==="exports"}function gdr(e){let t=tla(e);return t===5||Bfe(e)?t:0}function ela(e){return uMe(e.arguments)===3&&Ose(e.expression)&&hh(e.expression.expression)&&u9(e.expression.expression)==="Object"&&u9(e.expression.name)==="defineProperty"&&qCt(e.arguments[1])&&bMe(e.arguments[0],!0)}function eoi(e){return TMe(e)&&qCt(e.argumentExpression)}function SMe(e,t){return Ose(e)&&(!t&&e.expression.kind===110||hh(e.name)&&bMe(e.expression,!0))||toi(e,t)}function toi(e,t){return eoi(e)&&(!t&&e.expression.kind===110||Idr(e.expression)||SMe(e.expression,!0))}function bMe(e,t){return Idr(e)||SMe(e,t)}function tla(e){if(_oi(e)){if(!ela(e))return 0;let t=e.arguments[0];return qca(t)||$si(t)?8:SMe(t)&&EMe(t)==="prototype"?9:7}return e.operatorToken.kind!==64||!aoi(e.left)||rla(zca(e))?0:bMe(e.left.expression,!0)&&EMe(e.left)==="prototype"&&hoi(ila(e))?6:nla(e.left)}function rla(e){return qua(e)&&vSe(e.expression)&&e.expression.text==="0"}function Adr(e){if(Ose(e))return e.name;let t=pdr(e.argumentExpression);return vSe(t)||ldr(t)?t:e}function EMe(e){let t=Adr(e);if(t){if(hh(t))return t.escapedText;if(ldr(t)||vSe(t))return gSe(t.text)}}function nla(e){if(e.expression.kind===110)return 4;if($si(e))return 2;if(bMe(e.expression,!0)){if(kla(e.expression))return 3;let t=e;for(;!hh(t.expression);)t=t.expression;let r=t.expression;if((r.escapedText==="exports"||r.escapedText==="module"&&EMe(t)==="exports")&&SMe(e))return 1;if(bMe(e,!0)||TMe(e)&&mla(e))return 5}return 0}function ila(e){for(;BSe(e.right);)e=e.right;return e.right}function sla(e){return Eoi(e)&&BSe(e.expression)&&gdr(e.expression)!==0&&BSe(e.expression.right)&&(e.expression.right.operatorToken.kind===57||e.expression.right.operatorToken.kind===61)?e.expression.right.right:void 0}function ola(e){switch(e.kind){case 243:let t=DAr(e);return t&&t.initializer;case 172:return e.initializer;case 303:return e.initializer}}function DAr(e){return emt(e)?KAr(e.declarationList.declarations):void 0}function ala(e){return vMe(e)&&e.body&&e.body.kind===267?e.body:void 0}function ddr(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 cla(e,t){let r;Uca(e)&&Vca(e)&&mfe(e.initializer)&&(r=l9(r,sii(e,e.initializer.jsDoc)));let s=e;for(;s&&s.parent;){if(mfe(s)&&(r=l9(r,sii(e,s.jsDoc))),s.kind===169){r=l9(r,(t?$aa:qaa)(s));break}if(s.kind===168){r=l9(r,(t?tca:eca)(s));break}s=ula(s)}return r||i2}function sii(e,t){let r=Poa(t);return asi(t,s=>{if(s===r){let a=Xz(s.tags,o=>lla(e,o));return s.tags===a?[s]:a}else return Xz(s.tags,Bga)})}function lla(e,t){return!(bdr(t)||Nga(t))||!t.parent||!koi(t.parent)||!_dr(t.parent.parent)||t.parent.parent===e}function ula(e){let t=e.parent;if(t.kind===303||t.kind===277||t.kind===172||t.kind===244&&e.kind===211||t.kind===253||ala(t)||YCt(e))return t;if(t.parent&&(DAr(t.parent)===e||YCt(t)))return t.parent;if(t.parent&&t.parent.parent&&(DAr(t.parent.parent)||ola(t.parent.parent)===e||sla(t.parent.parent)))return t.parent.parent}function pdr(e,t){return Edr(e,t?-2147483647:1)}function gla(e){let t=Ala(e);if(t&&Bfe(e)){let r=rca(e);if(r)return r.class}return t}function Ala(e){let t=fdr(e.heritageClauses,96);return t&&t.types.length>0?t.types[0]:void 0}function dla(e){if(Bfe(e))return nca(e).map(t=>t.class);{let t=fdr(e.heritageClauses,119);return t?.types}}function pla(e){return ydr(e)?fla(e)||i2:_Se(e)&&UAr(BAr(gla(e)),dla(e))||i2}function fla(e){let t=fdr(e.heritageClauses,96);return t?t.types:void 0}function fdr(e,t){if(e){for(let r of e)if(r.token===t)return r}}function Fse(e){return 83<=e&&e<=165}function Ila(e){return 19<=e&&e<=79}function AAr(e){return Fse(e)||Ila(e)}function qCt(e){return ldr(e)||vSe(e)}function Cla(e){return $ua(e)&&(e.operator===40||e.operator===41)&&vSe(e.operand)}function mla(e){if(!(e.kind===167||e.kind===212))return!1;let t=TMe(e)?pdr(e.argumentExpression):e.expression;return!qCt(t)&&!Cla(t)}function hla(e){return NAr(e)?u9(e):xoi(e)?cua(e):e.text}function ASe(e){return BMe(e.pos)||BMe(e.end)}function dAr(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 pAr(e){return!!((e.templateFlags||0)&2048)}function _la(e){return e&&!!(yua(e)?pAr(e):pAr(e.head)||_R(e.templateSpans,t=>pAr(t.literal)))}var Mhl=new Map(Object.entries({" ":"\\t","\v":"\\v","\f":"\\f","\b":"\\b","\r":"\\r","\n":"\\n","\\":"\\\\",'"':'\\"',"'":"\\'","`":"\\`","\u2028":"\\u2028","\u2029":"\\u2029","\x85":"\\u0085","\r\n":"\\r\\n"})),Hhl=new Map(Object.entries({'"':""","'":"'"}));function yla(e){return!!e&&e.kind===80&&bla(e)}function bla(e){return e.escapedText==="this"}function wMe(e,t){return!!vla(e,t)}function Ela(e){return wMe(e,256)}function Bla(e){return wMe(e,32768)}function vla(e,t){return wla(e)&t}function Sla(e,t,r){return e.kind>=0&&e.kind<=165?0:(e.modifierFlagsCache&536870912||(e.modifierFlagsCache=ioi(e)|536870912),r||t&&Bfe(e)?(!(e.modifierFlagsCache&268435456)&&e.parent&&(e.modifierFlagsCache|=roi(e)|268435456),noi(e.modifierFlagsCache)):Tla(e.modifierFlagsCache))}function wla(e){return Sla(e,!1)}function roi(e){let t=0;return e.parent&&!XCt(e)&&(Bfe(e)&&(ica(e)&&(t|=8388608),sca(e)&&(t|=16777216),oca(e)&&(t|=33554432),aca(e)&&(t|=67108864),cca(e)&&(t|=134217728)),lca(e)&&(t|=65536)),t}function Tla(e){return e&65535}function noi(e){return e&131071|(e&260046848)>>>23}function Nla(e){return noi(roi(e))}function Rla(e){return ioi(e)|Nla(e)}function ioi(e){let t=Bdr(e)?$W(e.modifiers):0;return(e.flags&8||e.kind===80&&e.flags&4096)&&(t|=32),t}function $W(e){let t=0;if(e)for(let r of e)t|=soi(r.kind);return t}function soi(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 Dla(e){return e===76||e===77||e===78}function ooi(e){return e>=64&&e<=79}function YCt(e,t){return BSe(e)&&(t?e.operatorToken.kind===64:ooi(e.operatorToken.kind))&&ySe(e.left)}function Idr(e){return e.kind===80||xla(e)}function xla(e){return Ose(e)&&hh(e.name)&&Idr(e.expression)}function kla(e){return SMe(e)&&EMe(e)==="prototype"}function fAr(e){return e.flags&3899393?e.objectFlags:0}function Gla(e){let t;return KD(e,r=>{RAr(r)&&(t=r)},r=>{for(let s=r.length-1;s>=0;s--)if(RAr(r[s])){t=r[s];break}}),t}function Fla(e){return e>=182&&e<=205||e===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}function aoi(e){return e.kind===211||e.kind===212}function Zla(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 Lla(e,t){this.flags=t,(ho.isDebugging||kCt)&&(this.checker=e)}function Vla(e,t){this.flags=t,ho.isDebugging&&(this.checker=e)}function IAr(e,t,r){this.pos=t,this.end=r,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 Wla(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.emitNode=void 0}function Pla(e,t,r){this.pos=t,this.end=r,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 Ola(e,t,r){this.fileName=e,this.text=t,this.skipTrivia=r||(s=>s)}var n2={getNodeConstructor:()=>IAr,getTokenConstructor:()=>Wla,getIdentifierConstructor:()=>Pla,getPrivateIdentifierConstructor:()=>IAr,getSourceFileConstructor:()=>IAr,getSymbolConstructor:()=>Zla,getTypeConstructor:()=>Lla,getSignatureConstructor:()=>Vla,getSourceMapSourceConstructor:()=>Ola},Qla=[];function Mla(e){Object.assign(n2,e),t3(Qla,t=>t(n2))}function Hla(e,t){return e.replace(/\{(\d+)\}/g,(r,s)=>""+ho.checkDefined(t[+s]))}var oii;function Yla(e){return oii&&oii[e.key]||e.message}function aSe(e,t,r,s,a,...o){r+s>t.length&&(s=t.length-r),Yca(t,r,s);let g=Yla(a);return _R(o)&&(g=Hla(g,o)),{file:void 0,start:r,length:s,messageText:g,category:a.category,code:a.code,reportsUnnecessary:a.reportsUnnecessary,fileName:e}}function Xla(e){return e.file===void 0&&e.start!==void 0&&e.length!==void 0&&typeof e.fileName=="string"}function coi(e,t){let r=t.fileName||"",s=t.text.length;ho.assertEqual(e.fileName,r),ho.assertLessThanOrEqual(e.start,s),ho.assertLessThanOrEqual(e.start+e.length,s);let a={file:t,start:e.start,length:e.length,messageText:e.messageText,category:e.category,code:e.code,reportsUnnecessary:e.reportsUnnecessary};if(e.relatedInformation){a.relatedInformation=[];for(let o of e.relatedInformation)Xla(o)&&o.fileName===r?(ho.assertLessThanOrEqual(o.start,s),ho.assertLessThanOrEqual(o.start+o.length,s),a.relatedInformation.push(coi(o,t))):a.relatedInformation.push(o)}return a}function lfe(e,t){let r=[];for(let s of e)r.push(coi(s,t));return r}function aii(e){return e===4||e===2||e===1||e===6?1:0}var J_={allowImportingTsExtensions:{dependencies:["rewriteRelativeImportExtensions"],computeValue:e=>!!(e.allowImportingTsExtensions||e.rewriteRelativeImportExtensions)},target:{dependencies:["module"],computeValue:e=>(e.target===0?void 0:e.target)??(e.module===100&&9||e.module===199&&99||1)},module:{dependencies:["target"],computeValue:e=>typeof e.module=="number"?e.module:J_.target.computeValue(e)>=2?5:1},moduleResolution:{dependencies:["module","target"],computeValue:e=>{let t=e.moduleResolution;if(t===void 0)switch(J_.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;break}return t}},moduleDetection:{dependencies:["module","target"],computeValue:e=>e.moduleDetection||(J_.module.computeValue(e)===100||J_.module.computeValue(e)===199?3:2)},isolatedModules:{dependencies:["verbatimModuleSyntax"],computeValue:e=>!!(e.isolatedModules||e.verbatimModuleSyntax)},esModuleInterop:{dependencies:["module","target"],computeValue:e=>{if(e.esModuleInterop!==void 0)return e.esModuleInterop;switch(J_.module.computeValue(e)){case 100:case 199:case 200:return!0}return!1}},allowSyntheticDefaultImports:{dependencies:["module","target","moduleResolution"],computeValue:e=>e.allowSyntheticDefaultImports!==void 0?e.allowSyntheticDefaultImports:J_.esModuleInterop.computeValue(e)||J_.module.computeValue(e)===4||J_.moduleResolution.computeValue(e)===100},resolvePackageJsonExports:{dependencies:["moduleResolution"],computeValue:e=>{let t=J_.moduleResolution.computeValue(e);if(!cii(t))return!1;if(e.resolvePackageJsonExports!==void 0)return e.resolvePackageJsonExports;switch(t){case 3:case 99:case 100:return!0}return!1}},resolvePackageJsonImports:{dependencies:["moduleResolution","resolvePackageJsonExports"],computeValue:e=>{let t=J_.moduleResolution.computeValue(e);if(!cii(t))return!1;if(e.resolvePackageJsonExports!==void 0)return e.resolvePackageJsonExports;switch(t){case 3:case 99:case 100:return!0}return!1}},resolveJsonModule:{dependencies:["moduleResolution","module","target"],computeValue:e=>e.resolveJsonModule!==void 0?e.resolveJsonModule:J_.moduleResolution.computeValue(e)===100},declaration:{dependencies:["composite"],computeValue:e=>!!(e.declaration||e.composite)},preserveConstEnums:{dependencies:["isolatedModules","verbatimModuleSyntax"],computeValue:e=>!!(e.preserveConstEnums||J_.isolatedModules.computeValue(e))},incremental:{dependencies:["composite"],computeValue:e=>!!(e.incremental||e.composite)},declarationMap:{dependencies:["declaration","composite"],computeValue:e=>!!(e.declarationMap&&J_.declaration.computeValue(e))},allowJs:{dependencies:["checkJs"],computeValue:e=>e.allowJs===void 0?!!e.checkJs:e.allowJs},useDefineForClassFields:{dependencies:["target","module"],computeValue:e=>e.useDefineForClassFields===void 0?J_.target.computeValue(e)>=9:e.useDefineForClassFields},noImplicitAny:{dependencies:["strict"],computeValue:e=>Qz(e,"noImplicitAny")},noImplicitThis:{dependencies:["strict"],computeValue:e=>Qz(e,"noImplicitThis")},strictNullChecks:{dependencies:["strict"],computeValue:e=>Qz(e,"strictNullChecks")},strictFunctionTypes:{dependencies:["strict"],computeValue:e=>Qz(e,"strictFunctionTypes")},strictBindCallApply:{dependencies:["strict"],computeValue:e=>Qz(e,"strictBindCallApply")},strictPropertyInitialization:{dependencies:["strict"],computeValue:e=>Qz(e,"strictPropertyInitialization")},strictBuiltinIteratorReturn:{dependencies:["strict"],computeValue:e=>Qz(e,"strictBuiltinIteratorReturn")},alwaysStrict:{dependencies:["strict"],computeValue:e=>Qz(e,"alwaysStrict")},useUnknownInCatchVariables:{dependencies:["strict"],computeValue:e=>Qz(e,"useUnknownInCatchVariables")}},Yhl=J_.allowImportingTsExtensions.computeValue,Xhl=J_.target.computeValue,Jhl=J_.module.computeValue,Uhl=J_.moduleResolution.computeValue,Khl=J_.moduleDetection.computeValue,jhl=J_.isolatedModules.computeValue,zhl=J_.esModuleInterop.computeValue,qhl=J_.allowSyntheticDefaultImports.computeValue,$hl=J_.resolvePackageJsonExports.computeValue,e_l=J_.resolvePackageJsonImports.computeValue,t_l=J_.resolveJsonModule.computeValue,r_l=J_.declaration.computeValue,n_l=J_.preserveConstEnums.computeValue,i_l=J_.incremental.computeValue,s_l=J_.declarationMap.computeValue,o_l=J_.allowJs.computeValue,a_l=J_.useDefineForClassFields.computeValue;function cii(e){return e>=3&&e<=99||e===100}function Qz(e,t){return e[t]===void 0?!!e.strict:!!e[t]}function Jla(e){return Oca(targetOptionDeclaration.type,(t,r)=>t===e?r:void 0)}var Ula=["node_modules","bower_components","jspm_packages"],loi=`(?!(${Ula.join("|")})(/|$))`,Kla={singleAsteriskRegexFragment:"([^./]|(\\.(?!min\\.js$))?)*",doubleAsteriskRegexFragment:`(/${loi}[^/.][^/]*)*?`,replaceWildcardCharacter:e=>uoi(e,Kla.singleAsteriskRegexFragment)},jla={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:`(/${loi}[^/.][^/]*)*?`,replaceWildcardCharacter:e=>uoi(e,jla.singleAsteriskRegexFragment)};function uoi(e,t){return e==="*"?t:e==="?"?"[^/]":"\\"+e}function zla(e,t){return t||qla(e)||3}function qla(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 goi=[[".ts",".tsx",".d.ts"],[".cts",".d.cts"],[".mts",".d.mts"]],c_l=osi(goi),l_l=[...goi,[".json"]],$la=[[".js",".jsx"],[".mjs"],[".cjs"]],u_l=osi($la),eua=[[".ts",".tsx",".d.ts",".js",".jsx"],[".cts",".d.cts",".cjs"],[".mts",".d.mts",".mjs"]],g_l=[...eua,[".json"]],tua=[".d.ts",".d.cts",".d.mts"];function BMe(e){return!(e>=0)}function NCt(e,...t){return t.length&&(e.relatedInformation||(e.relatedInformation=[]),ho.assert(e.relatedInformation!==i2,"Diagnostic had empty array singleton for related info, but is still being constructed!"),e.relatedInformation.push(...t)),e}function rua(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:let m=e.length-1,y=0;for(;e.charCodeAt(y)===48;)y++;return e.slice(y,m)||"0"}let r=2,s=e.length-1,a=(s-r)*t,o=new Uint16Array((a>>>4)+(a&15?1:0));for(let m=s-1,y=0;m>=r;m--,y+=t){let B=y>>>4,v=e.charCodeAt(m),k=(v<=57?v-48:10+v-(v<=70?65:97))<<(y&15);o[B]|=k;let T=k>>>16;T&&(o[B+1]|=T)}let g="",p=o.length-1,f=!0;for(;f;){let m=0;f=!1;for(let y=p;y>=0;y--){let B=m<<16|o[y],v=B/10|0;o[y]=v,m=B-v*10,v&&!f&&(p=y,f=!0)}g=m+g}return g}function nua({negative:e,base10Value:t}){return(e&&t!=="0"?"-":"")+t}function xAr(e,t){return e.pos=t,e}function iua(e,t){return e.end=t,e}function Wse(e,t,r){return iua(xAr(e,t),r)}function lii(e,t,r){return Wse(e,t,t+r)}function Cdr(e,t){return e&&t&&(e.parent=t),e}function sua(e,t){if(!e)return e;return Vii(e,zsi(e)?r:a),e;function r(o,g){if(t&&o.parent===g)return"skip";Cdr(o,g)}function s(o){if(mfe(o))for(let g of o.jsDoc)r(g,o),Vii(g,r)}function a(o,g){return r(o,g)||s(o)}}function oua(e){return!!(e.flags&262144&&e.isThisType)}function aua(e){var t;return((t=getSnippetElement(e))==null?void 0:t.kind)===0}function cua(e){return`${u9(e.namespace)}:${u9(e.name)}`}var A_l=String.prototype.replace,kAr=["assert","assert/strict","async_hooks","buffer","child_process","cluster","console","constants","crypto","dgram","diagnostics_channel","dns","dns/promises","domain","events","fs","fs/promises","http","http2","https","inspector","inspector/promises","module","net","os","path","path/posix","path/win32","perf_hooks","process","punycode","querystring","readline","readline/promises","repl","stream","stream/consumers","stream/promises","stream/web","string_decoder","sys","test/mock_loader","timers","timers/promises","tls","trace_events","tty","url","util","util/types","v8","vm","wasi","worker_threads","zlib"],d_l=new Set(kAr),lua=new Set(["node:sea","node:sqlite","node:test","node:test/reporters"]),p_l=new Set([...kAr,...kAr.map(e=>`node:${e}`),...lua]);function uua(){let e,t,r,s,a;return{createBaseSourceFileNode:o,createBaseIdentifierNode:g,createBasePrivateIdentifierNode:p,createBaseTokenNode:f,createBaseNode:m};function o(y){return new(a||(a=n2.getSourceFileConstructor()))(y,-1,-1)}function g(y){return new(r||(r=n2.getIdentifierConstructor()))(y,-1,-1)}function p(y){return new(s||(s=n2.getPrivateIdentifierConstructor()))(y,-1,-1)}function f(y){return new(t||(t=n2.getTokenConstructor()))(y,-1,-1)}function m(y){return new(e||(e=n2.getNodeConstructor()))(y,-1,-1)}}var gua={getParenthesizeLeftSideOfBinaryForOperator:e=>dE,getParenthesizeRightSideOfBinaryForOperator:e=>dE,parenthesizeLeftSideOfBinary:(e,t)=>t,parenthesizeRightSideOfBinary:(e,t,r)=>r,parenthesizeExpressionOfComputedPropertyName:dE,parenthesizeConditionOfConditionalExpression:dE,parenthesizeBranchOfConditionalExpression:dE,parenthesizeExpressionOfExportDefault:dE,parenthesizeExpressionOfNew:e=>zU(e,ySe),parenthesizeLeftSideOfAccess:e=>zU(e,ySe),parenthesizeOperandOfPostfixUnary:e=>zU(e,ySe),parenthesizeOperandOfPrefixUnary:e=>zU(e,Nca),parenthesizeExpressionsOfCommaDelimitedList:e=>zU(e,Zse),parenthesizeExpressionForDisallowedComma:dE,parenthesizeExpressionOfExpressionStatement:dE,parenthesizeConciseBodyOfArrowFunction:dE,parenthesizeCheckTypeOfConditionalType:dE,parenthesizeExtendsTypeOfConditionalType:dE,parenthesizeConstituentTypesOfUnionType:e=>zU(e,Zse),parenthesizeConstituentTypeOfUnionType:dE,parenthesizeConstituentTypesOfIntersectionType:e=>zU(e,Zse),parenthesizeConstituentTypeOfIntersectionType:dE,parenthesizeOperandOfTypeOperator:dE,parenthesizeOperandOfReadonlyTypeOperator:dE,parenthesizeNonArrayTypeOfPostfixType:dE,parenthesizeElementTypesOfTupleType:e=>zU(e,Zse),parenthesizeElementTypeOfTupleType:dE,parenthesizeTypeOfOptionalType:dE,parenthesizeTypeArguments:e=>e&&zU(e,Zse),parenthesizeLeadingTypeArgument:dE},RCt=0,Aua=[];function mdr(e,t){let r=e&8?dE:Cua,s=Pni(()=>e&1?gua:createParenthesizerRules(U)),a=Pni(()=>e&2?nullNodeConverters:createNodeConverters(U)),o=BQ(K=>(Ce,Ze)=>ut(Ce,K,Ze)),g=BQ(K=>Ce=>ie(K,Ce)),p=BQ(K=>Ce=>J(Ce,K)),f=BQ(K=>()=>nN(K)),m=BQ(K=>Ce=>vh(K,Ce)),y=BQ(K=>(Ce,Ze)=>Xw(K,Ce,Ze)),B=BQ(K=>(Ce,Ze)=>yx(K,Ce,Ze)),v=BQ(K=>(Ce,Ze)=>iN(K,Ce,Ze)),k=BQ(K=>(Ce,Ze)=>P0(K,Ce,Ze)),T=BQ(K=>(Ce,Ze,pt)=>S1(K,Ce,Ze,pt)),O=BQ(K=>(Ce,Ze,pt)=>Ad(K,Ce,Ze,pt)),X=BQ(K=>(Ce,Ze,pt,hr)=>fp(K,Ce,Ze,pt,hr)),U={get parenthesizer(){return s()},get converters(){return a()},baseFactory:t,flags:e,createNodeArray:le,createNumericLiteral:pe,createBigIntLiteral:he,createStringLiteral:Te,createStringLiteralFromNode:ke,createRegularExpressionLiteral:x,createLiteralLikeNode:et,createIdentifier:Xe,createTempVariable:ft,createLoopVariable:Gt,createUniqueName:er,getGeneratedNameForNode:Ur,createPrivateIdentifier:dr,createUniquePrivateName:or,getGeneratedPrivateNameForNode:Fr,createToken:Or,createSuper:In,createThis:Br,createNull:tr,createTrue:gn,createFalse:Gn,createModifier:we,createModifiersFromModifierFlags:Zi,createQualifiedName:Fa,updateQualifiedName:xa,createComputedPropertyName:Qs,updateComputedPropertyName:lr,createTypeParameterDeclaration:ua,updateTypeParameterDeclaration:vi,createParameterDeclaration:Hu,updateParameterDeclaration:Yu,createDecorator:YA,updateDecorator:gd,createPropertySignature:NA,updatePropertySignature:Vd,createPropertyDeclaration:Gr,updatePropertyDeclaration:Ir,createMethodSignature:nn,updateMethodSignature:Cn,createMethodDeclaration:Vn,updateMethodDeclaration:Ji,createConstructorDeclaration:da,updateConstructorDeclaration:og,createGetAccessorDeclaration:mg,updateGetAccessorDeclaration:Lu,createSetAccessorDeclaration:wi,updateSetAccessorDeclaration:ts,createCallSignature:ka,updateCallSignature:qs,createConstructSignature:kl,updateConstructSignature:zo,createIndexSignature:Ta,updateIndexSignature:Tu,createClassStaticBlockDeclaration:Vs,updateClassStaticBlockDeclaration:Uo,createTemplateLiteralTypeSpan:xg,updateTemplateLiteralTypeSpan:_l,createKeywordTypeNode:cu,createTypePredicateNode:Vg,updateTypePredicateNode:lf,createTypeReferenceNode:Nd,updateTypeReferenceNode:ei,createFunctionTypeNode:Qa,updateFunctionTypeNode:Dt,createConstructorTypeNode:Xu,updateConstructorTypeNode:on,createTypeQueryNode:lA,updateTypeQueryNode:XA,createTypeLiteralNode:To,updateTypeLiteralNode:Xl,createArrayTypeNode:Zf,updateArrayTypeNode:Wd,createTupleTypeNode:EA,updateTupleTypeNode:Ps,createNamedTupleMember:Yi,updateNamedTupleMember:ec,createOptionalTypeNode:ul,updateOptionalTypeNode:Ts,createRestTypeNode:RA,updateRestTypeNode:Kd,createUnionTypeNode:Ya,updateUnionTypeNode:lm,createIntersectionTypeNode:$s,updateIntersectionTypeNode:ps,createConditionalTypeNode:oc,updateConditionalTypeNode:NC,createInferTypeNode:fI,updateInferTypeNode:wI,createImportTypeNode:VA,updateImportTypeNode:uf,createParenthesizedType:ja,updateParenthesizedType:su,createThisTypeNode:ii,createTypeOperatorNode:RC,updateTypeOperatorNode:Uh,createIndexedAccessTypeNode:Nm,updateIndexedAccessTypeNode:yl,createMappedTypeNode:Qg,updateMappedTypeNode:op,createLiteralTypeNode:um,updateLiteralTypeNode:lh,createTemplateLiteralType:vl,updateTemplateLiteralType:sl,createObjectBindingPattern:Jl,updateObjectBindingPattern:Pp,createArrayBindingPattern:gC,updateArrayBindingPattern:fs,createBindingElement:go,updateBindingElement:Ro,createArrayLiteralExpression:ql,updateArrayLiteralExpression:Nr,createObjectLiteralExpression:Nn,updateObjectLiteralExpression:Di,createPropertyAccessExpression:e&4?(K,Ce)=>setEmitFlags(Us(K,Ce),262144):Us,updatePropertyAccessExpression:Li,createPropertyAccessChain:e&4?(K,Ce,Ze)=>setEmitFlags(Ll(K,Ce,Ze),262144):Ll,updatePropertyAccessChain:DA,createElementAccessExpression:PI,updateElementAccessExpression:fl,createElementAccessChain:Hm,updateElementAccessChain:I1,createCallExpression:tA,updateCallExpression:Rm,createCallChain:uh,updateCallChain:Qy,createNewExpression:Sp,updateNewExpression:rA,createTaggedTemplateExpression:D0,updateTaggedTemplateExpression:yh,createTypeAssertion:uy,updateTypeAssertion:uc,createParenthesizedExpression:E_,updateParenthesizedExpression:Tb,createFunctionExpression:gm,updateFunctionExpression:gh,createArrowFunction:fg,updateArrowFunction:Am,createDeleteExpression:Nb,updateDeleteExpression:Dm,createTypeOfExpression:OI,updateTypeOfExpression:Bf,createVoidExpression:tI,updateVoidExpression:Lf,createAwaitExpression:yE,updateAwaitExpression:gy,createPrefixUnaryExpression:ie,updatePrefixUnaryExpression:w,createPostfixUnaryExpression:J,updatePostfixUnaryExpression:ye,createBinaryExpression:ut,updateBinaryExpression:Zr,createConditionalExpression:wr,updateConditionalExpression:Hn,createTemplateExpression:Dn,updateTemplateExpression:Wo,createTemplateHead:uA,createTemplateMiddle:rI,createTemplateTail:jd,createNoSubstitutionTemplateLiteral:x0,createTemplateLiteralLikeNode:ap,createYieldExpression:ha,updateYieldExpression:hd,createSpreadElement:II,updateSpreadElement:vf,createClassExpression:Kh,updateClassExpression:Ym,createOmittedExpression:CS,createExpressionWithTypeArguments:mS,updateExpressionWithTypeArguments:bE,createAsExpression:k0,updateAsExpression:EE,createNonNullExpression:hB,updateNonNullExpression:U_,createSatisfiesExpression:bh,updateSatisfiesExpression:K_,createNonNullChain:$l,updateNonNullChain:DC,createMetaProperty:jl,updateMetaProperty:cp,createTemplateSpan:gg,updateTemplateSpan:Xm,createSemicolonClassElement:Rb,createBlock:nA,updateBlock:Cv,createVariableStatement:My,updateVariableStatement:HC,createEmptyStatement:TI,createExpressionStatement:Fi,updateExpressionStatement:Zo,createIfStatement:rs,updateIfStatement:Sc,createDoStatement:Ml,updateDoStatement:xA,createWhileStatement:Vf,updateWhileStatement:zd,createForStatement:Eh,updateForStatement:g2,createForInStatement:xm,updateForInStatement:Ay,createForOfStatement:B_,updateForOfStatement:Qi,createContinueStatement:dy,updateContinueStatement:BE,createBreakStatement:gf,updateBreakStatement:A2,createReturnStatement:vE,updateReturnStatement:G0,createWithStatement:hS,updateWithStatement:C1,createSwitchStatement:pc,updateSwitchStatement:at,createLabeledStatement:$t,updateLabeledStatement:Wr,createThrowStatement:vn,updateThrowStatement:os,createTryStatement:So,updateTryStatement:Ig,createDebuggerStatement:hg,createVariableDeclaration:Af,updateVariableDeclaration:nI,createVariableDeclarationList:AC,updateVariableDeclarationList:Db,createFunctionDeclaration:qT,updateFunctionDeclaration:mv,createClassDeclaration:Hy,updateClassDeclaration:m1,createInterfaceDeclaration:j_,updateInterfaceDeclaration:Qw,createTypeAliasDeclaration:zp,updateTypeAliasDeclaration:py,createEnumDeclaration:d2,updateEnumDeclaration:QI,createModuleDeclaration:gA,updateModuleDeclaration:WA,createModuleBlock:dm,updateModuleBlock:Wf,createCaseBlock:Yy,updateCaseBlock:jh,createNamespaceExportDeclaration:Xy,updateNamespaceExportDeclaration:fy,createImportEqualsDeclaration:yS,updateImportEqualsDeclaration:Jy,createImportDeclaration:SE,updateImportDeclaration:hv,createImportClause:Mw,updateImportClause:_v,createAssertClause:FR,updateAssertClause:$T,createAssertEntry:h1,updateAssertEntry:zh,createImportTypeAssertionContainer:xb,updateImportTypeAssertionContainer:Hw,createImportAttributes:An,updateImportAttributes:_1,createImportAttribute:p2,updateImportAttribute:qh,createNamespaceImport:pp,updateNamespaceImport:Yw,createNamespaceExport:bS,updateNamespaceExport:eN,createNamedImports:kb,updateNamedImports:tN,createImportSpecifier:F0,updateImportSpecifier:lG,createExportAssignment:y1,updateExportAssignment:Gb,createExportDeclaration:Bh,updateExportDeclaration:b1,createNamedExports:TE,updateNamedExports:ES,createExportSpecifier:Uy,updateExportSpecifier:$h,createMissingDeclaration:rN,createExternalModuleReference:yv,updateExternalModuleReference:bv,get createJSDocAllType(){return f(312)},get createJSDocUnknownType(){return f(313)},get createJSDocNonNullableType(){return B(315)},get updateJSDocNonNullableType(){return v(315)},get createJSDocNullableType(){return B(314)},get updateJSDocNullableType(){return v(314)},get createJSDocOptionalType(){return m(316)},get updateJSDocOptionalType(){return y(316)},get createJSDocVariadicType(){return m(318)},get updateJSDocVariadicType(){return y(318)},get createJSDocNamepathType(){return m(319)},get updateJSDocNamepathType(){return y(319)},createJSDocFunctionType:Va,updateJSDocFunctionType:BA,createJSDocTypeLiteral:_d,updateJSDocTypeLiteral:iI,createJSDocTypeExpression:Z0,updateJSDocTypeExpression:_B,createJSDocSignature:Op,updateJSDocSignature:BS,createJSDocTemplateTag:f2,updateJSDocTemplateTag:yB,createJSDocTypedefTag:vS,updateJSDocTypedefTag:Ev,createJSDocParameterTag:Sh,updateJSDocParameterTag:Po,createJSDocPropertyTag:Ky,updateJSDocPropertyTag:Fb,createJSDocCallbackTag:NI,updateJSDocCallbackTag:z_,createJSDocOverloadTag:I2,updateJSDocOverloadTag:E1,createJSDocAugmentsTag:B1,updateJSDocAugmentsTag:L0,createJSDocImplementsTag:wh,updateJSDocImplementsTag:Qp,createJSDocSeeTag:V0,updateJSDocSeeTag:yd,createJSDocImportTag:t_,updateJSDocImportTag:oa,createJSDocNameReference:Bv,updateJSDocNameReference:$u,createJSDocMemberName:dC,updateJSDocMemberName:v1,createJSDocLink:C2,updateJSDocLink:wp,createJSDocLinkCode:tC,updateJSDocLinkCode:bd,createJSDocLinkPlain:W0,updateJSDocLinkPlain:CI,get createJSDocTypeTag(){return O(344)},get updateJSDocTypeTag(){return X(344)},get createJSDocReturnTag(){return O(342)},get updateJSDocReturnTag(){return X(342)},get createJSDocThisTag(){return O(343)},get updateJSDocThisTag(){return X(343)},get createJSDocAuthorTag(){return k(330)},get updateJSDocAuthorTag(){return T(330)},get createJSDocClassTag(){return k(332)},get updateJSDocClassTag(){return T(332)},get createJSDocPublicTag(){return k(333)},get updateJSDocPublicTag(){return T(333)},get createJSDocPrivateTag(){return k(334)},get updateJSDocPrivateTag(){return T(334)},get createJSDocProtectedTag(){return k(335)},get updateJSDocProtectedTag(){return T(335)},get createJSDocReadonlyTag(){return k(336)},get updateJSDocReadonlyTag(){return T(336)},get createJSDocOverrideTag(){return k(337)},get updateJSDocOverrideTag(){return T(337)},get createJSDocDeprecatedTag(){return k(331)},get updateJSDocDeprecatedTag(){return T(331)},get createJSDocThrowsTag(){return O(349)},get updateJSDocThrowsTag(){return X(349)},get createJSDocSatisfiesTag(){return O(350)},get updateJSDocSatisfiesTag(){return X(350)},createJSDocEnumTag:bB,updateJSDocEnumTag:q_,createJSDocUnknownTag:S_,updateJSDocUnknownTag:SS,createJSDocText:kA,updateJSDocText:lZ,createJSDocComment:ZR,updateJSDocComment:NE,createJsxElement:LR,updateJsxElement:dd,createJsxSelfClosingElement:Iy,updateJsxSelfClosingElement:df,createJsxOpeningElement:rC,updateJsxOpeningElement:Do,createJsxClosingElement:$_,updateJsxClosingElement:Ah,createJsxFragment:Qc,createJsxText:sN,updateJsxText:wS,createJsxOpeningFragment:AA,createJsxJsxClosingFragment:w_,updateJsxFragment:Mc,createJsxAttribute:dA,updateJsxAttribute:jy,createJsxAttributes:w1,updateJsxAttributes:Cy,createJsxSpreadAttribute:Th,updateJsxSpreadAttribute:TS,createJsxExpression:Jw,updateJsxExpression:pC,createJsxNamespacedName:dh,updateJsxNamespacedName:vg,createCaseClause:Nh,updateCaseClause:m2,createDefaultClause:Ip,updateDefaultClause:RE,createHeritageClause:T1,updateHeritageClause:km,createCatchClause:sI,updateCatchClause:NS,createPropertyAssignment:$,updatePropertyAssignment:Z,createShorthandPropertyAssignment:VR,updateShorthandPropertyAssignment:G,createSpreadAssignment:ee,updateSpreadAssignment:ve,createEnumMember:xe,updateEnumMember:gt,createSourceFile:nr,updateSourceFile:bo,createRedirectedSourceFile:Xr,createBundle:Sg,updateBundle:id,createSyntheticExpression:YC,createSyntaxList:Sn,createNotEmittedStatement:vr,createNotEmittedTypeElement:tc,createPartiallyEmittedExpression:Yn,updatePartiallyEmittedExpression:Go,createCommaListExpression:fc,updateCommaListExpression:Ju,createSyntheticReferenceExpression:Vu,updateSyntheticReferenceExpression:Dc,cloneNode:Jm,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 g(40)},get createPrefixMinus(){return g(41)},get createPrefixIncrement(){return g(46)},get createPrefixDecrement(){return g(47)},get createBitwiseNot(){return g(55)},get createLogicalNot(){return g(54)},get createPostfixIncrement(){return p(46)},get createPostfixDecrement(){return p(47)},createImmediatelyInvokedFunctionExpression:e0,createImmediatelyInvokedArrowFunction:XC,createVoidZero:EB,createExportDefault:WR,createExternalModuleExport:uG,createTypeCheck:S3,createIsNotTypeCheck:uZ,createMethodCall:oN,createGlobalMethodCall:Tp,createFunctionBindCall:Uu,createFunctionCallCall:P9,createFunctionApplyCall:aN,createArraySliceCall:cN,createArrayConcatCall:gZ,createObjectDefinePropertyCall:gG,createObjectGetOwnPropertyDescriptorCall:RS,createReflectGetCall:Sf,createReflectSetCall:bx,createPropertyDescriptor:AZ,createCallBinding:_2,createAssignmentTargetWrapper:Ke,inlineExpressions:Ft,getInternalName:Jr,getLocalName:Un,getExportName:Ki,getDeclarationName:Ss,getNamespaceMemberName:Bo,getExternalModuleOrNamespaceExportName:Wa,restoreOuterExpressions:h2,restoreEnclosingLabel:AG,createUseStrictPrologue:Ul,copyPrologue:Ks,copyStandardPrologue:iA,copyCustomPrologue:Cg,ensureUseStrict:Ku,liftToBlock:DE,mergeLexicalEnvironment:y2,replaceModifiers:b2,replaceDecoratorsAndModifiers:PR,replacePropertyName:w3};return t3(Aua,K=>K(U)),U;function le(K,Ce){if(K===void 0||K===i2)K=[];else if(Zse(K)){if(Ce===void 0||K.hasTrailingComma===Ce)return K.transformFlags===void 0&&gii(K),ho.attachNodeArrayDebugInfo(K),K;let hr=K.slice();return hr.pos=K.pos,hr.end=K.end,hr.hasTrailingComma=Ce,hr.transformFlags=K.transformFlags,ho.attachNodeArrayDebugInfo(hr),hr}let Ze=K.length,pt=Ze>=1&&Ze<=4?K.slice():K;return pt.pos=-1,pt.end=-1,pt.hasTrailingComma=!!Ce,pt.transformFlags=0,gii(pt),ho.attachNodeArrayDebugInfo(pt),pt}function ae(K){return t.createBaseNode(K)}function ge(K){let Ce=ae(K);return Ce.symbol=void 0,Ce.localSymbol=void 0,Ce}function fe(K,Ce){return K!==Ce&&(K.typeArguments=Ce.typeArguments),Ms(K,Ce)}function pe(K,Ce=0){let Ze=typeof K=="number"?K+"":K;ho.assert(Ze.charCodeAt(0)!==45,"Negative numbers should be created in combination with createPrefixUnaryExpression");let pt=ge(9);return pt.text=Ze,pt.numericLiteralFlags=Ce,Ce&384&&(pt.transformFlags|=1024),pt}function he(K){let Ce=$r(10);return Ce.text=typeof K=="string"?K:nua(K)+"n",Ce.transformFlags|=32,Ce}function be(K,Ce){let Ze=ge(11);return Ze.text=K,Ze.singleQuote=Ce,Ze}function Te(K,Ce,Ze){let pt=be(K,Ce);return pt.hasExtendedUnicodeEscape=Ze,Ze&&(pt.transformFlags|=1024),pt}function ke(K){let Ce=be(hla(K),void 0);return Ce.textSourceNode=K,Ce}function x(K){let Ce=$r(14);return Ce.text=K,Ce}function et(K,Ce){switch(K){case 9:return pe(Ce,0);case 10:return he(Ce);case 11:return Te(Ce,void 0);case 12:return sN(Ce,!1);case 13:return sN(Ce,!0);case 14:return x(Ce);case 15:return ap(K,Ce,void 0,0)}}function Ue(K){let Ce=t.createBaseIdentifierNode(80);return Ce.escapedText=K,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce.symbol=void 0,Ce}function Je(K,Ce,Ze,pt){let hr=Ue(gSe(K));return setIdentifierAutoGenerate(hr,{flags:Ce,id:RCt,prefix:Ze,suffix:pt}),RCt++,hr}function Xe(K,Ce,Ze){Ce===void 0&&K&&(Ce=wsi(K)),Ce===80&&(Ce=void 0);let pt=Ue(gSe(K));return Ze&&(pt.flags|=256),pt.escapedText==="await"&&(pt.transformFlags|=67108864),pt.flags&256&&(pt.transformFlags|=1024),pt}function ft(K,Ce,Ze,pt){let hr=1;Ce&&(hr|=8);let Zn=Je("",hr,Ze,pt);return K&&K(Zn),Zn}function Gt(K){let Ce=2;return K&&(Ce|=8),Je("",Ce,void 0,void 0)}function er(K,Ce=0,Ze,pt){return ho.assert(!(Ce&7),"Argument out of range: flags"),ho.assert((Ce&48)!==32,"GeneratedIdentifierFlags.FileLevel cannot be set without also setting GeneratedIdentifierFlags.Optimistic"),Je(K,3|Ce,Ze,pt)}function Ur(K,Ce=0,Ze,pt){ho.assert(!(Ce&7),"Argument out of range: flags");let hr=K?NAr(K)?LAr(!1,Ze,K,pt,u9):`generated@${getNodeId(K)}`:"";(Ze||pt)&&(Ce|=16);let Zn=Je(hr,4|Ce,Ze,pt);return Zn.original=K,Zn}function Ot(K){let Ce=t.createBasePrivateIdentifierNode(81);return Ce.escapedText=K,Ce.transformFlags|=16777216,Ce}function dr(K){return WCt(K,"#")||ho.fail("First character of private identifier must be #: "+K),Ot(gSe(K))}function Ar(K,Ce,Ze,pt){let hr=Ot(gSe(K));return setIdentifierAutoGenerate(hr,{flags:Ce,id:RCt,prefix:Ze,suffix:pt}),RCt++,hr}function or(K,Ce,Ze){K&&!WCt(K,"#")&&ho.fail("First character of private identifier must be #: "+K);let pt=8|(K?3:1);return Ar(K??"",pt,Ce,Ze)}function Fr(K,Ce,Ze){let pt=NAr(K)?LAr(!0,Ce,K,Ze,u9):`#generated@${getNodeId(K)}`,hr=Ar(pt,4|(Ce||Ze?16:0),Ce,Ze);return hr.original=K,hr}function $r(K){return t.createBaseTokenNode(K)}function Or(K){ho.assert(K>=0&&K<=165,"Invalid token"),ho.assert(K<=15||K>=18,"Invalid token. Use 'createTemplateLiteralLikeNode' to create template literals."),ho.assert(K<=9||K>=15,"Invalid token. Use 'createLiteralLikeNode' to create literals."),ho.assert(K!==80,"Invalid token. Use 'createIdentifier' to create identifiers");let Ce=$r(K),Ze=0;switch(K){case 134:Ze=384;break;case 160:Ze=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:Ze=1;break;case 108:Ze=134218752,Ce.flowNode=void 0;break;case 126:Ze=1024;break;case 129:Ze=16777216;break;case 110:Ze=16384,Ce.flowNode=void 0;break}return Ze&&(Ce.transformFlags|=Ze),Ce}function In(){return Or(108)}function Br(){return Or(110)}function tr(){return Or(106)}function gn(){return Or(112)}function Gn(){return Or(97)}function we(K){return Or(K)}function Zi(K){let Ce=[];return K&32&&Ce.push(we(95)),K&128&&Ce.push(we(138)),K&2048&&Ce.push(we(90)),K&4096&&Ce.push(we(87)),K&1&&Ce.push(we(125)),K&2&&Ce.push(we(123)),K&4&&Ce.push(we(124)),K&64&&Ce.push(we(128)),K&256&&Ce.push(we(126)),K&16&&Ce.push(we(164)),K&8&&Ce.push(we(148)),K&512&&Ce.push(we(129)),K&1024&&Ce.push(we(134)),K&8192&&Ce.push(we(103)),K&16384&&Ce.push(we(147)),Ce.length?Ce:void 0}function Fa(K,Ce){let Ze=ae(166);return Ze.left=K,Ze.right=oI(Ce),Ze.transformFlags|=Fo(Ze.left)|dSe(Ze.right),Ze.flowNode=void 0,Ze}function xa(K,Ce,Ze){return K.left!==Ce||K.right!==Ze?Ms(Fa(Ce,Ze),K):K}function Qs(K){let Ce=ae(167);return Ce.expression=s().parenthesizeExpressionOfComputedPropertyName(K),Ce.transformFlags|=Fo(Ce.expression)|1024|131072,Ce}function lr(K,Ce){return K.expression!==Ce?Ms(Qs(Ce),K):K}function ua(K,Ce,Ze,pt){let hr=ge(168);return hr.modifiers=fA(K),hr.name=oI(Ce),hr.constraint=Ze,hr.default=pt,hr.transformFlags=1,hr.expression=void 0,hr.jsDoc=void 0,hr}function vi(K,Ce,Ze,pt,hr){return K.modifiers!==Ce||K.name!==Ze||K.constraint!==pt||K.default!==hr?Ms(ua(Ce,Ze,pt,hr),K):K}function Hu(K,Ce,Ze,pt,hr,Zn){let _o=ge(169);return _o.modifiers=fA(K),_o.dotDotDotToken=Ce,_o.name=oI(Ze),_o.questionToken=pt,_o.type=hr,_o.initializer=hy(Zn),yla(_o.name)?_o.transformFlags=1:_o.transformFlags=LA(_o.modifiers)|Fo(_o.dotDotDotToken)|qW(_o.name)|Fo(_o.questionToken)|Fo(_o.initializer)|(_o.questionToken??_o.type?1:0)|(_o.dotDotDotToken??_o.initializer?1024:0)|($W(_o.modifiers)&31?8192:0),_o.jsDoc=void 0,_o}function Yu(K,Ce,Ze,pt,hr,Zn,_o){return K.modifiers!==Ce||K.dotDotDotToken!==Ze||K.name!==pt||K.questionToken!==hr||K.type!==Zn||K.initializer!==_o?Ms(Hu(Ce,Ze,pt,hr,Zn,_o),K):K}function YA(K){let Ce=ae(170);return Ce.expression=s().parenthesizeLeftSideOfAccess(K,!1),Ce.transformFlags|=Fo(Ce.expression)|1|8192|33554432,Ce}function gd(K,Ce){return K.expression!==Ce?Ms(YA(Ce),K):K}function NA(K,Ce,Ze,pt){let hr=ge(171);return hr.modifiers=fA(K),hr.name=oI(Ce),hr.type=pt,hr.questionToken=Ze,hr.transformFlags=1,hr.initializer=void 0,hr.jsDoc=void 0,hr}function Vd(K,Ce,Ze,pt,hr){return K.modifiers!==Ce||K.name!==Ze||K.questionToken!==pt||K.type!==hr?jr(NA(Ce,Ze,pt,hr),K):K}function jr(K,Ce){return K!==Ce&&(K.initializer=Ce.initializer),Ms(K,Ce)}function Gr(K,Ce,Ze,pt,hr){let Zn=ge(172);Zn.modifiers=fA(K),Zn.name=oI(Ce),Zn.questionToken=Ze&&dii(Ze)?Ze:void 0,Zn.exclamationToken=Ze&&Aii(Ze)?Ze:void 0,Zn.type=pt,Zn.initializer=hy(hr);let _o=Zn.flags&33554432||$W(Zn.modifiers)&128;return Zn.transformFlags=LA(Zn.modifiers)|qW(Zn.name)|Fo(Zn.initializer)|(_o||Zn.questionToken||Zn.exclamationToken||Zn.type?1:0)|(Aoi(Zn.name)||$W(Zn.modifiers)&256&&Zn.initializer?8192:0)|16777216,Zn.jsDoc=void 0,Zn}function Ir(K,Ce,Ze,pt,hr,Zn){return K.modifiers!==Ce||K.name!==Ze||K.questionToken!==(pt!==void 0&&dii(pt)?pt:void 0)||K.exclamationToken!==(pt!==void 0&&Aii(pt)?pt:void 0)||K.type!==hr||K.initializer!==Zn?Ms(Gr(Ce,Ze,pt,hr,Zn),K):K}function nn(K,Ce,Ze,pt,hr,Zn){let _o=ge(173);return _o.modifiers=fA(K),_o.name=oI(Ce),_o.questionToken=Ze,_o.typeParameters=fA(pt),_o.parameters=fA(hr),_o.type=Zn,_o.transformFlags=1,_o.jsDoc=void 0,_o.locals=void 0,_o.nextContainer=void 0,_o.typeArguments=void 0,_o}function Cn(K,Ce,Ze,pt,hr,Zn,_o){return K.modifiers!==Ce||K.name!==Ze||K.questionToken!==pt||K.typeParameters!==hr||K.parameters!==Zn||K.type!==_o?fe(nn(Ce,Ze,pt,hr,Zn,_o),K):K}function Vn(K,Ce,Ze,pt,hr,Zn,_o,jc){let IA=ge(174);if(IA.modifiers=fA(K),IA.asteriskToken=Ce,IA.name=oI(Ze),IA.questionToken=pt,IA.exclamationToken=void 0,IA.typeParameters=fA(hr),IA.parameters=le(Zn),IA.type=_o,IA.body=jc,!IA.body)IA.transformFlags=1;else{let Lb=$W(IA.modifiers)&1024,Rh=!!IA.asteriskToken,E2=Lb&&Rh;IA.transformFlags=LA(IA.modifiers)|Fo(IA.asteriskToken)|qW(IA.name)|Fo(IA.questionToken)|LA(IA.typeParameters)|LA(IA.parameters)|Fo(IA.type)|Fo(IA.body)&-67108865|(E2?128:Lb?256:Rh?2048:0)|(IA.questionToken||IA.typeParameters||IA.type?1:0)|1024}return IA.typeArguments=void 0,IA.jsDoc=void 0,IA.locals=void 0,IA.nextContainer=void 0,IA.flowNode=void 0,IA.endFlowNode=void 0,IA.returnFlowNode=void 0,IA}function Ji(K,Ce,Ze,pt,hr,Zn,_o,jc,IA){return K.modifiers!==Ce||K.asteriskToken!==Ze||K.name!==pt||K.questionToken!==hr||K.typeParameters!==Zn||K.parameters!==_o||K.type!==jc||K.body!==IA?Yr(Vn(Ce,Ze,pt,hr,Zn,_o,jc,IA),K):K}function Yr(K,Ce){return K!==Ce&&(K.exclamationToken=Ce.exclamationToken),Ms(K,Ce)}function Vs(K){let Ce=ge(175);return Ce.body=K,Ce.transformFlags=Fo(K)|16777216,Ce.modifiers=void 0,Ce.jsDoc=void 0,Ce.locals=void 0,Ce.nextContainer=void 0,Ce.endFlowNode=void 0,Ce.returnFlowNode=void 0,Ce}function Uo(K,Ce){return K.body!==Ce?ai(Vs(Ce),K):K}function ai(K,Ce){return K!==Ce&&(K.modifiers=Ce.modifiers),Ms(K,Ce)}function da(K,Ce,Ze){let pt=ge(176);return pt.modifiers=fA(K),pt.parameters=le(Ce),pt.body=Ze,pt.body?pt.transformFlags=LA(pt.modifiers)|LA(pt.parameters)|Fo(pt.body)&-67108865|1024:pt.transformFlags=1,pt.typeParameters=void 0,pt.type=void 0,pt.typeArguments=void 0,pt.jsDoc=void 0,pt.locals=void 0,pt.nextContainer=void 0,pt.endFlowNode=void 0,pt.returnFlowNode=void 0,pt}function og(K,Ce,Ze,pt){return K.modifiers!==Ce||K.parameters!==Ze||K.body!==pt?Zu(da(Ce,Ze,pt),K):K}function Zu(K,Ce){return K!==Ce&&(K.typeParameters=Ce.typeParameters,K.type=Ce.type),fe(K,Ce)}function mg(K,Ce,Ze,pt,hr){let Zn=ge(177);return Zn.modifiers=fA(K),Zn.name=oI(Ce),Zn.parameters=le(Ze),Zn.type=pt,Zn.body=hr,Zn.body?Zn.transformFlags=LA(Zn.modifiers)|qW(Zn.name)|LA(Zn.parameters)|Fo(Zn.type)|Fo(Zn.body)&-67108865|(Zn.type?1:0):Zn.transformFlags=1,Zn.typeArguments=void 0,Zn.typeParameters=void 0,Zn.jsDoc=void 0,Zn.locals=void 0,Zn.nextContainer=void 0,Zn.flowNode=void 0,Zn.endFlowNode=void 0,Zn.returnFlowNode=void 0,Zn}function Lu(K,Ce,Ze,pt,hr,Zn){return K.modifiers!==Ce||K.name!==Ze||K.parameters!==pt||K.type!==hr||K.body!==Zn?ml(mg(Ce,Ze,pt,hr,Zn),K):K}function ml(K,Ce){return K!==Ce&&(K.typeParameters=Ce.typeParameters),fe(K,Ce)}function wi(K,Ce,Ze,pt){let hr=ge(178);return hr.modifiers=fA(K),hr.name=oI(Ce),hr.parameters=le(Ze),hr.body=pt,hr.body?hr.transformFlags=LA(hr.modifiers)|qW(hr.name)|LA(hr.parameters)|Fo(hr.body)&-67108865|(hr.type?1:0):hr.transformFlags=1,hr.typeArguments=void 0,hr.typeParameters=void 0,hr.type=void 0,hr.jsDoc=void 0,hr.locals=void 0,hr.nextContainer=void 0,hr.flowNode=void 0,hr.endFlowNode=void 0,hr.returnFlowNode=void 0,hr}function ts(K,Ce,Ze,pt,hr){return K.modifiers!==Ce||K.name!==Ze||K.parameters!==pt||K.body!==hr?$i(wi(Ce,Ze,pt,hr),K):K}function $i(K,Ce){return K!==Ce&&(K.typeParameters=Ce.typeParameters,K.type=Ce.type),fe(K,Ce)}function ka(K,Ce,Ze){let pt=ge(179);return pt.typeParameters=fA(K),pt.parameters=fA(Ce),pt.type=Ze,pt.transformFlags=1,pt.jsDoc=void 0,pt.locals=void 0,pt.nextContainer=void 0,pt.typeArguments=void 0,pt}function qs(K,Ce,Ze,pt){return K.typeParameters!==Ce||K.parameters!==Ze||K.type!==pt?fe(ka(Ce,Ze,pt),K):K}function kl(K,Ce,Ze){let pt=ge(180);return pt.typeParameters=fA(K),pt.parameters=fA(Ce),pt.type=Ze,pt.transformFlags=1,pt.jsDoc=void 0,pt.locals=void 0,pt.nextContainer=void 0,pt.typeArguments=void 0,pt}function zo(K,Ce,Ze,pt){return K.typeParameters!==Ce||K.parameters!==Ze||K.type!==pt?fe(kl(Ce,Ze,pt),K):K}function Ta(K,Ce,Ze){let pt=ge(181);return pt.modifiers=fA(K),pt.parameters=fA(Ce),pt.type=Ze,pt.transformFlags=1,pt.jsDoc=void 0,pt.locals=void 0,pt.nextContainer=void 0,pt.typeArguments=void 0,pt}function Tu(K,Ce,Ze,pt){return K.parameters!==Ze||K.type!==pt||K.modifiers!==Ce?fe(Ta(Ce,Ze,pt),K):K}function xg(K,Ce){let Ze=ae(204);return Ze.type=K,Ze.literal=Ce,Ze.transformFlags=1,Ze}function _l(K,Ce,Ze){return K.type!==Ce||K.literal!==Ze?Ms(xg(Ce,Ze),K):K}function cu(K){return Or(K)}function Vg(K,Ce,Ze){let pt=ae(182);return pt.assertsModifier=K,pt.parameterName=oI(Ce),pt.type=Ze,pt.transformFlags=1,pt}function lf(K,Ce,Ze,pt){return K.assertsModifier!==Ce||K.parameterName!==Ze||K.type!==pt?Ms(Vg(Ce,Ze,pt),K):K}function Nd(K,Ce){let Ze=ae(183);return Ze.typeName=oI(K),Ze.typeArguments=Ce&&s().parenthesizeTypeArguments(le(Ce)),Ze.transformFlags=1,Ze}function ei(K,Ce,Ze){return K.typeName!==Ce||K.typeArguments!==Ze?Ms(Nd(Ce,Ze),K):K}function Qa(K,Ce,Ze){let pt=ge(184);return pt.typeParameters=fA(K),pt.parameters=fA(Ce),pt.type=Ze,pt.transformFlags=1,pt.modifiers=void 0,pt.jsDoc=void 0,pt.locals=void 0,pt.nextContainer=void 0,pt.typeArguments=void 0,pt}function Dt(K,Ce,Ze,pt){return K.typeParameters!==Ce||K.parameters!==Ze||K.type!==pt?Gl(Qa(Ce,Ze,pt),K):K}function Gl(K,Ce){return K!==Ce&&(K.modifiers=Ce.modifiers),fe(K,Ce)}function Xu(...K){return K.length===4?us(...K):K.length===3?ag(...K):ho.fail("Incorrect number of arguments specified.")}function us(K,Ce,Ze,pt){let hr=ge(185);return hr.modifiers=fA(K),hr.typeParameters=fA(Ce),hr.parameters=fA(Ze),hr.type=pt,hr.transformFlags=1,hr.jsDoc=void 0,hr.locals=void 0,hr.nextContainer=void 0,hr.typeArguments=void 0,hr}function ag(K,Ce,Ze){return us(void 0,K,Ce,Ze)}function on(...K){return K.length===5?Eo(...K):K.length===4?eA(...K):ho.fail("Incorrect number of arguments specified.")}function Eo(K,Ce,Ze,pt,hr){return K.modifiers!==Ce||K.typeParameters!==Ze||K.parameters!==pt||K.type!==hr?fe(Xu(Ce,Ze,pt,hr),K):K}function eA(K,Ce,Ze,pt){return Eo(K,K.modifiers,Ce,Ze,pt)}function lA(K,Ce){let Ze=ae(186);return Ze.exprName=K,Ze.typeArguments=Ce&&s().parenthesizeTypeArguments(Ce),Ze.transformFlags=1,Ze}function XA(K,Ce,Ze){return K.exprName!==Ce||K.typeArguments!==Ze?Ms(lA(Ce,Ze),K):K}function To(K){let Ce=ge(187);return Ce.members=le(K),Ce.transformFlags=1,Ce}function Xl(K,Ce){return K.members!==Ce?Ms(To(Ce),K):K}function Zf(K){let Ce=ae(188);return Ce.elementType=s().parenthesizeNonArrayTypeOfPostfixType(K),Ce.transformFlags=1,Ce}function Wd(K,Ce){return K.elementType!==Ce?Ms(Zf(Ce),K):K}function EA(K){let Ce=ae(189);return Ce.elements=le(s().parenthesizeElementTypesOfTupleType(K)),Ce.transformFlags=1,Ce}function Ps(K,Ce){return K.elements!==Ce?Ms(EA(Ce),K):K}function Yi(K,Ce,Ze,pt){let hr=ge(202);return hr.dotDotDotToken=K,hr.name=Ce,hr.questionToken=Ze,hr.type=pt,hr.transformFlags=1,hr.jsDoc=void 0,hr}function ec(K,Ce,Ze,pt,hr){return K.dotDotDotToken!==Ce||K.name!==Ze||K.questionToken!==pt||K.type!==hr?Ms(Yi(Ce,Ze,pt,hr),K):K}function ul(K){let Ce=ae(190);return Ce.type=s().parenthesizeTypeOfOptionalType(K),Ce.transformFlags=1,Ce}function Ts(K,Ce){return K.type!==Ce?Ms(ul(Ce),K):K}function RA(K){let Ce=ae(191);return Ce.type=K,Ce.transformFlags=1,Ce}function Kd(K,Ce){return K.type!==Ce?Ms(RA(Ce),K):K}function Na(K,Ce,Ze){let pt=ae(K);return pt.types=U.createNodeArray(Ze(Ce)),pt.transformFlags=1,pt}function ys(K,Ce,Ze){return K.types!==Ce?Ms(Na(K.kind,Ce,Ze),K):K}function Ya(K){return Na(192,K,s().parenthesizeConstituentTypesOfUnionType)}function lm(K,Ce){return ys(K,Ce,s().parenthesizeConstituentTypesOfUnionType)}function $s(K){return Na(193,K,s().parenthesizeConstituentTypesOfIntersectionType)}function ps(K,Ce){return ys(K,Ce,s().parenthesizeConstituentTypesOfIntersectionType)}function oc(K,Ce,Ze,pt){let hr=ae(194);return hr.checkType=s().parenthesizeCheckTypeOfConditionalType(K),hr.extendsType=s().parenthesizeExtendsTypeOfConditionalType(Ce),hr.trueType=Ze,hr.falseType=pt,hr.transformFlags=1,hr.locals=void 0,hr.nextContainer=void 0,hr}function NC(K,Ce,Ze,pt,hr){return K.checkType!==Ce||K.extendsType!==Ze||K.trueType!==pt||K.falseType!==hr?Ms(oc(Ce,Ze,pt,hr),K):K}function fI(K){let Ce=ae(195);return Ce.typeParameter=K,Ce.transformFlags=1,Ce}function wI(K,Ce){return K.typeParameter!==Ce?Ms(fI(Ce),K):K}function vl(K,Ce){let Ze=ae(203);return Ze.head=K,Ze.templateSpans=le(Ce),Ze.transformFlags=1,Ze}function sl(K,Ce,Ze){return K.head!==Ce||K.templateSpans!==Ze?Ms(vl(Ce,Ze),K):K}function VA(K,Ce,Ze,pt,hr=!1){let Zn=ae(205);return Zn.argument=K,Zn.attributes=Ce,Zn.assertions&&Zn.assertions.assertClause&&Zn.attributes&&(Zn.assertions.assertClause=Zn.attributes),Zn.qualifier=Ze,Zn.typeArguments=pt&&s().parenthesizeTypeArguments(pt),Zn.isTypeOf=hr,Zn.transformFlags=1,Zn}function uf(K,Ce,Ze,pt,hr,Zn=K.isTypeOf){return K.argument!==Ce||K.attributes!==Ze||K.qualifier!==pt||K.typeArguments!==hr||K.isTypeOf!==Zn?Ms(VA(Ce,Ze,pt,hr,Zn),K):K}function ja(K){let Ce=ae(196);return Ce.type=K,Ce.transformFlags=1,Ce}function su(K,Ce){return K.type!==Ce?Ms(ja(Ce),K):K}function ii(){let K=ae(197);return K.transformFlags=1,K}function RC(K,Ce){let Ze=ae(198);return Ze.operator=K,Ze.type=K===148?s().parenthesizeOperandOfReadonlyTypeOperator(Ce):s().parenthesizeOperandOfTypeOperator(Ce),Ze.transformFlags=1,Ze}function Uh(K,Ce){return K.type!==Ce?Ms(RC(K.operator,Ce),K):K}function Nm(K,Ce){let Ze=ae(199);return Ze.objectType=s().parenthesizeNonArrayTypeOfPostfixType(K),Ze.indexType=Ce,Ze.transformFlags=1,Ze}function yl(K,Ce,Ze){return K.objectType!==Ce||K.indexType!==Ze?Ms(Nm(Ce,Ze),K):K}function Qg(K,Ce,Ze,pt,hr,Zn){let _o=ge(200);return _o.readonlyToken=K,_o.typeParameter=Ce,_o.nameType=Ze,_o.questionToken=pt,_o.type=hr,_o.members=Zn&&le(Zn),_o.transformFlags=1,_o.locals=void 0,_o.nextContainer=void 0,_o}function op(K,Ce,Ze,pt,hr,Zn,_o){return K.readonlyToken!==Ce||K.typeParameter!==Ze||K.nameType!==pt||K.questionToken!==hr||K.type!==Zn||K.members!==_o?Ms(Qg(Ce,Ze,pt,hr,Zn,_o),K):K}function um(K){let Ce=ae(201);return Ce.literal=K,Ce.transformFlags=1,Ce}function lh(K,Ce){return K.literal!==Ce?Ms(um(Ce),K):K}function Jl(K){let Ce=ae(206);return Ce.elements=le(K),Ce.transformFlags|=LA(Ce.elements)|1024|524288,Ce.transformFlags&32768&&(Ce.transformFlags|=65664),Ce}function Pp(K,Ce){return K.elements!==Ce?Ms(Jl(Ce),K):K}function gC(K){let Ce=ae(207);return Ce.elements=le(K),Ce.transformFlags|=LA(Ce.elements)|1024|524288,Ce}function fs(K,Ce){return K.elements!==Ce?Ms(gC(Ce),K):K}function go(K,Ce,Ze,pt){let hr=ge(208);return hr.dotDotDotToken=K,hr.propertyName=oI(Ce),hr.name=oI(Ze),hr.initializer=hy(pt),hr.transformFlags|=Fo(hr.dotDotDotToken)|qW(hr.propertyName)|qW(hr.name)|Fo(hr.initializer)|(hr.dotDotDotToken?32768:0)|1024,hr.flowNode=void 0,hr}function Ro(K,Ce,Ze,pt,hr){return K.propertyName!==Ze||K.dotDotDotToken!==Ce||K.name!==pt||K.initializer!==hr?Ms(go(Ce,Ze,pt,hr),K):K}function ql(K,Ce){let Ze=ae(209),pt=K&&Cfe(K),hr=le(K,pt&&tga(pt)?!0:void 0);return Ze.elements=s().parenthesizeExpressionsOfCommaDelimitedList(hr),Ze.multiLine=Ce,Ze.transformFlags|=LA(Ze.elements),Ze}function Nr(K,Ce){return K.elements!==Ce?Ms(ql(Ce,K.multiLine),K):K}function Nn(K,Ce){let Ze=ge(210);return Ze.properties=le(K),Ze.multiLine=Ce,Ze.transformFlags|=LA(Ze.properties),Ze.jsDoc=void 0,Ze}function Di(K,Ce){return K.properties!==Ce?Ms(Nn(Ce,K.multiLine),K):K}function ra(K,Ce,Ze){let pt=ge(211);return pt.expression=K,pt.questionDotToken=Ce,pt.name=Ze,pt.transformFlags=Fo(pt.expression)|Fo(pt.questionDotToken)|(hh(pt.name)?dSe(pt.name):Fo(pt.name)|536870912),pt.jsDoc=void 0,pt.flowNode=void 0,pt}function Us(K,Ce){let Ze=ra(s().parenthesizeLeftSideOfAccess(K,!1),void 0,oI(Ce));return CAr(K)&&(Ze.transformFlags|=384),Ze}function Li(K,Ce,Ze){return Aca(K)?DA(K,Ce,K.questionDotToken,zU(Ze,hh)):K.expression!==Ce||K.name!==Ze?Ms(Us(Ce,Ze),K):K}function Ll(K,Ce,Ze){let pt=ra(s().parenthesizeLeftSideOfAccess(K,!0),Ce,oI(Ze));return pt.flags|=64,pt.transformFlags|=32,pt}function DA(K,Ce,Ze,pt){return ho.assert(!!(K.flags&64),"Cannot update a PropertyAccessExpression using updatePropertyAccessChain. Use updatePropertyAccess instead."),K.expression!==Ce||K.questionDotToken!==Ze||K.name!==pt?Ms(Ll(Ce,Ze,pt),K):K}function Rd(K,Ce,Ze){let pt=ge(212);return pt.expression=K,pt.questionDotToken=Ce,pt.argumentExpression=Ze,pt.transformFlags|=Fo(pt.expression)|Fo(pt.questionDotToken)|Fo(pt.argumentExpression),pt.jsDoc=void 0,pt.flowNode=void 0,pt}function PI(K,Ce){let Ze=Rd(s().parenthesizeLeftSideOfAccess(K,!1),void 0,t0(Ce));return CAr(K)&&(Ze.transformFlags|=384),Ze}function fl(K,Ce,Ze){return dca(K)?I1(K,Ce,K.questionDotToken,Ze):K.expression!==Ce||K.argumentExpression!==Ze?Ms(PI(Ce,Ze),K):K}function Hm(K,Ce,Ze){let pt=Rd(s().parenthesizeLeftSideOfAccess(K,!0),Ce,t0(Ze));return pt.flags|=64,pt.transformFlags|=32,pt}function I1(K,Ce,Ze,pt){return ho.assert(!!(K.flags&64),"Cannot update a ElementAccessExpression using updateElementAccessChain. Use updateElementAccess instead."),K.expression!==Ce||K.questionDotToken!==Ze||K.argumentExpression!==pt?Ms(Hm(Ce,Ze,pt),K):K}function Iv(K,Ce,Ze,pt){let hr=ge(213);return hr.expression=K,hr.questionDotToken=Ce,hr.typeArguments=Ze,hr.arguments=pt,hr.transformFlags|=Fo(hr.expression)|Fo(hr.questionDotToken)|LA(hr.typeArguments)|LA(hr.arguments),hr.typeArguments&&(hr.transformFlags|=1),iii(hr.expression)&&(hr.transformFlags|=16384),hr}function tA(K,Ce,Ze){let pt=Iv(s().parenthesizeLeftSideOfAccess(K,!1),void 0,fA(Ce),s().parenthesizeExpressionsOfCommaDelimitedList(le(Ze)));return Bua(pt.expression)&&(pt.transformFlags|=8388608),pt}function Rm(K,Ce,Ze,pt){return zni(K)?Qy(K,Ce,K.questionDotToken,Ze,pt):K.expression!==Ce||K.typeArguments!==Ze||K.arguments!==pt?Ms(tA(Ce,Ze,pt),K):K}function uh(K,Ce,Ze,pt){let hr=Iv(s().parenthesizeLeftSideOfAccess(K,!0),Ce,fA(Ze),s().parenthesizeExpressionsOfCommaDelimitedList(le(pt)));return hr.flags|=64,hr.transformFlags|=32,hr}function Qy(K,Ce,Ze,pt,hr){return ho.assert(!!(K.flags&64),"Cannot update a CallExpression using updateCallChain. Use updateCall instead."),K.expression!==Ce||K.questionDotToken!==Ze||K.typeArguments!==pt||K.arguments!==hr?Ms(uh(Ce,Ze,pt,hr),K):K}function Sp(K,Ce,Ze){let pt=ge(214);return pt.expression=s().parenthesizeExpressionOfNew(K),pt.typeArguments=fA(Ce),pt.arguments=Ze?s().parenthesizeExpressionsOfCommaDelimitedList(Ze):void 0,pt.transformFlags|=Fo(pt.expression)|LA(pt.typeArguments)|LA(pt.arguments)|32,pt.typeArguments&&(pt.transformFlags|=1),pt}function rA(K,Ce,Ze,pt){return K.expression!==Ce||K.typeArguments!==Ze||K.arguments!==pt?Ms(Sp(Ce,Ze,pt),K):K}function D0(K,Ce,Ze){let pt=ae(215);return pt.tag=s().parenthesizeLeftSideOfAccess(K,!1),pt.typeArguments=fA(Ce),pt.template=Ze,pt.transformFlags|=Fo(pt.tag)|LA(pt.typeArguments)|Fo(pt.template)|1024,pt.typeArguments&&(pt.transformFlags|=1),_la(pt.template)&&(pt.transformFlags|=128),pt}function yh(K,Ce,Ze,pt){return K.tag!==Ce||K.typeArguments!==Ze||K.template!==pt?Ms(D0(Ce,Ze,pt),K):K}function uy(K,Ce){let Ze=ae(216);return Ze.expression=s().parenthesizeOperandOfPrefixUnary(Ce),Ze.type=K,Ze.transformFlags|=Fo(Ze.expression)|Fo(Ze.type)|1,Ze}function uc(K,Ce,Ze){return K.type!==Ce||K.expression!==Ze?Ms(uy(Ce,Ze),K):K}function E_(K){let Ce=ae(217);return Ce.expression=K,Ce.transformFlags=Fo(Ce.expression),Ce.jsDoc=void 0,Ce}function Tb(K,Ce){return K.expression!==Ce?Ms(E_(Ce),K):K}function gm(K,Ce,Ze,pt,hr,Zn,_o){let jc=ge(218);jc.modifiers=fA(K),jc.asteriskToken=Ce,jc.name=oI(Ze),jc.typeParameters=fA(pt),jc.parameters=le(hr),jc.type=Zn,jc.body=_o;let IA=$W(jc.modifiers)&1024,Lb=!!jc.asteriskToken,Rh=IA&&Lb;return jc.transformFlags=LA(jc.modifiers)|Fo(jc.asteriskToken)|qW(jc.name)|LA(jc.typeParameters)|LA(jc.parameters)|Fo(jc.type)|Fo(jc.body)&-67108865|(Rh?128:IA?256:Lb?2048:0)|(jc.typeParameters||jc.type?1:0)|4194304,jc.typeArguments=void 0,jc.jsDoc=void 0,jc.locals=void 0,jc.nextContainer=void 0,jc.flowNode=void 0,jc.endFlowNode=void 0,jc.returnFlowNode=void 0,jc}function gh(K,Ce,Ze,pt,hr,Zn,_o,jc){return K.name!==pt||K.modifiers!==Ce||K.asteriskToken!==Ze||K.typeParameters!==hr||K.parameters!==Zn||K.type!==_o||K.body!==jc?fe(gm(Ce,Ze,pt,hr,Zn,_o,jc),K):K}function fg(K,Ce,Ze,pt,hr,Zn){let _o=ge(219);_o.modifiers=fA(K),_o.typeParameters=fA(Ce),_o.parameters=le(Ze),_o.type=pt,_o.equalsGreaterThanToken=hr??Or(39),_o.body=s().parenthesizeConciseBodyOfArrowFunction(Zn);let jc=$W(_o.modifiers)&1024;return _o.transformFlags=LA(_o.modifiers)|LA(_o.typeParameters)|LA(_o.parameters)|Fo(_o.type)|Fo(_o.equalsGreaterThanToken)|Fo(_o.body)&-67108865|(_o.typeParameters||_o.type?1:0)|(jc?16640:0)|1024,_o.typeArguments=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 Am(K,Ce,Ze,pt,hr,Zn,_o){return K.modifiers!==Ce||K.typeParameters!==Ze||K.parameters!==pt||K.type!==hr||K.equalsGreaterThanToken!==Zn||K.body!==_o?fe(fg(Ce,Ze,pt,hr,Zn,_o),K):K}function Nb(K){let Ce=ae(220);return Ce.expression=s().parenthesizeOperandOfPrefixUnary(K),Ce.transformFlags|=Fo(Ce.expression),Ce}function Dm(K,Ce){return K.expression!==Ce?Ms(Nb(Ce),K):K}function OI(K){let Ce=ae(221);return Ce.expression=s().parenthesizeOperandOfPrefixUnary(K),Ce.transformFlags|=Fo(Ce.expression),Ce}function Bf(K,Ce){return K.expression!==Ce?Ms(OI(Ce),K):K}function tI(K){let Ce=ae(222);return Ce.expression=s().parenthesizeOperandOfPrefixUnary(K),Ce.transformFlags|=Fo(Ce.expression),Ce}function Lf(K,Ce){return K.expression!==Ce?Ms(tI(Ce),K):K}function yE(K){let Ce=ae(223);return Ce.expression=s().parenthesizeOperandOfPrefixUnary(K),Ce.transformFlags|=Fo(Ce.expression)|256|128|2097152,Ce}function gy(K,Ce){return K.expression!==Ce?Ms(yE(Ce),K):K}function ie(K,Ce){let Ze=ae(224);return Ze.operator=K,Ze.operand=s().parenthesizeOperandOfPrefixUnary(Ce),Ze.transformFlags|=Fo(Ze.operand),(K===46||K===47)&&hh(Ze.operand)&&!mSe(Ze.operand)&&!Cii(Ze.operand)&&(Ze.transformFlags|=268435456),Ze}function w(K,Ce){return K.operand!==Ce?Ms(ie(K.operator,Ce),K):K}function J(K,Ce){let Ze=ae(225);return Ze.operator=Ce,Ze.operand=s().parenthesizeOperandOfPostfixUnary(K),Ze.transformFlags|=Fo(Ze.operand),hh(Ze.operand)&&!mSe(Ze.operand)&&!Cii(Ze.operand)&&(Ze.transformFlags|=268435456),Ze}function ye(K,Ce){return K.operand!==Ce?Ms(J(Ce,K.operator),K):K}function ut(K,Ce,Ze){let pt=ge(226),hr=dZ(Ce),Zn=hr.kind;return pt.left=s().parenthesizeLeftSideOfBinary(Zn,K),pt.operatorToken=hr,pt.right=s().parenthesizeRightSideOfBinary(Zn,pt.left,Ze),pt.transformFlags|=Fo(pt.left)|Fo(pt.operatorToken)|Fo(pt.right),Zn===61?pt.transformFlags|=32:Zn===64?hoi(pt.left)?pt.transformFlags|=5248|zt(pt.left):jua(pt.left)&&(pt.transformFlags|=5120|zt(pt.left)):Zn===43||Zn===68?pt.transformFlags|=512:Dla(Zn)&&(pt.transformFlags|=16),Zn===103&&Efe(pt.left)&&(pt.transformFlags|=536870912),pt.jsDoc=void 0,pt}function zt(K){return Loi(K)?65536:0}function Zr(K,Ce,Ze,pt){return K.left!==Ce||K.operatorToken!==Ze||K.right!==pt?Ms(ut(Ce,Ze,pt),K):K}function wr(K,Ce,Ze,pt,hr){let Zn=ae(227);return Zn.condition=s().parenthesizeConditionOfConditionalExpression(K),Zn.questionToken=Ce??Or(58),Zn.whenTrue=s().parenthesizeBranchOfConditionalExpression(Ze),Zn.colonToken=pt??Or(59),Zn.whenFalse=s().parenthesizeBranchOfConditionalExpression(hr),Zn.transformFlags|=Fo(Zn.condition)|Fo(Zn.questionToken)|Fo(Zn.whenTrue)|Fo(Zn.colonToken)|Fo(Zn.whenFalse),Zn}function Hn(K,Ce,Ze,pt,hr,Zn){return K.condition!==Ce||K.questionToken!==Ze||K.whenTrue!==pt||K.colonToken!==hr||K.whenFalse!==Zn?Ms(wr(Ce,Ze,pt,hr,Zn),K):K}function Dn(K,Ce){let Ze=ae(228);return Ze.head=K,Ze.templateSpans=le(Ce),Ze.transformFlags|=Fo(Ze.head)|LA(Ze.templateSpans)|1024,Ze}function Wo(K,Ce,Ze){return K.head!==Ce||K.templateSpans!==Ze?Ms(Dn(Ce,Ze),K):K}function Ic(K,Ce,Ze,pt=0){ho.assert(!(pt&-7177),"Unsupported template flags.");let hr;if(Ze!==void 0&&Ze!==Ce&&(hr=dua(K,Ze),typeof hr=="object"))return ho.fail("Invalid raw text");if(Ce===void 0){if(hr===void 0)return ho.fail("Arguments 'text' and 'rawText' may not both be undefined.");Ce=hr}else hr!==void 0&&ho.assert(Ce===hr,"Expected argument 'text' to be the normalized (i.e. 'cooked') version of argument 'rawText'.");return Ce}function Jc(K){let Ce=1024;return K&&(Ce|=128),Ce}function Mo(K,Ce,Ze,pt){let hr=$r(K);return hr.text=Ce,hr.rawText=Ze,hr.templateFlags=pt&7176,hr.transformFlags=Jc(hr.templateFlags),hr}function bu(K,Ce,Ze,pt){let hr=ge(K);return hr.text=Ce,hr.rawText=Ze,hr.templateFlags=pt&7176,hr.transformFlags=Jc(hr.templateFlags),hr}function ap(K,Ce,Ze,pt){return K===15?bu(K,Ce,Ze,pt):Mo(K,Ce,Ze,pt)}function uA(K,Ce,Ze){return K=Ic(16,K,Ce,Ze),ap(16,K,Ce,Ze)}function rI(K,Ce,Ze){return K=Ic(16,K,Ce,Ze),ap(17,K,Ce,Ze)}function jd(K,Ce,Ze){return K=Ic(16,K,Ce,Ze),ap(18,K,Ce,Ze)}function x0(K,Ce,Ze){return K=Ic(16,K,Ce,Ze),bu(15,K,Ce,Ze)}function ha(K,Ce){ho.assert(!K||!!Ce,"A `YieldExpression` with an asteriskToken must have an expression.");let Ze=ae(229);return Ze.expression=Ce&&s().parenthesizeExpressionForDisallowedComma(Ce),Ze.asteriskToken=K,Ze.transformFlags|=Fo(Ze.expression)|Fo(Ze.asteriskToken)|1024|128|1048576,Ze}function hd(K,Ce,Ze){return K.expression!==Ze||K.asteriskToken!==Ce?Ms(ha(Ce,Ze),K):K}function II(K){let Ce=ae(230);return Ce.expression=s().parenthesizeExpressionForDisallowedComma(K),Ce.transformFlags|=Fo(Ce.expression)|1024|32768,Ce}function vf(K,Ce){return K.expression!==Ce?Ms(II(Ce),K):K}function Kh(K,Ce,Ze,pt,hr){let Zn=ge(231);return Zn.modifiers=fA(K),Zn.name=oI(Ce),Zn.typeParameters=fA(Ze),Zn.heritageClauses=fA(pt),Zn.members=le(hr),Zn.transformFlags|=LA(Zn.modifiers)|qW(Zn.name)|LA(Zn.typeParameters)|LA(Zn.heritageClauses)|LA(Zn.members)|(Zn.typeParameters?1:0)|1024,Zn.jsDoc=void 0,Zn}function Ym(K,Ce,Ze,pt,hr,Zn){return K.modifiers!==Ce||K.name!==Ze||K.typeParameters!==pt||K.heritageClauses!==hr||K.members!==Zn?Ms(Kh(Ce,Ze,pt,hr,Zn),K):K}function CS(){return ae(232)}function mS(K,Ce){let Ze=ae(233);return Ze.expression=s().parenthesizeLeftSideOfAccess(K,!1),Ze.typeArguments=Ce&&s().parenthesizeTypeArguments(Ce),Ze.transformFlags|=Fo(Ze.expression)|LA(Ze.typeArguments)|1024,Ze}function bE(K,Ce,Ze){return K.expression!==Ce||K.typeArguments!==Ze?Ms(mS(Ce,Ze),K):K}function k0(K,Ce){let Ze=ae(234);return Ze.expression=K,Ze.type=Ce,Ze.transformFlags|=Fo(Ze.expression)|Fo(Ze.type)|1,Ze}function EE(K,Ce,Ze){return K.expression!==Ce||K.type!==Ze?Ms(k0(Ce,Ze),K):K}function hB(K){let Ce=ae(235);return Ce.expression=s().parenthesizeLeftSideOfAccess(K,!1),Ce.transformFlags|=Fo(Ce.expression)|1,Ce}function U_(K,Ce){return pca(K)?DC(K,Ce):K.expression!==Ce?Ms(hB(Ce),K):K}function bh(K,Ce){let Ze=ae(238);return Ze.expression=K,Ze.type=Ce,Ze.transformFlags|=Fo(Ze.expression)|Fo(Ze.type)|1,Ze}function K_(K,Ce,Ze){return K.expression!==Ce||K.type!==Ze?Ms(bh(Ce,Ze),K):K}function $l(K){let Ce=ae(235);return Ce.flags|=64,Ce.expression=s().parenthesizeLeftSideOfAccess(K,!0),Ce.transformFlags|=Fo(Ce.expression)|1,Ce}function DC(K,Ce){return ho.assert(!!(K.flags&64),"Cannot update a NonNullExpression using updateNonNullChain. Use updateNonNullExpression instead."),K.expression!==Ce?Ms($l(Ce),K):K}function jl(K,Ce){let Ze=ae(236);switch(Ze.keywordToken=K,Ze.name=Ce,Ze.transformFlags|=Fo(Ze.name),K){case 105:Ze.transformFlags|=1024;break;case 102:Ze.transformFlags|=32;break;default:return ho.assertNever(K)}return Ze.flowNode=void 0,Ze}function cp(K,Ce){return K.name!==Ce?Ms(jl(K.keywordToken,Ce),K):K}function gg(K,Ce){let Ze=ae(239);return Ze.expression=K,Ze.literal=Ce,Ze.transformFlags|=Fo(Ze.expression)|Fo(Ze.literal)|1024,Ze}function Xm(K,Ce,Ze){return K.expression!==Ce||K.literal!==Ze?Ms(gg(Ce,Ze),K):K}function Rb(){let K=ae(240);return K.transformFlags|=1024,K}function nA(K,Ce){let Ze=ae(241);return Ze.statements=le(K),Ze.multiLine=Ce,Ze.transformFlags|=LA(Ze.statements),Ze.jsDoc=void 0,Ze.locals=void 0,Ze.nextContainer=void 0,Ze}function Cv(K,Ce){return K.statements!==Ce?Ms(nA(Ce,K.multiLine),K):K}function My(K,Ce){let Ze=ae(243);return Ze.modifiers=fA(K),Ze.declarationList=Jz(Ce)?AC(Ce):Ce,Ze.transformFlags|=LA(Ze.modifiers)|Fo(Ze.declarationList),$W(Ze.modifiers)&128&&(Ze.transformFlags=1),Ze.jsDoc=void 0,Ze.flowNode=void 0,Ze}function HC(K,Ce,Ze){return K.modifiers!==Ce||K.declarationList!==Ze?Ms(My(Ce,Ze),K):K}function TI(){let K=ae(242);return K.jsDoc=void 0,K}function Fi(K){let Ce=ae(244);return Ce.expression=s().parenthesizeExpressionOfExpressionStatement(K),Ce.transformFlags|=Fo(Ce.expression),Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function Zo(K,Ce){return K.expression!==Ce?Ms(Fi(Ce),K):K}function rs(K,Ce,Ze){let pt=ae(245);return pt.expression=K,pt.thenStatement=Ed(Ce),pt.elseStatement=Ed(Ze),pt.transformFlags|=Fo(pt.expression)|Fo(pt.thenStatement)|Fo(pt.elseStatement),pt.jsDoc=void 0,pt.flowNode=void 0,pt}function Sc(K,Ce,Ze,pt){return K.expression!==Ce||K.thenStatement!==Ze||K.elseStatement!==pt?Ms(rs(Ce,Ze,pt),K):K}function Ml(K,Ce){let Ze=ae(246);return Ze.statement=Ed(K),Ze.expression=Ce,Ze.transformFlags|=Fo(Ze.statement)|Fo(Ze.expression),Ze.jsDoc=void 0,Ze.flowNode=void 0,Ze}function xA(K,Ce,Ze){return K.statement!==Ce||K.expression!==Ze?Ms(Ml(Ce,Ze),K):K}function Vf(K,Ce){let Ze=ae(247);return Ze.expression=K,Ze.statement=Ed(Ce),Ze.transformFlags|=Fo(Ze.expression)|Fo(Ze.statement),Ze.jsDoc=void 0,Ze.flowNode=void 0,Ze}function zd(K,Ce,Ze){return K.expression!==Ce||K.statement!==Ze?Ms(Vf(Ce,Ze),K):K}function Eh(K,Ce,Ze,pt){let hr=ae(248);return hr.initializer=K,hr.condition=Ce,hr.incrementor=Ze,hr.statement=Ed(pt),hr.transformFlags|=Fo(hr.initializer)|Fo(hr.condition)|Fo(hr.incrementor)|Fo(hr.statement),hr.jsDoc=void 0,hr.locals=void 0,hr.nextContainer=void 0,hr.flowNode=void 0,hr}function g2(K,Ce,Ze,pt,hr){return K.initializer!==Ce||K.condition!==Ze||K.incrementor!==pt||K.statement!==hr?Ms(Eh(Ce,Ze,pt,hr),K):K}function xm(K,Ce,Ze){let pt=ae(249);return pt.initializer=K,pt.expression=Ce,pt.statement=Ed(Ze),pt.transformFlags|=Fo(pt.initializer)|Fo(pt.expression)|Fo(pt.statement),pt.jsDoc=void 0,pt.locals=void 0,pt.nextContainer=void 0,pt.flowNode=void 0,pt}function Ay(K,Ce,Ze,pt){return K.initializer!==Ce||K.expression!==Ze||K.statement!==pt?Ms(xm(Ce,Ze,pt),K):K}function B_(K,Ce,Ze,pt){let hr=ae(250);return hr.awaitModifier=K,hr.initializer=Ce,hr.expression=s().parenthesizeExpressionForDisallowedComma(Ze),hr.statement=Ed(pt),hr.transformFlags|=Fo(hr.awaitModifier)|Fo(hr.initializer)|Fo(hr.expression)|Fo(hr.statement)|1024,K&&(hr.transformFlags|=128),hr.jsDoc=void 0,hr.locals=void 0,hr.nextContainer=void 0,hr.flowNode=void 0,hr}function Qi(K,Ce,Ze,pt,hr){return K.awaitModifier!==Ce||K.initializer!==Ze||K.expression!==pt||K.statement!==hr?Ms(B_(Ce,Ze,pt,hr),K):K}function dy(K){let Ce=ae(251);return Ce.label=oI(K),Ce.transformFlags|=Fo(Ce.label)|4194304,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function BE(K,Ce){return K.label!==Ce?Ms(dy(Ce),K):K}function gf(K){let Ce=ae(252);return Ce.label=oI(K),Ce.transformFlags|=Fo(Ce.label)|4194304,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function A2(K,Ce){return K.label!==Ce?Ms(gf(Ce),K):K}function vE(K){let Ce=ae(253);return Ce.expression=K,Ce.transformFlags|=Fo(Ce.expression)|128|4194304,Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function G0(K,Ce){return K.expression!==Ce?Ms(vE(Ce),K):K}function hS(K,Ce){let Ze=ae(254);return Ze.expression=K,Ze.statement=Ed(Ce),Ze.transformFlags|=Fo(Ze.expression)|Fo(Ze.statement),Ze.jsDoc=void 0,Ze.flowNode=void 0,Ze}function C1(K,Ce,Ze){return K.expression!==Ce||K.statement!==Ze?Ms(hS(Ce,Ze),K):K}function pc(K,Ce){let Ze=ae(255);return Ze.expression=s().parenthesizeExpressionForDisallowedComma(K),Ze.caseBlock=Ce,Ze.transformFlags|=Fo(Ze.expression)|Fo(Ze.caseBlock),Ze.jsDoc=void 0,Ze.flowNode=void 0,Ze.possiblyExhaustive=!1,Ze}function at(K,Ce,Ze){return K.expression!==Ce||K.caseBlock!==Ze?Ms(pc(Ce,Ze),K):K}function $t(K,Ce){let Ze=ae(256);return Ze.label=oI(K),Ze.statement=Ed(Ce),Ze.transformFlags|=Fo(Ze.label)|Fo(Ze.statement),Ze.jsDoc=void 0,Ze.flowNode=void 0,Ze}function Wr(K,Ce,Ze){return K.label!==Ce||K.statement!==Ze?Ms($t(Ce,Ze),K):K}function vn(K){let Ce=ae(257);return Ce.expression=K,Ce.transformFlags|=Fo(Ce.expression),Ce.jsDoc=void 0,Ce.flowNode=void 0,Ce}function os(K,Ce){return K.expression!==Ce?Ms(vn(Ce),K):K}function So(K,Ce,Ze){let pt=ae(258);return pt.tryBlock=K,pt.catchClause=Ce,pt.finallyBlock=Ze,pt.transformFlags|=Fo(pt.tryBlock)|Fo(pt.catchClause)|Fo(pt.finallyBlock),pt.jsDoc=void 0,pt.flowNode=void 0,pt}function Ig(K,Ce,Ze,pt){return K.tryBlock!==Ce||K.catchClause!==Ze||K.finallyBlock!==pt?Ms(So(Ce,Ze,pt),K):K}function hg(){let K=ae(259);return K.jsDoc=void 0,K.flowNode=void 0,K}function Af(K,Ce,Ze,pt){let hr=ge(260);return hr.name=oI(K),hr.exclamationToken=Ce,hr.type=Ze,hr.initializer=hy(pt),hr.transformFlags|=qW(hr.name)|Fo(hr.initializer)|(hr.exclamationToken??hr.type?1:0),hr.jsDoc=void 0,hr}function nI(K,Ce,Ze,pt,hr){return K.name!==Ce||K.type!==pt||K.exclamationToken!==Ze||K.initializer!==hr?Ms(Af(Ce,Ze,pt,hr),K):K}function AC(K,Ce=0){let Ze=ae(261);return Ze.flags|=Ce&7,Ze.declarations=le(K),Ze.transformFlags|=LA(Ze.declarations)|4194304,Ce&7&&(Ze.transformFlags|=263168),Ce&4&&(Ze.transformFlags|=4),Ze}function Db(K,Ce){return K.declarations!==Ce?Ms(AC(Ce,K.flags),K):K}function qT(K,Ce,Ze,pt,hr,Zn,_o){let jc=ge(262);if(jc.modifiers=fA(K),jc.asteriskToken=Ce,jc.name=oI(Ze),jc.typeParameters=fA(pt),jc.parameters=le(hr),jc.type=Zn,jc.body=_o,!jc.body||$W(jc.modifiers)&128)jc.transformFlags=1;else{let IA=$W(jc.modifiers)&1024,Lb=!!jc.asteriskToken,Rh=IA&&Lb;jc.transformFlags=LA(jc.modifiers)|Fo(jc.asteriskToken)|qW(jc.name)|LA(jc.typeParameters)|LA(jc.parameters)|Fo(jc.type)|Fo(jc.body)&-67108865|(Rh?128:IA?256:Lb?2048:0)|(jc.typeParameters||jc.type?1:0)|4194304}return jc.typeArguments=void 0,jc.jsDoc=void 0,jc.locals=void 0,jc.nextContainer=void 0,jc.endFlowNode=void 0,jc.returnFlowNode=void 0,jc}function mv(K,Ce,Ze,pt,hr,Zn,_o,jc){return K.modifiers!==Ce||K.asteriskToken!==Ze||K.name!==pt||K.typeParameters!==hr||K.parameters!==Zn||K.type!==_o||K.body!==jc?Ow(qT(Ce,Ze,pt,hr,Zn,_o,jc),K):K}function Ow(K,Ce){return K!==Ce&&K.modifiers===Ce.modifiers&&(K.modifiers=Ce.modifiers),fe(K,Ce)}function Hy(K,Ce,Ze,pt,hr){let Zn=ge(263);return Zn.modifiers=fA(K),Zn.name=oI(Ce),Zn.typeParameters=fA(Ze),Zn.heritageClauses=fA(pt),Zn.members=le(hr),$W(Zn.modifiers)&128?Zn.transformFlags=1:(Zn.transformFlags|=LA(Zn.modifiers)|qW(Zn.name)|LA(Zn.typeParameters)|LA(Zn.heritageClauses)|LA(Zn.members)|(Zn.typeParameters?1:0)|1024,Zn.transformFlags&8192&&(Zn.transformFlags|=1)),Zn.jsDoc=void 0,Zn}function m1(K,Ce,Ze,pt,hr,Zn){return K.modifiers!==Ce||K.name!==Ze||K.typeParameters!==pt||K.heritageClauses!==hr||K.members!==Zn?Ms(Hy(Ce,Ze,pt,hr,Zn),K):K}function j_(K,Ce,Ze,pt,hr){let Zn=ge(264);return Zn.modifiers=fA(K),Zn.name=oI(Ce),Zn.typeParameters=fA(Ze),Zn.heritageClauses=fA(pt),Zn.members=le(hr),Zn.transformFlags=1,Zn.jsDoc=void 0,Zn}function Qw(K,Ce,Ze,pt,hr,Zn){return K.modifiers!==Ce||K.name!==Ze||K.typeParameters!==pt||K.heritageClauses!==hr||K.members!==Zn?Ms(j_(Ce,Ze,pt,hr,Zn),K):K}function zp(K,Ce,Ze,pt){let hr=ge(265);return hr.modifiers=fA(K),hr.name=oI(Ce),hr.typeParameters=fA(Ze),hr.type=pt,hr.transformFlags=1,hr.jsDoc=void 0,hr.locals=void 0,hr.nextContainer=void 0,hr}function py(K,Ce,Ze,pt,hr){return K.modifiers!==Ce||K.name!==Ze||K.typeParameters!==pt||K.type!==hr?Ms(zp(Ce,Ze,pt,hr),K):K}function d2(K,Ce,Ze){let pt=ge(266);return pt.modifiers=fA(K),pt.name=oI(Ce),pt.members=le(Ze),pt.transformFlags|=LA(pt.modifiers)|Fo(pt.name)|LA(pt.members)|1,pt.transformFlags&=-67108865,pt.jsDoc=void 0,pt}function QI(K,Ce,Ze,pt){return K.modifiers!==Ce||K.name!==Ze||K.members!==pt?Ms(d2(Ce,Ze,pt),K):K}function gA(K,Ce,Ze,pt=0){let hr=ge(267);return hr.modifiers=fA(K),hr.flags|=pt&2088,hr.name=Ce,hr.body=Ze,$W(hr.modifiers)&128?hr.transformFlags=1:hr.transformFlags|=LA(hr.modifiers)|Fo(hr.name)|Fo(hr.body)|1,hr.transformFlags&=-67108865,hr.jsDoc=void 0,hr.locals=void 0,hr.nextContainer=void 0,hr}function WA(K,Ce,Ze,pt){return K.modifiers!==Ce||K.name!==Ze||K.body!==pt?Ms(gA(Ce,Ze,pt,K.flags),K):K}function dm(K){let Ce=ae(268);return Ce.statements=le(K),Ce.transformFlags|=LA(Ce.statements),Ce.jsDoc=void 0,Ce}function Wf(K,Ce){return K.statements!==Ce?Ms(dm(Ce),K):K}function Yy(K){let Ce=ae(269);return Ce.clauses=le(K),Ce.transformFlags|=LA(Ce.clauses),Ce.locals=void 0,Ce.nextContainer=void 0,Ce}function jh(K,Ce){return K.clauses!==Ce?Ms(Yy(Ce),K):K}function Xy(K){let Ce=ge(270);return Ce.name=oI(K),Ce.transformFlags|=dSe(Ce.name)|1,Ce.modifiers=void 0,Ce.jsDoc=void 0,Ce}function fy(K,Ce){return K.name!==Ce?_S(Xy(Ce),K):K}function _S(K,Ce){return K!==Ce&&(K.modifiers=Ce.modifiers),Ms(K,Ce)}function yS(K,Ce,Ze,pt){let hr=ge(271);return hr.modifiers=fA(K),hr.name=oI(Ze),hr.isTypeOnly=Ce,hr.moduleReference=pt,hr.transformFlags|=LA(hr.modifiers)|dSe(hr.name)|Fo(hr.moduleReference),Doi(hr.moduleReference)||(hr.transformFlags|=1),hr.transformFlags&=-67108865,hr.jsDoc=void 0,hr}function Jy(K,Ce,Ze,pt,hr){return K.modifiers!==Ce||K.isTypeOnly!==Ze||K.name!==pt||K.moduleReference!==hr?Ms(yS(Ce,Ze,pt,hr),K):K}function SE(K,Ce,Ze,pt){let hr=ae(272);return hr.modifiers=fA(K),hr.importClause=Ce,hr.moduleSpecifier=Ze,hr.attributes=hr.assertClause=pt,hr.transformFlags|=Fo(hr.importClause)|Fo(hr.moduleSpecifier),hr.transformFlags&=-67108865,hr.jsDoc=void 0,hr}function hv(K,Ce,Ze,pt,hr){return K.modifiers!==Ce||K.importClause!==Ze||K.moduleSpecifier!==pt||K.attributes!==hr?Ms(SE(Ce,Ze,pt,hr),K):K}function Mw(K,Ce,Ze){let pt=ge(273);return pt.isTypeOnly=K,pt.name=Ce,pt.namedBindings=Ze,pt.transformFlags|=Fo(pt.name)|Fo(pt.namedBindings),K&&(pt.transformFlags|=1),pt.transformFlags&=-67108865,pt}function _v(K,Ce,Ze,pt){return K.isTypeOnly!==Ce||K.name!==Ze||K.namedBindings!==pt?Ms(Mw(Ce,Ze,pt),K):K}function FR(K,Ce){let Ze=ae(300);return Ze.elements=le(K),Ze.multiLine=Ce,Ze.token=132,Ze.transformFlags|=4,Ze}function $T(K,Ce,Ze){return K.elements!==Ce||K.multiLine!==Ze?Ms(FR(Ce,Ze),K):K}function h1(K,Ce){let Ze=ae(301);return Ze.name=K,Ze.value=Ce,Ze.transformFlags|=4,Ze}function zh(K,Ce,Ze){return K.name!==Ce||K.value!==Ze?Ms(h1(Ce,Ze),K):K}function xb(K,Ce){let Ze=ae(302);return Ze.assertClause=K,Ze.multiLine=Ce,Ze}function Hw(K,Ce,Ze){return K.assertClause!==Ce||K.multiLine!==Ze?Ms(xb(Ce,Ze),K):K}function An(K,Ce,Ze){let pt=ae(300);return pt.token=Ze??118,pt.elements=le(K),pt.multiLine=Ce,pt.transformFlags|=4,pt}function _1(K,Ce,Ze){return K.elements!==Ce||K.multiLine!==Ze?Ms(An(Ce,Ze,K.token),K):K}function p2(K,Ce){let Ze=ae(301);return Ze.name=K,Ze.value=Ce,Ze.transformFlags|=4,Ze}function qh(K,Ce,Ze){return K.name!==Ce||K.value!==Ze?Ms(p2(Ce,Ze),K):K}function pp(K){let Ce=ge(274);return Ce.name=K,Ce.transformFlags|=Fo(Ce.name),Ce.transformFlags&=-67108865,Ce}function Yw(K,Ce){return K.name!==Ce?Ms(pp(Ce),K):K}function bS(K){let Ce=ge(280);return Ce.name=K,Ce.transformFlags|=Fo(Ce.name)|32,Ce.transformFlags&=-67108865,Ce}function eN(K,Ce){return K.name!==Ce?Ms(bS(Ce),K):K}function kb(K){let Ce=ae(275);return Ce.elements=le(K),Ce.transformFlags|=LA(Ce.elements),Ce.transformFlags&=-67108865,Ce}function tN(K,Ce){return K.elements!==Ce?Ms(kb(Ce),K):K}function F0(K,Ce,Ze){let pt=ge(276);return pt.isTypeOnly=K,pt.propertyName=Ce,pt.name=Ze,pt.transformFlags|=Fo(pt.propertyName)|Fo(pt.name),pt.transformFlags&=-67108865,pt}function lG(K,Ce,Ze,pt){return K.isTypeOnly!==Ce||K.propertyName!==Ze||K.name!==pt?Ms(F0(Ce,Ze,pt),K):K}function y1(K,Ce,Ze){let pt=ge(277);return pt.modifiers=fA(K),pt.isExportEquals=Ce,pt.expression=Ce?s().parenthesizeRightSideOfBinary(64,void 0,Ze):s().parenthesizeExpressionOfExportDefault(Ze),pt.transformFlags|=LA(pt.modifiers)|Fo(pt.expression),pt.transformFlags&=-67108865,pt.jsDoc=void 0,pt}function Gb(K,Ce,Ze){return K.modifiers!==Ce||K.expression!==Ze?Ms(y1(Ce,K.isExportEquals,Ze),K):K}function Bh(K,Ce,Ze,pt,hr){let Zn=ge(278);return Zn.modifiers=fA(K),Zn.isTypeOnly=Ce,Zn.exportClause=Ze,Zn.moduleSpecifier=pt,Zn.attributes=Zn.assertClause=hr,Zn.transformFlags|=LA(Zn.modifiers)|Fo(Zn.exportClause)|Fo(Zn.moduleSpecifier),Zn.transformFlags&=-67108865,Zn.jsDoc=void 0,Zn}function b1(K,Ce,Ze,pt,hr,Zn){return K.modifiers!==Ce||K.isTypeOnly!==Ze||K.exportClause!==pt||K.moduleSpecifier!==hr||K.attributes!==Zn?wE(Bh(Ce,Ze,pt,hr,Zn),K):K}function wE(K,Ce){return K!==Ce&&K.modifiers===Ce.modifiers&&(K.modifiers=Ce.modifiers),Ms(K,Ce)}function TE(K){let Ce=ae(279);return Ce.elements=le(K),Ce.transformFlags|=LA(Ce.elements),Ce.transformFlags&=-67108865,Ce}function ES(K,Ce){return K.elements!==Ce?Ms(TE(Ce),K):K}function Uy(K,Ce,Ze){let pt=ae(281);return pt.isTypeOnly=K,pt.propertyName=oI(Ce),pt.name=oI(Ze),pt.transformFlags|=Fo(pt.propertyName)|Fo(pt.name),pt.transformFlags&=-67108865,pt.jsDoc=void 0,pt}function $h(K,Ce,Ze,pt){return K.isTypeOnly!==Ce||K.propertyName!==Ze||K.name!==pt?Ms(Uy(Ce,Ze,pt),K):K}function rN(){let K=ge(282);return K.jsDoc=void 0,K}function yv(K){let Ce=ae(283);return Ce.expression=K,Ce.transformFlags|=Fo(Ce.expression),Ce.transformFlags&=-67108865,Ce}function bv(K,Ce){return K.expression!==Ce?Ms(yv(Ce),K):K}function nN(K){return ae(K)}function yx(K,Ce,Ze=!1){let pt=vh(K,Ze?Ce&&s().parenthesizeNonArrayTypeOfPostfixType(Ce):Ce);return pt.postfix=Ze,pt}function vh(K,Ce){let Ze=ae(K);return Ze.type=Ce,Ze}function iN(K,Ce,Ze){return Ce.type!==Ze?Ms(yx(K,Ze,Ce.postfix),Ce):Ce}function Xw(K,Ce,Ze){return Ce.type!==Ze?Ms(vh(K,Ze),Ce):Ce}function Va(K,Ce){let Ze=ge(317);return Ze.parameters=fA(K),Ze.type=Ce,Ze.transformFlags=LA(Ze.parameters)|(Ze.type?1:0),Ze.jsDoc=void 0,Ze.locals=void 0,Ze.nextContainer=void 0,Ze.typeArguments=void 0,Ze}function BA(K,Ce,Ze){return K.parameters!==Ce||K.type!==Ze?Ms(Va(Ce,Ze),K):K}function _d(K,Ce=!1){let Ze=ge(322);return Ze.jsDocPropertyTags=fA(K),Ze.isArrayType=Ce,Ze}function iI(K,Ce,Ze){return K.jsDocPropertyTags!==Ce||K.isArrayType!==Ze?Ms(_d(Ce,Ze),K):K}function Z0(K){let Ce=ae(309);return Ce.type=K,Ce}function _B(K,Ce){return K.type!==Ce?Ms(Z0(Ce),K):K}function Op(K,Ce,Ze){let pt=ge(323);return pt.typeParameters=fA(K),pt.parameters=le(Ce),pt.type=Ze,pt.jsDoc=void 0,pt.locals=void 0,pt.nextContainer=void 0,pt}function BS(K,Ce,Ze,pt){return K.typeParameters!==Ce||K.parameters!==Ze||K.type!==pt?Ms(Op(Ce,Ze,pt),K):K}function pm(K){let Ce=DCt(K.kind);return K.tagName.escapedText===gSe(Ce)?K.tagName:Xe(Ce)}function e_(K,Ce,Ze){let pt=ae(K);return pt.tagName=Ce,pt.comment=Ze,pt}function v_(K,Ce,Ze){let pt=ge(K);return pt.tagName=Ce,pt.comment=Ze,pt}function f2(K,Ce,Ze,pt){let hr=e_(345,K??Xe("template"),pt);return hr.constraint=Ce,hr.typeParameters=le(Ze),hr}function yB(K,Ce=pm(K),Ze,pt,hr){return K.tagName!==Ce||K.constraint!==Ze||K.typeParameters!==pt||K.comment!==hr?Ms(f2(Ce,Ze,pt,hr),K):K}function vS(K,Ce,Ze,pt){let hr=v_(346,K??Xe("typedef"),pt);return hr.typeExpression=Ce,hr.fullName=Ze,hr.name=mii(Ze),hr.locals=void 0,hr.nextContainer=void 0,hr}function Ev(K,Ce=pm(K),Ze,pt,hr){return K.tagName!==Ce||K.typeExpression!==Ze||K.fullName!==pt||K.comment!==hr?Ms(vS(Ce,Ze,pt,hr),K):K}function Sh(K,Ce,Ze,pt,hr,Zn){let _o=v_(341,K??Xe("param"),Zn);return _o.typeExpression=pt,_o.name=Ce,_o.isNameFirst=!!hr,_o.isBracketed=Ze,_o}function Po(K,Ce=pm(K),Ze,pt,hr,Zn,_o){return K.tagName!==Ce||K.name!==Ze||K.isBracketed!==pt||K.typeExpression!==hr||K.isNameFirst!==Zn||K.comment!==_o?Ms(Sh(Ce,Ze,pt,hr,Zn,_o),K):K}function Ky(K,Ce,Ze,pt,hr,Zn){let _o=v_(348,K??Xe("prop"),Zn);return _o.typeExpression=pt,_o.name=Ce,_o.isNameFirst=!!hr,_o.isBracketed=Ze,_o}function Fb(K,Ce=pm(K),Ze,pt,hr,Zn,_o){return K.tagName!==Ce||K.name!==Ze||K.isBracketed!==pt||K.typeExpression!==hr||K.isNameFirst!==Zn||K.comment!==_o?Ms(Ky(Ce,Ze,pt,hr,Zn,_o),K):K}function NI(K,Ce,Ze,pt){let hr=v_(338,K??Xe("callback"),pt);return hr.typeExpression=Ce,hr.fullName=Ze,hr.name=mii(Ze),hr.locals=void 0,hr.nextContainer=void 0,hr}function z_(K,Ce=pm(K),Ze,pt,hr){return K.tagName!==Ce||K.typeExpression!==Ze||K.fullName!==pt||K.comment!==hr?Ms(NI(Ce,Ze,pt,hr),K):K}function I2(K,Ce,Ze){let pt=e_(339,K??Xe("overload"),Ze);return pt.typeExpression=Ce,pt}function E1(K,Ce=pm(K),Ze,pt){return K.tagName!==Ce||K.typeExpression!==Ze||K.comment!==pt?Ms(I2(Ce,Ze,pt),K):K}function B1(K,Ce,Ze){let pt=e_(328,K??Xe("augments"),Ze);return pt.class=Ce,pt}function L0(K,Ce=pm(K),Ze,pt){return K.tagName!==Ce||K.class!==Ze||K.comment!==pt?Ms(B1(Ce,Ze,pt),K):K}function wh(K,Ce,Ze){let pt=e_(329,K??Xe("implements"),Ze);return pt.class=Ce,pt}function V0(K,Ce,Ze){let pt=e_(347,K??Xe("see"),Ze);return pt.name=Ce,pt}function yd(K,Ce,Ze,pt){return K.tagName!==Ce||K.name!==Ze||K.comment!==pt?Ms(V0(Ce,Ze,pt),K):K}function Bv(K){let Ce=ae(310);return Ce.name=K,Ce}function $u(K,Ce){return K.name!==Ce?Ms(Bv(Ce),K):K}function dC(K,Ce){let Ze=ae(311);return Ze.left=K,Ze.right=Ce,Ze.transformFlags|=Fo(Ze.left)|Fo(Ze.right),Ze}function v1(K,Ce,Ze){return K.left!==Ce||K.right!==Ze?Ms(dC(Ce,Ze),K):K}function C2(K,Ce){let Ze=ae(324);return Ze.name=K,Ze.text=Ce,Ze}function wp(K,Ce,Ze){return K.name!==Ce?Ms(C2(Ce,Ze),K):K}function tC(K,Ce){let Ze=ae(325);return Ze.name=K,Ze.text=Ce,Ze}function bd(K,Ce,Ze){return K.name!==Ce?Ms(tC(Ce,Ze),K):K}function W0(K,Ce){let Ze=ae(326);return Ze.name=K,Ze.text=Ce,Ze}function CI(K,Ce,Ze){return K.name!==Ce?Ms(W0(Ce,Ze),K):K}function Qp(K,Ce=pm(K),Ze,pt){return K.tagName!==Ce||K.class!==Ze||K.comment!==pt?Ms(wh(Ce,Ze,pt),K):K}function P0(K,Ce,Ze){return e_(K,Ce??Xe(DCt(K)),Ze)}function S1(K,Ce,Ze=pm(Ce),pt){return Ce.tagName!==Ze||Ce.comment!==pt?Ms(P0(K,Ze,pt),Ce):Ce}function Ad(K,Ce,Ze,pt){let hr=e_(K,Ce??Xe(DCt(K)),pt);return hr.typeExpression=Ze,hr}function fp(K,Ce,Ze=pm(Ce),pt,hr){return Ce.tagName!==Ze||Ce.typeExpression!==pt||Ce.comment!==hr?Ms(Ad(K,Ze,pt,hr),Ce):Ce}function S_(K,Ce){return e_(327,K,Ce)}function SS(K,Ce,Ze){return K.tagName!==Ce||K.comment!==Ze?Ms(S_(Ce,Ze),K):K}function bB(K,Ce,Ze){let pt=v_(340,K??Xe(DCt(340)),Ze);return pt.typeExpression=Ce,pt.locals=void 0,pt.nextContainer=void 0,pt}function q_(K,Ce=pm(K),Ze,pt){return K.tagName!==Ce||K.typeExpression!==Ze||K.comment!==pt?Ms(bB(Ce,Ze,pt),K):K}function t_(K,Ce,Ze,pt,hr){let Zn=e_(351,K??Xe("import"),hr);return Zn.importClause=Ce,Zn.moduleSpecifier=Ze,Zn.attributes=pt,Zn.comment=hr,Zn}function oa(K,Ce,Ze,pt,hr,Zn){return K.tagName!==Ce||K.comment!==Zn||K.importClause!==Ze||K.moduleSpecifier!==pt||K.attributes!==hr?Ms(t_(Ce,Ze,pt,hr,Zn),K):K}function kA(K){let Ce=ae(321);return Ce.text=K,Ce}function lZ(K,Ce){return K.text!==Ce?Ms(kA(Ce),K):K}function ZR(K,Ce){let Ze=ae(320);return Ze.comment=K,Ze.tags=fA(Ce),Ze}function NE(K,Ce,Ze){return K.comment!==Ce||K.tags!==Ze?Ms(ZR(Ce,Ze),K):K}function LR(K,Ce,Ze){let pt=ae(284);return pt.openingElement=K,pt.children=le(Ce),pt.closingElement=Ze,pt.transformFlags|=Fo(pt.openingElement)|LA(pt.children)|Fo(pt.closingElement)|2,pt}function dd(K,Ce,Ze,pt){return K.openingElement!==Ce||K.children!==Ze||K.closingElement!==pt?Ms(LR(Ce,Ze,pt),K):K}function Iy(K,Ce,Ze){let pt=ae(285);return pt.tagName=K,pt.typeArguments=fA(Ce),pt.attributes=Ze,pt.transformFlags|=Fo(pt.tagName)|LA(pt.typeArguments)|Fo(pt.attributes)|2,pt.typeArguments&&(pt.transformFlags|=1),pt}function df(K,Ce,Ze,pt){return K.tagName!==Ce||K.typeArguments!==Ze||K.attributes!==pt?Ms(Iy(Ce,Ze,pt),K):K}function rC(K,Ce,Ze){let pt=ae(286);return pt.tagName=K,pt.typeArguments=fA(Ce),pt.attributes=Ze,pt.transformFlags|=Fo(pt.tagName)|LA(pt.typeArguments)|Fo(pt.attributes)|2,Ce&&(pt.transformFlags|=1),pt}function Do(K,Ce,Ze,pt){return K.tagName!==Ce||K.typeArguments!==Ze||K.attributes!==pt?Ms(rC(Ce,Ze,pt),K):K}function $_(K){let Ce=ae(287);return Ce.tagName=K,Ce.transformFlags|=Fo(Ce.tagName)|2,Ce}function Ah(K,Ce){return K.tagName!==Ce?Ms($_(Ce),K):K}function Qc(K,Ce,Ze){let pt=ae(288);return pt.openingFragment=K,pt.children=le(Ce),pt.closingFragment=Ze,pt.transformFlags|=Fo(pt.openingFragment)|LA(pt.children)|Fo(pt.closingFragment)|2,pt}function Mc(K,Ce,Ze,pt){return K.openingFragment!==Ce||K.children!==Ze||K.closingFragment!==pt?Ms(Qc(Ce,Ze,pt),K):K}function sN(K,Ce){let Ze=ae(12);return Ze.text=K,Ze.containsOnlyTriviaWhiteSpaces=!!Ce,Ze.transformFlags|=2,Ze}function wS(K,Ce,Ze){return K.text!==Ce||K.containsOnlyTriviaWhiteSpaces!==Ze?Ms(sN(Ce,Ze),K):K}function AA(){let K=ae(289);return K.transformFlags|=2,K}function w_(){let K=ae(290);return K.transformFlags|=2,K}function dA(K,Ce){let Ze=ge(291);return Ze.name=K,Ze.initializer=Ce,Ze.transformFlags|=Fo(Ze.name)|Fo(Ze.initializer)|2,Ze}function jy(K,Ce,Ze){return K.name!==Ce||K.initializer!==Ze?Ms(dA(Ce,Ze),K):K}function w1(K){let Ce=ge(292);return Ce.properties=le(K),Ce.transformFlags|=LA(Ce.properties)|2,Ce}function Cy(K,Ce){return K.properties!==Ce?Ms(w1(Ce),K):K}function Th(K){let Ce=ae(293);return Ce.expression=K,Ce.transformFlags|=Fo(Ce.expression)|2,Ce}function TS(K,Ce){return K.expression!==Ce?Ms(Th(Ce),K):K}function Jw(K,Ce){let Ze=ae(294);return Ze.dotDotDotToken=K,Ze.expression=Ce,Ze.transformFlags|=Fo(Ze.dotDotDotToken)|Fo(Ze.expression)|2,Ze}function pC(K,Ce){return K.expression!==Ce?Ms(Jw(K.dotDotDotToken,Ce),K):K}function dh(K,Ce){let Ze=ae(295);return Ze.namespace=K,Ze.name=Ce,Ze.transformFlags|=Fo(Ze.namespace)|Fo(Ze.name)|2,Ze}function vg(K,Ce,Ze){return K.namespace!==Ce||K.name!==Ze?Ms(dh(Ce,Ze),K):K}function Nh(K,Ce){let Ze=ae(296);return Ze.expression=s().parenthesizeExpressionForDisallowedComma(K),Ze.statements=le(Ce),Ze.transformFlags|=Fo(Ze.expression)|LA(Ze.statements),Ze.jsDoc=void 0,Ze}function m2(K,Ce,Ze){return K.expression!==Ce||K.statements!==Ze?Ms(Nh(Ce,Ze),K):K}function Ip(K){let Ce=ae(297);return Ce.statements=le(K),Ce.transformFlags=LA(Ce.statements),Ce}function RE(K,Ce){return K.statements!==Ce?Ms(Ip(Ce),K):K}function T1(K,Ce){let Ze=ae(298);switch(Ze.token=K,Ze.types=le(Ce),Ze.transformFlags|=LA(Ze.types),K){case 96:Ze.transformFlags|=1024;break;case 119:Ze.transformFlags|=1;break;default:return ho.assertNever(K)}return Ze}function km(K,Ce){return K.types!==Ce?Ms(T1(K.token,Ce),K):K}function sI(K,Ce){let Ze=ae(299);return Ze.variableDeclaration=Pd(K),Ze.block=Ce,Ze.transformFlags|=Fo(Ze.variableDeclaration)|Fo(Ze.block)|(K?0:64),Ze.locals=void 0,Ze.nextContainer=void 0,Ze}function NS(K,Ce,Ze){return K.variableDeclaration!==Ce||K.block!==Ze?Ms(sI(Ce,Ze),K):K}function $(K,Ce){let Ze=ge(303);return Ze.name=oI(K),Ze.initializer=s().parenthesizeExpressionForDisallowedComma(Ce),Ze.transformFlags|=qW(Ze.name)|Fo(Ze.initializer),Ze.modifiers=void 0,Ze.questionToken=void 0,Ze.exclamationToken=void 0,Ze.jsDoc=void 0,Ze}function Z(K,Ce,Ze){return K.name!==Ce||K.initializer!==Ze?MI($(Ce,Ze),K):K}function MI(K,Ce){return K!==Ce&&(K.modifiers=Ce.modifiers,K.questionToken=Ce.questionToken,K.exclamationToken=Ce.exclamationToken),Ms(K,Ce)}function VR(K,Ce){let Ze=ge(304);return Ze.name=oI(K),Ze.objectAssignmentInitializer=Ce&&s().parenthesizeExpressionForDisallowedComma(Ce),Ze.transformFlags|=dSe(Ze.name)|Fo(Ze.objectAssignmentInitializer)|1024,Ze.equalsToken=void 0,Ze.modifiers=void 0,Ze.questionToken=void 0,Ze.exclamationToken=void 0,Ze.jsDoc=void 0,Ze}function G(K,Ce,Ze){return K.name!==Ce||K.objectAssignmentInitializer!==Ze?L(VR(Ce,Ze),K):K}function L(K,Ce){return K!==Ce&&(K.modifiers=Ce.modifiers,K.questionToken=Ce.questionToken,K.exclamationToken=Ce.exclamationToken,K.equalsToken=Ce.equalsToken),Ms(K,Ce)}function ee(K){let Ce=ge(305);return Ce.expression=s().parenthesizeExpressionForDisallowedComma(K),Ce.transformFlags|=Fo(Ce.expression)|128|65536,Ce.jsDoc=void 0,Ce}function ve(K,Ce){return K.expression!==Ce?Ms(ee(Ce),K):K}function xe(K,Ce){let Ze=ge(306);return Ze.name=oI(K),Ze.initializer=Ce&&s().parenthesizeExpressionForDisallowedComma(Ce),Ze.transformFlags|=Fo(Ze.name)|Fo(Ze.initializer)|1,Ze.jsDoc=void 0,Ze}function gt(K,Ce,Ze){return K.name!==Ce||K.initializer!==Ze?Ms(xe(Ce,Ze),K):K}function nr(K,Ce,Ze){let pt=t.createBaseSourceFileNode(307);return pt.statements=le(K),pt.endOfFileToken=Ce,pt.flags|=Ze,pt.text="",pt.fileName="",pt.path="",pt.resolvedPath="",pt.originalFileName="",pt.languageVersion=1,pt.languageVariant=0,pt.scriptKind=0,pt.isDeclarationFile=!1,pt.hasNoDefaultLib=!1,pt.transformFlags|=LA(pt.statements)|Fo(pt.endOfFileToken),pt.locals=void 0,pt.nextContainer=void 0,pt.endFlowNode=void 0,pt.nodeCount=0,pt.identifierCount=0,pt.symbolCount=0,pt.parseDiagnostics=void 0,pt.bindDiagnostics=void 0,pt.bindSuggestionDiagnostics=void 0,pt.lineMap=void 0,pt.externalModuleIndicator=void 0,pt.setExternalModuleIndicator=void 0,pt.pragmas=void 0,pt.checkJsDirective=void 0,pt.referencedFiles=void 0,pt.typeReferenceDirectives=void 0,pt.libReferenceDirectives=void 0,pt.amdDependencies=void 0,pt.commentDirectives=void 0,pt.identifiers=void 0,pt.packageJsonLocations=void 0,pt.packageJsonScope=void 0,pt.imports=void 0,pt.moduleAugmentations=void 0,pt.ambientModuleNames=void 0,pt.classifiableNames=void 0,pt.impliedNodeFormat=void 0,pt}function Xr(K){let Ce=Object.create(K.redirectTarget);return Object.defineProperties(Ce,{id:{get(){return this.redirectInfo.redirectTarget.id},set(Ze){this.redirectInfo.redirectTarget.id=Ze}},symbol:{get(){return this.redirectInfo.redirectTarget.symbol},set(Ze){this.redirectInfo.redirectTarget.symbol=Ze}}}),Ce.redirectInfo=K,Ce}function Kn(K){let Ce=Xr(K.redirectInfo);return Ce.flags|=K.flags&-17,Ce.fileName=K.fileName,Ce.path=K.path,Ce.resolvedPath=K.resolvedPath,Ce.originalFileName=K.originalFileName,Ce.packageJsonLocations=K.packageJsonLocations,Ce.packageJsonScope=K.packageJsonScope,Ce.emitNode=void 0,Ce}function eo(K){let Ce=t.createBaseSourceFileNode(307);Ce.flags|=K.flags&-17;for(let Ze in K)if(!(eK(Ce,Ze)||!eK(K,Ze))){if(Ze==="emitNode"){Ce.emitNode=void 0;continue}Ce[Ze]=K[Ze]}return Ce}function Ga(K){let Ce=K.redirectInfo?Kn(K):eo(K);return r(Ce,K),Ce}function tl(K,Ce,Ze,pt,hr,Zn,_o){let jc=Ga(K);return jc.statements=le(Ce),jc.isDeclarationFile=Ze,jc.referencedFiles=pt,jc.typeReferenceDirectives=hr,jc.hasNoDefaultLib=Zn,jc.libReferenceDirectives=_o,jc.transformFlags=LA(jc.statements)|Fo(jc.endOfFileToken),jc}function bo(K,Ce,Ze=K.isDeclarationFile,pt=K.referencedFiles,hr=K.typeReferenceDirectives,Zn=K.hasNoDefaultLib,_o=K.libReferenceDirectives){return K.statements!==Ce||K.isDeclarationFile!==Ze||K.referencedFiles!==pt||K.typeReferenceDirectives!==hr||K.hasNoDefaultLib!==Zn||K.libReferenceDirectives!==_o?Ms(tl(K,Ce,Ze,pt,hr,Zn,_o),K):K}function Sg(K){let Ce=ae(308);return Ce.sourceFiles=K,Ce.syntheticFileReferences=void 0,Ce.syntheticTypeReferences=void 0,Ce.syntheticLibReferences=void 0,Ce.hasNoDefaultLib=void 0,Ce}function id(K,Ce){return K.sourceFiles!==Ce?Ms(Sg(Ce),K):K}function YC(K,Ce=!1,Ze){let pt=ae(237);return pt.type=K,pt.isSpread=Ce,pt.tupleNameSource=Ze,pt}function Sn(K){let Ce=ae(352);return Ce._children=K,Ce}function vr(K){let Ce=ae(353);return Ce.original=K,KF(Ce,K),Ce}function Yn(K,Ce){let Ze=ae(355);return Ze.expression=K,Ze.original=Ce,Ze.transformFlags|=Fo(Ze.expression)|1,KF(Ze,Ce),Ze}function Go(K,Ce){return K.expression!==Ce?Ms(Yn(Ce,K.original),K):K}function tc(){return ae(354)}function pA(K){if(ASe(K)&&!MCt(K)&&!K.original&&!K.emitNode&&!K.id){if(iga(K))return K.elements;if(BSe(K)&&bua(K.operatorToken))return[K.left,K.right]}return K}function fc(K){let Ce=ae(356);return Ce.elements=le(Goa(K,pA)),Ce.transformFlags|=LA(Ce.elements),Ce}function Ju(K,Ce){return K.elements!==Ce?Ms(fc(Ce),K):K}function Vu(K,Ce){let Ze=ae(357);return Ze.expression=K,Ze.thisArg=Ce,Ze.transformFlags|=Fo(Ze.expression)|Fo(Ze.thisArg),Ze}function Dc(K,Ce,Ze){return K.expression!==Ce||K.thisArg!==Ze?Ms(Vu(Ce,Ze),K):K}function Mp(K){let Ce=Ue(K.escapedText);return Ce.flags|=K.flags&-17,Ce.transformFlags=K.transformFlags,r(Ce,K),setIdentifierAutoGenerate(Ce,{...K.emitNode.autoGenerate}),Ce}function zy(K){let Ce=Ue(K.escapedText);Ce.flags|=K.flags&-17,Ce.jsDoc=K.jsDoc,Ce.flowNode=K.flowNode,Ce.symbol=K.symbol,Ce.transformFlags=K.transformFlags,r(Ce,K);let Ze=getIdentifierTypeArguments(K);return Ze&&setIdentifierTypeArguments(Ce,Ze),Ce}function vv(K){let Ce=Ot(K.escapedText);return Ce.flags|=K.flags&-17,Ce.transformFlags=K.transformFlags,r(Ce,K),setIdentifierAutoGenerate(Ce,{...K.emitNode.autoGenerate}),Ce}function Vl(K){let Ce=Ot(K.escapedText);return Ce.flags|=K.flags&-17,Ce.transformFlags=K.transformFlags,r(Ce,K),Ce}function Jm(K){if(K===void 0)return K;if(dga(K))return Ga(K);if(mSe(K))return Mp(K);if(hh(K))return zy(K);if(Hsi(K))return vv(K);if(Efe(K))return Vl(K);let Ce=cdr(K.kind)?t.createBaseNode(K.kind):t.createBaseTokenNode(K.kind);Ce.flags|=K.flags&-17,Ce.transformFlags=K.transformFlags,r(Ce,K);for(let Ze in K)eK(Ce,Ze)||!eK(K,Ze)||(Ce[Ze]=K[Ze]);return Ce}function e0(K,Ce,Ze){return tA(gm(void 0,void 0,void 0,void 0,Ce?[Ce]:[],void 0,nA(K,!0)),void 0,Ze?[Ze]:[])}function XC(K,Ce,Ze){return tA(fg(void 0,void 0,Ce?[Ce]:[],void 0,void 0,nA(K,!0)),void 0,Ze?[Ze]:[])}function EB(){return tI(pe("0"))}function WR(K){return y1(void 0,!1,K)}function uG(K){return Bh(void 0,!1,TE([Uy(!1,void 0,K)]))}function S3(K,Ce){return Ce==="null"?U.createStrictEquality(K,tr()):Ce==="undefined"?U.createStrictEquality(K,EB()):U.createStrictEquality(OI(K),Te(Ce))}function uZ(K,Ce){return Ce==="null"?U.createStrictInequality(K,tr()):Ce==="undefined"?U.createStrictInequality(K,EB()):U.createStrictInequality(OI(K),Te(Ce))}function oN(K,Ce,Ze){return zni(K)?uh(Ll(K,void 0,Ce),void 0,void 0,Ze):tA(Us(K,Ce),void 0,Ze)}function Uu(K,Ce,Ze){return oN(K,"bind",[Ce,...Ze])}function P9(K,Ce,Ze){return oN(K,"call",[Ce,...Ze])}function aN(K,Ce,Ze){return oN(K,"apply",[Ce,Ze])}function Tp(K,Ce,Ze){return oN(Xe(K),Ce,Ze)}function cN(K,Ce){return oN(K,"slice",Ce===void 0?[]:[t0(Ce)])}function gZ(K,Ce){return oN(K,"concat",Ce)}function gG(K,Ce,Ze){return Tp("Object","defineProperty",[K,t0(Ce),Ze])}function RS(K,Ce){return Tp("Object","getOwnPropertyDescriptor",[K,t0(Ce)])}function Sf(K,Ce,Ze){return Tp("Reflect","get",Ze?[K,Ce,Ze]:[K,Ce])}function bx(K,Ce,Ze,pt){return Tp("Reflect","set",pt?[K,Ce,Ze,pt]:[K,Ce,Ze])}function Ex(K,Ce,Ze){return Ze?(K.push($(Ce,Ze)),!0):!1}function AZ(K,Ce){let Ze=[];Ex(Ze,"enumerable",t0(K.enumerable)),Ex(Ze,"configurable",t0(K.configurable));let pt=Ex(Ze,"writable",t0(K.writable));pt=Ex(Ze,"value",K.value)||pt;let hr=Ex(Ze,"get",K.get);return hr=Ex(Ze,"set",K.set)||hr,ho.assert(!(pt&&hr),"A PropertyDescriptor may not be both an accessor descriptor and a data descriptor."),Nn(Ze,!Ce)}function cg(K,Ce){switch(K.kind){case 217:return Tb(K,Ce);case 216:return uc(K,K.type,Ce);case 234:return EE(K,Ce,K.type);case 238:return K_(K,Ce,K.type);case 235:return U_(K,Ce);case 233:return bE(K,Ce,K.typeArguments);case 355:return Go(K,Ce)}}function Zb(K){return _dr(K)&&ASe(K)&&ASe(getSourceMapRange(K))&&ASe(getCommentRange(K))&&!_R(getSyntheticLeadingComments(K))&&!_R(getSyntheticTrailingComments(K))}function h2(K,Ce,Ze=31){return K&&Zoi(K,Ze)&&!Zb(K)?cg(K,h2(K.expression,Ce)):Ce}function AG(K,Ce,Ze){if(!Ce)return K;let pt=Wr(Ce,Ce.label,sga(Ce.statement)?AG(K,Ce.statement):K);return Ze&&Ze(Ce),pt}function qy(K,Ce){let Ze=pdr(K);switch(Ze.kind){case 80:return Ce;case 110:case 9:case 10:case 11:return!1;case 209:return Ze.elements.length!==0;case 210:return Ze.properties.length>0;default:return!0}}function _2(K,Ce,Ze,pt=!1){let hr=Edr(K,31),Zn,_o;return iii(hr)?(Zn=Br(),_o=hr):CAr(hr)?(Zn=Br(),_o=Ze!==void 0&&Ze<2?KF(Xe("_super"),hr):hr):bSe(hr)&8192?(Zn=EB(),_o=s().parenthesizeLeftSideOfAccess(hr,!1)):Ose(hr)?qy(hr.expression,pt)?(Zn=ft(Ce),_o=Us(KF(U.createAssignment(Zn,hr.expression),hr.expression),hr.name),KF(_o,hr)):(Zn=hr.expression,_o=hr):TMe(hr)?qy(hr.expression,pt)?(Zn=ft(Ce),_o=PI(KF(U.createAssignment(Zn,hr.expression),hr.expression),hr.argumentExpression),KF(_o,hr)):(Zn=hr.expression,_o=hr):(Zn=EB(),_o=s().parenthesizeLeftSideOfAccess(K,!1)),{target:_o,thisArg:Zn}}function Ke(K,Ce){return Us(E_(Nn([wi(void 0,"value",[Hu(void 0,void 0,K,void 0,void 0,void 0)],nA([Fi(Ce)]))])),"value")}function Ft(K){return K.length>10?fc(K):Hoa(K,U.createComma)}function Er(K,Ce,Ze,pt=0,hr){let Zn=hr?K&&odr(K):Wsi(K);if(Zn&&hh(Zn)&&!mSe(Zn)){let _o=Cdr(KF(Jm(Zn),Zn),Zn.parent);return pt|=bSe(Zn),Ze||(pt|=96),Ce||(pt|=3072),pt&&setEmitFlags(_o,pt),_o}return Ur(K)}function Jr(K,Ce,Ze){return Er(K,Ce,Ze,98304)}function Un(K,Ce,Ze,pt){return Er(K,Ce,Ze,32768,pt)}function Ki(K,Ce,Ze){return Er(K,Ce,Ze,16384)}function Ss(K,Ce,Ze){return Er(K,Ce,Ze)}function Bo(K,Ce,Ze,pt){let hr=Us(K,ASe(Ce)?Ce:Jm(Ce));KF(hr,Ce);let Zn=0;return pt||(Zn|=96),Ze||(Zn|=3072),Zn&&setEmitFlags(hr,Zn),hr}function Wa(K,Ce,Ze,pt){return K&&wMe(Ce,32)?Bo(K,Er(Ce),Ze,pt):Ki(Ce,Ze,pt)}function Ks(K,Ce,Ze,pt){let hr=iA(K,Ce,0,Ze);return Cg(K,Ce,hr,pt)}function kc(K){return $Ct(K.expression)&&K.expression.text==="use strict"}function Ul(){return Fga(Fi(Te("use strict")))}function iA(K,Ce,Ze=0,pt){ho.assert(Ce.length===0,"Prologue directives should be at the first statement in the target statements array");let hr=!1,Zn=K.length;for(;Zejc&&Lb.splice(hr,0,...Ce.slice(jc,IA)),jc>_o&&Lb.splice(pt,0,...Ce.slice(_o,jc)),_o>Zn&&Lb.splice(Ze,0,...Ce.slice(Zn,_o)),Zn>0)if(Ze===0)Lb.splice(0,0,...Ce.slice(0,Zn));else{let Rh=new Map;for(let E2=0;E2=0;E2--){let $y=Ce[E2];Rh.has($y.expression.text)||Lb.unshift($y)}}return Zse(K)?KF(le(Lb,K.hasTrailingComma),K):K}function b2(K,Ce){let Ze;return typeof Ce=="number"?Ze=Zi(Ce):Ze=Ce,doi(K)?vi(K,Ze,K.name,K.constraint,K.default):XCt(K)?Yu(K,Ze,K.dotDotDotToken,K.name,K.questionToken,K.type,K.initializer):moi(K)?Eo(K,Ze,K.typeParameters,K.parameters,K.type):Sua(K)?Vd(K,Ze,K.name,K.questionToken,K.type):JCt(K)?Ir(K,Ze,K.name,K.questionToken??K.exclamationToken,K.type,K.initializer):wua(K)?Cn(K,Ze,K.name,K.questionToken,K.typeParameters,K.parameters,K.type):GAr(K)?Ji(K,Ze,K.asteriskToken,K.name,K.questionToken,K.typeParameters,K.parameters,K.type,K.body):poi(K)?og(K,Ze,K.parameters,K.body):FAr(K)?Lu(K,Ze,K.name,K.parameters,K.type,K.body):UCt(K)?ts(K,Ze,K.name,K.parameters,K.body):foi(K)?Tu(K,Ze,K.parameters,K.type):yoi(K)?gh(K,Ze,K.asteriskToken,K.name,K.typeParameters,K.parameters,K.type,K.body):boi(K)?Am(K,Ze,K.typeParameters,K.parameters,K.type,K.equalsGreaterThanToken,K.body):ZAr(K)?Ym(K,Ze,K.name,K.typeParameters,K.heritageClauses,K.members):emt(K)?HC(K,Ze,K.declarationList):voi(K)?mv(K,Ze,K.asteriskToken,K.name,K.typeParameters,K.parameters,K.type,K.body):KCt(K)?m1(K,Ze,K.name,K.typeParameters,K.heritageClauses,K.members):ydr(K)?Qw(K,Ze,K.name,K.typeParameters,K.heritageClauses,K.members):Soi(K)?py(K,Ze,K.name,K.typeParameters,K.type):aga(K)?QI(K,Ze,K.name,K.members):vMe(K)?WA(K,Ze,K.name,K.body):woi(K)?Jy(K,Ze,K.isTypeOnly,K.name,K.moduleReference):Toi(K)?hv(K,Ze,K.importClause,K.moduleSpecifier,K.attributes):Noi(K)?Gb(K,Ze,K.expression):Roi(K)?b1(K,Ze,K.isTypeOnly,K.exportClause,K.moduleSpecifier,K.attributes):ho.assertNever(K)}function PR(K,Ce){return XCt(K)?Yu(K,Ce,K.dotDotDotToken,K.name,K.questionToken,K.type,K.initializer):JCt(K)?Ir(K,Ce,K.name,K.questionToken??K.exclamationToken,K.type,K.initializer):GAr(K)?Ji(K,Ce,K.asteriskToken,K.name,K.questionToken,K.typeParameters,K.parameters,K.type,K.body):FAr(K)?Lu(K,Ce,K.name,K.parameters,K.type,K.body):UCt(K)?ts(K,Ce,K.name,K.parameters,K.body):ZAr(K)?Ym(K,Ce,K.name,K.typeParameters,K.heritageClauses,K.members):KCt(K)?m1(K,Ce,K.name,K.typeParameters,K.heritageClauses,K.members):ho.assertNever(K)}function w3(K,Ce){switch(K.kind){case 177:return Lu(K,K.modifiers,Ce,K.parameters,K.type,K.body);case 178:return ts(K,K.modifiers,Ce,K.parameters,K.body);case 174:return Ji(K,K.modifiers,K.asteriskToken,Ce,K.questionToken,K.typeParameters,K.parameters,K.type,K.body);case 173:return Cn(K,K.modifiers,Ce,K.questionToken,K.typeParameters,K.parameters,K.type);case 172:return Ir(K,K.modifiers,Ce,K.questionToken??K.exclamationToken,K.type,K.initializer);case 171:return Vd(K,K.modifiers,Ce,K.questionToken,K.type);case 303:return Z(K,Ce,K.initializer)}}function fA(K){return K?le(K):void 0}function oI(K){return typeof K=="string"?Xe(K):K}function t0(K){return typeof K=="string"?Te(K):typeof K=="number"?pe(K):typeof K=="boolean"?K?gn():Gn():K}function hy(K){return K&&s().parenthesizeExpressionForDisallowedComma(K)}function dZ(K){return typeof K=="number"?Or(K):K}function Ed(K){return K&&lga(K)?KF(r(TI(),K),K):K}function Pd(K){return typeof K=="string"||K&&!Boi(K)?Af(K,void 0,void 0,void 0):K}function Ms(K,Ce){return K!==Ce&&(r(K,Ce),KF(K,Ce)),K}}function DCt(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 ho.fail(`Unsupported kind: ${ho.formatSyntaxKind(e)}`)}}var o9,uii={};function dua(e,t){switch(o9||(o9=idr(99,!1,0)),e){case 15:o9.setText("`"+t+"`");break;case 16:o9.setText("`"+t+"${");break;case 17:o9.setText("}"+t+"${");break;case 18:o9.setText("}"+t+"`");break}let r=o9.scan();if(r===20&&(r=o9.reScanTemplateToken(!1)),o9.isUnterminated())return o9.setText(void 0),uii;let s;switch(r){case 15:case 16:case 17:case 18:s=o9.getTokenValue();break}return s===void 0||o9.scan()!==1?(o9.setText(void 0),uii):(o9.setText(void 0),s)}function qW(e){return e&&hh(e)?dSe(e):Fo(e)}function dSe(e){return Fo(e)&-67108865}function pua(e,t){return t|e.transformFlags&134234112}function Fo(e){if(!e)return 0;let t=e.transformFlags&~fua(e.kind);return Uaa(e)&&Ysi(e.name)?pua(e.name,t):t}function LA(e){return e?e.transformFlags:0}function gii(e){let t=0;for(let r of e)t|=Fo(r);e.transformFlags=t}function fua(e){if(e>=182&&e<=205)return-2;switch(e){case 213:case 214:case 209:return-2147450880;case 267:return-1941676032;case 169: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;case 206:case 207:return-2147450880;case 216:case 238:case 234:case 355:case 217:case 108:return-2147483648;case 211:case 212:return-2147483648;default:return-2147483648}}var sMe=uua();function oMe(e){return e.flags|=16,e}var Iua={createBaseSourceFileNode:e=>oMe(sMe.createBaseSourceFileNode(e)),createBaseIdentifierNode:e=>oMe(sMe.createBaseIdentifierNode(e)),createBasePrivateIdentifierNode:e=>oMe(sMe.createBasePrivateIdentifierNode(e)),createBaseTokenNode:e=>oMe(sMe.createBaseTokenNode(e)),createBaseNode:e=>oMe(sMe.createBaseNode(e))},f_l=mdr(4,Iua);function Cua(e,t){if(e.original!==t&&(e.original=t,t)){let r=t.emitNode;r&&(e.emitNode=mua(r,e.emitNode))}return e}function mua(e,t){let{flags:r,internalFlags:s,leadingComments:a,trailingComments:o,commentRange:g,sourceMapRange:p,tokenSourceMapRanges:f,constantValue:m,helpers:y,startsOnNewLine:B,snippetElement:v,classThis:k,assignedName:T}=e;if(t||(t={}),r&&(t.flags=r),s&&(t.internalFlags=s&-9),a&&(t.leadingComments=l9(a.slice(),t.leadingComments)),o&&(t.trailingComments=l9(o.slice(),t.trailingComments)),g&&(t.commentRange=g),p&&(t.sourceMapRange=p),f&&(t.tokenSourceMapRanges=hua(f,t.tokenSourceMapRanges)),m!==void 0&&(t.constantValue=m),y)for(let O of y)t.helpers=Voa(t.helpers,O);return B!==void 0&&(t.startsOnNewLine=B),v!==void 0&&(t.snippetElement=v),k&&(t.classThis=k),T&&(t.assignedName=T),t}function hua(e,t){t||(t=[]);for(let r in e)t[r]=e[r];return t}function vSe(e){return e.kind===9}function _ua(e){return e.kind===10}function $Ct(e){return e.kind===11}function yua(e){return e.kind===15}function bua(e){return e.kind===28}function Aii(e){return e.kind===54}function dii(e){return e.kind===58}function hh(e){return e.kind===80}function Efe(e){return e.kind===81}function Eua(e){return e.kind===95}function xCt(e){return e.kind===134}function CAr(e){return e.kind===108}function Bua(e){return e.kind===102}function vua(e){return e.kind===166}function Aoi(e){return e.kind===167}function doi(e){return e.kind===168}function XCt(e){return e.kind===169}function hdr(e){return e.kind===170}function Sua(e){return e.kind===171}function JCt(e){return e.kind===172}function wua(e){return e.kind===173}function GAr(e){return e.kind===174}function poi(e){return e.kind===176}function FAr(e){return e.kind===177}function UCt(e){return e.kind===178}function Tua(e){return e.kind===179}function Nua(e){return e.kind===180}function foi(e){return e.kind===181}function Rua(e){return e.kind===182}function Ioi(e){return e.kind===183}function Coi(e){return e.kind===184}function moi(e){return e.kind===185}function Dua(e){return e.kind===186}function xua(e){return e.kind===187}function kua(e){return e.kind===188}function Gua(e){return e.kind===189}function Fua(e){return e.kind===202}function Zua(e){return e.kind===190}function Lua(e){return e.kind===191}function Vua(e){return e.kind===192}function Wua(e){return e.kind===193}function Pua(e){return e.kind===194}function Oua(e){return e.kind===195}function Qua(e){return e.kind===196}function Mua(e){return e.kind===197}function Hua(e){return e.kind===198}function Yua(e){return e.kind===199}function Xua(e){return e.kind===200}function Jua(e){return e.kind===201}function Uua(e){return e.kind===205}function Kua(e){return e.kind===208}function jua(e){return e.kind===209}function hoi(e){return e.kind===210}function Ose(e){return e.kind===211}function TMe(e){return e.kind===212}function _oi(e){return e.kind===213}function zua(e){return e.kind===215}function _dr(e){return e.kind===217}function yoi(e){return e.kind===218}function boi(e){return e.kind===219}function qua(e){return e.kind===222}function $ua(e){return e.kind===224}function BSe(e){return e.kind===226}function ega(e){return e.kind===230}function ZAr(e){return e.kind===231}function tga(e){return e.kind===232}function rga(e){return e.kind===233}function ZCt(e){return e.kind===235}function nga(e){return e.kind===236}function iga(e){return e.kind===356}function emt(e){return e.kind===243}function Eoi(e){return e.kind===244}function sga(e){return e.kind===256}function Boi(e){return e.kind===260}function oga(e){return e.kind===261}function voi(e){return e.kind===262}function KCt(e){return e.kind===263}function ydr(e){return e.kind===264}function Soi(e){return e.kind===265}function aga(e){return e.kind===266}function vMe(e){return e.kind===267}function woi(e){return e.kind===271}function Toi(e){return e.kind===272}function Noi(e){return e.kind===277}function Roi(e){return e.kind===278}function cga(e){return e.kind===279}function lga(e){return e.kind===353}function Doi(e){return e.kind===283}function pii(e){return e.kind===286}function uga(e){return e.kind===289}function xoi(e){return e.kind===295}function gga(e){return e.kind===297}function Aga(e){return e.kind===303}function dga(e){return e.kind===307}function pga(e){return e.kind===309}function fga(e){return e.kind===314}function Iga(e){return e.kind===317}function koi(e){return e.kind===320}function Cga(e){return e.kind===322}function Goi(e){return e.kind===323}function mga(e){return e.kind===328}function hga(e){return e.kind===333}function _ga(e){return e.kind===334}function yga(e){return e.kind===335}function bga(e){return e.kind===336}function Ega(e){return e.kind===337}function Bga(e){return e.kind===339}function vga(e){return e.kind===331}function fii(e){return e.kind===341}function Sga(e){return e.kind===342}function bdr(e){return e.kind===344}function wga(e){return e.kind===345}function Tga(e){return e.kind===329}function Nga(e){return e.kind===350}var _fe=new WeakMap;function Foi(e,t){var r;let s=e.kind;return cdr(s)?s===352?e._children:(r=_fe.get(t))==null?void 0:r.get(e):i2}function Rga(e,t,r){e.kind===352&&ho.fail("Should not need to re-set the children of a SyntaxList.");let s=_fe.get(t);return s===void 0&&(s=new WeakMap,_fe.set(t,s)),s.set(e,r),r}function Iii(e,t){var r;e.kind===352&&ho.fail("Did not expect to unset the children of a SyntaxList."),(r=_fe.get(t))==null||r.delete(e)}function Dga(e,t){let r=_fe.get(e);r!==void 0&&(_fe.delete(e),_fe.set(t,r))}function Cii(e){return(bSe(e)&32768)!==0}function xga(e){return $Ct(e.expression)&&e.expression.text==="use strict"}function kga(e){for(let t of e)if(FCt(t)){if(xga(t))return t}else break}function Gga(e){return _dr(e)&&Bfe(e)&&!!uca(e)}function Zoi(e,t=31){switch(e.kind){case 217:return t&-2147483648&&Gga(e)?!1:(t&1)!==0;case 216:case 234:case 238:return(t&2)!==0;case 233:return(t&16)!==0;case 235:return(t&4)!==0;case 355:return(t&8)!==0}return!1}function Edr(e,t=31){for(;Zoi(e,t);)e=e.expression;return e}function Fga(e){return setStartsOnNewLine(e,!0)}function fMe(e){if(Tca(e))return e.name;if(Bca(e)){switch(e.kind){case 303:return fMe(e.initializer);case 304:return e.name;case 305:return fMe(e.expression)}return}return YCt(e,!0)?fMe(e.left):ega(e)?fMe(e.expression):e}function Zga(e){switch(e.kind){case 206:case 207:case 209:return e.elements;case 210:return e.properties}}function mii(e){if(e){let t=e;for(;;){if(hh(t)||!t.body)return hh(t)?t:t.name;t=t.body}}}var hii;(e=>{function t(y,B,v,k,T,O,X){let U=B>0?T[B-1]:void 0;return ho.assertEqual(v[B],t),T[B]=y.onEnter(k[B],U,X),v[B]=p(y,t),B}e.enter=t;function r(y,B,v,k,T,O,X){ho.assertEqual(v[B],r),ho.assertIsDefined(y.onLeft),v[B]=p(y,r);let U=y.onLeft(k[B].left,T[B],k[B]);return U?(m(B,k,U),f(B,v,k,T,U)):B}e.left=r;function s(y,B,v,k,T,O,X){return ho.assertEqual(v[B],s),ho.assertIsDefined(y.onOperator),v[B]=p(y,s),y.onOperator(k[B].operatorToken,T[B],k[B]),B}e.operator=s;function a(y,B,v,k,T,O,X){ho.assertEqual(v[B],a),ho.assertIsDefined(y.onRight),v[B]=p(y,a);let U=y.onRight(k[B].right,T[B],k[B]);return U?(m(B,k,U),f(B,v,k,T,U)):B}e.right=a;function o(y,B,v,k,T,O,X){ho.assertEqual(v[B],o),v[B]=p(y,o);let U=y.onExit(k[B],T[B]);if(B>0){if(B--,y.foldState){let le=v[B]===o?"right":"left";T[B]=y.foldState(T[B],U,le)}}else O.value=U;return B}e.exit=o;function g(y,B,v,k,T,O,X){return ho.assertEqual(v[B],g),B}e.done=g;function p(y,B){switch(B){case t:if(y.onLeft)return r;case r:if(y.onOperator)return s;case s:if(y.onRight)return a;case a:return o;case o:return g;case g:return g;default:ho.fail("Invalid state")}}e.nextState=p;function f(y,B,v,k,T){return y++,B[y]=t,v[y]=T,k[y]=void 0,y}function m(y,B,v){if(ho.shouldAssert(2))for(;y>=0;)ho.assert(B[y]!==v,"Circular traversal detected."),y--}})(hii||(hii={}));function _ii(e,t){return typeof e=="object"?LAr(!1,e.prefix,e.node,e.suffix,t):typeof e=="string"?e.length>0&&e.charCodeAt(0)===35?e.slice(1):e:""}function Lga(e,t){return typeof e=="string"?e:Vga(e,ho.checkDefined(t))}function Vga(e,t){return Hsi(e)?t(e).slice(1):mSe(e)?t(e):Efe(e)?e.escapedText.slice(1):u9(e)}function LAr(e,t,r,s,a){return t=_ii(t,a),s=_ii(s,a),r=Lga(r,a),`${e?"#":""}${t}${r}${s}`}function Loi(e){if(e.transformFlags&65536)return!0;if(e.transformFlags&128)for(let t of Zga(e)){let r=fMe(t);if(r&&wca(r)&&(r.transformFlags&65536||r.transformFlags&128&&Loi(r)))return!0}return!1}function KF(e,t){return t?Wse(e,t.pos,t.end):e}function Bdr(e){let t=e.kind;return t===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}function Wga(e){let t=e.kind;return t===169||t===172||t===174||t===177||t===178||t===231||t===263}var yii,bii,Eii,Bii,vii,Pga={createBaseSourceFileNode:e=>new(vii||(vii=n2.getSourceFileConstructor()))(e,-1,-1),createBaseIdentifierNode:e=>new(Eii||(Eii=n2.getIdentifierConstructor()))(e,-1,-1),createBasePrivateIdentifierNode:e=>new(Bii||(Bii=n2.getPrivateIdentifierConstructor()))(e,-1,-1),createBaseTokenNode:e=>new(bii||(bii=n2.getTokenConstructor()))(e,-1,-1),createBaseNode:e=>new(yii||(yii=n2.getNodeConstructor()))(e,-1,-1)},I_l=mdr(1,Pga);function oi(e,t){return t&&e(t)}function Oc(e,t,r){if(r){if(t)return t(r);for(let s of r){let a=e(s);if(a)return a}}}function Oga(e,t){return e.charCodeAt(t+1)===42&&e.charCodeAt(t+2)===42&&e.charCodeAt(t+3)!==47}function Qga(e){return t3(e.statements,Mga)||Hga(e)}function Mga(e){return Bdr(e)&&Yga(e,95)||woi(e)&&Doi(e.moduleReference)||Toi(e)||Noi(e)||Roi(e)?e:void 0}function Hga(e){return e.flags&8388608?Voi(e):void 0}function Voi(e){return Xga(e)?e:KD(e,Voi)}function Yga(e,t){return _R(e.modifiers,r=>r.kind===t)}function Xga(e){return nga(e)&&e.keywordToken===102&&e.name.escapedText==="meta"}var Jga={166:function(e,t,r){return oi(t,e.left)||oi(t,e.right)},168:function(e,t,r){return Oc(t,r,e.modifiers)||oi(t,e.name)||oi(t,e.constraint)||oi(t,e.default)||oi(t,e.expression)},304:function(e,t,r){return Oc(t,r,e.modifiers)||oi(t,e.name)||oi(t,e.questionToken)||oi(t,e.exclamationToken)||oi(t,e.equalsToken)||oi(t,e.objectAssignmentInitializer)},305:function(e,t,r){return oi(t,e.expression)},169:function(e,t,r){return Oc(t,r,e.modifiers)||oi(t,e.dotDotDotToken)||oi(t,e.name)||oi(t,e.questionToken)||oi(t,e.type)||oi(t,e.initializer)},172:function(e,t,r){return Oc(t,r,e.modifiers)||oi(t,e.name)||oi(t,e.questionToken)||oi(t,e.exclamationToken)||oi(t,e.type)||oi(t,e.initializer)},171:function(e,t,r){return Oc(t,r,e.modifiers)||oi(t,e.name)||oi(t,e.questionToken)||oi(t,e.type)||oi(t,e.initializer)},303:function(e,t,r){return Oc(t,r,e.modifiers)||oi(t,e.name)||oi(t,e.questionToken)||oi(t,e.exclamationToken)||oi(t,e.initializer)},260:function(e,t,r){return oi(t,e.name)||oi(t,e.exclamationToken)||oi(t,e.type)||oi(t,e.initializer)},208:function(e,t,r){return oi(t,e.dotDotDotToken)||oi(t,e.propertyName)||oi(t,e.name)||oi(t,e.initializer)},181:function(e,t,r){return Oc(t,r,e.modifiers)||Oc(t,r,e.typeParameters)||Oc(t,r,e.parameters)||oi(t,e.type)},185:function(e,t,r){return Oc(t,r,e.modifiers)||Oc(t,r,e.typeParameters)||Oc(t,r,e.parameters)||oi(t,e.type)},184:function(e,t,r){return Oc(t,r,e.modifiers)||Oc(t,r,e.typeParameters)||Oc(t,r,e.parameters)||oi(t,e.type)},179:Sii,180:Sii,174:function(e,t,r){return Oc(t,r,e.modifiers)||oi(t,e.asteriskToken)||oi(t,e.name)||oi(t,e.questionToken)||oi(t,e.exclamationToken)||Oc(t,r,e.typeParameters)||Oc(t,r,e.parameters)||oi(t,e.type)||oi(t,e.body)},173:function(e,t,r){return Oc(t,r,e.modifiers)||oi(t,e.name)||oi(t,e.questionToken)||Oc(t,r,e.typeParameters)||Oc(t,r,e.parameters)||oi(t,e.type)},176:function(e,t,r){return Oc(t,r,e.modifiers)||oi(t,e.name)||Oc(t,r,e.typeParameters)||Oc(t,r,e.parameters)||oi(t,e.type)||oi(t,e.body)},177:function(e,t,r){return Oc(t,r,e.modifiers)||oi(t,e.name)||Oc(t,r,e.typeParameters)||Oc(t,r,e.parameters)||oi(t,e.type)||oi(t,e.body)},178:function(e,t,r){return Oc(t,r,e.modifiers)||oi(t,e.name)||Oc(t,r,e.typeParameters)||Oc(t,r,e.parameters)||oi(t,e.type)||oi(t,e.body)},262:function(e,t,r){return Oc(t,r,e.modifiers)||oi(t,e.asteriskToken)||oi(t,e.name)||Oc(t,r,e.typeParameters)||Oc(t,r,e.parameters)||oi(t,e.type)||oi(t,e.body)},218:function(e,t,r){return Oc(t,r,e.modifiers)||oi(t,e.asteriskToken)||oi(t,e.name)||Oc(t,r,e.typeParameters)||Oc(t,r,e.parameters)||oi(t,e.type)||oi(t,e.body)},219:function(e,t,r){return Oc(t,r,e.modifiers)||Oc(t,r,e.typeParameters)||Oc(t,r,e.parameters)||oi(t,e.type)||oi(t,e.equalsGreaterThanToken)||oi(t,e.body)},175:function(e,t,r){return Oc(t,r,e.modifiers)||oi(t,e.body)},183:function(e,t,r){return oi(t,e.typeName)||Oc(t,r,e.typeArguments)},182:function(e,t,r){return oi(t,e.assertsModifier)||oi(t,e.parameterName)||oi(t,e.type)},186:function(e,t,r){return oi(t,e.exprName)||Oc(t,r,e.typeArguments)},187:function(e,t,r){return Oc(t,r,e.members)},188:function(e,t,r){return oi(t,e.elementType)},189:function(e,t,r){return Oc(t,r,e.elements)},192:wii,193:wii,194:function(e,t,r){return oi(t,e.checkType)||oi(t,e.extendsType)||oi(t,e.trueType)||oi(t,e.falseType)},195:function(e,t,r){return oi(t,e.typeParameter)},205:function(e,t,r){return oi(t,e.argument)||oi(t,e.attributes)||oi(t,e.qualifier)||Oc(t,r,e.typeArguments)},302:function(e,t,r){return oi(t,e.assertClause)},196:Tii,198:Tii,199:function(e,t,r){return oi(t,e.objectType)||oi(t,e.indexType)},200:function(e,t,r){return oi(t,e.readonlyToken)||oi(t,e.typeParameter)||oi(t,e.nameType)||oi(t,e.questionToken)||oi(t,e.type)||Oc(t,r,e.members)},201:function(e,t,r){return oi(t,e.literal)},202:function(e,t,r){return oi(t,e.dotDotDotToken)||oi(t,e.name)||oi(t,e.questionToken)||oi(t,e.type)},206:Nii,207:Nii,209:function(e,t,r){return Oc(t,r,e.elements)},210:function(e,t,r){return Oc(t,r,e.properties)},211:function(e,t,r){return oi(t,e.expression)||oi(t,e.questionDotToken)||oi(t,e.name)},212:function(e,t,r){return oi(t,e.expression)||oi(t,e.questionDotToken)||oi(t,e.argumentExpression)},213:Rii,214:Rii,215:function(e,t,r){return oi(t,e.tag)||oi(t,e.questionDotToken)||Oc(t,r,e.typeArguments)||oi(t,e.template)},216:function(e,t,r){return oi(t,e.type)||oi(t,e.expression)},217:function(e,t,r){return oi(t,e.expression)},220:function(e,t,r){return oi(t,e.expression)},221:function(e,t,r){return oi(t,e.expression)},222:function(e,t,r){return oi(t,e.expression)},224:function(e,t,r){return oi(t,e.operand)},229:function(e,t,r){return oi(t,e.asteriskToken)||oi(t,e.expression)},223:function(e,t,r){return oi(t,e.expression)},225:function(e,t,r){return oi(t,e.operand)},226:function(e,t,r){return oi(t,e.left)||oi(t,e.operatorToken)||oi(t,e.right)},234:function(e,t,r){return oi(t,e.expression)||oi(t,e.type)},235:function(e,t,r){return oi(t,e.expression)},238:function(e,t,r){return oi(t,e.expression)||oi(t,e.type)},236:function(e,t,r){return oi(t,e.name)},227:function(e,t,r){return oi(t,e.condition)||oi(t,e.questionToken)||oi(t,e.whenTrue)||oi(t,e.colonToken)||oi(t,e.whenFalse)},230:function(e,t,r){return oi(t,e.expression)},241:Dii,268:Dii,307:function(e,t,r){return Oc(t,r,e.statements)||oi(t,e.endOfFileToken)},243:function(e,t,r){return Oc(t,r,e.modifiers)||oi(t,e.declarationList)},261:function(e,t,r){return Oc(t,r,e.declarations)},244:function(e,t,r){return oi(t,e.expression)},245:function(e,t,r){return oi(t,e.expression)||oi(t,e.thenStatement)||oi(t,e.elseStatement)},246:function(e,t,r){return oi(t,e.statement)||oi(t,e.expression)},247:function(e,t,r){return oi(t,e.expression)||oi(t,e.statement)},248:function(e,t,r){return oi(t,e.initializer)||oi(t,e.condition)||oi(t,e.incrementor)||oi(t,e.statement)},249:function(e,t,r){return oi(t,e.initializer)||oi(t,e.expression)||oi(t,e.statement)},250:function(e,t,r){return oi(t,e.awaitModifier)||oi(t,e.initializer)||oi(t,e.expression)||oi(t,e.statement)},251:xii,252:xii,253:function(e,t,r){return oi(t,e.expression)},254:function(e,t,r){return oi(t,e.expression)||oi(t,e.statement)},255:function(e,t,r){return oi(t,e.expression)||oi(t,e.caseBlock)},269:function(e,t,r){return Oc(t,r,e.clauses)},296:function(e,t,r){return oi(t,e.expression)||Oc(t,r,e.statements)},297:function(e,t,r){return Oc(t,r,e.statements)},256:function(e,t,r){return oi(t,e.label)||oi(t,e.statement)},257:function(e,t,r){return oi(t,e.expression)},258:function(e,t,r){return oi(t,e.tryBlock)||oi(t,e.catchClause)||oi(t,e.finallyBlock)},299:function(e,t,r){return oi(t,e.variableDeclaration)||oi(t,e.block)},170:function(e,t,r){return oi(t,e.expression)},263:kii,231:kii,264:function(e,t,r){return Oc(t,r,e.modifiers)||oi(t,e.name)||Oc(t,r,e.typeParameters)||Oc(t,r,e.heritageClauses)||Oc(t,r,e.members)},265:function(e,t,r){return Oc(t,r,e.modifiers)||oi(t,e.name)||Oc(t,r,e.typeParameters)||oi(t,e.type)},266:function(e,t,r){return Oc(t,r,e.modifiers)||oi(t,e.name)||Oc(t,r,e.members)},306:function(e,t,r){return oi(t,e.name)||oi(t,e.initializer)},267:function(e,t,r){return Oc(t,r,e.modifiers)||oi(t,e.name)||oi(t,e.body)},271:function(e,t,r){return Oc(t,r,e.modifiers)||oi(t,e.name)||oi(t,e.moduleReference)},272:function(e,t,r){return Oc(t,r,e.modifiers)||oi(t,e.importClause)||oi(t,e.moduleSpecifier)||oi(t,e.attributes)},273:function(e,t,r){return oi(t,e.name)||oi(t,e.namedBindings)},300:function(e,t,r){return Oc(t,r,e.elements)},301:function(e,t,r){return oi(t,e.name)||oi(t,e.value)},270:function(e,t,r){return Oc(t,r,e.modifiers)||oi(t,e.name)},274:function(e,t,r){return oi(t,e.name)},280:function(e,t,r){return oi(t,e.name)},275:Gii,279:Gii,278:function(e,t,r){return Oc(t,r,e.modifiers)||oi(t,e.exportClause)||oi(t,e.moduleSpecifier)||oi(t,e.attributes)},276:Fii,281:Fii,277:function(e,t,r){return Oc(t,r,e.modifiers)||oi(t,e.expression)},228:function(e,t,r){return oi(t,e.head)||Oc(t,r,e.templateSpans)},239:function(e,t,r){return oi(t,e.expression)||oi(t,e.literal)},203:function(e,t,r){return oi(t,e.head)||Oc(t,r,e.templateSpans)},204:function(e,t,r){return oi(t,e.type)||oi(t,e.literal)},167:function(e,t,r){return oi(t,e.expression)},298:function(e,t,r){return Oc(t,r,e.types)},233:function(e,t,r){return oi(t,e.expression)||Oc(t,r,e.typeArguments)},283:function(e,t,r){return oi(t,e.expression)},282:function(e,t,r){return Oc(t,r,e.modifiers)},356:function(e,t,r){return Oc(t,r,e.elements)},284:function(e,t,r){return oi(t,e.openingElement)||Oc(t,r,e.children)||oi(t,e.closingElement)},288:function(e,t,r){return oi(t,e.openingFragment)||Oc(t,r,e.children)||oi(t,e.closingFragment)},285:Zii,286:Zii,292:function(e,t,r){return Oc(t,r,e.properties)},291:function(e,t,r){return oi(t,e.name)||oi(t,e.initializer)},293:function(e,t,r){return oi(t,e.expression)},294:function(e,t,r){return oi(t,e.dotDotDotToken)||oi(t,e.expression)},287:function(e,t,r){return oi(t,e.tagName)},295:function(e,t,r){return oi(t,e.namespace)||oi(t,e.name)},190:ufe,191:ufe,309:ufe,315:ufe,314:ufe,316:ufe,318:ufe,317:function(e,t,r){return Oc(t,r,e.parameters)||oi(t,e.type)},320:function(e,t,r){return(typeof e.comment=="string"?void 0:Oc(t,r,e.comment))||Oc(t,r,e.tags)},347:function(e,t,r){return oi(t,e.tagName)||oi(t,e.name)||(typeof e.comment=="string"?void 0:Oc(t,r,e.comment))},310:function(e,t,r){return oi(t,e.name)},311:function(e,t,r){return oi(t,e.left)||oi(t,e.right)},341:Lii,348:Lii,330:function(e,t,r){return oi(t,e.tagName)||(typeof e.comment=="string"?void 0:Oc(t,r,e.comment))},329:function(e,t,r){return oi(t,e.tagName)||oi(t,e.class)||(typeof e.comment=="string"?void 0:Oc(t,r,e.comment))},328:function(e,t,r){return oi(t,e.tagName)||oi(t,e.class)||(typeof e.comment=="string"?void 0:Oc(t,r,e.comment))},345:function(e,t,r){return oi(t,e.tagName)||oi(t,e.constraint)||Oc(t,r,e.typeParameters)||(typeof e.comment=="string"?void 0:Oc(t,r,e.comment))},346:function(e,t,r){return oi(t,e.tagName)||(e.typeExpression&&e.typeExpression.kind===309?oi(t,e.typeExpression)||oi(t,e.fullName)||(typeof e.comment=="string"?void 0:Oc(t,r,e.comment)):oi(t,e.fullName)||oi(t,e.typeExpression)||(typeof e.comment=="string"?void 0:Oc(t,r,e.comment)))},338:function(e,t,r){return oi(t,e.tagName)||oi(t,e.fullName)||oi(t,e.typeExpression)||(typeof e.comment=="string"?void 0:Oc(t,r,e.comment))},342:gfe,344:gfe,343:gfe,340:gfe,350:gfe,349:gfe,339:gfe,323:function(e,t,r){return t3(e.typeParameters,t)||t3(e.parameters,t)||oi(t,e.type)},324:mAr,325:mAr,326:mAr,322:function(e,t,r){return t3(e.jsDocPropertyTags,t)},327:xse,332:xse,333:xse,334:xse,335:xse,336:xse,331:xse,337:xse,351:Uga,355:Kga};function Sii(e,t,r){return Oc(t,r,e.typeParameters)||Oc(t,r,e.parameters)||oi(t,e.type)}function wii(e,t,r){return Oc(t,r,e.types)}function Tii(e,t,r){return oi(t,e.type)}function Nii(e,t,r){return Oc(t,r,e.elements)}function Rii(e,t,r){return oi(t,e.expression)||oi(t,e.questionDotToken)||Oc(t,r,e.typeArguments)||Oc(t,r,e.arguments)}function Dii(e,t,r){return Oc(t,r,e.statements)}function xii(e,t,r){return oi(t,e.label)}function kii(e,t,r){return Oc(t,r,e.modifiers)||oi(t,e.name)||Oc(t,r,e.typeParameters)||Oc(t,r,e.heritageClauses)||Oc(t,r,e.members)}function Gii(e,t,r){return Oc(t,r,e.elements)}function Fii(e,t,r){return oi(t,e.propertyName)||oi(t,e.name)}function Zii(e,t,r){return oi(t,e.tagName)||Oc(t,r,e.typeArguments)||oi(t,e.attributes)}function ufe(e,t,r){return oi(t,e.type)}function Lii(e,t,r){return oi(t,e.tagName)||(e.isNameFirst?oi(t,e.name)||oi(t,e.typeExpression):oi(t,e.typeExpression)||oi(t,e.name))||(typeof e.comment=="string"?void 0:Oc(t,r,e.comment))}function gfe(e,t,r){return oi(t,e.tagName)||oi(t,e.typeExpression)||(typeof e.comment=="string"?void 0:Oc(t,r,e.comment))}function mAr(e,t,r){return oi(t,e.name)}function xse(e,t,r){return oi(t,e.tagName)||(typeof e.comment=="string"?void 0:Oc(t,r,e.comment))}function Uga(e,t,r){return oi(t,e.tagName)||oi(t,e.importClause)||oi(t,e.moduleSpecifier)||oi(t,e.attributes)||(typeof e.comment=="string"?void 0:Oc(t,r,e.comment))}function Kga(e,t,r){return oi(t,e.expression)}function KD(e,t,r){if(e===void 0||e.kind<=165)return;let s=Jga[e.kind];return s===void 0?void 0:s(e,t,r)}function Vii(e,t,r){let s=Wii(e),a=[];for(;a.length=0;--p)s.push(o[p]),a.push(g)}else{let p=t(o,g);if(p){if(p==="skip")continue;return p}if(o.kind>=166)for(let f of Wii(o))s.push(f),a.push(o)}}}function Wii(e){let t=[];return KD(e,r,r),t;function r(s){t.unshift(s)}}function Woi(e){e.externalModuleIndicator=Qga(e)}function jga(e,t,r,s=!1,a){var o,g;(o=kCt)==null||o.push(kCt.Phase.Parse,"createSourceFile",{path:e},!0),Oni("beforeParse");let p,{languageVersion:f,setExternalModuleIndicator:m,impliedNodeFormat:y,jsDocParsingMode:B}=typeof r=="object"?r:{languageVersion:r};if(f===100)p=yfe.parseSourceFile(e,t,f,void 0,s,6,ESe,B);else{let v=y===void 0?m:k=>(k.impliedNodeFormat=y,(m||Woi)(k));p=yfe.parseSourceFile(e,t,f,void 0,s,a,v,B)}return Oni("afterParse"),saa("Parse","beforeParse","afterParse"),(g=kCt)==null||g.pop(),p}function zga(e){return e.externalModuleIndicator!==void 0}function qga(e,t,r,s=!1){let a=jCt.updateSourceFile(e,t,r,s);return a.flags|=e.flags&12582912,a}var yfe;(e=>{var t=idr(99,!0),r=40960,s,a,o,g,p;function f(Ke){return Gn++,Ke}var m={createBaseSourceFileNode:Ke=>f(new p(Ke,0,0)),createBaseIdentifierNode:Ke=>f(new o(Ke,0,0)),createBasePrivateIdentifierNode:Ke=>f(new g(Ke,0,0)),createBaseTokenNode:Ke=>f(new a(Ke,0,0)),createBaseNode:Ke=>f(new s(Ke,0,0))},y=mdr(11,m),{createNodeArray:B,createNumericLiteral:v,createStringLiteral:k,createLiteralLikeNode:T,createIdentifier:O,createPrivateIdentifier:X,createToken:U,createArrayLiteralExpression:le,createObjectLiteralExpression:ae,createPropertyAccessExpression:ge,createPropertyAccessChain:fe,createElementAccessExpression:pe,createElementAccessChain:he,createCallExpression:be,createCallChain:Te,createNewExpression:ke,createParenthesizedExpression:x,createBlock:et,createVariableStatement:Ue,createExpressionStatement:Je,createIfStatement:Xe,createWhileStatement:ft,createForStatement:Gt,createForOfStatement:er,createVariableDeclaration:Ur,createVariableDeclarationList:Ot}=y,dr,Ar,or,Fr,$r,Or,In,Br,tr,gn,Gn,we,Zi,Fa,xa,Qs,lr=!0,ua=!1;function vi(Ke,Ft,Er,Jr,Un=!1,Ki,Ss,Bo=0){var Wa;if(Ki=zla(Ke,Ki),Ki===6){let kc=Yu(Ke,Ft,Er,Jr,Un);return convertToJson(kc,(Wa=kc.statements[0])==null?void 0:Wa.expression,kc.parseDiagnostics,!1,void 0),kc.referencedFiles=i2,kc.typeReferenceDirectives=i2,kc.libReferenceDirectives=i2,kc.amdDependencies=i2,kc.hasNoDefaultLib=!1,kc.pragmas=Doa,kc}YA(Ke,Ft,Er,Jr,Ki,Bo);let Ks=NA(Er,Un,Ki,Ss||Woi,Bo);return gd(),Ks}e.parseSourceFile=vi;function Hu(Ke,Ft){YA("",Ke,Ft,void 0,1,0),us();let Er=ie(!0),Jr=Dt()===1&&!In.length;return gd(),Jr?Er:void 0}e.parseIsolatedEntityName=Hu;function Yu(Ke,Ft,Er=2,Jr,Un=!1){YA(Ke,Ft,Er,Jr,6,0),Ar=Qs,us();let Ki=ei(),Ss,Bo;if(Dt()===1)Ss=su([],Ki,Ki),Bo=vl();else{let kc;for(;Dt()!==1;){let Cg;switch(Dt()){case 23:Cg=z_();break;case 112:case 97:case 106:Cg=vl();break;case 41:Ps(()=>us()===9&&us()!==59)?Cg=qh():Cg=E1();break;case 9:case 11:if(Ps(()=>us()!==59)){Cg=Wo();break}default:Cg=E1();break}kc&&Jz(kc)?kc.push(Cg):kc?kc=[kc,Cg]:(kc=Cg,Dt()!==1&&_l(Ni.Unexpected_token))}let Ul=Jz(kc)?ii(le(kc),Ki):ho.checkDefined(kc),iA=Je(Ul);ii(iA,Ki),Ss=su([iA],Ki),Bo=fI(1,Ni.Unexpected_token)}let Wa=nn(Ke,2,6,!1,Ss,Bo,Ar,ESe);Un&&Ir(Wa),Wa.nodeCount=Gn,Wa.identifierCount=Zi,Wa.identifiers=we,Wa.parseDiagnostics=lfe(In,Wa),Br&&(Wa.jsDocDiagnostics=lfe(Br,Wa));let Ks=Wa;return gd(),Ks}e.parseJsonText=Yu;function YA(Ke,Ft,Er,Jr,Un,Ki){switch(s=n2.getNodeConstructor(),a=n2.getTokenConstructor(),o=n2.getIdentifierConstructor(),g=n2.getPrivateIdentifierConstructor(),p=n2.getSourceFileConstructor(),dr=maa(Ke),or=Ft,Fr=Er,tr=Jr,$r=Un,Or=aii(Un),In=[],Fa=0,we=new Map,Zi=0,Gn=0,Ar=0,lr=!0,$r){case 1:case 2:Qs=524288;break;case 6:Qs=134742016;break;default:Qs=0;break}ua=!1,t.setText(or),t.setOnError(Nd),t.setScriptTarget(Fr),t.setLanguageVariant(Or),t.setScriptKind($r),t.setJSDocParsingMode(Ki)}function gd(){t.clearCommentDirectives(),t.setText(""),t.setOnError(void 0),t.setScriptKind(0),t.setJSDocParsingMode(0),or=void 0,Fr=void 0,tr=void 0,$r=void 0,Or=void 0,Ar=0,In=void 0,Br=void 0,Fa=0,we=void 0,xa=void 0,lr=!0}function NA(Ke,Ft,Er,Jr,Un){let Ki=tAa(dr);Ki&&(Qs|=33554432),Ar=Qs,us();let Ss=Sp(0,Ah);ho.assert(Dt()===1);let Bo=Qa(),Wa=jr(vl(),Bo),Ks=nn(dr,Ke,Er,Ki,Ss,Wa,Ar,Jr);return iAa(Ks,or),sAa(Ks,kc),Ks.commentDirectives=t.getCommentDirectives(),Ks.nodeCount=Gn,Ks.identifierCount=Zi,Ks.identifiers=we,Ks.parseDiagnostics=lfe(In,Ks),Ks.jsDocParsingMode=Un,Br&&(Ks.jsDocDiagnostics=lfe(Br,Ks)),Ft&&Ir(Ks),Ks;function kc(Ul,iA,Cg){In.push(aSe(dr,or,Ul,iA,Cg))}}let Vd=!1;function jr(Ke,Ft){if(!Ft)return Ke;ho.assert(!Ke.jsDoc);let Er=Foa(Jca(Ke,or),Jr=>_2.parseJSDocComment(Ke,Jr.pos,Jr.end-Jr.pos));return Er.length&&(Ke.jsDoc=Er),Vd&&(Vd=!1,Ke.flags|=536870912),Ke}function Gr(Ke){let Ft=tr,Er=jCt.createSyntaxCursor(Ke);tr={currentNode:kc};let Jr=[],Un=In;In=[];let Ki=0,Ss=Wa(Ke.statements,0);for(;Ss!==-1;){let Ul=Ke.statements[Ki],iA=Ke.statements[Ss];l9(Jr,Ke.statements,Ki,Ss),Ki=Ks(Ke.statements,Ss);let Cg=cAr(Un,DE=>DE.start>=Ul.pos),Ku=Cg>=0?cAr(Un,DE=>DE.start>=iA.pos,Cg):-1;Cg>=0&&l9(In,Un,Cg,Ku>=0?Ku:void 0),EA(()=>{let DE=Qs;for(Qs|=65536,t.resetTokenState(iA.pos),us();Dt()!==1;){let my=t.getTokenFullStart(),y2=rA(0,Ah);if(Jr.push(y2),my===t.getTokenFullStart()&&us(),Ki>=0){let b2=Ke.statements[Ki];if(y2.end===b2.pos)break;y2.end>b2.pos&&(Ki=Ks(Ke.statements,Ki+1))}}Qs=DE},2),Ss=Ki>=0?Wa(Ke.statements,Ki):-1}if(Ki>=0){let Ul=Ke.statements[Ki];l9(Jr,Ke.statements,Ki);let iA=cAr(Un,Cg=>Cg.start>=Ul.pos);iA>=0&&l9(In,Un,iA)}return tr=Ft,y.updateSourceFile(Ke,KF(B(Jr),Ke.statements));function Bo(Ul){return!(Ul.flags&65536)&&!!(Ul.transformFlags&67108864)}function Wa(Ul,iA){for(let Cg=iA;Cg118}function ul(){return Dt()===80?!0:Dt()===127&&kl()||Dt()===135&&xg()?!1:Dt()>118}function Ts(Ke,Ft,Er=!0){return Dt()===Ke?(Er&&us(),!0):(Ft?_l(Ft):_l(Ni._0_expected,cy(Ke)),!1)}let RA=Object.keys(tdr).filter(Ke=>Ke.length>2);function Kd(Ke){if(zua(Ke)){Vg(qU(or,Ke.template.pos),Ke.template.end,Ni.Module_declaration_names_may_only_use_or_quoted_strings);return}let Ft=hh(Ke)?u9(Ke):void 0;if(!Ft||!Paa(Ft,Fr)){_l(Ni._0_expected,cy(27));return}let Er=qU(or,Ke.pos);switch(Ft){case"const":case"let":case"var":Vg(Er,Ke.end,Ni.Variable_declaration_not_allowed_at_this_location);return;case"declare":return;case"interface":Na(Ni.Interface_name_cannot_be_0,Ni.Interface_must_be_given_a_name,19);return;case"is":Vg(Er,t.getTokenStart(),Ni.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return;case"module":case"namespace":Na(Ni.Namespace_name_cannot_be_0,Ni.Namespace_must_be_given_a_name,19);return;case"type":Na(Ni.Type_alias_name_cannot_be_0,Ni.Type_alias_must_be_given_a_name,64);return}let Jr=gMe(Ft,RA,dE)??ys(Ft);if(Jr){Vg(Er,Ke.end,Ni.Unknown_keyword_or_identifier_Did_you_mean_0,Jr);return}Dt()!==0&&Vg(Er,Ke.end,Ni.Unexpected_keyword_or_identifier)}function Na(Ke,Ft,Er){Dt()===Er?_l(Ft):_l(Ke,t.getTokenValue())}function ys(Ke){for(let Ft of RA)if(Ke.length>Ft.length+2&&WCt(Ke,Ft))return`${Ft} ${Ke.slice(Ft.length)}`}function Ya(Ke,Ft,Er){if(Dt()===60&&!t.hasPrecedingLineBreak()){_l(Ni.Decorators_must_precede_the_name_and_all_keywords_of_property_declarations);return}if(Dt()===21){_l(Ni.Cannot_start_a_function_call_in_a_type_annotation),us();return}if(Ft&&!VA()){Er?_l(Ni._0_expected,cy(27)):_l(Ni.Expected_for_property_initializer);return}if(!uf()){if(Er){_l(Ni._0_expected,cy(27));return}Kd(Ke)}}function lm(Ke){return Dt()===Ke?(ag(),!0):(ho.assert(AAr(Ke)),_l(Ni._0_expected,cy(Ke)),!1)}function $s(Ke,Ft,Er,Jr){if(Dt()===Ft){us();return}let Un=_l(Ni._0_expected,cy(Ft));Er&&Un&&NCt(Un,aSe(dr,or,Jr,1,Ni.The_parser_expected_to_find_a_1_to_match_the_0_token_here,cy(Ke),cy(Ft)))}function ps(Ke){return Dt()===Ke?(us(),!0):!1}function oc(Ke){if(Dt()===Ke)return vl()}function NC(Ke){if(Dt()===Ke)return sl()}function fI(Ke,Ft,Er){return oc(Ke)||RC(Ke,!1,Ft||Ni._0_expected,Er||cy(Ke))}function wI(Ke){return NC(Ke)||(ho.assert(AAr(Ke)),RC(Ke,!1,Ni._0_expected,cy(Ke)))}function vl(){let Ke=ei(),Ft=Dt();return us(),ii(U(Ft),Ke)}function sl(){let Ke=ei(),Ft=Dt();return ag(),ii(U(Ft),Ke)}function VA(){return Dt()===27?!0:Dt()===20||Dt()===1||t.hasPrecedingLineBreak()}function uf(){return VA()?(Dt()===27&&us(),!0):!1}function ja(){return uf()||Ts(27)}function su(Ke,Ft,Er,Jr){let Un=B(Ke,Jr);return Wse(Un,Ft,Er??t.getTokenFullStart()),Un}function ii(Ke,Ft,Er){return Wse(Ke,Ft,Er??t.getTokenFullStart()),Qs&&(Ke.flags|=Qs),ua&&(ua=!1,Ke.flags|=262144),Ke}function RC(Ke,Ft,Er,...Jr){Ft?cu(t.getTokenFullStart(),0,Er,...Jr):Er&&_l(Er,...Jr);let Un=ei(),Ki=Ke===80?O("",void 0):qni(Ke)?y.createTemplateLiteralLikeNode(Ke,"","",void 0):Ke===9?v("",void 0):Ke===11?k("",void 0):Ke===282?y.createMissingDeclaration():U(Ke);return ii(Ki,Un)}function Uh(Ke){let Ft=we.get(Ke);return Ft===void 0&&we.set(Ke,Ft=Ke),Ft}function Nm(Ke,Ft,Er){if(Ke){Zi++;let Bo=t.hasPrecedingJSDocLeadingAsterisks()?t.getTokenStart():ei(),Wa=Dt(),Ks=Uh(t.getTokenValue()),kc=t.hasExtendedUnicodeEscape();return Gl(),ii(O(Ks,Wa,kc),Bo)}if(Dt()===81)return _l(Er||Ni.Private_identifiers_are_not_allowed_outside_class_bodies),Nm(!0);if(Dt()===0&&t.tryScan(()=>t.reScanInvalidIdentifier()===80))return Nm(!0);Zi++;let Jr=Dt()===1,Un=t.isReservedWord(),Ki=t.getTokenText(),Ss=Un?Ni.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:Ni.Identifier_expected;return RC(80,Jr,Ft||Ss,Ki)}function yl(Ke){return Nm(ec(),void 0,Ke)}function Qg(Ke,Ft){return Nm(ul(),Ke,Ft)}function op(Ke){return Nm(l1(Dt()),Ke)}function um(){return(t.hasUnicodeEscape()||t.hasExtendedUnicodeEscape())&&_l(Ni.Unicode_escape_sequence_cannot_appear_here),Nm(l1(Dt()))}function lh(){return l1(Dt())||Dt()===11||Dt()===9||Dt()===10}function Jl(){return l1(Dt())||Dt()===11}function Pp(Ke){if(Dt()===11||Dt()===9||Dt()===10){let Ft=Wo();return Ft.text=Uh(Ft.text),Ft}return Ke&&Dt()===23?fs():Dt()===81?go():op()}function gC(){return Pp(!0)}function fs(){let Ke=ei();Ts(23);let Ft=da(WA);return Ts(24),ii(y.createComputedPropertyName(Ft),Ke)}function go(){let Ke=ei(),Ft=X(Uh(t.getTokenValue()));return us(),ii(Ft,Ke)}function Ro(Ke){return Dt()===Ke&&Yi(Nr)}function ql(){return us(),t.hasPrecedingLineBreak()?!1:Us()}function Nr(){switch(Dt()){case 87:return us()===94;case 95:return us(),Dt()===90?Ps(Ll):Dt()===156?Ps(Di):Nn();case 90:return Ll();case 126:return us(),Us();case 139:case 153:return us(),Li();default:return ql()}}function Nn(){return Dt()===60||Dt()!==42&&Dt()!==130&&Dt()!==19&&Us()}function Di(){return us(),Nn()}function ra(){return Hz(Dt())&&Yi(Nr)}function Us(){return Dt()===23||Dt()===19||Dt()===42||Dt()===26||lh()}function Li(){return Dt()===23||lh()}function Ll(){return us(),Dt()===86||Dt()===100||Dt()===120||Dt()===60||Dt()===128&&Ps(t_)||Dt()===134&&Ps(oa)}function DA(Ke,Ft){if(D0(Ke))return!0;switch(Ke){case 0:case 1:case 3:return!(Dt()===27&&Ft)&&NE();case 2:return Dt()===84||Dt()===90;case 4:return Ps(TI);case 5:return Ps(MI)||Dt()===27&&!Ft;case 6:return Dt()===23||lh();case 12:switch(Dt()){case 23:case 42:case 26:case 25:return!0;default:return lh()}case 18:return lh();case 9:return Dt()===23||Dt()===26||lh();case 24:return Jl();case 7:return Dt()===19?Ps(Rd):Ft?ul()&&!I1():d2()&&!I1();case 8:return Jw();case 10:return Dt()===28||Dt()===26||Jw();case 19:return Dt()===103||Dt()===87||ul();case 15:switch(Dt()){case 28:case 25:return!0}case 11:return Dt()===26||QI();case 16:return EE(!1);case 17:return EE(!0);case 20:case 21:return Dt()===28||at();case 22:return vr();case 23:return Dt()===161&&Ps(AA)?!1:Dt()===11?!0:l1(Dt());case 13:return l1(Dt())||Dt()===19;case 14:return!0;case 25:return!0;case 26:return ho.fail("ParsingContext.Count used as a context");default:ho.assertNever(Ke,"Non-exhaustive case in 'isListElement'.")}}function Rd(){if(ho.assert(Dt()===19),us()===20){let Ke=us();return Ke===28||Ke===19||Ke===96||Ke===119}return!0}function PI(){return us(),ul()}function fl(){return us(),l1(Dt())}function Hm(){return us(),haa(Dt())}function I1(){return Dt()===119||Dt()===96?Ps(Iv):!1}function Iv(){return us(),QI()}function tA(){return us(),at()}function Rm(Ke){if(Dt()===1)return!0;switch(Ke){case 1:case 2:case 4:case 5:case 6:case 12:case 9:case 23:case 24:return Dt()===20;case 3:return Dt()===20||Dt()===84||Dt()===90;case 7:return Dt()===19||Dt()===96||Dt()===119;case 8:return uh();case 19:return Dt()===32||Dt()===21||Dt()===19||Dt()===96||Dt()===119;case 11:return Dt()===22||Dt()===27;case 15:case 21:case 10:return Dt()===24;case 17:case 16:case 18:return Dt()===22||Dt()===24;case 20:return Dt()!==28;case 22:return Dt()===19||Dt()===20;case 13:return Dt()===32||Dt()===44;case 14:return Dt()===30&&Ps(Jm);default:return!1}}function uh(){return!!(VA()||zh(Dt())||Dt()===39)}function Qy(){ho.assert(Fa,"Missing parsing context");for(let Ke=0;Ke<26;Ke++)if(Fa&1<=0)}function tI(Ke){return Ke===6?Ni.An_enum_member_name_must_be_followed_by_a_or:void 0}function Lf(){let Ke=su([],ei());return Ke.isMissingList=!0,Ke}function yE(Ke){return!!Ke.isMissingList}function gy(Ke,Ft,Er,Jr){if(Ts(Er)){let Un=Bf(Ke,Ft);return Ts(Jr),Un}return Lf()}function ie(Ke,Ft){let Er=ei(),Jr=Ke?op(Ft):Qg(Ft);for(;ps(25)&&Dt()!==30;)Jr=ii(y.createQualifiedName(Jr,J(Ke,!1,!0)),Er);return Jr}function w(Ke,Ft){return ii(y.createQualifiedName(Ke,Ft),Ke.pos)}function J(Ke,Ft,Er){if(t.hasPrecedingLineBreak()&&l1(Dt())&&Ps(q_))return RC(80,!0,Ni.Identifier_expected);if(Dt()===81){let Jr=go();return Ft?Jr:RC(80,!0,Ni.Identifier_expected)}return Ke?Er?op():um():Qg()}function ye(Ke){let Ft=ei(),Er=[],Jr;do Jr=Dn(Ke),Er.push(Jr);while(Jr.literal.kind===17);return su(Er,Ft)}function ut(Ke){let Ft=ei();return ii(y.createTemplateExpression(Ic(Ke),ye(Ke)),Ft)}function zt(){let Ke=ei();return ii(y.createTemplateLiteralType(Ic(!1),Zr()),Ke)}function Zr(){let Ke=ei(),Ft=[],Er;do Er=wr(),Ft.push(Er);while(Er.literal.kind===17);return su(Ft,Ke)}function wr(){let Ke=ei();return ii(y.createTemplateLiteralTypeSpan(zp(),Hn(!1)),Ke)}function Hn(Ke){return Dt()===20?(lA(Ke),Jc()):fI(18,Ni._0_expected,cy(20))}function Dn(Ke){let Ft=ei();return ii(y.createTemplateSpan(da(WA),Hn(Ke)),Ft)}function Wo(){return bu(Dt())}function Ic(Ke){!Ke&&t.getTokenFlags()&26656&&lA(!1);let Ft=bu(Dt());return ho.assert(Ft.kind===16,"Template head has wrong token kind"),Ft}function Jc(){let Ke=bu(Dt());return ho.assert(Ke.kind===17||Ke.kind===18,"Template fragment has wrong token kind"),Ke}function Mo(Ke){let Ft=Ke===15||Ke===18,Er=t.getTokenText();return Er.substring(1,Er.length-(t.isUnterminated()?0:Ft?1:2))}function bu(Ke){let Ft=ei(),Er=qni(Ke)?y.createTemplateLiteralLikeNode(Ke,t.getTokenValue(),Mo(Ke),t.getTokenFlags()&7176):Ke===9?v(t.getTokenValue(),t.getNumericLiteralFlags()):Ke===11?k(t.getTokenValue(),void 0,t.hasExtendedUnicodeEscape()):Ica(Ke)?T(Ke,t.getTokenValue()):ho.fail();return t.hasExtendedUnicodeEscape()&&(Er.hasExtendedUnicodeEscape=!0),t.isUnterminated()&&(Er.isUnterminated=!0),us(),ii(Er,Ft)}function ap(){return ie(!0,Ni.Type_expected)}function uA(){if(!t.hasPrecedingLineBreak()&&XA()===30)return gy(20,zp,30,32)}function rI(){let Ke=ei();return ii(y.createTypeReferenceNode(ap(),uA()),Ke)}function jd(Ke){switch(Ke.kind){case 183:return hfe(Ke.typeName);case 184:case 185:{let{parameters:Ft,type:Er}=Ke;return yE(Ft)||jd(Er)}case 196:return jd(Ke.type);default:return!1}}function x0(Ke){return us(),ii(y.createTypePredicateNode(void 0,Ke,zp()),Ke.pos)}function ha(){let Ke=ei();return us(),ii(y.createThisTypeNode(),Ke)}function hd(){let Ke=ei();return us(),ii(y.createJSDocAllType(),Ke)}function II(){let Ke=ei();return us(),ii(y.createJSDocNonNullableType(pc(),!1),Ke)}function vf(){let Ke=ei();return us(),Dt()===28||Dt()===20||Dt()===22||Dt()===32||Dt()===64||Dt()===52?ii(y.createJSDocUnknownType(),Ke):ii(y.createJSDocNullableType(zp(),!1),Ke)}function Kh(){let Ke=ei(),Ft=Qa();if(Yi(vv)){let Er=gg(36),Jr=DC(59,!1);return jr(ii(y.createJSDocFunctionType(Er,Jr),Ke),Ft)}return ii(y.createTypeReferenceNode(op(),void 0),Ke)}function Ym(){let Ke=ei(),Ft;return(Dt()===110||Dt()===105)&&(Ft=op(),Ts(59)),ii(y.createParameterDeclaration(void 0,void 0,Ft,void 0,CS(),void 0),Ke)}function CS(){t.setSkipJsDocLeadingAsterisks(!0);let Ke=ei();if(ps(144)){let Jr=y.createJSDocNamepathType(void 0);e:for(;;)switch(Dt()){case 20:case 1:case 28:case 5:break e;default:ag()}return t.setSkipJsDocLeadingAsterisks(!1),ii(Jr,Ke)}let Ft=ps(26),Er=m1();return t.setSkipJsDocLeadingAsterisks(!1),Ft&&(Er=ii(y.createJSDocVariadicType(Er),Ke)),Dt()===64?(us(),ii(y.createJSDocOptionalType(Er),Ke)):Er}function mS(){let Ke=ei();Ts(114);let Ft=ie(!0),Er=t.hasPrecedingLineBreak()?void 0:Sn();return ii(y.createTypeQueryNode(Ft,Er),Ke)}function bE(){let Ke=ei(),Ft=xe(!1,!0),Er=Qg(),Jr,Un;ps(96)&&(at()||!QI()?Jr=zp():Un=tN());let Ki=ps(64)?zp():void 0,Ss=y.createTypeParameterDeclaration(Ft,Er,Jr,Ki);return Ss.expression=Un,ii(Ss,Ke)}function k0(){if(Dt()===30)return gy(19,bE,30,32)}function EE(Ke){return Dt()===26||Jw()||Hz(Dt())||Dt()===60||at(!Ke)}function hB(Ke){let Ft=pC(Ni.Private_identifiers_cannot_be_used_as_parameters);return Qca(Ft)===0&&!_R(Ke)&&Hz(Dt())&&us(),Ft}function U_(){return ec()||Dt()===23||Dt()===19}function bh(Ke){return $l(Ke)}function K_(Ke){return $l(Ke,!1)}function $l(Ke,Ft=!0){let Er=ei(),Jr=Qa(),Un=Ke?wi(()=>xe(!0)):ts(()=>xe(!0));if(Dt()===110){let Wa=y.createParameterDeclaration(Un,void 0,Nm(!0),void 0,py(),void 0),Ks=KAr(Un);return Ks&&lf(Ks,Ni.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters),jr(ii(Wa,Er),Jr)}let Ki=lr;lr=!1;let Ss=oc(26);if(!Ft&&!U_())return;let Bo=jr(ii(y.createParameterDeclaration(Un,Ss,hB(Un),oc(58),py(),dm()),Er),Jr);return lr=Ki,Bo}function DC(Ke,Ft){if(jl(Ke,Ft))return Zu(m1)}function jl(Ke,Ft){return Ke===39?(Ts(Ke),!0):ps(59)?!0:Ft&&Dt()===39?(_l(Ni._0_expected,cy(59)),us(),!0):!1}function cp(Ke,Ft){let Er=kl(),Jr=xg();Ji(!!(Ke&1)),Vs(!!(Ke&2));let Un=Ke&32?Bf(17,Ym):Bf(16,()=>Ft?bh(Jr):K_(Jr));return Ji(Er),Vs(Jr),Un}function gg(Ke){if(!Ts(21))return Lf();let Ft=cp(Ke,!0);return Ts(22),Ft}function Xm(){ps(28)||ja()}function Rb(Ke){let Ft=ei(),Er=Qa();Ke===180&&Ts(105);let Jr=k0(),Un=gg(4),Ki=DC(59,!0);Xm();let Ss=Ke===179?y.createCallSignature(Jr,Un,Ki):y.createConstructSignature(Jr,Un,Ki);return jr(ii(Ss,Ft),Er)}function nA(){return Dt()===23&&Ps(Cv)}function Cv(){if(us(),Dt()===26||Dt()===24)return!0;if(Hz(Dt())){if(us(),ul())return!0}else if(ul())us();else return!1;return Dt()===59||Dt()===28?!0:Dt()!==58?!1:(us(),Dt()===59||Dt()===28||Dt()===24)}function My(Ke,Ft,Er){let Jr=gy(16,()=>bh(!1),23,24),Un=py();Xm();let Ki=y.createIndexSignature(Er,Jr,Un);return jr(ii(Ki,Ke),Ft)}function HC(Ke,Ft,Er){let Jr=gC(),Un=oc(58),Ki;if(Dt()===21||Dt()===30){let Ss=k0(),Bo=gg(4),Wa=DC(59,!0);Ki=y.createMethodSignature(Er,Jr,Un,Ss,Bo,Wa)}else{let Ss=py();Ki=y.createPropertySignature(Er,Jr,Un,Ss),Dt()===64&&(Ki.initializer=dm())}return Xm(),jr(ii(Ki,Ke),Ft)}function TI(){if(Dt()===21||Dt()===30||Dt()===139||Dt()===153)return!0;let Ke=!1;for(;Hz(Dt());)Ke=!0,us();return Dt()===23?!0:(lh()&&(Ke=!0,us()),Ke?Dt()===21||Dt()===30||Dt()===58||Dt()===59||Dt()===28||VA():!1)}function Fi(){if(Dt()===21||Dt()===30)return Rb(179);if(Dt()===105&&Ps(Zo))return Rb(180);let Ke=ei(),Ft=Qa(),Er=xe(!1);return Ro(139)?Z(Ke,Ft,Er,177,4):Ro(153)?Z(Ke,Ft,Er,178,4):nA()?My(Ke,Ft,Er):HC(Ke,Ft,Er)}function Zo(){return us(),Dt()===21||Dt()===30}function rs(){return us()===25}function Sc(){switch(us()){case 21:case 30:case 25:return!0}return!1}function Ml(){let Ke=ei();return ii(y.createTypeLiteralNode(xA()),Ke)}function xA(){let Ke;return Ts(19)?(Ke=Sp(4,Fi),Ts(20)):Ke=Lf(),Ke}function Vf(){return us(),Dt()===40||Dt()===41?us()===148:(Dt()===148&&us(),Dt()===23&&PI()&&us()===103)}function zd(){let Ke=ei(),Ft=op();Ts(103);let Er=zp();return ii(y.createTypeParameterDeclaration(void 0,Ft,Er,void 0),Ke)}function Eh(){let Ke=ei();Ts(19);let Ft;(Dt()===148||Dt()===40||Dt()===41)&&(Ft=vl(),Ft.kind!==148&&Ts(148)),Ts(23);let Er=zd(),Jr=ps(130)?zp():void 0;Ts(24);let Un;(Dt()===58||Dt()===40||Dt()===41)&&(Un=vl(),Un.kind!==58&&Ts(58));let Ki=py();ja();let Ss=Sp(4,Fi);return Ts(20),ii(y.createMappedTypeNode(Ft,Er,Jr,Un,Ki,Ss),Ke)}function g2(){let Ke=ei();if(ps(26))return ii(y.createRestTypeNode(zp()),Ke);let Ft=zp();if(fga(Ft)&&Ft.pos===Ft.type.pos){let Er=y.createOptionalTypeNode(Ft.type);return KF(Er,Ft),Er.flags=Ft.flags,Er}return Ft}function xm(){return us()===59||Dt()===58&&us()===59}function Ay(){return Dt()===26?l1(us())&&xm():l1(Dt())&&xm()}function B_(){if(Ps(Ay)){let Ke=ei(),Ft=Qa(),Er=oc(26),Jr=op(),Un=oc(58);Ts(59);let Ki=g2(),Ss=y.createNamedTupleMember(Er,Jr,Un,Ki);return jr(ii(Ss,Ke),Ft)}return g2()}function Qi(){let Ke=ei();return ii(y.createTupleTypeNode(gy(21,B_,23,24)),Ke)}function dy(){let Ke=ei();Ts(21);let Ft=zp();return Ts(22),ii(y.createParenthesizedType(Ft),Ke)}function BE(){let Ke;if(Dt()===128){let Ft=ei();us();let Er=ii(U(128),Ft);Ke=su([Er],Ft)}return Ke}function gf(){let Ke=ei(),Ft=Qa(),Er=BE(),Jr=ps(105);ho.assert(!Er||Jr,"Per isStartOfFunctionOrConstructorType, a function type cannot have modifiers.");let Un=k0(),Ki=gg(4),Ss=DC(39,!1),Bo=Jr?y.createConstructorTypeNode(Er,Un,Ki,Ss):y.createFunctionTypeNode(Un,Ki,Ss);return jr(ii(Bo,Ke),Ft)}function A2(){let Ke=vl();return Dt()===25?void 0:Ke}function vE(Ke){let Ft=ei();Ke&&us();let Er=Dt()===112||Dt()===97||Dt()===106?vl():bu(Dt());return Ke&&(Er=ii(y.createPrefixUnaryExpression(41,Er),Ft)),ii(y.createLiteralTypeNode(Er),Ft)}function G0(){return us(),Dt()===102}function hS(){Ar|=4194304;let Ke=ei(),Ft=ps(114);Ts(102),Ts(21);let Er=zp(),Jr;if(ps(28)){let Ss=t.getTokenStart();Ts(19);let Bo=Dt();if(Bo===118||Bo===132?us():_l(Ni._0_expected,cy(118)),Ts(59),Jr=S3(Bo,!0),!Ts(20)){let Wa=Cfe(In);Wa&&Wa.code===Ni._0_expected.code&&NCt(Wa,aSe(dr,or,Ss,1,Ni.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}}Ts(22);let Un=ps(25)?ap():void 0,Ki=uA();return ii(y.createImportTypeNode(Er,Jr,Un,Ki,Ft),Ke)}function C1(){return us(),Dt()===9||Dt()===10}function pc(){switch(Dt()){case 133:case 159:case 154:case 150:case 163:case 155:case 136:case 157:case 146:case 151:return Yi(A2)||rI();case 67:t.reScanAsteriskEqualsToken();case 42:return hd();case 61:t.reScanQuestionToken();case 58:return vf();case 100:return Kh();case 54:return II();case 15:case 11:case 9:case 10:case 112:case 97:case 106:return vE();case 41:return Ps(C1)?vE(!0):rI();case 116:return vl();case 110:{let Ke=ha();return Dt()===142&&!t.hasPrecedingLineBreak()?x0(Ke):Ke}case 114:return Ps(G0)?hS():mS();case 19:return Ps(Vf)?Eh():Ml();case 23:return Qi();case 21:return dy();case 102:return hS();case 131:return Ps(q_)?Qw():rI();case 16:return zt();default:return rI()}}function at(Ke){switch(Dt()){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!Ke;case 41:return!Ke&&Ps(C1);case 21:return!Ke&&Ps($t);default:return ul()}}function $t(){return us(),Dt()===22||EE(!1)||at()}function Wr(){let Ke=ei(),Ft=pc();for(;!t.hasPrecedingLineBreak();)switch(Dt()){case 54:us(),Ft=ii(y.createJSDocNonNullableType(Ft,!0),Ke);break;case 58:if(Ps(tA))return Ft;us(),Ft=ii(y.createJSDocNullableType(Ft,!0),Ke);break;case 23:if(Ts(23),at()){let Er=zp();Ts(24),Ft=ii(y.createIndexedAccessTypeNode(Ft,Er),Ke)}else Ts(24),Ft=ii(y.createArrayTypeNode(Ft),Ke);break;default:return Ft}return Ft}function vn(Ke){let Ft=ei();return Ts(Ke),ii(y.createTypeOperatorNode(Ke,hg()),Ft)}function os(){if(ps(96)){let Ke=mg(zp);if(Ta()||Dt()!==58)return Ke}}function So(){let Ke=ei(),Ft=Qg(),Er=Yi(os),Jr=y.createTypeParameterDeclaration(void 0,Ft,Er);return ii(Jr,Ke)}function Ig(){let Ke=ei();return Ts(140),ii(y.createInferTypeNode(So()),Ke)}function hg(){let Ke=Dt();switch(Ke){case 143:case 158:case 148:return vn(Ke);case 140:return Ig()}return Zu(Wr)}function Af(Ke){if(mv()){let Ft=gf(),Er;return Coi(Ft)?Er=Ke?Ni.Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:Ni.Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:Er=Ke?Ni.Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:Ni.Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type,lf(Ft,Er),Ft}}function nI(Ke,Ft,Er){let Jr=ei(),Un=Ke===52,Ki=ps(Ke),Ss=Ki&&Af(Un)||Ft();if(Dt()===Ke||Ki){let Bo=[Ss];for(;ps(Ke);)Bo.push(Af(Un)||Ft());Ss=ii(Er(su(Bo,Jr)),Jr)}return Ss}function AC(){return nI(51,hg,y.createIntersectionTypeNode)}function Db(){return nI(52,AC,y.createUnionTypeNode)}function qT(){return us(),Dt()===105}function mv(){return Dt()===30||Dt()===21&&Ps(Hy)?!0:Dt()===105||Dt()===128&&Ps(qT)}function Ow(){if(Hz(Dt())&&xe(!1),ul()||Dt()===110)return us(),!0;if(Dt()===23||Dt()===19){let Ke=In.length;return pC(),Ke===In.length}return!1}function Hy(){return us(),!!(Dt()===22||Dt()===26||Ow()&&(Dt()===59||Dt()===28||Dt()===58||Dt()===64||Dt()===22&&(us(),Dt()===39)))}function m1(){let Ke=ei(),Ft=ul()&&Yi(j_),Er=zp();return Ft?ii(y.createTypePredicateNode(void 0,Ft,Er),Ke):Er}function j_(){let Ke=Qg();if(Dt()===142&&!t.hasPrecedingLineBreak())return us(),Ke}function Qw(){let Ke=ei(),Ft=fI(131),Er=Dt()===110?ha():Qg(),Jr=ps(142)?zp():void 0;return ii(y.createTypePredicateNode(Ft,Er,Jr),Ke)}function zp(){if(Qs&81920)return Uo(81920,zp);if(mv())return gf();let Ke=ei(),Ft=Db();if(!Ta()&&!t.hasPrecedingLineBreak()&&ps(96)){let Er=mg(zp);Ts(58);let Jr=Zu(zp);Ts(59);let Un=Zu(zp);return ii(y.createConditionalTypeNode(Ft,Er,Jr,Un),Ke)}return Ft}function py(){return ps(59)?zp():void 0}function d2(){switch(Dt()){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 Ps(Sc);default:return ul()}}function QI(){if(d2())return!0;switch(Dt()){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 Hw()?!0:ul()}}function gA(){return Dt()!==19&&Dt()!==100&&Dt()!==86&&Dt()!==60&&QI()}function WA(){let Ke=Tu();Ke&&Yr(!1);let Ft=ei(),Er=Wf(!0),Jr;for(;Jr=oc(28);)Er=_1(Er,Jr,Wf(!0),Ft);return Ke&&Yr(!0),Er}function dm(){return ps(64)?Wf(!0):void 0}function Wf(Ke){if(Yy())return Xy();let Ft=_S(Ke)||hv(Ke);if(Ft)return Ft;let Er=ei(),Jr=Qa(),Un=h1(0);return Un.kind===80&&Dt()===39?fy(Er,Un,Ke,Jr,void 0):ySe(Un)&&ooi(Eo())?_1(Un,vl(),Wf(Ke),Er):$T(Un,Er,Ke)}function Yy(){return Dt()===127?kl()?!0:Ps(kA):!1}function jh(){return us(),!t.hasPrecedingLineBreak()&&ul()}function Xy(){let Ke=ei();return us(),!t.hasPrecedingLineBreak()&&(Dt()===42||QI())?ii(y.createYieldExpression(oc(42),Wf(!0)),Ke):ii(y.createYieldExpression(void 0,void 0),Ke)}function fy(Ke,Ft,Er,Jr,Un){ho.assert(Dt()===39,"parseSimpleArrowFunctionExpression should only have been called if we had a =>");let Ki=y.createParameterDeclaration(void 0,void 0,Ft,void 0,void 0,void 0);ii(Ki,Ft.pos);let Ss=su([Ki],Ki.pos,Ki.end),Bo=fI(39),Wa=FR(!!Un,Er),Ks=y.createArrowFunction(Un,void 0,Ss,void 0,Bo,Wa);return jr(ii(Ks,Ke),Jr)}function _S(Ke){let Ft=yS();if(Ft!==0)return Ft===1?_v(!0,!0):Yi(()=>SE(Ke))}function yS(){return Dt()===21||Dt()===30||Dt()===134?Ps(Jy):Dt()===39?1:0}function Jy(){if(Dt()===134&&(us(),t.hasPrecedingLineBreak()||Dt()!==21&&Dt()!==30))return 0;let Ke=Dt(),Ft=us();if(Ke===21){if(Ft===22)switch(us()){case 39:case 59:case 19:return 1;default:return 0}if(Ft===23||Ft===19)return 2;if(Ft===26)return 1;if(Hz(Ft)&&Ft!==134&&Ps(PI))return us()===130?0:1;if(!ul()&&Ft!==110)return 0;switch(us()){case 59:return 1;case 58:return us(),Dt()===59||Dt()===28||Dt()===64||Dt()===22?1:0;case 28:case 64:case 22:return 2}return 0}else return ho.assert(Ke===30),!ul()&&Dt()!==87?0:Or===1?Ps(()=>{ps(87);let Er=us();if(Er===96)switch(us()){case 64:case 32:case 44:return!1;default:return!0}else if(Er===28||Er===64)return!0;return!1})?1:0:2}function SE(Ke){let Ft=t.getTokenStart();if(xa!=null&&xa.has(Ft))return;let Er=_v(!1,Ke);return Er||(xa||(xa=new Set)).add(Ft),Er}function hv(Ke){if(Dt()===134&&Ps(Mw)===1){let Ft=ei(),Er=Qa(),Jr=gt(),Un=h1(0);return fy(Ft,Un,Ke,Er,Jr)}}function Mw(){if(Dt()===134){if(us(),t.hasPrecedingLineBreak()||Dt()===39)return 0;let Ke=h1(0);if(!t.hasPrecedingLineBreak()&&Ke.kind===80&&Dt()===39)return 1}return 0}function _v(Ke,Ft){let Er=ei(),Jr=Qa(),Un=gt(),Ki=_R(Un,xCt)?2:0,Ss=k0(),Bo;if(Ts(21)){if(Ke)Bo=cp(Ki,Ke);else{let my=cp(Ki,Ke);if(!my)return;Bo=my}if(!Ts(22)&&!Ke)return}else{if(!Ke)return;Bo=Lf()}let Wa=Dt()===59,Ks=DC(59,!1);if(Ks&&!Ke&&jd(Ks))return;let kc=Ks;for(;kc?.kind===196;)kc=kc.type;let Ul=kc&&Iga(kc);if(!Ke&&Dt()!==39&&(Ul||Dt()!==19))return;let iA=Dt(),Cg=fI(39),Ku=iA===39||iA===19?FR(_R(Un,xCt),Ft):Qg();if(!Ft&&Wa&&Dt()!==59)return;let DE=y.createArrowFunction(Un,Ss,Bo,Ks,Cg,Ku);return jr(ii(DE,Er),Jr)}function FR(Ke,Ft){if(Dt()===19)return yd(Ke?2:0);if(Dt()!==27&&Dt()!==100&&Dt()!==86&&NE()&&!gA())return yd(16|(Ke?2:0));let Er=lr;lr=!1;let Jr=Ke?wi(()=>Wf(Ft)):ts(()=>Wf(Ft));return lr=Er,Jr}function $T(Ke,Ft,Er){let Jr=oc(58);if(!Jr)return Ke;let Un;return ii(y.createConditionalExpression(Ke,Jr,Uo(r,()=>Wf(!1)),Un=fI(59),RAr(Un)?Wf(Er):RC(80,!1,Ni._0_expected,cy(59))),Ft)}function h1(Ke){let Ft=ei(),Er=tN();return xb(Ke,Er,Ft)}function zh(Ke){return Ke===103||Ke===165}function xb(Ke,Ft,Er){for(;;){Eo();let Jr=dAr(Dt());if(!(Dt()===43?Jr>=Ke:Jr>Ke)||Dt()===103&&zo())break;if(Dt()===130||Dt()===152){if(t.hasPrecedingLineBreak())break;{let Un=Dt();us(),Ft=Un===152?An(Ft,zp()):p2(Ft,zp())}}else Ft=_1(Ft,vl(),h1(Jr),Er)}return Ft}function Hw(){return zo()&&Dt()===103?!1:dAr(Dt())>0}function An(Ke,Ft){return ii(y.createSatisfiesExpression(Ke,Ft),Ke.pos)}function _1(Ke,Ft,Er,Jr){return ii(y.createBinaryExpression(Ke,Ft,Er),Jr)}function p2(Ke,Ft){return ii(y.createAsExpression(Ke,Ft),Ke.pos)}function qh(){let Ke=ei();return ii(y.createPrefixUnaryExpression(Dt(),Xu(F0)),Ke)}function pp(){let Ke=ei();return ii(y.createDeleteExpression(Xu(F0)),Ke)}function Yw(){let Ke=ei();return ii(y.createTypeOfExpression(Xu(F0)),Ke)}function bS(){let Ke=ei();return ii(y.createVoidExpression(Xu(F0)),Ke)}function eN(){return Dt()===135?xg()?!0:Ps(kA):!1}function kb(){let Ke=ei();return ii(y.createAwaitExpression(Xu(F0)),Ke)}function tN(){if(lG()){let Er=ei(),Jr=y1();return Dt()===43?xb(dAr(Dt()),Jr,Er):Jr}let Ke=Dt(),Ft=F0();if(Dt()===43){let Er=qU(or,Ft.pos),{end:Jr}=Ft;Ft.kind===216?Vg(Er,Jr,Ni.A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses):(ho.assert(AAr(Ke)),Vg(Er,Jr,Ni.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,cy(Ke)))}return Ft}function F0(){switch(Dt()){case 40:case 41:case 55:case 54:return qh();case 91:return pp();case 114:return Yw();case 116:return bS();case 30:return Or===1?wE(!0,void 0,void 0,!0):_d();case 135:if(eN())return kb();default:return y1()}}function lG(){switch(Dt()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 135:return!1;case 30:if(Or!==1)return!1;default:return!0}}function y1(){if(Dt()===46||Dt()===47){let Ft=ei();return ii(y.createPrefixUnaryExpression(Dt(),Xu(Gb)),Ft)}else if(Or===1&&Dt()===30&&Ps(Hm))return wE(!0);let Ke=Gb();if(ho.assert(ySe(Ke)),(Dt()===46||Dt()===47)&&!t.hasPrecedingLineBreak()){let Ft=Dt();return us(),ii(y.createPostfixUnaryExpression(Ke,Ft),Ke.pos)}return Ke}function Gb(){let Ke=ei(),Ft;return Dt()===102?Ps(Zo)?(Ar|=4194304,Ft=vl()):Ps(rs)?(us(),us(),Ft=ii(y.createMetaProperty(102,op()),Ke),Ar|=8388608):Ft=Bh():Ft=Dt()===108?b1():Bh(),f2(Ke,Ft)}function Bh(){let Ke=ei(),Ft=Sh();return pm(Ke,Ft,!0)}function b1(){let Ke=ei(),Ft=vl();if(Dt()===30){let Er=ei(),Jr=Yi(vS);Jr!==void 0&&(Vg(Er,ei(),Ni.super_may_not_use_type_arguments),e_()||(Ft=y.createExpressionWithTypeArguments(Ft,Jr)))}return Dt()===21||Dt()===25||Dt()===23?Ft:(fI(25,Ni.super_must_be_followed_by_an_argument_list_or_member_access),ii(ge(Ft,J(!0,!0,!0)),Ke))}function wE(Ke,Ft,Er,Jr=!1){let Un=ei(),Ki=rN(Ke),Ss;if(Ki.kind===286){let Bo=Uy(Ki),Wa,Ks=Bo[Bo.length-1];if(Ks?.kind===284&&!kse(Ks.openingElement.tagName,Ks.closingElement.tagName)&&kse(Ki.tagName,Ks.closingElement.tagName)){let kc=Ks.children.end,Ul=ii(y.createJsxElement(Ks.openingElement,Ks.children,ii(y.createJsxClosingElement(ii(O(""),kc,kc)),kc,kc)),Ks.openingElement.pos,kc);Bo=su([...Bo.slice(0,Bo.length-1),Ul],Bo.pos,kc),Wa=Ks.closingElement}else Wa=Va(Ki,Ke),kse(Ki.tagName,Wa.tagName)||(Er&&pii(Er)&&kse(Wa.tagName,Er.tagName)?lf(Ki.tagName,Ni.JSX_element_0_has_no_corresponding_closing_tag,pMe(or,Ki.tagName)):lf(Wa.tagName,Ni.Expected_corresponding_JSX_closing_tag_for_0,pMe(or,Ki.tagName)));Ss=ii(y.createJsxElement(Ki,Bo,Wa),Un)}else Ki.kind===289?Ss=ii(y.createJsxFragment(Ki,Uy(Ki),BA(Ke)),Un):(ho.assert(Ki.kind===285),Ss=Ki);if(!Jr&&Ke&&Dt()===30){let Bo=typeof Ft>"u"?Ss.pos:Ft,Wa=Yi(()=>wE(!0,Bo));if(Wa){let Ks=RC(28,!1);return lii(Ks,Wa.pos,0),Vg(qU(or,Bo),Wa.end,Ni.JSX_expressions_must_have_one_parent_element),ii(y.createBinaryExpression(Ss,Ks,Wa),Un)}}return Ss}function TE(){let Ke=ei(),Ft=y.createJsxText(t.getTokenValue(),gn===13);return gn=t.scanJsxToken(),ii(Ft,Ke)}function ES(Ke,Ft){switch(Ft){case 1:if(uga(Ke))lf(Ke,Ni.JSX_fragment_has_no_corresponding_closing_tag);else{let Er=Ke.tagName,Jr=Math.min(qU(or,Er.pos),Er.end);Vg(Jr,Er.end,Ni.JSX_element_0_has_no_corresponding_closing_tag,pMe(or,Ke.tagName))}return;case 31:case 7:return;case 12:case 13:return TE();case 19:return nN(!1);case 30:return wE(!1,void 0,Ke);default:return ho.assertNever(Ft)}}function Uy(Ke){let Ft=[],Er=ei(),Jr=Fa;for(Fa|=16384;;){let Un=ES(Ke,gn=t.reScanJsxToken());if(!Un||(Ft.push(Un),pii(Ke)&&Un?.kind===284&&!kse(Un.openingElement.tagName,Un.closingElement.tagName)&&kse(Ke.tagName,Un.closingElement.tagName)))break}return Fa=Jr,su(Ft,Er)}function $h(){let Ke=ei();return ii(y.createJsxAttributes(Sp(13,yx)),Ke)}function rN(Ke){let Ft=ei();if(Ts(30),Dt()===32)return Zf(),ii(y.createJsxOpeningFragment(),Ft);let Er=yv(),Jr=Qs&524288?void 0:Sn(),Un=$h(),Ki;return Dt()===32?(Zf(),Ki=y.createJsxOpeningElement(Er,Jr,Un)):(Ts(44),Ts(32,void 0,!1)&&(Ke?us():Zf()),Ki=y.createJsxSelfClosingElement(Er,Jr,Un)),ii(Ki,Ft)}function yv(){let Ke=ei(),Ft=bv();if(xoi(Ft))return Ft;let Er=Ft;for(;ps(25);)Er=ii(ge(Er,J(!0,!1,!1)),Ke);return Er}function bv(){let Ke=ei();Xl();let Ft=Dt()===110,Er=um();return ps(59)?(Xl(),ii(y.createJsxNamespacedName(Er,um()),Ke)):Ft?ii(y.createToken(110),Ke):Er}function nN(Ke){let Ft=ei();if(!Ts(19))return;let Er,Jr;return Dt()!==20&&(Ke||(Er=oc(26)),Jr=WA()),Ke?Ts(20):Ts(20,void 0,!1)&&Zf(),ii(y.createJsxExpression(Er,Jr),Ft)}function yx(){if(Dt()===19)return Xw();let Ke=ei();return ii(y.createJsxAttribute(iN(),vh()),Ke)}function vh(){if(Dt()===64){if(Wd()===11)return Wo();if(Dt()===19)return nN(!0);if(Dt()===30)return wE(!0);_l(Ni.or_JSX_element_expected)}}function iN(){let Ke=ei();Xl();let Ft=um();return ps(59)?(Xl(),ii(y.createJsxNamespacedName(Ft,um()),Ke)):Ft}function Xw(){let Ke=ei();Ts(19),Ts(26);let Ft=WA();return Ts(20),ii(y.createJsxSpreadAttribute(Ft),Ke)}function Va(Ke,Ft){let Er=ei();Ts(31);let Jr=yv();return Ts(32,void 0,!1)&&(Ft||!kse(Ke.tagName,Jr)?us():Zf()),ii(y.createJsxClosingElement(Jr),Er)}function BA(Ke){let Ft=ei();return Ts(31),Ts(32,Ni.Expected_corresponding_closing_tag_for_JSX_fragment,!1)&&(Ke?us():Zf()),ii(y.createJsxJsxClosingFragment(),Ft)}function _d(){ho.assert(Or!==1,"Type assertions should never be parsed in JSX; they should be parsed as comparisons or JSX elements/fragments.");let Ke=ei();Ts(30);let Ft=zp();Ts(32);let Er=F0();return ii(y.createTypeAssertion(Ft,Er),Ke)}function iI(){return us(),l1(Dt())||Dt()===23||e_()}function Z0(){return Dt()===29&&Ps(iI)}function _B(Ke){if(Ke.flags&64)return!0;if(ZCt(Ke)){let Ft=Ke.expression;for(;ZCt(Ft)&&!(Ft.flags&64);)Ft=Ft.expression;if(Ft.flags&64){for(;ZCt(Ke);)Ke.flags|=64,Ke=Ke.expression;return!0}}return!1}function Op(Ke,Ft,Er){let Jr=J(!0,!0,!0),Un=Er||_B(Ft),Ki=Un?fe(Ft,Er,Jr):ge(Ft,Jr);if(Un&&Efe(Ki.name)&&lf(Ki.name,Ni.An_optional_chain_cannot_contain_private_identifiers),rga(Ft)&&Ft.typeArguments){let Ss=Ft.typeArguments.pos-1,Bo=qU(or,Ft.typeArguments.end)+1;Vg(Ss,Bo,Ni.An_instantiation_expression_cannot_be_followed_by_a_property_access)}return ii(Ki,Ke)}function BS(Ke,Ft,Er){let Jr;if(Dt()===24)Jr=RC(80,!0,Ni.An_element_access_expression_should_take_an_argument);else{let Ki=da(WA);qCt(Ki)&&(Ki.text=Uh(Ki.text)),Jr=Ki}Ts(24);let Un=Er||_B(Ft)?he(Ft,Er,Jr):pe(Ft,Jr);return ii(Un,Ke)}function pm(Ke,Ft,Er){for(;;){let Jr,Un=!1;if(Er&&Z0()?(Jr=fI(29),Un=l1(Dt())):Un=ps(25),Un){Ft=Op(Ke,Ft,Jr);continue}if((Jr||!Tu())&&ps(23)){Ft=BS(Ke,Ft,Jr);continue}if(e_()){Ft=!Jr&&Ft.kind===233?v_(Ke,Ft.expression,Jr,Ft.typeArguments):v_(Ke,Ft,Jr,void 0);continue}if(!Jr){if(Dt()===54&&!t.hasPrecedingLineBreak()){us(),Ft=ii(y.createNonNullExpression(Ft),Ke);continue}let Ki=Yi(vS);if(Ki){Ft=ii(y.createExpressionWithTypeArguments(Ft,Ki),Ke);continue}}return Ft}}function e_(){return Dt()===15||Dt()===16}function v_(Ke,Ft,Er,Jr){let Un=y.createTaggedTemplateExpression(Ft,Jr,Dt()===15?(lA(!0),Wo()):ut(!0));return(Er||Ft.flags&64)&&(Un.flags|=64),Un.questionDotToken=Er,ii(Un,Ke)}function f2(Ke,Ft){for(;;){Ft=pm(Ke,Ft,!0);let Er,Jr=oc(29);if(Jr&&(Er=Yi(vS),e_())){Ft=v_(Ke,Ft,Jr,Er);continue}if(Er||Dt()===21){!Jr&&Ft.kind===233&&(Er=Ft.typeArguments,Ft=Ft.expression);let Un=yB(),Ki=Jr||_B(Ft)?Te(Ft,Jr,Er,Un):be(Ft,Er,Un);Ft=ii(Ki,Ke);continue}if(Jr){let Un=RC(80,!1,Ni.Identifier_expected);Ft=ii(fe(Ft,Jr,Un),Ke)}break}return Ft}function yB(){Ts(21);let Ke=Bf(11,NI);return Ts(22),Ke}function vS(){if(Qs&524288||XA()!==30)return;us();let Ke=Bf(20,zp);if(Eo()===32)return us(),Ke&&Ev()?Ke:void 0}function Ev(){switch(Dt()){case 21:case 15:case 16:return!0;case 30:case 32:case 40:case 41:return!1}return t.hasPrecedingLineBreak()||Hw()||!QI()}function Sh(){switch(Dt()){case 15:t.getTokenFlags()&26656&&lA(!1);case 9:case 10:case 11:return Wo();case 110:case 108:case 106:case 112:case 97:return vl();case 21:return Po();case 23:return z_();case 19:return E1();case 134:if(!Ps(oa))break;return B1();case 60:return Xr();case 86:return Kn();case 100:return B1();case 105:return wh();case 44:case 69:if(eA()===14)return Wo();break;case 16:return ut(!1);case 81:return go()}return Qg(Ni.Expression_expected)}function Po(){let Ke=ei(),Ft=Qa();Ts(21);let Er=da(WA);return Ts(22),jr(ii(x(Er),Ke),Ft)}function Ky(){let Ke=ei();Ts(26);let Ft=Wf(!0);return ii(y.createSpreadElement(Ft),Ke)}function Fb(){return Dt()===26?Ky():Dt()===28?ii(y.createOmittedExpression(),ei()):Wf(!0)}function NI(){return Uo(r,Fb)}function z_(){let Ke=ei(),Ft=t.getTokenStart(),Er=Ts(23),Jr=t.hasPrecedingLineBreak(),Un=Bf(15,Fb);return $s(23,24,Er,Ft),ii(le(Un,Jr),Ke)}function I2(){let Ke=ei(),Ft=Qa();if(oc(26)){let Ks=Wf(!0);return jr(ii(y.createSpreadAssignment(Ks),Ke),Ft)}let Er=xe(!0);if(Ro(139))return Z(Ke,Ft,Er,177,0);if(Ro(153))return Z(Ke,Ft,Er,178,0);let Jr=oc(42),Un=ul(),Ki=gC(),Ss=oc(58),Bo=oc(54);if(Jr||Dt()===21||Dt()===30)return sI(Ke,Ft,Er,Jr,Ki,Ss,Bo);let Wa;if(Un&&Dt()!==59){let Ks=oc(64),kc=Ks?da(()=>Wf(!0)):void 0;Wa=y.createShorthandPropertyAssignment(Ki,kc),Wa.equalsToken=Ks}else{Ts(59);let Ks=da(()=>Wf(!0));Wa=y.createPropertyAssignment(Ki,Ks)}return Wa.modifiers=Er,Wa.questionToken=Ss,Wa.exclamationToken=Bo,jr(ii(Wa,Ke),Ft)}function E1(){let Ke=ei(),Ft=t.getTokenStart(),Er=Ts(19),Jr=t.hasPrecedingLineBreak(),Un=Bf(12,I2,!0);return $s(19,20,Er,Ft),ii(ae(Un,Jr),Ke)}function B1(){let Ke=Tu();Yr(!1);let Ft=ei(),Er=Qa(),Jr=xe(!1);Ts(100);let Un=oc(42),Ki=Un?1:0,Ss=_R(Jr,xCt)?2:0,Bo=Ki&&Ss?$i(L0):Ki?Lu(L0):Ss?wi(L0):L0(),Wa=k0(),Ks=gg(Ki|Ss),kc=DC(59,!1),Ul=yd(Ki|Ss);Yr(Ke);let iA=y.createFunctionExpression(Jr,Un,Bo,Wa,Ks,kc,Ul);return jr(ii(iA,Ft),Er)}function L0(){return ec()?yl():void 0}function wh(){let Ke=ei();if(Ts(105),ps(25)){let Ki=op();return ii(y.createMetaProperty(105,Ki),Ke)}let Ft=ei(),Er=pm(Ft,Sh(),!1),Jr;Er.kind===233&&(Jr=Er.typeArguments,Er=Er.expression),Dt()===29&&_l(Ni.Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0,pMe(or,Er));let Un=Dt()===21?yB():void 0;return ii(ke(Er,Jr,Un),Ke)}function V0(Ke,Ft){let Er=ei(),Jr=Qa(),Un=t.getTokenStart(),Ki=Ts(19,Ft);if(Ki||Ke){let Ss=t.hasPrecedingLineBreak(),Bo=Sp(1,Ah);$s(19,20,Ki,Un);let Wa=jr(ii(et(Bo,Ss),Er),Jr);return Dt()===64&&(_l(Ni.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),us()),Wa}else{let Ss=Lf();return jr(ii(et(Ss,void 0),Er),Jr)}}function yd(Ke,Ft){let Er=kl();Ji(!!(Ke&1));let Jr=xg();Vs(!!(Ke&2));let Un=lr;lr=!1;let Ki=Tu();Ki&&Yr(!1);let Ss=V0(!!(Ke&16),Ft);return Ki&&Yr(!0),lr=Un,Ji(Er),Vs(Jr),Ss}function Bv(){let Ke=ei(),Ft=Qa();return Ts(27),jr(ii(y.createEmptyStatement(),Ke),Ft)}function $u(){let Ke=ei(),Ft=Qa();Ts(101);let Er=t.getTokenStart(),Jr=Ts(21),Un=da(WA);$s(21,22,Jr,Er);let Ki=Ah(),Ss=ps(93)?Ah():void 0;return jr(ii(Xe(Un,Ki,Ss),Ke),Ft)}function dC(){let Ke=ei(),Ft=Qa();Ts(92);let Er=Ah();Ts(117);let Jr=t.getTokenStart(),Un=Ts(21),Ki=da(WA);return $s(21,22,Un,Jr),ps(27),jr(ii(y.createDoStatement(Er,Ki),Ke),Ft)}function v1(){let Ke=ei(),Ft=Qa();Ts(117);let Er=t.getTokenStart(),Jr=Ts(21),Un=da(WA);$s(21,22,Jr,Er);let Ki=Ah();return jr(ii(ft(Un,Ki),Ke),Ft)}function C2(){let Ke=ei(),Ft=Qa();Ts(99);let Er=oc(135);Ts(21);let Jr;Dt()!==27&&(Dt()===115||Dt()===121||Dt()===87||Dt()===160&&Ps(Iy)||Dt()===135&&Ps(Do)?Jr=Nh(!0):Jr=og(WA));let Un;if(Er?Ts(165):ps(165)){let Ki=da(()=>Wf(!0));Ts(22),Un=er(Er,Jr,Ki,Ah())}else if(ps(103)){let Ki=da(WA);Ts(22),Un=y.createForInStatement(Jr,Ki,Ah())}else{Ts(27);let Ki=Dt()!==27&&Dt()!==22?da(WA):void 0;Ts(27);let Ss=Dt()!==22?da(WA):void 0;Ts(22),Un=Gt(Jr,Ki,Ss,Ah())}return jr(ii(Un,Ke),Ft)}function wp(Ke){let Ft=ei(),Er=Qa();Ts(Ke===252?83:88);let Jr=VA()?void 0:Qg();ja();let Un=Ke===252?y.createBreakStatement(Jr):y.createContinueStatement(Jr);return jr(ii(Un,Ft),Er)}function tC(){let Ke=ei(),Ft=Qa();Ts(107);let Er=VA()?void 0:da(WA);return ja(),jr(ii(y.createReturnStatement(Er),Ke),Ft)}function bd(){let Ke=ei(),Ft=Qa();Ts(118);let Er=t.getTokenStart(),Jr=Ts(21),Un=da(WA);$s(21,22,Jr,Er);let Ki=ai(67108864,Ah);return jr(ii(y.createWithStatement(Un,Ki),Ke),Ft)}function W0(){let Ke=ei(),Ft=Qa();Ts(84);let Er=da(WA);Ts(59);let Jr=Sp(3,Ah);return jr(ii(y.createCaseClause(Er,Jr),Ke),Ft)}function CI(){let Ke=ei();Ts(90),Ts(59);let Ft=Sp(3,Ah);return ii(y.createDefaultClause(Ft),Ke)}function Qp(){return Dt()===84?W0():CI()}function P0(){let Ke=ei();Ts(19);let Ft=Sp(2,Qp);return Ts(20),ii(y.createCaseBlock(Ft),Ke)}function S1(){let Ke=ei(),Ft=Qa();Ts(109),Ts(21);let Er=da(WA);Ts(22);let Jr=P0();return jr(ii(y.createSwitchStatement(Er,Jr),Ke),Ft)}function Ad(){let Ke=ei(),Ft=Qa();Ts(111);let Er=t.hasPrecedingLineBreak()?void 0:da(WA);return Er===void 0&&(Zi++,Er=ii(O(""),ei())),uf()||Kd(Er),jr(ii(y.createThrowStatement(Er),Ke),Ft)}function fp(){let Ke=ei(),Ft=Qa();Ts(113);let Er=V0(!1),Jr=Dt()===85?S_():void 0,Un;return(!Jr||Dt()===98)&&(Ts(98,Ni.catch_or_finally_expected),Un=V0(!1)),jr(ii(y.createTryStatement(Er,Jr,Un),Ke),Ft)}function S_(){let Ke=ei();Ts(85);let Ft;ps(21)?(Ft=vg(),Ts(22)):Ft=void 0;let Er=V0(!1);return ii(y.createCatchClause(Ft,Er),Ke)}function SS(){let Ke=ei(),Ft=Qa();return Ts(89),ja(),jr(ii(y.createDebuggerStatement(),Ke),Ft)}function bB(){let Ke=ei(),Ft=Qa(),Er,Jr=Dt()===21,Un=da(WA);return hh(Un)&&ps(59)?Er=y.createLabeledStatement(Un,Ah()):(uf()||Kd(Un),Er=Je(Un),Jr&&(Ft=!1)),jr(ii(Er,Ke),Ft)}function q_(){return us(),l1(Dt())&&!t.hasPrecedingLineBreak()}function t_(){return us(),Dt()===86&&!t.hasPrecedingLineBreak()}function oa(){return us(),Dt()===100&&!t.hasPrecedingLineBreak()}function kA(){return us(),(l1(Dt())||Dt()===9||Dt()===10||Dt()===11)&&!t.hasPrecedingLineBreak()}function lZ(){for(;;)switch(Dt()){case 115:case 121:case 87:case 100:case 86:case 94:return!0;case 160:return rC();case 135:return $_();case 120:case 156:return jh();case 144:case 145:return dA();case 128:case 129:case 134:case 138:case 123:case 124:case 125:case 148:let Ke=Dt();if(us(),t.hasPrecedingLineBreak())return!1;if(Ke===138&&Dt()===156)return!0;continue;case 162:return us(),Dt()===19||Dt()===80||Dt()===95;case 102:return us(),Dt()===11||Dt()===42||Dt()===19||l1(Dt());case 95:let Ft=us();if(Ft===156&&(Ft=Ps(us)),Ft===64||Ft===42||Ft===19||Ft===90||Ft===130||Ft===60)return!0;continue;case 126:us();continue;default:return!1}}function ZR(){return Ps(lZ)}function NE(){switch(Dt()){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:return!0;case 102:return ZR()||Ps(Sc);case 87:case 95:return ZR();case 134:case 138:case 120:case 144:case 145:case 156:case 162:return!0;case 129:case 125:case 123:case 124:case 126:case 148:return ZR()||!Ps(q_);default:return QI()}}function LR(){return us(),ec()||Dt()===19||Dt()===23}function dd(){return Ps(LR)}function Iy(){return df(!0)}function df(Ke){return us(),Ke&&Dt()===165?!1:(ec()||Dt()===19)&&!t.hasPrecedingLineBreak()}function rC(){return Ps(df)}function Do(Ke){return us()===160?df(Ke):!1}function $_(){return Ps(Do)}function Ah(){switch(Dt()){case 27:return Bv();case 19:return V0(!1);case 115:return Ip(ei(),Qa(),void 0);case 121:if(dd())return Ip(ei(),Qa(),void 0);break;case 135:if($_())return Ip(ei(),Qa(),void 0);break;case 160:if(rC())return Ip(ei(),Qa(),void 0);break;case 100:return RE(ei(),Qa(),void 0);case 86:return eo(ei(),Qa(),void 0);case 101:return $u();case 92:return dC();case 117:return v1();case 99:return C2();case 88:return wp(251);case 83:return wp(252);case 107:return tC();case 118:return bd();case 109:return S1();case 111:return Ad();case 113:case 85:case 98:return fp();case 89:return SS();case 60:return Mc();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(ZR())return Mc();break}return bB()}function Qc(Ke){return Ke.kind===138}function Mc(){let Ke=ei(),Ft=Qa(),Er=xe(!0);if(_R(Er,Qc)){let Jr=sN(Ke);if(Jr)return Jr;for(let Un of Er)Un.flags|=33554432;return ai(33554432,()=>wS(Ke,Ft,Er))}else return wS(Ke,Ft,Er)}function sN(Ke){return ai(33554432,()=>{let Ft=D0(Fa,Ke);if(Ft)return yh(Ft)})}function wS(Ke,Ft,Er){switch(Dt()){case 115:case 121:case 87:case 160:case 135:return Ip(Ke,Ft,Er);case 100:return RE(Ke,Ft,Er);case 86:return eo(Ke,Ft,Er);case 120:return Go(Ke,Ft,Er);case 156:return tc(Ke,Ft,Er);case 94:return fc(Ke,Ft,Er);case 162:case 144:case 145:return Mp(Ke,Ft,Er);case 102:return XC(Ke,Ft,Er);case 95:switch(us(),Dt()){case 90:case 64:return h2(Ke,Ft,Er);case 130:return e0(Ke,Ft,Er);default:return Zb(Ke,Ft,Er)}default:if(Er){let Jr=RC(282,!0,Ni.Declaration_expected);return xAr(Jr,Ke),Jr.modifiers=Er,Jr}return}}function AA(){return us()===11}function w_(){return us(),Dt()===161||Dt()===64}function dA(){return us(),!t.hasPrecedingLineBreak()&&(ul()||Dt()===11)}function jy(Ke,Ft){if(Dt()!==19){if(Ke&4){Xm();return}if(VA()){ja();return}}return yd(Ke,Ft)}function w1(){let Ke=ei();if(Dt()===28)return ii(y.createOmittedExpression(),Ke);let Ft=oc(26),Er=pC(),Jr=dm();return ii(y.createBindingElement(Ft,void 0,Er,Jr),Ke)}function Cy(){let Ke=ei(),Ft=oc(26),Er=ec(),Jr=gC(),Un;Er&&Dt()!==59?(Un=Jr,Jr=void 0):(Ts(59),Un=pC());let Ki=dm();return ii(y.createBindingElement(Ft,Jr,Un,Ki),Ke)}function Th(){let Ke=ei();Ts(19);let Ft=da(()=>Bf(9,Cy));return Ts(20),ii(y.createObjectBindingPattern(Ft),Ke)}function TS(){let Ke=ei();Ts(23);let Ft=da(()=>Bf(10,w1));return Ts(24),ii(y.createArrayBindingPattern(Ft),Ke)}function Jw(){return Dt()===19||Dt()===23||Dt()===81||ec()}function pC(Ke){return Dt()===23?TS():Dt()===19?Th():yl(Ke)}function dh(){return vg(!0)}function vg(Ke){let Ft=ei(),Er=Qa(),Jr=pC(Ni.Private_identifiers_are_not_allowed_in_variable_declarations),Un;Ke&&Jr.kind===80&&Dt()===54&&!t.hasPrecedingLineBreak()&&(Un=vl());let Ki=py(),Ss=zh(Dt())?void 0:dm(),Bo=Ur(Jr,Un,Ki,Ss);return jr(ii(Bo,Ft),Er)}function Nh(Ke){let Ft=ei(),Er=0;switch(Dt()){case 115:break;case 121:Er|=1;break;case 87:Er|=2;break;case 160:Er|=4;break;case 135:ho.assert($_()),Er|=6,us();break;default:ho.fail()}us();let Jr;if(Dt()===165&&Ps(m2))Jr=Lf();else{let Un=zo();Vn(Ke),Jr=Bf(8,Ke?vg:dh),Vn(Un)}return ii(Ot(Jr,Er),Ft)}function m2(){return PI()&&us()===22}function Ip(Ke,Ft,Er){let Jr=Nh(!1);ja();let Un=Ue(Er,Jr);return jr(ii(Un,Ke),Ft)}function RE(Ke,Ft,Er){let Jr=xg(),Un=$W(Er);Ts(100);let Ki=oc(42),Ss=Un&2048?L0():yl(),Bo=Ki?1:0,Wa=Un&1024?2:0,Ks=k0();Un&32&&Vs(!0);let kc=gg(Bo|Wa),Ul=DC(59,!1),iA=jy(Bo|Wa,Ni.or_expected);Vs(Jr);let Cg=y.createFunctionDeclaration(Er,Ki,Ss,Ks,kc,Ul,iA);return jr(ii(Cg,Ke),Ft)}function T1(){if(Dt()===137)return Ts(137);if(Dt()===11&&Ps(us)===21)return Yi(()=>{let Ke=Wo();return Ke.text==="constructor"?Ke:void 0})}function km(Ke,Ft,Er){return Yi(()=>{if(T1()){let Jr=k0(),Un=gg(0),Ki=DC(59,!1),Ss=jy(0,Ni.or_expected),Bo=y.createConstructorDeclaration(Er,Un,Ss);return Bo.typeParameters=Jr,Bo.type=Ki,jr(ii(Bo,Ke),Ft)}})}function sI(Ke,Ft,Er,Jr,Un,Ki,Ss,Bo){let Wa=Jr?1:0,Ks=_R(Er,xCt)?2:0,kc=k0(),Ul=gg(Wa|Ks),iA=DC(59,!1),Cg=jy(Wa|Ks,Bo),Ku=y.createMethodDeclaration(Er,Jr,Un,Ki,kc,Ul,iA,Cg);return Ku.exclamationToken=Ss,jr(ii(Ku,Ke),Ft)}function NS(Ke,Ft,Er,Jr,Un){let Ki=!Un&&!t.hasPrecedingLineBreak()?oc(54):void 0,Ss=py(),Bo=Uo(90112,dm);Ya(Jr,Ss,Bo);let Wa=y.createPropertyDeclaration(Er,Jr,Un||Ki,Ss,Bo);return jr(ii(Wa,Ke),Ft)}function $(Ke,Ft,Er){let Jr=oc(42),Un=gC(),Ki=oc(58);return Jr||Dt()===21||Dt()===30?sI(Ke,Ft,Er,Jr,Un,Ki,void 0,Ni.or_expected):NS(Ke,Ft,Er,Un,Ki)}function Z(Ke,Ft,Er,Jr,Un){let Ki=gC(),Ss=k0(),Bo=gg(0),Wa=DC(59,!1),Ks=jy(Un),kc=Jr===177?y.createGetAccessorDeclaration(Er,Ki,Bo,Wa,Ks):y.createSetAccessorDeclaration(Er,Ki,Bo,Ks);return kc.typeParameters=Ss,UCt(kc)&&(kc.type=Wa),jr(ii(kc,Ke),Ft)}function MI(){let Ke;if(Dt()===60)return!0;for(;Hz(Dt());){if(Ke=Dt(),hca(Ke))return!0;us()}if(Dt()===42||(lh()&&(Ke=Dt(),us()),Dt()===23))return!0;if(Ke!==void 0){if(!Fse(Ke)||Ke===153||Ke===139)return!0;switch(Dt()){case 21:case 30:case 54:case 59:case 64:case 58:return!0;default:return VA()}}return!1}function VR(Ke,Ft,Er){fI(126);let Jr=G(),Un=jr(ii(y.createClassStaticBlockDeclaration(Jr),Ke),Ft);return Un.modifiers=Er,Un}function G(){let Ke=kl(),Ft=xg();Ji(!1),Vs(!0);let Er=V0(!1);return Ji(Ke),Vs(Ft),Er}function L(){if(xg()&&Dt()===135){let Ke=ei(),Ft=Qg(Ni.Expression_expected);us();let Er=pm(Ke,Ft,!0);return f2(Ke,Er)}return Gb()}function ee(){let Ke=ei();if(!ps(60))return;let Ft=ml(L);return ii(y.createDecorator(Ft),Ke)}function ve(Ke,Ft,Er){let Jr=ei(),Un=Dt();if(Dt()===87&&Ft){if(!Yi(ql))return}else if(Er&&Dt()===126&&Ps(Vl)||Ke&&Dt()===126||!ra())return;return ii(U(Un),Jr)}function xe(Ke,Ft,Er){let Jr=ei(),Un,Ki,Ss,Bo=!1,Wa=!1,Ks=!1;if(Ke&&Dt()===60)for(;Ki=ee();)Un=a9(Un,Ki);for(;Ss=ve(Bo,Ft,Er);)Ss.kind===126&&(Bo=!0),Un=a9(Un,Ss),Wa=!0;if(Wa&&Ke&&Dt()===60)for(;Ki=ee();)Un=a9(Un,Ki),Ks=!0;if(Ks)for(;Ss=ve(Bo,Ft,Er);)Ss.kind===126&&(Bo=!0),Un=a9(Un,Ss);return Un&&su(Un,Jr)}function gt(){let Ke;if(Dt()===134){let Ft=ei();us();let Er=ii(U(134),Ft);Ke=su([Er],Ft)}return Ke}function nr(){let Ke=ei(),Ft=Qa();if(Dt()===27)return us(),jr(ii(y.createSemicolonClassElement(),Ke),Ft);let Er=xe(!0,!0,!0);if(Dt()===126&&Ps(Vl))return VR(Ke,Ft,Er);if(Ro(139))return Z(Ke,Ft,Er,177,0);if(Ro(153))return Z(Ke,Ft,Er,178,0);if(Dt()===137||Dt()===11){let Jr=km(Ke,Ft,Er);if(Jr)return Jr}if(nA())return My(Ke,Ft,Er);if(l1(Dt())||Dt()===11||Dt()===9||Dt()===10||Dt()===42||Dt()===23)if(_R(Er,Qc)){for(let Jr of Er)Jr.flags|=33554432;return ai(33554432,()=>$(Ke,Ft,Er))}else return $(Ke,Ft,Er);if(Er){let Jr=RC(80,!0,Ni.Declaration_expected);return NS(Ke,Ft,Er,Jr,void 0)}return ho.fail("Should not have attempted to parse class member declaration.")}function Xr(){let Ke=ei(),Ft=Qa(),Er=xe(!0);if(Dt()===86)return Ga(Ke,Ft,Er,231);let Jr=RC(282,!0,Ni.Expression_expected);return xAr(Jr,Ke),Jr.modifiers=Er,Jr}function Kn(){return Ga(ei(),Qa(),void 0,231)}function eo(Ke,Ft,Er){return Ga(Ke,Ft,Er,263)}function Ga(Ke,Ft,Er,Jr){let Un=xg();Ts(86);let Ki=tl(),Ss=k0();_R(Er,Eua)&&Vs(!0);let Bo=Sg(),Wa;Ts(19)?(Wa=Yn(),Ts(20)):Wa=Lf(),Vs(Un);let Ks=Jr===263?y.createClassDeclaration(Er,Ki,Ss,Bo,Wa):y.createClassExpression(Er,Ki,Ss,Bo,Wa);return jr(ii(Ks,Ke),Ft)}function tl(){return ec()&&!bo()?Nm(ec()):void 0}function bo(){return Dt()===119&&Ps(fl)}function Sg(){if(vr())return Sp(22,id)}function id(){let Ke=ei(),Ft=Dt();ho.assert(Ft===96||Ft===119),us();let Er=Bf(7,YC);return ii(y.createHeritageClause(Ft,Er),Ke)}function YC(){let Ke=ei(),Ft=Gb();if(Ft.kind===233)return Ft;let Er=Sn();return ii(y.createExpressionWithTypeArguments(Ft,Er),Ke)}function Sn(){return Dt()===30?gy(20,zp,30,32):void 0}function vr(){return Dt()===96||Dt()===119}function Yn(){return Sp(5,nr)}function Go(Ke,Ft,Er){Ts(120);let Jr=Qg(),Un=k0(),Ki=Sg(),Ss=xA(),Bo=y.createInterfaceDeclaration(Er,Jr,Un,Ki,Ss);return jr(ii(Bo,Ke),Ft)}function tc(Ke,Ft,Er){Ts(156),t.hasPrecedingLineBreak()&&_l(Ni.Line_break_not_permitted_here);let Jr=Qg(),Un=k0();Ts(64);let Ki=Dt()===141&&Yi(A2)||zp();ja();let Ss=y.createTypeAliasDeclaration(Er,Jr,Un,Ki);return jr(ii(Ss,Ke),Ft)}function pA(){let Ke=ei(),Ft=Qa(),Er=gC(),Jr=da(dm);return jr(ii(y.createEnumMember(Er,Jr),Ke),Ft)}function fc(Ke,Ft,Er){Ts(94);let Jr=Qg(),Un;Ts(19)?(Un=ka(()=>Bf(6,pA)),Ts(20)):Un=Lf();let Ki=y.createEnumDeclaration(Er,Jr,Un);return jr(ii(Ki,Ke),Ft)}function Ju(){let Ke=ei(),Ft;return Ts(19)?(Ft=Sp(1,Ah),Ts(20)):Ft=Lf(),ii(y.createModuleBlock(Ft),Ke)}function Vu(Ke,Ft,Er,Jr){let Un=Jr&32,Ki=Jr&8?op():Qg(),Ss=ps(25)?Vu(ei(),!1,void 0,8|Un):Ju(),Bo=y.createModuleDeclaration(Er,Ki,Ss,Jr);return jr(ii(Bo,Ke),Ft)}function Dc(Ke,Ft,Er){let Jr=0,Un;Dt()===162?(Un=Qg(),Jr|=2048):(Un=Wo(),Un.text=Uh(Un.text));let Ki;Dt()===19?Ki=Ju():ja();let Ss=y.createModuleDeclaration(Er,Un,Ki,Jr);return jr(ii(Ss,Ke),Ft)}function Mp(Ke,Ft,Er){let Jr=0;if(Dt()===162)return Dc(Ke,Ft,Er);if(ps(145))Jr|=32;else if(Ts(144),Dt()===11)return Dc(Ke,Ft,Er);return Vu(Ke,Ft,Er,Jr)}function zy(){return Dt()===149&&Ps(vv)}function vv(){return us()===21}function Vl(){return us()===19}function Jm(){return us()===44}function e0(Ke,Ft,Er){Ts(130),Ts(145);let Jr=Qg();ja();let Un=y.createNamespaceExportDeclaration(Jr);return Un.modifiers=Er,jr(ii(Un,Ke),Ft)}function XC(Ke,Ft,Er){Ts(102);let Jr=t.getTokenFullStart(),Un;ul()&&(Un=Qg());let Ki=!1;if(Un?.escapedText==="type"&&(Dt()!==161||ul()&&Ps(w_))&&(ul()||uZ())&&(Ki=!0,Un=ul()?Qg():void 0),Un&&!oN())return Uu(Ke,Ft,Er,Un,Ki);let Ss=EB(Un,Jr,Ki),Bo=cN(),Wa=WR();ja();let Ks=y.createImportDeclaration(Er,Ss,Bo,Wa);return jr(ii(Ks,Ke),Ft)}function EB(Ke,Ft,Er,Jr=!1){let Un;return(Ke||Dt()===42||Dt()===19)&&(Un=P9(Ke,Ft,Er,Jr),Ts(161)),Un}function WR(){let Ke=Dt();if((Ke===118||Ke===132)&&!t.hasPrecedingLineBreak())return S3(Ke)}function uG(){let Ke=ei(),Ft=l1(Dt())?op():bu(11);Ts(59);let Er=Wf(!0);return ii(y.createImportAttribute(Ft,Er),Ke)}function S3(Ke,Ft){let Er=ei();Ft||Ts(Ke);let Jr=t.getTokenStart();if(Ts(19)){let Un=t.hasPrecedingLineBreak(),Ki=Bf(24,uG,!0);if(!Ts(20)){let Ss=Cfe(In);Ss&&Ss.code===Ni._0_expected.code&&NCt(Ss,aSe(dr,or,Jr,1,Ni.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}return ii(y.createImportAttributes(Ki,Un,Ke),Er)}else{let Un=su([],ei(),void 0,!1);return ii(y.createImportAttributes(Un,!1,Ke),Er)}}function uZ(){return Dt()===42||Dt()===19}function oN(){return Dt()===28||Dt()===161}function Uu(Ke,Ft,Er,Jr,Un){Ts(64);let Ki=aN();ja();let Ss=y.createImportEqualsDeclaration(Er,Un,Jr,Ki);return jr(ii(Ss,Ke),Ft)}function P9(Ke,Ft,Er,Jr){let Un;return(!Ke||ps(28))&&(Jr&&t.setSkipJsDocLeadingAsterisks(!0),Un=Dt()===42?gZ():Sf(275),Jr&&t.setSkipJsDocLeadingAsterisks(!1)),ii(y.createImportClause(Er,Ke,Un),Ft)}function aN(){return zy()?Tp():ie(!1)}function Tp(){let Ke=ei();Ts(149),Ts(21);let Ft=cN();return Ts(22),ii(y.createExternalModuleReference(Ft),Ke)}function cN(){if(Dt()===11){let Ke=Wo();return Ke.text=Uh(Ke.text),Ke}else return WA()}function gZ(){let Ke=ei();Ts(42),Ts(130);let Ft=Qg();return ii(y.createNamespaceImport(Ft),Ke)}function gG(){return l1(Dt())||Dt()===11}function RS(Ke){return Dt()===11?Wo():Ke()}function Sf(Ke){let Ft=ei(),Er=Ke===275?y.createNamedImports(gy(23,Ex,19,20)):y.createNamedExports(gy(23,bx,19,20));return ii(Er,Ft)}function bx(){let Ke=Qa();return jr(AZ(281),Ke)}function Ex(){return AZ(276)}function AZ(Ke){let Ft=ei(),Er=Fse(Dt())&&!ul(),Jr=t.getTokenStart(),Un=t.getTokenEnd(),Ki=!1,Ss,Bo=!0,Wa=RS(op);if(Wa.kind===80&&Wa.escapedText==="type")if(Dt()===130){let Ul=op();if(Dt()===130){let iA=op();gG()?(Ki=!0,Ss=Ul,Wa=RS(kc),Bo=!1):(Ss=Wa,Wa=iA,Bo=!1)}else gG()?(Ss=Wa,Bo=!1,Wa=RS(kc)):(Ki=!0,Wa=Ul)}else gG()&&(Ki=!0,Wa=RS(kc));Bo&&Dt()===130&&(Ss=Wa,Ts(130),Wa=RS(kc)),Ke===276&&(Wa.kind!==80?(Vg(qU(or,Wa.pos),Wa.end,Ni.Identifier_expected),Wa=Wse(RC(80,!1),Wa.pos,Wa.pos)):Er&&Vg(Jr,Un,Ni.Identifier_expected));let Ks=Ke===276?y.createImportSpecifier(Ki,Ss,Wa):y.createExportSpecifier(Ki,Ss,Wa);return ii(Ks,Ft);function kc(){return Er=Fse(Dt())&&!ul(),Jr=t.getTokenStart(),Un=t.getTokenEnd(),op()}}function cg(Ke){return ii(y.createNamespaceExport(RS(op)),Ke)}function Zb(Ke,Ft,Er){let Jr=xg();Vs(!0);let Un,Ki,Ss,Bo=ps(156),Wa=ei();ps(42)?(ps(130)&&(Un=cg(Wa)),Ts(161),Ki=cN()):(Un=Sf(279),(Dt()===161||Dt()===11&&!t.hasPrecedingLineBreak())&&(Ts(161),Ki=cN()));let Ks=Dt();Ki&&(Ks===118||Ks===132)&&!t.hasPrecedingLineBreak()&&(Ss=S3(Ks)),ja(),Vs(Jr);let kc=y.createExportDeclaration(Er,Bo,Un,Ki,Ss);return jr(ii(kc,Ke),Ft)}function h2(Ke,Ft,Er){let Jr=xg();Vs(!0);let Un;ps(64)?Un=!0:Ts(90);let Ki=Wf(!0);ja(),Vs(Jr);let Ss=y.createExportAssignment(Er,Un,Ki);return jr(ii(Ss,Ke),Ft)}let AG;(Ke=>{Ke[Ke.SourceElements=0]="SourceElements",Ke[Ke.BlockStatements=1]="BlockStatements",Ke[Ke.SwitchClauses=2]="SwitchClauses",Ke[Ke.SwitchClauseStatements=3]="SwitchClauseStatements",Ke[Ke.TypeMembers=4]="TypeMembers",Ke[Ke.ClassMembers=5]="ClassMembers",Ke[Ke.EnumMembers=6]="EnumMembers",Ke[Ke.HeritageClauseElement=7]="HeritageClauseElement",Ke[Ke.VariableDeclarations=8]="VariableDeclarations",Ke[Ke.ObjectBindingElements=9]="ObjectBindingElements",Ke[Ke.ArrayBindingElements=10]="ArrayBindingElements",Ke[Ke.ArgumentExpressions=11]="ArgumentExpressions",Ke[Ke.ObjectLiteralMembers=12]="ObjectLiteralMembers",Ke[Ke.JsxAttributes=13]="JsxAttributes",Ke[Ke.JsxChildren=14]="JsxChildren",Ke[Ke.ArrayLiteralMembers=15]="ArrayLiteralMembers",Ke[Ke.Parameters=16]="Parameters",Ke[Ke.JSDocParameters=17]="JSDocParameters",Ke[Ke.RestProperties=18]="RestProperties",Ke[Ke.TypeParameters=19]="TypeParameters",Ke[Ke.TypeArguments=20]="TypeArguments",Ke[Ke.TupleElementTypes=21]="TupleElementTypes",Ke[Ke.HeritageClauses=22]="HeritageClauses",Ke[Ke.ImportOrExportSpecifiers=23]="ImportOrExportSpecifiers",Ke[Ke.ImportAttributes=24]="ImportAttributes",Ke[Ke.JSDocComment=25]="JSDocComment",Ke[Ke.Count=26]="Count"})(AG||(AG={}));let qy;(Ke=>{Ke[Ke.False=0]="False",Ke[Ke.True=1]="True",Ke[Ke.Unknown=2]="Unknown"})(qy||(qy={}));let _2;(Ke=>{function Ft(Ks,kc,Ul){YA("file.js",Ks,99,void 0,1,0),t.setText(Ks,kc,Ul),gn=t.scan();let iA=Er(),Cg=nn("file.js",99,1,!1,[],U(1),0,ESe),Ku=lfe(In,Cg);return Br&&(Cg.jsDocDiagnostics=lfe(Br,Cg)),gd(),iA?{jsDocTypeExpression:iA,diagnostics:Ku}:void 0}Ke.parseJSDocTypeExpressionForTests=Ft;function Er(Ks){let kc=ei(),Ul=(Ks?ps:Ts)(19),iA=ai(16777216,CS);(!Ks||Ul)&&lm(20);let Cg=y.createJSDocTypeExpression(iA);return Ir(Cg),ii(Cg,kc)}Ke.parseJSDocTypeExpression=Er;function Jr(){let Ks=ei(),kc=ps(19),Ul=ei(),iA=ie(!1);for(;Dt()===81;)To(),ag(),iA=ii(y.createJSDocMemberName(iA,Qg()),Ul);kc&&lm(20);let Cg=y.createJSDocNameReference(iA);return Ir(Cg),ii(Cg,Ks)}Ke.parseJSDocNameReference=Jr;function Un(Ks,kc,Ul){YA("",Ks,99,void 0,1,0);let iA=ai(16777216,()=>Wa(kc,Ul)),Cg=lfe(In,{languageVariant:0,text:Ks});return gd(),iA?{jsDoc:iA,diagnostics:Cg}:void 0}Ke.parseIsolatedJSDocComment=Un;function Ki(Ks,kc,Ul){let iA=gn,Cg=In.length,Ku=ua,DE=ai(16777216,()=>Wa(kc,Ul));return Cdr(DE,Ks),Qs&524288&&(Br||(Br=[]),l9(Br,In,Cg)),gn=iA,In.length=Cg,ua=Ku,DE}Ke.parseJSDocComment=Ki;let Ss;(Ks=>{Ks[Ks.BeginningOfLine=0]="BeginningOfLine",Ks[Ks.SawAsterisk=1]="SawAsterisk",Ks[Ks.SavingComments=2]="SavingComments",Ks[Ks.SavingBackticks=3]="SavingBackticks"})(Ss||(Ss={}));let Bo;(Ks=>{Ks[Ks.Property=1]="Property",Ks[Ks.Parameter=2]="Parameter",Ks[Ks.CallbackParameter=4]="CallbackParameter"})(Bo||(Bo={}));function Wa(Ks=0,kc){let Ul=or,iA=kc===void 0?Ul.length:Ks+kc;if(kc=iA-Ks,ho.assert(Ks>=0),ho.assert(Ks<=iA),ho.assert(iA<=Ul.length),!Oga(Ul,Ks))return;let Cg,Ku,DE,my,y2,b2=[],PR=[],w3=Fa;Fa|=1<<25;let fA=t.scanRange(Ks+3,kc-5,oI);return Fa=w3,fA;function oI(){let ss=1,Ko,$o=Ks-(Ul.lastIndexOf(` +`,Ks)+1)+4;function Za(xd){Ko||(Ko=$o),b2.push(xd),$o+=xd.length}for(ag();dG(5););dG(4)&&(ss=0,$o=0);e:for(;;){switch(Dt()){case 60:hy(b2),y2||(y2=ei()),jc(Ms($o)),ss=0,Ko=void 0;break;case 4:b2.push(t.getTokenText()),ss=0,$o=0;break;case 42:let xd=t.getTokenText();ss===1?(ss=2,Za(xd)):(ho.assert(ss===0),ss=1,$o+=xd.length);break;case 5:ho.assert(ss!==2,"whitespace shouldn't come from the scanner while saving top-level comment text");let fm=t.getTokenText();Ko!==void 0&&$o+fm.length>Ko&&b2.push(fm.slice(Ko-$o)),$o+=fm.length;break;case 1:break e;case 82:ss=2,Za(t.getTokenValue());break;case 19:ss=2;let N1=t.getTokenFullStart(),R1=t.getTokenEnd()-1,Vb=Ze(R1);if(Vb){my||t0(b2),PR.push(ii(y.createJSDocText(b2.join("")),my??Ks,N1)),PR.push(Vb),b2=[],my=t.getTokenEnd();break}default:ss=2,Za(t.getTokenText());break}ss===2?on(!1):ag()}let gc=b2.join("").trimEnd();PR.length&&gc.length&&PR.push(ii(y.createJSDocText(gc),my??Ks,y2)),PR.length&&Cg&&ho.assertIsDefined(y2,"having parsed tags implies that the end of the comment span should be set");let CA=Cg&&su(Cg,Ku,DE);return ii(y.createJSDocComment(PR.length?su(PR,Ks,y2):gc.length?gc:void 0,CA),Ks,iA)}function t0(ss){for(;ss.length&&(ss[0]===` +`||ss[0]==="\r");)ss.shift()}function hy(ss){for(;ss.length;){let Ko=ss[ss.length-1].trimEnd();if(Ko==="")ss.pop();else if(Ko.lengthfm&&(Za.push(BB.slice(fm-ss)),xd=2),ss+=BB.length;break;case 19:xd=2;let pG=t.getTokenFullStart(),vx=t.getTokenEnd()-1,O9=Ze(vx);O9?(gc.push(ii(y.createJSDocText(Za.join("")),CA??$o,pG)),gc.push(O9),Za=[],CA=t.getTokenEnd()):N1(t.getTokenText());break;case 62:xd===3?xd=2:xd=3,N1(t.getTokenText());break;case 82:xd!==3&&(xd=2),N1(t.getTokenValue());break;case 42:if(xd===0){xd=1,ss+=1;break}default:xd!==3&&(xd=2),N1(t.getTokenText());break}xd===2||xd===3?R1=on(xd===3):R1=ag()}t0(Za);let Vb=Za.join("").trimEnd();if(gc.length)return Vb.length&&gc.push(ii(y.createJSDocText(Vb),CA??$o)),su(gc,$o,t.getTokenEnd());if(Vb.length)return Vb}function Ze(ss){let Ko=Yi(hr);if(!Ko)return;ag(),Ed();let $o=pt(),Za=[];for(;Dt()!==20&&Dt()!==4&&Dt()!==1;)Za.push(t.getTokenText()),ag();let gc=Ko==="link"?y.createJSDocLink:Ko==="linkcode"?y.createJSDocLinkCode:y.createJSDocLinkPlain;return ii(gc($o,Za.join("")),ss,t.getTokenEnd())}function pt(){if(l1(Dt())){let ss=ei(),Ko=op();for(;ps(25);)Ko=ii(y.createQualifiedName(Ko,Dt()===81?RC(80,!1):op()),ss);for(;Dt()===81;)To(),ag(),Ko=ii(y.createJSDocMemberName(Ko,Qg()),ss);return Ko}}function hr(){if(Pd(),Dt()===19&&ag()===60&&l1(ag())){let ss=t.getTokenValue();if(Zn(ss))return ss}}function Zn(ss){return ss==="link"||ss==="linkcode"||ss==="linkplain"}function _o(ss,Ko,$o,Za){return ii(y.createJSDocUnknownTag(Ko,K(ss,ei(),$o,Za)),ss)}function jc(ss){ss&&(Cg?Cg.push(ss):(Cg=[ss],Ku=ss.pos),DE=ss.end)}function IA(){return Pd(),Dt()===19?Er():void 0}function Lb(){let ss=dG(23);ss&&Ed();let Ko=dG(62),$o=g8();return Ko&&wI(62),ss&&(Ed(),oc(64)&&WA(),Ts(24)),{name:$o,isBracketed:ss}}function Rh(ss){switch(ss.kind){case 151:return!0;case 188:return Rh(ss.elementType);default:return Ioi(ss)&&hh(ss.typeName)&&ss.typeName.escapedText==="Object"&&!ss.typeArguments}}function E2(ss,Ko,$o,Za){let gc=IA(),CA=!gc;Pd();let{name:xd,isBracketed:fm}=Lb(),N1=Pd();CA&&!Ps(hr)&&(gc=IA());let R1=K(ss,ei(),Za,N1),Vb=$y(gc,xd,$o,Za);Vb&&(gc=Vb,CA=!0);let BB=$o===1?y.createJSDocPropertyTag(Ko,xd,fm,gc,CA,R1):y.createJSDocParameterTag(Ko,xd,fm,gc,CA,R1);return ii(BB,ss)}function $y(ss,Ko,$o,Za){if(ss&&Rh(ss.type)){let gc=ei(),CA,xd;for(;CA=Yi(()=>MR($o,Za,Ko));)CA.kind===341||CA.kind===348?xd=a9(xd,CA):CA.kind===345&&lf(CA.tagName,Ni.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);if(xd){let fm=ii(y.createJSDocTypeLiteral(xd,ss.type.kind===188),gc);return ii(y.createJSDocTypeExpression(fm),gc)}}}function T3(ss,Ko,$o,Za){_R(Cg,Sga)&&Vg(Ko.pos,t.getTokenStart(),Ni._0_tag_already_specified,_Me(Ko.escapedText));let gc=IA();return ii(y.createJSDocReturnTag(Ko,gc,K(ss,ei(),$o,Za)),ss)}function N3(ss,Ko,$o,Za){_R(Cg,bdr)&&Vg(Ko.pos,t.getTokenStart(),Ni._0_tag_already_specified,_Me(Ko.escapedText));let gc=Er(!0),CA=$o!==void 0&&Za!==void 0?K(ss,ei(),$o,Za):void 0;return ii(y.createJSDocTypeTag(Ko,gc,CA),ss)}function c5(ss,Ko,$o,Za){let gc=Dt()===23||Ps(()=>ag()===60&&l1(ag())&&Zn(t.getTokenValue()))?void 0:Jr(),CA=$o!==void 0&&Za!==void 0?K(ss,ei(),$o,Za):void 0;return ii(y.createJSDocSeeTag(Ko,gc,CA),ss)}function Np(ss,Ko,$o,Za){let gc=IA(),CA=K(ss,ei(),$o,Za);return ii(y.createJSDocThrowsTag(Ko,gc,CA),ss)}function Si(ss,Ko,$o,Za){let gc=ei(),CA=pZ(),xd=t.getTokenFullStart(),fm=K(ss,xd,$o,Za);fm||(xd=t.getTokenFullStart());let N1=typeof fm!="string"?su(UAr([ii(CA,gc,xd)],fm),gc):CA.text+fm;return ii(y.createJSDocAuthorTag(Ko,N1),ss)}function pZ(){let ss=[],Ko=!1,$o=t.getToken();for(;$o!==1&&$o!==4;){if($o===30)Ko=!0;else{if($o===60&&!Ko)break;if($o===32&&Ko){ss.push(t.getTokenText()),t.resetTokenState(t.getTokenEnd());break}}ss.push(t.getTokenText()),$o=ag()}return y.createJSDocText(ss.join(""))}function zc(ss,Ko,$o,Za){let gc=QR();return ii(y.createJSDocImplementsTag(Ko,gc,K(ss,ei(),$o,Za)),ss)}function Dd(ss,Ko,$o,Za){let gc=QR();return ii(y.createJSDocAugmentsTag(Ko,gc,K(ss,ei(),$o,Za)),ss)}function wc(ss,Ko,$o,Za){let gc=Er(!1),CA=$o!==void 0&&Za!==void 0?K(ss,ei(),$o,Za):void 0;return ii(y.createJSDocSatisfiesTag(Ko,gc,CA),ss)}function oo(ss,Ko,$o,Za){let gc=t.getTokenFullStart(),CA;ul()&&(CA=Qg());let xd=EB(CA,gc,!0,!0),fm=cN(),N1=WR(),R1=$o!==void 0&&Za!==void 0?K(ss,ei(),$o,Za):void 0;return ii(y.createJSDocImportTag(Ko,xd,fm,N1,R1),ss)}function QR(){let ss=ps(19),Ko=ei(),$o=pf();t.setSkipJsDocLeadingAsterisks(!0);let Za=Sn();t.setSkipJsDocLeadingAsterisks(!1);let gc=y.createExpressionWithTypeArguments($o,Za),CA=ii(gc,Ko);return ss&&Ts(20),CA}function pf(){let ss=ei(),Ko=Bx();for(;ps(25);){let $o=Bx();Ko=ii(ge(Ko,$o),ss)}return Ko}function fZ(ss,Ko,$o,Za,gc){return ii(Ko($o,K(ss,ei(),Za,gc)),ss)}function l5(ss,Ko,$o,Za){let gc=Er(!0);return Ed(),ii(y.createJSDocThisTag(Ko,gc,K(ss,ei(),$o,Za)),ss)}function Sv(ss,Ko,$o,Za){let gc=Er(!0);return Ed(),ii(y.createJSDocEnumTag(Ko,gc,K(ss,ei(),$o,Za)),ss)}function lN(ss,Ko,$o,Za){let gc=IA();Pd();let CA=wf();Ed();let xd=Ce($o),fm;if(!gc||Rh(gc.type)){let R1,Vb,BB,pG=!1;for(;(R1=Yi(()=>g5($o)))&&R1.kind!==345;)if(pG=!0,R1.kind===344)if(Vb){let vx=_l(Ni.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);vx&&NCt(vx,aSe(dr,or,0,0,Ni.The_tag_was_first_specified_here));break}else Vb=R1;else BB=a9(BB,R1);if(pG){let vx=gc&&gc.type.kind===188,O9=y.createJSDocTypeLiteral(BB,vx);gc=Vb&&Vb.typeExpression&&!Rh(Vb.typeExpression.type)?Vb.typeExpression:ii(O9,ss),fm=gc.end}}fm=fm||xd!==void 0?ei():(CA??gc??Ko).end,xd||(xd=K(ss,fm,$o,Za));let N1=y.createJSDocTypedefTag(Ko,gc,CA,xd);return ii(N1,ss,fm)}function wf(ss){let Ko=t.getTokenStart();if(!l1(Dt()))return;let $o=Bx();if(ps(25)){let Za=wf(!0),gc=y.createModuleDeclaration(void 0,$o,Za,ss?8:void 0);return ii(gc,Ko)}return ss&&($o.flags|=4096),$o}function Uw(ss){let Ko=ei(),$o,Za;for(;$o=Yi(()=>MR(4,ss));){if($o.kind===345){lf($o.tagName,Ni.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);break}Za=a9(Za,$o)}return su(Za||[],Ko)}function Sl(ss,Ko){let $o=Uw(Ko),Za=Yi(()=>{if(dG(60)){let gc=Ms(Ko);if(gc&&gc.kind===342)return gc}});return ii(y.createJSDocSignature(void 0,$o,Za),ss)}function u5(ss,Ko,$o,Za){let gc=wf();Ed();let CA=Ce($o),xd=Sl(ss,$o);CA||(CA=K(ss,ei(),$o,Za));let fm=CA!==void 0?ei():xd.end;return ii(y.createJSDocCallbackTag(Ko,xd,gc,CA),ss,fm)}function Kw(ss,Ko,$o,Za){Ed();let gc=Ce($o),CA=Sl(ss,$o);gc||(gc=K(ss,ei(),$o,Za));let xd=gc!==void 0?ei():CA.end;return ii(y.createJSDocOverloadTag(Ko,CA,gc),ss,xd)}function uN(ss,Ko){for(;!hh(ss)||!hh(Ko);)if(!hh(ss)&&!hh(Ko)&&ss.right.escapedText===Ko.right.escapedText)ss=ss.left,Ko=Ko.left;else return!1;return ss.escapedText===Ko.escapedText}function g5(ss){return MR(1,ss)}function MR(ss,Ko,$o){let Za=!0,gc=!1;for(;;)switch(ag()){case 60:if(Za){let CA=c8(ss,Ko);return CA&&(CA.kind===341||CA.kind===348)&&$o&&(hh(CA.name)||!uN($o,CA.name.left))?!1:CA}gc=!1;break;case 4:Za=!0,gc=!1;break;case 42:gc&&(Za=!1),gc=!0;break;case 80:Za=!1;break;case 1:return!1}}function c8(ss,Ko){ho.assert(Dt()===60);let $o=t.getTokenFullStart();ag();let Za=Bx(),gc=Pd(),CA;switch(Za.escapedText){case"type":return ss===1&&N3($o,Za);case"prop":case"property":CA=1;break;case"arg":case"argument":case"param":CA=6;break;case"template":return A5($o,Za,Ko,gc);case"this":return l5($o,Za,Ko,gc);default:return!1}return ss&CA?E2($o,Za,ss,Ko):!1}function l8(){let ss=ei(),Ko=dG(23);Ko&&Ed();let $o=xe(!1,!0),Za=Bx(Ni.Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces),gc;if(Ko&&(Ed(),Ts(64),gc=ai(16777216,CS),Ts(24)),!hfe(Za))return ii(y.createTypeParameterDeclaration($o,Za,void 0,gc),ss)}function u8(){let ss=ei(),Ko=[];do{Ed();let $o=l8();$o!==void 0&&Ko.push($o),Pd()}while(dG(28));return su(Ko,ss)}function A5(ss,Ko,$o,Za){let gc=Dt()===19?Er():void 0,CA=u8();return ii(y.createJSDocTemplateTag(Ko,gc,CA,K(ss,ei(),$o,Za)),ss)}function dG(ss){return Dt()===ss?(ag(),!0):!1}function g8(){let ss=Bx();for(ps(23)&&Ts(24);ps(25);){let Ko=Bx();ps(23)&&Ts(24),ss=w(ss,Ko)}return ss}function Bx(ss){if(!l1(Dt()))return RC(80,!ss,ss||Ni.Identifier_expected);Zi++;let Ko=t.getTokenStart(),$o=t.getTokenEnd(),Za=Dt(),gc=Uh(t.getTokenValue()),CA=ii(O(gc,Za),Ko,$o);return ag(),CA}}})(_2=e.JSDocParser||(e.JSDocParser={}))})(yfe||(yfe={}));var Pii=new WeakSet;function $ga(e){Pii.has(e)&&ho.fail("Source file has already been incrementally parsed"),Pii.add(e)}var Poi=new WeakSet;function eAa(e){return Poi.has(e)}function VAr(e){Poi.add(e)}var jCt;(e=>{function t(k,T,O,X){if(X=X||ho.shouldAssert(2),y(k,T,O,X),Yaa(O))return k;if(k.statements.length===0)return yfe.parseSourceFile(k.fileName,T,k.languageVersion,void 0,!0,k.scriptKind,k.setExternalModuleIndicator,k.jsDocParsingMode);$ga(k),yfe.fixupParentReferences(k);let U=k.text,le=B(k),ae=f(k,O);y(k,T,ae,X),ho.assert(ae.span.start<=O.span.start),ho.assert(jU(ae.span)===jU(O.span)),ho.assert(jU(iMe(ae))===jU(iMe(O)));let ge=iMe(ae).length-ae.span.length;p(k,ae.span.start,jU(ae.span),jU(iMe(ae)),ge,U,T,X);let fe=yfe.parseSourceFile(k.fileName,T,k.languageVersion,le,!0,k.scriptKind,k.setExternalModuleIndicator,k.jsDocParsingMode);return fe.commentDirectives=r(k.commentDirectives,fe.commentDirectives,ae.span.start,jU(ae.span),ge,U,T,X),fe.impliedNodeFormat=k.impliedNodeFormat,Dga(k,fe),fe}e.updateSourceFile=t;function r(k,T,O,X,U,le,ae,ge){if(!k)return T;let fe,pe=!1;for(let be of k){let{range:Te,type:ke}=be;if(Te.endX){he();let x={range:{pos:Te.pos+U,end:Te.end+U},type:ke};fe=a9(fe,x),ge&&ho.assert(le.substring(Te.pos,Te.end)===ae.substring(x.range.pos,x.range.end))}}return he(),fe;function he(){pe||(pe=!0,fe?T&&fe.push(...T):fe=T)}}function s(k,T,O,X,U,le,ae){O?fe(k):ge(k);return;function ge(pe){let he="";if(ae&&a(pe)&&(he=U.substring(pe.pos,pe.end)),Iii(pe,T),Wse(pe,pe.pos+X,pe.end+X),ae&&a(pe)&&ho.assert(he===le.substring(pe.pos,pe.end)),KD(pe,ge,fe),mfe(pe))for(let be of pe.jsDoc)ge(be);g(pe,ae)}function fe(pe){Wse(pe,pe.pos+X,pe.end+X);for(let he of pe)ge(he)}}function a(k){switch(k.kind){case 11:case 9:case 80:return!0}return!1}function o(k,T,O,X,U){ho.assert(k.end>=T,"Adjusting an element that was entirely before the change range"),ho.assert(k.pos<=O,"Adjusting an element that was entirely after the change range"),ho.assert(k.pos<=k.end);let le=Math.min(k.pos,X),ae=k.end>=O?k.end+U:Math.min(k.end,X);if(ho.assert(le<=ae),k.parent){let ge=k.parent;ho.assertGreaterThanOrEqual(le,ge.pos),ho.assertLessThanOrEqual(ae,ge.end)}Wse(k,le,ae)}function g(k,T){if(T){let O=k.pos,X=U=>{ho.assert(U.pos>=O),O=U.end};if(mfe(k))for(let U of k.jsDoc)X(U);KD(k,X),ho.assert(O<=k.end)}}function p(k,T,O,X,U,le,ae,ge){fe(k);return;function fe(he){if(ho.assert(he.pos<=he.end),he.pos>O){s(he,k,!1,U,le,ae,ge);return}let be=he.end;if(be>=T){if(VAr(he),Iii(he,k),o(he,T,O,X,U),KD(he,fe,pe),mfe(he))for(let Te of he.jsDoc)fe(Te);g(he,ge);return}ho.assert(beO){s(he,k,!0,U,le,ae,ge);return}let be=he.end;if(be>=T){VAr(he),o(he,T,O,X,U);for(let Te of he)fe(Te);return}ho.assert(be0&&le<=1;le++){let ae=m(k,O);ho.assert(ae.pos<=O);let ge=ae.pos;O=Math.max(0,ge-1)}let X=Haa(O,jU(T.span)),U=T.newLength+(T.span.start-O);return Fsi(X,U)}function m(k,T){let O=k,X;if(KD(k,le),X){let ae=U(X);ae.pos>O.pos&&(O=ae)}return O;function U(ae){for(;;){let ge=Gla(ae);if(ge)ae=ge;else return ae}}function le(ae){if(!hfe(ae))if(ae.pos<=T){if(ae.pos>=O.pos&&(O=ae),TT),!0}}function y(k,T,O,X){let U=k.text;if(O&&(ho.assert(U.length-O.span.length+O.newLength===T.length),X||ho.shouldAssert(3))){let le=U.substr(0,O.span.start),ae=T.substr(0,O.span.start);ho.assert(le===ae);let ge=U.substring(jU(O.span),U.length),fe=T.substring(jU(iMe(O)),T.length);ho.assert(ge===fe)}}function B(k){let T=k.statements,O=0;ho.assert(O=pe.pos&&ae=pe.pos&&ae{k[k.Value=-1]="Value"})(v||(v={}))})(jCt||(jCt={}));function tAa(e){return rAa(e)!==void 0}function rAa(e){let t=bsi(e,tua,!1);if(t)return t;if(laa(e,".ts")){let r=ysi(e),s=r.lastIndexOf(".d.");if(s>=0)return r.substring(s)}}function nAa(e,t,r,s){if(e){if(e==="import")return 99;if(e==="require")return 1;s(t,r-t,Ni.resolution_mode_should_be_either_require_or_import)}}function iAa(e,t){let r=[];for(let s of wAr(t,0)||i2){let a=t.substring(s.pos,s.end);lAa(r,s,a)}e.pragmas=new Map;for(let s of r){if(e.pragmas.has(s.name)){let a=e.pragmas.get(s.name);a instanceof Array?a.push(s.args):e.pragmas.set(s.name,[a,s.args]);continue}e.pragmas.set(s.name,s.args)}}function sAa(e,t){e.checkJsDirective=void 0,e.referencedFiles=[],e.typeReferenceDirectives=[],e.libReferenceDirectives=[],e.amdDependencies=[],e.hasNoDefaultLib=!1,e.pragmas.forEach((r,s)=>{switch(s){case"reference":{let a=e.referencedFiles,o=e.typeReferenceDirectives,g=e.libReferenceDirectives;t3(lAr(r),p=>{let{types:f,lib:m,path:y,["resolution-mode"]:B,preserve:v}=p.arguments,k=v==="true"?!0:void 0;if(p.arguments["no-default-lib"]==="true")e.hasNoDefaultLib=!0;else if(f){let T=nAa(B,f.pos,f.end,t);o.push({pos:f.pos,end:f.end,fileName:f.value,...T?{resolutionMode:T}:{},...k?{preserve:k}:{}})}else m?g.push({pos:m.pos,end:m.end,fileName:m.value,...k?{preserve:k}:{}}):y?a.push({pos:y.pos,end:y.end,fileName:y.value,...k?{preserve:k}:{}}):t(p.range.pos,p.range.end-p.range.pos,Ni.Invalid_reference_directive_syntax)});break}case"amd-dependency":{e.amdDependencies=bAr(lAr(r),a=>({name:a.arguments.name,path:a.arguments.path}));break}case"amd-module":{if(r instanceof Array)for(let a of r)e.moduleName&&t(a.range.pos,a.range.end-a.range.pos,Ni.An_AMD_module_cannot_have_multiple_name_assignments),e.moduleName=a.arguments.name;else e.moduleName=r.arguments.name;break}case"ts-nocheck":case"ts-check":{t3(lAr(r),a=>{(!e.checkJsDirective||a.range.pos>e.checkJsDirective.pos)&&(e.checkJsDirective={enabled:s==="ts-check",end:a.range.end,pos:a.range.pos})});break}case"jsx":case"jsxfrag":case"jsximportsource":case"jsxruntime":return;default:ho.fail("Unhandled pragma kind")}})}var hAr=new Map;function oAa(e){if(hAr.has(e))return hAr.get(e);let t=new RegExp(`(\\s${e}\\s*=\\s*)(?:(?:'([^']*)')|(?:"([^"]*)"))`,"im");return hAr.set(e,t),t}var aAa=/^\/\/\/\s*<(\S+)\s.*?\/>/m,cAa=/^\/\/\/?\s*@([^\s:]+)((?:[^\S\r\n]|:).*)?$/m;function lAa(e,t,r){let s=t.kind===2&&aAa.exec(r);if(s){let o=s[1].toLowerCase(),g=_si[o];if(!g||!(g.kind&1))return;if(g.args){let p={};for(let f of g.args){let m=oAa(f.name).exec(r);if(!m&&!f.optional)return;if(m){let y=m[2]||m[3];if(f.captureSpan){let B=t.pos+m.index+m[1].length+1;p[f.name]={value:y,pos:B,end:B+y.length}}else p[f.name]=y}}e.push({name:o,args:{arguments:p,range:t}})}else e.push({name:o,args:{arguments:{},range:t}});return}let a=t.kind===2&&cAa.exec(r);if(a)return Oii(e,t,2,a);if(t.kind===3){let o=/@(\S+)(\s+(?:\S.*)?)?$/gm,g;for(;g=o.exec(r);)Oii(e,t,4,g)}}function Oii(e,t,r,s){if(!s)return;let a=s[1].toLowerCase(),o=_si[a];if(!o||!(o.kind&r))return;let g=s[2],p=uAa(o,g);p!=="fail"&&e.push({name:a,args:{arguments:p,range:t}})}function uAa(e,t){if(!t)return{};if(!e.args)return{};let r=t.trim().split(/\s+/),s={};for(let a=0;as.kind<309||s.kind>351);return r.kind<166?r:r.getFirstToken(e)}getLastToken(e){this.assertHasRealPosition();let t=this.getChildren(e),r=Cfe(t);if(r)return r.kind<166?r:r.getLastToken(e)}forEachChild(e,t){return KD(this,e,t)}};function gAa(e,t){let r=[];if(Zca(e))return e.forEachChild(g=>{r.push(g)}),r;CMe.setText((t||e.getSourceFile()).text);let s=e.pos,a=g=>{mMe(r,s,g.pos,e),r.push(g),s=g.end},o=g=>{mMe(r,s,g.pos,e),r.push(AAa(g,e)),s=g.end};return t3(e.jsDoc,a),s=e.pos,e.forEachChild(a,o),mMe(r,s,e.end,e),CMe.setText(void 0),r}function mMe(e,t,r,s){for(CMe.resetTokenState(t);tt.tagName.text==="inheritDoc"||t.tagName.text==="inheritdoc")}function LCt(e,t){if(!e)return i2;let r=ts_JsDoc_exports.getJsDocTagsFromDeclarations(e,t);if(t&&(r.length===0||e.some(Yoi))){let s=new Set;for(let a of e){let o=Xoi(t,a,g=>{var p;if(!s.has(g))return s.add(g),a.kind===177||a.kind===178?g.getContextualJsDocTags(a,t):((p=g.declarations)==null?void 0:p.length)===1?g.getJsDocTags(t):void 0});o&&(r=[...o,...r])}}return r}function IMe(e,t){if(!e)return i2;let r=ts_JsDoc_exports.getJsDocCommentsFromDeclarations(e,t);if(t&&(r.length===0||e.some(Yoi))){let s=new Set;for(let a of e){let o=Xoi(t,a,g=>{if(!s.has(g))return s.add(g),a.kind===177||a.kind===178?g.getContextualDocumentationComment(a,t):g.getDocumentationComment(t)});o&&(r=r.length===0?o.slice():o.concat(lineBreakPart(),r))}}return r}function Xoi(e,t,r){var s;let a=((s=t.parent)==null?void 0:s.kind)===176?t.parent.parent:t.parent;if(!a)return;let o=Ela(t);return xoa(pla(a),g=>{let p=e.getTypeAtLocation(g),f=o&&p.symbol?e.getTypeOfSymbol(p.symbol):p,m=e.getPropertyOfType(f,t.symbol.name);return m?r(m):void 0})}var IAa=class extends vdr{constructor(e,t,r){super(e,t,r)}update(e,t){return qga(this,e,t)}getLineAndCharacterOfPosition(e){return Nsi(this,e)}getLineStarts(){return SAr(this)}getPositionOfLineAndCharacter(e,t,r){return xaa(SAr(this),e,t,this.text,r)}getLineEndOfPosition(e){let{line:t}=this.getLineAndCharacterOfPosition(e),r=this.getLineStarts(),s;t+1>=r.length&&(s=this.getEnd()),s||(s=r[t+1]-1);let a=this.getFullText();return a[s]===` +`&&a[s-1]==="\r"?s-1:s}getNamedDeclarations(){return this.namedDeclarations||(this.namedDeclarations=this.computeNamedDeclarations()),this.namedDeclarations}computeNamedDeclarations(){let e=Xoa();return this.forEachChild(a),e;function t(o){let g=s(o);g&&e.add(g,o)}function r(o){let g=e.get(o);return g||e.set(o,g=[]),g}function s(o){let g=odr(o);return g&&(Aoi(g)&&Ose(g.expression)?g.expression.name.text:Ysi(g)?getNameFromPropertyName(g):void 0)}function a(o){switch(o.kind){case 262:case 218:case 174:case 173:let g=o,p=s(g);if(p){let y=r(p),B=Cfe(y);B&&g.parent===B.parent&&g.symbol===B.symbol?g.body&&!B.body&&(y[y.length-1]=g):y.push(g)}KD(o,a);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(o),KD(o,a);break;case 169:if(!wMe(o,31))break;case 260:case 208:{let y=o;if(Sca(y.name)){KD(y.name,a);break}y.initializer&&a(y.initializer)}case 306:case 172:case 171:t(o);break;case 278:let f=o;f.exportClause&&(cga(f.exportClause)?t3(f.exportClause.elements,a):a(f.exportClause.name));break;case 272:let m=o.importClause;m&&(m.name&&t(m.name),m.namedBindings&&(m.namedBindings.kind===274?t(m.namedBindings):t3(m.namedBindings.elements,a)));break;case 226:gdr(o)!==0&&t(o);default:KD(o,a)}}}},CAa=class{constructor(e,t,r){this.fileName=e,this.text=t,this.skipTrivia=r||(s=>s)}getLineAndCharacterOfPosition(e){return Nsi(this,e)}};function mAa(){return{getNodeConstructor:()=>vdr,getTokenConstructor:()=>Qoi,getIdentifierConstructor:()=>Moi,getPrivateIdentifierConstructor:()=>Hoi,getSourceFileConstructor:()=>IAa,getSymbolConstructor:()=>dAa,getTypeConstructor:()=>pAa,getSignatureConstructor:()=>fAa,getSourceMapSourceConstructor:()=>CAa}}var hAa=["getSemanticDiagnostics","getSuggestionDiagnostics","getCompilerOptionsDiagnostics","getSemanticClassifications","getEncodedSemanticClassifications","getCodeFixesAtPosition","getCombinedCodeFix","applyCodeActionCommand","organizeImports","getEditsForFileRename","getEmitOutput","getApplicableRefactors","getEditsForRefactor","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls","provideInlayHints","getSupportedCodeFixes","getPasteEdits"],C_l=[...hAa,"getCompletionsAtPosition","getCompletionEntryDetails","getCompletionEntrySymbol","getSignatureHelpItems","getQuickInfoAtPosition","getDefinitionAtPosition","getDefinitionAndBoundSpan","getImplementationAtPosition","getTypeDefinitionAtPosition","getReferencesAtPosition","findReferences","getDocumentHighlights","getNavigateToItems","getRenameInfo","findRenameLocations","getApplicableRefactors","preparePasteEditsForFile"];Mla(mAa());var Joi=new Proxy({},{get:()=>!0}),Uoi=Joi["4.8"];function tK(e,t=!1){var r;if(e!=null){if(Uoi){if(t||Bdr(e)){let s=zaa(e);return s?[...s]:void 0}return}return(r=e.modifiers)==null?void 0:r.filter(s=>!hdr(s))}}function pSe(e,t=!1){var r;if(e!=null){if(Uoi){if(t||Wga(e)){let s=jaa(e);return s?[...s]:void 0}return}return(r=e.decorators)==null?void 0:r.filter(hdr)}}var _Aa={},Koi=new Proxy({},{get:(e,t)=>t}),yAa=Koi,bAa=Koi,Ui=yAa,hR=bAa,joi=Joi["5.0"],Ol=vp,EAa=new Set([Ol.AmpersandAmpersandToken,Ol.BarBarToken,Ol.QuestionQuestionToken]),BAa=new Set([vp.AmpersandAmpersandEqualsToken,vp.AmpersandEqualsToken,vp.AsteriskAsteriskEqualsToken,vp.AsteriskEqualsToken,vp.BarBarEqualsToken,vp.BarEqualsToken,vp.CaretEqualsToken,vp.EqualsToken,vp.GreaterThanGreaterThanEqualsToken,vp.GreaterThanGreaterThanGreaterThanEqualsToken,vp.LessThanLessThanEqualsToken,vp.MinusEqualsToken,vp.PercentEqualsToken,vp.PlusEqualsToken,vp.QuestionQuestionEqualsToken,vp.SlashEqualsToken]),vAa=new Set([Ol.AmpersandAmpersandToken,Ol.AmpersandToken,Ol.AsteriskAsteriskToken,Ol.AsteriskToken,Ol.BarBarToken,Ol.BarToken,Ol.CaretToken,Ol.EqualsEqualsEqualsToken,Ol.EqualsEqualsToken,Ol.ExclamationEqualsEqualsToken,Ol.ExclamationEqualsToken,Ol.GreaterThanEqualsToken,Ol.GreaterThanGreaterThanGreaterThanToken,Ol.GreaterThanGreaterThanToken,Ol.GreaterThanToken,Ol.InKeyword,Ol.InstanceOfKeyword,Ol.LessThanEqualsToken,Ol.LessThanLessThanToken,Ol.LessThanToken,Ol.MinusToken,Ol.PercentToken,Ol.PlusToken,Ol.SlashToken]);function SAa(e){return BAa.has(e.kind)}function wAa(e){return EAa.has(e.kind)}function TAa(e){return vAa.has(e.kind)}function Lse(e){return cy(e)}function NAa(e){return e.kind!==Ol.SemicolonClassElement}function lC(e,t){let r=tK(t);return r?.some(s=>s.kind===e)===!0}function RAa(e){let t=tK(e);return t==null?null:t[t.length-1]??null}function DAa(e){return e.kind===Ol.CommaToken}function xAa(e){return e.kind===Ol.SingleLineCommentTrivia||e.kind===Ol.MultiLineCommentTrivia}function kAa(e){return e.kind===Ol.JSDocComment}function GAa(e){if(SAa(e))return{type:Ui.AssignmentExpression,operator:Lse(e.kind)};if(wAa(e))return{type:Ui.LogicalExpression,operator:Lse(e.kind)};if(TAa(e))return{type:Ui.BinaryExpression,operator:Lse(e.kind)};throw new Error(`Unexpected binary operator ${cy(e.kind)}`)}function VCt(e,t){let r=t.getLineAndCharacterOfPosition(e);return{column:r.character,line:r.line+1}}function ffe(e,t){let[r,s]=e.map(a=>VCt(a,t));return{end:s,start:r}}function FAa(e){if(e.kind===vp.Block)switch(e.parent.kind){case vp.Constructor:case vp.GetAccessor:case vp.SetAccessor:case vp.ArrowFunction:case vp.FunctionExpression:case vp.FunctionDeclaration:case vp.MethodDeclaration:return!0;default:return!1}return!0}function aMe(e,t){return[e.getStart(t),e.getEnd()]}function ZAa(e){return e.kind>=Ol.FirstToken&&e.kind<=Ol.LastToken}function zoi(e){return e.kind>=Ol.JsxElement&&e.kind<=Ol.JsxAttribute}function WAr(e){return e.flags&e3.Let?"let":(e.flags&e3.AwaitUsing)===e3.AwaitUsing?"await using":e.flags&e3.Const?"const":e.flags&e3.Using?"using":"var"}function Afe(e){let t=tK(e);if(t!=null)for(let r of t)switch(r.kind){case Ol.PublicKeyword:return"public";case Ol.ProtectedKeyword:return"protected";case Ol.PrivateKeyword:return"private";default:break}}function cSe(e,t,r){return s(t);function s(a){return fca(a)&&a.pos===e.end?a:XAa(a.getChildren(r),o=>(o.pos<=e.pos&&o.end>e.end||o.pos===e.end)&&YAa(o,r)?s(o):void 0)}}function LAa(e,t){let r=e;for(;r;){if(t(r))return r;r=r.parent}}function VAa(e){return!!LAa(e,zoi)}function Qii(e){return ISe(!1,e,/&(?:#\d+|#x[\da-fA-F]+|[0-9a-zA-Z]+);/g,t=>{let r=t.slice(1,-1);if(r[0]==="#"){let s=r[1]==="x"?parseInt(r.slice(2),16):parseInt(r.slice(1),10);return s>1114111?t:String.fromCodePoint(s)}return _Aa[r]||t})}function lSe(e){return e.kind===Ol.ComputedPropertyName}function Mii(e){return!!e.questionToken}function qoi(e){return e.type===Ui.ChainExpression}function WAa(e,t){return qoi(t)&&e.expression.kind!==vp.ParenthesizedExpression}function PAa(e){let t;if(joi&&e.kind===Ol.Identifier?t=Lsi(e):"originalKeywordKind"in e&&(t=e.originalKeywordKind),t)return t===Ol.NullKeyword?hR.Null:t>=Ol.FirstFutureReservedWord&&t<=Ol.LastKeyword?hR.Identifier:hR.Keyword;if(e.kind>=Ol.FirstKeyword&&e.kind<=Ol.LastFutureReservedWord)return e.kind===Ol.FalseKeyword||e.kind===Ol.TrueKeyword?hR.Boolean:hR.Keyword;if(e.kind>=Ol.FirstPunctuation&&e.kind<=Ol.LastPunctuation)return hR.Punctuator;if(e.kind>=Ol.NoSubstitutionTemplateLiteral&&e.kind<=Ol.TemplateTail)return hR.Template;switch(e.kind){case Ol.NumericLiteral:return hR.Numeric;case Ol.JsxText:return hR.JSXText;case Ol.StringLiteral:return e.parent.kind===Ol.JsxAttribute||e.parent.kind===Ol.JsxElement?hR.JSXText:hR.String;case Ol.RegularExpressionLiteral:return hR.RegularExpression;case Ol.Identifier:case Ol.ConstructorKeyword:case Ol.GetKeyword:case Ol.SetKeyword:default:}return e.kind===Ol.Identifier&&(zoi(e.parent)||e.parent.kind===Ol.PropertyAccessExpression&&VAa(e))?hR.JSXIdentifier:hR.Identifier}function OAa(e,t){let r=e.kind===Ol.JsxText?e.getFullStart():e.getStart(t),s=e.getEnd(),a=t.text.slice(r,s),o=PAa(e),g=[r,s],p=ffe(g,t);return o===hR.RegularExpression?{type:o,loc:p,range:g,regex:{flags:a.slice(a.lastIndexOf("/")+1),pattern:a.slice(1,a.lastIndexOf("/"))},value:a}:{type:o,loc:p,range:g,value:a}}function QAa(e){let t=[];function r(s){xAa(s)||kAa(s)||(ZAa(s)&&s.kind!==Ol.EndOfFileToken?t.push(OAa(s,e)):s.getChildren(e).forEach(r))}return r(e),t}var MAa=class extends Error{fileName;location;constructor(e,t,r){super(e),this.fileName=t,this.location=r,Object.defineProperty(this,"name",{configurable:!0,enumerable:!1,value:new.target.name})}get index(){return this.location.start.offset}get lineNumber(){return this.location.start.line}get column(){return this.location.start.column}};function $oi(e,t,r,s=r){let[a,o]=[r,s].map(g=>{let{character:p,line:f}=t.getLineAndCharacterOfPosition(g);return{column:p,line:f+1,offset:g}});return new MAa(e,t.fileName,{end:o,start:a})}function HAa(e){var t;return!!("illegalDecorators"in e&&(t=e.illegalDecorators)!=null&&t.length)}function YAa(e,t){return e.kind===Ol.EndOfFileToken?!!e.jsDoc:e.getWidth(t)!==0}function XAa(e,t){if(e!==void 0)for(let r=0;r=0&&e.kind!==Ol.EndOfFileToken}function Hii(e){return!KAa(e)}function jAa(e){return Zsi(e.parent,Xsi)}function zAa(e){return lC(Ol.AbstractKeyword,e)}function qAa(e){if(e.parameters.length&&!Goi(e)){let t=e.parameters[0];if($Aa(t))return t}return null}function $Aa(e){return eai(e.name)}function eda(e){switch(e.kind){case Ol.ClassDeclaration:return!0;case Ol.ClassExpression:return!0;case Ol.PropertyDeclaration:{let{parent:t}=e;return!!(KCt(t)||_Se(t)&&!zAa(e))}case Ol.GetAccessor:case Ol.SetAccessor:case Ol.MethodDeclaration:{let{parent:t}=e;return!!e.body&&(KCt(t)||_Se(t))}case Ol.Parameter:{let{parent:t}=e,r=t.parent;return!!t&&"body"in t&&!!t.body&&(t.kind===Ol.Constructor||t.kind===Ol.MethodDeclaration||t.kind===Ol.SetAccessor)&&qAa(t)!==e&&!!r&&r.kind===Ol.ClassDeclaration}}return!1}function wdr(e){switch(e.kind){case Ol.Identifier:return!0;case Ol.PropertyAccessExpression:case Ol.ElementAccessExpression:return!(e.flags&e3.OptionalChain);case Ol.ParenthesizedExpression:case Ol.TypeAssertionExpression:case Ol.AsExpression:case Ol.SatisfiesExpression:case Ol.ExpressionWithTypeArguments:case Ol.NonNullExpression:return wdr(e.expression);default:return!1}}function tda(e){let t=tK(e),r=e;for(;(!t||t.length===0)&&vMe(r.parent);){let s=tK(r.parent);s!=null&&s.length&&(t=s),r=r.parent}return t}var Tn=vp;function rda(e){return $oi("message"in e&&e.message||e.messageText,e.file,e.start)}var Fu,PAr,tai,jp,WT,fSe,OAr,nda=class{constructor(e,t){woa(this,Fu),rMe(this,"allowPattern",!1),rMe(this,"ast"),rMe(this,"esTreeNodeToTSNodeMap",new WeakMap),rMe(this,"options"),rMe(this,"tsNodeToESTreeNodeMap",new WeakMap),this.ast=e,this.options={...t}}assertModuleSpecifier(e,t){var r;!t&&e.moduleSpecifier==null&&qu(this,Fu,WT).call(this,e,"Module specifier must be a string literal."),e.moduleSpecifier&&((r=e.moduleSpecifier)==null?void 0:r.kind)!==Tn.StringLiteral&&qu(this,Fu,WT).call(this,e.moduleSpecifier,"Module specifier must be a string literal.")}convertBindingNameWithTypeAnnotation(e,t,r){let s=this.convertPattern(e);return t&&(s.typeAnnotation=this.convertTypeAnnotation(t,r),this.fixParentLocation(s,s.typeAnnotation.range)),s}convertBodyExpressions(e,t){let r=FAa(t);return e.map(s=>{let a=this.convertChild(s);if(r){if(a!=null&&a.expression&&Eoi(s)&&$Ct(s.expression)){let o=a.expression.raw;return a.directive=o.slice(1,-1),a}r=!1}return a}).filter(s=>s)}convertChainExpression(e,t){let{child:r,isOptional:s}=e.type===Ui.MemberExpression?{child:e.object,isOptional:e.optional}:e.type===Ui.CallExpression?{child:e.callee,isOptional:e.optional}:{child:e.expression,isOptional:!1},a=WAa(t,r);if(!a&&!s)return e;if(a&&qoi(r)){let o=r.expression;e.type===Ui.MemberExpression?e.object=o:e.type===Ui.CallExpression?e.callee=o:e.expression=o}return this.createNode(t,{type:Ui.ChainExpression,expression:e})}convertChild(e,t){return this.converter(e,t,!1)}convertPattern(e,t){return this.converter(e,t,!0)}convertTypeAnnotation(e,t){let r=t?.kind===Tn.FunctionType||t?.kind===Tn.ConstructorType?2:1,s=[e.getFullStart()-r,e.end],a=ffe(s,this.ast);return{type:Ui.TSTypeAnnotation,loc:a,range:s,typeAnnotation:this.convertChild(e)}}convertTypeArgumentsToTypeParameterInstantiation(e,t){let r=cSe(e,this.ast,this.ast);return this.createNode(t,{type:Ui.TSTypeParameterInstantiation,range:[e.pos-1,r.end],params:e.map(s=>this.convertChild(s))})}convertTSTypeParametersToTypeParametersDeclaration(e){let t=cSe(e,this.ast,this.ast),r=[e.pos-1,t.end];return{type:Ui.TSTypeParameterDeclaration,loc:ffe(r,this.ast),range:r,params:e.map(s=>this.convertChild(s))}}convertParameters(e){return e!=null&&e.length?e.map(t=>{var r;let s=this.convertChild(t);return s.decorators=((r=pSe(t))==null?void 0:r.map(a=>this.convertChild(a)))??[],s}):[]}converter(e,t,r){if(!e)return null;qu(this,Fu,tai).call(this,e);let s=this.allowPattern;r!=null&&(this.allowPattern=r);let a=this.convertNode(e,t??e.parent);return this.registerTSNodeInNodeMap(e,a),this.allowPattern=s,a}convertImportAttributes(e){return e==null?[]:e.elements.map(t=>this.convertChild(t))}convertJSXIdentifier(e){let t=this.createNode(e,{type:Ui.JSXIdentifier,name:e.getText()});return this.registerTSNodeInNodeMap(e,t),t}convertJSXNamespaceOrIdentifier(e){if(e.kind===vp.JsxNamespacedName){let s=this.createNode(e,{type:Ui.JSXNamespacedName,name:this.createNode(e.name,{type:Ui.JSXIdentifier,name:e.name.text}),namespace:this.createNode(e.namespace,{type:Ui.JSXIdentifier,name:e.namespace.text})});return this.registerTSNodeInNodeMap(e,s),s}let t=e.getText(),r=t.indexOf(":");if(r>0){let s=aMe(e,this.ast),a=this.createNode(e,{type:Ui.JSXNamespacedName,range:s,name:this.createNode(e,{type:Ui.JSXIdentifier,range:[s[0]+r+1,s[1]],name:t.slice(r+1)}),namespace:this.createNode(e,{type:Ui.JSXIdentifier,range:[s[0],s[0]+r],name:t.slice(0,r)})});return this.registerTSNodeInNodeMap(e,a),a}return this.convertJSXIdentifier(e)}convertJSXTagName(e,t){let r;switch(e.kind){case Tn.PropertyAccessExpression:e.name.kind===Tn.PrivateIdentifier&&qu(this,Fu,jp).call(this,e.name,"Non-private identifier expected."),r=this.createNode(e,{type:Ui.JSXMemberExpression,object:this.convertJSXTagName(e.expression,t),property:this.convertJSXIdentifier(e.name)});break;case Tn.ThisKeyword:case Tn.Identifier:default:return this.convertJSXNamespaceOrIdentifier(e)}return this.registerTSNodeInNodeMap(e,r),r}convertMethodSignature(e){return this.createNode(e,{type:Ui.TSMethodSignature,accessibility:Afe(e),computed:lSe(e.name),key:this.convertChild(e.name),kind:(()=>{switch(e.kind){case Tn.GetAccessor:return"get";case Tn.SetAccessor:return"set";case Tn.MethodSignature:return"method"}})(),optional:Mii(e),params:this.convertParameters(e.parameters),readonly:lC(Tn.ReadonlyKeyword,e),returnType:e.type&&this.convertTypeAnnotation(e.type,e),static:lC(Tn.StaticKeyword,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)})}fixParentLocation(e,t){t[0]e.range[1]&&(e.range[1]=t[1],e.loc.end=VCt(e.range[1],this.ast))}convertNode(e,t){var r,s,a,o,g,p,f,m;switch(e.kind){case Tn.SourceFile:return this.createNode(e,{type:Ui.Program,range:[e.getStart(this.ast),e.endOfFileToken.end],body:this.convertBodyExpressions(e.statements,e),comments:void 0,sourceType:e.externalModuleIndicator?"module":"script",tokens:void 0});case Tn.Block:return this.createNode(e,{type:Ui.BlockStatement,body:this.convertBodyExpressions(e.statements,e)});case Tn.Identifier:return UAa(e)?this.createNode(e,{type:Ui.ThisExpression}):this.createNode(e,{type:Ui.Identifier,decorators:[],name:e.text,optional:!1,typeAnnotation:void 0});case Tn.PrivateIdentifier:return this.createNode(e,{type:Ui.PrivateIdentifier,name:e.text.slice(1)});case Tn.WithStatement:return this.createNode(e,{type:Ui.WithStatement,body:this.convertChild(e.statement),object:this.convertChild(e.expression)});case Tn.ReturnStatement:return this.createNode(e,{type:Ui.ReturnStatement,argument:this.convertChild(e.expression)});case Tn.LabeledStatement:return this.createNode(e,{type:Ui.LabeledStatement,body:this.convertChild(e.statement),label:this.convertChild(e.label)});case Tn.ContinueStatement:return this.createNode(e,{type:Ui.ContinueStatement,label:this.convertChild(e.label)});case Tn.BreakStatement:return this.createNode(e,{type:Ui.BreakStatement,label:this.convertChild(e.label)});case Tn.IfStatement:return this.createNode(e,{type:Ui.IfStatement,alternate:this.convertChild(e.elseStatement),consequent:this.convertChild(e.thenStatement),test:this.convertChild(e.expression)});case Tn.SwitchStatement:return e.caseBlock.clauses.filter(y=>y.kind===Tn.DefaultClause).length>1&&qu(this,Fu,jp).call(this,e,"A 'default' clause cannot appear more than once in a 'switch' statement."),this.createNode(e,{type:Ui.SwitchStatement,cases:e.caseBlock.clauses.map(y=>this.convertChild(y)),discriminant:this.convertChild(e.expression)});case Tn.CaseClause:case Tn.DefaultClause:return this.createNode(e,{type:Ui.SwitchCase,consequent:e.statements.map(y=>this.convertChild(y)),test:e.kind===Tn.CaseClause?this.convertChild(e.expression):null});case Tn.ThrowStatement:return e.expression.end===e.expression.pos&&qu(this,Fu,WT).call(this,e,"A throw statement must throw an expression."),this.createNode(e,{type:Ui.ThrowStatement,argument:this.convertChild(e.expression)});case Tn.TryStatement:return this.createNode(e,{type:Ui.TryStatement,block:this.convertChild(e.tryBlock),finalizer:this.convertChild(e.finallyBlock),handler:this.convertChild(e.catchClause)});case Tn.CatchClause:return(r=e.variableDeclaration)!=null&&r.initializer&&qu(this,Fu,jp).call(this,e.variableDeclaration.initializer,"Catch clause variable cannot have an initializer."),this.createNode(e,{type:Ui.CatchClause,body:this.convertChild(e.block),param:e.variableDeclaration?this.convertBindingNameWithTypeAnnotation(e.variableDeclaration.name,e.variableDeclaration.type):null});case Tn.WhileStatement:return this.createNode(e,{type:Ui.WhileStatement,body:this.convertChild(e.statement),test:this.convertChild(e.expression)});case Tn.DoStatement:return this.createNode(e,{type:Ui.DoWhileStatement,body:this.convertChild(e.statement),test:this.convertChild(e.expression)});case Tn.ForStatement:return this.createNode(e,{type:Ui.ForStatement,body:this.convertChild(e.statement),init:this.convertChild(e.initializer),test:this.convertChild(e.condition),update:this.convertChild(e.incrementor)});case Tn.ForInStatement:return qu(this,Fu,PAr).call(this,e.initializer,e.kind),this.createNode(e,{type:Ui.ForInStatement,body:this.convertChild(e.statement),left:this.convertPattern(e.initializer),right:this.convertChild(e.expression)});case Tn.ForOfStatement:return qu(this,Fu,PAr).call(this,e.initializer,e.kind),this.createNode(e,{type:Ui.ForOfStatement,await:!!(e.awaitModifier&&e.awaitModifier.kind===Tn.AwaitKeyword),body:this.convertChild(e.statement),left:this.convertPattern(e.initializer),right:this.convertChild(e.expression)});case Tn.FunctionDeclaration:{let y=lC(Tn.DeclareKeyword,e),B=lC(Tn.AsyncKeyword,e),v=!!e.asteriskToken;y?e.body?qu(this,Fu,jp).call(this,e,"An implementation cannot be declared in ambient contexts."):B?qu(this,Fu,jp).call(this,e,"'async' modifier cannot be used in an ambient context."):v&&qu(this,Fu,jp).call(this,e,"Generators are not allowed in an ambient context."):!e.body&&v&&qu(this,Fu,jp).call(this,e,"A function signature cannot be declared as a generator.");let k=this.createNode(e,{type:e.body?Ui.FunctionDeclaration:Ui.TSDeclareFunction,async:B,body:this.convertChild(e.body)||void 0,declare:y,expression:!1,generator:v,id:this.convertChild(e.name),params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return this.fixExports(e,k)}case Tn.VariableDeclaration:{let y=!!e.exclamationToken,B=this.convertChild(e.initializer),v=this.convertBindingNameWithTypeAnnotation(e.name,e.type,e);return y&&(B?qu(this,Fu,jp).call(this,e,"Declarations with initializers cannot also have definite assignment assertions."):(v.type!==Ui.Identifier||!v.typeAnnotation)&&qu(this,Fu,jp).call(this,e,"Declarations with definite assignment assertions must also have type annotations.")),this.createNode(e,{type:Ui.VariableDeclarator,definite:y,id:v,init:B})}case Tn.VariableStatement:{let y=this.createNode(e,{type:Ui.VariableDeclaration,declarations:e.declarationList.declarations.map(B=>this.convertChild(B)),declare:lC(Tn.DeclareKeyword,e),kind:WAr(e.declarationList)});return y.declarations.length||qu(this,Fu,WT).call(this,e,"A variable declaration list must have at least one variable declarator."),(y.kind==="using"||y.kind==="await using")&&e.declarationList.declarations.forEach((B,v)=>{y.declarations[v].init==null&&qu(this,Fu,jp).call(this,B,`'${y.kind}' declarations must be initialized.`),y.declarations[v].id.type!==Ui.Identifier&&qu(this,Fu,jp).call(this,B.name,`'${y.kind}' declarations may not have binding patterns.`)}),(y.declare||["await using","const","using"].includes(y.kind))&&e.declarationList.declarations.forEach((B,v)=>{y.declarations[v].definite&&qu(this,Fu,jp).call(this,B,"A definite assignment assertion '!' is not permitted in this context.")}),y.declare&&e.declarationList.declarations.forEach((B,v)=>{y.declarations[v].init&&(["let","var"].includes(y.kind)||y.declarations[v].id.typeAnnotation)&&qu(this,Fu,jp).call(this,B,"Initializers are not permitted in ambient contexts.")}),this.fixExports(e,y)}case Tn.VariableDeclarationList:{let y=this.createNode(e,{type:Ui.VariableDeclaration,declarations:e.declarations.map(B=>this.convertChild(B)),declare:!1,kind:WAr(e)});return(y.kind==="using"||y.kind==="await using")&&e.declarations.forEach((B,v)=>{y.declarations[v].init!=null&&qu(this,Fu,jp).call(this,B,`'${y.kind}' declarations may not be initialized in for statement.`),y.declarations[v].id.type!==Ui.Identifier&&qu(this,Fu,jp).call(this,B.name,`'${y.kind}' declarations may not have binding patterns.`)}),y}case Tn.ExpressionStatement:return this.createNode(e,{type:Ui.ExpressionStatement,directive:void 0,expression:this.convertChild(e.expression)});case Tn.ThisKeyword:return this.createNode(e,{type:Ui.ThisExpression});case Tn.ArrayLiteralExpression:return this.allowPattern?this.createNode(e,{type:Ui.ArrayPattern,decorators:[],elements:e.elements.map(y=>this.convertPattern(y)),optional:!1,typeAnnotation:void 0}):this.createNode(e,{type:Ui.ArrayExpression,elements:e.elements.map(y=>this.convertChild(y))});case Tn.ObjectLiteralExpression:{if(this.allowPattern)return this.createNode(e,{type:Ui.ObjectPattern,decorators:[],optional:!1,properties:e.properties.map(B=>this.convertPattern(B)),typeAnnotation:void 0});let y=[];for(let B of e.properties)(B.kind===Tn.GetAccessor||B.kind===Tn.SetAccessor||B.kind===Tn.MethodDeclaration)&&!B.body&&qu(this,Fu,WT).call(this,B.end-1,"'{' expected."),y.push(this.convertChild(B));return this.createNode(e,{type:Ui.ObjectExpression,properties:y})}case Tn.PropertyAssignment:{let{exclamationToken:y,questionToken:B}=e;return B&&qu(this,Fu,jp).call(this,B,"A property assignment cannot have a question token."),y&&qu(this,Fu,jp).call(this,y,"A property assignment cannot have an exclamation token."),this.createNode(e,{type:Ui.Property,computed:lSe(e.name),key:this.convertChild(e.name),kind:"init",method:!1,optional:!1,shorthand:!1,value:this.converter(e.initializer,e,this.allowPattern)})}case Tn.ShorthandPropertyAssignment:{let{exclamationToken:y,modifiers:B,questionToken:v}=e;return B&&qu(this,Fu,jp).call(this,B[0],"A shorthand property assignment cannot have modifiers."),v&&qu(this,Fu,jp).call(this,v,"A shorthand property assignment cannot have a question token."),y&&qu(this,Fu,jp).call(this,y,"A shorthand property assignment cannot have an exclamation token."),e.objectAssignmentInitializer?this.createNode(e,{type:Ui.Property,computed:!1,key:this.convertChild(e.name),kind:"init",method:!1,optional:!1,shorthand:!0,value:this.createNode(e,{type:Ui.AssignmentPattern,decorators:[],left:this.convertPattern(e.name),optional:!1,right:this.convertChild(e.objectAssignmentInitializer),typeAnnotation:void 0})}):this.createNode(e,{type:Ui.Property,computed:!1,key:this.convertChild(e.name),kind:"init",method:!1,optional:!1,shorthand:!0,value:this.convertChild(e.name)})}case Tn.ComputedPropertyName:return this.convertChild(e.expression);case Tn.PropertyDeclaration:{let y=lC(Tn.AbstractKeyword,e);y&&e.initializer&&qu(this,Fu,jp).call(this,e.initializer,"Abstract property cannot have an initializer.");let B=lC(Tn.AccessorKeyword,e),v=B?y?Ui.TSAbstractAccessorProperty:Ui.AccessorProperty:y?Ui.TSAbstractPropertyDefinition:Ui.PropertyDefinition,k=this.convertChild(e.name);return this.createNode(e,{type:v,accessibility:Afe(e),computed:lSe(e.name),declare:lC(Tn.DeclareKeyword,e),decorators:((s=pSe(e))==null?void 0:s.map(T=>this.convertChild(T)))??[],definite:!!e.exclamationToken,key:k,optional:(k.type===Ui.Literal||e.name.kind===Tn.Identifier||e.name.kind===Tn.ComputedPropertyName||e.name.kind===Tn.PrivateIdentifier)&&!!e.questionToken,override:lC(Tn.OverrideKeyword,e),readonly:lC(Tn.ReadonlyKeyword,e),static:lC(Tn.StaticKeyword,e),typeAnnotation:e.type&&this.convertTypeAnnotation(e.type,e),value:y?null:this.convertChild(e.initializer)})}case Tn.GetAccessor:case Tn.SetAccessor:if(e.parent.kind===Tn.InterfaceDeclaration||e.parent.kind===Tn.TypeLiteral)return this.convertMethodSignature(e);case Tn.MethodDeclaration:{let y=this.createNode(e,{type:e.body?Ui.FunctionExpression:Ui.TSEmptyBodyFunctionExpression,range:[e.parameters.pos-1,e.end],async:lC(Tn.AsyncKeyword,e),body:this.convertChild(e.body),declare:!1,expression:!1,generator:!!e.asteriskToken,id:null,params:[],returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});y.typeParameters&&this.fixParentLocation(y,y.typeParameters.range);let B;if(t.kind===Tn.ObjectLiteralExpression)y.params=e.parameters.map(v=>this.convertChild(v)),B=this.createNode(e,{type:Ui.Property,computed:lSe(e.name),key:this.convertChild(e.name),kind:"init",method:e.kind===Tn.MethodDeclaration,optional:!!e.questionToken,shorthand:!1,value:y});else{y.params=this.convertParameters(e.parameters);let v=lC(Tn.AbstractKeyword,e)?Ui.TSAbstractMethodDefinition:Ui.MethodDefinition;B=this.createNode(e,{type:v,accessibility:Afe(e),computed:lSe(e.name),decorators:((a=pSe(e))==null?void 0:a.map(k=>this.convertChild(k)))??[],key:this.convertChild(e.name),kind:"method",optional:!!e.questionToken,override:lC(Tn.OverrideKeyword,e),static:lC(Tn.StaticKeyword,e),value:y})}return e.kind===Tn.GetAccessor?B.kind="get":e.kind===Tn.SetAccessor?B.kind="set":!B.static&&e.name.kind===Tn.StringLiteral&&e.name.text==="constructor"&&B.type!==Ui.Property&&(B.kind="constructor"),B}case Tn.Constructor:{let y=RAa(e),B=(y&&cSe(y,e,this.ast))??e.getFirstToken(),v=this.createNode(e,{type:e.body?Ui.FunctionExpression:Ui.TSEmptyBodyFunctionExpression,range:[e.parameters.pos-1,e.end],async:!1,body:this.convertChild(e.body),declare:!1,expression:!1,generator:!1,id:null,params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});v.typeParameters&&this.fixParentLocation(v,v.typeParameters.range);let k=this.createNode(e,{type:Ui.Identifier,range:[B.getStart(this.ast),B.end],decorators:[],name:"constructor",optional:!1,typeAnnotation:void 0}),T=lC(Tn.StaticKeyword,e);return this.createNode(e,{type:lC(Tn.AbstractKeyword,e)?Ui.TSAbstractMethodDefinition:Ui.MethodDefinition,accessibility:Afe(e),computed:!1,decorators:[],key:k,kind:T?"method":"constructor",optional:!1,override:!1,static:T,value:v})}case Tn.FunctionExpression:return this.createNode(e,{type:Ui.FunctionExpression,async:lC(Tn.AsyncKeyword,e),body:this.convertChild(e.body),declare:!1,expression:!1,generator:!!e.asteriskToken,id:this.convertChild(e.name),params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});case Tn.SuperKeyword:return this.createNode(e,{type:Ui.Super});case Tn.ArrayBindingPattern:return this.createNode(e,{type:Ui.ArrayPattern,decorators:[],elements:e.elements.map(y=>this.convertPattern(y)),optional:!1,typeAnnotation:void 0});case Tn.OmittedExpression:return null;case Tn.ObjectBindingPattern:return this.createNode(e,{type:Ui.ObjectPattern,decorators:[],optional:!1,properties:e.elements.map(y=>this.convertPattern(y)),typeAnnotation:void 0});case Tn.BindingElement:{if(t.kind===Tn.ArrayBindingPattern){let B=this.convertChild(e.name,t);return e.initializer?this.createNode(e,{type:Ui.AssignmentPattern,decorators:[],left:B,optional:!1,right:this.convertChild(e.initializer),typeAnnotation:void 0}):e.dotDotDotToken?this.createNode(e,{type:Ui.RestElement,argument:B,decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):B}let y;return e.dotDotDotToken?y=this.createNode(e,{type:Ui.RestElement,argument:this.convertChild(e.propertyName??e.name),decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):y=this.createNode(e,{type:Ui.Property,computed:!!(e.propertyName&&e.propertyName.kind===Tn.ComputedPropertyName),key:this.convertChild(e.propertyName??e.name),kind:"init",method:!1,optional:!1,shorthand:!e.propertyName,value:this.convertChild(e.name)}),e.initializer&&(y.value=this.createNode(e,{type:Ui.AssignmentPattern,range:[e.name.getStart(this.ast),e.initializer.end],decorators:[],left:this.convertChild(e.name),optional:!1,right:this.convertChild(e.initializer),typeAnnotation:void 0})),y}case Tn.ArrowFunction:return this.createNode(e,{type:Ui.ArrowFunctionExpression,async:lC(Tn.AsyncKeyword,e),body:this.convertChild(e.body),expression:e.body.kind!==Tn.Block,generator:!1,id:null,params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});case Tn.YieldExpression:return this.createNode(e,{type:Ui.YieldExpression,argument:this.convertChild(e.expression),delegate:!!e.asteriskToken});case Tn.AwaitExpression:return this.createNode(e,{type:Ui.AwaitExpression,argument:this.convertChild(e.expression)});case Tn.NoSubstitutionTemplateLiteral:return this.createNode(e,{type:Ui.TemplateLiteral,expressions:[],quasis:[this.createNode(e,{type:Ui.TemplateElement,tail:!0,value:{cooked:e.text,raw:this.ast.text.slice(e.getStart(this.ast)+1,e.end-1)}})]});case Tn.TemplateExpression:{let y=this.createNode(e,{type:Ui.TemplateLiteral,expressions:[],quasis:[this.convertChild(e.head)]});return e.templateSpans.forEach(B=>{y.expressions.push(this.convertChild(B.expression)),y.quasis.push(this.convertChild(B.literal))}),y}case Tn.TaggedTemplateExpression:return this.createNode(e,{type:Ui.TaggedTemplateExpression,quasi:this.convertChild(e.template),tag:this.convertChild(e.tag),typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)});case Tn.TemplateHead:case Tn.TemplateMiddle:case Tn.TemplateTail:{let y=e.kind===Tn.TemplateTail;return this.createNode(e,{type:Ui.TemplateElement,tail:y,value:{cooked:e.text,raw:this.ast.text.slice(e.getStart(this.ast)+1,e.end-(y?1:2))}})}case Tn.SpreadAssignment:case Tn.SpreadElement:return this.allowPattern?this.createNode(e,{type:Ui.RestElement,argument:this.convertPattern(e.expression),decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):this.createNode(e,{type:Ui.SpreadElement,argument:this.convertChild(e.expression)});case Tn.Parameter:{let y,B;return e.dotDotDotToken?y=B=this.createNode(e,{type:Ui.RestElement,argument:this.convertChild(e.name),decorators:[],optional:!1,typeAnnotation:void 0,value:void 0}):e.initializer?(y=this.convertChild(e.name),B=this.createNode(e,{type:Ui.AssignmentPattern,decorators:[],left:y,optional:!1,right:this.convertChild(e.initializer),typeAnnotation:void 0}),tK(e)&&(B.range[0]=y.range[0],B.loc=ffe(B.range,this.ast))):y=B=this.convertChild(e.name,t),e.type&&(y.typeAnnotation=this.convertTypeAnnotation(e.type,e),this.fixParentLocation(y,y.typeAnnotation.range)),e.questionToken&&(e.questionToken.end>y.range[1]&&(y.range[1]=e.questionToken.end,y.loc.end=VCt(y.range[1],this.ast)),y.optional=!0),tK(e)?this.createNode(e,{type:Ui.TSParameterProperty,accessibility:Afe(e),decorators:[],override:lC(Tn.OverrideKeyword,e),parameter:B,readonly:lC(Tn.ReadonlyKeyword,e),static:lC(Tn.StaticKeyword,e)}):B}case Tn.ClassDeclaration:!e.name&&(!lC(vp.ExportKeyword,e)||!lC(vp.DefaultKeyword,e))&&qu(this,Fu,WT).call(this,e,"A class declaration without the 'default' modifier must have a name.");case Tn.ClassExpression:{let y=e.heritageClauses??[],B=e.kind===Tn.ClassDeclaration?Ui.ClassDeclaration:Ui.ClassExpression,v,k;for(let O of y){let{token:X,types:U}=O;U.length===0&&qu(this,Fu,WT).call(this,O,`'${cy(X)}' list cannot be empty.`),X===Tn.ExtendsKeyword?(v&&qu(this,Fu,WT).call(this,O,"'extends' clause already seen."),k&&qu(this,Fu,WT).call(this,O,"'extends' clause must precede 'implements' clause."),U.length>1&&qu(this,Fu,WT).call(this,U[1],"Classes can only extend a single class."),v??(v=O)):X===Tn.ImplementsKeyword&&(k&&qu(this,Fu,WT).call(this,O,"'implements' clause already seen."),k??(k=O))}let T=this.createNode(e,{type:B,abstract:lC(Tn.AbstractKeyword,e),body:this.createNode(e,{type:Ui.ClassBody,range:[e.members.pos-1,e.end],body:e.members.filter(NAa).map(O=>this.convertChild(O))}),declare:lC(Tn.DeclareKeyword,e),decorators:((o=pSe(e))==null?void 0:o.map(O=>this.convertChild(O)))??[],id:this.convertChild(e.name),implements:k?.types.map(O=>this.convertChild(O))??[],superClass:v!=null&&v.types[0]?this.convertChild(v.types[0].expression):null,superTypeArguments:void 0,typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return(g=v?.types[0])!=null&&g.typeArguments&&(T.superTypeArguments=this.convertTypeArgumentsToTypeParameterInstantiation(v.types[0].typeArguments,v.types[0])),this.fixExports(e,T)}case Tn.ModuleBlock:return this.createNode(e,{type:Ui.TSModuleBlock,body:this.convertBodyExpressions(e.statements,e)});case Tn.ImportDeclaration:{this.assertModuleSpecifier(e,!1);let y=this.createNode(e,qu(this,Fu,fSe).call(this,{type:Ui.ImportDeclaration,attributes:this.convertImportAttributes(e.attributes??e.assertClause),importKind:"value",source:this.convertChild(e.moduleSpecifier),specifiers:[]},"assertions","attributes",!0));if(e.importClause&&(e.importClause.isTypeOnly&&(y.importKind="type"),e.importClause.name&&y.specifiers.push(this.convertChild(e.importClause)),e.importClause.namedBindings))switch(e.importClause.namedBindings.kind){case Tn.NamespaceImport:y.specifiers.push(this.convertChild(e.importClause.namedBindings));break;case Tn.NamedImports:y.specifiers.push(...e.importClause.namedBindings.elements.map(B=>this.convertChild(B)));break}return y}case Tn.NamespaceImport:return this.createNode(e,{type:Ui.ImportNamespaceSpecifier,local:this.convertChild(e.name)});case Tn.ImportSpecifier:return this.createNode(e,{type:Ui.ImportSpecifier,imported:this.convertChild(e.propertyName??e.name),importKind:e.isTypeOnly?"type":"value",local:this.convertChild(e.name)});case Tn.ImportClause:{let y=this.convertChild(e.name);return this.createNode(e,{type:Ui.ImportDefaultSpecifier,range:y.range,local:y})}case Tn.ExportDeclaration:return((p=e.exportClause)==null?void 0:p.kind)===Tn.NamedExports?(this.assertModuleSpecifier(e,!0),this.createNode(e,qu(this,Fu,fSe).call(this,{type:Ui.ExportNamedDeclaration,attributes:this.convertImportAttributes(e.attributes??e.assertClause),declaration:null,exportKind:e.isTypeOnly?"type":"value",source:this.convertChild(e.moduleSpecifier),specifiers:e.exportClause.elements.map(y=>this.convertChild(y,e))},"assertions","attributes",!0))):(this.assertModuleSpecifier(e,!1),this.createNode(e,qu(this,Fu,fSe).call(this,{type:Ui.ExportAllDeclaration,attributes:this.convertImportAttributes(e.attributes??e.assertClause),exported:((f=e.exportClause)==null?void 0:f.kind)===Tn.NamespaceExport?this.convertChild(e.exportClause.name):null,exportKind:e.isTypeOnly?"type":"value",source:this.convertChild(e.moduleSpecifier)},"assertions","attributes",!0)));case Tn.ExportSpecifier:{let y=e.propertyName??e.name;return y.kind===Tn.StringLiteral&&t.kind===Tn.ExportDeclaration&&((m=t.moduleSpecifier)==null?void 0:m.kind)!==Tn.StringLiteral&&qu(this,Fu,jp).call(this,y,"A string literal cannot be used as a local exported binding without `from`."),this.createNode(e,{type:Ui.ExportSpecifier,exported:this.convertChild(e.name),exportKind:e.isTypeOnly?"type":"value",local:this.convertChild(y)})}case Tn.ExportAssignment:return e.isExportEquals?this.createNode(e,{type:Ui.TSExportAssignment,expression:this.convertChild(e.expression)}):this.createNode(e,{type:Ui.ExportDefaultDeclaration,declaration:this.convertChild(e.expression),exportKind:"value"});case Tn.PrefixUnaryExpression:case Tn.PostfixUnaryExpression:{let y=Lse(e.operator);return y==="++"||y==="--"?(wdr(e.operand)||qu(this,Fu,WT).call(this,e.operand,"Invalid left-hand side expression in unary operation"),this.createNode(e,{type:Ui.UpdateExpression,argument:this.convertChild(e.operand),operator:y,prefix:e.kind===Tn.PrefixUnaryExpression})):this.createNode(e,{type:Ui.UnaryExpression,argument:this.convertChild(e.operand),operator:y,prefix:e.kind===Tn.PrefixUnaryExpression})}case Tn.DeleteExpression:return this.createNode(e,{type:Ui.UnaryExpression,argument:this.convertChild(e.expression),operator:"delete",prefix:!0});case Tn.VoidExpression:return this.createNode(e,{type:Ui.UnaryExpression,argument:this.convertChild(e.expression),operator:"void",prefix:!0});case Tn.TypeOfExpression:return this.createNode(e,{type:Ui.UnaryExpression,argument:this.convertChild(e.expression),operator:"typeof",prefix:!0});case Tn.TypeOperator:return this.createNode(e,{type:Ui.TSTypeOperator,operator:Lse(e.operator),typeAnnotation:this.convertChild(e.type)});case Tn.BinaryExpression:{if(DAa(e.operatorToken)){let B=this.createNode(e,{type:Ui.SequenceExpression,expressions:[]}),v=this.convertChild(e.left);return v.type===Ui.SequenceExpression&&e.left.kind!==Tn.ParenthesizedExpression?B.expressions.push(...v.expressions):B.expressions.push(v),B.expressions.push(this.convertChild(e.right)),B}let y=GAa(e.operatorToken);return this.allowPattern&&y.type===Ui.AssignmentExpression?this.createNode(e,{type:Ui.AssignmentPattern,decorators:[],left:this.convertPattern(e.left,e),optional:!1,right:this.convertChild(e.right),typeAnnotation:void 0}):this.createNode(e,{...y,left:this.converter(e.left,e,y.type===Ui.AssignmentExpression),right:this.convertChild(e.right)})}case Tn.PropertyAccessExpression:{let y=this.convertChild(e.expression),B=this.convertChild(e.name),v=this.createNode(e,{type:Ui.MemberExpression,computed:!1,object:y,optional:e.questionDotToken!=null,property:B});return this.convertChainExpression(v,e)}case Tn.ElementAccessExpression:{let y=this.convertChild(e.expression),B=this.convertChild(e.argumentExpression),v=this.createNode(e,{type:Ui.MemberExpression,computed:!0,object:y,optional:e.questionDotToken!=null,property:B});return this.convertChainExpression(v,e)}case Tn.CallExpression:{if(e.expression.kind===Tn.ImportKeyword)return e.arguments.length!==1&&e.arguments.length!==2&&qu(this,Fu,WT).call(this,e.arguments[2]??e,"Dynamic import requires exactly one or two arguments."),this.createNode(e,qu(this,Fu,fSe).call(this,{type:Ui.ImportExpression,options:e.arguments[1]?this.convertChild(e.arguments[1]):null,source:this.convertChild(e.arguments[0])},"attributes","options",!0));let y=this.convertChild(e.expression),B=e.arguments.map(T=>this.convertChild(T)),v=e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e),k=this.createNode(e,{type:Ui.CallExpression,arguments:B,callee:y,optional:e.questionDotToken!=null,typeArguments:v});return this.convertChainExpression(k,e)}case Tn.NewExpression:{let y=e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e);return this.createNode(e,{type:Ui.NewExpression,arguments:e.arguments?e.arguments.map(B=>this.convertChild(B)):[],callee:this.convertChild(e.expression),typeArguments:y})}case Tn.ConditionalExpression:return this.createNode(e,{type:Ui.ConditionalExpression,alternate:this.convertChild(e.whenFalse),consequent:this.convertChild(e.whenTrue),test:this.convertChild(e.condition)});case Tn.MetaProperty:return this.createNode(e,{type:Ui.MetaProperty,meta:this.createNode(e.getFirstToken(),{type:Ui.Identifier,decorators:[],name:Lse(e.keywordToken),optional:!1,typeAnnotation:void 0}),property:this.convertChild(e.name)});case Tn.Decorator:return this.createNode(e,{type:Ui.Decorator,expression:this.convertChild(e.expression)});case Tn.StringLiteral:return this.createNode(e,{type:Ui.Literal,raw:e.getText(),value:t.kind===Tn.JsxAttribute?Qii(e.text):e.text});case Tn.NumericLiteral:return this.createNode(e,{type:Ui.Literal,raw:e.getText(),value:Number(e.text)});case Tn.BigIntLiteral:{let y=aMe(e,this.ast),B=this.ast.text.slice(y[0],y[1]),v=ISe(!1,B.slice(0,-1),"_",""),k=typeof BigInt<"u"?BigInt(v):null;return this.createNode(e,{type:Ui.Literal,range:y,bigint:k==null?v:String(k),raw:B,value:k})}case Tn.RegularExpressionLiteral:{let y=e.text.slice(1,e.text.lastIndexOf("/")),B=e.text.slice(e.text.lastIndexOf("/")+1),v=null;try{v=new RegExp(y,B)}catch{}return this.createNode(e,{type:Ui.Literal,raw:e.text,regex:{flags:B,pattern:y},value:v})}case Tn.TrueKeyword:return this.createNode(e,{type:Ui.Literal,raw:"true",value:!0});case Tn.FalseKeyword:return this.createNode(e,{type:Ui.Literal,raw:"false",value:!1});case Tn.NullKeyword:return this.createNode(e,{type:Ui.Literal,raw:"null",value:null});case Tn.EmptyStatement:return this.createNode(e,{type:Ui.EmptyStatement});case Tn.DebuggerStatement:return this.createNode(e,{type:Ui.DebuggerStatement});case Tn.JsxElement:return this.createNode(e,{type:Ui.JSXElement,children:e.children.map(y=>this.convertChild(y)),closingElement:this.convertChild(e.closingElement),openingElement:this.convertChild(e.openingElement)});case Tn.JsxFragment:return this.createNode(e,{type:Ui.JSXFragment,children:e.children.map(y=>this.convertChild(y)),closingFragment:this.convertChild(e.closingFragment),openingFragment:this.convertChild(e.openingFragment)});case Tn.JsxSelfClosingElement:return this.createNode(e,{type:Ui.JSXElement,children:[],closingElement:null,openingElement:this.createNode(e,{type:Ui.JSXOpeningElement,range:aMe(e,this.ast),attributes:e.attributes.properties.map(y=>this.convertChild(y)),name:this.convertJSXTagName(e.tagName,e),selfClosing:!0,typeArguments:e.typeArguments?this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e):void 0})});case Tn.JsxOpeningElement:return this.createNode(e,{type:Ui.JSXOpeningElement,attributes:e.attributes.properties.map(y=>this.convertChild(y)),name:this.convertJSXTagName(e.tagName,e),selfClosing:!1,typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)});case Tn.JsxClosingElement:return this.createNode(e,{type:Ui.JSXClosingElement,name:this.convertJSXTagName(e.tagName,e)});case Tn.JsxOpeningFragment:return this.createNode(e,{type:Ui.JSXOpeningFragment});case Tn.JsxClosingFragment:return this.createNode(e,{type:Ui.JSXClosingFragment});case Tn.JsxExpression:{let y=e.expression?this.convertChild(e.expression):this.createNode(e,{type:Ui.JSXEmptyExpression,range:[e.getStart(this.ast)+1,e.getEnd()-1]});return e.dotDotDotToken?this.createNode(e,{type:Ui.JSXSpreadChild,expression:y}):this.createNode(e,{type:Ui.JSXExpressionContainer,expression:y})}case Tn.JsxAttribute:return this.createNode(e,{type:Ui.JSXAttribute,name:this.convertJSXNamespaceOrIdentifier(e.name),value:this.convertChild(e.initializer)});case Tn.JsxText:{let y=e.getFullStart(),B=e.getEnd(),v=this.ast.text.slice(y,B);return this.createNode(e,{type:Ui.JSXText,range:[y,B],raw:v,value:Qii(v)})}case Tn.JsxSpreadAttribute:return this.createNode(e,{type:Ui.JSXSpreadAttribute,argument:this.convertChild(e.expression)});case Tn.QualifiedName:return this.createNode(e,{type:Ui.TSQualifiedName,left:this.convertChild(e.left),right:this.convertChild(e.right)});case Tn.TypeReference:return this.createNode(e,{type:Ui.TSTypeReference,typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e),typeName:this.convertChild(e.typeName)});case Tn.TypeParameter:return this.createNode(e,{type:Ui.TSTypeParameter,const:lC(Tn.ConstKeyword,e),constraint:e.constraint&&this.convertChild(e.constraint),default:e.default?this.convertChild(e.default):void 0,in:lC(Tn.InKeyword,e),name:this.convertChild(e.name),out:lC(Tn.OutKeyword,e)});case Tn.ThisType:return this.createNode(e,{type:Ui.TSThisType});case Tn.AnyKeyword:case Tn.BigIntKeyword:case Tn.BooleanKeyword:case Tn.NeverKeyword:case Tn.NumberKeyword:case Tn.ObjectKeyword:case Tn.StringKeyword:case Tn.SymbolKeyword:case Tn.UnknownKeyword:case Tn.VoidKeyword:case Tn.UndefinedKeyword:case Tn.IntrinsicKeyword:return this.createNode(e,{type:Ui[`TS${Tn[e.kind]}`]});case Tn.NonNullExpression:{let y=this.createNode(e,{type:Ui.TSNonNullExpression,expression:this.convertChild(e.expression)});return this.convertChainExpression(y,e)}case Tn.TypeLiteral:return this.createNode(e,{type:Ui.TSTypeLiteral,members:e.members.map(y=>this.convertChild(y))});case Tn.ArrayType:return this.createNode(e,{type:Ui.TSArrayType,elementType:this.convertChild(e.elementType)});case Tn.IndexedAccessType:return this.createNode(e,{type:Ui.TSIndexedAccessType,indexType:this.convertChild(e.indexType),objectType:this.convertChild(e.objectType)});case Tn.ConditionalType:return this.createNode(e,{type:Ui.TSConditionalType,checkType:this.convertChild(e.checkType),extendsType:this.convertChild(e.extendsType),falseType:this.convertChild(e.falseType),trueType:this.convertChild(e.trueType)});case Tn.TypeQuery:return this.createNode(e,{type:Ui.TSTypeQuery,exprName:this.convertChild(e.exprName),typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)});case Tn.MappedType:return e.members&&e.members.length>0&&qu(this,Fu,WT).call(this,e.members[0],"A mapped type may not declare properties or methods."),this.createNode(e,qu(this,Fu,OAr).call(this,{type:Ui.TSMappedType,constraint:this.convertChild(e.typeParameter.constraint),key:this.convertChild(e.typeParameter.name),nameType:this.convertChild(e.nameType)??null,optional:e.questionToken&&(e.questionToken.kind===Tn.QuestionToken||Lse(e.questionToken.kind)),readonly:e.readonlyToken&&(e.readonlyToken.kind===Tn.ReadonlyKeyword||Lse(e.readonlyToken.kind)),typeAnnotation:e.type&&this.convertChild(e.type)},"typeParameter","'constraint' and 'key'",this.convertChild(e.typeParameter)));case Tn.ParenthesizedExpression:return this.convertChild(e.expression,t);case Tn.TypeAliasDeclaration:{let y=this.createNode(e,{type:Ui.TSTypeAliasDeclaration,declare:lC(Tn.DeclareKeyword,e),id:this.convertChild(e.name),typeAnnotation:this.convertChild(e.type),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return this.fixExports(e,y)}case Tn.MethodSignature:return this.convertMethodSignature(e);case Tn.PropertySignature:{let{initializer:y}=e;return y&&qu(this,Fu,jp).call(this,y,"A property signature cannot have an initializer."),this.createNode(e,{type:Ui.TSPropertySignature,accessibility:Afe(e),computed:lSe(e.name),key:this.convertChild(e.name),optional:Mii(e),readonly:lC(Tn.ReadonlyKeyword,e),static:lC(Tn.StaticKeyword,e),typeAnnotation:e.type&&this.convertTypeAnnotation(e.type,e)})}case Tn.IndexSignature:return this.createNode(e,{type:Ui.TSIndexSignature,accessibility:Afe(e),parameters:e.parameters.map(y=>this.convertChild(y)),readonly:lC(Tn.ReadonlyKeyword,e),static:lC(Tn.StaticKeyword,e),typeAnnotation:e.type&&this.convertTypeAnnotation(e.type,e)});case Tn.ConstructorType:return this.createNode(e,{type:Ui.TSConstructorType,abstract:lC(Tn.AbstractKeyword,e),params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});case Tn.FunctionType:{let{modifiers:y}=e;y&&qu(this,Fu,jp).call(this,y[0],"A function type cannot have modifiers.")}case Tn.ConstructSignature:case Tn.CallSignature:{let y=e.kind===Tn.ConstructSignature?Ui.TSConstructSignatureDeclaration:e.kind===Tn.CallSignature?Ui.TSCallSignatureDeclaration:Ui.TSFunctionType;return this.createNode(e,{type:y,params:this.convertParameters(e.parameters),returnType:e.type&&this.convertTypeAnnotation(e.type,e),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)})}case Tn.ExpressionWithTypeArguments:{let y=t.kind,B=y===Tn.InterfaceDeclaration?Ui.TSInterfaceHeritage:y===Tn.HeritageClause?Ui.TSClassImplements:Ui.TSInstantiationExpression;return this.createNode(e,{type:B,expression:this.convertChild(e.expression),typeArguments:e.typeArguments&&this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e)})}case Tn.InterfaceDeclaration:{let y=e.heritageClauses??[],B=[];for(let k of y){k.token!==Tn.ExtendsKeyword&&qu(this,Fu,jp).call(this,k,k.token===Tn.ImplementsKeyword?"Interface declaration cannot have 'implements' clause.":"Unexpected token.");for(let T of k.types)B.push(this.convertChild(T,e))}let v=this.createNode(e,{type:Ui.TSInterfaceDeclaration,body:this.createNode(e,{type:Ui.TSInterfaceBody,range:[e.members.pos-1,e.end],body:e.members.map(k=>this.convertChild(k))}),declare:lC(Tn.DeclareKeyword,e),extends:B,id:this.convertChild(e.name),typeParameters:e.typeParameters&&this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters)});return this.fixExports(e,v)}case Tn.TypePredicate:{let y=this.createNode(e,{type:Ui.TSTypePredicate,asserts:e.assertsModifier!=null,parameterName:this.convertChild(e.parameterName),typeAnnotation:null});return e.type&&(y.typeAnnotation=this.convertTypeAnnotation(e.type,e),y.typeAnnotation.loc=y.typeAnnotation.typeAnnotation.loc,y.typeAnnotation.range=y.typeAnnotation.typeAnnotation.range),y}case Tn.ImportType:{let y=aMe(e,this.ast);if(e.isTypeOf){let v=cSe(e.getFirstToken(),e,this.ast);y[0]=v.getStart(this.ast)}let B=this.createNode(e,{type:Ui.TSImportType,range:y,argument:this.convertChild(e.argument),attributes:this.convertImportAttributes(e.attributes),qualifier:this.convertChild(e.qualifier),typeArguments:e.typeArguments?this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e):null});return e.isTypeOf?this.createNode(e,{type:Ui.TSTypeQuery,exprName:B,typeArguments:void 0}):B}case Tn.EnumDeclaration:{let y=e.members.map(v=>this.convertChild(v)),B=this.createNode(e,qu(this,Fu,OAr).call(this,{type:Ui.TSEnumDeclaration,body:this.createNode(e,{type:Ui.TSEnumBody,range:[e.members.pos-1,e.end],members:y}),const:lC(Tn.ConstKeyword,e),declare:lC(Tn.DeclareKeyword,e),id:this.convertChild(e.name)},"members","'body.members'",e.members.map(v=>this.convertChild(v))));return this.fixExports(e,B)}case Tn.EnumMember:return this.createNode(e,{type:Ui.TSEnumMember,computed:e.name.kind===vp.ComputedPropertyName,id:this.convertChild(e.name),initializer:e.initializer&&this.convertChild(e.initializer)});case Tn.ModuleDeclaration:{let y=lC(Tn.DeclareKeyword,e),B=this.createNode(e,{type:Ui.TSModuleDeclaration,...(()=>{if(e.flags&e3.GlobalAugmentation){let k=this.convertChild(e.name),T=this.convertChild(e.body);return(T==null||T.type===Ui.TSModuleDeclaration)&&qu(this,Fu,WT).call(this,e.body??e,"Expected a valid module body"),k.type!==Ui.Identifier&&qu(this,Fu,WT).call(this,e.name,"global module augmentation must have an Identifier id"),{body:T,declare:!1,global:!1,id:k,kind:"global"}}if(!(e.flags&e3.Namespace)){let k=this.convertChild(e.body);return{kind:"module",...k!=null?{body:k}:{},declare:!1,global:!1,id:this.convertChild(e.name)}}e.body==null&&qu(this,Fu,WT).call(this,e,"Expected a module body"),e.name.kind!==vp.Identifier&&qu(this,Fu,WT).call(this,e.name,"`namespace`s must have an Identifier id");let v=this.createNode(e.name,{type:Ui.Identifier,range:[e.name.getStart(this.ast),e.name.getEnd()],decorators:[],name:e.name.text,optional:!1,typeAnnotation:void 0});for(;e.body&&vMe(e.body)&&e.body.name;){e=e.body,y||(y=lC(Tn.DeclareKeyword,e));let k=e.name,T=this.createNode(k,{type:Ui.Identifier,range:[k.getStart(this.ast),k.getEnd()],decorators:[],name:k.text,optional:!1,typeAnnotation:void 0});v=this.createNode(k,{type:Ui.TSQualifiedName,range:[v.range[0],T.range[1]],left:v,right:T})}return{body:this.convertChild(e.body),declare:!1,global:!1,id:v,kind:"namespace"}})()});return B.declare=y,e.flags&e3.GlobalAugmentation&&(B.global=!0),this.fixExports(e,B)}case Tn.ParenthesizedType:return this.convertChild(e.type);case Tn.UnionType:return this.createNode(e,{type:Ui.TSUnionType,types:e.types.map(y=>this.convertChild(y))});case Tn.IntersectionType:return this.createNode(e,{type:Ui.TSIntersectionType,types:e.types.map(y=>this.convertChild(y))});case Tn.AsExpression:return this.createNode(e,{type:Ui.TSAsExpression,expression:this.convertChild(e.expression),typeAnnotation:this.convertChild(e.type)});case Tn.InferType:return this.createNode(e,{type:Ui.TSInferType,typeParameter:this.convertChild(e.typeParameter)});case Tn.LiteralType:return e.literal.kind===Tn.NullKeyword?this.createNode(e.literal,{type:Ui.TSNullKeyword}):this.createNode(e,{type:Ui.TSLiteralType,literal:this.convertChild(e.literal)});case Tn.TypeAssertionExpression:return this.createNode(e,{type:Ui.TSTypeAssertion,expression:this.convertChild(e.expression),typeAnnotation:this.convertChild(e.type)});case Tn.ImportEqualsDeclaration:return this.fixExports(e,this.createNode(e,{type:Ui.TSImportEqualsDeclaration,id:this.convertChild(e.name),importKind:e.isTypeOnly?"type":"value",moduleReference:this.convertChild(e.moduleReference)}));case Tn.ExternalModuleReference:return e.expression.kind!==Tn.StringLiteral&&qu(this,Fu,jp).call(this,e.expression,"String literal expected."),this.createNode(e,{type:Ui.TSExternalModuleReference,expression:this.convertChild(e.expression)});case Tn.NamespaceExportDeclaration:return this.createNode(e,{type:Ui.TSNamespaceExportDeclaration,id:this.convertChild(e.name)});case Tn.AbstractKeyword:return this.createNode(e,{type:Ui.TSAbstractKeyword});case Tn.TupleType:{let y=e.elements.map(B=>this.convertChild(B));return this.createNode(e,{type:Ui.TSTupleType,elementTypes:y})}case Tn.NamedTupleMember:{let y=this.createNode(e,{type:Ui.TSNamedTupleMember,elementType:this.convertChild(e.type,e),label:this.convertChild(e.name,e),optional:e.questionToken!=null});return e.dotDotDotToken?(y.range[0]=y.label.range[0],y.loc.start=y.label.loc.start,this.createNode(e,{type:Ui.TSRestType,typeAnnotation:y})):y}case Tn.OptionalType:return this.createNode(e,{type:Ui.TSOptionalType,typeAnnotation:this.convertChild(e.type)});case Tn.RestType:return this.createNode(e,{type:Ui.TSRestType,typeAnnotation:this.convertChild(e.type)});case Tn.TemplateLiteralType:{let y=this.createNode(e,{type:Ui.TSTemplateLiteralType,quasis:[this.convertChild(e.head)],types:[]});return e.templateSpans.forEach(B=>{y.types.push(this.convertChild(B.type)),y.quasis.push(this.convertChild(B.literal))}),y}case Tn.ClassStaticBlockDeclaration:return this.createNode(e,{type:Ui.StaticBlock,body:this.convertBodyExpressions(e.body.statements,e)});case Tn.AssertEntry:case Tn.ImportAttribute:return this.createNode(e,{type:Ui.ImportAttribute,key:this.convertChild(e.name),value:this.convertChild(e.value)});case Tn.SatisfiesExpression:return this.createNode(e,{type:Ui.TSSatisfiesExpression,expression:this.convertChild(e.expression),typeAnnotation:this.convertChild(e.type)});default:return this.deeplyCopy(e)}}createNode(e,t){let r=t;return r.range??(r.range=aMe(e,this.ast)),r.loc??(r.loc=ffe(r.range,this.ast)),r&&this.options.shouldPreserveNodeMaps&&this.esTreeNodeToTSNodeMap.set(r,e),r}convertProgram(){return this.converter(this.ast)}deeplyCopy(e){e.kind===vp.JSDocFunctionType&&qu(this,Fu,jp).call(this,e,"JSDoc types can only be used inside documentation comments.");let t=`TS${Tn[e.kind]}`;if(this.options.errorOnUnknownASTType&&!Ui[t])throw new Error(`Unknown AST_NODE_TYPE: "${t}"`);let r=this.createNode(e,{type:t});"type"in e&&(r.typeAnnotation=e.type&&"kind"in e.type&&vca(e.type)?this.convertTypeAnnotation(e.type,e):null),"typeArguments"in e&&(r.typeArguments=e.typeArguments&&"pos"in e.typeArguments?this.convertTypeArgumentsToTypeParameterInstantiation(e.typeArguments,e):null),"typeParameters"in e&&(r.typeParameters=e.typeParameters&&"pos"in e.typeParameters?this.convertTSTypeParametersToTypeParametersDeclaration(e.typeParameters):null);let s=pSe(e);s!=null&&s.length&&(r.decorators=s.map(o=>this.convertChild(o)));let a=new Set(["_children","decorators","end","flags","heritageClauses","illegalDecorators","jsDoc","kind","locals","localSymbol","modifierFlagsCache","modifiers","nextContainer","parent","pos","symbol","transformFlags","type","typeArguments","typeParameters"]);return Object.entries(e).filter(([o])=>!a.has(o)).forEach(([o,g])=>{Array.isArray(g)?r[o]=g.map(p=>this.convertChild(p)):g&&typeof g=="object"&&g.kind?r[o]=this.convertChild(g):r[o]=g}),r}fixExports(e,t){let r=vMe(e)&&e.flags&e3.Namespace?tda(e):tK(e);if(r?.[0].kind===Tn.ExportKeyword){this.registerTSNodeInNodeMap(e,t);let s=r[0],a=r[1],o=a?.kind===Tn.DefaultKeyword,g=o?cSe(a,this.ast,this.ast):cSe(s,this.ast,this.ast);if(t.range[0]=g.getStart(this.ast),t.loc=ffe(t.range,this.ast),o)return this.createNode(e,{type:Ui.ExportDefaultDeclaration,range:[s.getStart(this.ast),t.range[1]],declaration:t,exportKind:"value"});let p=t.type===Ui.TSInterfaceDeclaration||t.type===Ui.TSTypeAliasDeclaration,f="declare"in t&&t.declare;return this.createNode(e,qu(this,Fu,fSe).call(this,{type:Ui.ExportNamedDeclaration,range:[s.getStart(this.ast),t.range[1]],attributes:[],declaration:t,exportKind:p||f?"type":"value",source:null,specifiers:[]},"assertions","attributes",!0))}return t}getASTMaps(){return{esTreeNodeToTSNodeMap:this.esTreeNodeToTSNodeMap,tsNodeToESTreeNodeMap:this.tsNodeToESTreeNodeMap}}registerTSNodeInNodeMap(e,t){t&&this.options.shouldPreserveNodeMaps&&!this.tsNodeToESTreeNodeMap.has(e)&&this.tsNodeToESTreeNodeMap.set(e,t)}};Fu=new WeakSet,PAr=function(e,t){let r=t===vp.ForInStatement?"for...in":"for...of";if(oga(e)){e.declarations.length!==1&&qu(this,Fu,jp).call(this,e,`Only a single variable declaration is allowed in a '${r}' statement.`);let s=e.declarations[0];s.initializer?qu(this,Fu,jp).call(this,s,`The variable declaration of a '${r}' statement cannot have an initializer.`):s.type&&qu(this,Fu,jp).call(this,s,`The variable declaration of a '${r}' statement cannot have a type annotation.`),t===vp.ForInStatement&&e.flags&e3.Using&&qu(this,Fu,jp).call(this,e,"The left-hand side of a 'for...in' statement cannot be a 'using' declaration.")}else!wdr(e)&&e.kind!==vp.ObjectLiteralExpression&&e.kind!==vp.ArrayLiteralExpression&&qu(this,Fu,jp).call(this,e,`The left-hand side of a '${r}' statement must be a variable or a property access.`)},tai=function(e){if(!this.options.allowInvalidAST){HAa(e)&&qu(this,Fu,jp).call(this,e.illegalDecorators[0],"Decorators are not valid here.");for(let t of pSe(e,!0)??[])eda(e)||(GAr(e)&&!Hii(e.body)?qu(this,Fu,jp).call(this,t,"A decorator can only decorate a method implementation, not an overload."):qu(this,Fu,jp).call(this,t,"Decorators are not valid here."));for(let t of tK(e,!0)??[]){if(t.kind!==Tn.ReadonlyKeyword&&((e.kind===Tn.PropertySignature||e.kind===Tn.MethodSignature)&&qu(this,Fu,jp).call(this,t,`'${cy(t.kind)}' modifier cannot appear on a type member`),e.kind===Tn.IndexSignature&&(t.kind!==Tn.StaticKeyword||!_Se(e.parent))&&qu(this,Fu,jp).call(this,t,`'${cy(t.kind)}' modifier cannot appear on an index signature`)),t.kind!==Tn.InKeyword&&t.kind!==Tn.OutKeyword&&t.kind!==Tn.ConstKeyword&&e.kind===Tn.TypeParameter&&qu(this,Fu,jp).call(this,t,`'${cy(t.kind)}' modifier cannot appear on a type parameter`),(t.kind===Tn.InKeyword||t.kind===Tn.OutKeyword)&&(e.kind!==Tn.TypeParameter||!(ydr(e.parent)||_Se(e.parent)||Soi(e.parent)))&&qu(this,Fu,jp).call(this,t,`'${cy(t.kind)}' modifier can only appear on a type parameter of a class, interface or type alias`),t.kind===Tn.ReadonlyKeyword&&e.kind!==Tn.PropertyDeclaration&&e.kind!==Tn.PropertySignature&&e.kind!==Tn.IndexSignature&&e.kind!==Tn.Parameter&&qu(this,Fu,jp).call(this,t,"'readonly' modifier can only appear on a property declaration or index signature."),t.kind===Tn.DeclareKeyword&&_Se(e.parent)&&!JCt(e)&&qu(this,Fu,jp).call(this,t,`'${cy(t.kind)}' modifier cannot appear on class elements of this kind.`),t.kind===Tn.DeclareKeyword&&emt(e)){let r=WAr(e.declarationList);(r==="using"||r==="await using")&&qu(this,Fu,jp).call(this,t,`'declare' modifier cannot appear on a '${r}' declaration.`)}if(t.kind===Tn.AbstractKeyword&&e.kind!==Tn.ClassDeclaration&&e.kind!==Tn.ConstructorType&&e.kind!==Tn.MethodDeclaration&&e.kind!==Tn.PropertyDeclaration&&e.kind!==Tn.GetAccessor&&e.kind!==Tn.SetAccessor&&qu(this,Fu,jp).call(this,t,`'${cy(t.kind)}' modifier can only appear on a class, method, or property declaration.`),(t.kind===Tn.StaticKeyword||t.kind===Tn.PublicKeyword||t.kind===Tn.ProtectedKeyword||t.kind===Tn.PrivateKeyword)&&(e.parent.kind===Tn.ModuleBlock||e.parent.kind===Tn.SourceFile)&&qu(this,Fu,jp).call(this,t,`'${cy(t.kind)}' modifier cannot appear on a module or namespace element.`),t.kind===Tn.AccessorKeyword&&e.kind!==Tn.PropertyDeclaration&&qu(this,Fu,jp).call(this,t,"'accessor' modifier can only appear on a property declaration."),t.kind===Tn.AsyncKeyword&&e.kind!==Tn.MethodDeclaration&&e.kind!==Tn.FunctionDeclaration&&e.kind!==Tn.FunctionExpression&&e.kind!==Tn.ArrowFunction&&qu(this,Fu,jp).call(this,t,"'async' modifier cannot be used here."),e.kind===Tn.Parameter&&(t.kind===Tn.StaticKeyword||t.kind===Tn.ExportKeyword||t.kind===Tn.DeclareKeyword||t.kind===Tn.AsyncKeyword)&&qu(this,Fu,jp).call(this,t,`'${cy(t.kind)}' modifier cannot appear on a parameter.`),t.kind===Tn.PublicKeyword||t.kind===Tn.ProtectedKeyword||t.kind===Tn.PrivateKeyword)for(let r of tK(e)??[])r!==t&&(r.kind===Tn.PublicKeyword||r.kind===Tn.ProtectedKeyword||r.kind===Tn.PrivateKeyword)&&qu(this,Fu,jp).call(this,r,"Accessibility modifier already seen.");if(e.kind===Tn.Parameter&&(t.kind===Tn.PublicKeyword||t.kind===Tn.PrivateKeyword||t.kind===Tn.ProtectedKeyword||t.kind===Tn.ReadonlyKeyword||t.kind===Tn.OverrideKeyword)){let r=jAa(e);r.kind===Tn.Constructor&&Hii(r.body)||qu(this,Fu,jp).call(this,t,"A parameter property is only allowed in a constructor implementation.")}}}},jp=function(e,t){let r,s;throw typeof e=="number"?r=s=e:(r=e.getStart(this.ast),s=e.getEnd()),$oi(t,this.ast,r,s)},WT=function(e,t){this.options.allowInvalidAST||qu(this,Fu,jp).call(this,e,t)},fSe=function(e,t,r,s=!1){let a=s;return Object.defineProperty(e,t,{configurable:!0,get:this.options.suppressDeprecatedPropertyWarnings?()=>e[r]:()=>(a||((void 0)(`The '${t}' property is deprecated on ${e.type} nodes. Use '${r}' instead. See https://typescript-eslint.io/troubleshooting/faqs/general#the-key-property-is-deprecated-on-type-nodes-use-key-instead-warnings.`,"DeprecationWarning"),a=!0),e[r]),set(o){Object.defineProperty(e,t,{enumerable:!0,value:o,writable:!0})}}),e},OAr=function(e,t,r,s){let a=!1;return Object.defineProperty(e,t,{configurable:!0,get:this.options.suppressDeprecatedPropertyWarnings?()=>s:()=>(a||((void 0)(`The '${t}' property is deprecated on ${e.type} nodes. Use ${r} instead. See https://typescript-eslint.io/troubleshooting/faqs/general#the-key-property-is-deprecated-on-type-nodes-use-key-instead-warnings.`,"DeprecationWarning"),a=!0),s),set(o){Object.defineProperty(e,t,{enumerable:!0,value:o,writable:!0})}}),e};function ida(e,t,r=e.getSourceFile()){let s=[];for(;;){if(Msi(e.kind))t(e);else{let a=e.getChildren(r);if(a.length===1){e=a[0];continue}for(let o=a.length-1;o>=0;--o)s.push(a[o])}if(s.length===0)break;e=s.pop()}}function sda(e,t,r=e.getSourceFile()){let s=r.text,a=r.languageVariant!==Isi.JSX;return ida(e,g=>{if(g.pos!==g.end&&(g.kind!==vp.JsxText&&Faa(s,g.pos===0?(Gsi(s)??"").length:g.pos,o),a||oda(g)))return Zaa(s,g.end,o)},r);function o(g,p,f){t(s,{end:p,kind:f,pos:g})}}function oda(e){switch(e.kind){case vp.CloseBraceToken:return e.parent.kind!==vp.JsxExpression||!_Ar(e.parent.parent);case vp.GreaterThanToken:switch(e.parent.kind){case vp.JsxClosingElement:case vp.JsxClosingFragment:return!_Ar(e.parent.parent.parent);case vp.JsxOpeningElement:return e.end!==e.parent.end;case vp.JsxOpeningFragment:return!1;case vp.JsxSelfClosingElement:return e.end!==e.parent.end||!_Ar(e.parent.parent)}}return!0}function _Ar(e){return e.kind===vp.JsxElement||e.kind===vp.JsxFragment}var[m_l,h_l]=Roa.split(".").map(e=>Number.parseInt(e,10)),__l=Pk.Intrinsic??Pk.Any|Pk.Unknown|Pk.String|Pk.Number|Pk.BigInt|Pk.Boolean|Pk.BooleanLiteral|Pk.ESSymbol|Pk.Void|Pk.Undefined|Pk.Null|Pk.Never|Pk.NonPrimitive;function ada(e,t){let r=[];return sda(e,(s,a)=>{let o=a.kind===vp.SingleLineCommentTrivia?hR.Line:hR.Block,g=[a.pos,a.end],p=ffe(g,e),f=g[0]+2,m=a.kind===vp.SingleLineCommentTrivia?g[1]-f:g[1]-f-2;r.push({type:o,loc:p,range:g,value:t.slice(f,f+m)})},e),r}var cda=()=>{};function lda(e,t,r){let{parseDiagnostics:s}=e;if(s.length)throw rda(s[0]);let a=new nda(e,{allowInvalidAST:t.allowInvalidAST,errorOnUnknownASTType:t.errorOnUnknownASTType,shouldPreserveNodeMaps:r,suppressDeprecatedPropertyWarnings:t.suppressDeprecatedPropertyWarnings}),o=a.convertProgram();return(!t.range||!t.loc)&&cda(o,{enter:g=>{t.range||delete g.range,t.loc||delete g.loc}}),t.tokens&&(o.tokens=QAa(e)),t.comment&&(o.comments=ada(e,t.codeFullText)),{astMaps:a.getASTMaps(),estree:o}}function rai(e){if(typeof e!="object"||e==null)return!1;let t=e;return t.kind===vp.SourceFile&&typeof t.getFullText=="function"}var uda=function(e){return e&&e.__esModule?e:{default:e}},gda=uda({extname:e=>"."+e.split(".").pop()});function Ada(e,t){switch(gda.default.extname(e).toLowerCase()){case vQ.Cjs:case vQ.Js:case vQ.Mjs:return Yz.JS;case vQ.Cts:case vQ.Mts:case vQ.Ts:return Yz.TS;case vQ.Json:return Yz.JSON;case vQ.Jsx:return Yz.JSX;case vQ.Tsx:return Yz.TSX;default:return t?Yz.TSX:Yz.TS}}var dda={default:XAr},pda=(0,dda.default)("typescript-eslint:typescript-estree:create-program:createSourceFile");function fda(e){return pda("Getting AST without type information in %s mode for: %s",e.jsx?"TSX":"TS",e.filePath),rai(e.code)?e.code:jga(e.filePath,e.codeFullText,{jsDocParsingMode:e.jsDocParsingMode,languageVersion:qAr.Latest,setExternalModuleIndicator:e.setExternalModuleIndicator},!0,Ada(e.filePath,e.jsx))}var Ida=()=>{},Cda=e=>e,mda=class{},hda=()=>!1,_da=()=>{},yda=function(e){return e&&e.__esModule?e:{default:e}},QAr={default:XAr},bda=yda({extname:e=>"."+e.split(".").pop()}),Eda=(0,QAr.default)("typescript-eslint:typescript-estree:parseSettings:createParseSettings"),Yii,Xii=null,Jii,Uii,Kii,jii,cMe={ParseAll:(Jii=AMe)==null?void 0:Jii.ParseAll,ParseForTypeErrors:(Uii=AMe)==null?void 0:Uii.ParseForTypeErrors,ParseForTypeInfo:(Kii=AMe)==null?void 0:Kii.ParseForTypeInfo,ParseNone:(jii=AMe)==null?void 0:jii.ParseNone};function Bda(e,t={}){var r;let s=vda(e),a=hda(t),o=typeof t.tsconfigRootDir=="string"?t.tsconfigRootDir:"/prettier-security-dirname-placeholder",g=typeof t.loggerFn=="function",p=Cda(typeof t.filePath=="string"&&t.filePath!==""?t.filePath:Sda(t.jsx),o),f=bda.default.extname(p).toLowerCase(),m=(()=>{switch(t.jsDocParsingMode){case"all":return cMe.ParseAll;case"none":return cMe.ParseNone;case"type-info":return cMe.ParseForTypeInfo;default:return cMe.ParseAll}})(),y={loc:t.loc===!0,range:t.range===!0,allowInvalidAST:t.allowInvalidAST===!0,code:e,codeFullText:s,comment:t.comment===!0,comments:[],debugLevel:t.debugLevel===!0?new Set(["typescript-eslint"]):Array.isArray(t.debugLevel)?new Set(t.debugLevel):new Set,errorOnTypeScriptSyntacticAndSemanticIssues:!1,errorOnUnknownASTType:t.errorOnUnknownASTType===!0,extraFileExtensions:Array.isArray(t.extraFileExtensions)&&t.extraFileExtensions.every(B=>typeof B=="string")?t.extraFileExtensions:[],filePath:p,jsDocParsingMode:m,jsx:t.jsx===!0,log:typeof t.loggerFn=="function"?t.loggerFn:t.loggerFn===!1?()=>{}:console.log,preserveNodeMaps:t.preserveNodeMaps!==!1,programs:Array.isArray(t.programs)?t.programs:null,projects:new Map,projectService:t.projectService||t.project&&t.projectService!==!1&&(void 0).env.TYPESCRIPT_ESLINT_PROJECT_SERVICE==="true"?Xii??(Xii=Ida(t.projectService,m,o)):void 0,setExternalModuleIndicator:t.sourceType==="module"||t.sourceType==null&&f===vQ.Mjs||t.sourceType==null&&f===vQ.Mts?B=>{B.externalModuleIndicator=!0}:void 0,singleRun:a,suppressDeprecatedPropertyWarnings:t.suppressDeprecatedPropertyWarnings??!0,tokens:t.tokens===!0?[]:null,tsconfigMatchCache:Yii??(Yii=new mda(a?"Infinity":((r=t.cacheLifetime)==null?void 0:r.glob)??void 0)),tsconfigRootDir:o};if(y.debugLevel.size>0){let B=[];y.debugLevel.has("typescript-eslint")&&B.push("typescript-eslint:*"),(y.debugLevel.has("eslint")||QAr.default.enabled("eslint:*,-eslint:code-path"))&&B.push("eslint:*,-eslint:code-path"),QAr.default.enable(B.join(","))}if(Array.isArray(t.programs)){if(!t.programs.length)throw new Error("You have set parserOptions.programs to an empty array. This will cause all files to not be found in existing programs. Either provide one or more existing TypeScript Program instances in the array, or remove the parserOptions.programs setting.");Eda("parserOptions.programs was provided, so parserOptions.project will be ignored.")}return!y.programs&&!y.projectService&&(y.projects=new Map),t.jsDocParsingMode==null&&y.projects.size===0&&y.programs==null&&y.projectService==null&&(y.jsDocParsingMode=cMe.ParseNone),_da(y,g),y}function vda(e){return rai(e)?e.getFullText(e):typeof e=="string"?e:String(e)}function Sda(e){return e?"estree.tsx":"estree.ts"}var wda={default:XAr},y_l=(0,wda.default)("typescript-eslint:typescript-estree:parser");function Tda(e,t){let{ast:r}=Nda(e,t,!1);return r}function Nda(e,t,r){let s=Bda(e,t);if(t!=null&&t.errorOnTypeScriptSyntacticAndSemanticIssues)throw new Error('"errorOnTypeScriptSyntacticAndSemanticIssues" is only supported for parseAndGenerateServices()');let a=fda(s),{astMaps:o,estree:g}=lda(a,s,r);return{ast:g,esTreeNodeToTSNodeMap:o.esTreeNodeToTSNodeMap,tsNodeToESTreeNodeMap:o.tsNodeToESTreeNodeMap}}function Rda(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var Dda=Rda;function xda(e){let t=[];for(let r of e)try{return r()}catch(s){t.push(s)}throw Object.assign(new Error("All combinations failed"),{errors:t})}var kda=xda,Gda=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},zii=Gda;function Fda(e){return Array.isArray(e)&&e.length>0}var Zda=Fda;function $U(e){var t,r,s;let a=((t=e.range)==null?void 0:t[0])??e.start,o=(s=((r=e.declaration)==null?void 0:r.decorators)??e.decorators)==null?void 0:s[0];return o?Math.min($U(o),a):a}function Ife(e){var t;return((t=e.range)==null?void 0:t[1])??e.end}function Lda(e){let t=new Set(e);return r=>t.has(r?.type)}var Vda=Lda,Wda=Vda(["Block","CommentBlock","MultiLine"]),MAr=Wda;function Pda(e){let t=`*${e.value}*`.split(` +`);return t.length>1&&t.every(r=>r.trimStart()[0]==="*")}var qii=Pda;function Oda(e){return MAr(e)&&e.value[0]==="*"&&/@(?:type|satisfies)\b/u.test(e.value)}var Qda=Oda,lMe=null;function hMe(e){if(lMe!==null&&typeof lMe.property){let t=lMe;return lMe=hMe.prototype=null,t}return lMe=hMe.prototype=e??Object.create(null),new hMe}var Mda=10;for(let e=0;e<=Mda;e++)hMe();function Hda(e){return hMe(e)}function Yda(e,t="type"){Hda(e);function r(s){let a=s[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:s});return o}return r}var Xda=Yda,Jda={ArrayExpression:["elements"],AssignmentExpression:["left","right"],BinaryExpression:["left","right"],InterpreterDirective:[],Directive:["value"],DirectiveLiteral:[],BlockStatement:["directives","body"],BreakStatement:["label"],CallExpression:["callee","arguments","typeParameters","typeArguments"],CatchClause:["param","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExpressionStatement:["expression"],File:["program"],ForInStatement:["left","right","body"],ForStatement:["init","test","update","body"],FunctionDeclaration:["id","typeParameters","params","predicate","returnType","body"],FunctionExpression:["id","typeParameters","params","returnType","body"],Identifier:["typeAnnotation","decorators"],IfStatement:["test","consequent","alternate"],LabeledStatement:["label","body"],StringLiteral:[],NumericLiteral:[],NullLiteral:[],BooleanLiteral:[],RegExpLiteral:[],LogicalExpression:["left","right"],MemberExpression:["object","property"],NewExpression:["callee","arguments","typeParameters","typeArguments"],Program:["directives","body"],ObjectExpression:["properties"],ObjectMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectProperty:["key","value","decorators"],RestElement:["argument","typeAnnotation","decorators"],ReturnStatement:["argument"],SequenceExpression:["expressions"],ParenthesizedExpression:["expression"],SwitchCase:["test","consequent"],SwitchStatement:["discriminant","cases"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],AssignmentPattern:["left","right","decorators","typeAnnotation"],ArrayPattern:["elements","typeAnnotation","decorators"],ArrowFunctionExpression:["typeParameters","params","predicate","returnType","body"],ClassBody:["body"],ClassExpression:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ClassDeclaration:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body","superTypeArguments"],ExportAllDeclaration:["source","attributes","exported"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source","attributes"],ExportSpecifier:["local","exported"],ForOfStatement:["left","right","body"],ImportDeclaration:["specifiers","source","attributes"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],ImportExpression:["source","options"],MetaProperty:["meta","property"],ClassMethod:["decorators","key","typeParameters","params","returnType","body"],ObjectPattern:["properties","typeAnnotation","decorators"],SpreadElement:["argument"],Super:[],TaggedTemplateExpression:["tag","typeParameters","quasi","typeArguments"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],YieldExpression:["argument"],AwaitExpression:["argument"],BigIntLiteral:[],ExportNamespaceSpecifier:["exported"],OptionalMemberExpression:["object","property"],OptionalCallExpression:["callee","arguments","typeParameters","typeArguments"],ClassProperty:["decorators","variance","key","typeAnnotation","value"],ClassAccessorProperty:["decorators","key","typeAnnotation","value"],ClassPrivateProperty:["decorators","variance","key","typeAnnotation","value"],ClassPrivateMethod:["decorators","key","typeParameters","params","returnType","body"],PrivateName:["id"],StaticBlock:["body"],AnyTypeAnnotation:[],ArrayTypeAnnotation:["elementType"],BooleanTypeAnnotation:[],BooleanLiteralTypeAnnotation:[],NullLiteralTypeAnnotation:[],ClassImplements:["id","typeParameters"],DeclareClass:["id","typeParameters","extends","mixins","implements","body"],DeclareFunction:["id","predicate"],DeclareInterface:["id","typeParameters","extends","body"],DeclareModule:["id","body"],DeclareModuleExports:["typeAnnotation"],DeclareTypeAlias:["id","typeParameters","right"],DeclareOpaqueType:["id","typeParameters","supertype"],DeclareVariable:["id"],DeclareExportDeclaration:["declaration","specifiers","source","attributes"],DeclareExportAllDeclaration:["source","attributes"],DeclaredPredicate:["value"],ExistsTypeAnnotation:[],FunctionTypeAnnotation:["typeParameters","this","params","rest","returnType"],FunctionTypeParam:["name","typeAnnotation"],GenericTypeAnnotation:["id","typeParameters"],InferredPredicate:[],InterfaceExtends:["id","typeParameters"],InterfaceDeclaration:["id","typeParameters","extends","body"],InterfaceTypeAnnotation:["extends","body"],IntersectionTypeAnnotation:["types"],MixedTypeAnnotation:[],EmptyTypeAnnotation:[],NullableTypeAnnotation:["typeAnnotation"],NumberLiteralTypeAnnotation:[],NumberTypeAnnotation:[],ObjectTypeAnnotation:["properties","indexers","callProperties","internalSlots"],ObjectTypeInternalSlot:["id","value"],ObjectTypeCallProperty:["value"],ObjectTypeIndexer:["variance","id","key","value"],ObjectTypeProperty:["key","value","variance"],ObjectTypeSpreadProperty:["argument"],OpaqueType:["id","typeParameters","supertype","impltype"],QualifiedTypeIdentifier:["qualification","id"],StringLiteralTypeAnnotation:[],StringTypeAnnotation:[],SymbolTypeAnnotation:[],ThisTypeAnnotation:[],TupleTypeAnnotation:["types","elementTypes"],TypeofTypeAnnotation:["argument","typeArguments"],TypeAlias:["id","typeParameters","right"],TypeAnnotation:["typeAnnotation"],TypeCastExpression:["expression","typeAnnotation"],TypeParameter:["bound","default","variance"],TypeParameterDeclaration:["params"],TypeParameterInstantiation:["params"],UnionTypeAnnotation:["types"],Variance:[],VoidTypeAnnotation:[],EnumDeclaration:["id","body"],EnumBooleanBody:["members"],EnumNumberBody:["members"],EnumStringBody:["members"],EnumSymbolBody:["members"],EnumBooleanMember:["id","init"],EnumNumberMember:["id","init"],EnumStringMember:["id","init"],EnumDefaultedMember:["id"],IndexedAccessType:["objectType","indexType"],OptionalIndexedAccessType:["objectType","indexType"],JSXAttribute:["name","value"],JSXClosingElement:["name"],JSXElement:["openingElement","children","closingElement"],JSXEmptyExpression:[],JSXExpressionContainer:["expression"],JSXSpreadChild:["expression"],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],JSXOpeningElement:["name","typeParameters","typeArguments","attributes"],JSXSpreadAttribute:["argument"],JSXText:[],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningFragment:[],JSXClosingFragment:[],Noop:[],Placeholder:[],V8IntrinsicIdentifier:[],ArgumentPlaceholder:[],BindExpression:["object","callee"],ImportAttribute:["key","value"],Decorator:["expression"],DoExpression:["body"],ExportDefaultSpecifier:["exported"],RecordExpression:["properties"],TupleExpression:["elements"],ModuleExpression:["body"],TopicReference:[],PipelineTopicExpression:["expression"],PipelineBareFunction:["callee"],PipelinePrimaryTopicReference:[],TSParameterProperty:["parameter","decorators"],TSDeclareFunction:["id","typeParameters","params","returnType","body"],TSDeclareMethod:["decorators","key","typeParameters","params","returnType"],TSQualifiedName:["left","right"],TSCallSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSPropertySignature:["key","typeAnnotation"],TSMethodSignature:["key","typeParameters","parameters","typeAnnotation","params","returnType"],TSIndexSignature:["parameters","typeAnnotation"],TSAnyKeyword:[],TSBooleanKeyword:[],TSBigIntKeyword:[],TSIntrinsicKeyword:[],TSNeverKeyword:[],TSNullKeyword:[],TSNumberKeyword:[],TSObjectKeyword:[],TSStringKeyword:[],TSSymbolKeyword:[],TSUndefinedKeyword:[],TSUnknownKeyword:[],TSVoidKeyword:[],TSThisType:[],TSFunctionType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructorType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSTypeReference:["typeName","typeParameters","typeArguments"],TSTypePredicate:["parameterName","typeAnnotation"],TSTypeQuery:["exprName","typeParameters","typeArguments"],TSTypeLiteral:["members"],TSArrayType:["elementType"],TSTupleType:["elementTypes"],TSOptionalType:["typeAnnotation"],TSRestType:["typeAnnotation"],TSNamedTupleMember:["label","elementType"],TSUnionType:["types"],TSIntersectionType:["types"],TSConditionalType:["checkType","extendsType","trueType","falseType"],TSInferType:["typeParameter"],TSParenthesizedType:["typeAnnotation"],TSTypeOperator:["typeAnnotation"],TSIndexedAccessType:["objectType","indexType"],TSMappedType:["typeParameter","nameType","typeAnnotation"],TSTemplateLiteralType:["quasis","types"],TSLiteralType:["literal"],TSExpressionWithTypeArguments:["expression","typeParameters"],TSInterfaceDeclaration:["id","typeParameters","extends","body"],TSInterfaceBody:["body"],TSTypeAliasDeclaration:["id","typeParameters","typeAnnotation"],TSInstantiationExpression:["expression","typeParameters","typeArguments"],TSAsExpression:["expression","typeAnnotation"],TSSatisfiesExpression:["expression","typeAnnotation"],TSTypeAssertion:["typeAnnotation","expression"],TSEnumBody:["members"],TSEnumDeclaration:["id","members"],TSEnumMember:["id","initializer"],TSModuleDeclaration:["id","body"],TSModuleBlock:["body"],TSImportType:["argument","options","qualifier","typeParameters","typeArguments"],TSImportEqualsDeclaration:["id","moduleReference"],TSExternalModuleReference:["expression"],TSNonNullExpression:["expression"],TSExportAssignment:["expression"],TSNamespaceExportDeclaration:["id"],TSTypeAnnotation:["typeAnnotation"],TSTypeParameterInstantiation:["params"],TSTypeParameterDeclaration:["params"],TSTypeParameter:["constraint","default","name"],ChainExpression:["expression"],ExperimentalRestProperty:["argument"],ExperimentalSpreadProperty:["argument"],Literal:[],MethodDefinition:["decorators","key","value"],PrivateIdentifier:[],Property:["key","value"],PropertyDefinition:["decorators","key","typeAnnotation","value","variance"],AccessorProperty:["decorators","key","typeAnnotation","value"],TSAbstractAccessorProperty:["decorators","key","typeAnnotation"],TSAbstractKeyword:[],TSAbstractMethodDefinition:["key","value"],TSAbstractPropertyDefinition:["decorators","key","typeAnnotation"],TSAsyncKeyword:[],TSClassImplements:["expression","typeArguments","typeParameters"],TSDeclareKeyword:[],TSEmptyBodyFunctionExpression:["id","typeParameters","params","returnType"],TSExportKeyword:[],TSInterfaceHeritage:["expression","typeArguments","typeParameters"],TSPrivateKeyword:[],TSProtectedKeyword:[],TSPublicKeyword:[],TSReadonlyKeyword:[],TSStaticKeyword:[],AsConstExpression:["expression"],AsExpression:["expression","typeAnnotation"],BigIntLiteralTypeAnnotation:[],BigIntTypeAnnotation:[],ComponentDeclaration:["id","params","body","typeParameters","rendersType"],ComponentParameter:["name","local"],ComponentTypeAnnotation:["params","rest","typeParameters","rendersType"],ComponentTypeParameter:["name","typeAnnotation"],ConditionalTypeAnnotation:["checkType","extendsType","trueType","falseType"],DeclareComponent:["id","params","rest","typeParameters","rendersType"],DeclareEnum:["id","body"],DeclareHook:["id"],DeclareNamespace:["id","body"],EnumBigIntBody:["members"],EnumBigIntMember:["id","init"],HookDeclaration:["id","params","body","typeParameters","returnType"],HookTypeAnnotation:["params","returnType","rest","typeParameters"],InferTypeAnnotation:["typeParameter"],KeyofTypeAnnotation:["argument"],ObjectTypeMappedTypeProperty:["keyTparam","propType","sourceType","variance"],QualifiedTypeofIdentifier:["qualification","id"],TupleTypeLabeledElement:["label","elementType","variance"],TupleTypeSpreadElement:["label","typeAnnotation"],TypeOperator:["typeAnnotation"],TypePredicate:["parameterName","typeAnnotation","asserts"],NGRoot:["node"],NGPipeExpression:["left","right","arguments"],NGChainedExpression:["expressions"],NGEmptyExpression:[],NGMicrosyntax:["body"],NGMicrosyntaxKey:[],NGMicrosyntaxExpression:["expression","alias"],NGMicrosyntaxKeyedExpression:["key","expression"],NGMicrosyntaxLet:["key","value"],NGMicrosyntaxAs:["key","alias"],JsExpressionRoot:["node"],JsonRoot:["node"],TSJSDocAllType:[],TSJSDocUnknownType:[],TSJSDocNullableType:["typeAnnotation"],TSJSDocNonNullableType:["typeAnnotation"],NeverTypeAnnotation:[],UndefinedTypeAnnotation:[],UnknownTypeAnnotation:[],SatisfiesExpression:["expression","typeAnnotation"]},Uda=Xda(Jda),Kda=Uda;function HAr(e,t){if(!(e!==null&&typeof e=="object"))return e;if(Array.isArray(e)){for(let s=0;s{var g;(g=o.leadingComments)!=null&&g.some(Qda)&&a.add($U(o))}),e=yAr(e,o=>{if(o.type==="ParenthesizedExpression"){let{expression:g}=o;if(g.type==="TypeCastExpression")return g.range=[...o.range],g;let p=$U(o);if(!a.has(p))return g.extra={...g.extra,parenthesized:!0},g}})}if(e=yAr(e,a=>{switch(a.type){case"LogicalExpression":if(nai(a))return YAr(a);break;case"VariableDeclaration":{let o=zii(!1,a.declarations,-1);o!=null&&o.init&&s[Ife(o)]!==";"&&(a.range=[$U(a),Ife(o)]);break}case"TSParenthesizedType":return a.typeAnnotation;case"TSTypeParameter":if(typeof a.name=="string"){let o=$U(a);a.name={type:"Identifier",name:a.name,range:[o,o+a.name.length]}}break;case"TopicReference":e.extra={...e.extra,__isUsingHackPipeline:!0};break;case"TSUnionType":case"TSIntersectionType":if(a.types.length===1)return a.types[0];break}}),Zda(e.comments)){let a=zii(!1,e.comments,-1);for(let o=e.comments.length-2;o>=0;o--){let g=e.comments[o];Ife(g)===$U(a)&&MAr(g)&&MAr(a)&&qii(g)&&qii(a)&&(e.comments.splice(o+1,1),g.value+="*//*"+a.value,g.range=[$U(g),Ife(a)]),a=g}}return e.type==="Program"&&(e.range=[0,s.length]),e}function nai(e){return e.type==="LogicalExpression"&&e.right.type==="LogicalExpression"&&e.operator===e.right.operator}function YAr(e){return nai(e)?YAr({type:"LogicalExpression",operator:e.operator,left:YAr({type:"LogicalExpression",operator:e.operator,left:e.left,right:e.right.left,range:[$U(e.left),Ife(e.right.left)]}),right:e.right.right,range:[$U(e),Ife(e)]}):e}var zda=jda,qda=/\*\/$/,$da=/^\/\*\*?/,epa=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,tpa=/(^|\s+)\/\/([^\n\r]*)/g,$ii=/^(\r?\n)+/,rpa=/(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g,esi=/(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g,npa=/(\r?\n|^) *\* ?/g,ipa=[];function spa(e){let t=e.match(epa);return t?t[0].trimStart():""}function opa(e){let t=` +`;e=ISe(!1,e.replace($da,"").replace(qda,""),npa,"$1");let r="";for(;r!==e;)r=e,e=ISe(!1,e,rpa,`${t}$1 $2${t}`);e=e.replace($ii,"").trimEnd();let s=Object.create(null),a=ISe(!1,e,esi,"").replace($ii,"").trimEnd(),o;for(;o=esi.exec(e);){let g=ISe(!1,o[2],tpa,"");if(typeof s[o[1]]=="string"||Array.isArray(s[o[1]])){let p=s[o[1]];s[o[1]]=[...ipa,...Array.isArray(p)?p:[p],g]}else s[o[1]]=g}return{comments:a,pragmas:s}}function apa(e){if(!e.startsWith("#!"))return"";let t=e.indexOf(` +`);return t===-1?e:e.slice(0,t)}var cpa=apa;function lpa(e){let t=cpa(e);t&&(e=e.slice(t.length+1));let r=spa(e),{pragmas:s,comments:a}=opa(r);return{shebang:t,text:e,pragmas:s,comments:a}}function upa(e){let{pragmas:t}=lpa(e);return Object.prototype.hasOwnProperty.call(t,"prettier")||Object.prototype.hasOwnProperty.call(t,"format")}function gpa(e){return e=typeof e=="function"?{parse:e}:e,{astFormat:"estree",hasPragma:upa,locStart:$U,locEnd:Ife,...e}}var Apa=gpa;function dpa(e){let{filepath:t}=e;if(t){if(t=t.toLowerCase(),t.endsWith(".cjs")||t.endsWith(".cts"))return"script";if(t.endsWith(".mjs")||t.endsWith(".mts"))return"module"}}var ppa=dpa;function fpa(e){return e.charAt(0)==="#"&&e.charAt(1)==="!"?"//"+e.slice(2):e}var Ipa=fpa,Cpa={loc:!0,range:!0,comment:!0,tokens:!0,loggerFn:!1,project:!1,jsDocParsingMode:"none",suppressDeprecatedPropertyWarnings:!0};function mpa(e){if(!(e!=null&&e.location))return e;let{message:t,location:{start:r,end:s}}=e;return Dda(t,{loc:{start:{line:r.line,column:r.column+1},end:{line:s.line,column:s.column+1}},cause:e})}var hpa=e=>/\.(?:js|mjs|cjs|jsx|ts|mts|cts|tsx)$/iu.test(e);function _pa(e,t){let r=t?.filepath,s=[{...Cpa,filePath:r}],a=ppa(t);if(a?s=s.map(g=>({...g,sourceType:a})):s=["module","script"].flatMap(g=>s.map(p=>({...p,sourceType:g}))),r&&hpa(r))return s;let o=bpa(e);return[o,!o].flatMap(g=>s.map(p=>({...p,jsx:g})))}function ypa(e,t={}){let r=Ipa(e),s=_pa(e,t),a;try{a=kda(s.map(o=>()=>Tda(r,o)))}catch({errors:[o]}){throw mpa(o)}return zda(a,{text:e})}function bpa(e){return new RegExp(["(?:^[^\"'`]*)"].join(""),"mu").test(e)}var Epa=Apa(ypa),Bpa=isi;var tpr={};zf(tpr,{default:()=>nCa,languages:()=>zai,options:()=>qai,parsers:()=>zdr,printers:()=>Aci});var vpa=Object.create,Qdr=Object.defineProperty,Spa=Object.getOwnPropertyDescriptor,wpa=Object.getOwnPropertyNames,Tpa=Object.getPrototypeOf,Npa=Object.prototype.hasOwnProperty,zz=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),fai=(e,t)=>{for(var r in t)Qdr(e,r,{get:t[r],enumerable:!0})},Rpa=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of wpa(t))!Npa.call(e,a)&&a!==r&&Qdr(e,a,{get:()=>t[a],enumerable:!(s=Spa(t,a))||s.enumerable});return e},Iai=(e,t,r)=>(r=e!=null?vpa(Tpa(e)):{},Rpa(t||!e||!e.__esModule?Qdr(r,"default",{value:e,enumerable:!0}):r,e)),wfe=zz(e=>{"use strict";var t={ANCHOR:"&",COMMENT:"#",TAG:"!",DIRECTIVES_END:"-",DOCUMENT_END:"."},r={ALIAS:"ALIAS",BLANK_LINE:"BLANK_LINE",BLOCK_FOLDED:"BLOCK_FOLDED",BLOCK_LITERAL:"BLOCK_LITERAL",COMMENT:"COMMENT",DIRECTIVE:"DIRECTIVE",DOCUMENT:"DOCUMENT",FLOW_MAP:"FLOW_MAP",FLOW_SEQ:"FLOW_SEQ",MAP:"MAP",MAP_KEY:"MAP_KEY",MAP_VALUE:"MAP_VALUE",PLAIN:"PLAIN",QUOTE_DOUBLE:"QUOTE_DOUBLE",QUOTE_SINGLE:"QUOTE_SINGLE",SEQ:"SEQ",SEQ_ITEM:"SEQ_ITEM"},s="tag:yaml.org,2002:",a={MAP:"tag:yaml.org,2002:map",SEQ:"tag:yaml.org,2002:seq",STR:"tag:yaml.org,2002:str"};function o(ae){let ge=[0],fe=ae.indexOf(` `);for(;fe!==-1;)fe+=1,ge.push(fe),fe=ae.indexOf(` `,fe);return ge}function g(ae){let ge,fe;return typeof ae=="string"?(ge=o(ae),fe=ae):(Array.isArray(ae)&&(ae=ae[0]),ae&&ae.context&&(ae.lineStarts||(ae.lineStarts=o(ae.context.src)),ge=ae.lineStarts,fe=ae.context.src)),{lineStarts:ge,src:fe}}function p(ae,ge){if(typeof ae!="number"||ae<0)return null;let{lineStarts:fe,src:pe}=g(ge);if(!fe||!pe||ae>pe.length)return null;for(let be=0;be=1)||ae>fe.length)return null;let he=fe[ae-1],be=fe[ae];for(;be&&be>he&&pe[be-1]===` `;)--be;return pe.slice(he,be)}function m({start:ae,end:ge},fe,pe=80){let he=f(ae.line,fe);if(!he)return null;let{col:be}=ae;if(he.length>pe)if(be<=pe-10)he=he.substr(0,pe-1)+"\u2026";else{let Ue=Math.round(pe/2);he.length>be+Ue&&(he=he.substr(0,be+Ue-1)+"\u2026"),be-=he.length-pe,he="\u2026"+he.substr(1-pe)}let Te=1,ke="";ge&&(ge.line===ae.line&&be+(ge.col-ae.col)<=pe+1?Te=ge.col-ae.col:(Te=Math.min(he.length+1,pe)-be,ke="\u2026"));let x=be>1?" ".repeat(be-1):"",et="^".repeat(Te);return`${he} -${x}${et}${ke}`}var y=class lai{static copy(ge){return new lai(ge.start,ge.end)}constructor(ge,fe){this.start=ge,this.end=fe||ge}isEmpty(){return typeof this.start!="number"||!this.end||this.end<=this.start}setOrigRange(ge,fe){let{start:pe,end:he}=this;if(ge.length===0||he<=ge[0])return this.origStart=pe,this.origEnd=he,fe;let be=fe;for(;bepe);)++be;this.origStart=pe+be;let Te=be;for(;be=he);)++be;return this.origEnd=he+be,Te}},B=class Uz{static addStringTerminator(ge,fe,pe){if(pe[pe.length-1]===` -`)return pe;let he=Uz.endOfWhiteSpace(ge,fe);return he>=ge.length||ge[he]===` +${x}${et}${ke}`}var y=class Cai{static copy(ge){return new Cai(ge.start,ge.end)}constructor(ge,fe){this.start=ge,this.end=fe||ge}isEmpty(){return typeof this.start!="number"||!this.end||this.end<=this.start}setOrigRange(ge,fe){let{start:pe,end:he}=this;if(ge.length===0||he<=ge[0])return this.origStart=pe,this.origEnd=he,fe;let be=fe;for(;bepe);)++be;this.origStart=pe+be;let Te=be;for(;be=he);)++be;return this.origEnd=he+be,Te}},B=class Kz{static addStringTerminator(ge,fe,pe){if(pe[pe.length-1]===` +`)return pe;let he=Kz.endOfWhiteSpace(ge,fe);return he>=ge.length||ge[he]===` `?pe+` `:pe}static atDocumentBoundary(ge,fe,pe){let he=ge[fe];if(!he)return!0;let be=ge[fe-1];if(be&&be!==` `)return!1;if(pe){if(he!==pe)return!1}else if(he!==t.DIRECTIVES_END&&he!==t.DOCUMENT_END)return!1;let Te=ge[fe+1],ke=ge[fe+2];if(Te!==he||ke!==he)return!1;let x=ge[fe+3];return!x||x===` @@ -2095,40 +2095,40 @@ ${x}${et}${ke}`}var y=class lai{static copy(ge){return new lai(ge.start,ge.end)} `," "," ","[","]","{","}",","];for(;pe&&be.indexOf(pe)===-1;)pe=ge[fe+=1];return he&&pe===">"&&(fe+=1),fe}static endOfIndent(ge,fe){let pe=ge[fe];for(;pe===" ";)pe=ge[fe+=1];return fe}static endOfLine(ge,fe){let pe=ge[fe];for(;pe&&pe!==` `;)pe=ge[fe+=1];return fe}static endOfWhiteSpace(ge,fe){let pe=ge[fe];for(;pe===" "||pe===" ";)pe=ge[fe+=1];return fe}static startOfLine(ge,fe){let pe=ge[fe-1];if(pe===` `)return fe;for(;pe&&pe!==` -`;)pe=ge[fe-=1];return fe+1}static endOfBlockIndent(ge,fe,pe){let he=Uz.endOfIndent(ge,pe);if(he>pe+fe)return he;{let be=Uz.endOfWhiteSpace(ge,he),Te=ge[be];if(!Te||Te===` +`;)pe=ge[fe-=1];return fe+1}static endOfBlockIndent(ge,fe,pe){let he=Kz.endOfIndent(ge,pe);if(he>pe+fe)return he;{let be=Kz.endOfWhiteSpace(ge,he),Te=ge[be];if(!Te||Te===` `)return be}return null}static atBlank(ge,fe,pe){let he=ge[fe];return he===` `||he===" "||he===" "||pe&&!he}static nextNodeIsIndented(ge,fe,pe){return!ge||fe<0?!1:fe>0?!0:pe&&ge==="-"}static normalizeOffset(ge,fe){let pe=ge[fe];return pe?pe!==` `&&ge[fe-1]===` -`?fe-1:Uz.endOfWhiteSpace(ge,fe):fe}static foldNewline(ge,fe,pe){let he=0,be=!1,Te="",ke=ge[fe+1];for(;ke===" "||ke===" "||ke===` +`?fe-1:Kz.endOfWhiteSpace(ge,fe):fe}static foldNewline(ge,fe,pe){let he=0,be=!1,Te="",ke=ge[fe+1];for(;ke===" "||ke===" "||ke===` `;){switch(ke){case` `:he=0,fe+=1,Te+=` -`;break;case" ":he<=pe&&(be=!0),fe=Uz.endOfWhiteSpace(ge,fe+2)-1;break;case" ":he+=1,fe+=1;break}ke=ge[fe+1]}return Te||(Te=" "),ke&&he<=pe&&(be=!0),{fold:Te,offset:fe,error:be}}constructor(ge,fe,pe){Object.defineProperty(this,"context",{value:pe||null,writable:!0}),this.error=null,this.range=null,this.valueRange=null,this.props=fe||[],this.type=ge,this.value=null}getPropValue(ge,fe,pe){if(!this.context)return null;let{src:he}=this.context,be=this.props[ge];return be&&he[be.start]===fe?he.slice(be.start+(pe?1:0),be.end):null}get anchor(){for(let ge=0;ge0?ge.join(` -`):null}commentHasRequiredWhitespace(ge){let{src:fe}=this.context;if(this.header&&ge===this.header.end||!this.valueRange)return!1;let{end:pe}=this.valueRange;return ge!==pe||Uz.atBlank(fe,pe-1)}get hasComment(){if(this.context){let{src:ge}=this.context;for(let fe=0;fepe.setOrigRange(ge,fe)),fe}toString(){let{context:{src:ge},range:fe,value:pe}=this;if(pe!=null)return pe;let he=ge.slice(fe.start,fe.end);return Uz.addStringTerminator(ge,fe.end,he)}},v=class extends Error{constructor(ae,ge,fe){if(!fe||!(ge instanceof B))throw new Error(`Invalid arguments for new ${ae}`);super(),this.name=ae,this.message=fe,this.source=ge}makePretty(){if(!this.source)return;this.nodeType=this.source.type;let ae=this.source.context&&this.source.context.root;if(typeof this.offset=="number"){this.range=new y(this.offset,this.offset+1);let ge=ae&&p(this.offset,ae);if(ge){let fe={line:ge.line,col:ge.col+1};this.linePos={start:ge,end:fe}}delete this.offset}else this.range=this.source.range,this.linePos=this.source.rangeAsLinePos;if(this.linePos){let{line:ge,col:fe}=this.linePos.start;this.message+=` at line ${ge}, column ${fe}`;let pe=ae&&m(this.linePos,ae);pe&&(this.message+=`: +`;break;case" ":he<=pe&&(be=!0),fe=Kz.endOfWhiteSpace(ge,fe+2)-1;break;case" ":he+=1,fe+=1;break}ke=ge[fe+1]}return Te||(Te=" "),ke&&he<=pe&&(be=!0),{fold:Te,offset:fe,error:be}}constructor(ge,fe,pe){Object.defineProperty(this,"context",{value:pe||null,writable:!0}),this.error=null,this.range=null,this.valueRange=null,this.props=fe||[],this.type=ge,this.value=null}getPropValue(ge,fe,pe){if(!this.context)return null;let{src:he}=this.context,be=this.props[ge];return be&&he[be.start]===fe?he.slice(be.start+(pe?1:0),be.end):null}get anchor(){for(let ge=0;ge0?ge.join(` +`):null}commentHasRequiredWhitespace(ge){let{src:fe}=this.context;if(this.header&&ge===this.header.end||!this.valueRange)return!1;let{end:pe}=this.valueRange;return ge!==pe||Kz.atBlank(fe,pe-1)}get hasComment(){if(this.context){let{src:ge}=this.context;for(let fe=0;fepe.setOrigRange(ge,fe)),fe}toString(){let{context:{src:ge},range:fe,value:pe}=this;if(pe!=null)return pe;let he=ge.slice(fe.start,fe.end);return Kz.addStringTerminator(ge,fe.end,he)}},v=class extends Error{constructor(ae,ge,fe){if(!fe||!(ge instanceof B))throw new Error(`Invalid arguments for new ${ae}`);super(),this.name=ae,this.message=fe,this.source=ge}makePretty(){if(!this.source)return;this.nodeType=this.source.type;let ae=this.source.context&&this.source.context.root;if(typeof this.offset=="number"){this.range=new y(this.offset,this.offset+1);let ge=ae&&p(this.offset,ae);if(ge){let fe={line:ge.line,col:ge.col+1};this.linePos={start:ge,end:fe}}delete this.offset}else this.range=this.source.range,this.linePos=this.source.rangeAsLinePos;if(this.linePos){let{line:ge,col:fe}=this.linePos.start;this.message+=` at line ${ge}, column ${fe}`;let pe=ae&&m(this.linePos,ae);pe&&(this.message+=`: ${pe} -`)}delete this.source}},G=class extends v{constructor(ae,ge){super("YAMLReferenceError",ae,ge)}},T=class extends v{constructor(ae,ge){super("YAMLSemanticError",ae,ge)}},O=class extends v{constructor(ae,ge){super("YAMLSyntaxError",ae,ge)}},X=class extends v{constructor(ae,ge){super("YAMLWarning",ae,ge)}};function U(ae,ge,fe){return ge in ae?Object.defineProperty(ae,ge,{value:fe,enumerable:!0,configurable:!0,writable:!0}):ae[ge]=fe,ae}var le=class wdr extends B{static endOfLine(ge,fe,pe){let he=ge[fe],be=fe;for(;he&&he!==` +`)}delete this.source}},k=class extends v{constructor(ae,ge){super("YAMLReferenceError",ae,ge)}},T=class extends v{constructor(ae,ge){super("YAMLSemanticError",ae,ge)}},O=class extends v{constructor(ae,ge){super("YAMLSyntaxError",ae,ge)}},X=class extends v{constructor(ae,ge){super("YAMLWarning",ae,ge)}};function U(ae,ge,fe){return ge in ae?Object.defineProperty(ae,ge,{value:fe,enumerable:!0,configurable:!0,writable:!0}):ae[ge]=fe,ae}var le=class xdr extends B{static endOfLine(ge,fe,pe){let he=ge[fe],be=fe;for(;he&&he!==` `&&!(pe&&(he==="["||he==="]"||he==="{"||he==="}"||he===","));){let Te=ge[be+1];if(he===":"&&(!Te||Te===` `||Te===" "||Te===" "||pe&&Te===",")||(he===" "||he===" ")&&Te==="#")break;be+=1,he=Te}return be}get strValue(){if(!this.valueRange||!this.context)return null;let{start:ge,end:fe}=this.valueRange,{src:pe}=this.context,he=pe[fe-1];for(;geet?pe.slice(et,ke+1):x)}else be+=x}let Te=pe[ge];switch(Te){case" ":{let ke="Plain value cannot start with a tab character";return{errors:[new T(this,ke)],str:be}}case"@":case"`":{let ke=`Plain value cannot start with reserved character ${Te}`;return{errors:[new T(this,ke)],str:be}}default:return be}}parseBlockValue(ge){let{indent:fe,inFlow:pe,src:he}=this.context,be=ge,Te=ge;for(let ke=he[be];ke===` `&&!B.atDocumentBoundary(he,be+1);ke=he[be]){let x=B.endOfBlockIndent(he,fe,be+1);if(x===null||he[x]==="#")break;he[x]===` -`?be=x:(Te=wdr.endOfLine(he,x,pe),be=Te)}return this.valueRange.isEmpty()&&(this.valueRange.start=ge),this.valueRange.end=Te,Te}parse(ge,fe){this.context=ge;let{inFlow:pe,src:he}=ge,be=fe,Te=he[be];return Te&&Te!=="#"&&Te!==` -`&&(be=wdr.endOfLine(he,fe,pe)),this.valueRange=new y(fe,be),be=B.endOfWhiteSpace(he,be),be=this.parseComment(be),(!this.hasComment||this.valueRange.isEmpty())&&(be=this.parseBlockValue(be)),be}};e.Char=t,e.Node=B,e.PlainValue=le,e.Range=y,e.Type=r,e.YAMLError=v,e.YAMLReferenceError=G,e.YAMLSemanticError=T,e.YAMLSyntaxError=O,e.YAMLWarning=X,e._defineProperty=U,e.defaultTagPrefix=s,e.defaultTags=a}),fpa=jz(e=>{"use strict";var t=yfe(),r=class extends t.Node{constructor(){super(t.Type.BLANK_LINE)}get includesTrailingLines(){return!0}parse(le,ae){return this.context=le,this.range=new t.Range(ae,ae+1),ae+1}},s=class extends t.Node{constructor(le,ae){super(le,ae),this.node=null}get includesTrailingLines(){return!!this.node&&this.node.includesTrailingLines}parse(le,ae){this.context=le;let{parseNode:ge,src:fe}=le,{atLineStart:pe,lineStart:he}=le;!pe&&this.type===t.Type.SEQ_ITEM&&(this.error=new t.YAMLSemanticError(this,"Sequence items must not have preceding content on the same line"));let be=pe?ae-he:le.indent,Te=t.Node.endOfWhiteSpace(fe,ae+1),ke=fe[Te],x=ke==="#",et=[],Ue=null;for(;ke===` +`?be=x:(Te=xdr.endOfLine(he,x,pe),be=Te)}return this.valueRange.isEmpty()&&(this.valueRange.start=ge),this.valueRange.end=Te,Te}parse(ge,fe){this.context=ge;let{inFlow:pe,src:he}=ge,be=fe,Te=he[be];return Te&&Te!=="#"&&Te!==` +`&&(be=xdr.endOfLine(he,fe,pe)),this.valueRange=new y(fe,be),be=B.endOfWhiteSpace(he,be),be=this.parseComment(be),(!this.hasComment||this.valueRange.isEmpty())&&(be=this.parseBlockValue(be)),be}};e.Char=t,e.Node=B,e.PlainValue=le,e.Range=y,e.Type=r,e.YAMLError=v,e.YAMLReferenceError=k,e.YAMLSemanticError=T,e.YAMLSyntaxError=O,e.YAMLWarning=X,e._defineProperty=U,e.defaultTagPrefix=s,e.defaultTags=a}),Dpa=zz(e=>{"use strict";var t=wfe(),r=class extends t.Node{constructor(){super(t.Type.BLANK_LINE)}get includesTrailingLines(){return!0}parse(le,ae){return this.context=le,this.range=new t.Range(ae,ae+1),ae+1}},s=class extends t.Node{constructor(le,ae){super(le,ae),this.node=null}get includesTrailingLines(){return!!this.node&&this.node.includesTrailingLines}parse(le,ae){this.context=le;let{parseNode:ge,src:fe}=le,{atLineStart:pe,lineStart:he}=le;!pe&&this.type===t.Type.SEQ_ITEM&&(this.error=new t.YAMLSemanticError(this,"Sequence items must not have preceding content on the same line"));let be=pe?ae-he:le.indent,Te=t.Node.endOfWhiteSpace(fe,ae+1),ke=fe[Te],x=ke==="#",et=[],Ue=null;for(;ke===` `||ke==="#";){if(ke==="#"){let Xe=t.Node.endOfLine(fe,Te+1);et.push(new t.Range(Te,Xe)),Te=Xe}else{pe=!0,he=Te+1;let Xe=t.Node.endOfWhiteSpace(fe,he);fe[Xe]===` -`&&et.length===0&&(Ue=new r,he=Ue.parse({src:fe},he)),Te=t.Node.endOfIndent(fe,he)}ke=fe[Te]}if(t.Node.nextNodeIsIndented(ke,Te-(he+be),this.type!==t.Type.SEQ_ITEM)?this.node=ge({atLineStart:pe,inCollection:!1,indent:be,lineStart:he,parent:this},Te):ke&&he>ae+1&&(Te=he-1),this.node){if(Ue){let Xe=le.parent.items||le.parent.contents;Xe&&Xe.push(Ue)}et.length&&Array.prototype.push.apply(this.props,et),Te=this.node.range.end}else if(x){let Xe=et[0];this.props.push(Xe),Te=Xe.end}else Te=t.Node.endOfLine(fe,ae+1);let Je=this.node?this.node.valueRange.end:Te;return this.valueRange=new t.Range(ae,Je),Te}setOrigRanges(le,ae){return ae=super.setOrigRanges(le,ae),this.node?this.node.setOrigRanges(le,ae):ae}toString(){let{context:{src:le},node:ae,range:ge,value:fe}=this;if(fe!=null)return fe;let pe=ae?le.slice(ge.start,ae.range.start)+String(ae):le.slice(ge.start,ge.end);return t.Node.addStringTerminator(le,ge.end,pe)}},a=class extends t.Node{constructor(){super(t.Type.COMMENT)}parse(le,ae){this.context=le;let ge=this.parseComment(ae);return this.range=new t.Range(ae,ge),ge}};function o(le){let ae=le;for(;ae instanceof s;)ae=ae.node;if(!(ae instanceof g))return null;let ge=ae.items.length,fe=-1;for(let be=ge-1;be>=0;--be){let Te=ae.items[be];if(Te.type===t.Type.COMMENT){let{indent:ke,lineStart:x}=Te.context;if(ke>0&&Te.range.start>=x+ke)break;fe=be}else if(Te.type===t.Type.BLANK_LINE)fe=be;else break}if(fe===-1)return null;let pe=ae.items.splice(fe,ge-fe),he=pe[0].range.start;for(;ae.range.end=he,ae.valueRange&&ae.valueRange.end>he&&(ae.valueRange.end=he),ae!==le;)ae=ae.context.parent;return pe}var g=class Tdr extends t.Node{static nextContentHasIndent(ae,ge,fe){let pe=t.Node.endOfLine(ae,ge)+1;ge=t.Node.endOfWhiteSpace(ae,pe);let he=ae[ge];return he?ge>=pe+fe?!0:he!=="#"&&he!==` -`?!1:Tdr.nextContentHasIndent(ae,ge,fe):!1}constructor(ae){super(ae.type===t.Type.SEQ_ITEM?t.Type.SEQ:t.Type.MAP);for(let fe=ae.props.length-1;fe>=0;--fe)if(ae.props[fe].start0}parse(ae,ge){this.context=ae;let{parseNode:fe,src:pe}=ae,he=t.Node.startOfLine(pe,ge),be=this.items[0];be.context.parent=this,this.valueRange=t.Range.copy(be.valueRange);let Te=be.range.start-be.context.lineStart,ke=ge;ke=t.Node.normalizeOffset(pe,ke);let x=pe[ke],et=t.Node.endOfWhiteSpace(pe,he)===ke,Ue=!1;for(;x;){for(;x===` +`&&et.length===0&&(Ue=new r,he=Ue.parse({src:fe},he)),Te=t.Node.endOfIndent(fe,he)}ke=fe[Te]}if(t.Node.nextNodeIsIndented(ke,Te-(he+be),this.type!==t.Type.SEQ_ITEM)?this.node=ge({atLineStart:pe,inCollection:!1,indent:be,lineStart:he,parent:this},Te):ke&&he>ae+1&&(Te=he-1),this.node){if(Ue){let Xe=le.parent.items||le.parent.contents;Xe&&Xe.push(Ue)}et.length&&Array.prototype.push.apply(this.props,et),Te=this.node.range.end}else if(x){let Xe=et[0];this.props.push(Xe),Te=Xe.end}else Te=t.Node.endOfLine(fe,ae+1);let Je=this.node?this.node.valueRange.end:Te;return this.valueRange=new t.Range(ae,Je),Te}setOrigRanges(le,ae){return ae=super.setOrigRanges(le,ae),this.node?this.node.setOrigRanges(le,ae):ae}toString(){let{context:{src:le},node:ae,range:ge,value:fe}=this;if(fe!=null)return fe;let pe=ae?le.slice(ge.start,ae.range.start)+String(ae):le.slice(ge.start,ge.end);return t.Node.addStringTerminator(le,ge.end,pe)}},a=class extends t.Node{constructor(){super(t.Type.COMMENT)}parse(le,ae){this.context=le;let ge=this.parseComment(ae);return this.range=new t.Range(ae,ge),ge}};function o(le){let ae=le;for(;ae instanceof s;)ae=ae.node;if(!(ae instanceof g))return null;let ge=ae.items.length,fe=-1;for(let be=ge-1;be>=0;--be){let Te=ae.items[be];if(Te.type===t.Type.COMMENT){let{indent:ke,lineStart:x}=Te.context;if(ke>0&&Te.range.start>=x+ke)break;fe=be}else if(Te.type===t.Type.BLANK_LINE)fe=be;else break}if(fe===-1)return null;let pe=ae.items.splice(fe,ge-fe),he=pe[0].range.start;for(;ae.range.end=he,ae.valueRange&&ae.valueRange.end>he&&(ae.valueRange.end=he),ae!==le;)ae=ae.context.parent;return pe}var g=class kdr extends t.Node{static nextContentHasIndent(ae,ge,fe){let pe=t.Node.endOfLine(ae,ge)+1;ge=t.Node.endOfWhiteSpace(ae,pe);let he=ae[ge];return he?ge>=pe+fe?!0:he!=="#"&&he!==` +`?!1:kdr.nextContentHasIndent(ae,ge,fe):!1}constructor(ae){super(ae.type===t.Type.SEQ_ITEM?t.Type.SEQ:t.Type.MAP);for(let fe=ae.props.length-1;fe>=0;--fe)if(ae.props[fe].start0}parse(ae,ge){this.context=ae;let{parseNode:fe,src:pe}=ae,he=t.Node.startOfLine(pe,ge),be=this.items[0];be.context.parent=this,this.valueRange=t.Range.copy(be.valueRange);let Te=be.range.start-be.context.lineStart,ke=ge;ke=t.Node.normalizeOffset(pe,ke);let x=pe[ke],et=t.Node.endOfWhiteSpace(pe,he)===ke,Ue=!1;for(;x;){for(;x===` `||x==="#";){if(et&&x===` -`&&!Ue){let ft=new r;if(ke=ft.parse({src:pe},ke),this.valueRange.end=ke,ke>=pe.length){x=null;break}this.items.push(ft),ke-=1}else if(x==="#"){if(ke=pe.length){x=null;break}}if(he=ke+1,ke=t.Node.endOfIndent(pe,he),t.Node.atBlank(pe,ke)){let ft=t.Node.endOfWhiteSpace(pe,ke),Gt=pe[ft];(!Gt||Gt===` +`&&!Ue){let ft=new r;if(ke=ft.parse({src:pe},ke),this.valueRange.end=ke,ke>=pe.length){x=null;break}this.items.push(ft),ke-=1}else if(x==="#"){if(ke=pe.length){x=null;break}}if(he=ke+1,ke=t.Node.endOfIndent(pe,he),t.Node.atBlank(pe,ke)){let ft=t.Node.endOfWhiteSpace(pe,ke),Gt=pe[ft];(!Gt||Gt===` `||Gt==="#")&&(ke=ft)}x=pe[ke],et=!0}if(!x)break;if(ke!==he+Te&&(et||x!==":")){if(kege&&(ke=he);break}else if(!this.error){let ft="All collection items must start at the same column";this.error=new t.YAMLSyntaxError(this,ft)}}if(be.type===t.Type.SEQ_ITEM){if(x!=="-"){he>ge&&(ke=he);break}}else if(x==="-"&&!this.error){let ft=pe[ke+1];if(!ft||ft===` `||ft===" "||ft===" "){let Gt="A collection cannot be both a mapping and a sequence";this.error=new t.YAMLSyntaxError(this,Gt)}}let Je=fe({atLineStart:et,inCollection:!0,indent:Te,lineStart:he,parent:this},ke);if(!Je)return ke;if(this.items.push(Je),this.valueRange.end=Je.valueRange.end,ke=t.Node.normalizeOffset(pe,Je.range.end),x=pe[ke],et=!1,Ue=Je.includesTrailingLines,x){let ft=ke-1,Gt=pe[ft];for(;Gt===" "||Gt===" ";)Gt=pe[--ft];Gt===` `&&(he=ft+1,et=!0)}let Xe=o(Je);Xe&&Array.prototype.push.apply(this.items,Xe)}return ke}setOrigRanges(ae,ge){return ge=super.setOrigRanges(ae,ge),this.items.forEach(fe=>{ge=fe.setOrigRanges(ae,ge)}),ge}toString(){let{context:{src:ae},items:ge,range:fe,value:pe}=this;if(pe!=null)return pe;let he=ae.slice(fe.start,ge[0].range.start)+String(ge[0]);for(let be=1;be0&&(this.contents=this.directives,this.directives=[]),he}return ge[he]?(this.directivesEndMarker=new t.Range(he,he+3),he+3):(pe?this.error=new t.YAMLSemanticError(this,"Missing directives-end indicator line"):this.directives.length>0&&(this.contents=this.directives,this.directives=[]),he)}parseContents(ae){let{parseNode:ge,src:fe}=this.context;this.contents||(this.contents=[]);let pe=ae;for(;fe[pe-1]==="-";)pe-=1;let he=t.Node.endOfWhiteSpace(fe,ae),be=pe===ae;for(this.valueRange=new t.Range(he);!t.Node.atDocumentBoundary(fe,he,t.Char.DOCUMENT_END);){switch(fe[he]){case` -`:if(be){let Te=new r;he=Te.parse({src:fe},he),he{ge=fe.setOrigRanges(ae,ge)}),this.directivesEndMarker&&(ge=this.directivesEndMarker.setOrigRange(ae,ge)),this.contents.forEach(fe=>{ge=fe.setOrigRanges(ae,ge)}),this.documentEndMarker&&(ge=this.documentEndMarker.setOrigRange(ae,ge)),ge}toString(){let{contents:ae,directives:ge,value:fe}=this;if(fe!=null)return fe;let pe=ge.join("");return ae.length>0&&((ge.length>0||ae[0].type===t.Type.COMMENT)&&(pe+=`--- `),pe+=ae.join("")),pe[pe.length-1]!==` `&&(pe+=` @@ -2154,185 +2154,185 @@ ${pe} `||ke===" "||ke===" "||ke===","||be===":"&&this.prevNodeIsJsonLike()){this.items.push({char:be,offset:Te}),Te+=1;break}}default:{let ke=ge({atLineStart:!1,inCollection:!1,inFlow:!0,indent:-1,lineStart:he,parent:this},Te);if(!ke)return this.valueRange=new t.Range(ae,Te),Te;this.items.push(ke),Te=t.Node.normalizeOffset(fe,ke.range.end)}}Te=t.Node.endOfWhiteSpace(fe,Te),be=fe[Te]}return this.valueRange=new t.Range(ae,Te+1),be&&(this.items.push({char:be,offset:Te}),Te=t.Node.endOfWhiteSpace(fe,Te+1),Te=this.parseComment(Te)),Te}setOrigRanges(le,ae){return ae=super.setOrigRanges(le,ae),this.items.forEach(ge=>{if(ge instanceof t.Node)ae=ge.setOrigRanges(le,ae);else if(le.length===0)ge.origOffset=ge.offset;else{let fe=ae;for(;fege.offset);)++fe;ge.origOffset=ge.offset+fe,ae=fe}}),ae}toString(){let{context:{src:le},items:ae,range:ge,value:fe}=this;if(fe!=null)return fe;let pe=ae.filter(Te=>Te instanceof t.Node),he="",be=ge.start;return pe.forEach(Te=>{let ke=le.slice(be,Te.range.start);be=Te.range.end,he+=ke+String(Te),he[he.length-1]===` `&&le[be-1]!==` `&&le[be]===` -`&&(be+=1)}),he+=le.slice(be,ge.end),t.Node.addStringTerminator(le,ge.end,he)}},G=class uai extends t.Node{static endOfQuote(ae,ge){let fe=ae[ge];for(;fe&&fe!=='"';)ge+=fe==="\\"?2:1,fe=ae[ge];return ge+1}get strValue(){if(!this.valueRange||!this.context)return null;let ae=[],{start:ge,end:fe}=this.valueRange,{indent:pe,src:he}=this.context;he[fe-1]!=='"'&&ae.push(new t.YAMLSyntaxError(this,'Missing closing "quote'));let be="";for(let Te=ge+1;Tex?he.slice(x,Te+1):ke)}else be+=ke}return ae.length>0?{errors:ae,str:be}:be}parseCharCode(ae,ge,fe){let{src:pe}=this.context,he=pe.substr(ae,ge),be=he.length===ge&&/^[0-9a-fA-F]+$/.test(he)?parseInt(he,16):NaN;return isNaN(be)?(fe.push(new t.YAMLSyntaxError(this,`Invalid escape sequence ${pe.substr(ae-2,ge+2)}`)),pe.substr(ae-2,ge+2)):String.fromCodePoint(be)}parse(ae,ge){this.context=ae;let{src:fe}=ae,pe=uai.endOfQuote(fe,ge+1);return this.valueRange=new t.Range(ge,pe),pe=t.Node.endOfWhiteSpace(fe,pe),pe=this.parseComment(pe),pe}},T=class gai extends t.Node{static endOfQuote(ae,ge){let fe=ae[ge];for(;fe;)if(fe==="'"){if(ae[ge+1]!=="'")break;fe=ae[ge+=2]}else fe=ae[ge+=1];return ge+1}get strValue(){if(!this.valueRange||!this.context)return null;let ae=[],{start:ge,end:fe}=this.valueRange,{indent:pe,src:he}=this.context;he[fe-1]!=="'"&&ae.push(new t.YAMLSyntaxError(this,"Missing closing 'quote"));let be="";for(let Te=ge+1;Tex?he.slice(x,Te+1):ke)}else be+=ke}return ae.length>0?{errors:ae,str:be}:be}parseCharCode(ae,ge,fe){let{src:pe}=this.context,he=pe.substr(ae,ge),be=he.length===ge&&/^[0-9a-fA-F]+$/.test(he)?parseInt(he,16):NaN;return isNaN(be)?(fe.push(new t.YAMLSyntaxError(this,`Invalid escape sequence ${pe.substr(ae-2,ge+2)}`)),pe.substr(ae-2,ge+2)):String.fromCodePoint(be)}parse(ae,ge){this.context=ae;let{src:fe}=ae,pe=mai.endOfQuote(fe,ge+1);return this.valueRange=new t.Range(ge,pe),pe=t.Node.endOfWhiteSpace(fe,pe),pe=this.parseComment(pe),pe}},T=class hai extends t.Node{static endOfQuote(ae,ge){let fe=ae[ge];for(;fe;)if(fe==="'"){if(ae[ge+1]!=="'")break;fe=ae[ge+=2]}else fe=ae[ge+=1];return ge+1}get strValue(){if(!this.valueRange||!this.context)return null;let ae=[],{start:ge,end:fe}=this.valueRange,{indent:pe,src:he}=this.context;he[fe-1]!=="'"&&ae.push(new t.YAMLSyntaxError(this,"Missing closing 'quote"));let be="";for(let Te=ge+1;Tex?he.slice(x,Te+1):ke)}else be+=ke}return ae.length>0?{errors:ae,str:be}:be}parse(ae,ge){this.context=ae;let{src:fe}=ae,pe=gai.endOfQuote(fe,ge+1);return this.valueRange=new t.Range(ge,pe),pe=t.Node.endOfWhiteSpace(fe,pe),pe=this.parseComment(pe),pe}};function O(le,ae){switch(le){case t.Type.ALIAS:return new m(le,ae);case t.Type.BLOCK_FOLDED:case t.Type.BLOCK_LITERAL:return new B(le,ae);case t.Type.FLOW_MAP:case t.Type.FLOW_SEQ:return new v(le,ae);case t.Type.MAP_KEY:case t.Type.MAP_VALUE:case t.Type.SEQ_ITEM:return new s(le,ae);case t.Type.COMMENT:case t.Type.PLAIN:return new t.PlainValue(le,ae);case t.Type.QUOTE_DOUBLE:return new G(le,ae);case t.Type.QUOTE_SINGLE:return new T(le,ae);default:return null}}var X=class $Ct{static parseType(ae,ge,fe){switch(ae[ge]){case"*":return t.Type.ALIAS;case">":return t.Type.BLOCK_FOLDED;case"|":return t.Type.BLOCK_LITERAL;case"{":return t.Type.FLOW_MAP;case"[":return t.Type.FLOW_SEQ;case"?":return!fe&&t.Node.atBlank(ae,ge+1,!0)?t.Type.MAP_KEY:t.Type.PLAIN;case":":return!fe&&t.Node.atBlank(ae,ge+1,!0)?t.Type.MAP_VALUE:t.Type.PLAIN;case"-":return!fe&&t.Node.atBlank(ae,ge+1,!0)?t.Type.SEQ_ITEM:t.Type.PLAIN;case'"':return t.Type.QUOTE_DOUBLE;case"'":return t.Type.QUOTE_SINGLE;default:return t.Type.PLAIN}}constructor(ae={},{atLineStart:ge,inCollection:fe,inFlow:pe,indent:he,lineStart:be,parent:Te}={}){t._defineProperty(this,"parseNode",(ke,x)=>{if(t.Node.atDocumentBoundary(this.src,x))return null;let et=new $Ct(this,ke),{props:Ue,type:Je,valueStart:Xe}=et.parseProps(x),ft=O(Je,Ue),Gt=ft.parse(et,Xe);if(ft.range=new t.Range(x,Gt),Gt<=x&&(ft.error=new Error("Node#parse consumed no characters"),ft.error.parseEnd=Gt,ft.error.source=ft,ft.range.end=x+1),et.nodeStartsCollection(ft)){!ft.error&&!et.atLineStart&&et.parent.type===t.Type.DOCUMENT&&(ft.error=new t.YAMLSyntaxError(ft,"Block collection must not have preceding content here (e.g. directives-end indicator)"));let er=new g(ft);return Gt=er.parse(new $Ct(et),Gt),er.range=new t.Range(x,Gt),er}return ft}),this.atLineStart=ge??(ae.atLineStart||!1),this.inCollection=fe??(ae.inCollection||!1),this.inFlow=pe??(ae.inFlow||!1),this.indent=he??ae.indent,this.lineStart=be??ae.lineStart,this.parent=Te??(ae.parent||{}),this.root=ae.root,this.src=ae.src}nodeStartsCollection(ae){let{inCollection:ge,inFlow:fe,src:pe}=this;if(ge||fe)return!1;if(ae instanceof s)return!0;let he=ae.range.end;return pe[he]===` +`&&(be+=Te>x?he.slice(x,Te+1):ke)}else be+=ke}return ae.length>0?{errors:ae,str:be}:be}parse(ae,ge){this.context=ae;let{src:fe}=ae,pe=hai.endOfQuote(fe,ge+1);return this.valueRange=new t.Range(ge,pe),pe=t.Node.endOfWhiteSpace(fe,pe),pe=this.parseComment(pe),pe}};function O(le,ae){switch(le){case t.Type.ALIAS:return new m(le,ae);case t.Type.BLOCK_FOLDED:case t.Type.BLOCK_LITERAL:return new B(le,ae);case t.Type.FLOW_MAP:case t.Type.FLOW_SEQ:return new v(le,ae);case t.Type.MAP_KEY:case t.Type.MAP_VALUE:case t.Type.SEQ_ITEM:return new s(le,ae);case t.Type.COMMENT:case t.Type.PLAIN:return new t.PlainValue(le,ae);case t.Type.QUOTE_DOUBLE:return new k(le,ae);case t.Type.QUOTE_SINGLE:return new T(le,ae);default:return null}}var X=class rmt{static parseType(ae,ge,fe){switch(ae[ge]){case"*":return t.Type.ALIAS;case">":return t.Type.BLOCK_FOLDED;case"|":return t.Type.BLOCK_LITERAL;case"{":return t.Type.FLOW_MAP;case"[":return t.Type.FLOW_SEQ;case"?":return!fe&&t.Node.atBlank(ae,ge+1,!0)?t.Type.MAP_KEY:t.Type.PLAIN;case":":return!fe&&t.Node.atBlank(ae,ge+1,!0)?t.Type.MAP_VALUE:t.Type.PLAIN;case"-":return!fe&&t.Node.atBlank(ae,ge+1,!0)?t.Type.SEQ_ITEM:t.Type.PLAIN;case'"':return t.Type.QUOTE_DOUBLE;case"'":return t.Type.QUOTE_SINGLE;default:return t.Type.PLAIN}}constructor(ae={},{atLineStart:ge,inCollection:fe,inFlow:pe,indent:he,lineStart:be,parent:Te}={}){t._defineProperty(this,"parseNode",(ke,x)=>{if(t.Node.atDocumentBoundary(this.src,x))return null;let et=new rmt(this,ke),{props:Ue,type:Je,valueStart:Xe}=et.parseProps(x),ft=O(Je,Ue),Gt=ft.parse(et,Xe);if(ft.range=new t.Range(x,Gt),Gt<=x&&(ft.error=new Error("Node#parse consumed no characters"),ft.error.parseEnd=Gt,ft.error.source=ft,ft.range.end=x+1),et.nodeStartsCollection(ft)){!ft.error&&!et.atLineStart&&et.parent.type===t.Type.DOCUMENT&&(ft.error=new t.YAMLSyntaxError(ft,"Block collection must not have preceding content here (e.g. directives-end indicator)"));let er=new g(ft);return Gt=er.parse(new rmt(et),Gt),er.range=new t.Range(x,Gt),er}return ft}),this.atLineStart=ge??(ae.atLineStart||!1),this.inCollection=fe??(ae.inCollection||!1),this.inFlow=pe??(ae.inFlow||!1),this.indent=he??ae.indent,this.lineStart=be??ae.lineStart,this.parent=Te??(ae.parent||{}),this.root=ae.root,this.src=ae.src}nodeStartsCollection(ae){let{inCollection:ge,inFlow:fe,src:pe}=this;if(ge||fe)return!1;if(ae instanceof s)return!0;let he=ae.range.end;return pe[he]===` `||pe[he-1]===` `?!1:(he=t.Node.endOfWhiteSpace(pe,he),pe[he]===":")}parseProps(ae){let{inFlow:ge,parent:fe,src:pe}=this,he=[],be=!1;ae=this.atLineStart?t.Node.endOfIndent(pe,ae):t.Node.endOfWhiteSpace(pe,ae);let Te=pe[ae];for(;Te===t.Char.ANCHOR||Te===t.Char.COMMENT||Te===t.Char.TAG||Te===` `;){if(Te===` `){let x=ae,et;do et=x+1,x=t.Node.endOfIndent(pe,et);while(pe[x]===` -`);let Ue=x-(et+this.indent),Je=fe.type===t.Type.SEQ_ITEM&&fe.context.atLineStart;if(pe[x]!=="#"&&!t.Node.nextNodeIsIndented(pe[x],Ue,!Je))break;this.atLineStart=!0,this.lineStart=et,be=!1,ae=x}else if(Te===t.Char.COMMENT){let x=t.Node.endOfLine(pe,ae+1);he.push(new t.Range(ae,x)),ae=x}else{let x=t.Node.endOfIdentifier(pe,ae+1);Te===t.Char.TAG&&pe[x]===","&&/^[a-zA-Z0-9-]+\.[a-zA-Z0-9-]+,\d\d\d\d(-\d\d){0,2}\/\S/.test(pe.slice(ae+1,x+13))&&(x=t.Node.endOfIdentifier(pe,x+5)),he.push(new t.Range(ae,x)),be=!0,ae=t.Node.endOfWhiteSpace(pe,x)}Te=pe[ae]}be&&Te===":"&&t.Node.atBlank(pe,ae+1,!0)&&(ae-=1);let ke=$Ct.parseType(pe,ae,ge);return{props:he,type:ke,valueStart:ae}}};function U(le){let ae=[];le.indexOf("\r")!==-1&&(le=le.replace(/\r\n?/g,(pe,he)=>(pe.length>1&&ae.push(he),` +`);let Ue=x-(et+this.indent),Je=fe.type===t.Type.SEQ_ITEM&&fe.context.atLineStart;if(pe[x]!=="#"&&!t.Node.nextNodeIsIndented(pe[x],Ue,!Je))break;this.atLineStart=!0,this.lineStart=et,be=!1,ae=x}else if(Te===t.Char.COMMENT){let x=t.Node.endOfLine(pe,ae+1);he.push(new t.Range(ae,x)),ae=x}else{let x=t.Node.endOfIdentifier(pe,ae+1);Te===t.Char.TAG&&pe[x]===","&&/^[a-zA-Z0-9-]+\.[a-zA-Z0-9-]+,\d\d\d\d(-\d\d){0,2}\/\S/.test(pe.slice(ae+1,x+13))&&(x=t.Node.endOfIdentifier(pe,x+5)),he.push(new t.Range(ae,x)),be=!0,ae=t.Node.endOfWhiteSpace(pe,x)}Te=pe[ae]}be&&Te===":"&&t.Node.atBlank(pe,ae+1,!0)&&(ae-=1);let ke=rmt.parseType(pe,ae,ge);return{props:he,type:ke,valueStart:ae}}};function U(le){let ae=[];le.indexOf("\r")!==-1&&(le=le.replace(/\r\n?/g,(pe,he)=>(pe.length>1&&ae.push(he),` `)));let ge=[],fe=0;do{let pe=new f,he=new X({src:le});fe=pe.parse(he,fe),ge.push(pe)}while(fe{if(ae.length===0)return!1;for(let he=1;hege.join(`... -`),ge}e.parse=U}),DYe=jz(e=>{"use strict";var t=yfe();function r(jr,Gr,Ir){return Ir?`#${Ir.replace(/[\s\S]^/gm,`$&${Gr}#`)} +`),ge}e.parse=U}),kMe=zz(e=>{"use strict";var t=wfe();function r(jr,Gr,Ir){return Ir?`#${Ir.replace(/[\s\S]^/gm,`$&${Gr}#`)} ${Gr}${jr}`:jr}function s(jr,Gr,Ir){return Ir?Ir.indexOf(` `)===-1?`${jr} #${Ir}`:`${jr} -`+Ir.replace(/^/gm,`${Gr||""}#`):jr}var a=class{};function o(jr,Gr,Ir){if(Array.isArray(jr))return jr.map((nn,Cn)=>o(nn,String(Cn),Ir));if(jr&&typeof jr.toJSON=="function"){let nn=Ir&&Ir.anchors&&Ir.anchors.get(jr);nn&&(Ir.onCreate=Vn=>{nn.res=Vn,delete Ir.onCreate});let Cn=jr.toJSON(Gr,Ir);return nn&&Ir.onCreate&&Ir.onCreate(Cn),Cn}return(!Ir||!Ir.keep)&&typeof jr=="bigint"?Number(jr):jr}var g=class extends a{constructor(jr){super(),this.value=jr}toJSON(jr,Gr){return Gr&&Gr.keep?this.value:o(this.value,jr,Gr)}toString(){return String(this.value)}};function p(jr,Gr,Ir){let nn=Ir;for(let Cn=Gr.length-1;Cn>=0;--Cn){let Vn=Gr[Cn];if(Number.isInteger(Vn)&&Vn>=0){let Ji=[];Ji[Vn]=nn,nn=Ji}else{let Ji={};Object.defineProperty(Ji,Vn,{value:nn,writable:!0,enumerable:!0,configurable:!0}),nn=Ji}}return jr.createNode(nn,!1)}var f=jr=>jr==null||typeof jr=="object"&&jr[Symbol.iterator]().next().done,m=class hfe extends a{constructor(Gr){super(),t._defineProperty(this,"items",[]),this.schema=Gr}addIn(Gr,Ir){if(f(Gr))this.add(Ir);else{let[nn,...Cn]=Gr,Vn=this.get(nn,!0);if(Vn instanceof hfe)Vn.addIn(Cn,Ir);else if(Vn===void 0&&this.schema)this.set(nn,p(this.schema,Cn,Ir));else throw new Error(`Expected YAML collection at ${nn}. Remaining path: ${Cn}`)}}deleteIn([Gr,...Ir]){if(Ir.length===0)return this.delete(Gr);let nn=this.get(Gr,!0);if(nn instanceof hfe)return nn.deleteIn(Ir);throw new Error(`Expected YAML collection at ${Gr}. Remaining path: ${Ir}`)}getIn([Gr,...Ir],nn){let Cn=this.get(Gr,!0);return Ir.length===0?!nn&&Cn instanceof g?Cn.value:Cn:Cn instanceof hfe?Cn.getIn(Ir,nn):void 0}hasAllNullValues(){return this.items.every(Gr=>{if(!Gr||Gr.type!=="PAIR")return!1;let Ir=Gr.value;return Ir==null||Ir instanceof g&&Ir.value==null&&!Ir.commentBefore&&!Ir.comment&&!Ir.tag})}hasIn([Gr,...Ir]){if(Ir.length===0)return this.has(Gr);let nn=this.get(Gr,!0);return nn instanceof hfe?nn.hasIn(Ir):!1}setIn([Gr,...Ir],nn){if(Ir.length===0)this.set(Gr,nn);else{let Cn=this.get(Gr,!0);if(Cn instanceof hfe)Cn.setIn(Ir,nn);else if(Cn===void 0&&this.schema)this.set(Gr,p(this.schema,Ir,nn));else throw new Error(`Expected YAML collection at ${Gr}. Remaining path: ${Ir}`)}}toJSON(){return null}toString(Gr,{blockItem:Ir,flowChars:nn,isMap:Cn,itemIndent:Vn},Ji,Hr){let{indent:Ws,indentStep:Ko,stringify:ai}=Gr,pa=this.type===t.Type.FLOW_MAP||this.type===t.Type.FLOW_SEQ||Gr.inFlow;pa&&(Vn+=Ko);let sg=Cn&&this.hasAllNullValues();Gr=Object.assign({},Gr,{allNullValues:sg,indent:Vn,inFlow:pa,type:null});let Fu=!1,Cg=!1,Zu=this.items.reduce((wi,ts,$i)=>{let Ga;ts&&(!Fu&&ts.spaceBefore&&wi.push({type:"comment",str:""}),ts.commentBefore&&ts.commentBefore.match(/^.*$/gm).forEach(xl=>{wi.push({type:"comment",str:`#${xl}`})}),ts.comment&&(Ga=ts.comment),pa&&(!Fu&&ts.spaceBefore||ts.commentBefore||ts.comment||ts.key&&(ts.key.commentBefore||ts.key.comment)||ts.value&&(ts.value.commentBefore||ts.value.comment))&&(Cg=!0)),Fu=!1;let $s=ai(ts,Gr,()=>Ga=null,()=>Fu=!0);return pa&&!Cg&&$s.includes(` -`)&&(Cg=!0),pa&&$iGa.str);if(Cg||$i.reduce((Ga,$s)=>Ga+$s.length+2,2)>hfe.maxFlowStringSingleLineLength){Cl=wi;for(let Ga of $i)Cl+=Ga?` -${Ko}${Ws}${Ga}`:` -`;Cl+=` -${Ws}${ts}`}else Cl=`${wi} ${$i.join(" ")} ${ts}`}else{let wi=Zu.map(Ir);Cl=wi.shift();for(let ts of wi)Cl+=ts?` -${Ws}${ts}`:` -`}return this.comment?(Cl+=` -`+this.comment.replace(/^/gm,`${Ws}#`),Ji&&Ji()):Fu&&Hr&&Hr(),Cl}};t._defineProperty(m,"maxFlowStringSingleLineLength",60);function y(jr){let Gr=jr instanceof g?jr.value:jr;return Gr&&typeof Gr=="string"&&(Gr=Number(Gr)),Number.isInteger(Gr)&&Gr>=0?Gr:null}var B=class extends m{add(jr){this.items.push(jr)}delete(jr){let Gr=y(jr);return typeof Gr!="number"?!1:this.items.splice(Gr,1).length>0}get(jr,Gr){let Ir=y(jr);if(typeof Ir!="number")return;let nn=this.items[Ir];return!Gr&&nn instanceof g?nn.value:nn}has(jr){let Gr=y(jr);return typeof Gr=="number"&&Grnn.type==="comment"?nn.str:`- ${nn.str}`,flowChars:{start:"[",end:"]"},isMap:!1,itemIndent:(jr.indent||"")+" "},Gr,Ir):JSON.stringify(this)}},v=(jr,Gr,Ir)=>Gr===null?"":typeof Gr!="object"?String(Gr):jr instanceof a&&Ir&&Ir.doc?jr.toString({anchors:Object.create(null),doc:Ir.doc,indent:"",indentStep:Ir.indentStep,inFlow:!0,inStringifyKey:!0,stringify:Ir.stringify}):JSON.stringify(Gr),G=class Aai extends a{constructor(Gr,Ir=null){super(),this.key=Gr,this.value=Ir,this.type=Aai.Type.PAIR}get commentBefore(){return this.key instanceof a?this.key.commentBefore:void 0}set commentBefore(Gr){if(this.key==null&&(this.key=new g(null)),this.key instanceof a)this.key.commentBefore=Gr;else{let Ir="Pair.commentBefore is an alias for Pair.key.commentBefore. To set it, the key must be a Node.";throw new Error(Ir)}}addToJSMap(Gr,Ir){let nn=o(this.key,"",Gr);if(Ir instanceof Map){let Cn=o(this.value,nn,Gr);Ir.set(nn,Cn)}else if(Ir instanceof Set)Ir.add(nn);else{let Cn=v(this.key,nn,Gr),Vn=o(this.value,Cn,Gr);Cn in Ir?Object.defineProperty(Ir,Cn,{value:Vn,writable:!0,enumerable:!0,configurable:!0}):Ir[Cn]=Vn}return Ir}toJSON(Gr,Ir){let nn=Ir&&Ir.mapAsMap?new Map:{};return this.addToJSMap(Ir,nn)}toString(Gr,Ir,nn){if(!Gr||!Gr.doc)return JSON.stringify(this);let{indent:Cn,indentSeq:Vn,simpleKeys:Ji}=Gr.doc.options,{key:Hr,value:Ws}=this,Ko=Hr instanceof a&&Hr.comment;if(Ji){if(Ko)throw new Error("With simple keys, key nodes cannot have comments");if(Hr instanceof m){let $s="With simple keys, collection cannot be used as a key value";throw new Error($s)}}let ai=!Ji&&(!Hr||Ko||(Hr instanceof a?Hr instanceof m||Hr.type===t.Type.BLOCK_FOLDED||Hr.type===t.Type.BLOCK_LITERAL:typeof Hr=="object")),{doc:pa,indent:sg,indentStep:Fu,stringify:Cg}=Gr;Gr=Object.assign({},Gr,{implicitKey:!ai,indent:sg+Fu});let Zu=!1,Cl=Cg(Hr,Gr,()=>Ko=null,()=>Zu=!0);if(Cl=s(Cl,Gr.indent,Ko),!ai&&Cl.length>1024){if(Ji)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");ai=!0}if(Gr.allNullValues&&!Ji)return this.comment?(Cl=s(Cl,Gr.indent,this.comment),Ir&&Ir()):Zu&&!Ko&&nn&&nn(),Gr.inFlow&&!ai?Cl:`? ${Cl}`;Cl=ai?`? ${Cl} -${sg}:`:`${Cl}:`,this.comment&&(Cl=s(Cl,Gr.indent,this.comment),Ir&&Ir());let wi="",ts=null;if(Ws instanceof a){if(Ws.spaceBefore&&(wi=` -`),Ws.commentBefore){let $s=Ws.commentBefore.replace(/^/gm,`${Gr.indent}#`);wi+=` -${$s}`}ts=Ws.comment}else Ws&&typeof Ws=="object"&&(Ws=pa.schema.createNode(Ws,!0));Gr.implicitKey=!1,!ai&&!this.comment&&Ws instanceof g&&(Gr.indentAtStart=Cl.length+1),Zu=!1,!Vn&&Cn>=2&&!Gr.inFlow&&!ai&&Ws instanceof B&&Ws.type!==t.Type.FLOW_SEQ&&!Ws.tag&&!pa.anchors.getName(Ws)&&(Gr.indent=Gr.indent.substr(2));let $i=Cg(Ws,Gr,()=>ts=null,()=>Zu=!0),Ga=" ";return wi||this.comment?Ga=`${wi} -${Gr.indent}`:!ai&&Ws instanceof m?(!($i[0]==="["||$i[0]==="{")||$i.includes(` -`))&&(Ga=` +`+Ir.replace(/^/gm,`${Gr||""}#`):jr}var a=class{};function o(jr,Gr,Ir){if(Array.isArray(jr))return jr.map((nn,Cn)=>o(nn,String(Cn),Ir));if(jr&&typeof jr.toJSON=="function"){let nn=Ir&&Ir.anchors&&Ir.anchors.get(jr);nn&&(Ir.onCreate=Vn=>{nn.res=Vn,delete Ir.onCreate});let Cn=jr.toJSON(Gr,Ir);return nn&&Ir.onCreate&&Ir.onCreate(Cn),Cn}return(!Ir||!Ir.keep)&&typeof jr=="bigint"?Number(jr):jr}var g=class extends a{constructor(jr){super(),this.value=jr}toJSON(jr,Gr){return Gr&&Gr.keep?this.value:o(this.value,jr,Gr)}toString(){return String(this.value)}};function p(jr,Gr,Ir){let nn=Ir;for(let Cn=Gr.length-1;Cn>=0;--Cn){let Vn=Gr[Cn];if(Number.isInteger(Vn)&&Vn>=0){let Ji=[];Ji[Vn]=nn,nn=Ji}else{let Ji={};Object.defineProperty(Ji,Vn,{value:nn,writable:!0,enumerable:!0,configurable:!0}),nn=Ji}}return jr.createNode(nn,!1)}var f=jr=>jr==null||typeof jr=="object"&&jr[Symbol.iterator]().next().done,m=class vfe extends a{constructor(Gr){super(),t._defineProperty(this,"items",[]),this.schema=Gr}addIn(Gr,Ir){if(f(Gr))this.add(Ir);else{let[nn,...Cn]=Gr,Vn=this.get(nn,!0);if(Vn instanceof vfe)Vn.addIn(Cn,Ir);else if(Vn===void 0&&this.schema)this.set(nn,p(this.schema,Cn,Ir));else throw new Error(`Expected YAML collection at ${nn}. Remaining path: ${Cn}`)}}deleteIn([Gr,...Ir]){if(Ir.length===0)return this.delete(Gr);let nn=this.get(Gr,!0);if(nn instanceof vfe)return nn.deleteIn(Ir);throw new Error(`Expected YAML collection at ${Gr}. Remaining path: ${Ir}`)}getIn([Gr,...Ir],nn){let Cn=this.get(Gr,!0);return Ir.length===0?!nn&&Cn instanceof g?Cn.value:Cn:Cn instanceof vfe?Cn.getIn(Ir,nn):void 0}hasAllNullValues(){return this.items.every(Gr=>{if(!Gr||Gr.type!=="PAIR")return!1;let Ir=Gr.value;return Ir==null||Ir instanceof g&&Ir.value==null&&!Ir.commentBefore&&!Ir.comment&&!Ir.tag})}hasIn([Gr,...Ir]){if(Ir.length===0)return this.has(Gr);let nn=this.get(Gr,!0);return nn instanceof vfe?nn.hasIn(Ir):!1}setIn([Gr,...Ir],nn){if(Ir.length===0)this.set(Gr,nn);else{let Cn=this.get(Gr,!0);if(Cn instanceof vfe)Cn.setIn(Ir,nn);else if(Cn===void 0&&this.schema)this.set(Gr,p(this.schema,Ir,nn));else throw new Error(`Expected YAML collection at ${Gr}. Remaining path: ${Ir}`)}}toJSON(){return null}toString(Gr,{blockItem:Ir,flowChars:nn,isMap:Cn,itemIndent:Vn},Ji,Yr){let{indent:Vs,indentStep:Uo,stringify:ai}=Gr,da=this.type===t.Type.FLOW_MAP||this.type===t.Type.FLOW_SEQ||Gr.inFlow;da&&(Vn+=Uo);let og=Cn&&this.hasAllNullValues();Gr=Object.assign({},Gr,{allNullValues:og,indent:Vn,inFlow:da,type:null});let Zu=!1,mg=!1,Lu=this.items.reduce((wi,ts,$i)=>{let ka;ts&&(!Zu&&ts.spaceBefore&&wi.push({type:"comment",str:""}),ts.commentBefore&&ts.commentBefore.match(/^.*$/gm).forEach(kl=>{wi.push({type:"comment",str:`#${kl}`})}),ts.comment&&(ka=ts.comment),da&&(!Zu&&ts.spaceBefore||ts.commentBefore||ts.comment||ts.key&&(ts.key.commentBefore||ts.key.comment)||ts.value&&(ts.value.commentBefore||ts.value.comment))&&(mg=!0)),Zu=!1;let qs=ai(ts,Gr,()=>ka=null,()=>Zu=!0);return da&&!mg&&qs.includes(` +`)&&(mg=!0),da&&$ika.str);if(mg||$i.reduce((ka,qs)=>ka+qs.length+2,2)>vfe.maxFlowStringSingleLineLength){ml=wi;for(let ka of $i)ml+=ka?` +${Uo}${Vs}${ka}`:` +`;ml+=` +${Vs}${ts}`}else ml=`${wi} ${$i.join(" ")} ${ts}`}else{let wi=Lu.map(Ir);ml=wi.shift();for(let ts of wi)ml+=ts?` +${Vs}${ts}`:` +`}return this.comment?(ml+=` +`+this.comment.replace(/^/gm,`${Vs}#`),Ji&&Ji()):Zu&&Yr&&Yr(),ml}};t._defineProperty(m,"maxFlowStringSingleLineLength",60);function y(jr){let Gr=jr instanceof g?jr.value:jr;return Gr&&typeof Gr=="string"&&(Gr=Number(Gr)),Number.isInteger(Gr)&&Gr>=0?Gr:null}var B=class extends m{add(jr){this.items.push(jr)}delete(jr){let Gr=y(jr);return typeof Gr!="number"?!1:this.items.splice(Gr,1).length>0}get(jr,Gr){let Ir=y(jr);if(typeof Ir!="number")return;let nn=this.items[Ir];return!Gr&&nn instanceof g?nn.value:nn}has(jr){let Gr=y(jr);return typeof Gr=="number"&&Grnn.type==="comment"?nn.str:`- ${nn.str}`,flowChars:{start:"[",end:"]"},isMap:!1,itemIndent:(jr.indent||"")+" "},Gr,Ir):JSON.stringify(this)}},v=(jr,Gr,Ir)=>Gr===null?"":typeof Gr!="object"?String(Gr):jr instanceof a&&Ir&&Ir.doc?jr.toString({anchors:Object.create(null),doc:Ir.doc,indent:"",indentStep:Ir.indentStep,inFlow:!0,inStringifyKey:!0,stringify:Ir.stringify}):JSON.stringify(Gr),k=class _ai extends a{constructor(Gr,Ir=null){super(),this.key=Gr,this.value=Ir,this.type=_ai.Type.PAIR}get commentBefore(){return this.key instanceof a?this.key.commentBefore:void 0}set commentBefore(Gr){if(this.key==null&&(this.key=new g(null)),this.key instanceof a)this.key.commentBefore=Gr;else{let Ir="Pair.commentBefore is an alias for Pair.key.commentBefore. To set it, the key must be a Node.";throw new Error(Ir)}}addToJSMap(Gr,Ir){let nn=o(this.key,"",Gr);if(Ir instanceof Map){let Cn=o(this.value,nn,Gr);Ir.set(nn,Cn)}else if(Ir instanceof Set)Ir.add(nn);else{let Cn=v(this.key,nn,Gr),Vn=o(this.value,Cn,Gr);Cn in Ir?Object.defineProperty(Ir,Cn,{value:Vn,writable:!0,enumerable:!0,configurable:!0}):Ir[Cn]=Vn}return Ir}toJSON(Gr,Ir){let nn=Ir&&Ir.mapAsMap?new Map:{};return this.addToJSMap(Ir,nn)}toString(Gr,Ir,nn){if(!Gr||!Gr.doc)return JSON.stringify(this);let{indent:Cn,indentSeq:Vn,simpleKeys:Ji}=Gr.doc.options,{key:Yr,value:Vs}=this,Uo=Yr instanceof a&&Yr.comment;if(Ji){if(Uo)throw new Error("With simple keys, key nodes cannot have comments");if(Yr instanceof m){let qs="With simple keys, collection cannot be used as a key value";throw new Error(qs)}}let ai=!Ji&&(!Yr||Uo||(Yr instanceof a?Yr instanceof m||Yr.type===t.Type.BLOCK_FOLDED||Yr.type===t.Type.BLOCK_LITERAL:typeof Yr=="object")),{doc:da,indent:og,indentStep:Zu,stringify:mg}=Gr;Gr=Object.assign({},Gr,{implicitKey:!ai,indent:og+Zu});let Lu=!1,ml=mg(Yr,Gr,()=>Uo=null,()=>Lu=!0);if(ml=s(ml,Gr.indent,Uo),!ai&&ml.length>1024){if(Ji)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");ai=!0}if(Gr.allNullValues&&!Ji)return this.comment?(ml=s(ml,Gr.indent,this.comment),Ir&&Ir()):Lu&&!Uo&&nn&&nn(),Gr.inFlow&&!ai?ml:`? ${ml}`;ml=ai?`? ${ml} +${og}:`:`${ml}:`,this.comment&&(ml=s(ml,Gr.indent,this.comment),Ir&&Ir());let wi="",ts=null;if(Vs instanceof a){if(Vs.spaceBefore&&(wi=` +`),Vs.commentBefore){let qs=Vs.commentBefore.replace(/^/gm,`${Gr.indent}#`);wi+=` +${qs}`}ts=Vs.comment}else Vs&&typeof Vs=="object"&&(Vs=da.schema.createNode(Vs,!0));Gr.implicitKey=!1,!ai&&!this.comment&&Vs instanceof g&&(Gr.indentAtStart=ml.length+1),Lu=!1,!Vn&&Cn>=2&&!Gr.inFlow&&!ai&&Vs instanceof B&&Vs.type!==t.Type.FLOW_SEQ&&!Vs.tag&&!da.anchors.getName(Vs)&&(Gr.indent=Gr.indent.substr(2));let $i=mg(Vs,Gr,()=>ts=null,()=>Lu=!0),ka=" ";return wi||this.comment?ka=`${wi} +${Gr.indent}`:!ai&&Vs instanceof m?(!($i[0]==="["||$i[0]==="{")||$i.includes(` +`))&&(ka=` ${Gr.indent}`):$i[0]===` -`&&(Ga=""),Zu&&!ts&&nn&&nn(),s(Cl+Ga+$i,Gr.indent,ts)}};t._defineProperty(G,"Type",{PAIR:"PAIR",MERGE_PAIR:"MERGE_PAIR"});var T=(jr,Gr)=>{if(jr instanceof O){let Ir=Gr.get(jr.source);return Ir.count*Ir.aliasCount}else if(jr instanceof m){let Ir=0;for(let nn of jr.items){let Cn=T(nn,Gr);Cn>Ir&&(Ir=Cn)}return Ir}else if(jr instanceof G){let Ir=T(jr.key,Gr),nn=T(jr.value,Gr);return Math.max(Ir,nn)}return 1},O=class dai extends a{static stringify({range:Gr,source:Ir},{anchors:nn,doc:Cn,implicitKey:Vn,inStringifyKey:Ji}){let Hr=Object.keys(nn).find(Ko=>nn[Ko]===Ir);if(!Hr&&Ji&&(Hr=Cn.anchors.getName(Ir)||Cn.anchors.newName()),Hr)return`*${Hr}${Vn?" ":""}`;let Ws=Cn.anchors.getName(Ir)?"Alias node must be after source node":"Source node not found for alias node";throw new Error(`${Ws} [${Gr}]`)}constructor(Gr){super(),this.source=Gr,this.type=t.Type.ALIAS}set tag(Gr){throw new Error("Alias nodes cannot have tags")}toJSON(Gr,Ir){if(!Ir)return o(this.source,Gr,Ir);let{anchors:nn,maxAliasCount:Cn}=Ir,Vn=nn.get(this.source);if(!Vn||Vn.res===void 0){let Ji="This should not happen: Alias anchor was not resolved?";throw this.cstNode?new t.YAMLReferenceError(this.cstNode,Ji):new ReferenceError(Ji)}if(Cn>=0&&(Vn.count+=1,Vn.aliasCount===0&&(Vn.aliasCount=T(this.source,nn)),Vn.count*Vn.aliasCount>Cn)){let Ji="Excessive alias count indicates a resource exhaustion attack";throw this.cstNode?new t.YAMLReferenceError(this.cstNode,Ji):new ReferenceError(Ji)}return Vn.res}toString(Gr){return dai.stringify(this,Gr)}};t._defineProperty(O,"default",!0);function X(jr,Gr){let Ir=Gr instanceof g?Gr.value:Gr;for(let nn of jr)if(nn instanceof G&&(nn.key===Gr||nn.key===Ir||nn.key&&nn.key.value===Ir))return nn}var U=class extends m{add(jr,Gr){jr?jr instanceof G||(jr=new G(jr.key||jr,jr.value)):jr=new G(jr);let Ir=X(this.items,jr.key),nn=this.schema&&this.schema.sortMapEntries;if(Ir)if(Gr)Ir.value=jr.value;else throw new Error(`Key ${jr.key} already set`);else if(nn){let Cn=this.items.findIndex(Vn=>nn(jr,Vn)<0);Cn===-1?this.items.push(jr):this.items.splice(Cn,0,jr)}else this.items.push(jr)}delete(jr){let Gr=X(this.items,jr);return Gr?this.items.splice(this.items.indexOf(Gr),1).length>0:!1}get(jr,Gr){let Ir=X(this.items,jr),nn=Ir&&Ir.value;return!Gr&&nn instanceof g?nn.value:nn}has(jr){return!!X(this.items,jr)}set(jr,Gr){this.add(new G(jr,Gr),!0)}toJSON(jr,Gr,Ir){let nn=Ir?new Ir:Gr&&Gr.mapAsMap?new Map:{};Gr&&Gr.onCreate&&Gr.onCreate(nn);for(let Cn of this.items)Cn.addToJSMap(Gr,nn);return nn}toString(jr,Gr,Ir){if(!jr)return JSON.stringify(this);for(let nn of this.items)if(!(nn instanceof G))throw new Error(`Map items must all be pairs; found ${JSON.stringify(nn)} instead`);return super.toString(jr,{blockItem:nn=>nn.str,flowChars:{start:"{",end:"}"},isMap:!0,itemIndent:jr.indent||""},Gr,Ir)}},le="<<",ae=class extends G{constructor(jr){if(jr instanceof G){let Gr=jr.value;Gr instanceof B||(Gr=new B,Gr.items.push(jr.value),Gr.range=jr.value.range),super(jr.key,Gr),this.range=jr.range}else super(new g(le),new B);this.type=G.Type.MERGE_PAIR}addToJSMap(jr,Gr){for(let{source:Ir}of this.value.items){if(!(Ir instanceof U))throw new Error("Merge sources must be maps");let nn=Ir.toJSON(null,jr,Map);for(let[Cn,Vn]of nn)Gr instanceof Map?Gr.has(Cn)||Gr.set(Cn,Vn):Gr instanceof Set?Gr.add(Cn):Object.prototype.hasOwnProperty.call(Gr,Cn)||Object.defineProperty(Gr,Cn,{value:Vn,writable:!0,enumerable:!0,configurable:!0})}return Gr}toString(jr,Gr){let Ir=this.value;if(Ir.items.length>1)return super.toString(jr,Gr);this.value=Ir.items[0];let nn=super.toString(jr,Gr);return this.value=Ir,nn}},ge={defaultType:t.Type.BLOCK_LITERAL,lineWidth:76},fe={trueStr:"true",falseStr:"false"},pe={asBigInt:!1},he={nullStr:"null"},be={defaultType:t.Type.PLAIN,doubleQuoted:{jsonEncoding:!1,minMultiLineLength:40},fold:{lineWidth:80,minContentWidth:20}};function Te(jr,Gr,Ir){for(let{format:nn,test:Cn,resolve:Vn}of Gr)if(Cn){let Ji=jr.match(Cn);if(Ji){let Hr=Vn.apply(null,Ji);return Hr instanceof g||(Hr=new g(Hr)),nn&&(Hr.format=nn),Hr}}return Ir&&(jr=Ir(jr)),new g(jr)}var ke="flow",x="block",et="quoted",Ue=(jr,Gr)=>{let Ir=jr[Gr+1];for(;Ir===" "||Ir===" ";){do Ir=jr[Gr+=1];while(Ir&&Ir!==` -`);Ir=jr[Gr+1]}return Gr};function Je(jr,Gr,Ir,{indentAtStart:nn,lineWidth:Cn=80,minContentWidth:Vn=20,onFold:Ji,onOverflow:Hr}){if(!Cn||Cn<0)return jr;let Ws=Math.max(1+Vn,1+Cn-Gr.length);if(jr.length<=Ws)return jr;let Ko=[],ai={},pa=Cn-Gr.length;typeof nn=="number"&&(nn>Cn-Math.max(2,Vn)?Ko.push(0):pa=Cn-nn);let sg,Fu,Cg=!1,Zu=-1,Cl=-1,wi=-1;Ir===x&&(Zu=Ue(jr,Zu),Zu!==-1&&(pa=Zu+Ws));for(let $i;$i=jr[Zu+=1];){if(Ir===et&&$i==="\\"){switch(Cl=Zu,jr[Zu+1]){case"x":Zu+=3;break;case"u":Zu+=5;break;case"U":Zu+=9;break;default:Zu+=1}wi=Zu}if($i===` -`)Ir===x&&(Zu=Ue(jr,Zu)),pa=Zu+Ws,sg=void 0;else{if($i===" "&&Fu&&Fu!==" "&&Fu!==` -`&&Fu!==" "){let Ga=jr[Zu+1];Ga&&Ga!==" "&&Ga!==` -`&&Ga!==" "&&(sg=Zu)}if(Zu>=pa)if(sg)Ko.push(sg),pa=sg+Ws,sg=void 0;else if(Ir===et){for(;Fu===" "||Fu===" ";)Fu=$i,$i=jr[Zu+=1],Cg=!0;let Ga=Zu>wi+1?Zu-2:Cl-1;if(ai[Ga])return jr;Ko.push(Ga),ai[Ga]=!0,pa=Ga+Ws,sg=void 0}else Cg=!0}Fu=$i}if(Cg&&Hr&&Hr(),Ko.length===0)return jr;Ji&&Ji();let ts=jr.slice(0,Ko[0]);for(let $i=0;$ijr?Object.assign({indentAtStart:jr},be.fold):be.fold,ft=jr=>/^(%|---|\.\.\.)/m.test(jr);function Gt(jr,Gr,Ir){if(!Gr||Gr<0)return!1;let nn=Gr-Ir,Cn=jr.length;if(Cn<=nn)return!1;for(let Vn=0,Ji=0;Vnnn)return!0;if(Ji=Vn+1,Cn-Ji<=nn)return!1}return!0}function er(jr,Gr){let{implicitKey:Ir}=Gr,{jsonEncoding:nn,minMultiLineLength:Cn}=be.doubleQuoted,Vn=JSON.stringify(jr);if(nn)return Vn;let Ji=Gr.indent||(ft(jr)?" ":""),Hr="",Ws=0;for(let Ko=0,ai=Vn[Ko];ai;ai=Vn[++Ko])if(ai===" "&&Vn[Ko+1]==="\\"&&Vn[Ko+2]==="n"&&(Hr+=Vn.slice(Ws,Ko)+"\\ ",Ko+=1,Ws=Ko,ai="\\"),ai==="\\")switch(Vn[Ko+1]){case"u":{Hr+=Vn.slice(Ws,Ko);let pa=Vn.substr(Ko+2,4);switch(pa){case"0000":Hr+="\\0";break;case"0007":Hr+="\\a";break;case"000b":Hr+="\\v";break;case"001b":Hr+="\\e";break;case"0085":Hr+="\\N";break;case"00a0":Hr+="\\_";break;case"2028":Hr+="\\L";break;case"2029":Hr+="\\P";break;default:pa.substr(0,2)==="00"?Hr+="\\x"+pa.substr(2):Hr+=Vn.substr(Ko,6)}Ko+=5,Ws=Ko+1}break;case"n":if(Ir||Vn[Ko+2]==='"'||Vn.length";if(!Ir)return Ko+` -`;let ai="",pa="";if(Ir=Ir.replace(/[\n\t ]*$/,Fu=>{let Cg=Fu.indexOf(` -`);return Cg===-1?Ko+="-":(Ir===Fu||Cg!==Fu.length-1)&&(Ko+="+",Vn&&Vn()),pa=Fu.replace(/\n$/,""),""}).replace(/^[\n ]*/,Fu=>{Fu.indexOf(" ")!==-1&&(Ko+=Hr);let Cg=Fu.match(/ +$/);return Cg?(ai=Fu.slice(0,-Cg[0].length),Cg[0]):(ai=Fu,"")}),pa&&(pa=pa.replace(/\n+(?!\n|$)/g,`$&${Ji}`)),ai&&(ai=ai.replace(/\n+/g,`$&${Ji}`)),jr&&(Ko+=" #"+jr.replace(/ ?[\r\n]+/g," "),Cn&&Cn()),!Ir)return`${Ko}${Hr} -${Ji}${pa}`;if(Ws)return Ir=Ir.replace(/\n+/g,`$&${Ji}`),`${Ko} -${Ji}${ai}${Ir}${pa}`;Ir=Ir.replace(/\n+/g,` -$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${Ji}`);let sg=Je(`${ai}${Ir}${pa}`,Ji,x,be.fold);return`${Ko} -${Ji}${sg}`}function dr(jr,Gr,Ir,nn){let{comment:Cn,type:Vn,value:Ji}=jr,{actualString:Hr,implicitKey:Ws,indent:Ko,inFlow:ai}=Gr;if(Ws&&/[\n[\]{},]/.test(Ji)||ai&&/[[\]{},]/.test(Ji))return er(Ji,Gr);if(!Ji||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(Ji))return Ws||ai||Ji.indexOf(` -`)===-1?Ji.indexOf('"')!==-1&&Ji.indexOf("'")===-1?Ur(Ji,Gr):er(Ji,Gr):Ot(jr,Gr,Ir,nn);if(!Ws&&!ai&&Vn!==t.Type.PLAIN&&Ji.indexOf(` -`)!==-1)return Ot(jr,Gr,Ir,nn);if(Ko===""&&ft(Ji))return Gr.forceBlockIndent=!0,Ot(jr,Gr,Ir,nn);let pa=Ji.replace(/\n+/g,`$& -${Ko}`);if(Hr){let{tags:Fu}=Gr.doc.schema;if(typeof Te(pa,Fu,Fu.scalarFallback).value!="string")return er(Ji,Gr)}let sg=Ws?pa:Je(pa,Ko,ke,Xe(Gr));return Cn&&!ai&&(sg.indexOf(` +`&&(ka=""),Lu&&!ts&&nn&&nn(),s(ml+ka+$i,Gr.indent,ts)}};t._defineProperty(k,"Type",{PAIR:"PAIR",MERGE_PAIR:"MERGE_PAIR"});var T=(jr,Gr)=>{if(jr instanceof O){let Ir=Gr.get(jr.source);return Ir.count*Ir.aliasCount}else if(jr instanceof m){let Ir=0;for(let nn of jr.items){let Cn=T(nn,Gr);Cn>Ir&&(Ir=Cn)}return Ir}else if(jr instanceof k){let Ir=T(jr.key,Gr),nn=T(jr.value,Gr);return Math.max(Ir,nn)}return 1},O=class yai extends a{static stringify({range:Gr,source:Ir},{anchors:nn,doc:Cn,implicitKey:Vn,inStringifyKey:Ji}){let Yr=Object.keys(nn).find(Uo=>nn[Uo]===Ir);if(!Yr&&Ji&&(Yr=Cn.anchors.getName(Ir)||Cn.anchors.newName()),Yr)return`*${Yr}${Vn?" ":""}`;let Vs=Cn.anchors.getName(Ir)?"Alias node must be after source node":"Source node not found for alias node";throw new Error(`${Vs} [${Gr}]`)}constructor(Gr){super(),this.source=Gr,this.type=t.Type.ALIAS}set tag(Gr){throw new Error("Alias nodes cannot have tags")}toJSON(Gr,Ir){if(!Ir)return o(this.source,Gr,Ir);let{anchors:nn,maxAliasCount:Cn}=Ir,Vn=nn.get(this.source);if(!Vn||Vn.res===void 0){let Ji="This should not happen: Alias anchor was not resolved?";throw this.cstNode?new t.YAMLReferenceError(this.cstNode,Ji):new ReferenceError(Ji)}if(Cn>=0&&(Vn.count+=1,Vn.aliasCount===0&&(Vn.aliasCount=T(this.source,nn)),Vn.count*Vn.aliasCount>Cn)){let Ji="Excessive alias count indicates a resource exhaustion attack";throw this.cstNode?new t.YAMLReferenceError(this.cstNode,Ji):new ReferenceError(Ji)}return Vn.res}toString(Gr){return yai.stringify(this,Gr)}};t._defineProperty(O,"default",!0);function X(jr,Gr){let Ir=Gr instanceof g?Gr.value:Gr;for(let nn of jr)if(nn instanceof k&&(nn.key===Gr||nn.key===Ir||nn.key&&nn.key.value===Ir))return nn}var U=class extends m{add(jr,Gr){jr?jr instanceof k||(jr=new k(jr.key||jr,jr.value)):jr=new k(jr);let Ir=X(this.items,jr.key),nn=this.schema&&this.schema.sortMapEntries;if(Ir)if(Gr)Ir.value=jr.value;else throw new Error(`Key ${jr.key} already set`);else if(nn){let Cn=this.items.findIndex(Vn=>nn(jr,Vn)<0);Cn===-1?this.items.push(jr):this.items.splice(Cn,0,jr)}else this.items.push(jr)}delete(jr){let Gr=X(this.items,jr);return Gr?this.items.splice(this.items.indexOf(Gr),1).length>0:!1}get(jr,Gr){let Ir=X(this.items,jr),nn=Ir&&Ir.value;return!Gr&&nn instanceof g?nn.value:nn}has(jr){return!!X(this.items,jr)}set(jr,Gr){this.add(new k(jr,Gr),!0)}toJSON(jr,Gr,Ir){let nn=Ir?new Ir:Gr&&Gr.mapAsMap?new Map:{};Gr&&Gr.onCreate&&Gr.onCreate(nn);for(let Cn of this.items)Cn.addToJSMap(Gr,nn);return nn}toString(jr,Gr,Ir){if(!jr)return JSON.stringify(this);for(let nn of this.items)if(!(nn instanceof k))throw new Error(`Map items must all be pairs; found ${JSON.stringify(nn)} instead`);return super.toString(jr,{blockItem:nn=>nn.str,flowChars:{start:"{",end:"}"},isMap:!0,itemIndent:jr.indent||""},Gr,Ir)}},le="<<",ae=class extends k{constructor(jr){if(jr instanceof k){let Gr=jr.value;Gr instanceof B||(Gr=new B,Gr.items.push(jr.value),Gr.range=jr.value.range),super(jr.key,Gr),this.range=jr.range}else super(new g(le),new B);this.type=k.Type.MERGE_PAIR}addToJSMap(jr,Gr){for(let{source:Ir}of this.value.items){if(!(Ir instanceof U))throw new Error("Merge sources must be maps");let nn=Ir.toJSON(null,jr,Map);for(let[Cn,Vn]of nn)Gr instanceof Map?Gr.has(Cn)||Gr.set(Cn,Vn):Gr instanceof Set?Gr.add(Cn):Object.prototype.hasOwnProperty.call(Gr,Cn)||Object.defineProperty(Gr,Cn,{value:Vn,writable:!0,enumerable:!0,configurable:!0})}return Gr}toString(jr,Gr){let Ir=this.value;if(Ir.items.length>1)return super.toString(jr,Gr);this.value=Ir.items[0];let nn=super.toString(jr,Gr);return this.value=Ir,nn}},ge={defaultType:t.Type.BLOCK_LITERAL,lineWidth:76},fe={trueStr:"true",falseStr:"false"},pe={asBigInt:!1},he={nullStr:"null"},be={defaultType:t.Type.PLAIN,doubleQuoted:{jsonEncoding:!1,minMultiLineLength:40},fold:{lineWidth:80,minContentWidth:20}};function Te(jr,Gr,Ir){for(let{format:nn,test:Cn,resolve:Vn}of Gr)if(Cn){let Ji=jr.match(Cn);if(Ji){let Yr=Vn.apply(null,Ji);return Yr instanceof g||(Yr=new g(Yr)),nn&&(Yr.format=nn),Yr}}return Ir&&(jr=Ir(jr)),new g(jr)}var ke="flow",x="block",et="quoted",Ue=(jr,Gr)=>{let Ir=jr[Gr+1];for(;Ir===" "||Ir===" ";){do Ir=jr[Gr+=1];while(Ir&&Ir!==` +`);Ir=jr[Gr+1]}return Gr};function Je(jr,Gr,Ir,{indentAtStart:nn,lineWidth:Cn=80,minContentWidth:Vn=20,onFold:Ji,onOverflow:Yr}){if(!Cn||Cn<0)return jr;let Vs=Math.max(1+Vn,1+Cn-Gr.length);if(jr.length<=Vs)return jr;let Uo=[],ai={},da=Cn-Gr.length;typeof nn=="number"&&(nn>Cn-Math.max(2,Vn)?Uo.push(0):da=Cn-nn);let og,Zu,mg=!1,Lu=-1,ml=-1,wi=-1;Ir===x&&(Lu=Ue(jr,Lu),Lu!==-1&&(da=Lu+Vs));for(let $i;$i=jr[Lu+=1];){if(Ir===et&&$i==="\\"){switch(ml=Lu,jr[Lu+1]){case"x":Lu+=3;break;case"u":Lu+=5;break;case"U":Lu+=9;break;default:Lu+=1}wi=Lu}if($i===` +`)Ir===x&&(Lu=Ue(jr,Lu)),da=Lu+Vs,og=void 0;else{if($i===" "&&Zu&&Zu!==" "&&Zu!==` +`&&Zu!==" "){let ka=jr[Lu+1];ka&&ka!==" "&&ka!==` +`&&ka!==" "&&(og=Lu)}if(Lu>=da)if(og)Uo.push(og),da=og+Vs,og=void 0;else if(Ir===et){for(;Zu===" "||Zu===" ";)Zu=$i,$i=jr[Lu+=1],mg=!0;let ka=Lu>wi+1?Lu-2:ml-1;if(ai[ka])return jr;Uo.push(ka),ai[ka]=!0,da=ka+Vs,og=void 0}else mg=!0}Zu=$i}if(mg&&Yr&&Yr(),Uo.length===0)return jr;Ji&&Ji();let ts=jr.slice(0,Uo[0]);for(let $i=0;$ijr?Object.assign({indentAtStart:jr},be.fold):be.fold,ft=jr=>/^(%|---|\.\.\.)/m.test(jr);function Gt(jr,Gr,Ir){if(!Gr||Gr<0)return!1;let nn=Gr-Ir,Cn=jr.length;if(Cn<=nn)return!1;for(let Vn=0,Ji=0;Vnnn)return!0;if(Ji=Vn+1,Cn-Ji<=nn)return!1}return!0}function er(jr,Gr){let{implicitKey:Ir}=Gr,{jsonEncoding:nn,minMultiLineLength:Cn}=be.doubleQuoted,Vn=JSON.stringify(jr);if(nn)return Vn;let Ji=Gr.indent||(ft(jr)?" ":""),Yr="",Vs=0;for(let Uo=0,ai=Vn[Uo];ai;ai=Vn[++Uo])if(ai===" "&&Vn[Uo+1]==="\\"&&Vn[Uo+2]==="n"&&(Yr+=Vn.slice(Vs,Uo)+"\\ ",Uo+=1,Vs=Uo,ai="\\"),ai==="\\")switch(Vn[Uo+1]){case"u":{Yr+=Vn.slice(Vs,Uo);let da=Vn.substr(Uo+2,4);switch(da){case"0000":Yr+="\\0";break;case"0007":Yr+="\\a";break;case"000b":Yr+="\\v";break;case"001b":Yr+="\\e";break;case"0085":Yr+="\\N";break;case"00a0":Yr+="\\_";break;case"2028":Yr+="\\L";break;case"2029":Yr+="\\P";break;default:da.substr(0,2)==="00"?Yr+="\\x"+da.substr(2):Yr+=Vn.substr(Uo,6)}Uo+=5,Vs=Uo+1}break;case"n":if(Ir||Vn[Uo+2]==='"'||Vn.length";if(!Ir)return Uo+` +`;let ai="",da="";if(Ir=Ir.replace(/[\n\t ]*$/,Zu=>{let mg=Zu.indexOf(` +`);return mg===-1?Uo+="-":(Ir===Zu||mg!==Zu.length-1)&&(Uo+="+",Vn&&Vn()),da=Zu.replace(/\n$/,""),""}).replace(/^[\n ]*/,Zu=>{Zu.indexOf(" ")!==-1&&(Uo+=Yr);let mg=Zu.match(/ +$/);return mg?(ai=Zu.slice(0,-mg[0].length),mg[0]):(ai=Zu,"")}),da&&(da=da.replace(/\n+(?!\n|$)/g,`$&${Ji}`)),ai&&(ai=ai.replace(/\n+/g,`$&${Ji}`)),jr&&(Uo+=" #"+jr.replace(/ ?[\r\n]+/g," "),Cn&&Cn()),!Ir)return`${Uo}${Yr} +${Ji}${da}`;if(Vs)return Ir=Ir.replace(/\n+/g,`$&${Ji}`),`${Uo} +${Ji}${ai}${Ir}${da}`;Ir=Ir.replace(/\n+/g,` +$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${Ji}`);let og=Je(`${ai}${Ir}${da}`,Ji,x,be.fold);return`${Uo} +${Ji}${og}`}function dr(jr,Gr,Ir,nn){let{comment:Cn,type:Vn,value:Ji}=jr,{actualString:Yr,implicitKey:Vs,indent:Uo,inFlow:ai}=Gr;if(Vs&&/[\n[\]{},]/.test(Ji)||ai&&/[[\]{},]/.test(Ji))return er(Ji,Gr);if(!Ji||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(Ji))return Vs||ai||Ji.indexOf(` +`)===-1?Ji.indexOf('"')!==-1&&Ji.indexOf("'")===-1?Ur(Ji,Gr):er(Ji,Gr):Ot(jr,Gr,Ir,nn);if(!Vs&&!ai&&Vn!==t.Type.PLAIN&&Ji.indexOf(` +`)!==-1)return Ot(jr,Gr,Ir,nn);if(Uo===""&&ft(Ji))return Gr.forceBlockIndent=!0,Ot(jr,Gr,Ir,nn);let da=Ji.replace(/\n+/g,`$& +${Uo}`);if(Yr){let{tags:Zu}=Gr.doc.schema;if(typeof Te(da,Zu,Zu.scalarFallback).value!="string")return er(Ji,Gr)}let og=Vs?da:Je(da,Uo,ke,Xe(Gr));return Cn&&!ai&&(og.indexOf(` `)!==-1||Cn.indexOf(` -`)!==-1)?(Ir&&Ir(),r(sg,Ko,Cn)):sg}function Ar(jr,Gr,Ir,nn){let{defaultType:Cn}=be,{implicitKey:Vn,inFlow:Ji}=Gr,{type:Hr,value:Ws}=jr;typeof Ws!="string"&&(Ws=String(Ws),jr=Object.assign({},jr,{value:Ws}));let Ko=pa=>{switch(pa){case t.Type.BLOCK_FOLDED:case t.Type.BLOCK_LITERAL:return Ot(jr,Gr,Ir,nn);case t.Type.QUOTE_DOUBLE:return er(Ws,Gr);case t.Type.QUOTE_SINGLE:return Ur(Ws,Gr);case t.Type.PLAIN:return dr(jr,Gr,Ir,nn);default:return null}};(Hr!==t.Type.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f]/.test(Ws)||(Vn||Ji)&&(Hr===t.Type.BLOCK_FOLDED||Hr===t.Type.BLOCK_LITERAL))&&(Hr=t.Type.QUOTE_DOUBLE);let ai=Ko(Hr);if(ai===null&&(ai=Ko(Cn),ai===null))throw new Error(`Unsupported default string type ${Cn}`);return ai}function or({format:jr,minFractionDigits:Gr,tag:Ir,value:nn}){if(typeof nn=="bigint")return String(nn);if(!isFinite(nn))return isNaN(nn)?".nan":nn<0?"-.inf":".inf";let Cn=JSON.stringify(nn);if(!jr&&Gr&&(!Ir||Ir==="tag:yaml.org,2002:float")&&/^\d/.test(Cn)){let Vn=Cn.indexOf(".");Vn<0&&(Vn=Cn.length,Cn+=".");let Ji=Gr-(Cn.length-Vn-1);for(;Ji-- >0;)Cn+="0"}return Cn}function Fr(jr,Gr){let Ir,nn;switch(Gr.type){case t.Type.FLOW_MAP:Ir="}",nn="flow map";break;case t.Type.FLOW_SEQ:Ir="]",nn="flow sequence";break;default:jr.push(new t.YAMLSemanticError(Gr,"Not a flow collection!?"));return}let Cn;for(let Vn=Gr.items.length-1;Vn>=0;--Vn){let Ji=Gr.items[Vn];if(!Ji||Ji.type!==t.Type.COMMENT){Cn=Ji;break}}if(Cn&&Cn.char!==Ir){let Vn=`Expected ${nn} to end with ${Ir}`,Ji;typeof Cn.offset=="number"?(Ji=new t.YAMLSemanticError(Gr,Vn),Ji.offset=Cn.offset+1):(Ji=new t.YAMLSemanticError(Cn,Vn),Cn.range&&Cn.range.end&&(Ji.offset=Cn.range.end-Cn.range.start)),jr.push(Ji)}}function $r(jr,Gr){let Ir=Gr.context.src[Gr.range.start-1];if(Ir!==` +`)!==-1)?(Ir&&Ir(),r(og,Uo,Cn)):og}function Ar(jr,Gr,Ir,nn){let{defaultType:Cn}=be,{implicitKey:Vn,inFlow:Ji}=Gr,{type:Yr,value:Vs}=jr;typeof Vs!="string"&&(Vs=String(Vs),jr=Object.assign({},jr,{value:Vs}));let Uo=da=>{switch(da){case t.Type.BLOCK_FOLDED:case t.Type.BLOCK_LITERAL:return Ot(jr,Gr,Ir,nn);case t.Type.QUOTE_DOUBLE:return er(Vs,Gr);case t.Type.QUOTE_SINGLE:return Ur(Vs,Gr);case t.Type.PLAIN:return dr(jr,Gr,Ir,nn);default:return null}};(Yr!==t.Type.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f]/.test(Vs)||(Vn||Ji)&&(Yr===t.Type.BLOCK_FOLDED||Yr===t.Type.BLOCK_LITERAL))&&(Yr=t.Type.QUOTE_DOUBLE);let ai=Uo(Yr);if(ai===null&&(ai=Uo(Cn),ai===null))throw new Error(`Unsupported default string type ${Cn}`);return ai}function or({format:jr,minFractionDigits:Gr,tag:Ir,value:nn}){if(typeof nn=="bigint")return String(nn);if(!isFinite(nn))return isNaN(nn)?".nan":nn<0?"-.inf":".inf";let Cn=JSON.stringify(nn);if(!jr&&Gr&&(!Ir||Ir==="tag:yaml.org,2002:float")&&/^\d/.test(Cn)){let Vn=Cn.indexOf(".");Vn<0&&(Vn=Cn.length,Cn+=".");let Ji=Gr-(Cn.length-Vn-1);for(;Ji-- >0;)Cn+="0"}return Cn}function Fr(jr,Gr){let Ir,nn;switch(Gr.type){case t.Type.FLOW_MAP:Ir="}",nn="flow map";break;case t.Type.FLOW_SEQ:Ir="]",nn="flow sequence";break;default:jr.push(new t.YAMLSemanticError(Gr,"Not a flow collection!?"));return}let Cn;for(let Vn=Gr.items.length-1;Vn>=0;--Vn){let Ji=Gr.items[Vn];if(!Ji||Ji.type!==t.Type.COMMENT){Cn=Ji;break}}if(Cn&&Cn.char!==Ir){let Vn=`Expected ${nn} to end with ${Ir}`,Ji;typeof Cn.offset=="number"?(Ji=new t.YAMLSemanticError(Gr,Vn),Ji.offset=Cn.offset+1):(Ji=new t.YAMLSemanticError(Cn,Vn),Cn.range&&Cn.range.end&&(Ji.offset=Cn.range.end-Cn.range.start)),jr.push(Ji)}}function $r(jr,Gr){let Ir=Gr.context.src[Gr.range.start-1];if(Ir!==` `&&Ir!==" "&&Ir!==" "){let nn="Comments must be separated from other tokens by white space characters";jr.push(new t.YAMLSemanticError(Gr,nn))}}function Or(jr,Gr){let Ir=String(Gr),nn=Ir.substr(0,8)+"..."+Ir.substr(-8);return new t.YAMLSemanticError(jr,`The "${nn}" key is too long`)}function In(jr,Gr){for(let{afterKey:Ir,before:nn,comment:Cn}of Gr){let Vn=jr.items[nn];Vn?(Ir&&Vn.value&&(Vn=Vn.value),Cn===void 0?(Ir||!Vn.commentBefore)&&(Vn.spaceBefore=!0):Vn.commentBefore?Vn.commentBefore+=` `+Cn:Vn.commentBefore=Cn):Cn!==void 0&&(jr.comment?jr.comment+=` -`+Cn:jr.comment=Cn)}}function Br(jr,Gr){let Ir=Gr.strValue;return Ir?typeof Ir=="string"?Ir:(Ir.errors.forEach(nn=>{nn.source||(nn.source=Gr),jr.errors.push(nn)}),Ir.str):""}function tr(jr,Gr){let{handle:Ir,suffix:nn}=Gr.tag,Cn=jr.tagPrefixes.find(Vn=>Vn.handle===Ir);if(!Cn){let Vn=jr.getDefaults().tagPrefixes;if(Vn&&(Cn=Vn.find(Ji=>Ji.handle===Ir)),!Cn)throw new t.YAMLSemanticError(Gr,`The ${Ir} tag handle is non-default and was not declared.`)}if(!nn)throw new t.YAMLSemanticError(Gr,`The ${Ir} tag has no suffix.`);if(Ir==="!"&&(jr.version||jr.options.version)==="1.0"){if(nn[0]==="^")return jr.warnings.push(new t.YAMLWarning(Gr,"YAML 1.0 ^ tag expansion is not supported")),nn;if(/[:/]/.test(nn)){let Vn=nn.match(/^([a-z0-9-]+)\/(.*)/i);return Vn?`tag:${Vn[1]}.yaml.org,2002:${Vn[2]}`:`tag:${nn}`}}return Cn.prefix+decodeURIComponent(nn)}function gn(jr,Gr){let{tag:Ir,type:nn}=Gr,Cn=!1;if(Ir){let{handle:Vn,suffix:Ji,verbatim:Hr}=Ir;if(Hr){if(Hr!=="!"&&Hr!=="!!")return Hr;let Ws=`Verbatim tags aren't resolved, so ${Hr} is invalid.`;jr.errors.push(new t.YAMLSemanticError(Gr,Ws))}else if(Vn==="!"&&!Ji)Cn=!0;else try{return tr(jr,Gr)}catch(Ws){jr.errors.push(Ws)}}switch(nn){case t.Type.BLOCK_FOLDED:case t.Type.BLOCK_LITERAL:case t.Type.QUOTE_DOUBLE:case t.Type.QUOTE_SINGLE:return t.defaultTags.STR;case t.Type.FLOW_MAP:case t.Type.MAP:return t.defaultTags.MAP;case t.Type.FLOW_SEQ:case t.Type.SEQ:return t.defaultTags.SEQ;case t.Type.PLAIN:return Cn?t.defaultTags.STR:null;default:return null}}function Gn(jr,Gr,Ir){let{tags:nn}=jr.schema,Cn=[];for(let Ji of nn)if(Ji.tag===Ir)if(Ji.test)Cn.push(Ji);else{let Hr=Ji.resolve(jr,Gr);return Hr instanceof m?Hr:new g(Hr)}let Vn=Br(jr,Gr);return typeof Vn=="string"&&Cn.length>0?Te(Vn,Cn,nn.scalarFallback):null}function we({type:jr}){switch(jr){case t.Type.FLOW_MAP:case t.Type.MAP:return t.defaultTags.MAP;case t.Type.FLOW_SEQ:case t.Type.SEQ:return t.defaultTags.SEQ;default:return t.defaultTags.STR}}function Zi(jr,Gr,Ir){try{let nn=Gn(jr,Gr,Ir);if(nn)return Ir&&Gr.tag&&(nn.tag=Ir),nn}catch(nn){return nn.source||(nn.source=Gr),jr.errors.push(nn),null}try{let nn=we(Gr);if(!nn)throw new Error(`The tag ${Ir} is unavailable`);let Cn=`The tag ${Ir} is unavailable, falling back to ${nn}`;jr.warnings.push(new t.YAMLWarning(Gr,Cn));let Vn=Gn(jr,Gr,nn);return Vn.tag=Ir,Vn}catch(nn){let Cn=new t.YAMLReferenceError(Gr,nn.message);return Cn.stack=nn.stack,jr.errors.push(Cn),null}}var Za=jr=>{if(!jr)return!1;let{type:Gr}=jr;return Gr===t.Type.MAP_KEY||Gr===t.Type.MAP_VALUE||Gr===t.Type.SEQ_ITEM};function ka(jr,Gr){let Ir={before:[],after:[]},nn=!1,Cn=!1,Vn=Za(Gr.context.parent)?Gr.context.parent.props.concat(Gr.props):Gr.props;for(let{start:Ji,end:Hr}of Vn)switch(Gr.context.src[Ji]){case t.Char.COMMENT:{if(!Gr.commentHasRequiredWhitespace(Ji)){let ai="Comments must be separated from other tokens by white space characters";jr.push(new t.YAMLSemanticError(Gr,ai))}let{header:Ws,valueRange:Ko}=Gr;(Ko&&(Ji>Ko.start||Ws&&Ji>Ws.start)?Ir.after:Ir.before).push(Gr.context.src.slice(Ji+1,Hr));break}case t.Char.ANCHOR:if(nn){let Ws="A node can have at most one anchor";jr.push(new t.YAMLSemanticError(Gr,Ws))}nn=!0;break;case t.Char.TAG:if(Cn){let Ws="A node can have at most one tag";jr.push(new t.YAMLSemanticError(Gr,Ws))}Cn=!0;break}return{comments:Ir,hasAnchor:nn,hasTag:Cn}}function Qs(jr,Gr){let{anchors:Ir,errors:nn,schema:Cn}=jr;if(Gr.type===t.Type.ALIAS){let Ji=Gr.rawValue,Hr=Ir.getNode(Ji);if(!Hr){let Ko=`Aliased anchor not found: ${Ji}`;return nn.push(new t.YAMLReferenceError(Gr,Ko)),null}let Ws=new O(Hr);return Ir._cstAliases.push(Ws),Ws}let Vn=gn(jr,Gr);if(Vn)return Zi(jr,Gr,Vn);if(Gr.type!==t.Type.PLAIN){let Ji=`Failed to resolve ${Gr.type} node here`;return nn.push(new t.YAMLSyntaxError(Gr,Ji)),null}try{let Ji=Br(jr,Gr);return Te(Ji,Cn.tags,Cn.tags.scalarFallback)}catch(Ji){return Ji.source||(Ji.source=Gr),nn.push(Ji),null}}function lr(jr,Gr){if(!Gr)return null;Gr.error&&jr.errors.push(Gr.error);let{comments:Ir,hasAnchor:nn,hasTag:Cn}=ka(jr.errors,Gr);if(nn){let{anchors:Ji}=jr,Hr=Gr.anchor,Ws=Ji.getNode(Hr);Ws&&(Ji.map[Ji.newName(Hr)]=Ws),Ji.map[Hr]=Gr}if(Gr.type===t.Type.ALIAS&&(nn||Cn)){let Ji="An alias node must not specify any properties";jr.errors.push(new t.YAMLSemanticError(Gr,Ji))}let Vn=Qs(jr,Gr);if(Vn){Vn.range=[Gr.range.start,Gr.range.end],jr.options.keepCstNodes&&(Vn.cstNode=Gr),jr.options.keepNodeTypes&&(Vn.type=Gr.type);let Ji=Ir.before.join(` +`+Cn:jr.comment=Cn)}}function Br(jr,Gr){let Ir=Gr.strValue;return Ir?typeof Ir=="string"?Ir:(Ir.errors.forEach(nn=>{nn.source||(nn.source=Gr),jr.errors.push(nn)}),Ir.str):""}function tr(jr,Gr){let{handle:Ir,suffix:nn}=Gr.tag,Cn=jr.tagPrefixes.find(Vn=>Vn.handle===Ir);if(!Cn){let Vn=jr.getDefaults().tagPrefixes;if(Vn&&(Cn=Vn.find(Ji=>Ji.handle===Ir)),!Cn)throw new t.YAMLSemanticError(Gr,`The ${Ir} tag handle is non-default and was not declared.`)}if(!nn)throw new t.YAMLSemanticError(Gr,`The ${Ir} tag has no suffix.`);if(Ir==="!"&&(jr.version||jr.options.version)==="1.0"){if(nn[0]==="^")return jr.warnings.push(new t.YAMLWarning(Gr,"YAML 1.0 ^ tag expansion is not supported")),nn;if(/[:/]/.test(nn)){let Vn=nn.match(/^([a-z0-9-]+)\/(.*)/i);return Vn?`tag:${Vn[1]}.yaml.org,2002:${Vn[2]}`:`tag:${nn}`}}return Cn.prefix+decodeURIComponent(nn)}function gn(jr,Gr){let{tag:Ir,type:nn}=Gr,Cn=!1;if(Ir){let{handle:Vn,suffix:Ji,verbatim:Yr}=Ir;if(Yr){if(Yr!=="!"&&Yr!=="!!")return Yr;let Vs=`Verbatim tags aren't resolved, so ${Yr} is invalid.`;jr.errors.push(new t.YAMLSemanticError(Gr,Vs))}else if(Vn==="!"&&!Ji)Cn=!0;else try{return tr(jr,Gr)}catch(Vs){jr.errors.push(Vs)}}switch(nn){case t.Type.BLOCK_FOLDED:case t.Type.BLOCK_LITERAL:case t.Type.QUOTE_DOUBLE:case t.Type.QUOTE_SINGLE:return t.defaultTags.STR;case t.Type.FLOW_MAP:case t.Type.MAP:return t.defaultTags.MAP;case t.Type.FLOW_SEQ:case t.Type.SEQ:return t.defaultTags.SEQ;case t.Type.PLAIN:return Cn?t.defaultTags.STR:null;default:return null}}function Gn(jr,Gr,Ir){let{tags:nn}=jr.schema,Cn=[];for(let Ji of nn)if(Ji.tag===Ir)if(Ji.test)Cn.push(Ji);else{let Yr=Ji.resolve(jr,Gr);return Yr instanceof m?Yr:new g(Yr)}let Vn=Br(jr,Gr);return typeof Vn=="string"&&Cn.length>0?Te(Vn,Cn,nn.scalarFallback):null}function we({type:jr}){switch(jr){case t.Type.FLOW_MAP:case t.Type.MAP:return t.defaultTags.MAP;case t.Type.FLOW_SEQ:case t.Type.SEQ:return t.defaultTags.SEQ;default:return t.defaultTags.STR}}function Zi(jr,Gr,Ir){try{let nn=Gn(jr,Gr,Ir);if(nn)return Ir&&Gr.tag&&(nn.tag=Ir),nn}catch(nn){return nn.source||(nn.source=Gr),jr.errors.push(nn),null}try{let nn=we(Gr);if(!nn)throw new Error(`The tag ${Ir} is unavailable`);let Cn=`The tag ${Ir} is unavailable, falling back to ${nn}`;jr.warnings.push(new t.YAMLWarning(Gr,Cn));let Vn=Gn(jr,Gr,nn);return Vn.tag=Ir,Vn}catch(nn){let Cn=new t.YAMLReferenceError(Gr,nn.message);return Cn.stack=nn.stack,jr.errors.push(Cn),null}}var Fa=jr=>{if(!jr)return!1;let{type:Gr}=jr;return Gr===t.Type.MAP_KEY||Gr===t.Type.MAP_VALUE||Gr===t.Type.SEQ_ITEM};function xa(jr,Gr){let Ir={before:[],after:[]},nn=!1,Cn=!1,Vn=Fa(Gr.context.parent)?Gr.context.parent.props.concat(Gr.props):Gr.props;for(let{start:Ji,end:Yr}of Vn)switch(Gr.context.src[Ji]){case t.Char.COMMENT:{if(!Gr.commentHasRequiredWhitespace(Ji)){let ai="Comments must be separated from other tokens by white space characters";jr.push(new t.YAMLSemanticError(Gr,ai))}let{header:Vs,valueRange:Uo}=Gr;(Uo&&(Ji>Uo.start||Vs&&Ji>Vs.start)?Ir.after:Ir.before).push(Gr.context.src.slice(Ji+1,Yr));break}case t.Char.ANCHOR:if(nn){let Vs="A node can have at most one anchor";jr.push(new t.YAMLSemanticError(Gr,Vs))}nn=!0;break;case t.Char.TAG:if(Cn){let Vs="A node can have at most one tag";jr.push(new t.YAMLSemanticError(Gr,Vs))}Cn=!0;break}return{comments:Ir,hasAnchor:nn,hasTag:Cn}}function Qs(jr,Gr){let{anchors:Ir,errors:nn,schema:Cn}=jr;if(Gr.type===t.Type.ALIAS){let Ji=Gr.rawValue,Yr=Ir.getNode(Ji);if(!Yr){let Uo=`Aliased anchor not found: ${Ji}`;return nn.push(new t.YAMLReferenceError(Gr,Uo)),null}let Vs=new O(Yr);return Ir._cstAliases.push(Vs),Vs}let Vn=gn(jr,Gr);if(Vn)return Zi(jr,Gr,Vn);if(Gr.type!==t.Type.PLAIN){let Ji=`Failed to resolve ${Gr.type} node here`;return nn.push(new t.YAMLSyntaxError(Gr,Ji)),null}try{let Ji=Br(jr,Gr);return Te(Ji,Cn.tags,Cn.tags.scalarFallback)}catch(Ji){return Ji.source||(Ji.source=Gr),nn.push(Ji),null}}function lr(jr,Gr){if(!Gr)return null;Gr.error&&jr.errors.push(Gr.error);let{comments:Ir,hasAnchor:nn,hasTag:Cn}=xa(jr.errors,Gr);if(nn){let{anchors:Ji}=jr,Yr=Gr.anchor,Vs=Ji.getNode(Yr);Vs&&(Ji.map[Ji.newName(Yr)]=Vs),Ji.map[Yr]=Gr}if(Gr.type===t.Type.ALIAS&&(nn||Cn)){let Ji="An alias node must not specify any properties";jr.errors.push(new t.YAMLSemanticError(Gr,Ji))}let Vn=Qs(jr,Gr);if(Vn){Vn.range=[Gr.range.start,Gr.range.end],jr.options.keepCstNodes&&(Vn.cstNode=Gr),jr.options.keepNodeTypes&&(Vn.type=Gr.type);let Ji=Ir.before.join(` `);Ji&&(Vn.commentBefore=Vn.commentBefore?`${Vn.commentBefore} -${Ji}`:Ji);let Hr=Ir.after.join(` -`);Hr&&(Vn.comment=Vn.comment?`${Vn.comment} -${Hr}`:Hr)}return Gr.resolved=Vn}function ga(jr,Gr){if(Gr.type!==t.Type.MAP&&Gr.type!==t.Type.FLOW_MAP){let Ji=`A ${Gr.type} node cannot be resolved as a mapping`;return jr.errors.push(new t.YAMLSyntaxError(Gr,Ji)),null}let{comments:Ir,items:nn}=Gr.type===t.Type.FLOW_MAP?YA(jr,Gr):Yu(jr,Gr),Cn=new U;Cn.items=nn,In(Cn,Ir);let Vn=!1;for(let Ji=0;Ji{if(ai instanceof O){let{type:pa}=ai.source;return pa===t.Type.MAP||pa===t.Type.FLOW_MAP?!1:Ko="Merge nodes aliases can only point to maps"}return Ko="Merge nodes can only have Alias nodes as values"}),Ko&&jr.errors.push(new t.YAMLSemanticError(Gr,Ko))}else for(let Ws=Ji+1;Ws{if(nn.length===0)return!1;let{start:Cn}=nn[0];if(Gr&&Cn>Gr.valueRange.start||Ir[Cn]!==t.Char.COMMENT)return!1;for(let Vn=jr;Vn0){Ws=new t.PlainValue(t.Type.PLAIN,[]),Ws.context={parent:Hr,src:Hr.context.src};let ai=Hr.range.start+1;if(Ws.range={start:ai,end:ai},Ws.valueRange={start:ai,end:ai},typeof Hr.range.origStart=="number"){let pa=Hr.range.origStart+1;Ws.range.origStart=Ws.range.origEnd=pa,Ws.valueRange.origStart=Ws.valueRange.origEnd=pa}}let Ko=new G(Cn,lr(jr,Ws));Qu(Hr,Ko),nn.push(Ko),Cn&&typeof Vn=="number"&&Hr.range.start>Vn+1024&&jr.errors.push(Or(Gr,Cn)),Cn=void 0,Vn=null}break;default:Cn!==void 0&&nn.push(new G(Cn)),Cn=lr(jr,Hr),Vn=Hr.range.start,Hr.error&&jr.errors.push(Hr.error);e:for(let Ws=Ji+1;;++Ws){let Ko=Gr.items[Ws];switch(Ko&&Ko.type){case t.Type.BLANK_LINE:case t.Type.COMMENT:continue e;case t.Type.MAP_VALUE:break e;default:{let ai="Implicit map keys need to be followed by map values";jr.errors.push(new t.YAMLSemanticError(Hr,ai));break e}}}if(Hr.valueRangeContainsNewline){let Ws="Implicit map keys need to be on a single line";jr.errors.push(new t.YAMLSemanticError(Hr,Ws))}}}return Cn!==void 0&&nn.push(new G(Cn)),{comments:Ir,items:nn}}function YA(jr,Gr){let Ir=[],nn=[],Cn,Vn=!1,Ji="{";for(let Hr=0;HrVn instanceof G&&Vn.key instanceof m)){let Vn="Keys with collection values will be stringified as YAML due to JS Object restrictions. Use mapAsMap: true to avoid this.";jr.warnings.push(new t.YAMLWarning(Gr,Vn))}return Gr.resolved=Cn,Cn}function TA(jr,Gr){let Ir=[],nn=[];for(let Cn=0;CnJi+1024&&jr.errors.push(Or(Gr,Vn));let{src:Cg}=Ws.context;for(let Zu=Ji;Zu{"use strict";var t=yfe(),r=DYe(),s={identify:Te=>Te instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve:(Te,ke)=>{let x=r.resolveString(Te,ke);if(typeof Buffer=="function")return Buffer.from(x,"base64");if(typeof atob=="function"){let et=atob(x.replace(/[\n\r]/g,"")),Ue=new Uint8Array(et.length);for(let Je=0;Je{let Xe;if(typeof Buffer=="function")Xe=x instanceof Buffer?x.toString("base64"):Buffer.from(x.buffer).toString("base64");else if(typeof btoa=="function"){let ft="";for(let Gt=0;Gt{if(ai instanceof O){let{type:da}=ai.source;return da===t.Type.MAP||da===t.Type.FLOW_MAP?!1:Uo="Merge nodes aliases can only point to maps"}return Uo="Merge nodes can only have Alias nodes as values"}),Uo&&jr.errors.push(new t.YAMLSemanticError(Gr,Uo))}else for(let Vs=Ji+1;Vs{if(nn.length===0)return!1;let{start:Cn}=nn[0];if(Gr&&Cn>Gr.valueRange.start||Ir[Cn]!==t.Char.COMMENT)return!1;for(let Vn=jr;Vn0){Vs=new t.PlainValue(t.Type.PLAIN,[]),Vs.context={parent:Yr,src:Yr.context.src};let ai=Yr.range.start+1;if(Vs.range={start:ai,end:ai},Vs.valueRange={start:ai,end:ai},typeof Yr.range.origStart=="number"){let da=Yr.range.origStart+1;Vs.range.origStart=Vs.range.origEnd=da,Vs.valueRange.origStart=Vs.valueRange.origEnd=da}}let Uo=new k(Cn,lr(jr,Vs));Hu(Yr,Uo),nn.push(Uo),Cn&&typeof Vn=="number"&&Yr.range.start>Vn+1024&&jr.errors.push(Or(Gr,Cn)),Cn=void 0,Vn=null}break;default:Cn!==void 0&&nn.push(new k(Cn)),Cn=lr(jr,Yr),Vn=Yr.range.start,Yr.error&&jr.errors.push(Yr.error);e:for(let Vs=Ji+1;;++Vs){let Uo=Gr.items[Vs];switch(Uo&&Uo.type){case t.Type.BLANK_LINE:case t.Type.COMMENT:continue e;case t.Type.MAP_VALUE:break e;default:{let ai="Implicit map keys need to be followed by map values";jr.errors.push(new t.YAMLSemanticError(Yr,ai));break e}}}if(Yr.valueRangeContainsNewline){let Vs="Implicit map keys need to be on a single line";jr.errors.push(new t.YAMLSemanticError(Yr,Vs))}}}return Cn!==void 0&&nn.push(new k(Cn)),{comments:Ir,items:nn}}function YA(jr,Gr){let Ir=[],nn=[],Cn,Vn=!1,Ji="{";for(let Yr=0;YrVn instanceof k&&Vn.key instanceof m)){let Vn="Keys with collection values will be stringified as YAML due to JS Object restrictions. Use mapAsMap: true to avoid this.";jr.warnings.push(new t.YAMLWarning(Gr,Vn))}return Gr.resolved=Cn,Cn}function NA(jr,Gr){let Ir=[],nn=[];for(let Cn=0;CnJi+1024&&jr.errors.push(Or(Gr,Vn));let{src:mg}=Vs.context;for(let Lu=Ji;Lu{"use strict";var t=wfe(),r=kMe(),s={identify:Te=>Te instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve:(Te,ke)=>{let x=r.resolveString(Te,ke);if(typeof Buffer=="function")return Buffer.from(x,"base64");if(typeof atob=="function"){let et=atob(x.replace(/[\n\r]/g,"")),Ue=new Uint8Array(et.length);for(let Je=0;Je{let Xe;if(typeof Buffer=="function")Xe=x instanceof Buffer?x.toString("base64"):Buffer.from(x.buffer).toString("base64");else if(typeof btoa=="function"){let ft="";for(let Gt=0;Gt1){let Xe="Each pair must have its own sequence indicator";throw new t.YAMLSemanticError(ke,Xe)}let Je=Ue.items[0]||new r.Pair;Ue.commentBefore&&(Je.commentBefore=Je.commentBefore?`${Ue.commentBefore} ${Je.commentBefore}`:Ue.commentBefore),Ue.comment&&(Je.comment=Je.comment?`${Ue.comment} -${Je.comment}`:Ue.comment),Ue=Je}x.items[et]=Ue instanceof r.Pair?Ue:new r.Pair(Ue)}}return x}function o(Te,ke,x){let et=new r.YAMLSeq(Te);et.tag="tag:yaml.org,2002:pairs";for(let Ue of ke){let Je,Xe;if(Array.isArray(Ue))if(Ue.length===2)Je=Ue[0],Xe=Ue[1];else throw new TypeError(`Expected [key, value] tuple: ${Ue}`);else if(Ue&&Ue instanceof Object){let Gt=Object.keys(Ue);if(Gt.length===1)Je=Gt[0],Xe=Ue[Je];else throw new TypeError(`Expected { key: value } tuple: ${Ue}`)}else Je=Ue;let ft=Te.createPair(Je,Xe,x);et.items.push(ft)}return et}var g={default:!1,tag:"tag:yaml.org,2002:pairs",resolve:a,createNode:o},p=class fai extends r.YAMLSeq{constructor(){super(),t._defineProperty(this,"add",r.YAMLMap.prototype.add.bind(this)),t._defineProperty(this,"delete",r.YAMLMap.prototype.delete.bind(this)),t._defineProperty(this,"get",r.YAMLMap.prototype.get.bind(this)),t._defineProperty(this,"has",r.YAMLMap.prototype.has.bind(this)),t._defineProperty(this,"set",r.YAMLMap.prototype.set.bind(this)),this.tag=fai.tag}toJSON(ke,x){let et=new Map;x&&x.onCreate&&x.onCreate(et);for(let Ue of this.items){let Je,Xe;if(Ue instanceof r.Pair?(Je=r.toJSON(Ue.key,"",x),Xe=r.toJSON(Ue.value,Je,x)):Je=r.toJSON(Ue,"",x),et.has(Je))throw new Error("Ordered maps must not include duplicate keys");et.set(Je,Xe)}return et}};t._defineProperty(p,"tag","tag:yaml.org,2002:omap");function f(Te,ke){let x=a(Te,ke),et=[];for(let{key:Ue}of x.items)if(Ue instanceof r.Scalar)if(et.includes(Ue.value)){let Je="Ordered maps must not include duplicate keys";throw new t.YAMLSemanticError(ke,Je)}else et.push(Ue.value);return Object.assign(new p,x)}function m(Te,ke,x){let et=o(Te,ke,x),Ue=new p;return Ue.items=et.items,Ue}var y={identify:Te=>Te instanceof Map,nodeClass:p,default:!1,tag:"tag:yaml.org,2002:omap",resolve:f,createNode:m},B=class Iai extends r.YAMLMap{constructor(){super(),this.tag=Iai.tag}add(ke){let x=ke instanceof r.Pair?ke:new r.Pair(ke);r.findPair(this.items,x.key)||this.items.push(x)}get(ke,x){let et=r.findPair(this.items,ke);return!x&&et instanceof r.Pair?et.key instanceof r.Scalar?et.key.value:et.key:et}set(ke,x){if(typeof x!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof x}`);let et=r.findPair(this.items,ke);et&&!x?this.items.splice(this.items.indexOf(et),1):!et&&x&&this.items.push(new r.Pair(ke))}toJSON(ke,x){return super.toJSON(ke,x,Set)}toString(ke,x,et){if(!ke)return JSON.stringify(this);if(this.hasAllNullValues())return super.toString(ke,x,et);throw new Error("Set items must all have null values")}};t._defineProperty(B,"tag","tag:yaml.org,2002:set");function v(Te,ke){let x=r.resolveMap(Te,ke);if(!x.hasAllNullValues())throw new t.YAMLSemanticError(ke,"Set items must all have null values");return Object.assign(new B,x)}function G(Te,ke,x){let et=new B;for(let Ue of ke)et.items.push(Te.createPair(Ue,null,x));return et}var T={identify:Te=>Te instanceof Set,nodeClass:B,default:!1,tag:"tag:yaml.org,2002:set",resolve:v,createNode:G},O=(Te,ke)=>{let x=ke.split(":").reduce((et,Ue)=>et*60+Number(Ue),0);return Te==="-"?-x:x},X=({value:Te})=>{if(isNaN(Te)||!isFinite(Te))return r.stringifyNumber(Te);let ke="";Te<0&&(ke="-",Te=Math.abs(Te));let x=[Te%60];return Te<60?x.unshift(0):(Te=Math.round((Te-x[0])/60),x.unshift(Te%60),Te>=60&&(Te=Math.round((Te-x[0])/60),x.unshift(Te))),ke+x.map(et=>et<10?"0"+String(et):String(et)).join(":").replace(/000000\d*$/,"")},U={identify:Te=>typeof Te=="number",default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+)$/,resolve:(Te,ke,x)=>O(ke,x.replace(/_/g,"")),stringify:X},le={identify:Te=>typeof Te=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*)$/,resolve:(Te,ke,x)=>O(ke,x.replace(/_/g,"")),stringify:X},ae={identify:Te=>Te instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^(?:([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?)$"),resolve:(Te,ke,x,et,Ue,Je,Xe,ft,Gt)=>{ft&&(ft=(ft+"00").substr(1,3));let er=Date.UTC(ke,x-1,et,Ue||0,Je||0,Xe||0,ft||0);if(Gt&&Gt!=="Z"){let Ur=O(Gt[0],Gt.slice(1));Math.abs(Ur)<30&&(Ur*=60),er-=6e4*Ur}return new Date(er)},stringify:({value:Te})=>Te.toISOString().replace(/((T00:00)?:00)?\.000Z$/,"")};function ge(Te){let ke={};return Te?typeof YAML_SILENCE_DEPRECATION_WARNINGS<"u"?!YAML_SILENCE_DEPRECATION_WARNINGS:!ke.YAML_SILENCE_DEPRECATION_WARNINGS:typeof YAML_SILENCE_WARNINGS<"u"?!YAML_SILENCE_WARNINGS:!ke.YAML_SILENCE_WARNINGS}function fe(Te,ke){ge(!1)&&console.warn(ke?`${ke}: ${Te}`:Te)}function pe(Te){if(ge(!0)){let ke=Te.replace(/.*yaml[/\\]/i,"").replace(/\.js$/,"").replace(/\\/g,"/");fe(`The endpoint 'yaml/${ke}' will be removed in a future release.`,"DeprecationWarning")}}var he={};function be(Te,ke){if(!he[Te]&&ge(!0)){he[Te]=!0;let x=`The option '${Te}' will be removed in a future release`;x+=ke?`, use '${ke}' instead.`:".",fe(x,"DeprecationWarning")}}e.binary=s,e.floatTime=le,e.intTime=U,e.omap=y,e.pairs=g,e.set=T,e.timestamp=ae,e.warn=fe,e.warnFileDeprecation=pe,e.warnOptionDeprecation=be}),Cai=jz(e=>{"use strict";var t=yfe(),r=DYe(),s=pai();function a(dr,Ar,or){let Fr=new r.YAMLMap(dr);if(Ar instanceof Map)for(let[$r,Or]of Ar)Fr.items.push(dr.createPair($r,Or,or));else if(Ar&&typeof Ar=="object")for(let $r of Object.keys(Ar))Fr.items.push(dr.createPair($r,Ar[$r],or));return typeof dr.sortMapEntries=="function"&&Fr.items.sort(dr.sortMapEntries),Fr}var o={createNode:a,default:!0,nodeClass:r.YAMLMap,tag:"tag:yaml.org,2002:map",resolve:r.resolveMap};function g(dr,Ar,or){let Fr=new r.YAMLSeq(dr);if(Ar&&Ar[Symbol.iterator])for(let $r of Ar){let Or=dr.createNode($r,or.wrapScalars,null,or);Fr.items.push(Or)}return Fr}var p={createNode:g,default:!0,nodeClass:r.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve:r.resolveSeq},f={identify:dr=>typeof dr=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:r.resolveString,stringify(dr,Ar,or,Fr){return Ar=Object.assign({actualString:!0},Ar),r.stringifyString(dr,Ar,or,Fr)},options:r.strOptions},m=[o,p,f],y=dr=>typeof dr=="bigint"||Number.isInteger(dr),B=(dr,Ar,or)=>r.intOptions.asBigInt?BigInt(dr):parseInt(Ar,or);function v(dr,Ar,or){let{value:Fr}=dr;return y(Fr)&&Fr>=0?or+Fr.toString(Ar):r.stringifyNumber(dr)}var G={identify:dr=>dr==null,createNode:(dr,Ar,or)=>or.wrapScalars?new r.Scalar(null):null,default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>null,options:r.nullOptions,stringify:()=>r.nullOptions.nullStr},T={identify:dr=>typeof dr=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:dr=>dr[0]==="t"||dr[0]==="T",options:r.boolOptions,stringify:({value:dr})=>dr?r.boolOptions.trueStr:r.boolOptions.falseStr},O={identify:dr=>y(dr)&&dr>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o([0-7]+)$/,resolve:(dr,Ar)=>B(dr,Ar,8),options:r.intOptions,stringify:dr=>v(dr,8,"0o")},X={identify:y,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:dr=>B(dr,dr,10),options:r.intOptions,stringify:r.stringifyNumber},U={identify:dr=>y(dr)&&dr>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x([0-9a-fA-F]+)$/,resolve:(dr,Ar)=>B(dr,Ar,16),options:r.intOptions,stringify:dr=>v(dr,16,"0x")},le={identify:dr=>typeof dr=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.inf|(\.nan))$/i,resolve:(dr,Ar)=>Ar?NaN:dr[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:r.stringifyNumber},ae={identify:dr=>typeof dr=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:dr=>parseFloat(dr),stringify:({value:dr})=>Number(dr).toExponential()},ge={identify:dr=>typeof dr=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.([0-9]+)|[0-9]+\.([0-9]*))$/,resolve(dr,Ar,or){let Fr=Ar||or,$r=new r.Scalar(parseFloat(dr));return Fr&&Fr[Fr.length-1]==="0"&&($r.minFractionDigits=Fr.length),$r},stringify:r.stringifyNumber},fe=m.concat([G,T,O,X,U,le,ae,ge]),pe=dr=>typeof dr=="bigint"||Number.isInteger(dr),he=({value:dr})=>JSON.stringify(dr),be=[o,p,{identify:dr=>typeof dr=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:r.resolveString,stringify:he},{identify:dr=>dr==null,createNode:(dr,Ar,or)=>or.wrapScalars?new r.Scalar(null):null,default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:he},{identify:dr=>typeof dr=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true|false$/,resolve:dr=>dr==="true",stringify:he},{identify:pe,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:dr=>r.intOptions.asBigInt?BigInt(dr):parseInt(dr,10),stringify:({value:dr})=>pe(dr)?dr.toString():JSON.stringify(dr)},{identify:dr=>typeof dr=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:dr=>parseFloat(dr),stringify:he}];be.scalarFallback=dr=>{throw new SyntaxError(`Unresolved plain scalar ${JSON.stringify(dr)}`)};var Te=({value:dr})=>dr?r.boolOptions.trueStr:r.boolOptions.falseStr,ke=dr=>typeof dr=="bigint"||Number.isInteger(dr);function x(dr,Ar,or){let Fr=Ar.replace(/_/g,"");if(r.intOptions.asBigInt){switch(or){case 2:Fr=`0b${Fr}`;break;case 8:Fr=`0o${Fr}`;break;case 16:Fr=`0x${Fr}`;break}let Or=BigInt(Fr);return dr==="-"?BigInt(-1)*Or:Or}let $r=parseInt(Fr,or);return dr==="-"?-1*$r:$r}function et(dr,Ar,or){let{value:Fr}=dr;if(ke(Fr)){let $r=Fr.toString(Ar);return Fr<0?"-"+or+$r.substr(1):or+$r}return r.stringifyNumber(dr)}var Ue=m.concat([{identify:dr=>dr==null,createNode:(dr,Ar,or)=>or.wrapScalars?new r.Scalar(null):null,default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>null,options:r.nullOptions,stringify:()=>r.nullOptions.nullStr},{identify:dr=>typeof dr=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>!0,options:r.boolOptions,stringify:Te},{identify:dr=>typeof dr=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/i,resolve:()=>!1,options:r.boolOptions,stringify:Te},{identify:ke,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^([-+]?)0b([0-1_]+)$/,resolve:(dr,Ar,or)=>x(Ar,or,2),stringify:dr=>et(dr,2,"0b")},{identify:ke,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^([-+]?)0([0-7_]+)$/,resolve:(dr,Ar,or)=>x(Ar,or,8),stringify:dr=>et(dr,8,"0")},{identify:ke,default:!0,tag:"tag:yaml.org,2002:int",test:/^([-+]?)([0-9][0-9_]*)$/,resolve:(dr,Ar,or)=>x(Ar,or,10),stringify:r.stringifyNumber},{identify:ke,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^([-+]?)0x([0-9a-fA-F_]+)$/,resolve:(dr,Ar,or)=>x(Ar,or,16),stringify:dr=>et(dr,16,"0x")},{identify:dr=>typeof dr=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.inf|(\.nan))$/i,resolve:(dr,Ar)=>Ar?NaN:dr[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:r.stringifyNumber},{identify:dr=>typeof dr=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?([0-9][0-9_]*)?(\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:dr=>parseFloat(dr.replace(/_/g,"")),stringify:({value:dr})=>Number(dr).toExponential()},{identify:dr=>typeof dr=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.([0-9_]*)$/,resolve(dr,Ar){let or=new r.Scalar(parseFloat(dr.replace(/_/g,"")));if(Ar){let Fr=Ar.replace(/_/g,"");Fr[Fr.length-1]==="0"&&(or.minFractionDigits=Fr.length)}return or},stringify:r.stringifyNumber}],s.binary,s.omap,s.pairs,s.set,s.intTime,s.floatTime,s.timestamp),Je={core:fe,failsafe:m,json:be,yaml11:Ue},Xe={binary:s.binary,bool:T,float:ge,floatExp:ae,floatNaN:le,floatTime:s.floatTime,int:X,intHex:U,intOct:O,intTime:s.intTime,map:o,null:G,omap:s.omap,pairs:s.pairs,seq:p,set:s.set,timestamp:s.timestamp};function ft(dr,Ar,or){if(Ar){let Fr=or.filter(Or=>Or.tag===Ar),$r=Fr.find(Or=>!Or.format)||Fr[0];if(!$r)throw new Error(`Tag ${Ar} not found`);return $r}return or.find(Fr=>(Fr.identify&&Fr.identify(dr)||Fr.class&&dr instanceof Fr.class)&&!Fr.format)}function Gt(dr,Ar,or){if(dr instanceof r.Node)return dr;let{defaultPrefix:Fr,onTagObj:$r,prevObjects:Or,schema:In,wrapScalars:Br}=or;Ar&&Ar.startsWith("!!")&&(Ar=Fr+Ar.slice(2));let tr=ft(dr,Ar,In.tags);if(!tr){if(typeof dr.toJSON=="function"&&(dr=dr.toJSON()),!dr||typeof dr!="object")return Br?new r.Scalar(dr):dr;tr=dr instanceof Map?o:dr[Symbol.iterator]?p:o}$r&&($r(tr),delete or.onTagObj);let gn={value:void 0,node:void 0};if(dr&&typeof dr=="object"&&Or){let Gn=Or.get(dr);if(Gn){let we=new r.Alias(Gn);return or.aliasNodes.push(we),we}gn.value=dr,Or.set(dr,gn)}return gn.node=tr.createNode?tr.createNode(or.schema,dr,or):Br?new r.Scalar(dr):dr,Ar&&gn.node instanceof r.Node&&(gn.node.tag=Ar),gn.node}function er(dr,Ar,or,Fr){let $r=dr[Fr.replace(/\W/g,"")];if(!$r){let Or=Object.keys(dr).map(In=>JSON.stringify(In)).join(", ");throw new Error(`Unknown schema "${Fr}"; use one of ${Or}`)}if(Array.isArray(or))for(let Or of or)$r=$r.concat(Or);else typeof or=="function"&&($r=or($r.slice()));for(let Or=0;Or<$r.length;++Or){let In=$r[Or];if(typeof In=="string"){let Br=Ar[In];if(!Br){let tr=Object.keys(Ar).map(gn=>JSON.stringify(gn)).join(", ");throw new Error(`Unknown custom tag "${In}"; use one of ${tr}`)}$r[Or]=Br}}return $r}var Ur=(dr,Ar)=>dr.keyAr.key?1:0,Ot=class mai{constructor({customTags:Ar,merge:or,schema:Fr,sortMapEntries:$r,tags:Or}){this.merge=!!or,this.name=Fr,this.sortMapEntries=$r===!0?Ur:$r||null,!Ar&&Or&&s.warnOptionDeprecation("tags","customTags"),this.tags=er(Je,Xe,Ar||Or,Fr)}createNode(Ar,or,Fr,$r){let Or={defaultPrefix:mai.defaultPrefix,schema:this,wrapScalars:or},In=$r?Object.assign($r,Or):Or;return Gt(Ar,Fr,In)}createPair(Ar,or,Fr){Fr||(Fr={wrapScalars:!0});let $r=this.createNode(Ar,Fr.wrapScalars,null,Fr),Or=this.createNode(or,Fr.wrapScalars,null,Fr);return new r.Pair($r,Or)}};t._defineProperty(Ot,"defaultPrefix",t.defaultTagPrefix),t._defineProperty(Ot,"defaultTags",t.defaultTags),e.Schema=Ot}),Ipa=jz(e=>{"use strict";var t=yfe(),r=DYe(),s=Cai(),a={anchorPrefix:"a",customTags:null,indent:2,indentSeq:!0,keepCstNodes:!1,keepNodeTypes:!0,keepBlobsInJSON:!0,mapAsMap:!1,maxAliasCount:100,prettyErrors:!1,simpleKeys:!1,version:"1.2"},o={get binary(){return r.binaryOptions},set binary(ge){Object.assign(r.binaryOptions,ge)},get bool(){return r.boolOptions},set bool(ge){Object.assign(r.boolOptions,ge)},get int(){return r.intOptions},set int(ge){Object.assign(r.intOptions,ge)},get null(){return r.nullOptions},set null(ge){Object.assign(r.nullOptions,ge)},get str(){return r.strOptions},set str(ge){Object.assign(r.strOptions,ge)}},g={"1.0":{schema:"yaml-1.1",merge:!0,tagPrefixes:[{handle:"!",prefix:t.defaultTagPrefix},{handle:"!!",prefix:"tag:private.yaml.org,2002:"}]},1.1:{schema:"yaml-1.1",merge:!0,tagPrefixes:[{handle:"!",prefix:"!"},{handle:"!!",prefix:t.defaultTagPrefix}]},1.2:{schema:"core",merge:!1,tagPrefixes:[{handle:"!",prefix:"!"},{handle:"!!",prefix:t.defaultTagPrefix}]}};function p(ge,fe){if((ge.version||ge.options.version)==="1.0"){let be=fe.match(/^tag:private\.yaml\.org,2002:([^:/]+)$/);if(be)return"!"+be[1];let Te=fe.match(/^tag:([a-zA-Z0-9-]+)\.yaml\.org,2002:(.*)/);return Te?`!${Te[1]}/${Te[2]}`:`!${fe.replace(/^tag:/,"")}`}let pe=ge.tagPrefixes.find(be=>fe.indexOf(be.prefix)===0);if(!pe){let be=ge.getDefaults().tagPrefixes;pe=be&&be.find(Te=>fe.indexOf(Te.prefix)===0)}if(!pe)return fe[0]==="!"?fe:`!<${fe}>`;let he=fe.substr(pe.prefix.length).replace(/[!,[\]{}]/g,be=>({"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"})[be]);return pe.handle+he}function f(ge,fe){if(fe instanceof r.Alias)return r.Alias;if(fe.tag){let be=ge.filter(Te=>Te.tag===fe.tag);if(be.length>0)return be.find(Te=>Te.format===fe.format)||be[0]}let pe,he;if(fe instanceof r.Scalar){he=fe.value;let be=ge.filter(Te=>Te.identify&&Te.identify(he)||Te.class&&he instanceof Te.class);pe=be.find(Te=>Te.format===fe.format)||be.find(Te=>!Te.format)}else he=fe,pe=ge.find(be=>be.nodeClass&&he instanceof be.nodeClass);if(!pe){let be=he&&he.constructor?he.constructor.name:typeof he;throw new Error(`Tag not resolved for ${be} value`)}return pe}function m(ge,fe,{anchors:pe,doc:he}){let be=[],Te=he.anchors.getName(ge);return Te&&(pe[Te]=ge,be.push(`&${Te}`)),ge.tag?be.push(p(he,ge.tag)):fe.default||be.push(p(he,fe.tag)),be.join(" ")}function y(ge,fe,pe,he){let{anchors:be,schema:Te}=fe.doc,ke;if(!(ge instanceof r.Node)){let Ue={aliasNodes:[],onTagObj:Je=>ke=Je,prevObjects:new Map};ge=Te.createNode(ge,!0,null,Ue);for(let Je of Ue.aliasNodes){Je.source=Je.source.node;let Xe=be.getName(Je.source);Xe||(Xe=be.newName(),be.map[Xe]=Je.source)}}if(ge instanceof r.Pair)return ge.toString(fe,pe,he);ke||(ke=f(Te.tags,ge));let x=m(ge,ke,fe);x.length>0&&(fe.indentAtStart=(fe.indentAtStart||0)+x.length+1);let et=typeof ke.stringify=="function"?ke.stringify(ge,fe,pe,he):ge instanceof r.Scalar?r.stringifyString(ge,fe,pe,he):ge.toString(fe,pe,he);return x?ge instanceof r.Scalar||et[0]==="{"||et[0]==="["?`${x} ${et}`:`${x} -${fe.indent}${et}`:et}var B=class hai{static validAnchorNode(fe){return fe instanceof r.Scalar||fe instanceof r.YAMLSeq||fe instanceof r.YAMLMap}constructor(fe){t._defineProperty(this,"map",Object.create(null)),this.prefix=fe}createAlias(fe,pe){return this.setAnchor(fe,pe),new r.Alias(fe)}createMergePair(...fe){let pe=new r.Merge;return pe.value.items=fe.map(he=>{if(he instanceof r.Alias){if(he.source instanceof r.YAMLMap)return he}else if(he instanceof r.YAMLMap)return this.createAlias(he);throw new Error("Merge sources must be Map nodes or their Aliases")}),pe}getName(fe){let{map:pe}=this;return Object.keys(pe).find(he=>pe[he]===fe)}getNames(){return Object.keys(this.map)}getNode(fe){return this.map[fe]}newName(fe){fe||(fe=this.prefix);let pe=Object.keys(this.map);for(let he=1;;++he){let be=`${fe}${he}`;if(!pe.includes(be))return be}}resolveNodes(){let{map:fe,_cstAliases:pe}=this;Object.keys(fe).forEach(he=>{fe[he]=fe[he].resolved}),pe.forEach(he=>{he.source=he.source.resolved}),delete this._cstAliases}setAnchor(fe,pe){if(fe!=null&&!hai.validAnchorNode(fe))throw new Error("Anchors may only be set for Scalar, Seq and Map nodes");if(pe&&/[\x00-\x19\s,[\]{}]/.test(pe))throw new Error("Anchor names must not contain whitespace or control characters");let{map:he}=this,be=fe&&Object.keys(he).find(Te=>he[Te]===fe);if(be)if(pe)be!==pe&&(delete he[be],he[pe]=fe);else return be;else{if(!pe){if(!fe)return null;pe=this.newName()}he[pe]=fe}return pe}},v=(ge,fe)=>{if(ge&&typeof ge=="object"){let{tag:pe}=ge;ge instanceof r.Collection?(pe&&(fe[pe]=!0),ge.items.forEach(he=>v(he,fe))):ge instanceof r.Pair?(v(ge.key,fe),v(ge.value,fe)):ge instanceof r.Scalar&&pe&&(fe[pe]=!0)}return fe},G=ge=>Object.keys(v(ge,{}));function T(ge,fe){let pe={before:[],after:[]},he,be=!1;for(let Te of fe)if(Te.valueRange){if(he!==void 0){let x="Document contains trailing content not separated by a ... or --- line";ge.errors.push(new t.YAMLSyntaxError(Te,x));break}let ke=r.resolveNode(ge,Te);be&&(ke.spaceBefore=!0,be=!1),he=ke}else Te.comment!==null?(he===void 0?pe.before:pe.after).push(Te.comment):Te.type===t.Type.BLANK_LINE&&(be=!0,he===void 0&&pe.before.length>0&&!ge.commentBefore&&(ge.commentBefore=pe.before.join(` +${Je.comment}`:Ue.comment),Ue=Je}x.items[et]=Ue instanceof r.Pair?Ue:new r.Pair(Ue)}}return x}function o(Te,ke,x){let et=new r.YAMLSeq(Te);et.tag="tag:yaml.org,2002:pairs";for(let Ue of ke){let Je,Xe;if(Array.isArray(Ue))if(Ue.length===2)Je=Ue[0],Xe=Ue[1];else throw new TypeError(`Expected [key, value] tuple: ${Ue}`);else if(Ue&&Ue instanceof Object){let Gt=Object.keys(Ue);if(Gt.length===1)Je=Gt[0],Xe=Ue[Je];else throw new TypeError(`Expected { key: value } tuple: ${Ue}`)}else Je=Ue;let ft=Te.createPair(Je,Xe,x);et.items.push(ft)}return et}var g={default:!1,tag:"tag:yaml.org,2002:pairs",resolve:a,createNode:o},p=class Eai extends r.YAMLSeq{constructor(){super(),t._defineProperty(this,"add",r.YAMLMap.prototype.add.bind(this)),t._defineProperty(this,"delete",r.YAMLMap.prototype.delete.bind(this)),t._defineProperty(this,"get",r.YAMLMap.prototype.get.bind(this)),t._defineProperty(this,"has",r.YAMLMap.prototype.has.bind(this)),t._defineProperty(this,"set",r.YAMLMap.prototype.set.bind(this)),this.tag=Eai.tag}toJSON(ke,x){let et=new Map;x&&x.onCreate&&x.onCreate(et);for(let Ue of this.items){let Je,Xe;if(Ue instanceof r.Pair?(Je=r.toJSON(Ue.key,"",x),Xe=r.toJSON(Ue.value,Je,x)):Je=r.toJSON(Ue,"",x),et.has(Je))throw new Error("Ordered maps must not include duplicate keys");et.set(Je,Xe)}return et}};t._defineProperty(p,"tag","tag:yaml.org,2002:omap");function f(Te,ke){let x=a(Te,ke),et=[];for(let{key:Ue}of x.items)if(Ue instanceof r.Scalar)if(et.includes(Ue.value)){let Je="Ordered maps must not include duplicate keys";throw new t.YAMLSemanticError(ke,Je)}else et.push(Ue.value);return Object.assign(new p,x)}function m(Te,ke,x){let et=o(Te,ke,x),Ue=new p;return Ue.items=et.items,Ue}var y={identify:Te=>Te instanceof Map,nodeClass:p,default:!1,tag:"tag:yaml.org,2002:omap",resolve:f,createNode:m},B=class Bai extends r.YAMLMap{constructor(){super(),this.tag=Bai.tag}add(ke){let x=ke instanceof r.Pair?ke:new r.Pair(ke);r.findPair(this.items,x.key)||this.items.push(x)}get(ke,x){let et=r.findPair(this.items,ke);return!x&&et instanceof r.Pair?et.key instanceof r.Scalar?et.key.value:et.key:et}set(ke,x){if(typeof x!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof x}`);let et=r.findPair(this.items,ke);et&&!x?this.items.splice(this.items.indexOf(et),1):!et&&x&&this.items.push(new r.Pair(ke))}toJSON(ke,x){return super.toJSON(ke,x,Set)}toString(ke,x,et){if(!ke)return JSON.stringify(this);if(this.hasAllNullValues())return super.toString(ke,x,et);throw new Error("Set items must all have null values")}};t._defineProperty(B,"tag","tag:yaml.org,2002:set");function v(Te,ke){let x=r.resolveMap(Te,ke);if(!x.hasAllNullValues())throw new t.YAMLSemanticError(ke,"Set items must all have null values");return Object.assign(new B,x)}function k(Te,ke,x){let et=new B;for(let Ue of ke)et.items.push(Te.createPair(Ue,null,x));return et}var T={identify:Te=>Te instanceof Set,nodeClass:B,default:!1,tag:"tag:yaml.org,2002:set",resolve:v,createNode:k},O=(Te,ke)=>{let x=ke.split(":").reduce((et,Ue)=>et*60+Number(Ue),0);return Te==="-"?-x:x},X=({value:Te})=>{if(isNaN(Te)||!isFinite(Te))return r.stringifyNumber(Te);let ke="";Te<0&&(ke="-",Te=Math.abs(Te));let x=[Te%60];return Te<60?x.unshift(0):(Te=Math.round((Te-x[0])/60),x.unshift(Te%60),Te>=60&&(Te=Math.round((Te-x[0])/60),x.unshift(Te))),ke+x.map(et=>et<10?"0"+String(et):String(et)).join(":").replace(/000000\d*$/,"")},U={identify:Te=>typeof Te=="number",default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+)$/,resolve:(Te,ke,x)=>O(ke,x.replace(/_/g,"")),stringify:X},le={identify:Te=>typeof Te=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*)$/,resolve:(Te,ke,x)=>O(ke,x.replace(/_/g,"")),stringify:X},ae={identify:Te=>Te instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^(?:([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?)$"),resolve:(Te,ke,x,et,Ue,Je,Xe,ft,Gt)=>{ft&&(ft=(ft+"00").substr(1,3));let er=Date.UTC(ke,x-1,et,Ue||0,Je||0,Xe||0,ft||0);if(Gt&&Gt!=="Z"){let Ur=O(Gt[0],Gt.slice(1));Math.abs(Ur)<30&&(Ur*=60),er-=6e4*Ur}return new Date(er)},stringify:({value:Te})=>Te.toISOString().replace(/((T00:00)?:00)?\.000Z$/,"")};function ge(Te){let ke={};return Te?typeof YAML_SILENCE_DEPRECATION_WARNINGS<"u"?!YAML_SILENCE_DEPRECATION_WARNINGS:!ke.YAML_SILENCE_DEPRECATION_WARNINGS:typeof YAML_SILENCE_WARNINGS<"u"?!YAML_SILENCE_WARNINGS:!ke.YAML_SILENCE_WARNINGS}function fe(Te,ke){ge(!1)&&console.warn(ke?`${ke}: ${Te}`:Te)}function pe(Te){if(ge(!0)){let ke=Te.replace(/.*yaml[/\\]/i,"").replace(/\.js$/,"").replace(/\\/g,"/");fe(`The endpoint 'yaml/${ke}' will be removed in a future release.`,"DeprecationWarning")}}var he={};function be(Te,ke){if(!he[Te]&&ge(!0)){he[Te]=!0;let x=`The option '${Te}' will be removed in a future release`;x+=ke?`, use '${ke}' instead.`:".",fe(x,"DeprecationWarning")}}e.binary=s,e.floatTime=le,e.intTime=U,e.omap=y,e.pairs=g,e.set=T,e.timestamp=ae,e.warn=fe,e.warnFileDeprecation=pe,e.warnOptionDeprecation=be}),vai=zz(e=>{"use strict";var t=wfe(),r=kMe(),s=bai();function a(dr,Ar,or){let Fr=new r.YAMLMap(dr);if(Ar instanceof Map)for(let[$r,Or]of Ar)Fr.items.push(dr.createPair($r,Or,or));else if(Ar&&typeof Ar=="object")for(let $r of Object.keys(Ar))Fr.items.push(dr.createPair($r,Ar[$r],or));return typeof dr.sortMapEntries=="function"&&Fr.items.sort(dr.sortMapEntries),Fr}var o={createNode:a,default:!0,nodeClass:r.YAMLMap,tag:"tag:yaml.org,2002:map",resolve:r.resolveMap};function g(dr,Ar,or){let Fr=new r.YAMLSeq(dr);if(Ar&&Ar[Symbol.iterator])for(let $r of Ar){let Or=dr.createNode($r,or.wrapScalars,null,or);Fr.items.push(Or)}return Fr}var p={createNode:g,default:!0,nodeClass:r.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve:r.resolveSeq},f={identify:dr=>typeof dr=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:r.resolveString,stringify(dr,Ar,or,Fr){return Ar=Object.assign({actualString:!0},Ar),r.stringifyString(dr,Ar,or,Fr)},options:r.strOptions},m=[o,p,f],y=dr=>typeof dr=="bigint"||Number.isInteger(dr),B=(dr,Ar,or)=>r.intOptions.asBigInt?BigInt(dr):parseInt(Ar,or);function v(dr,Ar,or){let{value:Fr}=dr;return y(Fr)&&Fr>=0?or+Fr.toString(Ar):r.stringifyNumber(dr)}var k={identify:dr=>dr==null,createNode:(dr,Ar,or)=>or.wrapScalars?new r.Scalar(null):null,default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>null,options:r.nullOptions,stringify:()=>r.nullOptions.nullStr},T={identify:dr=>typeof dr=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:dr=>dr[0]==="t"||dr[0]==="T",options:r.boolOptions,stringify:({value:dr})=>dr?r.boolOptions.trueStr:r.boolOptions.falseStr},O={identify:dr=>y(dr)&&dr>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o([0-7]+)$/,resolve:(dr,Ar)=>B(dr,Ar,8),options:r.intOptions,stringify:dr=>v(dr,8,"0o")},X={identify:y,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:dr=>B(dr,dr,10),options:r.intOptions,stringify:r.stringifyNumber},U={identify:dr=>y(dr)&&dr>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x([0-9a-fA-F]+)$/,resolve:(dr,Ar)=>B(dr,Ar,16),options:r.intOptions,stringify:dr=>v(dr,16,"0x")},le={identify:dr=>typeof dr=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.inf|(\.nan))$/i,resolve:(dr,Ar)=>Ar?NaN:dr[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:r.stringifyNumber},ae={identify:dr=>typeof dr=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:dr=>parseFloat(dr),stringify:({value:dr})=>Number(dr).toExponential()},ge={identify:dr=>typeof dr=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.([0-9]+)|[0-9]+\.([0-9]*))$/,resolve(dr,Ar,or){let Fr=Ar||or,$r=new r.Scalar(parseFloat(dr));return Fr&&Fr[Fr.length-1]==="0"&&($r.minFractionDigits=Fr.length),$r},stringify:r.stringifyNumber},fe=m.concat([k,T,O,X,U,le,ae,ge]),pe=dr=>typeof dr=="bigint"||Number.isInteger(dr),he=({value:dr})=>JSON.stringify(dr),be=[o,p,{identify:dr=>typeof dr=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:r.resolveString,stringify:he},{identify:dr=>dr==null,createNode:(dr,Ar,or)=>or.wrapScalars?new r.Scalar(null):null,default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:he},{identify:dr=>typeof dr=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true|false$/,resolve:dr=>dr==="true",stringify:he},{identify:pe,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:dr=>r.intOptions.asBigInt?BigInt(dr):parseInt(dr,10),stringify:({value:dr})=>pe(dr)?dr.toString():JSON.stringify(dr)},{identify:dr=>typeof dr=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:dr=>parseFloat(dr),stringify:he}];be.scalarFallback=dr=>{throw new SyntaxError(`Unresolved plain scalar ${JSON.stringify(dr)}`)};var Te=({value:dr})=>dr?r.boolOptions.trueStr:r.boolOptions.falseStr,ke=dr=>typeof dr=="bigint"||Number.isInteger(dr);function x(dr,Ar,or){let Fr=Ar.replace(/_/g,"");if(r.intOptions.asBigInt){switch(or){case 2:Fr=`0b${Fr}`;break;case 8:Fr=`0o${Fr}`;break;case 16:Fr=`0x${Fr}`;break}let Or=BigInt(Fr);return dr==="-"?BigInt(-1)*Or:Or}let $r=parseInt(Fr,or);return dr==="-"?-1*$r:$r}function et(dr,Ar,or){let{value:Fr}=dr;if(ke(Fr)){let $r=Fr.toString(Ar);return Fr<0?"-"+or+$r.substr(1):or+$r}return r.stringifyNumber(dr)}var Ue=m.concat([{identify:dr=>dr==null,createNode:(dr,Ar,or)=>or.wrapScalars?new r.Scalar(null):null,default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>null,options:r.nullOptions,stringify:()=>r.nullOptions.nullStr},{identify:dr=>typeof dr=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>!0,options:r.boolOptions,stringify:Te},{identify:dr=>typeof dr=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/i,resolve:()=>!1,options:r.boolOptions,stringify:Te},{identify:ke,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^([-+]?)0b([0-1_]+)$/,resolve:(dr,Ar,or)=>x(Ar,or,2),stringify:dr=>et(dr,2,"0b")},{identify:ke,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^([-+]?)0([0-7_]+)$/,resolve:(dr,Ar,or)=>x(Ar,or,8),stringify:dr=>et(dr,8,"0")},{identify:ke,default:!0,tag:"tag:yaml.org,2002:int",test:/^([-+]?)([0-9][0-9_]*)$/,resolve:(dr,Ar,or)=>x(Ar,or,10),stringify:r.stringifyNumber},{identify:ke,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^([-+]?)0x([0-9a-fA-F_]+)$/,resolve:(dr,Ar,or)=>x(Ar,or,16),stringify:dr=>et(dr,16,"0x")},{identify:dr=>typeof dr=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.inf|(\.nan))$/i,resolve:(dr,Ar)=>Ar?NaN:dr[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:r.stringifyNumber},{identify:dr=>typeof dr=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?([0-9][0-9_]*)?(\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:dr=>parseFloat(dr.replace(/_/g,"")),stringify:({value:dr})=>Number(dr).toExponential()},{identify:dr=>typeof dr=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.([0-9_]*)$/,resolve(dr,Ar){let or=new r.Scalar(parseFloat(dr.replace(/_/g,"")));if(Ar){let Fr=Ar.replace(/_/g,"");Fr[Fr.length-1]==="0"&&(or.minFractionDigits=Fr.length)}return or},stringify:r.stringifyNumber}],s.binary,s.omap,s.pairs,s.set,s.intTime,s.floatTime,s.timestamp),Je={core:fe,failsafe:m,json:be,yaml11:Ue},Xe={binary:s.binary,bool:T,float:ge,floatExp:ae,floatNaN:le,floatTime:s.floatTime,int:X,intHex:U,intOct:O,intTime:s.intTime,map:o,null:k,omap:s.omap,pairs:s.pairs,seq:p,set:s.set,timestamp:s.timestamp};function ft(dr,Ar,or){if(Ar){let Fr=or.filter(Or=>Or.tag===Ar),$r=Fr.find(Or=>!Or.format)||Fr[0];if(!$r)throw new Error(`Tag ${Ar} not found`);return $r}return or.find(Fr=>(Fr.identify&&Fr.identify(dr)||Fr.class&&dr instanceof Fr.class)&&!Fr.format)}function Gt(dr,Ar,or){if(dr instanceof r.Node)return dr;let{defaultPrefix:Fr,onTagObj:$r,prevObjects:Or,schema:In,wrapScalars:Br}=or;Ar&&Ar.startsWith("!!")&&(Ar=Fr+Ar.slice(2));let tr=ft(dr,Ar,In.tags);if(!tr){if(typeof dr.toJSON=="function"&&(dr=dr.toJSON()),!dr||typeof dr!="object")return Br?new r.Scalar(dr):dr;tr=dr instanceof Map?o:dr[Symbol.iterator]?p:o}$r&&($r(tr),delete or.onTagObj);let gn={value:void 0,node:void 0};if(dr&&typeof dr=="object"&&Or){let Gn=Or.get(dr);if(Gn){let we=new r.Alias(Gn);return or.aliasNodes.push(we),we}gn.value=dr,Or.set(dr,gn)}return gn.node=tr.createNode?tr.createNode(or.schema,dr,or):Br?new r.Scalar(dr):dr,Ar&&gn.node instanceof r.Node&&(gn.node.tag=Ar),gn.node}function er(dr,Ar,or,Fr){let $r=dr[Fr.replace(/\W/g,"")];if(!$r){let Or=Object.keys(dr).map(In=>JSON.stringify(In)).join(", ");throw new Error(`Unknown schema "${Fr}"; use one of ${Or}`)}if(Array.isArray(or))for(let Or of or)$r=$r.concat(Or);else typeof or=="function"&&($r=or($r.slice()));for(let Or=0;Or<$r.length;++Or){let In=$r[Or];if(typeof In=="string"){let Br=Ar[In];if(!Br){let tr=Object.keys(Ar).map(gn=>JSON.stringify(gn)).join(", ");throw new Error(`Unknown custom tag "${In}"; use one of ${tr}`)}$r[Or]=Br}}return $r}var Ur=(dr,Ar)=>dr.keyAr.key?1:0,Ot=class Sai{constructor({customTags:Ar,merge:or,schema:Fr,sortMapEntries:$r,tags:Or}){this.merge=!!or,this.name=Fr,this.sortMapEntries=$r===!0?Ur:$r||null,!Ar&&Or&&s.warnOptionDeprecation("tags","customTags"),this.tags=er(Je,Xe,Ar||Or,Fr)}createNode(Ar,or,Fr,$r){let Or={defaultPrefix:Sai.defaultPrefix,schema:this,wrapScalars:or},In=$r?Object.assign($r,Or):Or;return Gt(Ar,Fr,In)}createPair(Ar,or,Fr){Fr||(Fr={wrapScalars:!0});let $r=this.createNode(Ar,Fr.wrapScalars,null,Fr),Or=this.createNode(or,Fr.wrapScalars,null,Fr);return new r.Pair($r,Or)}};t._defineProperty(Ot,"defaultPrefix",t.defaultTagPrefix),t._defineProperty(Ot,"defaultTags",t.defaultTags),e.Schema=Ot}),xpa=zz(e=>{"use strict";var t=wfe(),r=kMe(),s=vai(),a={anchorPrefix:"a",customTags:null,indent:2,indentSeq:!0,keepCstNodes:!1,keepNodeTypes:!0,keepBlobsInJSON:!0,mapAsMap:!1,maxAliasCount:100,prettyErrors:!1,simpleKeys:!1,version:"1.2"},o={get binary(){return r.binaryOptions},set binary(ge){Object.assign(r.binaryOptions,ge)},get bool(){return r.boolOptions},set bool(ge){Object.assign(r.boolOptions,ge)},get int(){return r.intOptions},set int(ge){Object.assign(r.intOptions,ge)},get null(){return r.nullOptions},set null(ge){Object.assign(r.nullOptions,ge)},get str(){return r.strOptions},set str(ge){Object.assign(r.strOptions,ge)}},g={"1.0":{schema:"yaml-1.1",merge:!0,tagPrefixes:[{handle:"!",prefix:t.defaultTagPrefix},{handle:"!!",prefix:"tag:private.yaml.org,2002:"}]},1.1:{schema:"yaml-1.1",merge:!0,tagPrefixes:[{handle:"!",prefix:"!"},{handle:"!!",prefix:t.defaultTagPrefix}]},1.2:{schema:"core",merge:!1,tagPrefixes:[{handle:"!",prefix:"!"},{handle:"!!",prefix:t.defaultTagPrefix}]}};function p(ge,fe){if((ge.version||ge.options.version)==="1.0"){let be=fe.match(/^tag:private\.yaml\.org,2002:([^:/]+)$/);if(be)return"!"+be[1];let Te=fe.match(/^tag:([a-zA-Z0-9-]+)\.yaml\.org,2002:(.*)/);return Te?`!${Te[1]}/${Te[2]}`:`!${fe.replace(/^tag:/,"")}`}let pe=ge.tagPrefixes.find(be=>fe.indexOf(be.prefix)===0);if(!pe){let be=ge.getDefaults().tagPrefixes;pe=be&&be.find(Te=>fe.indexOf(Te.prefix)===0)}if(!pe)return fe[0]==="!"?fe:`!<${fe}>`;let he=fe.substr(pe.prefix.length).replace(/[!,[\]{}]/g,be=>({"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"})[be]);return pe.handle+he}function f(ge,fe){if(fe instanceof r.Alias)return r.Alias;if(fe.tag){let be=ge.filter(Te=>Te.tag===fe.tag);if(be.length>0)return be.find(Te=>Te.format===fe.format)||be[0]}let pe,he;if(fe instanceof r.Scalar){he=fe.value;let be=ge.filter(Te=>Te.identify&&Te.identify(he)||Te.class&&he instanceof Te.class);pe=be.find(Te=>Te.format===fe.format)||be.find(Te=>!Te.format)}else he=fe,pe=ge.find(be=>be.nodeClass&&he instanceof be.nodeClass);if(!pe){let be=he&&he.constructor?he.constructor.name:typeof he;throw new Error(`Tag not resolved for ${be} value`)}return pe}function m(ge,fe,{anchors:pe,doc:he}){let be=[],Te=he.anchors.getName(ge);return Te&&(pe[Te]=ge,be.push(`&${Te}`)),ge.tag?be.push(p(he,ge.tag)):fe.default||be.push(p(he,fe.tag)),be.join(" ")}function y(ge,fe,pe,he){let{anchors:be,schema:Te}=fe.doc,ke;if(!(ge instanceof r.Node)){let Ue={aliasNodes:[],onTagObj:Je=>ke=Je,prevObjects:new Map};ge=Te.createNode(ge,!0,null,Ue);for(let Je of Ue.aliasNodes){Je.source=Je.source.node;let Xe=be.getName(Je.source);Xe||(Xe=be.newName(),be.map[Xe]=Je.source)}}if(ge instanceof r.Pair)return ge.toString(fe,pe,he);ke||(ke=f(Te.tags,ge));let x=m(ge,ke,fe);x.length>0&&(fe.indentAtStart=(fe.indentAtStart||0)+x.length+1);let et=typeof ke.stringify=="function"?ke.stringify(ge,fe,pe,he):ge instanceof r.Scalar?r.stringifyString(ge,fe,pe,he):ge.toString(fe,pe,he);return x?ge instanceof r.Scalar||et[0]==="{"||et[0]==="["?`${x} ${et}`:`${x} +${fe.indent}${et}`:et}var B=class wai{static validAnchorNode(fe){return fe instanceof r.Scalar||fe instanceof r.YAMLSeq||fe instanceof r.YAMLMap}constructor(fe){t._defineProperty(this,"map",Object.create(null)),this.prefix=fe}createAlias(fe,pe){return this.setAnchor(fe,pe),new r.Alias(fe)}createMergePair(...fe){let pe=new r.Merge;return pe.value.items=fe.map(he=>{if(he instanceof r.Alias){if(he.source instanceof r.YAMLMap)return he}else if(he instanceof r.YAMLMap)return this.createAlias(he);throw new Error("Merge sources must be Map nodes or their Aliases")}),pe}getName(fe){let{map:pe}=this;return Object.keys(pe).find(he=>pe[he]===fe)}getNames(){return Object.keys(this.map)}getNode(fe){return this.map[fe]}newName(fe){fe||(fe=this.prefix);let pe=Object.keys(this.map);for(let he=1;;++he){let be=`${fe}${he}`;if(!pe.includes(be))return be}}resolveNodes(){let{map:fe,_cstAliases:pe}=this;Object.keys(fe).forEach(he=>{fe[he]=fe[he].resolved}),pe.forEach(he=>{he.source=he.source.resolved}),delete this._cstAliases}setAnchor(fe,pe){if(fe!=null&&!wai.validAnchorNode(fe))throw new Error("Anchors may only be set for Scalar, Seq and Map nodes");if(pe&&/[\x00-\x19\s,[\]{}]/.test(pe))throw new Error("Anchor names must not contain whitespace or control characters");let{map:he}=this,be=fe&&Object.keys(he).find(Te=>he[Te]===fe);if(be)if(pe)be!==pe&&(delete he[be],he[pe]=fe);else return be;else{if(!pe){if(!fe)return null;pe=this.newName()}he[pe]=fe}return pe}},v=(ge,fe)=>{if(ge&&typeof ge=="object"){let{tag:pe}=ge;ge instanceof r.Collection?(pe&&(fe[pe]=!0),ge.items.forEach(he=>v(he,fe))):ge instanceof r.Pair?(v(ge.key,fe),v(ge.value,fe)):ge instanceof r.Scalar&&pe&&(fe[pe]=!0)}return fe},k=ge=>Object.keys(v(ge,{}));function T(ge,fe){let pe={before:[],after:[]},he,be=!1;for(let Te of fe)if(Te.valueRange){if(he!==void 0){let x="Document contains trailing content not separated by a ... or --- line";ge.errors.push(new t.YAMLSyntaxError(Te,x));break}let ke=r.resolveNode(ge,Te);be&&(ke.spaceBefore=!0,be=!1),he=ke}else Te.comment!==null?(he===void 0?pe.before:pe.after).push(Te.comment):Te.type===t.Type.BLANK_LINE&&(be=!0,he===void 0&&pe.before.length>0&&!ge.commentBefore&&(ge.commentBefore=pe.before.join(` `),pe.before=[]));if(ge.contents=he||null,!he)ge.comment=pe.before.concat(pe.after).join(` `)||null;else{let Te=pe.before.join(` `);if(Te){let ke=he instanceof r.Collection&&he.items[0]?he.items[0]:he;ke.commentBefore=ke.commentBefore?`${Te} ${ke.commentBefore}`:Te}ge.comment=pe.after.join(` `)||null}}function O({tagPrefixes:ge},fe){let[pe,he]=fe.parameters;if(!pe||!he){let be="Insufficient parameters given for %TAG directive";throw new t.YAMLSemanticError(fe,be)}if(ge.some(be=>be.handle===pe)){let be="The %TAG directive must only be given at most once per handle in the same document.";throw new t.YAMLSemanticError(fe,be)}return{handle:pe,prefix:he}}function X(ge,fe){let[pe]=fe.parameters;if(fe.name==="YAML:1.0"&&(pe="1.0"),!pe){let he="Insufficient parameters given for %YAML directive";throw new t.YAMLSemanticError(fe,he)}if(!g[pe]){let he=`Document will be parsed as YAML ${ge.version||ge.options.version} rather than YAML ${pe}`;ge.warnings.push(new t.YAMLWarning(fe,he))}return pe}function U(ge,fe,pe){let he=[],be=!1;for(let Te of fe){let{comment:ke,name:x}=Te;switch(x){case"TAG":try{ge.tagPrefixes.push(O(ge,Te))}catch(et){ge.errors.push(et)}be=!0;break;case"YAML":case"YAML:1.0":if(ge.version){let et="The %YAML directive must only be given at most once per document.";ge.errors.push(new t.YAMLSemanticError(Te,et))}try{ge.version=X(ge,Te)}catch(et){ge.errors.push(et)}be=!0;break;default:if(x){let et=`YAML only supports %TAG and %YAML directives, and not %${x}`;ge.warnings.push(new t.YAMLWarning(Te,et))}}ke&&he.push(ke)}if(pe&&!be&&(ge.version||pe.version||ge.options.version)==="1.1"){let Te=({handle:ke,prefix:x})=>({handle:ke,prefix:x});ge.tagPrefixes=pe.tagPrefixes.map(Te),ge.version=pe.version}ge.commentBefore=he.join(` -`)||null}function le(ge){if(ge instanceof r.Collection)return!0;throw new Error("Expected a YAML collection as document contents")}var ae=class Rdr{constructor(fe){this.anchors=new B(fe.anchorPrefix),this.commentBefore=null,this.comment=null,this.contents=null,this.directivesEndMarker=null,this.errors=[],this.options=fe,this.schema=null,this.tagPrefixes=[],this.version=null,this.warnings=[]}add(fe){return le(this.contents),this.contents.add(fe)}addIn(fe,pe){le(this.contents),this.contents.addIn(fe,pe)}delete(fe){return le(this.contents),this.contents.delete(fe)}deleteIn(fe){return r.isEmptyPath(fe)?this.contents==null?!1:(this.contents=null,!0):(le(this.contents),this.contents.deleteIn(fe))}getDefaults(){return Rdr.defaults[this.version]||Rdr.defaults[this.options.version]||{}}get(fe,pe){return this.contents instanceof r.Collection?this.contents.get(fe,pe):void 0}getIn(fe,pe){return r.isEmptyPath(fe)?!pe&&this.contents instanceof r.Scalar?this.contents.value:this.contents:this.contents instanceof r.Collection?this.contents.getIn(fe,pe):void 0}has(fe){return this.contents instanceof r.Collection?this.contents.has(fe):!1}hasIn(fe){return r.isEmptyPath(fe)?this.contents!==void 0:this.contents instanceof r.Collection?this.contents.hasIn(fe):!1}set(fe,pe){le(this.contents),this.contents.set(fe,pe)}setIn(fe,pe){r.isEmptyPath(fe)?this.contents=pe:(le(this.contents),this.contents.setIn(fe,pe))}setSchema(fe,pe){if(!fe&&!pe&&this.schema)return;typeof fe=="number"&&(fe=fe.toFixed(1)),fe==="1.0"||fe==="1.1"||fe==="1.2"?(this.version?this.version=fe:this.options.version=fe,delete this.options.schema):fe&&typeof fe=="string"&&(this.options.schema=fe),Array.isArray(pe)&&(this.options.customTags=pe);let he=Object.assign({},this.getDefaults(),this.options);this.schema=new s.Schema(he)}parse(fe,pe){this.options.keepCstNodes&&(this.cstNode=fe),this.options.keepNodeTypes&&(this.type="DOCUMENT");let{directives:he=[],contents:be=[],directivesEndMarker:Te,error:ke,valueRange:x}=fe;if(ke&&(ke.source||(ke.source=this),this.errors.push(ke)),U(this,he,pe),Te&&(this.directivesEndMarker=!0),this.range=x?[x.start,x.end]:null,this.setSchema(),this.anchors._cstAliases=[],T(this,be),this.anchors.resolveNodes(),this.options.prettyErrors){for(let et of this.errors)et instanceof t.YAMLError&&et.makePretty();for(let et of this.warnings)et instanceof t.YAMLError&&et.makePretty()}return this}listNonDefaultTags(){return G(this.contents).filter(fe=>fe.indexOf(s.Schema.defaultPrefix)!==0)}setTagPrefix(fe,pe){if(fe[0]!=="!"||fe[fe.length-1]!=="!")throw new Error("Handle must start and end with !");if(pe){let he=this.tagPrefixes.find(be=>be.handle===fe);he?he.prefix=pe:this.tagPrefixes.push({handle:fe,prefix:pe})}else this.tagPrefixes=this.tagPrefixes.filter(he=>he.handle!==fe)}toJSON(fe,pe){let{keepBlobsInJSON:he,mapAsMap:be,maxAliasCount:Te}=this.options,ke=he&&(typeof fe!="string"||!(this.contents instanceof r.Scalar)),x={doc:this,indentStep:" ",keep:ke,mapAsMap:ke&&!!be,maxAliasCount:Te,stringify:y},et=Object.keys(this.anchors.map);et.length>0&&(x.anchors=new Map(et.map(Je=>[this.anchors.map[Je],{alias:[],aliasCount:0,count:1}])));let Ue=r.toJSON(this.contents,fe,x);if(typeof pe=="function"&&x.anchors)for(let{count:Je,res:Xe}of x.anchors.values())pe(Xe,Je);return Ue}toString(){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");let fe=this.options.indent;if(!Number.isInteger(fe)||fe<=0){let et=JSON.stringify(fe);throw new Error(`"indent" option must be a positive integer, not ${et}`)}this.setSchema();let pe=[],he=!1;if(this.version){let et="%YAML 1.2";this.schema.name==="yaml-1.1"&&(this.version==="1.0"?et="%YAML:1.0":this.version==="1.1"&&(et="%YAML 1.1")),pe.push(et),he=!0}let be=this.listNonDefaultTags();this.tagPrefixes.forEach(({handle:et,prefix:Ue})=>{be.some(Je=>Je.indexOf(Ue)===0)&&(pe.push(`%TAG ${et} ${Ue}`),he=!0)}),(he||this.directivesEndMarker)&&pe.push("---"),this.commentBefore&&((he||!this.directivesEndMarker)&&pe.unshift(""),pe.unshift(this.commentBefore.replace(/^/gm,"#")));let Te={anchors:Object.create(null),doc:this,indent:"",indentStep:" ".repeat(fe),stringify:y},ke=!1,x=null;if(this.contents){this.contents instanceof r.Node&&(this.contents.spaceBefore&&(he||this.directivesEndMarker)&&pe.push(""),this.contents.commentBefore&&pe.push(this.contents.commentBefore.replace(/^/gm,"#")),Te.forceBlockIndent=!!this.comment,x=this.contents.comment);let et=x?null:()=>ke=!0,Ue=y(this.contents,Te,()=>x=null,et);pe.push(r.addComment(Ue,"",x))}else this.contents!==void 0&&pe.push(y(this.contents,Te));return this.comment&&((!ke||x)&&pe[pe.length-1]!==""&&pe.push(""),pe.push(this.comment.replace(/^/gm,"#"))),pe.join(` +`)||null}function le(ge){if(ge instanceof r.Collection)return!0;throw new Error("Expected a YAML collection as document contents")}var ae=class Fdr{constructor(fe){this.anchors=new B(fe.anchorPrefix),this.commentBefore=null,this.comment=null,this.contents=null,this.directivesEndMarker=null,this.errors=[],this.options=fe,this.schema=null,this.tagPrefixes=[],this.version=null,this.warnings=[]}add(fe){return le(this.contents),this.contents.add(fe)}addIn(fe,pe){le(this.contents),this.contents.addIn(fe,pe)}delete(fe){return le(this.contents),this.contents.delete(fe)}deleteIn(fe){return r.isEmptyPath(fe)?this.contents==null?!1:(this.contents=null,!0):(le(this.contents),this.contents.deleteIn(fe))}getDefaults(){return Fdr.defaults[this.version]||Fdr.defaults[this.options.version]||{}}get(fe,pe){return this.contents instanceof r.Collection?this.contents.get(fe,pe):void 0}getIn(fe,pe){return r.isEmptyPath(fe)?!pe&&this.contents instanceof r.Scalar?this.contents.value:this.contents:this.contents instanceof r.Collection?this.contents.getIn(fe,pe):void 0}has(fe){return this.contents instanceof r.Collection?this.contents.has(fe):!1}hasIn(fe){return r.isEmptyPath(fe)?this.contents!==void 0:this.contents instanceof r.Collection?this.contents.hasIn(fe):!1}set(fe,pe){le(this.contents),this.contents.set(fe,pe)}setIn(fe,pe){r.isEmptyPath(fe)?this.contents=pe:(le(this.contents),this.contents.setIn(fe,pe))}setSchema(fe,pe){if(!fe&&!pe&&this.schema)return;typeof fe=="number"&&(fe=fe.toFixed(1)),fe==="1.0"||fe==="1.1"||fe==="1.2"?(this.version?this.version=fe:this.options.version=fe,delete this.options.schema):fe&&typeof fe=="string"&&(this.options.schema=fe),Array.isArray(pe)&&(this.options.customTags=pe);let he=Object.assign({},this.getDefaults(),this.options);this.schema=new s.Schema(he)}parse(fe,pe){this.options.keepCstNodes&&(this.cstNode=fe),this.options.keepNodeTypes&&(this.type="DOCUMENT");let{directives:he=[],contents:be=[],directivesEndMarker:Te,error:ke,valueRange:x}=fe;if(ke&&(ke.source||(ke.source=this),this.errors.push(ke)),U(this,he,pe),Te&&(this.directivesEndMarker=!0),this.range=x?[x.start,x.end]:null,this.setSchema(),this.anchors._cstAliases=[],T(this,be),this.anchors.resolveNodes(),this.options.prettyErrors){for(let et of this.errors)et instanceof t.YAMLError&&et.makePretty();for(let et of this.warnings)et instanceof t.YAMLError&&et.makePretty()}return this}listNonDefaultTags(){return k(this.contents).filter(fe=>fe.indexOf(s.Schema.defaultPrefix)!==0)}setTagPrefix(fe,pe){if(fe[0]!=="!"||fe[fe.length-1]!=="!")throw new Error("Handle must start and end with !");if(pe){let he=this.tagPrefixes.find(be=>be.handle===fe);he?he.prefix=pe:this.tagPrefixes.push({handle:fe,prefix:pe})}else this.tagPrefixes=this.tagPrefixes.filter(he=>he.handle!==fe)}toJSON(fe,pe){let{keepBlobsInJSON:he,mapAsMap:be,maxAliasCount:Te}=this.options,ke=he&&(typeof fe!="string"||!(this.contents instanceof r.Scalar)),x={doc:this,indentStep:" ",keep:ke,mapAsMap:ke&&!!be,maxAliasCount:Te,stringify:y},et=Object.keys(this.anchors.map);et.length>0&&(x.anchors=new Map(et.map(Je=>[this.anchors.map[Je],{alias:[],aliasCount:0,count:1}])));let Ue=r.toJSON(this.contents,fe,x);if(typeof pe=="function"&&x.anchors)for(let{count:Je,res:Xe}of x.anchors.values())pe(Xe,Je);return Ue}toString(){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");let fe=this.options.indent;if(!Number.isInteger(fe)||fe<=0){let et=JSON.stringify(fe);throw new Error(`"indent" option must be a positive integer, not ${et}`)}this.setSchema();let pe=[],he=!1;if(this.version){let et="%YAML 1.2";this.schema.name==="yaml-1.1"&&(this.version==="1.0"?et="%YAML:1.0":this.version==="1.1"&&(et="%YAML 1.1")),pe.push(et),he=!0}let be=this.listNonDefaultTags();this.tagPrefixes.forEach(({handle:et,prefix:Ue})=>{be.some(Je=>Je.indexOf(Ue)===0)&&(pe.push(`%TAG ${et} ${Ue}`),he=!0)}),(he||this.directivesEndMarker)&&pe.push("---"),this.commentBefore&&((he||!this.directivesEndMarker)&&pe.unshift(""),pe.unshift(this.commentBefore.replace(/^/gm,"#")));let Te={anchors:Object.create(null),doc:this,indent:"",indentStep:" ".repeat(fe),stringify:y},ke=!1,x=null;if(this.contents){this.contents instanceof r.Node&&(this.contents.spaceBefore&&(he||this.directivesEndMarker)&&pe.push(""),this.contents.commentBefore&&pe.push(this.contents.commentBefore.replace(/^/gm,"#")),Te.forceBlockIndent=!!this.comment,x=this.contents.comment);let et=x?null:()=>ke=!0,Ue=y(this.contents,Te,()=>x=null,et);pe.push(r.addComment(Ue,"",x))}else this.contents!==void 0&&pe.push(y(this.contents,Te));return this.comment&&((!ke||x)&&pe[pe.length-1]!==""&&pe.push(""),pe.push(this.comment.replace(/^/gm,"#"))),pe.join(` `)+` -`}};t._defineProperty(ae,"defaults",g),e.Document=ae,e.defaultOptions=a,e.scalarOptions=o}),Cpa=jz(e=>{"use strict";var t=fpa(),r=Ipa(),s=Cai(),a=yfe(),o=pai();DYe();function g(G,T=!0,O){O===void 0&&typeof T=="string"&&(O=T,T=!0);let X=Object.assign({},r.Document.defaults[r.defaultOptions.version],r.defaultOptions);return new s.Schema(X).createNode(G,T,O)}var p=class extends r.Document{constructor(G){super(Object.assign({},r.defaultOptions,G))}};function f(G,T){let O=[],X;for(let U of t.parse(G)){let le=new p(T);le.parse(U,X),O.push(le),X=le}return O}function m(G,T){let O=t.parse(G),X=new p(T).parse(O[0]);if(O.length>1){let U="Source contains multiple documents; please use YAML.parseAllDocuments()";X.errors.unshift(new a.YAMLSemanticError(O[1],U))}return X}function y(G,T){let O=m(G,T);if(O.warnings.forEach(X=>o.warn(X)),O.errors.length>0)throw O.errors[0];return O.toJSON()}function B(G,T){let O=new p(T);return O.contents=G,String(O)}var v={createNode:g,defaultOptions:r.defaultOptions,Document:p,parse:y,parseAllDocuments:f,parseCST:t.parse,parseDocument:m,scalarOptions:r.scalarOptions,stringify:B};e.YAML=v}),mpa=jz((e,t)=>{t.exports=Cpa().YAML}),hpa=jz(e=>{"use strict";var t=DYe(),r=yfe();e.findPair=t.findPair,e.parseMap=t.resolveMap,e.parseSeq=t.resolveSeq,e.stringifyNumber=t.stringifyNumber,e.stringifyString=t.stringifyString,e.toJSON=t.toJSON,e.Type=r.Type,e.YAMLError=r.YAMLError,e.YAMLReferenceError=r.YAMLReferenceError,e.YAMLSemanticError=r.YAMLSemanticError,e.YAMLSyntaxError=r.YAMLSyntaxError,e.YAMLWarning=r.YAMLWarning}),_ai={};aai(_ai,{languages:()=>Qai,options:()=>Yai,parsers:()=>Xdr,printers:()=>ici});var _pa=(e,t,r,s)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,s):r.global?t.replace(r,s):t.split(r).join(s)},Edr=_pa,yai="string",bai="array",Eai="cursor",Bai="indent",Vdr="align",vai="trim",Wdr="group",Pdr="fill",Odr="if-break",Sai="indent-if-break",Mdr="line-suffix",wai="line-suffix-boundary",wSe="line",Tai="label",Qdr="break-parent",Nai=new Set([Eai,Bai,Vdr,vai,Wdr,Pdr,Odr,Sai,Mdr,wai,wSe,Tai,Qdr]),ypa=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},vM=ypa;function bpa(e){if(typeof e=="string")return yai;if(Array.isArray(e))return bai;if(!e)return;let{type:t}=e;if(Nai.has(t))return t}var Rai=bpa,Epa=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function Bpa(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', -Expected it to be 'string' or 'object'.`;if(Rai(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let s=Epa([...Nai].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. -Expected it to be ${s}.`}var vpa=class extends Error{name="InvalidDocError";constructor(e){super(Bpa(e)),this.doc=e}},Spa=vpa;function wpa(e,t){if(typeof e=="string")return t(e);let r=new Map;return s(e);function s(o){if(r.has(o))return r.get(o);let g=a(o);return r.set(o,g),g}function a(o){switch(Rai(o)){case bai:return t(o.map(s));case Pdr:return t({...o,parts:o.parts.map(s)});case Odr:return t({...o,breakContents:s(o.breakContents),flatContents:s(o.flatContents)});case Wdr:{let{expandedStates:g,contents:p}=o;return g?(g=g.map(s),p=g[0]):p=s(p),t({...o,contents:p,expandedStates:g})}case Vdr:case Bai:case Sai:case Tai:case Mdr:return t({...o,contents:s(o.contents)});case yai:case Eai:case vai:case wai:case wSe:case Qdr:return t(o);default:throw new Spa(o)}}}function Tpa(e,t=xdr){return wpa(e,r=>typeof r=="string"?u9(t,r.split(` -`)):r)}var Ydr=()=>{},SSe=Ydr,Dai=Ydr,Npa=Ydr;function smt(e,t){return SSe(t),{type:Vdr,contents:t,n:e}}function tmt(e,t={}){return SSe(e),Dai(t.expandedStates,!0),{type:Wdr,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function joi(e){return smt(Number.NEGATIVE_INFINITY,e)}function Rpa(e){return smt({type:"root"},e)}function Dpa(e){return smt(-1,e)}function zoi(e,t){return tmt(e[0],{...t,expandedStates:e})}function xai(e){return Npa(e),{type:Pdr,parts:e}}function Ddr(e,t="",r={}){return SSe(e),t!==""&&SSe(t),{type:Odr,breakContents:e,flatContents:t,groupId:r.groupId}}function xpa(e){return SSe(e),{type:Mdr,contents:e}}var Hdr={type:Qdr},kpa={type:wSe,hard:!0},Gpa={type:wSe,hard:!0,literal:!0},xYe={type:wSe},kai={type:wSe,soft:!0},h_=[kpa,Hdr],xdr=[Gpa,Hdr];function u9(e,t){SSe(e),Dai(t);let r=[];for(let s=0;s{let a=!!(s!=null&&s.backwards);if(r===!1)return!1;let{length:o}=t,g=r;for(;g>=0&&g{"use strict";var t=Dpa(),r=xpa(),s=vai(),a=wfe(),o=bai();kMe();function g(k,T=!0,O){O===void 0&&typeof T=="string"&&(O=T,T=!0);let X=Object.assign({},r.Document.defaults[r.defaultOptions.version],r.defaultOptions);return new s.Schema(X).createNode(k,T,O)}var p=class extends r.Document{constructor(k){super(Object.assign({},r.defaultOptions,k))}};function f(k,T){let O=[],X;for(let U of t.parse(k)){let le=new p(T);le.parse(U,X),O.push(le),X=le}return O}function m(k,T){let O=t.parse(k),X=new p(T).parse(O[0]);if(O.length>1){let U="Source contains multiple documents; please use YAML.parseAllDocuments()";X.errors.unshift(new a.YAMLSemanticError(O[1],U))}return X}function y(k,T){let O=m(k,T);if(O.warnings.forEach(X=>o.warn(X)),O.errors.length>0)throw O.errors[0];return O.toJSON()}function B(k,T){let O=new p(T);return O.contents=k,String(O)}var v={createNode:g,defaultOptions:r.defaultOptions,Document:p,parse:y,parseAllDocuments:f,parseCST:t.parse,parseDocument:m,scalarOptions:r.scalarOptions,stringify:B};e.YAML=v}),Gpa=zz((e,t)=>{t.exports=kpa().YAML}),Fpa=zz(e=>{"use strict";var t=kMe(),r=wfe();e.findPair=t.findPair,e.parseMap=t.resolveMap,e.parseSeq=t.resolveSeq,e.stringifyNumber=t.stringifyNumber,e.stringifyString=t.stringifyString,e.toJSON=t.toJSON,e.Type=r.Type,e.YAMLError=r.YAMLError,e.YAMLReferenceError=r.YAMLReferenceError,e.YAMLSemanticError=r.YAMLSemanticError,e.YAMLSyntaxError=r.YAMLSyntaxError,e.YAMLWarning=r.YAMLWarning}),Tai={};fai(Tai,{languages:()=>zai,options:()=>qai,parsers:()=>zdr,printers:()=>Aci});var Zpa=(e,t,r,s)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,s):r.global?t.replace(r,s):t.split(r).join(s)},Tdr=Zpa,Nai="string",Rai="array",Dai="cursor",xai="indent",Mdr="align",kai="trim",Hdr="group",Ydr="fill",Xdr="if-break",Gai="indent-if-break",Jdr="line-suffix",Fai="line-suffix-boundary",RSe="line",Zai="label",Udr="break-parent",Lai=new Set([Dai,xai,Mdr,kai,Hdr,Ydr,Xdr,Gai,Jdr,Fai,RSe,Zai,Udr]),Lpa=(e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},wQ=Lpa;function Vpa(e){if(typeof e=="string")return Nai;if(Array.isArray(e))return Rai;if(!e)return;let{type:t}=e;if(Lai.has(t))return t}var Vai=Vpa,Wpa=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function Ppa(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', +Expected it to be 'string' or 'object'.`;if(Vai(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let s=Wpa([...Lai].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. +Expected it to be ${s}.`}var Opa=class extends Error{name="InvalidDocError";constructor(e){super(Ppa(e)),this.doc=e}},Qpa=Opa;function Mpa(e,t){if(typeof e=="string")return t(e);let r=new Map;return s(e);function s(o){if(r.has(o))return r.get(o);let g=a(o);return r.set(o,g),g}function a(o){switch(Vai(o)){case Rai:return t(o.map(s));case Ydr:return t({...o,parts:o.parts.map(s)});case Xdr:return t({...o,breakContents:s(o.breakContents),flatContents:s(o.flatContents)});case Hdr:{let{expandedStates:g,contents:p}=o;return g?(g=g.map(s),p=g[0]):p=s(p),t({...o,contents:p,expandedStates:g})}case Mdr:case xai:case Gai:case Zai:case Jdr:return t({...o,contents:s(o.contents)});case Nai:case Dai:case kai:case Fai:case RSe:case Udr:return t(o);default:throw new Qpa(o)}}}function Hpa(e,t=Ldr){return Mpa(e,r=>typeof r=="string"?g9(t,r.split(` +`)):r)}var Kdr=()=>{},NSe=Kdr,Wai=Kdr,Ypa=Kdr;function cmt(e,t){return NSe(t),{type:Mdr,contents:t,n:e}}function imt(e,t={}){return NSe(e),Wai(t.expandedStates,!0),{type:Hdr,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function iai(e){return cmt(Number.NEGATIVE_INFINITY,e)}function Xpa(e){return cmt({type:"root"},e)}function Jpa(e){return cmt(-1,e)}function sai(e,t){return imt(e[0],{...t,expandedStates:e})}function Pai(e){return Ypa(e),{type:Ydr,parts:e}}function Zdr(e,t="",r={}){return NSe(e),t!==""&&NSe(t),{type:Xdr,breakContents:e,flatContents:t,groupId:r.groupId}}function Upa(e){return NSe(e),{type:Jdr,contents:e}}var jdr={type:Udr},Kpa={type:RSe,hard:!0},jpa={type:RSe,hard:!0,literal:!0},GMe={type:RSe},Oai={type:RSe,soft:!0},__=[Kpa,jdr],Ldr=[jpa,jdr];function g9(e,t){NSe(e),Wai(t);let r=[];for(let s=0;s{let a=!!(s!=null&&s.backwards);if(r===!1)return!1;let{length:o}=t,g=r;for(;g>=0&&g{let a=await s(t.originalText,{parser:"json"});return a?[a,h_]:void 0}}Gai.getVisitorKeys=()=>[];var Ppa=Gai,wYe=null;function RYe(e){if(wYe!==null&&typeof wYe.property){let t=wYe;return wYe=RYe.prototype=null,t}return wYe=RYe.prototype=e??Object.create(null),new RYe}var Opa=10;for(let e=0;e<=Opa;e++)RYe();function Mpa(e){return RYe(e)}function Qpa(e,t="type"){Mpa(e);function r(s){let a=s[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:s});return o}return r}var Ypa=Qpa,Hpa=Object.fromEntries(Object.entries({root:["children"],document:["head","body","children"],documentHead:["children"],documentBody:["children"],directive:[],alias:[],blockLiteral:[],blockFolded:["children"],plain:["children"],quoteSingle:[],quoteDouble:[],mapping:["children"],mappingItem:["key","value","children"],mappingKey:["content","children"],mappingValue:["content","children"],sequence:["children"],sequenceItem:["content","children"],flowMapping:["children"],flowMappingItem:["key","value","children"],flowSequence:["children"],flowSequenceItem:["content","children"],comment:[],tag:[],anchor:[]}).map(([e,t])=>[e,[...t,"anchor","tag","indicatorComment","leadingComments","middleComments","trailingComment","endComments"]])),Xpa=Hpa,Jpa=Ypa(Xpa),Upa=Jpa;function rmt(e){return e.position.start.offset}function Kpa(e){return e.position.end.offset}function jpa(e){return/^\s*@(?:prettier|format)\s*$/u.test(e)}function zpa(e){return/^\s*#[^\S\n]*@(?:prettier|format)\s*?(?:\n|$)/u.test(e)}function qpa(e){return`# @format - -${e}`}function $pa(e){return Array.isArray(e)&&e.length>0}var kYe=$pa;function Kz(e,t){return typeof e?.type=="string"&&(!t||t.includes(e.type))}function Fai(e,t,r){return t("children"in e?{...e,children:e.children.map(s=>Fai(s,t,e))}:e,r)}function TYe(e,t,r){Object.defineProperty(e,t,{get:r,enumerable:!1})}function efa(e,t){let r=0,s=t.length;for(let a=e.position.end.offset-1;ao===0&&o===g.length-1?a:o!==0&&o!==g.length-1?a.trim():o===0?a.trimEnd():a.trimStart());return r.proseWrap==="preserve"?s.map(a=>a.length===0?[]:[a]):s.map(a=>a.length===0?[]:Vai(a)).reduce((a,o,g)=>g!==0&&s[g-1].length>0&&o.length>0&&!(e==="quoteDouble"&&vM(!1,vM(!1,a,-1),-1).endsWith("\\"))?[...a.slice(0,-1),[...vM(!1,a,-1),...o]]:[...a,o],[]).map(a=>r.proseWrap==="never"?[a.join(" ")]:a)}function ifa(e,{parentIndent:t,isLastDescendant:r,options:s}){let a=e.position.start.line===e.position.end.line?"":s.originalText.slice(e.position.start.offset,e.position.end.offset).match(/^[^\n]*\n(.*)$/su)[1],o;if(e.indent===null){let f=a.match(/^(? *)[^\n\r ]/mu);o=f?f.groups.leadingSpace.length:Number.POSITIVE_INFINITY}else o=e.indent-1+t;let g=a.split(` -`).map(f=>f.slice(o));if(s.proseWrap==="preserve"||e.type==="blockLiteral")return p(g.map(f=>f.length===0?[]:[f]));return p(g.map(f=>f.length===0?[]:Vai(f)).reduce((f,m,y)=>y!==0&&g[y-1].length>0&&m.length>0&&!/^\s/u.test(m[0])&&!/^\s|\s$/u.test(vM(!1,f,-1))?[...f.slice(0,-1),[...vM(!1,f,-1),...m]]:[...f,m],[]).map(f=>f.reduce((m,y)=>m.length>0&&/\s$/u.test(vM(!1,m,-1))?[...m.slice(0,-1),vM(!1,m,-1)+" "+y]:[...m,y],[])).map(f=>s.proseWrap==="never"?[f.join(" ")]:f));function p(f){if(e.chomping==="keep")return vM(!1,f,-1).length===0?f.slice(0,-1):f;let m=0;for(let y=f.length-1;y>=0&&f[y].length===0;y--)m++;return m===0?f:m>=2&&!r?f.slice(0,-(m-1)):f.slice(0,-m)}}function Gdr(e){if(!e)return!0;switch(e.type){case"plain":case"quoteDouble":case"quoteSingle":case"alias":case"flowMapping":case"flowSequence":return!0;default:return!1}}var Bdr=new WeakMap;function Wai(e,t){let{node:r,root:s}=e,a;return Bdr.has(s)?a=Bdr.get(s):(a=new Set,Bdr.set(s,a)),!a.has(r.position.end.line)&&(a.add(r.position.end.line),efa(r,t)&&!Pai(e.parent))?kai:""}function Pai(e){return I5(e)&&!Kz(e,["documentHead","documentBody","flowMapping","flowSequence"])}function BM(e,t){return smt(" ".repeat(e),t)}function sfa(e,t,r){let{node:s}=e,a=e.ancestors.filter(m=>m.type==="sequence"||m.type==="mapping").length,o=Zai(e),g=[s.type==="blockFolded"?">":"|"];s.indent!==null&&g.push(s.indent.toString()),s.chomping!=="clip"&&g.push(s.chomping==="keep"?"+":"-"),Lai(s)&&g.push(" ",t("indicatorComment"));let p=ifa(s,{parentIndent:a,isLastDescendant:o,options:r}),f=[];for(let[m,y]of p.entries())m===0&&f.push(h_),f.push(xai(u9(xYe,y))),m!==p.length-1?f.push(y.length===0?h_:Rpa(xdr)):s.chomping==="keep"&&o&&f.push(joi(y.length===0?h_:xdr));return s.indent===null?g.push(Dpa(BM(r.tabWidth,f))):g.push(joi(BM(s.indent-1+a,f))),g}var ofa=sfa;function tai(e,t,r){let{node:s}=e,a=s.type==="flowMapping",o=a?"{":"[",g=a?"}":"]",p=kai;a&&s.children.length>0&&r.bracketSpacing&&(p=xYe);let f=vM(!1,s.children,-1),m=f?.type==="flowMappingItem"&&nmt(f.key)&&nmt(f.value);return[o,BM(r.tabWidth,[p,afa(e,t,r),r.trailingComma==="none"?"":Ddr(","),I5(s)?[h_,u9(h_,e.map(t,"endComments"))]:""]),m?"":p,g]}function afa(e,t,r){return e.map(({isLast:s,node:a,next:o})=>[t(),s?"":[",",xYe,a.position.start.line!==o.position.start.line?Wai(e,r.originalText):""]],"children")}function cfa(e,t,r){var s;let{node:a,parent:o}=e,{key:g,value:p}=a,f=nmt(g),m=nmt(p);if(f&&m)return": ";let y=t("key"),B=lfa(a)?" ":"";if(m)return a.type==="flowMappingItem"&&o.type==="flowMapping"?y:a.type==="mappingItem"&&vdr(g.content,r)&&!f5(g.content)&&((s=o.tag)==null?void 0:s.value)!=="tag:yaml.org,2002:set"?[y,B,":"]:["? ",BM(2,y)];let v=t("value");if(f)return[": ",BM(2,v)];if(Lse(p)||!Gdr(g.content))return["? ",BM(2,y),h_,...e.map(()=>[t(),h_],"value","leadingComments"),": ",BM(2,v)];if(ufa(g.content)&&!Lse(g.content)&&!BSe(g.content)&&!f5(g.content)&&!I5(g)&&!Lse(p.content)&&!BSe(p.content)&&!I5(p)&&vdr(p.content,r))return[y,B,": ",v];let G=Symbol("mappingKey"),T=tmt([Ddr("? "),tmt(BM(2,y),{id:G})]),O=[h_,": ",BM(2,v)],X=[B,":"];Lse(p.content)||I5(p)&&p.content&&!Kz(p.content,["mapping","sequence"])||o.type==="mapping"&&f5(g.content)&&Gdr(p.content)||Kz(p.content,["mapping","sequence"])&&p.content.tag===null&&p.content.anchor===null?X.push(h_):p.content?X.push(xYe):f5(p)&&X.push(" "),X.push(v);let U=BM(r.tabWidth,X);return vdr(g.content,r)&&!Lse(g.content)&&!BSe(g.content)&&!I5(g)?zoi([[y,U]]):zoi([[T,Ddr(O,U,{groupId:G})]])}function vdr(e,t){if(!e)return!0;switch(e.type){case"plain":case"quoteSingle":case"quoteDouble":break;case"alias":return!0;default:return!1}if(t.proseWrap==="preserve")return e.position.start.line===e.position.end.line;if(/\\$/mu.test(t.originalText.slice(e.position.start.offset,e.position.end.offset)))return!1;switch(t.proseWrap){case"never":return!e.value.includes(` -`);case"always":return!/[\n ]/u.test(e.value);default:return!1}}function lfa(e){var t;return((t=e.key.content)==null?void 0:t.type)==="alias"}function ufa(e){if(!e)return!0;switch(e.type){case"plain":case"quoteDouble":case"quoteSingle":return e.position.start.line===e.position.end.line;case"alias":return!0;default:return!1}}var gfa=cfa;function Afa(e){return Fai(e,dfa)}function dfa(e){switch(e.type){case"document":TYe(e,"head",()=>e.children[0]),TYe(e,"body",()=>e.children[1]);break;case"documentBody":case"sequenceItem":case"flowSequenceItem":case"mappingKey":case"mappingValue":TYe(e,"content",()=>e.children[0]);break;case"mappingItem":case"flowMappingItem":TYe(e,"key",()=>e.children[0]),TYe(e,"value",()=>e.children[1]);break}return e}var pfa=Afa;function ffa(e,t,r){let{node:s}=e,a=[];s.type!=="mappingValue"&&Lse(s)&&a.push([u9(h_,e.map(r,"leadingComments")),h_]);let{tag:o,anchor:g}=s;o&&a.push(r("tag")),o&&g&&a.push(" "),g&&a.push(r("anchor"));let p="";return Kz(s,["mapping","sequence","comment","directive","mappingItem","sequenceItem"])&&!Zai(e)&&(p=Wai(e,t.originalText)),(o||g)&&(Kz(s,["sequence","mapping"])&&!BSe(s)?a.push(h_):a.push(" ")),BSe(s)&&a.push([s.middleComments.length===1?"":h_,u9(h_,e.map(r,"middleComments")),h_]),tfa(e)?a.push(Tpa(t.originalText.slice(s.position.start.offset,s.position.end.offset).trimEnd())):a.push(tmt(Ifa(e,t,r))),f5(s)&&!Kz(s,["document","documentHead"])&&a.push(xpa([s.type==="mappingValue"&&!s.content?"":" ",e.parent.type==="mappingKey"&&e.getParentNode(2).type==="mapping"&&Gdr(s)?"":Hdr,r("trailingComment")])),Pai(s)&&a.push(BM(s.type==="sequenceItem"?2:0,[h_,u9(h_,e.map(({node:f})=>[Lpa(t.originalText,rmt(f))?h_:"",r()],"endComments"))])),a.push(p),a}function Ifa(e,t,r){let{node:s}=e;switch(s.type){case"root":{let a=[];e.each(({node:g,next:p,isFirst:f})=>{f||a.push(h_),a.push(r()),Oai(g,p)?(a.push(h_,"..."),f5(g)&&a.push(" ",r("trailingComment"))):p&&!f5(p.head)&&a.push(h_,"---")},"children");let o=kdr(s);return(!Kz(o,["blockLiteral","blockFolded"])||o.chomping!=="keep")&&a.push(h_),a}case"document":{let a=[];return mfa(e,t)==="head"&&((s.head.children.length>0||s.head.endComments.length>0)&&a.push(r("head")),f5(s.head)?a.push(["---"," ",r(["head","trailingComment"])]):a.push("---")),Cfa(s)&&a.push(r("body")),u9(h_,a)}case"documentHead":return u9(h_,[...e.map(r,"children"),...e.map(r,"endComments")]);case"documentBody":{let{children:a,endComments:o}=s,g="";if(a.length>0&&o.length>0){let p=kdr(s);Kz(p,["blockFolded","blockLiteral"])?p.chomping!=="keep"&&(g=[h_,h_]):g=h_}return[u9(h_,e.map(r,"children")),g,u9(h_,e.map(r,"endComments"))]}case"directive":return["%",u9(" ",[s.name,...s.parameters])];case"comment":return["#",s.value];case"alias":return["*",s.value];case"tag":return t.originalText.slice(s.position.start.offset,s.position.end.offset);case"anchor":return["&",s.value];case"plain":return NYe(s.type,t.originalText.slice(s.position.start.offset,s.position.end.offset),t);case"quoteDouble":case"quoteSingle":{let a="'",o='"',g=t.originalText.slice(s.position.start.offset+1,s.position.end.offset-1);if(s.type==="quoteSingle"&&g.includes("\\")||s.type==="quoteDouble"&&/\\[^"]/u.test(g)){let f=s.type==="quoteDouble"?o:a;return[f,NYe(s.type,g,t),f]}if(g.includes(o))return[a,NYe(s.type,s.type==="quoteDouble"?Edr(!1,Edr(!1,g,String.raw`\"`,o),"'",a.repeat(2)):g,t),a];if(g.includes(a))return[o,NYe(s.type,s.type==="quoteSingle"?Edr(!1,g,"''",a):g,t),o];let p=t.singleQuote?a:o;return[p,NYe(s.type,g,t),p]}case"blockFolded":case"blockLiteral":return ofa(e,r,t);case"mapping":case"sequence":return u9(h_,e.map(r,"children"));case"sequenceItem":return["- ",BM(2,s.content?r("content"):"")];case"mappingKey":case"mappingValue":return s.content?r("content"):"";case"mappingItem":case"flowMappingItem":return gfa(e,r,t);case"flowMapping":return tai(e,r,t);case"flowSequence":return tai(e,r,t);case"flowSequenceItem":return r("content");default:throw new Wpa(s,"YAML")}}function Cfa(e){return e.body.children.length>0||I5(e.body)}function Oai(e,t){return f5(e)||t&&(t.head.children.length>0||I5(t.head))}function mfa(e,t){let r=e.node;if(e.isFirst&&/---(?:\s|$)/u.test(t.originalText.slice(rmt(r),rmt(r)+4))||r.head.children.length>0||I5(r.head)||f5(r.head))return"head";let s=e.next;return Oai(r,s)?!1:s?"root":!1}function NYe(e,t,r){let s=nfa(e,t,r);return u9(h_,s.map(a=>xai(u9(xYe,a))))}function Mai(e,t){if(Kz(e))switch(e.type){case"comment":if(jpa(e.value))return null;break;case"quoteDouble":case"quoteSingle":t.type="quote";break}}Mai.ignoredProperties=new Set(["position"]);var hfa={preprocess:pfa,embed:Ppa,print:ffa,massageAstNode:Mai,insertPragma:qpa,getVisitorKeys:Upa},_fa=hfa,Qai=[{linguistLanguageId:407,name:"YAML",type:"data",color:"#cb171e",tmScope:"source.yaml",aliases:["yml"],extensions:[".yml",".mir",".reek",".rviz",".sublime-syntax",".syntax",".yaml",".yaml-tmlanguage",".yaml.sed",".yml.mysql"],filenames:[".clang-format",".clang-tidy",".gemrc","CITATION.cff","glide.lock",".prettierrc",".stylelintrc",".lintstagedrc"],aceMode:"yaml",codemirrorMode:"yaml",codemirrorMimeType:"text/x-yaml",parsers:["yaml"],vscodeLanguageIds:["yaml","ansible","dockercompose","github-actions-workflow","home-assistant"]}],Sdr={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},yfa={bracketSpacing:Sdr.bracketSpacing,singleQuote:Sdr.singleQuote,proseWrap:Sdr.proseWrap},Yai=yfa,Xdr={};aai(Xdr,{yaml:()=>PIa});var qCt=` -`,rai="\r",bfa=function(){function e(t){this.length=t.length;for(var r=[0],s=0;sthis.length)return null;for(var r=0,s=this.offsets;s[r+1]<=t;)r++;var a=t-s[r];return{line:r,column:a}},e.prototype.indexForLocation=function(t){var r=t.line,s=t.column;return r<0||r>=this.offsets.length||s<0||s>this.lengthOfLine(r)?null:this.offsets[r]+s},e.prototype.lengthOfLine=function(t){var r=this.offsets[t],s=t===this.offsets.length-1?this.length:this.offsets[t+1];return s-r},e}();function e3(e,t=null){"children"in e&&e.children.forEach(r=>e3(r,e)),"anchor"in e&&e.anchor&&e3(e.anchor,e),"tag"in e&&e.tag&&e3(e.tag,e),"leadingComments"in e&&e.leadingComments.forEach(r=>e3(r,e)),"middleComments"in e&&e.middleComments.forEach(r=>e3(r,e)),"indicatorComment"in e&&e.indicatorComment&&e3(e.indicatorComment,e),"trailingComment"in e&&e.trailingComment&&e3(e.trailingComment,e),"endComments"in e&&e.endComments.forEach(r=>e3(r,e)),Object.defineProperty(e,"_parent",{value:t,enumerable:!1})}function imt(e){return`${e.line}:${e.column}`}function Efa(e){e3(e);let t=Bfa(e),r=e.children.slice();e.comments.sort((s,a)=>s.position.start.offset-a.position.end.offset).filter(s=>!s._parent).forEach(s=>{for(;r.length>1&&s.position.start.line>r[0].position.end.line;)r.shift();vfa(s,t,r[0])})}function Bfa(e){let t=Array.from(new Array(e.position.end.line),()=>({}));for(let r of e.comments)t[r.position.start.line-1].comment=r;return Hai(t,e),t}function Hai(e,t){if(t.position.start.offset!==t.position.end.offset){if("leadingComments"in t){let{start:r}=t.position,{leadingAttachableNode:s}=e[r.line-1];(!s||r.column1&&t.type!=="document"&&t.type!=="documentHead"){let{end:r}=t.position,{trailingAttachableNode:s}=e[r.line-1];(!s||r.column>=s.position.end.column)&&(e[r.line-1].trailingAttachableNode=t)}if(t.type!=="root"&&t.type!=="document"&&t.type!=="documentHead"&&t.type!=="documentBody"){let{start:r,end:s}=t.position,a=[s.line].concat(r.line===s.line?[]:r.line);for(let o of a){let g=e[o-1].trailingNode;(!g||s.column>=g.position.end.column)&&(e[o-1].trailingNode=t)}}"children"in t&&t.children.forEach(r=>{Hai(e,r)})}}function vfa(e,t,r){let s=e.position.start.line,{trailingAttachableNode:a}=t[s-1];if(a){if(a.trailingComment)throw new Error(`Unexpected multiple trailing comment at ${imt(e.position.start)}`);e3(e,a),a.trailingComment=e;return}for(let g=s;g>=r.position.start.line;g--){let{trailingNode:p}=t[g-1],f;if(p)f=p;else if(g!==s&&t[g-1].comment)f=t[g-1].comment._parent;else continue;if((f.type==="sequence"||f.type==="mapping")&&(f=f.children[0]),f.type==="mappingItem"){let[m,y]=f.children;f=Xai(m)?m:y}for(;;){if(Sfa(f,e)){e3(e,f),f.endComments.push(e);return}if(!f._parent)break;f=f._parent}break}for(let g=s+1;g<=r.position.end.line;g++){let{leadingAttachableNode:p}=t[g-1];if(p){e3(e,p),p.leadingComments.push(e);return}}let o=r.children[1];e3(e,o),o.endComments.push(e)}function Sfa(e,t){if(e.position.start.offsett.position.end.offset)switch(e.type){case"flowMapping":case"flowSequence":return e.children.length===0||t.position.start.line>e.children[e.children.length-1].position.end.line}if(t.position.end.offsete.position.start.column;case"mappingKey":case"mappingValue":return t.position.start.column>e._parent.position.start.column&&(e.children.length===0||e.children.length===1&&e.children[0].type!=="blockFolded"&&e.children[0].type!=="blockLiteral")&&(e.type==="mappingValue"||Xai(e));default:return!1}}function Xai(e){return e.position.start!==e.position.end&&(e.children.length===0||e.position.start.offset!==e.children[0].position.start.offset)}function aS(e,t){return{type:e,position:t}}function wfa(e,t,r){return{...aS("root",e),children:t,comments:r}}function emt(e){switch(e.type){case"DOCUMENT":for(let t=e.contents.length-1;t>=0;t--)e.contents[t].type==="BLANK_LINE"?e.contents.splice(t,1):emt(e.contents[t]);for(let t=e.directives.length-1;t>=0;t--)e.directives[t].type==="BLANK_LINE"&&e.directives.splice(t,1);break;case"FLOW_MAP":case"FLOW_SEQ":case"MAP":case"SEQ":for(let t=e.items.length-1;t>=0;t--){let r=e.items[t];"char"in r||(r.type==="BLANK_LINE"?e.items.splice(t,1):emt(r))}break;case"MAP_KEY":case"MAP_VALUE":case"SEQ_ITEM":e.node&&emt(e.node);break;case"ALIAS":case"BLANK_LINE":case"BLOCK_FOLDED":case"BLOCK_LITERAL":case"COMMENT":case"DIRECTIVE":case"PLAIN":case"QUOTE_DOUBLE":case"QUOTE_SINGLE":break;default:throw new Error(`Unexpected node type ${JSON.stringify(e.type)}`)}}function TSe(){return{leadingComments:[]}}function amt(e=null){return{trailingComment:e}}function bfe(){return{...TSe(),...amt()}}function Tfa(e,t,r){return{...aS("alias",e),...bfe(),...t,value:r}}function Nfa(e,t){let r=e.cstNode;return Tfa(t.transformRange({origStart:r.valueRange.origStart-1,origEnd:r.valueRange.origEnd}),t.transformContent(e),r.rawValue)}function Rfa(e){return{...e,type:"blockFolded"}}function Dfa(e,t,r,s,a,o){return{...aS("blockValue",e),...TSe(),...t,chomping:r,indent:s,value:a,indicatorComment:o}}var vSe;(function(e){e.Tag="!",e.Anchor="&",e.Comment="#"})(vSe||(vSe={}));function xfa(e,t){return{...aS("anchor",e),value:t}}function Jdr(e,t){return{...aS("comment",e),value:t}}function kfa(e,t,r){return{anchor:t,tag:e,middleComments:r}}function Gfa(e,t){return{...aS("tag",e),value:t}}function Jai(e,t,r=()=>!1){let s=e.cstNode,a=[],o=null,g=null,p=null;for(let f of s.props){let m=t.text[f.origStart];switch(m){case vSe.Tag:o=o||f,g=Gfa(t.transformRange(f),e.tag);break;case vSe.Anchor:o=o||f,p=xfa(t.transformRange(f),s.anchor);break;case vSe.Comment:{let y=Jdr(t.transformRange(f),t.text.slice(f.origStart+1,f.origEnd));t.comments.push(y),!r(y)&&o&&o.origEnd<=f.origStart&&f.origEnd<=s.valueRange.origStart&&a.push(y);break}default:throw new Error(`Unexpected leading character ${JSON.stringify(m)}`)}}return kfa(g,p,a)}var Fdr;(function(e){e.CLIP="clip",e.STRIP="strip",e.KEEP="keep"})(Fdr||(Fdr={}));function Uai(e,t){let r=e.cstNode,s=1,a=r.chomping==="CLIP"?0:1,o=r.header.origEnd-r.header.origStart-s-a!==0,g=t.transformRange({origStart:r.header.origStart,origEnd:r.valueRange.origEnd}),p=null,f=Jai(e,t,m=>{if(!(g.start.offset=0;f--){let m=e.contents[f];if(m.type==="COMMENT"){let y=t.transformNode(m);r&&r.line===y.position.start.line?g.unshift(y):p?s.unshift(y):y.position.start.offset>=e.valueRange.origEnd?o.unshift(y):s.unshift(y)}else p=!0}if(o.length>1)throw new Error(`Unexpected multiple document trailing comments at ${imt(o[1].position.start)}`);if(g.length>1)throw new Error(`Unexpected multiple documentHead trailing comments at ${imt(g[1].position.start)}`);return{comments:s,endComments:a,documentTrailingComment:Vse(o)||null,documentHeadTrailingComment:Vse(g)||null}}function Hfa(e,t,r){let s=Kai(r.text.slice(e.valueRange.origEnd),/^\.\.\./),a=s===-1?e.valueRange.origEnd:Math.max(0,e.valueRange.origEnd-1);r.text[a-1]==="\r"&&a--;let o=r.transformRange({origStart:t!==null?t.position.start.offset:a,origEnd:a}),g=s===-1?o.end:r.transformOffset(e.valueRange.origEnd+3);return{position:o,documentEndPoint:g}}function Xfa(e,t,r,s){return{...aS("documentHead",e),...Efe(r),...amt(s),children:t}}function Jfa(e,t){let r=e.cstNode,{directives:s,comments:a,endComments:o}=Ufa(r,t),{position:g,endMarkerPoint:p}=Kfa(r,s,t);return t.comments.push(...a,...o),{createDocumentHeadWithTrailingComment:f=>(f&&t.comments.push(f),Xfa(g,s,o,f)),documentHeadEndMarkerPoint:p}}function Ufa(e,t){let r=[],s=[],a=[],o=!1;for(let g=e.directives.length-1;g>=0;g--){let p=t.transformNode(e.directives[g]);p.type==="comment"?o?s.unshift(p):a.unshift(p):(o=!0,r.unshift(p))}return{directives:r,comments:s,endComments:a}}function Kfa(e,t,r){let s=Kai(r.text.slice(0,e.valueRange.origStart),/---\s*$/);s>0&&!/[\r\n]/.test(r.text[s-1])&&(s=-1);let a=s===-1?{origStart:e.valueRange.origStart,origEnd:e.valueRange.origStart}:{origStart:s,origEnd:s+3};return t.length!==0&&(a.origStart=t[0].position.start.offset),{position:r.transformRange(a),endMarkerPoint:s===-1?null:r.transformOffset(s)}}function jfa(e,t){let{createDocumentHeadWithTrailingComment:r,documentHeadEndMarkerPoint:s}=Jfa(e,t),{documentBody:a,documentEndPoint:o,documentTrailingComment:g,documentHeadTrailingComment:p}=Qfa(e,t,s),f=r(p);return g&&t.comments.push(g),Ofa(_fe(f.position.start,o),f,a,g)}function jai(e,t,r){return{...aS("flowCollection",e),...bfe(),...Efe(),...t,children:r}}function zfa(e,t,r){return{...jai(e,t,r),type:"flowMapping"}}function zai(e,t,r){return{...aS("flowMappingItem",e),...TSe(),children:[t,r]}}function cmt(e,t){let r=[];for(let s of e)s&&"type"in s&&s.type==="COMMENT"?t.comments.push(t.transformNode(s)):r.push(s);return r}function qai(e){let[t,r]=["?",":"].map(s=>{let a=e.find(o=>"char"in o&&o.char===s);return a?{origStart:a.origOffset,origEnd:a.origOffset+1}:null});return{additionalKeyRange:t,additionalValueRange:r}}function $ai(e,t){let r=t;return s=>e.slice(r,r=s)}function eci(e){let t=[],r=$ai(e,1),s=!1;for(let a=1;a{let m=s[f],{additionalKeyRange:y,additionalValueRange:B}=qai(m);return Kdr(p,t,zai,y,B)}),o=r[0],g=Vse(r);return zfa(t.transformRange({origStart:o.origOffset,origEnd:g.origOffset+1}),t.transformContent(e),a)}function $fa(e,t,r){return{...jai(e,t,r),type:"flowSequence"}}function eIa(e,t){return{...aS("flowSequenceItem",e),children:[t]}}function tIa(e,t){let r=cmt(e.cstNode.items,t),s=eci(r),a=e.items.map((p,f)=>{if(p.type!=="PAIR"){let m=t.transformNode(p);return eIa(_fe(m.position.start,m.position.end),m)}else{let m=s[f],{additionalKeyRange:y,additionalValueRange:B}=qai(m);return Kdr(p,t,zai,y,B)}}),o=r[0],g=Vse(r);return $fa(t.transformRange({origStart:o.origOffset,origEnd:g.origOffset+1}),t.transformContent(e),a)}function rIa(e,t,r){return{...aS("mapping",e),...TSe(),...t,children:r}}function nIa(e,t,r){return{...aS("mappingItem",e),...TSe(),children:[t,r]}}function iIa(e,t){let r=e.cstNode;r.items.filter(g=>g.type==="MAP_KEY"||g.type==="MAP_VALUE").forEach(g=>Udr(g,t));let s=cmt(r.items,t),a=sIa(s),o=e.items.map((g,p)=>{let f=a[p],[m,y]=f[0].type==="MAP_VALUE"?[null,f[0].range]:[f[0].range,f.length===1?null:f[1].range];return Kdr(g,t,nIa,m,y)});return rIa(_fe(o[0].position.start,Vse(o).position.end),t.transformContent(e),o)}function sIa(e){let t=[],r=$ai(e,0),s=!1;for(let a=0;a=0;s--)if(r.test(e[s]))return s;return-1}function cIa(e,t){let r=e.cstNode;return oIa(t.transformRange({origStart:r.valueRange.origStart,origEnd:aIa(t.text,r.valueRange.origEnd-1,/\S/)+1}),t.transformContent(e),r.strValue)}function lIa(e){return{...e,type:"quoteDouble"}}function uIa(e,t,r){return{...aS("quoteValue",e),...t,...bfe(),value:r}}function tci(e,t){let r=e.cstNode;return uIa(t.transformRange(r.valueRange),t.transformContent(e),r.strValue)}function gIa(e,t){return lIa(tci(e,t))}function AIa(e){return{...e,type:"quoteSingle"}}function dIa(e,t){return AIa(tci(e,t))}function pIa(e,t,r){return{...aS("sequence",e),...TSe(),...Efe(),...t,children:r}}function fIa(e,t){return{...aS("sequenceItem",e),...bfe(),...Efe(),children:t?[t]:[]}}function IIa(e,t){let r=cmt(e.cstNode.items,t).map((s,a)=>{Udr(s,t);let o=t.transformNode(e.items[a]);return fIa(_fe(t.transformOffset(s.valueRange.origStart),o===null?t.transformOffset(s.valueRange.origStart+1):o.position.end),o)});return pIa(_fe(r[0].position.start,Vse(r).position.end),t.transformContent(e),r)}function CIa(e,t){if(e===null||e.type===void 0&&e.value===null)return null;switch(e.type){case"ALIAS":return Nfa(e,t);case"BLOCK_FOLDED":return Ffa(e,t);case"BLOCK_LITERAL":return Lfa(e,t);case"COMMENT":return Vfa(e,t);case"DIRECTIVE":return Pfa(e,t);case"DOCUMENT":return jfa(e,t);case"FLOW_MAP":return qfa(e,t);case"FLOW_SEQ":return tIa(e,t);case"MAP":return iIa(e,t);case"PLAIN":return cIa(e,t);case"QUOTE_DOUBLE":return gIa(e,t);case"QUOTE_SINGLE":return dIa(e,t);case"SEQ":return IIa(e,t);default:throw new Error(`Unexpected node type ${e.type}`)}}function mIa(e,t,r){let s=new SyntaxError(e);return s.name="YAMLSyntaxError",s.source=t,s.position=r,s}function hIa(e,t){let r=e.source.range||e.source.valueRange;return mIa(e.message,t.text,t.transformRange(r))}function _Ia(e,t,r){return{offset:e,line:t,column:r}}function yIa(e,t){e<0?e=0:e>t.text.length&&(e=t.text.length);let r=t.locator.locationForIndex(e);return _Ia(e,r.line+1,r.column+1)}function bIa(e,t){return _fe(t.transformOffset(e.origStart),t.transformOffset(e.origEnd))}function EIa(e){if(!e.setOrigRanges()){let t=r=>{if(BIa(r))return r.origStart=r.start,r.origEnd=r.end,!0;if(vIa(r))return r.origOffset=r.offset,!0};e.forEach(r=>Zdr(r,t))}}function Zdr(e,t){if(!(!e||typeof e!="object")&&t(e)!==!0)for(let r of Object.keys(e)){if(r==="context"||r==="error")continue;let s=e[r];Array.isArray(s)?s.forEach(a=>Zdr(a,t)):Zdr(s,t)}}function BIa(e){return typeof e.start=="number"}function vIa(e){return typeof e.offset=="number"}function rci(e){if("children"in e){if(e.children.length===1){let t=e.children[0];if(t.type==="plain"&&t.tag===null&&t.anchor===null&&t.value==="")return e.children.splice(0,1),e}e.children.forEach(rci)}return e}function oai(e,t,r,s){let a=t(e);return o=>{s(a,o)&&r(e,a=o)}}function nci(e){if(e===null||!("children"in e))return;let t=e.children;if(t.forEach(nci),e.type==="document"){let[o,g]=e.children;o.position.start.offset===o.position.end.offset?o.position.start=o.position.end=g.position.start:g.position.start.offset===g.position.end.offset&&(g.position.start=g.position.end=o.position.end)}let r=oai(e.position,SIa,wIa,RIa),s=oai(e.position,TIa,NIa,DIa);"endComments"in e&&e.endComments.length!==0&&(r(e.endComments[0].position.start),s(Vse(e.endComments).position.end));let a=t.filter(o=>o!==null);if(a.length!==0){let o=a[0],g=Vse(a);r(o.position.start),s(g.position.end),"leadingComments"in o&&o.leadingComments.length!==0&&r(o.leadingComments[0].position.start),"tag"in o&&o.tag&&r(o.tag.position.start),"anchor"in o&&o.anchor&&r(o.anchor.position.start),"trailingComment"in g&&g.trailingComment&&s(g.trailingComment.position.end)}}function SIa(e){return e.start}function wIa(e,t){e.start=t}function TIa(e){return e.end}function NIa(e,t){e.end=t}function RIa(e,t){return t.offsete.offset}var xIa=cai(mpa(),1),SM=cai(hpa(),1),I_l=SM.default.findPair,C_l=SM.default.toJSON,m_l=SM.default.parseMap,h_l=SM.default.parseSeq,__l=SM.default.stringifyNumber,y_l=SM.default.stringifyString,b_l=SM.default.Type,E_l=SM.default.YAMLError,B_l=SM.default.YAMLReferenceError,kIa=SM.default.YAMLSemanticError,v_l=SM.default.YAMLSyntaxError,S_l=SM.default.YAMLWarning,{Document:GIa,parseCST:FIa}=xIa.default;function ZIa(e){let t=FIa(e);EIa(t);let r=t.map(p=>new GIa({merge:!1,keepCstNodes:!0}).parse(p)),s=new bfa(e),a=[],o={text:e,locator:s,comments:a,transformOffset:p=>yIa(p,o),transformRange:p=>bIa(p,o),transformNode:p=>CIa(p,o),transformContent:p=>Jai(p,o)};for(let p of r)for(let f of p.errors)if(!(f instanceof kIa&&f.message==='Map keys must be unique; "<<" is repeated'))throw hIa(f,o);r.forEach(p=>emt(p.cstNode));let g=wfa(o.transformRange({origStart:0,origEnd:o.text.length}),r.map(o.transformNode),a);return Efa(g),nci(g),rci(g),g}function LIa(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var VIa=LIa;function WIa(e){try{let t=ZIa(e);return delete t.comments,t}catch(t){throw t!=null&&t.position?VIa(t.message,{loc:t.position,cause:t}):t}}var PIa={astFormat:"yaml",parse:WIa,hasPragma:zpa,locStart:rmt,locEnd:Kpa},ici={yaml:_fa},OIa=_ai;var MIa=Object.create,fpr=Object.defineProperty,QIa=Object.getOwnPropertyDescriptor,YIa=Object.getOwnPropertyNames,HIa=Object.getPrototypeOf,XIa=Object.prototype.hasOwnProperty,Zci=e=>{throw TypeError(e)},Lci=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Ipr=(e,t)=>{for(var r in t)fpr(e,r,{get:t[r],enumerable:!0})},JIa=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of YIa(t))!XIa.call(e,a)&&a!==r&&fpr(e,a,{get:()=>t[a],enumerable:!(s=QIa(t,a))||s.enumerable});return e},mmt=(e,t,r)=>(r=e!=null?MIa(HIa(e)):{},JIa(t||!e||!e.__esModule?fpr(r,"default",{value:e,enumerable:!0}):r,e)),UIa=(e,t,r)=>t.has(e)||Zci("Cannot "+r),KIa=(e,t,r)=>t.has(e)?Zci("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),GYe=(e,t,r)=>(UIa(e,t,"access private method"),r),Cpr=Lci((e,t)=>{"use strict";var r=new Proxy(String,{get:()=>r});t.exports=r}),jIa=Lci(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});function t(){return new Proxy({},{get:()=>o=>o})}var r=/\r\n|[\n\r\u2028\u2029]/;function s(o,g,p){let f=Object.assign({column:0,line:-1},o.start),m=Object.assign({},f,o.end),{linesAbove:y=2,linesBelow:B=3}=p||{},v=f.line,G=f.column,T=m.line,O=m.column,X=Math.max(v-(y+1),0),U=Math.min(g.length,T+B);v===-1&&(X=0),T===-1&&(U=g.length);let le=T-v,ae={};if(le)for(let ge=0;ge<=le;ge++){let fe=ge+v;if(!G)ae[fe]=!0;else if(ge===0){let pe=g[fe-1].length;ae[fe]=[G,pe-G+1]}else if(ge===le)ae[fe]=[0,O];else{let pe=g[fe-ge].length;ae[fe]=[0,pe]}}else G===O?G?ae[v]=[G,0]:ae[v]=!0:ae[v]=[G,O-G];return{start:X,end:U,markerLines:ae}}function a(o,g,p={}){let f=t(!1),m=o.split(r),{start:y,end:B,markerLines:v}=s(g,m,p),G=g.start&&typeof g.start.column=="number",T=String(B).length,O=o.split(r,B).slice(y,B).map((X,U)=>{let le=y+1+U,ae=` ${` ${le}`.slice(-T)} |`,ge=v[le],fe=!v[le+1];if(ge){let pe="";if(Array.isArray(ge)){let he=X.slice(0,Math.max(ge[0]-1,0)).replace(/[^\t]/g," "),be=ge[1]||1;pe=[` +`||a==="\r"||a==="\u2028"||a==="\u2029")return t+1}return t}var aai=zpa;function qpa(e,t){let r=t-1;r=oai(e,r,{backwards:!0}),r=aai(e,r,{backwards:!0}),r=oai(e,r,{backwards:!0});let s=aai(e,r,{backwards:!0});return r!==s}var $pa=qpa,efa=class extends Error{name="UnexpectedNodeError";constructor(e,t,r="type"){super(`Unexpected ${t} node ${r}: ${JSON.stringify(e[r])}.`),this.node=e}},tfa=efa;function Qai(e,t){let{node:r}=e;if(r.type==="root"&&t.filepath&&/(?:[/\\]|^)\.(?:prettier|stylelint|lintstaged)rc$/u.test(t.filepath))return async s=>{let a=await s(t.originalText,{parser:"json"});return a?[a,__]:void 0}}Qai.getVisitorKeys=()=>[];var rfa=Qai,NMe=null;function xMe(e){if(NMe!==null&&typeof NMe.property){let t=NMe;return NMe=xMe.prototype=null,t}return NMe=xMe.prototype=e??Object.create(null),new xMe}var nfa=10;for(let e=0;e<=nfa;e++)xMe();function ifa(e){return xMe(e)}function sfa(e,t="type"){ifa(e);function r(s){let a=s[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:s});return o}return r}var ofa=sfa,afa=Object.fromEntries(Object.entries({root:["children"],document:["head","body","children"],documentHead:["children"],documentBody:["children"],directive:[],alias:[],blockLiteral:[],blockFolded:["children"],plain:["children"],quoteSingle:[],quoteDouble:[],mapping:["children"],mappingItem:["key","value","children"],mappingKey:["content","children"],mappingValue:["content","children"],sequence:["children"],sequenceItem:["content","children"],flowMapping:["children"],flowMappingItem:["key","value","children"],flowSequence:["children"],flowSequenceItem:["content","children"],comment:[],tag:[],anchor:[]}).map(([e,t])=>[e,[...t,"anchor","tag","indicatorComment","leadingComments","middleComments","trailingComment","endComments"]])),cfa=afa,lfa=ofa(cfa),ufa=lfa;function smt(e){return e.position.start.offset}function gfa(e){return e.position.end.offset}function Afa(e){return/^\s*@(?:prettier|format)\s*$/u.test(e)}function dfa(e){return/^\s*#[^\S\n]*@(?:prettier|format)\s*?(?:\n|$)/u.test(e)}function pfa(e){return`# @format + +${e}`}function ffa(e){return Array.isArray(e)&&e.length>0}var FMe=ffa;function jz(e,t){return typeof e?.type=="string"&&(!t||t.includes(e.type))}function Mai(e,t,r){return t("children"in e?{...e,children:e.children.map(s=>Mai(s,t,e))}:e,r)}function RMe(e,t,r){Object.defineProperty(e,t,{get:r,enumerable:!1})}function Ifa(e,t){let r=0,s=t.length;for(let a=e.position.end.offset-1;ao===0&&o===g.length-1?a:o!==0&&o!==g.length-1?a.trim():o===0?a.trimEnd():a.trimStart());return r.proseWrap==="preserve"?s.map(a=>a.length===0?[]:[a]):s.map(a=>a.length===0?[]:Xai(a)).reduce((a,o,g)=>g!==0&&s[g-1].length>0&&o.length>0&&!(e==="quoteDouble"&&wQ(!1,wQ(!1,a,-1),-1).endsWith("\\"))?[...a.slice(0,-1),[...wQ(!1,a,-1),...o]]:[...a,o],[]).map(a=>r.proseWrap==="never"?[a.join(" ")]:a)}function _fa(e,{parentIndent:t,isLastDescendant:r,options:s}){let a=e.position.start.line===e.position.end.line?"":s.originalText.slice(e.position.start.offset,e.position.end.offset).match(/^[^\n]*\n(.*)$/su)[1],o;if(e.indent===null){let f=a.match(/^(? *)[^\n\r ]/mu);o=f?f.groups.leadingSpace.length:Number.POSITIVE_INFINITY}else o=e.indent-1+t;let g=a.split(` +`).map(f=>f.slice(o));if(s.proseWrap==="preserve"||e.type==="blockLiteral")return p(g.map(f=>f.length===0?[]:[f]));return p(g.map(f=>f.length===0?[]:Xai(f)).reduce((f,m,y)=>y!==0&&g[y-1].length>0&&m.length>0&&!/^\s/u.test(m[0])&&!/^\s|\s$/u.test(wQ(!1,f,-1))?[...f.slice(0,-1),[...wQ(!1,f,-1),...m]]:[...f,m],[]).map(f=>f.reduce((m,y)=>m.length>0&&/\s$/u.test(wQ(!1,m,-1))?[...m.slice(0,-1),wQ(!1,m,-1)+" "+y]:[...m,y],[])).map(f=>s.proseWrap==="never"?[f.join(" ")]:f));function p(f){if(e.chomping==="keep")return wQ(!1,f,-1).length===0?f.slice(0,-1):f;let m=0;for(let y=f.length-1;y>=0&&f[y].length===0;y--)m++;return m===0?f:m>=2&&!r?f.slice(0,-(m-1)):f.slice(0,-m)}}function Wdr(e){if(!e)return!0;switch(e.type){case"plain":case"quoteDouble":case"quoteSingle":case"alias":case"flowMapping":case"flowSequence":return!0;default:return!1}}var Ndr=new WeakMap;function Jai(e,t){let{node:r,root:s}=e,a;return Ndr.has(s)?a=Ndr.get(s):(a=new Set,Ndr.set(s,a)),!a.has(r.position.end.line)&&(a.add(r.position.end.line),Ifa(r,t)&&!Uai(e.parent))?Oai:""}function Uai(e){return mY(e)&&!jz(e,["documentHead","documentBody","flowMapping","flowSequence"])}function SQ(e,t){return cmt(" ".repeat(e),t)}function yfa(e,t,r){let{node:s}=e,a=e.ancestors.filter(m=>m.type==="sequence"||m.type==="mapping").length,o=Hai(e),g=[s.type==="blockFolded"?">":"|"];s.indent!==null&&g.push(s.indent.toString()),s.chomping!=="clip"&&g.push(s.chomping==="keep"?"+":"-"),Yai(s)&&g.push(" ",t("indicatorComment"));let p=_fa(s,{parentIndent:a,isLastDescendant:o,options:r}),f=[];for(let[m,y]of p.entries())m===0&&f.push(__),f.push(Pai(g9(GMe,y))),m!==p.length-1?f.push(y.length===0?__:Xpa(Ldr)):s.chomping==="keep"&&o&&f.push(iai(y.length===0?__:Ldr));return s.indent===null?g.push(Jpa(SQ(r.tabWidth,f))):g.push(iai(SQ(s.indent-1+a,f))),g}var bfa=yfa;function lai(e,t,r){let{node:s}=e,a=s.type==="flowMapping",o=a?"{":"[",g=a?"}":"]",p=Oai;a&&s.children.length>0&&r.bracketSpacing&&(p=GMe);let f=wQ(!1,s.children,-1),m=f?.type==="flowMappingItem"&&omt(f.key)&&omt(f.value);return[o,SQ(r.tabWidth,[p,Efa(e,t,r),r.trailingComma==="none"?"":Zdr(","),mY(s)?[__,g9(__,e.map(t,"endComments"))]:""]),m?"":p,g]}function Efa(e,t,r){return e.map(({isLast:s,node:a,next:o})=>[t(),s?"":[",",GMe,a.position.start.line!==o.position.start.line?Jai(e,r.originalText):""]],"children")}function Bfa(e,t,r){var s;let{node:a,parent:o}=e,{key:g,value:p}=a,f=omt(g),m=omt(p);if(f&&m)return": ";let y=t("key"),B=vfa(a)?" ":"";if(m)return a.type==="flowMappingItem"&&o.type==="flowMapping"?y:a.type==="mappingItem"&&Rdr(g.content,r)&&!CY(g.content)&&((s=o.tag)==null?void 0:s.value)!=="tag:yaml.org,2002:set"?[y,B,":"]:["? ",SQ(2,y)];let v=t("value");if(f)return[": ",SQ(2,v)];if(Qse(p)||!Wdr(g.content))return["? ",SQ(2,y),__,...e.map(()=>[t(),__],"value","leadingComments"),": ",SQ(2,v)];if(Sfa(g.content)&&!Qse(g.content)&&!wSe(g.content)&&!CY(g.content)&&!mY(g)&&!Qse(p.content)&&!wSe(p.content)&&!mY(p)&&Rdr(p.content,r))return[y,B,": ",v];let k=Symbol("mappingKey"),T=imt([Zdr("? "),imt(SQ(2,y),{id:k})]),O=[__,": ",SQ(2,v)],X=[B,":"];Qse(p.content)||mY(p)&&p.content&&!jz(p.content,["mapping","sequence"])||o.type==="mapping"&&CY(g.content)&&Wdr(p.content)||jz(p.content,["mapping","sequence"])&&p.content.tag===null&&p.content.anchor===null?X.push(__):p.content?X.push(GMe):CY(p)&&X.push(" "),X.push(v);let U=SQ(r.tabWidth,X);return Rdr(g.content,r)&&!Qse(g.content)&&!wSe(g.content)&&!mY(g)?sai([[y,U]]):sai([[T,Zdr(O,U,{groupId:k})]])}function Rdr(e,t){if(!e)return!0;switch(e.type){case"plain":case"quoteSingle":case"quoteDouble":break;case"alias":return!0;default:return!1}if(t.proseWrap==="preserve")return e.position.start.line===e.position.end.line;if(/\\$/mu.test(t.originalText.slice(e.position.start.offset,e.position.end.offset)))return!1;switch(t.proseWrap){case"never":return!e.value.includes(` +`);case"always":return!/[\n ]/u.test(e.value);default:return!1}}function vfa(e){var t;return((t=e.key.content)==null?void 0:t.type)==="alias"}function Sfa(e){if(!e)return!0;switch(e.type){case"plain":case"quoteDouble":case"quoteSingle":return e.position.start.line===e.position.end.line;case"alias":return!0;default:return!1}}var wfa=Bfa;function Tfa(e){return Mai(e,Nfa)}function Nfa(e){switch(e.type){case"document":RMe(e,"head",()=>e.children[0]),RMe(e,"body",()=>e.children[1]);break;case"documentBody":case"sequenceItem":case"flowSequenceItem":case"mappingKey":case"mappingValue":RMe(e,"content",()=>e.children[0]);break;case"mappingItem":case"flowMappingItem":RMe(e,"key",()=>e.children[0]),RMe(e,"value",()=>e.children[1]);break}return e}var Rfa=Tfa;function Dfa(e,t,r){let{node:s}=e,a=[];s.type!=="mappingValue"&&Qse(s)&&a.push([g9(__,e.map(r,"leadingComments")),__]);let{tag:o,anchor:g}=s;o&&a.push(r("tag")),o&&g&&a.push(" "),g&&a.push(r("anchor"));let p="";return jz(s,["mapping","sequence","comment","directive","mappingItem","sequenceItem"])&&!Hai(e)&&(p=Jai(e,t.originalText)),(o||g)&&(jz(s,["sequence","mapping"])&&!wSe(s)?a.push(__):a.push(" ")),wSe(s)&&a.push([s.middleComments.length===1?"":__,g9(__,e.map(r,"middleComments")),__]),Cfa(e)?a.push(Hpa(t.originalText.slice(s.position.start.offset,s.position.end.offset).trimEnd())):a.push(imt(xfa(e,t,r))),CY(s)&&!jz(s,["document","documentHead"])&&a.push(Upa([s.type==="mappingValue"&&!s.content?"":" ",e.parent.type==="mappingKey"&&e.getParentNode(2).type==="mapping"&&Wdr(s)?"":jdr,r("trailingComment")])),Uai(s)&&a.push(SQ(s.type==="sequenceItem"?2:0,[__,g9(__,e.map(({node:f})=>[$pa(t.originalText,smt(f))?__:"",r()],"endComments"))])),a.push(p),a}function xfa(e,t,r){let{node:s}=e;switch(s.type){case"root":{let a=[];e.each(({node:g,next:p,isFirst:f})=>{f||a.push(__),a.push(r()),Kai(g,p)?(a.push(__,"..."),CY(g)&&a.push(" ",r("trailingComment"))):p&&!CY(p.head)&&a.push(__,"---")},"children");let o=Vdr(s);return(!jz(o,["blockLiteral","blockFolded"])||o.chomping!=="keep")&&a.push(__),a}case"document":{let a=[];return Gfa(e,t)==="head"&&((s.head.children.length>0||s.head.endComments.length>0)&&a.push(r("head")),CY(s.head)?a.push(["---"," ",r(["head","trailingComment"])]):a.push("---")),kfa(s)&&a.push(r("body")),g9(__,a)}case"documentHead":return g9(__,[...e.map(r,"children"),...e.map(r,"endComments")]);case"documentBody":{let{children:a,endComments:o}=s,g="";if(a.length>0&&o.length>0){let p=Vdr(s);jz(p,["blockFolded","blockLiteral"])?p.chomping!=="keep"&&(g=[__,__]):g=__}return[g9(__,e.map(r,"children")),g,g9(__,e.map(r,"endComments"))]}case"directive":return["%",g9(" ",[s.name,...s.parameters])];case"comment":return["#",s.value];case"alias":return["*",s.value];case"tag":return t.originalText.slice(s.position.start.offset,s.position.end.offset);case"anchor":return["&",s.value];case"plain":return DMe(s.type,t.originalText.slice(s.position.start.offset,s.position.end.offset),t);case"quoteDouble":case"quoteSingle":{let a="'",o='"',g=t.originalText.slice(s.position.start.offset+1,s.position.end.offset-1);if(s.type==="quoteSingle"&&g.includes("\\")||s.type==="quoteDouble"&&/\\[^"]/u.test(g)){let f=s.type==="quoteDouble"?o:a;return[f,DMe(s.type,g,t),f]}if(g.includes(o))return[a,DMe(s.type,s.type==="quoteDouble"?Tdr(!1,Tdr(!1,g,String.raw`\"`,o),"'",a.repeat(2)):g,t),a];if(g.includes(a))return[o,DMe(s.type,s.type==="quoteSingle"?Tdr(!1,g,"''",a):g,t),o];let p=t.singleQuote?a:o;return[p,DMe(s.type,g,t),p]}case"blockFolded":case"blockLiteral":return bfa(e,r,t);case"mapping":case"sequence":return g9(__,e.map(r,"children"));case"sequenceItem":return["- ",SQ(2,s.content?r("content"):"")];case"mappingKey":case"mappingValue":return s.content?r("content"):"";case"mappingItem":case"flowMappingItem":return wfa(e,r,t);case"flowMapping":return lai(e,r,t);case"flowSequence":return lai(e,r,t);case"flowSequenceItem":return r("content");default:throw new tfa(s,"YAML")}}function kfa(e){return e.body.children.length>0||mY(e.body)}function Kai(e,t){return CY(e)||t&&(t.head.children.length>0||mY(t.head))}function Gfa(e,t){let r=e.node;if(e.isFirst&&/---(?:\s|$)/u.test(t.originalText.slice(smt(r),smt(r)+4))||r.head.children.length>0||mY(r.head)||CY(r.head))return"head";let s=e.next;return Kai(r,s)?!1:s?"root":!1}function DMe(e,t,r){let s=hfa(e,t,r);return g9(__,s.map(a=>Pai(g9(GMe,a))))}function jai(e,t){if(jz(e))switch(e.type){case"comment":if(Afa(e.value))return null;break;case"quoteDouble":case"quoteSingle":t.type="quote";break}}jai.ignoredProperties=new Set(["position"]);var Ffa={preprocess:Rfa,embed:rfa,print:Dfa,massageAstNode:jai,insertPragma:pfa,getVisitorKeys:ufa},Zfa=Ffa,zai=[{linguistLanguageId:407,name:"YAML",type:"data",color:"#cb171e",tmScope:"source.yaml",aliases:["yml"],extensions:[".yml",".mir",".reek",".rviz",".sublime-syntax",".syntax",".yaml",".yaml-tmlanguage",".yaml.sed",".yml.mysql"],filenames:[".clang-format",".clang-tidy",".gemrc","CITATION.cff","glide.lock",".prettierrc",".stylelintrc",".lintstagedrc"],aceMode:"yaml",codemirrorMode:"yaml",codemirrorMimeType:"text/x-yaml",parsers:["yaml"],vscodeLanguageIds:["yaml","ansible","dockercompose","github-actions-workflow","home-assistant"]}],Ddr={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},objectWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap object literals.",choices:[{value:"preserve",description:"Keep as multi-line, if there is a newline between the opening brace and first property."},{value:"collapse",description:"Fit to a single line when possible."}]},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},Lfa={bracketSpacing:Ddr.bracketSpacing,singleQuote:Ddr.singleQuote,proseWrap:Ddr.proseWrap},qai=Lfa,zdr={};fai(zdr,{yaml:()=>rCa});var tmt=` +`,uai="\r",Vfa=function(){function e(t){this.length=t.length;for(var r=[0],s=0;sthis.length)return null;for(var r=0,s=this.offsets;s[r+1]<=t;)r++;var a=t-s[r];return{line:r,column:a}},e.prototype.indexForLocation=function(t){var r=t.line,s=t.column;return r<0||r>=this.offsets.length||s<0||s>this.lengthOfLine(r)?null:this.offsets[r]+s},e.prototype.lengthOfLine=function(t){var r=this.offsets[t],s=t===this.offsets.length-1?this.length:this.offsets[t+1];return s-r},e}();function r3(e,t=null){"children"in e&&e.children.forEach(r=>r3(r,e)),"anchor"in e&&e.anchor&&r3(e.anchor,e),"tag"in e&&e.tag&&r3(e.tag,e),"leadingComments"in e&&e.leadingComments.forEach(r=>r3(r,e)),"middleComments"in e&&e.middleComments.forEach(r=>r3(r,e)),"indicatorComment"in e&&e.indicatorComment&&r3(e.indicatorComment,e),"trailingComment"in e&&e.trailingComment&&r3(e.trailingComment,e),"endComments"in e&&e.endComments.forEach(r=>r3(r,e)),Object.defineProperty(e,"_parent",{value:t,enumerable:!1})}function amt(e){return`${e.line}:${e.column}`}function Wfa(e){r3(e);let t=Pfa(e),r=e.children.slice();e.comments.sort((s,a)=>s.position.start.offset-a.position.end.offset).filter(s=>!s._parent).forEach(s=>{for(;r.length>1&&s.position.start.line>r[0].position.end.line;)r.shift();Ofa(s,t,r[0])})}function Pfa(e){let t=Array.from(new Array(e.position.end.line),()=>({}));for(let r of e.comments)t[r.position.start.line-1].comment=r;return $ai(t,e),t}function $ai(e,t){if(t.position.start.offset!==t.position.end.offset){if("leadingComments"in t){let{start:r}=t.position,{leadingAttachableNode:s}=e[r.line-1];(!s||r.column1&&t.type!=="document"&&t.type!=="documentHead"){let{end:r}=t.position,{trailingAttachableNode:s}=e[r.line-1];(!s||r.column>=s.position.end.column)&&(e[r.line-1].trailingAttachableNode=t)}if(t.type!=="root"&&t.type!=="document"&&t.type!=="documentHead"&&t.type!=="documentBody"){let{start:r,end:s}=t.position,a=[s.line].concat(r.line===s.line?[]:r.line);for(let o of a){let g=e[o-1].trailingNode;(!g||s.column>=g.position.end.column)&&(e[o-1].trailingNode=t)}}"children"in t&&t.children.forEach(r=>{$ai(e,r)})}}function Ofa(e,t,r){let s=e.position.start.line,{trailingAttachableNode:a}=t[s-1];if(a){if(a.trailingComment)throw new Error(`Unexpected multiple trailing comment at ${amt(e.position.start)}`);r3(e,a),a.trailingComment=e;return}for(let g=s;g>=r.position.start.line;g--){let{trailingNode:p}=t[g-1],f;if(p)f=p;else if(g!==s&&t[g-1].comment)f=t[g-1].comment._parent;else continue;if((f.type==="sequence"||f.type==="mapping")&&(f=f.children[0]),f.type==="mappingItem"){let[m,y]=f.children;f=eci(m)?m:y}for(;;){if(Qfa(f,e)){r3(e,f),f.endComments.push(e);return}if(!f._parent)break;f=f._parent}break}for(let g=s+1;g<=r.position.end.line;g++){let{leadingAttachableNode:p}=t[g-1];if(p){r3(e,p),p.leadingComments.push(e);return}}let o=r.children[1];r3(e,o),o.endComments.push(e)}function Qfa(e,t){if(e.position.start.offsett.position.end.offset)switch(e.type){case"flowMapping":case"flowSequence":return e.children.length===0||t.position.start.line>e.children[e.children.length-1].position.end.line}if(t.position.end.offsete.position.start.column;case"mappingKey":case"mappingValue":return t.position.start.column>e._parent.position.start.column&&(e.children.length===0||e.children.length===1&&e.children[0].type!=="blockFolded"&&e.children[0].type!=="blockLiteral")&&(e.type==="mappingValue"||eci(e));default:return!1}}function eci(e){return e.position.start!==e.position.end&&(e.children.length===0||e.position.start.offset!==e.children[0].position.start.offset)}function cS(e,t){return{type:e,position:t}}function Mfa(e,t,r){return{...cS("root",e),children:t,comments:r}}function nmt(e){switch(e.type){case"DOCUMENT":for(let t=e.contents.length-1;t>=0;t--)e.contents[t].type==="BLANK_LINE"?e.contents.splice(t,1):nmt(e.contents[t]);for(let t=e.directives.length-1;t>=0;t--)e.directives[t].type==="BLANK_LINE"&&e.directives.splice(t,1);break;case"FLOW_MAP":case"FLOW_SEQ":case"MAP":case"SEQ":for(let t=e.items.length-1;t>=0;t--){let r=e.items[t];"char"in r||(r.type==="BLANK_LINE"?e.items.splice(t,1):nmt(r))}break;case"MAP_KEY":case"MAP_VALUE":case"SEQ_ITEM":e.node&&nmt(e.node);break;case"ALIAS":case"BLANK_LINE":case"BLOCK_FOLDED":case"BLOCK_LITERAL":case"COMMENT":case"DIRECTIVE":case"PLAIN":case"QUOTE_DOUBLE":case"QUOTE_SINGLE":break;default:throw new Error(`Unexpected node type ${JSON.stringify(e.type)}`)}}function DSe(){return{leadingComments:[]}}function umt(e=null){return{trailingComment:e}}function Tfe(){return{...DSe(),...umt()}}function Hfa(e,t,r){return{...cS("alias",e),...Tfe(),...t,value:r}}function Yfa(e,t){let r=e.cstNode;return Hfa(t.transformRange({origStart:r.valueRange.origStart-1,origEnd:r.valueRange.origEnd}),t.transformContent(e),r.rawValue)}function Xfa(e){return{...e,type:"blockFolded"}}function Jfa(e,t,r,s,a,o){return{...cS("blockValue",e),...DSe(),...t,chomping:r,indent:s,value:a,indicatorComment:o}}var TSe;(function(e){e.Tag="!",e.Anchor="&",e.Comment="#"})(TSe||(TSe={}));function Ufa(e,t){return{...cS("anchor",e),value:t}}function qdr(e,t){return{...cS("comment",e),value:t}}function Kfa(e,t,r){return{anchor:t,tag:e,middleComments:r}}function jfa(e,t){return{...cS("tag",e),value:t}}function tci(e,t,r=()=>!1){let s=e.cstNode,a=[],o=null,g=null,p=null;for(let f of s.props){let m=t.text[f.origStart];switch(m){case TSe.Tag:o=o||f,g=jfa(t.transformRange(f),e.tag);break;case TSe.Anchor:o=o||f,p=Ufa(t.transformRange(f),s.anchor);break;case TSe.Comment:{let y=qdr(t.transformRange(f),t.text.slice(f.origStart+1,f.origEnd));t.comments.push(y),!r(y)&&o&&o.origEnd<=f.origStart&&f.origEnd<=s.valueRange.origStart&&a.push(y);break}default:throw new Error(`Unexpected leading character ${JSON.stringify(m)}`)}}return Kfa(g,p,a)}var Pdr;(function(e){e.CLIP="clip",e.STRIP="strip",e.KEEP="keep"})(Pdr||(Pdr={}));function rci(e,t){let r=e.cstNode,s=1,a=r.chomping==="CLIP"?0:1,o=r.header.origEnd-r.header.origStart-s-a!==0,g=t.transformRange({origStart:r.header.origStart,origEnd:r.valueRange.origEnd}),p=null,f=tci(e,t,m=>{if(!(g.start.offset=0;f--){let m=e.contents[f];if(m.type==="COMMENT"){let y=t.transformNode(m);r&&r.line===y.position.start.line?g.unshift(y):p?s.unshift(y):y.position.start.offset>=e.valueRange.origEnd?o.unshift(y):s.unshift(y)}else p=!0}if(o.length>1)throw new Error(`Unexpected multiple document trailing comments at ${amt(o[1].position.start)}`);if(g.length>1)throw new Error(`Unexpected multiple documentHead trailing comments at ${amt(g[1].position.start)}`);return{comments:s,endComments:a,documentTrailingComment:Mse(o)||null,documentHeadTrailingComment:Mse(g)||null}}function aIa(e,t,r){let s=nci(r.text.slice(e.valueRange.origEnd),/^\.\.\./),a=s===-1?e.valueRange.origEnd:Math.max(0,e.valueRange.origEnd-1);r.text[a-1]==="\r"&&a--;let o=r.transformRange({origStart:t!==null?t.position.start.offset:a,origEnd:a}),g=s===-1?o.end:r.transformOffset(e.valueRange.origEnd+3);return{position:o,documentEndPoint:g}}function cIa(e,t,r,s){return{...cS("documentHead",e),...Nfe(r),...umt(s),children:t}}function lIa(e,t){let r=e.cstNode,{directives:s,comments:a,endComments:o}=uIa(r,t),{position:g,endMarkerPoint:p}=gIa(r,s,t);return t.comments.push(...a,...o),{createDocumentHeadWithTrailingComment:f=>(f&&t.comments.push(f),cIa(g,s,o,f)),documentHeadEndMarkerPoint:p}}function uIa(e,t){let r=[],s=[],a=[],o=!1;for(let g=e.directives.length-1;g>=0;g--){let p=t.transformNode(e.directives[g]);p.type==="comment"?o?s.unshift(p):a.unshift(p):(o=!0,r.unshift(p))}return{directives:r,comments:s,endComments:a}}function gIa(e,t,r){let s=nci(r.text.slice(0,e.valueRange.origStart),/---\s*$/);s>0&&!/[\r\n]/.test(r.text[s-1])&&(s=-1);let a=s===-1?{origStart:e.valueRange.origStart,origEnd:e.valueRange.origStart}:{origStart:s,origEnd:s+3};return t.length!==0&&(a.origStart=t[0].position.start.offset),{position:r.transformRange(a),endMarkerPoint:s===-1?null:r.transformOffset(s)}}function AIa(e,t){let{createDocumentHeadWithTrailingComment:r,documentHeadEndMarkerPoint:s}=lIa(e,t),{documentBody:a,documentEndPoint:o,documentTrailingComment:g,documentHeadTrailingComment:p}=sIa(e,t,s),f=r(p);return g&&t.comments.push(g),nIa(Sfe(f.position.start,o),f,a,g)}function ici(e,t,r){return{...cS("flowCollection",e),...Tfe(),...Nfe(),...t,children:r}}function dIa(e,t,r){return{...ici(e,t,r),type:"flowMapping"}}function sci(e,t,r){return{...cS("flowMappingItem",e),...DSe(),children:[t,r]}}function gmt(e,t){let r=[];for(let s of e)s&&"type"in s&&s.type==="COMMENT"?t.comments.push(t.transformNode(s)):r.push(s);return r}function oci(e){let[t,r]=["?",":"].map(s=>{let a=e.find(o=>"char"in o&&o.char===s);return a?{origStart:a.origOffset,origEnd:a.origOffset+1}:null});return{additionalKeyRange:t,additionalValueRange:r}}function aci(e,t){let r=t;return s=>e.slice(r,r=s)}function cci(e){let t=[],r=aci(e,1),s=!1;for(let a=1;a{let m=s[f],{additionalKeyRange:y,additionalValueRange:B}=oci(m);return epr(p,t,sci,y,B)}),o=r[0],g=Mse(r);return dIa(t.transformRange({origStart:o.origOffset,origEnd:g.origOffset+1}),t.transformContent(e),a)}function fIa(e,t,r){return{...ici(e,t,r),type:"flowSequence"}}function IIa(e,t){return{...cS("flowSequenceItem",e),children:[t]}}function CIa(e,t){let r=gmt(e.cstNode.items,t),s=cci(r),a=e.items.map((p,f)=>{if(p.type!=="PAIR"){let m=t.transformNode(p);return IIa(Sfe(m.position.start,m.position.end),m)}else{let m=s[f],{additionalKeyRange:y,additionalValueRange:B}=oci(m);return epr(p,t,sci,y,B)}}),o=r[0],g=Mse(r);return fIa(t.transformRange({origStart:o.origOffset,origEnd:g.origOffset+1}),t.transformContent(e),a)}function mIa(e,t,r){return{...cS("mapping",e),...DSe(),...t,children:r}}function hIa(e,t,r){return{...cS("mappingItem",e),...DSe(),children:[t,r]}}function _Ia(e,t){let r=e.cstNode;r.items.filter(g=>g.type==="MAP_KEY"||g.type==="MAP_VALUE").forEach(g=>$dr(g,t));let s=gmt(r.items,t),a=yIa(s),o=e.items.map((g,p)=>{let f=a[p],[m,y]=f[0].type==="MAP_VALUE"?[null,f[0].range]:[f[0].range,f.length===1?null:f[1].range];return epr(g,t,hIa,m,y)});return mIa(Sfe(o[0].position.start,Mse(o).position.end),t.transformContent(e),o)}function yIa(e){let t=[],r=aci(e,0),s=!1;for(let a=0;a=0;s--)if(r.test(e[s]))return s;return-1}function BIa(e,t){let r=e.cstNode;return bIa(t.transformRange({origStart:r.valueRange.origStart,origEnd:EIa(t.text,r.valueRange.origEnd-1,/\S/)+1}),t.transformContent(e),r.strValue)}function vIa(e){return{...e,type:"quoteDouble"}}function SIa(e,t,r){return{...cS("quoteValue",e),...t,...Tfe(),value:r}}function lci(e,t){let r=e.cstNode;return SIa(t.transformRange(r.valueRange),t.transformContent(e),r.strValue)}function wIa(e,t){return vIa(lci(e,t))}function TIa(e){return{...e,type:"quoteSingle"}}function NIa(e,t){return TIa(lci(e,t))}function RIa(e,t,r){return{...cS("sequence",e),...DSe(),...Nfe(),...t,children:r}}function DIa(e,t){return{...cS("sequenceItem",e),...Tfe(),...Nfe(),children:t?[t]:[]}}function xIa(e,t){let r=gmt(e.cstNode.items,t).map((s,a)=>{$dr(s,t);let o=t.transformNode(e.items[a]);return DIa(Sfe(t.transformOffset(s.valueRange.origStart),o===null?t.transformOffset(s.valueRange.origStart+1):o.position.end),o)});return RIa(Sfe(r[0].position.start,Mse(r).position.end),t.transformContent(e),r)}function kIa(e,t){if(e===null||e.type===void 0&&e.value===null)return null;switch(e.type){case"ALIAS":return Yfa(e,t);case"BLOCK_FOLDED":return zfa(e,t);case"BLOCK_LITERAL":return $fa(e,t);case"COMMENT":return eIa(e,t);case"DIRECTIVE":return rIa(e,t);case"DOCUMENT":return AIa(e,t);case"FLOW_MAP":return pIa(e,t);case"FLOW_SEQ":return CIa(e,t);case"MAP":return _Ia(e,t);case"PLAIN":return BIa(e,t);case"QUOTE_DOUBLE":return wIa(e,t);case"QUOTE_SINGLE":return NIa(e,t);case"SEQ":return xIa(e,t);default:throw new Error(`Unexpected node type ${e.type}`)}}function GIa(e,t,r){let s=new SyntaxError(e);return s.name="YAMLSyntaxError",s.source=t,s.position=r,s}function FIa(e,t){let r=e.source.range||e.source.valueRange;return GIa(e.message,t.text,t.transformRange(r))}function ZIa(e,t,r){return{offset:e,line:t,column:r}}function LIa(e,t){e<0?e=0:e>t.text.length&&(e=t.text.length);let r=t.locator.locationForIndex(e);return ZIa(e,r.line+1,r.column+1)}function VIa(e,t){return Sfe(t.transformOffset(e.origStart),t.transformOffset(e.origEnd))}function WIa(e){if(!e.setOrigRanges()){let t=r=>{if(PIa(r))return r.origStart=r.start,r.origEnd=r.end,!0;if(OIa(r))return r.origOffset=r.offset,!0};e.forEach(r=>Odr(r,t))}}function Odr(e,t){if(!(!e||typeof e!="object")&&t(e)!==!0)for(let r of Object.keys(e)){if(r==="context"||r==="error")continue;let s=e[r];Array.isArray(s)?s.forEach(a=>Odr(a,t)):Odr(s,t)}}function PIa(e){return typeof e.start=="number"}function OIa(e){return typeof e.offset=="number"}function uci(e){if("children"in e){if(e.children.length===1){let t=e.children[0];if(t.type==="plain"&&t.tag===null&&t.anchor===null&&t.value==="")return e.children.splice(0,1),e}e.children.forEach(uci)}return e}function pai(e,t,r,s){let a=t(e);return o=>{s(a,o)&&r(e,a=o)}}function gci(e){if(e===null||!("children"in e))return;let t=e.children;if(t.forEach(gci),e.type==="document"){let[o,g]=e.children;o.position.start.offset===o.position.end.offset?o.position.start=o.position.end=g.position.start:g.position.start.offset===g.position.end.offset&&(g.position.start=g.position.end=o.position.end)}let r=pai(e.position,QIa,MIa,XIa),s=pai(e.position,HIa,YIa,JIa);"endComments"in e&&e.endComments.length!==0&&(r(e.endComments[0].position.start),s(Mse(e.endComments).position.end));let a=t.filter(o=>o!==null);if(a.length!==0){let o=a[0],g=Mse(a);r(o.position.start),s(g.position.end),"leadingComments"in o&&o.leadingComments.length!==0&&r(o.leadingComments[0].position.start),"tag"in o&&o.tag&&r(o.tag.position.start),"anchor"in o&&o.anchor&&r(o.anchor.position.start),"trailingComment"in g&&g.trailingComment&&s(g.trailingComment.position.end)}}function QIa(e){return e.start}function MIa(e,t){e.start=t}function HIa(e){return e.end}function YIa(e,t){e.end=t}function XIa(e,t){return t.offsete.offset}var UIa=Iai(Gpa(),1),TQ=Iai(Fpa(),1),V_l=TQ.default.findPair,W_l=TQ.default.toJSON,P_l=TQ.default.parseMap,O_l=TQ.default.parseSeq,Q_l=TQ.default.stringifyNumber,M_l=TQ.default.stringifyString,H_l=TQ.default.Type,Y_l=TQ.default.YAMLError,X_l=TQ.default.YAMLReferenceError,KIa=TQ.default.YAMLSemanticError,J_l=TQ.default.YAMLSyntaxError,U_l=TQ.default.YAMLWarning,{Document:jIa,parseCST:zIa}=UIa.default;function qIa(e){let t=zIa(e);WIa(t);let r=t.map(p=>new jIa({merge:!1,keepCstNodes:!0}).parse(p)),s=new Vfa(e),a=[],o={text:e,locator:s,comments:a,transformOffset:p=>LIa(p,o),transformRange:p=>VIa(p,o),transformNode:p=>kIa(p,o),transformContent:p=>tci(p,o)};for(let p of r)for(let f of p.errors)if(!(f instanceof KIa&&f.message==='Map keys must be unique; "<<" is repeated'))throw FIa(f,o);r.forEach(p=>nmt(p.cstNode));let g=Mfa(o.transformRange({origStart:0,origEnd:o.text.length}),r.map(o.transformNode),a);return Wfa(g),gci(g),uci(g),g}function $Ia(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}var eCa=$Ia;function tCa(e){try{let t=qIa(e);return delete t.comments,t}catch(t){throw t!=null&&t.position?eCa(t.message,{loc:t.position,cause:t}):t}}var rCa={astFormat:"yaml",parse:tCa,hasPragma:dfa,locStart:smt,locEnd:gfa},Aci={yaml:Zfa},nCa=Tai;var iCa=Object.create,_pr=Object.defineProperty,sCa=Object.getOwnPropertyDescriptor,oCa=Object.getOwnPropertyNames,aCa=Object.getPrototypeOf,cCa=Object.prototype.hasOwnProperty,Hci=e=>{throw TypeError(e)},Yci=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),ypr=(e,t)=>{for(var r in t)_pr(e,r,{get:t[r],enumerable:!0})},lCa=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of oCa(t))!cCa.call(e,a)&&a!==r&&_pr(e,a,{get:()=>t[a],enumerable:!(s=sCa(t,a))||s.enumerable});return e},ymt=(e,t,r)=>(r=e!=null?iCa(aCa(e)):{},lCa(t||!e||!e.__esModule?_pr(r,"default",{value:e,enumerable:!0}):r,e)),uCa=(e,t,r)=>t.has(e)||Hci("Cannot "+r),gCa=(e,t,r)=>t.has(e)?Hci("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),ZMe=(e,t,r)=>(uCa(e,t,"access private method"),r),bpr=Yci((e,t)=>{"use strict";var r=new Proxy(String,{get:()=>r});t.exports=r}),ACa=Yci(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});function t(){return new Proxy({},{get:()=>o=>o})}var r=/\r\n|[\n\r\u2028\u2029]/;function s(o,g,p){let f=Object.assign({column:0,line:-1},o.start),m=Object.assign({},f,o.end),{linesAbove:y=2,linesBelow:B=3}=p||{},v=f.line,k=f.column,T=m.line,O=m.column,X=Math.max(v-(y+1),0),U=Math.min(g.length,T+B);v===-1&&(X=0),T===-1&&(U=g.length);let le=T-v,ae={};if(le)for(let ge=0;ge<=le;ge++){let fe=ge+v;if(!k)ae[fe]=!0;else if(ge===0){let pe=g[fe-1].length;ae[fe]=[k,pe-k+1]}else if(ge===le)ae[fe]=[0,O];else{let pe=g[fe-ge].length;ae[fe]=[0,pe]}}else k===O?k?ae[v]=[k,0]:ae[v]=!0:ae[v]=[k,O-k];return{start:X,end:U,markerLines:ae}}function a(o,g,p={}){let f=t(!1),m=o.split(r),{start:y,end:B,markerLines:v}=s(g,m,p),k=g.start&&typeof g.start.column=="number",T=String(B).length,O=o.split(r,B).slice(y,B).map((X,U)=>{let le=y+1+U,ae=` ${` ${le}`.slice(-T)} |`,ge=v[le],fe=!v[le+1];if(ge){let pe="";if(Array.isArray(ge)){let he=X.slice(0,Math.max(ge[0]-1,0)).replace(/[^\t]/g," "),be=ge[1]||1;pe=[` `,f.gutter(ae.replace(/\d/g," "))," ",he,f.marker("^").repeat(be)].join(""),fe&&p.message&&(pe+=" "+f.message(p.message))}return[f.marker(">"),f.gutter(ae),X.length>0?` ${X}`:"",pe].join("")}else return` ${f.gutter(ae)}${X.length>0?` ${X}`:""}`}).join(` -`);return p.message&&!G&&(O=`${" ".repeat(T+1)}${p.message} -${O}`),O}e.codeFrameColumns=a}),zIa={};Ipr(zIa,{__debug:()=>s_a,check:()=>n_a,doc:()=>hli,format:()=>LSe,formatWithCursor:()=>yli,getSupportInfo:()=>i_a,util:()=>_li,version:()=>Dha});var qIa=(e,t,r,s)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,s):r.global?t.replace(r,s):t.split(r).join(s)},hmt=qIa;function C5(){}C5.prototype={diff:function(e,t){var r,s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=s.callback;typeof s=="function"&&(a=s,s={});var o=this;function g(ae){return ae=o.postProcess(ae,s),a?(setTimeout(function(){a(ae)},0),!0):ae}e=this.castInput(e,s),t=this.castInput(t,s),e=this.removeEmpty(this.tokenize(e,s)),t=this.removeEmpty(this.tokenize(t,s));var p=t.length,f=e.length,m=1,y=p+f;s.maxEditLength!=null&&(y=Math.min(y,s.maxEditLength));var B=(r=s.timeout)!==null&&r!==void 0?r:1/0,v=Date.now()+B,G=[{oldPos:-1,lastComponent:void 0}],T=this.extractCommon(G[0],t,e,0,s);if(G[0].oldPos+1>=f&&T+1>=p)return g(sci(o,G[0].lastComponent,t,e,o.useLongestToken));var O=-1/0,X=1/0;function U(){for(var ae=Math.max(O,-m);ae<=Math.min(X,m);ae+=2){var ge=void 0,fe=G[ae-1],pe=G[ae+1];fe&&(G[ae-1]=void 0);var he=!1;if(pe){var be=pe.oldPos-ae;he=pe&&0<=be&&be=f&&T+1>=p)return g(sci(o,ge.lastComponent,t,e,o.useLongestToken));G[ae]=ge,ge.oldPos+1>=f&&(X=Math.min(X,ae-1)),T+1>=p&&(O=Math.max(O,ae+1))}m++}if(a)(function ae(){setTimeout(function(){if(m>y||Date.now()>v)return a();U()||ae()},0)})();else for(;m<=y&&Date.now()<=v;){var le=U();if(le)return le}},addToPath:function(e,t,r,s,a){var o=e.lastComponent;return o&&!a.oneChangePerToken&&o.added===t&&o.removed===r?{oldPos:e.oldPos+s,lastComponent:{count:o.count+1,added:t,removed:r,previousComponent:o.previousComponent}}:{oldPos:e.oldPos+s,lastComponent:{count:1,added:t,removed:r,previousComponent:o}}},extractCommon:function(e,t,r,s,a){for(var o=t.length,g=r.length,p=e.oldPos,f=p-s,m=0;f+1G.length?O:G}),B.value=e.join(v)}else B.value=e.join(r.slice(m,m+B.count));m+=B.count,B.added||(y+=B.count)}}return o}var J_l=new C5;function oci(e,t){var r;for(r=0;rt.length&&(r=e.length-t.length);var s=t.length;e.length0&&t[g]!=t[o];)o=a[o];t[g]==t[o]&&o++}o=0;for(var p=r;p0&&e[p]!=t[o];)o=a[o];e[p]==t[o]&&o++}return o}var fmt="a-zA-Z0-9_\\u{C0}-\\u{FF}\\u{D8}-\\u{F6}\\u{F8}-\\u{2C6}\\u{2C8}-\\u{2D7}\\u{2DE}-\\u{2FF}\\u{1E00}-\\u{1EFF}",eCa=new RegExp("[".concat(fmt,"]+|\\s+|[^").concat(fmt,"]"),"ug"),_mt=new C5;_mt.equals=function(e,t,r){return r.ignoreCase&&(e=e.toLowerCase(),t=t.toLowerCase()),e.trim()===t.trim()};_mt.tokenize=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r;if(t.intlSegmenter){if(t.intlSegmenter.resolvedOptions().granularity!="word")throw new Error('The segmenter passed must have a granularity of "word"');r=Array.from(t.intlSegmenter.segment(e),function(o){return o.segment})}else r=e.match(eCa)||[];var s=[],a=null;return r.forEach(function(o){/\s/.test(o)?a==null?s.push(o):s.push(s.pop()+o):/\s/.test(a)?s[s.length-1]==a?s.push(s.pop()+o):s.push(a+o):s.push(o),a=o}),s};_mt.join=function(e){return e.map(function(t,r){return r==0?t:t.replace(/^\s+/,"")}).join("")};_mt.postProcess=function(e,t){if(!e||t.oneChangePerToken)return e;var r=null,s=null,a=null;return e.forEach(function(o){o.added?s=o:o.removed?a=o:((s||a)&&lci(r,a,s,o),r=o,s=null,a=null)}),(s||a)&&lci(r,a,s,null),e};function lci(e,t,r,s){if(t&&r){var a=t.value.match(/^\s*/)[0],o=t.value.match(/\s*$/)[0],g=r.value.match(/^\s*/)[0],p=r.value.match(/\s*$/)[0];if(e){var f=oci(a,g);e.value=ipr(e.value,g,f),t.value=FYe(t.value,f),r.value=FYe(r.value,f)}if(s){var m=aci(o,p);s.value=npr(s.value,p,m),t.value=lmt(t.value,m),r.value=lmt(r.value,m)}}else if(r)e&&(r.value=r.value.replace(/^\s*/,"")),s&&(s.value=s.value.replace(/^\s*/,""));else if(e&&s){var y=s.value.match(/^\s*/)[0],B=t.value.match(/^\s*/)[0],v=t.value.match(/\s*$/)[0],G=oci(y,B);t.value=FYe(t.value,G);var T=aci(FYe(y,G),v);t.value=lmt(t.value,T),s.value=npr(s.value,y,T),e.value=ipr(e.value,y,y.slice(0,y.length-T.length))}else if(s){var O=s.value.match(/^\s*/)[0],X=t.value.match(/\s*$/)[0],U=cci(X,O);t.value=lmt(t.value,U)}else if(e){var le=e.value.match(/\s*$/)[0],ae=t.value.match(/^\s*/)[0],ge=cci(le,ae);t.value=FYe(t.value,ge)}}var tCa=new C5;tCa.tokenize=function(e){var t=new RegExp("(\\r?\\n)|[".concat(fmt,"]+|[^\\S\\n\\r]+|[^").concat(fmt,"]"),"ug");return e.match(t)||[]};var mpr=new C5;mpr.tokenize=function(e,t){t.stripTrailingCr&&(e=e.replace(/\r\n/g,` -`));var r=[],s=e.split(/(\n|\r\n)/);s[s.length-1]||s.pop();for(var a=0;ay_a,check:()=>h_a,doc:()=>wli,format:()=>PSe,formatWithCursor:()=>Nli,getSupportInfo:()=>__a,util:()=>Tli,version:()=>Jha});var pCa=(e,t,r,s)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,s):r.global?t.replace(r,s):t.split(r).join(s)},bmt=pCa;function hY(){}hY.prototype={diff:function(e,t){var r,s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=s.callback;typeof s=="function"&&(a=s,s={});var o=this;function g(ae){return ae=o.postProcess(ae,s),a?(setTimeout(function(){a(ae)},0),!0):ae}e=this.castInput(e,s),t=this.castInput(t,s),e=this.removeEmpty(this.tokenize(e,s)),t=this.removeEmpty(this.tokenize(t,s));var p=t.length,f=e.length,m=1,y=p+f;s.maxEditLength!=null&&(y=Math.min(y,s.maxEditLength));var B=(r=s.timeout)!==null&&r!==void 0?r:1/0,v=Date.now()+B,k=[{oldPos:-1,lastComponent:void 0}],T=this.extractCommon(k[0],t,e,0,s);if(k[0].oldPos+1>=f&&T+1>=p)return g(dci(o,k[0].lastComponent,t,e,o.useLongestToken));var O=-1/0,X=1/0;function U(){for(var ae=Math.max(O,-m);ae<=Math.min(X,m);ae+=2){var ge=void 0,fe=k[ae-1],pe=k[ae+1];fe&&(k[ae-1]=void 0);var he=!1;if(pe){var be=pe.oldPos-ae;he=pe&&0<=be&&be=f&&T+1>=p)return g(dci(o,ge.lastComponent,t,e,o.useLongestToken));k[ae]=ge,ge.oldPos+1>=f&&(X=Math.min(X,ae-1)),T+1>=p&&(O=Math.max(O,ae+1))}m++}if(a)(function ae(){setTimeout(function(){if(m>y||Date.now()>v)return a();U()||ae()},0)})();else for(;m<=y&&Date.now()<=v;){var le=U();if(le)return le}},addToPath:function(e,t,r,s,a){var o=e.lastComponent;return o&&!a.oneChangePerToken&&o.added===t&&o.removed===r?{oldPos:e.oldPos+s,lastComponent:{count:o.count+1,added:t,removed:r,previousComponent:o.previousComponent}}:{oldPos:e.oldPos+s,lastComponent:{count:1,added:t,removed:r,previousComponent:o}}},extractCommon:function(e,t,r,s,a){for(var o=t.length,g=r.length,p=e.oldPos,f=p-s,m=0;f+1k.length?O:k}),B.value=e.join(v)}else B.value=e.join(r.slice(m,m+B.count));m+=B.count,B.added||(y+=B.count)}}return o}var f0l=new hY;function pci(e,t){var r;for(r=0;rt.length&&(r=e.length-t.length);var s=t.length;e.length0&&t[g]!=t[o];)o=a[o];t[g]==t[o]&&o++}o=0;for(var p=r;p0&&e[p]!=t[o];)o=a[o];e[p]==t[o]&&o++}return o}var mmt="a-zA-Z0-9_\\u{C0}-\\u{FF}\\u{D8}-\\u{F6}\\u{F8}-\\u{2C6}\\u{2C8}-\\u{2D7}\\u{2DE}-\\u{2FF}\\u{1E00}-\\u{1EFF}",ICa=new RegExp("[".concat(mmt,"]+|\\s+|[^").concat(mmt,"]"),"ug"),Emt=new hY;Emt.equals=function(e,t,r){return r.ignoreCase&&(e=e.toLowerCase(),t=t.toLowerCase()),e.trim()===t.trim()};Emt.tokenize=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r;if(t.intlSegmenter){if(t.intlSegmenter.resolvedOptions().granularity!="word")throw new Error('The segmenter passed must have a granularity of "word"');r=Array.from(t.intlSegmenter.segment(e),function(o){return o.segment})}else r=e.match(ICa)||[];var s=[],a=null;return r.forEach(function(o){/\s/.test(o)?a==null?s.push(o):s.push(s.pop()+o):/\s/.test(a)?s[s.length-1]==a?s.push(s.pop()+o):s.push(a+o):s.push(o),a=o}),s};Emt.join=function(e){return e.map(function(t,r){return r==0?t:t.replace(/^\s+/,"")}).join("")};Emt.postProcess=function(e,t){if(!e||t.oneChangePerToken)return e;var r=null,s=null,a=null;return e.forEach(function(o){o.added?s=o:o.removed?a=o:((s||a)&&Cci(r,a,s,o),r=o,s=null,a=null)}),(s||a)&&Cci(r,a,s,null),e};function Cci(e,t,r,s){if(t&&r){var a=t.value.match(/^\s*/)[0],o=t.value.match(/\s*$/)[0],g=r.value.match(/^\s*/)[0],p=r.value.match(/\s*$/)[0];if(e){var f=pci(a,g);e.value=lpr(e.value,g,f),t.value=LMe(t.value,f),r.value=LMe(r.value,f)}if(s){var m=fci(o,p);s.value=cpr(s.value,p,m),t.value=Amt(t.value,m),r.value=Amt(r.value,m)}}else if(r)e&&(r.value=r.value.replace(/^\s*/,"")),s&&(s.value=s.value.replace(/^\s*/,""));else if(e&&s){var y=s.value.match(/^\s*/)[0],B=t.value.match(/^\s*/)[0],v=t.value.match(/\s*$/)[0],k=pci(y,B);t.value=LMe(t.value,k);var T=fci(LMe(y,k),v);t.value=Amt(t.value,T),s.value=cpr(s.value,y,T),e.value=lpr(e.value,y,y.slice(0,y.length-T.length))}else if(s){var O=s.value.match(/^\s*/)[0],X=t.value.match(/\s*$/)[0],U=Ici(X,O);t.value=Amt(t.value,U)}else if(e){var le=e.value.match(/\s*$/)[0],ae=t.value.match(/^\s*/)[0],ge=Ici(le,ae);t.value=LMe(t.value,ge)}}var CCa=new hY;CCa.tokenize=function(e){var t=new RegExp("(\\r?\\n)|[".concat(mmt,"]+|[^\\S\\n\\r]+|[^").concat(mmt,"]"),"ug");return e.match(t)||[]};var Epr=new hY;Epr.tokenize=function(e,t){t.stripTrailingCr&&(e=e.replace(/\r\n/g,` +`));var r=[],s=e.split(/(\n|\r\n)/);s[s.length-1]||s.pop();for(var a=0;a"u"?r:g}:s;return typeof e=="string"?e:JSON.stringify(opr(e,null,null,a),a," ")};LYe.equals=function(e,t,r){return C5.prototype.equals.call(LYe,e.replace(/,([\r\n])/g,"$1"),t.replace(/,([\r\n])/g,"$1"),r)};function opr(e,t,r,s,a){t=t||[],r=r||[],s&&(e=s(a,e));var o;for(o=0;o"u"?r:g}:s;return typeof e=="string"?e:JSON.stringify(gpr(e,null,null,a),a," ")};WMe.equals=function(e,t,r){return hY.prototype.equals.call(WMe,e.replace(/,([\r\n])/g,"$1"),t.replace(/,([\r\n])/g,"$1"),r)};function gpr(e,t,r,s,a){t=t||[],r=r||[],s&&(e=s(a,e));var o;for(o=0;o{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},hR=aCa;function cCa(e){if(typeof e=="string")return Rfe;if(Array.isArray(e))return qz;if(!e)return;let{type:t}=e;if(Wci.has(t))return t}var xfe=cCa,lCa=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function uCa(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', -Expected it to be 'string' or 'object'.`;if(xfe(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let s=lCa([...Wci].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. -Expected it to be ${s}.`}var gCa=class extends Error{name="InvalidDocError";constructor(e){super(uCa(e)),this.doc=e}},GSe=gCa,uci={};function ACa(e,t,r,s){let a=[e];for(;a.length>0;){let o=a.pop();if(o===uci){r(a.pop());continue}r&&a.push(o,uci);let g=xfe(o);if(!g)throw new GSe(o);if(t?.(o)!==!1)switch(g){case qz:case jU:{let p=g===qz?o:o.parts;for(let f=p.length,m=f-1;m>=0;--m)a.push(p[m]);break}case t3:a.push(o.flatContents,o.breakContents);break;case A9:if(s&&o.expandedStates)for(let p=o.expandedStates.length,f=p-1;f>=0;--f)a.push(o.expandedStates[f]);else a.push(o.contents);break;case eq:case $z:case rq:case zU:case nq:a.push(o.contents);break;case Rfe:case Dfe:case tq:case iq:case XD:case wM:break;default:throw new GSe(o)}}}var _pr=ACa;function ymt(e,t){if(typeof e=="string")return t(e);let r=new Map;return s(e);function s(o){if(r.has(o))return r.get(o);let g=a(o);return r.set(o,g),g}function a(o){switch(xfe(o)){case qz:return t(o.map(s));case jU:return t({...o,parts:o.parts.map(s)});case t3:return t({...o,breakContents:s(o.breakContents),flatContents:s(o.flatContents)});case A9:{let{expandedStates:g,contents:p}=o;return g?(g=g.map(s),p=g[0]):p=s(p),t({...o,contents:p,expandedStates:g})}case eq:case $z:case rq:case zU:case nq:return t({...o,contents:s(o.contents)});case Rfe:case Dfe:case tq:case iq:case XD:case wM:return t(o);default:throw new GSe(o)}}}function ypr(e,t,r){let s=r,a=!1;function o(g){if(a)return!1;let p=t(g);p!==void 0&&(a=!0,s=p)}return _pr(e,o),s}function dCa(e){if(e.type===A9&&e.break||e.type===XD&&e.hard||e.type===wM)return!0}function pCa(e){return ypr(e,dCa,!1)}function gci(e){if(e.length>0){let t=hR(!1,e,-1);!t.expandedStates&&!t.break&&(t.break="propagated")}return null}function fCa(e){let t=new Set,r=[];function s(o){if(o.type===wM&&gci(r),o.type===A9){if(r.push(o),t.has(o))return!1;t.add(o)}}function a(o){o.type===A9&&r.pop().break&&gci(r)}_pr(e,s,a,!0)}function ICa(e){return e.type===XD&&!e.hard?e.soft?"":" ":e.type===t3?e.flatContents:e}function CCa(e){return ymt(e,ICa)}function Aci(e){for(e=[...e];e.length>=2&&hR(!1,e,-2).type===XD&&hR(!1,e,-1).type===wM;)e.length-=2;if(e.length>0){let t=ZYe(hR(!1,e,-1));e[e.length-1]=t}return e}function ZYe(e){switch(xfe(e)){case $z:case rq:case A9:case nq:case zU:{let t=ZYe(e.contents);return{...e,contents:t}}case t3:return{...e,breakContents:ZYe(e.breakContents),flatContents:ZYe(e.flatContents)};case jU:return{...e,parts:Aci(e.parts)};case qz:return Aci(e);case Rfe:return e.replace(/[\n\r]*$/u,"");case eq:case Dfe:case tq:case iq:case XD:case wM:break;default:throw new GSe(e)}return e}function Pci(e){return ZYe(hCa(e))}function mCa(e){switch(xfe(e)){case jU:if(e.parts.every(t=>t===""))return"";break;case A9:if(!e.contents&&!e.id&&!e.break&&!e.expandedStates)return"";if(e.contents.type===A9&&e.contents.id===e.id&&e.contents.break===e.break&&e.contents.expandedStates===e.expandedStates)return e.contents;break;case eq:case $z:case rq:case nq:if(!e.contents)return"";break;case t3:if(!e.flatContents&&!e.breakContents)return"";break;case qz:{let t=[];for(let r of e){if(!r)continue;let[s,...a]=Array.isArray(r)?r:[r];typeof s=="string"&&typeof hR(!1,t,-1)=="string"?t[t.length-1]+=s:t.push(s),t.push(...a)}return t.length===0?"":t.length===1?t[0]:t}case Rfe:case Dfe:case tq:case iq:case XD:case zU:case wM:break;default:throw new GSe(e)}return e}function hCa(e){return ymt(e,t=>mCa(t))}function _Ca(e,t=Hci){return ymt(e,r=>typeof r=="string"?Xci(t,r.split(` -`)):r)}function yCa(e){if(e.type===XD)return!0}function bCa(e){return ypr(e,yCa,!1)}function Amt(e,t){return e.type===zU?{...e,contents:t(e.contents)}:t(e)}var bpr=()=>{},KU=bpr,Oci=bpr,ECa=bpr;function Cmt(e){return KU(e),{type:$z,contents:e}}function FSe(e,t){return KU(t),{type:eq,contents:t,n:e}}function Mci(e,t={}){return KU(e),Oci(t.expandedStates,!0),{type:A9,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function BCa(e){return FSe(Number.NEGATIVE_INFINITY,e)}function vCa(e){return FSe({type:"root"},e)}function SCa(e){return FSe(-1,e)}function wCa(e,t){return Mci(e[0],{...t,expandedStates:e})}function TCa(e){return ECa(e),{type:jU,parts:e}}function NCa(e,t="",r={}){return KU(e),t!==""&&KU(t),{type:t3,breakContents:e,flatContents:t,groupId:r.groupId}}function RCa(e,t){return KU(e),{type:rq,contents:e,groupId:t.groupId,negate:t.negate}}function apr(e){return KU(e),{type:nq,contents:e}}var DCa={type:iq},bmt={type:wM},xCa={type:tq},Epr={type:XD,hard:!0},Qci={type:XD,hard:!0,literal:!0},Yci={type:XD},kCa={type:XD,soft:!0},Tfe=[Epr,bmt],Hci=[Qci,bmt],wfe={type:Dfe};function Xci(e,t){KU(e),Oci(t);let r=[];for(let s=0;s0){for(let a=0;a0?`, { ${y.join(", ")} }`:"";return`indentIfBreak(${s(o.contents)}${B})`}if(o.type===A9){let y=[];o.break&&o.break!=="propagated"&&y.push("shouldBreak: true"),o.id&&y.push(`id: ${a(o.id)}`);let B=y.length>0?`, { ${y.join(", ")} }`:"";return o.expandedStates?`conditionalGroup([${o.expandedStates.map(v=>s(v)).join(",")}]${B})`:`group(${s(o.contents)}${B})`}if(o.type===jU)return`fill([${o.parts.map(y=>s(y)).join(", ")}])`;if(o.type===nq)return"lineSuffix("+s(o.contents)+")";if(o.type===iq)return"lineSuffixBoundary";if(o.type===zU)return`label(${JSON.stringify(o.label)}, ${s(o.contents)})`;throw new Error("Unknown doc type "+o.type)}function a(o){if(typeof o!="symbol")return JSON.stringify(String(o));if(o in t)return t[o];let g=o.description||"symbol";for(let p=0;;p++){let f=g+(p>0?` #${p}`:"");if(!r.has(f))return r.add(f),t[o]=`Symbol.for(${JSON.stringify(f)})`}}}var ZCa=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;function LCa(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function VCa(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var WCa=e=>!(LCa(e)||VCa(e)),PCa=/[^\x20-\x7F]/u;function OCa(e){if(!e)return 0;if(!PCa.test(e))return e.length;e=e.replace(ZCa()," ");let t=0;for(let r of e){let s=r.codePointAt(0);s<=31||s>=127&&s<=159||s>=768&&s<=879||(t+=WCa(s)?1:2)}return t}var Bpr=OCa,g9=Symbol("MODE_BREAK"),UU=Symbol("MODE_FLAT"),NSe=Symbol("cursor"),cpr=Symbol("DOC_FILL_PRINTED_LENGTH");function Uci(){return{value:"",length:0,queue:[]}}function MCa(e,t){return lpr(e,{type:"indent"},t)}function QCa(e,t,r){return t===Number.NEGATIVE_INFINITY?e.root||Uci():t<0?lpr(e,{type:"dedent"},r):t?t.type==="root"?{...e,root:e}:lpr(e,{type:typeof t=="string"?"stringAlign":"numberAlign",n:t},r):e}function lpr(e,t,r){let s=t.type==="dedent"?e.queue.slice(0,-1):[...e.queue,t],a="",o=0,g=0,p=0;for(let T of s)switch(T.type){case"indent":y(),r.useTabs?f(1):m(r.tabWidth);break;case"stringAlign":y(),a+=T.n,o+=T.n.length;break;case"numberAlign":g+=1,p+=T.n;break;default:throw new Error(`Unexpected type '${T.type}'`)}return v(),{...e,value:a,length:o,queue:s};function f(T){a+=" ".repeat(T),o+=r.tabWidth*T}function m(T){a+=" ".repeat(T),o+=T}function y(){r.useTabs?B():v()}function B(){g>0&&f(g),G()}function v(){p>0&&m(p),G()}function G(){g=0,p=0}}function upr(e){let t=0,r=0,s=e.length;e:for(;s--;){let a=e[s];if(a===NSe){r++;continue}for(let o=a.length-1;o>=0;o--){let g=a[o];if(g===" "||g===" ")t++;else{e[s]=a.slice(0,o+1);break e}}}if(t>0||r>0)for(e.length=s+1;r-- >0;)e.push(NSe);return t}function umt(e,t,r,s,a,o){if(r===Number.POSITIVE_INFINITY)return!0;let g=t.length,p=[e],f=[];for(;r>=0;){if(p.length===0){if(g===0)return!0;p.push(t[--g]);continue}let{mode:m,doc:y}=p.pop(),B=xfe(y);switch(B){case Rfe:f.push(y),r-=Bpr(y);break;case qz:case jU:{let v=B===qz?y:y.parts,G=y[cpr]??0;for(let T=v.length-1;T>=G;T--)p.push({mode:m,doc:v[T]});break}case $z:case eq:case rq:case zU:p.push({mode:m,doc:y.contents});break;case tq:r+=upr(f);break;case A9:{if(o&&y.break)return!1;let v=y.break?g9:m,G=y.expandedStates&&v===g9?hR(!1,y.expandedStates,-1):y.contents;p.push({mode:v,doc:G});break}case t3:{let v=(y.groupId?a[y.groupId]||UU:m)===g9?y.breakContents:y.flatContents;v&&p.push({mode:m,doc:v});break}case XD:if(m===g9||y.hard)return!0;y.soft||(f.push(" "),r--);break;case nq:s=!0;break;case iq:if(s)return!1;break}}return!1}function Emt(e,t){let r={},s=t.printWidth,a=hpr(t.endOfLine),o=0,g=[{ind:Uci(),mode:g9,doc:e}],p=[],f=!1,m=[],y=0;for(fCa(e);g.length>0;){let{ind:v,mode:G,doc:T}=g.pop();switch(xfe(T)){case Rfe:{let O=a!==` -`?hmt(!1,T,` -`,a):T;p.push(O),g.length>0&&(o+=Bpr(O));break}case qz:for(let O=T.length-1;O>=0;O--)g.push({ind:v,mode:G,doc:T[O]});break;case Dfe:if(y>=2)throw new Error("There are too many 'cursor' in doc.");p.push(NSe),y++;break;case $z:g.push({ind:MCa(v,t),mode:G,doc:T.contents});break;case eq:g.push({ind:QCa(v,T.n,t),mode:G,doc:T.contents});break;case tq:o-=upr(p);break;case A9:switch(G){case UU:if(!f){g.push({ind:v,mode:T.break?g9:UU,doc:T.contents});break}case g9:{f=!1;let O={ind:v,mode:UU,doc:T.contents},X=s-o,U=m.length>0;if(!T.break&&umt(O,g,X,U,r))g.push(O);else if(T.expandedStates){let le=hR(!1,T.expandedStates,-1);if(T.break){g.push({ind:v,mode:g9,doc:le});break}else for(let ae=1;ae=T.expandedStates.length){g.push({ind:v,mode:g9,doc:le});break}else{let ge=T.expandedStates[ae],fe={ind:v,mode:UU,doc:ge};if(umt(fe,g,X,U,r)){g.push(fe);break}}}else g.push({ind:v,mode:g9,doc:T.contents});break}}T.id&&(r[T.id]=hR(!1,g,-1).mode);break;case jU:{let O=s-o,X=T[cpr]??0,{parts:U}=T,le=U.length-X;if(le===0)break;let ae=U[X+0],ge=U[X+1],fe={ind:v,mode:UU,doc:ae},pe={ind:v,mode:g9,doc:ae},he=umt(fe,[],O,m.length>0,r,!0);if(le===1){he?g.push(fe):g.push(pe);break}let be={ind:v,mode:UU,doc:ge},Te={ind:v,mode:g9,doc:ge};if(le===2){he?g.push(be,fe):g.push(Te,pe);break}let ke=U[X+2],x={ind:v,mode:G,doc:{...T,[cpr]:X+2}};umt({ind:v,mode:UU,doc:[ae,ge,ke]},[],O,m.length>0,r,!0)?g.push(x,be,fe):he?g.push(x,Te,fe):g.push(x,Te,pe);break}case t3:case rq:{let O=T.groupId?r[T.groupId]:G;if(O===g9){let X=T.type===t3?T.breakContents:T.negate?T.contents:Cmt(T.contents);X&&g.push({ind:v,mode:G,doc:X})}if(O===UU){let X=T.type===t3?T.flatContents:T.negate?Cmt(T.contents):T.contents;X&&g.push({ind:v,mode:G,doc:X})}break}case nq:m.push({ind:v,mode:G,doc:T.contents});break;case iq:m.length>0&&g.push({ind:v,mode:G,doc:Epr});break;case XD:switch(G){case UU:if(T.hard)f=!0;else{T.soft||(p.push(" "),o+=1);break}case g9:if(m.length>0){g.push({ind:v,mode:G,doc:T},...m.reverse()),m.length=0;break}T.literal?v.root?(p.push(a,v.root.value),o=v.root.length):(p.push(a),o=0):(o-=upr(p),p.push(a+v.value),o=v.length);break}break;case zU:g.push({ind:v,mode:G,doc:T.contents});break;case wM:break;default:throw new GSe(T)}g.length===0&&m.length>0&&(g.push(...m.reverse()),m.length=0)}let B=p.indexOf(NSe);if(B!==-1){let v=p.indexOf(NSe,B+1);if(v===-1)return{formatted:p.filter(X=>X!==NSe).join("")};let G=p.slice(0,B).join(""),T=p.slice(B+1,v).join(""),O=p.slice(v+1).join("");return{formatted:G+T+O,cursorNodeStart:G.length,cursorNodeText:T}}return{formatted:p.join("")}}function YCa(e,t,r=0){let s=0;for(let a=r;a1?hR(!1,e,-2):null}getValue(){return hR(!1,this.stack,-1)}getNode(e=0){let t=GYe(this,Bfe,gpr).call(this,e);return t===-1?null:this.stack[t]}getParentNode(e=0){return this.getNode(e+1)}call(e,...t){let{stack:r}=this,{length:s}=r,a=hR(!1,r,-1);for(let o of t)a=a[o],r.push(o,a);try{return e(this)}finally{r.length=s}}callParent(e,t=0){let r=GYe(this,Bfe,gpr).call(this,t+1),s=this.stack.splice(r+1);try{return e(this)}finally{this.stack.push(...s)}}each(e,...t){let{stack:r}=this,{length:s}=r,a=hR(!1,r,-1);for(let o of t)a=a[o],r.push(o,a);try{for(let o=0;o{r[a]=e(s,a,o)},...t),r}match(...e){let t=this.stack.length-1,r=null,s=this.stack[t--];for(let a of e){if(s===void 0)return!1;let o=null;if(typeof r=="number"&&(o=r,r=this.stack[t--],s=this.stack[t--]),a&&!a(s,r,o))return!1;r=this.stack[t--],s=this.stack[t--]}return!0}findAncestor(e){for(let t of GYe(this,Bfe,dmt).call(this))if(e(t))return t}hasAncestor(e){for(let t of GYe(this,Bfe,dmt).call(this))if(e(t))return!0;return!1}};Bfe=new WeakSet,gpr=function(e){let{stack:t}=this;for(let r=t.length-1;r>=0;r-=2)if(!Array.isArray(t[r])&&--e<0)return r;return-1},dmt=function*(){let{stack:e}=this;for(let t=e.length-3;t>=0;t-=2){let r=e[t];Array.isArray(r)||(yield r)}};var XCa=HCa,Kci=new Proxy(()=>{},{get:()=>Kci}),Apr=Kci;function JCa(e){return e!==null&&typeof e=="object"}var UCa=JCa;function*Bmt(e,t){let{getVisitorKeys:r,filter:s=()=>!0}=t,a=o=>UCa(o)&&s(o);for(let o of r(e)){let g=e[o];if(Array.isArray(g))for(let p of g)a(p)&&(yield p);else a(g)&&(yield g)}}function*KCa(e,t){let r=[e];for(let s=0;s{let a=!!(s!=null&&s.backwards);if(r===!1)return!1;let{length:o}=t,g=r;for(;g>=0&&g{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},yR=ECa;function BCa(e){if(typeof e=="string")return Zfe;if(Array.isArray(e))return $z;if(!e)return;let{type:t}=e;if(Jci.has(t))return t}var Vfe=BCa,vCa=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e);function SCa(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', +Expected it to be 'string' or 'object'.`;if(Vfe(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let s=vCa([...Jci].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. +Expected it to be ${s}.`}var wCa=class extends Error{name="InvalidDocError";constructor(e){super(SCa(e)),this.doc=e}},LSe=wCa,mci={};function TCa(e,t,r,s){let a=[e];for(;a.length>0;){let o=a.pop();if(o===mci){r(a.pop());continue}r&&a.push(o,mci);let g=Vfe(o);if(!g)throw new LSe(o);if(t?.(o)!==!1)switch(g){case $z:case iK:{let p=g===$z?o:o.parts;for(let f=p.length,m=f-1;m>=0;--m)a.push(p[m]);break}case n3:a.push(o.flatContents,o.breakContents);break;case d9:if(s&&o.expandedStates)for(let p=o.expandedStates.length,f=p-1;f>=0;--f)a.push(o.expandedStates[f]);else a.push(o.contents);break;case tq:case eq:case nq:case sK:case iq:a.push(o.contents);break;case Zfe:case Lfe:case rq:case sq:case jD:case NQ:break;default:throw new LSe(o)}}}var vpr=TCa;function Bmt(e,t){if(typeof e=="string")return t(e);let r=new Map;return s(e);function s(o){if(r.has(o))return r.get(o);let g=a(o);return r.set(o,g),g}function a(o){switch(Vfe(o)){case $z:return t(o.map(s));case iK:return t({...o,parts:o.parts.map(s)});case n3:return t({...o,breakContents:s(o.breakContents),flatContents:s(o.flatContents)});case d9:{let{expandedStates:g,contents:p}=o;return g?(g=g.map(s),p=g[0]):p=s(p),t({...o,contents:p,expandedStates:g})}case tq:case eq:case nq:case sK:case iq:return t({...o,contents:s(o.contents)});case Zfe:case Lfe:case rq:case sq:case jD:case NQ:return t(o);default:throw new LSe(o)}}}function Spr(e,t,r){let s=r,a=!1;function o(g){if(a)return!1;let p=t(g);p!==void 0&&(a=!0,s=p)}return vpr(e,o),s}function NCa(e){if(e.type===d9&&e.break||e.type===jD&&e.hard||e.type===NQ)return!0}function RCa(e){return Spr(e,NCa,!1)}function hci(e){if(e.length>0){let t=yR(!1,e,-1);!t.expandedStates&&!t.break&&(t.break="propagated")}return null}function DCa(e){let t=new Set,r=[];function s(o){if(o.type===NQ&&hci(r),o.type===d9){if(r.push(o),t.has(o))return!1;t.add(o)}}function a(o){o.type===d9&&r.pop().break&&hci(r)}vpr(e,s,a,!0)}function xCa(e){return e.type===jD&&!e.hard?e.soft?"":" ":e.type===n3?e.flatContents:e}function kCa(e){return Bmt(e,xCa)}function _ci(e){for(e=[...e];e.length>=2&&yR(!1,e,-2).type===jD&&yR(!1,e,-1).type===NQ;)e.length-=2;if(e.length>0){let t=VMe(yR(!1,e,-1));e[e.length-1]=t}return e}function VMe(e){switch(Vfe(e)){case eq:case nq:case d9:case iq:case sK:{let t=VMe(e.contents);return{...e,contents:t}}case n3:return{...e,breakContents:VMe(e.breakContents),flatContents:VMe(e.flatContents)};case iK:return{...e,parts:_ci(e.parts)};case $z:return _ci(e);case Zfe:return e.replace(/[\n\r]*$/u,"");case tq:case Lfe:case rq:case sq:case jD:case NQ:break;default:throw new LSe(e)}return e}function Uci(e){return VMe(FCa(e))}function GCa(e){switch(Vfe(e)){case iK:if(e.parts.every(t=>t===""))return"";break;case d9:if(!e.contents&&!e.id&&!e.break&&!e.expandedStates)return"";if(e.contents.type===d9&&e.contents.id===e.id&&e.contents.break===e.break&&e.contents.expandedStates===e.expandedStates)return e.contents;break;case tq:case eq:case nq:case iq:if(!e.contents)return"";break;case n3:if(!e.flatContents&&!e.breakContents)return"";break;case $z:{let t=[];for(let r of e){if(!r)continue;let[s,...a]=Array.isArray(r)?r:[r];typeof s=="string"&&typeof yR(!1,t,-1)=="string"?t[t.length-1]+=s:t.push(s),t.push(...a)}return t.length===0?"":t.length===1?t[0]:t}case Zfe:case Lfe:case rq:case sq:case jD:case sK:case NQ:break;default:throw new LSe(e)}return e}function FCa(e){return Bmt(e,t=>GCa(t))}function ZCa(e,t=$ci){return Bmt(e,r=>typeof r=="string"?eli(t,r.split(` +`)):r)}function LCa(e){if(e.type===jD)return!0}function VCa(e){return Spr(e,LCa,!1)}function fmt(e,t){return e.type===sK?{...e,contents:t(e.contents)}:t(e)}var wpr=()=>{},nK=wpr,Kci=wpr,WCa=wpr;function _mt(e){return nK(e),{type:eq,contents:e}}function VSe(e,t){return nK(t),{type:tq,contents:t,n:e}}function jci(e,t={}){return nK(e),Kci(t.expandedStates,!0),{type:d9,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function PCa(e){return VSe(Number.NEGATIVE_INFINITY,e)}function OCa(e){return VSe({type:"root"},e)}function QCa(e){return VSe(-1,e)}function MCa(e,t){return jci(e[0],{...t,expandedStates:e})}function HCa(e){return WCa(e),{type:iK,parts:e}}function YCa(e,t="",r={}){return nK(e),t!==""&&nK(t),{type:n3,breakContents:e,flatContents:t,groupId:r.groupId}}function XCa(e,t){return nK(e),{type:nq,contents:e,groupId:t.groupId,negate:t.negate}}function Apr(e){return nK(e),{type:iq,contents:e}}var JCa={type:sq},vmt={type:NQ},UCa={type:rq},Tpr={type:jD,hard:!0},zci={type:jD,hard:!0,literal:!0},qci={type:jD},KCa={type:jD,soft:!0},Gfe=[Tpr,vmt],$ci=[zci,vmt],kfe={type:Lfe};function eli(e,t){nK(e),Kci(t);let r=[];for(let s=0;s0){for(let a=0;a0?`, { ${y.join(", ")} }`:"";return`indentIfBreak(${s(o.contents)}${B})`}if(o.type===d9){let y=[];o.break&&o.break!=="propagated"&&y.push("shouldBreak: true"),o.id&&y.push(`id: ${a(o.id)}`);let B=y.length>0?`, { ${y.join(", ")} }`:"";return o.expandedStates?`conditionalGroup([${o.expandedStates.map(v=>s(v)).join(",")}]${B})`:`group(${s(o.contents)}${B})`}if(o.type===iK)return`fill([${o.parts.map(y=>s(y)).join(", ")}])`;if(o.type===iq)return"lineSuffix("+s(o.contents)+")";if(o.type===sq)return"lineSuffixBoundary";if(o.type===sK)return`label(${JSON.stringify(o.label)}, ${s(o.contents)})`;throw new Error("Unknown doc type "+o.type)}function a(o){if(typeof o!="symbol")return JSON.stringify(String(o));if(o in t)return t[o];let g=o.description||"symbol";for(let p=0;;p++){let f=g+(p>0?` #${p}`:"");if(!r.has(f))return r.add(f),t[o]=`Symbol.for(${JSON.stringify(f)})`}}}var qCa=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;function $Ca(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function ema(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}var tma=e=>!($Ca(e)||ema(e)),rma=/[^\x20-\x7F]/u;function nma(e){if(!e)return 0;if(!rma.test(e))return e.length;e=e.replace(qCa()," ");let t=0;for(let r of e){let s=r.codePointAt(0);s<=31||s>=127&&s<=159||s>=768&&s<=879||(t+=tma(s)?1:2)}return t}var Npr=nma,A9=Symbol("MODE_BREAK"),rK=Symbol("MODE_FLAT"),xSe=Symbol("cursor"),dpr=Symbol("DOC_FILL_PRINTED_LENGTH");function rli(){return{value:"",length:0,queue:[]}}function ima(e,t){return ppr(e,{type:"indent"},t)}function sma(e,t,r){return t===Number.NEGATIVE_INFINITY?e.root||rli():t<0?ppr(e,{type:"dedent"},r):t?t.type==="root"?{...e,root:e}:ppr(e,{type:typeof t=="string"?"stringAlign":"numberAlign",n:t},r):e}function ppr(e,t,r){let s=t.type==="dedent"?e.queue.slice(0,-1):[...e.queue,t],a="",o=0,g=0,p=0;for(let T of s)switch(T.type){case"indent":y(),r.useTabs?f(1):m(r.tabWidth);break;case"stringAlign":y(),a+=T.n,o+=T.n.length;break;case"numberAlign":g+=1,p+=T.n;break;default:throw new Error(`Unexpected type '${T.type}'`)}return v(),{...e,value:a,length:o,queue:s};function f(T){a+=" ".repeat(T),o+=r.tabWidth*T}function m(T){a+=" ".repeat(T),o+=T}function y(){r.useTabs?B():v()}function B(){g>0&&f(g),k()}function v(){p>0&&m(p),k()}function k(){g=0,p=0}}function fpr(e){let t=0,r=0,s=e.length;e:for(;s--;){let a=e[s];if(a===xSe){r++;continue}for(let o=a.length-1;o>=0;o--){let g=a[o];if(g===" "||g===" ")t++;else{e[s]=a.slice(0,o+1);break e}}}if(t>0||r>0)for(e.length=s+1;r-- >0;)e.push(xSe);return t}function dmt(e,t,r,s,a,o){if(r===Number.POSITIVE_INFINITY)return!0;let g=t.length,p=[e],f=[];for(;r>=0;){if(p.length===0){if(g===0)return!0;p.push(t[--g]);continue}let{mode:m,doc:y}=p.pop(),B=Vfe(y);switch(B){case Zfe:f.push(y),r-=Npr(y);break;case $z:case iK:{let v=B===$z?y:y.parts,k=y[dpr]??0;for(let T=v.length-1;T>=k;T--)p.push({mode:m,doc:v[T]});break}case eq:case tq:case nq:case sK:p.push({mode:m,doc:y.contents});break;case rq:r+=fpr(f);break;case d9:{if(o&&y.break)return!1;let v=y.break?A9:m,k=y.expandedStates&&v===A9?yR(!1,y.expandedStates,-1):y.contents;p.push({mode:v,doc:k});break}case n3:{let v=(y.groupId?a[y.groupId]||rK:m)===A9?y.breakContents:y.flatContents;v&&p.push({mode:m,doc:v});break}case jD:if(m===A9||y.hard)return!0;y.soft||(f.push(" "),r--);break;case iq:s=!0;break;case sq:if(s)return!1;break}}return!1}function Smt(e,t){let r={},s=t.printWidth,a=Bpr(t.endOfLine),o=0,g=[{ind:rli(),mode:A9,doc:e}],p=[],f=!1,m=[],y=0;for(DCa(e);g.length>0;){let{ind:v,mode:k,doc:T}=g.pop();switch(Vfe(T)){case Zfe:{let O=a!==` +`?bmt(!1,T,` +`,a):T;p.push(O),g.length>0&&(o+=Npr(O));break}case $z:for(let O=T.length-1;O>=0;O--)g.push({ind:v,mode:k,doc:T[O]});break;case Lfe:if(y>=2)throw new Error("There are too many 'cursor' in doc.");p.push(xSe),y++;break;case eq:g.push({ind:ima(v,t),mode:k,doc:T.contents});break;case tq:g.push({ind:sma(v,T.n,t),mode:k,doc:T.contents});break;case rq:o-=fpr(p);break;case d9:switch(k){case rK:if(!f){g.push({ind:v,mode:T.break?A9:rK,doc:T.contents});break}case A9:{f=!1;let O={ind:v,mode:rK,doc:T.contents},X=s-o,U=m.length>0;if(!T.break&&dmt(O,g,X,U,r))g.push(O);else if(T.expandedStates){let le=yR(!1,T.expandedStates,-1);if(T.break){g.push({ind:v,mode:A9,doc:le});break}else for(let ae=1;ae=T.expandedStates.length){g.push({ind:v,mode:A9,doc:le});break}else{let ge=T.expandedStates[ae],fe={ind:v,mode:rK,doc:ge};if(dmt(fe,g,X,U,r)){g.push(fe);break}}}else g.push({ind:v,mode:A9,doc:T.contents});break}}T.id&&(r[T.id]=yR(!1,g,-1).mode);break;case iK:{let O=s-o,X=T[dpr]??0,{parts:U}=T,le=U.length-X;if(le===0)break;let ae=U[X+0],ge=U[X+1],fe={ind:v,mode:rK,doc:ae},pe={ind:v,mode:A9,doc:ae},he=dmt(fe,[],O,m.length>0,r,!0);if(le===1){he?g.push(fe):g.push(pe);break}let be={ind:v,mode:rK,doc:ge},Te={ind:v,mode:A9,doc:ge};if(le===2){he?g.push(be,fe):g.push(Te,pe);break}let ke=U[X+2],x={ind:v,mode:k,doc:{...T,[dpr]:X+2}};dmt({ind:v,mode:rK,doc:[ae,ge,ke]},[],O,m.length>0,r,!0)?g.push(x,be,fe):he?g.push(x,Te,fe):g.push(x,Te,pe);break}case n3:case nq:{let O=T.groupId?r[T.groupId]:k;if(O===A9){let X=T.type===n3?T.breakContents:T.negate?T.contents:_mt(T.contents);X&&g.push({ind:v,mode:k,doc:X})}if(O===rK){let X=T.type===n3?T.flatContents:T.negate?_mt(T.contents):T.contents;X&&g.push({ind:v,mode:k,doc:X})}break}case iq:m.push({ind:v,mode:k,doc:T.contents});break;case sq:m.length>0&&g.push({ind:v,mode:k,doc:Tpr});break;case jD:switch(k){case rK:if(T.hard)f=!0;else{T.soft||(p.push(" "),o+=1);break}case A9:if(m.length>0){g.push({ind:v,mode:k,doc:T},...m.reverse()),m.length=0;break}T.literal?v.root?(p.push(a,v.root.value),o=v.root.length):(p.push(a),o=0):(o-=fpr(p),p.push(a+v.value),o=v.length);break}break;case sK:g.push({ind:v,mode:k,doc:T.contents});break;case NQ:break;default:throw new LSe(T)}g.length===0&&m.length>0&&(g.push(...m.reverse()),m.length=0)}let B=p.indexOf(xSe);if(B!==-1){let v=p.indexOf(xSe,B+1);if(v===-1)return{formatted:p.filter(X=>X!==xSe).join("")};let k=p.slice(0,B).join(""),T=p.slice(B+1,v).join(""),O=p.slice(v+1).join("");return{formatted:k+T+O,cursorNodeStart:k.length,cursorNodeText:T}}return{formatted:p.join("")}}function oma(e,t,r=0){let s=0;for(let a=r;a1?yR(!1,e,-2):null}getValue(){return yR(!1,this.stack,-1)}getNode(e=0){let t=ZMe(this,Rfe,Ipr).call(this,e);return t===-1?null:this.stack[t]}getParentNode(e=0){return this.getNode(e+1)}call(e,...t){let{stack:r}=this,{length:s}=r,a=yR(!1,r,-1);for(let o of t)a=a[o],r.push(o,a);try{return e(this)}finally{r.length=s}}callParent(e,t=0){let r=ZMe(this,Rfe,Ipr).call(this,t+1),s=this.stack.splice(r+1);try{return e(this)}finally{this.stack.push(...s)}}each(e,...t){let{stack:r}=this,{length:s}=r,a=yR(!1,r,-1);for(let o of t)a=a[o],r.push(o,a);try{for(let o=0;o{r[a]=e(s,a,o)},...t),r}match(...e){let t=this.stack.length-1,r=null,s=this.stack[t--];for(let a of e){if(s===void 0)return!1;let o=null;if(typeof r=="number"&&(o=r,r=this.stack[t--],s=this.stack[t--]),a&&!a(s,r,o))return!1;r=this.stack[t--],s=this.stack[t--]}return!0}findAncestor(e){for(let t of ZMe(this,Rfe,Imt).call(this))if(e(t))return t}hasAncestor(e){for(let t of ZMe(this,Rfe,Imt).call(this))if(e(t))return!0;return!1}};Rfe=new WeakSet,Ipr=function(e){let{stack:t}=this;for(let r=t.length-1;r>=0;r-=2)if(!Array.isArray(t[r])&&--e<0)return r;return-1},Imt=function*(){let{stack:e}=this;for(let t=e.length-3;t>=0;t-=2){let r=e[t];Array.isArray(r)||(yield r)}};var cma=ama,nli=new Proxy(()=>{},{get:()=>nli}),Cpr=nli;function lma(e){return e!==null&&typeof e=="object"}var uma=lma;function*wmt(e,t){let{getVisitorKeys:r,filter:s=()=>!0}=t,a=o=>uma(o)&&s(o);for(let o of r(e)){let g=e[o];if(Array.isArray(g))for(let p of g)a(p)&&(yield p);else a(g)&&(yield g)}}function*gma(e,t){let r=[e];for(let s=0;s{let a=!!(s!=null&&s.backwards);if(r===!1)return!1;let{length:o}=t,g=r;for(;g>=0&&g0}var tma=ema,qci=new Set(["tokens","comments","parent","enclosingNode","precedingNode","followingNode"]),rma=e=>Object.keys(e).filter(t=>!qci.has(t));function nma(e){return e?t=>e(t,qci):rma}var vmt=nma;function ima(e){let t=e.type||e.kind||"(unknown type)",r=String(e.name||e.id&&(typeof e.id=="object"?e.id.name:e.id)||e.key&&(typeof e.key=="object"?e.key.name:e.key)||e.value&&(typeof e.value=="object"?"":String(e.value))||e.operator||"");return r.length>20&&(r=r.slice(0,19)+"\u2026"),t+(r?" "+r:"")}function Spr(e,t){(e.comments??(e.comments=[])).push(t),t.printed=!1,t.nodeDescription=ima(e)}function RSe(e,t){t.leading=!0,t.trailing=!1,Spr(e,t)}function vfe(e,t,r){t.leading=!1,t.trailing=!1,r&&(t.marker=r),Spr(e,t)}function DSe(e,t){t.leading=!1,t.trailing=!0,Spr(e,t)}var zdr=new WeakMap;function wpr(e,t){if(zdr.has(e))return zdr.get(e);let{printer:{getCommentChildNodes:r,canAttachComment:s,getVisitorKeys:a},locStart:o,locEnd:g}=t;if(!s)return[];let p=(r?.(e,t)??[...Bmt(e,{getVisitorKeys:vmt(a)})]).flatMap(f=>s(f)?[f]:wpr(f,t));return p.sort((f,m)=>o(f)-o(m)||g(f)-g(m)),zdr.set(e,p),p}function $ci(e,t,r,s){let{locStart:a,locEnd:o}=r,g=a(t),p=o(t),f=wpr(e,r),m,y,B=0,v=f.length;for(;B>1,T=f[G],O=a(T),X=o(T);if(O<=g&&p<=X)return $ci(T,t,r,T);if(X<=g){m=T,B=G+1;continue}if(p<=O){y=T,v=G;continue}throw new Error("Comment location overlaps with node location")}if(s?.type==="TemplateLiteral"){let{quasis:G}=s,T=$dr(G,t,r);m&&$dr(G,m,r)!==T&&(m=null),y&&$dr(G,y,r)!==T&&(y=null)}return{enclosingNode:s,precedingNode:m,followingNode:y}}var qdr=()=>!1;function sma(e,t){let{comments:r}=e;if(delete e.comments,!tma(r)||!t.printer.canAttachComment)return;let s=[],{locStart:a,locEnd:o,printer:{experimentalFeatures:{avoidAstMutation:g=!1}={},handleComments:p={}},originalText:f}=t,{ownLine:m=qdr,endOfLine:y=qdr,remaining:B=qdr}=p,v=r.map((G,T)=>({...$ci(e,G,t),comment:G,text:f,options:t,ast:e,isLastComment:r.length-1===T}));for(let[G,T]of v.entries()){let{comment:O,precedingNode:X,enclosingNode:U,followingNode:le,text:ae,options:ge,ast:fe,isLastComment:pe}=T;if(ge.parser==="json"||ge.parser==="json5"||ge.parser==="jsonc"||ge.parser==="__js_expression"||ge.parser==="__ts_expression"||ge.parser==="__vue_expression"||ge.parser==="__vue_ts_expression"){if(a(O)-a(fe)<=0){RSe(fe,O);continue}if(o(O)-o(fe)>=0){DSe(fe,O);continue}}let he;if(g?he=[T]:(O.enclosingNode=U,O.precedingNode=X,O.followingNode=le,he=[O,ae,ge,fe,pe]),oma(ae,ge,v,G))O.placement="ownLine",m(...he)||(le?RSe(le,O):X?DSe(X,O):vfe(U||fe,O));else if(ama(ae,ge,v,G))O.placement="endOfLine",y(...he)||(X?DSe(X,O):le?RSe(le,O):vfe(U||fe,O));else if(O.placement="remaining",!B(...he))if(X&&le){let be=s.length;be>0&&s[be-1].followingNode!==le&&dci(s,ge),s.push(T)}else X?DSe(X,O):le?RSe(le,O):vfe(U||fe,O)}if(dci(s,t),!g)for(let G of r)delete G.precedingNode,delete G.enclosingNode,delete G.followingNode}var eli=e=>!/[\S\n\u2028\u2029]/u.test(e);function oma(e,t,r,s){let{comment:a,precedingNode:o}=r[s],{locStart:g,locEnd:p}=t,f=g(a);if(o)for(let m=s-1;m>=0;m--){let{comment:y,precedingNode:B}=r[m];if(B!==o||!eli(e.slice(p(y),f)))break;f=g(y)}return Wse(e,f,{backwards:!0})}function ama(e,t,r,s){let{comment:a,followingNode:o}=r[s],{locStart:g,locEnd:p}=t,f=p(a);if(o)for(let m=s+1;m0;--f){let{comment:m,precedingNode:y,followingNode:B}=e[f-1];Apr.strictEqual(y,o),Apr.strictEqual(B,g);let v=t.originalText.slice(t.locEnd(m),p);if(((s=(r=t.printer).isGap)==null?void 0:s.call(r,v,t))??/^[\s(]*$/u.test(v))p=t.locStart(m);else break}for(let[m,{comment:y}]of e.entries())m1&&m.comments.sort((y,B)=>t.locStart(y)-t.locStart(B));e.length=0}function $dr(e,t,r){let s=r.locStart(t)-1;for(let a=1;a!s.has(p)).length===0)return{leading:"",trailing:""};let a=[],o=[],g;return e.each(()=>{let p=e.node;if(s!=null&&s.has(p))return;let{leading:f,trailing:m}=p;f?a.push(lma(e,t)):m&&(g=uma(e,t,g),o.push(g.doc))},"comments"),{leading:a,trailing:o}}function Ama(e,t,r){let{leading:s,trailing:a}=gma(e,r);return!s&&!a?t:Amt(t,o=>[s,o,a])}function dma(e){let{[Symbol.for("comments")]:t,[Symbol.for("printedComments")]:r}=e;for(let s of t){if(!s.printed&&!r.has(s))throw new Error('Comment "'+s.value.trim()+'" was not printed. Please report this error!');delete s.printed}}function pma(e){return()=>{}}var fma=pma,rli=class extends Error{name="ConfigError"},pci=class extends Error{name="UndefinedParserError"},Ima={cursorOffset:{category:"Special",type:"int",default:-1,range:{start:-1,end:1/0,step:1},description:"Print (to stderr) where a cursor at the given position would move to after formatting.",cliCategory:"Editor"},endOfLine:{category:"Global",type:"choice",default:"lf",description:"Which end of line characters to apply.",choices:[{value:"lf",description:"Line Feed only (\\n), common on Linux and macOS as well as inside git repos"},{value:"crlf",description:"Carriage Return + Line Feed characters (\\r\\n), common on Windows"},{value:"cr",description:"Carriage Return character only (\\r), used very rarely"},{value:"auto",description:`Maintain existing +`||a==="\r"||a==="\u2028"||a==="\u2029")return t+1}return t}var Ffe=pma;function fma(e,t,r={}){let s=Yse(e,r.backwards?t-1:t,r),a=Ffe(e,s,r);return s!==a}var Hse=fma;function Ima(e){return Array.isArray(e)&&e.length>0}var Cma=Ima,oli=new Set(["tokens","comments","parent","enclosingNode","precedingNode","followingNode"]),mma=e=>Object.keys(e).filter(t=>!oli.has(t));function hma(e){return e?t=>e(t,oli):mma}var Tmt=hma;function _ma(e){let t=e.type||e.kind||"(unknown type)",r=String(e.name||e.id&&(typeof e.id=="object"?e.id.name:e.id)||e.key&&(typeof e.key=="object"?e.key.name:e.key)||e.value&&(typeof e.value=="object"?"":String(e.value))||e.operator||"");return r.length>20&&(r=r.slice(0,19)+"\u2026"),t+(r?" "+r:"")}function Dpr(e,t){(e.comments??(e.comments=[])).push(t),t.printed=!1,t.nodeDescription=_ma(e)}function kSe(e,t){t.leading=!0,t.trailing=!1,Dpr(e,t)}function Dfe(e,t,r){t.leading=!1,t.trailing=!1,r&&(t.marker=r),Dpr(e,t)}function GSe(e,t){t.leading=!1,t.trailing=!0,Dpr(e,t)}var rpr=new WeakMap;function xpr(e,t){if(rpr.has(e))return rpr.get(e);let{printer:{getCommentChildNodes:r,canAttachComment:s,getVisitorKeys:a},locStart:o,locEnd:g}=t;if(!s)return[];let p=(r?.(e,t)??[...wmt(e,{getVisitorKeys:Tmt(a)})]).flatMap(f=>s(f)?[f]:xpr(f,t));return p.sort((f,m)=>o(f)-o(m)||g(f)-g(m)),rpr.set(e,p),p}function ali(e,t,r,s){let{locStart:a,locEnd:o}=r,g=a(t),p=o(t),f=xpr(e,r),m,y,B=0,v=f.length;for(;B>1,T=f[k],O=a(T),X=o(T);if(O<=g&&p<=X)return ali(T,t,r,T);if(X<=g){m=T,B=k+1;continue}if(p<=O){y=T,v=k;continue}throw new Error("Comment location overlaps with node location")}if(s?.type==="TemplateLiteral"){let{quasis:k}=s,T=ipr(k,t,r);m&&ipr(k,m,r)!==T&&(m=null),y&&ipr(k,y,r)!==T&&(y=null)}return{enclosingNode:s,precedingNode:m,followingNode:y}}var npr=()=>!1;function yma(e,t){let{comments:r}=e;if(delete e.comments,!Cma(r)||!t.printer.canAttachComment)return;let s=[],{locStart:a,locEnd:o,printer:{experimentalFeatures:{avoidAstMutation:g=!1}={},handleComments:p={}},originalText:f}=t,{ownLine:m=npr,endOfLine:y=npr,remaining:B=npr}=p,v=r.map((k,T)=>({...ali(e,k,t),comment:k,text:f,options:t,ast:e,isLastComment:r.length-1===T}));for(let[k,T]of v.entries()){let{comment:O,precedingNode:X,enclosingNode:U,followingNode:le,text:ae,options:ge,ast:fe,isLastComment:pe}=T;if(ge.parser==="json"||ge.parser==="json5"||ge.parser==="jsonc"||ge.parser==="__js_expression"||ge.parser==="__ts_expression"||ge.parser==="__vue_expression"||ge.parser==="__vue_ts_expression"){if(a(O)-a(fe)<=0){kSe(fe,O);continue}if(o(O)-o(fe)>=0){GSe(fe,O);continue}}let he;if(g?he=[T]:(O.enclosingNode=U,O.precedingNode=X,O.followingNode=le,he=[O,ae,ge,fe,pe]),bma(ae,ge,v,k))O.placement="ownLine",m(...he)||(le?kSe(le,O):X?GSe(X,O):Dfe(U||fe,O));else if(Ema(ae,ge,v,k))O.placement="endOfLine",y(...he)||(X?GSe(X,O):le?kSe(le,O):Dfe(U||fe,O));else if(O.placement="remaining",!B(...he))if(X&&le){let be=s.length;be>0&&s[be-1].followingNode!==le&&yci(s,ge),s.push(T)}else X?GSe(X,O):le?kSe(le,O):Dfe(U||fe,O)}if(yci(s,t),!g)for(let k of r)delete k.precedingNode,delete k.enclosingNode,delete k.followingNode}var cli=e=>!/[\S\n\u2028\u2029]/u.test(e);function bma(e,t,r,s){let{comment:a,precedingNode:o}=r[s],{locStart:g,locEnd:p}=t,f=g(a);if(o)for(let m=s-1;m>=0;m--){let{comment:y,precedingNode:B}=r[m];if(B!==o||!cli(e.slice(p(y),f)))break;f=g(y)}return Hse(e,f,{backwards:!0})}function Ema(e,t,r,s){let{comment:a,followingNode:o}=r[s],{locStart:g,locEnd:p}=t,f=p(a);if(o)for(let m=s+1;m0;--f){let{comment:m,precedingNode:y,followingNode:B}=e[f-1];Cpr.strictEqual(y,o),Cpr.strictEqual(B,g);let v=t.originalText.slice(t.locEnd(m),p);if(((s=(r=t.printer).isGap)==null?void 0:s.call(r,v,t))??/^[\s(]*$/u.test(v))p=t.locStart(m);else break}for(let[m,{comment:y}]of e.entries())m1&&m.comments.sort((y,B)=>t.locStart(y)-t.locStart(B));e.length=0}function ipr(e,t,r){let s=r.locStart(t)-1;for(let a=1;a!s.has(p)).length===0)return{leading:"",trailing:""};let a=[],o=[],g;return e.each(()=>{let p=e.node;if(s!=null&&s.has(p))return;let{leading:f,trailing:m}=p;f?a.push(vma(e,t)):m&&(g=Sma(e,t,g),o.push(g.doc))},"comments"),{leading:a,trailing:o}}function Tma(e,t,r){let{leading:s,trailing:a}=wma(e,r);return!s&&!a?t:fmt(t,o=>[s,o,a])}function Nma(e){let{[Symbol.for("comments")]:t,[Symbol.for("printedComments")]:r}=e;for(let s of t){if(!s.printed&&!r.has(s))throw new Error('Comment "'+s.value.trim()+'" was not printed. Please report this error!');delete s.printed}}function Rma(e){return()=>{}}var Dma=Rma,uli=class extends Error{name="ConfigError"},bci=class extends Error{name="UndefinedParserError"},xma={cursorOffset:{category:"Special",type:"int",default:-1,range:{start:-1,end:1/0,step:1},description:"Print (to stderr) where a cursor at the given position would move to after formatting.",cliCategory:"Editor"},endOfLine:{category:"Global",type:"choice",default:"lf",description:"Which end of line characters to apply.",choices:[{value:"lf",description:"Line Feed only (\\n), common on Linux and macOS as well as inside git repos"},{value:"crlf",description:"Carriage Return + Line Feed characters (\\r\\n), common on Windows"},{value:"cr",description:"Carriage Return character only (\\r), used very rarely"},{value:"auto",description:`Maintain existing (mixed values within one file are normalised by looking at what's used after the first line)`}]},filepath:{category:"Special",type:"path",description:"Specify the input filepath. This will be used to do parser inference.",cliName:"stdin-filepath",cliCategory:"Other",cliDescription:"Path to the file to pretend that stdin comes from."},insertPragma:{category:"Special",type:"boolean",default:!1,description:"Insert @format pragma into file's first docblock comment.",cliCategory:"Other"},parser:{category:"Global",type:"choice",default:void 0,description:"Which parser to use.",exception:e=>typeof e=="string"||typeof e=="function",choices:[{value:"flow",description:"Flow"},{value:"babel",description:"JavaScript"},{value:"babel-flow",description:"Flow"},{value:"babel-ts",description:"TypeScript"},{value:"typescript",description:"TypeScript"},{value:"acorn",description:"JavaScript"},{value:"espree",description:"JavaScript"},{value:"meriyah",description:"JavaScript"},{value:"css",description:"CSS"},{value:"less",description:"Less"},{value:"scss",description:"SCSS"},{value:"json",description:"JSON"},{value:"json5",description:"JSON5"},{value:"jsonc",description:"JSON with Comments"},{value:"json-stringify",description:"JSON.stringify"},{value:"graphql",description:"GraphQL"},{value:"markdown",description:"Markdown"},{value:"mdx",description:"MDX"},{value:"vue",description:"Vue"},{value:"yaml",description:"YAML"},{value:"glimmer",description:"Ember / Handlebars"},{value:"html",description:"HTML"},{value:"angular",description:"Angular"},{value:"lwc",description:"Lightning Web Components"}]},plugins:{type:"path",array:!0,default:[{value:[]}],category:"Global",description:"Add a plugin. Multiple plugins can be passed as separate `--plugin`s.",exception:e=>typeof e=="string"||typeof e=="object",cliName:"plugin",cliCategory:"Config"},printWidth:{category:"Global",type:"int",default:80,description:"The line length where Prettier will try wrap.",range:{start:0,end:1/0,step:1}},rangeEnd:{category:"Special",type:"int",default:1/0,range:{start:0,end:1/0,step:1},description:`Format code ending at a given character offset (exclusive). The range will extend forwards to the end of the selected statement.`,cliCategory:"Editor"},rangeStart:{category:"Special",type:"int",default:0,range:{start:0,end:1/0,step:1},description:`Format code starting at a given character offset. The range will extend backwards to the start of the first line containing the selected statement.`,cliCategory:"Editor"},requirePragma:{category:"Special",type:"boolean",default:!1,description:`Require either '@prettier' or '@format' to be present in the file's first docblock comment -in order for it to be formatted.`,cliCategory:"Other"},tabWidth:{type:"int",category:"Global",default:2,description:"Number of spaces per indentation level.",range:{start:0,end:1/0,step:1}},useTabs:{category:"Global",type:"boolean",default:!1,description:"Indent with tabs instead of spaces."},embeddedLanguageFormatting:{category:"Global",type:"choice",default:"auto",description:"Control how Prettier formats quoted code embedded in the file.",choices:[{value:"auto",description:"Format embedded code if Prettier can automatically identify it."},{value:"off",description:"Never automatically format embedded code."}]}};function nli({plugins:e=[],showDeprecated:t=!1}={}){let r=e.flatMap(a=>a.languages??[]),s=[];for(let a of mma(Object.assign({},...e.map(({options:o})=>o),Ima)))!t&&a.deprecated||(Array.isArray(a.choices)&&(t||(a.choices=a.choices.filter(o=>!o.deprecated)),a.name==="parser"&&(a.choices=[...a.choices,...Cma(a.choices,r,e)])),a.pluginDefaults=Object.fromEntries(e.filter(o=>{var g;return((g=o.defaultOptions)==null?void 0:g[a.name])!==void 0}).map(o=>[o.name,o.defaultOptions[a.name]])),s.push(a));return{languages:r,options:s}}function*Cma(e,t,r){let s=new Set(e.map(a=>a.value));for(let a of t)if(a.parsers){for(let o of a.parsers)if(!s.has(o)){s.add(o);let g=r.find(f=>f.parsers&&Object.prototype.hasOwnProperty.call(f.parsers,o)),p=a.name;g!=null&&g.name&&(p+=` (plugin: ${g.name})`),yield{value:o,description:p}}}}function mma(e){let t=[];for(let[r,s]of Object.entries(e)){let a={name:r,...s};Array.isArray(a.default)&&(a.default=hR(!1,a.default,-1).value),t.push(a)}return t}var hma=e=>String(e).split(/[/\\]/u).pop();function fci(e,t){if(!t)return;let r=hma(t).toLowerCase();return e.find(({filenames:s})=>s?.some(a=>a.toLowerCase()===r))??e.find(({extensions:s})=>s?.some(a=>r.endsWith(a)))}function _ma(e,t){if(t)return e.find(({name:r})=>r.toLowerCase()===t)??e.find(({aliases:r})=>r?.includes(t))??e.find(({extensions:r})=>r?.includes(`.${t}`))}function yma(e,t){let r=e.plugins.flatMap(a=>a.languages??[]),s=_ma(r,t.language)??fci(r,t.physicalFile)??fci(r,t.file)??(t.physicalFile,void 0);return s?.parsers[0]}var bma=yma,xSe={key:e=>/^[$_a-zA-Z][$_a-zA-Z0-9]*$/.test(e)?e:JSON.stringify(e),value(e){if(e===null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return`[${e.map(r=>xSe.value(r)).join(", ")}]`;let t=Object.keys(e);return t.length===0?"{}":`{ ${t.map(r=>`${xSe.key(r)}: ${xSe.value(e[r])}`).join(", ")} }`},pair:({key:e,value:t})=>xSe.value({[e]:t})},Ici=mmt(Cpr(),1),Ema=(e,t,{descriptor:r})=>{let s=[`${Ici.default.yellow(typeof e=="string"?r.key(e):r.pair(e))} is deprecated`];return t&&s.push(`we now treat it as ${Ici.default.blue(typeof t=="string"?r.key(t):r.pair(t))}`),s.join("; ")+"."},kSe=mmt(Cpr(),1),ili=Symbol.for("vnopts.VALUE_NOT_EXIST"),pmt=Symbol.for("vnopts.VALUE_UNCHANGED"),Cci=" ".repeat(2),Bma=(e,t,r)=>{let{text:s,list:a}=r.normalizeExpectedResult(r.schemas[e].expected(r)),o=[];return s&&o.push(mci(e,t,s,r.descriptor)),a&&o.push([mci(e,t,a.title,r.descriptor)].concat(a.values.map(g=>sli(g,r.loggerPrintWidth))).join(` -`)),oli(o,r.loggerPrintWidth)};function mci(e,t,r,s){return[`Invalid ${kSe.default.red(s.key(e))} value.`,`Expected ${kSe.default.blue(r)},`,`but received ${t===ili?kSe.default.gray("nothing"):kSe.default.red(s.value(t))}.`].join(" ")}function sli({text:e,list:t},r){let s=[];return e&&s.push(`- ${kSe.default.blue(e)}`),t&&s.push([`- ${kSe.default.blue(t.title)}:`].concat(t.values.map(a=>sli(a,r-Cci.length).replace(/^|\n/g,`$&${Cci}`))).join(` -`)),oli(s,r)}function oli(e,t){if(e.length===1)return e[0];let[r,s]=e,[a,o]=e.map(g=>g.split(` -`,1)[0].length);return a>t&&a>o?s:r}var hci=mmt(Cpr(),1),epr=[],_ci=[];function vma(e,t){if(e===t)return 0;let r=e;e.length>t.length&&(e=t,t=r);let s=e.length,a=t.length;for(;s>0&&e.charCodeAt(~-s)===t.charCodeAt(~-a);)s--,a--;let o=0;for(;op?m>p?p+1:m:m>f?f+1:m;return p}var ali=(e,t,{descriptor:r,logger:s,schemas:a})=>{let o=[`Ignored unknown option ${hci.default.yellow(r.pair({key:e,value:t}))}.`],g=Object.keys(a).sort().find(p=>vma(e,p)<3);g&&o.push(`Did you mean ${hci.default.blue(r.key(g))}?`),s.warn(o.join(" "))},Sma=["default","expected","validate","deprecated","forward","redirect","overlap","preprocess","postprocess"];function wma(e,t){let r=new e(t),s=Object.create(r);for(let a of Sma)a in t&&(s[a]=Tma(t[a],r,Ose.prototype[a].length));return s}var Ose=class{static create(e){return wma(this,e)}constructor(e){this.name=e.name}default(e){}expected(e){return"nothing"}validate(e,t){return!1}deprecated(e,t){return!1}forward(e,t){}redirect(e,t){}overlap(e,t,r){return e}preprocess(e,t){return e}postprocess(e,t){return pmt}};function Tma(e,t,r){return typeof e=="function"?(...s)=>e(...s.slice(0,r-1),t,...s.slice(r-1)):()=>e}var Nma=class extends Ose{constructor(e){super(e),this._sourceName=e.sourceName}expected(e){return e.schemas[this._sourceName].expected(e)}validate(e,t){return t.schemas[this._sourceName].validate(e,t)}redirect(e,t){return this._sourceName}},Rma=class extends Ose{expected(){return"anything"}validate(){return!0}},Dma=class extends Ose{constructor({valueSchema:e,name:t=e.name,...r}){super({...r,name:t}),this._valueSchema=e}expected(e){let{text:t,list:r}=e.normalizeExpectedResult(this._valueSchema.expected(e));return{text:t&&`an array of ${t}`,list:r&&{title:"an array of the following values",values:[{list:r}]}}}validate(e,t){if(!Array.isArray(e))return!1;let r=[];for(let s of e){let a=t.normalizeValidateResult(this._valueSchema.validate(s,t),s);a!==!0&&r.push(a.value)}return r.length===0?!0:{value:r}}deprecated(e,t){let r=[];for(let s of e){let a=t.normalizeDeprecatedResult(this._valueSchema.deprecated(s,t),s);a!==!1&&r.push(...a.map(({value:o})=>({value:[o]})))}return r}forward(e,t){let r=[];for(let s of e){let a=t.normalizeForwardResult(this._valueSchema.forward(s,t),s);r.push(...a.map(yci))}return r}redirect(e,t){let r=[],s=[];for(let a of e){let o=t.normalizeRedirectResult(this._valueSchema.redirect(a,t),a);"remain"in o&&r.push(o.remain),s.push(...o.redirect.map(yci))}return r.length===0?{redirect:s}:{redirect:s,remain:r}}overlap(e,t){return e.concat(t)}};function yci({from:e,to:t}){return{from:[e],to:t}}var xma=class extends Ose{expected(){return"true or false"}validate(e){return typeof e=="boolean"}};function kma(e,t){let r=Object.create(null);for(let s of e){let a=s[t];if(r[a])throw new Error(`Duplicate ${t} ${JSON.stringify(a)}`);r[a]=s}return r}function Gma(e,t){let r=new Map;for(let s of e){let a=s[t];if(r.has(a))throw new Error(`Duplicate ${t} ${JSON.stringify(a)}`);r.set(a,s)}return r}function Fma(){let e=Object.create(null);return t=>{let r=JSON.stringify(t);return e[r]?!0:(e[r]=!0,!1)}}function Zma(e,t){let r=[],s=[];for(let a of e)t(a)?r.push(a):s.push(a);return[r,s]}function Lma(e){return e===Math.floor(e)}function Vma(e,t){if(e===t)return 0;let r=typeof e,s=typeof t,a=["undefined","object","boolean","number","string"];return r!==s?a.indexOf(r)-a.indexOf(s):r!=="string"?Number(e)-Number(t):e.localeCompare(t)}function Wma(e){return(...t)=>{let r=e(...t);return typeof r=="string"?new Error(r):r}}function bci(e){return e===void 0?{}:e}function cli(e){if(typeof e=="string")return{text:e};let{text:t,list:r}=e;return Pma((t||r)!==void 0,"Unexpected `expected` result, there should be at least one field."),r?{text:t,list:{title:r.title,values:r.values.map(cli)}}:{text:t}}function Eci(e,t){return e===!0?!0:e===!1?{value:t}:e}function Bci(e,t,r=!1){return e===!1?!1:e===!0?r?!0:[{value:t}]:"value"in e?[e]:e.length===0?!1:e}function vci(e,t){return typeof e=="string"||"key"in e?{from:t,to:e}:"from"in e?{from:e.from,to:e.to}:{from:t,to:e.to}}function dpr(e,t){return e===void 0?[]:Array.isArray(e)?e.map(r=>vci(r,t)):[vci(e,t)]}function Sci(e,t){let r=dpr(typeof e=="object"&&"redirect"in e?e.redirect:e,t);return r.length===0?{remain:t,redirect:r}:typeof e=="object"&&"remain"in e?{remain:e.remain,redirect:r}:{redirect:r}}function Pma(e,t){if(!e)throw new Error(t)}var Oma=class extends Ose{constructor(e){super(e),this._choices=Gma(e.choices.map(t=>t&&typeof t=="object"?t:{value:t}),"value")}expected({descriptor:e}){let t=Array.from(this._choices.keys()).map(a=>this._choices.get(a)).filter(({hidden:a})=>!a).map(a=>a.value).sort(Vma).map(e.value),r=t.slice(0,-2),s=t.slice(-2);return{text:r.concat(s.join(" or ")).join(", "),list:{title:"one of the following values",values:t}}}validate(e){return this._choices.has(e)}deprecated(e){let t=this._choices.get(e);return t&&t.deprecated?{value:e}:!1}forward(e){let t=this._choices.get(e);return t?t.forward:void 0}redirect(e){let t=this._choices.get(e);return t?t.redirect:void 0}},Mma=class extends Ose{expected(){return"a number"}validate(e,t){return typeof e=="number"}},Qma=class extends Mma{expected(){return"an integer"}validate(e,t){return t.normalizeValidateResult(super.validate(e,t),e)===!0&&Lma(e)}},wci=class extends Ose{expected(){return"a string"}validate(e){return typeof e=="string"}},Yma=xSe,Hma=ali,Xma=Bma,Jma=Ema,Uma=class{constructor(e,t){let{logger:r=console,loggerPrintWidth:s=80,descriptor:a=Yma,unknown:o=Hma,invalid:g=Xma,deprecated:p=Jma,missing:f=()=>!1,required:m=()=>!1,preprocess:y=v=>v,postprocess:B=()=>pmt}=t||{};this._utils={descriptor:a,logger:r||{warn:()=>{}},loggerPrintWidth:s,schemas:kma(e,"name"),normalizeDefaultResult:bci,normalizeExpectedResult:cli,normalizeDeprecatedResult:Bci,normalizeForwardResult:dpr,normalizeRedirectResult:Sci,normalizeValidateResult:Eci},this._unknownHandler=o,this._invalidHandler=Wma(g),this._deprecatedHandler=p,this._identifyMissing=(v,G)=>!(v in G)||f(v,G),this._identifyRequired=m,this._preprocess=y,this._postprocess=B,this.cleanHistory()}cleanHistory(){this._hasDeprecationWarned=Fma()}normalize(e){let t={},r=[this._preprocess(e,this._utils)],s=()=>{for(;r.length!==0;){let a=r.shift(),o=this._applyNormalization(a,t);r.push(...o)}};s();for(let a of Object.keys(this._utils.schemas)){let o=this._utils.schemas[a];if(!(a in t)){let g=bci(o.default(this._utils));"value"in g&&r.push({[a]:g.value})}}s();for(let a of Object.keys(this._utils.schemas)){if(!(a in t))continue;let o=this._utils.schemas[a],g=t[a],p=o.postprocess(g,this._utils);p!==pmt&&(this._applyValidation(p,a,o),t[a]=p)}return this._applyPostprocess(t),this._applyRequiredCheck(t),t}_applyNormalization(e,t){let r=[],{knownKeys:s,unknownKeys:a}=this._partitionOptionKeys(e);for(let o of s){let g=this._utils.schemas[o],p=g.preprocess(e[o],this._utils);this._applyValidation(p,o,g);let f=({from:B,to:v})=>{r.push(typeof v=="string"?{[v]:B}:{[v.key]:v.value})},m=({value:B,redirectTo:v})=>{let G=Bci(g.deprecated(B,this._utils),p,!0);if(G!==!1)if(G===!0)this._hasDeprecationWarned(o)||this._utils.logger.warn(this._deprecatedHandler(o,v,this._utils));else for(let{value:T}of G){let O={key:o,value:T};if(!this._hasDeprecationWarned(O)){let X=typeof v=="string"?{key:v,value:T}:v;this._utils.logger.warn(this._deprecatedHandler(O,X,this._utils))}}};dpr(g.forward(p,this._utils),p).forEach(f);let y=Sci(g.redirect(p,this._utils),p);if(y.redirect.forEach(f),"remain"in y){let B=y.remain;t[o]=o in t?g.overlap(t[o],B,this._utils):B,m({value:B})}for(let{from:B,to:v}of y.redirect)m({value:B,redirectTo:v})}for(let o of a){let g=e[o];this._applyUnknownHandler(o,g,t,(p,f)=>{r.push({[p]:f})})}return r}_applyRequiredCheck(e){for(let t of Object.keys(this._utils.schemas))if(this._identifyMissing(t,e)&&this._identifyRequired(t))throw this._invalidHandler(t,ili,this._utils)}_partitionOptionKeys(e){let[t,r]=Zma(Object.keys(e).filter(s=>!this._identifyMissing(s,e)),s=>s in this._utils.schemas);return{knownKeys:t,unknownKeys:r}}_applyValidation(e,t,r){let s=Eci(r.validate(e,this._utils),e);if(s!==!0)throw this._invalidHandler(t,s.value,this._utils)}_applyUnknownHandler(e,t,r,s){let a=this._unknownHandler(e,t,this._utils);if(a)for(let o of Object.keys(a)){if(this._identifyMissing(o,a))continue;let g=a[o];o in this._utils.schemas?s(o,g):r[o]=g}}_applyPostprocess(e){let t=this._postprocess(e,this._utils);if(t!==pmt){if(t.delete)for(let r of t.delete)delete e[r];if(t.override){let{knownKeys:r,unknownKeys:s}=this._partitionOptionKeys(t.override);for(let a of r){let o=t.override[a];this._applyValidation(o,a,this._utils.schemas[a]),e[a]=o}for(let a of s){let o=t.override[a];this._applyUnknownHandler(a,o,e,(g,p)=>{let f=this._utils.schemas[g];this._applyValidation(p,g,f),e[g]=p})}}}}},tpr;function Kma(e,t,{logger:r=!1,isCLI:s=!1,passThrough:a=!1,FlagSchema:o,descriptor:g}={}){if(s){if(!o)throw new Error("'FlagSchema' option is required.");if(!g)throw new Error("'descriptor' option is required.")}else g=xSe;let p=a?Array.isArray(a)?(v,G)=>a.includes(v)?{[v]:G}:void 0:(v,G)=>({[v]:G}):(v,G,T)=>{let{_:O,...X}=T.schemas;return ali(v,G,{...T,schemas:X})},f=jma(t,{isCLI:s,FlagSchema:o}),m=new Uma(f,{logger:r,unknown:p,descriptor:g}),y=r!==!1;y&&tpr&&(m._hasDeprecationWarned=tpr);let B=m.normalize(e);return y&&(tpr=m._hasDeprecationWarned),B}function jma(e,{isCLI:t,FlagSchema:r}){let s=[];t&&s.push(Rma.create({name:"_"}));for(let a of e)s.push(zma(a,{isCLI:t,optionInfos:e,FlagSchema:r})),a.alias&&t&&s.push(Nma.create({name:a.alias,sourceName:a.name}));return s}function zma(e,{isCLI:t,optionInfos:r,FlagSchema:s}){let{name:a}=e,o={name:a},g,p={};switch(e.type){case"int":g=Qma,t&&(o.preprocess=Number);break;case"string":g=wci;break;case"choice":g=Oma,o.choices=e.choices.map(f=>f!=null&&f.redirect?{...f,redirect:{to:{key:e.name,value:f.redirect}}}:f);break;case"boolean":g=xma;break;case"flag":g=s,o.flags=r.flatMap(f=>[f.alias,f.description&&f.name,f.oppositeDescription&&`no-${f.name}`].filter(Boolean));break;case"path":g=wci;break;default:throw new Error(`Unexpected type ${e.type}`)}if(e.exception?o.validate=(f,m,y)=>e.exception(f)||m.validate(f,y):o.validate=(f,m,y)=>f===void 0||m.validate(f,y),e.redirect&&(p.redirect=f=>f?{to:typeof e.redirect=="string"?e.redirect:{key:e.redirect.option,value:e.redirect.value}}:void 0),e.deprecated&&(p.deprecated=!0),t&&!e.array){let f=o.preprocess||(m=>m);o.preprocess=(m,y,B)=>y.preprocess(f(Array.isArray(m)?hR(!1,m,-1):m),B)}return e.array?Dma.create({...t?{preprocess:f=>Array.isArray(f)?f:[f]}:{},...p,valueSchema:g.create(o)}):g.create({...o,...p})}var qma=Kma,$ma=(e,t,r)=>{if(!(e&&t==null)){if(t.findLast)return t.findLast(r);for(let s=t.length-1;s>=0;s--){let a=t[s];if(r(a,s,t))return a}}},lli=$ma;function uli(e,t){if(!t)throw new Error("parserName is required.");let r=lli(!1,e,a=>a.parsers&&Object.prototype.hasOwnProperty.call(a.parsers,t));if(r)return r;let s=`Couldn't resolve parser "${t}".`;throw s+=" Plugins must be explicitly added to the standalone bundle.",new rli(s)}function eha(e,t){if(!t)throw new Error("astFormat is required.");let r=lli(!1,e,a=>a.printers&&Object.prototype.hasOwnProperty.call(a.printers,t));if(r)return r;let s=`Couldn't find plugin for AST format "${t}".`;throw s+=" Plugins must be explicitly added to the standalone bundle.",new rli(s)}function gli({plugins:e,parser:t}){let r=uli(e,t);return Ali(r,t)}function Ali(e,t){let r=e.parsers[t];return typeof r=="function"?r():r}function tha(e,t){let r=e.printers[t];return typeof r=="function"?r():r}var Tci={astFormat:"estree",printer:{},originalText:void 0,locStart:null,locEnd:null};async function rha(e,t={}){var r;let s={...e};if(!s.parser)if(s.filepath){if(s.parser=bma(s,{physicalFile:s.filepath}),!s.parser)throw new pci(`No parser could be inferred for file "${s.filepath}".`)}else throw new pci("No parser and no file path given, couldn't infer a parser.");let a=nli({plugins:e.plugins,showDeprecated:!0}).options,o={...Tci,...Object.fromEntries(a.filter(v=>v.default!==void 0).map(v=>[v.name,v.default]))},g=uli(s.plugins,s.parser),p=await Ali(g,s.parser);s.astFormat=p.astFormat,s.locEnd=p.locEnd,s.locStart=p.locStart;let f=(r=g.printers)!=null&&r[p.astFormat]?g:eha(s.plugins,p.astFormat),m=await tha(f,p.astFormat);s.printer=m;let y=f.defaultOptions?Object.fromEntries(Object.entries(f.defaultOptions).filter(([,v])=>v!==void 0)):{},B={...o,...y};for(let[v,G]of Object.entries(B))(s[v]===null||s[v]===void 0)&&(s[v]=G);return s.parser==="json"&&(s.trailingComma="none"),qma(s,a,{passThrough:Object.keys(Tci),...t})}var ZSe=rha,nha=mmt(jIa(),1);async function iha(e,t){let r=await gli(t),s=r.preprocess?r.preprocess(e,t):e;t.originalText=s;let a;try{a=await r.parse(s,t,t)}catch(o){sha(o,e)}return{text:s,ast:a}}function sha(e,t){let{loc:r}=e;if(r){let s=(0,nha.codeFrameColumns)(t,r,{highlightCode:!0});throw e.message+=` -`+s,e.codeFrame=s,e}throw e}var WYe=iha;async function oha(e,t,r,s,a){let{embeddedLanguageFormatting:o,printer:{embed:g,hasPrettierIgnore:p=()=>!1,getVisitorKeys:f}}=r;if(!g||o!=="auto")return;if(g.length>2)throw new Error("printer.embed has too many parameters. The API changed in Prettier v3. Please update your plugin. See https://prettier.io/docs/plugins#optional-embed");let m=vmt(g.getVisitorKeys??f),y=[];G();let B=e.stack;for(let{print:T,node:O,pathStack:X}of y)try{e.stack=X;let U=await T(v,t,e,r);U&&a.set(O,U)}catch(U){if(globalThis.PRETTIER_DEBUG)throw U}e.stack=B;function v(T,O){return aha(T,O,r,s)}function G(){let{node:T}=e;if(T===null||typeof T!="object"||p(e))return;for(let X of m(T))Array.isArray(T[X])?e.each(G,X):e.call(G,X);let O=g(e,r);if(O){if(typeof O=="function"){y.push({print:O,node:T,pathStack:[...e.stack]});return}a.set(T,O)}}}async function aha(e,t,r,s){let a=await ZSe({...r,...t,parentParser:r.parser,originalText:e},{passThrough:!0}),{ast:o}=await WYe(e,a),g=await s(o,a);return Pci(g)}function cha(e,t){let{originalText:r,[Symbol.for("comments")]:s,locStart:a,locEnd:o,[Symbol.for("printedComments")]:g}=t,{node:p}=e,f=a(p),m=o(p);for(let y of s)a(y)>=f&&o(y)<=m&&g.add(y);return r.slice(f,m)}var lha=cha;async function Smt(e,t){({ast:e}=await dli(e,t));let r=new Map,s=new XCa(e),a=fma(t),o=new Map;await oha(s,p,t,Smt,o);let g=await Nci(s,t,p,void 0,o);if(dma(t),t.nodeAfterCursor&&!t.nodeBeforeCursor)return[wfe,g];if(t.nodeBeforeCursor&&!t.nodeAfterCursor)return[g,wfe];return g;function p(m,y){return m===void 0||m===s?f(y):Array.isArray(m)?s.call(()=>f(y),...m):s.call(()=>f(y),m)}function f(m){a(s);let y=s.node;if(y==null)return"";let B=y&&typeof y=="object"&&m===void 0;if(B&&r.has(y))return r.get(y);let v=Nci(s,t,p,m,o);return B&&r.set(y,v),v}}function Nci(e,t,r,s,a){var o;let{node:g}=e,{printer:p}=t,f;switch((o=p.hasPrettierIgnore)!=null&&o.call(p,e)?f=lha(e,t):a.has(g)?f=a.get(g):f=p.print(e,t,r,s),g){case t.cursorNode:f=Amt(f,m=>[wfe,m,wfe]);break;case t.nodeBeforeCursor:f=Amt(f,m=>[m,wfe]);break;case t.nodeAfterCursor:f=Amt(f,m=>[wfe,m]);break}return p.printComment&&(!p.willPrintOwnComments||!p.willPrintOwnComments(e,t))&&(f=Ama(e,f,t)),f}async function dli(e,t){let r=e.comments??[];t[Symbol.for("comments")]=r,t[Symbol.for("tokens")]=e.tokens??[],t[Symbol.for("printedComments")]=new Set,sma(e,t);let{printer:{preprocess:s}}=t;return e=s?await s(e,t):e,{ast:e,comments:r}}function uha(e,t){let{cursorOffset:r,locStart:s,locEnd:a}=t,o=vmt(t.printer.getVisitorKeys),g=G=>s(G)<=r&&a(G)>=r,p=e,f=[e];for(let G of KCa(e,{getVisitorKeys:o,filter:g}))f.push(G),p=G;if(jCa(p,{getVisitorKeys:o}))return{cursorNode:p};let m,y,B=-1,v=Number.POSITIVE_INFINITY;for(;f.length>0&&(m===void 0||y===void 0);){p=f.pop();let G=m!==void 0,T=y!==void 0;for(let O of Bmt(p,{getVisitorKeys:o})){if(!G){let X=a(O);X<=r&&X>B&&(m=O,B=X)}if(!T){let X=s(O);X>=r&&Xg(v,f)).filter(Boolean);let m={},y=new Set(a(p));for(let v in p)!Object.prototype.hasOwnProperty.call(p,v)||o.has(v)||(y.has(v)?m[v]=g(p[v],p):m[v]=p[v]);let B=r(p,m,f);if(B!==null)return B??m}}var dha=Aha,pha=(e,t,r)=>{if(!(e&&t==null)){if(t.findLastIndex)return t.findLastIndex(r);for(let s=t.length-1;s>=0;s--){let a=t[s];if(r(a,s,t))return s}return-1}},fha=pha,Iha=({parser:e})=>e==="json"||e==="json5"||e==="jsonc"||e==="json-stringify";function Cha(e,t){let r=[e.node,...e.parentNodes],s=new Set([t.node,...t.parentNodes]);return r.find(a=>pli.has(a.type)&&s.has(a))}function Rci(e){let t=fha(!1,e,r=>r.type!=="Program"&&r.type!=="File");return t===-1?e:e.slice(0,t+1)}function mha(e,t,{locStart:r,locEnd:s}){let a=e.node,o=t.node;if(a===o)return{startNode:a,endNode:o};let g=r(e.node);for(let f of Rci(t.parentNodes))if(r(f)>=g)o=f;else break;let p=s(t.node);for(let f of Rci(e.parentNodes)){if(s(f)<=p)a=f;else break;if(a===o)break}return{startNode:a,endNode:o}}function ppr(e,t,r,s,a=[],o){let{locStart:g,locEnd:p}=r,f=g(e),m=p(e);if(!(t>m||ts);let p=e.slice(s,a).search(/\S/u),f=p===-1;if(!f)for(s+=p;a>s&&!/\S/u.test(e[a-1]);--a);let m=ppr(r,s,t,(G,T)=>Dci(t,G,T),[],"rangeStart"),y=f?m:ppr(r,a,t,G=>Dci(t,G),[],"rangeEnd");if(!m||!y)return{rangeStart:0,rangeEnd:0};let B,v;if(Iha(t)){let G=Cha(m,y);B=G,v=G}else({startNode:B,endNode:v}=mha(m,y,t));return{rangeStart:Math.min(o(B),o(v)),rangeEnd:Math.max(g(B),g(v))}}var fli="\uFEFF",xci=Symbol("cursor");async function Ili(e,t,r=0){if(!e||e.trim().length===0)return{formatted:"",cursorOffset:-1,comments:[]};let{ast:s,text:a}=await WYe(e,t);t.cursorOffset>=0&&(t={...t,...gha(s,t)});let o=await Smt(s,t,r);r>0&&(o=Jci([Tfe,o],r,t.tabWidth));let g=Emt(o,t);if(r>0){let f=g.formatted.trim();g.cursorNodeStart!==void 0&&(g.cursorNodeStart-=g.formatted.indexOf(f),g.cursorNodeStart<0&&(g.cursorNodeStart=0,g.cursorNodeText=g.cursorNodeText.trimStart()),g.cursorNodeStart+g.cursorNodeText.length>f.length&&(g.cursorNodeText=g.cursorNodeText.trimEnd())),g.formatted=f+hpr(t.endOfLine)}let p=t[Symbol.for("comments")];if(t.cursorOffset>=0){let f,m,y,B;if((t.cursorNode||t.nodeBeforeCursor||t.nodeAfterCursor)&&g.cursorNodeText)if(y=g.cursorNodeStart,B=g.cursorNodeText,t.cursorNode)f=t.locStart(t.cursorNode),m=a.slice(f,t.locEnd(t.cursorNode));else{if(!t.nodeBeforeCursor&&!t.nodeAfterCursor)throw new Error("Cursor location must contain at least one of cursorNode, nodeBeforeCursor, nodeAfterCursor");f=t.nodeBeforeCursor?t.locEnd(t.nodeBeforeCursor):0;let U=t.nodeAfterCursor?t.locStart(t.nodeAfterCursor):a.length;m=a.slice(f,U)}else f=0,m=a,y=0,B=g.formatted;let v=t.cursorOffset-f;if(m===B)return{formatted:g.formatted,cursorOffset:y+v,comments:p};let G=m.split("");G.splice(v,0,xci);let T=B.split(""),O=iCa(G,T),X=y;for(let U of O)if(U.removed){if(U.value.includes(xci))break}else X+=U.count;return{formatted:g.formatted,cursorOffset:X,comments:p}}return{formatted:g.formatted,cursorOffset:-1,comments:p}}async function bha(e,t){let{ast:r,text:s}=await WYe(e,t),{rangeStart:a,rangeEnd:o}=yha(s,t,r),g=s.slice(a,o),p=Math.min(a,s.lastIndexOf(` -`,a)+1),f=s.slice(p,a).match(/^\s*/u)[0],m=vpr(f,t.tabWidth),y=await Ili(g,{...t,rangeStart:0,rangeEnd:Number.POSITIVE_INFINITY,cursorOffset:t.cursorOffset>a&&t.cursorOffset<=o?t.cursorOffset-a:-1,endOfLine:"lf"},m),B=y.formatted.trimEnd(),{cursorOffset:v}=t;v>o?v+=B.length-g.length:y.cursorOffset>=0&&(v=y.cursorOffset+a);let G=s.slice(0,a)+B+s.slice(o);if(t.endOfLine!=="lf"){let T=hpr(t.endOfLine);v>=0&&T===`\r -`&&(v+=Vci(G.slice(0,v),` -`)),G=hmt(!1,G,` -`,T)}return{formatted:G,cursorOffset:v,comments:y.comments}}function rpr(e,t,r){return typeof t!="number"||Number.isNaN(t)||t<0||t>e.length?r:t}function kci(e,t){let{cursorOffset:r,rangeStart:s,rangeEnd:a}=t;return r=rpr(e,r,-1),s=rpr(e,s,0),a=rpr(e,a,e.length),{...t,cursorOffset:r,rangeStart:s,rangeEnd:a}}function Cli(e,t){let{cursorOffset:r,rangeStart:s,rangeEnd:a,endOfLine:o}=kci(e,t),g=e.charAt(0)===fli;if(g&&(e=e.slice(1),r--,s--,a--),o==="auto"&&(o=sCa(e)),e.includes("\r")){let p=f=>Vci(e.slice(0,Math.max(f,0)),`\r -`);r-=p(r),s-=p(s),a-=p(a),e=oCa(e)}return{hasBOM:g,text:e,options:kci(e,{...t,cursorOffset:r,rangeStart:s,rangeEnd:a,endOfLine:o})}}async function Gci(e,t){let r=await gli(t);return!r.hasPragma||r.hasPragma(e)}async function mli(e,t){let{hasBOM:r,text:s,options:a}=Cli(e,await ZSe(t));if(a.rangeStart>=a.rangeEnd&&s!==""||a.requirePragma&&!await Gci(s,a))return{formatted:e,cursorOffset:t.cursorOffset,comments:[]};let o;return a.rangeStart>0||a.rangeEnd=0&&o.cursorOffset++),o}async function Eha(e,t,r){let{text:s,options:a}=Cli(e,await ZSe(t)),o=await WYe(s,a);return r&&(r.preprocessForPrint&&(o.ast=await dli(o.ast,a)),r.massage&&(o.ast=dha(o.ast,a))),o}async function Bha(e,t){t=await ZSe(t);let r=await Smt(e,t);return Emt(r,t)}async function vha(e,t){let r=FCa(e),{formatted:s}=await mli(r,{...t,parser:"__js_expression"});return s}async function Sha(e,t){t=await ZSe(t);let{ast:r}=await WYe(e,t);return Smt(r,t)}async function wha(e,t){return Emt(e,await ZSe(t))}var hli={};Ipr(hli,{builders:()=>Tha,printer:()=>Nha,utils:()=>Rha});var Tha={join:Xci,line:Yci,softline:kCa,hardline:Tfe,literalline:Hci,group:Mci,conditionalGroup:wCa,fill:TCa,lineSuffix:apr,lineSuffixBoundary:DCa,cursor:wfe,breakParent:bmt,ifBreak:NCa,trim:xCa,indent:Cmt,indentIfBreak:RCa,align:FSe,addAlignmentToDoc:Jci,markAsRoot:vCa,dedentToRoot:BCa,dedent:SCa,hardlineWithoutBreakParent:Epr,literallineWithoutBreakParent:Qci,label:GCa,concat:e=>e},Nha={printDocToString:Emt},Rha={willBreak:pCa,traverseDoc:_pr,findInDoc:ypr,mapDoc:ymt,removeLines:CCa,stripTrailingHardline:Pci,replaceEndOfLine:_Ca,canBreak:bCa},Dha="3.5.3",_li={};Ipr(_li,{addDanglingComment:()=>vfe,addLeadingComment:()=>RSe,addTrailingComment:()=>DSe,getAlignmentSize:()=>vpr,getIndentSize:()=>Lha,getMaxContinuousCount:()=>Pha,getNextNonSpaceNonCommentCharacter:()=>Mha,getNextNonSpaceNonCommentCharacterIndex:()=>qha,getPreferredQuote:()=>Yha,getStringWidth:()=>Bpr,hasNewline:()=>Wse,hasNewlineInRange:()=>Xha,hasSpaces:()=>Uha,isNextLineEmpty:()=>r_a,isNextLineEmptyAfterIndex:()=>xpr,isPreviousLineEmpty:()=>e_a,makeString:()=>jha,skip:()=>VYe,skipEverythingButNewLine:()=>zci,skipInlineComment:()=>Npr,skipNewline:()=>Nfe,skipSpaces:()=>Pse,skipToLineEnd:()=>jci,skipTrailingComment:()=>Rpr,skipWhitespace:()=>zCa});function xha(e,t){if(t===!1)return!1;if(e.charAt(t)==="/"&&e.charAt(t+1)==="*"){for(let r=t+2;rMath.max(s,a.length/t.length),0)}var Pha=Wha;function Oha(e,t){let r=Dpr(e,t);return r===!1?"":e.charAt(r)}var Mha=Oha,gmt="'",Fci='"';function Qha(e,t){let r=t===!0||t===gmt?gmt:Fci,s=r===gmt?Fci:gmt,a=0,o=0;for(let g of e)g===r?a++:g===s&&o++;return a>o?s:r}var Yha=Qha;function Hha(e,t,r){for(let s=t;sg===s?g:p===t?"\\"+p:p||(r&&/^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/u.test(g)?g:"\\"+g));return t+a+t}var jha=Kha;function zha(e,t,r){return Dpr(e,r(t))}function qha(e,t){return arguments.length===2||typeof t=="number"?Dpr(e,t):zha(...arguments)}function $ha(e,t,r){return Tpr(e,r(t))}function e_a(e,t){return arguments.length===2||typeof t=="number"?Tpr(e,t):$ha(...arguments)}function t_a(e,t,r){return xpr(e,r(t))}function r_a(e,t){return arguments.length===2||typeof t=="number"?xpr(e,t):t_a(...arguments)}function Sfe(e,t=1){return async(...r)=>{let s=r[t]??{},a=s.plugins??[];return r[t]={...s,plugins:Array.isArray(a)?a:Object.values(a)},e(...r)}}var yli=Sfe(mli);async function LSe(e,t){let{formatted:r}=await yli(e,{...t,cursorOffset:-1});return r}async function n_a(e,t){return await LSe(e,t)===e}var i_a=Sfe(nli,0),s_a={parse:Sfe(Eha),formatAST:Sfe(Bha),formatDoc:Sfe(vha),printToDoc:Sfe(Sha),printDocToString:Sfe(wha)};var Vui=xt(Oct(),1);var YYe=xt(Eli(),1);var o_a=/^(?:( )+|\t+)/,PYe="space",vli="tab";function Bli(e,t){let r=new Map,s=0,a,o;for(let g of e.split(/\n/g)){if(!g)continue;let p,f,m,y,B,v=g.match(o_a);if(v===null)s=0,a="";else{if(p=v[0].length,f=v[1]?PYe:vli,t&&f===PYe&&p===1)continue;f!==a&&(s=0),a=f,m=1,y=0;let G=p-s;if(s=p,G===0)m=0,y=1;else{let T=G>0?G:-G;o=a_a(f,T)}B=r.get(o),B=B===void 0?[1,0]:[B[0]+m,B[1]+y],r.set(o,B)}}return r}function a_a(e,t){return(e===PYe?"s":"t")+String(t)}function c_a(e){let r=e[0]==="s"?PYe:vli,s=Number(e.slice(1));return{type:r,amount:s}}function l_a(e){let t,r=0,s=0;for(let[a,[o,g]]of e)(o>r||o===r&&g>s)&&(r=o,s=g,t=a);return t}function u_a(e,t){return(e===PYe?" ":" ").repeat(t)}function kpr(e){if(typeof e!="string")throw new TypeError("Expected a string");let t=Bli(e,!0);t.size===0&&(t=Bli(e,!1));let r=l_a(t),s,a=0,o="";return r!==void 0&&({type:s,amount:a}=c_a(r),o=u_a(s,a)),{amount:a,type:s,indent:o}}function g_a(e){if(typeof e!="string")throw new TypeError("Expected a string");let t=e.match(/(?:\r?\n)/g)||[];if(t.length===0)return;let r=t.filter(a=>a===`\r +in order for it to be formatted.`,cliCategory:"Other"},tabWidth:{type:"int",category:"Global",default:2,description:"Number of spaces per indentation level.",range:{start:0,end:1/0,step:1}},useTabs:{category:"Global",type:"boolean",default:!1,description:"Indent with tabs instead of spaces."},embeddedLanguageFormatting:{category:"Global",type:"choice",default:"auto",description:"Control how Prettier formats quoted code embedded in the file.",choices:[{value:"auto",description:"Format embedded code if Prettier can automatically identify it."},{value:"off",description:"Never automatically format embedded code."}]}};function gli({plugins:e=[],showDeprecated:t=!1}={}){let r=e.flatMap(a=>a.languages??[]),s=[];for(let a of Gma(Object.assign({},...e.map(({options:o})=>o),xma)))!t&&a.deprecated||(Array.isArray(a.choices)&&(t||(a.choices=a.choices.filter(o=>!o.deprecated)),a.name==="parser"&&(a.choices=[...a.choices,...kma(a.choices,r,e)])),a.pluginDefaults=Object.fromEntries(e.filter(o=>{var g;return((g=o.defaultOptions)==null?void 0:g[a.name])!==void 0}).map(o=>[o.name,o.defaultOptions[a.name]])),s.push(a));return{languages:r,options:s}}function*kma(e,t,r){let s=new Set(e.map(a=>a.value));for(let a of t)if(a.parsers){for(let o of a.parsers)if(!s.has(o)){s.add(o);let g=r.find(f=>f.parsers&&Object.prototype.hasOwnProperty.call(f.parsers,o)),p=a.name;g!=null&&g.name&&(p+=` (plugin: ${g.name})`),yield{value:o,description:p}}}}function Gma(e){let t=[];for(let[r,s]of Object.entries(e)){let a={name:r,...s};Array.isArray(a.default)&&(a.default=yR(!1,a.default,-1).value),t.push(a)}return t}var Fma=e=>String(e).split(/[/\\]/u).pop();function Eci(e,t){if(!t)return;let r=Fma(t).toLowerCase();return e.find(({filenames:s})=>s?.some(a=>a.toLowerCase()===r))??e.find(({extensions:s})=>s?.some(a=>r.endsWith(a)))}function Zma(e,t){if(t)return e.find(({name:r})=>r.toLowerCase()===t)??e.find(({aliases:r})=>r?.includes(t))??e.find(({extensions:r})=>r?.includes(`.${t}`))}function Lma(e,t){let r=e.plugins.flatMap(a=>a.languages??[]),s=Zma(r,t.language)??Eci(r,t.physicalFile)??Eci(r,t.file)??(t.physicalFile,void 0);return s?.parsers[0]}var Vma=Lma,FSe={key:e=>/^[$_a-zA-Z][$_a-zA-Z0-9]*$/.test(e)?e:JSON.stringify(e),value(e){if(e===null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return`[${e.map(r=>FSe.value(r)).join(", ")}]`;let t=Object.keys(e);return t.length===0?"{}":`{ ${t.map(r=>`${FSe.key(r)}: ${FSe.value(e[r])}`).join(", ")} }`},pair:({key:e,value:t})=>FSe.value({[e]:t})},Bci=ymt(bpr(),1),Wma=(e,t,{descriptor:r})=>{let s=[`${Bci.default.yellow(typeof e=="string"?r.key(e):r.pair(e))} is deprecated`];return t&&s.push(`we now treat it as ${Bci.default.blue(typeof t=="string"?r.key(t):r.pair(t))}`),s.join("; ")+"."},ZSe=ymt(bpr(),1),Ali=Symbol.for("vnopts.VALUE_NOT_EXIST"),Cmt=Symbol.for("vnopts.VALUE_UNCHANGED"),vci=" ".repeat(2),Pma=(e,t,r)=>{let{text:s,list:a}=r.normalizeExpectedResult(r.schemas[e].expected(r)),o=[];return s&&o.push(Sci(e,t,s,r.descriptor)),a&&o.push([Sci(e,t,a.title,r.descriptor)].concat(a.values.map(g=>dli(g,r.loggerPrintWidth))).join(` +`)),pli(o,r.loggerPrintWidth)};function Sci(e,t,r,s){return[`Invalid ${ZSe.default.red(s.key(e))} value.`,`Expected ${ZSe.default.blue(r)},`,`but received ${t===Ali?ZSe.default.gray("nothing"):ZSe.default.red(s.value(t))}.`].join(" ")}function dli({text:e,list:t},r){let s=[];return e&&s.push(`- ${ZSe.default.blue(e)}`),t&&s.push([`- ${ZSe.default.blue(t.title)}:`].concat(t.values.map(a=>dli(a,r-vci.length).replace(/^|\n/g,`$&${vci}`))).join(` +`)),pli(s,r)}function pli(e,t){if(e.length===1)return e[0];let[r,s]=e,[a,o]=e.map(g=>g.split(` +`,1)[0].length);return a>t&&a>o?s:r}var wci=ymt(bpr(),1),spr=[],Tci=[];function Oma(e,t){if(e===t)return 0;let r=e;e.length>t.length&&(e=t,t=r);let s=e.length,a=t.length;for(;s>0&&e.charCodeAt(~-s)===t.charCodeAt(~-a);)s--,a--;let o=0;for(;op?m>p?p+1:m:m>f?f+1:m;return p}var fli=(e,t,{descriptor:r,logger:s,schemas:a})=>{let o=[`Ignored unknown option ${wci.default.yellow(r.pair({key:e,value:t}))}.`],g=Object.keys(a).sort().find(p=>Oma(e,p)<3);g&&o.push(`Did you mean ${wci.default.blue(r.key(g))}?`),s.warn(o.join(" "))},Qma=["default","expected","validate","deprecated","forward","redirect","overlap","preprocess","postprocess"];function Mma(e,t){let r=new e(t),s=Object.create(r);for(let a of Qma)a in t&&(s[a]=Hma(t[a],r,Xse.prototype[a].length));return s}var Xse=class{static create(e){return Mma(this,e)}constructor(e){this.name=e.name}default(e){}expected(e){return"nothing"}validate(e,t){return!1}deprecated(e,t){return!1}forward(e,t){}redirect(e,t){}overlap(e,t,r){return e}preprocess(e,t){return e}postprocess(e,t){return Cmt}};function Hma(e,t,r){return typeof e=="function"?(...s)=>e(...s.slice(0,r-1),t,...s.slice(r-1)):()=>e}var Yma=class extends Xse{constructor(e){super(e),this._sourceName=e.sourceName}expected(e){return e.schemas[this._sourceName].expected(e)}validate(e,t){return t.schemas[this._sourceName].validate(e,t)}redirect(e,t){return this._sourceName}},Xma=class extends Xse{expected(){return"anything"}validate(){return!0}},Jma=class extends Xse{constructor({valueSchema:e,name:t=e.name,...r}){super({...r,name:t}),this._valueSchema=e}expected(e){let{text:t,list:r}=e.normalizeExpectedResult(this._valueSchema.expected(e));return{text:t&&`an array of ${t}`,list:r&&{title:"an array of the following values",values:[{list:r}]}}}validate(e,t){if(!Array.isArray(e))return!1;let r=[];for(let s of e){let a=t.normalizeValidateResult(this._valueSchema.validate(s,t),s);a!==!0&&r.push(a.value)}return r.length===0?!0:{value:r}}deprecated(e,t){let r=[];for(let s of e){let a=t.normalizeDeprecatedResult(this._valueSchema.deprecated(s,t),s);a!==!1&&r.push(...a.map(({value:o})=>({value:[o]})))}return r}forward(e,t){let r=[];for(let s of e){let a=t.normalizeForwardResult(this._valueSchema.forward(s,t),s);r.push(...a.map(Nci))}return r}redirect(e,t){let r=[],s=[];for(let a of e){let o=t.normalizeRedirectResult(this._valueSchema.redirect(a,t),a);"remain"in o&&r.push(o.remain),s.push(...o.redirect.map(Nci))}return r.length===0?{redirect:s}:{redirect:s,remain:r}}overlap(e,t){return e.concat(t)}};function Nci({from:e,to:t}){return{from:[e],to:t}}var Uma=class extends Xse{expected(){return"true or false"}validate(e){return typeof e=="boolean"}};function Kma(e,t){let r=Object.create(null);for(let s of e){let a=s[t];if(r[a])throw new Error(`Duplicate ${t} ${JSON.stringify(a)}`);r[a]=s}return r}function jma(e,t){let r=new Map;for(let s of e){let a=s[t];if(r.has(a))throw new Error(`Duplicate ${t} ${JSON.stringify(a)}`);r.set(a,s)}return r}function zma(){let e=Object.create(null);return t=>{let r=JSON.stringify(t);return e[r]?!0:(e[r]=!0,!1)}}function qma(e,t){let r=[],s=[];for(let a of e)t(a)?r.push(a):s.push(a);return[r,s]}function $ma(e){return e===Math.floor(e)}function eha(e,t){if(e===t)return 0;let r=typeof e,s=typeof t,a=["undefined","object","boolean","number","string"];return r!==s?a.indexOf(r)-a.indexOf(s):r!=="string"?Number(e)-Number(t):e.localeCompare(t)}function tha(e){return(...t)=>{let r=e(...t);return typeof r=="string"?new Error(r):r}}function Rci(e){return e===void 0?{}:e}function Ili(e){if(typeof e=="string")return{text:e};let{text:t,list:r}=e;return rha((t||r)!==void 0,"Unexpected `expected` result, there should be at least one field."),r?{text:t,list:{title:r.title,values:r.values.map(Ili)}}:{text:t}}function Dci(e,t){return e===!0?!0:e===!1?{value:t}:e}function xci(e,t,r=!1){return e===!1?!1:e===!0?r?!0:[{value:t}]:"value"in e?[e]:e.length===0?!1:e}function kci(e,t){return typeof e=="string"||"key"in e?{from:t,to:e}:"from"in e?{from:e.from,to:e.to}:{from:t,to:e.to}}function mpr(e,t){return e===void 0?[]:Array.isArray(e)?e.map(r=>kci(r,t)):[kci(e,t)]}function Gci(e,t){let r=mpr(typeof e=="object"&&"redirect"in e?e.redirect:e,t);return r.length===0?{remain:t,redirect:r}:typeof e=="object"&&"remain"in e?{remain:e.remain,redirect:r}:{redirect:r}}function rha(e,t){if(!e)throw new Error(t)}var nha=class extends Xse{constructor(e){super(e),this._choices=jma(e.choices.map(t=>t&&typeof t=="object"?t:{value:t}),"value")}expected({descriptor:e}){let t=Array.from(this._choices.keys()).map(a=>this._choices.get(a)).filter(({hidden:a})=>!a).map(a=>a.value).sort(eha).map(e.value),r=t.slice(0,-2),s=t.slice(-2);return{text:r.concat(s.join(" or ")).join(", "),list:{title:"one of the following values",values:t}}}validate(e){return this._choices.has(e)}deprecated(e){let t=this._choices.get(e);return t&&t.deprecated?{value:e}:!1}forward(e){let t=this._choices.get(e);return t?t.forward:void 0}redirect(e){let t=this._choices.get(e);return t?t.redirect:void 0}},iha=class extends Xse{expected(){return"a number"}validate(e,t){return typeof e=="number"}},sha=class extends iha{expected(){return"an integer"}validate(e,t){return t.normalizeValidateResult(super.validate(e,t),e)===!0&&$ma(e)}},Fci=class extends Xse{expected(){return"a string"}validate(e){return typeof e=="string"}},oha=FSe,aha=fli,cha=Pma,lha=Wma,uha=class{constructor(e,t){let{logger:r=console,loggerPrintWidth:s=80,descriptor:a=oha,unknown:o=aha,invalid:g=cha,deprecated:p=lha,missing:f=()=>!1,required:m=()=>!1,preprocess:y=v=>v,postprocess:B=()=>Cmt}=t||{};this._utils={descriptor:a,logger:r||{warn:()=>{}},loggerPrintWidth:s,schemas:Kma(e,"name"),normalizeDefaultResult:Rci,normalizeExpectedResult:Ili,normalizeDeprecatedResult:xci,normalizeForwardResult:mpr,normalizeRedirectResult:Gci,normalizeValidateResult:Dci},this._unknownHandler=o,this._invalidHandler=tha(g),this._deprecatedHandler=p,this._identifyMissing=(v,k)=>!(v in k)||f(v,k),this._identifyRequired=m,this._preprocess=y,this._postprocess=B,this.cleanHistory()}cleanHistory(){this._hasDeprecationWarned=zma()}normalize(e){let t={},r=[this._preprocess(e,this._utils)],s=()=>{for(;r.length!==0;){let a=r.shift(),o=this._applyNormalization(a,t);r.push(...o)}};s();for(let a of Object.keys(this._utils.schemas)){let o=this._utils.schemas[a];if(!(a in t)){let g=Rci(o.default(this._utils));"value"in g&&r.push({[a]:g.value})}}s();for(let a of Object.keys(this._utils.schemas)){if(!(a in t))continue;let o=this._utils.schemas[a],g=t[a],p=o.postprocess(g,this._utils);p!==Cmt&&(this._applyValidation(p,a,o),t[a]=p)}return this._applyPostprocess(t),this._applyRequiredCheck(t),t}_applyNormalization(e,t){let r=[],{knownKeys:s,unknownKeys:a}=this._partitionOptionKeys(e);for(let o of s){let g=this._utils.schemas[o],p=g.preprocess(e[o],this._utils);this._applyValidation(p,o,g);let f=({from:B,to:v})=>{r.push(typeof v=="string"?{[v]:B}:{[v.key]:v.value})},m=({value:B,redirectTo:v})=>{let k=xci(g.deprecated(B,this._utils),p,!0);if(k!==!1)if(k===!0)this._hasDeprecationWarned(o)||this._utils.logger.warn(this._deprecatedHandler(o,v,this._utils));else for(let{value:T}of k){let O={key:o,value:T};if(!this._hasDeprecationWarned(O)){let X=typeof v=="string"?{key:v,value:T}:v;this._utils.logger.warn(this._deprecatedHandler(O,X,this._utils))}}};mpr(g.forward(p,this._utils),p).forEach(f);let y=Gci(g.redirect(p,this._utils),p);if(y.redirect.forEach(f),"remain"in y){let B=y.remain;t[o]=o in t?g.overlap(t[o],B,this._utils):B,m({value:B})}for(let{from:B,to:v}of y.redirect)m({value:B,redirectTo:v})}for(let o of a){let g=e[o];this._applyUnknownHandler(o,g,t,(p,f)=>{r.push({[p]:f})})}return r}_applyRequiredCheck(e){for(let t of Object.keys(this._utils.schemas))if(this._identifyMissing(t,e)&&this._identifyRequired(t))throw this._invalidHandler(t,Ali,this._utils)}_partitionOptionKeys(e){let[t,r]=qma(Object.keys(e).filter(s=>!this._identifyMissing(s,e)),s=>s in this._utils.schemas);return{knownKeys:t,unknownKeys:r}}_applyValidation(e,t,r){let s=Dci(r.validate(e,this._utils),e);if(s!==!0)throw this._invalidHandler(t,s.value,this._utils)}_applyUnknownHandler(e,t,r,s){let a=this._unknownHandler(e,t,this._utils);if(a)for(let o of Object.keys(a)){if(this._identifyMissing(o,a))continue;let g=a[o];o in this._utils.schemas?s(o,g):r[o]=g}}_applyPostprocess(e){let t=this._postprocess(e,this._utils);if(t!==Cmt){if(t.delete)for(let r of t.delete)delete e[r];if(t.override){let{knownKeys:r,unknownKeys:s}=this._partitionOptionKeys(t.override);for(let a of r){let o=t.override[a];this._applyValidation(o,a,this._utils.schemas[a]),e[a]=o}for(let a of s){let o=t.override[a];this._applyUnknownHandler(a,o,e,(g,p)=>{let f=this._utils.schemas[g];this._applyValidation(p,g,f),e[g]=p})}}}}},opr;function gha(e,t,{logger:r=!1,isCLI:s=!1,passThrough:a=!1,FlagSchema:o,descriptor:g}={}){if(s){if(!o)throw new Error("'FlagSchema' option is required.");if(!g)throw new Error("'descriptor' option is required.")}else g=FSe;let p=a?Array.isArray(a)?(v,k)=>a.includes(v)?{[v]:k}:void 0:(v,k)=>({[v]:k}):(v,k,T)=>{let{_:O,...X}=T.schemas;return fli(v,k,{...T,schemas:X})},f=Aha(t,{isCLI:s,FlagSchema:o}),m=new uha(f,{logger:r,unknown:p,descriptor:g}),y=r!==!1;y&&opr&&(m._hasDeprecationWarned=opr);let B=m.normalize(e);return y&&(opr=m._hasDeprecationWarned),B}function Aha(e,{isCLI:t,FlagSchema:r}){let s=[];t&&s.push(Xma.create({name:"_"}));for(let a of e)s.push(dha(a,{isCLI:t,optionInfos:e,FlagSchema:r})),a.alias&&t&&s.push(Yma.create({name:a.alias,sourceName:a.name}));return s}function dha(e,{isCLI:t,optionInfos:r,FlagSchema:s}){let{name:a}=e,o={name:a},g,p={};switch(e.type){case"int":g=sha,t&&(o.preprocess=Number);break;case"string":g=Fci;break;case"choice":g=nha,o.choices=e.choices.map(f=>f!=null&&f.redirect?{...f,redirect:{to:{key:e.name,value:f.redirect}}}:f);break;case"boolean":g=Uma;break;case"flag":g=s,o.flags=r.flatMap(f=>[f.alias,f.description&&f.name,f.oppositeDescription&&`no-${f.name}`].filter(Boolean));break;case"path":g=Fci;break;default:throw new Error(`Unexpected type ${e.type}`)}if(e.exception?o.validate=(f,m,y)=>e.exception(f)||m.validate(f,y):o.validate=(f,m,y)=>f===void 0||m.validate(f,y),e.redirect&&(p.redirect=f=>f?{to:typeof e.redirect=="string"?e.redirect:{key:e.redirect.option,value:e.redirect.value}}:void 0),e.deprecated&&(p.deprecated=!0),t&&!e.array){let f=o.preprocess||(m=>m);o.preprocess=(m,y,B)=>y.preprocess(f(Array.isArray(m)?yR(!1,m,-1):m),B)}return e.array?Jma.create({...t?{preprocess:f=>Array.isArray(f)?f:[f]}:{},...p,valueSchema:g.create(o)}):g.create({...o,...p})}var pha=gha,fha=(e,t,r)=>{if(!(e&&t==null)){if(t.findLast)return t.findLast(r);for(let s=t.length-1;s>=0;s--){let a=t[s];if(r(a,s,t))return a}}},Cli=fha;function mli(e,t){if(!t)throw new Error("parserName is required.");let r=Cli(!1,e,a=>a.parsers&&Object.prototype.hasOwnProperty.call(a.parsers,t));if(r)return r;let s=`Couldn't resolve parser "${t}".`;throw s+=" Plugins must be explicitly added to the standalone bundle.",new uli(s)}function Iha(e,t){if(!t)throw new Error("astFormat is required.");let r=Cli(!1,e,a=>a.printers&&Object.prototype.hasOwnProperty.call(a.printers,t));if(r)return r;let s=`Couldn't find plugin for AST format "${t}".`;throw s+=" Plugins must be explicitly added to the standalone bundle.",new uli(s)}function hli({plugins:e,parser:t}){let r=mli(e,t);return _li(r,t)}function _li(e,t){let r=e.parsers[t];return typeof r=="function"?r():r}function Cha(e,t){let r=e.printers[t];return typeof r=="function"?r():r}var Zci={astFormat:"estree",printer:{},originalText:void 0,locStart:null,locEnd:null};async function mha(e,t={}){var r;let s={...e};if(!s.parser)if(s.filepath){if(s.parser=Vma(s,{physicalFile:s.filepath}),!s.parser)throw new bci(`No parser could be inferred for file "${s.filepath}".`)}else throw new bci("No parser and no file path given, couldn't infer a parser.");let a=gli({plugins:e.plugins,showDeprecated:!0}).options,o={...Zci,...Object.fromEntries(a.filter(v=>v.default!==void 0).map(v=>[v.name,v.default]))},g=mli(s.plugins,s.parser),p=await _li(g,s.parser);s.astFormat=p.astFormat,s.locEnd=p.locEnd,s.locStart=p.locStart;let f=(r=g.printers)!=null&&r[p.astFormat]?g:Iha(s.plugins,p.astFormat),m=await Cha(f,p.astFormat);s.printer=m;let y=f.defaultOptions?Object.fromEntries(Object.entries(f.defaultOptions).filter(([,v])=>v!==void 0)):{},B={...o,...y};for(let[v,k]of Object.entries(B))(s[v]===null||s[v]===void 0)&&(s[v]=k);return s.parser==="json"&&(s.trailingComma="none"),pha(s,a,{passThrough:Object.keys(Zci),...t})}var WSe=mha,hha=ymt(ACa(),1);async function _ha(e,t){let r=await hli(t),s=r.preprocess?r.preprocess(e,t):e;t.originalText=s;let a;try{a=await r.parse(s,t,t)}catch(o){yha(o,e)}return{text:s,ast:a}}function yha(e,t){let{loc:r}=e;if(r){let s=(0,hha.codeFrameColumns)(t,r,{highlightCode:!0});throw e.message+=` +`+s,e.codeFrame=s,e}throw e}var OMe=_ha;async function bha(e,t,r,s,a){let{embeddedLanguageFormatting:o,printer:{embed:g,hasPrettierIgnore:p=()=>!1,getVisitorKeys:f}}=r;if(!g||o!=="auto")return;if(g.length>2)throw new Error("printer.embed has too many parameters. The API changed in Prettier v3. Please update your plugin. See https://prettier.io/docs/plugins#optional-embed");let m=Tmt(g.getVisitorKeys??f),y=[];k();let B=e.stack;for(let{print:T,node:O,pathStack:X}of y)try{e.stack=X;let U=await T(v,t,e,r);U&&a.set(O,U)}catch(U){if(globalThis.PRETTIER_DEBUG)throw U}e.stack=B;function v(T,O){return Eha(T,O,r,s)}function k(){let{node:T}=e;if(T===null||typeof T!="object"||p(e))return;for(let X of m(T))Array.isArray(T[X])?e.each(k,X):e.call(k,X);let O=g(e,r);if(O){if(typeof O=="function"){y.push({print:O,node:T,pathStack:[...e.stack]});return}a.set(T,O)}}}async function Eha(e,t,r,s){let a=await WSe({...r,...t,parentParser:r.parser,originalText:e},{passThrough:!0}),{ast:o}=await OMe(e,a),g=await s(o,a);return Uci(g)}function Bha(e,t){let{originalText:r,[Symbol.for("comments")]:s,locStart:a,locEnd:o,[Symbol.for("printedComments")]:g}=t,{node:p}=e,f=a(p),m=o(p);for(let y of s)a(y)>=f&&o(y)<=m&&g.add(y);return r.slice(f,m)}var vha=Bha;async function Nmt(e,t){({ast:e}=await yli(e,t));let r=new Map,s=new cma(e),a=Dma(t),o=new Map;await bha(s,p,t,Nmt,o);let g=await Lci(s,t,p,void 0,o);if(Nma(t),t.nodeAfterCursor&&!t.nodeBeforeCursor)return[kfe,g];if(t.nodeBeforeCursor&&!t.nodeAfterCursor)return[g,kfe];return g;function p(m,y){return m===void 0||m===s?f(y):Array.isArray(m)?s.call(()=>f(y),...m):s.call(()=>f(y),m)}function f(m){a(s);let y=s.node;if(y==null)return"";let B=y&&typeof y=="object"&&m===void 0;if(B&&r.has(y))return r.get(y);let v=Lci(s,t,p,m,o);return B&&r.set(y,v),v}}function Lci(e,t,r,s,a){var o;let{node:g}=e,{printer:p}=t,f;switch((o=p.hasPrettierIgnore)!=null&&o.call(p,e)?f=vha(e,t):a.has(g)?f=a.get(g):f=p.print(e,t,r,s),g){case t.cursorNode:f=fmt(f,m=>[kfe,m,kfe]);break;case t.nodeBeforeCursor:f=fmt(f,m=>[m,kfe]);break;case t.nodeAfterCursor:f=fmt(f,m=>[kfe,m]);break}return p.printComment&&(!p.willPrintOwnComments||!p.willPrintOwnComments(e,t))&&(f=Tma(e,f,t)),f}async function yli(e,t){let r=e.comments??[];t[Symbol.for("comments")]=r,t[Symbol.for("tokens")]=e.tokens??[],t[Symbol.for("printedComments")]=new Set,yma(e,t);let{printer:{preprocess:s}}=t;return e=s?await s(e,t):e,{ast:e,comments:r}}function Sha(e,t){let{cursorOffset:r,locStart:s,locEnd:a}=t,o=Tmt(t.printer.getVisitorKeys),g=k=>s(k)<=r&&a(k)>=r,p=e,f=[e];for(let k of gma(e,{getVisitorKeys:o,filter:g}))f.push(k),p=k;if(Ama(p,{getVisitorKeys:o}))return{cursorNode:p};let m,y,B=-1,v=Number.POSITIVE_INFINITY;for(;f.length>0&&(m===void 0||y===void 0);){p=f.pop();let k=m!==void 0,T=y!==void 0;for(let O of wmt(p,{getVisitorKeys:o})){if(!k){let X=a(O);X<=r&&X>B&&(m=O,B=X)}if(!T){let X=s(O);X>=r&&Xg(v,f)).filter(Boolean);let m={},y=new Set(a(p));for(let v in p)!Object.prototype.hasOwnProperty.call(p,v)||o.has(v)||(y.has(v)?m[v]=g(p[v],p):m[v]=p[v]);let B=r(p,m,f);if(B!==null)return B??m}}var Nha=Tha,Rha=(e,t,r)=>{if(!(e&&t==null)){if(t.findLastIndex)return t.findLastIndex(r);for(let s=t.length-1;s>=0;s--){let a=t[s];if(r(a,s,t))return s}return-1}},Dha=Rha,xha=({parser:e})=>e==="json"||e==="json5"||e==="jsonc"||e==="json-stringify";function kha(e,t){let r=[e.node,...e.parentNodes],s=new Set([t.node,...t.parentNodes]);return r.find(a=>bli.has(a.type)&&s.has(a))}function Vci(e){let t=Dha(!1,e,r=>r.type!=="Program"&&r.type!=="File");return t===-1?e:e.slice(0,t+1)}function Gha(e,t,{locStart:r,locEnd:s}){let a=e.node,o=t.node;if(a===o)return{startNode:a,endNode:o};let g=r(e.node);for(let f of Vci(t.parentNodes))if(r(f)>=g)o=f;else break;let p=s(t.node);for(let f of Vci(e.parentNodes)){if(s(f)<=p)a=f;else break;if(a===o)break}return{startNode:a,endNode:o}}function hpr(e,t,r,s,a=[],o){let{locStart:g,locEnd:p}=r,f=g(e),m=p(e);if(!(t>m||ts);let p=e.slice(s,a).search(/\S/u),f=p===-1;if(!f)for(s+=p;a>s&&!/\S/u.test(e[a-1]);--a);let m=hpr(r,s,t,(k,T)=>Wci(t,k,T),[],"rangeStart"),y=f?m:hpr(r,a,t,k=>Wci(t,k),[],"rangeEnd");if(!m||!y)return{rangeStart:0,rangeEnd:0};let B,v;if(xha(t)){let k=kha(m,y);B=k,v=k}else({startNode:B,endNode:v}=Gha(m,y,t));return{rangeStart:Math.min(o(B),o(v)),rangeEnd:Math.max(g(B),g(v))}}var Eli="\uFEFF",Pci=Symbol("cursor");async function Bli(e,t,r=0){if(!e||e.trim().length===0)return{formatted:"",cursorOffset:-1,comments:[]};let{ast:s,text:a}=await OMe(e,t);t.cursorOffset>=0&&(t={...t,...wha(s,t)});let o=await Nmt(s,t,r);r>0&&(o=tli([Gfe,o],r,t.tabWidth));let g=Smt(o,t);if(r>0){let f=g.formatted.trim();g.cursorNodeStart!==void 0&&(g.cursorNodeStart-=g.formatted.indexOf(f),g.cursorNodeStart<0&&(g.cursorNodeStart=0,g.cursorNodeText=g.cursorNodeText.trimStart()),g.cursorNodeStart+g.cursorNodeText.length>f.length&&(g.cursorNodeText=g.cursorNodeText.trimEnd())),g.formatted=f+Bpr(t.endOfLine)}let p=t[Symbol.for("comments")];if(t.cursorOffset>=0){let f,m,y,B;if((t.cursorNode||t.nodeBeforeCursor||t.nodeAfterCursor)&&g.cursorNodeText)if(y=g.cursorNodeStart,B=g.cursorNodeText,t.cursorNode)f=t.locStart(t.cursorNode),m=a.slice(f,t.locEnd(t.cursorNode));else{if(!t.nodeBeforeCursor&&!t.nodeAfterCursor)throw new Error("Cursor location must contain at least one of cursorNode, nodeBeforeCursor, nodeAfterCursor");f=t.nodeBeforeCursor?t.locEnd(t.nodeBeforeCursor):0;let U=t.nodeAfterCursor?t.locStart(t.nodeAfterCursor):a.length;m=a.slice(f,U)}else f=0,m=a,y=0,B=g.formatted;let v=t.cursorOffset-f;if(m===B)return{formatted:g.formatted,cursorOffset:y+v,comments:p};let k=m.split("");k.splice(v,0,Pci);let T=B.split(""),O=_Ca(k,T),X=y;for(let U of O)if(U.removed){if(U.value.includes(Pci))break}else X+=U.count;return{formatted:g.formatted,cursorOffset:X,comments:p}}return{formatted:g.formatted,cursorOffset:-1,comments:p}}async function Vha(e,t){let{ast:r,text:s}=await OMe(e,t),{rangeStart:a,rangeEnd:o}=Lha(s,t,r),g=s.slice(a,o),p=Math.min(a,s.lastIndexOf(` +`,a)+1),f=s.slice(p,a).match(/^\s*/u)[0],m=Rpr(f,t.tabWidth),y=await Bli(g,{...t,rangeStart:0,rangeEnd:Number.POSITIVE_INFINITY,cursorOffset:t.cursorOffset>a&&t.cursorOffset<=o?t.cursorOffset-a:-1,endOfLine:"lf"},m),B=y.formatted.trimEnd(),{cursorOffset:v}=t;v>o?v+=B.length-g.length:y.cursorOffset>=0&&(v=y.cursorOffset+a);let k=s.slice(0,a)+B+s.slice(o);if(t.endOfLine!=="lf"){let T=Bpr(t.endOfLine);v>=0&&T===`\r +`&&(v+=Xci(k.slice(0,v),` +`)),k=bmt(!1,k,` +`,T)}return{formatted:k,cursorOffset:v,comments:y.comments}}function apr(e,t,r){return typeof t!="number"||Number.isNaN(t)||t<0||t>e.length?r:t}function Oci(e,t){let{cursorOffset:r,rangeStart:s,rangeEnd:a}=t;return r=apr(e,r,-1),s=apr(e,s,0),a=apr(e,a,e.length),{...t,cursorOffset:r,rangeStart:s,rangeEnd:a}}function vli(e,t){let{cursorOffset:r,rangeStart:s,rangeEnd:a,endOfLine:o}=Oci(e,t),g=e.charAt(0)===Eli;if(g&&(e=e.slice(1),r--,s--,a--),o==="auto"&&(o=yCa(e)),e.includes("\r")){let p=f=>Xci(e.slice(0,Math.max(f,0)),`\r +`);r-=p(r),s-=p(s),a-=p(a),e=bCa(e)}return{hasBOM:g,text:e,options:Oci(e,{...t,cursorOffset:r,rangeStart:s,rangeEnd:a,endOfLine:o})}}async function Qci(e,t){let r=await hli(t);return!r.hasPragma||r.hasPragma(e)}async function Sli(e,t){let{hasBOM:r,text:s,options:a}=vli(e,await WSe(t));if(a.rangeStart>=a.rangeEnd&&s!==""||a.requirePragma&&!await Qci(s,a))return{formatted:e,cursorOffset:t.cursorOffset,comments:[]};let o;return a.rangeStart>0||a.rangeEnd=0&&o.cursorOffset++),o}async function Wha(e,t,r){let{text:s,options:a}=vli(e,await WSe(t)),o=await OMe(s,a);return r&&(r.preprocessForPrint&&(o.ast=await yli(o.ast,a)),r.massage&&(o.ast=Nha(o.ast,a))),o}async function Pha(e,t){t=await WSe(t);let r=await Nmt(e,t);return Smt(r,t)}async function Oha(e,t){let r=zCa(e),{formatted:s}=await Sli(r,{...t,parser:"__js_expression"});return s}async function Qha(e,t){t=await WSe(t);let{ast:r}=await OMe(e,t);return Nmt(r,t)}async function Mha(e,t){return Smt(e,await WSe(t))}var wli={};ypr(wli,{builders:()=>Hha,printer:()=>Yha,utils:()=>Xha});var Hha={join:eli,line:qci,softline:KCa,hardline:Gfe,literalline:$ci,group:jci,conditionalGroup:MCa,fill:HCa,lineSuffix:Apr,lineSuffixBoundary:JCa,cursor:kfe,breakParent:vmt,ifBreak:YCa,trim:UCa,indent:_mt,indentIfBreak:XCa,align:VSe,addAlignmentToDoc:tli,markAsRoot:OCa,dedentToRoot:PCa,dedent:QCa,hardlineWithoutBreakParent:Tpr,literallineWithoutBreakParent:zci,label:jCa,concat:e=>e},Yha={printDocToString:Smt},Xha={willBreak:RCa,traverseDoc:vpr,findInDoc:Spr,mapDoc:Bmt,removeLines:kCa,stripTrailingHardline:Uci,replaceEndOfLine:ZCa,canBreak:VCa},Jha="3.5.3",Tli={};ypr(Tli,{addDanglingComment:()=>Dfe,addLeadingComment:()=>kSe,addTrailingComment:()=>GSe,getAlignmentSize:()=>Rpr,getIndentSize:()=>$ha,getMaxContinuousCount:()=>r_a,getNextNonSpaceNonCommentCharacter:()=>i_a,getNextNonSpaceNonCommentCharacterIndex:()=>p_a,getPreferredQuote:()=>o_a,getStringWidth:()=>Npr,hasNewline:()=>Hse,hasNewlineInRange:()=>c_a,hasSpaces:()=>u_a,isNextLineEmpty:()=>m_a,isNextLineEmptyAfterIndex:()=>Lpr,isPreviousLineEmpty:()=>I_a,makeString:()=>A_a,skip:()=>PMe,skipEverythingButNewLine:()=>sli,skipInlineComment:()=>Gpr,skipNewline:()=>Ffe,skipSpaces:()=>Yse,skipToLineEnd:()=>ili,skipTrailingComment:()=>Fpr,skipWhitespace:()=>dma});function Uha(e,t){if(t===!1)return!1;if(e.charAt(t)==="/"&&e.charAt(t+1)==="*"){for(let r=t+2;rMath.max(s,a.length/t.length),0)}var r_a=t_a;function n_a(e,t){let r=Zpr(e,t);return r===!1?"":e.charAt(r)}var i_a=n_a,pmt="'",Mci='"';function s_a(e,t){let r=t===!0||t===pmt?pmt:Mci,s=r===pmt?Mci:pmt,a=0,o=0;for(let g of e)g===r?a++:g===s&&o++;return a>o?s:r}var o_a=s_a;function a_a(e,t,r){for(let s=t;sg===s?g:p===t?"\\"+p:p||(r&&/^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/u.test(g)?g:"\\"+g));return t+a+t}var A_a=g_a;function d_a(e,t,r){return Zpr(e,r(t))}function p_a(e,t){return arguments.length===2||typeof t=="number"?Zpr(e,t):d_a(...arguments)}function f_a(e,t,r){return kpr(e,r(t))}function I_a(e,t){return arguments.length===2||typeof t=="number"?kpr(e,t):f_a(...arguments)}function C_a(e,t,r){return Lpr(e,r(t))}function m_a(e,t){return arguments.length===2||typeof t=="number"?Lpr(e,t):C_a(...arguments)}function xfe(e,t=1){return async(...r)=>{let s=r[t]??{},a=s.plugins??[];return r[t]={...s,plugins:Array.isArray(a)?a:Object.values(a)},e(...r)}}var Nli=xfe(Sli);async function PSe(e,t){let{formatted:r}=await Nli(e,{...t,cursorOffset:-1});return r}async function h_a(e,t){return await PSe(e,t)===e}var __a=xfe(gli,0),y_a={parse:xfe(Wha),formatAST:xfe(Pha),formatDoc:xfe(Oha),printToDoc:xfe(Qha),printDocToString:xfe(Mha)};var Xui=vt(m3e(),1);var XMe=vt(Dli(),1);var b_a=/^(?:( )+|\t+)/,QMe="space",kli="tab";function xli(e,t){let r=new Map,s=0,a,o;for(let g of e.split(/\n/g)){if(!g)continue;let p,f,m,y,B,v=g.match(b_a);if(v===null)s=0,a="";else{if(p=v[0].length,f=v[1]?QMe:kli,t&&f===QMe&&p===1)continue;f!==a&&(s=0),a=f,m=1,y=0;let k=p-s;if(s=p,k===0)m=0,y=1;else{let T=k>0?k:-k;o=E_a(f,T)}B=r.get(o),B=B===void 0?[1,0]:[B[0]+m,B[1]+y],r.set(o,B)}}return r}function E_a(e,t){return(e===QMe?"s":"t")+String(t)}function B_a(e){let r=e[0]==="s"?QMe:kli,s=Number(e.slice(1));return{type:r,amount:s}}function v_a(e){let t,r=0,s=0;for(let[a,[o,g]]of e)(o>r||o===r&&g>s)&&(r=o,s=g,t=a);return t}function S_a(e,t){return(e===QMe?" ":" ").repeat(t)}function Vpr(e){if(typeof e!="string")throw new TypeError("Expected a string");let t=xli(e,!0);t.size===0&&(t=xli(e,!1));let r=v_a(t),s,a=0,o="";return r!==void 0&&({type:s,amount:a}=B_a(r),o=S_a(s,a)),{amount:a,type:s,indent:o}}function w_a(e){if(typeof e!="string")throw new TypeError("Expected a string");let t=e.match(/(?:\r?\n)/g)||[];if(t.length===0)return;let r=t.filter(a=>a===`\r `).length,s=t.length-r;return r>s?`\r `:` -`}function Sli(e){return typeof e=="string"&&g_a(e)||` -`}function Gpr(e){if(typeof e!="object"||e===null)return!1;let t=Object.getPrototypeOf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)}var Lpr=Object.hasOwn||((e,t)=>Object.prototype.hasOwnProperty.call(e,t)),QYe=e=>(t,...r)=>e.reduce((s,a)=>a(s,...r),t),MYe=e=>t=>Array.isArray(t)?e(t):t,Nli=e=>t=>Array.isArray(t)&&t.every(r=>typeof r=="string")?e(t):t,OYe=Nli(e=>[...new Set(e)]),A_a=Nli(e=>[...e].sort()),wmt=QYe([OYe,A_a]),HYe=e=>(t,...r)=>Gpr(t)?e(t,...r):t,TM=(e,t)=>{let r=HYe(s=>(t&&(s=Object.fromEntries(Object.entries(s).map(([a,o])=>[a,r(o)]))),(0,YYe.default)(s,e)));return r},Sm=TM(),Fpr=TM(["type","url"]),Zpr=TM(["name","email","url"]),d_a=TM(["lib","bin","man","doc","example","test"]),sq=(e,t)=>(r,...s)=>Lpr(r,e)?{...r,[e]:t(r[e],...s)}:r,p_a=["files","excludedFiles","env","parser","parserOptions","settings","plugins","extends","rules","overrides","globals","processor","noInlineConfig","reportUnusedDisableDirectives"],Rli=HYe(QYe([TM(p_a),sq("env",Sm),sq("globals",Sm),sq("overrides",MYe(e=>e.map(Rli))),sq("parserOptions",Sm),sq("rules",TM((e,t)=>e.split("/").length-t.split("/").length||e.localeCompare(t))),sq("settings",Sm)])),f_a=TM(["description","url","href"]),I_a=HYe(QYe([e=>(0,YYe.default)(e,[...Object.keys(e).filter(t=>t!=="overrides").sort(),"overrides"]),sq("overrides",MYe(e=>e.map(QYe([Sm,sq("options",Sm)]))))])),C_a=TM(["node","npm","yarn"]),m_a=new Set(["install","pack","prepare","publish","restart","shrinkwrap","start","stop","test","uninstall","version"]),h_a=(e,t)=>Lpr(t,"devDependencies")&&Lpr(t.devDependencies,e),wli=HYe((e,t)=>{let r=Object.keys(e),s=new Set,a=r.map(g=>{let p=g.replace(/^(?:pre|post)/,"");return m_a.has(p)||r.includes(p)?(s.add(p),p):g});h_a("npm-run-all",t)||a.sort();let o=a.flatMap(g=>s.has(g)?[`pre${g}`,g,`post${g}`]:[g]);return(0,YYe.default)(e,o)}),Dli=[{key:"$schema"},{key:"name"},{key:"displayName"},{key:"version"},{key:"private"},{key:"description"},{key:"categories",over:OYe},{key:"keywords",over:OYe},{key:"homepage"},{key:"bugs",over:TM(["url","email"])},{key:"repository",over:Fpr},{key:"funding",over:Fpr},{key:"license",over:Fpr},{key:"qna"},{key:"author",over:Zpr},{key:"maintainers",over:MYe(e=>e.map(Zpr))},{key:"contributors",over:MYe(e=>e.map(Zpr))},{key:"publisher"},{key:"sideEffects"},{key:"type"},{key:"imports"},{key:"exports"},{key:"main"},{key:"svelte"},{key:"umd:main"},{key:"jsdelivr"},{key:"unpkg"},{key:"module"},{key:"source"},{key:"jsnext:main"},{key:"browser"},{key:"react-native"},{key:"types"},{key:"typesVersions"},{key:"typings"},{key:"style"},{key:"example"},{key:"examplestyle"},{key:"assets"},{key:"bin",over:Sm},{key:"man"},{key:"directories",over:d_a},{key:"files",over:OYe},{key:"workspaces"},{key:"binary",over:TM(["module_name","module_path","remote_path","package_name","host"])},{key:"scripts",over:wli},{key:"betterScripts",over:wli},{key:"contributes",over:Sm},{key:"activationEvents",over:OYe},{key:"pre-commit"},{key:"commitlint",over:Sm},{key:"lint-staged"},{key:"config",over:Sm},{key:"nodemonConfig",over:Sm},{key:"browserify",over:Sm},{key:"babel",over:Sm},{key:"browserslist"},{key:"xo",over:Sm},{key:"prettier",over:I_a},{key:"eslintConfig",over:Rli},{key:"eslintIgnore"},{key:"npmpkgjsonlint",over:Sm},{key:"npmPackageJsonLintConfig",over:Sm},{key:"npmpackagejsonlint",over:Sm},{key:"release",over:Sm},{key:"remarkConfig",over:Sm},{key:"stylelint"},{key:"ava",over:Sm},{key:"jest",over:Sm},{key:"jest-junit",over:Sm},{key:"jest-stare",over:Sm},{key:"mocha",over:Sm},{key:"nyc",over:Sm},{key:"c8",over:Sm},{key:"tap",over:Sm},{key:"resolutions",over:Sm},{key:"dependencies",over:Sm},{key:"devDependencies",over:Sm},{key:"dependenciesMeta",over:TM(void 0,!0)},{key:"peerDependencies",over:Sm},{key:"peerDependenciesMeta",over:TM(void 0,!0)},{key:"optionalDependencies",over:Sm},{key:"bundledDependencies",over:wmt},{key:"bundleDependencies",over:wmt},{key:"extensionPack",over:wmt},{key:"extensionDependencies",over:wmt},{key:"flat"},{key:"packageManager"},{key:"engines",over:Sm},{key:"engineStrict",over:Sm},{key:"volta",over:C_a},{key:"languageName"},{key:"os"},{key:"cpu"},{key:"preferGlobal",over:Sm},{key:"publishConfig",over:Sm},{key:"icon"},{key:"badges",over:MYe(e=>e.map(f_a))},{key:"galleryBanner",over:Sm},{key:"preview"},{key:"markdown"}],Tli=Dli.map(({key:e})=>e),__a=QYe(Dli.map(({key:e,over:t})=>t?sq(e,t):void 0).filter(Boolean));function y_a(e,t){if(typeof e=="string"){let{indent:r}=kpr(e),s=e.slice(-1)===` +`}function Gli(e){return typeof e=="string"&&w_a(e)||` +`}function Wpr(e){if(typeof e!="object"||e===null)return!1;let t=Object.getPrototypeOf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)}var Qpr=Object.hasOwn||((e,t)=>Object.prototype.hasOwnProperty.call(e,t)),YMe=e=>(t,...r)=>e.reduce((s,a)=>a(s,...r),t),HMe=e=>t=>Array.isArray(t)?e(t):t,Lli=e=>t=>Array.isArray(t)&&t.every(r=>typeof r=="string")?e(t):t,MMe=Lli(e=>[...new Set(e)]),T_a=Lli(e=>[...e].sort()),Rmt=YMe([MMe,T_a]),JMe=e=>(t,...r)=>Wpr(t)?e(t,...r):t,RQ=(e,t)=>{let r=JMe(s=>(t&&(s=Object.fromEntries(Object.entries(s).map(([a,o])=>[a,r(o)]))),(0,XMe.default)(s,e)));return r},wm=RQ(),Ppr=RQ(["type","url"]),Opr=RQ(["name","email","url"]),N_a=RQ(["lib","bin","man","doc","example","test"]),oq=(e,t)=>(r,...s)=>Qpr(r,e)?{...r,[e]:t(r[e],...s)}:r,R_a=["files","excludedFiles","env","parser","parserOptions","settings","plugins","extends","rules","overrides","globals","processor","noInlineConfig","reportUnusedDisableDirectives"],Vli=JMe(YMe([RQ(R_a),oq("env",wm),oq("globals",wm),oq("overrides",HMe(e=>e.map(Vli))),oq("parserOptions",wm),oq("rules",RQ((e,t)=>e.split("/").length-t.split("/").length||e.localeCompare(t))),oq("settings",wm)])),D_a=RQ(["description","url","href"]),x_a=JMe(YMe([e=>(0,XMe.default)(e,[...Object.keys(e).filter(t=>t!=="overrides").sort(),"overrides"]),oq("overrides",HMe(e=>e.map(YMe([wm,oq("options",wm)]))))])),k_a=RQ(["node","npm","yarn"]),G_a=new Set(["install","pack","prepare","publish","restart","shrinkwrap","start","stop","test","uninstall","version"]),F_a=(e,t)=>Qpr(t,"devDependencies")&&Qpr(t.devDependencies,e),Fli=JMe((e,t)=>{let r=Object.keys(e),s=new Set,a=r.map(g=>{let p=g.replace(/^(?:pre|post)/,"");return G_a.has(p)||r.includes(p)?(s.add(p),p):g});F_a("npm-run-all",t)||a.sort();let o=a.flatMap(g=>s.has(g)?[`pre${g}`,g,`post${g}`]:[g]);return(0,XMe.default)(e,o)}),Wli=[{key:"$schema"},{key:"name"},{key:"displayName"},{key:"version"},{key:"private"},{key:"description"},{key:"categories",over:MMe},{key:"keywords",over:MMe},{key:"homepage"},{key:"bugs",over:RQ(["url","email"])},{key:"repository",over:Ppr},{key:"funding",over:Ppr},{key:"license",over:Ppr},{key:"qna"},{key:"author",over:Opr},{key:"maintainers",over:HMe(e=>e.map(Opr))},{key:"contributors",over:HMe(e=>e.map(Opr))},{key:"publisher"},{key:"sideEffects"},{key:"type"},{key:"imports"},{key:"exports"},{key:"main"},{key:"svelte"},{key:"umd:main"},{key:"jsdelivr"},{key:"unpkg"},{key:"module"},{key:"source"},{key:"jsnext:main"},{key:"browser"},{key:"react-native"},{key:"types"},{key:"typesVersions"},{key:"typings"},{key:"style"},{key:"example"},{key:"examplestyle"},{key:"assets"},{key:"bin",over:wm},{key:"man"},{key:"directories",over:N_a},{key:"files",over:MMe},{key:"workspaces"},{key:"binary",over:RQ(["module_name","module_path","remote_path","package_name","host"])},{key:"scripts",over:Fli},{key:"betterScripts",over:Fli},{key:"contributes",over:wm},{key:"activationEvents",over:MMe},{key:"pre-commit"},{key:"commitlint",over:wm},{key:"lint-staged"},{key:"config",over:wm},{key:"nodemonConfig",over:wm},{key:"browserify",over:wm},{key:"babel",over:wm},{key:"browserslist"},{key:"xo",over:wm},{key:"prettier",over:x_a},{key:"eslintConfig",over:Vli},{key:"eslintIgnore"},{key:"npmpkgjsonlint",over:wm},{key:"npmPackageJsonLintConfig",over:wm},{key:"npmpackagejsonlint",over:wm},{key:"release",over:wm},{key:"remarkConfig",over:wm},{key:"stylelint"},{key:"ava",over:wm},{key:"jest",over:wm},{key:"jest-junit",over:wm},{key:"jest-stare",over:wm},{key:"mocha",over:wm},{key:"nyc",over:wm},{key:"c8",over:wm},{key:"tap",over:wm},{key:"resolutions",over:wm},{key:"dependencies",over:wm},{key:"devDependencies",over:wm},{key:"dependenciesMeta",over:RQ(void 0,!0)},{key:"peerDependencies",over:wm},{key:"peerDependenciesMeta",over:RQ(void 0,!0)},{key:"optionalDependencies",over:wm},{key:"bundledDependencies",over:Rmt},{key:"bundleDependencies",over:Rmt},{key:"extensionPack",over:Rmt},{key:"extensionDependencies",over:Rmt},{key:"flat"},{key:"packageManager"},{key:"engines",over:wm},{key:"engineStrict",over:wm},{key:"volta",over:k_a},{key:"languageName"},{key:"os"},{key:"cpu"},{key:"preferGlobal",over:wm},{key:"publishConfig",over:wm},{key:"icon"},{key:"badges",over:HMe(e=>e.map(D_a))},{key:"galleryBanner",over:wm},{key:"preview"},{key:"markdown"}],Zli=Wli.map(({key:e})=>e),Z_a=YMe(Wli.map(({key:e,over:t})=>t?oq(e,t):void 0).filter(Boolean));function L_a(e,t){if(typeof e=="string"){let{indent:r}=Vpr(e),s=e.slice(-1)===` `?` -`:"",a=Sli(e);e=JSON.parse(e);let o=JSON.stringify(t(e),null,r)+s;return a===`\r -`&&(o=o.replace(/\n/g,a)),o}return t(e)}var b_a=e=>e[0]==="_",E_a=(e,t)=>e.reduce((r,s)=>(r[t(s)?0:1].push(s),r),[[],[]]);function B_a(e,t={}){return y_a(e,HYe(r=>{let s=t.sortOrder||Tli;if(Array.isArray(s)){let a=Object.keys(r),[o,g]=E_a(a,b_a);s=[...s,...Tli,...g.sort(),...o.sort()]}return __a((0,YYe.default)(r,s),r)}))}var xli=B_a;var Tmt=class{constructor(t){this.program=t}parseImports(t){return this.program.body.filter(s=>s.type==="ImportDeclaration").map(s=>{let a={start:s.range[0],end:s.range[1],importStart:s.range[0],importEnd:s.range[1],type:s.importKind==="type"?"import-type":"import",moduleName:s.source.value,defaultMember:s.specifiers.find(f=>f.type==="ImportDefaultSpecifier")?.local?.name,namespaceMember:s.specifiers.find(f=>f.type==="ImportNamespaceSpecifier")?.local?.name,namedMembers:s.specifiers.filter(f=>f.type==="ImportSpecifier").map(f=>({name:f.imported.name,alias:f.local.name,type:s.importKind==="type"}))},o=this.program.comments.find(f=>f.loc.start.line===s.loc.start.line&&f.loc.end.line===s.loc.end.line);o&&(a.end=o.range[1]);let g=f=>{let m=this.program.comments.find(B=>B.loc.start.line===f);return m?[...g(m.loc.start.line-1),m]:[]},p=g(s.loc.start.line-1);return p.length>0&&(a.start=p.at(0).range.at(0)),a})}formatImport(t,r,s=` -`){let a=r.importStart||r.start,o=r.importEnd||r.end,g=t.substring(a,o),{namedMembers:p}=r;if(p.length===0)return t.substring(r.start,r.end);let f=g.replace(/\{[\s\S]*\}/g,m=>{let y=m.includes(s),B;y&&([B]=m.split(s)[1].match(/^\s*/));let v=m.charAt(1)===" ",G=m.replace("}","").trim().endsWith(",");return this.formatNamedMembers(p,y,v,G,B,s)});return t.substring(r.start,a)+f+t.substring(o,o+(r.end-o))}formatNamedMembers(t,r,s,a,o="",g=` -`){if(r)return"{"+g+t.map(({name:m,alias:y},B)=>{let v=B===t.length-1,G=!a&&v?"":",";return m===y?`${o}${m}${G}`+g:`${o}${m} as ${y}${G}`+g}).join("")+"}";let p=s?" ":"",f=a?",":"";return"{"+p+t.map(({name:m,alias:y})=>m===y?`${m}`:`${m} as ${y}`).join(", ")+f+p+"}"}};var Tui=xt(Eui(),1);import{readFileSync as Bui}from"node:fs";import{join as vui}from"node:path";var nya=()=>{let e=new Set;try{let{workspaces:t}=JSON.parse(Bui(vui(process.cwd(),"/package.json"),"utf-8"));t?.length>0&&gvn(t,{cwd:process.cwd(),onlyDirectories:!0,absolute:!0,expandDirectories:{files:["package.json"],extensions:["json"]}}).forEach(s=>{try{let{name:a}=JSON.parse(Bui(vui(s,"package.json"),"utf-8"));a.startsWith("@")&&e.add(a)}catch{}})}catch(t){console.log(t)}return Array.from(e)},iya=nya(),_R=e=>iya.some(t=>e.moduleName.startsWith(t)),Sui=e=>e.moduleName.startsWith("node:"),m5=e=>e.type==="import-type";var wui=({and:e,hasDefaultMember:t,hasOnlyNamedMembers:r,hasNoMember:s,hasNamespaceMember:a,isAbsoluteModule:o,isRelativeModule:g,isScopedModule:p,moduleName:f,naturally:m,member:y,not:B,startsWithLowerCase:v,startsWithUpperCase:G})=>{let T=[{match:e(s,o,B(_R)),sort:f(m)},{match:e(s,o,_R),sort:f(m)},{match:e(s,g),sort:f(m)}],O=[{match:e(m5,o,a),sort:f(m)},{match:e(m5,o,r,y(G)),sort:f(m)},{match:e(m5,o,r,y(v)),sort:f(m)},{match:e(m5,o,t,y(G)),sort:f(m)},{match:e(m5,o,t,y(v)),sort:f(m)}],X=[{match:e(m5,g,a),sort:f(m)},{match:e(m5,g,r,y(G)),sort:f(m)},{match:e(m5,g,r,y(v)),sort:f(m)},{match:e(m5,g,t,y(G)),sort:f(m)},{match:e(m5,g,t,y(v)),sort:f(m)}],U=[{match:Sui,sort:f(m)}],le=[{match:e(p,B(_R),a),sort:f(m)},{match:e(p,B(_R),r,y(G)),sort:f(m)},{match:e(p,B(_R),r,y(v)),sort:f(m)},{match:e(p,B(_R),t,y(G)),sort:f(m)},{match:e(p,B(_R),t,y(v)),sort:f(m)},{match:e(o,B(_R),B(p),a),sort:f(m)},{match:e(o,B(p),B(_R),r,y(G)),sort:f(m)},{match:e(o,B(p),B(_R),r,y(v)),sort:f(m)},{match:e(o,B(p),B(_R),t,y(G)),sort:f(m)},{match:e(o,B(p),B(_R),t,y(v)),sort:f(m)}],ae=[{match:e(_R,a),sort:f(m)},{match:e(_R,r,y(G)),sort:f(m)},{match:e(_R,r,y(v)),sort:f(m)},{match:e(_R,t,y(G)),sort:f(m)},{match:e(_R,t,y(v)),sort:f(m)}],ge=[{match:e(g,a),sort:f(m)},{match:e(g,r,y(G)),sort:f(m)},{match:e(g,r,y(v)),sort:f(m)},{match:e(g,t,y(G)),sort:f(m)},{match:e(g,t,y(v)),sort:f(m)}];return[...T,{separator:!0},...O,{separator:!0},...X,{separator:!0},...U,{separator:!0},...le,{separator:!0},...ae,{separator:!0},...ge,{separator:!0}]};var sya=e=>e.find(r=>typeof r=="string"||!r.parsers?!1:r.parsers.typescript)?.parsers?.typescript||null,Nui=(e,{plugins:t})=>{let r=sya(t),s=new Tmt(r.parse(e)),{code:a}=(0,Tui.sortImports)(e,s,wui);return a};var oya=(e,t)=>Nui(e,t),aya=async(e,{plugins:t})=>{let s=t.find(g=>typeof g!="string"&&g.parsers?.typescript).parsers.typescript.parse(e),a=s.body.length;return[...s.body].reverse().forEach((g,p)=>{if(g.type==="ImportDeclaration"&&g.specifiers.length>1){let f=a-p-1;s.body.splice(f,1),g.specifiers.forEach((m,y)=>{s.body.splice(f+y,0,{...g,specifiers:g.specifiers.filter((B,v)=>y===v)})})}}),s},Hpr={typescript:{...Jz.typescript,astFormat:"typescript-custom",preprocess:oya,parse:aya},"json-stringify":{...vve["json-stringify"],preprocess(e,t){return vve["json-stringify"].preprocess&&(e=vve["json-stringify"].preprocess(e,t)),t.filepath&&/(^|\\|\/)package\.json$/.test(t.filepath)?xli(e):e}}};var xmt=async()=>{let e;return await LSe("const n = 5;",{plugins:[ZQe,Sve,{...ESe,parsers:{...Jz,typescript:{...Jz.typescript,parse(t,r){return e=r.plugins.find(a=>a.printers?.estree).printers.estree,Jz.typescript.parse(t,r)}}}}],parser:"typescript"}),e};var cya=xmt(),Rui=e=>{if(e.specifiers.length===0)return 0;let t=e.specifiers[e.specifiers.length-1],r=t.imported?8:6;return t.loc.end.column+r},lya=(e,t,r)=>{let s=e.getNode(),o=t.plugins.find(g=>typeof g!="string"&&g.printers?.estree).printers.estree.print(e,t,r);return s?.type==="ImportDeclaration"&&(o=o.map(g=>{if(Array.isArray(g)&&g[0]===" from"&&s.alignOffset>0){let p=Array.apply(0,Array(s.alignOffset)).fill(" ").join("");g[0]=`${p} from`}return g})),o},uya=async e=>{let t=e.body.filter(a=>a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line),r=t.map(a=>Rui(a)),s=t.length>0?Math.max(...r):0;return e.body.forEach(a=>{if(a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line){a.alignOffset=0;let o=Rui(a);a.alignOffset=o{if(e.specifiers.length===0)return 0;let t=e.specifiers[e.specifiers.length-1],r=t.imported?8:6;return t.loc.end.column+r},Aya=(e,t,r)=>{let s=e.getNode(),o=t.plugins.find(g=>typeof g!="string"&&g.printers?.estree).printers.estree.print(e,t,r);return s?.type==="ImportDeclaration"&&(o=o.map(g=>{if(Array.isArray(g)&&g[0]===" from"&&s.alignOffset>0){let p=Array.apply(0,Array(s.alignOffset)).fill(" ").join("");g[0]=`${p} from`}return g})),o},dya=async e=>{let t=e.body.filter(a=>a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line),r=t.map(a=>Dui(a)),s=t.length>0?Math.max(...r):0;return e.body.forEach(a=>{if(a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line){a.alignOffset=0;let o=Dui(a);a.alignOffset=o({"typescript-custom":{...await xmt(),preprocess:dya,print:Aya}});var kui=async()=>({printers:await xui(),parsers:Hpr});var pya={semi:!1,singleQuote:!0,tabWidth:2,jsxSingleQuote:!0,printWidth:100,trailingComma:"es5"},Gui=pya;import{join as fya}from"node:path";var Fui=[".c9",".pnp.js",".pnp.cjs",".pnp.loader.mjs",".git","node_modules","coverage","dist","lib",".yarn",".vscode",".next","**/**/dist/*","**/**/lib/*","**/**/templates/*.yaml","**/templates/*.yaml",".terraform",".idea"],Iya=["./**/*.{js,mjs,cjs,ts,tsx,yml,yaml,json,graphql,md,mdx}"],Cya=["!**/node_modules/**","!./node_modules/**","!**/.{git,svn,hg}/**","!./.{git,svn,hg}/**","!**/.yarn/**","!./.yarn/**","!**/.idea/**","!./.idea/**"],Zui=e=>[...Iya.map(t=>fya(e,t)),...Cya];var kmt=class e extends mya{constructor(r){super();this.cwd=r}static async initialize(r){return new e(r)}async format(r){r&&r.length>0?await this.formatFiles(r):await this.formatProject()}async formatFiles(r=[]){let s=await kui(),a=Vui.default.default().add(Fui).add(await this.getProjectIgnorePatterns()).filter(r.map(o=>_ya(this.cwd,o)));this.emit("start",{files:a});for await(let o of a){this.emit("format:start",{file:o});let g=await Lui(o,"utf8"),p=await LSe(g,{...Gui,filepath:o,plugins:[ZQe,jdr,rAr,Zgr,Sve,ESe,s]});p!==g&&p?(await hya(o,p,"utf8"),this.emit("format:end",{file:o,changed:!0})):this.emit("format:end",{file:o,changed:!1})}this.emit("end")}async formatProject(){let r=await Gj(Zui(this.cwd),{dot:!0});await this.formatFiles(r)}async getProjectIgnorePatterns(){let r=await Lui(yya(this.cwd,"package.json"),"utf-8"),{formatterIgnorePatterns:s=[]}=JSON.parse(r);return s}};var eHe=class extends Wui.BaseCommand{static paths=[["format"]];files=ed.Rest({required:0});async execute(){let t=await Pui.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Oui.Project.find(t,this.context.cwd),s=await kmt.initialize(this.context.cwd),{clear:a}=(0,Mui.render)(Xpr.default.createElement(jqn,{cwd:r.cwd,formatter:s}));try{return await s.format(this.files),0}catch(o){return o instanceof Error?ky(Xpr.default.createElement(WD,{error:o})).split(` -`).forEach(g=>{console.log(g)}):console.error(o),1}finally{a()}}};var Qui={commands:[eHe]};var ifr={};jf(ifr,{ImagePackCommand:()=>iHe,default:()=>xgi});var wgi=xt(nl(),1),Tgi=xt(Bn(),1),Ngi=xt(Bn(),1),Rgi=xt(Bn(),1),nfr=xt(Bn(),1),Dgi=xt(Ro(),1);Fl();import{readFileSync as nba}from"node:fs";import{join as iba}from"node:path";var Upr=xt(z2e(),1),Yui=xt(Bn(),1),bya=()=>{let e=Upr.context.payload;return process.env.GITHUB_PULL_REQUST_HEAD_SHA||e.after||e.pull_request?.head?.sha||process.env.GITHUB_SHA};var Eya=()=>{let e=Upr.context.payload;return String(e.pull_request?.number)},Bya=async()=>{if(process.env.GITHUB_EVENT_PATH&&process.env.GITHUB_TOKEN)return bya();let{stdout:e}=await Yui.execUtils.execvp("git",["log","-1",'--format="%H"'],{cwd:process.cwd(),strict:!0}),[t]=e.split(` -`);return t.replace(/"/g,"")},vya=async()=>process.env.GITHUB_EVENT_PATH&&process.env.GITHUB_TOKEN?Eya():"local",Hui=async e=>{let t=await Bya(),r=t.substr(0,7);return e==="hash-timestamp"?`${r}-${Date.now()}`:e==="ctx-hash-timestamp"?`${await vya()}-${r}-${Date.now()}`:t};var Bgi=xt(bgi(),1),nHe=xt(Bn(),1),rfr=xt(Ro(),1),vgi=xt(Ro(),1);import{readFileSync as rba}from"node:fs";var Lfe=xt(Bn(),1);import{platform as eba}from"node:os";import{arch as tba}from"node:os";var Egi=async({context:e,cwd:t})=>{let r=!1;try{await Lfe.execUtils.pipevp("pack",["--version"],{cwd:t??e.cwd,env:process.env,stdin:e.stdin,stdout:e.stdout,stderr:e.stderr,end:Lfe.execUtils.EndStrategy.ErrorCode}),r=!0}catch{r=!1}if(!r){console.log("Buildpack CLI (pack) is not installed. Installing it...");let s="https://github.com/buildpacks/pack/releases/download/v0.36.2/pack-v0.36.2-",a=eba(),o=tba();switch(a){case"linux":s+="linux.tgz";break;case"darwin":o==="arm64"?s+="macos-arm64.tgz":s+="macos.tgz";break;default:break}let g=`${t??e.cwd}/pack.tgz`;await Lfe.execUtils.pipevp("curl",["-sSL","-o",g,s],{cwd:t??e.cwd,env:process.env,stdin:e.stdin,stdout:e.stdout,stderr:e.stderr,end:Lfe.execUtils.EndStrategy.ErrorCode}),await Lfe.execUtils.pipevp("tar",["-C","/usr/local/bin/","--no-same-owner","-xzv",g],{cwd:t??e.cwd,env:process.env,stdin:e.stdin,stdout:e.stdout,stderr:e.stderr,end:Lfe.execUtils.EndStrategy.ErrorCode}),console.log("Buildpack CLI (pack) has been installed.")}};var Sgi=async({workspace:e,registry:t,publish:r,tagPolicy:s,builder:a,buildpack:o,platform:g,require:p,cwd:f},m)=>{let y=e.replace("@","").replace(/\//g,"-"),B=`${t}${y}`,v=await Hui(s),G=[{name:"WORKSPACE",value:e},{name:"CNB_USER_ID",value:"1001"}];p&&p.length>0&&G.push({name:"BP_REQUIRE",value:p.join(",")});let T={_:{"schema-version":"0.2",id:y,name:y,version:"0.0.1"},io:{buildpacks:{exclude:[".git",".yarn/unplugged"],builder:a,build:{env:G}}}},O=vgi.ppath.join(await rfr.xfs.mktempPromise(),"project.toml");await rfr.xfs.writeFilePromise(O,(0,Bgi.stringify)(T)),console.debug("project.toml",rba(O,"utf8"));let X=["build","--trust-builder",`${B}:${v}`,"--descriptor",O,"--buildpack",o,"--tag",`${B}:latest`,"--creation-time","now","--clear-cache","--verbose"];return r&&X.push("--publish"),g&&X.push("--platform",g),console.debug("Packing with args:",X),await Egi({cwd:f,context:m}),await nHe.execUtils.pipevp("pack",["config","experimental","true"],{cwd:f??m.cwd,env:process.env,stdin:m.stdin,stdout:m.stdout,stderr:m.stderr,end:nHe.execUtils.EndStrategy.ErrorCode}),await nHe.execUtils.pipevp("pack",X,{cwd:f??m.cwd,env:process.env,stdin:m.stdin,stdout:m.stdout,stderr:m.stderr,end:nHe.execUtils.EndStrategy.ErrorCode}),{images:[`${B}:${v}`,`${B}:latest`],tags:[v,"latest"],workspace:e}};var iHe=class extends wgi.BaseCommand{static paths=[["image","pack"]];registry=ed.String("-r,--registry","");tagPolicy=ed.String("-t,--tag-policy","revision");publish=ed.Boolean("-p,--publish",!1);platform=ed.String("--platform");async execute(){let t=await Tgi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Ngi.Project.find(t,this.context.cwd),s=r.getWorkspaceByFilePath(this.context.cwd);return(await Rgi.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{if(!this.isWorkspaceAllowedForBundle(s)){o.reportInfo(null,`Workspace ${s.manifest.name?nfr.structUtils.prettyIdent(t,s.manifest.name):s.relativeCwd} not allowed for package.`);return}let g=await Dgi.xfs.mktempPromise();o.reportInfo(null,`Package workspace ${s.manifest.name?nfr.structUtils.prettyIdent(t,s.manifest.name):s.relativeCwd} to ${g}`);let p=nba(iba(this.context.cwd,"package.json"),"utf-8"),{packConfiguration:f={}}=JSON.parse(p),m=f.buildpackVersion??"0.1.1",y=f.builderTag??"22",{require:B}=f;await fve.pack(t,r,s,o,g),await Sgi({workspace:s.manifest.raw.name,registry:this.registry,publish:this.publish,tagPolicy:this.tagPolicy,buildpack:`atlantislab/buildpack-yarn-workspace:${m}`,builder:`atlantislab/builder-base:${y}`,platform:this.platform,require:B,cwd:g},this.context)})).exitCode()}isWorkspaceAllowedForBundle(t){let{scripts:r,name:s}=t.manifest,a=r.get("build");return["actl service build","actl renderer build","build-storybook","storybook build","next build","builder build library","app service build","app renderer build","service build","renderer build","strapi build"].some(g=>a?.includes(g))&&!!s}};var xgi={commands:[iHe]};var vfr={};jf(vfr,{default:()=>IAi});var uAi=xt(nl(),1),gAi=xt(nl(),1),AAi=xt(Bn(),1),dAi=xt(Bn(),1),pAi=xt(Bn(),1),fAi=xt(Ro(),1);import cEa from"node:assert/strict";import{join as lEa}from"node:path";var lAi=xt(cAi(),1),qmt=class{constructor(t){this.cwd=t}async publish(t){await(0,lAi.publish)(this.cwd,t)}};var $mt=class extends uAi.BaseCommand{static paths=[["jsr","publish"]];async execute(){let t=await AAi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await pAi.Project.find(t,this.context.cwd);if(!s)throw new gAi.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await dAi.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await o.startTimerPromise("Publishing to JSR",async()=>{let g=process.env.GITHUB_TOKEN;cEa.ok(g,"GitHub Token is missing");let p=new qmt(this.context.cwd),f=await fAi.xfs.mktempPromise();await p.publish({pkgJsonPath:lEa(this.context.cwd,"package.json"),canary:!1,publishArgs:["install"],binFolder:f})})})).exitCode()}};var IAi={commands:[$mt]};var Nfr={};jf(Nfr,{LibraryBuildCommand:()=>gHe,default:()=>LAi});var NAi=xt(nl(),1),RAi=xt(Bn(),1),DAi=xt(Bn(),1),Tfr=xt(Ro(),1),xAi=xt(Bn(),1),kAi=xt(Bn(),1),GAi=xt(Ro(),1);Fl();var FAi=xt(Dc(),1),rht=xt(Fs(),1);import{rm as AEa}from"node:fs/promises";import{join as TAi}from"node:path";var Sfr=xt(Dc(),1),Qfe=xt(Dc(),1),wfr=xt(Fs(),1),CAi=xt(QAt(),1),JF=xt(Fs(),1);import{isAbsolute as uEa}from"node:path";import{relative as gEa}from"node:path";var eht=({messageText:e,start:t,file:r,code:s,cwd:a=process.cwd()})=>{let o=(0,wfr.useMemo)(()=>r?uEa(r.fileName)?gEa(a,r.fileName):r.fileName:null,[r]),g=(0,wfr.useMemo)(()=>r&&t?r.getLineAndCharacterOfPosition(t):null,[r,t]);return JF.default.createElement(Qfe.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",paddingY:1,width:"100%"},!!o&&JF.default.createElement(Qfe.Box,{flexDirection:"row"},JF.default.createElement(Qfe.Box,{marginBottom:1,paddingX:2,flexGrow:1},JF.default.createElement(PO,{line:g?g.line+1:1,column:g?.character},o)),JF.default.createElement(Qfe.Box,{paddingX:2},JF.default.createElement(Sfr.Text,{bold:!0,color:"red"},"TS",s))),JF.default.createElement(DD,{offset:2}),!!r?.text&&!!g&&JF.default.createElement(JF.default.Fragment,null,JF.default.createElement(Qfe.Box,null,JF.default.createElement(MO,{line:g.line+1,column:g.character},r.text)),JF.default.createElement(DD,{offset:2})),JF.default.createElement(Qfe.Box,{marginTop:1,paddingX:2},JF.default.createElement(Sfr.Text,{color:"white"},(0,CAi.flattenDiagnosticMessageText)(e,` -`))))};var uHe=xt(Dc(),1),SAi=xt(Fs(),1),wAi=xt(Fs(),1),Yfe=xt(Fs(),1);var mAi=xt(Fs(),1),hAi=xt(Fs(),1),_Ai=xt(Fs(),1),yAi=xt(Fs(),1),bAi=({typescript:e})=>{let[t,r]=(0,hAi.useState)(10),s=(0,_Ai.useRef)();return(0,mAi.useEffect)(()=>{s.current=setInterval(()=>{r(o=>o+10)},100);let a=()=>{setTimeout(()=>{r(100),s.current&&clearInterval(s.current)},600)};return e.on("end",a),()=>{e.off("end",a),s.current&&clearInterval(s.current)}},[e,s,r]),yAi.default.createElement(fM,{value:t/100*100})};var MSe=xt(Dc(),1),aq=xt(Dc(),1),EAi=xt(Fs(),1),BAi=xt(Fs(),1),Lk=xt(Fs(),1);var vAi=({typescript:e})=>{let[t,r]=(0,BAi.useState)(0);return(0,EAi.useEffect)(()=>{let s=a=>{r(a.files.length)};return e.on("start",s),()=>{e.off("start",s)}},[e,r]),t===0?Lk.default.createElement(MSe.Box,{flexDirection:"row"},Lk.default.createElement(Dk,{color:"cyan"},"TypeScript:"),Lk.default.createElement(aq.Text,null," "),Lk.default.createElement(aq.Text,{color:"white"},"Loading files...")):Lk.default.createElement(MSe.Box,{flexDirection:"row",width:"100%"},Lk.default.createElement(MSe.Box,{flexGrow:1},Lk.default.createElement(Dk,{color:"cyan"},"TypeScript:"),Lk.default.createElement(aq.Text,null," "),Lk.default.createElement(aq.Text,{color:"white"},"Processing...")),Lk.default.createElement(MSe.Box,{flexDirection:"row"},Lk.default.createElement(MSe.Box,null,Lk.default.createElement(aq.Text,{color:"green"},yI.tick),Lk.default.createElement(aq.Text,null," "),Lk.default.createElement(aq.Text,{color:"white"},t," Files"),Lk.default.createElement(aq.Text,null," "))))};var tht=({typescript:e})=>{let[t,r]=(0,SAi.useState)(!1);return(0,wAi.useEffect)(()=>{let s=()=>{setTimeout(()=>{r(!0)},1e3)};return e.on("end",s),()=>{e.off("end",s)}},[r]),t?null:Yfe.default.createElement(uHe.Box,{position:"relative",height:7},Yfe.default.createElement(uHe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%"},Yfe.default.createElement(uHe.Box,null,Yfe.default.createElement(vAi,{typescript:e})),Yfe.default.createElement(uHe.Box,{marginTop:1,marginBottom:1},Yfe.default.createElement(bAi,{typescript:e}))))};var gHe=class extends NAi.BaseCommand{static paths=[["library","build"]];target=ed.String("-t,--target","./dist");async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(Tfr.Filename.pnpCjs)&&t.includes(Tfr.Filename.pnpEsmLoader)?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await RAi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await DAi.Project.find(t,this.context.cwd),s=[];this.target&&(s.push("-t"),s.push(this.target));let a=await GAi.xfs.mktempPromise(),{code:o}=await kAi.execUtils.pipevp("yarn",["library","build",...s],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:await xAi.scriptUtils.makeScriptEnv({binFolder:a,project:r})});return o}async executeRegular(){await this.cleanTarget();let t=await xie.initialize(this.context.cwd),{clear:r}=(0,FAi.render)(rht.default.createElement(tht,{typescript:t}));try{let s=await t.build([TAi(this.context.cwd,"./src")],{outDir:TAi(this.context.cwd,this.target),declaration:!0});return s.forEach(a=>{ky(rht.default.createElement(eht,{...a})).split(` -`).forEach(g=>{console.log(g)})}),s.length===0?0:1}catch(s){return ky(rht.default.createElement(WD,{error:s})).split(` -`).forEach(a=>{console.error(a)}),1}finally{r()}}async cleanTarget(){try{await AEa(this.target,{recursive:!0,force:!0})}catch{}}};var ZAi=(e,t)=>{t.publishConfig&&t.publishConfig.exports&&(t.exports=t.publishConfig.exports)};var LAi={hooks:{beforeWorkspacePacking:ZAi},commands:[gHe]};var Zfr={};jf(Zfr,{LintCommand:()=>pHe,default:()=>rdi});var zAi=xt(nl(),1),kfr=xt(Bn(),1),Gfr=xt(Bn(),1),Ffr=xt(Ro(),1),qAi=xt(Bn(),1),$Ai=xt(Bn(),1),edi=xt(Ro(),1);Fl();var tdi=xt(Dc(),1),nht=xt(Fs(),1);var dHe=xt(Dc(),1),YAi=xt(Fs(),1),HAi=xt(Fs(),1),Hfe=xt(Fs(),1);var VAi=xt(Fs(),1),Rfr=xt(Fs(),1),WAi=xt(Fs(),1),PAi=({linter:e})=>{let[t,r]=(0,Rfr.useState)(0),[s,a]=(0,Rfr.useState)(0);return(0,VAi.useEffect)(()=>{let o=({files:f})=>{r(f.length)},g=()=>{a(f=>f+1)},p=()=>{a(t)};return e.on("start",o),e.on("lint:end",g),e.on("end",p),()=>{e.off("start",o),e.off("lint:end",g),e.off("end",p)}},[e,t,r,a]),WAi.default.createElement(fM,{value:t>0?s/t*100:0})};import{relative as OAi}from"node:path";var QSe=xt(Dc(),1),JD=xt(Dc(),1),MAi=xt(Fs(),1),AHe=xt(Fs(),1),AE=xt(Fs(),1);var dEa=({state:e})=>e==="warning"?AE.default.createElement(JD.Text,{color:"yellow"},yI.warning):e==="error"?AE.default.createElement(JD.Text,{color:"red"},yI.cross):e==="success"?AE.default.createElement(JD.Text,{color:"green"},yI.tick):AE.default.createElement(JD.Text,{color:"white"},yI.circleDotted),pEa=({state:e,children:t})=>e==="in-progress"?AE.default.createElement(JD.Text,{color:"gray"},t):AE.default.createElement(JD.Text,{color:"white"},t),QAi=({cwd:e,linter:t})=>{let[r,s]=(0,AHe.useState)(void 0),[a,o]=(0,AHe.useState)(0),[g,p]=(0,AHe.useState)(0),[f,m]=(0,AHe.useState)(0);return(0,MAi.useEffect)(()=>{let y=G=>{o(G.files.length)},B=G=>{s({state:"in-progress",file:OAi(e,G.file)})},v=({result:G})=>{let T="success";G.warningCount>0&&(m(O=>O+G.warningCount),T="warning"),G.errorCount>0&&(p(O=>O+G.errorCount),T="error"),s({state:T,file:OAi(e,G.filePath)})};return t.on("start",y),t.on("lint:start",B),t.on("lint:end",v),()=>{t.off("start",y),t.off("lint:start",B),t.off("lint:end",v)}},[t,s,o,p,m]),r?AE.default.createElement(QSe.Box,{flexDirection:"row",width:"100%"},AE.default.createElement(QSe.Box,{flexGrow:1},AE.default.createElement(Dk,{color:"cyan"},"Lint:"),AE.default.createElement(JD.Text,null," "),AE.default.createElement(pEa,{state:r.state},r.file)),AE.default.createElement(QSe.Box,{flexDirection:"row"},AE.default.createElement(QSe.Box,null,AE.default.createElement(dEa,{state:r.state}),AE.default.createElement(JD.Text,null," "),AE.default.createElement(JD.Text,{color:"yellow"},f," Warnings"),AE.default.createElement(JD.Text,null," "),AE.default.createElement(JD.Text,{color:"red"},g," Errors"),AE.default.createElement(JD.Text,null," "),AE.default.createElement(JD.Text,{color:"white"},a," Files"),AE.default.createElement(JD.Text,null," ")))):AE.default.createElement(QSe.Box,{flexDirection:"row"},AE.default.createElement(Dk,{color:"cyan"},"Lint:"),AE.default.createElement(JD.Text,null," "),AE.default.createElement(JD.Text,{color:"white"},"Loading files..."))};var XAi=({cwd:e,linter:t})=>{let[r,s]=(0,YAi.useState)(!1);return(0,HAi.useEffect)(()=>{let a=()=>{setTimeout(()=>{s(!0)},1)};return t.on("end",a),()=>{t.off("end",a)}},[s]),r?null:Hfe.default.createElement(dHe.Box,{position:"relative",height:7},Hfe.default.createElement(dHe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%"},Hfe.default.createElement(dHe.Box,null,Hfe.default.createElement(QAi,{cwd:e,linter:t})),Hfe.default.createElement(dHe.Box,{marginTop:1,marginBottom:1},Hfe.default.createElement(PAi,{linter:t}))))};var Dfr=xt(Dc(),1),Jse=xt(Dc(),1),Vk=xt(Fs(),1);var JAi=({filePath:e,message:t,source:r})=>Vk.default.createElement(Jse.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:"100%"},Vk.default.createElement(Jse.Box,{marginBottom:1,marginTop:1,marginX:2},Vk.default.createElement(Jse.Box,{flexDirection:"row",flexGrow:1},Vk.default.createElement(PO,{line:t.line,column:t.column},e)),Vk.default.createElement(Jse.Box,null,Vk.default.createElement(Dfr.Text,{color:"gray"}," ",t.ruleId))),Vk.default.createElement(Jse.Box,null,Vk.default.createElement(DD,{offset:2})),!!r&&Vk.default.createElement(Vk.default.Fragment,null,Vk.default.createElement(Jse.Box,{marginBottom:1},Vk.default.createElement(MO,{line:t.line,column:t.column},r)),Vk.default.createElement(DD,{offset:2})),Vk.default.createElement(Jse.Box,{marginBottom:1,marginTop:1,marginX:2},Vk.default.createElement(Dfr.Text,{color:"white"}," ",t.message)));var UAi=xt(Dc(),1);import{isAbsolute as fEa}from"node:path";import{relative as IEa}from"node:path";var KAi=xt(Fs(),1),xfr=xt(Fs(),1);var jAi=({filePath:e,source:t,messages:r,cwd:s=process.cwd()})=>{let a=(0,KAi.useMemo)(()=>fEa(e)?IEa(s,e):e,[e]);return r.length===0?null:xfr.default.createElement(UAi.Box,{flexDirection:"column",width:"100%"},r.map(o=>xfr.default.createElement(JAi,{key:SW(),filePath:a,message:o,source:t})))};var pHe=class extends zAi.BaseCommand{static paths=[["lint"]];fix=ed.Boolean("--fix");files=ed.Rest({required:0});cache=ed.Boolean("--cache",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(Ffr.Filename.pnpCjs)&&t.includes(Ffr.Filename.pnpEsmLoader)?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await kfr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Gfr.Project.find(t,this.context.cwd),s=await edi.xfs.mktempPromise(),a=[];this.fix&&a.push("--fix"),this.cache&&a.push("--cache");let{code:o}=await qAi.execUtils.pipevp("yarn",["lint",...a,...this.files],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:await $Ai.scriptUtils.makeScriptEnv({binFolder:s,project:r})});return o}async executeRegular(){let t=await kfr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Gfr.Project.find(t,this.context.cwd),s=await A1e.initialize(r.cwd,this.context.cwd),{clear:a}=(0,tdi.render)(nht.default.createElement(XAi,{cwd:r.cwd,linter:s}));s.on("lint:end",({result:o})=>{o.messages.length>0&&ky(nht.default.createElement(jAi,{...o})).split(` -`).forEach(p=>{console.log(p)})});try{return(await s.lint(this.files,{fix:this.fix,cache:this.cache})).find(g=>g.messages.length>0)?1:0}catch(o){return o instanceof Error?ky(nht.default.createElement(WD,{error:o})).split(` -`).forEach(g=>{console.error(g)}):console.error(o),1}finally{a()}}};var rdi={commands:[pHe]};var Kfr={};jf(Kfr,{default:()=>Gdi});var Ndi=xt(nl(),1),Rdi=xt(nl(),1),Ddi=xt(Bn(),1),xdi=xt(Bn(),1),kdi=xt(Bn(),1);import CHe from"node:assert/strict";import{execSync as n1a}from"node:child_process";function Use(){return typeof navigator=="object"&&"userAgent"in navigator?navigator.userAgent:typeof process=="object"&&process.version!==void 0?`Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`:""}function iht(e,t,r,s){if(typeof r!="function")throw new Error("method for before hook must be a function");return s||(s={}),Array.isArray(t)?t.reverse().reduce((a,o)=>iht.bind(null,e,o,a,s),r)():Promise.resolve().then(()=>e.registry[t]?e.registry[t].reduce((a,o)=>o.hook.bind(null,a,s),r)():r(s))}function ndi(e,t,r,s){let a=s;e.registry[r]||(e.registry[r]=[]),t==="before"&&(s=(o,g)=>Promise.resolve().then(a.bind(null,g)).then(o.bind(null,g))),t==="after"&&(s=(o,g)=>{let p;return Promise.resolve().then(o.bind(null,g)).then(f=>(p=f,a(p,g))).then(()=>p)}),t==="error"&&(s=(o,g)=>Promise.resolve().then(o.bind(null,g)).catch(p=>a(p,g))),e.registry[r].push({hook:s,orig:a})}function idi(e,t,r){if(!e.registry[t])return;let s=e.registry[t].map(a=>a.orig).indexOf(r);s!==-1&&e.registry[t].splice(s,1)}var sdi=Function.bind,odi=sdi.bind(sdi);function adi(e,t,r){let s=odi(idi,null).apply(null,r?[t,r]:[t]);e.api={remove:s},e.remove=s,["before","error","after","wrap"].forEach(a=>{let o=r?[t,a,r]:[t,a];e[a]=e.api[a]=odi(ndi,null).apply(null,o)})}function CEa(){let e=Symbol("Singular"),t={registry:{}},r=iht.bind(null,t,e);return adi(r,t,e),r}function mEa(){let e={registry:{}},t=iht.bind(null,e);return adi(t,e),t}var cdi={Singular:CEa,Collection:mEa};var hEa="0.0.0-development",_Ea=`octokit-endpoint.js/${hEa} ${Use()}`,yEa={method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":_Ea},mediaType:{format:""}};function bEa(e){return e?Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{}):{}}function EEa(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}function gdi(e,t){let r=Object.assign({},e);return Object.keys(t).forEach(s=>{EEa(t[s])?s in e?r[s]=gdi(e[s],t[s]):Object.assign(r,{[s]:t[s]}):Object.assign(r,{[s]:t[s]})}),r}function ldi(e){for(let t in e)e[t]===void 0&&delete e[t];return e}function Vfr(e,t,r){if(typeof t=="string"){let[a,o]=t.split(" ");r=Object.assign(o?{method:a,url:o}:{url:a},r)}else r=Object.assign({},t);r.headers=bEa(r.headers),ldi(r),ldi(r.headers);let s=gdi(e||{},r);return r.url==="/graphql"&&(e&&e.mediaType.previews?.length&&(s.mediaType.previews=e.mediaType.previews.filter(a=>!s.mediaType.previews.includes(a)).concat(s.mediaType.previews)),s.mediaType.previews=(s.mediaType.previews||[]).map(a=>a.replace(/-preview/,""))),s}function BEa(e,t){let r=/\?/.test(e)?"&":"?",s=Object.keys(t);return s.length===0?e:e+r+s.map(a=>a==="q"?"q="+t.q.split("+").map(encodeURIComponent).join("+"):`${a}=${encodeURIComponent(t[a])}`).join("&")}var vEa=/\{[^}]+\}/g;function SEa(e){return e.replace(/^\W+|\W+$/g,"").split(/,/)}function wEa(e){let t=e.match(vEa);return t?t.map(SEa).reduce((r,s)=>r.concat(s),[]):[]}function udi(e,t){let r={__proto__:null};for(let s of Object.keys(e))t.indexOf(s)===-1&&(r[s]=e[s]);return r}function Adi(e){return e.split(/(%[0-9A-Fa-f]{2})/g).map(function(t){return/%[0-9A-Fa-f]/.test(t)||(t=encodeURI(t).replace(/%5B/g,"[").replace(/%5D/g,"]")),t}).join("")}function HSe(e){return encodeURIComponent(e).replace(/[!'()*]/g,function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()})}function fHe(e,t,r){return t=e==="+"||e==="#"?Adi(t):HSe(t),r?HSe(r)+"="+t:t}function YSe(e){return e!=null}function Lfr(e){return e===";"||e==="&"||e==="?"}function TEa(e,t,r,s){var a=e[r],o=[];if(YSe(a)&&a!=="")if(typeof a=="string"||typeof a=="number"||typeof a=="boolean")a=a.toString(),s&&s!=="*"&&(a=a.substring(0,parseInt(s,10))),o.push(fHe(t,a,Lfr(t)?r:""));else if(s==="*")Array.isArray(a)?a.filter(YSe).forEach(function(g){o.push(fHe(t,g,Lfr(t)?r:""))}):Object.keys(a).forEach(function(g){YSe(a[g])&&o.push(fHe(t,a[g],g))});else{let g=[];Array.isArray(a)?a.filter(YSe).forEach(function(p){g.push(fHe(t,p))}):Object.keys(a).forEach(function(p){YSe(a[p])&&(g.push(HSe(p)),g.push(fHe(t,a[p].toString())))}),Lfr(t)?o.push(HSe(r)+"="+g.join(",")):g.length!==0&&o.push(g.join(","))}else t===";"?YSe(a)&&o.push(HSe(r)):a===""&&(t==="&"||t==="?")?o.push(HSe(r)+"="):a===""&&o.push("");return o}function NEa(e){return{expand:REa.bind(null,e)}}function REa(e,t){var r=["+","#",".","/",";","?","&"];return e=e.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g,function(s,a,o){if(a){let p="",f=[];if(r.indexOf(a.charAt(0))!==-1&&(p=a.charAt(0),a=a.substr(1)),a.split(/,/g).forEach(function(m){var y=/([^:\*]*)(?::(\d+)|(\*))?/.exec(m);f.push(TEa(t,p,y[1],y[2]||y[3]))}),p&&p!=="+"){var g=",";return p==="?"?g="&":p!=="#"&&(g=p),(f.length!==0?p:"")+f.join(g)}else return f.join(",")}else return Adi(o)}),e==="/"?e:e.replace(/\/$/,"")}function ddi(e){let t=e.method.toUpperCase(),r=(e.url||"/").replace(/:([a-z]\w+)/g,"{$1}"),s=Object.assign({},e.headers),a,o=udi(e,["method","baseUrl","url","headers","request","mediaType"]),g=wEa(r);r=NEa(r).expand(o),/^http/.test(r)||(r=e.baseUrl+r);let p=Object.keys(e).filter(y=>g.includes(y)).concat("baseUrl"),f=udi(o,p);if(!/application\/octet-stream/i.test(s.accept)&&(e.mediaType.format&&(s.accept=s.accept.split(/,/).map(y=>y.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/,`application/vnd$1$2.${e.mediaType.format}`)).join(",")),r.endsWith("/graphql")&&e.mediaType.previews?.length)){let y=s.accept.match(/[\w-]+(?=-preview)/g)||[];s.accept=y.concat(e.mediaType.previews).map(B=>{let v=e.mediaType.format?`.${e.mediaType.format}`:"+json";return`application/vnd.github.${B}-preview${v}`}).join(",")}return["GET","HEAD"].includes(t)?r=BEa(r,f):"data"in f?a=f.data:Object.keys(f).length&&(a=f),!s["content-type"]&&typeof a<"u"&&(s["content-type"]="application/json; charset=utf-8"),["PATCH","PUT"].includes(t)&&typeof a>"u"&&(a=""),Object.assign({method:t,url:r,headers:s},typeof a<"u"?{body:a}:null,e.request?{request:e.request}:null)}function DEa(e,t,r){return ddi(Vfr(e,t,r))}function pdi(e,t){let r=Vfr(e,t),s=DEa.bind(null,r);return Object.assign(s,{DEFAULTS:r,defaults:pdi.bind(null,r),merge:Vfr.bind(null,r),parse:ddi})}var fdi=pdi(null,yEa);var Xfe=class extends Error{name;status;request;response;constructor(t,r,s){super(t),this.name="HttpError",this.status=Number.parseInt(r),Number.isNaN(this.status)&&(this.status=0),"response"in s&&(this.response=s.response);let a=Object.assign({},s.request);s.request.headers.authorization&&(a.headers=Object.assign({},s.request.headers,{authorization:s.request.headers.authorization.replace(/ .*$/," [REDACTED]")})),a.url=a.url.replace(/\bclient_secret=\w+/g,"client_secret=[REDACTED]").replace(/\baccess_token=\w+/g,"access_token=[REDACTED]"),this.request=a}};var xEa="0.0.0-development",kEa={headers:{"user-agent":`octokit-request.js/${xEa} ${Use()}`}};function GEa(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}async function Idi(e){let t=e.request?.fetch||globalThis.fetch;if(!t)throw new Error("fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing");let r=e.request?.log||console,s=e.request?.parseSuccessResponseBody!==!1,a=GEa(e.body)||Array.isArray(e.body)?JSON.stringify(e.body):e.body,o=Object.fromEntries(Object.entries(e.headers).map(([B,v])=>[B,String(v)])),g;try{g=await t(e.url,{method:e.method,body:a,redirect:e.request?.redirect,headers:o,signal:e.request?.signal,...e.body&&{duplex:"half"}})}catch(B){let v="Unknown Error";if(B instanceof Error){if(B.name==="AbortError")throw B.status=500,B;v=B.message,B.name==="TypeError"&&"cause"in B&&(B.cause instanceof Error?v=B.cause.message:typeof B.cause=="string"&&(v=B.cause))}let G=new Xfe(v,500,{request:e});throw G.cause=B,G}let p=g.status,f=g.url,m={};for(let[B,v]of g.headers)m[B]=v;let y={url:f,status:p,headers:m,data:""};if("deprecation"in m){let B=m.link&&m.link.match(/<([^>]+)>; rel="deprecation"/),v=B&&B.pop();r.warn(`[@octokit/request] "${e.method} ${e.url}" is deprecated. It is scheduled to be removed on ${m.sunset}${v?`. See ${v}`:""}`)}if(p===204||p===205)return y;if(e.method==="HEAD"){if(p<400)return y;throw new Xfe(g.statusText,p,{response:y,request:e})}if(p===304)throw y.data=await Wfr(g),new Xfe("Not modified",p,{response:y,request:e});if(p>=400)throw y.data=await Wfr(g),new Xfe(FEa(y.data),p,{response:y,request:e});return y.data=s?await Wfr(g):g.body,y}async function Wfr(e){let t=e.headers.get("content-type");return/application\/json/.test(t)?e.json().catch(()=>e.text()).catch(()=>""):!t||/^text\/|charset=utf-8$/.test(t)?e.text():e.arrayBuffer()}function FEa(e){if(typeof e=="string")return e;if(e instanceof ArrayBuffer)return"Unknown error";if("message"in e){let t="documentation_url"in e?` - ${e.documentation_url}`:"";return Array.isArray(e.errors)?`${e.message}: ${e.errors.map(r=>JSON.stringify(r)).join(", ")}${t}`:`${e.message}${t}`}return`Unknown error: ${JSON.stringify(e)}`}function Pfr(e,t){let r=e.defaults(t);return Object.assign(function(a,o){let g=r.merge(a,o);if(!g.request||!g.request.hook)return Idi(r.parse(g));let p=(f,m)=>Idi(r.parse(r.merge(f,m)));return Object.assign(p,{endpoint:r,defaults:Pfr.bind(null,r)}),g.request.hook(p,g)},{endpoint:r,defaults:Pfr.bind(null,r)})}var IHe=Pfr(fdi,kEa);var ZEa="0.0.0-development";function LEa(e){return`Request failed due to following response errors: +`:"",a=Gli(e);e=JSON.parse(e);let o=JSON.stringify(t(e),null,r)+s;return a===`\r +`&&(o=o.replace(/\n/g,a)),o}return t(e)}var V_a=e=>e[0]==="_",W_a=(e,t)=>e.reduce((r,s)=>(r[t(s)?0:1].push(s),r),[[],[]]);function P_a(e,t={}){return L_a(e,JMe(r=>{let s=t.sortOrder||Zli;if(Array.isArray(s)){let a=Object.keys(r),[o,g]=W_a(a,V_a);s=[...s,...Zli,...g.sort(),...o.sort()]}return Z_a((0,XMe.default)(r,s),r)}))}var Pli=P_a;var Dmt=class{constructor(t){this.program=t}parseImports(t){return this.program.body.filter(s=>s.type==="ImportDeclaration").map(s=>{let a={start:s.range[0],end:s.range[1],importStart:s.range[0],importEnd:s.range[1],type:s.importKind==="type"?"import-type":"import",moduleName:s.source.value,defaultMember:s.specifiers.find(f=>f.type==="ImportDefaultSpecifier")?.local.name,namespaceMember:s.specifiers.find(f=>f.type==="ImportNamespaceSpecifier")?.local.name,namedMembers:s.specifiers.filter(f=>f.type==="ImportSpecifier").map(f=>({name:f.imported.name,alias:f.local.name,type:s.importKind==="type"}))},o=this.program.comments.find(f=>f.loc.start.line===s.loc.start.line&&f.loc.end.line===s.loc.end.line);o&&(a.end=o.range[1]);let g=f=>{let m=this.program.comments.find(B=>B.loc.start.line===f);return m?[...g(m.loc.start.line-1),m]:[]},p=g(s.loc.start.line-1);return p.length>0&&(a.start=p.at(0).range.at(0)),a})}formatImport(t,r,s=` +`){let a=r.importStart||r.start,o=r.importEnd||r.end,g=t.substring(a,o),{namedMembers:p}=r;if(p.length===0)return t.substring(r.start,r.end);let f=g.replace(/\{[\s\S]*\}/g,m=>{let y=m.includes(s),B;y&&([B]=m.split(s)[1].match(/^\s*/));let v=m.charAt(1)===" ",k=m.replace("}","").trim().endsWith(",");return this.formatNamedMembers(p,y,v,k,B,s)});return t.substring(r.start,a)+f+t.substring(o,o+(r.end-o))}formatNamedMembers(t,r,s,a,o="",g=` +`){if(r)return"{"+g+t.map(({name:m,alias:y},B)=>{let v=B===t.length-1,k=!a&&v?"":",";return m===y?`${o}${m}${k}`+g:`${o}${m} as ${y}${k}`+g}).join("")+"}";let p=s?" ":"",f=a?",":"";return"{"+p+t.map(({name:m,alias:y})=>m===y?`${m}`:`${m} as ${y}`).join(", ")+f+p+"}"}};var Zui=vt(Dui(),1);import{readFileSync as xui}from"node:fs";import{join as kui}from"node:path";var hya=()=>{let e=new Set;try{let{workspaces:t}=JSON.parse(xui(kui(process.cwd(),"/package.json"),"utf-8"));t&&t.length>0&&_vn(t,{cwd:process.cwd(),onlyDirectories:!0,absolute:!0,expandDirectories:{files:["package.json"],extensions:["json"]}}).forEach(s=>{try{let{name:a}=JSON.parse(xui(kui(s,"package.json"),"utf-8"));a.startsWith("@")&&e.add(a)}catch{}})}catch(t){console.log(t)}return Array.from(e)},_ya=hya(),bR=e=>_ya.some(t=>e.moduleName.startsWith(t)),Gui=e=>e.moduleName.startsWith("node:"),_Y=e=>e.type==="import-type";var Fui=({and:e,hasDefaultMember:t,hasOnlyNamedMembers:r,hasNoMember:s,hasNamespaceMember:a,isAbsoluteModule:o,isRelativeModule:g,isScopedModule:p,moduleName:f,naturally:m,member:y,not:B,startsWithLowerCase:v,startsWithUpperCase:k})=>{let T=[{match:e(s,o,B(bR)),sort:f(m)},{match:e(s,o,bR),sort:f(m)},{match:e(s,g),sort:f(m)}],O=[{match:e(_Y,o,a),sort:f(m)},{match:e(_Y,o,r,y(k)),sort:f(m)},{match:e(_Y,o,r,y(v)),sort:f(m)},{match:e(_Y,o,t,y(k)),sort:f(m)},{match:e(_Y,o,t,y(v)),sort:f(m)}],X=[{match:e(_Y,g,a),sort:f(m)},{match:e(_Y,g,r,y(k)),sort:f(m)},{match:e(_Y,g,r,y(v)),sort:f(m)},{match:e(_Y,g,t,y(k)),sort:f(m)},{match:e(_Y,g,t,y(v)),sort:f(m)}],U=[{match:Gui,sort:f(m)}],le=[{match:e(p,B(bR),a),sort:f(m)},{match:e(p,B(bR),r,y(k)),sort:f(m)},{match:e(p,B(bR),r,y(v)),sort:f(m)},{match:e(p,B(bR),t,y(k)),sort:f(m)},{match:e(p,B(bR),t,y(v)),sort:f(m)},{match:e(o,B(bR),B(p),a),sort:f(m)},{match:e(o,B(p),B(bR),r,y(k)),sort:f(m)},{match:e(o,B(p),B(bR),r,y(v)),sort:f(m)},{match:e(o,B(p),B(bR),t,y(k)),sort:f(m)},{match:e(o,B(p),B(bR),t,y(v)),sort:f(m)}],ae=[{match:e(bR,a),sort:f(m)},{match:e(bR,r,y(k)),sort:f(m)},{match:e(bR,r,y(v)),sort:f(m)},{match:e(bR,t,y(k)),sort:f(m)},{match:e(bR,t,y(v)),sort:f(m)}],ge=[{match:e(g,a),sort:f(m)},{match:e(g,r,y(k)),sort:f(m)},{match:e(g,r,y(v)),sort:f(m)},{match:e(g,t,y(k)),sort:f(m)},{match:e(g,t,y(v)),sort:f(m)}];return[...T,{separator:!0},...O,{separator:!0},...X,{separator:!0},...U,{separator:!0},...le,{separator:!0},...ae,{separator:!0},...ge,{separator:!0}]};var yya=e=>e.find(r=>typeof r=="string"||!r.parsers?!1:r.parsers.typescript)?.parsers?.typescript||null,Lui=(e,{plugins:t})=>{let r=yya(t),s=new Dmt(r.parse(e)),{code:a}=(0,Zui.sortImports)(e,s,Fui);return a};var bya=(e,t)=>Lui(e,t),Eya=async(e,{plugins:t})=>{let s=t.find(g=>typeof g!="string"&&g.parsers?.typescript).parsers.typescript.parse(e),a=s.body.length;return[...s.body].reverse().forEach((g,p)=>{if(g.type==="ImportDeclaration"&&g.specifiers.length>1){let f=a-p-1;s.body.splice(f,1),g.specifiers.forEach((m,y)=>{s.body.splice(f+y,0,{...g,specifiers:g.specifiers.filter((B,v)=>y===v)})})}}),s},jpr={typescript:{...Uz.typescript,astFormat:"typescript-custom",preprocess:bya,parse:Eya},"json-stringify":{...Tve["json-stringify"],preprocess(e,t){return Tve["json-stringify"].preprocess&&(e=Tve["json-stringify"].preprocess(e,t)),t.filepath&&/(^|\\|\/)package\.json$/.test(t.filepath)?Pli(e):e}}};var Fmt=async()=>{let e;return await PSe("const n = 5;",{plugins:[V5e,Nve,{...SSe,parsers:{...Uz,typescript:{...Uz.typescript,parse(t,r){return e=r.plugins.find(a=>a.printers?.estree).printers.estree,Uz.typescript.parse(t,r)}}}}],parser:"typescript"}),e};var Bya=Fmt(),Vui=e=>{if(e.specifiers.length===0)return 0;let t=e.specifiers[e.specifiers.length-1],r=t.imported?8:6;return t.loc.end.column+r},vya=(e,t,r)=>{let s=e.getNode(),o=t.plugins.find(g=>typeof g!="string"&&g.printers?.estree).printers.estree.print(e,t,r);return s?.type==="ImportDeclaration"&&(o=o.map(g=>{if(Array.isArray(g)&&g[0]===" from"&&s.alignOffset>0){let p=Array.apply(0,Array(s.alignOffset)).fill(" ").join("");g[0]=`${p} from`}return g})),o},Sya=async e=>{let t=e.body.filter(a=>a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line),r=t.map(a=>Vui(a)),s=t.length>0?Math.max(...r):0;return e.body.forEach(a=>{if(a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line){a.alignOffset=0;let o=Vui(a);a.alignOffset=o{if(e.specifiers.length===0)return 0;let t=e.specifiers[e.specifiers.length-1],r=t.imported?8:6;return t.loc.end.column+r},Tya=(e,t,r)=>{let s=e.getNode(),o=t.plugins.find(g=>typeof g!="string"&&g.printers?.estree).printers.estree.print(e,t,r);return s?.type==="ImportDeclaration"&&(o=o.map(g=>{if(Array.isArray(g)&&g[0]===" from"&&s.alignOffset>0){let p=Array.apply(0,Array(s.alignOffset)).fill(" ").join("");g[0]=`${p} from`}return g})),o},Nya=async e=>{let t=e.body.filter(a=>a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line),r=t.map(a=>Wui(a)),s=t.length>0?Math.max(...r):0;return e.body.forEach(a=>{if(a.type==="ImportDeclaration"&&a.loc&&a.loc.end.line===a.loc.start.line){a.alignOffset=0;let o=Wui(a);a.alignOffset=o({"typescript-custom":{...await Fmt(),preprocess:Nya,print:Tya}});var Oui=async()=>({printers:await Pui(),parsers:jpr});var Rya={semi:!1,singleQuote:!0,tabWidth:2,jsxSingleQuote:!0,printWidth:100,trailingComma:"es5"},Qui=Rya;import{join as Dya}from"node:path";var Mui=[".c9",".pnp.js",".pnp.cjs",".pnp.loader.mjs",".git","node_modules","coverage","dist","lib",".yarn",".vscode",".next","**/**/dist/*","**/**/lib/*","**/**/templates/*.yaml","**/templates/*.yaml",".terraform",".idea"],xya=["./**/*.{js,mjs,cjs,ts,tsx,yml,yaml,json,graphql,md,mdx}"],kya=["!**/node_modules/**","!./node_modules/**","!**/.{git,svn,hg}/**","!./.{git,svn,hg}/**","!**/.yarn/**","!./.yarn/**","!**/.idea/**","!./.idea/**"],Hui=e=>[...xya.map(t=>Dya(e,t)),...kya];var Zmt=class e extends Gya{constructor(r){super();this.cwd=r}static async initialize(r){return new e(r)}async format(r){r&&r.length>0?await this.formatFiles(r):await this.formatProject()}async formatFiles(r=[]){let s=await Oui(),a=Xui.default.default().add(Mui).add(await this.getProjectIgnorePatterns()).filter(r.map(o=>Zya(this.cwd,o)));this.emit("start",{files:a});for await(let o of a){this.emit("format:start",{file:o});let g=await Yui(o,"utf8"),p=await PSe(g,{...Qui,filepath:o,plugins:[V5e,tpr,aAr,Ogr,Nve,SSe,s]});p!==g&&p?(await Fya(o,p,"utf8"),this.emit("format:end",{file:o,changed:!0})):this.emit("format:end",{file:o,changed:!1})}this.emit("end")}async formatProject(){let r=await Pj(Hui(this.cwd),{dot:!0});await this.formatFiles(r)}async getProjectIgnorePatterns(){let r=await Yui(Lya(this.cwd,"package.json"),"utf-8"),{formatterIgnorePatterns:s=[]}=JSON.parse(r);return s}};var zpr=vt(Ac(),1),rHe=class extends Jui.BaseCommand{static paths=[["format"]];files=td.Rest({required:0});async execute(){let t=await Uui.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Kui.Project.find(t,this.context.cwd),s=await Zmt.initialize(this.context.cwd),{clear:a}=(0,jui.render)((0,zpr.jsx)(i$n,{cwd:r.cwd,formatter:s}));try{return await s.format(this.files),0}catch(o){return o instanceof Error?Gy((0,zpr.jsx)(MD,{error:o})).split(` +`).forEach(g=>{console.log(g)}):console.error(o),1}finally{a()}}};var zui={commands:[rHe]};var lfr={};zf(lfr,{ImagePackCommand:()=>oHe,default:()=>Pgi});var Fgi=vt(il(),1),Zgi=vt(Bn(),1),Lgi=vt(Bn(),1),Vgi=vt(Bn(),1),cfr=vt(Bn(),1),Wgi=vt(No(),1);Zl();import{readFileSync as hba}from"node:fs";import{join as _ba}from"node:path";var $pr=vt($2e(),1),qui=vt(Bn(),1),Vya=()=>{let e=$pr.context.payload;return process.env.GITHUB_PULL_REQUST_HEAD_SHA||e.after||e.pull_request?.head?.sha||process.env.GITHUB_SHA};var Wya=()=>{let e=$pr.context.payload;return String(e.pull_request?.number)},Pya=async()=>{if(process.env.GITHUB_EVENT_PATH&&process.env.GITHUB_TOKEN)return Vya();let{stdout:e}=await qui.execUtils.execvp("git",["log","-1",'--format="%H"'],{cwd:process.cwd(),strict:!0}),[t]=e.split(` +`);return t.replace(/"/g,"")},Oya=async()=>process.env.GITHUB_EVENT_PATH&&process.env.GITHUB_TOKEN?Wya():"local",$ui=async e=>{let t=await Pya(),r=t.substr(0,7);return e==="hash-timestamp"?`${r}-${Date.now()}`:e==="ctx-hash-timestamp"?`${await Oya()}-${r}-${Date.now()}`:t};var xgi=vt(Rgi(),1),sHe=vt(Bn(),1),afr=vt(No(),1),kgi=vt(No(),1);import{readFileSync as mba}from"node:fs";var Mfe=vt(Bn(),1);import{platform as Iba}from"node:os";import{arch as Cba}from"node:os";var Dgi=async({context:e,cwd:t})=>{let r;try{await Mfe.execUtils.pipevp("pack",["--version"],{cwd:t??e.cwd,env:process.env,stdin:e.stdin,stdout:e.stdout,stderr:e.stderr,end:Mfe.execUtils.EndStrategy.ErrorCode}),r=!0}catch{r=!1}if(!r){console.log("Buildpack CLI (pack) is not installed. Installing it...");let s="https://github.com/buildpacks/pack/releases/download/v0.36.2/pack-v0.36.2-",a=Iba(),o=Cba();switch(a){case"linux":s+="linux.tgz";break;case"darwin":o==="arm64"?s+="macos-arm64.tgz":s+="macos.tgz";break;default:break}let g=`${t??e.cwd}/pack.tgz`;await Mfe.execUtils.pipevp("curl",["-sSL","-o",g,s],{cwd:t??e.cwd,env:process.env,stdin:e.stdin,stdout:e.stdout,stderr:e.stderr,end:Mfe.execUtils.EndStrategy.ErrorCode}),await Mfe.execUtils.pipevp("tar",["-C","/usr/local/bin/","--no-same-owner","-xzv",g],{cwd:t??e.cwd,env:process.env,stdin:e.stdin,stdout:e.stdout,stderr:e.stderr,end:Mfe.execUtils.EndStrategy.ErrorCode}),console.log("Buildpack CLI (pack) has been installed.")}};var Ggi=async({workspace:e,registry:t,publish:r,tagPolicy:s,builder:a,buildpack:o,platform:g,require:p,cwd:f},m)=>{let y=e.replace("@","").replace(/\//g,"-"),B=`${t}${y}`,v=await $ui(s),k=[{name:"WORKSPACE",value:e},{name:"CNB_USER_ID",value:"1001"}];p&&p.length>0&&k.push({name:"BP_REQUIRE",value:p.join(",")});let T={_:{"schema-version":"0.2",id:y,name:y,version:"0.0.1"},io:{buildpacks:{exclude:[".git",".yarn/unplugged"],builder:a,build:{env:k}}}},O=kgi.ppath.join(await afr.xfs.mktempPromise(),"project.toml");await afr.xfs.writeFilePromise(O,(0,xgi.stringify)(T)),console.debug("project.toml",mba(O,"utf8"));let X=["build","--trust-builder",`${B}:${v}`,"--descriptor",O,"--buildpack",o,"--tag",`${B}:latest`,"--creation-time","now","--clear-cache","--verbose"];return r&&X.push("--publish"),g&&X.push("--platform",g),console.debug("Packing with args:",X),await Dgi({cwd:f,context:m}),await sHe.execUtils.pipevp("pack",["config","experimental","true"],{cwd:f??m.cwd,env:process.env,stdin:m.stdin,stdout:m.stdout,stderr:m.stderr,end:sHe.execUtils.EndStrategy.ErrorCode}),await sHe.execUtils.pipevp("pack",X,{cwd:f??m.cwd,env:process.env,stdin:m.stdin,stdout:m.stdout,stderr:m.stderr,end:sHe.execUtils.EndStrategy.ErrorCode}),{images:[`${B}:${v}`,`${B}:latest`],tags:[v,"latest"],workspace:e}};var oHe=class extends Fgi.BaseCommand{static paths=[["image","pack"]];registry=td.String("-r,--registry","");tagPolicy=td.String("-t,--tag-policy","revision");publish=td.Boolean("-p,--publish",!1);platform=td.String("--platform");async execute(){let t=await Zgi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Lgi.Project.find(t,this.context.cwd),s=r.getWorkspaceByFilePath(this.context.cwd);return(await Vgi.StreamReport.start({configuration:t,stdout:this.context.stdout},async o=>{if(!this.isWorkspaceAllowedForBundle(s)){o.reportInfo(null,`Workspace ${s.manifest.name?cfr.structUtils.prettyIdent(t,s.manifest.name):s.relativeCwd} not allowed for package.`);return}let g=await Wgi.xfs.mktempPromise();o.reportInfo(null,`Package workspace ${s.manifest.name?cfr.structUtils.prettyIdent(t,s.manifest.name):s.relativeCwd} to ${g}`);let p=hba(_ba(this.context.cwd,"package.json"),"utf-8"),{packConfiguration:f={}}=JSON.parse(p),m=f.buildpackVersion??"0.1.1",y=f.builderTag??"22",{require:B}=f;await mve.pack(t,r,s,o,g),await Ggi({workspace:s.manifest.raw.name,registry:this.registry,publish:this.publish,tagPolicy:this.tagPolicy,buildpack:`atlantislab/buildpack-yarn-workspace:${m}`,builder:`atlantislab/builder-base:${y}`,platform:this.platform,require:B,cwd:g},this.context)})).exitCode()}isWorkspaceAllowedForBundle(t){let{scripts:r,name:s}=t.manifest,a=r.get("build");return["actl service build","actl renderer build","build-storybook","storybook build","next build","builder build library","app service build","app renderer build","service build","renderer build","strapi build","astro build"].some(g=>a?.includes(g))&&!!s}};var Pgi={commands:[oHe]};var Rfr={};zf(Rfr,{default:()=>BAi});var mAi=vt(il(),1),hAi=vt(il(),1),_Ai=vt(Bn(),1),yAi=vt(Bn(),1),bAi=vt(Bn(),1),EAi=vt(No(),1);import BEa from"node:assert/strict";import{join as vEa}from"node:path";var CAi=vt(IAi(),1),tht=class{constructor(t){this.cwd=t}async publish(t){await(0,CAi.publish)(this.cwd,t)}};var rht=class extends mAi.BaseCommand{static paths=[["jsr","publish"]];async execute(){let t=await _Ai.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await bAi.Project.find(t,this.context.cwd);if(!s)throw new hAi.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await yAi.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await o.startTimerPromise("Publishing to JSR",async()=>{let g=process.env.GITHUB_TOKEN;BEa.ok(g,"GitHub Token is missing");let p=new tht(this.context.cwd),f=await EAi.xfs.mktempPromise();await p.publish({pkgJsonPath:vEa(this.context.cwd,"package.json"),canary:!1,publishArgs:["install"],binFolder:f})})})).exitCode()}};var BAi={commands:[rht]};var Gfr={};zf(Gfr,{LibraryBuildCommand:()=>dHe,default:()=>YAi});var LAi=vt(il(),1),VAi=vt(Bn(),1),WAi=vt(Bn(),1),kfr=vt(No(),1),PAi=vt(Bn(),1),OAi=vt(Bn(),1),QAi=vt(No(),1);Zl();var MAi=vt(xc(),1);import{rm as TEa}from"node:fs/promises";import{join as ZAi}from"node:path";var Dfr=vt(xc(),1),Kfe=vt(xc(),1),xfr=vt($a(),1),vAi=vt(YAt(),1);import{isAbsolute as SEa}from"node:path";import{relative as wEa}from"node:path";var zD=vt(Ac(),1),nht=({messageText:e,start:t,file:r,code:s,cwd:a=process.cwd()})=>{let o=(0,xfr.useMemo)(()=>r?SEa(r.fileName)?wEa(a,r.fileName):r.fileName:null,[r]),g=(0,xfr.useMemo)(()=>r&&t?r.getLineAndCharacterOfPosition(t):null,[r,t]);return(0,zD.jsxs)(Kfe.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",paddingY:1,width:"100%",children:[!!o&&(0,zD.jsxs)(Kfe.Box,{flexDirection:"row",children:[(0,zD.jsx)(Kfe.Box,{marginBottom:1,paddingX:2,flexGrow:1,children:(0,zD.jsx)(MO,{line:g?g.line+1:1,column:g?.character,children:o})}),(0,zD.jsx)(Kfe.Box,{paddingX:2,children:(0,zD.jsxs)(Dfr.Text,{bold:!0,color:"red",children:["TS",s]})})]}),(0,zD.jsx)(GD,{offset:2}),!!r?.text&&!!g&&(0,zD.jsxs)(zD.Fragment,{children:[(0,zD.jsx)(Kfe.Box,{children:(0,zD.jsx)(YO,{line:g.line+1,column:g.character,children:r.text})}),(0,zD.jsx)(GD,{offset:2})]}),(0,zD.jsx)(Kfe.Box,{marginTop:1,paddingX:2,children:(0,zD.jsx)(Dfr.Text,{color:"white",children:(0,vAi.flattenDiagnosticMessageText)(e,` +`)})})]})};var AHe=vt(xc(),1),GAi=vt($a(),1),FAi=vt($a(),1);var SAi=vt($a(),1),wAi=vt($a(),1),TAi=vt($a(),1),RAi=vt(Ac(),1),NAi=({typescript:e})=>{let[t,r]=(0,wAi.useState)(10),s=(0,TAi.useRef)();return(0,SAi.useEffect)(()=>{s.current=setInterval(()=>{r(o=>o+10)},100);let a=()=>{setTimeout(()=>{r(100),s.current&&clearInterval(s.current)},600)};return e.on("end",a),()=>{e.off("end",a),s.current&&clearInterval(s.current)}},[e,s,r]),(0,RAi.jsx)(CQ,{value:t/100*100})};var YSe=vt(xc(),1),cq=vt(xc(),1),DAi=vt($a(),1),xAi=vt($a(),1);var qD=vt(Ac(),1),kAi=({typescript:e})=>{let[t,r]=(0,xAi.useState)(0);return(0,DAi.useEffect)(()=>{let s=a=>{r(a.files.length)};return e.on("start",s),()=>{e.off("start",s)}},[e,r]),t===0?(0,qD.jsxs)(YSe.Box,{flexDirection:"row",children:[(0,qD.jsx)(Lk,{color:"cyan",children:"TypeScript:"}),(0,qD.jsx)(cq.Text,{children:" "}),(0,qD.jsx)(cq.Text,{color:"white",children:"Loading files..."})]}):(0,qD.jsxs)(YSe.Box,{flexDirection:"row",width:"100%",children:[(0,qD.jsxs)(YSe.Box,{flexGrow:1,children:[(0,qD.jsx)(Lk,{color:"cyan",children:"TypeScript:"}),(0,qD.jsx)(cq.Text,{children:" "}),(0,qD.jsx)(cq.Text,{color:"white",children:"Processing..."})]}),(0,qD.jsx)(YSe.Box,{flexDirection:"row",children:(0,qD.jsxs)(YSe.Box,{children:[(0,qD.jsx)(cq.Text,{color:"green",children:bI.tick}),(0,qD.jsx)(cq.Text,{children:" "}),(0,qD.jsxs)(cq.Text,{color:"white",children:[t," Files"]}),(0,qD.jsx)(cq.Text,{children:" "})]})})]})};var qse=vt(Ac(),1),iht=({typescript:e})=>{let[t,r]=(0,GAi.useState)(!1);return(0,FAi.useEffect)(()=>{let s=()=>{setTimeout(()=>{r(!0)},1e3)};return e.on("end",s),()=>{e.off("end",s)}},[r]),t?null:(0,qse.jsx)(AHe.Box,{position:"relative",height:7,children:(0,qse.jsxs)(AHe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,qse.jsx)(AHe.Box,{children:(0,qse.jsx)(kAi,{typescript:e})}),(0,qse.jsx)(AHe.Box,{marginTop:1,marginBottom:1,children:(0,qse.jsx)(NAi,{typescript:e})})]})})};var sht=vt(Ac(),1),dHe=class extends LAi.BaseCommand{static paths=[["library","build"]];target=td.String("-t,--target","./dist");async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(kfr.Filename.pnpCjs)&&t.includes(kfr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await VAi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await WAi.Project.find(t,this.context.cwd),s=[];this.target&&(s.push("-t"),s.push(this.target));let a=await QAi.xfs.mktempPromise(),{code:o}=await OAi.execUtils.pipevp("yarn",["library","build",...s],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:{...await PAi.scriptUtils.makeScriptEnv({binFolder:a,project:r}),COMMAND_PROXY_EXECUTION:"true"}});return o}async executeRegular(){await this.cleanTarget();let t=await Gie.initialize(this.context.cwd),{clear:r}=(0,MAi.render)((0,sht.jsx)(iht,{typescript:t}));try{let s=await t.build([ZAi(this.context.cwd,"./src")],{outDir:ZAi(this.context.cwd,this.target),declaration:!0});return s.forEach(a=>{Gy((0,sht.jsx)(nht,{...a})).split(` +`).forEach(g=>{console.log(g)})}),s.length===0?0:1}catch(s){return Gy((0,sht.jsx)(MD,{error:s})).split(` +`).forEach(a=>{console.error(a)}),1}finally{r()}}async cleanTarget(){try{await TEa(this.target,{recursive:!0,force:!0})}catch{}}};var HAi=(e,t)=>{t.publishConfig&&t.publishConfig.exports&&(t.exports=t.publishConfig.exports)};var YAi={hooks:{beforeWorkspacePacking:HAi},commands:[dHe]};var Ofr={};zf(Ofr,{LintCommand:()=>IHe,default:()=>udi});var sdi=vt(il(),1),Vfr=vt(Bn(),1),Wfr=vt(Bn(),1),Pfr=vt(No(),1),odi=vt(Bn(),1),adi=vt(Bn(),1),cdi=vt(No(),1);Zl();var ldi=vt(xc(),1);var fHe=vt(xc(),1),qAi=vt($a(),1),$Ai=vt($a(),1);var XAi=vt($a(),1),Ffr=vt($a(),1),UAi=vt(Ac(),1),JAi=({linter:e})=>{let[t,r]=(0,Ffr.useState)(0),[s,a]=(0,Ffr.useState)(0);return(0,XAi.useEffect)(()=>{let o=({files:f})=>{r(f.length)},g=()=>{a(f=>f+1)},p=()=>{a(t)};return e.on("start",o),e.on("lint:end",g),e.on("end",p),()=>{e.off("start",o),e.off("lint:end",g),e.off("end",p)}},[e,t,r,a]),(0,UAi.jsx)(CQ,{value:t>0?s/t*100:0})};import{relative as KAi}from"node:path";var XSe=vt(xc(),1),$D=vt(xc(),1),jAi=vt($a(),1),pHe=vt($a(),1);var Eb=vt(Ac(),1),NEa=({state:e})=>e==="warning"?(0,Eb.jsx)($D.Text,{color:"yellow",children:bI.warning}):e==="error"?(0,Eb.jsx)($D.Text,{color:"red",children:bI.cross}):e==="success"?(0,Eb.jsx)($D.Text,{color:"green",children:bI.tick}):(0,Eb.jsx)($D.Text,{color:"white",children:bI.circleDotted}),REa=({state:e,children:t})=>e==="in-progress"?(0,Eb.jsx)($D.Text,{color:"gray",children:t}):(0,Eb.jsx)($D.Text,{color:"white",children:t}),zAi=({cwd:e,linter:t})=>{let[r,s]=(0,pHe.useState)(void 0),[a,o]=(0,pHe.useState)(0),[g,p]=(0,pHe.useState)(0),[f,m]=(0,pHe.useState)(0);return(0,jAi.useEffect)(()=>{let y=k=>{o(k.files.length)},B=k=>{s({state:"in-progress",file:KAi(e,k.file)})},v=({result:k})=>{let T="success";k.warningCount>0&&(m(O=>O+k.warningCount),T="warning"),k.errorCount>0&&(p(O=>O+k.errorCount),T="error"),s({state:T,file:KAi(e,k.filePath)})};return t.on("start",y),t.on("lint:start",B),t.on("lint:end",v),()=>{t.off("start",y),t.off("lint:start",B),t.off("lint:end",v)}},[t,s,o,p,m]),r?(0,Eb.jsxs)(XSe.Box,{flexDirection:"row",width:"100%",children:[(0,Eb.jsxs)(XSe.Box,{flexGrow:1,children:[(0,Eb.jsx)(Lk,{color:"cyan",children:"Lint:"}),(0,Eb.jsx)($D.Text,{children:" "}),(0,Eb.jsx)(REa,{state:r.state,children:r.file})]}),(0,Eb.jsx)(XSe.Box,{flexDirection:"row",children:(0,Eb.jsxs)(XSe.Box,{children:[(0,Eb.jsx)(NEa,{state:r.state}),(0,Eb.jsx)($D.Text,{children:" "}),(0,Eb.jsxs)($D.Text,{color:"yellow",children:[f," Warnings"]}),(0,Eb.jsx)($D.Text,{children:" "}),(0,Eb.jsxs)($D.Text,{color:"red",children:[g," Errors"]}),(0,Eb.jsx)($D.Text,{children:" "}),(0,Eb.jsxs)($D.Text,{color:"white",children:[a," Files"]}),(0,Eb.jsx)($D.Text,{children:" "})]})})]}):(0,Eb.jsxs)(XSe.Box,{flexDirection:"row",children:[(0,Eb.jsx)(Lk,{color:"cyan",children:"Lint:"}),(0,Eb.jsx)($D.Text,{children:" "}),(0,Eb.jsx)($D.Text,{color:"white",children:"Loading files..."})]})};var $se=vt(Ac(),1),edi=({cwd:e,linter:t})=>{let[r,s]=(0,qAi.useState)(!1);return(0,$Ai.useEffect)(()=>{let a=()=>{setTimeout(()=>{s(!0)},1)};return t.on("end",a),()=>{t.off("end",a)}},[s]),r?null:(0,$se.jsx)(fHe.Box,{position:"relative",height:7,children:(0,$se.jsxs)(fHe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,$se.jsx)(fHe.Box,{children:(0,$se.jsx)(zAi,{cwd:e,linter:t})}),(0,$se.jsx)(fHe.Box,{marginTop:1,marginBottom:1,children:(0,$se.jsx)(JAi,{linter:t})})]})})};var Zfr=vt(xc(),1),eoe=vt(xc(),1);var ER=vt(Ac(),1),tdi=({filePath:e,message:t,source:r})=>(0,ER.jsxs)(eoe.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:"100%",children:[(0,ER.jsxs)(eoe.Box,{marginBottom:1,marginTop:1,marginX:2,children:[(0,ER.jsx)(eoe.Box,{flexDirection:"row",flexGrow:1,children:(0,ER.jsx)(MO,{line:t.line,column:t.column,children:e})}),(0,ER.jsx)(eoe.Box,{children:(0,ER.jsxs)(Zfr.Text,{color:"gray",children:[" ",t.ruleId]})})]}),(0,ER.jsx)(eoe.Box,{children:(0,ER.jsx)(GD,{offset:2})}),!!r&&(0,ER.jsxs)(ER.Fragment,{children:[(0,ER.jsx)(eoe.Box,{marginBottom:1,children:(0,ER.jsx)(YO,{line:t.line,column:t.column,children:r})}),(0,ER.jsx)(GD,{offset:2})]}),(0,ER.jsx)(eoe.Box,{marginBottom:1,marginTop:1,marginX:2,children:(0,ER.jsxs)(Zfr.Text,{color:"white",children:[" ",t.message]})})]});var rdi=vt(xc(),1);import{isAbsolute as DEa}from"node:path";import{relative as xEa}from"node:path";var ndi=vt($a(),1);var Lfr=vt(Ac(),1),idi=({filePath:e,source:t,messages:r,cwd:s=process.cwd()})=>{let a=(0,ndi.useMemo)(()=>DEa(e)?xEa(s,e):e,[e]);return r.length===0?null:(0,Lfr.jsx)(rdi.Box,{flexDirection:"column",width:"100%",children:r.map(o=>(0,Lfr.jsx)(tdi,{filePath:a,message:o,source:t},wW()))})};var oht=vt(Ac(),1),IHe=class extends sdi.BaseCommand{static paths=[["lint"]];fix=td.Boolean("--fix");files=td.Rest({required:0});cache=td.Boolean("--cache",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(Pfr.Filename.pnpCjs)&&t.includes(Pfr.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await Vfr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Wfr.Project.find(t,this.context.cwd),s=await cdi.xfs.mktempPromise(),a=[];this.fix&&a.push("--fix"),this.cache&&a.push("--cache");let{code:o}=await odi.execUtils.pipevp("yarn",["lint",...a,...this.files],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:{...await adi.scriptUtils.makeScriptEnv({binFolder:s,project:r}),COMMAND_PROXY_EXECUTION:"true"}});return o}async executeRegular(){let t=await Vfr.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Wfr.Project.find(t,this.context.cwd),s=await p1e.initialize(r.cwd,this.context.cwd),{clear:a}=(0,ldi.render)((0,oht.jsx)(edi,{cwd:r.cwd,linter:s}));s.on("lint:end",({result:o})=>{o.messages.length>0&&Gy((0,oht.jsx)(idi,{...o})).split(` +`).forEach(p=>{console.log(p)})});try{return(await s.lint(this.files,{fix:this.fix,cache:this.cache})).find(g=>g.messages.length>0)?1:0}catch(o){return o instanceof Error?Gy((0,oht.jsx)(MD,{error:o})).split(` +`).forEach(g=>{console.error(g)}):console.error(o),1}finally{a()}}};var udi={commands:[IHe]};var eIr={};zf(eIr,{default:()=>Qdi});var Ldi=vt(il(),1),Vdi=vt(il(),1),Wdi=vt(Bn(),1),Pdi=vt(Bn(),1),Odi=vt(Bn(),1);import hHe from"node:assert/strict";import{execSync as h1a}from"node:child_process";function toe(){return typeof navigator=="object"&&"userAgent"in navigator?navigator.userAgent:typeof process=="object"&&process.version!==void 0?`Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`:""}function aht(e,t,r,s){if(typeof r!="function")throw new Error("method for before hook must be a function");return s||(s={}),Array.isArray(t)?t.reverse().reduce((a,o)=>aht.bind(null,e,o,a,s),r)():Promise.resolve().then(()=>e.registry[t]?e.registry[t].reduce((a,o)=>o.hook.bind(null,a,s),r)():r(s))}function gdi(e,t,r,s){let a=s;e.registry[r]||(e.registry[r]=[]),t==="before"&&(s=(o,g)=>Promise.resolve().then(a.bind(null,g)).then(o.bind(null,g))),t==="after"&&(s=(o,g)=>{let p;return Promise.resolve().then(o.bind(null,g)).then(f=>(p=f,a(p,g))).then(()=>p)}),t==="error"&&(s=(o,g)=>Promise.resolve().then(o.bind(null,g)).catch(p=>a(p,g))),e.registry[r].push({hook:s,orig:a})}function Adi(e,t,r){if(!e.registry[t])return;let s=e.registry[t].map(a=>a.orig).indexOf(r);s!==-1&&e.registry[t].splice(s,1)}var ddi=Function.bind,pdi=ddi.bind(ddi);function fdi(e,t,r){let s=pdi(Adi,null).apply(null,r?[t,r]:[t]);e.api={remove:s},e.remove=s,["before","error","after","wrap"].forEach(a=>{let o=r?[t,a,r]:[t,a];e[a]=e.api[a]=pdi(gdi,null).apply(null,o)})}function kEa(){let e=Symbol("Singular"),t={registry:{}},r=aht.bind(null,t,e);return fdi(r,t,e),r}function GEa(){let e={registry:{}},t=aht.bind(null,e);return fdi(t,e),t}var Idi={Singular:kEa,Collection:GEa};var FEa="0.0.0-development",ZEa=`octokit-endpoint.js/${FEa} ${toe()}`,LEa={method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":ZEa},mediaType:{format:""}};function VEa(e){return e?Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{}):{}}function WEa(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}function hdi(e,t){let r=Object.assign({},e);return Object.keys(t).forEach(s=>{WEa(t[s])?s in e?r[s]=hdi(e[s],t[s]):Object.assign(r,{[s]:t[s]}):Object.assign(r,{[s]:t[s]})}),r}function Cdi(e){for(let t in e)e[t]===void 0&&delete e[t];return e}function Mfr(e,t,r){if(typeof t=="string"){let[a,o]=t.split(" ");r=Object.assign(o?{method:a,url:o}:{url:a},r)}else r=Object.assign({},t);r.headers=VEa(r.headers),Cdi(r),Cdi(r.headers);let s=hdi(e||{},r);return r.url==="/graphql"&&(e&&e.mediaType.previews?.length&&(s.mediaType.previews=e.mediaType.previews.filter(a=>!s.mediaType.previews.includes(a)).concat(s.mediaType.previews)),s.mediaType.previews=(s.mediaType.previews||[]).map(a=>a.replace(/-preview/,""))),s}function PEa(e,t){let r=/\?/.test(e)?"&":"?",s=Object.keys(t);return s.length===0?e:e+r+s.map(a=>a==="q"?"q="+t.q.split("+").map(encodeURIComponent).join("+"):`${a}=${encodeURIComponent(t[a])}`).join("&")}var OEa=/\{[^}]+\}/g;function QEa(e){return e.replace(/^\W+|\W+$/g,"").split(/,/)}function MEa(e){let t=e.match(OEa);return t?t.map(QEa).reduce((r,s)=>r.concat(s),[]):[]}function mdi(e,t){let r={__proto__:null};for(let s of Object.keys(e))t.indexOf(s)===-1&&(r[s]=e[s]);return r}function _di(e){return e.split(/(%[0-9A-Fa-f]{2})/g).map(function(t){return/%[0-9A-Fa-f]/.test(t)||(t=encodeURI(t).replace(/%5B/g,"[").replace(/%5D/g,"]")),t}).join("")}function USe(e){return encodeURIComponent(e).replace(/[!'()*]/g,function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()})}function CHe(e,t,r){return t=e==="+"||e==="#"?_di(t):USe(t),r?USe(r)+"="+t:t}function JSe(e){return e!=null}function Qfr(e){return e===";"||e==="&"||e==="?"}function HEa(e,t,r,s){var a=e[r],o=[];if(JSe(a)&&a!=="")if(typeof a=="string"||typeof a=="number"||typeof a=="boolean")a=a.toString(),s&&s!=="*"&&(a=a.substring(0,parseInt(s,10))),o.push(CHe(t,a,Qfr(t)?r:""));else if(s==="*")Array.isArray(a)?a.filter(JSe).forEach(function(g){o.push(CHe(t,g,Qfr(t)?r:""))}):Object.keys(a).forEach(function(g){JSe(a[g])&&o.push(CHe(t,a[g],g))});else{let g=[];Array.isArray(a)?a.filter(JSe).forEach(function(p){g.push(CHe(t,p))}):Object.keys(a).forEach(function(p){JSe(a[p])&&(g.push(USe(p)),g.push(CHe(t,a[p].toString())))}),Qfr(t)?o.push(USe(r)+"="+g.join(",")):g.length!==0&&o.push(g.join(","))}else t===";"?JSe(a)&&o.push(USe(r)):a===""&&(t==="&"||t==="?")?o.push(USe(r)+"="):a===""&&o.push("");return o}function YEa(e){return{expand:XEa.bind(null,e)}}function XEa(e,t){var r=["+","#",".","/",";","?","&"];return e=e.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g,function(s,a,o){if(a){let p="",f=[];if(r.indexOf(a.charAt(0))!==-1&&(p=a.charAt(0),a=a.substr(1)),a.split(/,/g).forEach(function(m){var y=/([^:\*]*)(?::(\d+)|(\*))?/.exec(m);f.push(HEa(t,p,y[1],y[2]||y[3]))}),p&&p!=="+"){var g=",";return p==="?"?g="&":p!=="#"&&(g=p),(f.length!==0?p:"")+f.join(g)}else return f.join(",")}else return _di(o)}),e==="/"?e:e.replace(/\/$/,"")}function ydi(e){let t=e.method.toUpperCase(),r=(e.url||"/").replace(/:([a-z]\w+)/g,"{$1}"),s=Object.assign({},e.headers),a,o=mdi(e,["method","baseUrl","url","headers","request","mediaType"]),g=MEa(r);r=YEa(r).expand(o),/^http/.test(r)||(r=e.baseUrl+r);let p=Object.keys(e).filter(y=>g.includes(y)).concat("baseUrl"),f=mdi(o,p);if(!/application\/octet-stream/i.test(s.accept)&&(e.mediaType.format&&(s.accept=s.accept.split(/,/).map(y=>y.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/,`application/vnd$1$2.${e.mediaType.format}`)).join(",")),r.endsWith("/graphql")&&e.mediaType.previews?.length)){let y=s.accept.match(/[\w-]+(?=-preview)/g)||[];s.accept=y.concat(e.mediaType.previews).map(B=>{let v=e.mediaType.format?`.${e.mediaType.format}`:"+json";return`application/vnd.github.${B}-preview${v}`}).join(",")}return["GET","HEAD"].includes(t)?r=PEa(r,f):"data"in f?a=f.data:Object.keys(f).length&&(a=f),!s["content-type"]&&typeof a<"u"&&(s["content-type"]="application/json; charset=utf-8"),["PATCH","PUT"].includes(t)&&typeof a>"u"&&(a=""),Object.assign({method:t,url:r,headers:s},typeof a<"u"?{body:a}:null,e.request?{request:e.request}:null)}function JEa(e,t,r){return ydi(Mfr(e,t,r))}function bdi(e,t){let r=Mfr(e,t),s=JEa.bind(null,r);return Object.assign(s,{DEFAULTS:r,defaults:bdi.bind(null,r),merge:Mfr.bind(null,r),parse:ydi})}var Edi=bdi(null,LEa);var jfe=class extends Error{name;status;request;response;constructor(t,r,s){super(t),this.name="HttpError",this.status=Number.parseInt(r),Number.isNaN(this.status)&&(this.status=0),"response"in s&&(this.response=s.response);let a=Object.assign({},s.request);s.request.headers.authorization&&(a.headers=Object.assign({},s.request.headers,{authorization:s.request.headers.authorization.replace(/ .*$/," [REDACTED]")})),a.url=a.url.replace(/\bclient_secret=\w+/g,"client_secret=[REDACTED]").replace(/\baccess_token=\w+/g,"access_token=[REDACTED]"),this.request=a}};var UEa="0.0.0-development",KEa={headers:{"user-agent":`octokit-request.js/${UEa} ${toe()}`}};function jEa(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}async function Bdi(e){let t=e.request?.fetch||globalThis.fetch;if(!t)throw new Error("fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing");let r=e.request?.log||console,s=e.request?.parseSuccessResponseBody!==!1,a=jEa(e.body)||Array.isArray(e.body)?JSON.stringify(e.body):e.body,o=Object.fromEntries(Object.entries(e.headers).map(([B,v])=>[B,String(v)])),g;try{g=await t(e.url,{method:e.method,body:a,redirect:e.request?.redirect,headers:o,signal:e.request?.signal,...e.body&&{duplex:"half"}})}catch(B){let v="Unknown Error";if(B instanceof Error){if(B.name==="AbortError")throw B.status=500,B;v=B.message,B.name==="TypeError"&&"cause"in B&&(B.cause instanceof Error?v=B.cause.message:typeof B.cause=="string"&&(v=B.cause))}let k=new jfe(v,500,{request:e});throw k.cause=B,k}let p=g.status,f=g.url,m={};for(let[B,v]of g.headers)m[B]=v;let y={url:f,status:p,headers:m,data:""};if("deprecation"in m){let B=m.link&&m.link.match(/<([^>]+)>; rel="deprecation"/),v=B&&B.pop();r.warn(`[@octokit/request] "${e.method} ${e.url}" is deprecated. It is scheduled to be removed on ${m.sunset}${v?`. See ${v}`:""}`)}if(p===204||p===205)return y;if(e.method==="HEAD"){if(p<400)return y;throw new jfe(g.statusText,p,{response:y,request:e})}if(p===304)throw y.data=await Hfr(g),new jfe("Not modified",p,{response:y,request:e});if(p>=400)throw y.data=await Hfr(g),new jfe(zEa(y.data),p,{response:y,request:e});return y.data=s?await Hfr(g):g.body,y}async function Hfr(e){let t=e.headers.get("content-type");return/application\/json/.test(t)?e.json().catch(()=>e.text()).catch(()=>""):!t||/^text\/|charset=utf-8$/.test(t)?e.text():e.arrayBuffer()}function zEa(e){if(typeof e=="string")return e;if(e instanceof ArrayBuffer)return"Unknown error";if("message"in e){let t="documentation_url"in e?` - ${e.documentation_url}`:"";return Array.isArray(e.errors)?`${e.message}: ${e.errors.map(r=>JSON.stringify(r)).join(", ")}${t}`:`${e.message}${t}`}return`Unknown error: ${JSON.stringify(e)}`}function Yfr(e,t){let r=e.defaults(t);return Object.assign(function(a,o){let g=r.merge(a,o);if(!g.request||!g.request.hook)return Bdi(r.parse(g));let p=(f,m)=>Bdi(r.parse(r.merge(f,m)));return Object.assign(p,{endpoint:r,defaults:Yfr.bind(null,r)}),g.request.hook(p,g)},{endpoint:r,defaults:Yfr.bind(null,r)})}var mHe=Yfr(Edi,KEa);var qEa="0.0.0-development";function $Ea(e){return`Request failed due to following response errors: `+e.errors.map(t=>` - ${t.message}`).join(` -`)}var VEa=class extends Error{constructor(e,t,r){super(LEa(r)),this.request=e,this.headers=t,this.response=r,this.errors=r.errors,this.data=r.data,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}name="GraphqlResponseError";errors;data},WEa=["method","baseUrl","url","headers","request","query","mediaType"],PEa=["query","method","url"],Cdi=/\/api\/v3\/?$/;function OEa(e,t,r){if(r){if(typeof t=="string"&&"query"in r)return Promise.reject(new Error('[@octokit/graphql] "query" cannot be used as variable name'));for(let g in r)if(PEa.includes(g))return Promise.reject(new Error(`[@octokit/graphql] "${g}" cannot be used as variable name`))}let s=typeof t=="string"?Object.assign({query:t},r):t,a=Object.keys(s).reduce((g,p)=>WEa.includes(p)?(g[p]=s[p],g):(g.variables||(g.variables={}),g.variables[p]=s[p],g),{}),o=s.baseUrl||e.endpoint.DEFAULTS.baseUrl;return Cdi.test(o)&&(a.url=o.replace(Cdi,"/api/graphql")),e(a).then(g=>{if(g.data.errors){let p={};for(let f of Object.keys(g.headers))p[f]=g.headers[f];throw new VEa(a,p,g.data)}return g.data.data})}function Ofr(e,t){let r=e.defaults(t);return Object.assign((a,o)=>OEa(r,a,o),{defaults:Ofr.bind(null,r),endpoint:r.endpoint})}var E1l=Ofr(IHe,{headers:{"user-agent":`octokit-graphql.js/${ZEa} ${Use()}`},method:"POST",url:"/graphql"});function mdi(e){return Ofr(e,{method:"POST",url:"/graphql"})}var MEa=/^v1\./,QEa=/^ghs_/,YEa=/^ghu_/;async function HEa(e){let t=e.split(/\./).length===3,r=MEa.test(e)||QEa.test(e),s=YEa.test(e);return{type:"token",token:e,tokenType:t?"app":r?"installation":s?"user-to-server":"oauth"}}function XEa(e){return e.split(/\./).length===3?`bearer ${e}`:`token ${e}`}async function JEa(e,t,r,s){let a=t.endpoint.merge(r,s);return a.headers.authorization=XEa(e),t(a)}var sht=function(t){if(!t)throw new Error("[@octokit/auth-token] No token passed to createTokenAuth");if(typeof t!="string")throw new Error("[@octokit/auth-token] Token passed to createTokenAuth is not a string");return t=t.replace(/^(token|bearer) +/i,""),Object.assign(HEa.bind(null,t),{hook:JEa.bind(null,t)})};var Mfr="6.1.2";var hdi=()=>{},UEa=console.warn.bind(console),KEa=console.error.bind(console),_di=`octokit-core.js/${Mfr} ${Use()}`,oht=class{static VERSION=Mfr;static defaults(t){return class extends this{constructor(...s){let a=s[0]||{};if(typeof t=="function"){super(t(a));return}super(Object.assign({},t,a,a.userAgent&&t.userAgent?{userAgent:`${a.userAgent} ${t.userAgent}`}:null))}}}static plugins=[];static plugin(...t){let r=this.plugins;return class extends this{static plugins=r.concat(t.filter(a=>!r.includes(a)))}}constructor(t={}){let r=new cdi.Collection,s={baseUrl:IHe.endpoint.DEFAULTS.baseUrl,headers:{},request:Object.assign({},t.request,{hook:r.bind(null,"request")}),mediaType:{previews:[],format:""}};if(s.headers["user-agent"]=t.userAgent?`${t.userAgent} ${_di}`:_di,t.baseUrl&&(s.baseUrl=t.baseUrl),t.previews&&(s.mediaType.previews=t.previews),t.timeZone&&(s.headers["time-zone"]=t.timeZone),this.request=IHe.defaults(s),this.graphql=mdi(this.request).defaults(s),this.log=Object.assign({debug:hdi,info:hdi,warn:UEa,error:KEa},t.log),this.hook=r,t.authStrategy){let{authStrategy:o,...g}=t,p=o(Object.assign({request:this.request,log:this.log,octokit:this,octokitOptions:g},t.auth));r.wrap("request",p.hook),this.auth=p}else if(!t.auth)this.auth=async()=>({type:"unauthenticated"});else{let o=sht(t.auth);r.wrap("request",o.hook),this.auth=o}let a=this.constructor;for(let o=0;o{e.log.debug("request",r);let s=Date.now(),a=e.request.endpoint.parse(r),o=a.url.replace(r.baseUrl,"");return t(r).then(g=>{let p=g.headers["x-github-request-id"];return e.log.info(`${a.method} ${o} - ${g.status} with id ${p} in ${Date.now()-s}ms`),g}).catch(g=>{let p=g.response?.headers["x-github-request-id"]||"UNKNOWN";throw e.log.error(`${a.method} ${o} - ${g.status} with id ${p} in ${Date.now()-s}ms`),g})})}Qfr.VERSION=ydi;var jEa="0.0.0-development";function zEa(e){if(!e.data)return{...e,data:[]};if(!("total_count"in e.data&&!("url"in e.data)))return e;let r=e.data.incomplete_results,s=e.data.repository_selection,a=e.data.total_count;delete e.data.incomplete_results,delete e.data.repository_selection,delete e.data.total_count;let o=Object.keys(e.data)[0],g=e.data[o];return e.data=g,typeof r<"u"&&(e.data.incomplete_results=r),typeof s<"u"&&(e.data.repository_selection=s),e.data.total_count=a,e}function Yfr(e,t,r){let s=typeof t=="function"?t.endpoint(r):e.request.endpoint(t,r),a=typeof t=="function"?t:e.request,o=s.method,g=s.headers,p=s.url;return{[Symbol.asyncIterator]:()=>({async next(){if(!p)return{done:!0};try{let f=await a({method:o,url:p,headers:g}),m=zEa(f);return p=((m.headers.link||"").match(/<([^>]+)>;\s*rel="next"/)||[])[1],{value:m}}catch(f){if(f.status!==409)throw f;return p="",{value:{status:200,headers:{},data:[]}}}}})}}function bdi(e,t,r,s){return typeof r=="function"&&(s=r,r=void 0),Edi(e,[],Yfr(e,t,r)[Symbol.asyncIterator](),s)}function Edi(e,t,r,s){return r.next().then(a=>{if(a.done)return t;let o=!1;function g(){o=!0}return t=t.concat(s?s(a.value,g):a.value.data),o?t:Edi(e,t,r,s)})}var P1l=Object.assign(bdi,{iterator:Yfr});function Hfr(e){return{paginate:Object.assign(bdi.bind(null,e),{iterator:Yfr.bind(null,e)})}}Hfr.VERSION=jEa;var Xfr="13.2.6";var qEa={actions:{addCustomLabelsToSelfHostedRunnerForOrg:["POST /orgs/{org}/actions/runners/{runner_id}/labels"],addCustomLabelsToSelfHostedRunnerForRepo:["POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],approveWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve"],cancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel"],createEnvironmentVariable:["POST /repos/{owner}/{repo}/environments/{environment_name}/variables"],createOrUpdateEnvironmentSecret:["PUT /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}"],createOrgVariable:["POST /orgs/{org}/actions/variables"],createRegistrationTokenForOrg:["POST /orgs/{org}/actions/runners/registration-token"],createRegistrationTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/registration-token"],createRemoveTokenForOrg:["POST /orgs/{org}/actions/runners/remove-token"],createRemoveTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/remove-token"],createRepoVariable:["POST /repos/{owner}/{repo}/actions/variables"],createWorkflowDispatch:["POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches"],deleteActionsCacheById:["DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}"],deleteActionsCacheByKey:["DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}"],deleteArtifact:["DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],deleteEnvironmentSecret:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],deleteEnvironmentVariable:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],deleteOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}"],deleteOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}"],deleteRepoVariable:["DELETE /repos/{owner}/{repo}/actions/variables/{name}"],deleteSelfHostedRunnerFromOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}"],deleteSelfHostedRunnerFromRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}"],deleteWorkflowRun:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}"],deleteWorkflowRunLogs:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],disableSelectedRepositoryGithubActionsOrganization:["DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}"],disableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable"],downloadArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}"],downloadJobLogsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs"],downloadWorkflowRunAttemptLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs"],downloadWorkflowRunLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],enableSelectedRepositoryGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories/{repository_id}"],enableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable"],forceCancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/force-cancel"],generateRunnerJitconfigForOrg:["POST /orgs/{org}/actions/runners/generate-jitconfig"],generateRunnerJitconfigForRepo:["POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig"],getActionsCacheList:["GET /repos/{owner}/{repo}/actions/caches"],getActionsCacheUsage:["GET /repos/{owner}/{repo}/actions/cache/usage"],getActionsCacheUsageByRepoForOrg:["GET /orgs/{org}/actions/cache/usage-by-repository"],getActionsCacheUsageForOrg:["GET /orgs/{org}/actions/cache/usage"],getAllowedActionsOrganization:["GET /orgs/{org}/actions/permissions/selected-actions"],getAllowedActionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/selected-actions"],getArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],getCustomOidcSubClaimForRepo:["GET /repos/{owner}/{repo}/actions/oidc/customization/sub"],getEnvironmentPublicKey:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/public-key"],getEnvironmentSecret:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],getEnvironmentVariable:["GET /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],getGithubActionsDefaultWorkflowPermissionsOrganization:["GET /orgs/{org}/actions/permissions/workflow"],getGithubActionsDefaultWorkflowPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/workflow"],getGithubActionsPermissionsOrganization:["GET /orgs/{org}/actions/permissions"],getGithubActionsPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions"],getJobForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}"],getOrgPublicKey:["GET /orgs/{org}/actions/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}"],getOrgVariable:["GET /orgs/{org}/actions/variables/{name}"],getPendingDeploymentsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],getRepoPermissions:["GET /repos/{owner}/{repo}/actions/permissions",{},{renamed:["actions","getGithubActionsPermissionsRepository"]}],getRepoPublicKey:["GET /repos/{owner}/{repo}/actions/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/actions/secrets/{secret_name}"],getRepoVariable:["GET /repos/{owner}/{repo}/actions/variables/{name}"],getReviewsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals"],getSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}"],getSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}"],getWorkflow:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}"],getWorkflowAccessToRepository:["GET /repos/{owner}/{repo}/actions/permissions/access"],getWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}"],getWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}"],getWorkflowRunUsage:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing"],getWorkflowUsage:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing"],listArtifactsForRepo:["GET /repos/{owner}/{repo}/actions/artifacts"],listEnvironmentSecrets:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets"],listEnvironmentVariables:["GET /repos/{owner}/{repo}/environments/{environment_name}/variables"],listJobsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs"],listJobsForWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs"],listLabelsForSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}/labels"],listLabelsForSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],listOrgSecrets:["GET /orgs/{org}/actions/secrets"],listOrgVariables:["GET /orgs/{org}/actions/variables"],listRepoOrganizationSecrets:["GET /repos/{owner}/{repo}/actions/organization-secrets"],listRepoOrganizationVariables:["GET /repos/{owner}/{repo}/actions/organization-variables"],listRepoSecrets:["GET /repos/{owner}/{repo}/actions/secrets"],listRepoVariables:["GET /repos/{owner}/{repo}/actions/variables"],listRepoWorkflows:["GET /repos/{owner}/{repo}/actions/workflows"],listRunnerApplicationsForOrg:["GET /orgs/{org}/actions/runners/downloads"],listRunnerApplicationsForRepo:["GET /repos/{owner}/{repo}/actions/runners/downloads"],listSelectedReposForOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}/repositories"],listSelectedReposForOrgVariable:["GET /orgs/{org}/actions/variables/{name}/repositories"],listSelectedRepositoriesEnabledGithubActionsOrganization:["GET /orgs/{org}/actions/permissions/repositories"],listSelfHostedRunnersForOrg:["GET /orgs/{org}/actions/runners"],listSelfHostedRunnersForRepo:["GET /repos/{owner}/{repo}/actions/runners"],listWorkflowRunArtifacts:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts"],listWorkflowRuns:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs"],listWorkflowRunsForRepo:["GET /repos/{owner}/{repo}/actions/runs"],reRunJobForWorkflowRun:["POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun"],reRunWorkflow:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun"],reRunWorkflowFailedJobs:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs"],removeAllCustomLabelsFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels"],removeAllCustomLabelsFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],removeCustomLabelFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}"],removeCustomLabelFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],reviewCustomGatesForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule"],reviewPendingDeploymentsForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],setAllowedActionsOrganization:["PUT /orgs/{org}/actions/permissions/selected-actions"],setAllowedActionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/selected-actions"],setCustomLabelsForSelfHostedRunnerForOrg:["PUT /orgs/{org}/actions/runners/{runner_id}/labels"],setCustomLabelsForSelfHostedRunnerForRepo:["PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],setCustomOidcSubClaimForRepo:["PUT /repos/{owner}/{repo}/actions/oidc/customization/sub"],setGithubActionsDefaultWorkflowPermissionsOrganization:["PUT /orgs/{org}/actions/permissions/workflow"],setGithubActionsDefaultWorkflowPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/workflow"],setGithubActionsPermissionsOrganization:["PUT /orgs/{org}/actions/permissions"],setGithubActionsPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories"],setSelectedReposForOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories"],setSelectedRepositoriesEnabledGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories"],setWorkflowAccessToRepository:["PUT /repos/{owner}/{repo}/actions/permissions/access"],updateEnvironmentVariable:["PATCH /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],updateOrgVariable:["PATCH /orgs/{org}/actions/variables/{name}"],updateRepoVariable:["PATCH /repos/{owner}/{repo}/actions/variables/{name}"]},activity:{checkRepoIsStarredByAuthenticatedUser:["GET /user/starred/{owner}/{repo}"],deleteRepoSubscription:["DELETE /repos/{owner}/{repo}/subscription"],deleteThreadSubscription:["DELETE /notifications/threads/{thread_id}/subscription"],getFeeds:["GET /feeds"],getRepoSubscription:["GET /repos/{owner}/{repo}/subscription"],getThread:["GET /notifications/threads/{thread_id}"],getThreadSubscriptionForAuthenticatedUser:["GET /notifications/threads/{thread_id}/subscription"],listEventsForAuthenticatedUser:["GET /users/{username}/events"],listNotificationsForAuthenticatedUser:["GET /notifications"],listOrgEventsForAuthenticatedUser:["GET /users/{username}/events/orgs/{org}"],listPublicEvents:["GET /events"],listPublicEventsForRepoNetwork:["GET /networks/{owner}/{repo}/events"],listPublicEventsForUser:["GET /users/{username}/events/public"],listPublicOrgEvents:["GET /orgs/{org}/events"],listReceivedEventsForUser:["GET /users/{username}/received_events"],listReceivedPublicEventsForUser:["GET /users/{username}/received_events/public"],listRepoEvents:["GET /repos/{owner}/{repo}/events"],listRepoNotificationsForAuthenticatedUser:["GET /repos/{owner}/{repo}/notifications"],listReposStarredByAuthenticatedUser:["GET /user/starred"],listReposStarredByUser:["GET /users/{username}/starred"],listReposWatchedByUser:["GET /users/{username}/subscriptions"],listStargazersForRepo:["GET /repos/{owner}/{repo}/stargazers"],listWatchedReposForAuthenticatedUser:["GET /user/subscriptions"],listWatchersForRepo:["GET /repos/{owner}/{repo}/subscribers"],markNotificationsAsRead:["PUT /notifications"],markRepoNotificationsAsRead:["PUT /repos/{owner}/{repo}/notifications"],markThreadAsDone:["DELETE /notifications/threads/{thread_id}"],markThreadAsRead:["PATCH /notifications/threads/{thread_id}"],setRepoSubscription:["PUT /repos/{owner}/{repo}/subscription"],setThreadSubscription:["PUT /notifications/threads/{thread_id}/subscription"],starRepoForAuthenticatedUser:["PUT /user/starred/{owner}/{repo}"],unstarRepoForAuthenticatedUser:["DELETE /user/starred/{owner}/{repo}"]},apps:{addRepoToInstallation:["PUT /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","addRepoToInstallationForAuthenticatedUser"]}],addRepoToInstallationForAuthenticatedUser:["PUT /user/installations/{installation_id}/repositories/{repository_id}"],checkToken:["POST /applications/{client_id}/token"],createFromManifest:["POST /app-manifests/{code}/conversions"],createInstallationAccessToken:["POST /app/installations/{installation_id}/access_tokens"],deleteAuthorization:["DELETE /applications/{client_id}/grant"],deleteInstallation:["DELETE /app/installations/{installation_id}"],deleteToken:["DELETE /applications/{client_id}/token"],getAuthenticated:["GET /app"],getBySlug:["GET /apps/{app_slug}"],getInstallation:["GET /app/installations/{installation_id}"],getOrgInstallation:["GET /orgs/{org}/installation"],getRepoInstallation:["GET /repos/{owner}/{repo}/installation"],getSubscriptionPlanForAccount:["GET /marketplace_listing/accounts/{account_id}"],getSubscriptionPlanForAccountStubbed:["GET /marketplace_listing/stubbed/accounts/{account_id}"],getUserInstallation:["GET /users/{username}/installation"],getWebhookConfigForApp:["GET /app/hook/config"],getWebhookDelivery:["GET /app/hook/deliveries/{delivery_id}"],listAccountsForPlan:["GET /marketplace_listing/plans/{plan_id}/accounts"],listAccountsForPlanStubbed:["GET /marketplace_listing/stubbed/plans/{plan_id}/accounts"],listInstallationReposForAuthenticatedUser:["GET /user/installations/{installation_id}/repositories"],listInstallationRequestsForAuthenticatedApp:["GET /app/installation-requests"],listInstallations:["GET /app/installations"],listInstallationsForAuthenticatedUser:["GET /user/installations"],listPlans:["GET /marketplace_listing/plans"],listPlansStubbed:["GET /marketplace_listing/stubbed/plans"],listReposAccessibleToInstallation:["GET /installation/repositories"],listSubscriptionsForAuthenticatedUser:["GET /user/marketplace_purchases"],listSubscriptionsForAuthenticatedUserStubbed:["GET /user/marketplace_purchases/stubbed"],listWebhookDeliveries:["GET /app/hook/deliveries"],redeliverWebhookDelivery:["POST /app/hook/deliveries/{delivery_id}/attempts"],removeRepoFromInstallation:["DELETE /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","removeRepoFromInstallationForAuthenticatedUser"]}],removeRepoFromInstallationForAuthenticatedUser:["DELETE /user/installations/{installation_id}/repositories/{repository_id}"],resetToken:["PATCH /applications/{client_id}/token"],revokeInstallationAccessToken:["DELETE /installation/token"],scopeToken:["POST /applications/{client_id}/token/scoped"],suspendInstallation:["PUT /app/installations/{installation_id}/suspended"],unsuspendInstallation:["DELETE /app/installations/{installation_id}/suspended"],updateWebhookConfigForApp:["PATCH /app/hook/config"]},billing:{getGithubActionsBillingOrg:["GET /orgs/{org}/settings/billing/actions"],getGithubActionsBillingUser:["GET /users/{username}/settings/billing/actions"],getGithubPackagesBillingOrg:["GET /orgs/{org}/settings/billing/packages"],getGithubPackagesBillingUser:["GET /users/{username}/settings/billing/packages"],getSharedStorageBillingOrg:["GET /orgs/{org}/settings/billing/shared-storage"],getSharedStorageBillingUser:["GET /users/{username}/settings/billing/shared-storage"]},checks:{create:["POST /repos/{owner}/{repo}/check-runs"],createSuite:["POST /repos/{owner}/{repo}/check-suites"],get:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}"],getSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}"],listAnnotations:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations"],listForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-runs"],listForSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs"],listSuitesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-suites"],rerequestRun:["POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest"],rerequestSuite:["POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest"],setSuitesPreferences:["PATCH /repos/{owner}/{repo}/check-suites/preferences"],update:["PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}"]},codeScanning:{deleteAnalysis:["DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}"],getAlert:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}",{},{renamedParameters:{alert_id:"alert_number"}}],getAnalysis:["GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}"],getCodeqlDatabase:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}"],getDefaultSetup:["GET /repos/{owner}/{repo}/code-scanning/default-setup"],getSarif:["GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}"],listAlertInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances"],listAlertsForOrg:["GET /orgs/{org}/code-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/code-scanning/alerts"],listAlertsInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances",{},{renamed:["codeScanning","listAlertInstances"]}],listCodeqlDatabases:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases"],listRecentAnalyses:["GET /repos/{owner}/{repo}/code-scanning/analyses"],updateAlert:["PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}"],updateDefaultSetup:["PATCH /repos/{owner}/{repo}/code-scanning/default-setup"],uploadSarif:["POST /repos/{owner}/{repo}/code-scanning/sarifs"]},codesOfConduct:{getAllCodesOfConduct:["GET /codes_of_conduct"],getConductCode:["GET /codes_of_conduct/{key}"]},codespaces:{addRepositoryForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],checkPermissionsForDevcontainer:["GET /repos/{owner}/{repo}/codespaces/permissions_check"],codespaceMachinesForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/machines"],createForAuthenticatedUser:["POST /user/codespaces"],createOrUpdateOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],createOrUpdateSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}"],createWithPrForAuthenticatedUser:["POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces"],createWithRepoForAuthenticatedUser:["POST /repos/{owner}/{repo}/codespaces"],deleteForAuthenticatedUser:["DELETE /user/codespaces/{codespace_name}"],deleteFromOrganization:["DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}"],deleteOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],deleteSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}"],exportForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/exports"],getCodespacesForUserInOrg:["GET /orgs/{org}/members/{username}/codespaces"],getExportDetailsForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/exports/{export_id}"],getForAuthenticatedUser:["GET /user/codespaces/{codespace_name}"],getOrgPublicKey:["GET /orgs/{org}/codespaces/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}"],getPublicKeyForAuthenticatedUser:["GET /user/codespaces/secrets/public-key"],getRepoPublicKey:["GET /repos/{owner}/{repo}/codespaces/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],getSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}"],listDevcontainersInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/devcontainers"],listForAuthenticatedUser:["GET /user/codespaces"],listInOrganization:["GET /orgs/{org}/codespaces",{},{renamedParameters:{org_id:"org"}}],listInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces"],listOrgSecrets:["GET /orgs/{org}/codespaces/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/codespaces/secrets"],listRepositoriesForSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}/repositories"],listSecretsForAuthenticatedUser:["GET /user/codespaces/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],preFlightWithRepoForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/new"],publishForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/publish"],removeRepositoryForSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],repoMachinesForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/machines"],setRepositoriesForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],startForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/start"],stopForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/stop"],stopInOrganization:["POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop"],updateForAuthenticatedUser:["PATCH /user/codespaces/{codespace_name}"]},copilot:{addCopilotSeatsForTeams:["POST /orgs/{org}/copilot/billing/selected_teams"],addCopilotSeatsForUsers:["POST /orgs/{org}/copilot/billing/selected_users"],cancelCopilotSeatAssignmentForTeams:["DELETE /orgs/{org}/copilot/billing/selected_teams"],cancelCopilotSeatAssignmentForUsers:["DELETE /orgs/{org}/copilot/billing/selected_users"],getCopilotOrganizationDetails:["GET /orgs/{org}/copilot/billing"],getCopilotSeatDetailsForUser:["GET /orgs/{org}/members/{username}/copilot"],listCopilotSeats:["GET /orgs/{org}/copilot/billing/seats"],usageMetricsForEnterprise:["GET /enterprises/{enterprise}/copilot/usage"],usageMetricsForOrg:["GET /orgs/{org}/copilot/usage"],usageMetricsForTeam:["GET /orgs/{org}/team/{team_slug}/copilot/usage"]},dependabot:{addSelectedRepoToOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],deleteOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],getAlert:["GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"],getOrgPublicKey:["GET /orgs/{org}/dependabot/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}"],getRepoPublicKey:["GET /repos/{owner}/{repo}/dependabot/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/dependabot/alerts"],listAlertsForOrg:["GET /orgs/{org}/dependabot/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/dependabot/alerts"],listOrgSecrets:["GET /orgs/{org}/dependabot/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/dependabot/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],updateAlert:["PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"]},dependencyGraph:{createRepositorySnapshot:["POST /repos/{owner}/{repo}/dependency-graph/snapshots"],diffRange:["GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}"],exportSbom:["GET /repos/{owner}/{repo}/dependency-graph/sbom"]},emojis:{get:["GET /emojis"]},gists:{checkIsStarred:["GET /gists/{gist_id}/star"],create:["POST /gists"],createComment:["POST /gists/{gist_id}/comments"],delete:["DELETE /gists/{gist_id}"],deleteComment:["DELETE /gists/{gist_id}/comments/{comment_id}"],fork:["POST /gists/{gist_id}/forks"],get:["GET /gists/{gist_id}"],getComment:["GET /gists/{gist_id}/comments/{comment_id}"],getRevision:["GET /gists/{gist_id}/{sha}"],list:["GET /gists"],listComments:["GET /gists/{gist_id}/comments"],listCommits:["GET /gists/{gist_id}/commits"],listForUser:["GET /users/{username}/gists"],listForks:["GET /gists/{gist_id}/forks"],listPublic:["GET /gists/public"],listStarred:["GET /gists/starred"],star:["PUT /gists/{gist_id}/star"],unstar:["DELETE /gists/{gist_id}/star"],update:["PATCH /gists/{gist_id}"],updateComment:["PATCH /gists/{gist_id}/comments/{comment_id}"]},git:{createBlob:["POST /repos/{owner}/{repo}/git/blobs"],createCommit:["POST /repos/{owner}/{repo}/git/commits"],createRef:["POST /repos/{owner}/{repo}/git/refs"],createTag:["POST /repos/{owner}/{repo}/git/tags"],createTree:["POST /repos/{owner}/{repo}/git/trees"],deleteRef:["DELETE /repos/{owner}/{repo}/git/refs/{ref}"],getBlob:["GET /repos/{owner}/{repo}/git/blobs/{file_sha}"],getCommit:["GET /repos/{owner}/{repo}/git/commits/{commit_sha}"],getRef:["GET /repos/{owner}/{repo}/git/ref/{ref}"],getTag:["GET /repos/{owner}/{repo}/git/tags/{tag_sha}"],getTree:["GET /repos/{owner}/{repo}/git/trees/{tree_sha}"],listMatchingRefs:["GET /repos/{owner}/{repo}/git/matching-refs/{ref}"],updateRef:["PATCH /repos/{owner}/{repo}/git/refs/{ref}"]},gitignore:{getAllTemplates:["GET /gitignore/templates"],getTemplate:["GET /gitignore/templates/{name}"]},interactions:{getRestrictionsForAuthenticatedUser:["GET /user/interaction-limits"],getRestrictionsForOrg:["GET /orgs/{org}/interaction-limits"],getRestrictionsForRepo:["GET /repos/{owner}/{repo}/interaction-limits"],getRestrictionsForYourPublicRepos:["GET /user/interaction-limits",{},{renamed:["interactions","getRestrictionsForAuthenticatedUser"]}],removeRestrictionsForAuthenticatedUser:["DELETE /user/interaction-limits"],removeRestrictionsForOrg:["DELETE /orgs/{org}/interaction-limits"],removeRestrictionsForRepo:["DELETE /repos/{owner}/{repo}/interaction-limits"],removeRestrictionsForYourPublicRepos:["DELETE /user/interaction-limits",{},{renamed:["interactions","removeRestrictionsForAuthenticatedUser"]}],setRestrictionsForAuthenticatedUser:["PUT /user/interaction-limits"],setRestrictionsForOrg:["PUT /orgs/{org}/interaction-limits"],setRestrictionsForRepo:["PUT /repos/{owner}/{repo}/interaction-limits"],setRestrictionsForYourPublicRepos:["PUT /user/interaction-limits",{},{renamed:["interactions","setRestrictionsForAuthenticatedUser"]}]},issues:{addAssignees:["POST /repos/{owner}/{repo}/issues/{issue_number}/assignees"],addLabels:["POST /repos/{owner}/{repo}/issues/{issue_number}/labels"],checkUserCanBeAssigned:["GET /repos/{owner}/{repo}/assignees/{assignee}"],checkUserCanBeAssignedToIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee}"],create:["POST /repos/{owner}/{repo}/issues"],createComment:["POST /repos/{owner}/{repo}/issues/{issue_number}/comments"],createLabel:["POST /repos/{owner}/{repo}/labels"],createMilestone:["POST /repos/{owner}/{repo}/milestones"],deleteComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}"],deleteLabel:["DELETE /repos/{owner}/{repo}/labels/{name}"],deleteMilestone:["DELETE /repos/{owner}/{repo}/milestones/{milestone_number}"],get:["GET /repos/{owner}/{repo}/issues/{issue_number}"],getComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}"],getEvent:["GET /repos/{owner}/{repo}/issues/events/{event_id}"],getLabel:["GET /repos/{owner}/{repo}/labels/{name}"],getMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}"],list:["GET /issues"],listAssignees:["GET /repos/{owner}/{repo}/assignees"],listComments:["GET /repos/{owner}/{repo}/issues/{issue_number}/comments"],listCommentsForRepo:["GET /repos/{owner}/{repo}/issues/comments"],listEvents:["GET /repos/{owner}/{repo}/issues/{issue_number}/events"],listEventsForRepo:["GET /repos/{owner}/{repo}/issues/events"],listEventsForTimeline:["GET /repos/{owner}/{repo}/issues/{issue_number}/timeline"],listForAuthenticatedUser:["GET /user/issues"],listForOrg:["GET /orgs/{org}/issues"],listForRepo:["GET /repos/{owner}/{repo}/issues"],listLabelsForMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels"],listLabelsForRepo:["GET /repos/{owner}/{repo}/labels"],listLabelsOnIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/labels"],listMilestones:["GET /repos/{owner}/{repo}/milestones"],lock:["PUT /repos/{owner}/{repo}/issues/{issue_number}/lock"],removeAllLabels:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels"],removeAssignees:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees"],removeLabel:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}"],setLabels:["PUT /repos/{owner}/{repo}/issues/{issue_number}/labels"],unlock:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock"],update:["PATCH /repos/{owner}/{repo}/issues/{issue_number}"],updateComment:["PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}"],updateLabel:["PATCH /repos/{owner}/{repo}/labels/{name}"],updateMilestone:["PATCH /repos/{owner}/{repo}/milestones/{milestone_number}"]},licenses:{get:["GET /licenses/{license}"],getAllCommonlyUsed:["GET /licenses"],getForRepo:["GET /repos/{owner}/{repo}/license"]},markdown:{render:["POST /markdown"],renderRaw:["POST /markdown/raw",{headers:{"content-type":"text/plain; charset=utf-8"}}]},meta:{get:["GET /meta"],getAllVersions:["GET /versions"],getOctocat:["GET /octocat"],getZen:["GET /zen"],root:["GET /"]},migrations:{deleteArchiveForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/archive"],deleteArchiveForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/archive"],downloadArchiveForOrg:["GET /orgs/{org}/migrations/{migration_id}/archive"],getArchiveForAuthenticatedUser:["GET /user/migrations/{migration_id}/archive"],getStatusForAuthenticatedUser:["GET /user/migrations/{migration_id}"],getStatusForOrg:["GET /orgs/{org}/migrations/{migration_id}"],listForAuthenticatedUser:["GET /user/migrations"],listForOrg:["GET /orgs/{org}/migrations"],listReposForAuthenticatedUser:["GET /user/migrations/{migration_id}/repositories"],listReposForOrg:["GET /orgs/{org}/migrations/{migration_id}/repositories"],listReposForUser:["GET /user/migrations/{migration_id}/repositories",{},{renamed:["migrations","listReposForAuthenticatedUser"]}],startForAuthenticatedUser:["POST /user/migrations"],startForOrg:["POST /orgs/{org}/migrations"],unlockRepoForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock"],unlockRepoForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock"]},oidc:{getOidcCustomSubTemplateForOrg:["GET /orgs/{org}/actions/oidc/customization/sub"],updateOidcCustomSubTemplateForOrg:["PUT /orgs/{org}/actions/oidc/customization/sub"]},orgs:{addSecurityManagerTeam:["PUT /orgs/{org}/security-managers/teams/{team_slug}"],assignTeamToOrgRole:["PUT /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],assignUserToOrgRole:["PUT /orgs/{org}/organization-roles/users/{username}/{role_id}"],blockUser:["PUT /orgs/{org}/blocks/{username}"],cancelInvitation:["DELETE /orgs/{org}/invitations/{invitation_id}"],checkBlockedUser:["GET /orgs/{org}/blocks/{username}"],checkMembershipForUser:["GET /orgs/{org}/members/{username}"],checkPublicMembershipForUser:["GET /orgs/{org}/public_members/{username}"],convertMemberToOutsideCollaborator:["PUT /orgs/{org}/outside_collaborators/{username}"],createCustomOrganizationRole:["POST /orgs/{org}/organization-roles"],createInvitation:["POST /orgs/{org}/invitations"],createOrUpdateCustomProperties:["PATCH /orgs/{org}/properties/schema"],createOrUpdateCustomPropertiesValuesForRepos:["PATCH /orgs/{org}/properties/values"],createOrUpdateCustomProperty:["PUT /orgs/{org}/properties/schema/{custom_property_name}"],createWebhook:["POST /orgs/{org}/hooks"],delete:["DELETE /orgs/{org}"],deleteCustomOrganizationRole:["DELETE /orgs/{org}/organization-roles/{role_id}"],deleteWebhook:["DELETE /orgs/{org}/hooks/{hook_id}"],enableOrDisableSecurityProductOnAllOrgRepos:["POST /orgs/{org}/{security_product}/{enablement}"],get:["GET /orgs/{org}"],getAllCustomProperties:["GET /orgs/{org}/properties/schema"],getCustomProperty:["GET /orgs/{org}/properties/schema/{custom_property_name}"],getMembershipForAuthenticatedUser:["GET /user/memberships/orgs/{org}"],getMembershipForUser:["GET /orgs/{org}/memberships/{username}"],getOrgRole:["GET /orgs/{org}/organization-roles/{role_id}"],getWebhook:["GET /orgs/{org}/hooks/{hook_id}"],getWebhookConfigForOrg:["GET /orgs/{org}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}"],list:["GET /organizations"],listAppInstallations:["GET /orgs/{org}/installations"],listBlockedUsers:["GET /orgs/{org}/blocks"],listCustomPropertiesValuesForRepos:["GET /orgs/{org}/properties/values"],listFailedInvitations:["GET /orgs/{org}/failed_invitations"],listForAuthenticatedUser:["GET /user/orgs"],listForUser:["GET /users/{username}/orgs"],listInvitationTeams:["GET /orgs/{org}/invitations/{invitation_id}/teams"],listMembers:["GET /orgs/{org}/members"],listMembershipsForAuthenticatedUser:["GET /user/memberships/orgs"],listOrgRoleTeams:["GET /orgs/{org}/organization-roles/{role_id}/teams"],listOrgRoleUsers:["GET /orgs/{org}/organization-roles/{role_id}/users"],listOrgRoles:["GET /orgs/{org}/organization-roles"],listOrganizationFineGrainedPermissions:["GET /orgs/{org}/organization-fine-grained-permissions"],listOutsideCollaborators:["GET /orgs/{org}/outside_collaborators"],listPatGrantRepositories:["GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories"],listPatGrantRequestRepositories:["GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories"],listPatGrantRequests:["GET /orgs/{org}/personal-access-token-requests"],listPatGrants:["GET /orgs/{org}/personal-access-tokens"],listPendingInvitations:["GET /orgs/{org}/invitations"],listPublicMembers:["GET /orgs/{org}/public_members"],listSecurityManagerTeams:["GET /orgs/{org}/security-managers"],listWebhookDeliveries:["GET /orgs/{org}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /orgs/{org}/hooks"],patchCustomOrganizationRole:["PATCH /orgs/{org}/organization-roles/{role_id}"],pingWebhook:["POST /orgs/{org}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeCustomProperty:["DELETE /orgs/{org}/properties/schema/{custom_property_name}"],removeMember:["DELETE /orgs/{org}/members/{username}"],removeMembershipForUser:["DELETE /orgs/{org}/memberships/{username}"],removeOutsideCollaborator:["DELETE /orgs/{org}/outside_collaborators/{username}"],removePublicMembershipForAuthenticatedUser:["DELETE /orgs/{org}/public_members/{username}"],removeSecurityManagerTeam:["DELETE /orgs/{org}/security-managers/teams/{team_slug}"],reviewPatGrantRequest:["POST /orgs/{org}/personal-access-token-requests/{pat_request_id}"],reviewPatGrantRequestsInBulk:["POST /orgs/{org}/personal-access-token-requests"],revokeAllOrgRolesTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}"],revokeAllOrgRolesUser:["DELETE /orgs/{org}/organization-roles/users/{username}"],revokeOrgRoleTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],revokeOrgRoleUser:["DELETE /orgs/{org}/organization-roles/users/{username}/{role_id}"],setMembershipForUser:["PUT /orgs/{org}/memberships/{username}"],setPublicMembershipForAuthenticatedUser:["PUT /orgs/{org}/public_members/{username}"],unblockUser:["DELETE /orgs/{org}/blocks/{username}"],update:["PATCH /orgs/{org}"],updateMembershipForAuthenticatedUser:["PATCH /user/memberships/orgs/{org}"],updatePatAccess:["POST /orgs/{org}/personal-access-tokens/{pat_id}"],updatePatAccesses:["POST /orgs/{org}/personal-access-tokens"],updateWebhook:["PATCH /orgs/{org}/hooks/{hook_id}"],updateWebhookConfigForOrg:["PATCH /orgs/{org}/hooks/{hook_id}/config"]},packages:{deletePackageForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}"],deletePackageForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}"],deletePackageForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}"],deletePackageVersionForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getAllPackageVersionsForAPackageOwnedByAnOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByOrg"]}],getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByAuthenticatedUser"]}],getAllPackageVersionsForPackageOwnedByAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions"],getPackageForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}"],getPackageForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}"],getPackageForUser:["GET /users/{username}/packages/{package_type}/{package_name}"],getPackageVersionForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],listDockerMigrationConflictingPackagesForAuthenticatedUser:["GET /user/docker/conflicts"],listDockerMigrationConflictingPackagesForOrganization:["GET /orgs/{org}/docker/conflicts"],listDockerMigrationConflictingPackagesForUser:["GET /users/{username}/docker/conflicts"],listPackagesForAuthenticatedUser:["GET /user/packages"],listPackagesForOrganization:["GET /orgs/{org}/packages"],listPackagesForUser:["GET /users/{username}/packages"],restorePackageForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForUser:["POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageVersionForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForUser:["POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"]},projects:{addCollaborator:["PUT /projects/{project_id}/collaborators/{username}"],createCard:["POST /projects/columns/{column_id}/cards"],createColumn:["POST /projects/{project_id}/columns"],createForAuthenticatedUser:["POST /user/projects"],createForOrg:["POST /orgs/{org}/projects"],createForRepo:["POST /repos/{owner}/{repo}/projects"],delete:["DELETE /projects/{project_id}"],deleteCard:["DELETE /projects/columns/cards/{card_id}"],deleteColumn:["DELETE /projects/columns/{column_id}"],get:["GET /projects/{project_id}"],getCard:["GET /projects/columns/cards/{card_id}"],getColumn:["GET /projects/columns/{column_id}"],getPermissionForUser:["GET /projects/{project_id}/collaborators/{username}/permission"],listCards:["GET /projects/columns/{column_id}/cards"],listCollaborators:["GET /projects/{project_id}/collaborators"],listColumns:["GET /projects/{project_id}/columns"],listForOrg:["GET /orgs/{org}/projects"],listForRepo:["GET /repos/{owner}/{repo}/projects"],listForUser:["GET /users/{username}/projects"],moveCard:["POST /projects/columns/cards/{card_id}/moves"],moveColumn:["POST /projects/columns/{column_id}/moves"],removeCollaborator:["DELETE /projects/{project_id}/collaborators/{username}"],update:["PATCH /projects/{project_id}"],updateCard:["PATCH /projects/columns/cards/{card_id}"],updateColumn:["PATCH /projects/columns/{column_id}"]},pulls:{checkIfMerged:["GET /repos/{owner}/{repo}/pulls/{pull_number}/merge"],create:["POST /repos/{owner}/{repo}/pulls"],createReplyForReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies"],createReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],createReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments"],deletePendingReview:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],deleteReviewComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}"],dismissReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals"],get:["GET /repos/{owner}/{repo}/pulls/{pull_number}"],getReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],getReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}"],list:["GET /repos/{owner}/{repo}/pulls"],listCommentsForReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments"],listCommits:["GET /repos/{owner}/{repo}/pulls/{pull_number}/commits"],listFiles:["GET /repos/{owner}/{repo}/pulls/{pull_number}/files"],listRequestedReviewers:["GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],listReviewComments:["GET /repos/{owner}/{repo}/pulls/{pull_number}/comments"],listReviewCommentsForRepo:["GET /repos/{owner}/{repo}/pulls/comments"],listReviews:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],merge:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge"],removeRequestedReviewers:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],requestReviewers:["POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],submitReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events"],update:["PATCH /repos/{owner}/{repo}/pulls/{pull_number}"],updateBranch:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch"],updateReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],updateReviewComment:["PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}"]},rateLimit:{get:["GET /rate_limit"]},reactions:{createForCommitComment:["POST /repos/{owner}/{repo}/comments/{comment_id}/reactions"],createForIssue:["POST /repos/{owner}/{repo}/issues/{issue_number}/reactions"],createForIssueComment:["POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],createForPullRequestReviewComment:["POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],createForRelease:["POST /repos/{owner}/{repo}/releases/{release_id}/reactions"],createForTeamDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],createForTeamDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"],deleteForCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}"],deleteForIssue:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}"],deleteForIssueComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}"],deleteForPullRequestComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}"],deleteForRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}"],deleteForTeamDiscussion:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}"],deleteForTeamDiscussionComment:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}"],listForCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}/reactions"],listForIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/reactions"],listForIssueComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],listForPullRequestReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],listForRelease:["GET /repos/{owner}/{repo}/releases/{release_id}/reactions"],listForTeamDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],listForTeamDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"]},repos:{acceptInvitation:["PATCH /user/repository_invitations/{invitation_id}",{},{renamed:["repos","acceptInvitationForAuthenticatedUser"]}],acceptInvitationForAuthenticatedUser:["PATCH /user/repository_invitations/{invitation_id}"],addAppAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],addCollaborator:["PUT /repos/{owner}/{repo}/collaborators/{username}"],addStatusCheckContexts:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],addTeamAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],addUserAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],cancelPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}/cancel"],checkAutomatedSecurityFixes:["GET /repos/{owner}/{repo}/automated-security-fixes"],checkCollaborator:["GET /repos/{owner}/{repo}/collaborators/{username}"],checkPrivateVulnerabilityReporting:["GET /repos/{owner}/{repo}/private-vulnerability-reporting"],checkVulnerabilityAlerts:["GET /repos/{owner}/{repo}/vulnerability-alerts"],codeownersErrors:["GET /repos/{owner}/{repo}/codeowners/errors"],compareCommits:["GET /repos/{owner}/{repo}/compare/{base}...{head}"],compareCommitsWithBasehead:["GET /repos/{owner}/{repo}/compare/{basehead}"],createAutolink:["POST /repos/{owner}/{repo}/autolinks"],createCommitComment:["POST /repos/{owner}/{repo}/commits/{commit_sha}/comments"],createCommitSignatureProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],createCommitStatus:["POST /repos/{owner}/{repo}/statuses/{sha}"],createDeployKey:["POST /repos/{owner}/{repo}/keys"],createDeployment:["POST /repos/{owner}/{repo}/deployments"],createDeploymentBranchPolicy:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],createDeploymentProtectionRule:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],createDeploymentStatus:["POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],createDispatchEvent:["POST /repos/{owner}/{repo}/dispatches"],createForAuthenticatedUser:["POST /user/repos"],createFork:["POST /repos/{owner}/{repo}/forks"],createInOrg:["POST /orgs/{org}/repos"],createOrUpdateCustomPropertiesValues:["PATCH /repos/{owner}/{repo}/properties/values"],createOrUpdateEnvironment:["PUT /repos/{owner}/{repo}/environments/{environment_name}"],createOrUpdateFileContents:["PUT /repos/{owner}/{repo}/contents/{path}"],createOrgRuleset:["POST /orgs/{org}/rulesets"],createPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments"],createPagesSite:["POST /repos/{owner}/{repo}/pages"],createRelease:["POST /repos/{owner}/{repo}/releases"],createRepoRuleset:["POST /repos/{owner}/{repo}/rulesets"],createTagProtection:["POST /repos/{owner}/{repo}/tags/protection"],createUsingTemplate:["POST /repos/{template_owner}/{template_repo}/generate"],createWebhook:["POST /repos/{owner}/{repo}/hooks"],declineInvitation:["DELETE /user/repository_invitations/{invitation_id}",{},{renamed:["repos","declineInvitationForAuthenticatedUser"]}],declineInvitationForAuthenticatedUser:["DELETE /user/repository_invitations/{invitation_id}"],delete:["DELETE /repos/{owner}/{repo}"],deleteAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],deleteAdminBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],deleteAnEnvironment:["DELETE /repos/{owner}/{repo}/environments/{environment_name}"],deleteAutolink:["DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}"],deleteBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection"],deleteCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}"],deleteCommitSignatureProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],deleteDeployKey:["DELETE /repos/{owner}/{repo}/keys/{key_id}"],deleteDeployment:["DELETE /repos/{owner}/{repo}/deployments/{deployment_id}"],deleteDeploymentBranchPolicy:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],deleteFile:["DELETE /repos/{owner}/{repo}/contents/{path}"],deleteInvitation:["DELETE /repos/{owner}/{repo}/invitations/{invitation_id}"],deleteOrgRuleset:["DELETE /orgs/{org}/rulesets/{ruleset_id}"],deletePagesSite:["DELETE /repos/{owner}/{repo}/pages"],deletePullRequestReviewProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],deleteRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}"],deleteReleaseAsset:["DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}"],deleteRepoRuleset:["DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id}"],deleteTagProtection:["DELETE /repos/{owner}/{repo}/tags/protection/{tag_protection_id}"],deleteWebhook:["DELETE /repos/{owner}/{repo}/hooks/{hook_id}"],disableAutomatedSecurityFixes:["DELETE /repos/{owner}/{repo}/automated-security-fixes"],disableDeploymentProtectionRule:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],disablePrivateVulnerabilityReporting:["DELETE /repos/{owner}/{repo}/private-vulnerability-reporting"],disableVulnerabilityAlerts:["DELETE /repos/{owner}/{repo}/vulnerability-alerts"],downloadArchive:["GET /repos/{owner}/{repo}/zipball/{ref}",{},{renamed:["repos","downloadZipballArchive"]}],downloadTarballArchive:["GET /repos/{owner}/{repo}/tarball/{ref}"],downloadZipballArchive:["GET /repos/{owner}/{repo}/zipball/{ref}"],enableAutomatedSecurityFixes:["PUT /repos/{owner}/{repo}/automated-security-fixes"],enablePrivateVulnerabilityReporting:["PUT /repos/{owner}/{repo}/private-vulnerability-reporting"],enableVulnerabilityAlerts:["PUT /repos/{owner}/{repo}/vulnerability-alerts"],generateReleaseNotes:["POST /repos/{owner}/{repo}/releases/generate-notes"],get:["GET /repos/{owner}/{repo}"],getAccessRestrictions:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],getAdminBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],getAllDeploymentProtectionRules:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],getAllEnvironments:["GET /repos/{owner}/{repo}/environments"],getAllStatusCheckContexts:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"],getAllTopics:["GET /repos/{owner}/{repo}/topics"],getAppsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps"],getAutolink:["GET /repos/{owner}/{repo}/autolinks/{autolink_id}"],getBranch:["GET /repos/{owner}/{repo}/branches/{branch}"],getBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection"],getBranchRules:["GET /repos/{owner}/{repo}/rules/branches/{branch}"],getClones:["GET /repos/{owner}/{repo}/traffic/clones"],getCodeFrequencyStats:["GET /repos/{owner}/{repo}/stats/code_frequency"],getCollaboratorPermissionLevel:["GET /repos/{owner}/{repo}/collaborators/{username}/permission"],getCombinedStatusForRef:["GET /repos/{owner}/{repo}/commits/{ref}/status"],getCommit:["GET /repos/{owner}/{repo}/commits/{ref}"],getCommitActivityStats:["GET /repos/{owner}/{repo}/stats/commit_activity"],getCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}"],getCommitSignatureProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],getCommunityProfileMetrics:["GET /repos/{owner}/{repo}/community/profile"],getContent:["GET /repos/{owner}/{repo}/contents/{path}"],getContributorsStats:["GET /repos/{owner}/{repo}/stats/contributors"],getCustomDeploymentProtectionRule:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],getCustomPropertiesValues:["GET /repos/{owner}/{repo}/properties/values"],getDeployKey:["GET /repos/{owner}/{repo}/keys/{key_id}"],getDeployment:["GET /repos/{owner}/{repo}/deployments/{deployment_id}"],getDeploymentBranchPolicy:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],getDeploymentStatus:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}"],getEnvironment:["GET /repos/{owner}/{repo}/environments/{environment_name}"],getLatestPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/latest"],getLatestRelease:["GET /repos/{owner}/{repo}/releases/latest"],getOrgRuleSuite:["GET /orgs/{org}/rulesets/rule-suites/{rule_suite_id}"],getOrgRuleSuites:["GET /orgs/{org}/rulesets/rule-suites"],getOrgRuleset:["GET /orgs/{org}/rulesets/{ruleset_id}"],getOrgRulesets:["GET /orgs/{org}/rulesets"],getPages:["GET /repos/{owner}/{repo}/pages"],getPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/{build_id}"],getPagesDeployment:["GET /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}"],getPagesHealthCheck:["GET /repos/{owner}/{repo}/pages/health"],getParticipationStats:["GET /repos/{owner}/{repo}/stats/participation"],getPullRequestReviewProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],getPunchCardStats:["GET /repos/{owner}/{repo}/stats/punch_card"],getReadme:["GET /repos/{owner}/{repo}/readme"],getReadmeInDirectory:["GET /repos/{owner}/{repo}/readme/{dir}"],getRelease:["GET /repos/{owner}/{repo}/releases/{release_id}"],getReleaseAsset:["GET /repos/{owner}/{repo}/releases/assets/{asset_id}"],getReleaseByTag:["GET /repos/{owner}/{repo}/releases/tags/{tag}"],getRepoRuleSuite:["GET /repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}"],getRepoRuleSuites:["GET /repos/{owner}/{repo}/rulesets/rule-suites"],getRepoRuleset:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}"],getRepoRulesets:["GET /repos/{owner}/{repo}/rulesets"],getStatusChecksProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],getTeamsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"],getTopPaths:["GET /repos/{owner}/{repo}/traffic/popular/paths"],getTopReferrers:["GET /repos/{owner}/{repo}/traffic/popular/referrers"],getUsersWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"],getViews:["GET /repos/{owner}/{repo}/traffic/views"],getWebhook:["GET /repos/{owner}/{repo}/hooks/{hook_id}"],getWebhookConfigForRepo:["GET /repos/{owner}/{repo}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}"],listActivities:["GET /repos/{owner}/{repo}/activity"],listAutolinks:["GET /repos/{owner}/{repo}/autolinks"],listBranches:["GET /repos/{owner}/{repo}/branches"],listBranchesForHeadCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head"],listCollaborators:["GET /repos/{owner}/{repo}/collaborators"],listCommentsForCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/comments"],listCommitCommentsForRepo:["GET /repos/{owner}/{repo}/comments"],listCommitStatusesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/statuses"],listCommits:["GET /repos/{owner}/{repo}/commits"],listContributors:["GET /repos/{owner}/{repo}/contributors"],listCustomDeploymentRuleIntegrations:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps"],listDeployKeys:["GET /repos/{owner}/{repo}/keys"],listDeploymentBranchPolicies:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],listDeploymentStatuses:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],listDeployments:["GET /repos/{owner}/{repo}/deployments"],listForAuthenticatedUser:["GET /user/repos"],listForOrg:["GET /orgs/{org}/repos"],listForUser:["GET /users/{username}/repos"],listForks:["GET /repos/{owner}/{repo}/forks"],listInvitations:["GET /repos/{owner}/{repo}/invitations"],listInvitationsForAuthenticatedUser:["GET /user/repository_invitations"],listLanguages:["GET /repos/{owner}/{repo}/languages"],listPagesBuilds:["GET /repos/{owner}/{repo}/pages/builds"],listPublic:["GET /repositories"],listPullRequestsAssociatedWithCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls"],listReleaseAssets:["GET /repos/{owner}/{repo}/releases/{release_id}/assets"],listReleases:["GET /repos/{owner}/{repo}/releases"],listTagProtection:["GET /repos/{owner}/{repo}/tags/protection"],listTags:["GET /repos/{owner}/{repo}/tags"],listTeams:["GET /repos/{owner}/{repo}/teams"],listWebhookDeliveries:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /repos/{owner}/{repo}/hooks"],merge:["POST /repos/{owner}/{repo}/merges"],mergeUpstream:["POST /repos/{owner}/{repo}/merge-upstream"],pingWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeAppAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],removeCollaborator:["DELETE /repos/{owner}/{repo}/collaborators/{username}"],removeStatusCheckContexts:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],removeStatusCheckProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],removeTeamAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],removeUserAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],renameBranch:["POST /repos/{owner}/{repo}/branches/{branch}/rename"],replaceAllTopics:["PUT /repos/{owner}/{repo}/topics"],requestPagesBuild:["POST /repos/{owner}/{repo}/pages/builds"],setAdminBranchProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],setAppAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],setStatusCheckContexts:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],setTeamAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],setUserAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],testPushWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/tests"],transfer:["POST /repos/{owner}/{repo}/transfer"],update:["PATCH /repos/{owner}/{repo}"],updateBranchProtection:["PUT /repos/{owner}/{repo}/branches/{branch}/protection"],updateCommitComment:["PATCH /repos/{owner}/{repo}/comments/{comment_id}"],updateDeploymentBranchPolicy:["PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],updateInformationAboutPagesSite:["PUT /repos/{owner}/{repo}/pages"],updateInvitation:["PATCH /repos/{owner}/{repo}/invitations/{invitation_id}"],updateOrgRuleset:["PUT /orgs/{org}/rulesets/{ruleset_id}"],updatePullRequestReviewProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],updateRelease:["PATCH /repos/{owner}/{repo}/releases/{release_id}"],updateReleaseAsset:["PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}"],updateRepoRuleset:["PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}"],updateStatusCheckPotection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks",{},{renamed:["repos","updateStatusCheckProtection"]}],updateStatusCheckProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],updateWebhook:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}"],updateWebhookConfigForRepo:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config"],uploadReleaseAsset:["POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}",{baseUrl:"https://uploads.github.com"}]},search:{code:["GET /search/code"],commits:["GET /search/commits"],issuesAndPullRequests:["GET /search/issues"],labels:["GET /search/labels"],repos:["GET /search/repositories"],topics:["GET /search/topics"],users:["GET /search/users"]},secretScanning:{getAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/secret-scanning/alerts"],listAlertsForOrg:["GET /orgs/{org}/secret-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/secret-scanning/alerts"],listLocationsForAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations"],updateAlert:["PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"]},securityAdvisories:{createFork:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks"],createPrivateVulnerabilityReport:["POST /repos/{owner}/{repo}/security-advisories/reports"],createRepositoryAdvisory:["POST /repos/{owner}/{repo}/security-advisories"],createRepositoryAdvisoryCveRequest:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve"],getGlobalAdvisory:["GET /advisories/{ghsa_id}"],getRepositoryAdvisory:["GET /repos/{owner}/{repo}/security-advisories/{ghsa_id}"],listGlobalAdvisories:["GET /advisories"],listOrgRepositoryAdvisories:["GET /orgs/{org}/security-advisories"],listRepositoryAdvisories:["GET /repos/{owner}/{repo}/security-advisories"],updateRepositoryAdvisory:["PATCH /repos/{owner}/{repo}/security-advisories/{ghsa_id}"]},teams:{addOrUpdateMembershipForUserInOrg:["PUT /orgs/{org}/teams/{team_slug}/memberships/{username}"],addOrUpdateProjectPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}"],addOrUpdateRepoPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],checkPermissionsForProjectInOrg:["GET /orgs/{org}/teams/{team_slug}/projects/{project_id}"],checkPermissionsForRepoInOrg:["GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],create:["POST /orgs/{org}/teams"],createDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],createDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions"],deleteDiscussionCommentInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],deleteDiscussionInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],deleteInOrg:["DELETE /orgs/{org}/teams/{team_slug}"],getByName:["GET /orgs/{org}/teams/{team_slug}"],getDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],getDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],getMembershipForUserInOrg:["GET /orgs/{org}/teams/{team_slug}/memberships/{username}"],list:["GET /orgs/{org}/teams"],listChildInOrg:["GET /orgs/{org}/teams/{team_slug}/teams"],listDiscussionCommentsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],listDiscussionsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions"],listForAuthenticatedUser:["GET /user/teams"],listMembersInOrg:["GET /orgs/{org}/teams/{team_slug}/members"],listPendingInvitationsInOrg:["GET /orgs/{org}/teams/{team_slug}/invitations"],listProjectsInOrg:["GET /orgs/{org}/teams/{team_slug}/projects"],listReposInOrg:["GET /orgs/{org}/teams/{team_slug}/repos"],removeMembershipForUserInOrg:["DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}"],removeProjectInOrg:["DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}"],removeRepoInOrg:["DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],updateDiscussionCommentInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],updateDiscussionInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],updateInOrg:["PATCH /orgs/{org}/teams/{team_slug}"]},users:{addEmailForAuthenticated:["POST /user/emails",{},{renamed:["users","addEmailForAuthenticatedUser"]}],addEmailForAuthenticatedUser:["POST /user/emails"],addSocialAccountForAuthenticatedUser:["POST /user/social_accounts"],block:["PUT /user/blocks/{username}"],checkBlocked:["GET /user/blocks/{username}"],checkFollowingForUser:["GET /users/{username}/following/{target_user}"],checkPersonIsFollowedByAuthenticated:["GET /user/following/{username}"],createGpgKeyForAuthenticated:["POST /user/gpg_keys",{},{renamed:["users","createGpgKeyForAuthenticatedUser"]}],createGpgKeyForAuthenticatedUser:["POST /user/gpg_keys"],createPublicSshKeyForAuthenticated:["POST /user/keys",{},{renamed:["users","createPublicSshKeyForAuthenticatedUser"]}],createPublicSshKeyForAuthenticatedUser:["POST /user/keys"],createSshSigningKeyForAuthenticatedUser:["POST /user/ssh_signing_keys"],deleteEmailForAuthenticated:["DELETE /user/emails",{},{renamed:["users","deleteEmailForAuthenticatedUser"]}],deleteEmailForAuthenticatedUser:["DELETE /user/emails"],deleteGpgKeyForAuthenticated:["DELETE /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","deleteGpgKeyForAuthenticatedUser"]}],deleteGpgKeyForAuthenticatedUser:["DELETE /user/gpg_keys/{gpg_key_id}"],deletePublicSshKeyForAuthenticated:["DELETE /user/keys/{key_id}",{},{renamed:["users","deletePublicSshKeyForAuthenticatedUser"]}],deletePublicSshKeyForAuthenticatedUser:["DELETE /user/keys/{key_id}"],deleteSocialAccountForAuthenticatedUser:["DELETE /user/social_accounts"],deleteSshSigningKeyForAuthenticatedUser:["DELETE /user/ssh_signing_keys/{ssh_signing_key_id}"],follow:["PUT /user/following/{username}"],getAuthenticated:["GET /user"],getByUsername:["GET /users/{username}"],getContextForUser:["GET /users/{username}/hovercard"],getGpgKeyForAuthenticated:["GET /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","getGpgKeyForAuthenticatedUser"]}],getGpgKeyForAuthenticatedUser:["GET /user/gpg_keys/{gpg_key_id}"],getPublicSshKeyForAuthenticated:["GET /user/keys/{key_id}",{},{renamed:["users","getPublicSshKeyForAuthenticatedUser"]}],getPublicSshKeyForAuthenticatedUser:["GET /user/keys/{key_id}"],getSshSigningKeyForAuthenticatedUser:["GET /user/ssh_signing_keys/{ssh_signing_key_id}"],list:["GET /users"],listBlockedByAuthenticated:["GET /user/blocks",{},{renamed:["users","listBlockedByAuthenticatedUser"]}],listBlockedByAuthenticatedUser:["GET /user/blocks"],listEmailsForAuthenticated:["GET /user/emails",{},{renamed:["users","listEmailsForAuthenticatedUser"]}],listEmailsForAuthenticatedUser:["GET /user/emails"],listFollowedByAuthenticated:["GET /user/following",{},{renamed:["users","listFollowedByAuthenticatedUser"]}],listFollowedByAuthenticatedUser:["GET /user/following"],listFollowersForAuthenticatedUser:["GET /user/followers"],listFollowersForUser:["GET /users/{username}/followers"],listFollowingForUser:["GET /users/{username}/following"],listGpgKeysForAuthenticated:["GET /user/gpg_keys",{},{renamed:["users","listGpgKeysForAuthenticatedUser"]}],listGpgKeysForAuthenticatedUser:["GET /user/gpg_keys"],listGpgKeysForUser:["GET /users/{username}/gpg_keys"],listPublicEmailsForAuthenticated:["GET /user/public_emails",{},{renamed:["users","listPublicEmailsForAuthenticatedUser"]}],listPublicEmailsForAuthenticatedUser:["GET /user/public_emails"],listPublicKeysForUser:["GET /users/{username}/keys"],listPublicSshKeysForAuthenticated:["GET /user/keys",{},{renamed:["users","listPublicSshKeysForAuthenticatedUser"]}],listPublicSshKeysForAuthenticatedUser:["GET /user/keys"],listSocialAccountsForAuthenticatedUser:["GET /user/social_accounts"],listSocialAccountsForUser:["GET /users/{username}/social_accounts"],listSshSigningKeysForAuthenticatedUser:["GET /user/ssh_signing_keys"],listSshSigningKeysForUser:["GET /users/{username}/ssh_signing_keys"],setPrimaryEmailVisibilityForAuthenticated:["PATCH /user/email/visibility",{},{renamed:["users","setPrimaryEmailVisibilityForAuthenticatedUser"]}],setPrimaryEmailVisibilityForAuthenticatedUser:["PATCH /user/email/visibility"],unblock:["DELETE /user/blocks/{username}"],unfollow:["DELETE /user/following/{username}"],updateAuthenticated:["PATCH /user"]}},Bdi=qEa;var Jfe=new Map;for(let[e,t]of Object.entries(Bdi))for(let[r,s]of Object.entries(t)){let[a,o,g]=s,[p,f]=a.split(/ /),m=Object.assign({method:p,url:f},o);Jfe.has(e)||Jfe.set(e,new Map),Jfe.get(e).set(r,{scope:e,methodName:r,endpointDefaults:m,decorations:g})}var $Ea={has({scope:e},t){return Jfe.get(e).has(t)},getOwnPropertyDescriptor(e,t){return{value:this.get(e,t),configurable:!0,writable:!0,enumerable:!0}},defineProperty(e,t,r){return Object.defineProperty(e.cache,t,r),!0},deleteProperty(e,t){return delete e.cache[t],!0},ownKeys({scope:e}){return[...Jfe.get(e).keys()]},set(e,t,r){return e.cache[t]=r},get({octokit:e,scope:t,cache:r},s){if(r[s])return r[s];let a=Jfe.get(t).get(s);if(!a)return;let{endpointDefaults:o,decorations:g}=a;return g?r[s]=e1a(e,t,s,o,g):r[s]=e.request.defaults(o),r[s]}};function Jfr(e){let t={};for(let r of Jfe.keys())t[r]=new Proxy({octokit:e,scope:r,cache:{}},$Ea);return t}function e1a(e,t,r,s,a){let o=e.request.defaults(s);function g(...p){let f=o.endpoint.merge(...p);if(a.mapToData)return f=Object.assign({},f,{data:f[a.mapToData],[a.mapToData]:void 0}),o(f);if(a.renamed){let[m,y]=a.renamed;e.log.warn(`octokit.${t}.${r}() has been renamed to octokit.${m}.${y}()`)}if(a.deprecated&&e.log.warn(a.deprecated),a.renamedParameters){let m=o.endpoint.merge(...p);for(let[y,B]of Object.entries(a.renamedParameters))y in m&&(e.log.warn(`"${y}" parameter is deprecated for "octokit.${t}.${r}()". Use "${B}" instead`),B in m||(m[B]=m[y]),delete m[y]);return o(m)}return o(...p)}return Object.assign(g,o)}function t1a(e){return{rest:Jfr(e)}}t1a.VERSION=Xfr;function Ufr(e){let t=Jfr(e);return{...t,rest:t}}Ufr.VERSION=Xfr;var vdi="21.0.2";var Sdi=oht.plugin(Qfr,Ufr,Hfr).defaults({userAgent:`octokit-rest.js/${vdi}`});var wdi=function(){if(!process.env.GITHUB_ACTION)throw new Error("[@octokit/auth-action] `GITHUB_ACTION` environment variable is not set. @octokit/auth-action is meant to be used in GitHub Actions only.");let t=[process.env.GITHUB_TOKEN,process.env.INPUT_GITHUB_TOKEN,process.env.INPUT_TOKEN].filter(Boolean);if(t.length===0)throw new Error("[@octokit/auth-action] `GITHUB_TOKEN` variable is not set. It must be set on either `env:` or `with:`. See https://github.com/octokit/auth-action.js#createactionauth");if(t.length>1)throw new Error("[@octokit/auth-action] The token variable is specified more than once. Use either `with.token`, `with.GITHUB_TOKEN`, or `env.GITHUB_TOKEN`. See https://github.com/octokit/auth-action.js#createactionauth");let r=t.pop();return sht(r)};var aht=class{client;constructor(t){this.client=new Sdi({auth:t.token,authStrategy:wdi})}async create(t){let{owner:r,repo:s,tag_name:a,name:o,make_latest:g,draft:p,body:f}=t;return(await this.client.repos.createRelease({owner:r,repo:s,tag_name:a,draft:p,make_latest:g?"true":"false",name:o,body:f})).status}};import r1a from"node:assert/strict";var Tdi=e=>{console.debug("Repository URL:",e);let t=e.match(/github\.com[/:](.+?)\/(.+?)(?:\.git|$)/);r1a.ok(t,"URL does not match pattern");let[,r,s]=t;return{organization:r,repository:s}};var cht=class extends Ndi.BaseCommand{static paths=[["release","create"]];async execute(){let t=await Ddi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await kdi.Project.find(t,this.context.cwd);if(!s)throw new Rdi.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await xdi.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await o.startTimerPromise("Creating release",async()=>{let g=process.env.GITHUB_TOKEN;CHe.ok(g,"GitHub Token is missing");let p="",f=s.manifest.name?.scope;f&&(p+=`@${f}/`);let m=s.manifest.name?.name;CHe.ok(m,"Missing workspace name");let{version:y}=s.manifest;CHe.ok(y,"Missing version"),p+=`${m}`;let v=await new YEe().generate({packageName:p,version:y,path:this.context.cwd}),G=new aht({token:g}),T="",O="";try{({repository:O,organization:T}=Tdi(n1a("git remote get-url origin",{encoding:"utf-8"})))}catch{[T,O]=process.env.GITHUB_REPOSITORY?.split("/")??["",""]}CHe.ok(T,"Could not get url of the repo"),CHe.ok(O,"Could not get url of the repo"),await G.create({draft:!1,make_latest:!0,name:`${p}@${y}`,tag_name:`${p}@${y}`,body:v,owner:T,repo:O})})})).exitCode()}};var Gdi={commands:[cht]};var FIr={};jf(FIr,{RendererBuildCommand:()=>mHe,RendererDevCommand:()=>wHe,default:()=>Bfi});var Zdi=xt(nl(),1),Ldi=xt(Bn(),1),Vdi=xt(Bn(),1),lht=xt(Bn(),1),jfr=xt(Bn(),1),$U=xt(Ro(),1),f9=xt(Ro(),1);import{PassThrough as Fdi}from"node:stream";var mHe=class extends Zdi.BaseCommand{static paths=[["renderer","build"]];async execute(){let t=await Ldi.Configuration.find(this.context.cwd,this.context.plugins);return(await Vdi.StreamReport.start({stdout:this.context.stdout,configuration:t},async s=>{await s.startTimerPromise("Renderer build",async()=>{let a=new Fdi,o=new Fdi;a.on("data",g=>{g.toString().split(` -`).filter(Boolean).forEach(p=>{s.reportInfo(lht.MessageName.UNNAMED,p)})}),o.on("data",g=>{g.toString().split(` -`).filter(Boolean).forEach(p=>{s.reportInfo(lht.MessageName.UNNAMED,p)})});try{await $U.xfs.writeJsonPromise(f9.ppath.join(this.context.cwd,"src/package.json"),{type:"module"}),await jfr.execUtils.pipevp("yarn",["next","build","src","--no-lint"],{end:jfr.execUtils.EndStrategy.ErrorCode,cwd:this.context.cwd,stdin:this.context.stdin,stdout:a,stderr:o})}catch(g){s.reportError(lht.MessageName.UNNAMED,g instanceof Error?g.message:"Build error")}finally{await $U.xfs.removePromise(f9.ppath.join(this.context.cwd,"src/package.json"))}}),await s.startTimerPromise("Copy standalone files",async()=>{await $U.xfs.existsPromise(f9.ppath.join(this.context.cwd,"dist"))&&await $U.xfs.rmdirPromise(f9.ppath.join(this.context.cwd,"dist"),{recursive:!0}),await $U.xfs.copyPromise(f9.ppath.join(this.context.cwd,"dist"),f9.ppath.join(this.context.cwd,"src/.next/standalone",this.context.cwd.replace(`${t.projectCwd||""}/`,""),"src"))}),await s.startTimerPromise("Copy static files",async()=>{await $U.xfs.copyPromise(f9.ppath.join(this.context.cwd,"dist/.next/static"),f9.ppath.join(this.context.cwd,"src/.next/static"))}),await s.startTimerPromise("Copy edge chunks files",async()=>{await $U.xfs.existsPromise(f9.ppath.join(this.context.cwd,"src/.next/server/edge-chunks"))&&await $U.xfs.copyPromise(f9.ppath.join(this.context.cwd,"dist/.next/server/edge-chunks"),f9.ppath.join(this.context.cwd,"src/.next/server/edge-chunks"))}),await s.startTimerPromise("Move server start files",async()=>{await $U.xfs.movePromise(f9.ppath.join(this.context.cwd,"dist/server.js"),f9.ppath.join(this.context.cwd,"dist/index.js"))})})).exitCode()}};var hfi=xt(nl(),1),_fi=xt(Bn(),1),yfi=xt(Bn(),1),GIr=xt(Ro(),1),SHe=xt(Ro(),1);Fl();var bfi=xt(irt(),1),Efi=xt(mfi(),1),wHe=class extends hfi.BaseCommand{static paths=[["renderer","dev"]];tunnel=ed.Boolean("--tunnel");https=ed.Boolean("--https");#e;async runTunnel(t,r){this.#e&&this.#e.close(),this.#e=await(0,Efi.default)({host:t,port:r}),console.log("your url is: %s",this.#e.url)}startTunnel(t,r=3e3){this.runTunnel(t,r),process.stdin.on("data",s=>{s.toString().trim()==="rs"&&this.runTunnel(t,r)})}async execute(){let t=await _fi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await yfi.Project.find(t,this.context.cwd),s=["next","dev","src"];if(this.https){if(!await GIr.xfs.existsPromise(SHe.ppath.join(r.cwd,".config/certs/local/dev.key")))throw new Error("Https key not found");if(!await GIr.xfs.existsPromise(SHe.ppath.join(r.cwd,".config/certs/local/dev.crt")))throw new Error("Https cert not found");s.push("--experimental-https"),s.push("--experimental-https-key",SHe.ppath.join(r.cwd,".config/certs/local/dev.key")),s.push("--experimental-https-cert",SHe.ppath.join(r.cwd,".config/certs/local/dev.crt"))}if((0,bfi.default)("yarn",s,{stdio:"inherit",cwd:this.context.cwd}),this.tunnel){let a=r.getWorkspaceByCwd(this.context.cwd),{tunnel:o}=a.manifest.raw.tools||{};if(!o?.host)throw new Error("Tunnel host not configured");this.startTunnel(o.host,o.port)}}};var Bfi={commands:[mHe,wHe]};var u_r={};jf(u_r,{AbstractServiceCommand:()=>EIe,ServiceBuildCommand:()=>c5e,ServiceDevCommand:()=>l5e,default:()=>DSi});var mSi=xt(Bn(),1),hSi=xt(Bn(),1),a_r=xt(Ro(),1),_Si=xt(Bn(),1),ySi=xt(Bn(),1),bSi=xt(Ro(),1),ESi=xt(Dc(),1),c_r=xt(Fs(),1);var THe=xt(Dc(),1),xfi=xt(Fs(),1),kfi=xt(Fs(),1),qfe=xt(Fs(),1);var vfi=xt(Fs(),1),Sfi=xt(Fs(),1),wfi=xt(Fs(),1),Tfi=({service:e})=>{let[t,r]=(0,Sfi.useState)(0);return(0,vfi.useEffect)(()=>{let s=({percent:a})=>{r(a)};return e.on("build:progress",s),()=>{e.off("build:progress",s)}},[e,r]),wfi.default.createElement(fM,{value:t})};var ZIr=xt(Dc(),1),LIr=xt(Dc(),1),Nfi=xt(Fs(),1),Rfi=xt(Fs(),1),zSe=xt(Fs(),1),Dfi=({service:e})=>{let[t,r]=(0,Rfi.useState)("");return(0,Nfi.useEffect)(()=>{let s=a=>{r(a.message)};return e.on("build:progress",s),()=>{e.off("build:progress",s)}},[e,r]),zSe.default.createElement(ZIr.Box,{flexDirection:"row",width:"100%"},zSe.default.createElement(ZIr.Box,{flexGrow:1},zSe.default.createElement(Dk,{color:"cyan"},"Service:"),zSe.default.createElement(LIr.Text,null," "),zSe.default.createElement(LIr.Text,{color:"white"},t)))};var wht=({service:e})=>{let[t,r]=(0,xfi.useState)(!1);return(0,kfi.useEffect)(()=>{let s=()=>{setTimeout(()=>{r(!0)},1)};return e.on("end",s),()=>{e.off("end",s)}},[r]),t?null:qfe.default.createElement(THe.Box,{position:"relative",height:7},qfe.default.createElement(THe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%"},qfe.default.createElement(THe.Box,null,qfe.default.createElement(Dfi,{service:e})),qfe.default.createElement(THe.Box,{marginTop:1,marginBottom:1},qfe.default.createElement(Tfi,{service:e}))))};import{readFile as X2a}from"node:fs/promises";import{writeFile as J2a}from"node:fs/promises";import{mkdtemp as U2a}from"node:fs/promises";import{tmpdir as K2a}from"node:os";import{join as NHe}from"node:path";import{readFile as Y2a}from"node:fs/promises";import{join as H2a}from"node:path";import{readFile as M2a}from"node:fs/promises";import{join as Q2a}from"node:path";var Tht=class{static async find(t){try{let{tools:r={}}=JSON.parse(await M2a(Q2a(t,"package.json"),"utf-8"));return r}catch{return{}}}};var Nht=class{constructor(t){this.cwd=t}#e=[];#t=[];async loadPackageJson(){try{return JSON.parse(await Y2a(H2a(this.cwd,"package.json"),"utf-8"))}catch{return{}}}async loadDependencies(){let{dependencies:t={}}=await this.loadPackageJson();return Object.keys(t)}async loadExternals(){let{service:t}=await Tht.find(this.cwd);return t?.externals||[]}async build(){return this.#e=await this.loadExternals(),this.#t=await this.loadDependencies(),this.externals}externals=({request:t},r)=>{t&&this.#t.includes(t)?r(void 0,t,"module"):t&&this.#e.includes(t)?r(void 0,t,"import"):r()}};var Gfi=["@grpc/grpc-js","mqtt","nats","mariadb/callback","better-sqlite3","pg-native","hdb-pool","oracledb","mongodb","tedious","sqlite3","mysql","mysql2","mssql","sql.js","libsql","@mikro-orm/better-sqlite","@mikro-orm/mongodb","@mikro-orm/mariadb","@mikro-orm/sqlite","@mikro-orm/mysql","@nestjs/mongoose","@nestjs/typeorm/dist/common/typeorm.utils","@nestjs/sequelize/dist/common/sequelize.utils"];var Rht=class{constructor(t,r,s){this.webpack=t;this.loaders=r;this.cwd=s}async build(t="production",r=[]){let s=NHe(await U2a(NHe(K2a(),"code-service-")),"tsconfig.json");await J2a(s,'{"include":["**/*"]}');let a=await this.getWorkspaceType(),g=["webpack/hot/poll?100",await new Nht(this.cwd).build()],p=this.createPlugins(t,r);return{mode:t,bail:t==="production",target:"node",optimization:{minimize:!1},experiments:{outputModule:a==="module"},plugins:p,entry:{index:NHe(this.cwd,"src/index"),...t==="development"&&{hot:"webpack/hot/poll?100"}},node:{__dirname:!0,__filename:!1},output:{path:NHe(this.cwd,"dist"),filename:"[name].js",library:{type:a},chunkFormat:t==="development"?"commonjs":a,module:a==="module",clean:!1,assetModuleFilename:"assets/[name][ext]"},resolve:{extensionAlias:{".js":[".tsx",".ts",".js"],".jsx":[".tsx",".ts",".js"],".cjs":[".cjs",".cts"],".mjs":[".mjs",".mts"]},extensions:[".tsx",".ts",".js"],alias:{"class-transformer/storage":"class-transformer/cjs/storage"}},externals:g,externalsType:t==="production"?a==="module"?"import":"commonjs":"commonjs2",externalsPresets:{node:!0},devtool:t==="production"?"source-map":"eval-cheap-module-source-map",module:{rules:[{test:/\.d\.ts$/,use:{loader:this.loaders.nullLoader}},{test:/(^.?|\.[^d]|[^.]d|[^.][^d])\.tsx?$/,use:{loader:this.loaders.tsLoader,options:{transpileOnly:!0,experimentalWatchApi:!0,onlyCompileBundledFiles:!0,compilerOptions:{...yU.compilerOptions,sourceMap:!0},context:this.cwd,configFile:s}}},{test:/\.(woff|woff2|eot|ttf|otf)$/i,type:"asset/resource"},{test:/\.(png|svg|jpg|jpeg|gif)$/i,type:"asset/resource"},{test:/\.(md)$/i,type:"asset/resource"},{test:/\.node$/,use:this.loaders.nodeLoader}]}}}async getWorkspaceType(){try{let t=await X2a(NHe(this.cwd,"package.json"),"utf-8"),{type:r="commonjs"}=JSON.parse(t);return r}catch{return"module"}}createPlugins(t,r){let s=[new this.webpack.IgnorePlugin({checkResource:a=>{if(a.endsWith(".js.map"))return!0;if(!Gfi.includes(a))return!1;try{Dt.resolve(a,{paths:[this.cwd]})}catch{return!0}return!1}}),...r];return t==="development"&&(s.push(new this.webpack.HotModuleReplacementPlugin),s.push(new this.webpack.BannerPlugin({banner:`import { createRequire } from 'node:module' +`)}var e1a=class extends Error{constructor(e,t,r){super($Ea(r)),this.request=e,this.headers=t,this.response=r,this.errors=r.errors,this.data=r.data,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}name="GraphqlResponseError";errors;data},t1a=["method","baseUrl","url","headers","request","query","mediaType"],r1a=["query","method","url"],vdi=/\/api\/v3\/?$/;function n1a(e,t,r){if(r){if(typeof t=="string"&&"query"in r)return Promise.reject(new Error('[@octokit/graphql] "query" cannot be used as variable name'));for(let g in r)if(r1a.includes(g))return Promise.reject(new Error(`[@octokit/graphql] "${g}" cannot be used as variable name`))}let s=typeof t=="string"?Object.assign({query:t},r):t,a=Object.keys(s).reduce((g,p)=>t1a.includes(p)?(g[p]=s[p],g):(g.variables||(g.variables={}),g.variables[p]=s[p],g),{}),o=s.baseUrl||e.endpoint.DEFAULTS.baseUrl;return vdi.test(o)&&(a.url=o.replace(vdi,"/api/graphql")),e(a).then(g=>{if(g.data.errors){let p={};for(let f of Object.keys(g.headers))p[f]=g.headers[f];throw new e1a(a,p,g.data)}return g.data.data})}function Xfr(e,t){let r=e.defaults(t);return Object.assign((a,o)=>n1a(r,a,o),{defaults:Xfr.bind(null,r),endpoint:r.endpoint})}var Y1l=Xfr(mHe,{headers:{"user-agent":`octokit-graphql.js/${qEa} ${toe()}`},method:"POST",url:"/graphql"});function Sdi(e){return Xfr(e,{method:"POST",url:"/graphql"})}var i1a=/^v1\./,s1a=/^ghs_/,o1a=/^ghu_/;async function a1a(e){let t=e.split(/\./).length===3,r=i1a.test(e)||s1a.test(e),s=o1a.test(e);return{type:"token",token:e,tokenType:t?"app":r?"installation":s?"user-to-server":"oauth"}}function c1a(e){return e.split(/\./).length===3?`bearer ${e}`:`token ${e}`}async function l1a(e,t,r,s){let a=t.endpoint.merge(r,s);return a.headers.authorization=c1a(e),t(a)}var cht=function(t){if(!t)throw new Error("[@octokit/auth-token] No token passed to createTokenAuth");if(typeof t!="string")throw new Error("[@octokit/auth-token] Token passed to createTokenAuth is not a string");return t=t.replace(/^(token|bearer) +/i,""),Object.assign(a1a.bind(null,t),{hook:l1a.bind(null,t)})};var Jfr="6.1.2";var wdi=()=>{},u1a=console.warn.bind(console),g1a=console.error.bind(console),Tdi=`octokit-core.js/${Jfr} ${toe()}`,lht=class{static VERSION=Jfr;static defaults(t){return class extends this{constructor(...s){let a=s[0]||{};if(typeof t=="function"){super(t(a));return}super(Object.assign({},t,a,a.userAgent&&t.userAgent?{userAgent:`${a.userAgent} ${t.userAgent}`}:null))}}}static plugins=[];static plugin(...t){let r=this.plugins;return class extends this{static plugins=r.concat(t.filter(a=>!r.includes(a)))}}constructor(t={}){let r=new Idi.Collection,s={baseUrl:mHe.endpoint.DEFAULTS.baseUrl,headers:{},request:Object.assign({},t.request,{hook:r.bind(null,"request")}),mediaType:{previews:[],format:""}};if(s.headers["user-agent"]=t.userAgent?`${t.userAgent} ${Tdi}`:Tdi,t.baseUrl&&(s.baseUrl=t.baseUrl),t.previews&&(s.mediaType.previews=t.previews),t.timeZone&&(s.headers["time-zone"]=t.timeZone),this.request=mHe.defaults(s),this.graphql=Sdi(this.request).defaults(s),this.log=Object.assign({debug:wdi,info:wdi,warn:u1a,error:g1a},t.log),this.hook=r,t.authStrategy){let{authStrategy:o,...g}=t,p=o(Object.assign({request:this.request,log:this.log,octokit:this,octokitOptions:g},t.auth));r.wrap("request",p.hook),this.auth=p}else if(!t.auth)this.auth=async()=>({type:"unauthenticated"});else{let o=cht(t.auth);r.wrap("request",o.hook),this.auth=o}let a=this.constructor;for(let o=0;o{e.log.debug("request",r);let s=Date.now(),a=e.request.endpoint.parse(r),o=a.url.replace(r.baseUrl,"");return t(r).then(g=>{let p=g.headers["x-github-request-id"];return e.log.info(`${a.method} ${o} - ${g.status} with id ${p} in ${Date.now()-s}ms`),g}).catch(g=>{let p=g.response?.headers["x-github-request-id"]||"UNKNOWN";throw e.log.error(`${a.method} ${o} - ${g.status} with id ${p} in ${Date.now()-s}ms`),g})})}Ufr.VERSION=Ndi;var A1a="0.0.0-development";function d1a(e){if(!e.data)return{...e,data:[]};if(!("total_count"in e.data&&!("url"in e.data)))return e;let r=e.data.incomplete_results,s=e.data.repository_selection,a=e.data.total_count;delete e.data.incomplete_results,delete e.data.repository_selection,delete e.data.total_count;let o=Object.keys(e.data)[0],g=e.data[o];return e.data=g,typeof r<"u"&&(e.data.incomplete_results=r),typeof s<"u"&&(e.data.repository_selection=s),e.data.total_count=a,e}function Kfr(e,t,r){let s=typeof t=="function"?t.endpoint(r):e.request.endpoint(t,r),a=typeof t=="function"?t:e.request,o=s.method,g=s.headers,p=s.url;return{[Symbol.asyncIterator]:()=>({async next(){if(!p)return{done:!0};try{let f=await a({method:o,url:p,headers:g}),m=d1a(f);return p=((m.headers.link||"").match(/<([^>]+)>;\s*rel="next"/)||[])[1],{value:m}}catch(f){if(f.status!==409)throw f;return p="",{value:{status:200,headers:{},data:[]}}}}})}}function Rdi(e,t,r,s){return typeof r=="function"&&(s=r,r=void 0),Ddi(e,[],Kfr(e,t,r)[Symbol.asyncIterator](),s)}function Ddi(e,t,r,s){return r.next().then(a=>{if(a.done)return t;let o=!1;function g(){o=!0}return t=t.concat(s?s(a.value,g):a.value.data),o?t:Ddi(e,t,r,s)})}var c2l=Object.assign(Rdi,{iterator:Kfr});function jfr(e){return{paginate:Object.assign(Rdi.bind(null,e),{iterator:Kfr.bind(null,e)})}}jfr.VERSION=A1a;var zfr="13.2.6";var p1a={actions:{addCustomLabelsToSelfHostedRunnerForOrg:["POST /orgs/{org}/actions/runners/{runner_id}/labels"],addCustomLabelsToSelfHostedRunnerForRepo:["POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],approveWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve"],cancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel"],createEnvironmentVariable:["POST /repos/{owner}/{repo}/environments/{environment_name}/variables"],createOrUpdateEnvironmentSecret:["PUT /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}"],createOrgVariable:["POST /orgs/{org}/actions/variables"],createRegistrationTokenForOrg:["POST /orgs/{org}/actions/runners/registration-token"],createRegistrationTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/registration-token"],createRemoveTokenForOrg:["POST /orgs/{org}/actions/runners/remove-token"],createRemoveTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/remove-token"],createRepoVariable:["POST /repos/{owner}/{repo}/actions/variables"],createWorkflowDispatch:["POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches"],deleteActionsCacheById:["DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}"],deleteActionsCacheByKey:["DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}"],deleteArtifact:["DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],deleteEnvironmentSecret:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],deleteEnvironmentVariable:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],deleteOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}"],deleteOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}"],deleteRepoVariable:["DELETE /repos/{owner}/{repo}/actions/variables/{name}"],deleteSelfHostedRunnerFromOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}"],deleteSelfHostedRunnerFromRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}"],deleteWorkflowRun:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}"],deleteWorkflowRunLogs:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],disableSelectedRepositoryGithubActionsOrganization:["DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}"],disableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable"],downloadArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}"],downloadJobLogsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs"],downloadWorkflowRunAttemptLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs"],downloadWorkflowRunLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],enableSelectedRepositoryGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories/{repository_id}"],enableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable"],forceCancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/force-cancel"],generateRunnerJitconfigForOrg:["POST /orgs/{org}/actions/runners/generate-jitconfig"],generateRunnerJitconfigForRepo:["POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig"],getActionsCacheList:["GET /repos/{owner}/{repo}/actions/caches"],getActionsCacheUsage:["GET /repos/{owner}/{repo}/actions/cache/usage"],getActionsCacheUsageByRepoForOrg:["GET /orgs/{org}/actions/cache/usage-by-repository"],getActionsCacheUsageForOrg:["GET /orgs/{org}/actions/cache/usage"],getAllowedActionsOrganization:["GET /orgs/{org}/actions/permissions/selected-actions"],getAllowedActionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/selected-actions"],getArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],getCustomOidcSubClaimForRepo:["GET /repos/{owner}/{repo}/actions/oidc/customization/sub"],getEnvironmentPublicKey:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/public-key"],getEnvironmentSecret:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],getEnvironmentVariable:["GET /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],getGithubActionsDefaultWorkflowPermissionsOrganization:["GET /orgs/{org}/actions/permissions/workflow"],getGithubActionsDefaultWorkflowPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/workflow"],getGithubActionsPermissionsOrganization:["GET /orgs/{org}/actions/permissions"],getGithubActionsPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions"],getJobForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}"],getOrgPublicKey:["GET /orgs/{org}/actions/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}"],getOrgVariable:["GET /orgs/{org}/actions/variables/{name}"],getPendingDeploymentsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],getRepoPermissions:["GET /repos/{owner}/{repo}/actions/permissions",{},{renamed:["actions","getGithubActionsPermissionsRepository"]}],getRepoPublicKey:["GET /repos/{owner}/{repo}/actions/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/actions/secrets/{secret_name}"],getRepoVariable:["GET /repos/{owner}/{repo}/actions/variables/{name}"],getReviewsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals"],getSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}"],getSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}"],getWorkflow:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}"],getWorkflowAccessToRepository:["GET /repos/{owner}/{repo}/actions/permissions/access"],getWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}"],getWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}"],getWorkflowRunUsage:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing"],getWorkflowUsage:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing"],listArtifactsForRepo:["GET /repos/{owner}/{repo}/actions/artifacts"],listEnvironmentSecrets:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets"],listEnvironmentVariables:["GET /repos/{owner}/{repo}/environments/{environment_name}/variables"],listJobsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs"],listJobsForWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs"],listLabelsForSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}/labels"],listLabelsForSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],listOrgSecrets:["GET /orgs/{org}/actions/secrets"],listOrgVariables:["GET /orgs/{org}/actions/variables"],listRepoOrganizationSecrets:["GET /repos/{owner}/{repo}/actions/organization-secrets"],listRepoOrganizationVariables:["GET /repos/{owner}/{repo}/actions/organization-variables"],listRepoSecrets:["GET /repos/{owner}/{repo}/actions/secrets"],listRepoVariables:["GET /repos/{owner}/{repo}/actions/variables"],listRepoWorkflows:["GET /repos/{owner}/{repo}/actions/workflows"],listRunnerApplicationsForOrg:["GET /orgs/{org}/actions/runners/downloads"],listRunnerApplicationsForRepo:["GET /repos/{owner}/{repo}/actions/runners/downloads"],listSelectedReposForOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}/repositories"],listSelectedReposForOrgVariable:["GET /orgs/{org}/actions/variables/{name}/repositories"],listSelectedRepositoriesEnabledGithubActionsOrganization:["GET /orgs/{org}/actions/permissions/repositories"],listSelfHostedRunnersForOrg:["GET /orgs/{org}/actions/runners"],listSelfHostedRunnersForRepo:["GET /repos/{owner}/{repo}/actions/runners"],listWorkflowRunArtifacts:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts"],listWorkflowRuns:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs"],listWorkflowRunsForRepo:["GET /repos/{owner}/{repo}/actions/runs"],reRunJobForWorkflowRun:["POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun"],reRunWorkflow:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun"],reRunWorkflowFailedJobs:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs"],removeAllCustomLabelsFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels"],removeAllCustomLabelsFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],removeCustomLabelFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}"],removeCustomLabelFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],reviewCustomGatesForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule"],reviewPendingDeploymentsForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],setAllowedActionsOrganization:["PUT /orgs/{org}/actions/permissions/selected-actions"],setAllowedActionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/selected-actions"],setCustomLabelsForSelfHostedRunnerForOrg:["PUT /orgs/{org}/actions/runners/{runner_id}/labels"],setCustomLabelsForSelfHostedRunnerForRepo:["PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],setCustomOidcSubClaimForRepo:["PUT /repos/{owner}/{repo}/actions/oidc/customization/sub"],setGithubActionsDefaultWorkflowPermissionsOrganization:["PUT /orgs/{org}/actions/permissions/workflow"],setGithubActionsDefaultWorkflowPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/workflow"],setGithubActionsPermissionsOrganization:["PUT /orgs/{org}/actions/permissions"],setGithubActionsPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories"],setSelectedReposForOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories"],setSelectedRepositoriesEnabledGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories"],setWorkflowAccessToRepository:["PUT /repos/{owner}/{repo}/actions/permissions/access"],updateEnvironmentVariable:["PATCH /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],updateOrgVariable:["PATCH /orgs/{org}/actions/variables/{name}"],updateRepoVariable:["PATCH /repos/{owner}/{repo}/actions/variables/{name}"]},activity:{checkRepoIsStarredByAuthenticatedUser:["GET /user/starred/{owner}/{repo}"],deleteRepoSubscription:["DELETE /repos/{owner}/{repo}/subscription"],deleteThreadSubscription:["DELETE /notifications/threads/{thread_id}/subscription"],getFeeds:["GET /feeds"],getRepoSubscription:["GET /repos/{owner}/{repo}/subscription"],getThread:["GET /notifications/threads/{thread_id}"],getThreadSubscriptionForAuthenticatedUser:["GET /notifications/threads/{thread_id}/subscription"],listEventsForAuthenticatedUser:["GET /users/{username}/events"],listNotificationsForAuthenticatedUser:["GET /notifications"],listOrgEventsForAuthenticatedUser:["GET /users/{username}/events/orgs/{org}"],listPublicEvents:["GET /events"],listPublicEventsForRepoNetwork:["GET /networks/{owner}/{repo}/events"],listPublicEventsForUser:["GET /users/{username}/events/public"],listPublicOrgEvents:["GET /orgs/{org}/events"],listReceivedEventsForUser:["GET /users/{username}/received_events"],listReceivedPublicEventsForUser:["GET /users/{username}/received_events/public"],listRepoEvents:["GET /repos/{owner}/{repo}/events"],listRepoNotificationsForAuthenticatedUser:["GET /repos/{owner}/{repo}/notifications"],listReposStarredByAuthenticatedUser:["GET /user/starred"],listReposStarredByUser:["GET /users/{username}/starred"],listReposWatchedByUser:["GET /users/{username}/subscriptions"],listStargazersForRepo:["GET /repos/{owner}/{repo}/stargazers"],listWatchedReposForAuthenticatedUser:["GET /user/subscriptions"],listWatchersForRepo:["GET /repos/{owner}/{repo}/subscribers"],markNotificationsAsRead:["PUT /notifications"],markRepoNotificationsAsRead:["PUT /repos/{owner}/{repo}/notifications"],markThreadAsDone:["DELETE /notifications/threads/{thread_id}"],markThreadAsRead:["PATCH /notifications/threads/{thread_id}"],setRepoSubscription:["PUT /repos/{owner}/{repo}/subscription"],setThreadSubscription:["PUT /notifications/threads/{thread_id}/subscription"],starRepoForAuthenticatedUser:["PUT /user/starred/{owner}/{repo}"],unstarRepoForAuthenticatedUser:["DELETE /user/starred/{owner}/{repo}"]},apps:{addRepoToInstallation:["PUT /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","addRepoToInstallationForAuthenticatedUser"]}],addRepoToInstallationForAuthenticatedUser:["PUT /user/installations/{installation_id}/repositories/{repository_id}"],checkToken:["POST /applications/{client_id}/token"],createFromManifest:["POST /app-manifests/{code}/conversions"],createInstallationAccessToken:["POST /app/installations/{installation_id}/access_tokens"],deleteAuthorization:["DELETE /applications/{client_id}/grant"],deleteInstallation:["DELETE /app/installations/{installation_id}"],deleteToken:["DELETE /applications/{client_id}/token"],getAuthenticated:["GET /app"],getBySlug:["GET /apps/{app_slug}"],getInstallation:["GET /app/installations/{installation_id}"],getOrgInstallation:["GET /orgs/{org}/installation"],getRepoInstallation:["GET /repos/{owner}/{repo}/installation"],getSubscriptionPlanForAccount:["GET /marketplace_listing/accounts/{account_id}"],getSubscriptionPlanForAccountStubbed:["GET /marketplace_listing/stubbed/accounts/{account_id}"],getUserInstallation:["GET /users/{username}/installation"],getWebhookConfigForApp:["GET /app/hook/config"],getWebhookDelivery:["GET /app/hook/deliveries/{delivery_id}"],listAccountsForPlan:["GET /marketplace_listing/plans/{plan_id}/accounts"],listAccountsForPlanStubbed:["GET /marketplace_listing/stubbed/plans/{plan_id}/accounts"],listInstallationReposForAuthenticatedUser:["GET /user/installations/{installation_id}/repositories"],listInstallationRequestsForAuthenticatedApp:["GET /app/installation-requests"],listInstallations:["GET /app/installations"],listInstallationsForAuthenticatedUser:["GET /user/installations"],listPlans:["GET /marketplace_listing/plans"],listPlansStubbed:["GET /marketplace_listing/stubbed/plans"],listReposAccessibleToInstallation:["GET /installation/repositories"],listSubscriptionsForAuthenticatedUser:["GET /user/marketplace_purchases"],listSubscriptionsForAuthenticatedUserStubbed:["GET /user/marketplace_purchases/stubbed"],listWebhookDeliveries:["GET /app/hook/deliveries"],redeliverWebhookDelivery:["POST /app/hook/deliveries/{delivery_id}/attempts"],removeRepoFromInstallation:["DELETE /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","removeRepoFromInstallationForAuthenticatedUser"]}],removeRepoFromInstallationForAuthenticatedUser:["DELETE /user/installations/{installation_id}/repositories/{repository_id}"],resetToken:["PATCH /applications/{client_id}/token"],revokeInstallationAccessToken:["DELETE /installation/token"],scopeToken:["POST /applications/{client_id}/token/scoped"],suspendInstallation:["PUT /app/installations/{installation_id}/suspended"],unsuspendInstallation:["DELETE /app/installations/{installation_id}/suspended"],updateWebhookConfigForApp:["PATCH /app/hook/config"]},billing:{getGithubActionsBillingOrg:["GET /orgs/{org}/settings/billing/actions"],getGithubActionsBillingUser:["GET /users/{username}/settings/billing/actions"],getGithubPackagesBillingOrg:["GET /orgs/{org}/settings/billing/packages"],getGithubPackagesBillingUser:["GET /users/{username}/settings/billing/packages"],getSharedStorageBillingOrg:["GET /orgs/{org}/settings/billing/shared-storage"],getSharedStorageBillingUser:["GET /users/{username}/settings/billing/shared-storage"]},checks:{create:["POST /repos/{owner}/{repo}/check-runs"],createSuite:["POST /repos/{owner}/{repo}/check-suites"],get:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}"],getSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}"],listAnnotations:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations"],listForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-runs"],listForSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs"],listSuitesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-suites"],rerequestRun:["POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest"],rerequestSuite:["POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest"],setSuitesPreferences:["PATCH /repos/{owner}/{repo}/check-suites/preferences"],update:["PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}"]},codeScanning:{deleteAnalysis:["DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}"],getAlert:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}",{},{renamedParameters:{alert_id:"alert_number"}}],getAnalysis:["GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}"],getCodeqlDatabase:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}"],getDefaultSetup:["GET /repos/{owner}/{repo}/code-scanning/default-setup"],getSarif:["GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}"],listAlertInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances"],listAlertsForOrg:["GET /orgs/{org}/code-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/code-scanning/alerts"],listAlertsInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances",{},{renamed:["codeScanning","listAlertInstances"]}],listCodeqlDatabases:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases"],listRecentAnalyses:["GET /repos/{owner}/{repo}/code-scanning/analyses"],updateAlert:["PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}"],updateDefaultSetup:["PATCH /repos/{owner}/{repo}/code-scanning/default-setup"],uploadSarif:["POST /repos/{owner}/{repo}/code-scanning/sarifs"]},codesOfConduct:{getAllCodesOfConduct:["GET /codes_of_conduct"],getConductCode:["GET /codes_of_conduct/{key}"]},codespaces:{addRepositoryForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],checkPermissionsForDevcontainer:["GET /repos/{owner}/{repo}/codespaces/permissions_check"],codespaceMachinesForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/machines"],createForAuthenticatedUser:["POST /user/codespaces"],createOrUpdateOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],createOrUpdateSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}"],createWithPrForAuthenticatedUser:["POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces"],createWithRepoForAuthenticatedUser:["POST /repos/{owner}/{repo}/codespaces"],deleteForAuthenticatedUser:["DELETE /user/codespaces/{codespace_name}"],deleteFromOrganization:["DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}"],deleteOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],deleteSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}"],exportForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/exports"],getCodespacesForUserInOrg:["GET /orgs/{org}/members/{username}/codespaces"],getExportDetailsForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/exports/{export_id}"],getForAuthenticatedUser:["GET /user/codespaces/{codespace_name}"],getOrgPublicKey:["GET /orgs/{org}/codespaces/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}"],getPublicKeyForAuthenticatedUser:["GET /user/codespaces/secrets/public-key"],getRepoPublicKey:["GET /repos/{owner}/{repo}/codespaces/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],getSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}"],listDevcontainersInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/devcontainers"],listForAuthenticatedUser:["GET /user/codespaces"],listInOrganization:["GET /orgs/{org}/codespaces",{},{renamedParameters:{org_id:"org"}}],listInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces"],listOrgSecrets:["GET /orgs/{org}/codespaces/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/codespaces/secrets"],listRepositoriesForSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}/repositories"],listSecretsForAuthenticatedUser:["GET /user/codespaces/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],preFlightWithRepoForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/new"],publishForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/publish"],removeRepositoryForSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],repoMachinesForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/machines"],setRepositoriesForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],startForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/start"],stopForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/stop"],stopInOrganization:["POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop"],updateForAuthenticatedUser:["PATCH /user/codespaces/{codespace_name}"]},copilot:{addCopilotSeatsForTeams:["POST /orgs/{org}/copilot/billing/selected_teams"],addCopilotSeatsForUsers:["POST /orgs/{org}/copilot/billing/selected_users"],cancelCopilotSeatAssignmentForTeams:["DELETE /orgs/{org}/copilot/billing/selected_teams"],cancelCopilotSeatAssignmentForUsers:["DELETE /orgs/{org}/copilot/billing/selected_users"],getCopilotOrganizationDetails:["GET /orgs/{org}/copilot/billing"],getCopilotSeatDetailsForUser:["GET /orgs/{org}/members/{username}/copilot"],listCopilotSeats:["GET /orgs/{org}/copilot/billing/seats"],usageMetricsForEnterprise:["GET /enterprises/{enterprise}/copilot/usage"],usageMetricsForOrg:["GET /orgs/{org}/copilot/usage"],usageMetricsForTeam:["GET /orgs/{org}/team/{team_slug}/copilot/usage"]},dependabot:{addSelectedRepoToOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],deleteOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],getAlert:["GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"],getOrgPublicKey:["GET /orgs/{org}/dependabot/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}"],getRepoPublicKey:["GET /repos/{owner}/{repo}/dependabot/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/dependabot/alerts"],listAlertsForOrg:["GET /orgs/{org}/dependabot/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/dependabot/alerts"],listOrgSecrets:["GET /orgs/{org}/dependabot/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/dependabot/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],updateAlert:["PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"]},dependencyGraph:{createRepositorySnapshot:["POST /repos/{owner}/{repo}/dependency-graph/snapshots"],diffRange:["GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}"],exportSbom:["GET /repos/{owner}/{repo}/dependency-graph/sbom"]},emojis:{get:["GET /emojis"]},gists:{checkIsStarred:["GET /gists/{gist_id}/star"],create:["POST /gists"],createComment:["POST /gists/{gist_id}/comments"],delete:["DELETE /gists/{gist_id}"],deleteComment:["DELETE /gists/{gist_id}/comments/{comment_id}"],fork:["POST /gists/{gist_id}/forks"],get:["GET /gists/{gist_id}"],getComment:["GET /gists/{gist_id}/comments/{comment_id}"],getRevision:["GET /gists/{gist_id}/{sha}"],list:["GET /gists"],listComments:["GET /gists/{gist_id}/comments"],listCommits:["GET /gists/{gist_id}/commits"],listForUser:["GET /users/{username}/gists"],listForks:["GET /gists/{gist_id}/forks"],listPublic:["GET /gists/public"],listStarred:["GET /gists/starred"],star:["PUT /gists/{gist_id}/star"],unstar:["DELETE /gists/{gist_id}/star"],update:["PATCH /gists/{gist_id}"],updateComment:["PATCH /gists/{gist_id}/comments/{comment_id}"]},git:{createBlob:["POST /repos/{owner}/{repo}/git/blobs"],createCommit:["POST /repos/{owner}/{repo}/git/commits"],createRef:["POST /repos/{owner}/{repo}/git/refs"],createTag:["POST /repos/{owner}/{repo}/git/tags"],createTree:["POST /repos/{owner}/{repo}/git/trees"],deleteRef:["DELETE /repos/{owner}/{repo}/git/refs/{ref}"],getBlob:["GET /repos/{owner}/{repo}/git/blobs/{file_sha}"],getCommit:["GET /repos/{owner}/{repo}/git/commits/{commit_sha}"],getRef:["GET /repos/{owner}/{repo}/git/ref/{ref}"],getTag:["GET /repos/{owner}/{repo}/git/tags/{tag_sha}"],getTree:["GET /repos/{owner}/{repo}/git/trees/{tree_sha}"],listMatchingRefs:["GET /repos/{owner}/{repo}/git/matching-refs/{ref}"],updateRef:["PATCH /repos/{owner}/{repo}/git/refs/{ref}"]},gitignore:{getAllTemplates:["GET /gitignore/templates"],getTemplate:["GET /gitignore/templates/{name}"]},interactions:{getRestrictionsForAuthenticatedUser:["GET /user/interaction-limits"],getRestrictionsForOrg:["GET /orgs/{org}/interaction-limits"],getRestrictionsForRepo:["GET /repos/{owner}/{repo}/interaction-limits"],getRestrictionsForYourPublicRepos:["GET /user/interaction-limits",{},{renamed:["interactions","getRestrictionsForAuthenticatedUser"]}],removeRestrictionsForAuthenticatedUser:["DELETE /user/interaction-limits"],removeRestrictionsForOrg:["DELETE /orgs/{org}/interaction-limits"],removeRestrictionsForRepo:["DELETE /repos/{owner}/{repo}/interaction-limits"],removeRestrictionsForYourPublicRepos:["DELETE /user/interaction-limits",{},{renamed:["interactions","removeRestrictionsForAuthenticatedUser"]}],setRestrictionsForAuthenticatedUser:["PUT /user/interaction-limits"],setRestrictionsForOrg:["PUT /orgs/{org}/interaction-limits"],setRestrictionsForRepo:["PUT /repos/{owner}/{repo}/interaction-limits"],setRestrictionsForYourPublicRepos:["PUT /user/interaction-limits",{},{renamed:["interactions","setRestrictionsForAuthenticatedUser"]}]},issues:{addAssignees:["POST /repos/{owner}/{repo}/issues/{issue_number}/assignees"],addLabels:["POST /repos/{owner}/{repo}/issues/{issue_number}/labels"],checkUserCanBeAssigned:["GET /repos/{owner}/{repo}/assignees/{assignee}"],checkUserCanBeAssignedToIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee}"],create:["POST /repos/{owner}/{repo}/issues"],createComment:["POST /repos/{owner}/{repo}/issues/{issue_number}/comments"],createLabel:["POST /repos/{owner}/{repo}/labels"],createMilestone:["POST /repos/{owner}/{repo}/milestones"],deleteComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}"],deleteLabel:["DELETE /repos/{owner}/{repo}/labels/{name}"],deleteMilestone:["DELETE /repos/{owner}/{repo}/milestones/{milestone_number}"],get:["GET /repos/{owner}/{repo}/issues/{issue_number}"],getComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}"],getEvent:["GET /repos/{owner}/{repo}/issues/events/{event_id}"],getLabel:["GET /repos/{owner}/{repo}/labels/{name}"],getMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}"],list:["GET /issues"],listAssignees:["GET /repos/{owner}/{repo}/assignees"],listComments:["GET /repos/{owner}/{repo}/issues/{issue_number}/comments"],listCommentsForRepo:["GET /repos/{owner}/{repo}/issues/comments"],listEvents:["GET /repos/{owner}/{repo}/issues/{issue_number}/events"],listEventsForRepo:["GET /repos/{owner}/{repo}/issues/events"],listEventsForTimeline:["GET /repos/{owner}/{repo}/issues/{issue_number}/timeline"],listForAuthenticatedUser:["GET /user/issues"],listForOrg:["GET /orgs/{org}/issues"],listForRepo:["GET /repos/{owner}/{repo}/issues"],listLabelsForMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels"],listLabelsForRepo:["GET /repos/{owner}/{repo}/labels"],listLabelsOnIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/labels"],listMilestones:["GET /repos/{owner}/{repo}/milestones"],lock:["PUT /repos/{owner}/{repo}/issues/{issue_number}/lock"],removeAllLabels:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels"],removeAssignees:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees"],removeLabel:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}"],setLabels:["PUT /repos/{owner}/{repo}/issues/{issue_number}/labels"],unlock:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock"],update:["PATCH /repos/{owner}/{repo}/issues/{issue_number}"],updateComment:["PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}"],updateLabel:["PATCH /repos/{owner}/{repo}/labels/{name}"],updateMilestone:["PATCH /repos/{owner}/{repo}/milestones/{milestone_number}"]},licenses:{get:["GET /licenses/{license}"],getAllCommonlyUsed:["GET /licenses"],getForRepo:["GET /repos/{owner}/{repo}/license"]},markdown:{render:["POST /markdown"],renderRaw:["POST /markdown/raw",{headers:{"content-type":"text/plain; charset=utf-8"}}]},meta:{get:["GET /meta"],getAllVersions:["GET /versions"],getOctocat:["GET /octocat"],getZen:["GET /zen"],root:["GET /"]},migrations:{deleteArchiveForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/archive"],deleteArchiveForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/archive"],downloadArchiveForOrg:["GET /orgs/{org}/migrations/{migration_id}/archive"],getArchiveForAuthenticatedUser:["GET /user/migrations/{migration_id}/archive"],getStatusForAuthenticatedUser:["GET /user/migrations/{migration_id}"],getStatusForOrg:["GET /orgs/{org}/migrations/{migration_id}"],listForAuthenticatedUser:["GET /user/migrations"],listForOrg:["GET /orgs/{org}/migrations"],listReposForAuthenticatedUser:["GET /user/migrations/{migration_id}/repositories"],listReposForOrg:["GET /orgs/{org}/migrations/{migration_id}/repositories"],listReposForUser:["GET /user/migrations/{migration_id}/repositories",{},{renamed:["migrations","listReposForAuthenticatedUser"]}],startForAuthenticatedUser:["POST /user/migrations"],startForOrg:["POST /orgs/{org}/migrations"],unlockRepoForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock"],unlockRepoForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock"]},oidc:{getOidcCustomSubTemplateForOrg:["GET /orgs/{org}/actions/oidc/customization/sub"],updateOidcCustomSubTemplateForOrg:["PUT /orgs/{org}/actions/oidc/customization/sub"]},orgs:{addSecurityManagerTeam:["PUT /orgs/{org}/security-managers/teams/{team_slug}"],assignTeamToOrgRole:["PUT /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],assignUserToOrgRole:["PUT /orgs/{org}/organization-roles/users/{username}/{role_id}"],blockUser:["PUT /orgs/{org}/blocks/{username}"],cancelInvitation:["DELETE /orgs/{org}/invitations/{invitation_id}"],checkBlockedUser:["GET /orgs/{org}/blocks/{username}"],checkMembershipForUser:["GET /orgs/{org}/members/{username}"],checkPublicMembershipForUser:["GET /orgs/{org}/public_members/{username}"],convertMemberToOutsideCollaborator:["PUT /orgs/{org}/outside_collaborators/{username}"],createCustomOrganizationRole:["POST /orgs/{org}/organization-roles"],createInvitation:["POST /orgs/{org}/invitations"],createOrUpdateCustomProperties:["PATCH /orgs/{org}/properties/schema"],createOrUpdateCustomPropertiesValuesForRepos:["PATCH /orgs/{org}/properties/values"],createOrUpdateCustomProperty:["PUT /orgs/{org}/properties/schema/{custom_property_name}"],createWebhook:["POST /orgs/{org}/hooks"],delete:["DELETE /orgs/{org}"],deleteCustomOrganizationRole:["DELETE /orgs/{org}/organization-roles/{role_id}"],deleteWebhook:["DELETE /orgs/{org}/hooks/{hook_id}"],enableOrDisableSecurityProductOnAllOrgRepos:["POST /orgs/{org}/{security_product}/{enablement}"],get:["GET /orgs/{org}"],getAllCustomProperties:["GET /orgs/{org}/properties/schema"],getCustomProperty:["GET /orgs/{org}/properties/schema/{custom_property_name}"],getMembershipForAuthenticatedUser:["GET /user/memberships/orgs/{org}"],getMembershipForUser:["GET /orgs/{org}/memberships/{username}"],getOrgRole:["GET /orgs/{org}/organization-roles/{role_id}"],getWebhook:["GET /orgs/{org}/hooks/{hook_id}"],getWebhookConfigForOrg:["GET /orgs/{org}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}"],list:["GET /organizations"],listAppInstallations:["GET /orgs/{org}/installations"],listBlockedUsers:["GET /orgs/{org}/blocks"],listCustomPropertiesValuesForRepos:["GET /orgs/{org}/properties/values"],listFailedInvitations:["GET /orgs/{org}/failed_invitations"],listForAuthenticatedUser:["GET /user/orgs"],listForUser:["GET /users/{username}/orgs"],listInvitationTeams:["GET /orgs/{org}/invitations/{invitation_id}/teams"],listMembers:["GET /orgs/{org}/members"],listMembershipsForAuthenticatedUser:["GET /user/memberships/orgs"],listOrgRoleTeams:["GET /orgs/{org}/organization-roles/{role_id}/teams"],listOrgRoleUsers:["GET /orgs/{org}/organization-roles/{role_id}/users"],listOrgRoles:["GET /orgs/{org}/organization-roles"],listOrganizationFineGrainedPermissions:["GET /orgs/{org}/organization-fine-grained-permissions"],listOutsideCollaborators:["GET /orgs/{org}/outside_collaborators"],listPatGrantRepositories:["GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories"],listPatGrantRequestRepositories:["GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories"],listPatGrantRequests:["GET /orgs/{org}/personal-access-token-requests"],listPatGrants:["GET /orgs/{org}/personal-access-tokens"],listPendingInvitations:["GET /orgs/{org}/invitations"],listPublicMembers:["GET /orgs/{org}/public_members"],listSecurityManagerTeams:["GET /orgs/{org}/security-managers"],listWebhookDeliveries:["GET /orgs/{org}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /orgs/{org}/hooks"],patchCustomOrganizationRole:["PATCH /orgs/{org}/organization-roles/{role_id}"],pingWebhook:["POST /orgs/{org}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeCustomProperty:["DELETE /orgs/{org}/properties/schema/{custom_property_name}"],removeMember:["DELETE /orgs/{org}/members/{username}"],removeMembershipForUser:["DELETE /orgs/{org}/memberships/{username}"],removeOutsideCollaborator:["DELETE /orgs/{org}/outside_collaborators/{username}"],removePublicMembershipForAuthenticatedUser:["DELETE /orgs/{org}/public_members/{username}"],removeSecurityManagerTeam:["DELETE /orgs/{org}/security-managers/teams/{team_slug}"],reviewPatGrantRequest:["POST /orgs/{org}/personal-access-token-requests/{pat_request_id}"],reviewPatGrantRequestsInBulk:["POST /orgs/{org}/personal-access-token-requests"],revokeAllOrgRolesTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}"],revokeAllOrgRolesUser:["DELETE /orgs/{org}/organization-roles/users/{username}"],revokeOrgRoleTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],revokeOrgRoleUser:["DELETE /orgs/{org}/organization-roles/users/{username}/{role_id}"],setMembershipForUser:["PUT /orgs/{org}/memberships/{username}"],setPublicMembershipForAuthenticatedUser:["PUT /orgs/{org}/public_members/{username}"],unblockUser:["DELETE /orgs/{org}/blocks/{username}"],update:["PATCH /orgs/{org}"],updateMembershipForAuthenticatedUser:["PATCH /user/memberships/orgs/{org}"],updatePatAccess:["POST /orgs/{org}/personal-access-tokens/{pat_id}"],updatePatAccesses:["POST /orgs/{org}/personal-access-tokens"],updateWebhook:["PATCH /orgs/{org}/hooks/{hook_id}"],updateWebhookConfigForOrg:["PATCH /orgs/{org}/hooks/{hook_id}/config"]},packages:{deletePackageForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}"],deletePackageForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}"],deletePackageForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}"],deletePackageVersionForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getAllPackageVersionsForAPackageOwnedByAnOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByOrg"]}],getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByAuthenticatedUser"]}],getAllPackageVersionsForPackageOwnedByAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions"],getPackageForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}"],getPackageForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}"],getPackageForUser:["GET /users/{username}/packages/{package_type}/{package_name}"],getPackageVersionForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],listDockerMigrationConflictingPackagesForAuthenticatedUser:["GET /user/docker/conflicts"],listDockerMigrationConflictingPackagesForOrganization:["GET /orgs/{org}/docker/conflicts"],listDockerMigrationConflictingPackagesForUser:["GET /users/{username}/docker/conflicts"],listPackagesForAuthenticatedUser:["GET /user/packages"],listPackagesForOrganization:["GET /orgs/{org}/packages"],listPackagesForUser:["GET /users/{username}/packages"],restorePackageForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForUser:["POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageVersionForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForUser:["POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"]},projects:{addCollaborator:["PUT /projects/{project_id}/collaborators/{username}"],createCard:["POST /projects/columns/{column_id}/cards"],createColumn:["POST /projects/{project_id}/columns"],createForAuthenticatedUser:["POST /user/projects"],createForOrg:["POST /orgs/{org}/projects"],createForRepo:["POST /repos/{owner}/{repo}/projects"],delete:["DELETE /projects/{project_id}"],deleteCard:["DELETE /projects/columns/cards/{card_id}"],deleteColumn:["DELETE /projects/columns/{column_id}"],get:["GET /projects/{project_id}"],getCard:["GET /projects/columns/cards/{card_id}"],getColumn:["GET /projects/columns/{column_id}"],getPermissionForUser:["GET /projects/{project_id}/collaborators/{username}/permission"],listCards:["GET /projects/columns/{column_id}/cards"],listCollaborators:["GET /projects/{project_id}/collaborators"],listColumns:["GET /projects/{project_id}/columns"],listForOrg:["GET /orgs/{org}/projects"],listForRepo:["GET /repos/{owner}/{repo}/projects"],listForUser:["GET /users/{username}/projects"],moveCard:["POST /projects/columns/cards/{card_id}/moves"],moveColumn:["POST /projects/columns/{column_id}/moves"],removeCollaborator:["DELETE /projects/{project_id}/collaborators/{username}"],update:["PATCH /projects/{project_id}"],updateCard:["PATCH /projects/columns/cards/{card_id}"],updateColumn:["PATCH /projects/columns/{column_id}"]},pulls:{checkIfMerged:["GET /repos/{owner}/{repo}/pulls/{pull_number}/merge"],create:["POST /repos/{owner}/{repo}/pulls"],createReplyForReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies"],createReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],createReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments"],deletePendingReview:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],deleteReviewComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}"],dismissReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals"],get:["GET /repos/{owner}/{repo}/pulls/{pull_number}"],getReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],getReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}"],list:["GET /repos/{owner}/{repo}/pulls"],listCommentsForReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments"],listCommits:["GET /repos/{owner}/{repo}/pulls/{pull_number}/commits"],listFiles:["GET /repos/{owner}/{repo}/pulls/{pull_number}/files"],listRequestedReviewers:["GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],listReviewComments:["GET /repos/{owner}/{repo}/pulls/{pull_number}/comments"],listReviewCommentsForRepo:["GET /repos/{owner}/{repo}/pulls/comments"],listReviews:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],merge:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge"],removeRequestedReviewers:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],requestReviewers:["POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],submitReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events"],update:["PATCH /repos/{owner}/{repo}/pulls/{pull_number}"],updateBranch:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch"],updateReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],updateReviewComment:["PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}"]},rateLimit:{get:["GET /rate_limit"]},reactions:{createForCommitComment:["POST /repos/{owner}/{repo}/comments/{comment_id}/reactions"],createForIssue:["POST /repos/{owner}/{repo}/issues/{issue_number}/reactions"],createForIssueComment:["POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],createForPullRequestReviewComment:["POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],createForRelease:["POST /repos/{owner}/{repo}/releases/{release_id}/reactions"],createForTeamDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],createForTeamDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"],deleteForCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}"],deleteForIssue:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}"],deleteForIssueComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}"],deleteForPullRequestComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}"],deleteForRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}"],deleteForTeamDiscussion:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}"],deleteForTeamDiscussionComment:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}"],listForCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}/reactions"],listForIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/reactions"],listForIssueComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],listForPullRequestReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],listForRelease:["GET /repos/{owner}/{repo}/releases/{release_id}/reactions"],listForTeamDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],listForTeamDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"]},repos:{acceptInvitation:["PATCH /user/repository_invitations/{invitation_id}",{},{renamed:["repos","acceptInvitationForAuthenticatedUser"]}],acceptInvitationForAuthenticatedUser:["PATCH /user/repository_invitations/{invitation_id}"],addAppAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],addCollaborator:["PUT /repos/{owner}/{repo}/collaborators/{username}"],addStatusCheckContexts:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],addTeamAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],addUserAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],cancelPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}/cancel"],checkAutomatedSecurityFixes:["GET /repos/{owner}/{repo}/automated-security-fixes"],checkCollaborator:["GET /repos/{owner}/{repo}/collaborators/{username}"],checkPrivateVulnerabilityReporting:["GET /repos/{owner}/{repo}/private-vulnerability-reporting"],checkVulnerabilityAlerts:["GET /repos/{owner}/{repo}/vulnerability-alerts"],codeownersErrors:["GET /repos/{owner}/{repo}/codeowners/errors"],compareCommits:["GET /repos/{owner}/{repo}/compare/{base}...{head}"],compareCommitsWithBasehead:["GET /repos/{owner}/{repo}/compare/{basehead}"],createAutolink:["POST /repos/{owner}/{repo}/autolinks"],createCommitComment:["POST /repos/{owner}/{repo}/commits/{commit_sha}/comments"],createCommitSignatureProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],createCommitStatus:["POST /repos/{owner}/{repo}/statuses/{sha}"],createDeployKey:["POST /repos/{owner}/{repo}/keys"],createDeployment:["POST /repos/{owner}/{repo}/deployments"],createDeploymentBranchPolicy:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],createDeploymentProtectionRule:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],createDeploymentStatus:["POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],createDispatchEvent:["POST /repos/{owner}/{repo}/dispatches"],createForAuthenticatedUser:["POST /user/repos"],createFork:["POST /repos/{owner}/{repo}/forks"],createInOrg:["POST /orgs/{org}/repos"],createOrUpdateCustomPropertiesValues:["PATCH /repos/{owner}/{repo}/properties/values"],createOrUpdateEnvironment:["PUT /repos/{owner}/{repo}/environments/{environment_name}"],createOrUpdateFileContents:["PUT /repos/{owner}/{repo}/contents/{path}"],createOrgRuleset:["POST /orgs/{org}/rulesets"],createPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments"],createPagesSite:["POST /repos/{owner}/{repo}/pages"],createRelease:["POST /repos/{owner}/{repo}/releases"],createRepoRuleset:["POST /repos/{owner}/{repo}/rulesets"],createTagProtection:["POST /repos/{owner}/{repo}/tags/protection"],createUsingTemplate:["POST /repos/{template_owner}/{template_repo}/generate"],createWebhook:["POST /repos/{owner}/{repo}/hooks"],declineInvitation:["DELETE /user/repository_invitations/{invitation_id}",{},{renamed:["repos","declineInvitationForAuthenticatedUser"]}],declineInvitationForAuthenticatedUser:["DELETE /user/repository_invitations/{invitation_id}"],delete:["DELETE /repos/{owner}/{repo}"],deleteAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],deleteAdminBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],deleteAnEnvironment:["DELETE /repos/{owner}/{repo}/environments/{environment_name}"],deleteAutolink:["DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}"],deleteBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection"],deleteCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}"],deleteCommitSignatureProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],deleteDeployKey:["DELETE /repos/{owner}/{repo}/keys/{key_id}"],deleteDeployment:["DELETE /repos/{owner}/{repo}/deployments/{deployment_id}"],deleteDeploymentBranchPolicy:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],deleteFile:["DELETE /repos/{owner}/{repo}/contents/{path}"],deleteInvitation:["DELETE /repos/{owner}/{repo}/invitations/{invitation_id}"],deleteOrgRuleset:["DELETE /orgs/{org}/rulesets/{ruleset_id}"],deletePagesSite:["DELETE /repos/{owner}/{repo}/pages"],deletePullRequestReviewProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],deleteRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}"],deleteReleaseAsset:["DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}"],deleteRepoRuleset:["DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id}"],deleteTagProtection:["DELETE /repos/{owner}/{repo}/tags/protection/{tag_protection_id}"],deleteWebhook:["DELETE /repos/{owner}/{repo}/hooks/{hook_id}"],disableAutomatedSecurityFixes:["DELETE /repos/{owner}/{repo}/automated-security-fixes"],disableDeploymentProtectionRule:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],disablePrivateVulnerabilityReporting:["DELETE /repos/{owner}/{repo}/private-vulnerability-reporting"],disableVulnerabilityAlerts:["DELETE /repos/{owner}/{repo}/vulnerability-alerts"],downloadArchive:["GET /repos/{owner}/{repo}/zipball/{ref}",{},{renamed:["repos","downloadZipballArchive"]}],downloadTarballArchive:["GET /repos/{owner}/{repo}/tarball/{ref}"],downloadZipballArchive:["GET /repos/{owner}/{repo}/zipball/{ref}"],enableAutomatedSecurityFixes:["PUT /repos/{owner}/{repo}/automated-security-fixes"],enablePrivateVulnerabilityReporting:["PUT /repos/{owner}/{repo}/private-vulnerability-reporting"],enableVulnerabilityAlerts:["PUT /repos/{owner}/{repo}/vulnerability-alerts"],generateReleaseNotes:["POST /repos/{owner}/{repo}/releases/generate-notes"],get:["GET /repos/{owner}/{repo}"],getAccessRestrictions:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],getAdminBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],getAllDeploymentProtectionRules:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],getAllEnvironments:["GET /repos/{owner}/{repo}/environments"],getAllStatusCheckContexts:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"],getAllTopics:["GET /repos/{owner}/{repo}/topics"],getAppsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps"],getAutolink:["GET /repos/{owner}/{repo}/autolinks/{autolink_id}"],getBranch:["GET /repos/{owner}/{repo}/branches/{branch}"],getBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection"],getBranchRules:["GET /repos/{owner}/{repo}/rules/branches/{branch}"],getClones:["GET /repos/{owner}/{repo}/traffic/clones"],getCodeFrequencyStats:["GET /repos/{owner}/{repo}/stats/code_frequency"],getCollaboratorPermissionLevel:["GET /repos/{owner}/{repo}/collaborators/{username}/permission"],getCombinedStatusForRef:["GET /repos/{owner}/{repo}/commits/{ref}/status"],getCommit:["GET /repos/{owner}/{repo}/commits/{ref}"],getCommitActivityStats:["GET /repos/{owner}/{repo}/stats/commit_activity"],getCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}"],getCommitSignatureProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],getCommunityProfileMetrics:["GET /repos/{owner}/{repo}/community/profile"],getContent:["GET /repos/{owner}/{repo}/contents/{path}"],getContributorsStats:["GET /repos/{owner}/{repo}/stats/contributors"],getCustomDeploymentProtectionRule:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],getCustomPropertiesValues:["GET /repos/{owner}/{repo}/properties/values"],getDeployKey:["GET /repos/{owner}/{repo}/keys/{key_id}"],getDeployment:["GET /repos/{owner}/{repo}/deployments/{deployment_id}"],getDeploymentBranchPolicy:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],getDeploymentStatus:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}"],getEnvironment:["GET /repos/{owner}/{repo}/environments/{environment_name}"],getLatestPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/latest"],getLatestRelease:["GET /repos/{owner}/{repo}/releases/latest"],getOrgRuleSuite:["GET /orgs/{org}/rulesets/rule-suites/{rule_suite_id}"],getOrgRuleSuites:["GET /orgs/{org}/rulesets/rule-suites"],getOrgRuleset:["GET /orgs/{org}/rulesets/{ruleset_id}"],getOrgRulesets:["GET /orgs/{org}/rulesets"],getPages:["GET /repos/{owner}/{repo}/pages"],getPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/{build_id}"],getPagesDeployment:["GET /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}"],getPagesHealthCheck:["GET /repos/{owner}/{repo}/pages/health"],getParticipationStats:["GET /repos/{owner}/{repo}/stats/participation"],getPullRequestReviewProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],getPunchCardStats:["GET /repos/{owner}/{repo}/stats/punch_card"],getReadme:["GET /repos/{owner}/{repo}/readme"],getReadmeInDirectory:["GET /repos/{owner}/{repo}/readme/{dir}"],getRelease:["GET /repos/{owner}/{repo}/releases/{release_id}"],getReleaseAsset:["GET /repos/{owner}/{repo}/releases/assets/{asset_id}"],getReleaseByTag:["GET /repos/{owner}/{repo}/releases/tags/{tag}"],getRepoRuleSuite:["GET /repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}"],getRepoRuleSuites:["GET /repos/{owner}/{repo}/rulesets/rule-suites"],getRepoRuleset:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}"],getRepoRulesets:["GET /repos/{owner}/{repo}/rulesets"],getStatusChecksProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],getTeamsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"],getTopPaths:["GET /repos/{owner}/{repo}/traffic/popular/paths"],getTopReferrers:["GET /repos/{owner}/{repo}/traffic/popular/referrers"],getUsersWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"],getViews:["GET /repos/{owner}/{repo}/traffic/views"],getWebhook:["GET /repos/{owner}/{repo}/hooks/{hook_id}"],getWebhookConfigForRepo:["GET /repos/{owner}/{repo}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}"],listActivities:["GET /repos/{owner}/{repo}/activity"],listAutolinks:["GET /repos/{owner}/{repo}/autolinks"],listBranches:["GET /repos/{owner}/{repo}/branches"],listBranchesForHeadCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head"],listCollaborators:["GET /repos/{owner}/{repo}/collaborators"],listCommentsForCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/comments"],listCommitCommentsForRepo:["GET /repos/{owner}/{repo}/comments"],listCommitStatusesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/statuses"],listCommits:["GET /repos/{owner}/{repo}/commits"],listContributors:["GET /repos/{owner}/{repo}/contributors"],listCustomDeploymentRuleIntegrations:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps"],listDeployKeys:["GET /repos/{owner}/{repo}/keys"],listDeploymentBranchPolicies:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],listDeploymentStatuses:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],listDeployments:["GET /repos/{owner}/{repo}/deployments"],listForAuthenticatedUser:["GET /user/repos"],listForOrg:["GET /orgs/{org}/repos"],listForUser:["GET /users/{username}/repos"],listForks:["GET /repos/{owner}/{repo}/forks"],listInvitations:["GET /repos/{owner}/{repo}/invitations"],listInvitationsForAuthenticatedUser:["GET /user/repository_invitations"],listLanguages:["GET /repos/{owner}/{repo}/languages"],listPagesBuilds:["GET /repos/{owner}/{repo}/pages/builds"],listPublic:["GET /repositories"],listPullRequestsAssociatedWithCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls"],listReleaseAssets:["GET /repos/{owner}/{repo}/releases/{release_id}/assets"],listReleases:["GET /repos/{owner}/{repo}/releases"],listTagProtection:["GET /repos/{owner}/{repo}/tags/protection"],listTags:["GET /repos/{owner}/{repo}/tags"],listTeams:["GET /repos/{owner}/{repo}/teams"],listWebhookDeliveries:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /repos/{owner}/{repo}/hooks"],merge:["POST /repos/{owner}/{repo}/merges"],mergeUpstream:["POST /repos/{owner}/{repo}/merge-upstream"],pingWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeAppAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],removeCollaborator:["DELETE /repos/{owner}/{repo}/collaborators/{username}"],removeStatusCheckContexts:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],removeStatusCheckProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],removeTeamAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],removeUserAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],renameBranch:["POST /repos/{owner}/{repo}/branches/{branch}/rename"],replaceAllTopics:["PUT /repos/{owner}/{repo}/topics"],requestPagesBuild:["POST /repos/{owner}/{repo}/pages/builds"],setAdminBranchProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],setAppAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],setStatusCheckContexts:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],setTeamAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],setUserAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],testPushWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/tests"],transfer:["POST /repos/{owner}/{repo}/transfer"],update:["PATCH /repos/{owner}/{repo}"],updateBranchProtection:["PUT /repos/{owner}/{repo}/branches/{branch}/protection"],updateCommitComment:["PATCH /repos/{owner}/{repo}/comments/{comment_id}"],updateDeploymentBranchPolicy:["PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],updateInformationAboutPagesSite:["PUT /repos/{owner}/{repo}/pages"],updateInvitation:["PATCH /repos/{owner}/{repo}/invitations/{invitation_id}"],updateOrgRuleset:["PUT /orgs/{org}/rulesets/{ruleset_id}"],updatePullRequestReviewProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],updateRelease:["PATCH /repos/{owner}/{repo}/releases/{release_id}"],updateReleaseAsset:["PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}"],updateRepoRuleset:["PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}"],updateStatusCheckPotection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks",{},{renamed:["repos","updateStatusCheckProtection"]}],updateStatusCheckProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],updateWebhook:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}"],updateWebhookConfigForRepo:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config"],uploadReleaseAsset:["POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}",{baseUrl:"https://uploads.github.com"}]},search:{code:["GET /search/code"],commits:["GET /search/commits"],issuesAndPullRequests:["GET /search/issues"],labels:["GET /search/labels"],repos:["GET /search/repositories"],topics:["GET /search/topics"],users:["GET /search/users"]},secretScanning:{getAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/secret-scanning/alerts"],listAlertsForOrg:["GET /orgs/{org}/secret-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/secret-scanning/alerts"],listLocationsForAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations"],updateAlert:["PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"]},securityAdvisories:{createFork:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks"],createPrivateVulnerabilityReport:["POST /repos/{owner}/{repo}/security-advisories/reports"],createRepositoryAdvisory:["POST /repos/{owner}/{repo}/security-advisories"],createRepositoryAdvisoryCveRequest:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve"],getGlobalAdvisory:["GET /advisories/{ghsa_id}"],getRepositoryAdvisory:["GET /repos/{owner}/{repo}/security-advisories/{ghsa_id}"],listGlobalAdvisories:["GET /advisories"],listOrgRepositoryAdvisories:["GET /orgs/{org}/security-advisories"],listRepositoryAdvisories:["GET /repos/{owner}/{repo}/security-advisories"],updateRepositoryAdvisory:["PATCH /repos/{owner}/{repo}/security-advisories/{ghsa_id}"]},teams:{addOrUpdateMembershipForUserInOrg:["PUT /orgs/{org}/teams/{team_slug}/memberships/{username}"],addOrUpdateProjectPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}"],addOrUpdateRepoPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],checkPermissionsForProjectInOrg:["GET /orgs/{org}/teams/{team_slug}/projects/{project_id}"],checkPermissionsForRepoInOrg:["GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],create:["POST /orgs/{org}/teams"],createDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],createDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions"],deleteDiscussionCommentInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],deleteDiscussionInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],deleteInOrg:["DELETE /orgs/{org}/teams/{team_slug}"],getByName:["GET /orgs/{org}/teams/{team_slug}"],getDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],getDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],getMembershipForUserInOrg:["GET /orgs/{org}/teams/{team_slug}/memberships/{username}"],list:["GET /orgs/{org}/teams"],listChildInOrg:["GET /orgs/{org}/teams/{team_slug}/teams"],listDiscussionCommentsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],listDiscussionsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions"],listForAuthenticatedUser:["GET /user/teams"],listMembersInOrg:["GET /orgs/{org}/teams/{team_slug}/members"],listPendingInvitationsInOrg:["GET /orgs/{org}/teams/{team_slug}/invitations"],listProjectsInOrg:["GET /orgs/{org}/teams/{team_slug}/projects"],listReposInOrg:["GET /orgs/{org}/teams/{team_slug}/repos"],removeMembershipForUserInOrg:["DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}"],removeProjectInOrg:["DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}"],removeRepoInOrg:["DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],updateDiscussionCommentInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],updateDiscussionInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],updateInOrg:["PATCH /orgs/{org}/teams/{team_slug}"]},users:{addEmailForAuthenticated:["POST /user/emails",{},{renamed:["users","addEmailForAuthenticatedUser"]}],addEmailForAuthenticatedUser:["POST /user/emails"],addSocialAccountForAuthenticatedUser:["POST /user/social_accounts"],block:["PUT /user/blocks/{username}"],checkBlocked:["GET /user/blocks/{username}"],checkFollowingForUser:["GET /users/{username}/following/{target_user}"],checkPersonIsFollowedByAuthenticated:["GET /user/following/{username}"],createGpgKeyForAuthenticated:["POST /user/gpg_keys",{},{renamed:["users","createGpgKeyForAuthenticatedUser"]}],createGpgKeyForAuthenticatedUser:["POST /user/gpg_keys"],createPublicSshKeyForAuthenticated:["POST /user/keys",{},{renamed:["users","createPublicSshKeyForAuthenticatedUser"]}],createPublicSshKeyForAuthenticatedUser:["POST /user/keys"],createSshSigningKeyForAuthenticatedUser:["POST /user/ssh_signing_keys"],deleteEmailForAuthenticated:["DELETE /user/emails",{},{renamed:["users","deleteEmailForAuthenticatedUser"]}],deleteEmailForAuthenticatedUser:["DELETE /user/emails"],deleteGpgKeyForAuthenticated:["DELETE /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","deleteGpgKeyForAuthenticatedUser"]}],deleteGpgKeyForAuthenticatedUser:["DELETE /user/gpg_keys/{gpg_key_id}"],deletePublicSshKeyForAuthenticated:["DELETE /user/keys/{key_id}",{},{renamed:["users","deletePublicSshKeyForAuthenticatedUser"]}],deletePublicSshKeyForAuthenticatedUser:["DELETE /user/keys/{key_id}"],deleteSocialAccountForAuthenticatedUser:["DELETE /user/social_accounts"],deleteSshSigningKeyForAuthenticatedUser:["DELETE /user/ssh_signing_keys/{ssh_signing_key_id}"],follow:["PUT /user/following/{username}"],getAuthenticated:["GET /user"],getByUsername:["GET /users/{username}"],getContextForUser:["GET /users/{username}/hovercard"],getGpgKeyForAuthenticated:["GET /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","getGpgKeyForAuthenticatedUser"]}],getGpgKeyForAuthenticatedUser:["GET /user/gpg_keys/{gpg_key_id}"],getPublicSshKeyForAuthenticated:["GET /user/keys/{key_id}",{},{renamed:["users","getPublicSshKeyForAuthenticatedUser"]}],getPublicSshKeyForAuthenticatedUser:["GET /user/keys/{key_id}"],getSshSigningKeyForAuthenticatedUser:["GET /user/ssh_signing_keys/{ssh_signing_key_id}"],list:["GET /users"],listBlockedByAuthenticated:["GET /user/blocks",{},{renamed:["users","listBlockedByAuthenticatedUser"]}],listBlockedByAuthenticatedUser:["GET /user/blocks"],listEmailsForAuthenticated:["GET /user/emails",{},{renamed:["users","listEmailsForAuthenticatedUser"]}],listEmailsForAuthenticatedUser:["GET /user/emails"],listFollowedByAuthenticated:["GET /user/following",{},{renamed:["users","listFollowedByAuthenticatedUser"]}],listFollowedByAuthenticatedUser:["GET /user/following"],listFollowersForAuthenticatedUser:["GET /user/followers"],listFollowersForUser:["GET /users/{username}/followers"],listFollowingForUser:["GET /users/{username}/following"],listGpgKeysForAuthenticated:["GET /user/gpg_keys",{},{renamed:["users","listGpgKeysForAuthenticatedUser"]}],listGpgKeysForAuthenticatedUser:["GET /user/gpg_keys"],listGpgKeysForUser:["GET /users/{username}/gpg_keys"],listPublicEmailsForAuthenticated:["GET /user/public_emails",{},{renamed:["users","listPublicEmailsForAuthenticatedUser"]}],listPublicEmailsForAuthenticatedUser:["GET /user/public_emails"],listPublicKeysForUser:["GET /users/{username}/keys"],listPublicSshKeysForAuthenticated:["GET /user/keys",{},{renamed:["users","listPublicSshKeysForAuthenticatedUser"]}],listPublicSshKeysForAuthenticatedUser:["GET /user/keys"],listSocialAccountsForAuthenticatedUser:["GET /user/social_accounts"],listSocialAccountsForUser:["GET /users/{username}/social_accounts"],listSshSigningKeysForAuthenticatedUser:["GET /user/ssh_signing_keys"],listSshSigningKeysForUser:["GET /users/{username}/ssh_signing_keys"],setPrimaryEmailVisibilityForAuthenticated:["PATCH /user/email/visibility",{},{renamed:["users","setPrimaryEmailVisibilityForAuthenticatedUser"]}],setPrimaryEmailVisibilityForAuthenticatedUser:["PATCH /user/email/visibility"],unblock:["DELETE /user/blocks/{username}"],unfollow:["DELETE /user/following/{username}"],updateAuthenticated:["PATCH /user"]}},xdi=p1a;var zfe=new Map;for(let[e,t]of Object.entries(xdi))for(let[r,s]of Object.entries(t)){let[a,o,g]=s,[p,f]=a.split(/ /),m=Object.assign({method:p,url:f},o);zfe.has(e)||zfe.set(e,new Map),zfe.get(e).set(r,{scope:e,methodName:r,endpointDefaults:m,decorations:g})}var f1a={has({scope:e},t){return zfe.get(e).has(t)},getOwnPropertyDescriptor(e,t){return{value:this.get(e,t),configurable:!0,writable:!0,enumerable:!0}},defineProperty(e,t,r){return Object.defineProperty(e.cache,t,r),!0},deleteProperty(e,t){return delete e.cache[t],!0},ownKeys({scope:e}){return[...zfe.get(e).keys()]},set(e,t,r){return e.cache[t]=r},get({octokit:e,scope:t,cache:r},s){if(r[s])return r[s];let a=zfe.get(t).get(s);if(!a)return;let{endpointDefaults:o,decorations:g}=a;return g?r[s]=I1a(e,t,s,o,g):r[s]=e.request.defaults(o),r[s]}};function qfr(e){let t={};for(let r of zfe.keys())t[r]=new Proxy({octokit:e,scope:r,cache:{}},f1a);return t}function I1a(e,t,r,s,a){let o=e.request.defaults(s);function g(...p){let f=o.endpoint.merge(...p);if(a.mapToData)return f=Object.assign({},f,{data:f[a.mapToData],[a.mapToData]:void 0}),o(f);if(a.renamed){let[m,y]=a.renamed;e.log.warn(`octokit.${t}.${r}() has been renamed to octokit.${m}.${y}()`)}if(a.deprecated&&e.log.warn(a.deprecated),a.renamedParameters){let m=o.endpoint.merge(...p);for(let[y,B]of Object.entries(a.renamedParameters))y in m&&(e.log.warn(`"${y}" parameter is deprecated for "octokit.${t}.${r}()". Use "${B}" instead`),B in m||(m[B]=m[y]),delete m[y]);return o(m)}return o(...p)}return Object.assign(g,o)}function C1a(e){return{rest:qfr(e)}}C1a.VERSION=zfr;function $fr(e){let t=qfr(e);return{...t,rest:t}}$fr.VERSION=zfr;var kdi="21.0.2";var Gdi=lht.plugin(Ufr,$fr,jfr).defaults({userAgent:`octokit-rest.js/${kdi}`});var Fdi=function(){if(!process.env.GITHUB_ACTION)throw new Error("[@octokit/auth-action] `GITHUB_ACTION` environment variable is not set. @octokit/auth-action is meant to be used in GitHub Actions only.");let t=[process.env.GITHUB_TOKEN,process.env.INPUT_GITHUB_TOKEN,process.env.INPUT_TOKEN].filter(Boolean);if(t.length===0)throw new Error("[@octokit/auth-action] `GITHUB_TOKEN` variable is not set. It must be set on either `env:` or `with:`. See https://github.com/octokit/auth-action.js#createactionauth");if(t.length>1)throw new Error("[@octokit/auth-action] The token variable is specified more than once. Use either `with.token`, `with.GITHUB_TOKEN`, or `env.GITHUB_TOKEN`. See https://github.com/octokit/auth-action.js#createactionauth");let r=t.pop();return cht(r)};var uht=class{client;constructor(t){this.client=new Gdi({auth:t.token,authStrategy:Fdi})}async create(t){let{owner:r,repo:s,tag_name:a,name:o,make_latest:g,draft:p,body:f}=t;return(await this.client.repos.createRelease({owner:r,repo:s,tag_name:a,draft:p,make_latest:g?"true":"false",name:o,body:f})).status}};import m1a from"node:assert/strict";var Zdi=e=>{console.debug("Repository URL:",e);let t=e.match(/github\.com[/:](.+?)\/(.+?)(?:\.git|$)/);m1a.ok(t,"URL does not match pattern");let[,r,s]=t;return{organization:r,repository:s}};var ght=class extends Ldi.BaseCommand{static paths=[["release","create"]];async execute(){let t=await Wdi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await Odi.Project.find(t,this.context.cwd);if(!s)throw new Vdi.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await Pdi.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await o.startTimerPromise("Creating release",async()=>{let g=process.env.GITHUB_TOKEN;hHe.ok(g,"GitHub Token is missing");let p="",f=s.manifest.name?.scope;f&&(p+=`@${f}/`);let m=s.manifest.name?.name;hHe.ok(m,"Missing workspace name");let{version:y}=s.manifest;hHe.ok(y,"Missing version"),p+=`${m}`;let v=await new XEe().generate({packageName:p,version:y,path:this.context.cwd}),k=new uht({token:g}),T,O;try{({repository:O,organization:T}=Zdi(h1a("git remote get-url origin",{encoding:"utf-8"})))}catch{[T,O]=process.env.GITHUB_REPOSITORY?.split("/")??["",""]}hHe.ok(T,"Could not get url of the repo"),hHe.ok(O,"Could not get url of the repo"),await k.create({draft:!1,make_latest:!0,name:`${p}@${y}`,tag_name:`${p}@${y}`,body:v,owner:T,repo:O})})})).exitCode()}};var Qdi={commands:[ght]};var PIr={};zf(PIr,{RendererBuildCommand:()=>_He,RendererDevCommand:()=>NHe,default:()=>xfi});var Hdi=vt(il(),1),Ydi=vt(Bn(),1),Xdi=vt(Bn(),1),Aht=vt(Bn(),1),tIr=vt(Bn(),1),aK=vt(No(),1),I9=vt(No(),1);import{PassThrough as Mdi}from"node:stream";var _He=class extends Hdi.BaseCommand{static paths=[["renderer","build"]];async execute(){let t=await Ydi.Configuration.find(this.context.cwd,this.context.plugins);return(await Xdi.StreamReport.start({stdout:this.context.stdout,configuration:t},async s=>{await s.startTimerPromise("Renderer build",async()=>{let a=new Mdi,o=new Mdi;a.on("data",g=>{g.toString().split(` +`).filter(Boolean).forEach(p=>{s.reportInfo(Aht.MessageName.UNNAMED,p)})}),o.on("data",g=>{g.toString().split(` +`).filter(Boolean).forEach(p=>{s.reportInfo(Aht.MessageName.UNNAMED,p)})});try{await aK.xfs.writeJsonPromise(I9.ppath.join(this.context.cwd,"src/package.json"),{type:"module"}),await tIr.execUtils.pipevp("yarn",["next","build","src","--no-lint"],{end:tIr.execUtils.EndStrategy.ErrorCode,cwd:this.context.cwd,stdin:this.context.stdin,stdout:a,stderr:o})}catch(g){s.reportError(Aht.MessageName.UNNAMED,g instanceof Error?g.message:"Build error")}finally{await aK.xfs.removePromise(I9.ppath.join(this.context.cwd,"src/package.json"))}}),await s.startTimerPromise("Copy standalone files",async()=>{await aK.xfs.existsPromise(I9.ppath.join(this.context.cwd,"dist"))&&await aK.xfs.rmdirPromise(I9.ppath.join(this.context.cwd,"dist"),{recursive:!0}),await aK.xfs.copyPromise(I9.ppath.join(this.context.cwd,"dist"),I9.ppath.join(this.context.cwd,"src/.next/standalone",this.context.cwd.replace(`${t.projectCwd||""}/`,""),"src"))}),await s.startTimerPromise("Copy static files",async()=>{await aK.xfs.copyPromise(I9.ppath.join(this.context.cwd,"dist/.next/static"),I9.ppath.join(this.context.cwd,"src/.next/static"))}),await s.startTimerPromise("Copy edge chunks files",async()=>{await aK.xfs.existsPromise(I9.ppath.join(this.context.cwd,"src/.next/server/edge-chunks"))&&await aK.xfs.copyPromise(I9.ppath.join(this.context.cwd,"dist/.next/server/edge-chunks"),I9.ppath.join(this.context.cwd,"src/.next/server/edge-chunks"))}),await s.startTimerPromise("Move server start files",async()=>{await aK.xfs.movePromise(I9.ppath.join(this.context.cwd,"dist/server.js"),I9.ppath.join(this.context.cwd,"dist/index.js"))})})).exitCode()}};var wfi=vt(il(),1),Tfi=vt(Bn(),1),Nfi=vt(Bn(),1),WIr=vt(No(),1),THe=vt(No(),1);Zl();var Rfi=vt(ort(),1),Dfi=vt(Sfi(),1),NHe=class extends wfi.BaseCommand{static paths=[["renderer","dev"]];tunnel=td.Boolean("--tunnel");https=td.Boolean("--https");#e;async runTunnel(t,r){this.#e&&this.#e.close(),this.#e=await(0,Dfi.default)({host:t,port:r}),console.log("your url is: %s",this.#e.url)}startTunnel(t,r=3e3){this.runTunnel(t,r),process.stdin.on("data",s=>{s.toString().trim()==="rs"&&this.runTunnel(t,r)})}async execute(){let t=await Tfi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Nfi.Project.find(t,this.context.cwd),s=["next","dev","src"];if(this.https){if(!await WIr.xfs.existsPromise(THe.ppath.join(r.cwd,".config/certs/local/dev.key")))throw new Error("Https key not found");if(!await WIr.xfs.existsPromise(THe.ppath.join(r.cwd,".config/certs/local/dev.crt")))throw new Error("Https cert not found");s.push("--experimental-https"),s.push("--experimental-https-key",THe.ppath.join(r.cwd,".config/certs/local/dev.key")),s.push("--experimental-https-cert",THe.ppath.join(r.cwd,".config/certs/local/dev.crt"))}if((0,Rfi.default)("yarn",s,{stdio:"inherit",cwd:this.context.cwd}),this.tunnel){let a=r.getWorkspaceByCwd(this.context.cwd),{tunnel:o}=a.manifest.raw.tools||{};if(!o?.host)throw new Error("Tunnel host not configured");this.startTunnel(o.host,o.port)}}};var xfi={commands:[_He,NHe]};var f_r={};zf(f_r,{AbstractServiceCommand:()=>wIe,ServiceBuildCommand:()=>uYe,ServiceDevCommand:()=>gYe,default:()=>WSi});var SSi=vt(Bn(),1),wSi=vt(Bn(),1),A_r=vt(No(),1),TSi=vt(Bn(),1),NSi=vt(Bn(),1),RSi=vt(No(),1),DSi=vt(xc(),1);var RHe=vt(xc(),1),Pfi=vt($a(),1),Ofi=vt($a(),1);var kfi=vt($a(),1),Gfi=vt($a(),1),Zfi=vt(Ac(),1),Ffi=({service:e})=>{let[t,r]=(0,Gfi.useState)(0);return(0,kfi.useEffect)(()=>{let s=({percent:a})=>{r(a)};return e.on("build:progress",s),()=>{e.off("build:progress",s)}},[e,r]),(0,Zfi.jsx)(CQ,{value:t})};var OIr=vt(xc(),1),QIr=vt(xc(),1),Lfi=vt($a(),1),Vfi=vt($a(),1),rIe=vt(Ac(),1),Wfi=({service:e})=>{let[t,r]=(0,Vfi.useState)("");return(0,Lfi.useEffect)(()=>{let s=a=>{r(a.message)};return e.on("build:progress",s),()=>{e.off("build:progress",s)}},[e,r]),(0,rIe.jsx)(OIr.Box,{flexDirection:"row",width:"100%",children:(0,rIe.jsxs)(OIr.Box,{flexGrow:1,children:[(0,rIe.jsx)(Lk,{color:"cyan",children:"Service:"}),(0,rIe.jsx)(QIr.Text,{children:" "}),(0,rIe.jsx)(QIr.Text,{color:"white",children:t})]})})};var roe=vt(Ac(),1),Rht=({service:e})=>{let[t,r]=(0,Pfi.useState)(!1);return(0,Ofi.useEffect)(()=>{let s=()=>{setTimeout(()=>{r(!0)},1)};return e.on("end",s),()=>{e.off("end",s)}},[r]),t?null:(0,roe.jsx)(RHe.Box,{position:"relative",height:7,children:(0,roe.jsxs)(RHe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,roe.jsx)(RHe.Box,{children:(0,roe.jsx)(Wfi,{service:e})}),(0,roe.jsx)(RHe.Box,{marginTop:1,marginBottom:1,children:(0,roe.jsx)(Ffi,{service:e})})]})})};import{readFile as cBa}from"node:fs/promises";import{writeFile as lBa}from"node:fs/promises";import{mkdtemp as uBa}from"node:fs/promises";import{tmpdir as gBa}from"node:os";import{join as DHe}from"node:path";import{readFile as oBa}from"node:fs/promises";import{join as aBa}from"node:path";import{readFile as iBa}from"node:fs/promises";import{join as sBa}from"node:path";var Dht=class{static async find(t){try{let{tools:r={}}=JSON.parse(await iBa(sBa(t,"package.json"),"utf-8"));return r}catch{return{}}}};var xht=class{constructor(t){this.cwd=t}#e=[];#t=[];async loadPackageJson(){try{return JSON.parse(await oBa(aBa(this.cwd,"package.json"),"utf-8"))}catch{return{}}}async loadDependencies(){let{dependencies:t={}}=await this.loadPackageJson();return Object.keys(t)}async loadExternals(){let{service:t}=await Dht.find(this.cwd);return t?.externals||[]}async build(){return this.#e=await this.loadExternals(),this.#t=await this.loadDependencies(),this.externals}externals=({request:t},r)=>{t&&this.#t.includes(t)?r(void 0,t,"module"):t&&this.#e.includes(t)?r(void 0,t,"import"):r()}};var Qfi=["@grpc/grpc-js","mqtt","nats","mariadb/callback","better-sqlite3","pg-native","hdb-pool","oracledb","mongodb","tedious","sqlite3","mysql","mysql2","mssql","sql.js","libsql","@mikro-orm/better-sqlite","@mikro-orm/mongodb","@mikro-orm/mariadb","@mikro-orm/sqlite","@mikro-orm/mysql","@nestjs/mongoose","@nestjs/typeorm/dist/common/typeorm.utils","@nestjs/sequelize/dist/common/sequelize.utils"];var kht=class{constructor(t,r,s){this.webpack=t;this.loaders=r;this.cwd=s}async build(t="production",r=[]){let s=DHe(await uBa(DHe(gBa(),"code-service-")),"tsconfig.json");await lBa(s,'{"include":["**/*"]}');let a=await this.getWorkspaceType(),g=["webpack/hot/poll?100",await new xht(this.cwd).build()],p=this.createPlugins(t,r,a==="module");return{mode:t,bail:t==="production",target:"node",optimization:{minimize:!1},experiments:{outputModule:a==="module"},plugins:p,entry:{index:DHe(this.cwd,"src/index"),...t==="development"&&{hot:"webpack/hot/poll?100"}},node:{__dirname:!0,__filename:!1},output:{path:DHe(this.cwd,"dist"),filename:"[name].js",library:{type:a},chunkFormat:t==="development"?"commonjs":a,module:a==="module",clean:!1,assetModuleFilename:"assets/[name][ext]"},resolve:{extensionAlias:{".js":[".tsx",".ts",".js"],".jsx":[".tsx",".ts",".js"],".cjs":[".cjs",".cts"],".mjs":[".mjs",".mts"]},extensions:[".tsx",".ts",".js"],alias:{"class-transformer/storage":"class-transformer/cjs/storage"}},externals:g,externalsType:t==="production"?a==="module"?"import":"commonjs":"commonjs2",externalsPresets:{node:!0},devtool:t==="production"?"source-map":"eval-cheap-module-source-map",module:{rules:[{test:/\.d\.ts$/,use:{loader:this.loaders.nullLoader}},{test:/(^.?|\.[^d]|[^.]d|[^.][^d])\.tsx?$/,use:{loader:this.loaders.tsLoader,options:{transpileOnly:!0,experimentalWatchApi:!0,onlyCompileBundledFiles:!0,compilerOptions:{...BU.compilerOptions,sourceMap:!0},context:this.cwd,configFile:s}}},{test:/\.(woff|woff2|eot|ttf|otf)$/i,type:"asset/resource"},{test:/\.(png|svg|jpg|jpeg|gif)$/i,type:"asset/resource"},{test:/\.(md)$/i,type:"asset/resource"},{test:/\.node$/,use:this.loaders.nodeLoader}]}}}async getWorkspaceType(){try{let t=await cBa(DHe(this.cwd,"package.json"),"utf-8"),{type:r="commonjs"}=JSON.parse(t);return r}catch{return"module"}}createPlugins(t,r,s){let a=[new this.webpack.IgnorePlugin({checkResource:o=>{if(o.endsWith(".js.map"))return!0;if(!Qfi.includes(o))return!1;try{xt.resolve(o,{paths:[this.cwd]})}catch{return!0}return!1}}),...r];return s&&a.push(new this.webpack.BannerPlugin({banner:`import { createRequire } from 'node:module' import { fileURLToPath } from 'node:url' const require = createRequire(import.meta.url) const __filename = fileURLToPath(import.meta.url) -`,raw:!0}))),s}};import d3a from"node:events";import{PassThrough as p3a}from"node:stream";var v5=xt(twe(),1);var Rmr="@namespace";var qBi=xt(twe(),1),$Bi=xt(zHe(),1),evi=xt(zHe(),1),j0t=xt(twe(),1);var xBi=xt(Ihr(),1),kBi=xt(zHe(),1),Q0t=class extends kBi.ConsoleLogRecordExporter{export(t,r){this.sendLogRecords(t,r)}sendLogRecords(t,r){for(let s of t){let a=JSON.stringify(this._exportInfo(s));process.stdout.write(`${a} -`)}r?.({code:xBi.ExportResultCode.SUCCESS})}};var jBi=xt(Ihr(),1),zBi=xt(zHe(),1);var _hr=xt(MBi(),1),yhr=xt(UBi(),1);import{isMainThread as o3a}from"node:worker_threads";var a3a=_hr.default.default||_hr.default;function J0t(){}function c3a(e,t){e.destroyed||(t==="beforeExit"?(e.flush(),e.on("drain",()=>{e.end()})):e.flushSync())}var KBi=()=>{let e=new a3a({fd:process.stdout.fd||1});e.on("error",t),o3a&&(yhr.default.register(e,c3a),e.on("close",()=>{yhr.default.unregister(e)}));function t(r){if(r.code==="EPIPE"){e.write=J0t,e.end=J0t,e.flushSync=J0t,e.destroy=J0t;return}e.removeListener("error",t),e.emit("error",r)}return e};var l3a=function(e,t,r,s,a){if(s==="m")throw new TypeError("Private method is not writable");if(s==="a"&&!a)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?e!==t||!a:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return s==="a"?a.call(e,r):a?a.value=r:t.set(e,r),r},u3a=function(e,t,r,s){if(r==="a"&&!s)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?e!==t||!s:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?s:r==="a"?s.call(e):s?s.value:t.get(e)},U0t,K0t=class extends zBi.ConsoleLogRecordExporter{constructor(){super(),U0t.set(this,void 0),l3a(this,U0t,KBi(),"f")}export(t,r){this.sendLogRecords(t,r)}sendLogRecords(t,r){for(let s of t){let a=JSON.stringify(this._exportInfo(s));u3a(this,U0t,"f").write(`${a} -`)}r?.({code:jBi.ExportResultCode.SUCCESS})}};U0t=new WeakMap;var z0t=class e{static getLoggerProvider(){if(!e.initialized&&j0t.logs.getLoggerProvider()instanceof qBi.NoopLoggerProvider){let t=new $Bi.LoggerProvider;t.addLogRecordProcessor(new evi.SimpleLogRecordProcessor(process.env.JEST_WORKER_ID?new Q0t:new K0t)),j0t.logs.setGlobalLoggerProvider(t),e.initialized=!0}return j0t.logs.getLoggerProvider()}};z0t.initialized=!1;var bhr=xt(twe(),1),ERl=Object.keys(bhr.SeverityNumber).reduce((e,t)=>({...e,[bhr.SeverityNumber[t]]:t}),{});import{fork as g3a}from"node:child_process";import{join as A3a}from"node:path";var q0t=class{constructor(t={}){this.options=t}info(t){this.options.stdout&&this.options.stdout.write(Buffer.from(JSON.stringify({body:t,severityNumber:9,attributes:{"@namespace":"webpack:start-server"}})))}error(t){this.options.stderr&&this.options.stderr.write(Buffer.from(JSON.stringify({body:t.message,severityNumber:17,attributes:{"@namespace":"webpack:start-server","@stack":t.stack}})))}};var $0t=class{options;entryFile=null;worker=null;initialized=!1;logger;constructor(t={}){this.logger=new q0t(t),this.options=t}apply(t){t.hooks.afterEmit.tapAsync({name:"StartServerPlugin"},this.afterEmit)}afterEmit=(t,r)=>{this.initialized?(this.worker?.connected&&this.worker.pid&&process.kill(this.worker.pid),this.startServer(t,r)):(this.initialized=!0,r())};startServer=(t,r)=>{this.logger.info("Starting server...");let{path:s}=t.compiler.options.output;s&&(this.entryFile=A3a(s,"index.js"),this.runWorker(this.entryFile,a=>{this.worker=a,r()}))};runWorker(t,r){let s=g3a(t,[],{silent:!0});this.options.stdout&&s.stdout?.pipe(this.options.stdout,{end:!1}),this.options.stderr&&s.stderr?.pipe(this.options.stderr,{end:!1}),setTimeout(()=>{r(s)},0)}};var ywe=class e extends d3a{constructor(r,s){super();this.webpack=r;this.config=s}static async initialize(r){let{webpack:s,nullLoaderPath:a,tsLoaderPath:o,nodeLoaderPath:g,protoLoaderPath:p}=await import("@atls/code-runtime/webpack"),f=new Rht(s,{nodeLoader:g,nullLoader:a,tsLoader:o,protoLoader:p},r);return new e(s,f)}async build(){let r=this.webpack(await this.config.build("production",[new this.webpack.ProgressPlugin((s,a)=>{this.emit("build:progress",{percent:s*100,message:a})})]));return new Promise((s,a)=>{r.run((o,g)=>{if(this.emit("end",{error:o,stats:g}),o)o.message?s([o]):a(o);else if(g){let{errors:p=[],warnings:f=[]}=g.toJson();s([...p.map(m=>({record:m,severityNumber:v5.SeverityNumber.ERROR})),...f.map(m=>({record:m,severityNumber:v5.SeverityNumber.WARN}))])}else s([])})})}async watch(r){let s=new p3a;return s.on("data",a=>{a.toString().split(/\r?\n/).filter(Boolean).forEach(o=>{try{r(JSON.parse(o))}catch{r({severityNumber:v5.SeverityNumber.INFO,body:o})}})}),this.webpack(await this.config.build("development",[new $0t({stdout:s,stderr:s}),new this.webpack.ProgressPlugin((a,o)=>{this.emit("build:progress",{percent:a*100,message:o})})])).watch({},(a,o)=>{if(this.emit("end",{error:a,stats:o}),a)r(a);else if(o){let{errors:g=[],warnings:p=[]}=o.toJson();p.forEach(f=>{r({record:f,severityNumber:v5.SeverityNumber.WARN})}),g.forEach(f=>{r({record:f,severityNumber:v5.SeverityNumber.ERROR})})}})}};var CSi=xt(nl(),1);Fl();var uyt=xt(Fs(),1);var tvi=xt(Dc(),1),rvi=xt(Fs(),1),nvi=({children:e})=>e?rvi.default.createElement(tvi.Text,null,e):null;var Shr=xt(Dc(),1);var whr=xt(Fs(),1),Thr=xt(Fs(),1);var f3a=(e,t)=>(e=e.replace(/((?r.toLowerCase()),e.replace(/(\p{Uppercase_Letter}+)(\p{Uppercase_Letter}\p{Lowercase_Letter}+)/gu,(r,s,a)=>s+t+a.toLowerCase()));function Ehr(e,{separator:t="_",preserveConsecutiveUppercase:r=!1}={}){if(!(typeof e=="string"&&typeof t=="string"))throw new TypeError("The `text` and `separator` arguments should be of type `string`");if(e.length<2)return r?e:e.toLowerCase();let s=`$1${t}$2`,a=e.replace(/([\p{Lowercase_Letter}\d])(\p{Uppercase_Letter})/gu,s);return r?f3a(a,t):a.replace(/(\p{Uppercase_Letter})(\p{Uppercase_Letter}\p{Lowercase_Letter}+)/gu,s).toLowerCase()}var svi=xt(ivi(),1),ovi=({children:e})=>{let t=(0,whr.useMemo)(()=>typeof e=="string"?Ehr(e,{separator:"-"}):e,[e]),r=(0,whr.useMemo)(()=>t&&typeof t=="string"?(0,svi.default)(t.split(":")[0]).color:"#d75f00",[t]);return t?Array.isArray(t)?t.map(s=>Thr.default.createElement(Shr.Text,{key:SW(),color:r},s)):Thr.default.createElement(Shr.Text,{color:r},t):null};var Swe=xt(Dc(),1),gK=xt(Fs(),1);var dSi=xt(pvi(),1);var Ghr="@mikro-orm-sql",Fhr="@mikro-orm-params";var B3a;B3a=new WeakMap;var uK=xt(Dc(),1),cyt=xt(Dc(),1);var sSi=xt(Ivi(),1),Jvi=Object.defineProperty,v3a=Object.defineProperties,S3a=Object.getOwnPropertyDescriptors,oyt=Object.getOwnPropertySymbols,Uvi=Object.prototype.hasOwnProperty,Kvi=Object.prototype.propertyIsEnumerable,Cvi=(e,t,r)=>t in e?Jvi(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,qD=(e,t)=>{for(var r in t||(t={}))Uvi.call(t,r)&&Cvi(e,r,t[r]);if(oyt)for(var r of oyt(t))Kvi.call(t,r)&&Cvi(e,r,t[r]);return e},jF=(e,t)=>v3a(e,S3a(t)),w3a=(e,t)=>{var r={};for(var s in e)Uvi.call(e,s)&&t.indexOf(s)<0&&(r[s]=e[s]);if(e!=null&&oyt)for(var s of oyt(e))t.indexOf(s)<0&&Kvi.call(e,s)&&(r[s]=e[s]);return r},T3a=(e,t)=>{for(var r in t)Jvi(e,r,{get:t[r],enumerable:!0})},jvi={};T3a(jvi,{bigquery:()=>X3a,db2:()=>sPa,db2i:()=>pPa,hive:()=>EPa,mariadb:()=>xPa,mysql:()=>OPa,n1ql:()=>sOa,plsql:()=>pOa,postgresql:()=>BOa,redshift:()=>kOa,singlestoredb:()=>GMa,snowflake:()=>QMa,spark:()=>MOa,sql:()=>aMa,sqlite:()=>qOa,tidb:()=>jPa,transactsql:()=>vMa,trino:()=>IMa});var Ja=e=>e.flatMap(N3a),N3a=e=>nyt(D3a(e)).map(R3a),R3a=e=>e.replace(/ +/g," ").trim(),D3a=e=>({type:"mandatory_block",items:s_r(e,0)[0]}),s_r=(e,t,r)=>{let s=[];for(;e[t];){let[a,o]=x3a(e,t);if(s.push(a),t=o,e[t]==="|")t++;else if(e[t]==="}"||e[t]==="]"){if(r!==e[t])throw new Error(`Unbalanced parenthesis in: ${e}`);return t++,[s,t]}else if(t===e.length){if(r)throw new Error(`Unbalanced parenthesis in: ${e}`);return[s,t]}else throw new Error(`Unexpected "${e[t]}"`)}return[s,t]},x3a=(e,t)=>{let r=[];for(;;){let[s,a]=k3a(e,t);if(s)r.push(s),t=a;else break}return r.length===1?[r[0],t]:[{type:"concatenation",items:r},t]},k3a=(e,t)=>{if(e[t]==="{")return G3a(e,t+1);if(e[t]==="[")return F3a(e,t+1);{let r="";for(;e[t]&&/[A-Za-z0-9_ ]/.test(e[t]);)r+=e[t],t++;return[r,t]}},G3a=(e,t)=>{let[r,s]=s_r(e,t,"}");return[{type:"mandatory_block",items:r},s]},F3a=(e,t)=>{let[r,s]=s_r(e,t,"]");return[{type:"optional_block",items:r},s]},nyt=e=>{if(typeof e=="string")return[e];if(e.type==="concatenation")return e.items.map(nyt).reduce(Z3a,[""]);if(e.type==="mandatory_block")return e.items.flatMap(nyt);if(e.type==="optional_block")return["",...e.items.flatMap(nyt)];throw new Error(`Unknown node type: ${e}`)},Z3a=(e,t)=>{let r=[];for(let s of e)for(let a of t)r.push(s+a);return r},zvi=(e=>(e.QUOTED_IDENTIFIER="QUOTED_IDENTIFIER",e.IDENTIFIER="IDENTIFIER",e.STRING="STRING",e.VARIABLE="VARIABLE",e.RESERVED_DATA_TYPE="RESERVED_DATA_TYPE",e.RESERVED_PARAMETERIZED_DATA_TYPE="RESERVED_PARAMETERIZED_DATA_TYPE",e.RESERVED_KEYWORD="RESERVED_KEYWORD",e.RESERVED_FUNCTION_NAME="RESERVED_FUNCTION_NAME",e.RESERVED_PHRASE="RESERVED_PHRASE",e.RESERVED_SET_OPERATION="RESERVED_SET_OPERATION",e.RESERVED_CLAUSE="RESERVED_CLAUSE",e.RESERVED_SELECT="RESERVED_SELECT",e.RESERVED_JOIN="RESERVED_JOIN",e.ARRAY_IDENTIFIER="ARRAY_IDENTIFIER",e.ARRAY_KEYWORD="ARRAY_KEYWORD",e.CASE="CASE",e.END="END",e.WHEN="WHEN",e.ELSE="ELSE",e.THEN="THEN",e.LIMIT="LIMIT",e.BETWEEN="BETWEEN",e.AND="AND",e.OR="OR",e.XOR="XOR",e.OPERATOR="OPERATOR",e.COMMA="COMMA",e.ASTERISK="ASTERISK",e.PROPERTY_ACCESS_OPERATOR="PROPERTY_ACCESS_OPERATOR",e.OPEN_PAREN="OPEN_PAREN",e.CLOSE_PAREN="CLOSE_PAREN",e.LINE_COMMENT="LINE_COMMENT",e.BLOCK_COMMENT="BLOCK_COMMENT",e.DISABLE_COMMENT="DISABLE_COMMENT",e.NUMBER="NUMBER",e.NAMED_PARAMETER="NAMED_PARAMETER",e.QUOTED_PARAMETER="QUOTED_PARAMETER",e.NUMBERED_PARAMETER="NUMBERED_PARAMETER",e.POSITIONAL_PARAMETER="POSITIONAL_PARAMETER",e.CUSTOM_PARAMETER="CUSTOM_PARAMETER",e.DELIMITER="DELIMITER",e.EOF="EOF",e))(zvi||{}),qvi=e=>({type:"EOF",raw:"\xABEOF\xBB",text:"\xABEOF\xBB",start:e}),vwe=qvi(1/0),Ewe=e=>t=>t.type===e.type&&t.text===e.text,yIe={ARRAY:Ewe({text:"ARRAY",type:"RESERVED_DATA_TYPE"}),BY:Ewe({text:"BY",type:"RESERVED_KEYWORD"}),SET:Ewe({text:"SET",type:"RESERVED_CLAUSE"}),STRUCT:Ewe({text:"STRUCT",type:"RESERVED_DATA_TYPE"}),WINDOW:Ewe({text:"WINDOW",type:"RESERVED_CLAUSE"}),VALUES:Ewe({text:"VALUES",type:"RESERVED_CLAUSE"})},$vi=e=>e==="RESERVED_DATA_TYPE"||e==="RESERVED_KEYWORD"||e==="RESERVED_FUNCTION_NAME"||e==="RESERVED_PHRASE"||e==="RESERVED_CLAUSE"||e==="RESERVED_SELECT"||e==="RESERVED_SET_OPERATION"||e==="RESERVED_JOIN"||e==="ARRAY_KEYWORD"||e==="CASE"||e==="END"||e==="WHEN"||e==="ELSE"||e==="THEN"||e==="LIMIT"||e==="BETWEEN"||e==="AND"||e==="OR"||e==="XOR",L3a=e=>e==="AND"||e==="OR"||e==="XOR",V3a=["KEYS.NEW_KEYSET","KEYS.ADD_KEY_FROM_RAW_BYTES","AEAD.DECRYPT_BYTES","AEAD.DECRYPT_STRING","AEAD.ENCRYPT","KEYS.KEYSET_CHAIN","KEYS.KEYSET_FROM_JSON","KEYS.KEYSET_TO_JSON","KEYS.ROTATE_KEYSET","KEYS.KEYSET_LENGTH","ANY_VALUE","ARRAY_AGG","AVG","CORR","COUNT","COUNTIF","COVAR_POP","COVAR_SAMP","MAX","MIN","ST_CLUSTERDBSCAN","STDDEV_POP","STDDEV_SAMP","STRING_AGG","SUM","VAR_POP","VAR_SAMP","ANY_VALUE","ARRAY_AGG","ARRAY_CONCAT_AGG","AVG","BIT_AND","BIT_OR","BIT_XOR","COUNT","COUNTIF","LOGICAL_AND","LOGICAL_OR","MAX","MIN","STRING_AGG","SUM","APPROX_COUNT_DISTINCT","APPROX_QUANTILES","APPROX_TOP_COUNT","APPROX_TOP_SUM","ARRAY_CONCAT","ARRAY_LENGTH","ARRAY_TO_STRING","GENERATE_ARRAY","GENERATE_DATE_ARRAY","GENERATE_TIMESTAMP_ARRAY","ARRAY_REVERSE","OFFSET","SAFE_OFFSET","ORDINAL","SAFE_ORDINAL","BIT_COUNT","PARSE_BIGNUMERIC","PARSE_NUMERIC","SAFE_CAST","CURRENT_DATE","EXTRACT","DATE","DATE_ADD","DATE_SUB","DATE_DIFF","DATE_TRUNC","DATE_FROM_UNIX_DATE","FORMAT_DATE","LAST_DAY","PARSE_DATE","UNIX_DATE","CURRENT_DATETIME","DATETIME","EXTRACT","DATETIME_ADD","DATETIME_SUB","DATETIME_DIFF","DATETIME_TRUNC","FORMAT_DATETIME","LAST_DAY","PARSE_DATETIME","ERROR","EXTERNAL_QUERY","S2_CELLIDFROMPOINT","S2_COVERINGCELLIDS","ST_ANGLE","ST_AREA","ST_ASBINARY","ST_ASGEOJSON","ST_ASTEXT","ST_AZIMUTH","ST_BOUNDARY","ST_BOUNDINGBOX","ST_BUFFER","ST_BUFFERWITHTOLERANCE","ST_CENTROID","ST_CENTROID_AGG","ST_CLOSESTPOINT","ST_CLUSTERDBSCAN","ST_CONTAINS","ST_CONVEXHULL","ST_COVEREDBY","ST_COVERS","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DUMP","ST_DWITHIN","ST_ENDPOINT","ST_EQUALS","ST_EXTENT","ST_EXTERIORRING","ST_GEOGFROM","ST_GEOGFROMGEOJSON","ST_GEOGFROMTEXT","ST_GEOGFROMWKB","ST_GEOGPOINT","ST_GEOGPOINTFROMGEOHASH","ST_GEOHASH","ST_GEOMETRYTYPE","ST_INTERIORRINGS","ST_INTERSECTION","ST_INTERSECTS","ST_INTERSECTSBOX","ST_ISCOLLECTION","ST_ISEMPTY","ST_LENGTH","ST_MAKELINE","ST_MAKEPOLYGON","ST_MAKEPOLYGONORIENTED","ST_MAXDISTANCE","ST_NPOINTS","ST_NUMGEOMETRIES","ST_NUMPOINTS","ST_PERIMETER","ST_POINTN","ST_SIMPLIFY","ST_SNAPTOGRID","ST_STARTPOINT","ST_TOUCHES","ST_UNION","ST_UNION_AGG","ST_WITHIN","ST_X","ST_Y","FARM_FINGERPRINT","MD5","SHA1","SHA256","SHA512","HLL_COUNT.INIT","HLL_COUNT.MERGE","HLL_COUNT.MERGE_PARTIAL","HLL_COUNT.EXTRACT","MAKE_INTERVAL","EXTRACT","JUSTIFY_DAYS","JUSTIFY_HOURS","JUSTIFY_INTERVAL","JSON_EXTRACT","JSON_QUERY","JSON_EXTRACT_SCALAR","JSON_VALUE","JSON_EXTRACT_ARRAY","JSON_QUERY_ARRAY","JSON_EXTRACT_STRING_ARRAY","JSON_VALUE_ARRAY","TO_JSON_STRING","ABS","SIGN","IS_INF","IS_NAN","IEEE_DIVIDE","RAND","SQRT","POW","POWER","EXP","LN","LOG","LOG10","GREATEST","LEAST","DIV","SAFE_DIVIDE","SAFE_MULTIPLY","SAFE_NEGATE","SAFE_ADD","SAFE_SUBTRACT","MOD","ROUND","TRUNC","CEIL","CEILING","FLOOR","COS","COSH","ACOS","ACOSH","SIN","SINH","ASIN","ASINH","TAN","TANH","ATAN","ATANH","ATAN2","RANGE_BUCKET","FIRST_VALUE","LAST_VALUE","NTH_VALUE","LEAD","LAG","PERCENTILE_CONT","PERCENTILE_DISC","NET.IP_FROM_STRING","NET.SAFE_IP_FROM_STRING","NET.IP_TO_STRING","NET.IP_NET_MASK","NET.IP_TRUNC","NET.IPV4_FROM_INT64","NET.IPV4_TO_INT64","NET.HOST","NET.PUBLIC_SUFFIX","NET.REG_DOMAIN","RANK","DENSE_RANK","PERCENT_RANK","CUME_DIST","NTILE","ROW_NUMBER","SESSION_USER","CORR","COVAR_POP","COVAR_SAMP","STDDEV_POP","STDDEV_SAMP","STDDEV","VAR_POP","VAR_SAMP","VARIANCE","ASCII","BYTE_LENGTH","CHAR_LENGTH","CHARACTER_LENGTH","CHR","CODE_POINTS_TO_BYTES","CODE_POINTS_TO_STRING","CONCAT","CONTAINS_SUBSTR","ENDS_WITH","FORMAT","FROM_BASE32","FROM_BASE64","FROM_HEX","INITCAP","INSTR","LEFT","LENGTH","LPAD","LOWER","LTRIM","NORMALIZE","NORMALIZE_AND_CASEFOLD","OCTET_LENGTH","REGEXP_CONTAINS","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPLACE","REPEAT","REVERSE","RIGHT","RPAD","RTRIM","SAFE_CONVERT_BYTES_TO_STRING","SOUNDEX","SPLIT","STARTS_WITH","STRPOS","SUBSTR","SUBSTRING","TO_BASE32","TO_BASE64","TO_CODE_POINTS","TO_HEX","TRANSLATE","TRIM","UNICODE","UPPER","CURRENT_TIME","TIME","EXTRACT","TIME_ADD","TIME_SUB","TIME_DIFF","TIME_TRUNC","FORMAT_TIME","PARSE_TIME","CURRENT_TIMESTAMP","EXTRACT","STRING","TIMESTAMP","TIMESTAMP_ADD","TIMESTAMP_SUB","TIMESTAMP_DIFF","TIMESTAMP_TRUNC","FORMAT_TIMESTAMP","PARSE_TIMESTAMP","TIMESTAMP_SECONDS","TIMESTAMP_MILLIS","TIMESTAMP_MICROS","UNIX_SECONDS","UNIX_MILLIS","UNIX_MICROS","GENERATE_UUID","COALESCE","IF","IFNULL","NULLIF","AVG","BIT_AND","BIT_OR","BIT_XOR","CORR","COUNT","COVAR_POP","COVAR_SAMP","EXACT_COUNT_DISTINCT","FIRST","GROUP_CONCAT","GROUP_CONCAT_UNQUOTED","LAST","MAX","MIN","NEST","NTH","QUANTILES","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","TOP","UNIQUE","VARIANCE","VAR_POP","VAR_SAMP","BIT_COUNT","BOOLEAN","BYTES","CAST","FLOAT","HEX_STRING","INTEGER","STRING","COALESCE","GREATEST","IFNULL","IS_INF","IS_NAN","IS_EXPLICITLY_DEFINED","LEAST","NVL","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE","DATE_ADD","DATEDIFF","DAY","DAYOFWEEK","DAYOFYEAR","FORMAT_UTC_USEC","HOUR","MINUTE","MONTH","MSEC_TO_TIMESTAMP","NOW","PARSE_UTC_USEC","QUARTER","SEC_TO_TIMESTAMP","SECOND","STRFTIME_UTC_USEC","TIME","TIMESTAMP","TIMESTAMP_TO_MSEC","TIMESTAMP_TO_SEC","TIMESTAMP_TO_USEC","USEC_TO_TIMESTAMP","UTC_USEC_TO_DAY","UTC_USEC_TO_HOUR","UTC_USEC_TO_MONTH","UTC_USEC_TO_WEEK","UTC_USEC_TO_YEAR","WEEK","YEAR","FORMAT_IP","PARSE_IP","FORMAT_PACKED_IP","PARSE_PACKED_IP","JSON_EXTRACT","JSON_EXTRACT_SCALAR","ABS","ACOS","ACOSH","ASIN","ASINH","ATAN","ATANH","ATAN2","CEIL","COS","COSH","DEGREES","EXP","FLOOR","LN","LOG","LOG2","LOG10","PI","POW","RADIANS","RAND","ROUND","SIN","SINH","SQRT","TAN","TANH","REGEXP_MATCH","REGEXP_EXTRACT","REGEXP_REPLACE","CONCAT","INSTR","LEFT","LENGTH","LOWER","LPAD","LTRIM","REPLACE","RIGHT","RPAD","RTRIM","SPLIT","SUBSTR","UPPER","TABLE_DATE_RANGE","TABLE_DATE_RANGE_STRICT","TABLE_QUERY","HOST","DOMAIN","TLD","AVG","COUNT","MAX","MIN","STDDEV","SUM","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","RATIO_TO_REPORT","ROW_NUMBER","CURRENT_USER","EVERY","FROM_BASE64","HASH","FARM_FINGERPRINT","IF","POSITION","SHA1","SOME","TO_BASE64","BQ.JOBS.CANCEL","BQ.REFRESH_MATERIALIZED_VIEW","OPTIONS","PIVOT","UNPIVOT"],W3a=["ALL","AND","ANY","AS","ASC","ASSERT_ROWS_MODIFIED","AT","BETWEEN","BY","CASE","CAST","COLLATE","CONTAINS","CREATE","CROSS","CUBE","CURRENT","DEFAULT","DEFINE","DESC","DISTINCT","ELSE","END","ENUM","ESCAPE","EXCEPT","EXCLUDE","EXISTS","EXTRACT","FALSE","FETCH","FOLLOWING","FOR","FROM","FULL","GROUP","GROUPING","GROUPS","HASH","HAVING","IF","IGNORE","IN","INNER","INTERSECT","INTO","IS","JOIN","LATERAL","LEFT","LIMIT","LOOKUP","MERGE","NATURAL","NEW","NO","NOT","NULL","NULLS","OF","ON","OR","ORDER","OUTER","OVER","PARTITION","PRECEDING","PROTO","RANGE","RECURSIVE","RESPECT","RIGHT","ROLLUP","ROWS","SELECT","SET","SOME","TABLE","TABLESAMPLE","THEN","TO","TREAT","TRUE","UNBOUNDED","UNION","UNNEST","USING","WHEN","WHERE","WINDOW","WITH","WITHIN","SAFE","LIKE","COPY","CLONE","IN","OUT","INOUT","RETURNS","LANGUAGE","CASCADE","RESTRICT","DETERMINISTIC"],P3a=["ARRAY","BOOL","BYTES","DATE","DATETIME","GEOGRAPHY","INTERVAL","INT64","INT","SMALLINT","INTEGER","BIGINT","TINYINT","BYTEINT","NUMERIC","DECIMAL","BIGNUMERIC","BIGDECIMAL","FLOAT64","STRING","STRUCT","TIME","TIMEZONE"],O3a=Ja(["SELECT [ALL | DISTINCT] [AS STRUCT | AS VALUE]"]),M3a=Ja(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","QUALIFY","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","OMIT RECORD IF","INSERT [INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [BY SOURCE | BY TARGET] [THEN]","UPDATE SET","CLUSTER BY","FOR SYSTEM_TIME AS OF","WITH CONNECTION","WITH PARTITION COLUMNS","REMOTE WITH CONNECTION"]),mvi=Ja(["CREATE [OR REPLACE] [TEMP|TEMPORARY|SNAPSHOT|EXTERNAL] TABLE [IF NOT EXISTS]"]),Zhr=Ja(["CREATE [OR REPLACE] [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE","DELETE [FROM]","DROP [SNAPSHOT | EXTERNAL] TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","ADD COLUMN [IF NOT EXISTS]","DROP COLUMN [IF EXISTS]","RENAME TO","ALTER COLUMN [IF EXISTS]","SET DEFAULT COLLATE","SET OPTIONS","DROP NOT NULL","SET DATA TYPE","ALTER SCHEMA [IF EXISTS]","ALTER [MATERIALIZED] VIEW [IF EXISTS]","ALTER BI_CAPACITY","TRUNCATE TABLE","CREATE SCHEMA [IF NOT EXISTS]","DEFAULT COLLATE","CREATE [OR REPLACE] [TEMP|TEMPORARY|TABLE] FUNCTION [IF NOT EXISTS]","CREATE [OR REPLACE] PROCEDURE [IF NOT EXISTS]","CREATE [OR REPLACE] ROW ACCESS POLICY [IF NOT EXISTS]","GRANT TO","FILTER USING","CREATE CAPACITY","AS JSON","CREATE RESERVATION","CREATE ASSIGNMENT","CREATE SEARCH INDEX [IF NOT EXISTS]","DROP SCHEMA [IF EXISTS]","DROP [MATERIALIZED] VIEW [IF EXISTS]","DROP [TABLE] FUNCTION [IF EXISTS]","DROP PROCEDURE [IF EXISTS]","DROP ROW ACCESS POLICY","DROP ALL ROW ACCESS POLICIES","DROP CAPACITY [IF EXISTS]","DROP RESERVATION [IF EXISTS]","DROP ASSIGNMENT [IF EXISTS]","DROP SEARCH INDEX [IF EXISTS]","DROP [IF EXISTS]","GRANT","REVOKE","DECLARE","EXECUTE IMMEDIATE","LOOP","END LOOP","REPEAT","END REPEAT","WHILE","END WHILE","BREAK","LEAVE","CONTINUE","ITERATE","FOR","END FOR","BEGIN","BEGIN TRANSACTION","COMMIT TRANSACTION","ROLLBACK TRANSACTION","RAISE","RETURN","CALL","ASSERT","EXPORT DATA"]),Q3a=Ja(["UNION {ALL | DISTINCT}","EXCEPT DISTINCT","INTERSECT DISTINCT"]),Y3a=Ja(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN"]),H3a=Ja(["TABLESAMPLE SYSTEM","ANY TYPE","ALL COLUMNS","NOT DETERMINISTIC","{ROWS | RANGE} BETWEEN","IS [NOT] DISTINCT FROM"]),X3a={name:"bigquery",tokenizerOptions:{reservedSelect:O3a,reservedClauses:[...M3a,...Zhr,...mvi],reservedSetOperations:Q3a,reservedJoins:Y3a,reservedPhrases:H3a,reservedKeywords:W3a,reservedDataTypes:P3a,reservedFunctionNames:V3a,extraParens:["[]"],stringTypes:[{quote:'""".."""',prefixes:["R","B","RB","BR"]},{quote:"'''..'''",prefixes:["R","B","RB","BR"]},'""-bs',"''-bs",{quote:'""-raw',prefixes:["R","B","RB","BR"],requirePrefix:!0},{quote:"''-raw",prefixes:["R","B","RB","BR"],requirePrefix:!0}],identTypes:["``"],identChars:{dashes:!0},paramTypes:{positional:!0,named:["@"],quoted:["@"]},variableTypes:[{regex:String.raw`@@\w+`}],lineCommentTypes:["--","#"],operators:["&","|","^","~",">>","<<","||","=>"],postProcess:J3a},formatOptions:{onelineClauses:[...mvi,...Zhr],tabularOnelineClauses:Zhr}};function J3a(e){return U3a(K3a(e))}function U3a(e){let t=vwe;return e.map(r=>r.text==="OFFSET"&&t.text==="["?(t=r,jF(qD({},r),{type:"RESERVED_FUNCTION_NAME"})):(t=r,r))}function K3a(e){var t;let r=[];for(let s=0;st=>t.type==="IDENTIFIER"||t.type==="COMMA"?t[e]+" ":t[e];function j3a(e,t){let r=0;for(let s=t;s"?r--:a.text===">>"&&(r-=2),r===0)return s}return e.length-1}var z3a=["ARRAY_AGG","AVG","CORRELATION","COUNT","COUNT_BIG","COVARIANCE","COVARIANCE_SAMP","CUME_DIST","GROUPING","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_ICPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV","STDDEV_SAMP","SUM","VARIANCE","VARIANCE_SAMP","XMLAGG","XMLGROUP","ABS","ABSVAL","ACOS","ADD_DAYS","ADD_HOURS","ADD_MINUTES","ADD_MONTHS","ADD_SECONDS","ADD_YEARS","AGE","ARRAY_DELETE","ARRAY_FIRST","ARRAY_LAST","ARRAY_NEXT","ARRAY_PRIOR","ASCII","ASCII_STR","ASIN","ATAN","ATAN2","ATANH","BITAND","BITANDNOT","BITOR","BITXOR","BITNOT","BPCHAR","BSON_TO_JSON","BTRIM","CARDINALITY","CEILING","CEIL","CHARACTER_LENGTH","CHR","COALESCE","COLLATION_KEY","COLLATION_KEY_BIT","COMPARE_DECFLOAT","CONCAT","COS","COSH","COT","CURSOR_ROWCOUNT","DATAPARTITIONNUM","DATE_PART","DATE_TRUNC","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFWEEK_ISO","DAYOFYEAR","DAYS","DAYS_BETWEEN","DAYS_TO_END_OF_MONTH","DBPARTITIONNUM","DECFLOAT","DECFLOAT_FORMAT","DECODE","DECRYPT_BIN","DECRYPT_CHAR","DEGREES","DEREF","DIFFERENCE","DIGITS","DOUBLE_PRECISION","EMPTY_BLOB","EMPTY_CLOB","EMPTY_DBCLOB","EMPTY_NCLOB","ENCRYPT","EVENT_MON_STATE","EXP","EXTRACT","FIRST_DAY","FLOOR","FROM_UTC_TIMESTAMP","GENERATE_UNIQUE","GETHINT","GREATEST","HASH","HASH4","HASH8","HASHEDVALUE","HEX","HEXTORAW","HOUR","HOURS_BETWEEN","IDENTITY_VAL_LOCAL","IFNULL","INITCAP","INSERT","INSTR","INSTR2","INSTR4","INSTRB","INTNAND","INTNOR","INTNXOR","INTNNOT","ISNULL","JSON_ARRAY","JSON_OBJECT","JSON_QUERY","JSON_TO_BSON","JSON_VALUE","JULIAN_DAY","LAST_DAY","LCASE","LEAST","LEFT","LENGTH","LENGTH2","LENGTH4","LENGTHB","LN","LOCATE","LOCATE_IN_STRING","LOG10","LONG_VARCHAR","LONG_VARGRAPHIC","LOWER","LPAD","LTRIM","MAX","MAX_CARDINALITY","MICROSECOND","MIDNIGHT_SECONDS","MIN","MINUTE","MINUTES_BETWEEN","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","MULTIPLY_ALT","NEXT_DAY","NEXT_MONTH","NEXT_QUARTER","NEXT_WEEK","NEXT_YEAR","NORMALIZE_DECFLOAT","NOW","NULLIF","NVL","NVL2","OCTET_LENGTH","OVERLAY","PARAMETER","POSITION","POSSTR","POW","POWER","QUANTIZE","QUARTER","QUOTE_IDENT","QUOTE_LITERAL","RADIANS","RAISE_ERROR","RAND","RANDOM","RAWTOHEX","REC2XML","REGEXP_COUNT","REGEXP_EXTRACT","REGEXP_INSTR","REGEXP_LIKE","REGEXP_MATCH_COUNT","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","RID","RID_BIT","RIGHT","ROUND","ROUND_TIMESTAMP","RPAD","RTRIM","SECLABEL","SECLABEL_BY_NAME","SECLABEL_TO_CHAR","SECOND","SECONDS_BETWEEN","SIGN","SIN","SINH","SOUNDEX","SPACE","SQRT","STRIP","STRLEFT","STRPOS","STRRIGHT","SUBSTR","SUBSTR2","SUBSTR4","SUBSTRB","SUBSTRING","TABLE_NAME","TABLE_SCHEMA","TAN","TANH","THIS_MONTH","THIS_QUARTER","THIS_WEEK","THIS_YEAR","TIMESTAMP_FORMAT","TIMESTAMP_ISO","TIMESTAMPDIFF","TIMEZONE","TO_CHAR","TO_CLOB","TO_DATE","TO_HEX","TO_MULTI_BYTE","TO_NCHAR","TO_NCLOB","TO_NUMBER","TO_SINGLE_BYTE","TO_TIMESTAMP","TO_UTC_TIMESTAMP","TOTALORDER","TRANSLATE","TRIM","TRIM_ARRAY","TRUNC_TIMESTAMP","TRUNCATE","TRUNC","TYPE_ID","TYPE_NAME","TYPE_SCHEMA","UCASE","UNICODE_STR","UPPER","VALUE","VARCHAR_BIT_FORMAT","VARCHAR_FORMAT","VARCHAR_FORMAT_BIT","VERIFY_GROUP_FOR_USER","VERIFY_ROLE_FOR_USER","VERIFY_TRUSTED_CONTEXT_ROLE_FOR_USER","WEEK","WEEK_ISO","WEEKS_BETWEEN","WIDTH_BUCKET","XMLATTRIBUTES","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLNAMESPACES","XMLPARSE","XMLPI","XMLQUERY","XMLROW","XMLSERIALIZE","XMLTEXT","XMLVALIDATE","XMLXSROBJECTID","XSLTRANSFORM","YEAR","YEARS_BETWEEN","YMD_BETWEEN","BASE_TABLE","JSON_TABLE","UNNEST","XMLTABLE","RANK","DENSE_RANK","NTILE","LAG","LEAD","ROW_NUMBER","FIRST_VALUE","LAST_VALUE","NTH_VALUE","RATIO_TO_REPORT","CAST"],q3a=["ACTIVATE","ADD","AFTER","ALIAS","ALL","ALLOCATE","ALLOW","ALTER","AND","ANY","AS","ASENSITIVE","ASSOCIATE","ASUTIME","AT","ATTRIBUTES","AUDIT","AUTHORIZATION","AUX","AUXILIARY","BEFORE","BEGIN","BETWEEN","BINARY","BUFFERPOOL","BY","CACHE","CALL","CALLED","CAPTURE","CARDINALITY","CASCADED","CASE","CAST","CHECK","CLONE","CLOSE","CLUSTER","COLLECTION","COLLID","COLUMN","COMMENT","COMMIT","CONCAT","CONDITION","CONNECT","CONNECTION","CONSTRAINT","CONTAINS","CONTINUE","COUNT","COUNT_BIG","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_LC_CTYPE","CURRENT_PATH","CURRENT_SCHEMA","CURRENT_SERVER","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","CURSOR","CYCLE","DATA","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYS","DB2GENERAL","DB2GENRL","DB2SQL","DBINFO","DBPARTITIONNAME","DBPARTITIONNUM","DEALLOCATE","DECLARE","DEFAULT","DEFAULTS","DEFINITION","DELETE","DENSERANK","DENSE_RANK","DESCRIBE","DESCRIPTOR","DETERMINISTIC","DIAGNOSTICS","DISABLE","DISALLOW","DISCONNECT","DISTINCT","DO","DOCUMENT","DROP","DSSIZE","DYNAMIC","EACH","EDITPROC","ELSE","ELSEIF","ENABLE","ENCODING","ENCRYPTION","END","END-EXEC","ENDING","ERASE","ESCAPE","EVERY","EXCEPT","EXCEPTION","EXCLUDING","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXPLAIN","EXTENDED","EXTERNAL","EXTRACT","FENCED","FETCH","FIELDPROC","FILE","FINAL","FIRST1","FOR","FOREIGN","FREE","FROM","FULL","FUNCTION","GENERAL","GENERATED","GET","GLOBAL","GO","GOTO","GRANT","GRAPHIC","GROUP","HANDLER","HASH","HASHED_VALUE","HAVING","HINT","HOLD","HOUR","HOURS","IDENTITY","IF","IMMEDIATE","IMPORT","IN","INCLUDING","INCLUSIVE","INCREMENT","INDEX","INDICATOR","INDICATORS","INF","INFINITY","INHERIT","INNER","INOUT","INSENSITIVE","INSERT","INTEGRITY","INTERSECT","INTO","IS","ISNULL","ISOBID","ISOLATION","ITERATE","JAR","JAVA","JOIN","KEEP","KEY","LABEL","LANGUAGE","LAST3","LATERAL","LC_CTYPE","LEAVE","LEFT","LIKE","LIMIT","LINKTYPE","LOCAL","LOCALDATE","LOCALE","LOCALTIME","LOCALTIMESTAMP","LOCATOR","LOCATORS","LOCK","LOCKMAX","LOCKSIZE","LOOP","MAINTAINED","MATERIALIZED","MAXVALUE","MICROSECOND","MICROSECONDS","MINUTE","MINUTES","MINVALUE","MODE","MODIFIES","MONTH","MONTHS","NAN","NEW","NEW_TABLE","NEXTVAL","NO","NOCACHE","NOCYCLE","NODENAME","NODENUMBER","NOMAXVALUE","NOMINVALUE","NONE","NOORDER","NORMALIZED","NOT2","NOTNULL","NULL","NULLS","NUMPARTS","OBID","OF","OFF","OFFSET","OLD","OLD_TABLE","ON","OPEN","OPTIMIZATION","OPTIMIZE","OPTION","OR","ORDER","OUT","OUTER","OVER","OVERRIDING","PACKAGE","PADDED","PAGESIZE","PARAMETER","PART","PARTITION","PARTITIONED","PARTITIONING","PARTITIONS","PASSWORD","PATH","PERCENT","PIECESIZE","PLAN","POSITION","PRECISION","PREPARE","PREVVAL","PRIMARY","PRIQTY","PRIVILEGES","PROCEDURE","PROGRAM","PSID","PUBLIC","QUERY","QUERYNO","RANGE","RANK","READ","READS","RECOVERY","REFERENCES","REFERENCING","REFRESH","RELEASE","RENAME","REPEAT","RESET","RESIGNAL","RESTART","RESTRICT","RESULT","RESULT_SET_LOCATOR","RETURN","RETURNS","REVOKE","RIGHT","ROLE","ROLLBACK","ROUND_CEILING","ROUND_DOWN","ROUND_FLOOR","ROUND_HALF_DOWN","ROUND_HALF_EVEN","ROUND_HALF_UP","ROUND_UP","ROUTINE","ROW","ROWNUMBER","ROWS","ROWSET","ROW_NUMBER","RRN","RUN","SAVEPOINT","SCHEMA","SCRATCHPAD","SCROLL","SEARCH","SECOND","SECONDS","SECQTY","SECURITY","SELECT","SENSITIVE","SEQUENCE","SESSION","SESSION_USER","SET","SIGNAL","SIMPLE","SNAN","SOME","SOURCE","SPECIFIC","SQL","SQLID","STACKED","STANDARD","START","STARTING","STATEMENT","STATIC","STATMENT","STAY","STOGROUP","STORES","STYLE","SUBSTRING","SUMMARY","SYNONYM","SYSFUN","SYSIBM","SYSPROC","SYSTEM","SYSTEM_USER","TABLE","TABLESPACE","THEN","TO","TRANSACTION","TRIGGER","TRIM","TRUNCATE","TYPE","UNDO","UNION","UNIQUE","UNTIL","UPDATE","USAGE","USER","USING","VALIDPROC","VALUE","VALUES","VARIABLE","VARIANT","VCAT","VERSION","VIEW","VOLATILE","VOLUMES","WHEN","WHENEVER","WHERE","WHILE","WITH","WITHOUT","WLM","WRITE","XMLELEMENT","XMLEXISTS","XMLNAMESPACES","YEAR","YEARS"],$3a=["ARRAY","BIGINT","BINARY","BLOB","BOOLEAN","CCSID","CHAR","CHARACTER","CLOB","DATE","DATETIME","DBCLOB","DEC","DECIMAL","DOUBLE","DOUBLE PRECISION","FLOAT","FLOAT4","FLOAT8","GRAPHIC","INT","INT2","INT4","INT8","INTEGER","INTERVAL","LONG VARCHAR","LONG VARGRAPHIC","NCHAR","NCHR","NCLOB","NVARCHAR","NUMERIC","SMALLINT","REAL","TIME","TIMESTAMP","VARBINARY","VARCHAR","VARGRAPHIC"],ePa=Ja(["SELECT [ALL | DISTINCT]"]),tPa=Ja(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY [INPUT SEQUENCE]","LIMIT","OFFSET","FETCH NEXT","FOR UPDATE [OF]","FOR {READ | FETCH} ONLY","FOR {RR | CS | UR | RS} [USE AND KEEP {SHARE | UPDATE | EXCLUSIVE} LOCKS]","WAIT FOR OUTCOME","SKIP LOCKED DATA","INTO","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","INSERT"]),_vi=Ja(["CREATE [GLOBAL TEMPORARY | EXTERNAL] TABLE [IF NOT EXISTS]"]),Lhr=Ja(["CREATE [OR REPLACE] VIEW","UPDATE","WHERE CURRENT OF","WITH {RR | RS | CS | UR}","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","DROP [COLUMN]","RENAME COLUMN","ALTER [COLUMN]","SET DATA TYPE","SET NOT NULL","DROP {DEFAULT | GENERATED | NOT NULL}","TRUNCATE [TABLE]","ALLOCATE","ALTER AUDIT POLICY","ALTER BUFFERPOOL","ALTER DATABASE PARTITION GROUP","ALTER DATABASE","ALTER EVENT MONITOR","ALTER FUNCTION","ALTER HISTOGRAM TEMPLATE","ALTER INDEX","ALTER MASK","ALTER METHOD","ALTER MODULE","ALTER NICKNAME","ALTER PACKAGE","ALTER PERMISSION","ALTER PROCEDURE","ALTER SCHEMA","ALTER SECURITY LABEL COMPONENT","ALTER SECURITY POLICY","ALTER SEQUENCE","ALTER SERVER","ALTER SERVICE CLASS","ALTER STOGROUP","ALTER TABLESPACE","ALTER THRESHOLD","ALTER TRIGGER","ALTER TRUSTED CONTEXT","ALTER TYPE","ALTER USAGE LIST","ALTER USER MAPPING","ALTER VIEW","ALTER WORK ACTION SET","ALTER WORK CLASS SET","ALTER WORKLOAD","ALTER WRAPPER","ALTER XSROBJECT","ALTER STOGROUP","ALTER TABLESPACE","ALTER TRIGGER","ALTER TRUSTED CONTEXT","ALTER VIEW","ASSOCIATE [RESULT SET] {LOCATOR | LOCATORS}","AUDIT","BEGIN DECLARE SECTION","CALL","CLOSE","COMMENT ON","COMMIT [WORK]","CONNECT","CREATE [OR REPLACE] [PUBLIC] ALIAS","CREATE AUDIT POLICY","CREATE BUFFERPOOL","CREATE DATABASE PARTITION GROUP","CREATE EVENT MONITOR","CREATE [OR REPLACE] FUNCTION","CREATE FUNCTION MAPPING","CREATE HISTOGRAM TEMPLATE","CREATE [UNIQUE] INDEX","CREATE INDEX EXTENSION","CREATE [OR REPLACE] MASK","CREATE [SPECIFIC] METHOD","CREATE [OR REPLACE] MODULE","CREATE [OR REPLACE] NICKNAME","CREATE [OR REPLACE] PERMISSION","CREATE [OR REPLACE] PROCEDURE","CREATE ROLE","CREATE SCHEMA","CREATE SECURITY LABEL [COMPONENT]","CREATE SECURITY POLICY","CREATE [OR REPLACE] SEQUENCE","CREATE SERVICE CLASS","CREATE SERVER","CREATE STOGROUP","CREATE SYNONYM","CREATE [LARGE | REGULAR | {SYSTEM | USER} TEMPORARY] TABLESPACE","CREATE THRESHOLD","CREATE {TRANSFORM | TRANSFORMS} FOR","CREATE [OR REPLACE] TRIGGER","CREATE TRUSTED CONTEXT","CREATE [OR REPLACE] TYPE","CREATE TYPE MAPPING","CREATE USAGE LIST","CREATE USER MAPPING FOR","CREATE [OR REPLACE] VARIABLE","CREATE WORK ACTION SET","CREATE WORK CLASS SET","CREATE WORKLOAD","CREATE WRAPPER","DECLARE","DECLARE GLOBAL TEMPORARY TABLE","DESCRIBE [INPUT | OUTPUT]","DISCONNECT","DROP [PUBLIC] ALIAS","DROP AUDIT POLICY","DROP BUFFERPOOL","DROP DATABASE PARTITION GROUP","DROP EVENT MONITOR","DROP [SPECIFIC] FUNCTION","DROP FUNCTION MAPPING","DROP HISTOGRAM TEMPLATE","DROP INDEX [EXTENSION]","DROP MASK","DROP [SPECIFIC] METHOD","DROP MODULE","DROP NICKNAME","DROP PACKAGE","DROP PERMISSION","DROP [SPECIFIC] PROCEDURE","DROP ROLE","DROP SCHEMA","DROP SECURITY LABEL [COMPONENT]","DROP SECURITY POLICY","DROP SEQUENCE","DROP SERVER","DROP SERVICE CLASS","DROP STOGROUP","DROP TABLE HIERARCHY","DROP {TABLESPACE | TABLESPACES}","DROP {TRANSFORM | TRANSFORMS}","DROP THRESHOLD","DROP TRIGGER","DROP TRUSTED CONTEXT","DROP TYPE [MAPPING]","DROP USAGE LIST","DROP USER MAPPING FOR","DROP VARIABLE","DROP VIEW [HIERARCHY]","DROP WORK {ACTION | CLASS} SET","DROP WORKLOAD","DROP WRAPPER","DROP XSROBJECT","END DECLARE SECTION","EXECUTE [IMMEDIATE]","EXPLAIN {PLAN [SECTION] | ALL}","FETCH [FROM]","FLUSH {BUFFERPOOL | BUFFERPOOLS} ALL","FLUSH EVENT MONITOR","FLUSH FEDERATED CACHE","FLUSH OPTIMIZATION PROFILE CACHE","FLUSH PACKAGE CACHE [DYNAMIC]","FLUSH AUTHENTICATION CACHE [FOR ALL]","FREE LOCATOR","GET DIAGNOSTICS","GOTO","GRANT","INCLUDE","ITERATE","LEAVE","LOCK TABLE","LOOP","OPEN","PIPE","PREPARE","REFRESH TABLE","RELEASE","RELEASE [TO] SAVEPOINT","RENAME [TABLE | INDEX | STOGROUP | TABLESPACE]","REPEAT","RESIGNAL","RETURN","REVOKE","ROLLBACK [WORK] [TO SAVEPOINT]","SAVEPOINT","SET COMPILATION ENVIRONMENT","SET CONNECTION","SET CURRENT","SET ENCRYPTION PASSWORD","SET EVENT MONITOR STATE","SET INTEGRITY","SET PASSTHRU","SET PATH","SET ROLE","SET SCHEMA","SET SERVER OPTION","SET {SESSION AUTHORIZATION | SESSION_USER}","SET USAGE LIST","SIGNAL","TRANSFER OWNERSHIP OF","WHENEVER {NOT FOUND | SQLERROR | SQLWARNING}","WHILE"]),rPa=Ja(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),nPa=Ja(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN"]),iPa=Ja(["ON DELETE","ON UPDATE","SET NULL","{ROWS | RANGE} BETWEEN"]),sPa={name:"db2",tokenizerOptions:{reservedSelect:ePa,reservedClauses:[...tPa,..._vi,...Lhr],reservedSetOperations:rPa,reservedJoins:nPa,reservedPhrases:iPa,reservedKeywords:q3a,reservedDataTypes:$3a,reservedFunctionNames:z3a,extraParens:["[]"],stringTypes:[{quote:"''-qq",prefixes:["G","N","U&"]},{quote:"''-raw",prefixes:["X","BX","GX","UX"],requirePrefix:!0}],identTypes:['""-qq'],identChars:{first:"@#$",rest:"@#$"},paramTypes:{positional:!0,named:[":"]},paramChars:{first:"@#$",rest:"@#$"},operators:["**","%","|","&","^","~","\xAC=","\xAC>","\xAC<","!>","!<","^=","^>","^<","||","->","=>"]},formatOptions:{onelineClauses:[..._vi,...Lhr],tabularOnelineClauses:Lhr}},oPa=["ARRAY_AGG","AVG","CORR","CORRELATION","COUNT","COUNT_BIG","COVAR_POP","COVARIANCE","COVAR","COVAR_SAMP","COVARIANCE_SAMP","EVERY","GROUPING","JSON_ARRAYAGG","JSON_OBJECTAGG","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","SOME","STDDEV_POP","STDDEV","STDDEV_SAMP","SUM","VAR_POP","VARIANCE","VAR","VAR_SAMP","VARIANCE_SAMP","XMLAGG","XMLGROUP","ABS","ABSVAL","ACOS","ADD_DAYS","ADD_HOURS","ADD_MINUTES","ADD_MONTHS","ADD_SECONDS","ADD_YEARS","ANTILOG","ARRAY_MAX_CARDINALITY","ARRAY_TRIM","ASCII","ASIN","ATAN","ATAN2","ATANH","BASE64_DECODE","BASE64_ENCODE","BIT_LENGTH","BITAND","BITANDNOT","BITNOT","BITOR","BITXOR","BSON_TO_JSON","CARDINALITY","CEIL","CEILING","CHAR_LENGTH","CHARACTER_LENGTH","CHR","COALESCE","COMPARE_DECFLOAT","CONCAT","CONTAINS","COS","COSH","COT","CURDATE","CURTIME","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK_ISO","DAYOFWEEK","DAYOFYEAR","DAYS","DBPARTITIONNAME","DBPARTITIONNUM","DECFLOAT_FORMAT","DECFLOAT_SORTKEY","DECRYPT_BINARY","DECRYPT_BIT","DECRYPT_CHAR","DECRYPT_DB","DEGREES","DIFFERENCE","DIGITS","DLCOMMENT","DLLINKTYPE","DLURLCOMPLETE","DLURLPATH","DLURLPATHONLY","DLURLSCHEME","DLURLSERVER","DLVALUE","DOUBLE_PRECISION","DOUBLE","ENCRPYT","ENCRYPT_AES","ENCRYPT_AES256","ENCRYPT_RC2","ENCRYPT_TDES","EXP","EXTRACT","FIRST_DAY","FLOOR","GENERATE_UNIQUE","GET_BLOB_FROM_FILE","GET_CLOB_FROM_FILE","GET_DBCLOB_FROM_FILE","GET_XML_FILE","GETHINT","GREATEST","HASH_MD5","HASH_ROW","HASH_SHA1","HASH_SHA256","HASH_SHA512","HASH_VALUES","HASHED_VALUE","HEX","HEXTORAW","HOUR","HTML_ENTITY_DECODE","HTML_ENTITY_ENCODE","HTTP_DELETE_BLOB","HTTP_DELETE","HTTP_GET_BLOB","HTTP_GET","HTTP_PATCH_BLOB","HTTP_PATCH","HTTP_POST_BLOB","HTTP_POST","HTTP_PUT_BLOB","HTTP_PUT","IDENTITY_VAL_LOCAL","IFNULL","INSERT","INSTR","INTERPRET","ISFALSE","ISNOTFALSE","ISNOTTRUE","ISTRUE","JSON_ARRAY","JSON_OBJECT","JSON_QUERY","JSON_TO_BSON","JSON_UPDATE","JSON_VALUE","JULIAN_DAY","LAND","LAST_DAY","LCASE","LEAST","LEFT","LENGTH","LN","LNOT","LOCATE_IN_STRING","LOCATE","LOG10","LOR","LOWER","LPAD","LTRIM","MAX_CARDINALITY","MAX","MICROSECOND","MIDNIGHT_SECONDS","MIN","MINUTE","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","MQREAD","MQREADCLOB","MQRECEIVE","MQRECEIVECLOB","MQSEND","MULTIPLY_ALT","NEXT_DAY","NORMALIZE_DECFLOAT","NOW","NULLIF","NVL","OCTET_LENGTH","OVERLAY","PI","POSITION","POSSTR","POW","POWER","QUANTIZE","QUARTER","RADIANS","RAISE_ERROR","RANDOM","RAND","REGEXP_COUNT","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","RID","RIGHT","ROUND_TIMESTAMP","ROUND","RPAD","RRN","RTRIM","SCORE","SECOND","SIGN","SIN","SINH","SOUNDEX","SPACE","SQRT","STRIP","STRLEFT","STRPOS","STRRIGHT","SUBSTR","SUBSTRING","TABLE_NAME","TABLE_SCHEMA","TAN","TANH","TIMESTAMP_FORMAT","TIMESTAMP_ISO","TIMESTAMPDIFF_BIG","TIMESTAMPDIFF","TO_CHAR","TO_CLOB","TO_DATE","TO_NUMBER","TO_TIMESTAMP","TOTALORDER","TRANSLATE","TRIM_ARRAY","TRIM","TRUNC_TIMESTAMP","TRUNC","TRUNCATE","UCASE","UPPER","URL_DECODE","URL_ENCODE","VALUE","VARBINARY_FORMAT","VARCHAR_BIT_FORMAT","VARCHAR_FORMAT_BINARY","VARCHAR_FORMAT","VERIFY_GROUP_FOR_USER","WEEK_ISO","WEEK","WRAP","XMLATTRIBUTES","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLNAMESPACES","XMLPARSE","XMLPI","XMLROW","XMLSERIALIZE","XMLTEXT","XMLVALIDATE","XOR","XSLTRANSFORM","YEAR","ZONED","BASE_TABLE","HTTP_DELETE_BLOB_VERBOSE","HTTP_DELETE_VERBOSE","HTTP_GET_BLOB_VERBOSE","HTTP_GET_VERBOSE","HTTP_PATCH_BLOB_VERBOSE","HTTP_PATCH_VERBOSE","HTTP_POST_BLOB_VERBOSE","HTTP_POST_VERBOSE","HTTP_PUT_BLOB_VERBOSE","HTTP_PUT_VERBOSE","JSON_TABLE","MQREADALL","MQREADALLCLOB","MQRECEIVEALL","MQRECEIVEALLCLOB","XMLTABLE","UNPACK","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","RATIO_TO_REPORT","ROW_NUMBER","CAST"],aPa=["ABSENT","ACCORDING","ACCTNG","ACTION","ACTIVATE","ADD","ALIAS","ALL","ALLOCATE","ALLOW","ALTER","AND","ANY","APPEND","APPLNAME","ARRAY","ARRAY_AGG","ARRAY_TRIM","AS","ASC","ASENSITIVE","ASSOCIATE","ATOMIC","ATTACH","ATTRIBUTES","AUTHORIZATION","AUTONOMOUS","BEFORE","BEGIN","BETWEEN","BIND","BSON","BUFFERPOOL","BY","CACHE","CALL","CALLED","CARDINALITY","CASE","CAST","CHECK","CL","CLOSE","CLUSTER","COLLECT","COLLECTION","COLUMN","COMMENT","COMMIT","COMPACT","COMPARISONS","COMPRESS","CONCAT","CONCURRENT","CONDITION","CONNECT","CONNECT_BY_ROOT","CONNECTION","CONSTANT","CONSTRAINT","CONTAINS","CONTENT","CONTINUE","COPY","COUNT","COUNT_BIG","CREATE","CREATEIN","CROSS","CUBE","CUME_DIST","CURRENT","CURRENT_DATE","CURRENT_PATH","CURRENT_SCHEMA","CURRENT_SERVER","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","CURSOR","CYCLE","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYS","DB2GENERAL","DB2GENRL","DB2SQL","DBINFO","DBPARTITIONNAME","DBPARTITIONNUM","DEACTIVATE","DEALLOCATE","DECLARE","DEFAULT","DEFAULTS","DEFER","DEFINE","DEFINITION","DELETE","DELETING","DENSE_RANK","DENSERANK","DESC","DESCRIBE","DESCRIPTOR","DETACH","DETERMINISTIC","DIAGNOSTICS","DISABLE","DISALLOW","DISCONNECT","DISTINCT","DO","DOCUMENT","DROP","DYNAMIC","EACH","ELSE","ELSEIF","EMPTY","ENABLE","ENCODING","ENCRYPTION","END","END-EXEC","ENDING","ENFORCED","ERROR","ESCAPE","EVERY","EXCEPT","EXCEPTION","EXCLUDING","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXTEND","EXTERNAL","EXTRACT","FALSE","FENCED","FETCH","FIELDPROC","FILE","FINAL","FIRST_VALUE","FOR","FOREIGN","FORMAT","FREE","FREEPAGE","FROM","FULL","FUNCTION","GBPCACHE","GENERAL","GENERATED","GET","GLOBAL","GO","GOTO","GRANT","GROUP","HANDLER","HASH","HASH_ROW","HASHED_VALUE","HAVING","HINT","HOLD","HOUR","HOURS","IDENTITY","IF","IGNORE","IMMEDIATE","IMPLICITLY","IN","INCLUDE","INCLUDING","INCLUSIVE","INCREMENT","INDEX","INDEXBP","INDICATOR","INF","INFINITY","INHERIT","INLINE","INNER","INOUT","INSENSITIVE","INSERT","INSERTING","INTEGRITY","INTERPRET","INTERSECT","INTO","IS","ISNULL","ISOLATION","ITERATE","JAVA","JOIN","JSON","JSON_ARRAY","JSON_ARRAYAGG","JSON_EXISTS","JSON_OBJECT","JSON_OBJECTAGG","JSON_QUERY","JSON_TABLE","JSON_VALUE","KEEP","KEY","KEYS","LABEL","LAG","LANGUAGE","LAST_VALUE","LATERAL","LEAD","LEAVE","LEFT","LEVEL2","LIKE","LIMIT","LINKTYPE","LISTAGG","LOCAL","LOCALDATE","LOCALTIME","LOCALTIMESTAMP","LOCATION","LOCATOR","LOCK","LOCKSIZE","LOG","LOGGED","LOOP","MAINTAINED","MASK","MATCHED","MATERIALIZED","MAXVALUE","MERGE","MICROSECOND","MICROSECONDS","MINPCTUSED","MINUTE","MINUTES","MINVALUE","MIRROR","MIXED","MODE","MODIFIES","MONTH","MONTHS","NAMESPACE","NAN","NATIONAL","NCHAR","NCLOB","NESTED","NEW","NEW_TABLE","NEXTVAL","NO","NOCACHE","NOCYCLE","NODENAME","NODENUMBER","NOMAXVALUE","NOMINVALUE","NONE","NOORDER","NORMALIZED","NOT","NOTNULL","NTH_VALUE","NTILE","NULL","NULLS","NVARCHAR","OBID","OBJECT","OF","OFF","OFFSET","OLD","OLD_TABLE","OMIT","ON","ONLY","OPEN","OPTIMIZE","OPTION","OR","ORDER","ORDINALITY","ORGANIZE","OUT","OUTER","OVER","OVERLAY","OVERRIDING","PACKAGE","PADDED","PAGE","PAGESIZE","PARAMETER","PART","PARTITION","PARTITIONED","PARTITIONING","PARTITIONS","PASSING","PASSWORD","PATH","PCTFREE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PERIOD","PERMISSION","PIECESIZE","PIPE","PLAN","POSITION","PREPARE","PREVVAL","PRIMARY","PRIOR","PRIQTY","PRIVILEGES","PROCEDURE","PROGRAM","PROGRAMID","QUERY","RANGE","RANK","RATIO_TO_REPORT","RCDFMT","READ","READS","RECOVERY","REFERENCES","REFERENCING","REFRESH","REGEXP_LIKE","RELEASE","RENAME","REPEAT","RESET","RESIGNAL","RESTART","RESULT","RESULT_SET_LOCATOR","RETURN","RETURNING","RETURNS","REVOKE","RID","RIGHT","ROLLBACK","ROLLUP","ROUTINE","ROW","ROW_NUMBER","ROWNUMBER","ROWS","RRN","RUN","SAVEPOINT","SBCS","SCALAR","SCHEMA","SCRATCHPAD","SCROLL","SEARCH","SECOND","SECONDS","SECQTY","SECURED","SELECT","SENSITIVE","SEQUENCE","SESSION","SESSION_USER","SET","SIGNAL","SIMPLE","SKIP","SNAN","SOME","SOURCE","SPECIFIC","SQL","SQLID","SQLIND_DEFAULT","SQLIND_UNASSIGNED","STACKED","START","STARTING","STATEMENT","STATIC","STOGROUP","SUBSTRING","SUMMARY","SYNONYM","SYSTEM_TIME","SYSTEM_USER","TABLE","TABLESPACE","TABLESPACES","TAG","THEN","THREADSAFE","TO","TRANSACTION","TRANSFER","TRIGGER","TRIM","TRIM_ARRAY","TRUE","TRUNCATE","TRY_CAST","TYPE","UNDO","UNION","UNIQUE","UNIT","UNKNOWN","UNNEST","UNTIL","UPDATE","UPDATING","URI","USAGE","USE","USER","USERID","USING","VALUE","VALUES","VARIABLE","VARIANT","VCAT","VERSION","VERSIONING","VIEW","VOLATILE","WAIT","WHEN","WHENEVER","WHERE","WHILE","WITH","WITHIN","WITHOUT","WRAPPED","WRAPPER","WRITE","WRKSTNNAME","XMLAGG","XMLATTRIBUTES","XMLCAST","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLGROUP","XMLNAMESPACES","XMLPARSE","XMLPI","XMLROW","XMLSERIALIZE","XMLTABLE","XMLTEXT","XMLVALIDATE","XSLTRANSFORM","XSROBJECT","YEAR","YEARS","YES","ZONE"],cPa=["ARRAY","BIGINT","BINARY","BIT","BLOB","BOOLEAN","CCSID","CHAR","CHARACTER","CLOB","DATA","DATALINK","DATE","DBCLOB","DECFLOAT","DECIMAL","DEC","DOUBLE","DOUBLE PRECISION","FLOAT","GRAPHIC","INT","INTEGER","LONG","NUMERIC","REAL","ROWID","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR","VARGRAPHIC","XML"],lPa=Ja(["SELECT [ALL | DISTINCT]"]),uPa=Ja(["WITH [RECURSIVE]","INTO","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER [SIBLINGS] BY [INPUT SEQUENCE]","LIMIT","OFFSET","FETCH {FIRST | NEXT}","FOR UPDATE [OF]","FOR READ ONLY","OPTIMIZE FOR","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","DELETE","INSERT","FOR SYSTEM NAME"]),yvi=Ja(["CREATE [OR REPLACE] TABLE"]),Vhr=Ja(["CREATE [OR REPLACE] [RECURSIVE] VIEW","UPDATE","WHERE CURRENT OF","WITH {NC | RR | RS | CS | UR}","DELETE FROM","DROP TABLE","ALTER TABLE","ADD [COLUMN]","ALTER [COLUMN]","DROP [COLUMN]","SET DATA TYPE","SET {GENERATED ALWAYS | GENERATED BY DEFAULT}","SET NOT NULL","SET {NOT HIDDEN | IMPLICITLY HIDDEN}","SET FIELDPROC","DROP {DEFAULT | NOT NULL | GENERATED | IDENTITY | ROW CHANGE TIMESTAMP | FIELDPROC}","TRUNCATE [TABLE]","SET [CURRENT] SCHEMA","SET CURRENT_SCHEMA","ALLOCATE CURSOR","ALLOCATE [SQL] DESCRIPTOR [LOCAL | GLOBAL] SQL","ALTER [SPECIFIC] {FUNCTION | PROCEDURE}","ALTER {MASK | PERMISSION | SEQUENCE | TRIGGER}","ASSOCIATE [RESULT SET] {LOCATOR | LOCATORS}","BEGIN DECLARE SECTION","CALL","CLOSE","COMMENT ON {ALIAS | COLUMN | CONSTRAINT | INDEX | MASK | PACKAGE | PARAMETER | PERMISSION | SEQUENCE | TABLE | TRIGGER | VARIABLE | XSROBJECT}","COMMENT ON [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE}","COMMENT ON PARAMETER SPECIFIC {FUNCTION | PROCEDURE | ROUTINE}","COMMENT ON [TABLE FUNCTION] RETURN COLUMN","COMMENT ON [TABLE FUNCTION] RETURN COLUMN SPECIFIC [PROCEDURE | ROUTINE]","COMMIT [WORK] [HOLD]","CONNECT [TO | RESET] USER","CREATE [OR REPLACE] {ALIAS | FUNCTION | MASK | PERMISSION | PROCEDURE | SEQUENCE | TRIGGER | VARIABLE}","CREATE [ENCODED VECTOR] INDEX","CREATE UNIQUE [WHERE NOT NULL] INDEX","CREATE SCHEMA","CREATE TYPE","DEALLOCATE [SQL] DESCRIPTOR [LOCAL | GLOBAL]","DECLARE CURSOR","DECLARE GLOBAL TEMPORARY TABLE","DECLARE","DESCRIBE CURSOR","DESCRIBE INPUT","DESCRIBE [OUTPUT]","DESCRIBE {PROCEDURE | ROUTINE}","DESCRIBE TABLE","DISCONNECT ALL [SQL]","DISCONNECT [CURRENT]","DROP {ALIAS | INDEX | MASK | PACKAGE | PERMISSION | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT} [IF EXISTS]","DROP [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE} [IF EXISTS]","END DECLARE SECTION","EXECUTE [IMMEDIATE]","FREE LOCATOR","GET [SQL] DESCRIPTOR [LOCAL | GLOBAL]","GET [CURRENT | STACKED] DIAGNOSTICS","GRANT {ALL [PRIVILEGES] | ALTER | EXECUTE} ON {FUNCTION | PROCEDURE | ROUTINE | PACKAGE | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT}","HOLD LOCATOR","INCLUDE","LABEL ON {ALIAS | COLUMN | CONSTRAINT | INDEX | MASK | PACKAGE | PERMISSION | SEQUENCE | TABLE | TRIGGER | VARIABLE | XSROBJECT}","LABEL ON [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE}","LOCK TABLE","OPEN","PREPARE","REFRESH TABLE","RELEASE","RELEASE [TO] SAVEPOINT","RENAME [TABLE | INDEX] TO","REVOKE {ALL [PRIVILEGES] | ALTER | EXECUTE} ON {FUNCTION | PROCEDURE | ROUTINE | PACKAGE | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT}","ROLLBACK [WORK] [HOLD | TO SAVEPOINT]","SAVEPOINT","SET CONNECTION","SET CURRENT {DEBUG MODE | DECFLOAT ROUNDING MODE | DEGREE | IMPLICIT XMLPARSE OPTION | TEMPORAL SYSTEM_TIME}","SET [SQL] DESCRIPTOR [LOCAL | GLOBAL]","SET ENCRYPTION PASSWORD","SET OPTION","SET {[CURRENT [FUNCTION]] PATH | CURRENT_PATH}","SET RESULT SETS [WITH RETURN [TO CALLER | TO CLIENT]]","SET SESSION AUTHORIZATION","SET SESSION_USER","SET TRANSACTION","SIGNAL SQLSTATE [VALUE]","TAG","TRANSFER OWNERSHIP OF","WHENEVER {NOT FOUND | SQLERROR | SQLWARNING}"]),gPa=Ja(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),APa=Ja(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","[LEFT | RIGHT] EXCEPTION JOIN","{INNER | CROSS} JOIN"]),dPa=Ja(["ON DELETE","ON UPDATE","SET NULL","{ROWS | RANGE} BETWEEN"]),pPa={name:"db2i",tokenizerOptions:{reservedSelect:lPa,reservedClauses:[...uPa,...yvi,...Vhr],reservedSetOperations:gPa,reservedJoins:APa,reservedPhrases:dPa,reservedKeywords:aPa,reservedDataTypes:cPa,reservedFunctionNames:oPa,nestedBlockComments:!0,extraParens:["[]"],stringTypes:[{quote:"''-qq",prefixes:["G","N"]},{quote:"''-raw",prefixes:["X","BX","GX","UX"],requirePrefix:!0}],identTypes:['""-qq'],identChars:{first:"@#$",rest:"@#$"},paramTypes:{positional:!0,named:[":"]},paramChars:{first:"@#$",rest:"@#$"},operators:["**","\xAC=","\xAC>","\xAC<","!>","!<","||","=>"]},formatOptions:{onelineClauses:[...yvi,...Vhr],tabularOnelineClauses:Vhr}},fPa=["ABS","ACOS","ASIN","ATAN","BIN","BROUND","CBRT","CEIL","CEILING","CONV","COS","DEGREES","EXP","FACTORIAL","FLOOR","GREATEST","HEX","LEAST","LN","LOG","LOG10","LOG2","NEGATIVE","PI","PMOD","POSITIVE","POW","POWER","RADIANS","RAND","ROUND","SHIFTLEFT","SHIFTRIGHT","SHIFTRIGHTUNSIGNED","SIGN","SIN","SQRT","TAN","UNHEX","WIDTH_BUCKET","ARRAY_CONTAINS","MAP_KEYS","MAP_VALUES","SIZE","SORT_ARRAY","BINARY","CAST","ADD_MONTHS","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFYEAR","EXTRACT","FROM_UNIXTIME","FROM_UTC_TIMESTAMP","HOUR","LAST_DAY","MINUTE","MONTH","MONTHS_BETWEEN","NEXT_DAY","QUARTER","SECOND","TIMESTAMP","TO_DATE","TO_UTC_TIMESTAMP","TRUNC","UNIX_TIMESTAMP","WEEKOFYEAR","YEAR","ASSERT_TRUE","COALESCE","IF","ISNOTNULL","ISNULL","NULLIF","NVL","ASCII","BASE64","CHARACTER_LENGTH","CHR","CONCAT","CONCAT_WS","CONTEXT_NGRAMS","DECODE","ELT","ENCODE","FIELD","FIND_IN_SET","FORMAT_NUMBER","GET_JSON_OBJECT","IN_FILE","INITCAP","INSTR","LCASE","LENGTH","LEVENSHTEIN","LOCATE","LOWER","LPAD","LTRIM","NGRAMS","OCTET_LENGTH","PARSE_URL","PRINTF","QUOTE","REGEXP_EXTRACT","REGEXP_REPLACE","REPEAT","REVERSE","RPAD","RTRIM","SENTENCES","SOUNDEX","SPACE","SPLIT","STR_TO_MAP","SUBSTR","SUBSTRING","TRANSLATE","TRIM","UCASE","UNBASE64","UPPER","MASK","MASK_FIRST_N","MASK_HASH","MASK_LAST_N","MASK_SHOW_FIRST_N","MASK_SHOW_LAST_N","AES_DECRYPT","AES_ENCRYPT","CRC32","CURRENT_DATABASE","CURRENT_USER","HASH","JAVA_METHOD","LOGGED_IN_USER","MD5","REFLECT","SHA","SHA1","SHA2","SURROGATE_KEY","VERSION","AVG","COLLECT_LIST","COLLECT_SET","CORR","COUNT","COVAR_POP","COVAR_SAMP","HISTOGRAM_NUMERIC","MAX","MIN","NTILE","PERCENTILE","PERCENTILE_APPROX","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","EXPLODE","INLINE","JSON_TUPLE","PARSE_URL_TUPLE","POSEXPLODE","STACK","LEAD","LAG","FIRST_VALUE","LAST_VALUE","RANK","ROW_NUMBER","DENSE_RANK","CUME_DIST","PERCENT_RANK","NTILE"],IPa=["ADD","ADMIN","AFTER","ANALYZE","ARCHIVE","ASC","BEFORE","BUCKET","BUCKETS","CASCADE","CHANGE","CLUSTER","CLUSTERED","CLUSTERSTATUS","COLLECTION","COLUMNS","COMMENT","COMPACT","COMPACTIONS","COMPUTE","CONCATENATE","CONTINUE","DATA","DATABASES","DATETIME","DAY","DBPROPERTIES","DEFERRED","DEFINED","DELIMITED","DEPENDENCY","DESC","DIRECTORIES","DIRECTORY","DISABLE","DISTRIBUTE","ELEM_TYPE","ENABLE","ESCAPED","EXCLUSIVE","EXPLAIN","EXPORT","FIELDS","FILE","FILEFORMAT","FIRST","FORMAT","FORMATTED","FUNCTIONS","HOLD_DDLTIME","HOUR","IDXPROPERTIES","IGNORE","INDEX","INDEXES","INPATH","INPUTDRIVER","INPUTFORMAT","ITEMS","JAR","KEYS","KEY_TYPE","LIMIT","LINES","LOAD","LOCATION","LOCK","LOCKS","LOGICAL","LONG","MAPJOIN","MATERIALIZED","METADATA","MINUS","MINUTE","MONTH","MSCK","NOSCAN","NO_DROP","OFFLINE","OPTION","OUTPUTDRIVER","OUTPUTFORMAT","OVERWRITE","OWNER","PARTITIONED","PARTITIONS","PLUS","PRETTY","PRINCIPALS","PROTECTION","PURGE","READ","READONLY","REBUILD","RECORDREADER","RECORDWRITER","RELOAD","RENAME","REPAIR","REPLACE","REPLICATION","RESTRICT","REWRITE","ROLE","ROLES","SCHEMA","SCHEMAS","SECOND","SEMI","SERDE","SERDEPROPERTIES","SERVER","SETS","SHARED","SHOW","SHOW_DATABASE","SKEWED","SORT","SORTED","SSL","STATISTICS","STORED","STREAMTABLE","STRING","TABLES","TBLPROPERTIES","TEMPORARY","TERMINATED","TINYINT","TOUCH","TRANSACTIONS","UNARCHIVE","UNDO","UNIONTYPE","UNLOCK","UNSET","UNSIGNED","URI","USE","UTC","UTCTIMESTAMP","VALUE_TYPE","VIEW","WHILE","YEAR","AUTOCOMMIT","ISOLATION","LEVEL","OFFSET","SNAPSHOT","TRANSACTION","WORK","WRITE","ABORT","KEY","LAST","NORELY","NOVALIDATE","NULLS","RELY","VALIDATE","DETAIL","DOW","EXPRESSION","OPERATOR","QUARTER","SUMMARY","VECTORIZATION","WEEK","YEARS","MONTHS","WEEKS","DAYS","HOURS","MINUTES","SECONDS","TIMESTAMPTZ","ZONE","ALL","ALTER","AND","AS","AUTHORIZATION","BETWEEN","BOTH","BY","CASE","CAST","COLUMN","CONF","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIMESTAMP","CURSOR","DATABASE","DELETE","DESCRIBE","DISTINCT","DROP","ELSE","END","EXCHANGE","EXISTS","EXTENDED","EXTERNAL","FALSE","FETCH","FOLLOWING","FOR","FROM","FULL","FUNCTION","GRANT","GROUP","GROUPING","HAVING","IF","IMPORT","IN","INNER","INSERT","INTERSECT","INTO","IS","JOIN","LATERAL","LEFT","LESS","LIKE","LOCAL","MACRO","MORE","NONE","NOT","NULL","OF","ON","OR","ORDER","OUT","OUTER","OVER","PARTIALSCAN","PARTITION","PERCENT","PRECEDING","PRESERVE","PROCEDURE","RANGE","READS","REDUCE","REVOKE","RIGHT","ROLLUP","ROW","ROWS","SELECT","SET","TABLE","TABLESAMPLE","THEN","TO","TRANSFORM","TRIGGER","TRUE","TRUNCATE","UNBOUNDED","UNION","UNIQUEJOIN","UPDATE","USER","USING","UTC_TMESTAMP","VALUES","WHEN","WHERE","WINDOW","WITH","COMMIT","ONLY","REGEXP","RLIKE","ROLLBACK","START","CACHE","CONSTRAINT","FOREIGN","PRIMARY","REFERENCES","DAYOFWEEK","EXTRACT","FLOOR","VIEWS","TIME","SYNC","TEXTFILE","SEQUENCEFILE","ORC","CSV","TSV","PARQUET","AVRO","RCFILE","JSONFILE","INPUTFORMAT","OUTPUTFORMAT"],CPa=["ARRAY","BIGINT","BINARY","BOOLEAN","CHAR","DATE","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","MAP","NUMERIC","PRECISION","SMALLINT","STRUCT","TIMESTAMP","VARCHAR"],mPa=Ja(["SELECT [ALL | DISTINCT]"]),hPa=Ja(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","SORT BY","CLUSTER BY","DISTRIBUTE BY","LIMIT","INSERT INTO [TABLE]","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","INSERT [VALUES]","INSERT OVERWRITE [LOCAL] DIRECTORY","LOAD DATA [LOCAL] INPATH","[OVERWRITE] INTO TABLE"]),bvi=Ja(["CREATE [TEMPORARY] [EXTERNAL] TABLE [IF NOT EXISTS]"]),Whr=Ja(["CREATE [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","RENAME TO","TRUNCATE [TABLE]","ALTER","CREATE","USE","DESCRIBE","DROP","FETCH","SHOW","STORED AS","STORED BY","ROW FORMAT"]),_Pa=Ja(["UNION [ALL | DISTINCT]"]),yPa=Ja(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","LEFT SEMI JOIN"]),bPa=Ja(["{ROWS | RANGE} BETWEEN"]),EPa={name:"hive",tokenizerOptions:{reservedSelect:mPa,reservedClauses:[...hPa,...bvi,...Whr],reservedSetOperations:_Pa,reservedJoins:yPa,reservedPhrases:bPa,reservedKeywords:IPa,reservedDataTypes:CPa,reservedFunctionNames:fPa,extraParens:["[]"],stringTypes:['""-bs',"''-bs"],identTypes:["``"],variableTypes:[{quote:"{}",prefixes:["$"],requirePrefix:!0}],operators:["%","~","^","|","&","<=>","==","!","||"]},formatOptions:{onelineClauses:[...bvi,...Whr],tabularOnelineClauses:Whr}};function ayt(e){return e.map((t,r)=>{let s=e[r+1]||vwe;if(yIe.SET(t)&&s.text==="(")return jF(qD({},t),{type:"RESERVED_FUNCTION_NAME"});let a=e[r-1]||vwe;return yIe.VALUES(t)&&a.text==="="?jF(qD({},t),{type:"RESERVED_FUNCTION_NAME"}):t})}var BPa=["ACCESSIBLE","ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DELETE_DOMAIN_ID","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DO_DOMAIN_IDS","DROP","DUAL","EACH","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FOR","FORCE","FOREIGN","FROM","FULLTEXT","GENERAL","GRANT","GROUP","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IGNORE_DOMAIN_IDS","IGNORE_SERVER_IDS","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","INTERSECT","INTERVAL","INTO","IS","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LOOP","LOW_PRIORITY","MASTER_HEARTBEAT_PERIOD","MASTER_SSL_VERIFY_SERVER_CERT","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NOT","NO_WRITE_TO_BINLOG","NULL","OFFSET","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PAGE_CHECKSUM","PARSE_VCOL_EXPR","PARTITION","POSITION","PRIMARY","PROCEDURE","PURGE","RANGE","READ","READS","READ_WRITE","RECURSIVE","REF_SYSTEM_ID","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESIGNAL","RESTRICT","RETURN","RETURNING","REVOKE","RIGHT","RLIKE","ROW_NUMBER","ROWS","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SLOW","SPATIAL","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STATS_AUTO_RECALC","STATS_PERSISTENT","STATS_SAMPLE_PAGES","STRAIGHT_JOIN","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNDO","UNION","UNIQUE","UNLOCK","UNSIGNED","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],vPa=["BIGINT","BINARY","BIT","BLOB","CHAR BYTE","CHAR","CHARACTER","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONG","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],SPa=["ADDDATE","ADD_MONTHS","BIT_AND","BIT_OR","BIT_XOR","CAST","COUNT","CUME_DIST","CURDATE","CURTIME","DATE_ADD","DATE_SUB","DATE_FORMAT","DECODE","DENSE_RANK","EXTRACT","FIRST_VALUE","GROUP_CONCAT","JSON_ARRAYAGG","JSON_OBJECTAGG","LAG","LEAD","MAX","MEDIAN","MID","MIN","NOW","NTH_VALUE","NTILE","POSITION","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","ROW_NUMBER","SESSION_USER","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","SUBDATE","SUBSTR","SUBSTRING","SUM","SYSTEM_USER","TRIM","TRIM_ORACLE","VARIANCE","VAR_POP","VAR_SAMP","ABS","ACOS","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ASIN","ATAN","ATAN2","BENCHMARK","BIN","BINLOG_GTID_POS","BIT_COUNT","BIT_LENGTH","CEIL","CEILING","CHARACTER_LENGTH","CHAR_LENGTH","CHR","COERCIBILITY","COLUMN_CHECK","COLUMN_EXISTS","COLUMN_LIST","COLUMN_JSON","COMPRESS","CONCAT","CONCAT_OPERATOR_ORACLE","CONCAT_WS","CONNECTION_ID","CONV","CONVERT_TZ","COS","COT","CRC32","DATEDIFF","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DEGREES","DECODE_HISTOGRAM","DECODE_ORACLE","DES_DECRYPT","DES_ENCRYPT","ELT","ENCODE","ENCRYPT","EXP","EXPORT_SET","EXTRACTVALUE","FIELD","FIND_IN_SET","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GET_LOCK","GREATEST","HEX","IFNULL","INSTR","ISNULL","IS_FREE_LOCK","IS_USED_LOCK","JSON_ARRAY","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_COMPACT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_DETAILED","JSON_EXISTS","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_LOOSE","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_QUERY","JSON_QUOTE","JSON_OBJECT","JSON_REMOVE","JSON_REPLACE","JSON_SET","JSON_SEARCH","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","JSON_VALUE","LAST_DAY","LAST_INSERT_ID","LCASE","LEAST","LENGTH","LENGTHB","LN","LOAD_FILE","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LPAD_ORACLE","LTRIM","LTRIM_ORACLE","MAKEDATE","MAKETIME","MAKE_SET","MASTER_GTID_WAIT","MASTER_POS_WAIT","MD5","MONTHNAME","NAME_CONST","NVL","NVL2","OCT","OCTET_LENGTH","ORD","PERIOD_ADD","PERIOD_DIFF","PI","POW","POWER","QUOTE","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","RADIANS","RAND","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPLACE_ORACLE","REVERSE","ROUND","RPAD","RPAD_ORACLE","RTRIM","RTRIM_ORACLE","SEC_TO_TIME","SHA","SHA1","SHA2","SIGN","SIN","SLEEP","SOUNDEX","SPACE","SQRT","STRCMP","STR_TO_DATE","SUBSTR_ORACLE","SUBSTRING_INDEX","SUBTIME","SYS_GUID","TAN","TIMEDIFF","TIME_FORMAT","TIME_TO_SEC","TO_BASE64","TO_CHAR","TO_DAYS","TO_SECONDS","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UUID","UUID_SHORT","VERSION","WEEKDAY","WEEKOFYEAR","WSREP_LAST_WRITTEN_GTID","WSREP_LAST_SEEN_GTID","WSREP_SYNC_WAIT_UPTO_GTID","YEARWEEK","COALESCE","NULLIF"],wPa=Ja(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),TPa=Ja(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET","RETURNING"]),Evi=Ja(["CREATE [OR REPLACE] [TEMPORARY] TABLE [IF NOT EXISTS]"]),Phr=Ja(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER [ONLINE] [IGNORE] TABLE [IF EXISTS]","ADD [COLUMN] [IF NOT EXISTS]","{CHANGE | MODIFY} [COLUMN] [IF EXISTS]","DROP [COLUMN] [IF EXISTS]","RENAME [TO]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","SET {VISIBLE | INVISIBLE}","TRUNCATE [TABLE]","ALTER DATABASE","ALTER DATABASE COMMENT","ALTER EVENT","ALTER FUNCTION","ALTER PROCEDURE","ALTER SCHEMA","ALTER SCHEMA COMMENT","ALTER SEQUENCE","ALTER SERVER","ALTER USER","ALTER VIEW","ANALYZE","ANALYZE TABLE","BACKUP LOCK","BACKUP STAGE","BACKUP UNLOCK","BEGIN","BINLOG","CACHE INDEX","CALL","CHANGE MASTER TO","CHECK TABLE","CHECK VIEW","CHECKSUM TABLE","COMMIT","CREATE AGGREGATE FUNCTION","CREATE DATABASE","CREATE EVENT","CREATE FUNCTION","CREATE INDEX","CREATE PROCEDURE","CREATE ROLE","CREATE SEQUENCE","CREATE SERVER","CREATE SPATIAL INDEX","CREATE TRIGGER","CREATE UNIQUE INDEX","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP EVENT","DROP FUNCTION","DROP INDEX","DROP PREPARE","DROP PROCEDURE","DROP ROLE","DROP SEQUENCE","DROP SERVER","DROP TRIGGER","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","GET DIAGNOSTICS","GET DIAGNOSTICS CONDITION","GRANT","HANDLER","HELP","INSTALL PLUGIN","INSTALL SONAME","KILL","LOAD DATA INFILE","LOAD INDEX INTO CACHE","LOAD XML INFILE","LOCK TABLE","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","PURGE MASTER LOGS","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","REPAIR VIEW","RESET MASTER","RESET QUERY CACHE","RESET REPLICA","RESET SLAVE","RESIGNAL","REVOKE","ROLLBACK","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET GLOBAL TRANSACTION","SET NAMES","SET PASSWORD","SET ROLE","SET STATEMENT","SET TRANSACTION","SHOW","SHOW ALL REPLICAS STATUS","SHOW ALL SLAVES STATUS","SHOW AUTHORS","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW BINLOG STATUS","SHOW CHARACTER SET","SHOW CLIENT_STATISTICS","SHOW COLLATION","SHOW COLUMNS","SHOW CONTRIBUTORS","SHOW CREATE DATABASE","SHOW CREATE EVENT","SHOW CREATE FUNCTION","SHOW CREATE PACKAGE","SHOW CREATE PACKAGE BODY","SHOW CREATE PROCEDURE","SHOW CREATE SEQUENCE","SHOW CREATE TABLE","SHOW CREATE TRIGGER","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINE INNODB STATUS","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW EXPLAIN","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW INDEXES","SHOW INDEX_STATISTICS","SHOW KEYS","SHOW LOCALES","SHOW MASTER LOGS","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PACKAGE BODY CODE","SHOW PACKAGE BODY STATUS","SHOW PACKAGE STATUS","SHOW PLUGINS","SHOW PLUGINS SONAME","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW QUERY_RESPONSE_TIME","SHOW RELAYLOG EVENTS","SHOW REPLICA","SHOW REPLICA HOSTS","SHOW REPLICA STATUS","SHOW SCHEMAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW SLAVE STATUS","SHOW STATUS","SHOW STORAGE ENGINES","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW USER_STATISTICS","SHOW VARIABLES","SHOW WARNINGS","SHOW WSREP_MEMBERSHIP","SHOW WSREP_STATUS","SHUTDOWN","SIGNAL","START ALL REPLICAS","START ALL SLAVES","START REPLICA","START SLAVE","START TRANSACTION","STOP ALL REPLICAS","STOP ALL SLAVES","STOP REPLICA","STOP SLAVE","UNINSTALL PLUGIN","UNINSTALL SONAME","UNLOCK TABLE","USE","XA BEGIN","XA COMMIT","XA END","XA PREPARE","XA RECOVER","XA ROLLBACK","XA START"]),NPa=Ja(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]","MINUS [ALL | DISTINCT]"]),RPa=Ja(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),DPa=Ja(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),xPa={name:"mariadb",tokenizerOptions:{reservedSelect:wPa,reservedClauses:[...TPa,...Evi,...Phr],reservedSetOperations:NPa,reservedJoins:RPa,reservedPhrases:DPa,supportsXor:!0,reservedKeywords:BPa,reservedDataTypes:vPa,reservedFunctionNames:SPa,stringTypes:['""-qq-bs',"''-qq-bs",{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","&&","||","!","*.*"],postProcess:ayt},formatOptions:{onelineClauses:[...Evi,...Phr],tabularOnelineClauses:Phr}},kPa=["ACCESSIBLE","ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CUBE","CUME_DIST","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DENSE_RANK","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DROP","DUAL","EACH","ELSE","ELSEIF","EMPTY","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FIRST_VALUE","FOR","FORCE","FOREIGN","FROM","FULLTEXT","FUNCTION","GENERATED","GET","GRANT","GROUP","GROUPING","GROUPS","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","IN","INTERSECT","INTERVAL","INTO","IO_AFTER_GTIDS","IO_BEFORE_GTIDS","IS","ITERATE","JOIN","JSON_TABLE","KEY","KEYS","KILL","LAG","LAST_VALUE","LATERAL","LEAD","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LONG","LOOP","LOW_PRIORITY","MASTER_BIND","MASTER_SSL_VERIFY_SERVER_CERT","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NOT","NO_WRITE_TO_BINLOG","NTH_VALUE","NTILE","NULL","OF","ON","OPTIMIZE","OPTIMIZER_COSTS","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PARTITION","PERCENT_RANK","PRIMARY","PROCEDURE","PURGE","RANGE","RANK","READ","READS","READ_WRITE","RECURSIVE","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESIGNAL","RESTRICT","RETURN","REVOKE","RIGHT","RLIKE","ROW","ROWS","ROW_NUMBER","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SPATIAL","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STORED","STRAIGHT_JOIN","SYSTEM","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNDO","UNION","UNIQUE","UNLOCK","UNSIGNED","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","VIRTUAL","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],GPa=["BIGINT","BINARY","BIT","BLOB","BOOL","BOOLEAN","CHAR","CHARACTER","DATE","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],FPa=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","ASCII","ASIN","ATAN","ATAN2","AVG","BENCHMARK","BIN","BIN_TO_UUID","BINARY","BIT_AND","BIT_COUNT","BIT_LENGTH","BIT_OR","BIT_XOR","CAN_ACCESS_COLUMN","CAN_ACCESS_DATABASE","CAN_ACCESS_TABLE","CAN_ACCESS_USER","CAN_ACCESS_VIEW","CAST","CEIL","CEILING","CHAR","CHAR_LENGTH","CHARACTER_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CRC32","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DEFAULT","DEGREES","DENSE_RANK","DIV","ELT","EXP","EXPORT_SET","EXTRACT","EXTRACTVALUE","FIELD","FIND_IN_SET","FIRST_VALUE","FLOOR","FORMAT","FORMAT_BYTES","FORMAT_PICO_TIME","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GEOMCOLLECTION","GEOMETRYCOLLECTION","GET_DD_COLUMN_PRIVILEGES","GET_DD_CREATE_OPTIONS","GET_DD_INDEX_SUB_PART_LENGTH","GET_FORMAT","GET_LOCK","GREATEST","GROUP_CONCAT","GROUPING","GTID_SUBSET","GTID_SUBTRACT","HEX","HOUR","ICU_VERSION","IF","IFNULL","INET_ATON","INET_NTOA","INET6_ATON","INET6_NTOA","INSERT","INSTR","INTERNAL_AUTO_INCREMENT","INTERNAL_AVG_ROW_LENGTH","INTERNAL_CHECK_TIME","INTERNAL_CHECKSUM","INTERNAL_DATA_FREE","INTERNAL_DATA_LENGTH","INTERNAL_DD_CHAR_LENGTH","INTERNAL_GET_COMMENT_OR_ERROR","INTERNAL_GET_ENABLED_ROLE_JSON","INTERNAL_GET_HOSTNAME","INTERNAL_GET_USERNAME","INTERNAL_GET_VIEW_WARNING_OR_ERROR","INTERNAL_INDEX_COLUMN_CARDINALITY","INTERNAL_INDEX_LENGTH","INTERNAL_IS_ENABLED_ROLE","INTERNAL_IS_MANDATORY_ROLE","INTERNAL_KEYS_DISABLED","INTERNAL_MAX_DATA_LENGTH","INTERNAL_TABLE_ROWS","INTERNAL_UPDATE_TIME","INTERVAL","IS","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS NOT","IS NOT NULL","IS NULL","IS_USED_LOCK","IS_UUID","ISNULL","JSON_ARRAY","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_ARRAYAGG","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_OBJECTAGG","JSON_OVERLAPS","JSON_PRETTY","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SCHEMA_VALID","JSON_SCHEMA_VALIDATION_REPORT","JSON_SEARCH","JSON_SET","JSON_STORAGE_FREE","JSON_STORAGE_SIZE","JSON_TABLE","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","JSON_VALUE","LAG","LAST_DAY","LAST_INSERT_ID","LAST_VALUE","LCASE","LEAD","LEAST","LEFT","LENGTH","LIKE","LINESTRING","LN","LOAD_FILE","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","MAKE_SET","MAKEDATE","MAKETIME","MASTER_POS_WAIT","MATCH","MAX","MBRCONTAINS","MBRCOVEREDBY","MBRCOVERS","MBRDISJOINT","MBREQUALS","MBRINTERSECTS","MBROVERLAPS","MBRTOUCHES","MBRWITHIN","MD5","MEMBER OF","MICROSECOND","MID","MIN","MINUTE","MOD","MONTH","MONTHNAME","MULTILINESTRING","MULTIPOINT","MULTIPOLYGON","NAME_CONST","NOT","NOT IN","NOT LIKE","NOT REGEXP","NOW","NTH_VALUE","NTILE","NULLIF","OCT","OCTET_LENGTH","ORD","PERCENT_RANK","PERIOD_ADD","PERIOD_DIFF","PI","POINT","POLYGON","POSITION","POW","POWER","PS_CURRENT_THREAD_ID","PS_THREAD_ID","QUARTER","QUOTE","RADIANS","RAND","RANDOM_BYTES","RANK","REGEXP","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPEAT","REPLACE","REVERSE","RIGHT","RLIKE","ROLES_GRAPHML","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCHEMA","SEC_TO_TIME","SECOND","SESSION_USER","SHA1","SHA2","SIGN","SIN","SLEEP","SOUNDEX","SOUNDS LIKE","SOURCE_POS_WAIT","SPACE","SQRT","ST_AREA","ST_ASBINARY","ST_ASGEOJSON","ST_ASTEXT","ST_BUFFER","ST_BUFFER_STRATEGY","ST_CENTROID","ST_COLLECT","ST_CONTAINS","ST_CONVEXHULL","ST_CROSSES","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DISTANCE_SPHERE","ST_ENDPOINT","ST_ENVELOPE","ST_EQUALS","ST_EXTERIORRING","ST_FRECHETDISTANCE","ST_GEOHASH","ST_GEOMCOLLFROMTEXT","ST_GEOMCOLLFROMWKB","ST_GEOMETRYN","ST_GEOMETRYTYPE","ST_GEOMFROMGEOJSON","ST_GEOMFROMTEXT","ST_GEOMFROMWKB","ST_HAUSDORFFDISTANCE","ST_INTERIORRINGN","ST_INTERSECTION","ST_INTERSECTS","ST_ISCLOSED","ST_ISEMPTY","ST_ISSIMPLE","ST_ISVALID","ST_LATFROMGEOHASH","ST_LATITUDE","ST_LENGTH","ST_LINEFROMTEXT","ST_LINEFROMWKB","ST_LINEINTERPOLATEPOINT","ST_LINEINTERPOLATEPOINTS","ST_LONGFROMGEOHASH","ST_LONGITUDE","ST_MAKEENVELOPE","ST_MLINEFROMTEXT","ST_MLINEFROMWKB","ST_MPOINTFROMTEXT","ST_MPOINTFROMWKB","ST_MPOLYFROMTEXT","ST_MPOLYFROMWKB","ST_NUMGEOMETRIES","ST_NUMINTERIORRING","ST_NUMPOINTS","ST_OVERLAPS","ST_POINTATDISTANCE","ST_POINTFROMGEOHASH","ST_POINTFROMTEXT","ST_POINTFROMWKB","ST_POINTN","ST_POLYFROMTEXT","ST_POLYFROMWKB","ST_SIMPLIFY","ST_SRID","ST_STARTPOINT","ST_SWAPXY","ST_SYMDIFFERENCE","ST_TOUCHES","ST_TRANSFORM","ST_UNION","ST_VALIDATE","ST_WITHIN","ST_X","ST_Y","STATEMENT_DIGEST","STATEMENT_DIGEST_TEXT","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","STRCMP","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUBTIME","SUM","SYSDATE","SYSTEM_USER","TAN","TIME","TIME_FORMAT","TIME_TO_SEC","TIMEDIFF","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TO_BASE64","TO_DAYS","TO_SECONDS","TRIM","TRUNCATE","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","UUID_SHORT","UUID_TO_BIN","VALIDATE_PASSWORD_STRENGTH","VALUES","VAR_POP","VAR_SAMP","VARIANCE","VERSION","WAIT_FOR_EXECUTED_GTID_SET","WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS","WEEK","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","YEAR","YEARWEEK"],ZPa=Ja(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),LPa=Ja(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET"]),Bvi=Ja(["CREATE [TEMPORARY] TABLE [IF NOT EXISTS]"]),Ohr=Ja(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","{CHANGE | MODIFY} [COLUMN]","DROP [COLUMN]","RENAME [TO | AS]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","TRUNCATE [TABLE]","ALTER DATABASE","ALTER EVENT","ALTER FUNCTION","ALTER INSTANCE","ALTER LOGFILE GROUP","ALTER PROCEDURE","ALTER RESOURCE GROUP","ALTER SERVER","ALTER TABLESPACE","ALTER USER","ALTER VIEW","ANALYZE TABLE","BINLOG","CACHE INDEX","CALL","CHANGE MASTER TO","CHANGE REPLICATION FILTER","CHANGE REPLICATION SOURCE TO","CHECK TABLE","CHECKSUM TABLE","CLONE","COMMIT","CREATE DATABASE","CREATE EVENT","CREATE FUNCTION","CREATE FUNCTION","CREATE INDEX","CREATE LOGFILE GROUP","CREATE PROCEDURE","CREATE RESOURCE GROUP","CREATE ROLE","CREATE SERVER","CREATE SPATIAL REFERENCE SYSTEM","CREATE TABLESPACE","CREATE TRIGGER","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP EVENT","DROP FUNCTION","DROP FUNCTION","DROP INDEX","DROP LOGFILE GROUP","DROP PROCEDURE","DROP RESOURCE GROUP","DROP ROLE","DROP SERVER","DROP SPATIAL REFERENCE SYSTEM","DROP TABLESPACE","DROP TRIGGER","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","GRANT","HANDLER","HELP","IMPORT TABLE","INSTALL COMPONENT","INSTALL PLUGIN","KILL","LOAD DATA","LOAD INDEX INTO CACHE","LOAD XML","LOCK INSTANCE FOR BACKUP","LOCK TABLES","MASTER_POS_WAIT","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","RESET","RESET MASTER","RESET PERSIST","RESET REPLICA","RESET SLAVE","RESTART","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE EVENT","SHOW CREATE FUNCTION","SHOW CREATE PROCEDURE","SHOW CREATE TABLE","SHOW CREATE TRIGGER","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW RELAYLOG EVENTS","SHOW REPLICA STATUS","SHOW REPLICAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW VARIABLES","SHOW WARNINGS","SHUTDOWN","SOURCE_POS_WAIT","START GROUP_REPLICATION","START REPLICA","START SLAVE","START TRANSACTION","STOP GROUP_REPLICATION","STOP REPLICA","STOP SLAVE","TABLE","UNINSTALL COMPONENT","UNINSTALL PLUGIN","UNLOCK INSTANCE","UNLOCK TABLES","USE","XA","ITERATE","LEAVE","LOOP","REPEAT","RETURN","WHILE"]),VPa=Ja(["UNION [ALL | DISTINCT]"]),WPa=Ja(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),PPa=Ja(["ON {UPDATE | DELETE} [SET NULL]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),OPa={name:"mysql",tokenizerOptions:{reservedSelect:ZPa,reservedClauses:[...LPa,...Bvi,...Ohr],reservedSetOperations:VPa,reservedJoins:WPa,reservedPhrases:PPa,supportsXor:!0,reservedKeywords:kPa,reservedDataTypes:GPa,reservedFunctionNames:FPa,stringTypes:['""-qq-bs',{quote:"''-qq-bs",prefixes:["N"]},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","->","->>","&&","||","!","*.*"],postProcess:ayt},formatOptions:{onelineClauses:[...Bvi,...Ohr],tabularOnelineClauses:Ohr}},MPa=["ADD","ALL","ALTER","ANALYZE","AND","ARRAY","AS","ASC","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DEFAULT","DELAYED","DELETE","DESC","DESCRIBE","DISTINCT","DISTINCTROW","DIV","DOUBLE","DROP","DUAL","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FOR","FORCE","FOREIGN","FROM","FULLTEXT","GENERATED","GRANT","GROUP","GROUPS","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","ILIKE","IN","INDEX","INFILE","INNER","INOUT","INSERT","INTERSECT","INTERVAL","INTO","IS","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LONG","LOW_PRIORITY","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","NATURAL","NOT","NO_WRITE_TO_BINLOG","NULL","OF","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PARTITION","PRIMARY","PROCEDURE","RANGE","READ","RECURSIVE","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESTRICT","REVOKE","RIGHT","RLIKE","ROW","ROWS","SECOND_MICROSECOND","SELECT","SET","SHOW","SPATIAL","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STATS_EXTENDED","STORED","STRAIGHT_JOIN","TABLE","TABLESAMPLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","TiDB_CURRENT_TSO","UNION","UNIQUE","UNLOCK","UNSIGNED","UNTIL","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","VIRTUAL","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],QPa=["BIGINT","BINARY","BIT","BLOB","BOOL","BOOLEAN","CHAR","CHARACTER","DATE","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],YPa=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","ASCII","ASIN","ATAN","ATAN2","AVG","BENCHMARK","BIN","BIN_TO_UUID","BIT_AND","BIT_COUNT","BIT_LENGTH","BIT_OR","BIT_XOR","BITAND","BITNEG","BITOR","BITXOR","CASE","CAST","CEIL","CEILING","CHAR_FUNC","CHAR_LENGTH","CHARACTER_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CRC32","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_RESOURCE_GROUP","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEFAULT_FUNC","DEGREES","DENSE_RANK","DES_DECRYPT","DES_ENCRYPT","DIV","ELT","ENCODE","ENCRYPT","EQ","EXP","EXPORT_SET","EXTRACT","FIELD","FIND_IN_SET","FIRST_VALUE","FLOOR","FORMAT","FORMAT_BYTES","FORMAT_NANO_TIME","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GE","GET_FORMAT","GET_LOCK","GETPARAM","GREATEST","GROUP_CONCAT","GROUPING","GT","HEX","HOUR","IF","IFNULL","ILIKE","INET6_ATON","INET6_NTOA","INET_ATON","INET_NTOA","INSERT_FUNC","INSTR","INTDIV","INTERVAL","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS_USED_LOCK","IS_UUID","ISFALSE","ISNULL","ISTRUE","JSON_ARRAY","JSON_ARRAYAGG","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MEMBEROF","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_OBJECTAGG","JSON_OVERLAPS","JSON_PRETTY","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SEARCH","JSON_SET","JSON_STORAGE_FREE","JSON_STORAGE_SIZE","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","LAG","LAST_DAY","LAST_INSERT_ID","LAST_VALUE","LASTVAL","LCASE","LE","LEAD","LEAST","LEFT","LEFTSHIFT","LENGTH","LIKE","LN","LOAD_FILE","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LT","LTRIM","MAKE_SET","MAKEDATE","MAKETIME","MASTER_POS_WAIT","MAX","MD5","MICROSECOND","MID","MIN","MINUS","MINUTE","MOD","MONTH","MONTHNAME","MUL","NAME_CONST","NE","NEXTVAL","NOT","NOW","NTH_VALUE","NTILE","NULLEQ","OCT","OCTET_LENGTH","OLD_PASSWORD","ORD","PASSWORD_FUNC","PERCENT_RANK","PERIOD_ADD","PERIOD_DIFF","PI","PLUS","POSITION","POW","POWER","QUARTER","QUOTE","RADIANS","RAND","RANDOM_BYTES","RANK","REGEXP","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPEAT","REPLACE","REVERSE","RIGHT","RIGHTSHIFT","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCHEMA","SEC_TO_TIME","SECOND","SESSION_USER","SETVAL","SETVAR","SHA","SHA1","SHA2","SIGN","SIN","SLEEP","SM3","SPACE","SQRT","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","STRCMP","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUBTIME","SUM","SYSDATE","SYSTEM_USER","TAN","TIDB_BOUNDED_STALENESS","TIDB_CURRENT_TSO","TIDB_DECODE_BINARY_PLAN","TIDB_DECODE_KEY","TIDB_DECODE_PLAN","TIDB_DECODE_SQL_DIGESTS","TIDB_ENCODE_SQL_DIGEST","TIDB_IS_DDL_OWNER","TIDB_PARSE_TSO","TIDB_PARSE_TSO_LOGICAL","TIDB_ROW_CHECKSUM","TIDB_SHARD","TIDB_VERSION","TIME","TIME_FORMAT","TIME_TO_SEC","TIMEDIFF","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TO_BASE64","TO_DAYS","TO_SECONDS","TRANSLATE","TRIM","TRUNCATE","UCASE","UNARYMINUS","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","UUID_SHORT","UUID_TO_BIN","VALIDATE_PASSWORD_STRENGTH","VAR_POP","VAR_SAMP","VARIANCE","VERSION","VITESS_HASH","WEEK","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","YEAR","YEARWEEK"],HPa=Ja(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),XPa=Ja(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET"]),vvi=Ja(["CREATE [TEMPORARY] TABLE [IF NOT EXISTS]"]),Mhr=Ja(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","{CHANGE | MODIFY} [COLUMN]","DROP [COLUMN]","RENAME [TO | AS]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","TRUNCATE [TABLE]","ALTER DATABASE","ALTER INSTANCE","ALTER RESOURCE GROUP","ALTER SEQUENCE","ALTER USER","ALTER VIEW","ANALYZE TABLE","CHECK TABLE","CHECKSUM TABLE","COMMIT","CREATE DATABASE","CREATE INDEX","CREATE RESOURCE GROUP","CREATE ROLE","CREATE SEQUENCE","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP INDEX","DROP RESOURCE GROUP","DROP ROLE","DROP TABLESPACE","DROP USER","DROP VIEW","EXPLAIN","FLUSH","GRANT","IMPORT TABLE","INSTALL COMPONENT","INSTALL PLUGIN","KILL","LOAD DATA","LOCK INSTANCE FOR BACKUP","LOCK TABLES","OPTIMIZE TABLE","PREPARE","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","RESET","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE TABLE","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW VARIABLES","SHOW WARNINGS","TABLE","UNINSTALL COMPONENT","UNINSTALL PLUGIN","UNLOCK INSTANCE","UNLOCK TABLES","USE"]),JPa=Ja(["UNION [ALL | DISTINCT]"]),UPa=Ja(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),KPa=Ja(["ON {UPDATE | DELETE} [SET NULL]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),jPa={name:"tidb",tokenizerOptions:{reservedSelect:HPa,reservedClauses:[...XPa,...vvi,...Mhr],reservedSetOperations:JPa,reservedJoins:UPa,reservedPhrases:KPa,supportsXor:!0,reservedKeywords:MPa,reservedDataTypes:QPa,reservedFunctionNames:YPa,stringTypes:['""-qq-bs',{quote:"''-qq-bs",prefixes:["N"]},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","->","->>","&&","||","!","*.*"],postProcess:ayt},formatOptions:{onelineClauses:[...vvi,...Mhr],tabularOnelineClauses:Mhr}},zPa=["ABORT","ABS","ACOS","ADVISOR","ARRAY_AGG","ARRAY_AGG","ARRAY_APPEND","ARRAY_AVG","ARRAY_BINARY_SEARCH","ARRAY_CONCAT","ARRAY_CONTAINS","ARRAY_COUNT","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_FLATTEN","ARRAY_IFNULL","ARRAY_INSERT","ARRAY_INTERSECT","ARRAY_LENGTH","ARRAY_MAX","ARRAY_MIN","ARRAY_MOVE","ARRAY_POSITION","ARRAY_PREPEND","ARRAY_PUT","ARRAY_RANGE","ARRAY_REMOVE","ARRAY_REPEAT","ARRAY_REPLACE","ARRAY_REVERSE","ARRAY_SORT","ARRAY_STAR","ARRAY_SUM","ARRAY_SYMDIFF","ARRAY_SYMDIFF1","ARRAY_SYMDIFFN","ARRAY_UNION","ASIN","ATAN","ATAN2","AVG","BASE64","BASE64_DECODE","BASE64_ENCODE","BITAND ","BITCLEAR ","BITNOT ","BITOR ","BITSET ","BITSHIFT ","BITTEST ","BITXOR ","CEIL","CLOCK_LOCAL","CLOCK_MILLIS","CLOCK_STR","CLOCK_TZ","CLOCK_UTC","COALESCE","CONCAT","CONCAT2","CONTAINS","CONTAINS_TOKEN","CONTAINS_TOKEN_LIKE","CONTAINS_TOKEN_REGEXP","COS","COUNT","COUNT","COUNTN","CUME_DIST","CURL","DATE_ADD_MILLIS","DATE_ADD_STR","DATE_DIFF_MILLIS","DATE_DIFF_STR","DATE_FORMAT_STR","DATE_PART_MILLIS","DATE_PART_STR","DATE_RANGE_MILLIS","DATE_RANGE_STR","DATE_TRUNC_MILLIS","DATE_TRUNC_STR","DECODE","DECODE_JSON","DEGREES","DENSE_RANK","DURATION_TO_STR","ENCODED_SIZE","ENCODE_JSON","EXP","FIRST_VALUE","FLOOR","GREATEST","HAS_TOKEN","IFINF","IFMISSING","IFMISSINGORNULL","IFNAN","IFNANORINF","IFNULL","INITCAP","ISARRAY","ISATOM","ISBITSET","ISBOOLEAN","ISNUMBER","ISOBJECT","ISSTRING","LAG","LAST_VALUE","LEAD","LEAST","LENGTH","LN","LOG","LOWER","LTRIM","MAX","MEAN","MEDIAN","META","MILLIS","MILLIS_TO_LOCAL","MILLIS_TO_STR","MILLIS_TO_TZ","MILLIS_TO_UTC","MILLIS_TO_ZONE_NAME","MIN","MISSINGIF","NANIF","NEGINFIF","NOW_LOCAL","NOW_MILLIS","NOW_STR","NOW_TZ","NOW_UTC","NTH_VALUE","NTILE","NULLIF","NVL","NVL2","OBJECT_ADD","OBJECT_CONCAT","OBJECT_INNER_PAIRS","OBJECT_INNER_VALUES","OBJECT_LENGTH","OBJECT_NAMES","OBJECT_PAIRS","OBJECT_PUT","OBJECT_REMOVE","OBJECT_RENAME","OBJECT_REPLACE","OBJECT_UNWRAP","OBJECT_VALUES","PAIRS","PERCENT_RANK","PI","POLY_LENGTH","POSINFIF","POSITION","POWER","RADIANS","RANDOM","RANK","RATIO_TO_REPORT","REGEXP_CONTAINS","REGEXP_LIKE","REGEXP_MATCHES","REGEXP_POSITION","REGEXP_REPLACE","REGEXP_SPLIT","REGEX_CONTAINS","REGEX_LIKE","REGEX_MATCHES","REGEX_POSITION","REGEX_REPLACE","REGEX_SPLIT","REPEAT","REPLACE","REVERSE","ROUND","ROW_NUMBER","RTRIM","SEARCH","SEARCH_META","SEARCH_SCORE","SIGN","SIN","SPLIT","SQRT","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DURATION","STR_TO_MILLIS","STR_TO_TZ","STR_TO_UTC","STR_TO_ZONE_NAME","SUBSTR","SUFFIXES","SUM","TAN","TITLE","TOARRAY","TOATOM","TOBOOLEAN","TOKENS","TOKENS","TONUMBER","TOOBJECT","TOSTRING","TRIM","TRUNC","UPPER","UUID","VARIANCE","VARIANCE_POP","VARIANCE_SAMP","VAR_POP","VAR_SAMP","WEEKDAY_MILLIS","WEEKDAY_STR","CAST"],qPa=["ADVISE","ALL","ALTER","ANALYZE","AND","ANY","ARRAY","AS","ASC","AT","BEGIN","BETWEEN","BINARY","BOOLEAN","BREAK","BUCKET","BUILD","BY","CALL","CASE","CAST","CLUSTER","COLLATE","COLLECTION","COMMIT","COMMITTED","CONNECT","CONTINUE","CORRELATED","COVER","CREATE","CURRENT","DATABASE","DATASET","DATASTORE","DECLARE","DECREMENT","DELETE","DERIVED","DESC","DESCRIBE","DISTINCT","DO","DROP","EACH","ELEMENT","ELSE","END","EVERY","EXCEPT","EXCLUDE","EXECUTE","EXISTS","EXPLAIN","FALSE","FETCH","FILTER","FIRST","FLATTEN","FLUSH","FOLLOWING","FOR","FORCE","FROM","FTS","FUNCTION","GOLANG","GRANT","GROUP","GROUPS","GSI","HASH","HAVING","IF","IGNORE","ILIKE","IN","INCLUDE","INCREMENT","INDEX","INFER","INLINE","INNER","INSERT","INTERSECT","INTO","IS","ISOLATION","JAVASCRIPT","JOIN","KEY","KEYS","KEYSPACE","KNOWN","LANGUAGE","LAST","LEFT","LET","LETTING","LEVEL","LIKE","LIMIT","LSM","MAP","MAPPING","MATCHED","MATERIALIZED","MERGE","MINUS","MISSING","NAMESPACE","NEST","NL","NO","NOT","NTH_VALUE","NULL","NULLS","NUMBER","OBJECT","OFFSET","ON","OPTION","OPTIONS","OR","ORDER","OTHERS","OUTER","OVER","PARSE","PARTITION","PASSWORD","PATH","POOL","PRECEDING","PREPARE","PRIMARY","PRIVATE","PRIVILEGE","PROBE","PROCEDURE","PUBLIC","RANGE","RAW","REALM","REDUCE","RENAME","RESPECT","RETURN","RETURNING","REVOKE","RIGHT","ROLE","ROLLBACK","ROW","ROWS","SATISFIES","SAVEPOINT","SCHEMA","SCOPE","SELECT","SELF","SEMI","SET","SHOW","SOME","START","STATISTICS","STRING","SYSTEM","THEN","TIES","TO","TRAN","TRANSACTION","TRIGGER","TRUE","TRUNCATE","UNBOUNDED","UNDER","UNION","UNIQUE","UNKNOWN","UNNEST","UNSET","UPDATE","UPSERT","USE","USER","USING","VALIDATE","VALUE","VALUED","VALUES","VIA","VIEW","WHEN","WHERE","WHILE","WINDOW","WITH","WITHIN","WORK","XOR"],$Pa=[],eOa=Ja(["SELECT [ALL | DISTINCT]"]),tOa=Ja(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED THEN","UPDATE SET","INSERT","NEST","UNNEST","RETURNING"]),Svi=Ja(["UPDATE","DELETE FROM","SET SCHEMA","ADVISE","ALTER INDEX","BEGIN TRANSACTION","BUILD INDEX","COMMIT TRANSACTION","CREATE COLLECTION","CREATE FUNCTION","CREATE INDEX","CREATE PRIMARY INDEX","CREATE SCOPE","DROP COLLECTION","DROP FUNCTION","DROP INDEX","DROP PRIMARY INDEX","DROP SCOPE","EXECUTE","EXECUTE FUNCTION","EXPLAIN","GRANT","INFER","PREPARE","REVOKE","ROLLBACK TRANSACTION","SAVEPOINT","SET TRANSACTION","UPDATE STATISTICS","UPSERT","LET","SET CURRENT SCHEMA","SHOW","USE [PRIMARY] KEYS"]),rOa=Ja(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),nOa=Ja(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","INNER JOIN"]),iOa=Ja(["{ROWS | RANGE | GROUPS} BETWEEN"]),sOa={name:"n1ql",tokenizerOptions:{reservedSelect:eOa,reservedClauses:[...tOa,...Svi],reservedSetOperations:rOa,reservedJoins:nOa,reservedPhrases:iOa,supportsXor:!0,reservedKeywords:qPa,reservedDataTypes:$Pa,reservedFunctionNames:zPa,stringTypes:['""-bs',"''-bs"],identTypes:["``"],extraParens:["[]","{}"],paramTypes:{positional:!0,numbered:["$"],named:["$"]},lineCommentTypes:["#","--"],operators:["%","==",":","||"]},formatOptions:{onelineClauses:Svi}},oOa=["ADD","AGENT","AGGREGATE","ALL","ALTER","AND","ANY","ARROW","AS","ASC","AT","ATTRIBUTE","AUTHID","AVG","BEGIN","BETWEEN","BLOCK","BODY","BOTH","BOUND","BULK","BY","BYTE","CALL","CALLING","CASCADE","CASE","CHARSET","CHARSETFORM","CHARSETID","CHECK","CLOSE","CLUSTER","CLUSTERS","COLAUTH","COLLECT","COLUMNS","COMMENT","COMMIT","COMMITTED","COMPILED","COMPRESS","CONNECT","CONSTANT","CONSTRUCTOR","CONTEXT","CONVERT","COUNT","CRASH","CREATE","CURRENT","CURSOR","CUSTOMDATUM","DANGLING","DATA","DAY","DECLARE","DEFAULT","DEFINE","DELETE","DESC","DETERMINISTIC","DISTINCT","DROP","DURATION","ELEMENT","ELSE","ELSIF","EMPTY","END","ESCAPE","EXCEPT","EXCEPTION","EXCEPTIONS","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXTERNAL","FETCH","FINAL","FIXED","FOR","FORALL","FORCE","FORM","FROM","FUNCTION","GENERAL","GOTO","GRANT","GROUP","HASH","HAVING","HEAP","HIDDEN","HOUR","IDENTIFIED","IF","IMMEDIATE","IN","INCLUDING","INDEX","INDEXES","INDICATOR","INDICES","INFINITE","INSERT","INSTANTIABLE","INTERFACE","INTERSECT","INTERVAL","INTO","INVALIDATE","IS","ISOLATION","JAVA","LANGUAGE","LARGE","LEADING","LENGTH","LEVEL","LIBRARY","LIKE","LIKE2","LIKE4","LIKEC","LIMIT","LIMITED","LOCAL","LOCK","LOOP","MAP","MAX","MAXLEN","MEMBER","MERGE","MIN","MINUS","MINUTE","MOD","MODE","MODIFY","MONTH","MULTISET","NAME","NAN","NATIONAL","NATIVE","NEW","NOCOMPRESS","NOCOPY","NOT","NOWAIT","NULL","OBJECT","OCICOLL","OCIDATE","OCIDATETIME","OCIDURATION","OCIINTERVAL","OCILOBLOCATOR","OCINUMBER","OCIRAW","OCIREF","OCIREFCURSOR","OCIROWID","OCISTRING","OCITYPE","OF","ON","ONLY","OPAQUE","OPEN","OPERATOR","OPTION","OR","ORACLE","ORADATA","ORDER","OVERLAPS","ORGANIZATION","ORLANY","ORLVARY","OTHERS","OUT","OVERRIDING","PACKAGE","PARALLEL_ENABLE","PARAMETER","PARAMETERS","PARTITION","PASCAL","PIPE","PIPELINED","PRAGMA","PRIOR","PRIVATE","PROCEDURE","PUBLIC","RAISE","RANGE","READ","RECORD","REF","REFERENCE","REM","REMAINDER","RENAME","RESOURCE","RESULT","RETURN","RETURNING","REVERSE","REVOKE","ROLLBACK","ROW","SAMPLE","SAVE","SAVEPOINT","SB1","SB2","SB4","SECOND","SEGMENT","SELECT","SELF","SEPARATE","SEQUENCE","SERIALIZABLE","SET","SHARE","SHORT","SIZE","SIZE_T","SOME","SPARSE","SQL","SQLCODE","SQLDATA","SQLNAME","SQLSTATE","STANDARD","START","STATIC","STDDEV","STORED","STRING","STRUCT","STYLE","SUBMULTISET","SUBPARTITION","SUBSTITUTABLE","SUBTYPE","SUM","SYNONYM","TABAUTH","TABLE","TDO","THE","THEN","TIME","TIMEZONE_ABBR","TIMEZONE_HOUR","TIMEZONE_MINUTE","TIMEZONE_REGION","TO","TRAILING","TRANSAC","TRANSACTIONAL","TRUSTED","TYPE","UB1","UB2","UB4","UNDER","UNION","UNIQUE","UNSIGNED","UNTRUSTED","UPDATE","USE","USING","VALIST","VALUE","VALUES","VARIABLE","VARIANCE","VARRAY","VIEW","VIEWS","VOID","WHEN","WHERE","WHILE","WITH","WORK","WRAPPED","WRITE","YEAR","ZONE"],aOa=["ARRAY","BFILE_BASE","BINARY","BLOB_BASE","CHAR VARYING","CHAR_BASE","CHAR","CHARACTER VARYING","CHARACTER","CLOB_BASE","DATE_BASE","DATE","DECIMAL","DOUBLE","FLOAT","INT","INTERVAL DAY","INTERVAL YEAR","LONG","NATIONAL CHAR VARYING","NATIONAL CHAR","NATIONAL CHARACTER VARYING","NATIONAL CHARACTER","NCHAR VARYING","NCHAR","NCHAR","NUMBER_BASE","NUMBER","NUMBERIC","NVARCHAR","PRECISION","RAW","TIMESTAMP","UROWID","VARCHAR","VARCHAR2"],cOa=["ABS","ACOS","ASIN","ATAN","ATAN2","BITAND","CEIL","COS","COSH","EXP","FLOOR","LN","LOG","MOD","NANVL","POWER","REMAINDER","ROUND","SIGN","SIN","SINH","SQRT","TAN","TANH","TRUNC","WIDTH_BUCKET","CHR","CONCAT","INITCAP","LOWER","LPAD","LTRIM","NLS_INITCAP","NLS_LOWER","NLSSORT","NLS_UPPER","REGEXP_REPLACE","REGEXP_SUBSTR","REPLACE","RPAD","RTRIM","SOUNDEX","SUBSTR","TRANSLATE","TREAT","TRIM","UPPER","NLS_CHARSET_DECL_LEN","NLS_CHARSET_ID","NLS_CHARSET_NAME","ASCII","INSTR","LENGTH","REGEXP_INSTR","ADD_MONTHS","CURRENT_DATE","CURRENT_TIMESTAMP","DBTIMEZONE","EXTRACT","FROM_TZ","LAST_DAY","LOCALTIMESTAMP","MONTHS_BETWEEN","NEW_TIME","NEXT_DAY","NUMTODSINTERVAL","NUMTOYMINTERVAL","ROUND","SESSIONTIMEZONE","SYS_EXTRACT_UTC","SYSDATE","SYSTIMESTAMP","TO_CHAR","TO_TIMESTAMP","TO_TIMESTAMP_TZ","TO_DSINTERVAL","TO_YMINTERVAL","TRUNC","TZ_OFFSET","GREATEST","LEAST","ASCIISTR","BIN_TO_NUM","CAST","CHARTOROWID","COMPOSE","CONVERT","DECOMPOSE","HEXTORAW","NUMTODSINTERVAL","NUMTOYMINTERVAL","RAWTOHEX","RAWTONHEX","ROWIDTOCHAR","ROWIDTONCHAR","SCN_TO_TIMESTAMP","TIMESTAMP_TO_SCN","TO_BINARY_DOUBLE","TO_BINARY_FLOAT","TO_CHAR","TO_CLOB","TO_DATE","TO_DSINTERVAL","TO_LOB","TO_MULTI_BYTE","TO_NCHAR","TO_NCLOB","TO_NUMBER","TO_DSINTERVAL","TO_SINGLE_BYTE","TO_TIMESTAMP","TO_TIMESTAMP_TZ","TO_YMINTERVAL","TO_YMINTERVAL","TRANSLATE","UNISTR","BFILENAME","EMPTY_BLOB,","EMPTY_CLOB","CARDINALITY","COLLECT","POWERMULTISET","POWERMULTISET_BY_CARDINALITY","SET","SYS_CONNECT_BY_PATH","CLUSTER_ID","CLUSTER_PROBABILITY","CLUSTER_SET","FEATURE_ID","FEATURE_SET","FEATURE_VALUE","PREDICTION","PREDICTION_COST","PREDICTION_DETAILS","PREDICTION_PROBABILITY","PREDICTION_SET","APPENDCHILDXML","DELETEXML","DEPTH","EXTRACT","EXISTSNODE","EXTRACTVALUE","INSERTCHILDXML","INSERTXMLBEFORE","PATH","SYS_DBURIGEN","SYS_XMLAGG","SYS_XMLGEN","UPDATEXML","XMLAGG","XMLCDATA","XMLCOLATTVAL","XMLCOMMENT","XMLCONCAT","XMLFOREST","XMLPARSE","XMLPI","XMLQUERY","XMLROOT","XMLSEQUENCE","XMLSERIALIZE","XMLTABLE","XMLTRANSFORM","DECODE","DUMP","ORA_HASH","VSIZE","COALESCE","LNNVL","NULLIF","NVL","NVL2","SYS_CONTEXT","SYS_GUID","SYS_TYPEID","UID","USER","USERENV","AVG","COLLECT","CORR","CORR_S","CORR_K","COUNT","COVAR_POP","COVAR_SAMP","CUME_DIST","DENSE_RANK","FIRST","GROUP_ID","GROUPING","GROUPING_ID","LAST","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","RANK","REGR_SLOPE","REGR_INTERCEPT","REGR_COUNT","REGR_R2","REGR_AVGX","REGR_AVGY","REGR_SXX","REGR_SYY","REGR_SXY","STATS_BINOMIAL_TEST","STATS_CROSSTAB","STATS_F_TEST","STATS_KS_TEST","STATS_MODE","STATS_MW_TEST","STATS_ONE_WAY_ANOVA","STATS_T_TEST_ONE","STATS_T_TEST_PAIRED","STATS_T_TEST_INDEP","STATS_T_TEST_INDEPU","STATS_WSR_TEST","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTILE","RATIO_TO_REPORT","ROW_NUMBER","DEREF","MAKE_REF","REF","REFTOHEX","VALUE","CV","ITERATION_NUMBER","PRESENTNNV","PRESENTV","PREVIOUS"],lOa=Ja(["SELECT [ALL | DISTINCT | UNIQUE]"]),uOa=Ja(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER [SIBLINGS] BY","OFFSET","FETCH {FIRST | NEXT}","FOR UPDATE [OF]","INSERT [INTO | ALL INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [THEN]","UPDATE SET","RETURNING"]),wvi=Ja(["CREATE [GLOBAL TEMPORARY | PRIVATE TEMPORARY | SHARDED | DUPLICATED | IMMUTABLE BLOCKCHAIN | BLOCKCHAIN | IMMUTABLE] TABLE"]),Qhr=Ja(["CREATE [OR REPLACE] [NO FORCE | FORCE] [EDITIONING | EDITIONABLE | EDITIONABLE EDITIONING | NONEDITIONABLE] VIEW","CREATE MATERIALIZED VIEW","UPDATE [ONLY]","DELETE FROM [ONLY]","DROP TABLE","ALTER TABLE","ADD","DROP {COLUMN | UNUSED COLUMNS | COLUMNS CONTINUE}","MODIFY","RENAME TO","RENAME COLUMN","TRUNCATE TABLE","SET SCHEMA","BEGIN","CONNECT BY","DECLARE","EXCEPT","EXCEPTION","LOOP","START WITH"]),gOa=Ja(["UNION [ALL]","EXCEPT","INTERSECT"]),AOa=Ja(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN","{CROSS | OUTER} APPLY"]),dOa=Ja(["ON {UPDATE | DELETE} [SET NULL]","ON COMMIT","{ROWS | RANGE} BETWEEN"]),pOa={name:"plsql",tokenizerOptions:{reservedSelect:lOa,reservedClauses:[...uOa,...wvi,...Qhr],reservedSetOperations:gOa,reservedJoins:AOa,reservedPhrases:dOa,supportsXor:!0,reservedKeywords:oOa,reservedDataTypes:aOa,reservedFunctionNames:cOa,stringTypes:[{quote:"''-qq",prefixes:["N"]},{quote:"q''",prefixes:["N"]}],identTypes:['""-qq'],identChars:{rest:"$#"},variableTypes:[{regex:"&{1,2}[A-Za-z][A-Za-z0-9_$#]*"}],paramTypes:{numbered:[":"],named:[":"]},paramChars:{},operators:["**",":=","%","~=","^=",">>","<<","=>","@","||"],postProcess:fOa},formatOptions:{alwaysDenseOperators:["@"],onelineClauses:[...wvi,...Qhr],tabularOnelineClauses:Qhr}};function fOa(e){let t=vwe;return e.map(r=>yIe.SET(r)&&yIe.BY(t)?jF(qD({},r),{type:"RESERVED_KEYWORD"}):($vi(r.type)&&(t=r),r))}var IOa=["ABS","ACOS","ACOSD","ACOSH","ASIN","ASIND","ASINH","ATAN","ATAN2","ATAN2D","ATAND","ATANH","CBRT","CEIL","CEILING","COS","COSD","COSH","COT","COTD","DEGREES","DIV","EXP","FACTORIAL","FLOOR","GCD","LCM","LN","LOG","LOG10","MIN_SCALE","MOD","PI","POWER","RADIANS","RANDOM","ROUND","SCALE","SETSEED","SIGN","SIN","SIND","SINH","SQRT","TAN","TAND","TANH","TRIM_SCALE","TRUNC","WIDTH_BUCKET","ABS","ASCII","BIT_LENGTH","BTRIM","CHARACTER_LENGTH","CHAR_LENGTH","CHR","CONCAT","CONCAT_WS","FORMAT","INITCAP","LEFT","LENGTH","LOWER","LPAD","LTRIM","MD5","NORMALIZE","OCTET_LENGTH","OVERLAY","PARSE_IDENT","PG_CLIENT_ENCODING","POSITION","QUOTE_IDENT","QUOTE_LITERAL","QUOTE_NULLABLE","REGEXP_MATCH","REGEXP_MATCHES","REGEXP_REPLACE","REGEXP_SPLIT_TO_ARRAY","REGEXP_SPLIT_TO_TABLE","REPEAT","REPLACE","REVERSE","RIGHT","RPAD","RTRIM","SPLIT_PART","SPRINTF","STARTS_WITH","STRING_AGG","STRING_TO_ARRAY","STRING_TO_TABLE","STRPOS","SUBSTR","SUBSTRING","TO_ASCII","TO_HEX","TRANSLATE","TRIM","UNISTR","UPPER","BIT_COUNT","BIT_LENGTH","BTRIM","CONVERT","CONVERT_FROM","CONVERT_TO","DECODE","ENCODE","GET_BIT","GET_BYTE","LENGTH","LTRIM","MD5","OCTET_LENGTH","OVERLAY","POSITION","RTRIM","SET_BIT","SET_BYTE","SHA224","SHA256","SHA384","SHA512","STRING_AGG","SUBSTR","SUBSTRING","TRIM","BIT_COUNT","BIT_LENGTH","GET_BIT","LENGTH","OCTET_LENGTH","OVERLAY","POSITION","SET_BIT","SUBSTRING","REGEXP_MATCH","REGEXP_MATCHES","REGEXP_REPLACE","REGEXP_SPLIT_TO_ARRAY","REGEXP_SPLIT_TO_TABLE","TO_CHAR","TO_DATE","TO_NUMBER","TO_TIMESTAMP","CLOCK_TIMESTAMP","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE_BIN","DATE_PART","DATE_TRUNC","EXTRACT","ISFINITE","JUSTIFY_DAYS","JUSTIFY_HOURS","JUSTIFY_INTERVAL","LOCALTIME","LOCALTIMESTAMP","MAKE_DATE","MAKE_INTERVAL","MAKE_TIME","MAKE_TIMESTAMP","MAKE_TIMESTAMPTZ","NOW","PG_SLEEP","PG_SLEEP_FOR","PG_SLEEP_UNTIL","STATEMENT_TIMESTAMP","TIMEOFDAY","TO_TIMESTAMP","TRANSACTION_TIMESTAMP","ENUM_FIRST","ENUM_LAST","ENUM_RANGE","AREA","BOUND_BOX","BOX","CENTER","CIRCLE","DIAGONAL","DIAMETER","HEIGHT","ISCLOSED","ISOPEN","LENGTH","LINE","LSEG","NPOINTS","PATH","PCLOSE","POINT","POLYGON","POPEN","RADIUS","SLOPE","WIDTH","ABBREV","BROADCAST","FAMILY","HOST","HOSTMASK","INET_MERGE","INET_SAME_FAMILY","MACADDR8_SET7BIT","MASKLEN","NETMASK","NETWORK","SET_MASKLEN","TRUNC","ARRAY_TO_TSVECTOR","GET_CURRENT_TS_CONFIG","JSONB_TO_TSVECTOR","JSON_TO_TSVECTOR","LENGTH","NUMNODE","PHRASETO_TSQUERY","PLAINTO_TSQUERY","QUERYTREE","SETWEIGHT","STRIP","TO_TSQUERY","TO_TSVECTOR","TSQUERY_PHRASE","TSVECTOR_TO_ARRAY","TS_DEBUG","TS_DELETE","TS_FILTER","TS_HEADLINE","TS_LEXIZE","TS_PARSE","TS_RANK","TS_RANK_CD","TS_REWRITE","TS_STAT","TS_TOKEN_TYPE","WEBSEARCH_TO_TSQUERY","UUID","CURSOR_TO_XML","CURSOR_TO_XMLSCHEMA","DATABASE_TO_XML","DATABASE_TO_XMLSCHEMA","DATABASE_TO_XML_AND_XMLSCHEMA","NEXTVAL","QUERY_TO_XML","QUERY_TO_XMLSCHEMA","QUERY_TO_XML_AND_XMLSCHEMA","SCHEMA_TO_XML","SCHEMA_TO_XMLSCHEMA","SCHEMA_TO_XML_AND_XMLSCHEMA","STRING","TABLE_TO_XML","TABLE_TO_XMLSCHEMA","TABLE_TO_XML_AND_XMLSCHEMA","XMLAGG","XMLCOMMENT","XMLCONCAT","XMLELEMENT","XMLEXISTS","XMLFOREST","XMLPARSE","XMLPI","XMLROOT","XMLSERIALIZE","XMLTABLE","XML_IS_WELL_FORMED","XML_IS_WELL_FORMED_CONTENT","XML_IS_WELL_FORMED_DOCUMENT","XPATH","XPATH_EXISTS","ARRAY_TO_JSON","JSONB_AGG","JSONB_ARRAY_ELEMENTS","JSONB_ARRAY_ELEMENTS_TEXT","JSONB_ARRAY_LENGTH","JSONB_BUILD_ARRAY","JSONB_BUILD_OBJECT","JSONB_EACH","JSONB_EACH_TEXT","JSONB_EXTRACT_PATH","JSONB_EXTRACT_PATH_TEXT","JSONB_INSERT","JSONB_OBJECT","JSONB_OBJECT_AGG","JSONB_OBJECT_KEYS","JSONB_PATH_EXISTS","JSONB_PATH_EXISTS_TZ","JSONB_PATH_MATCH","JSONB_PATH_MATCH_TZ","JSONB_PATH_QUERY","JSONB_PATH_QUERY_ARRAY","JSONB_PATH_QUERY_ARRAY_TZ","JSONB_PATH_QUERY_FIRST","JSONB_PATH_QUERY_FIRST_TZ","JSONB_PATH_QUERY_TZ","JSONB_POPULATE_RECORD","JSONB_POPULATE_RECORDSET","JSONB_PRETTY","JSONB_SET","JSONB_SET_LAX","JSONB_STRIP_NULLS","JSONB_TO_RECORD","JSONB_TO_RECORDSET","JSONB_TYPEOF","JSON_AGG","JSON_ARRAY_ELEMENTS","JSON_ARRAY_ELEMENTS_TEXT","JSON_ARRAY_LENGTH","JSON_BUILD_ARRAY","JSON_BUILD_OBJECT","JSON_EACH","JSON_EACH_TEXT","JSON_EXTRACT_PATH","JSON_EXTRACT_PATH_TEXT","JSON_OBJECT","JSON_OBJECT_AGG","JSON_OBJECT_KEYS","JSON_POPULATE_RECORD","JSON_POPULATE_RECORDSET","JSON_STRIP_NULLS","JSON_TO_RECORD","JSON_TO_RECORDSET","JSON_TYPEOF","ROW_TO_JSON","TO_JSON","TO_JSONB","TO_TIMESTAMP","CURRVAL","LASTVAL","NEXTVAL","SETVAL","COALESCE","GREATEST","LEAST","NULLIF","ARRAY_AGG","ARRAY_APPEND","ARRAY_CAT","ARRAY_DIMS","ARRAY_FILL","ARRAY_LENGTH","ARRAY_LOWER","ARRAY_NDIMS","ARRAY_POSITION","ARRAY_POSITIONS","ARRAY_PREPEND","ARRAY_REMOVE","ARRAY_REPLACE","ARRAY_TO_STRING","ARRAY_UPPER","CARDINALITY","STRING_TO_ARRAY","TRIM_ARRAY","UNNEST","ISEMPTY","LOWER","LOWER_INC","LOWER_INF","MULTIRANGE","RANGE_MERGE","UPPER","UPPER_INC","UPPER_INF","ARRAY_AGG","AVG","BIT_AND","BIT_OR","BIT_XOR","BOOL_AND","BOOL_OR","COALESCE","CORR","COUNT","COVAR_POP","COVAR_SAMP","CUME_DIST","DENSE_RANK","EVERY","GROUPING","JSONB_AGG","JSONB_OBJECT_AGG","JSON_AGG","JSON_OBJECT_AGG","MAX","MIN","MODE","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","RANGE_AGG","RANGE_INTERSECT_AGG","RANK","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV","STDDEV_POP","STDDEV_SAMP","STRING_AGG","SUM","TO_JSON","TO_JSONB","VARIANCE","VAR_POP","VAR_SAMP","XMLAGG","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","ROW_NUMBER","GENERATE_SERIES","GENERATE_SUBSCRIPTS","ACLDEFAULT","ACLEXPLODE","COL_DESCRIPTION","CURRENT_CATALOG","CURRENT_DATABASE","CURRENT_QUERY","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_USER","FORMAT_TYPE","HAS_ANY_COLUMN_PRIVILEGE","HAS_COLUMN_PRIVILEGE","HAS_DATABASE_PRIVILEGE","HAS_FOREIGN_DATA_WRAPPER_PRIVILEGE","HAS_FUNCTION_PRIVILEGE","HAS_LANGUAGE_PRIVILEGE","HAS_SCHEMA_PRIVILEGE","HAS_SEQUENCE_PRIVILEGE","HAS_SERVER_PRIVILEGE","HAS_TABLESPACE_PRIVILEGE","HAS_TABLE_PRIVILEGE","HAS_TYPE_PRIVILEGE","INET_CLIENT_ADDR","INET_CLIENT_PORT","INET_SERVER_ADDR","INET_SERVER_PORT","MAKEACLITEM","OBJ_DESCRIPTION","PG_BACKEND_PID","PG_BLOCKING_PIDS","PG_COLLATION_IS_VISIBLE","PG_CONF_LOAD_TIME","PG_CONTROL_CHECKPOINT","PG_CONTROL_INIT","PG_CONTROL_SYSTEM","PG_CONVERSION_IS_VISIBLE","PG_CURRENT_LOGFILE","PG_CURRENT_SNAPSHOT","PG_CURRENT_XACT_ID","PG_CURRENT_XACT_ID_IF_ASSIGNED","PG_DESCRIBE_OBJECT","PG_FUNCTION_IS_VISIBLE","PG_GET_CATALOG_FOREIGN_KEYS","PG_GET_CONSTRAINTDEF","PG_GET_EXPR","PG_GET_FUNCTIONDEF","PG_GET_FUNCTION_ARGUMENTS","PG_GET_FUNCTION_IDENTITY_ARGUMENTS","PG_GET_FUNCTION_RESULT","PG_GET_INDEXDEF","PG_GET_KEYWORDS","PG_GET_OBJECT_ADDRESS","PG_GET_OWNED_SEQUENCE","PG_GET_RULEDEF","PG_GET_SERIAL_SEQUENCE","PG_GET_STATISTICSOBJDEF","PG_GET_TRIGGERDEF","PG_GET_USERBYID","PG_GET_VIEWDEF","PG_HAS_ROLE","PG_IDENTIFY_OBJECT","PG_IDENTIFY_OBJECT_AS_ADDRESS","PG_INDEXAM_HAS_PROPERTY","PG_INDEX_COLUMN_HAS_PROPERTY","PG_INDEX_HAS_PROPERTY","PG_IS_OTHER_TEMP_SCHEMA","PG_JIT_AVAILABLE","PG_LAST_COMMITTED_XACT","PG_LISTENING_CHANNELS","PG_MY_TEMP_SCHEMA","PG_NOTIFICATION_QUEUE_USAGE","PG_OPCLASS_IS_VISIBLE","PG_OPERATOR_IS_VISIBLE","PG_OPFAMILY_IS_VISIBLE","PG_OPTIONS_TO_TABLE","PG_POSTMASTER_START_TIME","PG_SAFE_SNAPSHOT_BLOCKING_PIDS","PG_SNAPSHOT_XIP","PG_SNAPSHOT_XMAX","PG_SNAPSHOT_XMIN","PG_STATISTICS_OBJ_IS_VISIBLE","PG_TABLESPACE_DATABASES","PG_TABLESPACE_LOCATION","PG_TABLE_IS_VISIBLE","PG_TRIGGER_DEPTH","PG_TS_CONFIG_IS_VISIBLE","PG_TS_DICT_IS_VISIBLE","PG_TS_PARSER_IS_VISIBLE","PG_TS_TEMPLATE_IS_VISIBLE","PG_TYPEOF","PG_TYPE_IS_VISIBLE","PG_VISIBLE_IN_SNAPSHOT","PG_XACT_COMMIT_TIMESTAMP","PG_XACT_COMMIT_TIMESTAMP_ORIGIN","PG_XACT_STATUS","PQSERVERVERSION","ROW_SECURITY_ACTIVE","SESSION_USER","SHOBJ_DESCRIPTION","TO_REGCLASS","TO_REGCOLLATION","TO_REGNAMESPACE","TO_REGOPER","TO_REGOPERATOR","TO_REGPROC","TO_REGPROCEDURE","TO_REGROLE","TO_REGTYPE","TXID_CURRENT","TXID_CURRENT_IF_ASSIGNED","TXID_CURRENT_SNAPSHOT","TXID_SNAPSHOT_XIP","TXID_SNAPSHOT_XMAX","TXID_SNAPSHOT_XMIN","TXID_STATUS","TXID_VISIBLE_IN_SNAPSHOT","USER","VERSION","BRIN_DESUMMARIZE_RANGE","BRIN_SUMMARIZE_NEW_VALUES","BRIN_SUMMARIZE_RANGE","CONVERT_FROM","CURRENT_SETTING","GIN_CLEAN_PENDING_LIST","PG_ADVISORY_LOCK","PG_ADVISORY_LOCK_SHARED","PG_ADVISORY_UNLOCK","PG_ADVISORY_UNLOCK_ALL","PG_ADVISORY_UNLOCK_SHARED","PG_ADVISORY_XACT_LOCK","PG_ADVISORY_XACT_LOCK_SHARED","PG_BACKUP_START_TIME","PG_CANCEL_BACKEND","PG_COLLATION_ACTUAL_VERSION","PG_COLUMN_COMPRESSION","PG_COLUMN_SIZE","PG_COPY_LOGICAL_REPLICATION_SLOT","PG_COPY_PHYSICAL_REPLICATION_SLOT","PG_CREATE_LOGICAL_REPLICATION_SLOT","PG_CREATE_PHYSICAL_REPLICATION_SLOT","PG_CREATE_RESTORE_POINT","PG_CURRENT_WAL_FLUSH_LSN","PG_CURRENT_WAL_INSERT_LSN","PG_CURRENT_WAL_LSN","PG_DATABASE_SIZE","PG_DROP_REPLICATION_SLOT","PG_EXPORT_SNAPSHOT","PG_FILENODE_RELATION","PG_GET_WAL_REPLAY_PAUSE_STATE","PG_IMPORT_SYSTEM_COLLATIONS","PG_INDEXES_SIZE","PG_IS_IN_BACKUP","PG_IS_IN_RECOVERY","PG_IS_WAL_REPLAY_PAUSED","PG_LAST_WAL_RECEIVE_LSN","PG_LAST_WAL_REPLAY_LSN","PG_LAST_XACT_REPLAY_TIMESTAMP","PG_LOGICAL_EMIT_MESSAGE","PG_LOGICAL_SLOT_GET_BINARY_CHANGES","PG_LOGICAL_SLOT_GET_CHANGES","PG_LOGICAL_SLOT_PEEK_BINARY_CHANGES","PG_LOGICAL_SLOT_PEEK_CHANGES","PG_LOG_BACKEND_MEMORY_CONTEXTS","PG_LS_ARCHIVE_STATUSDIR","PG_LS_DIR","PG_LS_LOGDIR","PG_LS_TMPDIR","PG_LS_WALDIR","PG_PARTITION_ANCESTORS","PG_PARTITION_ROOT","PG_PARTITION_TREE","PG_PROMOTE","PG_READ_BINARY_FILE","PG_READ_FILE","PG_RELATION_FILENODE","PG_RELATION_FILEPATH","PG_RELATION_SIZE","PG_RELOAD_CONF","PG_REPLICATION_ORIGIN_ADVANCE","PG_REPLICATION_ORIGIN_CREATE","PG_REPLICATION_ORIGIN_DROP","PG_REPLICATION_ORIGIN_OID","PG_REPLICATION_ORIGIN_PROGRESS","PG_REPLICATION_ORIGIN_SESSION_IS_SETUP","PG_REPLICATION_ORIGIN_SESSION_PROGRESS","PG_REPLICATION_ORIGIN_SESSION_RESET","PG_REPLICATION_ORIGIN_SESSION_SETUP","PG_REPLICATION_ORIGIN_XACT_RESET","PG_REPLICATION_ORIGIN_XACT_SETUP","PG_REPLICATION_SLOT_ADVANCE","PG_ROTATE_LOGFILE","PG_SIZE_BYTES","PG_SIZE_PRETTY","PG_START_BACKUP","PG_STAT_FILE","PG_STOP_BACKUP","PG_SWITCH_WAL","PG_TABLESPACE_SIZE","PG_TABLE_SIZE","PG_TERMINATE_BACKEND","PG_TOTAL_RELATION_SIZE","PG_TRY_ADVISORY_LOCK","PG_TRY_ADVISORY_LOCK_SHARED","PG_TRY_ADVISORY_XACT_LOCK","PG_TRY_ADVISORY_XACT_LOCK_SHARED","PG_WALFILE_NAME","PG_WALFILE_NAME_OFFSET","PG_WAL_LSN_DIFF","PG_WAL_REPLAY_PAUSE","PG_WAL_REPLAY_RESUME","SET_CONFIG","SUPPRESS_REDUNDANT_UPDATES_TRIGGER","TSVECTOR_UPDATE_TRIGGER","TSVECTOR_UPDATE_TRIGGER_COLUMN","PG_EVENT_TRIGGER_DDL_COMMANDS","PG_EVENT_TRIGGER_DROPPED_OBJECTS","PG_EVENT_TRIGGER_TABLE_REWRITE_OID","PG_EVENT_TRIGGER_TABLE_REWRITE_REASON","PG_GET_OBJECT_ADDRESS","PG_MCV_LIST_ITEMS","CAST"],COa=["ALL","ANALYSE","ANALYZE","AND","ANY","AS","ASC","ASYMMETRIC","AUTHORIZATION","BETWEEN","BINARY","BOTH","CASE","CAST","CHECK","COLLATE","COLLATION","COLUMN","CONCURRENTLY","CONSTRAINT","CREATE","CROSS","CURRENT_CATALOG","CURRENT_DATE","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DAY","DEFAULT","DEFERRABLE","DESC","DISTINCT","DO","ELSE","END","EXCEPT","EXISTS","FALSE","FETCH","FILTER","FOR","FOREIGN","FREEZE","FROM","FULL","GRANT","GROUP","HAVING","HOUR","ILIKE","IN","INITIALLY","INNER","INOUT","INTERSECT","INTO","IS","ISNULL","JOIN","LATERAL","LEADING","LEFT","LIKE","LIMIT","LOCALTIME","LOCALTIMESTAMP","MINUTE","MONTH","NATURAL","NOT","NOTNULL","NULL","NULLIF","OFFSET","ON","ONLY","OR","ORDER","OUT","OUTER","OVER","OVERLAPS","PLACING","PRIMARY","REFERENCES","RETURNING","RIGHT","ROW","SECOND","SELECT","SESSION_USER","SIMILAR","SOME","SYMMETRIC","TABLE","TABLESAMPLE","THEN","TO","TRAILING","TRUE","UNION","UNIQUE","USER","USING","VALUES","VARIADIC","VERBOSE","WHEN","WHERE","WINDOW","WITH","WITHIN","WITHOUT","YEAR"],mOa=["ARRAY","BIGINT","BIT","BIT VARYING","BOOL","BOOLEAN","CHAR","CHARACTER","CHARACTER VARYING","DECIMAL","DEC","DOUBLE","ENUM","FLOAT","INT","INTEGER","INTERVAL","NCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TIMESTAMPTZ","VARCHAR","XML","ZONE"],hOa=Ja(["SELECT [ALL | DISTINCT]"]),_Oa=Ja(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","FOR {UPDATE | NO KEY UPDATE | SHARE | KEY SHARE} [OF]","INSERT INTO","VALUES","DEFAULT VALUES","SET","RETURNING"]),Tvi=Ja(["CREATE [GLOBAL | LOCAL] [TEMPORARY | TEMP | UNLOGGED] TABLE [IF NOT EXISTS]"]),Yhr=Ja(["CREATE [OR REPLACE] [TEMP | TEMPORARY] [RECURSIVE] VIEW","CREATE [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE [ONLY]","WHERE CURRENT OF","ON CONFLICT","DELETE FROM [ONLY]","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS] [ONLY]","ALTER TABLE ALL IN TABLESPACE","RENAME [COLUMN]","RENAME TO","ADD [COLUMN] [IF NOT EXISTS]","DROP [COLUMN] [IF EXISTS]","ALTER [COLUMN]","SET DATA TYPE","{SET | DROP} DEFAULT","{SET | DROP} NOT NULL","TRUNCATE [TABLE] [ONLY]","SET SCHEMA","AFTER","ABORT","ALTER AGGREGATE","ALTER COLLATION","ALTER CONVERSION","ALTER DATABASE","ALTER DEFAULT PRIVILEGES","ALTER DOMAIN","ALTER EVENT TRIGGER","ALTER EXTENSION","ALTER FOREIGN DATA WRAPPER","ALTER FOREIGN TABLE","ALTER FUNCTION","ALTER GROUP","ALTER INDEX","ALTER LANGUAGE","ALTER LARGE OBJECT","ALTER MATERIALIZED VIEW","ALTER OPERATOR","ALTER OPERATOR CLASS","ALTER OPERATOR FAMILY","ALTER POLICY","ALTER PROCEDURE","ALTER PUBLICATION","ALTER ROLE","ALTER ROUTINE","ALTER RULE","ALTER SCHEMA","ALTER SEQUENCE","ALTER SERVER","ALTER STATISTICS","ALTER SUBSCRIPTION","ALTER SYSTEM","ALTER TABLESPACE","ALTER TEXT SEARCH CONFIGURATION","ALTER TEXT SEARCH DICTIONARY","ALTER TEXT SEARCH PARSER","ALTER TEXT SEARCH TEMPLATE","ALTER TRIGGER","ALTER TYPE","ALTER USER","ALTER USER MAPPING","ALTER VIEW","ANALYZE","BEGIN","CALL","CHECKPOINT","CLOSE","CLUSTER","COMMIT","COMMIT PREPARED","COPY","CREATE ACCESS METHOD","CREATE AGGREGATE","CREATE CAST","CREATE COLLATION","CREATE CONVERSION","CREATE DATABASE","CREATE DOMAIN","CREATE EVENT TRIGGER","CREATE EXTENSION","CREATE FOREIGN DATA WRAPPER","CREATE FOREIGN TABLE","CREATE FUNCTION","CREATE GROUP","CREATE INDEX","CREATE LANGUAGE","CREATE OPERATOR","CREATE OPERATOR CLASS","CREATE OPERATOR FAMILY","CREATE POLICY","CREATE PROCEDURE","CREATE PUBLICATION","CREATE ROLE","CREATE RULE","CREATE SCHEMA","CREATE SEQUENCE","CREATE SERVER","CREATE STATISTICS","CREATE SUBSCRIPTION","CREATE TABLESPACE","CREATE TEXT SEARCH CONFIGURATION","CREATE TEXT SEARCH DICTIONARY","CREATE TEXT SEARCH PARSER","CREATE TEXT SEARCH TEMPLATE","CREATE TRANSFORM","CREATE TRIGGER","CREATE TYPE","CREATE USER","CREATE USER MAPPING","DEALLOCATE","DECLARE","DISCARD","DROP ACCESS METHOD","DROP AGGREGATE","DROP CAST","DROP COLLATION","DROP CONVERSION","DROP DATABASE","DROP DOMAIN","DROP EVENT TRIGGER","DROP EXTENSION","DROP FOREIGN DATA WRAPPER","DROP FOREIGN TABLE","DROP FUNCTION","DROP GROUP","DROP INDEX","DROP LANGUAGE","DROP MATERIALIZED VIEW","DROP OPERATOR","DROP OPERATOR CLASS","DROP OPERATOR FAMILY","DROP OWNED","DROP POLICY","DROP PROCEDURE","DROP PUBLICATION","DROP ROLE","DROP ROUTINE","DROP RULE","DROP SCHEMA","DROP SEQUENCE","DROP SERVER","DROP STATISTICS","DROP SUBSCRIPTION","DROP TABLESPACE","DROP TEXT SEARCH CONFIGURATION","DROP TEXT SEARCH DICTIONARY","DROP TEXT SEARCH PARSER","DROP TEXT SEARCH TEMPLATE","DROP TRANSFORM","DROP TRIGGER","DROP TYPE","DROP USER","DROP USER MAPPING","DROP VIEW","EXECUTE","EXPLAIN","FETCH","GRANT","IMPORT FOREIGN SCHEMA","LISTEN","LOAD","LOCK","MOVE","NOTIFY","PREPARE","PREPARE TRANSACTION","REASSIGN OWNED","REFRESH MATERIALIZED VIEW","REINDEX","RELEASE SAVEPOINT","RESET","REVOKE","ROLLBACK","ROLLBACK PREPARED","ROLLBACK TO SAVEPOINT","SAVEPOINT","SECURITY LABEL","SELECT INTO","SET CONSTRAINTS","SET ROLE","SET SESSION AUTHORIZATION","SET TRANSACTION","SHOW","START TRANSACTION","UNLISTEN","VACUUM"]),yOa=Ja(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),bOa=Ja(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),EOa=Ja(["PRIMARY KEY","GENERATED {ALWAYS | BY DEFAULT} AS IDENTITY","ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE | GROUPS} BETWEEN","[TIMESTAMP | TIME] {WITH | WITHOUT} TIME ZONE","IS [NOT] DISTINCT FROM"]),BOa={name:"postgresql",tokenizerOptions:{reservedSelect:hOa,reservedClauses:[..._Oa,...Tvi,...Yhr],reservedSetOperations:yOa,reservedJoins:bOa,reservedPhrases:EOa,reservedKeywords:COa,reservedDataTypes:mOa,reservedFunctionNames:IOa,nestedBlockComments:!0,extraParens:["[]"],stringTypes:["$$",{quote:"''-qq",prefixes:["U&"]},{quote:"''-qq-bs",prefixes:["E"],requirePrefix:!0},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:[{quote:'""-qq',prefixes:["U&"]}],identChars:{rest:"$"},paramTypes:{numbered:["$"]},operators:["%","^","|/","||/","@",":=","&","|","#","~","<<",">>","~>~","~<~","~>=~","~<=~","@-@","@@","##","<->","&&","&<","&>","<<|","&<|","|>>","|&>","<^","^>","?#","?-","?|","?-|","?||","@>","<@","~=","?","@?","?&","->","->>","#>","#>>","#-","=>",">>=","<<=","~~","~~*","!~~","!~~*","~","~*","!~","!~*","-|-","||","@@@","!!","^@","<%","%>","<<%","%>>","<<->","<->>","<<<->","<->>>","::",":"]},formatOptions:{alwaysDenseOperators:["::",":"],onelineClauses:[...Tvi,...Yhr],tabularOnelineClauses:Yhr}},vOa=["ANY_VALUE","APPROXIMATE PERCENTILE_DISC","AVG","COUNT","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","STDDEV_SAMP","STDDEV_POP","SUM","VAR_SAMP","VAR_POP","array","array_concat","array_flatten","get_array_length","split_to_array","subarray","BIT_AND","BIT_OR","BOOL_AND","BOOL_OR","COALESCE","DECODE","GREATEST","LEAST","NVL","NVL2","NULLIF","ADD_MONTHS","AT TIME ZONE","CONVERT_TIMEZONE","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE_CMP","DATE_CMP_TIMESTAMP","DATE_CMP_TIMESTAMPTZ","DATE_PART_YEAR","DATEADD","DATEDIFF","DATE_PART","DATE_TRUNC","EXTRACT","GETDATE","INTERVAL_CMP","LAST_DAY","MONTHS_BETWEEN","NEXT_DAY","SYSDATE","TIMEOFDAY","TIMESTAMP_CMP","TIMESTAMP_CMP_DATE","TIMESTAMP_CMP_TIMESTAMPTZ","TIMESTAMPTZ_CMP","TIMESTAMPTZ_CMP_DATE","TIMESTAMPTZ_CMP_TIMESTAMP","TIMEZONE","TO_TIMESTAMP","TRUNC","AddBBox","DropBBox","GeometryType","ST_AddPoint","ST_Angle","ST_Area","ST_AsBinary","ST_AsEWKB","ST_AsEWKT","ST_AsGeoJSON","ST_AsText","ST_Azimuth","ST_Boundary","ST_Collect","ST_Contains","ST_ContainsProperly","ST_ConvexHull","ST_CoveredBy","ST_Covers","ST_Crosses","ST_Dimension","ST_Disjoint","ST_Distance","ST_DistanceSphere","ST_DWithin","ST_EndPoint","ST_Envelope","ST_Equals","ST_ExteriorRing","ST_Force2D","ST_Force3D","ST_Force3DM","ST_Force3DZ","ST_Force4D","ST_GeometryN","ST_GeometryType","ST_GeomFromEWKB","ST_GeomFromEWKT","ST_GeomFromText","ST_GeomFromWKB","ST_InteriorRingN","ST_Intersects","ST_IsPolygonCCW","ST_IsPolygonCW","ST_IsClosed","ST_IsCollection","ST_IsEmpty","ST_IsSimple","ST_IsValid","ST_Length","ST_LengthSphere","ST_Length2D","ST_LineFromMultiPoint","ST_LineInterpolatePoint","ST_M","ST_MakeEnvelope","ST_MakeLine","ST_MakePoint","ST_MakePolygon","ST_MemSize","ST_MMax","ST_MMin","ST_Multi","ST_NDims","ST_NPoints","ST_NRings","ST_NumGeometries","ST_NumInteriorRings","ST_NumPoints","ST_Perimeter","ST_Perimeter2D","ST_Point","ST_PointN","ST_Points","ST_Polygon","ST_RemovePoint","ST_Reverse","ST_SetPoint","ST_SetSRID","ST_Simplify","ST_SRID","ST_StartPoint","ST_Touches","ST_Within","ST_X","ST_XMax","ST_XMin","ST_Y","ST_YMax","ST_YMin","ST_Z","ST_ZMax","ST_ZMin","SupportsBBox","CHECKSUM","FUNC_SHA1","FNV_HASH","MD5","SHA","SHA1","SHA2","HLL","HLL_CREATE_SKETCH","HLL_CARDINALITY","HLL_COMBINE","IS_VALID_JSON","IS_VALID_JSON_ARRAY","JSON_ARRAY_LENGTH","JSON_EXTRACT_ARRAY_ELEMENT_TEXT","JSON_EXTRACT_PATH_TEXT","JSON_PARSE","JSON_SERIALIZE","ABS","ACOS","ASIN","ATAN","ATAN2","CBRT","CEILING","CEIL","COS","COT","DEGREES","DEXP","DLOG1","DLOG10","EXP","FLOOR","LN","LOG","MOD","PI","POWER","RADIANS","RANDOM","ROUND","SIN","SIGN","SQRT","TAN","TO_HEX","TRUNC","EXPLAIN_MODEL","ASCII","BPCHARCMP","BTRIM","BTTEXT_PATTERN_CMP","CHAR_LENGTH","CHARACTER_LENGTH","CHARINDEX","CHR","COLLATE","CONCAT","CRC32","DIFFERENCE","INITCAP","LEFT","RIGHT","LEN","LENGTH","LOWER","LPAD","RPAD","LTRIM","OCTETINDEX","OCTET_LENGTH","POSITION","QUOTE_IDENT","QUOTE_LITERAL","REGEXP_COUNT","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","REPLICATE","REVERSE","RTRIM","SOUNDEX","SPLIT_PART","STRPOS","STRTOL","SUBSTRING","TEXTLEN","TRANSLATE","TRIM","UPPER","decimal_precision","decimal_scale","is_array","is_bigint","is_boolean","is_char","is_decimal","is_float","is_integer","is_object","is_scalar","is_smallint","is_varchar","json_typeof","AVG","COUNT","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAST_VALUE","LAG","LEAD","LISTAGG","MAX","MEDIAN","MIN","NTH_VALUE","NTILE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","RATIO_TO_REPORT","ROW_NUMBER","STDDEV_SAMP","STDDEV_POP","SUM","VAR_SAMP","VAR_POP","CAST","CONVERT","TO_CHAR","TO_DATE","TO_NUMBER","TEXT_TO_INT_ALT","TEXT_TO_NUMERIC_ALT","CHANGE_QUERY_PRIORITY","CHANGE_SESSION_PRIORITY","CHANGE_USER_PRIORITY","CURRENT_SETTING","PG_CANCEL_BACKEND","PG_TERMINATE_BACKEND","REBOOT_CLUSTER","SET_CONFIG","CURRENT_AWS_ACCOUNT","CURRENT_DATABASE","CURRENT_NAMESPACE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_USER","CURRENT_USER_ID","HAS_ASSUMEROLE_PRIVILEGE","HAS_DATABASE_PRIVILEGE","HAS_SCHEMA_PRIVILEGE","HAS_TABLE_PRIVILEGE","PG_BACKEND_PID","PG_GET_COLS","PG_GET_GRANTEE_BY_IAM_ROLE","PG_GET_IAM_ROLE_BY_USER","PG_GET_LATE_BINDING_VIEW_COLS","PG_LAST_COPY_COUNT","PG_LAST_COPY_ID","PG_LAST_UNLOAD_ID","PG_LAST_QUERY_ID","PG_LAST_UNLOAD_COUNT","SESSION_USER","SLICE_NUM","USER","VERSION"],SOa=["AES128","AES256","ALL","ALLOWOVERWRITE","ANY","AS","ASC","AUTHORIZATION","BACKUP","BETWEEN","BINARY","BOTH","CHECK","COLUMN","CONSTRAINT","CREATE","CROSS","DEFAULT","DEFERRABLE","DEFLATE","DEFRAG","DESC","DISABLE","DISTINCT","DO","ENABLE","ENCODE","ENCRYPT","ENCRYPTION","EXPLICIT","FALSE","FOR","FOREIGN","FREEZE","FROM","FULL","GLOBALDICT256","GLOBALDICT64K","GROUP","IDENTITY","IGNORE","ILIKE","IN","INITIALLY","INNER","INTO","IS","ISNULL","LANGUAGE","LEADING","LIKE","LIMIT","LOCALTIME","LOCALTIMESTAMP","LUN","LUNS","MINUS","NATURAL","NEW","NOT","NOTNULL","NULL","NULLS","OFF","OFFLINE","OFFSET","OID","OLD","ON","ONLY","OPEN","ORDER","OUTER","OVERLAPS","PARALLEL","PARTITION","PERCENT","PERMISSIONS","PLACING","PRIMARY","RECOVER","REFERENCES","REJECTLOG","RESORT","RESPECT","RESTORE","SIMILAR","SNAPSHOT","SOME","SYSTEM","TABLE","TAG","TDES","THEN","TIMESTAMP","TO","TOP","TRAILING","TRUE","UNIQUE","USING","VERBOSE","WALLET","WITHOUT","ACCEPTANYDATE","ACCEPTINVCHARS","BLANKSASNULL","DATEFORMAT","EMPTYASNULL","ENCODING","ESCAPE","EXPLICIT_IDS","FILLRECORD","IGNOREBLANKLINES","IGNOREHEADER","REMOVEQUOTES","ROUNDEC","TIMEFORMAT","TRIMBLANKS","TRUNCATECOLUMNS","COMPROWS","COMPUPDATE","MAXERROR","NOLOAD","STATUPDATE","FORMAT","CSV","DELIMITER","FIXEDWIDTH","SHAPEFILE","AVRO","JSON","PARQUET","ORC","ACCESS_KEY_ID","CREDENTIALS","ENCRYPTED","IAM_ROLE","MASTER_SYMMETRIC_KEY","SECRET_ACCESS_KEY","SESSION_TOKEN","BZIP2","GZIP","LZOP","ZSTD","MANIFEST","READRATIO","REGION","SSH","RAW","AZ64","BYTEDICT","DELTA","DELTA32K","LZO","MOSTLY8","MOSTLY16","MOSTLY32","RUNLENGTH","TEXT255","TEXT32K","CATALOG_ROLE","SECRET_ARN","EXTERNAL","AUTO","EVEN","KEY","PREDICATE","COMPRESSION"],wOa=["ARRAY","BIGINT","BPCHAR","CHAR","CHARACTER VARYING","CHARACTER","DECIMAL","INT","INT2","INT4","INT8","INTEGER","NCHAR","NUMERIC","NVARCHAR","SMALLINT","TEXT","VARBYTE","VARCHAR"],TOa=Ja(["SELECT [ALL | DISTINCT]"]),NOa=Ja(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT INTO","VALUES","SET"]),Nvi=Ja(["CREATE [TEMPORARY | TEMP | LOCAL TEMPORARY | LOCAL TEMP] TABLE [IF NOT EXISTS]"]),Hhr=Ja(["CREATE [OR REPLACE | MATERIALIZED] VIEW","UPDATE","DELETE [FROM]","DROP TABLE [IF EXISTS]","ALTER TABLE","ALTER TABLE APPEND","ADD [COLUMN]","DROP [COLUMN]","RENAME TO","RENAME COLUMN","ALTER COLUMN","TYPE","ENCODE","TRUNCATE [TABLE]","ABORT","ALTER DATABASE","ALTER DATASHARE","ALTER DEFAULT PRIVILEGES","ALTER GROUP","ALTER MATERIALIZED VIEW","ALTER PROCEDURE","ALTER SCHEMA","ALTER USER","ANALYSE","ANALYZE","ANALYSE COMPRESSION","ANALYZE COMPRESSION","BEGIN","CALL","CANCEL","CLOSE","COMMIT","COPY","CREATE DATABASE","CREATE DATASHARE","CREATE EXTERNAL FUNCTION","CREATE EXTERNAL SCHEMA","CREATE EXTERNAL TABLE","CREATE FUNCTION","CREATE GROUP","CREATE LIBRARY","CREATE MODEL","CREATE PROCEDURE","CREATE SCHEMA","CREATE USER","DEALLOCATE","DECLARE","DESC DATASHARE","DROP DATABASE","DROP DATASHARE","DROP FUNCTION","DROP GROUP","DROP LIBRARY","DROP MODEL","DROP MATERIALIZED VIEW","DROP PROCEDURE","DROP SCHEMA","DROP USER","DROP VIEW","DROP","EXECUTE","EXPLAIN","FETCH","GRANT","LOCK","PREPARE","REFRESH MATERIALIZED VIEW","RESET","REVOKE","ROLLBACK","SELECT INTO","SET SESSION AUTHORIZATION","SET SESSION CHARACTERISTICS","SHOW","SHOW EXTERNAL TABLE","SHOW MODEL","SHOW DATASHARES","SHOW PROCEDURE","SHOW TABLE","SHOW VIEW","START TRANSACTION","UNLOAD","VACUUM"]),ROa=Ja(["UNION [ALL]","EXCEPT","INTERSECT","MINUS"]),DOa=Ja(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),xOa=Ja(["NULL AS","DATA CATALOG","HIVE METASTORE","{ROWS | RANGE} BETWEEN"]),kOa={name:"redshift",tokenizerOptions:{reservedSelect:TOa,reservedClauses:[...NOa,...Nvi,...Hhr],reservedSetOperations:ROa,reservedJoins:DOa,reservedPhrases:xOa,reservedKeywords:SOa,reservedDataTypes:wOa,reservedFunctionNames:vOa,stringTypes:["''-qq"],identTypes:['""-qq'],identChars:{first:"#"},paramTypes:{numbered:["$"]},operators:["^","%","@","|/","||/","&","|","~","<<",">>","||","::"]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...Nvi,...Hhr],tabularOnelineClauses:Hhr}},GOa=["ADD","AFTER","ALL","ALTER","ANALYZE","AND","ANTI","ANY","ARCHIVE","AS","ASC","AT","AUTHORIZATION","BETWEEN","BOTH","BUCKET","BUCKETS","BY","CACHE","CASCADE","CAST","CHANGE","CHECK","CLEAR","CLUSTER","CLUSTERED","CODEGEN","COLLATE","COLLECTION","COLUMN","COLUMNS","COMMENT","COMMIT","COMPACT","COMPACTIONS","COMPUTE","CONCATENATE","CONSTRAINT","COST","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DATA","DATABASE","DATABASES","DAY","DBPROPERTIES","DEFINED","DELETE","DELIMITED","DESC","DESCRIBE","DFS","DIRECTORIES","DIRECTORY","DISTINCT","DISTRIBUTE","DIV","DROP","ESCAPE","ESCAPED","EXCEPT","EXCHANGE","EXISTS","EXPORT","EXTENDED","EXTERNAL","EXTRACT","FALSE","FETCH","FIELDS","FILTER","FILEFORMAT","FIRST","FIRST_VALUE","FOLLOWING","FOR","FOREIGN","FORMAT","FORMATTED","FULL","FUNCTION","FUNCTIONS","GLOBAL","GRANT","GROUP","GROUPING","HOUR","IF","IGNORE","IMPORT","IN","INDEX","INDEXES","INNER","INPATH","INPUTFORMAT","INTERSECT","INTO","IS","ITEMS","KEYS","LAST","LAST_VALUE","LATERAL","LAZY","LEADING","LEFT","LIKE","LINES","LIST","LOCAL","LOCATION","LOCK","LOCKS","LOGICAL","MACRO","MATCHED","MERGE","MINUTE","MONTH","MSCK","NAMESPACE","NAMESPACES","NATURAL","NO","NOT","NULL","NULLS","OF","ONLY","OPTION","OPTIONS","OR","ORDER","OUT","OUTER","OUTPUTFORMAT","OVER","OVERLAPS","OVERLAY","OVERWRITE","OWNER","PARTITION","PARTITIONED","PARTITIONS","PERCENT","PLACING","POSITION","PRECEDING","PRIMARY","PRINCIPALS","PROPERTIES","PURGE","QUERY","RANGE","RECORDREADER","RECORDWRITER","RECOVER","REDUCE","REFERENCES","RENAME","REPAIR","REPLACE","RESPECT","RESTRICT","REVOKE","RIGHT","RLIKE","ROLE","ROLES","ROLLBACK","ROLLUP","ROW","ROWS","SCHEMA","SECOND","SELECT","SEMI","SEPARATED","SERDE","SERDEPROPERTIES","SESSION_USER","SETS","SHOW","SKEWED","SOME","SORT","SORTED","START","STATISTICS","STORED","STRATIFY","SUBSTR","SUBSTRING","TABLE","TABLES","TBLPROPERTIES","TEMPORARY","TERMINATED","THEN","TO","TOUCH","TRAILING","TRANSACTION","TRANSACTIONS","TRIM","TRUE","TRUNCATE","UNARCHIVE","UNBOUNDED","UNCACHE","UNIQUE","UNKNOWN","UNLOCK","UNSET","USE","USER","USING","VIEW","WINDOW","YEAR","ANALYSE","ARRAY_ZIP","COALESCE","CONTAINS","CONVERT","DAYS","DAY_HOUR","DAY_MINUTE","DAY_SECOND","DECODE","DEFAULT","DISTINCTROW","ENCODE","EXPLODE","EXPLODE_OUTER","FIXED","GREATEST","GROUP_CONCAT","HOURS","HOUR_MINUTE","HOUR_SECOND","IFNULL","LEAST","LEVEL","MINUTE_SECOND","NULLIF","OFFSET","ON","OPTIMIZE","REGEXP","SEPARATOR","SIZE","TYPE","TYPES","UNSIGNED","VARIABLES","YEAR_MONTH"],FOa=["ARRAY","BIGINT","BINARY","BOOLEAN","BYTE","CHAR","DATE","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","LONG","MAP","NUMERIC","REAL","SHORT","SMALLINT","STRING","STRUCT","TIMESTAMP_LTZ","TIMESTAMP_NTZ","TIMESTAMP","TINYINT","VARCHAR"],ZOa=["APPROX_COUNT_DISTINCT","APPROX_PERCENTILE","AVG","BIT_AND","BIT_OR","BIT_XOR","BOOL_AND","BOOL_OR","COLLECT_LIST","COLLECT_SET","CORR","COUNT","COUNT","COUNT","COUNT_IF","COUNT_MIN_SKETCH","COVAR_POP","COVAR_SAMP","EVERY","FIRST","FIRST_VALUE","GROUPING","GROUPING_ID","KURTOSIS","LAST","LAST_VALUE","MAX","MAX_BY","MEAN","MIN","MIN_BY","PERCENTILE","PERCENTILE","PERCENTILE_APPROX","SKEWNESS","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","CUME_DIST","DENSE_RANK","LAG","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","ROW_NUMBER","ARRAY","ARRAY_CONTAINS","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_INTERSECT","ARRAY_JOIN","ARRAY_MAX","ARRAY_MIN","ARRAY_POSITION","ARRAY_REMOVE","ARRAY_REPEAT","ARRAY_UNION","ARRAYS_OVERLAP","ARRAYS_ZIP","FLATTEN","SEQUENCE","SHUFFLE","SLICE","SORT_ARRAY","ELEMENT_AT","ELEMENT_AT","MAP_CONCAT","MAP_ENTRIES","MAP_FROM_ARRAYS","MAP_FROM_ENTRIES","MAP_KEYS","MAP_VALUES","STR_TO_MAP","ADD_MONTHS","CURRENT_DATE","CURRENT_DATE","CURRENT_TIMESTAMP","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","DATE_ADD","DATE_FORMAT","DATE_FROM_UNIX_DATE","DATE_PART","DATE_SUB","DATE_TRUNC","DATEDIFF","DAY","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","EXTRACT","FROM_UNIXTIME","FROM_UTC_TIMESTAMP","HOUR","LAST_DAY","MAKE_DATE","MAKE_DT_INTERVAL","MAKE_INTERVAL","MAKE_TIMESTAMP","MAKE_YM_INTERVAL","MINUTE","MONTH","MONTHS_BETWEEN","NEXT_DAY","NOW","QUARTER","SECOND","SESSION_WINDOW","TIMESTAMP_MICROS","TIMESTAMP_MILLIS","TIMESTAMP_SECONDS","TO_DATE","TO_TIMESTAMP","TO_UNIX_TIMESTAMP","TO_UTC_TIMESTAMP","TRUNC","UNIX_DATE","UNIX_MICROS","UNIX_MILLIS","UNIX_SECONDS","UNIX_TIMESTAMP","WEEKDAY","WEEKOFYEAR","WINDOW","YEAR","FROM_JSON","GET_JSON_OBJECT","JSON_ARRAY_LENGTH","JSON_OBJECT_KEYS","JSON_TUPLE","SCHEMA_OF_JSON","TO_JSON","ABS","ACOS","ACOSH","AGGREGATE","ARRAY_SORT","ASCII","ASIN","ASINH","ASSERT_TRUE","ATAN","ATAN2","ATANH","BASE64","BIN","BIT_COUNT","BIT_GET","BIT_LENGTH","BROUND","BTRIM","CARDINALITY","CBRT","CEIL","CEILING","CHAR_LENGTH","CHARACTER_LENGTH","CHR","CONCAT","CONCAT_WS","CONV","COS","COSH","COT","CRC32","CURRENT_CATALOG","CURRENT_DATABASE","CURRENT_USER","DEGREES","ELT","EXP","EXPM1","FACTORIAL","FIND_IN_SET","FLOOR","FORALL","FORMAT_NUMBER","FORMAT_STRING","FROM_CSV","GETBIT","HASH","HEX","HYPOT","INITCAP","INLINE","INLINE_OUTER","INPUT_FILE_BLOCK_LENGTH","INPUT_FILE_BLOCK_START","INPUT_FILE_NAME","INSTR","ISNAN","ISNOTNULL","ISNULL","JAVA_METHOD","LCASE","LEFT","LENGTH","LEVENSHTEIN","LN","LOCATE","LOG","LOG10","LOG1P","LOG2","LOWER","LPAD","LTRIM","MAP_FILTER","MAP_ZIP_WITH","MD5","MOD","MONOTONICALLY_INCREASING_ID","NAMED_STRUCT","NANVL","NEGATIVE","NVL","NVL2","OCTET_LENGTH","OVERLAY","PARSE_URL","PI","PMOD","POSEXPLODE","POSEXPLODE_OUTER","POSITION","POSITIVE","POW","POWER","PRINTF","RADIANS","RAISE_ERROR","RAND","RANDN","RANDOM","REFLECT","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_LIKE","REGEXP_REPLACE","REPEAT","REPLACE","REVERSE","RIGHT","RINT","ROUND","RPAD","RTRIM","SCHEMA_OF_CSV","SENTENCES","SHA","SHA1","SHA2","SHIFTLEFT","SHIFTRIGHT","SHIFTRIGHTUNSIGNED","SIGN","SIGNUM","SIN","SINH","SOUNDEX","SPACE","SPARK_PARTITION_ID","SPLIT","SQRT","STACK","SUBSTR","SUBSTRING","SUBSTRING_INDEX","TAN","TANH","TO_CSV","TRANSFORM_KEYS","TRANSFORM_VALUES","TRANSLATE","TRIM","TRY_ADD","TRY_DIVIDE","TYPEOF","UCASE","UNBASE64","UNHEX","UPPER","UUID","VERSION","WIDTH_BUCKET","XPATH","XPATH_BOOLEAN","XPATH_DOUBLE","XPATH_FLOAT","XPATH_INT","XPATH_LONG","XPATH_NUMBER","XPATH_SHORT","XPATH_STRING","XXHASH64","ZIP_WITH","CAST","COALESCE","NULLIF"],LOa=Ja(["SELECT [ALL | DISTINCT]"]),VOa=Ja(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","SORT BY","CLUSTER BY","DISTRIBUTE BY","LIMIT","INSERT [INTO | OVERWRITE] [TABLE]","VALUES","INSERT OVERWRITE [LOCAL] DIRECTORY","LOAD DATA [LOCAL] INPATH","[OVERWRITE] INTO TABLE"]),Rvi=Ja(["CREATE [EXTERNAL] TABLE [IF NOT EXISTS]"]),Xhr=Ja(["CREATE [OR REPLACE] [GLOBAL TEMPORARY | TEMPORARY] VIEW [IF NOT EXISTS]","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD COLUMNS","DROP {COLUMN | COLUMNS}","RENAME TO","RENAME COLUMN","ALTER COLUMN","TRUNCATE TABLE","LATERAL VIEW","ALTER DATABASE","ALTER VIEW","CREATE DATABASE","CREATE FUNCTION","DROP DATABASE","DROP FUNCTION","DROP VIEW","REPAIR TABLE","USE DATABASE","TABLESAMPLE","PIVOT","TRANSFORM","EXPLAIN","ADD FILE","ADD JAR","ANALYZE TABLE","CACHE TABLE","CLEAR CACHE","DESCRIBE DATABASE","DESCRIBE FUNCTION","DESCRIBE QUERY","DESCRIBE TABLE","LIST FILE","LIST JAR","REFRESH","REFRESH TABLE","REFRESH FUNCTION","RESET","SHOW COLUMNS","SHOW CREATE TABLE","SHOW DATABASES","SHOW FUNCTIONS","SHOW PARTITIONS","SHOW TABLE EXTENDED","SHOW TABLES","SHOW TBLPROPERTIES","SHOW VIEWS","UNCACHE TABLE"]),WOa=Ja(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),POa=Ja(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN","[LEFT] {ANTI | SEMI} JOIN","NATURAL [LEFT] {ANTI | SEMI} JOIN"]),OOa=Ja(["ON DELETE","ON UPDATE","CURRENT ROW","{ROWS | RANGE} BETWEEN"]),MOa={name:"spark",tokenizerOptions:{reservedSelect:LOa,reservedClauses:[...VOa,...Rvi,...Xhr],reservedSetOperations:WOa,reservedJoins:POa,reservedPhrases:OOa,supportsXor:!0,reservedKeywords:GOa,reservedDataTypes:FOa,reservedFunctionNames:ZOa,extraParens:["[]"],stringTypes:["''-bs",'""-bs',{quote:"''-raw",prefixes:["R","X"],requirePrefix:!0},{quote:'""-raw',prefixes:["R","X"],requirePrefix:!0}],identTypes:["``"],variableTypes:[{quote:"{}",prefixes:["$"],requirePrefix:!0}],operators:["%","~","^","|","&","<=>","==","!","||","->"],postProcess:QOa},formatOptions:{onelineClauses:[...Rvi,...Xhr],tabularOnelineClauses:Xhr}};function QOa(e){return e.map((t,r)=>{let s=e[r-1]||vwe,a=e[r+1]||vwe;return yIe.WINDOW(t)&&a.type==="OPEN_PAREN"?jF(qD({},t),{type:"RESERVED_FUNCTION_NAME"}):t.text==="ITEMS"&&t.type==="RESERVED_KEYWORD"&&!(s.text==="COLLECTION"&&a.text==="TERMINATED")?jF(qD({},t),{type:"IDENTIFIER",text:t.raw}):t})}var YOa=["ABS","CHANGES","CHAR","COALESCE","FORMAT","GLOB","HEX","IFNULL","IIF","INSTR","LAST_INSERT_ROWID","LENGTH","LIKE","LIKELIHOOD","LIKELY","LOAD_EXTENSION","LOWER","LTRIM","NULLIF","PRINTF","QUOTE","RANDOM","RANDOMBLOB","REPLACE","ROUND","RTRIM","SIGN","SOUNDEX","SQLITE_COMPILEOPTION_GET","SQLITE_COMPILEOPTION_USED","SQLITE_OFFSET","SQLITE_SOURCE_ID","SQLITE_VERSION","SUBSTR","SUBSTRING","TOTAL_CHANGES","TRIM","TYPEOF","UNICODE","UNLIKELY","UPPER","ZEROBLOB","AVG","COUNT","GROUP_CONCAT","MAX","MIN","SUM","TOTAL","DATE","TIME","DATETIME","JULIANDAY","UNIXEPOCH","STRFTIME","row_number","rank","dense_rank","percent_rank","cume_dist","ntile","lag","lead","first_value","last_value","nth_value","ACOS","ACOSH","ASIN","ASINH","ATAN","ATAN2","ATANH","CEIL","CEILING","COS","COSH","DEGREES","EXP","FLOOR","LN","LOG","LOG","LOG10","LOG2","MOD","PI","POW","POWER","RADIANS","SIN","SINH","SQRT","TAN","TANH","TRUNC","JSON","JSON_ARRAY","JSON_ARRAY_LENGTH","JSON_ARRAY_LENGTH","JSON_EXTRACT","JSON_INSERT","JSON_OBJECT","JSON_PATCH","JSON_REMOVE","JSON_REPLACE","JSON_SET","JSON_TYPE","JSON_TYPE","JSON_VALID","JSON_QUOTE","JSON_GROUP_ARRAY","JSON_GROUP_OBJECT","JSON_EACH","JSON_TREE","CAST"],HOa=["ABORT","ACTION","ADD","AFTER","ALL","ALTER","AND","ARE","ALWAYS","ANALYZE","AS","ASC","ATTACH","AUTOINCREMENT","BEFORE","BEGIN","BETWEEN","BY","CASCADE","CASE","CAST","CHECK","COLLATE","COLUMN","COMMIT","CONFLICT","CONSTRAINT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATABASE","DEFAULT","DEFERRABLE","DEFERRED","DELETE","DESC","DETACH","DISTINCT","DO","DROP","EACH","ELSE","END","ESCAPE","EXCEPT","EXCLUDE","EXCLUSIVE","EXISTS","EXPLAIN","FAIL","FILTER","FIRST","FOLLOWING","FOR","FOREIGN","FROM","FULL","GENERATED","GLOB","GROUP","GROUPS","HAVING","IF","IGNORE","IMMEDIATE","IN","INDEX","INDEXED","INITIALLY","INNER","INSERT","INSTEAD","INTERSECT","INTO","IS","ISNULL","JOIN","KEY","LAST","LEFT","LIKE","LIMIT","MATCH","MATERIALIZED","NATURAL","NO","NOT","NOTHING","NOTNULL","NULL","NULLS","OF","OFFSET","ON","ONLY","OPEN","OR","ORDER","OTHERS","OUTER","OVER","PARTITION","PLAN","PRAGMA","PRECEDING","PRIMARY","QUERY","RAISE","RANGE","RECURSIVE","REFERENCES","REGEXP","REINDEX","RELEASE","RENAME","REPLACE","RESTRICT","RETURNING","RIGHT","ROLLBACK","ROW","ROWS","SAVEPOINT","SELECT","SET","TABLE","TEMP","TEMPORARY","THEN","TIES","TO","TRANSACTION","TRIGGER","UNBOUNDED","UNION","UNIQUE","UPDATE","USING","VACUUM","VALUES","VIEW","VIRTUAL","WHEN","WHERE","WINDOW","WITH","WITHOUT"],XOa=["ANY","ARRAY","BLOB","CHARACTER","DECIMAL","INT","INTEGER","NATIVE CHARACTER","NCHAR","NUMERIC","NVARCHAR","REAL","TEXT","VARCHAR","VARYING CHARACTER"],JOa=Ja(["SELECT [ALL | DISTINCT]"]),UOa=Ja(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [OR ABORT | OR FAIL | OR IGNORE | OR REPLACE | OR ROLLBACK] INTO","REPLACE INTO","VALUES","SET"]),Dvi=Ja(["CREATE [TEMPORARY | TEMP] TABLE [IF NOT EXISTS]"]),Jhr=Ja(["CREATE [TEMPORARY | TEMP] VIEW [IF NOT EXISTS]","UPDATE [OR ABORT | OR FAIL | OR IGNORE | OR REPLACE | OR ROLLBACK]","ON CONFLICT","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","DROP [COLUMN]","RENAME [COLUMN]","RENAME TO","SET SCHEMA"]),KOa=Ja(["UNION [ALL]","EXCEPT","INTERSECT"]),jOa=Ja(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),zOa=Ja(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE | GROUPS} BETWEEN"]),qOa={name:"sqlite",tokenizerOptions:{reservedSelect:JOa,reservedClauses:[...UOa,...Dvi,...Jhr],reservedSetOperations:KOa,reservedJoins:jOa,reservedPhrases:zOa,reservedKeywords:HOa,reservedDataTypes:XOa,reservedFunctionNames:YOa,stringTypes:["''-qq",{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq',"``","[]"],paramTypes:{positional:!0,numbered:["?"],named:[":","@","$"]},operators:["%","~","&","|","<<",">>","==","->","->>","||"]},formatOptions:{onelineClauses:[...Dvi,...Jhr],tabularOnelineClauses:Jhr}},$Oa=["GROUPING","RANK","DENSE_RANK","PERCENT_RANK","CUME_DIST","ROW_NUMBER","POSITION","OCCURRENCES_REGEX","POSITION_REGEX","EXTRACT","CHAR_LENGTH","CHARACTER_LENGTH","OCTET_LENGTH","CARDINALITY","ABS","MOD","LN","EXP","POWER","SQRT","FLOOR","CEIL","CEILING","WIDTH_BUCKET","SUBSTRING","SUBSTRING_REGEX","UPPER","LOWER","CONVERT","TRANSLATE","TRANSLATE_REGEX","TRIM","OVERLAY","NORMALIZE","SPECIFICTYPE","CURRENT_DATE","CURRENT_TIME","LOCALTIME","CURRENT_TIMESTAMP","LOCALTIMESTAMP","COUNT","AVG","MAX","MIN","SUM","STDDEV_POP","STDDEV_SAMP","VAR_SAMP","VAR_POP","COLLECT","FUSION","INTERSECTION","COVAR_POP","COVAR_SAMP","CORR","REGR_SLOPE","REGR_INTERCEPT","REGR_COUNT","REGR_R2","REGR_AVGX","REGR_AVGY","REGR_SXX","REGR_SYY","REGR_SXY","PERCENTILE_CONT","PERCENTILE_DISC","CAST","COALESCE","NULLIF","ROUND","SIN","COS","TAN","ASIN","ACOS","ATAN"],eMa=["ALL","ALLOCATE","ALTER","ANY","ARE","AS","ASC","ASENSITIVE","ASYMMETRIC","AT","ATOMIC","AUTHORIZATION","BEGIN","BETWEEN","BOTH","BY","CALL","CALLED","CASCADED","CAST","CHECK","CLOSE","COALESCE","COLLATE","COLUMN","COMMIT","CONDITION","CONNECT","CONSTRAINT","CORRESPONDING","CREATE","CROSS","CUBE","CURRENT","CURRENT_CATALOG","CURRENT_DEFAULT_TRANSFORM_GROUP","CURRENT_PATH","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_TRANSFORM_GROUP_FOR_TYPE","CURRENT_USER","CURSOR","CYCLE","DEALLOCATE","DAY","DECLARE","DEFAULT","DELETE","DEREF","DESC","DESCRIBE","DETERMINISTIC","DISCONNECT","DISTINCT","DROP","DYNAMIC","EACH","ELEMENT","END-EXEC","ESCAPE","EVERY","EXCEPT","EXEC","EXECUTE","EXISTS","EXTERNAL","FALSE","FETCH","FILTER","FOR","FOREIGN","FREE","FROM","FULL","FUNCTION","GET","GLOBAL","GRANT","GROUP","HAVING","HOLD","HOUR","IDENTITY","IN","INDICATOR","INNER","INOUT","INSENSITIVE","INSERT","INTERSECT","INTO","IS","LANGUAGE","LARGE","LATERAL","LEADING","LEFT","LIKE","LIKE_REGEX","LOCAL","MATCH","MEMBER","MERGE","METHOD","MINUTE","MODIFIES","MODULE","MONTH","NATURAL","NEW","NO","NONE","NOT","NULL","NULLIF","OF","OLD","ON","ONLY","OPEN","ORDER","OUT","OUTER","OVER","OVERLAPS","PARAMETER","PARTITION","PRECISION","PREPARE","PRIMARY","PROCEDURE","RANGE","READS","REAL","RECURSIVE","REF","REFERENCES","REFERENCING","RELEASE","RESULT","RETURN","RETURNS","REVOKE","RIGHT","ROLLBACK","ROLLUP","ROW","ROWS","SAVEPOINT","SCOPE","SCROLL","SEARCH","SECOND","SELECT","SENSITIVE","SESSION_USER","SET","SIMILAR","SOME","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","START","STATIC","SUBMULTISET","SYMMETRIC","SYSTEM","SYSTEM_USER","TABLE","TABLESAMPLE","THEN","TIMEZONE_HOUR","TIMEZONE_MINUTE","TO","TRAILING","TRANSLATION","TREAT","TRIGGER","TRUE","UESCAPE","UNION","UNIQUE","UNKNOWN","UNNEST","UPDATE","USER","USING","VALUE","VALUES","WHENEVER","WINDOW","WITHIN","WITHOUT","YEAR"],tMa=["ARRAY","BIGINT","BINARY LARGE OBJECT","BINARY VARYING","BINARY","BLOB","BOOLEAN","CHAR LARGE OBJECT","CHAR VARYING","CHAR","CHARACTER LARGE OBJECT","CHARACTER VARYING","CHARACTER","CLOB","DATE","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","MULTISET","NATIONAL CHAR VARYING","NATIONAL CHAR","NATIONAL CHARACTER LARGE OBJECT","NATIONAL CHARACTER VARYING","NATIONAL CHARACTER","NCHAR LARGE OBJECT","NCHAR VARYING","NCHAR","NCLOB","NUMERIC","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR"],rMa=Ja(["SELECT [ALL | DISTINCT]"]),nMa=Ja(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT INTO","VALUES","SET"]),xvi=Ja(["CREATE [GLOBAL TEMPORARY | LOCAL TEMPORARY] TABLE"]),Uhr=Ja(["CREATE [RECURSIVE] VIEW","UPDATE","WHERE CURRENT OF","DELETE FROM","DROP TABLE","ALTER TABLE","ADD COLUMN","DROP [COLUMN]","RENAME COLUMN","RENAME TO","ALTER [COLUMN]","{SET | DROP} DEFAULT","ADD SCOPE","DROP SCOPE {CASCADE | RESTRICT}","RESTART WITH","TRUNCATE TABLE","SET SCHEMA"]),iMa=Ja(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),sMa=Ja(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),oMa=Ja(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE} BETWEEN"]),aMa={name:"sql",tokenizerOptions:{reservedSelect:rMa,reservedClauses:[...nMa,...xvi,...Uhr],reservedSetOperations:iMa,reservedJoins:sMa,reservedPhrases:oMa,reservedKeywords:eMa,reservedDataTypes:tMa,reservedFunctionNames:$Oa,stringTypes:[{quote:"''-qq-bs",prefixes:["N","U&"]},{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq',"``"],paramTypes:{positional:!0},operators:["||"]},formatOptions:{onelineClauses:[...xvi,...Uhr],tabularOnelineClauses:Uhr}},cMa=["ABS","ACOS","ALL_MATCH","ANY_MATCH","APPROX_DISTINCT","APPROX_MOST_FREQUENT","APPROX_PERCENTILE","APPROX_SET","ARBITRARY","ARRAYS_OVERLAP","ARRAY_AGG","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_INTERSECT","ARRAY_JOIN","ARRAY_MAX","ARRAY_MIN","ARRAY_POSITION","ARRAY_REMOVE","ARRAY_SORT","ARRAY_UNION","ASIN","ATAN","ATAN2","AT_TIMEZONE","AVG","BAR","BETA_CDF","BING_TILE","BING_TILES_AROUND","BING_TILE_AT","BING_TILE_COORDINATES","BING_TILE_POLYGON","BING_TILE_QUADKEY","BING_TILE_ZOOM_LEVEL","BITWISE_AND","BITWISE_AND_AGG","BITWISE_LEFT_SHIFT","BITWISE_NOT","BITWISE_OR","BITWISE_OR_AGG","BITWISE_RIGHT_SHIFT","BITWISE_RIGHT_SHIFT_ARITHMETIC","BITWISE_XOR","BIT_COUNT","BOOL_AND","BOOL_OR","CARDINALITY","CAST","CBRT","CEIL","CEILING","CHAR2HEXINT","CHECKSUM","CHR","CLASSIFY","COALESCE","CODEPOINT","COLOR","COMBINATIONS","CONCAT","CONCAT_WS","CONTAINS","CONTAINS_SEQUENCE","CONVEX_HULL_AGG","CORR","COS","COSH","COSINE_SIMILARITY","COUNT","COUNT_IF","COVAR_POP","COVAR_SAMP","CRC32","CUME_DIST","CURRENT_CATALOG","CURRENT_DATE","CURRENT_GROUPS","CURRENT_SCHEMA","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","DATE","DATE_ADD","DATE_DIFF","DATE_FORMAT","DATE_PARSE","DATE_TRUNC","DAY","DAY_OF_MONTH","DAY_OF_WEEK","DAY_OF_YEAR","DEGREES","DENSE_RANK","DOW","DOY","E","ELEMENT_AT","EMPTY_APPROX_SET","EVALUATE_CLASSIFIER_PREDICTIONS","EVERY","EXP","EXTRACT","FEATURES","FILTER","FIRST_VALUE","FLATTEN","FLOOR","FORMAT","FORMAT_DATETIME","FORMAT_NUMBER","FROM_BASE","FROM_BASE32","FROM_BASE64","FROM_BASE64URL","FROM_BIG_ENDIAN_32","FROM_BIG_ENDIAN_64","FROM_ENCODED_POLYLINE","FROM_GEOJSON_GEOMETRY","FROM_HEX","FROM_IEEE754_32","FROM_IEEE754_64","FROM_ISO8601_DATE","FROM_ISO8601_TIMESTAMP","FROM_ISO8601_TIMESTAMP_NANOS","FROM_UNIXTIME","FROM_UNIXTIME_NANOS","FROM_UTF8","GEOMETRIC_MEAN","GEOMETRY_FROM_HADOOP_SHAPE","GEOMETRY_INVALID_REASON","GEOMETRY_NEAREST_POINTS","GEOMETRY_TO_BING_TILES","GEOMETRY_UNION","GEOMETRY_UNION_AGG","GREATEST","GREAT_CIRCLE_DISTANCE","HAMMING_DISTANCE","HASH_COUNTS","HISTOGRAM","HMAC_MD5","HMAC_SHA1","HMAC_SHA256","HMAC_SHA512","HOUR","HUMAN_READABLE_SECONDS","IF","INDEX","INFINITY","INTERSECTION_CARDINALITY","INVERSE_BETA_CDF","INVERSE_NORMAL_CDF","IS_FINITE","IS_INFINITE","IS_JSON_SCALAR","IS_NAN","JACCARD_INDEX","JSON_ARRAY_CONTAINS","JSON_ARRAY_GET","JSON_ARRAY_LENGTH","JSON_EXISTS","JSON_EXTRACT","JSON_EXTRACT_SCALAR","JSON_FORMAT","JSON_PARSE","JSON_QUERY","JSON_SIZE","JSON_VALUE","KURTOSIS","LAG","LAST_DAY_OF_MONTH","LAST_VALUE","LEAD","LEARN_CLASSIFIER","LEARN_LIBSVM_CLASSIFIER","LEARN_LIBSVM_REGRESSOR","LEARN_REGRESSOR","LEAST","LENGTH","LEVENSHTEIN_DISTANCE","LINE_INTERPOLATE_POINT","LINE_INTERPOLATE_POINTS","LINE_LOCATE_POINT","LISTAGG","LN","LOCALTIME","LOCALTIMESTAMP","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","LUHN_CHECK","MAKE_SET_DIGEST","MAP","MAP_AGG","MAP_CONCAT","MAP_ENTRIES","MAP_FILTER","MAP_FROM_ENTRIES","MAP_KEYS","MAP_UNION","MAP_VALUES","MAP_ZIP_WITH","MAX","MAX_BY","MD5","MERGE","MERGE_SET_DIGEST","MILLISECOND","MIN","MINUTE","MIN_BY","MOD","MONTH","MULTIMAP_AGG","MULTIMAP_FROM_ENTRIES","MURMUR3","NAN","NGRAMS","NONE_MATCH","NORMALIZE","NORMAL_CDF","NOW","NTH_VALUE","NTILE","NULLIF","NUMERIC_HISTOGRAM","OBJECTID","OBJECTID_TIMESTAMP","PARSE_DATA_SIZE","PARSE_DATETIME","PARSE_DURATION","PERCENT_RANK","PI","POSITION","POW","POWER","QDIGEST_AGG","QUARTER","RADIANS","RAND","RANDOM","RANK","REDUCE","REDUCE_AGG","REGEXP_COUNT","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_LIKE","REGEXP_POSITION","REGEXP_REPLACE","REGEXP_SPLIT","REGRESS","REGR_INTERCEPT","REGR_SLOPE","RENDER","REPEAT","REPLACE","REVERSE","RGB","ROUND","ROW_NUMBER","RPAD","RTRIM","SECOND","SEQUENCE","SHA1","SHA256","SHA512","SHUFFLE","SIGN","SIMPLIFY_GEOMETRY","SIN","SKEWNESS","SLICE","SOUNDEX","SPATIAL_PARTITIONING","SPATIAL_PARTITIONS","SPLIT","SPLIT_PART","SPLIT_TO_MAP","SPLIT_TO_MULTIMAP","SPOOKY_HASH_V2_32","SPOOKY_HASH_V2_64","SQRT","STARTS_WITH","STDDEV","STDDEV_POP","STDDEV_SAMP","STRPOS","ST_AREA","ST_ASBINARY","ST_ASTEXT","ST_BOUNDARY","ST_BUFFER","ST_CENTROID","ST_CONTAINS","ST_CONVEXHULL","ST_COORDDIM","ST_CROSSES","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_ENDPOINT","ST_ENVELOPE","ST_ENVELOPEASPTS","ST_EQUALS","ST_EXTERIORRING","ST_GEOMETRIES","ST_GEOMETRYFROMTEXT","ST_GEOMETRYN","ST_GEOMETRYTYPE","ST_GEOMFROMBINARY","ST_INTERIORRINGN","ST_INTERIORRINGS","ST_INTERSECTION","ST_INTERSECTS","ST_ISCLOSED","ST_ISEMPTY","ST_ISRING","ST_ISSIMPLE","ST_ISVALID","ST_LENGTH","ST_LINEFROMTEXT","ST_LINESTRING","ST_MULTIPOINT","ST_NUMGEOMETRIES","ST_NUMINTERIORRING","ST_NUMPOINTS","ST_OVERLAPS","ST_POINT","ST_POINTN","ST_POINTS","ST_POLYGON","ST_RELATE","ST_STARTPOINT","ST_SYMDIFFERENCE","ST_TOUCHES","ST_UNION","ST_WITHIN","ST_X","ST_XMAX","ST_XMIN","ST_Y","ST_YMAX","ST_YMIN","SUBSTR","SUBSTRING","SUM","TAN","TANH","TDIGEST_AGG","TIMESTAMP_OBJECTID","TIMEZONE_HOUR","TIMEZONE_MINUTE","TO_BASE","TO_BASE32","TO_BASE64","TO_BASE64URL","TO_BIG_ENDIAN_32","TO_BIG_ENDIAN_64","TO_CHAR","TO_DATE","TO_ENCODED_POLYLINE","TO_GEOJSON_GEOMETRY","TO_GEOMETRY","TO_HEX","TO_IEEE754_32","TO_IEEE754_64","TO_ISO8601","TO_MILLISECONDS","TO_SPHERICAL_GEOGRAPHY","TO_TIMESTAMP","TO_UNIXTIME","TO_UTF8","TRANSFORM","TRANSFORM_KEYS","TRANSFORM_VALUES","TRANSLATE","TRIM","TRIM_ARRAY","TRUNCATE","TRY","TRY_CAST","TYPEOF","UPPER","URL_DECODE","URL_ENCODE","URL_EXTRACT_FRAGMENT","URL_EXTRACT_HOST","URL_EXTRACT_PARAMETER","URL_EXTRACT_PATH","URL_EXTRACT_PORT","URL_EXTRACT_PROTOCOL","URL_EXTRACT_QUERY","UUID","VALUES_AT_QUANTILES","VALUE_AT_QUANTILE","VARIANCE","VAR_POP","VAR_SAMP","VERSION","WEEK","WEEK_OF_YEAR","WIDTH_BUCKET","WILSON_INTERVAL_LOWER","WILSON_INTERVAL_UPPER","WITH_TIMEZONE","WORD_STEM","XXHASH64","YEAR","YEAR_OF_WEEK","YOW","ZIP","ZIP_WITH","CLASSIFIER","FIRST","LAST","MATCH_NUMBER","NEXT","PERMUTE","PREV"],lMa=["ABSENT","ADD","ADMIN","AFTER","ALL","ALTER","ANALYZE","AND","ANY","AS","ASC","AT","AUTHORIZATION","BERNOULLI","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CATALOGS","COLUMN","COLUMNS","COMMENT","COMMIT","COMMITTED","CONDITIONAL","CONSTRAINT","COPARTITION","CREATE","CROSS","CUBE","CURRENT","CURRENT_PATH","CURRENT_ROLE","DATA","DEALLOCATE","DEFAULT","DEFINE","DEFINER","DELETE","DENY","DESC","DESCRIBE","DESCRIPTOR","DISTINCT","DISTRIBUTED","DOUBLE","DROP","ELSE","EMPTY","ENCODING","END","ERROR","ESCAPE","EXCEPT","EXCLUDING","EXECUTE","EXISTS","EXPLAIN","FALSE","FETCH","FINAL","FIRST","FOLLOWING","FOR","FROM","FULL","FUNCTIONS","GRANT","GRANTED","GRANTS","GRAPHVIZ","GROUP","GROUPING","GROUPS","HAVING","IGNORE","IN","INCLUDING","INITIAL","INNER","INPUT","INSERT","INTERSECT","INTERVAL","INTO","INVOKER","IO","IS","ISOLATION","JOIN","JSON","JSON_ARRAY","JSON_OBJECT","KEEP","KEY","KEYS","LAST","LATERAL","LEADING","LEFT","LEVEL","LIKE","LIMIT","LOCAL","LOGICAL","MATCH","MATCHED","MATCHES","MATCH_RECOGNIZE","MATERIALIZED","MEASURES","NATURAL","NEXT","NFC","NFD","NFKC","NFKD","NO","NONE","NOT","NULL","NULLS","OBJECT","OF","OFFSET","OMIT","ON","ONE","ONLY","OPTION","OR","ORDER","ORDINALITY","OUTER","OUTPUT","OVER","OVERFLOW","PARTITION","PARTITIONS","PASSING","PAST","PATH","PATTERN","PER","PERMUTE","PRECEDING","PRECISION","PREPARE","PRIVILEGES","PROPERTIES","PRUNE","QUOTES","RANGE","READ","RECURSIVE","REFRESH","RENAME","REPEATABLE","RESET","RESPECT","RESTRICT","RETURNING","REVOKE","RIGHT","ROLE","ROLES","ROLLBACK","ROLLUP","ROW","ROWS","RUNNING","SCALAR","SCHEMA","SCHEMAS","SECURITY","SEEK","SELECT","SERIALIZABLE","SESSION","SET","SETS","SHOW","SKIP","SOME","START","STATS","STRING","SUBSET","SYSTEM","TABLE","TABLES","TABLESAMPLE","TEXT","THEN","TIES","TIME","TIMESTAMP","TO","TRAILING","TRANSACTION","TRUE","TYPE","UESCAPE","UNBOUNDED","UNCOMMITTED","UNCONDITIONAL","UNION","UNIQUE","UNKNOWN","UNMATCHED","UNNEST","UPDATE","USE","USER","USING","UTF16","UTF32","UTF8","VALIDATE","VALUE","VALUES","VERBOSE","VIEW","WHEN","WHERE","WINDOW","WITH","WITHIN","WITHOUT","WORK","WRAPPER","WRITE","ZONE"],uMa=["BIGINT","INT","INTEGER","SMALLINT","TINYINT","BOOLEAN","DATE","DECIMAL","REAL","DOUBLE","HYPERLOGLOG","QDIGEST","TDIGEST","P4HYPERLOGLOG","INTERVAL","TIMESTAMP","TIME","VARBINARY","VARCHAR","CHAR","ROW","ARRAY","MAP","JSON","JSON2016","IPADDRESS","GEOMETRY","UUID","SETDIGEST","JONIREGEXP","RE2JREGEXP","LIKEPATTERN","COLOR","CODEPOINTS","FUNCTION","JSONPATH"],gMa=Ja(["SELECT [ALL | DISTINCT]"]),AMa=Ja(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT INTO","VALUES","SET","MATCH_RECOGNIZE","MEASURES","ONE ROW PER MATCH","ALL ROWS PER MATCH","AFTER MATCH","PATTERN","SUBSET","DEFINE"]),kvi=Ja(["CREATE TABLE [IF NOT EXISTS]"]),Khr=Ja(["CREATE [OR REPLACE] [MATERIALIZED] VIEW","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","ADD COLUMN [IF NOT EXISTS]","DROP COLUMN [IF EXISTS]","RENAME COLUMN [IF EXISTS]","RENAME TO","SET AUTHORIZATION [USER | ROLE]","SET PROPERTIES","EXECUTE","TRUNCATE TABLE","ALTER SCHEMA","ALTER MATERIALIZED VIEW","ALTER VIEW","CREATE SCHEMA","CREATE ROLE","DROP SCHEMA","DROP MATERIALIZED VIEW","DROP VIEW","DROP ROLE","EXPLAIN","ANALYZE","EXPLAIN ANALYZE","EXPLAIN ANALYZE VERBOSE","USE","DESCRIBE INPUT","DESCRIBE OUTPUT","REFRESH MATERIALIZED VIEW","RESET SESSION","SET SESSION","SET PATH","SET TIME ZONE","SHOW GRANTS","SHOW CREATE TABLE","SHOW CREATE SCHEMA","SHOW CREATE VIEW","SHOW CREATE MATERIALIZED VIEW","SHOW TABLES","SHOW SCHEMAS","SHOW CATALOGS","SHOW COLUMNS","SHOW STATS FOR","SHOW ROLES","SHOW CURRENT ROLES","SHOW ROLE GRANTS","SHOW FUNCTIONS","SHOW SESSION"]),dMa=Ja(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),pMa=Ja(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),fMa=Ja(["{ROWS | RANGE | GROUPS} BETWEEN","IS [NOT] DISTINCT FROM"]),IMa={name:"trino",tokenizerOptions:{reservedSelect:gMa,reservedClauses:[...AMa,...kvi,...Khr],reservedSetOperations:dMa,reservedJoins:pMa,reservedPhrases:fMa,reservedKeywords:lMa,reservedDataTypes:uMa,reservedFunctionNames:cMa,extraParens:["[]","{}"],stringTypes:[{quote:"''-qq",prefixes:["U&"]},{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq'],paramTypes:{positional:!0},operators:["%","->","=>",":","||","|","^","$"]},formatOptions:{onelineClauses:[...kvi,...Khr],tabularOnelineClauses:Khr}},CMa=["APPROX_COUNT_DISTINCT","AVG","CHECKSUM_AGG","COUNT","COUNT_BIG","GROUPING","GROUPING_ID","MAX","MIN","STDEV","STDEVP","SUM","VAR","VARP","CUME_DIST","FIRST_VALUE","LAG","LAST_VALUE","LEAD","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","Collation - COLLATIONPROPERTY","Collation - TERTIARY_WEIGHTS","@@DBTS","@@LANGID","@@LANGUAGE","@@LOCK_TIMEOUT","@@MAX_CONNECTIONS","@@MAX_PRECISION","@@NESTLEVEL","@@OPTIONS","@@REMSERVER","@@SERVERNAME","@@SERVICENAME","@@SPID","@@TEXTSIZE","@@VERSION","CAST","CONVERT","PARSE","TRY_CAST","TRY_CONVERT","TRY_PARSE","ASYMKEY_ID","ASYMKEYPROPERTY","CERTPROPERTY","CERT_ID","CRYPT_GEN_RANDOM","DECRYPTBYASYMKEY","DECRYPTBYCERT","DECRYPTBYKEY","DECRYPTBYKEYAUTOASYMKEY","DECRYPTBYKEYAUTOCERT","DECRYPTBYPASSPHRASE","ENCRYPTBYASYMKEY","ENCRYPTBYCERT","ENCRYPTBYKEY","ENCRYPTBYPASSPHRASE","HASHBYTES","IS_OBJECTSIGNED","KEY_GUID","KEY_ID","KEY_NAME","SIGNBYASYMKEY","SIGNBYCERT","SYMKEYPROPERTY","VERIFYSIGNEDBYCERT","VERIFYSIGNEDBYASYMKEY","@@CURSOR_ROWS","@@FETCH_STATUS","CURSOR_STATUS","DATALENGTH","IDENT_CURRENT","IDENT_INCR","IDENT_SEED","IDENTITY","SQL_VARIANT_PROPERTY","@@DATEFIRST","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_TIMEZONE_ID","DATEADD","DATEDIFF","DATEDIFF_BIG","DATEFROMPARTS","DATENAME","DATEPART","DATETIME2FROMPARTS","DATETIMEFROMPARTS","DATETIMEOFFSETFROMPARTS","DAY","EOMONTH","GETDATE","GETUTCDATE","ISDATE","MONTH","SMALLDATETIMEFROMPARTS","SWITCHOFFSET","SYSDATETIME","SYSDATETIMEOFFSET","SYSUTCDATETIME","TIMEFROMPARTS","TODATETIMEOFFSET","YEAR","JSON","ISJSON","JSON_VALUE","JSON_QUERY","JSON_MODIFY","ABS","ACOS","ASIN","ATAN","ATN2","CEILING","COS","COT","DEGREES","EXP","FLOOR","LOG","LOG10","PI","POWER","RADIANS","RAND","ROUND","SIGN","SIN","SQRT","SQUARE","TAN","CHOOSE","GREATEST","IIF","LEAST","@@PROCID","APP_NAME","APPLOCK_MODE","APPLOCK_TEST","ASSEMBLYPROPERTY","COL_LENGTH","COL_NAME","COLUMNPROPERTY","DATABASEPROPERTYEX","DB_ID","DB_NAME","FILE_ID","FILE_IDEX","FILE_NAME","FILEGROUP_ID","FILEGROUP_NAME","FILEGROUPPROPERTY","FILEPROPERTY","FILEPROPERTYEX","FULLTEXTCATALOGPROPERTY","FULLTEXTSERVICEPROPERTY","INDEX_COL","INDEXKEY_PROPERTY","INDEXPROPERTY","NEXT VALUE FOR","OBJECT_DEFINITION","OBJECT_ID","OBJECT_NAME","OBJECT_SCHEMA_NAME","OBJECTPROPERTY","OBJECTPROPERTYEX","ORIGINAL_DB_NAME","PARSENAME","SCHEMA_ID","SCHEMA_NAME","SCOPE_IDENTITY","SERVERPROPERTY","STATS_DATE","TYPE_ID","TYPE_NAME","TYPEPROPERTY","DENSE_RANK","NTILE","RANK","ROW_NUMBER","PUBLISHINGSERVERNAME","CERTENCODED","CERTPRIVATEKEY","CURRENT_USER","DATABASE_PRINCIPAL_ID","HAS_DBACCESS","HAS_PERMS_BY_NAME","IS_MEMBER","IS_ROLEMEMBER","IS_SRVROLEMEMBER","LOGINPROPERTY","ORIGINAL_LOGIN","PERMISSIONS","PWDENCRYPT","PWDCOMPARE","SESSION_USER","SESSIONPROPERTY","SUSER_ID","SUSER_NAME","SUSER_SID","SUSER_SNAME","SYSTEM_USER","USER","USER_ID","USER_NAME","ASCII","CHAR","CHARINDEX","CONCAT","CONCAT_WS","DIFFERENCE","FORMAT","LEFT","LEN","LOWER","LTRIM","NCHAR","PATINDEX","QUOTENAME","REPLACE","REPLICATE","REVERSE","RIGHT","RTRIM","SOUNDEX","SPACE","STR","STRING_AGG","STRING_ESCAPE","STUFF","SUBSTRING","TRANSLATE","TRIM","UNICODE","UPPER","$PARTITION","@@ERROR","@@IDENTITY","@@PACK_RECEIVED","@@ROWCOUNT","@@TRANCOUNT","BINARY_CHECKSUM","CHECKSUM","COMPRESS","CONNECTIONPROPERTY","CONTEXT_INFO","CURRENT_REQUEST_ID","CURRENT_TRANSACTION_ID","DECOMPRESS","ERROR_LINE","ERROR_MESSAGE","ERROR_NUMBER","ERROR_PROCEDURE","ERROR_SEVERITY","ERROR_STATE","FORMATMESSAGE","GET_FILESTREAM_TRANSACTION_CONTEXT","GETANSINULL","HOST_ID","HOST_NAME","ISNULL","ISNUMERIC","MIN_ACTIVE_ROWVERSION","NEWID","NEWSEQUENTIALID","ROWCOUNT_BIG","SESSION_CONTEXT","XACT_STATE","@@CONNECTIONS","@@CPU_BUSY","@@IDLE","@@IO_BUSY","@@PACK_SENT","@@PACKET_ERRORS","@@TIMETICKS","@@TOTAL_ERRORS","@@TOTAL_READ","@@TOTAL_WRITE","TEXTPTR","TEXTVALID","COLUMNS_UPDATED","EVENTDATA","TRIGGER_NESTLEVEL","UPDATE","COALESCE","NULLIF"],mMa=["ADD","ALL","ALTER","AND","ANY","AS","ASC","AUTHORIZATION","BACKUP","BEGIN","BETWEEN","BREAK","BROWSE","BULK","BY","CASCADE","CHECK","CHECKPOINT","CLOSE","CLUSTERED","COALESCE","COLLATE","COLUMN","COMMIT","COMPUTE","CONSTRAINT","CONTAINS","CONTAINSTABLE","CONTINUE","CONVERT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DBCC","DEALLOCATE","DECLARE","DEFAULT","DELETE","DENY","DESC","DISK","DISTINCT","DISTRIBUTED","DROP","DUMP","ERRLVL","ESCAPE","EXEC","EXECUTE","EXISTS","EXIT","EXTERNAL","FETCH","FILE","FILLFACTOR","FOR","FOREIGN","FREETEXT","FREETEXTTABLE","FROM","FULL","FUNCTION","GOTO","GRANT","GROUP","HAVING","HOLDLOCK","IDENTITY","IDENTITYCOL","IDENTITY_INSERT","IF","IN","INDEX","INNER","INSERT","INTERSECT","INTO","IS","JOIN","KEY","KILL","LEFT","LIKE","LINENO","LOAD","MERGE","NOCHECK","NONCLUSTERED","NOT","NULL","NULLIF","OF","OFF","OFFSETS","ON","OPEN","OPENDATASOURCE","OPENQUERY","OPENROWSET","OPENXML","OPTION","OR","ORDER","OUTER","OVER","PERCENT","PIVOT","PLAN","PRIMARY","PRINT","PROC","PROCEDURE","PUBLIC","RAISERROR","READ","READTEXT","RECONFIGURE","REFERENCES","REPLICATION","RESTORE","RESTRICT","RETURN","REVERT","REVOKE","RIGHT","ROLLBACK","ROWCOUNT","ROWGUIDCOL","RULE","SAVE","SCHEMA","SECURITYAUDIT","SELECT","SEMANTICKEYPHRASETABLE","SEMANTICSIMILARITYDETAILSTABLE","SEMANTICSIMILARITYTABLE","SESSION_USER","SET","SETUSER","SHUTDOWN","SOME","STATISTICS","SYSTEM_USER","TABLE","TABLESAMPLE","TEXTSIZE","THEN","TO","TOP","TRAN","TRANSACTION","TRIGGER","TRUNCATE","TRY_CONVERT","TSEQUAL","UNION","UNIQUE","UNPIVOT","UPDATE","UPDATETEXT","USE","USER","VALUES","VIEW","WAITFOR","WHERE","WHILE","WITH","WITHIN GROUP","WRITETEXT","ABSOLUTE","ACTION","ADA","ALLOCATE","ARE","ASSERTION","AT","AVG","BIT_LENGTH","BOTH","CASCADED","CAST","CATALOG","CHARACTER_LENGTH","CHAR_LENGTH","COLLATION","CONNECT","CONNECTION","CONSTRAINTS","CORRESPONDING","COUNT","DAY","DEFERRABLE","DEFERRED","DESCRIBE","DESCRIPTOR","DIAGNOSTICS","DISCONNECT","DOMAIN","END-EXEC","EXCEPTION","EXTRACT","FALSE","FIRST","FORTRAN","FOUND","GET","GLOBAL","GO","HOUR","IMMEDIATE","INCLUDE","INDICATOR","INITIALLY","INPUT","INSENSITIVE","INTERVAL","ISOLATION","LANGUAGE","LAST","LEADING","LEVEL","LOCAL","LOWER","MATCH","MAX","MIN","MINUTE","MODULE","MONTH","NAMES","NATURAL","NEXT","NO","NONE","OCTET_LENGTH","ONLY","OUTPUT","OVERLAPS","PAD","PARTIAL","PASCAL","POSITION","PREPARE","PRESERVE","PRIOR","PRIVILEGES","RELATIVE","ROWS","SCROLL","SECOND","SECTION","SESSION","SIZE","SPACE","SQL","SQLCA","SQLCODE","SQLERROR","SQLSTATE","SQLWARNING","SUBSTRING","SUM","TEMPORARY","TIMEZONE_HOUR","TIMEZONE_MINUTE","TRAILING","TRANSLATE","TRANSLATION","TRIM","TRUE","UNKNOWN","UPPER","USAGE","VALUE","WHENEVER","WORK","WRITE","YEAR","ZONE"],hMa=["BINARY","BIT","CHAR","CHAR","CHARACTER","DATE","DATETIME2","DATETIMEOFFSET","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","NATIONAL","NCHAR","NUMERIC","NVARCHAR","PRECISION","REAL","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR"],_Ma=Ja(["SELECT [ALL | DISTINCT]"]),yMa=Ja(["WITH","INTO","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","OFFSET","FETCH {FIRST | NEXT}","FOR {BROWSE | XML | JSON}","OPTION","INSERT [INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [BY TARGET | BY SOURCE] [THEN]","UPDATE SET","CREATE [OR ALTER] {PROC | PROCEDURE}"]),Gvi=Ja(["CREATE TABLE"]),jhr=Ja(["CREATE [OR ALTER] [MATERIALIZED] VIEW","UPDATE","WHERE CURRENT OF","DELETE [FROM]","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD","DROP COLUMN [IF EXISTS]","ALTER COLUMN","TRUNCATE TABLE","ADD SENSITIVITY CLASSIFICATION","ADD SIGNATURE","AGGREGATE","ANSI_DEFAULTS","ANSI_NULLS","ANSI_NULL_DFLT_OFF","ANSI_NULL_DFLT_ON","ANSI_PADDING","ANSI_WARNINGS","APPLICATION ROLE","ARITHABORT","ARITHIGNORE","ASSEMBLY","ASYMMETRIC KEY","AUTHORIZATION","AVAILABILITY GROUP","BACKUP","BACKUP CERTIFICATE","BACKUP MASTER KEY","BACKUP SERVICE MASTER KEY","BEGIN CONVERSATION TIMER","BEGIN DIALOG CONVERSATION","BROKER PRIORITY","BULK INSERT","CERTIFICATE","CLOSE MASTER KEY","CLOSE SYMMETRIC KEY","COLLATE","COLUMN ENCRYPTION KEY","COLUMN MASTER KEY","COLUMNSTORE INDEX","CONCAT_NULL_YIELDS_NULL","CONTEXT_INFO","CONTRACT","CREDENTIAL","CRYPTOGRAPHIC PROVIDER","CURSOR_CLOSE_ON_COMMIT","DATABASE","DATABASE AUDIT SPECIFICATION","DATABASE ENCRYPTION KEY","DATABASE HADR","DATABASE SCOPED CONFIGURATION","DATABASE SCOPED CREDENTIAL","DATABASE SET","DATEFIRST","DATEFORMAT","DEADLOCK_PRIORITY","DENY","DENY XML","DISABLE TRIGGER","ENABLE TRIGGER","END CONVERSATION","ENDPOINT","EVENT NOTIFICATION","EVENT SESSION","EXECUTE AS","EXTERNAL DATA SOURCE","EXTERNAL FILE FORMAT","EXTERNAL LANGUAGE","EXTERNAL LIBRARY","EXTERNAL RESOURCE POOL","EXTERNAL TABLE","FIPS_FLAGGER","FMTONLY","FORCEPLAN","FULLTEXT CATALOG","FULLTEXT INDEX","FULLTEXT STOPLIST","FUNCTION","GET CONVERSATION GROUP","GET_TRANSMISSION_STATUS","GRANT","GRANT XML","IDENTITY_INSERT","IMPLICIT_TRANSACTIONS","INDEX","LANGUAGE","LOCK_TIMEOUT","LOGIN","MASTER KEY","MESSAGE TYPE","MOVE CONVERSATION","NOCOUNT","NOEXEC","NUMERIC_ROUNDABORT","OFFSETS","OPEN MASTER KEY","OPEN SYMMETRIC KEY","PARSEONLY","PARTITION FUNCTION","PARTITION SCHEME","PROCEDURE","QUERY_GOVERNOR_COST_LIMIT","QUEUE","QUOTED_IDENTIFIER","RECEIVE","REMOTE SERVICE BINDING","REMOTE_PROC_TRANSACTIONS","RESOURCE GOVERNOR","RESOURCE POOL","RESTORE","RESTORE FILELISTONLY","RESTORE HEADERONLY","RESTORE LABELONLY","RESTORE MASTER KEY","RESTORE REWINDONLY","RESTORE SERVICE MASTER KEY","RESTORE VERIFYONLY","REVERT","REVOKE","REVOKE XML","ROLE","ROUTE","ROWCOUNT","RULE","SCHEMA","SEARCH PROPERTY LIST","SECURITY POLICY","SELECTIVE XML INDEX","SEND","SENSITIVITY CLASSIFICATION","SEQUENCE","SERVER AUDIT","SERVER AUDIT SPECIFICATION","SERVER CONFIGURATION","SERVER ROLE","SERVICE","SERVICE MASTER KEY","SETUSER","SHOWPLAN_ALL","SHOWPLAN_TEXT","SHOWPLAN_XML","SIGNATURE","SPATIAL INDEX","STATISTICS","STATISTICS IO","STATISTICS PROFILE","STATISTICS TIME","STATISTICS XML","SYMMETRIC KEY","SYNONYM","TABLE","TABLE IDENTITY","TEXTSIZE","TRANSACTION ISOLATION LEVEL","TRIGGER","TYPE","UPDATE STATISTICS","USER","WORKLOAD GROUP","XACT_ABORT","XML INDEX","XML SCHEMA COLLECTION"]),bMa=Ja(["UNION [ALL]","EXCEPT","INTERSECT"]),EMa=Ja(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","{CROSS | OUTER} APPLY"]),BMa=Ja(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE} BETWEEN"]),vMa={name:"transactsql",tokenizerOptions:{reservedSelect:_Ma,reservedClauses:[...yMa,...Gvi,...jhr],reservedSetOperations:bMa,reservedJoins:EMa,reservedPhrases:BMa,reservedKeywords:mMa,reservedDataTypes:hMa,reservedFunctionNames:CMa,nestedBlockComments:!0,stringTypes:[{quote:"''-qq",prefixes:["N"]}],identTypes:['""-qq',"[]"],identChars:{first:"#@",rest:"#@$"},paramTypes:{named:["@"],quoted:["@"]},operators:["%","&","|","^","~","!<","!>","+=","-=","*=","/=","%=","|=","&=","^=","::",":"],propertyAccessOperators:[".."]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...Gvi,...jhr],tabularOnelineClauses:jhr}},SMa=["ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","_BINARY","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DROP","DUAL","EACH","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","EXTRA_JOIN","FALSE","FETCH","FOR","FORCE","FORCE_COMPILED_MODE","FORCE_INTERPRETER_MODE","FOREIGN","FROM","FULL","FULLTEXT","GRANT","GROUP","HAVING","HEARTBEAT_NO_LOGGING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","IN","_INTERNAL_DYNAMIC_TYPECAST","INTERSECT","INTERVAL","INTO","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LOOP","LOW_PRIORITY","MATCH","MAXVALUE","MINUS","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NO_QUERY_REWRITE","NOT","NO_WRITE_TO_BINLOG","NO_QUERY_REWRITE","NULL","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PRIMARY","PROCEDURE","PURGE","RANGE","READ","READS","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESTRICT","RETURN","REVOKE","RIGHT","RIGHT_ANTI_JOIN","RIGHT_SEMI_JOIN","RIGHT_STRAIGHT_JOIN","RLIKE","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SEMI_JOIN","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SPATIAL","SPECIFIC","SQL","SQL_BIG_RESULT","SQL_BUFFER_RESULT","SQL_CACHE","SQL_CALC_FOUND_ROWS","SQLEXCEPTION","SQL_NO_CACHE","SQL_NO_LOGGING","SQL_SMALL_RESULT","SQLSTATE","SQLWARNING","STRAIGHT_JOIN","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNBOUNDED","UNDO","UNION","UNIQUE","UNLOCK","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","_UTF8","VALUES","WHEN","WHERE","WHILE","WINDOW","WITH","WITHIN","WRITE","XOR","YEAR_MONTH","ZEROFILL"],wMa=["BIGINT","BINARY","BIT","BLOB","CHAR","CHARACTER","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONG","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","UNSIGNED","VARBINARY","VARCHAR","VARCHARACTER","YEAR"],TMa=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","APPROX_COUNT_DISTINCT","APPROX_COUNT_DISTINCT_ACCUMULATE","APPROX_COUNT_DISTINCT_COMBINE","APPROX_COUNT_DISTINCT_ESTIMATE","APPROX_GEOGRAPHY_INTERSECTS","APPROX_PERCENTILE","ASCII","ASIN","ATAN","ATAN2","AVG","BIN","BINARY","BIT_AND","BIT_COUNT","BIT_OR","BIT_XOR","CAST","CEIL","CEILING","CHAR","CHARACTER_LENGTH","CHAR_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COLLECT","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATEDIFF","DATE_FORMAT","DATE_SUB","DATE_TRUNC","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEFAULT","DEGREES","DENSE_RANK","DIV","DOT_PRODUCT","ELT","EUCLIDEAN_DISTANCE","EXP","EXTRACT","FIELD","FIRST","FIRST_VALUE","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GEOGRAPHY_AREA","GEOGRAPHY_CONTAINS","GEOGRAPHY_DISTANCE","GEOGRAPHY_INTERSECTS","GEOGRAPHY_LATITUDE","GEOGRAPHY_LENGTH","GEOGRAPHY_LONGITUDE","GEOGRAPHY_POINT","GEOGRAPHY_WITHIN_DISTANCE","GEOMETRY_AREA","GEOMETRY_CONTAINS","GEOMETRY_DISTANCE","GEOMETRY_FILTER","GEOMETRY_INTERSECTS","GEOMETRY_LENGTH","GEOMETRY_POINT","GEOMETRY_WITHIN_DISTANCE","GEOMETRY_X","GEOMETRY_Y","GREATEST","GROUPING","GROUP_CONCAT","HEX","HIGHLIGHT","HOUR","ICU_VERSION","IF","IFNULL","INET_ATON","INET_NTOA","INET6_ATON","INET6_NTOA","INITCAP","INSERT","INSTR","INTERVAL","IS","IS NULL","JSON_AGG","JSON_ARRAY_CONTAINS_DOUBLE","JSON_ARRAY_CONTAINS_JSON","JSON_ARRAY_CONTAINS_STRING","JSON_ARRAY_PUSH_DOUBLE","JSON_ARRAY_PUSH_JSON","JSON_ARRAY_PUSH_STRING","JSON_DELETE_KEY","JSON_EXTRACT_DOUBLE","JSON_EXTRACT_JSON","JSON_EXTRACT_STRING","JSON_EXTRACT_BIGINT","JSON_GET_TYPE","JSON_LENGTH","JSON_SET_DOUBLE","JSON_SET_JSON","JSON_SET_STRING","JSON_SPLICE_DOUBLE","JSON_SPLICE_JSON","JSON_SPLICE_STRING","LAG","LAST_DAY","LAST_VALUE","LCASE","LEAD","LEAST","LEFT","LENGTH","LIKE","LN","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LPAD","LTRIM","MATCH","MAX","MD5","MEDIAN","MICROSECOND","MIN","MINUTE","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","NOT","NOW","NTH_VALUE","NTILE","NULLIF","OCTET_LENGTH","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PI","PIVOT","POSITION","POW","POWER","QUARTER","QUOTE","RADIANS","RAND","RANK","REGEXP","REPEAT","REPLACE","REVERSE","RIGHT","RLIKE","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCALAR","SCHEMA","SEC_TO_TIME","SHA1","SHA2","SIGMOID","SIGN","SIN","SLEEP","SPLIT","SOUNDEX","SOUNDS LIKE","SOURCE_POS_WAIT","SPACE","SQRT","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUM","SYS_GUID","TAN","TIME","TIMEDIFF","TIME_BUCKET","TIME_FORMAT","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TIME_TO_SEC","TO_BASE64","TO_CHAR","TO_DAYS","TO_JSON","TO_NUMBER","TO_SECONDS","TO_TIMESTAMP","TRIM","TRUNC","TRUNCATE","UCASE","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","VALUES","VARIANCE","VAR_POP","VAR_SAMP","VECTOR_SUB","VERSION","WEEK","WEEKDAY","WEEKOFYEAR","YEAR"],NMa=Ja(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),RMa=Ja(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [IGNORE] [INTO]","VALUES","REPLACE [INTO]","ON DUPLICATE KEY UPDATE","SET","CREATE [OR REPLACE] [TEMPORARY] PROCEDURE [IF NOT EXISTS]","CREATE [OR REPLACE] [EXTERNAL] FUNCTION"]),Fvi=Ja(["CREATE [ROWSTORE] [REFERENCE | TEMPORARY | GLOBAL TEMPORARY] TABLE [IF NOT EXISTS]"]),zhr=Ja(["CREATE VIEW","UPDATE","DELETE [FROM]","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER [ONLINE] TABLE","ADD [COLUMN]","ADD [UNIQUE] {INDEX | KEY}","DROP [COLUMN]","MODIFY [COLUMN]","CHANGE","RENAME [TO | AS]","TRUNCATE [TABLE]","ADD AGGREGATOR","ADD LEAF","AGGREGATOR SET AS MASTER","ALTER DATABASE","ALTER PIPELINE","ALTER RESOURCE POOL","ALTER USER","ALTER VIEW","ANALYZE TABLE","ATTACH DATABASE","ATTACH LEAF","ATTACH LEAF ALL","BACKUP DATABASE","BINLOG","BOOTSTRAP AGGREGATOR","CACHE INDEX","CALL","CHANGE","CHANGE MASTER TO","CHANGE REPLICATION FILTER","CHANGE REPLICATION SOURCE TO","CHECK BLOB CHECKSUM","CHECK TABLE","CHECKSUM TABLE","CLEAR ORPHAN DATABASES","CLONE","COMMIT","CREATE DATABASE","CREATE GROUP","CREATE INDEX","CREATE LINK","CREATE MILESTONE","CREATE PIPELINE","CREATE RESOURCE POOL","CREATE ROLE","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DETACH DATABASE","DETACH PIPELINE","DROP DATABASE","DROP FUNCTION","DROP INDEX","DROP LINK","DROP PIPELINE","DROP PROCEDURE","DROP RESOURCE POOL","DROP ROLE","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","FORCE","GRANT","HANDLER","HELP","KILL CONNECTION","KILLALL QUERIES","LOAD DATA","LOAD INDEX INTO CACHE","LOAD XML","LOCK INSTANCE FOR BACKUP","LOCK TABLES","MASTER_POS_WAIT","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","REBALANCE PARTITIONS","RELEASE SAVEPOINT","REMOVE AGGREGATOR","REMOVE LEAF","REPAIR TABLE","REPLACE","REPLICATE DATABASE","RESET","RESET MASTER","RESET PERSIST","RESET REPLICA","RESET SLAVE","RESTART","RESTORE DATABASE","RESTORE REDUNDANCY","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE FUNCTION","SHOW CREATE PIPELINE","SHOW CREATE PROCEDURE","SHOW CREATE TABLE","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW RELAYLOG EVENTS","SHOW REPLICA STATUS","SHOW REPLICAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW VARIABLES","SHOW WARNINGS","SHUTDOWN","SNAPSHOT DATABASE","SOURCE_POS_WAIT","START GROUP_REPLICATION","START PIPELINE","START REPLICA","START SLAVE","START TRANSACTION","STOP GROUP_REPLICATION","STOP PIPELINE","STOP REPLICA","STOP REPLICATING","STOP SLAVE","TEST PIPELINE","UNLOCK INSTANCE","UNLOCK TABLES","USE","XA","ITERATE","LEAVE","LOOP","REPEAT","RETURN","WHILE"]),DMa=Ja(["UNION [ALL | DISTINCT]","EXCEPT","INTERSECT","MINUS"]),xMa=Ja(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),kMa=Ja(["ON DELETE","ON UPDATE","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),GMa={name:"singlestoredb",tokenizerOptions:{reservedSelect:NMa,reservedClauses:[...RMa,...Fvi,...zhr],reservedSetOperations:DMa,reservedJoins:xMa,reservedPhrases:kMa,reservedKeywords:SMa,reservedDataTypes:wMa,reservedFunctionNames:TMa,stringTypes:['""-qq-bs',"''-qq-bs",{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_$]+"},{quote:"``",prefixes:["@"],requirePrefix:!0}],lineCommentTypes:["--","#"],operators:[":=","&","|","^","~","<<",">>","<=>","&&","||","::","::$","::%",":>","!:>","*.*"],postProcess:ayt},formatOptions:{alwaysDenseOperators:["::","::$","::%"],onelineClauses:[...Fvi,...zhr],tabularOnelineClauses:zhr}},FMa=["ABS","ACOS","ACOSH","ADD_MONTHS","ALL_USER_NAMES","ANY_VALUE","APPROX_COUNT_DISTINCT","APPROX_PERCENTILE","APPROX_PERCENTILE_ACCUMULATE","APPROX_PERCENTILE_COMBINE","APPROX_PERCENTILE_ESTIMATE","APPROX_TOP_K","APPROX_TOP_K_ACCUMULATE","APPROX_TOP_K_COMBINE","APPROX_TOP_K_ESTIMATE","APPROXIMATE_JACCARD_INDEX","APPROXIMATE_SIMILARITY","ARRAY_AGG","ARRAY_APPEND","ARRAY_CAT","ARRAY_COMPACT","ARRAY_CONSTRUCT","ARRAY_CONSTRUCT_COMPACT","ARRAY_CONTAINS","ARRAY_INSERT","ARRAY_INTERSECTION","ARRAY_POSITION","ARRAY_PREPEND","ARRAY_SIZE","ARRAY_SLICE","ARRAY_TO_STRING","ARRAY_UNION_AGG","ARRAY_UNIQUE_AGG","ARRAYS_OVERLAP","AS_ARRAY","AS_BINARY","AS_BOOLEAN","AS_CHAR","AS_VARCHAR","AS_DATE","AS_DECIMAL","AS_NUMBER","AS_DOUBLE","AS_REAL","AS_INTEGER","AS_OBJECT","AS_TIME","AS_TIMESTAMP_LTZ","AS_TIMESTAMP_NTZ","AS_TIMESTAMP_TZ","ASCII","ASIN","ASINH","ATAN","ATAN2","ATANH","AUTO_REFRESH_REGISTRATION_HISTORY","AUTOMATIC_CLUSTERING_HISTORY","AVG","BASE64_DECODE_BINARY","BASE64_DECODE_STRING","BASE64_ENCODE","BIT_LENGTH","BITAND","BITAND_AGG","BITMAP_BIT_POSITION","BITMAP_BUCKET_NUMBER","BITMAP_CONSTRUCT_AGG","BITMAP_COUNT","BITMAP_OR_AGG","BITNOT","BITOR","BITOR_AGG","BITSHIFTLEFT","BITSHIFTRIGHT","BITXOR","BITXOR_AGG","BOOLAND","BOOLAND_AGG","BOOLNOT","BOOLOR","BOOLOR_AGG","BOOLXOR","BOOLXOR_AGG","BUILD_SCOPED_FILE_URL","BUILD_STAGE_FILE_URL","CASE","CAST","CBRT","CEIL","CHARINDEX","CHECK_JSON","CHECK_XML","CHR","CHAR","COALESCE","COLLATE","COLLATION","COMPLETE_TASK_GRAPHS","COMPRESS","CONCAT","CONCAT_WS","CONDITIONAL_CHANGE_EVENT","CONDITIONAL_TRUE_EVENT","CONTAINS","CONVERT_TIMEZONE","COPY_HISTORY","CORR","COS","COSH","COT","COUNT","COUNT_IF","COVAR_POP","COVAR_SAMP","CUME_DIST","CURRENT_ACCOUNT","CURRENT_AVAILABLE_ROLES","CURRENT_CLIENT","CURRENT_DATABASE","CURRENT_DATE","CURRENT_IP_ADDRESS","CURRENT_REGION","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_SECONDARY_ROLES","CURRENT_SESSION","CURRENT_STATEMENT","CURRENT_TASK_GRAPHS","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TRANSACTION","CURRENT_USER","CURRENT_VERSION","CURRENT_WAREHOUSE","DATA_TRANSFER_HISTORY","DATABASE_REFRESH_HISTORY","DATABASE_REFRESH_PROGRESS","DATABASE_REFRESH_PROGRESS_BY_JOB","DATABASE_STORAGE_USAGE_HISTORY","DATE_FROM_PARTS","DATE_PART","DATE_TRUNC","DATEADD","DATEDIFF","DAYNAME","DECODE","DECOMPRESS_BINARY","DECOMPRESS_STRING","DECRYPT","DECRYPT_RAW","DEGREES","DENSE_RANK","DIV0","EDITDISTANCE","ENCRYPT","ENCRYPT_RAW","ENDSWITH","EQUAL_NULL","EXP","EXPLAIN_JSON","EXTERNAL_FUNCTIONS_HISTORY","EXTERNAL_TABLE_FILES","EXTERNAL_TABLE_FILE_REGISTRATION_HISTORY","EXTRACT","EXTRACT_SEMANTIC_CATEGORIES","FACTORIAL","FIRST_VALUE","FLATTEN","FLOOR","GENERATE_COLUMN_DESCRIPTION","GENERATOR","GET","GET_ABSOLUTE_PATH","GET_DDL","GET_IGNORE_CASE","GET_OBJECT_REFERENCES","GET_PATH","GET_PRESIGNED_URL","GET_RELATIVE_PATH","GET_STAGE_LOCATION","GETBIT","GREATEST","GREATEST_IGNORE_NULLS","GROUPING","GROUPING_ID","HASH","HASH_AGG","HAVERSINE","HEX_DECODE_BINARY","HEX_DECODE_STRING","HEX_ENCODE","HLL","HLL_ACCUMULATE","HLL_COMBINE","HLL_ESTIMATE","HLL_EXPORT","HLL_IMPORT","HOUR","MINUTE","SECOND","IFF","IFNULL","ILIKE","ILIKE ANY","INFER_SCHEMA","INITCAP","INSERT","INVOKER_ROLE","INVOKER_SHARE","IS_ARRAY","IS_BINARY","IS_BOOLEAN","IS_CHAR","IS_VARCHAR","IS_DATE","IS_DATE_VALUE","IS_DECIMAL","IS_DOUBLE","IS_REAL","IS_GRANTED_TO_INVOKER_ROLE","IS_INTEGER","IS_NULL_VALUE","IS_OBJECT","IS_ROLE_IN_SESSION","IS_TIME","IS_TIMESTAMP_LTZ","IS_TIMESTAMP_NTZ","IS_TIMESTAMP_TZ","JAROWINKLER_SIMILARITY","JSON_EXTRACT_PATH_TEXT","KURTOSIS","LAG","LAST_DAY","LAST_QUERY_ID","LAST_TRANSACTION","LAST_VALUE","LEAD","LEAST","LEFT","LENGTH","LEN","LIKE","LIKE ALL","LIKE ANY","LISTAGG","LN","LOCALTIME","LOCALTIMESTAMP","LOG","LOGIN_HISTORY","LOGIN_HISTORY_BY_USER","LOWER","LPAD","LTRIM","MATERIALIZED_VIEW_REFRESH_HISTORY","MD5","MD5_HEX","MD5_BINARY","MD5_NUMBER \u2014 Obsoleted","MD5_NUMBER_LOWER64","MD5_NUMBER_UPPER64","MEDIAN","MIN","MAX","MINHASH","MINHASH_COMBINE","MOD","MODE","MONTHNAME","MONTHS_BETWEEN","NEXT_DAY","NORMAL","NTH_VALUE","NTILE","NULLIF","NULLIFZERO","NVL","NVL2","OBJECT_AGG","OBJECT_CONSTRUCT","OBJECT_CONSTRUCT_KEEP_NULL","OBJECT_DELETE","OBJECT_INSERT","OBJECT_KEYS","OBJECT_PICK","OCTET_LENGTH","PARSE_IP","PARSE_JSON","PARSE_URL","PARSE_XML","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PI","PIPE_USAGE_HISTORY","POLICY_CONTEXT","POLICY_REFERENCES","POSITION","POW","POWER","PREVIOUS_DAY","QUERY_ACCELERATION_HISTORY","QUERY_HISTORY","QUERY_HISTORY_BY_SESSION","QUERY_HISTORY_BY_USER","QUERY_HISTORY_BY_WAREHOUSE","RADIANS","RANDOM","RANDSTR","RANK","RATIO_TO_REPORT","REGEXP","REGEXP_COUNT","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","REGEXP_SUBSTR_ALL","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","REGR_VALX","REGR_VALY","REPEAT","REPLACE","REPLICATION_GROUP_REFRESH_HISTORY","REPLICATION_GROUP_REFRESH_PROGRESS","REPLICATION_GROUP_REFRESH_PROGRESS_BY_JOB","REPLICATION_GROUP_USAGE_HISTORY","REPLICATION_USAGE_HISTORY","REST_EVENT_HISTORY","RESULT_SCAN","REVERSE","RIGHT","RLIKE","ROUND","ROW_NUMBER","RPAD","RTRIM","RTRIMMED_LENGTH","SEARCH_OPTIMIZATION_HISTORY","SEQ1","SEQ2","SEQ4","SEQ8","SERVERLESS_TASK_HISTORY","SHA1","SHA1_HEX","SHA1_BINARY","SHA2","SHA2_HEX","SHA2_BINARY","SIGN","SIN","SINH","SKEW","SOUNDEX","SPACE","SPLIT","SPLIT_PART","SPLIT_TO_TABLE","SQRT","SQUARE","ST_AREA","ST_ASEWKB","ST_ASEWKT","ST_ASGEOJSON","ST_ASWKB","ST_ASBINARY","ST_ASWKT","ST_ASTEXT","ST_AZIMUTH","ST_CENTROID","ST_COLLECT","ST_CONTAINS","ST_COVEREDBY","ST_COVERS","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DWITHIN","ST_ENDPOINT","ST_ENVELOPE","ST_GEOGFROMGEOHASH","ST_GEOGPOINTFROMGEOHASH","ST_GEOGRAPHYFROMWKB","ST_GEOGRAPHYFROMWKT","ST_GEOHASH","ST_GEOMETRYFROMWKB","ST_GEOMETRYFROMWKT","ST_HAUSDORFFDISTANCE","ST_INTERSECTION","ST_INTERSECTS","ST_LENGTH","ST_MAKEGEOMPOINT","ST_GEOM_POINT","ST_MAKELINE","ST_MAKEPOINT","ST_POINT","ST_MAKEPOLYGON","ST_POLYGON","ST_NPOINTS","ST_NUMPOINTS","ST_PERIMETER","ST_POINTN","ST_SETSRID","ST_SIMPLIFY","ST_SRID","ST_STARTPOINT","ST_SYMDIFFERENCE","ST_UNION","ST_WITHIN","ST_X","ST_XMAX","ST_XMIN","ST_Y","ST_YMAX","ST_YMIN","STAGE_DIRECTORY_FILE_REGISTRATION_HISTORY","STAGE_STORAGE_USAGE_HISTORY","STARTSWITH","STDDEV","STDDEV_POP","STDDEV_SAMP","STRIP_NULL_VALUE","STRTOK","STRTOK_SPLIT_TO_TABLE","STRTOK_TO_ARRAY","SUBSTR","SUBSTRING","SUM","SYSDATE","SYSTEM$ABORT_SESSION","SYSTEM$ABORT_TRANSACTION","SYSTEM$AUTHORIZE_PRIVATELINK","SYSTEM$AUTHORIZE_STAGE_PRIVATELINK_ACCESS","SYSTEM$BEHAVIOR_CHANGE_BUNDLE_STATUS","SYSTEM$CANCEL_ALL_QUERIES","SYSTEM$CANCEL_QUERY","SYSTEM$CLUSTERING_DEPTH","SYSTEM$CLUSTERING_INFORMATION","SYSTEM$CLUSTERING_RATIO ","SYSTEM$CURRENT_USER_TASK_NAME","SYSTEM$DATABASE_REFRESH_HISTORY ","SYSTEM$DATABASE_REFRESH_PROGRESS","SYSTEM$DATABASE_REFRESH_PROGRESS_BY_JOB ","SYSTEM$DISABLE_BEHAVIOR_CHANGE_BUNDLE","SYSTEM$DISABLE_DATABASE_REPLICATION","SYSTEM$ENABLE_BEHAVIOR_CHANGE_BUNDLE","SYSTEM$ESTIMATE_QUERY_ACCELERATION","SYSTEM$ESTIMATE_SEARCH_OPTIMIZATION_COSTS","SYSTEM$EXPLAIN_JSON_TO_TEXT","SYSTEM$EXPLAIN_PLAN_JSON","SYSTEM$EXTERNAL_TABLE_PIPE_STATUS","SYSTEM$GENERATE_SAML_CSR","SYSTEM$GENERATE_SCIM_ACCESS_TOKEN","SYSTEM$GET_AWS_SNS_IAM_POLICY","SYSTEM$GET_PREDECESSOR_RETURN_VALUE","SYSTEM$GET_PRIVATELINK","SYSTEM$GET_PRIVATELINK_AUTHORIZED_ENDPOINTS","SYSTEM$GET_PRIVATELINK_CONFIG","SYSTEM$GET_SNOWFLAKE_PLATFORM_INFO","SYSTEM$GET_TAG","SYSTEM$GET_TAG_ALLOWED_VALUES","SYSTEM$GET_TAG_ON_CURRENT_COLUMN","SYSTEM$GET_TAG_ON_CURRENT_TABLE","SYSTEM$GLOBAL_ACCOUNT_SET_PARAMETER","SYSTEM$LAST_CHANGE_COMMIT_TIME","SYSTEM$LINK_ACCOUNT_OBJECTS_BY_NAME","SYSTEM$MIGRATE_SAML_IDP_REGISTRATION","SYSTEM$PIPE_FORCE_RESUME","SYSTEM$PIPE_STATUS","SYSTEM$REVOKE_PRIVATELINK","SYSTEM$REVOKE_STAGE_PRIVATELINK_ACCESS","SYSTEM$SET_RETURN_VALUE","SYSTEM$SHOW_OAUTH_CLIENT_SECRETS","SYSTEM$STREAM_GET_TABLE_TIMESTAMP","SYSTEM$STREAM_HAS_DATA","SYSTEM$TASK_DEPENDENTS_ENABLE","SYSTEM$TYPEOF","SYSTEM$USER_TASK_CANCEL_ONGOING_EXECUTIONS","SYSTEM$VERIFY_EXTERNAL_OAUTH_TOKEN","SYSTEM$WAIT","SYSTEM$WHITELIST","SYSTEM$WHITELIST_PRIVATELINK","TAG_REFERENCES","TAG_REFERENCES_ALL_COLUMNS","TAG_REFERENCES_WITH_LINEAGE","TAN","TANH","TASK_DEPENDENTS","TASK_HISTORY","TIME_FROM_PARTS","TIME_SLICE","TIMEADD","TIMEDIFF","TIMESTAMP_FROM_PARTS","TIMESTAMPADD","TIMESTAMPDIFF","TO_ARRAY","TO_BINARY","TO_BOOLEAN","TO_CHAR","TO_VARCHAR","TO_DATE","DATE","TO_DECIMAL","TO_NUMBER","TO_NUMERIC","TO_DOUBLE","TO_GEOGRAPHY","TO_GEOMETRY","TO_JSON","TO_OBJECT","TO_TIME","TIME","TO_TIMESTAMP","TO_TIMESTAMP_LTZ","TO_TIMESTAMP_NTZ","TO_TIMESTAMP_TZ","TO_VARIANT","TO_XML","TRANSLATE","TRIM","TRUNCATE","TRUNC","TRUNC","TRY_BASE64_DECODE_BINARY","TRY_BASE64_DECODE_STRING","TRY_CAST","TRY_HEX_DECODE_BINARY","TRY_HEX_DECODE_STRING","TRY_PARSE_JSON","TRY_TO_BINARY","TRY_TO_BOOLEAN","TRY_TO_DATE","TRY_TO_DECIMAL","TRY_TO_NUMBER","TRY_TO_NUMERIC","TRY_TO_DOUBLE","TRY_TO_GEOGRAPHY","TRY_TO_GEOMETRY","TRY_TO_TIME","TRY_TO_TIMESTAMP","TRY_TO_TIMESTAMP_LTZ","TRY_TO_TIMESTAMP_NTZ","TRY_TO_TIMESTAMP_TZ","TYPEOF","UNICODE","UNIFORM","UPPER","UUID_STRING","VALIDATE","VALIDATE_PIPE_LOAD","VAR_POP","VAR_SAMP","VARIANCE","VARIANCE_SAMP","VARIANCE_POP","WAREHOUSE_LOAD_HISTORY","WAREHOUSE_METERING_HISTORY","WIDTH_BUCKET","XMLGET","YEAR","YEAROFWEEK","YEAROFWEEKISO","DAY","DAYOFMONTH","DAYOFWEEK","DAYOFWEEKISO","DAYOFYEAR","WEEK","WEEK","WEEKOFYEAR","WEEKISO","MONTH","QUARTER","ZEROIFNULL","ZIPF"],ZMa=["ACCOUNT","ALL","ALTER","AND","ANY","AS","BETWEEN","BY","CASE","CAST","CHECK","COLUMN","CONNECT","CONNECTION","CONSTRAINT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DATABASE","DELETE","DISTINCT","DROP","ELSE","EXISTS","FALSE","FOLLOWING","FOR","FROM","FULL","GRANT","GROUP","GSCLUSTER","HAVING","ILIKE","IN","INCREMENT","INNER","INSERT","INTERSECT","INTO","IS","ISSUE","JOIN","LATERAL","LEFT","LIKE","LOCALTIME","LOCALTIMESTAMP","MINUS","NATURAL","NOT","NULL","OF","ON","OR","ORDER","ORGANIZATION","QUALIFY","REGEXP","REVOKE","RIGHT","RLIKE","ROW","ROWS","SAMPLE","SCHEMA","SELECT","SET","SOME","START","TABLE","TABLESAMPLE","THEN","TO","TRIGGER","TRUE","TRY_CAST","UNION","UNIQUE","UPDATE","USING","VALUES","VIEW","WHEN","WHENEVER","WHERE","WITH","COMMENT"],LMa=["NUMBER","DECIMAL","NUMERIC","INT","INTEGER","BIGINT","SMALLINT","TINYINT","BYTEINT","FLOAT","FLOAT4","FLOAT8","DOUBLE","DOUBLE PRECISION","REAL","VARCHAR","CHAR","CHARACTER","STRING","TEXT","BINARY","VARBINARY","BOOLEAN","DATE","DATETIME","TIME","TIMESTAMP","TIMESTAMP_LTZ","TIMESTAMP_NTZ","TIMESTAMP","TIMESTAMP_TZ","VARIANT","OBJECT","ARRAY","GEOGRAPHY","GEOMETRY"],VMa=Ja(["SELECT [ALL | DISTINCT]"]),WMa=Ja(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","QUALIFY","LIMIT","OFFSET","FETCH [FIRST | NEXT]","INSERT [OVERWRITE] [ALL INTO | INTO | ALL | FIRST]","{THEN | ELSE} INTO","VALUES","SET","CLUSTER BY","[WITH] {MASKING POLICY | TAG | ROW ACCESS POLICY}","COPY GRANTS","USING TEMPLATE","MERGE INTO","WHEN MATCHED [AND]","THEN {UPDATE SET | DELETE}","WHEN NOT MATCHED THEN INSERT"]),Zvi=Ja(["CREATE [OR REPLACE] [VOLATILE] TABLE [IF NOT EXISTS]","CREATE [OR REPLACE] [LOCAL | GLOBAL] {TEMP|TEMPORARY} TABLE [IF NOT EXISTS]"]),qhr=Ja(["CREATE [OR REPLACE] [SECURE] [RECURSIVE] VIEW [IF NOT EXISTS]","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","RENAME TO","SWAP WITH","[SUSPEND | RESUME] RECLUSTER","DROP CLUSTERING KEY","ADD [COLUMN]","RENAME COLUMN","{ALTER | MODIFY} [COLUMN]","DROP [COLUMN]","{ADD | ALTER | MODIFY | DROP} [CONSTRAINT]","RENAME CONSTRAINT","{ADD | DROP} SEARCH OPTIMIZATION","{SET | UNSET} TAG","{ADD | DROP} ROW ACCESS POLICY","DROP ALL ROW ACCESS POLICIES","{SET | DROP} DEFAULT","{SET | DROP} NOT NULL","SET DATA TYPE","UNSET COMMENT","{SET | UNSET} MASKING POLICY","TRUNCATE [TABLE] [IF EXISTS]","ALTER ACCOUNT","ALTER API INTEGRATION","ALTER CONNECTION","ALTER DATABASE","ALTER EXTERNAL TABLE","ALTER FAILOVER GROUP","ALTER FILE FORMAT","ALTER FUNCTION","ALTER INTEGRATION","ALTER MASKING POLICY","ALTER MATERIALIZED VIEW","ALTER NETWORK POLICY","ALTER NOTIFICATION INTEGRATION","ALTER PIPE","ALTER PROCEDURE","ALTER REPLICATION GROUP","ALTER RESOURCE MONITOR","ALTER ROLE","ALTER ROW ACCESS POLICY","ALTER SCHEMA","ALTER SECURITY INTEGRATION","ALTER SEQUENCE","ALTER SESSION","ALTER SESSION POLICY","ALTER SHARE","ALTER STAGE","ALTER STORAGE INTEGRATION","ALTER STREAM","ALTER TAG","ALTER TASK","ALTER USER","ALTER VIEW","ALTER WAREHOUSE","BEGIN","CALL","COMMIT","COPY INTO","CREATE ACCOUNT","CREATE API INTEGRATION","CREATE CONNECTION","CREATE DATABASE","CREATE EXTERNAL FUNCTION","CREATE EXTERNAL TABLE","CREATE FAILOVER GROUP","CREATE FILE FORMAT","CREATE FUNCTION","CREATE INTEGRATION","CREATE MANAGED ACCOUNT","CREATE MASKING POLICY","CREATE MATERIALIZED VIEW","CREATE NETWORK POLICY","CREATE NOTIFICATION INTEGRATION","CREATE PIPE","CREATE PROCEDURE","CREATE REPLICATION GROUP","CREATE RESOURCE MONITOR","CREATE ROLE","CREATE ROW ACCESS POLICY","CREATE SCHEMA","CREATE SECURITY INTEGRATION","CREATE SEQUENCE","CREATE SESSION POLICY","CREATE SHARE","CREATE STAGE","CREATE STORAGE INTEGRATION","CREATE STREAM","CREATE TAG","CREATE TASK","CREATE USER","CREATE WAREHOUSE","DELETE","DESCRIBE DATABASE","DESCRIBE EXTERNAL TABLE","DESCRIBE FILE FORMAT","DESCRIBE FUNCTION","DESCRIBE INTEGRATION","DESCRIBE MASKING POLICY","DESCRIBE MATERIALIZED VIEW","DESCRIBE NETWORK POLICY","DESCRIBE PIPE","DESCRIBE PROCEDURE","DESCRIBE RESULT","DESCRIBE ROW ACCESS POLICY","DESCRIBE SCHEMA","DESCRIBE SEQUENCE","DESCRIBE SESSION POLICY","DESCRIBE SHARE","DESCRIBE STAGE","DESCRIBE STREAM","DESCRIBE TABLE","DESCRIBE TASK","DESCRIBE TRANSACTION","DESCRIBE USER","DESCRIBE VIEW","DESCRIBE WAREHOUSE","DROP CONNECTION","DROP DATABASE","DROP EXTERNAL TABLE","DROP FAILOVER GROUP","DROP FILE FORMAT","DROP FUNCTION","DROP INTEGRATION","DROP MANAGED ACCOUNT","DROP MASKING POLICY","DROP MATERIALIZED VIEW","DROP NETWORK POLICY","DROP PIPE","DROP PROCEDURE","DROP REPLICATION GROUP","DROP RESOURCE MONITOR","DROP ROLE","DROP ROW ACCESS POLICY","DROP SCHEMA","DROP SEQUENCE","DROP SESSION POLICY","DROP SHARE","DROP STAGE","DROP STREAM","DROP TAG","DROP TASK","DROP USER","DROP VIEW","DROP WAREHOUSE","EXECUTE IMMEDIATE","EXECUTE TASK","EXPLAIN","GET","GRANT OWNERSHIP","GRANT ROLE","INSERT","LIST","MERGE","PUT","REMOVE","REVOKE ROLE","ROLLBACK","SHOW COLUMNS","SHOW CONNECTIONS","SHOW DATABASES","SHOW DATABASES IN FAILOVER GROUP","SHOW DATABASES IN REPLICATION GROUP","SHOW DELEGATED AUTHORIZATIONS","SHOW EXTERNAL FUNCTIONS","SHOW EXTERNAL TABLES","SHOW FAILOVER GROUPS","SHOW FILE FORMATS","SHOW FUNCTIONS","SHOW GLOBAL ACCOUNTS","SHOW GRANTS","SHOW INTEGRATIONS","SHOW LOCKS","SHOW MANAGED ACCOUNTS","SHOW MASKING POLICIES","SHOW MATERIALIZED VIEWS","SHOW NETWORK POLICIES","SHOW OBJECTS","SHOW ORGANIZATION ACCOUNTS","SHOW PARAMETERS","SHOW PIPES","SHOW PRIMARY KEYS","SHOW PROCEDURES","SHOW REGIONS","SHOW REPLICATION ACCOUNTS","SHOW REPLICATION DATABASES","SHOW REPLICATION GROUPS","SHOW RESOURCE MONITORS","SHOW ROLES","SHOW ROW ACCESS POLICIES","SHOW SCHEMAS","SHOW SEQUENCES","SHOW SESSION POLICIES","SHOW SHARES","SHOW SHARES IN FAILOVER GROUP","SHOW SHARES IN REPLICATION GROUP","SHOW STAGES","SHOW STREAMS","SHOW TABLES","SHOW TAGS","SHOW TASKS","SHOW TRANSACTIONS","SHOW USER FUNCTIONS","SHOW USERS","SHOW VARIABLES","SHOW VIEWS","SHOW WAREHOUSES","TRUNCATE MATERIALIZED VIEW","UNDROP DATABASE","UNDROP SCHEMA","UNDROP TABLE","UNDROP TAG","UNSET","USE DATABASE","USE ROLE","USE SCHEMA","USE SECONDARY ROLES","USE WAREHOUSE"]),PMa=Ja(["UNION [ALL]","MINUS","EXCEPT","INTERSECT"]),OMa=Ja(["[INNER] JOIN","[NATURAL] {LEFT | RIGHT | FULL} [OUTER] JOIN","{CROSS | NATURAL} JOIN"]),MMa=Ja(["{ROWS | RANGE} BETWEEN","ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]"]),QMa={name:"snowflake",tokenizerOptions:{reservedSelect:VMa,reservedClauses:[...WMa,...Zvi,...qhr],reservedSetOperations:PMa,reservedJoins:OMa,reservedPhrases:MMa,reservedKeywords:ZMa,reservedDataTypes:LMa,reservedFunctionNames:FMa,stringTypes:["$$","''-qq-bs"],identTypes:['""-qq'],variableTypes:[{regex:"[$][1-9]\\d*"},{regex:"[$][_a-zA-Z][_a-zA-Z0-9$]*"}],extraParens:["[]"],identChars:{rest:"$"},lineCommentTypes:["--","//"],operators:["%","::","||","=>",":="],propertyAccessOperators:[":"]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...Zvi,...qhr],tabularOnelineClauses:qhr}},o5e=e=>e[e.length-1],eSi=e=>e.sort((t,r)=>r.length-t.length||t.localeCompare(r)),iyt=e=>e.replace(/\s+/gu," "),$hr=e=>/\n/.test(e),S5=e=>e.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&"),Lvi=/\s+/uy,bIe=e=>new RegExp(`(?:${e})`,"uy"),YMa=e=>e.split("").map(t=>/ /gu.test(t)?"\\s+":`[${t.toUpperCase()}${t.toLowerCase()}]`).join(""),HMa=e=>e+"(?:-"+e+")*",XMa=({prefixes:e,requirePrefix:t})=>`(?:${e.map(YMa).join("|")}${t?"":"|"})`,JMa=e=>new RegExp(`(?:${e.map(S5).join("|")}).*?(?=\r +`,raw:!0})),t==="development"&&a.push(new this.webpack.HotModuleReplacementPlugin),a}};import N3a from"node:events";import{PassThrough as R3a}from"node:stream";var wY=vt(nwe(),1);var Fmr="@namespace";var ovi=vt(nwe(),1),avi=vt($He(),1),cvi=vt($He(),1),$0t=vt(nwe(),1);var PBi=vt(yhr(),1),OBi=vt($He(),1),X0t=class extends OBi.ConsoleLogRecordExporter{export(t,r){this.sendLogRecords(t,r)}sendLogRecords(t,r){for(let s of t){let a=JSON.stringify(this._exportInfo(s));process.stdout.write(`${a} +`)}r?.({code:PBi.ExportResultCode.SUCCESS})}};var ivi=vt(yhr(),1),svi=vt($He(),1);var vhr=vt(jBi(),1),Shr=vt(rvi(),1);import{isMainThread as b3a}from"node:worker_threads";var E3a=vhr.default.default||vhr.default;function j0t(){}function B3a(e,t){e.destroyed||(t==="beforeExit"?(e.flush(),e.on("drain",()=>{e.end()})):e.flushSync())}var nvi=()=>{let e=new E3a({fd:process.stdout.fd||1});e.on("error",t),b3a&&(Shr.default.register(e,B3a),e.on("close",()=>{Shr.default.unregister(e)}));function t(r){if(r.code==="EPIPE"){e.write=j0t,e.end=j0t,e.flushSync=j0t,e.destroy=j0t;return}e.removeListener("error",t),e.emit("error",r)}return e};var v3a=function(e,t,r,s,a){if(s==="m")throw new TypeError("Private method is not writable");if(s==="a"&&!a)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?e!==t||!a:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return s==="a"?a.call(e,r):a?a.value=r:t.set(e,r),r},S3a=function(e,t,r,s){if(r==="a"&&!s)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?e!==t||!s:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?s:r==="a"?s.call(e):s?s.value:t.get(e)},z0t,q0t=class extends svi.ConsoleLogRecordExporter{constructor(){super(),z0t.set(this,void 0),v3a(this,z0t,nvi(),"f")}export(t,r){this.sendLogRecords(t,r)}sendLogRecords(t,r){for(let s of t){let a=JSON.stringify(this._exportInfo(s));S3a(this,z0t,"f").write(`${a} +`)}r?.({code:ivi.ExportResultCode.SUCCESS})}};z0t=new WeakMap;var eyt=class e{static getLoggerProvider(){if(!e.initialized&&$0t.logs.getLoggerProvider()instanceof ovi.NoopLoggerProvider){let t=new avi.LoggerProvider;t.addLogRecordProcessor(new cvi.SimpleLogRecordProcessor(process.env.JEST_WORKER_ID?new X0t:new q0t)),$0t.logs.setGlobalLoggerProvider(t),e.initialized=!0}return $0t.logs.getLoggerProvider()}};eyt.initialized=!1;var whr=vt(nwe(),1),YRl=Object.keys(whr.SeverityNumber).reduce((e,t)=>({...e,[whr.SeverityNumber[t]]:t}),{});import{fork as w3a}from"node:child_process";import{join as T3a}from"node:path";var tyt=class{constructor(t={}){this.options=t}info(t){this.options.stdout&&this.options.stdout.write(Buffer.from(JSON.stringify({body:t,severityNumber:9,attributes:{"@namespace":"webpack:start-server"}})))}error(t){this.options.stderr&&this.options.stderr.write(Buffer.from(JSON.stringify({body:t.message,severityNumber:17,attributes:{"@namespace":"webpack:start-server","@stack":t.stack}})))}};var ryt=class{options;entryFile=null;worker=null;initialized=!1;logger;constructor(t={}){this.logger=new tyt(t),this.options=t}apply(t){t.hooks.afterEmit.tapAsync({name:"StartServerPlugin"},this.afterEmit)}afterEmit=(t,r)=>{this.initialized?(this.worker?.connected&&this.worker.pid&&process.kill(this.worker.pid),this.startServer(t,r)):(this.initialized=!0,r())};startServer=(t,r)=>{this.logger.info("Starting server...");let{path:s}=t.compiler.options.output;s&&(this.entryFile=T3a(s,"index.js"),this.runWorker(this.entryFile,a=>{this.worker=a,r()}))};runWorker(t,r){let s=w3a(t,[],{silent:!0});this.options.stdout&&s.stdout?.pipe(this.options.stdout,{end:!1}),this.options.stderr&&s.stderr?.pipe(this.options.stderr,{end:!1}),setTimeout(()=>{r(s)},0)}};var Ewe=class e extends N3a{constructor(r,s){super();this.webpack=r;this.config=s}static async initialize(r){let{webpack:s,nullLoaderPath:a,tsLoaderPath:o,nodeLoaderPath:g,protoLoaderPath:p}=await import("@atls/code-runtime/webpack"),f=new kht(s,{nodeLoader:g,nullLoader:a,tsLoader:o,protoLoader:p},r);return new e(s,f)}async build(){let r=this.webpack(await this.config.build("production",[new this.webpack.ProgressPlugin((s,a)=>{this.emit("build:progress",{percent:s*100,message:a})})]));return new Promise((s,a)=>{r.run((o,g)=>{if(this.emit("end",{error:o,stats:g}),o)o.message?s([o]):a(o);else if(g){let{errors:p=[],warnings:f=[]}=g.toJson();s([...p.map(m=>({record:m,severityNumber:wY.SeverityNumber.ERROR})),...f.map(m=>({record:m,severityNumber:wY.SeverityNumber.WARN}))])}else s([])})})}async watch(r){let s=new R3a;return s.on("data",a=>{a.toString().split(/\r?\n/).filter(Boolean).forEach(o=>{try{r(JSON.parse(o))}catch{r({severityNumber:wY.SeverityNumber.INFO,body:o})}})}),this.webpack(await this.config.build("development",[new ryt({stdout:s,stderr:s}),new this.webpack.ProgressPlugin((a,o)=>{this.emit("build:progress",{percent:a*100,message:o})})])).watch({},(a,o)=>{if(this.emit("end",{error:a,stats:o}),a)r(a);else if(o){let{errors:g=[],warnings:p=[]}=o.toJson();p.forEach(f=>{r({record:f,severityNumber:wY.SeverityNumber.WARN})}),g.forEach(f=>{r({record:f,severityNumber:wY.SeverityNumber.ERROR})})}})}};var vSi=vt(il(),1);Zl();var lvi=vt(xc(),1),gvi=vt(Ac(),1),uvi=({children:e})=>e?(0,gvi.jsx)(lvi.Text,{children:e}):null;var Dhr=vt(xc(),1);var xhr=vt($a(),1);var D3a=(e,t)=>(e=e.replace(/((?r.toLowerCase()),e.replace(/(\p{Uppercase_Letter}+)(\p{Uppercase_Letter}\p{Lowercase_Letter}+)/gu,(r,s,a)=>s+t+a.toLowerCase()));function Thr(e,{separator:t="_",preserveConsecutiveUppercase:r=!1}={}){if(!(typeof e=="string"&&typeof t=="string"))throw new TypeError("The `text` and `separator` arguments should be of type `string`");if(e.length<2)return r?e:e.toLowerCase();let s=`$1${t}$2`,a=e.replace(/([\p{Lowercase_Letter}\d])(\p{Uppercase_Letter})/gu,s);return r?D3a(a,t):a.replace(/(\p{Uppercase_Letter})(\p{Uppercase_Letter}\p{Lowercase_Letter}+)/gu,s).toLowerCase()}var dvi=vt(Avi(),1),khr=vt(Ac(),1),pvi=({children:e})=>{let t=(0,xhr.useMemo)(()=>typeof e=="string"?Thr(e,{separator:"-"}):e,[e]),r=(0,xhr.useMemo)(()=>t&&typeof t=="string"?(0,dvi.default)(t.split(":")[0]).color:"#d75f00",[t]);return t?Array.isArray(t)?t.map(s=>(0,khr.jsx)(Dhr.Text,{color:r,children:s},wW())):(0,khr.jsx)(Dhr.Text,{color:r,children:t}):null};var Twe=vt(xc(),1);var ySi=vt(bvi(),1);var Whr="@mikro-orm-sql",Phr="@mikro-orm-params";var P3a;P3a=new WeakMap;var mK=vt(xc(),1),gyt=vt(xc(),1);var dSi=vt(Bvi(),1),tSi=Object.defineProperty,O3a=Object.defineProperties,Q3a=Object.getOwnPropertyDescriptors,lyt=Object.getOwnPropertySymbols,rSi=Object.prototype.hasOwnProperty,nSi=Object.prototype.propertyIsEnumerable,vvi=(e,t,r)=>t in e?tSi(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,ix=(e,t)=>{for(var r in t||(t={}))rSi.call(t,r)&&vvi(e,r,t[r]);if(lyt)for(var r of lyt(t))nSi.call(t,r)&&vvi(e,r,t[r]);return e},qF=(e,t)=>O3a(e,Q3a(t)),M3a=(e,t)=>{var r={};for(var s in e)rSi.call(e,s)&&t.indexOf(s)<0&&(r[s]=e[s]);if(e!=null&&lyt)for(var s of lyt(e))t.indexOf(s)<0&&nSi.call(e,s)&&(r[s]=e[s]);return r},H3a=(e,t)=>{for(var r in t)tSi(e,r,{get:t[r],enumerable:!0})},iSi={};H3a(iSi,{bigquery:()=>cPa,db2:()=>yPa,db2i:()=>RPa,hive:()=>WPa,mariadb:()=>UPa,mysql:()=>nOa,n1ql:()=>yOa,plsql:()=>ROa,postgresql:()=>POa,redshift:()=>KOa,singlestoredb:()=>jQa,snowflake:()=>s5a,spark:()=>iQa,sql:()=>EQa,sqlite:()=>pQa,tidb:()=>AOa,transactsql:()=>OQa,trino:()=>xQa});var Xa=e=>e.flatMap(Y3a),Y3a=e=>oyt(J3a(e)).map(X3a),X3a=e=>e.replace(/ +/g," ").trim(),J3a=e=>({type:"mandatory_block",items:u_r(e,0)[0]}),u_r=(e,t,r)=>{let s=[];for(;e[t];){let[a,o]=U3a(e,t);if(s.push(a),t=o,e[t]==="|")t++;else if(e[t]==="}"||e[t]==="]"){if(r!==e[t])throw new Error(`Unbalanced parenthesis in: ${e}`);return t++,[s,t]}else if(t===e.length){if(r)throw new Error(`Unbalanced parenthesis in: ${e}`);return[s,t]}else throw new Error(`Unexpected "${e[t]}"`)}return[s,t]},U3a=(e,t)=>{let r=[];for(;;){let[s,a]=K3a(e,t);if(s)r.push(s),t=a;else break}return r.length===1?[r[0],t]:[{type:"concatenation",items:r},t]},K3a=(e,t)=>{if(e[t]==="{")return j3a(e,t+1);if(e[t]==="[")return z3a(e,t+1);{let r="";for(;e[t]&&/[A-Za-z0-9_ ]/.test(e[t]);)r+=e[t],t++;return[r,t]}},j3a=(e,t)=>{let[r,s]=u_r(e,t,"}");return[{type:"mandatory_block",items:r},s]},z3a=(e,t)=>{let[r,s]=u_r(e,t,"]");return[{type:"optional_block",items:r},s]},oyt=e=>{if(typeof e=="string")return[e];if(e.type==="concatenation")return e.items.map(oyt).reduce(q3a,[""]);if(e.type==="mandatory_block")return e.items.flatMap(oyt);if(e.type==="optional_block")return["",...e.items.flatMap(oyt)];throw new Error(`Unknown node type: ${e}`)},q3a=(e,t)=>{let r=[];for(let s of e)for(let a of t)r.push(s+a);return r},sSi=(e=>(e.QUOTED_IDENTIFIER="QUOTED_IDENTIFIER",e.IDENTIFIER="IDENTIFIER",e.STRING="STRING",e.VARIABLE="VARIABLE",e.RESERVED_DATA_TYPE="RESERVED_DATA_TYPE",e.RESERVED_PARAMETERIZED_DATA_TYPE="RESERVED_PARAMETERIZED_DATA_TYPE",e.RESERVED_KEYWORD="RESERVED_KEYWORD",e.RESERVED_FUNCTION_NAME="RESERVED_FUNCTION_NAME",e.RESERVED_PHRASE="RESERVED_PHRASE",e.RESERVED_SET_OPERATION="RESERVED_SET_OPERATION",e.RESERVED_CLAUSE="RESERVED_CLAUSE",e.RESERVED_SELECT="RESERVED_SELECT",e.RESERVED_JOIN="RESERVED_JOIN",e.ARRAY_IDENTIFIER="ARRAY_IDENTIFIER",e.ARRAY_KEYWORD="ARRAY_KEYWORD",e.CASE="CASE",e.END="END",e.WHEN="WHEN",e.ELSE="ELSE",e.THEN="THEN",e.LIMIT="LIMIT",e.BETWEEN="BETWEEN",e.AND="AND",e.OR="OR",e.XOR="XOR",e.OPERATOR="OPERATOR",e.COMMA="COMMA",e.ASTERISK="ASTERISK",e.PROPERTY_ACCESS_OPERATOR="PROPERTY_ACCESS_OPERATOR",e.OPEN_PAREN="OPEN_PAREN",e.CLOSE_PAREN="CLOSE_PAREN",e.LINE_COMMENT="LINE_COMMENT",e.BLOCK_COMMENT="BLOCK_COMMENT",e.DISABLE_COMMENT="DISABLE_COMMENT",e.NUMBER="NUMBER",e.NAMED_PARAMETER="NAMED_PARAMETER",e.QUOTED_PARAMETER="QUOTED_PARAMETER",e.NUMBERED_PARAMETER="NUMBERED_PARAMETER",e.POSITIONAL_PARAMETER="POSITIONAL_PARAMETER",e.CUSTOM_PARAMETER="CUSTOM_PARAMETER",e.DELIMITER="DELIMITER",e.EOF="EOF",e))(sSi||{}),oSi=e=>({type:"EOF",raw:"\xABEOF\xBB",text:"\xABEOF\xBB",start:e}),wwe=oSi(1/0),vwe=e=>t=>t.type===e.type&&t.text===e.text,vIe={ARRAY:vwe({text:"ARRAY",type:"RESERVED_DATA_TYPE"}),BY:vwe({text:"BY",type:"RESERVED_KEYWORD"}),SET:vwe({text:"SET",type:"RESERVED_CLAUSE"}),STRUCT:vwe({text:"STRUCT",type:"RESERVED_DATA_TYPE"}),WINDOW:vwe({text:"WINDOW",type:"RESERVED_CLAUSE"}),VALUES:vwe({text:"VALUES",type:"RESERVED_CLAUSE"})},aSi=e=>e==="RESERVED_DATA_TYPE"||e==="RESERVED_KEYWORD"||e==="RESERVED_FUNCTION_NAME"||e==="RESERVED_PHRASE"||e==="RESERVED_CLAUSE"||e==="RESERVED_SELECT"||e==="RESERVED_SET_OPERATION"||e==="RESERVED_JOIN"||e==="ARRAY_KEYWORD"||e==="CASE"||e==="END"||e==="WHEN"||e==="ELSE"||e==="THEN"||e==="LIMIT"||e==="BETWEEN"||e==="AND"||e==="OR"||e==="XOR",$3a=e=>e==="AND"||e==="OR"||e==="XOR",ePa=["KEYS.NEW_KEYSET","KEYS.ADD_KEY_FROM_RAW_BYTES","AEAD.DECRYPT_BYTES","AEAD.DECRYPT_STRING","AEAD.ENCRYPT","KEYS.KEYSET_CHAIN","KEYS.KEYSET_FROM_JSON","KEYS.KEYSET_TO_JSON","KEYS.ROTATE_KEYSET","KEYS.KEYSET_LENGTH","ANY_VALUE","ARRAY_AGG","AVG","CORR","COUNT","COUNTIF","COVAR_POP","COVAR_SAMP","MAX","MIN","ST_CLUSTERDBSCAN","STDDEV_POP","STDDEV_SAMP","STRING_AGG","SUM","VAR_POP","VAR_SAMP","ANY_VALUE","ARRAY_AGG","ARRAY_CONCAT_AGG","AVG","BIT_AND","BIT_OR","BIT_XOR","COUNT","COUNTIF","LOGICAL_AND","LOGICAL_OR","MAX","MIN","STRING_AGG","SUM","APPROX_COUNT_DISTINCT","APPROX_QUANTILES","APPROX_TOP_COUNT","APPROX_TOP_SUM","ARRAY_CONCAT","ARRAY_LENGTH","ARRAY_TO_STRING","GENERATE_ARRAY","GENERATE_DATE_ARRAY","GENERATE_TIMESTAMP_ARRAY","ARRAY_REVERSE","OFFSET","SAFE_OFFSET","ORDINAL","SAFE_ORDINAL","BIT_COUNT","PARSE_BIGNUMERIC","PARSE_NUMERIC","SAFE_CAST","CURRENT_DATE","EXTRACT","DATE","DATE_ADD","DATE_SUB","DATE_DIFF","DATE_TRUNC","DATE_FROM_UNIX_DATE","FORMAT_DATE","LAST_DAY","PARSE_DATE","UNIX_DATE","CURRENT_DATETIME","DATETIME","EXTRACT","DATETIME_ADD","DATETIME_SUB","DATETIME_DIFF","DATETIME_TRUNC","FORMAT_DATETIME","LAST_DAY","PARSE_DATETIME","ERROR","EXTERNAL_QUERY","S2_CELLIDFROMPOINT","S2_COVERINGCELLIDS","ST_ANGLE","ST_AREA","ST_ASBINARY","ST_ASGEOJSON","ST_ASTEXT","ST_AZIMUTH","ST_BOUNDARY","ST_BOUNDINGBOX","ST_BUFFER","ST_BUFFERWITHTOLERANCE","ST_CENTROID","ST_CENTROID_AGG","ST_CLOSESTPOINT","ST_CLUSTERDBSCAN","ST_CONTAINS","ST_CONVEXHULL","ST_COVEREDBY","ST_COVERS","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DUMP","ST_DWITHIN","ST_ENDPOINT","ST_EQUALS","ST_EXTENT","ST_EXTERIORRING","ST_GEOGFROM","ST_GEOGFROMGEOJSON","ST_GEOGFROMTEXT","ST_GEOGFROMWKB","ST_GEOGPOINT","ST_GEOGPOINTFROMGEOHASH","ST_GEOHASH","ST_GEOMETRYTYPE","ST_INTERIORRINGS","ST_INTERSECTION","ST_INTERSECTS","ST_INTERSECTSBOX","ST_ISCOLLECTION","ST_ISEMPTY","ST_LENGTH","ST_MAKELINE","ST_MAKEPOLYGON","ST_MAKEPOLYGONORIENTED","ST_MAXDISTANCE","ST_NPOINTS","ST_NUMGEOMETRIES","ST_NUMPOINTS","ST_PERIMETER","ST_POINTN","ST_SIMPLIFY","ST_SNAPTOGRID","ST_STARTPOINT","ST_TOUCHES","ST_UNION","ST_UNION_AGG","ST_WITHIN","ST_X","ST_Y","FARM_FINGERPRINT","MD5","SHA1","SHA256","SHA512","HLL_COUNT.INIT","HLL_COUNT.MERGE","HLL_COUNT.MERGE_PARTIAL","HLL_COUNT.EXTRACT","MAKE_INTERVAL","EXTRACT","JUSTIFY_DAYS","JUSTIFY_HOURS","JUSTIFY_INTERVAL","JSON_EXTRACT","JSON_QUERY","JSON_EXTRACT_SCALAR","JSON_VALUE","JSON_EXTRACT_ARRAY","JSON_QUERY_ARRAY","JSON_EXTRACT_STRING_ARRAY","JSON_VALUE_ARRAY","TO_JSON_STRING","ABS","SIGN","IS_INF","IS_NAN","IEEE_DIVIDE","RAND","SQRT","POW","POWER","EXP","LN","LOG","LOG10","GREATEST","LEAST","DIV","SAFE_DIVIDE","SAFE_MULTIPLY","SAFE_NEGATE","SAFE_ADD","SAFE_SUBTRACT","MOD","ROUND","TRUNC","CEIL","CEILING","FLOOR","COS","COSH","ACOS","ACOSH","SIN","SINH","ASIN","ASINH","TAN","TANH","ATAN","ATANH","ATAN2","RANGE_BUCKET","FIRST_VALUE","LAST_VALUE","NTH_VALUE","LEAD","LAG","PERCENTILE_CONT","PERCENTILE_DISC","NET.IP_FROM_STRING","NET.SAFE_IP_FROM_STRING","NET.IP_TO_STRING","NET.IP_NET_MASK","NET.IP_TRUNC","NET.IPV4_FROM_INT64","NET.IPV4_TO_INT64","NET.HOST","NET.PUBLIC_SUFFIX","NET.REG_DOMAIN","RANK","DENSE_RANK","PERCENT_RANK","CUME_DIST","NTILE","ROW_NUMBER","SESSION_USER","CORR","COVAR_POP","COVAR_SAMP","STDDEV_POP","STDDEV_SAMP","STDDEV","VAR_POP","VAR_SAMP","VARIANCE","ASCII","BYTE_LENGTH","CHAR_LENGTH","CHARACTER_LENGTH","CHR","CODE_POINTS_TO_BYTES","CODE_POINTS_TO_STRING","CONCAT","CONTAINS_SUBSTR","ENDS_WITH","FORMAT","FROM_BASE32","FROM_BASE64","FROM_HEX","INITCAP","INSTR","LEFT","LENGTH","LPAD","LOWER","LTRIM","NORMALIZE","NORMALIZE_AND_CASEFOLD","OCTET_LENGTH","REGEXP_CONTAINS","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPLACE","REPEAT","REVERSE","RIGHT","RPAD","RTRIM","SAFE_CONVERT_BYTES_TO_STRING","SOUNDEX","SPLIT","STARTS_WITH","STRPOS","SUBSTR","SUBSTRING","TO_BASE32","TO_BASE64","TO_CODE_POINTS","TO_HEX","TRANSLATE","TRIM","UNICODE","UPPER","CURRENT_TIME","TIME","EXTRACT","TIME_ADD","TIME_SUB","TIME_DIFF","TIME_TRUNC","FORMAT_TIME","PARSE_TIME","CURRENT_TIMESTAMP","EXTRACT","STRING","TIMESTAMP","TIMESTAMP_ADD","TIMESTAMP_SUB","TIMESTAMP_DIFF","TIMESTAMP_TRUNC","FORMAT_TIMESTAMP","PARSE_TIMESTAMP","TIMESTAMP_SECONDS","TIMESTAMP_MILLIS","TIMESTAMP_MICROS","UNIX_SECONDS","UNIX_MILLIS","UNIX_MICROS","GENERATE_UUID","COALESCE","IF","IFNULL","NULLIF","AVG","BIT_AND","BIT_OR","BIT_XOR","CORR","COUNT","COVAR_POP","COVAR_SAMP","EXACT_COUNT_DISTINCT","FIRST","GROUP_CONCAT","GROUP_CONCAT_UNQUOTED","LAST","MAX","MIN","NEST","NTH","QUANTILES","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","TOP","UNIQUE","VARIANCE","VAR_POP","VAR_SAMP","BIT_COUNT","BOOLEAN","BYTES","CAST","FLOAT","HEX_STRING","INTEGER","STRING","COALESCE","GREATEST","IFNULL","IS_INF","IS_NAN","IS_EXPLICITLY_DEFINED","LEAST","NVL","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE","DATE_ADD","DATEDIFF","DAY","DAYOFWEEK","DAYOFYEAR","FORMAT_UTC_USEC","HOUR","MINUTE","MONTH","MSEC_TO_TIMESTAMP","NOW","PARSE_UTC_USEC","QUARTER","SEC_TO_TIMESTAMP","SECOND","STRFTIME_UTC_USEC","TIME","TIMESTAMP","TIMESTAMP_TO_MSEC","TIMESTAMP_TO_SEC","TIMESTAMP_TO_USEC","USEC_TO_TIMESTAMP","UTC_USEC_TO_DAY","UTC_USEC_TO_HOUR","UTC_USEC_TO_MONTH","UTC_USEC_TO_WEEK","UTC_USEC_TO_YEAR","WEEK","YEAR","FORMAT_IP","PARSE_IP","FORMAT_PACKED_IP","PARSE_PACKED_IP","JSON_EXTRACT","JSON_EXTRACT_SCALAR","ABS","ACOS","ACOSH","ASIN","ASINH","ATAN","ATANH","ATAN2","CEIL","COS","COSH","DEGREES","EXP","FLOOR","LN","LOG","LOG2","LOG10","PI","POW","RADIANS","RAND","ROUND","SIN","SINH","SQRT","TAN","TANH","REGEXP_MATCH","REGEXP_EXTRACT","REGEXP_REPLACE","CONCAT","INSTR","LEFT","LENGTH","LOWER","LPAD","LTRIM","REPLACE","RIGHT","RPAD","RTRIM","SPLIT","SUBSTR","UPPER","TABLE_DATE_RANGE","TABLE_DATE_RANGE_STRICT","TABLE_QUERY","HOST","DOMAIN","TLD","AVG","COUNT","MAX","MIN","STDDEV","SUM","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","RATIO_TO_REPORT","ROW_NUMBER","CURRENT_USER","EVERY","FROM_BASE64","HASH","FARM_FINGERPRINT","IF","POSITION","SHA1","SOME","TO_BASE64","BQ.JOBS.CANCEL","BQ.REFRESH_MATERIALIZED_VIEW","OPTIONS","PIVOT","UNPIVOT"],tPa=["ALL","AND","ANY","AS","ASC","ASSERT_ROWS_MODIFIED","AT","BETWEEN","BY","CASE","CAST","COLLATE","CONTAINS","CREATE","CROSS","CUBE","CURRENT","DEFAULT","DEFINE","DESC","DISTINCT","ELSE","END","ENUM","ESCAPE","EXCEPT","EXCLUDE","EXISTS","EXTRACT","FALSE","FETCH","FOLLOWING","FOR","FROM","FULL","GROUP","GROUPING","GROUPS","HASH","HAVING","IF","IGNORE","IN","INNER","INTERSECT","INTO","IS","JOIN","LATERAL","LEFT","LIMIT","LOOKUP","MERGE","NATURAL","NEW","NO","NOT","NULL","NULLS","OF","ON","OR","ORDER","OUTER","OVER","PARTITION","PRECEDING","PROTO","RANGE","RECURSIVE","RESPECT","RIGHT","ROLLUP","ROWS","SELECT","SET","SOME","TABLE","TABLESAMPLE","THEN","TO","TREAT","TRUE","UNBOUNDED","UNION","UNNEST","USING","WHEN","WHERE","WINDOW","WITH","WITHIN","SAFE","LIKE","COPY","CLONE","IN","OUT","INOUT","RETURNS","LANGUAGE","CASCADE","RESTRICT","DETERMINISTIC"],rPa=["ARRAY","BOOL","BYTES","DATE","DATETIME","GEOGRAPHY","INTERVAL","INT64","INT","SMALLINT","INTEGER","BIGINT","TINYINT","BYTEINT","NUMERIC","DECIMAL","BIGNUMERIC","BIGDECIMAL","FLOAT64","STRING","STRUCT","TIME","TIMEZONE"],nPa=Xa(["SELECT [ALL | DISTINCT] [AS STRUCT | AS VALUE]"]),iPa=Xa(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","QUALIFY","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","OMIT RECORD IF","INSERT [INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [BY SOURCE | BY TARGET] [THEN]","UPDATE SET","CLUSTER BY","FOR SYSTEM_TIME AS OF","WITH CONNECTION","WITH PARTITION COLUMNS","REMOTE WITH CONNECTION"]),Svi=Xa(["CREATE [OR REPLACE] [TEMP|TEMPORARY|SNAPSHOT|EXTERNAL] TABLE [IF NOT EXISTS]"]),Ohr=Xa(["CREATE [OR REPLACE] [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE","DELETE [FROM]","DROP [SNAPSHOT | EXTERNAL] TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","ADD COLUMN [IF NOT EXISTS]","DROP COLUMN [IF EXISTS]","RENAME TO","ALTER COLUMN [IF EXISTS]","SET DEFAULT COLLATE","SET OPTIONS","DROP NOT NULL","SET DATA TYPE","ALTER SCHEMA [IF EXISTS]","ALTER [MATERIALIZED] VIEW [IF EXISTS]","ALTER BI_CAPACITY","TRUNCATE TABLE","CREATE SCHEMA [IF NOT EXISTS]","DEFAULT COLLATE","CREATE [OR REPLACE] [TEMP|TEMPORARY|TABLE] FUNCTION [IF NOT EXISTS]","CREATE [OR REPLACE] PROCEDURE [IF NOT EXISTS]","CREATE [OR REPLACE] ROW ACCESS POLICY [IF NOT EXISTS]","GRANT TO","FILTER USING","CREATE CAPACITY","AS JSON","CREATE RESERVATION","CREATE ASSIGNMENT","CREATE SEARCH INDEX [IF NOT EXISTS]","DROP SCHEMA [IF EXISTS]","DROP [MATERIALIZED] VIEW [IF EXISTS]","DROP [TABLE] FUNCTION [IF EXISTS]","DROP PROCEDURE [IF EXISTS]","DROP ROW ACCESS POLICY","DROP ALL ROW ACCESS POLICIES","DROP CAPACITY [IF EXISTS]","DROP RESERVATION [IF EXISTS]","DROP ASSIGNMENT [IF EXISTS]","DROP SEARCH INDEX [IF EXISTS]","DROP [IF EXISTS]","GRANT","REVOKE","DECLARE","EXECUTE IMMEDIATE","LOOP","END LOOP","REPEAT","END REPEAT","WHILE","END WHILE","BREAK","LEAVE","CONTINUE","ITERATE","FOR","END FOR","BEGIN","BEGIN TRANSACTION","COMMIT TRANSACTION","ROLLBACK TRANSACTION","RAISE","RETURN","CALL","ASSERT","EXPORT DATA"]),sPa=Xa(["UNION {ALL | DISTINCT}","EXCEPT DISTINCT","INTERSECT DISTINCT"]),oPa=Xa(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN"]),aPa=Xa(["TABLESAMPLE SYSTEM","ANY TYPE","ALL COLUMNS","NOT DETERMINISTIC","{ROWS | RANGE} BETWEEN","IS [NOT] DISTINCT FROM"]),cPa={name:"bigquery",tokenizerOptions:{reservedSelect:nPa,reservedClauses:[...iPa,...Ohr,...Svi],reservedSetOperations:sPa,reservedJoins:oPa,reservedPhrases:aPa,reservedKeywords:tPa,reservedDataTypes:rPa,reservedFunctionNames:ePa,extraParens:["[]"],stringTypes:[{quote:'""".."""',prefixes:["R","B","RB","BR"]},{quote:"'''..'''",prefixes:["R","B","RB","BR"]},'""-bs',"''-bs",{quote:'""-raw',prefixes:["R","B","RB","BR"],requirePrefix:!0},{quote:"''-raw",prefixes:["R","B","RB","BR"],requirePrefix:!0}],identTypes:["``"],identChars:{dashes:!0},paramTypes:{positional:!0,named:["@"],quoted:["@"]},variableTypes:[{regex:String.raw`@@\w+`}],lineCommentTypes:["--","#"],operators:["&","|","^","~",">>","<<","||","=>"],postProcess:lPa},formatOptions:{onelineClauses:[...Svi,...Ohr],tabularOnelineClauses:Ohr}};function lPa(e){return uPa(gPa(e))}function uPa(e){let t=wwe;return e.map(r=>r.text==="OFFSET"&&t.text==="["?(t=r,qF(ix({},r),{type:"RESERVED_FUNCTION_NAME"})):(t=r,r))}function gPa(e){var t;let r=[];for(let s=0;st=>t.type==="IDENTIFIER"||t.type==="COMMA"?t[e]+" ":t[e];function APa(e,t){let r=0;for(let s=t;s"?r--:a.text===">>"&&(r-=2),r===0)return s}return e.length-1}var dPa=["ARRAY_AGG","AVG","CORRELATION","COUNT","COUNT_BIG","COVARIANCE","COVARIANCE_SAMP","CUME_DIST","GROUPING","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_ICPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV","STDDEV_SAMP","SUM","VARIANCE","VARIANCE_SAMP","XMLAGG","XMLGROUP","ABS","ABSVAL","ACOS","ADD_DAYS","ADD_HOURS","ADD_MINUTES","ADD_MONTHS","ADD_SECONDS","ADD_YEARS","AGE","ARRAY_DELETE","ARRAY_FIRST","ARRAY_LAST","ARRAY_NEXT","ARRAY_PRIOR","ASCII","ASCII_STR","ASIN","ATAN","ATAN2","ATANH","BITAND","BITANDNOT","BITOR","BITXOR","BITNOT","BPCHAR","BSON_TO_JSON","BTRIM","CARDINALITY","CEILING","CEIL","CHARACTER_LENGTH","CHR","COALESCE","COLLATION_KEY","COLLATION_KEY_BIT","COMPARE_DECFLOAT","CONCAT","COS","COSH","COT","CURSOR_ROWCOUNT","DATAPARTITIONNUM","DATE_PART","DATE_TRUNC","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFWEEK_ISO","DAYOFYEAR","DAYS","DAYS_BETWEEN","DAYS_TO_END_OF_MONTH","DBPARTITIONNUM","DECFLOAT","DECFLOAT_FORMAT","DECODE","DECRYPT_BIN","DECRYPT_CHAR","DEGREES","DEREF","DIFFERENCE","DIGITS","DOUBLE_PRECISION","EMPTY_BLOB","EMPTY_CLOB","EMPTY_DBCLOB","EMPTY_NCLOB","ENCRYPT","EVENT_MON_STATE","EXP","EXTRACT","FIRST_DAY","FLOOR","FROM_UTC_TIMESTAMP","GENERATE_UNIQUE","GETHINT","GREATEST","HASH","HASH4","HASH8","HASHEDVALUE","HEX","HEXTORAW","HOUR","HOURS_BETWEEN","IDENTITY_VAL_LOCAL","IFNULL","INITCAP","INSERT","INSTR","INSTR2","INSTR4","INSTRB","INTNAND","INTNOR","INTNXOR","INTNNOT","ISNULL","JSON_ARRAY","JSON_OBJECT","JSON_QUERY","JSON_TO_BSON","JSON_VALUE","JULIAN_DAY","LAST_DAY","LCASE","LEAST","LEFT","LENGTH","LENGTH2","LENGTH4","LENGTHB","LN","LOCATE","LOCATE_IN_STRING","LOG10","LONG_VARCHAR","LONG_VARGRAPHIC","LOWER","LPAD","LTRIM","MAX","MAX_CARDINALITY","MICROSECOND","MIDNIGHT_SECONDS","MIN","MINUTE","MINUTES_BETWEEN","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","MULTIPLY_ALT","NEXT_DAY","NEXT_MONTH","NEXT_QUARTER","NEXT_WEEK","NEXT_YEAR","NORMALIZE_DECFLOAT","NOW","NULLIF","NVL","NVL2","OCTET_LENGTH","OVERLAY","PARAMETER","POSITION","POSSTR","POW","POWER","QUANTIZE","QUARTER","QUOTE_IDENT","QUOTE_LITERAL","RADIANS","RAISE_ERROR","RAND","RANDOM","RAWTOHEX","REC2XML","REGEXP_COUNT","REGEXP_EXTRACT","REGEXP_INSTR","REGEXP_LIKE","REGEXP_MATCH_COUNT","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","RID","RID_BIT","RIGHT","ROUND","ROUND_TIMESTAMP","RPAD","RTRIM","SECLABEL","SECLABEL_BY_NAME","SECLABEL_TO_CHAR","SECOND","SECONDS_BETWEEN","SIGN","SIN","SINH","SOUNDEX","SPACE","SQRT","STRIP","STRLEFT","STRPOS","STRRIGHT","SUBSTR","SUBSTR2","SUBSTR4","SUBSTRB","SUBSTRING","TABLE_NAME","TABLE_SCHEMA","TAN","TANH","THIS_MONTH","THIS_QUARTER","THIS_WEEK","THIS_YEAR","TIMESTAMP_FORMAT","TIMESTAMP_ISO","TIMESTAMPDIFF","TIMEZONE","TO_CHAR","TO_CLOB","TO_DATE","TO_HEX","TO_MULTI_BYTE","TO_NCHAR","TO_NCLOB","TO_NUMBER","TO_SINGLE_BYTE","TO_TIMESTAMP","TO_UTC_TIMESTAMP","TOTALORDER","TRANSLATE","TRIM","TRIM_ARRAY","TRUNC_TIMESTAMP","TRUNCATE","TRUNC","TYPE_ID","TYPE_NAME","TYPE_SCHEMA","UCASE","UNICODE_STR","UPPER","VALUE","VARCHAR_BIT_FORMAT","VARCHAR_FORMAT","VARCHAR_FORMAT_BIT","VERIFY_GROUP_FOR_USER","VERIFY_ROLE_FOR_USER","VERIFY_TRUSTED_CONTEXT_ROLE_FOR_USER","WEEK","WEEK_ISO","WEEKS_BETWEEN","WIDTH_BUCKET","XMLATTRIBUTES","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLNAMESPACES","XMLPARSE","XMLPI","XMLQUERY","XMLROW","XMLSERIALIZE","XMLTEXT","XMLVALIDATE","XMLXSROBJECTID","XSLTRANSFORM","YEAR","YEARS_BETWEEN","YMD_BETWEEN","BASE_TABLE","JSON_TABLE","UNNEST","XMLTABLE","RANK","DENSE_RANK","NTILE","LAG","LEAD","ROW_NUMBER","FIRST_VALUE","LAST_VALUE","NTH_VALUE","RATIO_TO_REPORT","CAST"],pPa=["ACTIVATE","ADD","AFTER","ALIAS","ALL","ALLOCATE","ALLOW","ALTER","AND","ANY","AS","ASENSITIVE","ASSOCIATE","ASUTIME","AT","ATTRIBUTES","AUDIT","AUTHORIZATION","AUX","AUXILIARY","BEFORE","BEGIN","BETWEEN","BINARY","BUFFERPOOL","BY","CACHE","CALL","CALLED","CAPTURE","CARDINALITY","CASCADED","CASE","CAST","CHECK","CLONE","CLOSE","CLUSTER","COLLECTION","COLLID","COLUMN","COMMENT","COMMIT","CONCAT","CONDITION","CONNECT","CONNECTION","CONSTRAINT","CONTAINS","CONTINUE","COUNT","COUNT_BIG","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_LC_CTYPE","CURRENT_PATH","CURRENT_SCHEMA","CURRENT_SERVER","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","CURSOR","CYCLE","DATA","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYS","DB2GENERAL","DB2GENRL","DB2SQL","DBINFO","DBPARTITIONNAME","DBPARTITIONNUM","DEALLOCATE","DECLARE","DEFAULT","DEFAULTS","DEFINITION","DELETE","DENSERANK","DENSE_RANK","DESCRIBE","DESCRIPTOR","DETERMINISTIC","DIAGNOSTICS","DISABLE","DISALLOW","DISCONNECT","DISTINCT","DO","DOCUMENT","DROP","DSSIZE","DYNAMIC","EACH","EDITPROC","ELSE","ELSEIF","ENABLE","ENCODING","ENCRYPTION","END","END-EXEC","ENDING","ERASE","ESCAPE","EVERY","EXCEPT","EXCEPTION","EXCLUDING","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXPLAIN","EXTENDED","EXTERNAL","EXTRACT","FENCED","FETCH","FIELDPROC","FILE","FINAL","FIRST1","FOR","FOREIGN","FREE","FROM","FULL","FUNCTION","GENERAL","GENERATED","GET","GLOBAL","GO","GOTO","GRANT","GRAPHIC","GROUP","HANDLER","HASH","HASHED_VALUE","HAVING","HINT","HOLD","HOUR","HOURS","IDENTITY","IF","IMMEDIATE","IMPORT","IN","INCLUDING","INCLUSIVE","INCREMENT","INDEX","INDICATOR","INDICATORS","INF","INFINITY","INHERIT","INNER","INOUT","INSENSITIVE","INSERT","INTEGRITY","INTERSECT","INTO","IS","ISNULL","ISOBID","ISOLATION","ITERATE","JAR","JAVA","JOIN","KEEP","KEY","LABEL","LANGUAGE","LAST3","LATERAL","LC_CTYPE","LEAVE","LEFT","LIKE","LIMIT","LINKTYPE","LOCAL","LOCALDATE","LOCALE","LOCALTIME","LOCALTIMESTAMP","LOCATOR","LOCATORS","LOCK","LOCKMAX","LOCKSIZE","LOOP","MAINTAINED","MATERIALIZED","MAXVALUE","MICROSECOND","MICROSECONDS","MINUTE","MINUTES","MINVALUE","MODE","MODIFIES","MONTH","MONTHS","NAN","NEW","NEW_TABLE","NEXTVAL","NO","NOCACHE","NOCYCLE","NODENAME","NODENUMBER","NOMAXVALUE","NOMINVALUE","NONE","NOORDER","NORMALIZED","NOT2","NOTNULL","NULL","NULLS","NUMPARTS","OBID","OF","OFF","OFFSET","OLD","OLD_TABLE","ON","OPEN","OPTIMIZATION","OPTIMIZE","OPTION","OR","ORDER","OUT","OUTER","OVER","OVERRIDING","PACKAGE","PADDED","PAGESIZE","PARAMETER","PART","PARTITION","PARTITIONED","PARTITIONING","PARTITIONS","PASSWORD","PATH","PERCENT","PIECESIZE","PLAN","POSITION","PRECISION","PREPARE","PREVVAL","PRIMARY","PRIQTY","PRIVILEGES","PROCEDURE","PROGRAM","PSID","PUBLIC","QUERY","QUERYNO","RANGE","RANK","READ","READS","RECOVERY","REFERENCES","REFERENCING","REFRESH","RELEASE","RENAME","REPEAT","RESET","RESIGNAL","RESTART","RESTRICT","RESULT","RESULT_SET_LOCATOR","RETURN","RETURNS","REVOKE","RIGHT","ROLE","ROLLBACK","ROUND_CEILING","ROUND_DOWN","ROUND_FLOOR","ROUND_HALF_DOWN","ROUND_HALF_EVEN","ROUND_HALF_UP","ROUND_UP","ROUTINE","ROW","ROWNUMBER","ROWS","ROWSET","ROW_NUMBER","RRN","RUN","SAVEPOINT","SCHEMA","SCRATCHPAD","SCROLL","SEARCH","SECOND","SECONDS","SECQTY","SECURITY","SELECT","SENSITIVE","SEQUENCE","SESSION","SESSION_USER","SET","SIGNAL","SIMPLE","SNAN","SOME","SOURCE","SPECIFIC","SQL","SQLID","STACKED","STANDARD","START","STARTING","STATEMENT","STATIC","STATMENT","STAY","STOGROUP","STORES","STYLE","SUBSTRING","SUMMARY","SYNONYM","SYSFUN","SYSIBM","SYSPROC","SYSTEM","SYSTEM_USER","TABLE","TABLESPACE","THEN","TO","TRANSACTION","TRIGGER","TRIM","TRUNCATE","TYPE","UNDO","UNION","UNIQUE","UNTIL","UPDATE","USAGE","USER","USING","VALIDPROC","VALUE","VALUES","VARIABLE","VARIANT","VCAT","VERSION","VIEW","VOLATILE","VOLUMES","WHEN","WHENEVER","WHERE","WHILE","WITH","WITHOUT","WLM","WRITE","XMLELEMENT","XMLEXISTS","XMLNAMESPACES","YEAR","YEARS"],fPa=["ARRAY","BIGINT","BINARY","BLOB","BOOLEAN","CCSID","CHAR","CHARACTER","CLOB","DATE","DATETIME","DBCLOB","DEC","DECIMAL","DOUBLE","DOUBLE PRECISION","FLOAT","FLOAT4","FLOAT8","GRAPHIC","INT","INT2","INT4","INT8","INTEGER","INTERVAL","LONG VARCHAR","LONG VARGRAPHIC","NCHAR","NCHR","NCLOB","NVARCHAR","NUMERIC","SMALLINT","REAL","TIME","TIMESTAMP","VARBINARY","VARCHAR","VARGRAPHIC"],IPa=Xa(["SELECT [ALL | DISTINCT]"]),CPa=Xa(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY [INPUT SEQUENCE]","LIMIT","OFFSET","FETCH NEXT","FOR UPDATE [OF]","FOR {READ | FETCH} ONLY","FOR {RR | CS | UR | RS} [USE AND KEEP {SHARE | UPDATE | EXCLUSIVE} LOCKS]","WAIT FOR OUTCOME","SKIP LOCKED DATA","INTO","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","INSERT"]),Tvi=Xa(["CREATE [GLOBAL TEMPORARY | EXTERNAL] TABLE [IF NOT EXISTS]"]),Qhr=Xa(["CREATE [OR REPLACE] VIEW","UPDATE","WHERE CURRENT OF","WITH {RR | RS | CS | UR}","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","DROP [COLUMN]","RENAME COLUMN","ALTER [COLUMN]","SET DATA TYPE","SET NOT NULL","DROP {DEFAULT | GENERATED | NOT NULL}","TRUNCATE [TABLE]","ALLOCATE","ALTER AUDIT POLICY","ALTER BUFFERPOOL","ALTER DATABASE PARTITION GROUP","ALTER DATABASE","ALTER EVENT MONITOR","ALTER FUNCTION","ALTER HISTOGRAM TEMPLATE","ALTER INDEX","ALTER MASK","ALTER METHOD","ALTER MODULE","ALTER NICKNAME","ALTER PACKAGE","ALTER PERMISSION","ALTER PROCEDURE","ALTER SCHEMA","ALTER SECURITY LABEL COMPONENT","ALTER SECURITY POLICY","ALTER SEQUENCE","ALTER SERVER","ALTER SERVICE CLASS","ALTER STOGROUP","ALTER TABLESPACE","ALTER THRESHOLD","ALTER TRIGGER","ALTER TRUSTED CONTEXT","ALTER TYPE","ALTER USAGE LIST","ALTER USER MAPPING","ALTER VIEW","ALTER WORK ACTION SET","ALTER WORK CLASS SET","ALTER WORKLOAD","ALTER WRAPPER","ALTER XSROBJECT","ALTER STOGROUP","ALTER TABLESPACE","ALTER TRIGGER","ALTER TRUSTED CONTEXT","ALTER VIEW","ASSOCIATE [RESULT SET] {LOCATOR | LOCATORS}","AUDIT","BEGIN DECLARE SECTION","CALL","CLOSE","COMMENT ON","COMMIT [WORK]","CONNECT","CREATE [OR REPLACE] [PUBLIC] ALIAS","CREATE AUDIT POLICY","CREATE BUFFERPOOL","CREATE DATABASE PARTITION GROUP","CREATE EVENT MONITOR","CREATE [OR REPLACE] FUNCTION","CREATE FUNCTION MAPPING","CREATE HISTOGRAM TEMPLATE","CREATE [UNIQUE] INDEX","CREATE INDEX EXTENSION","CREATE [OR REPLACE] MASK","CREATE [SPECIFIC] METHOD","CREATE [OR REPLACE] MODULE","CREATE [OR REPLACE] NICKNAME","CREATE [OR REPLACE] PERMISSION","CREATE [OR REPLACE] PROCEDURE","CREATE ROLE","CREATE SCHEMA","CREATE SECURITY LABEL [COMPONENT]","CREATE SECURITY POLICY","CREATE [OR REPLACE] SEQUENCE","CREATE SERVICE CLASS","CREATE SERVER","CREATE STOGROUP","CREATE SYNONYM","CREATE [LARGE | REGULAR | {SYSTEM | USER} TEMPORARY] TABLESPACE","CREATE THRESHOLD","CREATE {TRANSFORM | TRANSFORMS} FOR","CREATE [OR REPLACE] TRIGGER","CREATE TRUSTED CONTEXT","CREATE [OR REPLACE] TYPE","CREATE TYPE MAPPING","CREATE USAGE LIST","CREATE USER MAPPING FOR","CREATE [OR REPLACE] VARIABLE","CREATE WORK ACTION SET","CREATE WORK CLASS SET","CREATE WORKLOAD","CREATE WRAPPER","DECLARE","DECLARE GLOBAL TEMPORARY TABLE","DESCRIBE [INPUT | OUTPUT]","DISCONNECT","DROP [PUBLIC] ALIAS","DROP AUDIT POLICY","DROP BUFFERPOOL","DROP DATABASE PARTITION GROUP","DROP EVENT MONITOR","DROP [SPECIFIC] FUNCTION","DROP FUNCTION MAPPING","DROP HISTOGRAM TEMPLATE","DROP INDEX [EXTENSION]","DROP MASK","DROP [SPECIFIC] METHOD","DROP MODULE","DROP NICKNAME","DROP PACKAGE","DROP PERMISSION","DROP [SPECIFIC] PROCEDURE","DROP ROLE","DROP SCHEMA","DROP SECURITY LABEL [COMPONENT]","DROP SECURITY POLICY","DROP SEQUENCE","DROP SERVER","DROP SERVICE CLASS","DROP STOGROUP","DROP TABLE HIERARCHY","DROP {TABLESPACE | TABLESPACES}","DROP {TRANSFORM | TRANSFORMS}","DROP THRESHOLD","DROP TRIGGER","DROP TRUSTED CONTEXT","DROP TYPE [MAPPING]","DROP USAGE LIST","DROP USER MAPPING FOR","DROP VARIABLE","DROP VIEW [HIERARCHY]","DROP WORK {ACTION | CLASS} SET","DROP WORKLOAD","DROP WRAPPER","DROP XSROBJECT","END DECLARE SECTION","EXECUTE [IMMEDIATE]","EXPLAIN {PLAN [SECTION] | ALL}","FETCH [FROM]","FLUSH {BUFFERPOOL | BUFFERPOOLS} ALL","FLUSH EVENT MONITOR","FLUSH FEDERATED CACHE","FLUSH OPTIMIZATION PROFILE CACHE","FLUSH PACKAGE CACHE [DYNAMIC]","FLUSH AUTHENTICATION CACHE [FOR ALL]","FREE LOCATOR","GET DIAGNOSTICS","GOTO","GRANT","INCLUDE","ITERATE","LEAVE","LOCK TABLE","LOOP","OPEN","PIPE","PREPARE","REFRESH TABLE","RELEASE","RELEASE [TO] SAVEPOINT","RENAME [TABLE | INDEX | STOGROUP | TABLESPACE]","REPEAT","RESIGNAL","RETURN","REVOKE","ROLLBACK [WORK] [TO SAVEPOINT]","SAVEPOINT","SET COMPILATION ENVIRONMENT","SET CONNECTION","SET CURRENT","SET ENCRYPTION PASSWORD","SET EVENT MONITOR STATE","SET INTEGRITY","SET PASSTHRU","SET PATH","SET ROLE","SET SCHEMA","SET SERVER OPTION","SET {SESSION AUTHORIZATION | SESSION_USER}","SET USAGE LIST","SIGNAL","TRANSFER OWNERSHIP OF","WHENEVER {NOT FOUND | SQLERROR | SQLWARNING}","WHILE"]),mPa=Xa(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),hPa=Xa(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN"]),_Pa=Xa(["ON DELETE","ON UPDATE","SET NULL","{ROWS | RANGE} BETWEEN"]),yPa={name:"db2",tokenizerOptions:{reservedSelect:IPa,reservedClauses:[...CPa,...Tvi,...Qhr],reservedSetOperations:mPa,reservedJoins:hPa,reservedPhrases:_Pa,reservedKeywords:pPa,reservedDataTypes:fPa,reservedFunctionNames:dPa,extraParens:["[]"],stringTypes:[{quote:"''-qq",prefixes:["G","N","U&"]},{quote:"''-raw",prefixes:["X","BX","GX","UX"],requirePrefix:!0}],identTypes:['""-qq'],identChars:{first:"@#$",rest:"@#$"},paramTypes:{positional:!0,named:[":"]},paramChars:{first:"@#$",rest:"@#$"},operators:["**","%","|","&","^","~","\xAC=","\xAC>","\xAC<","!>","!<","^=","^>","^<","||","->","=>"]},formatOptions:{onelineClauses:[...Tvi,...Qhr],tabularOnelineClauses:Qhr}},bPa=["ARRAY_AGG","AVG","CORR","CORRELATION","COUNT","COUNT_BIG","COVAR_POP","COVARIANCE","COVAR","COVAR_SAMP","COVARIANCE_SAMP","EVERY","GROUPING","JSON_ARRAYAGG","JSON_OBJECTAGG","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","SOME","STDDEV_POP","STDDEV","STDDEV_SAMP","SUM","VAR_POP","VARIANCE","VAR","VAR_SAMP","VARIANCE_SAMP","XMLAGG","XMLGROUP","ABS","ABSVAL","ACOS","ADD_DAYS","ADD_HOURS","ADD_MINUTES","ADD_MONTHS","ADD_SECONDS","ADD_YEARS","ANTILOG","ARRAY_MAX_CARDINALITY","ARRAY_TRIM","ASCII","ASIN","ATAN","ATAN2","ATANH","BASE64_DECODE","BASE64_ENCODE","BIT_LENGTH","BITAND","BITANDNOT","BITNOT","BITOR","BITXOR","BSON_TO_JSON","CARDINALITY","CEIL","CEILING","CHAR_LENGTH","CHARACTER_LENGTH","CHR","COALESCE","COMPARE_DECFLOAT","CONCAT","CONTAINS","COS","COSH","COT","CURDATE","CURTIME","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK_ISO","DAYOFWEEK","DAYOFYEAR","DAYS","DBPARTITIONNAME","DBPARTITIONNUM","DECFLOAT_FORMAT","DECFLOAT_SORTKEY","DECRYPT_BINARY","DECRYPT_BIT","DECRYPT_CHAR","DECRYPT_DB","DEGREES","DIFFERENCE","DIGITS","DLCOMMENT","DLLINKTYPE","DLURLCOMPLETE","DLURLPATH","DLURLPATHONLY","DLURLSCHEME","DLURLSERVER","DLVALUE","DOUBLE_PRECISION","DOUBLE","ENCRPYT","ENCRYPT_AES","ENCRYPT_AES256","ENCRYPT_RC2","ENCRYPT_TDES","EXP","EXTRACT","FIRST_DAY","FLOOR","GENERATE_UNIQUE","GET_BLOB_FROM_FILE","GET_CLOB_FROM_FILE","GET_DBCLOB_FROM_FILE","GET_XML_FILE","GETHINT","GREATEST","HASH_MD5","HASH_ROW","HASH_SHA1","HASH_SHA256","HASH_SHA512","HASH_VALUES","HASHED_VALUE","HEX","HEXTORAW","HOUR","HTML_ENTITY_DECODE","HTML_ENTITY_ENCODE","HTTP_DELETE_BLOB","HTTP_DELETE","HTTP_GET_BLOB","HTTP_GET","HTTP_PATCH_BLOB","HTTP_PATCH","HTTP_POST_BLOB","HTTP_POST","HTTP_PUT_BLOB","HTTP_PUT","IDENTITY_VAL_LOCAL","IFNULL","INSERT","INSTR","INTERPRET","ISFALSE","ISNOTFALSE","ISNOTTRUE","ISTRUE","JSON_ARRAY","JSON_OBJECT","JSON_QUERY","JSON_TO_BSON","JSON_UPDATE","JSON_VALUE","JULIAN_DAY","LAND","LAST_DAY","LCASE","LEAST","LEFT","LENGTH","LN","LNOT","LOCATE_IN_STRING","LOCATE","LOG10","LOR","LOWER","LPAD","LTRIM","MAX_CARDINALITY","MAX","MICROSECOND","MIDNIGHT_SECONDS","MIN","MINUTE","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","MQREAD","MQREADCLOB","MQRECEIVE","MQRECEIVECLOB","MQSEND","MULTIPLY_ALT","NEXT_DAY","NORMALIZE_DECFLOAT","NOW","NULLIF","NVL","OCTET_LENGTH","OVERLAY","PI","POSITION","POSSTR","POW","POWER","QUANTIZE","QUARTER","RADIANS","RAISE_ERROR","RANDOM","RAND","REGEXP_COUNT","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","RID","RIGHT","ROUND_TIMESTAMP","ROUND","RPAD","RRN","RTRIM","SCORE","SECOND","SIGN","SIN","SINH","SOUNDEX","SPACE","SQRT","STRIP","STRLEFT","STRPOS","STRRIGHT","SUBSTR","SUBSTRING","TABLE_NAME","TABLE_SCHEMA","TAN","TANH","TIMESTAMP_FORMAT","TIMESTAMP_ISO","TIMESTAMPDIFF_BIG","TIMESTAMPDIFF","TO_CHAR","TO_CLOB","TO_DATE","TO_NUMBER","TO_TIMESTAMP","TOTALORDER","TRANSLATE","TRIM_ARRAY","TRIM","TRUNC_TIMESTAMP","TRUNC","TRUNCATE","UCASE","UPPER","URL_DECODE","URL_ENCODE","VALUE","VARBINARY_FORMAT","VARCHAR_BIT_FORMAT","VARCHAR_FORMAT_BINARY","VARCHAR_FORMAT","VERIFY_GROUP_FOR_USER","WEEK_ISO","WEEK","WRAP","XMLATTRIBUTES","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLNAMESPACES","XMLPARSE","XMLPI","XMLROW","XMLSERIALIZE","XMLTEXT","XMLVALIDATE","XOR","XSLTRANSFORM","YEAR","ZONED","BASE_TABLE","HTTP_DELETE_BLOB_VERBOSE","HTTP_DELETE_VERBOSE","HTTP_GET_BLOB_VERBOSE","HTTP_GET_VERBOSE","HTTP_PATCH_BLOB_VERBOSE","HTTP_PATCH_VERBOSE","HTTP_POST_BLOB_VERBOSE","HTTP_POST_VERBOSE","HTTP_PUT_BLOB_VERBOSE","HTTP_PUT_VERBOSE","JSON_TABLE","MQREADALL","MQREADALLCLOB","MQRECEIVEALL","MQRECEIVEALLCLOB","XMLTABLE","UNPACK","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","RATIO_TO_REPORT","ROW_NUMBER","CAST"],EPa=["ABSENT","ACCORDING","ACCTNG","ACTION","ACTIVATE","ADD","ALIAS","ALL","ALLOCATE","ALLOW","ALTER","AND","ANY","APPEND","APPLNAME","ARRAY","ARRAY_AGG","ARRAY_TRIM","AS","ASC","ASENSITIVE","ASSOCIATE","ATOMIC","ATTACH","ATTRIBUTES","AUTHORIZATION","AUTONOMOUS","BEFORE","BEGIN","BETWEEN","BIND","BSON","BUFFERPOOL","BY","CACHE","CALL","CALLED","CARDINALITY","CASE","CAST","CHECK","CL","CLOSE","CLUSTER","COLLECT","COLLECTION","COLUMN","COMMENT","COMMIT","COMPACT","COMPARISONS","COMPRESS","CONCAT","CONCURRENT","CONDITION","CONNECT","CONNECT_BY_ROOT","CONNECTION","CONSTANT","CONSTRAINT","CONTAINS","CONTENT","CONTINUE","COPY","COUNT","COUNT_BIG","CREATE","CREATEIN","CROSS","CUBE","CUME_DIST","CURRENT","CURRENT_DATE","CURRENT_PATH","CURRENT_SCHEMA","CURRENT_SERVER","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","CURSOR","CYCLE","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYS","DB2GENERAL","DB2GENRL","DB2SQL","DBINFO","DBPARTITIONNAME","DBPARTITIONNUM","DEACTIVATE","DEALLOCATE","DECLARE","DEFAULT","DEFAULTS","DEFER","DEFINE","DEFINITION","DELETE","DELETING","DENSE_RANK","DENSERANK","DESC","DESCRIBE","DESCRIPTOR","DETACH","DETERMINISTIC","DIAGNOSTICS","DISABLE","DISALLOW","DISCONNECT","DISTINCT","DO","DOCUMENT","DROP","DYNAMIC","EACH","ELSE","ELSEIF","EMPTY","ENABLE","ENCODING","ENCRYPTION","END","END-EXEC","ENDING","ENFORCED","ERROR","ESCAPE","EVERY","EXCEPT","EXCEPTION","EXCLUDING","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXTEND","EXTERNAL","EXTRACT","FALSE","FENCED","FETCH","FIELDPROC","FILE","FINAL","FIRST_VALUE","FOR","FOREIGN","FORMAT","FREE","FREEPAGE","FROM","FULL","FUNCTION","GBPCACHE","GENERAL","GENERATED","GET","GLOBAL","GO","GOTO","GRANT","GROUP","HANDLER","HASH","HASH_ROW","HASHED_VALUE","HAVING","HINT","HOLD","HOUR","HOURS","IDENTITY","IF","IGNORE","IMMEDIATE","IMPLICITLY","IN","INCLUDE","INCLUDING","INCLUSIVE","INCREMENT","INDEX","INDEXBP","INDICATOR","INF","INFINITY","INHERIT","INLINE","INNER","INOUT","INSENSITIVE","INSERT","INSERTING","INTEGRITY","INTERPRET","INTERSECT","INTO","IS","ISNULL","ISOLATION","ITERATE","JAVA","JOIN","JSON","JSON_ARRAY","JSON_ARRAYAGG","JSON_EXISTS","JSON_OBJECT","JSON_OBJECTAGG","JSON_QUERY","JSON_TABLE","JSON_VALUE","KEEP","KEY","KEYS","LABEL","LAG","LANGUAGE","LAST_VALUE","LATERAL","LEAD","LEAVE","LEFT","LEVEL2","LIKE","LIMIT","LINKTYPE","LISTAGG","LOCAL","LOCALDATE","LOCALTIME","LOCALTIMESTAMP","LOCATION","LOCATOR","LOCK","LOCKSIZE","LOG","LOGGED","LOOP","MAINTAINED","MASK","MATCHED","MATERIALIZED","MAXVALUE","MERGE","MICROSECOND","MICROSECONDS","MINPCTUSED","MINUTE","MINUTES","MINVALUE","MIRROR","MIXED","MODE","MODIFIES","MONTH","MONTHS","NAMESPACE","NAN","NATIONAL","NCHAR","NCLOB","NESTED","NEW","NEW_TABLE","NEXTVAL","NO","NOCACHE","NOCYCLE","NODENAME","NODENUMBER","NOMAXVALUE","NOMINVALUE","NONE","NOORDER","NORMALIZED","NOT","NOTNULL","NTH_VALUE","NTILE","NULL","NULLS","NVARCHAR","OBID","OBJECT","OF","OFF","OFFSET","OLD","OLD_TABLE","OMIT","ON","ONLY","OPEN","OPTIMIZE","OPTION","OR","ORDER","ORDINALITY","ORGANIZE","OUT","OUTER","OVER","OVERLAY","OVERRIDING","PACKAGE","PADDED","PAGE","PAGESIZE","PARAMETER","PART","PARTITION","PARTITIONED","PARTITIONING","PARTITIONS","PASSING","PASSWORD","PATH","PCTFREE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PERIOD","PERMISSION","PIECESIZE","PIPE","PLAN","POSITION","PREPARE","PREVVAL","PRIMARY","PRIOR","PRIQTY","PRIVILEGES","PROCEDURE","PROGRAM","PROGRAMID","QUERY","RANGE","RANK","RATIO_TO_REPORT","RCDFMT","READ","READS","RECOVERY","REFERENCES","REFERENCING","REFRESH","REGEXP_LIKE","RELEASE","RENAME","REPEAT","RESET","RESIGNAL","RESTART","RESULT","RESULT_SET_LOCATOR","RETURN","RETURNING","RETURNS","REVOKE","RID","RIGHT","ROLLBACK","ROLLUP","ROUTINE","ROW","ROW_NUMBER","ROWNUMBER","ROWS","RRN","RUN","SAVEPOINT","SBCS","SCALAR","SCHEMA","SCRATCHPAD","SCROLL","SEARCH","SECOND","SECONDS","SECQTY","SECURED","SELECT","SENSITIVE","SEQUENCE","SESSION","SESSION_USER","SET","SIGNAL","SIMPLE","SKIP","SNAN","SOME","SOURCE","SPECIFIC","SQL","SQLID","SQLIND_DEFAULT","SQLIND_UNASSIGNED","STACKED","START","STARTING","STATEMENT","STATIC","STOGROUP","SUBSTRING","SUMMARY","SYNONYM","SYSTEM_TIME","SYSTEM_USER","TABLE","TABLESPACE","TABLESPACES","TAG","THEN","THREADSAFE","TO","TRANSACTION","TRANSFER","TRIGGER","TRIM","TRIM_ARRAY","TRUE","TRUNCATE","TRY_CAST","TYPE","UNDO","UNION","UNIQUE","UNIT","UNKNOWN","UNNEST","UNTIL","UPDATE","UPDATING","URI","USAGE","USE","USER","USERID","USING","VALUE","VALUES","VARIABLE","VARIANT","VCAT","VERSION","VERSIONING","VIEW","VOLATILE","WAIT","WHEN","WHENEVER","WHERE","WHILE","WITH","WITHIN","WITHOUT","WRAPPED","WRAPPER","WRITE","WRKSTNNAME","XMLAGG","XMLATTRIBUTES","XMLCAST","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLGROUP","XMLNAMESPACES","XMLPARSE","XMLPI","XMLROW","XMLSERIALIZE","XMLTABLE","XMLTEXT","XMLVALIDATE","XSLTRANSFORM","XSROBJECT","YEAR","YEARS","YES","ZONE"],BPa=["ARRAY","BIGINT","BINARY","BIT","BLOB","BOOLEAN","CCSID","CHAR","CHARACTER","CLOB","DATA","DATALINK","DATE","DBCLOB","DECFLOAT","DECIMAL","DEC","DOUBLE","DOUBLE PRECISION","FLOAT","GRAPHIC","INT","INTEGER","LONG","NUMERIC","REAL","ROWID","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR","VARGRAPHIC","XML"],vPa=Xa(["SELECT [ALL | DISTINCT]"]),SPa=Xa(["WITH [RECURSIVE]","INTO","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER [SIBLINGS] BY [INPUT SEQUENCE]","LIMIT","OFFSET","FETCH {FIRST | NEXT}","FOR UPDATE [OF]","FOR READ ONLY","OPTIMIZE FOR","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","DELETE","INSERT","FOR SYSTEM NAME"]),Nvi=Xa(["CREATE [OR REPLACE] TABLE"]),Mhr=Xa(["CREATE [OR REPLACE] [RECURSIVE] VIEW","UPDATE","WHERE CURRENT OF","WITH {NC | RR | RS | CS | UR}","DELETE FROM","DROP TABLE","ALTER TABLE","ADD [COLUMN]","ALTER [COLUMN]","DROP [COLUMN]","SET DATA TYPE","SET {GENERATED ALWAYS | GENERATED BY DEFAULT}","SET NOT NULL","SET {NOT HIDDEN | IMPLICITLY HIDDEN}","SET FIELDPROC","DROP {DEFAULT | NOT NULL | GENERATED | IDENTITY | ROW CHANGE TIMESTAMP | FIELDPROC}","TRUNCATE [TABLE]","SET [CURRENT] SCHEMA","SET CURRENT_SCHEMA","ALLOCATE CURSOR","ALLOCATE [SQL] DESCRIPTOR [LOCAL | GLOBAL] SQL","ALTER [SPECIFIC] {FUNCTION | PROCEDURE}","ALTER {MASK | PERMISSION | SEQUENCE | TRIGGER}","ASSOCIATE [RESULT SET] {LOCATOR | LOCATORS}","BEGIN DECLARE SECTION","CALL","CLOSE","COMMENT ON {ALIAS | COLUMN | CONSTRAINT | INDEX | MASK | PACKAGE | PARAMETER | PERMISSION | SEQUENCE | TABLE | TRIGGER | VARIABLE | XSROBJECT}","COMMENT ON [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE}","COMMENT ON PARAMETER SPECIFIC {FUNCTION | PROCEDURE | ROUTINE}","COMMENT ON [TABLE FUNCTION] RETURN COLUMN","COMMENT ON [TABLE FUNCTION] RETURN COLUMN SPECIFIC [PROCEDURE | ROUTINE]","COMMIT [WORK] [HOLD]","CONNECT [TO | RESET] USER","CREATE [OR REPLACE] {ALIAS | FUNCTION | MASK | PERMISSION | PROCEDURE | SEQUENCE | TRIGGER | VARIABLE}","CREATE [ENCODED VECTOR] INDEX","CREATE UNIQUE [WHERE NOT NULL] INDEX","CREATE SCHEMA","CREATE TYPE","DEALLOCATE [SQL] DESCRIPTOR [LOCAL | GLOBAL]","DECLARE CURSOR","DECLARE GLOBAL TEMPORARY TABLE","DECLARE","DESCRIBE CURSOR","DESCRIBE INPUT","DESCRIBE [OUTPUT]","DESCRIBE {PROCEDURE | ROUTINE}","DESCRIBE TABLE","DISCONNECT ALL [SQL]","DISCONNECT [CURRENT]","DROP {ALIAS | INDEX | MASK | PACKAGE | PERMISSION | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT} [IF EXISTS]","DROP [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE} [IF EXISTS]","END DECLARE SECTION","EXECUTE [IMMEDIATE]","FREE LOCATOR","GET [SQL] DESCRIPTOR [LOCAL | GLOBAL]","GET [CURRENT | STACKED] DIAGNOSTICS","GRANT {ALL [PRIVILEGES] | ALTER | EXECUTE} ON {FUNCTION | PROCEDURE | ROUTINE | PACKAGE | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT}","HOLD LOCATOR","INCLUDE","LABEL ON {ALIAS | COLUMN | CONSTRAINT | INDEX | MASK | PACKAGE | PERMISSION | SEQUENCE | TABLE | TRIGGER | VARIABLE | XSROBJECT}","LABEL ON [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE}","LOCK TABLE","OPEN","PREPARE","REFRESH TABLE","RELEASE","RELEASE [TO] SAVEPOINT","RENAME [TABLE | INDEX] TO","REVOKE {ALL [PRIVILEGES] | ALTER | EXECUTE} ON {FUNCTION | PROCEDURE | ROUTINE | PACKAGE | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT}","ROLLBACK [WORK] [HOLD | TO SAVEPOINT]","SAVEPOINT","SET CONNECTION","SET CURRENT {DEBUG MODE | DECFLOAT ROUNDING MODE | DEGREE | IMPLICIT XMLPARSE OPTION | TEMPORAL SYSTEM_TIME}","SET [SQL] DESCRIPTOR [LOCAL | GLOBAL]","SET ENCRYPTION PASSWORD","SET OPTION","SET {[CURRENT [FUNCTION]] PATH | CURRENT_PATH}","SET RESULT SETS [WITH RETURN [TO CALLER | TO CLIENT]]","SET SESSION AUTHORIZATION","SET SESSION_USER","SET TRANSACTION","SIGNAL SQLSTATE [VALUE]","TAG","TRANSFER OWNERSHIP OF","WHENEVER {NOT FOUND | SQLERROR | SQLWARNING}"]),wPa=Xa(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),TPa=Xa(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","[LEFT | RIGHT] EXCEPTION JOIN","{INNER | CROSS} JOIN"]),NPa=Xa(["ON DELETE","ON UPDATE","SET NULL","{ROWS | RANGE} BETWEEN"]),RPa={name:"db2i",tokenizerOptions:{reservedSelect:vPa,reservedClauses:[...SPa,...Nvi,...Mhr],reservedSetOperations:wPa,reservedJoins:TPa,reservedPhrases:NPa,reservedKeywords:EPa,reservedDataTypes:BPa,reservedFunctionNames:bPa,nestedBlockComments:!0,extraParens:["[]"],stringTypes:[{quote:"''-qq",prefixes:["G","N"]},{quote:"''-raw",prefixes:["X","BX","GX","UX"],requirePrefix:!0}],identTypes:['""-qq'],identChars:{first:"@#$",rest:"@#$"},paramTypes:{positional:!0,named:[":"]},paramChars:{first:"@#$",rest:"@#$"},operators:["**","\xAC=","\xAC>","\xAC<","!>","!<","||","=>"]},formatOptions:{onelineClauses:[...Nvi,...Mhr],tabularOnelineClauses:Mhr}},DPa=["ABS","ACOS","ASIN","ATAN","BIN","BROUND","CBRT","CEIL","CEILING","CONV","COS","DEGREES","EXP","FACTORIAL","FLOOR","GREATEST","HEX","LEAST","LN","LOG","LOG10","LOG2","NEGATIVE","PI","PMOD","POSITIVE","POW","POWER","RADIANS","RAND","ROUND","SHIFTLEFT","SHIFTRIGHT","SHIFTRIGHTUNSIGNED","SIGN","SIN","SQRT","TAN","UNHEX","WIDTH_BUCKET","ARRAY_CONTAINS","MAP_KEYS","MAP_VALUES","SIZE","SORT_ARRAY","BINARY","CAST","ADD_MONTHS","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFYEAR","EXTRACT","FROM_UNIXTIME","FROM_UTC_TIMESTAMP","HOUR","LAST_DAY","MINUTE","MONTH","MONTHS_BETWEEN","NEXT_DAY","QUARTER","SECOND","TIMESTAMP","TO_DATE","TO_UTC_TIMESTAMP","TRUNC","UNIX_TIMESTAMP","WEEKOFYEAR","YEAR","ASSERT_TRUE","COALESCE","IF","ISNOTNULL","ISNULL","NULLIF","NVL","ASCII","BASE64","CHARACTER_LENGTH","CHR","CONCAT","CONCAT_WS","CONTEXT_NGRAMS","DECODE","ELT","ENCODE","FIELD","FIND_IN_SET","FORMAT_NUMBER","GET_JSON_OBJECT","IN_FILE","INITCAP","INSTR","LCASE","LENGTH","LEVENSHTEIN","LOCATE","LOWER","LPAD","LTRIM","NGRAMS","OCTET_LENGTH","PARSE_URL","PRINTF","QUOTE","REGEXP_EXTRACT","REGEXP_REPLACE","REPEAT","REVERSE","RPAD","RTRIM","SENTENCES","SOUNDEX","SPACE","SPLIT","STR_TO_MAP","SUBSTR","SUBSTRING","TRANSLATE","TRIM","UCASE","UNBASE64","UPPER","MASK","MASK_FIRST_N","MASK_HASH","MASK_LAST_N","MASK_SHOW_FIRST_N","MASK_SHOW_LAST_N","AES_DECRYPT","AES_ENCRYPT","CRC32","CURRENT_DATABASE","CURRENT_USER","HASH","JAVA_METHOD","LOGGED_IN_USER","MD5","REFLECT","SHA","SHA1","SHA2","SURROGATE_KEY","VERSION","AVG","COLLECT_LIST","COLLECT_SET","CORR","COUNT","COVAR_POP","COVAR_SAMP","HISTOGRAM_NUMERIC","MAX","MIN","NTILE","PERCENTILE","PERCENTILE_APPROX","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","EXPLODE","INLINE","JSON_TUPLE","PARSE_URL_TUPLE","POSEXPLODE","STACK","LEAD","LAG","FIRST_VALUE","LAST_VALUE","RANK","ROW_NUMBER","DENSE_RANK","CUME_DIST","PERCENT_RANK","NTILE"],xPa=["ADD","ADMIN","AFTER","ANALYZE","ARCHIVE","ASC","BEFORE","BUCKET","BUCKETS","CASCADE","CHANGE","CLUSTER","CLUSTERED","CLUSTERSTATUS","COLLECTION","COLUMNS","COMMENT","COMPACT","COMPACTIONS","COMPUTE","CONCATENATE","CONTINUE","DATA","DATABASES","DATETIME","DAY","DBPROPERTIES","DEFERRED","DEFINED","DELIMITED","DEPENDENCY","DESC","DIRECTORIES","DIRECTORY","DISABLE","DISTRIBUTE","ELEM_TYPE","ENABLE","ESCAPED","EXCLUSIVE","EXPLAIN","EXPORT","FIELDS","FILE","FILEFORMAT","FIRST","FORMAT","FORMATTED","FUNCTIONS","HOLD_DDLTIME","HOUR","IDXPROPERTIES","IGNORE","INDEX","INDEXES","INPATH","INPUTDRIVER","INPUTFORMAT","ITEMS","JAR","KEYS","KEY_TYPE","LIMIT","LINES","LOAD","LOCATION","LOCK","LOCKS","LOGICAL","LONG","MAPJOIN","MATERIALIZED","METADATA","MINUS","MINUTE","MONTH","MSCK","NOSCAN","NO_DROP","OFFLINE","OPTION","OUTPUTDRIVER","OUTPUTFORMAT","OVERWRITE","OWNER","PARTITIONED","PARTITIONS","PLUS","PRETTY","PRINCIPALS","PROTECTION","PURGE","READ","READONLY","REBUILD","RECORDREADER","RECORDWRITER","RELOAD","RENAME","REPAIR","REPLACE","REPLICATION","RESTRICT","REWRITE","ROLE","ROLES","SCHEMA","SCHEMAS","SECOND","SEMI","SERDE","SERDEPROPERTIES","SERVER","SETS","SHARED","SHOW","SHOW_DATABASE","SKEWED","SORT","SORTED","SSL","STATISTICS","STORED","STREAMTABLE","STRING","TABLES","TBLPROPERTIES","TEMPORARY","TERMINATED","TINYINT","TOUCH","TRANSACTIONS","UNARCHIVE","UNDO","UNIONTYPE","UNLOCK","UNSET","UNSIGNED","URI","USE","UTC","UTCTIMESTAMP","VALUE_TYPE","VIEW","WHILE","YEAR","AUTOCOMMIT","ISOLATION","LEVEL","OFFSET","SNAPSHOT","TRANSACTION","WORK","WRITE","ABORT","KEY","LAST","NORELY","NOVALIDATE","NULLS","RELY","VALIDATE","DETAIL","DOW","EXPRESSION","OPERATOR","QUARTER","SUMMARY","VECTORIZATION","WEEK","YEARS","MONTHS","WEEKS","DAYS","HOURS","MINUTES","SECONDS","TIMESTAMPTZ","ZONE","ALL","ALTER","AND","AS","AUTHORIZATION","BETWEEN","BOTH","BY","CASE","CAST","COLUMN","CONF","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIMESTAMP","CURSOR","DATABASE","DELETE","DESCRIBE","DISTINCT","DROP","ELSE","END","EXCHANGE","EXISTS","EXTENDED","EXTERNAL","FALSE","FETCH","FOLLOWING","FOR","FROM","FULL","FUNCTION","GRANT","GROUP","GROUPING","HAVING","IF","IMPORT","IN","INNER","INSERT","INTERSECT","INTO","IS","JOIN","LATERAL","LEFT","LESS","LIKE","LOCAL","MACRO","MORE","NONE","NOT","NULL","OF","ON","OR","ORDER","OUT","OUTER","OVER","PARTIALSCAN","PARTITION","PERCENT","PRECEDING","PRESERVE","PROCEDURE","RANGE","READS","REDUCE","REVOKE","RIGHT","ROLLUP","ROW","ROWS","SELECT","SET","TABLE","TABLESAMPLE","THEN","TO","TRANSFORM","TRIGGER","TRUE","TRUNCATE","UNBOUNDED","UNION","UNIQUEJOIN","UPDATE","USER","USING","UTC_TMESTAMP","VALUES","WHEN","WHERE","WINDOW","WITH","COMMIT","ONLY","REGEXP","RLIKE","ROLLBACK","START","CACHE","CONSTRAINT","FOREIGN","PRIMARY","REFERENCES","DAYOFWEEK","EXTRACT","FLOOR","VIEWS","TIME","SYNC","TEXTFILE","SEQUENCEFILE","ORC","CSV","TSV","PARQUET","AVRO","RCFILE","JSONFILE","INPUTFORMAT","OUTPUTFORMAT"],kPa=["ARRAY","BIGINT","BINARY","BOOLEAN","CHAR","DATE","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","MAP","NUMERIC","PRECISION","SMALLINT","STRUCT","TIMESTAMP","VARCHAR"],GPa=Xa(["SELECT [ALL | DISTINCT]"]),FPa=Xa(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","SORT BY","CLUSTER BY","DISTRIBUTE BY","LIMIT","INSERT INTO [TABLE]","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","INSERT [VALUES]","INSERT OVERWRITE [LOCAL] DIRECTORY","LOAD DATA [LOCAL] INPATH","[OVERWRITE] INTO TABLE"]),Rvi=Xa(["CREATE [TEMPORARY] [EXTERNAL] TABLE [IF NOT EXISTS]"]),Hhr=Xa(["CREATE [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","RENAME TO","TRUNCATE [TABLE]","ALTER","CREATE","USE","DESCRIBE","DROP","FETCH","SHOW","STORED AS","STORED BY","ROW FORMAT"]),ZPa=Xa(["UNION [ALL | DISTINCT]"]),LPa=Xa(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","LEFT SEMI JOIN"]),VPa=Xa(["{ROWS | RANGE} BETWEEN"]),WPa={name:"hive",tokenizerOptions:{reservedSelect:GPa,reservedClauses:[...FPa,...Rvi,...Hhr],reservedSetOperations:ZPa,reservedJoins:LPa,reservedPhrases:VPa,reservedKeywords:xPa,reservedDataTypes:kPa,reservedFunctionNames:DPa,extraParens:["[]"],stringTypes:['""-bs',"''-bs"],identTypes:["``"],variableTypes:[{quote:"{}",prefixes:["$"],requirePrefix:!0}],operators:["%","~","^","|","&","<=>","==","!","||"]},formatOptions:{onelineClauses:[...Rvi,...Hhr],tabularOnelineClauses:Hhr}};function uyt(e){return e.map((t,r)=>{let s=e[r+1]||wwe;if(vIe.SET(t)&&s.text==="(")return qF(ix({},t),{type:"RESERVED_FUNCTION_NAME"});let a=e[r-1]||wwe;return vIe.VALUES(t)&&a.text==="="?qF(ix({},t),{type:"RESERVED_FUNCTION_NAME"}):t})}var PPa=["ACCESSIBLE","ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DELETE_DOMAIN_ID","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DO_DOMAIN_IDS","DROP","DUAL","EACH","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FOR","FORCE","FOREIGN","FROM","FULLTEXT","GENERAL","GRANT","GROUP","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IGNORE_DOMAIN_IDS","IGNORE_SERVER_IDS","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","INTERSECT","INTERVAL","INTO","IS","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LOOP","LOW_PRIORITY","MASTER_HEARTBEAT_PERIOD","MASTER_SSL_VERIFY_SERVER_CERT","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NOT","NO_WRITE_TO_BINLOG","NULL","OFFSET","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PAGE_CHECKSUM","PARSE_VCOL_EXPR","PARTITION","POSITION","PRIMARY","PROCEDURE","PURGE","RANGE","READ","READS","READ_WRITE","RECURSIVE","REF_SYSTEM_ID","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESIGNAL","RESTRICT","RETURN","RETURNING","REVOKE","RIGHT","RLIKE","ROW_NUMBER","ROWS","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SLOW","SPATIAL","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STATS_AUTO_RECALC","STATS_PERSISTENT","STATS_SAMPLE_PAGES","STRAIGHT_JOIN","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNDO","UNION","UNIQUE","UNLOCK","UNSIGNED","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],OPa=["BIGINT","BINARY","BIT","BLOB","CHAR BYTE","CHAR","CHARACTER","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONG","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],QPa=["ADDDATE","ADD_MONTHS","BIT_AND","BIT_OR","BIT_XOR","CAST","COUNT","CUME_DIST","CURDATE","CURTIME","DATE_ADD","DATE_SUB","DATE_FORMAT","DECODE","DENSE_RANK","EXTRACT","FIRST_VALUE","GROUP_CONCAT","JSON_ARRAYAGG","JSON_OBJECTAGG","LAG","LEAD","MAX","MEDIAN","MID","MIN","NOW","NTH_VALUE","NTILE","POSITION","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","ROW_NUMBER","SESSION_USER","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","SUBDATE","SUBSTR","SUBSTRING","SUM","SYSTEM_USER","TRIM","TRIM_ORACLE","VARIANCE","VAR_POP","VAR_SAMP","ABS","ACOS","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ASIN","ATAN","ATAN2","BENCHMARK","BIN","BINLOG_GTID_POS","BIT_COUNT","BIT_LENGTH","CEIL","CEILING","CHARACTER_LENGTH","CHAR_LENGTH","CHR","COERCIBILITY","COLUMN_CHECK","COLUMN_EXISTS","COLUMN_LIST","COLUMN_JSON","COMPRESS","CONCAT","CONCAT_OPERATOR_ORACLE","CONCAT_WS","CONNECTION_ID","CONV","CONVERT_TZ","COS","COT","CRC32","DATEDIFF","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DEGREES","DECODE_HISTOGRAM","DECODE_ORACLE","DES_DECRYPT","DES_ENCRYPT","ELT","ENCODE","ENCRYPT","EXP","EXPORT_SET","EXTRACTVALUE","FIELD","FIND_IN_SET","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GET_LOCK","GREATEST","HEX","IFNULL","INSTR","ISNULL","IS_FREE_LOCK","IS_USED_LOCK","JSON_ARRAY","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_COMPACT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_DETAILED","JSON_EXISTS","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_LOOSE","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_QUERY","JSON_QUOTE","JSON_OBJECT","JSON_REMOVE","JSON_REPLACE","JSON_SET","JSON_SEARCH","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","JSON_VALUE","LAST_DAY","LAST_INSERT_ID","LCASE","LEAST","LENGTH","LENGTHB","LN","LOAD_FILE","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LPAD_ORACLE","LTRIM","LTRIM_ORACLE","MAKEDATE","MAKETIME","MAKE_SET","MASTER_GTID_WAIT","MASTER_POS_WAIT","MD5","MONTHNAME","NAME_CONST","NVL","NVL2","OCT","OCTET_LENGTH","ORD","PERIOD_ADD","PERIOD_DIFF","PI","POW","POWER","QUOTE","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","RADIANS","RAND","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPLACE_ORACLE","REVERSE","ROUND","RPAD","RPAD_ORACLE","RTRIM","RTRIM_ORACLE","SEC_TO_TIME","SHA","SHA1","SHA2","SIGN","SIN","SLEEP","SOUNDEX","SPACE","SQRT","STRCMP","STR_TO_DATE","SUBSTR_ORACLE","SUBSTRING_INDEX","SUBTIME","SYS_GUID","TAN","TIMEDIFF","TIME_FORMAT","TIME_TO_SEC","TO_BASE64","TO_CHAR","TO_DAYS","TO_SECONDS","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UUID","UUID_SHORT","VERSION","WEEKDAY","WEEKOFYEAR","WSREP_LAST_WRITTEN_GTID","WSREP_LAST_SEEN_GTID","WSREP_SYNC_WAIT_UPTO_GTID","YEARWEEK","COALESCE","NULLIF"],MPa=Xa(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),HPa=Xa(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET","RETURNING"]),Dvi=Xa(["CREATE [OR REPLACE] [TEMPORARY] TABLE [IF NOT EXISTS]"]),Yhr=Xa(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER [ONLINE] [IGNORE] TABLE [IF EXISTS]","ADD [COLUMN] [IF NOT EXISTS]","{CHANGE | MODIFY} [COLUMN] [IF EXISTS]","DROP [COLUMN] [IF EXISTS]","RENAME [TO]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","SET {VISIBLE | INVISIBLE}","TRUNCATE [TABLE]","ALTER DATABASE","ALTER DATABASE COMMENT","ALTER EVENT","ALTER FUNCTION","ALTER PROCEDURE","ALTER SCHEMA","ALTER SCHEMA COMMENT","ALTER SEQUENCE","ALTER SERVER","ALTER USER","ALTER VIEW","ANALYZE","ANALYZE TABLE","BACKUP LOCK","BACKUP STAGE","BACKUP UNLOCK","BEGIN","BINLOG","CACHE INDEX","CALL","CHANGE MASTER TO","CHECK TABLE","CHECK VIEW","CHECKSUM TABLE","COMMIT","CREATE AGGREGATE FUNCTION","CREATE DATABASE","CREATE EVENT","CREATE FUNCTION","CREATE INDEX","CREATE PROCEDURE","CREATE ROLE","CREATE SEQUENCE","CREATE SERVER","CREATE SPATIAL INDEX","CREATE TRIGGER","CREATE UNIQUE INDEX","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP EVENT","DROP FUNCTION","DROP INDEX","DROP PREPARE","DROP PROCEDURE","DROP ROLE","DROP SEQUENCE","DROP SERVER","DROP TRIGGER","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","GET DIAGNOSTICS","GET DIAGNOSTICS CONDITION","GRANT","HANDLER","HELP","INSTALL PLUGIN","INSTALL SONAME","KILL","LOAD DATA INFILE","LOAD INDEX INTO CACHE","LOAD XML INFILE","LOCK TABLE","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","PURGE MASTER LOGS","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","REPAIR VIEW","RESET MASTER","RESET QUERY CACHE","RESET REPLICA","RESET SLAVE","RESIGNAL","REVOKE","ROLLBACK","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET GLOBAL TRANSACTION","SET NAMES","SET PASSWORD","SET ROLE","SET STATEMENT","SET TRANSACTION","SHOW","SHOW ALL REPLICAS STATUS","SHOW ALL SLAVES STATUS","SHOW AUTHORS","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW BINLOG STATUS","SHOW CHARACTER SET","SHOW CLIENT_STATISTICS","SHOW COLLATION","SHOW COLUMNS","SHOW CONTRIBUTORS","SHOW CREATE DATABASE","SHOW CREATE EVENT","SHOW CREATE FUNCTION","SHOW CREATE PACKAGE","SHOW CREATE PACKAGE BODY","SHOW CREATE PROCEDURE","SHOW CREATE SEQUENCE","SHOW CREATE TABLE","SHOW CREATE TRIGGER","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINE INNODB STATUS","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW EXPLAIN","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW INDEXES","SHOW INDEX_STATISTICS","SHOW KEYS","SHOW LOCALES","SHOW MASTER LOGS","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PACKAGE BODY CODE","SHOW PACKAGE BODY STATUS","SHOW PACKAGE STATUS","SHOW PLUGINS","SHOW PLUGINS SONAME","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW QUERY_RESPONSE_TIME","SHOW RELAYLOG EVENTS","SHOW REPLICA","SHOW REPLICA HOSTS","SHOW REPLICA STATUS","SHOW SCHEMAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW SLAVE STATUS","SHOW STATUS","SHOW STORAGE ENGINES","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW USER_STATISTICS","SHOW VARIABLES","SHOW WARNINGS","SHOW WSREP_MEMBERSHIP","SHOW WSREP_STATUS","SHUTDOWN","SIGNAL","START ALL REPLICAS","START ALL SLAVES","START REPLICA","START SLAVE","START TRANSACTION","STOP ALL REPLICAS","STOP ALL SLAVES","STOP REPLICA","STOP SLAVE","UNINSTALL PLUGIN","UNINSTALL SONAME","UNLOCK TABLE","USE","XA BEGIN","XA COMMIT","XA END","XA PREPARE","XA RECOVER","XA ROLLBACK","XA START"]),YPa=Xa(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]","MINUS [ALL | DISTINCT]"]),XPa=Xa(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),JPa=Xa(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),UPa={name:"mariadb",tokenizerOptions:{reservedSelect:MPa,reservedClauses:[...HPa,...Dvi,...Yhr],reservedSetOperations:YPa,reservedJoins:XPa,reservedPhrases:JPa,supportsXor:!0,reservedKeywords:PPa,reservedDataTypes:OPa,reservedFunctionNames:QPa,stringTypes:['""-qq-bs',"''-qq-bs",{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","&&","||","!","*.*"],postProcess:uyt},formatOptions:{onelineClauses:[...Dvi,...Yhr],tabularOnelineClauses:Yhr}},KPa=["ACCESSIBLE","ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CUBE","CUME_DIST","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DENSE_RANK","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DROP","DUAL","EACH","ELSE","ELSEIF","EMPTY","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FIRST_VALUE","FOR","FORCE","FOREIGN","FROM","FULLTEXT","FUNCTION","GENERATED","GET","GRANT","GROUP","GROUPING","GROUPS","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","IN","INTERSECT","INTERVAL","INTO","IO_AFTER_GTIDS","IO_BEFORE_GTIDS","IS","ITERATE","JOIN","JSON_TABLE","KEY","KEYS","KILL","LAG","LAST_VALUE","LATERAL","LEAD","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LONG","LOOP","LOW_PRIORITY","MASTER_BIND","MASTER_SSL_VERIFY_SERVER_CERT","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NOT","NO_WRITE_TO_BINLOG","NTH_VALUE","NTILE","NULL","OF","ON","OPTIMIZE","OPTIMIZER_COSTS","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PARTITION","PERCENT_RANK","PRIMARY","PROCEDURE","PURGE","RANGE","RANK","READ","READS","READ_WRITE","RECURSIVE","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESIGNAL","RESTRICT","RETURN","REVOKE","RIGHT","RLIKE","ROW","ROWS","ROW_NUMBER","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SPATIAL","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STORED","STRAIGHT_JOIN","SYSTEM","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNDO","UNION","UNIQUE","UNLOCK","UNSIGNED","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","VIRTUAL","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],jPa=["BIGINT","BINARY","BIT","BLOB","BOOL","BOOLEAN","CHAR","CHARACTER","DATE","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],zPa=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","ASCII","ASIN","ATAN","ATAN2","AVG","BENCHMARK","BIN","BIN_TO_UUID","BINARY","BIT_AND","BIT_COUNT","BIT_LENGTH","BIT_OR","BIT_XOR","CAN_ACCESS_COLUMN","CAN_ACCESS_DATABASE","CAN_ACCESS_TABLE","CAN_ACCESS_USER","CAN_ACCESS_VIEW","CAST","CEIL","CEILING","CHAR","CHAR_LENGTH","CHARACTER_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CRC32","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DEFAULT","DEGREES","DENSE_RANK","DIV","ELT","EXP","EXPORT_SET","EXTRACT","EXTRACTVALUE","FIELD","FIND_IN_SET","FIRST_VALUE","FLOOR","FORMAT","FORMAT_BYTES","FORMAT_PICO_TIME","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GEOMCOLLECTION","GEOMETRYCOLLECTION","GET_DD_COLUMN_PRIVILEGES","GET_DD_CREATE_OPTIONS","GET_DD_INDEX_SUB_PART_LENGTH","GET_FORMAT","GET_LOCK","GREATEST","GROUP_CONCAT","GROUPING","GTID_SUBSET","GTID_SUBTRACT","HEX","HOUR","ICU_VERSION","IF","IFNULL","INET_ATON","INET_NTOA","INET6_ATON","INET6_NTOA","INSERT","INSTR","INTERNAL_AUTO_INCREMENT","INTERNAL_AVG_ROW_LENGTH","INTERNAL_CHECK_TIME","INTERNAL_CHECKSUM","INTERNAL_DATA_FREE","INTERNAL_DATA_LENGTH","INTERNAL_DD_CHAR_LENGTH","INTERNAL_GET_COMMENT_OR_ERROR","INTERNAL_GET_ENABLED_ROLE_JSON","INTERNAL_GET_HOSTNAME","INTERNAL_GET_USERNAME","INTERNAL_GET_VIEW_WARNING_OR_ERROR","INTERNAL_INDEX_COLUMN_CARDINALITY","INTERNAL_INDEX_LENGTH","INTERNAL_IS_ENABLED_ROLE","INTERNAL_IS_MANDATORY_ROLE","INTERNAL_KEYS_DISABLED","INTERNAL_MAX_DATA_LENGTH","INTERNAL_TABLE_ROWS","INTERNAL_UPDATE_TIME","INTERVAL","IS","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS NOT","IS NOT NULL","IS NULL","IS_USED_LOCK","IS_UUID","ISNULL","JSON_ARRAY","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_ARRAYAGG","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_OBJECTAGG","JSON_OVERLAPS","JSON_PRETTY","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SCHEMA_VALID","JSON_SCHEMA_VALIDATION_REPORT","JSON_SEARCH","JSON_SET","JSON_STORAGE_FREE","JSON_STORAGE_SIZE","JSON_TABLE","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","JSON_VALUE","LAG","LAST_DAY","LAST_INSERT_ID","LAST_VALUE","LCASE","LEAD","LEAST","LEFT","LENGTH","LIKE","LINESTRING","LN","LOAD_FILE","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","MAKE_SET","MAKEDATE","MAKETIME","MASTER_POS_WAIT","MATCH","MAX","MBRCONTAINS","MBRCOVEREDBY","MBRCOVERS","MBRDISJOINT","MBREQUALS","MBRINTERSECTS","MBROVERLAPS","MBRTOUCHES","MBRWITHIN","MD5","MEMBER OF","MICROSECOND","MID","MIN","MINUTE","MOD","MONTH","MONTHNAME","MULTILINESTRING","MULTIPOINT","MULTIPOLYGON","NAME_CONST","NOT","NOT IN","NOT LIKE","NOT REGEXP","NOW","NTH_VALUE","NTILE","NULLIF","OCT","OCTET_LENGTH","ORD","PERCENT_RANK","PERIOD_ADD","PERIOD_DIFF","PI","POINT","POLYGON","POSITION","POW","POWER","PS_CURRENT_THREAD_ID","PS_THREAD_ID","QUARTER","QUOTE","RADIANS","RAND","RANDOM_BYTES","RANK","REGEXP","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPEAT","REPLACE","REVERSE","RIGHT","RLIKE","ROLES_GRAPHML","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCHEMA","SEC_TO_TIME","SECOND","SESSION_USER","SHA1","SHA2","SIGN","SIN","SLEEP","SOUNDEX","SOUNDS LIKE","SOURCE_POS_WAIT","SPACE","SQRT","ST_AREA","ST_ASBINARY","ST_ASGEOJSON","ST_ASTEXT","ST_BUFFER","ST_BUFFER_STRATEGY","ST_CENTROID","ST_COLLECT","ST_CONTAINS","ST_CONVEXHULL","ST_CROSSES","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DISTANCE_SPHERE","ST_ENDPOINT","ST_ENVELOPE","ST_EQUALS","ST_EXTERIORRING","ST_FRECHETDISTANCE","ST_GEOHASH","ST_GEOMCOLLFROMTEXT","ST_GEOMCOLLFROMWKB","ST_GEOMETRYN","ST_GEOMETRYTYPE","ST_GEOMFROMGEOJSON","ST_GEOMFROMTEXT","ST_GEOMFROMWKB","ST_HAUSDORFFDISTANCE","ST_INTERIORRINGN","ST_INTERSECTION","ST_INTERSECTS","ST_ISCLOSED","ST_ISEMPTY","ST_ISSIMPLE","ST_ISVALID","ST_LATFROMGEOHASH","ST_LATITUDE","ST_LENGTH","ST_LINEFROMTEXT","ST_LINEFROMWKB","ST_LINEINTERPOLATEPOINT","ST_LINEINTERPOLATEPOINTS","ST_LONGFROMGEOHASH","ST_LONGITUDE","ST_MAKEENVELOPE","ST_MLINEFROMTEXT","ST_MLINEFROMWKB","ST_MPOINTFROMTEXT","ST_MPOINTFROMWKB","ST_MPOLYFROMTEXT","ST_MPOLYFROMWKB","ST_NUMGEOMETRIES","ST_NUMINTERIORRING","ST_NUMPOINTS","ST_OVERLAPS","ST_POINTATDISTANCE","ST_POINTFROMGEOHASH","ST_POINTFROMTEXT","ST_POINTFROMWKB","ST_POINTN","ST_POLYFROMTEXT","ST_POLYFROMWKB","ST_SIMPLIFY","ST_SRID","ST_STARTPOINT","ST_SWAPXY","ST_SYMDIFFERENCE","ST_TOUCHES","ST_TRANSFORM","ST_UNION","ST_VALIDATE","ST_WITHIN","ST_X","ST_Y","STATEMENT_DIGEST","STATEMENT_DIGEST_TEXT","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","STRCMP","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUBTIME","SUM","SYSDATE","SYSTEM_USER","TAN","TIME","TIME_FORMAT","TIME_TO_SEC","TIMEDIFF","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TO_BASE64","TO_DAYS","TO_SECONDS","TRIM","TRUNCATE","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","UUID_SHORT","UUID_TO_BIN","VALIDATE_PASSWORD_STRENGTH","VALUES","VAR_POP","VAR_SAMP","VARIANCE","VERSION","WAIT_FOR_EXECUTED_GTID_SET","WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS","WEEK","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","YEAR","YEARWEEK"],qPa=Xa(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),$Pa=Xa(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET"]),xvi=Xa(["CREATE [TEMPORARY] TABLE [IF NOT EXISTS]"]),Xhr=Xa(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","{CHANGE | MODIFY} [COLUMN]","DROP [COLUMN]","RENAME [TO | AS]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","TRUNCATE [TABLE]","ALTER DATABASE","ALTER EVENT","ALTER FUNCTION","ALTER INSTANCE","ALTER LOGFILE GROUP","ALTER PROCEDURE","ALTER RESOURCE GROUP","ALTER SERVER","ALTER TABLESPACE","ALTER USER","ALTER VIEW","ANALYZE TABLE","BINLOG","CACHE INDEX","CALL","CHANGE MASTER TO","CHANGE REPLICATION FILTER","CHANGE REPLICATION SOURCE TO","CHECK TABLE","CHECKSUM TABLE","CLONE","COMMIT","CREATE DATABASE","CREATE EVENT","CREATE FUNCTION","CREATE FUNCTION","CREATE INDEX","CREATE LOGFILE GROUP","CREATE PROCEDURE","CREATE RESOURCE GROUP","CREATE ROLE","CREATE SERVER","CREATE SPATIAL REFERENCE SYSTEM","CREATE TABLESPACE","CREATE TRIGGER","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP EVENT","DROP FUNCTION","DROP FUNCTION","DROP INDEX","DROP LOGFILE GROUP","DROP PROCEDURE","DROP RESOURCE GROUP","DROP ROLE","DROP SERVER","DROP SPATIAL REFERENCE SYSTEM","DROP TABLESPACE","DROP TRIGGER","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","GRANT","HANDLER","HELP","IMPORT TABLE","INSTALL COMPONENT","INSTALL PLUGIN","KILL","LOAD DATA","LOAD INDEX INTO CACHE","LOAD XML","LOCK INSTANCE FOR BACKUP","LOCK TABLES","MASTER_POS_WAIT","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","RESET","RESET MASTER","RESET PERSIST","RESET REPLICA","RESET SLAVE","RESTART","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE EVENT","SHOW CREATE FUNCTION","SHOW CREATE PROCEDURE","SHOW CREATE TABLE","SHOW CREATE TRIGGER","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW RELAYLOG EVENTS","SHOW REPLICA STATUS","SHOW REPLICAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW VARIABLES","SHOW WARNINGS","SHUTDOWN","SOURCE_POS_WAIT","START GROUP_REPLICATION","START REPLICA","START SLAVE","START TRANSACTION","STOP GROUP_REPLICATION","STOP REPLICA","STOP SLAVE","TABLE","UNINSTALL COMPONENT","UNINSTALL PLUGIN","UNLOCK INSTANCE","UNLOCK TABLES","USE","XA","ITERATE","LEAVE","LOOP","REPEAT","RETURN","WHILE"]),eOa=Xa(["UNION [ALL | DISTINCT]"]),tOa=Xa(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),rOa=Xa(["ON {UPDATE | DELETE} [SET NULL]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),nOa={name:"mysql",tokenizerOptions:{reservedSelect:qPa,reservedClauses:[...$Pa,...xvi,...Xhr],reservedSetOperations:eOa,reservedJoins:tOa,reservedPhrases:rOa,supportsXor:!0,reservedKeywords:KPa,reservedDataTypes:jPa,reservedFunctionNames:zPa,stringTypes:['""-qq-bs',{quote:"''-qq-bs",prefixes:["N"]},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","->","->>","&&","||","!","*.*"],postProcess:uyt},formatOptions:{onelineClauses:[...xvi,...Xhr],tabularOnelineClauses:Xhr}},iOa=["ADD","ALL","ALTER","ANALYZE","AND","ARRAY","AS","ASC","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DEFAULT","DELAYED","DELETE","DESC","DESCRIBE","DISTINCT","DISTINCTROW","DIV","DOUBLE","DROP","DUAL","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FOR","FORCE","FOREIGN","FROM","FULLTEXT","GENERATED","GRANT","GROUP","GROUPS","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","ILIKE","IN","INDEX","INFILE","INNER","INOUT","INSERT","INTERSECT","INTERVAL","INTO","IS","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LONG","LOW_PRIORITY","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","NATURAL","NOT","NO_WRITE_TO_BINLOG","NULL","OF","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PARTITION","PRIMARY","PROCEDURE","RANGE","READ","RECURSIVE","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESTRICT","REVOKE","RIGHT","RLIKE","ROW","ROWS","SECOND_MICROSECOND","SELECT","SET","SHOW","SPATIAL","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STATS_EXTENDED","STORED","STRAIGHT_JOIN","TABLE","TABLESAMPLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","TiDB_CURRENT_TSO","UNION","UNIQUE","UNLOCK","UNSIGNED","UNTIL","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","VIRTUAL","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],sOa=["BIGINT","BINARY","BIT","BLOB","BOOL","BOOLEAN","CHAR","CHARACTER","DATE","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],oOa=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","ASCII","ASIN","ATAN","ATAN2","AVG","BENCHMARK","BIN","BIN_TO_UUID","BIT_AND","BIT_COUNT","BIT_LENGTH","BIT_OR","BIT_XOR","BITAND","BITNEG","BITOR","BITXOR","CASE","CAST","CEIL","CEILING","CHAR_FUNC","CHAR_LENGTH","CHARACTER_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CRC32","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_RESOURCE_GROUP","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEFAULT_FUNC","DEGREES","DENSE_RANK","DES_DECRYPT","DES_ENCRYPT","DIV","ELT","ENCODE","ENCRYPT","EQ","EXP","EXPORT_SET","EXTRACT","FIELD","FIND_IN_SET","FIRST_VALUE","FLOOR","FORMAT","FORMAT_BYTES","FORMAT_NANO_TIME","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GE","GET_FORMAT","GET_LOCK","GETPARAM","GREATEST","GROUP_CONCAT","GROUPING","GT","HEX","HOUR","IF","IFNULL","ILIKE","INET6_ATON","INET6_NTOA","INET_ATON","INET_NTOA","INSERT_FUNC","INSTR","INTDIV","INTERVAL","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS_USED_LOCK","IS_UUID","ISFALSE","ISNULL","ISTRUE","JSON_ARRAY","JSON_ARRAYAGG","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MEMBEROF","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_OBJECTAGG","JSON_OVERLAPS","JSON_PRETTY","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SEARCH","JSON_SET","JSON_STORAGE_FREE","JSON_STORAGE_SIZE","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","LAG","LAST_DAY","LAST_INSERT_ID","LAST_VALUE","LASTVAL","LCASE","LE","LEAD","LEAST","LEFT","LEFTSHIFT","LENGTH","LIKE","LN","LOAD_FILE","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LT","LTRIM","MAKE_SET","MAKEDATE","MAKETIME","MASTER_POS_WAIT","MAX","MD5","MICROSECOND","MID","MIN","MINUS","MINUTE","MOD","MONTH","MONTHNAME","MUL","NAME_CONST","NE","NEXTVAL","NOT","NOW","NTH_VALUE","NTILE","NULLEQ","OCT","OCTET_LENGTH","OLD_PASSWORD","ORD","PASSWORD_FUNC","PERCENT_RANK","PERIOD_ADD","PERIOD_DIFF","PI","PLUS","POSITION","POW","POWER","QUARTER","QUOTE","RADIANS","RAND","RANDOM_BYTES","RANK","REGEXP","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPEAT","REPLACE","REVERSE","RIGHT","RIGHTSHIFT","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCHEMA","SEC_TO_TIME","SECOND","SESSION_USER","SETVAL","SETVAR","SHA","SHA1","SHA2","SIGN","SIN","SLEEP","SM3","SPACE","SQRT","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","STRCMP","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUBTIME","SUM","SYSDATE","SYSTEM_USER","TAN","TIDB_BOUNDED_STALENESS","TIDB_CURRENT_TSO","TIDB_DECODE_BINARY_PLAN","TIDB_DECODE_KEY","TIDB_DECODE_PLAN","TIDB_DECODE_SQL_DIGESTS","TIDB_ENCODE_SQL_DIGEST","TIDB_IS_DDL_OWNER","TIDB_PARSE_TSO","TIDB_PARSE_TSO_LOGICAL","TIDB_ROW_CHECKSUM","TIDB_SHARD","TIDB_VERSION","TIME","TIME_FORMAT","TIME_TO_SEC","TIMEDIFF","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TO_BASE64","TO_DAYS","TO_SECONDS","TRANSLATE","TRIM","TRUNCATE","UCASE","UNARYMINUS","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","UUID_SHORT","UUID_TO_BIN","VALIDATE_PASSWORD_STRENGTH","VAR_POP","VAR_SAMP","VARIANCE","VERSION","VITESS_HASH","WEEK","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","YEAR","YEARWEEK"],aOa=Xa(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),cOa=Xa(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET"]),kvi=Xa(["CREATE [TEMPORARY] TABLE [IF NOT EXISTS]"]),Jhr=Xa(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","{CHANGE | MODIFY} [COLUMN]","DROP [COLUMN]","RENAME [TO | AS]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","TRUNCATE [TABLE]","ALTER DATABASE","ALTER INSTANCE","ALTER RESOURCE GROUP","ALTER SEQUENCE","ALTER USER","ALTER VIEW","ANALYZE TABLE","CHECK TABLE","CHECKSUM TABLE","COMMIT","CREATE DATABASE","CREATE INDEX","CREATE RESOURCE GROUP","CREATE ROLE","CREATE SEQUENCE","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP INDEX","DROP RESOURCE GROUP","DROP ROLE","DROP TABLESPACE","DROP USER","DROP VIEW","EXPLAIN","FLUSH","GRANT","IMPORT TABLE","INSTALL COMPONENT","INSTALL PLUGIN","KILL","LOAD DATA","LOCK INSTANCE FOR BACKUP","LOCK TABLES","OPTIMIZE TABLE","PREPARE","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","RESET","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE TABLE","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW VARIABLES","SHOW WARNINGS","TABLE","UNINSTALL COMPONENT","UNINSTALL PLUGIN","UNLOCK INSTANCE","UNLOCK TABLES","USE"]),lOa=Xa(["UNION [ALL | DISTINCT]"]),uOa=Xa(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),gOa=Xa(["ON {UPDATE | DELETE} [SET NULL]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),AOa={name:"tidb",tokenizerOptions:{reservedSelect:aOa,reservedClauses:[...cOa,...kvi,...Jhr],reservedSetOperations:lOa,reservedJoins:uOa,reservedPhrases:gOa,supportsXor:!0,reservedKeywords:iOa,reservedDataTypes:sOa,reservedFunctionNames:oOa,stringTypes:['""-qq-bs',{quote:"''-qq-bs",prefixes:["N"]},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","->","->>","&&","||","!","*.*"],postProcess:uyt},formatOptions:{onelineClauses:[...kvi,...Jhr],tabularOnelineClauses:Jhr}},dOa=["ABORT","ABS","ACOS","ADVISOR","ARRAY_AGG","ARRAY_AGG","ARRAY_APPEND","ARRAY_AVG","ARRAY_BINARY_SEARCH","ARRAY_CONCAT","ARRAY_CONTAINS","ARRAY_COUNT","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_FLATTEN","ARRAY_IFNULL","ARRAY_INSERT","ARRAY_INTERSECT","ARRAY_LENGTH","ARRAY_MAX","ARRAY_MIN","ARRAY_MOVE","ARRAY_POSITION","ARRAY_PREPEND","ARRAY_PUT","ARRAY_RANGE","ARRAY_REMOVE","ARRAY_REPEAT","ARRAY_REPLACE","ARRAY_REVERSE","ARRAY_SORT","ARRAY_STAR","ARRAY_SUM","ARRAY_SYMDIFF","ARRAY_SYMDIFF1","ARRAY_SYMDIFFN","ARRAY_UNION","ASIN","ATAN","ATAN2","AVG","BASE64","BASE64_DECODE","BASE64_ENCODE","BITAND ","BITCLEAR ","BITNOT ","BITOR ","BITSET ","BITSHIFT ","BITTEST ","BITXOR ","CEIL","CLOCK_LOCAL","CLOCK_MILLIS","CLOCK_STR","CLOCK_TZ","CLOCK_UTC","COALESCE","CONCAT","CONCAT2","CONTAINS","CONTAINS_TOKEN","CONTAINS_TOKEN_LIKE","CONTAINS_TOKEN_REGEXP","COS","COUNT","COUNT","COUNTN","CUME_DIST","CURL","DATE_ADD_MILLIS","DATE_ADD_STR","DATE_DIFF_MILLIS","DATE_DIFF_STR","DATE_FORMAT_STR","DATE_PART_MILLIS","DATE_PART_STR","DATE_RANGE_MILLIS","DATE_RANGE_STR","DATE_TRUNC_MILLIS","DATE_TRUNC_STR","DECODE","DECODE_JSON","DEGREES","DENSE_RANK","DURATION_TO_STR","ENCODED_SIZE","ENCODE_JSON","EXP","FIRST_VALUE","FLOOR","GREATEST","HAS_TOKEN","IFINF","IFMISSING","IFMISSINGORNULL","IFNAN","IFNANORINF","IFNULL","INITCAP","ISARRAY","ISATOM","ISBITSET","ISBOOLEAN","ISNUMBER","ISOBJECT","ISSTRING","LAG","LAST_VALUE","LEAD","LEAST","LENGTH","LN","LOG","LOWER","LTRIM","MAX","MEAN","MEDIAN","META","MILLIS","MILLIS_TO_LOCAL","MILLIS_TO_STR","MILLIS_TO_TZ","MILLIS_TO_UTC","MILLIS_TO_ZONE_NAME","MIN","MISSINGIF","NANIF","NEGINFIF","NOW_LOCAL","NOW_MILLIS","NOW_STR","NOW_TZ","NOW_UTC","NTH_VALUE","NTILE","NULLIF","NVL","NVL2","OBJECT_ADD","OBJECT_CONCAT","OBJECT_INNER_PAIRS","OBJECT_INNER_VALUES","OBJECT_LENGTH","OBJECT_NAMES","OBJECT_PAIRS","OBJECT_PUT","OBJECT_REMOVE","OBJECT_RENAME","OBJECT_REPLACE","OBJECT_UNWRAP","OBJECT_VALUES","PAIRS","PERCENT_RANK","PI","POLY_LENGTH","POSINFIF","POSITION","POWER","RADIANS","RANDOM","RANK","RATIO_TO_REPORT","REGEXP_CONTAINS","REGEXP_LIKE","REGEXP_MATCHES","REGEXP_POSITION","REGEXP_REPLACE","REGEXP_SPLIT","REGEX_CONTAINS","REGEX_LIKE","REGEX_MATCHES","REGEX_POSITION","REGEX_REPLACE","REGEX_SPLIT","REPEAT","REPLACE","REVERSE","ROUND","ROW_NUMBER","RTRIM","SEARCH","SEARCH_META","SEARCH_SCORE","SIGN","SIN","SPLIT","SQRT","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DURATION","STR_TO_MILLIS","STR_TO_TZ","STR_TO_UTC","STR_TO_ZONE_NAME","SUBSTR","SUFFIXES","SUM","TAN","TITLE","TOARRAY","TOATOM","TOBOOLEAN","TOKENS","TOKENS","TONUMBER","TOOBJECT","TOSTRING","TRIM","TRUNC","UPPER","UUID","VARIANCE","VARIANCE_POP","VARIANCE_SAMP","VAR_POP","VAR_SAMP","WEEKDAY_MILLIS","WEEKDAY_STR","CAST"],pOa=["ADVISE","ALL","ALTER","ANALYZE","AND","ANY","ARRAY","AS","ASC","AT","BEGIN","BETWEEN","BINARY","BOOLEAN","BREAK","BUCKET","BUILD","BY","CALL","CASE","CAST","CLUSTER","COLLATE","COLLECTION","COMMIT","COMMITTED","CONNECT","CONTINUE","CORRELATED","COVER","CREATE","CURRENT","DATABASE","DATASET","DATASTORE","DECLARE","DECREMENT","DELETE","DERIVED","DESC","DESCRIBE","DISTINCT","DO","DROP","EACH","ELEMENT","ELSE","END","EVERY","EXCEPT","EXCLUDE","EXECUTE","EXISTS","EXPLAIN","FALSE","FETCH","FILTER","FIRST","FLATTEN","FLUSH","FOLLOWING","FOR","FORCE","FROM","FTS","FUNCTION","GOLANG","GRANT","GROUP","GROUPS","GSI","HASH","HAVING","IF","IGNORE","ILIKE","IN","INCLUDE","INCREMENT","INDEX","INFER","INLINE","INNER","INSERT","INTERSECT","INTO","IS","ISOLATION","JAVASCRIPT","JOIN","KEY","KEYS","KEYSPACE","KNOWN","LANGUAGE","LAST","LEFT","LET","LETTING","LEVEL","LIKE","LIMIT","LSM","MAP","MAPPING","MATCHED","MATERIALIZED","MERGE","MINUS","MISSING","NAMESPACE","NEST","NL","NO","NOT","NTH_VALUE","NULL","NULLS","NUMBER","OBJECT","OFFSET","ON","OPTION","OPTIONS","OR","ORDER","OTHERS","OUTER","OVER","PARSE","PARTITION","PASSWORD","PATH","POOL","PRECEDING","PREPARE","PRIMARY","PRIVATE","PRIVILEGE","PROBE","PROCEDURE","PUBLIC","RANGE","RAW","REALM","REDUCE","RENAME","RESPECT","RETURN","RETURNING","REVOKE","RIGHT","ROLE","ROLLBACK","ROW","ROWS","SATISFIES","SAVEPOINT","SCHEMA","SCOPE","SELECT","SELF","SEMI","SET","SHOW","SOME","START","STATISTICS","STRING","SYSTEM","THEN","TIES","TO","TRAN","TRANSACTION","TRIGGER","TRUE","TRUNCATE","UNBOUNDED","UNDER","UNION","UNIQUE","UNKNOWN","UNNEST","UNSET","UPDATE","UPSERT","USE","USER","USING","VALIDATE","VALUE","VALUED","VALUES","VIA","VIEW","WHEN","WHERE","WHILE","WINDOW","WITH","WITHIN","WORK","XOR"],fOa=[],IOa=Xa(["SELECT [ALL | DISTINCT]"]),COa=Xa(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED THEN","UPDATE SET","INSERT","NEST","UNNEST","RETURNING"]),Gvi=Xa(["UPDATE","DELETE FROM","SET SCHEMA","ADVISE","ALTER INDEX","BEGIN TRANSACTION","BUILD INDEX","COMMIT TRANSACTION","CREATE COLLECTION","CREATE FUNCTION","CREATE INDEX","CREATE PRIMARY INDEX","CREATE SCOPE","DROP COLLECTION","DROP FUNCTION","DROP INDEX","DROP PRIMARY INDEX","DROP SCOPE","EXECUTE","EXECUTE FUNCTION","EXPLAIN","GRANT","INFER","PREPARE","REVOKE","ROLLBACK TRANSACTION","SAVEPOINT","SET TRANSACTION","UPDATE STATISTICS","UPSERT","LET","SET CURRENT SCHEMA","SHOW","USE [PRIMARY] KEYS"]),mOa=Xa(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),hOa=Xa(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","INNER JOIN"]),_Oa=Xa(["{ROWS | RANGE | GROUPS} BETWEEN"]),yOa={name:"n1ql",tokenizerOptions:{reservedSelect:IOa,reservedClauses:[...COa,...Gvi],reservedSetOperations:mOa,reservedJoins:hOa,reservedPhrases:_Oa,supportsXor:!0,reservedKeywords:pOa,reservedDataTypes:fOa,reservedFunctionNames:dOa,stringTypes:['""-bs',"''-bs"],identTypes:["``"],extraParens:["[]","{}"],paramTypes:{positional:!0,numbered:["$"],named:["$"]},lineCommentTypes:["#","--"],operators:["%","==",":","||"]},formatOptions:{onelineClauses:Gvi}},bOa=["ADD","AGENT","AGGREGATE","ALL","ALTER","AND","ANY","ARROW","AS","ASC","AT","ATTRIBUTE","AUTHID","AVG","BEGIN","BETWEEN","BLOCK","BODY","BOTH","BOUND","BULK","BY","BYTE","CALL","CALLING","CASCADE","CASE","CHARSET","CHARSETFORM","CHARSETID","CHECK","CLOSE","CLUSTER","CLUSTERS","COLAUTH","COLLECT","COLUMNS","COMMENT","COMMIT","COMMITTED","COMPILED","COMPRESS","CONNECT","CONSTANT","CONSTRUCTOR","CONTEXT","CONVERT","COUNT","CRASH","CREATE","CURRENT","CURSOR","CUSTOMDATUM","DANGLING","DATA","DAY","DECLARE","DEFAULT","DEFINE","DELETE","DESC","DETERMINISTIC","DISTINCT","DROP","DURATION","ELEMENT","ELSE","ELSIF","EMPTY","END","ESCAPE","EXCEPT","EXCEPTION","EXCEPTIONS","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXTERNAL","FETCH","FINAL","FIXED","FOR","FORALL","FORCE","FORM","FROM","FUNCTION","GENERAL","GOTO","GRANT","GROUP","HASH","HAVING","HEAP","HIDDEN","HOUR","IDENTIFIED","IF","IMMEDIATE","IN","INCLUDING","INDEX","INDEXES","INDICATOR","INDICES","INFINITE","INSERT","INSTANTIABLE","INTERFACE","INTERSECT","INTERVAL","INTO","INVALIDATE","IS","ISOLATION","JAVA","LANGUAGE","LARGE","LEADING","LENGTH","LEVEL","LIBRARY","LIKE","LIKE2","LIKE4","LIKEC","LIMIT","LIMITED","LOCAL","LOCK","LOOP","MAP","MAX","MAXLEN","MEMBER","MERGE","MIN","MINUS","MINUTE","MOD","MODE","MODIFY","MONTH","MULTISET","NAME","NAN","NATIONAL","NATIVE","NEW","NOCOMPRESS","NOCOPY","NOT","NOWAIT","NULL","OBJECT","OCICOLL","OCIDATE","OCIDATETIME","OCIDURATION","OCIINTERVAL","OCILOBLOCATOR","OCINUMBER","OCIRAW","OCIREF","OCIREFCURSOR","OCIROWID","OCISTRING","OCITYPE","OF","ON","ONLY","OPAQUE","OPEN","OPERATOR","OPTION","OR","ORACLE","ORADATA","ORDER","OVERLAPS","ORGANIZATION","ORLANY","ORLVARY","OTHERS","OUT","OVERRIDING","PACKAGE","PARALLEL_ENABLE","PARAMETER","PARAMETERS","PARTITION","PASCAL","PIPE","PIPELINED","PRAGMA","PRIOR","PRIVATE","PROCEDURE","PUBLIC","RAISE","RANGE","READ","RECORD","REF","REFERENCE","REM","REMAINDER","RENAME","RESOURCE","RESULT","RETURN","RETURNING","REVERSE","REVOKE","ROLLBACK","ROW","SAMPLE","SAVE","SAVEPOINT","SB1","SB2","SB4","SECOND","SEGMENT","SELECT","SELF","SEPARATE","SEQUENCE","SERIALIZABLE","SET","SHARE","SHORT","SIZE","SIZE_T","SOME","SPARSE","SQL","SQLCODE","SQLDATA","SQLNAME","SQLSTATE","STANDARD","START","STATIC","STDDEV","STORED","STRING","STRUCT","STYLE","SUBMULTISET","SUBPARTITION","SUBSTITUTABLE","SUBTYPE","SUM","SYNONYM","TABAUTH","TABLE","TDO","THE","THEN","TIME","TIMEZONE_ABBR","TIMEZONE_HOUR","TIMEZONE_MINUTE","TIMEZONE_REGION","TO","TRAILING","TRANSAC","TRANSACTIONAL","TRUSTED","TYPE","UB1","UB2","UB4","UNDER","UNION","UNIQUE","UNSIGNED","UNTRUSTED","UPDATE","USE","USING","VALIST","VALUE","VALUES","VARIABLE","VARIANCE","VARRAY","VIEW","VIEWS","VOID","WHEN","WHERE","WHILE","WITH","WORK","WRAPPED","WRITE","YEAR","ZONE"],EOa=["ARRAY","BFILE_BASE","BINARY","BLOB_BASE","CHAR VARYING","CHAR_BASE","CHAR","CHARACTER VARYING","CHARACTER","CLOB_BASE","DATE_BASE","DATE","DECIMAL","DOUBLE","FLOAT","INT","INTERVAL DAY","INTERVAL YEAR","LONG","NATIONAL CHAR VARYING","NATIONAL CHAR","NATIONAL CHARACTER VARYING","NATIONAL CHARACTER","NCHAR VARYING","NCHAR","NCHAR","NUMBER_BASE","NUMBER","NUMBERIC","NVARCHAR","PRECISION","RAW","TIMESTAMP","UROWID","VARCHAR","VARCHAR2"],BOa=["ABS","ACOS","ASIN","ATAN","ATAN2","BITAND","CEIL","COS","COSH","EXP","FLOOR","LN","LOG","MOD","NANVL","POWER","REMAINDER","ROUND","SIGN","SIN","SINH","SQRT","TAN","TANH","TRUNC","WIDTH_BUCKET","CHR","CONCAT","INITCAP","LOWER","LPAD","LTRIM","NLS_INITCAP","NLS_LOWER","NLSSORT","NLS_UPPER","REGEXP_REPLACE","REGEXP_SUBSTR","REPLACE","RPAD","RTRIM","SOUNDEX","SUBSTR","TRANSLATE","TREAT","TRIM","UPPER","NLS_CHARSET_DECL_LEN","NLS_CHARSET_ID","NLS_CHARSET_NAME","ASCII","INSTR","LENGTH","REGEXP_INSTR","ADD_MONTHS","CURRENT_DATE","CURRENT_TIMESTAMP","DBTIMEZONE","EXTRACT","FROM_TZ","LAST_DAY","LOCALTIMESTAMP","MONTHS_BETWEEN","NEW_TIME","NEXT_DAY","NUMTODSINTERVAL","NUMTOYMINTERVAL","ROUND","SESSIONTIMEZONE","SYS_EXTRACT_UTC","SYSDATE","SYSTIMESTAMP","TO_CHAR","TO_TIMESTAMP","TO_TIMESTAMP_TZ","TO_DSINTERVAL","TO_YMINTERVAL","TRUNC","TZ_OFFSET","GREATEST","LEAST","ASCIISTR","BIN_TO_NUM","CAST","CHARTOROWID","COMPOSE","CONVERT","DECOMPOSE","HEXTORAW","NUMTODSINTERVAL","NUMTOYMINTERVAL","RAWTOHEX","RAWTONHEX","ROWIDTOCHAR","ROWIDTONCHAR","SCN_TO_TIMESTAMP","TIMESTAMP_TO_SCN","TO_BINARY_DOUBLE","TO_BINARY_FLOAT","TO_CHAR","TO_CLOB","TO_DATE","TO_DSINTERVAL","TO_LOB","TO_MULTI_BYTE","TO_NCHAR","TO_NCLOB","TO_NUMBER","TO_DSINTERVAL","TO_SINGLE_BYTE","TO_TIMESTAMP","TO_TIMESTAMP_TZ","TO_YMINTERVAL","TO_YMINTERVAL","TRANSLATE","UNISTR","BFILENAME","EMPTY_BLOB,","EMPTY_CLOB","CARDINALITY","COLLECT","POWERMULTISET","POWERMULTISET_BY_CARDINALITY","SET","SYS_CONNECT_BY_PATH","CLUSTER_ID","CLUSTER_PROBABILITY","CLUSTER_SET","FEATURE_ID","FEATURE_SET","FEATURE_VALUE","PREDICTION","PREDICTION_COST","PREDICTION_DETAILS","PREDICTION_PROBABILITY","PREDICTION_SET","APPENDCHILDXML","DELETEXML","DEPTH","EXTRACT","EXISTSNODE","EXTRACTVALUE","INSERTCHILDXML","INSERTXMLBEFORE","PATH","SYS_DBURIGEN","SYS_XMLAGG","SYS_XMLGEN","UPDATEXML","XMLAGG","XMLCDATA","XMLCOLATTVAL","XMLCOMMENT","XMLCONCAT","XMLFOREST","XMLPARSE","XMLPI","XMLQUERY","XMLROOT","XMLSEQUENCE","XMLSERIALIZE","XMLTABLE","XMLTRANSFORM","DECODE","DUMP","ORA_HASH","VSIZE","COALESCE","LNNVL","NULLIF","NVL","NVL2","SYS_CONTEXT","SYS_GUID","SYS_TYPEID","UID","USER","USERENV","AVG","COLLECT","CORR","CORR_S","CORR_K","COUNT","COVAR_POP","COVAR_SAMP","CUME_DIST","DENSE_RANK","FIRST","GROUP_ID","GROUPING","GROUPING_ID","LAST","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","RANK","REGR_SLOPE","REGR_INTERCEPT","REGR_COUNT","REGR_R2","REGR_AVGX","REGR_AVGY","REGR_SXX","REGR_SYY","REGR_SXY","STATS_BINOMIAL_TEST","STATS_CROSSTAB","STATS_F_TEST","STATS_KS_TEST","STATS_MODE","STATS_MW_TEST","STATS_ONE_WAY_ANOVA","STATS_T_TEST_ONE","STATS_T_TEST_PAIRED","STATS_T_TEST_INDEP","STATS_T_TEST_INDEPU","STATS_WSR_TEST","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTILE","RATIO_TO_REPORT","ROW_NUMBER","DEREF","MAKE_REF","REF","REFTOHEX","VALUE","CV","ITERATION_NUMBER","PRESENTNNV","PRESENTV","PREVIOUS"],vOa=Xa(["SELECT [ALL | DISTINCT | UNIQUE]"]),SOa=Xa(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER [SIBLINGS] BY","OFFSET","FETCH {FIRST | NEXT}","FOR UPDATE [OF]","INSERT [INTO | ALL INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [THEN]","UPDATE SET","RETURNING"]),Fvi=Xa(["CREATE [GLOBAL TEMPORARY | PRIVATE TEMPORARY | SHARDED | DUPLICATED | IMMUTABLE BLOCKCHAIN | BLOCKCHAIN | IMMUTABLE] TABLE"]),Uhr=Xa(["CREATE [OR REPLACE] [NO FORCE | FORCE] [EDITIONING | EDITIONABLE | EDITIONABLE EDITIONING | NONEDITIONABLE] VIEW","CREATE MATERIALIZED VIEW","UPDATE [ONLY]","DELETE FROM [ONLY]","DROP TABLE","ALTER TABLE","ADD","DROP {COLUMN | UNUSED COLUMNS | COLUMNS CONTINUE}","MODIFY","RENAME TO","RENAME COLUMN","TRUNCATE TABLE","SET SCHEMA","BEGIN","CONNECT BY","DECLARE","EXCEPT","EXCEPTION","LOOP","START WITH"]),wOa=Xa(["UNION [ALL]","EXCEPT","INTERSECT"]),TOa=Xa(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN","{CROSS | OUTER} APPLY"]),NOa=Xa(["ON {UPDATE | DELETE} [SET NULL]","ON COMMIT","{ROWS | RANGE} BETWEEN"]),ROa={name:"plsql",tokenizerOptions:{reservedSelect:vOa,reservedClauses:[...SOa,...Fvi,...Uhr],reservedSetOperations:wOa,reservedJoins:TOa,reservedPhrases:NOa,supportsXor:!0,reservedKeywords:bOa,reservedDataTypes:EOa,reservedFunctionNames:BOa,stringTypes:[{quote:"''-qq",prefixes:["N"]},{quote:"q''",prefixes:["N"]}],identTypes:['""-qq'],identChars:{rest:"$#"},variableTypes:[{regex:"&{1,2}[A-Za-z][A-Za-z0-9_$#]*"}],paramTypes:{numbered:[":"],named:[":"]},paramChars:{},operators:["**",":=","%","~=","^=",">>","<<","=>","@","||"],postProcess:DOa},formatOptions:{alwaysDenseOperators:["@"],onelineClauses:[...Fvi,...Uhr],tabularOnelineClauses:Uhr}};function DOa(e){let t=wwe;return e.map(r=>vIe.SET(r)&&vIe.BY(t)?qF(ix({},r),{type:"RESERVED_KEYWORD"}):(aSi(r.type)&&(t=r),r))}var xOa=["ABS","ACOS","ACOSD","ACOSH","ASIN","ASIND","ASINH","ATAN","ATAN2","ATAN2D","ATAND","ATANH","CBRT","CEIL","CEILING","COS","COSD","COSH","COT","COTD","DEGREES","DIV","EXP","FACTORIAL","FLOOR","GCD","LCM","LN","LOG","LOG10","MIN_SCALE","MOD","PI","POWER","RADIANS","RANDOM","ROUND","SCALE","SETSEED","SIGN","SIN","SIND","SINH","SQRT","TAN","TAND","TANH","TRIM_SCALE","TRUNC","WIDTH_BUCKET","ABS","ASCII","BIT_LENGTH","BTRIM","CHARACTER_LENGTH","CHAR_LENGTH","CHR","CONCAT","CONCAT_WS","FORMAT","INITCAP","LEFT","LENGTH","LOWER","LPAD","LTRIM","MD5","NORMALIZE","OCTET_LENGTH","OVERLAY","PARSE_IDENT","PG_CLIENT_ENCODING","POSITION","QUOTE_IDENT","QUOTE_LITERAL","QUOTE_NULLABLE","REGEXP_MATCH","REGEXP_MATCHES","REGEXP_REPLACE","REGEXP_SPLIT_TO_ARRAY","REGEXP_SPLIT_TO_TABLE","REPEAT","REPLACE","REVERSE","RIGHT","RPAD","RTRIM","SPLIT_PART","SPRINTF","STARTS_WITH","STRING_AGG","STRING_TO_ARRAY","STRING_TO_TABLE","STRPOS","SUBSTR","SUBSTRING","TO_ASCII","TO_HEX","TRANSLATE","TRIM","UNISTR","UPPER","BIT_COUNT","BIT_LENGTH","BTRIM","CONVERT","CONVERT_FROM","CONVERT_TO","DECODE","ENCODE","GET_BIT","GET_BYTE","LENGTH","LTRIM","MD5","OCTET_LENGTH","OVERLAY","POSITION","RTRIM","SET_BIT","SET_BYTE","SHA224","SHA256","SHA384","SHA512","STRING_AGG","SUBSTR","SUBSTRING","TRIM","BIT_COUNT","BIT_LENGTH","GET_BIT","LENGTH","OCTET_LENGTH","OVERLAY","POSITION","SET_BIT","SUBSTRING","REGEXP_MATCH","REGEXP_MATCHES","REGEXP_REPLACE","REGEXP_SPLIT_TO_ARRAY","REGEXP_SPLIT_TO_TABLE","TO_CHAR","TO_DATE","TO_NUMBER","TO_TIMESTAMP","CLOCK_TIMESTAMP","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE_BIN","DATE_PART","DATE_TRUNC","EXTRACT","ISFINITE","JUSTIFY_DAYS","JUSTIFY_HOURS","JUSTIFY_INTERVAL","LOCALTIME","LOCALTIMESTAMP","MAKE_DATE","MAKE_INTERVAL","MAKE_TIME","MAKE_TIMESTAMP","MAKE_TIMESTAMPTZ","NOW","PG_SLEEP","PG_SLEEP_FOR","PG_SLEEP_UNTIL","STATEMENT_TIMESTAMP","TIMEOFDAY","TO_TIMESTAMP","TRANSACTION_TIMESTAMP","ENUM_FIRST","ENUM_LAST","ENUM_RANGE","AREA","BOUND_BOX","BOX","CENTER","CIRCLE","DIAGONAL","DIAMETER","HEIGHT","ISCLOSED","ISOPEN","LENGTH","LINE","LSEG","NPOINTS","PATH","PCLOSE","POINT","POLYGON","POPEN","RADIUS","SLOPE","WIDTH","ABBREV","BROADCAST","FAMILY","HOST","HOSTMASK","INET_MERGE","INET_SAME_FAMILY","MACADDR8_SET7BIT","MASKLEN","NETMASK","NETWORK","SET_MASKLEN","TRUNC","ARRAY_TO_TSVECTOR","GET_CURRENT_TS_CONFIG","JSONB_TO_TSVECTOR","JSON_TO_TSVECTOR","LENGTH","NUMNODE","PHRASETO_TSQUERY","PLAINTO_TSQUERY","QUERYTREE","SETWEIGHT","STRIP","TO_TSQUERY","TO_TSVECTOR","TSQUERY_PHRASE","TSVECTOR_TO_ARRAY","TS_DEBUG","TS_DELETE","TS_FILTER","TS_HEADLINE","TS_LEXIZE","TS_PARSE","TS_RANK","TS_RANK_CD","TS_REWRITE","TS_STAT","TS_TOKEN_TYPE","WEBSEARCH_TO_TSQUERY","UUID","CURSOR_TO_XML","CURSOR_TO_XMLSCHEMA","DATABASE_TO_XML","DATABASE_TO_XMLSCHEMA","DATABASE_TO_XML_AND_XMLSCHEMA","NEXTVAL","QUERY_TO_XML","QUERY_TO_XMLSCHEMA","QUERY_TO_XML_AND_XMLSCHEMA","SCHEMA_TO_XML","SCHEMA_TO_XMLSCHEMA","SCHEMA_TO_XML_AND_XMLSCHEMA","STRING","TABLE_TO_XML","TABLE_TO_XMLSCHEMA","TABLE_TO_XML_AND_XMLSCHEMA","XMLAGG","XMLCOMMENT","XMLCONCAT","XMLELEMENT","XMLEXISTS","XMLFOREST","XMLPARSE","XMLPI","XMLROOT","XMLSERIALIZE","XMLTABLE","XML_IS_WELL_FORMED","XML_IS_WELL_FORMED_CONTENT","XML_IS_WELL_FORMED_DOCUMENT","XPATH","XPATH_EXISTS","ARRAY_TO_JSON","JSONB_AGG","JSONB_ARRAY_ELEMENTS","JSONB_ARRAY_ELEMENTS_TEXT","JSONB_ARRAY_LENGTH","JSONB_BUILD_ARRAY","JSONB_BUILD_OBJECT","JSONB_EACH","JSONB_EACH_TEXT","JSONB_EXTRACT_PATH","JSONB_EXTRACT_PATH_TEXT","JSONB_INSERT","JSONB_OBJECT","JSONB_OBJECT_AGG","JSONB_OBJECT_KEYS","JSONB_PATH_EXISTS","JSONB_PATH_EXISTS_TZ","JSONB_PATH_MATCH","JSONB_PATH_MATCH_TZ","JSONB_PATH_QUERY","JSONB_PATH_QUERY_ARRAY","JSONB_PATH_QUERY_ARRAY_TZ","JSONB_PATH_QUERY_FIRST","JSONB_PATH_QUERY_FIRST_TZ","JSONB_PATH_QUERY_TZ","JSONB_POPULATE_RECORD","JSONB_POPULATE_RECORDSET","JSONB_PRETTY","JSONB_SET","JSONB_SET_LAX","JSONB_STRIP_NULLS","JSONB_TO_RECORD","JSONB_TO_RECORDSET","JSONB_TYPEOF","JSON_AGG","JSON_ARRAY_ELEMENTS","JSON_ARRAY_ELEMENTS_TEXT","JSON_ARRAY_LENGTH","JSON_BUILD_ARRAY","JSON_BUILD_OBJECT","JSON_EACH","JSON_EACH_TEXT","JSON_EXTRACT_PATH","JSON_EXTRACT_PATH_TEXT","JSON_OBJECT","JSON_OBJECT_AGG","JSON_OBJECT_KEYS","JSON_POPULATE_RECORD","JSON_POPULATE_RECORDSET","JSON_STRIP_NULLS","JSON_TO_RECORD","JSON_TO_RECORDSET","JSON_TYPEOF","ROW_TO_JSON","TO_JSON","TO_JSONB","TO_TIMESTAMP","CURRVAL","LASTVAL","NEXTVAL","SETVAL","COALESCE","GREATEST","LEAST","NULLIF","ARRAY_AGG","ARRAY_APPEND","ARRAY_CAT","ARRAY_DIMS","ARRAY_FILL","ARRAY_LENGTH","ARRAY_LOWER","ARRAY_NDIMS","ARRAY_POSITION","ARRAY_POSITIONS","ARRAY_PREPEND","ARRAY_REMOVE","ARRAY_REPLACE","ARRAY_TO_STRING","ARRAY_UPPER","CARDINALITY","STRING_TO_ARRAY","TRIM_ARRAY","UNNEST","ISEMPTY","LOWER","LOWER_INC","LOWER_INF","MULTIRANGE","RANGE_MERGE","UPPER","UPPER_INC","UPPER_INF","ARRAY_AGG","AVG","BIT_AND","BIT_OR","BIT_XOR","BOOL_AND","BOOL_OR","COALESCE","CORR","COUNT","COVAR_POP","COVAR_SAMP","CUME_DIST","DENSE_RANK","EVERY","GROUPING","JSONB_AGG","JSONB_OBJECT_AGG","JSON_AGG","JSON_OBJECT_AGG","MAX","MIN","MODE","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","RANGE_AGG","RANGE_INTERSECT_AGG","RANK","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV","STDDEV_POP","STDDEV_SAMP","STRING_AGG","SUM","TO_JSON","TO_JSONB","VARIANCE","VAR_POP","VAR_SAMP","XMLAGG","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","ROW_NUMBER","GENERATE_SERIES","GENERATE_SUBSCRIPTS","ACLDEFAULT","ACLEXPLODE","COL_DESCRIPTION","CURRENT_CATALOG","CURRENT_DATABASE","CURRENT_QUERY","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_USER","FORMAT_TYPE","HAS_ANY_COLUMN_PRIVILEGE","HAS_COLUMN_PRIVILEGE","HAS_DATABASE_PRIVILEGE","HAS_FOREIGN_DATA_WRAPPER_PRIVILEGE","HAS_FUNCTION_PRIVILEGE","HAS_LANGUAGE_PRIVILEGE","HAS_SCHEMA_PRIVILEGE","HAS_SEQUENCE_PRIVILEGE","HAS_SERVER_PRIVILEGE","HAS_TABLESPACE_PRIVILEGE","HAS_TABLE_PRIVILEGE","HAS_TYPE_PRIVILEGE","INET_CLIENT_ADDR","INET_CLIENT_PORT","INET_SERVER_ADDR","INET_SERVER_PORT","MAKEACLITEM","OBJ_DESCRIPTION","PG_BACKEND_PID","PG_BLOCKING_PIDS","PG_COLLATION_IS_VISIBLE","PG_CONF_LOAD_TIME","PG_CONTROL_CHECKPOINT","PG_CONTROL_INIT","PG_CONTROL_SYSTEM","PG_CONVERSION_IS_VISIBLE","PG_CURRENT_LOGFILE","PG_CURRENT_SNAPSHOT","PG_CURRENT_XACT_ID","PG_CURRENT_XACT_ID_IF_ASSIGNED","PG_DESCRIBE_OBJECT","PG_FUNCTION_IS_VISIBLE","PG_GET_CATALOG_FOREIGN_KEYS","PG_GET_CONSTRAINTDEF","PG_GET_EXPR","PG_GET_FUNCTIONDEF","PG_GET_FUNCTION_ARGUMENTS","PG_GET_FUNCTION_IDENTITY_ARGUMENTS","PG_GET_FUNCTION_RESULT","PG_GET_INDEXDEF","PG_GET_KEYWORDS","PG_GET_OBJECT_ADDRESS","PG_GET_OWNED_SEQUENCE","PG_GET_RULEDEF","PG_GET_SERIAL_SEQUENCE","PG_GET_STATISTICSOBJDEF","PG_GET_TRIGGERDEF","PG_GET_USERBYID","PG_GET_VIEWDEF","PG_HAS_ROLE","PG_IDENTIFY_OBJECT","PG_IDENTIFY_OBJECT_AS_ADDRESS","PG_INDEXAM_HAS_PROPERTY","PG_INDEX_COLUMN_HAS_PROPERTY","PG_INDEX_HAS_PROPERTY","PG_IS_OTHER_TEMP_SCHEMA","PG_JIT_AVAILABLE","PG_LAST_COMMITTED_XACT","PG_LISTENING_CHANNELS","PG_MY_TEMP_SCHEMA","PG_NOTIFICATION_QUEUE_USAGE","PG_OPCLASS_IS_VISIBLE","PG_OPERATOR_IS_VISIBLE","PG_OPFAMILY_IS_VISIBLE","PG_OPTIONS_TO_TABLE","PG_POSTMASTER_START_TIME","PG_SAFE_SNAPSHOT_BLOCKING_PIDS","PG_SNAPSHOT_XIP","PG_SNAPSHOT_XMAX","PG_SNAPSHOT_XMIN","PG_STATISTICS_OBJ_IS_VISIBLE","PG_TABLESPACE_DATABASES","PG_TABLESPACE_LOCATION","PG_TABLE_IS_VISIBLE","PG_TRIGGER_DEPTH","PG_TS_CONFIG_IS_VISIBLE","PG_TS_DICT_IS_VISIBLE","PG_TS_PARSER_IS_VISIBLE","PG_TS_TEMPLATE_IS_VISIBLE","PG_TYPEOF","PG_TYPE_IS_VISIBLE","PG_VISIBLE_IN_SNAPSHOT","PG_XACT_COMMIT_TIMESTAMP","PG_XACT_COMMIT_TIMESTAMP_ORIGIN","PG_XACT_STATUS","PQSERVERVERSION","ROW_SECURITY_ACTIVE","SESSION_USER","SHOBJ_DESCRIPTION","TO_REGCLASS","TO_REGCOLLATION","TO_REGNAMESPACE","TO_REGOPER","TO_REGOPERATOR","TO_REGPROC","TO_REGPROCEDURE","TO_REGROLE","TO_REGTYPE","TXID_CURRENT","TXID_CURRENT_IF_ASSIGNED","TXID_CURRENT_SNAPSHOT","TXID_SNAPSHOT_XIP","TXID_SNAPSHOT_XMAX","TXID_SNAPSHOT_XMIN","TXID_STATUS","TXID_VISIBLE_IN_SNAPSHOT","USER","VERSION","BRIN_DESUMMARIZE_RANGE","BRIN_SUMMARIZE_NEW_VALUES","BRIN_SUMMARIZE_RANGE","CONVERT_FROM","CURRENT_SETTING","GIN_CLEAN_PENDING_LIST","PG_ADVISORY_LOCK","PG_ADVISORY_LOCK_SHARED","PG_ADVISORY_UNLOCK","PG_ADVISORY_UNLOCK_ALL","PG_ADVISORY_UNLOCK_SHARED","PG_ADVISORY_XACT_LOCK","PG_ADVISORY_XACT_LOCK_SHARED","PG_BACKUP_START_TIME","PG_CANCEL_BACKEND","PG_COLLATION_ACTUAL_VERSION","PG_COLUMN_COMPRESSION","PG_COLUMN_SIZE","PG_COPY_LOGICAL_REPLICATION_SLOT","PG_COPY_PHYSICAL_REPLICATION_SLOT","PG_CREATE_LOGICAL_REPLICATION_SLOT","PG_CREATE_PHYSICAL_REPLICATION_SLOT","PG_CREATE_RESTORE_POINT","PG_CURRENT_WAL_FLUSH_LSN","PG_CURRENT_WAL_INSERT_LSN","PG_CURRENT_WAL_LSN","PG_DATABASE_SIZE","PG_DROP_REPLICATION_SLOT","PG_EXPORT_SNAPSHOT","PG_FILENODE_RELATION","PG_GET_WAL_REPLAY_PAUSE_STATE","PG_IMPORT_SYSTEM_COLLATIONS","PG_INDEXES_SIZE","PG_IS_IN_BACKUP","PG_IS_IN_RECOVERY","PG_IS_WAL_REPLAY_PAUSED","PG_LAST_WAL_RECEIVE_LSN","PG_LAST_WAL_REPLAY_LSN","PG_LAST_XACT_REPLAY_TIMESTAMP","PG_LOGICAL_EMIT_MESSAGE","PG_LOGICAL_SLOT_GET_BINARY_CHANGES","PG_LOGICAL_SLOT_GET_CHANGES","PG_LOGICAL_SLOT_PEEK_BINARY_CHANGES","PG_LOGICAL_SLOT_PEEK_CHANGES","PG_LOG_BACKEND_MEMORY_CONTEXTS","PG_LS_ARCHIVE_STATUSDIR","PG_LS_DIR","PG_LS_LOGDIR","PG_LS_TMPDIR","PG_LS_WALDIR","PG_PARTITION_ANCESTORS","PG_PARTITION_ROOT","PG_PARTITION_TREE","PG_PROMOTE","PG_READ_BINARY_FILE","PG_READ_FILE","PG_RELATION_FILENODE","PG_RELATION_FILEPATH","PG_RELATION_SIZE","PG_RELOAD_CONF","PG_REPLICATION_ORIGIN_ADVANCE","PG_REPLICATION_ORIGIN_CREATE","PG_REPLICATION_ORIGIN_DROP","PG_REPLICATION_ORIGIN_OID","PG_REPLICATION_ORIGIN_PROGRESS","PG_REPLICATION_ORIGIN_SESSION_IS_SETUP","PG_REPLICATION_ORIGIN_SESSION_PROGRESS","PG_REPLICATION_ORIGIN_SESSION_RESET","PG_REPLICATION_ORIGIN_SESSION_SETUP","PG_REPLICATION_ORIGIN_XACT_RESET","PG_REPLICATION_ORIGIN_XACT_SETUP","PG_REPLICATION_SLOT_ADVANCE","PG_ROTATE_LOGFILE","PG_SIZE_BYTES","PG_SIZE_PRETTY","PG_START_BACKUP","PG_STAT_FILE","PG_STOP_BACKUP","PG_SWITCH_WAL","PG_TABLESPACE_SIZE","PG_TABLE_SIZE","PG_TERMINATE_BACKEND","PG_TOTAL_RELATION_SIZE","PG_TRY_ADVISORY_LOCK","PG_TRY_ADVISORY_LOCK_SHARED","PG_TRY_ADVISORY_XACT_LOCK","PG_TRY_ADVISORY_XACT_LOCK_SHARED","PG_WALFILE_NAME","PG_WALFILE_NAME_OFFSET","PG_WAL_LSN_DIFF","PG_WAL_REPLAY_PAUSE","PG_WAL_REPLAY_RESUME","SET_CONFIG","SUPPRESS_REDUNDANT_UPDATES_TRIGGER","TSVECTOR_UPDATE_TRIGGER","TSVECTOR_UPDATE_TRIGGER_COLUMN","PG_EVENT_TRIGGER_DDL_COMMANDS","PG_EVENT_TRIGGER_DROPPED_OBJECTS","PG_EVENT_TRIGGER_TABLE_REWRITE_OID","PG_EVENT_TRIGGER_TABLE_REWRITE_REASON","PG_GET_OBJECT_ADDRESS","PG_MCV_LIST_ITEMS","CAST"],kOa=["ALL","ANALYSE","ANALYZE","AND","ANY","AS","ASC","ASYMMETRIC","AUTHORIZATION","BETWEEN","BINARY","BOTH","CASE","CAST","CHECK","COLLATE","COLLATION","COLUMN","CONCURRENTLY","CONSTRAINT","CREATE","CROSS","CURRENT_CATALOG","CURRENT_DATE","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DAY","DEFAULT","DEFERRABLE","DESC","DISTINCT","DO","ELSE","END","EXCEPT","EXISTS","FALSE","FETCH","FILTER","FOR","FOREIGN","FREEZE","FROM","FULL","GRANT","GROUP","HAVING","HOUR","ILIKE","IN","INITIALLY","INNER","INOUT","INTERSECT","INTO","IS","ISNULL","JOIN","LATERAL","LEADING","LEFT","LIKE","LIMIT","LOCALTIME","LOCALTIMESTAMP","MINUTE","MONTH","NATURAL","NOT","NOTNULL","NULL","NULLIF","OFFSET","ON","ONLY","OR","ORDER","OUT","OUTER","OVER","OVERLAPS","PLACING","PRIMARY","REFERENCES","RETURNING","RIGHT","ROW","SECOND","SELECT","SESSION_USER","SIMILAR","SOME","SYMMETRIC","TABLE","TABLESAMPLE","THEN","TO","TRAILING","TRUE","UNION","UNIQUE","USER","USING","VALUES","VARIADIC","VERBOSE","WHEN","WHERE","WINDOW","WITH","WITHIN","WITHOUT","YEAR"],GOa=["ARRAY","BIGINT","BIT","BIT VARYING","BOOL","BOOLEAN","CHAR","CHARACTER","CHARACTER VARYING","DECIMAL","DEC","DOUBLE","ENUM","FLOAT","INT","INTEGER","INTERVAL","NCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TIMESTAMPTZ","VARCHAR","XML","ZONE"],FOa=Xa(["SELECT [ALL | DISTINCT]"]),ZOa=Xa(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","FOR {UPDATE | NO KEY UPDATE | SHARE | KEY SHARE} [OF]","INSERT INTO","VALUES","DEFAULT VALUES","SET","RETURNING"]),Zvi=Xa(["CREATE [GLOBAL | LOCAL] [TEMPORARY | TEMP | UNLOGGED] TABLE [IF NOT EXISTS]"]),Khr=Xa(["CREATE [OR REPLACE] [TEMP | TEMPORARY] [RECURSIVE] VIEW","CREATE [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE [ONLY]","WHERE CURRENT OF","ON CONFLICT","DELETE FROM [ONLY]","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS] [ONLY]","ALTER TABLE ALL IN TABLESPACE","RENAME [COLUMN]","RENAME TO","ADD [COLUMN] [IF NOT EXISTS]","DROP [COLUMN] [IF EXISTS]","ALTER [COLUMN]","SET DATA TYPE","{SET | DROP} DEFAULT","{SET | DROP} NOT NULL","TRUNCATE [TABLE] [ONLY]","SET SCHEMA","AFTER","ABORT","ALTER AGGREGATE","ALTER COLLATION","ALTER CONVERSION","ALTER DATABASE","ALTER DEFAULT PRIVILEGES","ALTER DOMAIN","ALTER EVENT TRIGGER","ALTER EXTENSION","ALTER FOREIGN DATA WRAPPER","ALTER FOREIGN TABLE","ALTER FUNCTION","ALTER GROUP","ALTER INDEX","ALTER LANGUAGE","ALTER LARGE OBJECT","ALTER MATERIALIZED VIEW","ALTER OPERATOR","ALTER OPERATOR CLASS","ALTER OPERATOR FAMILY","ALTER POLICY","ALTER PROCEDURE","ALTER PUBLICATION","ALTER ROLE","ALTER ROUTINE","ALTER RULE","ALTER SCHEMA","ALTER SEQUENCE","ALTER SERVER","ALTER STATISTICS","ALTER SUBSCRIPTION","ALTER SYSTEM","ALTER TABLESPACE","ALTER TEXT SEARCH CONFIGURATION","ALTER TEXT SEARCH DICTIONARY","ALTER TEXT SEARCH PARSER","ALTER TEXT SEARCH TEMPLATE","ALTER TRIGGER","ALTER TYPE","ALTER USER","ALTER USER MAPPING","ALTER VIEW","ANALYZE","BEGIN","CALL","CHECKPOINT","CLOSE","CLUSTER","COMMIT","COMMIT PREPARED","COPY","CREATE ACCESS METHOD","CREATE AGGREGATE","CREATE CAST","CREATE COLLATION","CREATE CONVERSION","CREATE DATABASE","CREATE DOMAIN","CREATE EVENT TRIGGER","CREATE EXTENSION","CREATE FOREIGN DATA WRAPPER","CREATE FOREIGN TABLE","CREATE FUNCTION","CREATE GROUP","CREATE INDEX","CREATE LANGUAGE","CREATE OPERATOR","CREATE OPERATOR CLASS","CREATE OPERATOR FAMILY","CREATE POLICY","CREATE PROCEDURE","CREATE PUBLICATION","CREATE ROLE","CREATE RULE","CREATE SCHEMA","CREATE SEQUENCE","CREATE SERVER","CREATE STATISTICS","CREATE SUBSCRIPTION","CREATE TABLESPACE","CREATE TEXT SEARCH CONFIGURATION","CREATE TEXT SEARCH DICTIONARY","CREATE TEXT SEARCH PARSER","CREATE TEXT SEARCH TEMPLATE","CREATE TRANSFORM","CREATE TRIGGER","CREATE TYPE","CREATE USER","CREATE USER MAPPING","DEALLOCATE","DECLARE","DISCARD","DROP ACCESS METHOD","DROP AGGREGATE","DROP CAST","DROP COLLATION","DROP CONVERSION","DROP DATABASE","DROP DOMAIN","DROP EVENT TRIGGER","DROP EXTENSION","DROP FOREIGN DATA WRAPPER","DROP FOREIGN TABLE","DROP FUNCTION","DROP GROUP","DROP INDEX","DROP LANGUAGE","DROP MATERIALIZED VIEW","DROP OPERATOR","DROP OPERATOR CLASS","DROP OPERATOR FAMILY","DROP OWNED","DROP POLICY","DROP PROCEDURE","DROP PUBLICATION","DROP ROLE","DROP ROUTINE","DROP RULE","DROP SCHEMA","DROP SEQUENCE","DROP SERVER","DROP STATISTICS","DROP SUBSCRIPTION","DROP TABLESPACE","DROP TEXT SEARCH CONFIGURATION","DROP TEXT SEARCH DICTIONARY","DROP TEXT SEARCH PARSER","DROP TEXT SEARCH TEMPLATE","DROP TRANSFORM","DROP TRIGGER","DROP TYPE","DROP USER","DROP USER MAPPING","DROP VIEW","EXECUTE","EXPLAIN","FETCH","GRANT","IMPORT FOREIGN SCHEMA","LISTEN","LOAD","LOCK","MOVE","NOTIFY","PREPARE","PREPARE TRANSACTION","REASSIGN OWNED","REFRESH MATERIALIZED VIEW","REINDEX","RELEASE SAVEPOINT","RESET","REVOKE","ROLLBACK","ROLLBACK PREPARED","ROLLBACK TO SAVEPOINT","SAVEPOINT","SECURITY LABEL","SELECT INTO","SET CONSTRAINTS","SET ROLE","SET SESSION AUTHORIZATION","SET TRANSACTION","SHOW","START TRANSACTION","UNLISTEN","VACUUM"]),LOa=Xa(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),VOa=Xa(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),WOa=Xa(["PRIMARY KEY","GENERATED {ALWAYS | BY DEFAULT} AS IDENTITY","ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE | GROUPS} BETWEEN","[TIMESTAMP | TIME] {WITH | WITHOUT} TIME ZONE","IS [NOT] DISTINCT FROM"]),POa={name:"postgresql",tokenizerOptions:{reservedSelect:FOa,reservedClauses:[...ZOa,...Zvi,...Khr],reservedSetOperations:LOa,reservedJoins:VOa,reservedPhrases:WOa,reservedKeywords:kOa,reservedDataTypes:GOa,reservedFunctionNames:xOa,nestedBlockComments:!0,extraParens:["[]"],stringTypes:["$$",{quote:"''-qq",prefixes:["U&"]},{quote:"''-qq-bs",prefixes:["E"],requirePrefix:!0},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:[{quote:'""-qq',prefixes:["U&"]}],identChars:{rest:"$"},paramTypes:{numbered:["$"]},operators:["%","^","|/","||/","@",":=","&","|","#","~","<<",">>","~>~","~<~","~>=~","~<=~","@-@","@@","##","<->","&&","&<","&>","<<|","&<|","|>>","|&>","<^","^>","?#","?-","?|","?-|","?||","@>","<@","~=","?","@?","?&","->","->>","#>","#>>","#-","=>",">>=","<<=","~~","~~*","!~~","!~~*","~","~*","!~","!~*","-|-","||","@@@","!!","^@","<%","%>","<<%","%>>","<<->","<->>","<<<->","<->>>","::",":"]},formatOptions:{alwaysDenseOperators:["::",":"],onelineClauses:[...Zvi,...Khr],tabularOnelineClauses:Khr}},OOa=["ANY_VALUE","APPROXIMATE PERCENTILE_DISC","AVG","COUNT","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","STDDEV_SAMP","STDDEV_POP","SUM","VAR_SAMP","VAR_POP","array","array_concat","array_flatten","get_array_length","split_to_array","subarray","BIT_AND","BIT_OR","BOOL_AND","BOOL_OR","COALESCE","DECODE","GREATEST","LEAST","NVL","NVL2","NULLIF","ADD_MONTHS","AT TIME ZONE","CONVERT_TIMEZONE","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE_CMP","DATE_CMP_TIMESTAMP","DATE_CMP_TIMESTAMPTZ","DATE_PART_YEAR","DATEADD","DATEDIFF","DATE_PART","DATE_TRUNC","EXTRACT","GETDATE","INTERVAL_CMP","LAST_DAY","MONTHS_BETWEEN","NEXT_DAY","SYSDATE","TIMEOFDAY","TIMESTAMP_CMP","TIMESTAMP_CMP_DATE","TIMESTAMP_CMP_TIMESTAMPTZ","TIMESTAMPTZ_CMP","TIMESTAMPTZ_CMP_DATE","TIMESTAMPTZ_CMP_TIMESTAMP","TIMEZONE","TO_TIMESTAMP","TRUNC","AddBBox","DropBBox","GeometryType","ST_AddPoint","ST_Angle","ST_Area","ST_AsBinary","ST_AsEWKB","ST_AsEWKT","ST_AsGeoJSON","ST_AsText","ST_Azimuth","ST_Boundary","ST_Collect","ST_Contains","ST_ContainsProperly","ST_ConvexHull","ST_CoveredBy","ST_Covers","ST_Crosses","ST_Dimension","ST_Disjoint","ST_Distance","ST_DistanceSphere","ST_DWithin","ST_EndPoint","ST_Envelope","ST_Equals","ST_ExteriorRing","ST_Force2D","ST_Force3D","ST_Force3DM","ST_Force3DZ","ST_Force4D","ST_GeometryN","ST_GeometryType","ST_GeomFromEWKB","ST_GeomFromEWKT","ST_GeomFromText","ST_GeomFromWKB","ST_InteriorRingN","ST_Intersects","ST_IsPolygonCCW","ST_IsPolygonCW","ST_IsClosed","ST_IsCollection","ST_IsEmpty","ST_IsSimple","ST_IsValid","ST_Length","ST_LengthSphere","ST_Length2D","ST_LineFromMultiPoint","ST_LineInterpolatePoint","ST_M","ST_MakeEnvelope","ST_MakeLine","ST_MakePoint","ST_MakePolygon","ST_MemSize","ST_MMax","ST_MMin","ST_Multi","ST_NDims","ST_NPoints","ST_NRings","ST_NumGeometries","ST_NumInteriorRings","ST_NumPoints","ST_Perimeter","ST_Perimeter2D","ST_Point","ST_PointN","ST_Points","ST_Polygon","ST_RemovePoint","ST_Reverse","ST_SetPoint","ST_SetSRID","ST_Simplify","ST_SRID","ST_StartPoint","ST_Touches","ST_Within","ST_X","ST_XMax","ST_XMin","ST_Y","ST_YMax","ST_YMin","ST_Z","ST_ZMax","ST_ZMin","SupportsBBox","CHECKSUM","FUNC_SHA1","FNV_HASH","MD5","SHA","SHA1","SHA2","HLL","HLL_CREATE_SKETCH","HLL_CARDINALITY","HLL_COMBINE","IS_VALID_JSON","IS_VALID_JSON_ARRAY","JSON_ARRAY_LENGTH","JSON_EXTRACT_ARRAY_ELEMENT_TEXT","JSON_EXTRACT_PATH_TEXT","JSON_PARSE","JSON_SERIALIZE","ABS","ACOS","ASIN","ATAN","ATAN2","CBRT","CEILING","CEIL","COS","COT","DEGREES","DEXP","DLOG1","DLOG10","EXP","FLOOR","LN","LOG","MOD","PI","POWER","RADIANS","RANDOM","ROUND","SIN","SIGN","SQRT","TAN","TO_HEX","TRUNC","EXPLAIN_MODEL","ASCII","BPCHARCMP","BTRIM","BTTEXT_PATTERN_CMP","CHAR_LENGTH","CHARACTER_LENGTH","CHARINDEX","CHR","COLLATE","CONCAT","CRC32","DIFFERENCE","INITCAP","LEFT","RIGHT","LEN","LENGTH","LOWER","LPAD","RPAD","LTRIM","OCTETINDEX","OCTET_LENGTH","POSITION","QUOTE_IDENT","QUOTE_LITERAL","REGEXP_COUNT","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","REPLICATE","REVERSE","RTRIM","SOUNDEX","SPLIT_PART","STRPOS","STRTOL","SUBSTRING","TEXTLEN","TRANSLATE","TRIM","UPPER","decimal_precision","decimal_scale","is_array","is_bigint","is_boolean","is_char","is_decimal","is_float","is_integer","is_object","is_scalar","is_smallint","is_varchar","json_typeof","AVG","COUNT","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAST_VALUE","LAG","LEAD","LISTAGG","MAX","MEDIAN","MIN","NTH_VALUE","NTILE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","RATIO_TO_REPORT","ROW_NUMBER","STDDEV_SAMP","STDDEV_POP","SUM","VAR_SAMP","VAR_POP","CAST","CONVERT","TO_CHAR","TO_DATE","TO_NUMBER","TEXT_TO_INT_ALT","TEXT_TO_NUMERIC_ALT","CHANGE_QUERY_PRIORITY","CHANGE_SESSION_PRIORITY","CHANGE_USER_PRIORITY","CURRENT_SETTING","PG_CANCEL_BACKEND","PG_TERMINATE_BACKEND","REBOOT_CLUSTER","SET_CONFIG","CURRENT_AWS_ACCOUNT","CURRENT_DATABASE","CURRENT_NAMESPACE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_USER","CURRENT_USER_ID","HAS_ASSUMEROLE_PRIVILEGE","HAS_DATABASE_PRIVILEGE","HAS_SCHEMA_PRIVILEGE","HAS_TABLE_PRIVILEGE","PG_BACKEND_PID","PG_GET_COLS","PG_GET_GRANTEE_BY_IAM_ROLE","PG_GET_IAM_ROLE_BY_USER","PG_GET_LATE_BINDING_VIEW_COLS","PG_LAST_COPY_COUNT","PG_LAST_COPY_ID","PG_LAST_UNLOAD_ID","PG_LAST_QUERY_ID","PG_LAST_UNLOAD_COUNT","SESSION_USER","SLICE_NUM","USER","VERSION"],QOa=["AES128","AES256","ALL","ALLOWOVERWRITE","ANY","AS","ASC","AUTHORIZATION","BACKUP","BETWEEN","BINARY","BOTH","CHECK","COLUMN","CONSTRAINT","CREATE","CROSS","DEFAULT","DEFERRABLE","DEFLATE","DEFRAG","DESC","DISABLE","DISTINCT","DO","ENABLE","ENCODE","ENCRYPT","ENCRYPTION","EXPLICIT","FALSE","FOR","FOREIGN","FREEZE","FROM","FULL","GLOBALDICT256","GLOBALDICT64K","GROUP","IDENTITY","IGNORE","ILIKE","IN","INITIALLY","INNER","INTO","IS","ISNULL","LANGUAGE","LEADING","LIKE","LIMIT","LOCALTIME","LOCALTIMESTAMP","LUN","LUNS","MINUS","NATURAL","NEW","NOT","NOTNULL","NULL","NULLS","OFF","OFFLINE","OFFSET","OID","OLD","ON","ONLY","OPEN","ORDER","OUTER","OVERLAPS","PARALLEL","PARTITION","PERCENT","PERMISSIONS","PLACING","PRIMARY","RECOVER","REFERENCES","REJECTLOG","RESORT","RESPECT","RESTORE","SIMILAR","SNAPSHOT","SOME","SYSTEM","TABLE","TAG","TDES","THEN","TIMESTAMP","TO","TOP","TRAILING","TRUE","UNIQUE","USING","VERBOSE","WALLET","WITHOUT","ACCEPTANYDATE","ACCEPTINVCHARS","BLANKSASNULL","DATEFORMAT","EMPTYASNULL","ENCODING","ESCAPE","EXPLICIT_IDS","FILLRECORD","IGNOREBLANKLINES","IGNOREHEADER","REMOVEQUOTES","ROUNDEC","TIMEFORMAT","TRIMBLANKS","TRUNCATECOLUMNS","COMPROWS","COMPUPDATE","MAXERROR","NOLOAD","STATUPDATE","FORMAT","CSV","DELIMITER","FIXEDWIDTH","SHAPEFILE","AVRO","JSON","PARQUET","ORC","ACCESS_KEY_ID","CREDENTIALS","ENCRYPTED","IAM_ROLE","MASTER_SYMMETRIC_KEY","SECRET_ACCESS_KEY","SESSION_TOKEN","BZIP2","GZIP","LZOP","ZSTD","MANIFEST","READRATIO","REGION","SSH","RAW","AZ64","BYTEDICT","DELTA","DELTA32K","LZO","MOSTLY8","MOSTLY16","MOSTLY32","RUNLENGTH","TEXT255","TEXT32K","CATALOG_ROLE","SECRET_ARN","EXTERNAL","AUTO","EVEN","KEY","PREDICATE","COMPRESSION"],MOa=["ARRAY","BIGINT","BPCHAR","CHAR","CHARACTER VARYING","CHARACTER","DECIMAL","INT","INT2","INT4","INT8","INTEGER","NCHAR","NUMERIC","NVARCHAR","SMALLINT","TEXT","VARBYTE","VARCHAR"],HOa=Xa(["SELECT [ALL | DISTINCT]"]),YOa=Xa(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT INTO","VALUES","SET"]),Lvi=Xa(["CREATE [TEMPORARY | TEMP | LOCAL TEMPORARY | LOCAL TEMP] TABLE [IF NOT EXISTS]"]),jhr=Xa(["CREATE [OR REPLACE | MATERIALIZED] VIEW","UPDATE","DELETE [FROM]","DROP TABLE [IF EXISTS]","ALTER TABLE","ALTER TABLE APPEND","ADD [COLUMN]","DROP [COLUMN]","RENAME TO","RENAME COLUMN","ALTER COLUMN","TYPE","ENCODE","TRUNCATE [TABLE]","ABORT","ALTER DATABASE","ALTER DATASHARE","ALTER DEFAULT PRIVILEGES","ALTER GROUP","ALTER MATERIALIZED VIEW","ALTER PROCEDURE","ALTER SCHEMA","ALTER USER","ANALYSE","ANALYZE","ANALYSE COMPRESSION","ANALYZE COMPRESSION","BEGIN","CALL","CANCEL","CLOSE","COMMIT","COPY","CREATE DATABASE","CREATE DATASHARE","CREATE EXTERNAL FUNCTION","CREATE EXTERNAL SCHEMA","CREATE EXTERNAL TABLE","CREATE FUNCTION","CREATE GROUP","CREATE LIBRARY","CREATE MODEL","CREATE PROCEDURE","CREATE SCHEMA","CREATE USER","DEALLOCATE","DECLARE","DESC DATASHARE","DROP DATABASE","DROP DATASHARE","DROP FUNCTION","DROP GROUP","DROP LIBRARY","DROP MODEL","DROP MATERIALIZED VIEW","DROP PROCEDURE","DROP SCHEMA","DROP USER","DROP VIEW","DROP","EXECUTE","EXPLAIN","FETCH","GRANT","LOCK","PREPARE","REFRESH MATERIALIZED VIEW","RESET","REVOKE","ROLLBACK","SELECT INTO","SET SESSION AUTHORIZATION","SET SESSION CHARACTERISTICS","SHOW","SHOW EXTERNAL TABLE","SHOW MODEL","SHOW DATASHARES","SHOW PROCEDURE","SHOW TABLE","SHOW VIEW","START TRANSACTION","UNLOAD","VACUUM"]),XOa=Xa(["UNION [ALL]","EXCEPT","INTERSECT","MINUS"]),JOa=Xa(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),UOa=Xa(["NULL AS","DATA CATALOG","HIVE METASTORE","{ROWS | RANGE} BETWEEN"]),KOa={name:"redshift",tokenizerOptions:{reservedSelect:HOa,reservedClauses:[...YOa,...Lvi,...jhr],reservedSetOperations:XOa,reservedJoins:JOa,reservedPhrases:UOa,reservedKeywords:QOa,reservedDataTypes:MOa,reservedFunctionNames:OOa,stringTypes:["''-qq"],identTypes:['""-qq'],identChars:{first:"#"},paramTypes:{numbered:["$"]},operators:["^","%","@","|/","||/","&","|","~","<<",">>","||","::"]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...Lvi,...jhr],tabularOnelineClauses:jhr}},jOa=["ADD","AFTER","ALL","ALTER","ANALYZE","AND","ANTI","ANY","ARCHIVE","AS","ASC","AT","AUTHORIZATION","BETWEEN","BOTH","BUCKET","BUCKETS","BY","CACHE","CASCADE","CAST","CHANGE","CHECK","CLEAR","CLUSTER","CLUSTERED","CODEGEN","COLLATE","COLLECTION","COLUMN","COLUMNS","COMMENT","COMMIT","COMPACT","COMPACTIONS","COMPUTE","CONCATENATE","CONSTRAINT","COST","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DATA","DATABASE","DATABASES","DAY","DBPROPERTIES","DEFINED","DELETE","DELIMITED","DESC","DESCRIBE","DFS","DIRECTORIES","DIRECTORY","DISTINCT","DISTRIBUTE","DIV","DROP","ESCAPE","ESCAPED","EXCEPT","EXCHANGE","EXISTS","EXPORT","EXTENDED","EXTERNAL","EXTRACT","FALSE","FETCH","FIELDS","FILTER","FILEFORMAT","FIRST","FIRST_VALUE","FOLLOWING","FOR","FOREIGN","FORMAT","FORMATTED","FULL","FUNCTION","FUNCTIONS","GLOBAL","GRANT","GROUP","GROUPING","HOUR","IF","IGNORE","IMPORT","IN","INDEX","INDEXES","INNER","INPATH","INPUTFORMAT","INTERSECT","INTO","IS","ITEMS","KEYS","LAST","LAST_VALUE","LATERAL","LAZY","LEADING","LEFT","LIKE","LINES","LIST","LOCAL","LOCATION","LOCK","LOCKS","LOGICAL","MACRO","MATCHED","MERGE","MINUTE","MONTH","MSCK","NAMESPACE","NAMESPACES","NATURAL","NO","NOT","NULL","NULLS","OF","ONLY","OPTION","OPTIONS","OR","ORDER","OUT","OUTER","OUTPUTFORMAT","OVER","OVERLAPS","OVERLAY","OVERWRITE","OWNER","PARTITION","PARTITIONED","PARTITIONS","PERCENT","PLACING","POSITION","PRECEDING","PRIMARY","PRINCIPALS","PROPERTIES","PURGE","QUERY","RANGE","RECORDREADER","RECORDWRITER","RECOVER","REDUCE","REFERENCES","RENAME","REPAIR","REPLACE","RESPECT","RESTRICT","REVOKE","RIGHT","RLIKE","ROLE","ROLES","ROLLBACK","ROLLUP","ROW","ROWS","SCHEMA","SECOND","SELECT","SEMI","SEPARATED","SERDE","SERDEPROPERTIES","SESSION_USER","SETS","SHOW","SKEWED","SOME","SORT","SORTED","START","STATISTICS","STORED","STRATIFY","SUBSTR","SUBSTRING","TABLE","TABLES","TBLPROPERTIES","TEMPORARY","TERMINATED","THEN","TO","TOUCH","TRAILING","TRANSACTION","TRANSACTIONS","TRIM","TRUE","TRUNCATE","UNARCHIVE","UNBOUNDED","UNCACHE","UNIQUE","UNKNOWN","UNLOCK","UNSET","USE","USER","USING","VIEW","WINDOW","YEAR","ANALYSE","ARRAY_ZIP","COALESCE","CONTAINS","CONVERT","DAYS","DAY_HOUR","DAY_MINUTE","DAY_SECOND","DECODE","DEFAULT","DISTINCTROW","ENCODE","EXPLODE","EXPLODE_OUTER","FIXED","GREATEST","GROUP_CONCAT","HOURS","HOUR_MINUTE","HOUR_SECOND","IFNULL","LEAST","LEVEL","MINUTE_SECOND","NULLIF","OFFSET","ON","OPTIMIZE","REGEXP","SEPARATOR","SIZE","TYPE","TYPES","UNSIGNED","VARIABLES","YEAR_MONTH"],zOa=["ARRAY","BIGINT","BINARY","BOOLEAN","BYTE","CHAR","DATE","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","LONG","MAP","NUMERIC","REAL","SHORT","SMALLINT","STRING","STRUCT","TIMESTAMP_LTZ","TIMESTAMP_NTZ","TIMESTAMP","TINYINT","VARCHAR"],qOa=["APPROX_COUNT_DISTINCT","APPROX_PERCENTILE","AVG","BIT_AND","BIT_OR","BIT_XOR","BOOL_AND","BOOL_OR","COLLECT_LIST","COLLECT_SET","CORR","COUNT","COUNT","COUNT","COUNT_IF","COUNT_MIN_SKETCH","COVAR_POP","COVAR_SAMP","EVERY","FIRST","FIRST_VALUE","GROUPING","GROUPING_ID","KURTOSIS","LAST","LAST_VALUE","MAX","MAX_BY","MEAN","MIN","MIN_BY","PERCENTILE","PERCENTILE","PERCENTILE_APPROX","SKEWNESS","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","CUME_DIST","DENSE_RANK","LAG","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","ROW_NUMBER","ARRAY","ARRAY_CONTAINS","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_INTERSECT","ARRAY_JOIN","ARRAY_MAX","ARRAY_MIN","ARRAY_POSITION","ARRAY_REMOVE","ARRAY_REPEAT","ARRAY_UNION","ARRAYS_OVERLAP","ARRAYS_ZIP","FLATTEN","SEQUENCE","SHUFFLE","SLICE","SORT_ARRAY","ELEMENT_AT","ELEMENT_AT","MAP_CONCAT","MAP_ENTRIES","MAP_FROM_ARRAYS","MAP_FROM_ENTRIES","MAP_KEYS","MAP_VALUES","STR_TO_MAP","ADD_MONTHS","CURRENT_DATE","CURRENT_DATE","CURRENT_TIMESTAMP","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","DATE_ADD","DATE_FORMAT","DATE_FROM_UNIX_DATE","DATE_PART","DATE_SUB","DATE_TRUNC","DATEDIFF","DAY","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","EXTRACT","FROM_UNIXTIME","FROM_UTC_TIMESTAMP","HOUR","LAST_DAY","MAKE_DATE","MAKE_DT_INTERVAL","MAKE_INTERVAL","MAKE_TIMESTAMP","MAKE_YM_INTERVAL","MINUTE","MONTH","MONTHS_BETWEEN","NEXT_DAY","NOW","QUARTER","SECOND","SESSION_WINDOW","TIMESTAMP_MICROS","TIMESTAMP_MILLIS","TIMESTAMP_SECONDS","TO_DATE","TO_TIMESTAMP","TO_UNIX_TIMESTAMP","TO_UTC_TIMESTAMP","TRUNC","UNIX_DATE","UNIX_MICROS","UNIX_MILLIS","UNIX_SECONDS","UNIX_TIMESTAMP","WEEKDAY","WEEKOFYEAR","WINDOW","YEAR","FROM_JSON","GET_JSON_OBJECT","JSON_ARRAY_LENGTH","JSON_OBJECT_KEYS","JSON_TUPLE","SCHEMA_OF_JSON","TO_JSON","ABS","ACOS","ACOSH","AGGREGATE","ARRAY_SORT","ASCII","ASIN","ASINH","ASSERT_TRUE","ATAN","ATAN2","ATANH","BASE64","BIN","BIT_COUNT","BIT_GET","BIT_LENGTH","BROUND","BTRIM","CARDINALITY","CBRT","CEIL","CEILING","CHAR_LENGTH","CHARACTER_LENGTH","CHR","CONCAT","CONCAT_WS","CONV","COS","COSH","COT","CRC32","CURRENT_CATALOG","CURRENT_DATABASE","CURRENT_USER","DEGREES","ELT","EXP","EXPM1","FACTORIAL","FIND_IN_SET","FLOOR","FORALL","FORMAT_NUMBER","FORMAT_STRING","FROM_CSV","GETBIT","HASH","HEX","HYPOT","INITCAP","INLINE","INLINE_OUTER","INPUT_FILE_BLOCK_LENGTH","INPUT_FILE_BLOCK_START","INPUT_FILE_NAME","INSTR","ISNAN","ISNOTNULL","ISNULL","JAVA_METHOD","LCASE","LEFT","LENGTH","LEVENSHTEIN","LN","LOCATE","LOG","LOG10","LOG1P","LOG2","LOWER","LPAD","LTRIM","MAP_FILTER","MAP_ZIP_WITH","MD5","MOD","MONOTONICALLY_INCREASING_ID","NAMED_STRUCT","NANVL","NEGATIVE","NVL","NVL2","OCTET_LENGTH","OVERLAY","PARSE_URL","PI","PMOD","POSEXPLODE","POSEXPLODE_OUTER","POSITION","POSITIVE","POW","POWER","PRINTF","RADIANS","RAISE_ERROR","RAND","RANDN","RANDOM","REFLECT","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_LIKE","REGEXP_REPLACE","REPEAT","REPLACE","REVERSE","RIGHT","RINT","ROUND","RPAD","RTRIM","SCHEMA_OF_CSV","SENTENCES","SHA","SHA1","SHA2","SHIFTLEFT","SHIFTRIGHT","SHIFTRIGHTUNSIGNED","SIGN","SIGNUM","SIN","SINH","SOUNDEX","SPACE","SPARK_PARTITION_ID","SPLIT","SQRT","STACK","SUBSTR","SUBSTRING","SUBSTRING_INDEX","TAN","TANH","TO_CSV","TRANSFORM_KEYS","TRANSFORM_VALUES","TRANSLATE","TRIM","TRY_ADD","TRY_DIVIDE","TYPEOF","UCASE","UNBASE64","UNHEX","UPPER","UUID","VERSION","WIDTH_BUCKET","XPATH","XPATH_BOOLEAN","XPATH_DOUBLE","XPATH_FLOAT","XPATH_INT","XPATH_LONG","XPATH_NUMBER","XPATH_SHORT","XPATH_STRING","XXHASH64","ZIP_WITH","CAST","COALESCE","NULLIF"],$Oa=Xa(["SELECT [ALL | DISTINCT]"]),eQa=Xa(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","SORT BY","CLUSTER BY","DISTRIBUTE BY","LIMIT","INSERT [INTO | OVERWRITE] [TABLE]","VALUES","INSERT OVERWRITE [LOCAL] DIRECTORY","LOAD DATA [LOCAL] INPATH","[OVERWRITE] INTO TABLE"]),Vvi=Xa(["CREATE [EXTERNAL] TABLE [IF NOT EXISTS]"]),zhr=Xa(["CREATE [OR REPLACE] [GLOBAL TEMPORARY | TEMPORARY] VIEW [IF NOT EXISTS]","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD COLUMNS","DROP {COLUMN | COLUMNS}","RENAME TO","RENAME COLUMN","ALTER COLUMN","TRUNCATE TABLE","LATERAL VIEW","ALTER DATABASE","ALTER VIEW","CREATE DATABASE","CREATE FUNCTION","DROP DATABASE","DROP FUNCTION","DROP VIEW","REPAIR TABLE","USE DATABASE","TABLESAMPLE","PIVOT","TRANSFORM","EXPLAIN","ADD FILE","ADD JAR","ANALYZE TABLE","CACHE TABLE","CLEAR CACHE","DESCRIBE DATABASE","DESCRIBE FUNCTION","DESCRIBE QUERY","DESCRIBE TABLE","LIST FILE","LIST JAR","REFRESH","REFRESH TABLE","REFRESH FUNCTION","RESET","SHOW COLUMNS","SHOW CREATE TABLE","SHOW DATABASES","SHOW FUNCTIONS","SHOW PARTITIONS","SHOW TABLE EXTENDED","SHOW TABLES","SHOW TBLPROPERTIES","SHOW VIEWS","UNCACHE TABLE"]),tQa=Xa(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),rQa=Xa(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN","[LEFT] {ANTI | SEMI} JOIN","NATURAL [LEFT] {ANTI | SEMI} JOIN"]),nQa=Xa(["ON DELETE","ON UPDATE","CURRENT ROW","{ROWS | RANGE} BETWEEN"]),iQa={name:"spark",tokenizerOptions:{reservedSelect:$Oa,reservedClauses:[...eQa,...Vvi,...zhr],reservedSetOperations:tQa,reservedJoins:rQa,reservedPhrases:nQa,supportsXor:!0,reservedKeywords:jOa,reservedDataTypes:zOa,reservedFunctionNames:qOa,extraParens:["[]"],stringTypes:["''-bs",'""-bs',{quote:"''-raw",prefixes:["R","X"],requirePrefix:!0},{quote:'""-raw',prefixes:["R","X"],requirePrefix:!0}],identTypes:["``"],variableTypes:[{quote:"{}",prefixes:["$"],requirePrefix:!0}],operators:["%","~","^","|","&","<=>","==","!","||","->"],postProcess:sQa},formatOptions:{onelineClauses:[...Vvi,...zhr],tabularOnelineClauses:zhr}};function sQa(e){return e.map((t,r)=>{let s=e[r-1]||wwe,a=e[r+1]||wwe;return vIe.WINDOW(t)&&a.type==="OPEN_PAREN"?qF(ix({},t),{type:"RESERVED_FUNCTION_NAME"}):t.text==="ITEMS"&&t.type==="RESERVED_KEYWORD"&&!(s.text==="COLLECTION"&&a.text==="TERMINATED")?qF(ix({},t),{type:"IDENTIFIER",text:t.raw}):t})}var oQa=["ABS","CHANGES","CHAR","COALESCE","FORMAT","GLOB","HEX","IFNULL","IIF","INSTR","LAST_INSERT_ROWID","LENGTH","LIKE","LIKELIHOOD","LIKELY","LOAD_EXTENSION","LOWER","LTRIM","NULLIF","PRINTF","QUOTE","RANDOM","RANDOMBLOB","REPLACE","ROUND","RTRIM","SIGN","SOUNDEX","SQLITE_COMPILEOPTION_GET","SQLITE_COMPILEOPTION_USED","SQLITE_OFFSET","SQLITE_SOURCE_ID","SQLITE_VERSION","SUBSTR","SUBSTRING","TOTAL_CHANGES","TRIM","TYPEOF","UNICODE","UNLIKELY","UPPER","ZEROBLOB","AVG","COUNT","GROUP_CONCAT","MAX","MIN","SUM","TOTAL","DATE","TIME","DATETIME","JULIANDAY","UNIXEPOCH","STRFTIME","row_number","rank","dense_rank","percent_rank","cume_dist","ntile","lag","lead","first_value","last_value","nth_value","ACOS","ACOSH","ASIN","ASINH","ATAN","ATAN2","ATANH","CEIL","CEILING","COS","COSH","DEGREES","EXP","FLOOR","LN","LOG","LOG","LOG10","LOG2","MOD","PI","POW","POWER","RADIANS","SIN","SINH","SQRT","TAN","TANH","TRUNC","JSON","JSON_ARRAY","JSON_ARRAY_LENGTH","JSON_ARRAY_LENGTH","JSON_EXTRACT","JSON_INSERT","JSON_OBJECT","JSON_PATCH","JSON_REMOVE","JSON_REPLACE","JSON_SET","JSON_TYPE","JSON_TYPE","JSON_VALID","JSON_QUOTE","JSON_GROUP_ARRAY","JSON_GROUP_OBJECT","JSON_EACH","JSON_TREE","CAST"],aQa=["ABORT","ACTION","ADD","AFTER","ALL","ALTER","AND","ARE","ALWAYS","ANALYZE","AS","ASC","ATTACH","AUTOINCREMENT","BEFORE","BEGIN","BETWEEN","BY","CASCADE","CASE","CAST","CHECK","COLLATE","COLUMN","COMMIT","CONFLICT","CONSTRAINT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATABASE","DEFAULT","DEFERRABLE","DEFERRED","DELETE","DESC","DETACH","DISTINCT","DO","DROP","EACH","ELSE","END","ESCAPE","EXCEPT","EXCLUDE","EXCLUSIVE","EXISTS","EXPLAIN","FAIL","FILTER","FIRST","FOLLOWING","FOR","FOREIGN","FROM","FULL","GENERATED","GLOB","GROUP","GROUPS","HAVING","IF","IGNORE","IMMEDIATE","IN","INDEX","INDEXED","INITIALLY","INNER","INSERT","INSTEAD","INTERSECT","INTO","IS","ISNULL","JOIN","KEY","LAST","LEFT","LIKE","LIMIT","MATCH","MATERIALIZED","NATURAL","NO","NOT","NOTHING","NOTNULL","NULL","NULLS","OF","OFFSET","ON","ONLY","OPEN","OR","ORDER","OTHERS","OUTER","OVER","PARTITION","PLAN","PRAGMA","PRECEDING","PRIMARY","QUERY","RAISE","RANGE","RECURSIVE","REFERENCES","REGEXP","REINDEX","RELEASE","RENAME","REPLACE","RESTRICT","RETURNING","RIGHT","ROLLBACK","ROW","ROWS","SAVEPOINT","SELECT","SET","TABLE","TEMP","TEMPORARY","THEN","TIES","TO","TRANSACTION","TRIGGER","UNBOUNDED","UNION","UNIQUE","UPDATE","USING","VACUUM","VALUES","VIEW","VIRTUAL","WHEN","WHERE","WINDOW","WITH","WITHOUT"],cQa=["ANY","ARRAY","BLOB","CHARACTER","DECIMAL","INT","INTEGER","NATIVE CHARACTER","NCHAR","NUMERIC","NVARCHAR","REAL","TEXT","VARCHAR","VARYING CHARACTER"],lQa=Xa(["SELECT [ALL | DISTINCT]"]),uQa=Xa(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [OR ABORT | OR FAIL | OR IGNORE | OR REPLACE | OR ROLLBACK] INTO","REPLACE INTO","VALUES","SET"]),Wvi=Xa(["CREATE [TEMPORARY | TEMP] TABLE [IF NOT EXISTS]"]),qhr=Xa(["CREATE [TEMPORARY | TEMP] VIEW [IF NOT EXISTS]","UPDATE [OR ABORT | OR FAIL | OR IGNORE | OR REPLACE | OR ROLLBACK]","ON CONFLICT","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","DROP [COLUMN]","RENAME [COLUMN]","RENAME TO","SET SCHEMA"]),gQa=Xa(["UNION [ALL]","EXCEPT","INTERSECT"]),AQa=Xa(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),dQa=Xa(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE | GROUPS} BETWEEN"]),pQa={name:"sqlite",tokenizerOptions:{reservedSelect:lQa,reservedClauses:[...uQa,...Wvi,...qhr],reservedSetOperations:gQa,reservedJoins:AQa,reservedPhrases:dQa,reservedKeywords:aQa,reservedDataTypes:cQa,reservedFunctionNames:oQa,stringTypes:["''-qq",{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq',"``","[]"],paramTypes:{positional:!0,numbered:["?"],named:[":","@","$"]},operators:["%","~","&","|","<<",">>","==","->","->>","||"]},formatOptions:{onelineClauses:[...Wvi,...qhr],tabularOnelineClauses:qhr}},fQa=["GROUPING","RANK","DENSE_RANK","PERCENT_RANK","CUME_DIST","ROW_NUMBER","POSITION","OCCURRENCES_REGEX","POSITION_REGEX","EXTRACT","CHAR_LENGTH","CHARACTER_LENGTH","OCTET_LENGTH","CARDINALITY","ABS","MOD","LN","EXP","POWER","SQRT","FLOOR","CEIL","CEILING","WIDTH_BUCKET","SUBSTRING","SUBSTRING_REGEX","UPPER","LOWER","CONVERT","TRANSLATE","TRANSLATE_REGEX","TRIM","OVERLAY","NORMALIZE","SPECIFICTYPE","CURRENT_DATE","CURRENT_TIME","LOCALTIME","CURRENT_TIMESTAMP","LOCALTIMESTAMP","COUNT","AVG","MAX","MIN","SUM","STDDEV_POP","STDDEV_SAMP","VAR_SAMP","VAR_POP","COLLECT","FUSION","INTERSECTION","COVAR_POP","COVAR_SAMP","CORR","REGR_SLOPE","REGR_INTERCEPT","REGR_COUNT","REGR_R2","REGR_AVGX","REGR_AVGY","REGR_SXX","REGR_SYY","REGR_SXY","PERCENTILE_CONT","PERCENTILE_DISC","CAST","COALESCE","NULLIF","ROUND","SIN","COS","TAN","ASIN","ACOS","ATAN"],IQa=["ALL","ALLOCATE","ALTER","ANY","ARE","AS","ASC","ASENSITIVE","ASYMMETRIC","AT","ATOMIC","AUTHORIZATION","BEGIN","BETWEEN","BOTH","BY","CALL","CALLED","CASCADED","CAST","CHECK","CLOSE","COALESCE","COLLATE","COLUMN","COMMIT","CONDITION","CONNECT","CONSTRAINT","CORRESPONDING","CREATE","CROSS","CUBE","CURRENT","CURRENT_CATALOG","CURRENT_DEFAULT_TRANSFORM_GROUP","CURRENT_PATH","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_TRANSFORM_GROUP_FOR_TYPE","CURRENT_USER","CURSOR","CYCLE","DEALLOCATE","DAY","DECLARE","DEFAULT","DELETE","DEREF","DESC","DESCRIBE","DETERMINISTIC","DISCONNECT","DISTINCT","DROP","DYNAMIC","EACH","ELEMENT","END-EXEC","ESCAPE","EVERY","EXCEPT","EXEC","EXECUTE","EXISTS","EXTERNAL","FALSE","FETCH","FILTER","FOR","FOREIGN","FREE","FROM","FULL","FUNCTION","GET","GLOBAL","GRANT","GROUP","HAVING","HOLD","HOUR","IDENTITY","IN","INDICATOR","INNER","INOUT","INSENSITIVE","INSERT","INTERSECT","INTO","IS","LANGUAGE","LARGE","LATERAL","LEADING","LEFT","LIKE","LIKE_REGEX","LOCAL","MATCH","MEMBER","MERGE","METHOD","MINUTE","MODIFIES","MODULE","MONTH","NATURAL","NEW","NO","NONE","NOT","NULL","NULLIF","OF","OLD","ON","ONLY","OPEN","ORDER","OUT","OUTER","OVER","OVERLAPS","PARAMETER","PARTITION","PRECISION","PREPARE","PRIMARY","PROCEDURE","RANGE","READS","REAL","RECURSIVE","REF","REFERENCES","REFERENCING","RELEASE","RESULT","RETURN","RETURNS","REVOKE","RIGHT","ROLLBACK","ROLLUP","ROW","ROWS","SAVEPOINT","SCOPE","SCROLL","SEARCH","SECOND","SELECT","SENSITIVE","SESSION_USER","SET","SIMILAR","SOME","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","START","STATIC","SUBMULTISET","SYMMETRIC","SYSTEM","SYSTEM_USER","TABLE","TABLESAMPLE","THEN","TIMEZONE_HOUR","TIMEZONE_MINUTE","TO","TRAILING","TRANSLATION","TREAT","TRIGGER","TRUE","UESCAPE","UNION","UNIQUE","UNKNOWN","UNNEST","UPDATE","USER","USING","VALUE","VALUES","WHENEVER","WINDOW","WITHIN","WITHOUT","YEAR"],CQa=["ARRAY","BIGINT","BINARY LARGE OBJECT","BINARY VARYING","BINARY","BLOB","BOOLEAN","CHAR LARGE OBJECT","CHAR VARYING","CHAR","CHARACTER LARGE OBJECT","CHARACTER VARYING","CHARACTER","CLOB","DATE","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","MULTISET","NATIONAL CHAR VARYING","NATIONAL CHAR","NATIONAL CHARACTER LARGE OBJECT","NATIONAL CHARACTER VARYING","NATIONAL CHARACTER","NCHAR LARGE OBJECT","NCHAR VARYING","NCHAR","NCLOB","NUMERIC","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR"],mQa=Xa(["SELECT [ALL | DISTINCT]"]),hQa=Xa(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT INTO","VALUES","SET"]),Pvi=Xa(["CREATE [GLOBAL TEMPORARY | LOCAL TEMPORARY] TABLE"]),$hr=Xa(["CREATE [RECURSIVE] VIEW","UPDATE","WHERE CURRENT OF","DELETE FROM","DROP TABLE","ALTER TABLE","ADD COLUMN","DROP [COLUMN]","RENAME COLUMN","RENAME TO","ALTER [COLUMN]","{SET | DROP} DEFAULT","ADD SCOPE","DROP SCOPE {CASCADE | RESTRICT}","RESTART WITH","TRUNCATE TABLE","SET SCHEMA"]),_Qa=Xa(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),yQa=Xa(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),bQa=Xa(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE} BETWEEN"]),EQa={name:"sql",tokenizerOptions:{reservedSelect:mQa,reservedClauses:[...hQa,...Pvi,...$hr],reservedSetOperations:_Qa,reservedJoins:yQa,reservedPhrases:bQa,reservedKeywords:IQa,reservedDataTypes:CQa,reservedFunctionNames:fQa,stringTypes:[{quote:"''-qq-bs",prefixes:["N","U&"]},{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq',"``"],paramTypes:{positional:!0},operators:["||"]},formatOptions:{onelineClauses:[...Pvi,...$hr],tabularOnelineClauses:$hr}},BQa=["ABS","ACOS","ALL_MATCH","ANY_MATCH","APPROX_DISTINCT","APPROX_MOST_FREQUENT","APPROX_PERCENTILE","APPROX_SET","ARBITRARY","ARRAYS_OVERLAP","ARRAY_AGG","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_INTERSECT","ARRAY_JOIN","ARRAY_MAX","ARRAY_MIN","ARRAY_POSITION","ARRAY_REMOVE","ARRAY_SORT","ARRAY_UNION","ASIN","ATAN","ATAN2","AT_TIMEZONE","AVG","BAR","BETA_CDF","BING_TILE","BING_TILES_AROUND","BING_TILE_AT","BING_TILE_COORDINATES","BING_TILE_POLYGON","BING_TILE_QUADKEY","BING_TILE_ZOOM_LEVEL","BITWISE_AND","BITWISE_AND_AGG","BITWISE_LEFT_SHIFT","BITWISE_NOT","BITWISE_OR","BITWISE_OR_AGG","BITWISE_RIGHT_SHIFT","BITWISE_RIGHT_SHIFT_ARITHMETIC","BITWISE_XOR","BIT_COUNT","BOOL_AND","BOOL_OR","CARDINALITY","CAST","CBRT","CEIL","CEILING","CHAR2HEXINT","CHECKSUM","CHR","CLASSIFY","COALESCE","CODEPOINT","COLOR","COMBINATIONS","CONCAT","CONCAT_WS","CONTAINS","CONTAINS_SEQUENCE","CONVEX_HULL_AGG","CORR","COS","COSH","COSINE_SIMILARITY","COUNT","COUNT_IF","COVAR_POP","COVAR_SAMP","CRC32","CUME_DIST","CURRENT_CATALOG","CURRENT_DATE","CURRENT_GROUPS","CURRENT_SCHEMA","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","DATE","DATE_ADD","DATE_DIFF","DATE_FORMAT","DATE_PARSE","DATE_TRUNC","DAY","DAY_OF_MONTH","DAY_OF_WEEK","DAY_OF_YEAR","DEGREES","DENSE_RANK","DOW","DOY","E","ELEMENT_AT","EMPTY_APPROX_SET","EVALUATE_CLASSIFIER_PREDICTIONS","EVERY","EXP","EXTRACT","FEATURES","FILTER","FIRST_VALUE","FLATTEN","FLOOR","FORMAT","FORMAT_DATETIME","FORMAT_NUMBER","FROM_BASE","FROM_BASE32","FROM_BASE64","FROM_BASE64URL","FROM_BIG_ENDIAN_32","FROM_BIG_ENDIAN_64","FROM_ENCODED_POLYLINE","FROM_GEOJSON_GEOMETRY","FROM_HEX","FROM_IEEE754_32","FROM_IEEE754_64","FROM_ISO8601_DATE","FROM_ISO8601_TIMESTAMP","FROM_ISO8601_TIMESTAMP_NANOS","FROM_UNIXTIME","FROM_UNIXTIME_NANOS","FROM_UTF8","GEOMETRIC_MEAN","GEOMETRY_FROM_HADOOP_SHAPE","GEOMETRY_INVALID_REASON","GEOMETRY_NEAREST_POINTS","GEOMETRY_TO_BING_TILES","GEOMETRY_UNION","GEOMETRY_UNION_AGG","GREATEST","GREAT_CIRCLE_DISTANCE","HAMMING_DISTANCE","HASH_COUNTS","HISTOGRAM","HMAC_MD5","HMAC_SHA1","HMAC_SHA256","HMAC_SHA512","HOUR","HUMAN_READABLE_SECONDS","IF","INDEX","INFINITY","INTERSECTION_CARDINALITY","INVERSE_BETA_CDF","INVERSE_NORMAL_CDF","IS_FINITE","IS_INFINITE","IS_JSON_SCALAR","IS_NAN","JACCARD_INDEX","JSON_ARRAY_CONTAINS","JSON_ARRAY_GET","JSON_ARRAY_LENGTH","JSON_EXISTS","JSON_EXTRACT","JSON_EXTRACT_SCALAR","JSON_FORMAT","JSON_PARSE","JSON_QUERY","JSON_SIZE","JSON_VALUE","KURTOSIS","LAG","LAST_DAY_OF_MONTH","LAST_VALUE","LEAD","LEARN_CLASSIFIER","LEARN_LIBSVM_CLASSIFIER","LEARN_LIBSVM_REGRESSOR","LEARN_REGRESSOR","LEAST","LENGTH","LEVENSHTEIN_DISTANCE","LINE_INTERPOLATE_POINT","LINE_INTERPOLATE_POINTS","LINE_LOCATE_POINT","LISTAGG","LN","LOCALTIME","LOCALTIMESTAMP","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","LUHN_CHECK","MAKE_SET_DIGEST","MAP","MAP_AGG","MAP_CONCAT","MAP_ENTRIES","MAP_FILTER","MAP_FROM_ENTRIES","MAP_KEYS","MAP_UNION","MAP_VALUES","MAP_ZIP_WITH","MAX","MAX_BY","MD5","MERGE","MERGE_SET_DIGEST","MILLISECOND","MIN","MINUTE","MIN_BY","MOD","MONTH","MULTIMAP_AGG","MULTIMAP_FROM_ENTRIES","MURMUR3","NAN","NGRAMS","NONE_MATCH","NORMALIZE","NORMAL_CDF","NOW","NTH_VALUE","NTILE","NULLIF","NUMERIC_HISTOGRAM","OBJECTID","OBJECTID_TIMESTAMP","PARSE_DATA_SIZE","PARSE_DATETIME","PARSE_DURATION","PERCENT_RANK","PI","POSITION","POW","POWER","QDIGEST_AGG","QUARTER","RADIANS","RAND","RANDOM","RANK","REDUCE","REDUCE_AGG","REGEXP_COUNT","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_LIKE","REGEXP_POSITION","REGEXP_REPLACE","REGEXP_SPLIT","REGRESS","REGR_INTERCEPT","REGR_SLOPE","RENDER","REPEAT","REPLACE","REVERSE","RGB","ROUND","ROW_NUMBER","RPAD","RTRIM","SECOND","SEQUENCE","SHA1","SHA256","SHA512","SHUFFLE","SIGN","SIMPLIFY_GEOMETRY","SIN","SKEWNESS","SLICE","SOUNDEX","SPATIAL_PARTITIONING","SPATIAL_PARTITIONS","SPLIT","SPLIT_PART","SPLIT_TO_MAP","SPLIT_TO_MULTIMAP","SPOOKY_HASH_V2_32","SPOOKY_HASH_V2_64","SQRT","STARTS_WITH","STDDEV","STDDEV_POP","STDDEV_SAMP","STRPOS","ST_AREA","ST_ASBINARY","ST_ASTEXT","ST_BOUNDARY","ST_BUFFER","ST_CENTROID","ST_CONTAINS","ST_CONVEXHULL","ST_COORDDIM","ST_CROSSES","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_ENDPOINT","ST_ENVELOPE","ST_ENVELOPEASPTS","ST_EQUALS","ST_EXTERIORRING","ST_GEOMETRIES","ST_GEOMETRYFROMTEXT","ST_GEOMETRYN","ST_GEOMETRYTYPE","ST_GEOMFROMBINARY","ST_INTERIORRINGN","ST_INTERIORRINGS","ST_INTERSECTION","ST_INTERSECTS","ST_ISCLOSED","ST_ISEMPTY","ST_ISRING","ST_ISSIMPLE","ST_ISVALID","ST_LENGTH","ST_LINEFROMTEXT","ST_LINESTRING","ST_MULTIPOINT","ST_NUMGEOMETRIES","ST_NUMINTERIORRING","ST_NUMPOINTS","ST_OVERLAPS","ST_POINT","ST_POINTN","ST_POINTS","ST_POLYGON","ST_RELATE","ST_STARTPOINT","ST_SYMDIFFERENCE","ST_TOUCHES","ST_UNION","ST_WITHIN","ST_X","ST_XMAX","ST_XMIN","ST_Y","ST_YMAX","ST_YMIN","SUBSTR","SUBSTRING","SUM","TAN","TANH","TDIGEST_AGG","TIMESTAMP_OBJECTID","TIMEZONE_HOUR","TIMEZONE_MINUTE","TO_BASE","TO_BASE32","TO_BASE64","TO_BASE64URL","TO_BIG_ENDIAN_32","TO_BIG_ENDIAN_64","TO_CHAR","TO_DATE","TO_ENCODED_POLYLINE","TO_GEOJSON_GEOMETRY","TO_GEOMETRY","TO_HEX","TO_IEEE754_32","TO_IEEE754_64","TO_ISO8601","TO_MILLISECONDS","TO_SPHERICAL_GEOGRAPHY","TO_TIMESTAMP","TO_UNIXTIME","TO_UTF8","TRANSFORM","TRANSFORM_KEYS","TRANSFORM_VALUES","TRANSLATE","TRIM","TRIM_ARRAY","TRUNCATE","TRY","TRY_CAST","TYPEOF","UPPER","URL_DECODE","URL_ENCODE","URL_EXTRACT_FRAGMENT","URL_EXTRACT_HOST","URL_EXTRACT_PARAMETER","URL_EXTRACT_PATH","URL_EXTRACT_PORT","URL_EXTRACT_PROTOCOL","URL_EXTRACT_QUERY","UUID","VALUES_AT_QUANTILES","VALUE_AT_QUANTILE","VARIANCE","VAR_POP","VAR_SAMP","VERSION","WEEK","WEEK_OF_YEAR","WIDTH_BUCKET","WILSON_INTERVAL_LOWER","WILSON_INTERVAL_UPPER","WITH_TIMEZONE","WORD_STEM","XXHASH64","YEAR","YEAR_OF_WEEK","YOW","ZIP","ZIP_WITH","CLASSIFIER","FIRST","LAST","MATCH_NUMBER","NEXT","PERMUTE","PREV"],vQa=["ABSENT","ADD","ADMIN","AFTER","ALL","ALTER","ANALYZE","AND","ANY","AS","ASC","AT","AUTHORIZATION","BERNOULLI","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CATALOGS","COLUMN","COLUMNS","COMMENT","COMMIT","COMMITTED","CONDITIONAL","CONSTRAINT","COPARTITION","CREATE","CROSS","CUBE","CURRENT","CURRENT_PATH","CURRENT_ROLE","DATA","DEALLOCATE","DEFAULT","DEFINE","DEFINER","DELETE","DENY","DESC","DESCRIBE","DESCRIPTOR","DISTINCT","DISTRIBUTED","DOUBLE","DROP","ELSE","EMPTY","ENCODING","END","ERROR","ESCAPE","EXCEPT","EXCLUDING","EXECUTE","EXISTS","EXPLAIN","FALSE","FETCH","FINAL","FIRST","FOLLOWING","FOR","FROM","FULL","FUNCTIONS","GRANT","GRANTED","GRANTS","GRAPHVIZ","GROUP","GROUPING","GROUPS","HAVING","IGNORE","IN","INCLUDING","INITIAL","INNER","INPUT","INSERT","INTERSECT","INTERVAL","INTO","INVOKER","IO","IS","ISOLATION","JOIN","JSON","JSON_ARRAY","JSON_OBJECT","KEEP","KEY","KEYS","LAST","LATERAL","LEADING","LEFT","LEVEL","LIKE","LIMIT","LOCAL","LOGICAL","MATCH","MATCHED","MATCHES","MATCH_RECOGNIZE","MATERIALIZED","MEASURES","NATURAL","NEXT","NFC","NFD","NFKC","NFKD","NO","NONE","NOT","NULL","NULLS","OBJECT","OF","OFFSET","OMIT","ON","ONE","ONLY","OPTION","OR","ORDER","ORDINALITY","OUTER","OUTPUT","OVER","OVERFLOW","PARTITION","PARTITIONS","PASSING","PAST","PATH","PATTERN","PER","PERMUTE","PRECEDING","PRECISION","PREPARE","PRIVILEGES","PROPERTIES","PRUNE","QUOTES","RANGE","READ","RECURSIVE","REFRESH","RENAME","REPEATABLE","RESET","RESPECT","RESTRICT","RETURNING","REVOKE","RIGHT","ROLE","ROLES","ROLLBACK","ROLLUP","ROW","ROWS","RUNNING","SCALAR","SCHEMA","SCHEMAS","SECURITY","SEEK","SELECT","SERIALIZABLE","SESSION","SET","SETS","SHOW","SKIP","SOME","START","STATS","STRING","SUBSET","SYSTEM","TABLE","TABLES","TABLESAMPLE","TEXT","THEN","TIES","TIME","TIMESTAMP","TO","TRAILING","TRANSACTION","TRUE","TYPE","UESCAPE","UNBOUNDED","UNCOMMITTED","UNCONDITIONAL","UNION","UNIQUE","UNKNOWN","UNMATCHED","UNNEST","UPDATE","USE","USER","USING","UTF16","UTF32","UTF8","VALIDATE","VALUE","VALUES","VERBOSE","VIEW","WHEN","WHERE","WINDOW","WITH","WITHIN","WITHOUT","WORK","WRAPPER","WRITE","ZONE"],SQa=["BIGINT","INT","INTEGER","SMALLINT","TINYINT","BOOLEAN","DATE","DECIMAL","REAL","DOUBLE","HYPERLOGLOG","QDIGEST","TDIGEST","P4HYPERLOGLOG","INTERVAL","TIMESTAMP","TIME","VARBINARY","VARCHAR","CHAR","ROW","ARRAY","MAP","JSON","JSON2016","IPADDRESS","GEOMETRY","UUID","SETDIGEST","JONIREGEXP","RE2JREGEXP","LIKEPATTERN","COLOR","CODEPOINTS","FUNCTION","JSONPATH"],wQa=Xa(["SELECT [ALL | DISTINCT]"]),TQa=Xa(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT INTO","VALUES","SET","MATCH_RECOGNIZE","MEASURES","ONE ROW PER MATCH","ALL ROWS PER MATCH","AFTER MATCH","PATTERN","SUBSET","DEFINE"]),Ovi=Xa(["CREATE TABLE [IF NOT EXISTS]"]),e_r=Xa(["CREATE [OR REPLACE] [MATERIALIZED] VIEW","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","ADD COLUMN [IF NOT EXISTS]","DROP COLUMN [IF EXISTS]","RENAME COLUMN [IF EXISTS]","RENAME TO","SET AUTHORIZATION [USER | ROLE]","SET PROPERTIES","EXECUTE","TRUNCATE TABLE","ALTER SCHEMA","ALTER MATERIALIZED VIEW","ALTER VIEW","CREATE SCHEMA","CREATE ROLE","DROP SCHEMA","DROP MATERIALIZED VIEW","DROP VIEW","DROP ROLE","EXPLAIN","ANALYZE","EXPLAIN ANALYZE","EXPLAIN ANALYZE VERBOSE","USE","DESCRIBE INPUT","DESCRIBE OUTPUT","REFRESH MATERIALIZED VIEW","RESET SESSION","SET SESSION","SET PATH","SET TIME ZONE","SHOW GRANTS","SHOW CREATE TABLE","SHOW CREATE SCHEMA","SHOW CREATE VIEW","SHOW CREATE MATERIALIZED VIEW","SHOW TABLES","SHOW SCHEMAS","SHOW CATALOGS","SHOW COLUMNS","SHOW STATS FOR","SHOW ROLES","SHOW CURRENT ROLES","SHOW ROLE GRANTS","SHOW FUNCTIONS","SHOW SESSION"]),NQa=Xa(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),RQa=Xa(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),DQa=Xa(["{ROWS | RANGE | GROUPS} BETWEEN","IS [NOT] DISTINCT FROM"]),xQa={name:"trino",tokenizerOptions:{reservedSelect:wQa,reservedClauses:[...TQa,...Ovi,...e_r],reservedSetOperations:NQa,reservedJoins:RQa,reservedPhrases:DQa,reservedKeywords:vQa,reservedDataTypes:SQa,reservedFunctionNames:BQa,extraParens:["[]","{}"],stringTypes:[{quote:"''-qq",prefixes:["U&"]},{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq'],paramTypes:{positional:!0},operators:["%","->","=>",":","||","|","^","$"]},formatOptions:{onelineClauses:[...Ovi,...e_r],tabularOnelineClauses:e_r}},kQa=["APPROX_COUNT_DISTINCT","AVG","CHECKSUM_AGG","COUNT","COUNT_BIG","GROUPING","GROUPING_ID","MAX","MIN","STDEV","STDEVP","SUM","VAR","VARP","CUME_DIST","FIRST_VALUE","LAG","LAST_VALUE","LEAD","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","Collation - COLLATIONPROPERTY","Collation - TERTIARY_WEIGHTS","@@DBTS","@@LANGID","@@LANGUAGE","@@LOCK_TIMEOUT","@@MAX_CONNECTIONS","@@MAX_PRECISION","@@NESTLEVEL","@@OPTIONS","@@REMSERVER","@@SERVERNAME","@@SERVICENAME","@@SPID","@@TEXTSIZE","@@VERSION","CAST","CONVERT","PARSE","TRY_CAST","TRY_CONVERT","TRY_PARSE","ASYMKEY_ID","ASYMKEYPROPERTY","CERTPROPERTY","CERT_ID","CRYPT_GEN_RANDOM","DECRYPTBYASYMKEY","DECRYPTBYCERT","DECRYPTBYKEY","DECRYPTBYKEYAUTOASYMKEY","DECRYPTBYKEYAUTOCERT","DECRYPTBYPASSPHRASE","ENCRYPTBYASYMKEY","ENCRYPTBYCERT","ENCRYPTBYKEY","ENCRYPTBYPASSPHRASE","HASHBYTES","IS_OBJECTSIGNED","KEY_GUID","KEY_ID","KEY_NAME","SIGNBYASYMKEY","SIGNBYCERT","SYMKEYPROPERTY","VERIFYSIGNEDBYCERT","VERIFYSIGNEDBYASYMKEY","@@CURSOR_ROWS","@@FETCH_STATUS","CURSOR_STATUS","DATALENGTH","IDENT_CURRENT","IDENT_INCR","IDENT_SEED","IDENTITY","SQL_VARIANT_PROPERTY","@@DATEFIRST","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_TIMEZONE_ID","DATEADD","DATEDIFF","DATEDIFF_BIG","DATEFROMPARTS","DATENAME","DATEPART","DATETIME2FROMPARTS","DATETIMEFROMPARTS","DATETIMEOFFSETFROMPARTS","DAY","EOMONTH","GETDATE","GETUTCDATE","ISDATE","MONTH","SMALLDATETIMEFROMPARTS","SWITCHOFFSET","SYSDATETIME","SYSDATETIMEOFFSET","SYSUTCDATETIME","TIMEFROMPARTS","TODATETIMEOFFSET","YEAR","JSON","ISJSON","JSON_VALUE","JSON_QUERY","JSON_MODIFY","ABS","ACOS","ASIN","ATAN","ATN2","CEILING","COS","COT","DEGREES","EXP","FLOOR","LOG","LOG10","PI","POWER","RADIANS","RAND","ROUND","SIGN","SIN","SQRT","SQUARE","TAN","CHOOSE","GREATEST","IIF","LEAST","@@PROCID","APP_NAME","APPLOCK_MODE","APPLOCK_TEST","ASSEMBLYPROPERTY","COL_LENGTH","COL_NAME","COLUMNPROPERTY","DATABASEPROPERTYEX","DB_ID","DB_NAME","FILE_ID","FILE_IDEX","FILE_NAME","FILEGROUP_ID","FILEGROUP_NAME","FILEGROUPPROPERTY","FILEPROPERTY","FILEPROPERTYEX","FULLTEXTCATALOGPROPERTY","FULLTEXTSERVICEPROPERTY","INDEX_COL","INDEXKEY_PROPERTY","INDEXPROPERTY","NEXT VALUE FOR","OBJECT_DEFINITION","OBJECT_ID","OBJECT_NAME","OBJECT_SCHEMA_NAME","OBJECTPROPERTY","OBJECTPROPERTYEX","ORIGINAL_DB_NAME","PARSENAME","SCHEMA_ID","SCHEMA_NAME","SCOPE_IDENTITY","SERVERPROPERTY","STATS_DATE","TYPE_ID","TYPE_NAME","TYPEPROPERTY","DENSE_RANK","NTILE","RANK","ROW_NUMBER","PUBLISHINGSERVERNAME","CERTENCODED","CERTPRIVATEKEY","CURRENT_USER","DATABASE_PRINCIPAL_ID","HAS_DBACCESS","HAS_PERMS_BY_NAME","IS_MEMBER","IS_ROLEMEMBER","IS_SRVROLEMEMBER","LOGINPROPERTY","ORIGINAL_LOGIN","PERMISSIONS","PWDENCRYPT","PWDCOMPARE","SESSION_USER","SESSIONPROPERTY","SUSER_ID","SUSER_NAME","SUSER_SID","SUSER_SNAME","SYSTEM_USER","USER","USER_ID","USER_NAME","ASCII","CHAR","CHARINDEX","CONCAT","CONCAT_WS","DIFFERENCE","FORMAT","LEFT","LEN","LOWER","LTRIM","NCHAR","PATINDEX","QUOTENAME","REPLACE","REPLICATE","REVERSE","RIGHT","RTRIM","SOUNDEX","SPACE","STR","STRING_AGG","STRING_ESCAPE","STUFF","SUBSTRING","TRANSLATE","TRIM","UNICODE","UPPER","$PARTITION","@@ERROR","@@IDENTITY","@@PACK_RECEIVED","@@ROWCOUNT","@@TRANCOUNT","BINARY_CHECKSUM","CHECKSUM","COMPRESS","CONNECTIONPROPERTY","CONTEXT_INFO","CURRENT_REQUEST_ID","CURRENT_TRANSACTION_ID","DECOMPRESS","ERROR_LINE","ERROR_MESSAGE","ERROR_NUMBER","ERROR_PROCEDURE","ERROR_SEVERITY","ERROR_STATE","FORMATMESSAGE","GET_FILESTREAM_TRANSACTION_CONTEXT","GETANSINULL","HOST_ID","HOST_NAME","ISNULL","ISNUMERIC","MIN_ACTIVE_ROWVERSION","NEWID","NEWSEQUENTIALID","ROWCOUNT_BIG","SESSION_CONTEXT","XACT_STATE","@@CONNECTIONS","@@CPU_BUSY","@@IDLE","@@IO_BUSY","@@PACK_SENT","@@PACKET_ERRORS","@@TIMETICKS","@@TOTAL_ERRORS","@@TOTAL_READ","@@TOTAL_WRITE","TEXTPTR","TEXTVALID","COLUMNS_UPDATED","EVENTDATA","TRIGGER_NESTLEVEL","UPDATE","COALESCE","NULLIF"],GQa=["ADD","ALL","ALTER","AND","ANY","AS","ASC","AUTHORIZATION","BACKUP","BEGIN","BETWEEN","BREAK","BROWSE","BULK","BY","CASCADE","CHECK","CHECKPOINT","CLOSE","CLUSTERED","COALESCE","COLLATE","COLUMN","COMMIT","COMPUTE","CONSTRAINT","CONTAINS","CONTAINSTABLE","CONTINUE","CONVERT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DBCC","DEALLOCATE","DECLARE","DEFAULT","DELETE","DENY","DESC","DISK","DISTINCT","DISTRIBUTED","DROP","DUMP","ERRLVL","ESCAPE","EXEC","EXECUTE","EXISTS","EXIT","EXTERNAL","FETCH","FILE","FILLFACTOR","FOR","FOREIGN","FREETEXT","FREETEXTTABLE","FROM","FULL","FUNCTION","GOTO","GRANT","GROUP","HAVING","HOLDLOCK","IDENTITY","IDENTITYCOL","IDENTITY_INSERT","IF","IN","INDEX","INNER","INSERT","INTERSECT","INTO","IS","JOIN","KEY","KILL","LEFT","LIKE","LINENO","LOAD","MERGE","NOCHECK","NONCLUSTERED","NOT","NULL","NULLIF","OF","OFF","OFFSETS","ON","OPEN","OPENDATASOURCE","OPENQUERY","OPENROWSET","OPENXML","OPTION","OR","ORDER","OUTER","OVER","PERCENT","PIVOT","PLAN","PRIMARY","PRINT","PROC","PROCEDURE","PUBLIC","RAISERROR","READ","READTEXT","RECONFIGURE","REFERENCES","REPLICATION","RESTORE","RESTRICT","RETURN","REVERT","REVOKE","RIGHT","ROLLBACK","ROWCOUNT","ROWGUIDCOL","RULE","SAVE","SCHEMA","SECURITYAUDIT","SELECT","SEMANTICKEYPHRASETABLE","SEMANTICSIMILARITYDETAILSTABLE","SEMANTICSIMILARITYTABLE","SESSION_USER","SET","SETUSER","SHUTDOWN","SOME","STATISTICS","SYSTEM_USER","TABLE","TABLESAMPLE","TEXTSIZE","THEN","TO","TOP","TRAN","TRANSACTION","TRIGGER","TRUNCATE","TRY_CONVERT","TSEQUAL","UNION","UNIQUE","UNPIVOT","UPDATE","UPDATETEXT","USE","USER","VALUES","VIEW","WAITFOR","WHERE","WHILE","WITH","WITHIN GROUP","WRITETEXT","ABSOLUTE","ACTION","ADA","ALLOCATE","ARE","ASSERTION","AT","AVG","BIT_LENGTH","BOTH","CASCADED","CAST","CATALOG","CHARACTER_LENGTH","CHAR_LENGTH","COLLATION","CONNECT","CONNECTION","CONSTRAINTS","CORRESPONDING","COUNT","DAY","DEFERRABLE","DEFERRED","DESCRIBE","DESCRIPTOR","DIAGNOSTICS","DISCONNECT","DOMAIN","END-EXEC","EXCEPTION","EXTRACT","FALSE","FIRST","FORTRAN","FOUND","GET","GLOBAL","GO","HOUR","IMMEDIATE","INCLUDE","INDICATOR","INITIALLY","INPUT","INSENSITIVE","INTERVAL","ISOLATION","LANGUAGE","LAST","LEADING","LEVEL","LOCAL","LOWER","MATCH","MAX","MIN","MINUTE","MODULE","MONTH","NAMES","NATURAL","NEXT","NO","NONE","OCTET_LENGTH","ONLY","OUTPUT","OVERLAPS","PAD","PARTIAL","PASCAL","POSITION","PREPARE","PRESERVE","PRIOR","PRIVILEGES","RELATIVE","ROWS","SCROLL","SECOND","SECTION","SESSION","SIZE","SPACE","SQL","SQLCA","SQLCODE","SQLERROR","SQLSTATE","SQLWARNING","SUBSTRING","SUM","TEMPORARY","TIMEZONE_HOUR","TIMEZONE_MINUTE","TRAILING","TRANSLATE","TRANSLATION","TRIM","TRUE","UNKNOWN","UPPER","USAGE","VALUE","WHENEVER","WORK","WRITE","YEAR","ZONE"],FQa=["BINARY","BIT","CHAR","CHAR","CHARACTER","DATE","DATETIME2","DATETIMEOFFSET","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","NATIONAL","NCHAR","NUMERIC","NVARCHAR","PRECISION","REAL","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR"],ZQa=Xa(["SELECT [ALL | DISTINCT]"]),LQa=Xa(["WITH","INTO","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","OFFSET","FETCH {FIRST | NEXT}","FOR {BROWSE | XML | JSON}","OPTION","INSERT [INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [BY TARGET | BY SOURCE] [THEN]","UPDATE SET","CREATE [OR ALTER] {PROC | PROCEDURE}"]),Qvi=Xa(["CREATE TABLE"]),t_r=Xa(["CREATE [OR ALTER] [MATERIALIZED] VIEW","UPDATE","WHERE CURRENT OF","DELETE [FROM]","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD","DROP COLUMN [IF EXISTS]","ALTER COLUMN","TRUNCATE TABLE","ADD SENSITIVITY CLASSIFICATION","ADD SIGNATURE","AGGREGATE","ANSI_DEFAULTS","ANSI_NULLS","ANSI_NULL_DFLT_OFF","ANSI_NULL_DFLT_ON","ANSI_PADDING","ANSI_WARNINGS","APPLICATION ROLE","ARITHABORT","ARITHIGNORE","ASSEMBLY","ASYMMETRIC KEY","AUTHORIZATION","AVAILABILITY GROUP","BACKUP","BACKUP CERTIFICATE","BACKUP MASTER KEY","BACKUP SERVICE MASTER KEY","BEGIN CONVERSATION TIMER","BEGIN DIALOG CONVERSATION","BROKER PRIORITY","BULK INSERT","CERTIFICATE","CLOSE MASTER KEY","CLOSE SYMMETRIC KEY","COLLATE","COLUMN ENCRYPTION KEY","COLUMN MASTER KEY","COLUMNSTORE INDEX","CONCAT_NULL_YIELDS_NULL","CONTEXT_INFO","CONTRACT","CREDENTIAL","CRYPTOGRAPHIC PROVIDER","CURSOR_CLOSE_ON_COMMIT","DATABASE","DATABASE AUDIT SPECIFICATION","DATABASE ENCRYPTION KEY","DATABASE HADR","DATABASE SCOPED CONFIGURATION","DATABASE SCOPED CREDENTIAL","DATABASE SET","DATEFIRST","DATEFORMAT","DEADLOCK_PRIORITY","DENY","DENY XML","DISABLE TRIGGER","ENABLE TRIGGER","END CONVERSATION","ENDPOINT","EVENT NOTIFICATION","EVENT SESSION","EXECUTE AS","EXTERNAL DATA SOURCE","EXTERNAL FILE FORMAT","EXTERNAL LANGUAGE","EXTERNAL LIBRARY","EXTERNAL RESOURCE POOL","EXTERNAL TABLE","FIPS_FLAGGER","FMTONLY","FORCEPLAN","FULLTEXT CATALOG","FULLTEXT INDEX","FULLTEXT STOPLIST","FUNCTION","GET CONVERSATION GROUP","GET_TRANSMISSION_STATUS","GRANT","GRANT XML","IDENTITY_INSERT","IMPLICIT_TRANSACTIONS","INDEX","LANGUAGE","LOCK_TIMEOUT","LOGIN","MASTER KEY","MESSAGE TYPE","MOVE CONVERSATION","NOCOUNT","NOEXEC","NUMERIC_ROUNDABORT","OFFSETS","OPEN MASTER KEY","OPEN SYMMETRIC KEY","PARSEONLY","PARTITION FUNCTION","PARTITION SCHEME","PROCEDURE","QUERY_GOVERNOR_COST_LIMIT","QUEUE","QUOTED_IDENTIFIER","RECEIVE","REMOTE SERVICE BINDING","REMOTE_PROC_TRANSACTIONS","RESOURCE GOVERNOR","RESOURCE POOL","RESTORE","RESTORE FILELISTONLY","RESTORE HEADERONLY","RESTORE LABELONLY","RESTORE MASTER KEY","RESTORE REWINDONLY","RESTORE SERVICE MASTER KEY","RESTORE VERIFYONLY","REVERT","REVOKE","REVOKE XML","ROLE","ROUTE","ROWCOUNT","RULE","SCHEMA","SEARCH PROPERTY LIST","SECURITY POLICY","SELECTIVE XML INDEX","SEND","SENSITIVITY CLASSIFICATION","SEQUENCE","SERVER AUDIT","SERVER AUDIT SPECIFICATION","SERVER CONFIGURATION","SERVER ROLE","SERVICE","SERVICE MASTER KEY","SETUSER","SHOWPLAN_ALL","SHOWPLAN_TEXT","SHOWPLAN_XML","SIGNATURE","SPATIAL INDEX","STATISTICS","STATISTICS IO","STATISTICS PROFILE","STATISTICS TIME","STATISTICS XML","SYMMETRIC KEY","SYNONYM","TABLE","TABLE IDENTITY","TEXTSIZE","TRANSACTION ISOLATION LEVEL","TRIGGER","TYPE","UPDATE STATISTICS","USER","WORKLOAD GROUP","XACT_ABORT","XML INDEX","XML SCHEMA COLLECTION"]),VQa=Xa(["UNION [ALL]","EXCEPT","INTERSECT"]),WQa=Xa(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","{CROSS | OUTER} APPLY"]),PQa=Xa(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE} BETWEEN"]),OQa={name:"transactsql",tokenizerOptions:{reservedSelect:ZQa,reservedClauses:[...LQa,...Qvi,...t_r],reservedSetOperations:VQa,reservedJoins:WQa,reservedPhrases:PQa,reservedKeywords:GQa,reservedDataTypes:FQa,reservedFunctionNames:kQa,nestedBlockComments:!0,stringTypes:[{quote:"''-qq",prefixes:["N"]}],identTypes:['""-qq',"[]"],identChars:{first:"#@",rest:"#@$"},paramTypes:{named:["@"],quoted:["@"]},operators:["%","&","|","^","~","!<","!>","+=","-=","*=","/=","%=","|=","&=","^=","::",":"],propertyAccessOperators:[".."]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...Qvi,...t_r],tabularOnelineClauses:t_r}},QQa=["ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","_BINARY","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DROP","DUAL","EACH","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","EXTRA_JOIN","FALSE","FETCH","FOR","FORCE","FORCE_COMPILED_MODE","FORCE_INTERPRETER_MODE","FOREIGN","FROM","FULL","FULLTEXT","GRANT","GROUP","HAVING","HEARTBEAT_NO_LOGGING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","IN","_INTERNAL_DYNAMIC_TYPECAST","INTERSECT","INTERVAL","INTO","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LOOP","LOW_PRIORITY","MATCH","MAXVALUE","MINUS","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NO_QUERY_REWRITE","NOT","NO_WRITE_TO_BINLOG","NO_QUERY_REWRITE","NULL","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PRIMARY","PROCEDURE","PURGE","RANGE","READ","READS","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESTRICT","RETURN","REVOKE","RIGHT","RIGHT_ANTI_JOIN","RIGHT_SEMI_JOIN","RIGHT_STRAIGHT_JOIN","RLIKE","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SEMI_JOIN","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SPATIAL","SPECIFIC","SQL","SQL_BIG_RESULT","SQL_BUFFER_RESULT","SQL_CACHE","SQL_CALC_FOUND_ROWS","SQLEXCEPTION","SQL_NO_CACHE","SQL_NO_LOGGING","SQL_SMALL_RESULT","SQLSTATE","SQLWARNING","STRAIGHT_JOIN","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNBOUNDED","UNDO","UNION","UNIQUE","UNLOCK","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","_UTF8","VALUES","WHEN","WHERE","WHILE","WINDOW","WITH","WITHIN","WRITE","XOR","YEAR_MONTH","ZEROFILL"],MQa=["BIGINT","BINARY","BIT","BLOB","CHAR","CHARACTER","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONG","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","UNSIGNED","VARBINARY","VARCHAR","VARCHARACTER","YEAR"],HQa=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","APPROX_COUNT_DISTINCT","APPROX_COUNT_DISTINCT_ACCUMULATE","APPROX_COUNT_DISTINCT_COMBINE","APPROX_COUNT_DISTINCT_ESTIMATE","APPROX_GEOGRAPHY_INTERSECTS","APPROX_PERCENTILE","ASCII","ASIN","ATAN","ATAN2","AVG","BIN","BINARY","BIT_AND","BIT_COUNT","BIT_OR","BIT_XOR","CAST","CEIL","CEILING","CHAR","CHARACTER_LENGTH","CHAR_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COLLECT","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATEDIFF","DATE_FORMAT","DATE_SUB","DATE_TRUNC","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEFAULT","DEGREES","DENSE_RANK","DIV","DOT_PRODUCT","ELT","EUCLIDEAN_DISTANCE","EXP","EXTRACT","FIELD","FIRST","FIRST_VALUE","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GEOGRAPHY_AREA","GEOGRAPHY_CONTAINS","GEOGRAPHY_DISTANCE","GEOGRAPHY_INTERSECTS","GEOGRAPHY_LATITUDE","GEOGRAPHY_LENGTH","GEOGRAPHY_LONGITUDE","GEOGRAPHY_POINT","GEOGRAPHY_WITHIN_DISTANCE","GEOMETRY_AREA","GEOMETRY_CONTAINS","GEOMETRY_DISTANCE","GEOMETRY_FILTER","GEOMETRY_INTERSECTS","GEOMETRY_LENGTH","GEOMETRY_POINT","GEOMETRY_WITHIN_DISTANCE","GEOMETRY_X","GEOMETRY_Y","GREATEST","GROUPING","GROUP_CONCAT","HEX","HIGHLIGHT","HOUR","ICU_VERSION","IF","IFNULL","INET_ATON","INET_NTOA","INET6_ATON","INET6_NTOA","INITCAP","INSERT","INSTR","INTERVAL","IS","IS NULL","JSON_AGG","JSON_ARRAY_CONTAINS_DOUBLE","JSON_ARRAY_CONTAINS_JSON","JSON_ARRAY_CONTAINS_STRING","JSON_ARRAY_PUSH_DOUBLE","JSON_ARRAY_PUSH_JSON","JSON_ARRAY_PUSH_STRING","JSON_DELETE_KEY","JSON_EXTRACT_DOUBLE","JSON_EXTRACT_JSON","JSON_EXTRACT_STRING","JSON_EXTRACT_BIGINT","JSON_GET_TYPE","JSON_LENGTH","JSON_SET_DOUBLE","JSON_SET_JSON","JSON_SET_STRING","JSON_SPLICE_DOUBLE","JSON_SPLICE_JSON","JSON_SPLICE_STRING","LAG","LAST_DAY","LAST_VALUE","LCASE","LEAD","LEAST","LEFT","LENGTH","LIKE","LN","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LPAD","LTRIM","MATCH","MAX","MD5","MEDIAN","MICROSECOND","MIN","MINUTE","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","NOT","NOW","NTH_VALUE","NTILE","NULLIF","OCTET_LENGTH","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PI","PIVOT","POSITION","POW","POWER","QUARTER","QUOTE","RADIANS","RAND","RANK","REGEXP","REPEAT","REPLACE","REVERSE","RIGHT","RLIKE","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCALAR","SCHEMA","SEC_TO_TIME","SHA1","SHA2","SIGMOID","SIGN","SIN","SLEEP","SPLIT","SOUNDEX","SOUNDS LIKE","SOURCE_POS_WAIT","SPACE","SQRT","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUM","SYS_GUID","TAN","TIME","TIMEDIFF","TIME_BUCKET","TIME_FORMAT","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TIME_TO_SEC","TO_BASE64","TO_CHAR","TO_DAYS","TO_JSON","TO_NUMBER","TO_SECONDS","TO_TIMESTAMP","TRIM","TRUNC","TRUNCATE","UCASE","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","VALUES","VARIANCE","VAR_POP","VAR_SAMP","VECTOR_SUB","VERSION","WEEK","WEEKDAY","WEEKOFYEAR","YEAR"],YQa=Xa(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),XQa=Xa(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [IGNORE] [INTO]","VALUES","REPLACE [INTO]","ON DUPLICATE KEY UPDATE","SET","CREATE [OR REPLACE] [TEMPORARY] PROCEDURE [IF NOT EXISTS]","CREATE [OR REPLACE] [EXTERNAL] FUNCTION"]),Mvi=Xa(["CREATE [ROWSTORE] [REFERENCE | TEMPORARY | GLOBAL TEMPORARY] TABLE [IF NOT EXISTS]"]),r_r=Xa(["CREATE VIEW","UPDATE","DELETE [FROM]","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER [ONLINE] TABLE","ADD [COLUMN]","ADD [UNIQUE] {INDEX | KEY}","DROP [COLUMN]","MODIFY [COLUMN]","CHANGE","RENAME [TO | AS]","TRUNCATE [TABLE]","ADD AGGREGATOR","ADD LEAF","AGGREGATOR SET AS MASTER","ALTER DATABASE","ALTER PIPELINE","ALTER RESOURCE POOL","ALTER USER","ALTER VIEW","ANALYZE TABLE","ATTACH DATABASE","ATTACH LEAF","ATTACH LEAF ALL","BACKUP DATABASE","BINLOG","BOOTSTRAP AGGREGATOR","CACHE INDEX","CALL","CHANGE","CHANGE MASTER TO","CHANGE REPLICATION FILTER","CHANGE REPLICATION SOURCE TO","CHECK BLOB CHECKSUM","CHECK TABLE","CHECKSUM TABLE","CLEAR ORPHAN DATABASES","CLONE","COMMIT","CREATE DATABASE","CREATE GROUP","CREATE INDEX","CREATE LINK","CREATE MILESTONE","CREATE PIPELINE","CREATE RESOURCE POOL","CREATE ROLE","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DETACH DATABASE","DETACH PIPELINE","DROP DATABASE","DROP FUNCTION","DROP INDEX","DROP LINK","DROP PIPELINE","DROP PROCEDURE","DROP RESOURCE POOL","DROP ROLE","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","FORCE","GRANT","HANDLER","HELP","KILL CONNECTION","KILLALL QUERIES","LOAD DATA","LOAD INDEX INTO CACHE","LOAD XML","LOCK INSTANCE FOR BACKUP","LOCK TABLES","MASTER_POS_WAIT","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","REBALANCE PARTITIONS","RELEASE SAVEPOINT","REMOVE AGGREGATOR","REMOVE LEAF","REPAIR TABLE","REPLACE","REPLICATE DATABASE","RESET","RESET MASTER","RESET PERSIST","RESET REPLICA","RESET SLAVE","RESTART","RESTORE DATABASE","RESTORE REDUNDANCY","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE FUNCTION","SHOW CREATE PIPELINE","SHOW CREATE PROCEDURE","SHOW CREATE TABLE","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW RELAYLOG EVENTS","SHOW REPLICA STATUS","SHOW REPLICAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW VARIABLES","SHOW WARNINGS","SHUTDOWN","SNAPSHOT DATABASE","SOURCE_POS_WAIT","START GROUP_REPLICATION","START PIPELINE","START REPLICA","START SLAVE","START TRANSACTION","STOP GROUP_REPLICATION","STOP PIPELINE","STOP REPLICA","STOP REPLICATING","STOP SLAVE","TEST PIPELINE","UNLOCK INSTANCE","UNLOCK TABLES","USE","XA","ITERATE","LEAVE","LOOP","REPEAT","RETURN","WHILE"]),JQa=Xa(["UNION [ALL | DISTINCT]","EXCEPT","INTERSECT","MINUS"]),UQa=Xa(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),KQa=Xa(["ON DELETE","ON UPDATE","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),jQa={name:"singlestoredb",tokenizerOptions:{reservedSelect:YQa,reservedClauses:[...XQa,...Mvi,...r_r],reservedSetOperations:JQa,reservedJoins:UQa,reservedPhrases:KQa,reservedKeywords:QQa,reservedDataTypes:MQa,reservedFunctionNames:HQa,stringTypes:['""-qq-bs',"''-qq-bs",{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_$]+"},{quote:"``",prefixes:["@"],requirePrefix:!0}],lineCommentTypes:["--","#"],operators:[":=","&","|","^","~","<<",">>","<=>","&&","||","::","::$","::%",":>","!:>","*.*"],postProcess:uyt},formatOptions:{alwaysDenseOperators:["::","::$","::%"],onelineClauses:[...Mvi,...r_r],tabularOnelineClauses:r_r}},zQa=["ABS","ACOS","ACOSH","ADD_MONTHS","ALL_USER_NAMES","ANY_VALUE","APPROX_COUNT_DISTINCT","APPROX_PERCENTILE","APPROX_PERCENTILE_ACCUMULATE","APPROX_PERCENTILE_COMBINE","APPROX_PERCENTILE_ESTIMATE","APPROX_TOP_K","APPROX_TOP_K_ACCUMULATE","APPROX_TOP_K_COMBINE","APPROX_TOP_K_ESTIMATE","APPROXIMATE_JACCARD_INDEX","APPROXIMATE_SIMILARITY","ARRAY_AGG","ARRAY_APPEND","ARRAY_CAT","ARRAY_COMPACT","ARRAY_CONSTRUCT","ARRAY_CONSTRUCT_COMPACT","ARRAY_CONTAINS","ARRAY_INSERT","ARRAY_INTERSECTION","ARRAY_POSITION","ARRAY_PREPEND","ARRAY_SIZE","ARRAY_SLICE","ARRAY_TO_STRING","ARRAY_UNION_AGG","ARRAY_UNIQUE_AGG","ARRAYS_OVERLAP","AS_ARRAY","AS_BINARY","AS_BOOLEAN","AS_CHAR","AS_VARCHAR","AS_DATE","AS_DECIMAL","AS_NUMBER","AS_DOUBLE","AS_REAL","AS_INTEGER","AS_OBJECT","AS_TIME","AS_TIMESTAMP_LTZ","AS_TIMESTAMP_NTZ","AS_TIMESTAMP_TZ","ASCII","ASIN","ASINH","ATAN","ATAN2","ATANH","AUTO_REFRESH_REGISTRATION_HISTORY","AUTOMATIC_CLUSTERING_HISTORY","AVG","BASE64_DECODE_BINARY","BASE64_DECODE_STRING","BASE64_ENCODE","BIT_LENGTH","BITAND","BITAND_AGG","BITMAP_BIT_POSITION","BITMAP_BUCKET_NUMBER","BITMAP_CONSTRUCT_AGG","BITMAP_COUNT","BITMAP_OR_AGG","BITNOT","BITOR","BITOR_AGG","BITSHIFTLEFT","BITSHIFTRIGHT","BITXOR","BITXOR_AGG","BOOLAND","BOOLAND_AGG","BOOLNOT","BOOLOR","BOOLOR_AGG","BOOLXOR","BOOLXOR_AGG","BUILD_SCOPED_FILE_URL","BUILD_STAGE_FILE_URL","CASE","CAST","CBRT","CEIL","CHARINDEX","CHECK_JSON","CHECK_XML","CHR","CHAR","COALESCE","COLLATE","COLLATION","COMPLETE_TASK_GRAPHS","COMPRESS","CONCAT","CONCAT_WS","CONDITIONAL_CHANGE_EVENT","CONDITIONAL_TRUE_EVENT","CONTAINS","CONVERT_TIMEZONE","COPY_HISTORY","CORR","COS","COSH","COT","COUNT","COUNT_IF","COVAR_POP","COVAR_SAMP","CUME_DIST","CURRENT_ACCOUNT","CURRENT_AVAILABLE_ROLES","CURRENT_CLIENT","CURRENT_DATABASE","CURRENT_DATE","CURRENT_IP_ADDRESS","CURRENT_REGION","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_SECONDARY_ROLES","CURRENT_SESSION","CURRENT_STATEMENT","CURRENT_TASK_GRAPHS","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TRANSACTION","CURRENT_USER","CURRENT_VERSION","CURRENT_WAREHOUSE","DATA_TRANSFER_HISTORY","DATABASE_REFRESH_HISTORY","DATABASE_REFRESH_PROGRESS","DATABASE_REFRESH_PROGRESS_BY_JOB","DATABASE_STORAGE_USAGE_HISTORY","DATE_FROM_PARTS","DATE_PART","DATE_TRUNC","DATEADD","DATEDIFF","DAYNAME","DECODE","DECOMPRESS_BINARY","DECOMPRESS_STRING","DECRYPT","DECRYPT_RAW","DEGREES","DENSE_RANK","DIV0","EDITDISTANCE","ENCRYPT","ENCRYPT_RAW","ENDSWITH","EQUAL_NULL","EXP","EXPLAIN_JSON","EXTERNAL_FUNCTIONS_HISTORY","EXTERNAL_TABLE_FILES","EXTERNAL_TABLE_FILE_REGISTRATION_HISTORY","EXTRACT","EXTRACT_SEMANTIC_CATEGORIES","FACTORIAL","FIRST_VALUE","FLATTEN","FLOOR","GENERATE_COLUMN_DESCRIPTION","GENERATOR","GET","GET_ABSOLUTE_PATH","GET_DDL","GET_IGNORE_CASE","GET_OBJECT_REFERENCES","GET_PATH","GET_PRESIGNED_URL","GET_RELATIVE_PATH","GET_STAGE_LOCATION","GETBIT","GREATEST","GREATEST_IGNORE_NULLS","GROUPING","GROUPING_ID","HASH","HASH_AGG","HAVERSINE","HEX_DECODE_BINARY","HEX_DECODE_STRING","HEX_ENCODE","HLL","HLL_ACCUMULATE","HLL_COMBINE","HLL_ESTIMATE","HLL_EXPORT","HLL_IMPORT","HOUR","MINUTE","SECOND","IFF","IFNULL","ILIKE","ILIKE ANY","INFER_SCHEMA","INITCAP","INSERT","INVOKER_ROLE","INVOKER_SHARE","IS_ARRAY","IS_BINARY","IS_BOOLEAN","IS_CHAR","IS_VARCHAR","IS_DATE","IS_DATE_VALUE","IS_DECIMAL","IS_DOUBLE","IS_REAL","IS_GRANTED_TO_INVOKER_ROLE","IS_INTEGER","IS_NULL_VALUE","IS_OBJECT","IS_ROLE_IN_SESSION","IS_TIME","IS_TIMESTAMP_LTZ","IS_TIMESTAMP_NTZ","IS_TIMESTAMP_TZ","JAROWINKLER_SIMILARITY","JSON_EXTRACT_PATH_TEXT","KURTOSIS","LAG","LAST_DAY","LAST_QUERY_ID","LAST_TRANSACTION","LAST_VALUE","LEAD","LEAST","LEFT","LENGTH","LEN","LIKE","LIKE ALL","LIKE ANY","LISTAGG","LN","LOCALTIME","LOCALTIMESTAMP","LOG","LOGIN_HISTORY","LOGIN_HISTORY_BY_USER","LOWER","LPAD","LTRIM","MATERIALIZED_VIEW_REFRESH_HISTORY","MD5","MD5_HEX","MD5_BINARY","MD5_NUMBER \u2014 Obsoleted","MD5_NUMBER_LOWER64","MD5_NUMBER_UPPER64","MEDIAN","MIN","MAX","MINHASH","MINHASH_COMBINE","MOD","MODE","MONTHNAME","MONTHS_BETWEEN","NEXT_DAY","NORMAL","NTH_VALUE","NTILE","NULLIF","NULLIFZERO","NVL","NVL2","OBJECT_AGG","OBJECT_CONSTRUCT","OBJECT_CONSTRUCT_KEEP_NULL","OBJECT_DELETE","OBJECT_INSERT","OBJECT_KEYS","OBJECT_PICK","OCTET_LENGTH","PARSE_IP","PARSE_JSON","PARSE_URL","PARSE_XML","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PI","PIPE_USAGE_HISTORY","POLICY_CONTEXT","POLICY_REFERENCES","POSITION","POW","POWER","PREVIOUS_DAY","QUERY_ACCELERATION_HISTORY","QUERY_HISTORY","QUERY_HISTORY_BY_SESSION","QUERY_HISTORY_BY_USER","QUERY_HISTORY_BY_WAREHOUSE","RADIANS","RANDOM","RANDSTR","RANK","RATIO_TO_REPORT","REGEXP","REGEXP_COUNT","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","REGEXP_SUBSTR_ALL","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","REGR_VALX","REGR_VALY","REPEAT","REPLACE","REPLICATION_GROUP_REFRESH_HISTORY","REPLICATION_GROUP_REFRESH_PROGRESS","REPLICATION_GROUP_REFRESH_PROGRESS_BY_JOB","REPLICATION_GROUP_USAGE_HISTORY","REPLICATION_USAGE_HISTORY","REST_EVENT_HISTORY","RESULT_SCAN","REVERSE","RIGHT","RLIKE","ROUND","ROW_NUMBER","RPAD","RTRIM","RTRIMMED_LENGTH","SEARCH_OPTIMIZATION_HISTORY","SEQ1","SEQ2","SEQ4","SEQ8","SERVERLESS_TASK_HISTORY","SHA1","SHA1_HEX","SHA1_BINARY","SHA2","SHA2_HEX","SHA2_BINARY","SIGN","SIN","SINH","SKEW","SOUNDEX","SPACE","SPLIT","SPLIT_PART","SPLIT_TO_TABLE","SQRT","SQUARE","ST_AREA","ST_ASEWKB","ST_ASEWKT","ST_ASGEOJSON","ST_ASWKB","ST_ASBINARY","ST_ASWKT","ST_ASTEXT","ST_AZIMUTH","ST_CENTROID","ST_COLLECT","ST_CONTAINS","ST_COVEREDBY","ST_COVERS","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DWITHIN","ST_ENDPOINT","ST_ENVELOPE","ST_GEOGFROMGEOHASH","ST_GEOGPOINTFROMGEOHASH","ST_GEOGRAPHYFROMWKB","ST_GEOGRAPHYFROMWKT","ST_GEOHASH","ST_GEOMETRYFROMWKB","ST_GEOMETRYFROMWKT","ST_HAUSDORFFDISTANCE","ST_INTERSECTION","ST_INTERSECTS","ST_LENGTH","ST_MAKEGEOMPOINT","ST_GEOM_POINT","ST_MAKELINE","ST_MAKEPOINT","ST_POINT","ST_MAKEPOLYGON","ST_POLYGON","ST_NPOINTS","ST_NUMPOINTS","ST_PERIMETER","ST_POINTN","ST_SETSRID","ST_SIMPLIFY","ST_SRID","ST_STARTPOINT","ST_SYMDIFFERENCE","ST_UNION","ST_WITHIN","ST_X","ST_XMAX","ST_XMIN","ST_Y","ST_YMAX","ST_YMIN","STAGE_DIRECTORY_FILE_REGISTRATION_HISTORY","STAGE_STORAGE_USAGE_HISTORY","STARTSWITH","STDDEV","STDDEV_POP","STDDEV_SAMP","STRIP_NULL_VALUE","STRTOK","STRTOK_SPLIT_TO_TABLE","STRTOK_TO_ARRAY","SUBSTR","SUBSTRING","SUM","SYSDATE","SYSTEM$ABORT_SESSION","SYSTEM$ABORT_TRANSACTION","SYSTEM$AUTHORIZE_PRIVATELINK","SYSTEM$AUTHORIZE_STAGE_PRIVATELINK_ACCESS","SYSTEM$BEHAVIOR_CHANGE_BUNDLE_STATUS","SYSTEM$CANCEL_ALL_QUERIES","SYSTEM$CANCEL_QUERY","SYSTEM$CLUSTERING_DEPTH","SYSTEM$CLUSTERING_INFORMATION","SYSTEM$CLUSTERING_RATIO ","SYSTEM$CURRENT_USER_TASK_NAME","SYSTEM$DATABASE_REFRESH_HISTORY ","SYSTEM$DATABASE_REFRESH_PROGRESS","SYSTEM$DATABASE_REFRESH_PROGRESS_BY_JOB ","SYSTEM$DISABLE_BEHAVIOR_CHANGE_BUNDLE","SYSTEM$DISABLE_DATABASE_REPLICATION","SYSTEM$ENABLE_BEHAVIOR_CHANGE_BUNDLE","SYSTEM$ESTIMATE_QUERY_ACCELERATION","SYSTEM$ESTIMATE_SEARCH_OPTIMIZATION_COSTS","SYSTEM$EXPLAIN_JSON_TO_TEXT","SYSTEM$EXPLAIN_PLAN_JSON","SYSTEM$EXTERNAL_TABLE_PIPE_STATUS","SYSTEM$GENERATE_SAML_CSR","SYSTEM$GENERATE_SCIM_ACCESS_TOKEN","SYSTEM$GET_AWS_SNS_IAM_POLICY","SYSTEM$GET_PREDECESSOR_RETURN_VALUE","SYSTEM$GET_PRIVATELINK","SYSTEM$GET_PRIVATELINK_AUTHORIZED_ENDPOINTS","SYSTEM$GET_PRIVATELINK_CONFIG","SYSTEM$GET_SNOWFLAKE_PLATFORM_INFO","SYSTEM$GET_TAG","SYSTEM$GET_TAG_ALLOWED_VALUES","SYSTEM$GET_TAG_ON_CURRENT_COLUMN","SYSTEM$GET_TAG_ON_CURRENT_TABLE","SYSTEM$GLOBAL_ACCOUNT_SET_PARAMETER","SYSTEM$LAST_CHANGE_COMMIT_TIME","SYSTEM$LINK_ACCOUNT_OBJECTS_BY_NAME","SYSTEM$MIGRATE_SAML_IDP_REGISTRATION","SYSTEM$PIPE_FORCE_RESUME","SYSTEM$PIPE_STATUS","SYSTEM$REVOKE_PRIVATELINK","SYSTEM$REVOKE_STAGE_PRIVATELINK_ACCESS","SYSTEM$SET_RETURN_VALUE","SYSTEM$SHOW_OAUTH_CLIENT_SECRETS","SYSTEM$STREAM_GET_TABLE_TIMESTAMP","SYSTEM$STREAM_HAS_DATA","SYSTEM$TASK_DEPENDENTS_ENABLE","SYSTEM$TYPEOF","SYSTEM$USER_TASK_CANCEL_ONGOING_EXECUTIONS","SYSTEM$VERIFY_EXTERNAL_OAUTH_TOKEN","SYSTEM$WAIT","SYSTEM$WHITELIST","SYSTEM$WHITELIST_PRIVATELINK","TAG_REFERENCES","TAG_REFERENCES_ALL_COLUMNS","TAG_REFERENCES_WITH_LINEAGE","TAN","TANH","TASK_DEPENDENTS","TASK_HISTORY","TIME_FROM_PARTS","TIME_SLICE","TIMEADD","TIMEDIFF","TIMESTAMP_FROM_PARTS","TIMESTAMPADD","TIMESTAMPDIFF","TO_ARRAY","TO_BINARY","TO_BOOLEAN","TO_CHAR","TO_VARCHAR","TO_DATE","DATE","TO_DECIMAL","TO_NUMBER","TO_NUMERIC","TO_DOUBLE","TO_GEOGRAPHY","TO_GEOMETRY","TO_JSON","TO_OBJECT","TO_TIME","TIME","TO_TIMESTAMP","TO_TIMESTAMP_LTZ","TO_TIMESTAMP_NTZ","TO_TIMESTAMP_TZ","TO_VARIANT","TO_XML","TRANSLATE","TRIM","TRUNCATE","TRUNC","TRUNC","TRY_BASE64_DECODE_BINARY","TRY_BASE64_DECODE_STRING","TRY_CAST","TRY_HEX_DECODE_BINARY","TRY_HEX_DECODE_STRING","TRY_PARSE_JSON","TRY_TO_BINARY","TRY_TO_BOOLEAN","TRY_TO_DATE","TRY_TO_DECIMAL","TRY_TO_NUMBER","TRY_TO_NUMERIC","TRY_TO_DOUBLE","TRY_TO_GEOGRAPHY","TRY_TO_GEOMETRY","TRY_TO_TIME","TRY_TO_TIMESTAMP","TRY_TO_TIMESTAMP_LTZ","TRY_TO_TIMESTAMP_NTZ","TRY_TO_TIMESTAMP_TZ","TYPEOF","UNICODE","UNIFORM","UPPER","UUID_STRING","VALIDATE","VALIDATE_PIPE_LOAD","VAR_POP","VAR_SAMP","VARIANCE","VARIANCE_SAMP","VARIANCE_POP","WAREHOUSE_LOAD_HISTORY","WAREHOUSE_METERING_HISTORY","WIDTH_BUCKET","XMLGET","YEAR","YEAROFWEEK","YEAROFWEEKISO","DAY","DAYOFMONTH","DAYOFWEEK","DAYOFWEEKISO","DAYOFYEAR","WEEK","WEEK","WEEKOFYEAR","WEEKISO","MONTH","QUARTER","ZEROIFNULL","ZIPF"],qQa=["ACCOUNT","ALL","ALTER","AND","ANY","AS","BETWEEN","BY","CASE","CAST","CHECK","COLUMN","CONNECT","CONNECTION","CONSTRAINT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DATABASE","DELETE","DISTINCT","DROP","ELSE","EXISTS","FALSE","FOLLOWING","FOR","FROM","FULL","GRANT","GROUP","GSCLUSTER","HAVING","ILIKE","IN","INCREMENT","INNER","INSERT","INTERSECT","INTO","IS","ISSUE","JOIN","LATERAL","LEFT","LIKE","LOCALTIME","LOCALTIMESTAMP","MINUS","NATURAL","NOT","NULL","OF","ON","OR","ORDER","ORGANIZATION","QUALIFY","REGEXP","REVOKE","RIGHT","RLIKE","ROW","ROWS","SAMPLE","SCHEMA","SELECT","SET","SOME","START","TABLE","TABLESAMPLE","THEN","TO","TRIGGER","TRUE","TRY_CAST","UNION","UNIQUE","UPDATE","USING","VALUES","VIEW","WHEN","WHENEVER","WHERE","WITH","COMMENT"],$Qa=["NUMBER","DECIMAL","NUMERIC","INT","INTEGER","BIGINT","SMALLINT","TINYINT","BYTEINT","FLOAT","FLOAT4","FLOAT8","DOUBLE","DOUBLE PRECISION","REAL","VARCHAR","CHAR","CHARACTER","STRING","TEXT","BINARY","VARBINARY","BOOLEAN","DATE","DATETIME","TIME","TIMESTAMP","TIMESTAMP_LTZ","TIMESTAMP_NTZ","TIMESTAMP","TIMESTAMP_TZ","VARIANT","OBJECT","ARRAY","GEOGRAPHY","GEOMETRY"],e5a=Xa(["SELECT [ALL | DISTINCT]"]),t5a=Xa(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","QUALIFY","LIMIT","OFFSET","FETCH [FIRST | NEXT]","INSERT [OVERWRITE] [ALL INTO | INTO | ALL | FIRST]","{THEN | ELSE} INTO","VALUES","SET","CLUSTER BY","[WITH] {MASKING POLICY | TAG | ROW ACCESS POLICY}","COPY GRANTS","USING TEMPLATE","MERGE INTO","WHEN MATCHED [AND]","THEN {UPDATE SET | DELETE}","WHEN NOT MATCHED THEN INSERT"]),Hvi=Xa(["CREATE [OR REPLACE] [VOLATILE] TABLE [IF NOT EXISTS]","CREATE [OR REPLACE] [LOCAL | GLOBAL] {TEMP|TEMPORARY} TABLE [IF NOT EXISTS]"]),n_r=Xa(["CREATE [OR REPLACE] [SECURE] [RECURSIVE] VIEW [IF NOT EXISTS]","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","RENAME TO","SWAP WITH","[SUSPEND | RESUME] RECLUSTER","DROP CLUSTERING KEY","ADD [COLUMN]","RENAME COLUMN","{ALTER | MODIFY} [COLUMN]","DROP [COLUMN]","{ADD | ALTER | MODIFY | DROP} [CONSTRAINT]","RENAME CONSTRAINT","{ADD | DROP} SEARCH OPTIMIZATION","{SET | UNSET} TAG","{ADD | DROP} ROW ACCESS POLICY","DROP ALL ROW ACCESS POLICIES","{SET | DROP} DEFAULT","{SET | DROP} NOT NULL","SET DATA TYPE","UNSET COMMENT","{SET | UNSET} MASKING POLICY","TRUNCATE [TABLE] [IF EXISTS]","ALTER ACCOUNT","ALTER API INTEGRATION","ALTER CONNECTION","ALTER DATABASE","ALTER EXTERNAL TABLE","ALTER FAILOVER GROUP","ALTER FILE FORMAT","ALTER FUNCTION","ALTER INTEGRATION","ALTER MASKING POLICY","ALTER MATERIALIZED VIEW","ALTER NETWORK POLICY","ALTER NOTIFICATION INTEGRATION","ALTER PIPE","ALTER PROCEDURE","ALTER REPLICATION GROUP","ALTER RESOURCE MONITOR","ALTER ROLE","ALTER ROW ACCESS POLICY","ALTER SCHEMA","ALTER SECURITY INTEGRATION","ALTER SEQUENCE","ALTER SESSION","ALTER SESSION POLICY","ALTER SHARE","ALTER STAGE","ALTER STORAGE INTEGRATION","ALTER STREAM","ALTER TAG","ALTER TASK","ALTER USER","ALTER VIEW","ALTER WAREHOUSE","BEGIN","CALL","COMMIT","COPY INTO","CREATE ACCOUNT","CREATE API INTEGRATION","CREATE CONNECTION","CREATE DATABASE","CREATE EXTERNAL FUNCTION","CREATE EXTERNAL TABLE","CREATE FAILOVER GROUP","CREATE FILE FORMAT","CREATE FUNCTION","CREATE INTEGRATION","CREATE MANAGED ACCOUNT","CREATE MASKING POLICY","CREATE MATERIALIZED VIEW","CREATE NETWORK POLICY","CREATE NOTIFICATION INTEGRATION","CREATE PIPE","CREATE PROCEDURE","CREATE REPLICATION GROUP","CREATE RESOURCE MONITOR","CREATE ROLE","CREATE ROW ACCESS POLICY","CREATE SCHEMA","CREATE SECURITY INTEGRATION","CREATE SEQUENCE","CREATE SESSION POLICY","CREATE SHARE","CREATE STAGE","CREATE STORAGE INTEGRATION","CREATE STREAM","CREATE TAG","CREATE TASK","CREATE USER","CREATE WAREHOUSE","DELETE","DESCRIBE DATABASE","DESCRIBE EXTERNAL TABLE","DESCRIBE FILE FORMAT","DESCRIBE FUNCTION","DESCRIBE INTEGRATION","DESCRIBE MASKING POLICY","DESCRIBE MATERIALIZED VIEW","DESCRIBE NETWORK POLICY","DESCRIBE PIPE","DESCRIBE PROCEDURE","DESCRIBE RESULT","DESCRIBE ROW ACCESS POLICY","DESCRIBE SCHEMA","DESCRIBE SEQUENCE","DESCRIBE SESSION POLICY","DESCRIBE SHARE","DESCRIBE STAGE","DESCRIBE STREAM","DESCRIBE TABLE","DESCRIBE TASK","DESCRIBE TRANSACTION","DESCRIBE USER","DESCRIBE VIEW","DESCRIBE WAREHOUSE","DROP CONNECTION","DROP DATABASE","DROP EXTERNAL TABLE","DROP FAILOVER GROUP","DROP FILE FORMAT","DROP FUNCTION","DROP INTEGRATION","DROP MANAGED ACCOUNT","DROP MASKING POLICY","DROP MATERIALIZED VIEW","DROP NETWORK POLICY","DROP PIPE","DROP PROCEDURE","DROP REPLICATION GROUP","DROP RESOURCE MONITOR","DROP ROLE","DROP ROW ACCESS POLICY","DROP SCHEMA","DROP SEQUENCE","DROP SESSION POLICY","DROP SHARE","DROP STAGE","DROP STREAM","DROP TAG","DROP TASK","DROP USER","DROP VIEW","DROP WAREHOUSE","EXECUTE IMMEDIATE","EXECUTE TASK","EXPLAIN","GET","GRANT OWNERSHIP","GRANT ROLE","INSERT","LIST","MERGE","PUT","REMOVE","REVOKE ROLE","ROLLBACK","SHOW COLUMNS","SHOW CONNECTIONS","SHOW DATABASES","SHOW DATABASES IN FAILOVER GROUP","SHOW DATABASES IN REPLICATION GROUP","SHOW DELEGATED AUTHORIZATIONS","SHOW EXTERNAL FUNCTIONS","SHOW EXTERNAL TABLES","SHOW FAILOVER GROUPS","SHOW FILE FORMATS","SHOW FUNCTIONS","SHOW GLOBAL ACCOUNTS","SHOW GRANTS","SHOW INTEGRATIONS","SHOW LOCKS","SHOW MANAGED ACCOUNTS","SHOW MASKING POLICIES","SHOW MATERIALIZED VIEWS","SHOW NETWORK POLICIES","SHOW OBJECTS","SHOW ORGANIZATION ACCOUNTS","SHOW PARAMETERS","SHOW PIPES","SHOW PRIMARY KEYS","SHOW PROCEDURES","SHOW REGIONS","SHOW REPLICATION ACCOUNTS","SHOW REPLICATION DATABASES","SHOW REPLICATION GROUPS","SHOW RESOURCE MONITORS","SHOW ROLES","SHOW ROW ACCESS POLICIES","SHOW SCHEMAS","SHOW SEQUENCES","SHOW SESSION POLICIES","SHOW SHARES","SHOW SHARES IN FAILOVER GROUP","SHOW SHARES IN REPLICATION GROUP","SHOW STAGES","SHOW STREAMS","SHOW TABLES","SHOW TAGS","SHOW TASKS","SHOW TRANSACTIONS","SHOW USER FUNCTIONS","SHOW USERS","SHOW VARIABLES","SHOW VIEWS","SHOW WAREHOUSES","TRUNCATE MATERIALIZED VIEW","UNDROP DATABASE","UNDROP SCHEMA","UNDROP TABLE","UNDROP TAG","UNSET","USE DATABASE","USE ROLE","USE SCHEMA","USE SECONDARY ROLES","USE WAREHOUSE"]),r5a=Xa(["UNION [ALL]","MINUS","EXCEPT","INTERSECT"]),n5a=Xa(["[INNER] JOIN","[NATURAL] {LEFT | RIGHT | FULL} [OUTER] JOIN","{CROSS | NATURAL} JOIN"]),i5a=Xa(["{ROWS | RANGE} BETWEEN","ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]"]),s5a={name:"snowflake",tokenizerOptions:{reservedSelect:e5a,reservedClauses:[...t5a,...Hvi,...n_r],reservedSetOperations:r5a,reservedJoins:n5a,reservedPhrases:i5a,reservedKeywords:qQa,reservedDataTypes:$Qa,reservedFunctionNames:zQa,stringTypes:["$$","''-qq-bs"],identTypes:['""-qq'],variableTypes:[{regex:"[$][1-9]\\d*"},{regex:"[$][_a-zA-Z][_a-zA-Z0-9$]*"}],extraParens:["[]"],identChars:{rest:"$"},lineCommentTypes:["--","//"],operators:["%","::","||","=>",":="],propertyAccessOperators:[":"]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...Hvi,...n_r],tabularOnelineClauses:n_r}},cYe=e=>e[e.length-1],cSi=e=>e.sort((t,r)=>r.length-t.length||t.localeCompare(r)),ayt=e=>e.replace(/\s+/gu," "),i_r=e=>/\n/.test(e),TY=e=>e.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&"),Yvi=/\s+/uy,SIe=e=>new RegExp(`(?:${e})`,"uy"),o5a=e=>e.split("").map(t=>/ /gu.test(t)?"\\s+":`[${t.toUpperCase()}${t.toLowerCase()}]`).join(""),a5a=e=>e+"(?:-"+e+")*",c5a=({prefixes:e,requirePrefix:t})=>`(?:${e.map(o5a).join("|")}${t?"":"|"})`,l5a=e=>new RegExp(`(?:${e.map(TY).join("|")}).*?(?=\r |\r| -|$)`,"uy"),Vvi=(e,t=[])=>{let r=e==="open"?0:1,s=["()",...t].map(a=>a[r]);return bIe(s.map(S5).join("|"))},Wvi=e=>bIe(`${eSi(e).map(S5).join("|")}`),UMa=({rest:e,dashes:t})=>e||t?`(?![${e||""}${t?"-":""}])`:"",coe=(e,t={})=>{if(e.length===0)return/^\b$/u;let r=UMa(t),s=eSi(e).map(S5).join("|").replace(/ /gu,"\\s+");return new RegExp(`(?:${s})${r}\\b`,"iuy")},e_r=(e,t)=>{if(!e.length)return;let r=e.map(S5).join("|");return bIe(`(?:${r})(?:${t})`)},KMa=()=>{let e={"<":">","[":"]","(":")","{":"}"},t="{left}(?:(?!{right}').)*?{right}",r=Object.entries(e).map(([g,p])=>t.replace(/{left}/g,S5(g)).replace(/{right}/g,S5(p))),s=S5(Object.keys(e).join(""));return`[Qq]'(?:${String.raw`(?[^\s${s}])(?:(?!\k').)*?\k`}|${r.join("|")})'`},Pvi={"``":"(?:`[^`]*`)+","[]":String.raw`(?:\[[^\]]*\])(?:\][^\]]*\])*`,'""-qq':String.raw`(?:"[^"]*")+`,'""-bs':String.raw`(?:"[^"\\]*(?:\\.[^"\\]*)*")`,'""-qq-bs':String.raw`(?:"[^"\\]*(?:\\.[^"\\]*)*")+`,'""-raw':String.raw`(?:"[^"]*")`,"''-qq":String.raw`(?:'[^']*')+`,"''-bs":String.raw`(?:'[^'\\]*(?:\\.[^'\\]*)*')`,"''-qq-bs":String.raw`(?:'[^'\\]*(?:\\.[^'\\]*)*')+`,"''-raw":String.raw`(?:'[^']*')`,$$:String.raw`(?\$\w*\$)[\s\S]*?\k`,"'''..'''":String.raw`'''[^\\]*?(?:\\.[^\\]*?)*?'''`,'""".."""':String.raw`"""[^\\]*?(?:\\.[^\\]*?)*?"""`,"{}":String.raw`(?:\{[^\}]*\})`,"q''":KMa()},tSi=e=>typeof e=="string"?Pvi[e]:"regex"in e?e.regex:XMa(e)+Pvi[e.quote],jMa=e=>bIe(e.map(t=>"regex"in t?t.regex:tSi(t)).join("|")),rSi=e=>e.map(tSi).join("|"),Ovi=e=>bIe(rSi(e)),zMa=(e={})=>bIe(nSi(e)),nSi=({first:e,rest:t,dashes:r,allowFirstCharNumber:s}={})=>{let a="\\p{Alphabetic}\\p{Mark}_",o="\\p{Decimal_Number}",g=S5(e??""),p=S5(t??""),f=s?`[${a}${o}${g}][${a}${o}${p}]*`:`[${a}${g}][${a}${o}${p}]*`;return r?HMa(f):f};function iSi(e,t){let r=e.slice(0,t).split(/\n/);return{line:r.length,col:r[r.length-1].length+1}}var qMa=class{constructor(e,t){this.rules=e,this.dialectName=t,this.input="",this.index=0}tokenize(e){this.input=e,this.index=0;let t=[],r;for(;this.index{let r=e==="open"?0:1,s=["()",...t].map(a=>a[r]);return SIe(s.map(TY).join("|"))},Jvi=e=>SIe(`${cSi(e).map(TY).join("|")}`),u5a=({rest:e,dashes:t})=>e||t?`(?![${e||""}${t?"-":""}])`:"",Ioe=(e,t={})=>{if(e.length===0)return/^\b$/u;let r=u5a(t),s=cSi(e).map(TY).join("|").replace(/ /gu,"\\s+");return new RegExp(`(?:${s})${r}\\b`,"iuy")},s_r=(e,t)=>{if(!e.length)return;let r=e.map(TY).join("|");return SIe(`(?:${r})(?:${t})`)},g5a=()=>{let e={"<":">","[":"]","(":")","{":"}"},t="{left}(?:(?!{right}').)*?{right}",r=Object.entries(e).map(([g,p])=>t.replace(/{left}/g,TY(g)).replace(/{right}/g,TY(p))),s=TY(Object.keys(e).join(""));return`[Qq]'(?:${String.raw`(?[^\s${s}])(?:(?!\k').)*?\k`}|${r.join("|")})'`},Uvi={"``":"(?:`[^`]*`)+","[]":String.raw`(?:\[[^\]]*\])(?:\][^\]]*\])*`,'""-qq':String.raw`(?:"[^"]*")+`,'""-bs':String.raw`(?:"[^"\\]*(?:\\.[^"\\]*)*")`,'""-qq-bs':String.raw`(?:"[^"\\]*(?:\\.[^"\\]*)*")+`,'""-raw':String.raw`(?:"[^"]*")`,"''-qq":String.raw`(?:'[^']*')+`,"''-bs":String.raw`(?:'[^'\\]*(?:\\.[^'\\]*)*')`,"''-qq-bs":String.raw`(?:'[^'\\]*(?:\\.[^'\\]*)*')+`,"''-raw":String.raw`(?:'[^']*')`,$$:String.raw`(?\$\w*\$)[\s\S]*?\k`,"'''..'''":String.raw`'''[^\\]*?(?:\\.[^\\]*?)*?'''`,'""".."""':String.raw`"""[^\\]*?(?:\\.[^\\]*?)*?"""`,"{}":String.raw`(?:\{[^\}]*\})`,"q''":g5a()},lSi=e=>typeof e=="string"?Uvi[e]:"regex"in e?e.regex:c5a(e)+Uvi[e.quote],A5a=e=>SIe(e.map(t=>"regex"in t?t.regex:lSi(t)).join("|")),uSi=e=>e.map(lSi).join("|"),Kvi=e=>SIe(uSi(e)),d5a=(e={})=>SIe(gSi(e)),gSi=({first:e,rest:t,dashes:r,allowFirstCharNumber:s}={})=>{let a="\\p{Alphabetic}\\p{Mark}_",o="\\p{Decimal_Number}",g=TY(e??""),p=TY(t??""),f=s?`[${a}${o}${g}][${a}${o}${p}]*`:`[${a}${g}][${a}${o}${p}]*`;return r?a5a(f):f};function ASi(e,t){let r=e.slice(0,t).split(/\n/);return{line:r.length,col:r[r.length-1].length+1}}var p5a=class{constructor(e,t){this.rules=e,this.dialectName=t,this.input="",this.index=0}tokenize(e){this.input=e,this.index=0;let t=[],r;for(;this.index0;)if(r=this.matchSection(Mvi,e))t+=r,s++;else if(r=this.matchSection(eQa,e))t+=r,s--;else if(r=this.matchSection($Ma,e))t+=r;else return null;return[t]}matchSection(e,t){e.lastIndex=this.lastIndex;let r=e.exec(t);return r&&(this.lastIndex+=r[0].length),r?r[0]:null}},rQa=class{constructor(e,t){this.cfg=e,this.dialectName=t,this.rulesBeforeParams=this.buildRulesBeforeParams(e),this.rulesAfterParams=this.buildRulesAfterParams(e)}tokenize(e,t){let r=[...this.rulesBeforeParams,...this.buildParamRules(this.cfg,t),...this.rulesAfterParams],s=new qMa(r,this.dialectName).tokenize(e);return this.cfg.postProcess?this.cfg.postProcess(s):s}buildRulesBeforeParams(e){var t,r;return this.validRules([{type:"BLOCK_COMMENT",regex:/(\/\* *sql-formatter-disable *\*\/[\s\S]*?(?:\/\* *sql-formatter-enable *\*\/|$))/uy},{type:"BLOCK_COMMENT",regex:e.nestedBlockComments?new tQa:/(\/\*[^]*?\*\/)/uy},{type:"LINE_COMMENT",regex:JMa((t=e.lineCommentTypes)!=null?t:["--"])},{type:"QUOTED_IDENTIFIER",regex:Ovi(e.identTypes)},{type:"NUMBER",regex:/(?:0x[0-9a-fA-F]+|0b[01]+|(?:-\s*)?[0-9]+(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+(?:\.[0-9]+)?)?)(?![\w\p{Alphabetic}])/uy},{type:"RESERVED_PHRASE",regex:coe((r=e.reservedPhrases)!=null?r:[],e.identChars),text:BR},{type:"CASE",regex:/CASE\b/iuy,text:BR},{type:"END",regex:/END\b/iuy,text:BR},{type:"BETWEEN",regex:/BETWEEN\b/iuy,text:BR},{type:"LIMIT",regex:e.reservedClauses.includes("LIMIT")?/LIMIT\b/iuy:void 0,text:BR},{type:"RESERVED_CLAUSE",regex:coe(e.reservedClauses,e.identChars),text:BR},{type:"RESERVED_SELECT",regex:coe(e.reservedSelect,e.identChars),text:BR},{type:"RESERVED_SET_OPERATION",regex:coe(e.reservedSetOperations,e.identChars),text:BR},{type:"WHEN",regex:/WHEN\b/iuy,text:BR},{type:"ELSE",regex:/ELSE\b/iuy,text:BR},{type:"THEN",regex:/THEN\b/iuy,text:BR},{type:"RESERVED_JOIN",regex:coe(e.reservedJoins,e.identChars),text:BR},{type:"AND",regex:/AND\b/iuy,text:BR},{type:"OR",regex:/OR\b/iuy,text:BR},{type:"XOR",regex:e.supportsXor?/XOR\b/iuy:void 0,text:BR},{type:"RESERVED_FUNCTION_NAME",regex:coe(e.reservedFunctionNames,e.identChars),text:BR},{type:"RESERVED_DATA_TYPE",regex:coe(e.reservedDataTypes,e.identChars),text:BR},{type:"RESERVED_KEYWORD",regex:coe(e.reservedKeywords,e.identChars),text:BR}])}buildRulesAfterParams(e){var t,r;return this.validRules([{type:"VARIABLE",regex:e.variableTypes?jMa(e.variableTypes):void 0},{type:"STRING",regex:Ovi(e.stringTypes)},{type:"IDENTIFIER",regex:zMa(e.identChars)},{type:"DELIMITER",regex:/[;]/uy},{type:"COMMA",regex:/[,]/y},{type:"OPEN_PAREN",regex:Vvi("open",e.extraParens)},{type:"CLOSE_PAREN",regex:Vvi("close",e.extraParens)},{type:"OPERATOR",regex:Wvi(["+","-","/",">","<","=","<>","<=",">=","!=",...(t=e.operators)!=null?t:[]])},{type:"ASTERISK",regex:/[*]/uy},{type:"PROPERTY_ACCESS_OPERATOR",regex:Wvi([".",...(r=e.propertyAccessOperators)!=null?r:[]])}])}buildParamRules(e,t){var r,s,a,o,g;let p={named:t?.named||((r=e.paramTypes)==null?void 0:r.named)||[],quoted:t?.quoted||((s=e.paramTypes)==null?void 0:s.quoted)||[],numbered:t?.numbered||((a=e.paramTypes)==null?void 0:a.numbered)||[],positional:typeof t?.positional=="boolean"?t.positional:(o=e.paramTypes)==null?void 0:o.positional,custom:t?.custom||((g=e.paramTypes)==null?void 0:g.custom)||[]};return this.validRules([{type:"NAMED_PARAMETER",regex:e_r(p.named,nSi(e.paramChars||e.identChars)),key:f=>f.slice(1)},{type:"QUOTED_PARAMETER",regex:e_r(p.quoted,rSi(e.identTypes)),key:f=>(({tokenKey:m,quoteChar:y})=>m.replace(new RegExp(S5("\\"+y),"gu"),y))({tokenKey:f.slice(2,-1),quoteChar:f.slice(-1)})},{type:"NUMBERED_PARAMETER",regex:e_r(p.numbered,"[0-9]+"),key:f=>f.slice(1)},{type:"POSITIONAL_PARAMETER",regex:p.positional?/[?]/y:void 0},...p.custom.map(f=>{var m;return{type:"CUSTOM_PARAMETER",regex:bIe(f.regex),key:(m=f.key)!=null?m:y=>y}})])}validRules(e){return e.filter(t=>!!t.regex)}},BR=e=>iyt(e.toUpperCase()),Qvi=new Map,nQa=e=>{let t=Qvi.get(e);return t||(t=iQa(e),Qvi.set(e,t)),t},iQa=e=>({tokenizer:new rQa(e.tokenizerOptions,e.name),formatOptions:sQa(e.formatOptions)}),sQa=e=>{var t;return{alwaysDenseOperators:e.alwaysDenseOperators||[],onelineClauses:Object.fromEntries(e.onelineClauses.map(r=>[r,!0])),tabularOnelineClauses:Object.fromEntries(((t=e.tabularOnelineClauses)!=null?t:e.onelineClauses).map(r=>[r,!0]))}};function oQa(e){return e.indentStyle==="tabularLeft"||e.indentStyle==="tabularRight"?" ".repeat(10):e.useTabs?" ":" ".repeat(e.tabWidth)}function Bwe(e){return e.indentStyle==="tabularLeft"||e.indentStyle==="tabularRight"}var aQa=class{constructor(e){this.params=e,this.index=0}get({key:e,text:t}){return this.params?e?this.params[e]:this.params[this.index++]:t}getPositionalParameterIndex(){return this.index}setPositionalParameterIndex(e){this.index=e}};function cQa(e){return e.map(lQa).map(uQa).map(gQa).map(AQa).map(dQa)}var lQa=(e,t,r)=>{if($vi(e.type)){let s=pQa(r,t);if(s&&s.type==="PROPERTY_ACCESS_OPERATOR")return jF(qD({},e),{type:"IDENTIFIER",text:e.raw})}return e},uQa=(e,t,r)=>{if(e.type==="RESERVED_FUNCTION_NAME"){let s=a5e(r,t);if(!s||!oSi(s))return jF(qD({},e),{type:"RESERVED_KEYWORD"})}return e},gQa=(e,t,r)=>{if(e.type==="RESERVED_DATA_TYPE"){let s=a5e(r,t);if(s&&oSi(s))return jF(qD({},e),{type:"RESERVED_PARAMETERIZED_DATA_TYPE"})}return e},AQa=(e,t,r)=>{if(e.type==="IDENTIFIER"){let s=a5e(r,t);if(s&&aSi(s))return jF(qD({},e),{type:"ARRAY_IDENTIFIER"})}return e},dQa=(e,t,r)=>{if(e.type==="RESERVED_DATA_TYPE"){let s=a5e(r,t);if(s&&aSi(s))return jF(qD({},e),{type:"ARRAY_KEYWORD"})}return e},pQa=(e,t)=>a5e(e,t,-1),a5e=(e,t,r=1)=>{let s=1;for(;e[t+s*r]&&fQa(e[t+s*r]);)s++;return e[t+s*r]},oSi=e=>e.type==="OPEN_PAREN"&&e.text==="(",aSi=e=>e.type==="OPEN_PAREN"&&e.text==="[",fQa=e=>e.type==="BLOCK_COMMENT"||e.type==="LINE_COMMENT",cSi=class{constructor(e){this.tokenize=e,this.index=0,this.tokens=[],this.input=""}reset(e,t){this.input=e,this.index=0,this.tokens=this.tokenize(e)}next(){return this.tokens[this.index++]}save(){}formatError(e){let{line:t,col:r}=iSi(this.input,e.start);return`Parse error at token: ${e.text} at line ${t} column ${r}`}has(e){return e in zvi}};function t_r(e){return e[0]}var bf=new cSi(e=>[]),_Ie=([[e]])=>e,vR=e=>({type:"keyword",tokenType:e.type,text:e.text,raw:e.raw}),Yvi=e=>({type:"data_type",text:e.text,raw:e.raw}),SR=(e,{leading:t,trailing:r})=>(t?.length&&(e=jF(qD({},e),{leadingComments:t})),r?.length&&(e=jF(qD({},e),{trailingComments:r})),e),IQa=(e,{leading:t,trailing:r})=>{if(t?.length){let[s,...a]=e;e=[SR(s,{leading:t}),...a]}if(r?.length){let s=e.slice(0,-1),a=e[e.length-1];e=[...s,SR(a,{trailing:r})]}return e},CQa={Lexer:bf,ParserRules:[{name:"main$ebnf$1",symbols:[]},{name:"main$ebnf$1",symbols:["main$ebnf$1","statement"],postprocess:e=>e[0].concat([e[1]])},{name:"main",symbols:["main$ebnf$1"],postprocess:([e])=>{let t=e[e.length-1];return t&&!t.hasSemicolon?t.children.length>0?e:e.slice(0,-1):e}},{name:"statement$subexpression$1",symbols:[bf.has("DELIMITER")?{type:"DELIMITER"}:DELIMITER]},{name:"statement$subexpression$1",symbols:[bf.has("EOF")?{type:"EOF"}:EOF]},{name:"statement",symbols:["expressions_or_clauses","statement$subexpression$1"],postprocess:([e,[t]])=>({type:"statement",children:e,hasSemicolon:t.type==="DELIMITER"})},{name:"expressions_or_clauses$ebnf$1",symbols:[]},{name:"expressions_or_clauses$ebnf$1",symbols:["expressions_or_clauses$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"expressions_or_clauses$ebnf$2",symbols:[]},{name:"expressions_or_clauses$ebnf$2",symbols:["expressions_or_clauses$ebnf$2","clause"],postprocess:e=>e[0].concat([e[1]])},{name:"expressions_or_clauses",symbols:["expressions_or_clauses$ebnf$1","expressions_or_clauses$ebnf$2"],postprocess:([e,t])=>[...e,...t]},{name:"clause$subexpression$1",symbols:["limit_clause"]},{name:"clause$subexpression$1",symbols:["select_clause"]},{name:"clause$subexpression$1",symbols:["other_clause"]},{name:"clause$subexpression$1",symbols:["set_operation"]},{name:"clause",symbols:["clause$subexpression$1"],postprocess:_Ie},{name:"limit_clause$ebnf$1$subexpression$1$ebnf$1",symbols:["free_form_sql"]},{name:"limit_clause$ebnf$1$subexpression$1$ebnf$1",symbols:["limit_clause$ebnf$1$subexpression$1$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"limit_clause$ebnf$1$subexpression$1",symbols:[bf.has("COMMA")?{type:"COMMA"}:COMMA,"limit_clause$ebnf$1$subexpression$1$ebnf$1"]},{name:"limit_clause$ebnf$1",symbols:["limit_clause$ebnf$1$subexpression$1"],postprocess:t_r},{name:"limit_clause$ebnf$1",symbols:[],postprocess:()=>null},{name:"limit_clause",symbols:[bf.has("LIMIT")?{type:"LIMIT"}:LIMIT,"_","expression_chain_","limit_clause$ebnf$1"],postprocess:([e,t,r,s])=>{if(s){let[a,o]=s;return{type:"limit_clause",limitKw:SR(vR(e),{trailing:t}),offset:r,count:o}}else return{type:"limit_clause",limitKw:SR(vR(e),{trailing:t}),count:r}}},{name:"select_clause$subexpression$1$ebnf$1",symbols:[]},{name:"select_clause$subexpression$1$ebnf$1",symbols:["select_clause$subexpression$1$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"select_clause$subexpression$1",symbols:["all_columns_asterisk","select_clause$subexpression$1$ebnf$1"]},{name:"select_clause$subexpression$1$ebnf$2",symbols:[]},{name:"select_clause$subexpression$1$ebnf$2",symbols:["select_clause$subexpression$1$ebnf$2","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"select_clause$subexpression$1",symbols:["asteriskless_free_form_sql","select_clause$subexpression$1$ebnf$2"]},{name:"select_clause",symbols:[bf.has("RESERVED_SELECT")?{type:"RESERVED_SELECT"}:RESERVED_SELECT,"select_clause$subexpression$1"],postprocess:([e,[t,r]])=>({type:"clause",nameKw:vR(e),children:[t,...r]})},{name:"select_clause",symbols:[bf.has("RESERVED_SELECT")?{type:"RESERVED_SELECT"}:RESERVED_SELECT],postprocess:([e])=>({type:"clause",nameKw:vR(e),children:[]})},{name:"all_columns_asterisk",symbols:[bf.has("ASTERISK")?{type:"ASTERISK"}:ASTERISK],postprocess:()=>({type:"all_columns_asterisk"})},{name:"other_clause$ebnf$1",symbols:[]},{name:"other_clause$ebnf$1",symbols:["other_clause$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"other_clause",symbols:[bf.has("RESERVED_CLAUSE")?{type:"RESERVED_CLAUSE"}:RESERVED_CLAUSE,"other_clause$ebnf$1"],postprocess:([e,t])=>({type:"clause",nameKw:vR(e),children:t})},{name:"set_operation$ebnf$1",symbols:[]},{name:"set_operation$ebnf$1",symbols:["set_operation$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"set_operation",symbols:[bf.has("RESERVED_SET_OPERATION")?{type:"RESERVED_SET_OPERATION"}:RESERVED_SET_OPERATION,"set_operation$ebnf$1"],postprocess:([e,t])=>({type:"set_operation",nameKw:vR(e),children:t})},{name:"expression_chain_$ebnf$1",symbols:["expression_with_comments_"]},{name:"expression_chain_$ebnf$1",symbols:["expression_chain_$ebnf$1","expression_with_comments_"],postprocess:e=>e[0].concat([e[1]])},{name:"expression_chain_",symbols:["expression_chain_$ebnf$1"],postprocess:t_r},{name:"expression_chain$ebnf$1",symbols:[]},{name:"expression_chain$ebnf$1",symbols:["expression_chain$ebnf$1","_expression_with_comments"],postprocess:e=>e[0].concat([e[1]])},{name:"expression_chain",symbols:["expression","expression_chain$ebnf$1"],postprocess:([e,t])=>[e,...t]},{name:"andless_expression_chain$ebnf$1",symbols:[]},{name:"andless_expression_chain$ebnf$1",symbols:["andless_expression_chain$ebnf$1","_andless_expression_with_comments"],postprocess:e=>e[0].concat([e[1]])},{name:"andless_expression_chain",symbols:["andless_expression","andless_expression_chain$ebnf$1"],postprocess:([e,t])=>[e,...t]},{name:"expression_with_comments_",symbols:["expression","_"],postprocess:([e,t])=>SR(e,{trailing:t})},{name:"_expression_with_comments",symbols:["_","expression"],postprocess:([e,t])=>SR(t,{leading:e})},{name:"_andless_expression_with_comments",symbols:["_","andless_expression"],postprocess:([e,t])=>SR(t,{leading:e})},{name:"free_form_sql$subexpression$1",symbols:["asteriskless_free_form_sql"]},{name:"free_form_sql$subexpression$1",symbols:["asterisk"]},{name:"free_form_sql",symbols:["free_form_sql$subexpression$1"],postprocess:_Ie},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["asteriskless_andless_expression"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["logic_operator"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["comma"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["comment"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["other_keyword"]},{name:"asteriskless_free_form_sql",symbols:["asteriskless_free_form_sql$subexpression$1"],postprocess:_Ie},{name:"expression$subexpression$1",symbols:["andless_expression"]},{name:"expression$subexpression$1",symbols:["logic_operator"]},{name:"expression",symbols:["expression$subexpression$1"],postprocess:_Ie},{name:"andless_expression$subexpression$1",symbols:["asteriskless_andless_expression"]},{name:"andless_expression$subexpression$1",symbols:["asterisk"]},{name:"andless_expression",symbols:["andless_expression$subexpression$1"],postprocess:_Ie},{name:"asteriskless_andless_expression$subexpression$1",symbols:["atomic_expression"]},{name:"asteriskless_andless_expression$subexpression$1",symbols:["between_predicate"]},{name:"asteriskless_andless_expression$subexpression$1",symbols:["case_expression"]},{name:"asteriskless_andless_expression",symbols:["asteriskless_andless_expression$subexpression$1"],postprocess:_Ie},{name:"atomic_expression$subexpression$1",symbols:["array_subscript"]},{name:"atomic_expression$subexpression$1",symbols:["function_call"]},{name:"atomic_expression$subexpression$1",symbols:["property_access"]},{name:"atomic_expression$subexpression$1",symbols:["parenthesis"]},{name:"atomic_expression$subexpression$1",symbols:["curly_braces"]},{name:"atomic_expression$subexpression$1",symbols:["square_brackets"]},{name:"atomic_expression$subexpression$1",symbols:["operator"]},{name:"atomic_expression$subexpression$1",symbols:["identifier"]},{name:"atomic_expression$subexpression$1",symbols:["parameter"]},{name:"atomic_expression$subexpression$1",symbols:["literal"]},{name:"atomic_expression$subexpression$1",symbols:["data_type"]},{name:"atomic_expression$subexpression$1",symbols:["keyword"]},{name:"atomic_expression",symbols:["atomic_expression$subexpression$1"],postprocess:_Ie},{name:"array_subscript",symbols:[bf.has("ARRAY_IDENTIFIER")?{type:"ARRAY_IDENTIFIER"}:ARRAY_IDENTIFIER,"_","square_brackets"],postprocess:([e,t,r])=>({type:"array_subscript",array:SR({type:"identifier",quoted:!1,text:e.text},{trailing:t}),parenthesis:r})},{name:"array_subscript",symbols:[bf.has("ARRAY_KEYWORD")?{type:"ARRAY_KEYWORD"}:ARRAY_KEYWORD,"_","square_brackets"],postprocess:([e,t,r])=>({type:"array_subscript",array:SR(vR(e),{trailing:t}),parenthesis:r})},{name:"function_call",symbols:[bf.has("RESERVED_FUNCTION_NAME")?{type:"RESERVED_FUNCTION_NAME"}:RESERVED_FUNCTION_NAME,"_","parenthesis"],postprocess:([e,t,r])=>({type:"function_call",nameKw:SR(vR(e),{trailing:t}),parenthesis:r})},{name:"parenthesis",symbols:[{literal:"("},"expressions_or_clauses",{literal:")"}],postprocess:([e,t,r])=>({type:"parenthesis",children:t,openParen:"(",closeParen:")"})},{name:"curly_braces$ebnf$1",symbols:[]},{name:"curly_braces$ebnf$1",symbols:["curly_braces$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"curly_braces",symbols:[{literal:"{"},"curly_braces$ebnf$1",{literal:"}"}],postprocess:([e,t,r])=>({type:"parenthesis",children:t,openParen:"{",closeParen:"}"})},{name:"square_brackets$ebnf$1",symbols:[]},{name:"square_brackets$ebnf$1",symbols:["square_brackets$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"square_brackets",symbols:[{literal:"["},"square_brackets$ebnf$1",{literal:"]"}],postprocess:([e,t,r])=>({type:"parenthesis",children:t,openParen:"[",closeParen:"]"})},{name:"property_access$subexpression$1",symbols:["identifier"]},{name:"property_access$subexpression$1",symbols:["array_subscript"]},{name:"property_access$subexpression$1",symbols:["all_columns_asterisk"]},{name:"property_access$subexpression$1",symbols:["parameter"]},{name:"property_access",symbols:["atomic_expression","_",bf.has("PROPERTY_ACCESS_OPERATOR")?{type:"PROPERTY_ACCESS_OPERATOR"}:PROPERTY_ACCESS_OPERATOR,"_","property_access$subexpression$1"],postprocess:([e,t,r,s,[a]])=>({type:"property_access",object:SR(e,{trailing:t}),operator:r.text,property:SR(a,{leading:s})})},{name:"between_predicate",symbols:[bf.has("BETWEEN")?{type:"BETWEEN"}:BETWEEN,"_","andless_expression_chain","_",bf.has("AND")?{type:"AND"}:AND,"_","andless_expression"],postprocess:([e,t,r,s,a,o,g])=>({type:"between_predicate",betweenKw:vR(e),expr1:IQa(r,{leading:t,trailing:s}),andKw:vR(a),expr2:[SR(g,{leading:o})]})},{name:"case_expression$ebnf$1",symbols:["expression_chain_"],postprocess:t_r},{name:"case_expression$ebnf$1",symbols:[],postprocess:()=>null},{name:"case_expression$ebnf$2",symbols:[]},{name:"case_expression$ebnf$2",symbols:["case_expression$ebnf$2","case_clause"],postprocess:e=>e[0].concat([e[1]])},{name:"case_expression",symbols:[bf.has("CASE")?{type:"CASE"}:CASE,"_","case_expression$ebnf$1","case_expression$ebnf$2",bf.has("END")?{type:"END"}:END],postprocess:([e,t,r,s,a])=>({type:"case_expression",caseKw:SR(vR(e),{trailing:t}),endKw:vR(a),expr:r||[],clauses:s})},{name:"case_clause",symbols:[bf.has("WHEN")?{type:"WHEN"}:WHEN,"_","expression_chain_",bf.has("THEN")?{type:"THEN"}:THEN,"_","expression_chain_"],postprocess:([e,t,r,s,a,o])=>({type:"case_when",whenKw:SR(vR(e),{trailing:t}),thenKw:SR(vR(s),{trailing:a}),condition:r,result:o})},{name:"case_clause",symbols:[bf.has("ELSE")?{type:"ELSE"}:ELSE,"_","expression_chain_"],postprocess:([e,t,r])=>({type:"case_else",elseKw:SR(vR(e),{trailing:t}),result:r})},{name:"comma$subexpression$1",symbols:[bf.has("COMMA")?{type:"COMMA"}:COMMA]},{name:"comma",symbols:["comma$subexpression$1"],postprocess:([[e]])=>({type:"comma"})},{name:"asterisk$subexpression$1",symbols:[bf.has("ASTERISK")?{type:"ASTERISK"}:ASTERISK]},{name:"asterisk",symbols:["asterisk$subexpression$1"],postprocess:([[e]])=>({type:"operator",text:e.text})},{name:"operator$subexpression$1",symbols:[bf.has("OPERATOR")?{type:"OPERATOR"}:OPERATOR]},{name:"operator",symbols:["operator$subexpression$1"],postprocess:([[e]])=>({type:"operator",text:e.text})},{name:"identifier$subexpression$1",symbols:[bf.has("IDENTIFIER")?{type:"IDENTIFIER"}:IDENTIFIER]},{name:"identifier$subexpression$1",symbols:[bf.has("QUOTED_IDENTIFIER")?{type:"QUOTED_IDENTIFIER"}:QUOTED_IDENTIFIER]},{name:"identifier$subexpression$1",symbols:[bf.has("VARIABLE")?{type:"VARIABLE"}:VARIABLE]},{name:"identifier",symbols:["identifier$subexpression$1"],postprocess:([[e]])=>({type:"identifier",quoted:e.type!=="IDENTIFIER",text:e.text})},{name:"parameter$subexpression$1",symbols:[bf.has("NAMED_PARAMETER")?{type:"NAMED_PARAMETER"}:NAMED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[bf.has("QUOTED_PARAMETER")?{type:"QUOTED_PARAMETER"}:QUOTED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[bf.has("NUMBERED_PARAMETER")?{type:"NUMBERED_PARAMETER"}:NUMBERED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[bf.has("POSITIONAL_PARAMETER")?{type:"POSITIONAL_PARAMETER"}:POSITIONAL_PARAMETER]},{name:"parameter$subexpression$1",symbols:[bf.has("CUSTOM_PARAMETER")?{type:"CUSTOM_PARAMETER"}:CUSTOM_PARAMETER]},{name:"parameter",symbols:["parameter$subexpression$1"],postprocess:([[e]])=>({type:"parameter",key:e.key,text:e.text})},{name:"literal$subexpression$1",symbols:[bf.has("NUMBER")?{type:"NUMBER"}:NUMBER]},{name:"literal$subexpression$1",symbols:[bf.has("STRING")?{type:"STRING"}:STRING]},{name:"literal",symbols:["literal$subexpression$1"],postprocess:([[e]])=>({type:"literal",text:e.text})},{name:"keyword$subexpression$1",symbols:[bf.has("RESERVED_KEYWORD")?{type:"RESERVED_KEYWORD"}:RESERVED_KEYWORD]},{name:"keyword$subexpression$1",symbols:[bf.has("RESERVED_PHRASE")?{type:"RESERVED_PHRASE"}:RESERVED_PHRASE]},{name:"keyword$subexpression$1",symbols:[bf.has("RESERVED_JOIN")?{type:"RESERVED_JOIN"}:RESERVED_JOIN]},{name:"keyword",symbols:["keyword$subexpression$1"],postprocess:([[e]])=>vR(e)},{name:"data_type$subexpression$1",symbols:[bf.has("RESERVED_DATA_TYPE")?{type:"RESERVED_DATA_TYPE"}:RESERVED_DATA_TYPE]},{name:"data_type",symbols:["data_type$subexpression$1"],postprocess:([[e]])=>Yvi(e)},{name:"data_type",symbols:[bf.has("RESERVED_PARAMETERIZED_DATA_TYPE")?{type:"RESERVED_PARAMETERIZED_DATA_TYPE"}:RESERVED_PARAMETERIZED_DATA_TYPE,"_","parenthesis"],postprocess:([e,t,r])=>({type:"parameterized_data_type",dataType:SR(Yvi(e),{trailing:t}),parenthesis:r})},{name:"logic_operator$subexpression$1",symbols:[bf.has("AND")?{type:"AND"}:AND]},{name:"logic_operator$subexpression$1",symbols:[bf.has("OR")?{type:"OR"}:OR]},{name:"logic_operator$subexpression$1",symbols:[bf.has("XOR")?{type:"XOR"}:XOR]},{name:"logic_operator",symbols:["logic_operator$subexpression$1"],postprocess:([[e]])=>vR(e)},{name:"other_keyword$subexpression$1",symbols:[bf.has("WHEN")?{type:"WHEN"}:WHEN]},{name:"other_keyword$subexpression$1",symbols:[bf.has("THEN")?{type:"THEN"}:THEN]},{name:"other_keyword$subexpression$1",symbols:[bf.has("ELSE")?{type:"ELSE"}:ELSE]},{name:"other_keyword$subexpression$1",symbols:[bf.has("END")?{type:"END"}:END]},{name:"other_keyword",symbols:["other_keyword$subexpression$1"],postprocess:([[e]])=>vR(e)},{name:"_$ebnf$1",symbols:[]},{name:"_$ebnf$1",symbols:["_$ebnf$1","comment"],postprocess:e=>e[0].concat([e[1]])},{name:"_",symbols:["_$ebnf$1"],postprocess:([e])=>e},{name:"comment",symbols:[bf.has("LINE_COMMENT")?{type:"LINE_COMMENT"}:LINE_COMMENT],postprocess:([e])=>({type:"line_comment",text:e.text,precedingWhitespace:e.precedingWhitespace})},{name:"comment",symbols:[bf.has("BLOCK_COMMENT")?{type:"BLOCK_COMMENT"}:BLOCK_COMMENT],postprocess:([e])=>({type:"block_comment",text:e.text,precedingWhitespace:e.precedingWhitespace})},{name:"comment",symbols:[bf.has("DISABLE_COMMENT")?{type:"DISABLE_COMMENT"}:DISABLE_COMMENT],postprocess:([e])=>({type:"disable_comment",text:e.text,precedingWhitespace:e.precedingWhitespace})}],ParserStart:"main"},mQa=CQa,{Parser:hQa,Grammar:_Qa}=sSi.default;function yQa(e){let t={},r=new cSi(a=>[...cQa(e.tokenize(a,t)),qvi(a.length)]),s=new hQa(_Qa.fromCompiled(mQa),{lexer:r});return{parse:(a,o)=>{t=o;let{results:g}=s.feed(a);if(g.length===1)return g[0];throw g.length===0?new Error("Parse error: Invalid SQL"):new Error(`Parse error: Ambiguous grammar -${JSON.stringify(g,void 0,2)}`)}}}var lSi=class{constructor(e){this.indentation=e,this.items=[]}add(...e){for(let t of e)switch(t){case 0:this.items.push(0);break;case 1:this.trimHorizontalWhitespace();break;case 2:this.trimWhitespace();break;case 3:this.trimHorizontalWhitespace(),this.addNewline(3);break;case 4:this.trimHorizontalWhitespace(),this.addNewline(4);break;case 5:this.addIndentation();break;case 6:this.items.push(6);break;default:this.items.push(t)}}trimHorizontalWhitespace(){for(;bQa(o5e(this.items));)this.items.pop()}trimWhitespace(){for(;EQa(o5e(this.items));)this.items.pop()}addNewline(e){if(this.items.length>0)switch(o5e(this.items)){case 3:this.items.pop(),this.items.push(e);break;case 4:break;default:this.items.push(e);break}}addIndentation(){for(let e=0;ethis.itemToString(e)).join("")}getLayoutItems(){return this.items}itemToString(e){switch(e){case 0:return" ";case 3:case 4:return` -`;case 6:return this.indentation.getSingleIndent();default:return e}}},bQa=e=>e===0||e===6,EQa=e=>e===0||e===6||e===3;function Hvi(e,t){if(t==="standard")return e;let r=[];return e.length>=10&&e.includes(" ")&&([e,...r]=e.split(" ")),t==="tabularLeft"?e=e.padEnd(9," "):e=e.padStart(9," "),e+["",...r].join(" ")}function Xvi(e){return L3a(e)||e==="RESERVED_CLAUSE"||e==="RESERVED_SELECT"||e==="RESERVED_SET_OPERATION"||e==="RESERVED_JOIN"||e==="LIMIT"}var r_r="top-level",BQa="block-level",uSi=class{constructor(e){this.indent=e,this.indentTypes=[]}getSingleIndent(){return this.indent}getLevel(){return this.indentTypes.length}increaseTopLevel(){this.indentTypes.push(r_r)}increaseBlockLevel(){this.indentTypes.push(BQa)}decreaseTopLevel(){this.indentTypes.length>0&&o5e(this.indentTypes)===r_r&&this.indentTypes.pop()}decreaseBlockLevel(){for(;this.indentTypes.length>0&&this.indentTypes.pop()===r_r;);}},vQa=class extends lSi{constructor(e){super(new uSi("")),this.expressionWidth=e,this.length=0,this.trailingSpace=!1}add(...e){if(e.forEach(t=>this.addToLength(t)),this.length>this.expressionWidth)throw new n_r;super.add(...e)}addToLength(e){if(typeof e=="string")this.length+=e.length,this.trailingSpace=!1;else{if(e===4||e===3)throw new n_r;e===5||e===6||e===0?this.trailingSpace||(this.length++,this.trailingSpace=!0):(e===2||e===1)&&this.trailingSpace&&(this.trailingSpace=!1,this.length--)}}},n_r=class extends Error{},SQa=class i_r{constructor({cfg:t,dialectCfg:r,params:s,layout:a,inline:o=!1}){this.inline=!1,this.nodes=[],this.index=-1,this.cfg=t,this.dialectCfg=r,this.inline=o,this.params=s,this.layout=a}format(t){for(this.nodes=t,this.index=0;this.index{this.layout.add(this.showFunctionKw(t.nameKw))}),this.formatNode(t.parenthesis)}formatParameterizedDataType(t){this.withComments(t.dataType,()=>{this.layout.add(this.showDataType(t.dataType))}),this.formatNode(t.parenthesis)}formatArraySubscript(t){let r;switch(t.array.type){case"data_type":r=this.showDataType(t.array);break;case"keyword":r=this.showKw(t.array);break;default:r=this.showIdentifier(t.array);break}this.withComments(t.array,()=>{this.layout.add(r)}),this.formatNode(t.parenthesis)}formatPropertyAccess(t){this.formatNode(t.object),this.layout.add(1,t.operator),this.formatNode(t.property)}formatParenthesis(t){let r=this.formatInlineExpression(t.children);r?(this.layout.add(t.openParen),this.layout.add(...r.getLayoutItems()),this.layout.add(1,t.closeParen,0)):(this.layout.add(t.openParen,3),Bwe(this.cfg)?(this.layout.add(5),this.layout=this.formatSubExpression(t.children)):(this.layout.indentation.increaseBlockLevel(),this.layout.add(5),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseBlockLevel()),this.layout.add(3,5,t.closeParen,0))}formatBetweenPredicate(t){this.layout.add(this.showKw(t.betweenKw),0),this.layout=this.formatSubExpression(t.expr1),this.layout.add(1,0,this.showNonTabularKw(t.andKw),0),this.layout=this.formatSubExpression(t.expr2),this.layout.add(0)}formatCaseExpression(t){this.formatNode(t.caseKw),this.layout.indentation.increaseBlockLevel(),this.layout=this.formatSubExpression(t.expr),this.layout=this.formatSubExpression(t.clauses),this.layout.indentation.decreaseBlockLevel(),this.layout.add(3,5),this.formatNode(t.endKw)}formatCaseWhen(t){this.layout.add(3,5),this.formatNode(t.whenKw),this.layout=this.formatSubExpression(t.condition),this.formatNode(t.thenKw),this.layout=this.formatSubExpression(t.result)}formatCaseElse(t){this.layout.add(3,5),this.formatNode(t.elseKw),this.layout=this.formatSubExpression(t.result)}formatClause(t){this.isOnelineClause(t)?this.formatClauseInOnelineStyle(t):Bwe(this.cfg)?this.formatClauseInTabularStyle(t):this.formatClauseInIndentedStyle(t)}isOnelineClause(t){return Bwe(this.cfg)?this.dialectCfg.tabularOnelineClauses[t.nameKw.text]:this.dialectCfg.onelineClauses[t.nameKw.text]}formatClauseInIndentedStyle(t){this.layout.add(3,5,this.showKw(t.nameKw),3),this.layout.indentation.increaseTopLevel(),this.layout.add(5),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseTopLevel()}formatClauseInOnelineStyle(t){this.layout.add(3,5,this.showKw(t.nameKw),0),this.layout=this.formatSubExpression(t.children)}formatClauseInTabularStyle(t){this.layout.add(3,5,this.showKw(t.nameKw),0),this.layout.indentation.increaseTopLevel(),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseTopLevel()}formatSetOperation(t){this.layout.add(3,5,this.showKw(t.nameKw),3),this.layout.add(5),this.layout=this.formatSubExpression(t.children)}formatLimitClause(t){this.withComments(t.limitKw,()=>{this.layout.add(3,5,this.showKw(t.limitKw))}),this.layout.indentation.increaseTopLevel(),Bwe(this.cfg)?this.layout.add(0):this.layout.add(3,5),t.offset?(this.layout=this.formatSubExpression(t.offset),this.layout.add(1,",",0),this.layout=this.formatSubExpression(t.count)):this.layout=this.formatSubExpression(t.count),this.layout.indentation.decreaseTopLevel()}formatAllColumnsAsterisk(t){this.layout.add("*",0)}formatLiteral(t){this.layout.add(t.text,0)}formatIdentifier(t){this.layout.add(this.showIdentifier(t),0)}formatParameter(t){this.layout.add(this.params.get(t),0)}formatOperator({text:t}){this.cfg.denseOperators||this.dialectCfg.alwaysDenseOperators.includes(t)?this.layout.add(1,t):t===":"?this.layout.add(1,t,0):this.layout.add(t,0)}formatComma(t){this.inline?this.layout.add(1,",",0):this.layout.add(1,",",3,5)}withComments(t,r){this.formatComments(t.leadingComments),r(),this.formatComments(t.trailingComments)}formatComments(t){t&&t.forEach(r=>{r.type==="line_comment"?this.formatLineComment(r):this.formatBlockComment(r)})}formatLineComment(t){$hr(t.precedingWhitespace||"")?this.layout.add(3,5,t.text,4,5):this.layout.getLayoutItems().length>0?this.layout.add(2,0,t.text,4,5):this.layout.add(t.text,4,5)}formatBlockComment(t){t.type==="block_comment"&&this.isMultilineBlockComment(t)?(this.splitBlockComment(t.text).forEach(r=>{this.layout.add(3,5,r)}),this.layout.add(3,5)):this.layout.add(t.text,0)}isMultilineBlockComment(t){return $hr(t.text)||$hr(t.precedingWhitespace||"")}isDocComment(t){let r=t.split(/\n/);return/^\/\*\*?$/.test(r[0])&&r.slice(1,r.length-1).every(s=>/^\s*\*/.test(s))&&/^\s*\*\/$/.test(o5e(r))}splitBlockComment(t){return this.isDocComment(t)?t.split(/\n/).map(r=>/^\s*\*/.test(r)?" "+r.replace(/^\s*/,""):r):t.split(/\n/).map(r=>r.replace(/^\s*/,""))}formatSubExpression(t){return new i_r({cfg:this.cfg,dialectCfg:this.dialectCfg,params:this.params,layout:this.layout,inline:this.inline}).format(t)}formatInlineExpression(t){let r=this.params.getPositionalParameterIndex();try{return new i_r({cfg:this.cfg,dialectCfg:this.dialectCfg,params:this.params,layout:new vQa(this.cfg.expressionWidth),inline:!0}).format(t)}catch(s){if(s instanceof n_r){this.params.setPositionalParameterIndex(r);return}else throw s}}formatKeywordNode(t){switch(t.tokenType){case"RESERVED_JOIN":return this.formatJoin(t);case"AND":case"OR":case"XOR":return this.formatLogicalOperator(t);default:return this.formatKeyword(t)}}formatJoin(t){Bwe(this.cfg)?(this.layout.indentation.decreaseTopLevel(),this.layout.add(3,5,this.showKw(t),0),this.layout.indentation.increaseTopLevel()):this.layout.add(3,5,this.showKw(t),0)}formatKeyword(t){this.layout.add(this.showKw(t),0)}formatLogicalOperator(t){this.cfg.logicalOperatorNewline==="before"?Bwe(this.cfg)?(this.layout.indentation.decreaseTopLevel(),this.layout.add(3,5,this.showKw(t),0),this.layout.indentation.increaseTopLevel()):this.layout.add(3,5,this.showKw(t),0):this.layout.add(this.showKw(t),3,5)}formatDataType(t){this.layout.add(this.showDataType(t),0)}showKw(t){return Xvi(t.tokenType)?Hvi(this.showNonTabularKw(t),this.cfg.indentStyle):this.showNonTabularKw(t)}showNonTabularKw(t){switch(this.cfg.keywordCase){case"preserve":return iyt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}showFunctionKw(t){return Xvi(t.tokenType)?Hvi(this.showNonTabularFunctionKw(t),this.cfg.indentStyle):this.showNonTabularFunctionKw(t)}showNonTabularFunctionKw(t){switch(this.cfg.functionCase){case"preserve":return iyt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}showIdentifier(t){if(t.quoted)return t.text;switch(this.cfg.identifierCase){case"preserve":return t.text;case"upper":return t.text.toUpperCase();case"lower":return t.text.toLowerCase()}}showDataType(t){switch(this.cfg.dataTypeCase){case"preserve":return iyt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}},wQa=class{constructor(e,t){this.dialect=e,this.cfg=t,this.params=new aQa(this.cfg.params)}format(e){let t=this.parse(e);return this.formatAst(t).trimEnd()}parse(e){return yQa(this.dialect.tokenizer).parse(e,this.cfg.paramTypes||{})}formatAst(e){return e.map(t=>this.formatStatement(t)).join(` -`.repeat(this.cfg.linesBetweenQueries+1))}formatStatement(e){let t=new SQa({cfg:this.cfg,dialectCfg:this.dialect.formatOptions,params:this.params,layout:new lSi(new uSi(oQa(this.cfg)))}).format(e.children);return e.hasSemicolon&&(this.cfg.newlineBeforeSemicolon?t.add(3,";"):t.add(2,";")),t.toString()}},syt=class extends Error{};function TQa(e){let t=["multilineLists","newlineBeforeOpenParen","newlineBeforeCloseParen","aliasAs","commaPosition","tabulateAlias"];for(let r of t)if(r in e)throw new syt(`${r} config is no more supported.`);if(e.expressionWidth<=0)throw new syt(`expressionWidth config must be positive number. Received ${e.expressionWidth} instead.`);if(e.params&&!NQa(e.params)&&console.warn('WARNING: All "params" option values should be strings.'),e.paramTypes&&!RQa(e.paramTypes))throw new syt("Empty regex given in custom paramTypes. That would result in matching infinite amount of parameters.");return e}function NQa(e){return(e instanceof Array?e:Object.values(e)).every(r=>typeof r=="string")}function RQa(e){return e.custom&&Array.isArray(e.custom)?e.custom.every(t=>t.regex!==""):!0}var gSi={bigquery:"bigquery",db2:"db2",db2i:"db2i",hive:"hive",mariadb:"mariadb",mysql:"mysql",n1ql:"n1ql",plsql:"plsql",postgresql:"postgresql",redshift:"redshift",spark:"spark",sqlite:"sqlite",sql:"sql",tidb:"tidb",trino:"trino",transactsql:"transactsql",tsql:"transactsql",singlestoredb:"singlestoredb",snowflake:"snowflake"},DQa=Object.keys(gSi),xQa={tabWidth:2,useTabs:!1,keywordCase:"preserve",identifierCase:"preserve",dataTypeCase:"preserve",functionCase:"preserve",indentStyle:"standard",logicalOperatorNewline:"before",expressionWidth:50,linesBetweenQueries:1,denseOperators:!1,newlineBeforeSemicolon:!1},ASi=(e,t={})=>{if(typeof t.language=="string"&&!DQa.includes(t.language))throw new syt(`Unsupported SQL dialect: ${t.language}`);let r=gSi[t.language||"sql"];return kQa(e,jF(qD({},t),{dialect:jvi[r]}))},kQa=(e,t)=>{var r=t,{dialect:s}=r,a=w3a(r,["dialect"]);if(typeof e!="string")throw new Error("Invalid query argument. Expected string, instead got "+typeof e);let o=TQa(qD(qD({},xQa),a));return new wQa(nQa(s),o).format(e)};var zF=xt(Fs(),1),GQa=({children:e})=>e?zF.default.createElement(cyt.Box,{paddingLeft:4},zF.default.createElement(uK.Text,null,"SQL:"),zF.default.createElement(uK.Text,null," "),zF.default.createElement(uK.Text,null,new dSi.SqlHighlighter().highlight(ASi(e,{language:"postgresql"})))):null,FQa=({children:e})=>{if(e&&Array.isArray(e)&&e.length>0){let t=e.reduce((r,s,a)=>(r.push(zF.default.createElement(uK.Text,{key:SW(),color:"yellow"},s)),ae?zF.default.createElement(cyt.Box,{marginTop:1,flexDirection:"column"},zF.default.createElement(GQa,null,e[Ghr]),zF.default.createElement(FQa,null,e[Fhr])):null;var fSi=xt(Dc(),1),o_r=xt(Fs(),1);var ISi=({children:e})=>e?o_r.default.createElement(fSi.Box,{paddingBottom:1,marginTop:1},o_r.default.createElement(wIt,null,e)):null;var lyt=({namespace:e,body:t,stack:r,attributes:s={}})=>gK.default.createElement(Swe.Box,{flexDirection:"column",borderStyle:"single",borderColor:"gray",paddingX:2,paddingY:1,width:"100%"},gK.default.createElement(Swe.Box,{flexDirection:"row"},gK.default.createElement(Swe.Box,{flexGrow:1},gK.default.createElement(Swe.Box,{paddingRight:1},gK.default.createElement(ovi,null,e||s[Rmr])),gK.default.createElement(Swe.Box,null,gK.default.createElement(nvi,null,t)))),gK.default.createElement(ISi,null,r||s["@stack"]),gK.default.createElement(pSi,null,s));var EIe=class extends CSi.BaseCommand{showWarnings=ed.Boolean("-w,--show-warnings",!1);renderLogRecord(t){t instanceof Error?ky(uyt.default.createElement(WD,{error:t})).split(` -`).forEach(r=>{console.log(r)}):"severityNumber"in t&&"record"in t?ky(uyt.default.createElement(WD,{error:t.record})).split(` -`).forEach(r=>{t.severityNumber===v5.SeverityNumber.WARN?this.showWarnings&&console.log(r):console.log(r)}):"severityNumber"in t?ky(uyt.default.createElement(lyt,{...t})).split(` -`).forEach(r=>{t.severityNumber<=v5.SeverityNumber.INFO?console.log(r):t.severityNumber<=v5.SeverityNumber.WARN?this.showWarnings&&console.log(r):console.log(r)}):console.log(`Unknown record type: ${JSON.stringify(t)}`)}};var c5e=class extends EIe{static paths=[["service","build"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(a_r.Filename.pnpCjs)&&t.includes(a_r.Filename.pnpEsmLoader)?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await mSi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await hSi.Project.find(t,this.context.cwd),s=[];this.showWarnings&&s.push("-s");let a=await bSi.xfs.mktempPromise(),{code:o}=await ySi.execUtils.pipevp("yarn",["service","build",...s],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:await _Si.scriptUtils.makeScriptEnv({binFolder:a,project:r})});return o}async executeRegular(){let t=await ywe.initialize(this.context.cwd),{clear:r}=(0,ESi.render)(c_r.default.createElement(wht,{service:t}));try{return(await t.build()).forEach(a=>{this.renderLogRecord(a)}),0}catch(s){return s instanceof Error?ky(c_r.default.createElement(WD,{error:s})).split(` -`).forEach(a=>{console.error(a)}):console.error(s),1}finally{r()}}};var BSi=xt(Bn(),1),vSi=xt(Bn(),1),l_r=xt(Ro(),1),SSi=xt(Bn(),1),wSi=xt(Bn(),1),TSi=xt(Ro(),1),NSi=xt(Dc(),1),RSi=xt(Fs(),1);var l5e=class extends EIe{static paths=[["service","dev"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(l_r.Filename.pnpCjs)&&t.includes(l_r.Filename.pnpEsmLoader)?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await BSi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await vSi.Project.find(t,this.context.cwd),s=[];this.showWarnings&&s.push("-s");let a=await TSi.xfs.mktempPromise(),{code:o}=await wSi.execUtils.pipevp("yarn",["service","dev",...s],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:await SSi.scriptUtils.makeScriptEnv({binFolder:a,project:r})});return o}async executeRegular(){let t=await ywe.initialize(this.context.cwd),{clear:r}=(0,NSi.render)(RSi.default.createElement(wht,{service:t}));try{return await t.watch(s=>{this.renderLogRecord(s)}),0}catch(s){return console.error(s),1}finally{r()}}};var DSi={commands:[c5e,l5e]};var m_r={};jf(m_r,{AbstractTestCommand:()=>gq,TestIntegrationCommand:()=>A5e,TestUnitCommand:()=>d5e,default:()=>rwi});var f_r=xt(Ro(),1);var XSi=xt(nl(),1),d_r=xt(Bn(),1),p_r=xt(Bn(),1),JSi=xt(Ro(),1),USi=xt(Bn(),1),KSi=xt(Bn(),1),jSi=xt(Ro(),1),zSi=xt(Ro(),1),qSi=xt(Ro(),1);Fl();Fl();var $Si=xt(Dc(),1);_L();var Rwe=xt(Fs(),1);import{readFileSync as LQa}from"node:fs";import{relative as HSi}from"node:path";import{pathToFileURL as VQa}from"node:url";var xSi=xt(Dc(),1),u5e=xt(Dc(),1);var kSi=xt(Fs(),1),AK=xt(Fs(),1);var GSi=({file:e,messages:t=[]})=>{let r=(0,kSi.useMemo)(()=>t.map(s=>s.endsWith(` -`)?s.replace(/\n$/,""):s).filter(Boolean),[t]);return AK.default.createElement(u5e.Box,{flexDirection:"column",borderStyle:"single",borderColor:"gray"},!!e&&AK.default.createElement(u5e.Box,{marginBottom:1,marginTop:1,marginX:2},AK.default.createElement(PO,null,e)),r.length>0&&AK.default.createElement(AK.default.Fragment,null,AK.default.createElement(DD,{offset:2}),AK.default.createElement(u5e.Box,{flexDirection:"column",marginBottom:1,marginTop:1,marginX:2},r.map(s=>AK.default.createElement(u5e.Box,{key:SW()},AK.default.createElement(xSi.Text,null,s))))))};var g_r=xt(Dc(),1),wwe=xt(Dc(),1),ZM=xt(Fs(),1);var FSi=({details:e,source:t,file:r,line:s,column:a})=>r&&t?ZM.default.createElement(wwe.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:"100%"},ZM.default.createElement(wwe.Box,{marginBottom:1,marginTop:1,paddingX:2},ZM.default.createElement(PO,{line:s,column:a},r)),ZM.default.createElement(DD,{offset:2}),ZM.default.createElement(wwe.Box,{marginBottom:1},ZM.default.createElement(MO,{line:s??1,column:a??1},t)),ZM.default.createElement(DD,{offset:2}),ZM.default.createElement(wwe.Box,{marginBottom:1,marginTop:1,paddingX:2},ZM.default.createElement(g_r.Text,{color:"white"},e.error.message))):ZM.default.createElement(wwe.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",paddingX:2,paddingY:1,width:"100%"},ZM.default.createElement(g_r.Text,null,e.error.message));var g5e=xt(Dc(),1),MSi=xt(Fs(),1),QSi=xt(Fs(),1),BIe=xt(Fs(),1);var ZSi=xt(Fs(),1),A_r=xt(Fs(),1),LSi=xt(Fs(),1),VSi=({tester:e})=>{let[t,r]=(0,A_r.useState)(0),[s,a]=(0,A_r.useState)(0);return(0,ZSi.useEffect)(()=>{let o=f=>{r(f.tests.reduce((m,y)=>m+y.tests+1,0))},g=()=>{a(f=>f+1)},p=()=>{a(t)};return e.on("start",o),e.on("test:pass",g),e.on("test:fail",g),e.on("end",p),()=>{e.off("start",o),e.off("test:pass",g),e.off("test:fail",g),e.off("end",p)}},[e,t,r,a]),LSi.default.createElement(fM,{value:t>0&&s>0?s/t*100:0})};import{relative as WSi}from"node:path";var Twe=xt(Dc(),1),$D=xt(Dc(),1),PSi=xt(Fs(),1),Nwe=xt(Fs(),1),l1=xt(Fs(),1);var ZQa=({state:e})=>e==="fail"?l1.default.createElement($D.Text,{color:"red"},yI.cross):e==="pass"?l1.default.createElement($D.Text,{color:"green"},yI.tick):l1.default.createElement($D.Text,{color:"white"},yI.circleDotted),OSi=({cwd:e,tester:t})=>{let[r,s]=(0,Nwe.useState)(void 0),[a,o]=(0,Nwe.useState)(void 0),[g,p]=(0,Nwe.useState)(0),[f,m]=(0,Nwe.useState)(0),[y,B]=(0,Nwe.useState)(0);return(0,PSi.useEffect)(()=>{let v=O=>{p(O.tests.reduce((X,U)=>X+U.tests,0)),s(O.tests)},G=O=>{m(X=>X+1),O.file&&o({file:WSi(e,O.file),state:"pass"})},T=O=>{B(X=>X+1),O.file&&o({file:WSi(e,O.file),state:"fail"})};return t.on("start",v),t.on("test:pass",G),t.on("test:fail",T),()=>{t.off("start",v),t.off("test:pass",G),t.off("test:fail",T)}},[t,p,m,B,o]),r?l1.default.createElement(Twe.Box,{flexDirection:"row",width:"100%"},l1.default.createElement(Twe.Box,{flexGrow:1},l1.default.createElement(Dk,{color:"cyan"},"Test:"),l1.default.createElement($D.Text,null," "),!!a&&l1.default.createElement($D.Text,{color:"white"},a.file)),l1.default.createElement(Twe.Box,{flexDirection:"row"},l1.default.createElement(Twe.Box,null,l1.default.createElement(ZQa,{state:a?.state}),l1.default.createElement($D.Text,null," "),l1.default.createElement($D.Text,{color:"green"},f," Pass"),l1.default.createElement($D.Text,null," "),l1.default.createElement($D.Text,{color:"red"},y," Fail"),l1.default.createElement($D.Text,null," "),l1.default.createElement($D.Text,{color:"white"},g," Total"),l1.default.createElement($D.Text,null," "),l1.default.createElement($D.Text,{color:"gray"},r?.length||0," Files"),l1.default.createElement($D.Text,null," ")))):l1.default.createElement(Twe.Box,{flexDirection:"row"},l1.default.createElement(Dk,{color:"cyan"},"Test:"),l1.default.createElement($D.Text,null," "),l1.default.createElement($D.Text,{color:"white"},"Loading..."))};var YSi=({cwd:e,tester:t})=>{let[r,s]=(0,MSi.useState)(!1);return(0,QSi.useEffect)(()=>{let a=()=>{setTimeout(()=>{s(!0)},1e3)};return t.on("end",a),()=>{t.off("end",a)}},[s]),r?null:BIe.default.createElement(g5e.Box,{position:"relative",height:7},BIe.default.createElement(g5e.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%"},BIe.default.createElement(g5e.Box,null,BIe.default.createElement(OSi,{cwd:e,tester:t})),BIe.default.createElement(g5e.Box,{marginTop:1,marginBottom:1},BIe.default.createElement(VSi,{tester:t}))))};var gq=class extends XSi.BaseCommand{static usage=Cb.Usage({description:"Run tests",details:` +If possible, please select a more specific dialect (like sqlite, postgresql, etc).`:`SQL dialect used: "${this.dialectName}".`}getWhitespace(){Yvi.lastIndex=this.index;let e=Yvi.exec(this.input);if(e)return this.index+=e[0].length,e[0]}getNextToken(){for(let e of this.rules){let t=this.match(e);if(t)return t}}match(e){e.regex.lastIndex=this.index;let t=e.regex.exec(this.input);if(t){let r=t[0],s={type:e.type,raw:r,text:e.text?e.text(r):r,start:this.index};return e.key&&(s.key=e.key(r)),this.index+=r.length,s}}},jvi=/\/\*/uy,f5a=/[\s\S]/uy,I5a=/\*\//uy,C5a=class{constructor(){this.lastIndex=0}exec(e){let t="",r,s=0;if(r=this.matchSection(jvi,e))t+=r,s++;else return null;for(;s>0;)if(r=this.matchSection(jvi,e))t+=r,s++;else if(r=this.matchSection(I5a,e))t+=r,s--;else if(r=this.matchSection(f5a,e))t+=r;else return null;return[t]}matchSection(e,t){e.lastIndex=this.lastIndex;let r=e.exec(t);return r&&(this.lastIndex+=r[0].length),r?r[0]:null}},m5a=class{constructor(e,t){this.cfg=e,this.dialectName=t,this.rulesBeforeParams=this.buildRulesBeforeParams(e),this.rulesAfterParams=this.buildRulesAfterParams(e)}tokenize(e,t){let r=[...this.rulesBeforeParams,...this.buildParamRules(this.cfg,t),...this.rulesAfterParams],s=new p5a(r,this.dialectName).tokenize(e);return this.cfg.postProcess?this.cfg.postProcess(s):s}buildRulesBeforeParams(e){var t,r;return this.validRules([{type:"BLOCK_COMMENT",regex:/(\/\* *sql-formatter-disable *\*\/[\s\S]*?(?:\/\* *sql-formatter-enable *\*\/|$))/uy},{type:"BLOCK_COMMENT",regex:e.nestedBlockComments?new C5a:/(\/\*[^]*?\*\/)/uy},{type:"LINE_COMMENT",regex:l5a((t=e.lineCommentTypes)!=null?t:["--"])},{type:"QUOTED_IDENTIFIER",regex:Kvi(e.identTypes)},{type:"NUMBER",regex:/(?:0x[0-9a-fA-F]+|0b[01]+|(?:-\s*)?[0-9]+(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+(?:\.[0-9]+)?)?)(?![\w\p{Alphabetic}])/uy},{type:"RESERVED_PHRASE",regex:Ioe((r=e.reservedPhrases)!=null?r:[],e.identChars),text:wR},{type:"CASE",regex:/CASE\b/iuy,text:wR},{type:"END",regex:/END\b/iuy,text:wR},{type:"BETWEEN",regex:/BETWEEN\b/iuy,text:wR},{type:"LIMIT",regex:e.reservedClauses.includes("LIMIT")?/LIMIT\b/iuy:void 0,text:wR},{type:"RESERVED_CLAUSE",regex:Ioe(e.reservedClauses,e.identChars),text:wR},{type:"RESERVED_SELECT",regex:Ioe(e.reservedSelect,e.identChars),text:wR},{type:"RESERVED_SET_OPERATION",regex:Ioe(e.reservedSetOperations,e.identChars),text:wR},{type:"WHEN",regex:/WHEN\b/iuy,text:wR},{type:"ELSE",regex:/ELSE\b/iuy,text:wR},{type:"THEN",regex:/THEN\b/iuy,text:wR},{type:"RESERVED_JOIN",regex:Ioe(e.reservedJoins,e.identChars),text:wR},{type:"AND",regex:/AND\b/iuy,text:wR},{type:"OR",regex:/OR\b/iuy,text:wR},{type:"XOR",regex:e.supportsXor?/XOR\b/iuy:void 0,text:wR},{type:"RESERVED_FUNCTION_NAME",regex:Ioe(e.reservedFunctionNames,e.identChars),text:wR},{type:"RESERVED_DATA_TYPE",regex:Ioe(e.reservedDataTypes,e.identChars),text:wR},{type:"RESERVED_KEYWORD",regex:Ioe(e.reservedKeywords,e.identChars),text:wR}])}buildRulesAfterParams(e){var t,r;return this.validRules([{type:"VARIABLE",regex:e.variableTypes?A5a(e.variableTypes):void 0},{type:"STRING",regex:Kvi(e.stringTypes)},{type:"IDENTIFIER",regex:d5a(e.identChars)},{type:"DELIMITER",regex:/[;]/uy},{type:"COMMA",regex:/[,]/y},{type:"OPEN_PAREN",regex:Xvi("open",e.extraParens)},{type:"CLOSE_PAREN",regex:Xvi("close",e.extraParens)},{type:"OPERATOR",regex:Jvi(["+","-","/",">","<","=","<>","<=",">=","!=",...(t=e.operators)!=null?t:[]])},{type:"ASTERISK",regex:/[*]/uy},{type:"PROPERTY_ACCESS_OPERATOR",regex:Jvi([".",...(r=e.propertyAccessOperators)!=null?r:[]])}])}buildParamRules(e,t){var r,s,a,o,g;let p={named:t?.named||((r=e.paramTypes)==null?void 0:r.named)||[],quoted:t?.quoted||((s=e.paramTypes)==null?void 0:s.quoted)||[],numbered:t?.numbered||((a=e.paramTypes)==null?void 0:a.numbered)||[],positional:typeof t?.positional=="boolean"?t.positional:(o=e.paramTypes)==null?void 0:o.positional,custom:t?.custom||((g=e.paramTypes)==null?void 0:g.custom)||[]};return this.validRules([{type:"NAMED_PARAMETER",regex:s_r(p.named,gSi(e.paramChars||e.identChars)),key:f=>f.slice(1)},{type:"QUOTED_PARAMETER",regex:s_r(p.quoted,uSi(e.identTypes)),key:f=>(({tokenKey:m,quoteChar:y})=>m.replace(new RegExp(TY("\\"+y),"gu"),y))({tokenKey:f.slice(2,-1),quoteChar:f.slice(-1)})},{type:"NUMBERED_PARAMETER",regex:s_r(p.numbered,"[0-9]+"),key:f=>f.slice(1)},{type:"POSITIONAL_PARAMETER",regex:p.positional?/[?]/y:void 0},...p.custom.map(f=>{var m;return{type:"CUSTOM_PARAMETER",regex:SIe(f.regex),key:(m=f.key)!=null?m:y=>y}})])}validRules(e){return e.filter(t=>!!t.regex)}},wR=e=>ayt(e.toUpperCase()),zvi=new Map,h5a=e=>{let t=zvi.get(e);return t||(t=_5a(e),zvi.set(e,t)),t},_5a=e=>({tokenizer:new m5a(e.tokenizerOptions,e.name),formatOptions:y5a(e.formatOptions)}),y5a=e=>{var t;return{alwaysDenseOperators:e.alwaysDenseOperators||[],onelineClauses:Object.fromEntries(e.onelineClauses.map(r=>[r,!0])),tabularOnelineClauses:Object.fromEntries(((t=e.tabularOnelineClauses)!=null?t:e.onelineClauses).map(r=>[r,!0]))}};function b5a(e){return e.indentStyle==="tabularLeft"||e.indentStyle==="tabularRight"?" ".repeat(10):e.useTabs?" ":" ".repeat(e.tabWidth)}function Swe(e){return e.indentStyle==="tabularLeft"||e.indentStyle==="tabularRight"}var E5a=class{constructor(e){this.params=e,this.index=0}get({key:e,text:t}){return this.params?e?this.params[e]:this.params[this.index++]:t}getPositionalParameterIndex(){return this.index}setPositionalParameterIndex(e){this.index=e}};function B5a(e){return e.map(v5a).map(S5a).map(w5a).map(T5a).map(N5a)}var v5a=(e,t,r)=>{if(aSi(e.type)){let s=R5a(r,t);if(s&&s.type==="PROPERTY_ACCESS_OPERATOR")return qF(ix({},e),{type:"IDENTIFIER",text:e.raw})}return e},S5a=(e,t,r)=>{if(e.type==="RESERVED_FUNCTION_NAME"){let s=lYe(r,t);if(!s||!pSi(s))return qF(ix({},e),{type:"RESERVED_KEYWORD"})}return e},w5a=(e,t,r)=>{if(e.type==="RESERVED_DATA_TYPE"){let s=lYe(r,t);if(s&&pSi(s))return qF(ix({},e),{type:"RESERVED_PARAMETERIZED_DATA_TYPE"})}return e},T5a=(e,t,r)=>{if(e.type==="IDENTIFIER"){let s=lYe(r,t);if(s&&fSi(s))return qF(ix({},e),{type:"ARRAY_IDENTIFIER"})}return e},N5a=(e,t,r)=>{if(e.type==="RESERVED_DATA_TYPE"){let s=lYe(r,t);if(s&&fSi(s))return qF(ix({},e),{type:"ARRAY_KEYWORD"})}return e},R5a=(e,t)=>lYe(e,t,-1),lYe=(e,t,r=1)=>{let s=1;for(;e[t+s*r]&&D5a(e[t+s*r]);)s++;return e[t+s*r]},pSi=e=>e.type==="OPEN_PAREN"&&e.text==="(",fSi=e=>e.type==="OPEN_PAREN"&&e.text==="[",D5a=e=>e.type==="BLOCK_COMMENT"||e.type==="LINE_COMMENT",ISi=class{constructor(e){this.tokenize=e,this.index=0,this.tokens=[],this.input=""}reset(e,t){this.input=e,this.index=0,this.tokens=this.tokenize(e)}next(){return this.tokens[this.index++]}save(){}formatError(e){let{line:t,col:r}=ASi(this.input,e.start);return`Parse error at token: ${e.text} at line ${t} column ${r}`}has(e){return e in sSi}};function o_r(e){return e[0]}var Ef=new ISi(e=>[]),BIe=([[e]])=>e,TR=e=>({type:"keyword",tokenType:e.type,text:e.text,raw:e.raw}),qvi=e=>({type:"data_type",text:e.text,raw:e.raw}),NR=(e,{leading:t,trailing:r})=>(t?.length&&(e=qF(ix({},e),{leadingComments:t})),r?.length&&(e=qF(ix({},e),{trailingComments:r})),e),x5a=(e,{leading:t,trailing:r})=>{if(t?.length){let[s,...a]=e;e=[NR(s,{leading:t}),...a]}if(r?.length){let s=e.slice(0,-1),a=e[e.length-1];e=[...s,NR(a,{trailing:r})]}return e},k5a={Lexer:Ef,ParserRules:[{name:"main$ebnf$1",symbols:[]},{name:"main$ebnf$1",symbols:["main$ebnf$1","statement"],postprocess:e=>e[0].concat([e[1]])},{name:"main",symbols:["main$ebnf$1"],postprocess:([e])=>{let t=e[e.length-1];return t&&!t.hasSemicolon?t.children.length>0?e:e.slice(0,-1):e}},{name:"statement$subexpression$1",symbols:[Ef.has("DELIMITER")?{type:"DELIMITER"}:DELIMITER]},{name:"statement$subexpression$1",symbols:[Ef.has("EOF")?{type:"EOF"}:EOF]},{name:"statement",symbols:["expressions_or_clauses","statement$subexpression$1"],postprocess:([e,[t]])=>({type:"statement",children:e,hasSemicolon:t.type==="DELIMITER"})},{name:"expressions_or_clauses$ebnf$1",symbols:[]},{name:"expressions_or_clauses$ebnf$1",symbols:["expressions_or_clauses$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"expressions_or_clauses$ebnf$2",symbols:[]},{name:"expressions_or_clauses$ebnf$2",symbols:["expressions_or_clauses$ebnf$2","clause"],postprocess:e=>e[0].concat([e[1]])},{name:"expressions_or_clauses",symbols:["expressions_or_clauses$ebnf$1","expressions_or_clauses$ebnf$2"],postprocess:([e,t])=>[...e,...t]},{name:"clause$subexpression$1",symbols:["limit_clause"]},{name:"clause$subexpression$1",symbols:["select_clause"]},{name:"clause$subexpression$1",symbols:["other_clause"]},{name:"clause$subexpression$1",symbols:["set_operation"]},{name:"clause",symbols:["clause$subexpression$1"],postprocess:BIe},{name:"limit_clause$ebnf$1$subexpression$1$ebnf$1",symbols:["free_form_sql"]},{name:"limit_clause$ebnf$1$subexpression$1$ebnf$1",symbols:["limit_clause$ebnf$1$subexpression$1$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"limit_clause$ebnf$1$subexpression$1",symbols:[Ef.has("COMMA")?{type:"COMMA"}:COMMA,"limit_clause$ebnf$1$subexpression$1$ebnf$1"]},{name:"limit_clause$ebnf$1",symbols:["limit_clause$ebnf$1$subexpression$1"],postprocess:o_r},{name:"limit_clause$ebnf$1",symbols:[],postprocess:()=>null},{name:"limit_clause",symbols:[Ef.has("LIMIT")?{type:"LIMIT"}:LIMIT,"_","expression_chain_","limit_clause$ebnf$1"],postprocess:([e,t,r,s])=>{if(s){let[a,o]=s;return{type:"limit_clause",limitKw:NR(TR(e),{trailing:t}),offset:r,count:o}}else return{type:"limit_clause",limitKw:NR(TR(e),{trailing:t}),count:r}}},{name:"select_clause$subexpression$1$ebnf$1",symbols:[]},{name:"select_clause$subexpression$1$ebnf$1",symbols:["select_clause$subexpression$1$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"select_clause$subexpression$1",symbols:["all_columns_asterisk","select_clause$subexpression$1$ebnf$1"]},{name:"select_clause$subexpression$1$ebnf$2",symbols:[]},{name:"select_clause$subexpression$1$ebnf$2",symbols:["select_clause$subexpression$1$ebnf$2","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"select_clause$subexpression$1",symbols:["asteriskless_free_form_sql","select_clause$subexpression$1$ebnf$2"]},{name:"select_clause",symbols:[Ef.has("RESERVED_SELECT")?{type:"RESERVED_SELECT"}:RESERVED_SELECT,"select_clause$subexpression$1"],postprocess:([e,[t,r]])=>({type:"clause",nameKw:TR(e),children:[t,...r]})},{name:"select_clause",symbols:[Ef.has("RESERVED_SELECT")?{type:"RESERVED_SELECT"}:RESERVED_SELECT],postprocess:([e])=>({type:"clause",nameKw:TR(e),children:[]})},{name:"all_columns_asterisk",symbols:[Ef.has("ASTERISK")?{type:"ASTERISK"}:ASTERISK],postprocess:()=>({type:"all_columns_asterisk"})},{name:"other_clause$ebnf$1",symbols:[]},{name:"other_clause$ebnf$1",symbols:["other_clause$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"other_clause",symbols:[Ef.has("RESERVED_CLAUSE")?{type:"RESERVED_CLAUSE"}:RESERVED_CLAUSE,"other_clause$ebnf$1"],postprocess:([e,t])=>({type:"clause",nameKw:TR(e),children:t})},{name:"set_operation$ebnf$1",symbols:[]},{name:"set_operation$ebnf$1",symbols:["set_operation$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"set_operation",symbols:[Ef.has("RESERVED_SET_OPERATION")?{type:"RESERVED_SET_OPERATION"}:RESERVED_SET_OPERATION,"set_operation$ebnf$1"],postprocess:([e,t])=>({type:"set_operation",nameKw:TR(e),children:t})},{name:"expression_chain_$ebnf$1",symbols:["expression_with_comments_"]},{name:"expression_chain_$ebnf$1",symbols:["expression_chain_$ebnf$1","expression_with_comments_"],postprocess:e=>e[0].concat([e[1]])},{name:"expression_chain_",symbols:["expression_chain_$ebnf$1"],postprocess:o_r},{name:"expression_chain$ebnf$1",symbols:[]},{name:"expression_chain$ebnf$1",symbols:["expression_chain$ebnf$1","_expression_with_comments"],postprocess:e=>e[0].concat([e[1]])},{name:"expression_chain",symbols:["expression","expression_chain$ebnf$1"],postprocess:([e,t])=>[e,...t]},{name:"andless_expression_chain$ebnf$1",symbols:[]},{name:"andless_expression_chain$ebnf$1",symbols:["andless_expression_chain$ebnf$1","_andless_expression_with_comments"],postprocess:e=>e[0].concat([e[1]])},{name:"andless_expression_chain",symbols:["andless_expression","andless_expression_chain$ebnf$1"],postprocess:([e,t])=>[e,...t]},{name:"expression_with_comments_",symbols:["expression","_"],postprocess:([e,t])=>NR(e,{trailing:t})},{name:"_expression_with_comments",symbols:["_","expression"],postprocess:([e,t])=>NR(t,{leading:e})},{name:"_andless_expression_with_comments",symbols:["_","andless_expression"],postprocess:([e,t])=>NR(t,{leading:e})},{name:"free_form_sql$subexpression$1",symbols:["asteriskless_free_form_sql"]},{name:"free_form_sql$subexpression$1",symbols:["asterisk"]},{name:"free_form_sql",symbols:["free_form_sql$subexpression$1"],postprocess:BIe},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["asteriskless_andless_expression"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["logic_operator"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["comma"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["comment"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["other_keyword"]},{name:"asteriskless_free_form_sql",symbols:["asteriskless_free_form_sql$subexpression$1"],postprocess:BIe},{name:"expression$subexpression$1",symbols:["andless_expression"]},{name:"expression$subexpression$1",symbols:["logic_operator"]},{name:"expression",symbols:["expression$subexpression$1"],postprocess:BIe},{name:"andless_expression$subexpression$1",symbols:["asteriskless_andless_expression"]},{name:"andless_expression$subexpression$1",symbols:["asterisk"]},{name:"andless_expression",symbols:["andless_expression$subexpression$1"],postprocess:BIe},{name:"asteriskless_andless_expression$subexpression$1",symbols:["atomic_expression"]},{name:"asteriskless_andless_expression$subexpression$1",symbols:["between_predicate"]},{name:"asteriskless_andless_expression$subexpression$1",symbols:["case_expression"]},{name:"asteriskless_andless_expression",symbols:["asteriskless_andless_expression$subexpression$1"],postprocess:BIe},{name:"atomic_expression$subexpression$1",symbols:["array_subscript"]},{name:"atomic_expression$subexpression$1",symbols:["function_call"]},{name:"atomic_expression$subexpression$1",symbols:["property_access"]},{name:"atomic_expression$subexpression$1",symbols:["parenthesis"]},{name:"atomic_expression$subexpression$1",symbols:["curly_braces"]},{name:"atomic_expression$subexpression$1",symbols:["square_brackets"]},{name:"atomic_expression$subexpression$1",symbols:["operator"]},{name:"atomic_expression$subexpression$1",symbols:["identifier"]},{name:"atomic_expression$subexpression$1",symbols:["parameter"]},{name:"atomic_expression$subexpression$1",symbols:["literal"]},{name:"atomic_expression$subexpression$1",symbols:["data_type"]},{name:"atomic_expression$subexpression$1",symbols:["keyword"]},{name:"atomic_expression",symbols:["atomic_expression$subexpression$1"],postprocess:BIe},{name:"array_subscript",symbols:[Ef.has("ARRAY_IDENTIFIER")?{type:"ARRAY_IDENTIFIER"}:ARRAY_IDENTIFIER,"_","square_brackets"],postprocess:([e,t,r])=>({type:"array_subscript",array:NR({type:"identifier",quoted:!1,text:e.text},{trailing:t}),parenthesis:r})},{name:"array_subscript",symbols:[Ef.has("ARRAY_KEYWORD")?{type:"ARRAY_KEYWORD"}:ARRAY_KEYWORD,"_","square_brackets"],postprocess:([e,t,r])=>({type:"array_subscript",array:NR(TR(e),{trailing:t}),parenthesis:r})},{name:"function_call",symbols:[Ef.has("RESERVED_FUNCTION_NAME")?{type:"RESERVED_FUNCTION_NAME"}:RESERVED_FUNCTION_NAME,"_","parenthesis"],postprocess:([e,t,r])=>({type:"function_call",nameKw:NR(TR(e),{trailing:t}),parenthesis:r})},{name:"parenthesis",symbols:[{literal:"("},"expressions_or_clauses",{literal:")"}],postprocess:([e,t,r])=>({type:"parenthesis",children:t,openParen:"(",closeParen:")"})},{name:"curly_braces$ebnf$1",symbols:[]},{name:"curly_braces$ebnf$1",symbols:["curly_braces$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"curly_braces",symbols:[{literal:"{"},"curly_braces$ebnf$1",{literal:"}"}],postprocess:([e,t,r])=>({type:"parenthesis",children:t,openParen:"{",closeParen:"}"})},{name:"square_brackets$ebnf$1",symbols:[]},{name:"square_brackets$ebnf$1",symbols:["square_brackets$ebnf$1","free_form_sql"],postprocess:e=>e[0].concat([e[1]])},{name:"square_brackets",symbols:[{literal:"["},"square_brackets$ebnf$1",{literal:"]"}],postprocess:([e,t,r])=>({type:"parenthesis",children:t,openParen:"[",closeParen:"]"})},{name:"property_access$subexpression$1",symbols:["identifier"]},{name:"property_access$subexpression$1",symbols:["array_subscript"]},{name:"property_access$subexpression$1",symbols:["all_columns_asterisk"]},{name:"property_access$subexpression$1",symbols:["parameter"]},{name:"property_access",symbols:["atomic_expression","_",Ef.has("PROPERTY_ACCESS_OPERATOR")?{type:"PROPERTY_ACCESS_OPERATOR"}:PROPERTY_ACCESS_OPERATOR,"_","property_access$subexpression$1"],postprocess:([e,t,r,s,[a]])=>({type:"property_access",object:NR(e,{trailing:t}),operator:r.text,property:NR(a,{leading:s})})},{name:"between_predicate",symbols:[Ef.has("BETWEEN")?{type:"BETWEEN"}:BETWEEN,"_","andless_expression_chain","_",Ef.has("AND")?{type:"AND"}:AND,"_","andless_expression"],postprocess:([e,t,r,s,a,o,g])=>({type:"between_predicate",betweenKw:TR(e),expr1:x5a(r,{leading:t,trailing:s}),andKw:TR(a),expr2:[NR(g,{leading:o})]})},{name:"case_expression$ebnf$1",symbols:["expression_chain_"],postprocess:o_r},{name:"case_expression$ebnf$1",symbols:[],postprocess:()=>null},{name:"case_expression$ebnf$2",symbols:[]},{name:"case_expression$ebnf$2",symbols:["case_expression$ebnf$2","case_clause"],postprocess:e=>e[0].concat([e[1]])},{name:"case_expression",symbols:[Ef.has("CASE")?{type:"CASE"}:CASE,"_","case_expression$ebnf$1","case_expression$ebnf$2",Ef.has("END")?{type:"END"}:END],postprocess:([e,t,r,s,a])=>({type:"case_expression",caseKw:NR(TR(e),{trailing:t}),endKw:TR(a),expr:r||[],clauses:s})},{name:"case_clause",symbols:[Ef.has("WHEN")?{type:"WHEN"}:WHEN,"_","expression_chain_",Ef.has("THEN")?{type:"THEN"}:THEN,"_","expression_chain_"],postprocess:([e,t,r,s,a,o])=>({type:"case_when",whenKw:NR(TR(e),{trailing:t}),thenKw:NR(TR(s),{trailing:a}),condition:r,result:o})},{name:"case_clause",symbols:[Ef.has("ELSE")?{type:"ELSE"}:ELSE,"_","expression_chain_"],postprocess:([e,t,r])=>({type:"case_else",elseKw:NR(TR(e),{trailing:t}),result:r})},{name:"comma$subexpression$1",symbols:[Ef.has("COMMA")?{type:"COMMA"}:COMMA]},{name:"comma",symbols:["comma$subexpression$1"],postprocess:([[e]])=>({type:"comma"})},{name:"asterisk$subexpression$1",symbols:[Ef.has("ASTERISK")?{type:"ASTERISK"}:ASTERISK]},{name:"asterisk",symbols:["asterisk$subexpression$1"],postprocess:([[e]])=>({type:"operator",text:e.text})},{name:"operator$subexpression$1",symbols:[Ef.has("OPERATOR")?{type:"OPERATOR"}:OPERATOR]},{name:"operator",symbols:["operator$subexpression$1"],postprocess:([[e]])=>({type:"operator",text:e.text})},{name:"identifier$subexpression$1",symbols:[Ef.has("IDENTIFIER")?{type:"IDENTIFIER"}:IDENTIFIER]},{name:"identifier$subexpression$1",symbols:[Ef.has("QUOTED_IDENTIFIER")?{type:"QUOTED_IDENTIFIER"}:QUOTED_IDENTIFIER]},{name:"identifier$subexpression$1",symbols:[Ef.has("VARIABLE")?{type:"VARIABLE"}:VARIABLE]},{name:"identifier",symbols:["identifier$subexpression$1"],postprocess:([[e]])=>({type:"identifier",quoted:e.type!=="IDENTIFIER",text:e.text})},{name:"parameter$subexpression$1",symbols:[Ef.has("NAMED_PARAMETER")?{type:"NAMED_PARAMETER"}:NAMED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[Ef.has("QUOTED_PARAMETER")?{type:"QUOTED_PARAMETER"}:QUOTED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[Ef.has("NUMBERED_PARAMETER")?{type:"NUMBERED_PARAMETER"}:NUMBERED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[Ef.has("POSITIONAL_PARAMETER")?{type:"POSITIONAL_PARAMETER"}:POSITIONAL_PARAMETER]},{name:"parameter$subexpression$1",symbols:[Ef.has("CUSTOM_PARAMETER")?{type:"CUSTOM_PARAMETER"}:CUSTOM_PARAMETER]},{name:"parameter",symbols:["parameter$subexpression$1"],postprocess:([[e]])=>({type:"parameter",key:e.key,text:e.text})},{name:"literal$subexpression$1",symbols:[Ef.has("NUMBER")?{type:"NUMBER"}:NUMBER]},{name:"literal$subexpression$1",symbols:[Ef.has("STRING")?{type:"STRING"}:STRING]},{name:"literal",symbols:["literal$subexpression$1"],postprocess:([[e]])=>({type:"literal",text:e.text})},{name:"keyword$subexpression$1",symbols:[Ef.has("RESERVED_KEYWORD")?{type:"RESERVED_KEYWORD"}:RESERVED_KEYWORD]},{name:"keyword$subexpression$1",symbols:[Ef.has("RESERVED_PHRASE")?{type:"RESERVED_PHRASE"}:RESERVED_PHRASE]},{name:"keyword$subexpression$1",symbols:[Ef.has("RESERVED_JOIN")?{type:"RESERVED_JOIN"}:RESERVED_JOIN]},{name:"keyword",symbols:["keyword$subexpression$1"],postprocess:([[e]])=>TR(e)},{name:"data_type$subexpression$1",symbols:[Ef.has("RESERVED_DATA_TYPE")?{type:"RESERVED_DATA_TYPE"}:RESERVED_DATA_TYPE]},{name:"data_type",symbols:["data_type$subexpression$1"],postprocess:([[e]])=>qvi(e)},{name:"data_type",symbols:[Ef.has("RESERVED_PARAMETERIZED_DATA_TYPE")?{type:"RESERVED_PARAMETERIZED_DATA_TYPE"}:RESERVED_PARAMETERIZED_DATA_TYPE,"_","parenthesis"],postprocess:([e,t,r])=>({type:"parameterized_data_type",dataType:NR(qvi(e),{trailing:t}),parenthesis:r})},{name:"logic_operator$subexpression$1",symbols:[Ef.has("AND")?{type:"AND"}:AND]},{name:"logic_operator$subexpression$1",symbols:[Ef.has("OR")?{type:"OR"}:OR]},{name:"logic_operator$subexpression$1",symbols:[Ef.has("XOR")?{type:"XOR"}:XOR]},{name:"logic_operator",symbols:["logic_operator$subexpression$1"],postprocess:([[e]])=>TR(e)},{name:"other_keyword$subexpression$1",symbols:[Ef.has("WHEN")?{type:"WHEN"}:WHEN]},{name:"other_keyword$subexpression$1",symbols:[Ef.has("THEN")?{type:"THEN"}:THEN]},{name:"other_keyword$subexpression$1",symbols:[Ef.has("ELSE")?{type:"ELSE"}:ELSE]},{name:"other_keyword$subexpression$1",symbols:[Ef.has("END")?{type:"END"}:END]},{name:"other_keyword",symbols:["other_keyword$subexpression$1"],postprocess:([[e]])=>TR(e)},{name:"_$ebnf$1",symbols:[]},{name:"_$ebnf$1",symbols:["_$ebnf$1","comment"],postprocess:e=>e[0].concat([e[1]])},{name:"_",symbols:["_$ebnf$1"],postprocess:([e])=>e},{name:"comment",symbols:[Ef.has("LINE_COMMENT")?{type:"LINE_COMMENT"}:LINE_COMMENT],postprocess:([e])=>({type:"line_comment",text:e.text,precedingWhitespace:e.precedingWhitespace})},{name:"comment",symbols:[Ef.has("BLOCK_COMMENT")?{type:"BLOCK_COMMENT"}:BLOCK_COMMENT],postprocess:([e])=>({type:"block_comment",text:e.text,precedingWhitespace:e.precedingWhitespace})},{name:"comment",symbols:[Ef.has("DISABLE_COMMENT")?{type:"DISABLE_COMMENT"}:DISABLE_COMMENT],postprocess:([e])=>({type:"disable_comment",text:e.text,precedingWhitespace:e.precedingWhitespace})}],ParserStart:"main"},G5a=k5a,{Parser:F5a,Grammar:Z5a}=dSi.default;function L5a(e){let t={},r=new ISi(a=>[...B5a(e.tokenize(a,t)),oSi(a.length)]),s=new F5a(Z5a.fromCompiled(G5a),{lexer:r});return{parse:(a,o)=>{t=o;let{results:g}=s.feed(a);if(g.length===1)return g[0];throw g.length===0?new Error("Parse error: Invalid SQL"):new Error(`Parse error: Ambiguous grammar +${JSON.stringify(g,void 0,2)}`)}}}var CSi=class{constructor(e){this.indentation=e,this.items=[]}add(...e){for(let t of e)switch(t){case 0:this.items.push(0);break;case 1:this.trimHorizontalWhitespace();break;case 2:this.trimWhitespace();break;case 3:this.trimHorizontalWhitespace(),this.addNewline(3);break;case 4:this.trimHorizontalWhitespace(),this.addNewline(4);break;case 5:this.addIndentation();break;case 6:this.items.push(6);break;default:this.items.push(t)}}trimHorizontalWhitespace(){for(;V5a(cYe(this.items));)this.items.pop()}trimWhitespace(){for(;W5a(cYe(this.items));)this.items.pop()}addNewline(e){if(this.items.length>0)switch(cYe(this.items)){case 3:this.items.pop(),this.items.push(e);break;case 4:break;default:this.items.push(e);break}}addIndentation(){for(let e=0;ethis.itemToString(e)).join("")}getLayoutItems(){return this.items}itemToString(e){switch(e){case 0:return" ";case 3:case 4:return` +`;case 6:return this.indentation.getSingleIndent();default:return e}}},V5a=e=>e===0||e===6,W5a=e=>e===0||e===6||e===3;function $vi(e,t){if(t==="standard")return e;let r=[];return e.length>=10&&e.includes(" ")&&([e,...r]=e.split(" ")),t==="tabularLeft"?e=e.padEnd(9," "):e=e.padStart(9," "),e+["",...r].join(" ")}function eSi(e){return $3a(e)||e==="RESERVED_CLAUSE"||e==="RESERVED_SELECT"||e==="RESERVED_SET_OPERATION"||e==="RESERVED_JOIN"||e==="LIMIT"}var a_r="top-level",P5a="block-level",mSi=class{constructor(e){this.indent=e,this.indentTypes=[]}getSingleIndent(){return this.indent}getLevel(){return this.indentTypes.length}increaseTopLevel(){this.indentTypes.push(a_r)}increaseBlockLevel(){this.indentTypes.push(P5a)}decreaseTopLevel(){this.indentTypes.length>0&&cYe(this.indentTypes)===a_r&&this.indentTypes.pop()}decreaseBlockLevel(){for(;this.indentTypes.length>0&&this.indentTypes.pop()===a_r;);}},O5a=class extends CSi{constructor(e){super(new mSi("")),this.expressionWidth=e,this.length=0,this.trailingSpace=!1}add(...e){if(e.forEach(t=>this.addToLength(t)),this.length>this.expressionWidth)throw new c_r;super.add(...e)}addToLength(e){if(typeof e=="string")this.length+=e.length,this.trailingSpace=!1;else{if(e===4||e===3)throw new c_r;e===5||e===6||e===0?this.trailingSpace||(this.length++,this.trailingSpace=!0):(e===2||e===1)&&this.trailingSpace&&(this.trailingSpace=!1,this.length--)}}},c_r=class extends Error{},Q5a=class l_r{constructor({cfg:t,dialectCfg:r,params:s,layout:a,inline:o=!1}){this.inline=!1,this.nodes=[],this.index=-1,this.cfg=t,this.dialectCfg=r,this.inline=o,this.params=s,this.layout=a}format(t){for(this.nodes=t,this.index=0;this.index{this.layout.add(this.showFunctionKw(t.nameKw))}),this.formatNode(t.parenthesis)}formatParameterizedDataType(t){this.withComments(t.dataType,()=>{this.layout.add(this.showDataType(t.dataType))}),this.formatNode(t.parenthesis)}formatArraySubscript(t){let r;switch(t.array.type){case"data_type":r=this.showDataType(t.array);break;case"keyword":r=this.showKw(t.array);break;default:r=this.showIdentifier(t.array);break}this.withComments(t.array,()=>{this.layout.add(r)}),this.formatNode(t.parenthesis)}formatPropertyAccess(t){this.formatNode(t.object),this.layout.add(1,t.operator),this.formatNode(t.property)}formatParenthesis(t){let r=this.formatInlineExpression(t.children);r?(this.layout.add(t.openParen),this.layout.add(...r.getLayoutItems()),this.layout.add(1,t.closeParen,0)):(this.layout.add(t.openParen,3),Swe(this.cfg)?(this.layout.add(5),this.layout=this.formatSubExpression(t.children)):(this.layout.indentation.increaseBlockLevel(),this.layout.add(5),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseBlockLevel()),this.layout.add(3,5,t.closeParen,0))}formatBetweenPredicate(t){this.layout.add(this.showKw(t.betweenKw),0),this.layout=this.formatSubExpression(t.expr1),this.layout.add(1,0,this.showNonTabularKw(t.andKw),0),this.layout=this.formatSubExpression(t.expr2),this.layout.add(0)}formatCaseExpression(t){this.formatNode(t.caseKw),this.layout.indentation.increaseBlockLevel(),this.layout=this.formatSubExpression(t.expr),this.layout=this.formatSubExpression(t.clauses),this.layout.indentation.decreaseBlockLevel(),this.layout.add(3,5),this.formatNode(t.endKw)}formatCaseWhen(t){this.layout.add(3,5),this.formatNode(t.whenKw),this.layout=this.formatSubExpression(t.condition),this.formatNode(t.thenKw),this.layout=this.formatSubExpression(t.result)}formatCaseElse(t){this.layout.add(3,5),this.formatNode(t.elseKw),this.layout=this.formatSubExpression(t.result)}formatClause(t){this.isOnelineClause(t)?this.formatClauseInOnelineStyle(t):Swe(this.cfg)?this.formatClauseInTabularStyle(t):this.formatClauseInIndentedStyle(t)}isOnelineClause(t){return Swe(this.cfg)?this.dialectCfg.tabularOnelineClauses[t.nameKw.text]:this.dialectCfg.onelineClauses[t.nameKw.text]}formatClauseInIndentedStyle(t){this.layout.add(3,5,this.showKw(t.nameKw),3),this.layout.indentation.increaseTopLevel(),this.layout.add(5),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseTopLevel()}formatClauseInOnelineStyle(t){this.layout.add(3,5,this.showKw(t.nameKw),0),this.layout=this.formatSubExpression(t.children)}formatClauseInTabularStyle(t){this.layout.add(3,5,this.showKw(t.nameKw),0),this.layout.indentation.increaseTopLevel(),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseTopLevel()}formatSetOperation(t){this.layout.add(3,5,this.showKw(t.nameKw),3),this.layout.add(5),this.layout=this.formatSubExpression(t.children)}formatLimitClause(t){this.withComments(t.limitKw,()=>{this.layout.add(3,5,this.showKw(t.limitKw))}),this.layout.indentation.increaseTopLevel(),Swe(this.cfg)?this.layout.add(0):this.layout.add(3,5),t.offset?(this.layout=this.formatSubExpression(t.offset),this.layout.add(1,",",0),this.layout=this.formatSubExpression(t.count)):this.layout=this.formatSubExpression(t.count),this.layout.indentation.decreaseTopLevel()}formatAllColumnsAsterisk(t){this.layout.add("*",0)}formatLiteral(t){this.layout.add(t.text,0)}formatIdentifier(t){this.layout.add(this.showIdentifier(t),0)}formatParameter(t){this.layout.add(this.params.get(t),0)}formatOperator({text:t}){this.cfg.denseOperators||this.dialectCfg.alwaysDenseOperators.includes(t)?this.layout.add(1,t):t===":"?this.layout.add(1,t,0):this.layout.add(t,0)}formatComma(t){this.inline?this.layout.add(1,",",0):this.layout.add(1,",",3,5)}withComments(t,r){this.formatComments(t.leadingComments),r(),this.formatComments(t.trailingComments)}formatComments(t){t&&t.forEach(r=>{r.type==="line_comment"?this.formatLineComment(r):this.formatBlockComment(r)})}formatLineComment(t){i_r(t.precedingWhitespace||"")?this.layout.add(3,5,t.text,4,5):this.layout.getLayoutItems().length>0?this.layout.add(2,0,t.text,4,5):this.layout.add(t.text,4,5)}formatBlockComment(t){t.type==="block_comment"&&this.isMultilineBlockComment(t)?(this.splitBlockComment(t.text).forEach(r=>{this.layout.add(3,5,r)}),this.layout.add(3,5)):this.layout.add(t.text,0)}isMultilineBlockComment(t){return i_r(t.text)||i_r(t.precedingWhitespace||"")}isDocComment(t){let r=t.split(/\n/);return/^\/\*\*?$/.test(r[0])&&r.slice(1,r.length-1).every(s=>/^\s*\*/.test(s))&&/^\s*\*\/$/.test(cYe(r))}splitBlockComment(t){return this.isDocComment(t)?t.split(/\n/).map(r=>/^\s*\*/.test(r)?" "+r.replace(/^\s*/,""):r):t.split(/\n/).map(r=>r.replace(/^\s*/,""))}formatSubExpression(t){return new l_r({cfg:this.cfg,dialectCfg:this.dialectCfg,params:this.params,layout:this.layout,inline:this.inline}).format(t)}formatInlineExpression(t){let r=this.params.getPositionalParameterIndex();try{return new l_r({cfg:this.cfg,dialectCfg:this.dialectCfg,params:this.params,layout:new O5a(this.cfg.expressionWidth),inline:!0}).format(t)}catch(s){if(s instanceof c_r){this.params.setPositionalParameterIndex(r);return}else throw s}}formatKeywordNode(t){switch(t.tokenType){case"RESERVED_JOIN":return this.formatJoin(t);case"AND":case"OR":case"XOR":return this.formatLogicalOperator(t);default:return this.formatKeyword(t)}}formatJoin(t){Swe(this.cfg)?(this.layout.indentation.decreaseTopLevel(),this.layout.add(3,5,this.showKw(t),0),this.layout.indentation.increaseTopLevel()):this.layout.add(3,5,this.showKw(t),0)}formatKeyword(t){this.layout.add(this.showKw(t),0)}formatLogicalOperator(t){this.cfg.logicalOperatorNewline==="before"?Swe(this.cfg)?(this.layout.indentation.decreaseTopLevel(),this.layout.add(3,5,this.showKw(t),0),this.layout.indentation.increaseTopLevel()):this.layout.add(3,5,this.showKw(t),0):this.layout.add(this.showKw(t),3,5)}formatDataType(t){this.layout.add(this.showDataType(t),0)}showKw(t){return eSi(t.tokenType)?$vi(this.showNonTabularKw(t),this.cfg.indentStyle):this.showNonTabularKw(t)}showNonTabularKw(t){switch(this.cfg.keywordCase){case"preserve":return ayt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}showFunctionKw(t){return eSi(t.tokenType)?$vi(this.showNonTabularFunctionKw(t),this.cfg.indentStyle):this.showNonTabularFunctionKw(t)}showNonTabularFunctionKw(t){switch(this.cfg.functionCase){case"preserve":return ayt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}showIdentifier(t){if(t.quoted)return t.text;switch(this.cfg.identifierCase){case"preserve":return t.text;case"upper":return t.text.toUpperCase();case"lower":return t.text.toLowerCase()}}showDataType(t){switch(this.cfg.dataTypeCase){case"preserve":return ayt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}},M5a=class{constructor(e,t){this.dialect=e,this.cfg=t,this.params=new E5a(this.cfg.params)}format(e){let t=this.parse(e);return this.formatAst(t).trimEnd()}parse(e){return L5a(this.dialect.tokenizer).parse(e,this.cfg.paramTypes||{})}formatAst(e){return e.map(t=>this.formatStatement(t)).join(` +`.repeat(this.cfg.linesBetweenQueries+1))}formatStatement(e){let t=new Q5a({cfg:this.cfg,dialectCfg:this.dialect.formatOptions,params:this.params,layout:new CSi(new mSi(b5a(this.cfg)))}).format(e.children);return e.hasSemicolon&&(this.cfg.newlineBeforeSemicolon?t.add(3,";"):t.add(2,";")),t.toString()}},cyt=class extends Error{};function H5a(e){let t=["multilineLists","newlineBeforeOpenParen","newlineBeforeCloseParen","aliasAs","commaPosition","tabulateAlias"];for(let r of t)if(r in e)throw new cyt(`${r} config is no more supported.`);if(e.expressionWidth<=0)throw new cyt(`expressionWidth config must be positive number. Received ${e.expressionWidth} instead.`);if(e.params&&!Y5a(e.params)&&console.warn('WARNING: All "params" option values should be strings.'),e.paramTypes&&!X5a(e.paramTypes))throw new cyt("Empty regex given in custom paramTypes. That would result in matching infinite amount of parameters.");return e}function Y5a(e){return(e instanceof Array?e:Object.values(e)).every(r=>typeof r=="string")}function X5a(e){return e.custom&&Array.isArray(e.custom)?e.custom.every(t=>t.regex!==""):!0}var hSi={bigquery:"bigquery",db2:"db2",db2i:"db2i",hive:"hive",mariadb:"mariadb",mysql:"mysql",n1ql:"n1ql",plsql:"plsql",postgresql:"postgresql",redshift:"redshift",spark:"spark",sqlite:"sqlite",sql:"sql",tidb:"tidb",trino:"trino",transactsql:"transactsql",tsql:"transactsql",singlestoredb:"singlestoredb",snowflake:"snowflake"},J5a=Object.keys(hSi),U5a={tabWidth:2,useTabs:!1,keywordCase:"preserve",identifierCase:"preserve",dataTypeCase:"preserve",functionCase:"preserve",indentStyle:"standard",logicalOperatorNewline:"before",expressionWidth:50,linesBetweenQueries:1,denseOperators:!1,newlineBeforeSemicolon:!1},_Si=(e,t={})=>{if(typeof t.language=="string"&&!J5a.includes(t.language))throw new cyt(`Unsupported SQL dialect: ${t.language}`);let r=hSi[t.language||"sql"];return K5a(e,qF(ix({},t),{dialect:iSi[r]}))},K5a=(e,t)=>{var r=t,{dialect:s}=r,a=M3a(r,["dialect"]);if(typeof e!="string")throw new Error("Invalid query argument. Expected string, instead got "+typeof e);let o=H5a(ix(ix({},U5a),a));return new M5a(h5a(s),o).format(e)};var jk=vt(Ac(),1),j5a=({children:e})=>e?(0,jk.jsxs)(gyt.Box,{paddingLeft:4,children:[(0,jk.jsx)(mK.Text,{children:"SQL:"}),(0,jk.jsx)(mK.Text,{children:" "}),(0,jk.jsx)(mK.Text,{children:new ySi.SqlHighlighter().highlight(_Si(e,{language:"postgresql"}))})]}):null,z5a=({children:e})=>{if(e&&Array.isArray(e)&&e.length>0){let t=e.reduce((r,s,a)=>(r.push((0,jk.jsx)(mK.Text,{color:"yellow",children:s},wW())),ae?(0,jk.jsxs)(gyt.Box,{marginTop:1,flexDirection:"column",children:[(0,jk.jsx)(j5a,{children:e[Whr]}),(0,jk.jsx)(z5a,{children:e[Phr]})]}):null;var ESi=vt(xc(),1);var g_r=vt(Ac(),1),BSi=({children:e})=>e?(0,g_r.jsx)(ESi.Box,{paddingBottom:1,marginTop:1,children:(0,g_r.jsx)(RIt,{children:e})}):null;var NY=vt(Ac(),1),Ayt=({namespace:e,body:t,stack:r,attributes:s={}})=>(0,NY.jsxs)(Twe.Box,{flexDirection:"column",borderStyle:"single",borderColor:"gray",paddingX:2,paddingY:1,width:"100%",children:[(0,NY.jsx)(Twe.Box,{flexDirection:"row",children:(0,NY.jsxs)(Twe.Box,{flexGrow:1,children:[(0,NY.jsx)(Twe.Box,{paddingRight:1,children:(0,NY.jsx)(pvi,{children:e||s[Fmr]})}),(0,NY.jsx)(Twe.Box,{children:(0,NY.jsx)(uvi,{children:t})})]})}),(0,NY.jsx)(BSi,{children:r||s["@stack"]}),(0,NY.jsx)(bSi,{children:s})]});var dyt=vt(Ac(),1),wIe=class extends vSi.BaseCommand{showWarnings=td.Boolean("-w,--show-warnings",!1);renderLogRecord(t){t instanceof Error?Gy((0,dyt.jsx)(MD,{error:t})).split(` +`).forEach(r=>{console.log(r)}):"severityNumber"in t&&"record"in t?Gy((0,dyt.jsx)(MD,{error:t.record})).split(` +`).forEach(r=>{t.severityNumber===wY.SeverityNumber.WARN?this.showWarnings&&console.log(r):console.log(r)}):"severityNumber"in t?Gy((0,dyt.jsx)(Ayt,{...t})).split(` +`).forEach(r=>{t.severityNumber<=wY.SeverityNumber.INFO?console.log(r):t.severityNumber<=wY.SeverityNumber.WARN?this.showWarnings&&console.log(r):console.log(r)}):console.log(`Unknown record type: ${JSON.stringify(t)}`)}};var d_r=vt(Ac(),1),uYe=class extends wIe{static paths=[["service","build"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(A_r.Filename.pnpCjs)&&t.includes(A_r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await SSi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await wSi.Project.find(t,this.context.cwd),s=[];this.showWarnings&&s.push("-s");let a=await RSi.xfs.mktempPromise(),{code:o}=await NSi.execUtils.pipevp("yarn",["service","build",...s],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:{...await TSi.scriptUtils.makeScriptEnv({binFolder:a,project:r}),COMMAND_PROXY_EXECUTION:"true"}});return o}async executeRegular(){let t=await Ewe.initialize(this.context.cwd),{clear:r}=(0,DSi.render)((0,d_r.jsx)(Rht,{service:t}));try{return(await t.build()).forEach(a=>{this.renderLogRecord(a)}),0}catch(s){return s instanceof Error?Gy((0,d_r.jsx)(MD,{error:s})).split(` +`).forEach(a=>{console.error(a)}):console.error(s),1}finally{r()}}};var xSi=vt(Bn(),1),kSi=vt(Bn(),1),p_r=vt(No(),1),GSi=vt(Bn(),1),FSi=vt(Bn(),1),ZSi=vt(No(),1),LSi=vt(xc(),1);var VSi=vt(Ac(),1),gYe=class extends wIe{static paths=[["service","dev"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(p_r.Filename.pnpCjs)&&t.includes(p_r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await xSi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await kSi.Project.find(t,this.context.cwd),s=[];this.showWarnings&&s.push("-s");let a=await ZSi.xfs.mktempPromise(),{code:o}=await FSi.execUtils.pipevp("yarn",["service","dev",...s],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:{...await GSi.scriptUtils.makeScriptEnv({binFolder:a,project:r}),COMMAND_PROXY_EXECUTION:"true"}});return o}async executeRegular(){let t=await Ewe.initialize(this.context.cwd),{clear:r}=(0,LSi.render)((0,VSi.jsx)(Rht,{service:t}));try{return await t.watch(s=>{this.renderLogRecord(s)}),0}catch(s){return console.error(s),1}finally{r()}}};var WSi={commands:[uYe,gYe]};var B_r={};zf(B_r,{AbstractTestCommand:()=>Aq,TestIntegrationCommand:()=>pYe,TestUnitCommand:()=>fYe,default:()=>lwi});var y_r=vt(No(),1);var ewi=vt(il(),1),m_r=vt(Bn(),1),h_r=vt(Bn(),1),twi=vt(No(),1),rwi=vt(Bn(),1),nwi=vt(Bn(),1),__r=vt(No(),1),iwi=vt(No(),1),swi=vt(No(),1);Zl();Zl();var owi=vt(xc(),1);yL();import{readFileSync as $5a}from"node:fs";import{relative as $Si}from"node:path";import{pathToFileURL as eMa}from"node:url";var PSi=vt(xc(),1),AYe=vt(xc(),1);var OSi=vt($a(),1);var VQ=vt(Ac(),1),QSi=({file:e,messages:t=[]})=>{let r=(0,OSi.useMemo)(()=>t.map(s=>s.endsWith(` +`)?s.replace(/\n$/,""):s).filter(Boolean),[t]);return(0,VQ.jsxs)(AYe.Box,{flexDirection:"column",borderStyle:"single",borderColor:"gray",children:[!!e&&(0,VQ.jsx)(AYe.Box,{marginBottom:1,marginTop:1,marginX:2,children:(0,VQ.jsx)(MO,{children:e})}),r.length>0&&(0,VQ.jsxs)(VQ.Fragment,{children:[(0,VQ.jsx)(GD,{offset:2}),(0,VQ.jsx)(AYe.Box,{flexDirection:"column",marginBottom:1,marginTop:1,marginX:2,children:r.map(s=>(0,VQ.jsx)(AYe.Box,{children:(0,VQ.jsx)(PSi.Text,{children:s})},wW()))})]})]})};var I_r=vt(xc(),1),Nwe=vt(xc(),1);var l3=vt(Ac(),1),MSi=({details:e,source:t,file:r,line:s,column:a})=>r&&t?(0,l3.jsxs)(Nwe.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:"100%",children:[(0,l3.jsx)(Nwe.Box,{marginBottom:1,marginTop:1,paddingX:2,children:(0,l3.jsx)(MO,{line:s,column:a,children:r})}),(0,l3.jsx)(GD,{offset:2}),(0,l3.jsx)(Nwe.Box,{marginBottom:1,children:(0,l3.jsx)(YO,{line:s??1,column:a??1,children:t})}),(0,l3.jsx)(GD,{offset:2}),(0,l3.jsx)(Nwe.Box,{marginBottom:1,marginTop:1,paddingX:2,children:(0,l3.jsx)(I_r.Text,{color:"white",children:e.error.message})})]}):(0,l3.jsx)(Nwe.Box,{flexDirection:"column",borderStyle:"round",borderColor:"gray",paddingX:2,paddingY:1,width:"100%",children:(0,l3.jsx)(I_r.Text,{children:e.error.message})});var dYe=vt(xc(),1),jSi=vt($a(),1),zSi=vt($a(),1);var HSi=vt($a(),1),C_r=vt($a(),1),XSi=vt(Ac(),1),YSi=({tester:e})=>{let[t,r]=(0,C_r.useState)(0),[s,a]=(0,C_r.useState)(0);return(0,HSi.useEffect)(()=>{let o=f=>{r(f.tests.reduce((m,y)=>m+y.tests+1,0))},g=()=>{a(f=>f+1)},p=()=>{a(t)};return e.on("start",o),e.on("test:pass",g),e.on("test:fail",g),e.on("end",p),()=>{e.off("start",o),e.off("test:pass",g),e.off("test:fail",g),e.off("end",p)}},[e,t,r,a]),(0,XSi.jsx)(CQ,{value:t>0&&s>0?s/t*100:0})};import{relative as JSi}from"node:path";var Rwe=vt(xc(),1),sx=vt(xc(),1),USi=vt($a(),1),Dwe=vt($a(),1);var IE=vt(Ac(),1),q5a=({state:e})=>e==="fail"?(0,IE.jsx)(sx.Text,{color:"red",children:bI.cross}):e==="pass"?(0,IE.jsx)(sx.Text,{color:"green",children:bI.tick}):(0,IE.jsx)(sx.Text,{color:"white",children:bI.circleDotted}),KSi=({cwd:e,tester:t})=>{let[r,s]=(0,Dwe.useState)(void 0),[a,o]=(0,Dwe.useState)(void 0),[g,p]=(0,Dwe.useState)(0),[f,m]=(0,Dwe.useState)(0),[y,B]=(0,Dwe.useState)(0);return(0,USi.useEffect)(()=>{let v=O=>{p(O.tests.reduce((X,U)=>X+U.tests,0)),s(O.tests)},k=O=>{m(X=>X+1),O.file&&o({file:JSi(e,O.file),state:"pass"})},T=O=>{B(X=>X+1),O.file&&o({file:JSi(e,O.file),state:"fail"})};return t.on("start",v),t.on("test:pass",k),t.on("test:fail",T),()=>{t.off("start",v),t.off("test:pass",k),t.off("test:fail",T)}},[t,p,m,B,o]),r?(0,IE.jsxs)(Rwe.Box,{flexDirection:"row",width:"100%",children:[(0,IE.jsxs)(Rwe.Box,{flexGrow:1,children:[(0,IE.jsx)(Lk,{color:"cyan",children:"Test:"}),(0,IE.jsx)(sx.Text,{children:" "}),!!a&&(0,IE.jsx)(sx.Text,{color:"white",children:a.file})]}),(0,IE.jsx)(Rwe.Box,{flexDirection:"row",children:(0,IE.jsxs)(Rwe.Box,{children:[(0,IE.jsx)(q5a,{state:a?.state}),(0,IE.jsx)(sx.Text,{children:" "}),(0,IE.jsxs)(sx.Text,{color:"green",children:[f," Pass"]}),(0,IE.jsx)(sx.Text,{children:" "}),(0,IE.jsxs)(sx.Text,{color:"red",children:[y," Fail"]}),(0,IE.jsx)(sx.Text,{children:" "}),(0,IE.jsxs)(sx.Text,{color:"white",children:[g," Total"]}),(0,IE.jsx)(sx.Text,{children:" "}),(0,IE.jsxs)(sx.Text,{color:"gray",children:[r.length||0," Files"]}),(0,IE.jsx)(sx.Text,{children:" "})]})})]}):(0,IE.jsxs)(Rwe.Box,{flexDirection:"row",children:[(0,IE.jsx)(Lk,{color:"cyan",children:"Test:"}),(0,IE.jsx)(sx.Text,{children:" "}),(0,IE.jsx)(sx.Text,{color:"white",children:"Loading..."})]})};var Coe=vt(Ac(),1),qSi=({cwd:e,tester:t})=>{let[r,s]=(0,jSi.useState)(!1);return(0,zSi.useEffect)(()=>{let a=()=>{setTimeout(()=>{s(!0)},1e3)};return t.on("end",a),()=>{t.off("end",a)}},[s]),r?null:(0,Coe.jsx)(dYe.Box,{position:"relative",height:7,children:(0,Coe.jsxs)(dYe.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,Coe.jsx)(dYe.Box,{children:(0,Coe.jsx)(KSi,{cwd:e,tester:t})}),(0,Coe.jsx)(dYe.Box,{marginTop:1,marginBottom:1,children:(0,Coe.jsx)(YSi,{tester:t})})]})})};var xwe=vt(Ac(),1),Aq=class extends ewi.BaseCommand{static usage=mb.Usage({description:"Run tests",details:` Run either integration or unit tests with Node.js built-in test runner. Integration tests are defined by placing *.test.[j|t]sx? in 'integration' folder anywhere. Unit tests are all *.test.[j|t]sx? except in 'integration' folder. - `,examples:[["Run all unit tests","yarn test unit"],["Run all integration tests","yarn test integration"],["Run all integration tests which file names include 'menu'","yarn test integration menu"],["Run all unit tests in watch mode - reloading after any change in file","yarn test unit -w"]]});target=ed.String("-t,--target");watch=ed.Boolean("-w,--watch",!1);files=ed.Rest({required:0});testReporter=ed.String("--test-reporter",{validator:_Mt(["tap"])});std=new Map;bufferedStdTimeout;async executeProxy(t){let r=await d_r.Configuration.find(this.context.cwd,this.context.plugins),{project:s,workspace:a}=await p_r.Project.find(r,this.context.cwd),o=[];this.files?.length&&o.push(this.files.join(" ")),this.watch&&o.push("-w"),a&&(o.push("-t"),o.push(this.context.cwd)),this.testReporter&&o.push(`--test-reporter=${this.testReporter}`);let g=await jSi.xfs.mktempPromise(),p=await USi.scriptUtils.makeScriptEnv({binFolder:g,project:s});p.NODE_OPTIONS?.includes("--no-warnings")||(p.NODE_OPTIONS=`${p.NODE_OPTIONS} --no-warnings=DeprecationWarning`),p.NODE_OPTIONS?.includes("@atls/code-runtime/ts-node-register")||(p.NODE_OPTIONS=`${p.NODE_OPTIONS} --loader @atls/code-runtime/ts-node-register`,p.NODE_OPTIONS=`${p.NODE_OPTIONS} --loader ${VQa(qSi.npath.fromPortablePath(zSi.ppath.join(s.cwd,JSi.Filename.pnpEsmLoader))).href}`,p.NODE_OPTIONS=`${p.NODE_OPTIONS} --loader @atls/code-runtime/ts-ext-register`),p.NODE_OPTIONS?.includes("--enable-source-maps")||(p.NODE_OPTIONS=`${p.NODE_OPTIONS} --enable-source-maps`);let{code:f}=await KSi.execUtils.pipevp("yarn",["test",t??"",...o],{cwd:s.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:p});return f}async executeRegular(t){let r=await d_r.Configuration.find(this.context.cwd,this.context.plugins),{project:s}=await p_r.Project.find(r,this.context.cwd),a=m=>{this.bufferedStd(m,y=>{this.renderStdBuffer(y)})},o=m=>{this.bufferedStd(m,y=>{this.renderStdBuffer(y)})},g=m=>{let y=m.file?LQa(m.file,"utf8"):void 0;ky(Rwe.default.createElement(FSi,{details:m.details,source:y,file:m.file?HSi(s.cwd,m.file):void 0,column:m.column,line:m.line})).split(` -`).forEach(B=>{console.error(B)})},p=await hU.initialize();p.on("test:stdout",a),p.on("test:stderr",o),p.on("test:fail",g);let{clear:f}=(0,$Si.render)(Rwe.default.createElement(YSi,{cwd:s.cwd,tester:p}));try{return(t==="integration"?await p.integration(this.target??s.cwd,{files:this.files,watch:this.watch}):await p.unit(this.target??s.cwd,{files:this.files,watch:this.watch})).find(y=>y.type==="test:fail")?1:0}catch(m){return m instanceof Error?ky(Rwe.default.createElement(WD,{error:m})).split(` + `,examples:[["Run all unit tests","yarn test unit"],["Run all integration tests","yarn test integration"],["Run all integration tests which file names include 'menu'","yarn test integration menu"],["Run all unit tests in watch mode - reloading after any change in file","yarn test unit -w"]]});target=td.String("-t,--target");watch=td.Boolean("-w,--watch",!1);files=td.Rest({required:0});testReporter=td.String("--test-reporter",{validator:EQt(["tap"])});std=new Map;bufferedStdTimeout;async executeProxy(t){let r=await m_r.Configuration.find(this.context.cwd,this.context.plugins),{project:s,workspace:a}=await h_r.Project.find(r,this.context.cwd),o=[];this.files.length&&o.push(this.files.join(" ")),this.watch&&o.push("-w"),a&&(o.push("-t"),o.push(this.context.cwd)),this.testReporter&&o.push(`--test-reporter=${this.testReporter}`);let g=await __r.xfs.mktempPromise(),p=await rwi.scriptUtils.makeScriptEnv({binFolder:g,project:s});if(p.NODE_OPTIONS?.includes("--no-warnings")||(p.NODE_OPTIONS=`${p.NODE_OPTIONS??""} --no-warnings=DeprecationWarning`),!p.NODE_OPTIONS.includes("@atls/code-runtime/ts-node-register")){p.NODE_OPTIONS=`${p.NODE_OPTIONS} --loader @atls/code-runtime/ts-node-register`;let m=iwi.ppath.join(s.cwd,twi.Filename.pnpEsmLoader);await __r.xfs.existsPromise(m)&&(p.NODE_OPTIONS=`${p.NODE_OPTIONS} --loader ${eMa(swi.npath.fromPortablePath(m)).href}`),p.NODE_OPTIONS=`${p.NODE_OPTIONS} --loader @atls/code-runtime/ts-ext-register`}p.NODE_OPTIONS.includes("--enable-source-maps")||(p.NODE_OPTIONS=`${p.NODE_OPTIONS} --enable-source-maps`),p.COMMAND_PROXY_EXECUTION="true";let{code:f}=await nwi.execUtils.pipevp("yarn",["test",t??"",...o],{cwd:s.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:p});return f}async executeRegular(t){let r=await m_r.Configuration.find(this.context.cwd,this.context.plugins),{project:s}=await h_r.Project.find(r,this.context.cwd),a=m=>{this.bufferedStd(m,y=>{this.renderStdBuffer(y)})},o=m=>{this.bufferedStd(m,y=>{this.renderStdBuffer(y)})},g=m=>{let y=m.file?$5a(m.file,"utf8"):void 0;Gy((0,xwe.jsx)(MSi,{details:m.details,source:y,file:m.file?$Si(s.cwd,m.file):void 0,column:m.column,line:m.line})).split(` +`).forEach(B=>{console.error(B)})},p=await bU.initialize(this.context.cwd);p.on("test:stdout",a),p.on("test:stderr",o),p.on("test:fail",g);let{clear:f}=(0,owi.render)((0,xwe.jsx)(qSi,{cwd:s.cwd,tester:p}));try{return(t==="integration"?await p.integration(this.target??s.cwd,{files:this.files,watch:this.watch}):await p.unit(this.target??s.cwd,{files:this.files,watch:this.watch})).find(y=>y.type==="test:fail")?1:0}catch(m){return m instanceof Error?Gy((0,xwe.jsx)(MD,{error:m})).split(` `).forEach(y=>{console.error(y)}):console.error(m),1}finally{this.flushBufferedStd(),p.off("test:stdout",a),p.off("test:stderr",o),p.off("test:fail",g),f()}}bufferedStd(t,r){if(this.std.keys().next().value)if(this.std.has(t.file))this.std.get(t.file)?.push(t.message),this.bufferedStdTimeout&&clearTimeout(this.bufferedStdTimeout),this.bufferedStdTimeout=setTimeout(()=>{let s=this.std.keys().next().value;r({file:s,messages:this.std.get(s)??[]}),this.std.delete(s)},100);else{let s=this.std.keys().next().value;r({file:s,messages:this.std.get(s)??[]}),this.std.delete(s),this.std.set(t.file,[t.message])}else this.std.set(t.file,[t.message])}renderStdBuffer({file:t,messages:r}){let s=r.map(g=>g.split(` -`).filter(Boolean)).flat(),{logRecords:a,raw:o}=s.reduce((g,p)=>{try{let f=JSON.parse(p);return{...g,logRecords:[...g.logRecords,f]}}catch{return{...g,raw:[...g.raw,p]}}},{logRecords:[],raw:[]});a.forEach(g=>{console.log(ky(Rwe.default.createElement(lyt,{...g})))}),o.length>0&&console.log(ky(Rwe.default.createElement(GSi,{file:t?HSi(process.cwd(),t):void 0,messages:o})))}flushBufferedStd(){this.std.forEach((t,r)=>{this.renderStdBuffer({file:r,messages:t})})}};var A5e=class extends gq{static paths=[["test","integration"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(f_r.Filename.pnpCjs)&&t.includes(f_r.Filename.pnpEsmLoader)?this.executeRegular("integration"):this.executeProxy("integration")}};var I_r=xt(Ro(),1);var d5e=class extends gq{static paths=[["test","unit"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(I_r.Filename.pnpCjs)&&t.includes(I_r.Filename.pnpEsmLoader)?this.executeRegular("unit"):this.executeProxy("unit")}};var ewi=xt(Bn(),1),twi=xt(Bn(),1),C_r=xt(Ro(),1);var gyt=class extends gq{static paths=[["test"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(C_r.Filename.pnpCjs)&&t.includes(C_r.Filename.pnpEsmLoader)?this.executeRegular():this.executeProxy()}async executeRegular(){let t=await ewi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await twi.Project.find(t,this.context.cwd),s=await hU.initialize();try{return(await s.general(this.target??r.cwd,{files:this.files,watch:this.watch,testReporter:this.testReporter})).some(o=>o.includes("# fail ")?parseInt(o.split("# fail ")[1],2)>0:!1)?1:0}catch(a){return console.error(a),1}}};var rwi={commands:[A5e,d5e,gyt]};var w_r={};jf(w_r,{default:()=>Cwi});var lwi=xt(Bn(),1),uwi=xt(Bn(),1),gwi=xt(Bn(),1),__r=xt(Ro(),1),y_r=xt(Bn(),1),uoe=xt(Lh(),1);var nwi=xt(nl(),1),iwi=xt(Bn(),1),swi=xt(Bn(),1),h_r=xt(Ro(),1),owi=xt(Bn(),1),awi=xt(Bn(),1),cwi=xt(Ro(),1);Fl();var loe=class extends nwi.BaseCommand{static usage=Cb.Usage({description:"Update tools",details:"\n Update tools such as `tsconfig`, `typescript` version, `@atls/code-runtime` version\n ",examples:[["Update tsconfig","yarn tools tsconfig"],["Update runtime","yarn tools runtime"],["Update typescript version","yarn tools typescript"],["Update all","yarn tools sync"]]});async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(h_r.Filename.pnpCjs)&&t.includes(h_r.Filename.pnpEsmLoader)?this.executeRegular():this.executeProxy()}async executeProxy(t=["tools","sync"]){let r=await iwi.Configuration.find(this.context.cwd,this.context.plugins),{project:s}=await swi.Project.find(r,this.context.cwd),a=await cwi.xfs.mktempPromise(),{code:o}=await awi.execUtils.pipevp("yarn",t,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:await owi.scriptUtils.makeScriptEnv({binFolder:a,project:s})});return o}async executeRegular(){return 0}};var Ayt=class extends loe{static paths=[["tools","sync","typescript"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(__r.Filename.pnpCjs)&&t.includes(__r.Filename.pnpEsmLoader)?this.executeRegular():this.executeProxy(["tools","sync","typescript"])}async executeRegular(){let t=await lwi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await uwi.Project.find(t,this.context.cwd),s=(await import("@atls/code-runtime/package.json",{with:{type:"json"}})).default;return(await gwi.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await o.startTimerPromise("Tools sync typescript version",async()=>{if(r.topLevelWorkspace.manifest.raw.devDependencies){let g=y_r.structUtils.parseIdent("typescript"),p=Array.from(r.topLevelWorkspace.manifest.devDependencies.values()).find(f=>f.scope===g.scope&&f.name===g.name);p||(p=y_r.structUtils.makeDescriptor(g,s.dependencies.typescript)),uoe.default.valid(uoe.default.coerce(p.range))&&uoe.default.valid(uoe.default.coerce(s.dependencies.typescript))&&(uoe.default.eq(uoe.default.coerce(p.range)||"",uoe.default.coerce(s.dependencies.typescript)||"")||(p.range=s.dependencies.typescript)),r.topLevelWorkspace.manifest.devDependencies.set(p.identHash,p),await r.persist()}})})).exitCode()}};var Awi=xt(Bn(),1),dwi=xt(Bn(),1),pwi=xt(Bn(),1),b_r=xt(Ro(),1),p5e=xt(Ro(),1),E_r=xt(Ro(),1),B_r=xt(Cur(),1);import WQa from"node:assert";var PQa=(e,t,r)=>{let s=e.slice();return t.forEach((a,o)=>{typeof s[o]>"u"?s[o]=r?.cloneUnlessOtherwiseSpecified(a,r):r?.isMergeableObject(a)?s[o]=(0,B_r.default)(e[o],a,r):e.includes(a)||s.push(a)}),s},OQa=e=>e.endsWith("/**/*")?e:!e.endsWith("/**/*")&&e.endsWith("/*")?e.replace("/*","/**/*"):e,dyt=class extends loe{static paths=[["tools","sync","tsconfig"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(b_r.Filename.pnpCjs)&&t.includes(b_r.Filename.pnpEsmLoader)?this.executeRegular():this.executeProxy(["tools","sync","tsconfig"])}async executeRegular(){let t=await Awi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await dwi.Project.find(t,this.context.cwd);return(await pwi.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{await a.startTimerPromise("Tools sync typescript config",async()=>{let o=E_r.ppath.join(r.topLevelWorkspace.cwd,"tsconfig.json"),g=await p5e.xfs.existsPromise(o)?await p5e.xfs.readJsonPromise(o):{compilerOptions:{}};await p5e.xfs.writeFilePromise(E_r.ppath.join(r.topLevelWorkspace.cwd,"project.types.d.ts"),`/// -`);let p=(0,B_r.default)(g,{compilerOptions:yU.compilerOptions},{arrayMerge:PQa}),f=(r.topLevelWorkspace.manifest.raw.workspaces||[]).map(OQa),m={...p,include:Array.from(new Set(["project.types.d.ts",...p.include,...f]))};try{WQa.deepEqual(g,m)}catch{await p5e.xfs.writeJsonPromise(o,m)}})})).exitCode()}};var MQa=[["tools","sync","typescript"],["tools","sync","tsconfig"],["install"]],pyt=class extends loe{static paths=[["tools","sync"]];async executeRegular(){for(let t of MQa){let r=await this.cli.run(t);if(r!==0)return r}return 0}};var v_r=xt(Bn(),1),fwi=async(e,t)=>{await v_r.execUtils.pipevp("yarn",["tools","sync"],{cwd:t.cwd,stdin:t.stdin,stdout:t.stdout,stderr:t.stderr,end:v_r.execUtils.EndStrategy.ErrorCode})};var Dwe=xt(Ro(),1),goe=xt(Ro(),1);import{spawnSync as QQa}from"node:child_process";var S_r=e=>`${e}`,YQa=e=>QQa("git",e,{encoding:"utf-8"}),Iwi=async e=>{if(process.env.GITHUB_ACTIONS){console.log("AFTER INSTALL HOOK: Execution in GitHub Action");return}if(process.env.IMAGE_PACK)return;let t=Dwe.ppath.join(e.cwd,".config/husky"),r=Dwe.ppath.join(t,"_");await goe.xfs.existsPromise(r)&&await goe.xfs.removePromise(t),await goe.xfs.existsPromise(t)||await goe.xfs.mkdirPromise(t,{recursive:!0}),await goe.xfs.writeFilePromise(Dwe.ppath.join(t,"commit-msg"),S_r("yarn commit message lint"),{mode:493}),await goe.xfs.writeFilePromise(Dwe.ppath.join(t,"pre-commit"),S_r("yarn commit staged"),{mode:493}),await goe.xfs.writeFilePromise(Dwe.ppath.join(t,"prepare-commit-msg"),S_r("yarn commit message $@"),{mode:493});let{error:s}=YQa(["config","core.hooksPath",t]);if(s)throw s};var Cwi={hooks:{afterAllInstalled:Iwi,afterYarnVersionSet:fwi},commands:[pyt,Ayt,dyt]};var x_r={};jf(x_r,{TypeCheckCommand:()=>f5e,default:()=>bwi});var mwi=xt(nl(),1),T_r=xt(Bn(),1),N_r=xt(Bn(),1),R_r=xt(Ro(),1),hwi=xt(Bn(),1),_wi=xt(Bn(),1),D_r=xt(Ro(),1),fyt=xt(Ro(),1);Fl();var ywi=xt(Dc(),1),Iyt=xt(Fs(),1);var f5e=class extends mwi.BaseCommand{static paths=[["typecheck"]];args=ed.Rest({required:0});async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(R_r.Filename.pnpCjs)&&t.includes(R_r.Filename.pnpEsmLoader)?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await T_r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await N_r.Project.find(t,this.context.cwd),s=await fyt.xfs.mktempPromise(),{code:a}=await _wi.execUtils.pipevp("yarn",["typecheck",...this.args],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:await hwi.scriptUtils.makeScriptEnv({binFolder:s,project:r})});return a}async executeRegular(){let t=await T_r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await N_r.Project.find(t,this.context.cwd),s=await xie.initialize(r.cwd),{clear:a}=(0,ywi.render)(Iyt.default.createElement(tht,{typescript:s}));try{let o=await s.check(await this.getIncludes(r));return o.forEach(g=>{ky(Iyt.default.createElement(eht,{...g})).split(` -`).forEach(p=>{console.log(p)})}),o.length===0?0:1}catch(o){return ky(Iyt.default.createElement(WD,{error:o})).split(` -`).forEach(g=>{console.error(g)}),1}finally{a()}}async getIncludes(t){if(this.args.length>0)return this.args;if(await fyt.xfs.existsPromise(D_r.ppath.join(t.cwd,"tsconfig.json"))){let r=await fyt.xfs.readJsonPromise(D_r.ppath.join(t.cwd,"tsconfig.json"));if(r.include&&r.include.length>0)return r.include}return t.topLevelWorkspace.manifest.workspaceDefinitions.map(r=>r.pattern)}};var bwi={commands:[f5e]};var k_r={};jf(k_r,{WorkspacesChangedForeachCommand:()=>I5e,WorkspacesChangedListCommand:()=>C5e,default:()=>Fwi});var Ewi=xt(nl(),1),Bwi=xt(nl(),1),vwi=xt(Bn(),1),Swi=xt(Bn(),1),wwi=xt(Bn(),1),Twi=xt(Bn(),1);Fl();var I5e=class extends Ewi.BaseCommand{static paths=[["workspaces","changed","foreach"]];exclude=ed.String("--exclude","");verbose=ed.Boolean("-v,--verbose",!1);parallel=ed.Boolean("-p,--parallel",!1);workTree=ed.Boolean("-W,--worktree",!0);all=ed.Boolean("-A,--all",!1);recursive=ed.Boolean("-R,--recursive",!1);since=ed.String("--since","");interlaced=ed.Boolean("-i,--interlaced",!1);publicOnly=ed.Boolean("--no-private",!1);topological=ed.Boolean("-t,--topological",!1);topologicalDev=ed.Boolean("--topological-dev",!1);jobs=ed.String("-j,--jobs");commandName=ed.String();args=ed.Proxy();async execute(){let t=await vwi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await Swi.Project.find(t,this.context.cwd);if(!s)throw new Bwi.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=await cz(r),o=q2e(r,a);if(!o.length)return(await wwi.StreamReport.start({configuration:t,stdout:this.context.stdout},async f=>{f.reportInfo(null,"No workspaces changed")})).exitCode();let g=["workspaces","foreach"];return o.forEach(p=>{g.push("--include"),g.push(Twi.structUtils.stringifyIdent(p.anchoredLocator))}),this.all?g.push("--all"):this.since.length>0?(g.push("--since"),g.push(this.since)):this.workTree&&g.push("--worktree"),this.exclude&&(g.push("--exclude"),g.push(this.exclude)),this.verbose&&g.push("--verbose"),this.parallel&&g.push("--parallel"),this.interlaced&&g.push("--interlaced"),this.publicOnly&&g.push("--no-private"),this.topological&&g.push("--topological"),this.topologicalDev&&g.push("--topological-dev"),this.jobs&&g.push("--jobs"),this.cli.run([...g,this.commandName,...this.args],{cwd:r.cwd})}};var Nwi=xt(nl(),1),Rwi=xt(nl(),1),Dwi=xt(Bn(),1),xwi=xt(Bn(),1),kwi=xt(Bn(),1),Gwi=xt(Bn(),1);Fl();var C5e=class extends Nwi.BaseCommand{static paths=[["workspaces","changed","list"]];json=ed.Boolean("--json",!1);async execute(){let t=await Dwi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await xwi.Project.find(t,this.context.cwd);if(!s)throw new Rwi.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await kwi.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async o=>{let g=await cz(r),p=q2e(r,g);for(let f of p)o.reportInfo(null,f.relativeCwd),o.reportJson({name:f.manifest.name?Gwi.structUtils.stringifyIdent(f.manifest.name):null,location:f.relativeCwd})})).exitCode()}};var Fwi={commands:[I5e,C5e]};var j_r={};jf(j_r,{UiIconsGenerateCommand:()=>y5e,default:()=>jTi});var HTi=xt(nl(),1),X_r=xt(Bn(),1),J_r=xt(Bn(),1),U_r=xt(Ro(),1),XTi=xt(Bn(),1),JTi=xt(Bn(),1),UTi=xt(Ro(),1);Fl();import{join as YTi}from"node:path";import{relative as pHa}from"node:path";var KTi=xt(Dc(),1),K_r=xt(Fs(),1);var m5e=xt(Dc(),1),Qwi=xt(Fs(),1),Ywi=xt(Fs(),1),vIe=xt(Fs(),1);var Zwi=xt(Fs(),1),Lwi=xt(Fs(),1),Vwi=xt(Fs(),1),Wwi=({icons:e})=>{let[t,r]=(0,Lwi.useState)(0);return(0,Zwi.useEffect)(()=>{let s=()=>{r(33)},a=()=>{r(66)},o=()=>{r(100)};return e.on("read:end",s),e.on("transform:end",a),e.on("save:end",o),()=>{e.off("read:end",s),e.off("transform:end",a),e.off("save:end",o)}},[e,r]),Vwi.default.createElement(fM,{value:t})};var Cyt=xt(Dc(),1),myt=xt(Dc(),1),Pwi=xt(Fs(),1),Owi=xt(Fs(),1),Aoe=xt(Fs(),1);var Mwi=({icons:e})=>{let[t,r]=(0,Owi.useState)("Initilization...");return(0,Pwi.useEffect)(()=>{let s=()=>{r("Reading files...")},a=()=>{r("Transforming files...")},o=()=>{r("Saving files...")};return e.on("read:start",s),e.on("transform:start",a),e.on("save:start",o),()=>{e.off("read:start",s),e.off("transform:start",a),e.off("save:start",o)}},[e,r]),Aoe.default.createElement(Cyt.Box,{flexDirection:"row",width:"100%"},Aoe.default.createElement(Cyt.Box,{flexGrow:1},Aoe.default.createElement(Dk,{color:"cyan"},"Icons:"),Aoe.default.createElement(myt.Text,null," "),Aoe.default.createElement(myt.Text,{color:"white"},t)),Aoe.default.createElement(Cyt.Box,{flexDirection:"row"},Aoe.default.createElement(myt.Text,{color:"green"},yI.tick)))};var Hwi=({icons:e})=>{let[t,r]=(0,Qwi.useState)(!1);return(0,Ywi.useEffect)(()=>{let s=()=>{setTimeout(()=>{r(!0)},1)};return e.on("save:end",s),()=>{e.off("save:end",s)}},[r]),t?null:vIe.default.createElement(m5e.Box,{position:"relative",height:7},vIe.default.createElement(m5e.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%"},vIe.default.createElement(m5e.Box,null,vIe.default.createElement(Mwi,{icons:e})),vIe.default.createElement(m5e.Box,{marginTop:1,marginBottom:1},vIe.default.createElement(Wwi,{icons:e}))))};import aHa from"node:events";import{access as cHa}from"node:fs/promises";import{mkdtemp as lHa}from"node:fs/promises";import{readFile as uHa}from"node:fs/promises";import{readdir as gHa}from"node:fs/promises";import{writeFile as OTi}from"node:fs/promises";import{mkdir as AHa}from"node:fs/promises";import{tmpdir as dHa}from"node:os";import{join as Aq}from"node:path";import{basename as MTi}from"node:path";import{extname as QTi}from"node:path";var HQa=/[\p{Lu}]/u,XQa=/[\p{Ll}]/u,Xwi=/^[\p{Lu}](?![\p{Lu}])/gu,Kwi=/([\p{Alpha}\p{N}_]|$)/u,G_r=/[_.\- ]+/,JQa=new RegExp("^"+G_r.source),Jwi=new RegExp(G_r.source+Kwi.source,"gu"),Uwi=new RegExp("\\d+"+Kwi.source,"gu"),UQa=(e,t,r,s)=>{let a=!1,o=!1,g=!1,p=!1;for(let f=0;f2?e[f-3]==="-":!0,a&&HQa.test(m)?(e=e.slice(0,f)+"-"+e.slice(f),a=!1,g=o,o=!0,f++):o&&g&&XQa.test(m)&&(!p||s)?(e=e.slice(0,f-1)+"-"+e.slice(f-1),g=o,o=!1,a=!0):(a=t(m)===m&&r(m)!==m,g=o,o=r(m)===m&&t(m)!==m)}return e},KQa=(e,t)=>(Xwi.lastIndex=0,e.replaceAll(Xwi,r=>t(r))),jQa=(e,t)=>(Jwi.lastIndex=0,Uwi.lastIndex=0,e.replaceAll(Uwi,(r,s,a)=>["_","-"].includes(e.charAt(a+r.length))?r:t(r)).replaceAll(Jwi,(r,s)=>t(s)));function F_r(e,t){if(!(typeof e=="string"||Array.isArray(e)))throw new TypeError("Expected the input to be `string | string[]`");if(t={pascalCase:!1,preserveConsecutiveUppercase:!1,...t},Array.isArray(e)?e=e.map(o=>o.trim()).filter(o=>o.length).join("-"):e=e.trim(),e.length===0)return"";let r=t.locale===!1?o=>o.toLowerCase():o=>o.toLocaleLowerCase(t.locale),s=t.locale===!1?o=>o.toUpperCase():o=>o.toLocaleUpperCase(t.locale);return e.length===1?G_r.test(e)?"":t.pascalCase?s(e):r(e):(e!==r(e)&&(e=UQa(e,r,s,t.preserveConsecutiveUppercase)),e=e.replace(JQa,""),e=t.preserveConsecutiveUppercase?KQa(e,r):r(e),t.pascalCase&&(e=s(e.charAt(0))+e.slice(1)),jQa(e,s))}var PTi=xt(WTi(),1);import{writeFile as iHa}from"node:fs/promises";import{mkdtemp as sHa}from"node:fs/promises";import{tmpdir as oHa}from"node:os";import{join as Dyt}from"node:path";var xyt=class{constructor(t,r,s){this.loaders=t;this.cwd=r;this.target=s}async build(){let t=new PTi.default;return await this.applyCommon(t),await this.applyModules(t),t.toConfig()}async applyCommon(t){t.mode("development").bail(!1).target("async-node").optimization.minimize(!1),t.entry("replacements").add(Dyt(this.cwd,"replacements")),t.entry("template").add(Dyt(this.cwd,"template")),t.output.path(this.target).filename("[name].mjs"),t.output.library({type:"module"}),t.output.chunkFormat("module"),t.output.module(!0),t.resolve.extensions.add(".tsx").add(".ts").add(".js"),t.resolve.extensionAlias.set(".js",[".js",".ts"]).set(".jsx",[".jsx",".tsx"]).set(".cjs",[".cjs",".cts"]).set(".mjs",[".mjs",".mts"]),t.externalsType("import"),t.externalsPresets({node:!0}),t.experiments({outputModule:!0})}async applyModules(t){let r=Dyt(await sHa(Dyt(oHa(),"tools-icons-")),"tsconfig.json");await iHa(r,'{"include":["**/*"]}'),t.module.rule("ts").test(/.tsx?$/).use("ts").loader(this.loaders.tsLoader).options({transpileOnly:!0,experimentalWatchApi:!0,onlyCompileBundledFiles:!0,compilerOptions:{...yU.compilerOptions,sourceMap:!0},context:this.cwd,configFile:r})}};var kyt=class e extends aHa{constructor(r,s,a,o){super();this.svgr=r;this.webpack=s;this.loaders=a;this.cwd=o}static async initialize(r){let{transform:s,jsx:a}=await import("@atls/code-runtime/svgr"),{webpack:o,tsLoaderPath:g}=await import("@atls/code-runtime/webpack");return new e({transform:s,jsx:a},o,{tsLoader:g},r)}async generate(r={}){await this.save(await this.transform(await this.read(Aq(this.cwd,"icons")),r))}async compileReplacementsAndTemplate(){let r=await lHa(Aq(dHa(),"tools-icons-")),s=this.webpack(await new xyt(this.loaders,this.cwd,r).build());return await new Promise((a,o)=>{s.run(g=>{g&&o(g),a([])})}),{replacements:(await import(Aq(r,"replacements.mjs"))).default,template:(await import(Aq(r,"template.mjs"))).default}}async read(r){this.emit("read:start");let s=await gHa(r),a=await Promise.all(s.filter(o=>o.endsWith(".svg")).map(async o=>({source:await uHa(Aq(r,o),"utf8"),component:F_r(MTi(o,QTi(o)),{pascalCase:!0}),name:MTi(o,QTi(o)),path:Aq(r,o),file:o})));return this.emit("read:end"),a}async transform(r,s){this.emit("transform:start");let{replacements:a,template:o}=await this.compileReplacementsAndTemplate(),g=await Promise.all(r.map(async p=>{let f=await this.svgr.transform(p.source,{...s,icon:!0,template:o,typescript:!0,expandProps:!0,replaceAttrValues:a[`${p.component}Icon`]||{}},{componentName:`${p.component}Icon`,caller:{name:"@atls/code-icons",defaultPlugins:[this.svgr.jsx]}});return{...p,output:f}}));return this.emit("transform:end"),g}async save(r){this.emit("save:start");let s=Aq(this.cwd,"src");try{await cHa(s)}catch{await AHa(s,{recursive:!0})}await Promise.all(r.map(async a=>OTi(Aq(s,`${a.name}.icon.tsx`),a.output))),await OTi(Aq(s,"index.ts"),r.map(a=>`export * from './${a.name}.icon.jsx'`).join(` -`)),this.emit("save:end")}};var y5e=class extends HTi.BaseCommand{static paths=[["ui","icons","generate"]];native=ed.Boolean("-n, --native",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(U_r.Filename.pnpCjs)&&t.includes(U_r.Filename.pnpEsmLoader)?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await X_r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await J_r.Project.find(t,this.context.cwd),s=await UTi.xfs.mktempPromise(),a=[];this.native&&a.push("--native");let{code:o}=await XTi.execUtils.pipevp("yarn",["ui","icons","generate",...a],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:await JTi.scriptUtils.makeScriptEnv({binFolder:s,project:r})});return o}async executeRegular(){let t=await X_r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await J_r.Project.find(t,this.context.cwd),s=await kyt.initialize(this.context.cwd),{clear:a}=(0,KTi.render)(K_r.default.createElement(Hwi,{icons:s}));try{await s.generate({native:this.native});let o=(await Gj("*.tsx",{cwd:YTi(this.context.cwd,"src")})).map(g=>YTi(pHa(r.cwd,this.context.cwd),"src",g));return await this.cli.run(["format",...o],{cwd:r.cwd}),await this.cli.run(["lint","--fix",...o],{cwd:r.cwd}),0}catch(o){return o instanceof Error?ky(K_r.default.createElement(WD,{error:o})).split(` -`).forEach(g=>{console.error(g)}):console.error(o),1}finally{a()}}};var jTi={commands:[y5e]};var lvr={};jf(lvr,{default:()=>aVi});var iVi=xt(nl(),1),sVi=xt(Bn(),1),oVi=xt(Bn(),1);Fl();var zTi=(e,t)=>({stdout:e.context.stdout,configuration:t});var tVi=xt(Ro(),1),rVi=xt(Ro(),1);var K9i=xt(uNe(),1),j9i=xt(J9i(),1);var U9i=e=>{let t=e.path;switch(e.kind){case"error":console.error(`ERROR! ${t} ${e.description==="alreadyExist"?"already exists":"does not exist"}.`);break;case"update":console.debug(`UPDATE ${t} (${e.content.length} bytes)`);break;case"create":console.debug(`CREATE ${t} (${e.content.length} bytes)`);break;case"delete":console.debug(`DELETE ${t}`);break;case"rename":console.debug(`RENAME ${t} => ${e.to}`);break}};var z9i=async(e,t,r)=>{let o=!0,g=new j9i.NodeWorkflow(process.cwd(),{force:!1,dryRun:!1,resolvePaths:[process.cwd(),import.meta.dirname],packageManager:"yarn"});g.reporter.subscribe(p=>{o=!1,U9i(p)});try{return await g.execute({collection:r,schematic:e,options:t,allowPrivate:!0,debug:!0}).toPromise(),o&&console.info("Nothing to be done."),0}catch(p){return p instanceof K9i.UnsuccessfulWorkflowExecution?console.debug("The Schematic workflow failed. See above."):p instanceof Error?console.debug(`An error occured: -${p.stack}`):console.debug(`Error: ${p instanceof Error?p.message:p}`),1}};var cvr=xt(Ro(),1);import{mkdir as VCc}from"node:fs/promises";var LCc="dmFyIF9fY3JlYXRlID0gT2JqZWN0LmNyZWF0ZTsKdmFyIF9fZGVmUHJvcCA9IE9iamVjdC5kZWZpbmVQcm9wZXJ0eTsKdmFyIF9fZ2V0T3duUHJvcERlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yOwp2YXIgX19nZXRPd25Qcm9wTmFtZXMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lczsKdmFyIF9fZ2V0UHJvdG9PZiA9IE9iamVjdC5nZXRQcm90b3R5cGVPZjsKdmFyIF9faGFzT3duUHJvcCA9IE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7CnZhciBfX2NvbW1vbkpTID0gKGNiLCBtb2QpID0+IGZ1bmN0aW9uIF9fcmVxdWlyZSgpIHsKICByZXR1cm4gbW9kIHx8ICgwLCBjYltfX2dldE93blByb3BOYW1lcyhjYilbMF1dKSgobW9kID0geyBleHBvcnRzOiB7fSB9KS5leHBvcnRzLCBtb2QpLCBtb2QuZXhwb3J0czsKfTsKdmFyIF9fZXhwb3J0ID0gKHRhcmdldCwgYWxsKSA9PiB7CiAgZm9yICh2YXIgbmFtZSBpbiBhbGwpCiAgICBfX2RlZlByb3AodGFyZ2V0LCBuYW1lLCB7IGdldDogYWxsW25hbWVdLCBlbnVtZXJhYmxlOiB0cnVlIH0pOwp9Owp2YXIgX19jb3B5UHJvcHMgPSAodG8sIGZyb20sIGV4Y2VwdCwgZGVzYykgPT4gewogIGlmIChmcm9tICYmIHR5cGVvZiBmcm9tID09PSAib2JqZWN0IiB8fCB0eXBlb2YgZnJvbSA9PT0gImZ1bmN0aW9uIikgewogICAgZm9yIChsZXQga2V5IG9mIF9fZ2V0T3duUHJvcE5hbWVzKGZyb20pKQogICAgICBpZiAoIV9faGFzT3duUHJvcC5jYWxsKHRvLCBrZXkpICYmIGtleSAhPT0gZXhjZXB0KQogICAgICAgIF9fZGVmUHJvcCh0bywga2V5LCB7IGdldDogKCkgPT4gZnJvbVtrZXldLCBlbnVtZXJhYmxlOiAhKGRlc2MgPSBfX2dldE93blByb3BEZXNjKGZyb20sIGtleSkpIHx8IGRlc2MuZW51bWVyYWJsZSB9KTsKICB9CiAgcmV0dXJuIHRvOwp9Owp2YXIgX190b0VTTSA9IChtb2QsIGlzTm9kZU1vZGUsIHRhcmdldCkgPT4gKHRhcmdldCA9IG1vZCAhPSBudWxsID8gX19jcmVhdGUoX19nZXRQcm90b09mKG1vZCkpIDoge30sIF9fY29weVByb3BzKAogIC8vIElmIHRoZSBpbXBvcnRlciBpcyBpbiBub2RlIGNvbXBhdGliaWxpdHkgbW9kZSBvciB0aGlzIGlzIG5vdCBhbiBFU00KICAvLyBmaWxlIHRoYXQgaGFzIGJlZW4gY29udmVydGVkIHRvIGEgQ29tbW9uSlMgZmlsZSB1c2luZyBhIEJhYmVsLQogIC8vIGNvbXBhdGlibGUgdHJhbnNmb3JtIChpLmUuICJfX2VzTW9kdWxlIiBoYXMgbm90IGJlZW4gc2V0KSwgdGhlbiBzZXQKICAvLyAiZGVmYXVsdCIgdG8gdGhlIENvbW1vbkpTICJtb2R1bGUuZXhwb3J0cyIgZm9yIG5vZGUgY29tcGF0aWJpbGl0eS4KICBpc05vZGVNb2RlIHx8ICFtb2QgfHwgIW1vZC5fX2VzTW9kdWxlID8gX19kZWZQcm9wKHRhcmdldCwgImRlZmF1bHQiLCB7IHZhbHVlOiBtb2QsIGVudW1lcmFibGU6IHRydWUgfSkgOiB0YXJnZXQsCiAgbW9kCikpOwp2YXIgX190b0NvbW1vbkpTID0gKG1vZCkgPT4gX19jb3B5UHJvcHMoX19kZWZQcm9wKHt9LCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSksIG1vZCk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3V0aWxzLmpzCnZhciByZXF1aXJlX3V0aWxzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vdXRpbHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmlzSnNvbk9iamVjdCA9IGlzSnNvbk9iamVjdDsKICAgIGV4cG9ydHMyLmlzSnNvbkFycmF5ID0gaXNKc29uQXJyYXk7CiAgICBmdW5jdGlvbiBpc0pzb25PYmplY3QodmFsdWUpIHsKICAgICAgcmV0dXJuIHZhbHVlICE9IG51bGwgJiYgdHlwZW9mIHZhbHVlID09PSAib2JqZWN0IiAmJiAhQXJyYXkuaXNBcnJheSh2YWx1ZSk7CiAgICB9CiAgICBmdW5jdGlvbiBpc0pzb25BcnJheSh2YWx1ZSkgewogICAgICByZXR1cm4gQXJyYXkuaXNBcnJheSh2YWx1ZSk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3V0aWxpdHkuanMKdmFyIHJlcXVpcmVfdXRpbGl0eSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS91dGlsaXR5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5nZXRUeXBlc09mU2NoZW1hID0gZ2V0VHlwZXNPZlNjaGVtYTsKICAgIHZhciB1dGlsc18xID0gcmVxdWlyZV91dGlscygpOwogICAgdmFyIGFsbFR5cGVzID0gWyJzdHJpbmciLCAiaW50ZWdlciIsICJudW1iZXIiLCAib2JqZWN0IiwgImFycmF5IiwgImJvb2xlYW4iLCAibnVsbCJdOwogICAgZnVuY3Rpb24gZ2V0VHlwZXNPZlNjaGVtYShzY2hlbWEpIHsKICAgICAgaWYgKCFzY2hlbWEpIHsKICAgICAgICByZXR1cm4gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgfQogICAgICBpZiAoc2NoZW1hID09PSB0cnVlKSB7CiAgICAgICAgcmV0dXJuIG5ldyBTZXQoYWxsVHlwZXMpOwogICAgICB9CiAgICAgIGxldCBwb3RlbnRpYWxzOwogICAgICBpZiAodHlwZW9mIHNjaGVtYS50eXBlID09PSAic3RyaW5nIikgewogICAgICAgIHBvdGVudGlhbHMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbc2NoZW1hLnR5cGVdKTsKICAgICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KHNjaGVtYS50eXBlKSkgewogICAgICAgIHBvdGVudGlhbHMgPSBuZXcgU2V0KHNjaGVtYS50eXBlKTsKICAgICAgfSBlbHNlIGlmICgoMCwgdXRpbHNfMS5pc0pzb25BcnJheSkoc2NoZW1hLmVudW0pKSB7CiAgICAgICAgcG90ZW50aWFscyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgZm9yIChjb25zdCB2IG9mIHNjaGVtYS5lbnVtKSB7CiAgICAgICAgICBzd2l0Y2ggKHR5cGVvZiB2KSB7CiAgICAgICAgICAgIGNhc2UgInN0cmluZyI6CiAgICAgICAgICAgIGNhc2UgIm51bWJlciI6CiAgICAgICAgICAgIGNhc2UgImJvb2xlYW4iOgogICAgICAgICAgICAgIHBvdGVudGlhbHMuYWRkKHR5cGVvZiB2KTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAib2JqZWN0IjoKICAgICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheSh2KSkgewogICAgICAgICAgICAgICAgcG90ZW50aWFscy5hZGQoImFycmF5Iik7CiAgICAgICAgICAgICAgfSBlbHNlIGlmICh2ID09PSBudWxsKSB7CiAgICAgICAgICAgICAgICBwb3RlbnRpYWxzLmFkZCgibnVsbCIpOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBwb3RlbnRpYWxzLmFkZCgib2JqZWN0Iik7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfSBlbHNlIHsKICAgICAgICBwb3RlbnRpYWxzID0gbmV3IFNldChhbGxUeXBlcyk7CiAgICAgIH0KICAgICAgaWYgKCgwLCB1dGlsc18xLmlzSnNvbk9iamVjdCkoc2NoZW1hLm5vdCkpIHsKICAgICAgICBjb25zdCBub3RUeXBlcyA9IGdldFR5cGVzT2ZTY2hlbWEoc2NoZW1hLm5vdCk7CiAgICAgICAgcG90ZW50aWFscyA9IG5ldyBTZXQoWy4uLnBvdGVudGlhbHNdLmZpbHRlcigocCkgPT4gIW5vdFR5cGVzLmhhcyhwKSkpOwogICAgICB9CiAgICAgIGlmIChBcnJheS5pc0FycmF5KHNjaGVtYS5hbGxPZikpIHsKICAgICAgICBmb3IgKGNvbnN0IHN1YiBvZiBzY2hlbWEuYWxsT2YpIHsKICAgICAgICAgIGNvbnN0IHR5cGVzID0gZ2V0VHlwZXNPZlNjaGVtYShzdWIpOwogICAgICAgICAgcG90ZW50aWFscyA9IG5ldyBTZXQoWy4uLnR5cGVzXS5maWx0ZXIoKHQpID0+IHBvdGVudGlhbHMuaGFzKHQpKSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGlmIChBcnJheS5pc0FycmF5KHNjaGVtYS5vbmVPZikpIHsKICAgICAgICBsZXQgb3B0aW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgZm9yIChjb25zdCBzdWIgb2Ygc2NoZW1hLm9uZU9mKSB7CiAgICAgICAgICBjb25zdCB0eXBlcyA9IGdldFR5cGVzT2ZTY2hlbWEoc3ViKTsKICAgICAgICAgIG9wdGlvbnMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbLi4ub3B0aW9ucywgLi4udHlwZXNdKTsKICAgICAgICB9CiAgICAgICAgcG90ZW50aWFscyA9IG5ldyBTZXQoWy4uLm9wdGlvbnNdLmZpbHRlcigobykgPT4gcG90ZW50aWFscy5oYXMobykpKTsKICAgICAgfQogICAgICBpZiAoQXJyYXkuaXNBcnJheShzY2hlbWEuYW55T2YpKSB7CiAgICAgICAgbGV0IG9wdGlvbnMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICAgIGZvciAoY29uc3Qgc3ViIG9mIHNjaGVtYS5hbnlPZikgewogICAgICAgICAgY29uc3QgdHlwZXMgPSBnZXRUeXBlc09mU2NoZW1hKHN1Yik7CiAgICAgICAgICBvcHRpb25zID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWy4uLm9wdGlvbnMsIC4uLnR5cGVzXSk7CiAgICAgICAgfQogICAgICAgIHBvdGVudGlhbHMgPSBuZXcgU2V0KFsuLi5vcHRpb25zXS5maWx0ZXIoKG8pID0+IHBvdGVudGlhbHMuaGFzKG8pKSk7CiAgICAgIH0KICAgICAgaWYgKHNjaGVtYS5wcm9wZXJ0aWVzKSB7CiAgICAgICAgcG90ZW50aWFscy5hZGQoIm9iamVjdCIpOwogICAgICB9IGVsc2UgaWYgKHNjaGVtYS5pdGVtcykgewogICAgICAgIHBvdGVudGlhbHMuYWRkKCJhcnJheSIpOwogICAgICB9CiAgICAgIHJldHVybiBwb3RlbnRpYWxzOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS90cmFuc2Zvcm1zLmpzCnZhciByZXF1aXJlX3RyYW5zZm9ybXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvdHJhbnNmb3Jtcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYWRkVW5kZWZpbmVkRGVmYXVsdHMgPSBhZGRVbmRlZmluZWREZWZhdWx0czsKICAgIHZhciB1dGlsc18xID0gcmVxdWlyZV91dGlscygpOwogICAgdmFyIHV0aWxpdHlfMSA9IHJlcXVpcmVfdXRpbGl0eSgpOwogICAgZnVuY3Rpb24gYWRkVW5kZWZpbmVkRGVmYXVsdHModmFsdWUsIF9wb2ludGVyLCBzY2hlbWEpIHsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEgPT09ICJib29sZWFuIiB8fCBzY2hlbWEgPT09IHZvaWQgMCkgewogICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgfQogICAgICB2YWx1ZSA/Pz0gc2NoZW1hLmRlZmF1bHQ7CiAgICAgIGNvbnN0IHR5cGVzID0gKDAsIHV0aWxpdHlfMS5nZXRUeXBlc09mU2NoZW1hKShzY2hlbWEpOwogICAgICBpZiAodHlwZXMuc2l6ZSA9PT0gMCkgewogICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgfQogICAgICBsZXQgdHlwZTsKICAgICAgaWYgKHR5cGVzLnNpemUgPT09IDEpIHsKICAgICAgICB0eXBlID0gQXJyYXkuZnJvbSh0eXBlcylbMF07CiAgICAgIH0gZWxzZSBpZiAodHlwZXMuc2l6ZSA9PT0gMiAmJiB0eXBlcy5oYXMoImFycmF5IikgJiYgdHlwZXMuaGFzKCJvYmplY3QiKSkgewogICAgICAgIHR5cGUgPSAiYXJyYXkiOwogICAgICB9IGVsc2UgaWYgKHNjaGVtYS5wcm9wZXJ0aWVzICYmIHR5cGVzLmhhcygib2JqZWN0IikpIHsKICAgICAgICB0eXBlID0gIm9iamVjdCI7CiAgICAgIH0gZWxzZSBpZiAoc2NoZW1hLml0ZW1zICYmIHR5cGVzLmhhcygiYXJyYXkiKSkgewogICAgICAgIHR5cGUgPSAiYXJyYXkiOwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgfQogICAgICBpZiAodHlwZSA9PT0gImFycmF5IikgewogICAgICAgIHJldHVybiB2YWx1ZSA9PSB2b2lkIDAgPyBbXSA6IHZhbHVlOwogICAgICB9CiAgICAgIGlmICh0eXBlID09PSAib2JqZWN0IikgewogICAgICAgIGxldCBuZXdWYWx1ZTsKICAgICAgICBpZiAodmFsdWUgPT0gdm9pZCAwKSB7CiAgICAgICAgICBuZXdWYWx1ZSA9IHt9OwogICAgICAgIH0gZWxzZSBpZiAoKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkpIHsKICAgICAgICAgIG5ld1ZhbHVlID0gdmFsdWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgICB9CiAgICAgICAgaWYgKCEoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHNjaGVtYS5wcm9wZXJ0aWVzKSkgewogICAgICAgICAgcmV0dXJuIG5ld1ZhbHVlOwogICAgICAgIH0KICAgICAgICBmb3IgKGNvbnN0IFtwcm9wTmFtZSwgc2NoZW1hT2JqZWN0XSBvZiBPYmplY3QuZW50cmllcyhzY2hlbWEucHJvcGVydGllcykpIHsKICAgICAgICAgIGlmIChwcm9wTmFtZSA9PT0gIiRzY2hlbWEiIHx8ICEoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHNjaGVtYU9iamVjdCkpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCB2YWx1ZTIgPSBuZXdWYWx1ZVtwcm9wTmFtZV07CiAgICAgICAgICBpZiAodmFsdWUyID09PSB2b2lkIDApIHsKICAgICAgICAgICAgbmV3VmFsdWVbcHJvcE5hbWVdID0gc2NoZW1hT2JqZWN0LmRlZmF1bHQ7CiAgICAgICAgICB9IGVsc2UgaWYgKCgwLCB1dGlsc18xLmlzSnNvbk9iamVjdCkodmFsdWUyKSkgewogICAgICAgICAgICBjb25zdCBwcm9wZXJ0eVNjaGVtYXMgPSBzY2hlbWFPYmplY3Qub25lT2YgfHwgc2NoZW1hT2JqZWN0LmFueU9mOwogICAgICAgICAgICBjb25zdCBhbGxQcm9wZXJ0aWVzID0gT2JqZWN0LmtleXModmFsdWUyKTsKICAgICAgICAgICAgY29uc3QgYWRqdXN0ZWRTY2hlbWEgPSAoMCwgdXRpbHNfMS5pc0pzb25BcnJheSkocHJvcGVydHlTY2hlbWFzKSAmJiBwcm9wZXJ0eVNjaGVtYXMuZmluZCgocykgPT4gewogICAgICAgICAgICAgIGlmICghKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KShzKSkgewogICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBjb25zdCBzY2hlbWFUeXBlID0gKDAsIHV0aWxpdHlfMS5nZXRUeXBlc09mU2NoZW1hKShzKTsKICAgICAgICAgICAgICBpZiAoc2NoZW1hVHlwZS5zaXplID09PSAxICYmIHNjaGVtYVR5cGUuaGFzKCJvYmplY3QiKSAmJiAoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHMucHJvcGVydGllcykpIHsKICAgICAgICAgICAgICAgIGNvbnN0IHByb3BlcnRpZXMgPSBPYmplY3Qua2V5cyhzLnByb3BlcnRpZXMpOwogICAgICAgICAgICAgICAgcmV0dXJuIGFsbFByb3BlcnRpZXMuZXZlcnkoKGtleSkgPT4gcHJvcGVydGllcy5pbmNsdWRlcyhrZXkpKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgICB9KTsKICAgICAgICAgICAgaWYgKGFkanVzdGVkU2NoZW1hICYmICgwLCB1dGlsc18xLmlzSnNvbk9iamVjdCkoYWRqdXN0ZWRTY2hlbWEpKSB7CiAgICAgICAgICAgICAgbmV3VmFsdWVbcHJvcE5hbWVdID0gYWRkVW5kZWZpbmVkRGVmYXVsdHModmFsdWUyLCBfcG9pbnRlciwgYWRqdXN0ZWRTY2hlbWEpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBuZXdWYWx1ZTsKICAgICAgfQogICAgICByZXR1cm4gdmFsdWU7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL2ludGVyZmFjZS5qcwp2YXIgcmVxdWlyZV9pbnRlcmZhY2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvaW50ZXJmYWNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3BvaW50ZXIuanMKdmFyIHJlcXVpcmVfcG9pbnRlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9wb2ludGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5idWlsZEpzb25Qb2ludGVyID0gYnVpbGRKc29uUG9pbnRlcjsKICAgIGV4cG9ydHMyLmpvaW5Kc29uUG9pbnRlciA9IGpvaW5Kc29uUG9pbnRlcjsKICAgIGV4cG9ydHMyLnBhcnNlSnNvblBvaW50ZXIgPSBwYXJzZUpzb25Qb2ludGVyOwogICAgZnVuY3Rpb24gYnVpbGRKc29uUG9pbnRlcihmcmFnbWVudHMpIHsKICAgICAgcmV0dXJuICIvIiArIGZyYWdtZW50cy5tYXAoKGYpID0+IHsKICAgICAgICByZXR1cm4gZi5yZXBsYWNlKC9+L2csICJ+MCIpLnJlcGxhY2UoL1wvL2csICJ+MSIpOwogICAgICB9KS5qb2luKCIvIik7CiAgICB9CiAgICBmdW5jdGlvbiBqb2luSnNvblBvaW50ZXIocm9vdCwgLi4ub3RoZXJzKSB7CiAgICAgIGlmIChyb290ID09ICIvIikgewogICAgICAgIHJldHVybiBidWlsZEpzb25Qb2ludGVyKG90aGVycyk7CiAgICAgIH0KICAgICAgcmV0dXJuIHJvb3QgKyBidWlsZEpzb25Qb2ludGVyKG90aGVycyk7CiAgICB9CiAgICBmdW5jdGlvbiBwYXJzZUpzb25Qb2ludGVyKHBvaW50ZXIpIHsKICAgICAgaWYgKHBvaW50ZXIgPT09ICIiKSB7CiAgICAgICAgcmV0dXJuIFtdOwogICAgICB9CiAgICAgIGlmIChwb2ludGVyLmNoYXJBdCgwKSAhPT0gIi8iKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJSZWxhdGl2ZSBwb2ludGVyOiAiICsgcG9pbnRlcik7CiAgICAgIH0KICAgICAgcmV0dXJuIHBvaW50ZXIuc3Vic3RyaW5nKDEpLnNwbGl0KC9cLy8pLm1hcCgoc3RyKSA9PiBzdHIucmVwbGFjZSgvfjEvZywgIi8iKS5yZXBsYWNlKC9+MC9nLCAifiIpKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9jb2RlZ2VuL2NvZGUuanMKdmFyIHJlcXVpcmVfY29kZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL2NvZGVnZW4vY29kZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmVnZXhwQ29kZSA9IGV4cG9ydHMyLmdldEVzbUV4cG9ydE5hbWUgPSBleHBvcnRzMi5nZXRQcm9wZXJ0eSA9IGV4cG9ydHMyLnNhZmVTdHJpbmdpZnkgPSBleHBvcnRzMi5zdHJpbmdpZnkgPSBleHBvcnRzMi5zdHJDb25jYXQgPSBleHBvcnRzMi5hZGRDb2RlQXJnID0gZXhwb3J0czIuc3RyID0gZXhwb3J0czIuXyA9IGV4cG9ydHMyLm5pbCA9IGV4cG9ydHMyLl9Db2RlID0gZXhwb3J0czIuTmFtZSA9IGV4cG9ydHMyLklERU5USUZJRVIgPSBleHBvcnRzMi5fQ29kZU9yTmFtZSA9IHZvaWQgMDsKICAgIHZhciBfQ29kZU9yTmFtZSA9IGNsYXNzIHsKICAgIH07CiAgICBleHBvcnRzMi5fQ29kZU9yTmFtZSA9IF9Db2RlT3JOYW1lOwogICAgZXhwb3J0czIuSURFTlRJRklFUiA9IC9eW2EteiRfXVthLXokXzAtOV0qJC9pOwogICAgdmFyIE5hbWUgPSBjbGFzcyBleHRlbmRzIF9Db2RlT3JOYW1lIHsKICAgICAgY29uc3RydWN0b3IocykgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgaWYgKCFleHBvcnRzMi5JREVOVElGSUVSLnRlc3QocykpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNvZGVHZW46IG5hbWUgbXVzdCBiZSBhIHZhbGlkIGlkZW50aWZpZXIiKTsKICAgICAgICB0aGlzLnN0ciA9IHM7CiAgICAgIH0KICAgICAgdG9TdHJpbmcoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuc3RyOwogICAgICB9CiAgICAgIGVtcHR5U3RyKCkgewogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgICBnZXQgbmFtZXMoKSB7CiAgICAgICAgcmV0dXJuIHsgW3RoaXMuc3RyXTogMSB9OwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTmFtZSA9IE5hbWU7CiAgICB2YXIgX0NvZGUgPSBjbGFzcyBleHRlbmRzIF9Db2RlT3JOYW1lIHsKICAgICAgY29uc3RydWN0b3IoY29kZSkgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5faXRlbXMgPSB0eXBlb2YgY29kZSA9PT0gInN0cmluZyIgPyBbY29kZV0gOiBjb2RlOwogICAgICB9CiAgICAgIHRvU3RyaW5nKCkgewogICAgICAgIHJldHVybiB0aGlzLnN0cjsKICAgICAgfQogICAgICBlbXB0eVN0cigpIHsKICAgICAgICBpZiAodGhpcy5faXRlbXMubGVuZ3RoID4gMSkKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICBjb25zdCBpdGVtID0gdGhpcy5faXRlbXNbMF07CiAgICAgICAgcmV0dXJuIGl0ZW0gPT09ICIiIHx8IGl0ZW0gPT09ICciIic7CiAgICAgIH0KICAgICAgZ2V0IHN0cigpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgcmV0dXJuIChfYSA9IHRoaXMuX3N0cikgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogdGhpcy5fc3RyID0gdGhpcy5faXRlbXMucmVkdWNlKChzLCBjKSA9PiBgJHtzfSR7Y31gLCAiIik7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIHZhciBfYTsKICAgICAgICByZXR1cm4gKF9hID0gdGhpcy5fbmFtZXMpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IHRoaXMuX25hbWVzID0gdGhpcy5faXRlbXMucmVkdWNlKChuYW1lcywgYykgPT4gewogICAgICAgICAgaWYgKGMgaW5zdGFuY2VvZiBOYW1lKQogICAgICAgICAgICBuYW1lc1tjLnN0cl0gPSAobmFtZXNbYy5zdHJdIHx8IDApICsgMTsKICAgICAgICAgIHJldHVybiBuYW1lczsKICAgICAgICB9LCB7fSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5fQ29kZSA9IF9Db2RlOwogICAgZXhwb3J0czIubmlsID0gbmV3IF9Db2RlKCIiKTsKICAgIGZ1bmN0aW9uIF8oc3RycywgLi4uYXJncykgewogICAgICBjb25zdCBjb2RlID0gW3N0cnNbMF1dOwogICAgICBsZXQgaSA9IDA7CiAgICAgIHdoaWxlIChpIDwgYXJncy5sZW5ndGgpIHsKICAgICAgICBhZGRDb2RlQXJnKGNvZGUsIGFyZ3NbaV0pOwogICAgICAgIGNvZGUucHVzaChzdHJzWysraV0pOwogICAgICB9CiAgICAgIHJldHVybiBuZXcgX0NvZGUoY29kZSk7CiAgICB9CiAgICBleHBvcnRzMi5fID0gXzsKICAgIHZhciBwbHVzID0gbmV3IF9Db2RlKCIrIik7CiAgICBmdW5jdGlvbiBzdHIoc3RycywgLi4uYXJncykgewogICAgICBjb25zdCBleHByID0gW3NhZmVTdHJpbmdpZnkoc3Ryc1swXSldOwogICAgICBsZXQgaSA9IDA7CiAgICAgIHdoaWxlIChpIDwgYXJncy5sZW5ndGgpIHsKICAgICAgICBleHByLnB1c2gocGx1cyk7CiAgICAgICAgYWRkQ29kZUFyZyhleHByLCBhcmdzW2ldKTsKICAgICAgICBleHByLnB1c2gocGx1cywgc2FmZVN0cmluZ2lmeShzdHJzWysraV0pKTsKICAgICAgfQogICAgICBvcHRpbWl6ZShleHByKTsKICAgICAgcmV0dXJuIG5ldyBfQ29kZShleHByKTsKICAgIH0KICAgIGV4cG9ydHMyLnN0ciA9IHN0cjsKICAgIGZ1bmN0aW9uIGFkZENvZGVBcmcoY29kZSwgYXJnKSB7CiAgICAgIGlmIChhcmcgaW5zdGFuY2VvZiBfQ29kZSkKICAgICAgICBjb2RlLnB1c2goLi4uYXJnLl9pdGVtcyk7CiAgICAgIGVsc2UgaWYgKGFyZyBpbnN0YW5jZW9mIE5hbWUpCiAgICAgICAgY29kZS5wdXNoKGFyZyk7CiAgICAgIGVsc2UKICAgICAgICBjb2RlLnB1c2goaW50ZXJwb2xhdGUoYXJnKSk7CiAgICB9CiAgICBleHBvcnRzMi5hZGRDb2RlQXJnID0gYWRkQ29kZUFyZzsKICAgIGZ1bmN0aW9uIG9wdGltaXplKGV4cHIpIHsKICAgICAgbGV0IGkgPSAxOwogICAgICB3aGlsZSAoaSA8IGV4cHIubGVuZ3RoIC0gMSkgewogICAgICAgIGlmIChleHByW2ldID09PSBwbHVzKSB7CiAgICAgICAgICBjb25zdCByZXMgPSBtZXJnZUV4cHJJdGVtcyhleHByW2kgLSAxXSwgZXhwcltpICsgMV0pOwogICAgICAgICAgaWYgKHJlcyAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgIGV4cHIuc3BsaWNlKGkgLSAxLCAzLCByZXMpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGV4cHJbaSsrXSA9ICIrIjsKICAgICAgICB9CiAgICAgICAgaSsrOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBtZXJnZUV4cHJJdGVtcyhhLCBiKSB7CiAgICAgIGlmIChiID09PSAnIiInKQogICAgICAgIHJldHVybiBhOwogICAgICBpZiAoYSA9PT0gJyIiJykKICAgICAgICByZXR1cm4gYjsKICAgICAgaWYgKHR5cGVvZiBhID09ICJzdHJpbmciKSB7CiAgICAgICAgaWYgKGIgaW5zdGFuY2VvZiBOYW1lIHx8IGFbYS5sZW5ndGggLSAxXSAhPT0gJyInKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGlmICh0eXBlb2YgYiAhPSAic3RyaW5nIikKICAgICAgICAgIHJldHVybiBgJHthLnNsaWNlKDAsIC0xKX0ke2J9ImA7CiAgICAgICAgaWYgKGJbMF0gPT09ICciJykKICAgICAgICAgIHJldHVybiBhLnNsaWNlKDAsIC0xKSArIGIuc2xpY2UoMSk7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgYiA9PSAic3RyaW5nIiAmJiBiWzBdID09PSAnIicgJiYgIShhIGluc3RhbmNlb2YgTmFtZSkpCiAgICAgICAgcmV0dXJuIGAiJHthfSR7Yi5zbGljZSgxKX1gOwogICAgICByZXR1cm47CiAgICB9CiAgICBmdW5jdGlvbiBzdHJDb25jYXQoYzEsIGMyKSB7CiAgICAgIHJldHVybiBjMi5lbXB0eVN0cigpID8gYzEgOiBjMS5lbXB0eVN0cigpID8gYzIgOiBzdHJgJHtjMX0ke2MyfWA7CiAgICB9CiAgICBleHBvcnRzMi5zdHJDb25jYXQgPSBzdHJDb25jYXQ7CiAgICBmdW5jdGlvbiBpbnRlcnBvbGF0ZSh4KSB7CiAgICAgIHJldHVybiB0eXBlb2YgeCA9PSAibnVtYmVyIiB8fCB0eXBlb2YgeCA9PSAiYm9vbGVhbiIgfHwgeCA9PT0gbnVsbCA/IHggOiBzYWZlU3RyaW5naWZ5KEFycmF5LmlzQXJyYXkoeCkgPyB4LmpvaW4oIiwiKSA6IHgpOwogICAgfQogICAgZnVuY3Rpb24gc3RyaW5naWZ5KHgpIHsKICAgICAgcmV0dXJuIG5ldyBfQ29kZShzYWZlU3RyaW5naWZ5KHgpKTsKICAgIH0KICAgIGV4cG9ydHMyLnN0cmluZ2lmeSA9IHN0cmluZ2lmeTsKICAgIGZ1bmN0aW9uIHNhZmVTdHJpbmdpZnkoeCkgewogICAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkoeCkucmVwbGFjZSgvXHUyMDI4L2csICJcXHUyMDI4IikucmVwbGFjZSgvXHUyMDI5L2csICJcXHUyMDI5Iik7CiAgICB9CiAgICBleHBvcnRzMi5zYWZlU3RyaW5naWZ5ID0gc2FmZVN0cmluZ2lmeTsKICAgIGZ1bmN0aW9uIGdldFByb3BlcnR5KGtleSkgewogICAgICByZXR1cm4gdHlwZW9mIGtleSA9PSAic3RyaW5nIiAmJiBleHBvcnRzMi5JREVOVElGSUVSLnRlc3Qoa2V5KSA/IG5ldyBfQ29kZShgLiR7a2V5fWApIDogX2BbJHtrZXl9XWA7CiAgICB9CiAgICBleHBvcnRzMi5nZXRQcm9wZXJ0eSA9IGdldFByb3BlcnR5OwogICAgZnVuY3Rpb24gZ2V0RXNtRXhwb3J0TmFtZShrZXkpIHsKICAgICAgaWYgKHR5cGVvZiBrZXkgPT0gInN0cmluZyIgJiYgZXhwb3J0czIuSURFTlRJRklFUi50ZXN0KGtleSkpIHsKICAgICAgICByZXR1cm4gbmV3IF9Db2RlKGAke2tleX1gKTsKICAgICAgfQogICAgICB0aHJvdyBuZXcgRXJyb3IoYENvZGVHZW46IGludmFsaWQgZXhwb3J0IG5hbWU6ICR7a2V5fSwgdXNlIGV4cGxpY2l0ICRpZCBuYW1lIG1hcHBpbmdgKTsKICAgIH0KICAgIGV4cG9ydHMyLmdldEVzbUV4cG9ydE5hbWUgPSBnZXRFc21FeHBvcnROYW1lOwogICAgZnVuY3Rpb24gcmVnZXhwQ29kZShyeCkgewogICAgICByZXR1cm4gbmV3IF9Db2RlKHJ4LnRvU3RyaW5nKCkpOwogICAgfQogICAgZXhwb3J0czIucmVnZXhwQ29kZSA9IHJlZ2V4cENvZGU7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvY29kZWdlbi9zY29wZS5qcwp2YXIgcmVxdWlyZV9zY29wZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL2NvZGVnZW4vc2NvcGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlZhbHVlU2NvcGUgPSBleHBvcnRzMi5WYWx1ZVNjb3BlTmFtZSA9IGV4cG9ydHMyLlNjb3BlID0gZXhwb3J0czIudmFyS2luZHMgPSBleHBvcnRzMi5Vc2VkVmFsdWVTdGF0ZSA9IHZvaWQgMDsKICAgIHZhciBjb2RlXzEgPSByZXF1aXJlX2NvZGUoKTsKICAgIHZhciBWYWx1ZUVycm9yID0gY2xhc3MgZXh0ZW5kcyBFcnJvciB7CiAgICAgIGNvbnN0cnVjdG9yKG5hbWUpIHsKICAgICAgICBzdXBlcihgQ29kZUdlbjogImNvZGUiIGZvciAke25hbWV9IG5vdCBkZWZpbmVkYCk7CiAgICAgICAgdGhpcy52YWx1ZSA9IG5hbWUudmFsdWU7CiAgICAgIH0KICAgIH07CiAgICB2YXIgVXNlZFZhbHVlU3RhdGU7CiAgICAoZnVuY3Rpb24oVXNlZFZhbHVlU3RhdGUyKSB7CiAgICAgIFVzZWRWYWx1ZVN0YXRlMltVc2VkVmFsdWVTdGF0ZTJbIlN0YXJ0ZWQiXSA9IDBdID0gIlN0YXJ0ZWQiOwogICAgICBVc2VkVmFsdWVTdGF0ZTJbVXNlZFZhbHVlU3RhdGUyWyJDb21wbGV0ZWQiXSA9IDFdID0gIkNvbXBsZXRlZCI7CiAgICB9KShVc2VkVmFsdWVTdGF0ZSB8fCAoZXhwb3J0czIuVXNlZFZhbHVlU3RhdGUgPSBVc2VkVmFsdWVTdGF0ZSA9IHt9KSk7CiAgICBleHBvcnRzMi52YXJLaW5kcyA9IHsKICAgICAgY29uc3Q6IG5ldyBjb2RlXzEuTmFtZSgiY29uc3QiKSwKICAgICAgbGV0OiBuZXcgY29kZV8xLk5hbWUoImxldCIpLAogICAgICB2YXI6IG5ldyBjb2RlXzEuTmFtZSgidmFyIikKICAgIH07CiAgICB2YXIgU2NvcGUgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKHsgcHJlZml4ZXMsIHBhcmVudCB9ID0ge30pIHsKICAgICAgICB0aGlzLl9uYW1lcyA9IHt9OwogICAgICAgIHRoaXMuX3ByZWZpeGVzID0gcHJlZml4ZXM7CiAgICAgICAgdGhpcy5fcGFyZW50ID0gcGFyZW50OwogICAgICB9CiAgICAgIHRvTmFtZShuYW1lT3JQcmVmaXgpIHsKICAgICAgICByZXR1cm4gbmFtZU9yUHJlZml4IGluc3RhbmNlb2YgY29kZV8xLk5hbWUgPyBuYW1lT3JQcmVmaXggOiB0aGlzLm5hbWUobmFtZU9yUHJlZml4KTsKICAgICAgfQogICAgICBuYW1lKHByZWZpeCkgewogICAgICAgIHJldHVybiBuZXcgY29kZV8xLk5hbWUodGhpcy5fbmV3TmFtZShwcmVmaXgpKTsKICAgICAgfQogICAgICBfbmV3TmFtZShwcmVmaXgpIHsKICAgICAgICBjb25zdCBuZyA9IHRoaXMuX25hbWVzW3ByZWZpeF0gfHwgdGhpcy5fbmFtZUdyb3VwKHByZWZpeCk7CiAgICAgICAgcmV0dXJuIGAke3ByZWZpeH0ke25nLmluZGV4Kyt9YDsKICAgICAgfQogICAgICBfbmFtZUdyb3VwKHByZWZpeCkgewogICAgICAgIHZhciBfYSwgX2I7CiAgICAgICAgaWYgKCgoX2IgPSAoX2EgPSB0aGlzLl9wYXJlbnQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5fcHJlZml4ZXMpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5oYXMocHJlZml4KSkgfHwgdGhpcy5fcHJlZml4ZXMgJiYgIXRoaXMuX3ByZWZpeGVzLmhhcyhwcmVmaXgpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENvZGVHZW46IHByZWZpeCAiJHtwcmVmaXh9IiBpcyBub3QgYWxsb3dlZCBpbiB0aGlzIHNjb3BlYCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9uYW1lc1twcmVmaXhdID0geyBwcmVmaXgsIGluZGV4OiAwIH07CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TY29wZSA9IFNjb3BlOwogICAgdmFyIFZhbHVlU2NvcGVOYW1lID0gY2xhc3MgZXh0ZW5kcyBjb2RlXzEuTmFtZSB7CiAgICAgIGNvbnN0cnVjdG9yKHByZWZpeCwgbmFtZVN0cikgewogICAgICAgIHN1cGVyKG5hbWVTdHIpOwogICAgICAgIHRoaXMucHJlZml4ID0gcHJlZml4OwogICAgICB9CiAgICAgIHNldFZhbHVlKHZhbHVlLCB7IHByb3BlcnR5LCBpdGVtSW5kZXggfSkgewogICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTsKICAgICAgICB0aGlzLnNjb3BlUGF0aCA9ICgwLCBjb2RlXzEuXylgLiR7bmV3IGNvZGVfMS5OYW1lKHByb3BlcnR5KX1bJHtpdGVtSW5kZXh9XWA7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5WYWx1ZVNjb3BlTmFtZSA9IFZhbHVlU2NvcGVOYW1lOwogICAgdmFyIGxpbmUgPSAoMCwgY29kZV8xLl8pYFxuYDsKICAgIHZhciBWYWx1ZVNjb3BlID0gY2xhc3MgZXh0ZW5kcyBTY29wZSB7CiAgICAgIGNvbnN0cnVjdG9yKG9wdHMpIHsKICAgICAgICBzdXBlcihvcHRzKTsKICAgICAgICB0aGlzLl92YWx1ZXMgPSB7fTsKICAgICAgICB0aGlzLl9zY29wZSA9IG9wdHMuc2NvcGU7CiAgICAgICAgdGhpcy5vcHRzID0geyAuLi5vcHRzLCBfbjogb3B0cy5saW5lcyA/IGxpbmUgOiBjb2RlXzEubmlsIH07CiAgICAgIH0KICAgICAgZ2V0KCkgewogICAgICAgIHJldHVybiB0aGlzLl9zY29wZTsKICAgICAgfQogICAgICBuYW1lKHByZWZpeCkgewogICAgICAgIHJldHVybiBuZXcgVmFsdWVTY29wZU5hbWUocHJlZml4LCB0aGlzLl9uZXdOYW1lKHByZWZpeCkpOwogICAgICB9CiAgICAgIHZhbHVlKG5hbWVPclByZWZpeCwgdmFsdWUpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgaWYgKHZhbHVlLnJlZiA9PT0gdm9pZCAwKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDb2RlR2VuOiByZWYgbXVzdCBiZSBwYXNzZWQgaW4gdmFsdWUiKTsKICAgICAgICBjb25zdCBuYW1lID0gdGhpcy50b05hbWUobmFtZU9yUHJlZml4KTsKICAgICAgICBjb25zdCB7IHByZWZpeCB9ID0gbmFtZTsKICAgICAgICBjb25zdCB2YWx1ZUtleSA9IChfYSA9IHZhbHVlLmtleSkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogdmFsdWUucmVmOwogICAgICAgIGxldCB2cyA9IHRoaXMuX3ZhbHVlc1twcmVmaXhdOwogICAgICAgIGlmICh2cykgewogICAgICAgICAgY29uc3QgX25hbWUgPSB2cy5nZXQodmFsdWVLZXkpOwogICAgICAgICAgaWYgKF9uYW1lKQogICAgICAgICAgICByZXR1cm4gX25hbWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHZzID0gdGhpcy5fdmFsdWVzW3ByZWZpeF0gPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICAgIH0KICAgICAgICB2cy5zZXQodmFsdWVLZXksIG5hbWUpOwogICAgICAgIGNvbnN0IHMgPSB0aGlzLl9zY29wZVtwcmVmaXhdIHx8ICh0aGlzLl9zY29wZVtwcmVmaXhdID0gW10pOwogICAgICAgIGNvbnN0IGl0ZW1JbmRleCA9IHMubGVuZ3RoOwogICAgICAgIHNbaXRlbUluZGV4XSA9IHZhbHVlLnJlZjsKICAgICAgICBuYW1lLnNldFZhbHVlKHZhbHVlLCB7IHByb3BlcnR5OiBwcmVmaXgsIGl0ZW1JbmRleCB9KTsKICAgICAgICByZXR1cm4gbmFtZTsKICAgICAgfQogICAgICBnZXRWYWx1ZShwcmVmaXgsIGtleU9yUmVmKSB7CiAgICAgICAgY29uc3QgdnMgPSB0aGlzLl92YWx1ZXNbcHJlZml4XTsKICAgICAgICBpZiAoIXZzKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIHJldHVybiB2cy5nZXQoa2V5T3JSZWYpOwogICAgICB9CiAgICAgIHNjb3BlUmVmcyhzY29wZU5hbWUsIHZhbHVlcyA9IHRoaXMuX3ZhbHVlcykgewogICAgICAgIHJldHVybiB0aGlzLl9yZWR1Y2VWYWx1ZXModmFsdWVzLCAobmFtZSkgPT4gewogICAgICAgICAgaWYgKG5hbWUuc2NvcGVQYXRoID09PSB2b2lkIDApCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ29kZUdlbjogbmFtZSAiJHtuYW1lfSIgaGFzIG5vIHZhbHVlYCk7CiAgICAgICAgICByZXR1cm4gKDAsIGNvZGVfMS5fKWAke3Njb3BlTmFtZX0ke25hbWUuc2NvcGVQYXRofWA7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgc2NvcGVDb2RlKHZhbHVlcyA9IHRoaXMuX3ZhbHVlcywgdXNlZFZhbHVlcywgZ2V0Q29kZSkgewogICAgICAgIHJldHVybiB0aGlzLl9yZWR1Y2VWYWx1ZXModmFsdWVzLCAobmFtZSkgPT4gewogICAgICAgICAgaWYgKG5hbWUudmFsdWUgPT09IHZvaWQgMCkKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb2RlR2VuOiBuYW1lICIke25hbWV9IiBoYXMgbm8gdmFsdWVgKTsKICAgICAgICAgIHJldHVybiBuYW1lLnZhbHVlLmNvZGU7CiAgICAgICAgfSwgdXNlZFZhbHVlcywgZ2V0Q29kZSk7CiAgICAgIH0KICAgICAgX3JlZHVjZVZhbHVlcyh2YWx1ZXMsIHZhbHVlQ29kZSwgdXNlZFZhbHVlcyA9IHt9LCBnZXRDb2RlKSB7CiAgICAgICAgbGV0IGNvZGUgPSBjb2RlXzEubmlsOwogICAgICAgIGZvciAoY29uc3QgcHJlZml4IGluIHZhbHVlcykgewogICAgICAgICAgY29uc3QgdnMgPSB2YWx1ZXNbcHJlZml4XTsKICAgICAgICAgIGlmICghdnMpCiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgY29uc3QgbmFtZVNldCA9IHVzZWRWYWx1ZXNbcHJlZml4XSA9IHVzZWRWYWx1ZXNbcHJlZml4XSB8fCAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICAgICAgdnMuZm9yRWFjaCgobmFtZSkgPT4gewogICAgICAgICAgICBpZiAobmFtZVNldC5oYXMobmFtZSkpCiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICBuYW1lU2V0LnNldChuYW1lLCBVc2VkVmFsdWVTdGF0ZS5TdGFydGVkKTsKICAgICAgICAgICAgbGV0IGMgPSB2YWx1ZUNvZGUobmFtZSk7CiAgICAgICAgICAgIGlmIChjKSB7CiAgICAgICAgICAgICAgY29uc3QgZGVmID0gdGhpcy5vcHRzLmVzNSA/IGV4cG9ydHMyLnZhcktpbmRzLnZhciA6IGV4cG9ydHMyLnZhcktpbmRzLmNvbnN0OwogICAgICAgICAgICAgIGNvZGUgPSAoMCwgY29kZV8xLl8pYCR7Y29kZX0ke2RlZn0gJHtuYW1lfSA9ICR7Y307JHt0aGlzLm9wdHMuX259YDsKICAgICAgICAgICAgfSBlbHNlIGlmIChjID0gZ2V0Q29kZSA9PT0gbnVsbCB8fCBnZXRDb2RlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBnZXRDb2RlKG5hbWUpKSB7CiAgICAgICAgICAgICAgY29kZSA9ICgwLCBjb2RlXzEuXylgJHtjb2RlfSR7Y30ke3RoaXMub3B0cy5fbn1gOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHRocm93IG5ldyBWYWx1ZUVycm9yKG5hbWUpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIG5hbWVTZXQuc2V0KG5hbWUsIFVzZWRWYWx1ZVN0YXRlLkNvbXBsZXRlZCk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGNvZGU7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5WYWx1ZVNjb3BlID0gVmFsdWVTY29wZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9jb2RlZ2VuL2luZGV4LmpzCnZhciByZXF1aXJlX2NvZGVnZW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9jb2RlZ2VuL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5vciA9IGV4cG9ydHMyLmFuZCA9IGV4cG9ydHMyLm5vdCA9IGV4cG9ydHMyLkNvZGVHZW4gPSBleHBvcnRzMi5vcGVyYXRvcnMgPSBleHBvcnRzMi52YXJLaW5kcyA9IGV4cG9ydHMyLlZhbHVlU2NvcGVOYW1lID0gZXhwb3J0czIuVmFsdWVTY29wZSA9IGV4cG9ydHMyLlNjb3BlID0gZXhwb3J0czIuTmFtZSA9IGV4cG9ydHMyLnJlZ2V4cENvZGUgPSBleHBvcnRzMi5zdHJpbmdpZnkgPSBleHBvcnRzMi5nZXRQcm9wZXJ0eSA9IGV4cG9ydHMyLm5pbCA9IGV4cG9ydHMyLnN0ckNvbmNhdCA9IGV4cG9ydHMyLnN0ciA9IGV4cG9ydHMyLl8gPSB2b2lkIDA7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlKCk7CiAgICB2YXIgc2NvcGVfMSA9IHJlcXVpcmVfc2NvcGUoKTsKICAgIHZhciBjb2RlXzIgPSByZXF1aXJlX2NvZGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl8iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlXzIuXzsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzdHIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlXzIuc3RyOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0ckNvbmNhdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVfMi5zdHJDb25jYXQ7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibmlsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZV8yLm5pbDsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJnZXRQcm9wZXJ0eSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVfMi5nZXRQcm9wZXJ0eTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzdHJpbmdpZnkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlXzIuc3RyaW5naWZ5OwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInJlZ2V4cENvZGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlXzIucmVnZXhwQ29kZTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJOYW1lIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZV8yLk5hbWU7CiAgICB9IH0pOwogICAgdmFyIHNjb3BlXzIgPSByZXF1aXJlX3Njb3BlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJTY29wZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHNjb3BlXzIuU2NvcGU7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiVmFsdWVTY29wZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHNjb3BlXzIuVmFsdWVTY29wZTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJWYWx1ZVNjb3BlTmFtZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHNjb3BlXzIuVmFsdWVTY29wZU5hbWU7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidmFyS2luZHMiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzY29wZV8yLnZhcktpbmRzOwogICAgfSB9KTsKICAgIGV4cG9ydHMyLm9wZXJhdG9ycyA9IHsKICAgICAgR1Q6IG5ldyBjb2RlXzEuX0NvZGUoIj4iKSwKICAgICAgR1RFOiBuZXcgY29kZV8xLl9Db2RlKCI+PSIpLAogICAgICBMVDogbmV3IGNvZGVfMS5fQ29kZSgiPCIpLAogICAgICBMVEU6IG5ldyBjb2RlXzEuX0NvZGUoIjw9IiksCiAgICAgIEVROiBuZXcgY29kZV8xLl9Db2RlKCI9PT0iKSwKICAgICAgTkVROiBuZXcgY29kZV8xLl9Db2RlKCIhPT0iKSwKICAgICAgTk9UOiBuZXcgY29kZV8xLl9Db2RlKCIhIiksCiAgICAgIE9SOiBuZXcgY29kZV8xLl9Db2RlKCJ8fCIpLAogICAgICBBTkQ6IG5ldyBjb2RlXzEuX0NvZGUoIiYmIiksCiAgICAgIEFERDogbmV3IGNvZGVfMS5fQ29kZSgiKyIpCiAgICB9OwogICAgdmFyIE5vZGUgPSBjbGFzcyB7CiAgICAgIG9wdGltaXplTm9kZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgb3B0aW1pemVOYW1lcyhfbmFtZXMsIF9jb25zdGFudHMpIHsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgfTsKICAgIHZhciBEZWYgPSBjbGFzcyBleHRlbmRzIE5vZGUgewogICAgICBjb25zdHJ1Y3Rvcih2YXJLaW5kLCBuYW1lLCByaHMpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMudmFyS2luZCA9IHZhcktpbmQ7CiAgICAgICAgdGhpcy5uYW1lID0gbmFtZTsKICAgICAgICB0aGlzLnJocyA9IHJoczsKICAgICAgfQogICAgICByZW5kZXIoeyBlczUsIF9uIH0pIHsKICAgICAgICBjb25zdCB2YXJLaW5kID0gZXM1ID8gc2NvcGVfMS52YXJLaW5kcy52YXIgOiB0aGlzLnZhcktpbmQ7CiAgICAgICAgY29uc3QgcmhzID0gdGhpcy5yaHMgPT09IHZvaWQgMCA/ICIiIDogYCA9ICR7dGhpcy5yaHN9YDsKICAgICAgICByZXR1cm4gYCR7dmFyS2luZH0gJHt0aGlzLm5hbWV9JHtyaHN9O2AgKyBfbjsKICAgICAgfQogICAgICBvcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpIHsKICAgICAgICBpZiAoIW5hbWVzW3RoaXMubmFtZS5zdHJdKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGlmICh0aGlzLnJocykKICAgICAgICAgIHRoaXMucmhzID0gb3B0aW1pemVFeHByKHRoaXMucmhzLCBuYW1lcywgY29uc3RhbnRzKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBnZXQgbmFtZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMucmhzIGluc3RhbmNlb2YgY29kZV8xLl9Db2RlT3JOYW1lID8gdGhpcy5yaHMubmFtZXMgOiB7fTsKICAgICAgfQogICAgfTsKICAgIHZhciBBc3NpZ24gPSBjbGFzcyBleHRlbmRzIE5vZGUgewogICAgICBjb25zdHJ1Y3RvcihsaHMsIHJocywgc2lkZUVmZmVjdHMpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMubGhzID0gbGhzOwogICAgICAgIHRoaXMucmhzID0gcmhzOwogICAgICAgIHRoaXMuc2lkZUVmZmVjdHMgPSBzaWRlRWZmZWN0czsKICAgICAgfQogICAgICByZW5kZXIoeyBfbiB9KSB7CiAgICAgICAgcmV0dXJuIGAke3RoaXMubGhzfSA9ICR7dGhpcy5yaHN9O2AgKyBfbjsKICAgICAgfQogICAgICBvcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpIHsKICAgICAgICBpZiAodGhpcy5saHMgaW5zdGFuY2VvZiBjb2RlXzEuTmFtZSAmJiAhbmFtZXNbdGhpcy5saHMuc3RyXSAmJiAhdGhpcy5zaWRlRWZmZWN0cykKICAgICAgICAgIHJldHVybjsKICAgICAgICB0aGlzLnJocyA9IG9wdGltaXplRXhwcih0aGlzLnJocywgbmFtZXMsIGNvbnN0YW50cyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIGNvbnN0IG5hbWVzID0gdGhpcy5saHMgaW5zdGFuY2VvZiBjb2RlXzEuTmFtZSA/IHt9IDogeyAuLi50aGlzLmxocy5uYW1lcyB9OwogICAgICAgIHJldHVybiBhZGRFeHByTmFtZXMobmFtZXMsIHRoaXMucmhzKTsKICAgICAgfQogICAgfTsKICAgIHZhciBBc3NpZ25PcCA9IGNsYXNzIGV4dGVuZHMgQXNzaWduIHsKICAgICAgY29uc3RydWN0b3IobGhzLCBvcCwgcmhzLCBzaWRlRWZmZWN0cykgewogICAgICAgIHN1cGVyKGxocywgcmhzLCBzaWRlRWZmZWN0cyk7CiAgICAgICAgdGhpcy5vcCA9IG9wOwogICAgICB9CiAgICAgIHJlbmRlcih7IF9uIH0pIHsKICAgICAgICByZXR1cm4gYCR7dGhpcy5saHN9ICR7dGhpcy5vcH09ICR7dGhpcy5yaHN9O2AgKyBfbjsKICAgICAgfQogICAgfTsKICAgIHZhciBMYWJlbCA9IGNsYXNzIGV4dGVuZHMgTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKGxhYmVsKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLmxhYmVsID0gbGFiZWw7CiAgICAgICAgdGhpcy5uYW1lcyA9IHt9OwogICAgICB9CiAgICAgIHJlbmRlcih7IF9uIH0pIHsKICAgICAgICByZXR1cm4gYCR7dGhpcy5sYWJlbH06YCArIF9uOwogICAgICB9CiAgICB9OwogICAgdmFyIEJyZWFrID0gY2xhc3MgZXh0ZW5kcyBOb2RlIHsKICAgICAgY29uc3RydWN0b3IobGFiZWwpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMubGFiZWwgPSBsYWJlbDsKICAgICAgICB0aGlzLm5hbWVzID0ge307CiAgICAgIH0KICAgICAgcmVuZGVyKHsgX24gfSkgewogICAgICAgIGNvbnN0IGxhYmVsID0gdGhpcy5sYWJlbCA/IGAgJHt0aGlzLmxhYmVsfWAgOiAiIjsKICAgICAgICByZXR1cm4gYGJyZWFrJHtsYWJlbH07YCArIF9uOwogICAgICB9CiAgICB9OwogICAgdmFyIFRocm93ID0gY2xhc3MgZXh0ZW5kcyBOb2RlIHsKICAgICAgY29uc3RydWN0b3IoZXJyb3IpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMuZXJyb3IgPSBlcnJvcjsKICAgICAgfQogICAgICByZW5kZXIoeyBfbiB9KSB7CiAgICAgICAgcmV0dXJuIGB0aHJvdyAke3RoaXMuZXJyb3J9O2AgKyBfbjsKICAgICAgfQogICAgICBnZXQgbmFtZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuZXJyb3IubmFtZXM7CiAgICAgIH0KICAgIH07CiAgICB2YXIgQW55Q29kZSA9IGNsYXNzIGV4dGVuZHMgTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKGNvZGUpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMuY29kZSA9IGNvZGU7CiAgICAgIH0KICAgICAgcmVuZGVyKHsgX24gfSkgewogICAgICAgIHJldHVybiBgJHt0aGlzLmNvZGV9O2AgKyBfbjsKICAgICAgfQogICAgICBvcHRpbWl6ZU5vZGVzKCkgewogICAgICAgIHJldHVybiBgJHt0aGlzLmNvZGV9YCA/IHRoaXMgOiB2b2lkIDA7CiAgICAgIH0KICAgICAgb3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSB7CiAgICAgICAgdGhpcy5jb2RlID0gb3B0aW1pemVFeHByKHRoaXMuY29kZSwgbmFtZXMsIGNvbnN0YW50cyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIHJldHVybiB0aGlzLmNvZGUgaW5zdGFuY2VvZiBjb2RlXzEuX0NvZGVPck5hbWUgPyB0aGlzLmNvZGUubmFtZXMgOiB7fTsKICAgICAgfQogICAgfTsKICAgIHZhciBQYXJlbnROb2RlID0gY2xhc3MgZXh0ZW5kcyBOb2RlIHsKICAgICAgY29uc3RydWN0b3Iobm9kZXMgPSBbXSkgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5ub2RlcyA9IG5vZGVzOwogICAgICB9CiAgICAgIHJlbmRlcihvcHRzKSB7CiAgICAgICAgcmV0dXJuIHRoaXMubm9kZXMucmVkdWNlKChjb2RlLCBuKSA9PiBjb2RlICsgbi5yZW5kZXIob3B0cyksICIiKTsKICAgICAgfQogICAgICBvcHRpbWl6ZU5vZGVzKCkgewogICAgICAgIGNvbnN0IHsgbm9kZXMgfSA9IHRoaXM7CiAgICAgICAgbGV0IGkgPSBub2Rlcy5sZW5ndGg7CiAgICAgICAgd2hpbGUgKGktLSkgewogICAgICAgICAgY29uc3QgbiA9IG5vZGVzW2ldLm9wdGltaXplTm9kZXMoKTsKICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KG4pKQogICAgICAgICAgICBub2Rlcy5zcGxpY2UoaSwgMSwgLi4ubik7CiAgICAgICAgICBlbHNlIGlmIChuKQogICAgICAgICAgICBub2Rlc1tpXSA9IG47CiAgICAgICAgICBlbHNlCiAgICAgICAgICAgIG5vZGVzLnNwbGljZShpLCAxKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5vZGVzLmxlbmd0aCA+IDAgPyB0aGlzIDogdm9pZCAwOwogICAgICB9CiAgICAgIG9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgewogICAgICAgIGNvbnN0IHsgbm9kZXMgfSA9IHRoaXM7CiAgICAgICAgbGV0IGkgPSBub2Rlcy5sZW5ndGg7CiAgICAgICAgd2hpbGUgKGktLSkgewogICAgICAgICAgY29uc3QgbiA9IG5vZGVzW2ldOwogICAgICAgICAgaWYgKG4ub3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSkKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICBzdWJ0cmFjdE5hbWVzKG5hbWVzLCBuLm5hbWVzKTsKICAgICAgICAgIG5vZGVzLnNwbGljZShpLCAxKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5vZGVzLmxlbmd0aCA+IDAgPyB0aGlzIDogdm9pZCAwOwogICAgICB9CiAgICAgIGdldCBuYW1lcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5ub2Rlcy5yZWR1Y2UoKG5hbWVzLCBuKSA9PiBhZGROYW1lcyhuYW1lcywgbi5uYW1lcyksIHt9KTsKICAgICAgfQogICAgfTsKICAgIHZhciBCbG9ja05vZGUgPSBjbGFzcyBleHRlbmRzIFBhcmVudE5vZGUgewogICAgICByZW5kZXIob3B0cykgewogICAgICAgIHJldHVybiAieyIgKyBvcHRzLl9uICsgc3VwZXIucmVuZGVyKG9wdHMpICsgIn0iICsgb3B0cy5fbjsKICAgICAgfQogICAgfTsKICAgIHZhciBSb290ID0gY2xhc3MgZXh0ZW5kcyBQYXJlbnROb2RlIHsKICAgIH07CiAgICB2YXIgRWxzZSA9IGNsYXNzIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgIH07CiAgICBFbHNlLmtpbmQgPSAiZWxzZSI7CiAgICB2YXIgSWYgPSBjbGFzcyBfSWYgZXh0ZW5kcyBCbG9ja05vZGUgewogICAgICBjb25zdHJ1Y3Rvcihjb25kaXRpb24sIG5vZGVzKSB7CiAgICAgICAgc3VwZXIobm9kZXMpOwogICAgICAgIHRoaXMuY29uZGl0aW9uID0gY29uZGl0aW9uOwogICAgICB9CiAgICAgIHJlbmRlcihvcHRzKSB7CiAgICAgICAgbGV0IGNvZGUgPSBgaWYoJHt0aGlzLmNvbmRpdGlvbn0pYCArIHN1cGVyLnJlbmRlcihvcHRzKTsKICAgICAgICBpZiAodGhpcy5lbHNlKQogICAgICAgICAgY29kZSArPSAiZWxzZSAiICsgdGhpcy5lbHNlLnJlbmRlcihvcHRzKTsKICAgICAgICByZXR1cm4gY29kZTsKICAgICAgfQogICAgICBvcHRpbWl6ZU5vZGVzKCkgewogICAgICAgIHN1cGVyLm9wdGltaXplTm9kZXMoKTsKICAgICAgICBjb25zdCBjb25kID0gdGhpcy5jb25kaXRpb247CiAgICAgICAgaWYgKGNvbmQgPT09IHRydWUpCiAgICAgICAgICByZXR1cm4gdGhpcy5ub2RlczsKICAgICAgICBsZXQgZSA9IHRoaXMuZWxzZTsKICAgICAgICBpZiAoZSkgewogICAgICAgICAgY29uc3QgbnMgPSBlLm9wdGltaXplTm9kZXMoKTsKICAgICAgICAgIGUgPSB0aGlzLmVsc2UgPSBBcnJheS5pc0FycmF5KG5zKSA/IG5ldyBFbHNlKG5zKSA6IG5zOwogICAgICAgIH0KICAgICAgICBpZiAoZSkgewogICAgICAgICAgaWYgKGNvbmQgPT09IGZhbHNlKQogICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIF9JZiA/IGUgOiBlLm5vZGVzOwogICAgICAgICAgaWYgKHRoaXMubm9kZXMubGVuZ3RoKQogICAgICAgICAgICByZXR1cm4gdGhpczsKICAgICAgICAgIHJldHVybiBuZXcgX0lmKG5vdChjb25kKSwgZSBpbnN0YW5jZW9mIF9JZiA/IFtlXSA6IGUubm9kZXMpOwogICAgICAgIH0KICAgICAgICBpZiAoY29uZCA9PT0gZmFsc2UgfHwgIXRoaXMubm9kZXMubGVuZ3RoKQogICAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBvcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgdGhpcy5lbHNlID0gKF9hID0gdGhpcy5lbHNlKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2Eub3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKTsKICAgICAgICBpZiAoIShzdXBlci5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpIHx8IHRoaXMuZWxzZSkpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgdGhpcy5jb25kaXRpb24gPSBvcHRpbWl6ZUV4cHIodGhpcy5jb25kaXRpb24sIG5hbWVzLCBjb25zdGFudHMpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGdldCBuYW1lcygpIHsKICAgICAgICBjb25zdCBuYW1lcyA9IHN1cGVyLm5hbWVzOwogICAgICAgIGFkZEV4cHJOYW1lcyhuYW1lcywgdGhpcy5jb25kaXRpb24pOwogICAgICAgIGlmICh0aGlzLmVsc2UpCiAgICAgICAgICBhZGROYW1lcyhuYW1lcywgdGhpcy5lbHNlLm5hbWVzKTsKICAgICAgICByZXR1cm4gbmFtZXM7CiAgICAgIH0KICAgIH07CiAgICBJZi5raW5kID0gImlmIjsKICAgIHZhciBGb3IgPSBjbGFzcyBleHRlbmRzIEJsb2NrTm9kZSB7CiAgICB9OwogICAgRm9yLmtpbmQgPSAiZm9yIjsKICAgIHZhciBGb3JMb29wID0gY2xhc3MgZXh0ZW5kcyBGb3IgewogICAgICBjb25zdHJ1Y3RvcihpdGVyYXRpb24pIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMuaXRlcmF0aW9uID0gaXRlcmF0aW9uOwogICAgICB9CiAgICAgIHJlbmRlcihvcHRzKSB7CiAgICAgICAgcmV0dXJuIGBmb3IoJHt0aGlzLml0ZXJhdGlvbn0pYCArIHN1cGVyLnJlbmRlcihvcHRzKTsKICAgICAgfQogICAgICBvcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpIHsKICAgICAgICBpZiAoIXN1cGVyLm9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgdGhpcy5pdGVyYXRpb24gPSBvcHRpbWl6ZUV4cHIodGhpcy5pdGVyYXRpb24sIG5hbWVzLCBjb25zdGFudHMpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGdldCBuYW1lcygpIHsKICAgICAgICByZXR1cm4gYWRkTmFtZXMoc3VwZXIubmFtZXMsIHRoaXMuaXRlcmF0aW9uLm5hbWVzKTsKICAgICAgfQogICAgfTsKICAgIHZhciBGb3JSYW5nZSA9IGNsYXNzIGV4dGVuZHMgRm9yIHsKICAgICAgY29uc3RydWN0b3IodmFyS2luZCwgbmFtZSwgZnJvbSwgdG8pIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMudmFyS2luZCA9IHZhcktpbmQ7CiAgICAgICAgdGhpcy5uYW1lID0gbmFtZTsKICAgICAgICB0aGlzLmZyb20gPSBmcm9tOwogICAgICAgIHRoaXMudG8gPSB0bzsKICAgICAgfQogICAgICByZW5kZXIob3B0cykgewogICAgICAgIGNvbnN0IHZhcktpbmQgPSBvcHRzLmVzNSA/IHNjb3BlXzEudmFyS2luZHMudmFyIDogdGhpcy52YXJLaW5kOwogICAgICAgIGNvbnN0IHsgbmFtZSwgZnJvbSwgdG8gfSA9IHRoaXM7CiAgICAgICAgcmV0dXJuIGBmb3IoJHt2YXJLaW5kfSAke25hbWV9PSR7ZnJvbX07ICR7bmFtZX08JHt0b307ICR7bmFtZX0rKylgICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICB9CiAgICAgIGdldCBuYW1lcygpIHsKICAgICAgICBjb25zdCBuYW1lcyA9IGFkZEV4cHJOYW1lcyhzdXBlci5uYW1lcywgdGhpcy5mcm9tKTsKICAgICAgICByZXR1cm4gYWRkRXhwck5hbWVzKG5hbWVzLCB0aGlzLnRvKTsKICAgICAgfQogICAgfTsKICAgIHZhciBGb3JJdGVyID0gY2xhc3MgZXh0ZW5kcyBGb3IgewogICAgICBjb25zdHJ1Y3Rvcihsb29wLCB2YXJLaW5kLCBuYW1lLCBpdGVyYWJsZSkgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5sb29wID0gbG9vcDsKICAgICAgICB0aGlzLnZhcktpbmQgPSB2YXJLaW5kOwogICAgICAgIHRoaXMubmFtZSA9IG5hbWU7CiAgICAgICAgdGhpcy5pdGVyYWJsZSA9IGl0ZXJhYmxlOwogICAgICB9CiAgICAgIHJlbmRlcihvcHRzKSB7CiAgICAgICAgcmV0dXJuIGBmb3IoJHt0aGlzLnZhcktpbmR9ICR7dGhpcy5uYW1lfSAke3RoaXMubG9vcH0gJHt0aGlzLml0ZXJhYmxlfSlgICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICB9CiAgICAgIG9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgewogICAgICAgIGlmICghc3VwZXIub3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICB0aGlzLml0ZXJhYmxlID0gb3B0aW1pemVFeHByKHRoaXMuaXRlcmFibGUsIG5hbWVzLCBjb25zdGFudHMpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGdldCBuYW1lcygpIHsKICAgICAgICByZXR1cm4gYWRkTmFtZXMoc3VwZXIubmFtZXMsIHRoaXMuaXRlcmFibGUubmFtZXMpOwogICAgICB9CiAgICB9OwogICAgdmFyIEZ1bmMgPSBjbGFzcyBleHRlbmRzIEJsb2NrTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKG5hbWUsIGFyZ3MsIGFzeW5jKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLm5hbWUgPSBuYW1lOwogICAgICAgIHRoaXMuYXJncyA9IGFyZ3M7CiAgICAgICAgdGhpcy5hc3luYyA9IGFzeW5jOwogICAgICB9CiAgICAgIHJlbmRlcihvcHRzKSB7CiAgICAgICAgY29uc3QgX2FzeW5jID0gdGhpcy5hc3luYyA/ICJhc3luYyAiIDogIiI7CiAgICAgICAgcmV0dXJuIGAke19hc3luY31mdW5jdGlvbiAke3RoaXMubmFtZX0oJHt0aGlzLmFyZ3N9KWAgKyBzdXBlci5yZW5kZXIob3B0cyk7CiAgICAgIH0KICAgIH07CiAgICBGdW5jLmtpbmQgPSAiZnVuYyI7CiAgICB2YXIgUmV0dXJuID0gY2xhc3MgZXh0ZW5kcyBQYXJlbnROb2RlIHsKICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICByZXR1cm4gInJldHVybiAiICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICB9CiAgICB9OwogICAgUmV0dXJuLmtpbmQgPSAicmV0dXJuIjsKICAgIHZhciBUcnkgPSBjbGFzcyBleHRlbmRzIEJsb2NrTm9kZSB7CiAgICAgIHJlbmRlcihvcHRzKSB7CiAgICAgICAgbGV0IGNvZGUgPSAidHJ5IiArIHN1cGVyLnJlbmRlcihvcHRzKTsKICAgICAgICBpZiAodGhpcy5jYXRjaCkKICAgICAgICAgIGNvZGUgKz0gdGhpcy5jYXRjaC5yZW5kZXIob3B0cyk7CiAgICAgICAgaWYgKHRoaXMuZmluYWxseSkKICAgICAgICAgIGNvZGUgKz0gdGhpcy5maW5hbGx5LnJlbmRlcihvcHRzKTsKICAgICAgICByZXR1cm4gY29kZTsKICAgICAgfQogICAgICBvcHRpbWl6ZU5vZGVzKCkgewogICAgICAgIHZhciBfYSwgX2I7CiAgICAgICAgc3VwZXIub3B0aW1pemVOb2RlcygpOwogICAgICAgIChfYSA9IHRoaXMuY2F0Y2gpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5vcHRpbWl6ZU5vZGVzKCk7CiAgICAgICAgKF9iID0gdGhpcy5maW5hbGx5KSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2Iub3B0aW1pemVOb2RlcygpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIG9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgewogICAgICAgIHZhciBfYSwgX2I7CiAgICAgICAgc3VwZXIub3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKTsKICAgICAgICAoX2EgPSB0aGlzLmNhdGNoKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2Eub3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKTsKICAgICAgICAoX2IgPSB0aGlzLmZpbmFsbHkpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGdldCBuYW1lcygpIHsKICAgICAgICBjb25zdCBuYW1lcyA9IHN1cGVyLm5hbWVzOwogICAgICAgIGlmICh0aGlzLmNhdGNoKQogICAgICAgICAgYWRkTmFtZXMobmFtZXMsIHRoaXMuY2F0Y2gubmFtZXMpOwogICAgICAgIGlmICh0aGlzLmZpbmFsbHkpCiAgICAgICAgICBhZGROYW1lcyhuYW1lcywgdGhpcy5maW5hbGx5Lm5hbWVzKTsKICAgICAgICByZXR1cm4gbmFtZXM7CiAgICAgIH0KICAgIH07CiAgICB2YXIgQ2F0Y2ggPSBjbGFzcyBleHRlbmRzIEJsb2NrTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKGVycm9yKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLmVycm9yID0gZXJyb3I7CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICByZXR1cm4gYGNhdGNoKCR7dGhpcy5lcnJvcn0pYCArIHN1cGVyLnJlbmRlcihvcHRzKTsKICAgICAgfQogICAgfTsKICAgIENhdGNoLmtpbmQgPSAiY2F0Y2giOwogICAgdmFyIEZpbmFsbHkgPSBjbGFzcyBleHRlbmRzIEJsb2NrTm9kZSB7CiAgICAgIHJlbmRlcihvcHRzKSB7CiAgICAgICAgcmV0dXJuICJmaW5hbGx5IiArIHN1cGVyLnJlbmRlcihvcHRzKTsKICAgICAgfQogICAgfTsKICAgIEZpbmFsbHkua2luZCA9ICJmaW5hbGx5IjsKICAgIHZhciBDb2RlR2VuID0gY2xhc3MgewogICAgICBjb25zdHJ1Y3RvcihleHRTY29wZSwgb3B0cyA9IHt9KSB7CiAgICAgICAgdGhpcy5fdmFsdWVzID0ge307CiAgICAgICAgdGhpcy5fYmxvY2tTdGFydHMgPSBbXTsKICAgICAgICB0aGlzLl9jb25zdGFudHMgPSB7fTsKICAgICAgICB0aGlzLm9wdHMgPSB7IC4uLm9wdHMsIF9uOiBvcHRzLmxpbmVzID8gIlxuIiA6ICIiIH07CiAgICAgICAgdGhpcy5fZXh0U2NvcGUgPSBleHRTY29wZTsKICAgICAgICB0aGlzLl9zY29wZSA9IG5ldyBzY29wZV8xLlNjb3BlKHsgcGFyZW50OiBleHRTY29wZSB9KTsKICAgICAgICB0aGlzLl9ub2RlcyA9IFtuZXcgUm9vdCgpXTsKICAgICAgfQogICAgICB0b1N0cmluZygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcm9vdC5yZW5kZXIodGhpcy5vcHRzKTsKICAgICAgfQogICAgICAvLyByZXR1cm5zIHVuaXF1ZSBuYW1lIGluIHRoZSBpbnRlcm5hbCBzY29wZQogICAgICBuYW1lKHByZWZpeCkgewogICAgICAgIHJldHVybiB0aGlzLl9zY29wZS5uYW1lKHByZWZpeCk7CiAgICAgIH0KICAgICAgLy8gcmVzZXJ2ZXMgdW5pcXVlIG5hbWUgaW4gdGhlIGV4dGVybmFsIHNjb3BlCiAgICAgIHNjb3BlTmFtZShwcmVmaXgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZXh0U2NvcGUubmFtZShwcmVmaXgpOwogICAgICB9CiAgICAgIC8vIHJlc2VydmVzIHVuaXF1ZSBuYW1lIGluIHRoZSBleHRlcm5hbCBzY29wZSBhbmQgYXNzaWducyB2YWx1ZSB0byBpdAogICAgICBzY29wZVZhbHVlKHByZWZpeE9yTmFtZSwgdmFsdWUpIHsKICAgICAgICBjb25zdCBuYW1lID0gdGhpcy5fZXh0U2NvcGUudmFsdWUocHJlZml4T3JOYW1lLCB2YWx1ZSk7CiAgICAgICAgY29uc3QgdnMgPSB0aGlzLl92YWx1ZXNbbmFtZS5wcmVmaXhdIHx8ICh0aGlzLl92YWx1ZXNbbmFtZS5wcmVmaXhdID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKSk7CiAgICAgICAgdnMuYWRkKG5hbWUpOwogICAgICAgIHJldHVybiBuYW1lOwogICAgICB9CiAgICAgIGdldFNjb3BlVmFsdWUocHJlZml4LCBrZXlPclJlZikgewogICAgICAgIHJldHVybiB0aGlzLl9leHRTY29wZS5nZXRWYWx1ZShwcmVmaXgsIGtleU9yUmVmKTsKICAgICAgfQogICAgICAvLyByZXR1cm4gY29kZSB0aGF0IGFzc2lnbnMgdmFsdWVzIGluIHRoZSBleHRlcm5hbCBzY29wZSB0byB0aGUgbmFtZXMgdGhhdCBhcmUgdXNlZCBpbnRlcm5hbGx5CiAgICAgIC8vIChzYW1lIG5hbWVzIHRoYXQgd2VyZSByZXR1cm5lZCBieSBnZW4uc2NvcGVOYW1lIG9yIGdlbi5zY29wZVZhbHVlKQogICAgICBzY29wZVJlZnMoc2NvcGVOYW1lKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2V4dFNjb3BlLnNjb3BlUmVmcyhzY29wZU5hbWUsIHRoaXMuX3ZhbHVlcyk7CiAgICAgIH0KICAgICAgc2NvcGVDb2RlKCkgewogICAgICAgIHJldHVybiB0aGlzLl9leHRTY29wZS5zY29wZUNvZGUodGhpcy5fdmFsdWVzKTsKICAgICAgfQogICAgICBfZGVmKHZhcktpbmQsIG5hbWVPclByZWZpeCwgcmhzLCBjb25zdGFudCkgewogICAgICAgIGNvbnN0IG5hbWUgPSB0aGlzLl9zY29wZS50b05hbWUobmFtZU9yUHJlZml4KTsKICAgICAgICBpZiAocmhzICE9PSB2b2lkIDAgJiYgY29uc3RhbnQpCiAgICAgICAgICB0aGlzLl9jb25zdGFudHNbbmFtZS5zdHJdID0gcmhzOwogICAgICAgIHRoaXMuX2xlYWZOb2RlKG5ldyBEZWYodmFyS2luZCwgbmFtZSwgcmhzKSk7CiAgICAgICAgcmV0dXJuIG5hbWU7CiAgICAgIH0KICAgICAgLy8gYGNvbnN0YCBkZWNsYXJhdGlvbiAoYHZhcmAgaW4gZXM1IG1vZGUpCiAgICAgIGNvbnN0KG5hbWVPclByZWZpeCwgcmhzLCBfY29uc3RhbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVmKHNjb3BlXzEudmFyS2luZHMuY29uc3QsIG5hbWVPclByZWZpeCwgcmhzLCBfY29uc3RhbnQpOwogICAgICB9CiAgICAgIC8vIGBsZXRgIGRlY2xhcmF0aW9uIHdpdGggb3B0aW9uYWwgYXNzaWdubWVudCAoYHZhcmAgaW4gZXM1IG1vZGUpCiAgICAgIGxldChuYW1lT3JQcmVmaXgsIHJocywgX2NvbnN0YW50KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlZihzY29wZV8xLnZhcktpbmRzLmxldCwgbmFtZU9yUHJlZml4LCByaHMsIF9jb25zdGFudCk7CiAgICAgIH0KICAgICAgLy8gYHZhcmAgZGVjbGFyYXRpb24gd2l0aCBvcHRpb25hbCBhc3NpZ25tZW50CiAgICAgIHZhcihuYW1lT3JQcmVmaXgsIHJocywgX2NvbnN0YW50KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlZihzY29wZV8xLnZhcktpbmRzLnZhciwgbmFtZU9yUHJlZml4LCByaHMsIF9jb25zdGFudCk7CiAgICAgIH0KICAgICAgLy8gYXNzaWdubWVudCBjb2RlCiAgICAgIGFzc2lnbihsaHMsIHJocywgc2lkZUVmZmVjdHMpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbGVhZk5vZGUobmV3IEFzc2lnbihsaHMsIHJocywgc2lkZUVmZmVjdHMpKTsKICAgICAgfQogICAgICAvLyBgKz1gIGNvZGUKICAgICAgYWRkKGxocywgcmhzKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2xlYWZOb2RlKG5ldyBBc3NpZ25PcChsaHMsIGV4cG9ydHMyLm9wZXJhdG9ycy5BREQsIHJocykpOwogICAgICB9CiAgICAgIC8vIGFwcGVuZHMgcGFzc2VkIFNhZmVFeHByIHRvIGNvZGUgb3IgZXhlY3V0ZXMgQmxvY2sKICAgICAgY29kZShjKSB7CiAgICAgICAgaWYgKHR5cGVvZiBjID09ICJmdW5jdGlvbiIpCiAgICAgICAgICBjKCk7CiAgICAgICAgZWxzZSBpZiAoYyAhPT0gY29kZV8xLm5pbCkKICAgICAgICAgIHRoaXMuX2xlYWZOb2RlKG5ldyBBbnlDb2RlKGMpKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyByZXR1cm5zIGNvZGUgZm9yIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgcGFzc2VkIGFyZ3VtZW50IGxpc3Qgb2Yga2V5LXZhbHVlIHBhaXJzCiAgICAgIG9iamVjdCguLi5rZXlWYWx1ZXMpIHsKICAgICAgICBjb25zdCBjb2RlID0gWyJ7Il07CiAgICAgICAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2Yga2V5VmFsdWVzKSB7CiAgICAgICAgICBpZiAoY29kZS5sZW5ndGggPiAxKQogICAgICAgICAgICBjb2RlLnB1c2goIiwiKTsKICAgICAgICAgIGNvZGUucHVzaChrZXkpOwogICAgICAgICAgaWYgKGtleSAhPT0gdmFsdWUgfHwgdGhpcy5vcHRzLmVzNSkgewogICAgICAgICAgICBjb2RlLnB1c2goIjoiKTsKICAgICAgICAgICAgKDAsIGNvZGVfMS5hZGRDb2RlQXJnKShjb2RlLCB2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvZGUucHVzaCgifSIpOwogICAgICAgIHJldHVybiBuZXcgY29kZV8xLl9Db2RlKGNvZGUpOwogICAgICB9CiAgICAgIC8vIGBpZmAgY2xhdXNlIChvciBzdGF0ZW1lbnQgaWYgYHRoZW5Cb2R5YCBhbmQsIG9wdGlvbmFsbHksIGBlbHNlQm9keWAgYXJlIHBhc3NlZCkKICAgICAgaWYoY29uZGl0aW9uLCB0aGVuQm9keSwgZWxzZUJvZHkpIHsKICAgICAgICB0aGlzLl9ibG9ja05vZGUobmV3IElmKGNvbmRpdGlvbikpOwogICAgICAgIGlmICh0aGVuQm9keSAmJiBlbHNlQm9keSkgewogICAgICAgICAgdGhpcy5jb2RlKHRoZW5Cb2R5KS5lbHNlKCkuY29kZShlbHNlQm9keSkuZW5kSWYoKTsKICAgICAgICB9IGVsc2UgaWYgKHRoZW5Cb2R5KSB7CiAgICAgICAgICB0aGlzLmNvZGUodGhlbkJvZHkpLmVuZElmKCk7CiAgICAgICAgfSBlbHNlIGlmIChlbHNlQm9keSkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdDb2RlR2VuOiAiZWxzZSIgYm9keSB3aXRob3V0ICJ0aGVuIiBib2R5Jyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIC8vIGBlbHNlIGlmYCBjbGF1c2UgLSBpbnZhbGlkIHdpdGhvdXQgYGlmYCBvciBhZnRlciBgZWxzZWAgY2xhdXNlcwogICAgICBlbHNlSWYoY29uZGl0aW9uKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Vsc2VOb2RlKG5ldyBJZihjb25kaXRpb24pKTsKICAgICAgfQogICAgICAvLyBgZWxzZWAgY2xhdXNlIC0gb25seSB2YWxpZCBhZnRlciBgaWZgIG9yIGBlbHNlIGlmYCBjbGF1c2VzCiAgICAgIGVsc2UoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Vsc2VOb2RlKG5ldyBFbHNlKCkpOwogICAgICB9CiAgICAgIC8vIGVuZCBgaWZgIHN0YXRlbWVudCAobmVlZGVkIGlmIGdlbi5pZiB3YXMgdXNlZCBvbmx5IHdpdGggY29uZGl0aW9uKQogICAgICBlbmRJZigpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZW5kQmxvY2tOb2RlKElmLCBFbHNlKTsKICAgICAgfQogICAgICBfZm9yKG5vZGUsIGZvckJvZHkpIHsKICAgICAgICB0aGlzLl9ibG9ja05vZGUobm9kZSk7CiAgICAgICAgaWYgKGZvckJvZHkpCiAgICAgICAgICB0aGlzLmNvZGUoZm9yQm9keSkuZW5kRm9yKCk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgLy8gYSBnZW5lcmljIGBmb3JgIGNsYXVzZSAob3Igc3RhdGVtZW50IGlmIGBmb3JCb2R5YCBpcyBwYXNzZWQpCiAgICAgIGZvcihpdGVyYXRpb24sIGZvckJvZHkpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZm9yKG5ldyBGb3JMb29wKGl0ZXJhdGlvbiksIGZvckJvZHkpOwogICAgICB9CiAgICAgIC8vIGBmb3JgIHN0YXRlbWVudCBmb3IgYSByYW5nZSBvZiB2YWx1ZXMKICAgICAgZm9yUmFuZ2UobmFtZU9yUHJlZml4LCBmcm9tLCB0bywgZm9yQm9keSwgdmFyS2luZCA9IHRoaXMub3B0cy5lczUgPyBzY29wZV8xLnZhcktpbmRzLnZhciA6IHNjb3BlXzEudmFyS2luZHMubGV0KSB7CiAgICAgICAgY29uc3QgbmFtZSA9IHRoaXMuX3Njb3BlLnRvTmFtZShuYW1lT3JQcmVmaXgpOwogICAgICAgIHJldHVybiB0aGlzLl9mb3IobmV3IEZvclJhbmdlKHZhcktpbmQsIG5hbWUsIGZyb20sIHRvKSwgKCkgPT4gZm9yQm9keShuYW1lKSk7CiAgICAgIH0KICAgICAgLy8gYGZvci1vZmAgc3RhdGVtZW50IChpbiBlczUgbW9kZSByZXBsYWNlIHdpdGggYSBub3JtYWwgZm9yIGxvb3ApCiAgICAgIGZvck9mKG5hbWVPclByZWZpeCwgaXRlcmFibGUsIGZvckJvZHksIHZhcktpbmQgPSBzY29wZV8xLnZhcktpbmRzLmNvbnN0KSB7CiAgICAgICAgY29uc3QgbmFtZSA9IHRoaXMuX3Njb3BlLnRvTmFtZShuYW1lT3JQcmVmaXgpOwogICAgICAgIGlmICh0aGlzLm9wdHMuZXM1KSB7CiAgICAgICAgICBjb25zdCBhcnIgPSBpdGVyYWJsZSBpbnN0YW5jZW9mIGNvZGVfMS5OYW1lID8gaXRlcmFibGUgOiB0aGlzLnZhcigiX2FyciIsIGl0ZXJhYmxlKTsKICAgICAgICAgIHJldHVybiB0aGlzLmZvclJhbmdlKCJfaSIsIDAsICgwLCBjb2RlXzEuXylgJHthcnJ9Lmxlbmd0aGAsIChpKSA9PiB7CiAgICAgICAgICAgIHRoaXMudmFyKG5hbWUsICgwLCBjb2RlXzEuXylgJHthcnJ9WyR7aX1dYCk7CiAgICAgICAgICAgIGZvckJvZHkobmFtZSk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX2ZvcihuZXcgRm9ySXRlcigib2YiLCB2YXJLaW5kLCBuYW1lLCBpdGVyYWJsZSksICgpID0+IGZvckJvZHkobmFtZSkpOwogICAgICB9CiAgICAgIC8vIGBmb3ItaW5gIHN0YXRlbWVudC4KICAgICAgLy8gV2l0aCBvcHRpb24gYG93blByb3BlcnRpZXNgIHJlcGxhY2VkIHdpdGggYSBgZm9yLW9mYCBsb29wIGZvciBvYmplY3Qga2V5cwogICAgICBmb3JJbihuYW1lT3JQcmVmaXgsIG9iaiwgZm9yQm9keSwgdmFyS2luZCA9IHRoaXMub3B0cy5lczUgPyBzY29wZV8xLnZhcktpbmRzLnZhciA6IHNjb3BlXzEudmFyS2luZHMuY29uc3QpIHsKICAgICAgICBpZiAodGhpcy5vcHRzLm93blByb3BlcnRpZXMpIHsKICAgICAgICAgIHJldHVybiB0aGlzLmZvck9mKG5hbWVPclByZWZpeCwgKDAsIGNvZGVfMS5fKWBPYmplY3Qua2V5cygke29ian0pYCwgZm9yQm9keSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IG5hbWUgPSB0aGlzLl9zY29wZS50b05hbWUobmFtZU9yUHJlZml4KTsKICAgICAgICByZXR1cm4gdGhpcy5fZm9yKG5ldyBGb3JJdGVyKCJpbiIsIHZhcktpbmQsIG5hbWUsIG9iaiksICgpID0+IGZvckJvZHkobmFtZSkpOwogICAgICB9CiAgICAgIC8vIGVuZCBgZm9yYCBsb29wCiAgICAgIGVuZEZvcigpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZW5kQmxvY2tOb2RlKEZvcik7CiAgICAgIH0KICAgICAgLy8gYGxhYmVsYCBzdGF0ZW1lbnQKICAgICAgbGFiZWwobGFiZWwpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbGVhZk5vZGUobmV3IExhYmVsKGxhYmVsKSk7CiAgICAgIH0KICAgICAgLy8gYGJyZWFrYCBzdGF0ZW1lbnQKICAgICAgYnJlYWsobGFiZWwpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbGVhZk5vZGUobmV3IEJyZWFrKGxhYmVsKSk7CiAgICAgIH0KICAgICAgLy8gYHJldHVybmAgc3RhdGVtZW50CiAgICAgIHJldHVybih2YWx1ZSkgewogICAgICAgIGNvbnN0IG5vZGUgPSBuZXcgUmV0dXJuKCk7CiAgICAgICAgdGhpcy5fYmxvY2tOb2RlKG5vZGUpOwogICAgICAgIHRoaXMuY29kZSh2YWx1ZSk7CiAgICAgICAgaWYgKG5vZGUubm9kZXMubGVuZ3RoICE9PSAxKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdDb2RlR2VuOiAicmV0dXJuIiBzaG91bGQgaGF2ZSBvbmUgbm9kZScpOwogICAgICAgIHJldHVybiB0aGlzLl9lbmRCbG9ja05vZGUoUmV0dXJuKTsKICAgICAgfQogICAgICAvLyBgdHJ5YCBzdGF0ZW1lbnQKICAgICAgdHJ5KHRyeUJvZHksIGNhdGNoQ29kZSwgZmluYWxseUNvZGUpIHsKICAgICAgICBpZiAoIWNhdGNoQ29kZSAmJiAhZmluYWxseUNvZGUpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NvZGVHZW46ICJ0cnkiIHdpdGhvdXQgImNhdGNoIiBhbmQgImZpbmFsbHkiJyk7CiAgICAgICAgY29uc3Qgbm9kZSA9IG5ldyBUcnkoKTsKICAgICAgICB0aGlzLl9ibG9ja05vZGUobm9kZSk7CiAgICAgICAgdGhpcy5jb2RlKHRyeUJvZHkpOwogICAgICAgIGlmIChjYXRjaENvZGUpIHsKICAgICAgICAgIGNvbnN0IGVycm9yID0gdGhpcy5uYW1lKCJlIik7CiAgICAgICAgICB0aGlzLl9jdXJyTm9kZSA9IG5vZGUuY2F0Y2ggPSBuZXcgQ2F0Y2goZXJyb3IpOwogICAgICAgICAgY2F0Y2hDb2RlKGVycm9yKTsKICAgICAgICB9CiAgICAgICAgaWYgKGZpbmFsbHlDb2RlKSB7CiAgICAgICAgICB0aGlzLl9jdXJyTm9kZSA9IG5vZGUuZmluYWxseSA9IG5ldyBGaW5hbGx5KCk7CiAgICAgICAgICB0aGlzLmNvZGUoZmluYWxseUNvZGUpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fZW5kQmxvY2tOb2RlKENhdGNoLCBGaW5hbGx5KTsKICAgICAgfQogICAgICAvLyBgdGhyb3dgIHN0YXRlbWVudAogICAgICB0aHJvdyhlcnJvcikgewogICAgICAgIHJldHVybiB0aGlzLl9sZWFmTm9kZShuZXcgVGhyb3coZXJyb3IpKTsKICAgICAgfQogICAgICAvLyBzdGFydCBzZWxmLWJhbGFuY2luZyBibG9jawogICAgICBibG9jayhib2R5LCBub2RlQ291bnQpIHsKICAgICAgICB0aGlzLl9ibG9ja1N0YXJ0cy5wdXNoKHRoaXMuX25vZGVzLmxlbmd0aCk7CiAgICAgICAgaWYgKGJvZHkpCiAgICAgICAgICB0aGlzLmNvZGUoYm9keSkuZW5kQmxvY2sobm9kZUNvdW50KTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyBlbmQgdGhlIGN1cnJlbnQgc2VsZi1iYWxhbmNpbmcgYmxvY2sKICAgICAgZW5kQmxvY2sobm9kZUNvdW50KSB7CiAgICAgICAgY29uc3QgbGVuID0gdGhpcy5fYmxvY2tTdGFydHMucG9wKCk7CiAgICAgICAgaWYgKGxlbiA9PT0gdm9pZCAwKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDb2RlR2VuOiBub3QgaW4gc2VsZi1iYWxhbmNpbmcgYmxvY2siKTsKICAgICAgICBjb25zdCB0b0Nsb3NlID0gdGhpcy5fbm9kZXMubGVuZ3RoIC0gbGVuOwogICAgICAgIGlmICh0b0Nsb3NlIDwgMCB8fCBub2RlQ291bnQgIT09IHZvaWQgMCAmJiB0b0Nsb3NlICE9PSBub2RlQ291bnQpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ29kZUdlbjogd3JvbmcgbnVtYmVyIG9mIG5vZGVzOiAke3RvQ2xvc2V9IHZzICR7bm9kZUNvdW50fSBleHBlY3RlZGApOwogICAgICAgIH0KICAgICAgICB0aGlzLl9ub2Rlcy5sZW5ndGggPSBsZW47CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgLy8gYGZ1bmN0aW9uYCBoZWFkaW5nIChvciBkZWZpbml0aW9uIGlmIGZ1bmNCb2R5IGlzIHBhc3NlZCkKICAgICAgZnVuYyhuYW1lLCBhcmdzID0gY29kZV8xLm5pbCwgYXN5bmMsIGZ1bmNCb2R5KSB7CiAgICAgICAgdGhpcy5fYmxvY2tOb2RlKG5ldyBGdW5jKG5hbWUsIGFyZ3MsIGFzeW5jKSk7CiAgICAgICAgaWYgKGZ1bmNCb2R5KQogICAgICAgICAgdGhpcy5jb2RlKGZ1bmNCb2R5KS5lbmRGdW5jKCk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgLy8gZW5kIGZ1bmN0aW9uIGRlZmluaXRpb24KICAgICAgZW5kRnVuYygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZW5kQmxvY2tOb2RlKEZ1bmMpOwogICAgICB9CiAgICAgIG9wdGltaXplKG4gPSAxKSB7CiAgICAgICAgd2hpbGUgKG4tLSA+IDApIHsKICAgICAgICAgIHRoaXMuX3Jvb3Qub3B0aW1pemVOb2RlcygpOwogICAgICAgICAgdGhpcy5fcm9vdC5vcHRpbWl6ZU5hbWVzKHRoaXMuX3Jvb3QubmFtZXMsIHRoaXMuX2NvbnN0YW50cyk7CiAgICAgICAgfQogICAgICB9CiAgICAgIF9sZWFmTm9kZShub2RlKSB7CiAgICAgICAgdGhpcy5fY3Vyck5vZGUubm9kZXMucHVzaChub2RlKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBfYmxvY2tOb2RlKG5vZGUpIHsKICAgICAgICB0aGlzLl9jdXJyTm9kZS5ub2Rlcy5wdXNoKG5vZGUpOwogICAgICAgIHRoaXMuX25vZGVzLnB1c2gobm9kZSk7CiAgICAgIH0KICAgICAgX2VuZEJsb2NrTm9kZShOMSwgTjIpIHsKICAgICAgICBjb25zdCBuID0gdGhpcy5fY3Vyck5vZGU7CiAgICAgICAgaWYgKG4gaW5zdGFuY2VvZiBOMSB8fCBOMiAmJiBuIGluc3RhbmNlb2YgTjIpIHsKICAgICAgICAgIHRoaXMuX25vZGVzLnBvcCgpOwogICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgICAgfQogICAgICAgIHRocm93IG5ldyBFcnJvcihgQ29kZUdlbjogbm90IGluIGJsb2NrICIke04yID8gYCR7TjEua2luZH0vJHtOMi5raW5kfWAgOiBOMS5raW5kfSJgKTsKICAgICAgfQogICAgICBfZWxzZU5vZGUobm9kZSkgewogICAgICAgIGNvbnN0IG4gPSB0aGlzLl9jdXJyTm9kZTsKICAgICAgICBpZiAoIShuIGluc3RhbmNlb2YgSWYpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NvZGVHZW46ICJlbHNlIiB3aXRob3V0ICJpZiInKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fY3Vyck5vZGUgPSBuLmVsc2UgPSBub2RlOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGdldCBfcm9vdCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbm9kZXNbMF07CiAgICAgIH0KICAgICAgZ2V0IF9jdXJyTm9kZSgpIHsKICAgICAgICBjb25zdCBucyA9IHRoaXMuX25vZGVzOwogICAgICAgIHJldHVybiBuc1tucy5sZW5ndGggLSAxXTsKICAgICAgfQogICAgICBzZXQgX2N1cnJOb2RlKG5vZGUpIHsKICAgICAgICBjb25zdCBucyA9IHRoaXMuX25vZGVzOwogICAgICAgIG5zW25zLmxlbmd0aCAtIDFdID0gbm9kZTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkNvZGVHZW4gPSBDb2RlR2VuOwogICAgZnVuY3Rpb24gYWRkTmFtZXMobmFtZXMsIGZyb20pIHsKICAgICAgZm9yIChjb25zdCBuIGluIGZyb20pCiAgICAgICAgbmFtZXNbbl0gPSAobmFtZXNbbl0gfHwgMCkgKyAoZnJvbVtuXSB8fCAwKTsKICAgICAgcmV0dXJuIG5hbWVzOwogICAgfQogICAgZnVuY3Rpb24gYWRkRXhwck5hbWVzKG5hbWVzLCBmcm9tKSB7CiAgICAgIHJldHVybiBmcm9tIGluc3RhbmNlb2YgY29kZV8xLl9Db2RlT3JOYW1lID8gYWRkTmFtZXMobmFtZXMsIGZyb20ubmFtZXMpIDogbmFtZXM7CiAgICB9CiAgICBmdW5jdGlvbiBvcHRpbWl6ZUV4cHIoZXhwciwgbmFtZXMsIGNvbnN0YW50cykgewogICAgICBpZiAoZXhwciBpbnN0YW5jZW9mIGNvZGVfMS5OYW1lKQogICAgICAgIHJldHVybiByZXBsYWNlTmFtZShleHByKTsKICAgICAgaWYgKCFjYW5PcHRpbWl6ZShleHByKSkKICAgICAgICByZXR1cm4gZXhwcjsKICAgICAgcmV0dXJuIG5ldyBjb2RlXzEuX0NvZGUoZXhwci5faXRlbXMucmVkdWNlKChpdGVtcywgYykgPT4gewogICAgICAgIGlmIChjIGluc3RhbmNlb2YgY29kZV8xLk5hbWUpCiAgICAgICAgICBjID0gcmVwbGFjZU5hbWUoYyk7CiAgICAgICAgaWYgKGMgaW5zdGFuY2VvZiBjb2RlXzEuX0NvZGUpCiAgICAgICAgICBpdGVtcy5wdXNoKC4uLmMuX2l0ZW1zKTsKICAgICAgICBlbHNlCiAgICAgICAgICBpdGVtcy5wdXNoKGMpOwogICAgICAgIHJldHVybiBpdGVtczsKICAgICAgfSwgW10pKTsKICAgICAgZnVuY3Rpb24gcmVwbGFjZU5hbWUobikgewogICAgICAgIGNvbnN0IGMgPSBjb25zdGFudHNbbi5zdHJdOwogICAgICAgIGlmIChjID09PSB2b2lkIDAgfHwgbmFtZXNbbi5zdHJdICE9PSAxKQogICAgICAgICAgcmV0dXJuIG47CiAgICAgICAgZGVsZXRlIG5hbWVzW24uc3RyXTsKICAgICAgICByZXR1cm4gYzsKICAgICAgfQogICAgICBmdW5jdGlvbiBjYW5PcHRpbWl6ZShlKSB7CiAgICAgICAgcmV0dXJuIGUgaW5zdGFuY2VvZiBjb2RlXzEuX0NvZGUgJiYgZS5faXRlbXMuc29tZSgoYykgPT4gYyBpbnN0YW5jZW9mIGNvZGVfMS5OYW1lICYmIG5hbWVzW2Muc3RyXSA9PT0gMSAmJiBjb25zdGFudHNbYy5zdHJdICE9PSB2b2lkIDApOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBzdWJ0cmFjdE5hbWVzKG5hbWVzLCBmcm9tKSB7CiAgICAgIGZvciAoY29uc3QgbiBpbiBmcm9tKQogICAgICAgIG5hbWVzW25dID0gKG5hbWVzW25dIHx8IDApIC0gKGZyb21bbl0gfHwgMCk7CiAgICB9CiAgICBmdW5jdGlvbiBub3QoeCkgewogICAgICByZXR1cm4gdHlwZW9mIHggPT0gImJvb2xlYW4iIHx8IHR5cGVvZiB4ID09ICJudW1iZXIiIHx8IHggPT09IG51bGwgPyAheCA6ICgwLCBjb2RlXzEuXylgISR7cGFyKHgpfWA7CiAgICB9CiAgICBleHBvcnRzMi5ub3QgPSBub3Q7CiAgICB2YXIgYW5kQ29kZSA9IG1hcHBlbmQoZXhwb3J0czIub3BlcmF0b3JzLkFORCk7CiAgICBmdW5jdGlvbiBhbmQoLi4uYXJncykgewogICAgICByZXR1cm4gYXJncy5yZWR1Y2UoYW5kQ29kZSk7CiAgICB9CiAgICBleHBvcnRzMi5hbmQgPSBhbmQ7CiAgICB2YXIgb3JDb2RlID0gbWFwcGVuZChleHBvcnRzMi5vcGVyYXRvcnMuT1IpOwogICAgZnVuY3Rpb24gb3IoLi4uYXJncykgewogICAgICByZXR1cm4gYXJncy5yZWR1Y2Uob3JDb2RlKTsKICAgIH0KICAgIGV4cG9ydHMyLm9yID0gb3I7CiAgICBmdW5jdGlvbiBtYXBwZW5kKG9wKSB7CiAgICAgIHJldHVybiAoeCwgeSkgPT4geCA9PT0gY29kZV8xLm5pbCA/IHkgOiB5ID09PSBjb2RlXzEubmlsID8geCA6ICgwLCBjb2RlXzEuXylgJHtwYXIoeCl9ICR7b3B9ICR7cGFyKHkpfWA7CiAgICB9CiAgICBmdW5jdGlvbiBwYXIoeCkgewogICAgICByZXR1cm4geCBpbnN0YW5jZW9mIGNvZGVfMS5OYW1lID8geCA6ICgwLCBjb2RlXzEuXylgKCR7eH0pYDsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS91dGlsLmpzCnZhciByZXF1aXJlX3V0aWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS91dGlsLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jaGVja1N0cmljdE1vZGUgPSBleHBvcnRzMi5nZXRFcnJvclBhdGggPSBleHBvcnRzMi5UeXBlID0gZXhwb3J0czIudXNlRnVuYyA9IGV4cG9ydHMyLnNldEV2YWx1YXRlZCA9IGV4cG9ydHMyLmV2YWx1YXRlZFByb3BzVG9OYW1lID0gZXhwb3J0czIubWVyZ2VFdmFsdWF0ZWQgPSBleHBvcnRzMi5lYWNoSXRlbSA9IGV4cG9ydHMyLnVuZXNjYXBlSnNvblBvaW50ZXIgPSBleHBvcnRzMi5lc2NhcGVKc29uUG9pbnRlciA9IGV4cG9ydHMyLmVzY2FwZUZyYWdtZW50ID0gZXhwb3J0czIudW5lc2NhcGVGcmFnbWVudCA9IGV4cG9ydHMyLnNjaGVtYVJlZk9yVmFsID0gZXhwb3J0czIuc2NoZW1hSGFzUnVsZXNCdXRSZWYgPSBleHBvcnRzMi5zY2hlbWFIYXNSdWxlcyA9IGV4cG9ydHMyLmNoZWNrVW5rbm93blJ1bGVzID0gZXhwb3J0czIuYWx3YXlzVmFsaWRTY2hlbWEgPSBleHBvcnRzMi50b0hhc2ggPSB2b2lkIDA7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlKCk7CiAgICBmdW5jdGlvbiB0b0hhc2goYXJyKSB7CiAgICAgIGNvbnN0IGhhc2ggPSB7fTsKICAgICAgZm9yIChjb25zdCBpdGVtIG9mIGFycikKICAgICAgICBoYXNoW2l0ZW1dID0gdHJ1ZTsKICAgICAgcmV0dXJuIGhhc2g7CiAgICB9CiAgICBleHBvcnRzMi50b0hhc2ggPSB0b0hhc2g7CiAgICBmdW5jdGlvbiBhbHdheXNWYWxpZFNjaGVtYShpdCwgc2NoZW1hKSB7CiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hID09ICJib29sZWFuIikKICAgICAgICByZXR1cm4gc2NoZW1hOwogICAgICBpZiAoT2JqZWN0LmtleXMoc2NoZW1hKS5sZW5ndGggPT09IDApCiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIGNoZWNrVW5rbm93blJ1bGVzKGl0LCBzY2hlbWEpOwogICAgICByZXR1cm4gIXNjaGVtYUhhc1J1bGVzKHNjaGVtYSwgaXQuc2VsZi5SVUxFUy5hbGwpOwogICAgfQogICAgZXhwb3J0czIuYWx3YXlzVmFsaWRTY2hlbWEgPSBhbHdheXNWYWxpZFNjaGVtYTsKICAgIGZ1bmN0aW9uIGNoZWNrVW5rbm93blJ1bGVzKGl0LCBzY2hlbWEgPSBpdC5zY2hlbWEpIHsKICAgICAgY29uc3QgeyBvcHRzLCBzZWxmOiBzZWxmMiB9ID0gaXQ7CiAgICAgIGlmICghb3B0cy5zdHJpY3RTY2hlbWEpCiAgICAgICAgcmV0dXJuOwogICAgICBpZiAodHlwZW9mIHNjaGVtYSA9PT0gImJvb2xlYW4iKQogICAgICAgIHJldHVybjsKICAgICAgY29uc3QgcnVsZXMgPSBzZWxmMi5SVUxFUy5rZXl3b3JkczsKICAgICAgZm9yIChjb25zdCBrZXkgaW4gc2NoZW1hKSB7CiAgICAgICAgaWYgKCFydWxlc1trZXldKQogICAgICAgICAgY2hlY2tTdHJpY3RNb2RlKGl0LCBgdW5rbm93biBrZXl3b3JkOiAiJHtrZXl9ImApOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5jaGVja1Vua25vd25SdWxlcyA9IGNoZWNrVW5rbm93blJ1bGVzOwogICAgZnVuY3Rpb24gc2NoZW1hSGFzUnVsZXMoc2NoZW1hLCBydWxlcykgewogICAgICBpZiAodHlwZW9mIHNjaGVtYSA9PSAiYm9vbGVhbiIpCiAgICAgICAgcmV0dXJuICFzY2hlbWE7CiAgICAgIGZvciAoY29uc3Qga2V5IGluIHNjaGVtYSkKICAgICAgICBpZiAocnVsZXNba2V5XSkKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICByZXR1cm4gZmFsc2U7CiAgICB9CiAgICBleHBvcnRzMi5zY2hlbWFIYXNSdWxlcyA9IHNjaGVtYUhhc1J1bGVzOwogICAgZnVuY3Rpb24gc2NoZW1hSGFzUnVsZXNCdXRSZWYoc2NoZW1hLCBSVUxFUykgewogICAgICBpZiAodHlwZW9mIHNjaGVtYSA9PSAiYm9vbGVhbiIpCiAgICAgICAgcmV0dXJuICFzY2hlbWE7CiAgICAgIGZvciAoY29uc3Qga2V5IGluIHNjaGVtYSkKICAgICAgICBpZiAoa2V5ICE9PSAiJHJlZiIgJiYgUlVMRVMuYWxsW2tleV0pCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQogICAgZXhwb3J0czIuc2NoZW1hSGFzUnVsZXNCdXRSZWYgPSBzY2hlbWFIYXNSdWxlc0J1dFJlZjsKICAgIGZ1bmN0aW9uIHNjaGVtYVJlZk9yVmFsKHsgdG9wU2NoZW1hUmVmLCBzY2hlbWFQYXRoIH0sIHNjaGVtYSwga2V5d29yZCwgJGRhdGEpIHsKICAgICAgaWYgKCEkZGF0YSkgewogICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hID09ICJudW1iZXIiIHx8IHR5cGVvZiBzY2hlbWEgPT0gImJvb2xlYW4iKQogICAgICAgICAgcmV0dXJuIHNjaGVtYTsKICAgICAgICBpZiAodHlwZW9mIHNjaGVtYSA9PSAic3RyaW5nIikKICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hfWA7CiAgICAgIH0KICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylgJHt0b3BTY2hlbWFSZWZ9JHtzY2hlbWFQYXRofSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkoa2V5d29yZCl9YDsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVtYVJlZk9yVmFsID0gc2NoZW1hUmVmT3JWYWw7CiAgICBmdW5jdGlvbiB1bmVzY2FwZUZyYWdtZW50KHN0cikgewogICAgICByZXR1cm4gdW5lc2NhcGVKc29uUG9pbnRlcihkZWNvZGVVUklDb21wb25lbnQoc3RyKSk7CiAgICB9CiAgICBleHBvcnRzMi51bmVzY2FwZUZyYWdtZW50ID0gdW5lc2NhcGVGcmFnbWVudDsKICAgIGZ1bmN0aW9uIGVzY2FwZUZyYWdtZW50KHN0cikgewogICAgICByZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KGVzY2FwZUpzb25Qb2ludGVyKHN0cikpOwogICAgfQogICAgZXhwb3J0czIuZXNjYXBlRnJhZ21lbnQgPSBlc2NhcGVGcmFnbWVudDsKICAgIGZ1bmN0aW9uIGVzY2FwZUpzb25Qb2ludGVyKHN0cikgewogICAgICBpZiAodHlwZW9mIHN0ciA9PSAibnVtYmVyIikKICAgICAgICByZXR1cm4gYCR7c3RyfWA7CiAgICAgIHJldHVybiBzdHIucmVwbGFjZSgvfi9nLCAifjAiKS5yZXBsYWNlKC9cLy9nLCAifjEiKTsKICAgIH0KICAgIGV4cG9ydHMyLmVzY2FwZUpzb25Qb2ludGVyID0gZXNjYXBlSnNvblBvaW50ZXI7CiAgICBmdW5jdGlvbiB1bmVzY2FwZUpzb25Qb2ludGVyKHN0cikgewogICAgICByZXR1cm4gc3RyLnJlcGxhY2UoL34xL2csICIvIikucmVwbGFjZSgvfjAvZywgIn4iKTsKICAgIH0KICAgIGV4cG9ydHMyLnVuZXNjYXBlSnNvblBvaW50ZXIgPSB1bmVzY2FwZUpzb25Qb2ludGVyOwogICAgZnVuY3Rpb24gZWFjaEl0ZW0oeHMsIGYpIHsKICAgICAgaWYgKEFycmF5LmlzQXJyYXkoeHMpKSB7CiAgICAgICAgZm9yIChjb25zdCB4IG9mIHhzKQogICAgICAgICAgZih4KTsKICAgICAgfSBlbHNlIHsKICAgICAgICBmKHhzKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuZWFjaEl0ZW0gPSBlYWNoSXRlbTsKICAgIGZ1bmN0aW9uIG1ha2VNZXJnZUV2YWx1YXRlZCh7IG1lcmdlTmFtZXMsIG1lcmdlVG9OYW1lLCBtZXJnZVZhbHVlcywgcmVzdWx0VG9OYW1lIH0pIHsKICAgICAgcmV0dXJuIChnZW4sIGZyb20sIHRvLCB0b05hbWUpID0+IHsKICAgICAgICBjb25zdCByZXMgPSB0byA9PT0gdm9pZCAwID8gZnJvbSA6IHRvIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUgPyAoZnJvbSBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lID8gbWVyZ2VOYW1lcyhnZW4sIGZyb20sIHRvKSA6IG1lcmdlVG9OYW1lKGdlbiwgZnJvbSwgdG8pLCB0bykgOiBmcm9tIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUgPyAobWVyZ2VUb05hbWUoZ2VuLCB0bywgZnJvbSksIGZyb20pIDogbWVyZ2VWYWx1ZXMoZnJvbSwgdG8pOwogICAgICAgIHJldHVybiB0b05hbWUgPT09IGNvZGVnZW5fMS5OYW1lICYmICEocmVzIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUpID8gcmVzdWx0VG9OYW1lKGdlbiwgcmVzKSA6IHJlczsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLm1lcmdlRXZhbHVhdGVkID0gewogICAgICBwcm9wczogbWFrZU1lcmdlRXZhbHVhdGVkKHsKICAgICAgICBtZXJnZU5hbWVzOiAoZ2VuLCBmcm9tLCB0bykgPT4gZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHt0b30gIT09IHRydWUgJiYgJHtmcm9tfSAhPT0gdW5kZWZpbmVkYCwgKCkgPT4gewogICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtmcm9tfSA9PT0gdHJ1ZWAsICgpID0+IGdlbi5hc3NpZ24odG8sIHRydWUpLCAoKSA9PiBnZW4uYXNzaWduKHRvLCAoMCwgY29kZWdlbl8xLl8pYCR7dG99IHx8IHt9YCkuY29kZSgoMCwgY29kZWdlbl8xLl8pYE9iamVjdC5hc3NpZ24oJHt0b30sICR7ZnJvbX0pYCkpOwogICAgICAgIH0pLAogICAgICAgIG1lcmdlVG9OYW1lOiAoZ2VuLCBmcm9tLCB0bykgPT4gZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHt0b30gIT09IHRydWVgLCAoKSA9PiB7CiAgICAgICAgICBpZiAoZnJvbSA9PT0gdHJ1ZSkgewogICAgICAgICAgICBnZW4uYXNzaWduKHRvLCB0cnVlKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGdlbi5hc3NpZ24odG8sICgwLCBjb2RlZ2VuXzEuXylgJHt0b30gfHwge31gKTsKICAgICAgICAgICAgc2V0RXZhbHVhdGVkKGdlbiwgdG8sIGZyb20pOwogICAgICAgICAgfQogICAgICAgIH0pLAogICAgICAgIG1lcmdlVmFsdWVzOiAoZnJvbSwgdG8pID0+IGZyb20gPT09IHRydWUgPyB0cnVlIDogeyAuLi5mcm9tLCAuLi50byB9LAogICAgICAgIHJlc3VsdFRvTmFtZTogZXZhbHVhdGVkUHJvcHNUb05hbWUKICAgICAgfSksCiAgICAgIGl0ZW1zOiBtYWtlTWVyZ2VFdmFsdWF0ZWQoewogICAgICAgIG1lcmdlTmFtZXM6IChnZW4sIGZyb20sIHRvKSA9PiBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke3RvfSAhPT0gdHJ1ZSAmJiAke2Zyb219ICE9PSB1bmRlZmluZWRgLCAoKSA9PiBnZW4uYXNzaWduKHRvLCAoMCwgY29kZWdlbl8xLl8pYCR7ZnJvbX0gPT09IHRydWUgPyB0cnVlIDogJHt0b30gPiAke2Zyb219ID8gJHt0b30gOiAke2Zyb219YCkpLAogICAgICAgIG1lcmdlVG9OYW1lOiAoZ2VuLCBmcm9tLCB0bykgPT4gZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHt0b30gIT09IHRydWVgLCAoKSA9PiBnZW4uYXNzaWduKHRvLCBmcm9tID09PSB0cnVlID8gdHJ1ZSA6ICgwLCBjb2RlZ2VuXzEuXylgJHt0b30gPiAke2Zyb219ID8gJHt0b30gOiAke2Zyb219YCkpLAogICAgICAgIG1lcmdlVmFsdWVzOiAoZnJvbSwgdG8pID0+IGZyb20gPT09IHRydWUgPyB0cnVlIDogTWF0aC5tYXgoZnJvbSwgdG8pLAogICAgICAgIHJlc3VsdFRvTmFtZTogKGdlbiwgaXRlbXMpID0+IGdlbi52YXIoIml0ZW1zIiwgaXRlbXMpCiAgICAgIH0pCiAgICB9OwogICAgZnVuY3Rpb24gZXZhbHVhdGVkUHJvcHNUb05hbWUoZ2VuLCBwcykgewogICAgICBpZiAocHMgPT09IHRydWUpCiAgICAgICAgcmV0dXJuIGdlbi52YXIoInByb3BzIiwgdHJ1ZSk7CiAgICAgIGNvbnN0IHByb3BzID0gZ2VuLnZhcigicHJvcHMiLCAoMCwgY29kZWdlbl8xLl8pYHt9YCk7CiAgICAgIGlmIChwcyAhPT0gdm9pZCAwKQogICAgICAgIHNldEV2YWx1YXRlZChnZW4sIHByb3BzLCBwcyk7CiAgICAgIHJldHVybiBwcm9wczsKICAgIH0KICAgIGV4cG9ydHMyLmV2YWx1YXRlZFByb3BzVG9OYW1lID0gZXZhbHVhdGVkUHJvcHNUb05hbWU7CiAgICBmdW5jdGlvbiBzZXRFdmFsdWF0ZWQoZ2VuLCBwcm9wcywgcHMpIHsKICAgICAgT2JqZWN0LmtleXMocHMpLmZvckVhY2goKHApID0+IGdlbi5hc3NpZ24oKDAsIGNvZGVnZW5fMS5fKWAke3Byb3BzfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkocCl9YCwgdHJ1ZSkpOwogICAgfQogICAgZXhwb3J0czIuc2V0RXZhbHVhdGVkID0gc2V0RXZhbHVhdGVkOwogICAgdmFyIHNuaXBwZXRzID0ge307CiAgICBmdW5jdGlvbiB1c2VGdW5jKGdlbiwgZikgewogICAgICByZXR1cm4gZ2VuLnNjb3BlVmFsdWUoImZ1bmMiLCB7CiAgICAgICAgcmVmOiBmLAogICAgICAgIGNvZGU6IHNuaXBwZXRzW2YuY29kZV0gfHwgKHNuaXBwZXRzW2YuY29kZV0gPSBuZXcgY29kZV8xLl9Db2RlKGYuY29kZSkpCiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudXNlRnVuYyA9IHVzZUZ1bmM7CiAgICB2YXIgVHlwZTsKICAgIChmdW5jdGlvbihUeXBlMikgewogICAgICBUeXBlMltUeXBlMlsiTnVtIl0gPSAwXSA9ICJOdW0iOwogICAgICBUeXBlMltUeXBlMlsiU3RyIl0gPSAxXSA9ICJTdHIiOwogICAgfSkoVHlwZSB8fCAoZXhwb3J0czIuVHlwZSA9IFR5cGUgPSB7fSkpOwogICAgZnVuY3Rpb24gZ2V0RXJyb3JQYXRoKGRhdGFQcm9wLCBkYXRhUHJvcFR5cGUsIGpzUHJvcGVydHlTeW50YXgpIHsKICAgICAgaWYgKGRhdGFQcm9wIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUpIHsKICAgICAgICBjb25zdCBpc051bWJlciA9IGRhdGFQcm9wVHlwZSA9PT0gVHlwZS5OdW07CiAgICAgICAgcmV0dXJuIGpzUHJvcGVydHlTeW50YXggPyBpc051bWJlciA/ICgwLCBjb2RlZ2VuXzEuXylgIlsiICsgJHtkYXRhUHJvcH0gKyAiXSJgIDogKDAsIGNvZGVnZW5fMS5fKWAiWyciICsgJHtkYXRhUHJvcH0gKyAiJ10iYCA6IGlzTnVtYmVyID8gKDAsIGNvZGVnZW5fMS5fKWAiLyIgKyAke2RhdGFQcm9wfWAgOiAoMCwgY29kZWdlbl8xLl8pYCIvIiArICR7ZGF0YVByb3B9LnJlcGxhY2UoL34vZywgIn4wIikucmVwbGFjZSgvXFwvL2csICJ+MSIpYDsKICAgICAgfQogICAgICByZXR1cm4ganNQcm9wZXJ0eVN5bnRheCA/ICgwLCBjb2RlZ2VuXzEuZ2V0UHJvcGVydHkpKGRhdGFQcm9wKS50b1N0cmluZygpIDogIi8iICsgZXNjYXBlSnNvblBvaW50ZXIoZGF0YVByb3ApOwogICAgfQogICAgZXhwb3J0czIuZ2V0RXJyb3JQYXRoID0gZ2V0RXJyb3JQYXRoOwogICAgZnVuY3Rpb24gY2hlY2tTdHJpY3RNb2RlKGl0LCBtc2csIG1vZGUgPSBpdC5vcHRzLnN0cmljdFNjaGVtYSkgewogICAgICBpZiAoIW1vZGUpCiAgICAgICAgcmV0dXJuOwogICAgICBtc2cgPSBgc3RyaWN0IG1vZGU6ICR7bXNnfWA7CiAgICAgIGlmIChtb2RlID09PSB0cnVlKQogICAgICAgIHRocm93IG5ldyBFcnJvcihtc2cpOwogICAgICBpdC5zZWxmLmxvZ2dlci53YXJuKG1zZyk7CiAgICB9CiAgICBleHBvcnRzMi5jaGVja1N0cmljdE1vZGUgPSBjaGVja1N0cmljdE1vZGU7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvbmFtZXMuanMKdmFyIHJlcXVpcmVfbmFtZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9uYW1lcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIG5hbWVzID0gewogICAgICAvLyB2YWxpZGF0aW9uIGZ1bmN0aW9uIGFyZ3VtZW50cwogICAgICBkYXRhOiBuZXcgY29kZWdlbl8xLk5hbWUoImRhdGEiKSwKICAgICAgLy8gZGF0YSBwYXNzZWQgdG8gdmFsaWRhdGlvbiBmdW5jdGlvbgogICAgICAvLyBhcmdzIHBhc3NlZCBmcm9tIHJlZmVyZW5jaW5nIHNjaGVtYQogICAgICB2YWxDeHQ6IG5ldyBjb2RlZ2VuXzEuTmFtZSgidmFsQ3h0IiksCiAgICAgIC8vIHZhbGlkYXRpb24vZGF0YSBjb250ZXh0IC0gc2hvdWxkIG5vdCBiZSB1c2VkIGRpcmVjdGx5LCBpdCBpcyBkZXN0cnVjdHVyZWQgdG8gdGhlIG5hbWVzIGJlbG93CiAgICAgIGluc3RhbmNlUGF0aDogbmV3IGNvZGVnZW5fMS5OYW1lKCJpbnN0YW5jZVBhdGgiKSwKICAgICAgcGFyZW50RGF0YTogbmV3IGNvZGVnZW5fMS5OYW1lKCJwYXJlbnREYXRhIiksCiAgICAgIHBhcmVudERhdGFQcm9wZXJ0eTogbmV3IGNvZGVnZW5fMS5OYW1lKCJwYXJlbnREYXRhUHJvcGVydHkiKSwKICAgICAgcm9vdERhdGE6IG5ldyBjb2RlZ2VuXzEuTmFtZSgicm9vdERhdGEiKSwKICAgICAgLy8gcm9vdCBkYXRhIC0gc2FtZSBhcyB0aGUgZGF0YSBwYXNzZWQgdG8gdGhlIGZpcnN0L3RvcCB2YWxpZGF0aW9uIGZ1bmN0aW9uCiAgICAgIGR5bmFtaWNBbmNob3JzOiBuZXcgY29kZWdlbl8xLk5hbWUoImR5bmFtaWNBbmNob3JzIiksCiAgICAgIC8vIHVzZWQgdG8gc3VwcG9ydCByZWN1cnNpdmVSZWYgYW5kIGR5bmFtaWNSZWYKICAgICAgLy8gZnVuY3Rpb24gc2NvcGVkIHZhcmlhYmxlcwogICAgICB2RXJyb3JzOiBuZXcgY29kZWdlbl8xLk5hbWUoInZFcnJvcnMiKSwKICAgICAgLy8gbnVsbCBvciBhcnJheSBvZiB2YWxpZGF0aW9uIGVycm9ycwogICAgICBlcnJvcnM6IG5ldyBjb2RlZ2VuXzEuTmFtZSgiZXJyb3JzIiksCiAgICAgIC8vIGNvdW50ZXIgb2YgdmFsaWRhdGlvbiBlcnJvcnMKICAgICAgdGhpczogbmV3IGNvZGVnZW5fMS5OYW1lKCJ0aGlzIiksCiAgICAgIC8vICJnbG9iYWxzIgogICAgICBzZWxmOiBuZXcgY29kZWdlbl8xLk5hbWUoInNlbGYiKSwKICAgICAgc2NvcGU6IG5ldyBjb2RlZ2VuXzEuTmFtZSgic2NvcGUiKSwKICAgICAgLy8gSlREIHNlcmlhbGl6ZS9wYXJzZSBuYW1lIGZvciBKU09OIHN0cmluZyBhbmQgcG9zaXRpb24KICAgICAganNvbjogbmV3IGNvZGVnZW5fMS5OYW1lKCJqc29uIiksCiAgICAgIGpzb25Qb3M6IG5ldyBjb2RlZ2VuXzEuTmFtZSgianNvblBvcyIpLAogICAgICBqc29uTGVuOiBuZXcgY29kZWdlbl8xLk5hbWUoImpzb25MZW4iKSwKICAgICAganNvblBhcnQ6IG5ldyBjb2RlZ2VuXzEuTmFtZSgianNvblBhcnQiKQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBuYW1lczsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9lcnJvcnMuanMKdmFyIHJlcXVpcmVfZXJyb3JzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvZXJyb3JzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5leHRlbmRFcnJvcnMgPSBleHBvcnRzMi5yZXNldEVycm9yc0NvdW50ID0gZXhwb3J0czIucmVwb3J0RXh0cmFFcnJvciA9IGV4cG9ydHMyLnJlcG9ydEVycm9yID0gZXhwb3J0czIua2V5d29yZCREYXRhRXJyb3IgPSBleHBvcnRzMi5rZXl3b3JkRXJyb3IgPSB2b2lkIDA7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgbmFtZXNfMSA9IHJlcXVpcmVfbmFtZXMoKTsKICAgIGV4cG9ydHMyLmtleXdvcmRFcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsga2V5d29yZCB9KSA9PiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBwYXNzICIke2tleXdvcmR9IiBrZXl3b3JkIHZhbGlkYXRpb25gCiAgICB9OwogICAgZXhwb3J0czIua2V5d29yZCREYXRhRXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IGtleXdvcmQsIHNjaGVtYVR5cGUgfSkgPT4gc2NoZW1hVHlwZSA/ICgwLCBjb2RlZ2VuXzEuc3RyKWAiJHtrZXl3b3JkfSIga2V5d29yZCBtdXN0IGJlICR7c2NoZW1hVHlwZX0gKCRkYXRhKWAgOiAoMCwgY29kZWdlbl8xLnN0cilgIiR7a2V5d29yZH0iIGtleXdvcmQgaXMgaW52YWxpZCAoJGRhdGEpYAogICAgfTsKICAgIGZ1bmN0aW9uIHJlcG9ydEVycm9yKGN4dCwgZXJyb3IgPSBleHBvcnRzMi5rZXl3b3JkRXJyb3IsIGVycm9yUGF0aHMsIG92ZXJyaWRlQWxsRXJyb3JzKSB7CiAgICAgIGNvbnN0IHsgaXQgfSA9IGN4dDsKICAgICAgY29uc3QgeyBnZW4sIGNvbXBvc2l0ZVJ1bGUsIGFsbEVycm9ycyB9ID0gaXQ7CiAgICAgIGNvbnN0IGVyck9iaiA9IGVycm9yT2JqZWN0Q29kZShjeHQsIGVycm9yLCBlcnJvclBhdGhzKTsKICAgICAgaWYgKG92ZXJyaWRlQWxsRXJyb3JzICE9PSBudWxsICYmIG92ZXJyaWRlQWxsRXJyb3JzICE9PSB2b2lkIDAgPyBvdmVycmlkZUFsbEVycm9ycyA6IGNvbXBvc2l0ZVJ1bGUgfHwgYWxsRXJyb3JzKSB7CiAgICAgICAgYWRkRXJyb3IoZ2VuLCBlcnJPYmopOwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybkVycm9ycyhpdCwgKDAsIGNvZGVnZW5fMS5fKWBbJHtlcnJPYmp9XWApOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5yZXBvcnRFcnJvciA9IHJlcG9ydEVycm9yOwogICAgZnVuY3Rpb24gcmVwb3J0RXh0cmFFcnJvcihjeHQsIGVycm9yID0gZXhwb3J0czIua2V5d29yZEVycm9yLCBlcnJvclBhdGhzKSB7CiAgICAgIGNvbnN0IHsgaXQgfSA9IGN4dDsKICAgICAgY29uc3QgeyBnZW4sIGNvbXBvc2l0ZVJ1bGUsIGFsbEVycm9ycyB9ID0gaXQ7CiAgICAgIGNvbnN0IGVyck9iaiA9IGVycm9yT2JqZWN0Q29kZShjeHQsIGVycm9yLCBlcnJvclBhdGhzKTsKICAgICAgYWRkRXJyb3IoZ2VuLCBlcnJPYmopOwogICAgICBpZiAoIShjb21wb3NpdGVSdWxlIHx8IGFsbEVycm9ycykpIHsKICAgICAgICByZXR1cm5FcnJvcnMoaXQsIG5hbWVzXzEuZGVmYXVsdC52RXJyb3JzKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIucmVwb3J0RXh0cmFFcnJvciA9IHJlcG9ydEV4dHJhRXJyb3I7CiAgICBmdW5jdGlvbiByZXNldEVycm9yc0NvdW50KGdlbiwgZXJyc0NvdW50KSB7CiAgICAgIGdlbi5hc3NpZ24obmFtZXNfMS5kZWZhdWx0LmVycm9ycywgZXJyc0NvdW50KTsKICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30gIT09IG51bGxgLCAoKSA9PiBnZW4uaWYoZXJyc0NvdW50LCAoKSA9PiBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30ubGVuZ3RoYCwgZXJyc0NvdW50KSwgKCkgPT4gZ2VuLmFzc2lnbihuYW1lc18xLmRlZmF1bHQudkVycm9ycywgbnVsbCkpKTsKICAgIH0KICAgIGV4cG9ydHMyLnJlc2V0RXJyb3JzQ291bnQgPSByZXNldEVycm9yc0NvdW50OwogICAgZnVuY3Rpb24gZXh0ZW5kRXJyb3JzKHsgZ2VuLCBrZXl3b3JkLCBzY2hlbWFWYWx1ZSwgZGF0YSwgZXJyc0NvdW50LCBpdCB9KSB7CiAgICAgIGlmIChlcnJzQ291bnQgPT09IHZvaWQgMCkKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICBjb25zdCBlcnIgPSBnZW4ubmFtZSgiZXJyIik7CiAgICAgIGdlbi5mb3JSYW5nZSgiaSIsIGVycnNDb3VudCwgbmFtZXNfMS5kZWZhdWx0LmVycm9ycywgKGkpID0+IHsKICAgICAgICBnZW4uY29uc3QoZXJyLCAoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnZFcnJvcnN9WyR7aX1dYCk7CiAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtlcnJ9Lmluc3RhbmNlUGF0aCA9PT0gdW5kZWZpbmVkYCwgKCkgPT4gZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7ZXJyfS5pbnN0YW5jZVBhdGhgLCAoMCwgY29kZWdlbl8xLnN0ckNvbmNhdCkobmFtZXNfMS5kZWZhdWx0Lmluc3RhbmNlUGF0aCwgaXQuZXJyb3JQYXRoKSkpOwogICAgICAgIGdlbi5hc3NpZ24oKDAsIGNvZGVnZW5fMS5fKWAke2Vycn0uc2NoZW1hUGF0aGAsICgwLCBjb2RlZ2VuXzEuc3RyKWAke2l0LmVyclNjaGVtYVBhdGh9LyR7a2V5d29yZH1gKTsKICAgICAgICBpZiAoaXQub3B0cy52ZXJib3NlKSB7CiAgICAgICAgICBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtlcnJ9LnNjaGVtYWAsIHNjaGVtYVZhbHVlKTsKICAgICAgICAgIGdlbi5hc3NpZ24oKDAsIGNvZGVnZW5fMS5fKWAke2Vycn0uZGF0YWAsIGRhdGEpOwogICAgICAgIH0KICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5leHRlbmRFcnJvcnMgPSBleHRlbmRFcnJvcnM7CiAgICBmdW5jdGlvbiBhZGRFcnJvcihnZW4sIGVyck9iaikgewogICAgICBjb25zdCBlcnIgPSBnZW4uY29uc3QoImVyciIsIGVyck9iaik7CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnZFcnJvcnN9ID09PSBudWxsYCwgKCkgPT4gZ2VuLmFzc2lnbihuYW1lc18xLmRlZmF1bHQudkVycm9ycywgKDAsIGNvZGVnZW5fMS5fKWBbJHtlcnJ9XWApLCAoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnZFcnJvcnN9LnB1c2goJHtlcnJ9KWApOwogICAgICBnZW4uY29kZSgoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LmVycm9yc30rK2ApOwogICAgfQogICAgZnVuY3Rpb24gcmV0dXJuRXJyb3JzKGl0LCBlcnJzKSB7CiAgICAgIGNvbnN0IHsgZ2VuLCB2YWxpZGF0ZU5hbWUsIHNjaGVtYUVudiB9ID0gaXQ7CiAgICAgIGlmIChzY2hlbWFFbnYuJGFzeW5jKSB7CiAgICAgICAgZ2VuLnRocm93KCgwLCBjb2RlZ2VuXzEuXylgbmV3ICR7aXQuVmFsaWRhdGlvbkVycm9yfSgke2VycnN9KWApOwogICAgICB9IGVsc2UgewogICAgICAgIGdlbi5hc3NpZ24oKDAsIGNvZGVnZW5fMS5fKWAke3ZhbGlkYXRlTmFtZX0uZXJyb3JzYCwgZXJycyk7CiAgICAgICAgZ2VuLnJldHVybihmYWxzZSk7CiAgICAgIH0KICAgIH0KICAgIHZhciBFID0gewogICAgICBrZXl3b3JkOiBuZXcgY29kZWdlbl8xLk5hbWUoImtleXdvcmQiKSwKICAgICAgc2NoZW1hUGF0aDogbmV3IGNvZGVnZW5fMS5OYW1lKCJzY2hlbWFQYXRoIiksCiAgICAgIC8vIGFsc28gdXNlZCBpbiBKVEQgZXJyb3JzCiAgICAgIHBhcmFtczogbmV3IGNvZGVnZW5fMS5OYW1lKCJwYXJhbXMiKSwKICAgICAgcHJvcGVydHlOYW1lOiBuZXcgY29kZWdlbl8xLk5hbWUoInByb3BlcnR5TmFtZSIpLAogICAgICBtZXNzYWdlOiBuZXcgY29kZWdlbl8xLk5hbWUoIm1lc3NhZ2UiKSwKICAgICAgc2NoZW1hOiBuZXcgY29kZWdlbl8xLk5hbWUoInNjaGVtYSIpLAogICAgICBwYXJlbnRTY2hlbWE6IG5ldyBjb2RlZ2VuXzEuTmFtZSgicGFyZW50U2NoZW1hIikKICAgIH07CiAgICBmdW5jdGlvbiBlcnJvck9iamVjdENvZGUoY3h0LCBlcnJvciwgZXJyb3JQYXRocykgewogICAgICBjb25zdCB7IGNyZWF0ZUVycm9ycyB9ID0gY3h0Lml0OwogICAgICBpZiAoY3JlYXRlRXJyb3JzID09PSBmYWxzZSkKICAgICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5fKWB7fWA7CiAgICAgIHJldHVybiBlcnJvck9iamVjdChjeHQsIGVycm9yLCBlcnJvclBhdGhzKTsKICAgIH0KICAgIGZ1bmN0aW9uIGVycm9yT2JqZWN0KGN4dCwgZXJyb3IsIGVycm9yUGF0aHMgPSB7fSkgewogICAgICBjb25zdCB7IGdlbiwgaXQgfSA9IGN4dDsKICAgICAgY29uc3Qga2V5VmFsdWVzID0gWwogICAgICAgIGVycm9ySW5zdGFuY2VQYXRoKGl0LCBlcnJvclBhdGhzKSwKICAgICAgICBlcnJvclNjaGVtYVBhdGgoY3h0LCBlcnJvclBhdGhzKQogICAgICBdOwogICAgICBleHRyYUVycm9yUHJvcHMoY3h0LCBlcnJvciwga2V5VmFsdWVzKTsKICAgICAgcmV0dXJuIGdlbi5vYmplY3QoLi4ua2V5VmFsdWVzKTsKICAgIH0KICAgIGZ1bmN0aW9uIGVycm9ySW5zdGFuY2VQYXRoKHsgZXJyb3JQYXRoIH0sIHsgaW5zdGFuY2VQYXRoIH0pIHsKICAgICAgY29uc3QgaW5zdFBhdGggPSBpbnN0YW5jZVBhdGggPyAoMCwgY29kZWdlbl8xLnN0cilgJHtlcnJvclBhdGh9JHsoMCwgdXRpbF8xLmdldEVycm9yUGF0aCkoaW5zdGFuY2VQYXRoLCB1dGlsXzEuVHlwZS5TdHIpfWAgOiBlcnJvclBhdGg7CiAgICAgIHJldHVybiBbbmFtZXNfMS5kZWZhdWx0Lmluc3RhbmNlUGF0aCwgKDAsIGNvZGVnZW5fMS5zdHJDb25jYXQpKG5hbWVzXzEuZGVmYXVsdC5pbnN0YW5jZVBhdGgsIGluc3RQYXRoKV07CiAgICB9CiAgICBmdW5jdGlvbiBlcnJvclNjaGVtYVBhdGgoeyBrZXl3b3JkLCBpdDogeyBlcnJTY2hlbWFQYXRoIH0gfSwgeyBzY2hlbWFQYXRoLCBwYXJlbnRTY2hlbWEgfSkgewogICAgICBsZXQgc2NoUGF0aCA9IHBhcmVudFNjaGVtYSA/IGVyclNjaGVtYVBhdGggOiAoMCwgY29kZWdlbl8xLnN0cilgJHtlcnJTY2hlbWFQYXRofS8ke2tleXdvcmR9YDsKICAgICAgaWYgKHNjaGVtYVBhdGgpIHsKICAgICAgICBzY2hQYXRoID0gKDAsIGNvZGVnZW5fMS5zdHIpYCR7c2NoUGF0aH0keygwLCB1dGlsXzEuZ2V0RXJyb3JQYXRoKShzY2hlbWFQYXRoLCB1dGlsXzEuVHlwZS5TdHIpfWA7CiAgICAgIH0KICAgICAgcmV0dXJuIFtFLnNjaGVtYVBhdGgsIHNjaFBhdGhdOwogICAgfQogICAgZnVuY3Rpb24gZXh0cmFFcnJvclByb3BzKGN4dCwgeyBwYXJhbXMsIG1lc3NhZ2UgfSwga2V5VmFsdWVzKSB7CiAgICAgIGNvbnN0IHsga2V5d29yZCwgZGF0YSwgc2NoZW1hVmFsdWUsIGl0IH0gPSBjeHQ7CiAgICAgIGNvbnN0IHsgb3B0cywgcHJvcGVydHlOYW1lLCB0b3BTY2hlbWFSZWYsIHNjaGVtYVBhdGggfSA9IGl0OwogICAgICBrZXlWYWx1ZXMucHVzaChbRS5rZXl3b3JkLCBrZXl3b3JkXSwgW0UucGFyYW1zLCB0eXBlb2YgcGFyYW1zID09ICJmdW5jdGlvbiIgPyBwYXJhbXMoY3h0KSA6IHBhcmFtcyB8fCAoMCwgY29kZWdlbl8xLl8pYHt9YF0pOwogICAgICBpZiAob3B0cy5tZXNzYWdlcykgewogICAgICAgIGtleVZhbHVlcy5wdXNoKFtFLm1lc3NhZ2UsIHR5cGVvZiBtZXNzYWdlID09ICJmdW5jdGlvbiIgPyBtZXNzYWdlKGN4dCkgOiBtZXNzYWdlXSk7CiAgICAgIH0KICAgICAgaWYgKG9wdHMudmVyYm9zZSkgewogICAgICAgIGtleVZhbHVlcy5wdXNoKFtFLnNjaGVtYSwgc2NoZW1hVmFsdWVdLCBbRS5wYXJlbnRTY2hlbWEsICgwLCBjb2RlZ2VuXzEuXylgJHt0b3BTY2hlbWFSZWZ9JHtzY2hlbWFQYXRofWBdLCBbbmFtZXNfMS5kZWZhdWx0LmRhdGEsIGRhdGFdKTsKICAgICAgfQogICAgICBpZiAocHJvcGVydHlOYW1lKQogICAgICAgIGtleVZhbHVlcy5wdXNoKFtFLnByb3BlcnR5TmFtZSwgcHJvcGVydHlOYW1lXSk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvYm9vbFNjaGVtYS5qcwp2YXIgcmVxdWlyZV9ib29sU2NoZW1hID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvYm9vbFNjaGVtYS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYm9vbE9yRW1wdHlTY2hlbWEgPSBleHBvcnRzMi50b3BCb29sT3JFbXB0eVNjaGVtYSA9IHZvaWQgMDsKICAgIHZhciBlcnJvcnNfMSA9IHJlcXVpcmVfZXJyb3JzKCk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgbmFtZXNfMSA9IHJlcXVpcmVfbmFtZXMoKTsKICAgIHZhciBib29sRXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICJib29sZWFuIHNjaGVtYSBpcyBmYWxzZSIKICAgIH07CiAgICBmdW5jdGlvbiB0b3BCb29sT3JFbXB0eVNjaGVtYShpdCkgewogICAgICBjb25zdCB7IGdlbiwgc2NoZW1hLCB2YWxpZGF0ZU5hbWUgfSA9IGl0OwogICAgICBpZiAoc2NoZW1hID09PSBmYWxzZSkgewogICAgICAgIGZhbHNlU2NoZW1hRXJyb3IoaXQsIGZhbHNlKTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2Ygc2NoZW1hID09ICJvYmplY3QiICYmIHNjaGVtYS4kYXN5bmMgPT09IHRydWUpIHsKICAgICAgICBnZW4ucmV0dXJuKG5hbWVzXzEuZGVmYXVsdC5kYXRhKTsKICAgICAgfSBlbHNlIHsKICAgICAgICBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHt2YWxpZGF0ZU5hbWV9LmVycm9yc2AsIG51bGwpOwogICAgICAgIGdlbi5yZXR1cm4odHJ1ZSk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLnRvcEJvb2xPckVtcHR5U2NoZW1hID0gdG9wQm9vbE9yRW1wdHlTY2hlbWE7CiAgICBmdW5jdGlvbiBib29sT3JFbXB0eVNjaGVtYShpdCwgdmFsaWQpIHsKICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYSB9ID0gaXQ7CiAgICAgIGlmIChzY2hlbWEgPT09IGZhbHNlKSB7CiAgICAgICAgZ2VuLnZhcih2YWxpZCwgZmFsc2UpOwogICAgICAgIGZhbHNlU2NoZW1hRXJyb3IoaXQpOwogICAgICB9IGVsc2UgewogICAgICAgIGdlbi52YXIodmFsaWQsIHRydWUpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5ib29sT3JFbXB0eVNjaGVtYSA9IGJvb2xPckVtcHR5U2NoZW1hOwogICAgZnVuY3Rpb24gZmFsc2VTY2hlbWFFcnJvcihpdCwgb3ZlcnJpZGVBbGxFcnJvcnMpIHsKICAgICAgY29uc3QgeyBnZW4sIGRhdGEgfSA9IGl0OwogICAgICBjb25zdCBjeHQgPSB7CiAgICAgICAgZ2VuLAogICAgICAgIGtleXdvcmQ6ICJmYWxzZSBzY2hlbWEiLAogICAgICAgIGRhdGEsCiAgICAgICAgc2NoZW1hOiBmYWxzZSwKICAgICAgICBzY2hlbWFDb2RlOiBmYWxzZSwKICAgICAgICBzY2hlbWFWYWx1ZTogZmFsc2UsCiAgICAgICAgcGFyYW1zOiB7fSwKICAgICAgICBpdAogICAgICB9OwogICAgICAoMCwgZXJyb3JzXzEucmVwb3J0RXJyb3IpKGN4dCwgYm9vbEVycm9yLCB2b2lkIDAsIG92ZXJyaWRlQWxsRXJyb3JzKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9ydWxlcy5qcwp2YXIgcmVxdWlyZV9ydWxlcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3J1bGVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5nZXRSdWxlcyA9IGV4cG9ydHMyLmlzSlNPTlR5cGUgPSB2b2lkIDA7CiAgICB2YXIgX2pzb25UeXBlcyA9IFsic3RyaW5nIiwgIm51bWJlciIsICJpbnRlZ2VyIiwgImJvb2xlYW4iLCAibnVsbCIsICJvYmplY3QiLCAiYXJyYXkiXTsKICAgIHZhciBqc29uVHlwZXMgPSBuZXcgU2V0KF9qc29uVHlwZXMpOwogICAgZnVuY3Rpb24gaXNKU09OVHlwZSh4KSB7CiAgICAgIHJldHVybiB0eXBlb2YgeCA9PSAic3RyaW5nIiAmJiBqc29uVHlwZXMuaGFzKHgpOwogICAgfQogICAgZXhwb3J0czIuaXNKU09OVHlwZSA9IGlzSlNPTlR5cGU7CiAgICBmdW5jdGlvbiBnZXRSdWxlcygpIHsKICAgICAgY29uc3QgZ3JvdXBzID0gewogICAgICAgIG51bWJlcjogeyB0eXBlOiAibnVtYmVyIiwgcnVsZXM6IFtdIH0sCiAgICAgICAgc3RyaW5nOiB7IHR5cGU6ICJzdHJpbmciLCBydWxlczogW10gfSwKICAgICAgICBhcnJheTogeyB0eXBlOiAiYXJyYXkiLCBydWxlczogW10gfSwKICAgICAgICBvYmplY3Q6IHsgdHlwZTogIm9iamVjdCIsIHJ1bGVzOiBbXSB9CiAgICAgIH07CiAgICAgIHJldHVybiB7CiAgICAgICAgdHlwZXM6IHsgLi4uZ3JvdXBzLCBpbnRlZ2VyOiB0cnVlLCBib29sZWFuOiB0cnVlLCBudWxsOiB0cnVlIH0sCiAgICAgICAgcnVsZXM6IFt7IHJ1bGVzOiBbXSB9LCBncm91cHMubnVtYmVyLCBncm91cHMuc3RyaW5nLCBncm91cHMuYXJyYXksIGdyb3Vwcy5vYmplY3RdLAogICAgICAgIHBvc3Q6IHsgcnVsZXM6IFtdIH0sCiAgICAgICAgYWxsOiB7fSwKICAgICAgICBrZXl3b3Jkczoge30KICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLmdldFJ1bGVzID0gZ2V0UnVsZXM7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvYXBwbGljYWJpbGl0eS5qcwp2YXIgcmVxdWlyZV9hcHBsaWNhYmlsaXR5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvYXBwbGljYWJpbGl0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2hvdWxkVXNlUnVsZSA9IGV4cG9ydHMyLnNob3VsZFVzZUdyb3VwID0gZXhwb3J0czIuc2NoZW1hSGFzUnVsZXNGb3JUeXBlID0gdm9pZCAwOwogICAgZnVuY3Rpb24gc2NoZW1hSGFzUnVsZXNGb3JUeXBlKHsgc2NoZW1hLCBzZWxmOiBzZWxmMiB9LCB0eXBlKSB7CiAgICAgIGNvbnN0IGdyb3VwID0gc2VsZjIuUlVMRVMudHlwZXNbdHlwZV07CiAgICAgIHJldHVybiBncm91cCAmJiBncm91cCAhPT0gdHJ1ZSAmJiBzaG91bGRVc2VHcm91cChzY2hlbWEsIGdyb3VwKTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVtYUhhc1J1bGVzRm9yVHlwZSA9IHNjaGVtYUhhc1J1bGVzRm9yVHlwZTsKICAgIGZ1bmN0aW9uIHNob3VsZFVzZUdyb3VwKHNjaGVtYSwgZ3JvdXApIHsKICAgICAgcmV0dXJuIGdyb3VwLnJ1bGVzLnNvbWUoKHJ1bGUpID0+IHNob3VsZFVzZVJ1bGUoc2NoZW1hLCBydWxlKSk7CiAgICB9CiAgICBleHBvcnRzMi5zaG91bGRVc2VHcm91cCA9IHNob3VsZFVzZUdyb3VwOwogICAgZnVuY3Rpb24gc2hvdWxkVXNlUnVsZShzY2hlbWEsIHJ1bGUpIHsKICAgICAgdmFyIF9hOwogICAgICByZXR1cm4gc2NoZW1hW3J1bGUua2V5d29yZF0gIT09IHZvaWQgMCB8fCAoKF9hID0gcnVsZS5kZWZpbml0aW9uLmltcGxlbWVudHMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5zb21lKChrd2QpID0+IHNjaGVtYVtrd2RdICE9PSB2b2lkIDApKTsKICAgIH0KICAgIGV4cG9ydHMyLnNob3VsZFVzZVJ1bGUgPSBzaG91bGRVc2VSdWxlOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2RhdGFUeXBlLmpzCnZhciByZXF1aXJlX2RhdGFUeXBlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvZGF0YVR5cGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJlcG9ydFR5cGVFcnJvciA9IGV4cG9ydHMyLmNoZWNrRGF0YVR5cGVzID0gZXhwb3J0czIuY2hlY2tEYXRhVHlwZSA9IGV4cG9ydHMyLmNvZXJjZUFuZENoZWNrRGF0YVR5cGUgPSBleHBvcnRzMi5nZXRKU09OVHlwZXMgPSBleHBvcnRzMi5nZXRTY2hlbWFUeXBlcyA9IGV4cG9ydHMyLkRhdGFUeXBlID0gdm9pZCAwOwogICAgdmFyIHJ1bGVzXzEgPSByZXF1aXJlX3J1bGVzKCk7CiAgICB2YXIgYXBwbGljYWJpbGl0eV8xID0gcmVxdWlyZV9hcHBsaWNhYmlsaXR5KCk7CiAgICB2YXIgZXJyb3JzXzEgPSByZXF1aXJlX2Vycm9ycygpOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIERhdGFUeXBlOwogICAgKGZ1bmN0aW9uKERhdGFUeXBlMikgewogICAgICBEYXRhVHlwZTJbRGF0YVR5cGUyWyJDb3JyZWN0Il0gPSAwXSA9ICJDb3JyZWN0IjsKICAgICAgRGF0YVR5cGUyW0RhdGFUeXBlMlsiV3JvbmciXSA9IDFdID0gIldyb25nIjsKICAgIH0pKERhdGFUeXBlIHx8IChleHBvcnRzMi5EYXRhVHlwZSA9IERhdGFUeXBlID0ge30pKTsKICAgIGZ1bmN0aW9uIGdldFNjaGVtYVR5cGVzKHNjaGVtYSkgewogICAgICBjb25zdCB0eXBlcyA9IGdldEpTT05UeXBlcyhzY2hlbWEudHlwZSk7CiAgICAgIGNvbnN0IGhhc051bGwgPSB0eXBlcy5pbmNsdWRlcygibnVsbCIpOwogICAgICBpZiAoaGFzTnVsbCkgewogICAgICAgIGlmIChzY2hlbWEubnVsbGFibGUgPT09IGZhbHNlKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJ0eXBlOiBudWxsIGNvbnRyYWRpY3RzIG51bGxhYmxlOiBmYWxzZSIpOwogICAgICB9IGVsc2UgewogICAgICAgIGlmICghdHlwZXMubGVuZ3RoICYmIHNjaGVtYS5udWxsYWJsZSAhPT0gdm9pZCAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJyJudWxsYWJsZSIgY2Fubm90IGJlIHVzZWQgd2l0aG91dCAidHlwZSInKTsKICAgICAgICB9CiAgICAgICAgaWYgKHNjaGVtYS5udWxsYWJsZSA9PT0gdHJ1ZSkKICAgICAgICAgIHR5cGVzLnB1c2goIm51bGwiKTsKICAgICAgfQogICAgICByZXR1cm4gdHlwZXM7CiAgICB9CiAgICBleHBvcnRzMi5nZXRTY2hlbWFUeXBlcyA9IGdldFNjaGVtYVR5cGVzOwogICAgZnVuY3Rpb24gZ2V0SlNPTlR5cGVzKHRzKSB7CiAgICAgIGNvbnN0IHR5cGVzID0gQXJyYXkuaXNBcnJheSh0cykgPyB0cyA6IHRzID8gW3RzXSA6IFtdOwogICAgICBpZiAodHlwZXMuZXZlcnkocnVsZXNfMS5pc0pTT05UeXBlKSkKICAgICAgICByZXR1cm4gdHlwZXM7CiAgICAgIHRocm93IG5ldyBFcnJvcigidHlwZSBtdXN0IGJlIEpTT05UeXBlIG9yIEpTT05UeXBlW106ICIgKyB0eXBlcy5qb2luKCIsIikpOwogICAgfQogICAgZXhwb3J0czIuZ2V0SlNPTlR5cGVzID0gZ2V0SlNPTlR5cGVzOwogICAgZnVuY3Rpb24gY29lcmNlQW5kQ2hlY2tEYXRhVHlwZShpdCwgdHlwZXMpIHsKICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIG9wdHMgfSA9IGl0OwogICAgICBjb25zdCBjb2VyY2VUbyA9IGNvZXJjZVRvVHlwZXModHlwZXMsIG9wdHMuY29lcmNlVHlwZXMpOwogICAgICBjb25zdCBjaGVja1R5cGVzID0gdHlwZXMubGVuZ3RoID4gMCAmJiAhKGNvZXJjZVRvLmxlbmd0aCA9PT0gMCAmJiB0eXBlcy5sZW5ndGggPT09IDEgJiYgKDAsIGFwcGxpY2FiaWxpdHlfMS5zY2hlbWFIYXNSdWxlc0ZvclR5cGUpKGl0LCB0eXBlc1swXSkpOwogICAgICBpZiAoY2hlY2tUeXBlcykgewogICAgICAgIGNvbnN0IHdyb25nVHlwZSA9IGNoZWNrRGF0YVR5cGVzKHR5cGVzLCBkYXRhLCBvcHRzLnN0cmljdE51bWJlcnMsIERhdGFUeXBlLldyb25nKTsKICAgICAgICBnZW4uaWYod3JvbmdUeXBlLCAoKSA9PiB7CiAgICAgICAgICBpZiAoY29lcmNlVG8ubGVuZ3RoKQogICAgICAgICAgICBjb2VyY2VEYXRhKGl0LCB0eXBlcywgY29lcmNlVG8pOwogICAgICAgICAgZWxzZQogICAgICAgICAgICByZXBvcnRUeXBlRXJyb3IoaXQpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIHJldHVybiBjaGVja1R5cGVzOwogICAgfQogICAgZXhwb3J0czIuY29lcmNlQW5kQ2hlY2tEYXRhVHlwZSA9IGNvZXJjZUFuZENoZWNrRGF0YVR5cGU7CiAgICB2YXIgQ09FUkNJQkxFID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWyJzdHJpbmciLCAibnVtYmVyIiwgImludGVnZXIiLCAiYm9vbGVhbiIsICJudWxsIl0pOwogICAgZnVuY3Rpb24gY29lcmNlVG9UeXBlcyh0eXBlcywgY29lcmNlVHlwZXMpIHsKICAgICAgcmV0dXJuIGNvZXJjZVR5cGVzID8gdHlwZXMuZmlsdGVyKCh0KSA9PiBDT0VSQ0lCTEUuaGFzKHQpIHx8IGNvZXJjZVR5cGVzID09PSAiYXJyYXkiICYmIHQgPT09ICJhcnJheSIpIDogW107CiAgICB9CiAgICBmdW5jdGlvbiBjb2VyY2VEYXRhKGl0LCB0eXBlcywgY29lcmNlVG8pIHsKICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIG9wdHMgfSA9IGl0OwogICAgICBjb25zdCBkYXRhVHlwZSA9IGdlbi5sZXQoImRhdGFUeXBlIiwgKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfWApOwogICAgICBjb25zdCBjb2VyY2VkID0gZ2VuLmxldCgiY29lcmNlZCIsICgwLCBjb2RlZ2VuXzEuXylgdW5kZWZpbmVkYCk7CiAgICAgIGlmIChvcHRzLmNvZXJjZVR5cGVzID09PSAiYXJyYXkiKSB7CiAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhVHlwZX0gPT0gJ29iamVjdCcgJiYgQXJyYXkuaXNBcnJheSgke2RhdGF9KSAmJiAke2RhdGF9Lmxlbmd0aCA9PSAxYCwgKCkgPT4gZ2VuLmFzc2lnbihkYXRhLCAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX1bMF1gKS5hc3NpZ24oZGF0YVR5cGUsICgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7ZGF0YX1gKS5pZihjaGVja0RhdGFUeXBlcyh0eXBlcywgZGF0YSwgb3B0cy5zdHJpY3ROdW1iZXJzKSwgKCkgPT4gZ2VuLmFzc2lnbihjb2VyY2VkLCBkYXRhKSkpOwogICAgICB9CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7Y29lcmNlZH0gIT09IHVuZGVmaW5lZGApOwogICAgICBmb3IgKGNvbnN0IHQgb2YgY29lcmNlVG8pIHsKICAgICAgICBpZiAoQ09FUkNJQkxFLmhhcyh0KSB8fCB0ID09PSAiYXJyYXkiICYmIG9wdHMuY29lcmNlVHlwZXMgPT09ICJhcnJheSIpIHsKICAgICAgICAgIGNvZXJjZVNwZWNpZmljVHlwZSh0KTsKICAgICAgICB9CiAgICAgIH0KICAgICAgZ2VuLmVsc2UoKTsKICAgICAgcmVwb3J0VHlwZUVycm9yKGl0KTsKICAgICAgZ2VuLmVuZElmKCk7CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7Y29lcmNlZH0gIT09IHVuZGVmaW5lZGAsICgpID0+IHsKICAgICAgICBnZW4uYXNzaWduKGRhdGEsIGNvZXJjZWQpOwogICAgICAgIGFzc2lnblBhcmVudERhdGEoaXQsIGNvZXJjZWQpOwogICAgICB9KTsKICAgICAgZnVuY3Rpb24gY29lcmNlU3BlY2lmaWNUeXBlKHQpIHsKICAgICAgICBzd2l0Y2ggKHQpIHsKICAgICAgICAgIGNhc2UgInN0cmluZyI6CiAgICAgICAgICAgIGdlbi5lbHNlSWYoKDAsIGNvZGVnZW5fMS5fKWAke2RhdGFUeXBlfSA9PSAibnVtYmVyIiB8fCAke2RhdGFUeXBlfSA9PSAiYm9vbGVhbiJgKS5hc3NpZ24oY29lcmNlZCwgKDAsIGNvZGVnZW5fMS5fKWAiIiArICR7ZGF0YX1gKS5lbHNlSWYoKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9ID09PSBudWxsYCkuYXNzaWduKGNvZXJjZWQsICgwLCBjb2RlZ2VuXzEuXylgIiJgKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgY2FzZSAibnVtYmVyIjoKICAgICAgICAgICAgZ2VuLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YVR5cGV9ID09ICJib29sZWFuIiB8fCAke2RhdGF9ID09PSBudWxsCiAgICAgICAgICAgICAgfHwgKCR7ZGF0YVR5cGV9ID09ICJzdHJpbmciICYmICR7ZGF0YX0gJiYgJHtkYXRhfSA9PSArJHtkYXRhfSlgKS5hc3NpZ24oY29lcmNlZCwgKDAsIGNvZGVnZW5fMS5fKWArJHtkYXRhfWApOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICBjYXNlICJpbnRlZ2VyIjoKICAgICAgICAgICAgZ2VuLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YVR5cGV9ID09PSAiYm9vbGVhbiIgfHwgJHtkYXRhfSA9PT0gbnVsbAogICAgICAgICAgICAgIHx8ICgke2RhdGFUeXBlfSA9PT0gInN0cmluZyIgJiYgJHtkYXRhfSAmJiAke2RhdGF9ID09ICske2RhdGF9ICYmICEoJHtkYXRhfSAlIDEpKWApLmFzc2lnbihjb2VyY2VkLCAoMCwgY29kZWdlbl8xLl8pYCske2RhdGF9YCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIGNhc2UgImJvb2xlYW4iOgogICAgICAgICAgICBnZW4uZWxzZUlmKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSA9PT0gImZhbHNlIiB8fCAke2RhdGF9ID09PSAwIHx8ICR7ZGF0YX0gPT09IG51bGxgKS5hc3NpZ24oY29lcmNlZCwgZmFsc2UpLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0gPT09ICJ0cnVlIiB8fCAke2RhdGF9ID09PSAxYCkuYXNzaWduKGNvZXJjZWQsIHRydWUpOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICBjYXNlICJudWxsIjoKICAgICAgICAgICAgZ2VuLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0gPT09ICIiIHx8ICR7ZGF0YX0gPT09IDAgfHwgJHtkYXRhfSA9PT0gZmFsc2VgKTsKICAgICAgICAgICAgZ2VuLmFzc2lnbihjb2VyY2VkLCBudWxsKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgY2FzZSAiYXJyYXkiOgogICAgICAgICAgICBnZW4uZWxzZUlmKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhVHlwZX0gPT09ICJzdHJpbmciIHx8ICR7ZGF0YVR5cGV9ID09PSAibnVtYmVyIgogICAgICAgICAgICAgIHx8ICR7ZGF0YVR5cGV9ID09PSAiYm9vbGVhbiIgfHwgJHtkYXRhfSA9PT0gbnVsbGApLmFzc2lnbihjb2VyY2VkLCAoMCwgY29kZWdlbl8xLl8pYFske2RhdGF9XWApOwogICAgICAgIH0KICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gYXNzaWduUGFyZW50RGF0YSh7IGdlbiwgcGFyZW50RGF0YSwgcGFyZW50RGF0YVByb3BlcnR5IH0sIGV4cHIpIHsKICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtwYXJlbnREYXRhfSAhPT0gdW5kZWZpbmVkYCwgKCkgPT4gZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7cGFyZW50RGF0YX1bJHtwYXJlbnREYXRhUHJvcGVydHl9XWAsIGV4cHIpKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrRGF0YVR5cGUoZGF0YVR5cGUsIGRhdGEsIHN0cmljdE51bXMsIGNvcnJlY3QgPSBEYXRhVHlwZS5Db3JyZWN0KSB7CiAgICAgIGNvbnN0IEVRID0gY29ycmVjdCA9PT0gRGF0YVR5cGUuQ29ycmVjdCA/IGNvZGVnZW5fMS5vcGVyYXRvcnMuRVEgOiBjb2RlZ2VuXzEub3BlcmF0b3JzLk5FUTsKICAgICAgbGV0IGNvbmQ7CiAgICAgIHN3aXRjaCAoZGF0YVR5cGUpIHsKICAgICAgICBjYXNlICJudWxsIjoKICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0gJHtFUX0gbnVsbGA7CiAgICAgICAgY2FzZSAiYXJyYXkiOgogICAgICAgICAgY29uZCA9ICgwLCBjb2RlZ2VuXzEuXylgQXJyYXkuaXNBcnJheSgke2RhdGF9KWA7CiAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICJvYmplY3QiOgogICAgICAgICAgY29uZCA9ICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSAmJiB0eXBlb2YgJHtkYXRhfSA9PSAib2JqZWN0IiAmJiAhQXJyYXkuaXNBcnJheSgke2RhdGF9KWA7CiAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICJpbnRlZ2VyIjoKICAgICAgICAgIGNvbmQgPSBudW1Db25kKCgwLCBjb2RlZ2VuXzEuXylgISgke2RhdGF9ICUgMSkgJiYgIWlzTmFOKCR7ZGF0YX0pYCk7CiAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICJudW1iZXIiOgogICAgICAgICAgY29uZCA9IG51bUNvbmQoKTsKICAgICAgICAgIGJyZWFrOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfSAke0VRfSAke2RhdGFUeXBlfWA7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvcnJlY3QgPT09IERhdGFUeXBlLkNvcnJlY3QgPyBjb25kIDogKDAsIGNvZGVnZW5fMS5ub3QpKGNvbmQpOwogICAgICBmdW5jdGlvbiBudW1Db25kKF9jb25kID0gY29kZWdlbl8xLm5pbCkgewogICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLmFuZCkoKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfSA9PSAibnVtYmVyImAsIF9jb25kLCBzdHJpY3ROdW1zID8gKDAsIGNvZGVnZW5fMS5fKWBpc0Zpbml0ZSgke2RhdGF9KWAgOiBjb2RlZ2VuXzEubmlsKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuY2hlY2tEYXRhVHlwZSA9IGNoZWNrRGF0YVR5cGU7CiAgICBmdW5jdGlvbiBjaGVja0RhdGFUeXBlcyhkYXRhVHlwZXMsIGRhdGEsIHN0cmljdE51bXMsIGNvcnJlY3QpIHsKICAgICAgaWYgKGRhdGFUeXBlcy5sZW5ndGggPT09IDEpIHsKICAgICAgICByZXR1cm4gY2hlY2tEYXRhVHlwZShkYXRhVHlwZXNbMF0sIGRhdGEsIHN0cmljdE51bXMsIGNvcnJlY3QpOwogICAgICB9CiAgICAgIGxldCBjb25kOwogICAgICBjb25zdCB0eXBlcyA9ICgwLCB1dGlsXzEudG9IYXNoKShkYXRhVHlwZXMpOwogICAgICBpZiAodHlwZXMuYXJyYXkgJiYgdHlwZXMub2JqZWN0KSB7CiAgICAgICAgY29uc3Qgbm90T2JqID0gKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfSAhPSAib2JqZWN0ImA7CiAgICAgICAgY29uZCA9IHR5cGVzLm51bGwgPyBub3RPYmogOiAoMCwgY29kZWdlbl8xLl8pYCEke2RhdGF9IHx8ICR7bm90T2JqfWA7CiAgICAgICAgZGVsZXRlIHR5cGVzLm51bGw7CiAgICAgICAgZGVsZXRlIHR5cGVzLmFycmF5OwogICAgICAgIGRlbGV0ZSB0eXBlcy5vYmplY3Q7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgY29uZCA9IGNvZGVnZW5fMS5uaWw7CiAgICAgIH0KICAgICAgaWYgKHR5cGVzLm51bWJlcikKICAgICAgICBkZWxldGUgdHlwZXMuaW50ZWdlcjsKICAgICAgZm9yIChjb25zdCB0IGluIHR5cGVzKQogICAgICAgIGNvbmQgPSAoMCwgY29kZWdlbl8xLmFuZCkoY29uZCwgY2hlY2tEYXRhVHlwZSh0LCBkYXRhLCBzdHJpY3ROdW1zLCBjb3JyZWN0KSk7CiAgICAgIHJldHVybiBjb25kOwogICAgfQogICAgZXhwb3J0czIuY2hlY2tEYXRhVHlwZXMgPSBjaGVja0RhdGFUeXBlczsKICAgIHZhciB0eXBlRXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHNjaGVtYSB9KSA9PiBgbXVzdCBiZSAke3NjaGVtYX1gLAogICAgICBwYXJhbXM6ICh7IHNjaGVtYSwgc2NoZW1hVmFsdWUgfSkgPT4gdHlwZW9mIHNjaGVtYSA9PSAic3RyaW5nIiA/ICgwLCBjb2RlZ2VuXzEuXylge3R5cGU6ICR7c2NoZW1hfX1gIDogKDAsIGNvZGVnZW5fMS5fKWB7dHlwZTogJHtzY2hlbWFWYWx1ZX19YAogICAgfTsKICAgIGZ1bmN0aW9uIHJlcG9ydFR5cGVFcnJvcihpdCkgewogICAgICBjb25zdCBjeHQgPSBnZXRUeXBlRXJyb3JDb250ZXh0KGl0KTsKICAgICAgKDAsIGVycm9yc18xLnJlcG9ydEVycm9yKShjeHQsIHR5cGVFcnJvcik7CiAgICB9CiAgICBleHBvcnRzMi5yZXBvcnRUeXBlRXJyb3IgPSByZXBvcnRUeXBlRXJyb3I7CiAgICBmdW5jdGlvbiBnZXRUeXBlRXJyb3JDb250ZXh0KGl0KSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCBzY2hlbWEgfSA9IGl0OwogICAgICBjb25zdCBzY2hlbWFDb2RlID0gKDAsIHV0aWxfMS5zY2hlbWFSZWZPclZhbCkoaXQsIHNjaGVtYSwgInR5cGUiKTsKICAgICAgcmV0dXJuIHsKICAgICAgICBnZW4sCiAgICAgICAga2V5d29yZDogInR5cGUiLAogICAgICAgIGRhdGEsCiAgICAgICAgc2NoZW1hOiBzY2hlbWEudHlwZSwKICAgICAgICBzY2hlbWFDb2RlLAogICAgICAgIHNjaGVtYVZhbHVlOiBzY2hlbWFDb2RlLAogICAgICAgIHBhcmVudFNjaGVtYTogc2NoZW1hLAogICAgICAgIHBhcmFtczoge30sCiAgICAgICAgaXQKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS92YWxpZGF0ZS9kZWZhdWx0cy5qcwp2YXIgcmVxdWlyZV9kZWZhdWx0cyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2RlZmF1bHRzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hc3NpZ25EZWZhdWx0cyA9IHZvaWQgMDsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIGZ1bmN0aW9uIGFzc2lnbkRlZmF1bHRzKGl0LCB0eSkgewogICAgICBjb25zdCB7IHByb3BlcnRpZXMsIGl0ZW1zIH0gPSBpdC5zY2hlbWE7CiAgICAgIGlmICh0eSA9PT0gIm9iamVjdCIgJiYgcHJvcGVydGllcykgewogICAgICAgIGZvciAoY29uc3Qga2V5IGluIHByb3BlcnRpZXMpIHsKICAgICAgICAgIGFzc2lnbkRlZmF1bHQoaXQsIGtleSwgcHJvcGVydGllc1trZXldLmRlZmF1bHQpOwogICAgICAgIH0KICAgICAgfSBlbHNlIGlmICh0eSA9PT0gImFycmF5IiAmJiBBcnJheS5pc0FycmF5KGl0ZW1zKSkgewogICAgICAgIGl0ZW1zLmZvckVhY2goKHNjaCwgaSkgPT4gYXNzaWduRGVmYXVsdChpdCwgaSwgc2NoLmRlZmF1bHQpKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuYXNzaWduRGVmYXVsdHMgPSBhc3NpZ25EZWZhdWx0czsKICAgIGZ1bmN0aW9uIGFzc2lnbkRlZmF1bHQoaXQsIHByb3AsIGRlZmF1bHRWYWx1ZSkgewogICAgICBjb25zdCB7IGdlbiwgY29tcG9zaXRlUnVsZSwgZGF0YSwgb3B0cyB9ID0gaXQ7CiAgICAgIGlmIChkZWZhdWx0VmFsdWUgPT09IHZvaWQgMCkKICAgICAgICByZXR1cm47CiAgICAgIGNvbnN0IGNoaWxkRGF0YSA9ICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkocHJvcCl9YDsKICAgICAgaWYgKGNvbXBvc2l0ZVJ1bGUpIHsKICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsIGBkZWZhdWx0IGlzIGlnbm9yZWQgZm9yOiAke2NoaWxkRGF0YX1gKTsKICAgICAgICByZXR1cm47CiAgICAgIH0KICAgICAgbGV0IGNvbmRpdGlvbiA9ICgwLCBjb2RlZ2VuXzEuXylgJHtjaGlsZERhdGF9ID09PSB1bmRlZmluZWRgOwogICAgICBpZiAob3B0cy51c2VEZWZhdWx0cyA9PT0gImVtcHR5IikgewogICAgICAgIGNvbmRpdGlvbiA9ICgwLCBjb2RlZ2VuXzEuXylgJHtjb25kaXRpb259IHx8ICR7Y2hpbGREYXRhfSA9PT0gbnVsbCB8fCAke2NoaWxkRGF0YX0gPT09ICIiYDsKICAgICAgfQogICAgICBnZW4uaWYoY29uZGl0aW9uLCAoMCwgY29kZWdlbl8xLl8pYCR7Y2hpbGREYXRhfSA9ICR7KDAsIGNvZGVnZW5fMS5zdHJpbmdpZnkpKGRlZmF1bHRWYWx1ZSl9YCk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9jb2RlLmpzCnZhciByZXF1aXJlX2NvZGUyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9jb2RlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi52YWxpZGF0ZVVuaW9uID0gZXhwb3J0czIudmFsaWRhdGVBcnJheSA9IGV4cG9ydHMyLnVzZVBhdHRlcm4gPSBleHBvcnRzMi5jYWxsVmFsaWRhdGVDb2RlID0gZXhwb3J0czIuc2NoZW1hUHJvcGVydGllcyA9IGV4cG9ydHMyLmFsbFNjaGVtYVByb3BlcnRpZXMgPSBleHBvcnRzMi5ub1Byb3BlcnR5SW5EYXRhID0gZXhwb3J0czIucHJvcGVydHlJbkRhdGEgPSBleHBvcnRzMi5pc093blByb3BlcnR5ID0gZXhwb3J0czIuaGFzUHJvcEZ1bmMgPSBleHBvcnRzMi5yZXBvcnRNaXNzaW5nUHJvcCA9IGV4cG9ydHMyLmNoZWNrTWlzc2luZ1Byb3AgPSBleHBvcnRzMi5jaGVja1JlcG9ydE1pc3NpbmdQcm9wID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIG5hbWVzXzEgPSByZXF1aXJlX25hbWVzKCk7CiAgICB2YXIgdXRpbF8yID0gcmVxdWlyZV91dGlsKCk7CiAgICBmdW5jdGlvbiBjaGVja1JlcG9ydE1pc3NpbmdQcm9wKGN4dCwgcHJvcCkgewogICAgICBjb25zdCB7IGdlbiwgZGF0YSwgaXQgfSA9IGN4dDsKICAgICAgZ2VuLmlmKG5vUHJvcGVydHlJbkRhdGEoZ2VuLCBkYXRhLCBwcm9wLCBpdC5vcHRzLm93blByb3BlcnRpZXMpLCAoKSA9PiB7CiAgICAgICAgY3h0LnNldFBhcmFtcyh7IG1pc3NpbmdQcm9wZXJ0eTogKDAsIGNvZGVnZW5fMS5fKWAke3Byb3B9YCB9LCB0cnVlKTsKICAgICAgICBjeHQuZXJyb3IoKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5jaGVja1JlcG9ydE1pc3NpbmdQcm9wID0gY2hlY2tSZXBvcnRNaXNzaW5nUHJvcDsKICAgIGZ1bmN0aW9uIGNoZWNrTWlzc2luZ1Byb3AoeyBnZW4sIGRhdGEsIGl0OiB7IG9wdHMgfSB9LCBwcm9wZXJ0aWVzLCBtaXNzaW5nKSB7CiAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLm9yKSguLi5wcm9wZXJ0aWVzLm1hcCgocHJvcCkgPT4gKDAsIGNvZGVnZW5fMS5hbmQpKG5vUHJvcGVydHlJbkRhdGEoZ2VuLCBkYXRhLCBwcm9wLCBvcHRzLm93blByb3BlcnRpZXMpLCAoMCwgY29kZWdlbl8xLl8pYCR7bWlzc2luZ30gPSAke3Byb3B9YCkpKTsKICAgIH0KICAgIGV4cG9ydHMyLmNoZWNrTWlzc2luZ1Byb3AgPSBjaGVja01pc3NpbmdQcm9wOwogICAgZnVuY3Rpb24gcmVwb3J0TWlzc2luZ1Byb3AoY3h0LCBtaXNzaW5nKSB7CiAgICAgIGN4dC5zZXRQYXJhbXMoeyBtaXNzaW5nUHJvcGVydHk6IG1pc3NpbmcgfSwgdHJ1ZSk7CiAgICAgIGN4dC5lcnJvcigpOwogICAgfQogICAgZXhwb3J0czIucmVwb3J0TWlzc2luZ1Byb3AgPSByZXBvcnRNaXNzaW5nUHJvcDsKICAgIGZ1bmN0aW9uIGhhc1Byb3BGdW5jKGdlbikgewogICAgICByZXR1cm4gZ2VuLnNjb3BlVmFsdWUoImZ1bmMiLCB7CiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC91bmJvdW5kLW1ldGhvZAogICAgICAgIHJlZjogT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSwKICAgICAgICBjb2RlOiAoMCwgY29kZWdlbl8xLl8pYE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHlgCiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuaGFzUHJvcEZ1bmMgPSBoYXNQcm9wRnVuYzsKICAgIGZ1bmN0aW9uIGlzT3duUHJvcGVydHkoZ2VuLCBkYXRhLCBwcm9wZXJ0eSkgewogICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5fKWAke2hhc1Byb3BGdW5jKGdlbil9LmNhbGwoJHtkYXRhfSwgJHtwcm9wZXJ0eX0pYDsKICAgIH0KICAgIGV4cG9ydHMyLmlzT3duUHJvcGVydHkgPSBpc093blByb3BlcnR5OwogICAgZnVuY3Rpb24gcHJvcGVydHlJbkRhdGEoZ2VuLCBkYXRhLCBwcm9wZXJ0eSwgb3duUHJvcGVydGllcykgewogICAgICBjb25zdCBjb25kID0gKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShwcm9wZXJ0eSl9ICE9PSB1bmRlZmluZWRgOwogICAgICByZXR1cm4gb3duUHJvcGVydGllcyA/ICgwLCBjb2RlZ2VuXzEuXylgJHtjb25kfSAmJiAke2lzT3duUHJvcGVydHkoZ2VuLCBkYXRhLCBwcm9wZXJ0eSl9YCA6IGNvbmQ7CiAgICB9CiAgICBleHBvcnRzMi5wcm9wZXJ0eUluRGF0YSA9IHByb3BlcnR5SW5EYXRhOwogICAgZnVuY3Rpb24gbm9Qcm9wZXJ0eUluRGF0YShnZW4sIGRhdGEsIHByb3BlcnR5LCBvd25Qcm9wZXJ0aWVzKSB7CiAgICAgIGNvbnN0IGNvbmQgPSAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0keygwLCBjb2RlZ2VuXzEuZ2V0UHJvcGVydHkpKHByb3BlcnR5KX0gPT09IHVuZGVmaW5lZGA7CiAgICAgIHJldHVybiBvd25Qcm9wZXJ0aWVzID8gKDAsIGNvZGVnZW5fMS5vcikoY29uZCwgKDAsIGNvZGVnZW5fMS5ub3QpKGlzT3duUHJvcGVydHkoZ2VuLCBkYXRhLCBwcm9wZXJ0eSkpKSA6IGNvbmQ7CiAgICB9CiAgICBleHBvcnRzMi5ub1Byb3BlcnR5SW5EYXRhID0gbm9Qcm9wZXJ0eUluRGF0YTsKICAgIGZ1bmN0aW9uIGFsbFNjaGVtYVByb3BlcnRpZXMoc2NoZW1hTWFwKSB7CiAgICAgIHJldHVybiBzY2hlbWFNYXAgPyBPYmplY3Qua2V5cyhzY2hlbWFNYXApLmZpbHRlcigocCkgPT4gcCAhPT0gIl9fcHJvdG9fXyIpIDogW107CiAgICB9CiAgICBleHBvcnRzMi5hbGxTY2hlbWFQcm9wZXJ0aWVzID0gYWxsU2NoZW1hUHJvcGVydGllczsKICAgIGZ1bmN0aW9uIHNjaGVtYVByb3BlcnRpZXMoaXQsIHNjaGVtYU1hcCkgewogICAgICByZXR1cm4gYWxsU2NoZW1hUHJvcGVydGllcyhzY2hlbWFNYXApLmZpbHRlcigocCkgPT4gISgwLCB1dGlsXzEuYWx3YXlzVmFsaWRTY2hlbWEpKGl0LCBzY2hlbWFNYXBbcF0pKTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVtYVByb3BlcnRpZXMgPSBzY2hlbWFQcm9wZXJ0aWVzOwogICAgZnVuY3Rpb24gY2FsbFZhbGlkYXRlQ29kZSh7IHNjaGVtYUNvZGUsIGRhdGEsIGl0OiB7IGdlbiwgdG9wU2NoZW1hUmVmLCBzY2hlbWFQYXRoLCBlcnJvclBhdGggfSwgaXQgfSwgZnVuYywgY29udGV4dCwgcGFzc1NjaGVtYSkgewogICAgICBjb25zdCBkYXRhQW5kU2NoZW1hID0gcGFzc1NjaGVtYSA/ICgwLCBjb2RlZ2VuXzEuXylgJHtzY2hlbWFDb2RlfSwgJHtkYXRhfSwgJHt0b3BTY2hlbWFSZWZ9JHtzY2hlbWFQYXRofWAgOiBkYXRhOwogICAgICBjb25zdCB2YWxDeHQgPSBbCiAgICAgICAgW25hbWVzXzEuZGVmYXVsdC5pbnN0YW5jZVBhdGgsICgwLCBjb2RlZ2VuXzEuc3RyQ29uY2F0KShuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCBlcnJvclBhdGgpXSwKICAgICAgICBbbmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGEsIGl0LnBhcmVudERhdGFdLAogICAgICAgIFtuYW1lc18xLmRlZmF1bHQucGFyZW50RGF0YVByb3BlcnR5LCBpdC5wYXJlbnREYXRhUHJvcGVydHldLAogICAgICAgIFtuYW1lc18xLmRlZmF1bHQucm9vdERhdGEsIG5hbWVzXzEuZGVmYXVsdC5yb290RGF0YV0KICAgICAgXTsKICAgICAgaWYgKGl0Lm9wdHMuZHluYW1pY1JlZikKICAgICAgICB2YWxDeHQucHVzaChbbmFtZXNfMS5kZWZhdWx0LmR5bmFtaWNBbmNob3JzLCBuYW1lc18xLmRlZmF1bHQuZHluYW1pY0FuY2hvcnNdKTsKICAgICAgY29uc3QgYXJncyA9ICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhQW5kU2NoZW1hfSwgJHtnZW4ub2JqZWN0KC4uLnZhbEN4dCl9YDsKICAgICAgcmV0dXJuIGNvbnRleHQgIT09IGNvZGVnZW5fMS5uaWwgPyAoMCwgY29kZWdlbl8xLl8pYCR7ZnVuY30uY2FsbCgke2NvbnRleHR9LCAke2FyZ3N9KWAgOiAoMCwgY29kZWdlbl8xLl8pYCR7ZnVuY30oJHthcmdzfSlgOwogICAgfQogICAgZXhwb3J0czIuY2FsbFZhbGlkYXRlQ29kZSA9IGNhbGxWYWxpZGF0ZUNvZGU7CiAgICB2YXIgbmV3UmVnRXhwID0gKDAsIGNvZGVnZW5fMS5fKWBuZXcgUmVnRXhwYDsKICAgIGZ1bmN0aW9uIHVzZVBhdHRlcm4oeyBnZW4sIGl0OiB7IG9wdHMgfSB9LCBwYXR0ZXJuKSB7CiAgICAgIGNvbnN0IHUgPSBvcHRzLnVuaWNvZGVSZWdFeHAgPyAidSIgOiAiIjsKICAgICAgY29uc3QgeyByZWdFeHAgfSA9IG9wdHMuY29kZTsKICAgICAgY29uc3QgcnggPSByZWdFeHAocGF0dGVybiwgdSk7CiAgICAgIHJldHVybiBnZW4uc2NvcGVWYWx1ZSgicGF0dGVybiIsIHsKICAgICAgICBrZXk6IHJ4LnRvU3RyaW5nKCksCiAgICAgICAgcmVmOiByeCwKICAgICAgICBjb2RlOiAoMCwgY29kZWdlbl8xLl8pYCR7cmVnRXhwLmNvZGUgPT09ICJuZXcgUmVnRXhwIiA/IG5ld1JlZ0V4cCA6ICgwLCB1dGlsXzIudXNlRnVuYykoZ2VuLCByZWdFeHApfSgke3BhdHRlcm59LCAke3V9KWAKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi51c2VQYXR0ZXJuID0gdXNlUGF0dGVybjsKICAgIGZ1bmN0aW9uIHZhbGlkYXRlQXJyYXkoY3h0KSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCBrZXl3b3JkLCBpdCB9ID0gY3h0OwogICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICBpZiAoaXQuYWxsRXJyb3JzKSB7CiAgICAgICAgY29uc3QgdmFsaWRBcnIgPSBnZW4ubGV0KCJ2YWxpZCIsIHRydWUpOwogICAgICAgIHZhbGlkYXRlSXRlbXMoKCkgPT4gZ2VuLmFzc2lnbih2YWxpZEFyciwgZmFsc2UpKTsKICAgICAgICByZXR1cm4gdmFsaWRBcnI7CiAgICAgIH0KICAgICAgZ2VuLnZhcih2YWxpZCwgdHJ1ZSk7CiAgICAgIHZhbGlkYXRlSXRlbXMoKCkgPT4gZ2VuLmJyZWFrKCkpOwogICAgICByZXR1cm4gdmFsaWQ7CiAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlSXRlbXMobm90VmFsaWQpIHsKICAgICAgICBjb25zdCBsZW4gPSBnZW4uY29uc3QoImxlbiIsICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGhgKTsKICAgICAgICBnZW4uZm9yUmFuZ2UoImkiLCAwLCBsZW4sIChpKSA9PiB7CiAgICAgICAgICBjeHQuc3Vic2NoZW1hKHsKICAgICAgICAgICAga2V5d29yZCwKICAgICAgICAgICAgZGF0YVByb3A6IGksCiAgICAgICAgICAgIGRhdGFQcm9wVHlwZTogdXRpbF8xLlR5cGUuTnVtCiAgICAgICAgICB9LCB2YWxpZCk7CiAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKHZhbGlkKSwgbm90VmFsaWQpOwogICAgICAgIH0pOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi52YWxpZGF0ZUFycmF5ID0gdmFsaWRhdGVBcnJheTsKICAgIGZ1bmN0aW9uIHZhbGlkYXRlVW5pb24oY3h0KSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWEsIGtleXdvcmQsIGl0IH0gPSBjeHQ7CiAgICAgIGlmICghQXJyYXkuaXNBcnJheShzY2hlbWEpKQogICAgICAgIHRocm93IG5ldyBFcnJvcigiYWp2IGltcGxlbWVudGF0aW9uIGVycm9yIik7CiAgICAgIGNvbnN0IGFsd2F5c1ZhbGlkID0gc2NoZW1hLnNvbWUoKHNjaCkgPT4gKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaCkpOwogICAgICBpZiAoYWx3YXlzVmFsaWQgJiYgIWl0Lm9wdHMudW5ldmFsdWF0ZWQpCiAgICAgICAgcmV0dXJuOwogICAgICBjb25zdCB2YWxpZCA9IGdlbi5sZXQoInZhbGlkIiwgZmFsc2UpOwogICAgICBjb25zdCBzY2hWYWxpZCA9IGdlbi5uYW1lKCJfdmFsaWQiKTsKICAgICAgZ2VuLmJsb2NrKCgpID0+IHNjaGVtYS5mb3JFYWNoKChfc2NoLCBpKSA9PiB7CiAgICAgICAgY29uc3Qgc2NoQ3h0ID0gY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICBrZXl3b3JkLAogICAgICAgICAgc2NoZW1hUHJvcDogaSwKICAgICAgICAgIGNvbXBvc2l0ZVJ1bGU6IHRydWUKICAgICAgICB9LCBzY2hWYWxpZCk7CiAgICAgICAgZ2VuLmFzc2lnbih2YWxpZCwgKDAsIGNvZGVnZW5fMS5fKWAke3ZhbGlkfSB8fCAke3NjaFZhbGlkfWApOwogICAgICAgIGNvbnN0IG1lcmdlZCA9IGN4dC5tZXJnZVZhbGlkRXZhbHVhdGVkKHNjaEN4dCwgc2NoVmFsaWQpOwogICAgICAgIGlmICghbWVyZ2VkKQogICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEubm90KSh2YWxpZCkpOwogICAgICB9KSk7CiAgICAgIGN4dC5yZXN1bHQodmFsaWQsICgpID0+IGN4dC5yZXNldCgpLCAoKSA9PiBjeHQuZXJyb3IodHJ1ZSkpOwogICAgfQogICAgZXhwb3J0czIudmFsaWRhdGVVbmlvbiA9IHZhbGlkYXRlVW5pb247CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUva2V5d29yZC5qcwp2YXIgcmVxdWlyZV9rZXl3b3JkID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUva2V5d29yZC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudmFsaWRhdGVLZXl3b3JkVXNhZ2UgPSBleHBvcnRzMi52YWxpZFNjaGVtYVR5cGUgPSBleHBvcnRzMi5mdW5jS2V5d29yZENvZGUgPSBleHBvcnRzMi5tYWNyb0tleXdvcmRDb2RlID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIG5hbWVzXzEgPSByZXF1aXJlX25hbWVzKCk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlMigpOwogICAgdmFyIGVycm9yc18xID0gcmVxdWlyZV9lcnJvcnMoKTsKICAgIGZ1bmN0aW9uIG1hY3JvS2V5d29yZENvZGUoY3h0LCBkZWYpIHsKICAgICAgY29uc3QgeyBnZW4sIGtleXdvcmQsIHNjaGVtYSwgcGFyZW50U2NoZW1hLCBpdCB9ID0gY3h0OwogICAgICBjb25zdCBtYWNyb1NjaGVtYSA9IGRlZi5tYWNyby5jYWxsKGl0LnNlbGYsIHNjaGVtYSwgcGFyZW50U2NoZW1hLCBpdCk7CiAgICAgIGNvbnN0IHNjaGVtYVJlZiA9IHVzZUtleXdvcmQoZ2VuLCBrZXl3b3JkLCBtYWNyb1NjaGVtYSk7CiAgICAgIGlmIChpdC5vcHRzLnZhbGlkYXRlU2NoZW1hICE9PSBmYWxzZSkKICAgICAgICBpdC5zZWxmLnZhbGlkYXRlU2NoZW1hKG1hY3JvU2NoZW1hLCB0cnVlKTsKICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubmFtZSgidmFsaWQiKTsKICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgc2NoZW1hOiBtYWNyb1NjaGVtYSwKICAgICAgICBzY2hlbWFQYXRoOiBjb2RlZ2VuXzEubmlsLAogICAgICAgIGVyclNjaGVtYVBhdGg6IGAke2l0LmVyclNjaGVtYVBhdGh9LyR7a2V5d29yZH1gLAogICAgICAgIHRvcFNjaGVtYVJlZjogc2NoZW1hUmVmLAogICAgICAgIGNvbXBvc2l0ZVJ1bGU6IHRydWUKICAgICAgfSwgdmFsaWQpOwogICAgICBjeHQucGFzcyh2YWxpZCwgKCkgPT4gY3h0LmVycm9yKHRydWUpKTsKICAgIH0KICAgIGV4cG9ydHMyLm1hY3JvS2V5d29yZENvZGUgPSBtYWNyb0tleXdvcmRDb2RlOwogICAgZnVuY3Rpb24gZnVuY0tleXdvcmRDb2RlKGN4dCwgZGVmKSB7CiAgICAgIHZhciBfYTsKICAgICAgY29uc3QgeyBnZW4sIGtleXdvcmQsIHNjaGVtYSwgcGFyZW50U2NoZW1hLCAkZGF0YSwgaXQgfSA9IGN4dDsKICAgICAgY2hlY2tBc3luY0tleXdvcmQoaXQsIGRlZik7CiAgICAgIGNvbnN0IHZhbGlkYXRlID0gISRkYXRhICYmIGRlZi5jb21waWxlID8gZGVmLmNvbXBpbGUuY2FsbChpdC5zZWxmLCBzY2hlbWEsIHBhcmVudFNjaGVtYSwgaXQpIDogZGVmLnZhbGlkYXRlOwogICAgICBjb25zdCB2YWxpZGF0ZVJlZiA9IHVzZUtleXdvcmQoZ2VuLCBrZXl3b3JkLCB2YWxpZGF0ZSk7CiAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLmxldCgidmFsaWQiKTsKICAgICAgY3h0LmJsb2NrJGRhdGEodmFsaWQsIHZhbGlkYXRlS2V5d29yZCk7CiAgICAgIGN4dC5vaygoX2EgPSBkZWYudmFsaWQpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IHZhbGlkKTsKICAgICAgZnVuY3Rpb24gdmFsaWRhdGVLZXl3b3JkKCkgewogICAgICAgIGlmIChkZWYuZXJyb3JzID09PSBmYWxzZSkgewogICAgICAgICAgYXNzaWduVmFsaWQoKTsKICAgICAgICAgIGlmIChkZWYubW9kaWZ5aW5nKQogICAgICAgICAgICBtb2RpZnlEYXRhKGN4dCk7CiAgICAgICAgICByZXBvcnRFcnJzKCgpID0+IGN4dC5lcnJvcigpKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgY29uc3QgcnVsZUVycnMgPSBkZWYuYXN5bmMgPyB2YWxpZGF0ZUFzeW5jKCkgOiB2YWxpZGF0ZVN5bmMoKTsKICAgICAgICAgIGlmIChkZWYubW9kaWZ5aW5nKQogICAgICAgICAgICBtb2RpZnlEYXRhKGN4dCk7CiAgICAgICAgICByZXBvcnRFcnJzKCgpID0+IGFkZEVycnMoY3h0LCBydWxlRXJycykpOwogICAgICAgIH0KICAgICAgfQogICAgICBmdW5jdGlvbiB2YWxpZGF0ZUFzeW5jKCkgewogICAgICAgIGNvbnN0IHJ1bGVFcnJzID0gZ2VuLmxldCgicnVsZUVycnMiLCBudWxsKTsKICAgICAgICBnZW4udHJ5KCgpID0+IGFzc2lnblZhbGlkKCgwLCBjb2RlZ2VuXzEuXylgYXdhaXQgYCksIChlKSA9PiBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSkuaWYoKDAsIGNvZGVnZW5fMS5fKWAke2V9IGluc3RhbmNlb2YgJHtpdC5WYWxpZGF0aW9uRXJyb3J9YCwgKCkgPT4gZ2VuLmFzc2lnbihydWxlRXJycywgKDAsIGNvZGVnZW5fMS5fKWAke2V9LmVycm9yc2ApLCAoKSA9PiBnZW4udGhyb3coZSkpKTsKICAgICAgICByZXR1cm4gcnVsZUVycnM7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gdmFsaWRhdGVTeW5jKCkgewogICAgICAgIGNvbnN0IHZhbGlkYXRlRXJycyA9ICgwLCBjb2RlZ2VuXzEuXylgJHt2YWxpZGF0ZVJlZn0uZXJyb3JzYDsKICAgICAgICBnZW4uYXNzaWduKHZhbGlkYXRlRXJycywgbnVsbCk7CiAgICAgICAgYXNzaWduVmFsaWQoY29kZWdlbl8xLm5pbCk7CiAgICAgICAgcmV0dXJuIHZhbGlkYXRlRXJyczsKICAgICAgfQogICAgICBmdW5jdGlvbiBhc3NpZ25WYWxpZChfYXdhaXQgPSBkZWYuYXN5bmMgPyAoMCwgY29kZWdlbl8xLl8pYGF3YWl0IGAgOiBjb2RlZ2VuXzEubmlsKSB7CiAgICAgICAgY29uc3QgcGFzc0N4dCA9IGl0Lm9wdHMucGFzc0NvbnRleHQgPyBuYW1lc18xLmRlZmF1bHQudGhpcyA6IG5hbWVzXzEuZGVmYXVsdC5zZWxmOwogICAgICAgIGNvbnN0IHBhc3NTY2hlbWEgPSAhKCJjb21waWxlIiBpbiBkZWYgJiYgISRkYXRhIHx8IGRlZi5zY2hlbWEgPT09IGZhbHNlKTsKICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCAoMCwgY29kZWdlbl8xLl8pYCR7X2F3YWl0fSR7KDAsIGNvZGVfMS5jYWxsVmFsaWRhdGVDb2RlKShjeHQsIHZhbGlkYXRlUmVmLCBwYXNzQ3h0LCBwYXNzU2NoZW1hKX1gLCBkZWYubW9kaWZ5aW5nKTsKICAgICAgfQogICAgICBmdW5jdGlvbiByZXBvcnRFcnJzKGVycm9ycykgewogICAgICAgIHZhciBfYTI7CiAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEubm90KSgoX2EyID0gZGVmLnZhbGlkKSAhPT0gbnVsbCAmJiBfYTIgIT09IHZvaWQgMCA/IF9hMiA6IHZhbGlkKSwgZXJyb3JzKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuZnVuY0tleXdvcmRDb2RlID0gZnVuY0tleXdvcmRDb2RlOwogICAgZnVuY3Rpb24gbW9kaWZ5RGF0YShjeHQpIHsKICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIGl0IH0gPSBjeHQ7CiAgICAgIGdlbi5pZihpdC5wYXJlbnREYXRhLCAoKSA9PiBnZW4uYXNzaWduKGRhdGEsICgwLCBjb2RlZ2VuXzEuXylgJHtpdC5wYXJlbnREYXRhfVske2l0LnBhcmVudERhdGFQcm9wZXJ0eX1dYCkpOwogICAgfQogICAgZnVuY3Rpb24gYWRkRXJycyhjeHQsIGVycnMpIHsKICAgICAgY29uc3QgeyBnZW4gfSA9IGN4dDsKICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgQXJyYXkuaXNBcnJheSgke2VycnN9KWAsICgpID0+IHsKICAgICAgICBnZW4uYXNzaWduKG5hbWVzXzEuZGVmYXVsdC52RXJyb3JzLCAoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnZFcnJvcnN9ID09PSBudWxsID8gJHtlcnJzfSA6ICR7bmFtZXNfMS5kZWZhdWx0LnZFcnJvcnN9LmNvbmNhdCgke2VycnN9KWApLmFzc2lnbihuYW1lc18xLmRlZmF1bHQuZXJyb3JzLCAoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnZFcnJvcnN9Lmxlbmd0aGApOwogICAgICAgICgwLCBlcnJvcnNfMS5leHRlbmRFcnJvcnMpKGN4dCk7CiAgICAgIH0sICgpID0+IGN4dC5lcnJvcigpKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrQXN5bmNLZXl3b3JkKHsgc2NoZW1hRW52IH0sIGRlZikgewogICAgICBpZiAoZGVmLmFzeW5jICYmICFzY2hlbWFFbnYuJGFzeW5jKQogICAgICAgIHRocm93IG5ldyBFcnJvcigiYXN5bmMga2V5d29yZCBpbiBzeW5jIHNjaGVtYSIpOwogICAgfQogICAgZnVuY3Rpb24gdXNlS2V5d29yZChnZW4sIGtleXdvcmQsIHJlc3VsdCkgewogICAgICBpZiAocmVzdWx0ID09PSB2b2lkIDApCiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBrZXl3b3JkICIke2tleXdvcmR9IiBmYWlsZWQgdG8gY29tcGlsZWApOwogICAgICByZXR1cm4gZ2VuLnNjb3BlVmFsdWUoImtleXdvcmQiLCB0eXBlb2YgcmVzdWx0ID09ICJmdW5jdGlvbiIgPyB7IHJlZjogcmVzdWx0IH0gOiB7IHJlZjogcmVzdWx0LCBjb2RlOiAoMCwgY29kZWdlbl8xLnN0cmluZ2lmeSkocmVzdWx0KSB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIHZhbGlkU2NoZW1hVHlwZShzY2hlbWEsIHNjaGVtYVR5cGUsIGFsbG93VW5kZWZpbmVkID0gZmFsc2UpIHsKICAgICAgcmV0dXJuICFzY2hlbWFUeXBlLmxlbmd0aCB8fCBzY2hlbWFUeXBlLnNvbWUoKHN0KSA9PiBzdCA9PT0gImFycmF5IiA/IEFycmF5LmlzQXJyYXkoc2NoZW1hKSA6IHN0ID09PSAib2JqZWN0IiA/IHNjaGVtYSAmJiB0eXBlb2Ygc2NoZW1hID09ICJvYmplY3QiICYmICFBcnJheS5pc0FycmF5KHNjaGVtYSkgOiB0eXBlb2Ygc2NoZW1hID09IHN0IHx8IGFsbG93VW5kZWZpbmVkICYmIHR5cGVvZiBzY2hlbWEgPT0gInVuZGVmaW5lZCIpOwogICAgfQogICAgZXhwb3J0czIudmFsaWRTY2hlbWFUeXBlID0gdmFsaWRTY2hlbWFUeXBlOwogICAgZnVuY3Rpb24gdmFsaWRhdGVLZXl3b3JkVXNhZ2UoeyBzY2hlbWEsIG9wdHMsIHNlbGY6IHNlbGYyLCBlcnJTY2hlbWFQYXRoIH0sIGRlZiwga2V5d29yZCkgewogICAgICBpZiAoQXJyYXkuaXNBcnJheShkZWYua2V5d29yZCkgPyAhZGVmLmtleXdvcmQuaW5jbHVkZXMoa2V5d29yZCkgOiBkZWYua2V5d29yZCAhPT0ga2V5d29yZCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiYWp2IGltcGxlbWVudGF0aW9uIGVycm9yIik7CiAgICAgIH0KICAgICAgY29uc3QgZGVwcyA9IGRlZi5kZXBlbmRlbmNpZXM7CiAgICAgIGlmIChkZXBzID09PSBudWxsIHx8IGRlcHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlcHMuc29tZSgoa3dkKSA9PiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHNjaGVtYSwga3dkKSkpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHBhcmVudCBzY2hlbWEgbXVzdCBoYXZlIGRlcGVuZGVuY2llcyBvZiAke2tleXdvcmR9OiAke2RlcHMuam9pbigiLCIpfWApOwogICAgICB9CiAgICAgIGlmIChkZWYudmFsaWRhdGVTY2hlbWEpIHsKICAgICAgICBjb25zdCB2YWxpZCA9IGRlZi52YWxpZGF0ZVNjaGVtYShzY2hlbWFba2V5d29yZF0pOwogICAgICAgIGlmICghdmFsaWQpIHsKICAgICAgICAgIGNvbnN0IG1zZyA9IGBrZXl3b3JkICIke2tleXdvcmR9IiB2YWx1ZSBpcyBpbnZhbGlkIGF0IHBhdGggIiR7ZXJyU2NoZW1hUGF0aH0iOiBgICsgc2VsZjIuZXJyb3JzVGV4dChkZWYudmFsaWRhdGVTY2hlbWEuZXJyb3JzKTsKICAgICAgICAgIGlmIChvcHRzLnZhbGlkYXRlU2NoZW1hID09PSAibG9nIikKICAgICAgICAgICAgc2VsZjIubG9nZ2VyLmVycm9yKG1zZyk7CiAgICAgICAgICBlbHNlCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihtc2cpOwogICAgICAgIH0KICAgICAgfQogICAgfQogICAgZXhwb3J0czIudmFsaWRhdGVLZXl3b3JkVXNhZ2UgPSB2YWxpZGF0ZUtleXdvcmRVc2FnZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS92YWxpZGF0ZS9zdWJzY2hlbWEuanMKdmFyIHJlcXVpcmVfc3Vic2NoZW1hID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvc3Vic2NoZW1hLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5leHRlbmRTdWJzY2hlbWFNb2RlID0gZXhwb3J0czIuZXh0ZW5kU3Vic2NoZW1hRGF0YSA9IGV4cG9ydHMyLmdldFN1YnNjaGVtYSA9IHZvaWQgMDsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIGZ1bmN0aW9uIGdldFN1YnNjaGVtYShpdCwgeyBrZXl3b3JkLCBzY2hlbWFQcm9wLCBzY2hlbWEsIHNjaGVtYVBhdGgsIGVyclNjaGVtYVBhdGgsIHRvcFNjaGVtYVJlZiB9KSB7CiAgICAgIGlmIChrZXl3b3JkICE9PSB2b2lkIDAgJiYgc2NoZW1hICE9PSB2b2lkIDApIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2JvdGggImtleXdvcmQiIGFuZCAic2NoZW1hIiBwYXNzZWQsIG9ubHkgb25lIGFsbG93ZWQnKTsKICAgICAgfQogICAgICBpZiAoa2V5d29yZCAhPT0gdm9pZCAwKSB7CiAgICAgICAgY29uc3Qgc2NoID0gaXQuc2NoZW1hW2tleXdvcmRdOwogICAgICAgIHJldHVybiBzY2hlbWFQcm9wID09PSB2b2lkIDAgPyB7CiAgICAgICAgICBzY2hlbWE6IHNjaCwKICAgICAgICAgIHNjaGVtYVBhdGg6ICgwLCBjb2RlZ2VuXzEuXylgJHtpdC5zY2hlbWFQYXRofSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkoa2V5d29yZCl9YCwKICAgICAgICAgIGVyclNjaGVtYVBhdGg6IGAke2l0LmVyclNjaGVtYVBhdGh9LyR7a2V5d29yZH1gCiAgICAgICAgfSA6IHsKICAgICAgICAgIHNjaGVtYTogc2NoW3NjaGVtYVByb3BdLAogICAgICAgICAgc2NoZW1hUGF0aDogKDAsIGNvZGVnZW5fMS5fKWAke2l0LnNjaGVtYVBhdGh9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShrZXl3b3JkKX0keygwLCBjb2RlZ2VuXzEuZ2V0UHJvcGVydHkpKHNjaGVtYVByb3ApfWAsCiAgICAgICAgICBlcnJTY2hlbWFQYXRoOiBgJHtpdC5lcnJTY2hlbWFQYXRofS8ke2tleXdvcmR9LyR7KDAsIHV0aWxfMS5lc2NhcGVGcmFnbWVudCkoc2NoZW1hUHJvcCl9YAogICAgICAgIH07CiAgICAgIH0KICAgICAgaWYgKHNjaGVtYSAhPT0gdm9pZCAwKSB7CiAgICAgICAgaWYgKHNjaGVtYVBhdGggPT09IHZvaWQgMCB8fCBlcnJTY2hlbWFQYXRoID09PSB2b2lkIDAgfHwgdG9wU2NoZW1hUmVmID09PSB2b2lkIDApIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcignInNjaGVtYVBhdGgiLCAiZXJyU2NoZW1hUGF0aCIgYW5kICJ0b3BTY2hlbWFSZWYiIGFyZSByZXF1aXJlZCB3aXRoICJzY2hlbWEiJyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB7CiAgICAgICAgICBzY2hlbWEsCiAgICAgICAgICBzY2hlbWFQYXRoLAogICAgICAgICAgdG9wU2NoZW1hUmVmLAogICAgICAgICAgZXJyU2NoZW1hUGF0aAogICAgICAgIH07CiAgICAgIH0KICAgICAgdGhyb3cgbmV3IEVycm9yKCdlaXRoZXIgImtleXdvcmQiIG9yICJzY2hlbWEiIG11c3QgYmUgcGFzc2VkJyk7CiAgICB9CiAgICBleHBvcnRzMi5nZXRTdWJzY2hlbWEgPSBnZXRTdWJzY2hlbWE7CiAgICBmdW5jdGlvbiBleHRlbmRTdWJzY2hlbWFEYXRhKHN1YnNjaGVtYSwgaXQsIHsgZGF0YVByb3AsIGRhdGFQcm9wVHlwZTogZHBUeXBlLCBkYXRhLCBkYXRhVHlwZXMsIHByb3BlcnR5TmFtZSB9KSB7CiAgICAgIGlmIChkYXRhICE9PSB2b2lkIDAgJiYgZGF0YVByb3AgIT09IHZvaWQgMCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcignYm90aCAiZGF0YSIgYW5kICJkYXRhUHJvcCIgcGFzc2VkLCBvbmx5IG9uZSBhbGxvd2VkJyk7CiAgICAgIH0KICAgICAgY29uc3QgeyBnZW4gfSA9IGl0OwogICAgICBpZiAoZGF0YVByb3AgIT09IHZvaWQgMCkgewogICAgICAgIGNvbnN0IHsgZXJyb3JQYXRoLCBkYXRhUGF0aEFyciwgb3B0cyB9ID0gaXQ7CiAgICAgICAgY29uc3QgbmV4dERhdGEgPSBnZW4ubGV0KCJkYXRhIiwgKDAsIGNvZGVnZW5fMS5fKWAke2l0LmRhdGF9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShkYXRhUHJvcCl9YCwgdHJ1ZSk7CiAgICAgICAgZGF0YUNvbnRleHRQcm9wcyhuZXh0RGF0YSk7CiAgICAgICAgc3Vic2NoZW1hLmVycm9yUGF0aCA9ICgwLCBjb2RlZ2VuXzEuc3RyKWAke2Vycm9yUGF0aH0keygwLCB1dGlsXzEuZ2V0RXJyb3JQYXRoKShkYXRhUHJvcCwgZHBUeXBlLCBvcHRzLmpzUHJvcGVydHlTeW50YXgpfWA7CiAgICAgICAgc3Vic2NoZW1hLnBhcmVudERhdGFQcm9wZXJ0eSA9ICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhUHJvcH1gOwogICAgICAgIHN1YnNjaGVtYS5kYXRhUGF0aEFyciA9IFsuLi5kYXRhUGF0aEFyciwgc3Vic2NoZW1hLnBhcmVudERhdGFQcm9wZXJ0eV07CiAgICAgIH0KICAgICAgaWYgKGRhdGEgIT09IHZvaWQgMCkgewogICAgICAgIGNvbnN0IG5leHREYXRhID0gZGF0YSBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lID8gZGF0YSA6IGdlbi5sZXQoImRhdGEiLCBkYXRhLCB0cnVlKTsKICAgICAgICBkYXRhQ29udGV4dFByb3BzKG5leHREYXRhKTsKICAgICAgICBpZiAocHJvcGVydHlOYW1lICE9PSB2b2lkIDApCiAgICAgICAgICBzdWJzY2hlbWEucHJvcGVydHlOYW1lID0gcHJvcGVydHlOYW1lOwogICAgICB9CiAgICAgIGlmIChkYXRhVHlwZXMpCiAgICAgICAgc3Vic2NoZW1hLmRhdGFUeXBlcyA9IGRhdGFUeXBlczsKICAgICAgZnVuY3Rpb24gZGF0YUNvbnRleHRQcm9wcyhfbmV4dERhdGEpIHsKICAgICAgICBzdWJzY2hlbWEuZGF0YSA9IF9uZXh0RGF0YTsKICAgICAgICBzdWJzY2hlbWEuZGF0YUxldmVsID0gaXQuZGF0YUxldmVsICsgMTsKICAgICAgICBzdWJzY2hlbWEuZGF0YVR5cGVzID0gW107CiAgICAgICAgaXQuZGVmaW5lZFByb3BlcnRpZXMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICAgIHN1YnNjaGVtYS5wYXJlbnREYXRhID0gaXQuZGF0YTsKICAgICAgICBzdWJzY2hlbWEuZGF0YU5hbWVzID0gWy4uLml0LmRhdGFOYW1lcywgX25leHREYXRhXTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuZXh0ZW5kU3Vic2NoZW1hRGF0YSA9IGV4dGVuZFN1YnNjaGVtYURhdGE7CiAgICBmdW5jdGlvbiBleHRlbmRTdWJzY2hlbWFNb2RlKHN1YnNjaGVtYSwgeyBqdGREaXNjcmltaW5hdG9yLCBqdGRNZXRhZGF0YSwgY29tcG9zaXRlUnVsZSwgY3JlYXRlRXJyb3JzLCBhbGxFcnJvcnMgfSkgewogICAgICBpZiAoY29tcG9zaXRlUnVsZSAhPT0gdm9pZCAwKQogICAgICAgIHN1YnNjaGVtYS5jb21wb3NpdGVSdWxlID0gY29tcG9zaXRlUnVsZTsKICAgICAgaWYgKGNyZWF0ZUVycm9ycyAhPT0gdm9pZCAwKQogICAgICAgIHN1YnNjaGVtYS5jcmVhdGVFcnJvcnMgPSBjcmVhdGVFcnJvcnM7CiAgICAgIGlmIChhbGxFcnJvcnMgIT09IHZvaWQgMCkKICAgICAgICBzdWJzY2hlbWEuYWxsRXJyb3JzID0gYWxsRXJyb3JzOwogICAgICBzdWJzY2hlbWEuanRkRGlzY3JpbWluYXRvciA9IGp0ZERpc2NyaW1pbmF0b3I7CiAgICAgIHN1YnNjaGVtYS5qdGRNZXRhZGF0YSA9IGp0ZE1ldGFkYXRhOwogICAgfQogICAgZXhwb3J0czIuZXh0ZW5kU3Vic2NoZW1hTW9kZSA9IGV4dGVuZFN1YnNjaGVtYU1vZGU7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Zhc3QtZGVlcC1lcXVhbC1ucG0tMy4xLjMtNzkwZWRjZmNmNS1lMjFhOWQ4ZDg0LnppcC9ub2RlX21vZHVsZXMvZmFzdC1kZWVwLWVxdWFsL2luZGV4LmpzCnZhciByZXF1aXJlX2Zhc3RfZGVlcF9lcXVhbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9mYXN0LWRlZXAtZXF1YWwtbnBtLTMuMS4zLTc5MGVkY2ZjZjUtZTIxYTlkOGQ4NC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtZGVlcC1lcXVhbC9pbmRleC5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IGZ1bmN0aW9uIGVxdWFsKGEsIGIpIHsKICAgICAgaWYgKGEgPT09IGIpIHJldHVybiB0cnVlOwogICAgICBpZiAoYSAmJiBiICYmIHR5cGVvZiBhID09ICJvYmplY3QiICYmIHR5cGVvZiBiID09ICJvYmplY3QiKSB7CiAgICAgICAgaWYgKGEuY29uc3RydWN0b3IgIT09IGIuY29uc3RydWN0b3IpIHJldHVybiBmYWxzZTsKICAgICAgICB2YXIgbGVuZ3RoLCBpLCBrZXlzOwogICAgICAgIGlmIChBcnJheS5pc0FycmF5KGEpKSB7CiAgICAgICAgICBsZW5ndGggPSBhLmxlbmd0aDsKICAgICAgICAgIGlmIChsZW5ndGggIT0gYi5sZW5ndGgpIHJldHVybiBmYWxzZTsKICAgICAgICAgIGZvciAoaSA9IGxlbmd0aDsgaS0tICE9PSAwOyApCiAgICAgICAgICAgIGlmICghZXF1YWwoYVtpXSwgYltpXSkpIHJldHVybiBmYWxzZTsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgICBpZiAoYS5jb25zdHJ1Y3RvciA9PT0gUmVnRXhwKSByZXR1cm4gYS5zb3VyY2UgPT09IGIuc291cmNlICYmIGEuZmxhZ3MgPT09IGIuZmxhZ3M7CiAgICAgICAgaWYgKGEudmFsdWVPZiAhPT0gT2JqZWN0LnByb3RvdHlwZS52YWx1ZU9mKSByZXR1cm4gYS52YWx1ZU9mKCkgPT09IGIudmFsdWVPZigpOwogICAgICAgIGlmIChhLnRvU3RyaW5nICE9PSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nKSByZXR1cm4gYS50b1N0cmluZygpID09PSBiLnRvU3RyaW5nKCk7CiAgICAgICAga2V5cyA9IE9iamVjdC5rZXlzKGEpOwogICAgICAgIGxlbmd0aCA9IGtleXMubGVuZ3RoOwogICAgICAgIGlmIChsZW5ndGggIT09IE9iamVjdC5rZXlzKGIpLmxlbmd0aCkgcmV0dXJuIGZhbHNlOwogICAgICAgIGZvciAoaSA9IGxlbmd0aDsgaS0tICE9PSAwOyApCiAgICAgICAgICBpZiAoIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiLCBrZXlzW2ldKSkgcmV0dXJuIGZhbHNlOwogICAgICAgIGZvciAoaSA9IGxlbmd0aDsgaS0tICE9PSAwOyApIHsKICAgICAgICAgIHZhciBrZXkgPSBrZXlzW2ldOwogICAgICAgICAgaWYgKCFlcXVhbChhW2tleV0sIGJba2V5XSkpIHJldHVybiBmYWxzZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0KICAgICAgcmV0dXJuIGEgIT09IGEgJiYgYiAhPT0gYjsKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2pzb24tc2NoZW1hLXRyYXZlcnNlLW5wbS0xLjAuMC1mYjM2ODRmNGYwLTAyZjJmNDY2Y2QuemlwL25vZGVfbW9kdWxlcy9qc29uLXNjaGVtYS10cmF2ZXJzZS9pbmRleC5qcwp2YXIgcmVxdWlyZV9qc29uX3NjaGVtYV90cmF2ZXJzZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9qc29uLXNjaGVtYS10cmF2ZXJzZS1ucG0tMS4wLjAtZmIzNjg0ZjRmMC0wMmYyZjQ2NmNkLnppcC9ub2RlX21vZHVsZXMvanNvbi1zY2hlbWEtdHJhdmVyc2UvaW5kZXguanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgdHJhdmVyc2UgPSBtb2R1bGUyLmV4cG9ydHMgPSBmdW5jdGlvbihzY2hlbWEsIG9wdHMsIGNiKSB7CiAgICAgIGlmICh0eXBlb2Ygb3B0cyA9PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgY2IgPSBvcHRzOwogICAgICAgIG9wdHMgPSB7fTsKICAgICAgfQogICAgICBjYiA9IG9wdHMuY2IgfHwgY2I7CiAgICAgIHZhciBwcmUgPSB0eXBlb2YgY2IgPT0gImZ1bmN0aW9uIiA/IGNiIDogY2IucHJlIHx8IGZ1bmN0aW9uKCkgewogICAgICB9OwogICAgICB2YXIgcG9zdCA9IGNiLnBvc3QgfHwgZnVuY3Rpb24oKSB7CiAgICAgIH07CiAgICAgIF90cmF2ZXJzZShvcHRzLCBwcmUsIHBvc3QsIHNjaGVtYSwgIiIsIHNjaGVtYSk7CiAgICB9OwogICAgdHJhdmVyc2Uua2V5d29yZHMgPSB7CiAgICAgIGFkZGl0aW9uYWxJdGVtczogdHJ1ZSwKICAgICAgaXRlbXM6IHRydWUsCiAgICAgIGNvbnRhaW5zOiB0cnVlLAogICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogdHJ1ZSwKICAgICAgcHJvcGVydHlOYW1lczogdHJ1ZSwKICAgICAgbm90OiB0cnVlLAogICAgICBpZjogdHJ1ZSwKICAgICAgdGhlbjogdHJ1ZSwKICAgICAgZWxzZTogdHJ1ZQogICAgfTsKICAgIHRyYXZlcnNlLmFycmF5S2V5d29yZHMgPSB7CiAgICAgIGl0ZW1zOiB0cnVlLAogICAgICBhbGxPZjogdHJ1ZSwKICAgICAgYW55T2Y6IHRydWUsCiAgICAgIG9uZU9mOiB0cnVlCiAgICB9OwogICAgdHJhdmVyc2UucHJvcHNLZXl3b3JkcyA9IHsKICAgICAgJGRlZnM6IHRydWUsCiAgICAgIGRlZmluaXRpb25zOiB0cnVlLAogICAgICBwcm9wZXJ0aWVzOiB0cnVlLAogICAgICBwYXR0ZXJuUHJvcGVydGllczogdHJ1ZSwKICAgICAgZGVwZW5kZW5jaWVzOiB0cnVlCiAgICB9OwogICAgdHJhdmVyc2Uuc2tpcEtleXdvcmRzID0gewogICAgICBkZWZhdWx0OiB0cnVlLAogICAgICBlbnVtOiB0cnVlLAogICAgICBjb25zdDogdHJ1ZSwKICAgICAgcmVxdWlyZWQ6IHRydWUsCiAgICAgIG1heGltdW06IHRydWUsCiAgICAgIG1pbmltdW06IHRydWUsCiAgICAgIGV4Y2x1c2l2ZU1heGltdW06IHRydWUsCiAgICAgIGV4Y2x1c2l2ZU1pbmltdW06IHRydWUsCiAgICAgIG11bHRpcGxlT2Y6IHRydWUsCiAgICAgIG1heExlbmd0aDogdHJ1ZSwKICAgICAgbWluTGVuZ3RoOiB0cnVlLAogICAgICBwYXR0ZXJuOiB0cnVlLAogICAgICBmb3JtYXQ6IHRydWUsCiAgICAgIG1heEl0ZW1zOiB0cnVlLAogICAgICBtaW5JdGVtczogdHJ1ZSwKICAgICAgdW5pcXVlSXRlbXM6IHRydWUsCiAgICAgIG1heFByb3BlcnRpZXM6IHRydWUsCiAgICAgIG1pblByb3BlcnRpZXM6IHRydWUKICAgIH07CiAgICBmdW5jdGlvbiBfdHJhdmVyc2Uob3B0cywgcHJlLCBwb3N0LCBzY2hlbWEsIGpzb25QdHIsIHJvb3RTY2hlbWEsIHBhcmVudEpzb25QdHIsIHBhcmVudEtleXdvcmQsIHBhcmVudFNjaGVtYSwga2V5SW5kZXgpIHsKICAgICAgaWYgKHNjaGVtYSAmJiB0eXBlb2Ygc2NoZW1hID09ICJvYmplY3QiICYmICFBcnJheS5pc0FycmF5KHNjaGVtYSkpIHsKICAgICAgICBwcmUoc2NoZW1hLCBqc29uUHRyLCByb290U2NoZW1hLCBwYXJlbnRKc29uUHRyLCBwYXJlbnRLZXl3b3JkLCBwYXJlbnRTY2hlbWEsIGtleUluZGV4KTsKICAgICAgICBmb3IgKHZhciBrZXkgaW4gc2NoZW1hKSB7CiAgICAgICAgICB2YXIgc2NoID0gc2NoZW1hW2tleV07CiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShzY2gpKSB7CiAgICAgICAgICAgIGlmIChrZXkgaW4gdHJhdmVyc2UuYXJyYXlLZXl3b3JkcykgewogICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgc2NoLmxlbmd0aDsgaSsrKQogICAgICAgICAgICAgICAgX3RyYXZlcnNlKG9wdHMsIHByZSwgcG9zdCwgc2NoW2ldLCBqc29uUHRyICsgIi8iICsga2V5ICsgIi8iICsgaSwgcm9vdFNjaGVtYSwganNvblB0ciwga2V5LCBzY2hlbWEsIGkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgaWYgKGtleSBpbiB0cmF2ZXJzZS5wcm9wc0tleXdvcmRzKSB7CiAgICAgICAgICAgIGlmIChzY2ggJiYgdHlwZW9mIHNjaCA9PSAib2JqZWN0IikgewogICAgICAgICAgICAgIGZvciAodmFyIHByb3AgaW4gc2NoKQogICAgICAgICAgICAgICAgX3RyYXZlcnNlKG9wdHMsIHByZSwgcG9zdCwgc2NoW3Byb3BdLCBqc29uUHRyICsgIi8iICsga2V5ICsgIi8iICsgZXNjYXBlSnNvblB0cihwcm9wKSwgcm9vdFNjaGVtYSwganNvblB0ciwga2V5LCBzY2hlbWEsIHByb3ApOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgaWYgKGtleSBpbiB0cmF2ZXJzZS5rZXl3b3JkcyB8fCBvcHRzLmFsbEtleXMgJiYgIShrZXkgaW4gdHJhdmVyc2Uuc2tpcEtleXdvcmRzKSkgewogICAgICAgICAgICBfdHJhdmVyc2Uob3B0cywgcHJlLCBwb3N0LCBzY2gsIGpzb25QdHIgKyAiLyIgKyBrZXksIHJvb3RTY2hlbWEsIGpzb25QdHIsIGtleSwgc2NoZW1hKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcG9zdChzY2hlbWEsIGpzb25QdHIsIHJvb3RTY2hlbWEsIHBhcmVudEpzb25QdHIsIHBhcmVudEtleXdvcmQsIHBhcmVudFNjaGVtYSwga2V5SW5kZXgpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBlc2NhcGVKc29uUHRyKHN0cikgewogICAgICByZXR1cm4gc3RyLnJlcGxhY2UoL34vZywgIn4wIikucmVwbGFjZSgvXC8vZywgIn4xIik7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvcmVzb2x2ZS5qcwp2YXIgcmVxdWlyZV9yZXNvbHZlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvcmVzb2x2ZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZ2V0U2NoZW1hUmVmcyA9IGV4cG9ydHMyLnJlc29sdmVVcmwgPSBleHBvcnRzMi5ub3JtYWxpemVJZCA9IGV4cG9ydHMyLl9nZXRGdWxsUGF0aCA9IGV4cG9ydHMyLmdldEZ1bGxQYXRoID0gZXhwb3J0czIuaW5saW5lUmVmID0gdm9pZCAwOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGVxdWFsID0gcmVxdWlyZV9mYXN0X2RlZXBfZXF1YWwoKTsKICAgIHZhciB0cmF2ZXJzZSA9IHJlcXVpcmVfanNvbl9zY2hlbWFfdHJhdmVyc2UoKTsKICAgIHZhciBTSU1QTEVfSU5MSU5FRCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KFsKICAgICAgInR5cGUiLAogICAgICAiZm9ybWF0IiwKICAgICAgInBhdHRlcm4iLAogICAgICAibWF4TGVuZ3RoIiwKICAgICAgIm1pbkxlbmd0aCIsCiAgICAgICJtYXhQcm9wZXJ0aWVzIiwKICAgICAgIm1pblByb3BlcnRpZXMiLAogICAgICAibWF4SXRlbXMiLAogICAgICAibWluSXRlbXMiLAogICAgICAibWF4aW11bSIsCiAgICAgICJtaW5pbXVtIiwKICAgICAgInVuaXF1ZUl0ZW1zIiwKICAgICAgIm11bHRpcGxlT2YiLAogICAgICAicmVxdWlyZWQiLAogICAgICAiZW51bSIsCiAgICAgICJjb25zdCIKICAgIF0pOwogICAgZnVuY3Rpb24gaW5saW5lUmVmKHNjaGVtYSwgbGltaXQgPSB0cnVlKSB7CiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hID09ICJib29sZWFuIikKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgaWYgKGxpbWl0ID09PSB0cnVlKQogICAgICAgIHJldHVybiAhaGFzUmVmKHNjaGVtYSk7CiAgICAgIGlmICghbGltaXQpCiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICByZXR1cm4gY291bnRLZXlzKHNjaGVtYSkgPD0gbGltaXQ7CiAgICB9CiAgICBleHBvcnRzMi5pbmxpbmVSZWYgPSBpbmxpbmVSZWY7CiAgICB2YXIgUkVGX0tFWVdPUkRTID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWwogICAgICAiJHJlZiIsCiAgICAgICIkcmVjdXJzaXZlUmVmIiwKICAgICAgIiRyZWN1cnNpdmVBbmNob3IiLAogICAgICAiJGR5bmFtaWNSZWYiLAogICAgICAiJGR5bmFtaWNBbmNob3IiCiAgICBdKTsKICAgIGZ1bmN0aW9uIGhhc1JlZihzY2hlbWEpIHsKICAgICAgZm9yIChjb25zdCBrZXkgaW4gc2NoZW1hKSB7CiAgICAgICAgaWYgKFJFRl9LRVlXT1JEUy5oYXMoa2V5KSkKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIGNvbnN0IHNjaCA9IHNjaGVtYVtrZXldOwogICAgICAgIGlmIChBcnJheS5pc0FycmF5KHNjaCkgJiYgc2NoLnNvbWUoaGFzUmVmKSkKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIGlmICh0eXBlb2Ygc2NoID09ICJvYmplY3QiICYmIGhhc1JlZihzY2gpKQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0KICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQogICAgZnVuY3Rpb24gY291bnRLZXlzKHNjaGVtYSkgewogICAgICBsZXQgY291bnQgPSAwOwogICAgICBmb3IgKGNvbnN0IGtleSBpbiBzY2hlbWEpIHsKICAgICAgICBpZiAoa2V5ID09PSAiJHJlZiIpCiAgICAgICAgICByZXR1cm4gSW5maW5pdHk7CiAgICAgICAgY291bnQrKzsKICAgICAgICBpZiAoU0lNUExFX0lOTElORUQuaGFzKGtleSkpCiAgICAgICAgICBjb250aW51ZTsKICAgICAgICBpZiAodHlwZW9mIHNjaGVtYVtrZXldID09ICJvYmplY3QiKSB7CiAgICAgICAgICAoMCwgdXRpbF8xLmVhY2hJdGVtKShzY2hlbWFba2V5XSwgKHNjaCkgPT4gY291bnQgKz0gY291bnRLZXlzKHNjaCkpOwogICAgICAgIH0KICAgICAgICBpZiAoY291bnQgPT09IEluZmluaXR5KQogICAgICAgICAgcmV0dXJuIEluZmluaXR5OwogICAgICB9CiAgICAgIHJldHVybiBjb3VudDsKICAgIH0KICAgIGZ1bmN0aW9uIGdldEZ1bGxQYXRoKHJlc29sdmVyLCBpZCA9ICIiLCBub3JtYWxpemUpIHsKICAgICAgaWYgKG5vcm1hbGl6ZSAhPT0gZmFsc2UpCiAgICAgICAgaWQgPSBub3JtYWxpemVJZChpZCk7CiAgICAgIGNvbnN0IHAgPSByZXNvbHZlci5wYXJzZShpZCk7CiAgICAgIHJldHVybiBfZ2V0RnVsbFBhdGgocmVzb2x2ZXIsIHApOwogICAgfQogICAgZXhwb3J0czIuZ2V0RnVsbFBhdGggPSBnZXRGdWxsUGF0aDsKICAgIGZ1bmN0aW9uIF9nZXRGdWxsUGF0aChyZXNvbHZlciwgcCkgewogICAgICBjb25zdCBzZXJpYWxpemVkID0gcmVzb2x2ZXIuc2VyaWFsaXplKHApOwogICAgICByZXR1cm4gc2VyaWFsaXplZC5zcGxpdCgiIyIpWzBdICsgIiMiOwogICAgfQogICAgZXhwb3J0czIuX2dldEZ1bGxQYXRoID0gX2dldEZ1bGxQYXRoOwogICAgdmFyIFRSQUlMSU5HX1NMQVNIX0hBU0ggPSAvI1wvPyQvOwogICAgZnVuY3Rpb24gbm9ybWFsaXplSWQoaWQpIHsKICAgICAgcmV0dXJuIGlkID8gaWQucmVwbGFjZShUUkFJTElOR19TTEFTSF9IQVNILCAiIikgOiAiIjsKICAgIH0KICAgIGV4cG9ydHMyLm5vcm1hbGl6ZUlkID0gbm9ybWFsaXplSWQ7CiAgICBmdW5jdGlvbiByZXNvbHZlVXJsKHJlc29sdmVyLCBiYXNlSWQsIGlkKSB7CiAgICAgIGlkID0gbm9ybWFsaXplSWQoaWQpOwogICAgICByZXR1cm4gcmVzb2x2ZXIucmVzb2x2ZShiYXNlSWQsIGlkKTsKICAgIH0KICAgIGV4cG9ydHMyLnJlc29sdmVVcmwgPSByZXNvbHZlVXJsOwogICAgdmFyIEFOQ0hPUiA9IC9eW2Etel9dWy1hLXowLTkuX10qJC9pOwogICAgZnVuY3Rpb24gZ2V0U2NoZW1hUmVmcyhzY2hlbWEsIGJhc2VJZCkgewogICAgICBpZiAodHlwZW9mIHNjaGVtYSA9PSAiYm9vbGVhbiIpCiAgICAgICAgcmV0dXJuIHt9OwogICAgICBjb25zdCB7IHNjaGVtYUlkLCB1cmlSZXNvbHZlciB9ID0gdGhpcy5vcHRzOwogICAgICBjb25zdCBzY2hJZCA9IG5vcm1hbGl6ZUlkKHNjaGVtYVtzY2hlbWFJZF0gfHwgYmFzZUlkKTsKICAgICAgY29uc3QgYmFzZUlkcyA9IHsgIiI6IHNjaElkIH07CiAgICAgIGNvbnN0IHBhdGhQcmVmaXggPSBnZXRGdWxsUGF0aCh1cmlSZXNvbHZlciwgc2NoSWQsIGZhbHNlKTsKICAgICAgY29uc3QgbG9jYWxSZWZzID0ge307CiAgICAgIGNvbnN0IHNjaGVtYVJlZnMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICB0cmF2ZXJzZShzY2hlbWEsIHsgYWxsS2V5czogdHJ1ZSB9LCAoc2NoLCBqc29uUHRyLCBfLCBwYXJlbnRKc29uUHRyKSA9PiB7CiAgICAgICAgaWYgKHBhcmVudEpzb25QdHIgPT09IHZvaWQgMCkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCBmdWxsUGF0aCA9IHBhdGhQcmVmaXggKyBqc29uUHRyOwogICAgICAgIGxldCBpbm5lckJhc2VJZCA9IGJhc2VJZHNbcGFyZW50SnNvblB0cl07CiAgICAgICAgaWYgKHR5cGVvZiBzY2hbc2NoZW1hSWRdID09ICJzdHJpbmciKQogICAgICAgICAgaW5uZXJCYXNlSWQgPSBhZGRSZWYuY2FsbCh0aGlzLCBzY2hbc2NoZW1hSWRdKTsKICAgICAgICBhZGRBbmNob3IuY2FsbCh0aGlzLCBzY2guJGFuY2hvcik7CiAgICAgICAgYWRkQW5jaG9yLmNhbGwodGhpcywgc2NoLiRkeW5hbWljQW5jaG9yKTsKICAgICAgICBiYXNlSWRzW2pzb25QdHJdID0gaW5uZXJCYXNlSWQ7CiAgICAgICAgZnVuY3Rpb24gYWRkUmVmKHJlZikgewogICAgICAgICAgY29uc3QgX3Jlc29sdmUgPSB0aGlzLm9wdHMudXJpUmVzb2x2ZXIucmVzb2x2ZTsKICAgICAgICAgIHJlZiA9IG5vcm1hbGl6ZUlkKGlubmVyQmFzZUlkID8gX3Jlc29sdmUoaW5uZXJCYXNlSWQsIHJlZikgOiByZWYpOwogICAgICAgICAgaWYgKHNjaGVtYVJlZnMuaGFzKHJlZikpCiAgICAgICAgICAgIHRocm93IGFtYmlndW9zKHJlZik7CiAgICAgICAgICBzY2hlbWFSZWZzLmFkZChyZWYpOwogICAgICAgICAgbGV0IHNjaE9yUmVmID0gdGhpcy5yZWZzW3JlZl07CiAgICAgICAgICBpZiAodHlwZW9mIHNjaE9yUmVmID09ICJzdHJpbmciKQogICAgICAgICAgICBzY2hPclJlZiA9IHRoaXMucmVmc1tzY2hPclJlZl07CiAgICAgICAgICBpZiAodHlwZW9mIHNjaE9yUmVmID09ICJvYmplY3QiKSB7CiAgICAgICAgICAgIGNoZWNrQW1iaWd1b3NSZWYoc2NoLCBzY2hPclJlZi5zY2hlbWEsIHJlZik7CiAgICAgICAgICB9IGVsc2UgaWYgKHJlZiAhPT0gbm9ybWFsaXplSWQoZnVsbFBhdGgpKSB7CiAgICAgICAgICAgIGlmIChyZWZbMF0gPT09ICIjIikgewogICAgICAgICAgICAgIGNoZWNrQW1iaWd1b3NSZWYoc2NoLCBsb2NhbFJlZnNbcmVmXSwgcmVmKTsKICAgICAgICAgICAgICBsb2NhbFJlZnNbcmVmXSA9IHNjaDsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICB0aGlzLnJlZnNbcmVmXSA9IGZ1bGxQYXRoOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gcmVmOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBhZGRBbmNob3IoYW5jaG9yKSB7CiAgICAgICAgICBpZiAodHlwZW9mIGFuY2hvciA9PSAic3RyaW5nIikgewogICAgICAgICAgICBpZiAoIUFOQ0hPUi50ZXN0KGFuY2hvcikpCiAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBpbnZhbGlkIGFuY2hvciAiJHthbmNob3J9ImApOwogICAgICAgICAgICBhZGRSZWYuY2FsbCh0aGlzLCBgIyR7YW5jaG9yfWApOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfSk7CiAgICAgIHJldHVybiBsb2NhbFJlZnM7CiAgICAgIGZ1bmN0aW9uIGNoZWNrQW1iaWd1b3NSZWYoc2NoMSwgc2NoMiwgcmVmKSB7CiAgICAgICAgaWYgKHNjaDIgIT09IHZvaWQgMCAmJiAhZXF1YWwoc2NoMSwgc2NoMikpCiAgICAgICAgICB0aHJvdyBhbWJpZ3VvcyhyZWYpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGFtYmlndW9zKHJlZikgewogICAgICAgIHJldHVybiBuZXcgRXJyb3IoYHJlZmVyZW5jZSAiJHtyZWZ9IiByZXNvbHZlcyB0byBtb3JlIHRoYW4gb25lIHNjaGVtYWApOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5nZXRTY2hlbWFSZWZzID0gZ2V0U2NoZW1hUmVmczsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS92YWxpZGF0ZS9pbmRleC5qcwp2YXIgcmVxdWlyZV92YWxpZGF0ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5nZXREYXRhID0gZXhwb3J0czIuS2V5d29yZEN4dCA9IGV4cG9ydHMyLnZhbGlkYXRlRnVuY3Rpb25Db2RlID0gdm9pZCAwOwogICAgdmFyIGJvb2xTY2hlbWFfMSA9IHJlcXVpcmVfYm9vbFNjaGVtYSgpOwogICAgdmFyIGRhdGFUeXBlXzEgPSByZXF1aXJlX2RhdGFUeXBlKCk7CiAgICB2YXIgYXBwbGljYWJpbGl0eV8xID0gcmVxdWlyZV9hcHBsaWNhYmlsaXR5KCk7CiAgICB2YXIgZGF0YVR5cGVfMiA9IHJlcXVpcmVfZGF0YVR5cGUoKTsKICAgIHZhciBkZWZhdWx0c18xID0gcmVxdWlyZV9kZWZhdWx0cygpOwogICAgdmFyIGtleXdvcmRfMSA9IHJlcXVpcmVfa2V5d29yZCgpOwogICAgdmFyIHN1YnNjaGVtYV8xID0gcmVxdWlyZV9zdWJzY2hlbWEoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBuYW1lc18xID0gcmVxdWlyZV9uYW1lcygpOwogICAgdmFyIHJlc29sdmVfMSA9IHJlcXVpcmVfcmVzb2x2ZSgpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGVycm9yc18xID0gcmVxdWlyZV9lcnJvcnMoKTsKICAgIGZ1bmN0aW9uIHZhbGlkYXRlRnVuY3Rpb25Db2RlKGl0KSB7CiAgICAgIGlmIChpc1NjaGVtYU9iaihpdCkpIHsKICAgICAgICBjaGVja0tleXdvcmRzKGl0KTsKICAgICAgICBpZiAoc2NoZW1hQ3h0SGFzUnVsZXMoaXQpKSB7CiAgICAgICAgICB0b3BTY2hlbWFPYmpDb2RlKGl0KTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgIH0KICAgICAgdmFsaWRhdGVGdW5jdGlvbihpdCwgKCkgPT4gKDAsIGJvb2xTY2hlbWFfMS50b3BCb29sT3JFbXB0eVNjaGVtYSkoaXQpKTsKICAgIH0KICAgIGV4cG9ydHMyLnZhbGlkYXRlRnVuY3Rpb25Db2RlID0gdmFsaWRhdGVGdW5jdGlvbkNvZGU7CiAgICBmdW5jdGlvbiB2YWxpZGF0ZUZ1bmN0aW9uKHsgZ2VuLCB2YWxpZGF0ZU5hbWUsIHNjaGVtYSwgc2NoZW1hRW52LCBvcHRzIH0sIGJvZHkpIHsKICAgICAgaWYgKG9wdHMuY29kZS5lczUpIHsKICAgICAgICBnZW4uZnVuYyh2YWxpZGF0ZU5hbWUsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQuZGF0YX0sICR7bmFtZXNfMS5kZWZhdWx0LnZhbEN4dH1gLCBzY2hlbWFFbnYuJGFzeW5jLCAoKSA9PiB7CiAgICAgICAgICBnZW4uY29kZSgoMCwgY29kZWdlbl8xLl8pYCJ1c2Ugc3RyaWN0IjsgJHtmdW5jU291cmNlVXJsKHNjaGVtYSwgb3B0cyl9YCk7CiAgICAgICAgICBkZXN0cnVjdHVyZVZhbEN4dEVTNShnZW4sIG9wdHMpOwogICAgICAgICAgZ2VuLmNvZGUoYm9keSk7CiAgICAgICAgfSk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZ2VuLmZ1bmModmFsaWRhdGVOYW1lLCAoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LmRhdGF9LCAke2Rlc3RydWN0dXJlVmFsQ3h0KG9wdHMpfWAsIHNjaGVtYUVudi4kYXN5bmMsICgpID0+IGdlbi5jb2RlKGZ1bmNTb3VyY2VVcmwoc2NoZW1hLCBvcHRzKSkuY29kZShib2R5KSk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGRlc3RydWN0dXJlVmFsQ3h0KG9wdHMpIHsKICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylgeyR7bmFtZXNfMS5kZWZhdWx0Lmluc3RhbmNlUGF0aH09IiIsICR7bmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGF9LCAke25hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhUHJvcGVydHl9LCAke25hbWVzXzEuZGVmYXVsdC5yb290RGF0YX09JHtuYW1lc18xLmRlZmF1bHQuZGF0YX0ke29wdHMuZHluYW1pY1JlZiA/ICgwLCBjb2RlZ2VuXzEuXylgLCAke25hbWVzXzEuZGVmYXVsdC5keW5hbWljQW5jaG9yc309e31gIDogY29kZWdlbl8xLm5pbH19PXt9YDsKICAgIH0KICAgIGZ1bmN0aW9uIGRlc3RydWN0dXJlVmFsQ3h0RVM1KGdlbiwgb3B0cykgewogICAgICBnZW4uaWYobmFtZXNfMS5kZWZhdWx0LnZhbEN4dCwgKCkgPT4gewogICAgICAgIGdlbi52YXIobmFtZXNfMS5kZWZhdWx0Lmluc3RhbmNlUGF0aCwgKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52YWxDeHR9LiR7bmFtZXNfMS5kZWZhdWx0Lmluc3RhbmNlUGF0aH1gKTsKICAgICAgICBnZW4udmFyKG5hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhLCAoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnZhbEN4dH0uJHtuYW1lc18xLmRlZmF1bHQucGFyZW50RGF0YX1gKTsKICAgICAgICBnZW4udmFyKG5hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhUHJvcGVydHksICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudmFsQ3h0fS4ke25hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhUHJvcGVydHl9YCk7CiAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQucm9vdERhdGEsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudmFsQ3h0fS4ke25hbWVzXzEuZGVmYXVsdC5yb290RGF0YX1gKTsKICAgICAgICBpZiAob3B0cy5keW5hbWljUmVmKQogICAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQuZHluYW1pY0FuY2hvcnMsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudmFsQ3h0fS4ke25hbWVzXzEuZGVmYXVsdC5keW5hbWljQW5jaG9yc31gKTsKICAgICAgfSwgKCkgPT4gewogICAgICAgIGdlbi52YXIobmFtZXNfMS5kZWZhdWx0Lmluc3RhbmNlUGF0aCwgKDAsIGNvZGVnZW5fMS5fKWAiImApOwogICAgICAgIGdlbi52YXIobmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGEsICgwLCBjb2RlZ2VuXzEuXylgdW5kZWZpbmVkYCk7CiAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQucGFyZW50RGF0YVByb3BlcnR5LCAoMCwgY29kZWdlbl8xLl8pYHVuZGVmaW5lZGApOwogICAgICAgIGdlbi52YXIobmFtZXNfMS5kZWZhdWx0LnJvb3REYXRhLCBuYW1lc18xLmRlZmF1bHQuZGF0YSk7CiAgICAgICAgaWYgKG9wdHMuZHluYW1pY1JlZikKICAgICAgICAgIGdlbi52YXIobmFtZXNfMS5kZWZhdWx0LmR5bmFtaWNBbmNob3JzLCAoMCwgY29kZWdlbl8xLl8pYHt9YCk7CiAgICAgIH0pOwogICAgfQogICAgZnVuY3Rpb24gdG9wU2NoZW1hT2JqQ29kZShpdCkgewogICAgICBjb25zdCB7IHNjaGVtYSwgb3B0cywgZ2VuIH0gPSBpdDsKICAgICAgdmFsaWRhdGVGdW5jdGlvbihpdCwgKCkgPT4gewogICAgICAgIGlmIChvcHRzLiRjb21tZW50ICYmIHNjaGVtYS4kY29tbWVudCkKICAgICAgICAgIGNvbW1lbnRLZXl3b3JkKGl0KTsKICAgICAgICBjaGVja05vRGVmYXVsdChpdCk7CiAgICAgICAgZ2VuLmxldChuYW1lc18xLmRlZmF1bHQudkVycm9ycywgbnVsbCk7CiAgICAgICAgZ2VuLmxldChuYW1lc18xLmRlZmF1bHQuZXJyb3JzLCAwKTsKICAgICAgICBpZiAob3B0cy51bmV2YWx1YXRlZCkKICAgICAgICAgIHJlc2V0RXZhbHVhdGVkKGl0KTsKICAgICAgICB0eXBlQW5kS2V5d29yZHMoaXQpOwogICAgICAgIHJldHVyblJlc3VsdHMoaXQpOwogICAgICB9KTsKICAgICAgcmV0dXJuOwogICAgfQogICAgZnVuY3Rpb24gcmVzZXRFdmFsdWF0ZWQoaXQpIHsKICAgICAgY29uc3QgeyBnZW4sIHZhbGlkYXRlTmFtZSB9ID0gaXQ7CiAgICAgIGl0LmV2YWx1YXRlZCA9IGdlbi5jb25zdCgiZXZhbHVhdGVkIiwgKDAsIGNvZGVnZW5fMS5fKWAke3ZhbGlkYXRlTmFtZX0uZXZhbHVhdGVkYCk7CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7aXQuZXZhbHVhdGVkfS5keW5hbWljUHJvcHNgLCAoKSA9PiBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtpdC5ldmFsdWF0ZWR9LnByb3BzYCwgKDAsIGNvZGVnZW5fMS5fKWB1bmRlZmluZWRgKSk7CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7aXQuZXZhbHVhdGVkfS5keW5hbWljSXRlbXNgLCAoKSA9PiBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtpdC5ldmFsdWF0ZWR9Lml0ZW1zYCwgKDAsIGNvZGVnZW5fMS5fKWB1bmRlZmluZWRgKSk7CiAgICB9CiAgICBmdW5jdGlvbiBmdW5jU291cmNlVXJsKHNjaGVtYSwgb3B0cykgewogICAgICBjb25zdCBzY2hJZCA9IHR5cGVvZiBzY2hlbWEgPT0gIm9iamVjdCIgJiYgc2NoZW1hW29wdHMuc2NoZW1hSWRdOwogICAgICByZXR1cm4gc2NoSWQgJiYgKG9wdHMuY29kZS5zb3VyY2UgfHwgb3B0cy5jb2RlLnByb2Nlc3MpID8gKDAsIGNvZGVnZW5fMS5fKWAvKiMgc291cmNlVVJMPSR7c2NoSWR9ICovYCA6IGNvZGVnZW5fMS5uaWw7CiAgICB9CiAgICBmdW5jdGlvbiBzdWJzY2hlbWFDb2RlKGl0LCB2YWxpZCkgewogICAgICBpZiAoaXNTY2hlbWFPYmooaXQpKSB7CiAgICAgICAgY2hlY2tLZXl3b3JkcyhpdCk7CiAgICAgICAgaWYgKHNjaGVtYUN4dEhhc1J1bGVzKGl0KSkgewogICAgICAgICAgc3ViU2NoZW1hT2JqQ29kZShpdCwgdmFsaWQpOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgfQogICAgICAoMCwgYm9vbFNjaGVtYV8xLmJvb2xPckVtcHR5U2NoZW1hKShpdCwgdmFsaWQpOwogICAgfQogICAgZnVuY3Rpb24gc2NoZW1hQ3h0SGFzUnVsZXMoeyBzY2hlbWEsIHNlbGY6IHNlbGYyIH0pIHsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEgPT0gImJvb2xlYW4iKQogICAgICAgIHJldHVybiAhc2NoZW1hOwogICAgICBmb3IgKGNvbnN0IGtleSBpbiBzY2hlbWEpCiAgICAgICAgaWYgKHNlbGYyLlJVTEVTLmFsbFtrZXldKQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICAgIGZ1bmN0aW9uIGlzU2NoZW1hT2JqKGl0KSB7CiAgICAgIHJldHVybiB0eXBlb2YgaXQuc2NoZW1hICE9ICJib29sZWFuIjsKICAgIH0KICAgIGZ1bmN0aW9uIHN1YlNjaGVtYU9iakNvZGUoaXQsIHZhbGlkKSB7CiAgICAgIGNvbnN0IHsgc2NoZW1hLCBnZW4sIG9wdHMgfSA9IGl0OwogICAgICBpZiAob3B0cy4kY29tbWVudCAmJiBzY2hlbWEuJGNvbW1lbnQpCiAgICAgICAgY29tbWVudEtleXdvcmQoaXQpOwogICAgICB1cGRhdGVDb250ZXh0KGl0KTsKICAgICAgY2hlY2tBc3luY1NjaGVtYShpdCk7CiAgICAgIGNvbnN0IGVycnNDb3VudCA9IGdlbi5jb25zdCgiX2VycnMiLCBuYW1lc18xLmRlZmF1bHQuZXJyb3JzKTsKICAgICAgdHlwZUFuZEtleXdvcmRzKGl0LCBlcnJzQ291bnQpOwogICAgICBnZW4udmFyKHZhbGlkLCAoMCwgY29kZWdlbl8xLl8pYCR7ZXJyc0NvdW50fSA9PT0gJHtuYW1lc18xLmRlZmF1bHQuZXJyb3JzfWApOwogICAgfQogICAgZnVuY3Rpb24gY2hlY2tLZXl3b3JkcyhpdCkgewogICAgICAoMCwgdXRpbF8xLmNoZWNrVW5rbm93blJ1bGVzKShpdCk7CiAgICAgIGNoZWNrUmVmc0FuZEtleXdvcmRzKGl0KTsKICAgIH0KICAgIGZ1bmN0aW9uIHR5cGVBbmRLZXl3b3JkcyhpdCwgZXJyc0NvdW50KSB7CiAgICAgIGlmIChpdC5vcHRzLmp0ZCkKICAgICAgICByZXR1cm4gc2NoZW1hS2V5d29yZHMoaXQsIFtdLCBmYWxzZSwgZXJyc0NvdW50KTsKICAgICAgY29uc3QgdHlwZXMgPSAoMCwgZGF0YVR5cGVfMS5nZXRTY2hlbWFUeXBlcykoaXQuc2NoZW1hKTsKICAgICAgY29uc3QgY2hlY2tlZFR5cGVzID0gKDAsIGRhdGFUeXBlXzEuY29lcmNlQW5kQ2hlY2tEYXRhVHlwZSkoaXQsIHR5cGVzKTsKICAgICAgc2NoZW1hS2V5d29yZHMoaXQsIHR5cGVzLCAhY2hlY2tlZFR5cGVzLCBlcnJzQ291bnQpOwogICAgfQogICAgZnVuY3Rpb24gY2hlY2tSZWZzQW5kS2V5d29yZHMoaXQpIHsKICAgICAgY29uc3QgeyBzY2hlbWEsIGVyclNjaGVtYVBhdGgsIG9wdHMsIHNlbGY6IHNlbGYyIH0gPSBpdDsKICAgICAgaWYgKHNjaGVtYS4kcmVmICYmIG9wdHMuaWdub3JlS2V5d29yZHNXaXRoUmVmICYmICgwLCB1dGlsXzEuc2NoZW1hSGFzUnVsZXNCdXRSZWYpKHNjaGVtYSwgc2VsZjIuUlVMRVMpKSB7CiAgICAgICAgc2VsZjIubG9nZ2VyLndhcm4oYCRyZWY6IGtleXdvcmRzIGlnbm9yZWQgaW4gc2NoZW1hIGF0IHBhdGggIiR7ZXJyU2NoZW1hUGF0aH0iYCk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrTm9EZWZhdWx0KGl0KSB7CiAgICAgIGNvbnN0IHsgc2NoZW1hLCBvcHRzIH0gPSBpdDsKICAgICAgaWYgKHNjaGVtYS5kZWZhdWx0ICE9PSB2b2lkIDAgJiYgb3B0cy51c2VEZWZhdWx0cyAmJiBvcHRzLnN0cmljdFNjaGVtYSkgewogICAgICAgICgwLCB1dGlsXzEuY2hlY2tTdHJpY3RNb2RlKShpdCwgImRlZmF1bHQgaXMgaWdub3JlZCBpbiB0aGUgc2NoZW1hIHJvb3QiKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gdXBkYXRlQ29udGV4dChpdCkgewogICAgICBjb25zdCBzY2hJZCA9IGl0LnNjaGVtYVtpdC5vcHRzLnNjaGVtYUlkXTsKICAgICAgaWYgKHNjaElkKQogICAgICAgIGl0LmJhc2VJZCA9ICgwLCByZXNvbHZlXzEucmVzb2x2ZVVybCkoaXQub3B0cy51cmlSZXNvbHZlciwgaXQuYmFzZUlkLCBzY2hJZCk7CiAgICB9CiAgICBmdW5jdGlvbiBjaGVja0FzeW5jU2NoZW1hKGl0KSB7CiAgICAgIGlmIChpdC5zY2hlbWEuJGFzeW5jICYmICFpdC5zY2hlbWFFbnYuJGFzeW5jKQogICAgICAgIHRocm93IG5ldyBFcnJvcigiYXN5bmMgc2NoZW1hIGluIHN5bmMgc2NoZW1hIik7CiAgICB9CiAgICBmdW5jdGlvbiBjb21tZW50S2V5d29yZCh7IGdlbiwgc2NoZW1hRW52LCBzY2hlbWEsIGVyclNjaGVtYVBhdGgsIG9wdHMgfSkgewogICAgICBjb25zdCBtc2cgPSBzY2hlbWEuJGNvbW1lbnQ7CiAgICAgIGlmIChvcHRzLiRjb21tZW50ID09PSB0cnVlKSB7CiAgICAgICAgZ2VuLmNvZGUoKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC5zZWxmfS5sb2dnZXIubG9nKCR7bXNnfSlgKTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2Ygb3B0cy4kY29tbWVudCA9PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgY29uc3Qgc2NoZW1hUGF0aCA9ICgwLCBjb2RlZ2VuXzEuc3RyKWAke2VyclNjaGVtYVBhdGh9LyRjb21tZW50YDsKICAgICAgICBjb25zdCByb290TmFtZSA9IGdlbi5zY29wZVZhbHVlKCJyb290IiwgeyByZWY6IHNjaGVtYUVudi5yb290IH0pOwogICAgICAgIGdlbi5jb2RlKCgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQuc2VsZn0ub3B0cy4kY29tbWVudCgke21zZ30sICR7c2NoZW1hUGF0aH0sICR7cm9vdE5hbWV9LnNjaGVtYSlgKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gcmV0dXJuUmVzdWx0cyhpdCkgewogICAgICBjb25zdCB7IGdlbiwgc2NoZW1hRW52LCB2YWxpZGF0ZU5hbWUsIFZhbGlkYXRpb25FcnJvciwgb3B0cyB9ID0gaXQ7CiAgICAgIGlmIChzY2hlbWFFbnYuJGFzeW5jKSB7CiAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQuZXJyb3JzfSA9PT0gMGAsICgpID0+IGdlbi5yZXR1cm4obmFtZXNfMS5kZWZhdWx0LmRhdGEpLCAoKSA9PiBnZW4udGhyb3coKDAsIGNvZGVnZW5fMS5fKWBuZXcgJHtWYWxpZGF0aW9uRXJyb3J9KCR7bmFtZXNfMS5kZWZhdWx0LnZFcnJvcnN9KWApKTsKICAgICAgfSBlbHNlIHsKICAgICAgICBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHt2YWxpZGF0ZU5hbWV9LmVycm9yc2AsIG5hbWVzXzEuZGVmYXVsdC52RXJyb3JzKTsKICAgICAgICBpZiAob3B0cy51bmV2YWx1YXRlZCkKICAgICAgICAgIGFzc2lnbkV2YWx1YXRlZChpdCk7CiAgICAgICAgZ2VuLnJldHVybigoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LmVycm9yc30gPT09IDBgKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gYXNzaWduRXZhbHVhdGVkKHsgZ2VuLCBldmFsdWF0ZWQsIHByb3BzLCBpdGVtcyB9KSB7CiAgICAgIGlmIChwcm9wcyBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lKQogICAgICAgIGdlbi5hc3NpZ24oKDAsIGNvZGVnZW5fMS5fKWAke2V2YWx1YXRlZH0ucHJvcHNgLCBwcm9wcyk7CiAgICAgIGlmIChpdGVtcyBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lKQogICAgICAgIGdlbi5hc3NpZ24oKDAsIGNvZGVnZW5fMS5fKWAke2V2YWx1YXRlZH0uaXRlbXNgLCBpdGVtcyk7CiAgICB9CiAgICBmdW5jdGlvbiBzY2hlbWFLZXl3b3JkcyhpdCwgdHlwZXMsIHR5cGVFcnJvcnMsIGVycnNDb3VudCkgewogICAgICBjb25zdCB7IGdlbiwgc2NoZW1hLCBkYXRhLCBhbGxFcnJvcnMsIG9wdHMsIHNlbGY6IHNlbGYyIH0gPSBpdDsKICAgICAgY29uc3QgeyBSVUxFUyB9ID0gc2VsZjI7CiAgICAgIGlmIChzY2hlbWEuJHJlZiAmJiAob3B0cy5pZ25vcmVLZXl3b3Jkc1dpdGhSZWYgfHwgISgwLCB1dGlsXzEuc2NoZW1hSGFzUnVsZXNCdXRSZWYpKHNjaGVtYSwgUlVMRVMpKSkgewogICAgICAgIGdlbi5ibG9jaygoKSA9PiBrZXl3b3JkQ29kZShpdCwgIiRyZWYiLCBSVUxFUy5hbGwuJHJlZi5kZWZpbml0aW9uKSk7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIGlmICghb3B0cy5qdGQpCiAgICAgICAgY2hlY2tTdHJpY3RUeXBlcyhpdCwgdHlwZXMpOwogICAgICBnZW4uYmxvY2soKCkgPT4gewogICAgICAgIGZvciAoY29uc3QgZ3JvdXAgb2YgUlVMRVMucnVsZXMpCiAgICAgICAgICBncm91cEtleXdvcmRzKGdyb3VwKTsKICAgICAgICBncm91cEtleXdvcmRzKFJVTEVTLnBvc3QpOwogICAgICB9KTsKICAgICAgZnVuY3Rpb24gZ3JvdXBLZXl3b3Jkcyhncm91cCkgewogICAgICAgIGlmICghKDAsIGFwcGxpY2FiaWxpdHlfMS5zaG91bGRVc2VHcm91cCkoc2NoZW1hLCBncm91cCkpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgaWYgKGdyb3VwLnR5cGUpIHsKICAgICAgICAgIGdlbi5pZigoMCwgZGF0YVR5cGVfMi5jaGVja0RhdGFUeXBlKShncm91cC50eXBlLCBkYXRhLCBvcHRzLnN0cmljdE51bWJlcnMpKTsKICAgICAgICAgIGl0ZXJhdGVLZXl3b3JkcyhpdCwgZ3JvdXApOwogICAgICAgICAgaWYgKHR5cGVzLmxlbmd0aCA9PT0gMSAmJiB0eXBlc1swXSA9PT0gZ3JvdXAudHlwZSAmJiB0eXBlRXJyb3JzKSB7CiAgICAgICAgICAgIGdlbi5lbHNlKCk7CiAgICAgICAgICAgICgwLCBkYXRhVHlwZV8yLnJlcG9ydFR5cGVFcnJvcikoaXQpOwogICAgICAgICAgfQogICAgICAgICAgZ2VuLmVuZElmKCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGl0ZXJhdGVLZXl3b3JkcyhpdCwgZ3JvdXApOwogICAgICAgIH0KICAgICAgICBpZiAoIWFsbEVycm9ycykKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LmVycm9yc30gPT09ICR7ZXJyc0NvdW50IHx8IDB9YCk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGl0ZXJhdGVLZXl3b3JkcyhpdCwgZ3JvdXApIHsKICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYSwgb3B0czogeyB1c2VEZWZhdWx0cyB9IH0gPSBpdDsKICAgICAgaWYgKHVzZURlZmF1bHRzKQogICAgICAgICgwLCBkZWZhdWx0c18xLmFzc2lnbkRlZmF1bHRzKShpdCwgZ3JvdXAudHlwZSk7CiAgICAgIGdlbi5ibG9jaygoKSA9PiB7CiAgICAgICAgZm9yIChjb25zdCBydWxlIG9mIGdyb3VwLnJ1bGVzKSB7CiAgICAgICAgICBpZiAoKDAsIGFwcGxpY2FiaWxpdHlfMS5zaG91bGRVc2VSdWxlKShzY2hlbWEsIHJ1bGUpKSB7CiAgICAgICAgICAgIGtleXdvcmRDb2RlKGl0LCBydWxlLmtleXdvcmQsIHJ1bGUuZGVmaW5pdGlvbiwgZ3JvdXAudHlwZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrU3RyaWN0VHlwZXMoaXQsIHR5cGVzKSB7CiAgICAgIGlmIChpdC5zY2hlbWFFbnYubWV0YSB8fCAhaXQub3B0cy5zdHJpY3RUeXBlcykKICAgICAgICByZXR1cm47CiAgICAgIGNoZWNrQ29udGV4dFR5cGVzKGl0LCB0eXBlcyk7CiAgICAgIGlmICghaXQub3B0cy5hbGxvd1VuaW9uVHlwZXMpCiAgICAgICAgY2hlY2tNdWx0aXBsZVR5cGVzKGl0LCB0eXBlcyk7CiAgICAgIGNoZWNrS2V5d29yZFR5cGVzKGl0LCBpdC5kYXRhVHlwZXMpOwogICAgfQogICAgZnVuY3Rpb24gY2hlY2tDb250ZXh0VHlwZXMoaXQsIHR5cGVzKSB7CiAgICAgIGlmICghdHlwZXMubGVuZ3RoKQogICAgICAgIHJldHVybjsKICAgICAgaWYgKCFpdC5kYXRhVHlwZXMubGVuZ3RoKSB7CiAgICAgICAgaXQuZGF0YVR5cGVzID0gdHlwZXM7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIHR5cGVzLmZvckVhY2goKHQpID0+IHsKICAgICAgICBpZiAoIWluY2x1ZGVzVHlwZShpdC5kYXRhVHlwZXMsIHQpKSB7CiAgICAgICAgICBzdHJpY3RUeXBlc0Vycm9yKGl0LCBgdHlwZSAiJHt0fSIgbm90IGFsbG93ZWQgYnkgY29udGV4dCAiJHtpdC5kYXRhVHlwZXMuam9pbigiLCIpfSJgKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgICBuYXJyb3dTY2hlbWFUeXBlcyhpdCwgdHlwZXMpOwogICAgfQogICAgZnVuY3Rpb24gY2hlY2tNdWx0aXBsZVR5cGVzKGl0LCB0cykgewogICAgICBpZiAodHMubGVuZ3RoID4gMSAmJiAhKHRzLmxlbmd0aCA9PT0gMiAmJiB0cy5pbmNsdWRlcygibnVsbCIpKSkgewogICAgICAgIHN0cmljdFR5cGVzRXJyb3IoaXQsICJ1c2UgYWxsb3dVbmlvblR5cGVzIHRvIGFsbG93IHVuaW9uIHR5cGUga2V5d29yZCIpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBjaGVja0tleXdvcmRUeXBlcyhpdCwgdHMpIHsKICAgICAgY29uc3QgcnVsZXMgPSBpdC5zZWxmLlJVTEVTLmFsbDsKICAgICAgZm9yIChjb25zdCBrZXl3b3JkIGluIHJ1bGVzKSB7CiAgICAgICAgY29uc3QgcnVsZSA9IHJ1bGVzW2tleXdvcmRdOwogICAgICAgIGlmICh0eXBlb2YgcnVsZSA9PSAib2JqZWN0IiAmJiAoMCwgYXBwbGljYWJpbGl0eV8xLnNob3VsZFVzZVJ1bGUpKGl0LnNjaGVtYSwgcnVsZSkpIHsKICAgICAgICAgIGNvbnN0IHsgdHlwZSB9ID0gcnVsZS5kZWZpbml0aW9uOwogICAgICAgICAgaWYgKHR5cGUubGVuZ3RoICYmICF0eXBlLnNvbWUoKHQpID0+IGhhc0FwcGxpY2FibGVUeXBlKHRzLCB0KSkpIHsKICAgICAgICAgICAgc3RyaWN0VHlwZXNFcnJvcihpdCwgYG1pc3NpbmcgdHlwZSAiJHt0eXBlLmpvaW4oIiwiKX0iIGZvciBrZXl3b3JkICIke2tleXdvcmR9ImApOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gaGFzQXBwbGljYWJsZVR5cGUoc2NoVHMsIGt3ZFQpIHsKICAgICAgcmV0dXJuIHNjaFRzLmluY2x1ZGVzKGt3ZFQpIHx8IGt3ZFQgPT09ICJudW1iZXIiICYmIHNjaFRzLmluY2x1ZGVzKCJpbnRlZ2VyIik7CiAgICB9CiAgICBmdW5jdGlvbiBpbmNsdWRlc1R5cGUodHMsIHQpIHsKICAgICAgcmV0dXJuIHRzLmluY2x1ZGVzKHQpIHx8IHQgPT09ICJpbnRlZ2VyIiAmJiB0cy5pbmNsdWRlcygibnVtYmVyIik7CiAgICB9CiAgICBmdW5jdGlvbiBuYXJyb3dTY2hlbWFUeXBlcyhpdCwgd2l0aFR5cGVzKSB7CiAgICAgIGNvbnN0IHRzID0gW107CiAgICAgIGZvciAoY29uc3QgdCBvZiBpdC5kYXRhVHlwZXMpIHsKICAgICAgICBpZiAoaW5jbHVkZXNUeXBlKHdpdGhUeXBlcywgdCkpCiAgICAgICAgICB0cy5wdXNoKHQpOwogICAgICAgIGVsc2UgaWYgKHdpdGhUeXBlcy5pbmNsdWRlcygiaW50ZWdlciIpICYmIHQgPT09ICJudW1iZXIiKQogICAgICAgICAgdHMucHVzaCgiaW50ZWdlciIpOwogICAgICB9CiAgICAgIGl0LmRhdGFUeXBlcyA9IHRzOwogICAgfQogICAgZnVuY3Rpb24gc3RyaWN0VHlwZXNFcnJvcihpdCwgbXNnKSB7CiAgICAgIGNvbnN0IHNjaGVtYVBhdGggPSBpdC5zY2hlbWFFbnYuYmFzZUlkICsgaXQuZXJyU2NoZW1hUGF0aDsKICAgICAgbXNnICs9IGAgYXQgIiR7c2NoZW1hUGF0aH0iIChzdHJpY3RUeXBlcylgOwogICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsIG1zZywgaXQub3B0cy5zdHJpY3RUeXBlcyk7CiAgICB9CiAgICB2YXIgS2V5d29yZEN4dCA9IGNsYXNzIHsKICAgICAgY29uc3RydWN0b3IoaXQsIGRlZiwga2V5d29yZCkgewogICAgICAgICgwLCBrZXl3b3JkXzEudmFsaWRhdGVLZXl3b3JkVXNhZ2UpKGl0LCBkZWYsIGtleXdvcmQpOwogICAgICAgIHRoaXMuZ2VuID0gaXQuZ2VuOwogICAgICAgIHRoaXMuYWxsRXJyb3JzID0gaXQuYWxsRXJyb3JzOwogICAgICAgIHRoaXMua2V5d29yZCA9IGtleXdvcmQ7CiAgICAgICAgdGhpcy5kYXRhID0gaXQuZGF0YTsKICAgICAgICB0aGlzLnNjaGVtYSA9IGl0LnNjaGVtYVtrZXl3b3JkXTsKICAgICAgICB0aGlzLiRkYXRhID0gZGVmLiRkYXRhICYmIGl0Lm9wdHMuJGRhdGEgJiYgdGhpcy5zY2hlbWEgJiYgdGhpcy5zY2hlbWEuJGRhdGE7CiAgICAgICAgdGhpcy5zY2hlbWFWYWx1ZSA9ICgwLCB1dGlsXzEuc2NoZW1hUmVmT3JWYWwpKGl0LCB0aGlzLnNjaGVtYSwga2V5d29yZCwgdGhpcy4kZGF0YSk7CiAgICAgICAgdGhpcy5zY2hlbWFUeXBlID0gZGVmLnNjaGVtYVR5cGU7CiAgICAgICAgdGhpcy5wYXJlbnRTY2hlbWEgPSBpdC5zY2hlbWE7CiAgICAgICAgdGhpcy5wYXJhbXMgPSB7fTsKICAgICAgICB0aGlzLml0ID0gaXQ7CiAgICAgICAgdGhpcy5kZWYgPSBkZWY7CiAgICAgICAgaWYgKHRoaXMuJGRhdGEpIHsKICAgICAgICAgIHRoaXMuc2NoZW1hQ29kZSA9IGl0Lmdlbi5jb25zdCgidlNjaGVtYSIsIGdldERhdGEodGhpcy4kZGF0YSwgaXQpKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5zY2hlbWFDb2RlID0gdGhpcy5zY2hlbWFWYWx1ZTsKICAgICAgICAgIGlmICghKDAsIGtleXdvcmRfMS52YWxpZFNjaGVtYVR5cGUpKHRoaXMuc2NoZW1hLCBkZWYuc2NoZW1hVHlwZSwgZGVmLmFsbG93VW5kZWZpbmVkKSkgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYCR7a2V5d29yZH0gdmFsdWUgbXVzdCBiZSAke0pTT04uc3RyaW5naWZ5KGRlZi5zY2hlbWFUeXBlKX1gKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKCJjb2RlIiBpbiBkZWYgPyBkZWYudHJhY2tFcnJvcnMgOiBkZWYuZXJyb3JzICE9PSBmYWxzZSkgewogICAgICAgICAgdGhpcy5lcnJzQ291bnQgPSBpdC5nZW4uY29uc3QoIl9lcnJzIiwgbmFtZXNfMS5kZWZhdWx0LmVycm9ycyk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJlc3VsdChjb25kaXRpb24sIHN1Y2Nlc3NBY3Rpb24sIGZhaWxBY3Rpb24pIHsKICAgICAgICB0aGlzLmZhaWxSZXN1bHQoKDAsIGNvZGVnZW5fMS5ub3QpKGNvbmRpdGlvbiksIHN1Y2Nlc3NBY3Rpb24sIGZhaWxBY3Rpb24pOwogICAgICB9CiAgICAgIGZhaWxSZXN1bHQoY29uZGl0aW9uLCBzdWNjZXNzQWN0aW9uLCBmYWlsQWN0aW9uKSB7CiAgICAgICAgdGhpcy5nZW4uaWYoY29uZGl0aW9uKTsKICAgICAgICBpZiAoZmFpbEFjdGlvbikKICAgICAgICAgIGZhaWxBY3Rpb24oKTsKICAgICAgICBlbHNlCiAgICAgICAgICB0aGlzLmVycm9yKCk7CiAgICAgICAgaWYgKHN1Y2Nlc3NBY3Rpb24pIHsKICAgICAgICAgIHRoaXMuZ2VuLmVsc2UoKTsKICAgICAgICAgIHN1Y2Nlc3NBY3Rpb24oKTsKICAgICAgICAgIGlmICh0aGlzLmFsbEVycm9ycykKICAgICAgICAgICAgdGhpcy5nZW4uZW5kSWYoKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaWYgKHRoaXMuYWxsRXJyb3JzKQogICAgICAgICAgICB0aGlzLmdlbi5lbmRJZigpOwogICAgICAgICAgZWxzZQogICAgICAgICAgICB0aGlzLmdlbi5lbHNlKCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHBhc3MoY29uZGl0aW9uLCBmYWlsQWN0aW9uKSB7CiAgICAgICAgdGhpcy5mYWlsUmVzdWx0KCgwLCBjb2RlZ2VuXzEubm90KShjb25kaXRpb24pLCB2b2lkIDAsIGZhaWxBY3Rpb24pOwogICAgICB9CiAgICAgIGZhaWwoY29uZGl0aW9uKSB7CiAgICAgICAgaWYgKGNvbmRpdGlvbiA9PT0gdm9pZCAwKSB7CiAgICAgICAgICB0aGlzLmVycm9yKCk7CiAgICAgICAgICBpZiAoIXRoaXMuYWxsRXJyb3JzKQogICAgICAgICAgICB0aGlzLmdlbi5pZihmYWxzZSk7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIHRoaXMuZ2VuLmlmKGNvbmRpdGlvbik7CiAgICAgICAgdGhpcy5lcnJvcigpOwogICAgICAgIGlmICh0aGlzLmFsbEVycm9ycykKICAgICAgICAgIHRoaXMuZ2VuLmVuZElmKCk7CiAgICAgICAgZWxzZQogICAgICAgICAgdGhpcy5nZW4uZWxzZSgpOwogICAgICB9CiAgICAgIGZhaWwkZGF0YShjb25kaXRpb24pIHsKICAgICAgICBpZiAoIXRoaXMuJGRhdGEpCiAgICAgICAgICByZXR1cm4gdGhpcy5mYWlsKGNvbmRpdGlvbik7CiAgICAgICAgY29uc3QgeyBzY2hlbWFDb2RlIH0gPSB0aGlzOwogICAgICAgIHRoaXMuZmFpbCgoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hQ29kZX0gIT09IHVuZGVmaW5lZCAmJiAoJHsoMCwgY29kZWdlbl8xLm9yKSh0aGlzLmludmFsaWQkZGF0YSgpLCBjb25kaXRpb24pfSlgKTsKICAgICAgfQogICAgICBlcnJvcihhcHBlbmQsIGVycm9yUGFyYW1zLCBlcnJvclBhdGhzKSB7CiAgICAgICAgaWYgKGVycm9yUGFyYW1zKSB7CiAgICAgICAgICB0aGlzLnNldFBhcmFtcyhlcnJvclBhcmFtcyk7CiAgICAgICAgICB0aGlzLl9lcnJvcihhcHBlbmQsIGVycm9yUGF0aHMpOwogICAgICAgICAgdGhpcy5zZXRQYXJhbXMoe30pOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB0aGlzLl9lcnJvcihhcHBlbmQsIGVycm9yUGF0aHMpOwogICAgICB9CiAgICAgIF9lcnJvcihhcHBlbmQsIGVycm9yUGF0aHMpIHsKICAgICAgICA7CiAgICAgICAgKGFwcGVuZCA/IGVycm9yc18xLnJlcG9ydEV4dHJhRXJyb3IgOiBlcnJvcnNfMS5yZXBvcnRFcnJvcikodGhpcywgdGhpcy5kZWYuZXJyb3IsIGVycm9yUGF0aHMpOwogICAgICB9CiAgICAgICRkYXRhRXJyb3IoKSB7CiAgICAgICAgKDAsIGVycm9yc18xLnJlcG9ydEVycm9yKSh0aGlzLCB0aGlzLmRlZi4kZGF0YUVycm9yIHx8IGVycm9yc18xLmtleXdvcmQkRGF0YUVycm9yKTsKICAgICAgfQogICAgICByZXNldCgpIHsKICAgICAgICBpZiAodGhpcy5lcnJzQ291bnQgPT09IHZvaWQgMCkKICAgICAgICAgIHRocm93IG5ldyBFcnJvcignYWRkICJ0cmFja0Vycm9ycyIgdG8ga2V5d29yZCBkZWZpbml0aW9uJyk7CiAgICAgICAgKDAsIGVycm9yc18xLnJlc2V0RXJyb3JzQ291bnQpKHRoaXMuZ2VuLCB0aGlzLmVycnNDb3VudCk7CiAgICAgIH0KICAgICAgb2soY29uZCkgewogICAgICAgIGlmICghdGhpcy5hbGxFcnJvcnMpCiAgICAgICAgICB0aGlzLmdlbi5pZihjb25kKTsKICAgICAgfQogICAgICBzZXRQYXJhbXMob2JqLCBhc3NpZ24pIHsKICAgICAgICBpZiAoYXNzaWduKQogICAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLnBhcmFtcywgb2JqKTsKICAgICAgICBlbHNlCiAgICAgICAgICB0aGlzLnBhcmFtcyA9IG9iajsKICAgICAgfQogICAgICBibG9jayRkYXRhKHZhbGlkLCBjb2RlQmxvY2ssICRkYXRhVmFsaWQgPSBjb2RlZ2VuXzEubmlsKSB7CiAgICAgICAgdGhpcy5nZW4uYmxvY2soKCkgPT4gewogICAgICAgICAgdGhpcy5jaGVjayRkYXRhKHZhbGlkLCAkZGF0YVZhbGlkKTsKICAgICAgICAgIGNvZGVCbG9jaygpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIGNoZWNrJGRhdGEodmFsaWQgPSBjb2RlZ2VuXzEubmlsLCAkZGF0YVZhbGlkID0gY29kZWdlbl8xLm5pbCkgewogICAgICAgIGlmICghdGhpcy4kZGF0YSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCB7IGdlbiwgc2NoZW1hQ29kZSwgc2NoZW1hVHlwZSwgZGVmIH0gPSB0aGlzOwogICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm9yKSgoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hQ29kZX0gPT09IHVuZGVmaW5lZGAsICRkYXRhVmFsaWQpKTsKICAgICAgICBpZiAodmFsaWQgIT09IGNvZGVnZW5fMS5uaWwpCiAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCB0cnVlKTsKICAgICAgICBpZiAoc2NoZW1hVHlwZS5sZW5ndGggfHwgZGVmLnZhbGlkYXRlU2NoZW1hKSB7CiAgICAgICAgICBnZW4uZWxzZUlmKHRoaXMuaW52YWxpZCRkYXRhKCkpOwogICAgICAgICAgdGhpcy4kZGF0YUVycm9yKCk7CiAgICAgICAgICBpZiAodmFsaWQgIT09IGNvZGVnZW5fMS5uaWwpCiAgICAgICAgICAgIGdlbi5hc3NpZ24odmFsaWQsIGZhbHNlKTsKICAgICAgICB9CiAgICAgICAgZ2VuLmVsc2UoKTsKICAgICAgfQogICAgICBpbnZhbGlkJGRhdGEoKSB7CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYUNvZGUsIHNjaGVtYVR5cGUsIGRlZiwgaXQgfSA9IHRoaXM7CiAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEub3IpKHdyb25nJERhdGFUeXBlKCksIGludmFsaWQkRGF0YVNjaGVtYSgpKTsKICAgICAgICBmdW5jdGlvbiB3cm9uZyREYXRhVHlwZSgpIHsKICAgICAgICAgIGlmIChzY2hlbWFUeXBlLmxlbmd0aCkgewogICAgICAgICAgICBpZiAoIShzY2hlbWFDb2RlIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUpKQogICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiYWp2IGltcGxlbWVudGF0aW9uIGVycm9yIik7CiAgICAgICAgICAgIGNvbnN0IHN0ID0gQXJyYXkuaXNBcnJheShzY2hlbWFUeXBlKSA/IHNjaGVtYVR5cGUgOiBbc2NoZW1hVHlwZV07CiAgICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCR7KDAsIGRhdGFUeXBlXzIuY2hlY2tEYXRhVHlwZXMpKHN0LCBzY2hlbWFDb2RlLCBpdC5vcHRzLnN0cmljdE51bWJlcnMsIGRhdGFUeXBlXzIuRGF0YVR5cGUuV3JvbmcpfWA7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gY29kZWdlbl8xLm5pbDsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gaW52YWxpZCREYXRhU2NoZW1hKCkgewogICAgICAgICAgaWYgKGRlZi52YWxpZGF0ZVNjaGVtYSkgewogICAgICAgICAgICBjb25zdCB2YWxpZGF0ZVNjaGVtYVJlZiA9IGdlbi5zY29wZVZhbHVlKCJ2YWxpZGF0ZSRkYXRhIiwgeyByZWY6IGRlZi52YWxpZGF0ZVNjaGVtYSB9KTsKICAgICAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylgISR7dmFsaWRhdGVTY2hlbWFSZWZ9KCR7c2NoZW1hQ29kZX0pYDsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBjb2RlZ2VuXzEubmlsOwogICAgICAgIH0KICAgICAgfQogICAgICBzdWJzY2hlbWEoYXBwbCwgdmFsaWQpIHsKICAgICAgICBjb25zdCBzdWJzY2hlbWEgPSAoMCwgc3Vic2NoZW1hXzEuZ2V0U3Vic2NoZW1hKSh0aGlzLml0LCBhcHBsKTsKICAgICAgICAoMCwgc3Vic2NoZW1hXzEuZXh0ZW5kU3Vic2NoZW1hRGF0YSkoc3Vic2NoZW1hLCB0aGlzLml0LCBhcHBsKTsKICAgICAgICAoMCwgc3Vic2NoZW1hXzEuZXh0ZW5kU3Vic2NoZW1hTW9kZSkoc3Vic2NoZW1hLCBhcHBsKTsKICAgICAgICBjb25zdCBuZXh0Q29udGV4dCA9IHsgLi4udGhpcy5pdCwgLi4uc3Vic2NoZW1hLCBpdGVtczogdm9pZCAwLCBwcm9wczogdm9pZCAwIH07CiAgICAgICAgc3Vic2NoZW1hQ29kZShuZXh0Q29udGV4dCwgdmFsaWQpOwogICAgICAgIHJldHVybiBuZXh0Q29udGV4dDsKICAgICAgfQogICAgICBtZXJnZUV2YWx1YXRlZChzY2hlbWFDeHQsIHRvTmFtZSkgewogICAgICAgIGNvbnN0IHsgaXQsIGdlbiB9ID0gdGhpczsKICAgICAgICBpZiAoIWl0Lm9wdHMudW5ldmFsdWF0ZWQpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgaWYgKGl0LnByb3BzICE9PSB0cnVlICYmIHNjaGVtYUN4dC5wcm9wcyAhPT0gdm9pZCAwKSB7CiAgICAgICAgICBpdC5wcm9wcyA9IHV0aWxfMS5tZXJnZUV2YWx1YXRlZC5wcm9wcyhnZW4sIHNjaGVtYUN4dC5wcm9wcywgaXQucHJvcHMsIHRvTmFtZSk7CiAgICAgICAgfQogICAgICAgIGlmIChpdC5pdGVtcyAhPT0gdHJ1ZSAmJiBzY2hlbWFDeHQuaXRlbXMgIT09IHZvaWQgMCkgewogICAgICAgICAgaXQuaXRlbXMgPSB1dGlsXzEubWVyZ2VFdmFsdWF0ZWQuaXRlbXMoZ2VuLCBzY2hlbWFDeHQuaXRlbXMsIGl0Lml0ZW1zLCB0b05hbWUpOwogICAgICAgIH0KICAgICAgfQogICAgICBtZXJnZVZhbGlkRXZhbHVhdGVkKHNjaGVtYUN4dCwgdmFsaWQpIHsKICAgICAgICBjb25zdCB7IGl0LCBnZW4gfSA9IHRoaXM7CiAgICAgICAgaWYgKGl0Lm9wdHMudW5ldmFsdWF0ZWQgJiYgKGl0LnByb3BzICE9PSB0cnVlIHx8IGl0Lml0ZW1zICE9PSB0cnVlKSkgewogICAgICAgICAgZ2VuLmlmKHZhbGlkLCAoKSA9PiB0aGlzLm1lcmdlRXZhbHVhdGVkKHNjaGVtYUN4dCwgY29kZWdlbl8xLk5hbWUpKTsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLktleXdvcmRDeHQgPSBLZXl3b3JkQ3h0OwogICAgZnVuY3Rpb24ga2V5d29yZENvZGUoaXQsIGtleXdvcmQsIGRlZiwgcnVsZVR5cGUpIHsKICAgICAgY29uc3QgY3h0ID0gbmV3IEtleXdvcmRDeHQoaXQsIGRlZiwga2V5d29yZCk7CiAgICAgIGlmICgiY29kZSIgaW4gZGVmKSB7CiAgICAgICAgZGVmLmNvZGUoY3h0LCBydWxlVHlwZSk7CiAgICAgIH0gZWxzZSBpZiAoY3h0LiRkYXRhICYmIGRlZi52YWxpZGF0ZSkgewogICAgICAgICgwLCBrZXl3b3JkXzEuZnVuY0tleXdvcmRDb2RlKShjeHQsIGRlZik7CiAgICAgIH0gZWxzZSBpZiAoIm1hY3JvIiBpbiBkZWYpIHsKICAgICAgICAoMCwga2V5d29yZF8xLm1hY3JvS2V5d29yZENvZGUpKGN4dCwgZGVmKTsKICAgICAgfSBlbHNlIGlmIChkZWYuY29tcGlsZSB8fCBkZWYudmFsaWRhdGUpIHsKICAgICAgICAoMCwga2V5d29yZF8xLmZ1bmNLZXl3b3JkQ29kZSkoY3h0LCBkZWYpOwogICAgICB9CiAgICB9CiAgICB2YXIgSlNPTl9QT0lOVEVSID0gL15cLyg/Oltefl18fjB8fjEpKiQvOwogICAgdmFyIFJFTEFUSVZFX0pTT05fUE9JTlRFUiA9IC9eKFswLTldKykoI3xcLyg/Oltefl18fjB8fjEpKik/JC87CiAgICBmdW5jdGlvbiBnZXREYXRhKCRkYXRhLCB7IGRhdGFMZXZlbCwgZGF0YU5hbWVzLCBkYXRhUGF0aEFyciB9KSB7CiAgICAgIGxldCBqc29uUG9pbnRlcjsKICAgICAgbGV0IGRhdGE7CiAgICAgIGlmICgkZGF0YSA9PT0gIiIpCiAgICAgICAgcmV0dXJuIG5hbWVzXzEuZGVmYXVsdC5yb290RGF0YTsKICAgICAgaWYgKCRkYXRhWzBdID09PSAiLyIpIHsKICAgICAgICBpZiAoIUpTT05fUE9JTlRFUi50ZXN0KCRkYXRhKSkKICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBKU09OLXBvaW50ZXI6ICR7JGRhdGF9YCk7CiAgICAgICAganNvblBvaW50ZXIgPSAkZGF0YTsKICAgICAgICBkYXRhID0gbmFtZXNfMS5kZWZhdWx0LnJvb3REYXRhOwogICAgICB9IGVsc2UgewogICAgICAgIGNvbnN0IG1hdGNoZXMgPSBSRUxBVElWRV9KU09OX1BPSU5URVIuZXhlYygkZGF0YSk7CiAgICAgICAgaWYgKCFtYXRjaGVzKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIEpTT04tcG9pbnRlcjogJHskZGF0YX1gKTsKICAgICAgICBjb25zdCB1cCA9ICttYXRjaGVzWzFdOwogICAgICAgIGpzb25Qb2ludGVyID0gbWF0Y2hlc1syXTsKICAgICAgICBpZiAoanNvblBvaW50ZXIgPT09ICIjIikgewogICAgICAgICAgaWYgKHVwID49IGRhdGFMZXZlbCkKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGVycm9yTXNnKCJwcm9wZXJ0eS9pbmRleCIsIHVwKSk7CiAgICAgICAgICByZXR1cm4gZGF0YVBhdGhBcnJbZGF0YUxldmVsIC0gdXBdOwogICAgICAgIH0KICAgICAgICBpZiAodXAgPiBkYXRhTGV2ZWwpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoZXJyb3JNc2coImRhdGEiLCB1cCkpOwogICAgICAgIGRhdGEgPSBkYXRhTmFtZXNbZGF0YUxldmVsIC0gdXBdOwogICAgICAgIGlmICghanNvblBvaW50ZXIpCiAgICAgICAgICByZXR1cm4gZGF0YTsKICAgICAgfQogICAgICBsZXQgZXhwciA9IGRhdGE7CiAgICAgIGNvbnN0IHNlZ21lbnRzID0ganNvblBvaW50ZXIuc3BsaXQoIi8iKTsKICAgICAgZm9yIChjb25zdCBzZWdtZW50IG9mIHNlZ21lbnRzKSB7CiAgICAgICAgaWYgKHNlZ21lbnQpIHsKICAgICAgICAgIGRhdGEgPSAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0keygwLCBjb2RlZ2VuXzEuZ2V0UHJvcGVydHkpKCgwLCB1dGlsXzEudW5lc2NhcGVKc29uUG9pbnRlcikoc2VnbWVudCkpfWA7CiAgICAgICAgICBleHByID0gKDAsIGNvZGVnZW5fMS5fKWAke2V4cHJ9ICYmICR7ZGF0YX1gOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gZXhwcjsKICAgICAgZnVuY3Rpb24gZXJyb3JNc2cocG9pbnRlclR5cGUsIHVwKSB7CiAgICAgICAgcmV0dXJuIGBDYW5ub3QgYWNjZXNzICR7cG9pbnRlclR5cGV9ICR7dXB9IGxldmVscyB1cCwgY3VycmVudCBsZXZlbCBpcyAke2RhdGFMZXZlbH1gOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5nZXREYXRhID0gZ2V0RGF0YTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcnVudGltZS92YWxpZGF0aW9uX2Vycm9yLmpzCnZhciByZXF1aXJlX3ZhbGlkYXRpb25fZXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcnVudGltZS92YWxpZGF0aW9uX2Vycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgVmFsaWRhdGlvbkVycm9yID0gY2xhc3MgZXh0ZW5kcyBFcnJvciB7CiAgICAgIGNvbnN0cnVjdG9yKGVycm9ycykgewogICAgICAgIHN1cGVyKCJ2YWxpZGF0aW9uIGZhaWxlZCIpOwogICAgICAgIHRoaXMuZXJyb3JzID0gZXJyb3JzOwogICAgICAgIHRoaXMuYWp2ID0gdGhpcy52YWxpZGF0aW9uID0gdHJ1ZTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBWYWxpZGF0aW9uRXJyb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvcmVmX2Vycm9yLmpzCnZhciByZXF1aXJlX3JlZl9lcnJvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3JlZl9lcnJvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIHJlc29sdmVfMSA9IHJlcXVpcmVfcmVzb2x2ZSgpOwogICAgdmFyIE1pc3NpbmdSZWZFcnJvciA9IGNsYXNzIGV4dGVuZHMgRXJyb3IgewogICAgICBjb25zdHJ1Y3RvcihyZXNvbHZlciwgYmFzZUlkLCByZWYsIG1zZykgewogICAgICAgIHN1cGVyKG1zZyB8fCBgY2FuJ3QgcmVzb2x2ZSByZWZlcmVuY2UgJHtyZWZ9IGZyb20gaWQgJHtiYXNlSWR9YCk7CiAgICAgICAgdGhpcy5taXNzaW5nUmVmID0gKDAsIHJlc29sdmVfMS5yZXNvbHZlVXJsKShyZXNvbHZlciwgYmFzZUlkLCByZWYpOwogICAgICAgIHRoaXMubWlzc2luZ1NjaGVtYSA9ICgwLCByZXNvbHZlXzEubm9ybWFsaXplSWQpKCgwLCByZXNvbHZlXzEuZ2V0RnVsbFBhdGgpKHJlc29sdmVyLCB0aGlzLm1pc3NpbmdSZWYpKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBNaXNzaW5nUmVmRXJyb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvaW5kZXguanMKdmFyIHJlcXVpcmVfY29tcGlsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yZXNvbHZlU2NoZW1hID0gZXhwb3J0czIuZ2V0Q29tcGlsaW5nU2NoZW1hID0gZXhwb3J0czIucmVzb2x2ZVJlZiA9IGV4cG9ydHMyLmNvbXBpbGVTY2hlbWEgPSBleHBvcnRzMi5TY2hlbWFFbnYgPSB2b2lkIDA7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdmFsaWRhdGlvbl9lcnJvcl8xID0gcmVxdWlyZV92YWxpZGF0aW9uX2Vycm9yKCk7CiAgICB2YXIgbmFtZXNfMSA9IHJlcXVpcmVfbmFtZXMoKTsKICAgIHZhciByZXNvbHZlXzEgPSByZXF1aXJlX3Jlc29sdmUoKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciB2YWxpZGF0ZV8xID0gcmVxdWlyZV92YWxpZGF0ZSgpOwogICAgdmFyIFNjaGVtYUVudiA9IGNsYXNzIHsKICAgICAgY29uc3RydWN0b3IoZW52KSB7CiAgICAgICAgdmFyIF9hOwogICAgICAgIHRoaXMucmVmcyA9IHt9OwogICAgICAgIHRoaXMuZHluYW1pY0FuY2hvcnMgPSB7fTsKICAgICAgICBsZXQgc2NoZW1hOwogICAgICAgIGlmICh0eXBlb2YgZW52LnNjaGVtYSA9PSAib2JqZWN0IikKICAgICAgICAgIHNjaGVtYSA9IGVudi5zY2hlbWE7CiAgICAgICAgdGhpcy5zY2hlbWEgPSBlbnYuc2NoZW1hOwogICAgICAgIHRoaXMuc2NoZW1hSWQgPSBlbnYuc2NoZW1hSWQ7CiAgICAgICAgdGhpcy5yb290ID0gZW52LnJvb3QgfHwgdGhpczsKICAgICAgICB0aGlzLmJhc2VJZCA9IChfYSA9IGVudi5iYXNlSWQpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6ICgwLCByZXNvbHZlXzEubm9ybWFsaXplSWQpKHNjaGVtYSA9PT0gbnVsbCB8fCBzY2hlbWEgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNjaGVtYVtlbnYuc2NoZW1hSWQgfHwgIiRpZCJdKTsKICAgICAgICB0aGlzLnNjaGVtYVBhdGggPSBlbnYuc2NoZW1hUGF0aDsKICAgICAgICB0aGlzLmxvY2FsUmVmcyA9IGVudi5sb2NhbFJlZnM7CiAgICAgICAgdGhpcy5tZXRhID0gZW52Lm1ldGE7CiAgICAgICAgdGhpcy4kYXN5bmMgPSBzY2hlbWEgPT09IG51bGwgfHwgc2NoZW1hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzY2hlbWEuJGFzeW5jOwogICAgICAgIHRoaXMucmVmcyA9IHt9OwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuU2NoZW1hRW52ID0gU2NoZW1hRW52OwogICAgZnVuY3Rpb24gY29tcGlsZVNjaGVtYShzY2gpIHsKICAgICAgY29uc3QgX3NjaCA9IGdldENvbXBpbGluZ1NjaGVtYS5jYWxsKHRoaXMsIHNjaCk7CiAgICAgIGlmIChfc2NoKQogICAgICAgIHJldHVybiBfc2NoOwogICAgICBjb25zdCByb290SWQgPSAoMCwgcmVzb2x2ZV8xLmdldEZ1bGxQYXRoKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIHNjaC5yb290LmJhc2VJZCk7CiAgICAgIGNvbnN0IHsgZXM1LCBsaW5lcyB9ID0gdGhpcy5vcHRzLmNvZGU7CiAgICAgIGNvbnN0IHsgb3duUHJvcGVydGllcyB9ID0gdGhpcy5vcHRzOwogICAgICBjb25zdCBnZW4gPSBuZXcgY29kZWdlbl8xLkNvZGVHZW4odGhpcy5zY29wZSwgeyBlczUsIGxpbmVzLCBvd25Qcm9wZXJ0aWVzIH0pOwogICAgICBsZXQgX1ZhbGlkYXRpb25FcnJvcjsKICAgICAgaWYgKHNjaC4kYXN5bmMpIHsKICAgICAgICBfVmFsaWRhdGlvbkVycm9yID0gZ2VuLnNjb3BlVmFsdWUoIkVycm9yIiwgewogICAgICAgICAgcmVmOiB2YWxpZGF0aW9uX2Vycm9yXzEuZGVmYXVsdCwKICAgICAgICAgIGNvZGU6ICgwLCBjb2RlZ2VuXzEuXylgcmVxdWlyZSgiYWp2L2Rpc3QvcnVudGltZS92YWxpZGF0aW9uX2Vycm9yIikuZGVmYXVsdGAKICAgICAgICB9KTsKICAgICAgfQogICAgICBjb25zdCB2YWxpZGF0ZU5hbWUgPSBnZW4uc2NvcGVOYW1lKCJ2YWxpZGF0ZSIpOwogICAgICBzY2gudmFsaWRhdGVOYW1lID0gdmFsaWRhdGVOYW1lOwogICAgICBjb25zdCBzY2hlbWFDeHQgPSB7CiAgICAgICAgZ2VuLAogICAgICAgIGFsbEVycm9yczogdGhpcy5vcHRzLmFsbEVycm9ycywKICAgICAgICBkYXRhOiBuYW1lc18xLmRlZmF1bHQuZGF0YSwKICAgICAgICBwYXJlbnREYXRhOiBuYW1lc18xLmRlZmF1bHQucGFyZW50RGF0YSwKICAgICAgICBwYXJlbnREYXRhUHJvcGVydHk6IG5hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhUHJvcGVydHksCiAgICAgICAgZGF0YU5hbWVzOiBbbmFtZXNfMS5kZWZhdWx0LmRhdGFdLAogICAgICAgIGRhdGFQYXRoQXJyOiBbY29kZWdlbl8xLm5pbF0sCiAgICAgICAgLy8gVE9ETyBjYW4gaXRzIGxlbmd0aCBiZSB1c2VkIGFzIGRhdGFMZXZlbCBpZiBuaWwgaXMgcmVtb3ZlZD8KICAgICAgICBkYXRhTGV2ZWw6IDAsCiAgICAgICAgZGF0YVR5cGVzOiBbXSwKICAgICAgICBkZWZpbmVkUHJvcGVydGllczogLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKSwKICAgICAgICB0b3BTY2hlbWFSZWY6IGdlbi5zY29wZVZhbHVlKCJzY2hlbWEiLCB0aGlzLm9wdHMuY29kZS5zb3VyY2UgPT09IHRydWUgPyB7IHJlZjogc2NoLnNjaGVtYSwgY29kZTogKDAsIGNvZGVnZW5fMS5zdHJpbmdpZnkpKHNjaC5zY2hlbWEpIH0gOiB7IHJlZjogc2NoLnNjaGVtYSB9KSwKICAgICAgICB2YWxpZGF0ZU5hbWUsCiAgICAgICAgVmFsaWRhdGlvbkVycm9yOiBfVmFsaWRhdGlvbkVycm9yLAogICAgICAgIHNjaGVtYTogc2NoLnNjaGVtYSwKICAgICAgICBzY2hlbWFFbnY6IHNjaCwKICAgICAgICByb290SWQsCiAgICAgICAgYmFzZUlkOiBzY2guYmFzZUlkIHx8IHJvb3RJZCwKICAgICAgICBzY2hlbWFQYXRoOiBjb2RlZ2VuXzEubmlsLAogICAgICAgIGVyclNjaGVtYVBhdGg6IHNjaC5zY2hlbWFQYXRoIHx8ICh0aGlzLm9wdHMuanRkID8gIiIgOiAiIyIpLAogICAgICAgIGVycm9yUGF0aDogKDAsIGNvZGVnZW5fMS5fKWAiImAsCiAgICAgICAgb3B0czogdGhpcy5vcHRzLAogICAgICAgIHNlbGY6IHRoaXMKICAgICAgfTsKICAgICAgbGV0IHNvdXJjZUNvZGU7CiAgICAgIHRyeSB7CiAgICAgICAgdGhpcy5fY29tcGlsYXRpb25zLmFkZChzY2gpOwogICAgICAgICgwLCB2YWxpZGF0ZV8xLnZhbGlkYXRlRnVuY3Rpb25Db2RlKShzY2hlbWFDeHQpOwogICAgICAgIGdlbi5vcHRpbWl6ZSh0aGlzLm9wdHMuY29kZS5vcHRpbWl6ZSk7CiAgICAgICAgY29uc3QgdmFsaWRhdGVDb2RlID0gZ2VuLnRvU3RyaW5nKCk7CiAgICAgICAgc291cmNlQ29kZSA9IGAke2dlbi5zY29wZVJlZnMobmFtZXNfMS5kZWZhdWx0LnNjb3BlKX1yZXR1cm4gJHt2YWxpZGF0ZUNvZGV9YDsKICAgICAgICBpZiAodGhpcy5vcHRzLmNvZGUucHJvY2VzcykKICAgICAgICAgIHNvdXJjZUNvZGUgPSB0aGlzLm9wdHMuY29kZS5wcm9jZXNzKHNvdXJjZUNvZGUsIHNjaCk7CiAgICAgICAgY29uc3QgbWFrZVZhbGlkYXRlID0gbmV3IEZ1bmN0aW9uKGAke25hbWVzXzEuZGVmYXVsdC5zZWxmfWAsIGAke25hbWVzXzEuZGVmYXVsdC5zY29wZX1gLCBzb3VyY2VDb2RlKTsKICAgICAgICBjb25zdCB2YWxpZGF0ZSA9IG1ha2VWYWxpZGF0ZSh0aGlzLCB0aGlzLnNjb3BlLmdldCgpKTsKICAgICAgICB0aGlzLnNjb3BlLnZhbHVlKHZhbGlkYXRlTmFtZSwgeyByZWY6IHZhbGlkYXRlIH0pOwogICAgICAgIHZhbGlkYXRlLmVycm9ycyA9IG51bGw7CiAgICAgICAgdmFsaWRhdGUuc2NoZW1hID0gc2NoLnNjaGVtYTsKICAgICAgICB2YWxpZGF0ZS5zY2hlbWFFbnYgPSBzY2g7CiAgICAgICAgaWYgKHNjaC4kYXN5bmMpCiAgICAgICAgICB2YWxpZGF0ZS4kYXN5bmMgPSB0cnVlOwogICAgICAgIGlmICh0aGlzLm9wdHMuY29kZS5zb3VyY2UgPT09IHRydWUpIHsKICAgICAgICAgIHZhbGlkYXRlLnNvdXJjZSA9IHsgdmFsaWRhdGVOYW1lLCB2YWxpZGF0ZUNvZGUsIHNjb3BlVmFsdWVzOiBnZW4uX3ZhbHVlcyB9OwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5vcHRzLnVuZXZhbHVhdGVkKSB7CiAgICAgICAgICBjb25zdCB7IHByb3BzLCBpdGVtcyB9ID0gc2NoZW1hQ3h0OwogICAgICAgICAgdmFsaWRhdGUuZXZhbHVhdGVkID0gewogICAgICAgICAgICBwcm9wczogcHJvcHMgaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZSA/IHZvaWQgMCA6IHByb3BzLAogICAgICAgICAgICBpdGVtczogaXRlbXMgaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZSA/IHZvaWQgMCA6IGl0ZW1zLAogICAgICAgICAgICBkeW5hbWljUHJvcHM6IHByb3BzIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUsCiAgICAgICAgICAgIGR5bmFtaWNJdGVtczogaXRlbXMgaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZQogICAgICAgICAgfTsKICAgICAgICAgIGlmICh2YWxpZGF0ZS5zb3VyY2UpCiAgICAgICAgICAgIHZhbGlkYXRlLnNvdXJjZS5ldmFsdWF0ZWQgPSAoMCwgY29kZWdlbl8xLnN0cmluZ2lmeSkodmFsaWRhdGUuZXZhbHVhdGVkKTsKICAgICAgICB9CiAgICAgICAgc2NoLnZhbGlkYXRlID0gdmFsaWRhdGU7CiAgICAgICAgcmV0dXJuIHNjaDsKICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgIGRlbGV0ZSBzY2gudmFsaWRhdGU7CiAgICAgICAgZGVsZXRlIHNjaC52YWxpZGF0ZU5hbWU7CiAgICAgICAgaWYgKHNvdXJjZUNvZGUpCiAgICAgICAgICB0aGlzLmxvZ2dlci5lcnJvcigiRXJyb3IgY29tcGlsaW5nIHNjaGVtYSwgZnVuY3Rpb24gY29kZToiLCBzb3VyY2VDb2RlKTsKICAgICAgICB0aHJvdyBlOwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRoaXMuX2NvbXBpbGF0aW9ucy5kZWxldGUoc2NoKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuY29tcGlsZVNjaGVtYSA9IGNvbXBpbGVTY2hlbWE7CiAgICBmdW5jdGlvbiByZXNvbHZlUmVmKHJvb3QsIGJhc2VJZCwgcmVmKSB7CiAgICAgIHZhciBfYTsKICAgICAgcmVmID0gKDAsIHJlc29sdmVfMS5yZXNvbHZlVXJsKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIGJhc2VJZCwgcmVmKTsKICAgICAgY29uc3Qgc2NoT3JGdW5jID0gcm9vdC5yZWZzW3JlZl07CiAgICAgIGlmIChzY2hPckZ1bmMpCiAgICAgICAgcmV0dXJuIHNjaE9yRnVuYzsKICAgICAgbGV0IF9zY2ggPSByZXNvbHZlLmNhbGwodGhpcywgcm9vdCwgcmVmKTsKICAgICAgaWYgKF9zY2ggPT09IHZvaWQgMCkgewogICAgICAgIGNvbnN0IHNjaGVtYSA9IChfYSA9IHJvb3QubG9jYWxSZWZzKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2FbcmVmXTsKICAgICAgICBjb25zdCB7IHNjaGVtYUlkIH0gPSB0aGlzLm9wdHM7CiAgICAgICAgaWYgKHNjaGVtYSkKICAgICAgICAgIF9zY2ggPSBuZXcgU2NoZW1hRW52KHsgc2NoZW1hLCBzY2hlbWFJZCwgcm9vdCwgYmFzZUlkIH0pOwogICAgICB9CiAgICAgIGlmIChfc2NoID09PSB2b2lkIDApCiAgICAgICAgcmV0dXJuOwogICAgICByZXR1cm4gcm9vdC5yZWZzW3JlZl0gPSBpbmxpbmVPckNvbXBpbGUuY2FsbCh0aGlzLCBfc2NoKTsKICAgIH0KICAgIGV4cG9ydHMyLnJlc29sdmVSZWYgPSByZXNvbHZlUmVmOwogICAgZnVuY3Rpb24gaW5saW5lT3JDb21waWxlKHNjaCkgewogICAgICBpZiAoKDAsIHJlc29sdmVfMS5pbmxpbmVSZWYpKHNjaC5zY2hlbWEsIHRoaXMub3B0cy5pbmxpbmVSZWZzKSkKICAgICAgICByZXR1cm4gc2NoLnNjaGVtYTsKICAgICAgcmV0dXJuIHNjaC52YWxpZGF0ZSA/IHNjaCA6IGNvbXBpbGVTY2hlbWEuY2FsbCh0aGlzLCBzY2gpOwogICAgfQogICAgZnVuY3Rpb24gZ2V0Q29tcGlsaW5nU2NoZW1hKHNjaEVudikgewogICAgICBmb3IgKGNvbnN0IHNjaCBvZiB0aGlzLl9jb21waWxhdGlvbnMpIHsKICAgICAgICBpZiAoc2FtZVNjaGVtYUVudihzY2gsIHNjaEVudikpCiAgICAgICAgICByZXR1cm4gc2NoOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5nZXRDb21waWxpbmdTY2hlbWEgPSBnZXRDb21waWxpbmdTY2hlbWE7CiAgICBmdW5jdGlvbiBzYW1lU2NoZW1hRW52KHMxLCBzMikgewogICAgICByZXR1cm4gczEuc2NoZW1hID09PSBzMi5zY2hlbWEgJiYgczEucm9vdCA9PT0gczIucm9vdCAmJiBzMS5iYXNlSWQgPT09IHMyLmJhc2VJZDsKICAgIH0KICAgIGZ1bmN0aW9uIHJlc29sdmUocm9vdCwgcmVmKSB7CiAgICAgIGxldCBzY2g7CiAgICAgIHdoaWxlICh0eXBlb2YgKHNjaCA9IHRoaXMucmVmc1tyZWZdKSA9PSAic3RyaW5nIikKICAgICAgICByZWYgPSBzY2g7CiAgICAgIHJldHVybiBzY2ggfHwgdGhpcy5zY2hlbWFzW3JlZl0gfHwgcmVzb2x2ZVNjaGVtYS5jYWxsKHRoaXMsIHJvb3QsIHJlZik7CiAgICB9CiAgICBmdW5jdGlvbiByZXNvbHZlU2NoZW1hKHJvb3QsIHJlZikgewogICAgICBjb25zdCBwID0gdGhpcy5vcHRzLnVyaVJlc29sdmVyLnBhcnNlKHJlZik7CiAgICAgIGNvbnN0IHJlZlBhdGggPSAoMCwgcmVzb2x2ZV8xLl9nZXRGdWxsUGF0aCkodGhpcy5vcHRzLnVyaVJlc29sdmVyLCBwKTsKICAgICAgbGV0IGJhc2VJZCA9ICgwLCByZXNvbHZlXzEuZ2V0RnVsbFBhdGgpKHRoaXMub3B0cy51cmlSZXNvbHZlciwgcm9vdC5iYXNlSWQsIHZvaWQgMCk7CiAgICAgIGlmIChPYmplY3Qua2V5cyhyb290LnNjaGVtYSkubGVuZ3RoID4gMCAmJiByZWZQYXRoID09PSBiYXNlSWQpIHsKICAgICAgICByZXR1cm4gZ2V0SnNvblBvaW50ZXIuY2FsbCh0aGlzLCBwLCByb290KTsKICAgICAgfQogICAgICBjb25zdCBpZCA9ICgwLCByZXNvbHZlXzEubm9ybWFsaXplSWQpKHJlZlBhdGgpOwogICAgICBjb25zdCBzY2hPclJlZiA9IHRoaXMucmVmc1tpZF0gfHwgdGhpcy5zY2hlbWFzW2lkXTsKICAgICAgaWYgKHR5cGVvZiBzY2hPclJlZiA9PSAic3RyaW5nIikgewogICAgICAgIGNvbnN0IHNjaCA9IHJlc29sdmVTY2hlbWEuY2FsbCh0aGlzLCByb290LCBzY2hPclJlZik7CiAgICAgICAgaWYgKHR5cGVvZiAoc2NoID09PSBudWxsIHx8IHNjaCA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2NoLnNjaGVtYSkgIT09ICJvYmplY3QiKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIHJldHVybiBnZXRKc29uUG9pbnRlci5jYWxsKHRoaXMsIHAsIHNjaCk7CiAgICAgIH0KICAgICAgaWYgKHR5cGVvZiAoc2NoT3JSZWYgPT09IG51bGwgfHwgc2NoT3JSZWYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNjaE9yUmVmLnNjaGVtYSkgIT09ICJvYmplY3QiKQogICAgICAgIHJldHVybjsKICAgICAgaWYgKCFzY2hPclJlZi52YWxpZGF0ZSkKICAgICAgICBjb21waWxlU2NoZW1hLmNhbGwodGhpcywgc2NoT3JSZWYpOwogICAgICBpZiAoaWQgPT09ICgwLCByZXNvbHZlXzEubm9ybWFsaXplSWQpKHJlZikpIHsKICAgICAgICBjb25zdCB7IHNjaGVtYSB9ID0gc2NoT3JSZWY7CiAgICAgICAgY29uc3QgeyBzY2hlbWFJZCB9ID0gdGhpcy5vcHRzOwogICAgICAgIGNvbnN0IHNjaElkID0gc2NoZW1hW3NjaGVtYUlkXTsKICAgICAgICBpZiAoc2NoSWQpCiAgICAgICAgICBiYXNlSWQgPSAoMCwgcmVzb2x2ZV8xLnJlc29sdmVVcmwpKHRoaXMub3B0cy51cmlSZXNvbHZlciwgYmFzZUlkLCBzY2hJZCk7CiAgICAgICAgcmV0dXJuIG5ldyBTY2hlbWFFbnYoeyBzY2hlbWEsIHNjaGVtYUlkLCByb290LCBiYXNlSWQgfSk7CiAgICAgIH0KICAgICAgcmV0dXJuIGdldEpzb25Qb2ludGVyLmNhbGwodGhpcywgcCwgc2NoT3JSZWYpOwogICAgfQogICAgZXhwb3J0czIucmVzb2x2ZVNjaGVtYSA9IHJlc29sdmVTY2hlbWE7CiAgICB2YXIgUFJFVkVOVF9TQ09QRV9DSEFOR0UgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbCiAgICAgICJwcm9wZXJ0aWVzIiwKICAgICAgInBhdHRlcm5Qcm9wZXJ0aWVzIiwKICAgICAgImVudW0iLAogICAgICAiZGVwZW5kZW5jaWVzIiwKICAgICAgImRlZmluaXRpb25zIgogICAgXSk7CiAgICBmdW5jdGlvbiBnZXRKc29uUG9pbnRlcihwYXJzZWRSZWYsIHsgYmFzZUlkLCBzY2hlbWEsIHJvb3QgfSkgewogICAgICB2YXIgX2E7CiAgICAgIGlmICgoKF9hID0gcGFyc2VkUmVmLmZyYWdtZW50KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2FbMF0pICE9PSAiLyIpCiAgICAgICAgcmV0dXJuOwogICAgICBmb3IgKGNvbnN0IHBhcnQgb2YgcGFyc2VkUmVmLmZyYWdtZW50LnNsaWNlKDEpLnNwbGl0KCIvIikpIHsKICAgICAgICBpZiAodHlwZW9mIHNjaGVtYSA9PT0gImJvb2xlYW4iKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGNvbnN0IHBhcnRTY2hlbWEgPSBzY2hlbWFbKDAsIHV0aWxfMS51bmVzY2FwZUZyYWdtZW50KShwYXJ0KV07CiAgICAgICAgaWYgKHBhcnRTY2hlbWEgPT09IHZvaWQgMCkKICAgICAgICAgIHJldHVybjsKICAgICAgICBzY2hlbWEgPSBwYXJ0U2NoZW1hOwogICAgICAgIGNvbnN0IHNjaElkID0gdHlwZW9mIHNjaGVtYSA9PT0gIm9iamVjdCIgJiYgc2NoZW1hW3RoaXMub3B0cy5zY2hlbWFJZF07CiAgICAgICAgaWYgKCFQUkVWRU5UX1NDT1BFX0NIQU5HRS5oYXMocGFydCkgJiYgc2NoSWQpIHsKICAgICAgICAgIGJhc2VJZCA9ICgwLCByZXNvbHZlXzEucmVzb2x2ZVVybCkodGhpcy5vcHRzLnVyaVJlc29sdmVyLCBiYXNlSWQsIHNjaElkKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgbGV0IGVudjsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEgIT0gImJvb2xlYW4iICYmIHNjaGVtYS4kcmVmICYmICEoMCwgdXRpbF8xLnNjaGVtYUhhc1J1bGVzQnV0UmVmKShzY2hlbWEsIHRoaXMuUlVMRVMpKSB7CiAgICAgICAgY29uc3QgJHJlZiA9ICgwLCByZXNvbHZlXzEucmVzb2x2ZVVybCkodGhpcy5vcHRzLnVyaVJlc29sdmVyLCBiYXNlSWQsIHNjaGVtYS4kcmVmKTsKICAgICAgICBlbnYgPSByZXNvbHZlU2NoZW1hLmNhbGwodGhpcywgcm9vdCwgJHJlZik7CiAgICAgIH0KICAgICAgY29uc3QgeyBzY2hlbWFJZCB9ID0gdGhpcy5vcHRzOwogICAgICBlbnYgPSBlbnYgfHwgbmV3IFNjaGVtYUVudih7IHNjaGVtYSwgc2NoZW1hSWQsIHJvb3QsIGJhc2VJZCB9KTsKICAgICAgaWYgKGVudi5zY2hlbWEgIT09IGVudi5yb290LnNjaGVtYSkKICAgICAgICByZXR1cm4gZW52OwogICAgICByZXR1cm4gdm9pZCAwOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9yZWZzL2RhdGEuanNvbgp2YXIgcmVxdWlyZV9kYXRhID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3JlZnMvZGF0YS5qc29uIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgbW9kdWxlMi5leHBvcnRzID0gewogICAgICAkaWQ6ICJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vYWp2LXZhbGlkYXRvci9hanYvbWFzdGVyL2xpYi9yZWZzL2RhdGEuanNvbiMiLAogICAgICBkZXNjcmlwdGlvbjogIk1ldGEtc2NoZW1hIGZvciAkZGF0YSByZWZlcmVuY2UgKEpTT04gQW55U2NoZW1hIGV4dGVuc2lvbiBwcm9wb3NhbCkiLAogICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgcmVxdWlyZWQ6IFsiJGRhdGEiXSwKICAgICAgcHJvcGVydGllczogewogICAgICAgICRkYXRhOiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgICAgIGFueU9mOiBbeyBmb3JtYXQ6ICJyZWxhdGl2ZS1qc29uLXBvaW50ZXIiIH0sIHsgZm9ybWF0OiAianNvbi1wb2ludGVyIiB9XQogICAgICAgIH0KICAgICAgfSwKICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IGZhbHNlCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9mYXN0LXVyaS1ucG0tMy4wLjMtMDg3NDA3MjYyNS05MjQ4N2M3NTg0LnppcC9ub2RlX21vZHVsZXMvZmFzdC11cmkvbGliL3Njb3BlZENoYXJzLmpzCnZhciByZXF1aXJlX3Njb3BlZENoYXJzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL2Zhc3QtdXJpLW5wbS0zLjAuMy0wODc0MDcyNjI1LTkyNDg3Yzc1ODQuemlwL25vZGVfbW9kdWxlcy9mYXN0LXVyaS9saWIvc2NvcGVkQ2hhcnMuanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgSEVYID0gewogICAgICAwOiAwLAogICAgICAxOiAxLAogICAgICAyOiAyLAogICAgICAzOiAzLAogICAgICA0OiA0LAogICAgICA1OiA1LAogICAgICA2OiA2LAogICAgICA3OiA3LAogICAgICA4OiA4LAogICAgICA5OiA5LAogICAgICBhOiAxMCwKICAgICAgQTogMTAsCiAgICAgIGI6IDExLAogICAgICBCOiAxMSwKICAgICAgYzogMTIsCiAgICAgIEM6IDEyLAogICAgICBkOiAxMywKICAgICAgRDogMTMsCiAgICAgIGU6IDE0LAogICAgICBFOiAxNCwKICAgICAgZjogMTUsCiAgICAgIEY6IDE1CiAgICB9OwogICAgbW9kdWxlMi5leHBvcnRzID0gewogICAgICBIRVgKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Zhc3QtdXJpLW5wbS0zLjAuMy0wODc0MDcyNjI1LTkyNDg3Yzc1ODQuemlwL25vZGVfbW9kdWxlcy9mYXN0LXVyaS9saWIvdXRpbHMuanMKdmFyIHJlcXVpcmVfdXRpbHMyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL2Zhc3QtdXJpLW5wbS0zLjAuMy0wODc0MDcyNjI1LTkyNDg3Yzc1ODQuemlwL25vZGVfbW9kdWxlcy9mYXN0LXVyaS9saWIvdXRpbHMuanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgeyBIRVggfSA9IHJlcXVpcmVfc2NvcGVkQ2hhcnMoKTsKICAgIGZ1bmN0aW9uIG5vcm1hbGl6ZUlQdjQoaG9zdCkgewogICAgICBpZiAoZmluZFRva2VuKGhvc3QsICIuIikgPCAzKSB7CiAgICAgICAgcmV0dXJuIHsgaG9zdCwgaXNJUFY0OiBmYWxzZSB9OwogICAgICB9CiAgICAgIGNvbnN0IG1hdGNoZXMgPSBob3N0Lm1hdGNoKC9eKD86KD86MjVbMC01XXwyWzAtNF1bMC05XXwxWzAtOV1bMC05XXxbMS05XVswLTldfFswLTldKVwuKXszfSg/OjI1WzAtNV18MlswLTRdWzAtOV18MVswLTldWzAtOV18WzEtOV1bMC05XXxbMC05XSkkL3UpIHx8IFtdOwogICAgICBjb25zdCBbYWRkcmVzc10gPSBtYXRjaGVzOwogICAgICBpZiAoYWRkcmVzcykgewogICAgICAgIHJldHVybiB7IGhvc3Q6IHN0cmlwTGVhZGluZ1plcm9zKGFkZHJlc3MsICIuIiksIGlzSVBWNDogdHJ1ZSB9OwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiB7IGhvc3QsIGlzSVBWNDogZmFsc2UgfTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gc3RyaW5nQXJyYXlUb0hleFN0cmlwcGVkKGlucHV0LCBrZWVwWmVybyA9IGZhbHNlKSB7CiAgICAgIGxldCBhY2MgPSAiIjsKICAgICAgbGV0IHN0cmlwID0gdHJ1ZTsKICAgICAgZm9yIChjb25zdCBjIG9mIGlucHV0KSB7CiAgICAgICAgaWYgKEhFWFtjXSA9PT0gdm9pZCAwKSByZXR1cm4gdm9pZCAwOwogICAgICAgIGlmIChjICE9PSAiMCIgJiYgc3RyaXAgPT09IHRydWUpIHN0cmlwID0gZmFsc2U7CiAgICAgICAgaWYgKCFzdHJpcCkgYWNjICs9IGM7CiAgICAgIH0KICAgICAgaWYgKGtlZXBaZXJvICYmIGFjYy5sZW5ndGggPT09IDApIGFjYyA9ICIwIjsKICAgICAgcmV0dXJuIGFjYzsKICAgIH0KICAgIGZ1bmN0aW9uIGdldElQVjYoaW5wdXQpIHsKICAgICAgbGV0IHRva2VuQ291bnQgPSAwOwogICAgICBjb25zdCBvdXRwdXQgPSB7IGVycm9yOiBmYWxzZSwgYWRkcmVzczogIiIsIHpvbmU6ICIiIH07CiAgICAgIGNvbnN0IGFkZHJlc3MgPSBbXTsKICAgICAgY29uc3QgYnVmZmVyID0gW107CiAgICAgIGxldCBpc1pvbmUgPSBmYWxzZTsKICAgICAgbGV0IGVuZGlwdjZFbmNvdW50ZXJlZCA9IGZhbHNlOwogICAgICBsZXQgZW5kSXB2NiA9IGZhbHNlOwogICAgICBmdW5jdGlvbiBjb25zdW1lKCkgewogICAgICAgIGlmIChidWZmZXIubGVuZ3RoKSB7CiAgICAgICAgICBpZiAoaXNab25lID09PSBmYWxzZSkgewogICAgICAgICAgICBjb25zdCBoZXggPSBzdHJpbmdBcnJheVRvSGV4U3RyaXBwZWQoYnVmZmVyKTsKICAgICAgICAgICAgaWYgKGhleCAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgYWRkcmVzcy5wdXNoKGhleCk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgb3V0cHV0LmVycm9yID0gdHJ1ZTsKICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGJ1ZmZlci5sZW5ndGggPSAwOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGlucHV0Lmxlbmd0aDsgaSsrKSB7CiAgICAgICAgY29uc3QgY3Vyc29yID0gaW5wdXRbaV07CiAgICAgICAgaWYgKGN1cnNvciA9PT0gIlsiIHx8IGN1cnNvciA9PT0gIl0iKSB7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKGN1cnNvciA9PT0gIjoiKSB7CiAgICAgICAgICBpZiAoZW5kaXB2NkVuY291bnRlcmVkID09PSB0cnVlKSB7CiAgICAgICAgICAgIGVuZElwdjYgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCFjb25zdW1lKCkpIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICB0b2tlbkNvdW50Kys7CiAgICAgICAgICBhZGRyZXNzLnB1c2goIjoiKTsKICAgICAgICAgIGlmICh0b2tlbkNvdW50ID4gNykgewogICAgICAgICAgICBvdXRwdXQuZXJyb3IgPSB0cnVlOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChpIC0gMSA+PSAwICYmIGlucHV0W2kgLSAxXSA9PT0gIjoiKSB7CiAgICAgICAgICAgIGVuZGlwdjZFbmNvdW50ZXJlZCA9IHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9IGVsc2UgaWYgKGN1cnNvciA9PT0gIiUiKSB7CiAgICAgICAgICBpZiAoIWNvbnN1bWUoKSkgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICAgIGlzWm9uZSA9IHRydWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGJ1ZmZlci5wdXNoKGN1cnNvcik7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKGJ1ZmZlci5sZW5ndGgpIHsKICAgICAgICBpZiAoaXNab25lKSB7CiAgICAgICAgICBvdXRwdXQuem9uZSA9IGJ1ZmZlci5qb2luKCIiKTsKICAgICAgICB9IGVsc2UgaWYgKGVuZElwdjYpIHsKICAgICAgICAgIGFkZHJlc3MucHVzaChidWZmZXIuam9pbigiIikpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBhZGRyZXNzLnB1c2goc3RyaW5nQXJyYXlUb0hleFN0cmlwcGVkKGJ1ZmZlcikpOwogICAgICAgIH0KICAgICAgfQogICAgICBvdXRwdXQuYWRkcmVzcyA9IGFkZHJlc3Muam9pbigiIik7CiAgICAgIHJldHVybiBvdXRwdXQ7CiAgICB9CiAgICBmdW5jdGlvbiBub3JtYWxpemVJUHY2KGhvc3QsIG9wdHMgPSB7fSkgewogICAgICBpZiAoZmluZFRva2VuKGhvc3QsICI6IikgPCAyKSB7CiAgICAgICAgcmV0dXJuIHsgaG9zdCwgaXNJUFY2OiBmYWxzZSB9OwogICAgICB9CiAgICAgIGNvbnN0IGlwdjYgPSBnZXRJUFY2KGhvc3QpOwogICAgICBpZiAoIWlwdjYuZXJyb3IpIHsKICAgICAgICBsZXQgbmV3SG9zdCA9IGlwdjYuYWRkcmVzczsKICAgICAgICBsZXQgZXNjYXBlZEhvc3QgPSBpcHY2LmFkZHJlc3M7CiAgICAgICAgaWYgKGlwdjYuem9uZSkgewogICAgICAgICAgbmV3SG9zdCArPSAiJSIgKyBpcHY2LnpvbmU7CiAgICAgICAgICBlc2NhcGVkSG9zdCArPSAiJTI1IiArIGlwdjYuem9uZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHsgaG9zdDogbmV3SG9zdCwgZXNjYXBlZEhvc3QsIGlzSVBWNjogdHJ1ZSB9OwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiB7IGhvc3QsIGlzSVBWNjogZmFsc2UgfTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gc3RyaXBMZWFkaW5nWmVyb3Moc3RyLCB0b2tlbikgewogICAgICBsZXQgb3V0ID0gIiI7CiAgICAgIGxldCBza2lwID0gdHJ1ZTsKICAgICAgY29uc3QgbCA9IHN0ci5sZW5ndGg7CiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbDsgaSsrKSB7CiAgICAgICAgY29uc3QgYyA9IHN0cltpXTsKICAgICAgICBpZiAoYyA9PT0gIjAiICYmIHNraXApIHsKICAgICAgICAgIGlmIChpICsgMSA8PSBsICYmIHN0cltpICsgMV0gPT09IHRva2VuIHx8IGkgKyAxID09PSBsKSB7CiAgICAgICAgICAgIG91dCArPSBjOwogICAgICAgICAgICBza2lwID0gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGlmIChjID09PSB0b2tlbikgewogICAgICAgICAgICBza2lwID0gdHJ1ZTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHNraXAgPSBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICAgIG91dCArPSBjOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gb3V0OwogICAgfQogICAgZnVuY3Rpb24gZmluZFRva2VuKHN0ciwgdG9rZW4pIHsKICAgICAgbGV0IGluZCA9IDA7CiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc3RyLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgaWYgKHN0cltpXSA9PT0gdG9rZW4pIGluZCsrOwogICAgICB9CiAgICAgIHJldHVybiBpbmQ7CiAgICB9CiAgICB2YXIgUkRTMSA9IC9eXC5cLj9cLy91OwogICAgdmFyIFJEUzIgPSAvXlwvXC4oPzpcL3wkKS91OwogICAgdmFyIFJEUzMgPSAvXlwvXC5cLig/OlwvfCQpL3U7CiAgICB2YXIgUkRTNSA9IC9eXC8/KD86LnxcbikqPyg/PVwvfCQpL3U7CiAgICBmdW5jdGlvbiByZW1vdmVEb3RTZWdtZW50cyhpbnB1dCkgewogICAgICBjb25zdCBvdXRwdXQgPSBbXTsKICAgICAgd2hpbGUgKGlucHV0Lmxlbmd0aCkgewogICAgICAgIGlmIChpbnB1dC5tYXRjaChSRFMxKSkgewogICAgICAgICAgaW5wdXQgPSBpbnB1dC5yZXBsYWNlKFJEUzEsICIiKTsKICAgICAgICB9IGVsc2UgaWYgKGlucHV0Lm1hdGNoKFJEUzIpKSB7CiAgICAgICAgICBpbnB1dCA9IGlucHV0LnJlcGxhY2UoUkRTMiwgIi8iKTsKICAgICAgICB9IGVsc2UgaWYgKGlucHV0Lm1hdGNoKFJEUzMpKSB7CiAgICAgICAgICBpbnB1dCA9IGlucHV0LnJlcGxhY2UoUkRTMywgIi8iKTsKICAgICAgICAgIG91dHB1dC5wb3AoKTsKICAgICAgICB9IGVsc2UgaWYgKGlucHV0ID09PSAiLiIgfHwgaW5wdXQgPT09ICIuLiIpIHsKICAgICAgICAgIGlucHV0ID0gIiI7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGNvbnN0IGltID0gaW5wdXQubWF0Y2goUkRTNSk7CiAgICAgICAgICBpZiAoaW0pIHsKICAgICAgICAgICAgY29uc3QgcyA9IGltWzBdOwogICAgICAgICAgICBpbnB1dCA9IGlucHV0LnNsaWNlKHMubGVuZ3RoKTsKICAgICAgICAgICAgb3V0cHV0LnB1c2gocyk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVuZXhwZWN0ZWQgZG90IHNlZ21lbnQgY29uZGl0aW9uIik7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBvdXRwdXQuam9pbigiIik7CiAgICB9CiAgICBmdW5jdGlvbiBub3JtYWxpemVDb21wb25lbnRFbmNvZGluZyhjb21wb25lbnRzLCBlc2MpIHsKICAgICAgY29uc3QgZnVuYyA9IGVzYyAhPT0gdHJ1ZSA/IGVzY2FwZSA6IHVuZXNjYXBlOwogICAgICBpZiAoY29tcG9uZW50cy5zY2hlbWUgIT09IHZvaWQgMCkgewogICAgICAgIGNvbXBvbmVudHMuc2NoZW1lID0gZnVuYyhjb21wb25lbnRzLnNjaGVtZSk7CiAgICAgIH0KICAgICAgaWYgKGNvbXBvbmVudHMudXNlcmluZm8gIT09IHZvaWQgMCkgewogICAgICAgIGNvbXBvbmVudHMudXNlcmluZm8gPSBmdW5jKGNvbXBvbmVudHMudXNlcmluZm8pOwogICAgICB9CiAgICAgIGlmIChjb21wb25lbnRzLmhvc3QgIT09IHZvaWQgMCkgewogICAgICAgIGNvbXBvbmVudHMuaG9zdCA9IGZ1bmMoY29tcG9uZW50cy5ob3N0KTsKICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5wYXRoICE9PSB2b2lkIDApIHsKICAgICAgICBjb21wb25lbnRzLnBhdGggPSBmdW5jKGNvbXBvbmVudHMucGF0aCk7CiAgICAgIH0KICAgICAgaWYgKGNvbXBvbmVudHMucXVlcnkgIT09IHZvaWQgMCkgewogICAgICAgIGNvbXBvbmVudHMucXVlcnkgPSBmdW5jKGNvbXBvbmVudHMucXVlcnkpOwogICAgICB9CiAgICAgIGlmIChjb21wb25lbnRzLmZyYWdtZW50ICE9PSB2b2lkIDApIHsKICAgICAgICBjb21wb25lbnRzLmZyYWdtZW50ID0gZnVuYyhjb21wb25lbnRzLmZyYWdtZW50KTsKICAgICAgfQogICAgICByZXR1cm4gY29tcG9uZW50czsKICAgIH0KICAgIGZ1bmN0aW9uIHJlY29tcG9zZUF1dGhvcml0eShjb21wb25lbnRzLCBvcHRpb25zKSB7CiAgICAgIGNvbnN0IHVyaVRva2VucyA9IFtdOwogICAgICBpZiAoY29tcG9uZW50cy51c2VyaW5mbyAhPT0gdm9pZCAwKSB7CiAgICAgICAgdXJpVG9rZW5zLnB1c2goY29tcG9uZW50cy51c2VyaW5mbyk7CiAgICAgICAgdXJpVG9rZW5zLnB1c2goIkAiKTsKICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5ob3N0ICE9PSB2b2lkIDApIHsKICAgICAgICBsZXQgaG9zdCA9IHVuZXNjYXBlKGNvbXBvbmVudHMuaG9zdCk7CiAgICAgICAgY29uc3QgaXBWNHJlcyA9IG5vcm1hbGl6ZUlQdjQoaG9zdCk7CiAgICAgICAgaWYgKGlwVjRyZXMuaXNJUFY0KSB7CiAgICAgICAgICBob3N0ID0gaXBWNHJlcy5ob3N0OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb25zdCBpcFY2cmVzID0gbm9ybWFsaXplSVB2NihpcFY0cmVzLmhvc3QsIHsgaXNJUFY0OiBmYWxzZSB9KTsKICAgICAgICAgIGlmIChpcFY2cmVzLmlzSVBWNiA9PT0gdHJ1ZSkgewogICAgICAgICAgICBob3N0ID0gYFske2lwVjZyZXMuZXNjYXBlZEhvc3R9XWA7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBob3N0ID0gY29tcG9uZW50cy5ob3N0OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICB1cmlUb2tlbnMucHVzaChob3N0KTsKICAgICAgfQogICAgICBpZiAodHlwZW9mIGNvbXBvbmVudHMucG9ydCA9PT0gIm51bWJlciIgfHwgdHlwZW9mIGNvbXBvbmVudHMucG9ydCA9PT0gInN0cmluZyIpIHsKICAgICAgICB1cmlUb2tlbnMucHVzaCgiOiIpOwogICAgICAgIHVyaVRva2Vucy5wdXNoKFN0cmluZyhjb21wb25lbnRzLnBvcnQpKTsKICAgICAgfQogICAgICByZXR1cm4gdXJpVG9rZW5zLmxlbmd0aCA/IHVyaVRva2Vucy5qb2luKCIiKSA6IHZvaWQgMDsKICAgIH0KICAgIG1vZHVsZTIuZXhwb3J0cyA9IHsKICAgICAgcmVjb21wb3NlQXV0aG9yaXR5LAogICAgICBub3JtYWxpemVDb21wb25lbnRFbmNvZGluZywKICAgICAgcmVtb3ZlRG90U2VnbWVudHMsCiAgICAgIG5vcm1hbGl6ZUlQdjQsCiAgICAgIG5vcm1hbGl6ZUlQdjYsCiAgICAgIHN0cmluZ0FycmF5VG9IZXhTdHJpcHBlZAogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvZmFzdC11cmktbnBtLTMuMC4zLTA4NzQwNzI2MjUtOTI0ODdjNzU4NC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtdXJpL2xpYi9zY2hlbWVzLmpzCnZhciByZXF1aXJlX3NjaGVtZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvZmFzdC11cmktbnBtLTMuMC4zLTA4NzQwNzI2MjUtOTI0ODdjNzU4NC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtdXJpL2xpYi9zY2hlbWVzLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIFVVSURfUkVHID0gL15bXGRhLWZdezh9XGItW1xkYS1mXXs0fVxiLVtcZGEtZl17NH1cYi1bXGRhLWZdezR9XGItW1xkYS1mXXsxMn0kL2l1OwogICAgdmFyIFVSTl9SRUcgPSAvKFtcZGEtel1bXGRcLWEtel17MCwzMX0pOigoPzpbXHchJCcoKSorLFwtLjo7PUBdfCVbXGRhLWZdezJ9KSspL2l1OwogICAgZnVuY3Rpb24gaXNTZWN1cmUod3NDb21wb25lbnRzKSB7CiAgICAgIHJldHVybiB0eXBlb2Ygd3NDb21wb25lbnRzLnNlY3VyZSA9PT0gImJvb2xlYW4iID8gd3NDb21wb25lbnRzLnNlY3VyZSA6IFN0cmluZyh3c0NvbXBvbmVudHMuc2NoZW1lKS50b0xvd2VyQ2FzZSgpID09PSAid3NzIjsKICAgIH0KICAgIGZ1bmN0aW9uIGh0dHBQYXJzZShjb21wb25lbnRzKSB7CiAgICAgIGlmICghY29tcG9uZW50cy5ob3N0KSB7CiAgICAgICAgY29tcG9uZW50cy5lcnJvciA9IGNvbXBvbmVudHMuZXJyb3IgfHwgIkhUVFAgVVJJcyBtdXN0IGhhdmUgYSBob3N0LiI7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiBodHRwU2VyaWFsaXplKGNvbXBvbmVudHMpIHsKICAgICAgY29uc3Qgc2VjdXJlID0gU3RyaW5nKGNvbXBvbmVudHMuc2NoZW1lKS50b0xvd2VyQ2FzZSgpID09PSAiaHR0cHMiOwogICAgICBpZiAoY29tcG9uZW50cy5wb3J0ID09PSAoc2VjdXJlID8gNDQzIDogODApIHx8IGNvbXBvbmVudHMucG9ydCA9PT0gIiIpIHsKICAgICAgICBjb21wb25lbnRzLnBvcnQgPSB2b2lkIDA7CiAgICAgIH0KICAgICAgaWYgKCFjb21wb25lbnRzLnBhdGgpIHsKICAgICAgICBjb21wb25lbnRzLnBhdGggPSAiLyI7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiB3c1BhcnNlKHdzQ29tcG9uZW50cykgewogICAgICB3c0NvbXBvbmVudHMuc2VjdXJlID0gaXNTZWN1cmUod3NDb21wb25lbnRzKTsKICAgICAgd3NDb21wb25lbnRzLnJlc291cmNlTmFtZSA9ICh3c0NvbXBvbmVudHMucGF0aCB8fCAiLyIpICsgKHdzQ29tcG9uZW50cy5xdWVyeSA/ICI/IiArIHdzQ29tcG9uZW50cy5xdWVyeSA6ICIiKTsKICAgICAgd3NDb21wb25lbnRzLnBhdGggPSB2b2lkIDA7CiAgICAgIHdzQ29tcG9uZW50cy5xdWVyeSA9IHZvaWQgMDsKICAgICAgcmV0dXJuIHdzQ29tcG9uZW50czsKICAgIH0KICAgIGZ1bmN0aW9uIHdzU2VyaWFsaXplKHdzQ29tcG9uZW50cykgewogICAgICBpZiAod3NDb21wb25lbnRzLnBvcnQgPT09IChpc1NlY3VyZSh3c0NvbXBvbmVudHMpID8gNDQzIDogODApIHx8IHdzQ29tcG9uZW50cy5wb3J0ID09PSAiIikgewogICAgICAgIHdzQ29tcG9uZW50cy5wb3J0ID0gdm9pZCAwOwogICAgICB9CiAgICAgIGlmICh0eXBlb2Ygd3NDb21wb25lbnRzLnNlY3VyZSA9PT0gImJvb2xlYW4iKSB7CiAgICAgICAgd3NDb21wb25lbnRzLnNjaGVtZSA9IHdzQ29tcG9uZW50cy5zZWN1cmUgPyAid3NzIiA6ICJ3cyI7CiAgICAgICAgd3NDb21wb25lbnRzLnNlY3VyZSA9IHZvaWQgMDsKICAgICAgfQogICAgICBpZiAod3NDb21wb25lbnRzLnJlc291cmNlTmFtZSkgewogICAgICAgIGNvbnN0IFtwYXRoLCBxdWVyeV0gPSB3c0NvbXBvbmVudHMucmVzb3VyY2VOYW1lLnNwbGl0KCI/Iik7CiAgICAgICAgd3NDb21wb25lbnRzLnBhdGggPSBwYXRoICYmIHBhdGggIT09ICIvIiA/IHBhdGggOiB2b2lkIDA7CiAgICAgICAgd3NDb21wb25lbnRzLnF1ZXJ5ID0gcXVlcnk7CiAgICAgICAgd3NDb21wb25lbnRzLnJlc291cmNlTmFtZSA9IHZvaWQgMDsKICAgICAgfQogICAgICB3c0NvbXBvbmVudHMuZnJhZ21lbnQgPSB2b2lkIDA7CiAgICAgIHJldHVybiB3c0NvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiB1cm5QYXJzZSh1cm5Db21wb25lbnRzLCBvcHRpb25zKSB7CiAgICAgIGlmICghdXJuQ29tcG9uZW50cy5wYXRoKSB7CiAgICAgICAgdXJuQ29tcG9uZW50cy5lcnJvciA9ICJVUk4gY2FuIG5vdCBiZSBwYXJzZWQiOwogICAgICAgIHJldHVybiB1cm5Db21wb25lbnRzOwogICAgICB9CiAgICAgIGNvbnN0IG1hdGNoZXMgPSB1cm5Db21wb25lbnRzLnBhdGgubWF0Y2goVVJOX1JFRyk7CiAgICAgIGlmIChtYXRjaGVzKSB7CiAgICAgICAgY29uc3Qgc2NoZW1lID0gb3B0aW9ucy5zY2hlbWUgfHwgdXJuQ29tcG9uZW50cy5zY2hlbWUgfHwgInVybiI7CiAgICAgICAgdXJuQ29tcG9uZW50cy5uaWQgPSBtYXRjaGVzWzFdLnRvTG93ZXJDYXNlKCk7CiAgICAgICAgdXJuQ29tcG9uZW50cy5uc3MgPSBtYXRjaGVzWzJdOwogICAgICAgIGNvbnN0IHVyblNjaGVtZSA9IGAke3NjaGVtZX06JHtvcHRpb25zLm5pZCB8fCB1cm5Db21wb25lbnRzLm5pZH1gOwogICAgICAgIGNvbnN0IHNjaGVtZUhhbmRsZXIgPSBTQ0hFTUVTW3VyblNjaGVtZV07CiAgICAgICAgdXJuQ29tcG9uZW50cy5wYXRoID0gdm9pZCAwOwogICAgICAgIGlmIChzY2hlbWVIYW5kbGVyKSB7CiAgICAgICAgICB1cm5Db21wb25lbnRzID0gc2NoZW1lSGFuZGxlci5wYXJzZSh1cm5Db21wb25lbnRzLCBvcHRpb25zKTsKICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdXJuQ29tcG9uZW50cy5lcnJvciA9IHVybkNvbXBvbmVudHMuZXJyb3IgfHwgIlVSTiBjYW4gbm90IGJlIHBhcnNlZC4iOwogICAgICB9CiAgICAgIHJldHVybiB1cm5Db21wb25lbnRzOwogICAgfQogICAgZnVuY3Rpb24gdXJuU2VyaWFsaXplKHVybkNvbXBvbmVudHMsIG9wdGlvbnMpIHsKICAgICAgY29uc3Qgc2NoZW1lID0gb3B0aW9ucy5zY2hlbWUgfHwgdXJuQ29tcG9uZW50cy5zY2hlbWUgfHwgInVybiI7CiAgICAgIGNvbnN0IG5pZCA9IHVybkNvbXBvbmVudHMubmlkLnRvTG93ZXJDYXNlKCk7CiAgICAgIGNvbnN0IHVyblNjaGVtZSA9IGAke3NjaGVtZX06JHtvcHRpb25zLm5pZCB8fCBuaWR9YDsKICAgICAgY29uc3Qgc2NoZW1lSGFuZGxlciA9IFNDSEVNRVNbdXJuU2NoZW1lXTsKICAgICAgaWYgKHNjaGVtZUhhbmRsZXIpIHsKICAgICAgICB1cm5Db21wb25lbnRzID0gc2NoZW1lSGFuZGxlci5zZXJpYWxpemUodXJuQ29tcG9uZW50cywgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgY29uc3QgdXJpQ29tcG9uZW50cyA9IHVybkNvbXBvbmVudHM7CiAgICAgIGNvbnN0IG5zcyA9IHVybkNvbXBvbmVudHMubnNzOwogICAgICB1cmlDb21wb25lbnRzLnBhdGggPSBgJHtuaWQgfHwgb3B0aW9ucy5uaWR9OiR7bnNzfWA7CiAgICAgIG9wdGlvbnMuc2tpcEVzY2FwZSA9IHRydWU7CiAgICAgIHJldHVybiB1cmlDb21wb25lbnRzOwogICAgfQogICAgZnVuY3Rpb24gdXJudXVpZFBhcnNlKHVybkNvbXBvbmVudHMsIG9wdGlvbnMpIHsKICAgICAgY29uc3QgdXVpZENvbXBvbmVudHMgPSB1cm5Db21wb25lbnRzOwogICAgICB1dWlkQ29tcG9uZW50cy51dWlkID0gdXVpZENvbXBvbmVudHMubnNzOwogICAgICB1dWlkQ29tcG9uZW50cy5uc3MgPSB2b2lkIDA7CiAgICAgIGlmICghb3B0aW9ucy50b2xlcmFudCAmJiAoIXV1aWRDb21wb25lbnRzLnV1aWQgfHwgIVVVSURfUkVHLnRlc3QodXVpZENvbXBvbmVudHMudXVpZCkpKSB7CiAgICAgICAgdXVpZENvbXBvbmVudHMuZXJyb3IgPSB1dWlkQ29tcG9uZW50cy5lcnJvciB8fCAiVVVJRCBpcyBub3QgdmFsaWQuIjsKICAgICAgfQogICAgICByZXR1cm4gdXVpZENvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiB1cm51dWlkU2VyaWFsaXplKHV1aWRDb21wb25lbnRzKSB7CiAgICAgIGNvbnN0IHVybkNvbXBvbmVudHMgPSB1dWlkQ29tcG9uZW50czsKICAgICAgdXJuQ29tcG9uZW50cy5uc3MgPSAodXVpZENvbXBvbmVudHMudXVpZCB8fCAiIikudG9Mb3dlckNhc2UoKTsKICAgICAgcmV0dXJuIHVybkNvbXBvbmVudHM7CiAgICB9CiAgICB2YXIgaHR0cCA9IHsKICAgICAgc2NoZW1lOiAiaHR0cCIsCiAgICAgIGRvbWFpbkhvc3Q6IHRydWUsCiAgICAgIHBhcnNlOiBodHRwUGFyc2UsCiAgICAgIHNlcmlhbGl6ZTogaHR0cFNlcmlhbGl6ZQogICAgfTsKICAgIHZhciBodHRwcyA9IHsKICAgICAgc2NoZW1lOiAiaHR0cHMiLAogICAgICBkb21haW5Ib3N0OiBodHRwLmRvbWFpbkhvc3QsCiAgICAgIHBhcnNlOiBodHRwUGFyc2UsCiAgICAgIHNlcmlhbGl6ZTogaHR0cFNlcmlhbGl6ZQogICAgfTsKICAgIHZhciB3cyA9IHsKICAgICAgc2NoZW1lOiAid3MiLAogICAgICBkb21haW5Ib3N0OiB0cnVlLAogICAgICBwYXJzZTogd3NQYXJzZSwKICAgICAgc2VyaWFsaXplOiB3c1NlcmlhbGl6ZQogICAgfTsKICAgIHZhciB3c3MgPSB7CiAgICAgIHNjaGVtZTogIndzcyIsCiAgICAgIGRvbWFpbkhvc3Q6IHdzLmRvbWFpbkhvc3QsCiAgICAgIHBhcnNlOiB3cy5wYXJzZSwKICAgICAgc2VyaWFsaXplOiB3cy5zZXJpYWxpemUKICAgIH07CiAgICB2YXIgdXJuID0gewogICAgICBzY2hlbWU6ICJ1cm4iLAogICAgICBwYXJzZTogdXJuUGFyc2UsCiAgICAgIHNlcmlhbGl6ZTogdXJuU2VyaWFsaXplLAogICAgICBza2lwTm9ybWFsaXplOiB0cnVlCiAgICB9OwogICAgdmFyIHVybnV1aWQgPSB7CiAgICAgIHNjaGVtZTogInVybjp1dWlkIiwKICAgICAgcGFyc2U6IHVybnV1aWRQYXJzZSwKICAgICAgc2VyaWFsaXplOiB1cm51dWlkU2VyaWFsaXplLAogICAgICBza2lwTm9ybWFsaXplOiB0cnVlCiAgICB9OwogICAgdmFyIFNDSEVNRVMgPSB7CiAgICAgIGh0dHAsCiAgICAgIGh0dHBzLAogICAgICB3cywKICAgICAgd3NzLAogICAgICB1cm4sCiAgICAgICJ1cm46dXVpZCI6IHVybnV1aWQKICAgIH07CiAgICBtb2R1bGUyLmV4cG9ydHMgPSBTQ0hFTUVTOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9mYXN0LXVyaS1ucG0tMy4wLjMtMDg3NDA3MjYyNS05MjQ4N2M3NTg0LnppcC9ub2RlX21vZHVsZXMvZmFzdC11cmkvaW5kZXguanMKdmFyIHJlcXVpcmVfZmFzdF91cmkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvZmFzdC11cmktbnBtLTMuMC4zLTA4NzQwNzI2MjUtOTI0ODdjNzU4NC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtdXJpL2luZGV4LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIHsgbm9ybWFsaXplSVB2Niwgbm9ybWFsaXplSVB2NCwgcmVtb3ZlRG90U2VnbWVudHMsIHJlY29tcG9zZUF1dGhvcml0eSwgbm9ybWFsaXplQ29tcG9uZW50RW5jb2RpbmcgfSA9IHJlcXVpcmVfdXRpbHMyKCk7CiAgICB2YXIgU0NIRU1FUyA9IHJlcXVpcmVfc2NoZW1lcygpOwogICAgZnVuY3Rpb24gbm9ybWFsaXplKHVyaSwgb3B0aW9ucykgewogICAgICBpZiAodHlwZW9mIHVyaSA9PT0gInN0cmluZyIpIHsKICAgICAgICB1cmkgPSBzZXJpYWxpemUocGFyc2UodXJpLCBvcHRpb25zKSwgb3B0aW9ucyk7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHVyaSA9PT0gIm9iamVjdCIpIHsKICAgICAgICB1cmkgPSBwYXJzZShzZXJpYWxpemUodXJpLCBvcHRpb25zKSwgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgcmV0dXJuIHVyaTsKICAgIH0KICAgIGZ1bmN0aW9uIHJlc29sdmUoYmFzZVVSSSwgcmVsYXRpdmVVUkksIG9wdGlvbnMpIHsKICAgICAgY29uc3Qgc2NoZW1lbGVzc09wdGlvbnMgPSBPYmplY3QuYXNzaWduKHsgc2NoZW1lOiAibnVsbCIgfSwgb3B0aW9ucyk7CiAgICAgIGNvbnN0IHJlc29sdmVkID0gcmVzb2x2ZUNvbXBvbmVudHMocGFyc2UoYmFzZVVSSSwgc2NoZW1lbGVzc09wdGlvbnMpLCBwYXJzZShyZWxhdGl2ZVVSSSwgc2NoZW1lbGVzc09wdGlvbnMpLCBzY2hlbWVsZXNzT3B0aW9ucywgdHJ1ZSk7CiAgICAgIHJldHVybiBzZXJpYWxpemUocmVzb2x2ZWQsIHsgLi4uc2NoZW1lbGVzc09wdGlvbnMsIHNraXBFc2NhcGU6IHRydWUgfSk7CiAgICB9CiAgICBmdW5jdGlvbiByZXNvbHZlQ29tcG9uZW50cyhiYXNlLCByZWxhdGl2ZSwgb3B0aW9ucywgc2tpcE5vcm1hbGl6YXRpb24pIHsKICAgICAgY29uc3QgdGFyZ2V0ID0ge307CiAgICAgIGlmICghc2tpcE5vcm1hbGl6YXRpb24pIHsKICAgICAgICBiYXNlID0gcGFyc2Uoc2VyaWFsaXplKGJhc2UsIG9wdGlvbnMpLCBvcHRpb25zKTsKICAgICAgICByZWxhdGl2ZSA9IHBhcnNlKHNlcmlhbGl6ZShyZWxhdGl2ZSwgb3B0aW9ucyksIG9wdGlvbnMpOwogICAgICB9CiAgICAgIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9OwogICAgICBpZiAoIW9wdGlvbnMudG9sZXJhbnQgJiYgcmVsYXRpdmUuc2NoZW1lKSB7CiAgICAgICAgdGFyZ2V0LnNjaGVtZSA9IHJlbGF0aXZlLnNjaGVtZTsKICAgICAgICB0YXJnZXQudXNlcmluZm8gPSByZWxhdGl2ZS51c2VyaW5mbzsKICAgICAgICB0YXJnZXQuaG9zdCA9IHJlbGF0aXZlLmhvc3Q7CiAgICAgICAgdGFyZ2V0LnBvcnQgPSByZWxhdGl2ZS5wb3J0OwogICAgICAgIHRhcmdldC5wYXRoID0gcmVtb3ZlRG90U2VnbWVudHMocmVsYXRpdmUucGF0aCB8fCAiIik7CiAgICAgICAgdGFyZ2V0LnF1ZXJ5ID0gcmVsYXRpdmUucXVlcnk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgaWYgKHJlbGF0aXZlLnVzZXJpbmZvICE9PSB2b2lkIDAgfHwgcmVsYXRpdmUuaG9zdCAhPT0gdm9pZCAwIHx8IHJlbGF0aXZlLnBvcnQgIT09IHZvaWQgMCkgewogICAgICAgICAgdGFyZ2V0LnVzZXJpbmZvID0gcmVsYXRpdmUudXNlcmluZm87CiAgICAgICAgICB0YXJnZXQuaG9zdCA9IHJlbGF0aXZlLmhvc3Q7CiAgICAgICAgICB0YXJnZXQucG9ydCA9IHJlbGF0aXZlLnBvcnQ7CiAgICAgICAgICB0YXJnZXQucGF0aCA9IHJlbW92ZURvdFNlZ21lbnRzKHJlbGF0aXZlLnBhdGggfHwgIiIpOwogICAgICAgICAgdGFyZ2V0LnF1ZXJ5ID0gcmVsYXRpdmUucXVlcnk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGlmICghcmVsYXRpdmUucGF0aCkgewogICAgICAgICAgICB0YXJnZXQucGF0aCA9IGJhc2UucGF0aDsKICAgICAgICAgICAgaWYgKHJlbGF0aXZlLnF1ZXJ5ICE9PSB2b2lkIDApIHsKICAgICAgICAgICAgICB0YXJnZXQucXVlcnkgPSByZWxhdGl2ZS5xdWVyeTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICB0YXJnZXQucXVlcnkgPSBiYXNlLnF1ZXJ5OwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBpZiAocmVsYXRpdmUucGF0aC5jaGFyQXQoMCkgPT09ICIvIikgewogICAgICAgICAgICAgIHRhcmdldC5wYXRoID0gcmVtb3ZlRG90U2VnbWVudHMocmVsYXRpdmUucGF0aCk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgaWYgKChiYXNlLnVzZXJpbmZvICE9PSB2b2lkIDAgfHwgYmFzZS5ob3N0ICE9PSB2b2lkIDAgfHwgYmFzZS5wb3J0ICE9PSB2b2lkIDApICYmICFiYXNlLnBhdGgpIHsKICAgICAgICAgICAgICAgIHRhcmdldC5wYXRoID0gIi8iICsgcmVsYXRpdmUucGF0aDsKICAgICAgICAgICAgICB9IGVsc2UgaWYgKCFiYXNlLnBhdGgpIHsKICAgICAgICAgICAgICAgIHRhcmdldC5wYXRoID0gcmVsYXRpdmUucGF0aDsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgdGFyZ2V0LnBhdGggPSBiYXNlLnBhdGguc2xpY2UoMCwgYmFzZS5wYXRoLmxhc3RJbmRleE9mKCIvIikgKyAxKSArIHJlbGF0aXZlLnBhdGg7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHRhcmdldC5wYXRoID0gcmVtb3ZlRG90U2VnbWVudHModGFyZ2V0LnBhdGgpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHRhcmdldC5xdWVyeSA9IHJlbGF0aXZlLnF1ZXJ5OwogICAgICAgICAgfQogICAgICAgICAgdGFyZ2V0LnVzZXJpbmZvID0gYmFzZS51c2VyaW5mbzsKICAgICAgICAgIHRhcmdldC5ob3N0ID0gYmFzZS5ob3N0OwogICAgICAgICAgdGFyZ2V0LnBvcnQgPSBiYXNlLnBvcnQ7CiAgICAgICAgfQogICAgICAgIHRhcmdldC5zY2hlbWUgPSBiYXNlLnNjaGVtZTsKICAgICAgfQogICAgICB0YXJnZXQuZnJhZ21lbnQgPSByZWxhdGl2ZS5mcmFnbWVudDsKICAgICAgcmV0dXJuIHRhcmdldDsKICAgIH0KICAgIGZ1bmN0aW9uIGVxdWFsKHVyaUEsIHVyaUIsIG9wdGlvbnMpIHsKICAgICAgaWYgKHR5cGVvZiB1cmlBID09PSAic3RyaW5nIikgewogICAgICAgIHVyaUEgPSB1bmVzY2FwZSh1cmlBKTsKICAgICAgICB1cmlBID0gc2VyaWFsaXplKG5vcm1hbGl6ZUNvbXBvbmVudEVuY29kaW5nKHBhcnNlKHVyaUEsIG9wdGlvbnMpLCB0cnVlKSwgeyAuLi5vcHRpb25zLCBza2lwRXNjYXBlOiB0cnVlIH0pOwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiB1cmlBID09PSAib2JqZWN0IikgewogICAgICAgIHVyaUEgPSBzZXJpYWxpemUobm9ybWFsaXplQ29tcG9uZW50RW5jb2RpbmcodXJpQSwgdHJ1ZSksIHsgLi4ub3B0aW9ucywgc2tpcEVzY2FwZTogdHJ1ZSB9KTsKICAgICAgfQogICAgICBpZiAodHlwZW9mIHVyaUIgPT09ICJzdHJpbmciKSB7CiAgICAgICAgdXJpQiA9IHVuZXNjYXBlKHVyaUIpOwogICAgICAgIHVyaUIgPSBzZXJpYWxpemUobm9ybWFsaXplQ29tcG9uZW50RW5jb2RpbmcocGFyc2UodXJpQiwgb3B0aW9ucyksIHRydWUpLCB7IC4uLm9wdGlvbnMsIHNraXBFc2NhcGU6IHRydWUgfSk7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHVyaUIgPT09ICJvYmplY3QiKSB7CiAgICAgICAgdXJpQiA9IHNlcmlhbGl6ZShub3JtYWxpemVDb21wb25lbnRFbmNvZGluZyh1cmlCLCB0cnVlKSwgeyAuLi5vcHRpb25zLCBza2lwRXNjYXBlOiB0cnVlIH0pOwogICAgICB9CiAgICAgIHJldHVybiB1cmlBLnRvTG93ZXJDYXNlKCkgPT09IHVyaUIudG9Mb3dlckNhc2UoKTsKICAgIH0KICAgIGZ1bmN0aW9uIHNlcmlhbGl6ZShjbXB0cywgb3B0cykgewogICAgICBjb25zdCBjb21wb25lbnRzID0gewogICAgICAgIGhvc3Q6IGNtcHRzLmhvc3QsCiAgICAgICAgc2NoZW1lOiBjbXB0cy5zY2hlbWUsCiAgICAgICAgdXNlcmluZm86IGNtcHRzLnVzZXJpbmZvLAogICAgICAgIHBvcnQ6IGNtcHRzLnBvcnQsCiAgICAgICAgcGF0aDogY21wdHMucGF0aCwKICAgICAgICBxdWVyeTogY21wdHMucXVlcnksCiAgICAgICAgbmlkOiBjbXB0cy5uaWQsCiAgICAgICAgbnNzOiBjbXB0cy5uc3MsCiAgICAgICAgdXVpZDogY21wdHMudXVpZCwKICAgICAgICBmcmFnbWVudDogY21wdHMuZnJhZ21lbnQsCiAgICAgICAgcmVmZXJlbmNlOiBjbXB0cy5yZWZlcmVuY2UsCiAgICAgICAgcmVzb3VyY2VOYW1lOiBjbXB0cy5yZXNvdXJjZU5hbWUsCiAgICAgICAgc2VjdXJlOiBjbXB0cy5zZWN1cmUsCiAgICAgICAgZXJyb3I6ICIiCiAgICAgIH07CiAgICAgIGNvbnN0IG9wdGlvbnMgPSBPYmplY3QuYXNzaWduKHt9LCBvcHRzKTsKICAgICAgY29uc3QgdXJpVG9rZW5zID0gW107CiAgICAgIGNvbnN0IHNjaGVtZUhhbmRsZXIgPSBTQ0hFTUVTWyhvcHRpb25zLnNjaGVtZSB8fCBjb21wb25lbnRzLnNjaGVtZSB8fCAiIikudG9Mb3dlckNhc2UoKV07CiAgICAgIGlmIChzY2hlbWVIYW5kbGVyICYmIHNjaGVtZUhhbmRsZXIuc2VyaWFsaXplKSBzY2hlbWVIYW5kbGVyLnNlcmlhbGl6ZShjb21wb25lbnRzLCBvcHRpb25zKTsKICAgICAgaWYgKGNvbXBvbmVudHMucGF0aCAhPT0gdm9pZCAwKSB7CiAgICAgICAgaWYgKCFvcHRpb25zLnNraXBFc2NhcGUpIHsKICAgICAgICAgIGNvbXBvbmVudHMucGF0aCA9IGVzY2FwZShjb21wb25lbnRzLnBhdGgpOwogICAgICAgICAgaWYgKGNvbXBvbmVudHMuc2NoZW1lICE9PSB2b2lkIDApIHsKICAgICAgICAgICAgY29tcG9uZW50cy5wYXRoID0gY29tcG9uZW50cy5wYXRoLnNwbGl0KCIlM0EiKS5qb2luKCI6Iik7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGNvbXBvbmVudHMucGF0aCA9IHVuZXNjYXBlKGNvbXBvbmVudHMucGF0aCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGlmIChvcHRpb25zLnJlZmVyZW5jZSAhPT0gInN1ZmZpeCIgJiYgY29tcG9uZW50cy5zY2hlbWUpIHsKICAgICAgICB1cmlUb2tlbnMucHVzaChjb21wb25lbnRzLnNjaGVtZSwgIjoiKTsKICAgICAgfQogICAgICBjb25zdCBhdXRob3JpdHkgPSByZWNvbXBvc2VBdXRob3JpdHkoY29tcG9uZW50cywgb3B0aW9ucyk7CiAgICAgIGlmIChhdXRob3JpdHkgIT09IHZvaWQgMCkgewogICAgICAgIGlmIChvcHRpb25zLnJlZmVyZW5jZSAhPT0gInN1ZmZpeCIpIHsKICAgICAgICAgIHVyaVRva2Vucy5wdXNoKCIvLyIpOwogICAgICAgIH0KICAgICAgICB1cmlUb2tlbnMucHVzaChhdXRob3JpdHkpOwogICAgICAgIGlmIChjb21wb25lbnRzLnBhdGggJiYgY29tcG9uZW50cy5wYXRoLmNoYXJBdCgwKSAhPT0gIi8iKSB7CiAgICAgICAgICB1cmlUb2tlbnMucHVzaCgiLyIpOwogICAgICAgIH0KICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5wYXRoICE9PSB2b2lkIDApIHsKICAgICAgICBsZXQgcyA9IGNvbXBvbmVudHMucGF0aDsKICAgICAgICBpZiAoIW9wdGlvbnMuYWJzb2x1dGVQYXRoICYmICghc2NoZW1lSGFuZGxlciB8fCAhc2NoZW1lSGFuZGxlci5hYnNvbHV0ZVBhdGgpKSB7CiAgICAgICAgICBzID0gcmVtb3ZlRG90U2VnbWVudHMocyk7CiAgICAgICAgfQogICAgICAgIGlmIChhdXRob3JpdHkgPT09IHZvaWQgMCkgewogICAgICAgICAgcyA9IHMucmVwbGFjZSgvXlwvXC8vdSwgIi8lMkYiKTsKICAgICAgICB9CiAgICAgICAgdXJpVG9rZW5zLnB1c2gocyk7CiAgICAgIH0KICAgICAgaWYgKGNvbXBvbmVudHMucXVlcnkgIT09IHZvaWQgMCkgewogICAgICAgIHVyaVRva2Vucy5wdXNoKCI/IiwgY29tcG9uZW50cy5xdWVyeSk7CiAgICAgIH0KICAgICAgaWYgKGNvbXBvbmVudHMuZnJhZ21lbnQgIT09IHZvaWQgMCkgewogICAgICAgIHVyaVRva2Vucy5wdXNoKCIjIiwgY29tcG9uZW50cy5mcmFnbWVudCk7CiAgICAgIH0KICAgICAgcmV0dXJuIHVyaVRva2Vucy5qb2luKCIiKTsKICAgIH0KICAgIHZhciBoZXhMb29rVXAgPSBBcnJheS5mcm9tKHsgbGVuZ3RoOiAxMjcgfSwgKHYsIGspID0+IC9bXiEiJCYnKCkqKyxcLS47PV9gYS16e31+XS91LnRlc3QoU3RyaW5nLmZyb21DaGFyQ29kZShrKSkpOwogICAgZnVuY3Rpb24gbm9uU2ltcGxlRG9tYWluKHZhbHVlKSB7CiAgICAgIGxldCBjb2RlID0gMDsKICAgICAgZm9yIChsZXQgaSA9IDAsIGxlbiA9IHZhbHVlLmxlbmd0aDsgaSA8IGxlbjsgKytpKSB7CiAgICAgICAgY29kZSA9IHZhbHVlLmNoYXJDb2RlQXQoaSk7CiAgICAgICAgaWYgKGNvZGUgPiAxMjYgfHwgaGV4TG9va1VwW2NvZGVdKSB7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQogICAgdmFyIFVSSV9QQVJTRSA9IC9eKD86KFteIy86P10rKTopPyg/OlwvXC8oKD86KFteIy8/QF0qKUApPyhcW1teIy8/XF1dK1xdfFteIy86P10qKSg/OjooXGQqKSk/KSk/KFteIz9dKikoPzpcPyhbXiNdKikpPyg/OiMoKD86LnxbXG5ccl0pKikpPy91OwogICAgZnVuY3Rpb24gcGFyc2UodXJpLCBvcHRzKSB7CiAgICAgIGNvbnN0IG9wdGlvbnMgPSBPYmplY3QuYXNzaWduKHt9LCBvcHRzKTsKICAgICAgY29uc3QgcGFyc2VkID0gewogICAgICAgIHNjaGVtZTogdm9pZCAwLAogICAgICAgIHVzZXJpbmZvOiB2b2lkIDAsCiAgICAgICAgaG9zdDogIiIsCiAgICAgICAgcG9ydDogdm9pZCAwLAogICAgICAgIHBhdGg6ICIiLAogICAgICAgIHF1ZXJ5OiB2b2lkIDAsCiAgICAgICAgZnJhZ21lbnQ6IHZvaWQgMAogICAgICB9OwogICAgICBjb25zdCBnb3RFbmNvZGluZyA9IHVyaS5pbmRleE9mKCIlIikgIT09IC0xOwogICAgICBsZXQgaXNJUCA9IGZhbHNlOwogICAgICBpZiAob3B0aW9ucy5yZWZlcmVuY2UgPT09ICJzdWZmaXgiKSB1cmkgPSAob3B0aW9ucy5zY2hlbWUgPyBvcHRpb25zLnNjaGVtZSArICI6IiA6ICIiKSArICIvLyIgKyB1cmk7CiAgICAgIGNvbnN0IG1hdGNoZXMgPSB1cmkubWF0Y2goVVJJX1BBUlNFKTsKICAgICAgaWYgKG1hdGNoZXMpIHsKICAgICAgICBwYXJzZWQuc2NoZW1lID0gbWF0Y2hlc1sxXTsKICAgICAgICBwYXJzZWQudXNlcmluZm8gPSBtYXRjaGVzWzNdOwogICAgICAgIHBhcnNlZC5ob3N0ID0gbWF0Y2hlc1s0XTsKICAgICAgICBwYXJzZWQucG9ydCA9IHBhcnNlSW50KG1hdGNoZXNbNV0sIDEwKTsKICAgICAgICBwYXJzZWQucGF0aCA9IG1hdGNoZXNbNl0gfHwgIiI7CiAgICAgICAgcGFyc2VkLnF1ZXJ5ID0gbWF0Y2hlc1s3XTsKICAgICAgICBwYXJzZWQuZnJhZ21lbnQgPSBtYXRjaGVzWzhdOwogICAgICAgIGlmIChpc05hTihwYXJzZWQucG9ydCkpIHsKICAgICAgICAgIHBhcnNlZC5wb3J0ID0gbWF0Y2hlc1s1XTsKICAgICAgICB9CiAgICAgICAgaWYgKHBhcnNlZC5ob3N0KSB7CiAgICAgICAgICBjb25zdCBpcHY0cmVzdWx0ID0gbm9ybWFsaXplSVB2NChwYXJzZWQuaG9zdCk7CiAgICAgICAgICBpZiAoaXB2NHJlc3VsdC5pc0lQVjQgPT09IGZhbHNlKSB7CiAgICAgICAgICAgIGNvbnN0IGlwdjZyZXN1bHQgPSBub3JtYWxpemVJUHY2KGlwdjRyZXN1bHQuaG9zdCwgeyBpc0lQVjQ6IGZhbHNlIH0pOwogICAgICAgICAgICBwYXJzZWQuaG9zdCA9IGlwdjZyZXN1bHQuaG9zdC50b0xvd2VyQ2FzZSgpOwogICAgICAgICAgICBpc0lQID0gaXB2NnJlc3VsdC5pc0lQVjY7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBwYXJzZWQuaG9zdCA9IGlwdjRyZXN1bHQuaG9zdDsKICAgICAgICAgICAgaXNJUCA9IHRydWU7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChwYXJzZWQuc2NoZW1lID09PSB2b2lkIDAgJiYgcGFyc2VkLnVzZXJpbmZvID09PSB2b2lkIDAgJiYgcGFyc2VkLmhvc3QgPT09IHZvaWQgMCAmJiBwYXJzZWQucG9ydCA9PT0gdm9pZCAwICYmICFwYXJzZWQucGF0aCAmJiBwYXJzZWQucXVlcnkgPT09IHZvaWQgMCkgewogICAgICAgICAgcGFyc2VkLnJlZmVyZW5jZSA9ICJzYW1lLWRvY3VtZW50IjsKICAgICAgICB9IGVsc2UgaWYgKHBhcnNlZC5zY2hlbWUgPT09IHZvaWQgMCkgewogICAgICAgICAgcGFyc2VkLnJlZmVyZW5jZSA9ICJyZWxhdGl2ZSI7CiAgICAgICAgfSBlbHNlIGlmIChwYXJzZWQuZnJhZ21lbnQgPT09IHZvaWQgMCkgewogICAgICAgICAgcGFyc2VkLnJlZmVyZW5jZSA9ICJhYnNvbHV0ZSI7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHBhcnNlZC5yZWZlcmVuY2UgPSAidXJpIjsKICAgICAgICB9CiAgICAgICAgaWYgKG9wdGlvbnMucmVmZXJlbmNlICYmIG9wdGlvbnMucmVmZXJlbmNlICE9PSAic3VmZml4IiAmJiBvcHRpb25zLnJlZmVyZW5jZSAhPT0gcGFyc2VkLnJlZmVyZW5jZSkgewogICAgICAgICAgcGFyc2VkLmVycm9yID0gcGFyc2VkLmVycm9yIHx8ICJVUkkgaXMgbm90IGEgIiArIG9wdGlvbnMucmVmZXJlbmNlICsgIiByZWZlcmVuY2UuIjsKICAgICAgICB9CiAgICAgICAgY29uc3Qgc2NoZW1lSGFuZGxlciA9IFNDSEVNRVNbKG9wdGlvbnMuc2NoZW1lIHx8IHBhcnNlZC5zY2hlbWUgfHwgIiIpLnRvTG93ZXJDYXNlKCldOwogICAgICAgIGlmICghb3B0aW9ucy51bmljb2RlU3VwcG9ydCAmJiAoIXNjaGVtZUhhbmRsZXIgfHwgIXNjaGVtZUhhbmRsZXIudW5pY29kZVN1cHBvcnQpKSB7CiAgICAgICAgICBpZiAocGFyc2VkLmhvc3QgJiYgKG9wdGlvbnMuZG9tYWluSG9zdCB8fCBzY2hlbWVIYW5kbGVyICYmIHNjaGVtZUhhbmRsZXIuZG9tYWluSG9zdCkgJiYgaXNJUCA9PT0gZmFsc2UgJiYgbm9uU2ltcGxlRG9tYWluKHBhcnNlZC5ob3N0KSkgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgIHBhcnNlZC5ob3N0ID0gVVJMLmRvbWFpblRvQVNDSUkocGFyc2VkLmhvc3QudG9Mb3dlckNhc2UoKSk7CiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgICBwYXJzZWQuZXJyb3IgPSBwYXJzZWQuZXJyb3IgfHwgIkhvc3QncyBkb21haW4gbmFtZSBjYW4gbm90IGJlIGNvbnZlcnRlZCB0byBBU0NJSTogIiArIGU7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKCFzY2hlbWVIYW5kbGVyIHx8IHNjaGVtZUhhbmRsZXIgJiYgIXNjaGVtZUhhbmRsZXIuc2tpcE5vcm1hbGl6ZSkgewogICAgICAgICAgaWYgKGdvdEVuY29kaW5nICYmIHBhcnNlZC5zY2hlbWUgIT09IHZvaWQgMCkgewogICAgICAgICAgICBwYXJzZWQuc2NoZW1lID0gdW5lc2NhcGUocGFyc2VkLnNjaGVtZSk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZ290RW5jb2RpbmcgJiYgcGFyc2VkLmhvc3QgIT09IHZvaWQgMCkgewogICAgICAgICAgICBwYXJzZWQuaG9zdCA9IHVuZXNjYXBlKHBhcnNlZC5ob3N0KTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwYXJzZWQucGF0aCAhPT0gdm9pZCAwICYmIHBhcnNlZC5wYXRoLmxlbmd0aCkgewogICAgICAgICAgICBwYXJzZWQucGF0aCA9IGVzY2FwZSh1bmVzY2FwZShwYXJzZWQucGF0aCkpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHBhcnNlZC5mcmFnbWVudCAhPT0gdm9pZCAwICYmIHBhcnNlZC5mcmFnbWVudC5sZW5ndGgpIHsKICAgICAgICAgICAgcGFyc2VkLmZyYWdtZW50ID0gZW5jb2RlVVJJKGRlY29kZVVSSUNvbXBvbmVudChwYXJzZWQuZnJhZ21lbnQpKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKHNjaGVtZUhhbmRsZXIgJiYgc2NoZW1lSGFuZGxlci5wYXJzZSkgewogICAgICAgICAgc2NoZW1lSGFuZGxlci5wYXJzZShwYXJzZWQsIG9wdGlvbnMpOwogICAgICAgIH0KICAgICAgfSBlbHNlIHsKICAgICAgICBwYXJzZWQuZXJyb3IgPSBwYXJzZWQuZXJyb3IgfHwgIlVSSSBjYW4gbm90IGJlIHBhcnNlZC4iOwogICAgICB9CiAgICAgIHJldHVybiBwYXJzZWQ7CiAgICB9CiAgICB2YXIgZmFzdFVyaSA9IHsKICAgICAgU0NIRU1FUywKICAgICAgbm9ybWFsaXplLAogICAgICByZXNvbHZlLAogICAgICByZXNvbHZlQ29tcG9uZW50cywKICAgICAgZXF1YWwsCiAgICAgIHNlcmlhbGl6ZSwKICAgICAgcGFyc2UKICAgIH07CiAgICBtb2R1bGUyLmV4cG9ydHMgPSBmYXN0VXJpOwogICAgbW9kdWxlMi5leHBvcnRzLmRlZmF1bHQgPSBmYXN0VXJpOwogICAgbW9kdWxlMi5leHBvcnRzLmZhc3RVcmkgPSBmYXN0VXJpOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9ydW50aW1lL3VyaS5qcwp2YXIgcmVxdWlyZV91cmkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcnVudGltZS91cmkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciB1cmkgPSByZXF1aXJlX2Zhc3RfdXJpKCk7CiAgICB1cmkuY29kZSA9ICdyZXF1aXJlKCJhanYvZGlzdC9ydW50aW1lL3VyaSIpLmRlZmF1bHQnOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IHVyaTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29yZS5qcwp2YXIgcmVxdWlyZV9jb3JlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvcmUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkNvZGVHZW4gPSBleHBvcnRzMi5OYW1lID0gZXhwb3J0czIubmlsID0gZXhwb3J0czIuc3RyaW5naWZ5ID0gZXhwb3J0czIuc3RyID0gZXhwb3J0czIuXyA9IGV4cG9ydHMyLktleXdvcmRDeHQgPSB2b2lkIDA7CiAgICB2YXIgdmFsaWRhdGVfMSA9IHJlcXVpcmVfdmFsaWRhdGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIktleXdvcmRDeHQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB2YWxpZGF0ZV8xLktleXdvcmRDeHQ7CiAgICB9IH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiXyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5fOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0ciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5zdHI7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3RyaW5naWZ5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLnN0cmluZ2lmeTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJuaWwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEubmlsOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIk5hbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEuTmFtZTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJDb2RlR2VuIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLkNvZGVHZW47CiAgICB9IH0pOwogICAgdmFyIHZhbGlkYXRpb25fZXJyb3JfMSA9IHJlcXVpcmVfdmFsaWRhdGlvbl9lcnJvcigpOwogICAgdmFyIHJlZl9lcnJvcl8xID0gcmVxdWlyZV9yZWZfZXJyb3IoKTsKICAgIHZhciBydWxlc18xID0gcmVxdWlyZV9ydWxlcygpOwogICAgdmFyIGNvbXBpbGVfMSA9IHJlcXVpcmVfY29tcGlsZSgpOwogICAgdmFyIGNvZGVnZW5fMiA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHJlc29sdmVfMSA9IHJlcXVpcmVfcmVzb2x2ZSgpOwogICAgdmFyIGRhdGFUeXBlXzEgPSByZXF1aXJlX2RhdGFUeXBlKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgJGRhdGFSZWZTY2hlbWEgPSByZXF1aXJlX2RhdGEoKTsKICAgIHZhciB1cmlfMSA9IHJlcXVpcmVfdXJpKCk7CiAgICB2YXIgZGVmYXVsdFJlZ0V4cCA9IChzdHIsIGZsYWdzKSA9PiBuZXcgUmVnRXhwKHN0ciwgZmxhZ3MpOwogICAgZGVmYXVsdFJlZ0V4cC5jb2RlID0gIm5ldyBSZWdFeHAiOwogICAgdmFyIE1FVEFfSUdOT1JFX09QVElPTlMgPSBbInJlbW92ZUFkZGl0aW9uYWwiLCAidXNlRGVmYXVsdHMiLCAiY29lcmNlVHlwZXMiXTsKICAgIHZhciBFWFRfU0NPUEVfTkFNRVMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbCiAgICAgICJ2YWxpZGF0ZSIsCiAgICAgICJzZXJpYWxpemUiLAogICAgICAicGFyc2UiLAogICAgICAid3JhcHBlciIsCiAgICAgICJyb290IiwKICAgICAgInNjaGVtYSIsCiAgICAgICJrZXl3b3JkIiwKICAgICAgInBhdHRlcm4iLAogICAgICAiZm9ybWF0cyIsCiAgICAgICJ2YWxpZGF0ZSRkYXRhIiwKICAgICAgImZ1bmMiLAogICAgICAib2JqIiwKICAgICAgIkVycm9yIgogICAgXSk7CiAgICB2YXIgcmVtb3ZlZE9wdGlvbnMgPSB7CiAgICAgIGVycm9yRGF0YVBhdGg6ICIiLAogICAgICBmb3JtYXQ6ICJgdmFsaWRhdGVGb3JtYXRzOiBmYWxzZWAgY2FuIGJlIHVzZWQgaW5zdGVhZC4iLAogICAgICBudWxsYWJsZTogJyJudWxsYWJsZSIga2V5d29yZCBpcyBzdXBwb3J0ZWQgYnkgZGVmYXVsdC4nLAogICAgICBqc29uUG9pbnRlcnM6ICJEZXByZWNhdGVkIGpzUHJvcGVydHlTeW50YXggY2FuIGJlIHVzZWQgaW5zdGVhZC4iLAogICAgICBleHRlbmRSZWZzOiAiRGVwcmVjYXRlZCBpZ25vcmVLZXl3b3Jkc1dpdGhSZWYgY2FuIGJlIHVzZWQgaW5zdGVhZC4iLAogICAgICBtaXNzaW5nUmVmczogIlBhc3MgZW1wdHkgc2NoZW1hIHdpdGggJGlkIHRoYXQgc2hvdWxkIGJlIGlnbm9yZWQgdG8gYWp2LmFkZFNjaGVtYS4iLAogICAgICBwcm9jZXNzQ29kZTogIlVzZSBvcHRpb24gYGNvZGU6IHtwcm9jZXNzOiAoY29kZSwgc2NoZW1hRW52OiBvYmplY3QpID0+IHN0cmluZ31gIiwKICAgICAgc291cmNlQ29kZTogIlVzZSBvcHRpb24gYGNvZGU6IHtzb3VyY2U6IHRydWV9YCIsCiAgICAgIHN0cmljdERlZmF1bHRzOiAiSXQgaXMgZGVmYXVsdCBub3csIHNlZSBvcHRpb24gYHN0cmljdGAuIiwKICAgICAgc3RyaWN0S2V5d29yZHM6ICJJdCBpcyBkZWZhdWx0IG5vdywgc2VlIG9wdGlvbiBgc3RyaWN0YC4iLAogICAgICB1bmlxdWVJdGVtczogJyJ1bmlxdWVJdGVtcyIga2V5d29yZCBpcyBhbHdheXMgdmFsaWRhdGVkLicsCiAgICAgIHVua25vd25Gb3JtYXRzOiAiRGlzYWJsZSBzdHJpY3QgbW9kZSBvciBwYXNzIGB0cnVlYCB0byBgYWp2LmFkZEZvcm1hdGAgKG9yIGBmb3JtYXRzYCBvcHRpb24pLiIsCiAgICAgIGNhY2hlOiAiTWFwIGlzIHVzZWQgYXMgY2FjaGUsIHNjaGVtYSBvYmplY3QgYXMga2V5LiIsCiAgICAgIHNlcmlhbGl6ZTogIk1hcCBpcyB1c2VkIGFzIGNhY2hlLCBzY2hlbWEgb2JqZWN0IGFzIGtleS4iLAogICAgICBhanZFcnJvcnM6ICJJdCBpcyBkZWZhdWx0IG5vdy4iCiAgICB9OwogICAgdmFyIGRlcHJlY2F0ZWRPcHRpb25zID0gewogICAgICBpZ25vcmVLZXl3b3Jkc1dpdGhSZWY6ICIiLAogICAgICBqc1Byb3BlcnR5U3ludGF4OiAiIiwKICAgICAgdW5pY29kZTogJyJtaW5MZW5ndGgiLyJtYXhMZW5ndGgiIGFjY291bnQgZm9yIHVuaWNvZGUgY2hhcmFjdGVycyBieSBkZWZhdWx0LicKICAgIH07CiAgICB2YXIgTUFYX0VYUFJFU1NJT04gPSAyMDA7CiAgICBmdW5jdGlvbiByZXF1aXJlZE9wdGlvbnMobykgewogICAgICB2YXIgX2EsIF9iLCBfYywgX2QsIF9lLCBfZiwgX2csIF9oLCBfaiwgX2ssIF9sLCBfbSwgX28sIF9wLCBfcSwgX3IsIF9zLCBfdCwgX3UsIF92LCBfdywgX3gsIF95LCBfeiwgXzA7CiAgICAgIGNvbnN0IHMgPSBvLnN0cmljdDsKICAgICAgY29uc3QgX29wdHogPSAoX2EgPSBvLmNvZGUpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5vcHRpbWl6ZTsKICAgICAgY29uc3Qgb3B0aW1pemUgPSBfb3B0eiA9PT0gdHJ1ZSB8fCBfb3B0eiA9PT0gdm9pZCAwID8gMSA6IF9vcHR6IHx8IDA7CiAgICAgIGNvbnN0IHJlZ0V4cCA9IChfYyA9IChfYiA9IG8uY29kZSkgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLnJlZ0V4cCkgIT09IG51bGwgJiYgX2MgIT09IHZvaWQgMCA/IF9jIDogZGVmYXVsdFJlZ0V4cDsKICAgICAgY29uc3QgdXJpUmVzb2x2ZXIgPSAoX2QgPSBvLnVyaVJlc29sdmVyKSAhPT0gbnVsbCAmJiBfZCAhPT0gdm9pZCAwID8gX2QgOiB1cmlfMS5kZWZhdWx0OwogICAgICByZXR1cm4gewogICAgICAgIHN0cmljdFNjaGVtYTogKF9mID0gKF9lID0gby5zdHJpY3RTY2hlbWEpICE9PSBudWxsICYmIF9lICE9PSB2b2lkIDAgPyBfZSA6IHMpICE9PSBudWxsICYmIF9mICE9PSB2b2lkIDAgPyBfZiA6IHRydWUsCiAgICAgICAgc3RyaWN0TnVtYmVyczogKF9oID0gKF9nID0gby5zdHJpY3ROdW1iZXJzKSAhPT0gbnVsbCAmJiBfZyAhPT0gdm9pZCAwID8gX2cgOiBzKSAhPT0gbnVsbCAmJiBfaCAhPT0gdm9pZCAwID8gX2ggOiB0cnVlLAogICAgICAgIHN0cmljdFR5cGVzOiAoX2sgPSAoX2ogPSBvLnN0cmljdFR5cGVzKSAhPT0gbnVsbCAmJiBfaiAhPT0gdm9pZCAwID8gX2ogOiBzKSAhPT0gbnVsbCAmJiBfayAhPT0gdm9pZCAwID8gX2sgOiAibG9nIiwKICAgICAgICBzdHJpY3RUdXBsZXM6IChfbSA9IChfbCA9IG8uc3RyaWN0VHVwbGVzKSAhPT0gbnVsbCAmJiBfbCAhPT0gdm9pZCAwID8gX2wgOiBzKSAhPT0gbnVsbCAmJiBfbSAhPT0gdm9pZCAwID8gX20gOiAibG9nIiwKICAgICAgICBzdHJpY3RSZXF1aXJlZDogKF9wID0gKF9vID0gby5zdHJpY3RSZXF1aXJlZCkgIT09IG51bGwgJiYgX28gIT09IHZvaWQgMCA/IF9vIDogcykgIT09IG51bGwgJiYgX3AgIT09IHZvaWQgMCA/IF9wIDogZmFsc2UsCiAgICAgICAgY29kZTogby5jb2RlID8geyAuLi5vLmNvZGUsIG9wdGltaXplLCByZWdFeHAgfSA6IHsgb3B0aW1pemUsIHJlZ0V4cCB9LAogICAgICAgIGxvb3BSZXF1aXJlZDogKF9xID0gby5sb29wUmVxdWlyZWQpICE9PSBudWxsICYmIF9xICE9PSB2b2lkIDAgPyBfcSA6IE1BWF9FWFBSRVNTSU9OLAogICAgICAgIGxvb3BFbnVtOiAoX3IgPSBvLmxvb3BFbnVtKSAhPT0gbnVsbCAmJiBfciAhPT0gdm9pZCAwID8gX3IgOiBNQVhfRVhQUkVTU0lPTiwKICAgICAgICBtZXRhOiAoX3MgPSBvLm1ldGEpICE9PSBudWxsICYmIF9zICE9PSB2b2lkIDAgPyBfcyA6IHRydWUsCiAgICAgICAgbWVzc2FnZXM6IChfdCA9IG8ubWVzc2FnZXMpICE9PSBudWxsICYmIF90ICE9PSB2b2lkIDAgPyBfdCA6IHRydWUsCiAgICAgICAgaW5saW5lUmVmczogKF91ID0gby5pbmxpbmVSZWZzKSAhPT0gbnVsbCAmJiBfdSAhPT0gdm9pZCAwID8gX3UgOiB0cnVlLAogICAgICAgIHNjaGVtYUlkOiAoX3YgPSBvLnNjaGVtYUlkKSAhPT0gbnVsbCAmJiBfdiAhPT0gdm9pZCAwID8gX3YgOiAiJGlkIiwKICAgICAgICBhZGRVc2VkU2NoZW1hOiAoX3cgPSBvLmFkZFVzZWRTY2hlbWEpICE9PSBudWxsICYmIF93ICE9PSB2b2lkIDAgPyBfdyA6IHRydWUsCiAgICAgICAgdmFsaWRhdGVTY2hlbWE6IChfeCA9IG8udmFsaWRhdGVTY2hlbWEpICE9PSBudWxsICYmIF94ICE9PSB2b2lkIDAgPyBfeCA6IHRydWUsCiAgICAgICAgdmFsaWRhdGVGb3JtYXRzOiAoX3kgPSBvLnZhbGlkYXRlRm9ybWF0cykgIT09IG51bGwgJiYgX3kgIT09IHZvaWQgMCA/IF95IDogdHJ1ZSwKICAgICAgICB1bmljb2RlUmVnRXhwOiAoX3ogPSBvLnVuaWNvZGVSZWdFeHApICE9PSBudWxsICYmIF96ICE9PSB2b2lkIDAgPyBfeiA6IHRydWUsCiAgICAgICAgaW50MzJyYW5nZTogKF8wID0gby5pbnQzMnJhbmdlKSAhPT0gbnVsbCAmJiBfMCAhPT0gdm9pZCAwID8gXzAgOiB0cnVlLAogICAgICAgIHVyaVJlc29sdmVyCiAgICAgIH07CiAgICB9CiAgICB2YXIgQWp2ID0gY2xhc3MgewogICAgICBjb25zdHJ1Y3RvcihvcHRzID0ge30pIHsKICAgICAgICB0aGlzLnNjaGVtYXMgPSB7fTsKICAgICAgICB0aGlzLnJlZnMgPSB7fTsKICAgICAgICB0aGlzLmZvcm1hdHMgPSB7fTsKICAgICAgICB0aGlzLl9jb21waWxhdGlvbnMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICAgIHRoaXMuX2xvYWRpbmcgPSB7fTsKICAgICAgICB0aGlzLl9jYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgICAgb3B0cyA9IHRoaXMub3B0cyA9IHsgLi4ub3B0cywgLi4ucmVxdWlyZWRPcHRpb25zKG9wdHMpIH07CiAgICAgICAgY29uc3QgeyBlczUsIGxpbmVzIH0gPSB0aGlzLm9wdHMuY29kZTsKICAgICAgICB0aGlzLnNjb3BlID0gbmV3IGNvZGVnZW5fMi5WYWx1ZVNjb3BlKHsgc2NvcGU6IHt9LCBwcmVmaXhlczogRVhUX1NDT1BFX05BTUVTLCBlczUsIGxpbmVzIH0pOwogICAgICAgIHRoaXMubG9nZ2VyID0gZ2V0TG9nZ2VyKG9wdHMubG9nZ2VyKTsKICAgICAgICBjb25zdCBmb3JtYXRPcHQgPSBvcHRzLnZhbGlkYXRlRm9ybWF0czsKICAgICAgICBvcHRzLnZhbGlkYXRlRm9ybWF0cyA9IGZhbHNlOwogICAgICAgIHRoaXMuUlVMRVMgPSAoMCwgcnVsZXNfMS5nZXRSdWxlcykoKTsKICAgICAgICBjaGVja09wdGlvbnMuY2FsbCh0aGlzLCByZW1vdmVkT3B0aW9ucywgb3B0cywgIk5PVCBTVVBQT1JURUQiKTsKICAgICAgICBjaGVja09wdGlvbnMuY2FsbCh0aGlzLCBkZXByZWNhdGVkT3B0aW9ucywgb3B0cywgIkRFUFJFQ0FURUQiLCAid2FybiIpOwogICAgICAgIHRoaXMuX21ldGFPcHRzID0gZ2V0TWV0YVNjaGVtYU9wdGlvbnMuY2FsbCh0aGlzKTsKICAgICAgICBpZiAob3B0cy5mb3JtYXRzKQogICAgICAgICAgYWRkSW5pdGlhbEZvcm1hdHMuY2FsbCh0aGlzKTsKICAgICAgICB0aGlzLl9hZGRWb2NhYnVsYXJpZXMoKTsKICAgICAgICB0aGlzLl9hZGREZWZhdWx0TWV0YVNjaGVtYSgpOwogICAgICAgIGlmIChvcHRzLmtleXdvcmRzKQogICAgICAgICAgYWRkSW5pdGlhbEtleXdvcmRzLmNhbGwodGhpcywgb3B0cy5rZXl3b3Jkcyk7CiAgICAgICAgaWYgKHR5cGVvZiBvcHRzLm1ldGEgPT0gIm9iamVjdCIpCiAgICAgICAgICB0aGlzLmFkZE1ldGFTY2hlbWEob3B0cy5tZXRhKTsKICAgICAgICBhZGRJbml0aWFsU2NoZW1hcy5jYWxsKHRoaXMpOwogICAgICAgIG9wdHMudmFsaWRhdGVGb3JtYXRzID0gZm9ybWF0T3B0OwogICAgICB9CiAgICAgIF9hZGRWb2NhYnVsYXJpZXMoKSB7CiAgICAgICAgdGhpcy5hZGRLZXl3b3JkKCIkYXN5bmMiKTsKICAgICAgfQogICAgICBfYWRkRGVmYXVsdE1ldGFTY2hlbWEoKSB7CiAgICAgICAgY29uc3QgeyAkZGF0YSwgbWV0YSwgc2NoZW1hSWQgfSA9IHRoaXMub3B0czsKICAgICAgICBsZXQgX2RhdGFSZWZTY2hlbWEgPSAkZGF0YVJlZlNjaGVtYTsKICAgICAgICBpZiAoc2NoZW1hSWQgPT09ICJpZCIpIHsKICAgICAgICAgIF9kYXRhUmVmU2NoZW1hID0geyAuLi4kZGF0YVJlZlNjaGVtYSB9OwogICAgICAgICAgX2RhdGFSZWZTY2hlbWEuaWQgPSBfZGF0YVJlZlNjaGVtYS4kaWQ7CiAgICAgICAgICBkZWxldGUgX2RhdGFSZWZTY2hlbWEuJGlkOwogICAgICAgIH0KICAgICAgICBpZiAobWV0YSAmJiAkZGF0YSkKICAgICAgICAgIHRoaXMuYWRkTWV0YVNjaGVtYShfZGF0YVJlZlNjaGVtYSwgX2RhdGFSZWZTY2hlbWFbc2NoZW1hSWRdLCBmYWxzZSk7CiAgICAgIH0KICAgICAgZGVmYXVsdE1ldGEoKSB7CiAgICAgICAgY29uc3QgeyBtZXRhLCBzY2hlbWFJZCB9ID0gdGhpcy5vcHRzOwogICAgICAgIHJldHVybiB0aGlzLm9wdHMuZGVmYXVsdE1ldGEgPSB0eXBlb2YgbWV0YSA9PSAib2JqZWN0IiA/IG1ldGFbc2NoZW1hSWRdIHx8IG1ldGEgOiB2b2lkIDA7CiAgICAgIH0KICAgICAgdmFsaWRhdGUoc2NoZW1hS2V5UmVmLCBkYXRhKSB7CiAgICAgICAgbGV0IHY7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWFLZXlSZWYgPT0gInN0cmluZyIpIHsKICAgICAgICAgIHYgPSB0aGlzLmdldFNjaGVtYShzY2hlbWFLZXlSZWYpOwogICAgICAgICAgaWYgKCF2KQogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYG5vIHNjaGVtYSB3aXRoIGtleSBvciByZWYgIiR7c2NoZW1hS2V5UmVmfSJgKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdiA9IHRoaXMuY29tcGlsZShzY2hlbWFLZXlSZWYpOwogICAgICAgIH0KICAgICAgICBjb25zdCB2YWxpZCA9IHYoZGF0YSk7CiAgICAgICAgaWYgKCEoIiRhc3luYyIgaW4gdikpCiAgICAgICAgICB0aGlzLmVycm9ycyA9IHYuZXJyb3JzOwogICAgICAgIHJldHVybiB2YWxpZDsKICAgICAgfQogICAgICBjb21waWxlKHNjaGVtYSwgX21ldGEpIHsKICAgICAgICBjb25zdCBzY2ggPSB0aGlzLl9hZGRTY2hlbWEoc2NoZW1hLCBfbWV0YSk7CiAgICAgICAgcmV0dXJuIHNjaC52YWxpZGF0ZSB8fCB0aGlzLl9jb21waWxlU2NoZW1hRW52KHNjaCk7CiAgICAgIH0KICAgICAgY29tcGlsZUFzeW5jKHNjaGVtYSwgbWV0YSkgewogICAgICAgIGlmICh0eXBlb2YgdGhpcy5vcHRzLmxvYWRTY2hlbWEgIT0gImZ1bmN0aW9uIikgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJvcHRpb25zLmxvYWRTY2hlbWEgc2hvdWxkIGJlIGEgZnVuY3Rpb24iKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgeyBsb2FkU2NoZW1hIH0gPSB0aGlzLm9wdHM7CiAgICAgICAgcmV0dXJuIHJ1bkNvbXBpbGVBc3luYy5jYWxsKHRoaXMsIHNjaGVtYSwgbWV0YSk7CiAgICAgICAgYXN5bmMgZnVuY3Rpb24gcnVuQ29tcGlsZUFzeW5jKF9zY2hlbWEsIF9tZXRhKSB7CiAgICAgICAgICBhd2FpdCBsb2FkTWV0YVNjaGVtYS5jYWxsKHRoaXMsIF9zY2hlbWEuJHNjaGVtYSk7CiAgICAgICAgICBjb25zdCBzY2ggPSB0aGlzLl9hZGRTY2hlbWEoX3NjaGVtYSwgX21ldGEpOwogICAgICAgICAgcmV0dXJuIHNjaC52YWxpZGF0ZSB8fCBfY29tcGlsZUFzeW5jLmNhbGwodGhpcywgc2NoKTsKICAgICAgICB9CiAgICAgICAgYXN5bmMgZnVuY3Rpb24gbG9hZE1ldGFTY2hlbWEoJHJlZikgewogICAgICAgICAgaWYgKCRyZWYgJiYgIXRoaXMuZ2V0U2NoZW1hKCRyZWYpKSB7CiAgICAgICAgICAgIGF3YWl0IHJ1bkNvbXBpbGVBc3luYy5jYWxsKHRoaXMsIHsgJHJlZiB9LCB0cnVlKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgYXN5bmMgZnVuY3Rpb24gX2NvbXBpbGVBc3luYyhzY2gpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLl9jb21waWxlU2NoZW1hRW52KHNjaCk7CiAgICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIGlmICghKGUgaW5zdGFuY2VvZiByZWZfZXJyb3JfMS5kZWZhdWx0KSkKICAgICAgICAgICAgICB0aHJvdyBlOwogICAgICAgICAgICBjaGVja0xvYWRlZC5jYWxsKHRoaXMsIGUpOwogICAgICAgICAgICBhd2FpdCBsb2FkTWlzc2luZ1NjaGVtYS5jYWxsKHRoaXMsIGUubWlzc2luZ1NjaGVtYSk7CiAgICAgICAgICAgIHJldHVybiBfY29tcGlsZUFzeW5jLmNhbGwodGhpcywgc2NoKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gY2hlY2tMb2FkZWQoeyBtaXNzaW5nU2NoZW1hOiByZWYsIG1pc3NpbmdSZWYgfSkgewogICAgICAgICAgaWYgKHRoaXMucmVmc1tyZWZdKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQW55U2NoZW1hICR7cmVmfSBpcyBsb2FkZWQgYnV0ICR7bWlzc2luZ1JlZn0gY2Fubm90IGJlIHJlc29sdmVkYCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGFzeW5jIGZ1bmN0aW9uIGxvYWRNaXNzaW5nU2NoZW1hKHJlZikgewogICAgICAgICAgY29uc3QgX3NjaGVtYSA9IGF3YWl0IF9sb2FkU2NoZW1hLmNhbGwodGhpcywgcmVmKTsKICAgICAgICAgIGlmICghdGhpcy5yZWZzW3JlZl0pCiAgICAgICAgICAgIGF3YWl0IGxvYWRNZXRhU2NoZW1hLmNhbGwodGhpcywgX3NjaGVtYS4kc2NoZW1hKTsKICAgICAgICAgIGlmICghdGhpcy5yZWZzW3JlZl0pCiAgICAgICAgICAgIHRoaXMuYWRkU2NoZW1hKF9zY2hlbWEsIHJlZiwgbWV0YSk7CiAgICAgICAgfQogICAgICAgIGFzeW5jIGZ1bmN0aW9uIF9sb2FkU2NoZW1hKHJlZikgewogICAgICAgICAgY29uc3QgcCA9IHRoaXMuX2xvYWRpbmdbcmVmXTsKICAgICAgICAgIGlmIChwKQogICAgICAgICAgICByZXR1cm4gcDsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiBhd2FpdCAodGhpcy5fbG9hZGluZ1tyZWZdID0gbG9hZFNjaGVtYShyZWYpKTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIGRlbGV0ZSB0aGlzLl9sb2FkaW5nW3JlZl07CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIC8vIEFkZHMgc2NoZW1hIHRvIHRoZSBpbnN0YW5jZQogICAgICBhZGRTY2hlbWEoc2NoZW1hLCBrZXksIF9tZXRhLCBfdmFsaWRhdGVTY2hlbWEgPSB0aGlzLm9wdHMudmFsaWRhdGVTY2hlbWEpIHsKICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShzY2hlbWEpKSB7CiAgICAgICAgICBmb3IgKGNvbnN0IHNjaCBvZiBzY2hlbWEpCiAgICAgICAgICAgIHRoaXMuYWRkU2NoZW1hKHNjaCwgdm9pZCAwLCBfbWV0YSwgX3ZhbGlkYXRlU2NoZW1hKTsKICAgICAgICAgIHJldHVybiB0aGlzOwogICAgICAgIH0KICAgICAgICBsZXQgaWQ7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEgPT09ICJvYmplY3QiKSB7CiAgICAgICAgICBjb25zdCB7IHNjaGVtYUlkIH0gPSB0aGlzLm9wdHM7CiAgICAgICAgICBpZCA9IHNjaGVtYVtzY2hlbWFJZF07CiAgICAgICAgICBpZiAoaWQgIT09IHZvaWQgMCAmJiB0eXBlb2YgaWQgIT0gInN0cmluZyIpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBzY2hlbWEgJHtzY2hlbWFJZH0gbXVzdCBiZSBzdHJpbmdgKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAga2V5ID0gKDAsIHJlc29sdmVfMS5ub3JtYWxpemVJZCkoa2V5IHx8IGlkKTsKICAgICAgICB0aGlzLl9jaGVja1VuaXF1ZShrZXkpOwogICAgICAgIHRoaXMuc2NoZW1hc1trZXldID0gdGhpcy5fYWRkU2NoZW1hKHNjaGVtYSwgX21ldGEsIGtleSwgX3ZhbGlkYXRlU2NoZW1hLCB0cnVlKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyBBZGQgc2NoZW1hIHRoYXQgd2lsbCBiZSB1c2VkIHRvIHZhbGlkYXRlIG90aGVyIHNjaGVtYXMKICAgICAgLy8gb3B0aW9ucyBpbiBNRVRBX0lHTk9SRV9PUFRJT05TIGFyZSBhbHdheSBzZXQgdG8gZmFsc2UKICAgICAgYWRkTWV0YVNjaGVtYShzY2hlbWEsIGtleSwgX3ZhbGlkYXRlU2NoZW1hID0gdGhpcy5vcHRzLnZhbGlkYXRlU2NoZW1hKSB7CiAgICAgICAgdGhpcy5hZGRTY2hlbWEoc2NoZW1hLCBrZXksIHRydWUsIF92YWxpZGF0ZVNjaGVtYSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgLy8gIFZhbGlkYXRlIHNjaGVtYSBhZ2FpbnN0IGl0cyBtZXRhLXNjaGVtYQogICAgICB2YWxpZGF0ZVNjaGVtYShzY2hlbWEsIHRocm93T3JMb2dFcnJvcikgewogICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hID09ICJib29sZWFuIikKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIGxldCAkc2NoZW1hOwogICAgICAgICRzY2hlbWEgPSBzY2hlbWEuJHNjaGVtYTsKICAgICAgICBpZiAoJHNjaGVtYSAhPT0gdm9pZCAwICYmIHR5cGVvZiAkc2NoZW1hICE9ICJzdHJpbmciKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIiRzY2hlbWEgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIH0KICAgICAgICAkc2NoZW1hID0gJHNjaGVtYSB8fCB0aGlzLm9wdHMuZGVmYXVsdE1ldGEgfHwgdGhpcy5kZWZhdWx0TWV0YSgpOwogICAgICAgIGlmICghJHNjaGVtYSkgewogICAgICAgICAgdGhpcy5sb2dnZXIud2FybigibWV0YS1zY2hlbWEgbm90IGF2YWlsYWJsZSIpOwogICAgICAgICAgdGhpcy5lcnJvcnMgPSBudWxsOwogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHZhbGlkID0gdGhpcy52YWxpZGF0ZSgkc2NoZW1hLCBzY2hlbWEpOwogICAgICAgIGlmICghdmFsaWQgJiYgdGhyb3dPckxvZ0Vycm9yKSB7CiAgICAgICAgICBjb25zdCBtZXNzYWdlID0gInNjaGVtYSBpcyBpbnZhbGlkOiAiICsgdGhpcy5lcnJvcnNUZXh0KCk7CiAgICAgICAgICBpZiAodGhpcy5vcHRzLnZhbGlkYXRlU2NoZW1hID09PSAibG9nIikKICAgICAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IobWVzc2FnZSk7CiAgICAgICAgICBlbHNlCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihtZXNzYWdlKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHZhbGlkOwogICAgICB9CiAgICAgIC8vIEdldCBjb21waWxlZCBzY2hlbWEgYnkgYGtleWAgb3IgYHJlZmAuCiAgICAgIC8vIChga2V5YCB0aGF0IHdhcyBwYXNzZWQgdG8gYGFkZFNjaGVtYWAgb3IgZnVsbCBzY2hlbWEgcmVmZXJlbmNlIC0gYHNjaGVtYS4kaWRgIG9yIHJlc29sdmVkIGlkKQogICAgICBnZXRTY2hlbWEoa2V5UmVmKSB7CiAgICAgICAgbGV0IHNjaDsKICAgICAgICB3aGlsZSAodHlwZW9mIChzY2ggPSBnZXRTY2hFbnYuY2FsbCh0aGlzLCBrZXlSZWYpKSA9PSAic3RyaW5nIikKICAgICAgICAgIGtleVJlZiA9IHNjaDsKICAgICAgICBpZiAoc2NoID09PSB2b2lkIDApIHsKICAgICAgICAgIGNvbnN0IHsgc2NoZW1hSWQgfSA9IHRoaXMub3B0czsKICAgICAgICAgIGNvbnN0IHJvb3QgPSBuZXcgY29tcGlsZV8xLlNjaGVtYUVudih7IHNjaGVtYToge30sIHNjaGVtYUlkIH0pOwogICAgICAgICAgc2NoID0gY29tcGlsZV8xLnJlc29sdmVTY2hlbWEuY2FsbCh0aGlzLCByb290LCBrZXlSZWYpOwogICAgICAgICAgaWYgKCFzY2gpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIHRoaXMucmVmc1trZXlSZWZdID0gc2NoOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2NoLnZhbGlkYXRlIHx8IHRoaXMuX2NvbXBpbGVTY2hlbWFFbnYoc2NoKTsKICAgICAgfQogICAgICAvLyBSZW1vdmUgY2FjaGVkIHNjaGVtYShzKS4KICAgICAgLy8gSWYgbm8gcGFyYW1ldGVyIGlzIHBhc3NlZCBhbGwgc2NoZW1hcyBidXQgbWV0YS1zY2hlbWFzIGFyZSByZW1vdmVkLgogICAgICAvLyBJZiBSZWdFeHAgaXMgcGFzc2VkIGFsbCBzY2hlbWFzIHdpdGgga2V5L2lkIG1hdGNoaW5nIHBhdHRlcm4gYnV0IG1ldGEtc2NoZW1hcyBhcmUgcmVtb3ZlZC4KICAgICAgLy8gRXZlbiBpZiBzY2hlbWEgaXMgcmVmZXJlbmNlZCBieSBvdGhlciBzY2hlbWFzIGl0IHN0aWxsIGNhbiBiZSByZW1vdmVkIGFzIG90aGVyIHNjaGVtYXMgaGF2ZSBsb2NhbCByZWZlcmVuY2VzLgogICAgICByZW1vdmVTY2hlbWEoc2NoZW1hS2V5UmVmKSB7CiAgICAgICAgaWYgKHNjaGVtYUtleVJlZiBpbnN0YW5jZW9mIFJlZ0V4cCkgewogICAgICAgICAgdGhpcy5fcmVtb3ZlQWxsU2NoZW1hcyh0aGlzLnNjaGVtYXMsIHNjaGVtYUtleVJlZik7CiAgICAgICAgICB0aGlzLl9yZW1vdmVBbGxTY2hlbWFzKHRoaXMucmVmcywgc2NoZW1hS2V5UmVmKTsKICAgICAgICAgIHJldHVybiB0aGlzOwogICAgICAgIH0KICAgICAgICBzd2l0Y2ggKHR5cGVvZiBzY2hlbWFLZXlSZWYpIHsKICAgICAgICAgIGNhc2UgInVuZGVmaW5lZCI6CiAgICAgICAgICAgIHRoaXMuX3JlbW92ZUFsbFNjaGVtYXModGhpcy5zY2hlbWFzKTsKICAgICAgICAgICAgdGhpcy5fcmVtb3ZlQWxsU2NoZW1hcyh0aGlzLnJlZnMpOwogICAgICAgICAgICB0aGlzLl9jYWNoZS5jbGVhcigpOwogICAgICAgICAgICByZXR1cm4gdGhpczsKICAgICAgICAgIGNhc2UgInN0cmluZyI6IHsKICAgICAgICAgICAgY29uc3Qgc2NoID0gZ2V0U2NoRW52LmNhbGwodGhpcywgc2NoZW1hS2V5UmVmKTsKICAgICAgICAgICAgaWYgKHR5cGVvZiBzY2ggPT0gIm9iamVjdCIpCiAgICAgICAgICAgICAgdGhpcy5fY2FjaGUuZGVsZXRlKHNjaC5zY2hlbWEpOwogICAgICAgICAgICBkZWxldGUgdGhpcy5zY2hlbWFzW3NjaGVtYUtleVJlZl07CiAgICAgICAgICAgIGRlbGV0ZSB0aGlzLnJlZnNbc2NoZW1hS2V5UmVmXTsKICAgICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgICAgICB9CiAgICAgICAgICBjYXNlICJvYmplY3QiOiB7CiAgICAgICAgICAgIGNvbnN0IGNhY2hlS2V5ID0gc2NoZW1hS2V5UmVmOwogICAgICAgICAgICB0aGlzLl9jYWNoZS5kZWxldGUoY2FjaGVLZXkpOwogICAgICAgICAgICBsZXQgaWQgPSBzY2hlbWFLZXlSZWZbdGhpcy5vcHRzLnNjaGVtYUlkXTsKICAgICAgICAgICAgaWYgKGlkKSB7CiAgICAgICAgICAgICAgaWQgPSAoMCwgcmVzb2x2ZV8xLm5vcm1hbGl6ZUlkKShpZCk7CiAgICAgICAgICAgICAgZGVsZXRlIHRoaXMuc2NoZW1hc1tpZF07CiAgICAgICAgICAgICAgZGVsZXRlIHRoaXMucmVmc1tpZF07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgICAgICB9CiAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdi5yZW1vdmVTY2hlbWE6IGludmFsaWQgcGFyYW1ldGVyIik7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8vIGFkZCAidm9jYWJ1bGFyeSIgLSBhIGNvbGxlY3Rpb24gb2Yga2V5d29yZHMKICAgICAgYWRkVm9jYWJ1bGFyeShkZWZpbml0aW9ucykgewogICAgICAgIGZvciAoY29uc3QgZGVmIG9mIGRlZmluaXRpb25zKQogICAgICAgICAgdGhpcy5hZGRLZXl3b3JkKGRlZik7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgYWRkS2V5d29yZChrd2RPckRlZiwgZGVmKSB7CiAgICAgICAgbGV0IGtleXdvcmQ7CiAgICAgICAgaWYgKHR5cGVvZiBrd2RPckRlZiA9PSAic3RyaW5nIikgewogICAgICAgICAga2V5d29yZCA9IGt3ZE9yRGVmOwogICAgICAgICAgaWYgKHR5cGVvZiBkZWYgPT0gIm9iamVjdCIpIHsKICAgICAgICAgICAgdGhpcy5sb2dnZXIud2FybigidGhlc2UgcGFyYW1ldGVycyBhcmUgZGVwcmVjYXRlZCwgc2VlIGRvY3MgZm9yIGFkZEtleXdvcmQiKTsKICAgICAgICAgICAgZGVmLmtleXdvcmQgPSBrZXl3b3JkOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGt3ZE9yRGVmID09ICJvYmplY3QiICYmIGRlZiA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWYgPSBrd2RPckRlZjsKICAgICAgICAgIGtleXdvcmQgPSBkZWYua2V5d29yZDsKICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGtleXdvcmQpICYmICFrZXl3b3JkLmxlbmd0aCkgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFkZEtleXdvcmRzOiBrZXl3b3JkIG11c3QgYmUgc3RyaW5nIG9yIG5vbi1lbXB0eSBhcnJheSIpOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImludmFsaWQgYWRkS2V5d29yZHMgcGFyYW1ldGVycyIpOwogICAgICAgIH0KICAgICAgICBjaGVja0tleXdvcmQuY2FsbCh0aGlzLCBrZXl3b3JkLCBkZWYpOwogICAgICAgIGlmICghZGVmKSB7CiAgICAgICAgICAoMCwgdXRpbF8xLmVhY2hJdGVtKShrZXl3b3JkLCAoa3dkKSA9PiBhZGRSdWxlLmNhbGwodGhpcywga3dkKSk7CiAgICAgICAgICByZXR1cm4gdGhpczsKICAgICAgICB9CiAgICAgICAga2V5d29yZE1ldGFzY2hlbWEuY2FsbCh0aGlzLCBkZWYpOwogICAgICAgIGNvbnN0IGRlZmluaXRpb24gPSB7CiAgICAgICAgICAuLi5kZWYsCiAgICAgICAgICB0eXBlOiAoMCwgZGF0YVR5cGVfMS5nZXRKU09OVHlwZXMpKGRlZi50eXBlKSwKICAgICAgICAgIHNjaGVtYVR5cGU6ICgwLCBkYXRhVHlwZV8xLmdldEpTT05UeXBlcykoZGVmLnNjaGVtYVR5cGUpCiAgICAgICAgfTsKICAgICAgICAoMCwgdXRpbF8xLmVhY2hJdGVtKShrZXl3b3JkLCBkZWZpbml0aW9uLnR5cGUubGVuZ3RoID09PSAwID8gKGspID0+IGFkZFJ1bGUuY2FsbCh0aGlzLCBrLCBkZWZpbml0aW9uKSA6IChrKSA9PiBkZWZpbml0aW9uLnR5cGUuZm9yRWFjaCgodCkgPT4gYWRkUnVsZS5jYWxsKHRoaXMsIGssIGRlZmluaXRpb24sIHQpKSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0S2V5d29yZChrZXl3b3JkKSB7CiAgICAgICAgY29uc3QgcnVsZSA9IHRoaXMuUlVMRVMuYWxsW2tleXdvcmRdOwogICAgICAgIHJldHVybiB0eXBlb2YgcnVsZSA9PSAib2JqZWN0IiA/IHJ1bGUuZGVmaW5pdGlvbiA6ICEhcnVsZTsKICAgICAgfQogICAgICAvLyBSZW1vdmUga2V5d29yZAogICAgICByZW1vdmVLZXl3b3JkKGtleXdvcmQpIHsKICAgICAgICBjb25zdCB7IFJVTEVTIH0gPSB0aGlzOwogICAgICAgIGRlbGV0ZSBSVUxFUy5rZXl3b3Jkc1trZXl3b3JkXTsKICAgICAgICBkZWxldGUgUlVMRVMuYWxsW2tleXdvcmRdOwogICAgICAgIGZvciAoY29uc3QgZ3JvdXAgb2YgUlVMRVMucnVsZXMpIHsKICAgICAgICAgIGNvbnN0IGkgPSBncm91cC5ydWxlcy5maW5kSW5kZXgoKHJ1bGUpID0+IHJ1bGUua2V5d29yZCA9PT0ga2V5d29yZCk7CiAgICAgICAgICBpZiAoaSA+PSAwKQogICAgICAgICAgICBncm91cC5ydWxlcy5zcGxpY2UoaSwgMSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIC8vIEFkZCBmb3JtYXQKICAgICAgYWRkRm9ybWF0KG5hbWUsIGZvcm1hdCkgewogICAgICAgIGlmICh0eXBlb2YgZm9ybWF0ID09ICJzdHJpbmciKQogICAgICAgICAgZm9ybWF0ID0gbmV3IFJlZ0V4cChmb3JtYXQpOwogICAgICAgIHRoaXMuZm9ybWF0c1tuYW1lXSA9IGZvcm1hdDsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBlcnJvcnNUZXh0KGVycm9ycyA9IHRoaXMuZXJyb3JzLCB7IHNlcGFyYXRvciA9ICIsICIsIGRhdGFWYXIgPSAiZGF0YSIgfSA9IHt9KSB7CiAgICAgICAgaWYgKCFlcnJvcnMgfHwgZXJyb3JzLmxlbmd0aCA9PT0gMCkKICAgICAgICAgIHJldHVybiAiTm8gZXJyb3JzIjsKICAgICAgICByZXR1cm4gZXJyb3JzLm1hcCgoZSkgPT4gYCR7ZGF0YVZhcn0ke2UuaW5zdGFuY2VQYXRofSAke2UubWVzc2FnZX1gKS5yZWR1Y2UoKHRleHQsIG1zZykgPT4gdGV4dCArIHNlcGFyYXRvciArIG1zZyk7CiAgICAgIH0KICAgICAgJGRhdGFNZXRhU2NoZW1hKG1ldGFTY2hlbWEsIGtleXdvcmRzSnNvblBvaW50ZXJzKSB7CiAgICAgICAgY29uc3QgcnVsZXMgPSB0aGlzLlJVTEVTLmFsbDsKICAgICAgICBtZXRhU2NoZW1hID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShtZXRhU2NoZW1hKSk7CiAgICAgICAgZm9yIChjb25zdCBqc29uUG9pbnRlciBvZiBrZXl3b3Jkc0pzb25Qb2ludGVycykgewogICAgICAgICAgY29uc3Qgc2VnbWVudHMgPSBqc29uUG9pbnRlci5zcGxpdCgiLyIpLnNsaWNlKDEpOwogICAgICAgICAgbGV0IGtleXdvcmRzID0gbWV0YVNjaGVtYTsKICAgICAgICAgIGZvciAoY29uc3Qgc2VnIG9mIHNlZ21lbnRzKQogICAgICAgICAgICBrZXl3b3JkcyA9IGtleXdvcmRzW3NlZ107CiAgICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiBydWxlcykgewogICAgICAgICAgICBjb25zdCBydWxlID0gcnVsZXNba2V5XTsKICAgICAgICAgICAgaWYgKHR5cGVvZiBydWxlICE9ICJvYmplY3QiKQogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICBjb25zdCB7ICRkYXRhIH0gPSBydWxlLmRlZmluaXRpb247CiAgICAgICAgICAgIGNvbnN0IHNjaGVtYSA9IGtleXdvcmRzW2tleV07CiAgICAgICAgICAgIGlmICgkZGF0YSAmJiBzY2hlbWEpCiAgICAgICAgICAgICAga2V5d29yZHNba2V5XSA9IHNjaGVtYU9yRGF0YShzY2hlbWEpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gbWV0YVNjaGVtYTsKICAgICAgfQogICAgICBfcmVtb3ZlQWxsU2NoZW1hcyhzY2hlbWFzLCByZWdleCkgewogICAgICAgIGZvciAoY29uc3Qga2V5UmVmIGluIHNjaGVtYXMpIHsKICAgICAgICAgIGNvbnN0IHNjaCA9IHNjaGVtYXNba2V5UmVmXTsKICAgICAgICAgIGlmICghcmVnZXggfHwgcmVnZXgudGVzdChrZXlSZWYpKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2Ygc2NoID09ICJzdHJpbmciKSB7CiAgICAgICAgICAgICAgZGVsZXRlIHNjaGVtYXNba2V5UmVmXTsKICAgICAgICAgICAgfSBlbHNlIGlmIChzY2ggJiYgIXNjaC5tZXRhKSB7CiAgICAgICAgICAgICAgdGhpcy5fY2FjaGUuZGVsZXRlKHNjaC5zY2hlbWEpOwogICAgICAgICAgICAgIGRlbGV0ZSBzY2hlbWFzW2tleVJlZl07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgX2FkZFNjaGVtYShzY2hlbWEsIG1ldGEsIGJhc2VJZCwgdmFsaWRhdGVTY2hlbWEgPSB0aGlzLm9wdHMudmFsaWRhdGVTY2hlbWEsIGFkZFNjaGVtYSA9IHRoaXMub3B0cy5hZGRVc2VkU2NoZW1hKSB7CiAgICAgICAgbGV0IGlkOwogICAgICAgIGNvbnN0IHsgc2NoZW1hSWQgfSA9IHRoaXMub3B0czsKICAgICAgICBpZiAodHlwZW9mIHNjaGVtYSA9PSAib2JqZWN0IikgewogICAgICAgICAgaWQgPSBzY2hlbWFbc2NoZW1hSWRdOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBpZiAodGhpcy5vcHRzLmp0ZCkKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJzY2hlbWEgbXVzdCBiZSBvYmplY3QiKTsKICAgICAgICAgIGVsc2UgaWYgKHR5cGVvZiBzY2hlbWEgIT0gImJvb2xlYW4iKQogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoInNjaGVtYSBtdXN0IGJlIG9iamVjdCBvciBib29sZWFuIik7CiAgICAgICAgfQogICAgICAgIGxldCBzY2ggPSB0aGlzLl9jYWNoZS5nZXQoc2NoZW1hKTsKICAgICAgICBpZiAoc2NoICE9PSB2b2lkIDApCiAgICAgICAgICByZXR1cm4gc2NoOwogICAgICAgIGJhc2VJZCA9ICgwLCByZXNvbHZlXzEubm9ybWFsaXplSWQpKGlkIHx8IGJhc2VJZCk7CiAgICAgICAgY29uc3QgbG9jYWxSZWZzID0gcmVzb2x2ZV8xLmdldFNjaGVtYVJlZnMuY2FsbCh0aGlzLCBzY2hlbWEsIGJhc2VJZCk7CiAgICAgICAgc2NoID0gbmV3IGNvbXBpbGVfMS5TY2hlbWFFbnYoeyBzY2hlbWEsIHNjaGVtYUlkLCBtZXRhLCBiYXNlSWQsIGxvY2FsUmVmcyB9KTsKICAgICAgICB0aGlzLl9jYWNoZS5zZXQoc2NoLnNjaGVtYSwgc2NoKTsKICAgICAgICBpZiAoYWRkU2NoZW1hICYmICFiYXNlSWQuc3RhcnRzV2l0aCgiIyIpKSB7CiAgICAgICAgICBpZiAoYmFzZUlkKQogICAgICAgICAgICB0aGlzLl9jaGVja1VuaXF1ZShiYXNlSWQpOwogICAgICAgICAgdGhpcy5yZWZzW2Jhc2VJZF0gPSBzY2g7CiAgICAgICAgfQogICAgICAgIGlmICh2YWxpZGF0ZVNjaGVtYSkKICAgICAgICAgIHRoaXMudmFsaWRhdGVTY2hlbWEoc2NoZW1hLCB0cnVlKTsKICAgICAgICByZXR1cm4gc2NoOwogICAgICB9CiAgICAgIF9jaGVja1VuaXF1ZShpZCkgewogICAgICAgIGlmICh0aGlzLnNjaGVtYXNbaWRdIHx8IHRoaXMucmVmc1tpZF0pIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgc2NoZW1hIHdpdGgga2V5IG9yIGlkICIke2lkfSIgYWxyZWFkeSBleGlzdHNgKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgX2NvbXBpbGVTY2hlbWFFbnYoc2NoKSB7CiAgICAgICAgaWYgKHNjaC5tZXRhKQogICAgICAgICAgdGhpcy5fY29tcGlsZU1ldGFTY2hlbWEoc2NoKTsKICAgICAgICBlbHNlCiAgICAgICAgICBjb21waWxlXzEuY29tcGlsZVNjaGVtYS5jYWxsKHRoaXMsIHNjaCk7CiAgICAgICAgaWYgKCFzY2gudmFsaWRhdGUpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICAgIHJldHVybiBzY2gudmFsaWRhdGU7CiAgICAgIH0KICAgICAgX2NvbXBpbGVNZXRhU2NoZW1hKHNjaCkgewogICAgICAgIGNvbnN0IGN1cnJlbnRPcHRzID0gdGhpcy5vcHRzOwogICAgICAgIHRoaXMub3B0cyA9IHRoaXMuX21ldGFPcHRzOwogICAgICAgIHRyeSB7CiAgICAgICAgICBjb21waWxlXzEuY29tcGlsZVNjaGVtYS5jYWxsKHRoaXMsIHNjaCk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIHRoaXMub3B0cyA9IGN1cnJlbnRPcHRzOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIEFqdi5WYWxpZGF0aW9uRXJyb3IgPSB2YWxpZGF0aW9uX2Vycm9yXzEuZGVmYXVsdDsKICAgIEFqdi5NaXNzaW5nUmVmRXJyb3IgPSByZWZfZXJyb3JfMS5kZWZhdWx0OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IEFqdjsKICAgIGZ1bmN0aW9uIGNoZWNrT3B0aW9ucyhjaGVja09wdHMsIG9wdGlvbnMsIG1zZywgbG9nID0gImVycm9yIikgewogICAgICBmb3IgKGNvbnN0IGtleSBpbiBjaGVja09wdHMpIHsKICAgICAgICBjb25zdCBvcHQgPSBrZXk7CiAgICAgICAgaWYgKG9wdCBpbiBvcHRpb25zKQogICAgICAgICAgdGhpcy5sb2dnZXJbbG9nXShgJHttc2d9OiBvcHRpb24gJHtrZXl9LiAke2NoZWNrT3B0c1tvcHRdfWApOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBnZXRTY2hFbnYoa2V5UmVmKSB7CiAgICAgIGtleVJlZiA9ICgwLCByZXNvbHZlXzEubm9ybWFsaXplSWQpKGtleVJlZik7CiAgICAgIHJldHVybiB0aGlzLnNjaGVtYXNba2V5UmVmXSB8fCB0aGlzLnJlZnNba2V5UmVmXTsKICAgIH0KICAgIGZ1bmN0aW9uIGFkZEluaXRpYWxTY2hlbWFzKCkgewogICAgICBjb25zdCBvcHRzU2NoZW1hcyA9IHRoaXMub3B0cy5zY2hlbWFzOwogICAgICBpZiAoIW9wdHNTY2hlbWFzKQogICAgICAgIHJldHVybjsKICAgICAgaWYgKEFycmF5LmlzQXJyYXkob3B0c1NjaGVtYXMpKQogICAgICAgIHRoaXMuYWRkU2NoZW1hKG9wdHNTY2hlbWFzKTsKICAgICAgZWxzZQogICAgICAgIGZvciAoY29uc3Qga2V5IGluIG9wdHNTY2hlbWFzKQogICAgICAgICAgdGhpcy5hZGRTY2hlbWEob3B0c1NjaGVtYXNba2V5XSwga2V5KTsKICAgIH0KICAgIGZ1bmN0aW9uIGFkZEluaXRpYWxGb3JtYXRzKCkgewogICAgICBmb3IgKGNvbnN0IG5hbWUgaW4gdGhpcy5vcHRzLmZvcm1hdHMpIHsKICAgICAgICBjb25zdCBmb3JtYXQgPSB0aGlzLm9wdHMuZm9ybWF0c1tuYW1lXTsKICAgICAgICBpZiAoZm9ybWF0KQogICAgICAgICAgdGhpcy5hZGRGb3JtYXQobmFtZSwgZm9ybWF0KTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gYWRkSW5pdGlhbEtleXdvcmRzKGRlZnMpIHsKICAgICAgaWYgKEFycmF5LmlzQXJyYXkoZGVmcykpIHsKICAgICAgICB0aGlzLmFkZFZvY2FidWxhcnkoZGVmcyk7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIHRoaXMubG9nZ2VyLndhcm4oImtleXdvcmRzIG9wdGlvbiBhcyBtYXAgaXMgZGVwcmVjYXRlZCwgcGFzcyBhcnJheSIpOwogICAgICBmb3IgKGNvbnN0IGtleXdvcmQgaW4gZGVmcykgewogICAgICAgIGNvbnN0IGRlZiA9IGRlZnNba2V5d29yZF07CiAgICAgICAgaWYgKCFkZWYua2V5d29yZCkKICAgICAgICAgIGRlZi5rZXl3b3JkID0ga2V5d29yZDsKICAgICAgICB0aGlzLmFkZEtleXdvcmQoZGVmKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gZ2V0TWV0YVNjaGVtYU9wdGlvbnMoKSB7CiAgICAgIGNvbnN0IG1ldGFPcHRzID0geyAuLi50aGlzLm9wdHMgfTsKICAgICAgZm9yIChjb25zdCBvcHQgb2YgTUVUQV9JR05PUkVfT1BUSU9OUykKICAgICAgICBkZWxldGUgbWV0YU9wdHNbb3B0XTsKICAgICAgcmV0dXJuIG1ldGFPcHRzOwogICAgfQogICAgdmFyIG5vTG9ncyA9IHsgbG9nKCkgewogICAgfSwgd2FybigpIHsKICAgIH0sIGVycm9yKCkgewogICAgfSB9OwogICAgZnVuY3Rpb24gZ2V0TG9nZ2VyKGxvZ2dlcikgewogICAgICBpZiAobG9nZ2VyID09PSBmYWxzZSkKICAgICAgICByZXR1cm4gbm9Mb2dzOwogICAgICBpZiAobG9nZ2VyID09PSB2b2lkIDApCiAgICAgICAgcmV0dXJuIGNvbnNvbGU7CiAgICAgIGlmIChsb2dnZXIubG9nICYmIGxvZ2dlci53YXJuICYmIGxvZ2dlci5lcnJvcikKICAgICAgICByZXR1cm4gbG9nZ2VyOwogICAgICB0aHJvdyBuZXcgRXJyb3IoImxvZ2dlciBtdXN0IGltcGxlbWVudCBsb2csIHdhcm4gYW5kIGVycm9yIG1ldGhvZHMiKTsKICAgIH0KICAgIHZhciBLRVlXT1JEX05BTUUgPSAvXlthLXpfJF1bYS16MC05XyQ6LV0qJC9pOwogICAgZnVuY3Rpb24gY2hlY2tLZXl3b3JkKGtleXdvcmQsIGRlZikgewogICAgICBjb25zdCB7IFJVTEVTIH0gPSB0aGlzOwogICAgICAoMCwgdXRpbF8xLmVhY2hJdGVtKShrZXl3b3JkLCAoa3dkKSA9PiB7CiAgICAgICAgaWYgKFJVTEVTLmtleXdvcmRzW2t3ZF0pCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEtleXdvcmQgJHtrd2R9IGlzIGFscmVhZHkgZGVmaW5lZGApOwogICAgICAgIGlmICghS0VZV09SRF9OQU1FLnRlc3Qoa3dkKSkKICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgS2V5d29yZCAke2t3ZH0gaGFzIGludmFsaWQgbmFtZWApOwogICAgICB9KTsKICAgICAgaWYgKCFkZWYpCiAgICAgICAgcmV0dXJuOwogICAgICBpZiAoZGVmLiRkYXRhICYmICEoImNvZGUiIGluIGRlZiB8fCAidmFsaWRhdGUiIGluIGRlZikpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJyRkYXRhIGtleXdvcmQgbXVzdCBoYXZlICJjb2RlIiBvciAidmFsaWRhdGUiIGZ1bmN0aW9uJyk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGFkZFJ1bGUoa2V5d29yZCwgZGVmaW5pdGlvbiwgZGF0YVR5cGUpIHsKICAgICAgdmFyIF9hOwogICAgICBjb25zdCBwb3N0ID0gZGVmaW5pdGlvbiA9PT0gbnVsbCB8fCBkZWZpbml0aW9uID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkZWZpbml0aW9uLnBvc3Q7CiAgICAgIGlmIChkYXRhVHlwZSAmJiBwb3N0KQogICAgICAgIHRocm93IG5ldyBFcnJvcigna2V5d29yZCB3aXRoICJwb3N0IiBmbGFnIGNhbm5vdCBoYXZlICJ0eXBlIicpOwogICAgICBjb25zdCB7IFJVTEVTIH0gPSB0aGlzOwogICAgICBsZXQgcnVsZUdyb3VwID0gcG9zdCA/IFJVTEVTLnBvc3QgOiBSVUxFUy5ydWxlcy5maW5kKCh7IHR5cGU6IHQgfSkgPT4gdCA9PT0gZGF0YVR5cGUpOwogICAgICBpZiAoIXJ1bGVHcm91cCkgewogICAgICAgIHJ1bGVHcm91cCA9IHsgdHlwZTogZGF0YVR5cGUsIHJ1bGVzOiBbXSB9OwogICAgICAgIFJVTEVTLnJ1bGVzLnB1c2gocnVsZUdyb3VwKTsKICAgICAgfQogICAgICBSVUxFUy5rZXl3b3Jkc1trZXl3b3JkXSA9IHRydWU7CiAgICAgIGlmICghZGVmaW5pdGlvbikKICAgICAgICByZXR1cm47CiAgICAgIGNvbnN0IHJ1bGUgPSB7CiAgICAgICAga2V5d29yZCwKICAgICAgICBkZWZpbml0aW9uOiB7CiAgICAgICAgICAuLi5kZWZpbml0aW9uLAogICAgICAgICAgdHlwZTogKDAsIGRhdGFUeXBlXzEuZ2V0SlNPTlR5cGVzKShkZWZpbml0aW9uLnR5cGUpLAogICAgICAgICAgc2NoZW1hVHlwZTogKDAsIGRhdGFUeXBlXzEuZ2V0SlNPTlR5cGVzKShkZWZpbml0aW9uLnNjaGVtYVR5cGUpCiAgICAgICAgfQogICAgICB9OwogICAgICBpZiAoZGVmaW5pdGlvbi5iZWZvcmUpCiAgICAgICAgYWRkQmVmb3JlUnVsZS5jYWxsKHRoaXMsIHJ1bGVHcm91cCwgcnVsZSwgZGVmaW5pdGlvbi5iZWZvcmUpOwogICAgICBlbHNlCiAgICAgICAgcnVsZUdyb3VwLnJ1bGVzLnB1c2gocnVsZSk7CiAgICAgIFJVTEVTLmFsbFtrZXl3b3JkXSA9IHJ1bGU7CiAgICAgIChfYSA9IGRlZmluaXRpb24uaW1wbGVtZW50cykgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmZvckVhY2goKGt3ZCkgPT4gdGhpcy5hZGRLZXl3b3JkKGt3ZCkpOwogICAgfQogICAgZnVuY3Rpb24gYWRkQmVmb3JlUnVsZShydWxlR3JvdXAsIHJ1bGUsIGJlZm9yZSkgewogICAgICBjb25zdCBpID0gcnVsZUdyb3VwLnJ1bGVzLmZpbmRJbmRleCgoX3J1bGUpID0+IF9ydWxlLmtleXdvcmQgPT09IGJlZm9yZSk7CiAgICAgIGlmIChpID49IDApIHsKICAgICAgICBydWxlR3JvdXAucnVsZXMuc3BsaWNlKGksIDAsIHJ1bGUpOwogICAgICB9IGVsc2UgewogICAgICAgIHJ1bGVHcm91cC5ydWxlcy5wdXNoKHJ1bGUpOwogICAgICAgIHRoaXMubG9nZ2VyLndhcm4oYHJ1bGUgJHtiZWZvcmV9IGlzIG5vdCBkZWZpbmVkYCk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGtleXdvcmRNZXRhc2NoZW1hKGRlZikgewogICAgICBsZXQgeyBtZXRhU2NoZW1hIH0gPSBkZWY7CiAgICAgIGlmIChtZXRhU2NoZW1hID09PSB2b2lkIDApCiAgICAgICAgcmV0dXJuOwogICAgICBpZiAoZGVmLiRkYXRhICYmIHRoaXMub3B0cy4kZGF0YSkKICAgICAgICBtZXRhU2NoZW1hID0gc2NoZW1hT3JEYXRhKG1ldGFTY2hlbWEpOwogICAgICBkZWYudmFsaWRhdGVTY2hlbWEgPSB0aGlzLmNvbXBpbGUobWV0YVNjaGVtYSwgdHJ1ZSk7CiAgICB9CiAgICB2YXIgJGRhdGFSZWYgPSB7CiAgICAgICRyZWY6ICJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vYWp2LXZhbGlkYXRvci9hanYvbWFzdGVyL2xpYi9yZWZzL2RhdGEuanNvbiMiCiAgICB9OwogICAgZnVuY3Rpb24gc2NoZW1hT3JEYXRhKHNjaGVtYSkgewogICAgICByZXR1cm4geyBhbnlPZjogW3NjaGVtYSwgJGRhdGFSZWZdIH07CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9jb3JlL2lkLmpzCnZhciByZXF1aXJlX2lkID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9jb3JlL2lkLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiaWQiLAogICAgICBjb2RlKCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcignTk9UIFNVUFBPUlRFRDoga2V5d29yZCAiaWQiLCB1c2UgIiRpZCIgZm9yIHNjaGVtYSBJRCcpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2NvcmUvcmVmLmpzCnZhciByZXF1aXJlX3JlZiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvY29yZS9yZWYuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNhbGxSZWYgPSBleHBvcnRzMi5nZXRWYWxpZGF0ZSA9IHZvaWQgMDsKICAgIHZhciByZWZfZXJyb3JfMSA9IHJlcXVpcmVfcmVmX2Vycm9yKCk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlMigpOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIG5hbWVzXzEgPSByZXF1aXJlX25hbWVzKCk7CiAgICB2YXIgY29tcGlsZV8xID0gcmVxdWlyZV9jb21waWxlKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiJHJlZiIsCiAgICAgIHNjaGVtYVR5cGU6ICJzdHJpbmciLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWE6ICRyZWYsIGl0IH0gPSBjeHQ7CiAgICAgICAgY29uc3QgeyBiYXNlSWQsIHNjaGVtYUVudjogZW52LCB2YWxpZGF0ZU5hbWUsIG9wdHMsIHNlbGY6IHNlbGYyIH0gPSBpdDsKICAgICAgICBjb25zdCB7IHJvb3QgfSA9IGVudjsKICAgICAgICBpZiAoKCRyZWYgPT09ICIjIiB8fCAkcmVmID09PSAiIy8iKSAmJiBiYXNlSWQgPT09IHJvb3QuYmFzZUlkKQogICAgICAgICAgcmV0dXJuIGNhbGxSb290UmVmKCk7CiAgICAgICAgY29uc3Qgc2NoT3JFbnYgPSBjb21waWxlXzEucmVzb2x2ZVJlZi5jYWxsKHNlbGYyLCByb290LCBiYXNlSWQsICRyZWYpOwogICAgICAgIGlmIChzY2hPckVudiA9PT0gdm9pZCAwKQogICAgICAgICAgdGhyb3cgbmV3IHJlZl9lcnJvcl8xLmRlZmF1bHQoaXQub3B0cy51cmlSZXNvbHZlciwgYmFzZUlkLCAkcmVmKTsKICAgICAgICBpZiAoc2NoT3JFbnYgaW5zdGFuY2VvZiBjb21waWxlXzEuU2NoZW1hRW52KQogICAgICAgICAgcmV0dXJuIGNhbGxWYWxpZGF0ZShzY2hPckVudik7CiAgICAgICAgcmV0dXJuIGlubGluZVJlZlNjaGVtYShzY2hPckVudik7CiAgICAgICAgZnVuY3Rpb24gY2FsbFJvb3RSZWYoKSB7CiAgICAgICAgICBpZiAoZW52ID09PSByb290KQogICAgICAgICAgICByZXR1cm4gY2FsbFJlZihjeHQsIHZhbGlkYXRlTmFtZSwgZW52LCBlbnYuJGFzeW5jKTsKICAgICAgICAgIGNvbnN0IHJvb3ROYW1lID0gZ2VuLnNjb3BlVmFsdWUoInJvb3QiLCB7IHJlZjogcm9vdCB9KTsKICAgICAgICAgIHJldHVybiBjYWxsUmVmKGN4dCwgKDAsIGNvZGVnZW5fMS5fKWAke3Jvb3ROYW1lfS52YWxpZGF0ZWAsIHJvb3QsIHJvb3QuJGFzeW5jKTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gY2FsbFZhbGlkYXRlKHNjaCkgewogICAgICAgICAgY29uc3QgdiA9IGdldFZhbGlkYXRlKGN4dCwgc2NoKTsKICAgICAgICAgIGNhbGxSZWYoY3h0LCB2LCBzY2gsIHNjaC4kYXN5bmMpOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBpbmxpbmVSZWZTY2hlbWEoc2NoKSB7CiAgICAgICAgICBjb25zdCBzY2hOYW1lID0gZ2VuLnNjb3BlVmFsdWUoInNjaGVtYSIsIG9wdHMuY29kZS5zb3VyY2UgPT09IHRydWUgPyB7IHJlZjogc2NoLCBjb2RlOiAoMCwgY29kZWdlbl8xLnN0cmluZ2lmeSkoc2NoKSB9IDogeyByZWY6IHNjaCB9KTsKICAgICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgICBjb25zdCBzY2hDeHQgPSBjeHQuc3Vic2NoZW1hKHsKICAgICAgICAgICAgc2NoZW1hOiBzY2gsCiAgICAgICAgICAgIGRhdGFUeXBlczogW10sCiAgICAgICAgICAgIHNjaGVtYVBhdGg6IGNvZGVnZW5fMS5uaWwsCiAgICAgICAgICAgIHRvcFNjaGVtYVJlZjogc2NoTmFtZSwKICAgICAgICAgICAgZXJyU2NoZW1hUGF0aDogJHJlZgogICAgICAgICAgfSwgdmFsaWQpOwogICAgICAgICAgY3h0Lm1lcmdlRXZhbHVhdGVkKHNjaEN4dCk7CiAgICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGZ1bmN0aW9uIGdldFZhbGlkYXRlKGN4dCwgc2NoKSB7CiAgICAgIGNvbnN0IHsgZ2VuIH0gPSBjeHQ7CiAgICAgIHJldHVybiBzY2gudmFsaWRhdGUgPyBnZW4uc2NvcGVWYWx1ZSgidmFsaWRhdGUiLCB7IHJlZjogc2NoLnZhbGlkYXRlIH0pIDogKDAsIGNvZGVnZW5fMS5fKWAke2dlbi5zY29wZVZhbHVlKCJ3cmFwcGVyIiwgeyByZWY6IHNjaCB9KX0udmFsaWRhdGVgOwogICAgfQogICAgZXhwb3J0czIuZ2V0VmFsaWRhdGUgPSBnZXRWYWxpZGF0ZTsKICAgIGZ1bmN0aW9uIGNhbGxSZWYoY3h0LCB2LCBzY2gsICRhc3luYykgewogICAgICBjb25zdCB7IGdlbiwgaXQgfSA9IGN4dDsKICAgICAgY29uc3QgeyBhbGxFcnJvcnMsIHNjaGVtYUVudjogZW52LCBvcHRzIH0gPSBpdDsKICAgICAgY29uc3QgcGFzc0N4dCA9IG9wdHMucGFzc0NvbnRleHQgPyBuYW1lc18xLmRlZmF1bHQudGhpcyA6IGNvZGVnZW5fMS5uaWw7CiAgICAgIGlmICgkYXN5bmMpCiAgICAgICAgY2FsbEFzeW5jUmVmKCk7CiAgICAgIGVsc2UKICAgICAgICBjYWxsU3luY1JlZigpOwogICAgICBmdW5jdGlvbiBjYWxsQXN5bmNSZWYoKSB7CiAgICAgICAgaWYgKCFlbnYuJGFzeW5jKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJhc3luYyBzY2hlbWEgcmVmZXJlbmNlZCBieSBzeW5jIHNjaGVtYSIpOwogICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLmxldCgidmFsaWQiKTsKICAgICAgICBnZW4udHJ5KCgpID0+IHsKICAgICAgICAgIGdlbi5jb2RlKCgwLCBjb2RlZ2VuXzEuXylgYXdhaXQgJHsoMCwgY29kZV8xLmNhbGxWYWxpZGF0ZUNvZGUpKGN4dCwgdiwgcGFzc0N4dCl9YCk7CiAgICAgICAgICBhZGRFdmFsdWF0ZWRGcm9tKHYpOwogICAgICAgICAgaWYgKCFhbGxFcnJvcnMpCiAgICAgICAgICAgIGdlbi5hc3NpZ24odmFsaWQsIHRydWUpOwogICAgICAgIH0sIChlKSA9PiB7CiAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAhKCR7ZX0gaW5zdGFuY2VvZiAke2l0LlZhbGlkYXRpb25FcnJvcn0pYCwgKCkgPT4gZ2VuLnRocm93KGUpKTsKICAgICAgICAgIGFkZEVycm9yc0Zyb20oZSk7CiAgICAgICAgICBpZiAoIWFsbEVycm9ycykKICAgICAgICAgICAgZ2VuLmFzc2lnbih2YWxpZCwgZmFsc2UpOwogICAgICAgIH0pOwogICAgICAgIGN4dC5vayh2YWxpZCk7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gY2FsbFN5bmNSZWYoKSB7CiAgICAgICAgY3h0LnJlc3VsdCgoMCwgY29kZV8xLmNhbGxWYWxpZGF0ZUNvZGUpKGN4dCwgdiwgcGFzc0N4dCksICgpID0+IGFkZEV2YWx1YXRlZEZyb20odiksICgpID0+IGFkZEVycm9yc0Zyb20odikpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGFkZEVycm9yc0Zyb20oc291cmNlKSB7CiAgICAgICAgY29uc3QgZXJycyA9ICgwLCBjb2RlZ2VuXzEuXylgJHtzb3VyY2V9LmVycm9yc2A7CiAgICAgICAgZ2VuLmFzc2lnbihuYW1lc18xLmRlZmF1bHQudkVycm9ycywgKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52RXJyb3JzfSA9PT0gbnVsbCA/ICR7ZXJyc30gOiAke25hbWVzXzEuZGVmYXVsdC52RXJyb3JzfS5jb25jYXQoJHtlcnJzfSlgKTsKICAgICAgICBnZW4uYXNzaWduKG5hbWVzXzEuZGVmYXVsdC5lcnJvcnMsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30ubGVuZ3RoYCk7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gYWRkRXZhbHVhdGVkRnJvbShzb3VyY2UpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgaWYgKCFpdC5vcHRzLnVuZXZhbHVhdGVkKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGNvbnN0IHNjaEV2YWx1YXRlZCA9IChfYSA9IHNjaCA9PT0gbnVsbCB8fCBzY2ggPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNjaC52YWxpZGF0ZSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmV2YWx1YXRlZDsKICAgICAgICBpZiAoaXQucHJvcHMgIT09IHRydWUpIHsKICAgICAgICAgIGlmIChzY2hFdmFsdWF0ZWQgJiYgIXNjaEV2YWx1YXRlZC5keW5hbWljUHJvcHMpIHsKICAgICAgICAgICAgaWYgKHNjaEV2YWx1YXRlZC5wcm9wcyAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgaXQucHJvcHMgPSB1dGlsXzEubWVyZ2VFdmFsdWF0ZWQucHJvcHMoZ2VuLCBzY2hFdmFsdWF0ZWQucHJvcHMsIGl0LnByb3BzKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgY29uc3QgcHJvcHMgPSBnZW4udmFyKCJwcm9wcyIsICgwLCBjb2RlZ2VuXzEuXylgJHtzb3VyY2V9LmV2YWx1YXRlZC5wcm9wc2ApOwogICAgICAgICAgICBpdC5wcm9wcyA9IHV0aWxfMS5tZXJnZUV2YWx1YXRlZC5wcm9wcyhnZW4sIHByb3BzLCBpdC5wcm9wcywgY29kZWdlbl8xLk5hbWUpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoaXQuaXRlbXMgIT09IHRydWUpIHsKICAgICAgICAgIGlmIChzY2hFdmFsdWF0ZWQgJiYgIXNjaEV2YWx1YXRlZC5keW5hbWljSXRlbXMpIHsKICAgICAgICAgICAgaWYgKHNjaEV2YWx1YXRlZC5pdGVtcyAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgaXQuaXRlbXMgPSB1dGlsXzEubWVyZ2VFdmFsdWF0ZWQuaXRlbXMoZ2VuLCBzY2hFdmFsdWF0ZWQuaXRlbXMsIGl0Lml0ZW1zKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgY29uc3QgaXRlbXMgPSBnZW4udmFyKCJpdGVtcyIsICgwLCBjb2RlZ2VuXzEuXylgJHtzb3VyY2V9LmV2YWx1YXRlZC5pdGVtc2ApOwogICAgICAgICAgICBpdC5pdGVtcyA9IHV0aWxfMS5tZXJnZUV2YWx1YXRlZC5pdGVtcyhnZW4sIGl0ZW1zLCBpdC5pdGVtcywgY29kZWdlbl8xLk5hbWUpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgfQogICAgZXhwb3J0czIuY2FsbFJlZiA9IGNhbGxSZWY7CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvY29yZS9pbmRleC5qcwp2YXIgcmVxdWlyZV9jb3JlMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvY29yZS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGlkXzEgPSByZXF1aXJlX2lkKCk7CiAgICB2YXIgcmVmXzEgPSByZXF1aXJlX3JlZigpOwogICAgdmFyIGNvcmUgPSBbCiAgICAgICIkc2NoZW1hIiwKICAgICAgIiRpZCIsCiAgICAgICIkZGVmcyIsCiAgICAgICIkdm9jYWJ1bGFyeSIsCiAgICAgIHsga2V5d29yZDogIiRjb21tZW50IiB9LAogICAgICAiZGVmaW5pdGlvbnMiLAogICAgICBpZF8xLmRlZmF1bHQsCiAgICAgIHJlZl8xLmRlZmF1bHQKICAgIF07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gY29yZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vbGltaXROdW1iZXIuanMKdmFyIHJlcXVpcmVfbGltaXROdW1iZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vbGltaXROdW1iZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBvcHMgPSBjb2RlZ2VuXzEub3BlcmF0b3JzOwogICAgdmFyIEtXRHMgPSB7CiAgICAgIG1heGltdW06IHsgb2tTdHI6ICI8PSIsIG9rOiBvcHMuTFRFLCBmYWlsOiBvcHMuR1QgfSwKICAgICAgbWluaW11bTogeyBva1N0cjogIj49Iiwgb2s6IG9wcy5HVEUsIGZhaWw6IG9wcy5MVCB9LAogICAgICBleGNsdXNpdmVNYXhpbXVtOiB7IG9rU3RyOiAiPCIsIG9rOiBvcHMuTFQsIGZhaWw6IG9wcy5HVEUgfSwKICAgICAgZXhjbHVzaXZlTWluaW11bTogeyBva1N0cjogIj4iLCBvazogb3BzLkdULCBmYWlsOiBvcHMuTFRFIH0KICAgIH07CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IGtleXdvcmQsIHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgYmUgJHtLV0RzW2tleXdvcmRdLm9rU3RyfSAke3NjaGVtYUNvZGV9YCwKICAgICAgcGFyYW1zOiAoeyBrZXl3b3JkLCBzY2hlbWFDb2RlIH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge2NvbXBhcmlzb246ICR7S1dEc1trZXl3b3JkXS5va1N0cn0sIGxpbWl0OiAke3NjaGVtYUNvZGV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiBPYmplY3Qua2V5cyhLV0RzKSwKICAgICAgdHlwZTogIm51bWJlciIsCiAgICAgIHNjaGVtYVR5cGU6ICJudW1iZXIiLAogICAgICAkZGF0YTogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBrZXl3b3JkLCBkYXRhLCBzY2hlbWFDb2RlIH0gPSBjeHQ7CiAgICAgICAgY3h0LmZhaWwkZGF0YSgoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0gJHtLV0RzW2tleXdvcmRdLmZhaWx9ICR7c2NoZW1hQ29kZX0gfHwgaXNOYU4oJHtkYXRhfSlgKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL211bHRpcGxlT2YuanMKdmFyIHJlcXVpcmVfbXVsdGlwbGVPZiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9tdWx0aXBsZU9mLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgYmUgbXVsdGlwbGUgb2YgJHtzY2hlbWFDb2RlfWAsCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHttdWx0aXBsZU9mOiAke3NjaGVtYUNvZGV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAibXVsdGlwbGVPZiIsCiAgICAgIHR5cGU6ICJudW1iZXIiLAogICAgICBzY2hlbWFUeXBlOiAibnVtYmVyIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCBzY2hlbWFDb2RlLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHByZWMgPSBpdC5vcHRzLm11bHRpcGxlT2ZQcmVjaXNpb247CiAgICAgICAgY29uc3QgcmVzID0gZ2VuLmxldCgicmVzIik7CiAgICAgICAgY29uc3QgaW52YWxpZCA9IHByZWMgPyAoMCwgY29kZWdlbl8xLl8pYE1hdGguYWJzKE1hdGgucm91bmQoJHtyZXN9KSAtICR7cmVzfSkgPiAxZS0ke3ByZWN9YCA6ICgwLCBjb2RlZ2VuXzEuXylgJHtyZXN9ICE9PSBwYXJzZUludCgke3Jlc30pYDsKICAgICAgICBjeHQuZmFpbCRkYXRhKCgwLCBjb2RlZ2VuXzEuXylgKCR7c2NoZW1hQ29kZX0gPT09IDAgfHwgKCR7cmVzfSA9ICR7ZGF0YX0vJHtzY2hlbWFDb2RlfSwgJHtpbnZhbGlkfSkpYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9ydW50aW1lL3VjczJsZW5ndGguanMKdmFyIHJlcXVpcmVfdWNzMmxlbmd0aCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9ydW50aW1lL3VjczJsZW5ndGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGZ1bmN0aW9uIHVjczJsZW5ndGgoc3RyKSB7CiAgICAgIGNvbnN0IGxlbiA9IHN0ci5sZW5ndGg7CiAgICAgIGxldCBsZW5ndGggPSAwOwogICAgICBsZXQgcG9zID0gMDsKICAgICAgbGV0IHZhbHVlOwogICAgICB3aGlsZSAocG9zIDwgbGVuKSB7CiAgICAgICAgbGVuZ3RoKys7CiAgICAgICAgdmFsdWUgPSBzdHIuY2hhckNvZGVBdChwb3MrKyk7CiAgICAgICAgaWYgKHZhbHVlID49IDU1Mjk2ICYmIHZhbHVlIDw9IDU2MzE5ICYmIHBvcyA8IGxlbikgewogICAgICAgICAgdmFsdWUgPSBzdHIuY2hhckNvZGVBdChwb3MpOwogICAgICAgICAgaWYgKCh2YWx1ZSAmIDY0NTEyKSA9PT0gNTYzMjApCiAgICAgICAgICAgIHBvcysrOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gbGVuZ3RoOwogICAgfQogICAgZXhwb3J0czIuZGVmYXVsdCA9IHVjczJsZW5ndGg7CiAgICB1Y3MybGVuZ3RoLmNvZGUgPSAncmVxdWlyZSgiYWp2L2Rpc3QvcnVudGltZS91Y3MybGVuZ3RoIikuZGVmYXVsdCc7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2xpbWl0TGVuZ3RoLmpzCnZhciByZXF1aXJlX2xpbWl0TGVuZ3RoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2xpbWl0TGVuZ3RoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgdWNzMmxlbmd0aF8xID0gcmVxdWlyZV91Y3MybGVuZ3RoKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2UoeyBrZXl3b3JkLCBzY2hlbWFDb2RlIH0pIHsKICAgICAgICBjb25zdCBjb21wID0ga2V5d29yZCA9PT0gIm1heExlbmd0aCIgPyAibW9yZSIgOiAiZmV3ZXIiOwogICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBOT1QgaGF2ZSAke2NvbXB9IHRoYW4gJHtzY2hlbWFDb2RlfSBjaGFyYWN0ZXJzYDsKICAgICAgfSwKICAgICAgcGFyYW1zOiAoeyBzY2hlbWFDb2RlIH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge2xpbWl0OiAke3NjaGVtYUNvZGV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiBbIm1heExlbmd0aCIsICJtaW5MZW5ndGgiXSwKICAgICAgdHlwZTogInN0cmluZyIsCiAgICAgIHNjaGVtYVR5cGU6ICJudW1iZXIiLAogICAgICAkZGF0YTogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBrZXl3b3JkLCBkYXRhLCBzY2hlbWFDb2RlLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IG9wID0ga2V5d29yZCA9PT0gIm1heExlbmd0aCIgPyBjb2RlZ2VuXzEub3BlcmF0b3JzLkdUIDogY29kZWdlbl8xLm9wZXJhdG9ycy5MVDsKICAgICAgICBjb25zdCBsZW4gPSBpdC5vcHRzLnVuaWNvZGUgPT09IGZhbHNlID8gKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9Lmxlbmd0aGAgOiAoMCwgY29kZWdlbl8xLl8pYCR7KDAsIHV0aWxfMS51c2VGdW5jKShjeHQuZ2VuLCB1Y3MybGVuZ3RoXzEuZGVmYXVsdCl9KCR7ZGF0YX0pYDsKICAgICAgICBjeHQuZmFpbCRkYXRhKCgwLCBjb2RlZ2VuXzEuXylgJHtsZW59ICR7b3B9ICR7c2NoZW1hQ29kZX1gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL3BhdHRlcm4uanMKdmFyIHJlcXVpcmVfcGF0dGVybiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9wYXR0ZXJuLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlMigpOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBzY2hlbWFDb2RlIH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IG1hdGNoIHBhdHRlcm4gIiR7c2NoZW1hQ29kZX0iYCwKICAgICAgcGFyYW1zOiAoeyBzY2hlbWFDb2RlIH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge3BhdHRlcm46ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJwYXR0ZXJuIiwKICAgICAgdHlwZTogInN0cmluZyIsCiAgICAgIHNjaGVtYVR5cGU6ICJzdHJpbmciLAogICAgICAkZGF0YTogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBkYXRhLCAkZGF0YSwgc2NoZW1hLCBzY2hlbWFDb2RlLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHUgPSBpdC5vcHRzLnVuaWNvZGVSZWdFeHAgPyAidSIgOiAiIjsKICAgICAgICBjb25zdCByZWdFeHAgPSAkZGF0YSA/ICgwLCBjb2RlZ2VuXzEuXylgKG5ldyBSZWdFeHAoJHtzY2hlbWFDb2RlfSwgJHt1fSkpYCA6ICgwLCBjb2RlXzEudXNlUGF0dGVybikoY3h0LCBzY2hlbWEpOwogICAgICAgIGN4dC5mYWlsJGRhdGEoKDAsIGNvZGVnZW5fMS5fKWAhJHtyZWdFeHB9LnRlc3QoJHtkYXRhfSlgKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2xpbWl0UHJvcGVydGllcy5qcwp2YXIgcmVxdWlyZV9saW1pdFByb3BlcnRpZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vbGltaXRQcm9wZXJ0aWVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2UoeyBrZXl3b3JkLCBzY2hlbWFDb2RlIH0pIHsKICAgICAgICBjb25zdCBjb21wID0ga2V5d29yZCA9PT0gIm1heFByb3BlcnRpZXMiID8gIm1vcmUiIDogImZld2VyIjsKICAgICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgTk9UIGhhdmUgJHtjb21wfSB0aGFuICR7c2NoZW1hQ29kZX0gcHJvcGVydGllc2A7CiAgICAgIH0sCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtsaW1pdDogJHtzY2hlbWFDb2RlfX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogWyJtYXhQcm9wZXJ0aWVzIiwgIm1pblByb3BlcnRpZXMiXSwKICAgICAgdHlwZTogIm9iamVjdCIsCiAgICAgIHNjaGVtYVR5cGU6ICJudW1iZXIiLAogICAgICAkZGF0YTogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBrZXl3b3JkLCBkYXRhLCBzY2hlbWFDb2RlIH0gPSBjeHQ7CiAgICAgICAgY29uc3Qgb3AgPSBrZXl3b3JkID09PSAibWF4UHJvcGVydGllcyIgPyBjb2RlZ2VuXzEub3BlcmF0b3JzLkdUIDogY29kZWdlbl8xLm9wZXJhdG9ycy5MVDsKICAgICAgICBjeHQuZmFpbCRkYXRhKCgwLCBjb2RlZ2VuXzEuXylgT2JqZWN0LmtleXMoJHtkYXRhfSkubGVuZ3RoICR7b3B9ICR7c2NoZW1hQ29kZX1gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL3JlcXVpcmVkLmpzCnZhciByZXF1aXJlX3JlcXVpcmVkID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL3JlcXVpcmVkLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlMigpOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBwYXJhbXM6IHsgbWlzc2luZ1Byb3BlcnR5IH0gfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgaGF2ZSByZXF1aXJlZCBwcm9wZXJ0eSAnJHttaXNzaW5nUHJvcGVydHl9J2AsCiAgICAgIHBhcmFtczogKHsgcGFyYW1zOiB7IG1pc3NpbmdQcm9wZXJ0eSB9IH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge21pc3NpbmdQcm9wZXJ0eTogJHttaXNzaW5nUHJvcGVydHl9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAicmVxdWlyZWQiLAogICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgc2NoZW1hVHlwZTogImFycmF5IiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWEsIHNjaGVtYUNvZGUsIGRhdGEsICRkYXRhLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgb3B0cyB9ID0gaXQ7CiAgICAgICAgaWYgKCEkZGF0YSAmJiBzY2hlbWEubGVuZ3RoID09PSAwKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGNvbnN0IHVzZUxvb3AgPSBzY2hlbWEubGVuZ3RoID49IG9wdHMubG9vcFJlcXVpcmVkOwogICAgICAgIGlmIChpdC5hbGxFcnJvcnMpCiAgICAgICAgICBhbGxFcnJvcnNNb2RlKCk7CiAgICAgICAgZWxzZQogICAgICAgICAgZXhpdE9uRXJyb3JNb2RlKCk7CiAgICAgICAgaWYgKG9wdHMuc3RyaWN0UmVxdWlyZWQpIHsKICAgICAgICAgIGNvbnN0IHByb3BzID0gY3h0LnBhcmVudFNjaGVtYS5wcm9wZXJ0aWVzOwogICAgICAgICAgY29uc3QgeyBkZWZpbmVkUHJvcGVydGllcyB9ID0gY3h0Lml0OwogICAgICAgICAgZm9yIChjb25zdCByZXF1aXJlZEtleSBvZiBzY2hlbWEpIHsKICAgICAgICAgICAgaWYgKChwcm9wcyA9PT0gbnVsbCB8fCBwcm9wcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogcHJvcHNbcmVxdWlyZWRLZXldKSA9PT0gdm9pZCAwICYmICFkZWZpbmVkUHJvcGVydGllcy5oYXMocmVxdWlyZWRLZXkpKSB7CiAgICAgICAgICAgICAgY29uc3Qgc2NoZW1hUGF0aCA9IGl0LnNjaGVtYUVudi5iYXNlSWQgKyBpdC5lcnJTY2hlbWFQYXRoOwogICAgICAgICAgICAgIGNvbnN0IG1zZyA9IGByZXF1aXJlZCBwcm9wZXJ0eSAiJHtyZXF1aXJlZEtleX0iIGlzIG5vdCBkZWZpbmVkIGF0ICIke3NjaGVtYVBhdGh9IiAoc3RyaWN0UmVxdWlyZWQpYDsKICAgICAgICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsIG1zZywgaXQub3B0cy5zdHJpY3RSZXF1aXJlZCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gYWxsRXJyb3JzTW9kZSgpIHsKICAgICAgICAgIGlmICh1c2VMb29wIHx8ICRkYXRhKSB7CiAgICAgICAgICAgIGN4dC5ibG9jayRkYXRhKGNvZGVnZW5fMS5uaWwsIGxvb3BBbGxSZXF1aXJlZCk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBmb3IgKGNvbnN0IHByb3Agb2Ygc2NoZW1hKSB7CiAgICAgICAgICAgICAgKDAsIGNvZGVfMS5jaGVja1JlcG9ydE1pc3NpbmdQcm9wKShjeHQsIHByb3ApOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGV4aXRPbkVycm9yTW9kZSgpIHsKICAgICAgICAgIGNvbnN0IG1pc3NpbmcgPSBnZW4ubGV0KCJtaXNzaW5nIik7CiAgICAgICAgICBpZiAodXNlTG9vcCB8fCAkZGF0YSkgewogICAgICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5sZXQoInZhbGlkIiwgdHJ1ZSk7CiAgICAgICAgICAgIGN4dC5ibG9jayRkYXRhKHZhbGlkLCAoKSA9PiBsb29wVW50aWxNaXNzaW5nKG1pc3NpbmcsIHZhbGlkKSk7CiAgICAgICAgICAgIGN4dC5vayh2YWxpZCk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVfMS5jaGVja01pc3NpbmdQcm9wKShjeHQsIHNjaGVtYSwgbWlzc2luZykpOwogICAgICAgICAgICAoMCwgY29kZV8xLnJlcG9ydE1pc3NpbmdQcm9wKShjeHQsIG1pc3NpbmcpOwogICAgICAgICAgICBnZW4uZWxzZSgpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBsb29wQWxsUmVxdWlyZWQoKSB7CiAgICAgICAgICBnZW4uZm9yT2YoInByb3AiLCBzY2hlbWFDb2RlLCAocHJvcCkgPT4gewogICAgICAgICAgICBjeHQuc2V0UGFyYW1zKHsgbWlzc2luZ1Byb3BlcnR5OiBwcm9wIH0pOwogICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVfMS5ub1Byb3BlcnR5SW5EYXRhKShnZW4sIGRhdGEsIHByb3AsIG9wdHMub3duUHJvcGVydGllcyksICgpID0+IGN4dC5lcnJvcigpKTsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBsb29wVW50aWxNaXNzaW5nKG1pc3NpbmcsIHZhbGlkKSB7CiAgICAgICAgICBjeHQuc2V0UGFyYW1zKHsgbWlzc2luZ1Byb3BlcnR5OiBtaXNzaW5nIH0pOwogICAgICAgICAgZ2VuLmZvck9mKG1pc3NpbmcsIHNjaGVtYUNvZGUsICgpID0+IHsKICAgICAgICAgICAgZ2VuLmFzc2lnbih2YWxpZCwgKDAsIGNvZGVfMS5wcm9wZXJ0eUluRGF0YSkoZ2VuLCBkYXRhLCBtaXNzaW5nLCBvcHRzLm93blByb3BlcnRpZXMpKTsKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEubm90KSh2YWxpZCksICgpID0+IHsKICAgICAgICAgICAgICBjeHQuZXJyb3IoKTsKICAgICAgICAgICAgICBnZW4uYnJlYWsoKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9LCBjb2RlZ2VuXzEubmlsKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9saW1pdEl0ZW1zLmpzCnZhciByZXF1aXJlX2xpbWl0SXRlbXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vbGltaXRJdGVtcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlKHsga2V5d29yZCwgc2NoZW1hQ29kZSB9KSB7CiAgICAgICAgY29uc3QgY29tcCA9IGtleXdvcmQgPT09ICJtYXhJdGVtcyIgPyAibW9yZSIgOiAiZmV3ZXIiOwogICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBOT1QgaGF2ZSAke2NvbXB9IHRoYW4gJHtzY2hlbWFDb2RlfSBpdGVtc2A7CiAgICAgIH0sCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtsaW1pdDogJHtzY2hlbWFDb2RlfX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogWyJtYXhJdGVtcyIsICJtaW5JdGVtcyJdLAogICAgICB0eXBlOiAiYXJyYXkiLAogICAgICBzY2hlbWFUeXBlOiAibnVtYmVyIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsga2V5d29yZCwgZGF0YSwgc2NoZW1hQ29kZSB9ID0gY3h0OwogICAgICAgIGNvbnN0IG9wID0ga2V5d29yZCA9PT0gIm1heEl0ZW1zIiA/IGNvZGVnZW5fMS5vcGVyYXRvcnMuR1QgOiBjb2RlZ2VuXzEub3BlcmF0b3JzLkxUOwogICAgICAgIGN4dC5mYWlsJGRhdGEoKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9Lmxlbmd0aCAke29wfSAke3NjaGVtYUNvZGV9YCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9ydW50aW1lL2VxdWFsLmpzCnZhciByZXF1aXJlX2VxdWFsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3J1bnRpbWUvZXF1YWwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBlcXVhbCA9IHJlcXVpcmVfZmFzdF9kZWVwX2VxdWFsKCk7CiAgICBlcXVhbC5jb2RlID0gJ3JlcXVpcmUoImFqdi9kaXN0L3J1bnRpbWUvZXF1YWwiKS5kZWZhdWx0JzsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBlcXVhbDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vdW5pcXVlSXRlbXMuanMKdmFyIHJlcXVpcmVfdW5pcXVlSXRlbXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vdW5pcXVlSXRlbXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBkYXRhVHlwZV8xID0gcmVxdWlyZV9kYXRhVHlwZSgpOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGVxdWFsXzEgPSByZXF1aXJlX2VxdWFsKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHBhcmFtczogeyBpLCBqIH0gfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgTk9UIGhhdmUgZHVwbGljYXRlIGl0ZW1zIChpdGVtcyAjIyAke2p9IGFuZCAke2l9IGFyZSBpZGVudGljYWwpYCwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXM6IHsgaSwgaiB9IH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge2k6ICR7aX0sIGo6ICR7an19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJ1bmlxdWVJdGVtcyIsCiAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgIHNjaGVtYVR5cGU6ICJib29sZWFuIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCAkZGF0YSwgc2NoZW1hLCBwYXJlbnRTY2hlbWEsIHNjaGVtYUNvZGUsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKCEkZGF0YSAmJiAhc2NoZW1hKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLmxldCgidmFsaWQiKTsKICAgICAgICBjb25zdCBpdGVtVHlwZXMgPSBwYXJlbnRTY2hlbWEuaXRlbXMgPyAoMCwgZGF0YVR5cGVfMS5nZXRTY2hlbWFUeXBlcykocGFyZW50U2NoZW1hLml0ZW1zKSA6IFtdOwogICAgICAgIGN4dC5ibG9jayRkYXRhKHZhbGlkLCB2YWxpZGF0ZVVuaXF1ZUl0ZW1zLCAoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hQ29kZX0gPT09IGZhbHNlYCk7CiAgICAgICAgY3h0Lm9rKHZhbGlkKTsKICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZVVuaXF1ZUl0ZW1zKCkgewogICAgICAgICAgY29uc3QgaSA9IGdlbi5sZXQoImkiLCAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0ubGVuZ3RoYCk7CiAgICAgICAgICBjb25zdCBqID0gZ2VuLmxldCgiaiIpOwogICAgICAgICAgY3h0LnNldFBhcmFtcyh7IGksIGogfSk7CiAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCB0cnVlKTsKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7aX0gPiAxYCwgKCkgPT4gKGNhbk9wdGltaXplKCkgPyBsb29wTiA6IGxvb3BOMikoaSwgaikpOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBjYW5PcHRpbWl6ZSgpIHsKICAgICAgICAgIHJldHVybiBpdGVtVHlwZXMubGVuZ3RoID4gMCAmJiAhaXRlbVR5cGVzLnNvbWUoKHQpID0+IHQgPT09ICJvYmplY3QiIHx8IHQgPT09ICJhcnJheSIpOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBsb29wTihpLCBqKSB7CiAgICAgICAgICBjb25zdCBpdGVtID0gZ2VuLm5hbWUoIml0ZW0iKTsKICAgICAgICAgIGNvbnN0IHdyb25nVHlwZSA9ICgwLCBkYXRhVHlwZV8xLmNoZWNrRGF0YVR5cGVzKShpdGVtVHlwZXMsIGl0ZW0sIGl0Lm9wdHMuc3RyaWN0TnVtYmVycywgZGF0YVR5cGVfMS5EYXRhVHlwZS5Xcm9uZyk7CiAgICAgICAgICBjb25zdCBpbmRpY2VzID0gZ2VuLmNvbnN0KCJpbmRpY2VzIiwgKDAsIGNvZGVnZW5fMS5fKWB7fWApOwogICAgICAgICAgZ2VuLmZvcigoMCwgY29kZWdlbl8xLl8pYDske2l9LS07YCwgKCkgPT4gewogICAgICAgICAgICBnZW4ubGV0KGl0ZW0sICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfVske2l9XWApOwogICAgICAgICAgICBnZW4uaWYod3JvbmdUeXBlLCAoMCwgY29kZWdlbl8xLl8pYGNvbnRpbnVlYCk7CiAgICAgICAgICAgIGlmIChpdGVtVHlwZXMubGVuZ3RoID4gMSkKICAgICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtpdGVtfSA9PSAic3RyaW5nImAsICgwLCBjb2RlZ2VuXzEuXylgJHtpdGVtfSArPSAiXyJgKTsKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7aW5kaWNlc31bJHtpdGVtfV0gPT0gIm51bWJlciJgLCAoKSA9PiB7CiAgICAgICAgICAgICAgZ2VuLmFzc2lnbihqLCAoMCwgY29kZWdlbl8xLl8pYCR7aW5kaWNlc31bJHtpdGVtfV1gKTsKICAgICAgICAgICAgICBjeHQuZXJyb3IoKTsKICAgICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSkuYnJlYWsoKTsKICAgICAgICAgICAgfSkuY29kZSgoMCwgY29kZWdlbl8xLl8pYCR7aW5kaWNlc31bJHtpdGVtfV0gPSAke2l9YCk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gbG9vcE4yKGksIGopIHsKICAgICAgICAgIGNvbnN0IGVxbCA9ICgwLCB1dGlsXzEudXNlRnVuYykoZ2VuLCBlcXVhbF8xLmRlZmF1bHQpOwogICAgICAgICAgY29uc3Qgb3V0ZXIgPSBnZW4ubmFtZSgib3V0ZXIiKTsKICAgICAgICAgIGdlbi5sYWJlbChvdXRlcikuZm9yKCgwLCBjb2RlZ2VuXzEuXylgOyR7aX0tLTtgLCAoKSA9PiBnZW4uZm9yKCgwLCBjb2RlZ2VuXzEuXylgJHtqfSA9ICR7aX07ICR7an0tLTtgLCAoKSA9PiBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2VxbH0oJHtkYXRhfVske2l9XSwgJHtkYXRhfVske2p9XSlgLCAoKSA9PiB7CiAgICAgICAgICAgIGN4dC5lcnJvcigpOwogICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSkuYnJlYWsob3V0ZXIpOwogICAgICAgICAgfSkpKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9jb25zdC5qcwp2YXIgcmVxdWlyZV9jb25zdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9jb25zdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGVxdWFsXzEgPSByZXF1aXJlX2VxdWFsKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICJtdXN0IGJlIGVxdWFsIHRvIGNvbnN0YW50IiwKICAgICAgcGFyYW1zOiAoeyBzY2hlbWFDb2RlIH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge2FsbG93ZWRWYWx1ZTogJHtzY2hlbWFDb2RlfX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogImNvbnN0IiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCAkZGF0YSwgc2NoZW1hQ29kZSwgc2NoZW1hIH0gPSBjeHQ7CiAgICAgICAgaWYgKCRkYXRhIHx8IHNjaGVtYSAmJiB0eXBlb2Ygc2NoZW1hID09ICJvYmplY3QiKSB7CiAgICAgICAgICBjeHQuZmFpbCRkYXRhKCgwLCBjb2RlZ2VuXzEuXylgISR7KDAsIHV0aWxfMS51c2VGdW5jKShnZW4sIGVxdWFsXzEuZGVmYXVsdCl9KCR7ZGF0YX0sICR7c2NoZW1hQ29kZX0pYCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGN4dC5mYWlsKCgwLCBjb2RlZ2VuXzEuXylgJHtzY2hlbWF9ICE9PSAke2RhdGF9YCk7CiAgICAgICAgfQogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vZW51bS5qcwp2YXIgcmVxdWlyZV9lbnVtID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2VudW0uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcXVhbF8xID0gcmVxdWlyZV9lcXVhbCgpOwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlOiAibXVzdCBiZSBlcXVhbCB0byBvbmUgb2YgdGhlIGFsbG93ZWQgdmFsdWVzIiwKICAgICAgcGFyYW1zOiAoeyBzY2hlbWFDb2RlIH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge2FsbG93ZWRWYWx1ZXM6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJlbnVtIiwKICAgICAgc2NoZW1hVHlwZTogImFycmF5IiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCAkZGF0YSwgc2NoZW1hLCBzY2hlbWFDb2RlLCBpdCB9ID0gY3h0OwogICAgICAgIGlmICghJGRhdGEgJiYgc2NoZW1hLmxlbmd0aCA9PT0gMCkKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiZW51bSBtdXN0IGhhdmUgbm9uLWVtcHR5IGFycmF5Iik7CiAgICAgICAgY29uc3QgdXNlTG9vcCA9IHNjaGVtYS5sZW5ndGggPj0gaXQub3B0cy5sb29wRW51bTsKICAgICAgICBsZXQgZXFsOwogICAgICAgIGNvbnN0IGdldEVxbCA9ICgpID0+IGVxbCAhPT0gbnVsbCAmJiBlcWwgIT09IHZvaWQgMCA/IGVxbCA6IGVxbCA9ICgwLCB1dGlsXzEudXNlRnVuYykoZ2VuLCBlcXVhbF8xLmRlZmF1bHQpOwogICAgICAgIGxldCB2YWxpZDsKICAgICAgICBpZiAodXNlTG9vcCB8fCAkZGF0YSkgewogICAgICAgICAgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIpOwogICAgICAgICAgY3h0LmJsb2NrJGRhdGEodmFsaWQsIGxvb3BFbnVtKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHNjaGVtYSkpCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiYWp2IGltcGxlbWVudGF0aW9uIGVycm9yIik7CiAgICAgICAgICBjb25zdCB2U2NoZW1hID0gZ2VuLmNvbnN0KCJ2U2NoZW1hIiwgc2NoZW1hQ29kZSk7CiAgICAgICAgICB2YWxpZCA9ICgwLCBjb2RlZ2VuXzEub3IpKC4uLnNjaGVtYS5tYXAoKF94LCBpKSA9PiBlcXVhbENvZGUodlNjaGVtYSwgaSkpKTsKICAgICAgICB9CiAgICAgICAgY3h0LnBhc3ModmFsaWQpOwogICAgICAgIGZ1bmN0aW9uIGxvb3BFbnVtKCkgewogICAgICAgICAgZ2VuLmFzc2lnbih2YWxpZCwgZmFsc2UpOwogICAgICAgICAgZ2VuLmZvck9mKCJ2Iiwgc2NoZW1hQ29kZSwgKHYpID0+IGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7Z2V0RXFsKCl9KCR7ZGF0YX0sICR7dn0pYCwgKCkgPT4gZ2VuLmFzc2lnbih2YWxpZCwgdHJ1ZSkuYnJlYWsoKSkpOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBlcXVhbENvZGUodlNjaGVtYSwgaSkgewogICAgICAgICAgY29uc3Qgc2NoID0gc2NoZW1hW2ldOwogICAgICAgICAgcmV0dXJuIHR5cGVvZiBzY2ggPT09ICJvYmplY3QiICYmIHNjaCAhPT0gbnVsbCA/ICgwLCBjb2RlZ2VuXzEuXylgJHtnZXRFcWwoKX0oJHtkYXRhfSwgJHt2U2NoZW1hfVske2l9XSlgIDogKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9ID09PSAke3NjaH1gOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2luZGV4LmpzCnZhciByZXF1aXJlX3ZhbGlkYXRpb24gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBsaW1pdE51bWJlcl8xID0gcmVxdWlyZV9saW1pdE51bWJlcigpOwogICAgdmFyIG11bHRpcGxlT2ZfMSA9IHJlcXVpcmVfbXVsdGlwbGVPZigpOwogICAgdmFyIGxpbWl0TGVuZ3RoXzEgPSByZXF1aXJlX2xpbWl0TGVuZ3RoKCk7CiAgICB2YXIgcGF0dGVybl8xID0gcmVxdWlyZV9wYXR0ZXJuKCk7CiAgICB2YXIgbGltaXRQcm9wZXJ0aWVzXzEgPSByZXF1aXJlX2xpbWl0UHJvcGVydGllcygpOwogICAgdmFyIHJlcXVpcmVkXzEgPSByZXF1aXJlX3JlcXVpcmVkKCk7CiAgICB2YXIgbGltaXRJdGVtc18xID0gcmVxdWlyZV9saW1pdEl0ZW1zKCk7CiAgICB2YXIgdW5pcXVlSXRlbXNfMSA9IHJlcXVpcmVfdW5pcXVlSXRlbXMoKTsKICAgIHZhciBjb25zdF8xID0gcmVxdWlyZV9jb25zdCgpOwogICAgdmFyIGVudW1fMSA9IHJlcXVpcmVfZW51bSgpOwogICAgdmFyIHZhbGlkYXRpb24gPSBbCiAgICAgIC8vIG51bWJlcgogICAgICBsaW1pdE51bWJlcl8xLmRlZmF1bHQsCiAgICAgIG11bHRpcGxlT2ZfMS5kZWZhdWx0LAogICAgICAvLyBzdHJpbmcKICAgICAgbGltaXRMZW5ndGhfMS5kZWZhdWx0LAogICAgICBwYXR0ZXJuXzEuZGVmYXVsdCwKICAgICAgLy8gb2JqZWN0CiAgICAgIGxpbWl0UHJvcGVydGllc18xLmRlZmF1bHQsCiAgICAgIHJlcXVpcmVkXzEuZGVmYXVsdCwKICAgICAgLy8gYXJyYXkKICAgICAgbGltaXRJdGVtc18xLmRlZmF1bHQsCiAgICAgIHVuaXF1ZUl0ZW1zXzEuZGVmYXVsdCwKICAgICAgLy8gYW55CiAgICAgIHsga2V5d29yZDogInR5cGUiLCBzY2hlbWFUeXBlOiBbInN0cmluZyIsICJhcnJheSJdIH0sCiAgICAgIHsga2V5d29yZDogIm51bGxhYmxlIiwgc2NoZW1hVHlwZTogImJvb2xlYW4iIH0sCiAgICAgIGNvbnN0XzEuZGVmYXVsdCwKICAgICAgZW51bV8xLmRlZmF1bHQKICAgIF07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gdmFsaWRhdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWRkaXRpb25hbEl0ZW1zLmpzCnZhciByZXF1aXJlX2FkZGl0aW9uYWxJdGVtcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9hZGRpdGlvbmFsSXRlbXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnZhbGlkYXRlQWRkaXRpb25hbEl0ZW1zID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBwYXJhbXM6IHsgbGVuIH0gfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgTk9UIGhhdmUgbW9yZSB0aGFuICR7bGVufSBpdGVtc2AsCiAgICAgIHBhcmFtczogKHsgcGFyYW1zOiB7IGxlbiB9IH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge2xpbWl0OiAke2xlbn19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJhZGRpdGlvbmFsSXRlbXMiLAogICAgICB0eXBlOiAiYXJyYXkiLAogICAgICBzY2hlbWFUeXBlOiBbImJvb2xlYW4iLCAib2JqZWN0Il0sCiAgICAgIGJlZm9yZTogInVuaXF1ZUl0ZW1zIiwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBwYXJlbnRTY2hlbWEsIGl0IH0gPSBjeHQ7CiAgICAgICAgY29uc3QgeyBpdGVtcyB9ID0gcGFyZW50U2NoZW1hOwogICAgICAgIGlmICghQXJyYXkuaXNBcnJheShpdGVtcykpIHsKICAgICAgICAgICgwLCB1dGlsXzEuY2hlY2tTdHJpY3RNb2RlKShpdCwgJyJhZGRpdGlvbmFsSXRlbXMiIGlzIGlnbm9yZWQgd2hlbiAiaXRlbXMiIGlzIG5vdCBhbiBhcnJheSBvZiBzY2hlbWFzJyk7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIHZhbGlkYXRlQWRkaXRpb25hbEl0ZW1zKGN4dCwgaXRlbXMpOwogICAgICB9CiAgICB9OwogICAgZnVuY3Rpb24gdmFsaWRhdGVBZGRpdGlvbmFsSXRlbXMoY3h0LCBpdGVtcykgewogICAgICBjb25zdCB7IGdlbiwgc2NoZW1hLCBkYXRhLCBrZXl3b3JkLCBpdCB9ID0gY3h0OwogICAgICBpdC5pdGVtcyA9IHRydWU7CiAgICAgIGNvbnN0IGxlbiA9IGdlbi5jb25zdCgibGVuIiwgKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9Lmxlbmd0aGApOwogICAgICBpZiAoc2NoZW1hID09PSBmYWxzZSkgewogICAgICAgIGN4dC5zZXRQYXJhbXMoeyBsZW46IGl0ZW1zLmxlbmd0aCB9KTsKICAgICAgICBjeHQucGFzcygoMCwgY29kZWdlbl8xLl8pYCR7bGVufSA8PSAke2l0ZW1zLmxlbmd0aH1gKTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2Ygc2NoZW1hID09ICJvYmplY3QiICYmICEoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hKSkgewogICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLnZhcigidmFsaWQiLCAoMCwgY29kZWdlbl8xLl8pYCR7bGVufSA8PSAke2l0ZW1zLmxlbmd0aH1gKTsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKHZhbGlkKSwgKCkgPT4gdmFsaWRhdGVJdGVtcyh2YWxpZCkpOwogICAgICAgIGN4dC5vayh2YWxpZCk7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gdmFsaWRhdGVJdGVtcyh2YWxpZCkgewogICAgICAgIGdlbi5mb3JSYW5nZSgiaSIsIGl0ZW1zLmxlbmd0aCwgbGVuLCAoaSkgPT4gewogICAgICAgICAgY3h0LnN1YnNjaGVtYSh7IGtleXdvcmQsIGRhdGFQcm9wOiBpLCBkYXRhUHJvcFR5cGU6IHV0aWxfMS5UeXBlLk51bSB9LCB2YWxpZCk7CiAgICAgICAgICBpZiAoIWl0LmFsbEVycm9ycykKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEubm90KSh2YWxpZCksICgpID0+IGdlbi5icmVhaygpKTsKICAgICAgICB9KTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIudmFsaWRhdGVBZGRpdGlvbmFsSXRlbXMgPSB2YWxpZGF0ZUFkZGl0aW9uYWxJdGVtczsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2l0ZW1zLmpzCnZhciByZXF1aXJlX2l0ZW1zID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2l0ZW1zLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi52YWxpZGF0ZVR1cGxlID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJpdGVtcyIsCiAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgIHNjaGVtYVR5cGU6IFsib2JqZWN0IiwgImFycmF5IiwgImJvb2xlYW4iXSwKICAgICAgYmVmb3JlOiAidW5pcXVlSXRlbXMiLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgc2NoZW1hLCBpdCB9ID0gY3h0OwogICAgICAgIGlmIChBcnJheS5pc0FycmF5KHNjaGVtYSkpCiAgICAgICAgICByZXR1cm4gdmFsaWRhdGVUdXBsZShjeHQsICJhZGRpdGlvbmFsSXRlbXMiLCBzY2hlbWEpOwogICAgICAgIGl0Lml0ZW1zID0gdHJ1ZTsKICAgICAgICBpZiAoKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYSkpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY3h0Lm9rKCgwLCBjb2RlXzEudmFsaWRhdGVBcnJheSkoY3h0KSk7CiAgICAgIH0KICAgIH07CiAgICBmdW5jdGlvbiB2YWxpZGF0ZVR1cGxlKGN4dCwgZXh0cmFJdGVtcywgc2NoQXJyID0gY3h0LnNjaGVtYSkgewogICAgICBjb25zdCB7IGdlbiwgcGFyZW50U2NoZW1hLCBkYXRhLCBrZXl3b3JkLCBpdCB9ID0gY3h0OwogICAgICBjaGVja1N0cmljdFR1cGxlKHBhcmVudFNjaGVtYSk7CiAgICAgIGlmIChpdC5vcHRzLnVuZXZhbHVhdGVkICYmIHNjaEFyci5sZW5ndGggJiYgaXQuaXRlbXMgIT09IHRydWUpIHsKICAgICAgICBpdC5pdGVtcyA9IHV0aWxfMS5tZXJnZUV2YWx1YXRlZC5pdGVtcyhnZW4sIHNjaEFyci5sZW5ndGgsIGl0Lml0ZW1zKTsKICAgICAgfQogICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICBjb25zdCBsZW4gPSBnZW4uY29uc3QoImxlbiIsICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGhgKTsKICAgICAgc2NoQXJyLmZvckVhY2goKHNjaCwgaSkgPT4gewogICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2xlbn0gPiAke2l9YCwgKCkgPT4gY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICBrZXl3b3JkLAogICAgICAgICAgc2NoZW1hUHJvcDogaSwKICAgICAgICAgIGRhdGFQcm9wOiBpCiAgICAgICAgfSwgdmFsaWQpKTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICB9KTsKICAgICAgZnVuY3Rpb24gY2hlY2tTdHJpY3RUdXBsZShzY2gpIHsKICAgICAgICBjb25zdCB7IG9wdHMsIGVyclNjaGVtYVBhdGggfSA9IGl0OwogICAgICAgIGNvbnN0IGwgPSBzY2hBcnIubGVuZ3RoOwogICAgICAgIGNvbnN0IGZ1bGxUdXBsZSA9IGwgPT09IHNjaC5taW5JdGVtcyAmJiAobCA9PT0gc2NoLm1heEl0ZW1zIHx8IHNjaFtleHRyYUl0ZW1zXSA9PT0gZmFsc2UpOwogICAgICAgIGlmIChvcHRzLnN0cmljdFR1cGxlcyAmJiAhZnVsbFR1cGxlKSB7CiAgICAgICAgICBjb25zdCBtc2cgPSBgIiR7a2V5d29yZH0iIGlzICR7bH0tdHVwbGUsIGJ1dCBtaW5JdGVtcyBvciBtYXhJdGVtcy8ke2V4dHJhSXRlbXN9IGFyZSBub3Qgc3BlY2lmaWVkIG9yIGRpZmZlcmVudCBhdCBwYXRoICIke2VyclNjaGVtYVBhdGh9ImA7CiAgICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsIG1zZywgb3B0cy5zdHJpY3RUdXBsZXMpOwogICAgICAgIH0KICAgICAgfQogICAgfQogICAgZXhwb3J0czIudmFsaWRhdGVUdXBsZSA9IHZhbGlkYXRlVHVwbGU7CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9wcmVmaXhJdGVtcy5qcwp2YXIgcmVxdWlyZV9wcmVmaXhJdGVtcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9wcmVmaXhJdGVtcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGl0ZW1zXzEgPSByZXF1aXJlX2l0ZW1zKCk7CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAicHJlZml4SXRlbXMiLAogICAgICB0eXBlOiAiYXJyYXkiLAogICAgICBzY2hlbWFUeXBlOiBbImFycmF5Il0sCiAgICAgIGJlZm9yZTogInVuaXF1ZUl0ZW1zIiwKICAgICAgY29kZTogKGN4dCkgPT4gKDAsIGl0ZW1zXzEudmFsaWRhdGVUdXBsZSkoY3h0LCAiaXRlbXMiKQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2l0ZW1zMjAyMC5qcwp2YXIgcmVxdWlyZV9pdGVtczIwMjAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvaXRlbXMyMDIwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlMigpOwogICAgdmFyIGFkZGl0aW9uYWxJdGVtc18xID0gcmVxdWlyZV9hZGRpdGlvbmFsSXRlbXMoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgcGFyYW1zOiB7IGxlbiB9IH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IE5PVCBoYXZlIG1vcmUgdGhhbiAke2xlbn0gaXRlbXNgLAogICAgICBwYXJhbXM6ICh7IHBhcmFtczogeyBsZW4gfSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtsaW1pdDogJHtsZW59fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiaXRlbXMiLAogICAgICB0eXBlOiAiYXJyYXkiLAogICAgICBzY2hlbWFUeXBlOiBbIm9iamVjdCIsICJib29sZWFuIl0sCiAgICAgIGJlZm9yZTogInVuaXF1ZUl0ZW1zIiwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBzY2hlbWEsIHBhcmVudFNjaGVtYSwgaXQgfSA9IGN4dDsKICAgICAgICBjb25zdCB7IHByZWZpeEl0ZW1zIH0gPSBwYXJlbnRTY2hlbWE7CiAgICAgICAgaXQuaXRlbXMgPSB0cnVlOwogICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBpZiAocHJlZml4SXRlbXMpCiAgICAgICAgICAoMCwgYWRkaXRpb25hbEl0ZW1zXzEudmFsaWRhdGVBZGRpdGlvbmFsSXRlbXMpKGN4dCwgcHJlZml4SXRlbXMpOwogICAgICAgIGVsc2UKICAgICAgICAgIGN4dC5vaygoMCwgY29kZV8xLnZhbGlkYXRlQXJyYXkpKGN4dCkpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvY29udGFpbnMuanMKdmFyIHJlcXVpcmVfY29udGFpbnMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvY29udGFpbnMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgcGFyYW1zOiB7IG1pbiwgbWF4IH0gfSkgPT4gbWF4ID09PSB2b2lkIDAgPyAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBjb250YWluIGF0IGxlYXN0ICR7bWlufSB2YWxpZCBpdGVtKHMpYCA6ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IGNvbnRhaW4gYXQgbGVhc3QgJHttaW59IGFuZCBubyBtb3JlIHRoYW4gJHttYXh9IHZhbGlkIGl0ZW0ocylgLAogICAgICBwYXJhbXM6ICh7IHBhcmFtczogeyBtaW4sIG1heCB9IH0pID0+IG1heCA9PT0gdm9pZCAwID8gKDAsIGNvZGVnZW5fMS5fKWB7bWluQ29udGFpbnM6ICR7bWlufX1gIDogKDAsIGNvZGVnZW5fMS5fKWB7bWluQ29udGFpbnM6ICR7bWlufSwgbWF4Q29udGFpbnM6ICR7bWF4fX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogImNvbnRhaW5zIiwKICAgICAgdHlwZTogImFycmF5IiwKICAgICAgc2NoZW1hVHlwZTogWyJvYmplY3QiLCAiYm9vbGVhbiJdLAogICAgICBiZWZvcmU6ICJ1bmlxdWVJdGVtcyIsCiAgICAgIHRyYWNrRXJyb3JzOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgc2NoZW1hLCBwYXJlbnRTY2hlbWEsIGRhdGEsIGl0IH0gPSBjeHQ7CiAgICAgICAgbGV0IG1pbjsKICAgICAgICBsZXQgbWF4OwogICAgICAgIGNvbnN0IHsgbWluQ29udGFpbnMsIG1heENvbnRhaW5zIH0gPSBwYXJlbnRTY2hlbWE7CiAgICAgICAgaWYgKGl0Lm9wdHMubmV4dCkgewogICAgICAgICAgbWluID0gbWluQ29udGFpbnMgPT09IHZvaWQgMCA/IDEgOiBtaW5Db250YWluczsKICAgICAgICAgIG1heCA9IG1heENvbnRhaW5zOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBtaW4gPSAxOwogICAgICAgIH0KICAgICAgICBjb25zdCBsZW4gPSBnZW4uY29uc3QoImxlbiIsICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGhgKTsKICAgICAgICBjeHQuc2V0UGFyYW1zKHsgbWluLCBtYXggfSk7CiAgICAgICAgaWYgKG1heCA9PT0gdm9pZCAwICYmIG1pbiA9PT0gMCkgewogICAgICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCBgIm1pbkNvbnRhaW5zIiA9PSAwIHdpdGhvdXQgIm1heENvbnRhaW5zIjogImNvbnRhaW5zIiBrZXl3b3JkIGlnbm9yZWRgKTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgaWYgKG1heCAhPT0gdm9pZCAwICYmIG1pbiA+IG1heCkgewogICAgICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCBgIm1pbkNvbnRhaW5zIiA+ICJtYXhDb250YWlucyIgaXMgYWx3YXlzIGludmFsaWRgKTsKICAgICAgICAgIGN4dC5mYWlsKCk7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hKSkgewogICAgICAgICAgbGV0IGNvbmQgPSAoMCwgY29kZWdlbl8xLl8pYCR7bGVufSA+PSAke21pbn1gOwogICAgICAgICAgaWYgKG1heCAhPT0gdm9pZCAwKQogICAgICAgICAgICBjb25kID0gKDAsIGNvZGVnZW5fMS5fKWAke2NvbmR9ICYmICR7bGVufSA8PSAke21heH1gOwogICAgICAgICAgY3h0LnBhc3MoY29uZCk7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGl0Lml0ZW1zID0gdHJ1ZTsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICAgIGlmIChtYXggPT09IHZvaWQgMCAmJiBtaW4gPT09IDEpIHsKICAgICAgICAgIHZhbGlkYXRlSXRlbXModmFsaWQsICgpID0+IGdlbi5pZih2YWxpZCwgKCkgPT4gZ2VuLmJyZWFrKCkpKTsKICAgICAgICB9IGVsc2UgaWYgKG1pbiA9PT0gMCkgewogICAgICAgICAgZ2VuLmxldCh2YWxpZCwgdHJ1ZSk7CiAgICAgICAgICBpZiAobWF4ICE9PSB2b2lkIDApCiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0ubGVuZ3RoID4gMGAsIHZhbGlkYXRlSXRlbXNXaXRoQ291bnQpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBnZW4ubGV0KHZhbGlkLCBmYWxzZSk7CiAgICAgICAgICB2YWxpZGF0ZUl0ZW1zV2l0aENvdW50KCk7CiAgICAgICAgfQogICAgICAgIGN4dC5yZXN1bHQodmFsaWQsICgpID0+IGN4dC5yZXNldCgpKTsKICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZUl0ZW1zV2l0aENvdW50KCkgewogICAgICAgICAgY29uc3Qgc2NoVmFsaWQgPSBnZW4ubmFtZSgiX3ZhbGlkIik7CiAgICAgICAgICBjb25zdCBjb3VudCA9IGdlbi5sZXQoImNvdW50IiwgMCk7CiAgICAgICAgICB2YWxpZGF0ZUl0ZW1zKHNjaFZhbGlkLCAoKSA9PiBnZW4uaWYoc2NoVmFsaWQsICgpID0+IGNoZWNrTGltaXRzKGNvdW50KSkpOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZUl0ZW1zKF92YWxpZCwgYmxvY2spIHsKICAgICAgICAgIGdlbi5mb3JSYW5nZSgiaSIsIDAsIGxlbiwgKGkpID0+IHsKICAgICAgICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgICAga2V5d29yZDogImNvbnRhaW5zIiwKICAgICAgICAgICAgICBkYXRhUHJvcDogaSwKICAgICAgICAgICAgICBkYXRhUHJvcFR5cGU6IHV0aWxfMS5UeXBlLk51bSwKICAgICAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlCiAgICAgICAgICAgIH0sIF92YWxpZCk7CiAgICAgICAgICAgIGJsb2NrKCk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gY2hlY2tMaW1pdHMoY291bnQpIHsKICAgICAgICAgIGdlbi5jb2RlKCgwLCBjb2RlZ2VuXzEuXylgJHtjb3VudH0rK2ApOwogICAgICAgICAgaWYgKG1heCA9PT0gdm9pZCAwKSB7CiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7Y291bnR9ID49ICR7bWlufWAsICgpID0+IGdlbi5hc3NpZ24odmFsaWQsIHRydWUpLmJyZWFrKCkpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtjb3VudH0gPiAke21heH1gLCAoKSA9PiBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSkuYnJlYWsoKSk7CiAgICAgICAgICAgIGlmIChtaW4gPT09IDEpCiAgICAgICAgICAgICAgZ2VuLmFzc2lnbih2YWxpZCwgdHJ1ZSk7CiAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2NvdW50fSA+PSAke21pbn1gLCAoKSA9PiBnZW4uYXNzaWduKHZhbGlkLCB0cnVlKSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvZGVwZW5kZW5jaWVzLmpzCnZhciByZXF1aXJlX2RlcGVuZGVuY2llcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9kZXBlbmRlbmNpZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnZhbGlkYXRlU2NoZW1hRGVwcyA9IGV4cG9ydHMyLnZhbGlkYXRlUHJvcGVydHlEZXBzID0gZXhwb3J0czIuZXJyb3IgPSB2b2lkIDA7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlMigpOwogICAgZXhwb3J0czIuZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHBhcmFtczogeyBwcm9wZXJ0eSwgZGVwc0NvdW50LCBkZXBzIH0gfSkgPT4gewogICAgICAgIGNvbnN0IHByb3BlcnR5X2llcyA9IGRlcHNDb3VudCA9PT0gMSA/ICJwcm9wZXJ0eSIgOiAicHJvcGVydGllcyI7CiAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IGhhdmUgJHtwcm9wZXJ0eV9pZXN9ICR7ZGVwc30gd2hlbiBwcm9wZXJ0eSAke3Byb3BlcnR5fSBpcyBwcmVzZW50YDsKICAgICAgfSwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXM6IHsgcHJvcGVydHksIGRlcHNDb3VudCwgZGVwcywgbWlzc2luZ1Byb3BlcnR5IH0gfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7cHJvcGVydHk6ICR7cHJvcGVydHl9LAogICAgbWlzc2luZ1Byb3BlcnR5OiAke21pc3NpbmdQcm9wZXJ0eX0sCiAgICBkZXBzQ291bnQ6ICR7ZGVwc0NvdW50fSwKICAgIGRlcHM6ICR7ZGVwc319YAogICAgICAvLyBUT0RPIGNoYW5nZSB0byByZWZlcmVuY2UKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiZGVwZW5kZW5jaWVzIiwKICAgICAgdHlwZTogIm9iamVjdCIsCiAgICAgIHNjaGVtYVR5cGU6ICJvYmplY3QiLAogICAgICBlcnJvcjogZXhwb3J0czIuZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgW3Byb3BEZXBzLCBzY2hEZXBzXSA9IHNwbGl0RGVwZW5kZW5jaWVzKGN4dCk7CiAgICAgICAgdmFsaWRhdGVQcm9wZXJ0eURlcHMoY3h0LCBwcm9wRGVwcyk7CiAgICAgICAgdmFsaWRhdGVTY2hlbWFEZXBzKGN4dCwgc2NoRGVwcyk7CiAgICAgIH0KICAgIH07CiAgICBmdW5jdGlvbiBzcGxpdERlcGVuZGVuY2llcyh7IHNjaGVtYSB9KSB7CiAgICAgIGNvbnN0IHByb3BlcnR5RGVwcyA9IHt9OwogICAgICBjb25zdCBzY2hlbWFEZXBzID0ge307CiAgICAgIGZvciAoY29uc3Qga2V5IGluIHNjaGVtYSkgewogICAgICAgIGlmIChrZXkgPT09ICJfX3Byb3RvX18iKQogICAgICAgICAgY29udGludWU7CiAgICAgICAgY29uc3QgZGVwcyA9IEFycmF5LmlzQXJyYXkoc2NoZW1hW2tleV0pID8gcHJvcGVydHlEZXBzIDogc2NoZW1hRGVwczsKICAgICAgICBkZXBzW2tleV0gPSBzY2hlbWFba2V5XTsKICAgICAgfQogICAgICByZXR1cm4gW3Byb3BlcnR5RGVwcywgc2NoZW1hRGVwc107CiAgICB9CiAgICBmdW5jdGlvbiB2YWxpZGF0ZVByb3BlcnR5RGVwcyhjeHQsIHByb3BlcnR5RGVwcyA9IGN4dC5zY2hlbWEpIHsKICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIGl0IH0gPSBjeHQ7CiAgICAgIGlmIChPYmplY3Qua2V5cyhwcm9wZXJ0eURlcHMpLmxlbmd0aCA9PT0gMCkKICAgICAgICByZXR1cm47CiAgICAgIGNvbnN0IG1pc3NpbmcgPSBnZW4ubGV0KCJtaXNzaW5nIik7CiAgICAgIGZvciAoY29uc3QgcHJvcCBpbiBwcm9wZXJ0eURlcHMpIHsKICAgICAgICBjb25zdCBkZXBzID0gcHJvcGVydHlEZXBzW3Byb3BdOwogICAgICAgIGlmIChkZXBzLmxlbmd0aCA9PT0gMCkKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIGNvbnN0IGhhc1Byb3BlcnR5ID0gKDAsIGNvZGVfMS5wcm9wZXJ0eUluRGF0YSkoZ2VuLCBkYXRhLCBwcm9wLCBpdC5vcHRzLm93blByb3BlcnRpZXMpOwogICAgICAgIGN4dC5zZXRQYXJhbXMoewogICAgICAgICAgcHJvcGVydHk6IHByb3AsCiAgICAgICAgICBkZXBzQ291bnQ6IGRlcHMubGVuZ3RoLAogICAgICAgICAgZGVwczogZGVwcy5qb2luKCIsICIpCiAgICAgICAgfSk7CiAgICAgICAgaWYgKGl0LmFsbEVycm9ycykgewogICAgICAgICAgZ2VuLmlmKGhhc1Byb3BlcnR5LCAoKSA9PiB7CiAgICAgICAgICAgIGZvciAoY29uc3QgZGVwUHJvcCBvZiBkZXBzKSB7CiAgICAgICAgICAgICAgKDAsIGNvZGVfMS5jaGVja1JlcG9ydE1pc3NpbmdQcm9wKShjeHQsIGRlcFByb3ApOwogICAgICAgICAgICB9CiAgICAgICAgICB9KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtoYXNQcm9wZXJ0eX0gJiYgKCR7KDAsIGNvZGVfMS5jaGVja01pc3NpbmdQcm9wKShjeHQsIGRlcHMsIG1pc3NpbmcpfSlgKTsKICAgICAgICAgICgwLCBjb2RlXzEucmVwb3J0TWlzc2luZ1Byb3ApKGN4dCwgbWlzc2luZyk7CiAgICAgICAgICBnZW4uZWxzZSgpOwogICAgICAgIH0KICAgICAgfQogICAgfQogICAgZXhwb3J0czIudmFsaWRhdGVQcm9wZXJ0eURlcHMgPSB2YWxpZGF0ZVByb3BlcnR5RGVwczsKICAgIGZ1bmN0aW9uIHZhbGlkYXRlU2NoZW1hRGVwcyhjeHQsIHNjaGVtYURlcHMgPSBjeHQuc2NoZW1hKSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCBrZXl3b3JkLCBpdCB9ID0gY3h0OwogICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICBmb3IgKGNvbnN0IHByb3AgaW4gc2NoZW1hRGVwcykgewogICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hRGVwc1twcm9wXSkpCiAgICAgICAgICBjb250aW51ZTsKICAgICAgICBnZW4uaWYoCiAgICAgICAgICAoMCwgY29kZV8xLnByb3BlcnR5SW5EYXRhKShnZW4sIGRhdGEsIHByb3AsIGl0Lm9wdHMub3duUHJvcGVydGllcyksCiAgICAgICAgICAoKSA9PiB7CiAgICAgICAgICAgIGNvbnN0IHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoeyBrZXl3b3JkLCBzY2hlbWFQcm9wOiBwcm9wIH0sIHZhbGlkKTsKICAgICAgICAgICAgY3h0Lm1lcmdlVmFsaWRFdmFsdWF0ZWQoc2NoQ3h0LCB2YWxpZCk7CiAgICAgICAgICB9LAogICAgICAgICAgKCkgPT4gZ2VuLnZhcih2YWxpZCwgdHJ1ZSkKICAgICAgICAgIC8vIFRPRE8gdmFyCiAgICAgICAgKTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi52YWxpZGF0ZVNjaGVtYURlcHMgPSB2YWxpZGF0ZVNjaGVtYURlcHM7CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9wcm9wZXJ0eU5hbWVzLmpzCnZhciByZXF1aXJlX3Byb3BlcnR5TmFtZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvcHJvcGVydHlOYW1lcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlOiAicHJvcGVydHkgbmFtZSBtdXN0IGJlIHZhbGlkIiwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXMgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7cHJvcGVydHlOYW1lOiAke3BhcmFtcy5wcm9wZXJ0eU5hbWV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAicHJvcGVydHlOYW1lcyIsCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICBzY2hlbWFUeXBlOiBbIm9iamVjdCIsICJib29sZWFuIl0sCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWEsIGRhdGEsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKCgwLCB1dGlsXzEuYWx3YXlzVmFsaWRTY2hlbWEpKGl0LCBzY2hlbWEpKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgZ2VuLmZvckluKCJrZXkiLCBkYXRhLCAoa2V5KSA9PiB7CiAgICAgICAgICBjeHQuc2V0UGFyYW1zKHsgcHJvcGVydHlOYW1lOiBrZXkgfSk7CiAgICAgICAgICBjeHQuc3Vic2NoZW1hKHsKICAgICAgICAgICAga2V5d29yZDogInByb3BlcnR5TmFtZXMiLAogICAgICAgICAgICBkYXRhOiBrZXksCiAgICAgICAgICAgIGRhdGFUeXBlczogWyJzdHJpbmciXSwKICAgICAgICAgICAgcHJvcGVydHlOYW1lOiBrZXksCiAgICAgICAgICAgIGNvbXBvc2l0ZVJ1bGU6IHRydWUKICAgICAgICAgIH0sIHZhbGlkKTsKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkodmFsaWQpLCAoKSA9PiB7CiAgICAgICAgICAgIGN4dC5lcnJvcih0cnVlKTsKICAgICAgICAgICAgaWYgKCFpdC5hbGxFcnJvcnMpCiAgICAgICAgICAgICAgZ2VuLmJyZWFrKCk7CiAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWRkaXRpb25hbFByb3BlcnRpZXMuanMKdmFyIHJlcXVpcmVfYWRkaXRpb25hbFByb3BlcnRpZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWRkaXRpb25hbFByb3BlcnRpZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlXzEgPSByZXF1aXJlX2NvZGUyKCk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgbmFtZXNfMSA9IHJlcXVpcmVfbmFtZXMoKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogIm11c3QgTk9UIGhhdmUgYWRkaXRpb25hbCBwcm9wZXJ0aWVzIiwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXMgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7YWRkaXRpb25hbFByb3BlcnR5OiAke3BhcmFtcy5hZGRpdGlvbmFsUHJvcGVydHl9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiYWRkaXRpb25hbFByb3BlcnRpZXMiLAogICAgICB0eXBlOiBbIm9iamVjdCJdLAogICAgICBzY2hlbWFUeXBlOiBbImJvb2xlYW4iLCAib2JqZWN0Il0sCiAgICAgIGFsbG93VW5kZWZpbmVkOiB0cnVlLAogICAgICB0cmFja0Vycm9yczogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYSwgcGFyZW50U2NoZW1hLCBkYXRhLCBlcnJzQ291bnQsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKCFlcnJzQ291bnQpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICAgIGNvbnN0IHsgYWxsRXJyb3JzLCBvcHRzIH0gPSBpdDsKICAgICAgICBpdC5wcm9wcyA9IHRydWU7CiAgICAgICAgaWYgKG9wdHMucmVtb3ZlQWRkaXRpb25hbCAhPT0gImFsbCIgJiYgKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYSkpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgcHJvcHMgPSAoMCwgY29kZV8xLmFsbFNjaGVtYVByb3BlcnRpZXMpKHBhcmVudFNjaGVtYS5wcm9wZXJ0aWVzKTsKICAgICAgICBjb25zdCBwYXRQcm9wcyA9ICgwLCBjb2RlXzEuYWxsU2NoZW1hUHJvcGVydGllcykocGFyZW50U2NoZW1hLnBhdHRlcm5Qcm9wZXJ0aWVzKTsKICAgICAgICBjaGVja0FkZGl0aW9uYWxQcm9wZXJ0aWVzKCk7CiAgICAgICAgY3h0Lm9rKCgwLCBjb2RlZ2VuXzEuXylgJHtlcnJzQ291bnR9ID09PSAke25hbWVzXzEuZGVmYXVsdC5lcnJvcnN9YCk7CiAgICAgICAgZnVuY3Rpb24gY2hlY2tBZGRpdGlvbmFsUHJvcGVydGllcygpIHsKICAgICAgICAgIGdlbi5mb3JJbigia2V5IiwgZGF0YSwgKGtleSkgPT4gewogICAgICAgICAgICBpZiAoIXByb3BzLmxlbmd0aCAmJiAhcGF0UHJvcHMubGVuZ3RoKQogICAgICAgICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0eUNvZGUoa2V5KTsKICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgIGdlbi5pZihpc0FkZGl0aW9uYWwoa2V5KSwgKCkgPT4gYWRkaXRpb25hbFByb3BlcnR5Q29kZShrZXkpKTsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBpc0FkZGl0aW9uYWwoa2V5KSB7CiAgICAgICAgICBsZXQgZGVmaW5lZFByb3A7CiAgICAgICAgICBpZiAocHJvcHMubGVuZ3RoID4gOCkgewogICAgICAgICAgICBjb25zdCBwcm9wc1NjaGVtYSA9ICgwLCB1dGlsXzEuc2NoZW1hUmVmT3JWYWwpKGl0LCBwYXJlbnRTY2hlbWEucHJvcGVydGllcywgInByb3BlcnRpZXMiKTsKICAgICAgICAgICAgZGVmaW5lZFByb3AgPSAoMCwgY29kZV8xLmlzT3duUHJvcGVydHkpKGdlbiwgcHJvcHNTY2hlbWEsIGtleSk7CiAgICAgICAgICB9IGVsc2UgaWYgKHByb3BzLmxlbmd0aCkgewogICAgICAgICAgICBkZWZpbmVkUHJvcCA9ICgwLCBjb2RlZ2VuXzEub3IpKC4uLnByb3BzLm1hcCgocCkgPT4gKDAsIGNvZGVnZW5fMS5fKWAke2tleX0gPT09ICR7cH1gKSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBkZWZpbmVkUHJvcCA9IGNvZGVnZW5fMS5uaWw7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAocGF0UHJvcHMubGVuZ3RoKSB7CiAgICAgICAgICAgIGRlZmluZWRQcm9wID0gKDAsIGNvZGVnZW5fMS5vcikoZGVmaW5lZFByb3AsIC4uLnBhdFByb3BzLm1hcCgocCkgPT4gKDAsIGNvZGVnZW5fMS5fKWAkeygwLCBjb2RlXzEudXNlUGF0dGVybikoY3h0LCBwKX0udGVzdCgke2tleX0pYCkpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEubm90KShkZWZpbmVkUHJvcCk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGRlbGV0ZUFkZGl0aW9uYWwoa2V5KSB7CiAgICAgICAgICBnZW4uY29kZSgoMCwgY29kZWdlbl8xLl8pYGRlbGV0ZSAke2RhdGF9WyR7a2V5fV1gKTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gYWRkaXRpb25hbFByb3BlcnR5Q29kZShrZXkpIHsKICAgICAgICAgIGlmIChvcHRzLnJlbW92ZUFkZGl0aW9uYWwgPT09ICJhbGwiIHx8IG9wdHMucmVtb3ZlQWRkaXRpb25hbCAmJiBzY2hlbWEgPT09IGZhbHNlKSB7CiAgICAgICAgICAgIGRlbGV0ZUFkZGl0aW9uYWwoa2V5KTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHNjaGVtYSA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgY3h0LnNldFBhcmFtcyh7IGFkZGl0aW9uYWxQcm9wZXJ0eToga2V5IH0pOwogICAgICAgICAgICBjeHQuZXJyb3IoKTsKICAgICAgICAgICAgaWYgKCFhbGxFcnJvcnMpCiAgICAgICAgICAgICAgZ2VuLmJyZWFrKCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hID09ICJvYmplY3QiICYmICEoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hKSkgewogICAgICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICAgICAgICBpZiAob3B0cy5yZW1vdmVBZGRpdGlvbmFsID09PSAiZmFpbGluZyIpIHsKICAgICAgICAgICAgICBhcHBseUFkZGl0aW9uYWxTY2hlbWEoa2V5LCB2YWxpZCwgZmFsc2UpOwogICAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkodmFsaWQpLCAoKSA9PiB7CiAgICAgICAgICAgICAgICBjeHQucmVzZXQoKTsKICAgICAgICAgICAgICAgIGRlbGV0ZUFkZGl0aW9uYWwoa2V5KTsKICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBhcHBseUFkZGl0aW9uYWxTY2hlbWEoa2V5LCB2YWxpZCk7CiAgICAgICAgICAgICAgaWYgKCFhbGxFcnJvcnMpCiAgICAgICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKHZhbGlkKSwgKCkgPT4gZ2VuLmJyZWFrKCkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGFwcGx5QWRkaXRpb25hbFNjaGVtYShrZXksIHZhbGlkLCBlcnJvcnMpIHsKICAgICAgICAgIGNvbnN0IHN1YnNjaGVtYSA9IHsKICAgICAgICAgICAga2V5d29yZDogImFkZGl0aW9uYWxQcm9wZXJ0aWVzIiwKICAgICAgICAgICAgZGF0YVByb3A6IGtleSwKICAgICAgICAgICAgZGF0YVByb3BUeXBlOiB1dGlsXzEuVHlwZS5TdHIKICAgICAgICAgIH07CiAgICAgICAgICBpZiAoZXJyb3JzID09PSBmYWxzZSkgewogICAgICAgICAgICBPYmplY3QuYXNzaWduKHN1YnNjaGVtYSwgewogICAgICAgICAgICAgIGNvbXBvc2l0ZVJ1bGU6IHRydWUsCiAgICAgICAgICAgICAgY3JlYXRlRXJyb3JzOiBmYWxzZSwKICAgICAgICAgICAgICBhbGxFcnJvcnM6IGZhbHNlCiAgICAgICAgICAgIH0pOwogICAgICAgICAgfQogICAgICAgICAgY3h0LnN1YnNjaGVtYShzdWJzY2hlbWEsIHZhbGlkKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9wcm9wZXJ0aWVzLmpzCnZhciByZXF1aXJlX3Byb3BlcnRpZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvcHJvcGVydGllcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIHZhbGlkYXRlXzEgPSByZXF1aXJlX3ZhbGlkYXRlKCk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlMigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGFkZGl0aW9uYWxQcm9wZXJ0aWVzXzEgPSByZXF1aXJlX2FkZGl0aW9uYWxQcm9wZXJ0aWVzKCk7CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAicHJvcGVydGllcyIsCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICBzY2hlbWFUeXBlOiAib2JqZWN0IiwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgc2NoZW1hLCBwYXJlbnRTY2hlbWEsIGRhdGEsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKGl0Lm9wdHMucmVtb3ZlQWRkaXRpb25hbCA9PT0gImFsbCIgJiYgcGFyZW50U2NoZW1hLmFkZGl0aW9uYWxQcm9wZXJ0aWVzID09PSB2b2lkIDApIHsKICAgICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzXzEuZGVmYXVsdC5jb2RlKG5ldyB2YWxpZGF0ZV8xLktleXdvcmRDeHQoaXQsIGFkZGl0aW9uYWxQcm9wZXJ0aWVzXzEuZGVmYXVsdCwgImFkZGl0aW9uYWxQcm9wZXJ0aWVzIikpOwogICAgICAgIH0KICAgICAgICBjb25zdCBhbGxQcm9wcyA9ICgwLCBjb2RlXzEuYWxsU2NoZW1hUHJvcGVydGllcykoc2NoZW1hKTsKICAgICAgICBmb3IgKGNvbnN0IHByb3Agb2YgYWxsUHJvcHMpIHsKICAgICAgICAgIGl0LmRlZmluZWRQcm9wZXJ0aWVzLmFkZChwcm9wKTsKICAgICAgICB9CiAgICAgICAgaWYgKGl0Lm9wdHMudW5ldmFsdWF0ZWQgJiYgYWxsUHJvcHMubGVuZ3RoICYmIGl0LnByb3BzICE9PSB0cnVlKSB7CiAgICAgICAgICBpdC5wcm9wcyA9IHV0aWxfMS5tZXJnZUV2YWx1YXRlZC5wcm9wcyhnZW4sICgwLCB1dGlsXzEudG9IYXNoKShhbGxQcm9wcyksIGl0LnByb3BzKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgcHJvcGVydGllcyA9IGFsbFByb3BzLmZpbHRlcigocCkgPT4gISgwLCB1dGlsXzEuYWx3YXlzVmFsaWRTY2hlbWEpKGl0LCBzY2hlbWFbcF0pKTsKICAgICAgICBpZiAocHJvcGVydGllcy5sZW5ndGggPT09IDApCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubmFtZSgidmFsaWQiKTsKICAgICAgICBmb3IgKGNvbnN0IHByb3Agb2YgcHJvcGVydGllcykgewogICAgICAgICAgaWYgKGhhc0RlZmF1bHQocHJvcCkpIHsKICAgICAgICAgICAgYXBwbHlQcm9wZXJ0eVNjaGVtYShwcm9wKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZV8xLnByb3BlcnR5SW5EYXRhKShnZW4sIGRhdGEsIHByb3AsIGl0Lm9wdHMub3duUHJvcGVydGllcykpOwogICAgICAgICAgICBhcHBseVByb3BlcnR5U2NoZW1hKHByb3ApOwogICAgICAgICAgICBpZiAoIWl0LmFsbEVycm9ycykKICAgICAgICAgICAgICBnZW4uZWxzZSgpLnZhcih2YWxpZCwgdHJ1ZSk7CiAgICAgICAgICAgIGdlbi5lbmRJZigpOwogICAgICAgICAgfQogICAgICAgICAgY3h0Lml0LmRlZmluZWRQcm9wZXJ0aWVzLmFkZChwcm9wKTsKICAgICAgICAgIGN4dC5vayh2YWxpZCk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGhhc0RlZmF1bHQocHJvcCkgewogICAgICAgICAgcmV0dXJuIGl0Lm9wdHMudXNlRGVmYXVsdHMgJiYgIWl0LmNvbXBvc2l0ZVJ1bGUgJiYgc2NoZW1hW3Byb3BdLmRlZmF1bHQgIT09IHZvaWQgMDsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gYXBwbHlQcm9wZXJ0eVNjaGVtYShwcm9wKSB7CiAgICAgICAgICBjeHQuc3Vic2NoZW1hKHsKICAgICAgICAgICAga2V5d29yZDogInByb3BlcnRpZXMiLAogICAgICAgICAgICBzY2hlbWFQcm9wOiBwcm9wLAogICAgICAgICAgICBkYXRhUHJvcDogcHJvcAogICAgICAgICAgfSwgdmFsaWQpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3BhdHRlcm5Qcm9wZXJ0aWVzLmpzCnZhciByZXF1aXJlX3BhdHRlcm5Qcm9wZXJ0aWVzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3BhdHRlcm5Qcm9wZXJ0aWVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlMigpOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIHV0aWxfMiA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogInBhdHRlcm5Qcm9wZXJ0aWVzIiwKICAgICAgdHlwZTogIm9iamVjdCIsCiAgICAgIHNjaGVtYVR5cGU6ICJvYmplY3QiLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWEsIGRhdGEsIHBhcmVudFNjaGVtYSwgaXQgfSA9IGN4dDsKICAgICAgICBjb25zdCB7IG9wdHMgfSA9IGl0OwogICAgICAgIGNvbnN0IHBhdHRlcm5zID0gKDAsIGNvZGVfMS5hbGxTY2hlbWFQcm9wZXJ0aWVzKShzY2hlbWEpOwogICAgICAgIGNvbnN0IGFsd2F5c1ZhbGlkUGF0dGVybnMgPSBwYXR0ZXJucy5maWx0ZXIoKHApID0+ICgwLCB1dGlsXzEuYWx3YXlzVmFsaWRTY2hlbWEpKGl0LCBzY2hlbWFbcF0pKTsKICAgICAgICBpZiAocGF0dGVybnMubGVuZ3RoID09PSAwIHx8IGFsd2F5c1ZhbGlkUGF0dGVybnMubGVuZ3RoID09PSBwYXR0ZXJucy5sZW5ndGggJiYgKCFpdC5vcHRzLnVuZXZhbHVhdGVkIHx8IGl0LnByb3BzID09PSB0cnVlKSkgewogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBjb25zdCBjaGVja1Byb3BlcnRpZXMgPSBvcHRzLnN0cmljdFNjaGVtYSAmJiAhb3B0cy5hbGxvd01hdGNoaW5nUHJvcGVydGllcyAmJiBwYXJlbnRTY2hlbWEucHJvcGVydGllczsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICAgIGlmIChpdC5wcm9wcyAhPT0gdHJ1ZSAmJiAhKGl0LnByb3BzIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUpKSB7CiAgICAgICAgICBpdC5wcm9wcyA9ICgwLCB1dGlsXzIuZXZhbHVhdGVkUHJvcHNUb05hbWUpKGdlbiwgaXQucHJvcHMpOwogICAgICAgIH0KICAgICAgICBjb25zdCB7IHByb3BzIH0gPSBpdDsKICAgICAgICB2YWxpZGF0ZVBhdHRlcm5Qcm9wZXJ0aWVzKCk7CiAgICAgICAgZnVuY3Rpb24gdmFsaWRhdGVQYXR0ZXJuUHJvcGVydGllcygpIHsKICAgICAgICAgIGZvciAoY29uc3QgcGF0IG9mIHBhdHRlcm5zKSB7CiAgICAgICAgICAgIGlmIChjaGVja1Byb3BlcnRpZXMpCiAgICAgICAgICAgICAgY2hlY2tNYXRjaGluZ1Byb3BlcnRpZXMocGF0KTsKICAgICAgICAgICAgaWYgKGl0LmFsbEVycm9ycykgewogICAgICAgICAgICAgIHZhbGlkYXRlUHJvcGVydGllcyhwYXQpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIGdlbi52YXIodmFsaWQsIHRydWUpOwogICAgICAgICAgICAgIHZhbGlkYXRlUHJvcGVydGllcyhwYXQpOwogICAgICAgICAgICAgIGdlbi5pZih2YWxpZCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gY2hlY2tNYXRjaGluZ1Byb3BlcnRpZXMocGF0KSB7CiAgICAgICAgICBmb3IgKGNvbnN0IHByb3AgaW4gY2hlY2tQcm9wZXJ0aWVzKSB7CiAgICAgICAgICAgIGlmIChuZXcgUmVnRXhwKHBhdCkudGVzdChwcm9wKSkgewogICAgICAgICAgICAgICgwLCB1dGlsXzEuY2hlY2tTdHJpY3RNb2RlKShpdCwgYHByb3BlcnR5ICR7cHJvcH0gbWF0Y2hlcyBwYXR0ZXJuICR7cGF0fSAodXNlIGFsbG93TWF0Y2hpbmdQcm9wZXJ0aWVzKWApOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlUHJvcGVydGllcyhwYXQpIHsKICAgICAgICAgIGdlbi5mb3JJbigia2V5IiwgZGF0YSwgKGtleSkgPT4gewogICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAkeygwLCBjb2RlXzEudXNlUGF0dGVybikoY3h0LCBwYXQpfS50ZXN0KCR7a2V5fSlgLCAoKSA9PiB7CiAgICAgICAgICAgICAgY29uc3QgYWx3YXlzVmFsaWQgPSBhbHdheXNWYWxpZFBhdHRlcm5zLmluY2x1ZGVzKHBhdCk7CiAgICAgICAgICAgICAgaWYgKCFhbHdheXNWYWxpZCkgewogICAgICAgICAgICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgICAgICAgIGtleXdvcmQ6ICJwYXR0ZXJuUHJvcGVydGllcyIsCiAgICAgICAgICAgICAgICAgIHNjaGVtYVByb3A6IHBhdCwKICAgICAgICAgICAgICAgICAgZGF0YVByb3A6IGtleSwKICAgICAgICAgICAgICAgICAgZGF0YVByb3BUeXBlOiB1dGlsXzIuVHlwZS5TdHIKICAgICAgICAgICAgICAgIH0sIHZhbGlkKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKGl0Lm9wdHMudW5ldmFsdWF0ZWQgJiYgcHJvcHMgIT09IHRydWUpIHsKICAgICAgICAgICAgICAgIGdlbi5hc3NpZ24oKDAsIGNvZGVnZW5fMS5fKWAke3Byb3BzfVske2tleX1dYCwgdHJ1ZSk7CiAgICAgICAgICAgICAgfSBlbHNlIGlmICghYWx3YXlzVmFsaWQgJiYgIWl0LmFsbEVycm9ycykgewogICAgICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEubm90KSh2YWxpZCksICgpID0+IGdlbi5icmVhaygpKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3Ivbm90LmpzCnZhciByZXF1aXJlX25vdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9ub3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJub3QiLAogICAgICBzY2hlbWFUeXBlOiBbIm9iamVjdCIsICJib29sZWFuIl0sCiAgICAgIHRyYWNrRXJyb3JzOiB0cnVlLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWEsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKCgwLCB1dGlsXzEuYWx3YXlzVmFsaWRTY2hlbWEpKGl0LCBzY2hlbWEpKSB7CiAgICAgICAgICBjeHQuZmFpbCgpOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICAgIGN4dC5zdWJzY2hlbWEoewogICAgICAgICAga2V5d29yZDogIm5vdCIsCiAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlLAogICAgICAgICAgY3JlYXRlRXJyb3JzOiBmYWxzZSwKICAgICAgICAgIGFsbEVycm9yczogZmFsc2UKICAgICAgICB9LCB2YWxpZCk7CiAgICAgICAgY3h0LmZhaWxSZXN1bHQodmFsaWQsICgpID0+IGN4dC5yZXNldCgpLCAoKSA9PiBjeHQuZXJyb3IoKSk7CiAgICAgIH0sCiAgICAgIGVycm9yOiB7IG1lc3NhZ2U6ICJtdXN0IE5PVCBiZSB2YWxpZCIgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2FueU9mLmpzCnZhciByZXF1aXJlX2FueU9mID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2FueU9mLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlMigpOwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogImFueU9mIiwKICAgICAgc2NoZW1hVHlwZTogImFycmF5IiwKICAgICAgdHJhY2tFcnJvcnM6IHRydWUsCiAgICAgIGNvZGU6IGNvZGVfMS52YWxpZGF0ZVVuaW9uLAogICAgICBlcnJvcjogeyBtZXNzYWdlOiAibXVzdCBtYXRjaCBhIHNjaGVtYSBpbiBhbnlPZiIgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL29uZU9mLmpzCnZhciByZXF1aXJlX29uZU9mID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL29uZU9mLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICJtdXN0IG1hdGNoIGV4YWN0bHkgb25lIHNjaGVtYSBpbiBvbmVPZiIsCiAgICAgIHBhcmFtczogKHsgcGFyYW1zIH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge3Bhc3NpbmdTY2hlbWFzOiAke3BhcmFtcy5wYXNzaW5nfX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogIm9uZU9mIiwKICAgICAgc2NoZW1hVHlwZTogImFycmF5IiwKICAgICAgdHJhY2tFcnJvcnM6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWEsIHBhcmVudFNjaGVtYSwgaXQgfSA9IGN4dDsKICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoc2NoZW1hKSkKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiYWp2IGltcGxlbWVudGF0aW9uIGVycm9yIik7CiAgICAgICAgaWYgKGl0Lm9wdHMuZGlzY3JpbWluYXRvciAmJiBwYXJlbnRTY2hlbWEuZGlzY3JpbWluYXRvcikKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCBzY2hBcnIgPSBzY2hlbWE7CiAgICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIsIGZhbHNlKTsKICAgICAgICBjb25zdCBwYXNzaW5nID0gZ2VuLmxldCgicGFzc2luZyIsIG51bGwpOwogICAgICAgIGNvbnN0IHNjaFZhbGlkID0gZ2VuLm5hbWUoIl92YWxpZCIpOwogICAgICAgIGN4dC5zZXRQYXJhbXMoeyBwYXNzaW5nIH0pOwogICAgICAgIGdlbi5ibG9jayh2YWxpZGF0ZU9uZU9mKTsKICAgICAgICBjeHQucmVzdWx0KHZhbGlkLCAoKSA9PiBjeHQucmVzZXQoKSwgKCkgPT4gY3h0LmVycm9yKHRydWUpKTsKICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZU9uZU9mKCkgewogICAgICAgICAgc2NoQXJyLmZvckVhY2goKHNjaCwgaSkgPT4gewogICAgICAgICAgICBsZXQgc2NoQ3h0OwogICAgICAgICAgICBpZiAoKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaCkpIHsKICAgICAgICAgICAgICBnZW4udmFyKHNjaFZhbGlkLCB0cnVlKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBzY2hDeHQgPSBjeHQuc3Vic2NoZW1hKHsKICAgICAgICAgICAgICAgIGtleXdvcmQ6ICJvbmVPZiIsCiAgICAgICAgICAgICAgICBzY2hlbWFQcm9wOiBpLAogICAgICAgICAgICAgICAgY29tcG9zaXRlUnVsZTogdHJ1ZQogICAgICAgICAgICAgIH0sIHNjaFZhbGlkKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoaSA+IDApIHsKICAgICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke3NjaFZhbGlkfSAmJiAke3ZhbGlkfWApLmFzc2lnbih2YWxpZCwgZmFsc2UpLmFzc2lnbihwYXNzaW5nLCAoMCwgY29kZWdlbl8xLl8pYFske3Bhc3Npbmd9LCAke2l9XWApLmVsc2UoKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBnZW4uaWYoc2NoVmFsaWQsICgpID0+IHsKICAgICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCB0cnVlKTsKICAgICAgICAgICAgICBnZW4uYXNzaWduKHBhc3NpbmcsIGkpOwogICAgICAgICAgICAgIGlmIChzY2hDeHQpCiAgICAgICAgICAgICAgICBjeHQubWVyZ2VFdmFsdWF0ZWQoc2NoQ3h0LCBjb2RlZ2VuXzEuTmFtZSk7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWxsT2YuanMKdmFyIHJlcXVpcmVfYWxsT2YgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWxsT2YuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJhbGxPZiIsCiAgICAgIHNjaGVtYVR5cGU6ICJhcnJheSIsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYSwgaXQgfSA9IGN4dDsKICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoc2NoZW1hKSkKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiYWp2IGltcGxlbWVudGF0aW9uIGVycm9yIik7CiAgICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubmFtZSgidmFsaWQiKTsKICAgICAgICBzY2hlbWEuZm9yRWFjaCgoc2NoLCBpKSA9PiB7CiAgICAgICAgICBpZiAoKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaCkpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIGNvbnN0IHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoeyBrZXl3b3JkOiAiYWxsT2YiLCBzY2hlbWFQcm9wOiBpIH0sIHZhbGlkKTsKICAgICAgICAgIGN4dC5vayh2YWxpZCk7CiAgICAgICAgICBjeHQubWVyZ2VFdmFsdWF0ZWQoc2NoQ3h0KTsKICAgICAgICB9KTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2lmLmpzCnZhciByZXF1aXJlX2lmID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2lmLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHBhcmFtcyB9KSA9PiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBtYXRjaCAiJHtwYXJhbXMuaWZDbGF1c2V9IiBzY2hlbWFgLAogICAgICBwYXJhbXM6ICh7IHBhcmFtcyB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtmYWlsaW5nS2V5d29yZDogJHtwYXJhbXMuaWZDbGF1c2V9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiaWYiLAogICAgICBzY2hlbWFUeXBlOiBbIm9iamVjdCIsICJib29sZWFuIl0sCiAgICAgIHRyYWNrRXJyb3JzOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgcGFyZW50U2NoZW1hLCBpdCB9ID0gY3h0OwogICAgICAgIGlmIChwYXJlbnRTY2hlbWEudGhlbiA9PT0gdm9pZCAwICYmIHBhcmVudFNjaGVtYS5lbHNlID09PSB2b2lkIDApIHsKICAgICAgICAgICgwLCB1dGlsXzEuY2hlY2tTdHJpY3RNb2RlKShpdCwgJyJpZiIgd2l0aG91dCAidGhlbiIgYW5kICJlbHNlIiBpcyBpZ25vcmVkJyk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGhhc1RoZW4gPSBoYXNTY2hlbWEoaXQsICJ0aGVuIik7CiAgICAgICAgY29uc3QgaGFzRWxzZSA9IGhhc1NjaGVtYShpdCwgImVsc2UiKTsKICAgICAgICBpZiAoIWhhc1RoZW4gJiYgIWhhc0Vsc2UpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIsIHRydWUpOwogICAgICAgIGNvbnN0IHNjaFZhbGlkID0gZ2VuLm5hbWUoIl92YWxpZCIpOwogICAgICAgIHZhbGlkYXRlSWYoKTsKICAgICAgICBjeHQucmVzZXQoKTsKICAgICAgICBpZiAoaGFzVGhlbiAmJiBoYXNFbHNlKSB7CiAgICAgICAgICBjb25zdCBpZkNsYXVzZSA9IGdlbi5sZXQoImlmQ2xhdXNlIik7CiAgICAgICAgICBjeHQuc2V0UGFyYW1zKHsgaWZDbGF1c2UgfSk7CiAgICAgICAgICBnZW4uaWYoc2NoVmFsaWQsIHZhbGlkYXRlQ2xhdXNlKCJ0aGVuIiwgaWZDbGF1c2UpLCB2YWxpZGF0ZUNsYXVzZSgiZWxzZSIsIGlmQ2xhdXNlKSk7CiAgICAgICAgfSBlbHNlIGlmIChoYXNUaGVuKSB7CiAgICAgICAgICBnZW4uaWYoc2NoVmFsaWQsIHZhbGlkYXRlQ2xhdXNlKCJ0aGVuIikpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKHNjaFZhbGlkKSwgdmFsaWRhdGVDbGF1c2UoImVsc2UiKSk7CiAgICAgICAgfQogICAgICAgIGN4dC5wYXNzKHZhbGlkLCAoKSA9PiBjeHQuZXJyb3IodHJ1ZSkpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlSWYoKSB7CiAgICAgICAgICBjb25zdCBzY2hDeHQgPSBjeHQuc3Vic2NoZW1hKHsKICAgICAgICAgICAga2V5d29yZDogImlmIiwKICAgICAgICAgICAgY29tcG9zaXRlUnVsZTogdHJ1ZSwKICAgICAgICAgICAgY3JlYXRlRXJyb3JzOiBmYWxzZSwKICAgICAgICAgICAgYWxsRXJyb3JzOiBmYWxzZQogICAgICAgICAgfSwgc2NoVmFsaWQpOwogICAgICAgICAgY3h0Lm1lcmdlRXZhbHVhdGVkKHNjaEN4dCk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlQ2xhdXNlKGtleXdvcmQsIGlmQ2xhdXNlKSB7CiAgICAgICAgICByZXR1cm4gKCkgPT4gewogICAgICAgICAgICBjb25zdCBzY2hDeHQgPSBjeHQuc3Vic2NoZW1hKHsga2V5d29yZCB9LCBzY2hWYWxpZCk7CiAgICAgICAgICAgIGdlbi5hc3NpZ24odmFsaWQsIHNjaFZhbGlkKTsKICAgICAgICAgICAgY3h0Lm1lcmdlVmFsaWRFdmFsdWF0ZWQoc2NoQ3h0LCB2YWxpZCk7CiAgICAgICAgICAgIGlmIChpZkNsYXVzZSkKICAgICAgICAgICAgICBnZW4uYXNzaWduKGlmQ2xhdXNlLCAoMCwgY29kZWdlbl8xLl8pYCR7a2V5d29yZH1gKTsKICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgIGN4dC5zZXRQYXJhbXMoeyBpZkNsYXVzZToga2V5d29yZCB9KTsKICAgICAgICAgIH07CiAgICAgICAgfQogICAgICB9CiAgICB9OwogICAgZnVuY3Rpb24gaGFzU2NoZW1hKGl0LCBrZXl3b3JkKSB7CiAgICAgIGNvbnN0IHNjaGVtYSA9IGl0LnNjaGVtYVtrZXl3b3JkXTsKICAgICAgcmV0dXJuIHNjaGVtYSAhPT0gdm9pZCAwICYmICEoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hKTsKICAgIH0KICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3RoZW5FbHNlLmpzCnZhciByZXF1aXJlX3RoZW5FbHNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3RoZW5FbHNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiBbInRoZW4iLCAiZWxzZSJdLAogICAgICBzY2hlbWFUeXBlOiBbIm9iamVjdCIsICJib29sZWFuIl0sCiAgICAgIGNvZGUoeyBrZXl3b3JkLCBwYXJlbnRTY2hlbWEsIGl0IH0pIHsKICAgICAgICBpZiAocGFyZW50U2NoZW1hLmlmID09PSB2b2lkIDApCiAgICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsIGAiJHtrZXl3b3JkfSIgd2l0aG91dCAiaWYiIGlzIGlnbm9yZWRgKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2luZGV4LmpzCnZhciByZXF1aXJlX2FwcGxpY2F0b3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBhZGRpdGlvbmFsSXRlbXNfMSA9IHJlcXVpcmVfYWRkaXRpb25hbEl0ZW1zKCk7CiAgICB2YXIgcHJlZml4SXRlbXNfMSA9IHJlcXVpcmVfcHJlZml4SXRlbXMoKTsKICAgIHZhciBpdGVtc18xID0gcmVxdWlyZV9pdGVtcygpOwogICAgdmFyIGl0ZW1zMjAyMF8xID0gcmVxdWlyZV9pdGVtczIwMjAoKTsKICAgIHZhciBjb250YWluc18xID0gcmVxdWlyZV9jb250YWlucygpOwogICAgdmFyIGRlcGVuZGVuY2llc18xID0gcmVxdWlyZV9kZXBlbmRlbmNpZXMoKTsKICAgIHZhciBwcm9wZXJ0eU5hbWVzXzEgPSByZXF1aXJlX3Byb3BlcnR5TmFtZXMoKTsKICAgIHZhciBhZGRpdGlvbmFsUHJvcGVydGllc18xID0gcmVxdWlyZV9hZGRpdGlvbmFsUHJvcGVydGllcygpOwogICAgdmFyIHByb3BlcnRpZXNfMSA9IHJlcXVpcmVfcHJvcGVydGllcygpOwogICAgdmFyIHBhdHRlcm5Qcm9wZXJ0aWVzXzEgPSByZXF1aXJlX3BhdHRlcm5Qcm9wZXJ0aWVzKCk7CiAgICB2YXIgbm90XzEgPSByZXF1aXJlX25vdCgpOwogICAgdmFyIGFueU9mXzEgPSByZXF1aXJlX2FueU9mKCk7CiAgICB2YXIgb25lT2ZfMSA9IHJlcXVpcmVfb25lT2YoKTsKICAgIHZhciBhbGxPZl8xID0gcmVxdWlyZV9hbGxPZigpOwogICAgdmFyIGlmXzEgPSByZXF1aXJlX2lmKCk7CiAgICB2YXIgdGhlbkVsc2VfMSA9IHJlcXVpcmVfdGhlbkVsc2UoKTsKICAgIGZ1bmN0aW9uIGdldEFwcGxpY2F0b3IoZHJhZnQyMDIwID0gZmFsc2UpIHsKICAgICAgY29uc3QgYXBwbGljYXRvciA9IFsKICAgICAgICAvLyBhbnkKICAgICAgICBub3RfMS5kZWZhdWx0LAogICAgICAgIGFueU9mXzEuZGVmYXVsdCwKICAgICAgICBvbmVPZl8xLmRlZmF1bHQsCiAgICAgICAgYWxsT2ZfMS5kZWZhdWx0LAogICAgICAgIGlmXzEuZGVmYXVsdCwKICAgICAgICB0aGVuRWxzZV8xLmRlZmF1bHQsCiAgICAgICAgLy8gb2JqZWN0CiAgICAgICAgcHJvcGVydHlOYW1lc18xLmRlZmF1bHQsCiAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXNfMS5kZWZhdWx0LAogICAgICAgIGRlcGVuZGVuY2llc18xLmRlZmF1bHQsCiAgICAgICAgcHJvcGVydGllc18xLmRlZmF1bHQsCiAgICAgICAgcGF0dGVyblByb3BlcnRpZXNfMS5kZWZhdWx0CiAgICAgIF07CiAgICAgIGlmIChkcmFmdDIwMjApCiAgICAgICAgYXBwbGljYXRvci5wdXNoKHByZWZpeEl0ZW1zXzEuZGVmYXVsdCwgaXRlbXMyMDIwXzEuZGVmYXVsdCk7CiAgICAgIGVsc2UKICAgICAgICBhcHBsaWNhdG9yLnB1c2goYWRkaXRpb25hbEl0ZW1zXzEuZGVmYXVsdCwgaXRlbXNfMS5kZWZhdWx0KTsKICAgICAgYXBwbGljYXRvci5wdXNoKGNvbnRhaW5zXzEuZGVmYXVsdCk7CiAgICAgIHJldHVybiBhcHBsaWNhdG9yOwogICAgfQogICAgZXhwb3J0czIuZGVmYXVsdCA9IGdldEFwcGxpY2F0b3I7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9mb3JtYXQvZm9ybWF0LmpzCnZhciByZXF1aXJlX2Zvcm1hdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvZm9ybWF0L2Zvcm1hdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBzY2hlbWFDb2RlIH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IG1hdGNoIGZvcm1hdCAiJHtzY2hlbWFDb2RlfSJgLAogICAgICBwYXJhbXM6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7Zm9ybWF0OiAke3NjaGVtYUNvZGV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiZm9ybWF0IiwKICAgICAgdHlwZTogWyJudW1iZXIiLCAic3RyaW5nIl0sCiAgICAgIHNjaGVtYVR5cGU6ICJzdHJpbmciLAogICAgICAkZGF0YTogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0LCBydWxlVHlwZSkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCAkZGF0YSwgc2NoZW1hLCBzY2hlbWFDb2RlLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgb3B0cywgZXJyU2NoZW1hUGF0aCwgc2NoZW1hRW52LCBzZWxmOiBzZWxmMiB9ID0gaXQ7CiAgICAgICAgaWYgKCFvcHRzLnZhbGlkYXRlRm9ybWF0cykKICAgICAgICAgIHJldHVybjsKICAgICAgICBpZiAoJGRhdGEpCiAgICAgICAgICB2YWxpZGF0ZSREYXRhRm9ybWF0KCk7CiAgICAgICAgZWxzZQogICAgICAgICAgdmFsaWRhdGVGb3JtYXQoKTsKICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZSREYXRhRm9ybWF0KCkgewogICAgICAgICAgY29uc3QgZm10cyA9IGdlbi5zY29wZVZhbHVlKCJmb3JtYXRzIiwgewogICAgICAgICAgICByZWY6IHNlbGYyLmZvcm1hdHMsCiAgICAgICAgICAgIGNvZGU6IG9wdHMuY29kZS5mb3JtYXRzCiAgICAgICAgICB9KTsKICAgICAgICAgIGNvbnN0IGZEZWYgPSBnZW4uY29uc3QoImZEZWYiLCAoMCwgY29kZWdlbl8xLl8pYCR7Zm10c31bJHtzY2hlbWFDb2RlfV1gKTsKICAgICAgICAgIGNvbnN0IGZUeXBlID0gZ2VuLmxldCgiZlR5cGUiKTsKICAgICAgICAgIGNvbnN0IGZvcm1hdCA9IGdlbi5sZXQoImZvcm1hdCIpOwogICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7ZkRlZn0gPT0gIm9iamVjdCIgJiYgISgke2ZEZWZ9IGluc3RhbmNlb2YgUmVnRXhwKWAsICgpID0+IGdlbi5hc3NpZ24oZlR5cGUsICgwLCBjb2RlZ2VuXzEuXylgJHtmRGVmfS50eXBlIHx8ICJzdHJpbmciYCkuYXNzaWduKGZvcm1hdCwgKDAsIGNvZGVnZW5fMS5fKWAke2ZEZWZ9LnZhbGlkYXRlYCksICgpID0+IGdlbi5hc3NpZ24oZlR5cGUsICgwLCBjb2RlZ2VuXzEuXylgInN0cmluZyJgKS5hc3NpZ24oZm9ybWF0LCBmRGVmKSk7CiAgICAgICAgICBjeHQuZmFpbCRkYXRhKCgwLCBjb2RlZ2VuXzEub3IpKHVua25vd25GbXQoKSwgaW52YWxpZEZtdCgpKSk7CiAgICAgICAgICBmdW5jdGlvbiB1bmtub3duRm10KCkgewogICAgICAgICAgICBpZiAob3B0cy5zdHJpY3RTY2hlbWEgPT09IGZhbHNlKQogICAgICAgICAgICAgIHJldHVybiBjb2RlZ2VuXzEubmlsOwogICAgICAgICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5fKWAke3NjaGVtYUNvZGV9ICYmICEke2Zvcm1hdH1gOwogICAgICAgICAgfQogICAgICAgICAgZnVuY3Rpb24gaW52YWxpZEZtdCgpIHsKICAgICAgICAgICAgY29uc3QgY2FsbEZvcm1hdCA9IHNjaGVtYUVudi4kYXN5bmMgPyAoMCwgY29kZWdlbl8xLl8pYCgke2ZEZWZ9LmFzeW5jID8gYXdhaXQgJHtmb3JtYXR9KCR7ZGF0YX0pIDogJHtmb3JtYXR9KCR7ZGF0YX0pKWAgOiAoMCwgY29kZWdlbl8xLl8pYCR7Zm9ybWF0fSgke2RhdGF9KWA7CiAgICAgICAgICAgIGNvbnN0IHZhbGlkRGF0YSA9ICgwLCBjb2RlZ2VuXzEuXylgKHR5cGVvZiAke2Zvcm1hdH0gPT0gImZ1bmN0aW9uIiA/ICR7Y2FsbEZvcm1hdH0gOiAke2Zvcm1hdH0udGVzdCgke2RhdGF9KSlgOwogICAgICAgICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5fKWAke2Zvcm1hdH0gJiYgJHtmb3JtYXR9ICE9PSB0cnVlICYmICR7ZlR5cGV9ID09PSAke3J1bGVUeXBlfSAmJiAhJHt2YWxpZERhdGF9YDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gdmFsaWRhdGVGb3JtYXQoKSB7CiAgICAgICAgICBjb25zdCBmb3JtYXREZWYgPSBzZWxmMi5mb3JtYXRzW3NjaGVtYV07CiAgICAgICAgICBpZiAoIWZvcm1hdERlZikgewogICAgICAgICAgICB1bmtub3duRm9ybWF0KCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChmb3JtYXREZWYgPT09IHRydWUpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIGNvbnN0IFtmbXRUeXBlLCBmb3JtYXQsIGZtdFJlZl0gPSBnZXRGb3JtYXQoZm9ybWF0RGVmKTsKICAgICAgICAgIGlmIChmbXRUeXBlID09PSBydWxlVHlwZSkKICAgICAgICAgICAgY3h0LnBhc3ModmFsaWRDb25kaXRpb24oKSk7CiAgICAgICAgICBmdW5jdGlvbiB1bmtub3duRm9ybWF0KCkgewogICAgICAgICAgICBpZiAob3B0cy5zdHJpY3RTY2hlbWEgPT09IGZhbHNlKSB7CiAgICAgICAgICAgICAgc2VsZjIubG9nZ2VyLndhcm4odW5rbm93bk1zZygpKTsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKHVua25vd25Nc2coKSk7CiAgICAgICAgICAgIGZ1bmN0aW9uIHVua25vd25Nc2coKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGB1bmtub3duIGZvcm1hdCAiJHtzY2hlbWF9IiBpZ25vcmVkIGluIHNjaGVtYSBhdCBwYXRoICIke2VyclNjaGVtYVBhdGh9ImA7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGZ1bmN0aW9uIGdldEZvcm1hdChmbXREZWYpIHsKICAgICAgICAgICAgY29uc3QgY29kZSA9IGZtdERlZiBpbnN0YW5jZW9mIFJlZ0V4cCA/ICgwLCBjb2RlZ2VuXzEucmVnZXhwQ29kZSkoZm10RGVmKSA6IG9wdHMuY29kZS5mb3JtYXRzID8gKDAsIGNvZGVnZW5fMS5fKWAke29wdHMuY29kZS5mb3JtYXRzfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkoc2NoZW1hKX1gIDogdm9pZCAwOwogICAgICAgICAgICBjb25zdCBmbXQgPSBnZW4uc2NvcGVWYWx1ZSgiZm9ybWF0cyIsIHsga2V5OiBzY2hlbWEsIHJlZjogZm10RGVmLCBjb2RlIH0pOwogICAgICAgICAgICBpZiAodHlwZW9mIGZtdERlZiA9PSAib2JqZWN0IiAmJiAhKGZtdERlZiBpbnN0YW5jZW9mIFJlZ0V4cCkpIHsKICAgICAgICAgICAgICByZXR1cm4gW2ZtdERlZi50eXBlIHx8ICJzdHJpbmciLCBmbXREZWYudmFsaWRhdGUsICgwLCBjb2RlZ2VuXzEuXylgJHtmbXR9LnZhbGlkYXRlYF07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIFsic3RyaW5nIiwgZm10RGVmLCBmbXRdOwogICAgICAgICAgfQogICAgICAgICAgZnVuY3Rpb24gdmFsaWRDb25kaXRpb24oKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2YgZm9ybWF0RGVmID09ICJvYmplY3QiICYmICEoZm9ybWF0RGVmIGluc3RhbmNlb2YgUmVnRXhwKSAmJiBmb3JtYXREZWYuYXN5bmMpIHsKICAgICAgICAgICAgICBpZiAoIXNjaGVtYUVudi4kYXN5bmMpCiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFzeW5jIGZvcm1hdCBpbiBzeW5jIHNjaGVtYSIpOwogICAgICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYGF3YWl0ICR7Zm10UmVmfSgke2RhdGF9KWA7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHR5cGVvZiBmb3JtYXQgPT0gImZ1bmN0aW9uIiA/ICgwLCBjb2RlZ2VuXzEuXylgJHtmbXRSZWZ9KCR7ZGF0YX0pYCA6ICgwLCBjb2RlZ2VuXzEuXylgJHtmbXRSZWZ9LnRlc3QoJHtkYXRhfSlgOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9mb3JtYXQvaW5kZXguanMKdmFyIHJlcXVpcmVfZm9ybWF0MiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvZm9ybWF0L2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgZm9ybWF0XzEgPSByZXF1aXJlX2Zvcm1hdCgpOwogICAgdmFyIGZvcm1hdCA9IFtmb3JtYXRfMS5kZWZhdWx0XTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBmb3JtYXQ7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9tZXRhZGF0YS5qcwp2YXIgcmVxdWlyZV9tZXRhZGF0YSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvbWV0YWRhdGEuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbnRlbnRWb2NhYnVsYXJ5ID0gZXhwb3J0czIubWV0YWRhdGFWb2NhYnVsYXJ5ID0gdm9pZCAwOwogICAgZXhwb3J0czIubWV0YWRhdGFWb2NhYnVsYXJ5ID0gWwogICAgICAidGl0bGUiLAogICAgICAiZGVzY3JpcHRpb24iLAogICAgICAiZGVmYXVsdCIsCiAgICAgICJkZXByZWNhdGVkIiwKICAgICAgInJlYWRPbmx5IiwKICAgICAgIndyaXRlT25seSIsCiAgICAgICJleGFtcGxlcyIKICAgIF07CiAgICBleHBvcnRzMi5jb250ZW50Vm9jYWJ1bGFyeSA9IFsKICAgICAgImNvbnRlbnRNZWRpYVR5cGUiLAogICAgICAiY29udGVudEVuY29kaW5nIiwKICAgICAgImNvbnRlbnRTY2hlbWEiCiAgICBdOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvZHJhZnQ3LmpzCnZhciByZXF1aXJlX2RyYWZ0NyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvZHJhZnQ3LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9jb3JlMigpOwogICAgdmFyIHZhbGlkYXRpb25fMSA9IHJlcXVpcmVfdmFsaWRhdGlvbigpOwogICAgdmFyIGFwcGxpY2F0b3JfMSA9IHJlcXVpcmVfYXBwbGljYXRvcigpOwogICAgdmFyIGZvcm1hdF8xID0gcmVxdWlyZV9mb3JtYXQyKCk7CiAgICB2YXIgbWV0YWRhdGFfMSA9IHJlcXVpcmVfbWV0YWRhdGEoKTsKICAgIHZhciBkcmFmdDdWb2NhYnVsYXJpZXMgPSBbCiAgICAgIGNvcmVfMS5kZWZhdWx0LAogICAgICB2YWxpZGF0aW9uXzEuZGVmYXVsdCwKICAgICAgKDAsIGFwcGxpY2F0b3JfMS5kZWZhdWx0KSgpLAogICAgICBmb3JtYXRfMS5kZWZhdWx0LAogICAgICBtZXRhZGF0YV8xLm1ldGFkYXRhVm9jYWJ1bGFyeSwKICAgICAgbWV0YWRhdGFfMS5jb250ZW50Vm9jYWJ1bGFyeQogICAgXTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkcmFmdDdWb2NhYnVsYXJpZXM7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9kaXNjcmltaW5hdG9yL3R5cGVzLmpzCnZhciByZXF1aXJlX3R5cGVzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9kaXNjcmltaW5hdG9yL3R5cGVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5EaXNjckVycm9yID0gdm9pZCAwOwogICAgdmFyIERpc2NyRXJyb3I7CiAgICAoZnVuY3Rpb24oRGlzY3JFcnJvcjIpIHsKICAgICAgRGlzY3JFcnJvcjJbIlRhZyJdID0gInRhZyI7CiAgICAgIERpc2NyRXJyb3IyWyJNYXBwaW5nIl0gPSAibWFwcGluZyI7CiAgICB9KShEaXNjckVycm9yIHx8IChleHBvcnRzMi5EaXNjckVycm9yID0gRGlzY3JFcnJvciA9IHt9KSk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtZWUzYzYyMTYyYy56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9kaXNjcmltaW5hdG9yL2luZGV4LmpzCnZhciByZXF1aXJlX2Rpc2NyaW1pbmF0b3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2Rpc2NyaW1pbmF0b3IvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB0eXBlc18xID0gcmVxdWlyZV90eXBlcygpOwogICAgdmFyIGNvbXBpbGVfMSA9IHJlcXVpcmVfY29tcGlsZSgpOwogICAgdmFyIHJlZl9lcnJvcl8xID0gcmVxdWlyZV9yZWZfZXJyb3IoKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgcGFyYW1zOiB7IGRpc2NyRXJyb3IsIHRhZ05hbWUgfSB9KSA9PiBkaXNjckVycm9yID09PSB0eXBlc18xLkRpc2NyRXJyb3IuVGFnID8gYHRhZyAiJHt0YWdOYW1lfSIgbXVzdCBiZSBzdHJpbmdgIDogYHZhbHVlIG9mIHRhZyAiJHt0YWdOYW1lfSIgbXVzdCBiZSBpbiBvbmVPZmAsCiAgICAgIHBhcmFtczogKHsgcGFyYW1zOiB7IGRpc2NyRXJyb3IsIHRhZywgdGFnTmFtZSB9IH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge2Vycm9yOiAke2Rpc2NyRXJyb3J9LCB0YWc6ICR7dGFnTmFtZX0sIHRhZ1ZhbHVlOiAke3RhZ319YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJkaXNjcmltaW5hdG9yIiwKICAgICAgdHlwZTogIm9iamVjdCIsCiAgICAgIHNjaGVtYVR5cGU6ICJvYmplY3QiLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgZGF0YSwgc2NoZW1hLCBwYXJlbnRTY2hlbWEsIGl0IH0gPSBjeHQ7CiAgICAgICAgY29uc3QgeyBvbmVPZiB9ID0gcGFyZW50U2NoZW1hOwogICAgICAgIGlmICghaXQub3B0cy5kaXNjcmltaW5hdG9yKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImRpc2NyaW1pbmF0b3I6IHJlcXVpcmVzIGRpc2NyaW1pbmF0b3Igb3B0aW9uIik7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHRhZ05hbWUgPSBzY2hlbWEucHJvcGVydHlOYW1lOwogICAgICAgIGlmICh0eXBlb2YgdGFnTmFtZSAhPSAic3RyaW5nIikKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiZGlzY3JpbWluYXRvcjogcmVxdWlyZXMgcHJvcGVydHlOYW1lIik7CiAgICAgICAgaWYgKHNjaGVtYS5tYXBwaW5nKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJkaXNjcmltaW5hdG9yOiBtYXBwaW5nIGlzIG5vdCBzdXBwb3J0ZWQiKTsKICAgICAgICBpZiAoIW9uZU9mKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJkaXNjcmltaW5hdG9yOiByZXF1aXJlcyBvbmVPZiBrZXl3b3JkIik7CiAgICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIsIGZhbHNlKTsKICAgICAgICBjb25zdCB0YWcgPSBnZW4uY29uc3QoInRhZyIsICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkodGFnTmFtZSl9YCk7CiAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7dGFnfSA9PSAic3RyaW5nImAsICgpID0+IHZhbGlkYXRlTWFwcGluZygpLCAoKSA9PiBjeHQuZXJyb3IoZmFsc2UsIHsgZGlzY3JFcnJvcjogdHlwZXNfMS5EaXNjckVycm9yLlRhZywgdGFnLCB0YWdOYW1lIH0pKTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlTWFwcGluZygpIHsKICAgICAgICAgIGNvbnN0IG1hcHBpbmcgPSBnZXRNYXBwaW5nKCk7CiAgICAgICAgICBnZW4uaWYoZmFsc2UpOwogICAgICAgICAgZm9yIChjb25zdCB0YWdWYWx1ZSBpbiBtYXBwaW5nKSB7CiAgICAgICAgICAgIGdlbi5lbHNlSWYoKDAsIGNvZGVnZW5fMS5fKWAke3RhZ30gPT09ICR7dGFnVmFsdWV9YCk7CiAgICAgICAgICAgIGdlbi5hc3NpZ24odmFsaWQsIGFwcGx5VGFnU2NoZW1hKG1hcHBpbmdbdGFnVmFsdWVdKSk7CiAgICAgICAgICB9CiAgICAgICAgICBnZW4uZWxzZSgpOwogICAgICAgICAgY3h0LmVycm9yKGZhbHNlLCB7IGRpc2NyRXJyb3I6IHR5cGVzXzEuRGlzY3JFcnJvci5NYXBwaW5nLCB0YWcsIHRhZ05hbWUgfSk7CiAgICAgICAgICBnZW4uZW5kSWYoKTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gYXBwbHlUYWdTY2hlbWEoc2NoZW1hUHJvcCkgewogICAgICAgICAgY29uc3QgX3ZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgICBjb25zdCBzY2hDeHQgPSBjeHQuc3Vic2NoZW1hKHsga2V5d29yZDogIm9uZU9mIiwgc2NoZW1hUHJvcCB9LCBfdmFsaWQpOwogICAgICAgICAgY3h0Lm1lcmdlRXZhbHVhdGVkKHNjaEN4dCwgY29kZWdlbl8xLk5hbWUpOwogICAgICAgICAgcmV0dXJuIF92YWxpZDsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gZ2V0TWFwcGluZygpIHsKICAgICAgICAgIHZhciBfYTsKICAgICAgICAgIGNvbnN0IG9uZU9mTWFwcGluZyA9IHt9OwogICAgICAgICAgY29uc3QgdG9wUmVxdWlyZWQgPSBoYXNSZXF1aXJlZChwYXJlbnRTY2hlbWEpOwogICAgICAgICAgbGV0IHRhZ1JlcXVpcmVkID0gdHJ1ZTsKICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgb25lT2YubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgbGV0IHNjaCA9IG9uZU9mW2ldOwogICAgICAgICAgICBpZiAoKHNjaCA9PT0gbnVsbCB8fCBzY2ggPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNjaC4kcmVmKSAmJiAhKDAsIHV0aWxfMS5zY2hlbWFIYXNSdWxlc0J1dFJlZikoc2NoLCBpdC5zZWxmLlJVTEVTKSkgewogICAgICAgICAgICAgIGNvbnN0IHJlZiA9IHNjaC4kcmVmOwogICAgICAgICAgICAgIHNjaCA9IGNvbXBpbGVfMS5yZXNvbHZlUmVmLmNhbGwoaXQuc2VsZiwgaXQuc2NoZW1hRW52LnJvb3QsIGl0LmJhc2VJZCwgcmVmKTsKICAgICAgICAgICAgICBpZiAoc2NoIGluc3RhbmNlb2YgY29tcGlsZV8xLlNjaGVtYUVudikKICAgICAgICAgICAgICAgIHNjaCA9IHNjaC5zY2hlbWE7CiAgICAgICAgICAgICAgaWYgKHNjaCA9PT0gdm9pZCAwKQogICAgICAgICAgICAgICAgdGhyb3cgbmV3IHJlZl9lcnJvcl8xLmRlZmF1bHQoaXQub3B0cy51cmlSZXNvbHZlciwgaXQuYmFzZUlkLCByZWYpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IHByb3BTY2ggPSAoX2EgPSBzY2ggPT09IG51bGwgfHwgc2NoID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzY2gucHJvcGVydGllcykgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hW3RhZ05hbWVdOwogICAgICAgICAgICBpZiAodHlwZW9mIHByb3BTY2ggIT0gIm9iamVjdCIpIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGRpc2NyaW1pbmF0b3I6IG9uZU9mIHN1YnNjaGVtYXMgKG9yIHJlZmVyZW5jZWQgc2NoZW1hcykgbXVzdCBoYXZlICJwcm9wZXJ0aWVzLyR7dGFnTmFtZX0iYCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGFnUmVxdWlyZWQgPSB0YWdSZXF1aXJlZCAmJiAodG9wUmVxdWlyZWQgfHwgaGFzUmVxdWlyZWQoc2NoKSk7CiAgICAgICAgICAgIGFkZE1hcHBpbmdzKHByb3BTY2gsIGkpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCF0YWdSZXF1aXJlZCkKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBkaXNjcmltaW5hdG9yOiAiJHt0YWdOYW1lfSIgbXVzdCBiZSByZXF1aXJlZGApOwogICAgICAgICAgcmV0dXJuIG9uZU9mTWFwcGluZzsKICAgICAgICAgIGZ1bmN0aW9uIGhhc1JlcXVpcmVkKHsgcmVxdWlyZWQgfSkgewogICAgICAgICAgICByZXR1cm4gQXJyYXkuaXNBcnJheShyZXF1aXJlZCkgJiYgcmVxdWlyZWQuaW5jbHVkZXModGFnTmFtZSk7CiAgICAgICAgICB9CiAgICAgICAgICBmdW5jdGlvbiBhZGRNYXBwaW5ncyhzY2gsIGkpIHsKICAgICAgICAgICAgaWYgKHNjaC5jb25zdCkgewogICAgICAgICAgICAgIGFkZE1hcHBpbmcoc2NoLmNvbnN0LCBpKTsKICAgICAgICAgICAgfSBlbHNlIGlmIChzY2guZW51bSkgewogICAgICAgICAgICAgIGZvciAoY29uc3QgdGFnVmFsdWUgb2Ygc2NoLmVudW0pIHsKICAgICAgICAgICAgICAgIGFkZE1hcHBpbmcodGFnVmFsdWUsIGkpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGRpc2NyaW1pbmF0b3I6ICJwcm9wZXJ0aWVzLyR7dGFnTmFtZX0iIG11c3QgaGF2ZSAiY29uc3QiIG9yICJlbnVtImApOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBmdW5jdGlvbiBhZGRNYXBwaW5nKHRhZ1ZhbHVlLCBpKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2YgdGFnVmFsdWUgIT0gInN0cmluZyIgfHwgdGFnVmFsdWUgaW4gb25lT2ZNYXBwaW5nKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBkaXNjcmltaW5hdG9yOiAiJHt0YWdOYW1lfSIgdmFsdWVzIG11c3QgYmUgdW5pcXVlIHN0cmluZ3NgKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBvbmVPZk1hcHBpbmdbdGFnVmFsdWVdID0gaTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9yZWZzL2pzb24tc2NoZW1hLWRyYWZ0LTA3Lmpzb24KdmFyIHJlcXVpcmVfanNvbl9zY2hlbWFfZHJhZnRfMDcgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcmVmcy9qc29uLXNjaGVtYS1kcmFmdC0wNy5qc29uIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgbW9kdWxlMi5leHBvcnRzID0gewogICAgICAkc2NoZW1hOiAiaHR0cDovL2pzb24tc2NoZW1hLm9yZy9kcmFmdC0wNy9zY2hlbWEjIiwKICAgICAgJGlkOiAiaHR0cDovL2pzb24tc2NoZW1hLm9yZy9kcmFmdC0wNy9zY2hlbWEjIiwKICAgICAgdGl0bGU6ICJDb3JlIHNjaGVtYSBtZXRhLXNjaGVtYSIsCiAgICAgIGRlZmluaXRpb25zOiB7CiAgICAgICAgc2NoZW1hQXJyYXk6IHsKICAgICAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgICAgICBtaW5JdGVtczogMSwKICAgICAgICAgIGl0ZW1zOiB7ICRyZWY6ICIjIiB9CiAgICAgICAgfSwKICAgICAgICBub25OZWdhdGl2ZUludGVnZXI6IHsKICAgICAgICAgIHR5cGU6ICJpbnRlZ2VyIiwKICAgICAgICAgIG1pbmltdW06IDAKICAgICAgICB9LAogICAgICAgIG5vbk5lZ2F0aXZlSW50ZWdlckRlZmF1bHQwOiB7CiAgICAgICAgICBhbGxPZjogW3sgJHJlZjogIiMvZGVmaW5pdGlvbnMvbm9uTmVnYXRpdmVJbnRlZ2VyIiB9LCB7IGRlZmF1bHQ6IDAgfV0KICAgICAgICB9LAogICAgICAgIHNpbXBsZVR5cGVzOiB7CiAgICAgICAgICBlbnVtOiBbImFycmF5IiwgImJvb2xlYW4iLCAiaW50ZWdlciIsICJudWxsIiwgIm51bWJlciIsICJvYmplY3QiLCAic3RyaW5nIl0KICAgICAgICB9LAogICAgICAgIHN0cmluZ0FycmF5OiB7CiAgICAgICAgICB0eXBlOiAiYXJyYXkiLAogICAgICAgICAgaXRlbXM6IHsgdHlwZTogInN0cmluZyIgfSwKICAgICAgICAgIHVuaXF1ZUl0ZW1zOiB0cnVlLAogICAgICAgICAgZGVmYXVsdDogW10KICAgICAgICB9CiAgICAgIH0sCiAgICAgIHR5cGU6IFsib2JqZWN0IiwgImJvb2xlYW4iXSwKICAgICAgcHJvcGVydGllczogewogICAgICAgICRpZDogewogICAgICAgICAgdHlwZTogInN0cmluZyIsCiAgICAgICAgICBmb3JtYXQ6ICJ1cmktcmVmZXJlbmNlIgogICAgICAgIH0sCiAgICAgICAgJHNjaGVtYTogewogICAgICAgICAgdHlwZTogInN0cmluZyIsCiAgICAgICAgICBmb3JtYXQ6ICJ1cmkiCiAgICAgICAgfSwKICAgICAgICAkcmVmOiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgICAgIGZvcm1hdDogInVyaS1yZWZlcmVuY2UiCiAgICAgICAgfSwKICAgICAgICAkY29tbWVudDogewogICAgICAgICAgdHlwZTogInN0cmluZyIKICAgICAgICB9LAogICAgICAgIHRpdGxlOiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIgogICAgICAgIH0sCiAgICAgICAgZGVzY3JpcHRpb246IHsKICAgICAgICAgIHR5cGU6ICJzdHJpbmciCiAgICAgICAgfSwKICAgICAgICBkZWZhdWx0OiB0cnVlLAogICAgICAgIHJlYWRPbmx5OiB7CiAgICAgICAgICB0eXBlOiAiYm9vbGVhbiIsCiAgICAgICAgICBkZWZhdWx0OiBmYWxzZQogICAgICAgIH0sCiAgICAgICAgZXhhbXBsZXM6IHsKICAgICAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgICAgICBpdGVtczogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgbXVsdGlwbGVPZjogewogICAgICAgICAgdHlwZTogIm51bWJlciIsCiAgICAgICAgICBleGNsdXNpdmVNaW5pbXVtOiAwCiAgICAgICAgfSwKICAgICAgICBtYXhpbXVtOiB7CiAgICAgICAgICB0eXBlOiAibnVtYmVyIgogICAgICAgIH0sCiAgICAgICAgZXhjbHVzaXZlTWF4aW11bTogewogICAgICAgICAgdHlwZTogIm51bWJlciIKICAgICAgICB9LAogICAgICAgIG1pbmltdW06IHsKICAgICAgICAgIHR5cGU6ICJudW1iZXIiCiAgICAgICAgfSwKICAgICAgICBleGNsdXNpdmVNaW5pbXVtOiB7CiAgICAgICAgICB0eXBlOiAibnVtYmVyIgogICAgICAgIH0sCiAgICAgICAgbWF4TGVuZ3RoOiB7ICRyZWY6ICIjL2RlZmluaXRpb25zL25vbk5lZ2F0aXZlSW50ZWdlciIgfSwKICAgICAgICBtaW5MZW5ndGg6IHsgJHJlZjogIiMvZGVmaW5pdGlvbnMvbm9uTmVnYXRpdmVJbnRlZ2VyRGVmYXVsdDAiIH0sCiAgICAgICAgcGF0dGVybjogewogICAgICAgICAgdHlwZTogInN0cmluZyIsCiAgICAgICAgICBmb3JtYXQ6ICJyZWdleCIKICAgICAgICB9LAogICAgICAgIGFkZGl0aW9uYWxJdGVtczogeyAkcmVmOiAiIyIgfSwKICAgICAgICBpdGVtczogewogICAgICAgICAgYW55T2Y6IFt7ICRyZWY6ICIjIiB9LCB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3NjaGVtYUFycmF5IiB9XSwKICAgICAgICAgIGRlZmF1bHQ6IHRydWUKICAgICAgICB9LAogICAgICAgIG1heEl0ZW1zOiB7ICRyZWY6ICIjL2RlZmluaXRpb25zL25vbk5lZ2F0aXZlSW50ZWdlciIgfSwKICAgICAgICBtaW5JdGVtczogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9ub25OZWdhdGl2ZUludGVnZXJEZWZhdWx0MCIgfSwKICAgICAgICB1bmlxdWVJdGVtczogewogICAgICAgICAgdHlwZTogImJvb2xlYW4iLAogICAgICAgICAgZGVmYXVsdDogZmFsc2UKICAgICAgICB9LAogICAgICAgIGNvbnRhaW5zOiB7ICRyZWY6ICIjIiB9LAogICAgICAgIG1heFByb3BlcnRpZXM6IHsgJHJlZjogIiMvZGVmaW5pdGlvbnMvbm9uTmVnYXRpdmVJbnRlZ2VyIiB9LAogICAgICAgIG1pblByb3BlcnRpZXM6IHsgJHJlZjogIiMvZGVmaW5pdGlvbnMvbm9uTmVnYXRpdmVJbnRlZ2VyRGVmYXVsdDAiIH0sCiAgICAgICAgcmVxdWlyZWQ6IHsgJHJlZjogIiMvZGVmaW5pdGlvbnMvc3RyaW5nQXJyYXkiIH0sCiAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHsgJHJlZjogIiMiIH0sCiAgICAgICAgZGVmaW5pdGlvbnM6IHsKICAgICAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHsgJHJlZjogIiMiIH0sCiAgICAgICAgICBkZWZhdWx0OiB7fQogICAgICAgIH0sCiAgICAgICAgcHJvcGVydGllczogewogICAgICAgICAgdHlwZTogIm9iamVjdCIsCiAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogeyAkcmVmOiAiIyIgfSwKICAgICAgICAgIGRlZmF1bHQ6IHt9CiAgICAgICAgfSwKICAgICAgICBwYXR0ZXJuUHJvcGVydGllczogewogICAgICAgICAgdHlwZTogIm9iamVjdCIsCiAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogeyAkcmVmOiAiIyIgfSwKICAgICAgICAgIHByb3BlcnR5TmFtZXM6IHsgZm9ybWF0OiAicmVnZXgiIH0sCiAgICAgICAgICBkZWZhdWx0OiB7fQogICAgICAgIH0sCiAgICAgICAgZGVwZW5kZW5jaWVzOiB7CiAgICAgICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiB7CiAgICAgICAgICAgIGFueU9mOiBbeyAkcmVmOiAiIyIgfSwgeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9zdHJpbmdBcnJheSIgfV0KICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIHByb3BlcnR5TmFtZXM6IHsgJHJlZjogIiMiIH0sCiAgICAgICAgY29uc3Q6IHRydWUsCiAgICAgICAgZW51bTogewogICAgICAgICAgdHlwZTogImFycmF5IiwKICAgICAgICAgIGl0ZW1zOiB0cnVlLAogICAgICAgICAgbWluSXRlbXM6IDEsCiAgICAgICAgICB1bmlxdWVJdGVtczogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgdHlwZTogewogICAgICAgICAgYW55T2Y6IFsKICAgICAgICAgICAgeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9zaW1wbGVUeXBlcyIgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgICAgICAgICAgaXRlbXM6IHsgJHJlZjogIiMvZGVmaW5pdGlvbnMvc2ltcGxlVHlwZXMiIH0sCiAgICAgICAgICAgICAgbWluSXRlbXM6IDEsCiAgICAgICAgICAgICAgdW5pcXVlSXRlbXM6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXQogICAgICAgIH0sCiAgICAgICAgZm9ybWF0OiB7IHR5cGU6ICJzdHJpbmciIH0sCiAgICAgICAgY29udGVudE1lZGlhVHlwZTogeyB0eXBlOiAic3RyaW5nIiB9LAogICAgICAgIGNvbnRlbnRFbmNvZGluZzogeyB0eXBlOiAic3RyaW5nIiB9LAogICAgICAgIGlmOiB7ICRyZWY6ICIjIiB9LAogICAgICAgIHRoZW46IHsgJHJlZjogIiMiIH0sCiAgICAgICAgZWxzZTogeyAkcmVmOiAiIyIgfSwKICAgICAgICBhbGxPZjogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9zY2hlbWFBcnJheSIgfSwKICAgICAgICBhbnlPZjogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9zY2hlbWFBcnJheSIgfSwKICAgICAgICBvbmVPZjogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9zY2hlbWFBcnJheSIgfSwKICAgICAgICBub3Q6IHsgJHJlZjogIiMiIH0KICAgICAgfSwKICAgICAgZGVmYXVsdDogdHJ1ZQogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi1lZTNjNjIxNjJjLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvYWp2LmpzCnZhciByZXF1aXJlX2FqdiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LWVlM2M2MjE2MmMuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9hanYuanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLk1pc3NpbmdSZWZFcnJvciA9IGV4cG9ydHMyLlZhbGlkYXRpb25FcnJvciA9IGV4cG9ydHMyLkNvZGVHZW4gPSBleHBvcnRzMi5OYW1lID0gZXhwb3J0czIubmlsID0gZXhwb3J0czIuc3RyaW5naWZ5ID0gZXhwb3J0czIuc3RyID0gZXhwb3J0czIuXyA9IGV4cG9ydHMyLktleXdvcmRDeHQgPSBleHBvcnRzMi5BanYgPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9jb3JlKCk7CiAgICB2YXIgZHJhZnQ3XzEgPSByZXF1aXJlX2RyYWZ0NygpOwogICAgdmFyIGRpc2NyaW1pbmF0b3JfMSA9IHJlcXVpcmVfZGlzY3JpbWluYXRvcigpOwogICAgdmFyIGRyYWZ0N01ldGFTY2hlbWEgPSByZXF1aXJlX2pzb25fc2NoZW1hX2RyYWZ0XzA3KCk7CiAgICB2YXIgTUVUQV9TVVBQT1JUX0RBVEEgPSBbIi9wcm9wZXJ0aWVzIl07CiAgICB2YXIgTUVUQV9TQ0hFTUFfSUQgPSAiaHR0cDovL2pzb24tc2NoZW1hLm9yZy9kcmFmdC0wNy9zY2hlbWEiOwogICAgdmFyIEFqdiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLmRlZmF1bHQgewogICAgICBfYWRkVm9jYWJ1bGFyaWVzKCkgewogICAgICAgIHN1cGVyLl9hZGRWb2NhYnVsYXJpZXMoKTsKICAgICAgICBkcmFmdDdfMS5kZWZhdWx0LmZvckVhY2goKHYpID0+IHRoaXMuYWRkVm9jYWJ1bGFyeSh2KSk7CiAgICAgICAgaWYgKHRoaXMub3B0cy5kaXNjcmltaW5hdG9yKQogICAgICAgICAgdGhpcy5hZGRLZXl3b3JkKGRpc2NyaW1pbmF0b3JfMS5kZWZhdWx0KTsKICAgICAgfQogICAgICBfYWRkRGVmYXVsdE1ldGFTY2hlbWEoKSB7CiAgICAgICAgc3VwZXIuX2FkZERlZmF1bHRNZXRhU2NoZW1hKCk7CiAgICAgICAgaWYgKCF0aGlzLm9wdHMubWV0YSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCBtZXRhU2NoZW1hID0gdGhpcy5vcHRzLiRkYXRhID8gdGhpcy4kZGF0YU1ldGFTY2hlbWEoZHJhZnQ3TWV0YVNjaGVtYSwgTUVUQV9TVVBQT1JUX0RBVEEpIDogZHJhZnQ3TWV0YVNjaGVtYTsKICAgICAgICB0aGlzLmFkZE1ldGFTY2hlbWEobWV0YVNjaGVtYSwgTUVUQV9TQ0hFTUFfSUQsIGZhbHNlKTsKICAgICAgICB0aGlzLnJlZnNbImh0dHA6Ly9qc29uLXNjaGVtYS5vcmcvc2NoZW1hIl0gPSBNRVRBX1NDSEVNQV9JRDsKICAgICAgfQogICAgICBkZWZhdWx0TWV0YSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5vcHRzLmRlZmF1bHRNZXRhID0gc3VwZXIuZGVmYXVsdE1ldGEoKSB8fCAodGhpcy5nZXRTY2hlbWEoTUVUQV9TQ0hFTUFfSUQpID8gTUVUQV9TQ0hFTUFfSUQgOiB2b2lkIDApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuQWp2ID0gQWp2OwogICAgbW9kdWxlMi5leHBvcnRzID0gZXhwb3J0czIgPSBBanY7CiAgICBtb2R1bGUyLmV4cG9ydHMuQWp2ID0gQWp2OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gQWp2OwogICAgdmFyIHZhbGlkYXRlXzEgPSByZXF1aXJlX3ZhbGlkYXRlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJLZXl3b3JkQ3h0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdmFsaWRhdGVfMS5LZXl3b3JkQ3h0OwogICAgfSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl8iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEuXzsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzdHIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEuc3RyOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0cmluZ2lmeSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5zdHJpbmdpZnk7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibmlsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLm5pbDsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJOYW1lIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLk5hbWU7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiQ29kZUdlbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5Db2RlR2VuOwogICAgfSB9KTsKICAgIHZhciB2YWxpZGF0aW9uX2Vycm9yXzEgPSByZXF1aXJlX3ZhbGlkYXRpb25fZXJyb3IoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlZhbGlkYXRpb25FcnJvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHZhbGlkYXRpb25fZXJyb3JfMS5kZWZhdWx0OwogICAgfSB9KTsKICAgIHZhciByZWZfZXJyb3JfMSA9IHJlcXVpcmVfcmVmX2Vycm9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJNaXNzaW5nUmVmRXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiByZWZfZXJyb3JfMS5kZWZhdWx0OwogICAgfSB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vYWp2LWZvcm1hdHMtdmlydHVhbC0wZGZiMjFhYjRlLzAvY2FjaGUvYWp2LWZvcm1hdHMtbnBtLTMuMC4xLTI2NjJjZjViMTItNTY3OWI5ZjljZS56aXAvbm9kZV9tb2R1bGVzL2Fqdi1mb3JtYXRzL2Rpc3QvZm9ybWF0cy5qcwp2YXIgcmVxdWlyZV9mb3JtYXRzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL2Fqdi1mb3JtYXRzLXZpcnR1YWwtMGRmYjIxYWI0ZS8wL2NhY2hlL2Fqdi1mb3JtYXRzLW5wbS0zLjAuMS0yNjYyY2Y1YjEyLTU2NzliOWY5Y2UuemlwL25vZGVfbW9kdWxlcy9hanYtZm9ybWF0cy9kaXN0L2Zvcm1hdHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZvcm1hdE5hbWVzID0gZXhwb3J0czIuZmFzdEZvcm1hdHMgPSBleHBvcnRzMi5mdWxsRm9ybWF0cyA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGZtdERlZih2YWxpZGF0ZSwgY29tcGFyZSkgewogICAgICByZXR1cm4geyB2YWxpZGF0ZSwgY29tcGFyZSB9OwogICAgfQogICAgZXhwb3J0czIuZnVsbEZvcm1hdHMgPSB7CiAgICAgIC8vIGRhdGU6IGh0dHA6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzMzMzkjc2VjdGlvbi01LjYKICAgICAgZGF0ZTogZm10RGVmKGRhdGUsIGNvbXBhcmVEYXRlKSwKICAgICAgLy8gZGF0ZS10aW1lOiBodHRwOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmMzMzM5I3NlY3Rpb24tNS42CiAgICAgIHRpbWU6IGZtdERlZihnZXRUaW1lKHRydWUpLCBjb21wYXJlVGltZSksCiAgICAgICJkYXRlLXRpbWUiOiBmbXREZWYoZ2V0RGF0ZVRpbWUodHJ1ZSksIGNvbXBhcmVEYXRlVGltZSksCiAgICAgICJpc28tdGltZSI6IGZtdERlZihnZXRUaW1lKCksIGNvbXBhcmVJc29UaW1lKSwKICAgICAgImlzby1kYXRlLXRpbWUiOiBmbXREZWYoZ2V0RGF0ZVRpbWUoKSwgY29tcGFyZUlzb0RhdGVUaW1lKSwKICAgICAgLy8gZHVyYXRpb246IGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmMzMzM5I2FwcGVuZGl4LUEKICAgICAgZHVyYXRpb246IC9eUCg/ISQpKChcZCtZKT8oXGQrTSk/KFxkK0QpPyhUKD89XGQpKFxkK0gpPyhcZCtNKT8oXGQrUyk/KT98KFxkK1cpPykkLywKICAgICAgdXJpLAogICAgICAidXJpLXJlZmVyZW5jZSI6IC9eKD86W2Etel1bYS16MC05K1wtLl0qOik/KD86XC8/XC8oPzooPzpbYS16MC05XC0uX34hJCYnKCkqKyw7PTpdfCVbMC05YS1mXXsyfSkqQCk/KD86XFsoPzooPzooPzooPzpbMC05YS1mXXsxLDR9Oil7Nn18OjooPzpbMC05YS1mXXsxLDR9Oil7NX18KD86WzAtOWEtZl17MSw0fSk/OjooPzpbMC05YS1mXXsxLDR9Oil7NH18KD86KD86WzAtOWEtZl17MSw0fTopezAsMX1bMC05YS1mXXsxLDR9KT86Oig/OlswLTlhLWZdezEsNH06KXszfXwoPzooPzpbMC05YS1mXXsxLDR9Oil7MCwyfVswLTlhLWZdezEsNH0pPzo6KD86WzAtOWEtZl17MSw0fTopezJ9fCg/Oig/OlswLTlhLWZdezEsNH06KXswLDN9WzAtOWEtZl17MSw0fSk/OjpbMC05YS1mXXsxLDR9OnwoPzooPzpbMC05YS1mXXsxLDR9Oil7MCw0fVswLTlhLWZdezEsNH0pPzo6KSg/OlswLTlhLWZdezEsNH06WzAtOWEtZl17MSw0fXwoPzooPzoyNVswLTVdfDJbMC00XVxkfFswMV0/XGRcZD8pXC4pezN9KD86MjVbMC01XXwyWzAtNF1cZHxbMDFdP1xkXGQ/KSl8KD86KD86WzAtOWEtZl17MSw0fTopezAsNX1bMC05YS1mXXsxLDR9KT86OlswLTlhLWZdezEsNH18KD86KD86WzAtOWEtZl17MSw0fTopezAsNn1bMC05YS1mXXsxLDR9KT86Oil8W1Z2XVswLTlhLWZdK1wuW2EtejAtOVwtLl9+ISQmJygpKissOz06XSspXF18KD86KD86MjVbMC01XXwyWzAtNF1cZHxbMDFdP1xkXGQ/KVwuKXszfSg/OjI1WzAtNV18MlswLTRdXGR8WzAxXT9cZFxkPyl8KD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9XXwlWzAtOWEtZl17Mn0pKikoPzo6XGQqKT8oPzpcLyg/OlthLXowLTlcLS5ffiEkJiciKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKikqfFwvKD86KD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkrKD86XC8oPzpbYS16MC05XC0uX34hJCYnIigpKissOz06QF18JVswLTlhLWZdezJ9KSopKik/fCg/OlthLXowLTlcLS5ffiEkJiciKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKyg/OlwvKD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkqKSopPyg/Olw/KD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9OkAvP118JVswLTlhLWZdezJ9KSopPyg/OiMoPzpbYS16MC05XC0uX34hJCYnIigpKissOz06QC8/XXwlWzAtOWEtZl17Mn0pKik/JC9pLAogICAgICAvLyB1cmktdGVtcGxhdGU6IGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM2NTcwCiAgICAgICJ1cmktdGVtcGxhdGUiOiAvXig/Oig/OlteXHgwMC1ceDIwIic8PiVcXF5ge3x9XXwlWzAtOWEtZl17Mn0pfFx7WysjLi87PyY9LCFAfF0/KD86W2EtejAtOV9dfCVbMC05YS1mXXsyfSkrKD86OlsxLTldWzAtOV17MCwzfXxcKik/KD86LCg/OlthLXowLTlfXXwlWzAtOWEtZl17Mn0pKyg/OjpbMS05XVswLTldezAsM318XCopPykqXH0pKiQvaSwKICAgICAgLy8gRm9yIHRoZSBzb3VyY2U6IGh0dHBzOi8vZ2lzdC5naXRodWIuY29tL2RwZXJpbmkvNzI5Mjk0CiAgICAgIC8vIEZvciB0ZXN0IGNhc2VzOiBodHRwczovL21hdGhpYXNieW5lbnMuYmUvZGVtby91cmwtcmVnZXgKICAgICAgdXJsOiAvXig/Omh0dHBzP3xmdHApOlwvXC8oPzpcUysoPzo6XFMqKT9AKT8oPzooPyEoPzoxMHwxMjcpKD86XC5cZHsxLDN9KXszfSkoPyEoPzoxNjlcLjI1NHwxOTJcLjE2OCkoPzpcLlxkezEsM30pezJ9KSg/ITE3MlwuKD86MVs2LTldfDJcZHwzWzAtMV0pKD86XC5cZHsxLDN9KXsyfSkoPzpbMS05XVxkP3wxXGRcZHwyWzAxXVxkfDIyWzAtM10pKD86XC4oPzoxP1xkezEsMn18MlswLTRdXGR8MjVbMC01XSkpezJ9KD86XC4oPzpbMS05XVxkP3wxXGRcZHwyWzAtNF1cZHwyNVswLTRdKSl8KD86KD86W2EtejAtOVx1ezAwYTF9LVx1e2ZmZmZ9XSstKSpbYS16MC05XHV7MDBhMX0tXHV7ZmZmZn1dKykoPzpcLig/OlthLXowLTlcdXswMGExfS1cdXtmZmZmfV0rLSkqW2EtejAtOVx1ezAwYTF9LVx1e2ZmZmZ9XSspKig/OlwuKD86W2Etelx1ezAwYTF9LVx1e2ZmZmZ9XXsyLH0pKSkoPzo6XGR7Miw1fSk/KD86XC9bXlxzXSopPyQvaXUsCiAgICAgIGVtYWlsOiAvXlthLXowLTkhIyQlJicqKy89P15fYHt8fX4tXSsoPzpcLlthLXowLTkhIyQlJicqKy89P15fYHt8fX4tXSspKkAoPzpbYS16MC05XSg/OlthLXowLTktXSpbYS16MC05XSk/XC4pK1thLXowLTldKD86W2EtejAtOS1dKlthLXowLTldKT8kL2ksCiAgICAgIGhvc3RuYW1lOiAvXig/PS57MSwyNTN9XC4/JClbYS16MC05XSg/OlthLXowLTktXXswLDYxfVthLXowLTldKT8oPzpcLlthLXowLTldKD86Wy0wLTlhLXpdezAsNjF9WzAtOWEtel0pPykqXC4/JC9pLAogICAgICAvLyBvcHRpbWl6ZWQgaHR0cHM6Ly93d3cuc2FmYXJpYm9va3NvbmxpbmUuY29tL2xpYnJhcnkvdmlldy9yZWd1bGFyLWV4cHJlc3Npb25zLWNvb2tib29rLzk3ODA1OTY4MDI4MzcvY2gwN3MxNi5odG1sCiAgICAgIGlwdjQ6IC9eKD86KD86MjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZClcLil7M30oPzoyNVswLTVdfDJbMC00XVxkfDFcZFxkfFsxLTldP1xkKSQvLAogICAgICBpcHY2OiAvXigoKFswLTlhLWZdezEsNH06KXs3fShbMC05YS1mXXsxLDR9fDopKXwoKFswLTlhLWZdezEsNH06KXs2fSg6WzAtOWEtZl17MSw0fXwoKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSl8OikpfCgoWzAtOWEtZl17MSw0fTopezV9KCgoOlswLTlhLWZdezEsNH0pezEsMn0pfDooKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSl8OikpfCgoWzAtOWEtZl17MSw0fTopezR9KCgoOlswLTlhLWZdezEsNH0pezEsM30pfCgoOlswLTlhLWZdezEsNH0pPzooKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSkpfDopKXwoKFswLTlhLWZdezEsNH06KXszfSgoKDpbMC05YS1mXXsxLDR9KXsxLDR9KXwoKDpbMC05YS1mXXsxLDR9KXswLDJ9OigoMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkoXC4oMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkpezN9KSl8OikpfCgoWzAtOWEtZl17MSw0fTopezJ9KCgoOlswLTlhLWZdezEsNH0pezEsNX0pfCgoOlswLTlhLWZdezEsNH0pezAsM306KCgyNVswLTVdfDJbMC00XVxkfDFcZFxkfFsxLTldP1xkKShcLigyNVswLTVdfDJbMC00XVxkfDFcZFxkfFsxLTldP1xkKSl7M30pKXw6KSl8KChbMC05YS1mXXsxLDR9Oil7MX0oKCg6WzAtOWEtZl17MSw0fSl7MSw2fSl8KCg6WzAtOWEtZl17MSw0fSl7MCw0fTooKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSkpfDopKXwoOigoKDpbMC05YS1mXXsxLDR9KXsxLDd9KXwoKDpbMC05YS1mXXsxLDR9KXswLDV9OigoMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkoXC4oMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkpezN9KSl8OikpKSQvaSwKICAgICAgcmVnZXgsCiAgICAgIC8vIHV1aWQ6IGh0dHA6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzQxMjIKICAgICAgdXVpZDogL14oPzp1cm46dXVpZDopP1swLTlhLWZdezh9LSg/OlswLTlhLWZdezR9LSl7M31bMC05YS1mXXsxMn0kL2ksCiAgICAgIC8vIEpTT04tcG9pbnRlcjogaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzY5MDEKICAgICAgLy8gdXJpIGZyYWdtZW50OiBodHRwczovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjMzk4NiNhcHBlbmRpeC1BCiAgICAgICJqc29uLXBvaW50ZXIiOiAvXig/OlwvKD86W15+L118fjB8fjEpKikqJC8sCiAgICAgICJqc29uLXBvaW50ZXItdXJpLWZyYWdtZW50IjogL14jKD86XC8oPzpbYS16MC05X1wtLiEkJicoKSorLDs6PUBdfCVbMC05YS1mXXsyfXx+MHx+MSkqKSokL2ksCiAgICAgIC8vIHJlbGF0aXZlIEpTT04tcG9pbnRlcjogaHR0cDovL3Rvb2xzLmlldGYub3JnL2h0bWwvZHJhZnQtbHVmZi1yZWxhdGl2ZS1qc29uLXBvaW50ZXItMDAKICAgICAgInJlbGF0aXZlLWpzb24tcG9pbnRlciI6IC9eKD86MHxbMS05XVswLTldKikoPzojfCg/OlwvKD86W15+L118fjB8fjEpKikqKSQvLAogICAgICAvLyB0aGUgZm9sbG93aW5nIGZvcm1hdHMgYXJlIHVzZWQgYnkgdGhlIG9wZW5hcGkgc3BlY2lmaWNhdGlvbjogaHR0cHM6Ly9zcGVjLm9wZW5hcGlzLm9yZy9vYXMvdjMuMC4wI2RhdGEtdHlwZXMKICAgICAgLy8gYnl0ZTogaHR0cHM6Ly9naXRodWIuY29tL21pZ3VlbG1vdGEvaXMtYmFzZTY0CiAgICAgIGJ5dGUsCiAgICAgIC8vIHNpZ25lZCAzMiBiaXQgaW50ZWdlcgogICAgICBpbnQzMjogeyB0eXBlOiAibnVtYmVyIiwgdmFsaWRhdGU6IHZhbGlkYXRlSW50MzIgfSwKICAgICAgLy8gc2lnbmVkIDY0IGJpdCBpbnRlZ2VyCiAgICAgIGludDY0OiB7IHR5cGU6ICJudW1iZXIiLCB2YWxpZGF0ZTogdmFsaWRhdGVJbnQ2NCB9LAogICAgICAvLyBDLXR5cGUgZmxvYXQKICAgICAgZmxvYXQ6IHsgdHlwZTogIm51bWJlciIsIHZhbGlkYXRlOiB2YWxpZGF0ZU51bWJlciB9LAogICAgICAvLyBDLXR5cGUgZG91YmxlCiAgICAgIGRvdWJsZTogeyB0eXBlOiAibnVtYmVyIiwgdmFsaWRhdGU6IHZhbGlkYXRlTnVtYmVyIH0sCiAgICAgIC8vIGhpbnQgdG8gdGhlIFVJIHRvIGhpZGUgaW5wdXQgc3RyaW5ncwogICAgICBwYXNzd29yZDogdHJ1ZSwKICAgICAgLy8gdW5jaGVja2VkIHN0cmluZyBwYXlsb2FkCiAgICAgIGJpbmFyeTogdHJ1ZQogICAgfTsKICAgIGV4cG9ydHMyLmZhc3RGb3JtYXRzID0gewogICAgICAuLi5leHBvcnRzMi5mdWxsRm9ybWF0cywKICAgICAgZGF0ZTogZm10RGVmKC9eXGRcZFxkXGQtWzAtMV1cZC1bMC0zXVxkJC8sIGNvbXBhcmVEYXRlKSwKICAgICAgdGltZTogZm10RGVmKC9eKD86WzAtMl1cZDpbMC01XVxkOlswLTVdXGR8MjM6NTk6NjApKD86XC5cZCspPyg/Onp8WystXVxkXGQoPzo6P1xkXGQpPykkL2ksIGNvbXBhcmVUaW1lKSwKICAgICAgImRhdGUtdGltZSI6IGZtdERlZigvXlxkXGRcZFxkLVswLTFdXGQtWzAtM11cZHQoPzpbMC0yXVxkOlswLTVdXGQ6WzAtNV1cZHwyMzo1OTo2MCkoPzpcLlxkKyk/KD86enxbKy1dXGRcZCg/Ojo/XGRcZCk/KSQvaSwgY29tcGFyZURhdGVUaW1lKSwKICAgICAgImlzby10aW1lIjogZm10RGVmKC9eKD86WzAtMl1cZDpbMC01XVxkOlswLTVdXGR8MjM6NTk6NjApKD86XC5cZCspPyg/Onp8WystXVxkXGQoPzo6P1xkXGQpPyk/JC9pLCBjb21wYXJlSXNvVGltZSksCiAgICAgICJpc28tZGF0ZS10aW1lIjogZm10RGVmKC9eXGRcZFxkXGQtWzAtMV1cZC1bMC0zXVxkW3Rcc10oPzpbMC0yXVxkOlswLTVdXGQ6WzAtNV1cZHwyMzo1OTo2MCkoPzpcLlxkKyk/KD86enxbKy1dXGRcZCg/Ojo/XGRcZCk/KT8kL2ksIGNvbXBhcmVJc29EYXRlVGltZSksCiAgICAgIC8vIHVyaTogaHR0cHM6Ly9naXRodWIuY29tL21hZmludG9zaC9pcy1teS1qc29uLXZhbGlkL2Jsb2IvbWFzdGVyL2Zvcm1hdHMuanMKICAgICAgdXJpOiAvXig/OlthLXpdW2EtejAtOStcLS5dKjopKD86XC8/XC8pP1teXHNdKiQvaSwKICAgICAgInVyaS1yZWZlcmVuY2UiOiAvXig/Oig/OlthLXpdW2EtejAtOStcLS5dKjopP1wvP1wvKT8oPzpbXlxcXHMjXVteXHMjXSopPyg/OiNbXlxcXHNdKik/JC9pLAogICAgICAvLyBlbWFpbCAoc291cmNlcyBmcm9tIGpzZW4gdmFsaWRhdG9yKToKICAgICAgLy8gaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8yMDEzMjMvdXNpbmctYS1yZWd1bGFyLWV4cHJlc3Npb24tdG8tdmFsaWRhdGUtYW4tZW1haWwtYWRkcmVzcyNhbnN3ZXItODgyOTM2MwogICAgICAvLyBodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNS9mb3Jtcy5odG1sI3ZhbGlkLWUtbWFpbC1hZGRyZXNzIChzZWFyY2ggZm9yICd3aWxmdWwgdmlvbGF0aW9uJykKICAgICAgZW1haWw6IC9eW2EtejAtOS4hIyQlJicqKy89P15fYHt8fX4tXStAW2EtejAtOV0oPzpbYS16MC05LV17MCw2MX1bYS16MC05XSk/KD86XC5bYS16MC05XSg/OlthLXowLTktXXswLDYxfVthLXowLTldKT8pKiQvaQogICAgfTsKICAgIGV4cG9ydHMyLmZvcm1hdE5hbWVzID0gT2JqZWN0LmtleXMoZXhwb3J0czIuZnVsbEZvcm1hdHMpOwogICAgZnVuY3Rpb24gaXNMZWFwWWVhcih5ZWFyKSB7CiAgICAgIHJldHVybiB5ZWFyICUgNCA9PT0gMCAmJiAoeWVhciAlIDEwMCAhPT0gMCB8fCB5ZWFyICUgNDAwID09PSAwKTsKICAgIH0KICAgIHZhciBEQVRFID0gL14oXGRcZFxkXGQpLShcZFxkKS0oXGRcZCkkLzsKICAgIHZhciBEQVlTID0gWzAsIDMxLCAyOCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMSwgMzAsIDMxLCAzMCwgMzFdOwogICAgZnVuY3Rpb24gZGF0ZShzdHIpIHsKICAgICAgY29uc3QgbWF0Y2hlcyA9IERBVEUuZXhlYyhzdHIpOwogICAgICBpZiAoIW1hdGNoZXMpCiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICBjb25zdCB5ZWFyID0gK21hdGNoZXNbMV07CiAgICAgIGNvbnN0IG1vbnRoID0gK21hdGNoZXNbMl07CiAgICAgIGNvbnN0IGRheSA9ICttYXRjaGVzWzNdOwogICAgICByZXR1cm4gbW9udGggPj0gMSAmJiBtb250aCA8PSAxMiAmJiBkYXkgPj0gMSAmJiBkYXkgPD0gKG1vbnRoID09PSAyICYmIGlzTGVhcFllYXIoeWVhcikgPyAyOSA6IERBWVNbbW9udGhdKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbXBhcmVEYXRlKGQxLCBkMikgewogICAgICBpZiAoIShkMSAmJiBkMikpCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgaWYgKGQxID4gZDIpCiAgICAgICAgcmV0dXJuIDE7CiAgICAgIGlmIChkMSA8IGQyKQogICAgICAgIHJldHVybiAtMTsKICAgICAgcmV0dXJuIDA7CiAgICB9CiAgICB2YXIgVElNRSA9IC9eKFxkXGQpOihcZFxkKTooXGRcZCg/OlwuXGQrKT8pKHp8KFsrLV0pKFxkXGQpKD86Oj8oXGRcZCkpPyk/JC9pOwogICAgZnVuY3Rpb24gZ2V0VGltZShzdHJpY3RUaW1lWm9uZSkgewogICAgICByZXR1cm4gZnVuY3Rpb24gdGltZShzdHIpIHsKICAgICAgICBjb25zdCBtYXRjaGVzID0gVElNRS5leGVjKHN0cik7CiAgICAgICAgaWYgKCFtYXRjaGVzKQogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIGNvbnN0IGhyID0gK21hdGNoZXNbMV07CiAgICAgICAgY29uc3QgbWluID0gK21hdGNoZXNbMl07CiAgICAgICAgY29uc3Qgc2VjID0gK21hdGNoZXNbM107CiAgICAgICAgY29uc3QgdHogPSBtYXRjaGVzWzRdOwogICAgICAgIGNvbnN0IHR6U2lnbiA9IG1hdGNoZXNbNV0gPT09ICItIiA/IC0xIDogMTsKICAgICAgICBjb25zdCB0ekggPSArKG1hdGNoZXNbNl0gfHwgMCk7CiAgICAgICAgY29uc3QgdHpNID0gKyhtYXRjaGVzWzddIHx8IDApOwogICAgICAgIGlmICh0ekggPiAyMyB8fCB0ek0gPiA1OSB8fCBzdHJpY3RUaW1lWm9uZSAmJiAhdHopCiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgaWYgKGhyIDw9IDIzICYmIG1pbiA8PSA1OSAmJiBzZWMgPCA2MCkKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIGNvbnN0IHV0Y01pbiA9IG1pbiAtIHR6TSAqIHR6U2lnbjsKICAgICAgICBjb25zdCB1dGNIciA9IGhyIC0gdHpIICogdHpTaWduIC0gKHV0Y01pbiA8IDAgPyAxIDogMCk7CiAgICAgICAgcmV0dXJuICh1dGNIciA9PT0gMjMgfHwgdXRjSHIgPT09IC0xKSAmJiAodXRjTWluID09PSA1OSB8fCB1dGNNaW4gPT09IC0xKSAmJiBzZWMgPCA2MTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbXBhcmVUaW1lKHMxLCBzMikgewogICAgICBpZiAoIShzMSAmJiBzMikpCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgY29uc3QgdDEgPSAoLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCIyMDIwLTAxLTAxVCIgKyBzMSkpLnZhbHVlT2YoKTsKICAgICAgY29uc3QgdDIgPSAoLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCIyMDIwLTAxLTAxVCIgKyBzMikpLnZhbHVlT2YoKTsKICAgICAgaWYgKCEodDEgJiYgdDIpKQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIHJldHVybiB0MSAtIHQyOwogICAgfQogICAgZnVuY3Rpb24gY29tcGFyZUlzb1RpbWUodDEsIHQyKSB7CiAgICAgIGlmICghKHQxICYmIHQyKSkKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICBjb25zdCBhMSA9IFRJTUUuZXhlYyh0MSk7CiAgICAgIGNvbnN0IGEyID0gVElNRS5leGVjKHQyKTsKICAgICAgaWYgKCEoYTEgJiYgYTIpKQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIHQxID0gYTFbMV0gKyBhMVsyXSArIGExWzNdOwogICAgICB0MiA9IGEyWzFdICsgYTJbMl0gKyBhMlszXTsKICAgICAgaWYgKHQxID4gdDIpCiAgICAgICAgcmV0dXJuIDE7CiAgICAgIGlmICh0MSA8IHQyKQogICAgICAgIHJldHVybiAtMTsKICAgICAgcmV0dXJuIDA7CiAgICB9CiAgICB2YXIgREFURV9USU1FX1NFUEFSQVRPUiA9IC90fFxzL2k7CiAgICBmdW5jdGlvbiBnZXREYXRlVGltZShzdHJpY3RUaW1lWm9uZSkgewogICAgICBjb25zdCB0aW1lID0gZ2V0VGltZShzdHJpY3RUaW1lWm9uZSk7CiAgICAgIHJldHVybiBmdW5jdGlvbiBkYXRlX3RpbWUoc3RyKSB7CiAgICAgICAgY29uc3QgZGF0ZVRpbWUgPSBzdHIuc3BsaXQoREFURV9USU1FX1NFUEFSQVRPUik7CiAgICAgICAgcmV0dXJuIGRhdGVUaW1lLmxlbmd0aCA9PT0gMiAmJiBkYXRlKGRhdGVUaW1lWzBdKSAmJiB0aW1lKGRhdGVUaW1lWzFdKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbXBhcmVEYXRlVGltZShkdDEsIGR0MikgewogICAgICBpZiAoIShkdDEgJiYgZHQyKSkKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICBjb25zdCBkMSA9IG5ldyBEYXRlKGR0MSkudmFsdWVPZigpOwogICAgICBjb25zdCBkMiA9IG5ldyBEYXRlKGR0MikudmFsdWVPZigpOwogICAgICBpZiAoIShkMSAmJiBkMikpCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgcmV0dXJuIGQxIC0gZDI7CiAgICB9CiAgICBmdW5jdGlvbiBjb21wYXJlSXNvRGF0ZVRpbWUoZHQxLCBkdDIpIHsKICAgICAgaWYgKCEoZHQxICYmIGR0MikpCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgY29uc3QgW2QxLCB0MV0gPSBkdDEuc3BsaXQoREFURV9USU1FX1NFUEFSQVRPUik7CiAgICAgIGNvbnN0IFtkMiwgdDJdID0gZHQyLnNwbGl0KERBVEVfVElNRV9TRVBBUkFUT1IpOwogICAgICBjb25zdCByZXMgPSBjb21wYXJlRGF0ZShkMSwgZDIpOwogICAgICBpZiAocmVzID09PSB2b2lkIDApCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgcmV0dXJuIHJlcyB8fCBjb21wYXJlVGltZSh0MSwgdDIpOwogICAgfQogICAgdmFyIE5PVF9VUklfRlJBR01FTlQgPSAvXC98Oi87CiAgICB2YXIgVVJJID0gL14oPzpbYS16XVthLXowLTkrXC0uXSo6KSg/OlwvP1wvKD86KD86W2EtejAtOVwtLl9+ISQmJygpKissOz06XXwlWzAtOWEtZl17Mn0pKkApPyg/OlxbKD86KD86KD86KD86WzAtOWEtZl17MSw0fTopezZ9fDo6KD86WzAtOWEtZl17MSw0fTopezV9fCg/OlswLTlhLWZdezEsNH0pPzo6KD86WzAtOWEtZl17MSw0fTopezR9fCg/Oig/OlswLTlhLWZdezEsNH06KXswLDF9WzAtOWEtZl17MSw0fSk/OjooPzpbMC05YS1mXXsxLDR9Oil7M318KD86KD86WzAtOWEtZl17MSw0fTopezAsMn1bMC05YS1mXXsxLDR9KT86Oig/OlswLTlhLWZdezEsNH06KXsyfXwoPzooPzpbMC05YS1mXXsxLDR9Oil7MCwzfVswLTlhLWZdezEsNH0pPzo6WzAtOWEtZl17MSw0fTp8KD86KD86WzAtOWEtZl17MSw0fTopezAsNH1bMC05YS1mXXsxLDR9KT86OikoPzpbMC05YS1mXXsxLDR9OlswLTlhLWZdezEsNH18KD86KD86MjVbMC01XXwyWzAtNF1cZHxbMDFdP1xkXGQ/KVwuKXszfSg/OjI1WzAtNV18MlswLTRdXGR8WzAxXT9cZFxkPykpfCg/Oig/OlswLTlhLWZdezEsNH06KXswLDV9WzAtOWEtZl17MSw0fSk/OjpbMC05YS1mXXsxLDR9fCg/Oig/OlswLTlhLWZdezEsNH06KXswLDZ9WzAtOWEtZl17MSw0fSk/OjopfFtWdl1bMC05YS1mXStcLlthLXowLTlcLS5ffiEkJicoKSorLDs9Ol0rKVxdfCg/Oig/OjI1WzAtNV18MlswLTRdXGR8WzAxXT9cZFxkPylcLil7M30oPzoyNVswLTVdfDJbMC00XVxkfFswMV0/XGRcZD8pfCg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9XXwlWzAtOWEtZl17Mn0pKikoPzo6XGQqKT8oPzpcLyg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkqKSp8XC8oPzooPzpbYS16MC05XC0uX34hJCYnKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKyg/OlwvKD86W2EtejAtOVwtLl9+ISQmJygpKissOz06QF18JVswLTlhLWZdezJ9KSopKik/fCg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkrKD86XC8oPzpbYS16MC05XC0uX34hJCYnKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKikqKSg/Olw/KD86W2EtejAtOVwtLl9+ISQmJygpKissOz06QC8/XXwlWzAtOWEtZl17Mn0pKik/KD86Iyg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9OkAvP118JVswLTlhLWZdezJ9KSopPyQvaTsKICAgIGZ1bmN0aW9uIHVyaShzdHIpIHsKICAgICAgcmV0dXJuIE5PVF9VUklfRlJBR01FTlQudGVzdChzdHIpICYmIFVSSS50ZXN0KHN0cik7CiAgICB9CiAgICB2YXIgQllURSA9IC9eKD86W0EtWmEtejAtOSsvXXs0fSkqKD86W0EtWmEtejAtOSsvXXsyfT09fFtBLVphLXowLTkrL117M309KT8kL2dtOwogICAgZnVuY3Rpb24gYnl0ZShzdHIpIHsKICAgICAgQllURS5sYXN0SW5kZXggPSAwOwogICAgICByZXR1cm4gQllURS50ZXN0KHN0cik7CiAgICB9CiAgICB2YXIgTUlOX0lOVDMyID0gLSgyICoqIDMxKTsKICAgIHZhciBNQVhfSU5UMzIgPSAyICoqIDMxIC0gMTsKICAgIGZ1bmN0aW9uIHZhbGlkYXRlSW50MzIodmFsdWUpIHsKICAgICAgcmV0dXJuIE51bWJlci5pc0ludGVnZXIodmFsdWUpICYmIHZhbHVlIDw9IE1BWF9JTlQzMiAmJiB2YWx1ZSA+PSBNSU5fSU5UMzI7CiAgICB9CiAgICBmdW5jdGlvbiB2YWxpZGF0ZUludDY0KHZhbHVlKSB7CiAgICAgIHJldHVybiBOdW1iZXIuaXNJbnRlZ2VyKHZhbHVlKTsKICAgIH0KICAgIGZ1bmN0aW9uIHZhbGlkYXRlTnVtYmVyKCkgewogICAgICByZXR1cm4gdHJ1ZTsKICAgIH0KICAgIHZhciBaX0FOQ0hPUiA9IC9bXlxcXVxcWi87CiAgICBmdW5jdGlvbiByZWdleChzdHIpIHsKICAgICAgaWYgKFpfQU5DSE9SLnRlc3Qoc3RyKSkKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIHRyeSB7CiAgICAgICAgbmV3IFJlZ0V4cChzdHIpOwogICAgICAgIHJldHVybiB0cnVlOwogICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL2Fqdi1mb3JtYXRzLXZpcnR1YWwtMGRmYjIxYWI0ZS8wL2NhY2hlL2Fqdi1mb3JtYXRzLW5wbS0zLjAuMS0yNjYyY2Y1YjEyLTU2NzliOWY5Y2UuemlwL25vZGVfbW9kdWxlcy9hanYtZm9ybWF0cy9kaXN0L2xpbWl0LmpzCnZhciByZXF1aXJlX2xpbWl0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL2Fqdi1mb3JtYXRzLXZpcnR1YWwtMGRmYjIxYWI0ZS8wL2NhY2hlL2Fqdi1mb3JtYXRzLW5wbS0zLjAuMS0yNjYyY2Y1YjEyLTU2NzliOWY5Y2UuemlwL25vZGVfbW9kdWxlcy9hanYtZm9ybWF0cy9kaXN0L2xpbWl0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5mb3JtYXRMaW1pdERlZmluaXRpb24gPSB2b2lkIDA7CiAgICB2YXIgYWp2XzEgPSByZXF1aXJlX2FqdigpOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIG9wcyA9IGNvZGVnZW5fMS5vcGVyYXRvcnM7CiAgICB2YXIgS1dEcyA9IHsKICAgICAgZm9ybWF0TWF4aW11bTogeyBva1N0cjogIjw9Iiwgb2s6IG9wcy5MVEUsIGZhaWw6IG9wcy5HVCB9LAogICAgICBmb3JtYXRNaW5pbXVtOiB7IG9rU3RyOiAiPj0iLCBvazogb3BzLkdURSwgZmFpbDogb3BzLkxUIH0sCiAgICAgIGZvcm1hdEV4Y2x1c2l2ZU1heGltdW06IHsgb2tTdHI6ICI8Iiwgb2s6IG9wcy5MVCwgZmFpbDogb3BzLkdURSB9LAogICAgICBmb3JtYXRFeGNsdXNpdmVNaW5pbXVtOiB7IG9rU3RyOiAiPiIsIG9rOiBvcHMuR1QsIGZhaWw6IG9wcy5MVEUgfQogICAgfTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsga2V5d29yZCwgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLnN0cilgc2hvdWxkIGJlICR7S1dEc1trZXl3b3JkXS5va1N0cn0gJHtzY2hlbWFDb2RlfWAsCiAgICAgIHBhcmFtczogKHsga2V5d29yZCwgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtjb21wYXJpc29uOiAke0tXRHNba2V5d29yZF0ub2tTdHJ9LCBsaW1pdDogJHtzY2hlbWFDb2RlfX1gCiAgICB9OwogICAgZXhwb3J0czIuZm9ybWF0TGltaXREZWZpbml0aW9uID0gewogICAgICBrZXl3b3JkOiBPYmplY3Qua2V5cyhLV0RzKSwKICAgICAgdHlwZTogInN0cmluZyIsCiAgICAgIHNjaGVtYVR5cGU6ICJzdHJpbmciLAogICAgICAkZGF0YTogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIHNjaGVtYUNvZGUsIGtleXdvcmQsIGl0IH0gPSBjeHQ7CiAgICAgICAgY29uc3QgeyBvcHRzLCBzZWxmOiBzZWxmMiB9ID0gaXQ7CiAgICAgICAgaWYgKCFvcHRzLnZhbGlkYXRlRm9ybWF0cykKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCBmQ3h0ID0gbmV3IGFqdl8xLktleXdvcmRDeHQoaXQsIHNlbGYyLlJVTEVTLmFsbC5mb3JtYXQuZGVmaW5pdGlvbiwgImZvcm1hdCIpOwogICAgICAgIGlmIChmQ3h0LiRkYXRhKQogICAgICAgICAgdmFsaWRhdGUkRGF0YUZvcm1hdCgpOwogICAgICAgIGVsc2UKICAgICAgICAgIHZhbGlkYXRlRm9ybWF0KCk7CiAgICAgICAgZnVuY3Rpb24gdmFsaWRhdGUkRGF0YUZvcm1hdCgpIHsKICAgICAgICAgIGNvbnN0IGZtdHMgPSBnZW4uc2NvcGVWYWx1ZSgiZm9ybWF0cyIsIHsKICAgICAgICAgICAgcmVmOiBzZWxmMi5mb3JtYXRzLAogICAgICAgICAgICBjb2RlOiBvcHRzLmNvZGUuZm9ybWF0cwogICAgICAgICAgfSk7CiAgICAgICAgICBjb25zdCBmbXQgPSBnZW4uY29uc3QoImZtdCIsICgwLCBjb2RlZ2VuXzEuXylgJHtmbXRzfVske2ZDeHQuc2NoZW1hQ29kZX1dYCk7CiAgICAgICAgICBjeHQuZmFpbCRkYXRhKCgwLCBjb2RlZ2VuXzEub3IpKCgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7Zm10fSAhPSAib2JqZWN0ImAsICgwLCBjb2RlZ2VuXzEuXylgJHtmbXR9IGluc3RhbmNlb2YgUmVnRXhwYCwgKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtmbXR9LmNvbXBhcmUgIT0gImZ1bmN0aW9uImAsIGNvbXBhcmVDb2RlKGZtdCkpKTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gdmFsaWRhdGVGb3JtYXQoKSB7CiAgICAgICAgICBjb25zdCBmb3JtYXQgPSBmQ3h0LnNjaGVtYTsKICAgICAgICAgIGNvbnN0IGZtdERlZiA9IHNlbGYyLmZvcm1hdHNbZm9ybWF0XTsKICAgICAgICAgIGlmICghZm10RGVmIHx8IGZtdERlZiA9PT0gdHJ1ZSkKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgaWYgKHR5cGVvZiBmbXREZWYgIT0gIm9iamVjdCIgfHwgZm10RGVmIGluc3RhbmNlb2YgUmVnRXhwIHx8IHR5cGVvZiBmbXREZWYuY29tcGFyZSAhPSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgIiR7a2V5d29yZH0iOiBmb3JtYXQgIiR7Zm9ybWF0fSIgZG9lcyBub3QgZGVmaW5lICJjb21wYXJlIiBmdW5jdGlvbmApOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgZm10ID0gZ2VuLnNjb3BlVmFsdWUoImZvcm1hdHMiLCB7CiAgICAgICAgICAgIGtleTogZm9ybWF0LAogICAgICAgICAgICByZWY6IGZtdERlZiwKICAgICAgICAgICAgY29kZTogb3B0cy5jb2RlLmZvcm1hdHMgPyAoMCwgY29kZWdlbl8xLl8pYCR7b3B0cy5jb2RlLmZvcm1hdHN9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShmb3JtYXQpfWAgOiB2b2lkIDAKICAgICAgICAgIH0pOwogICAgICAgICAgY3h0LmZhaWwkZGF0YShjb21wYXJlQ29kZShmbXQpKTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gY29tcGFyZUNvZGUoZm10KSB7CiAgICAgICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5fKWAke2ZtdH0uY29tcGFyZSgke2RhdGF9LCAke3NjaGVtYUNvZGV9KSAke0tXRHNba2V5d29yZF0uZmFpbH0gMGA7CiAgICAgICAgfQogICAgICB9LAogICAgICBkZXBlbmRlbmNpZXM6IFsiZm9ybWF0Il0KICAgIH07CiAgICB2YXIgZm9ybWF0TGltaXRQbHVnaW4gPSAoYWp2KSA9PiB7CiAgICAgIGFqdi5hZGRLZXl3b3JkKGV4cG9ydHMyLmZvcm1hdExpbWl0RGVmaW5pdGlvbik7CiAgICAgIHJldHVybiBhanY7CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGZvcm1hdExpbWl0UGx1Z2luOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9hanYtZm9ybWF0cy12aXJ0dWFsLTBkZmIyMWFiNGUvMC9jYWNoZS9hanYtZm9ybWF0cy1ucG0tMy4wLjEtMjY2MmNmNWIxMi01Njc5YjlmOWNlLnppcC9ub2RlX21vZHVsZXMvYWp2LWZvcm1hdHMvZGlzdC9pbmRleC5qcwp2YXIgcmVxdWlyZV9kaXN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL2Fqdi1mb3JtYXRzLXZpcnR1YWwtMGRmYjIxYWI0ZS8wL2NhY2hlL2Fqdi1mb3JtYXRzLW5wbS0zLjAuMS0yNjYyY2Y1YjEyLTU2NzliOWY5Y2UuemlwL25vZGVfbW9kdWxlcy9hanYtZm9ybWF0cy9kaXN0L2luZGV4LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgZm9ybWF0c18xID0gcmVxdWlyZV9mb3JtYXRzKCk7CiAgICB2YXIgbGltaXRfMSA9IHJlcXVpcmVfbGltaXQoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBmdWxsTmFtZSA9IG5ldyBjb2RlZ2VuXzEuTmFtZSgiZnVsbEZvcm1hdHMiKTsKICAgIHZhciBmYXN0TmFtZSA9IG5ldyBjb2RlZ2VuXzEuTmFtZSgiZmFzdEZvcm1hdHMiKTsKICAgIHZhciBmb3JtYXRzUGx1Z2luID0gKGFqdiwgb3B0cyA9IHsga2V5d29yZHM6IHRydWUgfSkgPT4gewogICAgICBpZiAoQXJyYXkuaXNBcnJheShvcHRzKSkgewogICAgICAgIGFkZEZvcm1hdHMoYWp2LCBvcHRzLCBmb3JtYXRzXzEuZnVsbEZvcm1hdHMsIGZ1bGxOYW1lKTsKICAgICAgICByZXR1cm4gYWp2OwogICAgICB9CiAgICAgIGNvbnN0IFtmb3JtYXRzLCBleHBvcnROYW1lXSA9IG9wdHMubW9kZSA9PT0gImZhc3QiID8gW2Zvcm1hdHNfMS5mYXN0Rm9ybWF0cywgZmFzdE5hbWVdIDogW2Zvcm1hdHNfMS5mdWxsRm9ybWF0cywgZnVsbE5hbWVdOwogICAgICBjb25zdCBsaXN0ID0gb3B0cy5mb3JtYXRzIHx8IGZvcm1hdHNfMS5mb3JtYXROYW1lczsKICAgICAgYWRkRm9ybWF0cyhhanYsIGxpc3QsIGZvcm1hdHMsIGV4cG9ydE5hbWUpOwogICAgICBpZiAob3B0cy5rZXl3b3JkcykKICAgICAgICAoMCwgbGltaXRfMS5kZWZhdWx0KShhanYpOwogICAgICByZXR1cm4gYWp2OwogICAgfTsKICAgIGZvcm1hdHNQbHVnaW4uZ2V0ID0gKG5hbWUsIG1vZGUgPSAiZnVsbCIpID0+IHsKICAgICAgY29uc3QgZm9ybWF0cyA9IG1vZGUgPT09ICJmYXN0IiA/IGZvcm1hdHNfMS5mYXN0Rm9ybWF0cyA6IGZvcm1hdHNfMS5mdWxsRm9ybWF0czsKICAgICAgY29uc3QgZiA9IGZvcm1hdHNbbmFtZV07CiAgICAgIGlmICghZikKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gZm9ybWF0ICIke25hbWV9ImApOwogICAgICByZXR1cm4gZjsKICAgIH07CiAgICBmdW5jdGlvbiBhZGRGb3JtYXRzKGFqdiwgbGlzdCwgZnMsIGV4cG9ydE5hbWUpIHsKICAgICAgdmFyIF9hOwogICAgICB2YXIgX2I7CiAgICAgIChfYSA9IChfYiA9IGFqdi5vcHRzLmNvZGUpLmZvcm1hdHMpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IF9iLmZvcm1hdHMgPSAoMCwgY29kZWdlbl8xLl8pYHJlcXVpcmUoImFqdi1mb3JtYXRzL2Rpc3QvZm9ybWF0cyIpLiR7ZXhwb3J0TmFtZX1gOwogICAgICBmb3IgKGNvbnN0IGYgb2YgbGlzdCkKICAgICAgICBhanYuYWRkRm9ybWF0KGYsIGZzW2ZdKTsKICAgIH0KICAgIG1vZHVsZTIuZXhwb3J0cyA9IGV4cG9ydHMyID0gZm9ybWF0c1BsdWdpbjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGZvcm1hdHNQbHVnaW47CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0Z1bmN0aW9uLmpzCnZhciByZXF1aXJlX2lzRnVuY3Rpb24gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzRnVuY3Rpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmlzRnVuY3Rpb24gPSB2b2lkIDA7CiAgICBmdW5jdGlvbiBpc0Z1bmN0aW9uKHZhbHVlKSB7CiAgICAgIHJldHVybiB0eXBlb2YgdmFsdWUgPT09ICJmdW5jdGlvbiI7CiAgICB9CiAgICBleHBvcnRzMi5pc0Z1bmN0aW9uID0gaXNGdW5jdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2NyZWF0ZUVycm9yQ2xhc3MuanMKdmFyIHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvY3JlYXRlRXJyb3JDbGFzcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY3JlYXRlRXJyb3JDbGFzcyA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGNyZWF0ZUVycm9yQ2xhc3MoY3JlYXRlSW1wbCkgewogICAgICB2YXIgX3N1cGVyID0gZnVuY3Rpb24oaW5zdGFuY2UpIHsKICAgICAgICBFcnJvci5jYWxsKGluc3RhbmNlKTsKICAgICAgICBpbnN0YW5jZS5zdGFjayA9IG5ldyBFcnJvcigpLnN0YWNrOwogICAgICB9OwogICAgICB2YXIgY3RvckZ1bmMgPSBjcmVhdGVJbXBsKF9zdXBlcik7CiAgICAgIGN0b3JGdW5jLnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUoRXJyb3IucHJvdG90eXBlKTsKICAgICAgY3RvckZ1bmMucHJvdG90eXBlLmNvbnN0cnVjdG9yID0gY3RvckZ1bmM7CiAgICAgIHJldHVybiBjdG9yRnVuYzsKICAgIH0KICAgIGV4cG9ydHMyLmNyZWF0ZUVycm9yQ2xhc3MgPSBjcmVhdGVFcnJvckNsYXNzOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvVW5zdWJzY3JpcHRpb25FcnJvci5qcwp2YXIgcmVxdWlyZV9VbnN1YnNjcmlwdGlvbkVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9VbnN1YnNjcmlwdGlvbkVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5VbnN1YnNjcmlwdGlvbkVycm9yID0gdm9pZCAwOwogICAgdmFyIGNyZWF0ZUVycm9yQ2xhc3NfMSA9IHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcygpOwogICAgZXhwb3J0czIuVW5zdWJzY3JpcHRpb25FcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gVW5zdWJzY3JpcHRpb25FcnJvckltcGwoZXJyb3JzKSB7CiAgICAgICAgX3N1cGVyKHRoaXMpOwogICAgICAgIHRoaXMubWVzc2FnZSA9IGVycm9ycyA/IGVycm9ycy5sZW5ndGggKyAiIGVycm9ycyBvY2N1cnJlZCBkdXJpbmcgdW5zdWJzY3JpcHRpb246XG4iICsgZXJyb3JzLm1hcChmdW5jdGlvbihlcnIsIGkpIHsKICAgICAgICAgIHJldHVybiBpICsgMSArICIpICIgKyBlcnIudG9TdHJpbmcoKTsKICAgICAgICB9KS5qb2luKCJcbiAgIikgOiAiIjsKICAgICAgICB0aGlzLm5hbWUgPSAiVW5zdWJzY3JpcHRpb25FcnJvciI7CiAgICAgICAgdGhpcy5lcnJvcnMgPSBlcnJvcnM7CiAgICAgIH07CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2FyclJlbW92ZS5qcwp2YXIgcmVxdWlyZV9hcnJSZW1vdmUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2FyclJlbW92ZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYXJyUmVtb3ZlID0gdm9pZCAwOwogICAgZnVuY3Rpb24gYXJyUmVtb3ZlKGFyciwgaXRlbSkgewogICAgICBpZiAoYXJyKSB7CiAgICAgICAgdmFyIGluZGV4ID0gYXJyLmluZGV4T2YoaXRlbSk7CiAgICAgICAgMCA8PSBpbmRleCAmJiBhcnIuc3BsaWNlKGluZGV4LCAxKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuYXJyUmVtb3ZlID0gYXJyUmVtb3ZlOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1N1YnNjcmlwdGlvbi5qcwp2YXIgcmVxdWlyZV9TdWJzY3JpcHRpb24gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9TdWJzY3JpcHRpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX192YWx1ZXMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3ZhbHVlcyB8fCBmdW5jdGlvbihvKSB7CiAgICAgIHZhciBzID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBTeW1ib2wuaXRlcmF0b3IsIG0gPSBzICYmIG9bc10sIGkgPSAwOwogICAgICBpZiAobSkgcmV0dXJuIG0uY2FsbChvKTsKICAgICAgaWYgKG8gJiYgdHlwZW9mIG8ubGVuZ3RoID09PSAibnVtYmVyIikgcmV0dXJuIHsKICAgICAgICBuZXh0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChvICYmIGkgPj0gby5sZW5ndGgpIG8gPSB2b2lkIDA7CiAgICAgICAgICByZXR1cm4geyB2YWx1ZTogbyAmJiBvW2krK10sIGRvbmU6ICFvIH07CiAgICAgICAgfQogICAgICB9OwogICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKHMgPyAiT2JqZWN0IGlzIG5vdCBpdGVyYWJsZS4iIDogIlN5bWJvbC5pdGVyYXRvciBpcyBub3QgZGVmaW5lZC4iKTsKICAgIH07CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmlzU3Vic2NyaXB0aW9uID0gZXhwb3J0czIuRU1QVFlfU1VCU0NSSVBUSU9OID0gZXhwb3J0czIuU3Vic2NyaXB0aW9uID0gdm9pZCAwOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgdmFyIFVuc3Vic2NyaXB0aW9uRXJyb3JfMSA9IHJlcXVpcmVfVW5zdWJzY3JpcHRpb25FcnJvcigpOwogICAgdmFyIGFyclJlbW92ZV8xID0gcmVxdWlyZV9hcnJSZW1vdmUoKTsKICAgIHZhciBTdWJzY3JpcHRpb24gPSBmdW5jdGlvbigpIHsKICAgICAgZnVuY3Rpb24gU3Vic2NyaXB0aW9uMihpbml0aWFsVGVhcmRvd24pIHsKICAgICAgICB0aGlzLmluaXRpYWxUZWFyZG93biA9IGluaXRpYWxUZWFyZG93bjsKICAgICAgICB0aGlzLmNsb3NlZCA9IGZhbHNlOwogICAgICAgIHRoaXMuX3BhcmVudGFnZSA9IG51bGw7CiAgICAgICAgdGhpcy5fZmluYWxpemVycyA9IG51bGw7CiAgICAgIH0KICAgICAgU3Vic2NyaXB0aW9uMi5wcm90b3R5cGUudW5zdWJzY3JpYmUgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgZV8xLCBfYSwgZV8yLCBfYjsKICAgICAgICB2YXIgZXJyb3JzOwogICAgICAgIGlmICghdGhpcy5jbG9zZWQpIHsKICAgICAgICAgIHRoaXMuY2xvc2VkID0gdHJ1ZTsKICAgICAgICAgIHZhciBfcGFyZW50YWdlID0gdGhpcy5fcGFyZW50YWdlOwogICAgICAgICAgaWYgKF9wYXJlbnRhZ2UpIHsKICAgICAgICAgICAgdGhpcy5fcGFyZW50YWdlID0gbnVsbDsKICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoX3BhcmVudGFnZSkpIHsKICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgZm9yICh2YXIgX3BhcmVudGFnZV8xID0gX192YWx1ZXMoX3BhcmVudGFnZSksIF9wYXJlbnRhZ2VfMV8xID0gX3BhcmVudGFnZV8xLm5leHQoKTsgIV9wYXJlbnRhZ2VfMV8xLmRvbmU7IF9wYXJlbnRhZ2VfMV8xID0gX3BhcmVudGFnZV8xLm5leHQoKSkgewogICAgICAgICAgICAgICAgICB2YXIgcGFyZW50XzEgPSBfcGFyZW50YWdlXzFfMS52YWx1ZTsKICAgICAgICAgICAgICAgICAgcGFyZW50XzEucmVtb3ZlKHRoaXMpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0gY2F0Y2ggKGVfMV8xKSB7CiAgICAgICAgICAgICAgICBlXzEgPSB7IGVycm9yOiBlXzFfMSB9OwogICAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICBpZiAoX3BhcmVudGFnZV8xXzEgJiYgIV9wYXJlbnRhZ2VfMV8xLmRvbmUgJiYgKF9hID0gX3BhcmVudGFnZV8xLnJldHVybikpIF9hLmNhbGwoX3BhcmVudGFnZV8xKTsKICAgICAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgICAgIGlmIChlXzEpIHRocm93IGVfMS5lcnJvcjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgX3BhcmVudGFnZS5yZW1vdmUodGhpcyk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHZhciBpbml0aWFsRmluYWxpemVyID0gdGhpcy5pbml0aWFsVGVhcmRvd247CiAgICAgICAgICBpZiAoaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oaW5pdGlhbEZpbmFsaXplcikpIHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICBpbml0aWFsRmluYWxpemVyKCk7CiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgICBlcnJvcnMgPSBlIGluc3RhbmNlb2YgVW5zdWJzY3JpcHRpb25FcnJvcl8xLlVuc3Vic2NyaXB0aW9uRXJyb3IgPyBlLmVycm9ycyA6IFtlXTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgdmFyIF9maW5hbGl6ZXJzID0gdGhpcy5fZmluYWxpemVyczsKICAgICAgICAgIGlmIChfZmluYWxpemVycykgewogICAgICAgICAgICB0aGlzLl9maW5hbGl6ZXJzID0gbnVsbDsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICBmb3IgKHZhciBfZmluYWxpemVyc18xID0gX192YWx1ZXMoX2ZpbmFsaXplcnMpLCBfZmluYWxpemVyc18xXzEgPSBfZmluYWxpemVyc18xLm5leHQoKTsgIV9maW5hbGl6ZXJzXzFfMS5kb25lOyBfZmluYWxpemVyc18xXzEgPSBfZmluYWxpemVyc18xLm5leHQoKSkgewogICAgICAgICAgICAgICAgdmFyIGZpbmFsaXplciA9IF9maW5hbGl6ZXJzXzFfMS52YWx1ZTsKICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgIGV4ZWNGaW5hbGl6ZXIoZmluYWxpemVyKTsKICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgICAgICAgICBlcnJvcnMgPSBlcnJvcnMgIT09IG51bGwgJiYgZXJyb3JzICE9PSB2b2lkIDAgPyBlcnJvcnMgOiBbXTsKICAgICAgICAgICAgICAgICAgaWYgKGVyciBpbnN0YW5jZW9mIFVuc3Vic2NyaXB0aW9uRXJyb3JfMS5VbnN1YnNjcmlwdGlvbkVycm9yKSB7CiAgICAgICAgICAgICAgICAgICAgZXJyb3JzID0gX19zcHJlYWRBcnJheShfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQoZXJyb3JzKSksIF9fcmVhZChlcnIuZXJyb3JzKSk7CiAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgZXJyb3JzLnB1c2goZXJyKTsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBjYXRjaCAoZV8yXzEpIHsKICAgICAgICAgICAgICBlXzIgPSB7IGVycm9yOiBlXzJfMSB9OwogICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICBpZiAoX2ZpbmFsaXplcnNfMV8xICYmICFfZmluYWxpemVyc18xXzEuZG9uZSAmJiAoX2IgPSBfZmluYWxpemVyc18xLnJldHVybikpIF9iLmNhbGwoX2ZpbmFsaXplcnNfMSk7CiAgICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICAgIGlmIChlXzIpIHRocm93IGVfMi5lcnJvcjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmIChlcnJvcnMpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IFVuc3Vic2NyaXB0aW9uRXJyb3JfMS5VbnN1YnNjcmlwdGlvbkVycm9yKGVycm9ycyk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJzY3JpcHRpb24yLnByb3RvdHlwZS5hZGQgPSBmdW5jdGlvbih0ZWFyZG93bikgewogICAgICAgIHZhciBfYTsKICAgICAgICBpZiAodGVhcmRvd24gJiYgdGVhcmRvd24gIT09IHRoaXMpIHsKICAgICAgICAgIGlmICh0aGlzLmNsb3NlZCkgewogICAgICAgICAgICBleGVjRmluYWxpemVyKHRlYXJkb3duKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGlmICh0ZWFyZG93biBpbnN0YW5jZW9mIFN1YnNjcmlwdGlvbjIpIHsKICAgICAgICAgICAgICBpZiAodGVhcmRvd24uY2xvc2VkIHx8IHRlYXJkb3duLl9oYXNQYXJlbnQodGhpcykpIHsKICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgdGVhcmRvd24uX2FkZFBhcmVudCh0aGlzKTsKICAgICAgICAgICAgfQogICAgICAgICAgICAodGhpcy5fZmluYWxpemVycyA9IChfYSA9IHRoaXMuX2ZpbmFsaXplcnMpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IFtdKS5wdXNoKHRlYXJkb3duKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH07CiAgICAgIFN1YnNjcmlwdGlvbjIucHJvdG90eXBlLl9oYXNQYXJlbnQgPSBmdW5jdGlvbihwYXJlbnQpIHsKICAgICAgICB2YXIgX3BhcmVudGFnZSA9IHRoaXMuX3BhcmVudGFnZTsKICAgICAgICByZXR1cm4gX3BhcmVudGFnZSA9PT0gcGFyZW50IHx8IEFycmF5LmlzQXJyYXkoX3BhcmVudGFnZSkgJiYgX3BhcmVudGFnZS5pbmNsdWRlcyhwYXJlbnQpOwogICAgICB9OwogICAgICBTdWJzY3JpcHRpb24yLnByb3RvdHlwZS5fYWRkUGFyZW50ID0gZnVuY3Rpb24ocGFyZW50KSB7CiAgICAgICAgdmFyIF9wYXJlbnRhZ2UgPSB0aGlzLl9wYXJlbnRhZ2U7CiAgICAgICAgdGhpcy5fcGFyZW50YWdlID0gQXJyYXkuaXNBcnJheShfcGFyZW50YWdlKSA/IChfcGFyZW50YWdlLnB1c2gocGFyZW50KSwgX3BhcmVudGFnZSkgOiBfcGFyZW50YWdlID8gW19wYXJlbnRhZ2UsIHBhcmVudF0gOiBwYXJlbnQ7CiAgICAgIH07CiAgICAgIFN1YnNjcmlwdGlvbjIucHJvdG90eXBlLl9yZW1vdmVQYXJlbnQgPSBmdW5jdGlvbihwYXJlbnQpIHsKICAgICAgICB2YXIgX3BhcmVudGFnZSA9IHRoaXMuX3BhcmVudGFnZTsKICAgICAgICBpZiAoX3BhcmVudGFnZSA9PT0gcGFyZW50KSB7CiAgICAgICAgICB0aGlzLl9wYXJlbnRhZ2UgPSBudWxsOwogICAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShfcGFyZW50YWdlKSkgewogICAgICAgICAgYXJyUmVtb3ZlXzEuYXJyUmVtb3ZlKF9wYXJlbnRhZ2UsIHBhcmVudCk7CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJzY3JpcHRpb24yLnByb3RvdHlwZS5yZW1vdmUgPSBmdW5jdGlvbih0ZWFyZG93bikgewogICAgICAgIHZhciBfZmluYWxpemVycyA9IHRoaXMuX2ZpbmFsaXplcnM7CiAgICAgICAgX2ZpbmFsaXplcnMgJiYgYXJyUmVtb3ZlXzEuYXJyUmVtb3ZlKF9maW5hbGl6ZXJzLCB0ZWFyZG93bik7CiAgICAgICAgaWYgKHRlYXJkb3duIGluc3RhbmNlb2YgU3Vic2NyaXB0aW9uMikgewogICAgICAgICAgdGVhcmRvd24uX3JlbW92ZVBhcmVudCh0aGlzKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIFN1YnNjcmlwdGlvbjIuRU1QVFkgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgZW1wdHkgPSBuZXcgU3Vic2NyaXB0aW9uMigpOwogICAgICAgIGVtcHR5LmNsb3NlZCA9IHRydWU7CiAgICAgICAgcmV0dXJuIGVtcHR5OwogICAgICB9KCk7CiAgICAgIHJldHVybiBTdWJzY3JpcHRpb24yOwogICAgfSgpOwogICAgZXhwb3J0czIuU3Vic2NyaXB0aW9uID0gU3Vic2NyaXB0aW9uOwogICAgZXhwb3J0czIuRU1QVFlfU1VCU0NSSVBUSU9OID0gU3Vic2NyaXB0aW9uLkVNUFRZOwogICAgZnVuY3Rpb24gaXNTdWJzY3JpcHRpb24odmFsdWUpIHsKICAgICAgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgU3Vic2NyaXB0aW9uIHx8IHZhbHVlICYmICJjbG9zZWQiIGluIHZhbHVlICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHZhbHVlLnJlbW92ZSkgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odmFsdWUuYWRkKSAmJiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbih2YWx1ZS51bnN1YnNjcmliZSk7CiAgICB9CiAgICBleHBvcnRzMi5pc1N1YnNjcmlwdGlvbiA9IGlzU3Vic2NyaXB0aW9uOwogICAgZnVuY3Rpb24gZXhlY0ZpbmFsaXplcihmaW5hbGl6ZXIpIHsKICAgICAgaWYgKGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKGZpbmFsaXplcikpIHsKICAgICAgICBmaW5hbGl6ZXIoKTsKICAgICAgfSBlbHNlIHsKICAgICAgICBmaW5hbGl6ZXIudW5zdWJzY3JpYmUoKTsKICAgICAgfQogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL2NvbmZpZy5qcwp2YXIgcmVxdWlyZV9jb25maWcgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9jb25maWcuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbmZpZyA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLmNvbmZpZyA9IHsKICAgICAgb25VbmhhbmRsZWRFcnJvcjogbnVsbCwKICAgICAgb25TdG9wcGVkTm90aWZpY2F0aW9uOiBudWxsLAogICAgICBQcm9taXNlOiB2b2lkIDAsCiAgICAgIHVzZURlcHJlY2F0ZWRTeW5jaHJvbm91c0Vycm9ySGFuZGxpbmc6IGZhbHNlLAogICAgICB1c2VEZXByZWNhdGVkTmV4dENvbnRleHQ6IGZhbHNlCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci90aW1lb3V0UHJvdmlkZXIuanMKdmFyIHJlcXVpcmVfdGltZW91dFByb3ZpZGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL3RpbWVvdXRQcm92aWRlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGltZW91dFByb3ZpZGVyID0gdm9pZCAwOwogICAgZXhwb3J0czIudGltZW91dFByb3ZpZGVyID0gewogICAgICBzZXRUaW1lb3V0OiBmdW5jdGlvbihoYW5kbGVyLCB0aW1lb3V0KSB7CiAgICAgICAgdmFyIGFyZ3MgPSBbXTsKICAgICAgICBmb3IgKHZhciBfaSA9IDI7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgYXJnc1tfaSAtIDJdID0gYXJndW1lbnRzW19pXTsKICAgICAgICB9CiAgICAgICAgdmFyIGRlbGVnYXRlID0gZXhwb3J0czIudGltZW91dFByb3ZpZGVyLmRlbGVnYXRlOwogICAgICAgIGlmIChkZWxlZ2F0ZSA9PT0gbnVsbCB8fCBkZWxlZ2F0ZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGVsZWdhdGUuc2V0VGltZW91dCkgewogICAgICAgICAgcmV0dXJuIGRlbGVnYXRlLnNldFRpbWVvdXQuYXBwbHkoZGVsZWdhdGUsIF9fc3ByZWFkQXJyYXkoW2hhbmRsZXIsIHRpbWVvdXRdLCBfX3JlYWQoYXJncykpKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHNldFRpbWVvdXQuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtoYW5kbGVyLCB0aW1lb3V0XSwgX19yZWFkKGFyZ3MpKSk7CiAgICAgIH0sCiAgICAgIGNsZWFyVGltZW91dDogZnVuY3Rpb24oaGFuZGxlKSB7CiAgICAgICAgdmFyIGRlbGVnYXRlID0gZXhwb3J0czIudGltZW91dFByb3ZpZGVyLmRlbGVnYXRlOwogICAgICAgIHJldHVybiAoKGRlbGVnYXRlID09PSBudWxsIHx8IGRlbGVnYXRlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkZWxlZ2F0ZS5jbGVhclRpbWVvdXQpIHx8IGNsZWFyVGltZW91dCkoaGFuZGxlKTsKICAgICAgfSwKICAgICAgZGVsZWdhdGU6IHZvaWQgMAogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL3JlcG9ydFVuaGFuZGxlZEVycm9yLmpzCnZhciByZXF1aXJlX3JlcG9ydFVuaGFuZGxlZEVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9yZXBvcnRVbmhhbmRsZWRFcnJvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmVwb3J0VW5oYW5kbGVkRXJyb3IgPSB2b2lkIDA7CiAgICB2YXIgY29uZmlnXzEgPSByZXF1aXJlX2NvbmZpZygpOwogICAgdmFyIHRpbWVvdXRQcm92aWRlcl8xID0gcmVxdWlyZV90aW1lb3V0UHJvdmlkZXIoKTsKICAgIGZ1bmN0aW9uIHJlcG9ydFVuaGFuZGxlZEVycm9yKGVycikgewogICAgICB0aW1lb3V0UHJvdmlkZXJfMS50aW1lb3V0UHJvdmlkZXIuc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICB2YXIgb25VbmhhbmRsZWRFcnJvciA9IGNvbmZpZ18xLmNvbmZpZy5vblVuaGFuZGxlZEVycm9yOwogICAgICAgIGlmIChvblVuaGFuZGxlZEVycm9yKSB7CiAgICAgICAgICBvblVuaGFuZGxlZEVycm9yKGVycik7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRocm93IGVycjsKICAgICAgICB9CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucmVwb3J0VW5oYW5kbGVkRXJyb3IgPSByZXBvcnRVbmhhbmRsZWRFcnJvcjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL25vb3AuanMKdmFyIHJlcXVpcmVfbm9vcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvbm9vcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubm9vcCA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIG5vb3AoKSB7CiAgICB9CiAgICBleHBvcnRzMi5ub29wID0gbm9vcDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9Ob3RpZmljYXRpb25GYWN0b3JpZXMuanMKdmFyIHJlcXVpcmVfTm90aWZpY2F0aW9uRmFjdG9yaWVzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvTm90aWZpY2F0aW9uRmFjdG9yaWVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jcmVhdGVOb3RpZmljYXRpb24gPSBleHBvcnRzMi5uZXh0Tm90aWZpY2F0aW9uID0gZXhwb3J0czIuZXJyb3JOb3RpZmljYXRpb24gPSBleHBvcnRzMi5DT01QTEVURV9OT1RJRklDQVRJT04gPSB2b2lkIDA7CiAgICBleHBvcnRzMi5DT01QTEVURV9OT1RJRklDQVRJT04gPSBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNyZWF0ZU5vdGlmaWNhdGlvbigiQyIsIHZvaWQgMCwgdm9pZCAwKTsKICAgIH0oKTsKICAgIGZ1bmN0aW9uIGVycm9yTm90aWZpY2F0aW9uKGVycm9yKSB7CiAgICAgIHJldHVybiBjcmVhdGVOb3RpZmljYXRpb24oIkUiLCB2b2lkIDAsIGVycm9yKTsKICAgIH0KICAgIGV4cG9ydHMyLmVycm9yTm90aWZpY2F0aW9uID0gZXJyb3JOb3RpZmljYXRpb247CiAgICBmdW5jdGlvbiBuZXh0Tm90aWZpY2F0aW9uKHZhbHVlKSB7CiAgICAgIHJldHVybiBjcmVhdGVOb3RpZmljYXRpb24oIk4iLCB2YWx1ZSwgdm9pZCAwKTsKICAgIH0KICAgIGV4cG9ydHMyLm5leHROb3RpZmljYXRpb24gPSBuZXh0Tm90aWZpY2F0aW9uOwogICAgZnVuY3Rpb24gY3JlYXRlTm90aWZpY2F0aW9uKGtpbmQsIHZhbHVlLCBlcnJvcikgewogICAgICByZXR1cm4gewogICAgICAgIGtpbmQsCiAgICAgICAgdmFsdWUsCiAgICAgICAgZXJyb3IKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLmNyZWF0ZU5vdGlmaWNhdGlvbiA9IGNyZWF0ZU5vdGlmaWNhdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2Vycm9yQ29udGV4dC5qcwp2YXIgcmVxdWlyZV9lcnJvckNvbnRleHQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2Vycm9yQ29udGV4dC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY2FwdHVyZUVycm9yID0gZXhwb3J0czIuZXJyb3JDb250ZXh0ID0gdm9pZCAwOwogICAgdmFyIGNvbmZpZ18xID0gcmVxdWlyZV9jb25maWcoKTsKICAgIHZhciBjb250ZXh0ID0gbnVsbDsKICAgIGZ1bmN0aW9uIGVycm9yQ29udGV4dChjYikgewogICAgICBpZiAoY29uZmlnXzEuY29uZmlnLnVzZURlcHJlY2F0ZWRTeW5jaHJvbm91c0Vycm9ySGFuZGxpbmcpIHsKICAgICAgICB2YXIgaXNSb290ID0gIWNvbnRleHQ7CiAgICAgICAgaWYgKGlzUm9vdCkgewogICAgICAgICAgY29udGV4dCA9IHsgZXJyb3JUaHJvd246IGZhbHNlLCBlcnJvcjogbnVsbCB9OwogICAgICAgIH0KICAgICAgICBjYigpOwogICAgICAgIGlmIChpc1Jvb3QpIHsKICAgICAgICAgIHZhciBfYSA9IGNvbnRleHQsIGVycm9yVGhyb3duID0gX2EuZXJyb3JUaHJvd24sIGVycm9yID0gX2EuZXJyb3I7CiAgICAgICAgICBjb250ZXh0ID0gbnVsbDsKICAgICAgICAgIGlmIChlcnJvclRocm93bikgewogICAgICAgICAgICB0aHJvdyBlcnJvcjsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgY2IoKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuZXJyb3JDb250ZXh0ID0gZXJyb3JDb250ZXh0OwogICAgZnVuY3Rpb24gY2FwdHVyZUVycm9yKGVycikgewogICAgICBpZiAoY29uZmlnXzEuY29uZmlnLnVzZURlcHJlY2F0ZWRTeW5jaHJvbm91c0Vycm9ySGFuZGxpbmcgJiYgY29udGV4dCkgewogICAgICAgIGNvbnRleHQuZXJyb3JUaHJvd24gPSB0cnVlOwogICAgICAgIGNvbnRleHQuZXJyb3IgPSBlcnI7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmNhcHR1cmVFcnJvciA9IGNhcHR1cmVFcnJvcjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9TdWJzY3JpYmVyLmpzCnZhciByZXF1aXJlX1N1YnNjcmliZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9TdWJzY3JpYmVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkVNUFRZX09CU0VSVkVSID0gZXhwb3J0czIuU2FmZVN1YnNjcmliZXIgPSBleHBvcnRzMi5TdWJzY3JpYmVyID0gdm9pZCAwOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBjb25maWdfMSA9IHJlcXVpcmVfY29uZmlnKCk7CiAgICB2YXIgcmVwb3J0VW5oYW5kbGVkRXJyb3JfMSA9IHJlcXVpcmVfcmVwb3J0VW5oYW5kbGVkRXJyb3IoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBOb3RpZmljYXRpb25GYWN0b3JpZXNfMSA9IHJlcXVpcmVfTm90aWZpY2F0aW9uRmFjdG9yaWVzKCk7CiAgICB2YXIgdGltZW91dFByb3ZpZGVyXzEgPSByZXF1aXJlX3RpbWVvdXRQcm92aWRlcigpOwogICAgdmFyIGVycm9yQ29udGV4dF8xID0gcmVxdWlyZV9lcnJvckNvbnRleHQoKTsKICAgIHZhciBTdWJzY3JpYmVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhTdWJzY3JpYmVyMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gU3Vic2NyaWJlcjIoZGVzdGluYXRpb24pIHsKICAgICAgICB2YXIgX3RoaXMgPSBfc3VwZXIuY2FsbCh0aGlzKSB8fCB0aGlzOwogICAgICAgIF90aGlzLmlzU3RvcHBlZCA9IGZhbHNlOwogICAgICAgIGlmIChkZXN0aW5hdGlvbikgewogICAgICAgICAgX3RoaXMuZGVzdGluYXRpb24gPSBkZXN0aW5hdGlvbjsKICAgICAgICAgIGlmIChTdWJzY3JpcHRpb25fMS5pc1N1YnNjcmlwdGlvbihkZXN0aW5hdGlvbikpIHsKICAgICAgICAgICAgZGVzdGluYXRpb24uYWRkKF90aGlzKTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgewogICAgICAgICAgX3RoaXMuZGVzdGluYXRpb24gPSBleHBvcnRzMi5FTVBUWV9PQlNFUlZFUjsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIF90aGlzOwogICAgICB9CiAgICAgIFN1YnNjcmliZXIyLmNyZWF0ZSA9IGZ1bmN0aW9uKG5leHQsIGVycm9yLCBjb21wbGV0ZSkgewogICAgICAgIHJldHVybiBuZXcgU2FmZVN1YnNjcmliZXIobmV4dCwgZXJyb3IsIGNvbXBsZXRlKTsKICAgICAgfTsKICAgICAgU3Vic2NyaWJlcjIucHJvdG90eXBlLm5leHQgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIGlmICh0aGlzLmlzU3RvcHBlZCkgewogICAgICAgICAgaGFuZGxlU3RvcHBlZE5vdGlmaWNhdGlvbihOb3RpZmljYXRpb25GYWN0b3JpZXNfMS5uZXh0Tm90aWZpY2F0aW9uKHZhbHVlKSwgdGhpcyk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX25leHQodmFsdWUpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgU3Vic2NyaWJlcjIucHJvdG90eXBlLmVycm9yID0gZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgaWYgKHRoaXMuaXNTdG9wcGVkKSB7CiAgICAgICAgICBoYW5kbGVTdG9wcGVkTm90aWZpY2F0aW9uKE5vdGlmaWNhdGlvbkZhY3Rvcmllc18xLmVycm9yTm90aWZpY2F0aW9uKGVyciksIHRoaXMpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLmlzU3RvcHBlZCA9IHRydWU7CiAgICAgICAgICB0aGlzLl9lcnJvcihlcnIpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgU3Vic2NyaWJlcjIucHJvdG90eXBlLmNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgaWYgKHRoaXMuaXNTdG9wcGVkKSB7CiAgICAgICAgICBoYW5kbGVTdG9wcGVkTm90aWZpY2F0aW9uKE5vdGlmaWNhdGlvbkZhY3Rvcmllc18xLkNPTVBMRVRFX05PVElGSUNBVElPTiwgdGhpcyk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuaXNTdG9wcGVkID0gdHJ1ZTsKICAgICAgICAgIHRoaXMuX2NvbXBsZXRlKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJzY3JpYmVyMi5wcm90b3R5cGUudW5zdWJzY3JpYmUgPSBmdW5jdGlvbigpIHsKICAgICAgICBpZiAoIXRoaXMuY2xvc2VkKSB7CiAgICAgICAgICB0aGlzLmlzU3RvcHBlZCA9IHRydWU7CiAgICAgICAgICBfc3VwZXIucHJvdG90eXBlLnVuc3Vic2NyaWJlLmNhbGwodGhpcyk7CiAgICAgICAgICB0aGlzLmRlc3RpbmF0aW9uID0gbnVsbDsKICAgICAgICB9CiAgICAgIH07CiAgICAgIFN1YnNjcmliZXIyLnByb3RvdHlwZS5fbmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgdGhpcy5kZXN0aW5hdGlvbi5uZXh0KHZhbHVlKTsKICAgICAgfTsKICAgICAgU3Vic2NyaWJlcjIucHJvdG90eXBlLl9lcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgIHRyeSB7CiAgICAgICAgICB0aGlzLmRlc3RpbmF0aW9uLmVycm9yKGVycik7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIHRoaXMudW5zdWJzY3JpYmUoKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIFN1YnNjcmliZXIyLnByb3RvdHlwZS5fY29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICB0cnkgewogICAgICAgICAgdGhpcy5kZXN0aW5hdGlvbi5jb21wbGV0ZSgpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICB0aGlzLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gU3Vic2NyaWJlcjI7CiAgICB9KFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbik7CiAgICBleHBvcnRzMi5TdWJzY3JpYmVyID0gU3Vic2NyaWJlcjsKICAgIHZhciBfYmluZCA9IEZ1bmN0aW9uLnByb3RvdHlwZS5iaW5kOwogICAgZnVuY3Rpb24gYmluZChmbiwgdGhpc0FyZykgewogICAgICByZXR1cm4gX2JpbmQuY2FsbChmbiwgdGhpc0FyZyk7CiAgICB9CiAgICB2YXIgQ29uc3VtZXJPYnNlcnZlciA9IGZ1bmN0aW9uKCkgewogICAgICBmdW5jdGlvbiBDb25zdW1lck9ic2VydmVyMihwYXJ0aWFsT2JzZXJ2ZXIpIHsKICAgICAgICB0aGlzLnBhcnRpYWxPYnNlcnZlciA9IHBhcnRpYWxPYnNlcnZlcjsKICAgICAgfQogICAgICBDb25zdW1lck9ic2VydmVyMi5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgdmFyIHBhcnRpYWxPYnNlcnZlciA9IHRoaXMucGFydGlhbE9ic2VydmVyOwogICAgICAgIGlmIChwYXJ0aWFsT2JzZXJ2ZXIubmV4dCkgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgcGFydGlhbE9ic2VydmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICAgICAgaGFuZGxlVW5oYW5kbGVkRXJyb3IoZXJyb3IpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfTsKICAgICAgQ29uc3VtZXJPYnNlcnZlcjIucHJvdG90eXBlLmVycm9yID0gZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgdmFyIHBhcnRpYWxPYnNlcnZlciA9IHRoaXMucGFydGlhbE9ic2VydmVyOwogICAgICAgIGlmIChwYXJ0aWFsT2JzZXJ2ZXIuZXJyb3IpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHBhcnRpYWxPYnNlcnZlci5lcnJvcihlcnIpOwogICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICAgICAgaGFuZGxlVW5oYW5kbGVkRXJyb3IoZXJyb3IpOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBoYW5kbGVVbmhhbmRsZWRFcnJvcihlcnIpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgQ29uc3VtZXJPYnNlcnZlcjIucHJvdG90eXBlLmNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIHBhcnRpYWxPYnNlcnZlciA9IHRoaXMucGFydGlhbE9ic2VydmVyOwogICAgICAgIGlmIChwYXJ0aWFsT2JzZXJ2ZXIuY29tcGxldGUpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHBhcnRpYWxPYnNlcnZlci5jb21wbGV0ZSgpOwogICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICAgICAgaGFuZGxlVW5oYW5kbGVkRXJyb3IoZXJyb3IpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfTsKICAgICAgcmV0dXJuIENvbnN1bWVyT2JzZXJ2ZXIyOwogICAgfSgpOwogICAgdmFyIFNhZmVTdWJzY3JpYmVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhTYWZlU3Vic2NyaWJlcjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIFNhZmVTdWJzY3JpYmVyMihvYnNlcnZlck9yTmV4dCwgZXJyb3IsIGNvbXBsZXRlKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICB2YXIgcGFydGlhbE9ic2VydmVyOwogICAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihvYnNlcnZlck9yTmV4dCkgfHwgIW9ic2VydmVyT3JOZXh0KSB7CiAgICAgICAgICBwYXJ0aWFsT2JzZXJ2ZXIgPSB7CiAgICAgICAgICAgIG5leHQ6IG9ic2VydmVyT3JOZXh0ICE9PSBudWxsICYmIG9ic2VydmVyT3JOZXh0ICE9PSB2b2lkIDAgPyBvYnNlcnZlck9yTmV4dCA6IHZvaWQgMCwKICAgICAgICAgICAgZXJyb3I6IGVycm9yICE9PSBudWxsICYmIGVycm9yICE9PSB2b2lkIDAgPyBlcnJvciA6IHZvaWQgMCwKICAgICAgICAgICAgY29tcGxldGU6IGNvbXBsZXRlICE9PSBudWxsICYmIGNvbXBsZXRlICE9PSB2b2lkIDAgPyBjb21wbGV0ZSA6IHZvaWQgMAogICAgICAgICAgfTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdmFyIGNvbnRleHRfMTsKICAgICAgICAgIGlmIChfdGhpcyAmJiBjb25maWdfMS5jb25maWcudXNlRGVwcmVjYXRlZE5leHRDb250ZXh0KSB7CiAgICAgICAgICAgIGNvbnRleHRfMSA9IE9iamVjdC5jcmVhdGUob2JzZXJ2ZXJPck5leHQpOwogICAgICAgICAgICBjb250ZXh0XzEudW5zdWJzY3JpYmUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICByZXR1cm4gX3RoaXMudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgfTsKICAgICAgICAgICAgcGFydGlhbE9ic2VydmVyID0gewogICAgICAgICAgICAgIG5leHQ6IG9ic2VydmVyT3JOZXh0Lm5leHQgJiYgYmluZChvYnNlcnZlck9yTmV4dC5uZXh0LCBjb250ZXh0XzEpLAogICAgICAgICAgICAgIGVycm9yOiBvYnNlcnZlck9yTmV4dC5lcnJvciAmJiBiaW5kKG9ic2VydmVyT3JOZXh0LmVycm9yLCBjb250ZXh0XzEpLAogICAgICAgICAgICAgIGNvbXBsZXRlOiBvYnNlcnZlck9yTmV4dC5jb21wbGV0ZSAmJiBiaW5kKG9ic2VydmVyT3JOZXh0LmNvbXBsZXRlLCBjb250ZXh0XzEpCiAgICAgICAgICAgIH07CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBwYXJ0aWFsT2JzZXJ2ZXIgPSBvYnNlcnZlck9yTmV4dDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgX3RoaXMuZGVzdGluYXRpb24gPSBuZXcgQ29uc3VtZXJPYnNlcnZlcihwYXJ0aWFsT2JzZXJ2ZXIpOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICByZXR1cm4gU2FmZVN1YnNjcmliZXIyOwogICAgfShTdWJzY3JpYmVyKTsKICAgIGV4cG9ydHMyLlNhZmVTdWJzY3JpYmVyID0gU2FmZVN1YnNjcmliZXI7CiAgICBmdW5jdGlvbiBoYW5kbGVVbmhhbmRsZWRFcnJvcihlcnJvcikgewogICAgICBpZiAoY29uZmlnXzEuY29uZmlnLnVzZURlcHJlY2F0ZWRTeW5jaHJvbm91c0Vycm9ySGFuZGxpbmcpIHsKICAgICAgICBlcnJvckNvbnRleHRfMS5jYXB0dXJlRXJyb3IoZXJyb3IpOwogICAgICB9IGVsc2UgewogICAgICAgIHJlcG9ydFVuaGFuZGxlZEVycm9yXzEucmVwb3J0VW5oYW5kbGVkRXJyb3IoZXJyb3IpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBkZWZhdWx0RXJyb3JIYW5kbGVyKGVycikgewogICAgICB0aHJvdyBlcnI7CiAgICB9CiAgICBmdW5jdGlvbiBoYW5kbGVTdG9wcGVkTm90aWZpY2F0aW9uKG5vdGlmaWNhdGlvbiwgc3Vic2NyaWJlcikgewogICAgICB2YXIgb25TdG9wcGVkTm90aWZpY2F0aW9uID0gY29uZmlnXzEuY29uZmlnLm9uU3RvcHBlZE5vdGlmaWNhdGlvbjsKICAgICAgb25TdG9wcGVkTm90aWZpY2F0aW9uICYmIHRpbWVvdXRQcm92aWRlcl8xLnRpbWVvdXRQcm92aWRlci5zZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBvblN0b3BwZWROb3RpZmljYXRpb24obm90aWZpY2F0aW9uLCBzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5FTVBUWV9PQlNFUlZFUiA9IHsKICAgICAgY2xvc2VkOiB0cnVlLAogICAgICBuZXh0OiBub29wXzEubm9vcCwKICAgICAgZXJyb3I6IGRlZmF1bHRFcnJvckhhbmRsZXIsCiAgICAgIGNvbXBsZXRlOiBub29wXzEubm9vcAogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zeW1ib2wvb2JzZXJ2YWJsZS5qcwp2YXIgcmVxdWlyZV9vYnNlcnZhYmxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc3ltYm9sL29ic2VydmFibGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9ic2VydmFibGUgPSB2b2lkIDA7CiAgICBleHBvcnRzMi5vYnNlcnZhYmxlID0gZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5vYnNlcnZhYmxlIHx8ICJAQG9ic2VydmFibGUiOwogICAgfSgpOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaWRlbnRpdHkuanMKdmFyIHJlcXVpcmVfaWRlbnRpdHkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lkZW50aXR5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pZGVudGl0eSA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGlkZW50aXR5KHgpIHsKICAgICAgcmV0dXJuIHg7CiAgICB9CiAgICBleHBvcnRzMi5pZGVudGl0eSA9IGlkZW50aXR5OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvcGlwZS5qcwp2YXIgcmVxdWlyZV9waXBlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9waXBlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5waXBlRnJvbUFycmF5ID0gZXhwb3J0czIucGlwZSA9IHZvaWQgMDsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgZnVuY3Rpb24gcGlwZSgpIHsKICAgICAgdmFyIGZucyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGZuc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHJldHVybiBwaXBlRnJvbUFycmF5KGZucyk7CiAgICB9CiAgICBleHBvcnRzMi5waXBlID0gcGlwZTsKICAgIGZ1bmN0aW9uIHBpcGVGcm9tQXJyYXkoZm5zKSB7CiAgICAgIGlmIChmbnMubGVuZ3RoID09PSAwKSB7CiAgICAgICAgcmV0dXJuIGlkZW50aXR5XzEuaWRlbnRpdHk7CiAgICAgIH0KICAgICAgaWYgKGZucy5sZW5ndGggPT09IDEpIHsKICAgICAgICByZXR1cm4gZm5zWzBdOwogICAgICB9CiAgICAgIHJldHVybiBmdW5jdGlvbiBwaXBlZChpbnB1dCkgewogICAgICAgIHJldHVybiBmbnMucmVkdWNlKGZ1bmN0aW9uKHByZXYsIGZuKSB7CiAgICAgICAgICByZXR1cm4gZm4ocHJldik7CiAgICAgICAgfSwgaW5wdXQpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIucGlwZUZyb21BcnJheSA9IHBpcGVGcm9tQXJyYXk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvT2JzZXJ2YWJsZS5qcwp2YXIgcmVxdWlyZV9PYnNlcnZhYmxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvT2JzZXJ2YWJsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuT2JzZXJ2YWJsZSA9IHZvaWQgMDsKICAgIHZhciBTdWJzY3JpYmVyXzEgPSByZXF1aXJlX1N1YnNjcmliZXIoKTsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgb2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9vYnNlcnZhYmxlKCk7CiAgICB2YXIgcGlwZV8xID0gcmVxdWlyZV9waXBlKCk7CiAgICB2YXIgY29uZmlnXzEgPSByZXF1aXJlX2NvbmZpZygpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgdmFyIGVycm9yQ29udGV4dF8xID0gcmVxdWlyZV9lcnJvckNvbnRleHQoKTsKICAgIHZhciBPYnNlcnZhYmxlID0gZnVuY3Rpb24oKSB7CiAgICAgIGZ1bmN0aW9uIE9ic2VydmFibGUyKHN1YnNjcmliZSkgewogICAgICAgIGlmIChzdWJzY3JpYmUpIHsKICAgICAgICAgIHRoaXMuX3N1YnNjcmliZSA9IHN1YnNjcmliZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgT2JzZXJ2YWJsZTIucHJvdG90eXBlLmxpZnQgPSBmdW5jdGlvbihvcGVyYXRvcikgewogICAgICAgIHZhciBvYnNlcnZhYmxlID0gbmV3IE9ic2VydmFibGUyKCk7CiAgICAgICAgb2JzZXJ2YWJsZS5zb3VyY2UgPSB0aGlzOwogICAgICAgIG9ic2VydmFibGUub3BlcmF0b3IgPSBvcGVyYXRvcjsKICAgICAgICByZXR1cm4gb2JzZXJ2YWJsZTsKICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIucHJvdG90eXBlLnN1YnNjcmliZSA9IGZ1bmN0aW9uKG9ic2VydmVyT3JOZXh0LCBlcnJvciwgY29tcGxldGUpIHsKICAgICAgICB2YXIgX3RoaXMgPSB0aGlzOwogICAgICAgIHZhciBzdWJzY3JpYmVyID0gaXNTdWJzY3JpYmVyKG9ic2VydmVyT3JOZXh0KSA/IG9ic2VydmVyT3JOZXh0IDogbmV3IFN1YnNjcmliZXJfMS5TYWZlU3Vic2NyaWJlcihvYnNlcnZlck9yTmV4dCwgZXJyb3IsIGNvbXBsZXRlKTsKICAgICAgICBlcnJvckNvbnRleHRfMS5lcnJvckNvbnRleHQoZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgX2EgPSBfdGhpcywgb3BlcmF0b3IgPSBfYS5vcGVyYXRvciwgc291cmNlID0gX2Euc291cmNlOwogICAgICAgICAgc3Vic2NyaWJlci5hZGQob3BlcmF0b3IgPyBvcGVyYXRvci5jYWxsKHN1YnNjcmliZXIsIHNvdXJjZSkgOiBzb3VyY2UgPyBfdGhpcy5fc3Vic2NyaWJlKHN1YnNjcmliZXIpIDogX3RoaXMuX3RyeVN1YnNjcmliZShzdWJzY3JpYmVyKSk7CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIHN1YnNjcmliZXI7CiAgICAgIH07CiAgICAgIE9ic2VydmFibGUyLnByb3RvdHlwZS5fdHJ5U3Vic2NyaWJlID0gZnVuY3Rpb24oc2luaykgewogICAgICAgIHRyeSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fc3Vic2NyaWJlKHNpbmspOwogICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgc2luay5lcnJvcihlcnIpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIucHJvdG90eXBlLmZvckVhY2ggPSBmdW5jdGlvbihuZXh0LCBwcm9taXNlQ3RvcikgewogICAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgICAgcHJvbWlzZUN0b3IgPSBnZXRQcm9taXNlQ3Rvcihwcm9taXNlQ3Rvcik7CiAgICAgICAgcmV0dXJuIG5ldyBwcm9taXNlQ3RvcihmdW5jdGlvbihyZXNvbHZlLCByZWplY3QpIHsKICAgICAgICAgIHZhciBzdWJzY3JpYmVyID0gbmV3IFN1YnNjcmliZXJfMS5TYWZlU3Vic2NyaWJlcih7CiAgICAgICAgICAgIG5leHQ6IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgIG5leHQodmFsdWUpOwogICAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgICAgICAgcmVqZWN0KGVycik7CiAgICAgICAgICAgICAgICBzdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LAogICAgICAgICAgICBlcnJvcjogcmVqZWN0LAogICAgICAgICAgICBjb21wbGV0ZTogcmVzb2x2ZQogICAgICAgICAgfSk7CiAgICAgICAgICBfdGhpcy5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgfSk7CiAgICAgIH07CiAgICAgIE9ic2VydmFibGUyLnByb3RvdHlwZS5fc3Vic2NyaWJlID0gZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBfYTsKICAgICAgICByZXR1cm4gKF9hID0gdGhpcy5zb3VyY2UpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH07CiAgICAgIE9ic2VydmFibGUyLnByb3RvdHlwZVtvYnNlcnZhYmxlXzEub2JzZXJ2YWJsZV0gPSBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIucHJvdG90eXBlLnBpcGUgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgb3BlcmF0aW9ucyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBvcGVyYXRpb25zW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgfQogICAgICAgIHJldHVybiBwaXBlXzEucGlwZUZyb21BcnJheShvcGVyYXRpb25zKSh0aGlzKTsKICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIucHJvdG90eXBlLnRvUHJvbWlzZSA9IGZ1bmN0aW9uKHByb21pc2VDdG9yKSB7CiAgICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgICBwcm9taXNlQ3RvciA9IGdldFByb21pc2VDdG9yKHByb21pc2VDdG9yKTsKICAgICAgICByZXR1cm4gbmV3IHByb21pc2VDdG9yKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkgewogICAgICAgICAgdmFyIHZhbHVlOwogICAgICAgICAgX3RoaXMuc3Vic2NyaWJlKGZ1bmN0aW9uKHgpIHsKICAgICAgICAgICAgcmV0dXJuIHZhbHVlID0geDsKICAgICAgICAgIH0sIGZ1bmN0aW9uKGVycikgewogICAgICAgICAgICByZXR1cm4gcmVqZWN0KGVycik7CiAgICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIHJlc29sdmUodmFsdWUpOwogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgIH07CiAgICAgIE9ic2VydmFibGUyLmNyZWF0ZSA9IGZ1bmN0aW9uKHN1YnNjcmliZSkgewogICAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZTIoc3Vic2NyaWJlKTsKICAgICAgfTsKICAgICAgcmV0dXJuIE9ic2VydmFibGUyOwogICAgfSgpOwogICAgZXhwb3J0czIuT2JzZXJ2YWJsZSA9IE9ic2VydmFibGU7CiAgICBmdW5jdGlvbiBnZXRQcm9taXNlQ3Rvcihwcm9taXNlQ3RvcikgewogICAgICB2YXIgX2E7CiAgICAgIHJldHVybiAoX2EgPSBwcm9taXNlQ3RvciAhPT0gbnVsbCAmJiBwcm9taXNlQ3RvciAhPT0gdm9pZCAwID8gcHJvbWlzZUN0b3IgOiBjb25maWdfMS5jb25maWcuUHJvbWlzZSkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogUHJvbWlzZTsKICAgIH0KICAgIGZ1bmN0aW9uIGlzT2JzZXJ2ZXIodmFsdWUpIHsKICAgICAgcmV0dXJuIHZhbHVlICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHZhbHVlLm5leHQpICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHZhbHVlLmVycm9yKSAmJiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbih2YWx1ZS5jb21wbGV0ZSk7CiAgICB9CiAgICBmdW5jdGlvbiBpc1N1YnNjcmliZXIodmFsdWUpIHsKICAgICAgcmV0dXJuIHZhbHVlICYmIHZhbHVlIGluc3RhbmNlb2YgU3Vic2NyaWJlcl8xLlN1YnNjcmliZXIgfHwgaXNPYnNlcnZlcih2YWx1ZSkgJiYgU3Vic2NyaXB0aW9uXzEuaXNTdWJzY3JpcHRpb24odmFsdWUpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvbGlmdC5qcwp2YXIgcmVxdWlyZV9saWZ0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9saWZ0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5vcGVyYXRlID0gZXhwb3J0czIuaGFzTGlmdCA9IHZvaWQgMDsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIGZ1bmN0aW9uIGhhc0xpZnQoc291cmNlKSB7CiAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihzb3VyY2UgPT09IG51bGwgfHwgc291cmNlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzb3VyY2UubGlmdCk7CiAgICB9CiAgICBleHBvcnRzMi5oYXNMaWZ0ID0gaGFzTGlmdDsKICAgIGZ1bmN0aW9uIG9wZXJhdGUoaW5pdCkgewogICAgICByZXR1cm4gZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgaWYgKGhhc0xpZnQoc291cmNlKSkgewogICAgICAgICAgcmV0dXJuIHNvdXJjZS5saWZ0KGZ1bmN0aW9uKGxpZnRlZFNvdXJjZSkgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgIHJldHVybiBpbml0KGxpZnRlZFNvdXJjZSwgdGhpcyk7CiAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgICAgIHRoaXMuZXJyb3IoZXJyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIlVuYWJsZSB0byBsaWZ0IHVua25vd24gT2JzZXJ2YWJsZSB0eXBlIik7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5vcGVyYXRlID0gb3BlcmF0ZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvT3BlcmF0b3JTdWJzY3JpYmVyLmpzCnZhciByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9PcGVyYXRvclN1YnNjcmliZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuT3BlcmF0b3JTdWJzY3JpYmVyID0gZXhwb3J0czIuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmliZXJfMSA9IHJlcXVpcmVfU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKGRlc3RpbmF0aW9uLCBvbk5leHQsIG9uQ29tcGxldGUsIG9uRXJyb3IsIG9uRmluYWxpemUpIHsKICAgICAgcmV0dXJuIG5ldyBPcGVyYXRvclN1YnNjcmliZXIoZGVzdGluYXRpb24sIG9uTmV4dCwgb25Db21wbGV0ZSwgb25FcnJvciwgb25GaW5hbGl6ZSk7CiAgICB9CiAgICBleHBvcnRzMi5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIgPSBjcmVhdGVPcGVyYXRvclN1YnNjcmliZXI7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhPcGVyYXRvclN1YnNjcmliZXIyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBPcGVyYXRvclN1YnNjcmliZXIyKGRlc3RpbmF0aW9uLCBvbk5leHQsIG9uQ29tcGxldGUsIG9uRXJyb3IsIG9uRmluYWxpemUsIHNob3VsZFVuc3Vic2NyaWJlKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgZGVzdGluYXRpb24pIHx8IHRoaXM7CiAgICAgICAgX3RoaXMub25GaW5hbGl6ZSA9IG9uRmluYWxpemU7CiAgICAgICAgX3RoaXMuc2hvdWxkVW5zdWJzY3JpYmUgPSBzaG91bGRVbnN1YnNjcmliZTsKICAgICAgICBfdGhpcy5fbmV4dCA9IG9uTmV4dCA/IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBvbk5leHQodmFsdWUpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGRlc3RpbmF0aW9uLmVycm9yKGVycik7CiAgICAgICAgICB9CiAgICAgICAgfSA6IF9zdXBlci5wcm90b3R5cGUuX25leHQ7CiAgICAgICAgX3RoaXMuX2Vycm9yID0gb25FcnJvciA/IGZ1bmN0aW9uKGVycikgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgb25FcnJvcihlcnIpOwogICAgICAgICAgfSBjYXRjaCAoZXJyMikgewogICAgICAgICAgICBkZXN0aW5hdGlvbi5lcnJvcihlcnIyKTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRoaXMudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH0KICAgICAgICB9IDogX3N1cGVyLnByb3RvdHlwZS5fZXJyb3I7CiAgICAgICAgX3RoaXMuX2NvbXBsZXRlID0gb25Db21wbGV0ZSA/IGZ1bmN0aW9uKCkgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgb25Db21wbGV0ZSgpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGRlc3RpbmF0aW9uLmVycm9yKGVycik7CiAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICB0aGlzLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgfSA6IF9zdXBlci5wcm90b3R5cGUuX2NvbXBsZXRlOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBPcGVyYXRvclN1YnNjcmliZXIyLnByb3RvdHlwZS51bnN1YnNjcmliZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBfYTsKICAgICAgICBpZiAoIXRoaXMuc2hvdWxkVW5zdWJzY3JpYmUgfHwgdGhpcy5zaG91bGRVbnN1YnNjcmliZSgpKSB7CiAgICAgICAgICB2YXIgY2xvc2VkXzEgPSB0aGlzLmNsb3NlZDsKICAgICAgICAgIF9zdXBlci5wcm90b3R5cGUudW5zdWJzY3JpYmUuY2FsbCh0aGlzKTsKICAgICAgICAgICFjbG9zZWRfMSAmJiAoKF9hID0gdGhpcy5vbkZpbmFsaXplKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY2FsbCh0aGlzKSk7CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gT3BlcmF0b3JTdWJzY3JpYmVyMjsKICAgIH0oU3Vic2NyaWJlcl8xLlN1YnNjcmliZXIpOwogICAgZXhwb3J0czIuT3BlcmF0b3JTdWJzY3JpYmVyID0gT3BlcmF0b3JTdWJzY3JpYmVyOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9yZWZDb3VudC5qcwp2YXIgcmVxdWlyZV9yZWZDb3VudCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9yZWZDb3VudC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmVmQ291bnQgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gcmVmQ291bnQoKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgY29ubmVjdGlvbiA9IG51bGw7CiAgICAgICAgc291cmNlLl9yZWZDb3VudCsrOwogICAgICAgIHZhciByZWZDb3VudGVyID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIHZvaWQgMCwgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKCFzb3VyY2UgfHwgc291cmNlLl9yZWZDb3VudCA8PSAwIHx8IDAgPCAtLXNvdXJjZS5fcmVmQ291bnQpIHsKICAgICAgICAgICAgY29ubmVjdGlvbiA9IG51bGw7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIHZhciBzaGFyZWRDb25uZWN0aW9uID0gc291cmNlLl9jb25uZWN0aW9uOwogICAgICAgICAgdmFyIGNvbm4gPSBjb25uZWN0aW9uOwogICAgICAgICAgY29ubmVjdGlvbiA9IG51bGw7CiAgICAgICAgICBpZiAoc2hhcmVkQ29ubmVjdGlvbiAmJiAoIWNvbm4gfHwgc2hhcmVkQ29ubmVjdGlvbiA9PT0gY29ubikpIHsKICAgICAgICAgICAgc2hhcmVkQ29ubmVjdGlvbi51bnN1YnNjcmliZSgpOwogICAgICAgICAgfQogICAgICAgICAgc3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgIH0pOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUocmVmQ291bnRlcik7CiAgICAgICAgaWYgKCFyZWZDb3VudGVyLmNsb3NlZCkgewogICAgICAgICAgY29ubmVjdGlvbiA9IHNvdXJjZS5jb25uZWN0KCk7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJlZkNvdW50ID0gcmVmQ291bnQ7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9Db25uZWN0YWJsZU9ic2VydmFibGUuanMKdmFyIHJlcXVpcmVfQ29ubmVjdGFibGVPYnNlcnZhYmxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9Db25uZWN0YWJsZU9ic2VydmFibGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQ29ubmVjdGFibGVPYnNlcnZhYmxlID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciByZWZDb3VudF8xID0gcmVxdWlyZV9yZWZDb3VudCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBDb25uZWN0YWJsZU9ic2VydmFibGUgPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKENvbm5lY3RhYmxlT2JzZXJ2YWJsZTIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIENvbm5lY3RhYmxlT2JzZXJ2YWJsZTIoc291cmNlLCBzdWJqZWN0RmFjdG9yeSkgewogICAgICAgIHZhciBfdGhpcyA9IF9zdXBlci5jYWxsKHRoaXMpIHx8IHRoaXM7CiAgICAgICAgX3RoaXMuc291cmNlID0gc291cmNlOwogICAgICAgIF90aGlzLnN1YmplY3RGYWN0b3J5ID0gc3ViamVjdEZhY3Rvcnk7CiAgICAgICAgX3RoaXMuX3N1YmplY3QgPSBudWxsOwogICAgICAgIF90aGlzLl9yZWZDb3VudCA9IDA7CiAgICAgICAgX3RoaXMuX2Nvbm5lY3Rpb24gPSBudWxsOwogICAgICAgIGlmIChsaWZ0XzEuaGFzTGlmdChzb3VyY2UpKSB7CiAgICAgICAgICBfdGhpcy5saWZ0ID0gc291cmNlLmxpZnQ7CiAgICAgICAgfQogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBDb25uZWN0YWJsZU9ic2VydmFibGUyLnByb3RvdHlwZS5fc3Vic2NyaWJlID0gZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHJldHVybiB0aGlzLmdldFN1YmplY3QoKS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH07CiAgICAgIENvbm5lY3RhYmxlT2JzZXJ2YWJsZTIucHJvdG90eXBlLmdldFN1YmplY3QgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgc3ViamVjdCA9IHRoaXMuX3N1YmplY3Q7CiAgICAgICAgaWYgKCFzdWJqZWN0IHx8IHN1YmplY3QuaXNTdG9wcGVkKSB7CiAgICAgICAgICB0aGlzLl9zdWJqZWN0ID0gdGhpcy5zdWJqZWN0RmFjdG9yeSgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fc3ViamVjdDsKICAgICAgfTsKICAgICAgQ29ubmVjdGFibGVPYnNlcnZhYmxlMi5wcm90b3R5cGUuX3RlYXJkb3duID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdGhpcy5fcmVmQ291bnQgPSAwOwogICAgICAgIHZhciBfY29ubmVjdGlvbiA9IHRoaXMuX2Nvbm5lY3Rpb247CiAgICAgICAgdGhpcy5fc3ViamVjdCA9IHRoaXMuX2Nvbm5lY3Rpb24gPSBudWxsOwogICAgICAgIF9jb25uZWN0aW9uID09PSBudWxsIHx8IF9jb25uZWN0aW9uID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfY29ubmVjdGlvbi51bnN1YnNjcmliZSgpOwogICAgICB9OwogICAgICBDb25uZWN0YWJsZU9ic2VydmFibGUyLnByb3RvdHlwZS5jb25uZWN0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgICB2YXIgY29ubmVjdGlvbiA9IHRoaXMuX2Nvbm5lY3Rpb247CiAgICAgICAgaWYgKCFjb25uZWN0aW9uKSB7CiAgICAgICAgICBjb25uZWN0aW9uID0gdGhpcy5fY29ubmVjdGlvbiA9IG5ldyBTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24oKTsKICAgICAgICAgIHZhciBzdWJqZWN0XzEgPSB0aGlzLmdldFN1YmplY3QoKTsKICAgICAgICAgIGNvbm5lY3Rpb24uYWRkKHRoaXMuc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3ViamVjdF8xLCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICBfdGhpcy5fdGVhcmRvd24oKTsKICAgICAgICAgICAgc3ViamVjdF8xLmNvbXBsZXRlKCk7CiAgICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgICAgX3RoaXMuX3RlYXJkb3duKCk7CiAgICAgICAgICAgIHN1YmplY3RfMS5lcnJvcihlcnIpOwogICAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiBfdGhpcy5fdGVhcmRvd24oKTsKICAgICAgICAgIH0pKSk7CiAgICAgICAgICBpZiAoY29ubmVjdGlvbi5jbG9zZWQpIHsKICAgICAgICAgICAgdGhpcy5fY29ubmVjdGlvbiA9IG51bGw7CiAgICAgICAgICAgIGNvbm5lY3Rpb24gPSBTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24uRU1QVFk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBjb25uZWN0aW9uOwogICAgICB9OwogICAgICBDb25uZWN0YWJsZU9ic2VydmFibGUyLnByb3RvdHlwZS5yZWZDb3VudCA9IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiByZWZDb3VudF8xLnJlZkNvdW50KCkodGhpcyk7CiAgICAgIH07CiAgICAgIHJldHVybiBDb25uZWN0YWJsZU9ic2VydmFibGUyOwogICAgfShPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZSk7CiAgICBleHBvcnRzMi5Db25uZWN0YWJsZU9ic2VydmFibGUgPSBDb25uZWN0YWJsZU9ic2VydmFibGU7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL3BlcmZvcm1hbmNlVGltZXN0YW1wUHJvdmlkZXIuanMKdmFyIHJlcXVpcmVfcGVyZm9ybWFuY2VUaW1lc3RhbXBQcm92aWRlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyID0gdm9pZCAwOwogICAgZXhwb3J0czIucGVyZm9ybWFuY2VUaW1lc3RhbXBQcm92aWRlciA9IHsKICAgICAgbm93OiBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gKGV4cG9ydHMyLnBlcmZvcm1hbmNlVGltZXN0YW1wUHJvdmlkZXIuZGVsZWdhdGUgfHwgcGVyZm9ybWFuY2UpLm5vdygpOwogICAgICB9LAogICAgICBkZWxlZ2F0ZTogdm9pZCAwCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9hbmltYXRpb25GcmFtZVByb3ZpZGVyLmpzCnZhciByZXF1aXJlX2FuaW1hdGlvbkZyYW1lUHJvdmlkZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvYW5pbWF0aW9uRnJhbWVQcm92aWRlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYW5pbWF0aW9uRnJhbWVQcm92aWRlciA9IHZvaWQgMDsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICBleHBvcnRzMi5hbmltYXRpb25GcmFtZVByb3ZpZGVyID0gewogICAgICBzY2hlZHVsZTogZnVuY3Rpb24oY2FsbGJhY2spIHsKICAgICAgICB2YXIgcmVxdWVzdCA9IHJlcXVlc3RBbmltYXRpb25GcmFtZTsKICAgICAgICB2YXIgY2FuY2VsID0gY2FuY2VsQW5pbWF0aW9uRnJhbWU7CiAgICAgICAgdmFyIGRlbGVnYXRlID0gZXhwb3J0czIuYW5pbWF0aW9uRnJhbWVQcm92aWRlci5kZWxlZ2F0ZTsKICAgICAgICBpZiAoZGVsZWdhdGUpIHsKICAgICAgICAgIHJlcXVlc3QgPSBkZWxlZ2F0ZS5yZXF1ZXN0QW5pbWF0aW9uRnJhbWU7CiAgICAgICAgICBjYW5jZWwgPSBkZWxlZ2F0ZS5jYW5jZWxBbmltYXRpb25GcmFtZTsKICAgICAgICB9CiAgICAgICAgdmFyIGhhbmRsZSA9IHJlcXVlc3QoZnVuY3Rpb24odGltZXN0YW1wKSB7CiAgICAgICAgICBjYW5jZWwgPSB2b2lkIDA7CiAgICAgICAgICBjYWxsYmFjayh0aW1lc3RhbXApOwogICAgICAgIH0pOwogICAgICAgIHJldHVybiBuZXcgU3Vic2NyaXB0aW9uXzEuU3Vic2NyaXB0aW9uKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIGNhbmNlbCA9PT0gbnVsbCB8fCBjYW5jZWwgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGNhbmNlbChoYW5kbGUpOwogICAgICAgIH0pOwogICAgICB9LAogICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWU6IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBhcmdzID0gW107CiAgICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgICB9CiAgICAgICAgdmFyIGRlbGVnYXRlID0gZXhwb3J0czIuYW5pbWF0aW9uRnJhbWVQcm92aWRlci5kZWxlZ2F0ZTsKICAgICAgICByZXR1cm4gKChkZWxlZ2F0ZSA9PT0gbnVsbCB8fCBkZWxlZ2F0ZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGVsZWdhdGUucmVxdWVzdEFuaW1hdGlvbkZyYW1lKSB8fCByZXF1ZXN0QW5pbWF0aW9uRnJhbWUpLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKGFyZ3MpKSk7CiAgICAgIH0sCiAgICAgIGNhbmNlbEFuaW1hdGlvbkZyYW1lOiBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgfQogICAgICAgIHZhciBkZWxlZ2F0ZSA9IGV4cG9ydHMyLmFuaW1hdGlvbkZyYW1lUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLmNhbmNlbEFuaW1hdGlvbkZyYW1lKSB8fCBjYW5jZWxBbmltYXRpb25GcmFtZSkuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQoYXJncykpKTsKICAgICAgfSwKICAgICAgZGVsZWdhdGU6IHZvaWQgMAogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2RvbS9hbmltYXRpb25GcmFtZXMuanMKdmFyIHJlcXVpcmVfYW5pbWF0aW9uRnJhbWVzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9kb20vYW5pbWF0aW9uRnJhbWVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hbmltYXRpb25GcmFtZXMgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgcGVyZm9ybWFuY2VUaW1lc3RhbXBQcm92aWRlcl8xID0gcmVxdWlyZV9wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyKCk7CiAgICB2YXIgYW5pbWF0aW9uRnJhbWVQcm92aWRlcl8xID0gcmVxdWlyZV9hbmltYXRpb25GcmFtZVByb3ZpZGVyKCk7CiAgICBmdW5jdGlvbiBhbmltYXRpb25GcmFtZXModGltZXN0YW1wUHJvdmlkZXIpIHsKICAgICAgcmV0dXJuIHRpbWVzdGFtcFByb3ZpZGVyID8gYW5pbWF0aW9uRnJhbWVzRmFjdG9yeSh0aW1lc3RhbXBQcm92aWRlcikgOiBERUZBVUxUX0FOSU1BVElPTl9GUkFNRVM7CiAgICB9CiAgICBleHBvcnRzMi5hbmltYXRpb25GcmFtZXMgPSBhbmltYXRpb25GcmFtZXM7CiAgICBmdW5jdGlvbiBhbmltYXRpb25GcmFtZXNGYWN0b3J5KHRpbWVzdGFtcFByb3ZpZGVyKSB7CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBwcm92aWRlciA9IHRpbWVzdGFtcFByb3ZpZGVyIHx8IHBlcmZvcm1hbmNlVGltZXN0YW1wUHJvdmlkZXJfMS5wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyOwogICAgICAgIHZhciBzdGFydCA9IHByb3ZpZGVyLm5vdygpOwogICAgICAgIHZhciBpZCA9IDA7CiAgICAgICAgdmFyIHJ1biA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKCFzdWJzY3JpYmVyLmNsb3NlZCkgewogICAgICAgICAgICBpZCA9IGFuaW1hdGlvbkZyYW1lUHJvdmlkZXJfMS5hbmltYXRpb25GcmFtZVByb3ZpZGVyLnJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbih0aW1lc3RhbXApIHsKICAgICAgICAgICAgICBpZCA9IDA7CiAgICAgICAgICAgICAgdmFyIG5vdyA9IHByb3ZpZGVyLm5vdygpOwogICAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh7CiAgICAgICAgICAgICAgICB0aW1lc3RhbXA6IHRpbWVzdGFtcFByb3ZpZGVyID8gbm93IDogdGltZXN0YW1wLAogICAgICAgICAgICAgICAgZWxhcHNlZDogbm93IC0gc3RhcnQKICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICBydW4oKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBydW4oKTsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoaWQpIHsKICAgICAgICAgICAgYW5pbWF0aW9uRnJhbWVQcm92aWRlcl8xLmFuaW1hdGlvbkZyYW1lUHJvdmlkZXIuY2FuY2VsQW5pbWF0aW9uRnJhbWUoaWQpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgIH0pOwogICAgfQogICAgdmFyIERFRkFVTFRfQU5JTUFUSU9OX0ZSQU1FUyA9IGFuaW1hdGlvbkZyYW1lc0ZhY3RvcnkoKTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL09iamVjdFVuc3Vic2NyaWJlZEVycm9yLmpzCnZhciByZXF1aXJlX09iamVjdFVuc3Vic2NyaWJlZEVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9PYmplY3RVbnN1YnNjcmliZWRFcnJvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuT2JqZWN0VW5zdWJzY3JpYmVkRXJyb3IgPSB2b2lkIDA7CiAgICB2YXIgY3JlYXRlRXJyb3JDbGFzc18xID0gcmVxdWlyZV9jcmVhdGVFcnJvckNsYXNzKCk7CiAgICBleHBvcnRzMi5PYmplY3RVbnN1YnNjcmliZWRFcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gT2JqZWN0VW5zdWJzY3JpYmVkRXJyb3JJbXBsKCkgewogICAgICAgIF9zdXBlcih0aGlzKTsKICAgICAgICB0aGlzLm5hbWUgPSAiT2JqZWN0VW5zdWJzY3JpYmVkRXJyb3IiOwogICAgICAgIHRoaXMubWVzc2FnZSA9ICJvYmplY3QgdW5zdWJzY3JpYmVkIjsKICAgICAgfTsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1N1YmplY3QuanMKdmFyIHJlcXVpcmVfU3ViamVjdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1N1YmplY3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQW5vbnltb3VzU3ViamVjdCA9IGV4cG9ydHMyLlN1YmplY3QgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgU3Vic2NyaXB0aW9uXzEgPSByZXF1aXJlX1N1YnNjcmlwdGlvbigpOwogICAgdmFyIE9iamVjdFVuc3Vic2NyaWJlZEVycm9yXzEgPSByZXF1aXJlX09iamVjdFVuc3Vic2NyaWJlZEVycm9yKCk7CiAgICB2YXIgYXJyUmVtb3ZlXzEgPSByZXF1aXJlX2FyclJlbW92ZSgpOwogICAgdmFyIGVycm9yQ29udGV4dF8xID0gcmVxdWlyZV9lcnJvckNvbnRleHQoKTsKICAgIHZhciBTdWJqZWN0ID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhTdWJqZWN0MiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gU3ViamVjdDIoKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICBfdGhpcy5jbG9zZWQgPSBmYWxzZTsKICAgICAgICBfdGhpcy5jdXJyZW50T2JzZXJ2ZXJzID0gbnVsbDsKICAgICAgICBfdGhpcy5vYnNlcnZlcnMgPSBbXTsKICAgICAgICBfdGhpcy5pc1N0b3BwZWQgPSBmYWxzZTsKICAgICAgICBfdGhpcy5oYXNFcnJvciA9IGZhbHNlOwogICAgICAgIF90aGlzLnRocm93bkVycm9yID0gbnVsbDsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgU3ViamVjdDIucHJvdG90eXBlLmxpZnQgPSBmdW5jdGlvbihvcGVyYXRvcikgewogICAgICAgIHZhciBzdWJqZWN0ID0gbmV3IEFub255bW91c1N1YmplY3QodGhpcywgdGhpcyk7CiAgICAgICAgc3ViamVjdC5vcGVyYXRvciA9IG9wZXJhdG9yOwogICAgICAgIHJldHVybiBzdWJqZWN0OwogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUuX3Rocm93SWZDbG9zZWQgPSBmdW5jdGlvbigpIHsKICAgICAgICBpZiAodGhpcy5jbG9zZWQpIHsKICAgICAgICAgIHRocm93IG5ldyBPYmplY3RVbnN1YnNjcmliZWRFcnJvcl8xLk9iamVjdFVuc3Vic2NyaWJlZEVycm9yKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgICBlcnJvckNvbnRleHRfMS5lcnJvckNvbnRleHQoZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgZV8xLCBfYTsKICAgICAgICAgIF90aGlzLl90aHJvd0lmQ2xvc2VkKCk7CiAgICAgICAgICBpZiAoIV90aGlzLmlzU3RvcHBlZCkgewogICAgICAgICAgICBpZiAoIV90aGlzLmN1cnJlbnRPYnNlcnZlcnMpIHsKICAgICAgICAgICAgICBfdGhpcy5jdXJyZW50T2JzZXJ2ZXJzID0gQXJyYXkuZnJvbShfdGhpcy5vYnNlcnZlcnMpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgX2IgPSBfX3ZhbHVlcyhfdGhpcy5jdXJyZW50T2JzZXJ2ZXJzKSwgX2MgPSBfYi5uZXh0KCk7ICFfYy5kb25lOyBfYyA9IF9iLm5leHQoKSkgewogICAgICAgICAgICAgICAgdmFyIG9ic2VydmVyID0gX2MudmFsdWU7CiAgICAgICAgICAgICAgICBvYnNlcnZlci5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gY2F0Y2ggKGVfMV8xKSB7CiAgICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgaWYgKF9jICYmICFfYy5kb25lICYmIChfYSA9IF9iLnJldHVybikpIF9hLmNhbGwoX2IpOwogICAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgICBpZiAoZV8xKSB0aHJvdyBlXzEuZXJyb3I7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH07CiAgICAgIFN1YmplY3QyLnByb3RvdHlwZS5lcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgICAgZXJyb3JDb250ZXh0XzEuZXJyb3JDb250ZXh0KGZ1bmN0aW9uKCkgewogICAgICAgICAgX3RoaXMuX3Rocm93SWZDbG9zZWQoKTsKICAgICAgICAgIGlmICghX3RoaXMuaXNTdG9wcGVkKSB7CiAgICAgICAgICAgIF90aGlzLmhhc0Vycm9yID0gX3RoaXMuaXNTdG9wcGVkID0gdHJ1ZTsKICAgICAgICAgICAgX3RoaXMudGhyb3duRXJyb3IgPSBlcnI7CiAgICAgICAgICAgIHZhciBvYnNlcnZlcnMgPSBfdGhpcy5vYnNlcnZlcnM7CiAgICAgICAgICAgIHdoaWxlIChvYnNlcnZlcnMubGVuZ3RoKSB7CiAgICAgICAgICAgICAgb2JzZXJ2ZXJzLnNoaWZ0KCkuZXJyb3IoZXJyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUuY29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgX3RoaXMgPSB0aGlzOwogICAgICAgIGVycm9yQ29udGV4dF8xLmVycm9yQ29udGV4dChmdW5jdGlvbigpIHsKICAgICAgICAgIF90aGlzLl90aHJvd0lmQ2xvc2VkKCk7CiAgICAgICAgICBpZiAoIV90aGlzLmlzU3RvcHBlZCkgewogICAgICAgICAgICBfdGhpcy5pc1N0b3BwZWQgPSB0cnVlOwogICAgICAgICAgICB2YXIgb2JzZXJ2ZXJzID0gX3RoaXMub2JzZXJ2ZXJzOwogICAgICAgICAgICB3aGlsZSAob2JzZXJ2ZXJzLmxlbmd0aCkgewogICAgICAgICAgICAgIG9ic2VydmVycy5zaGlmdCgpLmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLnVuc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdGhpcy5pc1N0b3BwZWQgPSB0aGlzLmNsb3NlZCA9IHRydWU7CiAgICAgICAgdGhpcy5vYnNlcnZlcnMgPSB0aGlzLmN1cnJlbnRPYnNlcnZlcnMgPSBudWxsOwogICAgICB9OwogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoU3ViamVjdDIucHJvdG90eXBlLCAib2JzZXJ2ZWQiLCB7CiAgICAgICAgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBfYTsKICAgICAgICAgIHJldHVybiAoKF9hID0gdGhpcy5vYnNlcnZlcnMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5sZW5ndGgpID4gMDsKICAgICAgICB9LAogICAgICAgIGVudW1lcmFibGU6IGZhbHNlLAogICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZQogICAgICB9KTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLl90cnlTdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdGhpcy5fdGhyb3dJZkNsb3NlZCgpOwogICAgICAgIHJldHVybiBfc3VwZXIucHJvdG90eXBlLl90cnlTdWJzY3JpYmUuY2FsbCh0aGlzLCBzdWJzY3JpYmVyKTsKICAgICAgfTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLl9zdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdGhpcy5fdGhyb3dJZkNsb3NlZCgpOwogICAgICAgIHRoaXMuX2NoZWNrRmluYWxpemVkU3RhdHVzZXMoc3Vic2NyaWJlcik7CiAgICAgICAgcmV0dXJuIHRoaXMuX2lubmVyU3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUuX2lubmVyU3Vic2NyaWJlID0gZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgICAgdmFyIF9hID0gdGhpcywgaGFzRXJyb3IgPSBfYS5oYXNFcnJvciwgaXNTdG9wcGVkID0gX2EuaXNTdG9wcGVkLCBvYnNlcnZlcnMgPSBfYS5vYnNlcnZlcnM7CiAgICAgICAgaWYgKGhhc0Vycm9yIHx8IGlzU3RvcHBlZCkgewogICAgICAgICAgcmV0dXJuIFN1YnNjcmlwdGlvbl8xLkVNUFRZX1NVQlNDUklQVElPTjsKICAgICAgICB9CiAgICAgICAgdGhpcy5jdXJyZW50T2JzZXJ2ZXJzID0gbnVsbDsKICAgICAgICBvYnNlcnZlcnMucHVzaChzdWJzY3JpYmVyKTsKICAgICAgICByZXR1cm4gbmV3IFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbihmdW5jdGlvbigpIHsKICAgICAgICAgIF90aGlzLmN1cnJlbnRPYnNlcnZlcnMgPSBudWxsOwogICAgICAgICAgYXJyUmVtb3ZlXzEuYXJyUmVtb3ZlKG9ic2VydmVycywgc3Vic2NyaWJlcik7CiAgICAgICAgfSk7CiAgICAgIH07CiAgICAgIFN1YmplY3QyLnByb3RvdHlwZS5fY2hlY2tGaW5hbGl6ZWRTdGF0dXNlcyA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgX2EgPSB0aGlzLCBoYXNFcnJvciA9IF9hLmhhc0Vycm9yLCB0aHJvd25FcnJvciA9IF9hLnRocm93bkVycm9yLCBpc1N0b3BwZWQgPSBfYS5pc1N0b3BwZWQ7CiAgICAgICAgaWYgKGhhc0Vycm9yKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKHRocm93bkVycm9yKTsKICAgICAgICB9IGVsc2UgaWYgKGlzU3RvcHBlZCkgewogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLmFzT2JzZXJ2YWJsZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBvYnNlcnZhYmxlID0gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKCk7CiAgICAgICAgb2JzZXJ2YWJsZS5zb3VyY2UgPSB0aGlzOwogICAgICAgIHJldHVybiBvYnNlcnZhYmxlOwogICAgICB9OwogICAgICBTdWJqZWN0Mi5jcmVhdGUgPSBmdW5jdGlvbihkZXN0aW5hdGlvbiwgc291cmNlKSB7CiAgICAgICAgcmV0dXJuIG5ldyBBbm9ueW1vdXNTdWJqZWN0KGRlc3RpbmF0aW9uLCBzb3VyY2UpOwogICAgICB9OwogICAgICByZXR1cm4gU3ViamVjdDI7CiAgICB9KE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKTsKICAgIGV4cG9ydHMyLlN1YmplY3QgPSBTdWJqZWN0OwogICAgdmFyIEFub255bW91c1N1YmplY3QgPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKEFub255bW91c1N1YmplY3QyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBBbm9ueW1vdXNTdWJqZWN0MihkZXN0aW5hdGlvbiwgc291cmNlKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICBfdGhpcy5kZXN0aW5hdGlvbiA9IGRlc3RpbmF0aW9uOwogICAgICAgIF90aGlzLnNvdXJjZSA9IHNvdXJjZTsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQW5vbnltb3VzU3ViamVjdDIucHJvdG90eXBlLm5leHQgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIHZhciBfYSwgX2I7CiAgICAgICAgKF9iID0gKF9hID0gdGhpcy5kZXN0aW5hdGlvbikgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLm5leHQpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5jYWxsKF9hLCB2YWx1ZSk7CiAgICAgIH07CiAgICAgIEFub255bW91c1N1YmplY3QyLnByb3RvdHlwZS5lcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgIHZhciBfYSwgX2I7CiAgICAgICAgKF9iID0gKF9hID0gdGhpcy5kZXN0aW5hdGlvbikgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmVycm9yKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IuY2FsbChfYSwgZXJyKTsKICAgICAgfTsKICAgICAgQW5vbnltb3VzU3ViamVjdDIucHJvdG90eXBlLmNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF9hLCBfYjsKICAgICAgICAoX2IgPSAoX2EgPSB0aGlzLmRlc3RpbmF0aW9uKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY29tcGxldGUpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5jYWxsKF9hKTsKICAgICAgfTsKICAgICAgQW5vbnltb3VzU3ViamVjdDIucHJvdG90eXBlLl9zdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIF9hLCBfYjsKICAgICAgICByZXR1cm4gKF9iID0gKF9hID0gdGhpcy5zb3VyY2UpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5zdWJzY3JpYmUoc3Vic2NyaWJlcikpICE9PSBudWxsICYmIF9iICE9PSB2b2lkIDAgPyBfYiA6IFN1YnNjcmlwdGlvbl8xLkVNUFRZX1NVQlNDUklQVElPTjsKICAgICAgfTsKICAgICAgcmV0dXJuIEFub255bW91c1N1YmplY3QyOwogICAgfShTdWJqZWN0KTsKICAgIGV4cG9ydHMyLkFub255bW91c1N1YmplY3QgPSBBbm9ueW1vdXNTdWJqZWN0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL0JlaGF2aW9yU3ViamVjdC5qcwp2YXIgcmVxdWlyZV9CZWhhdmlvclN1YmplY3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9CZWhhdmlvclN1YmplY3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQmVoYXZpb3JTdWJqZWN0ID0gdm9pZCAwOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIEJlaGF2aW9yU3ViamVjdCA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoQmVoYXZpb3JTdWJqZWN0MiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gQmVoYXZpb3JTdWJqZWN0MihfdmFsdWUpIHsKICAgICAgICB2YXIgX3RoaXMgPSBfc3VwZXIuY2FsbCh0aGlzKSB8fCB0aGlzOwogICAgICAgIF90aGlzLl92YWx1ZSA9IF92YWx1ZTsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KEJlaGF2aW9yU3ViamVjdDIucHJvdG90eXBlLCAidmFsdWUiLCB7CiAgICAgICAgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiB0aGlzLmdldFZhbHVlKCk7CiAgICAgICAgfSwKICAgICAgICBlbnVtZXJhYmxlOiBmYWxzZSwKICAgICAgICBjb25maWd1cmFibGU6IHRydWUKICAgICAgfSk7CiAgICAgIEJlaGF2aW9yU3ViamVjdDIucHJvdG90eXBlLl9zdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHN1YnNjcmlwdGlvbiA9IF9zdXBlci5wcm90b3R5cGUuX3N1YnNjcmliZS5jYWxsKHRoaXMsIHN1YnNjcmliZXIpOwogICAgICAgICFzdWJzY3JpcHRpb24uY2xvc2VkICYmIHN1YnNjcmliZXIubmV4dCh0aGlzLl92YWx1ZSk7CiAgICAgICAgcmV0dXJuIHN1YnNjcmlwdGlvbjsKICAgICAgfTsKICAgICAgQmVoYXZpb3JTdWJqZWN0Mi5wcm90b3R5cGUuZ2V0VmFsdWUgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgX2EgPSB0aGlzLCBoYXNFcnJvciA9IF9hLmhhc0Vycm9yLCB0aHJvd25FcnJvciA9IF9hLnRocm93bkVycm9yLCBfdmFsdWUgPSBfYS5fdmFsdWU7CiAgICAgICAgaWYgKGhhc0Vycm9yKSB7CiAgICAgICAgICB0aHJvdyB0aHJvd25FcnJvcjsKICAgICAgICB9CiAgICAgICAgdGhpcy5fdGhyb3dJZkNsb3NlZCgpOwogICAgICAgIHJldHVybiBfdmFsdWU7CiAgICAgIH07CiAgICAgIEJlaGF2aW9yU3ViamVjdDIucHJvdG90eXBlLm5leHQgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIF9zdXBlci5wcm90b3R5cGUubmV4dC5jYWxsKHRoaXMsIHRoaXMuX3ZhbHVlID0gdmFsdWUpOwogICAgICB9OwogICAgICByZXR1cm4gQmVoYXZpb3JTdWJqZWN0MjsKICAgIH0oU3ViamVjdF8xLlN1YmplY3QpOwogICAgZXhwb3J0czIuQmVoYXZpb3JTdWJqZWN0ID0gQmVoYXZpb3JTdWJqZWN0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9kYXRlVGltZXN0YW1wUHJvdmlkZXIuanMKdmFyIHJlcXVpcmVfZGF0ZVRpbWVzdGFtcFByb3ZpZGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2RhdGVUaW1lc3RhbXBQcm92aWRlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGF0ZVRpbWVzdGFtcFByb3ZpZGVyID0gdm9pZCAwOwogICAgZXhwb3J0czIuZGF0ZVRpbWVzdGFtcFByb3ZpZGVyID0gewogICAgICBub3c6IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiAoZXhwb3J0czIuZGF0ZVRpbWVzdGFtcFByb3ZpZGVyLmRlbGVnYXRlIHx8IERhdGUpLm5vdygpOwogICAgICB9LAogICAgICBkZWxlZ2F0ZTogdm9pZCAwCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1JlcGxheVN1YmplY3QuanMKdmFyIHJlcXVpcmVfUmVwbGF5U3ViamVjdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1JlcGxheVN1YmplY3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuUmVwbGF5U3ViamVjdCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBkYXRlVGltZXN0YW1wUHJvdmlkZXJfMSA9IHJlcXVpcmVfZGF0ZVRpbWVzdGFtcFByb3ZpZGVyKCk7CiAgICB2YXIgUmVwbGF5U3ViamVjdCA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoUmVwbGF5U3ViamVjdDIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIFJlcGxheVN1YmplY3QyKF9idWZmZXJTaXplLCBfd2luZG93VGltZSwgX3RpbWVzdGFtcFByb3ZpZGVyKSB7CiAgICAgICAgaWYgKF9idWZmZXJTaXplID09PSB2b2lkIDApIHsKICAgICAgICAgIF9idWZmZXJTaXplID0gSW5maW5pdHk7CiAgICAgICAgfQogICAgICAgIGlmIChfd2luZG93VGltZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBfd2luZG93VGltZSA9IEluZmluaXR5OwogICAgICAgIH0KICAgICAgICBpZiAoX3RpbWVzdGFtcFByb3ZpZGVyID09PSB2b2lkIDApIHsKICAgICAgICAgIF90aW1lc3RhbXBQcm92aWRlciA9IGRhdGVUaW1lc3RhbXBQcm92aWRlcl8xLmRhdGVUaW1lc3RhbXBQcm92aWRlcjsKICAgICAgICB9CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICBfdGhpcy5fYnVmZmVyU2l6ZSA9IF9idWZmZXJTaXplOwogICAgICAgIF90aGlzLl93aW5kb3dUaW1lID0gX3dpbmRvd1RpbWU7CiAgICAgICAgX3RoaXMuX3RpbWVzdGFtcFByb3ZpZGVyID0gX3RpbWVzdGFtcFByb3ZpZGVyOwogICAgICAgIF90aGlzLl9idWZmZXIgPSBbXTsKICAgICAgICBfdGhpcy5faW5maW5pdGVUaW1lV2luZG93ID0gdHJ1ZTsKICAgICAgICBfdGhpcy5faW5maW5pdGVUaW1lV2luZG93ID0gX3dpbmRvd1RpbWUgPT09IEluZmluaXR5OwogICAgICAgIF90aGlzLl9idWZmZXJTaXplID0gTWF0aC5tYXgoMSwgX2J1ZmZlclNpemUpOwogICAgICAgIF90aGlzLl93aW5kb3dUaW1lID0gTWF0aC5tYXgoMSwgX3dpbmRvd1RpbWUpOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBSZXBsYXlTdWJqZWN0Mi5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgdmFyIF9hID0gdGhpcywgaXNTdG9wcGVkID0gX2EuaXNTdG9wcGVkLCBfYnVmZmVyID0gX2EuX2J1ZmZlciwgX2luZmluaXRlVGltZVdpbmRvdyA9IF9hLl9pbmZpbml0ZVRpbWVXaW5kb3csIF90aW1lc3RhbXBQcm92aWRlciA9IF9hLl90aW1lc3RhbXBQcm92aWRlciwgX3dpbmRvd1RpbWUgPSBfYS5fd2luZG93VGltZTsKICAgICAgICBpZiAoIWlzU3RvcHBlZCkgewogICAgICAgICAgX2J1ZmZlci5wdXNoKHZhbHVlKTsKICAgICAgICAgICFfaW5maW5pdGVUaW1lV2luZG93ICYmIF9idWZmZXIucHVzaChfdGltZXN0YW1wUHJvdmlkZXIubm93KCkgKyBfd2luZG93VGltZSk7CiAgICAgICAgfQogICAgICAgIHRoaXMuX3RyaW1CdWZmZXIoKTsKICAgICAgICBfc3VwZXIucHJvdG90eXBlLm5leHQuY2FsbCh0aGlzLCB2YWx1ZSk7CiAgICAgIH07CiAgICAgIFJlcGxheVN1YmplY3QyLnByb3RvdHlwZS5fc3Vic2NyaWJlID0gZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHRoaXMuX3Rocm93SWZDbG9zZWQoKTsKICAgICAgICB0aGlzLl90cmltQnVmZmVyKCk7CiAgICAgICAgdmFyIHN1YnNjcmlwdGlvbiA9IHRoaXMuX2lubmVyU3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICAgIHZhciBfYSA9IHRoaXMsIF9pbmZpbml0ZVRpbWVXaW5kb3cgPSBfYS5faW5maW5pdGVUaW1lV2luZG93LCBfYnVmZmVyID0gX2EuX2J1ZmZlcjsKICAgICAgICB2YXIgY29weSA9IF9idWZmZXIuc2xpY2UoKTsKICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGNvcHkubGVuZ3RoICYmICFzdWJzY3JpYmVyLmNsb3NlZDsgaSArPSBfaW5maW5pdGVUaW1lV2luZG93ID8gMSA6IDIpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChjb3B5W2ldKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fY2hlY2tGaW5hbGl6ZWRTdGF0dXNlcyhzdWJzY3JpYmVyKTsKICAgICAgICByZXR1cm4gc3Vic2NyaXB0aW9uOwogICAgICB9OwogICAgICBSZXBsYXlTdWJqZWN0Mi5wcm90b3R5cGUuX3RyaW1CdWZmZXIgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgX2EgPSB0aGlzLCBfYnVmZmVyU2l6ZSA9IF9hLl9idWZmZXJTaXplLCBfdGltZXN0YW1wUHJvdmlkZXIgPSBfYS5fdGltZXN0YW1wUHJvdmlkZXIsIF9idWZmZXIgPSBfYS5fYnVmZmVyLCBfaW5maW5pdGVUaW1lV2luZG93ID0gX2EuX2luZmluaXRlVGltZVdpbmRvdzsKICAgICAgICB2YXIgYWRqdXN0ZWRCdWZmZXJTaXplID0gKF9pbmZpbml0ZVRpbWVXaW5kb3cgPyAxIDogMikgKiBfYnVmZmVyU2l6ZTsKICAgICAgICBfYnVmZmVyU2l6ZSA8IEluZmluaXR5ICYmIGFkanVzdGVkQnVmZmVyU2l6ZSA8IF9idWZmZXIubGVuZ3RoICYmIF9idWZmZXIuc3BsaWNlKDAsIF9idWZmZXIubGVuZ3RoIC0gYWRqdXN0ZWRCdWZmZXJTaXplKTsKICAgICAgICBpZiAoIV9pbmZpbml0ZVRpbWVXaW5kb3cpIHsKICAgICAgICAgIHZhciBub3cgPSBfdGltZXN0YW1wUHJvdmlkZXIubm93KCk7CiAgICAgICAgICB2YXIgbGFzdCA9IDA7CiAgICAgICAgICBmb3IgKHZhciBpID0gMTsgaSA8IF9idWZmZXIubGVuZ3RoICYmIF9idWZmZXJbaV0gPD0gbm93OyBpICs9IDIpIHsKICAgICAgICAgICAgbGFzdCA9IGk7CiAgICAgICAgICB9CiAgICAgICAgICBsYXN0ICYmIF9idWZmZXIuc3BsaWNlKDAsIGxhc3QgKyAxKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBSZXBsYXlTdWJqZWN0MjsKICAgIH0oU3ViamVjdF8xLlN1YmplY3QpOwogICAgZXhwb3J0czIuUmVwbGF5U3ViamVjdCA9IFJlcGxheVN1YmplY3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvQXN5bmNTdWJqZWN0LmpzCnZhciByZXF1aXJlX0FzeW5jU3ViamVjdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL0FzeW5jU3ViamVjdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Bc3luY1N1YmplY3QgPSB2b2lkIDA7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgQXN5bmNTdWJqZWN0ID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBc3luY1N1YmplY3QyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBBc3luY1N1YmplY3QyKCkgewogICAgICAgIHZhciBfdGhpcyA9IF9zdXBlciAhPT0gbnVsbCAmJiBfc3VwZXIuYXBwbHkodGhpcywgYXJndW1lbnRzKSB8fCB0aGlzOwogICAgICAgIF90aGlzLl92YWx1ZSA9IG51bGw7CiAgICAgICAgX3RoaXMuX2hhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgX3RoaXMuX2lzQ29tcGxldGUgPSBmYWxzZTsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQXN5bmNTdWJqZWN0Mi5wcm90b3R5cGUuX2NoZWNrRmluYWxpemVkU3RhdHVzZXMgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIF9hID0gdGhpcywgaGFzRXJyb3IgPSBfYS5oYXNFcnJvciwgX2hhc1ZhbHVlID0gX2EuX2hhc1ZhbHVlLCBfdmFsdWUgPSBfYS5fdmFsdWUsIHRocm93bkVycm9yID0gX2EudGhyb3duRXJyb3IsIGlzU3RvcHBlZCA9IF9hLmlzU3RvcHBlZCwgX2lzQ29tcGxldGUgPSBfYS5faXNDb21wbGV0ZTsKICAgICAgICBpZiAoaGFzRXJyb3IpIHsKICAgICAgICAgIHN1YnNjcmliZXIuZXJyb3IodGhyb3duRXJyb3IpOwogICAgICAgIH0gZWxzZSBpZiAoaXNTdG9wcGVkIHx8IF9pc0NvbXBsZXRlKSB7CiAgICAgICAgICBfaGFzVmFsdWUgJiYgc3Vic2NyaWJlci5uZXh0KF92YWx1ZSk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICBBc3luY1N1YmplY3QyLnByb3RvdHlwZS5uZXh0ID0gZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICBpZiAoIXRoaXMuaXNTdG9wcGVkKSB7CiAgICAgICAgICB0aGlzLl92YWx1ZSA9IHZhbHVlOwogICAgICAgICAgdGhpcy5faGFzVmFsdWUgPSB0cnVlOwogICAgICAgIH0KICAgICAgfTsKICAgICAgQXN5bmNTdWJqZWN0Mi5wcm90b3R5cGUuY29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgX2EgPSB0aGlzLCBfaGFzVmFsdWUgPSBfYS5faGFzVmFsdWUsIF92YWx1ZSA9IF9hLl92YWx1ZSwgX2lzQ29tcGxldGUgPSBfYS5faXNDb21wbGV0ZTsKICAgICAgICBpZiAoIV9pc0NvbXBsZXRlKSB7CiAgICAgICAgICB0aGlzLl9pc0NvbXBsZXRlID0gdHJ1ZTsKICAgICAgICAgIF9oYXNWYWx1ZSAmJiBfc3VwZXIucHJvdG90eXBlLm5leHQuY2FsbCh0aGlzLCBfdmFsdWUpOwogICAgICAgICAgX3N1cGVyLnByb3RvdHlwZS5jb21wbGV0ZS5jYWxsKHRoaXMpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgcmV0dXJuIEFzeW5jU3ViamVjdDI7CiAgICB9KFN1YmplY3RfMS5TdWJqZWN0KTsKICAgIGV4cG9ydHMyLkFzeW5jU3ViamVjdCA9IEFzeW5jU3ViamVjdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQWN0aW9uLmpzCnZhciByZXF1aXJlX0FjdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9BY3Rpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQWN0aW9uID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBBY3Rpb24gPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKEFjdGlvbjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIEFjdGlvbjIoc2NoZWR1bGVyLCB3b3JrKSB7CiAgICAgICAgcmV0dXJuIF9zdXBlci5jYWxsKHRoaXMpIHx8IHRoaXM7CiAgICAgIH0KICAgICAgQWN0aW9uMi5wcm90b3R5cGUuc2NoZWR1bGUgPSBmdW5jdGlvbihzdGF0ZSwgZGVsYXkpIHsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfTsKICAgICAgcmV0dXJuIEFjdGlvbjI7CiAgICB9KFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbik7CiAgICBleHBvcnRzMi5BY3Rpb24gPSBBY3Rpb247CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2ludGVydmFsUHJvdmlkZXIuanMKdmFyIHJlcXVpcmVfaW50ZXJ2YWxQcm92aWRlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9pbnRlcnZhbFByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pbnRlcnZhbFByb3ZpZGVyID0gdm9pZCAwOwogICAgZXhwb3J0czIuaW50ZXJ2YWxQcm92aWRlciA9IHsKICAgICAgc2V0SW50ZXJ2YWw6IGZ1bmN0aW9uKGhhbmRsZXIsIHRpbWVvdXQpIHsKICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMjsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBhcmdzW19pIC0gMl0gPSBhcmd1bWVudHNbX2ldOwogICAgICAgIH0KICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi5pbnRlcnZhbFByb3ZpZGVyLmRlbGVnYXRlOwogICAgICAgIGlmIChkZWxlZ2F0ZSA9PT0gbnVsbCB8fCBkZWxlZ2F0ZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGVsZWdhdGUuc2V0SW50ZXJ2YWwpIHsKICAgICAgICAgIHJldHVybiBkZWxlZ2F0ZS5zZXRJbnRlcnZhbC5hcHBseShkZWxlZ2F0ZSwgX19zcHJlYWRBcnJheShbaGFuZGxlciwgdGltZW91dF0sIF9fcmVhZChhcmdzKSkpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2V0SW50ZXJ2YWwuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtoYW5kbGVyLCB0aW1lb3V0XSwgX19yZWFkKGFyZ3MpKSk7CiAgICAgIH0sCiAgICAgIGNsZWFySW50ZXJ2YWw6IGZ1bmN0aW9uKGhhbmRsZSkgewogICAgICAgIHZhciBkZWxlZ2F0ZSA9IGV4cG9ydHMyLmludGVydmFsUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLmNsZWFySW50ZXJ2YWwpIHx8IGNsZWFySW50ZXJ2YWwpKGhhbmRsZSk7CiAgICAgIH0sCiAgICAgIGRlbGVnYXRlOiB2b2lkIDAKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL0FzeW5jQWN0aW9uLmpzCnZhciByZXF1aXJlX0FzeW5jQWN0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL0FzeW5jQWN0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkFzeW5jQWN0aW9uID0gdm9pZCAwOwogICAgdmFyIEFjdGlvbl8xID0gcmVxdWlyZV9BY3Rpb24oKTsKICAgIHZhciBpbnRlcnZhbFByb3ZpZGVyXzEgPSByZXF1aXJlX2ludGVydmFsUHJvdmlkZXIoKTsKICAgIHZhciBhcnJSZW1vdmVfMSA9IHJlcXVpcmVfYXJyUmVtb3ZlKCk7CiAgICB2YXIgQXN5bmNBY3Rpb24gPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKEFzeW5jQWN0aW9uMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gQXN5bmNBY3Rpb24yKHNjaGVkdWxlciwgd29yaykgewogICAgICAgIHZhciBfdGhpcyA9IF9zdXBlci5jYWxsKHRoaXMsIHNjaGVkdWxlciwgd29yaykgfHwgdGhpczsKICAgICAgICBfdGhpcy5zY2hlZHVsZXIgPSBzY2hlZHVsZXI7CiAgICAgICAgX3RoaXMud29yayA9IHdvcms7CiAgICAgICAgX3RoaXMucGVuZGluZyA9IGZhbHNlOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBBc3luY0FjdGlvbjIucHJvdG90eXBlLnNjaGVkdWxlID0gZnVuY3Rpb24oc3RhdGUsIGRlbGF5KSB7CiAgICAgICAgdmFyIF9hOwogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIGlmICh0aGlzLmNsb3NlZCkgewogICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgICAgfQogICAgICAgIHRoaXMuc3RhdGUgPSBzdGF0ZTsKICAgICAgICB2YXIgaWQgPSB0aGlzLmlkOwogICAgICAgIHZhciBzY2hlZHVsZXIgPSB0aGlzLnNjaGVkdWxlcjsKICAgICAgICBpZiAoaWQgIT0gbnVsbCkgewogICAgICAgICAgdGhpcy5pZCA9IHRoaXMucmVjeWNsZUFzeW5jSWQoc2NoZWR1bGVyLCBpZCwgZGVsYXkpOwogICAgICAgIH0KICAgICAgICB0aGlzLnBlbmRpbmcgPSB0cnVlOwogICAgICAgIHRoaXMuZGVsYXkgPSBkZWxheTsKICAgICAgICB0aGlzLmlkID0gKF9hID0gdGhpcy5pZCkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogdGhpcy5yZXF1ZXN0QXN5bmNJZChzY2hlZHVsZXIsIHRoaXMuaWQsIGRlbGF5KTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfTsKICAgICAgQXN5bmNBY3Rpb24yLnByb3RvdHlwZS5yZXF1ZXN0QXN5bmNJZCA9IGZ1bmN0aW9uKHNjaGVkdWxlciwgX2lkLCBkZWxheSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIHJldHVybiBpbnRlcnZhbFByb3ZpZGVyXzEuaW50ZXJ2YWxQcm92aWRlci5zZXRJbnRlcnZhbChzY2hlZHVsZXIuZmx1c2guYmluZChzY2hlZHVsZXIsIHRoaXMpLCBkZWxheSk7CiAgICAgIH07CiAgICAgIEFzeW5jQWN0aW9uMi5wcm90b3R5cGUucmVjeWNsZUFzeW5jSWQgPSBmdW5jdGlvbihfc2NoZWR1bGVyLCBpZCwgZGVsYXkpIHsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAoZGVsYXkgIT0gbnVsbCAmJiB0aGlzLmRlbGF5ID09PSBkZWxheSAmJiB0aGlzLnBlbmRpbmcgPT09IGZhbHNlKSB7CiAgICAgICAgICByZXR1cm4gaWQ7CiAgICAgICAgfQogICAgICAgIGlmIChpZCAhPSBudWxsKSB7CiAgICAgICAgICBpbnRlcnZhbFByb3ZpZGVyXzEuaW50ZXJ2YWxQcm92aWRlci5jbGVhckludGVydmFsKGlkKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgfTsKICAgICAgQXN5bmNBY3Rpb24yLnByb3RvdHlwZS5leGVjdXRlID0gZnVuY3Rpb24oc3RhdGUsIGRlbGF5KSB7CiAgICAgICAgaWYgKHRoaXMuY2xvc2VkKSB7CiAgICAgICAgICByZXR1cm4gbmV3IEVycm9yKCJleGVjdXRpbmcgYSBjYW5jZWxsZWQgYWN0aW9uIik7CiAgICAgICAgfQogICAgICAgIHRoaXMucGVuZGluZyA9IGZhbHNlOwogICAgICAgIHZhciBlcnJvciA9IHRoaXMuX2V4ZWN1dGUoc3RhdGUsIGRlbGF5KTsKICAgICAgICBpZiAoZXJyb3IpIHsKICAgICAgICAgIHJldHVybiBlcnJvcjsKICAgICAgICB9IGVsc2UgaWYgKHRoaXMucGVuZGluZyA9PT0gZmFsc2UgJiYgdGhpcy5pZCAhPSBudWxsKSB7CiAgICAgICAgICB0aGlzLmlkID0gdGhpcy5yZWN5Y2xlQXN5bmNJZCh0aGlzLnNjaGVkdWxlciwgdGhpcy5pZCwgbnVsbCk7CiAgICAgICAgfQogICAgICB9OwogICAgICBBc3luY0FjdGlvbjIucHJvdG90eXBlLl9leGVjdXRlID0gZnVuY3Rpb24oc3RhdGUsIF9kZWxheSkgewogICAgICAgIHZhciBlcnJvcmVkID0gZmFsc2U7CiAgICAgICAgdmFyIGVycm9yVmFsdWU7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIHRoaXMud29yayhzdGF0ZSk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgZXJyb3JlZCA9IHRydWU7CiAgICAgICAgICBlcnJvclZhbHVlID0gZSA/IGUgOiBuZXcgRXJyb3IoIlNjaGVkdWxlZCBhY3Rpb24gdGhyZXcgZmFsc3kgZXJyb3IiKTsKICAgICAgICB9CiAgICAgICAgaWYgKGVycm9yZWQpIHsKICAgICAgICAgIHRoaXMudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHJldHVybiBlcnJvclZhbHVlOwogICAgICAgIH0KICAgICAgfTsKICAgICAgQXN5bmNBY3Rpb24yLnByb3RvdHlwZS51bnN1YnNjcmliZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIGlmICghdGhpcy5jbG9zZWQpIHsKICAgICAgICAgIHZhciBfYSA9IHRoaXMsIGlkID0gX2EuaWQsIHNjaGVkdWxlciA9IF9hLnNjaGVkdWxlcjsKICAgICAgICAgIHZhciBhY3Rpb25zID0gc2NoZWR1bGVyLmFjdGlvbnM7CiAgICAgICAgICB0aGlzLndvcmsgPSB0aGlzLnN0YXRlID0gdGhpcy5zY2hlZHVsZXIgPSBudWxsOwogICAgICAgICAgdGhpcy5wZW5kaW5nID0gZmFsc2U7CiAgICAgICAgICBhcnJSZW1vdmVfMS5hcnJSZW1vdmUoYWN0aW9ucywgdGhpcyk7CiAgICAgICAgICBpZiAoaWQgIT0gbnVsbCkgewogICAgICAgICAgICB0aGlzLmlkID0gdGhpcy5yZWN5Y2xlQXN5bmNJZChzY2hlZHVsZXIsIGlkLCBudWxsKTsKICAgICAgICAgIH0KICAgICAgICAgIHRoaXMuZGVsYXkgPSBudWxsOwogICAgICAgICAgX3N1cGVyLnByb3RvdHlwZS51bnN1YnNjcmliZS5jYWxsKHRoaXMpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgcmV0dXJuIEFzeW5jQWN0aW9uMjsKICAgIH0oQWN0aW9uXzEuQWN0aW9uKTsKICAgIGV4cG9ydHMyLkFzeW5jQWN0aW9uID0gQXN5bmNBY3Rpb247CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9JbW1lZGlhdGUuanMKdmFyIHJlcXVpcmVfSW1tZWRpYXRlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9JbW1lZGlhdGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlRlc3RUb29scyA9IGV4cG9ydHMyLkltbWVkaWF0ZSA9IHZvaWQgMDsKICAgIHZhciBuZXh0SGFuZGxlID0gMTsKICAgIHZhciByZXNvbHZlZDsKICAgIHZhciBhY3RpdmVIYW5kbGVzID0ge307CiAgICBmdW5jdGlvbiBmaW5kQW5kQ2xlYXJIYW5kbGUoaGFuZGxlKSB7CiAgICAgIGlmIChoYW5kbGUgaW4gYWN0aXZlSGFuZGxlcykgewogICAgICAgIGRlbGV0ZSBhY3RpdmVIYW5kbGVzW2hhbmRsZV07CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0KICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQogICAgZXhwb3J0czIuSW1tZWRpYXRlID0gewogICAgICBzZXRJbW1lZGlhdGU6IGZ1bmN0aW9uKGNiKSB7CiAgICAgICAgdmFyIGhhbmRsZSA9IG5leHRIYW5kbGUrKzsKICAgICAgICBhY3RpdmVIYW5kbGVzW2hhbmRsZV0gPSB0cnVlOwogICAgICAgIGlmICghcmVzb2x2ZWQpIHsKICAgICAgICAgIHJlc29sdmVkID0gUHJvbWlzZS5yZXNvbHZlKCk7CiAgICAgICAgfQogICAgICAgIHJlc29sdmVkLnRoZW4oZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gZmluZEFuZENsZWFySGFuZGxlKGhhbmRsZSkgJiYgY2IoKTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gaGFuZGxlOwogICAgICB9LAogICAgICBjbGVhckltbWVkaWF0ZTogZnVuY3Rpb24oaGFuZGxlKSB7CiAgICAgICAgZmluZEFuZENsZWFySGFuZGxlKGhhbmRsZSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5UZXN0VG9vbHMgPSB7CiAgICAgIHBlbmRpbmc6IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBPYmplY3Qua2V5cyhhY3RpdmVIYW5kbGVzKS5sZW5ndGg7CiAgICAgIH0KICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2ltbWVkaWF0ZVByb3ZpZGVyLmpzCnZhciByZXF1aXJlX2ltbWVkaWF0ZVByb3ZpZGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2ltbWVkaWF0ZVByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pbW1lZGlhdGVQcm92aWRlciA9IHZvaWQgMDsKICAgIHZhciBJbW1lZGlhdGVfMSA9IHJlcXVpcmVfSW1tZWRpYXRlKCk7CiAgICB2YXIgc2V0SW1tZWRpYXRlID0gSW1tZWRpYXRlXzEuSW1tZWRpYXRlLnNldEltbWVkaWF0ZTsKICAgIHZhciBjbGVhckltbWVkaWF0ZSA9IEltbWVkaWF0ZV8xLkltbWVkaWF0ZS5jbGVhckltbWVkaWF0ZTsKICAgIGV4cG9ydHMyLmltbWVkaWF0ZVByb3ZpZGVyID0gewogICAgICBzZXRJbW1lZGlhdGU6IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBhcmdzID0gW107CiAgICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgICB9CiAgICAgICAgdmFyIGRlbGVnYXRlID0gZXhwb3J0czIuaW1tZWRpYXRlUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLnNldEltbWVkaWF0ZSkgfHwgc2V0SW1tZWRpYXRlKS5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW10sIF9fcmVhZChhcmdzKSkpOwogICAgICB9LAogICAgICBjbGVhckltbWVkaWF0ZTogZnVuY3Rpb24oaGFuZGxlKSB7CiAgICAgICAgdmFyIGRlbGVnYXRlID0gZXhwb3J0czIuaW1tZWRpYXRlUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLmNsZWFySW1tZWRpYXRlKSB8fCBjbGVhckltbWVkaWF0ZSkoaGFuZGxlKTsKICAgICAgfSwKICAgICAgZGVsZWdhdGU6IHZvaWQgMAogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXNhcEFjdGlvbi5qcwp2YXIgcmVxdWlyZV9Bc2FwQWN0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL0FzYXBBY3Rpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQXNhcEFjdGlvbiA9IHZvaWQgMDsKICAgIHZhciBBc3luY0FjdGlvbl8xID0gcmVxdWlyZV9Bc3luY0FjdGlvbigpOwogICAgdmFyIGltbWVkaWF0ZVByb3ZpZGVyXzEgPSByZXF1aXJlX2ltbWVkaWF0ZVByb3ZpZGVyKCk7CiAgICB2YXIgQXNhcEFjdGlvbiA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoQXNhcEFjdGlvbjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIEFzYXBBY3Rpb24yKHNjaGVkdWxlciwgd29yaykgewogICAgICAgIHZhciBfdGhpcyA9IF9zdXBlci5jYWxsKHRoaXMsIHNjaGVkdWxlciwgd29yaykgfHwgdGhpczsKICAgICAgICBfdGhpcy5zY2hlZHVsZXIgPSBzY2hlZHVsZXI7CiAgICAgICAgX3RoaXMud29yayA9IHdvcms7CiAgICAgICAgcmV0dXJuIF90aGlzOwogICAgICB9CiAgICAgIEFzYXBBY3Rpb24yLnByb3RvdHlwZS5yZXF1ZXN0QXN5bmNJZCA9IGZ1bmN0aW9uKHNjaGVkdWxlciwgaWQsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKGRlbGF5ICE9PSBudWxsICYmIGRlbGF5ID4gMCkgewogICAgICAgICAgcmV0dXJuIF9zdXBlci5wcm90b3R5cGUucmVxdWVzdEFzeW5jSWQuY2FsbCh0aGlzLCBzY2hlZHVsZXIsIGlkLCBkZWxheSk7CiAgICAgICAgfQogICAgICAgIHNjaGVkdWxlci5hY3Rpb25zLnB1c2godGhpcyk7CiAgICAgICAgcmV0dXJuIHNjaGVkdWxlci5fc2NoZWR1bGVkIHx8IChzY2hlZHVsZXIuX3NjaGVkdWxlZCA9IGltbWVkaWF0ZVByb3ZpZGVyXzEuaW1tZWRpYXRlUHJvdmlkZXIuc2V0SW1tZWRpYXRlKHNjaGVkdWxlci5mbHVzaC5iaW5kKHNjaGVkdWxlciwgdm9pZCAwKSkpOwogICAgICB9OwogICAgICBBc2FwQWN0aW9uMi5wcm90b3R5cGUucmVjeWNsZUFzeW5jSWQgPSBmdW5jdGlvbihzY2hlZHVsZXIsIGlkLCBkZWxheSkgewogICAgICAgIHZhciBfYTsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAoZGVsYXkgIT0gbnVsbCA/IGRlbGF5ID4gMCA6IHRoaXMuZGVsYXkgPiAwKSB7CiAgICAgICAgICByZXR1cm4gX3N1cGVyLnByb3RvdHlwZS5yZWN5Y2xlQXN5bmNJZC5jYWxsKHRoaXMsIHNjaGVkdWxlciwgaWQsIGRlbGF5KTsKICAgICAgICB9CiAgICAgICAgdmFyIGFjdGlvbnMgPSBzY2hlZHVsZXIuYWN0aW9uczsKICAgICAgICBpZiAoaWQgIT0gbnVsbCAmJiAoKF9hID0gYWN0aW9uc1thY3Rpb25zLmxlbmd0aCAtIDFdKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuaWQpICE9PSBpZCkgewogICAgICAgICAgaW1tZWRpYXRlUHJvdmlkZXJfMS5pbW1lZGlhdGVQcm92aWRlci5jbGVhckltbWVkaWF0ZShpZCk7CiAgICAgICAgICBpZiAoc2NoZWR1bGVyLl9zY2hlZHVsZWQgPT09IGlkKSB7CiAgICAgICAgICAgIHNjaGVkdWxlci5fc2NoZWR1bGVkID0gdm9pZCAwOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICB9OwogICAgICByZXR1cm4gQXNhcEFjdGlvbjI7CiAgICB9KEFzeW5jQWN0aW9uXzEuQXN5bmNBY3Rpb24pOwogICAgZXhwb3J0czIuQXNhcEFjdGlvbiA9IEFzYXBBY3Rpb247CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvU2NoZWR1bGVyLmpzCnZhciByZXF1aXJlX1NjaGVkdWxlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1NjaGVkdWxlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuU2NoZWR1bGVyID0gdm9pZCAwOwogICAgdmFyIGRhdGVUaW1lc3RhbXBQcm92aWRlcl8xID0gcmVxdWlyZV9kYXRlVGltZXN0YW1wUHJvdmlkZXIoKTsKICAgIHZhciBTY2hlZHVsZXIgPSBmdW5jdGlvbigpIHsKICAgICAgZnVuY3Rpb24gU2NoZWR1bGVyMihzY2hlZHVsZXJBY3Rpb25DdG9yLCBub3cpIHsKICAgICAgICBpZiAobm93ID09PSB2b2lkIDApIHsKICAgICAgICAgIG5vdyA9IFNjaGVkdWxlcjIubm93OwogICAgICAgIH0KICAgICAgICB0aGlzLnNjaGVkdWxlckFjdGlvbkN0b3IgPSBzY2hlZHVsZXJBY3Rpb25DdG9yOwogICAgICAgIHRoaXMubm93ID0gbm93OwogICAgICB9CiAgICAgIFNjaGVkdWxlcjIucHJvdG90eXBlLnNjaGVkdWxlID0gZnVuY3Rpb24od29yaywgZGVsYXksIHN0YXRlKSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5ldyB0aGlzLnNjaGVkdWxlckFjdGlvbkN0b3IodGhpcywgd29yaykuc2NoZWR1bGUoc3RhdGUsIGRlbGF5KTsKICAgICAgfTsKICAgICAgU2NoZWR1bGVyMi5ub3cgPSBkYXRlVGltZXN0YW1wUHJvdmlkZXJfMS5kYXRlVGltZXN0YW1wUHJvdmlkZXIubm93OwogICAgICByZXR1cm4gU2NoZWR1bGVyMjsKICAgIH0oKTsKICAgIGV4cG9ydHMyLlNjaGVkdWxlciA9IFNjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXN5bmNTY2hlZHVsZXIuanMKdmFyIHJlcXVpcmVfQXN5bmNTY2hlZHVsZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXN5bmNTY2hlZHVsZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQXN5bmNTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgU2NoZWR1bGVyXzEgPSByZXF1aXJlX1NjaGVkdWxlcigpOwogICAgdmFyIEFzeW5jU2NoZWR1bGVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBc3luY1NjaGVkdWxlcjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIEFzeW5jU2NoZWR1bGVyMihTY2hlZHVsZXJBY3Rpb24sIG5vdykgewogICAgICAgIGlmIChub3cgPT09IHZvaWQgMCkgewogICAgICAgICAgbm93ID0gU2NoZWR1bGVyXzEuU2NoZWR1bGVyLm5vdzsKICAgICAgICB9CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgU2NoZWR1bGVyQWN0aW9uLCBub3cpIHx8IHRoaXM7CiAgICAgICAgX3RoaXMuYWN0aW9ucyA9IFtdOwogICAgICAgIF90aGlzLl9hY3RpdmUgPSBmYWxzZTsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQXN5bmNTY2hlZHVsZXIyLnByb3RvdHlwZS5mbHVzaCA9IGZ1bmN0aW9uKGFjdGlvbikgewogICAgICAgIHZhciBhY3Rpb25zID0gdGhpcy5hY3Rpb25zOwogICAgICAgIGlmICh0aGlzLl9hY3RpdmUpIHsKICAgICAgICAgIGFjdGlvbnMucHVzaChhY3Rpb24pOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB2YXIgZXJyb3I7CiAgICAgICAgdGhpcy5fYWN0aXZlID0gdHJ1ZTsKICAgICAgICBkbyB7CiAgICAgICAgICBpZiAoZXJyb3IgPSBhY3Rpb24uZXhlY3V0ZShhY3Rpb24uc3RhdGUsIGFjdGlvbi5kZWxheSkpIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfSB3aGlsZSAoYWN0aW9uID0gYWN0aW9ucy5zaGlmdCgpKTsKICAgICAgICB0aGlzLl9hY3RpdmUgPSBmYWxzZTsKICAgICAgICBpZiAoZXJyb3IpIHsKICAgICAgICAgIHdoaWxlIChhY3Rpb24gPSBhY3Rpb25zLnNoaWZ0KCkpIHsKICAgICAgICAgICAgYWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlcnJvcjsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBBc3luY1NjaGVkdWxlcjI7CiAgICB9KFNjaGVkdWxlcl8xLlNjaGVkdWxlcik7CiAgICBleHBvcnRzMi5Bc3luY1NjaGVkdWxlciA9IEFzeW5jU2NoZWR1bGVyOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9Bc2FwU2NoZWR1bGVyLmpzCnZhciByZXF1aXJlX0FzYXBTY2hlZHVsZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXNhcFNjaGVkdWxlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Bc2FwU2NoZWR1bGVyID0gdm9pZCAwOwogICAgdmFyIEFzeW5jU2NoZWR1bGVyXzEgPSByZXF1aXJlX0FzeW5jU2NoZWR1bGVyKCk7CiAgICB2YXIgQXNhcFNjaGVkdWxlciA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoQXNhcFNjaGVkdWxlcjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIEFzYXBTY2hlZHVsZXIyKCkgewogICAgICAgIHJldHVybiBfc3VwZXIgIT09IG51bGwgJiYgX3N1cGVyLmFwcGx5KHRoaXMsIGFyZ3VtZW50cykgfHwgdGhpczsKICAgICAgfQogICAgICBBc2FwU2NoZWR1bGVyMi5wcm90b3R5cGUuZmx1c2ggPSBmdW5jdGlvbihhY3Rpb24pIHsKICAgICAgICB0aGlzLl9hY3RpdmUgPSB0cnVlOwogICAgICAgIHZhciBmbHVzaElkID0gdGhpcy5fc2NoZWR1bGVkOwogICAgICAgIHRoaXMuX3NjaGVkdWxlZCA9IHZvaWQgMDsKICAgICAgICB2YXIgYWN0aW9ucyA9IHRoaXMuYWN0aW9uczsKICAgICAgICB2YXIgZXJyb3I7CiAgICAgICAgYWN0aW9uID0gYWN0aW9uIHx8IGFjdGlvbnMuc2hpZnQoKTsKICAgICAgICBkbyB7CiAgICAgICAgICBpZiAoZXJyb3IgPSBhY3Rpb24uZXhlY3V0ZShhY3Rpb24uc3RhdGUsIGFjdGlvbi5kZWxheSkpIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfSB3aGlsZSAoKGFjdGlvbiA9IGFjdGlvbnNbMF0pICYmIGFjdGlvbi5pZCA9PT0gZmx1c2hJZCAmJiBhY3Rpb25zLnNoaWZ0KCkpOwogICAgICAgIHRoaXMuX2FjdGl2ZSA9IGZhbHNlOwogICAgICAgIGlmIChlcnJvcikgewogICAgICAgICAgd2hpbGUgKChhY3Rpb24gPSBhY3Rpb25zWzBdKSAmJiBhY3Rpb24uaWQgPT09IGZsdXNoSWQgJiYgYWN0aW9ucy5zaGlmdCgpKSB7CiAgICAgICAgICAgIGFjdGlvbi51bnN1YnNjcmliZSgpOwogICAgICAgICAgfQogICAgICAgICAgdGhyb3cgZXJyb3I7CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gQXNhcFNjaGVkdWxlcjI7CiAgICB9KEFzeW5jU2NoZWR1bGVyXzEuQXN5bmNTY2hlZHVsZXIpOwogICAgZXhwb3J0czIuQXNhcFNjaGVkdWxlciA9IEFzYXBTY2hlZHVsZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2FzYXAuanMKdmFyIHJlcXVpcmVfYXNhcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9hc2FwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hc2FwID0gZXhwb3J0czIuYXNhcFNjaGVkdWxlciA9IHZvaWQgMDsKICAgIHZhciBBc2FwQWN0aW9uXzEgPSByZXF1aXJlX0FzYXBBY3Rpb24oKTsKICAgIHZhciBBc2FwU2NoZWR1bGVyXzEgPSByZXF1aXJlX0FzYXBTY2hlZHVsZXIoKTsKICAgIGV4cG9ydHMyLmFzYXBTY2hlZHVsZXIgPSBuZXcgQXNhcFNjaGVkdWxlcl8xLkFzYXBTY2hlZHVsZXIoQXNhcEFjdGlvbl8xLkFzYXBBY3Rpb24pOwogICAgZXhwb3J0czIuYXNhcCA9IGV4cG9ydHMyLmFzYXBTY2hlZHVsZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2FzeW5jLmpzCnZhciByZXF1aXJlX2FzeW5jID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2FzeW5jLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hc3luYyA9IGV4cG9ydHMyLmFzeW5jU2NoZWR1bGVyID0gdm9pZCAwOwogICAgdmFyIEFzeW5jQWN0aW9uXzEgPSByZXF1aXJlX0FzeW5jQWN0aW9uKCk7CiAgICB2YXIgQXN5bmNTY2hlZHVsZXJfMSA9IHJlcXVpcmVfQXN5bmNTY2hlZHVsZXIoKTsKICAgIGV4cG9ydHMyLmFzeW5jU2NoZWR1bGVyID0gbmV3IEFzeW5jU2NoZWR1bGVyXzEuQXN5bmNTY2hlZHVsZXIoQXN5bmNBY3Rpb25fMS5Bc3luY0FjdGlvbik7CiAgICBleHBvcnRzMi5hc3luYyA9IGV4cG9ydHMyLmFzeW5jU2NoZWR1bGVyOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9RdWV1ZUFjdGlvbi5qcwp2YXIgcmVxdWlyZV9RdWV1ZUFjdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9RdWV1ZUFjdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5RdWV1ZUFjdGlvbiA9IHZvaWQgMDsKICAgIHZhciBBc3luY0FjdGlvbl8xID0gcmVxdWlyZV9Bc3luY0FjdGlvbigpOwogICAgdmFyIFF1ZXVlQWN0aW9uID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhRdWV1ZUFjdGlvbjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIFF1ZXVlQWN0aW9uMihzY2hlZHVsZXIsIHdvcmspIHsKICAgICAgICB2YXIgX3RoaXMgPSBfc3VwZXIuY2FsbCh0aGlzLCBzY2hlZHVsZXIsIHdvcmspIHx8IHRoaXM7CiAgICAgICAgX3RoaXMuc2NoZWR1bGVyID0gc2NoZWR1bGVyOwogICAgICAgIF90aGlzLndvcmsgPSB3b3JrOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBRdWV1ZUFjdGlvbjIucHJvdG90eXBlLnNjaGVkdWxlID0gZnVuY3Rpb24oc3RhdGUsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKGRlbGF5ID4gMCkgewogICAgICAgICAgcmV0dXJuIF9zdXBlci5wcm90b3R5cGUuc2NoZWR1bGUuY2FsbCh0aGlzLCBzdGF0ZSwgZGVsYXkpOwogICAgICAgIH0KICAgICAgICB0aGlzLmRlbGF5ID0gZGVsYXk7CiAgICAgICAgdGhpcy5zdGF0ZSA9IHN0YXRlOwogICAgICAgIHRoaXMuc2NoZWR1bGVyLmZsdXNoKHRoaXMpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9OwogICAgICBRdWV1ZUFjdGlvbjIucHJvdG90eXBlLmV4ZWN1dGUgPSBmdW5jdGlvbihzdGF0ZSwgZGVsYXkpIHsKICAgICAgICByZXR1cm4gZGVsYXkgPiAwIHx8IHRoaXMuY2xvc2VkID8gX3N1cGVyLnByb3RvdHlwZS5leGVjdXRlLmNhbGwodGhpcywgc3RhdGUsIGRlbGF5KSA6IHRoaXMuX2V4ZWN1dGUoc3RhdGUsIGRlbGF5KTsKICAgICAgfTsKICAgICAgUXVldWVBY3Rpb24yLnByb3RvdHlwZS5yZXF1ZXN0QXN5bmNJZCA9IGZ1bmN0aW9uKHNjaGVkdWxlciwgaWQsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKGRlbGF5ICE9IG51bGwgJiYgZGVsYXkgPiAwIHx8IGRlbGF5ID09IG51bGwgJiYgdGhpcy5kZWxheSA+IDApIHsKICAgICAgICAgIHJldHVybiBfc3VwZXIucHJvdG90eXBlLnJlcXVlc3RBc3luY0lkLmNhbGwodGhpcywgc2NoZWR1bGVyLCBpZCwgZGVsYXkpOwogICAgICAgIH0KICAgICAgICBzY2hlZHVsZXIuZmx1c2godGhpcyk7CiAgICAgICAgcmV0dXJuIDA7CiAgICAgIH07CiAgICAgIHJldHVybiBRdWV1ZUFjdGlvbjI7CiAgICB9KEFzeW5jQWN0aW9uXzEuQXN5bmNBY3Rpb24pOwogICAgZXhwb3J0czIuUXVldWVBY3Rpb24gPSBRdWV1ZUFjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvUXVldWVTY2hlZHVsZXIuanMKdmFyIHJlcXVpcmVfUXVldWVTY2hlZHVsZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvUXVldWVTY2hlZHVsZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuUXVldWVTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgQXN5bmNTY2hlZHVsZXJfMSA9IHJlcXVpcmVfQXN5bmNTY2hlZHVsZXIoKTsKICAgIHZhciBRdWV1ZVNjaGVkdWxlciA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoUXVldWVTY2hlZHVsZXIyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBRdWV1ZVNjaGVkdWxlcjIoKSB7CiAgICAgICAgcmV0dXJuIF9zdXBlciAhPT0gbnVsbCAmJiBfc3VwZXIuYXBwbHkodGhpcywgYXJndW1lbnRzKSB8fCB0aGlzOwogICAgICB9CiAgICAgIHJldHVybiBRdWV1ZVNjaGVkdWxlcjI7CiAgICB9KEFzeW5jU2NoZWR1bGVyXzEuQXN5bmNTY2hlZHVsZXIpOwogICAgZXhwb3J0czIuUXVldWVTY2hlZHVsZXIgPSBRdWV1ZVNjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvcXVldWUuanMKdmFyIHJlcXVpcmVfcXVldWUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvcXVldWUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnF1ZXVlID0gZXhwb3J0czIucXVldWVTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgUXVldWVBY3Rpb25fMSA9IHJlcXVpcmVfUXVldWVBY3Rpb24oKTsKICAgIHZhciBRdWV1ZVNjaGVkdWxlcl8xID0gcmVxdWlyZV9RdWV1ZVNjaGVkdWxlcigpOwogICAgZXhwb3J0czIucXVldWVTY2hlZHVsZXIgPSBuZXcgUXVldWVTY2hlZHVsZXJfMS5RdWV1ZVNjaGVkdWxlcihRdWV1ZUFjdGlvbl8xLlF1ZXVlQWN0aW9uKTsKICAgIGV4cG9ydHMyLnF1ZXVlID0gZXhwb3J0czIucXVldWVTY2hlZHVsZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL0FuaW1hdGlvbkZyYW1lQWN0aW9uLmpzCnZhciByZXF1aXJlX0FuaW1hdGlvbkZyYW1lQWN0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL0FuaW1hdGlvbkZyYW1lQWN0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkFuaW1hdGlvbkZyYW1lQWN0aW9uID0gdm9pZCAwOwogICAgdmFyIEFzeW5jQWN0aW9uXzEgPSByZXF1aXJlX0FzeW5jQWN0aW9uKCk7CiAgICB2YXIgYW5pbWF0aW9uRnJhbWVQcm92aWRlcl8xID0gcmVxdWlyZV9hbmltYXRpb25GcmFtZVByb3ZpZGVyKCk7CiAgICB2YXIgQW5pbWF0aW9uRnJhbWVBY3Rpb24gPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKEFuaW1hdGlvbkZyYW1lQWN0aW9uMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gQW5pbWF0aW9uRnJhbWVBY3Rpb24yKHNjaGVkdWxlciwgd29yaykgewogICAgICAgIHZhciBfdGhpcyA9IF9zdXBlci5jYWxsKHRoaXMsIHNjaGVkdWxlciwgd29yaykgfHwgdGhpczsKICAgICAgICBfdGhpcy5zY2hlZHVsZXIgPSBzY2hlZHVsZXI7CiAgICAgICAgX3RoaXMud29yayA9IHdvcms7CiAgICAgICAgcmV0dXJuIF90aGlzOwogICAgICB9CiAgICAgIEFuaW1hdGlvbkZyYW1lQWN0aW9uMi5wcm90b3R5cGUucmVxdWVzdEFzeW5jSWQgPSBmdW5jdGlvbihzY2hlZHVsZXIsIGlkLCBkZWxheSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIGlmIChkZWxheSAhPT0gbnVsbCAmJiBkZWxheSA+IDApIHsKICAgICAgICAgIHJldHVybiBfc3VwZXIucHJvdG90eXBlLnJlcXVlc3RBc3luY0lkLmNhbGwodGhpcywgc2NoZWR1bGVyLCBpZCwgZGVsYXkpOwogICAgICAgIH0KICAgICAgICBzY2hlZHVsZXIuYWN0aW9ucy5wdXNoKHRoaXMpOwogICAgICAgIHJldHVybiBzY2hlZHVsZXIuX3NjaGVkdWxlZCB8fCAoc2NoZWR1bGVyLl9zY2hlZHVsZWQgPSBhbmltYXRpb25GcmFtZVByb3ZpZGVyXzEuYW5pbWF0aW9uRnJhbWVQcm92aWRlci5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gc2NoZWR1bGVyLmZsdXNoKHZvaWQgMCk7CiAgICAgICAgfSkpOwogICAgICB9OwogICAgICBBbmltYXRpb25GcmFtZUFjdGlvbjIucHJvdG90eXBlLnJlY3ljbGVBc3luY0lkID0gZnVuY3Rpb24oc2NoZWR1bGVyLCBpZCwgZGVsYXkpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKGRlbGF5ICE9IG51bGwgPyBkZWxheSA+IDAgOiB0aGlzLmRlbGF5ID4gMCkgewogICAgICAgICAgcmV0dXJuIF9zdXBlci5wcm90b3R5cGUucmVjeWNsZUFzeW5jSWQuY2FsbCh0aGlzLCBzY2hlZHVsZXIsIGlkLCBkZWxheSk7CiAgICAgICAgfQogICAgICAgIHZhciBhY3Rpb25zID0gc2NoZWR1bGVyLmFjdGlvbnM7CiAgICAgICAgaWYgKGlkICE9IG51bGwgJiYgKChfYSA9IGFjdGlvbnNbYWN0aW9ucy5sZW5ndGggLSAxXSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmlkKSAhPT0gaWQpIHsKICAgICAgICAgIGFuaW1hdGlvbkZyYW1lUHJvdmlkZXJfMS5hbmltYXRpb25GcmFtZVByb3ZpZGVyLmNhbmNlbEFuaW1hdGlvbkZyYW1lKGlkKTsKICAgICAgICAgIHNjaGVkdWxlci5fc2NoZWR1bGVkID0gdm9pZCAwOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICB9OwogICAgICByZXR1cm4gQW5pbWF0aW9uRnJhbWVBY3Rpb24yOwogICAgfShBc3luY0FjdGlvbl8xLkFzeW5jQWN0aW9uKTsKICAgIGV4cG9ydHMyLkFuaW1hdGlvbkZyYW1lQWN0aW9uID0gQW5pbWF0aW9uRnJhbWVBY3Rpb247CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL0FuaW1hdGlvbkZyYW1lU2NoZWR1bGVyLmpzCnZhciByZXF1aXJlX0FuaW1hdGlvbkZyYW1lU2NoZWR1bGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL0FuaW1hdGlvbkZyYW1lU2NoZWR1bGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyID0gdm9pZCAwOwogICAgdmFyIEFzeW5jU2NoZWR1bGVyXzEgPSByZXF1aXJlX0FzeW5jU2NoZWR1bGVyKCk7CiAgICB2YXIgQW5pbWF0aW9uRnJhbWVTY2hlZHVsZXIgPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKEFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gQW5pbWF0aW9uRnJhbWVTY2hlZHVsZXIyKCkgewogICAgICAgIHJldHVybiBfc3VwZXIgIT09IG51bGwgJiYgX3N1cGVyLmFwcGx5KHRoaXMsIGFyZ3VtZW50cykgfHwgdGhpczsKICAgICAgfQogICAgICBBbmltYXRpb25GcmFtZVNjaGVkdWxlcjIucHJvdG90eXBlLmZsdXNoID0gZnVuY3Rpb24oYWN0aW9uKSB7CiAgICAgICAgdGhpcy5fYWN0aXZlID0gdHJ1ZTsKICAgICAgICB2YXIgZmx1c2hJZCA9IHRoaXMuX3NjaGVkdWxlZDsKICAgICAgICB0aGlzLl9zY2hlZHVsZWQgPSB2b2lkIDA7CiAgICAgICAgdmFyIGFjdGlvbnMgPSB0aGlzLmFjdGlvbnM7CiAgICAgICAgdmFyIGVycm9yOwogICAgICAgIGFjdGlvbiA9IGFjdGlvbiB8fCBhY3Rpb25zLnNoaWZ0KCk7CiAgICAgICAgZG8gewogICAgICAgICAgaWYgKGVycm9yID0gYWN0aW9uLmV4ZWN1dGUoYWN0aW9uLnN0YXRlLCBhY3Rpb24uZGVsYXkpKSB7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgIH0gd2hpbGUgKChhY3Rpb24gPSBhY3Rpb25zWzBdKSAmJiBhY3Rpb24uaWQgPT09IGZsdXNoSWQgJiYgYWN0aW9ucy5zaGlmdCgpKTsKICAgICAgICB0aGlzLl9hY3RpdmUgPSBmYWxzZTsKICAgICAgICBpZiAoZXJyb3IpIHsKICAgICAgICAgIHdoaWxlICgoYWN0aW9uID0gYWN0aW9uc1swXSkgJiYgYWN0aW9uLmlkID09PSBmbHVzaElkICYmIGFjdGlvbnMuc2hpZnQoKSkgewogICAgICAgICAgICBhY3Rpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH0KICAgICAgICAgIHRocm93IGVycm9yOwogICAgICAgIH0KICAgICAgfTsKICAgICAgcmV0dXJuIEFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyMjsKICAgIH0oQXN5bmNTY2hlZHVsZXJfMS5Bc3luY1NjaGVkdWxlcik7CiAgICBleHBvcnRzMi5BbmltYXRpb25GcmFtZVNjaGVkdWxlciA9IEFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9hbmltYXRpb25GcmFtZS5qcwp2YXIgcmVxdWlyZV9hbmltYXRpb25GcmFtZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9hbmltYXRpb25GcmFtZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYW5pbWF0aW9uRnJhbWUgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVNjaGVkdWxlciA9IHZvaWQgMDsKICAgIHZhciBBbmltYXRpb25GcmFtZUFjdGlvbl8xID0gcmVxdWlyZV9BbmltYXRpb25GcmFtZUFjdGlvbigpOwogICAgdmFyIEFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyXzEgPSByZXF1aXJlX0FuaW1hdGlvbkZyYW1lU2NoZWR1bGVyKCk7CiAgICBleHBvcnRzMi5hbmltYXRpb25GcmFtZVNjaGVkdWxlciA9IG5ldyBBbmltYXRpb25GcmFtZVNjaGVkdWxlcl8xLkFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyKEFuaW1hdGlvbkZyYW1lQWN0aW9uXzEuQW5pbWF0aW9uRnJhbWVBY3Rpb24pOwogICAgZXhwb3J0czIuYW5pbWF0aW9uRnJhbWUgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVNjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvVmlydHVhbFRpbWVTY2hlZHVsZXIuanMKdmFyIHJlcXVpcmVfVmlydHVhbFRpbWVTY2hlZHVsZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvVmlydHVhbFRpbWVTY2hlZHVsZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVmlydHVhbEFjdGlvbiA9IGV4cG9ydHMyLlZpcnR1YWxUaW1lU2NoZWR1bGVyID0gdm9pZCAwOwogICAgdmFyIEFzeW5jQWN0aW9uXzEgPSByZXF1aXJlX0FzeW5jQWN0aW9uKCk7CiAgICB2YXIgU3Vic2NyaXB0aW9uXzEgPSByZXF1aXJlX1N1YnNjcmlwdGlvbigpOwogICAgdmFyIEFzeW5jU2NoZWR1bGVyXzEgPSByZXF1aXJlX0FzeW5jU2NoZWR1bGVyKCk7CiAgICB2YXIgVmlydHVhbFRpbWVTY2hlZHVsZXIgPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKFZpcnR1YWxUaW1lU2NoZWR1bGVyMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gVmlydHVhbFRpbWVTY2hlZHVsZXIyKHNjaGVkdWxlckFjdGlvbkN0b3IsIG1heEZyYW1lcykgewogICAgICAgIGlmIChzY2hlZHVsZXJBY3Rpb25DdG9yID09PSB2b2lkIDApIHsKICAgICAgICAgIHNjaGVkdWxlckFjdGlvbkN0b3IgPSBWaXJ0dWFsQWN0aW9uOwogICAgICAgIH0KICAgICAgICBpZiAobWF4RnJhbWVzID09PSB2b2lkIDApIHsKICAgICAgICAgIG1heEZyYW1lcyA9IEluZmluaXR5OwogICAgICAgIH0KICAgICAgICB2YXIgX3RoaXMgPSBfc3VwZXIuY2FsbCh0aGlzLCBzY2hlZHVsZXJBY3Rpb25DdG9yLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBfdGhpcy5mcmFtZTsKICAgICAgICB9KSB8fCB0aGlzOwogICAgICAgIF90aGlzLm1heEZyYW1lcyA9IG1heEZyYW1lczsKICAgICAgICBfdGhpcy5mcmFtZSA9IDA7CiAgICAgICAgX3RoaXMuaW5kZXggPSAtMTsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgVmlydHVhbFRpbWVTY2hlZHVsZXIyLnByb3RvdHlwZS5mbHVzaCA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBfYSA9IHRoaXMsIGFjdGlvbnMgPSBfYS5hY3Rpb25zLCBtYXhGcmFtZXMgPSBfYS5tYXhGcmFtZXM7CiAgICAgICAgdmFyIGVycm9yOwogICAgICAgIHZhciBhY3Rpb247CiAgICAgICAgd2hpbGUgKChhY3Rpb24gPSBhY3Rpb25zWzBdKSAmJiBhY3Rpb24uZGVsYXkgPD0gbWF4RnJhbWVzKSB7CiAgICAgICAgICBhY3Rpb25zLnNoaWZ0KCk7CiAgICAgICAgICB0aGlzLmZyYW1lID0gYWN0aW9uLmRlbGF5OwogICAgICAgICAgaWYgKGVycm9yID0gYWN0aW9uLmV4ZWN1dGUoYWN0aW9uLnN0YXRlLCBhY3Rpb24uZGVsYXkpKSB7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoZXJyb3IpIHsKICAgICAgICAgIHdoaWxlIChhY3Rpb24gPSBhY3Rpb25zLnNoaWZ0KCkpIHsKICAgICAgICAgICAgYWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlcnJvcjsKICAgICAgICB9CiAgICAgIH07CiAgICAgIFZpcnR1YWxUaW1lU2NoZWR1bGVyMi5mcmFtZVRpbWVGYWN0b3IgPSAxMDsKICAgICAgcmV0dXJuIFZpcnR1YWxUaW1lU2NoZWR1bGVyMjsKICAgIH0oQXN5bmNTY2hlZHVsZXJfMS5Bc3luY1NjaGVkdWxlcik7CiAgICBleHBvcnRzMi5WaXJ0dWFsVGltZVNjaGVkdWxlciA9IFZpcnR1YWxUaW1lU2NoZWR1bGVyOwogICAgdmFyIFZpcnR1YWxBY3Rpb24gPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKFZpcnR1YWxBY3Rpb24yLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBWaXJ0dWFsQWN0aW9uMihzY2hlZHVsZXIsIHdvcmssIGluZGV4KSB7CiAgICAgICAgaWYgKGluZGV4ID09PSB2b2lkIDApIHsKICAgICAgICAgIGluZGV4ID0gc2NoZWR1bGVyLmluZGV4ICs9IDE7CiAgICAgICAgfQogICAgICAgIHZhciBfdGhpcyA9IF9zdXBlci5jYWxsKHRoaXMsIHNjaGVkdWxlciwgd29yaykgfHwgdGhpczsKICAgICAgICBfdGhpcy5zY2hlZHVsZXIgPSBzY2hlZHVsZXI7CiAgICAgICAgX3RoaXMud29yayA9IHdvcms7CiAgICAgICAgX3RoaXMuaW5kZXggPSBpbmRleDsKICAgICAgICBfdGhpcy5hY3RpdmUgPSB0cnVlOwogICAgICAgIF90aGlzLmluZGV4ID0gc2NoZWR1bGVyLmluZGV4ID0gaW5kZXg7CiAgICAgICAgcmV0dXJuIF90aGlzOwogICAgICB9CiAgICAgIFZpcnR1YWxBY3Rpb24yLnByb3RvdHlwZS5zY2hlZHVsZSA9IGZ1bmN0aW9uKHN0YXRlLCBkZWxheSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIGlmIChOdW1iZXIuaXNGaW5pdGUoZGVsYXkpKSB7CiAgICAgICAgICBpZiAoIXRoaXMuaWQpIHsKICAgICAgICAgICAgcmV0dXJuIF9zdXBlci5wcm90b3R5cGUuc2NoZWR1bGUuY2FsbCh0aGlzLCBzdGF0ZSwgZGVsYXkpOwogICAgICAgICAgfQogICAgICAgICAgdGhpcy5hY3RpdmUgPSBmYWxzZTsKICAgICAgICAgIHZhciBhY3Rpb24gPSBuZXcgVmlydHVhbEFjdGlvbjIodGhpcy5zY2hlZHVsZXIsIHRoaXMud29yayk7CiAgICAgICAgICB0aGlzLmFkZChhY3Rpb24pOwogICAgICAgICAgcmV0dXJuIGFjdGlvbi5zY2hlZHVsZShzdGF0ZSwgZGVsYXkpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gU3Vic2NyaXB0aW9uXzEuU3Vic2NyaXB0aW9uLkVNUFRZOwogICAgICAgIH0KICAgICAgfTsKICAgICAgVmlydHVhbEFjdGlvbjIucHJvdG90eXBlLnJlcXVlc3RBc3luY0lkID0gZnVuY3Rpb24oc2NoZWR1bGVyLCBpZCwgZGVsYXkpIHsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICB0aGlzLmRlbGF5ID0gc2NoZWR1bGVyLmZyYW1lICsgZGVsYXk7CiAgICAgICAgdmFyIGFjdGlvbnMgPSBzY2hlZHVsZXIuYWN0aW9uczsKICAgICAgICBhY3Rpb25zLnB1c2godGhpcyk7CiAgICAgICAgYWN0aW9ucy5zb3J0KFZpcnR1YWxBY3Rpb24yLnNvcnRBY3Rpb25zKTsKICAgICAgICByZXR1cm4gMTsKICAgICAgfTsKICAgICAgVmlydHVhbEFjdGlvbjIucHJvdG90eXBlLnJlY3ljbGVBc3luY0lkID0gZnVuY3Rpb24oc2NoZWR1bGVyLCBpZCwgZGVsYXkpIHsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICB9OwogICAgICBWaXJ0dWFsQWN0aW9uMi5wcm90b3R5cGUuX2V4ZWN1dGUgPSBmdW5jdGlvbihzdGF0ZSwgZGVsYXkpIHsKICAgICAgICBpZiAodGhpcy5hY3RpdmUgPT09IHRydWUpIHsKICAgICAgICAgIHJldHVybiBfc3VwZXIucHJvdG90eXBlLl9leGVjdXRlLmNhbGwodGhpcywgc3RhdGUsIGRlbGF5KTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIFZpcnR1YWxBY3Rpb24yLnNvcnRBY3Rpb25zID0gZnVuY3Rpb24oYSwgYikgewogICAgICAgIGlmIChhLmRlbGF5ID09PSBiLmRlbGF5KSB7CiAgICAgICAgICBpZiAoYS5pbmRleCA9PT0gYi5pbmRleCkgewogICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgIH0gZWxzZSBpZiAoYS5pbmRleCA+IGIuaW5kZXgpIHsKICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIGlmIChhLmRlbGF5ID4gYi5kZWxheSkgewogICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBWaXJ0dWFsQWN0aW9uMjsKICAgIH0oQXN5bmNBY3Rpb25fMS5Bc3luY0FjdGlvbik7CiAgICBleHBvcnRzMi5WaXJ0dWFsQWN0aW9uID0gVmlydHVhbEFjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2VtcHR5LmpzCnZhciByZXF1aXJlX2VtcHR5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9lbXB0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZW1wdHkgPSBleHBvcnRzMi5FTVBUWSA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIGV4cG9ydHMyLkVNUFRZID0gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgcmV0dXJuIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgIH0pOwogICAgZnVuY3Rpb24gZW1wdHkoc2NoZWR1bGVyKSB7CiAgICAgIHJldHVybiBzY2hlZHVsZXIgPyBlbXB0eVNjaGVkdWxlZChzY2hlZHVsZXIpIDogZXhwb3J0czIuRU1QVFk7CiAgICB9CiAgICBleHBvcnRzMi5lbXB0eSA9IGVtcHR5OwogICAgZnVuY3Rpb24gZW1wdHlTY2hlZHVsZWQoc2NoZWR1bGVyKSB7CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHJldHVybiBzY2hlZHVsZXIuc2NoZWR1bGUoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9KTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzU2NoZWR1bGVyLmpzCnZhciByZXF1aXJlX2lzU2NoZWR1bGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc1NjaGVkdWxlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXNTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBpc1NjaGVkdWxlcih2YWx1ZSkgewogICAgICByZXR1cm4gdmFsdWUgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odmFsdWUuc2NoZWR1bGUpOwogICAgfQogICAgZXhwb3J0czIuaXNTY2hlZHVsZXIgPSBpc1NjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2FyZ3MuanMKdmFyIHJlcXVpcmVfYXJncyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvYXJncy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucG9wTnVtYmVyID0gZXhwb3J0czIucG9wU2NoZWR1bGVyID0gZXhwb3J0czIucG9wUmVzdWx0U2VsZWN0b3IgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICB2YXIgaXNTY2hlZHVsZXJfMSA9IHJlcXVpcmVfaXNTY2hlZHVsZXIoKTsKICAgIGZ1bmN0aW9uIGxhc3QoYXJyKSB7CiAgICAgIHJldHVybiBhcnJbYXJyLmxlbmd0aCAtIDFdOwogICAgfQogICAgZnVuY3Rpb24gcG9wUmVzdWx0U2VsZWN0b3IoYXJncykgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24obGFzdChhcmdzKSkgPyBhcmdzLnBvcCgpIDogdm9pZCAwOwogICAgfQogICAgZXhwb3J0czIucG9wUmVzdWx0U2VsZWN0b3IgPSBwb3BSZXN1bHRTZWxlY3RvcjsKICAgIGZ1bmN0aW9uIHBvcFNjaGVkdWxlcihhcmdzKSB7CiAgICAgIHJldHVybiBpc1NjaGVkdWxlcl8xLmlzU2NoZWR1bGVyKGxhc3QoYXJncykpID8gYXJncy5wb3AoKSA6IHZvaWQgMDsKICAgIH0KICAgIGV4cG9ydHMyLnBvcFNjaGVkdWxlciA9IHBvcFNjaGVkdWxlcjsKICAgIGZ1bmN0aW9uIHBvcE51bWJlcihhcmdzLCBkZWZhdWx0VmFsdWUpIHsKICAgICAgcmV0dXJuIHR5cGVvZiBsYXN0KGFyZ3MpID09PSAibnVtYmVyIiA/IGFyZ3MucG9wKCkgOiBkZWZhdWx0VmFsdWU7CiAgICB9CiAgICBleHBvcnRzMi5wb3BOdW1iZXIgPSBwb3BOdW1iZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0FycmF5TGlrZS5qcwp2YXIgcmVxdWlyZV9pc0FycmF5TGlrZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNBcnJheUxpa2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmlzQXJyYXlMaWtlID0gdm9pZCAwOwogICAgZXhwb3J0czIuaXNBcnJheUxpa2UgPSBmdW5jdGlvbih4KSB7CiAgICAgIHJldHVybiB4ICYmIHR5cGVvZiB4Lmxlbmd0aCA9PT0gIm51bWJlciIgJiYgdHlwZW9mIHggIT09ICJmdW5jdGlvbiI7CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNQcm9taXNlLmpzCnZhciByZXF1aXJlX2lzUHJvbWlzZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNQcm9taXNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc1Byb21pc2UgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBpc1Byb21pc2UodmFsdWUpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB2b2lkIDAgPyB2b2lkIDAgOiB2YWx1ZS50aGVuKTsKICAgIH0KICAgIGV4cG9ydHMyLmlzUHJvbWlzZSA9IGlzUHJvbWlzZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzSW50ZXJvcE9ic2VydmFibGUuanMKdmFyIHJlcXVpcmVfaXNJbnRlcm9wT2JzZXJ2YWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNJbnRlcm9wT2JzZXJ2YWJsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXNJbnRlcm9wT2JzZXJ2YWJsZSA9IHZvaWQgMDsKICAgIHZhciBvYnNlcnZhYmxlXzEgPSByZXF1aXJlX29ic2VydmFibGUoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIGZ1bmN0aW9uIGlzSW50ZXJvcE9ic2VydmFibGUoaW5wdXQpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKGlucHV0W29ic2VydmFibGVfMS5vYnNlcnZhYmxlXSk7CiAgICB9CiAgICBleHBvcnRzMi5pc0ludGVyb3BPYnNlcnZhYmxlID0gaXNJbnRlcm9wT2JzZXJ2YWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzQXN5bmNJdGVyYWJsZS5qcwp2YXIgcmVxdWlyZV9pc0FzeW5jSXRlcmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzQXN5bmNJdGVyYWJsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXNBc3luY0l0ZXJhYmxlID0gdm9pZCAwOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gaXNBc3luY0l0ZXJhYmxlKG9iaikgewogICAgICByZXR1cm4gU3ltYm9sLmFzeW5jSXRlcmF0b3IgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ob2JqID09PSBudWxsIHx8IG9iaiA9PT0gdm9pZCAwID8gdm9pZCAwIDogb2JqW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSk7CiAgICB9CiAgICBleHBvcnRzMi5pc0FzeW5jSXRlcmFibGUgPSBpc0FzeW5jSXRlcmFibGU7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC90aHJvd1Vub2JzZXJ2YWJsZUVycm9yLmpzCnZhciByZXF1aXJlX3Rocm93VW5vYnNlcnZhYmxlRXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL3Rocm93VW5vYnNlcnZhYmxlRXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNyZWF0ZUludmFsaWRPYnNlcnZhYmxlVHlwZUVycm9yID0gdm9pZCAwOwogICAgZnVuY3Rpb24gY3JlYXRlSW52YWxpZE9ic2VydmFibGVUeXBlRXJyb3IoaW5wdXQpIHsKICAgICAgcmV0dXJuIG5ldyBUeXBlRXJyb3IoIllvdSBwcm92aWRlZCAiICsgKGlucHV0ICE9PSBudWxsICYmIHR5cGVvZiBpbnB1dCA9PT0gIm9iamVjdCIgPyAiYW4gaW52YWxpZCBvYmplY3QiIDogIiciICsgaW5wdXQgKyAiJyIpICsgIiB3aGVyZSBhIHN0cmVhbSB3YXMgZXhwZWN0ZWQuIFlvdSBjYW4gcHJvdmlkZSBhbiBPYnNlcnZhYmxlLCBQcm9taXNlLCBSZWFkYWJsZVN0cmVhbSwgQXJyYXksIEFzeW5jSXRlcmFibGUsIG9yIEl0ZXJhYmxlLiIpOwogICAgfQogICAgZXhwb3J0czIuY3JlYXRlSW52YWxpZE9ic2VydmFibGVUeXBlRXJyb3IgPSBjcmVhdGVJbnZhbGlkT2JzZXJ2YWJsZVR5cGVFcnJvcjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zeW1ib2wvaXRlcmF0b3IuanMKdmFyIHJlcXVpcmVfaXRlcmF0b3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zeW1ib2wvaXRlcmF0b3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLml0ZXJhdG9yID0gZXhwb3J0czIuZ2V0U3ltYm9sSXRlcmF0b3IgPSB2b2lkIDA7CiAgICBmdW5jdGlvbiBnZXRTeW1ib2xJdGVyYXRvcigpIHsKICAgICAgaWYgKHR5cGVvZiBTeW1ib2wgIT09ICJmdW5jdGlvbiIgfHwgIVN5bWJvbC5pdGVyYXRvcikgewogICAgICAgIHJldHVybiAiQEBpdGVyYXRvciI7CiAgICAgIH0KICAgICAgcmV0dXJuIFN5bWJvbC5pdGVyYXRvcjsKICAgIH0KICAgIGV4cG9ydHMyLmdldFN5bWJvbEl0ZXJhdG9yID0gZ2V0U3ltYm9sSXRlcmF0b3I7CiAgICBleHBvcnRzMi5pdGVyYXRvciA9IGdldFN5bWJvbEl0ZXJhdG9yKCk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0l0ZXJhYmxlLmpzCnZhciByZXF1aXJlX2lzSXRlcmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzSXRlcmFibGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmlzSXRlcmFibGUgPSB2b2lkIDA7CiAgICB2YXIgaXRlcmF0b3JfMSA9IHJlcXVpcmVfaXRlcmF0b3IoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIGZ1bmN0aW9uIGlzSXRlcmFibGUoaW5wdXQpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKGlucHV0ID09PSBudWxsIHx8IGlucHV0ID09PSB2b2lkIDAgPyB2b2lkIDAgOiBpbnB1dFtpdGVyYXRvcl8xLml0ZXJhdG9yXSk7CiAgICB9CiAgICBleHBvcnRzMi5pc0l0ZXJhYmxlID0gaXNJdGVyYWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzUmVhZGFibGVTdHJlYW1MaWtlLmpzCnZhciByZXF1aXJlX2lzUmVhZGFibGVTdHJlYW1MaWtlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc1JlYWRhYmxlU3RyZWFtTGlrZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2dlbmVyYXRvciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZ2VuZXJhdG9yIHx8IGZ1bmN0aW9uKHRoaXNBcmcsIGJvZHkpIHsKICAgICAgdmFyIF8gPSB7IGxhYmVsOiAwLCBzZW50OiBmdW5jdGlvbigpIHsKICAgICAgICBpZiAodFswXSAmIDEpIHRocm93IHRbMV07CiAgICAgICAgcmV0dXJuIHRbMV07CiAgICAgIH0sIHRyeXM6IFtdLCBvcHM6IFtdIH0sIGYsIHksIHQsIGc7CiAgICAgIHJldHVybiBnID0geyBuZXh0OiB2ZXJiKDApLCAidGhyb3ciOiB2ZXJiKDEpLCAicmV0dXJuIjogdmVyYigyKSB9LCB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIChnW1N5bWJvbC5pdGVyYXRvcl0gPSBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfSksIGc7CiAgICAgIGZ1bmN0aW9uIHZlcmIobikgewogICAgICAgIHJldHVybiBmdW5jdGlvbih2KSB7CiAgICAgICAgICByZXR1cm4gc3RlcChbbiwgdl0pOwogICAgICAgIH07CiAgICAgIH0KICAgICAgZnVuY3Rpb24gc3RlcChvcCkgewogICAgICAgIGlmIChmKSB0aHJvdyBuZXcgVHlwZUVycm9yKCJHZW5lcmF0b3IgaXMgYWxyZWFkeSBleGVjdXRpbmcuIik7CiAgICAgICAgd2hpbGUgKF8pIHRyeSB7CiAgICAgICAgICBpZiAoZiA9IDEsIHkgJiYgKHQgPSBvcFswXSAmIDIgPyB5WyJyZXR1cm4iXSA6IG9wWzBdID8geVsidGhyb3ciXSB8fCAoKHQgPSB5WyJyZXR1cm4iXSkgJiYgdC5jYWxsKHkpLCAwKSA6IHkubmV4dCkgJiYgISh0ID0gdC5jYWxsKHksIG9wWzFdKSkuZG9uZSkgcmV0dXJuIHQ7CiAgICAgICAgICBpZiAoeSA9IDAsIHQpIG9wID0gW29wWzBdICYgMiwgdC52YWx1ZV07CiAgICAgICAgICBzd2l0Y2ggKG9wWzBdKSB7CiAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIHQgPSBvcDsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSA0OgogICAgICAgICAgICAgIF8ubGFiZWwrKzsKICAgICAgICAgICAgICByZXR1cm4geyB2YWx1ZTogb3BbMV0sIGRvbmU6IGZhbHNlIH07CiAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICBfLmxhYmVsKys7CiAgICAgICAgICAgICAgeSA9IG9wWzFdOwogICAgICAgICAgICAgIG9wID0gWzBdOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICBjYXNlIDc6CiAgICAgICAgICAgICAgb3AgPSBfLm9wcy5wb3AoKTsKICAgICAgICAgICAgICBfLnRyeXMucG9wKCk7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgaWYgKCEodCA9IF8udHJ5cywgdCA9IHQubGVuZ3RoID4gMCAmJiB0W3QubGVuZ3RoIC0gMV0pICYmIChvcFswXSA9PT0gNiB8fCBvcFswXSA9PT0gMikpIHsKICAgICAgICAgICAgICAgIF8gPSAwOwogICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChvcFswXSA9PT0gMyAmJiAoIXQgfHwgb3BbMV0gPiB0WzBdICYmIG9wWzFdIDwgdFszXSkpIHsKICAgICAgICAgICAgICAgIF8ubGFiZWwgPSBvcFsxXTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAob3BbMF0gPT09IDYgJiYgXy5sYWJlbCA8IHRbMV0pIHsKICAgICAgICAgICAgICAgIF8ubGFiZWwgPSB0WzFdOwogICAgICAgICAgICAgICAgdCA9IG9wOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0ICYmIF8ubGFiZWwgPCB0WzJdKSB7CiAgICAgICAgICAgICAgICBfLmxhYmVsID0gdFsyXTsKICAgICAgICAgICAgICAgIF8ub3BzLnB1c2gob3ApOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0WzJdKSBfLm9wcy5wb3AoKTsKICAgICAgICAgICAgICBfLnRyeXMucG9wKCk7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBvcCA9IGJvZHkuY2FsbCh0aGlzQXJnLCBfKTsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICBvcCA9IFs2LCBlXTsKICAgICAgICAgIHkgPSAwOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBmID0gdCA9IDA7CiAgICAgICAgfQogICAgICAgIGlmIChvcFswXSAmIDUpIHRocm93IG9wWzFdOwogICAgICAgIHJldHVybiB7IHZhbHVlOiBvcFswXSA/IG9wWzFdIDogdm9pZCAwLCBkb25lOiB0cnVlIH07CiAgICAgIH0KICAgIH07CiAgICB2YXIgX19hd2FpdCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fYXdhaXQgfHwgZnVuY3Rpb24odikgewogICAgICByZXR1cm4gdGhpcyBpbnN0YW5jZW9mIF9fYXdhaXQgPyAodGhpcy52ID0gdiwgdGhpcykgOiBuZXcgX19hd2FpdCh2KTsKICAgIH07CiAgICB2YXIgX19hc3luY0dlbmVyYXRvciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fYXN5bmNHZW5lcmF0b3IgfHwgZnVuY3Rpb24odGhpc0FyZywgX2FyZ3VtZW50cywgZ2VuZXJhdG9yKSB7CiAgICAgIGlmICghU3ltYm9sLmFzeW5jSXRlcmF0b3IpIHRocm93IG5ldyBUeXBlRXJyb3IoIlN5bWJvbC5hc3luY0l0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgICB2YXIgZyA9IGdlbmVyYXRvci5hcHBseSh0aGlzQXJnLCBfYXJndW1lbnRzIHx8IFtdKSwgaSwgcSA9IFtdOwogICAgICByZXR1cm4gaSA9IHt9LCB2ZXJiKCJuZXh0IiksIHZlcmIoInRocm93IiksIHZlcmIoInJldHVybiIpLCBpW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9LCBpOwogICAgICBmdW5jdGlvbiB2ZXJiKG4pIHsKICAgICAgICBpZiAoZ1tuXSkgaVtuXSA9IGZ1bmN0aW9uKHYpIHsKICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihhLCBiKSB7CiAgICAgICAgICAgIHEucHVzaChbbiwgdiwgYSwgYl0pID4gMSB8fCByZXN1bWUobiwgdik7CiAgICAgICAgICB9KTsKICAgICAgICB9OwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHJlc3VtZShuLCB2KSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIHN0ZXAoZ1tuXSh2KSk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgc2V0dGxlKHFbMF1bM10sIGUpOwogICAgICAgIH0KICAgICAgfQogICAgICBmdW5jdGlvbiBzdGVwKHIpIHsKICAgICAgICByLnZhbHVlIGluc3RhbmNlb2YgX19hd2FpdCA/IFByb21pc2UucmVzb2x2ZShyLnZhbHVlLnYpLnRoZW4oZnVsZmlsbCwgcmVqZWN0KSA6IHNldHRsZShxWzBdWzJdLCByKTsKICAgICAgfQogICAgICBmdW5jdGlvbiBmdWxmaWxsKHZhbHVlKSB7CiAgICAgICAgcmVzdW1lKCJuZXh0IiwgdmFsdWUpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHJlamVjdCh2YWx1ZSkgewogICAgICAgIHJlc3VtZSgidGhyb3ciLCB2YWx1ZSk7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gc2V0dGxlKGYsIHYpIHsKICAgICAgICBpZiAoZih2KSwgcS5zaGlmdCgpLCBxLmxlbmd0aCkgcmVzdW1lKHFbMF1bMF0sIHFbMF1bMV0pOwogICAgICB9CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc1JlYWRhYmxlU3RyZWFtTGlrZSA9IGV4cG9ydHMyLnJlYWRhYmxlU3RyZWFtTGlrZVRvQXN5bmNHZW5lcmF0b3IgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiByZWFkYWJsZVN0cmVhbUxpa2VUb0FzeW5jR2VuZXJhdG9yKHJlYWRhYmxlU3RyZWFtKSB7CiAgICAgIHJldHVybiBfX2FzeW5jR2VuZXJhdG9yKHRoaXMsIGFyZ3VtZW50cywgZnVuY3Rpb24gcmVhZGFibGVTdHJlYW1MaWtlVG9Bc3luY0dlbmVyYXRvcl8xKCkgewogICAgICAgIHZhciByZWFkZXIsIF9hLCB2YWx1ZSwgZG9uZTsKICAgICAgICByZXR1cm4gX19nZW5lcmF0b3IodGhpcywgZnVuY3Rpb24oX2IpIHsKICAgICAgICAgIHN3aXRjaCAoX2IubGFiZWwpIHsKICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgIHJlYWRlciA9IHJlYWRhYmxlU3RyZWFtLmdldFJlYWRlcigpOwogICAgICAgICAgICAgIF9iLmxhYmVsID0gMTsKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIF9iLnRyeXMucHVzaChbMSwgLCA5LCAxMF0pOwogICAgICAgICAgICAgIF9iLmxhYmVsID0gMjsKICAgICAgICAgICAgY2FzZSAyOgogICAgICAgICAgICAgIGlmIChmYWxzZSkgcmV0dXJuIFszLCA4XTsKICAgICAgICAgICAgICByZXR1cm4gWzQsIF9fYXdhaXQocmVhZGVyLnJlYWQoKSldOwogICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgX2EgPSBfYi5zZW50KCksIHZhbHVlID0gX2EudmFsdWUsIGRvbmUgPSBfYS5kb25lOwogICAgICAgICAgICAgIGlmICghZG9uZSkgcmV0dXJuIFszLCA1XTsKICAgICAgICAgICAgICByZXR1cm4gWzQsIF9fYXdhaXQodm9pZCAwKV07CiAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICByZXR1cm4gWzIsIF9iLnNlbnQoKV07CiAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICByZXR1cm4gWzQsIF9fYXdhaXQodmFsdWUpXTsKICAgICAgICAgICAgY2FzZSA2OgogICAgICAgICAgICAgIHJldHVybiBbNCwgX2Iuc2VudCgpXTsKICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIF9iLnNlbnQoKTsKICAgICAgICAgICAgICByZXR1cm4gWzMsIDJdOwogICAgICAgICAgICBjYXNlIDg6CiAgICAgICAgICAgICAgcmV0dXJuIFszLCAxMF07CiAgICAgICAgICAgIGNhc2UgOToKICAgICAgICAgICAgICByZWFkZXIucmVsZWFzZUxvY2soKTsKICAgICAgICAgICAgICByZXR1cm4gWzddOwogICAgICAgICAgICBjYXNlIDEwOgogICAgICAgICAgICAgIHJldHVybiBbMl07CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucmVhZGFibGVTdHJlYW1MaWtlVG9Bc3luY0dlbmVyYXRvciA9IHJlYWRhYmxlU3RyZWFtTGlrZVRvQXN5bmNHZW5lcmF0b3I7CiAgICBmdW5jdGlvbiBpc1JlYWRhYmxlU3RyZWFtTGlrZShvYmopIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKG9iaiA9PT0gbnVsbCB8fCBvYmogPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9iai5nZXRSZWFkZXIpOwogICAgfQogICAgZXhwb3J0czIuaXNSZWFkYWJsZVN0cmVhbUxpa2UgPSBpc1JlYWRhYmxlU3RyZWFtTGlrZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2lubmVyRnJvbS5qcwp2YXIgcmVxdWlyZV9pbm5lckZyb20gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2lubmVyRnJvbS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2F3YWl0ZXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2F3YWl0ZXIgfHwgZnVuY3Rpb24odGhpc0FyZywgX2FyZ3VtZW50cywgUCwgZ2VuZXJhdG9yKSB7CiAgICAgIGZ1bmN0aW9uIGFkb3B0KHZhbHVlKSB7CiAgICAgICAgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgUCA/IHZhbHVlIDogbmV3IFAoZnVuY3Rpb24ocmVzb2x2ZSkgewogICAgICAgICAgcmVzb2x2ZSh2YWx1ZSk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgcmV0dXJuIG5ldyAoUCB8fCAoUCA9IFByb21pc2UpKShmdW5jdGlvbihyZXNvbHZlLCByZWplY3QpIHsKICAgICAgICBmdW5jdGlvbiBmdWxmaWxsZWQodmFsdWUpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHN0ZXAoZ2VuZXJhdG9yLm5leHQodmFsdWUpKTsKICAgICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgcmVqZWN0KGUpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiByZWplY3RlZCh2YWx1ZSkgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgc3RlcChnZW5lcmF0b3JbInRocm93Il0odmFsdWUpKTsKICAgICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgcmVqZWN0KGUpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBzdGVwKHJlc3VsdCkgewogICAgICAgICAgcmVzdWx0LmRvbmUgPyByZXNvbHZlKHJlc3VsdC52YWx1ZSkgOiBhZG9wdChyZXN1bHQudmFsdWUpLnRoZW4oZnVsZmlsbGVkLCByZWplY3RlZCk7CiAgICAgICAgfQogICAgICAgIHN0ZXAoKGdlbmVyYXRvciA9IGdlbmVyYXRvci5hcHBseSh0aGlzQXJnLCBfYXJndW1lbnRzIHx8IFtdKSkubmV4dCgpKTsKICAgICAgfSk7CiAgICB9OwogICAgdmFyIF9fZ2VuZXJhdG9yID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19nZW5lcmF0b3IgfHwgZnVuY3Rpb24odGhpc0FyZywgYm9keSkgewogICAgICB2YXIgXyA9IHsgbGFiZWw6IDAsIHNlbnQ6IGZ1bmN0aW9uKCkgewogICAgICAgIGlmICh0WzBdICYgMSkgdGhyb3cgdFsxXTsKICAgICAgICByZXR1cm4gdFsxXTsKICAgICAgfSwgdHJ5czogW10sIG9wczogW10gfSwgZiwgeSwgdCwgZzsKICAgICAgcmV0dXJuIGcgPSB7IG5leHQ6IHZlcmIoMCksICJ0aHJvdyI6IHZlcmIoMSksICJyZXR1cm4iOiB2ZXJiKDIpIH0sIHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgKGdbU3ltYm9sLml0ZXJhdG9yXSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9KSwgZzsKICAgICAgZnVuY3Rpb24gdmVyYihuKSB7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKHYpIHsKICAgICAgICAgIHJldHVybiBzdGVwKFtuLCB2XSk7CiAgICAgICAgfTsKICAgICAgfQogICAgICBmdW5jdGlvbiBzdGVwKG9wKSB7CiAgICAgICAgaWYgKGYpIHRocm93IG5ldyBUeXBlRXJyb3IoIkdlbmVyYXRvciBpcyBhbHJlYWR5IGV4ZWN1dGluZy4iKTsKICAgICAgICB3aGlsZSAoXykgdHJ5IHsKICAgICAgICAgIGlmIChmID0gMSwgeSAmJiAodCA9IG9wWzBdICYgMiA/IHlbInJldHVybiJdIDogb3BbMF0gPyB5WyJ0aHJvdyJdIHx8ICgodCA9IHlbInJldHVybiJdKSAmJiB0LmNhbGwoeSksIDApIDogeS5uZXh0KSAmJiAhKHQgPSB0LmNhbGwoeSwgb3BbMV0pKS5kb25lKSByZXR1cm4gdDsKICAgICAgICAgIGlmICh5ID0gMCwgdCkgb3AgPSBbb3BbMF0gJiAyLCB0LnZhbHVlXTsKICAgICAgICAgIHN3aXRjaCAob3BbMF0pIHsKICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICBjYXNlIDE6CiAgICAgICAgICAgICAgdCA9IG9wOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgXy5sYWJlbCsrOwogICAgICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvcFsxXSwgZG9uZTogZmFsc2UgfTsKICAgICAgICAgICAgY2FzZSA1OgogICAgICAgICAgICAgIF8ubGFiZWwrKzsKICAgICAgICAgICAgICB5ID0gb3BbMV07CiAgICAgICAgICAgICAgb3AgPSBbMF07CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIGNhc2UgNzoKICAgICAgICAgICAgICBvcCA9IF8ub3BzLnBvcCgpOwogICAgICAgICAgICAgIF8udHJ5cy5wb3AoKTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICBpZiAoISh0ID0gXy50cnlzLCB0ID0gdC5sZW5ndGggPiAwICYmIHRbdC5sZW5ndGggLSAxXSkgJiYgKG9wWzBdID09PSA2IHx8IG9wWzBdID09PSAyKSkgewogICAgICAgICAgICAgICAgXyA9IDA7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKG9wWzBdID09PSAzICYmICghdCB8fCBvcFsxXSA+IHRbMF0gJiYgb3BbMV0gPCB0WzNdKSkgewogICAgICAgICAgICAgICAgXy5sYWJlbCA9IG9wWzFdOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChvcFswXSA9PT0gNiAmJiBfLmxhYmVsIDwgdFsxXSkgewogICAgICAgICAgICAgICAgXy5sYWJlbCA9IHRbMV07CiAgICAgICAgICAgICAgICB0ID0gb3A7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHQgJiYgXy5sYWJlbCA8IHRbMl0pIHsKICAgICAgICAgICAgICAgIF8ubGFiZWwgPSB0WzJdOwogICAgICAgICAgICAgICAgXy5vcHMucHVzaChvcCk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHRbMl0pIF8ub3BzLnBvcCgpOwogICAgICAgICAgICAgIF8udHJ5cy5wb3AoKTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIG9wID0gYm9keS5jYWxsKHRoaXNBcmcsIF8pOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIG9wID0gWzYsIGVdOwogICAgICAgICAgeSA9IDA7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGYgPSB0ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKG9wWzBdICYgNSkgdGhyb3cgb3BbMV07CiAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG9wWzBdID8gb3BbMV0gOiB2b2lkIDAsIGRvbmU6IHRydWUgfTsKICAgICAgfQogICAgfTsKICAgIHZhciBfX2FzeW5jVmFsdWVzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19hc3luY1ZhbHVlcyB8fCBmdW5jdGlvbihvKSB7CiAgICAgIGlmICghU3ltYm9sLmFzeW5jSXRlcmF0b3IpIHRocm93IG5ldyBUeXBlRXJyb3IoIlN5bWJvbC5hc3luY0l0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgICB2YXIgbSA9IG9bU3ltYm9sLmFzeW5jSXRlcmF0b3JdLCBpOwogICAgICByZXR1cm4gbSA/IG0uY2FsbChvKSA6IChvID0gdHlwZW9mIF9fdmFsdWVzID09PSAiZnVuY3Rpb24iID8gX192YWx1ZXMobykgOiBvW1N5bWJvbC5pdGVyYXRvcl0oKSwgaSA9IHt9LCB2ZXJiKCJuZXh0IiksIHZlcmIoInRocm93IiksIHZlcmIoInJldHVybiIpLCBpW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9LCBpKTsKICAgICAgZnVuY3Rpb24gdmVyYihuKSB7CiAgICAgICAgaVtuXSA9IG9bbl0gJiYgZnVuY3Rpb24odikgewogICAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkgewogICAgICAgICAgICB2ID0gb1tuXSh2KSwgc2V0dGxlKHJlc29sdmUsIHJlamVjdCwgdi5kb25lLCB2LnZhbHVlKTsKICAgICAgICAgIH0pOwogICAgICAgIH07CiAgICAgIH0KICAgICAgZnVuY3Rpb24gc2V0dGxlKHJlc29sdmUsIHJlamVjdCwgZCwgdikgewogICAgICAgIFByb21pc2UucmVzb2x2ZSh2KS50aGVuKGZ1bmN0aW9uKHYyKSB7CiAgICAgICAgICByZXNvbHZlKHsgdmFsdWU6IHYyLCBkb25lOiBkIH0pOwogICAgICAgIH0sIHJlamVjdCk7CiAgICAgIH0KICAgIH07CiAgICB2YXIgX192YWx1ZXMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3ZhbHVlcyB8fCBmdW5jdGlvbihvKSB7CiAgICAgIHZhciBzID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBTeW1ib2wuaXRlcmF0b3IsIG0gPSBzICYmIG9bc10sIGkgPSAwOwogICAgICBpZiAobSkgcmV0dXJuIG0uY2FsbChvKTsKICAgICAgaWYgKG8gJiYgdHlwZW9mIG8ubGVuZ3RoID09PSAibnVtYmVyIikgcmV0dXJuIHsKICAgICAgICBuZXh0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChvICYmIGkgPj0gby5sZW5ndGgpIG8gPSB2b2lkIDA7CiAgICAgICAgICByZXR1cm4geyB2YWx1ZTogbyAmJiBvW2krK10sIGRvbmU6ICFvIH07CiAgICAgICAgfQogICAgICB9OwogICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKHMgPyAiT2JqZWN0IGlzIG5vdCBpdGVyYWJsZS4iIDogIlN5bWJvbC5pdGVyYXRvciBpcyBub3QgZGVmaW5lZC4iKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZyb21SZWFkYWJsZVN0cmVhbUxpa2UgPSBleHBvcnRzMi5mcm9tQXN5bmNJdGVyYWJsZSA9IGV4cG9ydHMyLmZyb21JdGVyYWJsZSA9IGV4cG9ydHMyLmZyb21Qcm9taXNlID0gZXhwb3J0czIuZnJvbUFycmF5TGlrZSA9IGV4cG9ydHMyLmZyb21JbnRlcm9wT2JzZXJ2YWJsZSA9IGV4cG9ydHMyLmlubmVyRnJvbSA9IHZvaWQgMDsKICAgIHZhciBpc0FycmF5TGlrZV8xID0gcmVxdWlyZV9pc0FycmF5TGlrZSgpOwogICAgdmFyIGlzUHJvbWlzZV8xID0gcmVxdWlyZV9pc1Byb21pc2UoKTsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBpc0ludGVyb3BPYnNlcnZhYmxlXzEgPSByZXF1aXJlX2lzSW50ZXJvcE9ic2VydmFibGUoKTsKICAgIHZhciBpc0FzeW5jSXRlcmFibGVfMSA9IHJlcXVpcmVfaXNBc3luY0l0ZXJhYmxlKCk7CiAgICB2YXIgdGhyb3dVbm9ic2VydmFibGVFcnJvcl8xID0gcmVxdWlyZV90aHJvd1Vub2JzZXJ2YWJsZUVycm9yKCk7CiAgICB2YXIgaXNJdGVyYWJsZV8xID0gcmVxdWlyZV9pc0l0ZXJhYmxlKCk7CiAgICB2YXIgaXNSZWFkYWJsZVN0cmVhbUxpa2VfMSA9IHJlcXVpcmVfaXNSZWFkYWJsZVN0cmVhbUxpa2UoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciByZXBvcnRVbmhhbmRsZWRFcnJvcl8xID0gcmVxdWlyZV9yZXBvcnRVbmhhbmRsZWRFcnJvcigpOwogICAgdmFyIG9ic2VydmFibGVfMSA9IHJlcXVpcmVfb2JzZXJ2YWJsZSgpOwogICAgZnVuY3Rpb24gaW5uZXJGcm9tKGlucHV0KSB7CiAgICAgIGlmIChpbnB1dCBpbnN0YW5jZW9mIE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKSB7CiAgICAgICAgcmV0dXJuIGlucHV0OwogICAgICB9CiAgICAgIGlmIChpbnB1dCAhPSBudWxsKSB7CiAgICAgICAgaWYgKGlzSW50ZXJvcE9ic2VydmFibGVfMS5pc0ludGVyb3BPYnNlcnZhYmxlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIGZyb21JbnRlcm9wT2JzZXJ2YWJsZShpbnB1dCk7CiAgICAgICAgfQogICAgICAgIGlmIChpc0FycmF5TGlrZV8xLmlzQXJyYXlMaWtlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIGZyb21BcnJheUxpa2UoaW5wdXQpOwogICAgICAgIH0KICAgICAgICBpZiAoaXNQcm9taXNlXzEuaXNQcm9taXNlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIGZyb21Qcm9taXNlKGlucHV0KTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzQXN5bmNJdGVyYWJsZV8xLmlzQXN5bmNJdGVyYWJsZShpbnB1dCkpIHsKICAgICAgICAgIHJldHVybiBmcm9tQXN5bmNJdGVyYWJsZShpbnB1dCk7CiAgICAgICAgfQogICAgICAgIGlmIChpc0l0ZXJhYmxlXzEuaXNJdGVyYWJsZShpbnB1dCkpIHsKICAgICAgICAgIHJldHVybiBmcm9tSXRlcmFibGUoaW5wdXQpOwogICAgICAgIH0KICAgICAgICBpZiAoaXNSZWFkYWJsZVN0cmVhbUxpa2VfMS5pc1JlYWRhYmxlU3RyZWFtTGlrZShpbnB1dCkpIHsKICAgICAgICAgIHJldHVybiBmcm9tUmVhZGFibGVTdHJlYW1MaWtlKGlucHV0KTsKICAgICAgICB9CiAgICAgIH0KICAgICAgdGhyb3cgdGhyb3dVbm9ic2VydmFibGVFcnJvcl8xLmNyZWF0ZUludmFsaWRPYnNlcnZhYmxlVHlwZUVycm9yKGlucHV0KTsKICAgIH0KICAgIGV4cG9ydHMyLmlubmVyRnJvbSA9IGlubmVyRnJvbTsKICAgIGZ1bmN0aW9uIGZyb21JbnRlcm9wT2JzZXJ2YWJsZShvYmopIHsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIG9icyA9IG9ialtvYnNlcnZhYmxlXzEub2JzZXJ2YWJsZV0oKTsKICAgICAgICBpZiAoaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ob2JzLnN1YnNjcmliZSkpIHsKICAgICAgICAgIHJldHVybiBvYnMuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJQcm92aWRlZCBvYmplY3QgZG9lcyBub3QgY29ycmVjdGx5IGltcGxlbWVudCBTeW1ib2wub2JzZXJ2YWJsZSIpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21JbnRlcm9wT2JzZXJ2YWJsZSA9IGZyb21JbnRlcm9wT2JzZXJ2YWJsZTsKICAgIGZ1bmN0aW9uIGZyb21BcnJheUxpa2UoYXJyYXkpIHsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBhcnJheS5sZW5ndGggJiYgIXN1YnNjcmliZXIuY2xvc2VkOyBpKyspIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChhcnJheVtpXSk7CiAgICAgICAgfQogICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tQXJyYXlMaWtlID0gZnJvbUFycmF5TGlrZTsKICAgIGZ1bmN0aW9uIGZyb21Qcm9taXNlKHByb21pc2UpIHsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgcHJvbWlzZS50aGVuKGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBpZiAoIXN1YnNjcmliZXIuY2xvc2VkKSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHJldHVybiBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgfSkudGhlbihudWxsLCByZXBvcnRVbmhhbmRsZWRFcnJvcl8xLnJlcG9ydFVuaGFuZGxlZEVycm9yKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tUHJvbWlzZSA9IGZyb21Qcm9taXNlOwogICAgZnVuY3Rpb24gZnJvbUl0ZXJhYmxlKGl0ZXJhYmxlKSB7CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBlXzEsIF9hOwogICAgICAgIHRyeSB7CiAgICAgICAgICBmb3IgKHZhciBpdGVyYWJsZV8xID0gX192YWx1ZXMoaXRlcmFibGUpLCBpdGVyYWJsZV8xXzEgPSBpdGVyYWJsZV8xLm5leHQoKTsgIWl0ZXJhYmxlXzFfMS5kb25lOyBpdGVyYWJsZV8xXzEgPSBpdGVyYWJsZV8xLm5leHQoKSkgewogICAgICAgICAgICB2YXIgdmFsdWUgPSBpdGVyYWJsZV8xXzEudmFsdWU7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAgIGlmIChzdWJzY3JpYmVyLmNsb3NlZCkgewogICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0gY2F0Y2ggKGVfMV8xKSB7CiAgICAgICAgICBlXzEgPSB7IGVycm9yOiBlXzFfMSB9OwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBpZiAoaXRlcmFibGVfMV8xICYmICFpdGVyYWJsZV8xXzEuZG9uZSAmJiAoX2EgPSBpdGVyYWJsZV8xLnJldHVybikpIF9hLmNhbGwoaXRlcmFibGVfMSk7CiAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICBpZiAoZV8xKSB0aHJvdyBlXzEuZXJyb3I7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tSXRlcmFibGUgPSBmcm9tSXRlcmFibGU7CiAgICBmdW5jdGlvbiBmcm9tQXN5bmNJdGVyYWJsZShhc3luY0l0ZXJhYmxlKSB7CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHByb2Nlc3MyKGFzeW5jSXRlcmFibGUsIHN1YnNjcmliZXIpLmNhdGNoKGZ1bmN0aW9uKGVycikgewogICAgICAgICAgcmV0dXJuIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICB9KTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tQXN5bmNJdGVyYWJsZSA9IGZyb21Bc3luY0l0ZXJhYmxlOwogICAgZnVuY3Rpb24gZnJvbVJlYWRhYmxlU3RyZWFtTGlrZShyZWFkYWJsZVN0cmVhbSkgewogICAgICByZXR1cm4gZnJvbUFzeW5jSXRlcmFibGUoaXNSZWFkYWJsZVN0cmVhbUxpa2VfMS5yZWFkYWJsZVN0cmVhbUxpa2VUb0FzeW5jR2VuZXJhdG9yKHJlYWRhYmxlU3RyZWFtKSk7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tUmVhZGFibGVTdHJlYW1MaWtlID0gZnJvbVJlYWRhYmxlU3RyZWFtTGlrZTsKICAgIGZ1bmN0aW9uIHByb2Nlc3MyKGFzeW5jSXRlcmFibGUsIHN1YnNjcmliZXIpIHsKICAgICAgdmFyIGFzeW5jSXRlcmFibGVfMSwgYXN5bmNJdGVyYWJsZV8xXzE7CiAgICAgIHZhciBlXzIsIF9hOwogICAgICByZXR1cm4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgdmFsdWUsIGVfMl8xOwogICAgICAgIHJldHVybiBfX2dlbmVyYXRvcih0aGlzLCBmdW5jdGlvbihfYikgewogICAgICAgICAgc3dpdGNoIChfYi5sYWJlbCkgewogICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgX2IudHJ5cy5wdXNoKFswLCA1LCA2LCAxMV0pOwogICAgICAgICAgICAgIGFzeW5jSXRlcmFibGVfMSA9IF9fYXN5bmNWYWx1ZXMoYXN5bmNJdGVyYWJsZSk7CiAgICAgICAgICAgICAgX2IubGFiZWwgPSAxOwogICAgICAgICAgICBjYXNlIDE6CiAgICAgICAgICAgICAgcmV0dXJuIFs0LCBhc3luY0l0ZXJhYmxlXzEubmV4dCgpXTsKICAgICAgICAgICAgY2FzZSAyOgogICAgICAgICAgICAgIGlmICghKGFzeW5jSXRlcmFibGVfMV8xID0gX2Iuc2VudCgpLCAhYXN5bmNJdGVyYWJsZV8xXzEuZG9uZSkpIHJldHVybiBbMywgNF07CiAgICAgICAgICAgICAgdmFsdWUgPSBhc3luY0l0ZXJhYmxlXzFfMS52YWx1ZTsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgICAgIGlmIChzdWJzY3JpYmVyLmNsb3NlZCkgewogICAgICAgICAgICAgICAgcmV0dXJuIFsyXTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgX2IubGFiZWwgPSAzOwogICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgcmV0dXJuIFszLCAxXTsKICAgICAgICAgICAgY2FzZSA0OgogICAgICAgICAgICAgIHJldHVybiBbMywgMTFdOwogICAgICAgICAgICBjYXNlIDU6CiAgICAgICAgICAgICAgZV8yXzEgPSBfYi5zZW50KCk7CiAgICAgICAgICAgICAgZV8yID0geyBlcnJvcjogZV8yXzEgfTsKICAgICAgICAgICAgICByZXR1cm4gWzMsIDExXTsKICAgICAgICAgICAgY2FzZSA2OgogICAgICAgICAgICAgIF9iLnRyeXMucHVzaChbNiwgLCA5LCAxMF0pOwogICAgICAgICAgICAgIGlmICghKGFzeW5jSXRlcmFibGVfMV8xICYmICFhc3luY0l0ZXJhYmxlXzFfMS5kb25lICYmIChfYSA9IGFzeW5jSXRlcmFibGVfMS5yZXR1cm4pKSkgcmV0dXJuIFszLCA4XTsKICAgICAgICAgICAgICByZXR1cm4gWzQsIF9hLmNhbGwoYXN5bmNJdGVyYWJsZV8xKV07CiAgICAgICAgICAgIGNhc2UgNzoKICAgICAgICAgICAgICBfYi5zZW50KCk7CiAgICAgICAgICAgICAgX2IubGFiZWwgPSA4OwogICAgICAgICAgICBjYXNlIDg6CiAgICAgICAgICAgICAgcmV0dXJuIFszLCAxMF07CiAgICAgICAgICAgIGNhc2UgOToKICAgICAgICAgICAgICBpZiAoZV8yKSB0aHJvdyBlXzIuZXJyb3I7CiAgICAgICAgICAgICAgcmV0dXJuIFs3XTsKICAgICAgICAgICAgY2FzZSAxMDoKICAgICAgICAgICAgICByZXR1cm4gWzddOwogICAgICAgICAgICBjYXNlIDExOgogICAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgICAgICByZXR1cm4gWzJdOwogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9KTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2V4ZWN1dGVTY2hlZHVsZS5qcwp2YXIgcmVxdWlyZV9leGVjdXRlU2NoZWR1bGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2V4ZWN1dGVTY2hlZHVsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXhlY3V0ZVNjaGVkdWxlID0gdm9pZCAwOwogICAgZnVuY3Rpb24gZXhlY3V0ZVNjaGVkdWxlKHBhcmVudFN1YnNjcmlwdGlvbiwgc2NoZWR1bGVyLCB3b3JrLCBkZWxheSwgcmVwZWF0KSB7CiAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgZGVsYXkgPSAwOwogICAgICB9CiAgICAgIGlmIChyZXBlYXQgPT09IHZvaWQgMCkgewogICAgICAgIHJlcGVhdCA9IGZhbHNlOwogICAgICB9CiAgICAgIHZhciBzY2hlZHVsZVN1YnNjcmlwdGlvbiA9IHNjaGVkdWxlci5zY2hlZHVsZShmdW5jdGlvbigpIHsKICAgICAgICB3b3JrKCk7CiAgICAgICAgaWYgKHJlcGVhdCkgewogICAgICAgICAgcGFyZW50U3Vic2NyaXB0aW9uLmFkZCh0aGlzLnNjaGVkdWxlKG51bGwsIGRlbGF5KSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMudW5zdWJzY3JpYmUoKTsKICAgICAgICB9CiAgICAgIH0sIGRlbGF5KTsKICAgICAgcGFyZW50U3Vic2NyaXB0aW9uLmFkZChzY2hlZHVsZVN1YnNjcmlwdGlvbik7CiAgICAgIGlmICghcmVwZWF0KSB7CiAgICAgICAgcmV0dXJuIHNjaGVkdWxlU3Vic2NyaXB0aW9uOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5leGVjdXRlU2NoZWR1bGUgPSBleGVjdXRlU2NoZWR1bGU7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL29ic2VydmVPbi5qcwp2YXIgcmVxdWlyZV9vYnNlcnZlT24gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvb2JzZXJ2ZU9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5vYnNlcnZlT24gPSB2b2lkIDA7CiAgICB2YXIgZXhlY3V0ZVNjaGVkdWxlXzEgPSByZXF1aXJlX2V4ZWN1dGVTY2hlZHVsZSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIG9ic2VydmVPbihzY2hlZHVsZXIsIGRlbGF5KSB7CiAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgZGVsYXkgPSAwOwogICAgICB9CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgIH0sIGRlbGF5KTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgc2NoZWR1bGVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0sIGRlbGF5KTsKICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHJldHVybiBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgc2NoZWR1bGVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICAgIH0sIGRlbGF5KTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIub2JzZXJ2ZU9uID0gb2JzZXJ2ZU9uOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zdWJzY3JpYmVPbi5qcwp2YXIgcmVxdWlyZV9zdWJzY3JpYmVPbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zdWJzY3JpYmVPbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc3Vic2NyaWJlT24gPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICBmdW5jdGlvbiBzdWJzY3JpYmVPbihzY2hlZHVsZXIsIGRlbGF5KSB7CiAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgZGVsYXkgPSAwOwogICAgICB9CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBzdWJzY3JpYmVyLmFkZChzY2hlZHVsZXIuc2NoZWR1bGUoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gc291cmNlLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICB9LCBkZWxheSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnN1YnNjcmliZU9uID0gc3Vic2NyaWJlT247CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlT2JzZXJ2YWJsZS5qcwp2YXIgcmVxdWlyZV9zY2hlZHVsZU9ic2VydmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVPYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zY2hlZHVsZU9ic2VydmFibGUgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIG9ic2VydmVPbl8xID0gcmVxdWlyZV9vYnNlcnZlT24oKTsKICAgIHZhciBzdWJzY3JpYmVPbl8xID0gcmVxdWlyZV9zdWJzY3JpYmVPbigpOwogICAgZnVuY3Rpb24gc2NoZWR1bGVPYnNlcnZhYmxlKGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIGlubmVyRnJvbV8xLmlubmVyRnJvbShpbnB1dCkucGlwZShzdWJzY3JpYmVPbl8xLnN1YnNjcmliZU9uKHNjaGVkdWxlciksIG9ic2VydmVPbl8xLm9ic2VydmVPbihzY2hlZHVsZXIpKTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVkdWxlT2JzZXJ2YWJsZSA9IHNjaGVkdWxlT2JzZXJ2YWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVQcm9taXNlLmpzCnZhciByZXF1aXJlX3NjaGVkdWxlUHJvbWlzZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlZC9zY2hlZHVsZVByb21pc2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNjaGVkdWxlUHJvbWlzZSA9IHZvaWQgMDsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgb2JzZXJ2ZU9uXzEgPSByZXF1aXJlX29ic2VydmVPbigpOwogICAgdmFyIHN1YnNjcmliZU9uXzEgPSByZXF1aXJlX3N1YnNjcmliZU9uKCk7CiAgICBmdW5jdGlvbiBzY2hlZHVsZVByb21pc2UoaW5wdXQsIHNjaGVkdWxlcikgewogICAgICByZXR1cm4gaW5uZXJGcm9tXzEuaW5uZXJGcm9tKGlucHV0KS5waXBlKHN1YnNjcmliZU9uXzEuc3Vic2NyaWJlT24oc2NoZWR1bGVyKSwgb2JzZXJ2ZU9uXzEub2JzZXJ2ZU9uKHNjaGVkdWxlcikpOwogICAgfQogICAgZXhwb3J0czIuc2NoZWR1bGVQcm9taXNlID0gc2NoZWR1bGVQcm9taXNlOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlZC9zY2hlZHVsZUFycmF5LmpzCnZhciByZXF1aXJlX3NjaGVkdWxlQXJyYXkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVBcnJheS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2NoZWR1bGVBcnJheSA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIGZ1bmN0aW9uIHNjaGVkdWxlQXJyYXkoaW5wdXQsIHNjaGVkdWxlcikgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaSA9IDA7CiAgICAgICAgcmV0dXJuIHNjaGVkdWxlci5zY2hlZHVsZShmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChpID09PSBpbnB1dC5sZW5ndGgpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGlucHV0W2krK10pOwogICAgICAgICAgICBpZiAoIXN1YnNjcmliZXIuY2xvc2VkKSB7CiAgICAgICAgICAgICAgdGhpcy5zY2hlZHVsZSgpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2NoZWR1bGVBcnJheSA9IHNjaGVkdWxlQXJyYXk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlSXRlcmFibGUuanMKdmFyIHJlcXVpcmVfc2NoZWR1bGVJdGVyYWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlZC9zY2hlZHVsZUl0ZXJhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zY2hlZHVsZUl0ZXJhYmxlID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGl0ZXJhdG9yXzEgPSByZXF1aXJlX2l0ZXJhdG9yKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICB2YXIgZXhlY3V0ZVNjaGVkdWxlXzEgPSByZXF1aXJlX2V4ZWN1dGVTY2hlZHVsZSgpOwogICAgZnVuY3Rpb24gc2NoZWR1bGVJdGVyYWJsZShpbnB1dCwgc2NoZWR1bGVyKSB7CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpdGVyYXRvcjsKICAgICAgICBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgc2NoZWR1bGVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIGl0ZXJhdG9yID0gaW5wdXRbaXRlcmF0b3JfMS5pdGVyYXRvcl0oKTsKICAgICAgICAgIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgX2E7CiAgICAgICAgICAgIHZhciB2YWx1ZTsKICAgICAgICAgICAgdmFyIGRvbmU7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgX2EgPSBpdGVyYXRvci5uZXh0KCksIHZhbHVlID0gX2EudmFsdWUsIGRvbmUgPSBfYS5kb25lOwogICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChkb25lKSB7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0sIDAsIHRydWUpOwogICAgICAgIH0pOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihpdGVyYXRvciA9PT0gbnVsbCB8fCBpdGVyYXRvciA9PT0gdm9pZCAwID8gdm9pZCAwIDogaXRlcmF0b3IucmV0dXJuKSAmJiBpdGVyYXRvci5yZXR1cm4oKTsKICAgICAgICB9OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVkdWxlSXRlcmFibGUgPSBzY2hlZHVsZUl0ZXJhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlZC9zY2hlZHVsZUFzeW5jSXRlcmFibGUuanMKdmFyIHJlcXVpcmVfc2NoZWR1bGVBc3luY0l0ZXJhYmxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlQXN5bmNJdGVyYWJsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2NoZWR1bGVBc3luY0l0ZXJhYmxlID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGV4ZWN1dGVTY2hlZHVsZV8xID0gcmVxdWlyZV9leGVjdXRlU2NoZWR1bGUoKTsKICAgIGZ1bmN0aW9uIHNjaGVkdWxlQXN5bmNJdGVyYWJsZShpbnB1dCwgc2NoZWR1bGVyKSB7CiAgICAgIGlmICghaW5wdXQpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkl0ZXJhYmxlIGNhbm5vdCBiZSBudWxsIik7CiAgICAgIH0KICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnNjcmliZXIsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgaXRlcmF0b3IgPSBpbnB1dFtTeW1ib2wuYXN5bmNJdGVyYXRvcl0oKTsKICAgICAgICAgIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICBpdGVyYXRvci5uZXh0KCkudGhlbihmdW5jdGlvbihyZXN1bHQpIHsKICAgICAgICAgICAgICBpZiAocmVzdWx0LmRvbmUpIHsKICAgICAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHJlc3VsdC52YWx1ZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKICAgICAgICAgIH0sIDAsIHRydWUpOwogICAgICAgIH0pOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVkdWxlQXN5bmNJdGVyYWJsZSA9IHNjaGVkdWxlQXN5bmNJdGVyYWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2UuanMKdmFyIHJlcXVpcmVfc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlID0gdm9pZCAwOwogICAgdmFyIHNjaGVkdWxlQXN5bmNJdGVyYWJsZV8xID0gcmVxdWlyZV9zY2hlZHVsZUFzeW5jSXRlcmFibGUoKTsKICAgIHZhciBpc1JlYWRhYmxlU3RyZWFtTGlrZV8xID0gcmVxdWlyZV9pc1JlYWRhYmxlU3RyZWFtTGlrZSgpOwogICAgZnVuY3Rpb24gc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2UoaW5wdXQsIHNjaGVkdWxlcikgewogICAgICByZXR1cm4gc2NoZWR1bGVBc3luY0l0ZXJhYmxlXzEuc2NoZWR1bGVBc3luY0l0ZXJhYmxlKGlzUmVhZGFibGVTdHJlYW1MaWtlXzEucmVhZGFibGVTdHJlYW1MaWtlVG9Bc3luY0dlbmVyYXRvcihpbnB1dCksIHNjaGVkdWxlcik7CiAgICB9CiAgICBleHBvcnRzMi5zY2hlZHVsZVJlYWRhYmxlU3RyZWFtTGlrZSA9IHNjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlZC9zY2hlZHVsZWQuanMKdmFyIHJlcXVpcmVfc2NoZWR1bGVkID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlZC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2NoZWR1bGVkID0gdm9pZCAwOwogICAgdmFyIHNjaGVkdWxlT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9zY2hlZHVsZU9ic2VydmFibGUoKTsKICAgIHZhciBzY2hlZHVsZVByb21pc2VfMSA9IHJlcXVpcmVfc2NoZWR1bGVQcm9taXNlKCk7CiAgICB2YXIgc2NoZWR1bGVBcnJheV8xID0gcmVxdWlyZV9zY2hlZHVsZUFycmF5KCk7CiAgICB2YXIgc2NoZWR1bGVJdGVyYWJsZV8xID0gcmVxdWlyZV9zY2hlZHVsZUl0ZXJhYmxlKCk7CiAgICB2YXIgc2NoZWR1bGVBc3luY0l0ZXJhYmxlXzEgPSByZXF1aXJlX3NjaGVkdWxlQXN5bmNJdGVyYWJsZSgpOwogICAgdmFyIGlzSW50ZXJvcE9ic2VydmFibGVfMSA9IHJlcXVpcmVfaXNJbnRlcm9wT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlzUHJvbWlzZV8xID0gcmVxdWlyZV9pc1Byb21pc2UoKTsKICAgIHZhciBpc0FycmF5TGlrZV8xID0gcmVxdWlyZV9pc0FycmF5TGlrZSgpOwogICAgdmFyIGlzSXRlcmFibGVfMSA9IHJlcXVpcmVfaXNJdGVyYWJsZSgpOwogICAgdmFyIGlzQXN5bmNJdGVyYWJsZV8xID0gcmVxdWlyZV9pc0FzeW5jSXRlcmFibGUoKTsKICAgIHZhciB0aHJvd1Vub2JzZXJ2YWJsZUVycm9yXzEgPSByZXF1aXJlX3Rocm93VW5vYnNlcnZhYmxlRXJyb3IoKTsKICAgIHZhciBpc1JlYWRhYmxlU3RyZWFtTGlrZV8xID0gcmVxdWlyZV9pc1JlYWRhYmxlU3RyZWFtTGlrZSgpOwogICAgdmFyIHNjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlXzEgPSByZXF1aXJlX3NjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlKCk7CiAgICBmdW5jdGlvbiBzY2hlZHVsZWQoaW5wdXQsIHNjaGVkdWxlcikgewogICAgICBpZiAoaW5wdXQgIT0gbnVsbCkgewogICAgICAgIGlmIChpc0ludGVyb3BPYnNlcnZhYmxlXzEuaXNJbnRlcm9wT2JzZXJ2YWJsZShpbnB1dCkpIHsKICAgICAgICAgIHJldHVybiBzY2hlZHVsZU9ic2VydmFibGVfMS5zY2hlZHVsZU9ic2VydmFibGUoaW5wdXQsIHNjaGVkdWxlcik7CiAgICAgICAgfQogICAgICAgIGlmIChpc0FycmF5TGlrZV8xLmlzQXJyYXlMaWtlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIHNjaGVkdWxlQXJyYXlfMS5zY2hlZHVsZUFycmF5KGlucHV0LCBzY2hlZHVsZXIpOwogICAgICAgIH0KICAgICAgICBpZiAoaXNQcm9taXNlXzEuaXNQcm9taXNlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIHNjaGVkdWxlUHJvbWlzZV8xLnNjaGVkdWxlUHJvbWlzZShpbnB1dCwgc2NoZWR1bGVyKTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzQXN5bmNJdGVyYWJsZV8xLmlzQXN5bmNJdGVyYWJsZShpbnB1dCkpIHsKICAgICAgICAgIHJldHVybiBzY2hlZHVsZUFzeW5jSXRlcmFibGVfMS5zY2hlZHVsZUFzeW5jSXRlcmFibGUoaW5wdXQsIHNjaGVkdWxlcik7CiAgICAgICAgfQogICAgICAgIGlmIChpc0l0ZXJhYmxlXzEuaXNJdGVyYWJsZShpbnB1dCkpIHsKICAgICAgICAgIHJldHVybiBzY2hlZHVsZUl0ZXJhYmxlXzEuc2NoZWR1bGVJdGVyYWJsZShpbnB1dCwgc2NoZWR1bGVyKTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzUmVhZGFibGVTdHJlYW1MaWtlXzEuaXNSZWFkYWJsZVN0cmVhbUxpa2UoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2VfMS5zY2hlZHVsZVJlYWRhYmxlU3RyZWFtTGlrZShpbnB1dCwgc2NoZWR1bGVyKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgdGhyb3cgdGhyb3dVbm9ic2VydmFibGVFcnJvcl8xLmNyZWF0ZUludmFsaWRPYnNlcnZhYmxlVHlwZUVycm9yKGlucHV0KTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVkdWxlZCA9IHNjaGVkdWxlZDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2Zyb20uanMKdmFyIHJlcXVpcmVfZnJvbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZnJvbS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZnJvbSA9IHZvaWQgMDsKICAgIHZhciBzY2hlZHVsZWRfMSA9IHJlcXVpcmVfc2NoZWR1bGVkKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gZnJvbShpbnB1dCwgc2NoZWR1bGVyKSB7CiAgICAgIHJldHVybiBzY2hlZHVsZXIgPyBzY2hlZHVsZWRfMS5zY2hlZHVsZWQoaW5wdXQsIHNjaGVkdWxlcikgOiBpbm5lckZyb21fMS5pbm5lckZyb20oaW5wdXQpOwogICAgfQogICAgZXhwb3J0czIuZnJvbSA9IGZyb207CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9vZi5qcwp2YXIgcmVxdWlyZV9vZiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvb2YuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9mID0gdm9pZCAwOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgZnVuY3Rpb24gb2YoKSB7CiAgICAgIHZhciBhcmdzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgYXJnc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHZhciBzY2hlZHVsZXIgPSBhcmdzXzEucG9wU2NoZWR1bGVyKGFyZ3MpOwogICAgICByZXR1cm4gZnJvbV8xLmZyb20oYXJncywgc2NoZWR1bGVyKTsKICAgIH0KICAgIGV4cG9ydHMyLm9mID0gb2Y7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS90aHJvd0Vycm9yLmpzCnZhciByZXF1aXJlX3Rocm93RXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3Rocm93RXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRocm93RXJyb3IgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiB0aHJvd0Vycm9yKGVycm9yT3JFcnJvckZhY3RvcnksIHNjaGVkdWxlcikgewogICAgICB2YXIgZXJyb3JGYWN0b3J5ID0gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oZXJyb3JPckVycm9yRmFjdG9yeSkgPyBlcnJvck9yRXJyb3JGYWN0b3J5IDogZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIGVycm9yT3JFcnJvckZhY3Rvcnk7CiAgICAgIH07CiAgICAgIHZhciBpbml0ID0gZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHJldHVybiBzdWJzY3JpYmVyLmVycm9yKGVycm9yRmFjdG9yeSgpKTsKICAgICAgfTsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShzY2hlZHVsZXIgPyBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgcmV0dXJuIHNjaGVkdWxlci5zY2hlZHVsZShpbml0LCAwLCBzdWJzY3JpYmVyKTsKICAgICAgfSA6IGluaXQpOwogICAgfQogICAgZXhwb3J0czIudGhyb3dFcnJvciA9IHRocm93RXJyb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvTm90aWZpY2F0aW9uLmpzCnZhciByZXF1aXJlX05vdGlmaWNhdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL05vdGlmaWNhdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIub2JzZXJ2ZU5vdGlmaWNhdGlvbiA9IGV4cG9ydHMyLk5vdGlmaWNhdGlvbiA9IGV4cG9ydHMyLk5vdGlmaWNhdGlvbktpbmQgPSB2b2lkIDA7CiAgICB2YXIgZW1wdHlfMSA9IHJlcXVpcmVfZW1wdHkoKTsKICAgIHZhciBvZl8xID0gcmVxdWlyZV9vZigpOwogICAgdmFyIHRocm93RXJyb3JfMSA9IHJlcXVpcmVfdGhyb3dFcnJvcigpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgdmFyIE5vdGlmaWNhdGlvbktpbmQ7CiAgICAoZnVuY3Rpb24oTm90aWZpY2F0aW9uS2luZDIpIHsKICAgICAgTm90aWZpY2F0aW9uS2luZDJbIk5FWFQiXSA9ICJOIjsKICAgICAgTm90aWZpY2F0aW9uS2luZDJbIkVSUk9SIl0gPSAiRSI7CiAgICAgIE5vdGlmaWNhdGlvbktpbmQyWyJDT01QTEVURSJdID0gIkMiOwogICAgfSkoTm90aWZpY2F0aW9uS2luZCA9IGV4cG9ydHMyLk5vdGlmaWNhdGlvbktpbmQgfHwgKGV4cG9ydHMyLk5vdGlmaWNhdGlvbktpbmQgPSB7fSkpOwogICAgdmFyIE5vdGlmaWNhdGlvbiA9IGZ1bmN0aW9uKCkgewogICAgICBmdW5jdGlvbiBOb3RpZmljYXRpb24yKGtpbmQsIHZhbHVlLCBlcnJvcikgewogICAgICAgIHRoaXMua2luZCA9IGtpbmQ7CiAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlOwogICAgICAgIHRoaXMuZXJyb3IgPSBlcnJvcjsKICAgICAgICB0aGlzLmhhc1ZhbHVlID0ga2luZCA9PT0gIk4iOwogICAgICB9CiAgICAgIE5vdGlmaWNhdGlvbjIucHJvdG90eXBlLm9ic2VydmUgPSBmdW5jdGlvbihvYnNlcnZlcikgewogICAgICAgIHJldHVybiBvYnNlcnZlTm90aWZpY2F0aW9uKHRoaXMsIG9ic2VydmVyKTsKICAgICAgfTsKICAgICAgTm90aWZpY2F0aW9uMi5wcm90b3R5cGUuZG8gPSBmdW5jdGlvbihuZXh0SGFuZGxlciwgZXJyb3JIYW5kbGVyLCBjb21wbGV0ZUhhbmRsZXIpIHsKICAgICAgICB2YXIgX2EgPSB0aGlzLCBraW5kID0gX2Eua2luZCwgdmFsdWUgPSBfYS52YWx1ZSwgZXJyb3IgPSBfYS5lcnJvcjsKICAgICAgICByZXR1cm4ga2luZCA9PT0gIk4iID8gbmV4dEhhbmRsZXIgPT09IG51bGwgfHwgbmV4dEhhbmRsZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG5leHRIYW5kbGVyKHZhbHVlKSA6IGtpbmQgPT09ICJFIiA/IGVycm9ySGFuZGxlciA9PT0gbnVsbCB8fCBlcnJvckhhbmRsZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGVycm9ySGFuZGxlcihlcnJvcikgOiBjb21wbGV0ZUhhbmRsZXIgPT09IG51bGwgfHwgY29tcGxldGVIYW5kbGVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBjb21wbGV0ZUhhbmRsZXIoKTsKICAgICAgfTsKICAgICAgTm90aWZpY2F0aW9uMi5wcm90b3R5cGUuYWNjZXB0ID0gZnVuY3Rpb24obmV4dE9yT2JzZXJ2ZXIsIGVycm9yLCBjb21wbGV0ZSkgewogICAgICAgIHZhciBfYTsKICAgICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oKF9hID0gbmV4dE9yT2JzZXJ2ZXIpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5uZXh0KSA/IHRoaXMub2JzZXJ2ZShuZXh0T3JPYnNlcnZlcikgOiB0aGlzLmRvKG5leHRPck9ic2VydmVyLCBlcnJvciwgY29tcGxldGUpOwogICAgICB9OwogICAgICBOb3RpZmljYXRpb24yLnByb3RvdHlwZS50b09ic2VydmFibGUgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgX2EgPSB0aGlzLCBraW5kID0gX2Eua2luZCwgdmFsdWUgPSBfYS52YWx1ZSwgZXJyb3IgPSBfYS5lcnJvcjsKICAgICAgICB2YXIgcmVzdWx0ID0ga2luZCA9PT0gIk4iID8gb2ZfMS5vZih2YWx1ZSkgOiBraW5kID09PSAiRSIgPyB0aHJvd0Vycm9yXzEudGhyb3dFcnJvcihmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBlcnJvcjsKICAgICAgICB9KSA6IGtpbmQgPT09ICJDIiA/IGVtcHR5XzEuRU1QVFkgOiAwOwogICAgICAgIGlmICghcmVzdWx0KSB7CiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJVbmV4cGVjdGVkIG5vdGlmaWNhdGlvbiBraW5kICIgKyBraW5kKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgICAgTm90aWZpY2F0aW9uMi5jcmVhdGVOZXh0ID0gZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICByZXR1cm4gbmV3IE5vdGlmaWNhdGlvbjIoIk4iLCB2YWx1ZSk7CiAgICAgIH07CiAgICAgIE5vdGlmaWNhdGlvbjIuY3JlYXRlRXJyb3IgPSBmdW5jdGlvbihlcnIpIHsKICAgICAgICByZXR1cm4gbmV3IE5vdGlmaWNhdGlvbjIoIkUiLCB2b2lkIDAsIGVycik7CiAgICAgIH07CiAgICAgIE5vdGlmaWNhdGlvbjIuY3JlYXRlQ29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gTm90aWZpY2F0aW9uMi5jb21wbGV0ZU5vdGlmaWNhdGlvbjsKICAgICAgfTsKICAgICAgTm90aWZpY2F0aW9uMi5jb21wbGV0ZU5vdGlmaWNhdGlvbiA9IG5ldyBOb3RpZmljYXRpb24yKCJDIik7CiAgICAgIHJldHVybiBOb3RpZmljYXRpb24yOwogICAgfSgpOwogICAgZXhwb3J0czIuTm90aWZpY2F0aW9uID0gTm90aWZpY2F0aW9uOwogICAgZnVuY3Rpb24gb2JzZXJ2ZU5vdGlmaWNhdGlvbihub3RpZmljYXRpb24sIG9ic2VydmVyKSB7CiAgICAgIHZhciBfYSwgX2IsIF9jOwogICAgICB2YXIgX2QgPSBub3RpZmljYXRpb24sIGtpbmQgPSBfZC5raW5kLCB2YWx1ZSA9IF9kLnZhbHVlLCBlcnJvciA9IF9kLmVycm9yOwogICAgICBpZiAodHlwZW9mIGtpbmQgIT09ICJzdHJpbmciKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBub3RpZmljYXRpb24sIG1pc3NpbmcgImtpbmQiJyk7CiAgICAgIH0KICAgICAga2luZCA9PT0gIk4iID8gKF9hID0gb2JzZXJ2ZXIubmV4dCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmNhbGwob2JzZXJ2ZXIsIHZhbHVlKSA6IGtpbmQgPT09ICJFIiA/IChfYiA9IG9ic2VydmVyLmVycm9yKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IuY2FsbChvYnNlcnZlciwgZXJyb3IpIDogKF9jID0gb2JzZXJ2ZXIuY29tcGxldGUpID09PSBudWxsIHx8IF9jID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYy5jYWxsKG9ic2VydmVyKTsKICAgIH0KICAgIGV4cG9ydHMyLm9ic2VydmVOb3RpZmljYXRpb24gPSBvYnNlcnZlTm90aWZpY2F0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNPYnNlcnZhYmxlLmpzCnZhciByZXF1aXJlX2lzT2JzZXJ2YWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNPYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc09ic2VydmFibGUgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBpc09ic2VydmFibGUob2JqKSB7CiAgICAgIHJldHVybiAhIW9iaiAmJiAob2JqIGluc3RhbmNlb2YgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUgfHwgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ob2JqLmxpZnQpICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKG9iai5zdWJzY3JpYmUpKTsKICAgIH0KICAgIGV4cG9ydHMyLmlzT2JzZXJ2YWJsZSA9IGlzT2JzZXJ2YWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL0VtcHR5RXJyb3IuanMKdmFyIHJlcXVpcmVfRW1wdHlFcnJvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvRW1wdHlFcnJvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuRW1wdHlFcnJvciA9IHZvaWQgMDsKICAgIHZhciBjcmVhdGVFcnJvckNsYXNzXzEgPSByZXF1aXJlX2NyZWF0ZUVycm9yQ2xhc3MoKTsKICAgIGV4cG9ydHMyLkVtcHR5RXJyb3IgPSBjcmVhdGVFcnJvckNsYXNzXzEuY3JlYXRlRXJyb3JDbGFzcyhmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uIEVtcHR5RXJyb3JJbXBsKCkgewogICAgICAgIF9zdXBlcih0aGlzKTsKICAgICAgICB0aGlzLm5hbWUgPSAiRW1wdHlFcnJvciI7CiAgICAgICAgdGhpcy5tZXNzYWdlID0gIm5vIGVsZW1lbnRzIGluIHNlcXVlbmNlIjsKICAgICAgfTsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL2xhc3RWYWx1ZUZyb20uanMKdmFyIHJlcXVpcmVfbGFzdFZhbHVlRnJvbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL2xhc3RWYWx1ZUZyb20uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmxhc3RWYWx1ZUZyb20gPSB2b2lkIDA7CiAgICB2YXIgRW1wdHlFcnJvcl8xID0gcmVxdWlyZV9FbXB0eUVycm9yKCk7CiAgICBmdW5jdGlvbiBsYXN0VmFsdWVGcm9tKHNvdXJjZSwgY29uZmlnKSB7CiAgICAgIHZhciBoYXNDb25maWcgPSB0eXBlb2YgY29uZmlnID09PSAib2JqZWN0IjsKICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkgewogICAgICAgIHZhciBfaGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICB2YXIgX3ZhbHVlOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoewogICAgICAgICAgbmV4dDogZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgICAgX3ZhbHVlID0gdmFsdWU7CiAgICAgICAgICAgIF9oYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICB9LAogICAgICAgICAgZXJyb3I6IHJlamVjdCwKICAgICAgICAgIGNvbXBsZXRlOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgaWYgKF9oYXNWYWx1ZSkgewogICAgICAgICAgICAgIHJlc29sdmUoX3ZhbHVlKTsKICAgICAgICAgICAgfSBlbHNlIGlmIChoYXNDb25maWcpIHsKICAgICAgICAgICAgICByZXNvbHZlKGNvbmZpZy5kZWZhdWx0VmFsdWUpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHJlamVjdChuZXcgRW1wdHlFcnJvcl8xLkVtcHR5RXJyb3IoKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5sYXN0VmFsdWVGcm9tID0gbGFzdFZhbHVlRnJvbTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9maXJzdFZhbHVlRnJvbS5qcwp2YXIgcmVxdWlyZV9maXJzdFZhbHVlRnJvbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL2ZpcnN0VmFsdWVGcm9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5maXJzdFZhbHVlRnJvbSA9IHZvaWQgMDsKICAgIHZhciBFbXB0eUVycm9yXzEgPSByZXF1aXJlX0VtcHR5RXJyb3IoKTsKICAgIHZhciBTdWJzY3JpYmVyXzEgPSByZXF1aXJlX1N1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGZpcnN0VmFsdWVGcm9tKHNvdXJjZSwgY29uZmlnKSB7CiAgICAgIHZhciBoYXNDb25maWcgPSB0eXBlb2YgY29uZmlnID09PSAib2JqZWN0IjsKICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkgewogICAgICAgIHZhciBzdWJzY3JpYmVyID0gbmV3IFN1YnNjcmliZXJfMS5TYWZlU3Vic2NyaWJlcih7CiAgICAgICAgICBuZXh0OiBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgICByZXNvbHZlKHZhbHVlKTsKICAgICAgICAgICAgc3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgfSwKICAgICAgICAgIGVycm9yOiByZWplY3QsCiAgICAgICAgICBjb21wbGV0ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlmIChoYXNDb25maWcpIHsKICAgICAgICAgICAgICByZXNvbHZlKGNvbmZpZy5kZWZhdWx0VmFsdWUpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHJlamVjdChuZXcgRW1wdHlFcnJvcl8xLkVtcHR5RXJyb3IoKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZpcnN0VmFsdWVGcm9tID0gZmlyc3RWYWx1ZUZyb207CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9Bcmd1bWVudE91dE9mUmFuZ2VFcnJvci5qcwp2YXIgcmVxdWlyZV9Bcmd1bWVudE91dE9mUmFuZ2VFcnJvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yID0gdm9pZCAwOwogICAgdmFyIGNyZWF0ZUVycm9yQ2xhc3NfMSA9IHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcygpOwogICAgZXhwb3J0czIuQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IgPSBjcmVhdGVFcnJvckNsYXNzXzEuY3JlYXRlRXJyb3JDbGFzcyhmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uIEFyZ3VtZW50T3V0T2ZSYW5nZUVycm9ySW1wbCgpIHsKICAgICAgICBfc3VwZXIodGhpcyk7CiAgICAgICAgdGhpcy5uYW1lID0gIkFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yIjsKICAgICAgICB0aGlzLm1lc3NhZ2UgPSAiYXJndW1lbnQgb3V0IG9mIHJhbmdlIjsKICAgICAgfTsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvTm90Rm91bmRFcnJvci5qcwp2YXIgcmVxdWlyZV9Ob3RGb3VuZEVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9Ob3RGb3VuZEVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Ob3RGb3VuZEVycm9yID0gdm9pZCAwOwogICAgdmFyIGNyZWF0ZUVycm9yQ2xhc3NfMSA9IHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcygpOwogICAgZXhwb3J0czIuTm90Rm91bmRFcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gTm90Rm91bmRFcnJvckltcGwobWVzc2FnZSkgewogICAgICAgIF9zdXBlcih0aGlzKTsKICAgICAgICB0aGlzLm5hbWUgPSAiTm90Rm91bmRFcnJvciI7CiAgICAgICAgdGhpcy5tZXNzYWdlID0gbWVzc2FnZTsKICAgICAgfTsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvU2VxdWVuY2VFcnJvci5qcwp2YXIgcmVxdWlyZV9TZXF1ZW5jZUVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9TZXF1ZW5jZUVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TZXF1ZW5jZUVycm9yID0gdm9pZCAwOwogICAgdmFyIGNyZWF0ZUVycm9yQ2xhc3NfMSA9IHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcygpOwogICAgZXhwb3J0czIuU2VxdWVuY2VFcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gU2VxdWVuY2VFcnJvckltcGwobWVzc2FnZSkgewogICAgICAgIF9zdXBlcih0aGlzKTsKICAgICAgICB0aGlzLm5hbWUgPSAiU2VxdWVuY2VFcnJvciI7CiAgICAgICAgdGhpcy5tZXNzYWdlID0gbWVzc2FnZTsKICAgICAgfTsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNEYXRlLmpzCnZhciByZXF1aXJlX2lzRGF0ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNEYXRlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc1ZhbGlkRGF0ZSA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGlzVmFsaWREYXRlKHZhbHVlKSB7CiAgICAgIHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIERhdGUgJiYgIWlzTmFOKHZhbHVlKTsKICAgIH0KICAgIGV4cG9ydHMyLmlzVmFsaWREYXRlID0gaXNWYWxpZERhdGU7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3RpbWVvdXQuanMKdmFyIHJlcXVpcmVfdGltZW91dCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aW1lb3V0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50aW1lb3V0ID0gZXhwb3J0czIuVGltZW91dEVycm9yID0gdm9pZCAwOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgaXNEYXRlXzEgPSByZXF1aXJlX2lzRGF0ZSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBjcmVhdGVFcnJvckNsYXNzXzEgPSByZXF1aXJlX2NyZWF0ZUVycm9yQ2xhc3MoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgZXhlY3V0ZVNjaGVkdWxlXzEgPSByZXF1aXJlX2V4ZWN1dGVTY2hlZHVsZSgpOwogICAgZXhwb3J0czIuVGltZW91dEVycm9yID0gY3JlYXRlRXJyb3JDbGFzc18xLmNyZWF0ZUVycm9yQ2xhc3MoZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbiBUaW1lb3V0RXJyb3JJbXBsKGluZm8pIHsKICAgICAgICBpZiAoaW5mbyA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBpbmZvID0gbnVsbDsKICAgICAgICB9CiAgICAgICAgX3N1cGVyKHRoaXMpOwogICAgICAgIHRoaXMubWVzc2FnZSA9ICJUaW1lb3V0IGhhcyBvY2N1cnJlZCI7CiAgICAgICAgdGhpcy5uYW1lID0gIlRpbWVvdXRFcnJvciI7CiAgICAgICAgdGhpcy5pbmZvID0gaW5mbzsKICAgICAgfTsKICAgIH0pOwogICAgZnVuY3Rpb24gdGltZW91dChjb25maWcsIHNjaGVkdWxlckFyZykgewogICAgICB2YXIgX2EgPSBpc0RhdGVfMS5pc1ZhbGlkRGF0ZShjb25maWcpID8geyBmaXJzdDogY29uZmlnIH0gOiB0eXBlb2YgY29uZmlnID09PSAibnVtYmVyIiA/IHsgZWFjaDogY29uZmlnIH0gOiBjb25maWcsIGZpcnN0ID0gX2EuZmlyc3QsIGVhY2ggPSBfYS5lYWNoLCBfYiA9IF9hLndpdGgsIF93aXRoID0gX2IgPT09IHZvaWQgMCA/IHRpbWVvdXRFcnJvckZhY3RvcnkgOiBfYiwgX2MgPSBfYS5zY2hlZHVsZXIsIHNjaGVkdWxlciA9IF9jID09PSB2b2lkIDAgPyBzY2hlZHVsZXJBcmcgIT09IG51bGwgJiYgc2NoZWR1bGVyQXJnICE9PSB2b2lkIDAgPyBzY2hlZHVsZXJBcmcgOiBhc3luY18xLmFzeW5jU2NoZWR1bGVyIDogX2MsIF9kID0gX2EubWV0YSwgbWV0YSA9IF9kID09PSB2b2lkIDAgPyBudWxsIDogX2Q7CiAgICAgIGlmIChmaXJzdCA9PSBudWxsICYmIGVhY2ggPT0gbnVsbCkgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIk5vIHRpbWVvdXQgcHJvdmlkZWQuIik7CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBvcmlnaW5hbFNvdXJjZVN1YnNjcmlwdGlvbjsKICAgICAgICB2YXIgdGltZXJTdWJzY3JpcHRpb247CiAgICAgICAgdmFyIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgdmFyIHNlZW4gPSAwOwogICAgICAgIHZhciBzdGFydFRpbWVyID0gZnVuY3Rpb24oZGVsYXkpIHsKICAgICAgICAgIHRpbWVyU3Vic2NyaXB0aW9uID0gZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnNjcmliZXIsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgb3JpZ2luYWxTb3VyY2VTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oX3dpdGgoewogICAgICAgICAgICAgICAgbWV0YSwKICAgICAgICAgICAgICAgIGxhc3RWYWx1ZSwKICAgICAgICAgICAgICAgIHNlZW4KICAgICAgICAgICAgICB9KSkuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0sIGRlbGF5KTsKICAgICAgICB9OwogICAgICAgIG9yaWdpbmFsU291cmNlU3Vic2NyaXB0aW9uID0gc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHRpbWVyU3Vic2NyaXB0aW9uID09PSBudWxsIHx8IHRpbWVyU3Vic2NyaXB0aW9uID09PSB2b2lkIDAgPyB2b2lkIDAgOiB0aW1lclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpOwogICAgICAgICAgc2VlbisrOwogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGxhc3RWYWx1ZSA9IHZhbHVlKTsKICAgICAgICAgIGVhY2ggPiAwICYmIHN0YXJ0VGltZXIoZWFjaCk7CiAgICAgICAgfSwgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKCEodGltZXJTdWJzY3JpcHRpb24gPT09IG51bGwgfHwgdGltZXJTdWJzY3JpcHRpb24gPT09IHZvaWQgMCA/IHZvaWQgMCA6IHRpbWVyU3Vic2NyaXB0aW9uLmNsb3NlZCkpIHsKICAgICAgICAgICAgdGltZXJTdWJzY3JpcHRpb24gPT09IG51bGwgfHwgdGltZXJTdWJzY3JpcHRpb24gPT09IHZvaWQgMCA/IHZvaWQgMCA6IHRpbWVyU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICBsYXN0VmFsdWUgPSBudWxsOwogICAgICAgIH0pKTsKICAgICAgICAhc2VlbiAmJiBzdGFydFRpbWVyKGZpcnN0ICE9IG51bGwgPyB0eXBlb2YgZmlyc3QgPT09ICJudW1iZXIiID8gZmlyc3QgOiArZmlyc3QgLSBzY2hlZHVsZXIubm93KCkgOiBlYWNoKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50aW1lb3V0ID0gdGltZW91dDsKICAgIGZ1bmN0aW9uIHRpbWVvdXRFcnJvckZhY3RvcnkoaW5mbykgewogICAgICB0aHJvdyBuZXcgZXhwb3J0czIuVGltZW91dEVycm9yKGluZm8pOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tYXAuanMKdmFyIHJlcXVpcmVfbWFwID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21hcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWFwID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIG1hcChwcm9qZWN0LCB0aGlzQXJnKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5kZXggPSAwOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQocHJvamVjdC5jYWxsKHRoaXNBcmcsIHZhbHVlLCBpbmRleCsrKSk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1hcCA9IG1hcDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL21hcE9uZU9yTWFueUFyZ3MuanMKdmFyIHJlcXVpcmVfbWFwT25lT3JNYW55QXJncyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvbWFwT25lT3JNYW55QXJncy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWFwT25lT3JNYW55QXJncyA9IHZvaWQgMDsKICAgIHZhciBtYXBfMSA9IHJlcXVpcmVfbWFwKCk7CiAgICB2YXIgaXNBcnJheSA9IEFycmF5LmlzQXJyYXk7CiAgICBmdW5jdGlvbiBjYWxsT3JBcHBseShmbiwgYXJncykgewogICAgICByZXR1cm4gaXNBcnJheShhcmdzKSA/IGZuLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKGFyZ3MpKSkgOiBmbihhcmdzKTsKICAgIH0KICAgIGZ1bmN0aW9uIG1hcE9uZU9yTWFueUFyZ3MoZm4pIHsKICAgICAgcmV0dXJuIG1hcF8xLm1hcChmdW5jdGlvbihhcmdzKSB7CiAgICAgICAgcmV0dXJuIGNhbGxPckFwcGx5KGZuLCBhcmdzKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5tYXBPbmVPck1hbnlBcmdzID0gbWFwT25lT3JNYW55QXJnczsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2JpbmRDYWxsYmFja0ludGVybmFscy5qcwp2YXIgcmVxdWlyZV9iaW5kQ2FsbGJhY2tJbnRlcm5hbHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2JpbmRDYWxsYmFja0ludGVybmFscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYmluZENhbGxiYWNrSW50ZXJuYWxzID0gdm9pZCAwOwogICAgdmFyIGlzU2NoZWR1bGVyXzEgPSByZXF1aXJlX2lzU2NoZWR1bGVyKCk7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgc3Vic2NyaWJlT25fMSA9IHJlcXVpcmVfc3Vic2NyaWJlT24oKTsKICAgIHZhciBtYXBPbmVPck1hbnlBcmdzXzEgPSByZXF1aXJlX21hcE9uZU9yTWFueUFyZ3MoKTsKICAgIHZhciBvYnNlcnZlT25fMSA9IHJlcXVpcmVfb2JzZXJ2ZU9uKCk7CiAgICB2YXIgQXN5bmNTdWJqZWN0XzEgPSByZXF1aXJlX0FzeW5jU3ViamVjdCgpOwogICAgZnVuY3Rpb24gYmluZENhbGxiYWNrSW50ZXJuYWxzKGlzTm9kZVN0eWxlLCBjYWxsYmFja0Z1bmMsIHJlc3VsdFNlbGVjdG9yLCBzY2hlZHVsZXIpIHsKICAgICAgaWYgKHJlc3VsdFNlbGVjdG9yKSB7CiAgICAgICAgaWYgKGlzU2NoZWR1bGVyXzEuaXNTY2hlZHVsZXIocmVzdWx0U2VsZWN0b3IpKSB7CiAgICAgICAgICBzY2hlZHVsZXIgPSByZXN1bHRTZWxlY3RvcjsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gYmluZENhbGxiYWNrSW50ZXJuYWxzKGlzTm9kZVN0eWxlLCBjYWxsYmFja0Z1bmMsIHNjaGVkdWxlcikuYXBwbHkodGhpcywgYXJncykucGlwZShtYXBPbmVPck1hbnlBcmdzXzEubWFwT25lT3JNYW55QXJncyhyZXN1bHRTZWxlY3RvcikpOwogICAgICAgICAgfTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKHNjaGVkdWxlcikgewogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBhcmdzID0gW107CiAgICAgICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gYmluZENhbGxiYWNrSW50ZXJuYWxzKGlzTm9kZVN0eWxlLCBjYWxsYmFja0Z1bmMpLmFwcGx5KHRoaXMsIGFyZ3MpLnBpcGUoc3Vic2NyaWJlT25fMS5zdWJzY3JpYmVPbihzY2hlZHVsZXIpLCBvYnNlcnZlT25fMS5vYnNlcnZlT24oc2NoZWR1bGVyKSk7CiAgICAgICAgfTsKICAgICAgfQogICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgfQogICAgICAgIHZhciBzdWJqZWN0ID0gbmV3IEFzeW5jU3ViamVjdF8xLkFzeW5jU3ViamVjdCgpOwogICAgICAgIHZhciB1bmluaXRpYWxpemVkID0gdHJ1ZTsKICAgICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICAgIHZhciBzdWJzID0gc3ViamVjdC5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgICBpZiAodW5pbml0aWFsaXplZCkgewogICAgICAgICAgICB1bmluaXRpYWxpemVkID0gZmFsc2U7CiAgICAgICAgICAgIHZhciBpc0FzeW5jXzEgPSBmYWxzZTsKICAgICAgICAgICAgdmFyIGlzQ29tcGxldGVfMSA9IGZhbHNlOwogICAgICAgICAgICBjYWxsYmFja0Z1bmMuYXBwbHkoX3RoaXMsIF9fc3ByZWFkQXJyYXkoX19zcHJlYWRBcnJheShbXSwgX19yZWFkKGFyZ3MpKSwgWwogICAgICAgICAgICAgIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIHJlc3VsdHMgPSBbXTsKICAgICAgICAgICAgICAgIGZvciAodmFyIF9pMiA9IDA7IF9pMiA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pMisrKSB7CiAgICAgICAgICAgICAgICAgIHJlc3VsdHNbX2kyXSA9IGFyZ3VtZW50c1tfaTJdOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKGlzTm9kZVN0eWxlKSB7CiAgICAgICAgICAgICAgICAgIHZhciBlcnIgPSByZXN1bHRzLnNoaWZ0KCk7CiAgICAgICAgICAgICAgICAgIGlmIChlcnIgIT0gbnVsbCkgewogICAgICAgICAgICAgICAgICAgIHN1YmplY3QuZXJyb3IoZXJyKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHN1YmplY3QubmV4dCgxIDwgcmVzdWx0cy5sZW5ndGggPyByZXN1bHRzIDogcmVzdWx0c1swXSk7CiAgICAgICAgICAgICAgICBpc0NvbXBsZXRlXzEgPSB0cnVlOwogICAgICAgICAgICAgICAgaWYgKGlzQXN5bmNfMSkgewogICAgICAgICAgICAgICAgICBzdWJqZWN0LmNvbXBsZXRlKCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICBdKSk7CiAgICAgICAgICAgIGlmIChpc0NvbXBsZXRlXzEpIHsKICAgICAgICAgICAgICBzdWJqZWN0LmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaXNBc3luY18xID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBzdWJzOwogICAgICAgIH0pOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuYmluZENhbGxiYWNrSW50ZXJuYWxzID0gYmluZENhbGxiYWNrSW50ZXJuYWxzOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvYmluZENhbGxiYWNrLmpzCnZhciByZXF1aXJlX2JpbmRDYWxsYmFjayA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvYmluZENhbGxiYWNrLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5iaW5kQ2FsbGJhY2sgPSB2b2lkIDA7CiAgICB2YXIgYmluZENhbGxiYWNrSW50ZXJuYWxzXzEgPSByZXF1aXJlX2JpbmRDYWxsYmFja0ludGVybmFscygpOwogICAgZnVuY3Rpb24gYmluZENhbGxiYWNrKGNhbGxiYWNrRnVuYywgcmVzdWx0U2VsZWN0b3IsIHNjaGVkdWxlcikgewogICAgICByZXR1cm4gYmluZENhbGxiYWNrSW50ZXJuYWxzXzEuYmluZENhbGxiYWNrSW50ZXJuYWxzKGZhbHNlLCBjYWxsYmFja0Z1bmMsIHJlc3VsdFNlbGVjdG9yLCBzY2hlZHVsZXIpOwogICAgfQogICAgZXhwb3J0czIuYmluZENhbGxiYWNrID0gYmluZENhbGxiYWNrOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvYmluZE5vZGVDYWxsYmFjay5qcwp2YXIgcmVxdWlyZV9iaW5kTm9kZUNhbGxiYWNrID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9iaW5kTm9kZUNhbGxiYWNrLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5iaW5kTm9kZUNhbGxiYWNrID0gdm9pZCAwOwogICAgdmFyIGJpbmRDYWxsYmFja0ludGVybmFsc18xID0gcmVxdWlyZV9iaW5kQ2FsbGJhY2tJbnRlcm5hbHMoKTsKICAgIGZ1bmN0aW9uIGJpbmROb2RlQ2FsbGJhY2soY2FsbGJhY2tGdW5jLCByZXN1bHRTZWxlY3Rvciwgc2NoZWR1bGVyKSB7CiAgICAgIHJldHVybiBiaW5kQ2FsbGJhY2tJbnRlcm5hbHNfMS5iaW5kQ2FsbGJhY2tJbnRlcm5hbHModHJ1ZSwgY2FsbGJhY2tGdW5jLCByZXN1bHRTZWxlY3Rvciwgc2NoZWR1bGVyKTsKICAgIH0KICAgIGV4cG9ydHMyLmJpbmROb2RlQ2FsbGJhY2sgPSBiaW5kTm9kZUNhbGxiYWNrOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvYXJnc0FyZ0FycmF5T3JPYmplY3QuanMKdmFyIHJlcXVpcmVfYXJnc0FyZ0FycmF5T3JPYmplY3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2FyZ3NBcmdBcnJheU9yT2JqZWN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hcmdzQXJnQXJyYXlPck9iamVjdCA9IHZvaWQgMDsKICAgIHZhciBpc0FycmF5ID0gQXJyYXkuaXNBcnJheTsKICAgIHZhciBnZXRQcm90b3R5cGVPZiA9IE9iamVjdC5nZXRQcm90b3R5cGVPZjsKICAgIHZhciBvYmplY3RQcm90byA9IE9iamVjdC5wcm90b3R5cGU7CiAgICB2YXIgZ2V0S2V5cyA9IE9iamVjdC5rZXlzOwogICAgZnVuY3Rpb24gYXJnc0FyZ0FycmF5T3JPYmplY3QoYXJncykgewogICAgICBpZiAoYXJncy5sZW5ndGggPT09IDEpIHsKICAgICAgICB2YXIgZmlyc3RfMSA9IGFyZ3NbMF07CiAgICAgICAgaWYgKGlzQXJyYXkoZmlyc3RfMSkpIHsKICAgICAgICAgIHJldHVybiB7IGFyZ3M6IGZpcnN0XzEsIGtleXM6IG51bGwgfTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzUE9KTyhmaXJzdF8xKSkgewogICAgICAgICAgdmFyIGtleXMgPSBnZXRLZXlzKGZpcnN0XzEpOwogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgYXJnczoga2V5cy5tYXAoZnVuY3Rpb24oa2V5KSB7CiAgICAgICAgICAgICAgcmV0dXJuIGZpcnN0XzFba2V5XTsKICAgICAgICAgICAgfSksCiAgICAgICAgICAgIGtleXMKICAgICAgICAgIH07CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiB7IGFyZ3MsIGtleXM6IG51bGwgfTsKICAgIH0KICAgIGV4cG9ydHMyLmFyZ3NBcmdBcnJheU9yT2JqZWN0ID0gYXJnc0FyZ0FycmF5T3JPYmplY3Q7CiAgICBmdW5jdGlvbiBpc1BPSk8ob2JqKSB7CiAgICAgIHJldHVybiBvYmogJiYgdHlwZW9mIG9iaiA9PT0gIm9iamVjdCIgJiYgZ2V0UHJvdG90eXBlT2Yob2JqKSA9PT0gb2JqZWN0UHJvdG87CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9jcmVhdGVPYmplY3QuanMKdmFyIHJlcXVpcmVfY3JlYXRlT2JqZWN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9jcmVhdGVPYmplY3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNyZWF0ZU9iamVjdCA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGNyZWF0ZU9iamVjdChrZXlzLCB2YWx1ZXMpIHsKICAgICAgcmV0dXJuIGtleXMucmVkdWNlKGZ1bmN0aW9uKHJlc3VsdCwga2V5LCBpKSB7CiAgICAgICAgcmV0dXJuIHJlc3VsdFtrZXldID0gdmFsdWVzW2ldLCByZXN1bHQ7CiAgICAgIH0sIHt9KTsKICAgIH0KICAgIGV4cG9ydHMyLmNyZWF0ZU9iamVjdCA9IGNyZWF0ZU9iamVjdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2NvbWJpbmVMYXRlc3QuanMKdmFyIHJlcXVpcmVfY29tYmluZUxhdGVzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvY29tYmluZUxhdGVzdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdEluaXQgPSBleHBvcnRzMi5jb21iaW5lTGF0ZXN0ID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGFyZ3NBcmdBcnJheU9yT2JqZWN0XzEgPSByZXF1aXJlX2FyZ3NBcmdBcnJheU9yT2JqZWN0KCk7CiAgICB2YXIgZnJvbV8xID0gcmVxdWlyZV9mcm9tKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIHZhciBtYXBPbmVPck1hbnlBcmdzXzEgPSByZXF1aXJlX21hcE9uZU9yTWFueUFyZ3MoKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBjcmVhdGVPYmplY3RfMSA9IHJlcXVpcmVfY3JlYXRlT2JqZWN0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGV4ZWN1dGVTY2hlZHVsZV8xID0gcmVxdWlyZV9leGVjdXRlU2NoZWR1bGUoKTsKICAgIGZ1bmN0aW9uIGNvbWJpbmVMYXRlc3QoKSB7CiAgICAgIHZhciBhcmdzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgYXJnc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHZhciBzY2hlZHVsZXIgPSBhcmdzXzEucG9wU2NoZWR1bGVyKGFyZ3MpOwogICAgICB2YXIgcmVzdWx0U2VsZWN0b3IgPSBhcmdzXzEucG9wUmVzdWx0U2VsZWN0b3IoYXJncyk7CiAgICAgIHZhciBfYSA9IGFyZ3NBcmdBcnJheU9yT2JqZWN0XzEuYXJnc0FyZ0FycmF5T3JPYmplY3QoYXJncyksIG9ic2VydmFibGVzID0gX2EuYXJncywga2V5cyA9IF9hLmtleXM7CiAgICAgIGlmIChvYnNlcnZhYmxlcy5sZW5ndGggPT09IDApIHsKICAgICAgICByZXR1cm4gZnJvbV8xLmZyb20oW10sIHNjaGVkdWxlcik7CiAgICAgIH0KICAgICAgdmFyIHJlc3VsdCA9IG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShjb21iaW5lTGF0ZXN0SW5pdChvYnNlcnZhYmxlcywgc2NoZWR1bGVyLCBrZXlzID8gZnVuY3Rpb24odmFsdWVzKSB7CiAgICAgICAgcmV0dXJuIGNyZWF0ZU9iamVjdF8xLmNyZWF0ZU9iamVjdChrZXlzLCB2YWx1ZXMpOwogICAgICB9IDogaWRlbnRpdHlfMS5pZGVudGl0eSkpOwogICAgICByZXR1cm4gcmVzdWx0U2VsZWN0b3IgPyByZXN1bHQucGlwZShtYXBPbmVPck1hbnlBcmdzXzEubWFwT25lT3JNYW55QXJncyhyZXN1bHRTZWxlY3RvcikpIDogcmVzdWx0OwogICAgfQogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdCA9IGNvbWJpbmVMYXRlc3Q7CiAgICBmdW5jdGlvbiBjb21iaW5lTGF0ZXN0SW5pdChvYnNlcnZhYmxlcywgc2NoZWR1bGVyLCB2YWx1ZVRyYW5zZm9ybSkgewogICAgICBpZiAodmFsdWVUcmFuc2Zvcm0gPT09IHZvaWQgMCkgewogICAgICAgIHZhbHVlVHJhbnNmb3JtID0gaWRlbnRpdHlfMS5pZGVudGl0eTsKICAgICAgfQogICAgICByZXR1cm4gZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIG1heWJlU2NoZWR1bGUoc2NoZWR1bGVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBsZW5ndGggPSBvYnNlcnZhYmxlcy5sZW5ndGg7CiAgICAgICAgICB2YXIgdmFsdWVzID0gbmV3IEFycmF5KGxlbmd0aCk7CiAgICAgICAgICB2YXIgYWN0aXZlID0gbGVuZ3RoOwogICAgICAgICAgdmFyIHJlbWFpbmluZ0ZpcnN0VmFsdWVzID0gbGVuZ3RoOwogICAgICAgICAgdmFyIF9sb29wXzEgPSBmdW5jdGlvbihpMikgewogICAgICAgICAgICBtYXliZVNjaGVkdWxlKHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgdmFyIHNvdXJjZSA9IGZyb21fMS5mcm9tKG9ic2VydmFibGVzW2kyXSwgc2NoZWR1bGVyKTsKICAgICAgICAgICAgICB2YXIgaGFzRmlyc3RWYWx1ZSA9IGZhbHNlOwogICAgICAgICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgICAgICB2YWx1ZXNbaTJdID0gdmFsdWU7CiAgICAgICAgICAgICAgICBpZiAoIWhhc0ZpcnN0VmFsdWUpIHsKICAgICAgICAgICAgICAgICAgaGFzRmlyc3RWYWx1ZSA9IHRydWU7CiAgICAgICAgICAgICAgICAgIHJlbWFpbmluZ0ZpcnN0VmFsdWVzLS07CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAoIXJlbWFpbmluZ0ZpcnN0VmFsdWVzKSB7CiAgICAgICAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZVRyYW5zZm9ybSh2YWx1ZXMuc2xpY2UoKSkpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgaWYgKCEtLWFjdGl2ZSkgewogICAgICAgICAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfSkpOwogICAgICAgICAgICB9LCBzdWJzY3JpYmVyKTsKICAgICAgICAgIH07CiAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgIF9sb29wXzEoaSk7CiAgICAgICAgICB9CiAgICAgICAgfSwgc3Vic2NyaWJlcik7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5jb21iaW5lTGF0ZXN0SW5pdCA9IGNvbWJpbmVMYXRlc3RJbml0OwogICAgZnVuY3Rpb24gbWF5YmVTY2hlZHVsZShzY2hlZHVsZXIsIGV4ZWN1dGUsIHN1YnNjcmlwdGlvbikgewogICAgICBpZiAoc2NoZWR1bGVyKSB7CiAgICAgICAgZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnNjcmlwdGlvbiwgc2NoZWR1bGVyLCBleGVjdXRlKTsKICAgICAgfSBlbHNlIHsKICAgICAgICBleGVjdXRlKCk7CiAgICAgIH0KICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2VJbnRlcm5hbHMuanMKdmFyIHJlcXVpcmVfbWVyZ2VJbnRlcm5hbHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2VJbnRlcm5hbHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1lcmdlSW50ZXJuYWxzID0gdm9pZCAwOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBleGVjdXRlU2NoZWR1bGVfMSA9IHJlcXVpcmVfZXhlY3V0ZVNjaGVkdWxlKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gbWVyZ2VJbnRlcm5hbHMoc291cmNlLCBzdWJzY3JpYmVyLCBwcm9qZWN0LCBjb25jdXJyZW50LCBvbkJlZm9yZU5leHQsIGV4cGFuZCwgaW5uZXJTdWJTY2hlZHVsZXIsIGFkZGl0aW9uYWxGaW5hbGl6ZXIpIHsKICAgICAgdmFyIGJ1ZmZlciA9IFtdOwogICAgICB2YXIgYWN0aXZlID0gMDsKICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgdmFyIGlzQ29tcGxldGUgPSBmYWxzZTsKICAgICAgdmFyIGNoZWNrQ29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICBpZiAoaXNDb21wbGV0ZSAmJiAhYnVmZmVyLmxlbmd0aCAmJiAhYWN0aXZlKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICB2YXIgb3V0ZXJOZXh0ID0gZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICByZXR1cm4gYWN0aXZlIDwgY29uY3VycmVudCA/IGRvSW5uZXJTdWIodmFsdWUpIDogYnVmZmVyLnB1c2godmFsdWUpOwogICAgICB9OwogICAgICB2YXIgZG9Jbm5lclN1YiA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgZXhwYW5kICYmIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgYWN0aXZlKys7CiAgICAgICAgdmFyIGlubmVyQ29tcGxldGUgPSBmYWxzZTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20ocHJvamVjdCh2YWx1ZSwgaW5kZXgrKykpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oaW5uZXJWYWx1ZSkgewogICAgICAgICAgb25CZWZvcmVOZXh0ID09PSBudWxsIHx8IG9uQmVmb3JlTmV4dCA9PT0gdm9pZCAwID8gdm9pZCAwIDogb25CZWZvcmVOZXh0KGlubmVyVmFsdWUpOwogICAgICAgICAgaWYgKGV4cGFuZCkgewogICAgICAgICAgICBvdXRlck5leHQoaW5uZXJWYWx1ZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoaW5uZXJWYWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpbm5lckNvbXBsZXRlID0gdHJ1ZTsKICAgICAgICB9LCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKGlubmVyQ29tcGxldGUpIHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICBhY3RpdmUtLTsKICAgICAgICAgICAgICB2YXIgX2xvb3BfMSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIGJ1ZmZlcmVkVmFsdWUgPSBidWZmZXIuc2hpZnQoKTsKICAgICAgICAgICAgICAgIGlmIChpbm5lclN1YlNjaGVkdWxlcikgewogICAgICAgICAgICAgICAgICBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgaW5uZXJTdWJTY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBkb0lubmVyU3ViKGJ1ZmZlcmVkVmFsdWUpOwogICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIGRvSW5uZXJTdWIoYnVmZmVyZWRWYWx1ZSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICB3aGlsZSAoYnVmZmVyLmxlbmd0aCAmJiBhY3RpdmUgPCBjb25jdXJyZW50KSB7CiAgICAgICAgICAgICAgICBfbG9vcF8xKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGNoZWNrQ29tcGxldGUoKTsKICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5lcnJvcihlcnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICB9OwogICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBvdXRlck5leHQsIGZ1bmN0aW9uKCkgewogICAgICAgIGlzQ29tcGxldGUgPSB0cnVlOwogICAgICAgIGNoZWNrQ29tcGxldGUoKTsKICAgICAgfSkpOwogICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgYWRkaXRpb25hbEZpbmFsaXplciA9PT0gbnVsbCB8fCBhZGRpdGlvbmFsRmluYWxpemVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBhZGRpdGlvbmFsRmluYWxpemVyKCk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5tZXJnZUludGVybmFscyA9IG1lcmdlSW50ZXJuYWxzOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZU1hcC5qcwp2YXIgcmVxdWlyZV9tZXJnZU1hcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZU1hcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWVyZ2VNYXAgPSB2b2lkIDA7CiAgICB2YXIgbWFwXzEgPSByZXF1aXJlX21hcCgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBtZXJnZUludGVybmFsc18xID0gcmVxdWlyZV9tZXJnZUludGVybmFscygpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gbWVyZ2VNYXAocHJvamVjdCwgcmVzdWx0U2VsZWN0b3IsIGNvbmN1cnJlbnQpIHsKICAgICAgaWYgKGNvbmN1cnJlbnQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbmN1cnJlbnQgPSBJbmZpbml0eTsKICAgICAgfQogICAgICBpZiAoaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ocmVzdWx0U2VsZWN0b3IpKSB7CiAgICAgICAgcmV0dXJuIG1lcmdlTWFwKGZ1bmN0aW9uKGEsIGkpIHsKICAgICAgICAgIHJldHVybiBtYXBfMS5tYXAoZnVuY3Rpb24oYiwgaWkpIHsKICAgICAgICAgICAgcmV0dXJuIHJlc3VsdFNlbGVjdG9yKGEsIGIsIGksIGlpKTsKICAgICAgICAgIH0pKGlubmVyRnJvbV8xLmlubmVyRnJvbShwcm9qZWN0KGEsIGkpKSk7CiAgICAgICAgfSwgY29uY3VycmVudCk7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHJlc3VsdFNlbGVjdG9yID09PSAibnVtYmVyIikgewogICAgICAgIGNvbmN1cnJlbnQgPSByZXN1bHRTZWxlY3RvcjsKICAgICAgfQogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgcmV0dXJuIG1lcmdlSW50ZXJuYWxzXzEubWVyZ2VJbnRlcm5hbHMoc291cmNlLCBzdWJzY3JpYmVyLCBwcm9qZWN0LCBjb25jdXJyZW50KTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5tZXJnZU1hcCA9IG1lcmdlTWFwOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZUFsbC5qcwp2YXIgcmVxdWlyZV9tZXJnZUFsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZUFsbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWVyZ2VBbGwgPSB2b2lkIDA7CiAgICB2YXIgbWVyZ2VNYXBfMSA9IHJlcXVpcmVfbWVyZ2VNYXAoKTsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgZnVuY3Rpb24gbWVyZ2VBbGwoY29uY3VycmVudCkgewogICAgICBpZiAoY29uY3VycmVudCA9PT0gdm9pZCAwKSB7CiAgICAgICAgY29uY3VycmVudCA9IEluZmluaXR5OwogICAgICB9CiAgICAgIHJldHVybiBtZXJnZU1hcF8xLm1lcmdlTWFwKGlkZW50aXR5XzEuaWRlbnRpdHksIGNvbmN1cnJlbnQpOwogICAgfQogICAgZXhwb3J0czIubWVyZ2VBbGwgPSBtZXJnZUFsbDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29uY2F0QWxsLmpzCnZhciByZXF1aXJlX2NvbmNhdEFsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbmNhdEFsbCA9IHZvaWQgMDsKICAgIHZhciBtZXJnZUFsbF8xID0gcmVxdWlyZV9tZXJnZUFsbCgpOwogICAgZnVuY3Rpb24gY29uY2F0QWxsKCkgewogICAgICByZXR1cm4gbWVyZ2VBbGxfMS5tZXJnZUFsbCgxKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbmNhdEFsbCA9IGNvbmNhdEFsbDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2NvbmNhdC5qcwp2YXIgcmVxdWlyZV9jb25jYXQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2NvbmNhdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29uY2F0ID0gdm9pZCAwOwogICAgdmFyIGNvbmNhdEFsbF8xID0gcmVxdWlyZV9jb25jYXRBbGwoKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBmcm9tXzEgPSByZXF1aXJlX2Zyb20oKTsKICAgIGZ1bmN0aW9uIGNvbmNhdCgpIHsKICAgICAgdmFyIGFyZ3MgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbmNhdEFsbF8xLmNvbmNhdEFsbCgpKGZyb21fMS5mcm9tKGFyZ3MsIGFyZ3NfMS5wb3BTY2hlZHVsZXIoYXJncykpKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbmNhdCA9IGNvbmNhdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2RlZmVyLmpzCnZhciByZXF1aXJlX2RlZmVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9kZWZlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGVmZXIgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gZGVmZXIob2JzZXJ2YWJsZUZhY3RvcnkpIHsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKG9ic2VydmFibGVGYWN0b3J5KCkpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5kZWZlciA9IGRlZmVyOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvY29ubmVjdGFibGUuanMKdmFyIHJlcXVpcmVfY29ubmVjdGFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2Nvbm5lY3RhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb25uZWN0YWJsZSA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBkZWZlcl8xID0gcmVxdWlyZV9kZWZlcigpOwogICAgdmFyIERFRkFVTFRfQ09ORklHID0gewogICAgICBjb25uZWN0b3I6IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBuZXcgU3ViamVjdF8xLlN1YmplY3QoKTsKICAgICAgfSwKICAgICAgcmVzZXRPbkRpc2Nvbm5lY3Q6IHRydWUKICAgIH07CiAgICBmdW5jdGlvbiBjb25uZWN0YWJsZShzb3VyY2UsIGNvbmZpZykgewogICAgICBpZiAoY29uZmlnID09PSB2b2lkIDApIHsKICAgICAgICBjb25maWcgPSBERUZBVUxUX0NPTkZJRzsKICAgICAgfQogICAgICB2YXIgY29ubmVjdGlvbiA9IG51bGw7CiAgICAgIHZhciBjb25uZWN0b3IgPSBjb25maWcuY29ubmVjdG9yLCBfYSA9IGNvbmZpZy5yZXNldE9uRGlzY29ubmVjdCwgcmVzZXRPbkRpc2Nvbm5lY3QgPSBfYSA9PT0gdm9pZCAwID8gdHJ1ZSA6IF9hOwogICAgICB2YXIgc3ViamVjdCA9IGNvbm5lY3RvcigpOwogICAgICB2YXIgcmVzdWx0ID0gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gc3ViamVjdC5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgICByZXN1bHQuY29ubmVjdCA9IGZ1bmN0aW9uKCkgewogICAgICAgIGlmICghY29ubmVjdGlvbiB8fCBjb25uZWN0aW9uLmNsb3NlZCkgewogICAgICAgICAgY29ubmVjdGlvbiA9IGRlZmVyXzEuZGVmZXIoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiBzb3VyY2U7CiAgICAgICAgICB9KS5zdWJzY3JpYmUoc3ViamVjdCk7CiAgICAgICAgICBpZiAocmVzZXRPbkRpc2Nvbm5lY3QpIHsKICAgICAgICAgICAgY29ubmVjdGlvbi5hZGQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHN1YmplY3QgPSBjb25uZWN0b3IoKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBjb25uZWN0aW9uOwogICAgICB9OwogICAgICByZXR1cm4gcmVzdWx0OwogICAgfQogICAgZXhwb3J0czIuY29ubmVjdGFibGUgPSBjb25uZWN0YWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2ZvcmtKb2luLmpzCnZhciByZXF1aXJlX2ZvcmtKb2luID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9mb3JrSm9pbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZm9ya0pvaW4gPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgYXJnc0FyZ0FycmF5T3JPYmplY3RfMSA9IHJlcXVpcmVfYXJnc0FyZ0FycmF5T3JPYmplY3QoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgYXJnc18xID0gcmVxdWlyZV9hcmdzKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIG1hcE9uZU9yTWFueUFyZ3NfMSA9IHJlcXVpcmVfbWFwT25lT3JNYW55QXJncygpOwogICAgdmFyIGNyZWF0ZU9iamVjdF8xID0gcmVxdWlyZV9jcmVhdGVPYmplY3QoKTsKICAgIGZ1bmN0aW9uIGZvcmtKb2luKCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgcmVzdWx0U2VsZWN0b3IgPSBhcmdzXzEucG9wUmVzdWx0U2VsZWN0b3IoYXJncyk7CiAgICAgIHZhciBfYSA9IGFyZ3NBcmdBcnJheU9yT2JqZWN0XzEuYXJnc0FyZ0FycmF5T3JPYmplY3QoYXJncyksIHNvdXJjZXMgPSBfYS5hcmdzLCBrZXlzID0gX2Eua2V5czsKICAgICAgdmFyIHJlc3VsdCA9IG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGxlbmd0aCA9IHNvdXJjZXMubGVuZ3RoOwogICAgICAgIGlmICghbGVuZ3RoKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIHZhciB2YWx1ZXMgPSBuZXcgQXJyYXkobGVuZ3RoKTsKICAgICAgICB2YXIgcmVtYWluaW5nQ29tcGxldGlvbnMgPSBsZW5ndGg7CiAgICAgICAgdmFyIHJlbWFpbmluZ0VtaXNzaW9ucyA9IGxlbmd0aDsKICAgICAgICB2YXIgX2xvb3BfMSA9IGZ1bmN0aW9uKHNvdXJjZUluZGV4MikgewogICAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oc291cmNlc1tzb3VyY2VJbmRleDJdKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIGlmICghaGFzVmFsdWUpIHsKICAgICAgICAgICAgICBoYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICAgICAgcmVtYWluaW5nRW1pc3Npb25zLS07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdmFsdWVzW3NvdXJjZUluZGV4Ml0gPSB2YWx1ZTsKICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gcmVtYWluaW5nQ29tcGxldGlvbnMtLTsKICAgICAgICAgIH0sIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlmICghcmVtYWluaW5nQ29tcGxldGlvbnMgfHwgIWhhc1ZhbHVlKSB7CiAgICAgICAgICAgICAgaWYgKCFyZW1haW5pbmdFbWlzc2lvbnMpIHsKICAgICAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChrZXlzID8gY3JlYXRlT2JqZWN0XzEuY3JlYXRlT2JqZWN0KGtleXMsIHZhbHVlcykgOiB2YWx1ZXMpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pKTsKICAgICAgICB9OwogICAgICAgIGZvciAodmFyIHNvdXJjZUluZGV4ID0gMDsgc291cmNlSW5kZXggPCBsZW5ndGg7IHNvdXJjZUluZGV4KyspIHsKICAgICAgICAgIF9sb29wXzEoc291cmNlSW5kZXgpOwogICAgICAgIH0KICAgICAgfSk7CiAgICAgIHJldHVybiByZXN1bHRTZWxlY3RvciA/IHJlc3VsdC5waXBlKG1hcE9uZU9yTWFueUFyZ3NfMS5tYXBPbmVPck1hbnlBcmdzKHJlc3VsdFNlbGVjdG9yKSkgOiByZXN1bHQ7CiAgICB9CiAgICBleHBvcnRzMi5mb3JrSm9pbiA9IGZvcmtKb2luOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZnJvbUV2ZW50LmpzCnZhciByZXF1aXJlX2Zyb21FdmVudCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZnJvbUV2ZW50LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZyb21FdmVudCA9IHZvaWQgMDsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgbWVyZ2VNYXBfMSA9IHJlcXVpcmVfbWVyZ2VNYXAoKTsKICAgIHZhciBpc0FycmF5TGlrZV8xID0gcmVxdWlyZV9pc0FycmF5TGlrZSgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgdmFyIG1hcE9uZU9yTWFueUFyZ3NfMSA9IHJlcXVpcmVfbWFwT25lT3JNYW55QXJncygpOwogICAgdmFyIG5vZGVFdmVudEVtaXR0ZXJNZXRob2RzID0gWyJhZGRMaXN0ZW5lciIsICJyZW1vdmVMaXN0ZW5lciJdOwogICAgdmFyIGV2ZW50VGFyZ2V0TWV0aG9kcyA9IFsiYWRkRXZlbnRMaXN0ZW5lciIsICJyZW1vdmVFdmVudExpc3RlbmVyIl07CiAgICB2YXIganF1ZXJ5TWV0aG9kcyA9IFsib24iLCAib2ZmIl07CiAgICBmdW5jdGlvbiBmcm9tRXZlbnQodGFyZ2V0LCBldmVudE5hbWUsIG9wdGlvbnMsIHJlc3VsdFNlbGVjdG9yKSB7CiAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihvcHRpb25zKSkgewogICAgICAgIHJlc3VsdFNlbGVjdG9yID0gb3B0aW9uczsKICAgICAgICBvcHRpb25zID0gdm9pZCAwOwogICAgICB9CiAgICAgIGlmIChyZXN1bHRTZWxlY3RvcikgewogICAgICAgIHJldHVybiBmcm9tRXZlbnQodGFyZ2V0LCBldmVudE5hbWUsIG9wdGlvbnMpLnBpcGUobWFwT25lT3JNYW55QXJnc18xLm1hcE9uZU9yTWFueUFyZ3MocmVzdWx0U2VsZWN0b3IpKTsKICAgICAgfQogICAgICB2YXIgX2EgPSBfX3JlYWQoaXNFdmVudFRhcmdldCh0YXJnZXQpID8gZXZlbnRUYXJnZXRNZXRob2RzLm1hcChmdW5jdGlvbihtZXRob2ROYW1lKSB7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKGhhbmRsZXIpIHsKICAgICAgICAgIHJldHVybiB0YXJnZXRbbWV0aG9kTmFtZV0oZXZlbnROYW1lLCBoYW5kbGVyLCBvcHRpb25zKTsKICAgICAgICB9OwogICAgICB9KSA6IGlzTm9kZVN0eWxlRXZlbnRFbWl0dGVyKHRhcmdldCkgPyBub2RlRXZlbnRFbWl0dGVyTWV0aG9kcy5tYXAodG9Db21tb25IYW5kbGVyUmVnaXN0cnkodGFyZ2V0LCBldmVudE5hbWUpKSA6IGlzSlF1ZXJ5U3R5bGVFdmVudEVtaXR0ZXIodGFyZ2V0KSA/IGpxdWVyeU1ldGhvZHMubWFwKHRvQ29tbW9uSGFuZGxlclJlZ2lzdHJ5KHRhcmdldCwgZXZlbnROYW1lKSkgOiBbXSwgMiksIGFkZCA9IF9hWzBdLCByZW1vdmUgPSBfYVsxXTsKICAgICAgaWYgKCFhZGQpIHsKICAgICAgICBpZiAoaXNBcnJheUxpa2VfMS5pc0FycmF5TGlrZSh0YXJnZXQpKSB7CiAgICAgICAgICByZXR1cm4gbWVyZ2VNYXBfMS5tZXJnZU1hcChmdW5jdGlvbihzdWJUYXJnZXQpIHsKICAgICAgICAgICAgcmV0dXJuIGZyb21FdmVudChzdWJUYXJnZXQsIGV2ZW50TmFtZSwgb3B0aW9ucyk7CiAgICAgICAgICB9KShpbm5lckZyb21fMS5pbm5lckZyb20odGFyZ2V0KSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGlmICghYWRkKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBldmVudCB0YXJnZXQiKTsKICAgICAgfQogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaGFuZGxlciA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgdmFyIGFyZ3MgPSBbXTsKICAgICAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBzdWJzY3JpYmVyLm5leHQoMSA8IGFyZ3MubGVuZ3RoID8gYXJncyA6IGFyZ3NbMF0pOwogICAgICAgIH07CiAgICAgICAgYWRkKGhhbmRsZXIpOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiByZW1vdmUoaGFuZGxlcik7CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tRXZlbnQgPSBmcm9tRXZlbnQ7CiAgICBmdW5jdGlvbiB0b0NvbW1vbkhhbmRsZXJSZWdpc3RyeSh0YXJnZXQsIGV2ZW50TmFtZSkgewogICAgICByZXR1cm4gZnVuY3Rpb24obWV0aG9kTmFtZSkgewogICAgICAgIHJldHVybiBmdW5jdGlvbihoYW5kbGVyKSB7CiAgICAgICAgICByZXR1cm4gdGFyZ2V0W21ldGhvZE5hbWVdKGV2ZW50TmFtZSwgaGFuZGxlcik7CiAgICAgICAgfTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGlzTm9kZVN0eWxlRXZlbnRFbWl0dGVyKHRhcmdldCkgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odGFyZ2V0LmFkZExpc3RlbmVyKSAmJiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbih0YXJnZXQucmVtb3ZlTGlzdGVuZXIpOwogICAgfQogICAgZnVuY3Rpb24gaXNKUXVlcnlTdHlsZUV2ZW50RW1pdHRlcih0YXJnZXQpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHRhcmdldC5vbikgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odGFyZ2V0Lm9mZik7CiAgICB9CiAgICBmdW5jdGlvbiBpc0V2ZW50VGFyZ2V0KHRhcmdldCkgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odGFyZ2V0LmFkZEV2ZW50TGlzdGVuZXIpICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHRhcmdldC5yZW1vdmVFdmVudExpc3RlbmVyKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2Zyb21FdmVudFBhdHRlcm4uanMKdmFyIHJlcXVpcmVfZnJvbUV2ZW50UGF0dGVybiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZnJvbUV2ZW50UGF0dGVybi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZnJvbUV2ZW50UGF0dGVybiA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBtYXBPbmVPck1hbnlBcmdzXzEgPSByZXF1aXJlX21hcE9uZU9yTWFueUFyZ3MoKTsKICAgIGZ1bmN0aW9uIGZyb21FdmVudFBhdHRlcm4oYWRkSGFuZGxlciwgcmVtb3ZlSGFuZGxlciwgcmVzdWx0U2VsZWN0b3IpIHsKICAgICAgaWYgKHJlc3VsdFNlbGVjdG9yKSB7CiAgICAgICAgcmV0dXJuIGZyb21FdmVudFBhdHRlcm4oYWRkSGFuZGxlciwgcmVtb3ZlSGFuZGxlcikucGlwZShtYXBPbmVPck1hbnlBcmdzXzEubWFwT25lT3JNYW55QXJncyhyZXN1bHRTZWxlY3RvcikpOwogICAgICB9CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBoYW5kbGVyID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgZSA9IFtdOwogICAgICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICAgICAgZVtfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHN1YnNjcmliZXIubmV4dChlLmxlbmd0aCA9PT0gMSA/IGVbMF0gOiBlKTsKICAgICAgICB9OwogICAgICAgIHZhciByZXRWYWx1ZSA9IGFkZEhhbmRsZXIoaGFuZGxlcik7CiAgICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHJlbW92ZUhhbmRsZXIpID8gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gcmVtb3ZlSGFuZGxlcihoYW5kbGVyLCByZXRWYWx1ZSk7CiAgICAgICAgfSA6IHZvaWQgMDsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tRXZlbnRQYXR0ZXJuID0gZnJvbUV2ZW50UGF0dGVybjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2dlbmVyYXRlLmpzCnZhciByZXF1aXJlX2dlbmVyYXRlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9nZW5lcmF0ZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2dlbmVyYXRvciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZ2VuZXJhdG9yIHx8IGZ1bmN0aW9uKHRoaXNBcmcsIGJvZHkpIHsKICAgICAgdmFyIF8gPSB7IGxhYmVsOiAwLCBzZW50OiBmdW5jdGlvbigpIHsKICAgICAgICBpZiAodFswXSAmIDEpIHRocm93IHRbMV07CiAgICAgICAgcmV0dXJuIHRbMV07CiAgICAgIH0sIHRyeXM6IFtdLCBvcHM6IFtdIH0sIGYsIHksIHQsIGc7CiAgICAgIHJldHVybiBnID0geyBuZXh0OiB2ZXJiKDApLCAidGhyb3ciOiB2ZXJiKDEpLCAicmV0dXJuIjogdmVyYigyKSB9LCB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIChnW1N5bWJvbC5pdGVyYXRvcl0gPSBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfSksIGc7CiAgICAgIGZ1bmN0aW9uIHZlcmIobikgewogICAgICAgIHJldHVybiBmdW5jdGlvbih2KSB7CiAgICAgICAgICByZXR1cm4gc3RlcChbbiwgdl0pOwogICAgICAgIH07CiAgICAgIH0KICAgICAgZnVuY3Rpb24gc3RlcChvcCkgewogICAgICAgIGlmIChmKSB0aHJvdyBuZXcgVHlwZUVycm9yKCJHZW5lcmF0b3IgaXMgYWxyZWFkeSBleGVjdXRpbmcuIik7CiAgICAgICAgd2hpbGUgKF8pIHRyeSB7CiAgICAgICAgICBpZiAoZiA9IDEsIHkgJiYgKHQgPSBvcFswXSAmIDIgPyB5WyJyZXR1cm4iXSA6IG9wWzBdID8geVsidGhyb3ciXSB8fCAoKHQgPSB5WyJyZXR1cm4iXSkgJiYgdC5jYWxsKHkpLCAwKSA6IHkubmV4dCkgJiYgISh0ID0gdC5jYWxsKHksIG9wWzFdKSkuZG9uZSkgcmV0dXJuIHQ7CiAgICAgICAgICBpZiAoeSA9IDAsIHQpIG9wID0gW29wWzBdICYgMiwgdC52YWx1ZV07CiAgICAgICAgICBzd2l0Y2ggKG9wWzBdKSB7CiAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIHQgPSBvcDsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSA0OgogICAgICAgICAgICAgIF8ubGFiZWwrKzsKICAgICAgICAgICAgICByZXR1cm4geyB2YWx1ZTogb3BbMV0sIGRvbmU6IGZhbHNlIH07CiAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICBfLmxhYmVsKys7CiAgICAgICAgICAgICAgeSA9IG9wWzFdOwogICAgICAgICAgICAgIG9wID0gWzBdOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICBjYXNlIDc6CiAgICAgICAgICAgICAgb3AgPSBfLm9wcy5wb3AoKTsKICAgICAgICAgICAgICBfLnRyeXMucG9wKCk7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgaWYgKCEodCA9IF8udHJ5cywgdCA9IHQubGVuZ3RoID4gMCAmJiB0W3QubGVuZ3RoIC0gMV0pICYmIChvcFswXSA9PT0gNiB8fCBvcFswXSA9PT0gMikpIHsKICAgICAgICAgICAgICAgIF8gPSAwOwogICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChvcFswXSA9PT0gMyAmJiAoIXQgfHwgb3BbMV0gPiB0WzBdICYmIG9wWzFdIDwgdFszXSkpIHsKICAgICAgICAgICAgICAgIF8ubGFiZWwgPSBvcFsxXTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAob3BbMF0gPT09IDYgJiYgXy5sYWJlbCA8IHRbMV0pIHsKICAgICAgICAgICAgICAgIF8ubGFiZWwgPSB0WzFdOwogICAgICAgICAgICAgICAgdCA9IG9wOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0ICYmIF8ubGFiZWwgPCB0WzJdKSB7CiAgICAgICAgICAgICAgICBfLmxhYmVsID0gdFsyXTsKICAgICAgICAgICAgICAgIF8ub3BzLnB1c2gob3ApOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0WzJdKSBfLm9wcy5wb3AoKTsKICAgICAgICAgICAgICBfLnRyeXMucG9wKCk7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBvcCA9IGJvZHkuY2FsbCh0aGlzQXJnLCBfKTsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICBvcCA9IFs2LCBlXTsKICAgICAgICAgIHkgPSAwOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBmID0gdCA9IDA7CiAgICAgICAgfQogICAgICAgIGlmIChvcFswXSAmIDUpIHRocm93IG9wWzFdOwogICAgICAgIHJldHVybiB7IHZhbHVlOiBvcFswXSA/IG9wWzFdIDogdm9pZCAwLCBkb25lOiB0cnVlIH07CiAgICAgIH0KICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmdlbmVyYXRlID0gdm9pZCAwOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICB2YXIgaXNTY2hlZHVsZXJfMSA9IHJlcXVpcmVfaXNTY2hlZHVsZXIoKTsKICAgIHZhciBkZWZlcl8xID0gcmVxdWlyZV9kZWZlcigpOwogICAgdmFyIHNjaGVkdWxlSXRlcmFibGVfMSA9IHJlcXVpcmVfc2NoZWR1bGVJdGVyYWJsZSgpOwogICAgZnVuY3Rpb24gZ2VuZXJhdGUoaW5pdGlhbFN0YXRlT3JPcHRpb25zLCBjb25kaXRpb24sIGl0ZXJhdGUsIHJlc3VsdFNlbGVjdG9yT3JTY2hlZHVsZXIsIHNjaGVkdWxlcikgewogICAgICB2YXIgX2EsIF9iOwogICAgICB2YXIgcmVzdWx0U2VsZWN0b3I7CiAgICAgIHZhciBpbml0aWFsU3RhdGU7CiAgICAgIGlmIChhcmd1bWVudHMubGVuZ3RoID09PSAxKSB7CiAgICAgICAgX2EgPSBpbml0aWFsU3RhdGVPck9wdGlvbnMsIGluaXRpYWxTdGF0ZSA9IF9hLmluaXRpYWxTdGF0ZSwgY29uZGl0aW9uID0gX2EuY29uZGl0aW9uLCBpdGVyYXRlID0gX2EuaXRlcmF0ZSwgX2IgPSBfYS5yZXN1bHRTZWxlY3RvciwgcmVzdWx0U2VsZWN0b3IgPSBfYiA9PT0gdm9pZCAwID8gaWRlbnRpdHlfMS5pZGVudGl0eSA6IF9iLCBzY2hlZHVsZXIgPSBfYS5zY2hlZHVsZXI7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgaW5pdGlhbFN0YXRlID0gaW5pdGlhbFN0YXRlT3JPcHRpb25zOwogICAgICAgIGlmICghcmVzdWx0U2VsZWN0b3JPclNjaGVkdWxlciB8fCBpc1NjaGVkdWxlcl8xLmlzU2NoZWR1bGVyKHJlc3VsdFNlbGVjdG9yT3JTY2hlZHVsZXIpKSB7CiAgICAgICAgICByZXN1bHRTZWxlY3RvciA9IGlkZW50aXR5XzEuaWRlbnRpdHk7CiAgICAgICAgICBzY2hlZHVsZXIgPSByZXN1bHRTZWxlY3Rvck9yU2NoZWR1bGVyOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXN1bHRTZWxlY3RvciA9IHJlc3VsdFNlbGVjdG9yT3JTY2hlZHVsZXI7CiAgICAgICAgfQogICAgICB9CiAgICAgIGZ1bmN0aW9uIGdlbigpIHsKICAgICAgICB2YXIgc3RhdGU7CiAgICAgICAgcmV0dXJuIF9fZ2VuZXJhdG9yKHRoaXMsIGZ1bmN0aW9uKF9hMikgewogICAgICAgICAgc3dpdGNoIChfYTIubGFiZWwpIHsKICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgIHN0YXRlID0gaW5pdGlhbFN0YXRlOwogICAgICAgICAgICAgIF9hMi5sYWJlbCA9IDE7CiAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICBpZiAoISghY29uZGl0aW9uIHx8IGNvbmRpdGlvbihzdGF0ZSkpKSByZXR1cm4gWzMsIDRdOwogICAgICAgICAgICAgIHJldHVybiBbNCwgcmVzdWx0U2VsZWN0b3Ioc3RhdGUpXTsKICAgICAgICAgICAgY2FzZSAyOgogICAgICAgICAgICAgIF9hMi5zZW50KCk7CiAgICAgICAgICAgICAgX2EyLmxhYmVsID0gMzsKICAgICAgICAgICAgY2FzZSAzOgogICAgICAgICAgICAgIHN0YXRlID0gaXRlcmF0ZShzdGF0ZSk7CiAgICAgICAgICAgICAgcmV0dXJuIFszLCAxXTsKICAgICAgICAgICAgY2FzZSA0OgogICAgICAgICAgICAgIHJldHVybiBbMl07CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgcmV0dXJuIGRlZmVyXzEuZGVmZXIoc2NoZWR1bGVyID8gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHNjaGVkdWxlSXRlcmFibGVfMS5zY2hlZHVsZUl0ZXJhYmxlKGdlbigpLCBzY2hlZHVsZXIpOwogICAgICB9IDogZ2VuKTsKICAgIH0KICAgIGV4cG9ydHMyLmdlbmVyYXRlID0gZ2VuZXJhdGU7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9paWYuanMKdmFyIHJlcXVpcmVfaWlmID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9paWYuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmlpZiA9IHZvaWQgMDsKICAgIHZhciBkZWZlcl8xID0gcmVxdWlyZV9kZWZlcigpOwogICAgZnVuY3Rpb24gaWlmKGNvbmRpdGlvbiwgdHJ1ZVJlc3VsdCwgZmFsc2VSZXN1bHQpIHsKICAgICAgcmV0dXJuIGRlZmVyXzEuZGVmZXIoZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIGNvbmRpdGlvbigpID8gdHJ1ZVJlc3VsdCA6IGZhbHNlUmVzdWx0OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmlpZiA9IGlpZjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3RpbWVyLmpzCnZhciByZXF1aXJlX3RpbWVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS90aW1lci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGltZXIgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciBpc1NjaGVkdWxlcl8xID0gcmVxdWlyZV9pc1NjaGVkdWxlcigpOwogICAgdmFyIGlzRGF0ZV8xID0gcmVxdWlyZV9pc0RhdGUoKTsKICAgIGZ1bmN0aW9uIHRpbWVyKGR1ZVRpbWUsIGludGVydmFsT3JTY2hlZHVsZXIsIHNjaGVkdWxlcikgewogICAgICBpZiAoZHVlVGltZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgZHVlVGltZSA9IDA7CiAgICAgIH0KICAgICAgaWYgKHNjaGVkdWxlciA9PT0gdm9pZCAwKSB7CiAgICAgICAgc2NoZWR1bGVyID0gYXN5bmNfMS5hc3luYzsKICAgICAgfQogICAgICB2YXIgaW50ZXJ2YWxEdXJhdGlvbiA9IC0xOwogICAgICBpZiAoaW50ZXJ2YWxPclNjaGVkdWxlciAhPSBudWxsKSB7CiAgICAgICAgaWYgKGlzU2NoZWR1bGVyXzEuaXNTY2hlZHVsZXIoaW50ZXJ2YWxPclNjaGVkdWxlcikpIHsKICAgICAgICAgIHNjaGVkdWxlciA9IGludGVydmFsT3JTY2hlZHVsZXI7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGludGVydmFsRHVyYXRpb24gPSBpbnRlcnZhbE9yU2NoZWR1bGVyOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgZHVlID0gaXNEYXRlXzEuaXNWYWxpZERhdGUoZHVlVGltZSkgPyArZHVlVGltZSAtIHNjaGVkdWxlci5ub3coKSA6IGR1ZVRpbWU7CiAgICAgICAgaWYgKGR1ZSA8IDApIHsKICAgICAgICAgIGR1ZSA9IDA7CiAgICAgICAgfQogICAgICAgIHZhciBuID0gMDsKICAgICAgICByZXR1cm4gc2NoZWR1bGVyLnNjaGVkdWxlKGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKCFzdWJzY3JpYmVyLmNsb3NlZCkgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQobisrKTsKICAgICAgICAgICAgaWYgKDAgPD0gaW50ZXJ2YWxEdXJhdGlvbikgewogICAgICAgICAgICAgIHRoaXMuc2NoZWR1bGUodm9pZCAwLCBpbnRlcnZhbER1cmF0aW9uKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9LCBkdWUpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnRpbWVyID0gdGltZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9pbnRlcnZhbC5qcwp2YXIgcmVxdWlyZV9pbnRlcnZhbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvaW50ZXJ2YWwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmludGVydmFsID0gdm9pZCAwOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgdGltZXJfMSA9IHJlcXVpcmVfdGltZXIoKTsKICAgIGZ1bmN0aW9uIGludGVydmFsKHBlcmlvZCwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChwZXJpb2QgPT09IHZvaWQgMCkgewogICAgICAgIHBlcmlvZCA9IDA7CiAgICAgIH0KICAgICAgaWYgKHNjaGVkdWxlciA9PT0gdm9pZCAwKSB7CiAgICAgICAgc2NoZWR1bGVyID0gYXN5bmNfMS5hc3luY1NjaGVkdWxlcjsKICAgICAgfQogICAgICBpZiAocGVyaW9kIDwgMCkgewogICAgICAgIHBlcmlvZCA9IDA7CiAgICAgIH0KICAgICAgcmV0dXJuIHRpbWVyXzEudGltZXIocGVyaW9kLCBwZXJpb2QsIHNjaGVkdWxlcik7CiAgICB9CiAgICBleHBvcnRzMi5pbnRlcnZhbCA9IGludGVydmFsOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvbWVyZ2UuanMKdmFyIHJlcXVpcmVfbWVyZ2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL21lcmdlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5tZXJnZSA9IHZvaWQgMDsKICAgIHZhciBtZXJnZUFsbF8xID0gcmVxdWlyZV9tZXJnZUFsbCgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBlbXB0eV8xID0gcmVxdWlyZV9lbXB0eSgpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgZnVuY3Rpb24gbWVyZ2UoKSB7CiAgICAgIHZhciBhcmdzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgYXJnc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHZhciBzY2hlZHVsZXIgPSBhcmdzXzEucG9wU2NoZWR1bGVyKGFyZ3MpOwogICAgICB2YXIgY29uY3VycmVudCA9IGFyZ3NfMS5wb3BOdW1iZXIoYXJncywgSW5maW5pdHkpOwogICAgICB2YXIgc291cmNlcyA9IGFyZ3M7CiAgICAgIHJldHVybiAhc291cmNlcy5sZW5ndGggPyBlbXB0eV8xLkVNUFRZIDogc291cmNlcy5sZW5ndGggPT09IDEgPyBpbm5lckZyb21fMS5pbm5lckZyb20oc291cmNlc1swXSkgOiBtZXJnZUFsbF8xLm1lcmdlQWxsKGNvbmN1cnJlbnQpKGZyb21fMS5mcm9tKHNvdXJjZXMsIHNjaGVkdWxlcikpOwogICAgfQogICAgZXhwb3J0czIubWVyZ2UgPSBtZXJnZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL25ldmVyLmpzCnZhciByZXF1aXJlX25ldmVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9uZXZlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubmV2ZXIgPSBleHBvcnRzMi5ORVZFUiA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIGV4cG9ydHMyLk5FVkVSID0gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKG5vb3BfMS5ub29wKTsKICAgIGZ1bmN0aW9uIG5ldmVyKCkgewogICAgICByZXR1cm4gZXhwb3J0czIuTkVWRVI7CiAgICB9CiAgICBleHBvcnRzMi5uZXZlciA9IG5ldmVyOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvYXJnc09yQXJnQXJyYXkuanMKdmFyIHJlcXVpcmVfYXJnc09yQXJnQXJyYXkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2FyZ3NPckFyZ0FycmF5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hcmdzT3JBcmdBcnJheSA9IHZvaWQgMDsKICAgIHZhciBpc0FycmF5ID0gQXJyYXkuaXNBcnJheTsKICAgIGZ1bmN0aW9uIGFyZ3NPckFyZ0FycmF5KGFyZ3MpIHsKICAgICAgcmV0dXJuIGFyZ3MubGVuZ3RoID09PSAxICYmIGlzQXJyYXkoYXJnc1swXSkgPyBhcmdzWzBdIDogYXJnczsKICAgIH0KICAgIGV4cG9ydHMyLmFyZ3NPckFyZ0FycmF5ID0gYXJnc09yQXJnQXJyYXk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9vbkVycm9yUmVzdW1lTmV4dC5qcwp2YXIgcmVxdWlyZV9vbkVycm9yUmVzdW1lTmV4dCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvb25FcnJvclJlc3VtZU5leHQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9uRXJyb3JSZXN1bWVOZXh0ID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGFyZ3NPckFyZ0FycmF5XzEgPSByZXF1aXJlX2FyZ3NPckFyZ0FycmF5KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIG9uRXJyb3JSZXN1bWVOZXh0KCkgewogICAgICB2YXIgc291cmNlcyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIHNvdXJjZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgbmV4dFNvdXJjZXMgPSBhcmdzT3JBcmdBcnJheV8xLmFyZ3NPckFyZ0FycmF5KHNvdXJjZXMpOwogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgc291cmNlSW5kZXggPSAwOwogICAgICAgIHZhciBzdWJzY3JpYmVOZXh0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoc291cmNlSW5kZXggPCBuZXh0U291cmNlcy5sZW5ndGgpIHsKICAgICAgICAgICAgdmFyIG5leHRTb3VyY2UgPSB2b2lkIDA7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgbmV4dFNvdXJjZSA9IGlubmVyRnJvbV8xLmlubmVyRnJvbShuZXh0U291cmNlc1tzb3VyY2VJbmRleCsrXSk7CiAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgICAgIHN1YnNjcmliZU5leHQoKTsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdmFyIGlubmVyU3Vic2NyaWJlciA9IG5ldyBPcGVyYXRvclN1YnNjcmliZXJfMS5PcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgdm9pZCAwLCBub29wXzEubm9vcCwgbm9vcF8xLm5vb3ApOwogICAgICAgICAgICBuZXh0U291cmNlLnN1YnNjcmliZShpbm5lclN1YnNjcmliZXIpOwogICAgICAgICAgICBpbm5lclN1YnNjcmliZXIuYWRkKHN1YnNjcmliZU5leHQpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc3Vic2NyaWJlTmV4dCgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm9uRXJyb3JSZXN1bWVOZXh0ID0gb25FcnJvclJlc3VtZU5leHQ7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9wYWlycy5qcwp2YXIgcmVxdWlyZV9wYWlycyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcGFpcnMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnBhaXJzID0gdm9pZCAwOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgZnVuY3Rpb24gcGFpcnMob2JqLCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIGZyb21fMS5mcm9tKE9iamVjdC5lbnRyaWVzKG9iaiksIHNjaGVkdWxlcik7CiAgICB9CiAgICBleHBvcnRzMi5wYWlycyA9IHBhaXJzOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvbm90LmpzCnZhciByZXF1aXJlX25vdDIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL25vdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubm90ID0gdm9pZCAwOwogICAgZnVuY3Rpb24gbm90KHByZWQsIHRoaXNBcmcpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHZhbHVlLCBpbmRleCkgewogICAgICAgIHJldHVybiAhcHJlZC5jYWxsKHRoaXNBcmcsIHZhbHVlLCBpbmRleCk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5ub3QgPSBub3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2ZpbHRlci5qcwp2YXIgcmVxdWlyZV9maWx0ZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmlsdGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5maWx0ZXIgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gZmlsdGVyKHByZWRpY2F0ZSwgdGhpc0FyZykgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuIHByZWRpY2F0ZS5jYWxsKHRoaXNBcmcsIHZhbHVlLCBpbmRleCsrKSAmJiBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5maWx0ZXIgPSBmaWx0ZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9wYXJ0aXRpb24uanMKdmFyIHJlcXVpcmVfcGFydGl0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9wYXJ0aXRpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnBhcnRpdGlvbiA9IHZvaWQgMDsKICAgIHZhciBub3RfMSA9IHJlcXVpcmVfbm90MigpOwogICAgdmFyIGZpbHRlcl8xID0gcmVxdWlyZV9maWx0ZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICBmdW5jdGlvbiBwYXJ0aXRpb24oc291cmNlLCBwcmVkaWNhdGUsIHRoaXNBcmcpIHsKICAgICAgcmV0dXJuIFtmaWx0ZXJfMS5maWx0ZXIocHJlZGljYXRlLCB0aGlzQXJnKShpbm5lckZyb21fMS5pbm5lckZyb20oc291cmNlKSksIGZpbHRlcl8xLmZpbHRlcihub3RfMS5ub3QocHJlZGljYXRlLCB0aGlzQXJnKSkoaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHNvdXJjZSkpXTsKICAgIH0KICAgIGV4cG9ydHMyLnBhcnRpdGlvbiA9IHBhcnRpdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3JhY2UuanMKdmFyIHJlcXVpcmVfcmFjZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcmFjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmFjZUluaXQgPSBleHBvcnRzMi5yYWNlID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBhcmdzT3JBcmdBcnJheV8xID0gcmVxdWlyZV9hcmdzT3JBcmdBcnJheSgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHJhY2UoKSB7CiAgICAgIHZhciBzb3VyY2VzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgc291cmNlc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHNvdXJjZXMgPSBhcmdzT3JBcmdBcnJheV8xLmFyZ3NPckFyZ0FycmF5KHNvdXJjZXMpOwogICAgICByZXR1cm4gc291cmNlcy5sZW5ndGggPT09IDEgPyBpbm5lckZyb21fMS5pbm5lckZyb20oc291cmNlc1swXSkgOiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUocmFjZUluaXQoc291cmNlcykpOwogICAgfQogICAgZXhwb3J0czIucmFjZSA9IHJhY2U7CiAgICBmdW5jdGlvbiByYWNlSW5pdChzb3VyY2VzKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHN1YnNjcmlwdGlvbnMgPSBbXTsKICAgICAgICB2YXIgX2xvb3BfMSA9IGZ1bmN0aW9uKGkyKSB7CiAgICAgICAgICBzdWJzY3JpcHRpb25zLnB1c2goaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHNvdXJjZXNbaTJdKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIGlmIChzdWJzY3JpcHRpb25zKSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgcyA9IDA7IHMgPCBzdWJzY3JpcHRpb25zLmxlbmd0aDsgcysrKSB7CiAgICAgICAgICAgICAgICBzICE9PSBpMiAmJiBzdWJzY3JpcHRpb25zW3NdLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHN1YnNjcmlwdGlvbnMgPSBudWxsOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9KSkpOwogICAgICAgIH07CiAgICAgICAgZm9yICh2YXIgaSA9IDA7IHN1YnNjcmlwdGlvbnMgJiYgIXN1YnNjcmliZXIuY2xvc2VkICYmIGkgPCBzb3VyY2VzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICBfbG9vcF8xKGkpOwogICAgICAgIH0KICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnJhY2VJbml0ID0gcmFjZUluaXQ7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9yYW5nZS5qcwp2YXIgcmVxdWlyZV9yYW5nZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcmFuZ2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJhbmdlID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGVtcHR5XzEgPSByZXF1aXJlX2VtcHR5KCk7CiAgICBmdW5jdGlvbiByYW5nZShzdGFydCwgY291bnQsIHNjaGVkdWxlcikgewogICAgICBpZiAoY291bnQgPT0gbnVsbCkgewogICAgICAgIGNvdW50ID0gc3RhcnQ7CiAgICAgICAgc3RhcnQgPSAwOwogICAgICB9CiAgICAgIGlmIChjb3VudCA8PSAwKSB7CiAgICAgICAgcmV0dXJuIGVtcHR5XzEuRU1QVFk7CiAgICAgIH0KICAgICAgdmFyIGVuZCA9IGNvdW50ICsgc3RhcnQ7CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoc2NoZWR1bGVyID8gZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBuID0gc3RhcnQ7CiAgICAgICAgcmV0dXJuIHNjaGVkdWxlci5zY2hlZHVsZShmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChuIDwgZW5kKSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChuKyspOwogICAgICAgICAgICB0aGlzLnNjaGVkdWxlKCk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH0gOiBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIG4gPSBzdGFydDsKICAgICAgICB3aGlsZSAobiA8IGVuZCAmJiAhc3Vic2NyaWJlci5jbG9zZWQpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChuKyspOwogICAgICAgIH0KICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucmFuZ2UgPSByYW5nZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3VzaW5nLmpzCnZhciByZXF1aXJlX3VzaW5nID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS91c2luZy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudXNpbmcgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGVtcHR5XzEgPSByZXF1aXJlX2VtcHR5KCk7CiAgICBmdW5jdGlvbiB1c2luZyhyZXNvdXJjZUZhY3RvcnksIG9ic2VydmFibGVGYWN0b3J5KSB7CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciByZXNvdXJjZSA9IHJlc291cmNlRmFjdG9yeSgpOwogICAgICAgIHZhciByZXN1bHQgPSBvYnNlcnZhYmxlRmFjdG9yeShyZXNvdXJjZSk7CiAgICAgICAgdmFyIHNvdXJjZSA9IHJlc3VsdCA/IGlubmVyRnJvbV8xLmlubmVyRnJvbShyZXN1bHQpIDogZW1wdHlfMS5FTVBUWTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChyZXNvdXJjZSkgewogICAgICAgICAgICByZXNvdXJjZS51bnN1YnNjcmliZSgpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudXNpbmcgPSB1c2luZzsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3ppcC5qcwp2YXIgcmVxdWlyZV96aXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3ppcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuemlwID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBhcmdzT3JBcmdBcnJheV8xID0gcmVxdWlyZV9hcmdzT3JBcmdBcnJheSgpOwogICAgdmFyIGVtcHR5XzEgPSByZXF1aXJlX2VtcHR5KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgZnVuY3Rpb24gemlwKCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgcmVzdWx0U2VsZWN0b3IgPSBhcmdzXzEucG9wUmVzdWx0U2VsZWN0b3IoYXJncyk7CiAgICAgIHZhciBzb3VyY2VzID0gYXJnc09yQXJnQXJyYXlfMS5hcmdzT3JBcmdBcnJheShhcmdzKTsKICAgICAgcmV0dXJuIHNvdXJjZXMubGVuZ3RoID8gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgYnVmZmVycyA9IHNvdXJjZXMubWFwKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIFtdOwogICAgICAgIH0pOwogICAgICAgIHZhciBjb21wbGV0ZWQgPSBzb3VyY2VzLm1hcChmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9KTsKICAgICAgICBzdWJzY3JpYmVyLmFkZChmdW5jdGlvbigpIHsKICAgICAgICAgIGJ1ZmZlcnMgPSBjb21wbGV0ZWQgPSBudWxsOwogICAgICAgIH0pOwogICAgICAgIHZhciBfbG9vcF8xID0gZnVuY3Rpb24oc291cmNlSW5kZXgyKSB7CiAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oc291cmNlc1tzb3VyY2VJbmRleDJdKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIGJ1ZmZlcnNbc291cmNlSW5kZXgyXS5wdXNoKHZhbHVlKTsKICAgICAgICAgICAgaWYgKGJ1ZmZlcnMuZXZlcnkoZnVuY3Rpb24oYnVmZmVyKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGJ1ZmZlci5sZW5ndGg7CiAgICAgICAgICAgIH0pKSB7CiAgICAgICAgICAgICAgdmFyIHJlc3VsdCA9IGJ1ZmZlcnMubWFwKGZ1bmN0aW9uKGJ1ZmZlcikgewogICAgICAgICAgICAgICAgcmV0dXJuIGJ1ZmZlci5zaGlmdCgpOwogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChyZXN1bHRTZWxlY3RvciA/IHJlc3VsdFNlbGVjdG9yLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKHJlc3VsdCkpKSA6IHJlc3VsdCk7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlcnMuc29tZShmdW5jdGlvbihidWZmZXIsIGkpIHsKICAgICAgICAgICAgICAgIHJldHVybiAhYnVmZmVyLmxlbmd0aCAmJiBjb21wbGV0ZWRbaV07CiAgICAgICAgICAgICAgfSkpIHsKICAgICAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICBjb21wbGV0ZWRbc291cmNlSW5kZXgyXSA9IHRydWU7CiAgICAgICAgICAgICFidWZmZXJzW3NvdXJjZUluZGV4Ml0ubGVuZ3RoICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0pKTsKICAgICAgICB9OwogICAgICAgIGZvciAodmFyIHNvdXJjZUluZGV4ID0gMDsgIXN1YnNjcmliZXIuY2xvc2VkICYmIHNvdXJjZUluZGV4IDwgc291cmNlcy5sZW5ndGg7IHNvdXJjZUluZGV4KyspIHsKICAgICAgICAgIF9sb29wXzEoc291cmNlSW5kZXgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICBidWZmZXJzID0gY29tcGxldGVkID0gbnVsbDsKICAgICAgICB9OwogICAgICB9KSA6IGVtcHR5XzEuRU1QVFk7CiAgICB9CiAgICBleHBvcnRzMi56aXAgPSB6aXA7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdHlwZXMuanMKdmFyIHJlcXVpcmVfdHlwZXMyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdHlwZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYXVkaXQuanMKdmFyIHJlcXVpcmVfYXVkaXQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYXVkaXQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmF1ZGl0ID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBhdWRpdChkdXJhdGlvblNlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICB2YXIgbGFzdFZhbHVlID0gbnVsbDsKICAgICAgICB2YXIgZHVyYXRpb25TdWJzY3JpYmVyID0gbnVsbDsKICAgICAgICB2YXIgaXNDb21wbGV0ZSA9IGZhbHNlOwogICAgICAgIHZhciBlbmREdXJhdGlvbiA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgZHVyYXRpb25TdWJzY3JpYmVyID09PSBudWxsIHx8IGR1cmF0aW9uU3Vic2NyaWJlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogZHVyYXRpb25TdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICBkdXJhdGlvblN1YnNjcmliZXIgPSBudWxsOwogICAgICAgICAgaWYgKGhhc1ZhbHVlKSB7CiAgICAgICAgICAgIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgICAgIHZhciB2YWx1ZSA9IGxhc3RWYWx1ZTsKICAgICAgICAgICAgbGFzdFZhbHVlID0gbnVsbDsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICAgIGlzQ29tcGxldGUgJiYgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH07CiAgICAgICAgdmFyIGNsZWFudXBEdXJhdGlvbiA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgZHVyYXRpb25TdWJzY3JpYmVyID0gbnVsbDsKICAgICAgICAgIGlzQ29tcGxldGUgJiYgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH07CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgIGxhc3RWYWx1ZSA9IHZhbHVlOwogICAgICAgICAgaWYgKCFkdXJhdGlvblN1YnNjcmliZXIpIHsKICAgICAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKGR1cmF0aW9uU2VsZWN0b3IodmFsdWUpKS5zdWJzY3JpYmUoZHVyYXRpb25TdWJzY3JpYmVyID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGVuZER1cmF0aW9uLCBjbGVhbnVwRHVyYXRpb24pKTsKICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIGlzQ29tcGxldGUgPSB0cnVlOwogICAgICAgICAgKCFoYXNWYWx1ZSB8fCAhZHVyYXRpb25TdWJzY3JpYmVyIHx8IGR1cmF0aW9uU3Vic2NyaWJlci5jbG9zZWQpICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuYXVkaXQgPSBhdWRpdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYXVkaXRUaW1lLmpzCnZhciByZXF1aXJlX2F1ZGl0VGltZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9hdWRpdFRpbWUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmF1ZGl0VGltZSA9IHZvaWQgMDsKICAgIHZhciBhc3luY18xID0gcmVxdWlyZV9hc3luYygpOwogICAgdmFyIGF1ZGl0XzEgPSByZXF1aXJlX2F1ZGl0KCk7CiAgICB2YXIgdGltZXJfMSA9IHJlcXVpcmVfdGltZXIoKTsKICAgIGZ1bmN0aW9uIGF1ZGl0VGltZShkdXJhdGlvbiwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgcmV0dXJuIGF1ZGl0XzEuYXVkaXQoZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHRpbWVyXzEudGltZXIoZHVyYXRpb24sIHNjaGVkdWxlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuYXVkaXRUaW1lID0gYXVkaXRUaW1lOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9idWZmZXIuanMKdmFyIHJlcXVpcmVfYnVmZmVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2J1ZmZlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYnVmZmVyID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICBmdW5jdGlvbiBidWZmZXIoY2xvc2luZ05vdGlmaWVyKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgY3VycmVudEJ1ZmZlciA9IFtdOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICByZXR1cm4gY3VycmVudEJ1ZmZlci5wdXNoKHZhbHVlKTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChjdXJyZW50QnVmZmVyKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKGNsb3NpbmdOb3RpZmllcikuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBiID0gY3VycmVudEJ1ZmZlcjsKICAgICAgICAgIGN1cnJlbnRCdWZmZXIgPSBbXTsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChiKTsKICAgICAgICB9LCBub29wXzEubm9vcCkpOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIGN1cnJlbnRCdWZmZXIgPSBudWxsOwogICAgICAgIH07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuYnVmZmVyID0gYnVmZmVyOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9idWZmZXJDb3VudC5qcwp2YXIgcmVxdWlyZV9idWZmZXJDb3VudCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9idWZmZXJDb3VudC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYnVmZmVyQ291bnQgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGFyclJlbW92ZV8xID0gcmVxdWlyZV9hcnJSZW1vdmUoKTsKICAgIGZ1bmN0aW9uIGJ1ZmZlckNvdW50KGJ1ZmZlclNpemUsIHN0YXJ0QnVmZmVyRXZlcnkpIHsKICAgICAgaWYgKHN0YXJ0QnVmZmVyRXZlcnkgPT09IHZvaWQgMCkgewogICAgICAgIHN0YXJ0QnVmZmVyRXZlcnkgPSBudWxsOwogICAgICB9CiAgICAgIHN0YXJ0QnVmZmVyRXZlcnkgPSBzdGFydEJ1ZmZlckV2ZXJ5ICE9PSBudWxsICYmIHN0YXJ0QnVmZmVyRXZlcnkgIT09IHZvaWQgMCA/IHN0YXJ0QnVmZmVyRXZlcnkgOiBidWZmZXJTaXplOwogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGJ1ZmZlcnMgPSBbXTsKICAgICAgICB2YXIgY291bnQgPSAwOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgZV8xLCBfYSwgZV8yLCBfYjsKICAgICAgICAgIHZhciB0b0VtaXQgPSBudWxsOwogICAgICAgICAgaWYgKGNvdW50KysgJSBzdGFydEJ1ZmZlckV2ZXJ5ID09PSAwKSB7CiAgICAgICAgICAgIGJ1ZmZlcnMucHVzaChbXSk7CiAgICAgICAgICB9CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBmb3IgKHZhciBidWZmZXJzXzEgPSBfX3ZhbHVlcyhidWZmZXJzKSwgYnVmZmVyc18xXzEgPSBidWZmZXJzXzEubmV4dCgpOyAhYnVmZmVyc18xXzEuZG9uZTsgYnVmZmVyc18xXzEgPSBidWZmZXJzXzEubmV4dCgpKSB7CiAgICAgICAgICAgICAgdmFyIGJ1ZmZlciA9IGJ1ZmZlcnNfMV8xLnZhbHVlOwogICAgICAgICAgICAgIGJ1ZmZlci5wdXNoKHZhbHVlKTsKICAgICAgICAgICAgICBpZiAoYnVmZmVyU2l6ZSA8PSBidWZmZXIubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICB0b0VtaXQgPSB0b0VtaXQgIT09IG51bGwgJiYgdG9FbWl0ICE9PSB2b2lkIDAgPyB0b0VtaXQgOiBbXTsKICAgICAgICAgICAgICAgIHRvRW1pdC5wdXNoKGJ1ZmZlcik7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9IGNhdGNoIChlXzFfMSkgewogICAgICAgICAgICBlXzEgPSB7IGVycm9yOiBlXzFfMSB9OwogICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICBpZiAoYnVmZmVyc18xXzEgJiYgIWJ1ZmZlcnNfMV8xLmRvbmUgJiYgKF9hID0gYnVmZmVyc18xLnJldHVybikpIF9hLmNhbGwoYnVmZmVyc18xKTsKICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICBpZiAoZV8xKSB0aHJvdyBlXzEuZXJyb3I7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmICh0b0VtaXQpIHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICBmb3IgKHZhciB0b0VtaXRfMSA9IF9fdmFsdWVzKHRvRW1pdCksIHRvRW1pdF8xXzEgPSB0b0VtaXRfMS5uZXh0KCk7ICF0b0VtaXRfMV8xLmRvbmU7IHRvRW1pdF8xXzEgPSB0b0VtaXRfMS5uZXh0KCkpIHsKICAgICAgICAgICAgICAgIHZhciBidWZmZXIgPSB0b0VtaXRfMV8xLnZhbHVlOwogICAgICAgICAgICAgICAgYXJyUmVtb3ZlXzEuYXJyUmVtb3ZlKGJ1ZmZlcnMsIGJ1ZmZlcik7CiAgICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoYnVmZmVyKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gY2F0Y2ggKGVfMl8xKSB7CiAgICAgICAgICAgICAgZV8yID0geyBlcnJvcjogZV8yXzEgfTsKICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgaWYgKHRvRW1pdF8xXzEgJiYgIXRvRW1pdF8xXzEuZG9uZSAmJiAoX2IgPSB0b0VtaXRfMS5yZXR1cm4pKSBfYi5jYWxsKHRvRW1pdF8xKTsKICAgICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgICAgaWYgKGVfMikgdGhyb3cgZV8yLmVycm9yOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgdmFyIGVfMywgX2E7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBmb3IgKHZhciBidWZmZXJzXzIgPSBfX3ZhbHVlcyhidWZmZXJzKSwgYnVmZmVyc18yXzEgPSBidWZmZXJzXzIubmV4dCgpOyAhYnVmZmVyc18yXzEuZG9uZTsgYnVmZmVyc18yXzEgPSBidWZmZXJzXzIubmV4dCgpKSB7CiAgICAgICAgICAgICAgdmFyIGJ1ZmZlciA9IGJ1ZmZlcnNfMl8xLnZhbHVlOwogICAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChidWZmZXIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGNhdGNoIChlXzNfMSkgewogICAgICAgICAgICBlXzMgPSB7IGVycm9yOiBlXzNfMSB9OwogICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICBpZiAoYnVmZmVyc18yXzEgJiYgIWJ1ZmZlcnNfMl8xLmRvbmUgJiYgKF9hID0gYnVmZmVyc18yLnJldHVybikpIF9hLmNhbGwoYnVmZmVyc18yKTsKICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICBpZiAoZV8zKSB0aHJvdyBlXzMuZXJyb3I7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgYnVmZmVycyA9IG51bGw7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmJ1ZmZlckNvdW50ID0gYnVmZmVyQ291bnQ7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2J1ZmZlclRpbWUuanMKdmFyIHJlcXVpcmVfYnVmZmVyVGltZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9idWZmZXJUaW1lLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fdmFsdWVzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX192YWx1ZXMgfHwgZnVuY3Rpb24obykgewogICAgICB2YXIgcyA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLml0ZXJhdG9yLCBtID0gcyAmJiBvW3NdLCBpID0gMDsKICAgICAgaWYgKG0pIHJldHVybiBtLmNhbGwobyk7CiAgICAgIGlmIChvICYmIHR5cGVvZiBvLmxlbmd0aCA9PT0gIm51bWJlciIpIHJldHVybiB7CiAgICAgICAgbmV4dDogZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAobyAmJiBpID49IG8ubGVuZ3RoKSBvID0gdm9pZCAwOwogICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG8gJiYgb1tpKytdLCBkb25lOiAhbyB9OwogICAgICAgIH0KICAgICAgfTsKICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihzID8gIk9iamVjdCBpcyBub3QgaXRlcmFibGUuIiA6ICJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5idWZmZXJUaW1lID0gdm9pZCAwOwogICAgdmFyIFN1YnNjcmlwdGlvbl8xID0gcmVxdWlyZV9TdWJzY3JpcHRpb24oKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgYXJyUmVtb3ZlXzEgPSByZXF1aXJlX2FyclJlbW92ZSgpOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgYXJnc18xID0gcmVxdWlyZV9hcmdzKCk7CiAgICB2YXIgZXhlY3V0ZVNjaGVkdWxlXzEgPSByZXF1aXJlX2V4ZWN1dGVTY2hlZHVsZSgpOwogICAgZnVuY3Rpb24gYnVmZmVyVGltZShidWZmZXJUaW1lU3BhbikgewogICAgICB2YXIgX2EsIF9iOwogICAgICB2YXIgb3RoZXJBcmdzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMTsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgb3RoZXJBcmdzW19pIC0gMV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHZhciBzY2hlZHVsZXIgPSAoX2EgPSBhcmdzXzEucG9wU2NoZWR1bGVyKG90aGVyQXJncykpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIHZhciBidWZmZXJDcmVhdGlvbkludGVydmFsID0gKF9iID0gb3RoZXJBcmdzWzBdKSAhPT0gbnVsbCAmJiBfYiAhPT0gdm9pZCAwID8gX2IgOiBudWxsOwogICAgICB2YXIgbWF4QnVmZmVyU2l6ZSA9IG90aGVyQXJnc1sxXSB8fCBJbmZpbml0eTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBidWZmZXJSZWNvcmRzID0gW107CiAgICAgICAgdmFyIHJlc3RhcnRPbkVtaXQgPSBmYWxzZTsKICAgICAgICB2YXIgZW1pdCA9IGZ1bmN0aW9uKHJlY29yZCkgewogICAgICAgICAgdmFyIGJ1ZmZlciA9IHJlY29yZC5idWZmZXIsIHN1YnMgPSByZWNvcmQuc3ViczsKICAgICAgICAgIHN1YnMudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIGFyclJlbW92ZV8xLmFyclJlbW92ZShidWZmZXJSZWNvcmRzLCByZWNvcmQpOwogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlcik7CiAgICAgICAgICByZXN0YXJ0T25FbWl0ICYmIHN0YXJ0QnVmZmVyKCk7CiAgICAgICAgfTsKICAgICAgICB2YXIgc3RhcnRCdWZmZXIgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChidWZmZXJSZWNvcmRzKSB7CiAgICAgICAgICAgIHZhciBzdWJzID0gbmV3IFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbigpOwogICAgICAgICAgICBzdWJzY3JpYmVyLmFkZChzdWJzKTsKICAgICAgICAgICAgdmFyIGJ1ZmZlciA9IFtdOwogICAgICAgICAgICB2YXIgcmVjb3JkXzEgPSB7CiAgICAgICAgICAgICAgYnVmZmVyLAogICAgICAgICAgICAgIHN1YnMKICAgICAgICAgICAgfTsKICAgICAgICAgICAgYnVmZmVyUmVjb3Jkcy5wdXNoKHJlY29yZF8xKTsKICAgICAgICAgICAgZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnMsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGVtaXQocmVjb3JkXzEpOwogICAgICAgICAgICB9LCBidWZmZXJUaW1lU3Bhbik7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBpZiAoYnVmZmVyQ3JlYXRpb25JbnRlcnZhbCAhPT0gbnVsbCAmJiBidWZmZXJDcmVhdGlvbkludGVydmFsID49IDApIHsKICAgICAgICAgIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIHN0YXJ0QnVmZmVyLCBidWZmZXJDcmVhdGlvbkludGVydmFsLCB0cnVlKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmVzdGFydE9uRW1pdCA9IHRydWU7CiAgICAgICAgfQogICAgICAgIHN0YXJ0QnVmZmVyKCk7CiAgICAgICAgdmFyIGJ1ZmZlclRpbWVTdWJzY3JpYmVyID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgZV8xLCBfYTI7CiAgICAgICAgICB2YXIgcmVjb3Jkc0NvcHkgPSBidWZmZXJSZWNvcmRzLnNsaWNlKCk7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBmb3IgKHZhciByZWNvcmRzQ29weV8xID0gX192YWx1ZXMocmVjb3Jkc0NvcHkpLCByZWNvcmRzQ29weV8xXzEgPSByZWNvcmRzQ29weV8xLm5leHQoKTsgIXJlY29yZHNDb3B5XzFfMS5kb25lOyByZWNvcmRzQ29weV8xXzEgPSByZWNvcmRzQ29weV8xLm5leHQoKSkgewogICAgICAgICAgICAgIHZhciByZWNvcmQgPSByZWNvcmRzQ29weV8xXzEudmFsdWU7CiAgICAgICAgICAgICAgdmFyIGJ1ZmZlciA9IHJlY29yZC5idWZmZXI7CiAgICAgICAgICAgICAgYnVmZmVyLnB1c2godmFsdWUpOwogICAgICAgICAgICAgIG1heEJ1ZmZlclNpemUgPD0gYnVmZmVyLmxlbmd0aCAmJiBlbWl0KHJlY29yZCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gY2F0Y2ggKGVfMV8xKSB7CiAgICAgICAgICAgIGVfMSA9IHsgZXJyb3I6IGVfMV8xIH07CiAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgIGlmIChyZWNvcmRzQ29weV8xXzEgJiYgIXJlY29yZHNDb3B5XzFfMS5kb25lICYmIChfYTIgPSByZWNvcmRzQ29weV8xLnJldHVybikpIF9hMi5jYWxsKHJlY29yZHNDb3B5XzEpOwogICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgIGlmIChlXzEpIHRocm93IGVfMS5lcnJvcjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2hpbGUgKGJ1ZmZlclJlY29yZHMgPT09IG51bGwgfHwgYnVmZmVyUmVjb3JkcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogYnVmZmVyUmVjb3Jkcy5sZW5ndGgpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlclJlY29yZHMuc2hpZnQoKS5idWZmZXIpOwogICAgICAgICAgfQogICAgICAgICAgYnVmZmVyVGltZVN1YnNjcmliZXIgPT09IG51bGwgfHwgYnVmZmVyVGltZVN1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGJ1ZmZlclRpbWVTdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICBzdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBidWZmZXJSZWNvcmRzID0gbnVsbDsKICAgICAgICB9KTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKGJ1ZmZlclRpbWVTdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5idWZmZXJUaW1lID0gYnVmZmVyVGltZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYnVmZmVyVG9nZ2xlLmpzCnZhciByZXF1aXJlX2J1ZmZlclRvZ2dsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9idWZmZXJUb2dnbGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX192YWx1ZXMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3ZhbHVlcyB8fCBmdW5jdGlvbihvKSB7CiAgICAgIHZhciBzID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBTeW1ib2wuaXRlcmF0b3IsIG0gPSBzICYmIG9bc10sIGkgPSAwOwogICAgICBpZiAobSkgcmV0dXJuIG0uY2FsbChvKTsKICAgICAgaWYgKG8gJiYgdHlwZW9mIG8ubGVuZ3RoID09PSAibnVtYmVyIikgcmV0dXJuIHsKICAgICAgICBuZXh0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChvICYmIGkgPj0gby5sZW5ndGgpIG8gPSB2b2lkIDA7CiAgICAgICAgICByZXR1cm4geyB2YWx1ZTogbyAmJiBvW2krK10sIGRvbmU6ICFvIH07CiAgICAgICAgfQogICAgICB9OwogICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKHMgPyAiT2JqZWN0IGlzIG5vdCBpdGVyYWJsZS4iIDogIlN5bWJvbC5pdGVyYXRvciBpcyBub3QgZGVmaW5lZC4iKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmJ1ZmZlclRvZ2dsZSA9IHZvaWQgMDsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBhcnJSZW1vdmVfMSA9IHJlcXVpcmVfYXJyUmVtb3ZlKCk7CiAgICBmdW5jdGlvbiBidWZmZXJUb2dnbGUob3BlbmluZ3MsIGNsb3NpbmdTZWxlY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGJ1ZmZlcnMgPSBbXTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20ob3BlbmluZ3MpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24ob3BlblZhbHVlKSB7CiAgICAgICAgICB2YXIgYnVmZmVyID0gW107CiAgICAgICAgICBidWZmZXJzLnB1c2goYnVmZmVyKTsKICAgICAgICAgIHZhciBjbG9zaW5nU3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbigpOwogICAgICAgICAgdmFyIGVtaXRCdWZmZXIgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgYXJyUmVtb3ZlXzEuYXJyUmVtb3ZlKGJ1ZmZlcnMsIGJ1ZmZlcik7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChidWZmZXIpOwogICAgICAgICAgICBjbG9zaW5nU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9OwogICAgICAgICAgY2xvc2luZ1N1YnNjcmlwdGlvbi5hZGQoaW5uZXJGcm9tXzEuaW5uZXJGcm9tKGNsb3NpbmdTZWxlY3RvcihvcGVuVmFsdWUpKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGVtaXRCdWZmZXIsIG5vb3BfMS5ub29wKSkpOwogICAgICAgIH0sIG5vb3BfMS5ub29wKSk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciBlXzEsIF9hOwogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgZm9yICh2YXIgYnVmZmVyc18xID0gX192YWx1ZXMoYnVmZmVycyksIGJ1ZmZlcnNfMV8xID0gYnVmZmVyc18xLm5leHQoKTsgIWJ1ZmZlcnNfMV8xLmRvbmU7IGJ1ZmZlcnNfMV8xID0gYnVmZmVyc18xLm5leHQoKSkgewogICAgICAgICAgICAgIHZhciBidWZmZXIgPSBidWZmZXJzXzFfMS52YWx1ZTsKICAgICAgICAgICAgICBidWZmZXIucHVzaCh2YWx1ZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gY2F0Y2ggKGVfMV8xKSB7CiAgICAgICAgICAgIGVfMSA9IHsgZXJyb3I6IGVfMV8xIH07CiAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgIGlmIChidWZmZXJzXzFfMSAmJiAhYnVmZmVyc18xXzEuZG9uZSAmJiAoX2EgPSBidWZmZXJzXzEucmV0dXJuKSkgX2EuY2FsbChidWZmZXJzXzEpOwogICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgIGlmIChlXzEpIHRocm93IGVfMS5lcnJvcjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2hpbGUgKGJ1ZmZlcnMubGVuZ3RoID4gMCkgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoYnVmZmVycy5zaGlmdCgpKTsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuYnVmZmVyVG9nZ2xlID0gYnVmZmVyVG9nZ2xlOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9idWZmZXJXaGVuLmpzCnZhciByZXF1aXJlX2J1ZmZlcldoZW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYnVmZmVyV2hlbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYnVmZmVyV2hlbiA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gYnVmZmVyV2hlbihjbG9zaW5nU2VsZWN0b3IpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBidWZmZXIgPSBudWxsOwogICAgICAgIHZhciBjbG9zaW5nU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgdmFyIG9wZW5CdWZmZXIgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGNsb3NpbmdTdWJzY3JpYmVyID09PSBudWxsIHx8IGNsb3NpbmdTdWJzY3JpYmVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBjbG9zaW5nU3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgdmFyIGIgPSBidWZmZXI7CiAgICAgICAgICBidWZmZXIgPSBbXTsKICAgICAgICAgIGIgJiYgc3Vic2NyaWJlci5uZXh0KGIpOwogICAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKGNsb3NpbmdTZWxlY3RvcigpKS5zdWJzY3JpYmUoY2xvc2luZ1N1YnNjcmliZXIgPSBPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgb3BlbkJ1ZmZlciwgbm9vcF8xLm5vb3ApKTsKICAgICAgICB9OwogICAgICAgIG9wZW5CdWZmZXIoKTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuIGJ1ZmZlciA9PT0gbnVsbCB8fCBidWZmZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGJ1ZmZlci5wdXNoKHZhbHVlKTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIGJ1ZmZlciAmJiBzdWJzY3JpYmVyLm5leHQoYnVmZmVyKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIGJ1ZmZlciA9IGNsb3NpbmdTdWJzY3JpYmVyID0gbnVsbDsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuYnVmZmVyV2hlbiA9IGJ1ZmZlcldoZW47CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NhdGNoRXJyb3IuanMKdmFyIHJlcXVpcmVfY2F0Y2hFcnJvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jYXRjaEVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jYXRjaEVycm9yID0gdm9pZCAwOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICBmdW5jdGlvbiBjYXRjaEVycm9yKHNlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5uZXJTdWIgPSBudWxsOwogICAgICAgIHZhciBzeW5jVW5zdWIgPSBmYWxzZTsKICAgICAgICB2YXIgaGFuZGxlZFJlc3VsdDsKICAgICAgICBpbm5lclN1YiA9IHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIGhhbmRsZWRSZXN1bHQgPSBpbm5lckZyb21fMS5pbm5lckZyb20oc2VsZWN0b3IoZXJyLCBjYXRjaEVycm9yKHNlbGVjdG9yKShzb3VyY2UpKSk7CiAgICAgICAgICBpZiAoaW5uZXJTdWIpIHsKICAgICAgICAgICAgaW5uZXJTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgaW5uZXJTdWIgPSBudWxsOwogICAgICAgICAgICBoYW5kbGVkUmVzdWx0LnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHN5bmNVbnN1YiA9IHRydWU7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICAgIGlmIChzeW5jVW5zdWIpIHsKICAgICAgICAgIGlubmVyU3ViLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICBpbm5lclN1YiA9IG51bGw7CiAgICAgICAgICBoYW5kbGVkUmVzdWx0LnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuY2F0Y2hFcnJvciA9IGNhdGNoRXJyb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NjYW5JbnRlcm5hbHMuanMKdmFyIHJlcXVpcmVfc2NhbkludGVybmFscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zY2FuSW50ZXJuYWxzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zY2FuSW50ZXJuYWxzID0gdm9pZCAwOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHNjYW5JbnRlcm5hbHMoYWNjdW11bGF0b3IsIHNlZWQsIGhhc1NlZWQsIGVtaXRPbk5leHQsIGVtaXRCZWZvcmVDb21wbGV0ZSkgewogICAgICByZXR1cm4gZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhc1N0YXRlID0gaGFzU2VlZDsKICAgICAgICB2YXIgc3RhdGUgPSBzZWVkOwogICAgICAgIHZhciBpbmRleCA9IDA7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciBpID0gaW5kZXgrKzsKICAgICAgICAgIHN0YXRlID0gaGFzU3RhdGUgPyBhY2N1bXVsYXRvcihzdGF0ZSwgdmFsdWUsIGkpIDogKGhhc1N0YXRlID0gdHJ1ZSwgdmFsdWUpOwogICAgICAgICAgZW1pdE9uTmV4dCAmJiBzdWJzY3JpYmVyLm5leHQoc3RhdGUpOwogICAgICAgIH0sIGVtaXRCZWZvcmVDb21wbGV0ZSAmJiBmdW5jdGlvbigpIHsKICAgICAgICAgIGhhc1N0YXRlICYmIHN1YnNjcmliZXIubmV4dChzdGF0ZSk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuc2NhbkludGVybmFscyA9IHNjYW5JbnRlcm5hbHM7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlZHVjZS5qcwp2YXIgcmVxdWlyZV9yZWR1Y2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcmVkdWNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yZWR1Y2UgPSB2b2lkIDA7CiAgICB2YXIgc2NhbkludGVybmFsc18xID0gcmVxdWlyZV9zY2FuSW50ZXJuYWxzKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICBmdW5jdGlvbiByZWR1Y2UoYWNjdW11bGF0b3IsIHNlZWQpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKHNjYW5JbnRlcm5hbHNfMS5zY2FuSW50ZXJuYWxzKGFjY3VtdWxhdG9yLCBzZWVkLCBhcmd1bWVudHMubGVuZ3RoID49IDIsIGZhbHNlLCB0cnVlKSk7CiAgICB9CiAgICBleHBvcnRzMi5yZWR1Y2UgPSByZWR1Y2U7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3RvQXJyYXkuanMKdmFyIHJlcXVpcmVfdG9BcnJheSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90b0FycmF5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50b0FycmF5ID0gdm9pZCAwOwogICAgdmFyIHJlZHVjZV8xID0gcmVxdWlyZV9yZWR1Y2UoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBhcnJSZWR1Y2VyID0gZnVuY3Rpb24oYXJyLCB2YWx1ZSkgewogICAgICByZXR1cm4gYXJyLnB1c2godmFsdWUpLCBhcnI7CiAgICB9OwogICAgZnVuY3Rpb24gdG9BcnJheSgpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHJlZHVjZV8xLnJlZHVjZShhcnJSZWR1Y2VyLCBbXSkoc291cmNlKS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudG9BcnJheSA9IHRvQXJyYXk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2pvaW5BbGxJbnRlcm5hbHMuanMKdmFyIHJlcXVpcmVfam9pbkFsbEludGVybmFscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9qb2luQWxsSW50ZXJuYWxzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5qb2luQWxsSW50ZXJuYWxzID0gdm9pZCAwOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICB2YXIgbWFwT25lT3JNYW55QXJnc18xID0gcmVxdWlyZV9tYXBPbmVPck1hbnlBcmdzKCk7CiAgICB2YXIgcGlwZV8xID0gcmVxdWlyZV9waXBlKCk7CiAgICB2YXIgbWVyZ2VNYXBfMSA9IHJlcXVpcmVfbWVyZ2VNYXAoKTsKICAgIHZhciB0b0FycmF5XzEgPSByZXF1aXJlX3RvQXJyYXkoKTsKICAgIGZ1bmN0aW9uIGpvaW5BbGxJbnRlcm5hbHMoam9pbkZuLCBwcm9qZWN0KSB7CiAgICAgIHJldHVybiBwaXBlXzEucGlwZSh0b0FycmF5XzEudG9BcnJheSgpLCBtZXJnZU1hcF8xLm1lcmdlTWFwKGZ1bmN0aW9uKHNvdXJjZXMpIHsKICAgICAgICByZXR1cm4gam9pbkZuKHNvdXJjZXMpOwogICAgICB9KSwgcHJvamVjdCA/IG1hcE9uZU9yTWFueUFyZ3NfMS5tYXBPbmVPck1hbnlBcmdzKHByb2plY3QpIDogaWRlbnRpdHlfMS5pZGVudGl0eSk7CiAgICB9CiAgICBleHBvcnRzMi5qb2luQWxsSW50ZXJuYWxzID0gam9pbkFsbEludGVybmFsczsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29tYmluZUxhdGVzdEFsbC5qcwp2YXIgcmVxdWlyZV9jb21iaW5lTGF0ZXN0QWxsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbWJpbmVMYXRlc3RBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbWJpbmVMYXRlc3RBbGwgPSB2b2lkIDA7CiAgICB2YXIgY29tYmluZUxhdGVzdF8xID0gcmVxdWlyZV9jb21iaW5lTGF0ZXN0KCk7CiAgICB2YXIgam9pbkFsbEludGVybmFsc18xID0gcmVxdWlyZV9qb2luQWxsSW50ZXJuYWxzKCk7CiAgICBmdW5jdGlvbiBjb21iaW5lTGF0ZXN0QWxsKHByb2plY3QpIHsKICAgICAgcmV0dXJuIGpvaW5BbGxJbnRlcm5hbHNfMS5qb2luQWxsSW50ZXJuYWxzKGNvbWJpbmVMYXRlc3RfMS5jb21iaW5lTGF0ZXN0LCBwcm9qZWN0KTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbWJpbmVMYXRlc3RBbGwgPSBjb21iaW5lTGF0ZXN0QWxsOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb21iaW5lQWxsLmpzCnZhciByZXF1aXJlX2NvbWJpbmVBbGwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29tYmluZUFsbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29tYmluZUFsbCA9IHZvaWQgMDsKICAgIHZhciBjb21iaW5lTGF0ZXN0QWxsXzEgPSByZXF1aXJlX2NvbWJpbmVMYXRlc3RBbGwoKTsKICAgIGV4cG9ydHMyLmNvbWJpbmVBbGwgPSBjb21iaW5lTGF0ZXN0QWxsXzEuY29tYmluZUxhdGVzdEFsbDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29tYmluZUxhdGVzdC5qcwp2YXIgcmVxdWlyZV9jb21iaW5lTGF0ZXN0MiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb21iaW5lTGF0ZXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb21iaW5lTGF0ZXN0ID0gdm9pZCAwOwogICAgdmFyIGNvbWJpbmVMYXRlc3RfMSA9IHJlcXVpcmVfY29tYmluZUxhdGVzdCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIGFyZ3NPckFyZ0FycmF5XzEgPSByZXF1aXJlX2FyZ3NPckFyZ0FycmF5KCk7CiAgICB2YXIgbWFwT25lT3JNYW55QXJnc18xID0gcmVxdWlyZV9tYXBPbmVPck1hbnlBcmdzKCk7CiAgICB2YXIgcGlwZV8xID0gcmVxdWlyZV9waXBlKCk7CiAgICB2YXIgYXJnc18xID0gcmVxdWlyZV9hcmdzKCk7CiAgICBmdW5jdGlvbiBjb21iaW5lTGF0ZXN0KCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgcmVzdWx0U2VsZWN0b3IgPSBhcmdzXzEucG9wUmVzdWx0U2VsZWN0b3IoYXJncyk7CiAgICAgIHJldHVybiByZXN1bHRTZWxlY3RvciA/IHBpcGVfMS5waXBlKGNvbWJpbmVMYXRlc3QuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQoYXJncykpKSwgbWFwT25lT3JNYW55QXJnc18xLm1hcE9uZU9yTWFueUFyZ3MocmVzdWx0U2VsZWN0b3IpKSA6IGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIGNvbWJpbmVMYXRlc3RfMS5jb21iaW5lTGF0ZXN0SW5pdChfX3NwcmVhZEFycmF5KFtzb3VyY2VdLCBfX3JlYWQoYXJnc09yQXJnQXJyYXlfMS5hcmdzT3JBcmdBcnJheShhcmdzKSkpKShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5jb21iaW5lTGF0ZXN0ID0gY29tYmluZUxhdGVzdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29tYmluZUxhdGVzdFdpdGguanMKdmFyIHJlcXVpcmVfY29tYmluZUxhdGVzdFdpdGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29tYmluZUxhdGVzdFdpdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbWJpbmVMYXRlc3RXaXRoID0gdm9pZCAwOwogICAgdmFyIGNvbWJpbmVMYXRlc3RfMSA9IHJlcXVpcmVfY29tYmluZUxhdGVzdDIoKTsKICAgIGZ1bmN0aW9uIGNvbWJpbmVMYXRlc3RXaXRoKCkgewogICAgICB2YXIgb3RoZXJTb3VyY2VzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgb3RoZXJTb3VyY2VzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbWJpbmVMYXRlc3RfMS5jb21iaW5lTGF0ZXN0LmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKG90aGVyU291cmNlcykpKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbWJpbmVMYXRlc3RXaXRoID0gY29tYmluZUxhdGVzdFdpdGg7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbmNhdE1hcC5qcwp2YXIgcmVxdWlyZV9jb25jYXRNYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29uY2F0TWFwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb25jYXRNYXAgPSB2b2lkIDA7CiAgICB2YXIgbWVyZ2VNYXBfMSA9IHJlcXVpcmVfbWVyZ2VNYXAoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIGZ1bmN0aW9uIGNvbmNhdE1hcChwcm9qZWN0LCByZXN1bHRTZWxlY3RvcikgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ocmVzdWx0U2VsZWN0b3IpID8gbWVyZ2VNYXBfMS5tZXJnZU1hcChwcm9qZWN0LCByZXN1bHRTZWxlY3RvciwgMSkgOiBtZXJnZU1hcF8xLm1lcmdlTWFwKHByb2plY3QsIDEpOwogICAgfQogICAgZXhwb3J0czIuY29uY2F0TWFwID0gY29uY2F0TWFwOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRNYXBUby5qcwp2YXIgcmVxdWlyZV9jb25jYXRNYXBUbyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRNYXBUby5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29uY2F0TWFwVG8gPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0TWFwXzEgPSByZXF1aXJlX2NvbmNhdE1hcCgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gY29uY2F0TWFwVG8oaW5uZXJPYnNlcnZhYmxlLCByZXN1bHRTZWxlY3RvcikgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ocmVzdWx0U2VsZWN0b3IpID8gY29uY2F0TWFwXzEuY29uY2F0TWFwKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBpbm5lck9ic2VydmFibGU7CiAgICAgIH0sIHJlc3VsdFNlbGVjdG9yKSA6IGNvbmNhdE1hcF8xLmNvbmNhdE1hcChmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gaW5uZXJPYnNlcnZhYmxlOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbmNhdE1hcFRvID0gY29uY2F0TWFwVG87CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbmNhdC5qcwp2YXIgcmVxdWlyZV9jb25jYXQyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbmNhdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29uY2F0ID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIGNvbmNhdEFsbF8xID0gcmVxdWlyZV9jb25jYXRBbGwoKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBmcm9tXzEgPSByZXF1aXJlX2Zyb20oKTsKICAgIGZ1bmN0aW9uIGNvbmNhdCgpIHsKICAgICAgdmFyIGFyZ3MgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHNjaGVkdWxlciA9IGFyZ3NfMS5wb3BTY2hlZHVsZXIoYXJncyk7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBjb25jYXRBbGxfMS5jb25jYXRBbGwoKShmcm9tXzEuZnJvbShfX3NwcmVhZEFycmF5KFtzb3VyY2VdLCBfX3JlYWQoYXJncykpLCBzY2hlZHVsZXIpKS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuY29uY2F0ID0gY29uY2F0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRXaXRoLmpzCnZhciByZXF1aXJlX2NvbmNhdFdpdGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29uY2F0V2l0aC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29uY2F0V2l0aCA9IHZvaWQgMDsKICAgIHZhciBjb25jYXRfMSA9IHJlcXVpcmVfY29uY2F0MigpOwogICAgZnVuY3Rpb24gY29uY2F0V2l0aCgpIHsKICAgICAgdmFyIG90aGVyU291cmNlcyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIG90aGVyU291cmNlc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHJldHVybiBjb25jYXRfMS5jb25jYXQuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQob3RoZXJTb3VyY2VzKSkpOwogICAgfQogICAgZXhwb3J0czIuY29uY2F0V2l0aCA9IGNvbmNhdFdpdGg7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9mcm9tU3Vic2NyaWJhYmxlLmpzCnZhciByZXF1aXJlX2Zyb21TdWJzY3JpYmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2Zyb21TdWJzY3JpYmFibGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZyb21TdWJzY3JpYmFibGUgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBmcm9tU3Vic2NyaWJhYmxlKHN1YnNjcmliYWJsZSkgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gc3Vic2NyaWJhYmxlLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tU3Vic2NyaWJhYmxlID0gZnJvbVN1YnNjcmliYWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29ubmVjdC5qcwp2YXIgcmVxdWlyZV9jb25uZWN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2Nvbm5lY3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbm5lY3QgPSB2b2lkIDA7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIGZyb21TdWJzY3JpYmFibGVfMSA9IHJlcXVpcmVfZnJvbVN1YnNjcmliYWJsZSgpOwogICAgdmFyIERFRkFVTFRfQ09ORklHID0gewogICAgICBjb25uZWN0b3I6IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBuZXcgU3ViamVjdF8xLlN1YmplY3QoKTsKICAgICAgfQogICAgfTsKICAgIGZ1bmN0aW9uIGNvbm5lY3Qoc2VsZWN0b3IsIGNvbmZpZykgewogICAgICBpZiAoY29uZmlnID09PSB2b2lkIDApIHsKICAgICAgICBjb25maWcgPSBERUZBVUxUX0NPTkZJRzsKICAgICAgfQogICAgICB2YXIgY29ubmVjdG9yID0gY29uZmlnLmNvbm5lY3RvcjsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBzdWJqZWN0ID0gY29ubmVjdG9yKCk7CiAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHNlbGVjdG9yKGZyb21TdWJzY3JpYmFibGVfMS5mcm9tU3Vic2NyaWJhYmxlKHN1YmplY3QpKSkuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICAgIHN1YnNjcmliZXIuYWRkKHNvdXJjZS5zdWJzY3JpYmUoc3ViamVjdCkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbm5lY3QgPSBjb25uZWN0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb3VudC5qcwp2YXIgcmVxdWlyZV9jb3VudCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb3VudC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY291bnQgPSB2b2lkIDA7CiAgICB2YXIgcmVkdWNlXzEgPSByZXF1aXJlX3JlZHVjZSgpOwogICAgZnVuY3Rpb24gY291bnQocHJlZGljYXRlKSB7CiAgICAgIHJldHVybiByZWR1Y2VfMS5yZWR1Y2UoZnVuY3Rpb24odG90YWwsIHZhbHVlLCBpKSB7CiAgICAgICAgcmV0dXJuICFwcmVkaWNhdGUgfHwgcHJlZGljYXRlKHZhbHVlLCBpKSA/IHRvdGFsICsgMSA6IHRvdGFsOwogICAgICB9LCAwKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvdW50ID0gY291bnQ7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlYm91bmNlLmpzCnZhciByZXF1aXJlX2RlYm91bmNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlYm91bmNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWJvdW5jZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gZGVib3VuY2UoZHVyYXRpb25TZWxlY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgdmFyIGR1cmF0aW9uU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgdmFyIGVtaXQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBkdXJhdGlvblN1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGR1cmF0aW9uU3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgZHVyYXRpb25TdWJzY3JpYmVyID0gbnVsbDsKICAgICAgICAgIGlmIChoYXNWYWx1ZSkgewogICAgICAgICAgICBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgICAgICB2YXIgdmFsdWUgPSBsYXN0VmFsdWU7CiAgICAgICAgICAgIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgZHVyYXRpb25TdWJzY3JpYmVyID09PSBudWxsIHx8IGR1cmF0aW9uU3Vic2NyaWJlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogZHVyYXRpb25TdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICBoYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICBsYXN0VmFsdWUgPSB2YWx1ZTsKICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBlbWl0LCBub29wXzEubm9vcCk7CiAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oZHVyYXRpb25TZWxlY3Rvcih2YWx1ZSkpLnN1YnNjcmliZShkdXJhdGlvblN1YnNjcmliZXIpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgZW1pdCgpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0sIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBsYXN0VmFsdWUgPSBkdXJhdGlvblN1YnNjcmliZXIgPSBudWxsOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5kZWJvdW5jZSA9IGRlYm91bmNlOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZWJvdW5jZVRpbWUuanMKdmFyIHJlcXVpcmVfZGVib3VuY2VUaW1lID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlYm91bmNlVGltZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGVib3VuY2VUaW1lID0gdm9pZCAwOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gZGVib3VuY2VUaW1lKGR1ZVRpbWUsIHNjaGVkdWxlcikgewogICAgICBpZiAoc2NoZWR1bGVyID09PSB2b2lkIDApIHsKICAgICAgICBzY2hlZHVsZXIgPSBhc3luY18xLmFzeW5jU2NoZWR1bGVyOwogICAgICB9CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgYWN0aXZlVGFzayA9IG51bGw7CiAgICAgICAgdmFyIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgdmFyIGxhc3RUaW1lID0gbnVsbDsKICAgICAgICB2YXIgZW1pdCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKGFjdGl2ZVRhc2spIHsKICAgICAgICAgICAgYWN0aXZlVGFzay51bnN1YnNjcmliZSgpOwogICAgICAgICAgICBhY3RpdmVUYXNrID0gbnVsbDsKICAgICAgICAgICAgdmFyIHZhbHVlID0gbGFzdFZhbHVlOwogICAgICAgICAgICBsYXN0VmFsdWUgPSBudWxsOwogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgZnVuY3Rpb24gZW1pdFdoZW5JZGxlKCkgewogICAgICAgICAgdmFyIHRhcmdldFRpbWUgPSBsYXN0VGltZSArIGR1ZVRpbWU7CiAgICAgICAgICB2YXIgbm93ID0gc2NoZWR1bGVyLm5vdygpOwogICAgICAgICAgaWYgKG5vdyA8IHRhcmdldFRpbWUpIHsKICAgICAgICAgICAgYWN0aXZlVGFzayA9IHRoaXMuc2NoZWR1bGUodm9pZCAwLCB0YXJnZXRUaW1lIC0gbm93KTsKICAgICAgICAgICAgc3Vic2NyaWJlci5hZGQoYWN0aXZlVGFzayk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGVtaXQoKTsKICAgICAgICB9CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGxhc3RWYWx1ZSA9IHZhbHVlOwogICAgICAgICAgbGFzdFRpbWUgPSBzY2hlZHVsZXIubm93KCk7CiAgICAgICAgICBpZiAoIWFjdGl2ZVRhc2spIHsKICAgICAgICAgICAgYWN0aXZlVGFzayA9IHNjaGVkdWxlci5zY2hlZHVsZShlbWl0V2hlbklkbGUsIGR1ZVRpbWUpOwogICAgICAgICAgICBzdWJzY3JpYmVyLmFkZChhY3RpdmVUYXNrKTsKICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIGVtaXQoKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgbGFzdFZhbHVlID0gYWN0aXZlVGFzayA9IG51bGw7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRlYm91bmNlVGltZSA9IGRlYm91bmNlVGltZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVmYXVsdElmRW1wdHkuanMKdmFyIHJlcXVpcmVfZGVmYXVsdElmRW1wdHkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVmYXVsdElmRW1wdHkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlZmF1bHRJZkVtcHR5ID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGRlZmF1bHRJZkVtcHR5KGRlZmF1bHRWYWx1ZSkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoIWhhc1ZhbHVlKSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChkZWZhdWx0VmFsdWUpOwogICAgICAgICAgfQogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5kZWZhdWx0SWZFbXB0eSA9IGRlZmF1bHRJZkVtcHR5OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90YWtlLmpzCnZhciByZXF1aXJlX3Rha2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFrZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGFrZSA9IHZvaWQgMDsKICAgIHZhciBlbXB0eV8xID0gcmVxdWlyZV9lbXB0eSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHRha2UoY291bnQpIHsKICAgICAgcmV0dXJuIGNvdW50IDw9IDAgPyBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gZW1wdHlfMS5FTVBUWTsKICAgICAgfSA6IGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBzZWVuID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgaWYgKCsrc2VlbiA8PSBjb3VudCkgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgICBpZiAoY291bnQgPD0gc2VlbikgewogICAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50YWtlID0gdGFrZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvaWdub3JlRWxlbWVudHMuanMKdmFyIHJlcXVpcmVfaWdub3JlRWxlbWVudHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvaWdub3JlRWxlbWVudHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmlnbm9yZUVsZW1lbnRzID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIGZ1bmN0aW9uIGlnbm9yZUVsZW1lbnRzKCkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgbm9vcF8xLm5vb3ApKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5pZ25vcmVFbGVtZW50cyA9IGlnbm9yZUVsZW1lbnRzOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tYXBUby5qcwp2YXIgcmVxdWlyZV9tYXBUbyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tYXBUby5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWFwVG8gPSB2b2lkIDA7CiAgICB2YXIgbWFwXzEgPSByZXF1aXJlX21hcCgpOwogICAgZnVuY3Rpb24gbWFwVG8odmFsdWUpIHsKICAgICAgcmV0dXJuIG1hcF8xLm1hcChmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIubWFwVG8gPSBtYXBUbzsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVsYXlXaGVuLmpzCnZhciByZXF1aXJlX2RlbGF5V2hlbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZWxheVdoZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlbGF5V2hlbiA9IHZvaWQgMDsKICAgIHZhciBjb25jYXRfMSA9IHJlcXVpcmVfY29uY2F0KCk7CiAgICB2YXIgdGFrZV8xID0gcmVxdWlyZV90YWtlKCk7CiAgICB2YXIgaWdub3JlRWxlbWVudHNfMSA9IHJlcXVpcmVfaWdub3JlRWxlbWVudHMoKTsKICAgIHZhciBtYXBUb18xID0gcmVxdWlyZV9tYXBUbygpOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gZGVsYXlXaGVuKGRlbGF5RHVyYXRpb25TZWxlY3Rvciwgc3Vic2NyaXB0aW9uRGVsYXkpIHsKICAgICAgaWYgKHN1YnNjcmlwdGlvbkRlbGF5KSB7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgICAgcmV0dXJuIGNvbmNhdF8xLmNvbmNhdChzdWJzY3JpcHRpb25EZWxheS5waXBlKHRha2VfMS50YWtlKDEpLCBpZ25vcmVFbGVtZW50c18xLmlnbm9yZUVsZW1lbnRzKCkpLCBzb3VyY2UucGlwZShkZWxheVdoZW4oZGVsYXlEdXJhdGlvblNlbGVjdG9yKSkpOwogICAgICAgIH07CiAgICAgIH0KICAgICAgcmV0dXJuIG1lcmdlTWFwXzEubWVyZ2VNYXAoZnVuY3Rpb24odmFsdWUsIGluZGV4KSB7CiAgICAgICAgcmV0dXJuIGlubmVyRnJvbV8xLmlubmVyRnJvbShkZWxheUR1cmF0aW9uU2VsZWN0b3IodmFsdWUsIGluZGV4KSkucGlwZSh0YWtlXzEudGFrZSgxKSwgbWFwVG9fMS5tYXBUbyh2YWx1ZSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRlbGF5V2hlbiA9IGRlbGF5V2hlbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVsYXkuanMKdmFyIHJlcXVpcmVfZGVsYXkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVsYXkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlbGF5ID0gdm9pZCAwOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgZGVsYXlXaGVuXzEgPSByZXF1aXJlX2RlbGF5V2hlbigpOwogICAgdmFyIHRpbWVyXzEgPSByZXF1aXJlX3RpbWVyKCk7CiAgICBmdW5jdGlvbiBkZWxheShkdWUsIHNjaGVkdWxlcikgewogICAgICBpZiAoc2NoZWR1bGVyID09PSB2b2lkIDApIHsKICAgICAgICBzY2hlZHVsZXIgPSBhc3luY18xLmFzeW5jU2NoZWR1bGVyOwogICAgICB9CiAgICAgIHZhciBkdXJhdGlvbiA9IHRpbWVyXzEudGltZXIoZHVlLCBzY2hlZHVsZXIpOwogICAgICByZXR1cm4gZGVsYXlXaGVuXzEuZGVsYXlXaGVuKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBkdXJhdGlvbjsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5kZWxheSA9IGRlbGF5OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZW1hdGVyaWFsaXplLmpzCnZhciByZXF1aXJlX2RlbWF0ZXJpYWxpemUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVtYXRlcmlhbGl6ZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGVtYXRlcmlhbGl6ZSA9IHZvaWQgMDsKICAgIHZhciBOb3RpZmljYXRpb25fMSA9IHJlcXVpcmVfTm90aWZpY2F0aW9uKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gZGVtYXRlcmlhbGl6ZSgpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKG5vdGlmaWNhdGlvbikgewogICAgICAgICAgcmV0dXJuIE5vdGlmaWNhdGlvbl8xLm9ic2VydmVOb3RpZmljYXRpb24obm90aWZpY2F0aW9uLCBzdWJzY3JpYmVyKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZGVtYXRlcmlhbGl6ZSA9IGRlbWF0ZXJpYWxpemU7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2Rpc3RpbmN0LmpzCnZhciByZXF1aXJlX2Rpc3RpbmN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2Rpc3RpbmN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kaXN0aW5jdCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gZGlzdGluY3Qoa2V5U2VsZWN0b3IsIGZsdXNoZXMpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBkaXN0aW5jdEtleXMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIga2V5ID0ga2V5U2VsZWN0b3IgPyBrZXlTZWxlY3Rvcih2YWx1ZSkgOiB2YWx1ZTsKICAgICAgICAgIGlmICghZGlzdGluY3RLZXlzLmhhcyhrZXkpKSB7CiAgICAgICAgICAgIGRpc3RpbmN0S2V5cy5hZGQoa2V5KTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgICAgZmx1c2hlcyAmJiBpbm5lckZyb21fMS5pbm5lckZyb20oZmx1c2hlcykuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBkaXN0aW5jdEtleXMuY2xlYXIoKTsKICAgICAgICB9LCBub29wXzEubm9vcCkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRpc3RpbmN0ID0gZGlzdGluY3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2Rpc3RpbmN0VW50aWxDaGFuZ2VkLmpzCnZhciByZXF1aXJlX2Rpc3RpbmN0VW50aWxDaGFuZ2VkID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2Rpc3RpbmN0VW50aWxDaGFuZ2VkLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kaXN0aW5jdFVudGlsQ2hhbmdlZCA9IHZvaWQgMDsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGRpc3RpbmN0VW50aWxDaGFuZ2VkKGNvbXBhcmF0b3IsIGtleVNlbGVjdG9yKSB7CiAgICAgIGlmIChrZXlTZWxlY3RvciA9PT0gdm9pZCAwKSB7CiAgICAgICAga2V5U2VsZWN0b3IgPSBpZGVudGl0eV8xLmlkZW50aXR5OwogICAgICB9CiAgICAgIGNvbXBhcmF0b3IgPSBjb21wYXJhdG9yICE9PSBudWxsICYmIGNvbXBhcmF0b3IgIT09IHZvaWQgMCA/IGNvbXBhcmF0b3IgOiBkZWZhdWx0Q29tcGFyZTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBwcmV2aW91c0tleTsKICAgICAgICB2YXIgZmlyc3QgPSB0cnVlOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgY3VycmVudEtleSA9IGtleVNlbGVjdG9yKHZhbHVlKTsKICAgICAgICAgIGlmIChmaXJzdCB8fCAhY29tcGFyYXRvcihwcmV2aW91c0tleSwgY3VycmVudEtleSkpIHsKICAgICAgICAgICAgZmlyc3QgPSBmYWxzZTsKICAgICAgICAgICAgcHJldmlvdXNLZXkgPSBjdXJyZW50S2V5OwogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5kaXN0aW5jdFVudGlsQ2hhbmdlZCA9IGRpc3RpbmN0VW50aWxDaGFuZ2VkOwogICAgZnVuY3Rpb24gZGVmYXVsdENvbXBhcmUoYSwgYikgewogICAgICByZXR1cm4gYSA9PT0gYjsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGlzdGluY3RVbnRpbEtleUNoYW5nZWQuanMKdmFyIHJlcXVpcmVfZGlzdGluY3RVbnRpbEtleUNoYW5nZWQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGlzdGluY3RVbnRpbEtleUNoYW5nZWQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRpc3RpbmN0VW50aWxLZXlDaGFuZ2VkID0gdm9pZCAwOwogICAgdmFyIGRpc3RpbmN0VW50aWxDaGFuZ2VkXzEgPSByZXF1aXJlX2Rpc3RpbmN0VW50aWxDaGFuZ2VkKCk7CiAgICBmdW5jdGlvbiBkaXN0aW5jdFVudGlsS2V5Q2hhbmdlZChrZXksIGNvbXBhcmUpIHsKICAgICAgcmV0dXJuIGRpc3RpbmN0VW50aWxDaGFuZ2VkXzEuZGlzdGluY3RVbnRpbENoYW5nZWQoZnVuY3Rpb24oeCwgeSkgewogICAgICAgIHJldHVybiBjb21wYXJlID8gY29tcGFyZSh4W2tleV0sIHlba2V5XSkgOiB4W2tleV0gPT09IHlba2V5XTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5kaXN0aW5jdFVudGlsS2V5Q2hhbmdlZCA9IGRpc3RpbmN0VW50aWxLZXlDaGFuZ2VkOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aHJvd0lmRW1wdHkuanMKdmFyIHJlcXVpcmVfdGhyb3dJZkVtcHR5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rocm93SWZFbXB0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGhyb3dJZkVtcHR5ID0gdm9pZCAwOwogICAgdmFyIEVtcHR5RXJyb3JfMSA9IHJlcXVpcmVfRW1wdHlFcnJvcigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHRocm93SWZFbXB0eShlcnJvckZhY3RvcnkpIHsKICAgICAgaWYgKGVycm9yRmFjdG9yeSA9PT0gdm9pZCAwKSB7CiAgICAgICAgZXJyb3JGYWN0b3J5ID0gZGVmYXVsdEVycm9yRmFjdG9yeTsKICAgICAgfQogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gaGFzVmFsdWUgPyBzdWJzY3JpYmVyLmNvbXBsZXRlKCkgOiBzdWJzY3JpYmVyLmVycm9yKGVycm9yRmFjdG9yeSgpKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGhyb3dJZkVtcHR5ID0gdGhyb3dJZkVtcHR5OwogICAgZnVuY3Rpb24gZGVmYXVsdEVycm9yRmFjdG9yeSgpIHsKICAgICAgcmV0dXJuIG5ldyBFbXB0eUVycm9yXzEuRW1wdHlFcnJvcigpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9lbGVtZW50QXQuanMKdmFyIHJlcXVpcmVfZWxlbWVudEF0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2VsZW1lbnRBdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZWxlbWVudEF0ID0gdm9pZCAwOwogICAgdmFyIEFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yXzEgPSByZXF1aXJlX0FyZ3VtZW50T3V0T2ZSYW5nZUVycm9yKCk7CiAgICB2YXIgZmlsdGVyXzEgPSByZXF1aXJlX2ZpbHRlcigpOwogICAgdmFyIHRocm93SWZFbXB0eV8xID0gcmVxdWlyZV90aHJvd0lmRW1wdHkoKTsKICAgIHZhciBkZWZhdWx0SWZFbXB0eV8xID0gcmVxdWlyZV9kZWZhdWx0SWZFbXB0eSgpOwogICAgdmFyIHRha2VfMSA9IHJlcXVpcmVfdGFrZSgpOwogICAgZnVuY3Rpb24gZWxlbWVudEF0KGluZGV4LCBkZWZhdWx0VmFsdWUpIHsKICAgICAgaWYgKGluZGV4IDwgMCkgewogICAgICAgIHRocm93IG5ldyBBcmd1bWVudE91dE9mUmFuZ2VFcnJvcl8xLkFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yKCk7CiAgICAgIH0KICAgICAgdmFyIGhhc0RlZmF1bHRWYWx1ZSA9IGFyZ3VtZW50cy5sZW5ndGggPj0gMjsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHJldHVybiBzb3VyY2UucGlwZShmaWx0ZXJfMS5maWx0ZXIoZnVuY3Rpb24odiwgaSkgewogICAgICAgICAgcmV0dXJuIGkgPT09IGluZGV4OwogICAgICAgIH0pLCB0YWtlXzEudGFrZSgxKSwgaGFzRGVmYXVsdFZhbHVlID8gZGVmYXVsdElmRW1wdHlfMS5kZWZhdWx0SWZFbXB0eShkZWZhdWx0VmFsdWUpIDogdGhyb3dJZkVtcHR5XzEudGhyb3dJZkVtcHR5KGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG5ldyBBcmd1bWVudE91dE9mUmFuZ2VFcnJvcl8xLkFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yKCk7CiAgICAgICAgfSkpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuZWxlbWVudEF0ID0gZWxlbWVudEF0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9lbmRXaXRoLmpzCnZhciByZXF1aXJlX2VuZFdpdGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZW5kV2l0aC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZW5kV2l0aCA9IHZvaWQgMDsKICAgIHZhciBjb25jYXRfMSA9IHJlcXVpcmVfY29uY2F0KCk7CiAgICB2YXIgb2ZfMSA9IHJlcXVpcmVfb2YoKTsKICAgIGZ1bmN0aW9uIGVuZFdpdGgoKSB7CiAgICAgIHZhciB2YWx1ZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICB2YWx1ZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICByZXR1cm4gZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgcmV0dXJuIGNvbmNhdF8xLmNvbmNhdChzb3VyY2UsIG9mXzEub2YuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQodmFsdWVzKSkpKTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLmVuZFdpdGggPSBlbmRXaXRoOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9ldmVyeS5qcwp2YXIgcmVxdWlyZV9ldmVyeSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9ldmVyeS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXZlcnkgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gZXZlcnkocHJlZGljYXRlLCB0aGlzQXJnKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5kZXggPSAwOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBpZiAoIXByZWRpY2F0ZS5jYWxsKHRoaXNBcmcsIHZhbHVlLCBpbmRleCsrLCBzb3VyY2UpKSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChmYWxzZSk7CiAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh0cnVlKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZXZlcnkgPSBldmVyeTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZXhoYXVzdE1hcC5qcwp2YXIgcmVxdWlyZV9leGhhdXN0TWFwID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2V4aGF1c3RNYXAuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmV4aGF1c3RNYXAgPSB2b2lkIDA7CiAgICB2YXIgbWFwXzEgPSByZXF1aXJlX21hcCgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBleGhhdXN0TWFwKHByb2plY3QsIHJlc3VsdFNlbGVjdG9yKSB7CiAgICAgIGlmIChyZXN1bHRTZWxlY3RvcikgewogICAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICAgIHJldHVybiBzb3VyY2UucGlwZShleGhhdXN0TWFwKGZ1bmN0aW9uKGEsIGkpIHsKICAgICAgICAgICAgcmV0dXJuIGlubmVyRnJvbV8xLmlubmVyRnJvbShwcm9qZWN0KGEsIGkpKS5waXBlKG1hcF8xLm1hcChmdW5jdGlvbihiLCBpaSkgewogICAgICAgICAgICAgIHJldHVybiByZXN1bHRTZWxlY3RvcihhLCBiLCBpLCBpaSk7CiAgICAgICAgICAgIH0pKTsKICAgICAgICAgIH0pKTsKICAgICAgICB9OwogICAgICB9CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5kZXggPSAwOwogICAgICAgIHZhciBpbm5lclN1YiA9IG51bGw7CiAgICAgICAgdmFyIGlzQ29tcGxldGUgPSBmYWxzZTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihvdXRlclZhbHVlKSB7CiAgICAgICAgICBpZiAoIWlubmVyU3ViKSB7CiAgICAgICAgICAgIGlubmVyU3ViID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgaW5uZXJTdWIgPSBudWxsOwogICAgICAgICAgICAgIGlzQ29tcGxldGUgJiYgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICB9KTsKICAgICAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHByb2plY3Qob3V0ZXJWYWx1ZSwgaW5kZXgrKykpLnN1YnNjcmliZShpbm5lclN1Yik7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpc0NvbXBsZXRlID0gdHJ1ZTsKICAgICAgICAgICFpbm5lclN1YiAmJiBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmV4aGF1c3RNYXAgPSBleGhhdXN0TWFwOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9leGhhdXN0QWxsLmpzCnZhciByZXF1aXJlX2V4aGF1c3RBbGwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZXhoYXVzdEFsbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXhoYXVzdEFsbCA9IHZvaWQgMDsKICAgIHZhciBleGhhdXN0TWFwXzEgPSByZXF1aXJlX2V4aGF1c3RNYXAoKTsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgZnVuY3Rpb24gZXhoYXVzdEFsbCgpIHsKICAgICAgcmV0dXJuIGV4aGF1c3RNYXBfMS5leGhhdXN0TWFwKGlkZW50aXR5XzEuaWRlbnRpdHkpOwogICAgfQogICAgZXhwb3J0czIuZXhoYXVzdEFsbCA9IGV4aGF1c3RBbGw7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2V4aGF1c3QuanMKdmFyIHJlcXVpcmVfZXhoYXVzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9leGhhdXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5leGhhdXN0ID0gdm9pZCAwOwogICAgdmFyIGV4aGF1c3RBbGxfMSA9IHJlcXVpcmVfZXhoYXVzdEFsbCgpOwogICAgZXhwb3J0czIuZXhoYXVzdCA9IGV4aGF1c3RBbGxfMS5leGhhdXN0QWxsOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9leHBhbmQuanMKdmFyIHJlcXVpcmVfZXhwYW5kID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2V4cGFuZC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXhwYW5kID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIG1lcmdlSW50ZXJuYWxzXzEgPSByZXF1aXJlX21lcmdlSW50ZXJuYWxzKCk7CiAgICBmdW5jdGlvbiBleHBhbmQocHJvamVjdCwgY29uY3VycmVudCwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChjb25jdXJyZW50ID09PSB2b2lkIDApIHsKICAgICAgICBjb25jdXJyZW50ID0gSW5maW5pdHk7CiAgICAgIH0KICAgICAgY29uY3VycmVudCA9IChjb25jdXJyZW50IHx8IDApIDwgMSA/IEluZmluaXR5IDogY29uY3VycmVudDsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHJldHVybiBtZXJnZUludGVybmFsc18xLm1lcmdlSW50ZXJuYWxzKHNvdXJjZSwgc3Vic2NyaWJlciwgcHJvamVjdCwgY29uY3VycmVudCwgdm9pZCAwLCB0cnVlLCBzY2hlZHVsZXIpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmV4cGFuZCA9IGV4cGFuZDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmluYWxpemUuanMKdmFyIHJlcXVpcmVfZmluYWxpemUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmluYWxpemUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZpbmFsaXplID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gZmluYWxpemUoY2FsbGJhY2spIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHRyeSB7CiAgICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBzdWJzY3JpYmVyLmFkZChjYWxsYmFjayk7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZpbmFsaXplID0gZmluYWxpemU7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2ZpbmQuanMKdmFyIHJlcXVpcmVfZmluZCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maW5kLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jcmVhdGVGaW5kID0gZXhwb3J0czIuZmluZCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBmaW5kKHByZWRpY2F0ZSwgdGhpc0FyZykgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoY3JlYXRlRmluZChwcmVkaWNhdGUsIHRoaXNBcmcsICJ2YWx1ZSIpKTsKICAgIH0KICAgIGV4cG9ydHMyLmZpbmQgPSBmaW5kOwogICAgZnVuY3Rpb24gY3JlYXRlRmluZChwcmVkaWNhdGUsIHRoaXNBcmcsIGVtaXQpIHsKICAgICAgdmFyIGZpbmRJbmRleCA9IGVtaXQgPT09ICJpbmRleCI7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5kZXggPSAwOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgaSA9IGluZGV4Kys7CiAgICAgICAgICBpZiAocHJlZGljYXRlLmNhbGwodGhpc0FyZywgdmFsdWUsIGksIHNvdXJjZSkpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGZpbmRJbmRleCA/IGkgOiB2YWx1ZSk7CiAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChmaW5kSW5kZXggPyAtMSA6IHZvaWQgMCk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuY3JlYXRlRmluZCA9IGNyZWF0ZUZpbmQ7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2ZpbmRJbmRleC5qcwp2YXIgcmVxdWlyZV9maW5kSW5kZXggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmluZEluZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5maW5kSW5kZXggPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgZmluZF8xID0gcmVxdWlyZV9maW5kKCk7CiAgICBmdW5jdGlvbiBmaW5kSW5kZXgocHJlZGljYXRlLCB0aGlzQXJnKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmaW5kXzEuY3JlYXRlRmluZChwcmVkaWNhdGUsIHRoaXNBcmcsICJpbmRleCIpKTsKICAgIH0KICAgIGV4cG9ydHMyLmZpbmRJbmRleCA9IGZpbmRJbmRleDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmlyc3QuanMKdmFyIHJlcXVpcmVfZmlyc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmlyc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZpcnN0ID0gdm9pZCAwOwogICAgdmFyIEVtcHR5RXJyb3JfMSA9IHJlcXVpcmVfRW1wdHlFcnJvcigpOwogICAgdmFyIGZpbHRlcl8xID0gcmVxdWlyZV9maWx0ZXIoKTsKICAgIHZhciB0YWtlXzEgPSByZXF1aXJlX3Rha2UoKTsKICAgIHZhciBkZWZhdWx0SWZFbXB0eV8xID0gcmVxdWlyZV9kZWZhdWx0SWZFbXB0eSgpOwogICAgdmFyIHRocm93SWZFbXB0eV8xID0gcmVxdWlyZV90aHJvd0lmRW1wdHkoKTsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgZnVuY3Rpb24gZmlyc3QocHJlZGljYXRlLCBkZWZhdWx0VmFsdWUpIHsKICAgICAgdmFyIGhhc0RlZmF1bHRWYWx1ZSA9IGFyZ3VtZW50cy5sZW5ndGggPj0gMjsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHJldHVybiBzb3VyY2UucGlwZShwcmVkaWNhdGUgPyBmaWx0ZXJfMS5maWx0ZXIoZnVuY3Rpb24odiwgaSkgewogICAgICAgICAgcmV0dXJuIHByZWRpY2F0ZSh2LCBpLCBzb3VyY2UpOwogICAgICAgIH0pIDogaWRlbnRpdHlfMS5pZGVudGl0eSwgdGFrZV8xLnRha2UoMSksIGhhc0RlZmF1bHRWYWx1ZSA/IGRlZmF1bHRJZkVtcHR5XzEuZGVmYXVsdElmRW1wdHkoZGVmYXVsdFZhbHVlKSA6IHRocm93SWZFbXB0eV8xLnRocm93SWZFbXB0eShmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBuZXcgRW1wdHlFcnJvcl8xLkVtcHR5RXJyb3IoKTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5maXJzdCA9IGZpcnN0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9ncm91cEJ5LmpzCnZhciByZXF1aXJlX2dyb3VwQnkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZ3JvdXBCeS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZ3JvdXBCeSA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gZ3JvdXBCeShrZXlTZWxlY3RvciwgZWxlbWVudE9yT3B0aW9ucywgZHVyYXRpb24sIGNvbm5lY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGVsZW1lbnQ7CiAgICAgICAgaWYgKCFlbGVtZW50T3JPcHRpb25zIHx8IHR5cGVvZiBlbGVtZW50T3JPcHRpb25zID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICBlbGVtZW50ID0gZWxlbWVudE9yT3B0aW9uczsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgZHVyYXRpb24gPSBlbGVtZW50T3JPcHRpb25zLmR1cmF0aW9uLCBlbGVtZW50ID0gZWxlbWVudE9yT3B0aW9ucy5lbGVtZW50LCBjb25uZWN0b3IgPSBlbGVtZW50T3JPcHRpb25zLmNvbm5lY3RvcjsKICAgICAgICB9CiAgICAgICAgdmFyIGdyb3VwcyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgICAgdmFyIG5vdGlmeSA9IGZ1bmN0aW9uKGNiKSB7CiAgICAgICAgICBncm91cHMuZm9yRWFjaChjYik7CiAgICAgICAgICBjYihzdWJzY3JpYmVyKTsKICAgICAgICB9OwogICAgICAgIHZhciBoYW5kbGVFcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgICAgcmV0dXJuIG5vdGlmeShmdW5jdGlvbihjb25zdW1lcikgewogICAgICAgICAgICByZXR1cm4gY29uc3VtZXIuZXJyb3IoZXJyKTsKICAgICAgICAgIH0pOwogICAgICAgIH07CiAgICAgICAgdmFyIGFjdGl2ZUdyb3VwcyA9IDA7CiAgICAgICAgdmFyIHRlYXJkb3duQXR0ZW1wdGVkID0gZmFsc2U7CiAgICAgICAgdmFyIGdyb3VwQnlTb3VyY2VTdWJzY3JpYmVyID0gbmV3IE9wZXJhdG9yU3Vic2NyaWJlcl8xLk9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgdmFyIGtleV8xID0ga2V5U2VsZWN0b3IodmFsdWUpOwogICAgICAgICAgICB2YXIgZ3JvdXBfMSA9IGdyb3Vwcy5nZXQoa2V5XzEpOwogICAgICAgICAgICBpZiAoIWdyb3VwXzEpIHsKICAgICAgICAgICAgICBncm91cHMuc2V0KGtleV8xLCBncm91cF8xID0gY29ubmVjdG9yID8gY29ubmVjdG9yKCkgOiBuZXcgU3ViamVjdF8xLlN1YmplY3QoKSk7CiAgICAgICAgICAgICAgdmFyIGdyb3VwZWQgPSBjcmVhdGVHcm91cGVkT2JzZXJ2YWJsZShrZXlfMSwgZ3JvdXBfMSk7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGdyb3VwZWQpOwogICAgICAgICAgICAgIGlmIChkdXJhdGlvbikgewogICAgICAgICAgICAgICAgdmFyIGR1cmF0aW9uU3Vic2NyaWJlcl8xID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKGdyb3VwXzEsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICBncm91cF8xLmNvbXBsZXRlKCk7CiAgICAgICAgICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlcl8xID09PSBudWxsIHx8IGR1cmF0aW9uU3Vic2NyaWJlcl8xID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkdXJhdGlvblN1YnNjcmliZXJfMS51bnN1YnNjcmliZSgpOwogICAgICAgICAgICAgICAgfSwgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICByZXR1cm4gZ3JvdXBzLmRlbGV0ZShrZXlfMSk7CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIGdyb3VwQnlTb3VyY2VTdWJzY3JpYmVyLmFkZChpbm5lckZyb21fMS5pbm5lckZyb20oZHVyYXRpb24oZ3JvdXBlZCkpLnN1YnNjcmliZShkdXJhdGlvblN1YnNjcmliZXJfMSkpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBncm91cF8xLm5leHQoZWxlbWVudCA/IGVsZW1lbnQodmFsdWUpIDogdmFsdWUpOwogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIGhhbmRsZUVycm9yKGVycik7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbm90aWZ5KGZ1bmN0aW9uKGNvbnN1bWVyKSB7CiAgICAgICAgICAgIHJldHVybiBjb25zdW1lci5jb21wbGV0ZSgpOwogICAgICAgICAgfSk7CiAgICAgICAgfSwgaGFuZGxlRXJyb3IsIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIGdyb3Vwcy5jbGVhcigpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgdGVhcmRvd25BdHRlbXB0ZWQgPSB0cnVlOwogICAgICAgICAgcmV0dXJuIGFjdGl2ZUdyb3VwcyA9PT0gMDsKICAgICAgICB9KTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKGdyb3VwQnlTb3VyY2VTdWJzY3JpYmVyKTsKICAgICAgICBmdW5jdGlvbiBjcmVhdGVHcm91cGVkT2JzZXJ2YWJsZShrZXksIGdyb3VwU3ViamVjdCkgewogICAgICAgICAgdmFyIHJlc3VsdCA9IG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihncm91cFN1YnNjcmliZXIpIHsKICAgICAgICAgICAgYWN0aXZlR3JvdXBzKys7CiAgICAgICAgICAgIHZhciBpbm5lclN1YiA9IGdyb3VwU3ViamVjdC5zdWJzY3JpYmUoZ3JvdXBTdWJzY3JpYmVyKTsKICAgICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIGlubmVyU3ViLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgLS1hY3RpdmVHcm91cHMgPT09IDAgJiYgdGVhcmRvd25BdHRlbXB0ZWQgJiYgZ3JvdXBCeVNvdXJjZVN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgfTsKICAgICAgICAgIH0pOwogICAgICAgICAgcmVzdWx0LmtleSA9IGtleTsKICAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmdyb3VwQnkgPSBncm91cEJ5OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9pc0VtcHR5LmpzCnZhciByZXF1aXJlX2lzRW1wdHkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvaXNFbXB0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXNFbXB0eSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBpc0VtcHR5KCkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoZmFsc2UpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHRydWUpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5pc0VtcHR5ID0gaXNFbXB0eTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFrZUxhc3QuanMKdmFyIHJlcXVpcmVfdGFrZUxhc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFrZUxhc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX192YWx1ZXMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3ZhbHVlcyB8fCBmdW5jdGlvbihvKSB7CiAgICAgIHZhciBzID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBTeW1ib2wuaXRlcmF0b3IsIG0gPSBzICYmIG9bc10sIGkgPSAwOwogICAgICBpZiAobSkgcmV0dXJuIG0uY2FsbChvKTsKICAgICAgaWYgKG8gJiYgdHlwZW9mIG8ubGVuZ3RoID09PSAibnVtYmVyIikgcmV0dXJuIHsKICAgICAgICBuZXh0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChvICYmIGkgPj0gby5sZW5ndGgpIG8gPSB2b2lkIDA7CiAgICAgICAgICByZXR1cm4geyB2YWx1ZTogbyAmJiBvW2krK10sIGRvbmU6ICFvIH07CiAgICAgICAgfQogICAgICB9OwogICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKHMgPyAiT2JqZWN0IGlzIG5vdCBpdGVyYWJsZS4iIDogIlN5bWJvbC5pdGVyYXRvciBpcyBub3QgZGVmaW5lZC4iKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRha2VMYXN0ID0gdm9pZCAwOwogICAgdmFyIGVtcHR5XzEgPSByZXF1aXJlX2VtcHR5KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gdGFrZUxhc3QoY291bnQpIHsKICAgICAgcmV0dXJuIGNvdW50IDw9IDAgPyBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gZW1wdHlfMS5FTVBUWTsKICAgICAgfSA6IGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBidWZmZXIgPSBbXTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgYnVmZmVyLnB1c2godmFsdWUpOwogICAgICAgICAgY291bnQgPCBidWZmZXIubGVuZ3RoICYmIGJ1ZmZlci5zaGlmdCgpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgdmFyIGVfMSwgX2E7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBmb3IgKHZhciBidWZmZXJfMSA9IF9fdmFsdWVzKGJ1ZmZlciksIGJ1ZmZlcl8xXzEgPSBidWZmZXJfMS5uZXh0KCk7ICFidWZmZXJfMV8xLmRvbmU7IGJ1ZmZlcl8xXzEgPSBidWZmZXJfMS5uZXh0KCkpIHsKICAgICAgICAgICAgICB2YXIgdmFsdWUgPSBidWZmZXJfMV8xLnZhbHVlOwogICAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gY2F0Y2ggKGVfMV8xKSB7CiAgICAgICAgICAgIGVfMSA9IHsgZXJyb3I6IGVfMV8xIH07CiAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgIGlmIChidWZmZXJfMV8xICYmICFidWZmZXJfMV8xLmRvbmUgJiYgKF9hID0gYnVmZmVyXzEucmV0dXJuKSkgX2EuY2FsbChidWZmZXJfMSk7CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgaWYgKGVfMSkgdGhyb3cgZV8xLmVycm9yOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgIGJ1ZmZlciA9IG51bGw7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnRha2VMYXN0ID0gdGFrZUxhc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2xhc3QuanMKdmFyIHJlcXVpcmVfbGFzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9sYXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5sYXN0ID0gdm9pZCAwOwogICAgdmFyIEVtcHR5RXJyb3JfMSA9IHJlcXVpcmVfRW1wdHlFcnJvcigpOwogICAgdmFyIGZpbHRlcl8xID0gcmVxdWlyZV9maWx0ZXIoKTsKICAgIHZhciB0YWtlTGFzdF8xID0gcmVxdWlyZV90YWtlTGFzdCgpOwogICAgdmFyIHRocm93SWZFbXB0eV8xID0gcmVxdWlyZV90aHJvd0lmRW1wdHkoKTsKICAgIHZhciBkZWZhdWx0SWZFbXB0eV8xID0gcmVxdWlyZV9kZWZhdWx0SWZFbXB0eSgpOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICBmdW5jdGlvbiBsYXN0KHByZWRpY2F0ZSwgZGVmYXVsdFZhbHVlKSB7CiAgICAgIHZhciBoYXNEZWZhdWx0VmFsdWUgPSBhcmd1bWVudHMubGVuZ3RoID49IDI7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICByZXR1cm4gc291cmNlLnBpcGUocHJlZGljYXRlID8gZmlsdGVyXzEuZmlsdGVyKGZ1bmN0aW9uKHYsIGkpIHsKICAgICAgICAgIHJldHVybiBwcmVkaWNhdGUodiwgaSwgc291cmNlKTsKICAgICAgICB9KSA6IGlkZW50aXR5XzEuaWRlbnRpdHksIHRha2VMYXN0XzEudGFrZUxhc3QoMSksIGhhc0RlZmF1bHRWYWx1ZSA/IGRlZmF1bHRJZkVtcHR5XzEuZGVmYXVsdElmRW1wdHkoZGVmYXVsdFZhbHVlKSA6IHRocm93SWZFbXB0eV8xLnRocm93SWZFbXB0eShmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBuZXcgRW1wdHlFcnJvcl8xLkVtcHR5RXJyb3IoKTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5sYXN0ID0gbGFzdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWF0ZXJpYWxpemUuanMKdmFyIHJlcXVpcmVfbWF0ZXJpYWxpemUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWF0ZXJpYWxpemUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1hdGVyaWFsaXplID0gdm9pZCAwOwogICAgdmFyIE5vdGlmaWNhdGlvbl8xID0gcmVxdWlyZV9Ob3RpZmljYXRpb24oKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBtYXRlcmlhbGl6ZSgpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoTm90aWZpY2F0aW9uXzEuTm90aWZpY2F0aW9uLmNyZWF0ZU5leHQodmFsdWUpKTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChOb3RpZmljYXRpb25fMS5Ob3RpZmljYXRpb24uY3JlYXRlQ29tcGxldGUoKSk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoTm90aWZpY2F0aW9uXzEuTm90aWZpY2F0aW9uLmNyZWF0ZUVycm9yKGVycikpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5tYXRlcmlhbGl6ZSA9IG1hdGVyaWFsaXplOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tYXguanMKdmFyIHJlcXVpcmVfbWF4ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21heC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWF4ID0gdm9pZCAwOwogICAgdmFyIHJlZHVjZV8xID0gcmVxdWlyZV9yZWR1Y2UoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIGZ1bmN0aW9uIG1heChjb21wYXJlcikgewogICAgICByZXR1cm4gcmVkdWNlXzEucmVkdWNlKGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKGNvbXBhcmVyKSA/IGZ1bmN0aW9uKHgsIHkpIHsKICAgICAgICByZXR1cm4gY29tcGFyZXIoeCwgeSkgPiAwID8geCA6IHk7CiAgICAgIH0gOiBmdW5jdGlvbih4LCB5KSB7CiAgICAgICAgcmV0dXJuIHggPiB5ID8geCA6IHk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIubWF4ID0gbWF4OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9mbGF0TWFwLmpzCnZhciByZXF1aXJlX2ZsYXRNYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmxhdE1hcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZmxhdE1hcCA9IHZvaWQgMDsKICAgIHZhciBtZXJnZU1hcF8xID0gcmVxdWlyZV9tZXJnZU1hcCgpOwogICAgZXhwb3J0czIuZmxhdE1hcCA9IG1lcmdlTWFwXzEubWVyZ2VNYXA7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21lcmdlTWFwVG8uanMKdmFyIHJlcXVpcmVfbWVyZ2VNYXBUbyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZU1hcFRvLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5tZXJnZU1hcFRvID0gdm9pZCAwOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBtZXJnZU1hcFRvKGlubmVyT2JzZXJ2YWJsZSwgcmVzdWx0U2VsZWN0b3IsIGNvbmN1cnJlbnQpIHsKICAgICAgaWYgKGNvbmN1cnJlbnQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbmN1cnJlbnQgPSBJbmZpbml0eTsKICAgICAgfQogICAgICBpZiAoaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ocmVzdWx0U2VsZWN0b3IpKSB7CiAgICAgICAgcmV0dXJuIG1lcmdlTWFwXzEubWVyZ2VNYXAoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gaW5uZXJPYnNlcnZhYmxlOwogICAgICAgIH0sIHJlc3VsdFNlbGVjdG9yLCBjb25jdXJyZW50KTsKICAgICAgfQogICAgICBpZiAodHlwZW9mIHJlc3VsdFNlbGVjdG9yID09PSAibnVtYmVyIikgewogICAgICAgIGNvbmN1cnJlbnQgPSByZXN1bHRTZWxlY3RvcjsKICAgICAgfQogICAgICByZXR1cm4gbWVyZ2VNYXBfMS5tZXJnZU1hcChmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gaW5uZXJPYnNlcnZhYmxlOwogICAgICB9LCBjb25jdXJyZW50KTsKICAgIH0KICAgIGV4cG9ydHMyLm1lcmdlTWFwVG8gPSBtZXJnZU1hcFRvOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZVNjYW4uanMKdmFyIHJlcXVpcmVfbWVyZ2VTY2FuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21lcmdlU2Nhbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWVyZ2VTY2FuID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIG1lcmdlSW50ZXJuYWxzXzEgPSByZXF1aXJlX21lcmdlSW50ZXJuYWxzKCk7CiAgICBmdW5jdGlvbiBtZXJnZVNjYW4oYWNjdW11bGF0b3IsIHNlZWQsIGNvbmN1cnJlbnQpIHsKICAgICAgaWYgKGNvbmN1cnJlbnQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbmN1cnJlbnQgPSBJbmZpbml0eTsKICAgICAgfQogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHN0YXRlID0gc2VlZDsKICAgICAgICByZXR1cm4gbWVyZ2VJbnRlcm5hbHNfMS5tZXJnZUludGVybmFscyhzb3VyY2UsIHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlLCBpbmRleCkgewogICAgICAgICAgcmV0dXJuIGFjY3VtdWxhdG9yKHN0YXRlLCB2YWx1ZSwgaW5kZXgpOwogICAgICAgIH0sIGNvbmN1cnJlbnQsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBzdGF0ZSA9IHZhbHVlOwogICAgICAgIH0sIGZhbHNlLCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIHN0YXRlID0gbnVsbDsKICAgICAgICB9KTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5tZXJnZVNjYW4gPSBtZXJnZVNjYW47CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21lcmdlLmpzCnZhciByZXF1aXJlX21lcmdlMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWVyZ2UgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgYXJnc09yQXJnQXJyYXlfMSA9IHJlcXVpcmVfYXJnc09yQXJnQXJyYXkoKTsKICAgIHZhciBtZXJnZUFsbF8xID0gcmVxdWlyZV9tZXJnZUFsbCgpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgZnVuY3Rpb24gbWVyZ2UoKSB7CiAgICAgIHZhciBhcmdzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgYXJnc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHZhciBzY2hlZHVsZXIgPSBhcmdzXzEucG9wU2NoZWR1bGVyKGFyZ3MpOwogICAgICB2YXIgY29uY3VycmVudCA9IGFyZ3NfMS5wb3BOdW1iZXIoYXJncywgSW5maW5pdHkpOwogICAgICBhcmdzID0gYXJnc09yQXJnQXJyYXlfMS5hcmdzT3JBcmdBcnJheShhcmdzKTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIG1lcmdlQWxsXzEubWVyZ2VBbGwoY29uY3VycmVudCkoZnJvbV8xLmZyb20oX19zcHJlYWRBcnJheShbc291cmNlXSwgX19yZWFkKGFyZ3MpKSwgc2NoZWR1bGVyKSkuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1lcmdlID0gbWVyZ2U7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21lcmdlV2l0aC5qcwp2YXIgcmVxdWlyZV9tZXJnZVdpdGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2VXaXRoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5tZXJnZVdpdGggPSB2b2lkIDA7CiAgICB2YXIgbWVyZ2VfMSA9IHJlcXVpcmVfbWVyZ2UyKCk7CiAgICBmdW5jdGlvbiBtZXJnZVdpdGgyKCkgewogICAgICB2YXIgb3RoZXJTb3VyY2VzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgb3RoZXJTb3VyY2VzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgcmV0dXJuIG1lcmdlXzEubWVyZ2UuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQob3RoZXJTb3VyY2VzKSkpOwogICAgfQogICAgZXhwb3J0czIubWVyZ2VXaXRoID0gbWVyZ2VXaXRoMjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWluLmpzCnZhciByZXF1aXJlX21pbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9taW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1pbiA9IHZvaWQgMDsKICAgIHZhciByZWR1Y2VfMSA9IHJlcXVpcmVfcmVkdWNlKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBtaW4oY29tcGFyZXIpIHsKICAgICAgcmV0dXJuIHJlZHVjZV8xLnJlZHVjZShpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihjb21wYXJlcikgPyBmdW5jdGlvbih4LCB5KSB7CiAgICAgICAgcmV0dXJuIGNvbXBhcmVyKHgsIHkpIDwgMCA/IHggOiB5OwogICAgICB9IDogZnVuY3Rpb24oeCwgeSkgewogICAgICAgIHJldHVybiB4IDwgeSA/IHggOiB5OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1pbiA9IG1pbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbXVsdGljYXN0LmpzCnZhciByZXF1aXJlX211bHRpY2FzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tdWx0aWNhc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm11bHRpY2FzdCA9IHZvaWQgMDsKICAgIHZhciBDb25uZWN0YWJsZU9ic2VydmFibGVfMSA9IHJlcXVpcmVfQ29ubmVjdGFibGVPYnNlcnZhYmxlKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICB2YXIgY29ubmVjdF8xID0gcmVxdWlyZV9jb25uZWN0KCk7CiAgICBmdW5jdGlvbiBtdWx0aWNhc3Qoc3ViamVjdE9yU3ViamVjdEZhY3RvcnksIHNlbGVjdG9yKSB7CiAgICAgIHZhciBzdWJqZWN0RmFjdG9yeSA9IGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHN1YmplY3RPclN1YmplY3RGYWN0b3J5KSA/IHN1YmplY3RPclN1YmplY3RGYWN0b3J5IDogZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHN1YmplY3RPclN1YmplY3RGYWN0b3J5OwogICAgICB9OwogICAgICBpZiAoaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oc2VsZWN0b3IpKSB7CiAgICAgICAgcmV0dXJuIGNvbm5lY3RfMS5jb25uZWN0KHNlbGVjdG9yLCB7CiAgICAgICAgICBjb25uZWN0b3I6IHN1YmplY3RGYWN0b3J5CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHJldHVybiBuZXcgQ29ubmVjdGFibGVPYnNlcnZhYmxlXzEuQ29ubmVjdGFibGVPYnNlcnZhYmxlKHNvdXJjZSwgc3ViamVjdEZhY3RvcnkpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIubXVsdGljYXN0ID0gbXVsdGljYXN0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9vbkVycm9yUmVzdW1lTmV4dFdpdGguanMKdmFyIHJlcXVpcmVfb25FcnJvclJlc3VtZU5leHRXaXRoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL29uRXJyb3JSZXN1bWVOZXh0V2l0aC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIub25FcnJvclJlc3VtZU5leHQgPSBleHBvcnRzMi5vbkVycm9yUmVzdW1lTmV4dFdpdGggPSB2b2lkIDA7CiAgICB2YXIgYXJnc09yQXJnQXJyYXlfMSA9IHJlcXVpcmVfYXJnc09yQXJnQXJyYXkoKTsKICAgIHZhciBvbkVycm9yUmVzdW1lTmV4dF8xID0gcmVxdWlyZV9vbkVycm9yUmVzdW1lTmV4dCgpOwogICAgZnVuY3Rpb24gb25FcnJvclJlc3VtZU5leHRXaXRoKCkgewogICAgICB2YXIgc291cmNlcyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIHNvdXJjZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgbmV4dFNvdXJjZXMgPSBhcmdzT3JBcmdBcnJheV8xLmFyZ3NPckFyZ0FycmF5KHNvdXJjZXMpOwogICAgICByZXR1cm4gZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgcmV0dXJuIG9uRXJyb3JSZXN1bWVOZXh0XzEub25FcnJvclJlc3VtZU5leHQuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtzb3VyY2VdLCBfX3JlYWQobmV4dFNvdXJjZXMpKSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5vbkVycm9yUmVzdW1lTmV4dFdpdGggPSBvbkVycm9yUmVzdW1lTmV4dFdpdGg7CiAgICBleHBvcnRzMi5vbkVycm9yUmVzdW1lTmV4dCA9IG9uRXJyb3JSZXN1bWVOZXh0V2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcGFpcndpc2UuanMKdmFyIHJlcXVpcmVfcGFpcndpc2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcGFpcndpc2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnBhaXJ3aXNlID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHBhaXJ3aXNlKCkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHByZXY7CiAgICAgICAgdmFyIGhhc1ByZXYgPSBmYWxzZTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIHAgPSBwcmV2OwogICAgICAgICAgcHJldiA9IHZhbHVlOwogICAgICAgICAgaGFzUHJldiAmJiBzdWJzY3JpYmVyLm5leHQoW3AsIHZhbHVlXSk7CiAgICAgICAgICBoYXNQcmV2ID0gdHJ1ZTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucGFpcndpc2UgPSBwYWlyd2lzZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcGx1Y2suanMKdmFyIHJlcXVpcmVfcGx1Y2sgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcGx1Y2suanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnBsdWNrID0gdm9pZCAwOwogICAgdmFyIG1hcF8xID0gcmVxdWlyZV9tYXAoKTsKICAgIGZ1bmN0aW9uIHBsdWNrKCkgewogICAgICB2YXIgcHJvcGVydGllcyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIHByb3BlcnRpZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgbGVuZ3RoID0gcHJvcGVydGllcy5sZW5ndGg7CiAgICAgIGlmIChsZW5ndGggPT09IDApIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImxpc3Qgb2YgcHJvcGVydGllcyBjYW5ub3QgYmUgZW1wdHkuIik7CiAgICAgIH0KICAgICAgcmV0dXJuIG1hcF8xLm1hcChmdW5jdGlvbih4KSB7CiAgICAgICAgdmFyIGN1cnJlbnRQcm9wID0geDsKICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGxlbmd0aDsgaSsrKSB7CiAgICAgICAgICB2YXIgcCA9IGN1cnJlbnRQcm9wID09PSBudWxsIHx8IGN1cnJlbnRQcm9wID09PSB2b2lkIDAgPyB2b2lkIDAgOiBjdXJyZW50UHJvcFtwcm9wZXJ0aWVzW2ldXTsKICAgICAgICAgIGlmICh0eXBlb2YgcCAhPT0gInVuZGVmaW5lZCIpIHsKICAgICAgICAgICAgY3VycmVudFByb3AgPSBwOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIGN1cnJlbnRQcm9wOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnBsdWNrID0gcGx1Y2s7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3B1Ymxpc2guanMKdmFyIHJlcXVpcmVfcHVibGlzaCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9wdWJsaXNoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5wdWJsaXNoID0gdm9pZCAwOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIG11bHRpY2FzdF8xID0gcmVxdWlyZV9tdWx0aWNhc3QoKTsKICAgIHZhciBjb25uZWN0XzEgPSByZXF1aXJlX2Nvbm5lY3QoKTsKICAgIGZ1bmN0aW9uIHB1Ymxpc2goc2VsZWN0b3IpIHsKICAgICAgcmV0dXJuIHNlbGVjdG9yID8gZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgcmV0dXJuIGNvbm5lY3RfMS5jb25uZWN0KHNlbGVjdG9yKShzb3VyY2UpOwogICAgICB9IDogZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgcmV0dXJuIG11bHRpY2FzdF8xLm11bHRpY2FzdChuZXcgU3ViamVjdF8xLlN1YmplY3QoKSkoc291cmNlKTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnB1Ymxpc2ggPSBwdWJsaXNoOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9wdWJsaXNoQmVoYXZpb3IuanMKdmFyIHJlcXVpcmVfcHVibGlzaEJlaGF2aW9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3B1Ymxpc2hCZWhhdmlvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucHVibGlzaEJlaGF2aW9yID0gdm9pZCAwOwogICAgdmFyIEJlaGF2aW9yU3ViamVjdF8xID0gcmVxdWlyZV9CZWhhdmlvclN1YmplY3QoKTsKICAgIHZhciBDb25uZWN0YWJsZU9ic2VydmFibGVfMSA9IHJlcXVpcmVfQ29ubmVjdGFibGVPYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBwdWJsaXNoQmVoYXZpb3IoaW5pdGlhbFZhbHVlKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICB2YXIgc3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3RfMS5CZWhhdmlvclN1YmplY3QoaW5pdGlhbFZhbHVlKTsKICAgICAgICByZXR1cm4gbmV3IENvbm5lY3RhYmxlT2JzZXJ2YWJsZV8xLkNvbm5lY3RhYmxlT2JzZXJ2YWJsZShzb3VyY2UsIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIHN1YmplY3Q7CiAgICAgICAgfSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5wdWJsaXNoQmVoYXZpb3IgPSBwdWJsaXNoQmVoYXZpb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3B1Ymxpc2hMYXN0LmpzCnZhciByZXF1aXJlX3B1Ymxpc2hMYXN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3B1Ymxpc2hMYXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5wdWJsaXNoTGFzdCA9IHZvaWQgMDsKICAgIHZhciBBc3luY1N1YmplY3RfMSA9IHJlcXVpcmVfQXN5bmNTdWJqZWN0KCk7CiAgICB2YXIgQ29ubmVjdGFibGVPYnNlcnZhYmxlXzEgPSByZXF1aXJlX0Nvbm5lY3RhYmxlT2JzZXJ2YWJsZSgpOwogICAgZnVuY3Rpb24gcHVibGlzaExhc3QoKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICB2YXIgc3ViamVjdCA9IG5ldyBBc3luY1N1YmplY3RfMS5Bc3luY1N1YmplY3QoKTsKICAgICAgICByZXR1cm4gbmV3IENvbm5lY3RhYmxlT2JzZXJ2YWJsZV8xLkNvbm5lY3RhYmxlT2JzZXJ2YWJsZShzb3VyY2UsIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIHN1YmplY3Q7CiAgICAgICAgfSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5wdWJsaXNoTGFzdCA9IHB1Ymxpc2hMYXN0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9wdWJsaXNoUmVwbGF5LmpzCnZhciByZXF1aXJlX3B1Ymxpc2hSZXBsYXkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcHVibGlzaFJlcGxheS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucHVibGlzaFJlcGxheSA9IHZvaWQgMDsKICAgIHZhciBSZXBsYXlTdWJqZWN0XzEgPSByZXF1aXJlX1JlcGxheVN1YmplY3QoKTsKICAgIHZhciBtdWx0aWNhc3RfMSA9IHJlcXVpcmVfbXVsdGljYXN0KCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBwdWJsaXNoUmVwbGF5KGJ1ZmZlclNpemUsIHdpbmRvd1RpbWUsIHNlbGVjdG9yT3JTY2hlZHVsZXIsIHRpbWVzdGFtcFByb3ZpZGVyKSB7CiAgICAgIGlmIChzZWxlY3Rvck9yU2NoZWR1bGVyICYmICFpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihzZWxlY3Rvck9yU2NoZWR1bGVyKSkgewogICAgICAgIHRpbWVzdGFtcFByb3ZpZGVyID0gc2VsZWN0b3JPclNjaGVkdWxlcjsKICAgICAgfQogICAgICB2YXIgc2VsZWN0b3IgPSBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihzZWxlY3Rvck9yU2NoZWR1bGVyKSA/IHNlbGVjdG9yT3JTY2hlZHVsZXIgOiB2b2lkIDA7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICByZXR1cm4gbXVsdGljYXN0XzEubXVsdGljYXN0KG5ldyBSZXBsYXlTdWJqZWN0XzEuUmVwbGF5U3ViamVjdChidWZmZXJTaXplLCB3aW5kb3dUaW1lLCB0aW1lc3RhbXBQcm92aWRlciksIHNlbGVjdG9yKShzb3VyY2UpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIucHVibGlzaFJlcGxheSA9IHB1Ymxpc2hSZXBsYXk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JhY2VXaXRoLmpzCnZhciByZXF1aXJlX3JhY2VXaXRoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JhY2VXaXRoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yYWNlV2l0aCA9IHZvaWQgMDsKICAgIHZhciByYWNlXzEgPSByZXF1aXJlX3JhY2UoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgZnVuY3Rpb24gcmFjZVdpdGgoKSB7CiAgICAgIHZhciBvdGhlclNvdXJjZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlclNvdXJjZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICByZXR1cm4gIW90aGVyU291cmNlcy5sZW5ndGggPyBpZGVudGl0eV8xLmlkZW50aXR5IDogbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgcmFjZV8xLnJhY2VJbml0KF9fc3ByZWFkQXJyYXkoW3NvdXJjZV0sIF9fcmVhZChvdGhlclNvdXJjZXMpKSkoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucmFjZVdpdGggPSByYWNlV2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcmVwZWF0LmpzCnZhciByZXF1aXJlX3JlcGVhdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9yZXBlYXQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJlcGVhdCA9IHZvaWQgMDsKICAgIHZhciBlbXB0eV8xID0gcmVxdWlyZV9lbXB0eSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgdGltZXJfMSA9IHJlcXVpcmVfdGltZXIoKTsKICAgIGZ1bmN0aW9uIHJlcGVhdChjb3VudE9yQ29uZmlnKSB7CiAgICAgIHZhciBfYTsKICAgICAgdmFyIGNvdW50ID0gSW5maW5pdHk7CiAgICAgIHZhciBkZWxheTsKICAgICAgaWYgKGNvdW50T3JDb25maWcgIT0gbnVsbCkgewogICAgICAgIGlmICh0eXBlb2YgY291bnRPckNvbmZpZyA9PT0gIm9iamVjdCIpIHsKICAgICAgICAgIF9hID0gY291bnRPckNvbmZpZy5jb3VudCwgY291bnQgPSBfYSA9PT0gdm9pZCAwID8gSW5maW5pdHkgOiBfYSwgZGVsYXkgPSBjb3VudE9yQ29uZmlnLmRlbGF5OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb3VudCA9IGNvdW50T3JDb25maWc7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBjb3VudCA8PSAwID8gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIGVtcHR5XzEuRU1QVFk7CiAgICAgIH0gOiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgc29GYXIgPSAwOwogICAgICAgIHZhciBzb3VyY2VTdWI7CiAgICAgICAgdmFyIHJlc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBzb3VyY2VTdWIgPT09IG51bGwgfHwgc291cmNlU3ViID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzb3VyY2VTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHNvdXJjZVN1YiA9IG51bGw7CiAgICAgICAgICBpZiAoZGVsYXkgIT0gbnVsbCkgewogICAgICAgICAgICB2YXIgbm90aWZpZXIgPSB0eXBlb2YgZGVsYXkgPT09ICJudW1iZXIiID8gdGltZXJfMS50aW1lcihkZWxheSkgOiBpbm5lckZyb21fMS5pbm5lckZyb20oZGVsYXkoc29GYXIpKTsKICAgICAgICAgICAgdmFyIG5vdGlmaWVyU3Vic2NyaWJlcl8xID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIG5vdGlmaWVyU3Vic2NyaWJlcl8xLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgc3Vic2NyaWJlVG9Tb3VyY2UoKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIG5vdGlmaWVyLnN1YnNjcmliZShub3RpZmllclN1YnNjcmliZXJfMSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzdWJzY3JpYmVUb1NvdXJjZSgpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgdmFyIHN1YnNjcmliZVRvU291cmNlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgc3luY1Vuc3ViID0gZmFsc2U7CiAgICAgICAgICBzb3VyY2VTdWIgPSBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICBpZiAoKytzb0ZhciA8IGNvdW50KSB7CiAgICAgICAgICAgICAgaWYgKHNvdXJjZVN1YikgewogICAgICAgICAgICAgICAgcmVzdWJzY3JpYmUoKTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgc3luY1Vuc3ViID0gdHJ1ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KSk7CiAgICAgICAgICBpZiAoc3luY1Vuc3ViKSB7CiAgICAgICAgICAgIHJlc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBzdWJzY3JpYmVUb1NvdXJjZSgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJlcGVhdCA9IHJlcGVhdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcmVwZWF0V2hlbi5qcwp2YXIgcmVxdWlyZV9yZXBlYXRXaGVuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlcGVhdFdoZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJlcGVhdFdoZW4gPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHJlcGVhdFdoZW4obm90aWZpZXIpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpbm5lclN1YjsKICAgICAgICB2YXIgc3luY1Jlc3ViID0gZmFsc2U7CiAgICAgICAgdmFyIGNvbXBsZXRpb25zJDsKICAgICAgICB2YXIgaXNOb3RpZmllckNvbXBsZXRlID0gZmFsc2U7CiAgICAgICAgdmFyIGlzTWFpbkNvbXBsZXRlID0gZmFsc2U7CiAgICAgICAgdmFyIGNoZWNrQ29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBpc01haW5Db21wbGV0ZSAmJiBpc05vdGlmaWVyQ29tcGxldGUgJiYgKHN1YnNjcmliZXIuY29tcGxldGUoKSwgdHJ1ZSk7CiAgICAgICAgfTsKICAgICAgICB2YXIgZ2V0Q29tcGxldGlvblN1YmplY3QgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmICghY29tcGxldGlvbnMkKSB7CiAgICAgICAgICAgIGNvbXBsZXRpb25zJCA9IG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20obm90aWZpZXIoY29tcGxldGlvbnMkKSkuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICBpZiAoaW5uZXJTdWIpIHsKICAgICAgICAgICAgICAgIHN1YnNjcmliZUZvclJlcGVhdFdoZW4oKTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgc3luY1Jlc3ViID0gdHJ1ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIGlzTm90aWZpZXJDb21wbGV0ZSA9IHRydWU7CiAgICAgICAgICAgICAgY2hlY2tDb21wbGV0ZSgpOwogICAgICAgICAgICB9KSk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gY29tcGxldGlvbnMkOwogICAgICAgIH07CiAgICAgICAgdmFyIHN1YnNjcmliZUZvclJlcGVhdFdoZW4gPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlzTWFpbkNvbXBsZXRlID0gZmFsc2U7CiAgICAgICAgICBpbm5lclN1YiA9IHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlzTWFpbkNvbXBsZXRlID0gdHJ1ZTsKICAgICAgICAgICAgIWNoZWNrQ29tcGxldGUoKSAmJiBnZXRDb21wbGV0aW9uU3ViamVjdCgpLm5leHQoKTsKICAgICAgICAgIH0pKTsKICAgICAgICAgIGlmIChzeW5jUmVzdWIpIHsKICAgICAgICAgICAgaW5uZXJTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgaW5uZXJTdWIgPSBudWxsOwogICAgICAgICAgICBzeW5jUmVzdWIgPSBmYWxzZTsKICAgICAgICAgICAgc3Vic2NyaWJlRm9yUmVwZWF0V2hlbigpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc3Vic2NyaWJlRm9yUmVwZWF0V2hlbigpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJlcGVhdFdoZW4gPSByZXBlYXRXaGVuOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9yZXRyeS5qcwp2YXIgcmVxdWlyZV9yZXRyeSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9yZXRyeS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmV0cnkgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICB2YXIgdGltZXJfMSA9IHJlcXVpcmVfdGltZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICBmdW5jdGlvbiByZXRyeShjb25maWdPckNvdW50KSB7CiAgICAgIGlmIChjb25maWdPckNvdW50ID09PSB2b2lkIDApIHsKICAgICAgICBjb25maWdPckNvdW50ID0gSW5maW5pdHk7CiAgICAgIH0KICAgICAgdmFyIGNvbmZpZzsKICAgICAgaWYgKGNvbmZpZ09yQ291bnQgJiYgdHlwZW9mIGNvbmZpZ09yQ291bnQgPT09ICJvYmplY3QiKSB7CiAgICAgICAgY29uZmlnID0gY29uZmlnT3JDb3VudDsKICAgICAgfSBlbHNlIHsKICAgICAgICBjb25maWcgPSB7CiAgICAgICAgICBjb3VudDogY29uZmlnT3JDb3VudAogICAgICAgIH07CiAgICAgIH0KICAgICAgdmFyIF9hID0gY29uZmlnLmNvdW50LCBjb3VudCA9IF9hID09PSB2b2lkIDAgPyBJbmZpbml0eSA6IF9hLCBkZWxheSA9IGNvbmZpZy5kZWxheSwgX2IgPSBjb25maWcucmVzZXRPblN1Y2Nlc3MsIHJlc2V0T25TdWNjZXNzID0gX2IgPT09IHZvaWQgMCA/IGZhbHNlIDogX2I7CiAgICAgIHJldHVybiBjb3VudCA8PSAwID8gaWRlbnRpdHlfMS5pZGVudGl0eSA6IGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBzb0ZhciA9IDA7CiAgICAgICAgdmFyIGlubmVyU3ViOwogICAgICAgIHZhciBzdWJzY3JpYmVGb3JSZXRyeSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgdmFyIHN5bmNVbnN1YiA9IGZhbHNlOwogICAgICAgICAgaW5uZXJTdWIgPSBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgICBpZiAocmVzZXRPblN1Y2Nlc3MpIHsKICAgICAgICAgICAgICBzb0ZhciA9IDA7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgIH0sIHZvaWQgMCwgZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICAgIGlmIChzb0ZhcisrIDwgY291bnQpIHsKICAgICAgICAgICAgICB2YXIgcmVzdWJfMSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgaWYgKGlubmVyU3ViKSB7CiAgICAgICAgICAgICAgICAgIGlubmVyU3ViLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgICAgIGlubmVyU3ViID0gbnVsbDsKICAgICAgICAgICAgICAgICAgc3Vic2NyaWJlRm9yUmV0cnkoKTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIHN5bmNVbnN1YiA9IHRydWU7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICBpZiAoZGVsYXkgIT0gbnVsbCkgewogICAgICAgICAgICAgICAgdmFyIG5vdGlmaWVyID0gdHlwZW9mIGRlbGF5ID09PSAibnVtYmVyIiA/IHRpbWVyXzEudGltZXIoZGVsYXkpIDogaW5uZXJGcm9tXzEuaW5uZXJGcm9tKGRlbGF5KGVyciwgc29GYXIpKTsKICAgICAgICAgICAgICAgIHZhciBub3RpZmllclN1YnNjcmliZXJfMSA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgbm90aWZpZXJTdWJzY3JpYmVyXzEudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgICAgICAgcmVzdWJfMSgpOwogICAgICAgICAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgbm90aWZpZXIuc3Vic2NyaWJlKG5vdGlmaWVyU3Vic2NyaWJlcl8xKTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgcmVzdWJfMSgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pKTsKICAgICAgICAgIGlmIChzeW5jVW5zdWIpIHsKICAgICAgICAgICAgaW5uZXJTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgaW5uZXJTdWIgPSBudWxsOwogICAgICAgICAgICBzdWJzY3JpYmVGb3JSZXRyeSgpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc3Vic2NyaWJlRm9yUmV0cnkoKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5yZXRyeSA9IHJldHJ5OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9yZXRyeVdoZW4uanMKdmFyIHJlcXVpcmVfcmV0cnlXaGVuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JldHJ5V2hlbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmV0cnlXaGVuID0gdm9pZCAwOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiByZXRyeVdoZW4obm90aWZpZXIpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpbm5lclN1YjsKICAgICAgICB2YXIgc3luY1Jlc3ViID0gZmFsc2U7CiAgICAgICAgdmFyIGVycm9ycyQ7CiAgICAgICAgdmFyIHN1YnNjcmliZUZvclJldHJ5V2hlbiA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgaW5uZXJTdWIgPSBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICAgIGlmICghZXJyb3JzJCkgewogICAgICAgICAgICAgIGVycm9ycyQgPSBuZXcgU3ViamVjdF8xLlN1YmplY3QoKTsKICAgICAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20obm90aWZpZXIoZXJyb3JzJCkpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gaW5uZXJTdWIgPyBzdWJzY3JpYmVGb3JSZXRyeVdoZW4oKSA6IHN5bmNSZXN1YiA9IHRydWU7CiAgICAgICAgICAgICAgfSkpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChlcnJvcnMkKSB7CiAgICAgICAgICAgICAgZXJyb3JzJC5uZXh0KGVycik7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pKTsKICAgICAgICAgIGlmIChzeW5jUmVzdWIpIHsKICAgICAgICAgICAgaW5uZXJTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgaW5uZXJTdWIgPSBudWxsOwogICAgICAgICAgICBzeW5jUmVzdWIgPSBmYWxzZTsKICAgICAgICAgICAgc3Vic2NyaWJlRm9yUmV0cnlXaGVuKCk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBzdWJzY3JpYmVGb3JSZXRyeVdoZW4oKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5yZXRyeVdoZW4gPSByZXRyeVdoZW47CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NhbXBsZS5qcwp2YXIgcmVxdWlyZV9zYW1wbGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2FtcGxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zYW1wbGUgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHNhbXBsZShub3RpZmllcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgIGxhc3RWYWx1ZSA9IHZhbHVlOwogICAgICAgIH0pKTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20obm90aWZpZXIpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoaGFzVmFsdWUpIHsKICAgICAgICAgICAgaGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICAgICAgdmFyIHZhbHVlID0gbGFzdFZhbHVlOwogICAgICAgICAgICBsYXN0VmFsdWUgPSBudWxsOwogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfQogICAgICAgIH0sIG5vb3BfMS5ub29wKSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2FtcGxlID0gc2FtcGxlOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zYW1wbGVUaW1lLmpzCnZhciByZXF1aXJlX3NhbXBsZVRpbWUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2FtcGxlVGltZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2FtcGxlVGltZSA9IHZvaWQgMDsKICAgIHZhciBhc3luY18xID0gcmVxdWlyZV9hc3luYygpOwogICAgdmFyIHNhbXBsZV8xID0gcmVxdWlyZV9zYW1wbGUoKTsKICAgIHZhciBpbnRlcnZhbF8xID0gcmVxdWlyZV9pbnRlcnZhbCgpOwogICAgZnVuY3Rpb24gc2FtcGxlVGltZShwZXJpb2QsIHNjaGVkdWxlcikgewogICAgICBpZiAoc2NoZWR1bGVyID09PSB2b2lkIDApIHsKICAgICAgICBzY2hlZHVsZXIgPSBhc3luY18xLmFzeW5jU2NoZWR1bGVyOwogICAgICB9CiAgICAgIHJldHVybiBzYW1wbGVfMS5zYW1wbGUoaW50ZXJ2YWxfMS5pbnRlcnZhbChwZXJpb2QsIHNjaGVkdWxlcikpOwogICAgfQogICAgZXhwb3J0czIuc2FtcGxlVGltZSA9IHNhbXBsZVRpbWU7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NjYW4uanMKdmFyIHJlcXVpcmVfc2NhbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zY2FuLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zY2FuID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIHNjYW5JbnRlcm5hbHNfMSA9IHJlcXVpcmVfc2NhbkludGVybmFscygpOwogICAgZnVuY3Rpb24gc2NhbihhY2N1bXVsYXRvciwgc2VlZCkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoc2NhbkludGVybmFsc18xLnNjYW5JbnRlcm5hbHMoYWNjdW11bGF0b3IsIHNlZWQsIGFyZ3VtZW50cy5sZW5ndGggPj0gMiwgdHJ1ZSkpOwogICAgfQogICAgZXhwb3J0czIuc2NhbiA9IHNjYW47CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NlcXVlbmNlRXF1YWwuanMKdmFyIHJlcXVpcmVfc2VxdWVuY2VFcXVhbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zZXF1ZW5jZUVxdWFsLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zZXF1ZW5jZUVxdWFsID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICBmdW5jdGlvbiBzZXF1ZW5jZUVxdWFsKGNvbXBhcmVUbywgY29tcGFyYXRvcikgewogICAgICBpZiAoY29tcGFyYXRvciA9PT0gdm9pZCAwKSB7CiAgICAgICAgY29tcGFyYXRvciA9IGZ1bmN0aW9uKGEsIGIpIHsKICAgICAgICAgIHJldHVybiBhID09PSBiOwogICAgICAgIH07CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBhU3RhdGUgPSBjcmVhdGVTdGF0ZSgpOwogICAgICAgIHZhciBiU3RhdGUgPSBjcmVhdGVTdGF0ZSgpOwogICAgICAgIHZhciBlbWl0ID0gZnVuY3Rpb24oaXNFcXVhbCkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGlzRXF1YWwpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH07CiAgICAgICAgdmFyIGNyZWF0ZVN1YnNjcmliZXIgPSBmdW5jdGlvbihzZWxmU3RhdGUsIG90aGVyU3RhdGUpIHsKICAgICAgICAgIHZhciBzZXF1ZW5jZUVxdWFsU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihhKSB7CiAgICAgICAgICAgIHZhciBidWZmZXIgPSBvdGhlclN0YXRlLmJ1ZmZlciwgY29tcGxldGUgPSBvdGhlclN0YXRlLmNvbXBsZXRlOwogICAgICAgICAgICBpZiAoYnVmZmVyLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgICAgIGNvbXBsZXRlID8gZW1pdChmYWxzZSkgOiBzZWxmU3RhdGUuYnVmZmVyLnB1c2goYSk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgIWNvbXBhcmF0b3IoYSwgYnVmZmVyLnNoaWZ0KCkpICYmIGVtaXQoZmFsc2UpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgc2VsZlN0YXRlLmNvbXBsZXRlID0gdHJ1ZTsKICAgICAgICAgICAgdmFyIGNvbXBsZXRlID0gb3RoZXJTdGF0ZS5jb21wbGV0ZSwgYnVmZmVyID0gb3RoZXJTdGF0ZS5idWZmZXI7CiAgICAgICAgICAgIGNvbXBsZXRlICYmIGVtaXQoYnVmZmVyLmxlbmd0aCA9PT0gMCk7CiAgICAgICAgICAgIHNlcXVlbmNlRXF1YWxTdWJzY3JpYmVyID09PSBudWxsIHx8IHNlcXVlbmNlRXF1YWxTdWJzY3JpYmVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzZXF1ZW5jZUVxdWFsU3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgfSk7CiAgICAgICAgICByZXR1cm4gc2VxdWVuY2VFcXVhbFN1YnNjcmliZXI7CiAgICAgICAgfTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKGNyZWF0ZVN1YnNjcmliZXIoYVN0YXRlLCBiU3RhdGUpKTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oY29tcGFyZVRvKS5zdWJzY3JpYmUoY3JlYXRlU3Vic2NyaWJlcihiU3RhdGUsIGFTdGF0ZSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNlcXVlbmNlRXF1YWwgPSBzZXF1ZW5jZUVxdWFsOwogICAgZnVuY3Rpb24gY3JlYXRlU3RhdGUoKSB7CiAgICAgIHJldHVybiB7CiAgICAgICAgYnVmZmVyOiBbXSwKICAgICAgICBjb21wbGV0ZTogZmFsc2UKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2hhcmUuanMKdmFyIHJlcXVpcmVfc2hhcmUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2hhcmUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNoYXJlID0gdm9pZCAwOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBTdWJzY3JpYmVyXzEgPSByZXF1aXJlX1N1YnNjcmliZXIoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIGZ1bmN0aW9uIHNoYXJlKG9wdGlvbnMpIHsKICAgICAgaWYgKG9wdGlvbnMgPT09IHZvaWQgMCkgewogICAgICAgIG9wdGlvbnMgPSB7fTsKICAgICAgfQogICAgICB2YXIgX2EgPSBvcHRpb25zLmNvbm5lY3RvciwgY29ubmVjdG9yID0gX2EgPT09IHZvaWQgMCA/IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBuZXcgU3ViamVjdF8xLlN1YmplY3QoKTsKICAgICAgfSA6IF9hLCBfYiA9IG9wdGlvbnMucmVzZXRPbkVycm9yLCByZXNldE9uRXJyb3IgPSBfYiA9PT0gdm9pZCAwID8gdHJ1ZSA6IF9iLCBfYyA9IG9wdGlvbnMucmVzZXRPbkNvbXBsZXRlLCByZXNldE9uQ29tcGxldGUgPSBfYyA9PT0gdm9pZCAwID8gdHJ1ZSA6IF9jLCBfZCA9IG9wdGlvbnMucmVzZXRPblJlZkNvdW50WmVybywgcmVzZXRPblJlZkNvdW50WmVybyA9IF9kID09PSB2b2lkIDAgPyB0cnVlIDogX2Q7CiAgICAgIHJldHVybiBmdW5jdGlvbih3cmFwcGVyU291cmNlKSB7CiAgICAgICAgdmFyIGNvbm5lY3Rpb247CiAgICAgICAgdmFyIHJlc2V0Q29ubmVjdGlvbjsKICAgICAgICB2YXIgc3ViamVjdDsKICAgICAgICB2YXIgcmVmQ291bnQgPSAwOwogICAgICAgIHZhciBoYXNDb21wbGV0ZWQgPSBmYWxzZTsKICAgICAgICB2YXIgaGFzRXJyb3JlZCA9IGZhbHNlOwogICAgICAgIHZhciBjYW5jZWxSZXNldCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmVzZXRDb25uZWN0aW9uID09PSBudWxsIHx8IHJlc2V0Q29ubmVjdGlvbiA9PT0gdm9pZCAwID8gdm9pZCAwIDogcmVzZXRDb25uZWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICByZXNldENvbm5lY3Rpb24gPSB2b2lkIDA7CiAgICAgICAgfTsKICAgICAgICB2YXIgcmVzZXQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGNhbmNlbFJlc2V0KCk7CiAgICAgICAgICBjb25uZWN0aW9uID0gc3ViamVjdCA9IHZvaWQgMDsKICAgICAgICAgIGhhc0NvbXBsZXRlZCA9IGhhc0Vycm9yZWQgPSBmYWxzZTsKICAgICAgICB9OwogICAgICAgIHZhciByZXNldEFuZFVuc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgY29ubiA9IGNvbm5lY3Rpb247CiAgICAgICAgICByZXNldCgpOwogICAgICAgICAgY29ubiA9PT0gbnVsbCB8fCBjb25uID09PSB2b2lkIDAgPyB2b2lkIDAgOiBjb25uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgICByZWZDb3VudCsrOwogICAgICAgICAgaWYgKCFoYXNFcnJvcmVkICYmICFoYXNDb21wbGV0ZWQpIHsKICAgICAgICAgICAgY2FuY2VsUmVzZXQoKTsKICAgICAgICAgIH0KICAgICAgICAgIHZhciBkZXN0ID0gc3ViamVjdCA9IHN1YmplY3QgIT09IG51bGwgJiYgc3ViamVjdCAhPT0gdm9pZCAwID8gc3ViamVjdCA6IGNvbm5lY3RvcigpOwogICAgICAgICAgc3Vic2NyaWJlci5hZGQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJlZkNvdW50LS07CiAgICAgICAgICAgIGlmIChyZWZDb3VudCA9PT0gMCAmJiAhaGFzRXJyb3JlZCAmJiAhaGFzQ29tcGxldGVkKSB7CiAgICAgICAgICAgICAgcmVzZXRDb25uZWN0aW9uID0gaGFuZGxlUmVzZXQocmVzZXRBbmRVbnN1YnNjcmliZSwgcmVzZXRPblJlZkNvdW50WmVybyk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgICAgZGVzdC5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgICBpZiAoIWNvbm5lY3Rpb24gJiYgcmVmQ291bnQgPiAwKSB7CiAgICAgICAgICAgIGNvbm5lY3Rpb24gPSBuZXcgU3Vic2NyaWJlcl8xLlNhZmVTdWJzY3JpYmVyKHsKICAgICAgICAgICAgICBuZXh0OiBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgICAgICAgcmV0dXJuIGRlc3QubmV4dCh2YWx1ZSk7CiAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICBlcnJvcjogZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICAgICAgICBoYXNFcnJvcmVkID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGNhbmNlbFJlc2V0KCk7CiAgICAgICAgICAgICAgICByZXNldENvbm5lY3Rpb24gPSBoYW5kbGVSZXNldChyZXNldCwgcmVzZXRPbkVycm9yLCBlcnIpOwogICAgICAgICAgICAgICAgZGVzdC5lcnJvcihlcnIpOwogICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgY29tcGxldGU6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgaGFzQ29tcGxldGVkID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGNhbmNlbFJlc2V0KCk7CiAgICAgICAgICAgICAgICByZXNldENvbm5lY3Rpb24gPSBoYW5kbGVSZXNldChyZXNldCwgcmVzZXRPbkNvbXBsZXRlKTsKICAgICAgICAgICAgICAgIGRlc3QuY29tcGxldGUoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oc291cmNlKS5zdWJzY3JpYmUoY29ubmVjdGlvbik7CiAgICAgICAgICB9CiAgICAgICAgfSkod3JhcHBlclNvdXJjZSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5zaGFyZSA9IHNoYXJlOwogICAgZnVuY3Rpb24gaGFuZGxlUmVzZXQocmVzZXQsIG9uKSB7CiAgICAgIHZhciBhcmdzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMjsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgYXJnc1tfaSAtIDJdID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICBpZiAob24gPT09IHRydWUpIHsKICAgICAgICByZXNldCgpOwogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICBpZiAob24gPT09IGZhbHNlKSB7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIHZhciBvblN1YnNjcmliZXIgPSBuZXcgU3Vic2NyaWJlcl8xLlNhZmVTdWJzY3JpYmVyKHsKICAgICAgICBuZXh0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIG9uU3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgcmVzZXQoKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgICByZXR1cm4gaW5uZXJGcm9tXzEuaW5uZXJGcm9tKG9uLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKGFyZ3MpKSkpLnN1YnNjcmliZShvblN1YnNjcmliZXIpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zaGFyZVJlcGxheS5qcwp2YXIgcmVxdWlyZV9zaGFyZVJlcGxheSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zaGFyZVJlcGxheS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2hhcmVSZXBsYXkgPSB2b2lkIDA7CiAgICB2YXIgUmVwbGF5U3ViamVjdF8xID0gcmVxdWlyZV9SZXBsYXlTdWJqZWN0KCk7CiAgICB2YXIgc2hhcmVfMSA9IHJlcXVpcmVfc2hhcmUoKTsKICAgIGZ1bmN0aW9uIHNoYXJlUmVwbGF5KGNvbmZpZ09yQnVmZmVyU2l6ZSwgd2luZG93VGltZSwgc2NoZWR1bGVyKSB7CiAgICAgIHZhciBfYSwgX2IsIF9jOwogICAgICB2YXIgYnVmZmVyU2l6ZTsKICAgICAgdmFyIHJlZkNvdW50ID0gZmFsc2U7CiAgICAgIGlmIChjb25maWdPckJ1ZmZlclNpemUgJiYgdHlwZW9mIGNvbmZpZ09yQnVmZmVyU2l6ZSA9PT0gIm9iamVjdCIpIHsKICAgICAgICBfYSA9IGNvbmZpZ09yQnVmZmVyU2l6ZS5idWZmZXJTaXplLCBidWZmZXJTaXplID0gX2EgPT09IHZvaWQgMCA/IEluZmluaXR5IDogX2EsIF9iID0gY29uZmlnT3JCdWZmZXJTaXplLndpbmRvd1RpbWUsIHdpbmRvd1RpbWUgPSBfYiA9PT0gdm9pZCAwID8gSW5maW5pdHkgOiBfYiwgX2MgPSBjb25maWdPckJ1ZmZlclNpemUucmVmQ291bnQsIHJlZkNvdW50ID0gX2MgPT09IHZvaWQgMCA/IGZhbHNlIDogX2MsIHNjaGVkdWxlciA9IGNvbmZpZ09yQnVmZmVyU2l6ZS5zY2hlZHVsZXI7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgYnVmZmVyU2l6ZSA9IGNvbmZpZ09yQnVmZmVyU2l6ZSAhPT0gbnVsbCAmJiBjb25maWdPckJ1ZmZlclNpemUgIT09IHZvaWQgMCA/IGNvbmZpZ09yQnVmZmVyU2l6ZSA6IEluZmluaXR5OwogICAgICB9CiAgICAgIHJldHVybiBzaGFyZV8xLnNoYXJlKHsKICAgICAgICBjb25uZWN0b3I6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG5ldyBSZXBsYXlTdWJqZWN0XzEuUmVwbGF5U3ViamVjdChidWZmZXJTaXplLCB3aW5kb3dUaW1lLCBzY2hlZHVsZXIpOwogICAgICAgIH0sCiAgICAgICAgcmVzZXRPbkVycm9yOiB0cnVlLAogICAgICAgIHJlc2V0T25Db21wbGV0ZTogZmFsc2UsCiAgICAgICAgcmVzZXRPblJlZkNvdW50WmVybzogcmVmQ291bnQKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zaGFyZVJlcGxheSA9IHNoYXJlUmVwbGF5OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zaW5nbGUuanMKdmFyIHJlcXVpcmVfc2luZ2xlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NpbmdsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2luZ2xlID0gdm9pZCAwOwogICAgdmFyIEVtcHR5RXJyb3JfMSA9IHJlcXVpcmVfRW1wdHlFcnJvcigpOwogICAgdmFyIFNlcXVlbmNlRXJyb3JfMSA9IHJlcXVpcmVfU2VxdWVuY2VFcnJvcigpOwogICAgdmFyIE5vdEZvdW5kRXJyb3JfMSA9IHJlcXVpcmVfTm90Rm91bmRFcnJvcigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHNpbmdsZShwcmVkaWNhdGUpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgIHZhciBzaW5nbGVWYWx1ZTsKICAgICAgICB2YXIgc2VlblZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgc2VlblZhbHVlID0gdHJ1ZTsKICAgICAgICAgIGlmICghcHJlZGljYXRlIHx8IHByZWRpY2F0ZSh2YWx1ZSwgaW5kZXgrKywgc291cmNlKSkgewogICAgICAgICAgICBoYXNWYWx1ZSAmJiBzdWJzY3JpYmVyLmVycm9yKG5ldyBTZXF1ZW5jZUVycm9yXzEuU2VxdWVuY2VFcnJvcigiVG9vIG1hbnkgbWF0Y2hpbmcgdmFsdWVzIikpOwogICAgICAgICAgICBoYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICAgIHNpbmdsZVZhbHVlID0gdmFsdWU7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoaGFzVmFsdWUpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHNpbmdsZVZhbHVlKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5lcnJvcihzZWVuVmFsdWUgPyBuZXcgTm90Rm91bmRFcnJvcl8xLk5vdEZvdW5kRXJyb3IoIk5vIG1hdGNoaW5nIHZhbHVlcyIpIDogbmV3IEVtcHR5RXJyb3JfMS5FbXB0eUVycm9yKCkpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zaW5nbGUgPSBzaW5nbGU7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXAuanMKdmFyIHJlcXVpcmVfc2tpcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9za2lwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5za2lwID0gdm9pZCAwOwogICAgdmFyIGZpbHRlcl8xID0gcmVxdWlyZV9maWx0ZXIoKTsKICAgIGZ1bmN0aW9uIHNraXAoY291bnQpIHsKICAgICAgcmV0dXJuIGZpbHRlcl8xLmZpbHRlcihmdW5jdGlvbihfLCBpbmRleCkgewogICAgICAgIHJldHVybiBjb3VudCA8PSBpbmRleDsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5za2lwID0gc2tpcDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2tpcExhc3QuanMKdmFyIHJlcXVpcmVfc2tpcExhc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2tpcExhc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNraXBMYXN0ID0gdm9pZCAwOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gc2tpcExhc3Qoc2tpcENvdW50KSB7CiAgICAgIHJldHVybiBza2lwQ291bnQgPD0gMCA/IGlkZW50aXR5XzEuaWRlbnRpdHkgOiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgcmluZyA9IG5ldyBBcnJheShza2lwQ291bnQpOwogICAgICAgIHZhciBzZWVuID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIHZhbHVlSW5kZXggPSBzZWVuKys7CiAgICAgICAgICBpZiAodmFsdWVJbmRleCA8IHNraXBDb3VudCkgewogICAgICAgICAgICByaW5nW3ZhbHVlSW5kZXhdID0gdmFsdWU7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB2YXIgaW5kZXggPSB2YWx1ZUluZGV4ICUgc2tpcENvdW50OwogICAgICAgICAgICB2YXIgb2xkVmFsdWUgPSByaW5nW2luZGV4XTsKICAgICAgICAgICAgcmluZ1tpbmRleF0gPSB2YWx1ZTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KG9sZFZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmluZyA9IG51bGw7CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5za2lwTGFzdCA9IHNraXBMYXN0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9za2lwVW50aWwuanMKdmFyIHJlcXVpcmVfc2tpcFVudGlsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXBVbnRpbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2tpcFVudGlsID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICBmdW5jdGlvbiBza2lwVW50aWwobm90aWZpZXIpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciB0YWtpbmcgPSBmYWxzZTsKICAgICAgICB2YXIgc2tpcFN1YnNjcmliZXIgPSBPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBza2lwU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBza2lwU3Vic2NyaWJlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2tpcFN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHRha2luZyA9IHRydWU7CiAgICAgICAgfSwgbm9vcF8xLm5vb3ApOwogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShub3RpZmllcikuc3Vic2NyaWJlKHNraXBTdWJzY3JpYmVyKTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuIHRha2luZyAmJiBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5za2lwVW50aWwgPSBza2lwVW50aWw7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXBXaGlsZS5qcwp2YXIgcmVxdWlyZV9za2lwV2hpbGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2tpcFdoaWxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5za2lwV2hpbGUgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gc2tpcFdoaWxlKHByZWRpY2F0ZSkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHRha2luZyA9IGZhbHNlOwogICAgICAgIHZhciBpbmRleCA9IDA7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHJldHVybiAodGFraW5nIHx8ICh0YWtpbmcgPSAhcHJlZGljYXRlKHZhbHVlLCBpbmRleCsrKSkpICYmIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNraXBXaGlsZSA9IHNraXBXaGlsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3RhcnRXaXRoLmpzCnZhciByZXF1aXJlX3N0YXJ0V2l0aCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zdGFydFdpdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN0YXJ0V2l0aCA9IHZvaWQgMDsKICAgIHZhciBjb25jYXRfMSA9IHJlcXVpcmVfY29uY2F0KCk7CiAgICB2YXIgYXJnc18xID0gcmVxdWlyZV9hcmdzKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICBmdW5jdGlvbiBzdGFydFdpdGgoKSB7CiAgICAgIHZhciB2YWx1ZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICB2YWx1ZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVyID0gYXJnc18xLnBvcFNjaGVkdWxlcih2YWx1ZXMpOwogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgKHNjaGVkdWxlciA/IGNvbmNhdF8xLmNvbmNhdCh2YWx1ZXMsIHNvdXJjZSwgc2NoZWR1bGVyKSA6IGNvbmNhdF8xLmNvbmNhdCh2YWx1ZXMsIHNvdXJjZSkpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zdGFydFdpdGggPSBzdGFydFdpdGg7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3N3aXRjaE1hcC5qcwp2YXIgcmVxdWlyZV9zd2l0Y2hNYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3dpdGNoTWFwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zd2l0Y2hNYXAgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHN3aXRjaE1hcChwcm9qZWN0LCByZXN1bHRTZWxlY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGlubmVyU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICB2YXIgaXNDb21wbGV0ZSA9IGZhbHNlOwogICAgICAgIHZhciBjaGVja0NvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gaXNDb21wbGV0ZSAmJiAhaW5uZXJTdWJzY3JpYmVyICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9OwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBpbm5lclN1YnNjcmliZXIgPT09IG51bGwgfHwgaW5uZXJTdWJzY3JpYmVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBpbm5lclN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHZhciBpbm5lckluZGV4ID0gMDsKICAgICAgICAgIHZhciBvdXRlckluZGV4ID0gaW5kZXgrKzsKICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShwcm9qZWN0KHZhbHVlLCBvdXRlckluZGV4KSkuc3Vic2NyaWJlKGlubmVyU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihpbm5lclZhbHVlKSB7CiAgICAgICAgICAgIHJldHVybiBzdWJzY3JpYmVyLm5leHQocmVzdWx0U2VsZWN0b3IgPyByZXN1bHRTZWxlY3Rvcih2YWx1ZSwgaW5uZXJWYWx1ZSwgb3V0ZXJJbmRleCwgaW5uZXJJbmRleCsrKSA6IGlubmVyVmFsdWUpOwogICAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlubmVyU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgICAgIGNoZWNrQ29tcGxldGUoKTsKICAgICAgICAgIH0pKTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIGlzQ29tcGxldGUgPSB0cnVlOwogICAgICAgICAgY2hlY2tDb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zd2l0Y2hNYXAgPSBzd2l0Y2hNYXA7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3N3aXRjaEFsbC5qcwp2YXIgcmVxdWlyZV9zd2l0Y2hBbGwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3dpdGNoQWxsLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zd2l0Y2hBbGwgPSB2b2lkIDA7CiAgICB2YXIgc3dpdGNoTWFwXzEgPSByZXF1aXJlX3N3aXRjaE1hcCgpOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICBmdW5jdGlvbiBzd2l0Y2hBbGwoKSB7CiAgICAgIHJldHVybiBzd2l0Y2hNYXBfMS5zd2l0Y2hNYXAoaWRlbnRpdHlfMS5pZGVudGl0eSk7CiAgICB9CiAgICBleHBvcnRzMi5zd2l0Y2hBbGwgPSBzd2l0Y2hBbGw7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3N3aXRjaE1hcFRvLmpzCnZhciByZXF1aXJlX3N3aXRjaE1hcFRvID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3N3aXRjaE1hcFRvLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zd2l0Y2hNYXBUbyA9IHZvaWQgMDsKICAgIHZhciBzd2l0Y2hNYXBfMSA9IHJlcXVpcmVfc3dpdGNoTWFwKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBzd2l0Y2hNYXBUbyhpbm5lck9ic2VydmFibGUsIHJlc3VsdFNlbGVjdG9yKSB7CiAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihyZXN1bHRTZWxlY3RvcikgPyBzd2l0Y2hNYXBfMS5zd2l0Y2hNYXAoZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIGlubmVyT2JzZXJ2YWJsZTsKICAgICAgfSwgcmVzdWx0U2VsZWN0b3IpIDogc3dpdGNoTWFwXzEuc3dpdGNoTWFwKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBpbm5lck9ic2VydmFibGU7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc3dpdGNoTWFwVG8gPSBzd2l0Y2hNYXBUbzsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3dpdGNoU2Nhbi5qcwp2YXIgcmVxdWlyZV9zd2l0Y2hTY2FuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3N3aXRjaFNjYW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN3aXRjaFNjYW4gPSB2b2lkIDA7CiAgICB2YXIgc3dpdGNoTWFwXzEgPSByZXF1aXJlX3N3aXRjaE1hcCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gc3dpdGNoU2NhbihhY2N1bXVsYXRvciwgc2VlZCkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHN0YXRlID0gc2VlZDsKICAgICAgICBzd2l0Y2hNYXBfMS5zd2l0Y2hNYXAoZnVuY3Rpb24odmFsdWUsIGluZGV4KSB7CiAgICAgICAgICByZXR1cm4gYWNjdW11bGF0b3Ioc3RhdGUsIHZhbHVlLCBpbmRleCk7CiAgICAgICAgfSwgZnVuY3Rpb24oXywgaW5uZXJWYWx1ZSkgewogICAgICAgICAgcmV0dXJuIHN0YXRlID0gaW5uZXJWYWx1ZSwgaW5uZXJWYWx1ZTsKICAgICAgICB9KShzb3VyY2UpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICBzdGF0ZSA9IG51bGw7CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zd2l0Y2hTY2FuID0gc3dpdGNoU2NhbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFrZVVudGlsLmpzCnZhciByZXF1aXJlX3Rha2VVbnRpbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90YWtlVW50aWwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRha2VVbnRpbCA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgZnVuY3Rpb24gdGFrZVVudGlsKG5vdGlmaWVyKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20obm90aWZpZXIpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0sIG5vb3BfMS5ub29wKSk7CiAgICAgICAgIXN1YnNjcmliZXIuY2xvc2VkICYmIHNvdXJjZS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGFrZVVudGlsID0gdGFrZVVudGlsOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90YWtlV2hpbGUuanMKdmFyIHJlcXVpcmVfdGFrZVdoaWxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rha2VXaGlsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGFrZVdoaWxlID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHRha2VXaGlsZShwcmVkaWNhdGUsIGluY2x1c2l2ZSkgewogICAgICBpZiAoaW5jbHVzaXZlID09PSB2b2lkIDApIHsKICAgICAgICBpbmNsdXNpdmUgPSBmYWxzZTsKICAgICAgfQogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIHJlc3VsdCA9IHByZWRpY2F0ZSh2YWx1ZSwgaW5kZXgrKyk7CiAgICAgICAgICAocmVzdWx0IHx8IGluY2x1c2l2ZSkgJiYgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgICFyZXN1bHQgJiYgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50YWtlV2hpbGUgPSB0YWtlV2hpbGU7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3RhcC5qcwp2YXIgcmVxdWlyZV90YXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50YXAgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICBmdW5jdGlvbiB0YXAob2JzZXJ2ZXJPck5leHQsIGVycm9yLCBjb21wbGV0ZSkgewogICAgICB2YXIgdGFwT2JzZXJ2ZXIgPSBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihvYnNlcnZlck9yTmV4dCkgfHwgZXJyb3IgfHwgY29tcGxldGUgPyB7IG5leHQ6IG9ic2VydmVyT3JOZXh0LCBlcnJvciwgY29tcGxldGUgfSA6IG9ic2VydmVyT3JOZXh0OwogICAgICByZXR1cm4gdGFwT2JzZXJ2ZXIgPyBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgKF9hID0gdGFwT2JzZXJ2ZXIuc3Vic2NyaWJlKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY2FsbCh0YXBPYnNlcnZlcik7CiAgICAgICAgdmFyIGlzVW5zdWIgPSB0cnVlOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgX2EyOwogICAgICAgICAgKF9hMiA9IHRhcE9ic2VydmVyLm5leHQpID09PSBudWxsIHx8IF9hMiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EyLmNhbGwodGFwT2JzZXJ2ZXIsIHZhbHVlKTsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgX2EyOwogICAgICAgICAgaXNVbnN1YiA9IGZhbHNlOwogICAgICAgICAgKF9hMiA9IHRhcE9ic2VydmVyLmNvbXBsZXRlKSA9PT0gbnVsbCB8fCBfYTIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hMi5jYWxsKHRhcE9ic2VydmVyKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHZhciBfYTI7CiAgICAgICAgICBpc1Vuc3ViID0gZmFsc2U7CiAgICAgICAgICAoX2EyID0gdGFwT2JzZXJ2ZXIuZXJyb3IpID09PSBudWxsIHx8IF9hMiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EyLmNhbGwodGFwT2JzZXJ2ZXIsIGVycik7CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgX2EyLCBfYjsKICAgICAgICAgIGlmIChpc1Vuc3ViKSB7CiAgICAgICAgICAgIChfYTIgPSB0YXBPYnNlcnZlci51bnN1YnNjcmliZSkgPT09IG51bGwgfHwgX2EyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYTIuY2FsbCh0YXBPYnNlcnZlcik7CiAgICAgICAgICB9CiAgICAgICAgICAoX2IgPSB0YXBPYnNlcnZlci5maW5hbGl6ZSkgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLmNhbGwodGFwT2JzZXJ2ZXIpOwogICAgICAgIH0pKTsKICAgICAgfSkgOiBpZGVudGl0eV8xLmlkZW50aXR5OwogICAgfQogICAgZXhwb3J0czIudGFwID0gdGFwOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aHJvdHRsZS5qcwp2YXIgcmVxdWlyZV90aHJvdHRsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aHJvdHRsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGhyb3R0bGUgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIHRocm90dGxlKGR1cmF0aW9uU2VsZWN0b3IsIGNvbmZpZykgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIF9hID0gY29uZmlnICE9PSBudWxsICYmIGNvbmZpZyAhPT0gdm9pZCAwID8gY29uZmlnIDoge30sIF9iID0gX2EubGVhZGluZywgbGVhZGluZyA9IF9iID09PSB2b2lkIDAgPyB0cnVlIDogX2IsIF9jID0gX2EudHJhaWxpbmcsIHRyYWlsaW5nID0gX2MgPT09IHZvaWQgMCA/IGZhbHNlIDogX2M7CiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIHNlbmRWYWx1ZSA9IG51bGw7CiAgICAgICAgdmFyIHRocm90dGxlZCA9IG51bGw7CiAgICAgICAgdmFyIGlzQ29tcGxldGUgPSBmYWxzZTsKICAgICAgICB2YXIgZW5kVGhyb3R0bGluZyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgdGhyb3R0bGVkID09PSBudWxsIHx8IHRocm90dGxlZCA9PT0gdm9pZCAwID8gdm9pZCAwIDogdGhyb3R0bGVkLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB0aHJvdHRsZWQgPSBudWxsOwogICAgICAgICAgaWYgKHRyYWlsaW5nKSB7CiAgICAgICAgICAgIHNlbmQoKTsKICAgICAgICAgICAgaXNDb21wbGV0ZSAmJiBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICB2YXIgY2xlYW51cFRocm90dGxpbmcgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIHRocm90dGxlZCA9IG51bGw7CiAgICAgICAgICBpc0NvbXBsZXRlICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9OwogICAgICAgIHZhciBzdGFydFRocm90dGxlID0gZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHJldHVybiB0aHJvdHRsZWQgPSBpbm5lckZyb21fMS5pbm5lckZyb20oZHVyYXRpb25TZWxlY3Rvcih2YWx1ZSkpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZW5kVGhyb3R0bGluZywgY2xlYW51cFRocm90dGxpbmcpKTsKICAgICAgICB9OwogICAgICAgIHZhciBzZW5kID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoaGFzVmFsdWUpIHsKICAgICAgICAgICAgaGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICAgICAgdmFyIHZhbHVlID0gc2VuZFZhbHVlOwogICAgICAgICAgICBzZW5kVmFsdWUgPSBudWxsOwogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgICAhaXNDb21wbGV0ZSAmJiBzdGFydFRocm90dGxlKHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBoYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICBzZW5kVmFsdWUgPSB2YWx1ZTsKICAgICAgICAgICEodGhyb3R0bGVkICYmICF0aHJvdHRsZWQuY2xvc2VkKSAmJiAobGVhZGluZyA/IHNlbmQoKSA6IHN0YXJ0VGhyb3R0bGUodmFsdWUpKTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIGlzQ29tcGxldGUgPSB0cnVlOwogICAgICAgICAgISh0cmFpbGluZyAmJiBoYXNWYWx1ZSAmJiB0aHJvdHRsZWQgJiYgIXRocm90dGxlZC5jbG9zZWQpICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGhyb3R0bGUgPSB0aHJvdHRsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGhyb3R0bGVUaW1lLmpzCnZhciByZXF1aXJlX3Rocm90dGxlVGltZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aHJvdHRsZVRpbWUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRocm90dGxlVGltZSA9IHZvaWQgMDsKICAgIHZhciBhc3luY18xID0gcmVxdWlyZV9hc3luYygpOwogICAgdmFyIHRocm90dGxlXzEgPSByZXF1aXJlX3Rocm90dGxlKCk7CiAgICB2YXIgdGltZXJfMSA9IHJlcXVpcmVfdGltZXIoKTsKICAgIGZ1bmN0aW9uIHRocm90dGxlVGltZShkdXJhdGlvbiwgc2NoZWR1bGVyLCBjb25maWcpIHsKICAgICAgaWYgKHNjaGVkdWxlciA9PT0gdm9pZCAwKSB7CiAgICAgICAgc2NoZWR1bGVyID0gYXN5bmNfMS5hc3luY1NjaGVkdWxlcjsKICAgICAgfQogICAgICB2YXIgZHVyYXRpb24kID0gdGltZXJfMS50aW1lcihkdXJhdGlvbiwgc2NoZWR1bGVyKTsKICAgICAgcmV0dXJuIHRocm90dGxlXzEudGhyb3R0bGUoZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIGR1cmF0aW9uJDsKICAgICAgfSwgY29uZmlnKTsKICAgIH0KICAgIGV4cG9ydHMyLnRocm90dGxlVGltZSA9IHRocm90dGxlVGltZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGltZUludGVydmFsLmpzCnZhciByZXF1aXJlX3RpbWVJbnRlcnZhbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aW1lSW50ZXJ2YWwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlRpbWVJbnRlcnZhbCA9IGV4cG9ydHMyLnRpbWVJbnRlcnZhbCA9IHZvaWQgMDsKICAgIHZhciBhc3luY18xID0gcmVxdWlyZV9hc3luYygpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHRpbWVJbnRlcnZhbChzY2hlZHVsZXIpIHsKICAgICAgaWYgKHNjaGVkdWxlciA9PT0gdm9pZCAwKSB7CiAgICAgICAgc2NoZWR1bGVyID0gYXN5bmNfMS5hc3luY1NjaGVkdWxlcjsKICAgICAgfQogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGxhc3QgPSBzY2hlZHVsZXIubm93KCk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciBub3cgPSBzY2hlZHVsZXIubm93KCk7CiAgICAgICAgICB2YXIgaW50ZXJ2YWwgPSBub3cgLSBsYXN0OwogICAgICAgICAgbGFzdCA9IG5vdzsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChuZXcgVGltZUludGVydmFsKHZhbHVlLCBpbnRlcnZhbCkpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50aW1lSW50ZXJ2YWwgPSB0aW1lSW50ZXJ2YWw7CiAgICB2YXIgVGltZUludGVydmFsID0gLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICBmdW5jdGlvbiBUaW1lSW50ZXJ2YWwyKHZhbHVlLCBpbnRlcnZhbCkgewogICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTsKICAgICAgICB0aGlzLmludGVydmFsID0gaW50ZXJ2YWw7CiAgICAgIH0KICAgICAgcmV0dXJuIFRpbWVJbnRlcnZhbDI7CiAgICB9KCk7CiAgICBleHBvcnRzMi5UaW1lSW50ZXJ2YWwgPSBUaW1lSW50ZXJ2YWw7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3RpbWVvdXRXaXRoLmpzCnZhciByZXF1aXJlX3RpbWVvdXRXaXRoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3RpbWVvdXRXaXRoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50aW1lb3V0V2l0aCA9IHZvaWQgMDsKICAgIHZhciBhc3luY18xID0gcmVxdWlyZV9hc3luYygpOwogICAgdmFyIGlzRGF0ZV8xID0gcmVxdWlyZV9pc0RhdGUoKTsKICAgIHZhciB0aW1lb3V0XzEgPSByZXF1aXJlX3RpbWVvdXQoKTsKICAgIGZ1bmN0aW9uIHRpbWVvdXRXaXRoKGR1ZSwgd2l0aE9ic2VydmFibGUsIHNjaGVkdWxlcikgewogICAgICB2YXIgZmlyc3Q7CiAgICAgIHZhciBlYWNoOwogICAgICB2YXIgX3dpdGg7CiAgICAgIHNjaGVkdWxlciA9IHNjaGVkdWxlciAhPT0gbnVsbCAmJiBzY2hlZHVsZXIgIT09IHZvaWQgMCA/IHNjaGVkdWxlciA6IGFzeW5jXzEuYXN5bmM7CiAgICAgIGlmIChpc0RhdGVfMS5pc1ZhbGlkRGF0ZShkdWUpKSB7CiAgICAgICAgZmlyc3QgPSBkdWU7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGR1ZSA9PT0gIm51bWJlciIpIHsKICAgICAgICBlYWNoID0gZHVlOwogICAgICB9CiAgICAgIGlmICh3aXRoT2JzZXJ2YWJsZSkgewogICAgICAgIF93aXRoID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gd2l0aE9ic2VydmFibGU7CiAgICAgICAgfTsKICAgICAgfSBlbHNlIHsKICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJObyBvYnNlcnZhYmxlIHByb3ZpZGVkIHRvIHN3aXRjaCB0byIpOwogICAgICB9CiAgICAgIGlmIChmaXJzdCA9PSBudWxsICYmIGVhY2ggPT0gbnVsbCkgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIk5vIHRpbWVvdXQgcHJvdmlkZWQuIik7CiAgICAgIH0KICAgICAgcmV0dXJuIHRpbWVvdXRfMS50aW1lb3V0KHsKICAgICAgICBmaXJzdCwKICAgICAgICBlYWNoLAogICAgICAgIHNjaGVkdWxlciwKICAgICAgICB3aXRoOiBfd2l0aAogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnRpbWVvdXRXaXRoID0gdGltZW91dFdpdGg7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3RpbWVzdGFtcC5qcwp2YXIgcmVxdWlyZV90aW1lc3RhbXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGltZXN0YW1wLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50aW1lc3RhbXAgPSB2b2lkIDA7CiAgICB2YXIgZGF0ZVRpbWVzdGFtcFByb3ZpZGVyXzEgPSByZXF1aXJlX2RhdGVUaW1lc3RhbXBQcm92aWRlcigpOwogICAgdmFyIG1hcF8xID0gcmVxdWlyZV9tYXAoKTsKICAgIGZ1bmN0aW9uIHRpbWVzdGFtcCh0aW1lc3RhbXBQcm92aWRlcikgewogICAgICBpZiAodGltZXN0YW1wUHJvdmlkZXIgPT09IHZvaWQgMCkgewogICAgICAgIHRpbWVzdGFtcFByb3ZpZGVyID0gZGF0ZVRpbWVzdGFtcFByb3ZpZGVyXzEuZGF0ZVRpbWVzdGFtcFByb3ZpZGVyOwogICAgICB9CiAgICAgIHJldHVybiBtYXBfMS5tYXAoZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICByZXR1cm4geyB2YWx1ZSwgdGltZXN0YW1wOiB0aW1lc3RhbXBQcm92aWRlci5ub3coKSB9OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnRpbWVzdGFtcCA9IHRpbWVzdGFtcDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvd2luZG93LmpzCnZhciByZXF1aXJlX3dpbmRvdyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy93aW5kb3cuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndpbmRvdyA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gd2luZG93Mih3aW5kb3dCb3VuZGFyaWVzKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgd2luZG93U3ViamVjdCA9IG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICAgIHN1YnNjcmliZXIubmV4dCh3aW5kb3dTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpKTsKICAgICAgICB2YXIgZXJyb3JIYW5kbGVyID0gZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICB3aW5kb3dTdWJqZWN0LmVycm9yKGVycik7CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgfTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuIHdpbmRvd1N1YmplY3QgPT09IG51bGwgfHwgd2luZG93U3ViamVjdCA9PT0gdm9pZCAwID8gdm9pZCAwIDogd2luZG93U3ViamVjdC5uZXh0KHZhbHVlKTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHdpbmRvd1N1YmplY3QuY29tcGxldGUoKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCBlcnJvckhhbmRsZXIpKTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20od2luZG93Qm91bmRhcmllcykuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHdpbmRvd1N1YmplY3QuY29tcGxldGUoKTsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh3aW5kb3dTdWJqZWN0ID0gbmV3IFN1YmplY3RfMS5TdWJqZWN0KCkpOwogICAgICAgIH0sIG5vb3BfMS5ub29wLCBlcnJvckhhbmRsZXIpKTsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICB3aW5kb3dTdWJqZWN0ID09PSBudWxsIHx8IHdpbmRvd1N1YmplY3QgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHdpbmRvd1N1YmplY3QudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHdpbmRvd1N1YmplY3QgPSBudWxsOwogICAgICAgIH07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIud2luZG93ID0gd2luZG93MjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvd2luZG93Q291bnQuanMKdmFyIHJlcXVpcmVfd2luZG93Q291bnQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvd2luZG93Q291bnQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX192YWx1ZXMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3ZhbHVlcyB8fCBmdW5jdGlvbihvKSB7CiAgICAgIHZhciBzID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBTeW1ib2wuaXRlcmF0b3IsIG0gPSBzICYmIG9bc10sIGkgPSAwOwogICAgICBpZiAobSkgcmV0dXJuIG0uY2FsbChvKTsKICAgICAgaWYgKG8gJiYgdHlwZW9mIG8ubGVuZ3RoID09PSAibnVtYmVyIikgcmV0dXJuIHsKICAgICAgICBuZXh0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChvICYmIGkgPj0gby5sZW5ndGgpIG8gPSB2b2lkIDA7CiAgICAgICAgICByZXR1cm4geyB2YWx1ZTogbyAmJiBvW2krK10sIGRvbmU6ICFvIH07CiAgICAgICAgfQogICAgICB9OwogICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKHMgPyAiT2JqZWN0IGlzIG5vdCBpdGVyYWJsZS4iIDogIlN5bWJvbC5pdGVyYXRvciBpcyBub3QgZGVmaW5lZC4iKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndpbmRvd0NvdW50ID0gdm9pZCAwOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHdpbmRvd0NvdW50KHdpbmRvd1NpemUsIHN0YXJ0V2luZG93RXZlcnkpIHsKICAgICAgaWYgKHN0YXJ0V2luZG93RXZlcnkgPT09IHZvaWQgMCkgewogICAgICAgIHN0YXJ0V2luZG93RXZlcnkgPSAwOwogICAgICB9CiAgICAgIHZhciBzdGFydEV2ZXJ5ID0gc3RhcnRXaW5kb3dFdmVyeSA+IDAgPyBzdGFydFdpbmRvd0V2ZXJ5IDogd2luZG93U2l6ZTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciB3aW5kb3dzID0gW25ldyBTdWJqZWN0XzEuU3ViamVjdCgpXTsKICAgICAgICB2YXIgc3RhcnRzID0gW107CiAgICAgICAgdmFyIGNvdW50ID0gMDsKICAgICAgICBzdWJzY3JpYmVyLm5leHQod2luZG93c1swXS5hc09ic2VydmFibGUoKSk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciBlXzEsIF9hOwogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgZm9yICh2YXIgd2luZG93c18xID0gX192YWx1ZXMod2luZG93cyksIHdpbmRvd3NfMV8xID0gd2luZG93c18xLm5leHQoKTsgIXdpbmRvd3NfMV8xLmRvbmU7IHdpbmRvd3NfMV8xID0gd2luZG93c18xLm5leHQoKSkgewogICAgICAgICAgICAgIHZhciB3aW5kb3dfMSA9IHdpbmRvd3NfMV8xLnZhbHVlOwogICAgICAgICAgICAgIHdpbmRvd18xLm5leHQodmFsdWUpOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGNhdGNoIChlXzFfMSkgewogICAgICAgICAgICBlXzEgPSB7IGVycm9yOiBlXzFfMSB9OwogICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICBpZiAod2luZG93c18xXzEgJiYgIXdpbmRvd3NfMV8xLmRvbmUgJiYgKF9hID0gd2luZG93c18xLnJldHVybikpIF9hLmNhbGwod2luZG93c18xKTsKICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICBpZiAoZV8xKSB0aHJvdyBlXzEuZXJyb3I7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHZhciBjID0gY291bnQgLSB3aW5kb3dTaXplICsgMTsKICAgICAgICAgIGlmIChjID49IDAgJiYgYyAlIHN0YXJ0RXZlcnkgPT09IDApIHsKICAgICAgICAgICAgd2luZG93cy5zaGlmdCgpLmNvbXBsZXRlKCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoKytjb3VudCAlIHN0YXJ0RXZlcnkgPT09IDApIHsKICAgICAgICAgICAgdmFyIHdpbmRvd18yID0gbmV3IFN1YmplY3RfMS5TdWJqZWN0KCk7CiAgICAgICAgICAgIHdpbmRvd3MucHVzaCh3aW5kb3dfMik7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh3aW5kb3dfMi5hc09ic2VydmFibGUoKSk7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB3aGlsZSAod2luZG93cy5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgIHdpbmRvd3Muc2hpZnQoKS5jb21wbGV0ZSgpOwogICAgICAgICAgfQogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0sIGZ1bmN0aW9uKGVycikgewogICAgICAgICAgd2hpbGUgKHdpbmRvd3MubGVuZ3RoID4gMCkgewogICAgICAgICAgICB3aW5kb3dzLnNoaWZ0KCkuZXJyb3IoZXJyKTsKICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHN0YXJ0cyA9IG51bGw7CiAgICAgICAgICB3aW5kb3dzID0gbnVsbDsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIud2luZG93Q291bnQgPSB3aW5kb3dDb3VudDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvd2luZG93VGltZS5qcwp2YXIgcmVxdWlyZV93aW5kb3dUaW1lID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd1RpbWUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndpbmRvd1RpbWUgPSB2b2lkIDA7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGFyclJlbW92ZV8xID0gcmVxdWlyZV9hcnJSZW1vdmUoKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBleGVjdXRlU2NoZWR1bGVfMSA9IHJlcXVpcmVfZXhlY3V0ZVNjaGVkdWxlKCk7CiAgICBmdW5jdGlvbiB3aW5kb3dUaW1lKHdpbmRvd1RpbWVTcGFuKSB7CiAgICAgIHZhciBfYSwgX2I7CiAgICAgIHZhciBvdGhlckFyZ3MgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAxOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlckFyZ3NbX2kgLSAxXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHNjaGVkdWxlciA9IChfYSA9IGFyZ3NfMS5wb3BTY2hlZHVsZXIob3RoZXJBcmdzKSkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogYXN5bmNfMS5hc3luY1NjaGVkdWxlcjsKICAgICAgdmFyIHdpbmRvd0NyZWF0aW9uSW50ZXJ2YWwgPSAoX2IgPSBvdGhlckFyZ3NbMF0pICE9PSBudWxsICYmIF9iICE9PSB2b2lkIDAgPyBfYiA6IG51bGw7CiAgICAgIHZhciBtYXhXaW5kb3dTaXplID0gb3RoZXJBcmdzWzFdIHx8IEluZmluaXR5OwogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHdpbmRvd1JlY29yZHMgPSBbXTsKICAgICAgICB2YXIgcmVzdGFydE9uQ2xvc2UgPSBmYWxzZTsKICAgICAgICB2YXIgY2xvc2VXaW5kb3cgPSBmdW5jdGlvbihyZWNvcmQpIHsKICAgICAgICAgIHZhciB3aW5kb3cyID0gcmVjb3JkLndpbmRvdywgc3VicyA9IHJlY29yZC5zdWJzOwogICAgICAgICAgd2luZG93Mi5jb21wbGV0ZSgpOwogICAgICAgICAgc3Vicy51bnN1YnNjcmliZSgpOwogICAgICAgICAgYXJyUmVtb3ZlXzEuYXJyUmVtb3ZlKHdpbmRvd1JlY29yZHMsIHJlY29yZCk7CiAgICAgICAgICByZXN0YXJ0T25DbG9zZSAmJiBzdGFydFdpbmRvdygpOwogICAgICAgIH07CiAgICAgICAgdmFyIHN0YXJ0V2luZG93ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAod2luZG93UmVjb3JkcykgewogICAgICAgICAgICB2YXIgc3VicyA9IG5ldyBTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24oKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5hZGQoc3Vicyk7CiAgICAgICAgICAgIHZhciB3aW5kb3dfMSA9IG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICAgICAgICB2YXIgcmVjb3JkXzEgPSB7CiAgICAgICAgICAgICAgd2luZG93OiB3aW5kb3dfMSwKICAgICAgICAgICAgICBzdWJzLAogICAgICAgICAgICAgIHNlZW46IDAKICAgICAgICAgICAgfTsKICAgICAgICAgICAgd2luZG93UmVjb3Jkcy5wdXNoKHJlY29yZF8xKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHdpbmRvd18xLmFzT2JzZXJ2YWJsZSgpKTsKICAgICAgICAgICAgZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnMsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGNsb3NlV2luZG93KHJlY29yZF8xKTsKICAgICAgICAgICAgfSwgd2luZG93VGltZVNwYW4pOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgaWYgKHdpbmRvd0NyZWF0aW9uSW50ZXJ2YWwgIT09IG51bGwgJiYgd2luZG93Q3JlYXRpb25JbnRlcnZhbCA+PSAwKSB7CiAgICAgICAgICBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgc2NoZWR1bGVyLCBzdGFydFdpbmRvdywgd2luZG93Q3JlYXRpb25JbnRlcnZhbCwgdHJ1ZSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJlc3RhcnRPbkNsb3NlID0gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgc3RhcnRXaW5kb3coKTsKICAgICAgICB2YXIgbG9vcCA9IGZ1bmN0aW9uKGNiKSB7CiAgICAgICAgICByZXR1cm4gd2luZG93UmVjb3Jkcy5zbGljZSgpLmZvckVhY2goY2IpOwogICAgICAgIH07CiAgICAgICAgdmFyIHRlcm1pbmF0ZSA9IGZ1bmN0aW9uKGNiKSB7CiAgICAgICAgICBsb29wKGZ1bmN0aW9uKF9hMikgewogICAgICAgICAgICB2YXIgd2luZG93MiA9IF9hMi53aW5kb3c7CiAgICAgICAgICAgIHJldHVybiBjYih3aW5kb3cyKTsKICAgICAgICAgIH0pOwogICAgICAgICAgY2Ioc3Vic2NyaWJlcik7CiAgICAgICAgICBzdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgfTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgbG9vcChmdW5jdGlvbihyZWNvcmQpIHsKICAgICAgICAgICAgcmVjb3JkLndpbmRvdy5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgbWF4V2luZG93U2l6ZSA8PSArK3JlY29yZC5zZWVuICYmIGNsb3NlV2luZG93KHJlY29yZCk7CiAgICAgICAgICB9KTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiB0ZXJtaW5hdGUoZnVuY3Rpb24oY29uc3VtZXIpIHsKICAgICAgICAgICAgcmV0dXJuIGNvbnN1bWVyLmNvbXBsZXRlKCk7CiAgICAgICAgICB9KTsKICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHJldHVybiB0ZXJtaW5hdGUoZnVuY3Rpb24oY29uc3VtZXIpIHsKICAgICAgICAgICAgcmV0dXJuIGNvbnN1bWVyLmVycm9yKGVycik7CiAgICAgICAgICB9KTsKICAgICAgICB9KSk7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2luZG93UmVjb3JkcyA9IG51bGw7CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi53aW5kb3dUaW1lID0gd2luZG93VGltZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvd2luZG93VG9nZ2xlLmpzCnZhciByZXF1aXJlX3dpbmRvd1RvZ2dsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy93aW5kb3dUb2dnbGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX192YWx1ZXMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3ZhbHVlcyB8fCBmdW5jdGlvbihvKSB7CiAgICAgIHZhciBzID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBTeW1ib2wuaXRlcmF0b3IsIG0gPSBzICYmIG9bc10sIGkgPSAwOwogICAgICBpZiAobSkgcmV0dXJuIG0uY2FsbChvKTsKICAgICAgaWYgKG8gJiYgdHlwZW9mIG8ubGVuZ3RoID09PSAibnVtYmVyIikgcmV0dXJuIHsKICAgICAgICBuZXh0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChvICYmIGkgPj0gby5sZW5ndGgpIG8gPSB2b2lkIDA7CiAgICAgICAgICByZXR1cm4geyB2YWx1ZTogbyAmJiBvW2krK10sIGRvbmU6ICFvIH07CiAgICAgICAgfQogICAgICB9OwogICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKHMgPyAiT2JqZWN0IGlzIG5vdCBpdGVyYWJsZS4iIDogIlN5bWJvbC5pdGVyYXRvciBpcyBub3QgZGVmaW5lZC4iKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndpbmRvd1RvZ2dsZSA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBhcnJSZW1vdmVfMSA9IHJlcXVpcmVfYXJyUmVtb3ZlKCk7CiAgICBmdW5jdGlvbiB3aW5kb3dUb2dnbGUob3BlbmluZ3MsIGNsb3NpbmdTZWxlY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHdpbmRvd3MgPSBbXTsKICAgICAgICB2YXIgaGFuZGxlRXJyb3IgPSBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHdoaWxlICgwIDwgd2luZG93cy5sZW5ndGgpIHsKICAgICAgICAgICAgd2luZG93cy5zaGlmdCgpLmVycm9yKGVycik7CiAgICAgICAgICB9CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgfTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20ob3BlbmluZ3MpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24ob3BlblZhbHVlKSB7CiAgICAgICAgICB2YXIgd2luZG93MiA9IG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICAgICAgd2luZG93cy5wdXNoKHdpbmRvdzIpOwogICAgICAgICAgdmFyIGNsb3NpbmdTdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uXzEuU3Vic2NyaXB0aW9uKCk7CiAgICAgICAgICB2YXIgY2xvc2VXaW5kb3cgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgYXJyUmVtb3ZlXzEuYXJyUmVtb3ZlKHdpbmRvd3MsIHdpbmRvdzIpOwogICAgICAgICAgICB3aW5kb3cyLmNvbXBsZXRlKCk7CiAgICAgICAgICAgIGNsb3NpbmdTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH07CiAgICAgICAgICB2YXIgY2xvc2luZ05vdGlmaWVyOwogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgY2xvc2luZ05vdGlmaWVyID0gaW5uZXJGcm9tXzEuaW5uZXJGcm9tKGNsb3NpbmdTZWxlY3RvcihvcGVuVmFsdWUpKTsKICAgICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgICBoYW5kbGVFcnJvcihlcnIpOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICB9CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQod2luZG93Mi5hc09ic2VydmFibGUoKSk7CiAgICAgICAgICBjbG9zaW5nU3Vic2NyaXB0aW9uLmFkZChjbG9zaW5nTm90aWZpZXIuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBjbG9zZVdpbmRvdywgbm9vcF8xLm5vb3AsIGhhbmRsZUVycm9yKSkpOwogICAgICAgIH0sIG5vb3BfMS5ub29wKSk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciBlXzEsIF9hOwogICAgICAgICAgdmFyIHdpbmRvd3NDb3B5ID0gd2luZG93cy5zbGljZSgpOwogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgZm9yICh2YXIgd2luZG93c0NvcHlfMSA9IF9fdmFsdWVzKHdpbmRvd3NDb3B5KSwgd2luZG93c0NvcHlfMV8xID0gd2luZG93c0NvcHlfMS5uZXh0KCk7ICF3aW5kb3dzQ29weV8xXzEuZG9uZTsgd2luZG93c0NvcHlfMV8xID0gd2luZG93c0NvcHlfMS5uZXh0KCkpIHsKICAgICAgICAgICAgICB2YXIgd2luZG93XzEgPSB3aW5kb3dzQ29weV8xXzEudmFsdWU7CiAgICAgICAgICAgICAgd2luZG93XzEubmV4dCh2YWx1ZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gY2F0Y2ggKGVfMV8xKSB7CiAgICAgICAgICAgIGVfMSA9IHsgZXJyb3I6IGVfMV8xIH07CiAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgIGlmICh3aW5kb3dzQ29weV8xXzEgJiYgIXdpbmRvd3NDb3B5XzFfMS5kb25lICYmIChfYSA9IHdpbmRvd3NDb3B5XzEucmV0dXJuKSkgX2EuY2FsbCh3aW5kb3dzQ29weV8xKTsKICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICBpZiAoZV8xKSB0aHJvdyBlXzEuZXJyb3I7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHdoaWxlICgwIDwgd2luZG93cy5sZW5ndGgpIHsKICAgICAgICAgICAgd2luZG93cy5zaGlmdCgpLmNvbXBsZXRlKCk7CiAgICAgICAgICB9CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgaGFuZGxlRXJyb3IsIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2hpbGUgKDAgPCB3aW5kb3dzLmxlbmd0aCkgewogICAgICAgICAgICB3aW5kb3dzLnNoaWZ0KCkudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIud2luZG93VG9nZ2xlID0gd2luZG93VG9nZ2xlOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy93aW5kb3dXaGVuLmpzCnZhciByZXF1aXJlX3dpbmRvd1doZW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvd2luZG93V2hlbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIud2luZG93V2hlbiA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gd2luZG93V2hlbihjbG9zaW5nU2VsZWN0b3IpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciB3aW5kb3cyOwogICAgICAgIHZhciBjbG9zaW5nU3Vic2NyaWJlcjsKICAgICAgICB2YXIgaGFuZGxlRXJyb3IgPSBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHdpbmRvdzIuZXJyb3IoZXJyKTsKICAgICAgICAgIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICB9OwogICAgICAgIHZhciBvcGVuV2luZG93ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBjbG9zaW5nU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBjbG9zaW5nU3Vic2NyaWJlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogY2xvc2luZ1N1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHdpbmRvdzIgPT09IG51bGwgfHwgd2luZG93MiA9PT0gdm9pZCAwID8gdm9pZCAwIDogd2luZG93Mi5jb21wbGV0ZSgpOwogICAgICAgICAgd2luZG93MiA9IG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHdpbmRvdzIuYXNPYnNlcnZhYmxlKCkpOwogICAgICAgICAgdmFyIGNsb3NpbmdOb3RpZmllcjsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIGNsb3NpbmdOb3RpZmllciA9IGlubmVyRnJvbV8xLmlubmVyRnJvbShjbG9zaW5nU2VsZWN0b3IoKSk7CiAgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgaGFuZGxlRXJyb3IoZXJyKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgfQogICAgICAgICAgY2xvc2luZ05vdGlmaWVyLnN1YnNjcmliZShjbG9zaW5nU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBvcGVuV2luZG93LCBvcGVuV2luZG93LCBoYW5kbGVFcnJvcikpOwogICAgICAgIH07CiAgICAgICAgb3BlbldpbmRvdygpOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICByZXR1cm4gd2luZG93Mi5uZXh0KHZhbHVlKTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHdpbmRvdzIuY29tcGxldGUoKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCBoYW5kbGVFcnJvciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBjbG9zaW5nU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBjbG9zaW5nU3Vic2NyaWJlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogY2xvc2luZ1N1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHdpbmRvdzIgPSBudWxsOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi53aW5kb3dXaGVuID0gd2luZG93V2hlbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvd2l0aExhdGVzdEZyb20uanMKdmFyIHJlcXVpcmVfd2l0aExhdGVzdEZyb20gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvd2l0aExhdGVzdEZyb20uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndpdGhMYXRlc3RGcm9tID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIGZ1bmN0aW9uIHdpdGhMYXRlc3RGcm9tKCkgewogICAgICB2YXIgaW5wdXRzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgaW5wdXRzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHByb2plY3QgPSBhcmdzXzEucG9wUmVzdWx0U2VsZWN0b3IoaW5wdXRzKTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBsZW4gPSBpbnB1dHMubGVuZ3RoOwogICAgICAgIHZhciBvdGhlclZhbHVlcyA9IG5ldyBBcnJheShsZW4pOwogICAgICAgIHZhciBoYXNWYWx1ZSA9IGlucHV0cy5tYXAoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfSk7CiAgICAgICAgdmFyIHJlYWR5ID0gZmFsc2U7CiAgICAgICAgdmFyIF9sb29wXzEgPSBmdW5jdGlvbihpMikgewogICAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKGlucHV0c1tpMl0pLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgICAgb3RoZXJWYWx1ZXNbaTJdID0gdmFsdWU7CiAgICAgICAgICAgIGlmICghcmVhZHkgJiYgIWhhc1ZhbHVlW2kyXSkgewogICAgICAgICAgICAgIGhhc1ZhbHVlW2kyXSA9IHRydWU7CiAgICAgICAgICAgICAgKHJlYWR5ID0gaGFzVmFsdWUuZXZlcnkoaWRlbnRpdHlfMS5pZGVudGl0eSkpICYmIChoYXNWYWx1ZSA9IG51bGwpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LCBub29wXzEubm9vcCkpOwogICAgICAgIH07CiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsZW47IGkrKykgewogICAgICAgICAgX2xvb3BfMShpKTsKICAgICAgICB9CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGlmIChyZWFkeSkgewogICAgICAgICAgICB2YXIgdmFsdWVzID0gX19zcHJlYWRBcnJheShbdmFsdWVdLCBfX3JlYWQob3RoZXJWYWx1ZXMpKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHByb2plY3QgPyBwcm9qZWN0LmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKHZhbHVlcykpKSA6IHZhbHVlcyk7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLndpdGhMYXRlc3RGcm9tID0gd2l0aExhdGVzdEZyb207CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3ppcEFsbC5qcwp2YXIgcmVxdWlyZV96aXBBbGwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvemlwQWxsLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi56aXBBbGwgPSB2b2lkIDA7CiAgICB2YXIgemlwXzEgPSByZXF1aXJlX3ppcCgpOwogICAgdmFyIGpvaW5BbGxJbnRlcm5hbHNfMSA9IHJlcXVpcmVfam9pbkFsbEludGVybmFscygpOwogICAgZnVuY3Rpb24gemlwQWxsKHByb2plY3QpIHsKICAgICAgcmV0dXJuIGpvaW5BbGxJbnRlcm5hbHNfMS5qb2luQWxsSW50ZXJuYWxzKHppcF8xLnppcCwgcHJvamVjdCk7CiAgICB9CiAgICBleHBvcnRzMi56aXBBbGwgPSB6aXBBbGw7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3ppcC5qcwp2YXIgcmVxdWlyZV96aXAyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3ppcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuemlwID0gdm9pZCAwOwogICAgdmFyIHppcF8xID0gcmVxdWlyZV96aXAoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIGZ1bmN0aW9uIHppcCgpIHsKICAgICAgdmFyIHNvdXJjZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBzb3VyY2VzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHppcF8xLnppcC5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW3NvdXJjZV0sIF9fcmVhZChzb3VyY2VzKSkpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi56aXAgPSB6aXA7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItYjEwY2FjMWE1Mi56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3ppcFdpdGguanMKdmFyIHJlcXVpcmVfemlwV2l0aCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLWIxMGNhYzFhNTIuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy96aXBXaXRoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi56aXBXaXRoID0gdm9pZCAwOwogICAgdmFyIHppcF8xID0gcmVxdWlyZV96aXAyKCk7CiAgICBmdW5jdGlvbiB6aXBXaXRoKCkgewogICAgICB2YXIgb3RoZXJJbnB1dHMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlcklucHV0c1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHJldHVybiB6aXBfMS56aXAuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQob3RoZXJJbnB1dHMpKSk7CiAgICB9CiAgICBleHBvcnRzMi56aXBXaXRoID0gemlwV2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbmRleC5qcwp2YXIgcmVxdWlyZV9janMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi1iMTBjYWMxYTUyLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgazIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgfSB9KTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaW50ZXJ2YWwgPSBleHBvcnRzMi5paWYgPSBleHBvcnRzMi5nZW5lcmF0ZSA9IGV4cG9ydHMyLmZyb21FdmVudFBhdHRlcm4gPSBleHBvcnRzMi5mcm9tRXZlbnQgPSBleHBvcnRzMi5mcm9tID0gZXhwb3J0czIuZm9ya0pvaW4gPSBleHBvcnRzMi5lbXB0eSA9IGV4cG9ydHMyLmRlZmVyID0gZXhwb3J0czIuY29ubmVjdGFibGUgPSBleHBvcnRzMi5jb25jYXQgPSBleHBvcnRzMi5jb21iaW5lTGF0ZXN0ID0gZXhwb3J0czIuYmluZE5vZGVDYWxsYmFjayA9IGV4cG9ydHMyLmJpbmRDYWxsYmFjayA9IGV4cG9ydHMyLlVuc3Vic2NyaXB0aW9uRXJyb3IgPSBleHBvcnRzMi5UaW1lb3V0RXJyb3IgPSBleHBvcnRzMi5TZXF1ZW5jZUVycm9yID0gZXhwb3J0czIuT2JqZWN0VW5zdWJzY3JpYmVkRXJyb3IgPSBleHBvcnRzMi5Ob3RGb3VuZEVycm9yID0gZXhwb3J0czIuRW1wdHlFcnJvciA9IGV4cG9ydHMyLkFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yID0gZXhwb3J0czIuZmlyc3RWYWx1ZUZyb20gPSBleHBvcnRzMi5sYXN0VmFsdWVGcm9tID0gZXhwb3J0czIuaXNPYnNlcnZhYmxlID0gZXhwb3J0czIuaWRlbnRpdHkgPSBleHBvcnRzMi5ub29wID0gZXhwb3J0czIucGlwZSA9IGV4cG9ydHMyLk5vdGlmaWNhdGlvbktpbmQgPSBleHBvcnRzMi5Ob3RpZmljYXRpb24gPSBleHBvcnRzMi5TdWJzY3JpYmVyID0gZXhwb3J0czIuU3Vic2NyaXB0aW9uID0gZXhwb3J0czIuU2NoZWR1bGVyID0gZXhwb3J0czIuVmlydHVhbEFjdGlvbiA9IGV4cG9ydHMyLlZpcnR1YWxUaW1lU2NoZWR1bGVyID0gZXhwb3J0czIuYW5pbWF0aW9uRnJhbWVTY2hlZHVsZXIgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZSA9IGV4cG9ydHMyLnF1ZXVlU2NoZWR1bGVyID0gZXhwb3J0czIucXVldWUgPSBleHBvcnRzMi5hc3luY1NjaGVkdWxlciA9IGV4cG9ydHMyLmFzeW5jID0gZXhwb3J0czIuYXNhcFNjaGVkdWxlciA9IGV4cG9ydHMyLmFzYXAgPSBleHBvcnRzMi5Bc3luY1N1YmplY3QgPSBleHBvcnRzMi5SZXBsYXlTdWJqZWN0ID0gZXhwb3J0czIuQmVoYXZpb3JTdWJqZWN0ID0gZXhwb3J0czIuU3ViamVjdCA9IGV4cG9ydHMyLmFuaW1hdGlvbkZyYW1lcyA9IGV4cG9ydHMyLm9ic2VydmFibGUgPSBleHBvcnRzMi5Db25uZWN0YWJsZU9ic2VydmFibGUgPSBleHBvcnRzMi5PYnNlcnZhYmxlID0gdm9pZCAwOwogICAgZXhwb3J0czIuZmlsdGVyID0gZXhwb3J0czIuZXhwYW5kID0gZXhwb3J0czIuZXhoYXVzdE1hcCA9IGV4cG9ydHMyLmV4aGF1c3RBbGwgPSBleHBvcnRzMi5leGhhdXN0ID0gZXhwb3J0czIuZXZlcnkgPSBleHBvcnRzMi5lbmRXaXRoID0gZXhwb3J0czIuZWxlbWVudEF0ID0gZXhwb3J0czIuZGlzdGluY3RVbnRpbEtleUNoYW5nZWQgPSBleHBvcnRzMi5kaXN0aW5jdFVudGlsQ2hhbmdlZCA9IGV4cG9ydHMyLmRpc3RpbmN0ID0gZXhwb3J0czIuZGVtYXRlcmlhbGl6ZSA9IGV4cG9ydHMyLmRlbGF5V2hlbiA9IGV4cG9ydHMyLmRlbGF5ID0gZXhwb3J0czIuZGVmYXVsdElmRW1wdHkgPSBleHBvcnRzMi5kZWJvdW5jZVRpbWUgPSBleHBvcnRzMi5kZWJvdW5jZSA9IGV4cG9ydHMyLmNvdW50ID0gZXhwb3J0czIuY29ubmVjdCA9IGV4cG9ydHMyLmNvbmNhdFdpdGggPSBleHBvcnRzMi5jb25jYXRNYXBUbyA9IGV4cG9ydHMyLmNvbmNhdE1hcCA9IGV4cG9ydHMyLmNvbmNhdEFsbCA9IGV4cG9ydHMyLmNvbWJpbmVMYXRlc3RXaXRoID0gZXhwb3J0czIuY29tYmluZUxhdGVzdEFsbCA9IGV4cG9ydHMyLmNvbWJpbmVBbGwgPSBleHBvcnRzMi5jYXRjaEVycm9yID0gZXhwb3J0czIuYnVmZmVyV2hlbiA9IGV4cG9ydHMyLmJ1ZmZlclRvZ2dsZSA9IGV4cG9ydHMyLmJ1ZmZlclRpbWUgPSBleHBvcnRzMi5idWZmZXJDb3VudCA9IGV4cG9ydHMyLmJ1ZmZlciA9IGV4cG9ydHMyLmF1ZGl0VGltZSA9IGV4cG9ydHMyLmF1ZGl0ID0gZXhwb3J0czIuY29uZmlnID0gZXhwb3J0czIuTkVWRVIgPSBleHBvcnRzMi5FTVBUWSA9IGV4cG9ydHMyLnNjaGVkdWxlZCA9IGV4cG9ydHMyLnppcCA9IGV4cG9ydHMyLnVzaW5nID0gZXhwb3J0czIudGltZXIgPSBleHBvcnRzMi50aHJvd0Vycm9yID0gZXhwb3J0czIucmFuZ2UgPSBleHBvcnRzMi5yYWNlID0gZXhwb3J0czIucGFydGl0aW9uID0gZXhwb3J0czIucGFpcnMgPSBleHBvcnRzMi5vbkVycm9yUmVzdW1lTmV4dCA9IGV4cG9ydHMyLm9mID0gZXhwb3J0czIubmV2ZXIgPSBleHBvcnRzMi5tZXJnZSA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLnN3aXRjaE1hcCA9IGV4cG9ydHMyLnN3aXRjaEFsbCA9IGV4cG9ydHMyLnN1YnNjcmliZU9uID0gZXhwb3J0czIuc3RhcnRXaXRoID0gZXhwb3J0czIuc2tpcFdoaWxlID0gZXhwb3J0czIuc2tpcFVudGlsID0gZXhwb3J0czIuc2tpcExhc3QgPSBleHBvcnRzMi5za2lwID0gZXhwb3J0czIuc2luZ2xlID0gZXhwb3J0czIuc2hhcmVSZXBsYXkgPSBleHBvcnRzMi5zaGFyZSA9IGV4cG9ydHMyLnNlcXVlbmNlRXF1YWwgPSBleHBvcnRzMi5zY2FuID0gZXhwb3J0czIuc2FtcGxlVGltZSA9IGV4cG9ydHMyLnNhbXBsZSA9IGV4cG9ydHMyLnJlZkNvdW50ID0gZXhwb3J0czIucmV0cnlXaGVuID0gZXhwb3J0czIucmV0cnkgPSBleHBvcnRzMi5yZXBlYXRXaGVuID0gZXhwb3J0czIucmVwZWF0ID0gZXhwb3J0czIucmVkdWNlID0gZXhwb3J0czIucmFjZVdpdGggPSBleHBvcnRzMi5wdWJsaXNoUmVwbGF5ID0gZXhwb3J0czIucHVibGlzaExhc3QgPSBleHBvcnRzMi5wdWJsaXNoQmVoYXZpb3IgPSBleHBvcnRzMi5wdWJsaXNoID0gZXhwb3J0czIucGx1Y2sgPSBleHBvcnRzMi5wYWlyd2lzZSA9IGV4cG9ydHMyLm9uRXJyb3JSZXN1bWVOZXh0V2l0aCA9IGV4cG9ydHMyLm9ic2VydmVPbiA9IGV4cG9ydHMyLm11bHRpY2FzdCA9IGV4cG9ydHMyLm1pbiA9IGV4cG9ydHMyLm1lcmdlV2l0aCA9IGV4cG9ydHMyLm1lcmdlU2NhbiA9IGV4cG9ydHMyLm1lcmdlTWFwVG8gPSBleHBvcnRzMi5tZXJnZU1hcCA9IGV4cG9ydHMyLmZsYXRNYXAgPSBleHBvcnRzMi5tZXJnZUFsbCA9IGV4cG9ydHMyLm1heCA9IGV4cG9ydHMyLm1hdGVyaWFsaXplID0gZXhwb3J0czIubWFwVG8gPSBleHBvcnRzMi5tYXAgPSBleHBvcnRzMi5sYXN0ID0gZXhwb3J0czIuaXNFbXB0eSA9IGV4cG9ydHMyLmlnbm9yZUVsZW1lbnRzID0gZXhwb3J0czIuZ3JvdXBCeSA9IGV4cG9ydHMyLmZpcnN0ID0gZXhwb3J0czIuZmluZEluZGV4ID0gZXhwb3J0czIuZmluZCA9IGV4cG9ydHMyLmZpbmFsaXplID0gdm9pZCAwOwogICAgZXhwb3J0czIuemlwV2l0aCA9IGV4cG9ydHMyLnppcEFsbCA9IGV4cG9ydHMyLndpdGhMYXRlc3RGcm9tID0gZXhwb3J0czIud2luZG93V2hlbiA9IGV4cG9ydHMyLndpbmRvd1RvZ2dsZSA9IGV4cG9ydHMyLndpbmRvd1RpbWUgPSBleHBvcnRzMi53aW5kb3dDb3VudCA9IGV4cG9ydHMyLndpbmRvdyA9IGV4cG9ydHMyLnRvQXJyYXkgPSBleHBvcnRzMi50aW1lc3RhbXAgPSBleHBvcnRzMi50aW1lb3V0V2l0aCA9IGV4cG9ydHMyLnRpbWVvdXQgPSBleHBvcnRzMi50aW1lSW50ZXJ2YWwgPSBleHBvcnRzMi50aHJvd0lmRW1wdHkgPSBleHBvcnRzMi50aHJvdHRsZVRpbWUgPSBleHBvcnRzMi50aHJvdHRsZSA9IGV4cG9ydHMyLnRhcCA9IGV4cG9ydHMyLnRha2VXaGlsZSA9IGV4cG9ydHMyLnRha2VVbnRpbCA9IGV4cG9ydHMyLnRha2VMYXN0ID0gZXhwb3J0czIudGFrZSA9IGV4cG9ydHMyLnN3aXRjaFNjYW4gPSBleHBvcnRzMi5zd2l0Y2hNYXBUbyA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIk9ic2VydmFibGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZTsKICAgIH0gfSk7CiAgICB2YXIgQ29ubmVjdGFibGVPYnNlcnZhYmxlXzEgPSByZXF1aXJlX0Nvbm5lY3RhYmxlT2JzZXJ2YWJsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiQ29ubmVjdGFibGVPYnNlcnZhYmxlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gQ29ubmVjdGFibGVPYnNlcnZhYmxlXzEuQ29ubmVjdGFibGVPYnNlcnZhYmxlOwogICAgfSB9KTsKICAgIHZhciBvYnNlcnZhYmxlXzEgPSByZXF1aXJlX29ic2VydmFibGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm9ic2VydmFibGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBvYnNlcnZhYmxlXzEub2JzZXJ2YWJsZTsKICAgIH0gfSk7CiAgICB2YXIgYW5pbWF0aW9uRnJhbWVzXzEgPSByZXF1aXJlX2FuaW1hdGlvbkZyYW1lcygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYW5pbWF0aW9uRnJhbWVzIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYW5pbWF0aW9uRnJhbWVzXzEuYW5pbWF0aW9uRnJhbWVzOwogICAgfSB9KTsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlN1YmplY3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBTdWJqZWN0XzEuU3ViamVjdDsKICAgIH0gfSk7CiAgICB2YXIgQmVoYXZpb3JTdWJqZWN0XzEgPSByZXF1aXJlX0JlaGF2aW9yU3ViamVjdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiQmVoYXZpb3JTdWJqZWN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gQmVoYXZpb3JTdWJqZWN0XzEuQmVoYXZpb3JTdWJqZWN0OwogICAgfSB9KTsKICAgIHZhciBSZXBsYXlTdWJqZWN0XzEgPSByZXF1aXJlX1JlcGxheVN1YmplY3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlJlcGxheVN1YmplY3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBSZXBsYXlTdWJqZWN0XzEuUmVwbGF5U3ViamVjdDsKICAgIH0gfSk7CiAgICB2YXIgQXN5bmNTdWJqZWN0XzEgPSByZXF1aXJlX0FzeW5jU3ViamVjdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiQXN5bmNTdWJqZWN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gQXN5bmNTdWJqZWN0XzEuQXN5bmNTdWJqZWN0OwogICAgfSB9KTsKICAgIHZhciBhc2FwXzEgPSByZXF1aXJlX2FzYXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImFzYXAiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBhc2FwXzEuYXNhcDsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJhc2FwU2NoZWR1bGVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYXNhcF8xLmFzYXBTY2hlZHVsZXI7CiAgICB9IH0pOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJhc3luYyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGFzeW5jXzEuYXN5bmM7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYXN5bmNTY2hlZHVsZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBhc3luY18xLmFzeW5jU2NoZWR1bGVyOwogICAgfSB9KTsKICAgIHZhciBxdWV1ZV8xID0gcmVxdWlyZV9xdWV1ZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicXVldWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBxdWV1ZV8xLnF1ZXVlOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInF1ZXVlU2NoZWR1bGVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcXVldWVfMS5xdWV1ZVNjaGVkdWxlcjsKICAgIH0gfSk7CiAgICB2YXIgYW5pbWF0aW9uRnJhbWVfMSA9IHJlcXVpcmVfYW5pbWF0aW9uRnJhbWUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImFuaW1hdGlvbkZyYW1lIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYW5pbWF0aW9uRnJhbWVfMS5hbmltYXRpb25GcmFtZTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJhbmltYXRpb25GcmFtZVNjaGVkdWxlciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGFuaW1hdGlvbkZyYW1lXzEuYW5pbWF0aW9uRnJhbWVTY2hlZHVsZXI7CiAgICB9IH0pOwogICAgdmFyIFZpcnR1YWxUaW1lU2NoZWR1bGVyXzEgPSByZXF1aXJlX1ZpcnR1YWxUaW1lU2NoZWR1bGVyKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJWaXJ0dWFsVGltZVNjaGVkdWxlciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFZpcnR1YWxUaW1lU2NoZWR1bGVyXzEuVmlydHVhbFRpbWVTY2hlZHVsZXI7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiVmlydHVhbEFjdGlvbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFZpcnR1YWxUaW1lU2NoZWR1bGVyXzEuVmlydHVhbEFjdGlvbjsKICAgIH0gfSk7CiAgICB2YXIgU2NoZWR1bGVyXzEgPSByZXF1aXJlX1NjaGVkdWxlcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiU2NoZWR1bGVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gU2NoZWR1bGVyXzEuU2NoZWR1bGVyOwogICAgfSB9KTsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJTdWJzY3JpcHRpb24iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb247CiAgICB9IH0pOwogICAgdmFyIFN1YnNjcmliZXJfMSA9IHJlcXVpcmVfU3Vic2NyaWJlcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiU3Vic2NyaWJlciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFN1YnNjcmliZXJfMS5TdWJzY3JpYmVyOwogICAgfSB9KTsKICAgIHZhciBOb3RpZmljYXRpb25fMSA9IHJlcXVpcmVfTm90aWZpY2F0aW9uKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJOb3RpZmljYXRpb24iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBOb3RpZmljYXRpb25fMS5Ob3RpZmljYXRpb247CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiTm90aWZpY2F0aW9uS2luZCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIE5vdGlmaWNhdGlvbl8xLk5vdGlmaWNhdGlvbktpbmQ7CiAgICB9IH0pOwogICAgdmFyIHBpcGVfMSA9IHJlcXVpcmVfcGlwZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicGlwZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHBpcGVfMS5waXBlOwogICAgfSB9KTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm5vb3AiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBub29wXzEubm9vcDsKICAgIH0gfSk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImlkZW50aXR5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gaWRlbnRpdHlfMS5pZGVudGl0eTsKICAgIH0gfSk7CiAgICB2YXIgaXNPYnNlcnZhYmxlXzEgPSByZXF1aXJlX2lzT2JzZXJ2YWJsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaXNPYnNlcnZhYmxlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gaXNPYnNlcnZhYmxlXzEuaXNPYnNlcnZhYmxlOwogICAgfSB9KTsKICAgIHZhciBsYXN0VmFsdWVGcm9tXzEgPSByZXF1aXJlX2xhc3RWYWx1ZUZyb20oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImxhc3RWYWx1ZUZyb20iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBsYXN0VmFsdWVGcm9tXzEubGFzdFZhbHVlRnJvbTsKICAgIH0gfSk7CiAgICB2YXIgZmlyc3RWYWx1ZUZyb21fMSA9IHJlcXVpcmVfZmlyc3RWYWx1ZUZyb20oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZpcnN0VmFsdWVGcm9tIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZmlyc3RWYWx1ZUZyb21fMS5maXJzdFZhbHVlRnJvbTsKICAgIH0gfSk7CiAgICB2YXIgQXJndW1lbnRPdXRPZlJhbmdlRXJyb3JfMSA9IHJlcXVpcmVfQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIkFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gQXJndW1lbnRPdXRPZlJhbmdlRXJyb3JfMS5Bcmd1bWVudE91dE9mUmFuZ2VFcnJvcjsKICAgIH0gfSk7CiAgICB2YXIgRW1wdHlFcnJvcl8xID0gcmVxdWlyZV9FbXB0eUVycm9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJFbXB0eUVycm9yIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gRW1wdHlFcnJvcl8xLkVtcHR5RXJyb3I7CiAgICB9IH0pOwogICAgdmFyIE5vdEZvdW5kRXJyb3JfMSA9IHJlcXVpcmVfTm90Rm91bmRFcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiTm90Rm91bmRFcnJvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIE5vdEZvdW5kRXJyb3JfMS5Ob3RGb3VuZEVycm9yOwogICAgfSB9KTsKICAgIHZhciBPYmplY3RVbnN1YnNjcmliZWRFcnJvcl8xID0gcmVxdWlyZV9PYmplY3RVbnN1YnNjcmliZWRFcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiT2JqZWN0VW5zdWJzY3JpYmVkRXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBPYmplY3RVbnN1YnNjcmliZWRFcnJvcl8xLk9iamVjdFVuc3Vic2NyaWJlZEVycm9yOwogICAgfSB9KTsKICAgIHZhciBTZXF1ZW5jZUVycm9yXzEgPSByZXF1aXJlX1NlcXVlbmNlRXJyb3IoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlNlcXVlbmNlRXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBTZXF1ZW5jZUVycm9yXzEuU2VxdWVuY2VFcnJvcjsKICAgIH0gfSk7CiAgICB2YXIgdGltZW91dF8xID0gcmVxdWlyZV90aW1lb3V0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJUaW1lb3V0RXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0aW1lb3V0XzEuVGltZW91dEVycm9yOwogICAgfSB9KTsKICAgIHZhciBVbnN1YnNjcmlwdGlvbkVycm9yXzEgPSByZXF1aXJlX1Vuc3Vic2NyaXB0aW9uRXJyb3IoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlVuc3Vic2NyaXB0aW9uRXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBVbnN1YnNjcmlwdGlvbkVycm9yXzEuVW5zdWJzY3JpcHRpb25FcnJvcjsKICAgIH0gfSk7CiAgICB2YXIgYmluZENhbGxiYWNrXzEgPSByZXF1aXJlX2JpbmRDYWxsYmFjaygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYmluZENhbGxiYWNrIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYmluZENhbGxiYWNrXzEuYmluZENhbGxiYWNrOwogICAgfSB9KTsKICAgIHZhciBiaW5kTm9kZUNhbGxiYWNrXzEgPSByZXF1aXJlX2JpbmROb2RlQ2FsbGJhY2soKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImJpbmROb2RlQ2FsbGJhY2siLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBiaW5kTm9kZUNhbGxiYWNrXzEuYmluZE5vZGVDYWxsYmFjazsKICAgIH0gfSk7CiAgICB2YXIgY29tYmluZUxhdGVzdF8xID0gcmVxdWlyZV9jb21iaW5lTGF0ZXN0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjb21iaW5lTGF0ZXN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29tYmluZUxhdGVzdF8xLmNvbWJpbmVMYXRlc3Q7CiAgICB9IH0pOwogICAgdmFyIGNvbmNhdF8xID0gcmVxdWlyZV9jb25jYXQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbmNhdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvbmNhdF8xLmNvbmNhdDsKICAgIH0gfSk7CiAgICB2YXIgY29ubmVjdGFibGVfMSA9IHJlcXVpcmVfY29ubmVjdGFibGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbm5lY3RhYmxlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29ubmVjdGFibGVfMS5jb25uZWN0YWJsZTsKICAgIH0gfSk7CiAgICB2YXIgZGVmZXJfMSA9IHJlcXVpcmVfZGVmZXIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImRlZmVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZGVmZXJfMS5kZWZlcjsKICAgIH0gfSk7CiAgICB2YXIgZW1wdHlfMSA9IHJlcXVpcmVfZW1wdHkoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImVtcHR5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZW1wdHlfMS5lbXB0eTsKICAgIH0gfSk7CiAgICB2YXIgZm9ya0pvaW5fMSA9IHJlcXVpcmVfZm9ya0pvaW4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZvcmtKb2luIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZm9ya0pvaW5fMS5mb3JrSm9pbjsKICAgIH0gfSk7CiAgICB2YXIgZnJvbV8xID0gcmVxdWlyZV9mcm9tKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJmcm9tIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZnJvbV8xLmZyb207CiAgICB9IH0pOwogICAgdmFyIGZyb21FdmVudF8xID0gcmVxdWlyZV9mcm9tRXZlbnQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZyb21FdmVudCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGZyb21FdmVudF8xLmZyb21FdmVudDsKICAgIH0gfSk7CiAgICB2YXIgZnJvbUV2ZW50UGF0dGVybl8xID0gcmVxdWlyZV9mcm9tRXZlbnRQYXR0ZXJuKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJmcm9tRXZlbnRQYXR0ZXJuIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZnJvbUV2ZW50UGF0dGVybl8xLmZyb21FdmVudFBhdHRlcm47CiAgICB9IH0pOwogICAgdmFyIGdlbmVyYXRlXzEgPSByZXF1aXJlX2dlbmVyYXRlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJnZW5lcmF0ZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGdlbmVyYXRlXzEuZ2VuZXJhdGU7CiAgICB9IH0pOwogICAgdmFyIGlpZl8xID0gcmVxdWlyZV9paWYoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImlpZiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGlpZl8xLmlpZjsKICAgIH0gfSk7CiAgICB2YXIgaW50ZXJ2YWxfMSA9IHJlcXVpcmVfaW50ZXJ2YWwoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImludGVydmFsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gaW50ZXJ2YWxfMS5pbnRlcnZhbDsKICAgIH0gfSk7CiAgICB2YXIgbWVyZ2VfMSA9IHJlcXVpcmVfbWVyZ2UoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm1lcmdlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbWVyZ2VfMS5tZXJnZTsKICAgIH0gfSk7CiAgICB2YXIgbmV2ZXJfMSA9IHJlcXVpcmVfbmV2ZXIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm5ldmVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbmV2ZXJfMS5uZXZlcjsKICAgIH0gfSk7CiAgICB2YXIgb2ZfMSA9IHJlcXVpcmVfb2YoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm9mIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gb2ZfMS5vZjsKICAgIH0gfSk7CiAgICB2YXIgb25FcnJvclJlc3VtZU5leHRfMSA9IHJlcXVpcmVfb25FcnJvclJlc3VtZU5leHQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm9uRXJyb3JSZXN1bWVOZXh0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gb25FcnJvclJlc3VtZU5leHRfMS5vbkVycm9yUmVzdW1lTmV4dDsKICAgIH0gfSk7CiAgICB2YXIgcGFpcnNfMSA9IHJlcXVpcmVfcGFpcnMoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInBhaXJzIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcGFpcnNfMS5wYWlyczsKICAgIH0gfSk7CiAgICB2YXIgcGFydGl0aW9uXzEgPSByZXF1aXJlX3BhcnRpdGlvbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicGFydGl0aW9uIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcGFydGl0aW9uXzEucGFydGl0aW9uOwogICAgfSB9KTsKICAgIHZhciByYWNlXzEgPSByZXF1aXJlX3JhY2UoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInJhY2UiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiByYWNlXzEucmFjZTsKICAgIH0gfSk7CiAgICB2YXIgcmFuZ2VfMSA9IHJlcXVpcmVfcmFuZ2UoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInJhbmdlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcmFuZ2VfMS5yYW5nZTsKICAgIH0gfSk7CiAgICB2YXIgdGhyb3dFcnJvcl8xID0gcmVxdWlyZV90aHJvd0Vycm9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0aHJvd0Vycm9yIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGhyb3dFcnJvcl8xLnRocm93RXJyb3I7CiAgICB9IH0pOwogICAgdmFyIHRpbWVyXzEgPSByZXF1aXJlX3RpbWVyKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0aW1lciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRpbWVyXzEudGltZXI7CiAgICB9IH0pOwogICAgdmFyIHVzaW5nXzEgPSByZXF1aXJlX3VzaW5nKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ1c2luZyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHVzaW5nXzEudXNpbmc7CiAgICB9IH0pOwogICAgdmFyIHppcF8xID0gcmVxdWlyZV96aXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInppcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHppcF8xLnppcDsKICAgIH0gfSk7CiAgICB2YXIgc2NoZWR1bGVkXzEgPSByZXF1aXJlX3NjaGVkdWxlZCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2NoZWR1bGVkIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2NoZWR1bGVkXzEuc2NoZWR1bGVkOwogICAgfSB9KTsKICAgIHZhciBlbXB0eV8yID0gcmVxdWlyZV9lbXB0eSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiRU1QVFkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBlbXB0eV8yLkVNUFRZOwogICAgfSB9KTsKICAgIHZhciBuZXZlcl8yID0gcmVxdWlyZV9uZXZlcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiTkVWRVIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBuZXZlcl8yLk5FVkVSOwogICAgfSB9KTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3R5cGVzMigpLCBleHBvcnRzMik7CiAgICB2YXIgY29uZmlnXzEgPSByZXF1aXJlX2NvbmZpZygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29uZmlnIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29uZmlnXzEuY29uZmlnOwogICAgfSB9KTsKICAgIHZhciBhdWRpdF8xID0gcmVxdWlyZV9hdWRpdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYXVkaXQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBhdWRpdF8xLmF1ZGl0OwogICAgfSB9KTsKICAgIHZhciBhdWRpdFRpbWVfMSA9IHJlcXVpcmVfYXVkaXRUaW1lKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJhdWRpdFRpbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBhdWRpdFRpbWVfMS5hdWRpdFRpbWU7CiAgICB9IH0pOwogICAgdmFyIGJ1ZmZlcl8xID0gcmVxdWlyZV9idWZmZXIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImJ1ZmZlciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGJ1ZmZlcl8xLmJ1ZmZlcjsKICAgIH0gfSk7CiAgICB2YXIgYnVmZmVyQ291bnRfMSA9IHJlcXVpcmVfYnVmZmVyQ291bnQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImJ1ZmZlckNvdW50IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYnVmZmVyQ291bnRfMS5idWZmZXJDb3VudDsKICAgIH0gfSk7CiAgICB2YXIgYnVmZmVyVGltZV8xID0gcmVxdWlyZV9idWZmZXJUaW1lKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJidWZmZXJUaW1lIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYnVmZmVyVGltZV8xLmJ1ZmZlclRpbWU7CiAgICB9IH0pOwogICAgdmFyIGJ1ZmZlclRvZ2dsZV8xID0gcmVxdWlyZV9idWZmZXJUb2dnbGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImJ1ZmZlclRvZ2dsZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGJ1ZmZlclRvZ2dsZV8xLmJ1ZmZlclRvZ2dsZTsKICAgIH0gfSk7CiAgICB2YXIgYnVmZmVyV2hlbl8xID0gcmVxdWlyZV9idWZmZXJXaGVuKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJidWZmZXJXaGVuIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYnVmZmVyV2hlbl8xLmJ1ZmZlcldoZW47CiAgICB9IH0pOwogICAgdmFyIGNhdGNoRXJyb3JfMSA9IHJlcXVpcmVfY2F0Y2hFcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY2F0Y2hFcnJvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNhdGNoRXJyb3JfMS5jYXRjaEVycm9yOwogICAgfSB9KTsKICAgIHZhciBjb21iaW5lQWxsXzEgPSByZXF1aXJlX2NvbWJpbmVBbGwoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbWJpbmVBbGwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb21iaW5lQWxsXzEuY29tYmluZUFsbDsKICAgIH0gfSk7CiAgICB2YXIgY29tYmluZUxhdGVzdEFsbF8xID0gcmVxdWlyZV9jb21iaW5lTGF0ZXN0QWxsKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjb21iaW5lTGF0ZXN0QWxsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29tYmluZUxhdGVzdEFsbF8xLmNvbWJpbmVMYXRlc3RBbGw7CiAgICB9IH0pOwogICAgdmFyIGNvbWJpbmVMYXRlc3RXaXRoXzEgPSByZXF1aXJlX2NvbWJpbmVMYXRlc3RXaXRoKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjb21iaW5lTGF0ZXN0V2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvbWJpbmVMYXRlc3RXaXRoXzEuY29tYmluZUxhdGVzdFdpdGg7CiAgICB9IH0pOwogICAgdmFyIGNvbmNhdEFsbF8xID0gcmVxdWlyZV9jb25jYXRBbGwoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbmNhdEFsbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvbmNhdEFsbF8xLmNvbmNhdEFsbDsKICAgIH0gfSk7CiAgICB2YXIgY29uY2F0TWFwXzEgPSByZXF1aXJlX2NvbmNhdE1hcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29uY2F0TWFwIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29uY2F0TWFwXzEuY29uY2F0TWFwOwogICAgfSB9KTsKICAgIHZhciBjb25jYXRNYXBUb18xID0gcmVxdWlyZV9jb25jYXRNYXBUbygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29uY2F0TWFwVG8iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb25jYXRNYXBUb18xLmNvbmNhdE1hcFRvOwogICAgfSB9KTsKICAgIHZhciBjb25jYXRXaXRoXzEgPSByZXF1aXJlX2NvbmNhdFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbmNhdFdpdGgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb25jYXRXaXRoXzEuY29uY2F0V2l0aDsKICAgIH0gfSk7CiAgICB2YXIgY29ubmVjdF8xID0gcmVxdWlyZV9jb25uZWN0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjb25uZWN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29ubmVjdF8xLmNvbm5lY3Q7CiAgICB9IH0pOwogICAgdmFyIGNvdW50XzEgPSByZXF1aXJlX2NvdW50KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjb3VudCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvdW50XzEuY291bnQ7CiAgICB9IH0pOwogICAgdmFyIGRlYm91bmNlXzEgPSByZXF1aXJlX2RlYm91bmNlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJkZWJvdW5jZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGRlYm91bmNlXzEuZGVib3VuY2U7CiAgICB9IH0pOwogICAgdmFyIGRlYm91bmNlVGltZV8xID0gcmVxdWlyZV9kZWJvdW5jZVRpbWUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImRlYm91bmNlVGltZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGRlYm91bmNlVGltZV8xLmRlYm91bmNlVGltZTsKICAgIH0gfSk7CiAgICB2YXIgZGVmYXVsdElmRW1wdHlfMSA9IHJlcXVpcmVfZGVmYXVsdElmRW1wdHkoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImRlZmF1bHRJZkVtcHR5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZGVmYXVsdElmRW1wdHlfMS5kZWZhdWx0SWZFbXB0eTsKICAgIH0gfSk7CiAgICB2YXIgZGVsYXlfMSA9IHJlcXVpcmVfZGVsYXkoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImRlbGF5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZGVsYXlfMS5kZWxheTsKICAgIH0gfSk7CiAgICB2YXIgZGVsYXlXaGVuXzEgPSByZXF1aXJlX2RlbGF5V2hlbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVsYXlXaGVuIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZGVsYXlXaGVuXzEuZGVsYXlXaGVuOwogICAgfSB9KTsKICAgIHZhciBkZW1hdGVyaWFsaXplXzEgPSByZXF1aXJlX2RlbWF0ZXJpYWxpemUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImRlbWF0ZXJpYWxpemUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkZW1hdGVyaWFsaXplXzEuZGVtYXRlcmlhbGl6ZTsKICAgIH0gfSk7CiAgICB2YXIgZGlzdGluY3RfMSA9IHJlcXVpcmVfZGlzdGluY3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImRpc3RpbmN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZGlzdGluY3RfMS5kaXN0aW5jdDsKICAgIH0gfSk7CiAgICB2YXIgZGlzdGluY3RVbnRpbENoYW5nZWRfMSA9IHJlcXVpcmVfZGlzdGluY3RVbnRpbENoYW5nZWQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImRpc3RpbmN0VW50aWxDaGFuZ2VkIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZGlzdGluY3RVbnRpbENoYW5nZWRfMS5kaXN0aW5jdFVudGlsQ2hhbmdlZDsKICAgIH0gfSk7CiAgICB2YXIgZGlzdGluY3RVbnRpbEtleUNoYW5nZWRfMSA9IHJlcXVpcmVfZGlzdGluY3RVbnRpbEtleUNoYW5nZWQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImRpc3RpbmN0VW50aWxLZXlDaGFuZ2VkIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZGlzdGluY3RVbnRpbEtleUNoYW5nZWRfMS5kaXN0aW5jdFVudGlsS2V5Q2hhbmdlZDsKICAgIH0gfSk7CiAgICB2YXIgZWxlbWVudEF0XzEgPSByZXF1aXJlX2VsZW1lbnRBdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZWxlbWVudEF0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZWxlbWVudEF0XzEuZWxlbWVudEF0OwogICAgfSB9KTsKICAgIHZhciBlbmRXaXRoXzEgPSByZXF1aXJlX2VuZFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImVuZFdpdGgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBlbmRXaXRoXzEuZW5kV2l0aDsKICAgIH0gfSk7CiAgICB2YXIgZXZlcnlfMSA9IHJlcXVpcmVfZXZlcnkoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImV2ZXJ5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZXZlcnlfMS5ldmVyeTsKICAgIH0gfSk7CiAgICB2YXIgZXhoYXVzdF8xID0gcmVxdWlyZV9leGhhdXN0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJleGhhdXN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZXhoYXVzdF8xLmV4aGF1c3Q7CiAgICB9IH0pOwogICAgdmFyIGV4aGF1c3RBbGxfMSA9IHJlcXVpcmVfZXhoYXVzdEFsbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZXhoYXVzdEFsbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGV4aGF1c3RBbGxfMS5leGhhdXN0QWxsOwogICAgfSB9KTsKICAgIHZhciBleGhhdXN0TWFwXzEgPSByZXF1aXJlX2V4aGF1c3RNYXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImV4aGF1c3RNYXAiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBleGhhdXN0TWFwXzEuZXhoYXVzdE1hcDsKICAgIH0gfSk7CiAgICB2YXIgZXhwYW5kXzEgPSByZXF1aXJlX2V4cGFuZCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZXhwYW5kIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZXhwYW5kXzEuZXhwYW5kOwogICAgfSB9KTsKICAgIHZhciBmaWx0ZXJfMSA9IHJlcXVpcmVfZmlsdGVyKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJmaWx0ZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmaWx0ZXJfMS5maWx0ZXI7CiAgICB9IH0pOwogICAgdmFyIGZpbmFsaXplXzEgPSByZXF1aXJlX2ZpbmFsaXplKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJmaW5hbGl6ZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGZpbmFsaXplXzEuZmluYWxpemU7CiAgICB9IH0pOwogICAgdmFyIGZpbmRfMSA9IHJlcXVpcmVfZmluZCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZmluZCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGZpbmRfMS5maW5kOwogICAgfSB9KTsKICAgIHZhciBmaW5kSW5kZXhfMSA9IHJlcXVpcmVfZmluZEluZGV4KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJmaW5kSW5kZXgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmaW5kSW5kZXhfMS5maW5kSW5kZXg7CiAgICB9IH0pOwogICAgdmFyIGZpcnN0XzEgPSByZXF1aXJlX2ZpcnN0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJmaXJzdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGZpcnN0XzEuZmlyc3Q7CiAgICB9IH0pOwogICAgdmFyIGdyb3VwQnlfMSA9IHJlcXVpcmVfZ3JvdXBCeSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZ3JvdXBCeSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGdyb3VwQnlfMS5ncm91cEJ5OwogICAgfSB9KTsKICAgIHZhciBpZ25vcmVFbGVtZW50c18xID0gcmVxdWlyZV9pZ25vcmVFbGVtZW50cygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaWdub3JlRWxlbWVudHMiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBpZ25vcmVFbGVtZW50c18xLmlnbm9yZUVsZW1lbnRzOwogICAgfSB9KTsKICAgIHZhciBpc0VtcHR5XzEgPSByZXF1aXJlX2lzRW1wdHkoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImlzRW1wdHkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBpc0VtcHR5XzEuaXNFbXB0eTsKICAgIH0gfSk7CiAgICB2YXIgbGFzdF8xID0gcmVxdWlyZV9sYXN0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJsYXN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbGFzdF8xLmxhc3Q7CiAgICB9IH0pOwogICAgdmFyIG1hcF8xID0gcmVxdWlyZV9tYXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm1hcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG1hcF8xLm1hcDsKICAgIH0gfSk7CiAgICB2YXIgbWFwVG9fMSA9IHJlcXVpcmVfbWFwVG8oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm1hcFRvIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbWFwVG9fMS5tYXBUbzsKICAgIH0gfSk7CiAgICB2YXIgbWF0ZXJpYWxpemVfMSA9IHJlcXVpcmVfbWF0ZXJpYWxpemUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm1hdGVyaWFsaXplIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbWF0ZXJpYWxpemVfMS5tYXRlcmlhbGl6ZTsKICAgIH0gfSk7CiAgICB2YXIgbWF4XzEgPSByZXF1aXJlX21heCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWF4IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbWF4XzEubWF4OwogICAgfSB9KTsKICAgIHZhciBtZXJnZUFsbF8xID0gcmVxdWlyZV9tZXJnZUFsbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWVyZ2VBbGwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtZXJnZUFsbF8xLm1lcmdlQWxsOwogICAgfSB9KTsKICAgIHZhciBmbGF0TWFwXzEgPSByZXF1aXJlX2ZsYXRNYXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZsYXRNYXAiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmbGF0TWFwXzEuZmxhdE1hcDsKICAgIH0gfSk7CiAgICB2YXIgbWVyZ2VNYXBfMSA9IHJlcXVpcmVfbWVyZ2VNYXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm1lcmdlTWFwIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbWVyZ2VNYXBfMS5tZXJnZU1hcDsKICAgIH0gfSk7CiAgICB2YXIgbWVyZ2VNYXBUb18xID0gcmVxdWlyZV9tZXJnZU1hcFRvKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJtZXJnZU1hcFRvIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbWVyZ2VNYXBUb18xLm1lcmdlTWFwVG87CiAgICB9IH0pOwogICAgdmFyIG1lcmdlU2Nhbl8xID0gcmVxdWlyZV9tZXJnZVNjYW4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm1lcmdlU2NhbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG1lcmdlU2Nhbl8xLm1lcmdlU2NhbjsKICAgIH0gfSk7CiAgICB2YXIgbWVyZ2VXaXRoXzEgPSByZXF1aXJlX21lcmdlV2l0aCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWVyZ2VXaXRoIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbWVyZ2VXaXRoXzEubWVyZ2VXaXRoOwogICAgfSB9KTsKICAgIHZhciBtaW5fMSA9IHJlcXVpcmVfbWluKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJtaW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtaW5fMS5taW47CiAgICB9IH0pOwogICAgdmFyIG11bHRpY2FzdF8xID0gcmVxdWlyZV9tdWx0aWNhc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm11bHRpY2FzdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG11bHRpY2FzdF8xLm11bHRpY2FzdDsKICAgIH0gfSk7CiAgICB2YXIgb2JzZXJ2ZU9uXzEgPSByZXF1aXJlX29ic2VydmVPbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAib2JzZXJ2ZU9uIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gb2JzZXJ2ZU9uXzEub2JzZXJ2ZU9uOwogICAgfSB9KTsKICAgIHZhciBvbkVycm9yUmVzdW1lTmV4dFdpdGhfMSA9IHJlcXVpcmVfb25FcnJvclJlc3VtZU5leHRXaXRoKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJvbkVycm9yUmVzdW1lTmV4dFdpdGgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBvbkVycm9yUmVzdW1lTmV4dFdpdGhfMS5vbkVycm9yUmVzdW1lTmV4dFdpdGg7CiAgICB9IH0pOwogICAgdmFyIHBhaXJ3aXNlXzEgPSByZXF1aXJlX3BhaXJ3aXNlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwYWlyd2lzZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHBhaXJ3aXNlXzEucGFpcndpc2U7CiAgICB9IH0pOwogICAgdmFyIHBsdWNrXzEgPSByZXF1aXJlX3BsdWNrKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwbHVjayIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHBsdWNrXzEucGx1Y2s7CiAgICB9IH0pOwogICAgdmFyIHB1Ymxpc2hfMSA9IHJlcXVpcmVfcHVibGlzaCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicHVibGlzaCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHB1Ymxpc2hfMS5wdWJsaXNoOwogICAgfSB9KTsKICAgIHZhciBwdWJsaXNoQmVoYXZpb3JfMSA9IHJlcXVpcmVfcHVibGlzaEJlaGF2aW9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwdWJsaXNoQmVoYXZpb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBwdWJsaXNoQmVoYXZpb3JfMS5wdWJsaXNoQmVoYXZpb3I7CiAgICB9IH0pOwogICAgdmFyIHB1Ymxpc2hMYXN0XzEgPSByZXF1aXJlX3B1Ymxpc2hMYXN0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwdWJsaXNoTGFzdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHB1Ymxpc2hMYXN0XzEucHVibGlzaExhc3Q7CiAgICB9IH0pOwogICAgdmFyIHB1Ymxpc2hSZXBsYXlfMSA9IHJlcXVpcmVfcHVibGlzaFJlcGxheSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicHVibGlzaFJlcGxheSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHB1Ymxpc2hSZXBsYXlfMS5wdWJsaXNoUmVwbGF5OwogICAgfSB9KTsKICAgIHZhciByYWNlV2l0aF8xID0gcmVxdWlyZV9yYWNlV2l0aCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmFjZVdpdGgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiByYWNlV2l0aF8xLnJhY2VXaXRoOwogICAgfSB9KTsKICAgIHZhciByZWR1Y2VfMSA9IHJlcXVpcmVfcmVkdWNlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJyZWR1Y2UiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiByZWR1Y2VfMS5yZWR1Y2U7CiAgICB9IH0pOwogICAgdmFyIHJlcGVhdF8xID0gcmVxdWlyZV9yZXBlYXQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInJlcGVhdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJlcGVhdF8xLnJlcGVhdDsKICAgIH0gfSk7CiAgICB2YXIgcmVwZWF0V2hlbl8xID0gcmVxdWlyZV9yZXBlYXRXaGVuKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJyZXBlYXRXaGVuIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcmVwZWF0V2hlbl8xLnJlcGVhdFdoZW47CiAgICB9IH0pOwogICAgdmFyIHJldHJ5XzEgPSByZXF1aXJlX3JldHJ5KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJyZXRyeSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJldHJ5XzEucmV0cnk7CiAgICB9IH0pOwogICAgdmFyIHJldHJ5V2hlbl8xID0gcmVxdWlyZV9yZXRyeVdoZW4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInJldHJ5V2hlbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJldHJ5V2hlbl8xLnJldHJ5V2hlbjsKICAgIH0gfSk7CiAgICB2YXIgcmVmQ291bnRfMSA9IHJlcXVpcmVfcmVmQ291bnQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInJlZkNvdW50IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcmVmQ291bnRfMS5yZWZDb3VudDsKICAgIH0gfSk7CiAgICB2YXIgc2FtcGxlXzEgPSByZXF1aXJlX3NhbXBsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2FtcGxlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2FtcGxlXzEuc2FtcGxlOwogICAgfSB9KTsKICAgIHZhciBzYW1wbGVUaW1lXzEgPSByZXF1aXJlX3NhbXBsZVRpbWUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNhbXBsZVRpbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzYW1wbGVUaW1lXzEuc2FtcGxlVGltZTsKICAgIH0gfSk7CiAgICB2YXIgc2Nhbl8xID0gcmVxdWlyZV9zY2FuKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzY2FuIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2Nhbl8xLnNjYW47CiAgICB9IH0pOwogICAgdmFyIHNlcXVlbmNlRXF1YWxfMSA9IHJlcXVpcmVfc2VxdWVuY2VFcXVhbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2VxdWVuY2VFcXVhbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHNlcXVlbmNlRXF1YWxfMS5zZXF1ZW5jZUVxdWFsOwogICAgfSB9KTsKICAgIHZhciBzaGFyZV8xID0gcmVxdWlyZV9zaGFyZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2hhcmUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzaGFyZV8xLnNoYXJlOwogICAgfSB9KTsKICAgIHZhciBzaGFyZVJlcGxheV8xID0gcmVxdWlyZV9zaGFyZVJlcGxheSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2hhcmVSZXBsYXkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzaGFyZVJlcGxheV8xLnNoYXJlUmVwbGF5OwogICAgfSB9KTsKICAgIHZhciBzaW5nbGVfMSA9IHJlcXVpcmVfc2luZ2xlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzaW5nbGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzaW5nbGVfMS5zaW5nbGU7CiAgICB9IH0pOwogICAgdmFyIHNraXBfMSA9IHJlcXVpcmVfc2tpcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2tpcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHNraXBfMS5za2lwOwogICAgfSB9KTsKICAgIHZhciBza2lwTGFzdF8xID0gcmVxdWlyZV9za2lwTGFzdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2tpcExhc3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBza2lwTGFzdF8xLnNraXBMYXN0OwogICAgfSB9KTsKICAgIHZhciBza2lwVW50aWxfMSA9IHJlcXVpcmVfc2tpcFVudGlsKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJza2lwVW50aWwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBza2lwVW50aWxfMS5za2lwVW50aWw7CiAgICB9IH0pOwogICAgdmFyIHNraXBXaGlsZV8xID0gcmVxdWlyZV9za2lwV2hpbGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNraXBXaGlsZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHNraXBXaGlsZV8xLnNraXBXaGlsZTsKICAgIH0gfSk7CiAgICB2YXIgc3RhcnRXaXRoXzEgPSByZXF1aXJlX3N0YXJ0V2l0aCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3RhcnRXaXRoIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc3RhcnRXaXRoXzEuc3RhcnRXaXRoOwogICAgfSB9KTsKICAgIHZhciBzdWJzY3JpYmVPbl8xID0gcmVxdWlyZV9zdWJzY3JpYmVPbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3Vic2NyaWJlT24iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzdWJzY3JpYmVPbl8xLnN1YnNjcmliZU9uOwogICAgfSB9KTsKICAgIHZhciBzd2l0Y2hBbGxfMSA9IHJlcXVpcmVfc3dpdGNoQWxsKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzd2l0Y2hBbGwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzd2l0Y2hBbGxfMS5zd2l0Y2hBbGw7CiAgICB9IH0pOwogICAgdmFyIHN3aXRjaE1hcF8xID0gcmVxdWlyZV9zd2l0Y2hNYXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN3aXRjaE1hcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHN3aXRjaE1hcF8xLnN3aXRjaE1hcDsKICAgIH0gfSk7CiAgICB2YXIgc3dpdGNoTWFwVG9fMSA9IHJlcXVpcmVfc3dpdGNoTWFwVG8oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN3aXRjaE1hcFRvIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc3dpdGNoTWFwVG9fMS5zd2l0Y2hNYXBUbzsKICAgIH0gfSk7CiAgICB2YXIgc3dpdGNoU2Nhbl8xID0gcmVxdWlyZV9zd2l0Y2hTY2FuKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzd2l0Y2hTY2FuIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc3dpdGNoU2Nhbl8xLnN3aXRjaFNjYW47CiAgICB9IH0pOwogICAgdmFyIHRha2VfMSA9IHJlcXVpcmVfdGFrZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidGFrZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRha2VfMS50YWtlOwogICAgfSB9KTsKICAgIHZhciB0YWtlTGFzdF8xID0gcmVxdWlyZV90YWtlTGFzdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidGFrZUxhc3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0YWtlTGFzdF8xLnRha2VMYXN0OwogICAgfSB9KTsKICAgIHZhciB0YWtlVW50aWxfMSA9IHJlcXVpcmVfdGFrZVVudGlsKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0YWtlVW50aWwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0YWtlVW50aWxfMS50YWtlVW50aWw7CiAgICB9IH0pOwogICAgdmFyIHRha2VXaGlsZV8xID0gcmVxdWlyZV90YWtlV2hpbGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRha2VXaGlsZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRha2VXaGlsZV8xLnRha2VXaGlsZTsKICAgIH0gfSk7CiAgICB2YXIgdGFwXzEgPSByZXF1aXJlX3RhcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidGFwIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGFwXzEudGFwOwogICAgfSB9KTsKICAgIHZhciB0aHJvdHRsZV8xID0gcmVxdWlyZV90aHJvdHRsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidGhyb3R0bGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0aHJvdHRsZV8xLnRocm90dGxlOwogICAgfSB9KTsKICAgIHZhciB0aHJvdHRsZVRpbWVfMSA9IHJlcXVpcmVfdGhyb3R0bGVUaW1lKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0aHJvdHRsZVRpbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0aHJvdHRsZVRpbWVfMS50aHJvdHRsZVRpbWU7CiAgICB9IH0pOwogICAgdmFyIHRocm93SWZFbXB0eV8xID0gcmVxdWlyZV90aHJvd0lmRW1wdHkoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRocm93SWZFbXB0eSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRocm93SWZFbXB0eV8xLnRocm93SWZFbXB0eTsKICAgIH0gfSk7CiAgICB2YXIgdGltZUludGVydmFsXzEgPSByZXF1aXJlX3RpbWVJbnRlcnZhbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidGltZUludGVydmFsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGltZUludGVydmFsXzEudGltZUludGVydmFsOwogICAgfSB9KTsKICAgIHZhciB0aW1lb3V0XzIgPSByZXF1aXJlX3RpbWVvdXQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRpbWVvdXQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0aW1lb3V0XzIudGltZW91dDsKICAgIH0gfSk7CiAgICB2YXIgdGltZW91dFdpdGhfMSA9IHJlcXVpcmVfdGltZW91dFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRpbWVvdXRXaXRoIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGltZW91dFdpdGhfMS50aW1lb3V0V2l0aDsKICAgIH0gfSk7CiAgICB2YXIgdGltZXN0YW1wXzEgPSByZXF1aXJlX3RpbWVzdGFtcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidGltZXN0YW1wIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGltZXN0YW1wXzEudGltZXN0YW1wOwogICAgfSB9KTsKICAgIHZhciB0b0FycmF5XzEgPSByZXF1aXJlX3RvQXJyYXkoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRvQXJyYXkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0b0FycmF5XzEudG9BcnJheTsKICAgIH0gfSk7CiAgICB2YXIgd2luZG93XzEgPSByZXF1aXJlX3dpbmRvdygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAid2luZG93IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gd2luZG93XzEud2luZG93OwogICAgfSB9KTsKICAgIHZhciB3aW5kb3dDb3VudF8xID0gcmVxdWlyZV93aW5kb3dDb3VudCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAid2luZG93Q291bnQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB3aW5kb3dDb3VudF8xLndpbmRvd0NvdW50OwogICAgfSB9KTsKICAgIHZhciB3aW5kb3dUaW1lXzEgPSByZXF1aXJlX3dpbmRvd1RpbWUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIndpbmRvd1RpbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB3aW5kb3dUaW1lXzEud2luZG93VGltZTsKICAgIH0gfSk7CiAgICB2YXIgd2luZG93VG9nZ2xlXzEgPSByZXF1aXJlX3dpbmRvd1RvZ2dsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAid2luZG93VG9nZ2xlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gd2luZG93VG9nZ2xlXzEud2luZG93VG9nZ2xlOwogICAgfSB9KTsKICAgIHZhciB3aW5kb3dXaGVuXzEgPSByZXF1aXJlX3dpbmRvd1doZW4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIndpbmRvd1doZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB3aW5kb3dXaGVuXzEud2luZG93V2hlbjsKICAgIH0gfSk7CiAgICB2YXIgd2l0aExhdGVzdEZyb21fMSA9IHJlcXVpcmVfd2l0aExhdGVzdEZyb20oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIndpdGhMYXRlc3RGcm9tIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gd2l0aExhdGVzdEZyb21fMS53aXRoTGF0ZXN0RnJvbTsKICAgIH0gfSk7CiAgICB2YXIgemlwQWxsXzEgPSByZXF1aXJlX3ppcEFsbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiemlwQWxsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gemlwQWxsXzEuemlwQWxsOwogICAgfSB9KTsKICAgIHZhciB6aXBXaXRoXzEgPSByZXF1aXJlX3ppcFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInppcFdpdGgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB6aXBXaXRoXzEuemlwV2l0aDsKICAgIH0gfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2V4Y2VwdGlvbi5qcwp2YXIgcmVxdWlyZV9leGNlcHRpb24gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvZXhjZXB0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5QYXRoSXNGaWxlRXhjZXB0aW9uID0gZXhwb3J0czIuUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uID0gZXhwb3J0czIuRmlsZUFscmVhZHlFeGlzdEV4Y2VwdGlvbiA9IGV4cG9ydHMyLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24gPSBleHBvcnRzMi5Vbmtub3duRXhjZXB0aW9uID0gZXhwb3J0czIuQmFzZUV4Y2VwdGlvbiA9IHZvaWQgMDsKICAgIHZhciBCYXNlRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBFcnJvciB7CiAgICAgIGNvbnN0cnVjdG9yKG1lc3NhZ2UgPSAiIikgewogICAgICAgIHN1cGVyKG1lc3NhZ2UpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuQmFzZUV4Y2VwdGlvbiA9IEJhc2VFeGNlcHRpb247CiAgICB2YXIgVW5rbm93bkV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKG1lc3NhZ2UpIHsKICAgICAgICBzdXBlcihtZXNzYWdlKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVua25vd25FeGNlcHRpb24gPSBVbmtub3duRXhjZXB0aW9uOwogICAgdmFyIEZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIEJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihwYXRoKSB7CiAgICAgICAgc3VwZXIoYFBhdGggIiR7cGF0aH0iIGRvZXMgbm90IGV4aXN0LmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbiA9IEZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb247CiAgICB2YXIgRmlsZUFscmVhZHlFeGlzdEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgUGF0aCAiJHtwYXRofSIgYWxyZWFkeSBleGlzdC5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24gPSBGaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uOwogICAgdmFyIFBhdGhJc0RpcmVjdG9yeUV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgUGF0aCAiJHtwYXRofSIgaXMgYSBkaXJlY3RvcnkuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5QYXRoSXNEaXJlY3RvcnlFeGNlcHRpb24gPSBQYXRoSXNEaXJlY3RvcnlFeGNlcHRpb247CiAgICB2YXIgUGF0aElzRmlsZUV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgUGF0aCAiJHtwYXRofSIgaXMgYSBmaWxlLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuUGF0aElzRmlsZUV4Y2VwdGlvbiA9IFBhdGhJc0ZpbGVFeGNlcHRpb247CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2xpdGVyYWxzLmpzCnZhciByZXF1aXJlX2xpdGVyYWxzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2xpdGVyYWxzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5vbmVMaW5lID0gb25lTGluZTsKICAgIGV4cG9ydHMyLmluZGVudEJ5ID0gaW5kZW50Qnk7CiAgICBleHBvcnRzMi5zdHJpcEluZGVudCA9IHN0cmlwSW5kZW50OwogICAgZXhwb3J0czIuc3RyaXBJbmRlbnRzID0gc3RyaXBJbmRlbnRzOwogICAgZXhwb3J0czIudHJpbU5ld2xpbmVzID0gdHJpbU5ld2xpbmVzOwogICAgZnVuY3Rpb24gb25lTGluZShzdHJpbmdzMywgLi4udmFsdWVzKSB7CiAgICAgIGNvbnN0IGVuZFJlc3VsdCA9IFN0cmluZy5yYXcoc3RyaW5nczMsIC4uLnZhbHVlcyk7CiAgICAgIHJldHVybiBlbmRSZXN1bHQucmVwbGFjZSgvKD86XHI/XG4oPzpccyopKSsvZ20sICIgIikudHJpbSgpOwogICAgfQogICAgZnVuY3Rpb24gaW5kZW50QnkoaW5kZW50YXRpb25zKSB7CiAgICAgIGxldCBpID0gIiI7CiAgICAgIHdoaWxlIChpbmRlbnRhdGlvbnMtLSkgewogICAgICAgIGkgKz0gIiAiOwogICAgICB9CiAgICAgIHJldHVybiAoc3RyaW5nczMsIC4uLnZhbHVlcykgPT4gewogICAgICAgIHJldHVybiBpICsgc3RyaXBJbmRlbnQoc3RyaW5nczMsIC4uLnZhbHVlcykucmVwbGFjZSgvXG4vZywgIlxuIiArIGkpOwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gc3RyaXBJbmRlbnQoc3RyaW5nczMsIC4uLnZhbHVlcykgewogICAgICBjb25zdCBlbmRSZXN1bHQgPSBTdHJpbmcucmF3KHN0cmluZ3MzLCAuLi52YWx1ZXMpOwogICAgICBjb25zdCBtYXRjaCA9IGVuZFJlc3VsdC5tYXRjaCgvXlsgXHRdKig/PVxTKS9nbSk7CiAgICAgIGlmIChtYXRjaCA9PT0gbnVsbCkgewogICAgICAgIHJldHVybiBlbmRSZXN1bHQ7CiAgICAgIH0KICAgICAgY29uc3QgaW5kZW50ID0gTWF0aC5taW4oLi4ubWF0Y2gubWFwKChlbCkgPT4gZWwubGVuZ3RoKSk7CiAgICAgIGNvbnN0IHJlZ2V4cCA9IG5ldyBSZWdFeHAoIl5bIFxcdF17IiArIGluZGVudCArICJ9IiwgImdtIik7CiAgICAgIHJldHVybiAoaW5kZW50ID4gMCA/IGVuZFJlc3VsdC5yZXBsYWNlKHJlZ2V4cCwgIiIpIDogZW5kUmVzdWx0KS50cmltKCk7CiAgICB9CiAgICBmdW5jdGlvbiBzdHJpcEluZGVudHMoc3RyaW5nczMsIC4uLnZhbHVlcykgewogICAgICByZXR1cm4gU3RyaW5nLnJhdyhzdHJpbmdzMywgLi4udmFsdWVzKS5zcGxpdCgiXG4iKS5tYXAoKGxpbmUpID0+IGxpbmUudHJpbSgpKS5qb2luKCJcbiIpLnRyaW0oKTsKICAgIH0KICAgIGZ1bmN0aW9uIHRyaW1OZXdsaW5lcyhzdHJpbmdzMywgLi4udmFsdWVzKSB7CiAgICAgIGNvbnN0IGVuZFJlc3VsdCA9IFN0cmluZy5yYXcoc3RyaW5nczMsIC4uLnZhbHVlcyk7CiAgICAgIHJldHVybiBlbmRSZXN1bHQucmVwbGFjZSgvXig/OlxyP1xuKSsvLCAiIikucmVwbGFjZSgvKD86XHI/XG4oPzpccyopKSQvLCAiIik7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3N0cmluZ3MuanMKdmFyIHJlcXVpcmVfc3RyaW5ncyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9zdHJpbmdzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWNhbWVsaXplID0gZGVjYW1lbGl6ZTsKICAgIGV4cG9ydHMyLmRhc2hlcml6ZSA9IGRhc2hlcml6ZTsKICAgIGV4cG9ydHMyLmNhbWVsaXplID0gY2FtZWxpemU7CiAgICBleHBvcnRzMi5jbGFzc2lmeSA9IGNsYXNzaWZ5OwogICAgZXhwb3J0czIudW5kZXJzY29yZSA9IHVuZGVyc2NvcmU7CiAgICBleHBvcnRzMi5jYXBpdGFsaXplID0gY2FwaXRhbGl6ZTsKICAgIGV4cG9ydHMyLmxldmVuc2h0ZWluID0gbGV2ZW5zaHRlaW47CiAgICB2YXIgU1RSSU5HX0RBU0hFUklaRV9SRUdFWFAgPSAvWyBfXS9nOwogICAgdmFyIFNUUklOR19ERUNBTUVMSVpFX1JFR0VYUCA9IC8oW2EtelxkXSkoW0EtWl0pL2c7CiAgICB2YXIgU1RSSU5HX0NBTUVMSVpFX1JFR0VYUCA9IC8oLXxffFwufFxzKSsoLik/L2c7CiAgICB2YXIgU1RSSU5HX1VOREVSU0NPUkVfUkVHRVhQXzEgPSAvKFthLXpcZF0pKFtBLVpdKykvZzsKICAgIHZhciBTVFJJTkdfVU5ERVJTQ09SRV9SRUdFWFBfMiA9IC8tfFxzKy9nOwogICAgZnVuY3Rpb24gZGVjYW1lbGl6ZShzdHIpIHsKICAgICAgcmV0dXJuIHN0ci5yZXBsYWNlKFNUUklOR19ERUNBTUVMSVpFX1JFR0VYUCwgIiQxXyQyIikudG9Mb3dlckNhc2UoKTsKICAgIH0KICAgIGZ1bmN0aW9uIGRhc2hlcml6ZShzdHIpIHsKICAgICAgcmV0dXJuIGRlY2FtZWxpemUoc3RyKS5yZXBsYWNlKFNUUklOR19EQVNIRVJJWkVfUkVHRVhQLCAiLSIpOwogICAgfQogICAgZnVuY3Rpb24gY2FtZWxpemUoc3RyKSB7CiAgICAgIHJldHVybiBzdHIucmVwbGFjZShTVFJJTkdfQ0FNRUxJWkVfUkVHRVhQLCAoX21hdGNoLCBfc2VwYXJhdG9yLCBjaHIpID0+IHsKICAgICAgICByZXR1cm4gY2hyID8gY2hyLnRvVXBwZXJDYXNlKCkgOiAiIjsKICAgICAgfSkucmVwbGFjZSgvXihbQS1aXSkvLCAobWF0Y2gpID0+IG1hdGNoLnRvTG93ZXJDYXNlKCkpOwogICAgfQogICAgZnVuY3Rpb24gY2xhc3NpZnkoc3RyKSB7CiAgICAgIHJldHVybiBzdHIuc3BsaXQoIi4iKS5tYXAoKHBhcnQpID0+IGNhcGl0YWxpemUoY2FtZWxpemUocGFydCkpKS5qb2luKCIiKTsKICAgIH0KICAgIGZ1bmN0aW9uIHVuZGVyc2NvcmUoc3RyKSB7CiAgICAgIHJldHVybiBzdHIucmVwbGFjZShTVFJJTkdfVU5ERVJTQ09SRV9SRUdFWFBfMSwgIiQxXyQyIikucmVwbGFjZShTVFJJTkdfVU5ERVJTQ09SRV9SRUdFWFBfMiwgIl8iKS50b0xvd2VyQ2FzZSgpOwogICAgfQogICAgZnVuY3Rpb24gY2FwaXRhbGl6ZShzdHIpIHsKICAgICAgcmV0dXJuIHN0ci5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHN0ci5zbGljZSgxKTsKICAgIH0KICAgIGZ1bmN0aW9uIGxldmVuc2h0ZWluKGEsIGIpIHsKICAgICAgaWYgKGEubGVuZ3RoID09IDApIHsKICAgICAgICByZXR1cm4gYi5sZW5ndGg7CiAgICAgIH0KICAgICAgaWYgKGIubGVuZ3RoID09IDApIHsKICAgICAgICByZXR1cm4gYS5sZW5ndGg7CiAgICAgIH0KICAgICAgY29uc3QgbWF0cml4ID0gW107CiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDw9IGIubGVuZ3RoOyBpKyspIHsKICAgICAgICBtYXRyaXhbaV0gPSBbaV07CiAgICAgIH0KICAgICAgZm9yIChsZXQgaiA9IDA7IGogPD0gYS5sZW5ndGg7IGorKykgewogICAgICAgIG1hdHJpeFswXVtqXSA9IGo7CiAgICAgIH0KICAgICAgZm9yIChsZXQgaSA9IDE7IGkgPD0gYi5sZW5ndGg7IGkrKykgewogICAgICAgIGZvciAobGV0IGogPSAxOyBqIDw9IGEubGVuZ3RoOyBqKyspIHsKICAgICAgICAgIGlmIChiLmNoYXJBdChpIC0gMSkgPT0gYS5jaGFyQXQoaiAtIDEpKSB7CiAgICAgICAgICAgIG1hdHJpeFtpXVtqXSA9IG1hdHJpeFtpIC0gMV1baiAtIDFdOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgbWF0cml4W2ldW2pdID0gTWF0aC5taW4oCiAgICAgICAgICAgICAgbWF0cml4W2kgLSAxXVtqIC0gMV0gKyAxLAogICAgICAgICAgICAgIC8vIHN1YnN0aXR1dGlvbgogICAgICAgICAgICAgIG1hdHJpeFtpXVtqIC0gMV0gKyAxLAogICAgICAgICAgICAgIC8vIGluc2VydGlvbgogICAgICAgICAgICAgIG1hdHJpeFtpIC0gMV1bal0gKyAxCiAgICAgICAgICAgICk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBtYXRyaXhbYi5sZW5ndGhdW2EubGVuZ3RoXTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvb2JqZWN0LmpzCnZhciByZXF1aXJlX29iamVjdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9vYmplY3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlZXBDb3B5ID0gZGVlcENvcHk7CiAgICB2YXIgY29weVN5bWJvbCA9IFN5bWJvbCgpOwogICAgZnVuY3Rpb24gZGVlcENvcHkodmFsdWUpIHsKICAgICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7CiAgICAgICAgcmV0dXJuIHZhbHVlLm1hcCgobykgPT4gZGVlcENvcHkobykpOwogICAgICB9IGVsc2UgaWYgKHZhbHVlICYmIHR5cGVvZiB2YWx1ZSA9PT0gIm9iamVjdCIpIHsKICAgICAgICBjb25zdCB2YWx1ZUNhc3RlZCA9IHZhbHVlOwogICAgICAgIGlmICh2YWx1ZUNhc3RlZFtjb3B5U3ltYm9sXSkgewogICAgICAgICAgcmV0dXJuIHZhbHVlQ2FzdGVkW2NvcHlTeW1ib2xdOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWVDYXN0ZWRbInRvSlNPTiJdKSB7CiAgICAgICAgICByZXR1cm4gSlNPTi5wYXJzZSh2YWx1ZUNhc3RlZFsidG9KU09OIl0oKSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGNvcHkgPSBPYmplY3QuY3JlYXRlKE9iamVjdC5nZXRQcm90b3R5cGVPZih2YWx1ZUNhc3RlZCkpOwogICAgICAgIHZhbHVlQ2FzdGVkW2NvcHlTeW1ib2xdID0gY29weTsKICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh2YWx1ZUNhc3RlZCkpIHsKICAgICAgICAgIGNvcHlba2V5XSA9IGRlZXBDb3B5KHZhbHVlQ2FzdGVkW2tleV0pOwogICAgICAgIH0KICAgICAgICBkZWxldGUgdmFsdWVDYXN0ZWRbY29weVN5bWJvbF07CiAgICAgICAgcmV0dXJuIGNvcHk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuIHZhbHVlOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtYTBmN2M5Yjc5Ny56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL2Jhc2U2NC5qcwp2YXIgcmVxdWlyZV9iYXNlNjQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi1hMGY3YzliNzk3LnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvYmFzZTY0LmpzIihleHBvcnRzMikgewogICAgdmFyIGludFRvQ2hhck1hcCA9ICJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvIi5zcGxpdCgiIik7CiAgICBleHBvcnRzMi5lbmNvZGUgPSBmdW5jdGlvbihudW1iZXIpIHsKICAgICAgaWYgKDAgPD0gbnVtYmVyICYmIG51bWJlciA8IGludFRvQ2hhck1hcC5sZW5ndGgpIHsKICAgICAgICByZXR1cm4gaW50VG9DaGFyTWFwW251bWJlcl07CiAgICAgIH0KICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiTXVzdCBiZSBiZXR3ZWVuIDAgYW5kIDYzOiAiICsgbnVtYmVyKTsKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtYTBmN2M5Yjc5Ny56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL2Jhc2U2NC12bHEuanMKdmFyIHJlcXVpcmVfYmFzZTY0X3ZscSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LWEwZjdjOWI3OTcuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9iYXNlNjQtdmxxLmpzIihleHBvcnRzMikgewogICAgdmFyIGJhc2U2NCA9IHJlcXVpcmVfYmFzZTY0KCk7CiAgICB2YXIgVkxRX0JBU0VfU0hJRlQgPSA1OwogICAgdmFyIFZMUV9CQVNFID0gMSA8PCBWTFFfQkFTRV9TSElGVDsKICAgIHZhciBWTFFfQkFTRV9NQVNLID0gVkxRX0JBU0UgLSAxOwogICAgdmFyIFZMUV9DT05USU5VQVRJT05fQklUID0gVkxRX0JBU0U7CiAgICBmdW5jdGlvbiB0b1ZMUVNpZ25lZChhVmFsdWUpIHsKICAgICAgcmV0dXJuIGFWYWx1ZSA8IDAgPyAoLWFWYWx1ZSA8PCAxKSArIDEgOiAoYVZhbHVlIDw8IDEpICsgMDsKICAgIH0KICAgIGV4cG9ydHMyLmVuY29kZSA9IGZ1bmN0aW9uIGJhc2U2NFZMUV9lbmNvZGUoYVZhbHVlKSB7CiAgICAgIGxldCBlbmNvZGVkID0gIiI7CiAgICAgIGxldCBkaWdpdDsKICAgICAgbGV0IHZscSA9IHRvVkxRU2lnbmVkKGFWYWx1ZSk7CiAgICAgIGRvIHsKICAgICAgICBkaWdpdCA9IHZscSAmIFZMUV9CQVNFX01BU0s7CiAgICAgICAgdmxxID4+Pj0gVkxRX0JBU0VfU0hJRlQ7CiAgICAgICAgaWYgKHZscSA+IDApIHsKICAgICAgICAgIGRpZ2l0IHw9IFZMUV9DT05USU5VQVRJT05fQklUOwogICAgICAgIH0KICAgICAgICBlbmNvZGVkICs9IGJhc2U2NC5lbmNvZGUoZGlnaXQpOwogICAgICB9IHdoaWxlICh2bHEgPiAwKTsKICAgICAgcmV0dXJuIGVuY29kZWQ7CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LWEwZjdjOWI3OTcuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi91dGlsLmpzCnZhciByZXF1aXJlX3V0aWwyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtYTBmN2M5Yjc5Ny56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3V0aWwuanMiKGV4cG9ydHMyKSB7CiAgICBmdW5jdGlvbiBnZXRBcmcoYUFyZ3MsIGFOYW1lLCBhRGVmYXVsdFZhbHVlKSB7CiAgICAgIGlmIChhTmFtZSBpbiBhQXJncykgewogICAgICAgIHJldHVybiBhQXJnc1thTmFtZV07CiAgICAgIH0gZWxzZSBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMykgewogICAgICAgIHJldHVybiBhRGVmYXVsdFZhbHVlOwogICAgICB9CiAgICAgIHRocm93IG5ldyBFcnJvcignIicgKyBhTmFtZSArICciIGlzIGEgcmVxdWlyZWQgYXJndW1lbnQuJyk7CiAgICB9CiAgICBleHBvcnRzMi5nZXRBcmcgPSBnZXRBcmc7CiAgICB2YXIgdXJsUmVnZXhwID0gL14oPzooW1x3K1wtLl0rKTopP1wvXC8oPzooXHcrOlx3KylAKT8oW1x3Li1dKikoPzo6KFxkKykpPyguKikkLzsKICAgIHZhciBkYXRhVXJsUmVnZXhwID0gL15kYXRhOi4rXCwuKyQvOwogICAgZnVuY3Rpb24gdXJsUGFyc2UoYVVybCkgewogICAgICBjb25zdCBtYXRjaCA9IGFVcmwubWF0Y2godXJsUmVnZXhwKTsKICAgICAgaWYgKCFtYXRjaCkgewogICAgICAgIHJldHVybiBudWxsOwogICAgICB9CiAgICAgIHJldHVybiB7CiAgICAgICAgc2NoZW1lOiBtYXRjaFsxXSwKICAgICAgICBhdXRoOiBtYXRjaFsyXSwKICAgICAgICBob3N0OiBtYXRjaFszXSwKICAgICAgICBwb3J0OiBtYXRjaFs0XSwKICAgICAgICBwYXRoOiBtYXRjaFs1XQogICAgICB9OwogICAgfQogICAgZXhwb3J0czIudXJsUGFyc2UgPSB1cmxQYXJzZTsKICAgIGZ1bmN0aW9uIHVybEdlbmVyYXRlKGFQYXJzZWRVcmwpIHsKICAgICAgbGV0IHVybDMgPSAiIjsKICAgICAgaWYgKGFQYXJzZWRVcmwuc2NoZW1lKSB7CiAgICAgICAgdXJsMyArPSBhUGFyc2VkVXJsLnNjaGVtZSArICI6IjsKICAgICAgfQogICAgICB1cmwzICs9ICIvLyI7CiAgICAgIGlmIChhUGFyc2VkVXJsLmF1dGgpIHsKICAgICAgICB1cmwzICs9IGFQYXJzZWRVcmwuYXV0aCArICJAIjsKICAgICAgfQogICAgICBpZiAoYVBhcnNlZFVybC5ob3N0KSB7CiAgICAgICAgdXJsMyArPSBhUGFyc2VkVXJsLmhvc3Q7CiAgICAgIH0KICAgICAgaWYgKGFQYXJzZWRVcmwucG9ydCkgewogICAgICAgIHVybDMgKz0gIjoiICsgYVBhcnNlZFVybC5wb3J0OwogICAgICB9CiAgICAgIGlmIChhUGFyc2VkVXJsLnBhdGgpIHsKICAgICAgICB1cmwzICs9IGFQYXJzZWRVcmwucGF0aDsKICAgICAgfQogICAgICByZXR1cm4gdXJsMzsKICAgIH0KICAgIGV4cG9ydHMyLnVybEdlbmVyYXRlID0gdXJsR2VuZXJhdGU7CiAgICB2YXIgTUFYX0NBQ0hFRF9JTlBVVFMgPSAzMjsKICAgIGZ1bmN0aW9uIGxydU1lbW9pemUoZikgewogICAgICBjb25zdCBjYWNoZSA9IFtdOwogICAgICByZXR1cm4gZnVuY3Rpb24oaW5wdXQpIHsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNhY2hlLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICBpZiAoY2FjaGVbaV0uaW5wdXQgPT09IGlucHV0KSB7CiAgICAgICAgICAgIGNvbnN0IHRlbXAgPSBjYWNoZVswXTsKICAgICAgICAgICAgY2FjaGVbMF0gPSBjYWNoZVtpXTsKICAgICAgICAgICAgY2FjaGVbaV0gPSB0ZW1wOwogICAgICAgICAgICByZXR1cm4gY2FjaGVbMF0ucmVzdWx0OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb25zdCByZXN1bHQgPSBmKGlucHV0KTsKICAgICAgICBjYWNoZS51bnNoaWZ0KHsKICAgICAgICAgIGlucHV0LAogICAgICAgICAgcmVzdWx0CiAgICAgICAgfSk7CiAgICAgICAgaWYgKGNhY2hlLmxlbmd0aCA+IE1BWF9DQUNIRURfSU5QVVRTKSB7CiAgICAgICAgICBjYWNoZS5wb3AoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0KICAgIHZhciBub3JtYWxpemUgPSBscnVNZW1vaXplKGZ1bmN0aW9uIG5vcm1hbGl6ZTIoYVBhdGgpIHsKICAgICAgbGV0IHBhdGggPSBhUGF0aDsKICAgICAgY29uc3QgdXJsMyA9IHVybFBhcnNlKGFQYXRoKTsKICAgICAgaWYgKHVybDMpIHsKICAgICAgICBpZiAoIXVybDMucGF0aCkgewogICAgICAgICAgcmV0dXJuIGFQYXRoOwogICAgICAgIH0KICAgICAgICBwYXRoID0gdXJsMy5wYXRoOwogICAgICB9CiAgICAgIGNvbnN0IGlzQWJzb2x1dGUgPSBleHBvcnRzMi5pc0Fic29sdXRlKHBhdGgpOwogICAgICBjb25zdCBwYXJ0cyA9IFtdOwogICAgICBsZXQgc3RhcnQgPSAwOwogICAgICBsZXQgaSA9IDA7CiAgICAgIHdoaWxlICh0cnVlKSB7CiAgICAgICAgc3RhcnQgPSBpOwogICAgICAgIGkgPSBwYXRoLmluZGV4T2YoIi8iLCBzdGFydCk7CiAgICAgICAgaWYgKGkgPT09IC0xKSB7CiAgICAgICAgICBwYXJ0cy5wdXNoKHBhdGguc2xpY2Uoc3RhcnQpKTsKICAgICAgICAgIGJyZWFrOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBwYXJ0cy5wdXNoKHBhdGguc2xpY2Uoc3RhcnQsIGkpKTsKICAgICAgICAgIHdoaWxlIChpIDwgcGF0aC5sZW5ndGggJiYgcGF0aFtpXSA9PT0gIi8iKSB7CiAgICAgICAgICAgIGkrKzsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgbGV0IHVwID0gMDsKICAgICAgZm9yIChpID0gcGFydHMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHsKICAgICAgICBjb25zdCBwYXJ0ID0gcGFydHNbaV07CiAgICAgICAgaWYgKHBhcnQgPT09ICIuIikgewogICAgICAgICAgcGFydHMuc3BsaWNlKGksIDEpOwogICAgICAgIH0gZWxzZSBpZiAocGFydCA9PT0gIi4uIikgewogICAgICAgICAgdXArKzsKICAgICAgICB9IGVsc2UgaWYgKHVwID4gMCkgewogICAgICAgICAgaWYgKHBhcnQgPT09ICIiKSB7CiAgICAgICAgICAgIHBhcnRzLnNwbGljZShpICsgMSwgdXApOwogICAgICAgICAgICB1cCA9IDA7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBwYXJ0cy5zcGxpY2UoaSwgMik7CiAgICAgICAgICAgIHVwLS07CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIHBhdGggPSBwYXJ0cy5qb2luKCIvIik7CiAgICAgIGlmIChwYXRoID09PSAiIikgewogICAgICAgIHBhdGggPSBpc0Fic29sdXRlID8gIi8iIDogIi4iOwogICAgICB9CiAgICAgIGlmICh1cmwzKSB7CiAgICAgICAgdXJsMy5wYXRoID0gcGF0aDsKICAgICAgICByZXR1cm4gdXJsR2VuZXJhdGUodXJsMyk7CiAgICAgIH0KICAgICAgcmV0dXJuIHBhdGg7CiAgICB9KTsKICAgIGV4cG9ydHMyLm5vcm1hbGl6ZSA9IG5vcm1hbGl6ZTsKICAgIGZ1bmN0aW9uIGpvaW4yKGFSb290LCBhUGF0aCkgewogICAgICBpZiAoYVJvb3QgPT09ICIiKSB7CiAgICAgICAgYVJvb3QgPSAiLiI7CiAgICAgIH0KICAgICAgaWYgKGFQYXRoID09PSAiIikgewogICAgICAgIGFQYXRoID0gIi4iOwogICAgICB9CiAgICAgIGNvbnN0IGFQYXRoVXJsID0gdXJsUGFyc2UoYVBhdGgpOwogICAgICBjb25zdCBhUm9vdFVybCA9IHVybFBhcnNlKGFSb290KTsKICAgICAgaWYgKGFSb290VXJsKSB7CiAgICAgICAgYVJvb3QgPSBhUm9vdFVybC5wYXRoIHx8ICIvIjsKICAgICAgfQogICAgICBpZiAoYVBhdGhVcmwgJiYgIWFQYXRoVXJsLnNjaGVtZSkgewogICAgICAgIGlmIChhUm9vdFVybCkgewogICAgICAgICAgYVBhdGhVcmwuc2NoZW1lID0gYVJvb3RVcmwuc2NoZW1lOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdXJsR2VuZXJhdGUoYVBhdGhVcmwpOwogICAgICB9CiAgICAgIGlmIChhUGF0aFVybCB8fCBhUGF0aC5tYXRjaChkYXRhVXJsUmVnZXhwKSkgewogICAgICAgIHJldHVybiBhUGF0aDsKICAgICAgfQogICAgICBpZiAoYVJvb3RVcmwgJiYgIWFSb290VXJsLmhvc3QgJiYgIWFSb290VXJsLnBhdGgpIHsKICAgICAgICBhUm9vdFVybC5ob3N0ID0gYVBhdGg7CiAgICAgICAgcmV0dXJuIHVybEdlbmVyYXRlKGFSb290VXJsKTsKICAgICAgfQogICAgICBjb25zdCBqb2luZWQgPSBhUGF0aC5jaGFyQXQoMCkgPT09ICIvIiA/IGFQYXRoIDogbm9ybWFsaXplKGFSb290LnJlcGxhY2UoL1wvKyQvLCAiIikgKyAiLyIgKyBhUGF0aCk7CiAgICAgIGlmIChhUm9vdFVybCkgewogICAgICAgIGFSb290VXJsLnBhdGggPSBqb2luZWQ7CiAgICAgICAgcmV0dXJuIHVybEdlbmVyYXRlKGFSb290VXJsKTsKICAgICAgfQogICAgICByZXR1cm4gam9pbmVkOwogICAgfQogICAgZXhwb3J0czIuam9pbiA9IGpvaW4yOwogICAgZXhwb3J0czIuaXNBYnNvbHV0ZSA9IGZ1bmN0aW9uKGFQYXRoKSB7CiAgICAgIHJldHVybiBhUGF0aC5jaGFyQXQoMCkgPT09ICIvIiB8fCB1cmxSZWdleHAudGVzdChhUGF0aCk7CiAgICB9OwogICAgZnVuY3Rpb24gcmVsYXRpdmUoYVJvb3QsIGFQYXRoKSB7CiAgICAgIGlmIChhUm9vdCA9PT0gIiIpIHsKICAgICAgICBhUm9vdCA9ICIuIjsKICAgICAgfQogICAgICBhUm9vdCA9IGFSb290LnJlcGxhY2UoL1wvJC8sICIiKTsKICAgICAgbGV0IGxldmVsID0gMDsKICAgICAgd2hpbGUgKGFQYXRoLmluZGV4T2YoYVJvb3QgKyAiLyIpICE9PSAwKSB7CiAgICAgICAgY29uc3QgaW5kZXggPSBhUm9vdC5sYXN0SW5kZXhPZigiLyIpOwogICAgICAgIGlmIChpbmRleCA8IDApIHsKICAgICAgICAgIHJldHVybiBhUGF0aDsKICAgICAgICB9CiAgICAgICAgYVJvb3QgPSBhUm9vdC5zbGljZSgwLCBpbmRleCk7CiAgICAgICAgaWYgKGFSb290Lm1hdGNoKC9eKFteXC9dKzpcLyk/XC8qJC8pKSB7CiAgICAgICAgICByZXR1cm4gYVBhdGg7CiAgICAgICAgfQogICAgICAgICsrbGV2ZWw7CiAgICAgIH0KICAgICAgcmV0dXJuIEFycmF5KGxldmVsICsgMSkuam9pbigiLi4vIikgKyBhUGF0aC5zdWJzdHIoYVJvb3QubGVuZ3RoICsgMSk7CiAgICB9CiAgICBleHBvcnRzMi5yZWxhdGl2ZSA9IHJlbGF0aXZlOwogICAgdmFyIHN1cHBvcnRzTnVsbFByb3RvID0gZnVuY3Rpb24oKSB7CiAgICAgIGNvbnN0IG9iaiA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICByZXR1cm4gISgiX19wcm90b19fIiBpbiBvYmopOwogICAgfSgpOwogICAgZnVuY3Rpb24gaWRlbnRpdHkocykgewogICAgICByZXR1cm4gczsKICAgIH0KICAgIGZ1bmN0aW9uIHRvU2V0U3RyaW5nKGFTdHIpIHsKICAgICAgaWYgKGlzUHJvdG9TdHJpbmcoYVN0cikpIHsKICAgICAgICByZXR1cm4gIiQiICsgYVN0cjsKICAgICAgfQogICAgICByZXR1cm4gYVN0cjsKICAgIH0KICAgIGV4cG9ydHMyLnRvU2V0U3RyaW5nID0gc3VwcG9ydHNOdWxsUHJvdG8gPyBpZGVudGl0eSA6IHRvU2V0U3RyaW5nOwogICAgZnVuY3Rpb24gZnJvbVNldFN0cmluZyhhU3RyKSB7CiAgICAgIGlmIChpc1Byb3RvU3RyaW5nKGFTdHIpKSB7CiAgICAgICAgcmV0dXJuIGFTdHIuc2xpY2UoMSk7CiAgICAgIH0KICAgICAgcmV0dXJuIGFTdHI7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tU2V0U3RyaW5nID0gc3VwcG9ydHNOdWxsUHJvdG8gPyBpZGVudGl0eSA6IGZyb21TZXRTdHJpbmc7CiAgICBmdW5jdGlvbiBpc1Byb3RvU3RyaW5nKHMpIHsKICAgICAgaWYgKCFzKSB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICAgIGNvbnN0IGxlbmd0aCA9IHMubGVuZ3RoOwogICAgICBpZiAobGVuZ3RoIDwgOSkgewogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgICBpZiAocy5jaGFyQ29kZUF0KGxlbmd0aCAtIDEpICE9PSA5NSB8fCBzLmNoYXJDb2RlQXQobGVuZ3RoIC0gMikgIT09IDk1IHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSAzKSAhPT0gMTExIHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA0KSAhPT0gMTE2IHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA1KSAhPT0gMTExIHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA2KSAhPT0gMTE0IHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA3KSAhPT0gMTEyIHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSA4KSAhPT0gOTUgfHwgcy5jaGFyQ29kZUF0KGxlbmd0aCAtIDkpICE9PSA5NSkgewogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgICBmb3IgKGxldCBpID0gbGVuZ3RoIC0gMTA7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgaWYgKHMuY2hhckNvZGVBdChpKSAhPT0gMzYpIHsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIHRydWU7CiAgICB9CiAgICBmdW5jdGlvbiBjb21wYXJlQnlPcmlnaW5hbFBvc2l0aW9ucyhtYXBwaW5nQSwgbWFwcGluZ0IsIG9ubHlDb21wYXJlT3JpZ2luYWwpIHsKICAgICAgbGV0IGNtcCA9IHN0cmNtcChtYXBwaW5nQS5zb3VyY2UsIG1hcHBpbmdCLnNvdXJjZSk7CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLm9yaWdpbmFsTGluZSAtIG1hcHBpbmdCLm9yaWdpbmFsTGluZTsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgY21wID0gbWFwcGluZ0Eub3JpZ2luYWxDb2x1bW4gLSBtYXBwaW5nQi5vcmlnaW5hbENvbHVtbjsKICAgICAgaWYgKGNtcCAhPT0gMCB8fCBvbmx5Q29tcGFyZU9yaWdpbmFsKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICBjbXAgPSBtYXBwaW5nQS5nZW5lcmF0ZWRDb2x1bW4gLSBtYXBwaW5nQi5nZW5lcmF0ZWRDb2x1bW47CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLmdlbmVyYXRlZExpbmUgLSBtYXBwaW5nQi5nZW5lcmF0ZWRMaW5lOwogICAgICBpZiAoY21wICE9PSAwKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICByZXR1cm4gc3RyY21wKG1hcHBpbmdBLm5hbWUsIG1hcHBpbmdCLm5hbWUpOwogICAgfQogICAgZXhwb3J0czIuY29tcGFyZUJ5T3JpZ2luYWxQb3NpdGlvbnMgPSBjb21wYXJlQnlPcmlnaW5hbFBvc2l0aW9uczsKICAgIGZ1bmN0aW9uIGNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0RlZmxhdGVkKG1hcHBpbmdBLCBtYXBwaW5nQiwgb25seUNvbXBhcmVHZW5lcmF0ZWQpIHsKICAgICAgbGV0IGNtcCA9IG1hcHBpbmdBLmdlbmVyYXRlZExpbmUgLSBtYXBwaW5nQi5nZW5lcmF0ZWRMaW5lOwogICAgICBpZiAoY21wICE9PSAwKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICBjbXAgPSBtYXBwaW5nQS5nZW5lcmF0ZWRDb2x1bW4gLSBtYXBwaW5nQi5nZW5lcmF0ZWRDb2x1bW47CiAgICAgIGlmIChjbXAgIT09IDAgfHwgb25seUNvbXBhcmVHZW5lcmF0ZWQpIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IHN0cmNtcChtYXBwaW5nQS5zb3VyY2UsIG1hcHBpbmdCLnNvdXJjZSk7CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLm9yaWdpbmFsTGluZSAtIG1hcHBpbmdCLm9yaWdpbmFsTGluZTsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgY21wID0gbWFwcGluZ0Eub3JpZ2luYWxDb2x1bW4gLSBtYXBwaW5nQi5vcmlnaW5hbENvbHVtbjsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgcmV0dXJuIHN0cmNtcChtYXBwaW5nQS5uYW1lLCBtYXBwaW5nQi5uYW1lKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0RlZmxhdGVkID0gY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zRGVmbGF0ZWQ7CiAgICBmdW5jdGlvbiBzdHJjbXAoYVN0cjEsIGFTdHIyKSB7CiAgICAgIGlmIChhU3RyMSA9PT0gYVN0cjIpIHsKICAgICAgICByZXR1cm4gMDsKICAgICAgfQogICAgICBpZiAoYVN0cjEgPT09IG51bGwpIHsKICAgICAgICByZXR1cm4gMTsKICAgICAgfQogICAgICBpZiAoYVN0cjIgPT09IG51bGwpIHsKICAgICAgICByZXR1cm4gLTE7CiAgICAgIH0KICAgICAgaWYgKGFTdHIxID4gYVN0cjIpIHsKICAgICAgICByZXR1cm4gMTsKICAgICAgfQogICAgICByZXR1cm4gLTE7CiAgICB9CiAgICBmdW5jdGlvbiBjb21wYXJlQnlHZW5lcmF0ZWRQb3NpdGlvbnNJbmZsYXRlZChtYXBwaW5nQSwgbWFwcGluZ0IpIHsKICAgICAgbGV0IGNtcCA9IG1hcHBpbmdBLmdlbmVyYXRlZExpbmUgLSBtYXBwaW5nQi5nZW5lcmF0ZWRMaW5lOwogICAgICBpZiAoY21wICE9PSAwKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICBjbXAgPSBtYXBwaW5nQS5nZW5lcmF0ZWRDb2x1bW4gLSBtYXBwaW5nQi5nZW5lcmF0ZWRDb2x1bW47CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IHN0cmNtcChtYXBwaW5nQS5zb3VyY2UsIG1hcHBpbmdCLnNvdXJjZSk7CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLm9yaWdpbmFsTGluZSAtIG1hcHBpbmdCLm9yaWdpbmFsTGluZTsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgY21wID0gbWFwcGluZ0Eub3JpZ2luYWxDb2x1bW4gLSBtYXBwaW5nQi5vcmlnaW5hbENvbHVtbjsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgcmV0dXJuIHN0cmNtcChtYXBwaW5nQS5uYW1lLCBtYXBwaW5nQi5uYW1lKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0luZmxhdGVkID0gY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zSW5mbGF0ZWQ7CiAgICBmdW5jdGlvbiBwYXJzZVNvdXJjZU1hcElucHV0KHN0cikgewogICAgICByZXR1cm4gSlNPTi5wYXJzZShzdHIucmVwbGFjZSgvXlwpXX0nW15cbl0qXG4vLCAiIikpOwogICAgfQogICAgZXhwb3J0czIucGFyc2VTb3VyY2VNYXBJbnB1dCA9IHBhcnNlU291cmNlTWFwSW5wdXQ7CiAgICBmdW5jdGlvbiBjb21wdXRlU291cmNlVVJMKHNvdXJjZVJvb3QsIHNvdXJjZVVSTCwgc291cmNlTWFwVVJMKSB7CiAgICAgIHNvdXJjZVVSTCA9IHNvdXJjZVVSTCB8fCAiIjsKICAgICAgaWYgKHNvdXJjZVJvb3QpIHsKICAgICAgICBpZiAoc291cmNlUm9vdFtzb3VyY2VSb290Lmxlbmd0aCAtIDFdICE9PSAiLyIgJiYgc291cmNlVVJMWzBdICE9PSAiLyIpIHsKICAgICAgICAgIHNvdXJjZVJvb3QgKz0gIi8iOwogICAgICAgIH0KICAgICAgICBzb3VyY2VVUkwgPSBzb3VyY2VSb290ICsgc291cmNlVVJMOwogICAgICB9CiAgICAgIGlmIChzb3VyY2VNYXBVUkwpIHsKICAgICAgICBjb25zdCBwYXJzZWQgPSB1cmxQYXJzZShzb3VyY2VNYXBVUkwpOwogICAgICAgIGlmICghcGFyc2VkKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoInNvdXJjZU1hcFVSTCBjb3VsZCBub3QgYmUgcGFyc2VkIik7CiAgICAgICAgfQogICAgICAgIGlmIChwYXJzZWQucGF0aCkgewogICAgICAgICAgY29uc3QgaW5kZXggPSBwYXJzZWQucGF0aC5sYXN0SW5kZXhPZigiLyIpOwogICAgICAgICAgaWYgKGluZGV4ID49IDApIHsKICAgICAgICAgICAgcGFyc2VkLnBhdGggPSBwYXJzZWQucGF0aC5zdWJzdHJpbmcoMCwgaW5kZXggKyAxKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgc291cmNlVVJMID0gam9pbjIodXJsR2VuZXJhdGUocGFyc2VkKSwgc291cmNlVVJMKTsKICAgICAgfQogICAgICByZXR1cm4gbm9ybWFsaXplKHNvdXJjZVVSTCk7CiAgICB9CiAgICBleHBvcnRzMi5jb21wdXRlU291cmNlVVJMID0gY29tcHV0ZVNvdXJjZVVSTDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi1hMGY3YzliNzk3LnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvYXJyYXktc2V0LmpzCnZhciByZXF1aXJlX2FycmF5X3NldCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LWEwZjdjOWI3OTcuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9hcnJheS1zZXQuanMiKGV4cG9ydHMyKSB7CiAgICB2YXIgQXJyYXlTZXQgPSBjbGFzcyBfQXJyYXlTZXQgewogICAgICBjb25zdHJ1Y3RvcigpIHsKICAgICAgICB0aGlzLl9hcnJheSA9IFtdOwogICAgICAgIHRoaXMuX3NldCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFN0YXRpYyBtZXRob2QgZm9yIGNyZWF0aW5nIEFycmF5U2V0IGluc3RhbmNlcyBmcm9tIGFuIGV4aXN0aW5nIGFycmF5LgogICAgICAgKi8KICAgICAgc3RhdGljIGZyb21BcnJheShhQXJyYXksIGFBbGxvd0R1cGxpY2F0ZXMpIHsKICAgICAgICBjb25zdCBzZXQgPSBuZXcgX0FycmF5U2V0KCk7CiAgICAgICAgZm9yIChsZXQgaSA9IDAsIGxlbiA9IGFBcnJheS5sZW5ndGg7IGkgPCBsZW47IGkrKykgewogICAgICAgICAgc2V0LmFkZChhQXJyYXlbaV0sIGFBbGxvd0R1cGxpY2F0ZXMpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2V0OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm4gaG93IG1hbnkgdW5pcXVlIGl0ZW1zIGFyZSBpbiB0aGlzIEFycmF5U2V0LiBJZiBkdXBsaWNhdGVzIGhhdmUgYmVlbgogICAgICAgKiBhZGRlZCwgdGhhbiB0aG9zZSBkbyBub3QgY291bnQgdG93YXJkcyB0aGUgc2l6ZS4KICAgICAgICoKICAgICAgICogQHJldHVybnMgTnVtYmVyCiAgICAgICAqLwogICAgICBzaXplKCkgewogICAgICAgIHJldHVybiB0aGlzLl9zZXQuc2l6ZTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQWRkIHRoZSBnaXZlbiBzdHJpbmcgdG8gdGhpcyBzZXQuCiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBTdHJpbmcgYVN0cgogICAgICAgKi8KICAgICAgYWRkKGFTdHIsIGFBbGxvd0R1cGxpY2F0ZXMpIHsKICAgICAgICBjb25zdCBpc0R1cGxpY2F0ZSA9IHRoaXMuaGFzKGFTdHIpOwogICAgICAgIGNvbnN0IGlkeCA9IHRoaXMuX2FycmF5Lmxlbmd0aDsKICAgICAgICBpZiAoIWlzRHVwbGljYXRlIHx8IGFBbGxvd0R1cGxpY2F0ZXMpIHsKICAgICAgICAgIHRoaXMuX2FycmF5LnB1c2goYVN0cik7CiAgICAgICAgfQogICAgICAgIGlmICghaXNEdXBsaWNhdGUpIHsKICAgICAgICAgIHRoaXMuX3NldC5zZXQoYVN0ciwgaWR4KTsKICAgICAgICB9CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIElzIHRoZSBnaXZlbiBzdHJpbmcgYSBtZW1iZXIgb2YgdGhpcyBzZXQ/CiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBTdHJpbmcgYVN0cgogICAgICAgKi8KICAgICAgaGFzKGFTdHIpIHsKICAgICAgICByZXR1cm4gdGhpcy5fc2V0LmhhcyhhU3RyKTsKICAgICAgfQogICAgICAvKioKICAgICAgICogV2hhdCBpcyB0aGUgaW5kZXggb2YgdGhlIGdpdmVuIHN0cmluZyBpbiB0aGUgYXJyYXk/CiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBTdHJpbmcgYVN0cgogICAgICAgKi8KICAgICAgaW5kZXhPZihhU3RyKSB7CiAgICAgICAgY29uc3QgaWR4ID0gdGhpcy5fc2V0LmdldChhU3RyKTsKICAgICAgICBpZiAoaWR4ID49IDApIHsKICAgICAgICAgIHJldHVybiBpZHg7CiAgICAgICAgfQogICAgICAgIHRocm93IG5ldyBFcnJvcignIicgKyBhU3RyICsgJyIgaXMgbm90IGluIHRoZSBzZXQuJyk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFdoYXQgaXMgdGhlIGVsZW1lbnQgYXQgdGhlIGdpdmVuIGluZGV4PwogICAgICAgKgogICAgICAgKiBAcGFyYW0gTnVtYmVyIGFJZHgKICAgICAgICovCiAgICAgIGF0KGFJZHgpIHsKICAgICAgICBpZiAoYUlkeCA+PSAwICYmIGFJZHggPCB0aGlzLl9hcnJheS5sZW5ndGgpIHsKICAgICAgICAgIHJldHVybiB0aGlzLl9hcnJheVthSWR4XTsKICAgICAgICB9CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJObyBlbGVtZW50IGluZGV4ZWQgYnkgIiArIGFJZHgpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIHRoZSBhcnJheSByZXByZXNlbnRhdGlvbiBvZiB0aGlzIHNldCAod2hpY2ggaGFzIHRoZSBwcm9wZXIgaW5kaWNlcwogICAgICAgKiBpbmRpY2F0ZWQgYnkgaW5kZXhPZikuIE5vdGUgdGhhdCB0aGlzIGlzIGEgY29weSBvZiB0aGUgaW50ZXJuYWwgYXJyYXkgdXNlZAogICAgICAgKiBmb3Igc3RvcmluZyB0aGUgbWVtYmVycyBzbyB0aGF0IG5vIG9uZSBjYW4gbWVzcyB3aXRoIGludGVybmFsIHN0YXRlLgogICAgICAgKi8KICAgICAgdG9BcnJheSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYXJyYXkuc2xpY2UoKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkFycmF5U2V0ID0gQXJyYXlTZXQ7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtYTBmN2M5Yjc5Ny56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL21hcHBpbmctbGlzdC5qcwp2YXIgcmVxdWlyZV9tYXBwaW5nX2xpc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi1hMGY3YzliNzk3LnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvbWFwcGluZy1saXN0LmpzIihleHBvcnRzMikgewogICAgdmFyIHV0aWwgPSByZXF1aXJlX3V0aWwyKCk7CiAgICBmdW5jdGlvbiBnZW5lcmF0ZWRQb3NpdGlvbkFmdGVyKG1hcHBpbmdBLCBtYXBwaW5nQikgewogICAgICBjb25zdCBsaW5lQSA9IG1hcHBpbmdBLmdlbmVyYXRlZExpbmU7CiAgICAgIGNvbnN0IGxpbmVCID0gbWFwcGluZ0IuZ2VuZXJhdGVkTGluZTsKICAgICAgY29uc3QgY29sdW1uQSA9IG1hcHBpbmdBLmdlbmVyYXRlZENvbHVtbjsKICAgICAgY29uc3QgY29sdW1uQiA9IG1hcHBpbmdCLmdlbmVyYXRlZENvbHVtbjsKICAgICAgcmV0dXJuIGxpbmVCID4gbGluZUEgfHwgbGluZUIgPT0gbGluZUEgJiYgY29sdW1uQiA+PSBjb2x1bW5BIHx8IHV0aWwuY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zSW5mbGF0ZWQobWFwcGluZ0EsIG1hcHBpbmdCKSA8PSAwOwogICAgfQogICAgdmFyIE1hcHBpbmdMaXN0ID0gY2xhc3MgewogICAgICBjb25zdHJ1Y3RvcigpIHsKICAgICAgICB0aGlzLl9hcnJheSA9IFtdOwogICAgICAgIHRoaXMuX3NvcnRlZCA9IHRydWU7CiAgICAgICAgdGhpcy5fbGFzdCA9IHsgZ2VuZXJhdGVkTGluZTogLTEsIGdlbmVyYXRlZENvbHVtbjogMCB9OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBJdGVyYXRlIHRocm91Z2ggaW50ZXJuYWwgaXRlbXMuIFRoaXMgbWV0aG9kIHRha2VzIHRoZSBzYW1lIGFyZ3VtZW50cyB0aGF0CiAgICAgICAqIGBBcnJheS5wcm90b3R5cGUuZm9yRWFjaGAgdGFrZXMuCiAgICAgICAqCiAgICAgICAqIE5PVEU6IFRoZSBvcmRlciBvZiB0aGUgbWFwcGluZ3MgaXMgTk9UIGd1YXJhbnRlZWQuCiAgICAgICAqLwogICAgICB1bnNvcnRlZEZvckVhY2goYUNhbGxiYWNrLCBhVGhpc0FyZykgewogICAgICAgIHRoaXMuX2FycmF5LmZvckVhY2goYUNhbGxiYWNrLCBhVGhpc0FyZyk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCB0aGUgZ2l2ZW4gc291cmNlIG1hcHBpbmcuCiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBPYmplY3QgYU1hcHBpbmcKICAgICAgICovCiAgICAgIGFkZChhTWFwcGluZykgewogICAgICAgIGlmIChnZW5lcmF0ZWRQb3NpdGlvbkFmdGVyKHRoaXMuX2xhc3QsIGFNYXBwaW5nKSkgewogICAgICAgICAgdGhpcy5fbGFzdCA9IGFNYXBwaW5nOwogICAgICAgICAgdGhpcy5fYXJyYXkucHVzaChhTWFwcGluZyk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX3NvcnRlZCA9IGZhbHNlOwogICAgICAgICAgdGhpcy5fYXJyYXkucHVzaChhTWFwcGluZyk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIHRoZSBmbGF0LCBzb3J0ZWQgYXJyYXkgb2YgbWFwcGluZ3MuIFRoZSBtYXBwaW5ncyBhcmUgc29ydGVkIGJ5CiAgICAgICAqIGdlbmVyYXRlZCBwb3NpdGlvbi4KICAgICAgICoKICAgICAgICogV0FSTklORzogVGhpcyBtZXRob2QgcmV0dXJucyBpbnRlcm5hbCBkYXRhIHdpdGhvdXQgY29weWluZywgZm9yCiAgICAgICAqIHBlcmZvcm1hbmNlLiBUaGUgcmV0dXJuIHZhbHVlIG11c3QgTk9UIGJlIG11dGF0ZWQsIGFuZCBzaG91bGQgYmUgdHJlYXRlZCBhcwogICAgICAgKiBhbiBpbW11dGFibGUgYm9ycm93LiBJZiB5b3Ugd2FudCB0byB0YWtlIG93bmVyc2hpcCwgeW91IG11c3QgbWFrZSB5b3VyIG93bgogICAgICAgKiBjb3B5LgogICAgICAgKi8KICAgICAgdG9BcnJheSgpIHsKICAgICAgICBpZiAoIXRoaXMuX3NvcnRlZCkgewogICAgICAgICAgdGhpcy5fYXJyYXkuc29ydCh1dGlsLmNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0luZmxhdGVkKTsKICAgICAgICAgIHRoaXMuX3NvcnRlZCA9IHRydWU7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9hcnJheTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLk1hcHBpbmdMaXN0ID0gTWFwcGluZ0xpc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtYTBmN2M5Yjc5Ny56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3NvdXJjZS1tYXAtZ2VuZXJhdG9yLmpzCnZhciByZXF1aXJlX3NvdXJjZV9tYXBfZ2VuZXJhdG9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtYTBmN2M5Yjc5Ny56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3NvdXJjZS1tYXAtZ2VuZXJhdG9yLmpzIihleHBvcnRzMikgewogICAgdmFyIGJhc2U2NFZMUSA9IHJlcXVpcmVfYmFzZTY0X3ZscSgpOwogICAgdmFyIHV0aWwgPSByZXF1aXJlX3V0aWwyKCk7CiAgICB2YXIgQXJyYXlTZXQgPSByZXF1aXJlX2FycmF5X3NldCgpLkFycmF5U2V0OwogICAgdmFyIE1hcHBpbmdMaXN0ID0gcmVxdWlyZV9tYXBwaW5nX2xpc3QoKS5NYXBwaW5nTGlzdDsKICAgIHZhciBTb3VyY2VNYXBHZW5lcmF0b3IgPSBjbGFzcyBfU291cmNlTWFwR2VuZXJhdG9yIHsKICAgICAgY29uc3RydWN0b3IoYUFyZ3MpIHsKICAgICAgICBpZiAoIWFBcmdzKSB7CiAgICAgICAgICBhQXJncyA9IHt9OwogICAgICAgIH0KICAgICAgICB0aGlzLl9maWxlID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJmaWxlIiwgbnVsbCk7CiAgICAgICAgdGhpcy5fc291cmNlUm9vdCA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAic291cmNlUm9vdCIsIG51bGwpOwogICAgICAgIHRoaXMuX3NraXBWYWxpZGF0aW9uID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJza2lwVmFsaWRhdGlvbiIsIGZhbHNlKTsKICAgICAgICB0aGlzLl9zb3VyY2VzID0gbmV3IEFycmF5U2V0KCk7CiAgICAgICAgdGhpcy5fbmFtZXMgPSBuZXcgQXJyYXlTZXQoKTsKICAgICAgICB0aGlzLl9tYXBwaW5ncyA9IG5ldyBNYXBwaW5nTGlzdCgpOwogICAgICAgIHRoaXMuX3NvdXJjZXNDb250ZW50cyA9IG51bGw7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIENyZWF0ZXMgYSBuZXcgU291cmNlTWFwR2VuZXJhdG9yIGJhc2VkIG9uIGEgU291cmNlTWFwQ29uc3VtZXIKICAgICAgICoKICAgICAgICogQHBhcmFtIGFTb3VyY2VNYXBDb25zdW1lciBUaGUgU291cmNlTWFwLgogICAgICAgKi8KICAgICAgc3RhdGljIGZyb21Tb3VyY2VNYXAoYVNvdXJjZU1hcENvbnN1bWVyKSB7CiAgICAgICAgY29uc3Qgc291cmNlUm9vdCA9IGFTb3VyY2VNYXBDb25zdW1lci5zb3VyY2VSb290OwogICAgICAgIGNvbnN0IGdlbmVyYXRvciA9IG5ldyBfU291cmNlTWFwR2VuZXJhdG9yKHsKICAgICAgICAgIGZpbGU6IGFTb3VyY2VNYXBDb25zdW1lci5maWxlLAogICAgICAgICAgc291cmNlUm9vdAogICAgICAgIH0pOwogICAgICAgIGFTb3VyY2VNYXBDb25zdW1lci5lYWNoTWFwcGluZyhmdW5jdGlvbihtYXBwaW5nKSB7CiAgICAgICAgICBjb25zdCBuZXdNYXBwaW5nID0gewogICAgICAgICAgICBnZW5lcmF0ZWQ6IHsKICAgICAgICAgICAgICBsaW5lOiBtYXBwaW5nLmdlbmVyYXRlZExpbmUsCiAgICAgICAgICAgICAgY29sdW1uOiBtYXBwaW5nLmdlbmVyYXRlZENvbHVtbgogICAgICAgICAgICB9CiAgICAgICAgICB9OwogICAgICAgICAgaWYgKG1hcHBpbmcuc291cmNlICE9IG51bGwpIHsKICAgICAgICAgICAgbmV3TWFwcGluZy5zb3VyY2UgPSBtYXBwaW5nLnNvdXJjZTsKICAgICAgICAgICAgaWYgKHNvdXJjZVJvb3QgIT0gbnVsbCkgewogICAgICAgICAgICAgIG5ld01hcHBpbmcuc291cmNlID0gdXRpbC5yZWxhdGl2ZShzb3VyY2VSb290LCBuZXdNYXBwaW5nLnNvdXJjZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbmV3TWFwcGluZy5vcmlnaW5hbCA9IHsKICAgICAgICAgICAgICBsaW5lOiBtYXBwaW5nLm9yaWdpbmFsTGluZSwKICAgICAgICAgICAgICBjb2x1bW46IG1hcHBpbmcub3JpZ2luYWxDb2x1bW4KICAgICAgICAgICAgfTsKICAgICAgICAgICAgaWYgKG1hcHBpbmcubmFtZSAhPSBudWxsKSB7CiAgICAgICAgICAgICAgbmV3TWFwcGluZy5uYW1lID0gbWFwcGluZy5uYW1lOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBnZW5lcmF0b3IuYWRkTWFwcGluZyhuZXdNYXBwaW5nKTsKICAgICAgICB9KTsKICAgICAgICBhU291cmNlTWFwQ29uc3VtZXIuc291cmNlcy5mb3JFYWNoKGZ1bmN0aW9uKHNvdXJjZUZpbGUpIHsKICAgICAgICAgIGxldCBzb3VyY2VSZWxhdGl2ZSA9IHNvdXJjZUZpbGU7CiAgICAgICAgICBpZiAoc291cmNlUm9vdCAhPT0gbnVsbCkgewogICAgICAgICAgICBzb3VyY2VSZWxhdGl2ZSA9IHV0aWwucmVsYXRpdmUoc291cmNlUm9vdCwgc291cmNlRmlsZSk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoIWdlbmVyYXRvci5fc291cmNlcy5oYXMoc291cmNlUmVsYXRpdmUpKSB7CiAgICAgICAgICAgIGdlbmVyYXRvci5fc291cmNlcy5hZGQoc291cmNlUmVsYXRpdmUpOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgY29udGVudCA9IGFTb3VyY2VNYXBDb25zdW1lci5zb3VyY2VDb250ZW50Rm9yKHNvdXJjZUZpbGUpOwogICAgICAgICAgaWYgKGNvbnRlbnQgIT0gbnVsbCkgewogICAgICAgICAgICBnZW5lcmF0b3Iuc2V0U291cmNlQ29udGVudChzb3VyY2VGaWxlLCBjb250ZW50KTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgICByZXR1cm4gZ2VuZXJhdG9yOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBBZGQgYSBzaW5nbGUgbWFwcGluZyBmcm9tIG9yaWdpbmFsIHNvdXJjZSBsaW5lIGFuZCBjb2x1bW4gdG8gdGhlIGdlbmVyYXRlZAogICAgICAgKiBzb3VyY2UncyBsaW5lIGFuZCBjb2x1bW4gZm9yIHRoaXMgc291cmNlIG1hcCBiZWluZyBjcmVhdGVkLiBUaGUgbWFwcGluZwogICAgICAgKiBvYmplY3Qgc2hvdWxkIGhhdmUgdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzOgogICAgICAgKgogICAgICAgKiAgIC0gZ2VuZXJhdGVkOiBBbiBvYmplY3Qgd2l0aCB0aGUgZ2VuZXJhdGVkIGxpbmUgYW5kIGNvbHVtbiBwb3NpdGlvbnMuCiAgICAgICAqICAgLSBvcmlnaW5hbDogQW4gb2JqZWN0IHdpdGggdGhlIG9yaWdpbmFsIGxpbmUgYW5kIGNvbHVtbiBwb3NpdGlvbnMuCiAgICAgICAqICAgLSBzb3VyY2U6IFRoZSBvcmlnaW5hbCBzb3VyY2UgZmlsZSAocmVsYXRpdmUgdG8gdGhlIHNvdXJjZVJvb3QpLgogICAgICAgKiAgIC0gbmFtZTogQW4gb3B0aW9uYWwgb3JpZ2luYWwgdG9rZW4gbmFtZSBmb3IgdGhpcyBtYXBwaW5nLgogICAgICAgKi8KICAgICAgYWRkTWFwcGluZyhhQXJncykgewogICAgICAgIGNvbnN0IGdlbmVyYXRlZCA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAiZ2VuZXJhdGVkIik7CiAgICAgICAgY29uc3Qgb3JpZ2luYWwgPSB1dGlsLmdldEFyZyhhQXJncywgIm9yaWdpbmFsIiwgbnVsbCk7CiAgICAgICAgbGV0IHNvdXJjZSA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAic291cmNlIiwgbnVsbCk7CiAgICAgICAgbGV0IG5hbWUgPSB1dGlsLmdldEFyZyhhQXJncywgIm5hbWUiLCBudWxsKTsKICAgICAgICBpZiAoIXRoaXMuX3NraXBWYWxpZGF0aW9uKSB7CiAgICAgICAgICB0aGlzLl92YWxpZGF0ZU1hcHBpbmcoZ2VuZXJhdGVkLCBvcmlnaW5hbCwgc291cmNlLCBuYW1lKTsKICAgICAgICB9CiAgICAgICAgaWYgKHNvdXJjZSAhPSBudWxsKSB7CiAgICAgICAgICBzb3VyY2UgPSBTdHJpbmcoc291cmNlKTsKICAgICAgICAgIGlmICghdGhpcy5fc291cmNlcy5oYXMoc291cmNlKSkgewogICAgICAgICAgICB0aGlzLl9zb3VyY2VzLmFkZChzb3VyY2UpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAobmFtZSAhPSBudWxsKSB7CiAgICAgICAgICBuYW1lID0gU3RyaW5nKG5hbWUpOwogICAgICAgICAgaWYgKCF0aGlzLl9uYW1lcy5oYXMobmFtZSkpIHsKICAgICAgICAgICAgdGhpcy5fbmFtZXMuYWRkKG5hbWUpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICB0aGlzLl9tYXBwaW5ncy5hZGQoewogICAgICAgICAgZ2VuZXJhdGVkTGluZTogZ2VuZXJhdGVkLmxpbmUsCiAgICAgICAgICBnZW5lcmF0ZWRDb2x1bW46IGdlbmVyYXRlZC5jb2x1bW4sCiAgICAgICAgICBvcmlnaW5hbExpbmU6IG9yaWdpbmFsICE9IG51bGwgJiYgb3JpZ2luYWwubGluZSwKICAgICAgICAgIG9yaWdpbmFsQ29sdW1uOiBvcmlnaW5hbCAhPSBudWxsICYmIG9yaWdpbmFsLmNvbHVtbiwKICAgICAgICAgIHNvdXJjZSwKICAgICAgICAgIG5hbWUKICAgICAgICB9KTsKICAgICAgfQogICAgICAvKioKICAgICAgICogU2V0IHRoZSBzb3VyY2UgY29udGVudCBmb3IgYSBzb3VyY2UgZmlsZS4KICAgICAgICovCiAgICAgIHNldFNvdXJjZUNvbnRlbnQoYVNvdXJjZUZpbGUsIGFTb3VyY2VDb250ZW50KSB7CiAgICAgICAgbGV0IHNvdXJjZSA9IGFTb3VyY2VGaWxlOwogICAgICAgIGlmICh0aGlzLl9zb3VyY2VSb290ICE9IG51bGwpIHsKICAgICAgICAgIHNvdXJjZSA9IHV0aWwucmVsYXRpdmUodGhpcy5fc291cmNlUm9vdCwgc291cmNlKTsKICAgICAgICB9CiAgICAgICAgaWYgKGFTb3VyY2VDb250ZW50ICE9IG51bGwpIHsKICAgICAgICAgIGlmICghdGhpcy5fc291cmNlc0NvbnRlbnRzKSB7CiAgICAgICAgICAgIHRoaXMuX3NvdXJjZXNDb250ZW50cyA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICAgICAgfQogICAgICAgICAgdGhpcy5fc291cmNlc0NvbnRlbnRzW3V0aWwudG9TZXRTdHJpbmcoc291cmNlKV0gPSBhU291cmNlQ29udGVudDsKICAgICAgICB9IGVsc2UgaWYgKHRoaXMuX3NvdXJjZXNDb250ZW50cykgewogICAgICAgICAgZGVsZXRlIHRoaXMuX3NvdXJjZXNDb250ZW50c1t1dGlsLnRvU2V0U3RyaW5nKHNvdXJjZSldOwogICAgICAgICAgaWYgKE9iamVjdC5rZXlzKHRoaXMuX3NvdXJjZXNDb250ZW50cykubGVuZ3RoID09PSAwKSB7CiAgICAgICAgICAgIHRoaXMuX3NvdXJjZXNDb250ZW50cyA9IG51bGw7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBBcHBsaWVzIHRoZSBtYXBwaW5ncyBvZiBhIHN1Yi1zb3VyY2UtbWFwIGZvciBhIHNwZWNpZmljIHNvdXJjZSBmaWxlIHRvIHRoZQogICAgICAgKiBzb3VyY2UgbWFwIGJlaW5nIGdlbmVyYXRlZC4gRWFjaCBtYXBwaW5nIHRvIHRoZSBzdXBwbGllZCBzb3VyY2UgZmlsZSBpcwogICAgICAgKiByZXdyaXR0ZW4gdXNpbmcgdGhlIHN1cHBsaWVkIHNvdXJjZSBtYXAuIE5vdGU6IFRoZSByZXNvbHV0aW9uIGZvciB0aGUKICAgICAgICogcmVzdWx0aW5nIG1hcHBpbmdzIGlzIHRoZSBtaW5pbWl1bSBvZiB0aGlzIG1hcCBhbmQgdGhlIHN1cHBsaWVkIG1hcC4KICAgICAgICoKICAgICAgICogQHBhcmFtIGFTb3VyY2VNYXBDb25zdW1lciBUaGUgc291cmNlIG1hcCB0byBiZSBhcHBsaWVkLgogICAgICAgKiBAcGFyYW0gYVNvdXJjZUZpbGUgT3B0aW9uYWwuIFRoZSBmaWxlbmFtZSBvZiB0aGUgc291cmNlIGZpbGUuCiAgICAgICAqICAgICAgICBJZiBvbWl0dGVkLCBTb3VyY2VNYXBDb25zdW1lcidzIGZpbGUgcHJvcGVydHkgd2lsbCBiZSB1c2VkLgogICAgICAgKiBAcGFyYW0gYVNvdXJjZU1hcFBhdGggT3B0aW9uYWwuIFRoZSBkaXJuYW1lIG9mIHRoZSBwYXRoIHRvIHRoZSBzb3VyY2UgbWFwCiAgICAgICAqICAgICAgICB0byBiZSBhcHBsaWVkLiBJZiByZWxhdGl2ZSwgaXQgaXMgcmVsYXRpdmUgdG8gdGhlIFNvdXJjZU1hcENvbnN1bWVyLgogICAgICAgKiAgICAgICAgVGhpcyBwYXJhbWV0ZXIgaXMgbmVlZGVkIHdoZW4gdGhlIHR3byBzb3VyY2UgbWFwcyBhcmVuJ3QgaW4gdGhlIHNhbWUKICAgICAgICogICAgICAgIGRpcmVjdG9yeSwgYW5kIHRoZSBzb3VyY2UgbWFwIHRvIGJlIGFwcGxpZWQgY29udGFpbnMgcmVsYXRpdmUgc291cmNlCiAgICAgICAqICAgICAgICBwYXRocy4gSWYgc28sIHRob3NlIHJlbGF0aXZlIHNvdXJjZSBwYXRocyBuZWVkIHRvIGJlIHJld3JpdHRlbgogICAgICAgKiAgICAgICAgcmVsYXRpdmUgdG8gdGhlIFNvdXJjZU1hcEdlbmVyYXRvci4KICAgICAgICovCiAgICAgIGFwcGx5U291cmNlTWFwKGFTb3VyY2VNYXBDb25zdW1lciwgYVNvdXJjZUZpbGUsIGFTb3VyY2VNYXBQYXRoKSB7CiAgICAgICAgbGV0IHNvdXJjZUZpbGUgPSBhU291cmNlRmlsZTsKICAgICAgICBpZiAoYVNvdXJjZUZpbGUgPT0gbnVsbCkgewogICAgICAgICAgaWYgKGFTb3VyY2VNYXBDb25zdW1lci5maWxlID09IG51bGwpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKAogICAgICAgICAgICAgIGBTb3VyY2VNYXBHZW5lcmF0b3IucHJvdG90eXBlLmFwcGx5U291cmNlTWFwIHJlcXVpcmVzIGVpdGhlciBhbiBleHBsaWNpdCBzb3VyY2UgZmlsZSwgb3IgdGhlIHNvdXJjZSBtYXAncyAiZmlsZSIgcHJvcGVydHkuIEJvdGggd2VyZSBvbWl0dGVkLmAKICAgICAgICAgICAgKTsKICAgICAgICAgIH0KICAgICAgICAgIHNvdXJjZUZpbGUgPSBhU291cmNlTWFwQ29uc3VtZXIuZmlsZTsKICAgICAgICB9CiAgICAgICAgY29uc3Qgc291cmNlUm9vdCA9IHRoaXMuX3NvdXJjZVJvb3Q7CiAgICAgICAgaWYgKHNvdXJjZVJvb3QgIT0gbnVsbCkgewogICAgICAgICAgc291cmNlRmlsZSA9IHV0aWwucmVsYXRpdmUoc291cmNlUm9vdCwgc291cmNlRmlsZSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IG5ld1NvdXJjZXMgPSB0aGlzLl9tYXBwaW5ncy50b0FycmF5KCkubGVuZ3RoID4gMCA/IG5ldyBBcnJheVNldCgpIDogdGhpcy5fc291cmNlczsKICAgICAgICBjb25zdCBuZXdOYW1lcyA9IG5ldyBBcnJheVNldCgpOwogICAgICAgIHRoaXMuX21hcHBpbmdzLnVuc29ydGVkRm9yRWFjaChmdW5jdGlvbihtYXBwaW5nKSB7CiAgICAgICAgICBpZiAobWFwcGluZy5zb3VyY2UgPT09IHNvdXJjZUZpbGUgJiYgbWFwcGluZy5vcmlnaW5hbExpbmUgIT0gbnVsbCkgewogICAgICAgICAgICBjb25zdCBvcmlnaW5hbCA9IGFTb3VyY2VNYXBDb25zdW1lci5vcmlnaW5hbFBvc2l0aW9uRm9yKHsKICAgICAgICAgICAgICBsaW5lOiBtYXBwaW5nLm9yaWdpbmFsTGluZSwKICAgICAgICAgICAgICBjb2x1bW46IG1hcHBpbmcub3JpZ2luYWxDb2x1bW4KICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIGlmIChvcmlnaW5hbC5zb3VyY2UgIT0gbnVsbCkgewogICAgICAgICAgICAgIG1hcHBpbmcuc291cmNlID0gb3JpZ2luYWwuc291cmNlOwogICAgICAgICAgICAgIGlmIChhU291cmNlTWFwUGF0aCAhPSBudWxsKSB7CiAgICAgICAgICAgICAgICBtYXBwaW5nLnNvdXJjZSA9IHV0aWwuam9pbihhU291cmNlTWFwUGF0aCwgbWFwcGluZy5zb3VyY2UpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAoc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICAgICAgICBtYXBwaW5nLnNvdXJjZSA9IHV0aWwucmVsYXRpdmUoc291cmNlUm9vdCwgbWFwcGluZy5zb3VyY2UpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBtYXBwaW5nLm9yaWdpbmFsTGluZSA9IG9yaWdpbmFsLmxpbmU7CiAgICAgICAgICAgICAgbWFwcGluZy5vcmlnaW5hbENvbHVtbiA9IG9yaWdpbmFsLmNvbHVtbjsKICAgICAgICAgICAgICBpZiAob3JpZ2luYWwubmFtZSAhPSBudWxsKSB7CiAgICAgICAgICAgICAgICBtYXBwaW5nLm5hbWUgPSBvcmlnaW5hbC5uYW1lOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgY29uc3Qgc291cmNlID0gbWFwcGluZy5zb3VyY2U7CiAgICAgICAgICBpZiAoc291cmNlICE9IG51bGwgJiYgIW5ld1NvdXJjZXMuaGFzKHNvdXJjZSkpIHsKICAgICAgICAgICAgbmV3U291cmNlcy5hZGQoc291cmNlKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IG5hbWUgPSBtYXBwaW5nLm5hbWU7CiAgICAgICAgICBpZiAobmFtZSAhPSBudWxsICYmICFuZXdOYW1lcy5oYXMobmFtZSkpIHsKICAgICAgICAgICAgbmV3TmFtZXMuYWRkKG5hbWUpOwogICAgICAgICAgfQogICAgICAgIH0sIHRoaXMpOwogICAgICAgIHRoaXMuX3NvdXJjZXMgPSBuZXdTb3VyY2VzOwogICAgICAgIHRoaXMuX25hbWVzID0gbmV3TmFtZXM7CiAgICAgICAgYVNvdXJjZU1hcENvbnN1bWVyLnNvdXJjZXMuZm9yRWFjaChmdW5jdGlvbihzcmNGaWxlKSB7CiAgICAgICAgICBjb25zdCBjb250ZW50ID0gYVNvdXJjZU1hcENvbnN1bWVyLnNvdXJjZUNvbnRlbnRGb3Ioc3JjRmlsZSk7CiAgICAgICAgICBpZiAoY29udGVudCAhPSBudWxsKSB7CiAgICAgICAgICAgIGlmIChhU291cmNlTWFwUGF0aCAhPSBudWxsKSB7CiAgICAgICAgICAgICAgc3JjRmlsZSA9IHV0aWwuam9pbihhU291cmNlTWFwUGF0aCwgc3JjRmlsZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHNvdXJjZVJvb3QgIT0gbnVsbCkgewogICAgICAgICAgICAgIHNyY0ZpbGUgPSB1dGlsLnJlbGF0aXZlKHNvdXJjZVJvb3QsIHNyY0ZpbGUpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHRoaXMuc2V0U291cmNlQ29udGVudChzcmNGaWxlLCBjb250ZW50KTsKICAgICAgICAgIH0KICAgICAgICB9LCB0aGlzKTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQSBtYXBwaW5nIGNhbiBoYXZlIG9uZSBvZiB0aGUgdGhyZWUgbGV2ZWxzIG9mIGRhdGE6CiAgICAgICAqCiAgICAgICAqICAgMS4gSnVzdCB0aGUgZ2VuZXJhdGVkIHBvc2l0aW9uLgogICAgICAgKiAgIDIuIFRoZSBHZW5lcmF0ZWQgcG9zaXRpb24sIG9yaWdpbmFsIHBvc2l0aW9uLCBhbmQgb3JpZ2luYWwgc291cmNlLgogICAgICAgKiAgIDMuIEdlbmVyYXRlZCBhbmQgb3JpZ2luYWwgcG9zaXRpb24sIG9yaWdpbmFsIHNvdXJjZSwgYXMgd2VsbCBhcyBhIG5hbWUKICAgICAgICogICAgICB0b2tlbi4KICAgICAgICoKICAgICAgICogVG8gbWFpbnRhaW4gY29uc2lzdGVuY3ksIHdlIHZhbGlkYXRlIHRoYXQgYW55IG5ldyBtYXBwaW5nIGJlaW5nIGFkZGVkIGZhbGxzCiAgICAgICAqIGluIHRvIG9uZSBvZiB0aGVzZSBjYXRlZ29yaWVzLgogICAgICAgKi8KICAgICAgX3ZhbGlkYXRlTWFwcGluZyhhR2VuZXJhdGVkLCBhT3JpZ2luYWwsIGFTb3VyY2UsIGFOYW1lKSB7CiAgICAgICAgaWYgKGFPcmlnaW5hbCAmJiB0eXBlb2YgYU9yaWdpbmFsLmxpbmUgIT09ICJudW1iZXIiICYmIHR5cGVvZiBhT3JpZ2luYWwuY29sdW1uICE9PSAibnVtYmVyIikgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKAogICAgICAgICAgICAib3JpZ2luYWwubGluZSBhbmQgb3JpZ2luYWwuY29sdW1uIGFyZSBub3QgbnVtYmVycyAtLSB5b3UgcHJvYmFibHkgbWVhbnQgdG8gb21pdCB0aGUgb3JpZ2luYWwgbWFwcGluZyBlbnRpcmVseSBhbmQgb25seSBtYXAgdGhlIGdlbmVyYXRlZCBwb3NpdGlvbi4gSWYgc28sIHBhc3MgbnVsbCBmb3IgdGhlIG9yaWdpbmFsIG1hcHBpbmcgaW5zdGVhZCBvZiBhbiBvYmplY3Qgd2l0aCBlbXB0eSBvciBudWxsIHZhbHVlcy4iCiAgICAgICAgICApOwogICAgICAgIH0KICAgICAgICBpZiAoYUdlbmVyYXRlZCAmJiAibGluZSIgaW4gYUdlbmVyYXRlZCAmJiAiY29sdW1uIiBpbiBhR2VuZXJhdGVkICYmIGFHZW5lcmF0ZWQubGluZSA+IDAgJiYgYUdlbmVyYXRlZC5jb2x1bW4gPj0gMCAmJiAhYU9yaWdpbmFsICYmICFhU291cmNlICYmICFhTmFtZSkgewogICAgICAgIH0gZWxzZSBpZiAoYUdlbmVyYXRlZCAmJiAibGluZSIgaW4gYUdlbmVyYXRlZCAmJiAiY29sdW1uIiBpbiBhR2VuZXJhdGVkICYmIGFPcmlnaW5hbCAmJiAibGluZSIgaW4gYU9yaWdpbmFsICYmICJjb2x1bW4iIGluIGFPcmlnaW5hbCAmJiBhR2VuZXJhdGVkLmxpbmUgPiAwICYmIGFHZW5lcmF0ZWQuY29sdW1uID49IDAgJiYgYU9yaWdpbmFsLmxpbmUgPiAwICYmIGFPcmlnaW5hbC5jb2x1bW4gPj0gMCAmJiBhU291cmNlKSB7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiSW52YWxpZCBtYXBwaW5nOiAiICsgSlNPTi5zdHJpbmdpZnkoewogICAgICAgICAgICBnZW5lcmF0ZWQ6IGFHZW5lcmF0ZWQsCiAgICAgICAgICAgIHNvdXJjZTogYVNvdXJjZSwKICAgICAgICAgICAgb3JpZ2luYWw6IGFPcmlnaW5hbCwKICAgICAgICAgICAgbmFtZTogYU5hbWUKICAgICAgICAgIH0pKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFNlcmlhbGl6ZSB0aGUgYWNjdW11bGF0ZWQgbWFwcGluZ3MgaW4gdG8gdGhlIHN0cmVhbSBvZiBiYXNlIDY0IFZMUXMKICAgICAgICogc3BlY2lmaWVkIGJ5IHRoZSBzb3VyY2UgbWFwIGZvcm1hdC4KICAgICAgICovCiAgICAgIF9zZXJpYWxpemVNYXBwaW5ncygpIHsKICAgICAgICBsZXQgcHJldmlvdXNHZW5lcmF0ZWRDb2x1bW4gPSAwOwogICAgICAgIGxldCBwcmV2aW91c0dlbmVyYXRlZExpbmUgPSAxOwogICAgICAgIGxldCBwcmV2aW91c09yaWdpbmFsQ29sdW1uID0gMDsKICAgICAgICBsZXQgcHJldmlvdXNPcmlnaW5hbExpbmUgPSAwOwogICAgICAgIGxldCBwcmV2aW91c05hbWUgPSAwOwogICAgICAgIGxldCBwcmV2aW91c1NvdXJjZSA9IDA7CiAgICAgICAgbGV0IHJlc3VsdCA9ICIiOwogICAgICAgIGxldCBuZXh0OwogICAgICAgIGxldCBtYXBwaW5nOwogICAgICAgIGxldCBuYW1lSWR4OwogICAgICAgIGxldCBzb3VyY2VJZHg7CiAgICAgICAgY29uc3QgbWFwcGluZ3MgPSB0aGlzLl9tYXBwaW5ncy50b0FycmF5KCk7CiAgICAgICAgZm9yIChsZXQgaSA9IDAsIGxlbiA9IG1hcHBpbmdzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7CiAgICAgICAgICBtYXBwaW5nID0gbWFwcGluZ3NbaV07CiAgICAgICAgICBuZXh0ID0gIiI7CiAgICAgICAgICBpZiAobWFwcGluZy5nZW5lcmF0ZWRMaW5lICE9PSBwcmV2aW91c0dlbmVyYXRlZExpbmUpIHsKICAgICAgICAgICAgcHJldmlvdXNHZW5lcmF0ZWRDb2x1bW4gPSAwOwogICAgICAgICAgICB3aGlsZSAobWFwcGluZy5nZW5lcmF0ZWRMaW5lICE9PSBwcmV2aW91c0dlbmVyYXRlZExpbmUpIHsKICAgICAgICAgICAgICBuZXh0ICs9ICI7IjsKICAgICAgICAgICAgICBwcmV2aW91c0dlbmVyYXRlZExpbmUrKzsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIGlmIChpID4gMCkgewogICAgICAgICAgICBpZiAoIXV0aWwuY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zSW5mbGF0ZWQobWFwcGluZywgbWFwcGluZ3NbaSAtIDFdKSkgewogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIG5leHQgKz0gIiwiOwogICAgICAgICAgfQogICAgICAgICAgbmV4dCArPSBiYXNlNjRWTFEuZW5jb2RlKG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uIC0gcHJldmlvdXNHZW5lcmF0ZWRDb2x1bW4pOwogICAgICAgICAgcHJldmlvdXNHZW5lcmF0ZWRDb2x1bW4gPSBtYXBwaW5nLmdlbmVyYXRlZENvbHVtbjsKICAgICAgICAgIGlmIChtYXBwaW5nLnNvdXJjZSAhPSBudWxsKSB7CiAgICAgICAgICAgIHNvdXJjZUlkeCA9IHRoaXMuX3NvdXJjZXMuaW5kZXhPZihtYXBwaW5nLnNvdXJjZSk7CiAgICAgICAgICAgIG5leHQgKz0gYmFzZTY0VkxRLmVuY29kZShzb3VyY2VJZHggLSBwcmV2aW91c1NvdXJjZSk7CiAgICAgICAgICAgIHByZXZpb3VzU291cmNlID0gc291cmNlSWR4OwogICAgICAgICAgICBuZXh0ICs9IGJhc2U2NFZMUS5lbmNvZGUobWFwcGluZy5vcmlnaW5hbExpbmUgLSAxIC0gcHJldmlvdXNPcmlnaW5hbExpbmUpOwogICAgICAgICAgICBwcmV2aW91c09yaWdpbmFsTGluZSA9IG1hcHBpbmcub3JpZ2luYWxMaW5lIC0gMTsKICAgICAgICAgICAgbmV4dCArPSBiYXNlNjRWTFEuZW5jb2RlKG1hcHBpbmcub3JpZ2luYWxDb2x1bW4gLSBwcmV2aW91c09yaWdpbmFsQ29sdW1uKTsKICAgICAgICAgICAgcHJldmlvdXNPcmlnaW5hbENvbHVtbiA9IG1hcHBpbmcub3JpZ2luYWxDb2x1bW47CiAgICAgICAgICAgIGlmIChtYXBwaW5nLm5hbWUgIT0gbnVsbCkgewogICAgICAgICAgICAgIG5hbWVJZHggPSB0aGlzLl9uYW1lcy5pbmRleE9mKG1hcHBpbmcubmFtZSk7CiAgICAgICAgICAgICAgbmV4dCArPSBiYXNlNjRWTFEuZW5jb2RlKG5hbWVJZHggLSBwcmV2aW91c05hbWUpOwogICAgICAgICAgICAgIHByZXZpb3VzTmFtZSA9IG5hbWVJZHg7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHJlc3VsdCArPSBuZXh0OwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9CiAgICAgIF9nZW5lcmF0ZVNvdXJjZXNDb250ZW50KGFTb3VyY2VzLCBhU291cmNlUm9vdCkgewogICAgICAgIHJldHVybiBhU291cmNlcy5tYXAoZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgICBpZiAoIXRoaXMuX3NvdXJjZXNDb250ZW50cykgewogICAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChhU291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICAgIHNvdXJjZSA9IHV0aWwucmVsYXRpdmUoYVNvdXJjZVJvb3QsIHNvdXJjZSk7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBrZXkgPSB1dGlsLnRvU2V0U3RyaW5nKHNvdXJjZSk7CiAgICAgICAgICByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHRoaXMuX3NvdXJjZXNDb250ZW50cywga2V5KSA/IHRoaXMuX3NvdXJjZXNDb250ZW50c1trZXldIDogbnVsbDsKICAgICAgICB9LCB0aGlzKTsKICAgICAgfQogICAgICAvKioKICAgICAgICogRXh0ZXJuYWxpemUgdGhlIHNvdXJjZSBtYXAuCiAgICAgICAqLwogICAgICB0b0pTT04oKSB7CiAgICAgICAgY29uc3QgbWFwID0gewogICAgICAgICAgdmVyc2lvbjogdGhpcy5fdmVyc2lvbiwKICAgICAgICAgIHNvdXJjZXM6IHRoaXMuX3NvdXJjZXMudG9BcnJheSgpLAogICAgICAgICAgbmFtZXM6IHRoaXMuX25hbWVzLnRvQXJyYXkoKSwKICAgICAgICAgIG1hcHBpbmdzOiB0aGlzLl9zZXJpYWxpemVNYXBwaW5ncygpCiAgICAgICAgfTsKICAgICAgICBpZiAodGhpcy5fZmlsZSAhPSBudWxsKSB7CiAgICAgICAgICBtYXAuZmlsZSA9IHRoaXMuX2ZpbGU7CiAgICAgICAgfQogICAgICAgIGlmICh0aGlzLl9zb3VyY2VSb290ICE9IG51bGwpIHsKICAgICAgICAgIG1hcC5zb3VyY2VSb290ID0gdGhpcy5fc291cmNlUm9vdDsKICAgICAgICB9CiAgICAgICAgaWYgKHRoaXMuX3NvdXJjZXNDb250ZW50cykgewogICAgICAgICAgbWFwLnNvdXJjZXNDb250ZW50ID0gdGhpcy5fZ2VuZXJhdGVTb3VyY2VzQ29udGVudChtYXAuc291cmNlcywgbWFwLnNvdXJjZVJvb3QpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbWFwOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZW5kZXIgdGhlIHNvdXJjZSBtYXAgYmVpbmcgZ2VuZXJhdGVkIHRvIGEgc3RyaW5nLgogICAgICAgKi8KICAgICAgdG9TdHJpbmcoKSB7CiAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHRoaXMudG9KU09OKCkpOwogICAgICB9CiAgICB9OwogICAgU291cmNlTWFwR2VuZXJhdG9yLnByb3RvdHlwZS5fdmVyc2lvbiA9IDM7CiAgICBleHBvcnRzMi5Tb3VyY2VNYXBHZW5lcmF0b3IgPSBTb3VyY2VNYXBHZW5lcmF0b3I7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtYTBmN2M5Yjc5Ny56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL2JpbmFyeS1zZWFyY2guanMKdmFyIHJlcXVpcmVfYmluYXJ5X3NlYXJjaCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LWEwZjdjOWI3OTcuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9iaW5hcnktc2VhcmNoLmpzIihleHBvcnRzMikgewogICAgZXhwb3J0czIuR1JFQVRFU1RfTE9XRVJfQk9VTkQgPSAxOwogICAgZXhwb3J0czIuTEVBU1RfVVBQRVJfQk9VTkQgPSAyOwogICAgZnVuY3Rpb24gcmVjdXJzaXZlU2VhcmNoKGFMb3csIGFIaWdoLCBhTmVlZGxlLCBhSGF5c3RhY2ssIGFDb21wYXJlLCBhQmlhcykgewogICAgICBjb25zdCBtaWQgPSBNYXRoLmZsb29yKChhSGlnaCAtIGFMb3cpIC8gMikgKyBhTG93OwogICAgICBjb25zdCBjbXAgPSBhQ29tcGFyZShhTmVlZGxlLCBhSGF5c3RhY2tbbWlkXSwgdHJ1ZSk7CiAgICAgIGlmIChjbXAgPT09IDApIHsKICAgICAgICByZXR1cm4gbWlkOwogICAgICB9IGVsc2UgaWYgKGNtcCA+IDApIHsKICAgICAgICBpZiAoYUhpZ2ggLSBtaWQgPiAxKSB7CiAgICAgICAgICByZXR1cm4gcmVjdXJzaXZlU2VhcmNoKG1pZCwgYUhpZ2gsIGFOZWVkbGUsIGFIYXlzdGFjaywgYUNvbXBhcmUsIGFCaWFzKTsKICAgICAgICB9CiAgICAgICAgaWYgKGFCaWFzID09IGV4cG9ydHMyLkxFQVNUX1VQUEVSX0JPVU5EKSB7CiAgICAgICAgICByZXR1cm4gYUhpZ2ggPCBhSGF5c3RhY2subGVuZ3RoID8gYUhpZ2ggOiAtMTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG1pZDsKICAgICAgfQogICAgICBpZiAobWlkIC0gYUxvdyA+IDEpIHsKICAgICAgICByZXR1cm4gcmVjdXJzaXZlU2VhcmNoKGFMb3csIG1pZCwgYU5lZWRsZSwgYUhheXN0YWNrLCBhQ29tcGFyZSwgYUJpYXMpOwogICAgICB9CiAgICAgIGlmIChhQmlhcyA9PSBleHBvcnRzMi5MRUFTVF9VUFBFUl9CT1VORCkgewogICAgICAgIHJldHVybiBtaWQ7CiAgICAgIH0KICAgICAgcmV0dXJuIGFMb3cgPCAwID8gLTEgOiBhTG93OwogICAgfQogICAgZXhwb3J0czIuc2VhcmNoID0gZnVuY3Rpb24gc2VhcmNoKGFOZWVkbGUsIGFIYXlzdGFjaywgYUNvbXBhcmUsIGFCaWFzKSB7CiAgICAgIGlmIChhSGF5c3RhY2subGVuZ3RoID09PSAwKSB7CiAgICAgICAgcmV0dXJuIC0xOwogICAgICB9CiAgICAgIGxldCBpbmRleCA9IHJlY3Vyc2l2ZVNlYXJjaCgKICAgICAgICAtMSwKICAgICAgICBhSGF5c3RhY2subGVuZ3RoLAogICAgICAgIGFOZWVkbGUsCiAgICAgICAgYUhheXN0YWNrLAogICAgICAgIGFDb21wYXJlLAogICAgICAgIGFCaWFzIHx8IGV4cG9ydHMyLkdSRUFURVNUX0xPV0VSX0JPVU5ECiAgICAgICk7CiAgICAgIGlmIChpbmRleCA8IDApIHsKICAgICAgICByZXR1cm4gLTE7CiAgICAgIH0KICAgICAgd2hpbGUgKGluZGV4IC0gMSA+PSAwKSB7CiAgICAgICAgaWYgKGFDb21wYXJlKGFIYXlzdGFja1tpbmRleF0sIGFIYXlzdGFja1tpbmRleCAtIDFdLCB0cnVlKSAhPT0gMCkgewogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIC0taW5kZXg7CiAgICAgIH0KICAgICAgcmV0dXJuIGluZGV4OwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi1hMGY3YzliNzk3LnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvcmVhZC13YXNtLmpzCnZhciByZXF1aXJlX3JlYWRfd2FzbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LWEwZjdjOWI3OTcuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9yZWFkLXdhc20uanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICB2YXIgaXNCcm93c2VyRW52aXJvbm1lbnQgPSBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHR5cGVvZiB3aW5kb3cgIT09ICJ1bmRlZmluZWQiICYmIHRoaXMgPT09IHdpbmRvdzsKICAgIH0uY2FsbCgpOwogICAgaWYgKGlzQnJvd3NlckVudmlyb25tZW50KSB7CiAgICAgIGxldCBtYXBwaW5nc1dhc20gPSBudWxsOwogICAgICBtb2R1bGUyLmV4cG9ydHMgPSBmdW5jdGlvbiByZWFkV2FzbSgpIHsKICAgICAgICBpZiAodHlwZW9mIG1hcHBpbmdzV2FzbSA9PT0gInN0cmluZyIpIHsKICAgICAgICAgIHJldHVybiBmZXRjaChtYXBwaW5nc1dhc20pLnRoZW4oKHJlc3BvbnNlKSA9PiByZXNwb25zZS5hcnJheUJ1ZmZlcigpKTsKICAgICAgICB9CiAgICAgICAgaWYgKG1hcHBpbmdzV2FzbSBpbnN0YW5jZW9mIEFycmF5QnVmZmVyKSB7CiAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG1hcHBpbmdzV2FzbSk7CiAgICAgICAgfQogICAgICAgIHRocm93IG5ldyBFcnJvcigiWW91IG11c3QgcHJvdmlkZSB0aGUgc3RyaW5nIFVSTCBvciBBcnJheUJ1ZmZlciBjb250ZW50cyBvZiBsaWIvbWFwcGluZ3Mud2FzbSBieSBjYWxsaW5nIFNvdXJjZU1hcENvbnN1bWVyLmluaXRpYWxpemUoeyAnbGliL21hcHBpbmdzLndhc20nOiAuLi4gfSkgYmVmb3JlIHVzaW5nIFNvdXJjZU1hcENvbnN1bWVyIik7CiAgICAgIH07CiAgICAgIG1vZHVsZTIuZXhwb3J0cy5pbml0aWFsaXplID0gKGlucHV0KSA9PiBtYXBwaW5nc1dhc20gPSBpbnB1dDsKICAgIH0gZWxzZSB7CiAgICAgIGNvbnN0IGZzID0gcmVxdWlyZSgiZnMiKTsKICAgICAgY29uc3QgcGF0aCA9IHJlcXVpcmUoInBhdGgiKTsKICAgICAgbW9kdWxlMi5leHBvcnRzID0gZnVuY3Rpb24gcmVhZFdhc20oKSB7CiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHsKICAgICAgICAgIGNvbnN0IHdhc21QYXRoID0gcGF0aC5qb2luKF9fZGlybmFtZSwgIm1hcHBpbmdzLndhc20iKTsKICAgICAgICAgIGZzLnJlYWRGaWxlKHdhc21QYXRoLCBudWxsLCAoZXJyb3IsIGRhdGEpID0+IHsKICAgICAgICAgICAgaWYgKGVycm9yKSB7CiAgICAgICAgICAgICAgcmVqZWN0KGVycm9yKTsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmVzb2x2ZShkYXRhLmJ1ZmZlcik7CiAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgfTsKICAgICAgbW9kdWxlMi5leHBvcnRzLmluaXRpYWxpemUgPSAoXykgPT4gewogICAgICAgIGNvbnNvbGUuZGVidWcoIlNvdXJjZU1hcENvbnN1bWVyLmluaXRpYWxpemUgaXMgYSBuby1vcCB3aGVuIHJ1bm5pbmcgaW4gbm9kZS5qcyIpOwogICAgICB9OwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LWEwZjdjOWI3OTcuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi93YXNtLmpzCnZhciByZXF1aXJlX3dhc20gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi1hMGY3YzliNzk3LnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvd2FzbS5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgIHZhciByZWFkV2FzbSA9IHJlcXVpcmVfcmVhZF93YXNtKCk7CiAgICBmdW5jdGlvbiBNYXBwaW5nKCkgewogICAgICB0aGlzLmdlbmVyYXRlZExpbmUgPSAwOwogICAgICB0aGlzLmdlbmVyYXRlZENvbHVtbiA9IDA7CiAgICAgIHRoaXMubGFzdEdlbmVyYXRlZENvbHVtbiA9IG51bGw7CiAgICAgIHRoaXMuc291cmNlID0gbnVsbDsKICAgICAgdGhpcy5vcmlnaW5hbExpbmUgPSBudWxsOwogICAgICB0aGlzLm9yaWdpbmFsQ29sdW1uID0gbnVsbDsKICAgICAgdGhpcy5uYW1lID0gbnVsbDsKICAgIH0KICAgIHZhciBjYWNoZWRXYXNtID0gbnVsbDsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IGZ1bmN0aW9uIHdhc20oKSB7CiAgICAgIGlmIChjYWNoZWRXYXNtKSB7CiAgICAgICAgcmV0dXJuIGNhY2hlZFdhc207CiAgICAgIH0KICAgICAgY29uc3QgY2FsbGJhY2tTdGFjayA9IFtdOwogICAgICBjYWNoZWRXYXNtID0gcmVhZFdhc20oKS50aGVuKChidWZmZXIpID0+IHsKICAgICAgICByZXR1cm4gV2ViQXNzZW1ibHkuaW5zdGFudGlhdGUoYnVmZmVyLCB7CiAgICAgICAgICBlbnY6IHsKICAgICAgICAgICAgbWFwcGluZ19jYWxsYmFjayhnZW5lcmF0ZWRMaW5lLCBnZW5lcmF0ZWRDb2x1bW4sIGhhc0xhc3RHZW5lcmF0ZWRDb2x1bW4sIGxhc3RHZW5lcmF0ZWRDb2x1bW4sIGhhc09yaWdpbmFsLCBzb3VyY2UsIG9yaWdpbmFsTGluZSwgb3JpZ2luYWxDb2x1bW4sIGhhc05hbWUsIG5hbWUpIHsKICAgICAgICAgICAgICBjb25zdCBtYXBwaW5nID0gbmV3IE1hcHBpbmcoKTsKICAgICAgICAgICAgICBtYXBwaW5nLmdlbmVyYXRlZExpbmUgPSBnZW5lcmF0ZWRMaW5lICsgMTsKICAgICAgICAgICAgICBtYXBwaW5nLmdlbmVyYXRlZENvbHVtbiA9IGdlbmVyYXRlZENvbHVtbjsKICAgICAgICAgICAgICBpZiAoaGFzTGFzdEdlbmVyYXRlZENvbHVtbikgewogICAgICAgICAgICAgICAgbWFwcGluZy5sYXN0R2VuZXJhdGVkQ29sdW1uID0gbGFzdEdlbmVyYXRlZENvbHVtbiAtIDE7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChoYXNPcmlnaW5hbCkgewogICAgICAgICAgICAgICAgbWFwcGluZy5zb3VyY2UgPSBzb3VyY2U7CiAgICAgICAgICAgICAgICBtYXBwaW5nLm9yaWdpbmFsTGluZSA9IG9yaWdpbmFsTGluZSArIDE7CiAgICAgICAgICAgICAgICBtYXBwaW5nLm9yaWdpbmFsQ29sdW1uID0gb3JpZ2luYWxDb2x1bW47CiAgICAgICAgICAgICAgICBpZiAoaGFzTmFtZSkgewogICAgICAgICAgICAgICAgICBtYXBwaW5nLm5hbWUgPSBuYW1lOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBjYWxsYmFja1N0YWNrW2NhbGxiYWNrU3RhY2subGVuZ3RoIC0gMV0obWFwcGluZyk7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHN0YXJ0X2FsbF9nZW5lcmF0ZWRfbG9jYXRpb25zX2ZvcigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWUoImFsbF9nZW5lcmF0ZWRfbG9jYXRpb25zX2ZvciIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfYWxsX2dlbmVyYXRlZF9sb2NhdGlvbnNfZm9yKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZUVuZCgiYWxsX2dlbmVyYXRlZF9sb2NhdGlvbnNfZm9yIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHN0YXJ0X2NvbXB1dGVfY29sdW1uX3NwYW5zKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZSgiY29tcHV0ZV9jb2x1bW5fc3BhbnMiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgZW5kX2NvbXB1dGVfY29sdW1uX3NwYW5zKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZUVuZCgiY29tcHV0ZV9jb2x1bW5fc3BhbnMiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgc3RhcnRfZ2VuZXJhdGVkX2xvY2F0aW9uX2ZvcigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWUoImdlbmVyYXRlZF9sb2NhdGlvbl9mb3IiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgZW5kX2dlbmVyYXRlZF9sb2NhdGlvbl9mb3IoKSB7CiAgICAgICAgICAgICAgY29uc29sZS50aW1lRW5kKCJnZW5lcmF0ZWRfbG9jYXRpb25fZm9yIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHN0YXJ0X29yaWdpbmFsX2xvY2F0aW9uX2ZvcigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWUoIm9yaWdpbmFsX2xvY2F0aW9uX2ZvciIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfb3JpZ2luYWxfbG9jYXRpb25fZm9yKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZUVuZCgib3JpZ2luYWxfbG9jYXRpb25fZm9yIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHN0YXJ0X3BhcnNlX21hcHBpbmdzKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZSgicGFyc2VfbWFwcGluZ3MiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgZW5kX3BhcnNlX21hcHBpbmdzKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZUVuZCgicGFyc2VfbWFwcGluZ3MiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgc3RhcnRfc29ydF9ieV9nZW5lcmF0ZWRfbG9jYXRpb24oKSB7CiAgICAgICAgICAgICAgY29uc29sZS50aW1lKCJzb3J0X2J5X2dlbmVyYXRlZF9sb2NhdGlvbiIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfc29ydF9ieV9nZW5lcmF0ZWRfbG9jYXRpb24oKSB7CiAgICAgICAgICAgICAgY29uc29sZS50aW1lRW5kKCJzb3J0X2J5X2dlbmVyYXRlZF9sb2NhdGlvbiIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBzdGFydF9zb3J0X2J5X29yaWdpbmFsX2xvY2F0aW9uKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZSgic29ydF9ieV9vcmlnaW5hbF9sb2NhdGlvbiIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfc29ydF9ieV9vcmlnaW5hbF9sb2NhdGlvbigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWVFbmQoInNvcnRfYnlfb3JpZ2luYWxfbG9jYXRpb24iKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9KS50aGVuKChXYXNtKSA9PiB7CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGV4cG9ydHM6IFdhc20uaW5zdGFuY2UuZXhwb3J0cywKICAgICAgICAgIHdpdGhNYXBwaW5nQ2FsbGJhY2s6IChtYXBwaW5nQ2FsbGJhY2ssIGYpID0+IHsKICAgICAgICAgICAgY2FsbGJhY2tTdGFjay5wdXNoKG1hcHBpbmdDYWxsYmFjayk7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgZigpOwogICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgIGNhbGxiYWNrU3RhY2sucG9wKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9OwogICAgICB9KS50aGVuKG51bGwsIChlKSA9PiB7CiAgICAgICAgY2FjaGVkV2FzbSA9IG51bGw7CiAgICAgICAgdGhyb3cgZTsKICAgICAgfSk7CiAgICAgIHJldHVybiBjYWNoZWRXYXNtOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi1hMGY3YzliNzk3LnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvc291cmNlLW1hcC1jb25zdW1lci5qcwp2YXIgcmVxdWlyZV9zb3VyY2VfbWFwX2NvbnN1bWVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtYTBmN2M5Yjc5Ny56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL3NvdXJjZS1tYXAtY29uc3VtZXIuanMiKGV4cG9ydHMyKSB7CiAgICB2YXIgdXRpbCA9IHJlcXVpcmVfdXRpbDIoKTsKICAgIHZhciBiaW5hcnlTZWFyY2ggPSByZXF1aXJlX2JpbmFyeV9zZWFyY2goKTsKICAgIHZhciBBcnJheVNldCA9IHJlcXVpcmVfYXJyYXlfc2V0KCkuQXJyYXlTZXQ7CiAgICB2YXIgYmFzZTY0VkxRID0gcmVxdWlyZV9iYXNlNjRfdmxxKCk7CiAgICB2YXIgcmVhZFdhc20gPSByZXF1aXJlX3JlYWRfd2FzbSgpOwogICAgdmFyIHdhc20gPSByZXF1aXJlX3dhc20oKTsKICAgIHZhciBJTlRFUk5BTCA9IFN5bWJvbCgic21jSW50ZXJuYWwiKTsKICAgIHZhciBTb3VyY2VNYXBDb25zdW1lciA9IGNsYXNzIF9Tb3VyY2VNYXBDb25zdW1lciB7CiAgICAgIGNvbnN0cnVjdG9yKGFTb3VyY2VNYXAsIGFTb3VyY2VNYXBVUkwpIHsKICAgICAgICBpZiAoYVNvdXJjZU1hcCA9PSBJTlRFUk5BTCkgewogICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh0aGlzKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIF9mYWN0b3J5KGFTb3VyY2VNYXAsIGFTb3VyY2VNYXBVUkwpOwogICAgICB9CiAgICAgIHN0YXRpYyBpbml0aWFsaXplKG9wdHMpIHsKICAgICAgICByZWFkV2FzbS5pbml0aWFsaXplKG9wdHNbImxpYi9tYXBwaW5ncy53YXNtIl0pOwogICAgICB9CiAgICAgIHN0YXRpYyBmcm9tU291cmNlTWFwKGFTb3VyY2VNYXAsIGFTb3VyY2VNYXBVUkwpIHsKICAgICAgICByZXR1cm4gX2ZhY3RvcnlCU00oYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIENvbnN0cnVjdCBhIG5ldyBgU291cmNlTWFwQ29uc3VtZXJgIGZyb20gYHJhd1NvdXJjZU1hcGAgYW5kIGBzb3VyY2VNYXBVcmxgCiAgICAgICAqIChzZWUgdGhlIGBTb3VyY2VNYXBDb25zdW1lcmAgY29uc3RydWN0b3IgZm9yIGRldGFpbHMuIFRoZW4sIGludm9rZSB0aGUgYGFzeW5jCiAgICAgICAqIGZ1bmN0aW9uIGYoU291cmNlTWFwQ29uc3VtZXIpIC0+IFRgIHdpdGggdGhlIG5ld2x5IGNvbnN0cnVjdGVkIGNvbnN1bWVyLCB3YWl0CiAgICAgICAqIGZvciBgZmAgdG8gY29tcGxldGUsIGNhbGwgYGRlc3Ryb3lgIG9uIHRoZSBjb25zdW1lciwgYW5kIHJldHVybiBgZmAncyByZXR1cm4KICAgICAgICogdmFsdWUuCiAgICAgICAqCiAgICAgICAqIFlvdSBtdXN0IG5vdCB1c2UgdGhlIGNvbnN1bWVyIGFmdGVyIGBmYCBjb21wbGV0ZXMhCiAgICAgICAqCiAgICAgICAqIEJ5IHVzaW5nIGB3aXRoYCwgeW91IGRvIG5vdCBoYXZlIHRvIHJlbWVtYmVyIHRvIG1hbnVhbGx5IGNhbGwgYGRlc3Ryb3lgIG9uCiAgICAgICAqIHRoZSBjb25zdW1lciwgc2luY2UgaXQgd2lsbCBiZSBjYWxsZWQgYXV0b21hdGljYWxseSBvbmNlIGBmYCBjb21wbGV0ZXMuCiAgICAgICAqCiAgICAgICAqIGBgYGpzCiAgICAgICAqIGNvbnN0IHhTcXVhcmVkID0gYXdhaXQgU291cmNlTWFwQ29uc3VtZXIud2l0aCgKICAgICAgICogICBteVJhd1NvdXJjZU1hcCwKICAgICAgICogICBudWxsLAogICAgICAgKiAgIGFzeW5jIGZ1bmN0aW9uIChjb25zdW1lcikgewogICAgICAgKiAgICAgLy8gVXNlIGBjb25zdW1lcmAgaW5zaWRlIGhlcmUgYW5kIGRvbid0IHdvcnJ5IGFib3V0IHJlbWVtYmVyaW5nCiAgICAgICAqICAgICAvLyB0byBjYWxsIGBkZXN0cm95YC4KICAgICAgICoKICAgICAgICogICAgIGNvbnN0IHggPSBhd2FpdCB3aGF0ZXZlcihjb25zdW1lcik7CiAgICAgICAqICAgICByZXR1cm4geCAqIHg7CiAgICAgICAqICAgfQogICAgICAgKiApOwogICAgICAgKgogICAgICAgKiAvLyBZb3UgbWF5IG5vdCB1c2UgdGhhdCBgY29uc3VtZXJgIGFueW1vcmUgb3V0IGhlcmU7IGl0IGhhcwogICAgICAgKiAvLyBiZWVuIGRlc3Ryb3llZC4gQnV0IHlvdSBjYW4gdXNlIGB4U3F1YXJlZGAuCiAgICAgICAqIGNvbnNvbGUubG9nKHhTcXVhcmVkKTsKICAgICAgICogYGBgCiAgICAgICAqLwogICAgICBzdGF0aWMgYXN5bmMgd2l0aChyYXdTb3VyY2VNYXAsIHNvdXJjZU1hcFVybCwgZikgewogICAgICAgIGNvbnN0IGNvbnN1bWVyID0gYXdhaXQgbmV3IF9Tb3VyY2VNYXBDb25zdW1lcihyYXdTb3VyY2VNYXAsIHNvdXJjZU1hcFVybCk7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIHJldHVybiBhd2FpdCBmKGNvbnN1bWVyKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgY29uc3VtZXIuZGVzdHJveSgpOwogICAgICAgIH0KICAgICAgfQogICAgICAvKioKICAgICAgICogUGFyc2UgdGhlIG1hcHBpbmdzIGluIGEgc3RyaW5nIGluIHRvIGEgZGF0YSBzdHJ1Y3R1cmUgd2hpY2ggd2UgY2FuIGVhc2lseQogICAgICAgKiBxdWVyeSAodGhlIG9yZGVyZWQgYXJyYXlzIGluIHRoZSBgdGhpcy5fX2dlbmVyYXRlZE1hcHBpbmdzYCBhbmQKICAgICAgICogYHRoaXMuX19vcmlnaW5hbE1hcHBpbmdzYCBwcm9wZXJ0aWVzKS4KICAgICAgICovCiAgICAgIF9wYXJzZU1hcHBpbmdzKGFTdHIsIGFTb3VyY2VSb290KSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJTdWJjbGFzc2VzIG11c3QgaW1wbGVtZW50IF9wYXJzZU1hcHBpbmdzIik7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEl0ZXJhdGUgb3ZlciBlYWNoIG1hcHBpbmcgYmV0d2VlbiBhbiBvcmlnaW5hbCBzb3VyY2UvbGluZS9jb2x1bW4gYW5kIGEKICAgICAgICogZ2VuZXJhdGVkIGxpbmUvY29sdW1uIGluIHRoaXMgc291cmNlIG1hcC4KICAgICAgICoKICAgICAgICogQHBhcmFtIEZ1bmN0aW9uIGFDYWxsYmFjawogICAgICAgKiAgICAgICAgVGhlIGZ1bmN0aW9uIHRoYXQgaXMgY2FsbGVkIHdpdGggZWFjaCBtYXBwaW5nLgogICAgICAgKiBAcGFyYW0gT2JqZWN0IGFDb250ZXh0CiAgICAgICAqICAgICAgICBPcHRpb25hbC4gSWYgc3BlY2lmaWVkLCB0aGlzIG9iamVjdCB3aWxsIGJlIHRoZSB2YWx1ZSBvZiBgdGhpc2AgZXZlcnkKICAgICAgICogICAgICAgIHRpbWUgdGhhdCBgYUNhbGxiYWNrYCBpcyBjYWxsZWQuCiAgICAgICAqIEBwYXJhbSBhT3JkZXIKICAgICAgICogICAgICAgIEVpdGhlciBgU291cmNlTWFwQ29uc3VtZXIuR0VORVJBVEVEX09SREVSYCBvcgogICAgICAgKiAgICAgICAgYFNvdXJjZU1hcENvbnN1bWVyLk9SSUdJTkFMX09SREVSYC4gU3BlY2lmaWVzIHdoZXRoZXIgeW91IHdhbnQgdG8KICAgICAgICogICAgICAgIGl0ZXJhdGUgb3ZlciB0aGUgbWFwcGluZ3Mgc29ydGVkIGJ5IHRoZSBnZW5lcmF0ZWQgZmlsZSdzIGxpbmUvY29sdW1uCiAgICAgICAqICAgICAgICBvcmRlciBvciB0aGUgb3JpZ2luYWwncyBzb3VyY2UvbGluZS9jb2x1bW4gb3JkZXIsIHJlc3BlY3RpdmVseS4gRGVmYXVsdHMgdG8KICAgICAgICogICAgICAgIGBTb3VyY2VNYXBDb25zdW1lci5HRU5FUkFURURfT1JERVJgLgogICAgICAgKi8KICAgICAgZWFjaE1hcHBpbmcoYUNhbGxiYWNrLCBhQ29udGV4dCwgYU9yZGVyKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJTdWJjbGFzc2VzIG11c3QgaW1wbGVtZW50IGVhY2hNYXBwaW5nIik7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybnMgYWxsIGdlbmVyYXRlZCBsaW5lIGFuZCBjb2x1bW4gaW5mb3JtYXRpb24gZm9yIHRoZSBvcmlnaW5hbCBzb3VyY2UsCiAgICAgICAqIGxpbmUsIGFuZCBjb2x1bW4gcHJvdmlkZWQuIElmIG5vIGNvbHVtbiBpcyBwcm92aWRlZCwgcmV0dXJucyBhbGwgbWFwcGluZ3MKICAgICAgICogY29ycmVzcG9uZGluZyB0byBhIGVpdGhlciB0aGUgbGluZSB3ZSBhcmUgc2VhcmNoaW5nIGZvciBvciB0aGUgbmV4dAogICAgICAgKiBjbG9zZXN0IGxpbmUgdGhhdCBoYXMgYW55IG1hcHBpbmdzLiBPdGhlcndpc2UsIHJldHVybnMgYWxsIG1hcHBpbmdzCiAgICAgICAqIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGdpdmVuIGxpbmUgYW5kIGVpdGhlciB0aGUgY29sdW1uIHdlIGFyZSBzZWFyY2hpbmcgZm9yCiAgICAgICAqIG9yIHRoZSBuZXh0IGNsb3Nlc3QgY29sdW1uIHRoYXQgaGFzIGFueSBvZmZzZXRzLgogICAgICAgKgogICAgICAgKiBUaGUgb25seSBhcmd1bWVudCBpcyBhbiBvYmplY3Qgd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBzb3VyY2U6IFRoZSBmaWxlbmFtZSBvZiB0aGUgb3JpZ2luYWwgc291cmNlLgogICAgICAgKiAgIC0gbGluZTogVGhlIGxpbmUgbnVtYmVyIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UuICBUaGUgbGluZSBudW1iZXIgaXMgMS1iYXNlZC4KICAgICAgICogICAtIGNvbHVtbjogT3B0aW9uYWwuIHRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UuCiAgICAgICAqICAgIFRoZSBjb2x1bW4gbnVtYmVyIGlzIDAtYmFzZWQuCiAgICAgICAqCiAgICAgICAqIGFuZCBhbiBhcnJheSBvZiBvYmplY3RzIGlzIHJldHVybmVkLCBlYWNoIHdpdGggdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzOgogICAgICAgKgogICAgICAgKiAgIC0gbGluZTogVGhlIGxpbmUgbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgc291cmNlLCBvciBudWxsLiAgVGhlCiAgICAgICAqICAgIGxpbmUgbnVtYmVyIGlzIDEtYmFzZWQuCiAgICAgICAqICAgLSBjb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgc291cmNlLCBvciBudWxsLgogICAgICAgKiAgICBUaGUgY29sdW1uIG51bWJlciBpcyAwLWJhc2VkLgogICAgICAgKi8KICAgICAgYWxsR2VuZXJhdGVkUG9zaXRpb25zRm9yKGFBcmdzKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJTdWJjbGFzc2VzIG11c3QgaW1wbGVtZW50IGFsbEdlbmVyYXRlZFBvc2l0aW9uc0ZvciIpOwogICAgICB9CiAgICAgIGRlc3Ryb3koKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJTdWJjbGFzc2VzIG11c3QgaW1wbGVtZW50IGRlc3Ryb3kiKTsKICAgICAgfQogICAgfTsKICAgIFNvdXJjZU1hcENvbnN1bWVyLnByb3RvdHlwZS5fdmVyc2lvbiA9IDM7CiAgICBTb3VyY2VNYXBDb25zdW1lci5HRU5FUkFURURfT1JERVIgPSAxOwogICAgU291cmNlTWFwQ29uc3VtZXIuT1JJR0lOQUxfT1JERVIgPSAyOwogICAgU291cmNlTWFwQ29uc3VtZXIuR1JFQVRFU1RfTE9XRVJfQk9VTkQgPSAxOwogICAgU291cmNlTWFwQ29uc3VtZXIuTEVBU1RfVVBQRVJfQk9VTkQgPSAyOwogICAgZXhwb3J0czIuU291cmNlTWFwQ29uc3VtZXIgPSBTb3VyY2VNYXBDb25zdW1lcjsKICAgIHZhciBCYXNpY1NvdXJjZU1hcENvbnN1bWVyID0gY2xhc3MgX0Jhc2ljU291cmNlTWFwQ29uc3VtZXIgZXh0ZW5kcyBTb3VyY2VNYXBDb25zdW1lciB7CiAgICAgIGNvbnN0cnVjdG9yKGFTb3VyY2VNYXAsIGFTb3VyY2VNYXBVUkwpIHsKICAgICAgICByZXR1cm4gc3VwZXIoSU5URVJOQUwpLnRoZW4oKHRoYXQpID0+IHsKICAgICAgICAgIGxldCBzb3VyY2VNYXAgPSBhU291cmNlTWFwOwogICAgICAgICAgaWYgKHR5cGVvZiBhU291cmNlTWFwID09PSAic3RyaW5nIikgewogICAgICAgICAgICBzb3VyY2VNYXAgPSB1dGlsLnBhcnNlU291cmNlTWFwSW5wdXQoYVNvdXJjZU1hcCk7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCB2ZXJzaW9uID0gdXRpbC5nZXRBcmcoc291cmNlTWFwLCAidmVyc2lvbiIpOwogICAgICAgICAgbGV0IHNvdXJjZXMgPSB1dGlsLmdldEFyZyhzb3VyY2VNYXAsICJzb3VyY2VzIik7CiAgICAgICAgICBjb25zdCBuYW1lcyA9IHV0aWwuZ2V0QXJnKHNvdXJjZU1hcCwgIm5hbWVzIiwgW10pOwogICAgICAgICAgbGV0IHNvdXJjZVJvb3QgPSB1dGlsLmdldEFyZyhzb3VyY2VNYXAsICJzb3VyY2VSb290IiwgbnVsbCk7CiAgICAgICAgICBjb25zdCBzb3VyY2VzQ29udGVudCA9IHV0aWwuZ2V0QXJnKHNvdXJjZU1hcCwgInNvdXJjZXNDb250ZW50IiwgbnVsbCk7CiAgICAgICAgICBjb25zdCBtYXBwaW5ncyA9IHV0aWwuZ2V0QXJnKHNvdXJjZU1hcCwgIm1hcHBpbmdzIik7CiAgICAgICAgICBjb25zdCBmaWxlID0gdXRpbC5nZXRBcmcoc291cmNlTWFwLCAiZmlsZSIsIG51bGwpOwogICAgICAgICAgaWYgKHZlcnNpb24gIT0gdGhhdC5fdmVyc2lvbikgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVuc3VwcG9ydGVkIHZlcnNpb246ICIgKyB2ZXJzaW9uKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChzb3VyY2VSb290KSB7CiAgICAgICAgICAgIHNvdXJjZVJvb3QgPSB1dGlsLm5vcm1hbGl6ZShzb3VyY2VSb290KTsKICAgICAgICAgIH0KICAgICAgICAgIHNvdXJjZXMgPSBzb3VyY2VzLm1hcChTdHJpbmcpLm1hcCh1dGlsLm5vcm1hbGl6ZSkubWFwKGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgICAgICByZXR1cm4gc291cmNlUm9vdCAmJiB1dGlsLmlzQWJzb2x1dGUoc291cmNlUm9vdCkgJiYgdXRpbC5pc0Fic29sdXRlKHNvdXJjZSkgPyB1dGlsLnJlbGF0aXZlKHNvdXJjZVJvb3QsIHNvdXJjZSkgOiBzb3VyY2U7CiAgICAgICAgICB9KTsKICAgICAgICAgIHRoYXQuX25hbWVzID0gQXJyYXlTZXQuZnJvbUFycmF5KG5hbWVzLm1hcChTdHJpbmcpLCB0cnVlKTsKICAgICAgICAgIHRoYXQuX3NvdXJjZXMgPSBBcnJheVNldC5mcm9tQXJyYXkoc291cmNlcywgdHJ1ZSk7CiAgICAgICAgICB0aGF0Ll9hYnNvbHV0ZVNvdXJjZXMgPSB0aGF0Ll9zb3VyY2VzLnRvQXJyYXkoKS5tYXAoZnVuY3Rpb24ocykgewogICAgICAgICAgICByZXR1cm4gdXRpbC5jb21wdXRlU291cmNlVVJMKHNvdXJjZVJvb3QsIHMsIGFTb3VyY2VNYXBVUkwpOwogICAgICAgICAgfSk7CiAgICAgICAgICB0aGF0LnNvdXJjZVJvb3QgPSBzb3VyY2VSb290OwogICAgICAgICAgdGhhdC5zb3VyY2VzQ29udGVudCA9IHNvdXJjZXNDb250ZW50OwogICAgICAgICAgdGhhdC5fbWFwcGluZ3MgPSBtYXBwaW5nczsKICAgICAgICAgIHRoYXQuX3NvdXJjZU1hcFVSTCA9IGFTb3VyY2VNYXBVUkw7CiAgICAgICAgICB0aGF0LmZpbGUgPSBmaWxlOwogICAgICAgICAgdGhhdC5fY29tcHV0ZWRDb2x1bW5TcGFucyA9IGZhbHNlOwogICAgICAgICAgdGhhdC5fbWFwcGluZ3NQdHIgPSAwOwogICAgICAgICAgdGhhdC5fd2FzbSA9IG51bGw7CiAgICAgICAgICByZXR1cm4gd2FzbSgpLnRoZW4oKHcpID0+IHsKICAgICAgICAgICAgdGhhdC5fd2FzbSA9IHc7CiAgICAgICAgICAgIHJldHVybiB0aGF0OwogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFV0aWxpdHkgZnVuY3Rpb24gdG8gZmluZCB0aGUgaW5kZXggb2YgYSBzb3VyY2UuICBSZXR1cm5zIC0xIGlmIG5vdAogICAgICAgKiBmb3VuZC4KICAgICAgICovCiAgICAgIF9maW5kU291cmNlSW5kZXgoYVNvdXJjZSkgewogICAgICAgIGxldCByZWxhdGl2ZVNvdXJjZSA9IGFTb3VyY2U7CiAgICAgICAgaWYgKHRoaXMuc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICByZWxhdGl2ZVNvdXJjZSA9IHV0aWwucmVsYXRpdmUodGhpcy5zb3VyY2VSb290LCByZWxhdGl2ZVNvdXJjZSk7CiAgICAgICAgfQogICAgICAgIGlmICh0aGlzLl9zb3VyY2VzLmhhcyhyZWxhdGl2ZVNvdXJjZSkpIHsKICAgICAgICAgIHJldHVybiB0aGlzLl9zb3VyY2VzLmluZGV4T2YocmVsYXRpdmVTb3VyY2UpOwogICAgICAgIH0KICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuX2Fic29sdXRlU291cmNlcy5sZW5ndGg7ICsraSkgewogICAgICAgICAgaWYgKHRoaXMuX2Fic29sdXRlU291cmNlc1tpXSA9PSBhU291cmNlKSB7CiAgICAgICAgICAgIHJldHVybiBpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gLTE7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIENyZWF0ZSBhIEJhc2ljU291cmNlTWFwQ29uc3VtZXIgZnJvbSBhIFNvdXJjZU1hcEdlbmVyYXRvci4KICAgICAgICoKICAgICAgICogQHBhcmFtIFNvdXJjZU1hcEdlbmVyYXRvciBhU291cmNlTWFwCiAgICAgICAqICAgICAgICBUaGUgc291cmNlIG1hcCB0aGF0IHdpbGwgYmUgY29uc3VtZWQuCiAgICAgICAqIEBwYXJhbSBTdHJpbmcgYVNvdXJjZU1hcFVSTAogICAgICAgKiAgICAgICAgVGhlIFVSTCBhdCB3aGljaCB0aGUgc291cmNlIG1hcCBjYW4gYmUgZm91bmQgKG9wdGlvbmFsKQogICAgICAgKiBAcmV0dXJucyBCYXNpY1NvdXJjZU1hcENvbnN1bWVyCiAgICAgICAqLwogICAgICBzdGF0aWMgZnJvbVNvdXJjZU1hcChhU291cmNlTWFwLCBhU291cmNlTWFwVVJMKSB7CiAgICAgICAgcmV0dXJuIG5ldyBfQmFzaWNTb3VyY2VNYXBDb25zdW1lcihhU291cmNlTWFwLnRvU3RyaW5nKCkpOwogICAgICB9CiAgICAgIGdldCBzb3VyY2VzKCkgewogICAgICAgIHJldHVybiB0aGlzLl9hYnNvbHV0ZVNvdXJjZXMuc2xpY2UoKTsKICAgICAgfQogICAgICBfZ2V0TWFwcGluZ3NQdHIoKSB7CiAgICAgICAgaWYgKHRoaXMuX21hcHBpbmdzUHRyID09PSAwKSB7CiAgICAgICAgICB0aGlzLl9wYXJzZU1hcHBpbmdzKHRoaXMuX21hcHBpbmdzLCB0aGlzLnNvdXJjZVJvb3QpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fbWFwcGluZ3NQdHI7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFBhcnNlIHRoZSBtYXBwaW5ncyBpbiBhIHN0cmluZyBpbiB0byBhIGRhdGEgc3RydWN0dXJlIHdoaWNoIHdlIGNhbiBlYXNpbHkKICAgICAgICogcXVlcnkgKHRoZSBvcmRlcmVkIGFycmF5cyBpbiB0aGUgYHRoaXMuX19nZW5lcmF0ZWRNYXBwaW5nc2AgYW5kCiAgICAgICAqIGB0aGlzLl9fb3JpZ2luYWxNYXBwaW5nc2AgcHJvcGVydGllcykuCiAgICAgICAqLwogICAgICBfcGFyc2VNYXBwaW5ncyhhU3RyLCBhU291cmNlUm9vdCkgewogICAgICAgIGNvbnN0IHNpemUgPSBhU3RyLmxlbmd0aDsKICAgICAgICBjb25zdCBtYXBwaW5nc0J1ZlB0ciA9IHRoaXMuX3dhc20uZXhwb3J0cy5hbGxvY2F0ZV9tYXBwaW5ncyhzaXplKTsKICAgICAgICBjb25zdCBtYXBwaW5nc0J1ZiA9IG5ldyBVaW50OEFycmF5KHRoaXMuX3dhc20uZXhwb3J0cy5tZW1vcnkuYnVmZmVyLCBtYXBwaW5nc0J1ZlB0ciwgc2l6ZSk7CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzaXplOyBpKyspIHsKICAgICAgICAgIG1hcHBpbmdzQnVmW2ldID0gYVN0ci5jaGFyQ29kZUF0KGkpOwogICAgICAgIH0KICAgICAgICBjb25zdCBtYXBwaW5nc1B0ciA9IHRoaXMuX3dhc20uZXhwb3J0cy5wYXJzZV9tYXBwaW5ncyhtYXBwaW5nc0J1ZlB0cik7CiAgICAgICAgaWYgKCFtYXBwaW5nc1B0cikgewogICAgICAgICAgY29uc3QgZXJyb3IgPSB0aGlzLl93YXNtLmV4cG9ydHMuZ2V0X2xhc3RfZXJyb3IoKTsKICAgICAgICAgIGxldCBtc2cgPSBgRXJyb3IgcGFyc2luZyBtYXBwaW5ncyAoY29kZSAke2Vycm9yfSk6IGA7CiAgICAgICAgICBzd2l0Y2ggKGVycm9yKSB7CiAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICBtc2cgKz0gInRoZSBtYXBwaW5ncyBjb250YWluZWQgYSBuZWdhdGl2ZSBsaW5lLCBjb2x1bW4sIHNvdXJjZSBpbmRleCwgb3IgbmFtZSBpbmRleCI7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgMjoKICAgICAgICAgICAgICBtc2cgKz0gInRoZSBtYXBwaW5ncyBjb250YWluZWQgYSBudW1iZXIgbGFyZ2VyIHRoYW4gMioqMzIiOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgbXNnICs9ICJyZWFjaGVkIEVPRiB3aGlsZSBpbiB0aGUgbWlkZGxlIG9mIHBhcnNpbmcgYSBWTFEiOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgbXNnICs9ICJpbnZhbGlkIGJhc2UgNjQgY2hhcmFjdGVyIHdoaWxlIHBhcnNpbmcgYSBWTFEiOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgIG1zZyArPSAidW5rbm93biBlcnJvciBjb2RlIjsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICAgIHRocm93IG5ldyBFcnJvcihtc2cpOwogICAgICAgIH0KICAgICAgICB0aGlzLl9tYXBwaW5nc1B0ciA9IG1hcHBpbmdzUHRyOwogICAgICB9CiAgICAgIGVhY2hNYXBwaW5nKGFDYWxsYmFjaywgYUNvbnRleHQsIGFPcmRlcikgewogICAgICAgIGNvbnN0IGNvbnRleHQgPSBhQ29udGV4dCB8fCBudWxsOwogICAgICAgIGNvbnN0IG9yZGVyID0gYU9yZGVyIHx8IFNvdXJjZU1hcENvbnN1bWVyLkdFTkVSQVRFRF9PUkRFUjsKICAgICAgICBjb25zdCBzb3VyY2VSb290ID0gdGhpcy5zb3VyY2VSb290OwogICAgICAgIHRoaXMuX3dhc20ud2l0aE1hcHBpbmdDYWxsYmFjaygKICAgICAgICAgIChtYXBwaW5nKSA9PiB7CiAgICAgICAgICAgIGlmIChtYXBwaW5nLnNvdXJjZSAhPT0gbnVsbCkgewogICAgICAgICAgICAgIG1hcHBpbmcuc291cmNlID0gdGhpcy5fc291cmNlcy5hdChtYXBwaW5nLnNvdXJjZSk7CiAgICAgICAgICAgICAgbWFwcGluZy5zb3VyY2UgPSB1dGlsLmNvbXB1dGVTb3VyY2VVUkwoc291cmNlUm9vdCwgbWFwcGluZy5zb3VyY2UsIHRoaXMuX3NvdXJjZU1hcFVSTCk7CiAgICAgICAgICAgICAgaWYgKG1hcHBpbmcubmFtZSAhPT0gbnVsbCkgewogICAgICAgICAgICAgICAgbWFwcGluZy5uYW1lID0gdGhpcy5fbmFtZXMuYXQobWFwcGluZy5uYW1lKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgYUNhbGxiYWNrLmNhbGwoY29udGV4dCwgbWFwcGluZyk7CiAgICAgICAgICB9LAogICAgICAgICAgKCkgPT4gewogICAgICAgICAgICBzd2l0Y2ggKG9yZGVyKSB7CiAgICAgICAgICAgICAgY2FzZSBTb3VyY2VNYXBDb25zdW1lci5HRU5FUkFURURfT1JERVI6CiAgICAgICAgICAgICAgICB0aGlzLl93YXNtLmV4cG9ydHMuYnlfZ2VuZXJhdGVkX2xvY2F0aW9uKHRoaXMuX2dldE1hcHBpbmdzUHRyKCkpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSBTb3VyY2VNYXBDb25zdW1lci5PUklHSU5BTF9PUkRFUjoKICAgICAgICAgICAgICAgIHRoaXMuX3dhc20uZXhwb3J0cy5ieV9vcmlnaW5hbF9sb2NhdGlvbih0aGlzLl9nZXRNYXBwaW5nc1B0cigpKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVua25vd24gb3JkZXIgb2YgaXRlcmF0aW9uLiIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgKTsKICAgICAgfQogICAgICBhbGxHZW5lcmF0ZWRQb3NpdGlvbnNGb3IoYUFyZ3MpIHsKICAgICAgICBsZXQgc291cmNlID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJzb3VyY2UiKTsKICAgICAgICBjb25zdCBvcmlnaW5hbExpbmUgPSB1dGlsLmdldEFyZyhhQXJncywgImxpbmUiKTsKICAgICAgICBjb25zdCBvcmlnaW5hbENvbHVtbiA9IGFBcmdzLmNvbHVtbiB8fCAwOwogICAgICAgIHNvdXJjZSA9IHRoaXMuX2ZpbmRTb3VyY2VJbmRleChzb3VyY2UpOwogICAgICAgIGlmIChzb3VyY2UgPCAwKSB7CiAgICAgICAgICByZXR1cm4gW107CiAgICAgICAgfQogICAgICAgIGlmIChvcmlnaW5hbExpbmUgPCAxKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkxpbmUgbnVtYmVycyBtdXN0IGJlID49IDEiKTsKICAgICAgICB9CiAgICAgICAgaWYgKG9yaWdpbmFsQ29sdW1uIDwgMCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDb2x1bW4gbnVtYmVycyBtdXN0IGJlID49IDAiKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbWFwcGluZ3MgPSBbXTsKICAgICAgICB0aGlzLl93YXNtLndpdGhNYXBwaW5nQ2FsbGJhY2soCiAgICAgICAgICAobSkgPT4gewogICAgICAgICAgICBsZXQgbGFzdENvbHVtbiA9IG0ubGFzdEdlbmVyYXRlZENvbHVtbjsKICAgICAgICAgICAgaWYgKHRoaXMuX2NvbXB1dGVkQ29sdW1uU3BhbnMgJiYgbGFzdENvbHVtbiA9PT0gbnVsbCkgewogICAgICAgICAgICAgIGxhc3RDb2x1bW4gPSBJbmZpbml0eTsKICAgICAgICAgICAgfQogICAgICAgICAgICBtYXBwaW5ncy5wdXNoKHsKICAgICAgICAgICAgICBsaW5lOiBtLmdlbmVyYXRlZExpbmUsCiAgICAgICAgICAgICAgY29sdW1uOiBtLmdlbmVyYXRlZENvbHVtbiwKICAgICAgICAgICAgICBsYXN0Q29sdW1uCiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSwKICAgICAgICAgICgpID0+IHsKICAgICAgICAgICAgdGhpcy5fd2FzbS5leHBvcnRzLmFsbF9nZW5lcmF0ZWRfbG9jYXRpb25zX2ZvcigKICAgICAgICAgICAgICB0aGlzLl9nZXRNYXBwaW5nc1B0cigpLAogICAgICAgICAgICAgIHNvdXJjZSwKICAgICAgICAgICAgICBvcmlnaW5hbExpbmUgLSAxLAogICAgICAgICAgICAgICJjb2x1bW4iIGluIGFBcmdzLAogICAgICAgICAgICAgIG9yaWdpbmFsQ29sdW1uCiAgICAgICAgICAgICk7CiAgICAgICAgICB9CiAgICAgICAgKTsKICAgICAgICByZXR1cm4gbWFwcGluZ3M7CiAgICAgIH0KICAgICAgZGVzdHJveSgpIHsKICAgICAgICBpZiAodGhpcy5fbWFwcGluZ3NQdHIgIT09IDApIHsKICAgICAgICAgIHRoaXMuX3dhc20uZXhwb3J0cy5mcmVlX21hcHBpbmdzKHRoaXMuX21hcHBpbmdzUHRyKTsKICAgICAgICAgIHRoaXMuX21hcHBpbmdzUHRyID0gMDsKICAgICAgICB9CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIENvbXB1dGUgdGhlIGxhc3QgY29sdW1uIGZvciBlYWNoIGdlbmVyYXRlZCBtYXBwaW5nLiBUaGUgbGFzdCBjb2x1bW4gaXMKICAgICAgICogaW5jbHVzaXZlLgogICAgICAgKi8KICAgICAgY29tcHV0ZUNvbHVtblNwYW5zKCkgewogICAgICAgIGlmICh0aGlzLl9jb21wdXRlZENvbHVtblNwYW5zKSB7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIHRoaXMuX3dhc20uZXhwb3J0cy5jb21wdXRlX2NvbHVtbl9zcGFucyh0aGlzLl9nZXRNYXBwaW5nc1B0cigpKTsKICAgICAgICB0aGlzLl9jb21wdXRlZENvbHVtblNwYW5zID0gdHJ1ZTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyB0aGUgb3JpZ2luYWwgc291cmNlLCBsaW5lLCBhbmQgY29sdW1uIGluZm9ybWF0aW9uIGZvciB0aGUgZ2VuZXJhdGVkCiAgICAgICAqIHNvdXJjZSdzIGxpbmUgYW5kIGNvbHVtbiBwb3NpdGlvbnMgcHJvdmlkZWQuIFRoZSBvbmx5IGFyZ3VtZW50IGlzIGFuIG9iamVjdAogICAgICAgKiB3aXRoIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgICoKICAgICAgICogICAtIGxpbmU6IFRoZSBsaW5lIG51bWJlciBpbiB0aGUgZ2VuZXJhdGVkIHNvdXJjZS4gIFRoZSBsaW5lIG51bWJlcgogICAgICAgKiAgICAgaXMgMS1iYXNlZC4KICAgICAgICogICAtIGNvbHVtbjogVGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UuICBUaGUgY29sdW1uCiAgICAgICAqICAgICBudW1iZXIgaXMgMC1iYXNlZC4KICAgICAgICogICAtIGJpYXM6IEVpdGhlciAnU291cmNlTWFwQ29uc3VtZXIuR1JFQVRFU1RfTE9XRVJfQk9VTkQnIG9yCiAgICAgICAqICAgICAnU291cmNlTWFwQ29uc3VtZXIuTEVBU1RfVVBQRVJfQk9VTkQnLiBTcGVjaWZpZXMgd2hldGhlciB0byByZXR1cm4gdGhlCiAgICAgICAqICAgICBjbG9zZXN0IGVsZW1lbnQgdGhhdCBpcyBzbWFsbGVyIHRoYW4gb3IgZ3JlYXRlciB0aGFuIHRoZSBvbmUgd2UgYXJlCiAgICAgICAqICAgICBzZWFyY2hpbmcgZm9yLCByZXNwZWN0aXZlbHksIGlmIHRoZSBleGFjdCBlbGVtZW50IGNhbm5vdCBiZSBmb3VuZC4KICAgICAgICogICAgIERlZmF1bHRzIHRvICdTb3VyY2VNYXBDb25zdW1lci5HUkVBVEVTVF9MT1dFUl9CT1VORCcuCiAgICAgICAqCiAgICAgICAqIGFuZCBhbiBvYmplY3QgaXMgcmV0dXJuZWQgd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBzb3VyY2U6IFRoZSBvcmlnaW5hbCBzb3VyY2UgZmlsZSwgb3IgbnVsbC4KICAgICAgICogICAtIGxpbmU6IFRoZSBsaW5lIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlLCBvciBudWxsLiAgVGhlCiAgICAgICAqICAgICBsaW5lIG51bWJlciBpcyAxLWJhc2VkLgogICAgICAgKiAgIC0gY29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlLCBvciBudWxsLiAgVGhlCiAgICAgICAqICAgICBjb2x1bW4gbnVtYmVyIGlzIDAtYmFzZWQuCiAgICAgICAqICAgLSBuYW1lOiBUaGUgb3JpZ2luYWwgaWRlbnRpZmllciwgb3IgbnVsbC4KICAgICAgICovCiAgICAgIG9yaWdpbmFsUG9zaXRpb25Gb3IoYUFyZ3MpIHsKICAgICAgICBjb25zdCBuZWVkbGUgPSB7CiAgICAgICAgICBnZW5lcmF0ZWRMaW5lOiB1dGlsLmdldEFyZyhhQXJncywgImxpbmUiKSwKICAgICAgICAgIGdlbmVyYXRlZENvbHVtbjogdXRpbC5nZXRBcmcoYUFyZ3MsICJjb2x1bW4iKQogICAgICAgIH07CiAgICAgICAgaWYgKG5lZWRsZS5nZW5lcmF0ZWRMaW5lIDwgMSkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJMaW5lIG51bWJlcnMgbXVzdCBiZSA+PSAxIik7CiAgICAgICAgfQogICAgICAgIGlmIChuZWVkbGUuZ2VuZXJhdGVkQ29sdW1uIDwgMCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDb2x1bW4gbnVtYmVycyBtdXN0IGJlID49IDAiKTsKICAgICAgICB9CiAgICAgICAgbGV0IGJpYXMgPSB1dGlsLmdldEFyZyhhQXJncywgImJpYXMiLCBTb3VyY2VNYXBDb25zdW1lci5HUkVBVEVTVF9MT1dFUl9CT1VORCk7CiAgICAgICAgaWYgKGJpYXMgPT0gbnVsbCkgewogICAgICAgICAgYmlhcyA9IFNvdXJjZU1hcENvbnN1bWVyLkdSRUFURVNUX0xPV0VSX0JPVU5EOwogICAgICAgIH0KICAgICAgICBsZXQgbWFwcGluZzsKICAgICAgICB0aGlzLl93YXNtLndpdGhNYXBwaW5nQ2FsbGJhY2soKG0pID0+IG1hcHBpbmcgPSBtLCAoKSA9PiB7CiAgICAgICAgICB0aGlzLl93YXNtLmV4cG9ydHMub3JpZ2luYWxfbG9jYXRpb25fZm9yKAogICAgICAgICAgICB0aGlzLl9nZXRNYXBwaW5nc1B0cigpLAogICAgICAgICAgICBuZWVkbGUuZ2VuZXJhdGVkTGluZSAtIDEsCiAgICAgICAgICAgIG5lZWRsZS5nZW5lcmF0ZWRDb2x1bW4sCiAgICAgICAgICAgIGJpYXMKICAgICAgICAgICk7CiAgICAgICAgfSk7CiAgICAgICAgaWYgKG1hcHBpbmcpIHsKICAgICAgICAgIGlmIChtYXBwaW5nLmdlbmVyYXRlZExpbmUgPT09IG5lZWRsZS5nZW5lcmF0ZWRMaW5lKSB7CiAgICAgICAgICAgIGxldCBzb3VyY2UgPSB1dGlsLmdldEFyZyhtYXBwaW5nLCAic291cmNlIiwgbnVsbCk7CiAgICAgICAgICAgIGlmIChzb3VyY2UgIT09IG51bGwpIHsKICAgICAgICAgICAgICBzb3VyY2UgPSB0aGlzLl9zb3VyY2VzLmF0KHNvdXJjZSk7CiAgICAgICAgICAgICAgc291cmNlID0gdXRpbC5jb21wdXRlU291cmNlVVJMKHRoaXMuc291cmNlUm9vdCwgc291cmNlLCB0aGlzLl9zb3VyY2VNYXBVUkwpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxldCBuYW1lID0gdXRpbC5nZXRBcmcobWFwcGluZywgIm5hbWUiLCBudWxsKTsKICAgICAgICAgICAgaWYgKG5hbWUgIT09IG51bGwpIHsKICAgICAgICAgICAgICBuYW1lID0gdGhpcy5fbmFtZXMuYXQobmFtZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgICBzb3VyY2UsCiAgICAgICAgICAgICAgbGluZTogdXRpbC5nZXRBcmcobWFwcGluZywgIm9yaWdpbmFsTGluZSIsIG51bGwpLAogICAgICAgICAgICAgIGNvbHVtbjogdXRpbC5nZXRBcmcobWFwcGluZywgIm9yaWdpbmFsQ29sdW1uIiwgbnVsbCksCiAgICAgICAgICAgICAgbmFtZQogICAgICAgICAgICB9OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gewogICAgICAgICAgc291cmNlOiBudWxsLAogICAgICAgICAgbGluZTogbnVsbCwKICAgICAgICAgIGNvbHVtbjogbnVsbCwKICAgICAgICAgIG5hbWU6IG51bGwKICAgICAgICB9OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm4gdHJ1ZSBpZiB3ZSBoYXZlIHRoZSBzb3VyY2UgY29udGVudCBmb3IgZXZlcnkgc291cmNlIGluIHRoZSBzb3VyY2UKICAgICAgICogbWFwLCBmYWxzZSBvdGhlcndpc2UuCiAgICAgICAqLwogICAgICBoYXNDb250ZW50c09mQWxsU291cmNlcygpIHsKICAgICAgICBpZiAoIXRoaXMuc291cmNlc0NvbnRlbnQpIHsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuc291cmNlc0NvbnRlbnQubGVuZ3RoID49IHRoaXMuX3NvdXJjZXMuc2l6ZSgpICYmICF0aGlzLnNvdXJjZXNDb250ZW50LnNvbWUoZnVuY3Rpb24oc2MpIHsKICAgICAgICAgIHJldHVybiBzYyA9PSBudWxsOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIHRoZSBvcmlnaW5hbCBzb3VyY2UgY29udGVudC4gVGhlIG9ubHkgYXJndW1lbnQgaXMgdGhlIHVybCBvZiB0aGUKICAgICAgICogb3JpZ2luYWwgc291cmNlIGZpbGUuIFJldHVybnMgbnVsbCBpZiBubyBvcmlnaW5hbCBzb3VyY2UgY29udGVudCBpcwogICAgICAgKiBhdmFpbGFibGUuCiAgICAgICAqLwogICAgICBzb3VyY2VDb250ZW50Rm9yKGFTb3VyY2UsIG51bGxPbk1pc3NpbmcpIHsKICAgICAgICBpZiAoIXRoaXMuc291cmNlc0NvbnRlbnQpIHsKICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0KICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMuX2ZpbmRTb3VyY2VJbmRleChhU291cmNlKTsKICAgICAgICBpZiAoaW5kZXggPj0gMCkgewogICAgICAgICAgcmV0dXJuIHRoaXMuc291cmNlc0NvbnRlbnRbaW5kZXhdOwogICAgICAgIH0KICAgICAgICBsZXQgcmVsYXRpdmVTb3VyY2UgPSBhU291cmNlOwogICAgICAgIGlmICh0aGlzLnNvdXJjZVJvb3QgIT0gbnVsbCkgewogICAgICAgICAgcmVsYXRpdmVTb3VyY2UgPSB1dGlsLnJlbGF0aXZlKHRoaXMuc291cmNlUm9vdCwgcmVsYXRpdmVTb3VyY2UpOwogICAgICAgIH0KICAgICAgICBsZXQgdXJsMzsKICAgICAgICBpZiAodGhpcy5zb3VyY2VSb290ICE9IG51bGwgJiYgKHVybDMgPSB1dGlsLnVybFBhcnNlKHRoaXMuc291cmNlUm9vdCkpKSB7CiAgICAgICAgICBjb25zdCBmaWxlVXJpQWJzUGF0aCA9IHJlbGF0aXZlU291cmNlLnJlcGxhY2UoL15maWxlOlwvXC8vLCAiIik7CiAgICAgICAgICBpZiAodXJsMy5zY2hlbWUgPT0gImZpbGUiICYmIHRoaXMuX3NvdXJjZXMuaGFzKGZpbGVVcmlBYnNQYXRoKSkgewogICAgICAgICAgICByZXR1cm4gdGhpcy5zb3VyY2VzQ29udGVudFt0aGlzLl9zb3VyY2VzLmluZGV4T2YoZmlsZVVyaUFic1BhdGgpXTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICgoIXVybDMucGF0aCB8fCB1cmwzLnBhdGggPT0gIi8iKSAmJiB0aGlzLl9zb3VyY2VzLmhhcygiLyIgKyByZWxhdGl2ZVNvdXJjZSkpIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXMuc291cmNlc0NvbnRlbnRbdGhpcy5fc291cmNlcy5pbmRleE9mKCIvIiArIHJlbGF0aXZlU291cmNlKV07CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChudWxsT25NaXNzaW5nKSB7CiAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICB9CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCciJyArIHJlbGF0aXZlU291cmNlICsgJyIgaXMgbm90IGluIHRoZSBTb3VyY2VNYXAuJyk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybnMgdGhlIGdlbmVyYXRlZCBsaW5lIGFuZCBjb2x1bW4gaW5mb3JtYXRpb24gZm9yIHRoZSBvcmlnaW5hbCBzb3VyY2UsCiAgICAgICAqIGxpbmUsIGFuZCBjb2x1bW4gcG9zaXRpb25zIHByb3ZpZGVkLiBUaGUgb25seSBhcmd1bWVudCBpcyBhbiBvYmplY3Qgd2l0aAogICAgICAgKiB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBzb3VyY2U6IFRoZSBmaWxlbmFtZSBvZiB0aGUgb3JpZ2luYWwgc291cmNlLgogICAgICAgKiAgIC0gbGluZTogVGhlIGxpbmUgbnVtYmVyIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UuICBUaGUgbGluZSBudW1iZXIKICAgICAgICogICAgIGlzIDEtYmFzZWQuCiAgICAgICAqICAgLSBjb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UuICBUaGUgY29sdW1uCiAgICAgICAqICAgICBudW1iZXIgaXMgMC1iYXNlZC4KICAgICAgICogICAtIGJpYXM6IEVpdGhlciAnU291cmNlTWFwQ29uc3VtZXIuR1JFQVRFU1RfTE9XRVJfQk9VTkQnIG9yCiAgICAgICAqICAgICAnU291cmNlTWFwQ29uc3VtZXIuTEVBU1RfVVBQRVJfQk9VTkQnLiBTcGVjaWZpZXMgd2hldGhlciB0byByZXR1cm4gdGhlCiAgICAgICAqICAgICBjbG9zZXN0IGVsZW1lbnQgdGhhdCBpcyBzbWFsbGVyIHRoYW4gb3IgZ3JlYXRlciB0aGFuIHRoZSBvbmUgd2UgYXJlCiAgICAgICAqICAgICBzZWFyY2hpbmcgZm9yLCByZXNwZWN0aXZlbHksIGlmIHRoZSBleGFjdCBlbGVtZW50IGNhbm5vdCBiZSBmb3VuZC4KICAgICAgICogICAgIERlZmF1bHRzIHRvICdTb3VyY2VNYXBDb25zdW1lci5HUkVBVEVTVF9MT1dFUl9CT1VORCcuCiAgICAgICAqCiAgICAgICAqIGFuZCBhbiBvYmplY3QgaXMgcmV0dXJuZWQgd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UsIG9yIG51bGwuICBUaGUKICAgICAgICogICAgIGxpbmUgbnVtYmVyIGlzIDEtYmFzZWQuCiAgICAgICAqICAgLSBjb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgc291cmNlLCBvciBudWxsLgogICAgICAgKiAgICAgVGhlIGNvbHVtbiBudW1iZXIgaXMgMC1iYXNlZC4KICAgICAgICovCiAgICAgIGdlbmVyYXRlZFBvc2l0aW9uRm9yKGFBcmdzKSB7CiAgICAgICAgbGV0IHNvdXJjZSA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAic291cmNlIik7CiAgICAgICAgc291cmNlID0gdGhpcy5fZmluZFNvdXJjZUluZGV4KHNvdXJjZSk7CiAgICAgICAgaWYgKHNvdXJjZSA8IDApIHsKICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgIGxpbmU6IG51bGwsCiAgICAgICAgICAgIGNvbHVtbjogbnVsbCwKICAgICAgICAgICAgbGFzdENvbHVtbjogbnVsbAogICAgICAgICAgfTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbmVlZGxlID0gewogICAgICAgICAgc291cmNlLAogICAgICAgICAgb3JpZ2luYWxMaW5lOiB1dGlsLmdldEFyZyhhQXJncywgImxpbmUiKSwKICAgICAgICAgIG9yaWdpbmFsQ29sdW1uOiB1dGlsLmdldEFyZyhhQXJncywgImNvbHVtbiIpCiAgICAgICAgfTsKICAgICAgICBpZiAobmVlZGxlLm9yaWdpbmFsTGluZSA8IDEpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiTGluZSBudW1iZXJzIG11c3QgYmUgPj0gMSIpOwogICAgICAgIH0KICAgICAgICBpZiAobmVlZGxlLm9yaWdpbmFsQ29sdW1uIDwgMCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDb2x1bW4gbnVtYmVycyBtdXN0IGJlID49IDAiKTsKICAgICAgICB9CiAgICAgICAgbGV0IGJpYXMgPSB1dGlsLmdldEFyZyhhQXJncywgImJpYXMiLCBTb3VyY2VNYXBDb25zdW1lci5HUkVBVEVTVF9MT1dFUl9CT1VORCk7CiAgICAgICAgaWYgKGJpYXMgPT0gbnVsbCkgewogICAgICAgICAgYmlhcyA9IFNvdXJjZU1hcENvbnN1bWVyLkdSRUFURVNUX0xPV0VSX0JPVU5EOwogICAgICAgIH0KICAgICAgICBsZXQgbWFwcGluZzsKICAgICAgICB0aGlzLl93YXNtLndpdGhNYXBwaW5nQ2FsbGJhY2soKG0pID0+IG1hcHBpbmcgPSBtLCAoKSA9PiB7CiAgICAgICAgICB0aGlzLl93YXNtLmV4cG9ydHMuZ2VuZXJhdGVkX2xvY2F0aW9uX2ZvcigKICAgICAgICAgICAgdGhpcy5fZ2V0TWFwcGluZ3NQdHIoKSwKICAgICAgICAgICAgbmVlZGxlLnNvdXJjZSwKICAgICAgICAgICAgbmVlZGxlLm9yaWdpbmFsTGluZSAtIDEsCiAgICAgICAgICAgIG5lZWRsZS5vcmlnaW5hbENvbHVtbiwKICAgICAgICAgICAgYmlhcwogICAgICAgICAgKTsKICAgICAgICB9KTsKICAgICAgICBpZiAobWFwcGluZykgewogICAgICAgICAgaWYgKG1hcHBpbmcuc291cmNlID09PSBuZWVkbGUuc291cmNlKSB7CiAgICAgICAgICAgIGxldCBsYXN0Q29sdW1uID0gbWFwcGluZy5sYXN0R2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgICBpZiAodGhpcy5fY29tcHV0ZWRDb2x1bW5TcGFucyAmJiBsYXN0Q29sdW1uID09PSBudWxsKSB7CiAgICAgICAgICAgICAgbGFzdENvbHVtbiA9IEluZmluaXR5OwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgICAgbGluZTogdXRpbC5nZXRBcmcobWFwcGluZywgImdlbmVyYXRlZExpbmUiLCBudWxsKSwKICAgICAgICAgICAgICBjb2x1bW46IHV0aWwuZ2V0QXJnKG1hcHBpbmcsICJnZW5lcmF0ZWRDb2x1bW4iLCBudWxsKSwKICAgICAgICAgICAgICBsYXN0Q29sdW1uCiAgICAgICAgICAgIH07CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB7CiAgICAgICAgICBsaW5lOiBudWxsLAogICAgICAgICAgY29sdW1uOiBudWxsLAogICAgICAgICAgbGFzdENvbHVtbjogbnVsbAogICAgICAgIH07CiAgICAgIH0KICAgIH07CiAgICBCYXNpY1NvdXJjZU1hcENvbnN1bWVyLnByb3RvdHlwZS5jb25zdW1lciA9IFNvdXJjZU1hcENvbnN1bWVyOwogICAgZXhwb3J0czIuQmFzaWNTb3VyY2VNYXBDb25zdW1lciA9IEJhc2ljU291cmNlTWFwQ29uc3VtZXI7CiAgICB2YXIgSW5kZXhlZFNvdXJjZU1hcENvbnN1bWVyID0gY2xhc3MgZXh0ZW5kcyBTb3VyY2VNYXBDb25zdW1lciB7CiAgICAgIGNvbnN0cnVjdG9yKGFTb3VyY2VNYXAsIGFTb3VyY2VNYXBVUkwpIHsKICAgICAgICByZXR1cm4gc3VwZXIoSU5URVJOQUwpLnRoZW4oKHRoYXQpID0+IHsKICAgICAgICAgIGxldCBzb3VyY2VNYXAgPSBhU291cmNlTWFwOwogICAgICAgICAgaWYgKHR5cGVvZiBhU291cmNlTWFwID09PSAic3RyaW5nIikgewogICAgICAgICAgICBzb3VyY2VNYXAgPSB1dGlsLnBhcnNlU291cmNlTWFwSW5wdXQoYVNvdXJjZU1hcCk7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCB2ZXJzaW9uID0gdXRpbC5nZXRBcmcoc291cmNlTWFwLCAidmVyc2lvbiIpOwogICAgICAgICAgY29uc3Qgc2VjdGlvbnMgPSB1dGlsLmdldEFyZyhzb3VyY2VNYXAsICJzZWN0aW9ucyIpOwogICAgICAgICAgaWYgKHZlcnNpb24gIT0gdGhhdC5fdmVyc2lvbikgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVuc3VwcG9ydGVkIHZlcnNpb246ICIgKyB2ZXJzaW9uKTsKICAgICAgICAgIH0KICAgICAgICAgIHRoYXQuX3NvdXJjZXMgPSBuZXcgQXJyYXlTZXQoKTsKICAgICAgICAgIHRoYXQuX25hbWVzID0gbmV3IEFycmF5U2V0KCk7CiAgICAgICAgICB0aGF0Ll9fZ2VuZXJhdGVkTWFwcGluZ3MgPSBudWxsOwogICAgICAgICAgdGhhdC5fX29yaWdpbmFsTWFwcGluZ3MgPSBudWxsOwogICAgICAgICAgdGhhdC5fX2dlbmVyYXRlZE1hcHBpbmdzVW5zb3J0ZWQgPSBudWxsOwogICAgICAgICAgdGhhdC5fX29yaWdpbmFsTWFwcGluZ3NVbnNvcnRlZCA9IG51bGw7CiAgICAgICAgICBsZXQgbGFzdE9mZnNldCA9IHsKICAgICAgICAgICAgbGluZTogLTEsCiAgICAgICAgICAgIGNvbHVtbjogMAogICAgICAgICAgfTsKICAgICAgICAgIHJldHVybiBQcm9taXNlLmFsbChzZWN0aW9ucy5tYXAoKHMpID0+IHsKICAgICAgICAgICAgaWYgKHMudXJsKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJTdXBwb3J0IGZvciB1cmwgZmllbGQgaW4gc2VjdGlvbnMgbm90IGltcGxlbWVudGVkLiIpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IG9mZnNldCA9IHV0aWwuZ2V0QXJnKHMsICJvZmZzZXQiKTsKICAgICAgICAgICAgY29uc3Qgb2Zmc2V0TGluZSA9IHV0aWwuZ2V0QXJnKG9mZnNldCwgImxpbmUiKTsKICAgICAgICAgICAgY29uc3Qgb2Zmc2V0Q29sdW1uID0gdXRpbC5nZXRBcmcob2Zmc2V0LCAiY29sdW1uIik7CiAgICAgICAgICAgIGlmIChvZmZzZXRMaW5lIDwgbGFzdE9mZnNldC5saW5lIHx8IG9mZnNldExpbmUgPT09IGxhc3RPZmZzZXQubGluZSAmJiBvZmZzZXRDb2x1bW4gPCBsYXN0T2Zmc2V0LmNvbHVtbikgewogICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiU2VjdGlvbiBvZmZzZXRzIG11c3QgYmUgb3JkZXJlZCBhbmQgbm9uLW92ZXJsYXBwaW5nLiIpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxhc3RPZmZzZXQgPSBvZmZzZXQ7CiAgICAgICAgICAgIGNvbnN0IGNvbnMgPSBuZXcgU291cmNlTWFwQ29uc3VtZXIodXRpbC5nZXRBcmcocywgIm1hcCIpLCBhU291cmNlTWFwVVJMKTsKICAgICAgICAgICAgcmV0dXJuIGNvbnMudGhlbigoY29uc3VtZXIpID0+IHsKICAgICAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICAgICAgZ2VuZXJhdGVkT2Zmc2V0OiB7CiAgICAgICAgICAgICAgICAgIC8vIFRoZSBvZmZzZXQgZmllbGRzIGFyZSAwLWJhc2VkLCBidXQgd2UgdXNlIDEtYmFzZWQgaW5kaWNlcyB3aGVuCiAgICAgICAgICAgICAgICAgIC8vIGVuY29kaW5nL2RlY29kaW5nIGZyb20gVkxRLgogICAgICAgICAgICAgICAgICBnZW5lcmF0ZWRMaW5lOiBvZmZzZXRMaW5lICsgMSwKICAgICAgICAgICAgICAgICAgZ2VuZXJhdGVkQ29sdW1uOiBvZmZzZXRDb2x1bW4gKyAxCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgY29uc3VtZXIKICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9KTsKICAgICAgICAgIH0pKS50aGVuKChzKSA9PiB7CiAgICAgICAgICAgIHRoYXQuX3NlY3Rpb25zID0gczsKICAgICAgICAgICAgcmV0dXJuIHRoYXQ7CiAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgfQogICAgICAvLyBgX19nZW5lcmF0ZWRNYXBwaW5nc2AgYW5kIGBfX29yaWdpbmFsTWFwcGluZ3NgIGFyZSBhcnJheXMgdGhhdCBob2xkIHRoZQogICAgICAvLyBwYXJzZWQgbWFwcGluZyBjb29yZGluYXRlcyBmcm9tIHRoZSBzb3VyY2UgbWFwJ3MgIm1hcHBpbmdzIiBhdHRyaWJ1dGUuIFRoZXkKICAgICAgLy8gYXJlIGxhemlseSBpbnN0YW50aWF0ZWQsIGFjY2Vzc2VkIHZpYSB0aGUgYF9nZW5lcmF0ZWRNYXBwaW5nc2AgYW5kCiAgICAgIC8vIGBfb3JpZ2luYWxNYXBwaW5nc2AgZ2V0dGVycyByZXNwZWN0aXZlbHksIGFuZCB3ZSBvbmx5IHBhcnNlIHRoZSBtYXBwaW5ncwogICAgICAvLyBhbmQgY3JlYXRlIHRoZXNlIGFycmF5cyBvbmNlIHF1ZXJpZWQgZm9yIGEgc291cmNlIGxvY2F0aW9uLiBXZSBqdW1wIHRocm91Z2gKICAgICAgLy8gdGhlc2UgaG9vcHMgYmVjYXVzZSB0aGVyZSBjYW4gYmUgbWFueSB0aG91c2FuZHMgb2YgbWFwcGluZ3MsIGFuZCBwYXJzaW5nCiAgICAgIC8vIHRoZW0gaXMgZXhwZW5zaXZlLCBzbyB3ZSBvbmx5IHdhbnQgdG8gZG8gaXQgaWYgd2UgbXVzdC4KICAgICAgLy8KICAgICAgLy8gRWFjaCBvYmplY3QgaW4gdGhlIGFycmF5cyBpcyBvZiB0aGUgZm9ybToKICAgICAgLy8KICAgICAgLy8gICAgIHsKICAgICAgLy8gICAgICAgZ2VuZXJhdGVkTGluZTogVGhlIGxpbmUgbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgY29kZSwKICAgICAgLy8gICAgICAgZ2VuZXJhdGVkQ29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgZ2VuZXJhdGVkIGNvZGUsCiAgICAgIC8vICAgICAgIHNvdXJjZTogVGhlIHBhdGggdG8gdGhlIG9yaWdpbmFsIHNvdXJjZSBmaWxlIHRoYXQgZ2VuZXJhdGVkIHRoaXMKICAgICAgLy8gICAgICAgICAgICAgICBjaHVuayBvZiBjb2RlLAogICAgICAvLyAgICAgICBvcmlnaW5hbExpbmU6IFRoZSBsaW5lIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlIHRoYXQKICAgICAgLy8gICAgICAgICAgICAgICAgICAgICBjb3JyZXNwb25kcyB0byB0aGlzIGNodW5rIG9mIGdlbmVyYXRlZCBjb2RlLAogICAgICAvLyAgICAgICBvcmlnaW5hbENvbHVtbjogVGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZSB0aGF0CiAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICBjb3JyZXNwb25kcyB0byB0aGlzIGNodW5rIG9mIGdlbmVyYXRlZCBjb2RlLAogICAgICAvLyAgICAgICBuYW1lOiBUaGUgbmFtZSBvZiB0aGUgb3JpZ2luYWwgc3ltYm9sIHdoaWNoIGdlbmVyYXRlZCB0aGlzIGNodW5rIG9mCiAgICAgIC8vICAgICAgICAgICAgIGNvZGUuCiAgICAgIC8vICAgICB9CiAgICAgIC8vCiAgICAgIC8vIEFsbCBwcm9wZXJ0aWVzIGV4Y2VwdCBmb3IgYGdlbmVyYXRlZExpbmVgIGFuZCBgZ2VuZXJhdGVkQ29sdW1uYCBjYW4gYmUKICAgICAgLy8gYG51bGxgLgogICAgICAvLwogICAgICAvLyBgX2dlbmVyYXRlZE1hcHBpbmdzYCBpcyBvcmRlcmVkIGJ5IHRoZSBnZW5lcmF0ZWQgcG9zaXRpb25zLgogICAgICAvLwogICAgICAvLyBgX29yaWdpbmFsTWFwcGluZ3NgIGlzIG9yZGVyZWQgYnkgdGhlIG9yaWdpbmFsIHBvc2l0aW9ucy4KICAgICAgZ2V0IF9nZW5lcmF0ZWRNYXBwaW5ncygpIHsKICAgICAgICBpZiAoIXRoaXMuX19nZW5lcmF0ZWRNYXBwaW5ncykgewogICAgICAgICAgdGhpcy5fc29ydEdlbmVyYXRlZE1hcHBpbmdzKCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9fZ2VuZXJhdGVkTWFwcGluZ3M7CiAgICAgIH0KICAgICAgZ2V0IF9vcmlnaW5hbE1hcHBpbmdzKCkgewogICAgICAgIGlmICghdGhpcy5fX29yaWdpbmFsTWFwcGluZ3MpIHsKICAgICAgICAgIHRoaXMuX3NvcnRPcmlnaW5hbE1hcHBpbmdzKCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9fb3JpZ2luYWxNYXBwaW5nczsKICAgICAgfQogICAgICBnZXQgX2dlbmVyYXRlZE1hcHBpbmdzVW5zb3J0ZWQoKSB7CiAgICAgICAgaWYgKCF0aGlzLl9fZ2VuZXJhdGVkTWFwcGluZ3NVbnNvcnRlZCkgewogICAgICAgICAgdGhpcy5fcGFyc2VNYXBwaW5ncyh0aGlzLl9tYXBwaW5ncywgdGhpcy5zb3VyY2VSb290KTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX19nZW5lcmF0ZWRNYXBwaW5nc1Vuc29ydGVkOwogICAgICB9CiAgICAgIGdldCBfb3JpZ2luYWxNYXBwaW5nc1Vuc29ydGVkKCkgewogICAgICAgIGlmICghdGhpcy5fX29yaWdpbmFsTWFwcGluZ3NVbnNvcnRlZCkgewogICAgICAgICAgdGhpcy5fcGFyc2VNYXBwaW5ncyh0aGlzLl9tYXBwaW5ncywgdGhpcy5zb3VyY2VSb290KTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX19vcmlnaW5hbE1hcHBpbmdzVW5zb3J0ZWQ7CiAgICAgIH0KICAgICAgX3NvcnRHZW5lcmF0ZWRNYXBwaW5ncygpIHsKICAgICAgICBjb25zdCBtYXBwaW5ncyA9IHRoaXMuX2dlbmVyYXRlZE1hcHBpbmdzVW5zb3J0ZWQ7CiAgICAgICAgbWFwcGluZ3Muc29ydCh1dGlsLmNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0RlZmxhdGVkKTsKICAgICAgICB0aGlzLl9fZ2VuZXJhdGVkTWFwcGluZ3MgPSBtYXBwaW5nczsKICAgICAgfQogICAgICBfc29ydE9yaWdpbmFsTWFwcGluZ3MoKSB7CiAgICAgICAgY29uc3QgbWFwcGluZ3MgPSB0aGlzLl9vcmlnaW5hbE1hcHBpbmdzVW5zb3J0ZWQ7CiAgICAgICAgbWFwcGluZ3Muc29ydCh1dGlsLmNvbXBhcmVCeU9yaWdpbmFsUG9zaXRpb25zKTsKICAgICAgICB0aGlzLl9fb3JpZ2luYWxNYXBwaW5ncyA9IG1hcHBpbmdzOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBUaGUgbGlzdCBvZiBvcmlnaW5hbCBzb3VyY2VzLgogICAgICAgKi8KICAgICAgZ2V0IHNvdXJjZXMoKSB7CiAgICAgICAgY29uc3Qgc291cmNlcyA9IFtdOwogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5fc2VjdGlvbnMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgdGhpcy5fc2VjdGlvbnNbaV0uY29uc3VtZXIuc291cmNlcy5sZW5ndGg7IGorKykgewogICAgICAgICAgICBzb3VyY2VzLnB1c2godGhpcy5fc2VjdGlvbnNbaV0uY29uc3VtZXIuc291cmNlc1tqXSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBzb3VyY2VzOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIHRoZSBvcmlnaW5hbCBzb3VyY2UsIGxpbmUsIGFuZCBjb2x1bW4gaW5mb3JtYXRpb24gZm9yIHRoZSBnZW5lcmF0ZWQKICAgICAgICogc291cmNlJ3MgbGluZSBhbmQgY29sdW1uIHBvc2l0aW9ucyBwcm92aWRlZC4gVGhlIG9ubHkgYXJndW1lbnQgaXMgYW4gb2JqZWN0CiAgICAgICAqIHdpdGggdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzOgogICAgICAgKgogICAgICAgKiAgIC0gbGluZTogVGhlIGxpbmUgbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgc291cmNlLiAgVGhlIGxpbmUgbnVtYmVyCiAgICAgICAqICAgICBpcyAxLWJhc2VkLgogICAgICAgKiAgIC0gY29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgZ2VuZXJhdGVkIHNvdXJjZS4gIFRoZSBjb2x1bW4KICAgICAgICogICAgIG51bWJlciBpcyAwLWJhc2VkLgogICAgICAgKgogICAgICAgKiBhbmQgYW4gb2JqZWN0IGlzIHJldHVybmVkIHdpdGggdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzOgogICAgICAgKgogICAgICAgKiAgIC0gc291cmNlOiBUaGUgb3JpZ2luYWwgc291cmNlIGZpbGUsIG9yIG51bGwuCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZSwgb3IgbnVsbC4gIFRoZQogICAgICAgKiAgICAgbGluZSBudW1iZXIgaXMgMS1iYXNlZC4KICAgICAgICogICAtIGNvbHVtbjogVGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZSwgb3IgbnVsbC4gIFRoZQogICAgICAgKiAgICAgY29sdW1uIG51bWJlciBpcyAwLWJhc2VkLgogICAgICAgKiAgIC0gbmFtZTogVGhlIG9yaWdpbmFsIGlkZW50aWZpZXIsIG9yIG51bGwuCiAgICAgICAqLwogICAgICBvcmlnaW5hbFBvc2l0aW9uRm9yKGFBcmdzKSB7CiAgICAgICAgY29uc3QgbmVlZGxlID0gewogICAgICAgICAgZ2VuZXJhdGVkTGluZTogdXRpbC5nZXRBcmcoYUFyZ3MsICJsaW5lIiksCiAgICAgICAgICBnZW5lcmF0ZWRDb2x1bW46IHV0aWwuZ2V0QXJnKGFBcmdzLCAiY29sdW1uIikKICAgICAgICB9OwogICAgICAgIGNvbnN0IHNlY3Rpb25JbmRleCA9IGJpbmFyeVNlYXJjaC5zZWFyY2goCiAgICAgICAgICBuZWVkbGUsCiAgICAgICAgICB0aGlzLl9zZWN0aW9ucywKICAgICAgICAgIGZ1bmN0aW9uKGFOZWVkbGUsIHNlY3Rpb24yKSB7CiAgICAgICAgICAgIGNvbnN0IGNtcCA9IGFOZWVkbGUuZ2VuZXJhdGVkTGluZSAtIHNlY3Rpb24yLmdlbmVyYXRlZE9mZnNldC5nZW5lcmF0ZWRMaW5lOwogICAgICAgICAgICBpZiAoY21wKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gYU5lZWRsZS5nZW5lcmF0ZWRDb2x1bW4gLSBzZWN0aW9uMi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgfQogICAgICAgICk7CiAgICAgICAgY29uc3Qgc2VjdGlvbiA9IHRoaXMuX3NlY3Rpb25zW3NlY3Rpb25JbmRleF07CiAgICAgICAgaWYgKCFzZWN0aW9uKSB7CiAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICBzb3VyY2U6IG51bGwsCiAgICAgICAgICAgIGxpbmU6IG51bGwsCiAgICAgICAgICAgIGNvbHVtbjogbnVsbCwKICAgICAgICAgICAgbmFtZTogbnVsbAogICAgICAgICAgfTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHNlY3Rpb24uY29uc3VtZXIub3JpZ2luYWxQb3NpdGlvbkZvcih7CiAgICAgICAgICBsaW5lOiBuZWVkbGUuZ2VuZXJhdGVkTGluZSAtIChzZWN0aW9uLmdlbmVyYXRlZE9mZnNldC5nZW5lcmF0ZWRMaW5lIC0gMSksCiAgICAgICAgICBjb2x1bW46IG5lZWRsZS5nZW5lcmF0ZWRDb2x1bW4gLSAoc2VjdGlvbi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkTGluZSA9PT0gbmVlZGxlLmdlbmVyYXRlZExpbmUgPyBzZWN0aW9uLmdlbmVyYXRlZE9mZnNldC5nZW5lcmF0ZWRDb2x1bW4gLSAxIDogMCksCiAgICAgICAgICBiaWFzOiBhQXJncy5iaWFzCiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybiB0cnVlIGlmIHdlIGhhdmUgdGhlIHNvdXJjZSBjb250ZW50IGZvciBldmVyeSBzb3VyY2UgaW4gdGhlIHNvdXJjZQogICAgICAgKiBtYXAsIGZhbHNlIG90aGVyd2lzZS4KICAgICAgICovCiAgICAgIGhhc0NvbnRlbnRzT2ZBbGxTb3VyY2VzKCkgewogICAgICAgIHJldHVybiB0aGlzLl9zZWN0aW9ucy5ldmVyeShmdW5jdGlvbihzKSB7CiAgICAgICAgICByZXR1cm4gcy5jb25zdW1lci5oYXNDb250ZW50c09mQWxsU291cmNlcygpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIHRoZSBvcmlnaW5hbCBzb3VyY2UgY29udGVudC4gVGhlIG9ubHkgYXJndW1lbnQgaXMgdGhlIHVybCBvZiB0aGUKICAgICAgICogb3JpZ2luYWwgc291cmNlIGZpbGUuIFJldHVybnMgbnVsbCBpZiBubyBvcmlnaW5hbCBzb3VyY2UgY29udGVudCBpcwogICAgICAgKiBhdmFpbGFibGUuCiAgICAgICAqLwogICAgICBzb3VyY2VDb250ZW50Rm9yKGFTb3VyY2UsIG51bGxPbk1pc3NpbmcpIHsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuX3NlY3Rpb25zLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICBjb25zdCBzZWN0aW9uID0gdGhpcy5fc2VjdGlvbnNbaV07CiAgICAgICAgICBjb25zdCBjb250ZW50ID0gc2VjdGlvbi5jb25zdW1lci5zb3VyY2VDb250ZW50Rm9yKGFTb3VyY2UsIHRydWUpOwogICAgICAgICAgaWYgKGNvbnRlbnQpIHsKICAgICAgICAgICAgcmV0dXJuIGNvbnRlbnQ7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChudWxsT25NaXNzaW5nKSB7CiAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICB9CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCciJyArIGFTb3VyY2UgKyAnIiBpcyBub3QgaW4gdGhlIFNvdXJjZU1hcC4nKTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyB0aGUgZ2VuZXJhdGVkIGxpbmUgYW5kIGNvbHVtbiBpbmZvcm1hdGlvbiBmb3IgdGhlIG9yaWdpbmFsIHNvdXJjZSwKICAgICAgICogbGluZSwgYW5kIGNvbHVtbiBwb3NpdGlvbnMgcHJvdmlkZWQuIFRoZSBvbmx5IGFyZ3VtZW50IGlzIGFuIG9iamVjdCB3aXRoCiAgICAgICAqIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgICoKICAgICAgICogICAtIHNvdXJjZTogVGhlIGZpbGVuYW1lIG9mIHRoZSBvcmlnaW5hbCBzb3VyY2UuCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4gIFRoZSBsaW5lIG51bWJlcgogICAgICAgKiAgICAgaXMgMS1iYXNlZC4KICAgICAgICogICAtIGNvbHVtbjogVGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4gIFRoZSBjb2x1bW4KICAgICAgICogICAgIG51bWJlciBpcyAwLWJhc2VkLgogICAgICAgKgogICAgICAgKiBhbmQgYW4gb2JqZWN0IGlzIHJldHVybmVkIHdpdGggdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzOgogICAgICAgKgogICAgICAgKiAgIC0gbGluZTogVGhlIGxpbmUgbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgc291cmNlLCBvciBudWxsLiAgVGhlCiAgICAgICAqICAgICBsaW5lIG51bWJlciBpcyAxLWJhc2VkLgogICAgICAgKiAgIC0gY29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgZ2VuZXJhdGVkIHNvdXJjZSwgb3IgbnVsbC4KICAgICAgICogICAgIFRoZSBjb2x1bW4gbnVtYmVyIGlzIDAtYmFzZWQuCiAgICAgICAqLwogICAgICBnZW5lcmF0ZWRQb3NpdGlvbkZvcihhQXJncykgewogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5fc2VjdGlvbnMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgIGNvbnN0IHNlY3Rpb24gPSB0aGlzLl9zZWN0aW9uc1tpXTsKICAgICAgICAgIGlmIChzZWN0aW9uLmNvbnN1bWVyLl9maW5kU291cmNlSW5kZXgodXRpbC5nZXRBcmcoYUFyZ3MsICJzb3VyY2UiKSkgPT09IC0xKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgZ2VuZXJhdGVkUG9zaXRpb24gPSBzZWN0aW9uLmNvbnN1bWVyLmdlbmVyYXRlZFBvc2l0aW9uRm9yKGFBcmdzKTsKICAgICAgICAgIGlmIChnZW5lcmF0ZWRQb3NpdGlvbikgewogICAgICAgICAgICBjb25zdCByZXQgPSB7CiAgICAgICAgICAgICAgbGluZTogZ2VuZXJhdGVkUG9zaXRpb24ubGluZSArIChzZWN0aW9uLmdlbmVyYXRlZE9mZnNldC5nZW5lcmF0ZWRMaW5lIC0gMSksCiAgICAgICAgICAgICAgY29sdW1uOiBnZW5lcmF0ZWRQb3NpdGlvbi5jb2x1bW4gKyAoc2VjdGlvbi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkTGluZSA9PT0gZ2VuZXJhdGVkUG9zaXRpb24ubGluZSA/IHNlY3Rpb24uZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZENvbHVtbiAtIDEgOiAwKQogICAgICAgICAgICB9OwogICAgICAgICAgICByZXR1cm4gcmV0OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gewogICAgICAgICAgbGluZTogbnVsbCwKICAgICAgICAgIGNvbHVtbjogbnVsbAogICAgICAgIH07CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFBhcnNlIHRoZSBtYXBwaW5ncyBpbiBhIHN0cmluZyBpbiB0byBhIGRhdGEgc3RydWN0dXJlIHdoaWNoIHdlIGNhbiBlYXNpbHkKICAgICAgICogcXVlcnkgKHRoZSBvcmRlcmVkIGFycmF5cyBpbiB0aGUgYHRoaXMuX19nZW5lcmF0ZWRNYXBwaW5nc2AgYW5kCiAgICAgICAqIGB0aGlzLl9fb3JpZ2luYWxNYXBwaW5nc2AgcHJvcGVydGllcykuCiAgICAgICAqLwogICAgICBfcGFyc2VNYXBwaW5ncyhhU3RyLCBhU291cmNlUm9vdCkgewogICAgICAgIGNvbnN0IGdlbmVyYXRlZE1hcHBpbmdzID0gdGhpcy5fX2dlbmVyYXRlZE1hcHBpbmdzVW5zb3J0ZWQgPSBbXTsKICAgICAgICBjb25zdCBvcmlnaW5hbE1hcHBpbmdzID0gdGhpcy5fX29yaWdpbmFsTWFwcGluZ3NVbnNvcnRlZCA9IFtdOwogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5fc2VjdGlvbnMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgIGNvbnN0IHNlY3Rpb24gPSB0aGlzLl9zZWN0aW9uc1tpXTsKICAgICAgICAgIGNvbnN0IHNlY3Rpb25NYXBwaW5ncyA9IFtdOwogICAgICAgICAgc2VjdGlvbi5jb25zdW1lci5lYWNoTWFwcGluZygobSkgPT4gc2VjdGlvbk1hcHBpbmdzLnB1c2gobSkpOwogICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBzZWN0aW9uTWFwcGluZ3MubGVuZ3RoOyBqKyspIHsKICAgICAgICAgICAgY29uc3QgbWFwcGluZyA9IHNlY3Rpb25NYXBwaW5nc1tqXTsKICAgICAgICAgICAgbGV0IHNvdXJjZSA9IHV0aWwuY29tcHV0ZVNvdXJjZVVSTChzZWN0aW9uLmNvbnN1bWVyLnNvdXJjZVJvb3QsIG51bGwsIHRoaXMuX3NvdXJjZU1hcFVSTCk7CiAgICAgICAgICAgIHRoaXMuX3NvdXJjZXMuYWRkKHNvdXJjZSk7CiAgICAgICAgICAgIHNvdXJjZSA9IHRoaXMuX3NvdXJjZXMuaW5kZXhPZihzb3VyY2UpOwogICAgICAgICAgICBsZXQgbmFtZSA9IG51bGw7CiAgICAgICAgICAgIGlmIChtYXBwaW5nLm5hbWUpIHsKICAgICAgICAgICAgICB0aGlzLl9uYW1lcy5hZGQobWFwcGluZy5uYW1lKTsKICAgICAgICAgICAgICBuYW1lID0gdGhpcy5fbmFtZXMuaW5kZXhPZihtYXBwaW5nLm5hbWUpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IGFkanVzdGVkTWFwcGluZyA9IHsKICAgICAgICAgICAgICBzb3VyY2UsCiAgICAgICAgICAgICAgZ2VuZXJhdGVkTGluZTogbWFwcGluZy5nZW5lcmF0ZWRMaW5lICsgKHNlY3Rpb24uZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZExpbmUgLSAxKSwKICAgICAgICAgICAgICBnZW5lcmF0ZWRDb2x1bW46IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uICsgKHNlY3Rpb24uZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZExpbmUgPT09IG1hcHBpbmcuZ2VuZXJhdGVkTGluZSA/IHNlY3Rpb24uZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZENvbHVtbiAtIDEgOiAwKSwKICAgICAgICAgICAgICBvcmlnaW5hbExpbmU6IG1hcHBpbmcub3JpZ2luYWxMaW5lLAogICAgICAgICAgICAgIG9yaWdpbmFsQ29sdW1uOiBtYXBwaW5nLm9yaWdpbmFsQ29sdW1uLAogICAgICAgICAgICAgIG5hbWUKICAgICAgICAgICAgfTsKICAgICAgICAgICAgZ2VuZXJhdGVkTWFwcGluZ3MucHVzaChhZGp1c3RlZE1hcHBpbmcpOwogICAgICAgICAgICBpZiAodHlwZW9mIGFkanVzdGVkTWFwcGluZy5vcmlnaW5hbExpbmUgPT09ICJudW1iZXIiKSB7CiAgICAgICAgICAgICAgb3JpZ2luYWxNYXBwaW5ncy5wdXNoKGFkanVzdGVkTWFwcGluZyk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgZWFjaE1hcHBpbmcoYUNhbGxiYWNrLCBhQ29udGV4dCwgYU9yZGVyKSB7CiAgICAgICAgY29uc3QgY29udGV4dCA9IGFDb250ZXh0IHx8IG51bGw7CiAgICAgICAgY29uc3Qgb3JkZXIgPSBhT3JkZXIgfHwgU291cmNlTWFwQ29uc3VtZXIuR0VORVJBVEVEX09SREVSOwogICAgICAgIGxldCBtYXBwaW5nczsKICAgICAgICBzd2l0Y2ggKG9yZGVyKSB7CiAgICAgICAgICBjYXNlIFNvdXJjZU1hcENvbnN1bWVyLkdFTkVSQVRFRF9PUkRFUjoKICAgICAgICAgICAgbWFwcGluZ3MgPSB0aGlzLl9nZW5lcmF0ZWRNYXBwaW5nczsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICBjYXNlIFNvdXJjZU1hcENvbnN1bWVyLk9SSUdJTkFMX09SREVSOgogICAgICAgICAgICBtYXBwaW5ncyA9IHRoaXMuX29yaWdpbmFsTWFwcGluZ3M7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJVbmtub3duIG9yZGVyIG9mIGl0ZXJhdGlvbi4iKTsKICAgICAgICB9CiAgICAgICAgY29uc3Qgc291cmNlUm9vdCA9IHRoaXMuc291cmNlUm9vdDsKICAgICAgICBtYXBwaW5ncy5tYXAoZnVuY3Rpb24obWFwcGluZykgewogICAgICAgICAgbGV0IHNvdXJjZSA9IG51bGw7CiAgICAgICAgICBpZiAobWFwcGluZy5zb3VyY2UgIT09IG51bGwpIHsKICAgICAgICAgICAgc291cmNlID0gdGhpcy5fc291cmNlcy5hdChtYXBwaW5nLnNvdXJjZSk7CiAgICAgICAgICAgIHNvdXJjZSA9IHV0aWwuY29tcHV0ZVNvdXJjZVVSTChzb3VyY2VSb290LCBzb3VyY2UsIHRoaXMuX3NvdXJjZU1hcFVSTCk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICBzb3VyY2UsCiAgICAgICAgICAgIGdlbmVyYXRlZExpbmU6IG1hcHBpbmcuZ2VuZXJhdGVkTGluZSwKICAgICAgICAgICAgZ2VuZXJhdGVkQ29sdW1uOiBtYXBwaW5nLmdlbmVyYXRlZENvbHVtbiwKICAgICAgICAgICAgb3JpZ2luYWxMaW5lOiBtYXBwaW5nLm9yaWdpbmFsTGluZSwKICAgICAgICAgICAgb3JpZ2luYWxDb2x1bW46IG1hcHBpbmcub3JpZ2luYWxDb2x1bW4sCiAgICAgICAgICAgIG5hbWU6IG1hcHBpbmcubmFtZSA9PT0gbnVsbCA/IG51bGwgOiB0aGlzLl9uYW1lcy5hdChtYXBwaW5nLm5hbWUpCiAgICAgICAgICB9OwogICAgICAgIH0sIHRoaXMpLmZvckVhY2goYUNhbGxiYWNrLCBjb250ZXh0KTsKICAgICAgfQogICAgICAvKioKICAgICAgICogRmluZCB0aGUgbWFwcGluZyB0aGF0IGJlc3QgbWF0Y2hlcyB0aGUgaHlwb3RoZXRpY2FsICJuZWVkbGUiIG1hcHBpbmcgdGhhdAogICAgICAgKiB3ZSBhcmUgc2VhcmNoaW5nIGZvciBpbiB0aGUgZ2l2ZW4gImhheXN0YWNrIiBvZiBtYXBwaW5ncy4KICAgICAgICovCiAgICAgIF9maW5kTWFwcGluZyhhTmVlZGxlLCBhTWFwcGluZ3MsIGFMaW5lTmFtZSwgYUNvbHVtbk5hbWUsIGFDb21wYXJhdG9yLCBhQmlhcykgewogICAgICAgIGlmIChhTmVlZGxlW2FMaW5lTmFtZV0gPD0gMCkgewogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiTGluZSBtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAxLCBnb3QgIiArIGFOZWVkbGVbYUxpbmVOYW1lXSk7CiAgICAgICAgfQogICAgICAgIGlmIChhTmVlZGxlW2FDb2x1bW5OYW1lXSA8IDApIHsKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNvbHVtbiBtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAwLCBnb3QgIiArIGFOZWVkbGVbYUNvbHVtbk5hbWVdKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGJpbmFyeVNlYXJjaC5zZWFyY2goYU5lZWRsZSwgYU1hcHBpbmdzLCBhQ29tcGFyYXRvciwgYUJpYXMpOwogICAgICB9CiAgICAgIGFsbEdlbmVyYXRlZFBvc2l0aW9uc0ZvcihhQXJncykgewogICAgICAgIGNvbnN0IGxpbmUgPSB1dGlsLmdldEFyZyhhQXJncywgImxpbmUiKTsKICAgICAgICBjb25zdCBuZWVkbGUgPSB7CiAgICAgICAgICBzb3VyY2U6IHV0aWwuZ2V0QXJnKGFBcmdzLCAic291cmNlIiksCiAgICAgICAgICBvcmlnaW5hbExpbmU6IGxpbmUsCiAgICAgICAgICBvcmlnaW5hbENvbHVtbjogdXRpbC5nZXRBcmcoYUFyZ3MsICJjb2x1bW4iLCAwKQogICAgICAgIH07CiAgICAgICAgbmVlZGxlLnNvdXJjZSA9IHRoaXMuX2ZpbmRTb3VyY2VJbmRleChuZWVkbGUuc291cmNlKTsKICAgICAgICBpZiAobmVlZGxlLnNvdXJjZSA8IDApIHsKICAgICAgICAgIHJldHVybiBbXTsKICAgICAgICB9CiAgICAgICAgaWYgKG5lZWRsZS5vcmlnaW5hbExpbmUgPCAxKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkxpbmUgbnVtYmVycyBtdXN0IGJlID49IDEiKTsKICAgICAgICB9CiAgICAgICAgaWYgKG5lZWRsZS5vcmlnaW5hbENvbHVtbiA8IDApIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiQ29sdW1uIG51bWJlcnMgbXVzdCBiZSA+PSAwIik7CiAgICAgICAgfQogICAgICAgIGNvbnN0IG1hcHBpbmdzID0gW107CiAgICAgICAgbGV0IGluZGV4ID0gdGhpcy5fZmluZE1hcHBpbmcoCiAgICAgICAgICBuZWVkbGUsCiAgICAgICAgICB0aGlzLl9vcmlnaW5hbE1hcHBpbmdzLAogICAgICAgICAgIm9yaWdpbmFsTGluZSIsCiAgICAgICAgICAib3JpZ2luYWxDb2x1bW4iLAogICAgICAgICAgdXRpbC5jb21wYXJlQnlPcmlnaW5hbFBvc2l0aW9ucywKICAgICAgICAgIGJpbmFyeVNlYXJjaC5MRUFTVF9VUFBFUl9CT1VORAogICAgICAgICk7CiAgICAgICAgaWYgKGluZGV4ID49IDApIHsKICAgICAgICAgIGxldCBtYXBwaW5nID0gdGhpcy5fb3JpZ2luYWxNYXBwaW5nc1tpbmRleF07CiAgICAgICAgICBpZiAoYUFyZ3MuY29sdW1uID09PSB2b2lkIDApIHsKICAgICAgICAgICAgY29uc3Qgb3JpZ2luYWxMaW5lID0gbWFwcGluZy5vcmlnaW5hbExpbmU7CiAgICAgICAgICAgIHdoaWxlIChtYXBwaW5nICYmIG1hcHBpbmcub3JpZ2luYWxMaW5lID09PSBvcmlnaW5hbExpbmUpIHsKICAgICAgICAgICAgICBsZXQgbGFzdENvbHVtbiA9IG1hcHBpbmcubGFzdEdlbmVyYXRlZENvbHVtbjsKICAgICAgICAgICAgICBpZiAodGhpcy5fY29tcHV0ZWRDb2x1bW5TcGFucyAmJiBsYXN0Q29sdW1uID09PSBudWxsKSB7CiAgICAgICAgICAgICAgICBsYXN0Q29sdW1uID0gSW5maW5pdHk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIG1hcHBpbmdzLnB1c2goewogICAgICAgICAgICAgICAgbGluZTogdXRpbC5nZXRBcmcobWFwcGluZywgImdlbmVyYXRlZExpbmUiLCBudWxsKSwKICAgICAgICAgICAgICAgIGNvbHVtbjogdXRpbC5nZXRBcmcobWFwcGluZywgImdlbmVyYXRlZENvbHVtbiIsIG51bGwpLAogICAgICAgICAgICAgICAgbGFzdENvbHVtbgogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgIG1hcHBpbmcgPSB0aGlzLl9vcmlnaW5hbE1hcHBpbmdzWysraW5kZXhdOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBjb25zdCBvcmlnaW5hbENvbHVtbiA9IG1hcHBpbmcub3JpZ2luYWxDb2x1bW47CiAgICAgICAgICAgIHdoaWxlIChtYXBwaW5nICYmIG1hcHBpbmcub3JpZ2luYWxMaW5lID09PSBsaW5lICYmIG1hcHBpbmcub3JpZ2luYWxDb2x1bW4gPT0gb3JpZ2luYWxDb2x1bW4pIHsKICAgICAgICAgICAgICBsZXQgbGFzdENvbHVtbiA9IG1hcHBpbmcubGFzdEdlbmVyYXRlZENvbHVtbjsKICAgICAgICAgICAgICBpZiAodGhpcy5fY29tcHV0ZWRDb2x1bW5TcGFucyAmJiBsYXN0Q29sdW1uID09PSBudWxsKSB7CiAgICAgICAgICAgICAgICBsYXN0Q29sdW1uID0gSW5maW5pdHk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIG1hcHBpbmdzLnB1c2goewogICAgICAgICAgICAgICAgbGluZTogdXRpbC5nZXRBcmcobWFwcGluZywgImdlbmVyYXRlZExpbmUiLCBudWxsKSwKICAgICAgICAgICAgICAgIGNvbHVtbjogdXRpbC5nZXRBcmcobWFwcGluZywgImdlbmVyYXRlZENvbHVtbiIsIG51bGwpLAogICAgICAgICAgICAgICAgbGFzdENvbHVtbgogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgIG1hcHBpbmcgPSB0aGlzLl9vcmlnaW5hbE1hcHBpbmdzWysraW5kZXhdOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXBwaW5nczsKICAgICAgfQogICAgICBkZXN0cm95KCkgewogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5fc2VjdGlvbnMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgIHRoaXMuX3NlY3Rpb25zW2ldLmNvbnN1bWVyLmRlc3Ryb3koKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5JbmRleGVkU291cmNlTWFwQ29uc3VtZXIgPSBJbmRleGVkU291cmNlTWFwQ29uc3VtZXI7CiAgICBmdW5jdGlvbiBfZmFjdG9yeShhU291cmNlTWFwLCBhU291cmNlTWFwVVJMKSB7CiAgICAgIGxldCBzb3VyY2VNYXAgPSBhU291cmNlTWFwOwogICAgICBpZiAodHlwZW9mIGFTb3VyY2VNYXAgPT09ICJzdHJpbmciKSB7CiAgICAgICAgc291cmNlTWFwID0gdXRpbC5wYXJzZVNvdXJjZU1hcElucHV0KGFTb3VyY2VNYXApOwogICAgICB9CiAgICAgIGNvbnN0IGNvbnN1bWVyID0gc291cmNlTWFwLnNlY3Rpb25zICE9IG51bGwgPyBuZXcgSW5kZXhlZFNvdXJjZU1hcENvbnN1bWVyKHNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgOiBuZXcgQmFzaWNTb3VyY2VNYXBDb25zdW1lcihzb3VyY2VNYXAsIGFTb3VyY2VNYXBVUkwpOwogICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGNvbnN1bWVyKTsKICAgIH0KICAgIGZ1bmN0aW9uIF9mYWN0b3J5QlNNKGFTb3VyY2VNYXAsIGFTb3VyY2VNYXBVUkwpIHsKICAgICAgcmV0dXJuIEJhc2ljU291cmNlTWFwQ29uc3VtZXIuZnJvbVNvdXJjZU1hcChhU291cmNlTWFwLCBhU291cmNlTWFwVVJMKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi1hMGY3YzliNzk3LnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvc291cmNlLW5vZGUuanMKdmFyIHJlcXVpcmVfc291cmNlX25vZGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi1hMGY3YzliNzk3LnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvc291cmNlLW5vZGUuanMiKGV4cG9ydHMyKSB7CiAgICB2YXIgU291cmNlTWFwR2VuZXJhdG9yID0gcmVxdWlyZV9zb3VyY2VfbWFwX2dlbmVyYXRvcigpLlNvdXJjZU1hcEdlbmVyYXRvcjsKICAgIHZhciB1dGlsID0gcmVxdWlyZV91dGlsMigpOwogICAgdmFyIFJFR0VYX05FV0xJTkUgPSAvKFxyP1xuKS87CiAgICB2YXIgTkVXTElORV9DT0RFID0gMTA7CiAgICB2YXIgaXNTb3VyY2VOb2RlID0gIiQkJGlzU291cmNlTm9kZSQkJCI7CiAgICB2YXIgU291cmNlTm9kZSA9IGNsYXNzIF9Tb3VyY2VOb2RlIHsKICAgICAgY29uc3RydWN0b3IoYUxpbmUsIGFDb2x1bW4sIGFTb3VyY2UsIGFDaHVua3MsIGFOYW1lKSB7CiAgICAgICAgdGhpcy5jaGlsZHJlbiA9IFtdOwogICAgICAgIHRoaXMuc291cmNlQ29udGVudHMgPSB7fTsKICAgICAgICB0aGlzLmxpbmUgPSBhTGluZSA9PSBudWxsID8gbnVsbCA6IGFMaW5lOwogICAgICAgIHRoaXMuY29sdW1uID0gYUNvbHVtbiA9PSBudWxsID8gbnVsbCA6IGFDb2x1bW47CiAgICAgICAgdGhpcy5zb3VyY2UgPSBhU291cmNlID09IG51bGwgPyBudWxsIDogYVNvdXJjZTsKICAgICAgICB0aGlzLm5hbWUgPSBhTmFtZSA9PSBudWxsID8gbnVsbCA6IGFOYW1lOwogICAgICAgIHRoaXNbaXNTb3VyY2VOb2RlXSA9IHRydWU7CiAgICAgICAgaWYgKGFDaHVua3MgIT0gbnVsbCkgdGhpcy5hZGQoYUNodW5rcyk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIENyZWF0ZXMgYSBTb3VyY2VOb2RlIGZyb20gZ2VuZXJhdGVkIGNvZGUgYW5kIGEgU291cmNlTWFwQ29uc3VtZXIuCiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBhR2VuZXJhdGVkQ29kZSBUaGUgZ2VuZXJhdGVkIGNvZGUKICAgICAgICogQHBhcmFtIGFTb3VyY2VNYXBDb25zdW1lciBUaGUgU291cmNlTWFwIGZvciB0aGUgZ2VuZXJhdGVkIGNvZGUKICAgICAgICogQHBhcmFtIGFSZWxhdGl2ZVBhdGggT3B0aW9uYWwuIFRoZSBwYXRoIHRoYXQgcmVsYXRpdmUgc291cmNlcyBpbiB0aGUKICAgICAgICogICAgICAgIFNvdXJjZU1hcENvbnN1bWVyIHNob3VsZCBiZSByZWxhdGl2ZSB0by4KICAgICAgICovCiAgICAgIHN0YXRpYyBmcm9tU3RyaW5nV2l0aFNvdXJjZU1hcChhR2VuZXJhdGVkQ29kZSwgYVNvdXJjZU1hcENvbnN1bWVyLCBhUmVsYXRpdmVQYXRoKSB7CiAgICAgICAgY29uc3Qgbm9kZSA9IG5ldyBfU291cmNlTm9kZSgpOwogICAgICAgIGNvbnN0IHJlbWFpbmluZ0xpbmVzID0gYUdlbmVyYXRlZENvZGUuc3BsaXQoUkVHRVhfTkVXTElORSk7CiAgICAgICAgbGV0IHJlbWFpbmluZ0xpbmVzSW5kZXggPSAwOwogICAgICAgIGNvbnN0IHNoaWZ0TmV4dExpbmUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGNvbnN0IGxpbmVDb250ZW50cyA9IGdldE5leHRMaW5lKCk7CiAgICAgICAgICBjb25zdCBuZXdMaW5lID0gZ2V0TmV4dExpbmUoKSB8fCAiIjsKICAgICAgICAgIHJldHVybiBsaW5lQ29udGVudHMgKyBuZXdMaW5lOwogICAgICAgICAgZnVuY3Rpb24gZ2V0TmV4dExpbmUoKSB7CiAgICAgICAgICAgIHJldHVybiByZW1haW5pbmdMaW5lc0luZGV4IDwgcmVtYWluaW5nTGluZXMubGVuZ3RoID8gcmVtYWluaW5nTGluZXNbcmVtYWluaW5nTGluZXNJbmRleCsrXSA6IHZvaWQgMDsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIGxldCBsYXN0R2VuZXJhdGVkTGluZSA9IDEsIGxhc3RHZW5lcmF0ZWRDb2x1bW4gPSAwOwogICAgICAgIGxldCBsYXN0TWFwcGluZyA9IG51bGw7CiAgICAgICAgbGV0IG5leHRMaW5lOwogICAgICAgIGFTb3VyY2VNYXBDb25zdW1lci5lYWNoTWFwcGluZyhmdW5jdGlvbihtYXBwaW5nKSB7CiAgICAgICAgICBpZiAobGFzdE1hcHBpbmcgIT09IG51bGwpIHsKICAgICAgICAgICAgaWYgKGxhc3RHZW5lcmF0ZWRMaW5lIDwgbWFwcGluZy5nZW5lcmF0ZWRMaW5lKSB7CiAgICAgICAgICAgICAgYWRkTWFwcGluZ1dpdGhDb2RlKGxhc3RNYXBwaW5nLCBzaGlmdE5leHRMaW5lKCkpOwogICAgICAgICAgICAgIGxhc3RHZW5lcmF0ZWRMaW5lKys7CiAgICAgICAgICAgICAgbGFzdEdlbmVyYXRlZENvbHVtbiA9IDA7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgbmV4dExpbmUgPSByZW1haW5pbmdMaW5lc1tyZW1haW5pbmdMaW5lc0luZGV4XSB8fCAiIjsKICAgICAgICAgICAgICBjb25zdCBjb2RlID0gbmV4dExpbmUuc3Vic3RyKDAsIG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uIC0gbGFzdEdlbmVyYXRlZENvbHVtbik7CiAgICAgICAgICAgICAgcmVtYWluaW5nTGluZXNbcmVtYWluaW5nTGluZXNJbmRleF0gPSBuZXh0TGluZS5zdWJzdHIobWFwcGluZy5nZW5lcmF0ZWRDb2x1bW4gLSBsYXN0R2VuZXJhdGVkQ29sdW1uKTsKICAgICAgICAgICAgICBsYXN0R2VuZXJhdGVkQ29sdW1uID0gbWFwcGluZy5nZW5lcmF0ZWRDb2x1bW47CiAgICAgICAgICAgICAgYWRkTWFwcGluZ1dpdGhDb2RlKGxhc3RNYXBwaW5nLCBjb2RlKTsKICAgICAgICAgICAgICBsYXN0TWFwcGluZyA9IG1hcHBpbmc7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICB3aGlsZSAobGFzdEdlbmVyYXRlZExpbmUgPCBtYXBwaW5nLmdlbmVyYXRlZExpbmUpIHsKICAgICAgICAgICAgbm9kZS5hZGQoc2hpZnROZXh0TGluZSgpKTsKICAgICAgICAgICAgbGFzdEdlbmVyYXRlZExpbmUrKzsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChsYXN0R2VuZXJhdGVkQ29sdW1uIDwgbWFwcGluZy5nZW5lcmF0ZWRDb2x1bW4pIHsKICAgICAgICAgICAgbmV4dExpbmUgPSByZW1haW5pbmdMaW5lc1tyZW1haW5pbmdMaW5lc0luZGV4XSB8fCAiIjsKICAgICAgICAgICAgbm9kZS5hZGQobmV4dExpbmUuc3Vic3RyKDAsIG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uKSk7CiAgICAgICAgICAgIHJlbWFpbmluZ0xpbmVzW3JlbWFpbmluZ0xpbmVzSW5kZXhdID0gbmV4dExpbmUuc3Vic3RyKG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uKTsKICAgICAgICAgICAgbGFzdEdlbmVyYXRlZENvbHVtbiA9IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgfQogICAgICAgICAgbGFzdE1hcHBpbmcgPSBtYXBwaW5nOwogICAgICAgIH0sIHRoaXMpOwogICAgICAgIGlmIChyZW1haW5pbmdMaW5lc0luZGV4IDwgcmVtYWluaW5nTGluZXMubGVuZ3RoKSB7CiAgICAgICAgICBpZiAobGFzdE1hcHBpbmcpIHsKICAgICAgICAgICAgYWRkTWFwcGluZ1dpdGhDb2RlKGxhc3RNYXBwaW5nLCBzaGlmdE5leHRMaW5lKCkpOwogICAgICAgICAgfQogICAgICAgICAgbm9kZS5hZGQocmVtYWluaW5nTGluZXMuc3BsaWNlKHJlbWFpbmluZ0xpbmVzSW5kZXgpLmpvaW4oIiIpKTsKICAgICAgICB9CiAgICAgICAgYVNvdXJjZU1hcENvbnN1bWVyLnNvdXJjZXMuZm9yRWFjaChmdW5jdGlvbihzb3VyY2VGaWxlKSB7CiAgICAgICAgICBjb25zdCBjb250ZW50ID0gYVNvdXJjZU1hcENvbnN1bWVyLnNvdXJjZUNvbnRlbnRGb3Ioc291cmNlRmlsZSk7CiAgICAgICAgICBpZiAoY29udGVudCAhPSBudWxsKSB7CiAgICAgICAgICAgIGlmIChhUmVsYXRpdmVQYXRoICE9IG51bGwpIHsKICAgICAgICAgICAgICBzb3VyY2VGaWxlID0gdXRpbC5qb2luKGFSZWxhdGl2ZVBhdGgsIHNvdXJjZUZpbGUpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIG5vZGUuc2V0U291cmNlQ29udGVudChzb3VyY2VGaWxlLCBjb250ZW50KTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgICByZXR1cm4gbm9kZTsKICAgICAgICBmdW5jdGlvbiBhZGRNYXBwaW5nV2l0aENvZGUobWFwcGluZywgY29kZSkgewogICAgICAgICAgaWYgKG1hcHBpbmcgPT09IG51bGwgfHwgbWFwcGluZy5zb3VyY2UgPT09IHZvaWQgMCkgewogICAgICAgICAgICBub2RlLmFkZChjb2RlKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IHNvdXJjZSA9IGFSZWxhdGl2ZVBhdGggPyB1dGlsLmpvaW4oYVJlbGF0aXZlUGF0aCwgbWFwcGluZy5zb3VyY2UpIDogbWFwcGluZy5zb3VyY2U7CiAgICAgICAgICAgIG5vZGUuYWRkKG5ldyBfU291cmNlTm9kZSgKICAgICAgICAgICAgICBtYXBwaW5nLm9yaWdpbmFsTGluZSwKICAgICAgICAgICAgICBtYXBwaW5nLm9yaWdpbmFsQ29sdW1uLAogICAgICAgICAgICAgIHNvdXJjZSwKICAgICAgICAgICAgICBjb2RlLAogICAgICAgICAgICAgIG1hcHBpbmcubmFtZQogICAgICAgICAgICApKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCBhIGNodW5rIG9mIGdlbmVyYXRlZCBKUyB0byB0aGlzIHNvdXJjZSBub2RlLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYUNodW5rIEEgc3RyaW5nIHNuaXBwZXQgb2YgZ2VuZXJhdGVkIEpTIGNvZGUsIGFub3RoZXIgaW5zdGFuY2Ugb2YKICAgICAgICogICAgICAgIFNvdXJjZU5vZGUsIG9yIGFuIGFycmF5IHdoZXJlIGVhY2ggbWVtYmVyIGlzIG9uZSBvZiB0aG9zZSB0aGluZ3MuCiAgICAgICAqLwogICAgICBhZGQoYUNodW5rKSB7CiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoYUNodW5rKSkgewogICAgICAgICAgYUNodW5rLmZvckVhY2goZnVuY3Rpb24oY2h1bmspIHsKICAgICAgICAgICAgdGhpcy5hZGQoY2h1bmspOwogICAgICAgICAgfSwgdGhpcyk7CiAgICAgICAgfSBlbHNlIGlmIChhQ2h1bmtbaXNTb3VyY2VOb2RlXSB8fCB0eXBlb2YgYUNodW5rID09PSAic3RyaW5nIikgewogICAgICAgICAgaWYgKGFDaHVuaykgewogICAgICAgICAgICB0aGlzLmNoaWxkcmVuLnB1c2goYUNodW5rKTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigKICAgICAgICAgICAgIkV4cGVjdGVkIGEgU291cmNlTm9kZSwgc3RyaW5nLCBvciBhbiBhcnJheSBvZiBTb3VyY2VOb2RlcyBhbmQgc3RyaW5ncy4gR290ICIgKyBhQ2h1bmsKICAgICAgICAgICk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBBZGQgYSBjaHVuayBvZiBnZW5lcmF0ZWQgSlMgdG8gdGhlIGJlZ2lubmluZyBvZiB0aGlzIHNvdXJjZSBub2RlLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYUNodW5rIEEgc3RyaW5nIHNuaXBwZXQgb2YgZ2VuZXJhdGVkIEpTIGNvZGUsIGFub3RoZXIgaW5zdGFuY2Ugb2YKICAgICAgICogICAgICAgIFNvdXJjZU5vZGUsIG9yIGFuIGFycmF5IHdoZXJlIGVhY2ggbWVtYmVyIGlzIG9uZSBvZiB0aG9zZSB0aGluZ3MuCiAgICAgICAqLwogICAgICBwcmVwZW5kKGFDaHVuaykgewogICAgICAgIGlmIChBcnJheS5pc0FycmF5KGFDaHVuaykpIHsKICAgICAgICAgIGZvciAobGV0IGkgPSBhQ2h1bmsubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHsKICAgICAgICAgICAgdGhpcy5wcmVwZW5kKGFDaHVua1tpXSk7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIGlmIChhQ2h1bmtbaXNTb3VyY2VOb2RlXSB8fCB0eXBlb2YgYUNodW5rID09PSAic3RyaW5nIikgewogICAgICAgICAgdGhpcy5jaGlsZHJlbi51bnNoaWZ0KGFDaHVuayk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoCiAgICAgICAgICAgICJFeHBlY3RlZCBhIFNvdXJjZU5vZGUsIHN0cmluZywgb3IgYW4gYXJyYXkgb2YgU291cmNlTm9kZXMgYW5kIHN0cmluZ3MuIEdvdCAiICsgYUNodW5rCiAgICAgICAgICApOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvKioKICAgICAgICogV2FsayBvdmVyIHRoZSB0cmVlIG9mIEpTIHNuaXBwZXRzIGluIHRoaXMgbm9kZSBhbmQgaXRzIGNoaWxkcmVuLiBUaGUKICAgICAgICogd2Fsa2luZyBmdW5jdGlvbiBpcyBjYWxsZWQgb25jZSBmb3IgZWFjaCBzbmlwcGV0IG9mIEpTIGFuZCBpcyBwYXNzZWQgdGhhdAogICAgICAgKiBzbmlwcGV0IGFuZCB0aGUgaXRzIG9yaWdpbmFsIGFzc29jaWF0ZWQgc291cmNlJ3MgbGluZS9jb2x1bW4gbG9jYXRpb24uCiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBhRm4gVGhlIHRyYXZlcnNhbCBmdW5jdGlvbi4KICAgICAgICovCiAgICAgIHdhbGsoYUZuKSB7CiAgICAgICAgbGV0IGNodW5rOwogICAgICAgIGZvciAobGV0IGkgPSAwLCBsZW4gPSB0aGlzLmNoaWxkcmVuLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7CiAgICAgICAgICBjaHVuayA9IHRoaXMuY2hpbGRyZW5baV07CiAgICAgICAgICBpZiAoY2h1bmtbaXNTb3VyY2VOb2RlXSkgewogICAgICAgICAgICBjaHVuay53YWxrKGFGbik7CiAgICAgICAgICB9IGVsc2UgaWYgKGNodW5rICE9PSAiIikgewogICAgICAgICAgICBhRm4oY2h1bmssIHsKICAgICAgICAgICAgICBzb3VyY2U6IHRoaXMuc291cmNlLAogICAgICAgICAgICAgIGxpbmU6IHRoaXMubGluZSwKICAgICAgICAgICAgICBjb2x1bW46IHRoaXMuY29sdW1uLAogICAgICAgICAgICAgIG5hbWU6IHRoaXMubmFtZQogICAgICAgICAgICB9KTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIExpa2UgYFN0cmluZy5wcm90b3R5cGUuam9pbmAgZXhjZXB0IGZvciBTb3VyY2VOb2Rlcy4gSW5zZXJ0cyBgYVN0cmAgYmV0d2VlbgogICAgICAgKiBlYWNoIG9mIGB0aGlzLmNoaWxkcmVuYC4KICAgICAgICoKICAgICAgICogQHBhcmFtIGFTZXAgVGhlIHNlcGFyYXRvci4KICAgICAgICovCiAgICAgIGpvaW4oYVNlcCkgewogICAgICAgIGxldCBuZXdDaGlsZHJlbjsKICAgICAgICBsZXQgaTsKICAgICAgICBjb25zdCBsZW4gPSB0aGlzLmNoaWxkcmVuLmxlbmd0aDsKICAgICAgICBpZiAobGVuID4gMCkgewogICAgICAgICAgbmV3Q2hpbGRyZW4gPSBbXTsKICAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBsZW4gLSAxOyBpKyspIHsKICAgICAgICAgICAgbmV3Q2hpbGRyZW4ucHVzaCh0aGlzLmNoaWxkcmVuW2ldKTsKICAgICAgICAgICAgbmV3Q2hpbGRyZW4ucHVzaChhU2VwKTsKICAgICAgICAgIH0KICAgICAgICAgIG5ld0NoaWxkcmVuLnB1c2godGhpcy5jaGlsZHJlbltpXSk7CiAgICAgICAgICB0aGlzLmNoaWxkcmVuID0gbmV3Q2hpbGRyZW47CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBDYWxsIFN0cmluZy5wcm90b3R5cGUucmVwbGFjZSBvbiB0aGUgdmVyeSByaWdodC1tb3N0IHNvdXJjZSBzbmlwcGV0LiBVc2VmdWwKICAgICAgICogZm9yIHRyaW1taW5nIHdoaXRlc3BhY2UgZnJvbSB0aGUgZW5kIG9mIGEgc291cmNlIG5vZGUsIGV0Yy4KICAgICAgICoKICAgICAgICogQHBhcmFtIGFQYXR0ZXJuIFRoZSBwYXR0ZXJuIHRvIHJlcGxhY2UuCiAgICAgICAqIEBwYXJhbSBhUmVwbGFjZW1lbnQgVGhlIHRoaW5nIHRvIHJlcGxhY2UgdGhlIHBhdHRlcm4gd2l0aC4KICAgICAgICovCiAgICAgIHJlcGxhY2VSaWdodChhUGF0dGVybiwgYVJlcGxhY2VtZW50KSB7CiAgICAgICAgY29uc3QgbGFzdENoaWxkID0gdGhpcy5jaGlsZHJlblt0aGlzLmNoaWxkcmVuLmxlbmd0aCAtIDFdOwogICAgICAgIGlmIChsYXN0Q2hpbGRbaXNTb3VyY2VOb2RlXSkgewogICAgICAgICAgbGFzdENoaWxkLnJlcGxhY2VSaWdodChhUGF0dGVybiwgYVJlcGxhY2VtZW50KTsKICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiBsYXN0Q2hpbGQgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICB0aGlzLmNoaWxkcmVuW3RoaXMuY2hpbGRyZW4ubGVuZ3RoIC0gMV0gPSBsYXN0Q2hpbGQucmVwbGFjZShhUGF0dGVybiwgYVJlcGxhY2VtZW50KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5jaGlsZHJlbi5wdXNoKCIiLnJlcGxhY2UoYVBhdHRlcm4sIGFSZXBsYWNlbWVudCkpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvKioKICAgICAgICogU2V0IHRoZSBzb3VyY2UgY29udGVudCBmb3IgYSBzb3VyY2UgZmlsZS4gVGhpcyB3aWxsIGJlIGFkZGVkIHRvIHRoZSBTb3VyY2VNYXBHZW5lcmF0b3IKICAgICAgICogaW4gdGhlIHNvdXJjZXNDb250ZW50IGZpZWxkLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYVNvdXJjZUZpbGUgVGhlIGZpbGVuYW1lIG9mIHRoZSBzb3VyY2UgZmlsZQogICAgICAgKiBAcGFyYW0gYVNvdXJjZUNvbnRlbnQgVGhlIGNvbnRlbnQgb2YgdGhlIHNvdXJjZSBmaWxlCiAgICAgICAqLwogICAgICBzZXRTb3VyY2VDb250ZW50KGFTb3VyY2VGaWxlLCBhU291cmNlQ29udGVudCkgewogICAgICAgIHRoaXMuc291cmNlQ29udGVudHNbdXRpbC50b1NldFN0cmluZyhhU291cmNlRmlsZSldID0gYVNvdXJjZUNvbnRlbnQ7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFdhbGsgb3ZlciB0aGUgdHJlZSBvZiBTb3VyY2VOb2Rlcy4gVGhlIHdhbGtpbmcgZnVuY3Rpb24gaXMgY2FsbGVkIGZvciBlYWNoCiAgICAgICAqIHNvdXJjZSBmaWxlIGNvbnRlbnQgYW5kIGlzIHBhc3NlZCB0aGUgZmlsZW5hbWUgYW5kIHNvdXJjZSBjb250ZW50LgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYUZuIFRoZSB0cmF2ZXJzYWwgZnVuY3Rpb24uCiAgICAgICAqLwogICAgICB3YWxrU291cmNlQ29udGVudHMoYUZuKSB7CiAgICAgICAgZm9yIChsZXQgaSA9IDAsIGxlbiA9IHRoaXMuY2hpbGRyZW4ubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHsKICAgICAgICAgIGlmICh0aGlzLmNoaWxkcmVuW2ldW2lzU291cmNlTm9kZV0pIHsKICAgICAgICAgICAgdGhpcy5jaGlsZHJlbltpXS53YWxrU291cmNlQ29udGVudHMoYUZuKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY29uc3Qgc291cmNlcyA9IE9iamVjdC5rZXlzKHRoaXMuc291cmNlQ29udGVudHMpOwogICAgICAgIGZvciAobGV0IGkgPSAwLCBsZW4gPSBzb3VyY2VzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7CiAgICAgICAgICBhRm4odXRpbC5mcm9tU2V0U3RyaW5nKHNvdXJjZXNbaV0pLCB0aGlzLnNvdXJjZUNvbnRlbnRzW3NvdXJjZXNbaV1dKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybiB0aGUgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoaXMgc291cmNlIG5vZGUuIFdhbGtzIG92ZXIgdGhlIHRyZWUKICAgICAgICogYW5kIGNvbmNhdGVuYXRlcyBhbGwgdGhlIHZhcmlvdXMgc25pcHBldHMgdG9nZXRoZXIgdG8gb25lIHN0cmluZy4KICAgICAgICovCiAgICAgIHRvU3RyaW5nKCkgewogICAgICAgIGxldCBzdHIgPSAiIjsKICAgICAgICB0aGlzLndhbGsoZnVuY3Rpb24oY2h1bmspIHsKICAgICAgICAgIHN0ciArPSBjaHVuazsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gc3RyOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIHRoZSBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhpcyBzb3VyY2Ugbm9kZSBhbG9uZyB3aXRoIGEgc291cmNlCiAgICAgICAqIG1hcC4KICAgICAgICovCiAgICAgIHRvU3RyaW5nV2l0aFNvdXJjZU1hcChhQXJncykgewogICAgICAgIGNvbnN0IGdlbmVyYXRlZCA9IHsKICAgICAgICAgIGNvZGU6ICIiLAogICAgICAgICAgbGluZTogMSwKICAgICAgICAgIGNvbHVtbjogMAogICAgICAgIH07CiAgICAgICAgY29uc3QgbWFwID0gbmV3IFNvdXJjZU1hcEdlbmVyYXRvcihhQXJncyk7CiAgICAgICAgbGV0IHNvdXJjZU1hcHBpbmdBY3RpdmUgPSBmYWxzZTsKICAgICAgICBsZXQgbGFzdE9yaWdpbmFsU291cmNlID0gbnVsbDsKICAgICAgICBsZXQgbGFzdE9yaWdpbmFsTGluZSA9IG51bGw7CiAgICAgICAgbGV0IGxhc3RPcmlnaW5hbENvbHVtbiA9IG51bGw7CiAgICAgICAgbGV0IGxhc3RPcmlnaW5hbE5hbWUgPSBudWxsOwogICAgICAgIHRoaXMud2FsayhmdW5jdGlvbihjaHVuaywgb3JpZ2luYWwpIHsKICAgICAgICAgIGdlbmVyYXRlZC5jb2RlICs9IGNodW5rOwogICAgICAgICAgaWYgKG9yaWdpbmFsLnNvdXJjZSAhPT0gbnVsbCAmJiBvcmlnaW5hbC5saW5lICE9PSBudWxsICYmIG9yaWdpbmFsLmNvbHVtbiAhPT0gbnVsbCkgewogICAgICAgICAgICBpZiAobGFzdE9yaWdpbmFsU291cmNlICE9PSBvcmlnaW5hbC5zb3VyY2UgfHwgbGFzdE9yaWdpbmFsTGluZSAhPT0gb3JpZ2luYWwubGluZSB8fCBsYXN0T3JpZ2luYWxDb2x1bW4gIT09IG9yaWdpbmFsLmNvbHVtbiB8fCBsYXN0T3JpZ2luYWxOYW1lICE9PSBvcmlnaW5hbC5uYW1lKSB7CiAgICAgICAgICAgICAgbWFwLmFkZE1hcHBpbmcoewogICAgICAgICAgICAgICAgc291cmNlOiBvcmlnaW5hbC5zb3VyY2UsCiAgICAgICAgICAgICAgICBvcmlnaW5hbDogewogICAgICAgICAgICAgICAgICBsaW5lOiBvcmlnaW5hbC5saW5lLAogICAgICAgICAgICAgICAgICBjb2x1bW46IG9yaWdpbmFsLmNvbHVtbgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGdlbmVyYXRlZDogewogICAgICAgICAgICAgICAgICBsaW5lOiBnZW5lcmF0ZWQubGluZSwKICAgICAgICAgICAgICAgICAgY29sdW1uOiBnZW5lcmF0ZWQuY29sdW1uCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgbmFtZTogb3JpZ2luYWwubmFtZQogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxhc3RPcmlnaW5hbFNvdXJjZSA9IG9yaWdpbmFsLnNvdXJjZTsKICAgICAgICAgICAgbGFzdE9yaWdpbmFsTGluZSA9IG9yaWdpbmFsLmxpbmU7CiAgICAgICAgICAgIGxhc3RPcmlnaW5hbENvbHVtbiA9IG9yaWdpbmFsLmNvbHVtbjsKICAgICAgICAgICAgbGFzdE9yaWdpbmFsTmFtZSA9IG9yaWdpbmFsLm5hbWU7CiAgICAgICAgICAgIHNvdXJjZU1hcHBpbmdBY3RpdmUgPSB0cnVlOwogICAgICAgICAgfSBlbHNlIGlmIChzb3VyY2VNYXBwaW5nQWN0aXZlKSB7CiAgICAgICAgICAgIG1hcC5hZGRNYXBwaW5nKHsKICAgICAgICAgICAgICBnZW5lcmF0ZWQ6IHsKICAgICAgICAgICAgICAgIGxpbmU6IGdlbmVyYXRlZC5saW5lLAogICAgICAgICAgICAgICAgY29sdW1uOiBnZW5lcmF0ZWQuY29sdW1uCiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKICAgICAgICAgICAgbGFzdE9yaWdpbmFsU291cmNlID0gbnVsbDsKICAgICAgICAgICAgc291cmNlTWFwcGluZ0FjdGl2ZSA9IGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgZm9yIChsZXQgaWR4ID0gMCwgbGVuZ3RoID0gY2h1bmsubGVuZ3RoOyBpZHggPCBsZW5ndGg7IGlkeCsrKSB7CiAgICAgICAgICAgIGlmIChjaHVuay5jaGFyQ29kZUF0KGlkeCkgPT09IE5FV0xJTkVfQ09ERSkgewogICAgICAgICAgICAgIGdlbmVyYXRlZC5saW5lKys7CiAgICAgICAgICAgICAgZ2VuZXJhdGVkLmNvbHVtbiA9IDA7CiAgICAgICAgICAgICAgaWYgKGlkeCArIDEgPT09IGxlbmd0aCkgewogICAgICAgICAgICAgICAgbGFzdE9yaWdpbmFsU291cmNlID0gbnVsbDsKICAgICAgICAgICAgICAgIHNvdXJjZU1hcHBpbmdBY3RpdmUgPSBmYWxzZTsKICAgICAgICAgICAgICB9IGVsc2UgaWYgKHNvdXJjZU1hcHBpbmdBY3RpdmUpIHsKICAgICAgICAgICAgICAgIG1hcC5hZGRNYXBwaW5nKHsKICAgICAgICAgICAgICAgICAgc291cmNlOiBvcmlnaW5hbC5zb3VyY2UsCiAgICAgICAgICAgICAgICAgIG9yaWdpbmFsOiB7CiAgICAgICAgICAgICAgICAgICAgbGluZTogb3JpZ2luYWwubGluZSwKICAgICAgICAgICAgICAgICAgICBjb2x1bW46IG9yaWdpbmFsLmNvbHVtbgogICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICBnZW5lcmF0ZWQ6IHsKICAgICAgICAgICAgICAgICAgICBsaW5lOiBnZW5lcmF0ZWQubGluZSwKICAgICAgICAgICAgICAgICAgICBjb2x1bW46IGdlbmVyYXRlZC5jb2x1bW4KICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgbmFtZTogb3JpZ2luYWwubmFtZQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIGdlbmVyYXRlZC5jb2x1bW4rKzsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICAgIHRoaXMud2Fsa1NvdXJjZUNvbnRlbnRzKGZ1bmN0aW9uKHNvdXJjZUZpbGUsIHNvdXJjZUNvbnRlbnQpIHsKICAgICAgICAgIG1hcC5zZXRTb3VyY2VDb250ZW50KHNvdXJjZUZpbGUsIHNvdXJjZUNvbnRlbnQpOwogICAgICAgIH0pOwogICAgICAgIHJldHVybiB7IGNvZGU6IGdlbmVyYXRlZC5jb2RlLCBtYXAgfTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNvdXJjZU5vZGUgPSBTb3VyY2VOb2RlOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LWEwZjdjOWI3OTcuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL3NvdXJjZS1tYXAuanMKdmFyIHJlcXVpcmVfc291cmNlX21hcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LWEwZjdjOWI3OTcuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL3NvdXJjZS1tYXAuanMiKGV4cG9ydHMyKSB7CiAgICBleHBvcnRzMi5Tb3VyY2VNYXBHZW5lcmF0b3IgPSByZXF1aXJlX3NvdXJjZV9tYXBfZ2VuZXJhdG9yKCkuU291cmNlTWFwR2VuZXJhdG9yOwogICAgZXhwb3J0czIuU291cmNlTWFwQ29uc3VtZXIgPSByZXF1aXJlX3NvdXJjZV9tYXBfY29uc3VtZXIoKS5Tb3VyY2VNYXBDb25zdW1lcjsKICAgIGV4cG9ydHMyLlNvdXJjZU5vZGUgPSByZXF1aXJlX3NvdXJjZV9ub2RlKCkuU291cmNlTm9kZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvdGVtcGxhdGUuanMKdmFyIHJlcXVpcmVfdGVtcGxhdGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvdGVtcGxhdGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRlbXBsYXRlUGFyc2VyID0gdGVtcGxhdGVQYXJzZXI7CiAgICBleHBvcnRzMi50ZW1wbGF0ZSA9IHRlbXBsYXRlMzsKICAgIHZhciBzb3VyY2VfbWFwXzEgPSByZXF1aXJlX3NvdXJjZV9tYXAoKTsKICAgIHZhciBrSW50ZXJwb2xhdGVSZSA9IC88JT0oW1xzXFNdKz8pJT4vZzsKICAgIHZhciBrQ29tbWVudFJlID0gLzwlIyhbXHNcU10rPyklPi9nOwogICAgdmFyIGtFc2NhcGVSZSA9IC88JS0oW1xzXFNdKz8pJT4vZzsKICAgIHZhciBrRXZhbHVhdGVSZSA9IC88JShbXHNcU10rPyklPi9nOwogICAgdmFyIGtIdG1sRXNjYXBlcyA9IHsKICAgICAgIiYiOiAiJmFtcDsiLAogICAgICAiPCI6ICImbHQ7IiwKICAgICAgIj4iOiAiJmd0OyIsCiAgICAgICciJzogIiZxdW90OyIsCiAgICAgICInIjogIiYjMzk7IiwKICAgICAgImAiOiAiJiM5NjsiCiAgICB9OwogICAgdmFyIHJlVW5lc2NhcGVkSHRtbCA9IG5ldyBSZWdFeHAoYFske09iamVjdC5rZXlzKGtIdG1sRXNjYXBlcykuam9pbigiIil9XWAsICJnIik7CiAgICBmdW5jdGlvbiBfcG9zaXRpb25Gb3IoY29udGVudCwgb2Zmc2V0KSB7CiAgICAgIGxldCBsaW5lID0gMTsKICAgICAgbGV0IGNvbHVtbiA9IDA7CiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgb2Zmc2V0IC0gMTsgaSsrKSB7CiAgICAgICAgaWYgKGNvbnRlbnRbaV0gPT0gIlxuIikgewogICAgICAgICAgbGluZSsrOwogICAgICAgICAgY29sdW1uID0gMDsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgY29sdW1uKys7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiB7CiAgICAgICAgbGluZSwKICAgICAgICBjb2x1bW4KICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHRlbXBsYXRlUGFyc2VyKHNvdXJjZVRleHQsIGZpbGVOYW1lKSB7CiAgICAgIGNvbnN0IGNoaWxkcmVuID0gW107CiAgICAgIGNvbnN0IHJlRXhwcmVzc2lvbnMgPSBba0VzY2FwZVJlLCBrQ29tbWVudFJlLCBrSW50ZXJwb2xhdGVSZSwga0V2YWx1YXRlUmVdOwogICAgICBjb25zdCByZURlbGltaXRlcnMgPSBSZWdFeHAocmVFeHByZXNzaW9ucy5tYXAoKHgpID0+IHguc291cmNlKS5qb2luKCJ8IikgKyAifCQiLCAiZyIpOwogICAgICBjb25zdCBwYXJzZWQgPSBzb3VyY2VUZXh0LnNwbGl0KHJlRGVsaW1pdGVycyk7CiAgICAgIGxldCBvZmZzZXQgPSAwOwogICAgICBsZXQgc3RhcnQgPSBfcG9zaXRpb25Gb3Ioc291cmNlVGV4dCwgb2Zmc2V0KTsKICAgICAgbGV0IGVuZDsKICAgICAgY29uc3QgaW5jcmVtZW50ID0gcmVFeHByZXNzaW9ucy5sZW5ndGggKyAxOwogICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHBhcnNlZC5sZW5ndGg7IGkgKz0gaW5jcmVtZW50KSB7CiAgICAgICAgY29uc3QgW2NvbnRlbnQsIGVzY2FwZTIsIGNvbW1lbnQsIGludGVycG9sYXRlLCBldmFsdWF0ZV0gPSBwYXJzZWQuc2xpY2UoaSwgaSArIGluY3JlbWVudCk7CiAgICAgICAgaWYgKGNvbnRlbnQpIHsKICAgICAgICAgIGVuZCA9IF9wb3NpdGlvbkZvcihzb3VyY2VUZXh0LCBvZmZzZXQgKyBjb250ZW50Lmxlbmd0aCk7CiAgICAgICAgICBvZmZzZXQgKz0gY29udGVudC5sZW5ndGg7CiAgICAgICAgICBjaGlsZHJlbi5wdXNoKHsga2luZDogImNvbnRlbnQiLCBjb250ZW50LCBzdGFydCwgZW5kIH0pOwogICAgICAgICAgc3RhcnQgPSBlbmQ7CiAgICAgICAgfQogICAgICAgIGlmIChlc2NhcGUyKSB7CiAgICAgICAgICBlbmQgPSBfcG9zaXRpb25Gb3Ioc291cmNlVGV4dCwgb2Zmc2V0ICsgZXNjYXBlMi5sZW5ndGggKyA1KTsKICAgICAgICAgIG9mZnNldCArPSBlc2NhcGUyLmxlbmd0aCArIDU7CiAgICAgICAgICBjaGlsZHJlbi5wdXNoKHsga2luZDogImVzY2FwZSIsIGV4cHJlc3Npb246IGVzY2FwZTIsIHN0YXJ0LCBlbmQgfSk7CiAgICAgICAgICBzdGFydCA9IGVuZDsKICAgICAgICB9CiAgICAgICAgaWYgKGNvbW1lbnQpIHsKICAgICAgICAgIGVuZCA9IF9wb3NpdGlvbkZvcihzb3VyY2VUZXh0LCBvZmZzZXQgKyBjb21tZW50Lmxlbmd0aCArIDUpOwogICAgICAgICAgb2Zmc2V0ICs9IGNvbW1lbnQubGVuZ3RoICsgNTsKICAgICAgICAgIGNoaWxkcmVuLnB1c2goeyBraW5kOiAiY29tbWVudCIsIHRleHQ6IGNvbW1lbnQsIHN0YXJ0LCBlbmQgfSk7CiAgICAgICAgICBzdGFydCA9IGVuZDsKICAgICAgICB9CiAgICAgICAgaWYgKGludGVycG9sYXRlKSB7CiAgICAgICAgICBlbmQgPSBfcG9zaXRpb25Gb3Ioc291cmNlVGV4dCwgb2Zmc2V0ICsgaW50ZXJwb2xhdGUubGVuZ3RoICsgNSk7CiAgICAgICAgICBvZmZzZXQgKz0gaW50ZXJwb2xhdGUubGVuZ3RoICsgNTsKICAgICAgICAgIGNoaWxkcmVuLnB1c2goewogICAgICAgICAgICBraW5kOiAiaW50ZXJwb2xhdGUiLAogICAgICAgICAgICBleHByZXNzaW9uOiBpbnRlcnBvbGF0ZSwKICAgICAgICAgICAgc3RhcnQsCiAgICAgICAgICAgIGVuZAogICAgICAgICAgfSk7CiAgICAgICAgICBzdGFydCA9IGVuZDsKICAgICAgICB9CiAgICAgICAgaWYgKGV2YWx1YXRlKSB7CiAgICAgICAgICBlbmQgPSBfcG9zaXRpb25Gb3Ioc291cmNlVGV4dCwgb2Zmc2V0ICsgZXZhbHVhdGUubGVuZ3RoICsgNSk7CiAgICAgICAgICBvZmZzZXQgKz0gZXZhbHVhdGUubGVuZ3RoICsgNTsKICAgICAgICAgIGNoaWxkcmVuLnB1c2goeyBraW5kOiAiZXZhbHVhdGUiLCBleHByZXNzaW9uOiBldmFsdWF0ZSwgc3RhcnQsIGVuZCB9KTsKICAgICAgICAgIHN0YXJ0ID0gZW5kOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gewogICAgICAgIGZpbGVOYW1lLAogICAgICAgIGNvbnRlbnQ6IHNvdXJjZVRleHQsCiAgICAgICAgY2hpbGRyZW4KICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHRlbXBsYXRlRmFzdChhc3QsIG9wdGlvbnMpIHsKICAgICAgY29uc3QgbW9kdWxlMyA9IG9wdGlvbnMgJiYgb3B0aW9ucy5tb2R1bGUgPyAibW9kdWxlLmV4cG9ydHMuZGVmYXVsdCA9IiA6ICIiOwogICAgICBjb25zdCByZUh0bWxFc2NhcGUgPSByZVVuZXNjYXBlZEh0bWwuc291cmNlLnJlcGxhY2UoL1snXS9nLCAiXFxcXFxcJyIpOwogICAgICByZXR1cm4gYAogICAgcmV0dXJuICR7bW9kdWxlM30gZnVuY3Rpb24ob2JqKSB7CiAgICAgIG9iaiB8fCAob2JqID0ge30pOwogICAgICBsZXQgX190OwogICAgICBsZXQgX19wID0gJyc7CiAgICAgIGNvbnN0IF9fZXNjYXBlcyA9ICR7SlNPTi5zdHJpbmdpZnkoa0h0bWxFc2NhcGVzKX07CiAgICAgIGNvbnN0IF9fZXNjYXBlc3JlID0gbmV3IFJlZ0V4cCgnJHtyZUh0bWxFc2NhcGV9JywgJ2cnKTsKCiAgICAgIGNvbnN0IF9fZSA9IGZ1bmN0aW9uKHMpIHsKICAgICAgICByZXR1cm4gcyA/IHMucmVwbGFjZShfX2VzY2FwZXNyZSwgZnVuY3Rpb24oa2V5KSB7IHJldHVybiBfX2VzY2FwZXNba2V5XTsgfSkgOiAnJzsKICAgICAgfTsKICAgICAgd2l0aCAob2JqKSB7CiAgICAgICAgJHthc3QuY2hpbGRyZW4ubWFwKChub2RlKSA9PiB7CiAgICAgICAgc3dpdGNoIChub2RlLmtpbmQpIHsKICAgICAgICAgIGNhc2UgImNvbnRlbnQiOgogICAgICAgICAgICByZXR1cm4gYF9fcCArPSAke0pTT04uc3RyaW5naWZ5KG5vZGUuY29udGVudCl9O2A7CiAgICAgICAgICBjYXNlICJpbnRlcnBvbGF0ZSI6CiAgICAgICAgICAgIHJldHVybiBgX19wICs9ICgoX190ID0gKCR7bm9kZS5leHByZXNzaW9ufSkpID09IG51bGwpID8gJycgOiBfX3Q7YDsKICAgICAgICAgIGNhc2UgImVzY2FwZSI6CiAgICAgICAgICAgIHJldHVybiBgX19wICs9IF9fZSgke25vZGUuZXhwcmVzc2lvbn0pO2A7CiAgICAgICAgICBjYXNlICJldmFsdWF0ZSI6CiAgICAgICAgICAgIHJldHVybiBub2RlLmV4cHJlc3Npb247CiAgICAgICAgfQogICAgICB9KS5qb2luKCJcbiIpfQogICAgICB9CgogICAgICByZXR1cm4gX19wOwogICAgfTsKICBgOwogICAgfQogICAgZnVuY3Rpb24gdGVtcGxhdGVXaXRoU291cmNlTWFwKGFzdCwgb3B0aW9ucykgewogICAgICBjb25zdCBzb3VyY2VVcmwgPSBhc3QuZmlsZU5hbWU7CiAgICAgIGNvbnN0IG1vZHVsZTMgPSBvcHRpb25zICYmIG9wdGlvbnMubW9kdWxlID8gIm1vZHVsZS5leHBvcnRzLmRlZmF1bHQgPSIgOiAiIjsKICAgICAgY29uc3QgcmVIdG1sRXNjYXBlID0gcmVVbmVzY2FwZWRIdG1sLnNvdXJjZS5yZXBsYWNlKC9bJ10vZywgIlxcXFxcXCciKTsKICAgICAgY29uc3QgcHJlYW1ibGUgPSBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUoMSwgMCwgc291cmNlVXJsLCAiIikuYWRkKG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZSgxLCAwLCBzb3VyY2VVcmwsIFsKICAgICAgICBgcmV0dXJuICR7bW9kdWxlM30gZnVuY3Rpb24ob2JqKSB7CmAsCiAgICAgICAgIiAgb2JqIHx8IChvYmogPSB7fSk7XG4iLAogICAgICAgICIgIGxldCBfX3Q7XG4iLAogICAgICAgICcgIGxldCBfX3AgPSAiIjtcbicsCiAgICAgICAgYCAgY29uc3QgX19lc2NhcGVzID0gJHtKU09OLnN0cmluZ2lmeShrSHRtbEVzY2FwZXMpfTsKYCwKICAgICAgICBgICBjb25zdCBfX2VzY2FwZXNyZSA9IG5ldyBSZWdFeHAoJyR7cmVIdG1sRXNjYXBlfScsICdnJyk7CmAsCiAgICAgICAgYApgLAogICAgICAgIGAgIGNvbnN0IF9fZSA9IGZ1bmN0aW9uKHMpIHsgYCwKICAgICAgICBgICAgIHJldHVybiBzID8gcy5yZXBsYWNlKF9fZXNjYXBlc3JlLCBmdW5jdGlvbihrZXkpIHsgcmV0dXJuIF9fZXNjYXBlc1trZXldOyB9KSA6ICcnO2AsCiAgICAgICAgYCAgfTsKYCwKICAgICAgICBgICB3aXRoIChvYmopIHsKYAogICAgICBdKSk7CiAgICAgIGNvbnN0IGVuZCA9IGFzdC5jaGlsZHJlbi5sZW5ndGggPyBhc3QuY2hpbGRyZW5bYXN0LmNoaWxkcmVuLmxlbmd0aCAtIDFdLmVuZCA6IHsgbGluZTogMCwgY29sdW1uOiAwIH07CiAgICAgIGNvbnN0IG5vZGVzID0gYXN0LmNoaWxkcmVuLnJlZHVjZSgoY2h1bmssIG5vZGUpID0+IHsKICAgICAgICBsZXQgY29kZTIgPSAiIjsKICAgICAgICBzd2l0Y2ggKG5vZGUua2luZCkgewogICAgICAgICAgY2FzZSAiY29udGVudCI6CiAgICAgICAgICAgIGNvZGUyID0gWwogICAgICAgICAgICAgIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLnN0YXJ0LmxpbmUsIG5vZGUuc3RhcnQuY29sdW1uLCBzb3VyY2VVcmwsICJfX3AgPSBfX3AiKSwKICAgICAgICAgICAgICAuLi5ub2RlLmNvbnRlbnQuc3BsaXQoIlxuIikubWFwKChsaW5lLCBpLCBhcnIpID0+IHsKICAgICAgICAgICAgICAgIHJldHVybiBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5zdGFydC5saW5lICsgaSwgaSA9PSAwID8gbm9kZS5zdGFydC5jb2x1bW4gOiAwLCBzb3VyY2VVcmwsICJcbiAgICArICIgKyBKU09OLnN0cmluZ2lmeShsaW5lICsgKGkgPT0gYXJyLmxlbmd0aCAtIDEgPyAiIiA6ICJcbiIpKSk7CiAgICAgICAgICAgICAgfSksCiAgICAgICAgICAgICAgbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuZW5kLmxpbmUsIG5vZGUuZW5kLmNvbHVtbiwgc291cmNlVXJsLCAiO1xuIikKICAgICAgICAgICAgXTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICBjYXNlICJpbnRlcnBvbGF0ZSI6CiAgICAgICAgICAgIGNvZGUyID0gWwogICAgICAgICAgICAgIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLnN0YXJ0LmxpbmUsIG5vZGUuc3RhcnQuY29sdW1uLCBzb3VyY2VVcmwsICJfX3AgKz0gKChfX3QgPSAiKSwKICAgICAgICAgICAgICAuLi5ub2RlLmV4cHJlc3Npb24uc3BsaXQoIlxuIikubWFwKChsaW5lLCBpLCBhcnIpID0+IHsKICAgICAgICAgICAgICAgIHJldHVybiBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5zdGFydC5saW5lICsgaSwgaSA9PSAwID8gbm9kZS5zdGFydC5jb2x1bW4gOiAwLCBzb3VyY2VVcmwsIGxpbmUgKyAoaSA9PSBhcnIubGVuZ3RoIC0gMSA/ICIiIDogIlxuIikpOwogICAgICAgICAgICAgIH0pLAogICAgICAgICAgICAgIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLmVuZC5saW5lLCBub2RlLmVuZC5jb2x1bW4sIHNvdXJjZVVybCwgJykgPT0gbnVsbCA/ICIiIDogX190KTtcbicpCiAgICAgICAgICAgIF07CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgY2FzZSAiZXNjYXBlIjoKICAgICAgICAgICAgY29kZTIgPSBbCiAgICAgICAgICAgICAgbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuc3RhcnQubGluZSwgbm9kZS5zdGFydC5jb2x1bW4sIHNvdXJjZVVybCwgIl9fcCArPSBfX2UoIiksCiAgICAgICAgICAgICAgLi4ubm9kZS5leHByZXNzaW9uLnNwbGl0KCJcbiIpLm1hcCgobGluZSwgaSwgYXJyKSA9PiB7CiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuc3RhcnQubGluZSArIGksIGkgPT0gMCA/IG5vZGUuc3RhcnQuY29sdW1uIDogMCwgc291cmNlVXJsLCBsaW5lICsgKGkgPT0gYXJyLmxlbmd0aCAtIDEgPyAiIiA6ICJcbiIpKTsKICAgICAgICAgICAgICB9KSwKICAgICAgICAgICAgICBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5lbmQubGluZSwgbm9kZS5lbmQuY29sdW1uLCBzb3VyY2VVcmwsICIpO1xuIikKICAgICAgICAgICAgXTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICBjYXNlICJldmFsdWF0ZSI6CiAgICAgICAgICAgIGNvZGUyID0gWwogICAgICAgICAgICAgIC4uLm5vZGUuZXhwcmVzc2lvbi5zcGxpdCgiXG4iKS5tYXAoKGxpbmUsIGksIGFycikgPT4gewogICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLnN0YXJ0LmxpbmUgKyBpLCBpID09IDAgPyBub2RlLnN0YXJ0LmNvbHVtbiA6IDAsIHNvdXJjZVVybCwgbGluZSArIChpID09IGFyci5sZW5ndGggLSAxID8gIiIgOiAiXG4iKSk7CiAgICAgICAgICAgICAgfSksCiAgICAgICAgICAgICAgbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuZW5kLmxpbmUsIG5vZGUuZW5kLmNvbHVtbiwgc291cmNlVXJsLCAiXG4iKQogICAgICAgICAgICBdOwogICAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGNodW5rLmFkZChuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5zdGFydC5saW5lLCBub2RlLnN0YXJ0LmNvbHVtbiwgc291cmNlVXJsLCBjb2RlMikpOwogICAgICB9LCBwcmVhbWJsZSkuYWRkKG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShlbmQubGluZSwgZW5kLmNvbHVtbiwgc291cmNlVXJsLCBbIiAgfTtcbiIsICJcbiIsICIgIHJldHVybiBfX3A7XG4iLCAifVxuIl0pKTsKICAgICAgY29uc3QgY29kZSA9IG5vZGVzLnRvU3RyaW5nV2l0aFNvdXJjZU1hcCh7CiAgICAgICAgZmlsZTogc291cmNlVXJsLAogICAgICAgIHNvdXJjZVJvb3Q6IG9wdGlvbnMgJiYgb3B0aW9ucy5zb3VyY2VSb290IHx8ICIuIgogICAgICB9KTsKICAgICAgY29kZS5tYXAuc2V0U291cmNlQ29udGVudChzb3VyY2VVcmwsIGFzdC5jb250ZW50KTsKICAgICAgcmV0dXJuIGNvZGUuY29kZSArICJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsIiArIEJ1ZmZlci5mcm9tKGNvZGUubWFwLnRvU3RyaW5nKCkpLnRvU3RyaW5nKCJiYXNlNjQiKTsKICAgIH0KICAgIGZ1bmN0aW9uIHRlbXBsYXRlMyhjb250ZW50LCBvcHRpb25zKSB7CiAgICAgIGNvbnN0IHNvdXJjZVVybCA9IG9wdGlvbnMgJiYgb3B0aW9ucy5zb3VyY2VVUkwgfHwgImVqcyI7CiAgICAgIGNvbnN0IGFzdCA9IHRlbXBsYXRlUGFyc2VyKGNvbnRlbnQsIHNvdXJjZVVybCk7CiAgICAgIGxldCBzb3VyY2U7CiAgICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMuc291cmNlTWFwKSB7CiAgICAgICAgc291cmNlID0gdGVtcGxhdGVXaXRoU291cmNlTWFwKGFzdCwgb3B0aW9ucyk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgc291cmNlID0gdGVtcGxhdGVGYXN0KGFzdCwgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgY29uc3QgZm4gPSBGdW5jdGlvbigibW9kdWxlIiwgc291cmNlKTsKICAgICAgY29uc3QgbW9kdWxlMyA9IG9wdGlvbnMgJiYgb3B0aW9ucy5tb2R1bGUgPyBvcHRpb25zLm1vZHVsZSA9PT0gdHJ1ZSA/IHsgZXhwb3J0czoge30gfSA6IG9wdGlvbnMubW9kdWxlIDogbnVsbDsKICAgICAgY29uc3QgcmVzdWx0ID0gZm4obW9kdWxlMyk7CiAgICAgIHJlc3VsdC5zb3VyY2UgPSBzb3VyY2U7CiAgICAgIHJldHVybiByZXN1bHQ7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3BhcnRpYWxseS1vcmRlcmVkLXNldC5qcwp2YXIgcmVxdWlyZV9wYXJ0aWFsbHlfb3JkZXJlZF9zZXQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvcGFydGlhbGx5LW9yZGVyZWQtc2V0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5QYXJ0aWFsbHlPcmRlcmVkU2V0ID0gZXhwb3J0czIuQ2lyY3VsYXJEZXBlbmRlbmN5Rm91bmRFeGNlcHRpb24gPSBleHBvcnRzMi5EZXBlbmRlbmN5Tm90Rm91bmRFeGNlcHRpb24gPSB2b2lkIDA7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbigpOwogICAgdmFyIERlcGVuZGVuY3lOb3RGb3VuZEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgZXhjZXB0aW9uXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHN1cGVyKCJPbmUgb2YgdGhlIGRlcGVuZGVuY2llcyBpcyBub3QgcGFydCBvZiB0aGUgc2V0LiIpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRGVwZW5kZW5jeU5vdEZvdW5kRXhjZXB0aW9uID0gRGVwZW5kZW5jeU5vdEZvdW5kRXhjZXB0aW9uOwogICAgdmFyIENpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBleGNlcHRpb25fMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgc3VwZXIoIkNpcmN1bGFyIGRlcGVuZGVuY2llcyBmb3VuZC4iKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkNpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uID0gQ2lyY3VsYXJEZXBlbmRlbmN5Rm91bmRFeGNlcHRpb247CiAgICB2YXIgUGFydGlhbGx5T3JkZXJlZFNldCA9IGNsYXNzIHsKICAgICAgX2l0ZW1zID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgX2NoZWNrQ2lyY3VsYXJEZXBlbmRlbmNpZXMoaXRlbSwgZGVwcykgewogICAgICAgIGlmIChkZXBzLmhhcyhpdGVtKSkgewogICAgICAgICAgdGhyb3cgbmV3IENpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uKCk7CiAgICAgICAgfQogICAgICAgIGRlcHMuZm9yRWFjaCgoZGVwKSA9PiB0aGlzLl9jaGVja0NpcmN1bGFyRGVwZW5kZW5jaWVzKGl0ZW0sIHRoaXMuX2l0ZW1zLmdldChkZXApIHx8IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCkpKTsKICAgICAgfQogICAgICBjbGVhcigpIHsKICAgICAgICB0aGlzLl9pdGVtcy5jbGVhcigpOwogICAgICB9CiAgICAgIGhhcyhpdGVtKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2l0ZW1zLmhhcyhpdGVtKTsKICAgICAgfQogICAgICBnZXQgc2l6ZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5faXRlbXMuc2l6ZTsKICAgICAgfQogICAgICBmb3JFYWNoKGNhbGxiYWNrZm4sIHRoaXNBcmcpIHsKICAgICAgICBmb3IgKGNvbnN0IHggb2YgdGhpcykgewogICAgICAgICAgY2FsbGJhY2tmbi5jYWxsKHRoaXNBcmcsIHgsIHgsIHRoaXMpOwogICAgICAgIH0KICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyBhbiBpdGVyYWJsZSBvZiBbdix2XSBwYWlycyBmb3IgZXZlcnkgdmFsdWUgYHZgIGluIHRoZSBzZXQuCiAgICAgICAqLwogICAgICAqZW50cmllcygpIHsKICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgdGhpcykgewogICAgICAgICAgeWllbGQgW2l0ZW0sIGl0ZW1dOwogICAgICAgIH0KICAgICAgfQogICAgICAvKioKICAgICAgICogRGVzcGl0ZSBpdHMgbmFtZSwgcmV0dXJucyBhbiBpdGVyYWJsZSBvZiB0aGUgdmFsdWVzIGluIHRoZSBzZXQsCiAgICAgICAqLwogICAgICBrZXlzKCkgewogICAgICAgIHJldHVybiB0aGlzLnZhbHVlcygpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIGFuIGl0ZXJhYmxlIG9mIHZhbHVlcyBpbiB0aGUgc2V0LgogICAgICAgKi8KICAgICAgdmFsdWVzKCkgewogICAgICAgIHJldHVybiB0aGlzW1N5bWJvbC5pdGVyYXRvcl0oKTsKICAgICAgfQogICAgICBhZGQoaXRlbSwgZGVwcyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCkpIHsKICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShkZXBzKSkgewogICAgICAgICAgZGVwcyA9IG5ldyBTZXQoZGVwcyk7CiAgICAgICAgfQogICAgICAgIGlmICh0aGlzLl9pdGVtcy5oYXMoaXRlbSkpIHsKICAgICAgICAgIGNvbnN0IGl0ZW1EZXBzID0gdGhpcy5faXRlbXMuZ2V0KGl0ZW0pIHx8IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgICBsZXQgZXF1YWwgPSB0cnVlOwogICAgICAgICAgZm9yIChjb25zdCBkZXAgb2YgZGVwcykgewogICAgICAgICAgICBpZiAoIWl0ZW1EZXBzLmhhcyhkZXApKSB7CiAgICAgICAgICAgICAgZXF1YWwgPSBmYWxzZTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKGVxdWFsKSB7CiAgICAgICAgICAgIGZvciAoY29uc3QgZGVwIG9mIGl0ZW1EZXBzKSB7CiAgICAgICAgICAgICAgaWYgKCFkZXBzLmhhcyhkZXApKSB7CiAgICAgICAgICAgICAgICBlcXVhbCA9IGZhbHNlOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZXF1YWwpIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aGlzLl9pdGVtcy5kZWxldGUoaXRlbSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZvciAoY29uc3QgZGVwIG9mIGRlcHMpIHsKICAgICAgICAgIGlmICghdGhpcy5faXRlbXMuaGFzKGRlcCkpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IERlcGVuZGVuY3lOb3RGb3VuZEV4Y2VwdGlvbigpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICB0aGlzLl9jaGVja0NpcmN1bGFyRGVwZW5kZW5jaWVzKGl0ZW0sIGRlcHMpOwogICAgICAgIHRoaXMuX2l0ZW1zLnNldChpdGVtLCBuZXcgU2V0KGRlcHMpKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBkZWxldGUoaXRlbSkgewogICAgICAgIGlmICghdGhpcy5faXRlbXMuaGFzKGl0ZW0pKSB7CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfQogICAgICAgIHRoaXMuX2l0ZW1zLmZvckVhY2goKHZhbHVlKSA9PiB2YWx1ZS5kZWxldGUoaXRlbSkpOwogICAgICAgIHJldHVybiB0aGlzLl9pdGVtcy5kZWxldGUoaXRlbSk7CiAgICAgIH0KICAgICAgKltTeW1ib2wuaXRlcmF0b3JdKCkgewogICAgICAgIGNvbnN0IGNvcHkgPSBuZXcgTWFwKHRoaXMuX2l0ZW1zKTsKICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBjb3B5LmVudHJpZXMoKSkgewogICAgICAgICAgY29weS5zZXQoa2V5LCBuZXcgU2V0KHZhbHVlKSk7CiAgICAgICAgfQogICAgICAgIHdoaWxlIChjb3B5LnNpemUgPiAwKSB7CiAgICAgICAgICBjb25zdCBydW4gPSBbXTsKICAgICAgICAgIGZvciAoY29uc3QgW2l0ZW0sIGRlcHNdIG9mIGNvcHkuZW50cmllcygpKSB7CiAgICAgICAgICAgIGlmIChkZXBzLnNpemUgPT0gMCkgewogICAgICAgICAgICAgIHJ1bi5wdXNoKGl0ZW0pOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgcnVuKSB7CiAgICAgICAgICAgIGNvcHkuZm9yRWFjaCgocykgPT4gcy5kZWxldGUoaXRlbSkpOwogICAgICAgICAgICBjb3B5LmRlbGV0ZShpdGVtKTsKICAgICAgICAgICAgeWllbGQgaXRlbTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChydW4ubGVuZ3RoID09IDApIHsKICAgICAgICAgICAgdGhyb3cgbmV3IENpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uKCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH0KICAgICAgZ2V0IFtTeW1ib2wudG9TdHJpbmdUYWddKCkgewogICAgICAgIHJldHVybiAiU2V0IjsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlBhcnRpYWxseU9yZGVyZWRTZXQgPSBQYXJ0aWFsbHlPcmRlcmVkU2V0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9wcmlvcml0eS1xdWV1ZS5qcwp2YXIgcmVxdWlyZV9wcmlvcml0eV9xdWV1ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9wcmlvcml0eS1xdWV1ZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuUHJpb3JpdHlRdWV1ZSA9IHZvaWQgMDsKICAgIHZhciBQcmlvcml0eVF1ZXVlID0gY2xhc3MgewogICAgICBfY29tcGFyYXRvcjsKICAgICAgX2l0ZW1zID0gbmV3IEFycmF5KCk7CiAgICAgIGNvbnN0cnVjdG9yKF9jb21wYXJhdG9yKSB7CiAgICAgICAgdGhpcy5fY29tcGFyYXRvciA9IF9jb21wYXJhdG9yOwogICAgICB9CiAgICAgIGNsZWFyKCkgewogICAgICAgIHRoaXMuX2l0ZW1zID0gbmV3IEFycmF5KCk7CiAgICAgIH0KICAgICAgcHVzaChpdGVtKSB7CiAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLl9pdGVtcy5maW5kSW5kZXgoKGV4aXN0aW5nKSA9PiB0aGlzLl9jb21wYXJhdG9yKGl0ZW0sIGV4aXN0aW5nKSA8PSAwKTsKICAgICAgICBpZiAoaW5kZXggPT09IC0xKSB7CiAgICAgICAgICB0aGlzLl9pdGVtcy5wdXNoKGl0ZW0pOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLl9pdGVtcy5zcGxpY2UoaW5kZXgsIDAsIGl0ZW0pOwogICAgICAgIH0KICAgICAgfQogICAgICBwb3AoKSB7CiAgICAgICAgaWYgKHRoaXMuX2l0ZW1zLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX2l0ZW1zLnNwbGljZSgwLCAxKVswXTsKICAgICAgfQogICAgICBwZWVrKCkgewogICAgICAgIGlmICh0aGlzLl9pdGVtcy5sZW5ndGggPT09IDApIHsKICAgICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9pdGVtc1swXTsKICAgICAgfQogICAgICBnZXQgc2l6ZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5faXRlbXMubGVuZ3RoOwogICAgICB9CiAgICAgIHRvQXJyYXkoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2l0ZW1zLnNsaWNlKCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Qcmlvcml0eVF1ZXVlID0gUHJpb3JpdHlRdWV1ZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvbGFuZy5qcwp2YXIgcmVxdWlyZV9sYW5nID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2xhbmcuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmlzUHJvbWlzZSA9IGlzUHJvbWlzZTsKICAgIGZ1bmN0aW9uIGlzUHJvbWlzZShvYmopIHsKICAgICAgcmV0dXJuICEhb2JqICYmIHR5cGVvZiBvYmoudGhlbiA9PT0gImZ1bmN0aW9uIjsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvaW5kZXguanMKdmFyIHJlcXVpcmVfdXRpbHMzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fY3JlYXRlQmluZGluZyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fY3JlYXRlQmluZGluZyB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihtLCBrKTsKICAgICAgaWYgKCFkZXNjIHx8ICgiZ2V0IiBpbiBkZXNjID8gIW0uX19lc01vZHVsZSA6IGRlc2Mud3JpdGFibGUgfHwgZGVzYy5jb25maWd1cmFibGUpKSB7CiAgICAgICAgZGVzYyA9IHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBtW2tdOwogICAgICAgIH0gfTsKICAgICAgfQogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgazIsIGRlc2MpOwogICAgfSA6IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIG9bazJdID0gbVtrXTsKICAgIH0pOwogICAgdmFyIF9fc2V0TW9kdWxlRGVmYXVsdCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc2V0TW9kdWxlRGVmYXVsdCB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJkZWZhdWx0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCB2YWx1ZTogdiB9KTsKICAgIH0gOiBmdW5jdGlvbihvLCB2KSB7CiAgICAgIG9bImRlZmF1bHQiXSA9IHY7CiAgICB9KTsKICAgIHZhciBfX2ltcG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydFN0YXIgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgb3duS2V5cyA9IGZ1bmN0aW9uKG8pIHsKICAgICAgICBvd25LZXlzID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMgfHwgZnVuY3Rpb24obzIpIHsKICAgICAgICAgIHZhciBhciA9IFtdOwogICAgICAgICAgZm9yICh2YXIgayBpbiBvMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvMiwgaykpIGFyW2FyLmxlbmd0aF0gPSBrOwogICAgICAgICAgcmV0dXJuIGFyOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIG93bktleXMobyk7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihtb2QpIHsKICAgICAgICBpZiAobW9kICYmIG1vZC5fX2VzTW9kdWxlKSByZXR1cm4gbW9kOwogICAgICAgIHZhciByZXN1bHQgPSB7fTsKICAgICAgICBpZiAobW9kICE9IG51bGwpIHsKICAgICAgICAgIGZvciAodmFyIGsgPSBvd25LZXlzKG1vZCksIGkgPSAwOyBpIDwgay5sZW5ndGg7IGkrKykgaWYgKGtbaV0gIT09ICJkZWZhdWx0IikgX19jcmVhdGVCaW5kaW5nKHJlc3VsdCwgbW9kLCBrW2ldKTsKICAgICAgICB9CiAgICAgICAgX19zZXRNb2R1bGVEZWZhdWx0KHJlc3VsdCwgbW9kKTsKICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9OwogICAgfSgpOwogICAgdmFyIF9fZXhwb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXhwb3J0U3RhciB8fCBmdW5jdGlvbihtLCBleHBvcnRzMykgewogICAgICBmb3IgKHZhciBwIGluIG0pIGlmIChwICE9PSAiZGVmYXVsdCIgJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChleHBvcnRzMywgcCkpIF9fY3JlYXRlQmluZGluZyhleHBvcnRzMywgbSwgcCk7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zdHJpbmdzID0gZXhwb3J0czIudGFncyA9IHZvaWQgMDsKICAgIHZhciB0YWdzID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfbGl0ZXJhbHMoKSk7CiAgICBleHBvcnRzMi50YWdzID0gdGFnczsKICAgIHZhciBzdHJpbmdzMyA9IF9faW1wb3J0U3RhcihyZXF1aXJlX3N0cmluZ3MoKSk7CiAgICBleHBvcnRzMi5zdHJpbmdzID0gc3RyaW5nczM7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9vYmplY3QoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdGVtcGxhdGUoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfcGFydGlhbGx5X29yZGVyZWRfc2V0KCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3ByaW9yaXR5X3F1ZXVlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2xhbmcoKSwgZXhwb3J0czIpOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS92aXNpdG9yLmpzCnZhciByZXF1aXJlX3Zpc2l0b3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvdmlzaXRvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudmlzaXRKc29uID0gdmlzaXRKc29uOwogICAgZXhwb3J0czIudmlzaXRKc29uU2NoZW1hID0gdmlzaXRKc29uU2NoZW1hOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgcG9pbnRlcl8xID0gcmVxdWlyZV9wb2ludGVyKCk7CiAgICBmdW5jdGlvbiBfZ2V0T2JqZWN0U3ViU2NoZW1hKHNjaGVtYSwga2V5KSB7CiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hICE9PSAib2JqZWN0IiB8fCBzY2hlbWEgPT09IG51bGwpIHsKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICB9CiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hLnByb3BlcnRpZXMgPT0gIm9iamVjdCIgfHwgc2NoZW1hLnR5cGUgPT0gIm9iamVjdCIpIHsKICAgICAgICBpZiAodHlwZW9mIHNjaGVtYS5wcm9wZXJ0aWVzID09ICJvYmplY3QiICYmIHR5cGVvZiBzY2hlbWEucHJvcGVydGllc1trZXldID09ICJvYmplY3QiKSB7CiAgICAgICAgICByZXR1cm4gc2NoZW1hLnByb3BlcnRpZXNba2V5XTsKICAgICAgICB9CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEuYWRkaXRpb25hbFByb3BlcnRpZXMgPT0gIm9iamVjdCIpIHsKICAgICAgICAgIHJldHVybiBzY2hlbWEuYWRkaXRpb25hbFByb3BlcnRpZXM7CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH0KICAgICAgaWYgKHR5cGVvZiBzY2hlbWEuaXRlbXMgPT0gIm9iamVjdCIgfHwgc2NoZW1hLnR5cGUgPT0gImFycmF5IikgewogICAgICAgIHJldHVybiB0eXBlb2Ygc2NoZW1hLml0ZW1zID09ICJvYmplY3QiID8gc2NoZW1hLml0ZW1zIDogdm9pZCAwOwogICAgICB9CiAgICAgIHJldHVybiB2b2lkIDA7CiAgICB9CiAgICBmdW5jdGlvbiBfdmlzaXRKc29uUmVjdXJzaXZlKGpzb24sIHZpc2l0b3IsIHB0ciwgc2NoZW1hLCByZWZSZXNvbHZlciwgY29udGV4dCwgcm9vdCkgewogICAgICBpZiAoc2NoZW1hID09PSB0cnVlIHx8IHNjaGVtYSA9PT0gZmFsc2UpIHsKICAgICAgICBzY2hlbWEgPSB2b2lkIDA7CiAgICAgIH0KICAgICAgaWYgKHNjaGVtYSAmJiBzY2hlbWEuaGFzT3duUHJvcGVydHkoIiRyZWYiKSAmJiB0eXBlb2Ygc2NoZW1hWyIkcmVmIl0gPT0gInN0cmluZyIpIHsKICAgICAgICBpZiAocmVmUmVzb2x2ZXIpIHsKICAgICAgICAgIGNvbnN0IHJlc29sdmVkID0gcmVmUmVzb2x2ZXIoc2NoZW1hWyIkcmVmIl0sIGNvbnRleHQpOwogICAgICAgICAgc2NoZW1hID0gcmVzb2x2ZWQuc2NoZW1hOwogICAgICAgICAgY29udGV4dCA9IHJlc29sdmVkLmNvbnRleHQ7CiAgICAgICAgfQogICAgICB9CiAgICAgIGNvbnN0IHZhbHVlID0gdmlzaXRvcihqc29uLCBwdHIsIHNjaGVtYSwgcm9vdCk7CiAgICAgIHJldHVybiAoKDAsIHJ4anNfMS5pc09ic2VydmFibGUpKHZhbHVlKSA/IHZhbHVlIDogKDAsIHJ4anNfMS5vZikodmFsdWUpKS5waXBlKCgwLCByeGpzXzEuY29uY2F0TWFwKSgodmFsdWUyKSA9PiB7CiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUyKSkgewogICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSgoMCwgcnhqc18xLmZyb20pKHZhbHVlMikucGlwZSgoMCwgcnhqc18xLm1lcmdlTWFwKSgoaXRlbSwgaSkgPT4gewogICAgICAgICAgICByZXR1cm4gX3Zpc2l0SnNvblJlY3Vyc2l2ZShpdGVtLCB2aXNpdG9yLCAoMCwgcG9pbnRlcl8xLmpvaW5Kc29uUG9pbnRlcikocHRyLCAiIiArIGkpLCBfZ2V0T2JqZWN0U3ViU2NoZW1hKHNjaGVtYSwgIiIgKyBpKSwgcmVmUmVzb2x2ZXIsIGNvbnRleHQsIHJvb3QgfHwgdmFsdWUyKS5waXBlKCgwLCByeGpzXzEudGFwKSgoeCkgPT4gdmFsdWUyW2ldID0geCkpOwogICAgICAgICAgfSksICgwLCByeGpzXzEuaWdub3JlRWxlbWVudHMpKCkpLCAoMCwgcnhqc18xLm9mKSh2YWx1ZTIpKTsKICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiB2YWx1ZTIgPT0gIm9iamVjdCIgJiYgdmFsdWUyICE9PSBudWxsKSB7CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5jb25jYXQpKCgwLCByeGpzXzEuZnJvbSkoT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXModmFsdWUyKSkucGlwZSgoMCwgcnhqc18xLm1lcmdlTWFwKSgoa2V5KSA9PiB7CiAgICAgICAgICAgIHJldHVybiBfdmlzaXRKc29uUmVjdXJzaXZlKHZhbHVlMltrZXldLCB2aXNpdG9yLCAoMCwgcG9pbnRlcl8xLmpvaW5Kc29uUG9pbnRlcikocHRyLCBrZXkpLCBfZ2V0T2JqZWN0U3ViU2NoZW1hKHNjaGVtYSwga2V5KSwgcmVmUmVzb2x2ZXIsIGNvbnRleHQsIHJvb3QgfHwgdmFsdWUyKS5waXBlKCgwLCByeGpzXzEudGFwKSgoeCkgPT4gewogICAgICAgICAgICAgIGNvbnN0IGRlc2NyaXB0b3IgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHZhbHVlMiwga2V5KTsKICAgICAgICAgICAgICBpZiAoZGVzY3JpcHRvciAmJiBkZXNjcmlwdG9yLndyaXRhYmxlICYmIHZhbHVlMltrZXldICE9PSB4KSB7CiAgICAgICAgICAgICAgICB2YWx1ZTJba2V5XSA9IHg7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KSk7CiAgICAgICAgICB9KSwgKDAsIHJ4anNfMS5pZ25vcmVFbGVtZW50cykoKSksICgwLCByeGpzXzEub2YpKHZhbHVlMikpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikodmFsdWUyKTsKICAgICAgICB9CiAgICAgIH0pKTsKICAgIH0KICAgIGZ1bmN0aW9uIHZpc2l0SnNvbihqc29uLCB2aXNpdG9yLCBzY2hlbWEsIHJlZlJlc29sdmVyLCBjb250ZXh0KSB7CiAgICAgIHJldHVybiBfdmlzaXRKc29uUmVjdXJzaXZlKGpzb24sIHZpc2l0b3IsICgwLCBwb2ludGVyXzEuYnVpbGRKc29uUG9pbnRlcikoW10pLCBzY2hlbWEsIHJlZlJlc29sdmVyLCBjb250ZXh0KTsKICAgIH0KICAgIGZ1bmN0aW9uIHZpc2l0SnNvblNjaGVtYShzY2hlbWEsIHZpc2l0b3IpIHsKICAgICAgaWYgKHNjaGVtYSA9PT0gZmFsc2UgfHwgc2NoZW1hID09PSB0cnVlKSB7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIGNvbnN0IGtleXdvcmRzID0gewogICAgICAgIGFkZGl0aW9uYWxJdGVtczogdHJ1ZSwKICAgICAgICBpdGVtczogdHJ1ZSwKICAgICAgICBjb250YWluczogdHJ1ZSwKICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogdHJ1ZSwKICAgICAgICBwcm9wZXJ0eU5hbWVzOiB0cnVlLAogICAgICAgIG5vdDogdHJ1ZQogICAgICB9OwogICAgICBjb25zdCBhcnJheUtleXdvcmRzID0gewogICAgICAgIGl0ZW1zOiB0cnVlLAogICAgICAgIGFsbE9mOiB0cnVlLAogICAgICAgIGFueU9mOiB0cnVlLAogICAgICAgIG9uZU9mOiB0cnVlCiAgICAgIH07CiAgICAgIGNvbnN0IHByb3BzS2V5d29yZHMgPSB7CiAgICAgICAgZGVmaW5pdGlvbnM6IHRydWUsCiAgICAgICAgcHJvcGVydGllczogdHJ1ZSwKICAgICAgICBwYXR0ZXJuUHJvcGVydGllczogdHJ1ZSwKICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogdHJ1ZSwKICAgICAgICBkZXBlbmRlbmNpZXM6IHRydWUsCiAgICAgICAgaXRlbXM6IHRydWUKICAgICAgfTsKICAgICAgZnVuY3Rpb24gX3RyYXZlcnNlKHNjaGVtYTIsIGpzb25QdHIsIHJvb3RTY2hlbWEsIHBhcmVudFNjaGVtYSwga2V5SW5kZXgpIHsKICAgICAgICBpZiAoc2NoZW1hMiAmJiB0eXBlb2Ygc2NoZW1hMiA9PSAib2JqZWN0IiAmJiAhQXJyYXkuaXNBcnJheShzY2hlbWEyKSkgewogICAgICAgICAgdmlzaXRvcihzY2hlbWEyLCBqc29uUHRyLCBwYXJlbnRTY2hlbWEsIGtleUluZGV4KTsKICAgICAgICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKHNjaGVtYTIpKSB7CiAgICAgICAgICAgIGNvbnN0IHNjaCA9IHNjaGVtYTJba2V5XTsKICAgICAgICAgICAgaWYgKGtleSBpbiBwcm9wc0tleXdvcmRzKSB7CiAgICAgICAgICAgICAgaWYgKHNjaCAmJiB0eXBlb2Ygc2NoID09ICJvYmplY3QiKSB7CiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IHByb3Agb2YgT2JqZWN0LmtleXMoc2NoKSkgewogICAgICAgICAgICAgICAgICBfdHJhdmVyc2Uoc2NoW3Byb3BdLCAoMCwgcG9pbnRlcl8xLmpvaW5Kc29uUG9pbnRlcikoanNvblB0ciwga2V5LCBwcm9wKSwgcm9vdFNjaGVtYSwgc2NoZW1hMiwgcHJvcCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgaWYgKGtleSBpbiBrZXl3b3JkcykgewogICAgICAgICAgICAgIF90cmF2ZXJzZShzY2gsICgwLCBwb2ludGVyXzEuam9pbkpzb25Qb2ludGVyKShqc29uUHRyLCBrZXkpLCByb290U2NoZW1hLCBzY2hlbWEyLCBrZXkpOwogICAgICAgICAgICB9IGVsc2UgaWYgKGtleSBpbiBhcnJheUtleXdvcmRzKSB7CiAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoc2NoKSkgewogICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzY2gubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgICAgICAgX3RyYXZlcnNlKHNjaFtpXSwgKDAsIHBvaW50ZXJfMS5qb2luSnNvblBvaW50ZXIpKGpzb25QdHIsIGtleSwgIiIgKyBpKSwgcm9vdFNjaGVtYSwgc2NoLCAiIiArIGkpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KHNjaCkpIHsKICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNjaC5sZW5ndGg7IGkrKykgewogICAgICAgICAgICAgICAgX3RyYXZlcnNlKHNjaFtpXSwgKDAsIHBvaW50ZXJfMS5qb2luSnNvblBvaW50ZXIpKGpzb25QdHIsIGtleSwgIiIgKyBpKSwgcm9vdFNjaGVtYSwgc2NoLCAiIiArIGkpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgICBfdHJhdmVyc2Uoc2NoZW1hLCAoMCwgcG9pbnRlcl8xLmJ1aWxkSnNvblBvaW50ZXIpKFtdKSwgc2NoZW1hKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvcmVnaXN0cnkuanMKdmFyIHJlcXVpcmVfcmVnaXN0cnkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvcmVnaXN0cnkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19zZXRNb2R1bGVEZWZhdWx0ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zZXRNb2R1bGVEZWZhdWx0IHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgdikgewogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgImRlZmF1bHQiLCB7IGVudW1lcmFibGU6IHRydWUsIHZhbHVlOiB2IH0pOwogICAgfSA6IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgb1siZGVmYXVsdCJdID0gdjsKICAgIH0pOwogICAgdmFyIF9faW1wb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9faW1wb3J0U3RhciB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBvd25LZXlzID0gZnVuY3Rpb24obykgewogICAgICAgIG93bktleXMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyB8fCBmdW5jdGlvbihvMikgewogICAgICAgICAgdmFyIGFyID0gW107CiAgICAgICAgICBmb3IgKHZhciBrIGluIG8yKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG8yLCBrKSkgYXJbYXIubGVuZ3RoXSA9IGs7CiAgICAgICAgICByZXR1cm4gYXI7CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gb3duS2V5cyhvKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKG1vZCkgewogICAgICAgIGlmIChtb2QgJiYgbW9kLl9fZXNNb2R1bGUpIHJldHVybiBtb2Q7CiAgICAgICAgdmFyIHJlc3VsdCA9IHt9OwogICAgICAgIGlmIChtb2QgIT0gbnVsbCkgewogICAgICAgICAgZm9yICh2YXIgayA9IG93bktleXMobW9kKSwgaSA9IDA7IGkgPCBrLmxlbmd0aDsgaSsrKSBpZiAoa1tpXSAhPT0gImRlZmF1bHQiKSBfX2NyZWF0ZUJpbmRpbmcocmVzdWx0LCBtb2QsIGtbaV0pOwogICAgICAgIH0KICAgICAgICBfX3NldE1vZHVsZURlZmF1bHQocmVzdWx0LCBtb2QpOwogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH07CiAgICB9KCk7CiAgICB2YXIgX19pbXBvcnREZWZhdWx0ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19pbXBvcnREZWZhdWx0IHx8IGZ1bmN0aW9uKG1vZCkgewogICAgICByZXR1cm4gbW9kICYmIG1vZC5fX2VzTW9kdWxlID8gbW9kIDogeyAiZGVmYXVsdCI6IG1vZCB9OwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQ29yZVNjaGVtYVJlZ2lzdHJ5ID0gZXhwb3J0czIuU2NoZW1hVmFsaWRhdGlvbkV4Y2VwdGlvbiA9IHZvaWQgMDsKICAgIHZhciBhanZfMSA9IF9faW1wb3J0RGVmYXVsdChyZXF1aXJlX2FqdigpKTsKICAgIHZhciBhanZfZm9ybWF0c18xID0gX19pbXBvcnREZWZhdWx0KHJlcXVpcmVfZGlzdCgpKTsKICAgIHZhciBodHRwID0gX19pbXBvcnRTdGFyKHJlcXVpcmUoImh0dHAiKSk7CiAgICB2YXIgaHR0cHMgPSBfX2ltcG9ydFN0YXIocmVxdWlyZSgiaHR0cHMiKSk7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBVcmwgPSBfX2ltcG9ydFN0YXIocmVxdWlyZSgidXJsIikpOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24oKTsKICAgIHZhciB1dGlsc18xID0gcmVxdWlyZV91dGlsczMoKTsKICAgIHZhciB1dGlsc18yID0gcmVxdWlyZV91dGlscygpOwogICAgdmFyIHV0aWxpdHlfMSA9IHJlcXVpcmVfdXRpbGl0eSgpOwogICAgdmFyIHZpc2l0b3JfMSA9IHJlcXVpcmVfdmlzaXRvcigpOwogICAgdmFyIFNjaGVtYVZhbGlkYXRpb25FeGNlcHRpb24gPSBjbGFzcyBfU2NoZW1hVmFsaWRhdGlvbkV4Y2VwdGlvbiBleHRlbmRzIGV4Y2VwdGlvbl8xLkJhc2VFeGNlcHRpb24gewogICAgICBlcnJvcnM7CiAgICAgIGNvbnN0cnVjdG9yKGVycm9ycywgYmFzZU1lc3NhZ2UgPSAiU2NoZW1hIHZhbGlkYXRpb24gZmFpbGVkIHdpdGggdGhlIGZvbGxvd2luZyBlcnJvcnM6IikgewogICAgICAgIGlmICghZXJyb3JzIHx8IGVycm9ycy5sZW5ndGggPT09IDApIHsKICAgICAgICAgIHN1cGVyKCJTY2hlbWEgdmFsaWRhdGlvbiBmYWlsZWQuIik7CiAgICAgICAgICB0aGlzLmVycm9ycyA9IFtdOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBjb25zdCBtZXNzYWdlcyA9IF9TY2hlbWFWYWxpZGF0aW9uRXhjZXB0aW9uLmNyZWF0ZU1lc3NhZ2VzKGVycm9ycyk7CiAgICAgICAgc3VwZXIoYCR7YmFzZU1lc3NhZ2V9CiAgJHttZXNzYWdlcy5qb2luKCJcbiAgIil9YCk7CiAgICAgICAgdGhpcy5lcnJvcnMgPSBlcnJvcnM7CiAgICAgIH0KICAgICAgc3RhdGljIGNyZWF0ZU1lc3NhZ2VzKGVycm9ycykgewogICAgICAgIGlmICghZXJyb3JzIHx8IGVycm9ycy5sZW5ndGggPT09IDApIHsKICAgICAgICAgIHJldHVybiBbXTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbWVzc2FnZXMgPSBlcnJvcnMubWFwKChlcnIpID0+IHsKICAgICAgICAgIGxldCBtZXNzYWdlID0gYERhdGEgcGF0aCAke0pTT04uc3RyaW5naWZ5KGVyci5pbnN0YW5jZVBhdGgpfSAke2Vyci5tZXNzYWdlfWA7CiAgICAgICAgICBpZiAoZXJyLnBhcmFtcykgewogICAgICAgICAgICBzd2l0Y2ggKGVyci5rZXl3b3JkKSB7CiAgICAgICAgICAgICAgY2FzZSAiYWRkaXRpb25hbFByb3BlcnRpZXMiOgogICAgICAgICAgICAgICAgbWVzc2FnZSArPSBgKCR7ZXJyLnBhcmFtcy5hZGRpdGlvbmFsUHJvcGVydHl9KWA7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlICJlbnVtIjoKICAgICAgICAgICAgICAgIG1lc3NhZ2UgKz0gYC4gQWxsb3dlZCB2YWx1ZXMgYXJlOiAke2Vyci5wYXJhbXMuYWxsb3dlZFZhbHVlcz8ubWFwKCh2KSA9PiBgIiR7dn0iYCkuam9pbigiLCAiKX1gOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBtZXNzYWdlICsgIi4iOwogICAgICAgIH0pOwogICAgICAgIHJldHVybiBtZXNzYWdlczsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNjaGVtYVZhbGlkYXRpb25FeGNlcHRpb24gPSBTY2hlbWFWYWxpZGF0aW9uRXhjZXB0aW9uOwogICAgdmFyIENvcmVTY2hlbWFSZWdpc3RyeSA9IGNsYXNzIF9Db3JlU2NoZW1hUmVnaXN0cnkgewogICAgICBfYWp2OwogICAgICBfdXJpQ2FjaGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICBfdXJpSGFuZGxlcnMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfcHJlID0gbmV3IHV0aWxzXzEuUGFydGlhbGx5T3JkZXJlZFNldCgpOwogICAgICBfcG9zdCA9IG5ldyB1dGlsc18xLlBhcnRpYWxseU9yZGVyZWRTZXQoKTsKICAgICAgX2N1cnJlbnRDb21waWxhdGlvblNjaGVtYUluZm87CiAgICAgIF9zbWFydERlZmF1bHRLZXl3b3JkID0gZmFsc2U7CiAgICAgIF9wcm9tcHRQcm92aWRlcjsKICAgICAgX3NvdXJjZU1hcCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIGNvbnN0cnVjdG9yKGZvcm1hdHMgPSBbXSkgewogICAgICAgIHRoaXMuX2FqdiA9IG5ldyBhanZfMS5kZWZhdWx0KHsKICAgICAgICAgIHN0cmljdDogZmFsc2UsCiAgICAgICAgICBsb2FkU2NoZW1hOiAodXJpKSA9PiB0aGlzLl9mZXRjaCh1cmkpLAogICAgICAgICAgcGFzc0NvbnRleHQ6IHRydWUKICAgICAgICB9KTsKICAgICAgICAoMCwgYWp2X2Zvcm1hdHNfMS5kZWZhdWx0KSh0aGlzLl9hanYpOwogICAgICAgIGZvciAoY29uc3QgZm9ybWF0IG9mIGZvcm1hdHMpIHsKICAgICAgICAgIHRoaXMuYWRkRm9ybWF0KGZvcm1hdCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGFzeW5jIF9mZXRjaCh1cmkpIHsKICAgICAgICBjb25zdCBtYXliZVNjaGVtYSA9IHRoaXMuX3VyaUNhY2hlLmdldCh1cmkpOwogICAgICAgIGlmIChtYXliZVNjaGVtYSkgewogICAgICAgICAgcmV0dXJuIG1heWJlU2NoZW1hOwogICAgICAgIH0KICAgICAgICBmb3IgKGNvbnN0IGhhbmRsZXIgb2YgdGhpcy5fdXJpSGFuZGxlcnMpIHsKICAgICAgICAgIGxldCBoYW5kbGVyUmVzdWx0ID0gaGFuZGxlcih1cmkpOwogICAgICAgICAgaWYgKGhhbmRsZXJSZXN1bHQgPT09IG51bGwgfHwgaGFuZGxlclJlc3VsdCA9PT0gdm9pZCAwKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCgwLCByeGpzXzEuaXNPYnNlcnZhYmxlKShoYW5kbGVyUmVzdWx0KSkgewogICAgICAgICAgICBoYW5kbGVyUmVzdWx0ID0gKDAsIHJ4anNfMS5sYXN0VmFsdWVGcm9tKShoYW5kbGVyUmVzdWx0KTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHZhbHVlID0gYXdhaXQgaGFuZGxlclJlc3VsdDsKICAgICAgICAgIHRoaXMuX3VyaUNhY2hlLnNldCh1cmksIHZhbHVlKTsKICAgICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHsKICAgICAgICAgIGNvbnN0IHVybDMgPSBuZXcgVXJsLlVSTCh1cmkpOwogICAgICAgICAgY29uc3QgY2xpZW50ID0gdXJsMy5wcm90b2NvbCA9PT0gImh0dHBzOiIgPyBodHRwcyA6IGh0dHA7CiAgICAgICAgICBjbGllbnQuZ2V0KHVybDMsIChyZXMpID0+IHsKICAgICAgICAgICAgaWYgKCFyZXMuc3RhdHVzQ29kZSB8fCByZXMuc3RhdHVzQ29kZSA+PSAzMDApIHsKICAgICAgICAgICAgICByZXMucmVzdW1lKCk7CiAgICAgICAgICAgICAgcmVqZWN0KG5ldyBFcnJvcihgUmVxdWVzdCBmYWlsZWQuIFN0YXR1cyBDb2RlOiAke3Jlcy5zdGF0dXNDb2RlfWApKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICByZXMuc2V0RW5jb2RpbmcoInV0ZjgiKTsKICAgICAgICAgICAgICBsZXQgZGF0YSA9ICIiOwogICAgICAgICAgICAgIHJlcy5vbigiZGF0YSIsIChjaHVuaykgPT4gewogICAgICAgICAgICAgICAgZGF0YSArPSBjaHVuazsKICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICByZXMub24oImVuZCIsICgpID0+IHsKICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgIGNvbnN0IGpzb24gPSBKU09OLnBhcnNlKGRhdGEpOwogICAgICAgICAgICAgICAgICB0aGlzLl91cmlDYWNoZS5zZXQodXJpLCBqc29uKTsKICAgICAgICAgICAgICAgICAgcmVzb2x2ZShqc29uKTsKICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgICAgICAgICByZWplY3QoZXJyKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCBhIHRyYW5zZm9ybWF0aW9uIHN0ZXAgYmVmb3JlIHRoZSB2YWxpZGF0aW9uIG9mIGFueSBKc29uLgogICAgICAgKiBAcGFyYW0ge0pzb25WaXNpdG9yfSB2aXNpdG9yIFRoZSB2aXNpdG9yIHRvIHRyYW5zZm9ybSBldmVyeSB2YWx1ZS4KICAgICAgICogQHBhcmFtIHtKc29uVmlzaXRvcltdfSBkZXBzIEEgbGlzdCBvZiBvdGhlciB2aXNpdG9ycyB0byBydW4gYmVmb3JlLgogICAgICAgKi8KICAgICAgYWRkUHJlVHJhbnNmb3JtKHZpc2l0b3IsIGRlcHMpIHsKICAgICAgICB0aGlzLl9wcmUuYWRkKHZpc2l0b3IsIGRlcHMpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBBZGQgYSB0cmFuc2Zvcm1hdGlvbiBzdGVwIGFmdGVyIHRoZSB2YWxpZGF0aW9uIG9mIGFueSBKc29uLiBUaGUgSlNPTiB3aWxsIG5vdCBiZSB2YWxpZGF0ZWQKICAgICAgICogYWZ0ZXIgdGhlIFBPU1QsIHNvIGlmIHRyYW5zZm9ybWF0aW9ucyBhcmUgbm90IGNvbXBhdGlibGUgd2l0aCB0aGUgU2NoZW1hIGl0IHdpbGwgbm90IHJlc3VsdAogICAgICAgKiBpbiBhbiBlcnJvci4KICAgICAgICogQHBhcmFtIHtKc29uVmlzaXRvcn0gdmlzaXRvciBUaGUgdmlzaXRvciB0byB0cmFuc2Zvcm0gZXZlcnkgdmFsdWUuCiAgICAgICAqIEBwYXJhbSB7SnNvblZpc2l0b3JbXX0gZGVwcyBBIGxpc3Qgb2Ygb3RoZXIgdmlzaXRvcnMgdG8gcnVuIGJlZm9yZS4KICAgICAgICovCiAgICAgIGFkZFBvc3RUcmFuc2Zvcm0odmlzaXRvciwgZGVwcykgewogICAgICAgIHRoaXMuX3Bvc3QuYWRkKHZpc2l0b3IsIGRlcHMpOwogICAgICB9CiAgICAgIF9yZXNvbHZlcihyZWYsIHZhbGlkYXRlKSB7CiAgICAgICAgaWYgKCF2YWxpZGF0ZSB8fCAhcmVmKSB7CiAgICAgICAgICByZXR1cm4ge307CiAgICAgICAgfQogICAgICAgIGNvbnN0IHNjaGVtYSA9IHZhbGlkYXRlLnNjaGVtYUVudi5yb290LnNjaGVtYTsKICAgICAgICBjb25zdCBpZCA9IHR5cGVvZiBzY2hlbWEgPT09ICJvYmplY3QiID8gc2NoZW1hLiRpZCA6IG51bGw7CiAgICAgICAgbGV0IGZ1bGxSZWZlcmVuY2UgPSByZWY7CiAgICAgICAgaWYgKHR5cGVvZiBpZCA9PT0gInN0cmluZyIpIHsKICAgICAgICAgIGZ1bGxSZWZlcmVuY2UgPSBVcmwucmVzb2x2ZShpZCwgcmVmKTsKICAgICAgICAgIGlmIChyZWYuc3RhcnRzV2l0aCgiIyIpKSB7CiAgICAgICAgICAgIGZ1bGxSZWZlcmVuY2UgPSBpZCArIGZ1bGxSZWZlcmVuY2U7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IHJlc29sdmVkU2NoZW1hID0gdGhpcy5fYWp2LmdldFNjaGVtYShmdWxsUmVmZXJlbmNlKTsKICAgICAgICByZXR1cm4gewogICAgICAgICAgY29udGV4dDogcmVzb2x2ZWRTY2hlbWE/LnNjaGVtYUVudi52YWxpZGF0ZSwKICAgICAgICAgIHNjaGVtYTogcmVzb2x2ZWRTY2hlbWE/LnNjaGVtYQogICAgICAgIH07CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEZsYXR0ZW4gdGhlIFNjaGVtYSwgcmVzb2x2aW5nIGFuZCByZXBsYWNpbmcgYWxsIHRoZSByZWZzLiBNYWtlcyBpdCBpbnRvIGEgc3luY2hyb25vdXMgc2NoZW1hCiAgICAgICAqIHRoYXQgaXMgYWxzbyBlYXNpZXIgdG8gdHJhdmVyc2UuIERvZXMgbm90IGNhY2hlIHRoZSByZXN1bHQuCiAgICAgICAqCiAgICAgICAqIFByb2R1Y2luZyBhIGZsYXR0ZW4gc2NoZW1hIGRvY3VtZW50IGRvZXMgbm90IGluIGFsbCBjYXNlcyBwcm9kdWNlIGEgc2NoZW1hIHdpdGggaWRlbnRpY2FsIGJlaGF2aW9yIHRvIHRoZSBvcmlnaW5hbC4KICAgICAgICogU2VlOiBodHRwczovL2pzb24tc2NoZW1hLm9yZy9kcmFmdC8yMDE5LTA5L2pzb24tc2NoZW1hLWNvcmUuaHRtbCNyZmMuYXBwZW5kaXguQi4yCiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBzY2hlbWEgVGhlIHNjaGVtYSBvciBVUkkgdG8gZmxhdHRlbi4KICAgICAgICogQHJldHVybnMgQW4gT2JzZXJ2YWJsZSBvZiB0aGUgZmxhdHRlbmVkIHNjaGVtYSBvYmplY3QuCiAgICAgICAqIEBwcml2YXRlIHNpbmNlIDExLjIgd2l0aG91dCByZXBsYWNlbWVudC4KICAgICAgICovCiAgICAgIGFzeW5jIFx1MDI3NWZsYXR0ZW4oc2NoZW1hKSB7CiAgICAgICAgdGhpcy5fYWp2LnJlbW92ZVNjaGVtYShzY2hlbWEpOwogICAgICAgIHRoaXMuX2N1cnJlbnRDb21waWxhdGlvblNjaGVtYUluZm8gPSB2b2lkIDA7CiAgICAgICAgY29uc3QgdmFsaWRhdGUgPSBhd2FpdCB0aGlzLl9hanYuY29tcGlsZUFzeW5jKHNjaGVtYSk7CiAgICAgICAgY29uc3Qgc2VsZjIgPSB0aGlzOwogICAgICAgIGZ1bmN0aW9uIHZpc2l0b3IoY3VycmVudCwgcG9pbnRlciwgcGFyZW50U2NoZW1hLCBpbmRleCkgewogICAgICAgICAgaWYgKGN1cnJlbnQgJiYgcGFyZW50U2NoZW1hICYmIGluZGV4ICYmICgwLCB1dGlsc18yLmlzSnNvbk9iamVjdCkoY3VycmVudCkgJiYgT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGN1cnJlbnQsICIkcmVmIikgJiYgdHlwZW9mIGN1cnJlbnRbIiRyZWYiXSA9PSAic3RyaW5nIikgewogICAgICAgICAgICBjb25zdCByZXNvbHZlZCA9IHNlbGYyLl9yZXNvbHZlcihjdXJyZW50WyIkcmVmIl0sIHZhbGlkYXRlKTsKICAgICAgICAgICAgaWYgKHJlc29sdmVkLnNjaGVtYSkgewogICAgICAgICAgICAgIHBhcmVudFNjaGVtYVtpbmRleF0gPSByZXNvbHZlZC5zY2hlbWE7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY29uc3Qgc2NoZW1hQ29weSA9ICgwLCB1dGlsc18xLmRlZXBDb3B5KSh2YWxpZGF0ZS5zY2hlbWEpOwogICAgICAgICgwLCB2aXNpdG9yXzEudmlzaXRKc29uU2NoZW1hKShzY2hlbWFDb3B5LCB2aXNpdG9yKTsKICAgICAgICByZXR1cm4gc2NoZW1hQ29weTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ29tcGlsZSBhbmQgcmV0dXJuIGEgdmFsaWRhdGlvbiBmdW5jdGlvbiBmb3IgdGhlIFNjaGVtYS4KICAgICAgICoKICAgICAgICogQHBhcmFtIHNjaGVtYSBUaGUgc2NoZW1hIHRvIHZhbGlkYXRlLiBJZiBhIHN0cmluZywgd2lsbCBmZXRjaCB0aGUgc2NoZW1hIGJlZm9yZSBjb21waWxpbmcgaXQKICAgICAgICogKHVzaW5nIHNjaGVtYSBhcyBhIFVSSSkuCiAgICAgICAqLwogICAgICBhc3luYyBjb21waWxlKHNjaGVtYSkgewogICAgICAgIGNvbnN0IHZhbGlkYXRlID0gYXdhaXQgdGhpcy5fY29tcGlsZShzY2hlbWEpOwogICAgICAgIHJldHVybiAodmFsdWUsIG9wdGlvbnMpID0+IHZhbGlkYXRlKHZhbHVlLCBvcHRpb25zKTsKICAgICAgfQogICAgICBhc3luYyBfY29tcGlsZShzY2hlbWEpIHsKICAgICAgICBpZiAodHlwZW9mIHNjaGVtYSA9PT0gImJvb2xlYW4iKSB7CiAgICAgICAgICByZXR1cm4gYXN5bmMgKGRhdGEpID0+ICh7IHN1Y2Nlc3M6IHNjaGVtYSwgZGF0YSB9KTsKICAgICAgICB9CiAgICAgICAgY29uc3Qgc2NoZW1hSW5mbyA9IHsKICAgICAgICAgIHNtYXJ0RGVmYXVsdFJlY29yZDogLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKSwKICAgICAgICAgIHByb21wdERlZmluaXRpb25zOiBbXQogICAgICAgIH07CiAgICAgICAgdGhpcy5fYWp2LnJlbW92ZVNjaGVtYShzY2hlbWEpOwogICAgICAgIGxldCB2YWxpZGF0b3I7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIHRoaXMuX2N1cnJlbnRDb21waWxhdGlvblNjaGVtYUluZm8gPSBzY2hlbWFJbmZvOwogICAgICAgICAgdmFsaWRhdG9yID0gdGhpcy5fYWp2LmNvbXBpbGUoc2NoZW1hKTsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICBpZiAoIShlIGluc3RhbmNlb2YgYWp2XzEuZGVmYXVsdC5NaXNzaW5nUmVmRXJyb3IpKSB7CiAgICAgICAgICAgIHRocm93IGU7CiAgICAgICAgICB9CiAgICAgICAgICB2YWxpZGF0b3IgPSBhd2FpdCB0aGlzLl9hanYuY29tcGlsZUFzeW5jKHNjaGVtYSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIHRoaXMuX2N1cnJlbnRDb21waWxhdGlvblNjaGVtYUluZm8gPSB2b2lkIDA7CiAgICAgICAgfQogICAgICAgIHJldHVybiBhc3luYyAoZGF0YSwgb3B0aW9ucykgPT4gewogICAgICAgICAgY29uc3QgdmFsaWRhdGlvbk9wdGlvbnMgPSB7CiAgICAgICAgICAgIHdpdGhQcm9tcHRzOiB0cnVlLAogICAgICAgICAgICBhcHBseVBvc3RUcmFuc2Zvcm1zOiB0cnVlLAogICAgICAgICAgICBhcHBseVByZVRyYW5zZm9ybXM6IHRydWUsCiAgICAgICAgICAgIC4uLm9wdGlvbnMKICAgICAgICAgIH07CiAgICAgICAgICBjb25zdCB2YWxpZGF0aW9uQ29udGV4dCA9IHsKICAgICAgICAgICAgcHJvbXB0RmllbGRzV2l0aFZhbHVlOiAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpCiAgICAgICAgICB9OwogICAgICAgICAgaWYgKHZhbGlkYXRpb25PcHRpb25zLmFwcGx5UHJlVHJhbnNmb3JtcykgewogICAgICAgICAgICBmb3IgKGNvbnN0IHZpc2l0b3Igb2YgdGhpcy5fcHJlLnZhbHVlcygpKSB7CiAgICAgICAgICAgICAgZGF0YSA9IGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkoKDAsIHZpc2l0b3JfMS52aXNpdEpzb24pKGRhdGEsIHZpc2l0b3IsIHNjaGVtYSwgdGhpcy5fcmVzb2x2ZXIuYmluZCh0aGlzKSwgdmFsaWRhdG9yKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGF3YWl0IHRoaXMuX2FwcGx5U21hcnREZWZhdWx0cyhkYXRhLCBzY2hlbWFJbmZvLnNtYXJ0RGVmYXVsdFJlY29yZCk7CiAgICAgICAgICBpZiAodmFsaWRhdGlvbk9wdGlvbnMud2l0aFByb21wdHMpIHsKICAgICAgICAgICAgY29uc3QgdmlzaXRvciA9ICh2YWx1ZSwgcG9pbnRlcikgPT4gewogICAgICAgICAgICAgIGlmICh2YWx1ZSAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgICB2YWxpZGF0aW9uQ29udGV4dC5wcm9tcHRGaWVsZHNXaXRoVmFsdWUuYWRkKHBvaW50ZXIpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgICAgICAgIH07CiAgICAgICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hID09PSAib2JqZWN0IikgewogICAgICAgICAgICAgIGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkoKDAsIHZpc2l0b3JfMS52aXNpdEpzb24pKGRhdGEsIHZpc2l0b3IsIHNjaGVtYSwgdGhpcy5fcmVzb2x2ZXIuYmluZCh0aGlzKSwgdmFsaWRhdG9yKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3QgZGVmaW5pdGlvbnMgPSBzY2hlbWFJbmZvLnByb21wdERlZmluaXRpb25zLmZpbHRlcigoZGVmKSA9PiAhdmFsaWRhdGlvbkNvbnRleHQucHJvbXB0RmllbGRzV2l0aFZhbHVlLmhhcyhkZWYuaWQpKTsKICAgICAgICAgICAgaWYgKGRlZmluaXRpb25zLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgICBhd2FpdCB0aGlzLl9hcHBseVByb21wdHMoZGF0YSwgZGVmaW5pdGlvbnMpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBjb25zdCBzdWNjZXNzID0gYXdhaXQgdmFsaWRhdG9yLmNhbGwodmFsaWRhdGlvbkNvbnRleHQsIGRhdGEpOwogICAgICAgICAgICBpZiAoIXN1Y2Nlc3MpIHsKICAgICAgICAgICAgICByZXR1cm4geyBkYXRhLCBzdWNjZXNzLCBlcnJvcnM6IHZhbGlkYXRvci5lcnJvcnMgPz8gW10gfTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICAgICAgaWYgKGVycm9yIGluc3RhbmNlb2YgYWp2XzEuZGVmYXVsdC5WYWxpZGF0aW9uRXJyb3IpIHsKICAgICAgICAgICAgICByZXR1cm4geyBkYXRhLCBzdWNjZXNzOiBmYWxzZSwgZXJyb3JzOiBlcnJvci5lcnJvcnMgfTsKICAgICAgICAgICAgfQogICAgICAgICAgICB0aHJvdyBlcnJvcjsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh2YWxpZGF0aW9uT3B0aW9ucy5hcHBseVBvc3RUcmFuc2Zvcm1zKSB7CiAgICAgICAgICAgIGZvciAoY29uc3QgdmlzaXRvciBvZiB0aGlzLl9wb3N0LnZhbHVlcygpKSB7CiAgICAgICAgICAgICAgZGF0YSA9IGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkoKDAsIHZpc2l0b3JfMS52aXNpdEpzb24pKGRhdGEsIHZpc2l0b3IsIHNjaGVtYSwgdGhpcy5fcmVzb2x2ZXIuYmluZCh0aGlzKSwgdmFsaWRhdG9yKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB7IGRhdGEsIHN1Y2Nlc3M6IHRydWUgfTsKICAgICAgICB9OwogICAgICB9CiAgICAgIGFkZEZvcm1hdChmb3JtYXQpIHsKICAgICAgICB0aGlzLl9hanYuYWRkRm9ybWF0KGZvcm1hdC5uYW1lLCBmb3JtYXQuZm9ybWF0dGVyKTsKICAgICAgfQogICAgICBhZGRTbWFydERlZmF1bHRQcm92aWRlcihzb3VyY2UsIHByb3ZpZGVyKSB7CiAgICAgICAgaWYgKHRoaXMuX3NvdXJjZU1hcC5oYXMoc291cmNlKSkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKHNvdXJjZSk7CiAgICAgICAgfQogICAgICAgIHRoaXMuX3NvdXJjZU1hcC5zZXQoc291cmNlLCBwcm92aWRlcik7CiAgICAgICAgaWYgKCF0aGlzLl9zbWFydERlZmF1bHRLZXl3b3JkKSB7CiAgICAgICAgICB0aGlzLl9zbWFydERlZmF1bHRLZXl3b3JkID0gdHJ1ZTsKICAgICAgICAgIHRoaXMuX2Fqdi5hZGRLZXl3b3JkKHsKICAgICAgICAgICAga2V5d29yZDogIiRkZWZhdWx0IiwKICAgICAgICAgICAgZXJyb3JzOiBmYWxzZSwKICAgICAgICAgICAgdmFsaWQ6IHRydWUsCiAgICAgICAgICAgIGNvbXBpbGU6IChzY2hlbWEsIF9wYXJlbnRTY2hlbWEsIGl0KSA9PiB7CiAgICAgICAgICAgICAgY29uc3QgY29tcGlsYXRpb25TY2hlbUluZm8gPSB0aGlzLl9jdXJyZW50Q29tcGlsYXRpb25TY2hlbWFJbmZvOwogICAgICAgICAgICAgIGlmIChjb21waWxhdGlvblNjaGVtSW5mbyA9PT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gKCkgPT4gdHJ1ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgY29uc3QgcGF0aEFycmF5ID0gdGhpcy5ub3JtYWxpemVEYXRhUGF0aEFycihpdCk7CiAgICAgICAgICAgICAgY29tcGlsYXRpb25TY2hlbUluZm8uc21hcnREZWZhdWx0UmVjb3JkLnNldChKU09OLnN0cmluZ2lmeShwYXRoQXJyYXkpLCBzY2hlbWEpOwogICAgICAgICAgICAgIHJldHVybiAoKSA9PiB0cnVlOwogICAgICAgICAgICB9LAogICAgICAgICAgICBtZXRhU2NoZW1hOiB7CiAgICAgICAgICAgICAgdHlwZTogIm9iamVjdCIsCiAgICAgICAgICAgICAgcHJvcGVydGllczogewogICAgICAgICAgICAgICAgIiRzb3VyY2UiOiB7IHR5cGU6ICJzdHJpbmciIH0KICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiB0cnVlLAogICAgICAgICAgICAgIHJlcXVpcmVkOiBbIiRzb3VyY2UiXQogICAgICAgICAgICB9CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmVnaXN0ZXJVcmlIYW5kbGVyKGhhbmRsZXIpIHsKICAgICAgICB0aGlzLl91cmlIYW5kbGVycy5hZGQoaGFuZGxlcik7CiAgICAgIH0KICAgICAgdXNlUHJvbXB0UHJvdmlkZXIocHJvdmlkZXIpIHsKICAgICAgICBjb25zdCBpc1NldHVwID0gISF0aGlzLl9wcm9tcHRQcm92aWRlcjsKICAgICAgICB0aGlzLl9wcm9tcHRQcm92aWRlciA9IHByb3ZpZGVyOwogICAgICAgIGlmIChpc1NldHVwKSB7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIHRoaXMuX2Fqdi5hZGRLZXl3b3JkKHsKICAgICAgICAgIGtleXdvcmQ6ICJ4LXByb21wdCIsCiAgICAgICAgICBlcnJvcnM6IGZhbHNlLAogICAgICAgICAgdmFsaWQ6IHRydWUsCiAgICAgICAgICBjb21waWxlOiAoc2NoZW1hLCBwYXJlbnRTY2hlbWEsIGl0KSA9PiB7CiAgICAgICAgICAgIGNvbnN0IGNvbXBpbGF0aW9uU2NoZW1JbmZvID0gdGhpcy5fY3VycmVudENvbXBpbGF0aW9uU2NoZW1hSW5mbzsKICAgICAgICAgICAgaWYgKCFjb21waWxhdGlvblNjaGVtSW5mbykgewogICAgICAgICAgICAgIHJldHVybiAoKSA9PiB0cnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IHBhdGggPSAiLyIgKyB0aGlzLm5vcm1hbGl6ZURhdGFQYXRoQXJyKGl0KS5qb2luKCIvIik7CiAgICAgICAgICAgIGxldCB0eXBlOwogICAgICAgICAgICBsZXQgaXRlbXM7CiAgICAgICAgICAgIGxldCBtZXNzYWdlOwogICAgICAgICAgICBpZiAodHlwZW9mIHNjaGVtYSA9PSAic3RyaW5nIikgewogICAgICAgICAgICAgIG1lc3NhZ2UgPSBzY2hlbWE7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgbWVzc2FnZSA9IHNjaGVtYS5tZXNzYWdlOwogICAgICAgICAgICAgIHR5cGUgPSBzY2hlbWEudHlwZTsKICAgICAgICAgICAgICBpdGVtcyA9IHNjaGVtYS5pdGVtczsKICAgICAgICAgICAgfQogICAgICAgICAgICBjb25zdCBwcm9wZXJ0eVR5cGVzID0gKDAsIHV0aWxpdHlfMS5nZXRUeXBlc09mU2NoZW1hKShwYXJlbnRTY2hlbWEpOwogICAgICAgICAgICBpZiAoIXR5cGUpIHsKICAgICAgICAgICAgICBpZiAocHJvcGVydHlUeXBlcy5zaXplID09PSAxICYmIHByb3BlcnR5VHlwZXMuaGFzKCJib29sZWFuIikpIHsKICAgICAgICAgICAgICAgIHR5cGUgPSAiY29uZmlybWF0aW9uIjsKICAgICAgICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkocGFyZW50U2NoZW1hLmVudW0pKSB7CiAgICAgICAgICAgICAgICB0eXBlID0gImxpc3QiOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAocHJvcGVydHlUeXBlcy5zaXplID09PSAxICYmIHByb3BlcnR5VHlwZXMuaGFzKCJhcnJheSIpICYmIHBhcmVudFNjaGVtYS5pdGVtcyAmJiBBcnJheS5pc0FycmF5KHBhcmVudFNjaGVtYS5pdGVtcy5lbnVtKSkgewogICAgICAgICAgICAgICAgdHlwZSA9ICJsaXN0IjsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgdHlwZSA9ICJpbnB1dCI7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGxldCBtdWx0aXNlbGVjdDsKICAgICAgICAgICAgaWYgKHR5cGUgPT09ICJsaXN0IikgewogICAgICAgICAgICAgIG11bHRpc2VsZWN0ID0gc2NoZW1hLm11bHRpc2VsZWN0ID09PSB2b2lkIDAgPyBwcm9wZXJ0eVR5cGVzLnNpemUgPT09IDEgJiYgcHJvcGVydHlUeXBlcy5oYXMoImFycmF5IikgOiBzY2hlbWEubXVsdGlzZWxlY3Q7CiAgICAgICAgICAgICAgY29uc3QgZW51bVZhbHVlcyA9IG11bHRpc2VsZWN0ID8gcGFyZW50U2NoZW1hLml0ZW1zICYmIHBhcmVudFNjaGVtYS5pdGVtcy5lbnVtIDogcGFyZW50U2NoZW1hLmVudW07CiAgICAgICAgICAgICAgaWYgKCFpdGVtcyAmJiBBcnJheS5pc0FycmF5KGVudW1WYWx1ZXMpKSB7CiAgICAgICAgICAgICAgICBpdGVtcyA9IFtdOwogICAgICAgICAgICAgICAgZm9yIChjb25zdCB2YWx1ZSBvZiBlbnVtVmFsdWVzKSB7CiAgICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT0gInN0cmluZyIpIHsKICAgICAgICAgICAgICAgICAgICBpdGVtcy5wdXNoKHZhbHVlKTsKICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgdmFsdWUgPT0gIm9iamVjdCIpIHsKICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICBpdGVtcy5wdXNoKHsgbGFiZWw6IHZhbHVlLnRvU3RyaW5nKCksIHZhbHVlIH0pOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IGRlZmluaXRpb24gPSB7CiAgICAgICAgICAgICAgaWQ6IHBhdGgsCiAgICAgICAgICAgICAgdHlwZSwKICAgICAgICAgICAgICBtZXNzYWdlLAogICAgICAgICAgICAgIHJhdzogc2NoZW1hLAogICAgICAgICAgICAgIGl0ZW1zLAogICAgICAgICAgICAgIG11bHRpc2VsZWN0LAogICAgICAgICAgICAgIHByb3BlcnR5VHlwZXMsCiAgICAgICAgICAgICAgZGVmYXVsdDogdHlwZW9mIHBhcmVudFNjaGVtYS5kZWZhdWx0ID09ICJvYmplY3QiICYmIHBhcmVudFNjaGVtYS5kZWZhdWx0ICE9PSBudWxsICYmICFBcnJheS5pc0FycmF5KHBhcmVudFNjaGVtYS5kZWZhdWx0KSA/IHZvaWQgMCA6IHBhcmVudFNjaGVtYS5kZWZhdWx0LAogICAgICAgICAgICAgIGFzeW5jIHZhbGlkYXRvcihkYXRhKSB7CiAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBpdC5zZWxmLnZhbGlkYXRlKHBhcmVudFNjaGVtYSwgZGF0YSk7CiAgICAgICAgICAgICAgICAgIGlmIChyZXN1bHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGl0LnNlbGYuZXJyb3JzPy5sZW5ndGgpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gaXQuc2VsZi5lcnJvcnNbMF0ubWVzc2FnZTsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICAgICAgICBjb25zdCB2YWxpZGF0aW9uRXJyb3IgPSBlOwogICAgICAgICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWxpZGF0aW9uRXJyb3IuZXJyb3JzKSAmJiB2YWxpZGF0aW9uRXJyb3IuZXJyb3JzLmxlbmd0aCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB2YWxpZGF0aW9uRXJyb3IuZXJyb3JzWzBdLm1lc3NhZ2U7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH07CiAgICAgICAgICAgIGNvbXBpbGF0aW9uU2NoZW1JbmZvLnByb21wdERlZmluaXRpb25zLnB1c2goZGVmaW5pdGlvbik7CiAgICAgICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICBpZiAodGhpcyAmJiB0aGlzLnByb21wdEZpZWxkc1dpdGhWYWx1ZSkgewogICAgICAgICAgICAgICAgdGhpcy5wcm9tcHRGaWVsZHNXaXRoVmFsdWUuYWRkKHBhdGgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgICAgfTsKICAgICAgICAgIH0sCiAgICAgICAgICBtZXRhU2NoZW1hOiB7CiAgICAgICAgICAgIG9uZU9mOiBbCiAgICAgICAgICAgICAgeyB0eXBlOiAic3RyaW5nIiB9LAogICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICAgICAgICAgICAgcHJvcGVydGllczogewogICAgICAgICAgICAgICAgICAidHlwZSI6IHsgdHlwZTogInN0cmluZyIgfSwKICAgICAgICAgICAgICAgICAgIm1lc3NhZ2UiOiB7IHR5cGU6ICJzdHJpbmciIH0KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogdHJ1ZSwKICAgICAgICAgICAgICAgIHJlcXVpcmVkOiBbIm1lc3NhZ2UiXQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgXQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9CiAgICAgIGFzeW5jIF9hcHBseVByb21wdHMoZGF0YSwgcHJvbXB0cykgewogICAgICAgIGNvbnN0IHByb3ZpZGVyID0gdGhpcy5fcHJvbXB0UHJvdmlkZXI7CiAgICAgICAgaWYgKCFwcm92aWRlcikgewogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBjb25zdCBhbnN3ZXJzID0gYXdhaXQgKDAsIHJ4anNfMS5sYXN0VmFsdWVGcm9tKSgoMCwgcnhqc18xLmZyb20pKHByb3ZpZGVyKHByb21wdHMpKSk7CiAgICAgICAgZm9yIChjb25zdCBwYXRoIGluIGFuc3dlcnMpIHsKICAgICAgICAgIGNvbnN0IHBhdGhGcmFnbWVudHMgPSBwYXRoLnNwbGl0KCIvIikuc2xpY2UoMSk7CiAgICAgICAgICBfQ29yZVNjaGVtYVJlZ2lzdHJ5Ll9zZXQoZGF0YSwgcGF0aEZyYWdtZW50cywgYW5zd2Vyc1twYXRoXSwgbnVsbCwgdm9pZCAwLCB0cnVlKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgc3RhdGljIF9zZXQoZGF0YSwgZnJhZ21lbnRzLCB2YWx1ZSwgcGFyZW50ID0gbnVsbCwgcGFyZW50UHJvcGVydHksIGZvcmNlKSB7CiAgICAgICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGZyYWdtZW50cy5sZW5ndGg7IGluZGV4KyspIHsKICAgICAgICAgIGNvbnN0IGZyYWdtZW50ID0gZnJhZ21lbnRzW2luZGV4XTsKICAgICAgICAgIGlmICgvXmlcZCskLy50ZXN0KGZyYWdtZW50KSkgewogICAgICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoZGF0YSkpIHsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZm9yIChsZXQgZGF0YUluZGV4ID0gMDsgZGF0YUluZGV4IDwgZGF0YS5sZW5ndGg7IGRhdGFJbmRleCsrKSB7CiAgICAgICAgICAgICAgX0NvcmVTY2hlbWFSZWdpc3RyeS5fc2V0KGRhdGFbZGF0YUluZGV4XSwgZnJhZ21lbnRzLnNsaWNlKGluZGV4ICsgMSksIHZhbHVlLCBkYXRhLCBgJHtkYXRhSW5kZXh9YCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCFkYXRhICYmIHBhcmVudCAhPT0gbnVsbCAmJiBwYXJlbnRQcm9wZXJ0eSkgewogICAgICAgICAgICBkYXRhID0gcGFyZW50W3BhcmVudFByb3BlcnR5XSA9IHt9OwogICAgICAgICAgfQogICAgICAgICAgcGFyZW50ID0gZGF0YTsKICAgICAgICAgIHBhcmVudFByb3BlcnR5ID0gZnJhZ21lbnQ7CiAgICAgICAgICBkYXRhID0gZGF0YVtmcmFnbWVudF07CiAgICAgICAgfQogICAgICAgIGlmIChwYXJlbnQgJiYgcGFyZW50UHJvcGVydHkgJiYgKGZvcmNlIHx8IHBhcmVudFtwYXJlbnRQcm9wZXJ0eV0gPT09IHZvaWQgMCkpIHsKICAgICAgICAgIHBhcmVudFtwYXJlbnRQcm9wZXJ0eV0gPSB2YWx1ZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgYXN5bmMgX2FwcGx5U21hcnREZWZhdWx0cyhkYXRhLCBzbWFydERlZmF1bHRzKSB7CiAgICAgICAgZm9yIChjb25zdCBbcG9pbnRlciwgc2NoZW1hXSBvZiBzbWFydERlZmF1bHRzLmVudHJpZXMoKSkgewogICAgICAgICAgY29uc3QgZnJhZ21lbnRzID0gSlNPTi5wYXJzZShwb2ludGVyKTsKICAgICAgICAgIGNvbnN0IHNvdXJjZSA9IHRoaXMuX3NvdXJjZU1hcC5nZXQoc2NoZW1hLiRzb3VyY2UpOwogICAgICAgICAgaWYgKCFzb3VyY2UpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgdmFsdWUgPSBzb3VyY2Uoc2NoZW1hKTsKICAgICAgICAgIGlmICgoMCwgcnhqc18xLmlzT2JzZXJ2YWJsZSkodmFsdWUpKSB7CiAgICAgICAgICAgIHZhbHVlID0gYXdhaXQgKDAsIHJ4anNfMS5sYXN0VmFsdWVGcm9tKSh2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgICBfQ29yZVNjaGVtYVJlZ2lzdHJ5Ll9zZXQoZGF0YSwgZnJhZ21lbnRzLCB2YWx1ZSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHVzZVhEZXByZWNhdGVkUHJvdmlkZXIob25Vc2FnZSkgewogICAgICAgIHRoaXMuX2Fqdi5hZGRLZXl3b3JkKHsKICAgICAgICAgIGtleXdvcmQ6ICJ4LWRlcHJlY2F0ZWQiLAogICAgICAgICAgdmFsaWRhdGU6IChzY2hlbWEsIF9kYXRhLCBfcGFyZW50U2NoZW1hLCBkYXRhQ3h0KSA9PiB7CiAgICAgICAgICAgIGlmIChzY2hlbWEpIHsKICAgICAgICAgICAgICBvblVzYWdlKGBPcHRpb24gIiR7ZGF0YUN4dD8ucGFyZW50RGF0YVByb3BlcnR5fSIgaXMgZGVwcmVjYXRlZCR7dHlwZW9mIHNjaGVtYSA9PSAic3RyaW5nIiA/ICI6ICIgKyBzY2hlbWEgOiAiLiJ9YCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICB9LAogICAgICAgICAgZXJyb3JzOiBmYWxzZQogICAgICAgIH0pOwogICAgICB9CiAgICAgIG5vcm1hbGl6ZURhdGFQYXRoQXJyKGl0KSB7CiAgICAgICAgcmV0dXJuIGl0LmRhdGFQYXRoQXJyLnNsaWNlKDEsIGl0LmRhdGFMZXZlbCArIDEpLm1hcCgocCkgPT4gdHlwZW9mIHAgPT09ICJudW1iZXIiID8gcCA6IHAuc3RyLnJlcGxhY2UoLyIvZywgIiIpKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkNvcmVTY2hlbWFSZWdpc3RyeSA9IENvcmVTY2hlbWFSZWdpc3RyeTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvc2NoZW1hLmpzCnZhciByZXF1aXJlX3NjaGVtYSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9zY2hlbWEuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmlzSnNvblNjaGVtYSA9IGlzSnNvblNjaGVtYTsKICAgIGV4cG9ydHMyLm1lcmdlU2NoZW1hcyA9IG1lcmdlU2NoZW1hczsKICAgIHZhciB1dGlsc18xID0gcmVxdWlyZV91dGlscygpOwogICAgZnVuY3Rpb24gaXNKc29uU2NoZW1hKHZhbHVlKSB7CiAgICAgIHJldHVybiAoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHZhbHVlKSB8fCB2YWx1ZSA9PT0gZmFsc2UgfHwgdmFsdWUgPT09IHRydWU7CiAgICB9CiAgICBmdW5jdGlvbiBtZXJnZVNjaGVtYXMoLi4uc2NoZW1hcykgewogICAgICByZXR1cm4gc2NoZW1hcy5yZWR1Y2UoKHByZXYsIGN1cnIpID0+IHsKICAgICAgICBpZiAoY3VyciA9PT0gdm9pZCAwKSB7CiAgICAgICAgICByZXR1cm4gcHJldjsKICAgICAgICB9CiAgICAgICAgaWYgKHByZXYgPT09IGZhbHNlIHx8IGN1cnIgPT09IGZhbHNlKSB7CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfSBlbHNlIGlmIChwcmV2ID09PSB0cnVlKSB7CiAgICAgICAgICByZXR1cm4gY3VycjsKICAgICAgICB9IGVsc2UgaWYgKGN1cnIgPT09IHRydWUpIHsKICAgICAgICAgIHJldHVybiBwcmV2OwogICAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShwcmV2LmFsbE9mKSkgewogICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoY3Vyci5hbGxPZikpIHsKICAgICAgICAgICAgcmV0dXJuIHsgLi4ucHJldiwgYWxsT2Y6IFsuLi5wcmV2LmFsbE9mLCAuLi5jdXJyLmFsbE9mXSB9OwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgcmV0dXJuIHsgLi4ucHJldiwgYWxsT2Y6IFsuLi5wcmV2LmFsbE9mLCBjdXJyXSB9OwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShjdXJyLmFsbE9mKSkgewogICAgICAgICAgcmV0dXJuIHsgLi4ucHJldiwgYWxsT2Y6IFtwcmV2LCAuLi5jdXJyLmFsbE9mXSB9OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4geyAuLi5wcmV2LCBhbGxPZjogW3ByZXYsIGN1cnJdIH07CiAgICAgICAgfQogICAgICB9LCB0cnVlKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvaW5kZXguanMKdmFyIHJlcXVpcmVfc2NoZW1hMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX3NldE1vZHVsZURlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NldE1vZHVsZURlZmF1bHQgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCB2KSB7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZGVmYXVsdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHYgfSk7CiAgICB9IDogZnVuY3Rpb24obywgdikgewogICAgICBvWyJkZWZhdWx0Il0gPSB2OwogICAgfSk7CiAgICB2YXIgX19pbXBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19pbXBvcnRTdGFyIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIG93bktleXMgPSBmdW5jdGlvbihvKSB7CiAgICAgICAgb3duS2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uKG8yKSB7CiAgICAgICAgICB2YXIgYXIgPSBbXTsKICAgICAgICAgIGZvciAodmFyIGsgaW4gbzIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobzIsIGspKSBhclthci5sZW5ndGhdID0gazsKICAgICAgICAgIHJldHVybiBhcjsKICAgICAgICB9OwogICAgICAgIHJldHVybiBvd25LZXlzKG8pOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24obW9kKSB7CiAgICAgICAgaWYgKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgcmV0dXJuIG1vZDsKICAgICAgICB2YXIgcmVzdWx0ID0ge307CiAgICAgICAgaWYgKG1vZCAhPSBudWxsKSB7CiAgICAgICAgICBmb3IgKHZhciBrID0gb3duS2V5cyhtb2QpLCBpID0gMDsgaSA8IGsubGVuZ3RoOyBpKyspIGlmIChrW2ldICE9PSAiZGVmYXVsdCIpIF9fY3JlYXRlQmluZGluZyhyZXN1bHQsIG1vZCwga1tpXSk7CiAgICAgICAgfQogICAgICAgIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudHJhbnNmb3JtcyA9IHZvaWQgMDsKICAgIHZhciB0cmFuc2Zvcm1zID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfdHJhbnNmb3JtcygpKTsKICAgIGV4cG9ydHMyLnRyYW5zZm9ybXMgPSB0cmFuc2Zvcm1zOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaW50ZXJmYWNlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3BvaW50ZXIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfcmVnaXN0cnkoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfc2NoZW1hKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3Zpc2l0b3IoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdXRpbGl0eSgpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vaW5kZXguanMKdmFyIHJlcXVpcmVfanNvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fY3JlYXRlQmluZGluZyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fY3JlYXRlQmluZGluZyB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihtLCBrKTsKICAgICAgaWYgKCFkZXNjIHx8ICgiZ2V0IiBpbiBkZXNjID8gIW0uX19lc01vZHVsZSA6IGRlc2Mud3JpdGFibGUgfHwgZGVzYy5jb25maWd1cmFibGUpKSB7CiAgICAgICAgZGVzYyA9IHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBtW2tdOwogICAgICAgIH0gfTsKICAgICAgfQogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgazIsIGRlc2MpOwogICAgfSA6IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIG9bazJdID0gbVtrXTsKICAgIH0pOwogICAgdmFyIF9fc2V0TW9kdWxlRGVmYXVsdCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc2V0TW9kdWxlRGVmYXVsdCB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJkZWZhdWx0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCB2YWx1ZTogdiB9KTsKICAgIH0gOiBmdW5jdGlvbihvLCB2KSB7CiAgICAgIG9bImRlZmF1bHQiXSA9IHY7CiAgICB9KTsKICAgIHZhciBfX2ltcG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydFN0YXIgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgb3duS2V5cyA9IGZ1bmN0aW9uKG8pIHsKICAgICAgICBvd25LZXlzID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMgfHwgZnVuY3Rpb24obzIpIHsKICAgICAgICAgIHZhciBhciA9IFtdOwogICAgICAgICAgZm9yICh2YXIgayBpbiBvMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvMiwgaykpIGFyW2FyLmxlbmd0aF0gPSBrOwogICAgICAgICAgcmV0dXJuIGFyOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIG93bktleXMobyk7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihtb2QpIHsKICAgICAgICBpZiAobW9kICYmIG1vZC5fX2VzTW9kdWxlKSByZXR1cm4gbW9kOwogICAgICAgIHZhciByZXN1bHQgPSB7fTsKICAgICAgICBpZiAobW9kICE9IG51bGwpIHsKICAgICAgICAgIGZvciAodmFyIGsgPSBvd25LZXlzKG1vZCksIGkgPSAwOyBpIDwgay5sZW5ndGg7IGkrKykgaWYgKGtbaV0gIT09ICJkZWZhdWx0IikgX19jcmVhdGVCaW5kaW5nKHJlc3VsdCwgbW9kLCBrW2ldKTsKICAgICAgICB9CiAgICAgICAgX19zZXRNb2R1bGVEZWZhdWx0KHJlc3VsdCwgbW9kKTsKICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9OwogICAgfSgpOwogICAgdmFyIF9fZXhwb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXhwb3J0U3RhciB8fCBmdW5jdGlvbihtLCBleHBvcnRzMykgewogICAgICBmb3IgKHZhciBwIGluIG0pIGlmIChwICE9PSAiZGVmYXVsdCIgJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChleHBvcnRzMywgcCkpIF9fY3JlYXRlQmluZGluZyhleHBvcnRzMywgbSwgcCk7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zY2hlbWEgPSB2b2lkIDA7CiAgICB2YXIgc2NoZW1hID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfc2NoZW1hMigpKTsKICAgIGV4cG9ydHMyLnNjaGVtYSA9IHNjaGVtYTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3V0aWxzKCksIGV4cG9ydHMyKTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xvZ2dlci5qcwp2YXIgcmVxdWlyZV9sb2dnZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xvZ2dlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuTG9nZ2VyID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgTG9nZ2VyID0gY2xhc3MgZXh0ZW5kcyByeGpzXzEuT2JzZXJ2YWJsZSB7CiAgICAgIG5hbWU7CiAgICAgIHBhcmVudDsKICAgICAgX3N1YmplY3QgPSBuZXcgcnhqc18xLlN1YmplY3QoKTsKICAgICAgX21ldGFkYXRhOwogICAgICBfb2JzID0gcnhqc18xLkVNUFRZOwogICAgICBfc3Vic2NyaXB0aW9uID0gbnVsbDsKICAgICAgZ2V0IF9vYnNlcnZhYmxlKCkgewogICAgICAgIHJldHVybiB0aGlzLl9vYnM7CiAgICAgIH0KICAgICAgc2V0IF9vYnNlcnZhYmxlKHYpIHsKICAgICAgICBpZiAodGhpcy5fc3Vic2NyaXB0aW9uKSB7CiAgICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fb2JzID0gdjsKICAgICAgICBpZiAodGhpcy5wYXJlbnQpIHsKICAgICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbiA9IHRoaXMuc3Vic2NyaWJlKCh2YWx1ZSkgPT4gewogICAgICAgICAgICBpZiAodGhpcy5wYXJlbnQpIHsKICAgICAgICAgICAgICB0aGlzLnBhcmVudC5fc3ViamVjdC5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSwgKGVycm9yKSA9PiB7CiAgICAgICAgICAgIGlmICh0aGlzLnBhcmVudCkgewogICAgICAgICAgICAgIHRoaXMucGFyZW50Ll9zdWJqZWN0LmVycm9yKGVycm9yKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSwgKCkgPT4gewogICAgICAgICAgICBpZiAodGhpcy5fc3Vic2NyaXB0aW9uKSB7CiAgICAgICAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uID0gbnVsbDsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgfQogICAgICBjb25zdHJ1Y3RvcihuYW1lLCBwYXJlbnQgPSBudWxsKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLm5hbWUgPSBuYW1lOwogICAgICAgIHRoaXMucGFyZW50ID0gcGFyZW50OwogICAgICAgIGNvbnN0IHBhdGggPSBbXTsKICAgICAgICBsZXQgcCA9IHBhcmVudDsKICAgICAgICB3aGlsZSAocCkgewogICAgICAgICAgcGF0aC5wdXNoKHAubmFtZSk7CiAgICAgICAgICBwID0gcC5wYXJlbnQ7CiAgICAgICAgfQogICAgICAgIHRoaXMuX21ldGFkYXRhID0geyBuYW1lLCBwYXRoIH07CiAgICAgICAgdGhpcy5fb2JzZXJ2YWJsZSA9IHRoaXMuX3N1YmplY3QuYXNPYnNlcnZhYmxlKCk7CiAgICAgICAgaWYgKHRoaXMucGFyZW50ICYmIHRoaXMucGFyZW50Ll9zdWJqZWN0KSB7CiAgICAgICAgICB0aGlzLnBhcmVudC5fc3ViamVjdC5zdWJzY3JpYmUodm9pZCAwLCB2b2lkIDAsICgpID0+IHRoaXMuY29tcGxldGUoKSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGFzQXBpKCkgewogICAgICAgIHJldHVybiB7CiAgICAgICAgICBjcmVhdGVDaGlsZDogKG5hbWUpID0+IHRoaXMuY3JlYXRlQ2hpbGQobmFtZSksCiAgICAgICAgICBsb2c6IChsZXZlbCwgbWVzc2FnZSwgbWV0YWRhdGEpID0+IHsKICAgICAgICAgICAgcmV0dXJuIHRoaXMubG9nKGxldmVsLCBtZXNzYWdlLCBtZXRhZGF0YSk7CiAgICAgICAgICB9LAogICAgICAgICAgZGVidWc6IChtZXNzYWdlLCBtZXRhZGF0YSkgPT4gdGhpcy5kZWJ1ZyhtZXNzYWdlLCBtZXRhZGF0YSksCiAgICAgICAgICBpbmZvOiAobWVzc2FnZSwgbWV0YWRhdGEpID0+IHRoaXMuaW5mbyhtZXNzYWdlLCBtZXRhZGF0YSksCiAgICAgICAgICB3YXJuOiAobWVzc2FnZSwgbWV0YWRhdGEpID0+IHRoaXMud2FybihtZXNzYWdlLCBtZXRhZGF0YSksCiAgICAgICAgICBlcnJvcjogKG1lc3NhZ2UsIG1ldGFkYXRhKSA9PiB0aGlzLmVycm9yKG1lc3NhZ2UsIG1ldGFkYXRhKSwKICAgICAgICAgIGZhdGFsOiAobWVzc2FnZSwgbWV0YWRhdGEpID0+IHRoaXMuZmF0YWwobWVzc2FnZSwgbWV0YWRhdGEpCiAgICAgICAgfTsKICAgICAgfQogICAgICBjcmVhdGVDaGlsZChuYW1lKSB7CiAgICAgICAgcmV0dXJuIG5ldyB0aGlzLmNvbnN0cnVjdG9yKG5hbWUsIHRoaXMpOwogICAgICB9CiAgICAgIGNvbXBsZXRlKCkgewogICAgICAgIHRoaXMuX3N1YmplY3QuY29tcGxldGUoKTsKICAgICAgfQogICAgICBsb2cobGV2ZWwsIG1lc3NhZ2UsIG1ldGFkYXRhID0ge30pIHsKICAgICAgICBjb25zdCBlbnRyeSA9IE9iamVjdC5hc3NpZ24oe30sIG1ldGFkYXRhLCB0aGlzLl9tZXRhZGF0YSwgewogICAgICAgICAgbGV2ZWwsCiAgICAgICAgICBtZXNzYWdlLAogICAgICAgICAgdGltZXN0YW1wOiArRGF0ZS5ub3coKQogICAgICAgIH0pOwogICAgICAgIHRoaXMuX3N1YmplY3QubmV4dChlbnRyeSk7CiAgICAgIH0KICAgICAgbmV4dChlbnRyeSkgewogICAgICAgIHRoaXMuX3N1YmplY3QubmV4dChlbnRyeSk7CiAgICAgIH0KICAgICAgZGVidWcobWVzc2FnZSwgbWV0YWRhdGEgPSB7fSkgewogICAgICAgIHJldHVybiB0aGlzLmxvZygiZGVidWciLCBtZXNzYWdlLCBtZXRhZGF0YSk7CiAgICAgIH0KICAgICAgaW5mbyhtZXNzYWdlLCBtZXRhZGF0YSA9IHt9KSB7CiAgICAgICAgcmV0dXJuIHRoaXMubG9nKCJpbmZvIiwgbWVzc2FnZSwgbWV0YWRhdGEpOwogICAgICB9CiAgICAgIHdhcm4obWVzc2FnZSwgbWV0YWRhdGEgPSB7fSkgewogICAgICAgIHJldHVybiB0aGlzLmxvZygid2FybiIsIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICBlcnJvcihtZXNzYWdlLCBtZXRhZGF0YSA9IHt9KSB7CiAgICAgICAgcmV0dXJuIHRoaXMubG9nKCJlcnJvciIsIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICBmYXRhbChtZXNzYWdlLCBtZXRhZGF0YSA9IHt9KSB7CiAgICAgICAgcmV0dXJuIHRoaXMubG9nKCJmYXRhbCIsIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICB0b1N0cmluZygpIHsKICAgICAgICByZXR1cm4gYDxMb2dnZXIoJHt0aGlzLm5hbWV9KT5gOwogICAgICB9CiAgICAgIGxpZnQob3BlcmF0b3IpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb2JzZXJ2YWJsZS5saWZ0KG9wZXJhdG9yKTsKICAgICAgfQogICAgICBzdWJzY3JpYmUoX29ic2VydmVyT3JOZXh0LCBfZXJyb3IsIF9jb21wbGV0ZSkgewogICAgICAgIHJldHVybiB0aGlzLl9vYnNlcnZhYmxlLnN1YnNjcmliZS5hcHBseSgKICAgICAgICAgIHRoaXMuX29ic2VydmFibGUsCiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLXJlc3QtcGFyYW1zCiAgICAgICAgICBhcmd1bWVudHMKICAgICAgICApOwogICAgICB9CiAgICAgIGZvckVhY2gobmV4dCwgcHJvbWlzZUN0b3IgPSBQcm9taXNlKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX29ic2VydmFibGUuZm9yRWFjaChuZXh0LCBwcm9taXNlQ3Rvcik7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Mb2dnZXIgPSBMb2dnZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci9pbmRlbnQuanMKdmFyIHJlcXVpcmVfaW5kZW50ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci9pbmRlbnQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkluZGVudExvZ2dlciA9IHZvaWQgMDsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGxvZ2dlcl8xID0gcmVxdWlyZV9sb2dnZXIoKTsKICAgIHZhciBpbmRlbnRhdGlvbk1hcCA9IHt9OwogICAgdmFyIEluZGVudExvZ2dlciA9IGNsYXNzIGV4dGVuZHMgbG9nZ2VyXzEuTG9nZ2VyIHsKICAgICAgY29uc3RydWN0b3IobmFtZSwgcGFyZW50ID0gbnVsbCwgaW5kZW50YXRpb24gPSAiICAiKSB7CiAgICAgICAgc3VwZXIobmFtZSwgcGFyZW50KTsKICAgICAgICBpbmRlbnRhdGlvbk1hcFtpbmRlbnRhdGlvbl0gPSBpbmRlbnRhdGlvbk1hcFtpbmRlbnRhdGlvbl0gfHwgWyIiXTsKICAgICAgICBjb25zdCBpbmRlbnRNYXAgPSBpbmRlbnRhdGlvbk1hcFtpbmRlbnRhdGlvbl07CiAgICAgICAgdGhpcy5fb2JzZXJ2YWJsZSA9IHRoaXMuX29ic2VydmFibGUucGlwZSgoMCwgcnhqc18xLm1hcCkoKGVudHJ5KSA9PiB7CiAgICAgICAgICBjb25zdCBsID0gZW50cnkucGF0aC5maWx0ZXIoKHgpID0+ICEheCkubGVuZ3RoOwogICAgICAgICAgaWYgKGwgPj0gaW5kZW50TWFwLmxlbmd0aCkgewogICAgICAgICAgICBsZXQgY3VycmVudCA9IGluZGVudE1hcFtpbmRlbnRNYXAubGVuZ3RoIC0gMV07CiAgICAgICAgICAgIHdoaWxlIChsID49IGluZGVudE1hcC5sZW5ndGgpIHsKICAgICAgICAgICAgICBjdXJyZW50ICs9IGluZGVudGF0aW9uOwogICAgICAgICAgICAgIGluZGVudE1hcC5wdXNoKGN1cnJlbnQpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBlbnRyeS5tZXNzYWdlID0gaW5kZW50TWFwW2xdICsgZW50cnkubWVzc2FnZS5zcGxpdCgvXG4vKS5qb2luKCJcbiIgKyBpbmRlbnRNYXBbbF0pOwogICAgICAgICAgcmV0dXJuIGVudHJ5OwogICAgICAgIH0pKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkluZGVudExvZ2dlciA9IEluZGVudExvZ2dlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xldmVsLmpzCnZhciByZXF1aXJlX2xldmVsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci9sZXZlbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuTGV2ZWxDYXBMb2dnZXIgPSBleHBvcnRzMi5MZXZlbFRyYW5zZm9ybUxvZ2dlciA9IHZvaWQgMDsKICAgIHZhciBsb2dnZXJfMSA9IHJlcXVpcmVfbG9nZ2VyKCk7CiAgICB2YXIgTGV2ZWxUcmFuc2Zvcm1Mb2dnZXIgPSBjbGFzcyBfTGV2ZWxUcmFuc2Zvcm1Mb2dnZXIgZXh0ZW5kcyBsb2dnZXJfMS5Mb2dnZXIgewogICAgICBuYW1lOwogICAgICBwYXJlbnQ7CiAgICAgIGxldmVsVHJhbnNmb3JtOwogICAgICBjb25zdHJ1Y3RvcihuYW1lLCBwYXJlbnQgPSBudWxsLCBsZXZlbFRyYW5zZm9ybSkgewogICAgICAgIHN1cGVyKG5hbWUsIHBhcmVudCk7CiAgICAgICAgdGhpcy5uYW1lID0gbmFtZTsKICAgICAgICB0aGlzLnBhcmVudCA9IHBhcmVudDsKICAgICAgICB0aGlzLmxldmVsVHJhbnNmb3JtID0gbGV2ZWxUcmFuc2Zvcm07CiAgICAgIH0KICAgICAgbG9nKGxldmVsLCBtZXNzYWdlLCBtZXRhZGF0YSA9IHt9KSB7CiAgICAgICAgcmV0dXJuIHN1cGVyLmxvZyh0aGlzLmxldmVsVHJhbnNmb3JtKGxldmVsKSwgbWVzc2FnZSwgbWV0YWRhdGEpOwogICAgICB9CiAgICAgIGNyZWF0ZUNoaWxkKG5hbWUpIHsKICAgICAgICByZXR1cm4gbmV3IF9MZXZlbFRyYW5zZm9ybUxvZ2dlcihuYW1lLCB0aGlzLCB0aGlzLmxldmVsVHJhbnNmb3JtKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkxldmVsVHJhbnNmb3JtTG9nZ2VyID0gTGV2ZWxUcmFuc2Zvcm1Mb2dnZXI7CiAgICB2YXIgTGV2ZWxDYXBMb2dnZXIgPSBjbGFzcyBfTGV2ZWxDYXBMb2dnZXIgZXh0ZW5kcyBMZXZlbFRyYW5zZm9ybUxvZ2dlciB7CiAgICAgIG5hbWU7CiAgICAgIHBhcmVudDsKICAgICAgbGV2ZWxDYXA7CiAgICAgIHN0YXRpYyBsZXZlbE1hcCA9IHsKICAgICAgICBkZWJ1ZzogeyBkZWJ1ZzogImRlYnVnIiwgaW5mbzogImRlYnVnIiwgd2FybjogImRlYnVnIiwgZXJyb3I6ICJkZWJ1ZyIsIGZhdGFsOiAiZGVidWciIH0sCiAgICAgICAgaW5mbzogeyBkZWJ1ZzogImRlYnVnIiwgaW5mbzogImluZm8iLCB3YXJuOiAiaW5mbyIsIGVycm9yOiAiaW5mbyIsIGZhdGFsOiAiaW5mbyIgfSwKICAgICAgICB3YXJuOiB7IGRlYnVnOiAiZGVidWciLCBpbmZvOiAiaW5mbyIsIHdhcm46ICJ3YXJuIiwgZXJyb3I6ICJ3YXJuIiwgZmF0YWw6ICJ3YXJuIiB9LAogICAgICAgIGVycm9yOiB7IGRlYnVnOiAiZGVidWciLCBpbmZvOiAiaW5mbyIsIHdhcm46ICJ3YXJuIiwgZXJyb3I6ICJlcnJvciIsIGZhdGFsOiAiZXJyb3IiIH0sCiAgICAgICAgZmF0YWw6IHsgZGVidWc6ICJkZWJ1ZyIsIGluZm86ICJpbmZvIiwgd2FybjogIndhcm4iLCBlcnJvcjogImVycm9yIiwgZmF0YWw6ICJmYXRhbCIgfQogICAgICB9OwogICAgICBjb25zdHJ1Y3RvcihuYW1lLCBwYXJlbnQgPSBudWxsLCBsZXZlbENhcCkgewogICAgICAgIHN1cGVyKG5hbWUsIHBhcmVudCwgKGxldmVsKSA9PiB7CiAgICAgICAgICByZXR1cm4gX0xldmVsQ2FwTG9nZ2VyLmxldmVsTWFwW2xldmVsQ2FwXVtsZXZlbF0gfHwgbGV2ZWw7CiAgICAgICAgfSk7CiAgICAgICAgdGhpcy5uYW1lID0gbmFtZTsKICAgICAgICB0aGlzLnBhcmVudCA9IHBhcmVudDsKICAgICAgICB0aGlzLmxldmVsQ2FwID0gbGV2ZWxDYXA7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5MZXZlbENhcExvZ2dlciA9IExldmVsQ2FwTG9nZ2VyOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvbnVsbC1sb2dnZXIuanMKdmFyIHJlcXVpcmVfbnVsbF9sb2dnZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL251bGwtbG9nZ2VyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5OdWxsTG9nZ2VyID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgbG9nZ2VyXzEgPSByZXF1aXJlX2xvZ2dlcigpOwogICAgdmFyIE51bGxMb2dnZXIgPSBjbGFzcyBfTnVsbExvZ2dlciBleHRlbmRzIGxvZ2dlcl8xLkxvZ2dlciB7CiAgICAgIGNvbnN0cnVjdG9yKHBhcmVudCA9IG51bGwpIHsKICAgICAgICBzdXBlcigiIiwgcGFyZW50KTsKICAgICAgICB0aGlzLl9vYnNlcnZhYmxlID0gcnhqc18xLkVNUFRZOwogICAgICB9CiAgICAgIGFzQXBpKCkgewogICAgICAgIHJldHVybiB7CiAgICAgICAgICBjcmVhdGVDaGlsZDogKCkgPT4gbmV3IF9OdWxsTG9nZ2VyKHRoaXMpLAogICAgICAgICAgbG9nKCkgewogICAgICAgICAgfSwKICAgICAgICAgIGRlYnVnKCkgewogICAgICAgICAgfSwKICAgICAgICAgIGluZm8oKSB7CiAgICAgICAgICB9LAogICAgICAgICAgd2FybigpIHsKICAgICAgICAgIH0sCiAgICAgICAgICBlcnJvcigpIHsKICAgICAgICAgIH0sCiAgICAgICAgICBmYXRhbCgpIHsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTnVsbExvZ2dlciA9IE51bGxMb2dnZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci90cmFuc2Zvcm0tbG9nZ2VyLmpzCnZhciByZXF1aXJlX3RyYW5zZm9ybV9sb2dnZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL3RyYW5zZm9ybS1sb2dnZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlRyYW5zZm9ybUxvZ2dlciA9IHZvaWQgMDsKICAgIHZhciBsb2dnZXJfMSA9IHJlcXVpcmVfbG9nZ2VyKCk7CiAgICB2YXIgVHJhbnNmb3JtTG9nZ2VyID0gY2xhc3MgZXh0ZW5kcyBsb2dnZXJfMS5Mb2dnZXIgewogICAgICBjb25zdHJ1Y3RvcihuYW1lLCB0cmFuc2Zvcm0sIHBhcmVudCA9IG51bGwpIHsKICAgICAgICBzdXBlcihuYW1lLCBwYXJlbnQpOwogICAgICAgIHRoaXMuX29ic2VydmFibGUgPSB0cmFuc2Zvcm0odGhpcy5fb2JzZXJ2YWJsZSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5UcmFuc2Zvcm1Mb2dnZXIgPSBUcmFuc2Zvcm1Mb2dnZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci9pbmRleC5qcwp2YXIgcmVxdWlyZV9sb2dnZXIyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaW5kZW50KCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2xldmVsKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2xvZ2dlcigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9udWxsX2xvZ2dlcigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV90cmFuc2Zvcm1fbG9nZ2VyKCksIGV4cG9ydHMyKTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2RlZmluaXRpb25zLmpzCnZhciByZXF1aXJlX2RlZmluaXRpb25zID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9kZWZpbml0aW9ucy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVGFyZ2V0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBleHBvcnRzMi5Qcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSB2b2lkIDA7CiAgICB2YXIgRGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBjbGFzcyB7CiAgICAgIF9saXN0ZW5lcjsKICAgICAgX21hcDsKICAgICAgY29uc3RydWN0b3IoaW5pdGlhbCwgX2xpc3RlbmVyKSB7CiAgICAgICAgdGhpcy5fbGlzdGVuZXIgPSBfbGlzdGVuZXI7CiAgICAgICAgdGhpcy5fbWFwID0gbmV3IE1hcChpbml0aWFsICYmIE9iamVjdC5lbnRyaWVzKGluaXRpYWwpKTsKICAgICAgfQogICAgICBkZWxldGUoa2V5KSB7CiAgICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5fbWFwLmRlbGV0ZShrZXkpOwogICAgICAgIGlmIChyZXN1bHQpIHsKICAgICAgICAgIHRoaXMuX2xpc3RlbmVyPy4oa2V5LCB2b2lkIDAsIHRoaXMpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9CiAgICAgIHNldChrZXksIHZhbHVlKSB7CiAgICAgICAgY29uc3QgdXBkYXRlZFZhbHVlID0gdmFsdWUgIT09IHRoaXMuZ2V0KGtleSk7CiAgICAgICAgaWYgKHVwZGF0ZWRWYWx1ZSkgewogICAgICAgICAgdGhpcy5fbWFwLnNldChrZXksIHZhbHVlKTsKICAgICAgICAgIHRoaXMuX2xpc3RlbmVyPy4oa2V5LCB2YWx1ZSwgdGhpcyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGZvckVhY2goY2FsbGJhY2tmbiwgdGhpc0FyZykgewogICAgICAgIHRoaXMuX21hcC5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiBjYWxsYmFja2ZuKHZhbHVlLCBrZXksIHRoaXMpLCB0aGlzQXJnKTsKICAgICAgfQogICAgICBnZXQoa2V5KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX21hcC5nZXQoa2V5KTsKICAgICAgfQogICAgICBoYXMoa2V5KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX21hcC5oYXMoa2V5KTsKICAgICAgfQogICAgICBnZXQgc2l6ZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbWFwLnNpemU7CiAgICAgIH0KICAgICAgW1N5bWJvbC5pdGVyYXRvcl0oKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX21hcFtTeW1ib2wuaXRlcmF0b3JdKCk7CiAgICAgIH0KICAgICAgZW50cmllcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbWFwLmVudHJpZXMoKTsKICAgICAgfQogICAgICBrZXlzKCkgewogICAgICAgIHJldHVybiB0aGlzLl9tYXAua2V5cygpOwogICAgICB9CiAgICAgIHZhbHVlcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbWFwLnZhbHVlcygpOwogICAgICB9CiAgICB9OwogICAgZnVuY3Rpb24gaXNKc29uVmFsdWUodmFsdWUpIHsKICAgICAgY29uc3QgdmlzaXRlZCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIHN3aXRjaCAodHlwZW9mIHZhbHVlKSB7CiAgICAgICAgY2FzZSAiYm9vbGVhbiI6CiAgICAgICAgY2FzZSAibnVtYmVyIjoKICAgICAgICBjYXNlICJzdHJpbmciOgogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgY2FzZSAib2JqZWN0IjoKICAgICAgICAgIGlmICh2YWx1ZSA9PT0gbnVsbCkgewogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIHZpc2l0ZWQuYWRkKHZhbHVlKTsKICAgICAgICAgIGZvciAoY29uc3QgcHJvcGVydHkgb2YgT2JqZWN0LnZhbHVlcyh2YWx1ZSkpIHsKICAgICAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gIm9iamVjdCIgJiYgdmlzaXRlZC5oYXMocHJvcGVydHkpKSB7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKCFpc0pzb25WYWx1ZShwcm9wZXJ0eSkpIHsKICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgIH0KICAgIHZhciBQcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBjbGFzcyBleHRlbmRzIERlZmluaXRpb25Db2xsZWN0aW9uIHsKICAgICAgY29uc3RydWN0b3IoaW5pdGlhbCwgbGlzdGVuZXIpIHsKICAgICAgICBzdXBlcihpbml0aWFsLCBsaXN0ZW5lcik7CiAgICAgIH0KICAgICAgYWRkKGRlZmluaXRpb24pIHsKICAgICAgICBpZiAodGhpcy5oYXMoZGVmaW5pdGlvbi5uYW1lKSkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJQcm9qZWN0IG5hbWUgYWxyZWFkeSBleGlzdHMuIik7CiAgICAgICAgfQogICAgICAgIHRoaXMuX3ZhbGlkYXRlTmFtZShkZWZpbml0aW9uLm5hbWUpOwogICAgICAgIGNvbnN0IHByb2plY3QgPSB7CiAgICAgICAgICByb290OiBkZWZpbml0aW9uLnJvb3QsCiAgICAgICAgICBwcmVmaXg6IGRlZmluaXRpb24ucHJlZml4LAogICAgICAgICAgc291cmNlUm9vdDogZGVmaW5pdGlvbi5zb3VyY2VSb290LAogICAgICAgICAgdGFyZ2V0czogbmV3IFRhcmdldERlZmluaXRpb25Db2xsZWN0aW9uKCksCiAgICAgICAgICBleHRlbnNpb25zOiB7fQogICAgICAgIH07CiAgICAgICAgaWYgKGRlZmluaXRpb24udGFyZ2V0cykgewogICAgICAgICAgZm9yIChjb25zdCBbbmFtZSwgdGFyZ2V0XSBvZiBPYmplY3QuZW50cmllcyhkZWZpbml0aW9uLnRhcmdldHMpKSB7CiAgICAgICAgICAgIGlmICh0YXJnZXQpIHsKICAgICAgICAgICAgICBwcm9qZWN0LnRhcmdldHMuc2V0KG5hbWUsIHRhcmdldCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZm9yIChjb25zdCBbbmFtZSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKGRlZmluaXRpb24pKSB7CiAgICAgICAgICBzd2l0Y2ggKG5hbWUpIHsKICAgICAgICAgICAgY2FzZSAibmFtZSI6CiAgICAgICAgICAgIGNhc2UgInJvb3QiOgogICAgICAgICAgICBjYXNlICJzb3VyY2VSb290IjoKICAgICAgICAgICAgY2FzZSAicHJlZml4IjoKICAgICAgICAgICAgY2FzZSAidGFyZ2V0cyI6CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgaWYgKGlzSnNvblZhbHVlKHZhbHVlKSkgewogICAgICAgICAgICAgICAgcHJvamVjdC5leHRlbnNpb25zW25hbWVdID0gdmFsdWU7CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoYCIke25hbWV9IiBtdXN0IGJlIGEgSlNPTiB2YWx1ZS5gKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHN1cGVyLnNldChkZWZpbml0aW9uLm5hbWUsIHByb2plY3QpOwogICAgICAgIHJldHVybiBwcm9qZWN0OwogICAgICB9CiAgICAgIHNldChuYW1lLCB2YWx1ZSkgewogICAgICAgIHRoaXMuX3ZhbGlkYXRlTmFtZShuYW1lKTsKICAgICAgICBzdXBlci5zZXQobmFtZSwgdmFsdWUpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIF92YWxpZGF0ZU5hbWUobmFtZSkgewogICAgICAgIGlmICh0eXBlb2YgbmFtZSAhPT0gInN0cmluZyIgfHwgIS9eKD86QFx3W1x3Li1dKlwvKT9cd1tcdy4tXSokLy50ZXN0KG5hbWUpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlByb2plY3QgbmFtZSBtdXN0IGJlIGEgdmFsaWQgbnBtIHBhY2thZ2UgbmFtZS4iKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Qcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBQcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb247CiAgICB2YXIgVGFyZ2V0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBjbGFzcyBleHRlbmRzIERlZmluaXRpb25Db2xsZWN0aW9uIHsKICAgICAgY29uc3RydWN0b3IoaW5pdGlhbCwgbGlzdGVuZXIpIHsKICAgICAgICBzdXBlcihpbml0aWFsLCBsaXN0ZW5lcik7CiAgICAgIH0KICAgICAgYWRkKGRlZmluaXRpb24pIHsKICAgICAgICBpZiAodGhpcy5oYXMoZGVmaW5pdGlvbi5uYW1lKSkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJUYXJnZXQgbmFtZSBhbHJlYWR5IGV4aXN0cy4iKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fdmFsaWRhdGVOYW1lKGRlZmluaXRpb24ubmFtZSk7CiAgICAgICAgY29uc3QgdGFyZ2V0ID0gewogICAgICAgICAgYnVpbGRlcjogZGVmaW5pdGlvbi5idWlsZGVyLAogICAgICAgICAgb3B0aW9uczogZGVmaW5pdGlvbi5vcHRpb25zLAogICAgICAgICAgY29uZmlndXJhdGlvbnM6IGRlZmluaXRpb24uY29uZmlndXJhdGlvbnMsCiAgICAgICAgICBkZWZhdWx0Q29uZmlndXJhdGlvbjogZGVmaW5pdGlvbi5kZWZhdWx0Q29uZmlndXJhdGlvbgogICAgICAgIH07CiAgICAgICAgc3VwZXIuc2V0KGRlZmluaXRpb24ubmFtZSwgdGFyZ2V0KTsKICAgICAgICByZXR1cm4gdGFyZ2V0OwogICAgICB9CiAgICAgIHNldChuYW1lLCB2YWx1ZSkgewogICAgICAgIHRoaXMuX3ZhbGlkYXRlTmFtZShuYW1lKTsKICAgICAgICBzdXBlci5zZXQobmFtZSwgdmFsdWUpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIF92YWxpZGF0ZU5hbWUobmFtZSkgewogICAgICAgIGlmICh0eXBlb2YgbmFtZSAhPT0gInN0cmluZyIpIHsKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIlRhcmdldCBuYW1lIG11c3QgYmUgYSBzdHJpbmcuIik7CiAgICAgICAgfQogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVGFyZ2V0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBUYXJnZXREZWZpbml0aW9uQ29sbGVjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9wYXRoLmpzCnZhciByZXF1aXJlX3BhdGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9wYXRoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5wYXRoID0gZXhwb3J0czIuTm9ybWFsaXplZFJvb3QgPSBleHBvcnRzMi5Ob3JtYWxpemVkU2VwID0gZXhwb3J0czIuUGF0aENhbm5vdEJlRnJhZ21lbnRFeGNlcHRpb24gPSBleHBvcnRzMi5QYXRoTXVzdEJlQWJzb2x1dGVFeGNlcHRpb24gPSBleHBvcnRzMi5JbnZhbGlkUGF0aEV4Y2VwdGlvbiA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLnNwbGl0ID0gc3BsaXQ7CiAgICBleHBvcnRzMi5leHRuYW1lID0gZXh0bmFtZTsKICAgIGV4cG9ydHMyLmJhc2VuYW1lID0gYmFzZW5hbWU7CiAgICBleHBvcnRzMi5kaXJuYW1lID0gZGlybmFtZTsKICAgIGV4cG9ydHMyLmpvaW4gPSBqb2luMjsKICAgIGV4cG9ydHMyLmlzQWJzb2x1dGUgPSBpc0Fic29sdXRlOwogICAgZXhwb3J0czIucmVsYXRpdmUgPSByZWxhdGl2ZTsKICAgIGV4cG9ydHMyLnJlc29sdmUgPSByZXNvbHZlOwogICAgZXhwb3J0czIuZnJhZ21lbnQgPSBmcmFnbWVudDsKICAgIGV4cG9ydHMyLnJlc2V0Tm9ybWFsaXplQ2FjaGUgPSByZXNldE5vcm1hbGl6ZUNhY2hlOwogICAgZXhwb3J0czIubm9ybWFsaXplID0gbm9ybWFsaXplOwogICAgZXhwb3J0czIubm9DYWNoZU5vcm1hbGl6ZSA9IG5vQ2FjaGVOb3JtYWxpemU7CiAgICBleHBvcnRzMi5hc1dpbmRvd3NQYXRoID0gYXNXaW5kb3dzUGF0aDsKICAgIGV4cG9ydHMyLmFzUG9zaXhQYXRoID0gYXNQb3NpeFBhdGg7CiAgICBleHBvcnRzMi5nZXRTeXN0ZW1QYXRoID0gZ2V0U3lzdGVtUGF0aDsKICAgIHZhciBleGNlcHRpb25fMSA9IHJlcXVpcmVfZXhjZXB0aW9uKCk7CiAgICB2YXIgSW52YWxpZFBhdGhFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGV4Y2VwdGlvbl8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihwYXRoMikgewogICAgICAgIHN1cGVyKGBQYXRoICR7SlNPTi5zdHJpbmdpZnkocGF0aDIpfSBpcyBpbnZhbGlkLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW52YWxpZFBhdGhFeGNlcHRpb24gPSBJbnZhbGlkUGF0aEV4Y2VwdGlvbjsKICAgIHZhciBQYXRoTXVzdEJlQWJzb2x1dGVFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGV4Y2VwdGlvbl8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihwYXRoMikgewogICAgICAgIHN1cGVyKGBQYXRoICR7SlNPTi5zdHJpbmdpZnkocGF0aDIpfSBtdXN0IGJlIGFic29sdXRlLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuUGF0aE11c3RCZUFic29sdXRlRXhjZXB0aW9uID0gUGF0aE11c3RCZUFic29sdXRlRXhjZXB0aW9uOwogICAgdmFyIFBhdGhDYW5ub3RCZUZyYWdtZW50RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBleGNlcHRpb25fMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IocGF0aDIpIHsKICAgICAgICBzdXBlcihgUGF0aCAke0pTT04uc3RyaW5naWZ5KHBhdGgyKX0gY2Fubm90IGJlIG1hZGUgYSBmcmFnbWVudC5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlBhdGhDYW5ub3RCZUZyYWdtZW50RXhjZXB0aW9uID0gUGF0aENhbm5vdEJlRnJhZ21lbnRFeGNlcHRpb247CiAgICBleHBvcnRzMi5Ob3JtYWxpemVkU2VwID0gIi8iOwogICAgZXhwb3J0czIuTm9ybWFsaXplZFJvb3QgPSBleHBvcnRzMi5Ob3JtYWxpemVkU2VwOwogICAgZnVuY3Rpb24gc3BsaXQocGF0aDIpIHsKICAgICAgY29uc3QgZnJhZ21lbnRzID0gcGF0aDIuc3BsaXQoZXhwb3J0czIuTm9ybWFsaXplZFNlcCkubWFwKCh4KSA9PiBmcmFnbWVudCh4KSk7CiAgICAgIGlmIChmcmFnbWVudHNbZnJhZ21lbnRzLmxlbmd0aCAtIDFdLmxlbmd0aCA9PT0gMCkgewogICAgICAgIGZyYWdtZW50cy5wb3AoKTsKICAgICAgfQogICAgICByZXR1cm4gZnJhZ21lbnRzOwogICAgfQogICAgZnVuY3Rpb24gZXh0bmFtZShwYXRoMikgewogICAgICBjb25zdCBiYXNlID0gYmFzZW5hbWUocGF0aDIpOwogICAgICBjb25zdCBpID0gYmFzZS5sYXN0SW5kZXhPZigiLiIpOwogICAgICBpZiAoaSA8IDEpIHsKICAgICAgICByZXR1cm4gIiI7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuIGJhc2Uuc2xpY2UoaSk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGJhc2VuYW1lKHBhdGgyKSB7CiAgICAgIGNvbnN0IGkgPSBwYXRoMi5sYXN0SW5kZXhPZihleHBvcnRzMi5Ob3JtYWxpemVkU2VwKTsKICAgICAgaWYgKGkgPT0gLTEpIHsKICAgICAgICByZXR1cm4gZnJhZ21lbnQocGF0aDIpOwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiBmcmFnbWVudChwYXRoMi5zbGljZShwYXRoMi5sYXN0SW5kZXhPZihleHBvcnRzMi5Ob3JtYWxpemVkU2VwKSArIDEpKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gZGlybmFtZShwYXRoMikgewogICAgICBjb25zdCBpbmRleCA9IHBhdGgyLmxhc3RJbmRleE9mKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApOwogICAgICBpZiAoaW5kZXggPT09IC0xKSB7CiAgICAgICAgcmV0dXJuICIiOwogICAgICB9CiAgICAgIGNvbnN0IGVuZEluZGV4ID0gaW5kZXggPT09IDAgPyAxIDogaW5kZXg7CiAgICAgIHJldHVybiBub3JtYWxpemUocGF0aDIuc2xpY2UoMCwgZW5kSW5kZXgpKTsKICAgIH0KICAgIGZ1bmN0aW9uIGpvaW4yKHAxLCAuLi5vdGhlcnMpIHsKICAgICAgaWYgKG90aGVycy5sZW5ndGggPiAwKSB7CiAgICAgICAgcmV0dXJuIG5vcm1hbGl6ZSgocDEgPyBwMSArIGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXAgOiAiIikgKyBvdGhlcnMuam9pbihleHBvcnRzMi5Ob3JtYWxpemVkU2VwKSk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuIHAxOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBpc0Fic29sdXRlKHApIHsKICAgICAgcmV0dXJuIHAuc3RhcnRzV2l0aChleHBvcnRzMi5Ob3JtYWxpemVkU2VwKTsKICAgIH0KICAgIGZ1bmN0aW9uIHJlbGF0aXZlKGZyb20sIHRvKSB7CiAgICAgIGlmICghaXNBYnNvbHV0ZShmcm9tKSkgewogICAgICAgIHRocm93IG5ldyBQYXRoTXVzdEJlQWJzb2x1dGVFeGNlcHRpb24oZnJvbSk7CiAgICAgIH0KICAgICAgaWYgKCFpc0Fic29sdXRlKHRvKSkgewogICAgICAgIHRocm93IG5ldyBQYXRoTXVzdEJlQWJzb2x1dGVFeGNlcHRpb24odG8pOwogICAgICB9CiAgICAgIGxldCBwOwogICAgICBpZiAoZnJvbSA9PSB0bykgewogICAgICAgIHAgPSAiIjsKICAgICAgfSBlbHNlIHsKICAgICAgICBjb25zdCBzcGxpdEZyb20gPSBzcGxpdChmcm9tKTsKICAgICAgICBjb25zdCBzcGxpdFRvID0gc3BsaXQodG8pOwogICAgICAgIHdoaWxlIChzcGxpdEZyb20ubGVuZ3RoID4gMCAmJiBzcGxpdFRvLmxlbmd0aCA+IDAgJiYgc3BsaXRGcm9tWzBdID09IHNwbGl0VG9bMF0pIHsKICAgICAgICAgIHNwbGl0RnJvbS5zaGlmdCgpOwogICAgICAgICAgc3BsaXRUby5zaGlmdCgpOwogICAgICAgIH0KICAgICAgICBpZiAoc3BsaXRGcm9tLmxlbmd0aCA9PSAwKSB7CiAgICAgICAgICBwID0gc3BsaXRUby5qb2luKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBwID0gc3BsaXRGcm9tLm1hcCgoKSA9PiAiLi4iKS5jb25jYXQoc3BsaXRUbykuam9pbihleHBvcnRzMi5Ob3JtYWxpemVkU2VwKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIG5vcm1hbGl6ZShwKTsKICAgIH0KICAgIGZ1bmN0aW9uIHJlc29sdmUocDEsIHAyKSB7CiAgICAgIGlmIChpc0Fic29sdXRlKHAyKSkgewogICAgICAgIHJldHVybiBwMjsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gam9pbjIocDEsIHAyKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gZnJhZ21lbnQocGF0aDIpIHsKICAgICAgaWYgKHBhdGgyLmluZGV4T2YoZXhwb3J0czIuTm9ybWFsaXplZFNlcCkgIT0gLTEpIHsKICAgICAgICB0aHJvdyBuZXcgUGF0aENhbm5vdEJlRnJhZ21lbnRFeGNlcHRpb24ocGF0aDIpOwogICAgICB9CiAgICAgIHJldHVybiBwYXRoMjsKICAgIH0KICAgIHZhciBub3JtYWxpemVkQ2FjaGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgZnVuY3Rpb24gcmVzZXROb3JtYWxpemVDYWNoZSgpIHsKICAgICAgbm9ybWFsaXplZENhY2hlID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgIH0KICAgIGZ1bmN0aW9uIG5vcm1hbGl6ZShwYXRoMikgewogICAgICBsZXQgbWF5YmVQYXRoID0gbm9ybWFsaXplZENhY2hlLmdldChwYXRoMik7CiAgICAgIGlmICghbWF5YmVQYXRoKSB7CiAgICAgICAgbWF5YmVQYXRoID0gbm9DYWNoZU5vcm1hbGl6ZShwYXRoMik7CiAgICAgICAgbm9ybWFsaXplZENhY2hlLnNldChwYXRoMiwgbWF5YmVQYXRoKTsKICAgICAgfQogICAgICByZXR1cm4gbWF5YmVQYXRoOwogICAgfQogICAgZnVuY3Rpb24gbm9DYWNoZU5vcm1hbGl6ZShwYXRoMikgewogICAgICBpZiAocGF0aDIgPT0gIiIgfHwgcGF0aDIgPT0gIi4iKSB7CiAgICAgICAgcmV0dXJuICIiOwogICAgICB9IGVsc2UgaWYgKHBhdGgyID09IGV4cG9ydHMyLk5vcm1hbGl6ZWRSb290KSB7CiAgICAgICAgcmV0dXJuIGV4cG9ydHMyLk5vcm1hbGl6ZWRSb290OwogICAgICB9CiAgICAgIGNvbnN0IG9yaWdpbmFsID0gcGF0aDI7CiAgICAgIGlmIChwYXRoMi5tYXRjaCgvXltBLVpdOlsvXFxdL2kpKSB7CiAgICAgICAgcGF0aDIgPSAiXFwiICsgcGF0aDJbMF0udG9VcHBlckNhc2UoKSArICJcXCIgKyBwYXRoMi5zbGljZSgzKTsKICAgICAgfQogICAgICBjb25zdCBwID0gcGF0aDIuc3BsaXQoL1svXFxdL2cpOwogICAgICBsZXQgcmVsYXRpdmUyID0gZmFsc2U7CiAgICAgIGxldCBpID0gMTsKICAgICAgaWYgKHBbMF0gIT0gIiIpIHsKICAgICAgICBwLnVuc2hpZnQoIi4iKTsKICAgICAgICByZWxhdGl2ZTIgPSB0cnVlOwogICAgICB9CiAgICAgIHdoaWxlIChpIDwgcC5sZW5ndGgpIHsKICAgICAgICBpZiAocFtpXSA9PSAiLiIpIHsKICAgICAgICAgIHAuc3BsaWNlKGksIDEpOwogICAgICAgIH0gZWxzZSBpZiAocFtpXSA9PSAiLi4iKSB7CiAgICAgICAgICBpZiAoaSA8IDIgJiYgIXJlbGF0aXZlMikgewogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFBhdGhFeGNlcHRpb24ob3JpZ2luYWwpOwogICAgICAgICAgfSBlbHNlIGlmIChpID49IDIgJiYgcFtpIC0gMV0gIT0gIi4uIikgewogICAgICAgICAgICBwLnNwbGljZShpIC0gMSwgMik7CiAgICAgICAgICAgIGktLTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGkrKzsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgaWYgKHBbaV0gPT0gIiIpIHsKICAgICAgICAgIHAuc3BsaWNlKGksIDEpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBpKys7CiAgICAgICAgfQogICAgICB9CiAgICAgIGlmIChwLmxlbmd0aCA9PSAxKSB7CiAgICAgICAgcmV0dXJuIHBbMF0gPT0gIiIgPyBleHBvcnRzMi5Ob3JtYWxpemVkU2VwIDogIiI7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgaWYgKHBbMF0gPT0gIi4iKSB7CiAgICAgICAgICBwLnNoaWZ0KCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBwLmpvaW4oZXhwb3J0czIuTm9ybWFsaXplZFNlcCk7CiAgICAgIH0KICAgIH0KICAgIHZhciBwYXRoID0gKHN0cmluZ3MzLCAuLi52YWx1ZXMpID0+IHsKICAgICAgcmV0dXJuIG5vcm1hbGl6ZShTdHJpbmcucmF3KHN0cmluZ3MzLCAuLi52YWx1ZXMpKTsKICAgIH07CiAgICBleHBvcnRzMi5wYXRoID0gcGF0aDsKICAgIGZ1bmN0aW9uIGFzV2luZG93c1BhdGgocGF0aDIpIHsKICAgICAgY29uc3QgZHJpdmUgPSBwYXRoMi5tYXRjaCgvXlwvKFx3KSg/OlwvKC4qKSk/JC8pOwogICAgICBpZiAoZHJpdmUpIHsKICAgICAgICBjb25zdCBzdWJQYXRoID0gZHJpdmVbMl0gPyBkcml2ZVsyXS5yZXBsYWNlKC9cLy9nLCAiXFwiKSA6ICIiOwogICAgICAgIHJldHVybiBgJHtkcml2ZVsxXX06XFwke3N1YlBhdGh9YDsKICAgICAgfQogICAgICByZXR1cm4gcGF0aDIucmVwbGFjZSgvXC8vZywgIlxcIik7CiAgICB9CiAgICBmdW5jdGlvbiBhc1Bvc2l4UGF0aChwYXRoMikgewogICAgICByZXR1cm4gcGF0aDI7CiAgICB9CiAgICBmdW5jdGlvbiBnZXRTeXN0ZW1QYXRoKHBhdGgyKSB7CiAgICAgIGlmIChwcm9jZXNzLnBsYXRmb3JtLnN0YXJ0c1dpdGgoIndpbjMyIikpIHsKICAgICAgICByZXR1cm4gYXNXaW5kb3dzUGF0aChwYXRoMik7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuIGFzUG9zaXhQYXRoKHBhdGgyKTsKICAgICAgfQogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvYnVmZmVyLmpzCnZhciByZXF1aXJlX2J1ZmZlcjIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2J1ZmZlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc3RyaW5nVG9GaWxlQnVmZmVyID0gc3RyaW5nVG9GaWxlQnVmZmVyOwogICAgZXhwb3J0czIuZmlsZUJ1ZmZlclRvU3RyaW5nID0gZmlsZUJ1ZmZlclRvU3RyaW5nOwogICAgdmFyIG5vZGVfdXRpbF8xID0gcmVxdWlyZSgibm9kZTp1dGlsIik7CiAgICBmdW5jdGlvbiBzdHJpbmdUb0ZpbGVCdWZmZXIoc3RyKSB7CiAgICAgIHJldHVybiBuZXcgbm9kZV91dGlsXzEuVGV4dEVuY29kZXIoKS5lbmNvZGUoc3RyKS5idWZmZXI7CiAgICB9CiAgICBmdW5jdGlvbiBmaWxlQnVmZmVyVG9TdHJpbmcoZmlsZUJ1ZmZlcikgewogICAgICBpZiAoZmlsZUJ1ZmZlci50b1N0cmluZy5sZW5ndGggPT09IDEpIHsKICAgICAgICByZXR1cm4gZmlsZUJ1ZmZlci50b1N0cmluZygidXRmLTgiKTsKICAgICAgfQogICAgICByZXR1cm4gbmV3IG5vZGVfdXRpbF8xLlRleHREZWNvZGVyKCJ1dGYtOCIpLmRlY29kZShuZXcgVWludDhBcnJheShmaWxlQnVmZmVyKSk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9pbnRlcmZhY2UuanMKdmFyIHJlcXVpcmVfaW50ZXJmYWNlMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvaW50ZXJmYWNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Ib3N0V2F0Y2hFdmVudFR5cGUgPSB2b2lkIDA7CiAgICB2YXIgSG9zdFdhdGNoRXZlbnRUeXBlOwogICAgKGZ1bmN0aW9uKEhvc3RXYXRjaEV2ZW50VHlwZTIpIHsKICAgICAgSG9zdFdhdGNoRXZlbnRUeXBlMltIb3N0V2F0Y2hFdmVudFR5cGUyWyJDaGFuZ2VkIl0gPSAwXSA9ICJDaGFuZ2VkIjsKICAgICAgSG9zdFdhdGNoRXZlbnRUeXBlMltIb3N0V2F0Y2hFdmVudFR5cGUyWyJDcmVhdGVkIl0gPSAxXSA9ICJDcmVhdGVkIjsKICAgICAgSG9zdFdhdGNoRXZlbnRUeXBlMltIb3N0V2F0Y2hFdmVudFR5cGUyWyJEZWxldGVkIl0gPSAyXSA9ICJEZWxldGVkIjsKICAgICAgSG9zdFdhdGNoRXZlbnRUeXBlMltIb3N0V2F0Y2hFdmVudFR5cGUyWyJSZW5hbWVkIl0gPSAzXSA9ICJSZW5hbWVkIjsKICAgIH0pKEhvc3RXYXRjaEV2ZW50VHlwZSB8fCAoZXhwb3J0czIuSG9zdFdhdGNoRXZlbnRUeXBlID0gSG9zdFdhdGNoRXZlbnRUeXBlID0ge30pKTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L21lbW9yeS5qcwp2YXIgcmVxdWlyZV9tZW1vcnkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L21lbW9yeS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuU2ltcGxlTWVtb3J5SG9zdCA9IHZvaWQgMDsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24oKTsKICAgIHZhciBwYXRoXzEgPSByZXF1aXJlX3BhdGgoKTsKICAgIHZhciBpbnRlcmZhY2VfMSA9IHJlcXVpcmVfaW50ZXJmYWNlMigpOwogICAgdmFyIFNpbXBsZU1lbW9yeUhvc3QgPSBjbGFzcyB7CiAgICAgIF9jYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF93YXRjaGVycyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF9uZXdEaXJTdGF0cygpIHsKICAgICAgICByZXR1cm4gewogICAgICAgICAgaW5zcGVjdCgpIHsKICAgICAgICAgICAgcmV0dXJuICI8RGlyZWN0b3J5PiI7CiAgICAgICAgICB9LAogICAgICAgICAgaXNGaWxlKCkgewogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICB9LAogICAgICAgICAgaXNEaXJlY3RvcnkoKSB7CiAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICAgfSwKICAgICAgICAgIHNpemU6IDAsCiAgICAgICAgICBhdGltZTogLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCksCiAgICAgICAgICBjdGltZTogLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCksCiAgICAgICAgICBtdGltZTogLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCksCiAgICAgICAgICBiaXJ0aHRpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgY29udGVudDogbnVsbAogICAgICAgIH07CiAgICAgIH0KICAgICAgX25ld0ZpbGVTdGF0cyhjb250ZW50LCBvbGRTdGF0cykgewogICAgICAgIHJldHVybiB7CiAgICAgICAgICBpbnNwZWN0KCkgewogICAgICAgICAgICByZXR1cm4gYDxGaWxlIHNpemUoJHtjb250ZW50LmJ5dGVMZW5ndGh9KT5gOwogICAgICAgICAgfSwKICAgICAgICAgIGlzRmlsZSgpIHsKICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICB9LAogICAgICAgICAgaXNEaXJlY3RvcnkoKSB7CiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgIH0sCiAgICAgICAgICBzaXplOiBjb250ZW50LmJ5dGVMZW5ndGgsCiAgICAgICAgICBhdGltZTogb2xkU3RhdHMgPyBvbGRTdGF0cy5hdGltZSA6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgY3RpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgbXRpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgYmlydGh0aW1lOiBvbGRTdGF0cyA/IG9sZFN0YXRzLmJpcnRodGltZSA6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgY29udGVudAogICAgICAgIH07CiAgICAgIH0KICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgdGhpcy5fY2FjaGUuc2V0KCgwLCBwYXRoXzEubm9ybWFsaXplKSgiLyIpLCB0aGlzLl9uZXdEaXJTdGF0cygpKTsKICAgICAgfQogICAgICBfdG9BYnNvbHV0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCBwYXRoXzEuaXNBYnNvbHV0ZSkocGF0aCkgPyBwYXRoIDogKDAsIHBhdGhfMS5ub3JtYWxpemUpKCIvIiArIHBhdGgpOwogICAgICB9CiAgICAgIF91cGRhdGVXYXRjaGVycyhwYXRoLCB0eXBlKSB7CiAgICAgICAgY29uc3QgdGltZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpOwogICAgICAgIGxldCBjdXJyZW50UGF0aCA9IHBhdGg7CiAgICAgICAgbGV0IHBhcmVudCA9IG51bGw7CiAgICAgICAgaWYgKHRoaXMuX3dhdGNoZXJzLnNpemUgPT0gMCkgewogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBjb25zdCBtYXliZVdhdGNoZXIgPSB0aGlzLl93YXRjaGVycy5nZXQoY3VycmVudFBhdGgpOwogICAgICAgIGlmIChtYXliZVdhdGNoZXIpIHsKICAgICAgICAgIG1heWJlV2F0Y2hlci5mb3JFYWNoKCh3YXRjaGVyKSA9PiB7CiAgICAgICAgICAgIGNvbnN0IFtvcHRpb25zLCBzdWJqZWN0XSA9IHdhdGNoZXI7CiAgICAgICAgICAgIHN1YmplY3QubmV4dCh7IHBhdGgsIHRpbWUsIHR5cGUgfSk7CiAgICAgICAgICAgIGlmICghb3B0aW9ucy5wZXJzaXN0ZW50ICYmIHR5cGUgPT0gaW50ZXJmYWNlXzEuSG9zdFdhdGNoRXZlbnRUeXBlLkRlbGV0ZWQpIHsKICAgICAgICAgICAgICBzdWJqZWN0LmNvbXBsZXRlKCk7CiAgICAgICAgICAgICAgdGhpcy5fd2F0Y2hlcnMuZGVsZXRlKGN1cnJlbnRQYXRoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICAgIGRvIHsKICAgICAgICAgIGN1cnJlbnRQYXRoID0gcGFyZW50ICE9PSBudWxsID8gcGFyZW50IDogY3VycmVudFBhdGg7CiAgICAgICAgICBwYXJlbnQgPSAoMCwgcGF0aF8xLmRpcm5hbWUpKGN1cnJlbnRQYXRoKTsKICAgICAgICAgIGNvbnN0IG1heWJlV2F0Y2hlcjIgPSB0aGlzLl93YXRjaGVycy5nZXQoY3VycmVudFBhdGgpOwogICAgICAgICAgaWYgKG1heWJlV2F0Y2hlcjIpIHsKICAgICAgICAgICAgbWF5YmVXYXRjaGVyMi5mb3JFYWNoKCh3YXRjaGVyKSA9PiB7CiAgICAgICAgICAgICAgY29uc3QgW29wdGlvbnMsIHN1YmplY3RdID0gd2F0Y2hlcjsKICAgICAgICAgICAgICBpZiAoIW9wdGlvbnMucmVjdXJzaXZlKSB7CiAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHN1YmplY3QubmV4dCh7IHBhdGgsIHRpbWUsIHR5cGUgfSk7CiAgICAgICAgICAgICAgaWYgKCFvcHRpb25zLnBlcnNpc3RlbnQgJiYgdHlwZSA9PSBpbnRlcmZhY2VfMS5Ib3N0V2F0Y2hFdmVudFR5cGUuRGVsZXRlZCkgewogICAgICAgICAgICAgICAgc3ViamVjdC5jb21wbGV0ZSgpOwogICAgICAgICAgICAgICAgdGhpcy5fd2F0Y2hlcnMuZGVsZXRlKGN1cnJlbnRQYXRoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfQogICAgICAgIH0gd2hpbGUgKHBhcmVudCAhPSBjdXJyZW50UGF0aCk7CiAgICAgIH0KICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4geyBzeW5jaHJvbm91czogdHJ1ZSB9OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBMaXN0IG9mIHByb3RlY3RlZCBtZXRob2RzIHRoYXQgZ2l2ZSBkaXJlY3QgYWNjZXNzIG91dHNpZGUgdGhlIG9ic2VydmFibGVzIHRvIHRoZSBjYWNoZQogICAgICAgKiBhbmQgaW50ZXJuYWwgc3RhdGVzLgogICAgICAgKi8KICAgICAgX3dyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICBwYXRoID0gdGhpcy5fdG9BYnNvbHV0ZShwYXRoKTsKICAgICAgICBjb25zdCBvbGQgPSB0aGlzLl9jYWNoZS5nZXQocGF0aCk7CiAgICAgICAgaWYgKG9sZCAmJiBvbGQuaXNEaXJlY3RvcnkoKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlBhdGhJc0RpcmVjdG9yeUV4Y2VwdGlvbihwYXRoKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgZnJhZ21lbnRzID0gKDAsIHBhdGhfMS5zcGxpdCkocGF0aCk7CiAgICAgICAgbGV0IGN1cnIgPSAoMCwgcGF0aF8xLm5vcm1hbGl6ZSkoIi8iKTsKICAgICAgICBmb3IgKGNvbnN0IGZyIG9mIGZyYWdtZW50cykgewogICAgICAgICAgY3VyciA9ICgwLCBwYXRoXzEuam9pbikoY3VyciwgZnIpOwogICAgICAgICAgY29uc3QgbWF5YmVTdGF0cyA9IHRoaXMuX2NhY2hlLmdldChmcik7CiAgICAgICAgICBpZiAobWF5YmVTdGF0cykgewogICAgICAgICAgICBpZiAobWF5YmVTdGF0cy5pc0ZpbGUoKSkgewogICAgICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5QYXRoSXNGaWxlRXhjZXB0aW9uKGN1cnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aGlzLl9jYWNoZS5zZXQoY3VyciwgdGhpcy5fbmV3RGlyU3RhdHMoKSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IHN0YXRzID0gdGhpcy5fbmV3RmlsZVN0YXRzKGNvbnRlbnQsIG9sZCk7CiAgICAgICAgdGhpcy5fY2FjaGUuc2V0KHBhdGgsIHN0YXRzKTsKICAgICAgICB0aGlzLl91cGRhdGVXYXRjaGVycyhwYXRoLCBvbGQgPyBpbnRlcmZhY2VfMS5Ib3N0V2F0Y2hFdmVudFR5cGUuQ2hhbmdlZCA6IGludGVyZmFjZV8xLkhvc3RXYXRjaEV2ZW50VHlwZS5DcmVhdGVkKTsKICAgICAgfQogICAgICBfcmVhZChwYXRoKSB7CiAgICAgICAgcGF0aCA9IHRoaXMuX3RvQWJzb2x1dGUocGF0aCk7CiAgICAgICAgY29uc3QgbWF5YmVTdGF0cyA9IHRoaXMuX2NhY2hlLmdldChwYXRoKTsKICAgICAgICBpZiAoIW1heWJlU3RhdHMpIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgIH0gZWxzZSBpZiAobWF5YmVTdGF0cy5pc0RpcmVjdG9yeSgpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uKHBhdGgpOwogICAgICAgIH0gZWxzZSBpZiAoIW1heWJlU3RhdHMuY29udGVudCkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlBhdGhJc0RpcmVjdG9yeUV4Y2VwdGlvbihwYXRoKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIG1heWJlU3RhdHMuY29udGVudDsKICAgICAgICB9CiAgICAgIH0KICAgICAgX2RlbGV0ZShwYXRoKSB7CiAgICAgICAgcGF0aCA9IHRoaXMuX3RvQWJzb2x1dGUocGF0aCk7CiAgICAgICAgaWYgKHRoaXMuX2lzRGlyZWN0b3J5KHBhdGgpKSB7CiAgICAgICAgICBmb3IgKGNvbnN0IFtjYWNoZVBhdGhdIG9mIHRoaXMuX2NhY2hlLmVudHJpZXMoKSkgewogICAgICAgICAgICBpZiAoY2FjaGVQYXRoLnN0YXJ0c1dpdGgocGF0aCArIHBhdGhfMS5Ob3JtYWxpemVkU2VwKSB8fCBjYWNoZVBhdGggPT09IHBhdGgpIHsKICAgICAgICAgICAgICB0aGlzLl9jYWNoZS5kZWxldGUoY2FjaGVQYXRoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLl9jYWNoZS5kZWxldGUocGF0aCk7CiAgICAgICAgfQogICAgICAgIHRoaXMuX3VwZGF0ZVdhdGNoZXJzKHBhdGgsIGludGVyZmFjZV8xLkhvc3RXYXRjaEV2ZW50VHlwZS5EZWxldGVkKTsKICAgICAgfQogICAgICBfcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgZnJvbSA9IHRoaXMuX3RvQWJzb2x1dGUoZnJvbSk7CiAgICAgICAgdG8gPSB0aGlzLl90b0Fic29sdXRlKHRvKTsKICAgICAgICBpZiAoIXRoaXMuX2NhY2hlLmhhcyhmcm9tKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24oZnJvbSk7CiAgICAgICAgfSBlbHNlIGlmICh0aGlzLl9jYWNoZS5oYXModG8pKSB7CiAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZUFscmVhZHlFeGlzdEV4Y2VwdGlvbih0byk7CiAgICAgICAgfQogICAgICAgIGlmICh0aGlzLl9pc0RpcmVjdG9yeShmcm9tKSkgewogICAgICAgICAgZm9yIChjb25zdCBwYXRoIG9mIHRoaXMuX2NhY2hlLmtleXMoKSkgewogICAgICAgICAgICBpZiAocGF0aC5zdGFydHNXaXRoKGZyb20gKyBwYXRoXzEuTm9ybWFsaXplZFNlcCkpIHsKICAgICAgICAgICAgICBjb25zdCBjb250ZW50ID0gdGhpcy5fY2FjaGUuZ2V0KHBhdGgpOwogICAgICAgICAgICAgIGlmIChjb250ZW50KSB7CiAgICAgICAgICAgICAgICB0aGlzLl9jYWNoZS5zZXQoKDAsIHBhdGhfMS5qb2luKSh0bywgcGF0aF8xLk5vcm1hbGl6ZWRTZXAsIHBhdGguc2xpY2UoZnJvbS5sZW5ndGgpKSwgY29udGVudCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGNvbnN0IGNvbnRlbnQgPSB0aGlzLl9jYWNoZS5nZXQoZnJvbSk7CiAgICAgICAgICBpZiAoY29udGVudCkgewogICAgICAgICAgICBjb25zdCBmcmFnbWVudHMgPSAoMCwgcGF0aF8xLnNwbGl0KSh0byk7CiAgICAgICAgICAgIGNvbnN0IG5ld0RpcmVjdG9yaWVzID0gW107CiAgICAgICAgICAgIGxldCBjdXJyID0gKDAsIHBhdGhfMS5ub3JtYWxpemUpKCIvIik7CiAgICAgICAgICAgIGZvciAoY29uc3QgZnIgb2YgZnJhZ21lbnRzKSB7CiAgICAgICAgICAgICAgY3VyciA9ICgwLCBwYXRoXzEuam9pbikoY3VyciwgZnIpOwogICAgICAgICAgICAgIGNvbnN0IG1heWJlU3RhdHMgPSB0aGlzLl9jYWNoZS5nZXQoZnIpOwogICAgICAgICAgICAgIGlmIChtYXliZVN0YXRzKSB7CiAgICAgICAgICAgICAgICBpZiAobWF5YmVTdGF0cy5pc0ZpbGUoKSkgewogICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuUGF0aElzRmlsZUV4Y2VwdGlvbihjdXJyKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgbmV3RGlyZWN0b3JpZXMucHVzaChjdXJyKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZm9yIChjb25zdCBuZXdEaXJlY3Rvcnkgb2YgbmV3RGlyZWN0b3JpZXMpIHsKICAgICAgICAgICAgICB0aGlzLl9jYWNoZS5zZXQobmV3RGlyZWN0b3J5LCB0aGlzLl9uZXdEaXJTdGF0cygpKTsKICAgICAgICAgICAgfQogICAgICAgICAgICB0aGlzLl9jYWNoZS5kZWxldGUoZnJvbSk7CiAgICAgICAgICAgIHRoaXMuX2NhY2hlLnNldCh0bywgY29udGVudCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHRoaXMuX3VwZGF0ZVdhdGNoZXJzKGZyb20sIGludGVyZmFjZV8xLkhvc3RXYXRjaEV2ZW50VHlwZS5SZW5hbWVkKTsKICAgICAgfQogICAgICBfbGlzdChwYXRoKSB7CiAgICAgICAgcGF0aCA9IHRoaXMuX3RvQWJzb2x1dGUocGF0aCk7CiAgICAgICAgaWYgKHRoaXMuX2lzRmlsZShwYXRoKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlBhdGhJc0ZpbGVFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGZyYWdtZW50cyA9ICgwLCBwYXRoXzEuc3BsaXQpKHBhdGgpOwogICAgICAgIGNvbnN0IHJlc3VsdCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgaWYgKHBhdGggIT09IHBhdGhfMS5Ob3JtYWxpemVkUm9vdCkgewogICAgICAgICAgZm9yIChjb25zdCBwIG9mIHRoaXMuX2NhY2hlLmtleXMoKSkgewogICAgICAgICAgICBpZiAocC5zdGFydHNXaXRoKHBhdGggKyBwYXRoXzEuTm9ybWFsaXplZFNlcCkpIHsKICAgICAgICAgICAgICByZXN1bHQuYWRkKCgwLCBwYXRoXzEuc3BsaXQpKHApW2ZyYWdtZW50cy5sZW5ndGhdKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBmb3IgKGNvbnN0IHAgb2YgdGhpcy5fY2FjaGUua2V5cygpKSB7CiAgICAgICAgICAgIGlmIChwLnN0YXJ0c1dpdGgocGF0aF8xLk5vcm1hbGl6ZWRTZXApICYmIHAgIT09IHBhdGhfMS5Ob3JtYWxpemVkUm9vdCkgewogICAgICAgICAgICAgIHJlc3VsdC5hZGQoKDAsIHBhdGhfMS5zcGxpdCkocClbMV0pOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBbLi4ucmVzdWx0XTsKICAgICAgfQogICAgICBfZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gISF0aGlzLl9jYWNoZS5nZXQodGhpcy5fdG9BYnNvbHV0ZShwYXRoKSk7CiAgICAgIH0KICAgICAgX2lzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICBjb25zdCBtYXliZVN0YXRzID0gdGhpcy5fY2FjaGUuZ2V0KHRoaXMuX3RvQWJzb2x1dGUocGF0aCkpOwogICAgICAgIHJldHVybiBtYXliZVN0YXRzID8gbWF5YmVTdGF0cy5pc0RpcmVjdG9yeSgpIDogZmFsc2U7CiAgICAgIH0KICAgICAgX2lzRmlsZShwYXRoKSB7CiAgICAgICAgY29uc3QgbWF5YmVTdGF0cyA9IHRoaXMuX2NhY2hlLmdldCh0aGlzLl90b0Fic29sdXRlKHBhdGgpKTsKICAgICAgICByZXR1cm4gbWF5YmVTdGF0cyA/IG1heWJlU3RhdHMuaXNGaWxlKCkgOiBmYWxzZTsKICAgICAgfQogICAgICBfc3RhdChwYXRoKSB7CiAgICAgICAgY29uc3QgbWF5YmVTdGF0cyA9IHRoaXMuX2NhY2hlLmdldCh0aGlzLl90b0Fic29sdXRlKHBhdGgpKTsKICAgICAgICBpZiAoIW1heWJlU3RhdHMpIHsKICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gbWF5YmVTdGF0czsKICAgICAgICB9CiAgICAgIH0KICAgICAgX3dhdGNoKHBhdGgsIG9wdGlvbnMpIHsKICAgICAgICBwYXRoID0gdGhpcy5fdG9BYnNvbHV0ZShwYXRoKTsKICAgICAgICBjb25zdCBzdWJqZWN0ID0gbmV3IHJ4anNfMS5TdWJqZWN0KCk7CiAgICAgICAgbGV0IG1heWJlV2F0Y2hlckFycmF5ID0gdGhpcy5fd2F0Y2hlcnMuZ2V0KHBhdGgpOwogICAgICAgIGlmICghbWF5YmVXYXRjaGVyQXJyYXkpIHsKICAgICAgICAgIG1heWJlV2F0Y2hlckFycmF5ID0gW107CiAgICAgICAgICB0aGlzLl93YXRjaGVycy5zZXQocGF0aCwgbWF5YmVXYXRjaGVyQXJyYXkpOwogICAgICAgIH0KICAgICAgICBtYXliZVdhdGNoZXJBcnJheS5wdXNoKFtvcHRpb25zIHx8IHt9LCBzdWJqZWN0XSk7CiAgICAgICAgcmV0dXJuIHN1YmplY3QuYXNPYnNlcnZhYmxlKCk7CiAgICAgIH0KICAgICAgd3JpdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgdGhpcy5fd3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgICBvYnMubmV4dCgpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBjb25zdCBjb250ZW50ID0gdGhpcy5fcmVhZChwYXRoKTsKICAgICAgICAgIG9icy5uZXh0KGNvbnRlbnQpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIHRoaXMuX2RlbGV0ZShwYXRoKTsKICAgICAgICAgIG9icy5uZXh0KCk7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICByZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIHRoaXMuX3JlbmFtZShmcm9tLCB0byk7CiAgICAgICAgICBvYnMubmV4dCgpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgbGlzdChwYXRoKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBvYnMubmV4dCh0aGlzLl9saXN0KHBhdGgpKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBvYnMubmV4dCh0aGlzLl9leGlzdHMocGF0aCkpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgaXNEaXJlY3RvcnkocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgb2JzLm5leHQodGhpcy5faXNEaXJlY3RvcnkocGF0aCkpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgaXNGaWxlKHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIG9icy5uZXh0KHRoaXMuX2lzRmlsZShwYXRoKSk7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIG9icy5uZXh0KHRoaXMuX3N0YXQocGF0aCkpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgd2F0Y2gocGF0aCwgb3B0aW9ucykgewogICAgICAgIHJldHVybiB0aGlzLl93YXRjaChwYXRoLCBvcHRpb25zKTsKICAgICAgfQogICAgICByZXNldCgpIHsKICAgICAgICB0aGlzLl9jYWNoZS5jbGVhcigpOwogICAgICAgIHRoaXMuX3dhdGNoZXJzLmNsZWFyKCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TaW1wbGVNZW1vcnlIb3N0ID0gU2ltcGxlTWVtb3J5SG9zdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3N5bmMuanMKdmFyIHJlcXVpcmVfc3luYyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3Qvc3luYy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuU3luY0RlbGVnYXRlSG9zdCA9IGV4cG9ydHMyLlN5bmNocm9ub3VzRGVsZWdhdGVFeHBlY3RlZEV4Y2VwdGlvbiA9IHZvaWQgMDsKICAgIHZhciBleGNlcHRpb25fMSA9IHJlcXVpcmVfZXhjZXB0aW9uKCk7CiAgICB2YXIgU3luY2hyb25vdXNEZWxlZ2F0ZUV4cGVjdGVkRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBleGNlcHRpb25fMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgc3VwZXIoYEV4cGVjdGVkIGEgc3luY2hyb25vdXMgZGVsZWdhdGUgYnV0IGdvdCBhbiBhc3luY2hyb25vdXMgb25lLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuU3luY2hyb25vdXNEZWxlZ2F0ZUV4cGVjdGVkRXhjZXB0aW9uID0gU3luY2hyb25vdXNEZWxlZ2F0ZUV4cGVjdGVkRXhjZXB0aW9uOwogICAgdmFyIFN5bmNEZWxlZ2F0ZUhvc3QgPSBjbGFzcyB7CiAgICAgIF9kZWxlZ2F0ZTsKICAgICAgY29uc3RydWN0b3IoX2RlbGVnYXRlKSB7CiAgICAgICAgdGhpcy5fZGVsZWdhdGUgPSBfZGVsZWdhdGU7CiAgICAgICAgaWYgKCFfZGVsZWdhdGUuY2FwYWJpbGl0aWVzLnN5bmNocm9ub3VzKSB7CiAgICAgICAgICB0aHJvdyBuZXcgU3luY2hyb25vdXNEZWxlZ2F0ZUV4cGVjdGVkRXhjZXB0aW9uKCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIF9kb1N5bmNDYWxsKG9ic2VydmFibGUpIHsKICAgICAgICBsZXQgY29tcGxldGVkID0gZmFsc2U7CiAgICAgICAgbGV0IHJlc3VsdCA9IHZvaWQgMDsKICAgICAgICBsZXQgZXJyb3JSZXN1bHQgPSB2b2lkIDA7CiAgICAgICAgb2JzZXJ2YWJsZS5zdWJzY3JpYmUoKHgpID0+IHJlc3VsdCA9IHgsIChlcnIpID0+IGVycm9yUmVzdWx0ID0gZXJyLCAoKSA9PiBjb21wbGV0ZWQgPSB0cnVlKTsKICAgICAgICBpZiAoZXJyb3JSZXN1bHQgIT09IHZvaWQgMCkgewogICAgICAgICAgdGhyb3cgZXJyb3JSZXN1bHQ7CiAgICAgICAgfQogICAgICAgIGlmICghY29tcGxldGVkKSB7CiAgICAgICAgICB0aHJvdyBuZXcgU3luY2hyb25vdXNEZWxlZ2F0ZUV4cGVjdGVkRXhjZXB0aW9uKCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH0KICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuY2FwYWJpbGl0aWVzOwogICAgICB9CiAgICAgIGdldCBkZWxlZ2F0ZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGU7CiAgICAgIH0KICAgICAgd3JpdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHJldHVybiB0aGlzLl9kb1N5bmNDYWxsKHRoaXMuX2RlbGVnYXRlLndyaXRlKHBhdGgsIGNvbnRlbnQpKTsKICAgICAgfQogICAgICByZWFkKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZG9TeW5jQ2FsbCh0aGlzLl9kZWxlZ2F0ZS5yZWFkKHBhdGgpKTsKICAgICAgfQogICAgICBkZWxldGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kb1N5bmNDYWxsKHRoaXMuX2RlbGVnYXRlLmRlbGV0ZShwYXRoKSk7CiAgICAgIH0KICAgICAgcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RvU3luY0NhbGwodGhpcy5fZGVsZWdhdGUucmVuYW1lKGZyb20sIHRvKSk7CiAgICAgIH0KICAgICAgbGlzdChwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RvU3luY0NhbGwodGhpcy5fZGVsZWdhdGUubGlzdChwYXRoKSk7CiAgICAgIH0KICAgICAgZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZG9TeW5jQ2FsbCh0aGlzLl9kZWxlZ2F0ZS5leGlzdHMocGF0aCkpOwogICAgICB9CiAgICAgIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZG9TeW5jQ2FsbCh0aGlzLl9kZWxlZ2F0ZS5pc0RpcmVjdG9yeShwYXRoKSk7CiAgICAgIH0KICAgICAgaXNGaWxlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZG9TeW5jQ2FsbCh0aGlzLl9kZWxlZ2F0ZS5pc0ZpbGUocGF0aCkpOwogICAgICB9CiAgICAgIC8vIFNvbWUgaG9zdHMgbWF5IG5vdCBzdXBwb3J0IHN0YXQuCiAgICAgIHN0YXQocGF0aCkgewogICAgICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuX2RlbGVnYXRlLnN0YXQocGF0aCk7CiAgICAgICAgaWYgKHJlc3VsdCkgewogICAgICAgICAgcmV0dXJuIHRoaXMuX2RvU3luY0NhbGwocmVzdWx0KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgICAgfQogICAgICB9CiAgICAgIHdhdGNoKHBhdGgsIG9wdGlvbnMpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUud2F0Y2gocGF0aCwgb3B0aW9ucyk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TeW5jRGVsZWdhdGVIb3N0ID0gU3luY0RlbGVnYXRlSG9zdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Rlc3QuanMKdmFyIHJlcXVpcmVfdGVzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvdGVzdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVGVzdEhvc3QgPSB2b2lkIDA7CiAgICB2YXIgcGF0aF8xID0gcmVxdWlyZV9wYXRoKCk7CiAgICB2YXIgYnVmZmVyXzEgPSByZXF1aXJlX2J1ZmZlcjIoKTsKICAgIHZhciBtZW1vcnlfMSA9IHJlcXVpcmVfbWVtb3J5KCk7CiAgICB2YXIgc3luY18xID0gcmVxdWlyZV9zeW5jKCk7CiAgICB2YXIgVGVzdEhvc3QgPSBjbGFzcyBfVGVzdEhvc3QgZXh0ZW5kcyBtZW1vcnlfMS5TaW1wbGVNZW1vcnlIb3N0IHsKICAgICAgX3JlY29yZHMgPSBbXTsKICAgICAgX3N5bmMgPSBudWxsOwogICAgICBjb25zdHJ1Y3RvcihtYXAgPSB7fSkgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgZm9yIChjb25zdCBmaWxlUGF0aCBvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhtYXApKSB7CiAgICAgICAgICB0aGlzLl93cml0ZSgoMCwgcGF0aF8xLm5vcm1hbGl6ZSkoZmlsZVBhdGgpLCAoMCwgYnVmZmVyXzEuc3RyaW5nVG9GaWxlQnVmZmVyKShtYXBbZmlsZVBhdGhdKSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGdldCByZWNvcmRzKCkgewogICAgICAgIHJldHVybiBbLi4udGhpcy5fcmVjb3Jkc107CiAgICAgIH0KICAgICAgY2xlYXJSZWNvcmRzKCkgewogICAgICAgIHRoaXMuX3JlY29yZHMgPSBbXTsKICAgICAgfQogICAgICBnZXQgZmlsZXMoKSB7CiAgICAgICAgY29uc3Qgc3luYyA9IHRoaXMuc3luYzsKICAgICAgICBmdW5jdGlvbiBfdmlzaXQocCkgewogICAgICAgICAgcmV0dXJuIHN5bmMubGlzdChwKS5tYXAoKGZyYWdtZW50KSA9PiAoMCwgcGF0aF8xLmpvaW4pKHAsIGZyYWdtZW50KSkucmVkdWNlKChmaWxlcywgcGF0aCkgPT4gewogICAgICAgICAgICBpZiAoc3luYy5pc0RpcmVjdG9yeShwYXRoKSkgewogICAgICAgICAgICAgIHJldHVybiBmaWxlcy5jb25jYXQoX3Zpc2l0KHBhdGgpKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICByZXR1cm4gZmlsZXMuY29uY2F0KHBhdGgpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LCBbXSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBfdmlzaXQoKDAsIHBhdGhfMS5ub3JtYWxpemUpKCIvIikpOwogICAgICB9CiAgICAgIGdldCBzeW5jKCkgewogICAgICAgIGlmICghdGhpcy5fc3luYykgewogICAgICAgICAgdGhpcy5fc3luYyA9IG5ldyBzeW5jXzEuU3luY0RlbGVnYXRlSG9zdCh0aGlzKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX3N5bmM7CiAgICAgIH0KICAgICAgY2xvbmUoKSB7CiAgICAgICAgY29uc3QgbmV3SG9zdCA9IG5ldyBfVGVzdEhvc3QoKTsKICAgICAgICBuZXdIb3N0Ll9jYWNoZSA9IG5ldyBNYXAodGhpcy5fY2FjaGUpOwogICAgICAgIHJldHVybiBuZXdIb3N0OwogICAgICB9CiAgICAgIC8vIE92ZXJyaWRlIHBhcmVudHMgZnVuY3Rpb25zIHRvIGtlZXAgYSByZWNvcmQgb2YgYWxsIG9wZXJhdG9ycyB0aGF0IHdlcmUgZG9uZS4KICAgICAgX3dyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICB0aGlzLl9yZWNvcmRzLnB1c2goeyBraW5kOiAid3JpdGUiLCBwYXRoIH0pOwogICAgICAgIHJldHVybiBzdXBlci5fd3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgIH0KICAgICAgX3JlYWQocGF0aCkgewogICAgICAgIHRoaXMuX3JlY29yZHMucHVzaCh7IGtpbmQ6ICJyZWFkIiwgcGF0aCB9KTsKICAgICAgICByZXR1cm4gc3VwZXIuX3JlYWQocGF0aCk7CiAgICAgIH0KICAgICAgX2RlbGV0ZShwYXRoKSB7CiAgICAgICAgdGhpcy5fcmVjb3Jkcy5wdXNoKHsga2luZDogImRlbGV0ZSIsIHBhdGggfSk7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9kZWxldGUocGF0aCk7CiAgICAgIH0KICAgICAgX3JlbmFtZShmcm9tLCB0bykgewogICAgICAgIHRoaXMuX3JlY29yZHMucHVzaCh7IGtpbmQ6ICJyZW5hbWUiLCBmcm9tLCB0byB9KTsKICAgICAgICByZXR1cm4gc3VwZXIuX3JlbmFtZShmcm9tLCB0byk7CiAgICAgIH0KICAgICAgX2xpc3QocGF0aCkgewogICAgICAgIHRoaXMuX3JlY29yZHMucHVzaCh7IGtpbmQ6ICJsaXN0IiwgcGF0aCB9KTsKICAgICAgICByZXR1cm4gc3VwZXIuX2xpc3QocGF0aCk7CiAgICAgIH0KICAgICAgX2V4aXN0cyhwYXRoKSB7CiAgICAgICAgdGhpcy5fcmVjb3Jkcy5wdXNoKHsga2luZDogImV4aXN0cyIsIHBhdGggfSk7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9leGlzdHMocGF0aCk7CiAgICAgIH0KICAgICAgX2lzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICB0aGlzLl9yZWNvcmRzLnB1c2goeyBraW5kOiAiaXNEaXJlY3RvcnkiLCBwYXRoIH0pOwogICAgICAgIHJldHVybiBzdXBlci5faXNEaXJlY3RvcnkocGF0aCk7CiAgICAgIH0KICAgICAgX2lzRmlsZShwYXRoKSB7CiAgICAgICAgdGhpcy5fcmVjb3Jkcy5wdXNoKHsga2luZDogImlzRmlsZSIsIHBhdGggfSk7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9pc0ZpbGUocGF0aCk7CiAgICAgIH0KICAgICAgX3N0YXQocGF0aCkgewogICAgICAgIHRoaXMuX3JlY29yZHMucHVzaCh7IGtpbmQ6ICJzdGF0IiwgcGF0aCB9KTsKICAgICAgICByZXR1cm4gc3VwZXIuX3N0YXQocGF0aCk7CiAgICAgIH0KICAgICAgX3dhdGNoKHBhdGgsIG9wdGlvbnMpIHsKICAgICAgICB0aGlzLl9yZWNvcmRzLnB1c2goeyBraW5kOiAid2F0Y2giLCBwYXRoIH0pOwogICAgICAgIHJldHVybiBzdXBlci5fd2F0Y2gocGF0aCwgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgJHdyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gc3VwZXIuX3dyaXRlKCgwLCBwYXRoXzEubm9ybWFsaXplKShwYXRoKSwgKDAsIGJ1ZmZlcl8xLnN0cmluZ1RvRmlsZUJ1ZmZlcikoY29udGVudCkpOwogICAgICB9CiAgICAgICRyZWFkKHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIGJ1ZmZlcl8xLmZpbGVCdWZmZXJUb1N0cmluZykoc3VwZXIuX3JlYWQoKDAsIHBhdGhfMS5ub3JtYWxpemUpKHBhdGgpKSk7CiAgICAgIH0KICAgICAgJGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiBzdXBlci5fbGlzdCgoMCwgcGF0aF8xLm5vcm1hbGl6ZSkocGF0aCkpOwogICAgICB9CiAgICAgICRleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiBzdXBlci5fZXhpc3RzKCgwLCBwYXRoXzEubm9ybWFsaXplKShwYXRoKSk7CiAgICAgIH0KICAgICAgJGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICByZXR1cm4gc3VwZXIuX2lzRGlyZWN0b3J5KCgwLCBwYXRoXzEubm9ybWFsaXplKShwYXRoKSk7CiAgICAgIH0KICAgICAgJGlzRmlsZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9pc0ZpbGUoKDAsIHBhdGhfMS5ub3JtYWxpemUpKHBhdGgpKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlRlc3RIb3N0ID0gVGVzdEhvc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9yZXNvbHZlci5qcwp2YXIgcmVxdWlyZV9yZXNvbHZlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvcmVzb2x2ZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlJlc29sdmVySG9zdCA9IHZvaWQgMDsKICAgIHZhciBSZXNvbHZlckhvc3QgPSBjbGFzcyB7CiAgICAgIF9kZWxlZ2F0ZTsKICAgICAgY29uc3RydWN0b3IoX2RlbGVnYXRlKSB7CiAgICAgICAgdGhpcy5fZGVsZWdhdGUgPSBfZGVsZWdhdGU7CiAgICAgIH0KICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuY2FwYWJpbGl0aWVzOwogICAgICB9CiAgICAgIHdyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUud3JpdGUodGhpcy5fcmVzb2x2ZShwYXRoKSwgY29udGVudCk7CiAgICAgIH0KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLnJlYWQodGhpcy5fcmVzb2x2ZShwYXRoKSk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuZGVsZXRlKHRoaXMuX3Jlc29sdmUocGF0aCkpOwogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5yZW5hbWUodGhpcy5fcmVzb2x2ZShmcm9tKSwgdGhpcy5fcmVzb2x2ZSh0bykpOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5saXN0KHRoaXMuX3Jlc29sdmUocGF0aCkpOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLmV4aXN0cyh0aGlzLl9yZXNvbHZlKHBhdGgpKTsKICAgICAgfQogICAgICBpc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLmlzRGlyZWN0b3J5KHRoaXMuX3Jlc29sdmUocGF0aCkpOwogICAgICB9CiAgICAgIGlzRmlsZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLmlzRmlsZSh0aGlzLl9yZXNvbHZlKHBhdGgpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuc3RhdCh0aGlzLl9yZXNvbHZlKHBhdGgpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCB3YXRjaGluZy4KICAgICAgd2F0Y2gocGF0aCwgb3B0aW9ucykgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS53YXRjaCh0aGlzLl9yZXNvbHZlKHBhdGgpLCBvcHRpb25zKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlJlc29sdmVySG9zdCA9IFJlc29sdmVySG9zdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2FsaWFzLmpzCnZhciByZXF1aXJlX2FsaWFzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9hbGlhcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQWxpYXNIb3N0ID0gdm9pZCAwOwogICAgdmFyIHBhdGhfMSA9IHJlcXVpcmVfcGF0aCgpOwogICAgdmFyIHJlc29sdmVyXzEgPSByZXF1aXJlX3Jlc29sdmVyKCk7CiAgICB2YXIgQWxpYXNIb3N0ID0gY2xhc3MgZXh0ZW5kcyByZXNvbHZlcl8xLlJlc29sdmVySG9zdCB7CiAgICAgIF9hbGlhc2VzID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgX3Jlc29sdmUocGF0aCkgewogICAgICAgIGxldCBtYXliZUFsaWFzID0gdGhpcy5fYWxpYXNlcy5nZXQocGF0aCk7CiAgICAgICAgY29uc3Qgc3AgPSAoMCwgcGF0aF8xLnNwbGl0KShwYXRoKTsKICAgICAgICBjb25zdCByZW1haW5pbmcgPSBbXTsKICAgICAgICB3aGlsZSAoIW1heWJlQWxpYXMgJiYgc3AubGVuZ3RoID4gMCkgewogICAgICAgICAgY29uc3QgcCA9ICgwLCBwYXRoXzEuam9pbikocGF0aF8xLk5vcm1hbGl6ZWRSb290LCAuLi5zcCk7CiAgICAgICAgICBtYXliZUFsaWFzID0gdGhpcy5fYWxpYXNlcy5nZXQocCk7CiAgICAgICAgICBpZiAobWF5YmVBbGlhcykgewogICAgICAgICAgICBtYXliZUFsaWFzID0gKDAsIHBhdGhfMS5qb2luKShtYXliZUFsaWFzLCAuLi5yZW1haW5pbmcpOwogICAgICAgICAgfQogICAgICAgICAgcmVtYWluaW5nLnVuc2hpZnQoc3AucG9wKCkpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbWF5YmVBbGlhcyB8fCBwYXRoOwogICAgICB9CiAgICAgIGdldCBhbGlhc2VzKCkgewogICAgICAgIHJldHVybiB0aGlzLl9hbGlhc2VzOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuQWxpYXNIb3N0ID0gQWxpYXNIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvY3JlYXRlLmpzCnZhciByZXF1aXJlX2NyZWF0ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvY3JlYXRlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jcmVhdGVTeW5jSG9zdCA9IGNyZWF0ZVN5bmNIb3N0OwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICBmdW5jdGlvbiB3cmFwQWN0aW9uKGFjdGlvbikgewogICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChzdWJzY3JpYmVyKSA9PiB7CiAgICAgICAgc3Vic2NyaWJlci5uZXh0KGFjdGlvbigpKTsKICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgIH0pOwogICAgfQogICAgZnVuY3Rpb24gY3JlYXRlU3luY0hvc3QoaGFuZGxlcikgewogICAgICByZXR1cm4gbmV3IGNsYXNzIHsKICAgICAgICBnZXQgY2FwYWJpbGl0aWVzKCkgewogICAgICAgICAgcmV0dXJuIHsgc3luY2hyb25vdXM6IHRydWUgfTsKICAgICAgICB9CiAgICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLnJlYWQocGF0aCkpOwogICAgICAgIH0KICAgICAgICBsaXN0KHBhdGgpIHsKICAgICAgICAgIHJldHVybiB3cmFwQWN0aW9uKCgpID0+IGhhbmRsZXIubGlzdChwYXRoKSk7CiAgICAgICAgfQogICAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLmV4aXN0cyhwYXRoKSk7CiAgICAgICAgfQogICAgICAgIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICAgIHJldHVybiB3cmFwQWN0aW9uKCgpID0+IGhhbmRsZXIuaXNEaXJlY3RvcnkocGF0aCkpOwogICAgICAgIH0KICAgICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgICAgcmV0dXJuIHdyYXBBY3Rpb24oKCkgPT4gaGFuZGxlci5pc0ZpbGUocGF0aCkpOwogICAgICAgIH0KICAgICAgICBzdGF0KHBhdGgpIHsKICAgICAgICAgIHJldHVybiB3cmFwQWN0aW9uKCgpID0+IGhhbmRsZXIuc3RhdChwYXRoKSk7CiAgICAgICAgfQogICAgICAgIHdyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICAgIHJldHVybiB3cmFwQWN0aW9uKCgpID0+IGhhbmRsZXIud3JpdGUocGF0aCwgY29udGVudCkpOwogICAgICAgIH0KICAgICAgICBkZWxldGUocGF0aCkgewogICAgICAgICAgcmV0dXJuIHdyYXBBY3Rpb24oKCkgPT4gaGFuZGxlci5kZWxldGUocGF0aCkpOwogICAgICAgIH0KICAgICAgICByZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICAgIHJldHVybiB3cmFwQWN0aW9uKCgpID0+IGhhbmRsZXIucmVuYW1lKGZyb20sIHRvKSk7CiAgICAgICAgfQogICAgICAgIHdhdGNoKCkgewogICAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgICAgfQogICAgICB9KCk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9lbXB0eS5qcwp2YXIgcmVxdWlyZV9lbXB0eTIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2VtcHR5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5FbXB0eSA9IHZvaWQgMDsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24oKTsKICAgIHZhciBFbXB0eSA9IGNsYXNzIHsKICAgICAgY2FwYWJpbGl0aWVzID0gewogICAgICAgIHN5bmNocm9ub3VzOiB0cnVlCiAgICAgIH07CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpKTsKICAgICAgfQogICAgICBsaXN0KHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikoW10pOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKGZhbHNlKTsKICAgICAgfQogICAgICBpc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKGZhbHNlKTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKShmYWxzZSk7CiAgICAgIH0KICAgICAgc3RhdChwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKG51bGwpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRW1wdHkgPSBFbXB0eTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLWNlNjE3YjhkYTMuemlwL25vZGVfbW9kdWxlcy9waWNvbWF0Y2gvbGliL2NvbnN0YW50cy5qcwp2YXIgcmVxdWlyZV9jb25zdGFudHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLWNlNjE3YjhkYTMuemlwL25vZGVfbW9kdWxlcy9waWNvbWF0Y2gvbGliL2NvbnN0YW50cy5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBXSU5fU0xBU0ggPSAiXFxcXC8iOwogICAgdmFyIFdJTl9OT19TTEFTSCA9IGBbXiR7V0lOX1NMQVNIfV1gOwogICAgdmFyIERPVF9MSVRFUkFMID0gIlxcLiI7CiAgICB2YXIgUExVU19MSVRFUkFMID0gIlxcKyI7CiAgICB2YXIgUU1BUktfTElURVJBTCA9ICJcXD8iOwogICAgdmFyIFNMQVNIX0xJVEVSQUwgPSAiXFwvIjsKICAgIHZhciBPTkVfQ0hBUiA9ICIoPz0uKSI7CiAgICB2YXIgUU1BUksgPSAiW14vXSI7CiAgICB2YXIgRU5EX0FOQ0hPUiA9IGAoPzoke1NMQVNIX0xJVEVSQUx9fCQpYDsKICAgIHZhciBTVEFSVF9BTkNIT1IgPSBgKD86Xnwke1NMQVNIX0xJVEVSQUx9KWA7CiAgICB2YXIgRE9UU19TTEFTSCA9IGAke0RPVF9MSVRFUkFMfXsxLDJ9JHtFTkRfQU5DSE9SfWA7CiAgICB2YXIgTk9fRE9UID0gYCg/ISR7RE9UX0xJVEVSQUx9KWA7CiAgICB2YXIgTk9fRE9UUyA9IGAoPyEke1NUQVJUX0FOQ0hPUn0ke0RPVFNfU0xBU0h9KWA7CiAgICB2YXIgTk9fRE9UX1NMQVNIID0gYCg/ISR7RE9UX0xJVEVSQUx9ezAsMX0ke0VORF9BTkNIT1J9KWA7CiAgICB2YXIgTk9fRE9UU19TTEFTSCA9IGAoPyEke0RPVFNfU0xBU0h9KWA7CiAgICB2YXIgUU1BUktfTk9fRE9UID0gYFteLiR7U0xBU0hfTElURVJBTH1dYDsKICAgIHZhciBTVEFSID0gYCR7UU1BUkt9Kj9gOwogICAgdmFyIFNFUCA9ICIvIjsKICAgIHZhciBQT1NJWF9DSEFSUyA9IHsKICAgICAgRE9UX0xJVEVSQUwsCiAgICAgIFBMVVNfTElURVJBTCwKICAgICAgUU1BUktfTElURVJBTCwKICAgICAgU0xBU0hfTElURVJBTCwKICAgICAgT05FX0NIQVIsCiAgICAgIFFNQVJLLAogICAgICBFTkRfQU5DSE9SLAogICAgICBET1RTX1NMQVNILAogICAgICBOT19ET1QsCiAgICAgIE5PX0RPVFMsCiAgICAgIE5PX0RPVF9TTEFTSCwKICAgICAgTk9fRE9UU19TTEFTSCwKICAgICAgUU1BUktfTk9fRE9ULAogICAgICBTVEFSLAogICAgICBTVEFSVF9BTkNIT1IsCiAgICAgIFNFUAogICAgfTsKICAgIHZhciBXSU5ET1dTX0NIQVJTID0gewogICAgICAuLi5QT1NJWF9DSEFSUywKICAgICAgU0xBU0hfTElURVJBTDogYFske1dJTl9TTEFTSH1dYCwKICAgICAgUU1BUks6IFdJTl9OT19TTEFTSCwKICAgICAgU1RBUjogYCR7V0lOX05PX1NMQVNIfSo/YCwKICAgICAgRE9UU19TTEFTSDogYCR7RE9UX0xJVEVSQUx9ezEsMn0oPzpbJHtXSU5fU0xBU0h9XXwkKWAsCiAgICAgIE5PX0RPVDogYCg/ISR7RE9UX0xJVEVSQUx9KWAsCiAgICAgIE5PX0RPVFM6IGAoPyEoPzpefFske1dJTl9TTEFTSH1dKSR7RE9UX0xJVEVSQUx9ezEsMn0oPzpbJHtXSU5fU0xBU0h9XXwkKSlgLAogICAgICBOT19ET1RfU0xBU0g6IGAoPyEke0RPVF9MSVRFUkFMfXswLDF9KD86WyR7V0lOX1NMQVNIfV18JCkpYCwKICAgICAgTk9fRE9UU19TTEFTSDogYCg/ISR7RE9UX0xJVEVSQUx9ezEsMn0oPzpbJHtXSU5fU0xBU0h9XXwkKSlgLAogICAgICBRTUFSS19OT19ET1Q6IGBbXi4ke1dJTl9TTEFTSH1dYCwKICAgICAgU1RBUlRfQU5DSE9SOiBgKD86XnxbJHtXSU5fU0xBU0h9XSlgLAogICAgICBFTkRfQU5DSE9SOiBgKD86WyR7V0lOX1NMQVNIfV18JClgLAogICAgICBTRVA6ICJcXCIKICAgIH07CiAgICB2YXIgUE9TSVhfUkVHRVhfU09VUkNFID0gewogICAgICBhbG51bTogImEtekEtWjAtOSIsCiAgICAgIGFscGhhOiAiYS16QS1aIiwKICAgICAgYXNjaWk6ICJcXHgwMC1cXHg3RiIsCiAgICAgIGJsYW5rOiAiIFxcdCIsCiAgICAgIGNudHJsOiAiXFx4MDAtXFx4MUZcXHg3RiIsCiAgICAgIGRpZ2l0OiAiMC05IiwKICAgICAgZ3JhcGg6ICJcXHgyMS1cXHg3RSIsCiAgICAgIGxvd2VyOiAiYS16IiwKICAgICAgcHJpbnQ6ICJcXHgyMC1cXHg3RSAiLAogICAgICBwdW5jdDogIlxcLSFcIiMkJSYnKClcXCorLC4vOjs8PT4/QFtcXF1eX2B7fH1+IiwKICAgICAgc3BhY2U6ICIgXFx0XFxyXFxuXFx2XFxmIiwKICAgICAgdXBwZXI6ICJBLVoiLAogICAgICB3b3JkOiAiQS1aYS16MC05XyIsCiAgICAgIHhkaWdpdDogIkEtRmEtZjAtOSIKICAgIH07CiAgICBtb2R1bGUyLmV4cG9ydHMgPSB7CiAgICAgIE1BWF9MRU5HVEg6IDEwMjQgKiA2NCwKICAgICAgUE9TSVhfUkVHRVhfU09VUkNFLAogICAgICAvLyByZWd1bGFyIGV4cHJlc3Npb25zCiAgICAgIFJFR0VYX0JBQ0tTTEFTSDogL1xcKD8hWyorP14ke30ofClbXF1dKS9nLAogICAgICBSRUdFWF9OT05fU1BFQ0lBTF9DSEFSUzogL15bXkAhW1xdLiwkKis/Xnt9KCl8XFwvXSsvLAogICAgICBSRUdFWF9TUEVDSUFMX0NIQVJTOiAvWy0qKz8uXiR7fSh8KVtcXV0vLAogICAgICBSRUdFWF9TUEVDSUFMX0NIQVJTX0JBQ0tSRUY6IC8oXFw/KSgoXFcpKFwzKikpL2csCiAgICAgIFJFR0VYX1NQRUNJQUxfQ0hBUlNfR0xPQkFMOiAvKFstKis/Ll4ke30ofClbXF1dKS9nLAogICAgICBSRUdFWF9SRU1PVkVfQkFDS1NMQVNIOiAvKD86XFsuKj9bXlxcXVxdfFxcKD89LikpL2csCiAgICAgIC8vIFJlcGxhY2UgZ2xvYnMgd2l0aCBlcXVpdmFsZW50IHBhdHRlcm5zIHRvIHJlZHVjZSBwYXJzaW5nIHRpbWUuCiAgICAgIFJFUExBQ0VNRU5UUzogewogICAgICAgICIqKioiOiAiKiIsCiAgICAgICAgIioqLyoqIjogIioqIiwKICAgICAgICAiKiovKiovKioiOiAiKioiCiAgICAgIH0sCiAgICAgIC8vIERpZ2l0cwogICAgICBDSEFSXzA6IDQ4LAogICAgICAvKiAwICovCiAgICAgIENIQVJfOTogNTcsCiAgICAgIC8qIDkgKi8KICAgICAgLy8gQWxwaGFiZXQgY2hhcnMuCiAgICAgIENIQVJfVVBQRVJDQVNFX0E6IDY1LAogICAgICAvKiBBICovCiAgICAgIENIQVJfTE9XRVJDQVNFX0E6IDk3LAogICAgICAvKiBhICovCiAgICAgIENIQVJfVVBQRVJDQVNFX1o6IDkwLAogICAgICAvKiBaICovCiAgICAgIENIQVJfTE9XRVJDQVNFX1o6IDEyMiwKICAgICAgLyogeiAqLwogICAgICBDSEFSX0xFRlRfUEFSRU5USEVTRVM6IDQwLAogICAgICAvKiAoICovCiAgICAgIENIQVJfUklHSFRfUEFSRU5USEVTRVM6IDQxLAogICAgICAvKiApICovCiAgICAgIENIQVJfQVNURVJJU0s6IDQyLAogICAgICAvKiAqICovCiAgICAgIC8vIE5vbi1hbHBoYWJldGljIGNoYXJzLgogICAgICBDSEFSX0FNUEVSU0FORDogMzgsCiAgICAgIC8qICYgKi8KICAgICAgQ0hBUl9BVDogNjQsCiAgICAgIC8qIEAgKi8KICAgICAgQ0hBUl9CQUNLV0FSRF9TTEFTSDogOTIsCiAgICAgIC8qIFwgKi8KICAgICAgQ0hBUl9DQVJSSUFHRV9SRVRVUk46IDEzLAogICAgICAvKiBcciAqLwogICAgICBDSEFSX0NJUkNVTUZMRVhfQUNDRU5UOiA5NCwKICAgICAgLyogXiAqLwogICAgICBDSEFSX0NPTE9OOiA1OCwKICAgICAgLyogOiAqLwogICAgICBDSEFSX0NPTU1BOiA0NCwKICAgICAgLyogLCAqLwogICAgICBDSEFSX0RPVDogNDYsCiAgICAgIC8qIC4gKi8KICAgICAgQ0hBUl9ET1VCTEVfUVVPVEU6IDM0LAogICAgICAvKiAiICovCiAgICAgIENIQVJfRVFVQUw6IDYxLAogICAgICAvKiA9ICovCiAgICAgIENIQVJfRVhDTEFNQVRJT05fTUFSSzogMzMsCiAgICAgIC8qICEgKi8KICAgICAgQ0hBUl9GT1JNX0ZFRUQ6IDEyLAogICAgICAvKiBcZiAqLwogICAgICBDSEFSX0ZPUldBUkRfU0xBU0g6IDQ3LAogICAgICAvKiAvICovCiAgICAgIENIQVJfR1JBVkVfQUNDRU5UOiA5NiwKICAgICAgLyogYCAqLwogICAgICBDSEFSX0hBU0g6IDM1LAogICAgICAvKiAjICovCiAgICAgIENIQVJfSFlQSEVOX01JTlVTOiA0NSwKICAgICAgLyogLSAqLwogICAgICBDSEFSX0xFRlRfQU5HTEVfQlJBQ0tFVDogNjAsCiAgICAgIC8qIDwgKi8KICAgICAgQ0hBUl9MRUZUX0NVUkxZX0JSQUNFOiAxMjMsCiAgICAgIC8qIHsgKi8KICAgICAgQ0hBUl9MRUZUX1NRVUFSRV9CUkFDS0VUOiA5MSwKICAgICAgLyogWyAqLwogICAgICBDSEFSX0xJTkVfRkVFRDogMTAsCiAgICAgIC8qIFxuICovCiAgICAgIENIQVJfTk9fQlJFQUtfU1BBQ0U6IDE2MCwKICAgICAgLyogXHUwMEEwICovCiAgICAgIENIQVJfUEVSQ0VOVDogMzcsCiAgICAgIC8qICUgKi8KICAgICAgQ0hBUl9QTFVTOiA0MywKICAgICAgLyogKyAqLwogICAgICBDSEFSX1FVRVNUSU9OX01BUks6IDYzLAogICAgICAvKiA/ICovCiAgICAgIENIQVJfUklHSFRfQU5HTEVfQlJBQ0tFVDogNjIsCiAgICAgIC8qID4gKi8KICAgICAgQ0hBUl9SSUdIVF9DVVJMWV9CUkFDRTogMTI1LAogICAgICAvKiB9ICovCiAgICAgIENIQVJfUklHSFRfU1FVQVJFX0JSQUNLRVQ6IDkzLAogICAgICAvKiBdICovCiAgICAgIENIQVJfU0VNSUNPTE9OOiA1OSwKICAgICAgLyogOyAqLwogICAgICBDSEFSX1NJTkdMRV9RVU9URTogMzksCiAgICAgIC8qICcgKi8KICAgICAgQ0hBUl9TUEFDRTogMzIsCiAgICAgIC8qICAgKi8KICAgICAgQ0hBUl9UQUI6IDksCiAgICAgIC8qIFx0ICovCiAgICAgIENIQVJfVU5ERVJTQ09SRTogOTUsCiAgICAgIC8qIF8gKi8KICAgICAgQ0hBUl9WRVJUSUNBTF9MSU5FOiAxMjQsCiAgICAgIC8qIHwgKi8KICAgICAgQ0hBUl9aRVJPX1dJRFRIX05PQlJFQUtfU1BBQ0U6IDY1Mjc5LAogICAgICAvKiBcdUZFRkYgKi8KICAgICAgLyoqCiAgICAgICAqIENyZWF0ZSBFWFRHTE9CX0NIQVJTCiAgICAgICAqLwogICAgICBleHRnbG9iQ2hhcnMoY2hhcnMpIHsKICAgICAgICByZXR1cm4gewogICAgICAgICAgIiEiOiB7IHR5cGU6ICJuZWdhdGUiLCBvcGVuOiAiKD86KD8hKD86IiwgY2xvc2U6IGApKSR7Y2hhcnMuU1RBUn0pYCB9LAogICAgICAgICAgIj8iOiB7IHR5cGU6ICJxbWFyayIsIG9wZW46ICIoPzoiLCBjbG9zZTogIik/IiB9LAogICAgICAgICAgIisiOiB7IHR5cGU6ICJwbHVzIiwgb3BlbjogIig/OiIsIGNsb3NlOiAiKSsiIH0sCiAgICAgICAgICAiKiI6IHsgdHlwZTogInN0YXIiLCBvcGVuOiAiKD86IiwgY2xvc2U6ICIpKiIgfSwKICAgICAgICAgICJAIjogeyB0eXBlOiAiYXQiLCBvcGVuOiAiKD86IiwgY2xvc2U6ICIpIiB9CiAgICAgICAgfTsKICAgICAgfSwKICAgICAgLyoqCiAgICAgICAqIENyZWF0ZSBHTE9CX0NIQVJTCiAgICAgICAqLwogICAgICBnbG9iQ2hhcnMod2luMzIpIHsKICAgICAgICByZXR1cm4gd2luMzIgPT09IHRydWUgPyBXSU5ET1dTX0NIQVJTIDogUE9TSVhfQ0hBUlM7CiAgICAgIH0KICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi1jZTYxN2I4ZGEzLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi91dGlscy5qcwp2YXIgcmVxdWlyZV91dGlsczQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLWNlNjE3YjhkYTMuemlwL25vZGVfbW9kdWxlcy9waWNvbWF0Y2gvbGliL3V0aWxzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIHsKICAgICAgUkVHRVhfQkFDS1NMQVNILAogICAgICBSRUdFWF9SRU1PVkVfQkFDS1NMQVNILAogICAgICBSRUdFWF9TUEVDSUFMX0NIQVJTLAogICAgICBSRUdFWF9TUEVDSUFMX0NIQVJTX0dMT0JBTAogICAgfSA9IHJlcXVpcmVfY29uc3RhbnRzKCk7CiAgICBleHBvcnRzMi5pc09iamVjdCA9ICh2YWwpID0+IHZhbCAhPT0gbnVsbCAmJiB0eXBlb2YgdmFsID09PSAib2JqZWN0IiAmJiAhQXJyYXkuaXNBcnJheSh2YWwpOwogICAgZXhwb3J0czIuaGFzUmVnZXhDaGFycyA9IChzdHIpID0+IFJFR0VYX1NQRUNJQUxfQ0hBUlMudGVzdChzdHIpOwogICAgZXhwb3J0czIuaXNSZWdleENoYXIgPSAoc3RyKSA9PiBzdHIubGVuZ3RoID09PSAxICYmIGV4cG9ydHMyLmhhc1JlZ2V4Q2hhcnMoc3RyKTsKICAgIGV4cG9ydHMyLmVzY2FwZVJlZ2V4ID0gKHN0cikgPT4gc3RyLnJlcGxhY2UoUkVHRVhfU1BFQ0lBTF9DSEFSU19HTE9CQUwsICJcXCQxIik7CiAgICBleHBvcnRzMi50b1Bvc2l4U2xhc2hlcyA9IChzdHIpID0+IHN0ci5yZXBsYWNlKFJFR0VYX0JBQ0tTTEFTSCwgIi8iKTsKICAgIGV4cG9ydHMyLmlzV2luZG93cyA9ICgpID0+IHsKICAgICAgaWYgKHR5cGVvZiBuYXZpZ2F0b3IgIT09ICJ1bmRlZmluZWQiICYmIG5hdmlnYXRvci5wbGF0Zm9ybSkgewogICAgICAgIGNvbnN0IHBsYXRmb3JtID0gbmF2aWdhdG9yLnBsYXRmb3JtLnRvTG93ZXJDYXNlKCk7CiAgICAgICAgcmV0dXJuIHBsYXRmb3JtID09PSAid2luMzIiIHx8IHBsYXRmb3JtID09PSAid2luZG93cyI7CiAgICAgIH0KICAgICAgaWYgKHR5cGVvZiBwcm9jZXNzICE9PSAidW5kZWZpbmVkIiAmJiBwcm9jZXNzLnBsYXRmb3JtKSB7CiAgICAgICAgcmV0dXJuIHByb2Nlc3MucGxhdGZvcm0gPT09ICJ3aW4zMiI7CiAgICAgIH0KICAgICAgcmV0dXJuIGZhbHNlOwogICAgfTsKICAgIGV4cG9ydHMyLnJlbW92ZUJhY2tzbGFzaGVzID0gKHN0cikgPT4gewogICAgICByZXR1cm4gc3RyLnJlcGxhY2UoUkVHRVhfUkVNT1ZFX0JBQ0tTTEFTSCwgKG1hdGNoKSA9PiB7CiAgICAgICAgcmV0dXJuIG1hdGNoID09PSAiXFwiID8gIiIgOiBtYXRjaDsKICAgICAgfSk7CiAgICB9OwogICAgZXhwb3J0czIuZXNjYXBlTGFzdCA9IChpbnB1dCwgY2hhciwgbGFzdElkeCkgPT4gewogICAgICBjb25zdCBpZHggPSBpbnB1dC5sYXN0SW5kZXhPZihjaGFyLCBsYXN0SWR4KTsKICAgICAgaWYgKGlkeCA9PT0gLTEpIHJldHVybiBpbnB1dDsKICAgICAgaWYgKGlucHV0W2lkeCAtIDFdID09PSAiXFwiKSByZXR1cm4gZXhwb3J0czIuZXNjYXBlTGFzdChpbnB1dCwgY2hhciwgaWR4IC0gMSk7CiAgICAgIHJldHVybiBgJHtpbnB1dC5zbGljZSgwLCBpZHgpfVxcJHtpbnB1dC5zbGljZShpZHgpfWA7CiAgICB9OwogICAgZXhwb3J0czIucmVtb3ZlUHJlZml4ID0gKGlucHV0LCBzdGF0ZSA9IHt9KSA9PiB7CiAgICAgIGxldCBvdXRwdXQgPSBpbnB1dDsKICAgICAgaWYgKG91dHB1dC5zdGFydHNXaXRoKCIuLyIpKSB7CiAgICAgICAgb3V0cHV0ID0gb3V0cHV0LnNsaWNlKDIpOwogICAgICAgIHN0YXRlLnByZWZpeCA9ICIuLyI7CiAgICAgIH0KICAgICAgcmV0dXJuIG91dHB1dDsKICAgIH07CiAgICBleHBvcnRzMi53cmFwT3V0cHV0ID0gKGlucHV0LCBzdGF0ZSA9IHt9LCBvcHRpb25zID0ge30pID0+IHsKICAgICAgY29uc3QgcHJlcGVuZCA9IG9wdGlvbnMuY29udGFpbnMgPyAiIiA6ICJeIjsKICAgICAgY29uc3QgYXBwZW5kID0gb3B0aW9ucy5jb250YWlucyA/ICIiIDogIiQiOwogICAgICBsZXQgb3V0cHV0ID0gYCR7cHJlcGVuZH0oPzoke2lucHV0fSkke2FwcGVuZH1gOwogICAgICBpZiAoc3RhdGUubmVnYXRlZCA9PT0gdHJ1ZSkgewogICAgICAgIG91dHB1dCA9IGAoPzpeKD8hJHtvdXRwdXR9KS4qJClgOwogICAgICB9CiAgICAgIHJldHVybiBvdXRwdXQ7CiAgICB9OwogICAgZXhwb3J0czIuYmFzZW5hbWUgPSAocGF0aCwgeyB3aW5kb3dzIH0gPSB7fSkgPT4gewogICAgICBjb25zdCBzZWdzID0gcGF0aC5zcGxpdCh3aW5kb3dzID8gL1tcXC9dLyA6ICIvIik7CiAgICAgIGNvbnN0IGxhc3QgPSBzZWdzW3NlZ3MubGVuZ3RoIC0gMV07CiAgICAgIGlmIChsYXN0ID09PSAiIikgewogICAgICAgIHJldHVybiBzZWdzW3NlZ3MubGVuZ3RoIC0gMl07CiAgICAgIH0KICAgICAgcmV0dXJuIGxhc3Q7CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9waWNvbWF0Y2gtbnBtLTQuMC4yLWU5MzUxNmRkZjItY2U2MTdiOGRhMy56aXAvbm9kZV9tb2R1bGVzL3BpY29tYXRjaC9saWIvc2Nhbi5qcwp2YXIgcmVxdWlyZV9zY2FuMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9waWNvbWF0Y2gtbnBtLTQuMC4yLWU5MzUxNmRkZjItY2U2MTdiOGRhMy56aXAvbm9kZV9tb2R1bGVzL3BpY29tYXRjaC9saWIvc2Nhbi5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciB1dGlscyA9IHJlcXVpcmVfdXRpbHM0KCk7CiAgICB2YXIgewogICAgICBDSEFSX0FTVEVSSVNLLAogICAgICAvKiAqICovCiAgICAgIENIQVJfQVQsCiAgICAgIC8qIEAgKi8KICAgICAgQ0hBUl9CQUNLV0FSRF9TTEFTSCwKICAgICAgLyogXCAqLwogICAgICBDSEFSX0NPTU1BLAogICAgICAvKiAsICovCiAgICAgIENIQVJfRE9ULAogICAgICAvKiAuICovCiAgICAgIENIQVJfRVhDTEFNQVRJT05fTUFSSywKICAgICAgLyogISAqLwogICAgICBDSEFSX0ZPUldBUkRfU0xBU0gsCiAgICAgIC8qIC8gKi8KICAgICAgQ0hBUl9MRUZUX0NVUkxZX0JSQUNFLAogICAgICAvKiB7ICovCiAgICAgIENIQVJfTEVGVF9QQVJFTlRIRVNFUywKICAgICAgLyogKCAqLwogICAgICBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQsCiAgICAgIC8qIFsgKi8KICAgICAgQ0hBUl9QTFVTLAogICAgICAvKiArICovCiAgICAgIENIQVJfUVVFU1RJT05fTUFSSywKICAgICAgLyogPyAqLwogICAgICBDSEFSX1JJR0hUX0NVUkxZX0JSQUNFLAogICAgICAvKiB9ICovCiAgICAgIENIQVJfUklHSFRfUEFSRU5USEVTRVMsCiAgICAgIC8qICkgKi8KICAgICAgQ0hBUl9SSUdIVF9TUVVBUkVfQlJBQ0tFVAogICAgICAvKiBdICovCiAgICB9ID0gcmVxdWlyZV9jb25zdGFudHMoKTsKICAgIHZhciBpc1BhdGhTZXBhcmF0b3IgPSAoY29kZSkgPT4gewogICAgICByZXR1cm4gY29kZSA9PT0gQ0hBUl9GT1JXQVJEX1NMQVNIIHx8IGNvZGUgPT09IENIQVJfQkFDS1dBUkRfU0xBU0g7CiAgICB9OwogICAgdmFyIGRlcHRoID0gKHRva2VuKSA9PiB7CiAgICAgIGlmICh0b2tlbi5pc1ByZWZpeCAhPT0gdHJ1ZSkgewogICAgICAgIHRva2VuLmRlcHRoID0gdG9rZW4uaXNHbG9ic3RhciA/IEluZmluaXR5IDogMTsKICAgICAgfQogICAgfTsKICAgIHZhciBzY2FuID0gKGlucHV0LCBvcHRpb25zKSA9PiB7CiAgICAgIGNvbnN0IG9wdHMgPSBvcHRpb25zIHx8IHt9OwogICAgICBjb25zdCBsZW5ndGggPSBpbnB1dC5sZW5ndGggLSAxOwogICAgICBjb25zdCBzY2FuVG9FbmQgPSBvcHRzLnBhcnRzID09PSB0cnVlIHx8IG9wdHMuc2NhblRvRW5kID09PSB0cnVlOwogICAgICBjb25zdCBzbGFzaGVzID0gW107CiAgICAgIGNvbnN0IHRva2VucyA9IFtdOwogICAgICBjb25zdCBwYXJ0cyA9IFtdOwogICAgICBsZXQgc3RyID0gaW5wdXQ7CiAgICAgIGxldCBpbmRleCA9IC0xOwogICAgICBsZXQgc3RhcnQgPSAwOwogICAgICBsZXQgbGFzdEluZGV4ID0gMDsKICAgICAgbGV0IGlzQnJhY2UgPSBmYWxzZTsKICAgICAgbGV0IGlzQnJhY2tldCA9IGZhbHNlOwogICAgICBsZXQgaXNHbG9iID0gZmFsc2U7CiAgICAgIGxldCBpc0V4dGdsb2IgPSBmYWxzZTsKICAgICAgbGV0IGlzR2xvYnN0YXIgPSBmYWxzZTsKICAgICAgbGV0IGJyYWNlRXNjYXBlZCA9IGZhbHNlOwogICAgICBsZXQgYmFja3NsYXNoZXMgPSBmYWxzZTsKICAgICAgbGV0IG5lZ2F0ZWQgPSBmYWxzZTsKICAgICAgbGV0IG5lZ2F0ZWRFeHRnbG9iID0gZmFsc2U7CiAgICAgIGxldCBmaW5pc2hlZCA9IGZhbHNlOwogICAgICBsZXQgYnJhY2VzID0gMDsKICAgICAgbGV0IHByZXY7CiAgICAgIGxldCBjb2RlOwogICAgICBsZXQgdG9rZW4gPSB7IHZhbHVlOiAiIiwgZGVwdGg6IDAsIGlzR2xvYjogZmFsc2UgfTsKICAgICAgY29uc3QgZW9zID0gKCkgPT4gaW5kZXggPj0gbGVuZ3RoOwogICAgICBjb25zdCBwZWVrID0gKCkgPT4gc3RyLmNoYXJDb2RlQXQoaW5kZXggKyAxKTsKICAgICAgY29uc3QgYWR2YW5jZSA9ICgpID0+IHsKICAgICAgICBwcmV2ID0gY29kZTsKICAgICAgICByZXR1cm4gc3RyLmNoYXJDb2RlQXQoKytpbmRleCk7CiAgICAgIH07CiAgICAgIHdoaWxlIChpbmRleCA8IGxlbmd0aCkgewogICAgICAgIGNvZGUgPSBhZHZhbmNlKCk7CiAgICAgICAgbGV0IG5leHQ7CiAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfQkFDS1dBUkRfU0xBU0gpIHsKICAgICAgICAgIGJhY2tzbGFzaGVzID0gdG9rZW4uYmFja3NsYXNoZXMgPSB0cnVlOwogICAgICAgICAgY29kZSA9IGFkdmFuY2UoKTsKICAgICAgICAgIGlmIChjb2RlID09PSBDSEFSX0xFRlRfQ1VSTFlfQlJBQ0UpIHsKICAgICAgICAgICAgYnJhY2VFc2NhcGVkID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAoYnJhY2VFc2NhcGVkID09PSB0cnVlIHx8IGNvZGUgPT09IENIQVJfTEVGVF9DVVJMWV9CUkFDRSkgewogICAgICAgICAgYnJhY2VzKys7CiAgICAgICAgICB3aGlsZSAoZW9zKCkgIT09IHRydWUgJiYgKGNvZGUgPSBhZHZhbmNlKCkpKSB7CiAgICAgICAgICAgIGlmIChjb2RlID09PSBDSEFSX0JBQ0tXQVJEX1NMQVNIKSB7CiAgICAgICAgICAgICAgYmFja3NsYXNoZXMgPSB0b2tlbi5iYWNrc2xhc2hlcyA9IHRydWU7CiAgICAgICAgICAgICAgYWR2YW5jZSgpOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChjb2RlID09PSBDSEFSX0xFRlRfQ1VSTFlfQlJBQ0UpIHsKICAgICAgICAgICAgICBicmFjZXMrKzsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoYnJhY2VFc2NhcGVkICE9PSB0cnVlICYmIGNvZGUgPT09IENIQVJfRE9UICYmIChjb2RlID0gYWR2YW5jZSgpKSA9PT0gQ0hBUl9ET1QpIHsKICAgICAgICAgICAgICBpc0JyYWNlID0gdG9rZW4uaXNCcmFjZSA9IHRydWU7CiAgICAgICAgICAgICAgaXNHbG9iID0gdG9rZW4uaXNHbG9iID0gdHJ1ZTsKICAgICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICAgICAgaWYgKHNjYW5Ub0VuZCA9PT0gdHJ1ZSkgewogICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChicmFjZUVzY2FwZWQgIT09IHRydWUgJiYgY29kZSA9PT0gQ0hBUl9DT01NQSkgewogICAgICAgICAgICAgIGlzQnJhY2UgPSB0b2tlbi5pc0JyYWNlID0gdHJ1ZTsKICAgICAgICAgICAgICBpc0dsb2IgPSB0b2tlbi5pc0dsb2IgPSB0cnVlOwogICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfUklHSFRfQ1VSTFlfQlJBQ0UpIHsKICAgICAgICAgICAgICBicmFjZXMtLTsKICAgICAgICAgICAgICBpZiAoYnJhY2VzID09PSAwKSB7CiAgICAgICAgICAgICAgICBicmFjZUVzY2FwZWQgPSBmYWxzZTsKICAgICAgICAgICAgICAgIGlzQnJhY2UgPSB0b2tlbi5pc0JyYWNlID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKHNjYW5Ub0VuZCA9PT0gdHJ1ZSkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9GT1JXQVJEX1NMQVNIKSB7CiAgICAgICAgICBzbGFzaGVzLnB1c2goaW5kZXgpOwogICAgICAgICAgdG9rZW5zLnB1c2godG9rZW4pOwogICAgICAgICAgdG9rZW4gPSB7IHZhbHVlOiAiIiwgZGVwdGg6IDAsIGlzR2xvYjogZmFsc2UgfTsKICAgICAgICAgIGlmIChmaW5pc2hlZCA9PT0gdHJ1ZSkgY29udGludWU7CiAgICAgICAgICBpZiAocHJldiA9PT0gQ0hBUl9ET1QgJiYgaW5kZXggPT09IHN0YXJ0ICsgMSkgewogICAgICAgICAgICBzdGFydCArPSAyOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGxhc3RJbmRleCA9IGluZGV4ICsgMTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAob3B0cy5ub2V4dCAhPT0gdHJ1ZSkgewogICAgICAgICAgY29uc3QgaXNFeHRnbG9iQ2hhciA9IGNvZGUgPT09IENIQVJfUExVUyB8fCBjb2RlID09PSBDSEFSX0FUIHx8IGNvZGUgPT09IENIQVJfQVNURVJJU0sgfHwgY29kZSA9PT0gQ0hBUl9RVUVTVElPTl9NQVJLIHx8IGNvZGUgPT09IENIQVJfRVhDTEFNQVRJT05fTUFSSzsKICAgICAgICAgIGlmIChpc0V4dGdsb2JDaGFyID09PSB0cnVlICYmIHBlZWsoKSA9PT0gQ0hBUl9MRUZUX1BBUkVOVEhFU0VTKSB7CiAgICAgICAgICAgIGlzR2xvYiA9IHRva2VuLmlzR2xvYiA9IHRydWU7CiAgICAgICAgICAgIGlzRXh0Z2xvYiA9IHRva2VuLmlzRXh0Z2xvYiA9IHRydWU7CiAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfRVhDTEFNQVRJT05fTUFSSyAmJiBpbmRleCA9PT0gc3RhcnQpIHsKICAgICAgICAgICAgICBuZWdhdGVkRXh0Z2xvYiA9IHRydWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHNjYW5Ub0VuZCA9PT0gdHJ1ZSkgewogICAgICAgICAgICAgIHdoaWxlIChlb3MoKSAhPT0gdHJ1ZSAmJiAoY29kZSA9IGFkdmFuY2UoKSkpIHsKICAgICAgICAgICAgICAgIGlmIChjb2RlID09PSBDSEFSX0JBQ0tXQVJEX1NMQVNIKSB7CiAgICAgICAgICAgICAgICAgIGJhY2tzbGFzaGVzID0gdG9rZW4uYmFja3NsYXNoZXMgPSB0cnVlOwogICAgICAgICAgICAgICAgICBjb2RlID0gYWR2YW5jZSgpOwogICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmIChjb2RlID09PSBDSEFSX1JJR0hUX1BBUkVOVEhFU0VTKSB7CiAgICAgICAgICAgICAgICAgIGlzR2xvYiA9IHRva2VuLmlzR2xvYiA9IHRydWU7CiAgICAgICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9BU1RFUklTSykgewogICAgICAgICAgaWYgKHByZXYgPT09IENIQVJfQVNURVJJU0spIGlzR2xvYnN0YXIgPSB0b2tlbi5pc0dsb2JzdGFyID0gdHJ1ZTsKICAgICAgICAgIGlzR2xvYiA9IHRva2VuLmlzR2xvYiA9IHRydWU7CiAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIGlmIChjb2RlID09PSBDSEFSX1FVRVNUSU9OX01BUkspIHsKICAgICAgICAgIGlzR2xvYiA9IHRva2VuLmlzR2xvYiA9IHRydWU7CiAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIGlmIChjb2RlID09PSBDSEFSX0xFRlRfU1FVQVJFX0JSQUNLRVQpIHsKICAgICAgICAgIHdoaWxlIChlb3MoKSAhPT0gdHJ1ZSAmJiAobmV4dCA9IGFkdmFuY2UoKSkpIHsKICAgICAgICAgICAgaWYgKG5leHQgPT09IENIQVJfQkFDS1dBUkRfU0xBU0gpIHsKICAgICAgICAgICAgICBiYWNrc2xhc2hlcyA9IHRva2VuLmJhY2tzbGFzaGVzID0gdHJ1ZTsKICAgICAgICAgICAgICBhZHZhbmNlKCk7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKG5leHQgPT09IENIQVJfUklHSFRfU1FVQVJFX0JSQUNLRVQpIHsKICAgICAgICAgICAgICBpc0JyYWNrZXQgPSB0b2tlbi5pc0JyYWNrZXQgPSB0cnVlOwogICAgICAgICAgICAgIGlzR2xvYiA9IHRva2VuLmlzR2xvYiA9IHRydWU7CiAgICAgICAgICAgICAgZmluaXNoZWQgPSB0cnVlOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIGlmIChvcHRzLm5vbmVnYXRlICE9PSB0cnVlICYmIGNvZGUgPT09IENIQVJfRVhDTEFNQVRJT05fTUFSSyAmJiBpbmRleCA9PT0gc3RhcnQpIHsKICAgICAgICAgIG5lZ2F0ZWQgPSB0b2tlbi5uZWdhdGVkID0gdHJ1ZTsKICAgICAgICAgIHN0YXJ0Kys7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKG9wdHMubm9wYXJlbiAhPT0gdHJ1ZSAmJiBjb2RlID09PSBDSEFSX0xFRlRfUEFSRU5USEVTRVMpIHsKICAgICAgICAgIGlzR2xvYiA9IHRva2VuLmlzR2xvYiA9IHRydWU7CiAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgIHdoaWxlIChlb3MoKSAhPT0gdHJ1ZSAmJiAoY29kZSA9IGFkdmFuY2UoKSkpIHsKICAgICAgICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9MRUZUX1BBUkVOVEhFU0VTKSB7CiAgICAgICAgICAgICAgICBiYWNrc2xhc2hlcyA9IHRva2VuLmJhY2tzbGFzaGVzID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGNvZGUgPSBhZHZhbmNlKCk7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfUklHSFRfUEFSRU5USEVTRVMpIHsKICAgICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgICBpZiAoaXNHbG9iID09PSB0cnVlKSB7CiAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICB9CiAgICAgIGlmIChvcHRzLm5vZXh0ID09PSB0cnVlKSB7CiAgICAgICAgaXNFeHRnbG9iID0gZmFsc2U7CiAgICAgICAgaXNHbG9iID0gZmFsc2U7CiAgICAgIH0KICAgICAgbGV0IGJhc2UgPSBzdHI7CiAgICAgIGxldCBwcmVmaXggPSAiIjsKICAgICAgbGV0IGdsb2IgPSAiIjsKICAgICAgaWYgKHN0YXJ0ID4gMCkgewogICAgICAgIHByZWZpeCA9IHN0ci5zbGljZSgwLCBzdGFydCk7CiAgICAgICAgc3RyID0gc3RyLnNsaWNlKHN0YXJ0KTsKICAgICAgICBsYXN0SW5kZXggLT0gc3RhcnQ7CiAgICAgIH0KICAgICAgaWYgKGJhc2UgJiYgaXNHbG9iID09PSB0cnVlICYmIGxhc3RJbmRleCA+IDApIHsKICAgICAgICBiYXNlID0gc3RyLnNsaWNlKDAsIGxhc3RJbmRleCk7CiAgICAgICAgZ2xvYiA9IHN0ci5zbGljZShsYXN0SW5kZXgpOwogICAgICB9IGVsc2UgaWYgKGlzR2xvYiA9PT0gdHJ1ZSkgewogICAgICAgIGJhc2UgPSAiIjsKICAgICAgICBnbG9iID0gc3RyOwogICAgICB9IGVsc2UgewogICAgICAgIGJhc2UgPSBzdHI7CiAgICAgIH0KICAgICAgaWYgKGJhc2UgJiYgYmFzZSAhPT0gIiIgJiYgYmFzZSAhPT0gIi8iICYmIGJhc2UgIT09IHN0cikgewogICAgICAgIGlmIChpc1BhdGhTZXBhcmF0b3IoYmFzZS5jaGFyQ29kZUF0KGJhc2UubGVuZ3RoIC0gMSkpKSB7CiAgICAgICAgICBiYXNlID0gYmFzZS5zbGljZSgwLCAtMSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGlmIChvcHRzLnVuZXNjYXBlID09PSB0cnVlKSB7CiAgICAgICAgaWYgKGdsb2IpIGdsb2IgPSB1dGlscy5yZW1vdmVCYWNrc2xhc2hlcyhnbG9iKTsKICAgICAgICBpZiAoYmFzZSAmJiBiYWNrc2xhc2hlcyA9PT0gdHJ1ZSkgewogICAgICAgICAgYmFzZSA9IHV0aWxzLnJlbW92ZUJhY2tzbGFzaGVzKGJhc2UpOwogICAgICAgIH0KICAgICAgfQogICAgICBjb25zdCBzdGF0ZSA9IHsKICAgICAgICBwcmVmaXgsCiAgICAgICAgaW5wdXQsCiAgICAgICAgc3RhcnQsCiAgICAgICAgYmFzZSwKICAgICAgICBnbG9iLAogICAgICAgIGlzQnJhY2UsCiAgICAgICAgaXNCcmFja2V0LAogICAgICAgIGlzR2xvYiwKICAgICAgICBpc0V4dGdsb2IsCiAgICAgICAgaXNHbG9ic3RhciwKICAgICAgICBuZWdhdGVkLAogICAgICAgIG5lZ2F0ZWRFeHRnbG9iCiAgICAgIH07CiAgICAgIGlmIChvcHRzLnRva2VucyA9PT0gdHJ1ZSkgewogICAgICAgIHN0YXRlLm1heERlcHRoID0gMDsKICAgICAgICBpZiAoIWlzUGF0aFNlcGFyYXRvcihjb2RlKSkgewogICAgICAgICAgdG9rZW5zLnB1c2godG9rZW4pOwogICAgICAgIH0KICAgICAgICBzdGF0ZS50b2tlbnMgPSB0b2tlbnM7CiAgICAgIH0KICAgICAgaWYgKG9wdHMucGFydHMgPT09IHRydWUgfHwgb3B0cy50b2tlbnMgPT09IHRydWUpIHsKICAgICAgICBsZXQgcHJldkluZGV4OwogICAgICAgIGZvciAobGV0IGlkeCA9IDA7IGlkeCA8IHNsYXNoZXMubGVuZ3RoOyBpZHgrKykgewogICAgICAgICAgY29uc3QgbiA9IHByZXZJbmRleCA/IHByZXZJbmRleCArIDEgOiBzdGFydDsKICAgICAgICAgIGNvbnN0IGkgPSBzbGFzaGVzW2lkeF07CiAgICAgICAgICBjb25zdCB2YWx1ZSA9IGlucHV0LnNsaWNlKG4sIGkpOwogICAgICAgICAgaWYgKG9wdHMudG9rZW5zKSB7CiAgICAgICAgICAgIGlmIChpZHggPT09IDAgJiYgc3RhcnQgIT09IDApIHsKICAgICAgICAgICAgICB0b2tlbnNbaWR4XS5pc1ByZWZpeCA9IHRydWU7CiAgICAgICAgICAgICAgdG9rZW5zW2lkeF0udmFsdWUgPSBwcmVmaXg7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgdG9rZW5zW2lkeF0udmFsdWUgPSB2YWx1ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBkZXB0aCh0b2tlbnNbaWR4XSk7CiAgICAgICAgICAgIHN0YXRlLm1heERlcHRoICs9IHRva2Vuc1tpZHhdLmRlcHRoOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGlkeCAhPT0gMCB8fCB2YWx1ZSAhPT0gIiIpIHsKICAgICAgICAgICAgcGFydHMucHVzaCh2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgICBwcmV2SW5kZXggPSBpOwogICAgICAgIH0KICAgICAgICBpZiAocHJldkluZGV4ICYmIHByZXZJbmRleCArIDEgPCBpbnB1dC5sZW5ndGgpIHsKICAgICAgICAgIGNvbnN0IHZhbHVlID0gaW5wdXQuc2xpY2UocHJldkluZGV4ICsgMSk7CiAgICAgICAgICBwYXJ0cy5wdXNoKHZhbHVlKTsKICAgICAgICAgIGlmIChvcHRzLnRva2VucykgewogICAgICAgICAgICB0b2tlbnNbdG9rZW5zLmxlbmd0aCAtIDFdLnZhbHVlID0gdmFsdWU7CiAgICAgICAgICAgIGRlcHRoKHRva2Vuc1t0b2tlbnMubGVuZ3RoIC0gMV0pOwogICAgICAgICAgICBzdGF0ZS5tYXhEZXB0aCArPSB0b2tlbnNbdG9rZW5zLmxlbmd0aCAtIDFdLmRlcHRoOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBzdGF0ZS5zbGFzaGVzID0gc2xhc2hlczsKICAgICAgICBzdGF0ZS5wYXJ0cyA9IHBhcnRzOwogICAgICB9CiAgICAgIHJldHVybiBzdGF0ZTsKICAgIH07CiAgICBtb2R1bGUyLmV4cG9ydHMgPSBzY2FuOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9waWNvbWF0Y2gtbnBtLTQuMC4yLWU5MzUxNmRkZjItY2U2MTdiOGRhMy56aXAvbm9kZV9tb2R1bGVzL3BpY29tYXRjaC9saWIvcGFyc2UuanMKdmFyIHJlcXVpcmVfcGFyc2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLWNlNjE3YjhkYTMuemlwL25vZGVfbW9kdWxlcy9waWNvbWF0Y2gvbGliL3BhcnNlLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIGNvbnN0YW50cyA9IHJlcXVpcmVfY29uc3RhbnRzKCk7CiAgICB2YXIgdXRpbHMgPSByZXF1aXJlX3V0aWxzNCgpOwogICAgdmFyIHsKICAgICAgTUFYX0xFTkdUSCwKICAgICAgUE9TSVhfUkVHRVhfU09VUkNFLAogICAgICBSRUdFWF9OT05fU1BFQ0lBTF9DSEFSUywKICAgICAgUkVHRVhfU1BFQ0lBTF9DSEFSU19CQUNLUkVGLAogICAgICBSRVBMQUNFTUVOVFMKICAgIH0gPSBjb25zdGFudHM7CiAgICB2YXIgZXhwYW5kUmFuZ2UgPSAoYXJncywgb3B0aW9ucykgPT4gewogICAgICBpZiAodHlwZW9mIG9wdGlvbnMuZXhwYW5kUmFuZ2UgPT09ICJmdW5jdGlvbiIpIHsKICAgICAgICByZXR1cm4gb3B0aW9ucy5leHBhbmRSYW5nZSguLi5hcmdzLCBvcHRpb25zKTsKICAgICAgfQogICAgICBhcmdzLnNvcnQoKTsKICAgICAgY29uc3QgdmFsdWUgPSBgWyR7YXJncy5qb2luKCItIil9XWA7CiAgICAgIHRyeSB7CiAgICAgICAgbmV3IFJlZ0V4cCh2YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGV4KSB7CiAgICAgICAgcmV0dXJuIGFyZ3MubWFwKCh2KSA9PiB1dGlscy5lc2NhcGVSZWdleCh2KSkuam9pbigiLi4iKTsKICAgICAgfQogICAgICByZXR1cm4gdmFsdWU7CiAgICB9OwogICAgdmFyIHN5bnRheEVycm9yID0gKHR5cGUsIGNoYXIpID0+IHsKICAgICAgcmV0dXJuIGBNaXNzaW5nICR7dHlwZX06ICIke2NoYXJ9IiAtIHVzZSAiXFxcXCR7Y2hhcn0iIHRvIG1hdGNoIGxpdGVyYWwgY2hhcmFjdGVyc2A7CiAgICB9OwogICAgdmFyIHBhcnNlID0gKGlucHV0LCBvcHRpb25zKSA9PiB7CiAgICAgIGlmICh0eXBlb2YgaW5wdXQgIT09ICJzdHJpbmciKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBzdHJpbmciKTsKICAgICAgfQogICAgICBpbnB1dCA9IFJFUExBQ0VNRU5UU1tpbnB1dF0gfHwgaW5wdXQ7CiAgICAgIGNvbnN0IG9wdHMgPSB7IC4uLm9wdGlvbnMgfTsKICAgICAgY29uc3QgbWF4ID0gdHlwZW9mIG9wdHMubWF4TGVuZ3RoID09PSAibnVtYmVyIiA/IE1hdGgubWluKE1BWF9MRU5HVEgsIG9wdHMubWF4TGVuZ3RoKSA6IE1BWF9MRU5HVEg7CiAgICAgIGxldCBsZW4gPSBpbnB1dC5sZW5ndGg7CiAgICAgIGlmIChsZW4gPiBtYXgpIHsKICAgICAgICB0aHJvdyBuZXcgU3ludGF4RXJyb3IoYElucHV0IGxlbmd0aDogJHtsZW59LCBleGNlZWRzIG1heGltdW0gYWxsb3dlZCBsZW5ndGg6ICR7bWF4fWApOwogICAgICB9CiAgICAgIGNvbnN0IGJvcyA9IHsgdHlwZTogImJvcyIsIHZhbHVlOiAiIiwgb3V0cHV0OiBvcHRzLnByZXBlbmQgfHwgIiIgfTsKICAgICAgY29uc3QgdG9rZW5zID0gW2Jvc107CiAgICAgIGNvbnN0IGNhcHR1cmUgPSBvcHRzLmNhcHR1cmUgPyAiIiA6ICI/OiI7CiAgICAgIGNvbnN0IFBMQVRGT1JNX0NIQVJTID0gY29uc3RhbnRzLmdsb2JDaGFycyhvcHRzLndpbmRvd3MpOwogICAgICBjb25zdCBFWFRHTE9CX0NIQVJTID0gY29uc3RhbnRzLmV4dGdsb2JDaGFycyhQTEFURk9STV9DSEFSUyk7CiAgICAgIGNvbnN0IHsKICAgICAgICBET1RfTElURVJBTCwKICAgICAgICBQTFVTX0xJVEVSQUwsCiAgICAgICAgU0xBU0hfTElURVJBTCwKICAgICAgICBPTkVfQ0hBUiwKICAgICAgICBET1RTX1NMQVNILAogICAgICAgIE5PX0RPVCwKICAgICAgICBOT19ET1RfU0xBU0gsCiAgICAgICAgTk9fRE9UU19TTEFTSCwKICAgICAgICBRTUFSSywKICAgICAgICBRTUFSS19OT19ET1QsCiAgICAgICAgU1RBUiwKICAgICAgICBTVEFSVF9BTkNIT1IKICAgICAgfSA9IFBMQVRGT1JNX0NIQVJTOwogICAgICBjb25zdCBnbG9ic3RhciA9IChvcHRzMikgPT4gewogICAgICAgIHJldHVybiBgKCR7Y2FwdHVyZX0oPzooPyEke1NUQVJUX0FOQ0hPUn0ke29wdHMyLmRvdCA/IERPVFNfU0xBU0ggOiBET1RfTElURVJBTH0pLikqPylgOwogICAgICB9OwogICAgICBjb25zdCBub2RvdCA9IG9wdHMuZG90ID8gIiIgOiBOT19ET1Q7CiAgICAgIGNvbnN0IHFtYXJrTm9Eb3QgPSBvcHRzLmRvdCA/IFFNQVJLIDogUU1BUktfTk9fRE9UOwogICAgICBsZXQgc3RhciA9IG9wdHMuYmFzaCA9PT0gdHJ1ZSA/IGdsb2JzdGFyKG9wdHMpIDogU1RBUjsKICAgICAgaWYgKG9wdHMuY2FwdHVyZSkgewogICAgICAgIHN0YXIgPSBgKCR7c3Rhcn0pYDsKICAgICAgfQogICAgICBpZiAodHlwZW9mIG9wdHMubm9leHQgPT09ICJib29sZWFuIikgewogICAgICAgIG9wdHMubm9leHRnbG9iID0gb3B0cy5ub2V4dDsKICAgICAgfQogICAgICBjb25zdCBzdGF0ZSA9IHsKICAgICAgICBpbnB1dCwKICAgICAgICBpbmRleDogLTEsCiAgICAgICAgc3RhcnQ6IDAsCiAgICAgICAgZG90OiBvcHRzLmRvdCA9PT0gdHJ1ZSwKICAgICAgICBjb25zdW1lZDogIiIsCiAgICAgICAgb3V0cHV0OiAiIiwKICAgICAgICBwcmVmaXg6ICIiLAogICAgICAgIGJhY2t0cmFjazogZmFsc2UsCiAgICAgICAgbmVnYXRlZDogZmFsc2UsCiAgICAgICAgYnJhY2tldHM6IDAsCiAgICAgICAgYnJhY2VzOiAwLAogICAgICAgIHBhcmVuczogMCwKICAgICAgICBxdW90ZXM6IDAsCiAgICAgICAgZ2xvYnN0YXI6IGZhbHNlLAogICAgICAgIHRva2VucwogICAgICB9OwogICAgICBpbnB1dCA9IHV0aWxzLnJlbW92ZVByZWZpeChpbnB1dCwgc3RhdGUpOwogICAgICBsZW4gPSBpbnB1dC5sZW5ndGg7CiAgICAgIGNvbnN0IGV4dGdsb2JzID0gW107CiAgICAgIGNvbnN0IGJyYWNlcyA9IFtdOwogICAgICBjb25zdCBzdGFjayA9IFtdOwogICAgICBsZXQgcHJldiA9IGJvczsKICAgICAgbGV0IHZhbHVlOwogICAgICBjb25zdCBlb3MgPSAoKSA9PiBzdGF0ZS5pbmRleCA9PT0gbGVuIC0gMTsKICAgICAgY29uc3QgcGVlayA9IHN0YXRlLnBlZWsgPSAobiA9IDEpID0+IGlucHV0W3N0YXRlLmluZGV4ICsgbl07CiAgICAgIGNvbnN0IGFkdmFuY2UgPSBzdGF0ZS5hZHZhbmNlID0gKCkgPT4gaW5wdXRbKytzdGF0ZS5pbmRleF0gfHwgIiI7CiAgICAgIGNvbnN0IHJlbWFpbmluZyA9ICgpID0+IGlucHV0LnNsaWNlKHN0YXRlLmluZGV4ICsgMSk7CiAgICAgIGNvbnN0IGNvbnN1bWUgPSAodmFsdWUyID0gIiIsIG51bSA9IDApID0+IHsKICAgICAgICBzdGF0ZS5jb25zdW1lZCArPSB2YWx1ZTI7CiAgICAgICAgc3RhdGUuaW5kZXggKz0gbnVtOwogICAgICB9OwogICAgICBjb25zdCBhcHBlbmQgPSAodG9rZW4pID0+IHsKICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gdG9rZW4ub3V0cHV0ICE9IG51bGwgPyB0b2tlbi5vdXRwdXQgOiB0b2tlbi52YWx1ZTsKICAgICAgICBjb25zdW1lKHRva2VuLnZhbHVlKTsKICAgICAgfTsKICAgICAgY29uc3QgbmVnYXRlID0gKCkgPT4gewogICAgICAgIGxldCBjb3VudCA9IDE7CiAgICAgICAgd2hpbGUgKHBlZWsoKSA9PT0gIiEiICYmIChwZWVrKDIpICE9PSAiKCIgfHwgcGVlaygzKSA9PT0gIj8iKSkgewogICAgICAgICAgYWR2YW5jZSgpOwogICAgICAgICAgc3RhdGUuc3RhcnQrKzsKICAgICAgICAgIGNvdW50Kys7CiAgICAgICAgfQogICAgICAgIGlmIChjb3VudCAlIDIgPT09IDApIHsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CiAgICAgICAgc3RhdGUubmVnYXRlZCA9IHRydWU7CiAgICAgICAgc3RhdGUuc3RhcnQrKzsKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfTsKICAgICAgY29uc3QgaW5jcmVtZW50ID0gKHR5cGUpID0+IHsKICAgICAgICBzdGF0ZVt0eXBlXSsrOwogICAgICAgIHN0YWNrLnB1c2godHlwZSk7CiAgICAgIH07CiAgICAgIGNvbnN0IGRlY3JlbWVudCA9ICh0eXBlKSA9PiB7CiAgICAgICAgc3RhdGVbdHlwZV0tLTsKICAgICAgICBzdGFjay5wb3AoKTsKICAgICAgfTsKICAgICAgY29uc3QgcHVzaCA9ICh0b2spID0+IHsKICAgICAgICBpZiAocHJldi50eXBlID09PSAiZ2xvYnN0YXIiKSB7CiAgICAgICAgICBjb25zdCBpc0JyYWNlID0gc3RhdGUuYnJhY2VzID4gMCAmJiAodG9rLnR5cGUgPT09ICJjb21tYSIgfHwgdG9rLnR5cGUgPT09ICJicmFjZSIpOwogICAgICAgICAgY29uc3QgaXNFeHRnbG9iID0gdG9rLmV4dGdsb2IgPT09IHRydWUgfHwgZXh0Z2xvYnMubGVuZ3RoICYmICh0b2sudHlwZSA9PT0gInBpcGUiIHx8IHRvay50eXBlID09PSAicGFyZW4iKTsKICAgICAgICAgIGlmICh0b2sudHlwZSAhPT0gInNsYXNoIiAmJiB0b2sudHlwZSAhPT0gInBhcmVuIiAmJiAhaXNCcmFjZSAmJiAhaXNFeHRnbG9iKSB7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCA9IHN0YXRlLm91dHB1dC5zbGljZSgwLCAtcHJldi5vdXRwdXQubGVuZ3RoKTsKICAgICAgICAgICAgcHJldi50eXBlID0gInN0YXIiOwogICAgICAgICAgICBwcmV2LnZhbHVlID0gIioiOwogICAgICAgICAgICBwcmV2Lm91dHB1dCA9IHN0YXI7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCArPSBwcmV2Lm91dHB1dDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKGV4dGdsb2JzLmxlbmd0aCAmJiB0b2sudHlwZSAhPT0gInBhcmVuIikgewogICAgICAgICAgZXh0Z2xvYnNbZXh0Z2xvYnMubGVuZ3RoIC0gMV0uaW5uZXIgKz0gdG9rLnZhbHVlOwogICAgICAgIH0KICAgICAgICBpZiAodG9rLnZhbHVlIHx8IHRvay5vdXRwdXQpIGFwcGVuZCh0b2spOwogICAgICAgIGlmIChwcmV2ICYmIHByZXYudHlwZSA9PT0gInRleHQiICYmIHRvay50eXBlID09PSAidGV4dCIpIHsKICAgICAgICAgIHByZXYub3V0cHV0ID0gKHByZXYub3V0cHV0IHx8IHByZXYudmFsdWUpICsgdG9rLnZhbHVlOwogICAgICAgICAgcHJldi52YWx1ZSArPSB0b2sudmFsdWU7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIHRvay5wcmV2ID0gcHJldjsKICAgICAgICB0b2tlbnMucHVzaCh0b2spOwogICAgICAgIHByZXYgPSB0b2s7CiAgICAgIH07CiAgICAgIGNvbnN0IGV4dGdsb2JPcGVuID0gKHR5cGUsIHZhbHVlMikgPT4gewogICAgICAgIGNvbnN0IHRva2VuID0geyAuLi5FWFRHTE9CX0NIQVJTW3ZhbHVlMl0sIGNvbmRpdGlvbnM6IDEsIGlubmVyOiAiIiB9OwogICAgICAgIHRva2VuLnByZXYgPSBwcmV2OwogICAgICAgIHRva2VuLnBhcmVucyA9IHN0YXRlLnBhcmVuczsKICAgICAgICB0b2tlbi5vdXRwdXQgPSBzdGF0ZS5vdXRwdXQ7CiAgICAgICAgY29uc3Qgb3V0cHV0ID0gKG9wdHMuY2FwdHVyZSA/ICIoIiA6ICIiKSArIHRva2VuLm9wZW47CiAgICAgICAgaW5jcmVtZW50KCJwYXJlbnMiKTsKICAgICAgICBwdXNoKHsgdHlwZSwgdmFsdWU6IHZhbHVlMiwgb3V0cHV0OiBzdGF0ZS5vdXRwdXQgPyAiIiA6IE9ORV9DSEFSIH0pOwogICAgICAgIHB1c2goeyB0eXBlOiAicGFyZW4iLCBleHRnbG9iOiB0cnVlLCB2YWx1ZTogYWR2YW5jZSgpLCBvdXRwdXQgfSk7CiAgICAgICAgZXh0Z2xvYnMucHVzaCh0b2tlbik7CiAgICAgIH07CiAgICAgIGNvbnN0IGV4dGdsb2JDbG9zZSA9ICh0b2tlbikgPT4gewogICAgICAgIGxldCBvdXRwdXQgPSB0b2tlbi5jbG9zZSArIChvcHRzLmNhcHR1cmUgPyAiKSIgOiAiIik7CiAgICAgICAgbGV0IHJlc3Q7CiAgICAgICAgaWYgKHRva2VuLnR5cGUgPT09ICJuZWdhdGUiKSB7CiAgICAgICAgICBsZXQgZXh0Z2xvYlN0YXIgPSBzdGFyOwogICAgICAgICAgaWYgKHRva2VuLmlubmVyICYmIHRva2VuLmlubmVyLmxlbmd0aCA+IDEgJiYgdG9rZW4uaW5uZXIuaW5jbHVkZXMoIi8iKSkgewogICAgICAgICAgICBleHRnbG9iU3RhciA9IGdsb2JzdGFyKG9wdHMpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGV4dGdsb2JTdGFyICE9PSBzdGFyIHx8IGVvcygpIHx8IC9eXCkrJC8udGVzdChyZW1haW5pbmcoKSkpIHsKICAgICAgICAgICAgb3V0cHV0ID0gdG9rZW4uY2xvc2UgPSBgKSQpKSR7ZXh0Z2xvYlN0YXJ9YDsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0b2tlbi5pbm5lci5pbmNsdWRlcygiKiIpICYmIChyZXN0ID0gcmVtYWluaW5nKCkpICYmIC9eXC5bXlxcLy5dKyQvLnRlc3QocmVzdCkpIHsKICAgICAgICAgICAgY29uc3QgZXhwcmVzc2lvbiA9IHBhcnNlKHJlc3QsIHsgLi4ub3B0aW9ucywgZmFzdHBhdGhzOiBmYWxzZSB9KS5vdXRwdXQ7CiAgICAgICAgICAgIG91dHB1dCA9IHRva2VuLmNsb3NlID0gYCkke2V4cHJlc3Npb259KSR7ZXh0Z2xvYlN0YXJ9KWA7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAodG9rZW4ucHJldi50eXBlID09PSAiYm9zIikgewogICAgICAgICAgICBzdGF0ZS5uZWdhdGVkRXh0Z2xvYiA9IHRydWU7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHB1c2goeyB0eXBlOiAicGFyZW4iLCBleHRnbG9iOiB0cnVlLCB2YWx1ZSwgb3V0cHV0IH0pOwogICAgICAgIGRlY3JlbWVudCgicGFyZW5zIik7CiAgICAgIH07CiAgICAgIGlmIChvcHRzLmZhc3RwYXRocyAhPT0gZmFsc2UgJiYgIS8oXlsqIV18Wy8oKVtcXXt9Il0pLy50ZXN0KGlucHV0KSkgewogICAgICAgIGxldCBiYWNrc2xhc2hlcyA9IGZhbHNlOwogICAgICAgIGxldCBvdXRwdXQgPSBpbnB1dC5yZXBsYWNlKFJFR0VYX1NQRUNJQUxfQ0hBUlNfQkFDS1JFRiwgKG0sIGVzYywgY2hhcnMsIGZpcnN0LCByZXN0LCBpbmRleCkgPT4gewogICAgICAgICAgaWYgKGZpcnN0ID09PSAiXFwiKSB7CiAgICAgICAgICAgIGJhY2tzbGFzaGVzID0gdHJ1ZTsKICAgICAgICAgICAgcmV0dXJuIG07CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZmlyc3QgPT09ICI/IikgewogICAgICAgICAgICBpZiAoZXNjKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGVzYyArIGZpcnN0ICsgKHJlc3QgPyBRTUFSSy5yZXBlYXQocmVzdC5sZW5ndGgpIDogIiIpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChpbmRleCA9PT0gMCkgewogICAgICAgICAgICAgIHJldHVybiBxbWFya05vRG90ICsgKHJlc3QgPyBRTUFSSy5yZXBlYXQocmVzdC5sZW5ndGgpIDogIiIpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBRTUFSSy5yZXBlYXQoY2hhcnMubGVuZ3RoKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChmaXJzdCA9PT0gIi4iKSB7CiAgICAgICAgICAgIHJldHVybiBET1RfTElURVJBTC5yZXBlYXQoY2hhcnMubGVuZ3RoKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChmaXJzdCA9PT0gIioiKSB7CiAgICAgICAgICAgIGlmIChlc2MpIHsKICAgICAgICAgICAgICByZXR1cm4gZXNjICsgZmlyc3QgKyAocmVzdCA/IHN0YXIgOiAiIik7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHN0YXI7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gZXNjID8gbSA6IGBcXCR7bX1gOwogICAgICAgIH0pOwogICAgICAgIGlmIChiYWNrc2xhc2hlcyA9PT0gdHJ1ZSkgewogICAgICAgICAgaWYgKG9wdHMudW5lc2NhcGUgPT09IHRydWUpIHsKICAgICAgICAgICAgb3V0cHV0ID0gb3V0cHV0LnJlcGxhY2UoL1xcL2csICIiKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIG91dHB1dCA9IG91dHB1dC5yZXBsYWNlKC9cXCsvZywgKG0pID0+IHsKICAgICAgICAgICAgICByZXR1cm4gbS5sZW5ndGggJSAyID09PSAwID8gIlxcXFwiIDogbSA/ICJcXCIgOiAiIjsKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChvdXRwdXQgPT09IGlucHV0ICYmIG9wdHMuY29udGFpbnMgPT09IHRydWUpIHsKICAgICAgICAgIHN0YXRlLm91dHB1dCA9IGlucHV0OwogICAgICAgICAgcmV0dXJuIHN0YXRlOwogICAgICAgIH0KICAgICAgICBzdGF0ZS5vdXRwdXQgPSB1dGlscy53cmFwT3V0cHV0KG91dHB1dCwgc3RhdGUsIG9wdGlvbnMpOwogICAgICAgIHJldHVybiBzdGF0ZTsKICAgICAgfQogICAgICB3aGlsZSAoIWVvcygpKSB7CiAgICAgICAgdmFsdWUgPSBhZHZhbmNlKCk7CiAgICAgICAgaWYgKHZhbHVlID09PSAiXDAiKSB7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiXFwiKSB7CiAgICAgICAgICBjb25zdCBuZXh0ID0gcGVlaygpOwogICAgICAgICAgaWYgKG5leHQgPT09ICIvIiAmJiBvcHRzLmJhc2ggIT09IHRydWUpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAobmV4dCA9PT0gIi4iIHx8IG5leHQgPT09ICI7IikgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICghbmV4dCkgewogICAgICAgICAgICB2YWx1ZSArPSAiXFwiOwogICAgICAgICAgICBwdXNoKHsgdHlwZTogInRleHQiLCB2YWx1ZSB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBtYXRjaCA9IC9eXFwrLy5leGVjKHJlbWFpbmluZygpKTsKICAgICAgICAgIGxldCBzbGFzaGVzID0gMDsKICAgICAgICAgIGlmIChtYXRjaCAmJiBtYXRjaFswXS5sZW5ndGggPiAyKSB7CiAgICAgICAgICAgIHNsYXNoZXMgPSBtYXRjaFswXS5sZW5ndGg7CiAgICAgICAgICAgIHN0YXRlLmluZGV4ICs9IHNsYXNoZXM7CiAgICAgICAgICAgIGlmIChzbGFzaGVzICUgMiAhPT0gMCkgewogICAgICAgICAgICAgIHZhbHVlICs9ICJcXCI7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmIChvcHRzLnVuZXNjYXBlID09PSB0cnVlKSB7CiAgICAgICAgICAgIHZhbHVlID0gYWR2YW5jZSgpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgdmFsdWUgKz0gYWR2YW5jZSgpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHN0YXRlLmJyYWNrZXRzID09PSAwKSB7CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAidGV4dCIsIHZhbHVlIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKHN0YXRlLmJyYWNrZXRzID4gMCAmJiAodmFsdWUgIT09ICJdIiB8fCBwcmV2LnZhbHVlID09PSAiWyIgfHwgcHJldi52YWx1ZSA9PT0gIlteIikpIHsKICAgICAgICAgIGlmIChvcHRzLnBvc2l4ICE9PSBmYWxzZSAmJiB2YWx1ZSA9PT0gIjoiKSB7CiAgICAgICAgICAgIGNvbnN0IGlubmVyID0gcHJldi52YWx1ZS5zbGljZSgxKTsKICAgICAgICAgICAgaWYgKGlubmVyLmluY2x1ZGVzKCJbIikpIHsKICAgICAgICAgICAgICBwcmV2LnBvc2l4ID0gdHJ1ZTsKICAgICAgICAgICAgICBpZiAoaW5uZXIuaW5jbHVkZXMoIjoiKSkgewogICAgICAgICAgICAgICAgY29uc3QgaWR4ID0gcHJldi52YWx1ZS5sYXN0SW5kZXhPZigiWyIpOwogICAgICAgICAgICAgICAgY29uc3QgcHJlID0gcHJldi52YWx1ZS5zbGljZSgwLCBpZHgpOwogICAgICAgICAgICAgICAgY29uc3QgcmVzdDIgPSBwcmV2LnZhbHVlLnNsaWNlKGlkeCArIDIpOwogICAgICAgICAgICAgICAgY29uc3QgcG9zaXggPSBQT1NJWF9SRUdFWF9TT1VSQ0VbcmVzdDJdOwogICAgICAgICAgICAgICAgaWYgKHBvc2l4KSB7CiAgICAgICAgICAgICAgICAgIHByZXYudmFsdWUgPSBwcmUgKyBwb3NpeDsKICAgICAgICAgICAgICAgICAgc3RhdGUuYmFja3RyYWNrID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgYWR2YW5jZSgpOwogICAgICAgICAgICAgICAgICBpZiAoIWJvcy5vdXRwdXQgJiYgdG9rZW5zLmluZGV4T2YocHJldikgPT09IDEpIHsKICAgICAgICAgICAgICAgICAgICBib3Mub3V0cHV0ID0gT05FX0NIQVI7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAodmFsdWUgPT09ICJbIiAmJiBwZWVrKCkgIT09ICI6IiB8fCB2YWx1ZSA9PT0gIi0iICYmIHBlZWsoKSA9PT0gIl0iKSB7CiAgICAgICAgICAgIHZhbHVlID0gYFxcJHt2YWx1ZX1gOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHZhbHVlID09PSAiXSIgJiYgKHByZXYudmFsdWUgPT09ICJbIiB8fCBwcmV2LnZhbHVlID09PSAiW14iKSkgewogICAgICAgICAgICB2YWx1ZSA9IGBcXCR7dmFsdWV9YDsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChvcHRzLnBvc2l4ID09PSB0cnVlICYmIHZhbHVlID09PSAiISIgJiYgcHJldi52YWx1ZSA9PT0gIlsiKSB7CiAgICAgICAgICAgIHZhbHVlID0gIl4iOwogICAgICAgICAgfQogICAgICAgICAgcHJldi52YWx1ZSArPSB2YWx1ZTsKICAgICAgICAgIGFwcGVuZCh7IHZhbHVlIH0pOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmIChzdGF0ZS5xdW90ZXMgPT09IDEgJiYgdmFsdWUgIT09ICciJykgewogICAgICAgICAgdmFsdWUgPSB1dGlscy5lc2NhcGVSZWdleCh2YWx1ZSk7CiAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgYXBwZW5kKHsgdmFsdWUgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAnIicpIHsKICAgICAgICAgIHN0YXRlLnF1b3RlcyA9IHN0YXRlLnF1b3RlcyA9PT0gMSA/IDAgOiAxOwogICAgICAgICAgaWYgKG9wdHMua2VlcFF1b3RlcyA9PT0gdHJ1ZSkgewogICAgICAgICAgICBwdXNoKHsgdHlwZTogInRleHQiLCB2YWx1ZSB9KTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICIoIikgewogICAgICAgICAgaW5jcmVtZW50KCJwYXJlbnMiKTsKICAgICAgICAgIHB1c2goeyB0eXBlOiAicGFyZW4iLCB2YWx1ZSB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICIpIikgewogICAgICAgICAgaWYgKHN0YXRlLnBhcmVucyA9PT0gMCAmJiBvcHRzLnN0cmljdEJyYWNrZXRzID09PSB0cnVlKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBTeW50YXhFcnJvcihzeW50YXhFcnJvcigib3BlbmluZyIsICIoIikpOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgZXh0Z2xvYiA9IGV4dGdsb2JzW2V4dGdsb2JzLmxlbmd0aCAtIDFdOwogICAgICAgICAgaWYgKGV4dGdsb2IgJiYgc3RhdGUucGFyZW5zID09PSBleHRnbG9iLnBhcmVucyArIDEpIHsKICAgICAgICAgICAgZXh0Z2xvYkNsb3NlKGV4dGdsb2JzLnBvcCgpKTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogInBhcmVuIiwgdmFsdWUsIG91dHB1dDogc3RhdGUucGFyZW5zID8gIikiIDogIlxcKSIgfSk7CiAgICAgICAgICBkZWNyZW1lbnQoInBhcmVucyIpOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSA9PT0gIlsiKSB7CiAgICAgICAgICBpZiAob3B0cy5ub2JyYWNrZXQgPT09IHRydWUgfHwgIXJlbWFpbmluZygpLmluY2x1ZGVzKCJdIikpIHsKICAgICAgICAgICAgaWYgKG9wdHMubm9icmFja2V0ICE9PSB0cnVlICYmIG9wdHMuc3RyaWN0QnJhY2tldHMgPT09IHRydWUpIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgU3ludGF4RXJyb3Ioc3ludGF4RXJyb3IoImNsb3NpbmciLCAiXSIpKTsKICAgICAgICAgICAgfQogICAgICAgICAgICB2YWx1ZSA9IGBcXCR7dmFsdWV9YDsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGluY3JlbWVudCgiYnJhY2tldHMiKTsKICAgICAgICAgIH0KICAgICAgICAgIHB1c2goeyB0eXBlOiAiYnJhY2tldCIsIHZhbHVlIH0pOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSA9PT0gIl0iKSB7CiAgICAgICAgICBpZiAob3B0cy5ub2JyYWNrZXQgPT09IHRydWUgfHwgcHJldiAmJiBwcmV2LnR5cGUgPT09ICJicmFja2V0IiAmJiBwcmV2LnZhbHVlLmxlbmd0aCA9PT0gMSkgewogICAgICAgICAgICBwdXNoKHsgdHlwZTogInRleHQiLCB2YWx1ZSwgb3V0cHV0OiBgXFwke3ZhbHVlfWAgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHN0YXRlLmJyYWNrZXRzID09PSAwKSB7CiAgICAgICAgICAgIGlmIChvcHRzLnN0cmljdEJyYWNrZXRzID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IFN5bnRheEVycm9yKHN5bnRheEVycm9yKCJvcGVuaW5nIiwgIlsiKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUsIG91dHB1dDogYFxcJHt2YWx1ZX1gIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGRlY3JlbWVudCgiYnJhY2tldHMiKTsKICAgICAgICAgIGNvbnN0IHByZXZWYWx1ZSA9IHByZXYudmFsdWUuc2xpY2UoMSk7CiAgICAgICAgICBpZiAocHJldi5wb3NpeCAhPT0gdHJ1ZSAmJiBwcmV2VmFsdWVbMF0gPT09ICJeIiAmJiAhcHJldlZhbHVlLmluY2x1ZGVzKCIvIikpIHsKICAgICAgICAgICAgdmFsdWUgPSBgLyR7dmFsdWV9YDsKICAgICAgICAgIH0KICAgICAgICAgIHByZXYudmFsdWUgKz0gdmFsdWU7CiAgICAgICAgICBhcHBlbmQoeyB2YWx1ZSB9KTsKICAgICAgICAgIGlmIChvcHRzLmxpdGVyYWxCcmFja2V0cyA9PT0gZmFsc2UgfHwgdXRpbHMuaGFzUmVnZXhDaGFycyhwcmV2VmFsdWUpKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgZXNjYXBlZCA9IHV0aWxzLmVzY2FwZVJlZ2V4KHByZXYudmFsdWUpOwogICAgICAgICAgc3RhdGUub3V0cHV0ID0gc3RhdGUub3V0cHV0LnNsaWNlKDAsIC1wcmV2LnZhbHVlLmxlbmd0aCk7CiAgICAgICAgICBpZiAob3B0cy5saXRlcmFsQnJhY2tldHMgPT09IHRydWUpIHsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ICs9IGVzY2FwZWQ7CiAgICAgICAgICAgIHByZXYudmFsdWUgPSBlc2NhcGVkOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIHByZXYudmFsdWUgPSBgKCR7Y2FwdHVyZX0ke2VzY2FwZWR9fCR7cHJldi52YWx1ZX0pYDsKICAgICAgICAgIHN0YXRlLm91dHB1dCArPSBwcmV2LnZhbHVlOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSA9PT0gInsiICYmIG9wdHMubm9icmFjZSAhPT0gdHJ1ZSkgewogICAgICAgICAgaW5jcmVtZW50KCJicmFjZXMiKTsKICAgICAgICAgIGNvbnN0IG9wZW4gPSB7CiAgICAgICAgICAgIHR5cGU6ICJicmFjZSIsCiAgICAgICAgICAgIHZhbHVlLAogICAgICAgICAgICBvdXRwdXQ6ICIoIiwKICAgICAgICAgICAgb3V0cHV0SW5kZXg6IHN0YXRlLm91dHB1dC5sZW5ndGgsCiAgICAgICAgICAgIHRva2Vuc0luZGV4OiBzdGF0ZS50b2tlbnMubGVuZ3RoCiAgICAgICAgICB9OwogICAgICAgICAgYnJhY2VzLnB1c2gob3Blbik7CiAgICAgICAgICBwdXNoKG9wZW4pOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSA9PT0gIn0iKSB7CiAgICAgICAgICBjb25zdCBicmFjZSA9IGJyYWNlc1ticmFjZXMubGVuZ3RoIC0gMV07CiAgICAgICAgICBpZiAob3B0cy5ub2JyYWNlID09PSB0cnVlIHx8ICFicmFjZSkgewogICAgICAgICAgICBwdXNoKHsgdHlwZTogInRleHQiLCB2YWx1ZSwgb3V0cHV0OiB2YWx1ZSB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgb3V0cHV0ID0gIikiOwogICAgICAgICAgaWYgKGJyYWNlLmRvdHMgPT09IHRydWUpIHsKICAgICAgICAgICAgY29uc3QgYXJyID0gdG9rZW5zLnNsaWNlKCk7CiAgICAgICAgICAgIGNvbnN0IHJhbmdlID0gW107CiAgICAgICAgICAgIGZvciAobGV0IGkgPSBhcnIubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHsKICAgICAgICAgICAgICB0b2tlbnMucG9wKCk7CiAgICAgICAgICAgICAgaWYgKGFycltpXS50eXBlID09PSAiYnJhY2UiKSB7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKGFycltpXS50eXBlICE9PSAiZG90cyIpIHsKICAgICAgICAgICAgICAgIHJhbmdlLnVuc2hpZnQoYXJyW2ldLnZhbHVlKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgb3V0cHV0ID0gZXhwYW5kUmFuZ2UocmFuZ2UsIG9wdHMpOwogICAgICAgICAgICBzdGF0ZS5iYWNrdHJhY2sgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGJyYWNlLmNvbW1hICE9PSB0cnVlICYmIGJyYWNlLmRvdHMgIT09IHRydWUpIHsKICAgICAgICAgICAgY29uc3Qgb3V0ID0gc3RhdGUub3V0cHV0LnNsaWNlKDAsIGJyYWNlLm91dHB1dEluZGV4KTsKICAgICAgICAgICAgY29uc3QgdG9rcyA9IHN0YXRlLnRva2Vucy5zbGljZShicmFjZS50b2tlbnNJbmRleCk7CiAgICAgICAgICAgIGJyYWNlLnZhbHVlID0gYnJhY2Uub3V0cHV0ID0gIlxceyI7CiAgICAgICAgICAgIHZhbHVlID0gb3V0cHV0ID0gIlxcfSI7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCA9IG91dDsKICAgICAgICAgICAgZm9yIChjb25zdCB0IG9mIHRva3MpIHsKICAgICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gdC5vdXRwdXQgfHwgdC52YWx1ZTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJicmFjZSIsIHZhbHVlLCBvdXRwdXQgfSk7CiAgICAgICAgICBkZWNyZW1lbnQoImJyYWNlcyIpOwogICAgICAgICAgYnJhY2VzLnBvcCgpOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSA9PT0gInwiKSB7CiAgICAgICAgICBpZiAoZXh0Z2xvYnMubGVuZ3RoID4gMCkgewogICAgICAgICAgICBleHRnbG9ic1tleHRnbG9icy5sZW5ndGggLSAxXS5jb25kaXRpb25zKys7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogInRleHQiLCB2YWx1ZSB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICIsIikgewogICAgICAgICAgbGV0IG91dHB1dCA9IHZhbHVlOwogICAgICAgICAgY29uc3QgYnJhY2UgPSBicmFjZXNbYnJhY2VzLmxlbmd0aCAtIDFdOwogICAgICAgICAgaWYgKGJyYWNlICYmIHN0YWNrW3N0YWNrLmxlbmd0aCAtIDFdID09PSAiYnJhY2VzIikgewogICAgICAgICAgICBicmFjZS5jb21tYSA9IHRydWU7CiAgICAgICAgICAgIG91dHB1dCA9ICJ8IjsKICAgICAgICAgIH0KICAgICAgICAgIHB1c2goeyB0eXBlOiAiY29tbWEiLCB2YWx1ZSwgb3V0cHV0IH0pOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSA9PT0gIi8iKSB7CiAgICAgICAgICBpZiAocHJldi50eXBlID09PSAiZG90IiAmJiBzdGF0ZS5pbmRleCA9PT0gc3RhdGUuc3RhcnQgKyAxKSB7CiAgICAgICAgICAgIHN0YXRlLnN0YXJ0ID0gc3RhdGUuaW5kZXggKyAxOwogICAgICAgICAgICBzdGF0ZS5jb25zdW1lZCA9ICIiOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSAiIjsKICAgICAgICAgICAgdG9rZW5zLnBvcCgpOwogICAgICAgICAgICBwcmV2ID0gYm9zOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIHB1c2goeyB0eXBlOiAic2xhc2giLCB2YWx1ZSwgb3V0cHV0OiBTTEFTSF9MSVRFUkFMIH0pOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSA9PT0gIi4iKSB7CiAgICAgICAgICBpZiAoc3RhdGUuYnJhY2VzID4gMCAmJiBwcmV2LnR5cGUgPT09ICJkb3QiKSB7CiAgICAgICAgICAgIGlmIChwcmV2LnZhbHVlID09PSAiLiIpIHByZXYub3V0cHV0ID0gRE9UX0xJVEVSQUw7CiAgICAgICAgICAgIGNvbnN0IGJyYWNlID0gYnJhY2VzW2JyYWNlcy5sZW5ndGggLSAxXTsKICAgICAgICAgICAgcHJldi50eXBlID0gImRvdHMiOwogICAgICAgICAgICBwcmV2Lm91dHB1dCArPSB2YWx1ZTsKICAgICAgICAgICAgcHJldi52YWx1ZSArPSB2YWx1ZTsKICAgICAgICAgICAgYnJhY2UuZG90cyA9IHRydWU7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHN0YXRlLmJyYWNlcyArIHN0YXRlLnBhcmVucyA9PT0gMCAmJiBwcmV2LnR5cGUgIT09ICJib3MiICYmIHByZXYudHlwZSAhPT0gInNsYXNoIikgewogICAgICAgICAgICBwdXNoKHsgdHlwZTogInRleHQiLCB2YWx1ZSwgb3V0cHV0OiBET1RfTElURVJBTCB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogImRvdCIsIHZhbHVlLCBvdXRwdXQ6IERPVF9MSVRFUkFMIH0pOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSA9PT0gIj8iKSB7CiAgICAgICAgICBjb25zdCBpc0dyb3VwID0gcHJldiAmJiBwcmV2LnZhbHVlID09PSAiKCI7CiAgICAgICAgICBpZiAoIWlzR3JvdXAgJiYgb3B0cy5ub2V4dGdsb2IgIT09IHRydWUgJiYgcGVlaygpID09PSAiKCIgJiYgcGVlaygyKSAhPT0gIj8iKSB7CiAgICAgICAgICAgIGV4dGdsb2JPcGVuKCJxbWFyayIsIHZhbHVlKTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAocHJldiAmJiBwcmV2LnR5cGUgPT09ICJwYXJlbiIpIHsKICAgICAgICAgICAgY29uc3QgbmV4dCA9IHBlZWsoKTsKICAgICAgICAgICAgbGV0IG91dHB1dCA9IHZhbHVlOwogICAgICAgICAgICBpZiAocHJldi52YWx1ZSA9PT0gIigiICYmICEvWyE9PDpdLy50ZXN0KG5leHQpIHx8IG5leHQgPT09ICI8IiAmJiAhLzwoWyE9XXxcdys+KS8udGVzdChyZW1haW5pbmcoKSkpIHsKICAgICAgICAgICAgICBvdXRwdXQgPSBgXFwke3ZhbHVlfWA7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUsIG91dHB1dCB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAob3B0cy5kb3QgIT09IHRydWUgJiYgKHByZXYudHlwZSA9PT0gInNsYXNoIiB8fCBwcmV2LnR5cGUgPT09ICJib3MiKSkgewogICAgICAgICAgICBwdXNoKHsgdHlwZTogInFtYXJrIiwgdmFsdWUsIG91dHB1dDogUU1BUktfTk9fRE9UIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIHB1c2goeyB0eXBlOiAicW1hcmsiLCB2YWx1ZSwgb3V0cHV0OiBRTUFSSyB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICIhIikgewogICAgICAgICAgaWYgKG9wdHMubm9leHRnbG9iICE9PSB0cnVlICYmIHBlZWsoKSA9PT0gIigiKSB7CiAgICAgICAgICAgIGlmIChwZWVrKDIpICE9PSAiPyIgfHwgIS9bIT08Ol0vLnRlc3QocGVlaygzKSkpIHsKICAgICAgICAgICAgICBleHRnbG9iT3BlbigibmVnYXRlIiwgdmFsdWUpOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAob3B0cy5ub25lZ2F0ZSAhPT0gdHJ1ZSAmJiBzdGF0ZS5pbmRleCA9PT0gMCkgewogICAgICAgICAgICBuZWdhdGUoKTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSA9PT0gIisiKSB7CiAgICAgICAgICBpZiAob3B0cy5ub2V4dGdsb2IgIT09IHRydWUgJiYgcGVlaygpID09PSAiKCIgJiYgcGVlaygyKSAhPT0gIj8iKSB7CiAgICAgICAgICAgIGV4dGdsb2JPcGVuKCJwbHVzIiwgdmFsdWUpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwcmV2ICYmIHByZXYudmFsdWUgPT09ICIoIiB8fCBvcHRzLnJlZ2V4ID09PSBmYWxzZSkgewogICAgICAgICAgICBwdXNoKHsgdHlwZTogInBsdXMiLCB2YWx1ZSwgb3V0cHV0OiBQTFVTX0xJVEVSQUwgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHByZXYgJiYgKHByZXYudHlwZSA9PT0gImJyYWNrZXQiIHx8IHByZXYudHlwZSA9PT0gInBhcmVuIiB8fCBwcmV2LnR5cGUgPT09ICJicmFjZSIpIHx8IHN0YXRlLnBhcmVucyA+IDApIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJwbHVzIiwgdmFsdWUgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJwbHVzIiwgdmFsdWU6IFBMVVNfTElURVJBTCB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJAIikgewogICAgICAgICAgaWYgKG9wdHMubm9leHRnbG9iICE9PSB0cnVlICYmIHBlZWsoKSA9PT0gIigiICYmIHBlZWsoMikgIT09ICI/IikgewogICAgICAgICAgICBwdXNoKHsgdHlwZTogImF0IiwgZXh0Z2xvYjogdHJ1ZSwgdmFsdWUsIG91dHB1dDogIiIgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlICE9PSAiKiIpIHsKICAgICAgICAgIGlmICh2YWx1ZSA9PT0gIiQiIHx8IHZhbHVlID09PSAiXiIpIHsKICAgICAgICAgICAgdmFsdWUgPSBgXFwke3ZhbHVlfWA7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBtYXRjaCA9IFJFR0VYX05PTl9TUEVDSUFMX0NIQVJTLmV4ZWMocmVtYWluaW5nKCkpOwogICAgICAgICAgaWYgKG1hdGNoKSB7CiAgICAgICAgICAgIHZhbHVlICs9IG1hdGNoWzBdOwogICAgICAgICAgICBzdGF0ZS5pbmRleCArPSBtYXRjaFswXS5sZW5ndGg7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogInRleHQiLCB2YWx1ZSB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAocHJldiAmJiAocHJldi50eXBlID09PSAiZ2xvYnN0YXIiIHx8IHByZXYuc3RhciA9PT0gdHJ1ZSkpIHsKICAgICAgICAgIHByZXYudHlwZSA9ICJzdGFyIjsKICAgICAgICAgIHByZXYuc3RhciA9IHRydWU7CiAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgcHJldi5vdXRwdXQgPSBzdGFyOwogICAgICAgICAgc3RhdGUuYmFja3RyYWNrID0gdHJ1ZTsKICAgICAgICAgIHN0YXRlLmdsb2JzdGFyID0gdHJ1ZTsKICAgICAgICAgIGNvbnN1bWUodmFsdWUpOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGxldCByZXN0ID0gcmVtYWluaW5nKCk7CiAgICAgICAgaWYgKG9wdHMubm9leHRnbG9iICE9PSB0cnVlICYmIC9eXChbXj9dLy50ZXN0KHJlc3QpKSB7CiAgICAgICAgICBleHRnbG9iT3Blbigic3RhciIsIHZhbHVlKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAocHJldi50eXBlID09PSAic3RhciIpIHsKICAgICAgICAgIGlmIChvcHRzLm5vZ2xvYnN0YXIgPT09IHRydWUpIHsKICAgICAgICAgICAgY29uc3VtZSh2YWx1ZSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgcHJpb3IgPSBwcmV2LnByZXY7CiAgICAgICAgICBjb25zdCBiZWZvcmUgPSBwcmlvci5wcmV2OwogICAgICAgICAgY29uc3QgaXNTdGFydCA9IHByaW9yLnR5cGUgPT09ICJzbGFzaCIgfHwgcHJpb3IudHlwZSA9PT0gImJvcyI7CiAgICAgICAgICBjb25zdCBhZnRlclN0YXIgPSBiZWZvcmUgJiYgKGJlZm9yZS50eXBlID09PSAic3RhciIgfHwgYmVmb3JlLnR5cGUgPT09ICJnbG9ic3RhciIpOwogICAgICAgICAgaWYgKG9wdHMuYmFzaCA9PT0gdHJ1ZSAmJiAoIWlzU3RhcnQgfHwgcmVzdFswXSAmJiByZXN0WzBdICE9PSAiLyIpKSB7CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAic3RhciIsIHZhbHVlLCBvdXRwdXQ6ICIiIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGlzQnJhY2UgPSBzdGF0ZS5icmFjZXMgPiAwICYmIChwcmlvci50eXBlID09PSAiY29tbWEiIHx8IHByaW9yLnR5cGUgPT09ICJicmFjZSIpOwogICAgICAgICAgY29uc3QgaXNFeHRnbG9iID0gZXh0Z2xvYnMubGVuZ3RoICYmIChwcmlvci50eXBlID09PSAicGlwZSIgfHwgcHJpb3IudHlwZSA9PT0gInBhcmVuIik7CiAgICAgICAgICBpZiAoIWlzU3RhcnQgJiYgcHJpb3IudHlwZSAhPT0gInBhcmVuIiAmJiAhaXNCcmFjZSAmJiAhaXNFeHRnbG9iKSB7CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAic3RhciIsIHZhbHVlLCBvdXRwdXQ6ICIiIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIHdoaWxlIChyZXN0LnNsaWNlKDAsIDMpID09PSAiLyoqIikgewogICAgICAgICAgICBjb25zdCBhZnRlciA9IGlucHV0W3N0YXRlLmluZGV4ICsgNF07CiAgICAgICAgICAgIGlmIChhZnRlciAmJiBhZnRlciAhPT0gIi8iKSB7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmVzdCA9IHJlc3Quc2xpY2UoMyk7CiAgICAgICAgICAgIGNvbnN1bWUoIi8qKiIsIDMpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHByaW9yLnR5cGUgPT09ICJib3MiICYmIGVvcygpKSB7CiAgICAgICAgICAgIHByZXYudHlwZSA9ICJnbG9ic3RhciI7CiAgICAgICAgICAgIHByZXYudmFsdWUgKz0gdmFsdWU7CiAgICAgICAgICAgIHByZXYub3V0cHV0ID0gZ2xvYnN0YXIob3B0cyk7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCA9IHByZXYub3V0cHV0OwogICAgICAgICAgICBzdGF0ZS5nbG9ic3RhciA9IHRydWU7CiAgICAgICAgICAgIGNvbnN1bWUodmFsdWUpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwcmlvci50eXBlID09PSAic2xhc2giICYmIHByaW9yLnByZXYudHlwZSAhPT0gImJvcyIgJiYgIWFmdGVyU3RhciAmJiBlb3MoKSkgewogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBzdGF0ZS5vdXRwdXQuc2xpY2UoMCwgLShwcmlvci5vdXRwdXQgKyBwcmV2Lm91dHB1dCkubGVuZ3RoKTsKICAgICAgICAgICAgcHJpb3Iub3V0cHV0ID0gYCg/OiR7cHJpb3Iub3V0cHV0fWA7CiAgICAgICAgICAgIHByZXYudHlwZSA9ICJnbG9ic3RhciI7CiAgICAgICAgICAgIHByZXYub3V0cHV0ID0gZ2xvYnN0YXIob3B0cykgKyAob3B0cy5zdHJpY3RTbGFzaGVzID8gIikiIDogInwkKSIpOwogICAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgICBzdGF0ZS5nbG9ic3RhciA9IHRydWU7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCArPSBwcmlvci5vdXRwdXQgKyBwcmV2Lm91dHB1dDsKICAgICAgICAgICAgY29uc3VtZSh2YWx1ZSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHByaW9yLnR5cGUgPT09ICJzbGFzaCIgJiYgcHJpb3IucHJldi50eXBlICE9PSAiYm9zIiAmJiByZXN0WzBdID09PSAiLyIpIHsKICAgICAgICAgICAgY29uc3QgZW5kID0gcmVzdFsxXSAhPT0gdm9pZCAwID8gInwkIiA6ICIiOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBzdGF0ZS5vdXRwdXQuc2xpY2UoMCwgLShwcmlvci5vdXRwdXQgKyBwcmV2Lm91dHB1dCkubGVuZ3RoKTsKICAgICAgICAgICAgcHJpb3Iub3V0cHV0ID0gYCg/OiR7cHJpb3Iub3V0cHV0fWA7CiAgICAgICAgICAgIHByZXYudHlwZSA9ICJnbG9ic3RhciI7CiAgICAgICAgICAgIHByZXYub3V0cHV0ID0gYCR7Z2xvYnN0YXIob3B0cyl9JHtTTEFTSF9MSVRFUkFMfXwke1NMQVNIX0xJVEVSQUx9JHtlbmR9KWA7CiAgICAgICAgICAgIHByZXYudmFsdWUgKz0gdmFsdWU7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCArPSBwcmlvci5vdXRwdXQgKyBwcmV2Lm91dHB1dDsKICAgICAgICAgICAgc3RhdGUuZ2xvYnN0YXIgPSB0cnVlOwogICAgICAgICAgICBjb25zdW1lKHZhbHVlICsgYWR2YW5jZSgpKTsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJzbGFzaCIsIHZhbHVlOiAiLyIsIG91dHB1dDogIiIgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHByaW9yLnR5cGUgPT09ICJib3MiICYmIHJlc3RbMF0gPT09ICIvIikgewogICAgICAgICAgICBwcmV2LnR5cGUgPSAiZ2xvYnN0YXIiOwogICAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgICBwcmV2Lm91dHB1dCA9IGAoPzpefCR7U0xBU0hfTElURVJBTH18JHtnbG9ic3RhcihvcHRzKX0ke1NMQVNIX0xJVEVSQUx9KWA7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCA9IHByZXYub3V0cHV0OwogICAgICAgICAgICBzdGF0ZS5nbG9ic3RhciA9IHRydWU7CiAgICAgICAgICAgIGNvbnN1bWUodmFsdWUgKyBhZHZhbmNlKCkpOwogICAgICAgICAgICBwdXNoKHsgdHlwZTogInNsYXNoIiwgdmFsdWU6ICIvIiwgb3V0cHV0OiAiIiB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBzdGF0ZS5vdXRwdXQuc2xpY2UoMCwgLXByZXYub3V0cHV0Lmxlbmd0aCk7CiAgICAgICAgICBwcmV2LnR5cGUgPSAiZ2xvYnN0YXIiOwogICAgICAgICAgcHJldi5vdXRwdXQgPSBnbG9ic3RhcihvcHRzKTsKICAgICAgICAgIHByZXYudmFsdWUgKz0gdmFsdWU7CiAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gcHJldi5vdXRwdXQ7CiAgICAgICAgICBzdGF0ZS5nbG9ic3RhciA9IHRydWU7CiAgICAgICAgICBjb25zdW1lKHZhbHVlKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBjb25zdCB0b2tlbiA9IHsgdHlwZTogInN0YXIiLCB2YWx1ZSwgb3V0cHV0OiBzdGFyIH07CiAgICAgICAgaWYgKG9wdHMuYmFzaCA9PT0gdHJ1ZSkgewogICAgICAgICAgdG9rZW4ub3V0cHV0ID0gIi4qPyI7CiAgICAgICAgICBpZiAocHJldi50eXBlID09PSAiYm9zIiB8fCBwcmV2LnR5cGUgPT09ICJzbGFzaCIpIHsKICAgICAgICAgICAgdG9rZW4ub3V0cHV0ID0gbm9kb3QgKyB0b2tlbi5vdXRwdXQ7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHRva2VuKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAocHJldiAmJiAocHJldi50eXBlID09PSAiYnJhY2tldCIgfHwgcHJldi50eXBlID09PSAicGFyZW4iKSAmJiBvcHRzLnJlZ2V4ID09PSB0cnVlKSB7CiAgICAgICAgICB0b2tlbi5vdXRwdXQgPSB2YWx1ZTsKICAgICAgICAgIHB1c2godG9rZW4pOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmIChzdGF0ZS5pbmRleCA9PT0gc3RhdGUuc3RhcnQgfHwgcHJldi50eXBlID09PSAic2xhc2giIHx8IHByZXYudHlwZSA9PT0gImRvdCIpIHsKICAgICAgICAgIGlmIChwcmV2LnR5cGUgPT09ICJkb3QiKSB7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCArPSBOT19ET1RfU0xBU0g7CiAgICAgICAgICAgIHByZXYub3V0cHV0ICs9IE5PX0RPVF9TTEFTSDsKICAgICAgICAgIH0gZWxzZSBpZiAob3B0cy5kb3QgPT09IHRydWUpIHsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ICs9IE5PX0RPVFNfU0xBU0g7CiAgICAgICAgICAgIHByZXYub3V0cHV0ICs9IE5PX0RPVFNfU0xBU0g7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gbm9kb3Q7CiAgICAgICAgICAgIHByZXYub3V0cHV0ICs9IG5vZG90OwogICAgICAgICAgfQogICAgICAgICAgaWYgKHBlZWsoKSAhPT0gIioiKSB7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCArPSBPTkVfQ0hBUjsKICAgICAgICAgICAgcHJldi5vdXRwdXQgKz0gT05FX0NIQVI7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHB1c2godG9rZW4pOwogICAgICB9CiAgICAgIHdoaWxlIChzdGF0ZS5icmFja2V0cyA+IDApIHsKICAgICAgICBpZiAob3B0cy5zdHJpY3RCcmFja2V0cyA9PT0gdHJ1ZSkgdGhyb3cgbmV3IFN5bnRheEVycm9yKHN5bnRheEVycm9yKCJjbG9zaW5nIiwgIl0iKSk7CiAgICAgICAgc3RhdGUub3V0cHV0ID0gdXRpbHMuZXNjYXBlTGFzdChzdGF0ZS5vdXRwdXQsICJbIik7CiAgICAgICAgZGVjcmVtZW50KCJicmFja2V0cyIpOwogICAgICB9CiAgICAgIHdoaWxlIChzdGF0ZS5wYXJlbnMgPiAwKSB7CiAgICAgICAgaWYgKG9wdHMuc3RyaWN0QnJhY2tldHMgPT09IHRydWUpIHRocm93IG5ldyBTeW50YXhFcnJvcihzeW50YXhFcnJvcigiY2xvc2luZyIsICIpIikpOwogICAgICAgIHN0YXRlLm91dHB1dCA9IHV0aWxzLmVzY2FwZUxhc3Qoc3RhdGUub3V0cHV0LCAiKCIpOwogICAgICAgIGRlY3JlbWVudCgicGFyZW5zIik7CiAgICAgIH0KICAgICAgd2hpbGUgKHN0YXRlLmJyYWNlcyA+IDApIHsKICAgICAgICBpZiAob3B0cy5zdHJpY3RCcmFja2V0cyA9PT0gdHJ1ZSkgdGhyb3cgbmV3IFN5bnRheEVycm9yKHN5bnRheEVycm9yKCJjbG9zaW5nIiwgIn0iKSk7CiAgICAgICAgc3RhdGUub3V0cHV0ID0gdXRpbHMuZXNjYXBlTGFzdChzdGF0ZS5vdXRwdXQsICJ7Iik7CiAgICAgICAgZGVjcmVtZW50KCJicmFjZXMiKTsKICAgICAgfQogICAgICBpZiAob3B0cy5zdHJpY3RTbGFzaGVzICE9PSB0cnVlICYmIChwcmV2LnR5cGUgPT09ICJzdGFyIiB8fCBwcmV2LnR5cGUgPT09ICJicmFja2V0IikpIHsKICAgICAgICBwdXNoKHsgdHlwZTogIm1heWJlX3NsYXNoIiwgdmFsdWU6ICIiLCBvdXRwdXQ6IGAke1NMQVNIX0xJVEVSQUx9P2AgfSk7CiAgICAgIH0KICAgICAgaWYgKHN0YXRlLmJhY2t0cmFjayA9PT0gdHJ1ZSkgewogICAgICAgIHN0YXRlLm91dHB1dCA9ICIiOwogICAgICAgIGZvciAoY29uc3QgdG9rZW4gb2Ygc3RhdGUudG9rZW5zKSB7CiAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gdG9rZW4ub3V0cHV0ICE9IG51bGwgPyB0b2tlbi5vdXRwdXQgOiB0b2tlbi52YWx1ZTsKICAgICAgICAgIGlmICh0b2tlbi5zdWZmaXgpIHsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ICs9IHRva2VuLnN1ZmZpeDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIHN0YXRlOwogICAgfTsKICAgIHBhcnNlLmZhc3RwYXRocyA9IChpbnB1dCwgb3B0aW9ucykgPT4gewogICAgICBjb25zdCBvcHRzID0geyAuLi5vcHRpb25zIH07CiAgICAgIGNvbnN0IG1heCA9IHR5cGVvZiBvcHRzLm1heExlbmd0aCA9PT0gIm51bWJlciIgPyBNYXRoLm1pbihNQVhfTEVOR1RILCBvcHRzLm1heExlbmd0aCkgOiBNQVhfTEVOR1RIOwogICAgICBjb25zdCBsZW4gPSBpbnB1dC5sZW5ndGg7CiAgICAgIGlmIChsZW4gPiBtYXgpIHsKICAgICAgICB0aHJvdyBuZXcgU3ludGF4RXJyb3IoYElucHV0IGxlbmd0aDogJHtsZW59LCBleGNlZWRzIG1heGltdW0gYWxsb3dlZCBsZW5ndGg6ICR7bWF4fWApOwogICAgICB9CiAgICAgIGlucHV0ID0gUkVQTEFDRU1FTlRTW2lucHV0XSB8fCBpbnB1dDsKICAgICAgY29uc3QgewogICAgICAgIERPVF9MSVRFUkFMLAogICAgICAgIFNMQVNIX0xJVEVSQUwsCiAgICAgICAgT05FX0NIQVIsCiAgICAgICAgRE9UU19TTEFTSCwKICAgICAgICBOT19ET1QsCiAgICAgICAgTk9fRE9UUywKICAgICAgICBOT19ET1RTX1NMQVNILAogICAgICAgIFNUQVIsCiAgICAgICAgU1RBUlRfQU5DSE9SCiAgICAgIH0gPSBjb25zdGFudHMuZ2xvYkNoYXJzKG9wdHMud2luZG93cyk7CiAgICAgIGNvbnN0IG5vZG90ID0gb3B0cy5kb3QgPyBOT19ET1RTIDogTk9fRE9UOwogICAgICBjb25zdCBzbGFzaERvdCA9IG9wdHMuZG90ID8gTk9fRE9UU19TTEFTSCA6IE5PX0RPVDsKICAgICAgY29uc3QgY2FwdHVyZSA9IG9wdHMuY2FwdHVyZSA/ICIiIDogIj86IjsKICAgICAgY29uc3Qgc3RhdGUgPSB7IG5lZ2F0ZWQ6IGZhbHNlLCBwcmVmaXg6ICIiIH07CiAgICAgIGxldCBzdGFyID0gb3B0cy5iYXNoID09PSB0cnVlID8gIi4qPyIgOiBTVEFSOwogICAgICBpZiAob3B0cy5jYXB0dXJlKSB7CiAgICAgICAgc3RhciA9IGAoJHtzdGFyfSlgOwogICAgICB9CiAgICAgIGNvbnN0IGdsb2JzdGFyID0gKG9wdHMyKSA9PiB7CiAgICAgICAgaWYgKG9wdHMyLm5vZ2xvYnN0YXIgPT09IHRydWUpIHJldHVybiBzdGFyOwogICAgICAgIHJldHVybiBgKCR7Y2FwdHVyZX0oPzooPyEke1NUQVJUX0FOQ0hPUn0ke29wdHMyLmRvdCA/IERPVFNfU0xBU0ggOiBET1RfTElURVJBTH0pLikqPylgOwogICAgICB9OwogICAgICBjb25zdCBjcmVhdGUgPSAoc3RyKSA9PiB7CiAgICAgICAgc3dpdGNoIChzdHIpIHsKICAgICAgICAgIGNhc2UgIioiOgogICAgICAgICAgICByZXR1cm4gYCR7bm9kb3R9JHtPTkVfQ0hBUn0ke3N0YXJ9YDsKICAgICAgICAgIGNhc2UgIi4qIjoKICAgICAgICAgICAgcmV0dXJuIGAke0RPVF9MSVRFUkFMfSR7T05FX0NIQVJ9JHtzdGFyfWA7CiAgICAgICAgICBjYXNlICIqLioiOgogICAgICAgICAgICByZXR1cm4gYCR7bm9kb3R9JHtzdGFyfSR7RE9UX0xJVEVSQUx9JHtPTkVfQ0hBUn0ke3N0YXJ9YDsKICAgICAgICAgIGNhc2UgIiovKiI6CiAgICAgICAgICAgIHJldHVybiBgJHtub2RvdH0ke3N0YXJ9JHtTTEFTSF9MSVRFUkFMfSR7T05FX0NIQVJ9JHtzbGFzaERvdH0ke3N0YXJ9YDsKICAgICAgICAgIGNhc2UgIioqIjoKICAgICAgICAgICAgcmV0dXJuIG5vZG90ICsgZ2xvYnN0YXIob3B0cyk7CiAgICAgICAgICBjYXNlICIqKi8qIjoKICAgICAgICAgICAgcmV0dXJuIGAoPzoke25vZG90fSR7Z2xvYnN0YXIob3B0cyl9JHtTTEFTSF9MSVRFUkFMfSk/JHtzbGFzaERvdH0ke09ORV9DSEFSfSR7c3Rhcn1gOwogICAgICAgICAgY2FzZSAiKiovKi4qIjoKICAgICAgICAgICAgcmV0dXJuIGAoPzoke25vZG90fSR7Z2xvYnN0YXIob3B0cyl9JHtTTEFTSF9MSVRFUkFMfSk/JHtzbGFzaERvdH0ke3N0YXJ9JHtET1RfTElURVJBTH0ke09ORV9DSEFSfSR7c3Rhcn1gOwogICAgICAgICAgY2FzZSAiKiovLioiOgogICAgICAgICAgICByZXR1cm4gYCg/OiR7bm9kb3R9JHtnbG9ic3RhcihvcHRzKX0ke1NMQVNIX0xJVEVSQUx9KT8ke0RPVF9MSVRFUkFMfSR7T05FX0NIQVJ9JHtzdGFyfWA7CiAgICAgICAgICBkZWZhdWx0OiB7CiAgICAgICAgICAgIGNvbnN0IG1hdGNoID0gL14oLio/KVwuKFx3KykkLy5leGVjKHN0cik7CiAgICAgICAgICAgIGlmICghbWF0Y2gpIHJldHVybjsKICAgICAgICAgICAgY29uc3Qgc291cmNlMiA9IGNyZWF0ZShtYXRjaFsxXSk7CiAgICAgICAgICAgIGlmICghc291cmNlMikgcmV0dXJuOwogICAgICAgICAgICByZXR1cm4gc291cmNlMiArIERPVF9MSVRFUkFMICsgbWF0Y2hbMl07CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9OwogICAgICBjb25zdCBvdXRwdXQgPSB1dGlscy5yZW1vdmVQcmVmaXgoaW5wdXQsIHN0YXRlKTsKICAgICAgbGV0IHNvdXJjZSA9IGNyZWF0ZShvdXRwdXQpOwogICAgICBpZiAoc291cmNlICYmIG9wdHMuc3RyaWN0U2xhc2hlcyAhPT0gdHJ1ZSkgewogICAgICAgIHNvdXJjZSArPSBgJHtTTEFTSF9MSVRFUkFMfT9gOwogICAgICB9CiAgICAgIHJldHVybiBzb3VyY2U7CiAgICB9OwogICAgbW9kdWxlMi5leHBvcnRzID0gcGFyc2U7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi1jZTYxN2I4ZGEzLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi9waWNvbWF0Y2guanMKdmFyIHJlcXVpcmVfcGljb21hdGNoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi1jZTYxN2I4ZGEzLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi9waWNvbWF0Y2guanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgc2NhbiA9IHJlcXVpcmVfc2NhbjIoKTsKICAgIHZhciBwYXJzZSA9IHJlcXVpcmVfcGFyc2UoKTsKICAgIHZhciB1dGlscyA9IHJlcXVpcmVfdXRpbHM0KCk7CiAgICB2YXIgY29uc3RhbnRzID0gcmVxdWlyZV9jb25zdGFudHMoKTsKICAgIHZhciBpc09iamVjdCA9ICh2YWwpID0+IHZhbCAmJiB0eXBlb2YgdmFsID09PSAib2JqZWN0IiAmJiAhQXJyYXkuaXNBcnJheSh2YWwpOwogICAgdmFyIHBpY29tYXRjaCA9IChnbG9iLCBvcHRpb25zLCByZXR1cm5TdGF0ZSA9IGZhbHNlKSA9PiB7CiAgICAgIGlmIChBcnJheS5pc0FycmF5KGdsb2IpKSB7CiAgICAgICAgY29uc3QgZm5zID0gZ2xvYi5tYXAoKGlucHV0KSA9PiBwaWNvbWF0Y2goaW5wdXQsIG9wdGlvbnMsIHJldHVyblN0YXRlKSk7CiAgICAgICAgY29uc3QgYXJyYXlNYXRjaGVyID0gKHN0cikgPT4gewogICAgICAgICAgZm9yIChjb25zdCBpc01hdGNoIG9mIGZucykgewogICAgICAgICAgICBjb25zdCBzdGF0ZTIgPSBpc01hdGNoKHN0cik7CiAgICAgICAgICAgIGlmIChzdGF0ZTIpIHJldHVybiBzdGF0ZTI7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gYXJyYXlNYXRjaGVyOwogICAgICB9CiAgICAgIGNvbnN0IGlzU3RhdGUgPSBpc09iamVjdChnbG9iKSAmJiBnbG9iLnRva2VucyAmJiBnbG9iLmlucHV0OwogICAgICBpZiAoZ2xvYiA9PT0gIiIgfHwgdHlwZW9mIGdsb2IgIT09ICJzdHJpbmciICYmICFpc1N0YXRlKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgcGF0dGVybiB0byBiZSBhIG5vbi1lbXB0eSBzdHJpbmciKTsKICAgICAgfQogICAgICBjb25zdCBvcHRzID0gb3B0aW9ucyB8fCB7fTsKICAgICAgY29uc3QgcG9zaXggPSBvcHRzLndpbmRvd3M7CiAgICAgIGNvbnN0IHJlZ2V4ID0gaXNTdGF0ZSA/IHBpY29tYXRjaC5jb21waWxlUmUoZ2xvYiwgb3B0aW9ucykgOiBwaWNvbWF0Y2gubWFrZVJlKGdsb2IsIG9wdGlvbnMsIGZhbHNlLCB0cnVlKTsKICAgICAgY29uc3Qgc3RhdGUgPSByZWdleC5zdGF0ZTsKICAgICAgZGVsZXRlIHJlZ2V4LnN0YXRlOwogICAgICBsZXQgaXNJZ25vcmVkID0gKCkgPT4gZmFsc2U7CiAgICAgIGlmIChvcHRzLmlnbm9yZSkgewogICAgICAgIGNvbnN0IGlnbm9yZU9wdHMgPSB7IC4uLm9wdGlvbnMsIGlnbm9yZTogbnVsbCwgb25NYXRjaDogbnVsbCwgb25SZXN1bHQ6IG51bGwgfTsKICAgICAgICBpc0lnbm9yZWQgPSBwaWNvbWF0Y2gob3B0cy5pZ25vcmUsIGlnbm9yZU9wdHMsIHJldHVyblN0YXRlKTsKICAgICAgfQogICAgICBjb25zdCBtYXRjaGVyID0gKGlucHV0LCByZXR1cm5PYmplY3QgPSBmYWxzZSkgPT4gewogICAgICAgIGNvbnN0IHsgaXNNYXRjaCwgbWF0Y2gsIG91dHB1dCB9ID0gcGljb21hdGNoLnRlc3QoaW5wdXQsIHJlZ2V4LCBvcHRpb25zLCB7IGdsb2IsIHBvc2l4IH0pOwogICAgICAgIGNvbnN0IHJlc3VsdCA9IHsgZ2xvYiwgc3RhdGUsIHJlZ2V4LCBwb3NpeCwgaW5wdXQsIG91dHB1dCwgbWF0Y2gsIGlzTWF0Y2ggfTsKICAgICAgICBpZiAodHlwZW9mIG9wdHMub25SZXN1bHQgPT09ICJmdW5jdGlvbiIpIHsKICAgICAgICAgIG9wdHMub25SZXN1bHQocmVzdWx0KTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzTWF0Y2ggPT09IGZhbHNlKSB7CiAgICAgICAgICByZXN1bHQuaXNNYXRjaCA9IGZhbHNlOwogICAgICAgICAgcmV0dXJuIHJldHVybk9iamVjdCA/IHJlc3VsdCA6IGZhbHNlOwogICAgICAgIH0KICAgICAgICBpZiAoaXNJZ25vcmVkKGlucHV0KSkgewogICAgICAgICAgaWYgKHR5cGVvZiBvcHRzLm9uSWdub3JlID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICAgIG9wdHMub25JZ25vcmUocmVzdWx0KTsKICAgICAgICAgIH0KICAgICAgICAgIHJlc3VsdC5pc01hdGNoID0gZmFsc2U7CiAgICAgICAgICByZXR1cm4gcmV0dXJuT2JqZWN0ID8gcmVzdWx0IDogZmFsc2U7CiAgICAgICAgfQogICAgICAgIGlmICh0eXBlb2Ygb3B0cy5vbk1hdGNoID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICBvcHRzLm9uTWF0Y2gocmVzdWx0KTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJldHVybk9iamVjdCA/IHJlc3VsdCA6IHRydWU7CiAgICAgIH07CiAgICAgIGlmIChyZXR1cm5TdGF0ZSkgewogICAgICAgIG1hdGNoZXIuc3RhdGUgPSBzdGF0ZTsKICAgICAgfQogICAgICByZXR1cm4gbWF0Y2hlcjsKICAgIH07CiAgICBwaWNvbWF0Y2gudGVzdCA9IChpbnB1dCwgcmVnZXgsIG9wdGlvbnMsIHsgZ2xvYiwgcG9zaXggfSA9IHt9KSA9PiB7CiAgICAgIGlmICh0eXBlb2YgaW5wdXQgIT09ICJzdHJpbmciKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgaW5wdXQgdG8gYmUgYSBzdHJpbmciKTsKICAgICAgfQogICAgICBpZiAoaW5wdXQgPT09ICIiKSB7CiAgICAgICAgcmV0dXJuIHsgaXNNYXRjaDogZmFsc2UsIG91dHB1dDogIiIgfTsKICAgICAgfQogICAgICBjb25zdCBvcHRzID0gb3B0aW9ucyB8fCB7fTsKICAgICAgY29uc3QgZm9ybWF0ID0gb3B0cy5mb3JtYXQgfHwgKHBvc2l4ID8gdXRpbHMudG9Qb3NpeFNsYXNoZXMgOiBudWxsKTsKICAgICAgbGV0IG1hdGNoID0gaW5wdXQgPT09IGdsb2I7CiAgICAgIGxldCBvdXRwdXQgPSBtYXRjaCAmJiBmb3JtYXQgPyBmb3JtYXQoaW5wdXQpIDogaW5wdXQ7CiAgICAgIGlmIChtYXRjaCA9PT0gZmFsc2UpIHsKICAgICAgICBvdXRwdXQgPSBmb3JtYXQgPyBmb3JtYXQoaW5wdXQpIDogaW5wdXQ7CiAgICAgICAgbWF0Y2ggPSBvdXRwdXQgPT09IGdsb2I7CiAgICAgIH0KICAgICAgaWYgKG1hdGNoID09PSBmYWxzZSB8fCBvcHRzLmNhcHR1cmUgPT09IHRydWUpIHsKICAgICAgICBpZiAob3B0cy5tYXRjaEJhc2UgPT09IHRydWUgfHwgb3B0cy5iYXNlbmFtZSA9PT0gdHJ1ZSkgewogICAgICAgICAgbWF0Y2ggPSBwaWNvbWF0Y2gubWF0Y2hCYXNlKGlucHV0LCByZWdleCwgb3B0aW9ucywgcG9zaXgpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBtYXRjaCA9IHJlZ2V4LmV4ZWMob3V0cHV0KTsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIHsgaXNNYXRjaDogQm9vbGVhbihtYXRjaCksIG1hdGNoLCBvdXRwdXQgfTsKICAgIH07CiAgICBwaWNvbWF0Y2gubWF0Y2hCYXNlID0gKGlucHV0LCBnbG9iLCBvcHRpb25zKSA9PiB7CiAgICAgIGNvbnN0IHJlZ2V4ID0gZ2xvYiBpbnN0YW5jZW9mIFJlZ0V4cCA/IGdsb2IgOiBwaWNvbWF0Y2gubWFrZVJlKGdsb2IsIG9wdGlvbnMpOwogICAgICByZXR1cm4gcmVnZXgudGVzdCh1dGlscy5iYXNlbmFtZShpbnB1dCkpOwogICAgfTsKICAgIHBpY29tYXRjaC5pc01hdGNoID0gKHN0ciwgcGF0dGVybnMsIG9wdGlvbnMpID0+IHBpY29tYXRjaChwYXR0ZXJucywgb3B0aW9ucykoc3RyKTsKICAgIHBpY29tYXRjaC5wYXJzZSA9IChwYXR0ZXJuLCBvcHRpb25zKSA9PiB7CiAgICAgIGlmIChBcnJheS5pc0FycmF5KHBhdHRlcm4pKSByZXR1cm4gcGF0dGVybi5tYXAoKHApID0+IHBpY29tYXRjaC5wYXJzZShwLCBvcHRpb25zKSk7CiAgICAgIHJldHVybiBwYXJzZShwYXR0ZXJuLCB7IC4uLm9wdGlvbnMsIGZhc3RwYXRoczogZmFsc2UgfSk7CiAgICB9OwogICAgcGljb21hdGNoLnNjYW4gPSAoaW5wdXQsIG9wdGlvbnMpID0+IHNjYW4oaW5wdXQsIG9wdGlvbnMpOwogICAgcGljb21hdGNoLmNvbXBpbGVSZSA9IChzdGF0ZSwgb3B0aW9ucywgcmV0dXJuT3V0cHV0ID0gZmFsc2UsIHJldHVyblN0YXRlID0gZmFsc2UpID0+IHsKICAgICAgaWYgKHJldHVybk91dHB1dCA9PT0gdHJ1ZSkgewogICAgICAgIHJldHVybiBzdGF0ZS5vdXRwdXQ7CiAgICAgIH0KICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgIGNvbnN0IHByZXBlbmQgPSBvcHRzLmNvbnRhaW5zID8gIiIgOiAiXiI7CiAgICAgIGNvbnN0IGFwcGVuZCA9IG9wdHMuY29udGFpbnMgPyAiIiA6ICIkIjsKICAgICAgbGV0IHNvdXJjZSA9IGAke3ByZXBlbmR9KD86JHtzdGF0ZS5vdXRwdXR9KSR7YXBwZW5kfWA7CiAgICAgIGlmIChzdGF0ZSAmJiBzdGF0ZS5uZWdhdGVkID09PSB0cnVlKSB7CiAgICAgICAgc291cmNlID0gYF4oPyEke3NvdXJjZX0pLiokYDsKICAgICAgfQogICAgICBjb25zdCByZWdleCA9IHBpY29tYXRjaC50b1JlZ2V4KHNvdXJjZSwgb3B0aW9ucyk7CiAgICAgIGlmIChyZXR1cm5TdGF0ZSA9PT0gdHJ1ZSkgewogICAgICAgIHJlZ2V4LnN0YXRlID0gc3RhdGU7CiAgICAgIH0KICAgICAgcmV0dXJuIHJlZ2V4OwogICAgfTsKICAgIHBpY29tYXRjaC5tYWtlUmUgPSAoaW5wdXQsIG9wdGlvbnMgPSB7fSwgcmV0dXJuT3V0cHV0ID0gZmFsc2UsIHJldHVyblN0YXRlID0gZmFsc2UpID0+IHsKICAgICAgaWYgKCFpbnB1dCB8fCB0eXBlb2YgaW5wdXQgIT09ICJzdHJpbmciKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBub24tZW1wdHkgc3RyaW5nIik7CiAgICAgIH0KICAgICAgbGV0IHBhcnNlZCA9IHsgbmVnYXRlZDogZmFsc2UsIGZhc3RwYXRoczogdHJ1ZSB9OwogICAgICBpZiAob3B0aW9ucy5mYXN0cGF0aHMgIT09IGZhbHNlICYmIChpbnB1dFswXSA9PT0gIi4iIHx8IGlucHV0WzBdID09PSAiKiIpKSB7CiAgICAgICAgcGFyc2VkLm91dHB1dCA9IHBhcnNlLmZhc3RwYXRocyhpbnB1dCwgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgaWYgKCFwYXJzZWQub3V0cHV0KSB7CiAgICAgICAgcGFyc2VkID0gcGFyc2UoaW5wdXQsIG9wdGlvbnMpOwogICAgICB9CiAgICAgIHJldHVybiBwaWNvbWF0Y2guY29tcGlsZVJlKHBhcnNlZCwgb3B0aW9ucywgcmV0dXJuT3V0cHV0LCByZXR1cm5TdGF0ZSk7CiAgICB9OwogICAgcGljb21hdGNoLnRvUmVnZXggPSAoc291cmNlLCBvcHRpb25zKSA9PiB7CiAgICAgIHRyeSB7CiAgICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgICAgcmV0dXJuIG5ldyBSZWdFeHAoc291cmNlLCBvcHRzLmZsYWdzIHx8IChvcHRzLm5vY2FzZSA/ICJpIiA6ICIiKSk7CiAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMuZGVidWcgPT09IHRydWUpIHRocm93IGVycjsKICAgICAgICByZXR1cm4gLyReLzsKICAgICAgfQogICAgfTsKICAgIHBpY29tYXRjaC5jb25zdGFudHMgPSBjb25zdGFudHM7CiAgICBtb2R1bGUyLmV4cG9ydHMgPSBwaWNvbWF0Y2g7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi1jZTYxN2I4ZGEzLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2luZGV4LmpzCnZhciByZXF1aXJlX3BpY29tYXRjaDIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLWNlNjE3YjhkYTMuemlwL25vZGVfbW9kdWxlcy9waWNvbWF0Y2gvaW5kZXguanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgcGljbyA9IHJlcXVpcmVfcGljb21hdGNoKCk7CiAgICB2YXIgdXRpbHMgPSByZXF1aXJlX3V0aWxzNCgpOwogICAgZnVuY3Rpb24gcGljb21hdGNoKGdsb2IsIG9wdGlvbnMsIHJldHVyblN0YXRlID0gZmFsc2UpIHsKICAgICAgaWYgKG9wdGlvbnMgJiYgKG9wdGlvbnMud2luZG93cyA9PT0gbnVsbCB8fCBvcHRpb25zLndpbmRvd3MgPT09IHZvaWQgMCkpIHsKICAgICAgICBvcHRpb25zID0geyAuLi5vcHRpb25zLCB3aW5kb3dzOiB1dGlscy5pc1dpbmRvd3MoKSB9OwogICAgICB9CiAgICAgIHJldHVybiBwaWNvKGdsb2IsIG9wdGlvbnMsIHJldHVyblN0YXRlKTsKICAgIH0KICAgIE9iamVjdC5hc3NpZ24ocGljb21hdGNoLCBwaWNvKTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IHBpY29tYXRjaDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3BhdHRlcm4uanMKdmFyIHJlcXVpcmVfcGF0dGVybjIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3BhdHRlcm4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlBhdHRlcm5NYXRjaGluZ0hvc3QgPSB2b2lkIDA7CiAgICB2YXIgcGljb21hdGNoXzEgPSByZXF1aXJlX3BpY29tYXRjaDIoKTsKICAgIHZhciByZXNvbHZlcl8xID0gcmVxdWlyZV9yZXNvbHZlcigpOwogICAgdmFyIFBhdHRlcm5NYXRjaGluZ0hvc3QgPSBjbGFzcyBleHRlbmRzIHJlc29sdmVyXzEuUmVzb2x2ZXJIb3N0IHsKICAgICAgX3BhdHRlcm5zID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgYWRkUGF0dGVybihwYXR0ZXJuLCByZXBsYWNlbWVudEZuKSB7CiAgICAgICAgY29uc3QgcGF0dGVybnMgPSBBcnJheS5pc0FycmF5KHBhdHRlcm4pID8gcGF0dGVybiA6IFtwYXR0ZXJuXTsKICAgICAgICBmb3IgKGNvbnN0IGdsb2Igb2YgcGF0dGVybnMpIHsKICAgICAgICAgIGNvbnN0IHsgb3V0cHV0IH0gPSAoMCwgcGljb21hdGNoXzEucGFyc2UpKGdsb2IpOwogICAgICAgICAgdGhpcy5fcGF0dGVybnMuc2V0KG5ldyBSZWdFeHAoYF4ke291dHB1dH0kYCksIHJlcGxhY2VtZW50Rm4pOwogICAgICAgIH0KICAgICAgfQogICAgICBfcmVzb2x2ZShwYXRoKSB7CiAgICAgICAgbGV0IG5ld1BhdGggPSBwYXRoOwogICAgICAgIHRoaXMuX3BhdHRlcm5zLmZvckVhY2goKGZuLCByZSkgPT4gewogICAgICAgICAgaWYgKHJlLnRlc3QocGF0aCkpIHsKICAgICAgICAgICAgbmV3UGF0aCA9IGZuKG5ld1BhdGgpOwogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICAgIHJldHVybiBuZXdQYXRoOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuUGF0dGVybk1hdGNoaW5nSG9zdCA9IFBhdHRlcm5NYXRjaGluZ0hvc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9yZWNvcmQuanMKdmFyIHJlcXVpcmVfcmVjb3JkID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9yZWNvcmQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkNvcmRIb3N0ID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbigpOwogICAgdmFyIG1lbW9yeV8xID0gcmVxdWlyZV9tZW1vcnkoKTsKICAgIHZhciBDb3JkSG9zdCA9IGNsYXNzIF9Db3JkSG9zdCBleHRlbmRzIG1lbW9yeV8xLlNpbXBsZU1lbW9yeUhvc3QgewogICAgICBfYmFjazsKICAgICAgX2ZpbGVzVG9DcmVhdGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZmlsZXNUb1JlbmFtZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF9maWxlc1RvUmVuYW1lUmV2ZXJ0ID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgX2ZpbGVzVG9EZWxldGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZmlsZXNUb092ZXJ3cml0ZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIGNvbnN0cnVjdG9yKF9iYWNrKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLl9iYWNrID0gX2JhY2s7CiAgICAgIH0KICAgICAgZ2V0IGJhY2tlbmQoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2JhY2s7CiAgICAgIH0KICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4gewogICAgICAgICAgc3luY2hyb25vdXM6IHRoaXMuX2JhY2suY2FwYWJpbGl0aWVzLnN5bmNocm9ub3VzCiAgICAgICAgfTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ3JlYXRlIGEgY29weSBvZiB0aGlzIGhvc3QsIGluY2x1ZGluZyBhbGwgYWN0aW9ucyBtYWRlLgogICAgICAgKiBAcmV0dXJucyB7Q29yZEhvc3R9IFRoZSBjYXJib24gY29weS4KICAgICAgICovCiAgICAgIGNsb25lKCkgewogICAgICAgIGNvbnN0IGRvbGx5ID0gbmV3IF9Db3JkSG9zdCh0aGlzLl9iYWNrKTsKICAgICAgICBkb2xseS5fY2FjaGUgPSBuZXcgTWFwKHRoaXMuX2NhY2hlKTsKICAgICAgICBkb2xseS5fZmlsZXNUb0NyZWF0ZSA9IG5ldyBTZXQodGhpcy5fZmlsZXNUb0NyZWF0ZSk7CiAgICAgICAgZG9sbHkuX2ZpbGVzVG9SZW5hbWUgPSBuZXcgTWFwKHRoaXMuX2ZpbGVzVG9SZW5hbWUpOwogICAgICAgIGRvbGx5Ll9maWxlc1RvUmVuYW1lUmV2ZXJ0ID0gbmV3IE1hcCh0aGlzLl9maWxlc1RvUmVuYW1lUmV2ZXJ0KTsKICAgICAgICBkb2xseS5fZmlsZXNUb0RlbGV0ZSA9IG5ldyBTZXQodGhpcy5fZmlsZXNUb0RlbGV0ZSk7CiAgICAgICAgZG9sbHkuX2ZpbGVzVG9PdmVyd3JpdGUgPSBuZXcgU2V0KHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUpOwogICAgICAgIHJldHVybiBkb2xseTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ29tbWl0IHRoZSBjaGFuZ2VzIHJlY29yZGVkIHRvIGEgSG9zdC4gSXQgaXMgYXNzdW1lZCB0aGF0IHRoZSBob3N0IGRvZXMgaGF2ZSB0aGUgc2FtZSBzdHJ1Y3R1cmUKICAgICAgICogYXMgdGhlIGhvc3QgdGhhdCB3YXMgdXNlZCBmb3IgYmFja2VuZCAoY291bGQgYmUgdGhlIHNhbWUgaG9zdCkuCiAgICAgICAqIEBwYXJhbSBob3N0IFRoZSBob3N0IHRvIGNyZWF0ZS9kZWxldGUvcmVuYW1lL292ZXJ3cml0ZSBmaWxlcyB0by4KICAgICAgICogQHBhcmFtIGZvcmNlIFdoZXRoZXIgdG8gc2tpcCBleGlzdGVuY2UgY2hlY2tzIHdoZW4gY3JlYXRpbmcvb3ZlcndyaXRpbmcuIFRoaXMgaXMKICAgICAgICogICBmYXN0ZXIgYnV0IG1pZ2h0IGxlYWQgdG8gaW5jb3JyZWN0IHN0YXRlcy4gQmVjYXVzZSBIb3N0cyBuYXRpdmVseSBkb24ndCBzdXBwb3J0IGNyZWF0aW9uCiAgICAgICAqICAgdmVyc3VzIG92ZXJ3cml0aW5nIChpdCdzIG9ubHkgd3JpdGluZyksIHdlIGNoZWNrIGZvciBleGlzdGVuY2UgYmVmb3JlIGNvbXBsZXRpbmcgYSByZXF1ZXN0LgogICAgICAgKiBAcmV0dXJucyBBbiBvYnNlcnZhYmxlIHRoYXQgY29tcGxldGVzIHdoZW4gZG9uZSwgb3IgZXJyb3IgaWYgYW4gZXJyb3Igb2NjdXJlZC4KICAgICAgICovCiAgICAgIGNvbW1pdChob3N0LCBmb3JjZSA9IGZhbHNlKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuZnJvbSkodGhpcy5yZWNvcmRzKCkpLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChyZWNvcmQpID0+IHsKICAgICAgICAgIHN3aXRjaCAocmVjb3JkLmtpbmQpIHsKICAgICAgICAgICAgY2FzZSAiZGVsZXRlIjoKICAgICAgICAgICAgICByZXR1cm4gaG9zdC5kZWxldGUocmVjb3JkLnBhdGgpOwogICAgICAgICAgICBjYXNlICJyZW5hbWUiOgogICAgICAgICAgICAgIHJldHVybiBob3N0LnJlbmFtZShyZWNvcmQuZnJvbSwgcmVjb3JkLnRvKTsKICAgICAgICAgICAgY2FzZSAiY3JlYXRlIjoKICAgICAgICAgICAgICByZXR1cm4gaG9zdC5leGlzdHMocmVjb3JkLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5zd2l0Y2hNYXApKChleGlzdHMpID0+IHsKICAgICAgICAgICAgICAgIGlmIChleGlzdHMgJiYgIWZvcmNlKSB7CiAgICAgICAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHJlY29yZC5wYXRoKSk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICByZXR1cm4gaG9zdC53cml0ZShyZWNvcmQucGF0aCwgcmVjb3JkLmNvbnRlbnQpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0pKTsKICAgICAgICAgICAgY2FzZSAib3ZlcndyaXRlIjoKICAgICAgICAgICAgICByZXR1cm4gaG9zdC5leGlzdHMocmVjb3JkLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5zd2l0Y2hNYXApKChleGlzdHMpID0+IHsKICAgICAgICAgICAgICAgIGlmICghZXhpc3RzICYmICFmb3JjZSkgewogICAgICAgICAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS50aHJvd0Vycm9yKShuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihyZWNvcmQucGF0aCkpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgcmV0dXJuIGhvc3Qud3JpdGUocmVjb3JkLnBhdGgsIHJlY29yZC5jb250ZW50KTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9KSk7CiAgICAgICAgICB9CiAgICAgICAgfSksICgwLCByeGpzXzEucmVkdWNlKSgoKSA9PiB7CiAgICAgICAgfSkpOwogICAgICB9CiAgICAgIHJlY29yZHMoKSB7CiAgICAgICAgcmV0dXJuIFsKICAgICAgICAgIC4uLlsuLi50aGlzLl9maWxlc1RvRGVsZXRlLnZhbHVlcygpXS5tYXAoKHBhdGgpID0+ICh7CiAgICAgICAgICAgIGtpbmQ6ICJkZWxldGUiLAogICAgICAgICAgICBwYXRoCiAgICAgICAgICB9KSksCiAgICAgICAgICAuLi5bLi4udGhpcy5fZmlsZXNUb1JlbmFtZS5lbnRyaWVzKCldLm1hcCgoW2Zyb20sIHRvXSkgPT4gKHsKICAgICAgICAgICAga2luZDogInJlbmFtZSIsCiAgICAgICAgICAgIGZyb20sCiAgICAgICAgICAgIHRvCiAgICAgICAgICB9KSksCiAgICAgICAgICAuLi5bLi4udGhpcy5fZmlsZXNUb0NyZWF0ZS52YWx1ZXMoKV0ubWFwKChwYXRoKSA9PiAoewogICAgICAgICAgICBraW5kOiAiY3JlYXRlIiwKICAgICAgICAgICAgcGF0aCwKICAgICAgICAgICAgY29udGVudDogdGhpcy5fcmVhZChwYXRoKQogICAgICAgICAgfSkpLAogICAgICAgICAgLi4uWy4uLnRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUudmFsdWVzKCldLm1hcCgocGF0aCkgPT4gKHsKICAgICAgICAgICAga2luZDogIm92ZXJ3cml0ZSIsCiAgICAgICAgICAgIHBhdGgsCiAgICAgICAgICAgIGNvbnRlbnQ6IHRoaXMuX3JlYWQocGF0aCkKICAgICAgICAgIH0pKQogICAgICAgIF07CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFNwZWNpYWxpemVkIHZlcnNpb24gb2Yge0BsaW5rIENvcmRIb3N0I3dyaXRlfSB3aGljaCBmb3JjZXMgdGhlIGNyZWF0aW9uIG9mIGEgZmlsZSB3aGV0aGVyIGl0CiAgICAgICAqIGV4aXN0cyBvciBub3QuCiAgICAgICAqIEBwYXJhbSB7fSBwYXRoCiAgICAgICAqIEBwYXJhbSB7RmlsZUJ1ZmZlcn0gY29udGVudAogICAgICAgKiBAcmV0dXJucyB7T2JzZXJ2YWJsZTx2b2lkPn0KICAgICAgICovCiAgICAgIGNyZWF0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgaWYgKHN1cGVyLl9leGlzdHMocGF0aCkpIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0RlbGV0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9EZWxldGUuZGVsZXRlKHBhdGgpOwogICAgICAgICAgdGhpcy5fZmlsZXNUb092ZXJ3cml0ZS5hZGQocGF0aCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9DcmVhdGUuYWRkKHBhdGgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc3VwZXIud3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgIH0KICAgICAgb3ZlcndyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5pc0RpcmVjdG9yeShwYXRoKS5waXBlKCgwLCByeGpzXzEuc3dpdGNoTWFwKSgoaXNEaXIpID0+IHsKICAgICAgICAgIGlmIChpc0RpcikgewogICAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS50aHJvd0Vycm9yKShuZXcgZXhjZXB0aW9uXzEuUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uKHBhdGgpKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0aGlzLmV4aXN0cyhwYXRoKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS5zd2l0Y2hNYXApKChleGlzdHMpID0+IHsKICAgICAgICAgIGlmICghZXhpc3RzKSB7CiAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICghdGhpcy5fZmlsZXNUb0NyZWF0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb092ZXJ3cml0ZS5hZGQocGF0aCk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gc3VwZXIud3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgfSkpOwogICAgICB9CiAgICAgIHdyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5leGlzdHMocGF0aCkucGlwZSgoMCwgcnhqc18xLnN3aXRjaE1hcCkoKGV4aXN0cykgPT4gewogICAgICAgICAgaWYgKGV4aXN0cykgewogICAgICAgICAgICBpZiAodGhpcy53aWxsUmVuYW1lKHBhdGgpIHx8IHRoaXMud2lsbERlbGV0ZShwYXRoKSkgewogICAgICAgICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZShwYXRoLCBjb250ZW50KTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICByZXR1cm4gdGhpcy5vdmVyd3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZShwYXRoLCBjb250ZW50KTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH0KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgaWYgKHRoaXMuX2V4aXN0cyhwYXRoKSkgewogICAgICAgICAgcmV0dXJuIHN1cGVyLnJlYWQocGF0aCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9iYWNrLnJlYWQocGF0aCk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICBpZiAodGhpcy5fZXhpc3RzKHBhdGgpKSB7CiAgICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0NyZWF0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0NyZWF0ZS5kZWxldGUocGF0aCk7CiAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUuaGFzKHBhdGgpKSB7CiAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUuZGVsZXRlKHBhdGgpOwogICAgICAgICAgICB0aGlzLl9maWxlc1RvRGVsZXRlLmFkZChwYXRoKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IG1heWJlT3JpZ2luID0gdGhpcy5fZmlsZXNUb1JlbmFtZVJldmVydC5nZXQocGF0aCk7CiAgICAgICAgICAgIGlmIChtYXliZU9yaWdpbikgewogICAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9SZW5hbWVSZXZlcnQuZGVsZXRlKHBhdGgpOwogICAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9SZW5hbWUuZGVsZXRlKG1heWJlT3JpZ2luKTsKICAgICAgICAgICAgICB0aGlzLl9maWxlc1RvRGVsZXRlLmFkZChtYXliZU9yaWdpbik7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEudGhyb3dFcnJvcikobmV3IGV4Y2VwdGlvbl8xLlVua25vd25FeGNlcHRpb24oYFRoaXMgc2hvdWxkIG5ldmVyIGhhcHBlbi4gUGF0aDogJHtKU09OLnN0cmluZ2lmeShwYXRoKX0uYCkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gc3VwZXIuZGVsZXRlKHBhdGgpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fYmFjay5leGlzdHMocGF0aCkucGlwZSgoMCwgcnhqc18xLnN3aXRjaE1hcCkoKGV4aXN0cykgPT4gewogICAgICAgICAgICBpZiAoZXhpc3RzKSB7CiAgICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0RlbGV0ZS5hZGQocGF0aCk7CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKCk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEudGhyb3dFcnJvcikobmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkodGhpcy5leGlzdHModG8pLCB0aGlzLmV4aXN0cyhmcm9tKSkucGlwZSgoMCwgcnhqc18xLnRvQXJyYXkpKCksICgwLCByeGpzXzEuc3dpdGNoTWFwKSgoW2V4aXN0VG8sIGV4aXN0RnJvbV0pID0+IHsKICAgICAgICAgIGlmICghZXhpc3RGcm9tKSB7CiAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKGZyb20pKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChmcm9tID09PSB0bykgewogICAgICAgICAgICByZXR1cm4gcnhqc18xLkVNUFRZOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGV4aXN0VG8pIHsKICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEudGhyb3dFcnJvcikobmV3IGV4Y2VwdGlvbl8xLkZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24odG8pKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlc1RvQ3JlYXRlLmhhcyhmcm9tKSkgewogICAgICAgICAgICB0aGlzLl9maWxlc1RvQ3JlYXRlLmRlbGV0ZShmcm9tKTsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0NyZWF0ZS5hZGQodG8pOwogICAgICAgICAgICByZXR1cm4gc3VwZXIucmVuYW1lKGZyb20sIHRvKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlc1RvT3ZlcndyaXRlLmhhcyhmcm9tKSkgewogICAgICAgICAgICB0aGlzLl9maWxlc1RvT3ZlcndyaXRlLmRlbGV0ZShmcm9tKTsKICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSh0aGlzLnJlbmFtZShmcm9tLCB0byksIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgoeCkgPT4gewogICAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUuYWRkKHRvKTsKICAgICAgICAgICAgICB4LmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0pKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlc1RvRGVsZXRlLmhhcyh0bykpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0RlbGV0ZS5kZWxldGUodG8pOwogICAgICAgICAgICB0aGlzLl9maWxlc1RvRGVsZXRlLmFkZChmcm9tKTsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb092ZXJ3cml0ZS5hZGQodG8pOwogICAgICAgICAgICByZXR1cm4gdGhpcy5yZWFkKGZyb20pLnBpcGUoKDAsIHJ4anNfMS5tYXApKChjb250ZW50KSA9PiB0aGlzLl93cml0ZSh0bywgY29udGVudCkpKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IG1heWJlVG8xID0gdGhpcy5fZmlsZXNUb1JlbmFtZVJldmVydC5nZXQoZnJvbSk7CiAgICAgICAgICBpZiAobWF5YmVUbzEpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb1JlbmFtZS5kZWxldGUobWF5YmVUbzEpOwogICAgICAgICAgICB0aGlzLl9maWxlc1RvUmVuYW1lUmV2ZXJ0LmRlbGV0ZShmcm9tKTsKICAgICAgICAgICAgZnJvbSA9IG1heWJlVG8xOwogICAgICAgICAgfQogICAgICAgICAgdGhpcy5fZmlsZXNUb1JlbmFtZS5zZXQoZnJvbSwgdG8pOwogICAgICAgICAgdGhpcy5fZmlsZXNUb1JlbmFtZVJldmVydC5zZXQodG8sIGZyb20pOwogICAgICAgICAgaWYgKHRoaXMuX2V4aXN0cyhmcm9tKSkgewogICAgICAgICAgICByZXR1cm4gc3VwZXIucmVuYW1lKGZyb20sIHRvKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLl9iYWNrLnJlYWQoZnJvbSkucGlwZSgoMCwgcnhqc18xLnN3aXRjaE1hcCkoKGNvbnRlbnQpID0+IHN1cGVyLndyaXRlKHRvLCBjb250ZW50KSkpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfQogICAgICBsaXN0KHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5jb25jYXQpKHN1cGVyLmxpc3QocGF0aCksIHRoaXMuX2JhY2subGlzdChwYXRoKSkucGlwZSgoMCwgcnhqc18xLnJlZHVjZSkoKGxpc3QsIGN1cnIpID0+IHsKICAgICAgICAgIGN1cnIuZm9yRWFjaCgoZWxlbSkgPT4gbGlzdC5hZGQoZWxlbSkpOwogICAgICAgICAgcmV0dXJuIGxpc3Q7CiAgICAgICAgfSwgLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKSksICgwLCByeGpzXzEubWFwKSgoc2V0KSA9PiBbLi4uc2V0XSkpOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2V4aXN0cyhwYXRoKSA/ICgwLCByeGpzXzEub2YpKHRydWUpIDogdGhpcy53aWxsRGVsZXRlKHBhdGgpIHx8IHRoaXMud2lsbFJlbmFtZShwYXRoKSA/ICgwLCByeGpzXzEub2YpKGZhbHNlKSA6IHRoaXMuX2JhY2suZXhpc3RzKHBhdGgpOwogICAgICB9CiAgICAgIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZXhpc3RzKHBhdGgpID8gc3VwZXIuaXNEaXJlY3RvcnkocGF0aCkgOiB0aGlzLl9iYWNrLmlzRGlyZWN0b3J5KHBhdGgpOwogICAgICB9CiAgICAgIGlzRmlsZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2V4aXN0cyhwYXRoKSA/IHN1cGVyLmlzRmlsZShwYXRoKSA6IHRoaXMud2lsbERlbGV0ZShwYXRoKSB8fCB0aGlzLndpbGxSZW5hbWUocGF0aCkgPyAoMCwgcnhqc18xLm9mKShmYWxzZSkgOiB0aGlzLl9iYWNrLmlzRmlsZShwYXRoKTsKICAgICAgfQogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZXhpc3RzKHBhdGgpID8gc3VwZXIuc3RhdChwYXRoKSA6IHRoaXMud2lsbERlbGV0ZShwYXRoKSB8fCB0aGlzLndpbGxSZW5hbWUocGF0aCkgPyAoMCwgcnhqc18xLm9mKShudWxsKSA6IHRoaXMuX2JhY2suc3RhdChwYXRoKTsKICAgICAgfQogICAgICB3YXRjaChwYXRoLCBvcHRpb25zKSB7CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgIH0KICAgICAgd2lsbENyZWF0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbGVzVG9DcmVhdGUuaGFzKHBhdGgpOwogICAgICB9CiAgICAgIHdpbGxPdmVyd3JpdGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9maWxlc1RvT3ZlcndyaXRlLmhhcyhwYXRoKTsKICAgICAgfQogICAgICB3aWxsRGVsZXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZmlsZXNUb0RlbGV0ZS5oYXMocGF0aCk7CiAgICAgIH0KICAgICAgd2lsbFJlbmFtZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbGVzVG9SZW5hbWUuaGFzKHBhdGgpOwogICAgICB9CiAgICAgIHdpbGxSZW5hbWVUbyhwYXRoLCB0bykgewogICAgICAgIHJldHVybiB0aGlzLl9maWxlc1RvUmVuYW1lLmdldChwYXRoKSA9PT0gdG87CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Db3JkSG9zdCA9IENvcmRIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3Qvc2FmZS5qcwp2YXIgcmVxdWlyZV9zYWZlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9zYWZlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TYWZlUmVhZG9ubHlIb3N0ID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgU2FmZVJlYWRvbmx5SG9zdCA9IGNsYXNzIHsKICAgICAgX2RlbGVnYXRlOwogICAgICBjb25zdHJ1Y3RvcihfZGVsZWdhdGUpIHsKICAgICAgICB0aGlzLl9kZWxlZ2F0ZSA9IF9kZWxlZ2F0ZTsKICAgICAgfQogICAgICBnZXQgY2FwYWJpbGl0aWVzKCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5jYXBhYmlsaXRpZXM7CiAgICAgIH0KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLnJlYWQocGF0aCk7CiAgICAgIH0KICAgICAgbGlzdChwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLmxpc3QocGF0aCkucGlwZSgoMCwgcnhqc18xLmNhdGNoRXJyb3IpKCgpID0+ICgwLCByeGpzXzEub2YpKFtdKSkpOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLmV4aXN0cyhwYXRoKTsKICAgICAgfQogICAgICBpc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLmlzRGlyZWN0b3J5KHBhdGgpLnBpcGUoKDAsIHJ4anNfMS5jYXRjaEVycm9yKSgoKSA9PiAoMCwgcnhqc18xLm9mKShmYWxzZSkpKTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5pc0ZpbGUocGF0aCkucGlwZSgoMCwgcnhqc18xLmNhdGNoRXJyb3IpKCgpID0+ICgwLCByeGpzXzEub2YpKGZhbHNlKSkpOwogICAgICB9CiAgICAgIC8vIFNvbWUgaG9zdHMgbWF5IG5vdCBzdXBwb3J0IHN0YXRzLgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICBjb25zdCBtYXliZVN0YXQgPSB0aGlzLl9kZWxlZ2F0ZS5zdGF0KHBhdGgpOwogICAgICAgIHJldHVybiBtYXliZVN0YXQgJiYgbWF5YmVTdGF0LnBpcGUoKDAsIHJ4anNfMS5jYXRjaEVycm9yKSgoKSA9PiAoMCwgcnhqc18xLm9mKShudWxsKSkpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuU2FmZVJlYWRvbmx5SG9zdCA9IFNhZmVSZWFkb25seUhvc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9zY29wZWQuanMKdmFyIHJlcXVpcmVfc2NvcGVkID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9zY29wZWQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlNjb3BlZEhvc3QgPSB2b2lkIDA7CiAgICB2YXIgcGF0aF8xID0gcmVxdWlyZV9wYXRoKCk7CiAgICB2YXIgcmVzb2x2ZXJfMSA9IHJlcXVpcmVfcmVzb2x2ZXIoKTsKICAgIHZhciBTY29wZWRIb3N0ID0gY2xhc3MgZXh0ZW5kcyByZXNvbHZlcl8xLlJlc29sdmVySG9zdCB7CiAgICAgIF9yb290OwogICAgICBjb25zdHJ1Y3RvcihkZWxlZ2F0ZSwgX3Jvb3QgPSBwYXRoXzEuTm9ybWFsaXplZFJvb3QpIHsKICAgICAgICBzdXBlcihkZWxlZ2F0ZSk7CiAgICAgICAgdGhpcy5fcm9vdCA9IF9yb290OwogICAgICB9CiAgICAgIF9yZXNvbHZlKHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHBhdGhfMS5qb2luKSh0aGlzLl9yb290LCBwYXRoKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNjb3BlZEhvc3QgPSBTY29wZWRIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvaW5kZXguanMKdmFyIHJlcXVpcmVfaG9zdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19zZXRNb2R1bGVEZWZhdWx0ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zZXRNb2R1bGVEZWZhdWx0IHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgdikgewogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgImRlZmF1bHQiLCB7IGVudW1lcmFibGU6IHRydWUsIHZhbHVlOiB2IH0pOwogICAgfSA6IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgb1siZGVmYXVsdCJdID0gdjsKICAgIH0pOwogICAgdmFyIF9faW1wb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9faW1wb3J0U3RhciB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBvd25LZXlzID0gZnVuY3Rpb24obykgewogICAgICAgIG93bktleXMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyB8fCBmdW5jdGlvbihvMikgewogICAgICAgICAgdmFyIGFyID0gW107CiAgICAgICAgICBmb3IgKHZhciBrIGluIG8yKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG8yLCBrKSkgYXJbYXIubGVuZ3RoXSA9IGs7CiAgICAgICAgICByZXR1cm4gYXI7CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gb3duS2V5cyhvKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKG1vZCkgewogICAgICAgIGlmIChtb2QgJiYgbW9kLl9fZXNNb2R1bGUpIHJldHVybiBtb2Q7CiAgICAgICAgdmFyIHJlc3VsdCA9IHt9OwogICAgICAgIGlmIChtb2QgIT0gbnVsbCkgewogICAgICAgICAgZm9yICh2YXIgayA9IG93bktleXMobW9kKSwgaSA9IDA7IGkgPCBrLmxlbmd0aDsgaSsrKSBpZiAoa1tpXSAhPT0gImRlZmF1bHQiKSBfX2NyZWF0ZUJpbmRpbmcocmVzdWx0LCBtb2QsIGtbaV0pOwogICAgICAgIH0KICAgICAgICBfX3NldE1vZHVsZURlZmF1bHQocmVzdWx0LCBtb2QpOwogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH07CiAgICB9KCk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRlc3QgPSB2b2lkIDA7CiAgICB2YXIgdGVzdCA9IF9faW1wb3J0U3RhcihyZXF1aXJlX3Rlc3QoKSk7CiAgICBleHBvcnRzMi50ZXN0ID0gdGVzdDsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2FsaWFzKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2J1ZmZlcjIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfY3JlYXRlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2VtcHR5MigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9pbnRlcmZhY2UyKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX21lbW9yeSgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9wYXR0ZXJuMigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9yZWNvcmQoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfc2FmZSgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9zY29wZWQoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfc3luYygpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9yZXNvbHZlcigpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaW5kZXguanMKdmFyIHJlcXVpcmVfdmlydHVhbF9mcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fY3JlYXRlQmluZGluZyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fY3JlYXRlQmluZGluZyB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihtLCBrKTsKICAgICAgaWYgKCFkZXNjIHx8ICgiZ2V0IiBpbiBkZXNjID8gIW0uX19lc01vZHVsZSA6IGRlc2Mud3JpdGFibGUgfHwgZGVzYy5jb25maWd1cmFibGUpKSB7CiAgICAgICAgZGVzYyA9IHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBtW2tdOwogICAgICAgIH0gfTsKICAgICAgfQogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgazIsIGRlc2MpOwogICAgfSA6IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIG9bazJdID0gbVtrXTsKICAgIH0pOwogICAgdmFyIF9fc2V0TW9kdWxlRGVmYXVsdCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc2V0TW9kdWxlRGVmYXVsdCB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJkZWZhdWx0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCB2YWx1ZTogdiB9KTsKICAgIH0gOiBmdW5jdGlvbihvLCB2KSB7CiAgICAgIG9bImRlZmF1bHQiXSA9IHY7CiAgICB9KTsKICAgIHZhciBfX2ltcG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydFN0YXIgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgb3duS2V5cyA9IGZ1bmN0aW9uKG8pIHsKICAgICAgICBvd25LZXlzID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMgfHwgZnVuY3Rpb24obzIpIHsKICAgICAgICAgIHZhciBhciA9IFtdOwogICAgICAgICAgZm9yICh2YXIgayBpbiBvMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvMiwgaykpIGFyW2FyLmxlbmd0aF0gPSBrOwogICAgICAgICAgcmV0dXJuIGFyOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIG93bktleXMobyk7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihtb2QpIHsKICAgICAgICBpZiAobW9kICYmIG1vZC5fX2VzTW9kdWxlKSByZXR1cm4gbW9kOwogICAgICAgIHZhciByZXN1bHQgPSB7fTsKICAgICAgICBpZiAobW9kICE9IG51bGwpIHsKICAgICAgICAgIGZvciAodmFyIGsgPSBvd25LZXlzKG1vZCksIGkgPSAwOyBpIDwgay5sZW5ndGg7IGkrKykgaWYgKGtbaV0gIT09ICJkZWZhdWx0IikgX19jcmVhdGVCaW5kaW5nKHJlc3VsdCwgbW9kLCBrW2ldKTsKICAgICAgICB9CiAgICAgICAgX19zZXRNb2R1bGVEZWZhdWx0KHJlc3VsdCwgbW9kKTsKICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9OwogICAgfSgpOwogICAgdmFyIF9fZXhwb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXhwb3J0U3RhciB8fCBmdW5jdGlvbihtLCBleHBvcnRzMykgewogICAgICBmb3IgKHZhciBwIGluIG0pIGlmIChwICE9PSAiZGVmYXVsdCIgJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChleHBvcnRzMywgcCkpIF9fY3JlYXRlQmluZGluZyhleHBvcnRzMywgbSwgcCk7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi52aXJ0dWFsRnMgPSB2b2lkIDA7CiAgICB2YXIgdmlydHVhbEZzID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfaG9zdCgpKTsKICAgIGV4cG9ydHMyLnZpcnR1YWxGcyA9IHZpcnR1YWxGczsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3BhdGgoKSwgZXhwb3J0czIpOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvaG9zdC5qcwp2YXIgcmVxdWlyZV9ob3N0MiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvaG9zdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY3JlYXRlV29ya3NwYWNlSG9zdCA9IGNyZWF0ZVdvcmtzcGFjZUhvc3Q7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciB2aXJ0dWFsX2ZzXzEgPSByZXF1aXJlX3ZpcnR1YWxfZnMoKTsKICAgIGZ1bmN0aW9uIGNyZWF0ZVdvcmtzcGFjZUhvc3QoaG9zdCkgewogICAgICBjb25zdCB3b3Jrc3BhY2VIb3N0ID0gewogICAgICAgIGFzeW5jIHJlYWRGaWxlKHBhdGgpIHsKICAgICAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKGhvc3QucmVhZCgoMCwgdmlydHVhbF9mc18xLm5vcm1hbGl6ZSkocGF0aCkpKTsKICAgICAgICAgIHJldHVybiB2aXJ0dWFsX2ZzXzEudmlydHVhbEZzLmZpbGVCdWZmZXJUb1N0cmluZyhkYXRhKTsKICAgICAgICB9LAogICAgICAgIGFzeW5jIHdyaXRlRmlsZShwYXRoLCBkYXRhKSB7CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5sYXN0VmFsdWVGcm9tKShob3N0LndyaXRlKCgwLCB2aXJ0dWFsX2ZzXzEubm9ybWFsaXplKShwYXRoKSwgdmlydHVhbF9mc18xLnZpcnR1YWxGcy5zdHJpbmdUb0ZpbGVCdWZmZXIoZGF0YSkpKTsKICAgICAgICB9LAogICAgICAgIGFzeW5jIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKGhvc3QuaXNEaXJlY3RvcnkoKDAsIHZpcnR1YWxfZnNfMS5ub3JtYWxpemUpKHBhdGgpKSk7CiAgICAgICAgICB9IGNhdGNoIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgYXN5bmMgaXNGaWxlKHBhdGgpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKGhvc3QuaXNGaWxlKCgwLCB2aXJ0dWFsX2ZzXzEubm9ybWFsaXplKShwYXRoKSkpOwogICAgICAgICAgfSBjYXRjaCB7CiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiB3b3Jrc3BhY2VIb3N0OwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi00NWQxYWU2MjM2LnppcC9ub2RlX21vZHVsZXMvanNvbmMtcGFyc2VyL2xpYi91bWQvaW1wbC9zY2FubmVyLmpzCnZhciByZXF1aXJlX3NjYW5uZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvanNvbmMtcGFyc2VyLXBhdGNoLWQyMGY2NzE4MzYtNDVkMWFlNjIzNi56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvc2Nhbm5lci5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgIChmdW5jdGlvbihmYWN0b3J5KSB7CiAgICAgIGlmICh0eXBlb2YgbW9kdWxlMiA9PT0gIm9iamVjdCIgJiYgdHlwZW9mIG1vZHVsZTIuZXhwb3J0cyA9PT0gIm9iamVjdCIpIHsKICAgICAgICB2YXIgdiA9IGZhY3RvcnkocmVxdWlyZSwgZXhwb3J0czIpOwogICAgICAgIGlmICh2ICE9PSB2b2lkIDApIG1vZHVsZTIuZXhwb3J0cyA9IHY7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGRlZmluZSA9PT0gImZ1bmN0aW9uIiAmJiBkZWZpbmUuYW1kKSB7CiAgICAgICAgZGVmaW5lKFsicmVxdWlyZSIsICJleHBvcnRzIl0sIGZhY3RvcnkpOwogICAgICB9CiAgICB9KShmdW5jdGlvbihyZXF1aXJlMiwgZXhwb3J0czMpIHsKICAgICAgInVzZSBzdHJpY3QiOwogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czMsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgICAgZXhwb3J0czMuY3JlYXRlU2Nhbm5lciA9IHZvaWQgMDsKICAgICAgZnVuY3Rpb24gY3JlYXRlU2Nhbm5lcih0ZXh0LCBpZ25vcmVUcml2aWEgPSBmYWxzZSkgewogICAgICAgIGNvbnN0IGxlbiA9IHRleHQubGVuZ3RoOwogICAgICAgIGxldCBwb3MgPSAwLCB2YWx1ZSA9ICIiLCB0b2tlbk9mZnNldCA9IDAsIHRva2VuID0gMTYsIGxpbmVOdW1iZXIgPSAwLCBsaW5lU3RhcnRPZmZzZXQgPSAwLCB0b2tlbkxpbmVTdGFydE9mZnNldCA9IDAsIHByZXZUb2tlbkxpbmVTdGFydE9mZnNldCA9IDAsIHNjYW5FcnJvciA9IDA7CiAgICAgICAgZnVuY3Rpb24gc2NhbkhleERpZ2l0cyhjb3VudCwgZXhhY3QpIHsKICAgICAgICAgIGxldCBkaWdpdHMgPSAwOwogICAgICAgICAgbGV0IHZhbHVlMiA9IDA7CiAgICAgICAgICB3aGlsZSAoZGlnaXRzIDwgY291bnQgfHwgIWV4YWN0KSB7CiAgICAgICAgICAgIGxldCBjaCA9IHRleHQuY2hhckNvZGVBdChwb3MpOwogICAgICAgICAgICBpZiAoY2ggPj0gNDggJiYgY2ggPD0gNTcpIHsKICAgICAgICAgICAgICB2YWx1ZTIgPSB2YWx1ZTIgKiAxNiArIGNoIC0gNDg7CiAgICAgICAgICAgIH0gZWxzZSBpZiAoY2ggPj0gNjUgJiYgY2ggPD0gNzApIHsKICAgICAgICAgICAgICB2YWx1ZTIgPSB2YWx1ZTIgKiAxNiArIGNoIC0gNjUgKyAxMDsKICAgICAgICAgICAgfSBlbHNlIGlmIChjaCA+PSA5NyAmJiBjaCA8PSAxMDIpIHsKICAgICAgICAgICAgICB2YWx1ZTIgPSB2YWx1ZTIgKiAxNiArIGNoIC0gOTcgKyAxMDsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgZGlnaXRzKys7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZGlnaXRzIDwgY291bnQpIHsKICAgICAgICAgICAgdmFsdWUyID0gLTE7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gdmFsdWUyOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBzZXRQb3NpdGlvbihuZXdQb3NpdGlvbikgewogICAgICAgICAgcG9zID0gbmV3UG9zaXRpb247CiAgICAgICAgICB2YWx1ZSA9ICIiOwogICAgICAgICAgdG9rZW5PZmZzZXQgPSAwOwogICAgICAgICAgdG9rZW4gPSAxNjsKICAgICAgICAgIHNjYW5FcnJvciA9IDA7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHNjYW5OdW1iZXIoKSB7CiAgICAgICAgICBsZXQgc3RhcnQgPSBwb3M7CiAgICAgICAgICBpZiAodGV4dC5jaGFyQ29kZUF0KHBvcykgPT09IDQ4KSB7CiAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIHdoaWxlIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiBpc0RpZ2l0KHRleHQuY2hhckNvZGVBdChwb3MpKSkgewogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAocG9zIDwgdGV4dC5sZW5ndGggJiYgdGV4dC5jaGFyQ29kZUF0KHBvcykgPT09IDQ2KSB7CiAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICBpZiAocG9zIDwgdGV4dC5sZW5ndGggJiYgaXNEaWdpdCh0ZXh0LmNoYXJDb2RlQXQocG9zKSkpIHsKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICB3aGlsZSAocG9zIDwgdGV4dC5sZW5ndGggJiYgaXNEaWdpdCh0ZXh0LmNoYXJDb2RlQXQocG9zKSkpIHsKICAgICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBzY2FuRXJyb3IgPSAzOwogICAgICAgICAgICAgIHJldHVybiB0ZXh0LnN1YnN0cmluZyhzdGFydCwgcG9zKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgbGV0IGVuZCA9IHBvczsKICAgICAgICAgIGlmIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiAodGV4dC5jaGFyQ29kZUF0KHBvcykgPT09IDY5IHx8IHRleHQuY2hhckNvZGVBdChwb3MpID09PSAxMDEpKSB7CiAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICBpZiAocG9zIDwgdGV4dC5sZW5ndGggJiYgdGV4dC5jaGFyQ29kZUF0KHBvcykgPT09IDQzIHx8IHRleHQuY2hhckNvZGVBdChwb3MpID09PSA0NSkgewogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiBpc0RpZ2l0KHRleHQuY2hhckNvZGVBdChwb3MpKSkgewogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHdoaWxlIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiBpc0RpZ2l0KHRleHQuY2hhckNvZGVBdChwb3MpKSkgewogICAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGVuZCA9IHBvczsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBzY2FuRXJyb3IgPSAzOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gdGV4dC5zdWJzdHJpbmcoc3RhcnQsIGVuZCk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHNjYW5TdHJpbmcoKSB7CiAgICAgICAgICBsZXQgcmVzdWx0ID0gIiIsIHN0YXJ0ID0gcG9zOwogICAgICAgICAgd2hpbGUgKHRydWUpIHsKICAgICAgICAgICAgaWYgKHBvcyA+PSBsZW4pIHsKICAgICAgICAgICAgICByZXN1bHQgKz0gdGV4dC5zdWJzdHJpbmcoc3RhcnQsIHBvcyk7CiAgICAgICAgICAgICAgc2NhbkVycm9yID0gMjsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgICBjb25zdCBjaCA9IHRleHQuY2hhckNvZGVBdChwb3MpOwogICAgICAgICAgICBpZiAoY2ggPT09IDM0KSB7CiAgICAgICAgICAgICAgcmVzdWx0ICs9IHRleHQuc3Vic3RyaW5nKHN0YXJ0LCBwb3MpOwogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChjaCA9PT0gOTIpIHsKICAgICAgICAgICAgICByZXN1bHQgKz0gdGV4dC5zdWJzdHJpbmcoc3RhcnQsIHBvcyk7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgaWYgKHBvcyA+PSBsZW4pIHsKICAgICAgICAgICAgICAgIHNjYW5FcnJvciA9IDI7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgY29uc3QgY2gyID0gdGV4dC5jaGFyQ29kZUF0KHBvcysrKTsKICAgICAgICAgICAgICBzd2l0Y2ggKGNoMikgewogICAgICAgICAgICAgICAgY2FzZSAzNDoKICAgICAgICAgICAgICAgICAgcmVzdWx0ICs9ICciJzsKICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlIDkyOgogICAgICAgICAgICAgICAgICByZXN1bHQgKz0gIlxcIjsKICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlIDQ3OgogICAgICAgICAgICAgICAgICByZXN1bHQgKz0gIi8iOwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgOTg6CiAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSAiXGIiOwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgMTAyOgogICAgICAgICAgICAgICAgICByZXN1bHQgKz0gIlxmIjsKICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlIDExMDoKICAgICAgICAgICAgICAgICAgcmVzdWx0ICs9ICJcbiI7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAxMTQ6CiAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSAiXHIiOwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgMTE2OgogICAgICAgICAgICAgICAgICByZXN1bHQgKz0gIgkiOwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgMTE3OgogICAgICAgICAgICAgICAgICBjb25zdCBjaDMgPSBzY2FuSGV4RGlnaXRzKDQsIHRydWUpOwogICAgICAgICAgICAgICAgICBpZiAoY2gzID49IDApIHsKICAgICAgICAgICAgICAgICAgICByZXN1bHQgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShjaDMpOwogICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIHNjYW5FcnJvciA9IDQ7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgICAgICBzY2FuRXJyb3IgPSA1OwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBzdGFydCA9IHBvczsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoY2ggPj0gMCAmJiBjaCA8PSAzMSkgewogICAgICAgICAgICAgIGlmIChpc0xpbmVCcmVhayhjaCkpIHsKICAgICAgICAgICAgICAgIHJlc3VsdCArPSB0ZXh0LnN1YnN0cmluZyhzdGFydCwgcG9zKTsKICAgICAgICAgICAgICAgIHNjYW5FcnJvciA9IDI7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgc2NhbkVycm9yID0gNjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBzY2FuTmV4dCgpIHsKICAgICAgICAgIHZhbHVlID0gIiI7CiAgICAgICAgICBzY2FuRXJyb3IgPSAwOwogICAgICAgICAgdG9rZW5PZmZzZXQgPSBwb3M7CiAgICAgICAgICBsaW5lU3RhcnRPZmZzZXQgPSBsaW5lTnVtYmVyOwogICAgICAgICAgcHJldlRva2VuTGluZVN0YXJ0T2Zmc2V0ID0gdG9rZW5MaW5lU3RhcnRPZmZzZXQ7CiAgICAgICAgICBpZiAocG9zID49IGxlbikgewogICAgICAgICAgICB0b2tlbk9mZnNldCA9IGxlbjsKICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gMTc7CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgY29kZSA9IHRleHQuY2hhckNvZGVBdChwb3MpOwogICAgICAgICAgaWYgKGlzV2hpdGVTcGFjZShjb2RlKSkgewogICAgICAgICAgICBkbyB7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgdmFsdWUgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShjb2RlKTsKICAgICAgICAgICAgICBjb2RlID0gdGV4dC5jaGFyQ29kZUF0KHBvcyk7CiAgICAgICAgICAgIH0gd2hpbGUgKGlzV2hpdGVTcGFjZShjb2RlKSk7CiAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE1OwogICAgICAgICAgfQogICAgICAgICAgaWYgKGlzTGluZUJyZWFrKGNvZGUpKSB7CiAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICB2YWx1ZSArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGNvZGUpOwogICAgICAgICAgICBpZiAoY29kZSA9PT0gMTMgJiYgdGV4dC5jaGFyQ29kZUF0KHBvcykgPT09IDEwKSB7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgdmFsdWUgKz0gIlxuIjsKICAgICAgICAgICAgfQogICAgICAgICAgICBsaW5lTnVtYmVyKys7CiAgICAgICAgICAgIHRva2VuTGluZVN0YXJ0T2Zmc2V0ID0gcG9zOwogICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxNDsKICAgICAgICAgIH0KICAgICAgICAgIHN3aXRjaCAoY29kZSkgewogICAgICAgICAgICAvLyB0b2tlbnM6IFtde306LAogICAgICAgICAgICBjYXNlIDEyMzoKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxOwogICAgICAgICAgICBjYXNlIDEyNToKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAyOwogICAgICAgICAgICBjYXNlIDkxOgogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDM7CiAgICAgICAgICAgIGNhc2UgOTM6CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gNDsKICAgICAgICAgICAgY2FzZSA1ODoKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSA2OwogICAgICAgICAgICBjYXNlIDQ0OgogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDU7CiAgICAgICAgICAgIC8vIHN0cmluZ3MKICAgICAgICAgICAgY2FzZSAzNDoKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICB2YWx1ZSA9IHNjYW5TdHJpbmcoKTsKICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxMDsKICAgICAgICAgICAgLy8gY29tbWVudHMKICAgICAgICAgICAgY2FzZSA0NzoKICAgICAgICAgICAgICBjb25zdCBzdGFydCA9IHBvcyAtIDE7CiAgICAgICAgICAgICAgaWYgKHRleHQuY2hhckNvZGVBdChwb3MgKyAxKSA9PT0gNDcpIHsKICAgICAgICAgICAgICAgIHBvcyArPSAyOwogICAgICAgICAgICAgICAgd2hpbGUgKHBvcyA8IGxlbikgewogICAgICAgICAgICAgICAgICBpZiAoaXNMaW5lQnJlYWsodGV4dC5jaGFyQ29kZUF0KHBvcykpKSB7CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB2YWx1ZSA9IHRleHQuc3Vic3RyaW5nKHN0YXJ0LCBwb3MpOwogICAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gMTI7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0ZXh0LmNoYXJDb2RlQXQocG9zICsgMSkgPT09IDQyKSB7CiAgICAgICAgICAgICAgICBwb3MgKz0gMjsKICAgICAgICAgICAgICAgIGNvbnN0IHNhZmVMZW5ndGggPSBsZW4gLSAxOwogICAgICAgICAgICAgICAgbGV0IGNvbW1lbnRDbG9zZWQgPSBmYWxzZTsKICAgICAgICAgICAgICAgIHdoaWxlIChwb3MgPCBzYWZlTGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgIGNvbnN0IGNoID0gdGV4dC5jaGFyQ29kZUF0KHBvcyk7CiAgICAgICAgICAgICAgICAgIGlmIChjaCA9PT0gNDIgJiYgdGV4dC5jaGFyQ29kZUF0KHBvcyArIDEpID09PSA0NykgewogICAgICAgICAgICAgICAgICAgIHBvcyArPSAyOwogICAgICAgICAgICAgICAgICAgIGNvbW1lbnRDbG9zZWQgPSB0cnVlOwogICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgICAgICBpZiAoaXNMaW5lQnJlYWsoY2gpKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKGNoID09PSAxMyAmJiB0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gMTApIHsKICAgICAgICAgICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBsaW5lTnVtYmVyKys7CiAgICAgICAgICAgICAgICAgICAgdG9rZW5MaW5lU3RhcnRPZmZzZXQgPSBwb3M7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmICghY29tbWVudENsb3NlZCkgewogICAgICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICAgICAgc2NhbkVycm9yID0gMTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHZhbHVlID0gdGV4dC5zdWJzdHJpbmcoc3RhcnQsIHBvcyk7CiAgICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxMzsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgdmFsdWUgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShjb2RlKTsKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxNjsKICAgICAgICAgICAgLy8gbnVtYmVycwogICAgICAgICAgICBjYXNlIDQ1OgogICAgICAgICAgICAgIHZhbHVlICs9IFN0cmluZy5mcm9tQ2hhckNvZGUoY29kZSk7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgaWYgKHBvcyA9PT0gbGVuIHx8ICFpc0RpZ2l0KHRleHQuY2hhckNvZGVBdChwb3MpKSkgewogICAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gMTY7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAvLyBmb3VuZCBhIG1pbnVzLCBmb2xsb3dlZCBieSBhIG51bWJlciBzbwogICAgICAgICAgICAvLyB3ZSBmYWxsIHRocm91Z2ggdG8gcHJvY2VlZCB3aXRoIHNjYW5uaW5nCiAgICAgICAgICAgIC8vIG51bWJlcnMKICAgICAgICAgICAgY2FzZSA0ODoKICAgICAgICAgICAgY2FzZSA0OToKICAgICAgICAgICAgY2FzZSA1MDoKICAgICAgICAgICAgY2FzZSA1MToKICAgICAgICAgICAgY2FzZSA1MjoKICAgICAgICAgICAgY2FzZSA1MzoKICAgICAgICAgICAgY2FzZSA1NDoKICAgICAgICAgICAgY2FzZSA1NToKICAgICAgICAgICAgY2FzZSA1NjoKICAgICAgICAgICAgY2FzZSA1NzoKICAgICAgICAgICAgICB2YWx1ZSArPSBzY2FuTnVtYmVyKCk7CiAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gMTE7CiAgICAgICAgICAgIC8vIGxpdGVyYWxzIGFuZCB1bmtub3duIHN5bWJvbHMKICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICB3aGlsZSAocG9zIDwgbGVuICYmIGlzVW5rbm93bkNvbnRlbnRDaGFyYWN0ZXIoY29kZSkpIHsKICAgICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgICAgY29kZSA9IHRleHQuY2hhckNvZGVBdChwb3MpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAodG9rZW5PZmZzZXQgIT09IHBvcykgewogICAgICAgICAgICAgICAgdmFsdWUgPSB0ZXh0LnN1YnN0cmluZyh0b2tlbk9mZnNldCwgcG9zKTsKICAgICAgICAgICAgICAgIHN3aXRjaCAodmFsdWUpIHsKICAgICAgICAgICAgICAgICAgY2FzZSAidHJ1ZSI6CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gODsKICAgICAgICAgICAgICAgICAgY2FzZSAiZmFsc2UiOgogICAgICAgICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDk7CiAgICAgICAgICAgICAgICAgIGNhc2UgIm51bGwiOgogICAgICAgICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDc7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxNjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgdmFsdWUgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShjb2RlKTsKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxNjsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gaXNVbmtub3duQ29udGVudENoYXJhY3Rlcihjb2RlKSB7CiAgICAgICAgICBpZiAoaXNXaGl0ZVNwYWNlKGNvZGUpIHx8IGlzTGluZUJyZWFrKGNvZGUpKSB7CiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICAgIHN3aXRjaCAoY29kZSkgewogICAgICAgICAgICBjYXNlIDEyNToKICAgICAgICAgICAgY2FzZSA5MzoKICAgICAgICAgICAgY2FzZSAxMjM6CiAgICAgICAgICAgIGNhc2UgOTE6CiAgICAgICAgICAgIGNhc2UgMzQ6CiAgICAgICAgICAgIGNhc2UgNTg6CiAgICAgICAgICAgIGNhc2UgNDQ6CiAgICAgICAgICAgIGNhc2UgNDc6CiAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHNjYW5OZXh0Tm9uVHJpdmlhKCkgewogICAgICAgICAgbGV0IHJlc3VsdDsKICAgICAgICAgIGRvIHsKICAgICAgICAgICAgcmVzdWx0ID0gc2Nhbk5leHQoKTsKICAgICAgICAgIH0gd2hpbGUgKHJlc3VsdCA+PSAxMiAmJiByZXN1bHQgPD0gMTUpOwogICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIHNldFBvc2l0aW9uLAogICAgICAgICAgZ2V0UG9zaXRpb246ICgpID0+IHBvcywKICAgICAgICAgIHNjYW46IGlnbm9yZVRyaXZpYSA/IHNjYW5OZXh0Tm9uVHJpdmlhIDogc2Nhbk5leHQsCiAgICAgICAgICBnZXRUb2tlbjogKCkgPT4gdG9rZW4sCiAgICAgICAgICBnZXRUb2tlblZhbHVlOiAoKSA9PiB2YWx1ZSwKICAgICAgICAgIGdldFRva2VuT2Zmc2V0OiAoKSA9PiB0b2tlbk9mZnNldCwKICAgICAgICAgIGdldFRva2VuTGVuZ3RoOiAoKSA9PiBwb3MgLSB0b2tlbk9mZnNldCwKICAgICAgICAgIGdldFRva2VuU3RhcnRMaW5lOiAoKSA9PiBsaW5lU3RhcnRPZmZzZXQsCiAgICAgICAgICBnZXRUb2tlblN0YXJ0Q2hhcmFjdGVyOiAoKSA9PiB0b2tlbk9mZnNldCAtIHByZXZUb2tlbkxpbmVTdGFydE9mZnNldCwKICAgICAgICAgIGdldFRva2VuRXJyb3I6ICgpID0+IHNjYW5FcnJvcgogICAgICAgIH07CiAgICAgIH0KICAgICAgZXhwb3J0czMuY3JlYXRlU2Nhbm5lciA9IGNyZWF0ZVNjYW5uZXI7CiAgICAgIGZ1bmN0aW9uIGlzV2hpdGVTcGFjZShjaCkgewogICAgICAgIHJldHVybiBjaCA9PT0gMzIgfHwgY2ggPT09IDk7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gaXNMaW5lQnJlYWsoY2gpIHsKICAgICAgICByZXR1cm4gY2ggPT09IDEwIHx8IGNoID09PSAxMzsKICAgICAgfQogICAgICBmdW5jdGlvbiBpc0RpZ2l0KGNoKSB7CiAgICAgICAgcmV0dXJuIGNoID49IDQ4ICYmIGNoIDw9IDU3OwogICAgICB9CiAgICAgIHZhciBDaGFyYWN0ZXJDb2RlczsKICAgICAgKGZ1bmN0aW9uKENoYXJhY3RlckNvZGVzMikgewogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImxpbmVGZWVkIl0gPSAxMF0gPSAibGluZUZlZWQiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImNhcnJpYWdlUmV0dXJuIl0gPSAxM10gPSAiY2FycmlhZ2VSZXR1cm4iOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbInNwYWNlIl0gPSAzMl0gPSAic3BhY2UiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIl8wIl0gPSA0OF0gPSAiXzAiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIl8xIl0gPSA0OV0gPSAiXzEiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIl8yIl0gPSA1MF0gPSAiXzIiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIl8zIl0gPSA1MV0gPSAiXzMiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIl80Il0gPSA1Ml0gPSAiXzQiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIl81Il0gPSA1M10gPSAiXzUiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIl82Il0gPSA1NF0gPSAiXzYiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIl83Il0gPSA1NV0gPSAiXzciOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIl84Il0gPSA1Nl0gPSAiXzgiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIl85Il0gPSA1N10gPSAiXzkiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImEiXSA9IDk3XSA9ICJhIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJiIl0gPSA5OF0gPSAiYiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiYyJdID0gOTldID0gImMiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImQiXSA9IDEwMF0gPSAiZCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiZSJdID0gMTAxXSA9ICJlIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJmIl0gPSAxMDJdID0gImYiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImciXSA9IDEwM10gPSAiZyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiaCJdID0gMTA0XSA9ICJoIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJpIl0gPSAxMDVdID0gImkiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImoiXSA9IDEwNl0gPSAiaiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiayJdID0gMTA3XSA9ICJrIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJsIl0gPSAxMDhdID0gImwiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIm0iXSA9IDEwOV0gPSAibSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsibiJdID0gMTEwXSA9ICJuIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJvIl0gPSAxMTFdID0gIm8iOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbInAiXSA9IDExMl0gPSAicCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsicSJdID0gMTEzXSA9ICJxIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJyIl0gPSAxMTRdID0gInIiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbInMiXSA9IDExNV0gPSAicyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsidCJdID0gMTE2XSA9ICJ0IjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJ1Il0gPSAxMTddID0gInUiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbInYiXSA9IDExOF0gPSAidiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsidyJdID0gMTE5XSA9ICJ3IjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJ4Il0gPSAxMjBdID0gIngiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbInkiXSA9IDEyMV0gPSAieSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsieiJdID0gMTIyXSA9ICJ6IjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJBIl0gPSA2NV0gPSAiQSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiQiJdID0gNjZdID0gIkIiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkMiXSA9IDY3XSA9ICJDIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJEIl0gPSA2OF0gPSAiRCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiRSJdID0gNjldID0gIkUiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkYiXSA9IDcwXSA9ICJGIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJHIl0gPSA3MV0gPSAiRyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiSCJdID0gNzJdID0gIkgiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkkiXSA9IDczXSA9ICJJIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJKIl0gPSA3NF0gPSAiSiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiSyJdID0gNzVdID0gIksiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkwiXSA9IDc2XSA9ICJMIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJNIl0gPSA3N10gPSAiTSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiTiJdID0gNzhdID0gIk4iOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIk8iXSA9IDc5XSA9ICJPIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJQIl0gPSA4MF0gPSAiUCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiUSJdID0gODFdID0gIlEiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIlIiXSA9IDgyXSA9ICJSIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJTIl0gPSA4M10gPSAiUyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiVCJdID0gODRdID0gIlQiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIlUiXSA9IDg1XSA9ICJVIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJWIl0gPSA4Nl0gPSAiViI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiVyJdID0gODddID0gIlciOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIlgiXSA9IDg4XSA9ICJYIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJZIl0gPSA4OV0gPSAiWSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiWiJdID0gOTBdID0gIloiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImFzdGVyaXNrIl0gPSA0Ml0gPSAiYXN0ZXJpc2siOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImJhY2tzbGFzaCJdID0gOTJdID0gImJhY2tzbGFzaCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiY2xvc2VCcmFjZSJdID0gMTI1XSA9ICJjbG9zZUJyYWNlIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJjbG9zZUJyYWNrZXQiXSA9IDkzXSA9ICJjbG9zZUJyYWNrZXQiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImNvbG9uIl0gPSA1OF0gPSAiY29sb24iOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImNvbW1hIl0gPSA0NF0gPSAiY29tbWEiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImRvdCJdID0gNDZdID0gImRvdCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiZG91YmxlUXVvdGUiXSA9IDM0XSA9ICJkb3VibGVRdW90ZSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsibWludXMiXSA9IDQ1XSA9ICJtaW51cyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsib3BlbkJyYWNlIl0gPSAxMjNdID0gIm9wZW5CcmFjZSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsib3BlbkJyYWNrZXQiXSA9IDkxXSA9ICJvcGVuQnJhY2tldCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsicGx1cyJdID0gNDNdID0gInBsdXMiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbInNsYXNoIl0gPSA0N10gPSAic2xhc2giOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImZvcm1GZWVkIl0gPSAxMl0gPSAiZm9ybUZlZWQiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbInRhYiJdID0gOV0gPSAidGFiIjsKICAgICAgfSkoQ2hhcmFjdGVyQ29kZXMgfHwgKENoYXJhY3RlckNvZGVzID0ge30pKTsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi00NWQxYWU2MjM2LnppcC9ub2RlX21vZHVsZXMvanNvbmMtcGFyc2VyL2xpYi91bWQvaW1wbC9zdHJpbmctaW50ZXJuLmpzCnZhciByZXF1aXJlX3N0cmluZ19pbnRlcm4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvanNvbmMtcGFyc2VyLXBhdGNoLWQyMGY2NzE4MzYtNDVkMWFlNjIzNi56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvc3RyaW5nLWludGVybi5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgIChmdW5jdGlvbihmYWN0b3J5KSB7CiAgICAgIGlmICh0eXBlb2YgbW9kdWxlMiA9PT0gIm9iamVjdCIgJiYgdHlwZW9mIG1vZHVsZTIuZXhwb3J0cyA9PT0gIm9iamVjdCIpIHsKICAgICAgICB2YXIgdiA9IGZhY3RvcnkocmVxdWlyZSwgZXhwb3J0czIpOwogICAgICAgIGlmICh2ICE9PSB2b2lkIDApIG1vZHVsZTIuZXhwb3J0cyA9IHY7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGRlZmluZSA9PT0gImZ1bmN0aW9uIiAmJiBkZWZpbmUuYW1kKSB7CiAgICAgICAgZGVmaW5lKFsicmVxdWlyZSIsICJleHBvcnRzIl0sIGZhY3RvcnkpOwogICAgICB9CiAgICB9KShmdW5jdGlvbihyZXF1aXJlMiwgZXhwb3J0czMpIHsKICAgICAgInVzZSBzdHJpY3QiOwogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czMsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgICAgZXhwb3J0czMuc3VwcG9ydGVkRW9scyA9IGV4cG9ydHMzLmNhY2hlZEJyZWFrTGluZXNXaXRoU3BhY2VzID0gZXhwb3J0czMuY2FjaGVkU3BhY2VzID0gdm9pZCAwOwogICAgICBleHBvcnRzMy5jYWNoZWRTcGFjZXMgPSBuZXcgQXJyYXkoMjApLmZpbGwoMCkubWFwKChfLCBpbmRleCkgPT4gewogICAgICAgIHJldHVybiAiICIucmVwZWF0KGluZGV4KTsKICAgICAgfSk7CiAgICAgIGNvbnN0IG1heENhY2hlZFZhbHVlcyA9IDIwMDsKICAgICAgZXhwb3J0czMuY2FjaGVkQnJlYWtMaW5lc1dpdGhTcGFjZXMgPSB7CiAgICAgICAgIiAiOiB7CiAgICAgICAgICAiXG4iOiBuZXcgQXJyYXkobWF4Q2FjaGVkVmFsdWVzKS5maWxsKDApLm1hcCgoXywgaW5kZXgpID0+IHsKICAgICAgICAgICAgcmV0dXJuICJcbiIgKyAiICIucmVwZWF0KGluZGV4KTsKICAgICAgICAgIH0pLAogICAgICAgICAgIlxyIjogbmV3IEFycmF5KG1heENhY2hlZFZhbHVlcykuZmlsbCgwKS5tYXAoKF8sIGluZGV4KSA9PiB7CiAgICAgICAgICAgIHJldHVybiAiXHIiICsgIiAiLnJlcGVhdChpbmRleCk7CiAgICAgICAgICB9KSwKICAgICAgICAgICJcclxuIjogbmV3IEFycmF5KG1heENhY2hlZFZhbHVlcykuZmlsbCgwKS5tYXAoKF8sIGluZGV4KSA9PiB7CiAgICAgICAgICAgIHJldHVybiAiXHJcbiIgKyAiICIucmVwZWF0KGluZGV4KTsKICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICAiCSI6IHsKICAgICAgICAgICJcbiI6IG5ldyBBcnJheShtYXhDYWNoZWRWYWx1ZXMpLmZpbGwoMCkubWFwKChfLCBpbmRleCkgPT4gewogICAgICAgICAgICByZXR1cm4gIlxuIiArICIJIi5yZXBlYXQoaW5kZXgpOwogICAgICAgICAgfSksCiAgICAgICAgICAiXHIiOiBuZXcgQXJyYXkobWF4Q2FjaGVkVmFsdWVzKS5maWxsKDApLm1hcCgoXywgaW5kZXgpID0+IHsKICAgICAgICAgICAgcmV0dXJuICJcciIgKyAiCSIucmVwZWF0KGluZGV4KTsKICAgICAgICAgIH0pLAogICAgICAgICAgIlxyXG4iOiBuZXcgQXJyYXkobWF4Q2FjaGVkVmFsdWVzKS5maWxsKDApLm1hcCgoXywgaW5kZXgpID0+IHsKICAgICAgICAgICAgcmV0dXJuICJcclxuIiArICIJIi5yZXBlYXQoaW5kZXgpOwogICAgICAgICAgfSkKICAgICAgICB9CiAgICAgIH07CiAgICAgIGV4cG9ydHMzLnN1cHBvcnRlZEVvbHMgPSBbIlxuIiwgIlxyIiwgIlxyXG4iXTsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi00NWQxYWU2MjM2LnppcC9ub2RlX21vZHVsZXMvanNvbmMtcGFyc2VyL2xpYi91bWQvaW1wbC9mb3JtYXQuanMKdmFyIHJlcXVpcmVfZm9ybWF0MyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi00NWQxYWU2MjM2LnppcC9ub2RlX21vZHVsZXMvanNvbmMtcGFyc2VyL2xpYi91bWQvaW1wbC9mb3JtYXQuanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICB2YXIgc2Nhbm5lcl8xID0gcmVxdWlyZV9zY2FubmVyKCk7CiAgICB2YXIgc3RyaW5nX2ludGVybl8xID0gcmVxdWlyZV9zdHJpbmdfaW50ZXJuKCk7CiAgICAoZnVuY3Rpb24oZmFjdG9yeSkgewogICAgICBpZiAodHlwZW9mIG1vZHVsZTIgPT09ICJvYmplY3QiICYmIHR5cGVvZiBtb2R1bGUyLmV4cG9ydHMgPT09ICJvYmplY3QiKSB7CiAgICAgICAgdmFyIHYgPSBmYWN0b3J5KHJlcXVpcmUsIGV4cG9ydHMyKTsKICAgICAgICBpZiAodiAhPT0gdm9pZCAwKSBtb2R1bGUyLmV4cG9ydHMgPSB2OwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBkZWZpbmUgPT09ICJmdW5jdGlvbiIgJiYgZGVmaW5lLmFtZCkgewogICAgICAgIGRlZmluZShbInJlcXVpcmUiLCAiZXhwb3J0cyIsICIuL3NjYW5uZXIiLCAiLi9zdHJpbmctaW50ZXJuIl0sIGZhY3RvcnkpOwogICAgICB9CiAgICB9KShmdW5jdGlvbihyZXF1aXJlMiwgZXhwb3J0czMpIHsKICAgICAgInVzZSBzdHJpY3QiOwogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czMsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgICAgZXhwb3J0czMuaXNFT0wgPSBleHBvcnRzMy5mb3JtYXQgPSB2b2lkIDA7CiAgICAgIGZ1bmN0aW9uIGZvcm1hdChkb2N1bWVudFRleHQsIHJhbmdlLCBvcHRpb25zKSB7CiAgICAgICAgbGV0IGluaXRpYWxJbmRlbnRMZXZlbDsKICAgICAgICBsZXQgZm9ybWF0VGV4dDsKICAgICAgICBsZXQgZm9ybWF0VGV4dFN0YXJ0OwogICAgICAgIGxldCByYW5nZVN0YXJ0OwogICAgICAgIGxldCByYW5nZUVuZDsKICAgICAgICBpZiAocmFuZ2UpIHsKICAgICAgICAgIHJhbmdlU3RhcnQgPSByYW5nZS5vZmZzZXQ7CiAgICAgICAgICByYW5nZUVuZCA9IHJhbmdlU3RhcnQgKyByYW5nZS5sZW5ndGg7CiAgICAgICAgICBmb3JtYXRUZXh0U3RhcnQgPSByYW5nZVN0YXJ0OwogICAgICAgICAgd2hpbGUgKGZvcm1hdFRleHRTdGFydCA+IDAgJiYgIWlzRU9MKGRvY3VtZW50VGV4dCwgZm9ybWF0VGV4dFN0YXJ0IC0gMSkpIHsKICAgICAgICAgICAgZm9ybWF0VGV4dFN0YXJ0LS07CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgZW5kT2Zmc2V0ID0gcmFuZ2VFbmQ7CiAgICAgICAgICB3aGlsZSAoZW5kT2Zmc2V0IDwgZG9jdW1lbnRUZXh0Lmxlbmd0aCAmJiAhaXNFT0woZG9jdW1lbnRUZXh0LCBlbmRPZmZzZXQpKSB7CiAgICAgICAgICAgIGVuZE9mZnNldCsrOwogICAgICAgICAgfQogICAgICAgICAgZm9ybWF0VGV4dCA9IGRvY3VtZW50VGV4dC5zdWJzdHJpbmcoZm9ybWF0VGV4dFN0YXJ0LCBlbmRPZmZzZXQpOwogICAgICAgICAgaW5pdGlhbEluZGVudExldmVsID0gY29tcHV0ZUluZGVudExldmVsKGZvcm1hdFRleHQsIG9wdGlvbnMpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBmb3JtYXRUZXh0ID0gZG9jdW1lbnRUZXh0OwogICAgICAgICAgaW5pdGlhbEluZGVudExldmVsID0gMDsKICAgICAgICAgIGZvcm1hdFRleHRTdGFydCA9IDA7CiAgICAgICAgICByYW5nZVN0YXJ0ID0gMDsKICAgICAgICAgIHJhbmdlRW5kID0gZG9jdW1lbnRUZXh0Lmxlbmd0aDsKICAgICAgICB9CiAgICAgICAgY29uc3QgZW9sID0gZ2V0RU9MKG9wdGlvbnMsIGRvY3VtZW50VGV4dCk7CiAgICAgICAgY29uc3QgZW9sRmFzdFBhdGhTdXBwb3J0ZWQgPSBzdHJpbmdfaW50ZXJuXzEuc3VwcG9ydGVkRW9scy5pbmNsdWRlcyhlb2wpOwogICAgICAgIGxldCBudW1iZXJMaW5lQnJlYWtzID0gMDsKICAgICAgICBsZXQgaW5kZW50TGV2ZWwgPSAwOwogICAgICAgIGxldCBpbmRlbnRWYWx1ZTsKICAgICAgICBpZiAob3B0aW9ucy5pbnNlcnRTcGFjZXMpIHsKICAgICAgICAgIGluZGVudFZhbHVlID0gc3RyaW5nX2ludGVybl8xLmNhY2hlZFNwYWNlc1tvcHRpb25zLnRhYlNpemUgfHwgNF0gPz8gcmVwZWF0KHN0cmluZ19pbnRlcm5fMS5jYWNoZWRTcGFjZXNbMV0sIG9wdGlvbnMudGFiU2l6ZSB8fCA0KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaW5kZW50VmFsdWUgPSAiCSI7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGluZGVudFR5cGUgPSBpbmRlbnRWYWx1ZSA9PT0gIgkiID8gIgkiIDogIiAiOwogICAgICAgIGxldCBzY2FubmVyID0gKDAsIHNjYW5uZXJfMS5jcmVhdGVTY2FubmVyKShmb3JtYXRUZXh0LCBmYWxzZSk7CiAgICAgICAgbGV0IGhhc0Vycm9yID0gZmFsc2U7CiAgICAgICAgZnVuY3Rpb24gbmV3TGluZXNBbmRJbmRlbnQoKSB7CiAgICAgICAgICBpZiAobnVtYmVyTGluZUJyZWFrcyA+IDEpIHsKICAgICAgICAgICAgcmV0dXJuIHJlcGVhdChlb2wsIG51bWJlckxpbmVCcmVha3MpICsgcmVwZWF0KGluZGVudFZhbHVlLCBpbml0aWFsSW5kZW50TGV2ZWwgKyBpbmRlbnRMZXZlbCk7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBhbW91bnRPZlNwYWNlcyA9IGluZGVudFZhbHVlLmxlbmd0aCAqIChpbml0aWFsSW5kZW50TGV2ZWwgKyBpbmRlbnRMZXZlbCk7CiAgICAgICAgICBpZiAoIWVvbEZhc3RQYXRoU3VwcG9ydGVkIHx8IGFtb3VudE9mU3BhY2VzID4gc3RyaW5nX2ludGVybl8xLmNhY2hlZEJyZWFrTGluZXNXaXRoU3BhY2VzW2luZGVudFR5cGVdW2VvbF0ubGVuZ3RoKSB7CiAgICAgICAgICAgIHJldHVybiBlb2wgKyByZXBlYXQoaW5kZW50VmFsdWUsIGluaXRpYWxJbmRlbnRMZXZlbCArIGluZGVudExldmVsKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChhbW91bnRPZlNwYWNlcyA8PSAwKSB7CiAgICAgICAgICAgIHJldHVybiBlb2w7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gc3RyaW5nX2ludGVybl8xLmNhY2hlZEJyZWFrTGluZXNXaXRoU3BhY2VzW2luZGVudFR5cGVdW2VvbF1bYW1vdW50T2ZTcGFjZXNdOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBzY2FuTmV4dCgpIHsKICAgICAgICAgIGxldCB0b2tlbiA9IHNjYW5uZXIuc2NhbigpOwogICAgICAgICAgbnVtYmVyTGluZUJyZWFrcyA9IDA7CiAgICAgICAgICB3aGlsZSAodG9rZW4gPT09IDE1IHx8IHRva2VuID09PSAxNCkgewogICAgICAgICAgICBpZiAodG9rZW4gPT09IDE0ICYmIG9wdGlvbnMua2VlcExpbmVzKSB7CiAgICAgICAgICAgICAgbnVtYmVyTGluZUJyZWFrcyArPSAxOwogICAgICAgICAgICB9IGVsc2UgaWYgKHRva2VuID09PSAxNCkgewogICAgICAgICAgICAgIG51bWJlckxpbmVCcmVha3MgPSAxOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHRva2VuID0gc2Nhbm5lci5zY2FuKCk7CiAgICAgICAgICB9CiAgICAgICAgICBoYXNFcnJvciA9IHRva2VuID09PSAxNiB8fCBzY2FubmVyLmdldFRva2VuRXJyb3IoKSAhPT0gMDsKICAgICAgICAgIHJldHVybiB0b2tlbjsKICAgICAgICB9CiAgICAgICAgY29uc3QgZWRpdE9wZXJhdGlvbnMgPSBbXTsKICAgICAgICBmdW5jdGlvbiBhZGRFZGl0KHRleHQsIHN0YXJ0T2Zmc2V0LCBlbmRPZmZzZXQpIHsKICAgICAgICAgIGlmICghaGFzRXJyb3IgJiYgKCFyYW5nZSB8fCBzdGFydE9mZnNldCA8IHJhbmdlRW5kICYmIGVuZE9mZnNldCA+IHJhbmdlU3RhcnQpICYmIGRvY3VtZW50VGV4dC5zdWJzdHJpbmcoc3RhcnRPZmZzZXQsIGVuZE9mZnNldCkgIT09IHRleHQpIHsKICAgICAgICAgICAgZWRpdE9wZXJhdGlvbnMucHVzaCh7CiAgICAgICAgICAgICAgb2Zmc2V0OiBzdGFydE9mZnNldCwKICAgICAgICAgICAgICBsZW5ndGg6IGVuZE9mZnNldCAtIHN0YXJ0T2Zmc2V0LAogICAgICAgICAgICAgIGNvbnRlbnQ6IHRleHQKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGxldCBmaXJzdFRva2VuID0gc2Nhbk5leHQoKTsKICAgICAgICBpZiAob3B0aW9ucy5rZWVwTGluZXMgJiYgbnVtYmVyTGluZUJyZWFrcyA+IDApIHsKICAgICAgICAgIGFkZEVkaXQocmVwZWF0KGVvbCwgbnVtYmVyTGluZUJyZWFrcyksIDAsIDApOwogICAgICAgIH0KICAgICAgICBpZiAoZmlyc3RUb2tlbiAhPT0gMTcpIHsKICAgICAgICAgIGxldCBmaXJzdFRva2VuU3RhcnQgPSBzY2FubmVyLmdldFRva2VuT2Zmc2V0KCkgKyBmb3JtYXRUZXh0U3RhcnQ7CiAgICAgICAgICBsZXQgaW5pdGlhbEluZGVudCA9IGluZGVudFZhbHVlLmxlbmd0aCAqIGluaXRpYWxJbmRlbnRMZXZlbCA8IDIwICYmIG9wdGlvbnMuaW5zZXJ0U3BhY2VzID8gc3RyaW5nX2ludGVybl8xLmNhY2hlZFNwYWNlc1tpbmRlbnRWYWx1ZS5sZW5ndGggKiBpbml0aWFsSW5kZW50TGV2ZWxdIDogcmVwZWF0KGluZGVudFZhbHVlLCBpbml0aWFsSW5kZW50TGV2ZWwpOwogICAgICAgICAgYWRkRWRpdChpbml0aWFsSW5kZW50LCBmb3JtYXRUZXh0U3RhcnQsIGZpcnN0VG9rZW5TdGFydCk7CiAgICAgICAgfQogICAgICAgIHdoaWxlIChmaXJzdFRva2VuICE9PSAxNykgewogICAgICAgICAgbGV0IGZpcnN0VG9rZW5FbmQgPSBzY2FubmVyLmdldFRva2VuT2Zmc2V0KCkgKyBzY2FubmVyLmdldFRva2VuTGVuZ3RoKCkgKyBmb3JtYXRUZXh0U3RhcnQ7CiAgICAgICAgICBsZXQgc2Vjb25kVG9rZW4gPSBzY2FuTmV4dCgpOwogICAgICAgICAgbGV0IHJlcGxhY2VDb250ZW50ID0gIiI7CiAgICAgICAgICBsZXQgbmVlZHNMaW5lQnJlYWsgPSBmYWxzZTsKICAgICAgICAgIHdoaWxlIChudW1iZXJMaW5lQnJlYWtzID09PSAwICYmIChzZWNvbmRUb2tlbiA9PT0gMTIgfHwgc2Vjb25kVG9rZW4gPT09IDEzKSkgewogICAgICAgICAgICBsZXQgY29tbWVudFRva2VuU3RhcnQgPSBzY2FubmVyLmdldFRva2VuT2Zmc2V0KCkgKyBmb3JtYXRUZXh0U3RhcnQ7CiAgICAgICAgICAgIGFkZEVkaXQoCiAgICAgICAgICAgICAgc3RyaW5nX2ludGVybl8xLmNhY2hlZFNwYWNlc1sxXSwKICAgICAgICAgICAgICBmaXJzdFRva2VuRW5kLAogICAgICAgICAgICAgIGNvbW1lbnRUb2tlblN0YXJ0CiAgICAgICAgICAgICk7CiAgICAgICAgICAgIGZpcnN0VG9rZW5FbmQgPSBzY2FubmVyLmdldFRva2VuT2Zmc2V0KCkgKyBzY2FubmVyLmdldFRva2VuTGVuZ3RoKCkgKyBmb3JtYXRUZXh0U3RhcnQ7CiAgICAgICAgICAgIG5lZWRzTGluZUJyZWFrID0gc2Vjb25kVG9rZW4gPT09IDEyOwogICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5lZWRzTGluZUJyZWFrID8gbmV3TGluZXNBbmRJbmRlbnQoKSA6ICIiOwogICAgICAgICAgICBzZWNvbmRUb2tlbiA9IHNjYW5OZXh0KCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoc2Vjb25kVG9rZW4gPT09IDIpIHsKICAgICAgICAgICAgaWYgKGZpcnN0VG9rZW4gIT09IDEpIHsKICAgICAgICAgICAgICBpbmRlbnRMZXZlbC0tOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChvcHRpb25zLmtlZXBMaW5lcyAmJiBudW1iZXJMaW5lQnJlYWtzID4gMCB8fCAhb3B0aW9ucy5rZWVwTGluZXMgJiYgZmlyc3RUb2tlbiAhPT0gMSkgewogICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gbmV3TGluZXNBbmRJbmRlbnQoKTsKICAgICAgICAgICAgfSBlbHNlIGlmIChvcHRpb25zLmtlZXBMaW5lcykgewogICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gc3RyaW5nX2ludGVybl8xLmNhY2hlZFNwYWNlc1sxXTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIGlmIChzZWNvbmRUb2tlbiA9PT0gNCkgewogICAgICAgICAgICBpZiAoZmlyc3RUb2tlbiAhPT0gMykgewogICAgICAgICAgICAgIGluZGVudExldmVsLS07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwIHx8ICFvcHRpb25zLmtlZXBMaW5lcyAmJiBmaXJzdFRva2VuICE9PSAzKSB7CiAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICB9IGVsc2UgaWYgKG9wdGlvbnMua2VlcExpbmVzKSB7CiAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzd2l0Y2ggKGZpcnN0VG9rZW4pIHsKICAgICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgICAgaW5kZW50TGV2ZWwrKzsKICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLmtlZXBMaW5lcyAmJiBudW1iZXJMaW5lQnJlYWtzID4gMCB8fCAhb3B0aW9ucy5rZWVwTGluZXMpIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSA1OgogICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwIHx8ICFvcHRpb25zLmtlZXBMaW5lcykgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5ld0xpbmVzQW5kSW5kZW50KCk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IHN0cmluZ19pbnRlcm5fMS5jYWNoZWRTcGFjZXNbMV07CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDEyOgogICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxMzoKICAgICAgICAgICAgICAgIGlmIChudW1iZXJMaW5lQnJlYWtzID4gMCkgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5ld0xpbmVzQW5kSW5kZW50KCk7CiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKCFuZWVkc0xpbmVCcmVhaykgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IHN0cmluZ19pbnRlcm5fMS5jYWNoZWRTcGFjZXNbMV07CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDY6CiAgICAgICAgICAgICAgICBpZiAob3B0aW9ucy5rZWVwTGluZXMgJiYgbnVtYmVyTGluZUJyZWFrcyA+IDApIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICAgICAgfSBlbHNlIGlmICghbmVlZHNMaW5lQnJlYWspIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxMDoKICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLmtlZXBMaW5lcyAmJiBudW1iZXJMaW5lQnJlYWtzID4gMCkgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5ld0xpbmVzQW5kSW5kZW50KCk7CiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHNlY29uZFRva2VuID09PSA2ICYmICFuZWVkc0xpbmVCcmVhaykgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9ICIiOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIGNhc2UgODoKICAgICAgICAgICAgICBjYXNlIDk6CiAgICAgICAgICAgICAgY2FzZSAxMToKICAgICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICAgY2FzZSA0OgogICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwKSB7CiAgICAgICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gbmV3TGluZXNBbmRJbmRlbnQoKTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIGlmICgoc2Vjb25kVG9rZW4gPT09IDEyIHx8IHNlY29uZFRva2VuID09PSAxMykgJiYgIW5lZWRzTGluZUJyZWFrKSB7CiAgICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdOwogICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHNlY29uZFRva2VuICE9PSA1ICYmIHNlY29uZFRva2VuICE9PSAxNykgewogICAgICAgICAgICAgICAgICAgIGhhc0Vycm9yID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxNjoKICAgICAgICAgICAgICAgIGhhc0Vycm9yID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChudW1iZXJMaW5lQnJlYWtzID4gMCAmJiAoc2Vjb25kVG9rZW4gPT09IDEyIHx8IHNlY29uZFRva2VuID09PSAxMykpIHsKICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5ld0xpbmVzQW5kSW5kZW50KCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmIChzZWNvbmRUb2tlbiA9PT0gMTcpIHsKICAgICAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwKSB7CiAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gb3B0aW9ucy5pbnNlcnRGaW5hbE5ld2xpbmUgPyBlb2wgOiAiIjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgY29uc3Qgc2Vjb25kVG9rZW5TdGFydCA9IHNjYW5uZXIuZ2V0VG9rZW5PZmZzZXQoKSArIGZvcm1hdFRleHRTdGFydDsKICAgICAgICAgIGFkZEVkaXQocmVwbGFjZUNvbnRlbnQsIGZpcnN0VG9rZW5FbmQsIHNlY29uZFRva2VuU3RhcnQpOwogICAgICAgICAgZmlyc3RUb2tlbiA9IHNlY29uZFRva2VuOwogICAgICAgIH0KICAgICAgICByZXR1cm4gZWRpdE9wZXJhdGlvbnM7CiAgICAgIH0KICAgICAgZXhwb3J0czMuZm9ybWF0ID0gZm9ybWF0OwogICAgICBmdW5jdGlvbiByZXBlYXQocywgY291bnQpIHsKICAgICAgICBsZXQgcmVzdWx0ID0gIiI7CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjb3VudDsgaSsrKSB7CiAgICAgICAgICByZXN1bHQgKz0gczsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfQogICAgICBmdW5jdGlvbiBjb21wdXRlSW5kZW50TGV2ZWwoY29udGVudCwgb3B0aW9ucykgewogICAgICAgIGxldCBpID0gMDsKICAgICAgICBsZXQgbkNoYXJzID0gMDsKICAgICAgICBjb25zdCB0YWJTaXplID0gb3B0aW9ucy50YWJTaXplIHx8IDQ7CiAgICAgICAgd2hpbGUgKGkgPCBjb250ZW50Lmxlbmd0aCkgewogICAgICAgICAgbGV0IGNoID0gY29udGVudC5jaGFyQXQoaSk7CiAgICAgICAgICBpZiAoY2ggPT09IHN0cmluZ19pbnRlcm5fMS5jYWNoZWRTcGFjZXNbMV0pIHsKICAgICAgICAgICAgbkNoYXJzKys7CiAgICAgICAgICB9IGVsc2UgaWYgKGNoID09PSAiCSIpIHsKICAgICAgICAgICAgbkNoYXJzICs9IHRhYlNpemU7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICAgIGkrKzsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIE1hdGguZmxvb3IobkNoYXJzIC8gdGFiU2l6ZSk7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gZ2V0RU9MKG9wdGlvbnMsIHRleHQpIHsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRleHQubGVuZ3RoOyBpKyspIHsKICAgICAgICAgIGNvbnN0IGNoID0gdGV4dC5jaGFyQXQoaSk7CiAgICAgICAgICBpZiAoY2ggPT09ICJcciIpIHsKICAgICAgICAgICAgaWYgKGkgKyAxIDwgdGV4dC5sZW5ndGggJiYgdGV4dC5jaGFyQXQoaSArIDEpID09PSAiXG4iKSB7CiAgICAgICAgICAgICAgcmV0dXJuICJcclxuIjsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gIlxyIjsKICAgICAgICAgIH0gZWxzZSBpZiAoY2ggPT09ICJcbiIpIHsKICAgICAgICAgICAgcmV0dXJuICJcbiI7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBvcHRpb25zICYmIG9wdGlvbnMuZW9sIHx8ICJcbiI7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gaXNFT0wodGV4dCwgb2Zmc2V0KSB7CiAgICAgICAgcmV0dXJuICJcclxuIi5pbmRleE9mKHRleHQuY2hhckF0KG9mZnNldCkpICE9PSAtMTsKICAgICAgfQogICAgICBleHBvcnRzMy5pc0VPTCA9IGlzRU9MOwogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2pzb25jLXBhcnNlci1wYXRjaC1kMjBmNjcxODM2LTQ1ZDFhZTYyMzYuemlwL25vZGVfbW9kdWxlcy9qc29uYy1wYXJzZXIvbGliL3VtZC9pbXBsL3BhcnNlci5qcwp2YXIgcmVxdWlyZV9wYXJzZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvanNvbmMtcGFyc2VyLXBhdGNoLWQyMGY2NzE4MzYtNDVkMWFlNjIzNi56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvcGFyc2VyLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgdmFyIHNjYW5uZXJfMSA9IHJlcXVpcmVfc2Nhbm5lcigpOwogICAgKGZ1bmN0aW9uKGZhY3RvcnkpIHsKICAgICAgaWYgKHR5cGVvZiBtb2R1bGUyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMi5leHBvcnRzID09PSAib2JqZWN0IikgewogICAgICAgIHZhciB2ID0gZmFjdG9yeShyZXF1aXJlLCBleHBvcnRzMik7CiAgICAgICAgaWYgKHYgIT09IHZvaWQgMCkgbW9kdWxlMi5leHBvcnRzID0gdjsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAiZnVuY3Rpb24iICYmIGRlZmluZS5hbWQpIHsKICAgICAgICBkZWZpbmUoWyJyZXF1aXJlIiwgImV4cG9ydHMiLCAiLi9zY2FubmVyIl0sIGZhY3RvcnkpOwogICAgICB9CiAgICB9KShmdW5jdGlvbihyZXF1aXJlMiwgZXhwb3J0czMpIHsKICAgICAgInVzZSBzdHJpY3QiOwogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czMsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgICAgZXhwb3J0czMuZ2V0Tm9kZVR5cGUgPSBleHBvcnRzMy5zdHJpcENvbW1lbnRzID0gZXhwb3J0czMudmlzaXQgPSBleHBvcnRzMy5maW5kTm9kZUF0T2Zmc2V0ID0gZXhwb3J0czMuY29udGFpbnMgPSBleHBvcnRzMy5nZXROb2RlVmFsdWUgPSBleHBvcnRzMy5nZXROb2RlUGF0aCA9IGV4cG9ydHMzLmZpbmROb2RlQXRMb2NhdGlvbiA9IGV4cG9ydHMzLnBhcnNlVHJlZSA9IGV4cG9ydHMzLnBhcnNlID0gZXhwb3J0czMuZ2V0TG9jYXRpb24gPSB2b2lkIDA7CiAgICAgIHZhciBQYXJzZU9wdGlvbnM7CiAgICAgIChmdW5jdGlvbihQYXJzZU9wdGlvbnMyKSB7CiAgICAgICAgUGFyc2VPcHRpb25zMi5ERUZBVUxUID0gewogICAgICAgICAgYWxsb3dUcmFpbGluZ0NvbW1hOiBmYWxzZQogICAgICAgIH07CiAgICAgIH0pKFBhcnNlT3B0aW9ucyB8fCAoUGFyc2VPcHRpb25zID0ge30pKTsKICAgICAgZnVuY3Rpb24gZ2V0TG9jYXRpb24odGV4dCwgcG9zaXRpb24pIHsKICAgICAgICBjb25zdCBzZWdtZW50cyA9IFtdOwogICAgICAgIGNvbnN0IGVhcmx5UmV0dXJuRXhjZXB0aW9uID0gbmV3IE9iamVjdCgpOwogICAgICAgIGxldCBwcmV2aW91c05vZGUgPSB2b2lkIDA7CiAgICAgICAgY29uc3QgcHJldmlvdXNOb2RlSW5zdCA9IHsKICAgICAgICAgIHZhbHVlOiB7fSwKICAgICAgICAgIG9mZnNldDogMCwKICAgICAgICAgIGxlbmd0aDogMCwKICAgICAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICAgICAgcGFyZW50OiB2b2lkIDAKICAgICAgICB9OwogICAgICAgIGxldCBpc0F0UHJvcGVydHlLZXkgPSBmYWxzZTsKICAgICAgICBmdW5jdGlvbiBzZXRQcmV2aW91c05vZGUodmFsdWUsIG9mZnNldCwgbGVuZ3RoLCB0eXBlKSB7CiAgICAgICAgICBwcmV2aW91c05vZGVJbnN0LnZhbHVlID0gdmFsdWU7CiAgICAgICAgICBwcmV2aW91c05vZGVJbnN0Lm9mZnNldCA9IG9mZnNldDsKICAgICAgICAgIHByZXZpb3VzTm9kZUluc3QubGVuZ3RoID0gbGVuZ3RoOwogICAgICAgICAgcHJldmlvdXNOb2RlSW5zdC50eXBlID0gdHlwZTsKICAgICAgICAgIHByZXZpb3VzTm9kZUluc3QuY29sb25PZmZzZXQgPSB2b2lkIDA7CiAgICAgICAgICBwcmV2aW91c05vZGUgPSBwcmV2aW91c05vZGVJbnN0OwogICAgICAgIH0KICAgICAgICB0cnkgewogICAgICAgICAgdmlzaXQodGV4dCwgewogICAgICAgICAgICBvbk9iamVjdEJlZ2luOiAob2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgICBpZiAocG9zaXRpb24gPD0gb2Zmc2V0KSB7CiAgICAgICAgICAgICAgICB0aHJvdyBlYXJseVJldHVybkV4Y2VwdGlvbjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgcHJldmlvdXNOb2RlID0gdm9pZCAwOwogICAgICAgICAgICAgIGlzQXRQcm9wZXJ0eUtleSA9IHBvc2l0aW9uID4gb2Zmc2V0OwogICAgICAgICAgICAgIHNlZ21lbnRzLnB1c2goIiIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBvbk9iamVjdFByb3BlcnR5OiAobmFtZSwgb2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgICBpZiAocG9zaXRpb24gPCBvZmZzZXQpIHsKICAgICAgICAgICAgICAgIHRocm93IGVhcmx5UmV0dXJuRXhjZXB0aW9uOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBzZXRQcmV2aW91c05vZGUobmFtZSwgb2Zmc2V0LCBsZW5ndGgsICJwcm9wZXJ0eSIpOwogICAgICAgICAgICAgIHNlZ21lbnRzW3NlZ21lbnRzLmxlbmd0aCAtIDFdID0gbmFtZTsKICAgICAgICAgICAgICBpZiAocG9zaXRpb24gPD0gb2Zmc2V0ICsgbGVuZ3RoKSB7CiAgICAgICAgICAgICAgICB0aHJvdyBlYXJseVJldHVybkV4Y2VwdGlvbjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIG9uT2JqZWN0RW5kOiAob2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgICBpZiAocG9zaXRpb24gPD0gb2Zmc2V0KSB7CiAgICAgICAgICAgICAgICB0aHJvdyBlYXJseVJldHVybkV4Y2VwdGlvbjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgcHJldmlvdXNOb2RlID0gdm9pZCAwOwogICAgICAgICAgICAgIHNlZ21lbnRzLnBvcCgpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBvbkFycmF5QmVnaW46IChvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8PSBvZmZzZXQpIHsKICAgICAgICAgICAgICAgIHRocm93IGVhcmx5UmV0dXJuRXhjZXB0aW9uOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBwcmV2aW91c05vZGUgPSB2b2lkIDA7CiAgICAgICAgICAgICAgc2VnbWVudHMucHVzaCgwKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgb25BcnJheUVuZDogKG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgICAgaWYgKHBvc2l0aW9uIDw9IG9mZnNldCkgewogICAgICAgICAgICAgICAgdGhyb3cgZWFybHlSZXR1cm5FeGNlcHRpb247CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHByZXZpb3VzTm9kZSA9IHZvaWQgMDsKICAgICAgICAgICAgICBzZWdtZW50cy5wb3AoKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgb25MaXRlcmFsVmFsdWU6ICh2YWx1ZSwgb2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgICBpZiAocG9zaXRpb24gPCBvZmZzZXQpIHsKICAgICAgICAgICAgICAgIHRocm93IGVhcmx5UmV0dXJuRXhjZXB0aW9uOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBzZXRQcmV2aW91c05vZGUodmFsdWUsIG9mZnNldCwgbGVuZ3RoLCBnZXROb2RlVHlwZSh2YWx1ZSkpOwogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8PSBvZmZzZXQgKyBsZW5ndGgpIHsKICAgICAgICAgICAgICAgIHRocm93IGVhcmx5UmV0dXJuRXhjZXB0aW9uOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgb25TZXBhcmF0b3I6IChzZXAsIG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgICAgaWYgKHBvc2l0aW9uIDw9IG9mZnNldCkgewogICAgICAgICAgICAgICAgdGhyb3cgZWFybHlSZXR1cm5FeGNlcHRpb247CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChzZXAgPT09ICI6IiAmJiBwcmV2aW91c05vZGUgJiYgcHJldmlvdXNOb2RlLnR5cGUgPT09ICJwcm9wZXJ0eSIpIHsKICAgICAgICAgICAgICAgIHByZXZpb3VzTm9kZS5jb2xvbk9mZnNldCA9IG9mZnNldDsKICAgICAgICAgICAgICAgIGlzQXRQcm9wZXJ0eUtleSA9IGZhbHNlOwogICAgICAgICAgICAgICAgcHJldmlvdXNOb2RlID0gdm9pZCAwOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAoc2VwID09PSAiLCIpIHsKICAgICAgICAgICAgICAgIGNvbnN0IGxhc3QgPSBzZWdtZW50c1tzZWdtZW50cy5sZW5ndGggLSAxXTsKICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgbGFzdCA9PT0gIm51bWJlciIpIHsKICAgICAgICAgICAgICAgICAgc2VnbWVudHNbc2VnbWVudHMubGVuZ3RoIC0gMV0gPSBsYXN0ICsgMTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIGlzQXRQcm9wZXJ0eUtleSA9IHRydWU7CiAgICAgICAgICAgICAgICAgIHNlZ21lbnRzW3NlZ21lbnRzLmxlbmd0aCAtIDFdID0gIiI7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBwcmV2aW91c05vZGUgPSB2b2lkIDA7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9KTsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICBpZiAoZSAhPT0gZWFybHlSZXR1cm5FeGNlcHRpb24pIHsKICAgICAgICAgICAgdGhyb3cgZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIHBhdGg6IHNlZ21lbnRzLAogICAgICAgICAgcHJldmlvdXNOb2RlLAogICAgICAgICAgaXNBdFByb3BlcnR5S2V5LAogICAgICAgICAgbWF0Y2hlczogKHBhdHRlcm4pID0+IHsKICAgICAgICAgICAgbGV0IGsgPSAwOwogICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgayA8IHBhdHRlcm4ubGVuZ3RoICYmIGkgPCBzZWdtZW50cy5sZW5ndGg7IGkrKykgewogICAgICAgICAgICAgIGlmIChwYXR0ZXJuW2tdID09PSBzZWdtZW50c1tpXSB8fCBwYXR0ZXJuW2tdID09PSAiKiIpIHsKICAgICAgICAgICAgICAgIGsrKzsKICAgICAgICAgICAgICB9IGVsc2UgaWYgKHBhdHRlcm5ba10gIT09ICIqKiIpIHsKICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIGsgPT09IHBhdHRlcm4ubGVuZ3RoOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgIH0KICAgICAgZXhwb3J0czMuZ2V0TG9jYXRpb24gPSBnZXRMb2NhdGlvbjsKICAgICAgZnVuY3Rpb24gcGFyc2UodGV4dCwgZXJyb3JzID0gW10sIG9wdGlvbnMgPSBQYXJzZU9wdGlvbnMuREVGQVVMVCkgewogICAgICAgIGxldCBjdXJyZW50UHJvcGVydHkgPSBudWxsOwogICAgICAgIGxldCBjdXJyZW50UGFyZW50ID0gW107CiAgICAgICAgY29uc3QgcHJldmlvdXNQYXJlbnRzID0gW107CiAgICAgICAgZnVuY3Rpb24gb25WYWx1ZSh2YWx1ZSkgewogICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoY3VycmVudFBhcmVudCkpIHsKICAgICAgICAgICAgY3VycmVudFBhcmVudC5wdXNoKHZhbHVlKTsKICAgICAgICAgIH0gZWxzZSBpZiAoY3VycmVudFByb3BlcnR5ICE9PSBudWxsKSB7CiAgICAgICAgICAgIGN1cnJlbnRQYXJlbnRbY3VycmVudFByb3BlcnR5XSA9IHZhbHVlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb25zdCB2aXNpdG9yID0gewogICAgICAgICAgb25PYmplY3RCZWdpbjogKCkgPT4gewogICAgICAgICAgICBjb25zdCBvYmplY3QgPSB7fTsKICAgICAgICAgICAgb25WYWx1ZShvYmplY3QpOwogICAgICAgICAgICBwcmV2aW91c1BhcmVudHMucHVzaChjdXJyZW50UGFyZW50KTsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IG9iamVjdDsKICAgICAgICAgICAgY3VycmVudFByb3BlcnR5ID0gbnVsbDsKICAgICAgICAgIH0sCiAgICAgICAgICBvbk9iamVjdFByb3BlcnR5OiAobmFtZSkgPT4gewogICAgICAgICAgICBjdXJyZW50UHJvcGVydHkgPSBuYW1lOwogICAgICAgICAgfSwKICAgICAgICAgIG9uT2JqZWN0RW5kOiAoKSA9PiB7CiAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQgPSBwcmV2aW91c1BhcmVudHMucG9wKCk7CiAgICAgICAgICB9LAogICAgICAgICAgb25BcnJheUJlZ2luOiAoKSA9PiB7CiAgICAgICAgICAgIGNvbnN0IGFycmF5ID0gW107CiAgICAgICAgICAgIG9uVmFsdWUoYXJyYXkpOwogICAgICAgICAgICBwcmV2aW91c1BhcmVudHMucHVzaChjdXJyZW50UGFyZW50KTsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IGFycmF5OwogICAgICAgICAgICBjdXJyZW50UHJvcGVydHkgPSBudWxsOwogICAgICAgICAgfSwKICAgICAgICAgIG9uQXJyYXlFbmQ6ICgpID0+IHsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IHByZXZpb3VzUGFyZW50cy5wb3AoKTsKICAgICAgICAgIH0sCiAgICAgICAgICBvbkxpdGVyYWxWYWx1ZTogb25WYWx1ZSwKICAgICAgICAgIG9uRXJyb3I6IChlcnJvciwgb2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgZXJyb3JzLnB1c2goeyBlcnJvciwgb2Zmc2V0LCBsZW5ndGggfSk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICB2aXNpdCh0ZXh0LCB2aXNpdG9yLCBvcHRpb25zKTsKICAgICAgICByZXR1cm4gY3VycmVudFBhcmVudFswXTsKICAgICAgfQogICAgICBleHBvcnRzMy5wYXJzZSA9IHBhcnNlOwogICAgICBmdW5jdGlvbiBwYXJzZVRyZWUodGV4dCwgZXJyb3JzID0gW10sIG9wdGlvbnMgPSBQYXJzZU9wdGlvbnMuREVGQVVMVCkgewogICAgICAgIGxldCBjdXJyZW50UGFyZW50ID0gewogICAgICAgICAgdHlwZTogImFycmF5IiwKICAgICAgICAgIG9mZnNldDogLTEsCiAgICAgICAgICBsZW5ndGg6IC0xLAogICAgICAgICAgY2hpbGRyZW46IFtdLAogICAgICAgICAgcGFyZW50OiB2b2lkIDAKICAgICAgICB9OwogICAgICAgIGZ1bmN0aW9uIGVuc3VyZVByb3BlcnR5Q29tcGxldGUoZW5kT2Zmc2V0KSB7CiAgICAgICAgICBpZiAoY3VycmVudFBhcmVudC50eXBlID09PSAicHJvcGVydHkiKSB7CiAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQubGVuZ3RoID0gZW5kT2Zmc2V0IC0gY3VycmVudFBhcmVudC5vZmZzZXQ7CiAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQgPSBjdXJyZW50UGFyZW50LnBhcmVudDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gb25WYWx1ZSh2YWx1ZU5vZGUpIHsKICAgICAgICAgIGN1cnJlbnRQYXJlbnQuY2hpbGRyZW4ucHVzaCh2YWx1ZU5vZGUpOwogICAgICAgICAgcmV0dXJuIHZhbHVlTm9kZTsKICAgICAgICB9CiAgICAgICAgY29uc3QgdmlzaXRvciA9IHsKICAgICAgICAgIG9uT2JqZWN0QmVnaW46IChvZmZzZXQpID0+IHsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IG9uVmFsdWUoewogICAgICAgICAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICAgICAgICAgIG9mZnNldCwKICAgICAgICAgICAgICBsZW5ndGg6IC0xLAogICAgICAgICAgICAgIHBhcmVudDogY3VycmVudFBhcmVudCwKICAgICAgICAgICAgICBjaGlsZHJlbjogW10KICAgICAgICAgICAgfSk7CiAgICAgICAgICB9LAogICAgICAgICAgb25PYmplY3RQcm9wZXJ0eTogKG5hbWUsIG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQgPSBvblZhbHVlKHsKICAgICAgICAgICAgICB0eXBlOiAicHJvcGVydHkiLAogICAgICAgICAgICAgIG9mZnNldCwKICAgICAgICAgICAgICBsZW5ndGg6IC0xLAogICAgICAgICAgICAgIHBhcmVudDogY3VycmVudFBhcmVudCwKICAgICAgICAgICAgICBjaGlsZHJlbjogW10KICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQuY2hpbGRyZW4ucHVzaCh7CiAgICAgICAgICAgICAgdHlwZTogInN0cmluZyIsCiAgICAgICAgICAgICAgdmFsdWU6IG5hbWUsCiAgICAgICAgICAgICAgb2Zmc2V0LAogICAgICAgICAgICAgIGxlbmd0aCwKICAgICAgICAgICAgICBwYXJlbnQ6IGN1cnJlbnRQYXJlbnQKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9LAogICAgICAgICAgb25PYmplY3RFbmQ6IChvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICBlbnN1cmVQcm9wZXJ0eUNvbXBsZXRlKG9mZnNldCArIGxlbmd0aCk7CiAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQubGVuZ3RoID0gb2Zmc2V0ICsgbGVuZ3RoIC0gY3VycmVudFBhcmVudC5vZmZzZXQ7CiAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQgPSBjdXJyZW50UGFyZW50LnBhcmVudDsKICAgICAgICAgICAgZW5zdXJlUHJvcGVydHlDb21wbGV0ZShvZmZzZXQgKyBsZW5ndGgpOwogICAgICAgICAgfSwKICAgICAgICAgIG9uQXJyYXlCZWdpbjogKG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQgPSBvblZhbHVlKHsKICAgICAgICAgICAgICB0eXBlOiAiYXJyYXkiLAogICAgICAgICAgICAgIG9mZnNldCwKICAgICAgICAgICAgICBsZW5ndGg6IC0xLAogICAgICAgICAgICAgIHBhcmVudDogY3VycmVudFBhcmVudCwKICAgICAgICAgICAgICBjaGlsZHJlbjogW10KICAgICAgICAgICAgfSk7CiAgICAgICAgICB9LAogICAgICAgICAgb25BcnJheUVuZDogKG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQubGVuZ3RoID0gb2Zmc2V0ICsgbGVuZ3RoIC0gY3VycmVudFBhcmVudC5vZmZzZXQ7CiAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQgPSBjdXJyZW50UGFyZW50LnBhcmVudDsKICAgICAgICAgICAgZW5zdXJlUHJvcGVydHlDb21wbGV0ZShvZmZzZXQgKyBsZW5ndGgpOwogICAgICAgICAgfSwKICAgICAgICAgIG9uTGl0ZXJhbFZhbHVlOiAodmFsdWUsIG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgIG9uVmFsdWUoewogICAgICAgICAgICAgIHR5cGU6IGdldE5vZGVUeXBlKHZhbHVlKSwKICAgICAgICAgICAgICBvZmZzZXQsCiAgICAgICAgICAgICAgbGVuZ3RoLAogICAgICAgICAgICAgIHBhcmVudDogY3VycmVudFBhcmVudCwKICAgICAgICAgICAgICB2YWx1ZQogICAgICAgICAgICB9KTsKICAgICAgICAgICAgZW5zdXJlUHJvcGVydHlDb21wbGV0ZShvZmZzZXQgKyBsZW5ndGgpOwogICAgICAgICAgfSwKICAgICAgICAgIG9uU2VwYXJhdG9yOiAoc2VwLCBvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICBpZiAoY3VycmVudFBhcmVudC50eXBlID09PSAicHJvcGVydHkiKSB7CiAgICAgICAgICAgICAgaWYgKHNlcCA9PT0gIjoiKSB7CiAgICAgICAgICAgICAgICBjdXJyZW50UGFyZW50LmNvbG9uT2Zmc2V0ID0gb2Zmc2V0OwogICAgICAgICAgICAgIH0gZWxzZSBpZiAoc2VwID09PSAiLCIpIHsKICAgICAgICAgICAgICAgIGVuc3VyZVByb3BlcnR5Q29tcGxldGUob2Zmc2V0KTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0sCiAgICAgICAgICBvbkVycm9yOiAoZXJyb3IsIG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgIGVycm9ycy5wdXNoKHsgZXJyb3IsIG9mZnNldCwgbGVuZ3RoIH0pOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgdmlzaXQodGV4dCwgdmlzaXRvciwgb3B0aW9ucyk7CiAgICAgICAgY29uc3QgcmVzdWx0ID0gY3VycmVudFBhcmVudC5jaGlsZHJlblswXTsKICAgICAgICBpZiAocmVzdWx0KSB7CiAgICAgICAgICBkZWxldGUgcmVzdWx0LnBhcmVudDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfQogICAgICBleHBvcnRzMy5wYXJzZVRyZWUgPSBwYXJzZVRyZWU7CiAgICAgIGZ1bmN0aW9uIGZpbmROb2RlQXRMb2NhdGlvbihyb290LCBwYXRoKSB7CiAgICAgICAgaWYgKCFyb290KSB7CiAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgIH0KICAgICAgICBsZXQgbm9kZSA9IHJvb3Q7CiAgICAgICAgZm9yIChsZXQgc2VnbWVudCBvZiBwYXRoKSB7CiAgICAgICAgICBpZiAodHlwZW9mIHNlZ21lbnQgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICAgIGlmIChub2RlLnR5cGUgIT09ICJvYmplY3QiIHx8ICFBcnJheS5pc0FycmF5KG5vZGUuY2hpbGRyZW4pKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgICAgICAgfQogICAgICAgICAgICBsZXQgZm91bmQgPSBmYWxzZTsKICAgICAgICAgICAgZm9yIChjb25zdCBwcm9wZXJ0eU5vZGUgb2Ygbm9kZS5jaGlsZHJlbikgewogICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHByb3BlcnR5Tm9kZS5jaGlsZHJlbikgJiYgcHJvcGVydHlOb2RlLmNoaWxkcmVuWzBdLnZhbHVlID09PSBzZWdtZW50ICYmIHByb3BlcnR5Tm9kZS5jaGlsZHJlbi5sZW5ndGggPT09IDIpIHsKICAgICAgICAgICAgICAgIG5vZGUgPSBwcm9wZXJ0eU5vZGUuY2hpbGRyZW5bMV07CiAgICAgICAgICAgICAgICBmb3VuZCA9IHRydWU7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKCFmb3VuZCkgewogICAgICAgICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IGluZGV4ID0gc2VnbWVudDsKICAgICAgICAgICAgaWYgKG5vZGUudHlwZSAhPT0gImFycmF5IiB8fCBpbmRleCA8IDAgfHwgIUFycmF5LmlzQXJyYXkobm9kZS5jaGlsZHJlbikgfHwgaW5kZXggPj0gbm9kZS5jaGlsZHJlbi5sZW5ndGgpIHsKICAgICAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgICAgICB9CiAgICAgICAgICAgIG5vZGUgPSBub2RlLmNoaWxkcmVuW2luZGV4XTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5vZGU7CiAgICAgIH0KICAgICAgZXhwb3J0czMuZmluZE5vZGVBdExvY2F0aW9uID0gZmluZE5vZGVBdExvY2F0aW9uOwogICAgICBmdW5jdGlvbiBnZXROb2RlUGF0aChub2RlKSB7CiAgICAgICAgaWYgKCFub2RlLnBhcmVudCB8fCAhbm9kZS5wYXJlbnQuY2hpbGRyZW4pIHsKICAgICAgICAgIHJldHVybiBbXTsKICAgICAgICB9CiAgICAgICAgY29uc3QgcGF0aCA9IGdldE5vZGVQYXRoKG5vZGUucGFyZW50KTsKICAgICAgICBpZiAobm9kZS5wYXJlbnQudHlwZSA9PT0gInByb3BlcnR5IikgewogICAgICAgICAgY29uc3Qga2V5ID0gbm9kZS5wYXJlbnQuY2hpbGRyZW5bMF0udmFsdWU7CiAgICAgICAgICBwYXRoLnB1c2goa2V5KTsKICAgICAgICB9IGVsc2UgaWYgKG5vZGUucGFyZW50LnR5cGUgPT09ICJhcnJheSIpIHsKICAgICAgICAgIGNvbnN0IGluZGV4ID0gbm9kZS5wYXJlbnQuY2hpbGRyZW4uaW5kZXhPZihub2RlKTsKICAgICAgICAgIGlmIChpbmRleCAhPT0gLTEpIHsKICAgICAgICAgICAgcGF0aC5wdXNoKGluZGV4KTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIHBhdGg7CiAgICAgIH0KICAgICAgZXhwb3J0czMuZ2V0Tm9kZVBhdGggPSBnZXROb2RlUGF0aDsKICAgICAgZnVuY3Rpb24gZ2V0Tm9kZVZhbHVlKG5vZGUpIHsKICAgICAgICBzd2l0Y2ggKG5vZGUudHlwZSkgewogICAgICAgICAgY2FzZSAiYXJyYXkiOgogICAgICAgICAgICByZXR1cm4gbm9kZS5jaGlsZHJlbi5tYXAoZ2V0Tm9kZVZhbHVlKTsKICAgICAgICAgIGNhc2UgIm9iamVjdCI6CiAgICAgICAgICAgIGNvbnN0IG9iaiA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICAgICAgICBmb3IgKGxldCBwcm9wIG9mIG5vZGUuY2hpbGRyZW4pIHsKICAgICAgICAgICAgICBjb25zdCB2YWx1ZU5vZGUgPSBwcm9wLmNoaWxkcmVuWzFdOwogICAgICAgICAgICAgIGlmICh2YWx1ZU5vZGUpIHsKICAgICAgICAgICAgICAgIG9ialtwcm9wLmNoaWxkcmVuWzBdLnZhbHVlXSA9IGdldE5vZGVWYWx1ZSh2YWx1ZU5vZGUpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gb2JqOwogICAgICAgICAgY2FzZSAibnVsbCI6CiAgICAgICAgICBjYXNlICJzdHJpbmciOgogICAgICAgICAgY2FzZSAibnVtYmVyIjoKICAgICAgICAgIGNhc2UgImJvb2xlYW4iOgogICAgICAgICAgICByZXR1cm4gbm9kZS52YWx1ZTsKICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgICAgfQogICAgICB9CiAgICAgIGV4cG9ydHMzLmdldE5vZGVWYWx1ZSA9IGdldE5vZGVWYWx1ZTsKICAgICAgZnVuY3Rpb24gY29udGFpbnMobm9kZSwgb2Zmc2V0LCBpbmNsdWRlUmlnaHRCb3VuZCA9IGZhbHNlKSB7CiAgICAgICAgcmV0dXJuIG9mZnNldCA+PSBub2RlLm9mZnNldCAmJiBvZmZzZXQgPCBub2RlLm9mZnNldCArIG5vZGUubGVuZ3RoIHx8IGluY2x1ZGVSaWdodEJvdW5kICYmIG9mZnNldCA9PT0gbm9kZS5vZmZzZXQgKyBub2RlLmxlbmd0aDsKICAgICAgfQogICAgICBleHBvcnRzMy5jb250YWlucyA9IGNvbnRhaW5zOwogICAgICBmdW5jdGlvbiBmaW5kTm9kZUF0T2Zmc2V0KG5vZGUsIG9mZnNldCwgaW5jbHVkZVJpZ2h0Qm91bmQgPSBmYWxzZSkgewogICAgICAgIGlmIChjb250YWlucyhub2RlLCBvZmZzZXQsIGluY2x1ZGVSaWdodEJvdW5kKSkgewogICAgICAgICAgY29uc3QgY2hpbGRyZW4gPSBub2RlLmNoaWxkcmVuOwogICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoY2hpbGRyZW4pKSB7CiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY2hpbGRyZW4ubGVuZ3RoICYmIGNoaWxkcmVuW2ldLm9mZnNldCA8PSBvZmZzZXQ7IGkrKykgewogICAgICAgICAgICAgIGNvbnN0IGl0ZW0gPSBmaW5kTm9kZUF0T2Zmc2V0KGNoaWxkcmVuW2ldLCBvZmZzZXQsIGluY2x1ZGVSaWdodEJvdW5kKTsKICAgICAgICAgICAgICBpZiAoaXRlbSkgewogICAgICAgICAgICAgICAgcmV0dXJuIGl0ZW07CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gbm9kZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgfQogICAgICBleHBvcnRzMy5maW5kTm9kZUF0T2Zmc2V0ID0gZmluZE5vZGVBdE9mZnNldDsKICAgICAgZnVuY3Rpb24gdmlzaXQodGV4dCwgdmlzaXRvciwgb3B0aW9ucyA9IFBhcnNlT3B0aW9ucy5ERUZBVUxUKSB7CiAgICAgICAgY29uc3QgX3NjYW5uZXIgPSAoMCwgc2Nhbm5lcl8xLmNyZWF0ZVNjYW5uZXIpKHRleHQsIGZhbHNlKTsKICAgICAgICBjb25zdCBfanNvblBhdGggPSBbXTsKICAgICAgICBsZXQgc3VwcHJlc3NlZENhbGxiYWNrcyA9IDA7CiAgICAgICAgZnVuY3Rpb24gdG9Ob0FyZ1Zpc2l0KHZpc2l0RnVuY3Rpb24pIHsKICAgICAgICAgIHJldHVybiB2aXNpdEZ1bmN0aW9uID8gKCkgPT4gc3VwcHJlc3NlZENhbGxiYWNrcyA9PT0gMCAmJiB2aXNpdEZ1bmN0aW9uKAogICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlbk9mZnNldCgpLAogICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlbkxlbmd0aCgpLAogICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlblN0YXJ0TGluZSgpLAogICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlblN0YXJ0Q2hhcmFjdGVyKCkKICAgICAgICAgICkgOiAoKSA9PiB0cnVlOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiB0b09uZUFyZ1Zpc2l0KHZpc2l0RnVuY3Rpb24pIHsKICAgICAgICAgIHJldHVybiB2aXNpdEZ1bmN0aW9uID8gKGFyZykgPT4gc3VwcHJlc3NlZENhbGxiYWNrcyA9PT0gMCAmJiB2aXNpdEZ1bmN0aW9uKAogICAgICAgICAgICBhcmcsCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuT2Zmc2V0KCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuTGVuZ3RoKCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRMaW5lKCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRDaGFyYWN0ZXIoKQogICAgICAgICAgKSA6ICgpID0+IHRydWU7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHRvT25lQXJnVmlzaXRXaXRoUGF0aCh2aXNpdEZ1bmN0aW9uKSB7CiAgICAgICAgICByZXR1cm4gdmlzaXRGdW5jdGlvbiA/IChhcmcpID0+IHN1cHByZXNzZWRDYWxsYmFja3MgPT09IDAgJiYgdmlzaXRGdW5jdGlvbigKICAgICAgICAgICAgYXJnLAogICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlbk9mZnNldCgpLAogICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlbkxlbmd0aCgpLAogICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlblN0YXJ0TGluZSgpLAogICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlblN0YXJ0Q2hhcmFjdGVyKCksCiAgICAgICAgICAgICgpID0+IF9qc29uUGF0aC5zbGljZSgpCiAgICAgICAgICApIDogKCkgPT4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gdG9CZWdpblZpc2l0KHZpc2l0RnVuY3Rpb24pIHsKICAgICAgICAgIHJldHVybiB2aXNpdEZ1bmN0aW9uID8gKCkgPT4gewogICAgICAgICAgICBpZiAoc3VwcHJlc3NlZENhbGxiYWNrcyA+IDApIHsKICAgICAgICAgICAgICBzdXBwcmVzc2VkQ2FsbGJhY2tzKys7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgbGV0IGNiUmV0dXJuID0gdmlzaXRGdW5jdGlvbigKICAgICAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuT2Zmc2V0KCksCiAgICAgICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlbkxlbmd0aCgpLAogICAgICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5TdGFydExpbmUoKSwKICAgICAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRDaGFyYWN0ZXIoKSwKICAgICAgICAgICAgICAgICgpID0+IF9qc29uUGF0aC5zbGljZSgpCiAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICBpZiAoY2JSZXR1cm4gPT09IGZhbHNlKSB7CiAgICAgICAgICAgICAgICBzdXBwcmVzc2VkQ2FsbGJhY2tzID0gMTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gOiAoKSA9PiB0cnVlOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiB0b0VuZFZpc2l0KHZpc2l0RnVuY3Rpb24pIHsKICAgICAgICAgIHJldHVybiB2aXNpdEZ1bmN0aW9uID8gKCkgPT4gewogICAgICAgICAgICBpZiAoc3VwcHJlc3NlZENhbGxiYWNrcyA+IDApIHsKICAgICAgICAgICAgICBzdXBwcmVzc2VkQ2FsbGJhY2tzLS07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHN1cHByZXNzZWRDYWxsYmFja3MgPT09IDApIHsKICAgICAgICAgICAgICB2aXNpdEZ1bmN0aW9uKAogICAgICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5PZmZzZXQoKSwKICAgICAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuTGVuZ3RoKCksCiAgICAgICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlblN0YXJ0TGluZSgpLAogICAgICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5TdGFydENoYXJhY3RlcigpCiAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSA6ICgpID0+IHRydWU7CiAgICAgICAgfQogICAgICAgIGNvbnN0IG9uT2JqZWN0QmVnaW4gPSB0b0JlZ2luVmlzaXQodmlzaXRvci5vbk9iamVjdEJlZ2luKSwgb25PYmplY3RQcm9wZXJ0eSA9IHRvT25lQXJnVmlzaXRXaXRoUGF0aCh2aXNpdG9yLm9uT2JqZWN0UHJvcGVydHkpLCBvbk9iamVjdEVuZCA9IHRvRW5kVmlzaXQodmlzaXRvci5vbk9iamVjdEVuZCksIG9uQXJyYXlCZWdpbiA9IHRvQmVnaW5WaXNpdCh2aXNpdG9yLm9uQXJyYXlCZWdpbiksIG9uQXJyYXlFbmQgPSB0b0VuZFZpc2l0KHZpc2l0b3Iub25BcnJheUVuZCksIG9uTGl0ZXJhbFZhbHVlID0gdG9PbmVBcmdWaXNpdFdpdGhQYXRoKHZpc2l0b3Iub25MaXRlcmFsVmFsdWUpLCBvblNlcGFyYXRvciA9IHRvT25lQXJnVmlzaXQodmlzaXRvci5vblNlcGFyYXRvciksIG9uQ29tbWVudCA9IHRvTm9BcmdWaXNpdCh2aXNpdG9yLm9uQ29tbWVudCksIG9uRXJyb3IgPSB0b09uZUFyZ1Zpc2l0KHZpc2l0b3Iub25FcnJvcik7CiAgICAgICAgY29uc3QgZGlzYWxsb3dDb21tZW50cyA9IG9wdGlvbnMgJiYgb3B0aW9ucy5kaXNhbGxvd0NvbW1lbnRzOwogICAgICAgIGNvbnN0IGFsbG93VHJhaWxpbmdDb21tYSA9IG9wdGlvbnMgJiYgb3B0aW9ucy5hbGxvd1RyYWlsaW5nQ29tbWE7CiAgICAgICAgZnVuY3Rpb24gc2Nhbk5leHQoKSB7CiAgICAgICAgICB3aGlsZSAodHJ1ZSkgewogICAgICAgICAgICBjb25zdCB0b2tlbiA9IF9zY2FubmVyLnNjYW4oKTsKICAgICAgICAgICAgc3dpdGNoIChfc2Nhbm5lci5nZXRUb2tlbkVycm9yKCkpIHsKICAgICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgMTQKICAgICAgICAgICAgICAgICAgLyogUGFyc2VFcnJvckNvZGUuSW52YWxpZFVuaWNvZGUgKi8KICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDU6CiAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgMTUKICAgICAgICAgICAgICAgICAgLyogUGFyc2VFcnJvckNvZGUuSW52YWxpZEVzY2FwZUNoYXJhY3RlciAqLwogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgMzoKICAgICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgICAxMwogICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5VbmV4cGVjdGVkRW5kT2ZOdW1iZXIgKi8KICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDE6CiAgICAgICAgICAgICAgICBpZiAoIWRpc2FsbG93Q29tbWVudHMpIHsKICAgICAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICAgICAgMTEKICAgICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5VbmV4cGVjdGVkRW5kT2ZDb21tZW50ICovCiAgICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgMTIKICAgICAgICAgICAgICAgICAgLyogUGFyc2VFcnJvckNvZGUuVW5leHBlY3RlZEVuZE9mU3RyaW5nICovCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSA2OgogICAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICAgIDE2CiAgICAgICAgICAgICAgICAgIC8qIFBhcnNlRXJyb3JDb2RlLkludmFsaWRDaGFyYWN0ZXIgKi8KICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgICBzd2l0Y2ggKHRva2VuKSB7CiAgICAgICAgICAgICAgY2FzZSAxMjoKICAgICAgICAgICAgICBjYXNlIDEzOgogICAgICAgICAgICAgICAgaWYgKGRpc2FsbG93Q29tbWVudHMpIHsKICAgICAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICAgICAgMTAKICAgICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5JbnZhbGlkQ29tbWVudFRva2VuICovCiAgICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICBvbkNvbW1lbnQoKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgMTY6CiAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgMQogICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5JbnZhbGlkU3ltYm9sICovCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxNToKICAgICAgICAgICAgICBjYXNlIDE0OgogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICAgIHJldHVybiB0b2tlbjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBoYW5kbGVFcnJvcihlcnJvciwgc2tpcFVudGlsQWZ0ZXIgPSBbXSwgc2tpcFVudGlsID0gW10pIHsKICAgICAgICAgIG9uRXJyb3IoZXJyb3IpOwogICAgICAgICAgaWYgKHNraXBVbnRpbEFmdGVyLmxlbmd0aCArIHNraXBVbnRpbC5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgIGxldCB0b2tlbiA9IF9zY2FubmVyLmdldFRva2VuKCk7CiAgICAgICAgICAgIHdoaWxlICh0b2tlbiAhPT0gMTcpIHsKICAgICAgICAgICAgICBpZiAoc2tpcFVudGlsQWZ0ZXIuaW5kZXhPZih0b2tlbikgIT09IC0xKSB7CiAgICAgICAgICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfSBlbHNlIGlmIChza2lwVW50aWwuaW5kZXhPZih0b2tlbikgIT09IC0xKSB7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgdG9rZW4gPSBzY2FuTmV4dCgpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHBhcnNlU3RyaW5nKGlzVmFsdWUpIHsKICAgICAgICAgIGNvbnN0IHZhbHVlID0gX3NjYW5uZXIuZ2V0VG9rZW5WYWx1ZSgpOwogICAgICAgICAgaWYgKGlzVmFsdWUpIHsKICAgICAgICAgICAgb25MaXRlcmFsVmFsdWUodmFsdWUpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgb25PYmplY3RQcm9wZXJ0eSh2YWx1ZSk7CiAgICAgICAgICAgIF9qc29uUGF0aC5wdXNoKHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICAgIHNjYW5OZXh0KCk7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gcGFyc2VMaXRlcmFsKCkgewogICAgICAgICAgc3dpdGNoIChfc2Nhbm5lci5nZXRUb2tlbigpKSB7CiAgICAgICAgICAgIGNhc2UgMTE6CiAgICAgICAgICAgICAgY29uc3QgdG9rZW5WYWx1ZSA9IF9zY2FubmVyLmdldFRva2VuVmFsdWUoKTsKICAgICAgICAgICAgICBsZXQgdmFsdWUgPSBOdW1iZXIodG9rZW5WYWx1ZSk7CiAgICAgICAgICAgICAgaWYgKGlzTmFOKHZhbHVlKSkgewogICAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICAgIDIKICAgICAgICAgICAgICAgICAgLyogUGFyc2VFcnJvckNvZGUuSW52YWxpZE51bWJlckZvcm1hdCAqLwogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIHZhbHVlID0gMDsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgb25MaXRlcmFsVmFsdWUodmFsdWUpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIDc6CiAgICAgICAgICAgICAgb25MaXRlcmFsVmFsdWUobnVsbCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgODoKICAgICAgICAgICAgICBvbkxpdGVyYWxWYWx1ZSh0cnVlKTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSA5OgogICAgICAgICAgICAgIG9uTGl0ZXJhbFZhbHVlKGZhbHNlKTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHBhcnNlUHJvcGVydHkoKSB7CiAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSAhPT0gMTApIHsKICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgMywKICAgICAgICAgICAgICBbXSwKICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAyLAogICAgICAgICAgICAgICAgNQogICAgICAgICAgICAgICAgLyogU3ludGF4S2luZC5Db21tYVRva2VuICovCiAgICAgICAgICAgICAgXQogICAgICAgICAgICApOwogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICBwYXJzZVN0cmluZyhmYWxzZSk7CiAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSA9PT0gNikgewogICAgICAgICAgICBvblNlcGFyYXRvcigiOiIpOwogICAgICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgICAgICBpZiAoIXBhcnNlVmFsdWUoKSkgewogICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgNCwKICAgICAgICAgICAgICAgIFtdLAogICAgICAgICAgICAgICAgWwogICAgICAgICAgICAgICAgICAyLAogICAgICAgICAgICAgICAgICA1CiAgICAgICAgICAgICAgICAgIC8qIFN5bnRheEtpbmQuQ29tbWFUb2tlbiAqLwogICAgICAgICAgICAgICAgXQogICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgIDUsCiAgICAgICAgICAgICAgW10sCiAgICAgICAgICAgICAgWwogICAgICAgICAgICAgICAgMiwKICAgICAgICAgICAgICAgIDUKICAgICAgICAgICAgICAgIC8qIFN5bnRheEtpbmQuQ29tbWFUb2tlbiAqLwogICAgICAgICAgICAgIF0KICAgICAgICAgICAgKTsKICAgICAgICAgIH0KICAgICAgICAgIF9qc29uUGF0aC5wb3AoKTsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBwYXJzZU9iamVjdCgpIHsKICAgICAgICAgIG9uT2JqZWN0QmVnaW4oKTsKICAgICAgICAgIHNjYW5OZXh0KCk7CiAgICAgICAgICBsZXQgbmVlZHNDb21tYSA9IGZhbHNlOwogICAgICAgICAgd2hpbGUgKF9zY2FubmVyLmdldFRva2VuKCkgIT09IDIgJiYgX3NjYW5uZXIuZ2V0VG9rZW4oKSAhPT0gMTcpIHsKICAgICAgICAgICAgaWYgKF9zY2FubmVyLmdldFRva2VuKCkgPT09IDUpIHsKICAgICAgICAgICAgICBpZiAoIW5lZWRzQ29tbWEpIHsKICAgICAgICAgICAgICAgIGhhbmRsZUVycm9yKDQsIFtdLCBbXSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIG9uU2VwYXJhdG9yKCIsIik7CiAgICAgICAgICAgICAgc2Nhbk5leHQoKTsKICAgICAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSA9PT0gMiAmJiBhbGxvd1RyYWlsaW5nQ29tbWEpIHsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIGlmIChuZWVkc0NvbW1hKSB7CiAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoNiwgW10sIFtdKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoIXBhcnNlUHJvcGVydHkoKSkgewogICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgNCwKICAgICAgICAgICAgICAgIFtdLAogICAgICAgICAgICAgICAgWwogICAgICAgICAgICAgICAgICAyLAogICAgICAgICAgICAgICAgICA1CiAgICAgICAgICAgICAgICAgIC8qIFN5bnRheEtpbmQuQ29tbWFUb2tlbiAqLwogICAgICAgICAgICAgICAgXQogICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbmVlZHNDb21tYSA9IHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICBvbk9iamVjdEVuZCgpOwogICAgICAgICAgaWYgKF9zY2FubmVyLmdldFRva2VuKCkgIT09IDIpIHsKICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgNywKICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAyCiAgICAgICAgICAgICAgICAvKiBTeW50YXhLaW5kLkNsb3NlQnJhY2VUb2tlbiAqLwogICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgW10KICAgICAgICAgICAgKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHNjYW5OZXh0KCk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gcGFyc2VBcnJheSgpIHsKICAgICAgICAgIG9uQXJyYXlCZWdpbigpOwogICAgICAgICAgc2Nhbk5leHQoKTsKICAgICAgICAgIGxldCBpc0ZpcnN0RWxlbWVudCA9IHRydWU7CiAgICAgICAgICBsZXQgbmVlZHNDb21tYSA9IGZhbHNlOwogICAgICAgICAgd2hpbGUgKF9zY2FubmVyLmdldFRva2VuKCkgIT09IDQgJiYgX3NjYW5uZXIuZ2V0VG9rZW4oKSAhPT0gMTcpIHsKICAgICAgICAgICAgaWYgKF9zY2FubmVyLmdldFRva2VuKCkgPT09IDUpIHsKICAgICAgICAgICAgICBpZiAoIW5lZWRzQ29tbWEpIHsKICAgICAgICAgICAgICAgIGhhbmRsZUVycm9yKDQsIFtdLCBbXSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIG9uU2VwYXJhdG9yKCIsIik7CiAgICAgICAgICAgICAgc2Nhbk5leHQoKTsKICAgICAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSA9PT0gNCAmJiBhbGxvd1RyYWlsaW5nQ29tbWEpIHsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIGlmIChuZWVkc0NvbW1hKSB7CiAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoNiwgW10sIFtdKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoaXNGaXJzdEVsZW1lbnQpIHsKICAgICAgICAgICAgICBfanNvblBhdGgucHVzaCgwKTsKICAgICAgICAgICAgICBpc0ZpcnN0RWxlbWVudCA9IGZhbHNlOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIF9qc29uUGF0aFtfanNvblBhdGgubGVuZ3RoIC0gMV0rKzsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoIXBhcnNlVmFsdWUoKSkgewogICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgNCwKICAgICAgICAgICAgICAgIFtdLAogICAgICAgICAgICAgICAgWwogICAgICAgICAgICAgICAgICA0LAogICAgICAgICAgICAgICAgICA1CiAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBuZWVkc0NvbW1hID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIG9uQXJyYXlFbmQoKTsKICAgICAgICAgIGlmICghaXNGaXJzdEVsZW1lbnQpIHsKICAgICAgICAgICAgX2pzb25QYXRoLnBvcCgpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKF9zY2FubmVyLmdldFRva2VuKCkgIT09IDQpIHsKICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgOCwKICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICA0CiAgICAgICAgICAgICAgICAvKiBTeW50YXhLaW5kLkNsb3NlQnJhY2tldFRva2VuICovCiAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICBbXQogICAgICAgICAgICApOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc2Nhbk5leHQoKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBwYXJzZVZhbHVlKCkgewogICAgICAgICAgc3dpdGNoIChfc2Nhbm5lci5nZXRUb2tlbigpKSB7CiAgICAgICAgICAgIGNhc2UgMzoKICAgICAgICAgICAgICByZXR1cm4gcGFyc2VBcnJheSgpOwogICAgICAgICAgICBjYXNlIDE6CiAgICAgICAgICAgICAgcmV0dXJuIHBhcnNlT2JqZWN0KCk7CiAgICAgICAgICAgIGNhc2UgMTA6CiAgICAgICAgICAgICAgcmV0dXJuIHBhcnNlU3RyaW5nKHRydWUpOwogICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgIHJldHVybiBwYXJzZUxpdGVyYWwoKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgc2Nhbk5leHQoKTsKICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSA9PT0gMTcpIHsKICAgICAgICAgIGlmIChvcHRpb25zLmFsbG93RW1wdHlDb250ZW50KSB7CiAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgaGFuZGxlRXJyb3IoNCwgW10sIFtdKTsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CiAgICAgICAgaWYgKCFwYXJzZVZhbHVlKCkpIHsKICAgICAgICAgIGhhbmRsZUVycm9yKDQsIFtdLCBbXSk7CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfQogICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpICE9PSAxNykgewogICAgICAgICAgaGFuZGxlRXJyb3IoOSwgW10sIFtdKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0KICAgICAgZXhwb3J0czMudmlzaXQgPSB2aXNpdDsKICAgICAgZnVuY3Rpb24gc3RyaXBDb21tZW50cyh0ZXh0LCByZXBsYWNlQ2gpIHsKICAgICAgICBsZXQgX3NjYW5uZXIgPSAoMCwgc2Nhbm5lcl8xLmNyZWF0ZVNjYW5uZXIpKHRleHQpLCBwYXJ0cyA9IFtdLCBraW5kLCBvZmZzZXQgPSAwLCBwb3M7CiAgICAgICAgZG8gewogICAgICAgICAgcG9zID0gX3NjYW5uZXIuZ2V0UG9zaXRpb24oKTsKICAgICAgICAgIGtpbmQgPSBfc2Nhbm5lci5zY2FuKCk7CiAgICAgICAgICBzd2l0Y2ggKGtpbmQpIHsKICAgICAgICAgICAgY2FzZSAxMjoKICAgICAgICAgICAgY2FzZSAxMzoKICAgICAgICAgICAgY2FzZSAxNzoKICAgICAgICAgICAgICBpZiAob2Zmc2V0ICE9PSBwb3MpIHsKICAgICAgICAgICAgICAgIHBhcnRzLnB1c2godGV4dC5zdWJzdHJpbmcob2Zmc2V0LCBwb3MpKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHJlcGxhY2VDaCAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgICBwYXJ0cy5wdXNoKF9zY2FubmVyLmdldFRva2VuVmFsdWUoKS5yZXBsYWNlKC9bXlxyXG5dL2csIHJlcGxhY2VDaCkpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBvZmZzZXQgPSBfc2Nhbm5lci5nZXRQb3NpdGlvbigpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgIH0gd2hpbGUgKGtpbmQgIT09IDE3KTsKICAgICAgICByZXR1cm4gcGFydHMuam9pbigiIik7CiAgICAgIH0KICAgICAgZXhwb3J0czMuc3RyaXBDb21tZW50cyA9IHN0cmlwQ29tbWVudHM7CiAgICAgIGZ1bmN0aW9uIGdldE5vZGVUeXBlKHZhbHVlKSB7CiAgICAgICAgc3dpdGNoICh0eXBlb2YgdmFsdWUpIHsKICAgICAgICAgIGNhc2UgImJvb2xlYW4iOgogICAgICAgICAgICByZXR1cm4gImJvb2xlYW4iOwogICAgICAgICAgY2FzZSAibnVtYmVyIjoKICAgICAgICAgICAgcmV0dXJuICJudW1iZXIiOwogICAgICAgICAgY2FzZSAic3RyaW5nIjoKICAgICAgICAgICAgcmV0dXJuICJzdHJpbmciOwogICAgICAgICAgY2FzZSAib2JqZWN0IjogewogICAgICAgICAgICBpZiAoIXZhbHVlKSB7CiAgICAgICAgICAgICAgcmV0dXJuICJudWxsIjsKICAgICAgICAgICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkgewogICAgICAgICAgICAgIHJldHVybiAiYXJyYXkiOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiAib2JqZWN0IjsKICAgICAgICAgIH0KICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgIHJldHVybiAibnVsbCI7CiAgICAgICAgfQogICAgICB9CiAgICAgIGV4cG9ydHMzLmdldE5vZGVUeXBlID0gZ2V0Tm9kZVR5cGU7CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvanNvbmMtcGFyc2VyLXBhdGNoLWQyMGY2NzE4MzYtNDVkMWFlNjIzNi56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvZWRpdC5qcwp2YXIgcmVxdWlyZV9lZGl0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL2pzb25jLXBhcnNlci1wYXRjaC1kMjBmNjcxODM2LTQ1ZDFhZTYyMzYuemlwL25vZGVfbW9kdWxlcy9qc29uYy1wYXJzZXIvbGliL3VtZC9pbXBsL2VkaXQuanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICB2YXIgZm9ybWF0XzEgPSByZXF1aXJlX2Zvcm1hdDMoKTsKICAgIHZhciBwYXJzZXJfMSA9IHJlcXVpcmVfcGFyc2VyKCk7CiAgICAoZnVuY3Rpb24oZmFjdG9yeSkgewogICAgICBpZiAodHlwZW9mIG1vZHVsZTIgPT09ICJvYmplY3QiICYmIHR5cGVvZiBtb2R1bGUyLmV4cG9ydHMgPT09ICJvYmplY3QiKSB7CiAgICAgICAgdmFyIHYgPSBmYWN0b3J5KHJlcXVpcmUsIGV4cG9ydHMyKTsKICAgICAgICBpZiAodiAhPT0gdm9pZCAwKSBtb2R1bGUyLmV4cG9ydHMgPSB2OwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBkZWZpbmUgPT09ICJmdW5jdGlvbiIgJiYgZGVmaW5lLmFtZCkgewogICAgICAgIGRlZmluZShbInJlcXVpcmUiLCAiZXhwb3J0cyIsICIuL2Zvcm1hdCIsICIuL3BhcnNlciJdLCBmYWN0b3J5KTsKICAgICAgfQogICAgfSkoZnVuY3Rpb24ocmVxdWlyZTIsIGV4cG9ydHMzKSB7CiAgICAgICJ1c2Ugc3RyaWN0IjsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMzLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICAgIGV4cG9ydHMzLmlzV1MgPSBleHBvcnRzMy5hcHBseUVkaXQgPSBleHBvcnRzMy5zZXRQcm9wZXJ0eSA9IGV4cG9ydHMzLnJlbW92ZVByb3BlcnR5ID0gdm9pZCAwOwogICAgICBmdW5jdGlvbiByZW1vdmVQcm9wZXJ0eSh0ZXh0LCBwYXRoLCBvcHRpb25zKSB7CiAgICAgICAgcmV0dXJuIHNldFByb3BlcnR5KHRleHQsIHBhdGgsIHZvaWQgMCwgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgZXhwb3J0czMucmVtb3ZlUHJvcGVydHkgPSByZW1vdmVQcm9wZXJ0eTsKICAgICAgZnVuY3Rpb24gc2V0UHJvcGVydHkodGV4dCwgb3JpZ2luYWxQYXRoLCB2YWx1ZSwgb3B0aW9ucykgewogICAgICAgIGNvbnN0IHBhdGggPSBvcmlnaW5hbFBhdGguc2xpY2UoKTsKICAgICAgICBjb25zdCBlcnJvcnMgPSBbXTsKICAgICAgICBjb25zdCByb290ID0gKDAsIHBhcnNlcl8xLnBhcnNlVHJlZSkodGV4dCwgZXJyb3JzKTsKICAgICAgICBsZXQgcGFyZW50ID0gdm9pZCAwOwogICAgICAgIGxldCBsYXN0U2VnbWVudCA9IHZvaWQgMDsKICAgICAgICB3aGlsZSAocGF0aC5sZW5ndGggPiAwKSB7CiAgICAgICAgICBsYXN0U2VnbWVudCA9IHBhdGgucG9wKCk7CiAgICAgICAgICBwYXJlbnQgPSAoMCwgcGFyc2VyXzEuZmluZE5vZGVBdExvY2F0aW9uKShyb290LCBwYXRoKTsKICAgICAgICAgIGlmIChwYXJlbnQgPT09IHZvaWQgMCAmJiB2YWx1ZSAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2YgbGFzdFNlZ21lbnQgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICAgICAgdmFsdWUgPSB7IFtsYXN0U2VnbWVudF06IHZhbHVlIH07CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgdmFsdWUgPSBbdmFsdWVdOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKCFwYXJlbnQpIHsKICAgICAgICAgIGlmICh2YWx1ZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiQ2FuIG5vdCBkZWxldGUgaW4gZW1wdHkgZG9jdW1lbnQiKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB3aXRoRm9ybWF0dGluZygKICAgICAgICAgICAgdGV4dCwKICAgICAgICAgICAgewogICAgICAgICAgICAgIG9mZnNldDogcm9vdCA/IHJvb3Qub2Zmc2V0IDogMCwKICAgICAgICAgICAgICBsZW5ndGg6IHJvb3QgPyByb290Lmxlbmd0aCA6IDAsCiAgICAgICAgICAgICAgY29udGVudDogSlNPTi5zdHJpbmdpZnkodmFsdWUpCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIG9wdGlvbnMKICAgICAgICAgICk7CiAgICAgICAgfSBlbHNlIGlmIChwYXJlbnQudHlwZSA9PT0gIm9iamVjdCIgJiYgdHlwZW9mIGxhc3RTZWdtZW50ID09PSAic3RyaW5nIiAmJiBBcnJheS5pc0FycmF5KHBhcmVudC5jaGlsZHJlbikpIHsKICAgICAgICAgIGNvbnN0IGV4aXN0aW5nID0gKDAsIHBhcnNlcl8xLmZpbmROb2RlQXRMb2NhdGlvbikocGFyZW50LCBbbGFzdFNlZ21lbnRdKTsKICAgICAgICAgIGlmIChleGlzdGluZyAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgIGlmICh2YWx1ZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgaWYgKCFleGlzdGluZy5wYXJlbnQpIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiTWFsZm9ybWVkIEFTVCIpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBjb25zdCBwcm9wZXJ0eUluZGV4ID0gcGFyZW50LmNoaWxkcmVuLmluZGV4T2YoZXhpc3RpbmcucGFyZW50KTsKICAgICAgICAgICAgICBsZXQgcmVtb3ZlQmVnaW47CiAgICAgICAgICAgICAgbGV0IHJlbW92ZUVuZCA9IGV4aXN0aW5nLnBhcmVudC5vZmZzZXQgKyBleGlzdGluZy5wYXJlbnQubGVuZ3RoOwogICAgICAgICAgICAgIGlmIChwcm9wZXJ0eUluZGV4ID4gMCkgewogICAgICAgICAgICAgICAgbGV0IHByZXZpb3VzID0gcGFyZW50LmNoaWxkcmVuW3Byb3BlcnR5SW5kZXggLSAxXTsKICAgICAgICAgICAgICAgIHJlbW92ZUJlZ2luID0gcHJldmlvdXMub2Zmc2V0ICsgcHJldmlvdXMubGVuZ3RoOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICByZW1vdmVCZWdpbiA9IHBhcmVudC5vZmZzZXQgKyAxOwogICAgICAgICAgICAgICAgaWYgKHBhcmVudC5jaGlsZHJlbi5sZW5ndGggPiAxKSB7CiAgICAgICAgICAgICAgICAgIGxldCBuZXh0ID0gcGFyZW50LmNoaWxkcmVuWzFdOwogICAgICAgICAgICAgICAgICByZW1vdmVFbmQgPSBuZXh0Lm9mZnNldDsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgcmV0dXJuIHdpdGhGb3JtYXR0aW5nKAogICAgICAgICAgICAgICAgdGV4dCwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgb2Zmc2V0OiByZW1vdmVCZWdpbiwKICAgICAgICAgICAgICAgICAgbGVuZ3RoOiByZW1vdmVFbmQgLSByZW1vdmVCZWdpbiwKICAgICAgICAgICAgICAgICAgY29udGVudDogIiIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBvcHRpb25zCiAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICByZXR1cm4gd2l0aEZvcm1hdHRpbmcoCiAgICAgICAgICAgICAgICB0ZXh0LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICBvZmZzZXQ6IGV4aXN0aW5nLm9mZnNldCwKICAgICAgICAgICAgICAgICAgbGVuZ3RoOiBleGlzdGluZy5sZW5ndGgsCiAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IEpTT04uc3RyaW5naWZ5KHZhbHVlKQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIG9wdGlvbnMKICAgICAgICAgICAgICApOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBpZiAodmFsdWUgPT09IHZvaWQgMCkgewogICAgICAgICAgICAgIHJldHVybiBbXTsKICAgICAgICAgICAgfQogICAgICAgICAgICBjb25zdCBuZXdQcm9wZXJ0eSA9IGAke0pTT04uc3RyaW5naWZ5KGxhc3RTZWdtZW50KX06ICR7SlNPTi5zdHJpbmdpZnkoCiAgICAgICAgICAgICAgdmFsdWUKICAgICAgICAgICAgKX1gOwogICAgICAgICAgICBjb25zdCBpbmRleCA9IG9wdGlvbnMuZ2V0SW5zZXJ0aW9uSW5kZXggPyBvcHRpb25zLmdldEluc2VydGlvbkluZGV4KAogICAgICAgICAgICAgIHBhcmVudC5jaGlsZHJlbi5tYXAoKHApID0+IHAuY2hpbGRyZW5bMF0udmFsdWUpCiAgICAgICAgICAgICkgOiBwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoOwogICAgICAgICAgICBsZXQgZWRpdDsKICAgICAgICAgICAgaWYgKGluZGV4ID4gMCkgewogICAgICAgICAgICAgIGxldCBwcmV2aW91cyA9IHBhcmVudC5jaGlsZHJlbltpbmRleCAtIDFdOwogICAgICAgICAgICAgIGVkaXQgPSB7CiAgICAgICAgICAgICAgICBvZmZzZXQ6IHByZXZpb3VzLm9mZnNldCArIHByZXZpb3VzLmxlbmd0aCwKICAgICAgICAgICAgICAgIGxlbmd0aDogMCwKICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICIsIiArIG5ld1Byb3BlcnR5CiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfSBlbHNlIGlmIChwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoID09PSAwKSB7CiAgICAgICAgICAgICAgZWRpdCA9IHsgb2Zmc2V0OiBwYXJlbnQub2Zmc2V0ICsgMSwgbGVuZ3RoOiAwLCBjb250ZW50OiBuZXdQcm9wZXJ0eSB9OwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIGVkaXQgPSB7CiAgICAgICAgICAgICAgICBvZmZzZXQ6IHBhcmVudC5vZmZzZXQgKyAxLAogICAgICAgICAgICAgICAgbGVuZ3RoOiAwLAogICAgICAgICAgICAgICAgY29udGVudDogbmV3UHJvcGVydHkgKyAiLCIKICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiB3aXRoRm9ybWF0dGluZyh0ZXh0LCBlZGl0LCBvcHRpb25zKTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgaWYgKHBhcmVudC50eXBlID09PSAiYXJyYXkiICYmIHR5cGVvZiBsYXN0U2VnbWVudCA9PT0gIm51bWJlciIgJiYgQXJyYXkuaXNBcnJheShwYXJlbnQuY2hpbGRyZW4pKSB7CiAgICAgICAgICBjb25zdCBpbnNlcnRJbmRleCA9IGxhc3RTZWdtZW50OwogICAgICAgICAgaWYgKGluc2VydEluZGV4ID09PSAtMSkgewogICAgICAgICAgICBjb25zdCBuZXdQcm9wZXJ0eSA9IGAke0pTT04uc3RyaW5naWZ5KHZhbHVlKX1gOwogICAgICAgICAgICBsZXQgZWRpdDsKICAgICAgICAgICAgaWYgKHBhcmVudC5jaGlsZHJlbi5sZW5ndGggPT09IDApIHsKICAgICAgICAgICAgICBlZGl0ID0geyBvZmZzZXQ6IHBhcmVudC5vZmZzZXQgKyAxLCBsZW5ndGg6IDAsIGNvbnRlbnQ6IG5ld1Byb3BlcnR5IH07CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgY29uc3QgcHJldmlvdXMgPSBwYXJlbnQuY2hpbGRyZW5bcGFyZW50LmNoaWxkcmVuLmxlbmd0aCAtIDFdOwogICAgICAgICAgICAgIGVkaXQgPSB7CiAgICAgICAgICAgICAgICBvZmZzZXQ6IHByZXZpb3VzLm9mZnNldCArIHByZXZpb3VzLmxlbmd0aCwKICAgICAgICAgICAgICAgIGxlbmd0aDogMCwKICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICIsIiArIG5ld1Byb3BlcnR5CiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gd2l0aEZvcm1hdHRpbmcodGV4dCwgZWRpdCwgb3B0aW9ucyk7CiAgICAgICAgICB9IGVsc2UgaWYgKHZhbHVlID09PSB2b2lkIDAgJiYgcGFyZW50LmNoaWxkcmVuLmxlbmd0aCA+PSAwKSB7CiAgICAgICAgICAgIGNvbnN0IHJlbW92YWxJbmRleCA9IGxhc3RTZWdtZW50OwogICAgICAgICAgICBjb25zdCB0b1JlbW92ZSA9IHBhcmVudC5jaGlsZHJlbltyZW1vdmFsSW5kZXhdOwogICAgICAgICAgICBsZXQgZWRpdDsKICAgICAgICAgICAgaWYgKHBhcmVudC5jaGlsZHJlbi5sZW5ndGggPT09IDEpIHsKICAgICAgICAgICAgICBlZGl0ID0gewogICAgICAgICAgICAgICAgb2Zmc2V0OiBwYXJlbnQub2Zmc2V0ICsgMSwKICAgICAgICAgICAgICAgIGxlbmd0aDogcGFyZW50Lmxlbmd0aCAtIDIsCiAgICAgICAgICAgICAgICBjb250ZW50OiAiIgogICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0gZWxzZSBpZiAocGFyZW50LmNoaWxkcmVuLmxlbmd0aCAtIDEgPT09IHJlbW92YWxJbmRleCkgewogICAgICAgICAgICAgIGxldCBwcmV2aW91cyA9IHBhcmVudC5jaGlsZHJlbltyZW1vdmFsSW5kZXggLSAxXTsKICAgICAgICAgICAgICBsZXQgb2Zmc2V0ID0gcHJldmlvdXMub2Zmc2V0ICsgcHJldmlvdXMubGVuZ3RoOwogICAgICAgICAgICAgIGxldCBwYXJlbnRFbmRPZmZzZXQgPSBwYXJlbnQub2Zmc2V0ICsgcGFyZW50Lmxlbmd0aDsKICAgICAgICAgICAgICBlZGl0ID0geyBvZmZzZXQsIGxlbmd0aDogcGFyZW50RW5kT2Zmc2V0IC0gMiAtIG9mZnNldCwgY29udGVudDogIiIgfTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBlZGl0ID0gewogICAgICAgICAgICAgICAgb2Zmc2V0OiB0b1JlbW92ZS5vZmZzZXQsCiAgICAgICAgICAgICAgICBsZW5ndGg6IHBhcmVudC5jaGlsZHJlbltyZW1vdmFsSW5kZXggKyAxXS5vZmZzZXQgLSB0b1JlbW92ZS5vZmZzZXQsCiAgICAgICAgICAgICAgICBjb250ZW50OiAiIgogICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHdpdGhGb3JtYXR0aW5nKHRleHQsIGVkaXQsIG9wdGlvbnMpOwogICAgICAgICAgfSBlbHNlIGlmICh2YWx1ZSAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgIGxldCBlZGl0OwogICAgICAgICAgICBjb25zdCBuZXdQcm9wZXJ0eSA9IGAke0pTT04uc3RyaW5naWZ5KHZhbHVlKX1gOwogICAgICAgICAgICBpZiAoIW9wdGlvbnMuaXNBcnJheUluc2VydGlvbiAmJiBwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoID4gbGFzdFNlZ21lbnQpIHsKICAgICAgICAgICAgICBjb25zdCB0b01vZGlmeSA9IHBhcmVudC5jaGlsZHJlbltsYXN0U2VnbWVudF07CiAgICAgICAgICAgICAgZWRpdCA9IHsKICAgICAgICAgICAgICAgIG9mZnNldDogdG9Nb2RpZnkub2Zmc2V0LAogICAgICAgICAgICAgICAgbGVuZ3RoOiB0b01vZGlmeS5sZW5ndGgsCiAgICAgICAgICAgICAgICBjb250ZW50OiBuZXdQcm9wZXJ0eQogICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0gZWxzZSBpZiAocGFyZW50LmNoaWxkcmVuLmxlbmd0aCA9PT0gMCB8fCBsYXN0U2VnbWVudCA9PT0gMCkgewogICAgICAgICAgICAgIGVkaXQgPSB7CiAgICAgICAgICAgICAgICBvZmZzZXQ6IHBhcmVudC5vZmZzZXQgKyAxLAogICAgICAgICAgICAgICAgbGVuZ3RoOiAwLAogICAgICAgICAgICAgICAgY29udGVudDogcGFyZW50LmNoaWxkcmVuLmxlbmd0aCA9PT0gMCA/IG5ld1Byb3BlcnR5IDogbmV3UHJvcGVydHkgKyAiLCIKICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIGNvbnN0IGluZGV4ID0gbGFzdFNlZ21lbnQgPiBwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoID8gcGFyZW50LmNoaWxkcmVuLmxlbmd0aCA6IGxhc3RTZWdtZW50OwogICAgICAgICAgICAgIGNvbnN0IHByZXZpb3VzID0gcGFyZW50LmNoaWxkcmVuW2luZGV4IC0gMV07CiAgICAgICAgICAgICAgZWRpdCA9IHsKICAgICAgICAgICAgICAgIG9mZnNldDogcHJldmlvdXMub2Zmc2V0ICsgcHJldmlvdXMubGVuZ3RoLAogICAgICAgICAgICAgICAgbGVuZ3RoOiAwLAogICAgICAgICAgICAgICAgY29udGVudDogIiwiICsgbmV3UHJvcGVydHkKICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiB3aXRoRm9ybWF0dGluZyh0ZXh0LCBlZGl0LCBvcHRpb25zKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigKICAgICAgICAgICAgICBgQ2FuIG5vdCAke3ZhbHVlID09PSB2b2lkIDAgPyAicmVtb3ZlIiA6IG9wdGlvbnMuaXNBcnJheUluc2VydGlvbiA/ICJpbnNlcnQiIDogIm1vZGlmeSJ9IEFycmF5IGluZGV4ICR7aW5zZXJ0SW5kZXh9IGFzIGxlbmd0aCBpcyBub3Qgc3VmZmljaWVudGAKICAgICAgICAgICAgKTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKAogICAgICAgICAgICBgQ2FuIG5vdCBhZGQgJHt0eXBlb2YgbGFzdFNlZ21lbnQgIT09ICJudW1iZXIiID8gImluZGV4IiA6ICJwcm9wZXJ0eSJ9IHRvIHBhcmVudCBvZiB0eXBlICR7cGFyZW50LnR5cGV9YAogICAgICAgICAgKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgZXhwb3J0czMuc2V0UHJvcGVydHkgPSBzZXRQcm9wZXJ0eTsKICAgICAgZnVuY3Rpb24gd2l0aEZvcm1hdHRpbmcodGV4dCwgZWRpdCwgb3B0aW9ucykgewogICAgICAgIGlmICghb3B0aW9ucy5mb3JtYXR0aW5nT3B0aW9ucykgewogICAgICAgICAgcmV0dXJuIFtlZGl0XTsKICAgICAgICB9CiAgICAgICAgbGV0IG5ld1RleHQgPSBhcHBseUVkaXQodGV4dCwgZWRpdCk7CiAgICAgICAgbGV0IGJlZ2luID0gZWRpdC5vZmZzZXQ7CiAgICAgICAgbGV0IGVuZCA9IGVkaXQub2Zmc2V0ICsgZWRpdC5jb250ZW50Lmxlbmd0aDsKICAgICAgICBpZiAoZWRpdC5sZW5ndGggPT09IDAgfHwgZWRpdC5jb250ZW50Lmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgd2hpbGUgKGJlZ2luID4gMCAmJiAhKDAsIGZvcm1hdF8xLmlzRU9MKShuZXdUZXh0LCBiZWdpbiAtIDEpKSB7CiAgICAgICAgICAgIGJlZ2luLS07CiAgICAgICAgICB9CiAgICAgICAgICB3aGlsZSAoZW5kIDwgbmV3VGV4dC5sZW5ndGggJiYgISgwLCBmb3JtYXRfMS5pc0VPTCkobmV3VGV4dCwgZW5kKSkgewogICAgICAgICAgICBlbmQrKzsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY29uc3QgZWRpdHMgPSAoMCwgZm9ybWF0XzEuZm9ybWF0KSgKICAgICAgICAgIG5ld1RleHQsCiAgICAgICAgICB7IG9mZnNldDogYmVnaW4sIGxlbmd0aDogZW5kIC0gYmVnaW4gfSwKICAgICAgICAgIHsgLi4ub3B0aW9ucy5mb3JtYXR0aW5nT3B0aW9ucywga2VlcExpbmVzOiBmYWxzZSB9CiAgICAgICAgKTsKICAgICAgICBmb3IgKGxldCBpID0gZWRpdHMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHsKICAgICAgICAgIGNvbnN0IGVkaXQyID0gZWRpdHNbaV07CiAgICAgICAgICBuZXdUZXh0ID0gYXBwbHlFZGl0KG5ld1RleHQsIGVkaXQyKTsKICAgICAgICAgIGJlZ2luID0gTWF0aC5taW4oYmVnaW4sIGVkaXQyLm9mZnNldCk7CiAgICAgICAgICBlbmQgPSBNYXRoLm1heChlbmQsIGVkaXQyLm9mZnNldCArIGVkaXQyLmxlbmd0aCk7CiAgICAgICAgICBlbmQgKz0gZWRpdDIuY29udGVudC5sZW5ndGggLSBlZGl0Mi5sZW5ndGg7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGVkaXRMZW5ndGggPSB0ZXh0Lmxlbmd0aCAtIChuZXdUZXh0Lmxlbmd0aCAtIGVuZCkgLSBiZWdpbjsKICAgICAgICByZXR1cm4gWwogICAgICAgICAgewogICAgICAgICAgICBvZmZzZXQ6IGJlZ2luLAogICAgICAgICAgICBsZW5ndGg6IGVkaXRMZW5ndGgsCiAgICAgICAgICAgIGNvbnRlbnQ6IG5ld1RleHQuc3Vic3RyaW5nKGJlZ2luLCBlbmQpCiAgICAgICAgICB9CiAgICAgICAgXTsKICAgICAgfQogICAgICBmdW5jdGlvbiBhcHBseUVkaXQodGV4dCwgZWRpdCkgewogICAgICAgIHJldHVybiB0ZXh0LnN1YnN0cmluZygwLCBlZGl0Lm9mZnNldCkgKyBlZGl0LmNvbnRlbnQgKyB0ZXh0LnN1YnN0cmluZyhlZGl0Lm9mZnNldCArIGVkaXQubGVuZ3RoKTsKICAgICAgfQogICAgICBleHBvcnRzMy5hcHBseUVkaXQgPSBhcHBseUVkaXQ7CiAgICAgIGZ1bmN0aW9uIGlzV1ModGV4dCwgb2Zmc2V0KSB7CiAgICAgICAgcmV0dXJuICJcclxuIAkiLmluZGV4T2YodGV4dC5jaGFyQXQob2Zmc2V0KSkgIT09IC0xOwogICAgICB9CiAgICAgIGV4cG9ydHMzLmlzV1MgPSBpc1dTOwogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL2pzb25jLXBhcnNlci1wYXRjaC1kMjBmNjcxODM2LTQ1ZDFhZTYyMzYuemlwL25vZGVfbW9kdWxlcy9qc29uYy1wYXJzZXIvbGliL3VtZC9tYWluLmpzCnZhciByZXF1aXJlX21haW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvanNvbmMtcGFyc2VyLXBhdGNoLWQyMGY2NzE4MzYtNDVkMWFlNjIzNi56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL21haW4uanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICB2YXIgZm9ybWF0dGVyID0gcmVxdWlyZV9mb3JtYXQzKCk7CiAgICB2YXIgZWRpdCA9IHJlcXVpcmVfZWRpdCgpOwogICAgdmFyIHNjYW5uZXIgPSByZXF1aXJlX3NjYW5uZXIoKTsKICAgIHZhciBwYXJzZXIgPSByZXF1aXJlX3BhcnNlcigpOwogICAgKGZ1bmN0aW9uKGZhY3RvcnkpIHsKICAgICAgaWYgKHR5cGVvZiBtb2R1bGUyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMi5leHBvcnRzID09PSAib2JqZWN0IikgewogICAgICAgIHZhciB2ID0gZmFjdG9yeShyZXF1aXJlLCBleHBvcnRzMik7CiAgICAgICAgaWYgKHYgIT09IHZvaWQgMCkgbW9kdWxlMi5leHBvcnRzID0gdjsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAiZnVuY3Rpb24iICYmIGRlZmluZS5hbWQpIHsKICAgICAgICBkZWZpbmUoWwogICAgICAgICAgInJlcXVpcmUiLAogICAgICAgICAgImV4cG9ydHMiLAogICAgICAgICAgIi4vaW1wbC9mb3JtYXQiLAogICAgICAgICAgIi4vaW1wbC9lZGl0IiwKICAgICAgICAgICIuL2ltcGwvc2Nhbm5lciIsCiAgICAgICAgICAiLi9pbXBsL3BhcnNlciIKICAgICAgICBdLCBmYWN0b3J5KTsKICAgICAgfQogICAgfSkoZnVuY3Rpb24ocmVxdWlyZTIsIGV4cG9ydHMzKSB7CiAgICAgICJ1c2Ugc3RyaWN0IjsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMzLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICAgIGV4cG9ydHMzLmFwcGx5RWRpdHMgPSBleHBvcnRzMy5tb2RpZnkgPSBleHBvcnRzMy5mb3JtYXQgPSBleHBvcnRzMy5wcmludFBhcnNlRXJyb3JDb2RlID0gZXhwb3J0czMuUGFyc2VFcnJvckNvZGUgPSBleHBvcnRzMy5zdHJpcENvbW1lbnRzID0gZXhwb3J0czMudmlzaXQgPSBleHBvcnRzMy5nZXROb2RlVmFsdWUgPSBleHBvcnRzMy5nZXROb2RlUGF0aCA9IGV4cG9ydHMzLmZpbmROb2RlQXRPZmZzZXQgPSBleHBvcnRzMy5maW5kTm9kZUF0TG9jYXRpb24gPSBleHBvcnRzMy5wYXJzZVRyZWUgPSBleHBvcnRzMy5wYXJzZSA9IGV4cG9ydHMzLmdldExvY2F0aW9uID0gZXhwb3J0czMuU3ludGF4S2luZCA9IGV4cG9ydHMzLlNjYW5FcnJvciA9IGV4cG9ydHMzLmNyZWF0ZVNjYW5uZXIgPSB2b2lkIDA7CiAgICAgIGV4cG9ydHMzLmNyZWF0ZVNjYW5uZXIgPSBzY2FubmVyLmNyZWF0ZVNjYW5uZXI7CiAgICAgIHZhciBTY2FuRXJyb3I7CiAgICAgIChmdW5jdGlvbihTY2FuRXJyb3IyKSB7CiAgICAgICAgU2NhbkVycm9yMltTY2FuRXJyb3IyWyJOb25lIl0gPSAwXSA9ICJOb25lIjsKICAgICAgICBTY2FuRXJyb3IyW1NjYW5FcnJvcjJbIlVuZXhwZWN0ZWRFbmRPZkNvbW1lbnQiXSA9IDFdID0gIlVuZXhwZWN0ZWRFbmRPZkNvbW1lbnQiOwogICAgICAgIFNjYW5FcnJvcjJbU2NhbkVycm9yMlsiVW5leHBlY3RlZEVuZE9mU3RyaW5nIl0gPSAyXSA9ICJVbmV4cGVjdGVkRW5kT2ZTdHJpbmciOwogICAgICAgIFNjYW5FcnJvcjJbU2NhbkVycm9yMlsiVW5leHBlY3RlZEVuZE9mTnVtYmVyIl0gPSAzXSA9ICJVbmV4cGVjdGVkRW5kT2ZOdW1iZXIiOwogICAgICAgIFNjYW5FcnJvcjJbU2NhbkVycm9yMlsiSW52YWxpZFVuaWNvZGUiXSA9IDRdID0gIkludmFsaWRVbmljb2RlIjsKICAgICAgICBTY2FuRXJyb3IyW1NjYW5FcnJvcjJbIkludmFsaWRFc2NhcGVDaGFyYWN0ZXIiXSA9IDVdID0gIkludmFsaWRFc2NhcGVDaGFyYWN0ZXIiOwogICAgICAgIFNjYW5FcnJvcjJbU2NhbkVycm9yMlsiSW52YWxpZENoYXJhY3RlciJdID0gNl0gPSAiSW52YWxpZENoYXJhY3RlciI7CiAgICAgIH0pKFNjYW5FcnJvciB8fCAoZXhwb3J0czMuU2NhbkVycm9yID0gU2NhbkVycm9yID0ge30pKTsKICAgICAgdmFyIFN5bnRheEtpbmQ7CiAgICAgIChmdW5jdGlvbihTeW50YXhLaW5kMikgewogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJPcGVuQnJhY2VUb2tlbiJdID0gMV0gPSAiT3BlbkJyYWNlVG9rZW4iOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJDbG9zZUJyYWNlVG9rZW4iXSA9IDJdID0gIkNsb3NlQnJhY2VUb2tlbiI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIk9wZW5CcmFja2V0VG9rZW4iXSA9IDNdID0gIk9wZW5CcmFja2V0VG9rZW4iOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJDbG9zZUJyYWNrZXRUb2tlbiJdID0gNF0gPSAiQ2xvc2VCcmFja2V0VG9rZW4iOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJDb21tYVRva2VuIl0gPSA1XSA9ICJDb21tYVRva2VuIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiQ29sb25Ub2tlbiJdID0gNl0gPSAiQ29sb25Ub2tlbiI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIk51bGxLZXl3b3JkIl0gPSA3XSA9ICJOdWxsS2V5d29yZCI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIlRydWVLZXl3b3JkIl0gPSA4XSA9ICJUcnVlS2V5d29yZCI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIkZhbHNlS2V5d29yZCJdID0gOV0gPSAiRmFsc2VLZXl3b3JkIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiU3RyaW5nTGl0ZXJhbCJdID0gMTBdID0gIlN0cmluZ0xpdGVyYWwiOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJOdW1lcmljTGl0ZXJhbCJdID0gMTFdID0gIk51bWVyaWNMaXRlcmFsIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiTGluZUNvbW1lbnRUcml2aWEiXSA9IDEyXSA9ICJMaW5lQ29tbWVudFRyaXZpYSI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIkJsb2NrQ29tbWVudFRyaXZpYSJdID0gMTNdID0gIkJsb2NrQ29tbWVudFRyaXZpYSI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIkxpbmVCcmVha1RyaXZpYSJdID0gMTRdID0gIkxpbmVCcmVha1RyaXZpYSI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIlRyaXZpYSJdID0gMTVdID0gIlRyaXZpYSI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIlVua25vd24iXSA9IDE2XSA9ICJVbmtub3duIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiRU9GIl0gPSAxN10gPSAiRU9GIjsKICAgICAgfSkoU3ludGF4S2luZCB8fCAoZXhwb3J0czMuU3ludGF4S2luZCA9IFN5bnRheEtpbmQgPSB7fSkpOwogICAgICBleHBvcnRzMy5nZXRMb2NhdGlvbiA9IHBhcnNlci5nZXRMb2NhdGlvbjsKICAgICAgZXhwb3J0czMucGFyc2UgPSBwYXJzZXIucGFyc2U7CiAgICAgIGV4cG9ydHMzLnBhcnNlVHJlZSA9IHBhcnNlci5wYXJzZVRyZWU7CiAgICAgIGV4cG9ydHMzLmZpbmROb2RlQXRMb2NhdGlvbiA9IHBhcnNlci5maW5kTm9kZUF0TG9jYXRpb247CiAgICAgIGV4cG9ydHMzLmZpbmROb2RlQXRPZmZzZXQgPSBwYXJzZXIuZmluZE5vZGVBdE9mZnNldDsKICAgICAgZXhwb3J0czMuZ2V0Tm9kZVBhdGggPSBwYXJzZXIuZ2V0Tm9kZVBhdGg7CiAgICAgIGV4cG9ydHMzLmdldE5vZGVWYWx1ZSA9IHBhcnNlci5nZXROb2RlVmFsdWU7CiAgICAgIGV4cG9ydHMzLnZpc2l0ID0gcGFyc2VyLnZpc2l0OwogICAgICBleHBvcnRzMy5zdHJpcENvbW1lbnRzID0gcGFyc2VyLnN0cmlwQ29tbWVudHM7CiAgICAgIHZhciBQYXJzZUVycm9yQ29kZTsKICAgICAgKGZ1bmN0aW9uKFBhcnNlRXJyb3JDb2RlMikgewogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIkludmFsaWRTeW1ib2wiXSA9IDFdID0gIkludmFsaWRTeW1ib2wiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIkludmFsaWROdW1iZXJGb3JtYXQiXSA9IDJdID0gIkludmFsaWROdW1iZXJGb3JtYXQiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIlByb3BlcnR5TmFtZUV4cGVjdGVkIl0gPSAzXSA9ICJQcm9wZXJ0eU5hbWVFeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiVmFsdWVFeHBlY3RlZCJdID0gNF0gPSAiVmFsdWVFeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiQ29sb25FeHBlY3RlZCJdID0gNV0gPSAiQ29sb25FeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiQ29tbWFFeHBlY3RlZCJdID0gNl0gPSAiQ29tbWFFeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiQ2xvc2VCcmFjZUV4cGVjdGVkIl0gPSA3XSA9ICJDbG9zZUJyYWNlRXhwZWN0ZWQiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIkNsb3NlQnJhY2tldEV4cGVjdGVkIl0gPSA4XSA9ICJDbG9zZUJyYWNrZXRFeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiRW5kT2ZGaWxlRXhwZWN0ZWQiXSA9IDldID0gIkVuZE9mRmlsZUV4cGVjdGVkIjsKICAgICAgICBQYXJzZUVycm9yQ29kZTJbUGFyc2VFcnJvckNvZGUyWyJJbnZhbGlkQ29tbWVudFRva2VuIl0gPSAxMF0gPSAiSW52YWxpZENvbW1lbnRUb2tlbiI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiVW5leHBlY3RlZEVuZE9mQ29tbWVudCJdID0gMTFdID0gIlVuZXhwZWN0ZWRFbmRPZkNvbW1lbnQiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIlVuZXhwZWN0ZWRFbmRPZlN0cmluZyJdID0gMTJdID0gIlVuZXhwZWN0ZWRFbmRPZlN0cmluZyI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiVW5leHBlY3RlZEVuZE9mTnVtYmVyIl0gPSAxM10gPSAiVW5leHBlY3RlZEVuZE9mTnVtYmVyIjsKICAgICAgICBQYXJzZUVycm9yQ29kZTJbUGFyc2VFcnJvckNvZGUyWyJJbnZhbGlkVW5pY29kZSJdID0gMTRdID0gIkludmFsaWRVbmljb2RlIjsKICAgICAgICBQYXJzZUVycm9yQ29kZTJbUGFyc2VFcnJvckNvZGUyWyJJbnZhbGlkRXNjYXBlQ2hhcmFjdGVyIl0gPSAxNV0gPSAiSW52YWxpZEVzY2FwZUNoYXJhY3RlciI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiSW52YWxpZENoYXJhY3RlciJdID0gMTZdID0gIkludmFsaWRDaGFyYWN0ZXIiOwogICAgICB9KShQYXJzZUVycm9yQ29kZSB8fCAoZXhwb3J0czMuUGFyc2VFcnJvckNvZGUgPSBQYXJzZUVycm9yQ29kZSA9IHt9KSk7CiAgICAgIGZ1bmN0aW9uIHByaW50UGFyc2VFcnJvckNvZGUoY29kZSkgewogICAgICAgIHN3aXRjaCAoY29kZSkgewogICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICByZXR1cm4gIkludmFsaWRTeW1ib2wiOwogICAgICAgICAgY2FzZSAyOgogICAgICAgICAgICByZXR1cm4gIkludmFsaWROdW1iZXJGb3JtYXQiOwogICAgICAgICAgY2FzZSAzOgogICAgICAgICAgICByZXR1cm4gIlByb3BlcnR5TmFtZUV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgcmV0dXJuICJWYWx1ZUV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgcmV0dXJuICJDb2xvbkV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgNjoKICAgICAgICAgICAgcmV0dXJuICJDb21tYUV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgNzoKICAgICAgICAgICAgcmV0dXJuICJDbG9zZUJyYWNlRXhwZWN0ZWQiOwogICAgICAgICAgY2FzZSA4OgogICAgICAgICAgICByZXR1cm4gIkNsb3NlQnJhY2tldEV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgOToKICAgICAgICAgICAgcmV0dXJuICJFbmRPZkZpbGVFeHBlY3RlZCI7CiAgICAgICAgICBjYXNlIDEwOgogICAgICAgICAgICByZXR1cm4gIkludmFsaWRDb21tZW50VG9rZW4iOwogICAgICAgICAgY2FzZSAxMToKICAgICAgICAgICAgcmV0dXJuICJVbmV4cGVjdGVkRW5kT2ZDb21tZW50IjsKICAgICAgICAgIGNhc2UgMTI6CiAgICAgICAgICAgIHJldHVybiAiVW5leHBlY3RlZEVuZE9mU3RyaW5nIjsKICAgICAgICAgIGNhc2UgMTM6CiAgICAgICAgICAgIHJldHVybiAiVW5leHBlY3RlZEVuZE9mTnVtYmVyIjsKICAgICAgICAgIGNhc2UgMTQ6CiAgICAgICAgICAgIHJldHVybiAiSW52YWxpZFVuaWNvZGUiOwogICAgICAgICAgY2FzZSAxNToKICAgICAgICAgICAgcmV0dXJuICJJbnZhbGlkRXNjYXBlQ2hhcmFjdGVyIjsKICAgICAgICAgIGNhc2UgMTY6CiAgICAgICAgICAgIHJldHVybiAiSW52YWxpZENoYXJhY3RlciI7CiAgICAgICAgfQogICAgICAgIHJldHVybiAiPHVua25vd24gUGFyc2VFcnJvckNvZGU+IjsKICAgICAgfQogICAgICBleHBvcnRzMy5wcmludFBhcnNlRXJyb3JDb2RlID0gcHJpbnRQYXJzZUVycm9yQ29kZTsKICAgICAgZnVuY3Rpb24gZm9ybWF0KGRvY3VtZW50VGV4dCwgcmFuZ2UsIG9wdGlvbnMpIHsKICAgICAgICByZXR1cm4gZm9ybWF0dGVyLmZvcm1hdChkb2N1bWVudFRleHQsIHJhbmdlLCBvcHRpb25zKTsKICAgICAgfQogICAgICBleHBvcnRzMy5mb3JtYXQgPSBmb3JtYXQ7CiAgICAgIGZ1bmN0aW9uIG1vZGlmeSh0ZXh0LCBwYXRoLCB2YWx1ZSwgb3B0aW9ucykgewogICAgICAgIHJldHVybiBlZGl0LnNldFByb3BlcnR5KHRleHQsIHBhdGgsIHZhbHVlLCBvcHRpb25zKTsKICAgICAgfQogICAgICBleHBvcnRzMy5tb2RpZnkgPSBtb2RpZnk7CiAgICAgIGZ1bmN0aW9uIGFwcGx5RWRpdHModGV4dCwgZWRpdHMpIHsKICAgICAgICBsZXQgc29ydGVkRWRpdHMgPSBlZGl0cy5zbGljZSgwKS5zb3J0KChhLCBiKSA9PiB7CiAgICAgICAgICBjb25zdCBkaWZmID0gYS5vZmZzZXQgLSBiLm9mZnNldDsKICAgICAgICAgIGlmIChkaWZmID09PSAwKSB7CiAgICAgICAgICAgIHJldHVybiBhLmxlbmd0aCAtIGIubGVuZ3RoOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIGRpZmY7CiAgICAgICAgfSk7CiAgICAgICAgbGV0IGxhc3RNb2RpZmllZE9mZnNldCA9IHRleHQubGVuZ3RoOwogICAgICAgIGZvciAobGV0IGkgPSBzb3J0ZWRFZGl0cy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkgewogICAgICAgICAgbGV0IGUgPSBzb3J0ZWRFZGl0c1tpXTsKICAgICAgICAgIGlmIChlLm9mZnNldCArIGUubGVuZ3RoIDw9IGxhc3RNb2RpZmllZE9mZnNldCkgewogICAgICAgICAgICB0ZXh0ID0gZWRpdC5hcHBseUVkaXQodGV4dCwgZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIk92ZXJsYXBwaW5nIGVkaXQiKTsKICAgICAgICAgIH0KICAgICAgICAgIGxhc3RNb2RpZmllZE9mZnNldCA9IGUub2Zmc2V0OwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGV4dDsKICAgICAgfQogICAgICBleHBvcnRzMy5hcHBseUVkaXRzID0gYXBwbHlFZGl0czsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvanNvbi9tZXRhZGF0YS5qcwp2YXIgcmVxdWlyZV9tZXRhZGF0YTIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vbWV0YWRhdGEuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkpzb25Xb3Jrc3BhY2VNZXRhZGF0YSA9IGV4cG9ydHMyLkpzb25Xb3Jrc3BhY2VTeW1ib2wgPSB2b2lkIDA7CiAgICB2YXIganNvbmNfcGFyc2VyXzEgPSByZXF1aXJlX21haW4oKTsKICAgIGV4cG9ydHMyLkpzb25Xb3Jrc3BhY2VTeW1ib2wgPSBTeW1ib2wuZm9yKCJAYW5ndWxhci9jb3JlOndvcmtzcGFjZS1qc29uIik7CiAgICBmdW5jdGlvbiBlc2NhcGVLZXkoa2V5KSB7CiAgICAgIHJldHVybiBrZXkucmVwbGFjZSgifiIsICJ+MCIpLnJlcGxhY2UoIi8iLCAifjEiKTsKICAgIH0KICAgIHZhciBKc29uV29ya3NwYWNlTWV0YWRhdGEgPSBjbGFzcyB7CiAgICAgIGZpbGVQYXRoOwogICAgICBhc3Q7CiAgICAgIHJhdzsKICAgICAgY2hhbmdlcyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIGhhc0xlZ2FjeVRhcmdldHNOYW1lID0gdHJ1ZTsKICAgICAgY29uc3RydWN0b3IoZmlsZVBhdGgsIGFzdCwgcmF3KSB7CiAgICAgICAgdGhpcy5maWxlUGF0aCA9IGZpbGVQYXRoOwogICAgICAgIHRoaXMuYXN0ID0gYXN0OwogICAgICAgIHRoaXMucmF3ID0gcmF3OwogICAgICB9CiAgICAgIGdldCBoYXNDaGFuZ2VzKCkgewogICAgICAgIHJldHVybiB0aGlzLmNoYW5nZXMuc2l6ZSA+IDA7CiAgICAgIH0KICAgICAgZ2V0IGNoYW5nZUNvdW50KCkgewogICAgICAgIHJldHVybiB0aGlzLmNoYW5nZXMuc2l6ZTsKICAgICAgfQogICAgICBnZXROb2RlVmFsdWVGcm9tQXN0KHBhdGgpIHsKICAgICAgICBjb25zdCBub2RlID0gKDAsIGpzb25jX3BhcnNlcl8xLmZpbmROb2RlQXRMb2NhdGlvbikodGhpcy5hc3QsIHBhdGgpOwogICAgICAgIHJldHVybiBub2RlICYmICgwLCBqc29uY19wYXJzZXJfMS5nZXROb2RlVmFsdWUpKG5vZGUpOwogICAgICB9CiAgICAgIGZpbmRDaGFuZ2VzRm9yUGF0aChwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuY2hhbmdlcy5nZXQocGF0aCk7CiAgICAgIH0KICAgICAgYWRkQ2hhbmdlKGpzb25QYXRoLCB2YWx1ZSwgdHlwZSkgewogICAgICAgIGxldCBjdXJyZW50UGF0aCA9ICIiOwogICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBqc29uUGF0aC5sZW5ndGggLSAxOyBpbmRleCsrKSB7CiAgICAgICAgICBjdXJyZW50UGF0aCA9IGN1cnJlbnRQYXRoICsgIi8iICsgZXNjYXBlS2V5KGpzb25QYXRoW2luZGV4XSk7CiAgICAgICAgICBpZiAodGhpcy5jaGFuZ2VzLmhhcyhjdXJyZW50UGF0aCkpIHsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb25zdCBwYXRoS2V5ID0gIi8iICsganNvblBhdGgubWFwKChrKSA9PiBlc2NhcGVLZXkoaykpLmpvaW4oIi8iKTsKICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiB0aGlzLmNoYW5nZXMua2V5cygpKSB7CiAgICAgICAgICBpZiAoa2V5LnN0YXJ0c1dpdGgocGF0aEtleSArICIvIikpIHsKICAgICAgICAgICAgdGhpcy5jaGFuZ2VzLmRlbGV0ZShrZXkpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICB0aGlzLmNoYW5nZXMuc2V0KHBhdGhLZXksIHsganNvblBhdGgsIHR5cGUsIHZhbHVlIH0pOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSnNvbldvcmtzcGFjZU1ldGFkYXRhID0gSnNvbldvcmtzcGFjZU1ldGFkYXRhOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvanNvbi91dGlsaXRpZXMuanMKdmFyIHJlcXVpcmVfdXRpbGl0aWVzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3V0aWxpdGllcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY3JlYXRlVmlydHVhbEFzdE9iamVjdCA9IGNyZWF0ZVZpcnR1YWxBc3RPYmplY3Q7CiAgICB2YXIganNvbl8xID0gcmVxdWlyZV9qc29uKCk7CiAgICBmdW5jdGlvbiBjcmVhdGVWaXJ0dWFsQXN0T2JqZWN0KHJvb3QsIG9wdGlvbnMgPSB7fSkgewogICAgICBjb25zdCByZXBvcnRlciA9IChwYXRoLCB0YXJnZXQsIG9sZFZhbHVlLCBuZXdWYWx1ZSkgPT4gewogICAgICAgIGlmICghb3B0aW9ucy5saXN0ZW5lcikgewogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBpZiAob2xkVmFsdWUgPT09IG5ld1ZhbHVlIHx8IEpTT04uc3RyaW5naWZ5KG9sZFZhbHVlKSA9PT0gSlNPTi5zdHJpbmdpZnkobmV3VmFsdWUpKSB7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGlmIChBcnJheS5pc0FycmF5KHRhcmdldCkpIHsKICAgICAgICAgIG9wdGlvbnMubGlzdGVuZXIocGF0aC5zbGljZSgwLCAtMSksIHRhcmdldCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIG9wdGlvbnMubGlzdGVuZXIocGF0aCwgbmV3VmFsdWUpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgcmV0dXJuIGNyZWF0ZShBcnJheS5pc0FycmF5KHJvb3QpID8gWy4uLnJvb3RdIDogeyAuLi5yb290IH0sIFtdLCByZXBvcnRlciwgbmV3IFNldChvcHRpb25zLmV4Y2x1ZGUpLCBvcHRpb25zLmluY2x1ZGU/Lmxlbmd0aCA/IG5ldyBTZXQob3B0aW9ucy5pbmNsdWRlKSA6IHZvaWQgMCk7CiAgICB9CiAgICBmdW5jdGlvbiBjcmVhdGUob2JqLCBwYXRoLCByZXBvcnRlciwgZXhjbHVkZWQgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpLCBpbmNsdWRlZCkgewogICAgICByZXR1cm4gbmV3IFByb3h5KG9iaiwgewogICAgICAgIGdldE93blByb3BlcnR5RGVzY3JpcHRvcih0YXJnZXQsIHApIHsKICAgICAgICAgIGlmIChleGNsdWRlZC5oYXMocCkgfHwgaW5jbHVkZWQgJiYgIWluY2x1ZGVkLmhhcyhwKSkgewogICAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIFJlZmxlY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHRhcmdldCwgcCk7CiAgICAgICAgfSwKICAgICAgICBoYXModGFyZ2V0LCBwKSB7CiAgICAgICAgICBpZiAodHlwZW9mIHAgPT09ICJzeW1ib2wiIHx8IGV4Y2x1ZGVkLmhhcyhwKSkgewogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gUmVmbGVjdC5oYXModGFyZ2V0LCBwKTsKICAgICAgICB9LAogICAgICAgIGdldCh0YXJnZXQsIHApIHsKICAgICAgICAgIGlmIChleGNsdWRlZC5oYXMocCkgfHwgaW5jbHVkZWQgJiYgIWluY2x1ZGVkLmhhcyhwKSkgewogICAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgdmFsdWUgPSBSZWZsZWN0LmdldCh0YXJnZXQsIHApOwogICAgICAgICAgaWYgKHR5cGVvZiBwID09PSAic3ltYm9sIikgewogICAgICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoKDAsIGpzb25fMS5pc0pzb25PYmplY3QpKHZhbHVlKSAmJiAhKHZhbHVlIGluc3RhbmNlb2YgTWFwKSB8fCBBcnJheS5pc0FycmF5KHZhbHVlKSkgewogICAgICAgICAgICByZXR1cm4gY3JlYXRlKHZhbHVlLCBbLi4ucGF0aCwgcF0sIHJlcG9ydGVyKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIHNldCh0YXJnZXQsIHAsIHZhbHVlKSB7CiAgICAgICAgICBpZiAoZXhjbHVkZWQuaGFzKHApIHx8IGluY2x1ZGVkICYmICFpbmNsdWRlZC5oYXMocCkpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHZhbHVlID09PSB2b2lkIDApIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXMuZGVsZXRlUHJvcGVydHk/Lih0YXJnZXQsIHApID8/IGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHR5cGVvZiBwID09PSAic3ltYm9sIikgewogICAgICAgICAgICByZXR1cm4gUmVmbGVjdC5zZXQodGFyZ2V0LCBwLCB2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBleGlzdGluZ1ZhbHVlID0gZ2V0Q3VycmVudFZhbHVlKHRhcmdldCwgcCk7CiAgICAgICAgICBpZiAoUmVmbGVjdC5zZXQodGFyZ2V0LCBwLCB2YWx1ZSkpIHsKICAgICAgICAgICAgcmVwb3J0ZXIoWy4uLnBhdGgsIHBdLCB0YXJnZXQsIGV4aXN0aW5nVmFsdWUsIHZhbHVlKTsKICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfSwKICAgICAgICBkZWxldGVQcm9wZXJ0eSh0YXJnZXQsIHApIHsKICAgICAgICAgIGlmIChleGNsdWRlZC5oYXMocCkpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHR5cGVvZiBwID09PSAic3ltYm9sIikgewogICAgICAgICAgICByZXR1cm4gUmVmbGVjdC5kZWxldGVQcm9wZXJ0eSh0YXJnZXQsIHApOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgZXhpc3RpbmdWYWx1ZSA9IGdldEN1cnJlbnRWYWx1ZSh0YXJnZXQsIHApOwogICAgICAgICAgaWYgKFJlZmxlY3QuZGVsZXRlUHJvcGVydHkodGFyZ2V0LCBwKSkgewogICAgICAgICAgICByZXBvcnRlcihbLi4ucGF0aCwgcF0sIHRhcmdldCwgZXhpc3RpbmdWYWx1ZSwgdm9pZCAwKTsKICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9LAogICAgICAgIGRlZmluZVByb3BlcnR5KHRhcmdldCwgcCwgYXR0cmlidXRlcykgewogICAgICAgICAgaWYgKHR5cGVvZiBwID09PSAic3ltYm9sIikgewogICAgICAgICAgICByZXR1cm4gUmVmbGVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIHAsIGF0dHJpYnV0ZXMpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0sCiAgICAgICAgb3duS2V5cyh0YXJnZXQpIHsKICAgICAgICAgIHJldHVybiBSZWZsZWN0Lm93bktleXModGFyZ2V0KS5maWx0ZXIoKHApID0+ICFleGNsdWRlZC5oYXMocCkgJiYgKCFpbmNsdWRlZCB8fCBpbmNsdWRlZC5oYXMocCkpKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgfQogICAgZnVuY3Rpb24gZ2V0Q3VycmVudFZhbHVlKHRhcmdldCwgcHJvcGVydHkpIHsKICAgICAgaWYgKEFycmF5LmlzQXJyYXkodGFyZ2V0KSAmJiBpc0Zpbml0ZSgrcHJvcGVydHkpKSB7CiAgICAgICAgcmV0dXJuIHRhcmdldFsrcHJvcGVydHldOwogICAgICB9CiAgICAgIGlmICh0YXJnZXQgJiYgcHJvcGVydHkgaW4gdGFyZ2V0KSB7CiAgICAgICAgcmV0dXJuIHRhcmdldFtwcm9wZXJ0eV07CiAgICAgIH0KICAgICAgcmV0dXJuIHZvaWQgMDsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vcmVhZGVyLmpzCnZhciByZXF1aXJlX3JlYWRlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvanNvbi9yZWFkZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJlYWRKc29uV29ya3NwYWNlID0gcmVhZEpzb25Xb3Jrc3BhY2U7CiAgICB2YXIganNvbmNfcGFyc2VyXzEgPSByZXF1aXJlX21haW4oKTsKICAgIHZhciB1dGlsc18xID0gcmVxdWlyZV91dGlscygpOwogICAgdmFyIGRlZmluaXRpb25zXzEgPSByZXF1aXJlX2RlZmluaXRpb25zKCk7CiAgICB2YXIgbWV0YWRhdGFfMSA9IHJlcXVpcmVfbWV0YWRhdGEyKCk7CiAgICB2YXIgdXRpbGl0aWVzXzEgPSByZXF1aXJlX3V0aWxpdGllcygpOwogICAgdmFyIEFOR1VMQVJfV09SS1NQQUNFX0VYVEVOU0lPTlMgPSBPYmplY3QuZnJlZXplKFsiY2xpIiwgIm5ld1Byb2plY3RSb290IiwgInNjaGVtYXRpY3MiXSk7CiAgICB2YXIgQU5HVUxBUl9QUk9KRUNUX0VYVEVOU0lPTlMgPSBPYmplY3QuZnJlZXplKFsiY2xpIiwgInNjaGVtYXRpY3MiLCAicHJvamVjdFR5cGUiLCAiaTE4biJdKTsKICAgIGFzeW5jIGZ1bmN0aW9uIHJlYWRKc29uV29ya3NwYWNlKHBhdGgsIGhvc3QsIG9wdGlvbnMgPSB7fSkgewogICAgICBjb25zdCByYXcgPSBhd2FpdCBob3N0LnJlYWRGaWxlKHBhdGgpOwogICAgICBpZiAocmF3ID09PSB2b2lkIDApIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVuYWJsZSB0byByZWFkIHdvcmtzcGFjZSBmaWxlLiIpOwogICAgICB9CiAgICAgIGNvbnN0IGFzdCA9ICgwLCBqc29uY19wYXJzZXJfMS5wYXJzZVRyZWUpKHJhdywgdm9pZCAwLCB7IGFsbG93VHJhaWxpbmdDb21tYTogdHJ1ZSwgZGlzYWxsb3dDb21tZW50czogZmFsc2UgfSk7CiAgICAgIGlmIChhc3Q/LnR5cGUgIT09ICJvYmplY3QiIHx8ICFhc3QuY2hpbGRyZW4pIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgd29ya3NwYWNlIGZpbGUgLSBleHBlY3RlZCBKU09OIG9iamVjdC4iKTsKICAgICAgfQogICAgICBjb25zdCB2ZXJzaW9uTm9kZSA9ICgwLCBqc29uY19wYXJzZXJfMS5maW5kTm9kZUF0TG9jYXRpb24pKGFzdCwgWyJ2ZXJzaW9uIl0pOwogICAgICBpZiAoIXZlcnNpb25Ob2RlKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJVbmtub3duIGZvcm1hdCAtIHZlcnNpb24gc3BlY2lmaWVyIG5vdCBmb3VuZC4iKTsKICAgICAgfQogICAgICBjb25zdCB2ZXJzaW9uID0gdmVyc2lvbk5vZGUudmFsdWU7CiAgICAgIGlmICh2ZXJzaW9uICE9PSAxKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGZvcm1hdCB2ZXJzaW9uIGRldGVjdGVkIC0gRXhwZWN0ZWQ6WyAxIF0gRm91bmQ6IFsgJHt2ZXJzaW9ufSBdYCk7CiAgICAgIH0KICAgICAgY29uc3QgY29udGV4dCA9IHsKICAgICAgICBob3N0LAogICAgICAgIG1ldGFkYXRhOiBuZXcgbWV0YWRhdGFfMS5Kc29uV29ya3NwYWNlTWV0YWRhdGEocGF0aCwgYXN0LCByYXcpLAogICAgICAgIHRyYWNrQ2hhbmdlczogdHJ1ZSwKICAgICAgICB1bnByZWZpeGVkV29ya3NwYWNlRXh0ZW5zaW9uczogLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWwogICAgICAgICAgLi4uQU5HVUxBUl9XT1JLU1BBQ0VfRVhURU5TSU9OUywKICAgICAgICAgIC4uLm9wdGlvbnMuYWxsb3dlZFdvcmtzcGFjZUV4dGVuc2lvbnMgPz8gW10KICAgICAgICBdKSwKICAgICAgICB1bnByZWZpeGVkUHJvamVjdEV4dGVuc2lvbnM6IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KFsKICAgICAgICAgIC4uLkFOR1VMQVJfUFJPSkVDVF9FWFRFTlNJT05TLAogICAgICAgICAgLi4ub3B0aW9ucy5hbGxvd2VkUHJvamVjdEV4dGVuc2lvbnMgPz8gW10KICAgICAgICBdKSwKICAgICAgICBlcnJvcihtZXNzYWdlLCBfbm9kZSkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKG1lc3NhZ2UpOwogICAgICAgIH0sCiAgICAgICAgd2FybihtZXNzYWdlLCBfbm9kZSkgewogICAgICAgICAgY29uc29sZS53YXJuKG1lc3NhZ2UpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgY29uc3Qgd29ya3NwYWNlID0gcGFyc2VXb3Jrc3BhY2UoYXN0LCBjb250ZXh0KTsKICAgICAgcmV0dXJuIHdvcmtzcGFjZTsKICAgIH0KICAgIGZ1bmN0aW9uIHBhcnNlV29ya3NwYWNlKHdvcmtzcGFjZU5vZGUsIGNvbnRleHQpIHsKICAgICAgY29uc3QganNvbk1ldGFkYXRhID0gY29udGV4dC5tZXRhZGF0YTsKICAgICAgbGV0IHByb2plY3RzOwogICAgICBsZXQgZXh0ZW5zaW9uczsKICAgICAgaWYgKCFjb250ZXh0LnRyYWNrQ2hhbmdlcykgewogICAgICAgIGV4dGVuc2lvbnMgPSAvKiBAX19QVVJFX18gKi8gT2JqZWN0LmNyZWF0ZShudWxsKTsKICAgICAgfQogICAgICBjb25zdCB3b3Jrc3BhY2VOb2RlVmFsdWUgPSAoMCwganNvbmNfcGFyc2VyXzEuZ2V0Tm9kZVZhbHVlKSh3b3Jrc3BhY2VOb2RlKTsKICAgICAgZm9yIChjb25zdCBbbmFtZSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKHdvcmtzcGFjZU5vZGVWYWx1ZSkpIHsKICAgICAgICBpZiAobmFtZSA9PT0gIiRzY2hlbWEiIHx8IG5hbWUgPT09ICJ2ZXJzaW9uIikgewogICAgICAgIH0gZWxzZSBpZiAobmFtZSA9PT0gInByb2plY3RzIikgewogICAgICAgICAgY29uc3Qgbm9kZXMgPSAoMCwganNvbmNfcGFyc2VyXzEuZmluZE5vZGVBdExvY2F0aW9uKSh3b3Jrc3BhY2VOb2RlLCBbInByb2plY3RzIl0pOwogICAgICAgICAgaWYgKCEoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHZhbHVlKSB8fCAhbm9kZXMpIHsKICAgICAgICAgICAgY29udGV4dC5lcnJvcignSW52YWxpZCAicHJvamVjdHMiIGZpZWxkIGZvdW5kOyBleHBlY3RlZCBhbiBvYmplY3QuJywgdmFsdWUpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIHByb2plY3RzID0gcGFyc2VQcm9qZWN0c09iamVjdChub2RlcywgY29udGV4dCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGlmICghY29udGV4dC51bnByZWZpeGVkV29ya3NwYWNlRXh0ZW5zaW9ucy5oYXMobmFtZSkgJiYgIS9eW2Etel17MSwzfS0uKi8udGVzdChuYW1lKSkgewogICAgICAgICAgICBjb250ZXh0Lndhcm4oYFdvcmtzcGFjZSBleHRlbnNpb24gd2l0aCBpbnZhbGlkIG5hbWUgKCR7bmFtZX0pIGZvdW5kLmAsIG5hbWUpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGV4dGVuc2lvbnMpIHsKICAgICAgICAgICAgZXh0ZW5zaW9uc1tuYW1lXSA9IHZhbHVlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgICBsZXQgY29sbGVjdGlvbkxpc3RlbmVyOwogICAgICBpZiAoY29udGV4dC50cmFja0NoYW5nZXMpIHsKICAgICAgICBjb2xsZWN0aW9uTGlzdGVuZXIgPSAobmFtZSwgbmV3VmFsdWUpID0+IHsKICAgICAgICAgIGpzb25NZXRhZGF0YS5hZGRDaGFuZ2UoWyJwcm9qZWN0cyIsIG5hbWVdLCBuZXdWYWx1ZSwgInByb2plY3QiKTsKICAgICAgICB9OwogICAgICB9CiAgICAgIGNvbnN0IHByb2plY3RDb2xsZWN0aW9uID0gbmV3IGRlZmluaXRpb25zXzEuUHJvamVjdERlZmluaXRpb25Db2xsZWN0aW9uKHByb2plY3RzLCBjb2xsZWN0aW9uTGlzdGVuZXIpOwogICAgICByZXR1cm4gewogICAgICAgIFttZXRhZGF0YV8xLkpzb25Xb3Jrc3BhY2VTeW1ib2xdOiBqc29uTWV0YWRhdGEsCiAgICAgICAgcHJvamVjdHM6IHByb2plY3RDb2xsZWN0aW9uLAogICAgICAgIC8vIElmIG5vdCB0cmFja2luZyBjaGFuZ2VzIHRoZSBgZXh0ZW5zaW9uc2AgdmFyaWFibGUgd2lsbCBjb250YWluIHRoZSBwYXJzZWQKICAgICAgICAvLyB2YWx1ZXMuICBPdGhlcndpc2UgdGhlIGV4dGVuc2lvbnMgYXJlIHRyYWNrZWQgdmlhIGEgdmlydHVhbCBBU1Qgb2JqZWN0LgogICAgICAgIGV4dGVuc2lvbnM6IGV4dGVuc2lvbnMgPz8gKDAsIHV0aWxpdGllc18xLmNyZWF0ZVZpcnR1YWxBc3RPYmplY3QpKHdvcmtzcGFjZU5vZGVWYWx1ZSwgewogICAgICAgICAgZXhjbHVkZTogWyIkc2NoZW1hIiwgInZlcnNpb24iLCAicHJvamVjdHMiXSwKICAgICAgICAgIGxpc3RlbmVyKHBhdGgsIHZhbHVlKSB7CiAgICAgICAgICAgIGpzb25NZXRhZGF0YS5hZGRDaGFuZ2UocGF0aCwgdmFsdWUpOwogICAgICAgICAgfQogICAgICAgIH0pCiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBwYXJzZVByb2plY3RzT2JqZWN0KHByb2plY3RzTm9kZSwgY29udGV4dCkgewogICAgICBjb25zdCBwcm9qZWN0cyA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICBmb3IgKGNvbnN0IFtuYW1lLCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMoKDAsIGpzb25jX3BhcnNlcl8xLmdldE5vZGVWYWx1ZSkocHJvamVjdHNOb2RlKSkpIHsKICAgICAgICBjb25zdCBub2RlcyA9ICgwLCBqc29uY19wYXJzZXJfMS5maW5kTm9kZUF0TG9jYXRpb24pKHByb2plY3RzTm9kZSwgW25hbWVdKTsKICAgICAgICBpZiAoISgwLCB1dGlsc18xLmlzSnNvbk9iamVjdCkodmFsdWUpIHx8ICFub2RlcykgewogICAgICAgICAgY29udGV4dC53YXJuKCJTa2lwcGluZyBpbnZhbGlkIHByb2plY3QgdmFsdWU7IGV4cGVjdGVkIGFuIG9iamVjdC4iLCB2YWx1ZSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgcHJvamVjdHNbbmFtZV0gPSBwYXJzZVByb2plY3QobmFtZSwgbm9kZXMsIGNvbnRleHQpOwogICAgICB9CiAgICAgIHJldHVybiBwcm9qZWN0czsKICAgIH0KICAgIGZ1bmN0aW9uIHBhcnNlUHJvamVjdChwcm9qZWN0TmFtZSwgcHJvamVjdE5vZGUsIGNvbnRleHQpIHsKICAgICAgY29uc3QganNvbk1ldGFkYXRhID0gY29udGV4dC5tZXRhZGF0YTsKICAgICAgbGV0IHRhcmdldHM7CiAgICAgIGxldCBoYXNUYXJnZXRzID0gZmFsc2U7CiAgICAgIGxldCBleHRlbnNpb25zOwogICAgICBsZXQgcHJvcGVydGllczsKICAgICAgaWYgKCFjb250ZXh0LnRyYWNrQ2hhbmdlcykgewogICAgICAgIGV4dGVuc2lvbnMgPSAvKiBAX19QVVJFX18gKi8gT2JqZWN0LmNyZWF0ZShudWxsKTsKICAgICAgICBwcm9wZXJ0aWVzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgIH0KICAgICAgY29uc3QgcHJvamVjdE5vZGVWYWx1ZSA9ICgwLCBqc29uY19wYXJzZXJfMS5nZXROb2RlVmFsdWUpKHByb2plY3ROb2RlKTsKICAgICAgaWYgKCEoInJvb3QiIGluIHByb2plY3ROb2RlVmFsdWUpKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBQcm9qZWN0ICIke3Byb2plY3ROYW1lfSIgaXMgbWlzc2luZyBhIHJlcXVpcmVkIHByb3BlcnR5ICJyb290Ii5gKTsKICAgICAgfQogICAgICBmb3IgKGNvbnN0IFtuYW1lLCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMocHJvamVjdE5vZGVWYWx1ZSkpIHsKICAgICAgICBzd2l0Y2ggKG5hbWUpIHsKICAgICAgICAgIGNhc2UgInRhcmdldHMiOgogICAgICAgICAgY2FzZSAiYXJjaGl0ZWN0IjogewogICAgICAgICAgICBjb25zdCBub2RlcyA9ICgwLCBqc29uY19wYXJzZXJfMS5maW5kTm9kZUF0TG9jYXRpb24pKHByb2plY3ROb2RlLCBbbmFtZV0pOwogICAgICAgICAgICBpZiAoISgwLCB1dGlsc18xLmlzSnNvbk9iamVjdCkodmFsdWUpIHx8ICFub2RlcykgewogICAgICAgICAgICAgIGNvbnRleHQuZXJyb3IoYEludmFsaWQgIiR7bmFtZX0iIGZpZWxkIGZvdW5kOyBleHBlY3RlZCBhbiBvYmplY3QuYCwgdmFsdWUpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGhhc1RhcmdldHMgPSB0cnVlOwogICAgICAgICAgICB0YXJnZXRzID0gcGFyc2VUYXJnZXRzT2JqZWN0KHByb2plY3ROYW1lLCBub2RlcywgY29udGV4dCk7CiAgICAgICAgICAgIGpzb25NZXRhZGF0YS5oYXNMZWdhY3lUYXJnZXRzTmFtZSA9IG5hbWUgPT09ICJhcmNoaXRlY3QiOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICAgIGNhc2UgInByZWZpeCI6CiAgICAgICAgICBjYXNlICJyb290IjoKICAgICAgICAgIGNhc2UgInNvdXJjZVJvb3QiOgogICAgICAgICAgICBpZiAodHlwZW9mIHZhbHVlICE9PSAic3RyaW5nIikgewogICAgICAgICAgICAgIGNvbnRleHQud2FybihgUHJvamVjdCBwcm9wZXJ0eSAiJHtuYW1lfSIgc2hvdWxkIGJlIGEgc3RyaW5nLmAsIHZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAocHJvcGVydGllcykgewogICAgICAgICAgICAgIHByb3BlcnRpZXNbbmFtZV0gPSB2YWx1ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBicmVhazsKICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgIGlmICghY29udGV4dC51bnByZWZpeGVkUHJvamVjdEV4dGVuc2lvbnMuaGFzKG5hbWUpICYmICEvXlthLXpdezEsM30tLiovLnRlc3QobmFtZSkpIHsKICAgICAgICAgICAgICBjb250ZXh0Lndhcm4oYFByb2plY3QgJyR7cHJvamVjdE5hbWV9JyBjb250YWlucyBleHRlbnNpb24gd2l0aCBpbnZhbGlkIG5hbWUgKCR7bmFtZX0pLmAsIG5hbWUpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChleHRlbnNpb25zKSB7CiAgICAgICAgICAgICAgZXh0ZW5zaW9uc1tuYW1lXSA9IHZhbHVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgfQogICAgICBsZXQgY29sbGVjdGlvbkxpc3RlbmVyOwogICAgICBpZiAoY29udGV4dC50cmFja0NoYW5nZXMpIHsKICAgICAgICBjb2xsZWN0aW9uTGlzdGVuZXIgPSAobmFtZSwgbmV3VmFsdWUsIGNvbGxlY3Rpb24pID0+IHsKICAgICAgICAgIGlmIChoYXNUYXJnZXRzKSB7CiAgICAgICAgICAgIGpzb25NZXRhZGF0YS5hZGRDaGFuZ2UoWyJwcm9qZWN0cyIsIHByb2plY3ROYW1lLCAidGFyZ2V0cyIsIG5hbWVdLCBuZXdWYWx1ZSwgInRhcmdldCIpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAganNvbk1ldGFkYXRhLmFkZENoYW5nZShbInByb2plY3RzIiwgcHJvamVjdE5hbWUsICJ0YXJnZXRzIl0sIGNvbGxlY3Rpb24sICJ0YXJnZXRjb2xsZWN0aW9uIik7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgfQogICAgICBjb25zdCBiYXNlID0gewogICAgICAgIHRhcmdldHM6IG5ldyBkZWZpbml0aW9uc18xLlRhcmdldERlZmluaXRpb25Db2xsZWN0aW9uKHRhcmdldHMsIGNvbGxlY3Rpb25MaXN0ZW5lciksCiAgICAgICAgLy8gSWYgbm90IHRyYWNraW5nIGNoYW5nZXMgdGhlIGBleHRlbnNpb25zYCB2YXJpYWJsZSB3aWxsIGNvbnRhaW4gdGhlIHBhcnNlZAogICAgICAgIC8vIHZhbHVlcy4gIE90aGVyd2lzZSB0aGUgZXh0ZW5zaW9ucyBhcmUgdHJhY2tlZCB2aWEgYSB2aXJ0dWFsIEFTVCBvYmplY3QuCiAgICAgICAgZXh0ZW5zaW9uczogZXh0ZW5zaW9ucyA/PyAoMCwgdXRpbGl0aWVzXzEuY3JlYXRlVmlydHVhbEFzdE9iamVjdCkocHJvamVjdE5vZGVWYWx1ZSwgewogICAgICAgICAgZXhjbHVkZTogWyJhcmNoaXRlY3QiLCAicHJlZml4IiwgInJvb3QiLCAic291cmNlUm9vdCIsICJ0YXJnZXRzIl0sCiAgICAgICAgICBsaXN0ZW5lcihwYXRoLCB2YWx1ZSkgewogICAgICAgICAgICBqc29uTWV0YWRhdGEuYWRkQ2hhbmdlKFsicHJvamVjdHMiLCBwcm9qZWN0TmFtZSwgLi4ucGF0aF0sIHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICB9KQogICAgICB9OwogICAgICBjb25zdCBiYXNlS2V5cyA9IG5ldyBTZXQoT2JqZWN0LmtleXMoYmFzZSkpOwogICAgICBjb25zdCBwcm9qZWN0ID0gcHJvcGVydGllcyA/PyAoMCwgdXRpbGl0aWVzXzEuY3JlYXRlVmlydHVhbEFzdE9iamVjdCkocHJvamVjdE5vZGVWYWx1ZSwgewogICAgICAgIGluY2x1ZGU6IFsicHJlZml4IiwgInJvb3QiLCAic291cmNlUm9vdCIsIC4uLmJhc2VLZXlzXSwKICAgICAgICBsaXN0ZW5lcihwYXRoLCB2YWx1ZSkgewogICAgICAgICAgaWYgKCFiYXNlS2V5cy5oYXMocGF0aFswXSkpIHsKICAgICAgICAgICAganNvbk1ldGFkYXRhLmFkZENoYW5nZShbInByb2plY3RzIiwgcHJvamVjdE5hbWUsIC4uLnBhdGhdLCB2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9KTsKICAgICAgcmV0dXJuIE9iamVjdC5hc3NpZ24ocHJvamVjdCwgYmFzZSk7CiAgICB9CiAgICBmdW5jdGlvbiBwYXJzZVRhcmdldHNPYmplY3QocHJvamVjdE5hbWUsIHRhcmdldHNOb2RlLCBjb250ZXh0KSB7CiAgICAgIGNvbnN0IGpzb25NZXRhZGF0YSA9IGNvbnRleHQubWV0YWRhdGE7CiAgICAgIGNvbnN0IHRhcmdldHMgPSAvKiBAX19QVVJFX18gKi8gT2JqZWN0LmNyZWF0ZShudWxsKTsKICAgICAgZm9yIChjb25zdCBbbmFtZSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKCgwLCBqc29uY19wYXJzZXJfMS5nZXROb2RlVmFsdWUpKHRhcmdldHNOb2RlKSkpIHsKICAgICAgICBpZiAoISgwLCB1dGlsc18xLmlzSnNvbk9iamVjdCkodmFsdWUpKSB7CiAgICAgICAgICBjb250ZXh0Lndhcm4oIlNraXBwaW5nIGludmFsaWQgdGFyZ2V0IHZhbHVlOyBleHBlY3RlZCBhbiBvYmplY3QuIiwgdmFsdWUpOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmIChjb250ZXh0LnRyYWNrQ2hhbmdlcykgewogICAgICAgICAgdGFyZ2V0c1tuYW1lXSA9ICgwLCB1dGlsaXRpZXNfMS5jcmVhdGVWaXJ0dWFsQXN0T2JqZWN0KSh2YWx1ZSwgewogICAgICAgICAgICBpbmNsdWRlOiBbImJ1aWxkZXIiLCAib3B0aW9ucyIsICJjb25maWd1cmF0aW9ucyIsICJkZWZhdWx0Q29uZmlndXJhdGlvbiJdLAogICAgICAgICAgICBsaXN0ZW5lcihwYXRoLCB2YWx1ZTIpIHsKICAgICAgICAgICAgICBqc29uTWV0YWRhdGEuYWRkQ2hhbmdlKFsicHJvamVjdHMiLCBwcm9qZWN0TmFtZSwgInRhcmdldHMiLCBuYW1lLCAuLi5wYXRoXSwgdmFsdWUyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRhcmdldHNbbmFtZV0gPSB2YWx1ZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIHRhcmdldHM7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3dyaXRlci5qcwp2YXIgcmVxdWlyZV93cml0ZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vd3JpdGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi53cml0ZUpzb25Xb3Jrc3BhY2UgPSB3cml0ZUpzb25Xb3Jrc3BhY2U7CiAgICB2YXIganNvbmNfcGFyc2VyXzEgPSByZXF1aXJlX21haW4oKTsKICAgIHZhciBub2RlX29zXzEgPSByZXF1aXJlKCJub2RlOm9zIik7CiAgICB2YXIgbWV0YWRhdGFfMSA9IHJlcXVpcmVfbWV0YWRhdGEyKCk7CiAgICBhc3luYyBmdW5jdGlvbiB3cml0ZUpzb25Xb3Jrc3BhY2Uod29ya3NwYWNlLCBob3N0LCBwYXRoLCBvcHRpb25zID0ge30pIHsKICAgICAgY29uc3QgbWV0YWRhdGEgPSB3b3Jrc3BhY2VbbWV0YWRhdGFfMS5Kc29uV29ya3NwYWNlU3ltYm9sXTsKICAgICAgaWYgKG1ldGFkYXRhKSB7CiAgICAgICAgaWYgKCFtZXRhZGF0YS5oYXNDaGFuZ2VzKSB7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGNvbnN0IGRhdGEgPSB1cGRhdGVKc29uV29ya3NwYWNlKG1ldGFkYXRhKTsKICAgICAgICByZXR1cm4gaG9zdC53cml0ZUZpbGUocGF0aCA/PyBtZXRhZGF0YS5maWxlUGF0aCwgZGF0YSk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgaWYgKCFwYXRoKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoInBhdGggb3B0aW9uIGlzIHJlcXVpcmVkIik7CiAgICAgICAgfQogICAgICAgIGNvbnN0IG9iaiA9IGNvbnZlcnRKc29uV29ya3NwYWNlKHdvcmtzcGFjZSwgb3B0aW9ucy5zY2hlbWEpOwogICAgICAgIGNvbnN0IGRhdGEgPSBKU09OLnN0cmluZ2lmeShvYmosIG51bGwsIDIpOwogICAgICAgIHJldHVybiBob3N0LndyaXRlRmlsZShwYXRoLCBkYXRhKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gY29udmVydEpzb25Xb3Jrc3BhY2Uod29ya3NwYWNlLCBzY2hlbWEpIHsKICAgICAgY29uc3Qgb2JqID0gewogICAgICAgICRzY2hlbWE6IHNjaGVtYSB8fCAiLi9ub2RlX21vZHVsZXMvQGFuZ3VsYXIvY2xpL2xpYi9jb25maWcvc2NoZW1hLmpzb24iLAogICAgICAgIHZlcnNpb246IDEsCiAgICAgICAgLi4ud29ya3NwYWNlLmV4dGVuc2lvbnMsCiAgICAgICAgLi4uaXNFbXB0eSh3b3Jrc3BhY2UucHJvamVjdHMpID8ge30gOiB7IHByb2plY3RzOiBjb252ZXJ0SnNvblByb2plY3RDb2xsZWN0aW9uKHdvcmtzcGFjZS5wcm9qZWN0cykgfQogICAgICB9OwogICAgICByZXR1cm4gb2JqOwogICAgfQogICAgZnVuY3Rpb24gY29udmVydEpzb25Qcm9qZWN0Q29sbGVjdGlvbihjb2xsZWN0aW9uKSB7CiAgICAgIGNvbnN0IHByb2plY3RzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgIGZvciAoY29uc3QgW3Byb2plY3ROYW1lLCBwcm9qZWN0XSBvZiBjb2xsZWN0aW9uKSB7CiAgICAgICAgcHJvamVjdHNbcHJvamVjdE5hbWVdID0gY29udmVydEpzb25Qcm9qZWN0KHByb2plY3QpOwogICAgICB9CiAgICAgIHJldHVybiBwcm9qZWN0czsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbnZlcnRKc29uUHJvamVjdChwcm9qZWN0KSB7CiAgICAgIGxldCB0YXJnZXRzOwogICAgICBpZiAocHJvamVjdC50YXJnZXRzLnNpemUgPiAwKSB7CiAgICAgICAgdGFyZ2V0cyA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICAgIGZvciAoY29uc3QgW3RhcmdldE5hbWUsIHRhcmdldF0gb2YgcHJvamVjdC50YXJnZXRzKSB7CiAgICAgICAgICB0YXJnZXRzW3RhcmdldE5hbWVdID0gY29udmVydEpzb25UYXJnZXQodGFyZ2V0KTsKICAgICAgICB9CiAgICAgIH0KICAgICAgY29uc3Qgb2JqID0gewogICAgICAgIC4uLnByb2plY3QuZXh0ZW5zaW9ucywKICAgICAgICByb290OiBwcm9qZWN0LnJvb3QsCiAgICAgICAgLi4ucHJvamVjdC5zb3VyY2VSb290ID09PSB2b2lkIDAgPyB7fSA6IHsgc291cmNlUm9vdDogcHJvamVjdC5zb3VyY2VSb290IH0sCiAgICAgICAgLi4ucHJvamVjdC5wcmVmaXggPT09IHZvaWQgMCA/IHt9IDogeyBwcmVmaXg6IHByb2plY3QucHJlZml4IH0sCiAgICAgICAgLi4udGFyZ2V0cyA9PT0gdm9pZCAwID8ge30gOiB7IGFyY2hpdGVjdDogdGFyZ2V0cyB9CiAgICAgIH07CiAgICAgIHJldHVybiBvYmo7CiAgICB9CiAgICBmdW5jdGlvbiBpc0VtcHR5KG9iaikgewogICAgICByZXR1cm4gb2JqID09PSB2b2lkIDAgfHwgT2JqZWN0LmtleXMob2JqKS5sZW5ndGggPT09IDA7CiAgICB9CiAgICBmdW5jdGlvbiBjb252ZXJ0SnNvblRhcmdldCh0YXJnZXQpIHsKICAgICAgcmV0dXJuIHsKICAgICAgICBidWlsZGVyOiB0YXJnZXQuYnVpbGRlciwKICAgICAgICAuLi5pc0VtcHR5KHRhcmdldC5vcHRpb25zKSA/IHt9IDogeyBvcHRpb25zOiB0YXJnZXQub3B0aW9ucyB9LAogICAgICAgIC4uLmlzRW1wdHkodGFyZ2V0LmNvbmZpZ3VyYXRpb25zKSA/IHt9IDogeyBjb25maWd1cmF0aW9uczogdGFyZ2V0LmNvbmZpZ3VyYXRpb25zIH0sCiAgICAgICAgLi4udGFyZ2V0LmRlZmF1bHRDb25maWd1cmF0aW9uID09PSB2b2lkIDAgPyB7fSA6IHsgZGVmYXVsdENvbmZpZ3VyYXRpb246IHRhcmdldC5kZWZhdWx0Q29uZmlndXJhdGlvbiB9CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBjb252ZXJ0SnNvblRhcmdldENvbGxlY3Rpb24oY29sbGVjdGlvbikgewogICAgICBjb25zdCB0YXJnZXRzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgIGZvciAoY29uc3QgW3Byb2plY3ROYW1lLCB0YXJnZXRdIG9mIGNvbGxlY3Rpb24pIHsKICAgICAgICB0YXJnZXRzW3Byb2plY3ROYW1lXSA9IGNvbnZlcnRKc29uVGFyZ2V0KHRhcmdldCk7CiAgICAgIH0KICAgICAgcmV0dXJuIHRhcmdldHM7CiAgICB9CiAgICBmdW5jdGlvbiBub3JtYWxpemVWYWx1ZSh2YWx1ZSwgdHlwZSkgewogICAgICBpZiAodmFsdWUgPT09IHZvaWQgMCkgewogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH0KICAgICAgc3dpdGNoICh0eXBlKSB7CiAgICAgICAgY2FzZSAicHJvamVjdCI6CiAgICAgICAgICByZXR1cm4gY29udmVydEpzb25Qcm9qZWN0KHZhbHVlKTsKICAgICAgICBjYXNlICJwcm9qZWN0Y29sbGVjdGlvbiI6IHsKICAgICAgICAgIGNvbnN0IHByb2plY3RzID0gY29udmVydEpzb25Qcm9qZWN0Q29sbGVjdGlvbih2YWx1ZSk7CiAgICAgICAgICByZXR1cm4gaXNFbXB0eShwcm9qZWN0cykgPyB2b2lkIDAgOiBwcm9qZWN0czsKICAgICAgICB9CiAgICAgICAgY2FzZSAidGFyZ2V0IjoKICAgICAgICAgIHJldHVybiBjb252ZXJ0SnNvblRhcmdldCh2YWx1ZSk7CiAgICAgICAgY2FzZSAidGFyZ2V0Y29sbGVjdGlvbiI6IHsKICAgICAgICAgIGNvbnN0IHRhcmdldHMgPSBjb252ZXJ0SnNvblRhcmdldENvbGxlY3Rpb24odmFsdWUpOwogICAgICAgICAgcmV0dXJuIGlzRW1wdHkodGFyZ2V0cykgPyB2b2lkIDAgOiB0YXJnZXRzOwogICAgICAgIH0KICAgICAgICBkZWZhdWx0OgogICAgICAgICAgcmV0dXJuIHZhbHVlOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiB1cGRhdGVKc29uV29ya3NwYWNlKG1ldGFkYXRhKSB7CiAgICAgIGxldCB7IHJhdzogY29udGVudCB9ID0gbWV0YWRhdGE7CiAgICAgIGNvbnN0IHsgY2hhbmdlcywgaGFzTGVnYWN5VGFyZ2V0c05hbWUgfSA9IG1ldGFkYXRhOwogICAgICBmb3IgKGNvbnN0IHsganNvblBhdGgsIHZhbHVlLCB0eXBlIH0gb2YgY2hhbmdlcy52YWx1ZXMoKSkgewogICAgICAgIGlmIChoYXNMZWdhY3lUYXJnZXRzTmFtZSAmJiBqc29uUGF0aFsyXSA9PT0gInRhcmdldHMiKSB7CiAgICAgICAgICBqc29uUGF0aFsyXSA9ICJhcmNoaXRlY3QiOwogICAgICAgIH0KICAgICAgICBjb25zdCBlZGl0cyA9ICgwLCBqc29uY19wYXJzZXJfMS5tb2RpZnkpKGNvbnRlbnQsIGpzb25QYXRoLCBub3JtYWxpemVWYWx1ZSh2YWx1ZSwgdHlwZSksIHsKICAgICAgICAgIGZvcm1hdHRpbmdPcHRpb25zOiB7CiAgICAgICAgICAgIGluc2VydFNwYWNlczogdHJ1ZSwKICAgICAgICAgICAgdGFiU2l6ZTogMiwKICAgICAgICAgICAgZW9sOiBnZXRFT0woY29udGVudCkKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgICBjb250ZW50ID0gKDAsIGpzb25jX3BhcnNlcl8xLmFwcGx5RWRpdHMpKGNvbnRlbnQsIGVkaXRzKTsKICAgICAgfQogICAgICByZXR1cm4gY29udGVudDsKICAgIH0KICAgIGZ1bmN0aW9uIGdldEVPTChjb250ZW50KSB7CiAgICAgIGNvbnN0IENSTEYgPSAiXHJcbiI7CiAgICAgIGNvbnN0IExGID0gIlxuIjsKICAgICAgY29uc3QgbmV3bGluZXMgPSBjb250ZW50Lm1hdGNoKC8oPzpccj9cbikvZyk7CiAgICAgIGlmIChuZXdsaW5lcz8ubGVuZ3RoKSB7CiAgICAgICAgY29uc3QgY3JsZiA9IG5ld2xpbmVzLmZpbHRlcigobCkgPT4gbCA9PT0gQ1JMRikubGVuZ3RoOwogICAgICAgIGNvbnN0IGxmID0gbmV3bGluZXMubGVuZ3RoIC0gY3JsZjsKICAgICAgICByZXR1cm4gY3JsZiA+IGxmID8gQ1JMRiA6IExGOwogICAgICB9CiAgICAgIHJldHVybiBub2RlX29zXzEuRU9MOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvY29yZS5qcwp2YXIgcmVxdWlyZV9jb3JlMyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvY29yZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuV29ya3NwYWNlRm9ybWF0ID0gdm9pZCAwOwogICAgZXhwb3J0czIuX3Rlc3RfYWRkV29ya3NwYWNlRmlsZSA9IF90ZXN0X2FkZFdvcmtzcGFjZUZpbGU7CiAgICBleHBvcnRzMi5fdGVzdF9yZW1vdmVXb3Jrc3BhY2VGaWxlID0gX3Rlc3RfcmVtb3ZlV29ya3NwYWNlRmlsZTsKICAgIGV4cG9ydHMyLnJlYWRXb3Jrc3BhY2UgPSByZWFkV29ya3NwYWNlOwogICAgZXhwb3J0czIud3JpdGVXb3Jrc3BhY2UgPSB3cml0ZVdvcmtzcGFjZTsKICAgIHZhciB2aXJ0dWFsX2ZzXzEgPSByZXF1aXJlX3ZpcnR1YWxfZnMoKTsKICAgIHZhciByZWFkZXJfMSA9IHJlcXVpcmVfcmVhZGVyKCk7CiAgICB2YXIgd3JpdGVyXzEgPSByZXF1aXJlX3dyaXRlcigpOwogICAgdmFyIGZvcm1hdExvb2t1cCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgV2Vha01hcCgpOwogICAgdmFyIFdvcmtzcGFjZUZvcm1hdDsKICAgIChmdW5jdGlvbihXb3Jrc3BhY2VGb3JtYXQyKSB7CiAgICAgIFdvcmtzcGFjZUZvcm1hdDJbV29ya3NwYWNlRm9ybWF0MlsiSlNPTiJdID0gMF0gPSAiSlNPTiI7CiAgICB9KShXb3Jrc3BhY2VGb3JtYXQgfHwgKGV4cG9ydHMyLldvcmtzcGFjZUZvcm1hdCA9IFdvcmtzcGFjZUZvcm1hdCA9IHt9KSk7CiAgICBmdW5jdGlvbiBfdGVzdF9hZGRXb3Jrc3BhY2VGaWxlKG5hbWUsIGZvcm1hdCkgewogICAgICB3b3Jrc3BhY2VGaWxlc1tuYW1lXSA9IGZvcm1hdDsKICAgIH0KICAgIGZ1bmN0aW9uIF90ZXN0X3JlbW92ZVdvcmtzcGFjZUZpbGUobmFtZSkgewogICAgICBkZWxldGUgd29ya3NwYWNlRmlsZXNbbmFtZV07CiAgICB9CiAgICB2YXIgd29ya3NwYWNlRmlsZXMgPSB7CiAgICAgICJhbmd1bGFyLmpzb24iOiBXb3Jrc3BhY2VGb3JtYXQuSlNPTiwKICAgICAgIi5hbmd1bGFyLmpzb24iOiBXb3Jrc3BhY2VGb3JtYXQuSlNPTgogICAgfTsKICAgIGFzeW5jIGZ1bmN0aW9uIHJlYWRXb3Jrc3BhY2UocGF0aCwgaG9zdCwgZm9ybWF0KSB7CiAgICAgIGlmIChhd2FpdCBob3N0LmlzRGlyZWN0b3J5KHBhdGgpKSB7CiAgICAgICAgY29uc3QgZGlyZWN0b3J5ID0gKDAsIHZpcnR1YWxfZnNfMS5ub3JtYWxpemUpKHBhdGgpOwogICAgICAgIGxldCBmb3VuZCA9IGZhbHNlOwogICAgICAgIGZvciAoY29uc3QgW25hbWUsIG5hbWVGb3JtYXRdIG9mIE9iamVjdC5lbnRyaWVzKHdvcmtzcGFjZUZpbGVzKSkgewogICAgICAgICAgaWYgKGZvcm1hdCAhPT0gdm9pZCAwICYmIGZvcm1hdCAhPT0gbmFtZUZvcm1hdCkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHBvdGVudGlhbCA9ICgwLCB2aXJ0dWFsX2ZzXzEuZ2V0U3lzdGVtUGF0aCkoKDAsIHZpcnR1YWxfZnNfMS5qb2luKShkaXJlY3RvcnksIG5hbWUpKTsKICAgICAgICAgIGlmIChhd2FpdCBob3N0LmlzRmlsZShwb3RlbnRpYWwpKSB7CiAgICAgICAgICAgIHBhdGggPSBwb3RlbnRpYWw7CiAgICAgICAgICAgIGZvcm1hdCA9IG5hbWVGb3JtYXQ7CiAgICAgICAgICAgIGZvdW5kID0gdHJ1ZTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmICghZm91bmQpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5hYmxlIHRvIGxvY2F0ZSBhIHdvcmtzcGFjZSBmaWxlIGZvciB3b3Jrc3BhY2UgcGF0aC4gQXJlIHlvdSBtaXNzaW5nIGFuIGBhbmd1bGFyLmpzb25gIG9yIGAuYW5ndWxhci5qc29uYCBmaWxlPyIpOwogICAgICAgIH0KICAgICAgfSBlbHNlIGlmIChmb3JtYXQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbnN0IGZpbGVuYW1lID0gKDAsIHZpcnR1YWxfZnNfMS5iYXNlbmFtZSkoKDAsIHZpcnR1YWxfZnNfMS5ub3JtYWxpemUpKHBhdGgpKTsKICAgICAgICBpZiAoZmlsZW5hbWUgaW4gd29ya3NwYWNlRmlsZXMpIHsKICAgICAgICAgIGZvcm1hdCA9IHdvcmtzcGFjZUZpbGVzW2ZpbGVuYW1lXTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKGZvcm1hdCA9PT0gdm9pZCAwKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJVbmFibGUgdG8gZGV0ZXJtaW5lIGZvcm1hdCBmb3Igd29ya3NwYWNlIHBhdGguIik7CiAgICAgIH0KICAgICAgbGV0IHdvcmtzcGFjZTsKICAgICAgc3dpdGNoIChmb3JtYXQpIHsKICAgICAgICBjYXNlIFdvcmtzcGFjZUZvcm1hdC5KU09OOgogICAgICAgICAgd29ya3NwYWNlID0gYXdhaXQgKDAsIHJlYWRlcl8xLnJlYWRKc29uV29ya3NwYWNlKShwYXRoLCBob3N0KTsKICAgICAgICAgIGJyZWFrOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVuc3VwcG9ydGVkIHdvcmtzcGFjZSBmb3JtYXQuIik7CiAgICAgIH0KICAgICAgZm9ybWF0TG9va3VwLnNldCh3b3Jrc3BhY2UsIFdvcmtzcGFjZUZvcm1hdC5KU09OKTsKICAgICAgcmV0dXJuIHsgd29ya3NwYWNlIH07CiAgICB9CiAgICBhc3luYyBmdW5jdGlvbiB3cml0ZVdvcmtzcGFjZSh3b3Jrc3BhY2UsIGhvc3QsIHBhdGgsIGZvcm1hdCkgewogICAgICBpZiAoZm9ybWF0ID09PSB2b2lkIDApIHsKICAgICAgICBmb3JtYXQgPSBmb3JtYXRMb29rdXAuZ2V0KHdvcmtzcGFjZSk7CiAgICAgICAgaWYgKGZvcm1hdCA9PT0gdm9pZCAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkEgZm9ybWF0IGlzIHJlcXVpcmVkIGZvciBjdXN0b20gd29ya3NwYWNlIG9iamVjdHMuIik7CiAgICAgICAgfQogICAgICB9CiAgICAgIHN3aXRjaCAoZm9ybWF0KSB7CiAgICAgICAgY2FzZSBXb3Jrc3BhY2VGb3JtYXQuSlNPTjoKICAgICAgICAgIHJldHVybiAoMCwgd3JpdGVyXzEud3JpdGVKc29uV29ya3NwYWNlKSh3b3Jrc3BhY2UsIGhvc3QsIHBhdGgpOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVuc3VwcG9ydGVkIHdvcmtzcGFjZSBmb3JtYXQuIik7CiAgICAgIH0KICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2luZGV4LmpzCnZhciByZXF1aXJlX3dvcmtzcGFjZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndyaXRlV29ya3NwYWNlID0gZXhwb3J0czIucmVhZFdvcmtzcGFjZSA9IGV4cG9ydHMyLldvcmtzcGFjZUZvcm1hdCA9IGV4cG9ydHMyLmNyZWF0ZVdvcmtzcGFjZUhvc3QgPSB2b2lkIDA7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9kZWZpbml0aW9ucygpLCBleHBvcnRzMik7CiAgICB2YXIgaG9zdF8xID0gcmVxdWlyZV9ob3N0MigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY3JlYXRlV29ya3NwYWNlSG9zdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGhvc3RfMS5jcmVhdGVXb3Jrc3BhY2VIb3N0OwogICAgfSB9KTsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX2NvcmUzKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJXb3Jrc3BhY2VGb3JtYXQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb3JlXzEuV29ya3NwYWNlRm9ybWF0OwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInJlYWRXb3Jrc3BhY2UiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb3JlXzEucmVhZFdvcmtzcGFjZTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ3cml0ZVdvcmtzcGFjZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvcmVfMS53cml0ZVdvcmtzcGFjZTsKICAgIH0gfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2luZGV4LmpzCnZhciByZXF1aXJlX3NyYyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMC9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtN2Q4MWZkMTA0Ny56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX3NldE1vZHVsZURlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NldE1vZHVsZURlZmF1bHQgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCB2KSB7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZGVmYXVsdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHYgfSk7CiAgICB9IDogZnVuY3Rpb24obywgdikgewogICAgICBvWyJkZWZhdWx0Il0gPSB2OwogICAgfSk7CiAgICB2YXIgX19pbXBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19pbXBvcnRTdGFyIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIG93bktleXMgPSBmdW5jdGlvbihvKSB7CiAgICAgICAgb3duS2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uKG8yKSB7CiAgICAgICAgICB2YXIgYXIgPSBbXTsKICAgICAgICAgIGZvciAodmFyIGsgaW4gbzIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobzIsIGspKSBhclthci5sZW5ndGhdID0gazsKICAgICAgICAgIHJldHVybiBhcjsKICAgICAgICB9OwogICAgICAgIHJldHVybiBvd25LZXlzKG8pOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24obW9kKSB7CiAgICAgICAgaWYgKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgcmV0dXJuIG1vZDsKICAgICAgICB2YXIgcmVzdWx0ID0ge307CiAgICAgICAgaWYgKG1vZCAhPSBudWxsKSB7CiAgICAgICAgICBmb3IgKHZhciBrID0gb3duS2V5cyhtb2QpLCBpID0gMDsgaSA8IGsubGVuZ3RoOyBpKyspIGlmIChrW2ldICE9PSAiZGVmYXVsdCIpIF9fY3JlYXRlQmluZGluZyhyZXN1bHQsIG1vZCwga1tpXSk7CiAgICAgICAgfQogICAgICAgIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIud29ya3NwYWNlcyA9IGV4cG9ydHMyLmxvZ2dpbmcgPSBleHBvcnRzMi5qc29uID0gdm9pZCAwOwogICAgdmFyIGpzb24gPSBfX2ltcG9ydFN0YXIocmVxdWlyZV9qc29uKCkpOwogICAgZXhwb3J0czIuanNvbiA9IGpzb247CiAgICB2YXIgbG9nZ2luZyA9IF9faW1wb3J0U3RhcihyZXF1aXJlX2xvZ2dlcjIoKSk7CiAgICBleHBvcnRzMi5sb2dnaW5nID0gbG9nZ2luZzsKICAgIHZhciB3b3Jrc3BhY2VzID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfd29ya3NwYWNlKCkpOwogICAgZXhwb3J0czIud29ya3NwYWNlcyA9IHdvcmtzcGFjZXM7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9leGNlcHRpb24oKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfanNvbigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV91dGlsczMoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdmlydHVhbF9mcygpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC1iNWUyZmQyMjJmLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvaHRtbC1zZWxlY3Rvci5qcwp2YXIgcmVxdWlyZV9odG1sX3NlbGVjdG9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC1iNWUyZmQyMjJmLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvaHRtbC1zZWxlY3Rvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaHRtbFNlbGVjdG9yRm9ybWF0ID0gdm9pZCAwOwogICAgdmFyIHVuaWNvZGVSYW5nZXMgPSBbCiAgICAgIFsxOTIsIDIxNF0sCiAgICAgIFsyMTYsIDI0Nl0sCiAgICAgIFsyNDgsIDg5M10sCiAgICAgIFs4OTUsIDgxOTFdLAogICAgICBbODIwNCwgODIwNV0sCiAgICAgIFs4MjU1LCA4MjU2XSwKICAgICAgWzgzMDQsIDg1OTFdLAogICAgICBbMTEyNjQsIDEyMjcxXSwKICAgICAgWzEyMjg5LCA1NTI5NV0sCiAgICAgIFs2Mzc0NCwgNjQ5NzVdLAogICAgICBbNjUwMDgsIDY1NTMzXSwKICAgICAgWzY1NTM2LCA5ODMwMzldCiAgICBdOwogICAgZnVuY3Rpb24gaXNWYWxpZEVsZW1lbnROYW1lKG5hbWUpIHsKICAgICAgbGV0IHJlZ2V4ID0gIl5bYS16QS1aXVsiOwogICAgICByZWdleCArPSAiLS4wLTlfYS16QS1aXFx1e0I3fSI7CiAgICAgIGZvciAoY29uc3QgcmFuZ2Ugb2YgdW5pY29kZVJhbmdlcykgewogICAgICAgIHJlZ2V4ICs9IGBcXHV7JHtyYW5nZVswXS50b1N0cmluZygxNil9fS1cXHV7JHtyYW5nZVsxXS50b1N0cmluZygxNil9fWA7CiAgICAgIH0KICAgICAgcmVnZXggKz0gIl0qJCI7CiAgICAgIHJldHVybiBuZXcgUmVnRXhwKHJlZ2V4LCAidSIpLnRlc3QobmFtZSk7CiAgICB9CiAgICBleHBvcnRzMi5odG1sU2VsZWN0b3JGb3JtYXQgPSB7CiAgICAgIG5hbWU6ICJodG1sLXNlbGVjdG9yIiwKICAgICAgZm9ybWF0dGVyOiB7CiAgICAgICAgYXN5bmM6IGZhbHNlLAogICAgICAgIHZhbGlkYXRlOiAobmFtZSkgPT4gdHlwZW9mIG5hbWUgPT09ICJzdHJpbmciICYmIGlzVmFsaWRFbGVtZW50TmFtZShuYW1lKQogICAgICB9CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtYjVlMmZkMjIyZi56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9mb3JtYXRzL3BhdGguanMKdmFyIHJlcXVpcmVfcGF0aDIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LWI1ZTJmZDIyMmYuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZm9ybWF0cy9wYXRoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5wYXRoRm9ybWF0ID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICBleHBvcnRzMi5wYXRoRm9ybWF0ID0gewogICAgICBuYW1lOiAicGF0aCIsCiAgICAgIGZvcm1hdHRlcjogewogICAgICAgIGFzeW5jOiBmYWxzZSwKICAgICAgICB2YWxpZGF0ZTogKHBhdGgpID0+IHsKICAgICAgICAgIHJldHVybiBwYXRoID09PSAoMCwgY29yZV8xLm5vcm1hbGl6ZSkocGF0aCk7CiAgICAgICAgfQogICAgICB9CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtYjVlMmZkMjIyZi56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9mb3JtYXRzL2luZGV4LmpzCnZhciByZXF1aXJlX2Zvcm1hdHMyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC1iNWUyZmQyMjJmLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN0YW5kYXJkRm9ybWF0cyA9IGV4cG9ydHMyLnBhdGhGb3JtYXQgPSBleHBvcnRzMi5odG1sU2VsZWN0b3JGb3JtYXQgPSB2b2lkIDA7CiAgICB2YXIgaHRtbF9zZWxlY3Rvcl8xID0gcmVxdWlyZV9odG1sX3NlbGVjdG9yKCk7CiAgICB2YXIgcGF0aF8xID0gcmVxdWlyZV9wYXRoMigpOwogICAgdmFyIGh0bWxfc2VsZWN0b3JfMiA9IHJlcXVpcmVfaHRtbF9zZWxlY3RvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaHRtbFNlbGVjdG9yRm9ybWF0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gaHRtbF9zZWxlY3Rvcl8yLmh0bWxTZWxlY3RvckZvcm1hdDsKICAgIH0gfSk7CiAgICB2YXIgcGF0aF8yID0gcmVxdWlyZV9wYXRoMigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicGF0aEZvcm1hdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHBhdGhfMi5wYXRoRm9ybWF0OwogICAgfSB9KTsKICAgIGV4cG9ydHMyLnN0YW5kYXJkRm9ybWF0cyA9IFtodG1sX3NlbGVjdG9yXzEuaHRtbFNlbGVjdG9yRm9ybWF0LCBwYXRoXzEucGF0aEZvcm1hdF07CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC1iNWUyZmQyMjJmLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvaW50ZXJmYWNlLmpzCnZhciByZXF1aXJlX2ludGVyZmFjZTMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LWI1ZTJmZDIyMmYuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9pbnRlcmZhY2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlRyZWUgPSBleHBvcnRzMi5UcmVlU3ltYm9sID0gZXhwb3J0czIuRmlsZVZpc2l0b3JDYW5jZWxUb2tlbiA9IGV4cG9ydHMyLk1lcmdlU3RyYXRlZ3kgPSB2b2lkIDA7CiAgICB2YXIgTWVyZ2VTdHJhdGVneTI7CiAgICAoZnVuY3Rpb24oTWVyZ2VTdHJhdGVneTMpIHsKICAgICAgTWVyZ2VTdHJhdGVneTNbTWVyZ2VTdHJhdGVneTNbIkFsbG93T3ZlcndyaXRlQ29uZmxpY3QiXSA9IDJdID0gIkFsbG93T3ZlcndyaXRlQ29uZmxpY3QiOwogICAgICBNZXJnZVN0cmF0ZWd5M1tNZXJnZVN0cmF0ZWd5M1siQWxsb3dDcmVhdGlvbkNvbmZsaWN0Il0gPSA0XSA9ICJBbGxvd0NyZWF0aW9uQ29uZmxpY3QiOwogICAgICBNZXJnZVN0cmF0ZWd5M1tNZXJnZVN0cmF0ZWd5M1siQWxsb3dEZWxldGVDb25mbGljdCJdID0gOF0gPSAiQWxsb3dEZWxldGVDb25mbGljdCI7CiAgICAgIE1lcmdlU3RyYXRlZ3kzW01lcmdlU3RyYXRlZ3kzWyJEZWZhdWx0Il0gPSAwXSA9ICJEZWZhdWx0IjsKICAgICAgTWVyZ2VTdHJhdGVneTNbTWVyZ2VTdHJhdGVneTNbIkVycm9yIl0gPSAxXSA9ICJFcnJvciI7CiAgICAgIE1lcmdlU3RyYXRlZ3kzW01lcmdlU3RyYXRlZ3kzWyJDb250ZW50T25seSJdID0gMl0gPSAiQ29udGVudE9ubHkiOwogICAgICBNZXJnZVN0cmF0ZWd5M1tNZXJnZVN0cmF0ZWd5M1siT3ZlcndyaXRlIl0gPSAxNF0gPSAiT3ZlcndyaXRlIjsKICAgIH0pKE1lcmdlU3RyYXRlZ3kyIHx8IChleHBvcnRzMi5NZXJnZVN0cmF0ZWd5ID0gTWVyZ2VTdHJhdGVneTIgPSB7fSkpOwogICAgZXhwb3J0czIuRmlsZVZpc2l0b3JDYW5jZWxUb2tlbiA9IFN5bWJvbCgpOwogICAgZXhwb3J0czIuVHJlZVN5bWJvbCA9IGZ1bmN0aW9uKCkgewogICAgICBjb25zdCBnbG9iYWxTeW1ib2wgPSB0eXBlb2Ygd2luZG93ID09ICJvYmplY3QiICYmIHdpbmRvdy53aW5kb3cgPT09IHdpbmRvdyAmJiB3aW5kb3cuU3ltYm9sIHx8IHR5cGVvZiBzZWxmID09ICJvYmplY3QiICYmIHNlbGYuc2VsZiA9PT0gc2VsZiAmJiBzZWxmLlN5bWJvbCB8fCB0eXBlb2YgZ2xvYmFsID09ICJvYmplY3QiICYmIGdsb2JhbC5nbG9iYWwgPT09IGdsb2JhbCAmJiBnbG9iYWwuU3ltYm9sOwogICAgICBpZiAoIWdsb2JhbFN5bWJvbCkgewogICAgICAgIHJldHVybiBTeW1ib2woInNjaGVtYXRpYy10cmVlIik7CiAgICAgIH0KICAgICAgaWYgKCFnbG9iYWxTeW1ib2wuc2NoZW1hdGljVHJlZSkgewogICAgICAgIGdsb2JhbFN5bWJvbC5zY2hlbWF0aWNUcmVlID0gU3ltYm9sKCJzY2hlbWF0aWMtdHJlZSIpOwogICAgICB9CiAgICAgIHJldHVybiBnbG9iYWxTeW1ib2wuc2NoZW1hdGljVHJlZTsKICAgIH0oKTsKICAgIGV4cG9ydHMyLlRyZWUgPSBPYmplY3QuZnJlZXplKHsKICAgICAgaXNUcmVlKG1heWJlVHJlZSkgewogICAgICAgIHJldHVybiBleHBvcnRzMi5UcmVlU3ltYm9sIGluIG1heWJlVHJlZTsKICAgICAgfQogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC1iNWUyZmQyMjJmLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2V4Y2VwdGlvbi9leGNlcHRpb24uanMKdmFyIHJlcXVpcmVfZXhjZXB0aW9uMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtYjVlMmZkMjIyZi56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9leGNlcHRpb24vZXhjZXB0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5VbmltcGxlbWVudGVkRXhjZXB0aW9uID0gZXhwb3J0czIuVW5zdWNjZXNzZnVsV29ya2Zsb3dFeGVjdXRpb24gPSBleHBvcnRzMi5NZXJnZUNvbmZsaWN0RXhjZXB0aW9uID0gZXhwb3J0czIuSW52YWxpZFVwZGF0ZVJlY29yZEV4Y2VwdGlvbiA9IGV4cG9ydHMyLkNvbnRlbnRIYXNNdXRhdGVkRXhjZXB0aW9uID0gZXhwb3J0czIuRmlsZUFscmVhZHlFeGlzdEV4Y2VwdGlvbiA9IGV4cG9ydHMyLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24gPSBleHBvcnRzMi5TY2hlbWF0aWNzRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgU2NoZW1hdGljc0V4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgfTsKICAgIGV4cG9ydHMyLlNjaGVtYXRpY3NFeGNlcHRpb24gPSBTY2hlbWF0aWNzRXhjZXB0aW9uOwogICAgdmFyIEZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IocGF0aCkgewogICAgICAgIHN1cGVyKGBQYXRoICIke3BhdGh9IiBkb2VzIG5vdCBleGlzdC5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24gPSBGaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uOwogICAgdmFyIEZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IocGF0aCkgewogICAgICAgIHN1cGVyKGBQYXRoICIke3BhdGh9IiBhbHJlYWR5IGV4aXN0LmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRmlsZUFscmVhZHlFeGlzdEV4Y2VwdGlvbiA9IEZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb247CiAgICB2YXIgQ29udGVudEhhc011dGF0ZWRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IocGF0aCkgewogICAgICAgIHN1cGVyKGBDb250ZW50IGF0IHBhdGggIiR7cGF0aH0iIGhhcyBjaGFuZ2VkIGJldHdlZW4gdGhlIHN0YXJ0IGFuZCB0aGUgZW5kIG9mIGFuIHVwZGF0ZS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkNvbnRlbnRIYXNNdXRhdGVkRXhjZXB0aW9uID0gQ29udGVudEhhc011dGF0ZWRFeGNlcHRpb247CiAgICB2YXIgSW52YWxpZFVwZGF0ZVJlY29yZEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcigpIHsKICAgICAgICBzdXBlcihgSW52YWxpZCByZWNvcmQgaW5zdGFuY2UuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5JbnZhbGlkVXBkYXRlUmVjb3JkRXhjZXB0aW9uID0gSW52YWxpZFVwZGF0ZVJlY29yZEV4Y2VwdGlvbjsKICAgIHZhciBNZXJnZUNvbmZsaWN0RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgQSBtZXJnZSBjb25mbGljdGVkIG9uIHBhdGggIiR7cGF0aH0iLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTWVyZ2VDb25mbGljdEV4Y2VwdGlvbiA9IE1lcmdlQ29uZmxpY3RFeGNlcHRpb247CiAgICB2YXIgVW5zdWNjZXNzZnVsV29ya2Zsb3dFeGVjdXRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgc3VwZXIoIldvcmtmbG93IGRpZCBub3QgZXhlY3V0ZSBzdWNjZXNzZnVsbHkuIik7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5VbnN1Y2Nlc3NmdWxXb3JrZmxvd0V4ZWN1dGlvbiA9IFVuc3VjY2Vzc2Z1bFdvcmtmbG93RXhlY3V0aW9uOwogICAgdmFyIFVuaW1wbGVtZW50ZWRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgc3VwZXIoIlRoaXMgZnVuY3Rpb24gaXMgdW5pbXBsZW1lbnRlZC4iKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVuaW1wbGVtZW50ZWRFeGNlcHRpb24gPSBVbmltcGxlbWVudGVkRXhjZXB0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtYjVlMmZkMjIyZi56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2RlbGVnYXRlLmpzCnZhciByZXF1aXJlX2RlbGVnYXRlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC1iNWUyZmQyMjJmLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZGVsZWdhdGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkRlbGVnYXRlVHJlZSA9IHZvaWQgMDsKICAgIHZhciBpbnRlcmZhY2VfMSA9IHJlcXVpcmVfaW50ZXJmYWNlMygpOwogICAgdmFyIERlbGVnYXRlVHJlZSA9IGNsYXNzIHsKICAgICAgX290aGVyOwogICAgICBjb25zdHJ1Y3Rvcihfb3RoZXIpIHsKICAgICAgICB0aGlzLl9vdGhlciA9IF9vdGhlcjsKICAgICAgfQogICAgICBicmFuY2goKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmJyYW5jaCgpOwogICAgICB9CiAgICAgIG1lcmdlKG90aGVyLCBzdHJhdGVneSkgewogICAgICAgIHRoaXMuX290aGVyLm1lcmdlKG90aGVyLCBzdHJhdGVneSk7CiAgICAgIH0KICAgICAgZ2V0IHJvb3QoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLnJvb3Q7CiAgICAgIH0KICAgICAgLy8gUmVhZG9ubHkuCiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5yZWFkKHBhdGgpOwogICAgICB9CiAgICAgIHJlYWRUZXh0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIucmVhZFRleHQocGF0aCk7CiAgICAgIH0KICAgICAgcmVhZEpzb24ocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5yZWFkSnNvbihwYXRoKTsKICAgICAgfQogICAgICBleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5leGlzdHMocGF0aCk7CiAgICAgIH0KICAgICAgZ2V0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuZ2V0KHBhdGgpOwogICAgICB9CiAgICAgIGdldERpcihwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmdldERpcihwYXRoKTsKICAgICAgfQogICAgICB2aXNpdCh2aXNpdG9yKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLnZpc2l0KHZpc2l0b3IpOwogICAgICB9CiAgICAgIC8vIENoYW5nZSBjb250ZW50IG9mIGhvc3QgZmlsZXMuCiAgICAgIG92ZXJ3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLm92ZXJ3cml0ZShwYXRoLCBjb250ZW50KTsKICAgICAgfQogICAgICBiZWdpblVwZGF0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmJlZ2luVXBkYXRlKHBhdGgpOwogICAgICB9CiAgICAgIGNvbW1pdFVwZGF0ZShyZWNvcmQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuY29tbWl0VXBkYXRlKHJlY29yZCk7CiAgICAgIH0KICAgICAgLy8gU3RydWN0dXJhbCBtZXRob2RzLgogICAgICBjcmVhdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5jcmVhdGUocGF0aCwgY29udGVudCk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuZGVsZXRlKHBhdGgpOwogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5yZW5hbWUoZnJvbSwgdG8pOwogICAgICB9CiAgICAgIGFwcGx5KGFjdGlvbiwgc3RyYXRlZ3kpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuYXBwbHkoYWN0aW9uLCBzdHJhdGVneSk7CiAgICAgIH0KICAgICAgZ2V0IGFjdGlvbnMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmFjdGlvbnM7CiAgICAgIH0KICAgICAgW2ludGVyZmFjZV8xLlRyZWVTeW1ib2xdKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRGVsZWdhdGVUcmVlID0gRGVsZWdhdGVUcmVlOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtYjVlMmZkMjIyZi56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2VudHJ5LmpzCnZhciByZXF1aXJlX2VudHJ5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC1iNWUyZmQyMjJmLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZW50cnkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkxhenlGaWxlRW50cnkgPSBleHBvcnRzMi5TaW1wbGVGaWxlRW50cnkgPSB2b2lkIDA7CiAgICB2YXIgU2ltcGxlRmlsZUVudHJ5ID0gY2xhc3MgewogICAgICBfcGF0aDsKICAgICAgX2NvbnRlbnQ7CiAgICAgIGNvbnN0cnVjdG9yKF9wYXRoLCBfY29udGVudCkgewogICAgICAgIHRoaXMuX3BhdGggPSBfcGF0aDsKICAgICAgICB0aGlzLl9jb250ZW50ID0gX2NvbnRlbnQ7CiAgICAgIH0KICAgICAgZ2V0IHBhdGgoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3BhdGg7CiAgICAgIH0KICAgICAgZ2V0IGNvbnRlbnQoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2NvbnRlbnQ7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TaW1wbGVGaWxlRW50cnkgPSBTaW1wbGVGaWxlRW50cnk7CiAgICB2YXIgTGF6eUZpbGVFbnRyeSA9IGNsYXNzIHsKICAgICAgX3BhdGg7CiAgICAgIF9sb2FkOwogICAgICBfY29udGVudCA9IG51bGw7CiAgICAgIGNvbnN0cnVjdG9yKF9wYXRoLCBfbG9hZCkgewogICAgICAgIHRoaXMuX3BhdGggPSBfcGF0aDsKICAgICAgICB0aGlzLl9sb2FkID0gX2xvYWQ7CiAgICAgIH0KICAgICAgZ2V0IHBhdGgoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3BhdGg7CiAgICAgIH0KICAgICAgZ2V0IGNvbnRlbnQoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2NvbnRlbnQgfHwgKHRoaXMuX2NvbnRlbnQgPSB0aGlzLl9sb2FkKHRoaXMuX3BhdGgpKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkxhenlGaWxlRW50cnkgPSBMYXp5RmlsZUVudHJ5OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9AanJpZGdld2VsbC1zb3VyY2VtYXAtY29kZWMtbnBtLTEuNS4wLWRmZDkxMjZkNzEtNGVkNjEyMzIxNy56aXAvbm9kZV9tb2R1bGVzL0BqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYy9kaXN0L3NvdXJjZW1hcC1jb2RlYy51bWQuanMKdmFyIHJlcXVpcmVfc291cmNlbWFwX2NvZGVjX3VtZCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9AanJpZGdld2VsbC1zb3VyY2VtYXAtY29kZWMtbnBtLTEuNS4wLWRmZDkxMjZkNzEtNGVkNjEyMzIxNy56aXAvbm9kZV9tb2R1bGVzL0BqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYy9kaXN0L3NvdXJjZW1hcC1jb2RlYy51bWQuanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAoZnVuY3Rpb24oZ2xvYmFsMiwgZmFjdG9yeSkgewogICAgICB0eXBlb2YgZXhwb3J0czIgPT09ICJvYmplY3QiICYmIHR5cGVvZiBtb2R1bGUyICE9PSAidW5kZWZpbmVkIiA/IGZhY3RvcnkoZXhwb3J0czIpIDogdHlwZW9mIGRlZmluZSA9PT0gImZ1bmN0aW9uIiAmJiBkZWZpbmUuYW1kID8gZGVmaW5lKFsiZXhwb3J0cyJdLCBmYWN0b3J5KSA6IChnbG9iYWwyID0gdHlwZW9mIGdsb2JhbFRoaXMgIT09ICJ1bmRlZmluZWQiID8gZ2xvYmFsVGhpcyA6IGdsb2JhbDIgfHwgc2VsZiwgZmFjdG9yeShnbG9iYWwyLnNvdXJjZW1hcENvZGVjID0ge30pKTsKICAgIH0pKGV4cG9ydHMyLCBmdW5jdGlvbihleHBvcnRzMykgewogICAgICAidXNlIHN0cmljdCI7CiAgICAgIGNvbnN0IGNvbW1hID0gIiwiLmNoYXJDb2RlQXQoMCk7CiAgICAgIGNvbnN0IHNlbWljb2xvbiA9ICI7Ii5jaGFyQ29kZUF0KDApOwogICAgICBjb25zdCBjaGFycyA9ICJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvIjsKICAgICAgY29uc3QgaW50VG9DaGFyID0gbmV3IFVpbnQ4QXJyYXkoNjQpOwogICAgICBjb25zdCBjaGFyVG9JbnQgPSBuZXcgVWludDhBcnJheSgxMjgpOwogICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNoYXJzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgY29uc3QgYyA9IGNoYXJzLmNoYXJDb2RlQXQoaSk7CiAgICAgICAgaW50VG9DaGFyW2ldID0gYzsKICAgICAgICBjaGFyVG9JbnRbY10gPSBpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGRlY29kZUludGVnZXIocmVhZGVyLCByZWxhdGl2ZSkgewogICAgICAgIGxldCB2YWx1ZSA9IDA7CiAgICAgICAgbGV0IHNoaWZ0ID0gMDsKICAgICAgICBsZXQgaW50ZWdlciA9IDA7CiAgICAgICAgZG8gewogICAgICAgICAgY29uc3QgYyA9IHJlYWRlci5uZXh0KCk7CiAgICAgICAgICBpbnRlZ2VyID0gY2hhclRvSW50W2NdOwogICAgICAgICAgdmFsdWUgfD0gKGludGVnZXIgJiAzMSkgPDwgc2hpZnQ7CiAgICAgICAgICBzaGlmdCArPSA1OwogICAgICAgIH0gd2hpbGUgKGludGVnZXIgJiAzMik7CiAgICAgICAgY29uc3Qgc2hvdWxkTmVnYXRlID0gdmFsdWUgJiAxOwogICAgICAgIHZhbHVlID4+Pj0gMTsKICAgICAgICBpZiAoc2hvdWxkTmVnYXRlKSB7CiAgICAgICAgICB2YWx1ZSA9IC0yMTQ3NDgzNjQ4IHwgLXZhbHVlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVsYXRpdmUgKyB2YWx1ZTsKICAgICAgfQogICAgICBmdW5jdGlvbiBlbmNvZGVJbnRlZ2VyKGJ1aWxkZXIsIG51bSwgcmVsYXRpdmUpIHsKICAgICAgICBsZXQgZGVsdGEgPSBudW0gLSByZWxhdGl2ZTsKICAgICAgICBkZWx0YSA9IGRlbHRhIDwgMCA/IC1kZWx0YSA8PCAxIHwgMSA6IGRlbHRhIDw8IDE7CiAgICAgICAgZG8gewogICAgICAgICAgbGV0IGNsYW1wZWQgPSBkZWx0YSAmIDMxOwogICAgICAgICAgZGVsdGEgPj4+PSA1OwogICAgICAgICAgaWYgKGRlbHRhID4gMCkKICAgICAgICAgICAgY2xhbXBlZCB8PSAzMjsKICAgICAgICAgIGJ1aWxkZXIud3JpdGUoaW50VG9DaGFyW2NsYW1wZWRdKTsKICAgICAgICB9IHdoaWxlIChkZWx0YSA+IDApOwogICAgICAgIHJldHVybiBudW07CiAgICAgIH0KICAgICAgZnVuY3Rpb24gaGFzTW9yZVZscShyZWFkZXIsIG1heCkgewogICAgICAgIGlmIChyZWFkZXIucG9zID49IG1heCkKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICByZXR1cm4gcmVhZGVyLnBlZWsoKSAhPT0gY29tbWE7CiAgICAgIH0KICAgICAgY29uc3QgYnVmTGVuZ3RoID0gMTAyNCAqIDE2OwogICAgICBjb25zdCB0ZCA9IHR5cGVvZiBUZXh0RGVjb2RlciAhPT0gInVuZGVmaW5lZCIgPyAvKiBAX19QVVJFX18gKi8gbmV3IFRleHREZWNvZGVyKCkgOiB0eXBlb2YgQnVmZmVyICE9PSAidW5kZWZpbmVkIiA/IHsKICAgICAgICBkZWNvZGUoYnVmKSB7CiAgICAgICAgICBjb25zdCBvdXQgPSBCdWZmZXIuZnJvbShidWYuYnVmZmVyLCBidWYuYnl0ZU9mZnNldCwgYnVmLmJ5dGVMZW5ndGgpOwogICAgICAgICAgcmV0dXJuIG91dC50b1N0cmluZygpOwogICAgICAgIH0KICAgICAgfSA6IHsKICAgICAgICBkZWNvZGUoYnVmKSB7CiAgICAgICAgICBsZXQgb3V0ID0gIiI7CiAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGJ1Zi5sZW5ndGg7IGkrKykgewogICAgICAgICAgICBvdXQgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShidWZbaV0pOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIG91dDsKICAgICAgICB9CiAgICAgIH07CiAgICAgIGNsYXNzIFN0cmluZ1dyaXRlciB7CiAgICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgICB0aGlzLnBvcyA9IDA7CiAgICAgICAgICB0aGlzLm91dCA9ICIiOwogICAgICAgICAgdGhpcy5idWZmZXIgPSBuZXcgVWludDhBcnJheShidWZMZW5ndGgpOwogICAgICAgIH0KICAgICAgICB3cml0ZSh2KSB7CiAgICAgICAgICBjb25zdCB7IGJ1ZmZlciB9ID0gdGhpczsKICAgICAgICAgIGJ1ZmZlclt0aGlzLnBvcysrXSA9IHY7CiAgICAgICAgICBpZiAodGhpcy5wb3MgPT09IGJ1Zkxlbmd0aCkgewogICAgICAgICAgICB0aGlzLm91dCArPSB0ZC5kZWNvZGUoYnVmZmVyKTsKICAgICAgICAgICAgdGhpcy5wb3MgPSAwOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmbHVzaCgpIHsKICAgICAgICAgIGNvbnN0IHsgYnVmZmVyLCBvdXQsIHBvcyB9ID0gdGhpczsKICAgICAgICAgIHJldHVybiBwb3MgPiAwID8gb3V0ICsgdGQuZGVjb2RlKGJ1ZmZlci5zdWJhcnJheSgwLCBwb3MpKSA6IG91dDsKICAgICAgICB9CiAgICAgIH0KICAgICAgY2xhc3MgU3RyaW5nUmVhZGVyIHsKICAgICAgICBjb25zdHJ1Y3RvcihidWZmZXIpIHsKICAgICAgICAgIHRoaXMucG9zID0gMDsKICAgICAgICAgIHRoaXMuYnVmZmVyID0gYnVmZmVyOwogICAgICAgIH0KICAgICAgICBuZXh0KCkgewogICAgICAgICAgcmV0dXJuIHRoaXMuYnVmZmVyLmNoYXJDb2RlQXQodGhpcy5wb3MrKyk7CiAgICAgICAgfQogICAgICAgIHBlZWsoKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5idWZmZXIuY2hhckNvZGVBdCh0aGlzLnBvcyk7CiAgICAgICAgfQogICAgICAgIGluZGV4T2YoY2hhcikgewogICAgICAgICAgY29uc3QgeyBidWZmZXIsIHBvcyB9ID0gdGhpczsKICAgICAgICAgIGNvbnN0IGlkeCA9IGJ1ZmZlci5pbmRleE9mKGNoYXIsIHBvcyk7CiAgICAgICAgICByZXR1cm4gaWR4ID09PSAtMSA/IGJ1ZmZlci5sZW5ndGggOiBpZHg7CiAgICAgICAgfQogICAgICB9CiAgICAgIGNvbnN0IEVNUFRZID0gW107CiAgICAgIGZ1bmN0aW9uIGRlY29kZU9yaWdpbmFsU2NvcGVzKGlucHV0KSB7CiAgICAgICAgY29uc3QgeyBsZW5ndGggfSA9IGlucHV0OwogICAgICAgIGNvbnN0IHJlYWRlciA9IG5ldyBTdHJpbmdSZWFkZXIoaW5wdXQpOwogICAgICAgIGNvbnN0IHNjb3BlcyA9IFtdOwogICAgICAgIGNvbnN0IHN0YWNrID0gW107CiAgICAgICAgbGV0IGxpbmUgPSAwOwogICAgICAgIGZvciAoOyByZWFkZXIucG9zIDwgbGVuZ3RoOyByZWFkZXIucG9zKyspIHsKICAgICAgICAgIGxpbmUgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgbGluZSk7CiAgICAgICAgICBjb25zdCBjb2x1bW4gPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCk7CiAgICAgICAgICBpZiAoIWhhc01vcmVWbHEocmVhZGVyLCBsZW5ndGgpKSB7CiAgICAgICAgICAgIGNvbnN0IGxhc3QgPSBzdGFjay5wb3AoKTsKICAgICAgICAgICAgbGFzdFsyXSA9IGxpbmU7CiAgICAgICAgICAgIGxhc3RbM10gPSBjb2x1bW47CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgY29uc3Qga2luZCA9IGRlY29kZUludGVnZXIocmVhZGVyLCAwKTsKICAgICAgICAgIGNvbnN0IGZpZWxkcyA9IGRlY29kZUludGVnZXIocmVhZGVyLCAwKTsKICAgICAgICAgIGNvbnN0IGhhc05hbWUgPSBmaWVsZHMgJiAxOwogICAgICAgICAgY29uc3Qgc2NvcGUgPSBoYXNOYW1lID8gW2xpbmUsIGNvbHVtbiwgMCwgMCwga2luZCwgZGVjb2RlSW50ZWdlcihyZWFkZXIsIDApXSA6IFtsaW5lLCBjb2x1bW4sIDAsIDAsIGtpbmRdOwogICAgICAgICAgbGV0IHZhcnMgPSBFTVBUWTsKICAgICAgICAgIGlmIChoYXNNb3JlVmxxKHJlYWRlciwgbGVuZ3RoKSkgewogICAgICAgICAgICB2YXJzID0gW107CiAgICAgICAgICAgIGRvIHsKICAgICAgICAgICAgICBjb25zdCB2YXJzSW5kZXggPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCk7CiAgICAgICAgICAgICAgdmFycy5wdXNoKHZhcnNJbmRleCk7CiAgICAgICAgICAgIH0gd2hpbGUgKGhhc01vcmVWbHEocmVhZGVyLCBsZW5ndGgpKTsKICAgICAgICAgIH0KICAgICAgICAgIHNjb3BlLnZhcnMgPSB2YXJzOwogICAgICAgICAgc2NvcGVzLnB1c2goc2NvcGUpOwogICAgICAgICAgc3RhY2sucHVzaChzY29wZSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBzY29wZXM7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gZW5jb2RlT3JpZ2luYWxTY29wZXMoc2NvcGVzKSB7CiAgICAgICAgY29uc3Qgd3JpdGVyID0gbmV3IFN0cmluZ1dyaXRlcigpOwogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc2NvcGVzLmxlbmd0aDsgKSB7CiAgICAgICAgICBpID0gX2VuY29kZU9yaWdpbmFsU2NvcGVzKHNjb3BlcywgaSwgd3JpdGVyLCBbMF0pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gd3JpdGVyLmZsdXNoKCk7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gX2VuY29kZU9yaWdpbmFsU2NvcGVzKHNjb3BlcywgaW5kZXgsIHdyaXRlciwgc3RhdGUpIHsKICAgICAgICBjb25zdCBzY29wZSA9IHNjb3Blc1tpbmRleF07CiAgICAgICAgY29uc3QgeyAwOiBzdGFydExpbmUsIDE6IHN0YXJ0Q29sdW1uLCAyOiBlbmRMaW5lLCAzOiBlbmRDb2x1bW4sIDQ6IGtpbmQsIHZhcnMgfSA9IHNjb3BlOwogICAgICAgIGlmIChpbmRleCA+IDApCiAgICAgICAgICB3cml0ZXIud3JpdGUoY29tbWEpOwogICAgICAgIHN0YXRlWzBdID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIHN0YXJ0TGluZSwgc3RhdGVbMF0pOwogICAgICAgIGVuY29kZUludGVnZXIod3JpdGVyLCBzdGFydENvbHVtbiwgMCk7CiAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIGtpbmQsIDApOwogICAgICAgIGNvbnN0IGZpZWxkcyA9IHNjb3BlLmxlbmd0aCA9PT0gNiA/IDEgOiAwOwogICAgICAgIGVuY29kZUludGVnZXIod3JpdGVyLCBmaWVsZHMsIDApOwogICAgICAgIGlmIChzY29wZS5sZW5ndGggPT09IDYpCiAgICAgICAgICBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc2NvcGVbNV0sIDApOwogICAgICAgIGZvciAoY29uc3QgdiBvZiB2YXJzKSB7CiAgICAgICAgICBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgdiwgMCk7CiAgICAgICAgfQogICAgICAgIGZvciAoaW5kZXgrKzsgaW5kZXggPCBzY29wZXMubGVuZ3RoOyApIHsKICAgICAgICAgIGNvbnN0IG5leHQgPSBzY29wZXNbaW5kZXhdOwogICAgICAgICAgY29uc3QgeyAwOiBsLCAxOiBjIH0gPSBuZXh0OwogICAgICAgICAgaWYgKGwgPiBlbmRMaW5lIHx8IGwgPT09IGVuZExpbmUgJiYgYyA+PSBlbmRDb2x1bW4pIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBpbmRleCA9IF9lbmNvZGVPcmlnaW5hbFNjb3BlcyhzY29wZXMsIGluZGV4LCB3cml0ZXIsIHN0YXRlKTsKICAgICAgICB9CiAgICAgICAgd3JpdGVyLndyaXRlKGNvbW1hKTsKICAgICAgICBzdGF0ZVswXSA9IGVuY29kZUludGVnZXIod3JpdGVyLCBlbmRMaW5lLCBzdGF0ZVswXSk7CiAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIGVuZENvbHVtbiwgMCk7CiAgICAgICAgcmV0dXJuIGluZGV4OwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGRlY29kZUdlbmVyYXRlZFJhbmdlcyhpbnB1dCkgewogICAgICAgIGNvbnN0IHsgbGVuZ3RoIH0gPSBpbnB1dDsKICAgICAgICBjb25zdCByZWFkZXIgPSBuZXcgU3RyaW5nUmVhZGVyKGlucHV0KTsKICAgICAgICBjb25zdCByYW5nZXMgPSBbXTsKICAgICAgICBjb25zdCBzdGFjayA9IFtdOwogICAgICAgIGxldCBnZW5MaW5lID0gMDsKICAgICAgICBsZXQgZGVmaW5pdGlvblNvdXJjZXNJbmRleCA9IDA7CiAgICAgICAgbGV0IGRlZmluaXRpb25TY29wZUluZGV4ID0gMDsKICAgICAgICBsZXQgY2FsbHNpdGVTb3VyY2VzSW5kZXggPSAwOwogICAgICAgIGxldCBjYWxsc2l0ZUxpbmUgPSAwOwogICAgICAgIGxldCBjYWxsc2l0ZUNvbHVtbiA9IDA7CiAgICAgICAgbGV0IGJpbmRpbmdMaW5lID0gMDsKICAgICAgICBsZXQgYmluZGluZ0NvbHVtbiA9IDA7CiAgICAgICAgZG8gewogICAgICAgICAgY29uc3Qgc2VtaSA9IHJlYWRlci5pbmRleE9mKCI7Iik7CiAgICAgICAgICBsZXQgZ2VuQ29sdW1uID0gMDsKICAgICAgICAgIGZvciAoOyByZWFkZXIucG9zIDwgc2VtaTsgcmVhZGVyLnBvcysrKSB7CiAgICAgICAgICAgIGdlbkNvbHVtbiA9IGRlY29kZUludGVnZXIocmVhZGVyLCBnZW5Db2x1bW4pOwogICAgICAgICAgICBpZiAoIWhhc01vcmVWbHEocmVhZGVyLCBzZW1pKSkgewogICAgICAgICAgICAgIGNvbnN0IGxhc3QgPSBzdGFjay5wb3AoKTsKICAgICAgICAgICAgICBsYXN0WzJdID0gZ2VuTGluZTsKICAgICAgICAgICAgICBsYXN0WzNdID0gZ2VuQ29sdW1uOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IGZpZWxkcyA9IGRlY29kZUludGVnZXIocmVhZGVyLCAwKTsKICAgICAgICAgICAgY29uc3QgaGFzRGVmaW5pdGlvbiA9IGZpZWxkcyAmIDE7CiAgICAgICAgICAgIGNvbnN0IGhhc0NhbGxzaXRlID0gZmllbGRzICYgMjsKICAgICAgICAgICAgY29uc3QgaGFzU2NvcGUgPSBmaWVsZHMgJiA0OwogICAgICAgICAgICBsZXQgY2FsbHNpdGUgPSBudWxsOwogICAgICAgICAgICBsZXQgYmluZGluZ3MgPSBFTVBUWTsKICAgICAgICAgICAgbGV0IHJhbmdlOwogICAgICAgICAgICBpZiAoaGFzRGVmaW5pdGlvbikgewogICAgICAgICAgICAgIGNvbnN0IGRlZlNvdXJjZXNJbmRleCA9IGRlY29kZUludGVnZXIocmVhZGVyLCBkZWZpbml0aW9uU291cmNlc0luZGV4KTsKICAgICAgICAgICAgICBkZWZpbml0aW9uU2NvcGVJbmRleCA9IGRlY29kZUludGVnZXIocmVhZGVyLCBkZWZpbml0aW9uU291cmNlc0luZGV4ID09PSBkZWZTb3VyY2VzSW5kZXggPyBkZWZpbml0aW9uU2NvcGVJbmRleCA6IDApOwogICAgICAgICAgICAgIGRlZmluaXRpb25Tb3VyY2VzSW5kZXggPSBkZWZTb3VyY2VzSW5kZXg7CiAgICAgICAgICAgICAgcmFuZ2UgPSBbZ2VuTGluZSwgZ2VuQ29sdW1uLCAwLCAwLCBkZWZTb3VyY2VzSW5kZXgsIGRlZmluaXRpb25TY29wZUluZGV4XTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICByYW5nZSA9IFtnZW5MaW5lLCBnZW5Db2x1bW4sIDAsIDBdOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJhbmdlLmlzU2NvcGUgPSAhIWhhc1Njb3BlOwogICAgICAgICAgICBpZiAoaGFzQ2FsbHNpdGUpIHsKICAgICAgICAgICAgICBjb25zdCBwcmV2Q3NpID0gY2FsbHNpdGVTb3VyY2VzSW5kZXg7CiAgICAgICAgICAgICAgY29uc3QgcHJldkxpbmUgPSBjYWxsc2l0ZUxpbmU7CiAgICAgICAgICAgICAgY2FsbHNpdGVTb3VyY2VzSW5kZXggPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgY2FsbHNpdGVTb3VyY2VzSW5kZXgpOwogICAgICAgICAgICAgIGNvbnN0IHNhbWVTb3VyY2UgPSBwcmV2Q3NpID09PSBjYWxsc2l0ZVNvdXJjZXNJbmRleDsKICAgICAgICAgICAgICBjYWxsc2l0ZUxpbmUgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgc2FtZVNvdXJjZSA/IGNhbGxzaXRlTGluZSA6IDApOwogICAgICAgICAgICAgIGNhbGxzaXRlQ29sdW1uID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIHNhbWVTb3VyY2UgJiYgcHJldkxpbmUgPT09IGNhbGxzaXRlTGluZSA/IGNhbGxzaXRlQ29sdW1uIDogMCk7CiAgICAgICAgICAgICAgY2FsbHNpdGUgPSBbY2FsbHNpdGVTb3VyY2VzSW5kZXgsIGNhbGxzaXRlTGluZSwgY2FsbHNpdGVDb2x1bW5dOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJhbmdlLmNhbGxzaXRlID0gY2FsbHNpdGU7CiAgICAgICAgICAgIGlmIChoYXNNb3JlVmxxKHJlYWRlciwgc2VtaSkpIHsKICAgICAgICAgICAgICBiaW5kaW5ncyA9IFtdOwogICAgICAgICAgICAgIGRvIHsKICAgICAgICAgICAgICAgIGJpbmRpbmdMaW5lID0gZ2VuTGluZTsKICAgICAgICAgICAgICAgIGJpbmRpbmdDb2x1bW4gPSBnZW5Db2x1bW47CiAgICAgICAgICAgICAgICBjb25zdCBleHByZXNzaW9uc0NvdW50ID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIDApOwogICAgICAgICAgICAgICAgbGV0IGV4cHJlc3Npb25SYW5nZXM7CiAgICAgICAgICAgICAgICBpZiAoZXhwcmVzc2lvbnNDb3VudCA8IC0xKSB7CiAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb25SYW5nZXMgPSBbW2RlY29kZUludGVnZXIocmVhZGVyLCAwKV1dOwogICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gLTE7IGkgPiBleHByZXNzaW9uc0NvdW50OyBpLS0pIHsKICAgICAgICAgICAgICAgICAgICBjb25zdCBwcmV2QmwgPSBiaW5kaW5nTGluZTsKICAgICAgICAgICAgICAgICAgICBiaW5kaW5nTGluZSA9IGRlY29kZUludGVnZXIocmVhZGVyLCBiaW5kaW5nTGluZSk7CiAgICAgICAgICAgICAgICAgICAgYmluZGluZ0NvbHVtbiA9IGRlY29kZUludGVnZXIocmVhZGVyLCBiaW5kaW5nTGluZSA9PT0gcHJldkJsID8gYmluZGluZ0NvbHVtbiA6IDApOwogICAgICAgICAgICAgICAgICAgIGNvbnN0IGV4cHJlc3Npb24gPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCk7CiAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvblJhbmdlcy5wdXNoKFtleHByZXNzaW9uLCBiaW5kaW5nTGluZSwgYmluZGluZ0NvbHVtbl0pOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICBleHByZXNzaW9uUmFuZ2VzID0gW1tleHByZXNzaW9uc0NvdW50XV07CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBiaW5kaW5ncy5wdXNoKGV4cHJlc3Npb25SYW5nZXMpOwogICAgICAgICAgICAgIH0gd2hpbGUgKGhhc01vcmVWbHEocmVhZGVyLCBzZW1pKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmFuZ2UuYmluZGluZ3MgPSBiaW5kaW5nczsKICAgICAgICAgICAgcmFuZ2VzLnB1c2gocmFuZ2UpOwogICAgICAgICAgICBzdGFjay5wdXNoKHJhbmdlKTsKICAgICAgICAgIH0KICAgICAgICAgIGdlbkxpbmUrKzsKICAgICAgICAgIHJlYWRlci5wb3MgPSBzZW1pICsgMTsKICAgICAgICB9IHdoaWxlIChyZWFkZXIucG9zIDwgbGVuZ3RoKTsKICAgICAgICByZXR1cm4gcmFuZ2VzOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGVuY29kZUdlbmVyYXRlZFJhbmdlcyhyYW5nZXMpIHsKICAgICAgICBpZiAocmFuZ2VzLmxlbmd0aCA9PT0gMCkKICAgICAgICAgIHJldHVybiAiIjsKICAgICAgICBjb25zdCB3cml0ZXIgPSBuZXcgU3RyaW5nV3JpdGVyKCk7CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCByYW5nZXMubGVuZ3RoOyApIHsKICAgICAgICAgIGkgPSBfZW5jb2RlR2VuZXJhdGVkUmFuZ2VzKHJhbmdlcywgaSwgd3JpdGVyLCBbMCwgMCwgMCwgMCwgMCwgMCwgMF0pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gd3JpdGVyLmZsdXNoKCk7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gX2VuY29kZUdlbmVyYXRlZFJhbmdlcyhyYW5nZXMsIGluZGV4LCB3cml0ZXIsIHN0YXRlKSB7CiAgICAgICAgY29uc3QgcmFuZ2UgPSByYW5nZXNbaW5kZXhdOwogICAgICAgIGNvbnN0IHsgMDogc3RhcnRMaW5lLCAxOiBzdGFydENvbHVtbiwgMjogZW5kTGluZSwgMzogZW5kQ29sdW1uLCBpc1Njb3BlLCBjYWxsc2l0ZSwgYmluZGluZ3MgfSA9IHJhbmdlOwogICAgICAgIGlmIChzdGF0ZVswXSA8IHN0YXJ0TGluZSkgewogICAgICAgICAgY2F0Y2h1cExpbmUod3JpdGVyLCBzdGF0ZVswXSwgc3RhcnRMaW5lKTsKICAgICAgICAgIHN0YXRlWzBdID0gc3RhcnRMaW5lOwogICAgICAgICAgc3RhdGVbMV0gPSAwOwogICAgICAgIH0gZWxzZSBpZiAoaW5kZXggPiAwKSB7CiAgICAgICAgICB3cml0ZXIud3JpdGUoY29tbWEpOwogICAgICAgIH0KICAgICAgICBzdGF0ZVsxXSA9IGVuY29kZUludGVnZXIod3JpdGVyLCByYW5nZVsxXSwgc3RhdGVbMV0pOwogICAgICAgIGNvbnN0IGZpZWxkcyA9IChyYW5nZS5sZW5ndGggPT09IDYgPyAxIDogMCkgfCAoY2FsbHNpdGUgPyAyIDogMCkgfCAoaXNTY29wZSA/IDQgOiAwKTsKICAgICAgICBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZmllbGRzLCAwKTsKICAgICAgICBpZiAocmFuZ2UubGVuZ3RoID09PSA2KSB7CiAgICAgICAgICBjb25zdCB7IDQ6IHNvdXJjZXNJbmRleCwgNTogc2NvcGVzSW5kZXggfSA9IHJhbmdlOwogICAgICAgICAgaWYgKHNvdXJjZXNJbmRleCAhPT0gc3RhdGVbMl0pIHsKICAgICAgICAgICAgc3RhdGVbM10gPSAwOwogICAgICAgICAgfQogICAgICAgICAgc3RhdGVbMl0gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc291cmNlc0luZGV4LCBzdGF0ZVsyXSk7CiAgICAgICAgICBzdGF0ZVszXSA9IGVuY29kZUludGVnZXIod3JpdGVyLCBzY29wZXNJbmRleCwgc3RhdGVbM10pOwogICAgICAgIH0KICAgICAgICBpZiAoY2FsbHNpdGUpIHsKICAgICAgICAgIGNvbnN0IHsgMDogc291cmNlc0luZGV4LCAxOiBjYWxsTGluZSwgMjogY2FsbENvbHVtbiB9ID0gcmFuZ2UuY2FsbHNpdGU7CiAgICAgICAgICBpZiAoc291cmNlc0luZGV4ICE9PSBzdGF0ZVs0XSkgewogICAgICAgICAgICBzdGF0ZVs1XSA9IDA7CiAgICAgICAgICAgIHN0YXRlWzZdID0gMDsKICAgICAgICAgIH0gZWxzZSBpZiAoY2FsbExpbmUgIT09IHN0YXRlWzVdKSB7CiAgICAgICAgICAgIHN0YXRlWzZdID0gMDsKICAgICAgICAgIH0KICAgICAgICAgIHN0YXRlWzRdID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIHNvdXJjZXNJbmRleCwgc3RhdGVbNF0pOwogICAgICAgICAgc3RhdGVbNV0gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgY2FsbExpbmUsIHN0YXRlWzVdKTsKICAgICAgICAgIHN0YXRlWzZdID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIGNhbGxDb2x1bW4sIHN0YXRlWzZdKTsKICAgICAgICB9CiAgICAgICAgaWYgKGJpbmRpbmdzKSB7CiAgICAgICAgICBmb3IgKGNvbnN0IGJpbmRpbmcgb2YgYmluZGluZ3MpIHsKICAgICAgICAgICAgaWYgKGJpbmRpbmcubGVuZ3RoID4gMSkKICAgICAgICAgICAgICBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgLWJpbmRpbmcubGVuZ3RoLCAwKTsKICAgICAgICAgICAgY29uc3QgZXhwcmVzc2lvbiA9IGJpbmRpbmdbMF1bMF07CiAgICAgICAgICAgIGVuY29kZUludGVnZXIod3JpdGVyLCBleHByZXNzaW9uLCAwKTsKICAgICAgICAgICAgbGV0IGJpbmRpbmdTdGFydExpbmUgPSBzdGFydExpbmU7CiAgICAgICAgICAgIGxldCBiaW5kaW5nU3RhcnRDb2x1bW4gPSBzdGFydENvbHVtbjsKICAgICAgICAgICAgZm9yIChsZXQgaSA9IDE7IGkgPCBiaW5kaW5nLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgICAgY29uc3QgZXhwUmFuZ2UgPSBiaW5kaW5nW2ldOwogICAgICAgICAgICAgIGJpbmRpbmdTdGFydExpbmUgPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZXhwUmFuZ2VbMV0sIGJpbmRpbmdTdGFydExpbmUpOwogICAgICAgICAgICAgIGJpbmRpbmdTdGFydENvbHVtbiA9IGVuY29kZUludGVnZXIod3JpdGVyLCBleHBSYW5nZVsyXSwgYmluZGluZ1N0YXJ0Q29sdW1uKTsKICAgICAgICAgICAgICBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZXhwUmFuZ2VbMF0sIDApOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZvciAoaW5kZXgrKzsgaW5kZXggPCByYW5nZXMubGVuZ3RoOyApIHsKICAgICAgICAgIGNvbnN0IG5leHQgPSByYW5nZXNbaW5kZXhdOwogICAgICAgICAgY29uc3QgeyAwOiBsLCAxOiBjIH0gPSBuZXh0OwogICAgICAgICAgaWYgKGwgPiBlbmRMaW5lIHx8IGwgPT09IGVuZExpbmUgJiYgYyA+PSBlbmRDb2x1bW4pIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBpbmRleCA9IF9lbmNvZGVHZW5lcmF0ZWRSYW5nZXMocmFuZ2VzLCBpbmRleCwgd3JpdGVyLCBzdGF0ZSk7CiAgICAgICAgfQogICAgICAgIGlmIChzdGF0ZVswXSA8IGVuZExpbmUpIHsKICAgICAgICAgIGNhdGNodXBMaW5lKHdyaXRlciwgc3RhdGVbMF0sIGVuZExpbmUpOwogICAgICAgICAgc3RhdGVbMF0gPSBlbmRMaW5lOwogICAgICAgICAgc3RhdGVbMV0gPSAwOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB3cml0ZXIud3JpdGUoY29tbWEpOwogICAgICAgIH0KICAgICAgICBzdGF0ZVsxXSA9IGVuY29kZUludGVnZXIod3JpdGVyLCBlbmRDb2x1bW4sIHN0YXRlWzFdKTsKICAgICAgICByZXR1cm4gaW5kZXg7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gY2F0Y2h1cExpbmUod3JpdGVyLCBsYXN0TGluZSwgbGluZSkgewogICAgICAgIGRvIHsKICAgICAgICAgIHdyaXRlci53cml0ZShzZW1pY29sb24pOwogICAgICAgIH0gd2hpbGUgKCsrbGFzdExpbmUgPCBsaW5lKTsKICAgICAgfQogICAgICBmdW5jdGlvbiBkZWNvZGUobWFwcGluZ3MpIHsKICAgICAgICBjb25zdCB7IGxlbmd0aCB9ID0gbWFwcGluZ3M7CiAgICAgICAgY29uc3QgcmVhZGVyID0gbmV3IFN0cmluZ1JlYWRlcihtYXBwaW5ncyk7CiAgICAgICAgY29uc3QgZGVjb2RlZCA9IFtdOwogICAgICAgIGxldCBnZW5Db2x1bW4gPSAwOwogICAgICAgIGxldCBzb3VyY2VzSW5kZXggPSAwOwogICAgICAgIGxldCBzb3VyY2VMaW5lID0gMDsKICAgICAgICBsZXQgc291cmNlQ29sdW1uID0gMDsKICAgICAgICBsZXQgbmFtZXNJbmRleCA9IDA7CiAgICAgICAgZG8gewogICAgICAgICAgY29uc3Qgc2VtaSA9IHJlYWRlci5pbmRleE9mKCI7Iik7CiAgICAgICAgICBjb25zdCBsaW5lID0gW107CiAgICAgICAgICBsZXQgc29ydGVkID0gdHJ1ZTsKICAgICAgICAgIGxldCBsYXN0Q29sID0gMDsKICAgICAgICAgIGdlbkNvbHVtbiA9IDA7CiAgICAgICAgICB3aGlsZSAocmVhZGVyLnBvcyA8IHNlbWkpIHsKICAgICAgICAgICAgbGV0IHNlZzsKICAgICAgICAgICAgZ2VuQ29sdW1uID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIGdlbkNvbHVtbik7CiAgICAgICAgICAgIGlmIChnZW5Db2x1bW4gPCBsYXN0Q29sKQogICAgICAgICAgICAgIHNvcnRlZCA9IGZhbHNlOwogICAgICAgICAgICBsYXN0Q29sID0gZ2VuQ29sdW1uOwogICAgICAgICAgICBpZiAoaGFzTW9yZVZscShyZWFkZXIsIHNlbWkpKSB7CiAgICAgICAgICAgICAgc291cmNlc0luZGV4ID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIHNvdXJjZXNJbmRleCk7CiAgICAgICAgICAgICAgc291cmNlTGluZSA9IGRlY29kZUludGVnZXIocmVhZGVyLCBzb3VyY2VMaW5lKTsKICAgICAgICAgICAgICBzb3VyY2VDb2x1bW4gPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgc291cmNlQ29sdW1uKTsKICAgICAgICAgICAgICBpZiAoaGFzTW9yZVZscShyZWFkZXIsIHNlbWkpKSB7CiAgICAgICAgICAgICAgICBuYW1lc0luZGV4ID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIG5hbWVzSW5kZXgpOwogICAgICAgICAgICAgICAgc2VnID0gW2dlbkNvbHVtbiwgc291cmNlc0luZGV4LCBzb3VyY2VMaW5lLCBzb3VyY2VDb2x1bW4sIG5hbWVzSW5kZXhdOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBzZWcgPSBbZ2VuQ29sdW1uLCBzb3VyY2VzSW5kZXgsIHNvdXJjZUxpbmUsIHNvdXJjZUNvbHVtbl07CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHNlZyA9IFtnZW5Db2x1bW5dOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxpbmUucHVzaChzZWcpOwogICAgICAgICAgICByZWFkZXIucG9zKys7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoIXNvcnRlZCkKICAgICAgICAgICAgc29ydChsaW5lKTsKICAgICAgICAgIGRlY29kZWQucHVzaChsaW5lKTsKICAgICAgICAgIHJlYWRlci5wb3MgPSBzZW1pICsgMTsKICAgICAgICB9IHdoaWxlIChyZWFkZXIucG9zIDw9IGxlbmd0aCk7CiAgICAgICAgcmV0dXJuIGRlY29kZWQ7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gc29ydChsaW5lKSB7CiAgICAgICAgbGluZS5zb3J0KHNvcnRDb21wYXJhdG9yKTsKICAgICAgfQogICAgICBmdW5jdGlvbiBzb3J0Q29tcGFyYXRvcihhLCBiKSB7CiAgICAgICAgcmV0dXJuIGFbMF0gLSBiWzBdOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGVuY29kZShkZWNvZGVkKSB7CiAgICAgICAgY29uc3Qgd3JpdGVyID0gbmV3IFN0cmluZ1dyaXRlcigpOwogICAgICAgIGxldCBzb3VyY2VzSW5kZXggPSAwOwogICAgICAgIGxldCBzb3VyY2VMaW5lID0gMDsKICAgICAgICBsZXQgc291cmNlQ29sdW1uID0gMDsKICAgICAgICBsZXQgbmFtZXNJbmRleCA9IDA7CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkZWNvZGVkLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICBjb25zdCBsaW5lID0gZGVjb2RlZFtpXTsKICAgICAgICAgIGlmIChpID4gMCkKICAgICAgICAgICAgd3JpdGVyLndyaXRlKHNlbWljb2xvbik7CiAgICAgICAgICBpZiAobGluZS5sZW5ndGggPT09IDApCiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgbGV0IGdlbkNvbHVtbiA9IDA7CiAgICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IGxpbmUubGVuZ3RoOyBqKyspIHsKICAgICAgICAgICAgY29uc3Qgc2VnbWVudCA9IGxpbmVbal07CiAgICAgICAgICAgIGlmIChqID4gMCkKICAgICAgICAgICAgICB3cml0ZXIud3JpdGUoY29tbWEpOwogICAgICAgICAgICBnZW5Db2x1bW4gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc2VnbWVudFswXSwgZ2VuQ29sdW1uKTsKICAgICAgICAgICAgaWYgKHNlZ21lbnQubGVuZ3RoID09PSAxKQogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICBzb3VyY2VzSW5kZXggPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc2VnbWVudFsxXSwgc291cmNlc0luZGV4KTsKICAgICAgICAgICAgc291cmNlTGluZSA9IGVuY29kZUludGVnZXIod3JpdGVyLCBzZWdtZW50WzJdLCBzb3VyY2VMaW5lKTsKICAgICAgICAgICAgc291cmNlQ29sdW1uID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIHNlZ21lbnRbM10sIHNvdXJjZUNvbHVtbik7CiAgICAgICAgICAgIGlmIChzZWdtZW50Lmxlbmd0aCA9PT0gNCkKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgbmFtZXNJbmRleCA9IGVuY29kZUludGVnZXIod3JpdGVyLCBzZWdtZW50WzRdLCBuYW1lc0luZGV4KTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIHdyaXRlci5mbHVzaCgpOwogICAgICB9CiAgICAgIGV4cG9ydHMzLmRlY29kZSA9IGRlY29kZTsKICAgICAgZXhwb3J0czMuZGVjb2RlR2VuZXJhdGVkUmFuZ2VzID0gZGVjb2RlR2VuZXJhdGVkUmFuZ2VzOwogICAgICBleHBvcnRzMy5kZWNvZGVPcmlnaW5hbFNjb3BlcyA9IGRlY29kZU9yaWdpbmFsU2NvcGVzOwogICAgICBleHBvcnRzMy5lbmNvZGUgPSBlbmNvZGU7CiAgICAgIGV4cG9ydHMzLmVuY29kZUdlbmVyYXRlZFJhbmdlcyA9IGVuY29kZUdlbmVyYXRlZFJhbmdlczsKICAgICAgZXhwb3J0czMuZW5jb2RlT3JpZ2luYWxTY29wZXMgPSBlbmNvZGVPcmlnaW5hbFNjb3BlczsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMzLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvbWFnaWMtc3RyaW5nLW5wbS0wLjMwLjE3LWRhMWI3NTkzYjEtMmY3MWFmMmIwYS56aXAvbm9kZV9tb2R1bGVzL21hZ2ljLXN0cmluZy9kaXN0L21hZ2ljLXN0cmluZy5janMuanMKdmFyIHJlcXVpcmVfbWFnaWNfc3RyaW5nX2NqcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9tYWdpYy1zdHJpbmctbnBtLTAuMzAuMTctZGExYjc1OTNiMS0yZjcxYWYyYjBhLnppcC9ub2RlX21vZHVsZXMvbWFnaWMtc3RyaW5nL2Rpc3QvbWFnaWMtc3RyaW5nLmNqcy5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBzb3VyY2VtYXBDb2RlYyA9IHJlcXVpcmVfc291cmNlbWFwX2NvZGVjX3VtZCgpOwogICAgdmFyIEJpdFNldCA9IGNsYXNzIF9CaXRTZXQgewogICAgICBjb25zdHJ1Y3RvcihhcmcpIHsKICAgICAgICB0aGlzLmJpdHMgPSBhcmcgaW5zdGFuY2VvZiBfQml0U2V0ID8gYXJnLmJpdHMuc2xpY2UoKSA6IFtdOwogICAgICB9CiAgICAgIGFkZChuMikgewogICAgICAgIHRoaXMuYml0c1tuMiA+PiA1XSB8PSAxIDw8IChuMiAmIDMxKTsKICAgICAgfQogICAgICBoYXMobjIpIHsKICAgICAgICByZXR1cm4gISEodGhpcy5iaXRzW24yID4+IDVdICYgMSA8PCAobjIgJiAzMSkpOwogICAgICB9CiAgICB9OwogICAgdmFyIENodW5rID0gY2xhc3MgX0NodW5rIHsKICAgICAgY29uc3RydWN0b3Ioc3RhcnQsIGVuZCwgY29udGVudCkgewogICAgICAgIHRoaXMuc3RhcnQgPSBzdGFydDsKICAgICAgICB0aGlzLmVuZCA9IGVuZDsKICAgICAgICB0aGlzLm9yaWdpbmFsID0gY29udGVudDsKICAgICAgICB0aGlzLmludHJvID0gIiI7CiAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIHRoaXMuY29udGVudCA9IGNvbnRlbnQ7CiAgICAgICAgdGhpcy5zdG9yZU5hbWUgPSBmYWxzZTsKICAgICAgICB0aGlzLmVkaXRlZCA9IGZhbHNlOwogICAgICAgIHsKICAgICAgICAgIHRoaXMucHJldmlvdXMgPSBudWxsOwogICAgICAgICAgdGhpcy5uZXh0ID0gbnVsbDsKICAgICAgICB9CiAgICAgIH0KICAgICAgYXBwZW5kTGVmdChjb250ZW50KSB7CiAgICAgICAgdGhpcy5vdXRybyArPSBjb250ZW50OwogICAgICB9CiAgICAgIGFwcGVuZFJpZ2h0KGNvbnRlbnQpIHsKICAgICAgICB0aGlzLmludHJvID0gdGhpcy5pbnRybyArIGNvbnRlbnQ7CiAgICAgIH0KICAgICAgY2xvbmUoKSB7CiAgICAgICAgY29uc3QgY2h1bmsgPSBuZXcgX0NodW5rKHRoaXMuc3RhcnQsIHRoaXMuZW5kLCB0aGlzLm9yaWdpbmFsKTsKICAgICAgICBjaHVuay5pbnRybyA9IHRoaXMuaW50cm87CiAgICAgICAgY2h1bmsub3V0cm8gPSB0aGlzLm91dHJvOwogICAgICAgIGNodW5rLmNvbnRlbnQgPSB0aGlzLmNvbnRlbnQ7CiAgICAgICAgY2h1bmsuc3RvcmVOYW1lID0gdGhpcy5zdG9yZU5hbWU7CiAgICAgICAgY2h1bmsuZWRpdGVkID0gdGhpcy5lZGl0ZWQ7CiAgICAgICAgcmV0dXJuIGNodW5rOwogICAgICB9CiAgICAgIGNvbnRhaW5zKGluZGV4KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuc3RhcnQgPCBpbmRleCAmJiBpbmRleCA8IHRoaXMuZW5kOwogICAgICB9CiAgICAgIGVhY2hOZXh0KGZuKSB7CiAgICAgICAgbGV0IGNodW5rID0gdGhpczsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIGZuKGNodW5rKTsKICAgICAgICAgIGNodW5rID0gY2h1bmsubmV4dDsKICAgICAgICB9CiAgICAgIH0KICAgICAgZWFjaFByZXZpb3VzKGZuKSB7CiAgICAgICAgbGV0IGNodW5rID0gdGhpczsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIGZuKGNodW5rKTsKICAgICAgICAgIGNodW5rID0gY2h1bmsucHJldmlvdXM7CiAgICAgICAgfQogICAgICB9CiAgICAgIGVkaXQoY29udGVudCwgc3RvcmVOYW1lLCBjb250ZW50T25seSkgewogICAgICAgIHRoaXMuY29udGVudCA9IGNvbnRlbnQ7CiAgICAgICAgaWYgKCFjb250ZW50T25seSkgewogICAgICAgICAgdGhpcy5pbnRybyA9ICIiOwogICAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIH0KICAgICAgICB0aGlzLnN0b3JlTmFtZSA9IHN0b3JlTmFtZTsKICAgICAgICB0aGlzLmVkaXRlZCA9IHRydWU7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgcHJlcGVuZExlZnQoY29udGVudCkgewogICAgICAgIHRoaXMub3V0cm8gPSBjb250ZW50ICsgdGhpcy5vdXRybzsKICAgICAgfQogICAgICBwcmVwZW5kUmlnaHQoY29udGVudCkgewogICAgICAgIHRoaXMuaW50cm8gPSBjb250ZW50ICsgdGhpcy5pbnRybzsKICAgICAgfQogICAgICByZXNldCgpIHsKICAgICAgICB0aGlzLmludHJvID0gIiI7CiAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIGlmICh0aGlzLmVkaXRlZCkgewogICAgICAgICAgdGhpcy5jb250ZW50ID0gdGhpcy5vcmlnaW5hbDsKICAgICAgICAgIHRoaXMuc3RvcmVOYW1lID0gZmFsc2U7CiAgICAgICAgICB0aGlzLmVkaXRlZCA9IGZhbHNlOwogICAgICAgIH0KICAgICAgfQogICAgICBzcGxpdChpbmRleCkgewogICAgICAgIGNvbnN0IHNsaWNlSW5kZXggPSBpbmRleCAtIHRoaXMuc3RhcnQ7CiAgICAgICAgY29uc3Qgb3JpZ2luYWxCZWZvcmUgPSB0aGlzLm9yaWdpbmFsLnNsaWNlKDAsIHNsaWNlSW5kZXgpOwogICAgICAgIGNvbnN0IG9yaWdpbmFsQWZ0ZXIgPSB0aGlzLm9yaWdpbmFsLnNsaWNlKHNsaWNlSW5kZXgpOwogICAgICAgIHRoaXMub3JpZ2luYWwgPSBvcmlnaW5hbEJlZm9yZTsKICAgICAgICBjb25zdCBuZXdDaHVuayA9IG5ldyBfQ2h1bmsoaW5kZXgsIHRoaXMuZW5kLCBvcmlnaW5hbEFmdGVyKTsKICAgICAgICBuZXdDaHVuay5vdXRybyA9IHRoaXMub3V0cm87CiAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIHRoaXMuZW5kID0gaW5kZXg7CiAgICAgICAgaWYgKHRoaXMuZWRpdGVkKSB7CiAgICAgICAgICBuZXdDaHVuay5lZGl0KCIiLCBmYWxzZSk7CiAgICAgICAgICB0aGlzLmNvbnRlbnQgPSAiIjsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5jb250ZW50ID0gb3JpZ2luYWxCZWZvcmU7CiAgICAgICAgfQogICAgICAgIG5ld0NodW5rLm5leHQgPSB0aGlzLm5leHQ7CiAgICAgICAgaWYgKG5ld0NodW5rLm5leHQpIG5ld0NodW5rLm5leHQucHJldmlvdXMgPSBuZXdDaHVuazsKICAgICAgICBuZXdDaHVuay5wcmV2aW91cyA9IHRoaXM7CiAgICAgICAgdGhpcy5uZXh0ID0gbmV3Q2h1bms7CiAgICAgICAgcmV0dXJuIG5ld0NodW5rOwogICAgICB9CiAgICAgIHRvU3RyaW5nKCkgewogICAgICAgIHJldHVybiB0aGlzLmludHJvICsgdGhpcy5jb250ZW50ICsgdGhpcy5vdXRybzsKICAgICAgfQogICAgICB0cmltRW5kKHJ4KSB7CiAgICAgICAgdGhpcy5vdXRybyA9IHRoaXMub3V0cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgIGlmICh0aGlzLm91dHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgY29uc3QgdHJpbW1lZCA9IHRoaXMuY29udGVudC5yZXBsYWNlKHJ4LCAiIik7CiAgICAgICAgaWYgKHRyaW1tZWQubGVuZ3RoKSB7CiAgICAgICAgICBpZiAodHJpbW1lZCAhPT0gdGhpcy5jb250ZW50KSB7CiAgICAgICAgICAgIHRoaXMuc3BsaXQodGhpcy5zdGFydCArIHRyaW1tZWQubGVuZ3RoKS5lZGl0KCIiLCB2b2lkIDAsIHRydWUpOwogICAgICAgICAgICBpZiAodGhpcy5lZGl0ZWQpIHsKICAgICAgICAgICAgICB0aGlzLmVkaXQodHJpbW1lZCwgdGhpcy5zdG9yZU5hbWUsIHRydWUpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5lZGl0KCIiLCB2b2lkIDAsIHRydWUpOwogICAgICAgICAgdGhpcy5pbnRybyA9IHRoaXMuaW50cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgICAgaWYgKHRoaXMuaW50cm8ubGVuZ3RoKSByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgdHJpbVN0YXJ0KHJ4KSB7CiAgICAgICAgdGhpcy5pbnRybyA9IHRoaXMuaW50cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgIGlmICh0aGlzLmludHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgY29uc3QgdHJpbW1lZCA9IHRoaXMuY29udGVudC5yZXBsYWNlKHJ4LCAiIik7CiAgICAgICAgaWYgKHRyaW1tZWQubGVuZ3RoKSB7CiAgICAgICAgICBpZiAodHJpbW1lZCAhPT0gdGhpcy5jb250ZW50KSB7CiAgICAgICAgICAgIGNvbnN0IG5ld0NodW5rID0gdGhpcy5zcGxpdCh0aGlzLmVuZCAtIHRyaW1tZWQubGVuZ3RoKTsKICAgICAgICAgICAgaWYgKHRoaXMuZWRpdGVkKSB7CiAgICAgICAgICAgICAgbmV3Q2h1bmsuZWRpdCh0cmltbWVkLCB0aGlzLnN0b3JlTmFtZSwgdHJ1ZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5lZGl0KCIiLCB2b2lkIDAsIHRydWUpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuZWRpdCgiIiwgdm9pZCAwLCB0cnVlKTsKICAgICAgICAgIHRoaXMub3V0cm8gPSB0aGlzLm91dHJvLnJlcGxhY2UocngsICIiKTsKICAgICAgICAgIGlmICh0aGlzLm91dHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICB9CiAgICB9OwogICAgZnVuY3Rpb24gZ2V0QnRvYSgpIHsKICAgICAgaWYgKHR5cGVvZiBnbG9iYWxUaGlzICE9PSAidW5kZWZpbmVkIiAmJiB0eXBlb2YgZ2xvYmFsVGhpcy5idG9hID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgcmV0dXJuIChzdHIpID0+IGdsb2JhbFRoaXMuYnRvYSh1bmVzY2FwZShlbmNvZGVVUklDb21wb25lbnQoc3RyKSkpOwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBCdWZmZXIgPT09ICJmdW5jdGlvbiIpIHsKICAgICAgICByZXR1cm4gKHN0cikgPT4gQnVmZmVyLmZyb20oc3RyLCAidXRmLTgiKS50b1N0cmluZygiYmFzZTY0Iik7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuICgpID0+IHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5zdXBwb3J0ZWQgZW52aXJvbm1lbnQ6IGB3aW5kb3cuYnRvYWAgb3IgYEJ1ZmZlcmAgc2hvdWxkIGJlIHN1cHBvcnRlZC4iKTsKICAgICAgICB9OwogICAgICB9CiAgICB9CiAgICB2YXIgYnRvYSA9IC8qIEBfX1BVUkVfXyAqLyBnZXRCdG9hKCk7CiAgICB2YXIgU291cmNlTWFwID0gY2xhc3MgewogICAgICBjb25zdHJ1Y3Rvcihwcm9wZXJ0aWVzKSB7CiAgICAgICAgdGhpcy52ZXJzaW9uID0gMzsKICAgICAgICB0aGlzLmZpbGUgPSBwcm9wZXJ0aWVzLmZpbGU7CiAgICAgICAgdGhpcy5zb3VyY2VzID0gcHJvcGVydGllcy5zb3VyY2VzOwogICAgICAgIHRoaXMuc291cmNlc0NvbnRlbnQgPSBwcm9wZXJ0aWVzLnNvdXJjZXNDb250ZW50OwogICAgICAgIHRoaXMubmFtZXMgPSBwcm9wZXJ0aWVzLm5hbWVzOwogICAgICAgIHRoaXMubWFwcGluZ3MgPSBzb3VyY2VtYXBDb2RlYy5lbmNvZGUocHJvcGVydGllcy5tYXBwaW5ncyk7CiAgICAgICAgaWYgKHR5cGVvZiBwcm9wZXJ0aWVzLnhfZ29vZ2xlX2lnbm9yZUxpc3QgIT09ICJ1bmRlZmluZWQiKSB7CiAgICAgICAgICB0aGlzLnhfZ29vZ2xlX2lnbm9yZUxpc3QgPSBwcm9wZXJ0aWVzLnhfZ29vZ2xlX2lnbm9yZUxpc3Q7CiAgICAgICAgfQogICAgICAgIGlmICh0eXBlb2YgcHJvcGVydGllcy5kZWJ1Z0lkICE9PSAidW5kZWZpbmVkIikgewogICAgICAgICAgdGhpcy5kZWJ1Z0lkID0gcHJvcGVydGllcy5kZWJ1Z0lkOwogICAgICAgIH0KICAgICAgfQogICAgICB0b1N0cmluZygpIHsKICAgICAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodGhpcyk7CiAgICAgIH0KICAgICAgdG9VcmwoKSB7CiAgICAgICAgcmV0dXJuICJkYXRhOmFwcGxpY2F0aW9uL2pzb247Y2hhcnNldD11dGYtODtiYXNlNjQsIiArIGJ0b2EodGhpcy50b1N0cmluZygpKTsKICAgICAgfQogICAgfTsKICAgIGZ1bmN0aW9uIGd1ZXNzSW5kZW50KGNvZGUpIHsKICAgICAgY29uc3QgbGluZXMgPSBjb2RlLnNwbGl0KCJcbiIpOwogICAgICBjb25zdCB0YWJiZWQgPSBsaW5lcy5maWx0ZXIoKGxpbmUpID0+IC9eXHQrLy50ZXN0KGxpbmUpKTsKICAgICAgY29uc3Qgc3BhY2VkID0gbGluZXMuZmlsdGVyKChsaW5lKSA9PiAvXiB7Mix9Ly50ZXN0KGxpbmUpKTsKICAgICAgaWYgKHRhYmJlZC5sZW5ndGggPT09IDAgJiYgc3BhY2VkLmxlbmd0aCA9PT0gMCkgewogICAgICAgIHJldHVybiBudWxsOwogICAgICB9CiAgICAgIGlmICh0YWJiZWQubGVuZ3RoID49IHNwYWNlZC5sZW5ndGgpIHsKICAgICAgICByZXR1cm4gIgkiOwogICAgICB9CiAgICAgIGNvbnN0IG1pbiA9IHNwYWNlZC5yZWR1Y2UoKHByZXZpb3VzLCBjdXJyZW50KSA9PiB7CiAgICAgICAgY29uc3QgbnVtU3BhY2VzID0gL14gKy8uZXhlYyhjdXJyZW50KVswXS5sZW5ndGg7CiAgICAgICAgcmV0dXJuIE1hdGgubWluKG51bVNwYWNlcywgcHJldmlvdXMpOwogICAgICB9LCBJbmZpbml0eSk7CiAgICAgIHJldHVybiBuZXcgQXJyYXkobWluICsgMSkuam9pbigiICIpOwogICAgfQogICAgZnVuY3Rpb24gZ2V0UmVsYXRpdmVQYXRoKGZyb20sIHRvKSB7CiAgICAgIGNvbnN0IGZyb21QYXJ0cyA9IGZyb20uc3BsaXQoL1svXFxdLyk7CiAgICAgIGNvbnN0IHRvUGFydHMgPSB0by5zcGxpdCgvWy9cXF0vKTsKICAgICAgZnJvbVBhcnRzLnBvcCgpOwogICAgICB3aGlsZSAoZnJvbVBhcnRzWzBdID09PSB0b1BhcnRzWzBdKSB7CiAgICAgICAgZnJvbVBhcnRzLnNoaWZ0KCk7CiAgICAgICAgdG9QYXJ0cy5zaGlmdCgpOwogICAgICB9CiAgICAgIGlmIChmcm9tUGFydHMubGVuZ3RoKSB7CiAgICAgICAgbGV0IGkgPSBmcm9tUGFydHMubGVuZ3RoOwogICAgICAgIHdoaWxlIChpLS0pIGZyb21QYXJ0c1tpXSA9ICIuLiI7CiAgICAgIH0KICAgICAgcmV0dXJuIGZyb21QYXJ0cy5jb25jYXQodG9QYXJ0cykuam9pbigiLyIpOwogICAgfQogICAgdmFyIHRvU3RyaW5nID0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZzsKICAgIGZ1bmN0aW9uIGlzT2JqZWN0KHRoaW5nKSB7CiAgICAgIHJldHVybiB0b1N0cmluZy5jYWxsKHRoaW5nKSA9PT0gIltvYmplY3QgT2JqZWN0XSI7CiAgICB9CiAgICBmdW5jdGlvbiBnZXRMb2NhdG9yKHNvdXJjZSkgewogICAgICBjb25zdCBvcmlnaW5hbExpbmVzID0gc291cmNlLnNwbGl0KCJcbiIpOwogICAgICBjb25zdCBsaW5lT2Zmc2V0cyA9IFtdOwogICAgICBmb3IgKGxldCBpID0gMCwgcG9zID0gMDsgaSA8IG9yaWdpbmFsTGluZXMubGVuZ3RoOyBpKyspIHsKICAgICAgICBsaW5lT2Zmc2V0cy5wdXNoKHBvcyk7CiAgICAgICAgcG9zICs9IG9yaWdpbmFsTGluZXNbaV0ubGVuZ3RoICsgMTsKICAgICAgfQogICAgICByZXR1cm4gZnVuY3Rpb24gbG9jYXRlKGluZGV4KSB7CiAgICAgICAgbGV0IGkgPSAwOwogICAgICAgIGxldCBqID0gbGluZU9mZnNldHMubGVuZ3RoOwogICAgICAgIHdoaWxlIChpIDwgaikgewogICAgICAgICAgY29uc3QgbSA9IGkgKyBqID4+IDE7CiAgICAgICAgICBpZiAoaW5kZXggPCBsaW5lT2Zmc2V0c1ttXSkgewogICAgICAgICAgICBqID0gbTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGkgPSBtICsgMTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY29uc3QgbGluZSA9IGkgLSAxOwogICAgICAgIGNvbnN0IGNvbHVtbiA9IGluZGV4IC0gbGluZU9mZnNldHNbbGluZV07CiAgICAgICAgcmV0dXJuIHsgbGluZSwgY29sdW1uIH07CiAgICAgIH07CiAgICB9CiAgICB2YXIgd29yZFJlZ2V4ID0gL1x3LzsKICAgIHZhciBNYXBwaW5ncyA9IGNsYXNzIHsKICAgICAgY29uc3RydWN0b3IoaGlyZXMpIHsKICAgICAgICB0aGlzLmhpcmVzID0gaGlyZXM7CiAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlTGluZSA9IDA7CiAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uID0gMDsKICAgICAgICB0aGlzLnJhdyA9IFtdOwogICAgICAgIHRoaXMucmF3U2VnbWVudHMgPSB0aGlzLnJhd1t0aGlzLmdlbmVyYXRlZENvZGVMaW5lXSA9IFtdOwogICAgICAgIHRoaXMucGVuZGluZyA9IG51bGw7CiAgICAgIH0KICAgICAgYWRkRWRpdChzb3VyY2VJbmRleCwgY29udGVudCwgbG9jLCBuYW1lSW5kZXgpIHsKICAgICAgICBpZiAoY29udGVudC5sZW5ndGgpIHsKICAgICAgICAgIGNvbnN0IGNvbnRlbnRMZW5ndGhNaW51c09uZSA9IGNvbnRlbnQubGVuZ3RoIC0gMTsKICAgICAgICAgIGxldCBjb250ZW50TGluZUVuZCA9IGNvbnRlbnQuaW5kZXhPZigiXG4iLCAwKTsKICAgICAgICAgIGxldCBwcmV2aW91c0NvbnRlbnRMaW5lRW5kID0gLTE7CiAgICAgICAgICB3aGlsZSAoY29udGVudExpbmVFbmQgPj0gMCAmJiBjb250ZW50TGVuZ3RoTWludXNPbmUgPiBjb250ZW50TGluZUVuZCkgewogICAgICAgICAgICBjb25zdCBzZWdtZW50MiA9IFt0aGlzLmdlbmVyYXRlZENvZGVDb2x1bW4sIHNvdXJjZUluZGV4LCBsb2MubGluZSwgbG9jLmNvbHVtbl07CiAgICAgICAgICAgIGlmIChuYW1lSW5kZXggPj0gMCkgewogICAgICAgICAgICAgIHNlZ21lbnQyLnB1c2gobmFtZUluZGV4KTsKICAgICAgICAgICAgfQogICAgICAgICAgICB0aGlzLnJhd1NlZ21lbnRzLnB1c2goc2VnbWVudDIpOwogICAgICAgICAgICB0aGlzLmdlbmVyYXRlZENvZGVMaW5lICs9IDE7CiAgICAgICAgICAgIHRoaXMucmF3W3RoaXMuZ2VuZXJhdGVkQ29kZUxpbmVdID0gdGhpcy5yYXdTZWdtZW50cyA9IFtdOwogICAgICAgICAgICB0aGlzLmdlbmVyYXRlZENvZGVDb2x1bW4gPSAwOwogICAgICAgICAgICBwcmV2aW91c0NvbnRlbnRMaW5lRW5kID0gY29udGVudExpbmVFbmQ7CiAgICAgICAgICAgIGNvbnRlbnRMaW5lRW5kID0gY29udGVudC5pbmRleE9mKCJcbiIsIGNvbnRlbnRMaW5lRW5kICsgMSk7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBzZWdtZW50ID0gW3RoaXMuZ2VuZXJhdGVkQ29kZUNvbHVtbiwgc291cmNlSW5kZXgsIGxvYy5saW5lLCBsb2MuY29sdW1uXTsKICAgICAgICAgIGlmIChuYW1lSW5kZXggPj0gMCkgewogICAgICAgICAgICBzZWdtZW50LnB1c2gobmFtZUluZGV4KTsKICAgICAgICAgIH0KICAgICAgICAgIHRoaXMucmF3U2VnbWVudHMucHVzaChzZWdtZW50KTsKICAgICAgICAgIHRoaXMuYWR2YW5jZShjb250ZW50LnNsaWNlKHByZXZpb3VzQ29udGVudExpbmVFbmQgKyAxKSk7CiAgICAgICAgfSBlbHNlIGlmICh0aGlzLnBlbmRpbmcpIHsKICAgICAgICAgIHRoaXMucmF3U2VnbWVudHMucHVzaCh0aGlzLnBlbmRpbmcpOwogICAgICAgICAgdGhpcy5hZHZhbmNlKGNvbnRlbnQpOwogICAgICAgIH0KICAgICAgICB0aGlzLnBlbmRpbmcgPSBudWxsOwogICAgICB9CiAgICAgIGFkZFVuZWRpdGVkQ2h1bmsoc291cmNlSW5kZXgsIGNodW5rLCBvcmlnaW5hbCwgbG9jLCBzb3VyY2VtYXBMb2NhdGlvbnMpIHsKICAgICAgICBsZXQgb3JpZ2luYWxDaGFySW5kZXggPSBjaHVuay5zdGFydDsKICAgICAgICBsZXQgZmlyc3QgPSB0cnVlOwogICAgICAgIGxldCBjaGFySW5IaXJlc0JvdW5kYXJ5ID0gZmFsc2U7CiAgICAgICAgd2hpbGUgKG9yaWdpbmFsQ2hhckluZGV4IDwgY2h1bmsuZW5kKSB7CiAgICAgICAgICBpZiAob3JpZ2luYWxbb3JpZ2luYWxDaGFySW5kZXhdID09PSAiXG4iKSB7CiAgICAgICAgICAgIGxvYy5saW5lICs9IDE7CiAgICAgICAgICAgIGxvYy5jb2x1bW4gPSAwOwogICAgICAgICAgICB0aGlzLmdlbmVyYXRlZENvZGVMaW5lICs9IDE7CiAgICAgICAgICAgIHRoaXMucmF3W3RoaXMuZ2VuZXJhdGVkQ29kZUxpbmVdID0gdGhpcy5yYXdTZWdtZW50cyA9IFtdOwogICAgICAgICAgICB0aGlzLmdlbmVyYXRlZENvZGVDb2x1bW4gPSAwOwogICAgICAgICAgICBmaXJzdCA9IHRydWU7CiAgICAgICAgICAgIGNoYXJJbkhpcmVzQm91bmRhcnkgPSBmYWxzZTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGlmICh0aGlzLmhpcmVzIHx8IGZpcnN0IHx8IHNvdXJjZW1hcExvY2F0aW9ucy5oYXMob3JpZ2luYWxDaGFySW5kZXgpKSB7CiAgICAgICAgICAgICAgY29uc3Qgc2VnbWVudCA9IFt0aGlzLmdlbmVyYXRlZENvZGVDb2x1bW4sIHNvdXJjZUluZGV4LCBsb2MubGluZSwgbG9jLmNvbHVtbl07CiAgICAgICAgICAgICAgaWYgKHRoaXMuaGlyZXMgPT09ICJib3VuZGFyeSIpIHsKICAgICAgICAgICAgICAgIGlmICh3b3JkUmVnZXgudGVzdChvcmlnaW5hbFtvcmlnaW5hbENoYXJJbmRleF0pKSB7CiAgICAgICAgICAgICAgICAgIGlmICghY2hhckluSGlyZXNCb3VuZGFyeSkgewogICAgICAgICAgICAgICAgICAgIHRoaXMucmF3U2VnbWVudHMucHVzaChzZWdtZW50KTsKICAgICAgICAgICAgICAgICAgICBjaGFySW5IaXJlc0JvdW5kYXJ5ID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgdGhpcy5yYXdTZWdtZW50cy5wdXNoKHNlZ21lbnQpOwogICAgICAgICAgICAgICAgICBjaGFySW5IaXJlc0JvdW5kYXJ5ID0gZmFsc2U7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHRoaXMucmF3U2VnbWVudHMucHVzaChzZWdtZW50KTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbG9jLmNvbHVtbiArPSAxOwogICAgICAgICAgICB0aGlzLmdlbmVyYXRlZENvZGVDb2x1bW4gKz0gMTsKICAgICAgICAgICAgZmlyc3QgPSBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICAgIG9yaWdpbmFsQ2hhckluZGV4ICs9IDE7CiAgICAgICAgfQogICAgICAgIHRoaXMucGVuZGluZyA9IG51bGw7CiAgICAgIH0KICAgICAgYWR2YW5jZShzdHIpIHsKICAgICAgICBpZiAoIXN0cikgcmV0dXJuOwogICAgICAgIGNvbnN0IGxpbmVzID0gc3RyLnNwbGl0KCJcbiIpOwogICAgICAgIGlmIChsaW5lcy5sZW5ndGggPiAxKSB7CiAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxpbmVzLmxlbmd0aCAtIDE7IGkrKykgewogICAgICAgICAgICB0aGlzLmdlbmVyYXRlZENvZGVMaW5lKys7CiAgICAgICAgICAgIHRoaXMucmF3W3RoaXMuZ2VuZXJhdGVkQ29kZUxpbmVdID0gdGhpcy5yYXdTZWdtZW50cyA9IFtdOwogICAgICAgICAgfQogICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uID0gMDsKICAgICAgICB9CiAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uICs9IGxpbmVzW2xpbmVzLmxlbmd0aCAtIDFdLmxlbmd0aDsKICAgICAgfQogICAgfTsKICAgIHZhciBuID0gIlxuIjsKICAgIHZhciB3YXJuZWQgPSB7CiAgICAgIGluc2VydExlZnQ6IGZhbHNlLAogICAgICBpbnNlcnRSaWdodDogZmFsc2UsCiAgICAgIHN0b3JlTmFtZTogZmFsc2UKICAgIH07CiAgICB2YXIgTWFnaWNTdHJpbmcgPSBjbGFzcyBfTWFnaWNTdHJpbmcgewogICAgICBjb25zdHJ1Y3RvcihzdHJpbmcsIG9wdGlvbnMgPSB7fSkgewogICAgICAgIGNvbnN0IGNodW5rID0gbmV3IENodW5rKDAsIHN0cmluZy5sZW5ndGgsIHN0cmluZyk7CiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnRpZXModGhpcywgewogICAgICAgICAgb3JpZ2luYWw6IHsgd3JpdGFibGU6IHRydWUsIHZhbHVlOiBzdHJpbmcgfSwKICAgICAgICAgIG91dHJvOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogIiIgfSwKICAgICAgICAgIGludHJvOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogIiIgfSwKICAgICAgICAgIGZpcnN0Q2h1bms6IHsgd3JpdGFibGU6IHRydWUsIHZhbHVlOiBjaHVuayB9LAogICAgICAgICAgbGFzdENodW5rOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogY2h1bmsgfSwKICAgICAgICAgIGxhc3RTZWFyY2hlZENodW5rOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogY2h1bmsgfSwKICAgICAgICAgIGJ5U3RhcnQ6IHsgd3JpdGFibGU6IHRydWUsIHZhbHVlOiB7fSB9LAogICAgICAgICAgYnlFbmQ6IHsgd3JpdGFibGU6IHRydWUsIHZhbHVlOiB7fSB9LAogICAgICAgICAgZmlsZW5hbWU6IHsgd3JpdGFibGU6IHRydWUsIHZhbHVlOiBvcHRpb25zLmZpbGVuYW1lIH0sCiAgICAgICAgICBpbmRlbnRFeGNsdXNpb25SYW5nZXM6IHsgd3JpdGFibGU6IHRydWUsIHZhbHVlOiBvcHRpb25zLmluZGVudEV4Y2x1c2lvblJhbmdlcyB9LAogICAgICAgICAgc291cmNlbWFwTG9jYXRpb25zOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogbmV3IEJpdFNldCgpIH0sCiAgICAgICAgICBzdG9yZWROYW1lczogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6IHt9IH0sCiAgICAgICAgICBpbmRlbnRTdHI6IHsgd3JpdGFibGU6IHRydWUsIHZhbHVlOiB2b2lkIDAgfSwKICAgICAgICAgIGlnbm9yZUxpc3Q6IHsgd3JpdGFibGU6IHRydWUsIHZhbHVlOiBvcHRpb25zLmlnbm9yZUxpc3QgfSwKICAgICAgICAgIG9mZnNldDogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6IG9wdGlvbnMub2Zmc2V0IHx8IDAgfQogICAgICAgIH0pOwogICAgICAgIHRoaXMuYnlTdGFydFswXSA9IGNodW5rOwogICAgICAgIHRoaXMuYnlFbmRbc3RyaW5nLmxlbmd0aF0gPSBjaHVuazsKICAgICAgfQogICAgICBhZGRTb3VyY2VtYXBMb2NhdGlvbihjaGFyKSB7CiAgICAgICAgdGhpcy5zb3VyY2VtYXBMb2NhdGlvbnMuYWRkKGNoYXIpOwogICAgICB9CiAgICAgIGFwcGVuZChjb250ZW50KSB7CiAgICAgICAgaWYgKHR5cGVvZiBjb250ZW50ICE9PSAic3RyaW5nIikgdGhyb3cgbmV3IFR5cGVFcnJvcigib3V0cm8gY29udGVudCBtdXN0IGJlIGEgc3RyaW5nIik7CiAgICAgICAgdGhpcy5vdXRybyArPSBjb250ZW50OwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGFwcGVuZExlZnQoaW5kZXgsIGNvbnRlbnQpIHsKICAgICAgICBpbmRleCA9IGluZGV4ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKHR5cGVvZiBjb250ZW50ICE9PSAic3RyaW5nIikgdGhyb3cgbmV3IFR5cGVFcnJvcigiaW5zZXJ0ZWQgY29udGVudCBtdXN0IGJlIGEgc3RyaW5nIik7CiAgICAgICAgdGhpcy5fc3BsaXQoaW5kZXgpOwogICAgICAgIGNvbnN0IGNodW5rID0gdGhpcy5ieUVuZFtpbmRleF07CiAgICAgICAgaWYgKGNodW5rKSB7CiAgICAgICAgICBjaHVuay5hcHBlbmRMZWZ0KGNvbnRlbnQpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLmludHJvICs9IGNvbnRlbnQ7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGFwcGVuZFJpZ2h0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgaW5kZXggPSBpbmRleCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmICh0eXBlb2YgY29udGVudCAhPT0gInN0cmluZyIpIHRocm93IG5ldyBUeXBlRXJyb3IoImluc2VydGVkIGNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIHRoaXMuX3NwbGl0KGluZGV4KTsKICAgICAgICBjb25zdCBjaHVuayA9IHRoaXMuYnlTdGFydFtpbmRleF07CiAgICAgICAgaWYgKGNodW5rKSB7CiAgICAgICAgICBjaHVuay5hcHBlbmRSaWdodChjb250ZW50KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5vdXRybyArPSBjb250ZW50OwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBjbG9uZSgpIHsKICAgICAgICBjb25zdCBjbG9uZWQgPSBuZXcgX01hZ2ljU3RyaW5nKHRoaXMub3JpZ2luYWwsIHsgZmlsZW5hbWU6IHRoaXMuZmlsZW5hbWUsIG9mZnNldDogdGhpcy5vZmZzZXQgfSk7CiAgICAgICAgbGV0IG9yaWdpbmFsQ2h1bmsgPSB0aGlzLmZpcnN0Q2h1bms7CiAgICAgICAgbGV0IGNsb25lZENodW5rID0gY2xvbmVkLmZpcnN0Q2h1bmsgPSBjbG9uZWQubGFzdFNlYXJjaGVkQ2h1bmsgPSBvcmlnaW5hbENodW5rLmNsb25lKCk7CiAgICAgICAgd2hpbGUgKG9yaWdpbmFsQ2h1bmspIHsKICAgICAgICAgIGNsb25lZC5ieVN0YXJ0W2Nsb25lZENodW5rLnN0YXJ0XSA9IGNsb25lZENodW5rOwogICAgICAgICAgY2xvbmVkLmJ5RW5kW2Nsb25lZENodW5rLmVuZF0gPSBjbG9uZWRDaHVuazsKICAgICAgICAgIGNvbnN0IG5leHRPcmlnaW5hbENodW5rID0gb3JpZ2luYWxDaHVuay5uZXh0OwogICAgICAgICAgY29uc3QgbmV4dENsb25lZENodW5rID0gbmV4dE9yaWdpbmFsQ2h1bmsgJiYgbmV4dE9yaWdpbmFsQ2h1bmsuY2xvbmUoKTsKICAgICAgICAgIGlmIChuZXh0Q2xvbmVkQ2h1bmspIHsKICAgICAgICAgICAgY2xvbmVkQ2h1bmsubmV4dCA9IG5leHRDbG9uZWRDaHVuazsKICAgICAgICAgICAgbmV4dENsb25lZENodW5rLnByZXZpb3VzID0gY2xvbmVkQ2h1bms7CiAgICAgICAgICAgIGNsb25lZENodW5rID0gbmV4dENsb25lZENodW5rOwogICAgICAgICAgfQogICAgICAgICAgb3JpZ2luYWxDaHVuayA9IG5leHRPcmlnaW5hbENodW5rOwogICAgICAgIH0KICAgICAgICBjbG9uZWQubGFzdENodW5rID0gY2xvbmVkQ2h1bms7CiAgICAgICAgaWYgKHRoaXMuaW5kZW50RXhjbHVzaW9uUmFuZ2VzKSB7CiAgICAgICAgICBjbG9uZWQuaW5kZW50RXhjbHVzaW9uUmFuZ2VzID0gdGhpcy5pbmRlbnRFeGNsdXNpb25SYW5nZXMuc2xpY2UoKTsKICAgICAgICB9CiAgICAgICAgY2xvbmVkLnNvdXJjZW1hcExvY2F0aW9ucyA9IG5ldyBCaXRTZXQodGhpcy5zb3VyY2VtYXBMb2NhdGlvbnMpOwogICAgICAgIGNsb25lZC5pbnRybyA9IHRoaXMuaW50cm87CiAgICAgICAgY2xvbmVkLm91dHJvID0gdGhpcy5vdXRybzsKICAgICAgICByZXR1cm4gY2xvbmVkOwogICAgICB9CiAgICAgIGdlbmVyYXRlRGVjb2RlZE1hcChvcHRpb25zKSB7CiAgICAgICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307CiAgICAgICAgY29uc3Qgc291cmNlSW5kZXggPSAwOwogICAgICAgIGNvbnN0IG5hbWVzID0gT2JqZWN0LmtleXModGhpcy5zdG9yZWROYW1lcyk7CiAgICAgICAgY29uc3QgbWFwcGluZ3MgPSBuZXcgTWFwcGluZ3Mob3B0aW9ucy5oaXJlcyk7CiAgICAgICAgY29uc3QgbG9jYXRlID0gZ2V0TG9jYXRvcih0aGlzLm9yaWdpbmFsKTsKICAgICAgICBpZiAodGhpcy5pbnRybykgewogICAgICAgICAgbWFwcGluZ3MuYWR2YW5jZSh0aGlzLmludHJvKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5maXJzdENodW5rLmVhY2hOZXh0KChjaHVuaykgPT4gewogICAgICAgICAgY29uc3QgbG9jID0gbG9jYXRlKGNodW5rLnN0YXJ0KTsKICAgICAgICAgIGlmIChjaHVuay5pbnRyby5sZW5ndGgpIG1hcHBpbmdzLmFkdmFuY2UoY2h1bmsuaW50cm8pOwogICAgICAgICAgaWYgKGNodW5rLmVkaXRlZCkgewogICAgICAgICAgICBtYXBwaW5ncy5hZGRFZGl0KAogICAgICAgICAgICAgIHNvdXJjZUluZGV4LAogICAgICAgICAgICAgIGNodW5rLmNvbnRlbnQsCiAgICAgICAgICAgICAgbG9jLAogICAgICAgICAgICAgIGNodW5rLnN0b3JlTmFtZSA/IG5hbWVzLmluZGV4T2YoY2h1bmsub3JpZ2luYWwpIDogLTEKICAgICAgICAgICAgKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIG1hcHBpbmdzLmFkZFVuZWRpdGVkQ2h1bmsoc291cmNlSW5kZXgsIGNodW5rLCB0aGlzLm9yaWdpbmFsLCBsb2MsIHRoaXMuc291cmNlbWFwTG9jYXRpb25zKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChjaHVuay5vdXRyby5sZW5ndGgpIG1hcHBpbmdzLmFkdmFuY2UoY2h1bmsub3V0cm8pOwogICAgICAgIH0pOwogICAgICAgIHJldHVybiB7CiAgICAgICAgICBmaWxlOiBvcHRpb25zLmZpbGUgPyBvcHRpb25zLmZpbGUuc3BsaXQoL1svXFxdLykucG9wKCkgOiB2b2lkIDAsCiAgICAgICAgICBzb3VyY2VzOiBbCiAgICAgICAgICAgIG9wdGlvbnMuc291cmNlID8gZ2V0UmVsYXRpdmVQYXRoKG9wdGlvbnMuZmlsZSB8fCAiIiwgb3B0aW9ucy5zb3VyY2UpIDogb3B0aW9ucy5maWxlIHx8ICIiCiAgICAgICAgICBdLAogICAgICAgICAgc291cmNlc0NvbnRlbnQ6IG9wdGlvbnMuaW5jbHVkZUNvbnRlbnQgPyBbdGhpcy5vcmlnaW5hbF0gOiB2b2lkIDAsCiAgICAgICAgICBuYW1lcywKICAgICAgICAgIG1hcHBpbmdzOiBtYXBwaW5ncy5yYXcsCiAgICAgICAgICB4X2dvb2dsZV9pZ25vcmVMaXN0OiB0aGlzLmlnbm9yZUxpc3QgPyBbc291cmNlSW5kZXhdIDogdm9pZCAwCiAgICAgICAgfTsKICAgICAgfQogICAgICBnZW5lcmF0ZU1hcChvcHRpb25zKSB7CiAgICAgICAgcmV0dXJuIG5ldyBTb3VyY2VNYXAodGhpcy5nZW5lcmF0ZURlY29kZWRNYXAob3B0aW9ucykpOwogICAgICB9CiAgICAgIF9lbnN1cmVpbmRlbnRTdHIoKSB7CiAgICAgICAgaWYgKHRoaXMuaW5kZW50U3RyID09PSB2b2lkIDApIHsKICAgICAgICAgIHRoaXMuaW5kZW50U3RyID0gZ3Vlc3NJbmRlbnQodGhpcy5vcmlnaW5hbCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIF9nZXRSYXdJbmRlbnRTdHJpbmcoKSB7CiAgICAgICAgdGhpcy5fZW5zdXJlaW5kZW50U3RyKCk7CiAgICAgICAgcmV0dXJuIHRoaXMuaW5kZW50U3RyOwogICAgICB9CiAgICAgIGdldEluZGVudFN0cmluZygpIHsKICAgICAgICB0aGlzLl9lbnN1cmVpbmRlbnRTdHIoKTsKICAgICAgICByZXR1cm4gdGhpcy5pbmRlbnRTdHIgPT09IG51bGwgPyAiCSIgOiB0aGlzLmluZGVudFN0cjsKICAgICAgfQogICAgICBpbmRlbnQoaW5kZW50U3RyLCBvcHRpb25zKSB7CiAgICAgICAgY29uc3QgcGF0dGVybiA9IC9eW15cclxuXS9nbTsKICAgICAgICBpZiAoaXNPYmplY3QoaW5kZW50U3RyKSkgewogICAgICAgICAgb3B0aW9ucyA9IGluZGVudFN0cjsKICAgICAgICAgIGluZGVudFN0ciA9IHZvaWQgMDsKICAgICAgICB9CiAgICAgICAgaWYgKGluZGVudFN0ciA9PT0gdm9pZCAwKSB7CiAgICAgICAgICB0aGlzLl9lbnN1cmVpbmRlbnRTdHIoKTsKICAgICAgICAgIGluZGVudFN0ciA9IHRoaXMuaW5kZW50U3RyIHx8ICIJIjsKICAgICAgICB9CiAgICAgICAgaWYgKGluZGVudFN0ciA9PT0gIiIpIHJldHVybiB0aGlzOwogICAgICAgIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9OwogICAgICAgIGNvbnN0IGlzRXhjbHVkZWQgPSB7fTsKICAgICAgICBpZiAob3B0aW9ucy5leGNsdWRlKSB7CiAgICAgICAgICBjb25zdCBleGNsdXNpb25zID0gdHlwZW9mIG9wdGlvbnMuZXhjbHVkZVswXSA9PT0gIm51bWJlciIgPyBbb3B0aW9ucy5leGNsdWRlXSA6IG9wdGlvbnMuZXhjbHVkZTsKICAgICAgICAgIGV4Y2x1c2lvbnMuZm9yRWFjaCgoZXhjbHVzaW9uKSA9PiB7CiAgICAgICAgICAgIGZvciAobGV0IGkgPSBleGNsdXNpb25bMF07IGkgPCBleGNsdXNpb25bMV07IGkgKz0gMSkgewogICAgICAgICAgICAgIGlzRXhjbHVkZWRbaV0gPSB0cnVlOwogICAgICAgICAgICB9CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgbGV0IHNob3VsZEluZGVudE5leHRDaGFyYWN0ZXIgPSBvcHRpb25zLmluZGVudFN0YXJ0ICE9PSBmYWxzZTsKICAgICAgICBjb25zdCByZXBsYWNlciA9IChtYXRjaCkgPT4gewogICAgICAgICAgaWYgKHNob3VsZEluZGVudE5leHRDaGFyYWN0ZXIpIHJldHVybiBgJHtpbmRlbnRTdHJ9JHttYXRjaH1gOwogICAgICAgICAgc2hvdWxkSW5kZW50TmV4dENoYXJhY3RlciA9IHRydWU7CiAgICAgICAgICByZXR1cm4gbWF0Y2g7CiAgICAgICAgfTsKICAgICAgICB0aGlzLmludHJvID0gdGhpcy5pbnRyby5yZXBsYWNlKHBhdHRlcm4sIHJlcGxhY2VyKTsKICAgICAgICBsZXQgY2hhckluZGV4ID0gMDsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmZpcnN0Q2h1bms7CiAgICAgICAgd2hpbGUgKGNodW5rKSB7CiAgICAgICAgICBjb25zdCBlbmQgPSBjaHVuay5lbmQ7CiAgICAgICAgICBpZiAoY2h1bmsuZWRpdGVkKSB7CiAgICAgICAgICAgIGlmICghaXNFeGNsdWRlZFtjaGFySW5kZXhdKSB7CiAgICAgICAgICAgICAgY2h1bmsuY29udGVudCA9IGNodW5rLmNvbnRlbnQucmVwbGFjZShwYXR0ZXJuLCByZXBsYWNlcik7CiAgICAgICAgICAgICAgaWYgKGNodW5rLmNvbnRlbnQubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICBzaG91bGRJbmRlbnROZXh0Q2hhcmFjdGVyID0gY2h1bmsuY29udGVudFtjaHVuay5jb250ZW50Lmxlbmd0aCAtIDFdID09PSAiXG4iOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgY2hhckluZGV4ID0gY2h1bmsuc3RhcnQ7CiAgICAgICAgICAgIHdoaWxlIChjaGFySW5kZXggPCBlbmQpIHsKICAgICAgICAgICAgICBpZiAoIWlzRXhjbHVkZWRbY2hhckluZGV4XSkgewogICAgICAgICAgICAgICAgY29uc3QgY2hhciA9IHRoaXMub3JpZ2luYWxbY2hhckluZGV4XTsKICAgICAgICAgICAgICAgIGlmIChjaGFyID09PSAiXG4iKSB7CiAgICAgICAgICAgICAgICAgIHNob3VsZEluZGVudE5leHRDaGFyYWN0ZXIgPSB0cnVlOwogICAgICAgICAgICAgICAgfSBlbHNlIGlmIChjaGFyICE9PSAiXHIiICYmIHNob3VsZEluZGVudE5leHRDaGFyYWN0ZXIpIHsKICAgICAgICAgICAgICAgICAgc2hvdWxkSW5kZW50TmV4dENoYXJhY3RlciA9IGZhbHNlOwogICAgICAgICAgICAgICAgICBpZiAoY2hhckluZGV4ID09PSBjaHVuay5zdGFydCkgewogICAgICAgICAgICAgICAgICAgIGNodW5rLnByZXBlbmRSaWdodChpbmRlbnRTdHIpOwogICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIHRoaXMuX3NwbGl0Q2h1bmsoY2h1bmssIGNoYXJJbmRleCk7CiAgICAgICAgICAgICAgICAgICAgY2h1bmsgPSBjaHVuay5uZXh0OwogICAgICAgICAgICAgICAgICAgIGNodW5rLnByZXBlbmRSaWdodChpbmRlbnRTdHIpOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGNoYXJJbmRleCArPSAxOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBjaGFySW5kZXggPSBjaHVuay5lbmQ7CiAgICAgICAgICBjaHVuayA9IGNodW5rLm5leHQ7CiAgICAgICAgfQogICAgICAgIHRoaXMub3V0cm8gPSB0aGlzLm91dHJvLnJlcGxhY2UocGF0dGVybiwgcmVwbGFjZXIpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGluc2VydCgpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgICAibWFnaWNTdHJpbmcuaW5zZXJ0KC4uLikgaXMgZGVwcmVjYXRlZC4gVXNlIHByZXBlbmRSaWdodCguLi4pIG9yIGFwcGVuZExlZnQoLi4uKSIKICAgICAgICApOwogICAgICB9CiAgICAgIGluc2VydExlZnQoaW5kZXgsIGNvbnRlbnQpIHsKICAgICAgICBpZiAoIXdhcm5lZC5pbnNlcnRMZWZ0KSB7CiAgICAgICAgICBjb25zb2xlLndhcm4oCiAgICAgICAgICAgICJtYWdpY1N0cmluZy5pbnNlcnRMZWZ0KC4uLikgaXMgZGVwcmVjYXRlZC4gVXNlIG1hZ2ljU3RyaW5nLmFwcGVuZExlZnQoLi4uKSBpbnN0ZWFkIgogICAgICAgICAgKTsKICAgICAgICAgIHdhcm5lZC5pbnNlcnRMZWZ0ID0gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuYXBwZW5kTGVmdChpbmRleCwgY29udGVudCk7CiAgICAgIH0KICAgICAgaW5zZXJ0UmlnaHQoaW5kZXgsIGNvbnRlbnQpIHsKICAgICAgICBpZiAoIXdhcm5lZC5pbnNlcnRSaWdodCkgewogICAgICAgICAgY29uc29sZS53YXJuKAogICAgICAgICAgICAibWFnaWNTdHJpbmcuaW5zZXJ0UmlnaHQoLi4uKSBpcyBkZXByZWNhdGVkLiBVc2UgbWFnaWNTdHJpbmcucHJlcGVuZFJpZ2h0KC4uLikgaW5zdGVhZCIKICAgICAgICAgICk7CiAgICAgICAgICB3YXJuZWQuaW5zZXJ0UmlnaHQgPSB0cnVlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5wcmVwZW5kUmlnaHQoaW5kZXgsIGNvbnRlbnQpOwogICAgICB9CiAgICAgIG1vdmUoc3RhcnQsIGVuZCwgaW5kZXgpIHsKICAgICAgICBzdGFydCA9IHN0YXJ0ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgZW5kID0gZW5kICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaW5kZXggPSBpbmRleCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmIChpbmRleCA+PSBzdGFydCAmJiBpbmRleCA8PSBlbmQpIHRocm93IG5ldyBFcnJvcigiQ2Fubm90IG1vdmUgYSBzZWxlY3Rpb24gaW5zaWRlIGl0c2VsZiIpOwogICAgICAgIHRoaXMuX3NwbGl0KHN0YXJ0KTsKICAgICAgICB0aGlzLl9zcGxpdChlbmQpOwogICAgICAgIHRoaXMuX3NwbGl0KGluZGV4KTsKICAgICAgICBjb25zdCBmaXJzdCA9IHRoaXMuYnlTdGFydFtzdGFydF07CiAgICAgICAgY29uc3QgbGFzdCA9IHRoaXMuYnlFbmRbZW5kXTsKICAgICAgICBjb25zdCBvbGRMZWZ0ID0gZmlyc3QucHJldmlvdXM7CiAgICAgICAgY29uc3Qgb2xkUmlnaHQgPSBsYXN0Lm5leHQ7CiAgICAgICAgY29uc3QgbmV3UmlnaHQgPSB0aGlzLmJ5U3RhcnRbaW5kZXhdOwogICAgICAgIGlmICghbmV3UmlnaHQgJiYgbGFzdCA9PT0gdGhpcy5sYXN0Q2h1bmspIHJldHVybiB0aGlzOwogICAgICAgIGNvbnN0IG5ld0xlZnQgPSBuZXdSaWdodCA/IG5ld1JpZ2h0LnByZXZpb3VzIDogdGhpcy5sYXN0Q2h1bms7CiAgICAgICAgaWYgKG9sZExlZnQpIG9sZExlZnQubmV4dCA9IG9sZFJpZ2h0OwogICAgICAgIGlmIChvbGRSaWdodCkgb2xkUmlnaHQucHJldmlvdXMgPSBvbGRMZWZ0OwogICAgICAgIGlmIChuZXdMZWZ0KSBuZXdMZWZ0Lm5leHQgPSBmaXJzdDsKICAgICAgICBpZiAobmV3UmlnaHQpIG5ld1JpZ2h0LnByZXZpb3VzID0gbGFzdDsKICAgICAgICBpZiAoIWZpcnN0LnByZXZpb3VzKSB0aGlzLmZpcnN0Q2h1bmsgPSBsYXN0Lm5leHQ7CiAgICAgICAgaWYgKCFsYXN0Lm5leHQpIHsKICAgICAgICAgIHRoaXMubGFzdENodW5rID0gZmlyc3QucHJldmlvdXM7CiAgICAgICAgICB0aGlzLmxhc3RDaHVuay5uZXh0ID0gbnVsbDsKICAgICAgICB9CiAgICAgICAgZmlyc3QucHJldmlvdXMgPSBuZXdMZWZ0OwogICAgICAgIGxhc3QubmV4dCA9IG5ld1JpZ2h0IHx8IG51bGw7CiAgICAgICAgaWYgKCFuZXdMZWZ0KSB0aGlzLmZpcnN0Q2h1bmsgPSBmaXJzdDsKICAgICAgICBpZiAoIW5ld1JpZ2h0KSB0aGlzLmxhc3RDaHVuayA9IGxhc3Q7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgb3ZlcndyaXRlKHN0YXJ0LCBlbmQsIGNvbnRlbnQsIG9wdGlvbnMpIHsKICAgICAgICBvcHRpb25zID0gb3B0aW9ucyB8fCB7fTsKICAgICAgICByZXR1cm4gdGhpcy51cGRhdGUoc3RhcnQsIGVuZCwgY29udGVudCwgeyAuLi5vcHRpb25zLCBvdmVyd3JpdGU6ICFvcHRpb25zLmNvbnRlbnRPbmx5IH0pOwogICAgICB9CiAgICAgIHVwZGF0ZShzdGFydCwgZW5kLCBjb250ZW50LCBvcHRpb25zKSB7CiAgICAgICAgc3RhcnQgPSBzdGFydCArIHRoaXMub2Zmc2V0OwogICAgICAgIGVuZCA9IGVuZCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmICh0eXBlb2YgY29udGVudCAhPT0gInN0cmluZyIpIHRocm93IG5ldyBUeXBlRXJyb3IoInJlcGxhY2VtZW50IGNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIGlmICh0aGlzLm9yaWdpbmFsLmxlbmd0aCAhPT0gMCkgewogICAgICAgICAgd2hpbGUgKHN0YXJ0IDwgMCkgc3RhcnQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgICB3aGlsZSAoZW5kIDwgMCkgZW5kICs9IHRoaXMub3JpZ2luYWwubGVuZ3RoOwogICAgICAgIH0KICAgICAgICBpZiAoZW5kID4gdGhpcy5vcmlnaW5hbC5sZW5ndGgpIHRocm93IG5ldyBFcnJvcigiZW5kIGlzIG91dCBvZiBib3VuZHMiKTsKICAgICAgICBpZiAoc3RhcnQgPT09IGVuZCkKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigKICAgICAgICAgICAgIkNhbm5vdCBvdmVyd3JpdGUgYSB6ZXJvLWxlbmd0aCByYW5nZSBcdTIwMTMgdXNlIGFwcGVuZExlZnQgb3IgcHJlcGVuZFJpZ2h0IGluc3RlYWQiCiAgICAgICAgICApOwogICAgICAgIHRoaXMuX3NwbGl0KHN0YXJ0KTsKICAgICAgICB0aGlzLl9zcGxpdChlbmQpOwogICAgICAgIGlmIChvcHRpb25zID09PSB0cnVlKSB7CiAgICAgICAgICBpZiAoIXdhcm5lZC5zdG9yZU5hbWUpIHsKICAgICAgICAgICAgY29uc29sZS53YXJuKAogICAgICAgICAgICAgICJUaGUgZmluYWwgYXJndW1lbnQgdG8gbWFnaWNTdHJpbmcub3ZlcndyaXRlKC4uLikgc2hvdWxkIGJlIGFuIG9wdGlvbnMgb2JqZWN0LiBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3JpY2gtaGFycmlzL21hZ2ljLXN0cmluZyIKICAgICAgICAgICAgKTsKICAgICAgICAgICAgd2FybmVkLnN0b3JlTmFtZSA9IHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICBvcHRpb25zID0geyBzdG9yZU5hbWU6IHRydWUgfTsKICAgICAgICB9CiAgICAgICAgY29uc3Qgc3RvcmVOYW1lID0gb3B0aW9ucyAhPT0gdm9pZCAwID8gb3B0aW9ucy5zdG9yZU5hbWUgOiBmYWxzZTsKICAgICAgICBjb25zdCBvdmVyd3JpdGUgPSBvcHRpb25zICE9PSB2b2lkIDAgPyBvcHRpb25zLm92ZXJ3cml0ZSA6IGZhbHNlOwogICAgICAgIGlmIChzdG9yZU5hbWUpIHsKICAgICAgICAgIGNvbnN0IG9yaWdpbmFsID0gdGhpcy5vcmlnaW5hbC5zbGljZShzdGFydCwgZW5kKTsKICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLnN0b3JlZE5hbWVzLCBvcmlnaW5hbCwgewogICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSwKICAgICAgICAgICAgdmFsdWU6IHRydWUsCiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBjb25zdCBmaXJzdCA9IHRoaXMuYnlTdGFydFtzdGFydF07CiAgICAgICAgY29uc3QgbGFzdCA9IHRoaXMuYnlFbmRbZW5kXTsKICAgICAgICBpZiAoZmlyc3QpIHsKICAgICAgICAgIGxldCBjaHVuayA9IGZpcnN0OwogICAgICAgICAgd2hpbGUgKGNodW5rICE9PSBsYXN0KSB7CiAgICAgICAgICAgIGlmIChjaHVuay5uZXh0ICE9PSB0aGlzLmJ5U3RhcnRbY2h1bmsuZW5kXSkgewogICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiQ2Fubm90IG92ZXJ3cml0ZSBhY3Jvc3MgYSBzcGxpdCBwb2ludCIpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNodW5rID0gY2h1bmsubmV4dDsKICAgICAgICAgICAgY2h1bmsuZWRpdCgiIiwgZmFsc2UpOwogICAgICAgICAgfQogICAgICAgICAgZmlyc3QuZWRpdChjb250ZW50LCBzdG9yZU5hbWUsICFvdmVyd3JpdGUpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb25zdCBuZXdDaHVuayA9IG5ldyBDaHVuayhzdGFydCwgZW5kLCAiIikuZWRpdChjb250ZW50LCBzdG9yZU5hbWUpOwogICAgICAgICAgbGFzdC5uZXh0ID0gbmV3Q2h1bms7CiAgICAgICAgICBuZXdDaHVuay5wcmV2aW91cyA9IGxhc3Q7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHByZXBlbmQoY29udGVudCkgewogICAgICAgIGlmICh0eXBlb2YgY29udGVudCAhPT0gInN0cmluZyIpIHRocm93IG5ldyBUeXBlRXJyb3IoIm91dHJvIGNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIHRoaXMuaW50cm8gPSBjb250ZW50ICsgdGhpcy5pbnRybzsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBwcmVwZW5kTGVmdChpbmRleCwgY29udGVudCkgewogICAgICAgIGluZGV4ID0gaW5kZXggKyB0aGlzLm9mZnNldDsKICAgICAgICBpZiAodHlwZW9mIGNvbnRlbnQgIT09ICJzdHJpbmciKSB0aHJvdyBuZXcgVHlwZUVycm9yKCJpbnNlcnRlZCBjb250ZW50IG11c3QgYmUgYSBzdHJpbmciKTsKICAgICAgICB0aGlzLl9zcGxpdChpbmRleCk7CiAgICAgICAgY29uc3QgY2h1bmsgPSB0aGlzLmJ5RW5kW2luZGV4XTsKICAgICAgICBpZiAoY2h1bmspIHsKICAgICAgICAgIGNodW5rLnByZXBlbmRMZWZ0KGNvbnRlbnQpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLmludHJvID0gY29udGVudCArIHRoaXMuaW50cm87CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHByZXBlbmRSaWdodChpbmRleCwgY29udGVudCkgewogICAgICAgIGluZGV4ID0gaW5kZXggKyB0aGlzLm9mZnNldDsKICAgICAgICBpZiAodHlwZW9mIGNvbnRlbnQgIT09ICJzdHJpbmciKSB0aHJvdyBuZXcgVHlwZUVycm9yKCJpbnNlcnRlZCBjb250ZW50IG11c3QgYmUgYSBzdHJpbmciKTsKICAgICAgICB0aGlzLl9zcGxpdChpbmRleCk7CiAgICAgICAgY29uc3QgY2h1bmsgPSB0aGlzLmJ5U3RhcnRbaW5kZXhdOwogICAgICAgIGlmIChjaHVuaykgewogICAgICAgICAgY2h1bmsucHJlcGVuZFJpZ2h0KGNvbnRlbnQpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLm91dHJvID0gY29udGVudCArIHRoaXMub3V0cm87CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHJlbW92ZShzdGFydCwgZW5kKSB7CiAgICAgICAgc3RhcnQgPSBzdGFydCArIHRoaXMub2Zmc2V0OwogICAgICAgIGVuZCA9IGVuZCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmICh0aGlzLm9yaWdpbmFsLmxlbmd0aCAhPT0gMCkgewogICAgICAgICAgd2hpbGUgKHN0YXJ0IDwgMCkgc3RhcnQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgICB3aGlsZSAoZW5kIDwgMCkgZW5kICs9IHRoaXMub3JpZ2luYWwubGVuZ3RoOwogICAgICAgIH0KICAgICAgICBpZiAoc3RhcnQgPT09IGVuZCkgcmV0dXJuIHRoaXM7CiAgICAgICAgaWYgKHN0YXJ0IDwgMCB8fCBlbmQgPiB0aGlzLm9yaWdpbmFsLmxlbmd0aCkgdGhyb3cgbmV3IEVycm9yKCJDaGFyYWN0ZXIgaXMgb3V0IG9mIGJvdW5kcyIpOwogICAgICAgIGlmIChzdGFydCA+IGVuZCkgdGhyb3cgbmV3IEVycm9yKCJlbmQgbXVzdCBiZSBncmVhdGVyIHRoYW4gc3RhcnQiKTsKICAgICAgICB0aGlzLl9zcGxpdChzdGFydCk7CiAgICAgICAgdGhpcy5fc3BsaXQoZW5kKTsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmJ5U3RhcnRbc3RhcnRdOwogICAgICAgIHdoaWxlIChjaHVuaykgewogICAgICAgICAgY2h1bmsuaW50cm8gPSAiIjsKICAgICAgICAgIGNodW5rLm91dHJvID0gIiI7CiAgICAgICAgICBjaHVuay5lZGl0KCIiKTsKICAgICAgICAgIGNodW5rID0gZW5kID4gY2h1bmsuZW5kID8gdGhpcy5ieVN0YXJ0W2NodW5rLmVuZF0gOiBudWxsOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICByZXNldChzdGFydCwgZW5kKSB7CiAgICAgICAgc3RhcnQgPSBzdGFydCArIHRoaXMub2Zmc2V0OwogICAgICAgIGVuZCA9IGVuZCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmICh0aGlzLm9yaWdpbmFsLmxlbmd0aCAhPT0gMCkgewogICAgICAgICAgd2hpbGUgKHN0YXJ0IDwgMCkgc3RhcnQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgICB3aGlsZSAoZW5kIDwgMCkgZW5kICs9IHRoaXMub3JpZ2luYWwubGVuZ3RoOwogICAgICAgIH0KICAgICAgICBpZiAoc3RhcnQgPT09IGVuZCkgcmV0dXJuIHRoaXM7CiAgICAgICAgaWYgKHN0YXJ0IDwgMCB8fCBlbmQgPiB0aGlzLm9yaWdpbmFsLmxlbmd0aCkgdGhyb3cgbmV3IEVycm9yKCJDaGFyYWN0ZXIgaXMgb3V0IG9mIGJvdW5kcyIpOwogICAgICAgIGlmIChzdGFydCA+IGVuZCkgdGhyb3cgbmV3IEVycm9yKCJlbmQgbXVzdCBiZSBncmVhdGVyIHRoYW4gc3RhcnQiKTsKICAgICAgICB0aGlzLl9zcGxpdChzdGFydCk7CiAgICAgICAgdGhpcy5fc3BsaXQoZW5kKTsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmJ5U3RhcnRbc3RhcnRdOwogICAgICAgIHdoaWxlIChjaHVuaykgewogICAgICAgICAgY2h1bmsucmVzZXQoKTsKICAgICAgICAgIGNodW5rID0gZW5kID4gY2h1bmsuZW5kID8gdGhpcy5ieVN0YXJ0W2NodW5rLmVuZF0gOiBudWxsOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBsYXN0Q2hhcigpIHsKICAgICAgICBpZiAodGhpcy5vdXRyby5sZW5ndGgpIHJldHVybiB0aGlzLm91dHJvW3RoaXMub3V0cm8ubGVuZ3RoIC0gMV07CiAgICAgICAgbGV0IGNodW5rID0gdGhpcy5sYXN0Q2h1bms7CiAgICAgICAgZG8gewogICAgICAgICAgaWYgKGNodW5rLm91dHJvLmxlbmd0aCkgcmV0dXJuIGNodW5rLm91dHJvW2NodW5rLm91dHJvLmxlbmd0aCAtIDFdOwogICAgICAgICAgaWYgKGNodW5rLmNvbnRlbnQubGVuZ3RoKSByZXR1cm4gY2h1bmsuY29udGVudFtjaHVuay5jb250ZW50Lmxlbmd0aCAtIDFdOwogICAgICAgICAgaWYgKGNodW5rLmludHJvLmxlbmd0aCkgcmV0dXJuIGNodW5rLmludHJvW2NodW5rLmludHJvLmxlbmd0aCAtIDFdOwogICAgICAgIH0gd2hpbGUgKGNodW5rID0gY2h1bmsucHJldmlvdXMpOwogICAgICAgIGlmICh0aGlzLmludHJvLmxlbmd0aCkgcmV0dXJuIHRoaXMuaW50cm9bdGhpcy5pbnRyby5sZW5ndGggLSAxXTsKICAgICAgICByZXR1cm4gIiI7CiAgICAgIH0KICAgICAgbGFzdExpbmUoKSB7CiAgICAgICAgbGV0IGxpbmVJbmRleCA9IHRoaXMub3V0cm8ubGFzdEluZGV4T2Yobik7CiAgICAgICAgaWYgKGxpbmVJbmRleCAhPT0gLTEpIHJldHVybiB0aGlzLm91dHJvLnN1YnN0cihsaW5lSW5kZXggKyAxKTsKICAgICAgICBsZXQgbGluZVN0ciA9IHRoaXMub3V0cm87CiAgICAgICAgbGV0IGNodW5rID0gdGhpcy5sYXN0Q2h1bms7CiAgICAgICAgZG8gewogICAgICAgICAgaWYgKGNodW5rLm91dHJvLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgbGluZUluZGV4ID0gY2h1bmsub3V0cm8ubGFzdEluZGV4T2Yobik7CiAgICAgICAgICAgIGlmIChsaW5lSW5kZXggIT09IC0xKSByZXR1cm4gY2h1bmsub3V0cm8uc3Vic3RyKGxpbmVJbmRleCArIDEpICsgbGluZVN0cjsKICAgICAgICAgICAgbGluZVN0ciA9IGNodW5rLm91dHJvICsgbGluZVN0cjsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChjaHVuay5jb250ZW50Lmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgbGluZUluZGV4ID0gY2h1bmsuY29udGVudC5sYXN0SW5kZXhPZihuKTsKICAgICAgICAgICAgaWYgKGxpbmVJbmRleCAhPT0gLTEpIHJldHVybiBjaHVuay5jb250ZW50LnN1YnN0cihsaW5lSW5kZXggKyAxKSArIGxpbmVTdHI7CiAgICAgICAgICAgIGxpbmVTdHIgPSBjaHVuay5jb250ZW50ICsgbGluZVN0cjsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChjaHVuay5pbnRyby5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgIGxpbmVJbmRleCA9IGNodW5rLmludHJvLmxhc3RJbmRleE9mKG4pOwogICAgICAgICAgICBpZiAobGluZUluZGV4ICE9PSAtMSkgcmV0dXJuIGNodW5rLmludHJvLnN1YnN0cihsaW5lSW5kZXggKyAxKSArIGxpbmVTdHI7CiAgICAgICAgICAgIGxpbmVTdHIgPSBjaHVuay5pbnRybyArIGxpbmVTdHI7CiAgICAgICAgICB9CiAgICAgICAgfSB3aGlsZSAoY2h1bmsgPSBjaHVuay5wcmV2aW91cyk7CiAgICAgICAgbGluZUluZGV4ID0gdGhpcy5pbnRyby5sYXN0SW5kZXhPZihuKTsKICAgICAgICBpZiAobGluZUluZGV4ICE9PSAtMSkgcmV0dXJuIHRoaXMuaW50cm8uc3Vic3RyKGxpbmVJbmRleCArIDEpICsgbGluZVN0cjsKICAgICAgICByZXR1cm4gdGhpcy5pbnRybyArIGxpbmVTdHI7CiAgICAgIH0KICAgICAgc2xpY2Uoc3RhcnQgPSAwLCBlbmQgPSB0aGlzLm9yaWdpbmFsLmxlbmd0aCAtIHRoaXMub2Zmc2V0KSB7CiAgICAgICAgc3RhcnQgPSBzdGFydCArIHRoaXMub2Zmc2V0OwogICAgICAgIGVuZCA9IGVuZCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmICh0aGlzLm9yaWdpbmFsLmxlbmd0aCAhPT0gMCkgewogICAgICAgICAgd2hpbGUgKHN0YXJ0IDwgMCkgc3RhcnQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgICB3aGlsZSAoZW5kIDwgMCkgZW5kICs9IHRoaXMub3JpZ2luYWwubGVuZ3RoOwogICAgICAgIH0KICAgICAgICBsZXQgcmVzdWx0ID0gIiI7CiAgICAgICAgbGV0IGNodW5rID0gdGhpcy5maXJzdENodW5rOwogICAgICAgIHdoaWxlIChjaHVuayAmJiAoY2h1bmsuc3RhcnQgPiBzdGFydCB8fCBjaHVuay5lbmQgPD0gc3RhcnQpKSB7CiAgICAgICAgICBpZiAoY2h1bmsuc3RhcnQgPCBlbmQgJiYgY2h1bmsuZW5kID49IGVuZCkgewogICAgICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICAgICAgfQogICAgICAgICAgY2h1bmsgPSBjaHVuay5uZXh0OwogICAgICAgIH0KICAgICAgICBpZiAoY2h1bmsgJiYgY2h1bmsuZWRpdGVkICYmIGNodW5rLnN0YXJ0ICE9PSBzdGFydCkKICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IHVzZSByZXBsYWNlZCBjaGFyYWN0ZXIgJHtzdGFydH0gYXMgc2xpY2Ugc3RhcnQgYW5jaG9yLmApOwogICAgICAgIGNvbnN0IHN0YXJ0Q2h1bmsgPSBjaHVuazsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIGlmIChjaHVuay5pbnRybyAmJiAoc3RhcnRDaHVuayAhPT0gY2h1bmsgfHwgY2h1bmsuc3RhcnQgPT09IHN0YXJ0KSkgewogICAgICAgICAgICByZXN1bHQgKz0gY2h1bmsuaW50cm87CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBjb250YWluc0VuZCA9IGNodW5rLnN0YXJ0IDwgZW5kICYmIGNodW5rLmVuZCA+PSBlbmQ7CiAgICAgICAgICBpZiAoY29udGFpbnNFbmQgJiYgY2h1bmsuZWRpdGVkICYmIGNodW5rLmVuZCAhPT0gZW5kKQogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENhbm5vdCB1c2UgcmVwbGFjZWQgY2hhcmFjdGVyICR7ZW5kfSBhcyBzbGljZSBlbmQgYW5jaG9yLmApOwogICAgICAgICAgY29uc3Qgc2xpY2VTdGFydCA9IHN0YXJ0Q2h1bmsgPT09IGNodW5rID8gc3RhcnQgLSBjaHVuay5zdGFydCA6IDA7CiAgICAgICAgICBjb25zdCBzbGljZUVuZCA9IGNvbnRhaW5zRW5kID8gY2h1bmsuY29udGVudC5sZW5ndGggKyBlbmQgLSBjaHVuay5lbmQgOiBjaHVuay5jb250ZW50Lmxlbmd0aDsKICAgICAgICAgIHJlc3VsdCArPSBjaHVuay5jb250ZW50LnNsaWNlKHNsaWNlU3RhcnQsIHNsaWNlRW5kKTsKICAgICAgICAgIGlmIChjaHVuay5vdXRybyAmJiAoIWNvbnRhaW5zRW5kIHx8IGNodW5rLmVuZCA9PT0gZW5kKSkgewogICAgICAgICAgICByZXN1bHQgKz0gY2h1bmsub3V0cm87CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoY29udGFpbnNFbmQpIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBjaHVuayA9IGNodW5rLm5leHQ7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH0KICAgICAgLy8gVE9ETyBkZXByZWNhdGUgdGhpcz8gbm90IHJlYWxseSB2ZXJ5IHVzZWZ1bAogICAgICBzbmlwKHN0YXJ0LCBlbmQpIHsKICAgICAgICBjb25zdCBjbG9uZSA9IHRoaXMuY2xvbmUoKTsKICAgICAgICBjbG9uZS5yZW1vdmUoMCwgc3RhcnQpOwogICAgICAgIGNsb25lLnJlbW92ZShlbmQsIGNsb25lLm9yaWdpbmFsLmxlbmd0aCk7CiAgICAgICAgcmV0dXJuIGNsb25lOwogICAgICB9CiAgICAgIF9zcGxpdChpbmRleCkgewogICAgICAgIGlmICh0aGlzLmJ5U3RhcnRbaW5kZXhdIHx8IHRoaXMuYnlFbmRbaW5kZXhdKSByZXR1cm47CiAgICAgICAgbGV0IGNodW5rID0gdGhpcy5sYXN0U2VhcmNoZWRDaHVuazsKICAgICAgICBjb25zdCBzZWFyY2hGb3J3YXJkID0gaW5kZXggPiBjaHVuay5lbmQ7CiAgICAgICAgd2hpbGUgKGNodW5rKSB7CiAgICAgICAgICBpZiAoY2h1bmsuY29udGFpbnMoaW5kZXgpKSByZXR1cm4gdGhpcy5fc3BsaXRDaHVuayhjaHVuaywgaW5kZXgpOwogICAgICAgICAgY2h1bmsgPSBzZWFyY2hGb3J3YXJkID8gdGhpcy5ieVN0YXJ0W2NodW5rLmVuZF0gOiB0aGlzLmJ5RW5kW2NodW5rLnN0YXJ0XTsKICAgICAgICB9CiAgICAgIH0KICAgICAgX3NwbGl0Q2h1bmsoY2h1bmssIGluZGV4KSB7CiAgICAgICAgaWYgKGNodW5rLmVkaXRlZCAmJiBjaHVuay5jb250ZW50Lmxlbmd0aCkgewogICAgICAgICAgY29uc3QgbG9jID0gZ2V0TG9jYXRvcih0aGlzLm9yaWdpbmFsKShpbmRleCk7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgICAgIGBDYW5ub3Qgc3BsaXQgYSBjaHVuayB0aGF0IGhhcyBhbHJlYWR5IGJlZW4gZWRpdGVkICgke2xvYy5saW5lfToke2xvYy5jb2x1bW59IFx1MjAxMyAiJHtjaHVuay5vcmlnaW5hbH0iKWAKICAgICAgICAgICk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IG5ld0NodW5rID0gY2h1bmsuc3BsaXQoaW5kZXgpOwogICAgICAgIHRoaXMuYnlFbmRbaW5kZXhdID0gY2h1bms7CiAgICAgICAgdGhpcy5ieVN0YXJ0W2luZGV4XSA9IG5ld0NodW5rOwogICAgICAgIHRoaXMuYnlFbmRbbmV3Q2h1bmsuZW5kXSA9IG5ld0NodW5rOwogICAgICAgIGlmIChjaHVuayA9PT0gdGhpcy5sYXN0Q2h1bmspIHRoaXMubGFzdENodW5rID0gbmV3Q2h1bms7CiAgICAgICAgdGhpcy5sYXN0U2VhcmNoZWRDaHVuayA9IGNodW5rOwogICAgICAgIHJldHVybiB0cnVlOwogICAgICB9CiAgICAgIHRvU3RyaW5nKCkgewogICAgICAgIGxldCBzdHIgPSB0aGlzLmludHJvOwogICAgICAgIGxldCBjaHVuayA9IHRoaXMuZmlyc3RDaHVuazsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIHN0ciArPSBjaHVuay50b1N0cmluZygpOwogICAgICAgICAgY2h1bmsgPSBjaHVuay5uZXh0OwogICAgICAgIH0KICAgICAgICByZXR1cm4gc3RyICsgdGhpcy5vdXRybzsKICAgICAgfQogICAgICBpc0VtcHR5KCkgewogICAgICAgIGxldCBjaHVuayA9IHRoaXMuZmlyc3RDaHVuazsKICAgICAgICBkbyB7CiAgICAgICAgICBpZiAoY2h1bmsuaW50cm8ubGVuZ3RoICYmIGNodW5rLmludHJvLnRyaW0oKSB8fCBjaHVuay5jb250ZW50Lmxlbmd0aCAmJiBjaHVuay5jb250ZW50LnRyaW0oKSB8fCBjaHVuay5vdXRyby5sZW5ndGggJiYgY2h1bmsub3V0cm8udHJpbSgpKQogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfSB3aGlsZSAoY2h1bmsgPSBjaHVuay5uZXh0KTsKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICBsZW5ndGgoKSB7CiAgICAgICAgbGV0IGNodW5rID0gdGhpcy5maXJzdENodW5rOwogICAgICAgIGxldCBsZW5ndGggPSAwOwogICAgICAgIGRvIHsKICAgICAgICAgIGxlbmd0aCArPSBjaHVuay5pbnRyby5sZW5ndGggKyBjaHVuay5jb250ZW50Lmxlbmd0aCArIGNodW5rLm91dHJvLmxlbmd0aDsKICAgICAgICB9IHdoaWxlIChjaHVuayA9IGNodW5rLm5leHQpOwogICAgICAgIHJldHVybiBsZW5ndGg7CiAgICAgIH0KICAgICAgdHJpbUxpbmVzKCkgewogICAgICAgIHJldHVybiB0aGlzLnRyaW0oIltcXHJcXG5dIik7CiAgICAgIH0KICAgICAgdHJpbShjaGFyVHlwZSkgewogICAgICAgIHJldHVybiB0aGlzLnRyaW1TdGFydChjaGFyVHlwZSkudHJpbUVuZChjaGFyVHlwZSk7CiAgICAgIH0KICAgICAgdHJpbUVuZEFib3J0ZWQoY2hhclR5cGUpIHsKICAgICAgICBjb25zdCByeCA9IG5ldyBSZWdFeHAoKGNoYXJUeXBlIHx8ICJcXHMiKSArICIrJCIpOwogICAgICAgIHRoaXMub3V0cm8gPSB0aGlzLm91dHJvLnJlcGxhY2UocngsICIiKTsKICAgICAgICBpZiAodGhpcy5vdXRyby5sZW5ndGgpIHJldHVybiB0cnVlOwogICAgICAgIGxldCBjaHVuayA9IHRoaXMubGFzdENodW5rOwogICAgICAgIGRvIHsKICAgICAgICAgIGNvbnN0IGVuZCA9IGNodW5rLmVuZDsKICAgICAgICAgIGNvbnN0IGFib3J0ZWQgPSBjaHVuay50cmltRW5kKHJ4KTsKICAgICAgICAgIGlmIChjaHVuay5lbmQgIT09IGVuZCkgewogICAgICAgICAgICBpZiAodGhpcy5sYXN0Q2h1bmsgPT09IGNodW5rKSB7CiAgICAgICAgICAgICAgdGhpcy5sYXN0Q2h1bmsgPSBjaHVuay5uZXh0OwogICAgICAgICAgICB9CiAgICAgICAgICAgIHRoaXMuYnlFbmRbY2h1bmsuZW5kXSA9IGNodW5rOwogICAgICAgICAgICB0aGlzLmJ5U3RhcnRbY2h1bmsubmV4dC5zdGFydF0gPSBjaHVuay5uZXh0OwogICAgICAgICAgICB0aGlzLmJ5RW5kW2NodW5rLm5leHQuZW5kXSA9IGNodW5rLm5leHQ7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoYWJvcnRlZCkgcmV0dXJuIHRydWU7CiAgICAgICAgICBjaHVuayA9IGNodW5rLnByZXZpb3VzOwogICAgICAgIH0gd2hpbGUgKGNodW5rKTsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgICAgdHJpbUVuZChjaGFyVHlwZSkgewogICAgICAgIHRoaXMudHJpbUVuZEFib3J0ZWQoY2hhclR5cGUpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHRyaW1TdGFydEFib3J0ZWQoY2hhclR5cGUpIHsKICAgICAgICBjb25zdCByeCA9IG5ldyBSZWdFeHAoIl4iICsgKGNoYXJUeXBlIHx8ICJcXHMiKSArICIrIik7CiAgICAgICAgdGhpcy5pbnRybyA9IHRoaXMuaW50cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgIGlmICh0aGlzLmludHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgbGV0IGNodW5rID0gdGhpcy5maXJzdENodW5rOwogICAgICAgIGRvIHsKICAgICAgICAgIGNvbnN0IGVuZCA9IGNodW5rLmVuZDsKICAgICAgICAgIGNvbnN0IGFib3J0ZWQgPSBjaHVuay50cmltU3RhcnQocngpOwogICAgICAgICAgaWYgKGNodW5rLmVuZCAhPT0gZW5kKSB7CiAgICAgICAgICAgIGlmIChjaHVuayA9PT0gdGhpcy5sYXN0Q2h1bmspIHRoaXMubGFzdENodW5rID0gY2h1bmsubmV4dDsKICAgICAgICAgICAgdGhpcy5ieUVuZFtjaHVuay5lbmRdID0gY2h1bms7CiAgICAgICAgICAgIHRoaXMuYnlTdGFydFtjaHVuay5uZXh0LnN0YXJ0XSA9IGNodW5rLm5leHQ7CiAgICAgICAgICAgIHRoaXMuYnlFbmRbY2h1bmsubmV4dC5lbmRdID0gY2h1bmsubmV4dDsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChhYm9ydGVkKSByZXR1cm4gdHJ1ZTsKICAgICAgICAgIGNodW5rID0gY2h1bmsubmV4dDsKICAgICAgICB9IHdoaWxlIChjaHVuayk7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICAgIHRyaW1TdGFydChjaGFyVHlwZSkgewogICAgICAgIHRoaXMudHJpbVN0YXJ0QWJvcnRlZChjaGFyVHlwZSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgaGFzQ2hhbmdlZCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5vcmlnaW5hbCAhPT0gdGhpcy50b1N0cmluZygpOwogICAgICB9CiAgICAgIF9yZXBsYWNlUmVnZXhwKHNlYXJjaFZhbHVlLCByZXBsYWNlbWVudCkgewogICAgICAgIGZ1bmN0aW9uIGdldFJlcGxhY2VtZW50KG1hdGNoLCBzdHIpIHsKICAgICAgICAgIGlmICh0eXBlb2YgcmVwbGFjZW1lbnQgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICAgIHJldHVybiByZXBsYWNlbWVudC5yZXBsYWNlKC9cJChcJHwmfFxkKykvZywgKF8sIGkpID0+IHsKICAgICAgICAgICAgICBpZiAoaSA9PT0gIiQiKSByZXR1cm4gIiQiOwogICAgICAgICAgICAgIGlmIChpID09PSAiJiIpIHJldHVybiBtYXRjaFswXTsKICAgICAgICAgICAgICBjb25zdCBudW0gPSAraTsKICAgICAgICAgICAgICBpZiAobnVtIDwgbWF0Y2gubGVuZ3RoKSByZXR1cm4gbWF0Y2hbK2ldOwogICAgICAgICAgICAgIHJldHVybiBgJCR7aX1gOwogICAgICAgICAgICB9KTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiByZXBsYWNlbWVudCguLi5tYXRjaCwgbWF0Y2guaW5kZXgsIHN0ciwgbWF0Y2guZ3JvdXBzKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gbWF0Y2hBbGwocmUsIHN0cikgewogICAgICAgICAgbGV0IG1hdGNoOwogICAgICAgICAgY29uc3QgbWF0Y2hlcyA9IFtdOwogICAgICAgICAgd2hpbGUgKG1hdGNoID0gcmUuZXhlYyhzdHIpKSB7CiAgICAgICAgICAgIG1hdGNoZXMucHVzaChtYXRjaCk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gbWF0Y2hlczsKICAgICAgICB9CiAgICAgICAgaWYgKHNlYXJjaFZhbHVlLmdsb2JhbCkgewogICAgICAgICAgY29uc3QgbWF0Y2hlcyA9IG1hdGNoQWxsKHNlYXJjaFZhbHVlLCB0aGlzLm9yaWdpbmFsKTsKICAgICAgICAgIG1hdGNoZXMuZm9yRWFjaCgobWF0Y2gpID0+IHsKICAgICAgICAgICAgaWYgKG1hdGNoLmluZGV4ICE9IG51bGwpIHsKICAgICAgICAgICAgICBjb25zdCByZXBsYWNlbWVudDIgPSBnZXRSZXBsYWNlbWVudChtYXRjaCwgdGhpcy5vcmlnaW5hbCk7CiAgICAgICAgICAgICAgaWYgKHJlcGxhY2VtZW50MiAhPT0gbWF0Y2hbMF0pIHsKICAgICAgICAgICAgICAgIHRoaXMub3ZlcndyaXRlKG1hdGNoLmluZGV4LCBtYXRjaC5pbmRleCArIG1hdGNoWzBdLmxlbmd0aCwgcmVwbGFjZW1lbnQyKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb25zdCBtYXRjaCA9IHRoaXMub3JpZ2luYWwubWF0Y2goc2VhcmNoVmFsdWUpOwogICAgICAgICAgaWYgKG1hdGNoICYmIG1hdGNoLmluZGV4ICE9IG51bGwpIHsKICAgICAgICAgICAgY29uc3QgcmVwbGFjZW1lbnQyID0gZ2V0UmVwbGFjZW1lbnQobWF0Y2gsIHRoaXMub3JpZ2luYWwpOwogICAgICAgICAgICBpZiAocmVwbGFjZW1lbnQyICE9PSBtYXRjaFswXSkgewogICAgICAgICAgICAgIHRoaXMub3ZlcndyaXRlKG1hdGNoLmluZGV4LCBtYXRjaC5pbmRleCArIG1hdGNoWzBdLmxlbmd0aCwgcmVwbGFjZW1lbnQyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBfcmVwbGFjZVN0cmluZyhzdHJpbmcsIHJlcGxhY2VtZW50KSB7CiAgICAgICAgY29uc3QgeyBvcmlnaW5hbCB9ID0gdGhpczsKICAgICAgICBjb25zdCBpbmRleCA9IG9yaWdpbmFsLmluZGV4T2Yoc3RyaW5nKTsKICAgICAgICBpZiAoaW5kZXggIT09IC0xKSB7CiAgICAgICAgICB0aGlzLm92ZXJ3cml0ZShpbmRleCwgaW5kZXggKyBzdHJpbmcubGVuZ3RoLCByZXBsYWNlbWVudCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHJlcGxhY2Uoc2VhcmNoVmFsdWUsIHJlcGxhY2VtZW50KSB7CiAgICAgICAgaWYgKHR5cGVvZiBzZWFyY2hWYWx1ZSA9PT0gInN0cmluZyIpIHsKICAgICAgICAgIHJldHVybiB0aGlzLl9yZXBsYWNlU3RyaW5nKHNlYXJjaFZhbHVlLCByZXBsYWNlbWVudCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9yZXBsYWNlUmVnZXhwKHNlYXJjaFZhbHVlLCByZXBsYWNlbWVudCk7CiAgICAgIH0KICAgICAgX3JlcGxhY2VBbGxTdHJpbmcoc3RyaW5nLCByZXBsYWNlbWVudCkgewogICAgICAgIGNvbnN0IHsgb3JpZ2luYWwgfSA9IHRoaXM7CiAgICAgICAgY29uc3Qgc3RyaW5nTGVuZ3RoID0gc3RyaW5nLmxlbmd0aDsKICAgICAgICBmb3IgKGxldCBpbmRleCA9IG9yaWdpbmFsLmluZGV4T2Yoc3RyaW5nKTsgaW5kZXggIT09IC0xOyBpbmRleCA9IG9yaWdpbmFsLmluZGV4T2Yoc3RyaW5nLCBpbmRleCArIHN0cmluZ0xlbmd0aCkpIHsKICAgICAgICAgIGNvbnN0IHByZXZpb3VzID0gb3JpZ2luYWwuc2xpY2UoaW5kZXgsIGluZGV4ICsgc3RyaW5nTGVuZ3RoKTsKICAgICAgICAgIGlmIChwcmV2aW91cyAhPT0gcmVwbGFjZW1lbnQpIHRoaXMub3ZlcndyaXRlKGluZGV4LCBpbmRleCArIHN0cmluZ0xlbmd0aCwgcmVwbGFjZW1lbnQpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICByZXBsYWNlQWxsKHNlYXJjaFZhbHVlLCByZXBsYWNlbWVudCkgewogICAgICAgIGlmICh0eXBlb2Ygc2VhcmNoVmFsdWUgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fcmVwbGFjZUFsbFN0cmluZyhzZWFyY2hWYWx1ZSwgcmVwbGFjZW1lbnQpOwogICAgICAgIH0KICAgICAgICBpZiAoIXNlYXJjaFZhbHVlLmdsb2JhbCkgewogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigKICAgICAgICAgICAgIk1hZ2ljU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlQWxsIGNhbGxlZCB3aXRoIGEgbm9uLWdsb2JhbCBSZWdFeHAgYXJndW1lbnQiCiAgICAgICAgICApOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fcmVwbGFjZVJlZ2V4cChzZWFyY2hWYWx1ZSwgcmVwbGFjZW1lbnQpOwogICAgICB9CiAgICB9OwogICAgdmFyIGhhc093blByb3AgPSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5OwogICAgdmFyIEJ1bmRsZSA9IGNsYXNzIF9CdW5kbGUgewogICAgICBjb25zdHJ1Y3RvcihvcHRpb25zID0ge30pIHsKICAgICAgICB0aGlzLmludHJvID0gb3B0aW9ucy5pbnRybyB8fCAiIjsKICAgICAgICB0aGlzLnNlcGFyYXRvciA9IG9wdGlvbnMuc2VwYXJhdG9yICE9PSB2b2lkIDAgPyBvcHRpb25zLnNlcGFyYXRvciA6ICJcbiI7CiAgICAgICAgdGhpcy5zb3VyY2VzID0gW107CiAgICAgICAgdGhpcy51bmlxdWVTb3VyY2VzID0gW107CiAgICAgICAgdGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWUgPSB7fTsKICAgICAgfQogICAgICBhZGRTb3VyY2Uoc291cmNlKSB7CiAgICAgICAgaWYgKHNvdXJjZSBpbnN0YW5jZW9mIE1hZ2ljU3RyaW5nKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5hZGRTb3VyY2UoewogICAgICAgICAgICBjb250ZW50OiBzb3VyY2UsCiAgICAgICAgICAgIGZpbGVuYW1lOiBzb3VyY2UuZmlsZW5hbWUsCiAgICAgICAgICAgIHNlcGFyYXRvcjogdGhpcy5zZXBhcmF0b3IKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBpZiAoIWlzT2JqZWN0KHNvdXJjZSkgfHwgIXNvdXJjZS5jb250ZW50KSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgICAgICJidW5kbGUuYWRkU291cmNlKCkgdGFrZXMgYW4gb2JqZWN0IHdpdGggYSBgY29udGVudGAgcHJvcGVydHksIHdoaWNoIHNob3VsZCBiZSBhbiBpbnN0YW5jZSBvZiBNYWdpY1N0cmluZywgYW5kIGFuIG9wdGlvbmFsIGBmaWxlbmFtZWAiCiAgICAgICAgICApOwogICAgICAgIH0KICAgICAgICBbImZpbGVuYW1lIiwgImlnbm9yZUxpc3QiLCAiaW5kZW50RXhjbHVzaW9uUmFuZ2VzIiwgInNlcGFyYXRvciJdLmZvckVhY2goKG9wdGlvbikgPT4gewogICAgICAgICAgaWYgKCFoYXNPd25Qcm9wLmNhbGwoc291cmNlLCBvcHRpb24pKSBzb3VyY2Vbb3B0aW9uXSA9IHNvdXJjZS5jb250ZW50W29wdGlvbl07CiAgICAgICAgfSk7CiAgICAgICAgaWYgKHNvdXJjZS5zZXBhcmF0b3IgPT09IHZvaWQgMCkgewogICAgICAgICAgc291cmNlLnNlcGFyYXRvciA9IHRoaXMuc2VwYXJhdG9yOwogICAgICAgIH0KICAgICAgICBpZiAoc291cmNlLmZpbGVuYW1lKSB7CiAgICAgICAgICBpZiAoIWhhc093blByb3AuY2FsbCh0aGlzLnVuaXF1ZVNvdXJjZUluZGV4QnlGaWxlbmFtZSwgc291cmNlLmZpbGVuYW1lKSkgewogICAgICAgICAgICB0aGlzLnVuaXF1ZVNvdXJjZUluZGV4QnlGaWxlbmFtZVtzb3VyY2UuZmlsZW5hbWVdID0gdGhpcy51bmlxdWVTb3VyY2VzLmxlbmd0aDsKICAgICAgICAgICAgdGhpcy51bmlxdWVTb3VyY2VzLnB1c2goeyBmaWxlbmFtZTogc291cmNlLmZpbGVuYW1lLCBjb250ZW50OiBzb3VyY2UuY29udGVudC5vcmlnaW5hbCB9KTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IHVuaXF1ZVNvdXJjZSA9IHRoaXMudW5pcXVlU291cmNlc1t0aGlzLnVuaXF1ZVNvdXJjZUluZGV4QnlGaWxlbmFtZVtzb3VyY2UuZmlsZW5hbWVdXTsKICAgICAgICAgICAgaWYgKHNvdXJjZS5jb250ZW50Lm9yaWdpbmFsICE9PSB1bmlxdWVTb3VyY2UuY29udGVudCkgewogICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgSWxsZWdhbCBzb3VyY2U6IHNhbWUgZmlsZW5hbWUgKCR7c291cmNlLmZpbGVuYW1lfSksIGRpZmZlcmVudCBjb250ZW50c2ApOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHRoaXMuc291cmNlcy5wdXNoKHNvdXJjZSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgYXBwZW5kKHN0ciwgb3B0aW9ucykgewogICAgICAgIHRoaXMuYWRkU291cmNlKHsKICAgICAgICAgIGNvbnRlbnQ6IG5ldyBNYWdpY1N0cmluZyhzdHIpLAogICAgICAgICAgc2VwYXJhdG9yOiBvcHRpb25zICYmIG9wdGlvbnMuc2VwYXJhdG9yIHx8ICIiCiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgY2xvbmUoKSB7CiAgICAgICAgY29uc3QgYnVuZGxlID0gbmV3IF9CdW5kbGUoewogICAgICAgICAgaW50cm86IHRoaXMuaW50cm8sCiAgICAgICAgICBzZXBhcmF0b3I6IHRoaXMuc2VwYXJhdG9yCiAgICAgICAgfSk7CiAgICAgICAgdGhpcy5zb3VyY2VzLmZvckVhY2goKHNvdXJjZSkgPT4gewogICAgICAgICAgYnVuZGxlLmFkZFNvdXJjZSh7CiAgICAgICAgICAgIGZpbGVuYW1lOiBzb3VyY2UuZmlsZW5hbWUsCiAgICAgICAgICAgIGNvbnRlbnQ6IHNvdXJjZS5jb250ZW50LmNsb25lKCksCiAgICAgICAgICAgIHNlcGFyYXRvcjogc291cmNlLnNlcGFyYXRvcgogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIGJ1bmRsZTsKICAgICAgfQogICAgICBnZW5lcmF0ZURlY29kZWRNYXAob3B0aW9ucyA9IHt9KSB7CiAgICAgICAgY29uc3QgbmFtZXMgPSBbXTsKICAgICAgICBsZXQgeF9nb29nbGVfaWdub3JlTGlzdCA9IHZvaWQgMDsKICAgICAgICB0aGlzLnNvdXJjZXMuZm9yRWFjaCgoc291cmNlKSA9PiB7CiAgICAgICAgICBPYmplY3Qua2V5cyhzb3VyY2UuY29udGVudC5zdG9yZWROYW1lcykuZm9yRWFjaCgobmFtZSkgPT4gewogICAgICAgICAgICBpZiAoIX5uYW1lcy5pbmRleE9mKG5hbWUpKSBuYW1lcy5wdXNoKG5hbWUpOwogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgY29uc3QgbWFwcGluZ3MgPSBuZXcgTWFwcGluZ3Mob3B0aW9ucy5oaXJlcyk7CiAgICAgICAgaWYgKHRoaXMuaW50cm8pIHsKICAgICAgICAgIG1hcHBpbmdzLmFkdmFuY2UodGhpcy5pbnRybyk7CiAgICAgICAgfQogICAgICAgIHRoaXMuc291cmNlcy5mb3JFYWNoKChzb3VyY2UsIGkpID0+IHsKICAgICAgICAgIGlmIChpID4gMCkgewogICAgICAgICAgICBtYXBwaW5ncy5hZHZhbmNlKHRoaXMuc2VwYXJhdG9yKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHNvdXJjZUluZGV4ID0gc291cmNlLmZpbGVuYW1lID8gdGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWVbc291cmNlLmZpbGVuYW1lXSA6IC0xOwogICAgICAgICAgY29uc3QgbWFnaWNTdHJpbmcgPSBzb3VyY2UuY29udGVudDsKICAgICAgICAgIGNvbnN0IGxvY2F0ZSA9IGdldExvY2F0b3IobWFnaWNTdHJpbmcub3JpZ2luYWwpOwogICAgICAgICAgaWYgKG1hZ2ljU3RyaW5nLmludHJvKSB7CiAgICAgICAgICAgIG1hcHBpbmdzLmFkdmFuY2UobWFnaWNTdHJpbmcuaW50cm8pOwogICAgICAgICAgfQogICAgICAgICAgbWFnaWNTdHJpbmcuZmlyc3RDaHVuay5lYWNoTmV4dCgoY2h1bmspID0+IHsKICAgICAgICAgICAgY29uc3QgbG9jID0gbG9jYXRlKGNodW5rLnN0YXJ0KTsKICAgICAgICAgICAgaWYgKGNodW5rLmludHJvLmxlbmd0aCkgbWFwcGluZ3MuYWR2YW5jZShjaHVuay5pbnRybyk7CiAgICAgICAgICAgIGlmIChzb3VyY2UuZmlsZW5hbWUpIHsKICAgICAgICAgICAgICBpZiAoY2h1bmsuZWRpdGVkKSB7CiAgICAgICAgICAgICAgICBtYXBwaW5ncy5hZGRFZGl0KAogICAgICAgICAgICAgICAgICBzb3VyY2VJbmRleCwKICAgICAgICAgICAgICAgICAgY2h1bmsuY29udGVudCwKICAgICAgICAgICAgICAgICAgbG9jLAogICAgICAgICAgICAgICAgICBjaHVuay5zdG9yZU5hbWUgPyBuYW1lcy5pbmRleE9mKGNodW5rLm9yaWdpbmFsKSA6IC0xCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBtYXBwaW5ncy5hZGRVbmVkaXRlZENodW5rKAogICAgICAgICAgICAgICAgICBzb3VyY2VJbmRleCwKICAgICAgICAgICAgICAgICAgY2h1bmssCiAgICAgICAgICAgICAgICAgIG1hZ2ljU3RyaW5nLm9yaWdpbmFsLAogICAgICAgICAgICAgICAgICBsb2MsCiAgICAgICAgICAgICAgICAgIG1hZ2ljU3RyaW5nLnNvdXJjZW1hcExvY2F0aW9ucwogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgbWFwcGluZ3MuYWR2YW5jZShjaHVuay5jb250ZW50KTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoY2h1bmsub3V0cm8ubGVuZ3RoKSBtYXBwaW5ncy5hZHZhbmNlKGNodW5rLm91dHJvKTsKICAgICAgICAgIH0pOwogICAgICAgICAgaWYgKG1hZ2ljU3RyaW5nLm91dHJvKSB7CiAgICAgICAgICAgIG1hcHBpbmdzLmFkdmFuY2UobWFnaWNTdHJpbmcub3V0cm8pOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHNvdXJjZS5pZ25vcmVMaXN0ICYmIHNvdXJjZUluZGV4ICE9PSAtMSkgewogICAgICAgICAgICBpZiAoeF9nb29nbGVfaWdub3JlTGlzdCA9PT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgeF9nb29nbGVfaWdub3JlTGlzdCA9IFtdOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHhfZ29vZ2xlX2lnbm9yZUxpc3QucHVzaChzb3VyY2VJbmRleCk7CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGZpbGU6IG9wdGlvbnMuZmlsZSA/IG9wdGlvbnMuZmlsZS5zcGxpdCgvWy9cXF0vKS5wb3AoKSA6IHZvaWQgMCwKICAgICAgICAgIHNvdXJjZXM6IHRoaXMudW5pcXVlU291cmNlcy5tYXAoKHNvdXJjZSkgPT4gewogICAgICAgICAgICByZXR1cm4gb3B0aW9ucy5maWxlID8gZ2V0UmVsYXRpdmVQYXRoKG9wdGlvbnMuZmlsZSwgc291cmNlLmZpbGVuYW1lKSA6IHNvdXJjZS5maWxlbmFtZTsKICAgICAgICAgIH0pLAogICAgICAgICAgc291cmNlc0NvbnRlbnQ6IHRoaXMudW5pcXVlU291cmNlcy5tYXAoKHNvdXJjZSkgPT4gewogICAgICAgICAgICByZXR1cm4gb3B0aW9ucy5pbmNsdWRlQ29udGVudCA/IHNvdXJjZS5jb250ZW50IDogbnVsbDsKICAgICAgICAgIH0pLAogICAgICAgICAgbmFtZXMsCiAgICAgICAgICBtYXBwaW5nczogbWFwcGluZ3MucmF3LAogICAgICAgICAgeF9nb29nbGVfaWdub3JlTGlzdAogICAgICAgIH07CiAgICAgIH0KICAgICAgZ2VuZXJhdGVNYXAob3B0aW9ucykgewogICAgICAgIHJldHVybiBuZXcgU291cmNlTWFwKHRoaXMuZ2VuZXJhdGVEZWNvZGVkTWFwKG9wdGlvbnMpKTsKICAgICAgfQogICAgICBnZXRJbmRlbnRTdHJpbmcoKSB7CiAgICAgICAgY29uc3QgaW5kZW50U3RyaW5nQ291bnRzID0ge307CiAgICAgICAgdGhpcy5zb3VyY2VzLmZvckVhY2goKHNvdXJjZSkgPT4gewogICAgICAgICAgY29uc3QgaW5kZW50U3RyID0gc291cmNlLmNvbnRlbnQuX2dldFJhd0luZGVudFN0cmluZygpOwogICAgICAgICAgaWYgKGluZGVudFN0ciA9PT0gbnVsbCkgcmV0dXJuOwogICAgICAgICAgaWYgKCFpbmRlbnRTdHJpbmdDb3VudHNbaW5kZW50U3RyXSkgaW5kZW50U3RyaW5nQ291bnRzW2luZGVudFN0cl0gPSAwOwogICAgICAgICAgaW5kZW50U3RyaW5nQ291bnRzW2luZGVudFN0cl0gKz0gMTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMoaW5kZW50U3RyaW5nQ291bnRzKS5zb3J0KChhLCBiKSA9PiB7CiAgICAgICAgICByZXR1cm4gaW5kZW50U3RyaW5nQ291bnRzW2FdIC0gaW5kZW50U3RyaW5nQ291bnRzW2JdOwogICAgICAgIH0pWzBdIHx8ICIJIjsKICAgICAgfQogICAgICBpbmRlbnQoaW5kZW50U3RyKSB7CiAgICAgICAgaWYgKCFhcmd1bWVudHMubGVuZ3RoKSB7CiAgICAgICAgICBpbmRlbnRTdHIgPSB0aGlzLmdldEluZGVudFN0cmluZygpOwogICAgICAgIH0KICAgICAgICBpZiAoaW5kZW50U3RyID09PSAiIikgcmV0dXJuIHRoaXM7CiAgICAgICAgbGV0IHRyYWlsaW5nTmV3bGluZSA9ICF0aGlzLmludHJvIHx8IHRoaXMuaW50cm8uc2xpY2UoLTEpID09PSAiXG4iOwogICAgICAgIHRoaXMuc291cmNlcy5mb3JFYWNoKChzb3VyY2UsIGkpID0+IHsKICAgICAgICAgIGNvbnN0IHNlcGFyYXRvciA9IHNvdXJjZS5zZXBhcmF0b3IgIT09IHZvaWQgMCA/IHNvdXJjZS5zZXBhcmF0b3IgOiB0aGlzLnNlcGFyYXRvcjsKICAgICAgICAgIGNvbnN0IGluZGVudFN0YXJ0ID0gdHJhaWxpbmdOZXdsaW5lIHx8IGkgPiAwICYmIC9ccj9cbiQvLnRlc3Qoc2VwYXJhdG9yKTsKICAgICAgICAgIHNvdXJjZS5jb250ZW50LmluZGVudChpbmRlbnRTdHIsIHsKICAgICAgICAgICAgZXhjbHVkZTogc291cmNlLmluZGVudEV4Y2x1c2lvblJhbmdlcywKICAgICAgICAgICAgaW5kZW50U3RhcnQKICAgICAgICAgICAgLy86IHRyYWlsaW5nTmV3bGluZSB8fCAvXHI/XG4kLy50ZXN0KCBzZXBhcmF0b3IgKSAgLy90cnVlLy8vXHI/XG4vLnRlc3QoIHNlcGFyYXRvciApCiAgICAgICAgICB9KTsKICAgICAgICAgIHRyYWlsaW5nTmV3bGluZSA9IHNvdXJjZS5jb250ZW50Lmxhc3RDaGFyKCkgPT09ICJcbiI7CiAgICAgICAgfSk7CiAgICAgICAgaWYgKHRoaXMuaW50cm8pIHsKICAgICAgICAgIHRoaXMuaW50cm8gPSBpbmRlbnRTdHIgKyB0aGlzLmludHJvLnJlcGxhY2UoL15bXlxuXS9nbSwgKG1hdGNoLCBpbmRleCkgPT4gewogICAgICAgICAgICByZXR1cm4gaW5kZXggPiAwID8gaW5kZW50U3RyICsgbWF0Y2ggOiBtYXRjaDsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBwcmVwZW5kKHN0cikgewogICAgICAgIHRoaXMuaW50cm8gPSBzdHIgKyB0aGlzLmludHJvOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHRvU3RyaW5nKCkgewogICAgICAgIGNvbnN0IGJvZHkgPSB0aGlzLnNvdXJjZXMubWFwKChzb3VyY2UsIGkpID0+IHsKICAgICAgICAgIGNvbnN0IHNlcGFyYXRvciA9IHNvdXJjZS5zZXBhcmF0b3IgIT09IHZvaWQgMCA/IHNvdXJjZS5zZXBhcmF0b3IgOiB0aGlzLnNlcGFyYXRvcjsKICAgICAgICAgIGNvbnN0IHN0ciA9IChpID4gMCA/IHNlcGFyYXRvciA6ICIiKSArIHNvdXJjZS5jb250ZW50LnRvU3RyaW5nKCk7CiAgICAgICAgICByZXR1cm4gc3RyOwogICAgICAgIH0pLmpvaW4oIiIpOwogICAgICAgIHJldHVybiB0aGlzLmludHJvICsgYm9keTsKICAgICAgfQogICAgICBpc0VtcHR5KCkgewogICAgICAgIGlmICh0aGlzLmludHJvLmxlbmd0aCAmJiB0aGlzLmludHJvLnRyaW0oKSkgcmV0dXJuIGZhbHNlOwogICAgICAgIGlmICh0aGlzLnNvdXJjZXMuc29tZSgoc291cmNlKSA9PiAhc291cmNlLmNvbnRlbnQuaXNFbXB0eSgpKSkgcmV0dXJuIGZhbHNlOwogICAgICAgIHJldHVybiB0cnVlOwogICAgICB9CiAgICAgIGxlbmd0aCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5zb3VyY2VzLnJlZHVjZSgKICAgICAgICAgIChsZW5ndGgsIHNvdXJjZSkgPT4gbGVuZ3RoICsgc291cmNlLmNvbnRlbnQubGVuZ3RoKCksCiAgICAgICAgICB0aGlzLmludHJvLmxlbmd0aAogICAgICAgICk7CiAgICAgIH0KICAgICAgdHJpbUxpbmVzKCkgewogICAgICAgIHJldHVybiB0aGlzLnRyaW0oIltcXHJcXG5dIik7CiAgICAgIH0KICAgICAgdHJpbShjaGFyVHlwZSkgewogICAgICAgIHJldHVybiB0aGlzLnRyaW1TdGFydChjaGFyVHlwZSkudHJpbUVuZChjaGFyVHlwZSk7CiAgICAgIH0KICAgICAgdHJpbVN0YXJ0KGNoYXJUeXBlKSB7CiAgICAgICAgY29uc3QgcnggPSBuZXcgUmVnRXhwKCJeIiArIChjaGFyVHlwZSB8fCAiXFxzIikgKyAiKyIpOwogICAgICAgIHRoaXMuaW50cm8gPSB0aGlzLmludHJvLnJlcGxhY2UocngsICIiKTsKICAgICAgICBpZiAoIXRoaXMuaW50cm8pIHsKICAgICAgICAgIGxldCBzb3VyY2U7CiAgICAgICAgICBsZXQgaSA9IDA7CiAgICAgICAgICBkbyB7CiAgICAgICAgICAgIHNvdXJjZSA9IHRoaXMuc291cmNlc1tpKytdOwogICAgICAgICAgICBpZiAoIXNvdXJjZSkgewogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICB9IHdoaWxlICghc291cmNlLmNvbnRlbnQudHJpbVN0YXJ0QWJvcnRlZChjaGFyVHlwZSkpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICB0cmltRW5kKGNoYXJUeXBlKSB7CiAgICAgICAgY29uc3QgcnggPSBuZXcgUmVnRXhwKChjaGFyVHlwZSB8fCAiXFxzIikgKyAiKyQiKTsKICAgICAgICBsZXQgc291cmNlOwogICAgICAgIGxldCBpID0gdGhpcy5zb3VyY2VzLmxlbmd0aCAtIDE7CiAgICAgICAgZG8gewogICAgICAgICAgc291cmNlID0gdGhpcy5zb3VyY2VzW2ktLV07CiAgICAgICAgICBpZiAoIXNvdXJjZSkgewogICAgICAgICAgICB0aGlzLmludHJvID0gdGhpcy5pbnRyby5yZXBsYWNlKHJ4LCAiIik7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgIH0gd2hpbGUgKCFzb3VyY2UuY29udGVudC50cmltRW5kQWJvcnRlZChjaGFyVHlwZSkpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICB9OwogICAgTWFnaWNTdHJpbmcuQnVuZGxlID0gQnVuZGxlOwogICAgTWFnaWNTdHJpbmcuU291cmNlTWFwID0gU291cmNlTWFwOwogICAgTWFnaWNTdHJpbmcuZGVmYXVsdCA9IE1hZ2ljU3RyaW5nOwogICAgbW9kdWxlMi5leHBvcnRzID0gTWFnaWNTdHJpbmc7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC1iNWUyZmQyMjJmLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvcmVjb3JkZXIuanMKdmFyIHJlcXVpcmVfcmVjb3JkZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LWI1ZTJmZDIyMmYuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9yZWNvcmRlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2ltcG9ydERlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydERlZmF1bHQgfHwgZnVuY3Rpb24obW9kKSB7CiAgICAgIHJldHVybiBtb2QgJiYgbW9kLl9fZXNNb2R1bGUgPyBtb2QgOiB7ICJkZWZhdWx0IjogbW9kIH07CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5VcGRhdGVSZWNvcmRlckJhc2UgPSBleHBvcnRzMi5JbmRleE91dE9mQm91bmRFeGNlcHRpb24gPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciBtYWdpY19zdHJpbmdfMSA9IF9faW1wb3J0RGVmYXVsdChyZXF1aXJlX21hZ2ljX3N0cmluZ19janMoKSk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBJbmRleE91dE9mQm91bmRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IoaW5kZXgsIG1pbiwgbWF4ID0gSW5maW5pdHkpIHsKICAgICAgICBzdXBlcihgSW5kZXggJHtpbmRleH0gb3V0c2lkZSBvZiByYW5nZSBbJHttaW59LCAke21heH1dLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW5kZXhPdXRPZkJvdW5kRXhjZXB0aW9uID0gSW5kZXhPdXRPZkJvdW5kRXhjZXB0aW9uOwogICAgdmFyIFVwZGF0ZVJlY29yZGVyQmFzZSA9IGNsYXNzIF9VcGRhdGVSZWNvcmRlckJhc2UgewogICAgICBkYXRhOwogICAgICBib207CiAgICAgIF9wYXRoOwogICAgICBjb250ZW50OwogICAgICBjb25zdHJ1Y3RvcihkYXRhLCBwYXRoLCBlbmNvZGluZyA9ICJ1dGYtOCIsIGJvbSA9IGZhbHNlKSB7CiAgICAgICAgdGhpcy5kYXRhID0gZGF0YTsKICAgICAgICB0aGlzLmJvbSA9IGJvbTsKICAgICAgICBsZXQgdGV4dDsKICAgICAgICB0cnkgewogICAgICAgICAgdGV4dCA9IG5ldyBUZXh0RGVjb2RlcihlbmNvZGluZywgeyBmYXRhbDogdHJ1ZSwgaWdub3JlQk9NOiBmYWxzZSB9KS5kZWNvZGUoZGF0YSk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBGYWlsZWQgdG8gZGVjb2RlICIke3BhdGh9IiBhcyAke2VuY29kaW5nfSB0ZXh0LmApOwogICAgICAgICAgfQogICAgICAgICAgdGhyb3cgZTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fcGF0aCA9IHBhdGg7CiAgICAgICAgdGhpcy5jb250ZW50ID0gbmV3IG1hZ2ljX3N0cmluZ18xLmRlZmF1bHQodGV4dCk7CiAgICAgIH0KICAgICAgc3RhdGljIGNyZWF0ZUZyb21GaWxlRW50cnkoZW50cnkpIHsKICAgICAgICBjb25zdCBjMCA9IGVudHJ5LmNvbnRlbnQuYnl0ZUxlbmd0aCA+IDAgJiYgZW50cnkuY29udGVudC5yZWFkVUludDgoMCk7CiAgICAgICAgY29uc3QgYzEgPSBlbnRyeS5jb250ZW50LmJ5dGVMZW5ndGggPiAxICYmIGVudHJ5LmNvbnRlbnQucmVhZFVJbnQ4KDEpOwogICAgICAgIGNvbnN0IGMyID0gZW50cnkuY29udGVudC5ieXRlTGVuZ3RoID4gMiAmJiBlbnRyeS5jb250ZW50LnJlYWRVSW50OCgyKTsKICAgICAgICBpZiAoYzAgPT0gMjM5ICYmIGMxID09IDE4NyAmJiBjMiA9PSAxOTEpIHsKICAgICAgICAgIHJldHVybiBuZXcgX1VwZGF0ZVJlY29yZGVyQmFzZShlbnRyeS5jb250ZW50LCBlbnRyeS5wYXRoLCAidXRmLTgiLCB0cnVlKTsKICAgICAgICB9IGVsc2UgaWYgKGMwID09PSAyNTUgJiYgYzEgPT0gMjU0KSB7CiAgICAgICAgICByZXR1cm4gbmV3IF9VcGRhdGVSZWNvcmRlckJhc2UoZW50cnkuY29udGVudCwgZW50cnkucGF0aCwgInV0Zi0xNmxlIiwgdHJ1ZSk7CiAgICAgICAgfSBlbHNlIGlmIChjMCA9PT0gMjU0ICYmIGMxID09IDI1NSkgewogICAgICAgICAgcmV0dXJuIG5ldyBfVXBkYXRlUmVjb3JkZXJCYXNlKGVudHJ5LmNvbnRlbnQsIGVudHJ5LnBhdGgsICJ1dGYtMTZiZSIsIHRydWUpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbmV3IF9VcGRhdGVSZWNvcmRlckJhc2UoZW50cnkuY29udGVudCwgZW50cnkucGF0aCk7CiAgICAgIH0KICAgICAgZ2V0IHBhdGgoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3BhdGg7CiAgICAgIH0KICAgICAgX2Fzc2VydEluZGV4KGluZGV4KSB7CiAgICAgICAgaWYgKGluZGV4IDwgMCB8fCBpbmRleCA+IHRoaXMuY29udGVudC5vcmlnaW5hbC5sZW5ndGgpIHsKICAgICAgICAgIHRocm93IG5ldyBJbmRleE91dE9mQm91bmRFeGNlcHRpb24oaW5kZXgsIDAsIHRoaXMuY29udGVudC5vcmlnaW5hbC5sZW5ndGgpOwogICAgICAgIH0KICAgICAgfQogICAgICAvLyBUaGVzZSBqdXN0IHJlY29yZCBjaGFuZ2VzLgogICAgICBpbnNlcnRMZWZ0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgdGhpcy5fYXNzZXJ0SW5kZXgoaW5kZXgpOwogICAgICAgIHRoaXMuY29udGVudC5hcHBlbmRMZWZ0KGluZGV4LCBjb250ZW50LnRvU3RyaW5nKCkpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGluc2VydFJpZ2h0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgdGhpcy5fYXNzZXJ0SW5kZXgoaW5kZXgpOwogICAgICAgIHRoaXMuY29udGVudC5hcHBlbmRSaWdodChpbmRleCwgY29udGVudC50b1N0cmluZygpKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICByZW1vdmUoaW5kZXgsIGxlbmd0aCkgewogICAgICAgIHRoaXMuX2Fzc2VydEluZGV4KGluZGV4KTsKICAgICAgICB0aGlzLmNvbnRlbnQucmVtb3ZlKGluZGV4LCBpbmRleCArIGxlbmd0aCk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgYXBwbHkoY29udGVudCkgewogICAgICAgIGlmICghY29udGVudC5lcXVhbHModGhpcy5kYXRhKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkNvbnRlbnRIYXNNdXRhdGVkRXhjZXB0aW9uKHRoaXMucGF0aCk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHJlc3VsdCA9IEJ1ZmZlci5mcm9tKCh0aGlzLmJvbSA/ICJcdUZFRkYiIDogIiIpICsgdGhpcy5jb250ZW50LnRvU3RyaW5nKCksICJ1dGYtOCIpOwogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5VcGRhdGVSZWNvcmRlckJhc2UgPSBVcGRhdGVSZWNvcmRlckJhc2U7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC1iNWUyZmQyMjJmLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvc2NvcGVkLmpzCnZhciByZXF1aXJlX3Njb3BlZDIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LWI1ZTJmZDIyMmYuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9zY29wZWQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlNjb3BlZFRyZWUgPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciBkZWxlZ2F0ZV8xID0gcmVxdWlyZV9kZWxlZ2F0ZSgpOwogICAgdmFyIGludGVyZmFjZV8xID0gcmVxdWlyZV9pbnRlcmZhY2UzKCk7CiAgICB2YXIgU2NvcGVkRmlsZUVudHJ5ID0gY2xhc3MgewogICAgICBfYmFzZTsKICAgICAgc2NvcGU7CiAgICAgIGNvbnN0cnVjdG9yKF9iYXNlLCBzY29wZSkgewogICAgICAgIHRoaXMuX2Jhc2UgPSBfYmFzZTsKICAgICAgICB0aGlzLnNjb3BlID0gc2NvcGU7CiAgICAgIH0KICAgICAgZ2V0IHBhdGgoKSB7CiAgICAgICAgcmV0dXJuICgwLCBjb3JlXzEuam9pbikoY29yZV8xLk5vcm1hbGl6ZWRSb290LCAoMCwgY29yZV8xLnJlbGF0aXZlKSh0aGlzLnNjb3BlLCB0aGlzLl9iYXNlLnBhdGgpKTsKICAgICAgfQogICAgICBnZXQgY29udGVudCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5jb250ZW50OwogICAgICB9CiAgICB9OwogICAgdmFyIFNjb3BlZERpckVudHJ5ID0gY2xhc3MgX1Njb3BlZERpckVudHJ5IHsKICAgICAgX2Jhc2U7CiAgICAgIHNjb3BlOwogICAgICBjb25zdHJ1Y3RvcihfYmFzZSwgc2NvcGUpIHsKICAgICAgICB0aGlzLl9iYXNlID0gX2Jhc2U7CiAgICAgICAgdGhpcy5zY29wZSA9IHNjb3BlOwogICAgICB9CiAgICAgIGdldCBwYXJlbnQoKSB7CiAgICAgICAgaWYgKCF0aGlzLl9iYXNlLnBhcmVudCB8fCB0aGlzLl9iYXNlLnBhdGggPT0gdGhpcy5zY29wZSkgewogICAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgICAgfQogICAgICAgIHJldHVybiBuZXcgX1Njb3BlZERpckVudHJ5KHRoaXMuX2Jhc2UucGFyZW50LCB0aGlzLnNjb3BlKTsKICAgICAgfQogICAgICBnZXQgcGF0aCgpIHsKICAgICAgICByZXR1cm4gKDAsIGNvcmVfMS5qb2luKShjb3JlXzEuTm9ybWFsaXplZFJvb3QsICgwLCBjb3JlXzEucmVsYXRpdmUpKHRoaXMuc2NvcGUsIHRoaXMuX2Jhc2UucGF0aCkpOwogICAgICB9CiAgICAgIGdldCBzdWJkaXJzKCkgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLnN1YmRpcnM7CiAgICAgIH0KICAgICAgZ2V0IHN1YmZpbGVzKCkgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLnN1YmZpbGVzOwogICAgICB9CiAgICAgIGRpcihuYW1lKSB7CiAgICAgICAgY29uc3QgZW50cnkgPSB0aGlzLl9iYXNlLmRpcihuYW1lKTsKICAgICAgICByZXR1cm4gZW50cnkgJiYgbmV3IF9TY29wZWREaXJFbnRyeShlbnRyeSwgdGhpcy5zY29wZSk7CiAgICAgIH0KICAgICAgZmlsZShuYW1lKSB7CiAgICAgICAgY29uc3QgZW50cnkgPSB0aGlzLl9iYXNlLmZpbGUobmFtZSk7CiAgICAgICAgcmV0dXJuIGVudHJ5ICYmIG5ldyBTY29wZWRGaWxlRW50cnkoZW50cnksIHRoaXMuc2NvcGUpOwogICAgICB9CiAgICAgIHZpc2l0KHZpc2l0b3IpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS52aXNpdCgocGF0aCwgZW50cnkpID0+IHsKICAgICAgICAgIHZpc2l0b3IoKDAsIGNvcmVfMS5qb2luKShjb3JlXzEuTm9ybWFsaXplZFJvb3QsICgwLCBjb3JlXzEucmVsYXRpdmUpKHRoaXMuc2NvcGUsIHBhdGgpKSwgZW50cnkgJiYgbmV3IFNjb3BlZEZpbGVFbnRyeShlbnRyeSwgdGhpcy5zY29wZSkpOwogICAgICAgIH0pOwogICAgICB9CiAgICB9OwogICAgdmFyIFNjb3BlZFRyZWUgPSBjbGFzcyBfU2NvcGVkVHJlZSB7CiAgICAgIF9iYXNlOwogICAgICBfcm9vdDsKICAgICAgY29uc3RydWN0b3IoX2Jhc2UsIHNjb3BlKSB7CiAgICAgICAgdGhpcy5fYmFzZSA9IF9iYXNlOwogICAgICAgIGNvbnN0IG5vcm1hbGl6ZWRTY29wZSA9ICgwLCBjb3JlXzEubm9ybWFsaXplKSgiLyIgKyBzY29wZSk7CiAgICAgICAgdGhpcy5fcm9vdCA9IG5ldyBTY29wZWREaXJFbnRyeSh0aGlzLl9iYXNlLmdldERpcihub3JtYWxpemVkU2NvcGUpLCBub3JtYWxpemVkU2NvcGUpOwogICAgICB9CiAgICAgIGdldCByb290KCkgewogICAgICAgIHJldHVybiB0aGlzLl9yb290OwogICAgICB9CiAgICAgIGJyYW5jaCgpIHsKICAgICAgICByZXR1cm4gbmV3IF9TY29wZWRUcmVlKHRoaXMuX2Jhc2UuYnJhbmNoKCksIHRoaXMuX3Jvb3Quc2NvcGUpOwogICAgICB9CiAgICAgIG1lcmdlKG90aGVyLCBzdHJhdGVneSkgewogICAgICAgIGNvbnN0IHNlbGYyID0gdGhpczsKICAgICAgICBjb25zdCBkZWxlZ2F0ZSA9IG5ldyBjbGFzcyBleHRlbmRzIGRlbGVnYXRlXzEuRGVsZWdhdGVUcmVlIHsKICAgICAgICAgIGdldCBhY3Rpb25zKCkgewogICAgICAgICAgICByZXR1cm4gb3RoZXIuYWN0aW9ucy5tYXAoKGFjdGlvbikgPT4gc2VsZjIuX2Z1bGxQYXRoQWN0aW9uKGFjdGlvbikpOwogICAgICAgICAgfQogICAgICAgIH0ob3RoZXIpOwogICAgICAgIHRoaXMuX2Jhc2UubWVyZ2UoZGVsZWdhdGUsIHN0cmF0ZWd5KTsKICAgICAgfQogICAgICAvLyBSZWFkb25seS4KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UucmVhZCh0aGlzLl9mdWxsUGF0aChwYXRoKSk7CiAgICAgIH0KICAgICAgcmVhZFRleHQocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLnJlYWRUZXh0KHRoaXMuX2Z1bGxQYXRoKHBhdGgpKTsKICAgICAgfQogICAgICByZWFkSnNvbihwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UucmVhZEpzb24odGhpcy5fZnVsbFBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UuZXhpc3RzKHRoaXMuX2Z1bGxQYXRoKHBhdGgpKTsKICAgICAgfQogICAgICBnZXQocGF0aCkgewogICAgICAgIGNvbnN0IGVudHJ5ID0gdGhpcy5fYmFzZS5nZXQodGhpcy5fZnVsbFBhdGgocGF0aCkpOwogICAgICAgIHJldHVybiBlbnRyeSAmJiBuZXcgU2NvcGVkRmlsZUVudHJ5KGVudHJ5LCB0aGlzLl9yb290LnNjb3BlKTsKICAgICAgfQogICAgICBnZXREaXIocGF0aCkgewogICAgICAgIGNvbnN0IGVudHJ5ID0gdGhpcy5fYmFzZS5nZXREaXIodGhpcy5fZnVsbFBhdGgocGF0aCkpOwogICAgICAgIHJldHVybiBlbnRyeSAmJiBuZXcgU2NvcGVkRGlyRW50cnkoZW50cnksIHRoaXMuX3Jvb3Quc2NvcGUpOwogICAgICB9CiAgICAgIHZpc2l0KHZpc2l0b3IpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcm9vdC52aXNpdCh2aXNpdG9yKTsKICAgICAgfQogICAgICAvLyBDaGFuZ2UgY29udGVudCBvZiBob3N0IGZpbGVzLgogICAgICBvdmVyd3JpdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLm92ZXJ3cml0ZSh0aGlzLl9mdWxsUGF0aChwYXRoKSwgY29udGVudCk7CiAgICAgIH0KICAgICAgYmVnaW5VcGRhdGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLmJlZ2luVXBkYXRlKHRoaXMuX2Z1bGxQYXRoKHBhdGgpKTsKICAgICAgfQogICAgICBjb21taXRVcGRhdGUocmVjb3JkKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UuY29tbWl0VXBkYXRlKHJlY29yZCk7CiAgICAgIH0KICAgICAgLy8gU3RydWN0dXJhbCBtZXRob2RzLgogICAgICBjcmVhdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLmNyZWF0ZSh0aGlzLl9mdWxsUGF0aChwYXRoKSwgY29udGVudCk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5kZWxldGUodGhpcy5fZnVsbFBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLnJlbmFtZSh0aGlzLl9mdWxsUGF0aChmcm9tKSwgdGhpcy5fZnVsbFBhdGgodG8pKTsKICAgICAgfQogICAgICBhcHBseShhY3Rpb24sIHN0cmF0ZWd5KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UuYXBwbHkodGhpcy5fZnVsbFBhdGhBY3Rpb24oYWN0aW9uKSwgc3RyYXRlZ3kpOwogICAgICB9CiAgICAgIGdldCBhY3Rpb25zKCkgewogICAgICAgIGNvbnN0IHNjb3BlZEFjdGlvbnMgPSBbXTsKICAgICAgICBmb3IgKGNvbnN0IGFjdGlvbiBvZiB0aGlzLl9iYXNlLmFjdGlvbnMpIHsKICAgICAgICAgIGlmICghYWN0aW9uLnBhdGguc3RhcnRzV2l0aCh0aGlzLl9yb290LnNjb3BlICsgIi8iKSkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChhY3Rpb24ua2luZCAhPT0gInIiKSB7CiAgICAgICAgICAgIHNjb3BlZEFjdGlvbnMucHVzaCh7CiAgICAgICAgICAgICAgLi4uYWN0aW9uLAogICAgICAgICAgICAgIHBhdGg6ICgwLCBjb3JlXzEuam9pbikoY29yZV8xLk5vcm1hbGl6ZWRSb290LCAoMCwgY29yZV8xLnJlbGF0aXZlKSh0aGlzLl9yb290LnNjb3BlLCBhY3Rpb24ucGF0aCkpCiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSBlbHNlIGlmIChhY3Rpb24udG8uc3RhcnRzV2l0aCh0aGlzLl9yb290LnNjb3BlICsgIi8iKSkgewogICAgICAgICAgICBzY29wZWRBY3Rpb25zLnB1c2goewogICAgICAgICAgICAgIC4uLmFjdGlvbiwKICAgICAgICAgICAgICBwYXRoOiAoMCwgY29yZV8xLmpvaW4pKGNvcmVfMS5Ob3JtYWxpemVkUm9vdCwgKDAsIGNvcmVfMS5yZWxhdGl2ZSkodGhpcy5fcm9vdC5zY29wZSwgYWN0aW9uLnBhdGgpKSwKICAgICAgICAgICAgICB0bzogKDAsIGNvcmVfMS5qb2luKShjb3JlXzEuTm9ybWFsaXplZFJvb3QsICgwLCBjb3JlXzEucmVsYXRpdmUpKHRoaXMuX3Jvb3Quc2NvcGUsIGFjdGlvbi50bykpCiAgICAgICAgICAgIH0pOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gc2NvcGVkQWN0aW9uczsKICAgICAgfQogICAgICBbaW50ZXJmYWNlXzEuVHJlZVN5bWJvbF0oKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgX2Z1bGxQYXRoKHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIGNvcmVfMS5qb2luKSh0aGlzLl9yb290LnNjb3BlLCAoMCwgY29yZV8xLm5vcm1hbGl6ZSkoIi8iICsgcGF0aCkpOwogICAgICB9CiAgICAgIF9mdWxsUGF0aEFjdGlvbihhY3Rpb24pIHsKICAgICAgICBsZXQgZnVsbFBhdGhBY3Rpb247CiAgICAgICAgaWYgKGFjdGlvbi5raW5kID09PSAiciIpIHsKICAgICAgICAgIGZ1bGxQYXRoQWN0aW9uID0gewogICAgICAgICAgICAuLi5hY3Rpb24sCiAgICAgICAgICAgIHBhdGg6IHRoaXMuX2Z1bGxQYXRoKGFjdGlvbi5wYXRoKSwKICAgICAgICAgICAgdG86IHRoaXMuX2Z1bGxQYXRoKGFjdGlvbi50bykKICAgICAgICAgIH07CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGZ1bGxQYXRoQWN0aW9uID0gewogICAgICAgICAgICAuLi5hY3Rpb24sCiAgICAgICAgICAgIHBhdGg6IHRoaXMuX2Z1bGxQYXRoKGFjdGlvbi5wYXRoKQogICAgICAgICAgfTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGZ1bGxQYXRoQWN0aW9uOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuU2NvcGVkVHJlZSA9IFNjb3BlZFRyZWU7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC1iNWUyZmQyMjJmLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvaG9zdC10cmVlLmpzCnZhciByZXF1aXJlX2hvc3RfdHJlZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtYjVlMmZkMjIyZi56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2hvc3QtdHJlZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuRmlsdGVySG9zdFRyZWUgPSBleHBvcnRzMi5Ib3N0Q3JlYXRlVHJlZSA9IGV4cG9ydHMyLkhvc3RUcmVlID0gZXhwb3J0czIuSG9zdERpckVudHJ5ID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIganNvbmNfcGFyc2VyXzEgPSByZXF1aXJlX21haW4oKTsKICAgIHZhciBleGNlcHRpb25fMSA9IHJlcXVpcmVfZXhjZXB0aW9uMigpOwogICAgdmFyIGRlbGVnYXRlXzEgPSByZXF1aXJlX2RlbGVnYXRlKCk7CiAgICB2YXIgZW50cnlfMSA9IHJlcXVpcmVfZW50cnkoKTsKICAgIHZhciBpbnRlcmZhY2VfMSA9IHJlcXVpcmVfaW50ZXJmYWNlMygpOwogICAgdmFyIHJlY29yZGVyXzEgPSByZXF1aXJlX3JlY29yZGVyKCk7CiAgICB2YXIgc2NvcGVkXzEgPSByZXF1aXJlX3Njb3BlZDIoKTsKICAgIHZhciBfdW5pcXVlSWQgPSAwOwogICAgdmFyIEhvc3REaXJFbnRyeSA9IGNsYXNzIHsKICAgICAgcGFyZW50OwogICAgICBwYXRoOwogICAgICBfaG9zdDsKICAgICAgX3RyZWU7CiAgICAgIGNvbnN0cnVjdG9yKHBhcmVudCwgcGF0aCwgX2hvc3QsIF90cmVlKSB7CiAgICAgICAgdGhpcy5wYXJlbnQgPSBwYXJlbnQ7CiAgICAgICAgdGhpcy5wYXRoID0gcGF0aDsKICAgICAgICB0aGlzLl9ob3N0ID0gX2hvc3Q7CiAgICAgICAgdGhpcy5fdHJlZSA9IF90cmVlOwogICAgICB9CiAgICAgIGdldCBzdWJkaXJzKCkgewogICAgICAgIHJldHVybiB0aGlzLl9ob3N0Lmxpc3QodGhpcy5wYXRoKS5maWx0ZXIoKGZyYWdtZW50KSA9PiB0aGlzLl9ob3N0LmlzRGlyZWN0b3J5KCgwLCBjb3JlXzEuam9pbikodGhpcy5wYXRoLCBmcmFnbWVudCkpKTsKICAgICAgfQogICAgICBnZXQgc3ViZmlsZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2hvc3QubGlzdCh0aGlzLnBhdGgpLmZpbHRlcigoZnJhZ21lbnQpID0+IHRoaXMuX2hvc3QuaXNGaWxlKCgwLCBjb3JlXzEuam9pbikodGhpcy5wYXRoLCBmcmFnbWVudCkpKTsKICAgICAgfQogICAgICBkaXIobmFtZSkgewogICAgICAgIHJldHVybiB0aGlzLl90cmVlLmdldERpcigoMCwgY29yZV8xLmpvaW4pKHRoaXMucGF0aCwgbmFtZSkpOwogICAgICB9CiAgICAgIGZpbGUobmFtZSkgewogICAgICAgIHJldHVybiB0aGlzLl90cmVlLmdldCgoMCwgY29yZV8xLmpvaW4pKHRoaXMucGF0aCwgbmFtZSkpOwogICAgICB9CiAgICAgIHZpc2l0KHZpc2l0b3IpIHsKICAgICAgICB0cnkgewogICAgICAgICAgdGhpcy5nZXRTdWJmaWxlc1JlY3Vyc2l2ZWx5KCkuZm9yRWFjaCgoZmlsZSkgPT4gdmlzaXRvcihmaWxlLnBhdGgsIGZpbGUpKTsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICBpZiAoZSAhPT0gaW50ZXJmYWNlXzEuRmlsZVZpc2l0b3JDYW5jZWxUb2tlbikgewogICAgICAgICAgICB0aHJvdyBlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgICBnZXRTdWJmaWxlc1JlY3Vyc2l2ZWx5KCkgewogICAgICAgIGZ1bmN0aW9uIF9yZWN1cnNlKGVudHJ5KSB7CiAgICAgICAgICByZXR1cm4gZW50cnkuc3ViZGlycy5yZWR1Y2UoKGZpbGVzLCBzdWJkaXIpID0+IFsuLi5maWxlcywgLi4uX3JlY3Vyc2UoZW50cnkuZGlyKHN1YmRpcikpXSwgZW50cnkuc3ViZmlsZXMubWFwKChzdWJmaWxlKSA9PiBlbnRyeS5maWxlKHN1YmZpbGUpKSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBfcmVjdXJzZSh0aGlzKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkhvc3REaXJFbnRyeSA9IEhvc3REaXJFbnRyeTsKICAgIHZhciBIb3N0VHJlZSA9IGNsYXNzIF9Ib3N0VHJlZSB7CiAgICAgIF9iYWNrZW5kOwogICAgICBfaWQgPSAtLV91bmlxdWVJZDsKICAgICAgX3JlY29yZDsKICAgICAgX3JlY29yZFN5bmM7CiAgICAgIF9hbmNlc3RyeSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIF9kaXJDYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIFtpbnRlcmZhY2VfMS5UcmVlU3ltYm9sXSgpIHsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBzdGF0aWMgaXNIb3N0VHJlZSh0cmVlKSB7CiAgICAgICAgaWYgKHRyZWUgaW5zdGFuY2VvZiBfSG9zdFRyZWUpIHsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgICBpZiAodHlwZW9mIHRyZWUgPT09ICJvYmplY3QiICYmIHR5cGVvZiB0cmVlLl9hbmNlc3RyeSA9PT0gIm9iamVjdCIpIHsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgICAgY29uc3RydWN0b3IoX2JhY2tlbmQgPSBuZXcgY29yZV8xLnZpcnR1YWxGcy5FbXB0eSgpKSB7CiAgICAgICAgdGhpcy5fYmFja2VuZCA9IF9iYWNrZW5kOwogICAgICAgIHRoaXMuX3JlY29yZCA9IG5ldyBjb3JlXzEudmlydHVhbEZzLkNvcmRIb3N0KG5ldyBjb3JlXzEudmlydHVhbEZzLlNhZmVSZWFkb25seUhvc3QoX2JhY2tlbmQpKTsKICAgICAgICB0aGlzLl9yZWNvcmRTeW5jID0gbmV3IGNvcmVfMS52aXJ0dWFsRnMuU3luY0RlbGVnYXRlSG9zdCh0aGlzLl9yZWNvcmQpOwogICAgICB9CiAgICAgIF9ub3JtYWxpemVQYXRoKHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIGNvcmVfMS5ub3JtYWxpemUpKCIvIiArIHBhdGgpOwogICAgICB9CiAgICAgIF93aWxsQ3JlYXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcmVjb3JkLndpbGxDcmVhdGUocGF0aCk7CiAgICAgIH0KICAgICAgX3dpbGxPdmVyd3JpdGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9yZWNvcmQud2lsbE92ZXJ3cml0ZShwYXRoKTsKICAgICAgfQogICAgICBfd2lsbERlbGV0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3JlY29yZC53aWxsRGVsZXRlKHBhdGgpOwogICAgICB9CiAgICAgIF93aWxsUmVuYW1lKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcmVjb3JkLndpbGxSZW5hbWUocGF0aCk7CiAgICAgIH0KICAgICAgYnJhbmNoKCkgewogICAgICAgIGNvbnN0IGJyYW5jaGVkVHJlZSA9IG5ldyBfSG9zdFRyZWUodGhpcy5fYmFja2VuZCk7CiAgICAgICAgYnJhbmNoZWRUcmVlLl9yZWNvcmQgPSB0aGlzLl9yZWNvcmQuY2xvbmUoKTsKICAgICAgICBicmFuY2hlZFRyZWUuX3JlY29yZFN5bmMgPSBuZXcgY29yZV8xLnZpcnR1YWxGcy5TeW5jRGVsZWdhdGVIb3N0KGJyYW5jaGVkVHJlZS5fcmVjb3JkKTsKICAgICAgICBicmFuY2hlZFRyZWUuX2FuY2VzdHJ5ID0gbmV3IFNldCh0aGlzLl9hbmNlc3RyeSkuYWRkKHRoaXMuX2lkKTsKICAgICAgICByZXR1cm4gYnJhbmNoZWRUcmVlOwogICAgICB9CiAgICAgIGlzQW5jZXN0b3JPZih0cmVlKSB7CiAgICAgICAgaWYgKHRyZWUgaW5zdGFuY2VvZiBfSG9zdFRyZWUpIHsKICAgICAgICAgIHJldHVybiB0cmVlLl9hbmNlc3RyeS5oYXModGhpcy5faWQpOwogICAgICAgIH0KICAgICAgICBpZiAodHJlZSBpbnN0YW5jZW9mIGRlbGVnYXRlXzEuRGVsZWdhdGVUcmVlKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5pc0FuY2VzdG9yT2YodHJlZS5fb3RoZXIpOwogICAgICAgIH0KICAgICAgICBpZiAodHJlZSBpbnN0YW5jZW9mIHNjb3BlZF8xLlNjb3BlZFRyZWUpIHsKICAgICAgICAgIHJldHVybiB0aGlzLmlzQW5jZXN0b3JPZih0cmVlLl9iYXNlKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICAgIG1lcmdlKG90aGVyLCBzdHJhdGVneSA9IGludGVyZmFjZV8xLk1lcmdlU3RyYXRlZ3kuRGVmYXVsdCkgewogICAgICAgIGlmIChvdGhlciA9PT0gdGhpcykgewogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5pc0FuY2VzdG9yT2Yob3RoZXIpKSB7CiAgICAgICAgICBzdHJhdGVneSB8PSBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5Lk92ZXJ3cml0ZTsKICAgICAgICB9CiAgICAgICAgY29uc3QgY3JlYXRpb25Db25mbGljdEFsbG93ZWQgPSAoc3RyYXRlZ3kgJiBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkFsbG93Q3JlYXRpb25Db25mbGljdCkgPT0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5BbGxvd0NyZWF0aW9uQ29uZmxpY3Q7CiAgICAgICAgY29uc3Qgb3ZlcndyaXRlQ29uZmxpY3RBbGxvd2VkID0gKHN0cmF0ZWd5ICYgaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5BbGxvd092ZXJ3cml0ZUNvbmZsaWN0KSA9PSBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkFsbG93T3ZlcndyaXRlQ29uZmxpY3Q7CiAgICAgICAgY29uc3QgZGVsZXRlQ29uZmxpY3RBbGxvd2VkID0gKHN0cmF0ZWd5ICYgaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5BbGxvd0RlbGV0ZUNvbmZsaWN0KSA9PSBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkFsbG93RGVsZXRlQ29uZmxpY3Q7CiAgICAgICAgb3RoZXIuYWN0aW9ucy5mb3JFYWNoKChhY3Rpb24pID0+IHsKICAgICAgICAgIHN3aXRjaCAoYWN0aW9uLmtpbmQpIHsKICAgICAgICAgICAgY2FzZSAiYyI6IHsKICAgICAgICAgICAgICBjb25zdCB7IHBhdGgsIGNvbnRlbnQgfSA9IGFjdGlvbjsKICAgICAgICAgICAgICBpZiAodGhpcy5fd2lsbENyZWF0ZShwYXRoKSB8fCB0aGlzLl93aWxsT3ZlcndyaXRlKHBhdGgpIHx8IHRoaXMuZXhpc3RzKHBhdGgpKSB7CiAgICAgICAgICAgICAgICBjb25zdCBleGlzdGluZ0NvbnRlbnQgPSB0aGlzLnJlYWQocGF0aCk7CiAgICAgICAgICAgICAgICBpZiAoZXhpc3RpbmdDb250ZW50ICYmIGNvbnRlbnQuZXF1YWxzKGV4aXN0aW5nQ29udGVudCkpIHsKICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKCFjcmVhdGlvbkNvbmZsaWN0QWxsb3dlZCkgewogICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuTWVyZ2VDb25mbGljdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHRoaXMuX3JlY29yZC5vdmVyd3JpdGUocGF0aCwgY29udGVudCkuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHRoaXMuX3JlY29yZC5jcmVhdGUocGF0aCwgY29udGVudCkuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgICAgICBjYXNlICJvIjogewogICAgICAgICAgICAgIGNvbnN0IHsgcGF0aCwgY29udGVudCB9ID0gYWN0aW9uOwogICAgICAgICAgICAgIGlmICh0aGlzLl93aWxsRGVsZXRlKHBhdGgpICYmICFvdmVyd3JpdGVDb25mbGljdEFsbG93ZWQpIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5NZXJnZUNvbmZsaWN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAodGhpcy5fd2lsbE92ZXJ3cml0ZShwYXRoKSkgewogICAgICAgICAgICAgICAgY29uc3QgZXhpc3RpbmdDb250ZW50ID0gdGhpcy5yZWFkKHBhdGgpOwogICAgICAgICAgICAgICAgaWYgKGV4aXN0aW5nQ29udGVudCAmJiBjb250ZW50LmVxdWFscyhleGlzdGluZ0NvbnRlbnQpKSB7CiAgICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmICghb3ZlcndyaXRlQ29uZmxpY3RBbGxvd2VkKSB7CiAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5NZXJnZUNvbmZsaWN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB0aGlzLl9yZWNvcmQud3JpdGUocGF0aCwgY29udGVudCkuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNhc2UgInIiOiB7CiAgICAgICAgICAgICAgY29uc3QgeyBwYXRoLCB0byB9ID0gYWN0aW9uOwogICAgICAgICAgICAgIGlmICh0aGlzLl93aWxsRGVsZXRlKHBhdGgpKSB7CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuTWVyZ2VDb25mbGljdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHRoaXMuX3dpbGxSZW5hbWUocGF0aCkpIHsKICAgICAgICAgICAgICAgIGlmICh0aGlzLl9yZWNvcmQud2lsbFJlbmFtZVRvKHBhdGgsIHRvKSkgewogICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuTWVyZ2VDb25mbGljdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgdGhpcy5yZW5hbWUocGF0aCwgdG8pOwogICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgICAgICBjYXNlICJkIjogewogICAgICAgICAgICAgIGNvbnN0IHsgcGF0aCB9ID0gYWN0aW9uOwogICAgICAgICAgICAgIGlmICh0aGlzLl93aWxsRGVsZXRlKHBhdGgpKSB7CiAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICghdGhpcy5leGlzdHMocGF0aCkgJiYgIWRlbGV0ZUNvbmZsaWN0QWxsb3dlZCkgewogICAgICAgICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLk1lcmdlQ29uZmxpY3RFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHRoaXMuX3JlY29yZFN5bmMuZGVsZXRlKHBhdGgpOwogICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9CiAgICAgIGdldCByb290KCkgewogICAgICAgIHJldHVybiB0aGlzLmdldERpcigiLyIpOwogICAgICB9CiAgICAgIC8vIFJlYWRvbmx5LgogICAgICByZWFkKHBhdGgpIHsKICAgICAgICBjb25zdCBlbnRyeSA9IHRoaXMuZ2V0KHBhdGgpOwogICAgICAgIHJldHVybiBlbnRyeSA/IGVudHJ5LmNvbnRlbnQgOiBudWxsOwogICAgICB9CiAgICAgIHJlYWRUZXh0KHBhdGgpIHsKICAgICAgICBjb25zdCBkYXRhID0gdGhpcy5yZWFkKHBhdGgpOwogICAgICAgIGlmIChkYXRhID09PSBudWxsKSB7CiAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgZGVjb2RlciA9IG5ldyBUZXh0RGVjb2RlcigidXRmLTgiLCB7IGZhdGFsOiB0cnVlIH0pOwogICAgICAgIHRyeSB7CiAgICAgICAgICByZXR1cm4gZGVjb2Rlci5kZWNvZGUoZGF0YSk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IgfHwgZS5jb2RlID09PSAiRVJSX0VOQ09ESU5HX0lOVkFMSURfRU5DT0RFRF9EQVRBIikgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEZhaWxlZCB0byBkZWNvZGUgIiR7cGF0aH0iIGFzIFVURi04IHRleHQuYCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlOwogICAgICAgIH0KICAgICAgfQogICAgICByZWFkSnNvbihwYXRoKSB7CiAgICAgICAgY29uc3QgY29udGVudCA9IHRoaXMucmVhZFRleHQocGF0aCk7CiAgICAgICAgY29uc3QgZXJyb3JzID0gW107CiAgICAgICAgY29uc3QgcmVzdWx0ID0gKDAsIGpzb25jX3BhcnNlcl8xLnBhcnNlKShjb250ZW50LCBlcnJvcnMsIHsgYWxsb3dUcmFpbGluZ0NvbW1hOiB0cnVlIH0pOwogICAgICAgIGlmIChlcnJvcnNbMF0pIHsKICAgICAgICAgIGNvbnN0IHsgZXJyb3IsIG9mZnNldCB9ID0gZXJyb3JzWzBdOwogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBGYWlsZWQgdG8gcGFyc2UgIiR7cGF0aH0iIGFzIEpTT04uICR7KDAsIGpzb25jX3BhcnNlcl8xLnByaW50UGFyc2VFcnJvckNvZGUpKGVycm9yKX0gYXQgb2Zmc2V0OiAke29mZnNldH0uYCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH0KICAgICAgZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcmVjb3JkU3luYy5pc0ZpbGUodGhpcy5fbm9ybWFsaXplUGF0aChwYXRoKSk7CiAgICAgIH0KICAgICAgZ2V0KHBhdGgpIHsKICAgICAgICBjb25zdCBwID0gdGhpcy5fbm9ybWFsaXplUGF0aChwYXRoKTsKICAgICAgICBpZiAodGhpcy5fcmVjb3JkU3luYy5pc0RpcmVjdG9yeShwKSkgewogICAgICAgICAgdGhyb3cgbmV3IGNvcmVfMS5QYXRoSXNEaXJlY3RvcnlFeGNlcHRpb24ocCk7CiAgICAgICAgfQogICAgICAgIGlmICghdGhpcy5fcmVjb3JkU3luYy5leGlzdHMocCkpIHsKICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbmV3IGVudHJ5XzEuTGF6eUZpbGVFbnRyeShwLCAoKSA9PiBCdWZmZXIuZnJvbSh0aGlzLl9yZWNvcmRTeW5jLnJlYWQocCkpKTsKICAgICAgfQogICAgICBnZXREaXIocGF0aCkgewogICAgICAgIGNvbnN0IHAgPSB0aGlzLl9ub3JtYWxpemVQYXRoKHBhdGgpOwogICAgICAgIGlmICh0aGlzLl9yZWNvcmRTeW5jLmlzRmlsZShwKSkgewogICAgICAgICAgdGhyb3cgbmV3IGNvcmVfMS5QYXRoSXNGaWxlRXhjZXB0aW9uKHApOwogICAgICAgIH0KICAgICAgICBsZXQgbWF5YmVDYWNoZSA9IHRoaXMuX2RpckNhY2hlLmdldChwKTsKICAgICAgICBpZiAoIW1heWJlQ2FjaGUpIHsKICAgICAgICAgIGxldCBwYXJlbnQgPSAoMCwgY29yZV8xLmRpcm5hbWUpKHApOwogICAgICAgICAgaWYgKHAgPT09IHBhcmVudCkgewogICAgICAgICAgICBwYXJlbnQgPSBudWxsOwogICAgICAgICAgfQogICAgICAgICAgbWF5YmVDYWNoZSA9IG5ldyBIb3N0RGlyRW50cnkocGFyZW50ICYmIHRoaXMuZ2V0RGlyKHBhcmVudCksIHAsIHRoaXMuX3JlY29yZFN5bmMsIHRoaXMpOwogICAgICAgICAgdGhpcy5fZGlyQ2FjaGUuc2V0KHAsIG1heWJlQ2FjaGUpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbWF5YmVDYWNoZTsKICAgICAgfQogICAgICB2aXNpdCh2aXNpdG9yKSB7CiAgICAgICAgdGhpcy5yb290LnZpc2l0KChwYXRoLCBlbnRyeSkgPT4gewogICAgICAgICAgdmlzaXRvcihwYXRoLCBlbnRyeSk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgLy8gQ2hhbmdlIGNvbnRlbnQgb2YgaG9zdCBmaWxlcy4KICAgICAgb3ZlcndyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICBjb25zdCBwID0gdGhpcy5fbm9ybWFsaXplUGF0aChwYXRoKTsKICAgICAgICBpZiAoIXRoaXMuX3JlY29yZFN5bmMuZXhpc3RzKHApKSB7CiAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihwKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgYyA9IHR5cGVvZiBjb250ZW50ID09ICJzdHJpbmciID8gQnVmZmVyLmZyb20oY29udGVudCkgOiBjb250ZW50OwogICAgICAgIHRoaXMuX3JlY29yZC5vdmVyd3JpdGUocCwgYykuc3Vic2NyaWJlKCk7CiAgICAgIH0KICAgICAgYmVnaW5VcGRhdGUocGF0aCkgewogICAgICAgIGNvbnN0IGVudHJ5ID0gdGhpcy5nZXQocGF0aCk7CiAgICAgICAgaWYgKCFlbnRyeSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZWNvcmRlcl8xLlVwZGF0ZVJlY29yZGVyQmFzZS5jcmVhdGVGcm9tRmlsZUVudHJ5KGVudHJ5KTsKICAgICAgfQogICAgICBjb21taXRVcGRhdGUocmVjb3JkKSB7CiAgICAgICAgaWYgKHJlY29yZCBpbnN0YW5jZW9mIHJlY29yZGVyXzEuVXBkYXRlUmVjb3JkZXJCYXNlKSB7CiAgICAgICAgICBjb25zdCBwYXRoID0gcmVjb3JkLnBhdGg7CiAgICAgICAgICBjb25zdCBlbnRyeSA9IHRoaXMuZ2V0KHBhdGgpOwogICAgICAgICAgaWYgKCFlbnRyeSkgewogICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuQ29udGVudEhhc011dGF0ZWRFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBjb25zdCBuZXdDb250ZW50ID0gcmVjb3JkLmFwcGx5KGVudHJ5LmNvbnRlbnQpOwogICAgICAgICAgICBpZiAoIW5ld0NvbnRlbnQuZXF1YWxzKGVudHJ5LmNvbnRlbnQpKSB7CiAgICAgICAgICAgICAgdGhpcy5vdmVyd3JpdGUocGF0aCwgbmV3Q29udGVudCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkludmFsaWRVcGRhdGVSZWNvcmRFeGNlcHRpb24oKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgLy8gU3RydWN0dXJhbCBtZXRob2RzLgogICAgICBjcmVhdGUocGF0aCwgY29udGVudCkgewogICAgICAgIGNvbnN0IHAgPSB0aGlzLl9ub3JtYWxpemVQYXRoKHBhdGgpOwogICAgICAgIGlmICh0aGlzLl9yZWNvcmRTeW5jLmV4aXN0cyhwKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24ocCk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGMgPSB0eXBlb2YgY29udGVudCA9PSAic3RyaW5nIiA/IEJ1ZmZlci5mcm9tKGNvbnRlbnQpIDogY29udGVudDsKICAgICAgICB0aGlzLl9yZWNvcmQuY3JlYXRlKHAsIGMpLnN1YnNjcmliZSgpOwogICAgICB9CiAgICAgIGRlbGV0ZShwYXRoKSB7CiAgICAgICAgdGhpcy5fcmVjb3JkU3luYy5kZWxldGUodGhpcy5fbm9ybWFsaXplUGF0aChwYXRoKSk7CiAgICAgIH0KICAgICAgcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgdGhpcy5fcmVjb3JkU3luYy5yZW5hbWUodGhpcy5fbm9ybWFsaXplUGF0aChmcm9tKSwgdGhpcy5fbm9ybWFsaXplUGF0aCh0bykpOwogICAgICB9CiAgICAgIGFwcGx5KGFjdGlvbiwgc3RyYXRlZ3kpIHsKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuU2NoZW1hdGljc0V4Y2VwdGlvbigiQXBwbHkgbm90IGltcGxlbWVudGVkIG9uIGhvc3QgdHJlZXMuIik7CiAgICAgIH0KICAgICAgKmdlbmVyYXRlQWN0aW9ucygpIHsKICAgICAgICBmb3IgKGNvbnN0IHJlY29yZCBvZiB0aGlzLl9yZWNvcmQucmVjb3JkcygpKSB7CiAgICAgICAgICBzd2l0Y2ggKHJlY29yZC5raW5kKSB7CiAgICAgICAgICAgIGNhc2UgImNyZWF0ZSI6CiAgICAgICAgICAgICAgeWllbGQgewogICAgICAgICAgICAgICAgaWQ6IHRoaXMuX2lkLAogICAgICAgICAgICAgICAgcGFyZW50OiAwLAogICAgICAgICAgICAgICAga2luZDogImMiLAogICAgICAgICAgICAgICAgcGF0aDogcmVjb3JkLnBhdGgsCiAgICAgICAgICAgICAgICBjb250ZW50OiBCdWZmZXIuZnJvbShyZWNvcmQuY29udGVudCkKICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlICJvdmVyd3JpdGUiOgogICAgICAgICAgICAgIHlpZWxkIHsKICAgICAgICAgICAgICAgIGlkOiB0aGlzLl9pZCwKICAgICAgICAgICAgICAgIHBhcmVudDogMCwKICAgICAgICAgICAgICAgIGtpbmQ6ICJvIiwKICAgICAgICAgICAgICAgIHBhdGg6IHJlY29yZC5wYXRoLAogICAgICAgICAgICAgICAgY29udGVudDogQnVmZmVyLmZyb20ocmVjb3JkLmNvbnRlbnQpCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAicmVuYW1lIjoKICAgICAgICAgICAgICB5aWVsZCB7CiAgICAgICAgICAgICAgICBpZDogdGhpcy5faWQsCiAgICAgICAgICAgICAgICBwYXJlbnQ6IDAsCiAgICAgICAgICAgICAgICBraW5kOiAiciIsCiAgICAgICAgICAgICAgICBwYXRoOiByZWNvcmQuZnJvbSwKICAgICAgICAgICAgICAgIHRvOiByZWNvcmQudG8KICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlICJkZWxldGUiOgogICAgICAgICAgICAgIHlpZWxkIHsKICAgICAgICAgICAgICAgIGlkOiB0aGlzLl9pZCwKICAgICAgICAgICAgICAgIHBhcmVudDogMCwKICAgICAgICAgICAgICAgIGtpbmQ6ICJkIiwKICAgICAgICAgICAgICAgIHBhdGg6IHJlY29yZC5wYXRoCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgZ2V0IGFjdGlvbnMoKSB7CiAgICAgICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5nZW5lcmF0ZUFjdGlvbnMoKSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Ib3N0VHJlZSA9IEhvc3RUcmVlOwogICAgdmFyIEhvc3RDcmVhdGVUcmVlID0gY2xhc3MgZXh0ZW5kcyBIb3N0VHJlZSB7CiAgICAgIGNvbnN0cnVjdG9yKGhvc3QpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIGNvbnN0IHRlbXBIb3N0ID0gbmV3IEhvc3RUcmVlKGhvc3QpOwogICAgICAgIHRlbXBIb3N0LnZpc2l0KChwYXRoKSA9PiB7CiAgICAgICAgICBjb25zdCBjb250ZW50ID0gdGVtcEhvc3QucmVhZChwYXRoKTsKICAgICAgICAgIGlmIChjb250ZW50KSB7CiAgICAgICAgICAgIHRoaXMuY3JlYXRlKHBhdGgsIGNvbnRlbnQpOwogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSG9zdENyZWF0ZVRyZWUgPSBIb3N0Q3JlYXRlVHJlZTsKICAgIHZhciBGaWx0ZXJIb3N0VHJlZSA9IGNsYXNzIGV4dGVuZHMgSG9zdFRyZWUgewogICAgICBjb25zdHJ1Y3Rvcih0cmVlLCBmaWx0ZXIgPSAoKSA9PiB0cnVlKSB7CiAgICAgICAgY29uc3QgbmV3QmFja2VuZCA9IG5ldyBjb3JlXzEudmlydHVhbEZzLlNpbXBsZU1lbW9yeUhvc3QoKTsKICAgICAgICBjb25zdCBvcmlnaW5hbEJhY2tlbmQgPSB0cmVlLl9iYWNrZW5kOwogICAgICAgIGNvbnN0IHBlbmRpbmdQYXRocyA9IFsiLyJdOwogICAgICAgIHdoaWxlIChwZW5kaW5nUGF0aHMubGVuZ3RoID4gMCkgewogICAgICAgICAgY29uc3QgY3VycmVudFBhdGggPSBwZW5kaW5nUGF0aHMucG9wKCk7CiAgICAgICAgICBpZiAoY3VycmVudFBhdGggPT09IHZvaWQgMCkgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICAgIGxldCBpc0RpcmVjdG9yeSA9IGZhbHNlOwogICAgICAgICAgb3JpZ2luYWxCYWNrZW5kLmlzRGlyZWN0b3J5KGN1cnJlbnRQYXRoKS5zdWJzY3JpYmUoKHZhbCkgPT4gaXNEaXJlY3RvcnkgPSB2YWwpOwogICAgICAgICAgaWYgKGlzRGlyZWN0b3J5KSB7CiAgICAgICAgICAgIG9yaWdpbmFsQmFja2VuZC5saXN0KGN1cnJlbnRQYXRoKS5zdWJzY3JpYmUoKHZhbCkgPT4gcGVuZGluZ1BhdGhzLnB1c2goLi4udmFsLm1hcCgocCkgPT4gKDAsIGNvcmVfMS5qb2luKShjdXJyZW50UGF0aCwgcCkpKSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgbGV0IGlzRmlsZSA9IGZhbHNlOwogICAgICAgICAgb3JpZ2luYWxCYWNrZW5kLmlzRmlsZShjdXJyZW50UGF0aCkuc3Vic2NyaWJlKCh2YWwpID0+IGlzRmlsZSA9IHZhbCk7CiAgICAgICAgICBpZiAoIWlzRmlsZSB8fCAhZmlsdGVyKGN1cnJlbnRQYXRoKSkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGxldCBjb250ZW50ID0gbnVsbDsKICAgICAgICAgIG9yaWdpbmFsQmFja2VuZC5yZWFkKGN1cnJlbnRQYXRoKS5zdWJzY3JpYmUoKHZhbCkgPT4gY29udGVudCA9IHZhbCk7CiAgICAgICAgICBpZiAoY29udGVudCAhPT0gbnVsbCkgewogICAgICAgICAgICBuZXdCYWNrZW5kLndyaXRlKGN1cnJlbnRQYXRoLCBjb250ZW50KS5zdWJzY3JpYmUoKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgc3VwZXIobmV3QmFja2VuZCk7CiAgICAgICAgZm9yIChjb25zdCBhY3Rpb24gb2YgdHJlZS5hY3Rpb25zKSB7CiAgICAgICAgICBpZiAoIWZpbHRlcihhY3Rpb24ucGF0aCkpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBzd2l0Y2ggKGFjdGlvbi5raW5kKSB7CiAgICAgICAgICAgIGNhc2UgImMiOgogICAgICAgICAgICAgIHRoaXMuY3JlYXRlKGFjdGlvbi5wYXRoLCBhY3Rpb24uY29udGVudCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgImQiOgogICAgICAgICAgICAgIHRoaXMuZGVsZXRlKGFjdGlvbi5wYXRoKTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAibyI6CiAgICAgICAgICAgICAgdGhpcy5vdmVyd3JpdGUoYWN0aW9uLnBhdGgsIGFjdGlvbi5jb250ZW50KTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiciI6CiAgICAgICAgICAgICAgdGhpcy5yZW5hbWUoYWN0aW9uLnBhdGgsIGFjdGlvbi50byk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRmlsdGVySG9zdFRyZWUgPSBGaWx0ZXJIb3N0VHJlZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LWI1ZTJmZDIyMmYuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9zdGF0aWMuanMKdmFyIHJlcXVpcmVfc3RhdGljID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC1iNWUyZmQyMjJmLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvc3RhdGljLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5lbXB0eSA9IGVtcHR5OwogICAgZXhwb3J0czIuYnJhbmNoID0gYnJhbmNoOwogICAgZXhwb3J0czIubWVyZ2UgPSBtZXJnZTsKICAgIGV4cG9ydHMyLnBhcnRpdGlvbiA9IHBhcnRpdGlvbjsKICAgIHZhciBleGNlcHRpb25fMSA9IHJlcXVpcmVfZXhjZXB0aW9uMigpOwogICAgdmFyIGhvc3RfdHJlZV8xID0gcmVxdWlyZV9ob3N0X3RyZWUoKTsKICAgIHZhciBpbnRlcmZhY2VfMSA9IHJlcXVpcmVfaW50ZXJmYWNlMygpOwogICAgZnVuY3Rpb24gZW1wdHkoKSB7CiAgICAgIHJldHVybiBuZXcgaG9zdF90cmVlXzEuSG9zdFRyZWUoKTsKICAgIH0KICAgIGZ1bmN0aW9uIGJyYW5jaCh0cmVlKSB7CiAgICAgIHJldHVybiB0cmVlLmJyYW5jaCgpOwogICAgfQogICAgZnVuY3Rpb24gbWVyZ2UodHJlZSwgb3RoZXIsIHN0cmF0ZWd5ID0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5EZWZhdWx0KSB7CiAgICAgIHRyZWUubWVyZ2Uob3RoZXIsIHN0cmF0ZWd5KTsKICAgICAgcmV0dXJuIHRyZWU7CiAgICB9CiAgICBmdW5jdGlvbiBwYXJ0aXRpb24odHJlZSwgcHJlZGljYXRlKSB7CiAgICAgIGlmICh0cmVlIGluc3RhbmNlb2YgaG9zdF90cmVlXzEuSG9zdFRyZWUpIHsKICAgICAgICByZXR1cm4gWwogICAgICAgICAgbmV3IGhvc3RfdHJlZV8xLkZpbHRlckhvc3RUcmVlKHRyZWUsIHByZWRpY2F0ZSksCiAgICAgICAgICBuZXcgaG9zdF90cmVlXzEuRmlsdGVySG9zdFRyZWUodHJlZSwgKHBhdGgsIGVudHJ5KSA9PiAhcHJlZGljYXRlKHBhdGgsIGVudHJ5KSkKICAgICAgICBdOwogICAgICB9IGVsc2UgewogICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5TY2hlbWF0aWNzRXhjZXB0aW9uKCJUcmVlIHR5cGUgaXMgbm90IHN1cHBvcnRlZC4iKTsKICAgICAgfQogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtYjVlMmZkMjIyZi56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL251bGwuanMKdmFyIHJlcXVpcmVfbnVsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtYjVlMmZkMjIyZi56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL251bGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLk51bGxUcmVlID0gZXhwb3J0czIuTnVsbFRyZWVEaXJFbnRyeSA9IGV4cG9ydHMyLkNhbm5vdENyZWF0ZUZpbGVFeGNlcHRpb24gPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciBleGNlcHRpb25fMSA9IHJlcXVpcmVfZXhjZXB0aW9uMigpOwogICAgdmFyIGludGVyZmFjZV8xID0gcmVxdWlyZV9pbnRlcmZhY2UzKCk7CiAgICB2YXIgcmVjb3JkZXJfMSA9IHJlcXVpcmVfcmVjb3JkZXIoKTsKICAgIHZhciBDYW5ub3RDcmVhdGVGaWxlRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgQ2Fubm90IGNyZWF0ZSBmaWxlICIke3BhdGh9Ii5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkNhbm5vdENyZWF0ZUZpbGVFeGNlcHRpb24gPSBDYW5ub3RDcmVhdGVGaWxlRXhjZXB0aW9uOwogICAgdmFyIE51bGxUcmVlRGlyRW50cnkgPSBjbGFzcyBfTnVsbFRyZWVEaXJFbnRyeSB7CiAgICAgIHBhdGg7CiAgICAgIGdldCBwYXJlbnQoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMucGF0aCA9PSAiLyIgPyBudWxsIDogbmV3IF9OdWxsVHJlZURpckVudHJ5KCgwLCBjb3JlXzEuZGlybmFtZSkodGhpcy5wYXRoKSk7CiAgICAgIH0KICAgICAgY29uc3RydWN0b3IocGF0aCkgewogICAgICAgIHRoaXMucGF0aCA9IHBhdGg7CiAgICAgIH0KICAgICAgc3ViZGlycyA9IFtdOwogICAgICBzdWJmaWxlcyA9IFtdOwogICAgICBkaXIobmFtZSkgewogICAgICAgIHJldHVybiBuZXcgX051bGxUcmVlRGlyRW50cnkoKDAsIGNvcmVfMS5qb2luKSh0aGlzLnBhdGgsIG5hbWUpKTsKICAgICAgfQogICAgICBmaWxlKF9uYW1lKSB7CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgIH0KICAgICAgdmlzaXQoKSB7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5OdWxsVHJlZURpckVudHJ5ID0gTnVsbFRyZWVEaXJFbnRyeTsKICAgIHZhciBOdWxsVHJlZSA9IGNsYXNzIF9OdWxsVHJlZSB7CiAgICAgIFtpbnRlcmZhY2VfMS5UcmVlU3ltYm9sXSgpIHsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBicmFuY2goKSB7CiAgICAgICAgcmV0dXJuIG5ldyBfTnVsbFRyZWUoKTsKICAgICAgfQogICAgICBtZXJnZShfb3RoZXIsIF9zdHJhdGVneSkgewogICAgICB9CiAgICAgIHJvb3QgPSBuZXcgTnVsbFRyZWVEaXJFbnRyeSgoMCwgY29yZV8xLm5vcm1hbGl6ZSkoIi8iKSk7CiAgICAgIC8vIFNpbXBsZSByZWFkb25seSBmaWxlIHN5c3RlbSBvcGVyYXRpb25zLgogICAgICBleGlzdHMoX3BhdGgpIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgICAgcmVhZChfcGF0aCkgewogICAgICAgIHJldHVybiBudWxsOwogICAgICB9CiAgICAgIHJlYWRUZXh0KHBhdGgpIHsKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgfQogICAgICByZWFkSnNvbihwYXRoKSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgIH0KICAgICAgZ2V0KF9wYXRoKSB7CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgIH0KICAgICAgZ2V0RGlyKHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IE51bGxUcmVlRGlyRW50cnkoKDAsIGNvcmVfMS5ub3JtYWxpemUpKCIvIiArIHBhdGgpKTsKICAgICAgfQogICAgICB2aXNpdCgpIHsKICAgICAgfQogICAgICAvLyBDaGFuZ2UgY29udGVudCBvZiBob3N0IGZpbGVzLgogICAgICBiZWdpblVwZGF0ZShwYXRoKSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgIH0KICAgICAgY29tbWl0VXBkYXRlKHJlY29yZCkgewogICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHJlY29yZCBpbnN0YW5jZW9mIHJlY29yZGVyXzEuVXBkYXRlUmVjb3JkZXJCYXNlID8gcmVjb3JkLnBhdGggOiAiPHVua25vd24+Iik7CiAgICAgIH0KICAgICAgLy8gQ2hhbmdlIHN0cnVjdHVyZSBvZiB0aGUgaG9zdC4KICAgICAgY29weShwYXRoLCBfdG8pIHsKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgfQogICAgICBkZWxldGUocGF0aCkgewogICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICB9CiAgICAgIGNyZWF0ZShwYXRoLCBfY29udGVudCkgewogICAgICAgIHRocm93IG5ldyBDYW5ub3RDcmVhdGVGaWxlRXhjZXB0aW9uKHBhdGgpOwogICAgICB9CiAgICAgIHJlbmFtZShwYXRoLCBfdG8pIHsKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgfQogICAgICBvdmVyd3JpdGUocGF0aCwgX2NvbnRlbnQpIHsKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgfQogICAgICBhcHBseShfYWN0aW9uLCBfc3RyYXRlZ3kpIHsKICAgICAgfQogICAgICBnZXQgYWN0aW9ucygpIHsKICAgICAgICByZXR1cm4gW107CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5OdWxsVHJlZSA9IE51bGxUcmVlOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtYjVlMmZkMjIyZi56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9ydWxlcy9jYWxsLmpzCnZhciByZXF1aXJlX2NhbGwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LWI1ZTJmZDIyMmYuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvY2FsbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuSW52YWxpZFNvdXJjZVJlc3VsdEV4Y2VwdGlvbiA9IGV4cG9ydHMyLkludmFsaWRSdWxlUmVzdWx0RXhjZXB0aW9uID0gdm9pZCAwOwogICAgZXhwb3J0czIuY2FsbFNvdXJjZSA9IGNhbGxTb3VyY2U7CiAgICBleHBvcnRzMi5jYWxsUnVsZSA9IGNhbGxSdWxlOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBpbnRlcmZhY2VfMSA9IHJlcXVpcmVfaW50ZXJmYWNlMygpOwogICAgZnVuY3Rpb24gX2dldFR5cGVPZlJlc3VsdCh2YWx1ZSkgewogICAgICBpZiAodmFsdWUgPT09IHZvaWQgMCkgewogICAgICAgIHJldHVybiAidW5kZWZpbmVkIjsKICAgICAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gbnVsbCkgewogICAgICAgIHJldHVybiAibnVsbCI7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbHVlID09ICJmdW5jdGlvbiIpIHsKICAgICAgICByZXR1cm4gYEZ1bmN0aW9uKClgOwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiB2YWx1ZSAhPSAib2JqZWN0IikgewogICAgICAgIHJldHVybiBgJHt0eXBlb2YgdmFsdWV9KCR7SlNPTi5zdHJpbmdpZnkodmFsdWUpfSlgOwogICAgICB9IGVsc2UgewogICAgICAgIGlmIChPYmplY3QuZ2V0UHJvdG90eXBlT2YodmFsdWUpID09IE9iamVjdCkgewogICAgICAgICAgcmV0dXJuIGBPYmplY3QoJHtKU09OLnN0cmluZ2lmeSh2YWx1ZSl9KWA7CiAgICAgICAgfSBlbHNlIGlmICh2YWx1ZS5jb25zdHJ1Y3RvcikgewogICAgICAgICAgcmV0dXJuIGBJbnN0YW5jZSBvZiBjbGFzcyAke3ZhbHVlLmNvbnN0cnVjdG9yLm5hbWV9YDsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuICJVbmtub3duIE9iamVjdCI7CiAgICAgICAgfQogICAgICB9CiAgICB9CiAgICB2YXIgSW52YWxpZFJ1bGVSZXN1bHRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IodmFsdWUpIHsKICAgICAgICBzdXBlcihgSW52YWxpZCBydWxlIHJlc3VsdDogJHtfZ2V0VHlwZU9mUmVzdWx0KHZhbHVlKX0uYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5JbnZhbGlkUnVsZVJlc3VsdEV4Y2VwdGlvbiA9IEludmFsaWRSdWxlUmVzdWx0RXhjZXB0aW9uOwogICAgdmFyIEludmFsaWRTb3VyY2VSZXN1bHRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IodmFsdWUpIHsKICAgICAgICBzdXBlcihgSW52YWxpZCBzb3VyY2UgcmVzdWx0OiAke19nZXRUeXBlT2ZSZXN1bHQodmFsdWUpfS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkludmFsaWRTb3VyY2VSZXN1bHRFeGNlcHRpb24gPSBJbnZhbGlkU291cmNlUmVzdWx0RXhjZXB0aW9uOwogICAgZnVuY3Rpb24gY2FsbFNvdXJjZShzb3VyY2UsIGNvbnRleHQpIHsKICAgICAgcmV0dXJuICgwLCByeGpzXzEuZGVmZXIpKGFzeW5jICgpID0+IHsKICAgICAgICBsZXQgcmVzdWx0ID0gc291cmNlKGNvbnRleHQpOwogICAgICAgIGlmICgoMCwgcnhqc18xLmlzT2JzZXJ2YWJsZSkocmVzdWx0KSkgewogICAgICAgICAgcmVzdWx0ID0gYXdhaXQgKDAsIHJ4anNfMS5sYXN0VmFsdWVGcm9tKShyZXN1bHQucGlwZSgoMCwgcnhqc18xLmRlZmF1bHRJZkVtcHR5KSh2b2lkIDApKSk7CiAgICAgICAgfQogICAgICAgIGlmIChyZXN1bHQgJiYgaW50ZXJmYWNlXzEuVHJlZVN5bWJvbCBpbiByZXN1bHQpIHsKICAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgICAgfQogICAgICAgIHRocm93IG5ldyBJbnZhbGlkU291cmNlUmVzdWx0RXhjZXB0aW9uKHJlc3VsdCk7CiAgICAgIH0pOwogICAgfQogICAgZnVuY3Rpb24gY2FsbFJ1bGUocnVsZSwgaW5wdXQsIGNvbnRleHQpIHsKICAgICAgaWYgKCgwLCByeGpzXzEuaXNPYnNlcnZhYmxlKShpbnB1dCkpIHsKICAgICAgICByZXR1cm4gaW5wdXQucGlwZSgoMCwgcnhqc18xLm1lcmdlTWFwKSgoaW5wdXRUcmVlKSA9PiBjYWxsUnVsZUFzeW5jKHJ1bGUsIGlucHV0VHJlZSwgY29udGV4dCkpKTsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5kZWZlcikoKCkgPT4gY2FsbFJ1bGVBc3luYyhydWxlLCBpbnB1dCwgY29udGV4dCkpOwogICAgICB9CiAgICB9CiAgICBhc3luYyBmdW5jdGlvbiBjYWxsUnVsZUFzeW5jKHJ1bGUsIHRyZWUsIGNvbnRleHQpIHsKICAgICAgbGV0IHJlc3VsdCA9IGF3YWl0IHJ1bGUodHJlZSwgY29udGV4dCk7CiAgICAgIHdoaWxlICh0eXBlb2YgcmVzdWx0ID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgcmVzdWx0ID0gYXdhaXQgcmVzdWx0KHRyZWUsIGNvbnRleHQpOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgcmVzdWx0ID09PSAidW5kZWZpbmVkIikgewogICAgICAgIHJldHVybiB0cmVlOwogICAgICB9CiAgICAgIGlmICgoMCwgcnhqc18xLmlzT2JzZXJ2YWJsZSkocmVzdWx0KSkgewogICAgICAgIHJlc3VsdCA9IGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkocmVzdWx0LnBpcGUoKDAsIHJ4anNfMS5kZWZhdWx0SWZFbXB0eSkodHJlZSkpKTsKICAgICAgfQogICAgICBpZiAocmVzdWx0ICYmIGludGVyZmFjZV8xLlRyZWVTeW1ib2wgaW4gcmVzdWx0KSB7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfQogICAgICB0aHJvdyBuZXcgSW52YWxpZFJ1bGVSZXN1bHRFeGNlcHRpb24ocmVzdWx0KTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LWI1ZTJmZDIyMmYuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL3NjaGVtYXRpYy5qcwp2YXIgcmVxdWlyZV9zY2hlbWF0aWMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LWI1ZTJmZDIyMmYuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL3NjaGVtYXRpYy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuU2NoZW1hdGljSW1wbCA9IGV4cG9ydHMyLkludmFsaWRTY2hlbWF0aWNzTmFtZUV4Y2VwdGlvbiA9IHZvaWQgMDsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgY2FsbF8xID0gcmVxdWlyZV9jYWxsKCk7CiAgICB2YXIgc2NvcGVkXzEgPSByZXF1aXJlX3Njb3BlZDIoKTsKICAgIHZhciBJbnZhbGlkU2NoZW1hdGljc05hbWVFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBTY2hlbWF0aWNzIGhhcyBpbnZhbGlkIG5hbWU6ICIke25hbWV9Ii5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkludmFsaWRTY2hlbWF0aWNzTmFtZUV4Y2VwdGlvbiA9IEludmFsaWRTY2hlbWF0aWNzTmFtZUV4Y2VwdGlvbjsKICAgIHZhciBTY2hlbWF0aWNJbXBsID0gY2xhc3MgewogICAgICBfZGVzY3JpcHRpb247CiAgICAgIF9mYWN0b3J5OwogICAgICBfY29sbGVjdGlvbjsKICAgICAgX2VuZ2luZTsKICAgICAgY29uc3RydWN0b3IoX2Rlc2NyaXB0aW9uLCBfZmFjdG9yeSwgX2NvbGxlY3Rpb24sIF9lbmdpbmUpIHsKICAgICAgICB0aGlzLl9kZXNjcmlwdGlvbiA9IF9kZXNjcmlwdGlvbjsKICAgICAgICB0aGlzLl9mYWN0b3J5ID0gX2ZhY3Rvcnk7CiAgICAgICAgdGhpcy5fY29sbGVjdGlvbiA9IF9jb2xsZWN0aW9uOwogICAgICAgIHRoaXMuX2VuZ2luZSA9IF9lbmdpbmU7CiAgICAgICAgaWYgKCFfZGVzY3JpcHRpb24ubmFtZS5tYXRjaCgvXlstQC9fLmEtekEtWjAtOV0rJC8pKSB7CiAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFNjaGVtYXRpY3NOYW1lRXhjZXB0aW9uKF9kZXNjcmlwdGlvbi5uYW1lKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgZ2V0IGRlc2NyaXB0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZXNjcmlwdGlvbjsKICAgICAgfQogICAgICBnZXQgY29sbGVjdGlvbigpIHsKICAgICAgICByZXR1cm4gdGhpcy5fY29sbGVjdGlvbjsKICAgICAgfQogICAgICBjYWxsKG9wdGlvbnMsIGhvc3QsIHBhcmVudENvbnRleHQsIGV4ZWN1dGlvbk9wdGlvbnMpIHsKICAgICAgICBjb25zdCBjb250ZXh0ID0gdGhpcy5fZW5naW5lLmNyZWF0ZUNvbnRleHQodGhpcywgcGFyZW50Q29udGV4dCwgZXhlY3V0aW9uT3B0aW9ucyk7CiAgICAgICAgcmV0dXJuIGhvc3QucGlwZSgoMCwgcnhqc18xLmZpcnN0KSgpLCAoMCwgcnhqc18xLmNvbmNhdE1hcCkoKHRyZWUpID0+IHRoaXMuX2VuZ2luZS50cmFuc2Zvcm1PcHRpb25zKHRoaXMsIG9wdGlvbnMsIGNvbnRleHQpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChvKSA9PiBbdHJlZSwgb10pKSksICgwLCByeGpzXzEuY29uY2F0TWFwKSgoW3RyZWUsIHRyYW5zZm9ybWVkT3B0aW9uc10pID0+IHsKICAgICAgICAgIGxldCBpbnB1dDsKICAgICAgICAgIGxldCBzY29wZWQgPSBmYWxzZTsKICAgICAgICAgIGlmIChleGVjdXRpb25PcHRpb25zICYmIGV4ZWN1dGlvbk9wdGlvbnMuc2NvcGUpIHsKICAgICAgICAgICAgc2NvcGVkID0gdHJ1ZTsKICAgICAgICAgICAgaW5wdXQgPSBuZXcgc2NvcGVkXzEuU2NvcGVkVHJlZSh0cmVlLCBleGVjdXRpb25PcHRpb25zLnNjb3BlKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGlucHV0ID0gdHJlZTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiAoMCwgY2FsbF8xLmNhbGxSdWxlKSh0aGlzLl9mYWN0b3J5KHRyYW5zZm9ybWVkT3B0aW9ucyksIGlucHV0LCBjb250ZXh0KS5waXBlKCgwLCByeGpzXzEubWFwKSgob3V0cHV0KSA9PiB7CiAgICAgICAgICAgIGlmIChvdXRwdXQgPT09IGlucHV0KSB7CiAgICAgICAgICAgICAgcmV0dXJuIHRyZWU7CiAgICAgICAgICAgIH0gZWxzZSBpZiAoc2NvcGVkKSB7CiAgICAgICAgICAgICAgdHJlZS5tZXJnZShvdXRwdXQpOwogICAgICAgICAgICAgIHJldHVybiB0cmVlOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHJldHVybiBvdXRwdXQ7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pKTsKICAgICAgICB9KSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TY2hlbWF0aWNJbXBsID0gU2NoZW1hdGljSW1wbDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LWI1ZTJmZDIyMmYuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2VuZ2luZS5qcwp2YXIgcmVxdWlyZV9lbmdpbmUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LWI1ZTJmZDIyMmYuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2VuZ2luZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuU2NoZW1hdGljRW5naW5lID0gZXhwb3J0czIuVGFza1NjaGVkdWxlciA9IGV4cG9ydHMyLkNvbGxlY3Rpb25JbXBsID0gZXhwb3J0czIuVW5rbm93blRhc2tEZXBlbmRlbmN5RXhjZXB0aW9uID0gZXhwb3J0czIuVW5yZWdpc3RlcmVkVGFza0V4Y2VwdGlvbiA9IGV4cG9ydHMyLlNjaGVtYXRpY0VuZ2luZUNvbmZsaWN0aW5nRXhjZXB0aW9uID0gZXhwb3J0czIuUHJpdmF0ZVNjaGVtYXRpY0V4Y2VwdGlvbiA9IGV4cG9ydHMyLlVua25vd25TY2hlbWF0aWNFeGNlcHRpb24gPSBleHBvcnRzMi5DaXJjdWxhckNvbGxlY3Rpb25FeGNlcHRpb24gPSBleHBvcnRzMi5Vbmtub3duQ29sbGVjdGlvbkV4Y2VwdGlvbiA9IGV4cG9ydHMyLlVua25vd25VcmxTb3VyY2VQcm90b2NvbCA9IHZvaWQgMDsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTMoKTsKICAgIHZhciBudWxsXzEgPSByZXF1aXJlX251bGwoKTsKICAgIHZhciBzdGF0aWNfMSA9IHJlcXVpcmVfc3RhdGljKCk7CiAgICB2YXIgc2NoZW1hdGljXzEgPSByZXF1aXJlX3NjaGVtYXRpYygpOwogICAgdmFyIFVua25vd25VcmxTb3VyY2VQcm90b2NvbCA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3Rvcih1cmwzKSB7CiAgICAgICAgc3VwZXIoYFVua25vd24gUHJvdG9jb2wgb24gdXJsICIke3VybDN9Ii5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVua25vd25VcmxTb3VyY2VQcm90b2NvbCA9IFVua25vd25VcmxTb3VyY2VQcm90b2NvbDsKICAgIHZhciBVbmtub3duQ29sbGVjdGlvbkV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihuYW1lKSB7CiAgICAgICAgc3VwZXIoYFVua25vd24gY29sbGVjdGlvbiAiJHtuYW1lfSIuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Vbmtub3duQ29sbGVjdGlvbkV4Y2VwdGlvbiA9IFVua25vd25Db2xsZWN0aW9uRXhjZXB0aW9uOwogICAgdmFyIENpcmN1bGFyQ29sbGVjdGlvbkV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihuYW1lKSB7CiAgICAgICAgc3VwZXIoYENpcmN1bGFyIGNvbGxlY3Rpb24gcmVmZXJlbmNlICIke25hbWV9Ii5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkNpcmN1bGFyQ29sbGVjdGlvbkV4Y2VwdGlvbiA9IENpcmN1bGFyQ29sbGVjdGlvbkV4Y2VwdGlvbjsKICAgIHZhciBVbmtub3duU2NoZW1hdGljRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKG5hbWUsIGNvbGxlY3Rpb24pIHsKICAgICAgICBzdXBlcihgU2NoZW1hdGljICIke25hbWV9IiBub3QgZm91bmQgaW4gY29sbGVjdGlvbiAiJHtjb2xsZWN0aW9uLm5hbWV9Ii5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVua25vd25TY2hlbWF0aWNFeGNlcHRpb24gPSBVbmtub3duU2NoZW1hdGljRXhjZXB0aW9uOwogICAgdmFyIFByaXZhdGVTY2hlbWF0aWNFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSwgY29sbGVjdGlvbikgewogICAgICAgIHN1cGVyKGBTY2hlbWF0aWMgIiR7bmFtZX0iIG5vdCBmb3VuZCBpbiBjb2xsZWN0aW9uICIke2NvbGxlY3Rpb24ubmFtZX0iLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuUHJpdmF0ZVNjaGVtYXRpY0V4Y2VwdGlvbiA9IFByaXZhdGVTY2hlbWF0aWNFeGNlcHRpb247CiAgICB2YXIgU2NoZW1hdGljRW5naW5lQ29uZmxpY3RpbmdFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgc3VwZXIoYEEgc2NoZW1hdGljIHdhcyBjYWxsZWQgZnJvbSBhIGRpZmZlcmVudCBlbmdpbmUgYXMgaXRzIHBhcmVudC5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNjaGVtYXRpY0VuZ2luZUNvbmZsaWN0aW5nRXhjZXB0aW9uID0gU2NoZW1hdGljRW5naW5lQ29uZmxpY3RpbmdFeGNlcHRpb247CiAgICB2YXIgVW5yZWdpc3RlcmVkVGFza0V4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihuYW1lLCBzY2hlbWF0aWMpIHsKICAgICAgICBjb25zdCBhZGRlbmR1bSA9IHNjaGVtYXRpYyA/IGAgaW4gc2NoZW1hdGljICIke3NjaGVtYXRpYy5uYW1lfSJgIDogIiI7CiAgICAgICAgc3VwZXIoYFVucmVnaXN0ZXJlZCB0YXNrICIke25hbWV9IiR7YWRkZW5kdW19LmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVW5yZWdpc3RlcmVkVGFza0V4Y2VwdGlvbiA9IFVucmVnaXN0ZXJlZFRhc2tFeGNlcHRpb247CiAgICB2YXIgVW5rbm93blRhc2tEZXBlbmRlbmN5RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKGlkKSB7CiAgICAgICAgc3VwZXIoYFVua25vd24gdGFzayBkZXBlbmRlbmN5IFtJRDogJHtpZC5pZH1dLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVW5rbm93blRhc2tEZXBlbmRlbmN5RXhjZXB0aW9uID0gVW5rbm93blRhc2tEZXBlbmRlbmN5RXhjZXB0aW9uOwogICAgdmFyIENvbGxlY3Rpb25JbXBsID0gY2xhc3MgewogICAgICBfZGVzY3JpcHRpb247CiAgICAgIF9lbmdpbmU7CiAgICAgIGJhc2VEZXNjcmlwdGlvbnM7CiAgICAgIGNvbnN0cnVjdG9yKF9kZXNjcmlwdGlvbiwgX2VuZ2luZSwgYmFzZURlc2NyaXB0aW9ucykgewogICAgICAgIHRoaXMuX2Rlc2NyaXB0aW9uID0gX2Rlc2NyaXB0aW9uOwogICAgICAgIHRoaXMuX2VuZ2luZSA9IF9lbmdpbmU7CiAgICAgICAgdGhpcy5iYXNlRGVzY3JpcHRpb25zID0gYmFzZURlc2NyaXB0aW9uczsKICAgICAgfQogICAgICBnZXQgZGVzY3JpcHRpb24oKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Rlc2NyaXB0aW9uOwogICAgICB9CiAgICAgIGdldCBuYW1lKCkgewogICAgICAgIHJldHVybiB0aGlzLmRlc2NyaXB0aW9uLm5hbWUgfHwgIjx1bmtub3duPiI7CiAgICAgIH0KICAgICAgY3JlYXRlU2NoZW1hdGljKG5hbWUsIGFsbG93UHJpdmF0ZSA9IGZhbHNlKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2VuZ2luZS5jcmVhdGVTY2hlbWF0aWMobmFtZSwgdGhpcywgYWxsb3dQcml2YXRlKTsKICAgICAgfQogICAgICBsaXN0U2NoZW1hdGljTmFtZXMoaW5jbHVkZUhpZGRlbikgewogICAgICAgIHJldHVybiB0aGlzLl9lbmdpbmUubGlzdFNjaGVtYXRpY05hbWVzKHRoaXMsIGluY2x1ZGVIaWRkZW4pOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuQ29sbGVjdGlvbkltcGwgPSBDb2xsZWN0aW9uSW1wbDsKICAgIHZhciBUYXNrU2NoZWR1bGVyID0gY2xhc3MgX1Rhc2tTY2hlZHVsZXIgewogICAgICBfY29udGV4dDsKICAgICAgX3F1ZXVlID0gbmV3IGNvcmVfMS5Qcmlvcml0eVF1ZXVlKCh4LCB5KSA9PiB4LnByaW9yaXR5IC0geS5wcmlvcml0eSk7CiAgICAgIF90YXNrSWRzID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgc3RhdGljIF90YXNrSWRDb3VudGVyID0gMTsKICAgICAgY29uc3RydWN0b3IoX2NvbnRleHQpIHsKICAgICAgICB0aGlzLl9jb250ZXh0ID0gX2NvbnRleHQ7CiAgICAgIH0KICAgICAgX2NhbGN1bGF0ZVByaW9yaXR5KGRlcGVuZGVuY2llcykgewogICAgICAgIGlmIChkZXBlbmRlbmNpZXMuc2l6ZSA9PT0gMCkgewogICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHByaW8gPSBbLi4uZGVwZW5kZW5jaWVzXS5yZWR1Y2UoKHByaW8yLCB0YXNrKSA9PiBwcmlvMiArIHRhc2sucHJpb3JpdHksIDEpOwogICAgICAgIHJldHVybiBwcmlvOwogICAgICB9CiAgICAgIF9tYXBEZXBlbmRlbmNpZXMoZGVwZW5kZW5jaWVzKSB7CiAgICAgICAgaWYgKCFkZXBlbmRlbmNpZXMpIHsKICAgICAgICAgIHJldHVybiAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICAgIH0KICAgICAgICBjb25zdCB0YXNrcyA9IGRlcGVuZGVuY2llcy5tYXAoKGRlcCkgPT4gewogICAgICAgICAgY29uc3QgdGFzayA9IHRoaXMuX3Rhc2tJZHMuZ2V0KGRlcCk7CiAgICAgICAgICBpZiAoIXRhc2spIHsKICAgICAgICAgICAgdGhyb3cgbmV3IFVua25vd25UYXNrRGVwZW5kZW5jeUV4Y2VwdGlvbihkZXApOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHRhc2s7CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIG5ldyBTZXQodGFza3MpOwogICAgICB9CiAgICAgIHNjaGVkdWxlKHRhc2tDb25maWd1cmF0aW9uKSB7CiAgICAgICAgY29uc3QgZGVwZW5kZW5jaWVzID0gdGhpcy5fbWFwRGVwZW5kZW5jaWVzKHRhc2tDb25maWd1cmF0aW9uLmRlcGVuZGVuY2llcyk7CiAgICAgICAgY29uc3QgcHJpb3JpdHkgPSB0aGlzLl9jYWxjdWxhdGVQcmlvcml0eShkZXBlbmRlbmNpZXMpOwogICAgICAgIGNvbnN0IHRhc2sgPSB7CiAgICAgICAgICBpZDogX1Rhc2tTY2hlZHVsZXIuX3Rhc2tJZENvdW50ZXIrKywKICAgICAgICAgIHByaW9yaXR5LAogICAgICAgICAgY29uZmlndXJhdGlvbjogdGFza0NvbmZpZ3VyYXRpb24sCiAgICAgICAgICBjb250ZXh0OiB0aGlzLl9jb250ZXh0CiAgICAgICAgfTsKICAgICAgICB0aGlzLl9xdWV1ZS5wdXNoKHRhc2spOwogICAgICAgIGNvbnN0IGlkID0geyBpZDogdGFzay5pZCB9OwogICAgICAgIHRoaXMuX3Rhc2tJZHMuc2V0KGlkLCB0YXNrKTsKICAgICAgICByZXR1cm4gaWQ7CiAgICAgIH0KICAgICAgZmluYWxpemUoKSB7CiAgICAgICAgY29uc3QgdGFza3MgPSB0aGlzLl9xdWV1ZS50b0FycmF5KCk7CiAgICAgICAgdGhpcy5fcXVldWUuY2xlYXIoKTsKICAgICAgICB0aGlzLl90YXNrSWRzLmNsZWFyKCk7CiAgICAgICAgcmV0dXJuIHRhc2tzOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVGFza1NjaGVkdWxlciA9IFRhc2tTY2hlZHVsZXI7CiAgICB2YXIgU2NoZW1hdGljRW5naW5lID0gY2xhc3MgewogICAgICBfaG9zdDsKICAgICAgX3dvcmtmbG93OwogICAgICBfY29sbGVjdGlvbkNhY2hlID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgX3NjaGVtYXRpY0NhY2hlID0gLyogQF9fUFVSRV9fICovIG5ldyBXZWFrTWFwKCk7CiAgICAgIF90YXNrU2NoZWR1bGVycyA9IG5ldyBBcnJheSgpOwogICAgICBjb25zdHJ1Y3RvcihfaG9zdCwgX3dvcmtmbG93KSB7CiAgICAgICAgdGhpcy5faG9zdCA9IF9ob3N0OwogICAgICAgIHRoaXMuX3dvcmtmbG93ID0gX3dvcmtmbG93OwogICAgICB9CiAgICAgIGdldCB3b3JrZmxvdygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fd29ya2Zsb3cgfHwgbnVsbDsKICAgICAgfQogICAgICBnZXQgZGVmYXVsdE1lcmdlU3RyYXRlZ3koKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2hvc3QuZGVmYXVsdE1lcmdlU3RyYXRlZ3kgfHwgaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5EZWZhdWx0OwogICAgICB9CiAgICAgIGNyZWF0ZUNvbGxlY3Rpb24obmFtZSwgcmVxdWVzdGVyKSB7CiAgICAgICAgbGV0IGNvbGxlY3Rpb24gPSB0aGlzLl9jb2xsZWN0aW9uQ2FjaGUuZ2V0KG5hbWUpOwogICAgICAgIGlmIChjb2xsZWN0aW9uKSB7CiAgICAgICAgICByZXR1cm4gY29sbGVjdGlvbjsKICAgICAgICB9CiAgICAgICAgY29uc3QgW2Rlc2NyaXB0aW9uLCBiYXNlc10gPSB0aGlzLl9jcmVhdGVDb2xsZWN0aW9uRGVzY3JpcHRpb24obmFtZSwgcmVxdWVzdGVyPy5kZXNjcmlwdGlvbik7CiAgICAgICAgY29sbGVjdGlvbiA9IG5ldyBDb2xsZWN0aW9uSW1wbChkZXNjcmlwdGlvbiwgdGhpcywgYmFzZXMpOwogICAgICAgIHRoaXMuX2NvbGxlY3Rpb25DYWNoZS5zZXQobmFtZSwgY29sbGVjdGlvbik7CiAgICAgICAgdGhpcy5fc2NoZW1hdGljQ2FjaGUuc2V0KGNvbGxlY3Rpb24sIC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCkpOwogICAgICAgIHJldHVybiBjb2xsZWN0aW9uOwogICAgICB9CiAgICAgIF9jcmVhdGVDb2xsZWN0aW9uRGVzY3JpcHRpb24obmFtZSwgcmVxdWVzdGVyLCBwYXJlbnROYW1lcykgewogICAgICAgIGNvbnN0IGRlc2NyaXB0aW9uID0gdGhpcy5faG9zdC5jcmVhdGVDb2xsZWN0aW9uRGVzY3JpcHRpb24obmFtZSwgcmVxdWVzdGVyKTsKICAgICAgICBpZiAoIWRlc2NyaXB0aW9uKSB7CiAgICAgICAgICB0aHJvdyBuZXcgVW5rbm93bkNvbGxlY3Rpb25FeGNlcHRpb24obmFtZSk7CiAgICAgICAgfQogICAgICAgIGlmIChwYXJlbnROYW1lcyAmJiBwYXJlbnROYW1lcy5oYXMoZGVzY3JpcHRpb24ubmFtZSkpIHsKICAgICAgICAgIHRocm93IG5ldyBDaXJjdWxhckNvbGxlY3Rpb25FeGNlcHRpb24obmFtZSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGJhc2VzID0gbmV3IEFycmF5KCk7CiAgICAgICAgaWYgKGRlc2NyaXB0aW9uLmV4dGVuZHMpIHsKICAgICAgICAgIHBhcmVudE5hbWVzID0gKHBhcmVudE5hbWVzIHx8IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCkpLmFkZChkZXNjcmlwdGlvbi5uYW1lKTsKICAgICAgICAgIGZvciAoY29uc3QgYmFzZU5hbWUgb2YgZGVzY3JpcHRpb24uZXh0ZW5kcykgewogICAgICAgICAgICBjb25zdCBbYmFzZSwgYmFzZUJhc2VzXSA9IHRoaXMuX2NyZWF0ZUNvbGxlY3Rpb25EZXNjcmlwdGlvbihiYXNlTmFtZSwgZGVzY3JpcHRpb24sIG5ldyBTZXQocGFyZW50TmFtZXMpKTsKICAgICAgICAgICAgYmFzZXMudW5zaGlmdChiYXNlLCAuLi5iYXNlQmFzZXMpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gW2Rlc2NyaXB0aW9uLCBiYXNlc107CiAgICAgIH0KICAgICAgY3JlYXRlQ29udGV4dChzY2hlbWF0aWMsIHBhcmVudCwgZXhlY3V0aW9uT3B0aW9ucykgewogICAgICAgIGlmIChwYXJlbnQgJiYgcGFyZW50LmVuZ2luZSAmJiBwYXJlbnQuZW5naW5lICE9PSB0aGlzKSB7CiAgICAgICAgICB0aHJvdyBuZXcgU2NoZW1hdGljRW5naW5lQ29uZmxpY3RpbmdFeGNlcHRpb24oKTsKICAgICAgICB9CiAgICAgICAgbGV0IGludGVyYWN0aXZlID0gdHJ1ZTsKICAgICAgICBpZiAoZXhlY3V0aW9uT3B0aW9ucyAmJiBleGVjdXRpb25PcHRpb25zLmludGVyYWN0aXZlICE9IHZvaWQgMCkgewogICAgICAgICAgaW50ZXJhY3RpdmUgPSBleGVjdXRpb25PcHRpb25zLmludGVyYWN0aXZlOwogICAgICAgIH0gZWxzZSBpZiAocGFyZW50ICYmIHBhcmVudC5pbnRlcmFjdGl2ZSAhPSB2b2lkIDApIHsKICAgICAgICAgIGludGVyYWN0aXZlID0gcGFyZW50LmludGVyYWN0aXZlOwogICAgICAgIH0KICAgICAgICBsZXQgY29udGV4dCA9IHsKICAgICAgICAgIGRlYnVnOiBwYXJlbnQgJiYgcGFyZW50LmRlYnVnIHx8IGZhbHNlLAogICAgICAgICAgZW5naW5lOiB0aGlzLAogICAgICAgICAgbG9nZ2VyOiBwYXJlbnQgJiYgcGFyZW50LmxvZ2dlciAmJiBwYXJlbnQubG9nZ2VyLmNyZWF0ZUNoaWxkKHNjaGVtYXRpYy5kZXNjcmlwdGlvbi5uYW1lKSB8fCBuZXcgY29yZV8xLmxvZ2dpbmcuTnVsbExvZ2dlcigpLAogICAgICAgICAgc2NoZW1hdGljLAogICAgICAgICAgc3RyYXRlZ3k6IHBhcmVudCAmJiBwYXJlbnQuc3RyYXRlZ3kgIT09IHZvaWQgMCA/IHBhcmVudC5zdHJhdGVneSA6IHRoaXMuZGVmYXVsdE1lcmdlU3RyYXRlZ3ksCiAgICAgICAgICBpbnRlcmFjdGl2ZSwKICAgICAgICAgIGFkZFRhc2sKICAgICAgICB9OwogICAgICAgIGNvbnN0IG1heWJlTmV3Q29udGV4dCA9IHRoaXMuX2hvc3QudHJhbnNmb3JtQ29udGV4dChjb250ZXh0KTsKICAgICAgICBpZiAobWF5YmVOZXdDb250ZXh0KSB7CiAgICAgICAgICBjb250ZXh0ID0gbWF5YmVOZXdDb250ZXh0OwogICAgICAgIH0KICAgICAgICBjb25zdCB0YXNrU2NoZWR1bGVyID0gbmV3IFRhc2tTY2hlZHVsZXIoY29udGV4dCk7CiAgICAgICAgY29uc3QgaG9zdCA9IHRoaXMuX2hvc3Q7CiAgICAgICAgdGhpcy5fdGFza1NjaGVkdWxlcnMucHVzaCh0YXNrU2NoZWR1bGVyKTsKICAgICAgICBmdW5jdGlvbiBhZGRUYXNrKHRhc2ssIGRlcGVuZGVuY2llcykgewogICAgICAgICAgY29uc3QgY29uZmlnID0gdGFzay50b0NvbmZpZ3VyYXRpb24oKTsKICAgICAgICAgIGlmICghaG9zdC5oYXNUYXNrRXhlY3V0b3IoY29uZmlnLm5hbWUpKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBVbnJlZ2lzdGVyZWRUYXNrRXhjZXB0aW9uKGNvbmZpZy5uYW1lLCBzY2hlbWF0aWMuZGVzY3JpcHRpb24pOwogICAgICAgICAgfQogICAgICAgICAgY29uZmlnLmRlcGVuZGVuY2llcyA9IGNvbmZpZy5kZXBlbmRlbmNpZXMgfHwgW107CiAgICAgICAgICBpZiAoZGVwZW5kZW5jaWVzKSB7CiAgICAgICAgICAgIGNvbmZpZy5kZXBlbmRlbmNpZXMudW5zaGlmdCguLi5kZXBlbmRlbmNpZXMpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHRhc2tTY2hlZHVsZXIuc2NoZWR1bGUoY29uZmlnKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGNvbnRleHQ7CiAgICAgIH0KICAgICAgY3JlYXRlU2NoZW1hdGljKG5hbWUsIGNvbGxlY3Rpb24sIGFsbG93UHJpdmF0ZSA9IGZhbHNlKSB7CiAgICAgICAgY29uc3Qgc2NoZW1hdGljTWFwID0gdGhpcy5fc2NoZW1hdGljQ2FjaGUuZ2V0KGNvbGxlY3Rpb24pOwogICAgICAgIGxldCBzY2hlbWF0aWMgPSBzY2hlbWF0aWNNYXA/LmdldChuYW1lKTsKICAgICAgICBpZiAoc2NoZW1hdGljKSB7CiAgICAgICAgICByZXR1cm4gc2NoZW1hdGljOwogICAgICAgIH0KICAgICAgICBsZXQgY29sbGVjdGlvbkRlc2NyaXB0aW9uID0gY29sbGVjdGlvbi5kZXNjcmlwdGlvbjsKICAgICAgICBsZXQgZGVzY3JpcHRpb24gPSB0aGlzLl9ob3N0LmNyZWF0ZVNjaGVtYXRpY0Rlc2NyaXB0aW9uKG5hbWUsIGNvbGxlY3Rpb24uZGVzY3JpcHRpb24pOwogICAgICAgIGlmICghZGVzY3JpcHRpb24pIHsKICAgICAgICAgIGlmIChjb2xsZWN0aW9uLmJhc2VEZXNjcmlwdGlvbnMpIHsKICAgICAgICAgICAgZm9yIChjb25zdCBiYXNlIG9mIGNvbGxlY3Rpb24uYmFzZURlc2NyaXB0aW9ucykgewogICAgICAgICAgICAgIGRlc2NyaXB0aW9uID0gdGhpcy5faG9zdC5jcmVhdGVTY2hlbWF0aWNEZXNjcmlwdGlvbihuYW1lLCBiYXNlKTsKICAgICAgICAgICAgICBpZiAoZGVzY3JpcHRpb24pIHsKICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25EZXNjcmlwdGlvbiA9IGJhc2U7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmICghZGVzY3JpcHRpb24pIHsKICAgICAgICAgICAgdGhyb3cgbmV3IFVua25vd25TY2hlbWF0aWNFeGNlcHRpb24obmFtZSwgY29sbGVjdGlvbi5kZXNjcmlwdGlvbik7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChkZXNjcmlwdGlvbi5wcml2YXRlICYmICFhbGxvd1ByaXZhdGUpIHsKICAgICAgICAgIHRocm93IG5ldyBQcml2YXRlU2NoZW1hdGljRXhjZXB0aW9uKG5hbWUsIGNvbGxlY3Rpb24uZGVzY3JpcHRpb24pOwogICAgICAgIH0KICAgICAgICBjb25zdCBmYWN0b3J5ID0gdGhpcy5faG9zdC5nZXRTY2hlbWF0aWNSdWxlRmFjdG9yeShkZXNjcmlwdGlvbiwgY29sbGVjdGlvbkRlc2NyaXB0aW9uKTsKICAgICAgICBzY2hlbWF0aWMgPSBuZXcgc2NoZW1hdGljXzEuU2NoZW1hdGljSW1wbChkZXNjcmlwdGlvbiwgZmFjdG9yeSwgY29sbGVjdGlvbiwgdGhpcyk7CiAgICAgICAgc2NoZW1hdGljTWFwPy5zZXQobmFtZSwgc2NoZW1hdGljKTsKICAgICAgICByZXR1cm4gc2NoZW1hdGljOwogICAgICB9CiAgICAgIGxpc3RTY2hlbWF0aWNOYW1lcyhjb2xsZWN0aW9uLCBpbmNsdWRlSGlkZGVuKSB7CiAgICAgICAgY29uc3QgbmFtZXMgPSB0aGlzLl9ob3N0Lmxpc3RTY2hlbWF0aWNOYW1lcyhjb2xsZWN0aW9uLmRlc2NyaXB0aW9uLCBpbmNsdWRlSGlkZGVuKTsKICAgICAgICBpZiAoY29sbGVjdGlvbi5iYXNlRGVzY3JpcHRpb25zKSB7CiAgICAgICAgICBmb3IgKGNvbnN0IGJhc2Ugb2YgY29sbGVjdGlvbi5iYXNlRGVzY3JpcHRpb25zKSB7CiAgICAgICAgICAgIG5hbWVzLnB1c2goLi4udGhpcy5faG9zdC5saXN0U2NoZW1hdGljTmFtZXMoYmFzZSwgaW5jbHVkZUhpZGRlbikpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gWy4uLm5ldyBTZXQobmFtZXMpXS5zb3J0KCk7CiAgICAgIH0KICAgICAgdHJhbnNmb3JtT3B0aW9ucyhzY2hlbWF0aWMsIG9wdGlvbnMsIGNvbnRleHQpIHsKICAgICAgICByZXR1cm4gdGhpcy5faG9zdC50cmFuc2Zvcm1PcHRpb25zKHNjaGVtYXRpYy5kZXNjcmlwdGlvbiwgb3B0aW9ucywgY29udGV4dCk7CiAgICAgIH0KICAgICAgY3JlYXRlU291cmNlRnJvbVVybCh1cmwzLCBjb250ZXh0KSB7CiAgICAgICAgc3dpdGNoICh1cmwzLnByb3RvY29sKSB7CiAgICAgICAgICBjYXNlICJudWxsOiI6CiAgICAgICAgICAgIHJldHVybiAoKSA9PiBuZXcgbnVsbF8xLk51bGxUcmVlKCk7CiAgICAgICAgICBjYXNlICJlbXB0eToiOgogICAgICAgICAgICByZXR1cm4gKCkgPT4gKDAsIHN0YXRpY18xLmVtcHR5KSgpOwogICAgICAgIH0KICAgICAgICBjb25zdCBob3N0U291cmNlID0gdGhpcy5faG9zdC5jcmVhdGVTb3VyY2VGcm9tVXJsKHVybDMsIGNvbnRleHQpOwogICAgICAgIGlmICghaG9zdFNvdXJjZSkgewogICAgICAgICAgdGhyb3cgbmV3IFVua25vd25VcmxTb3VyY2VQcm90b2NvbCh1cmwzLnRvU3RyaW5nKCkpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gaG9zdFNvdXJjZTsKICAgICAgfQogICAgICBleGVjdXRlUG9zdFRhc2tzKCkgewogICAgICAgIGNvbnN0IGV4ZWN1dG9ycyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgICAgY29uc3QgdGFza09ic2VydmFibGUgPSAoMCwgcnhqc18xLmZyb20pKHRoaXMuX3Rhc2tTY2hlZHVsZXJzKS5waXBlKCgwLCByeGpzXzEuY29uY2F0TWFwKSgoc2NoZWR1bGVyKSA9PiBzY2hlZHVsZXIuZmluYWxpemUoKSksICgwLCByeGpzXzEuY29uY2F0TWFwKSgodGFzaykgPT4gewogICAgICAgICAgY29uc3QgeyBuYW1lLCBvcHRpb25zIH0gPSB0YXNrLmNvbmZpZ3VyYXRpb247CiAgICAgICAgICBjb25zdCBleGVjdXRvciA9IGV4ZWN1dG9ycy5nZXQobmFtZSk7CiAgICAgICAgICBpZiAoZXhlY3V0b3IpIHsKICAgICAgICAgICAgcmV0dXJuIGV4ZWN1dG9yKG9wdGlvbnMsIHRhc2suY29udGV4dCk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gdGhpcy5faG9zdC5jcmVhdGVUYXNrRXhlY3V0b3IobmFtZSkucGlwZSgoMCwgcnhqc18xLmNvbmNhdE1hcCkoKGV4ZWN1dG9yMikgPT4gewogICAgICAgICAgICBleGVjdXRvcnMuc2V0KG5hbWUsIGV4ZWN1dG9yMik7CiAgICAgICAgICAgIHJldHVybiBleGVjdXRvcjIob3B0aW9ucywgdGFzay5jb250ZXh0KTsKICAgICAgICAgIH0pKTsKICAgICAgICB9KSk7CiAgICAgICAgcmV0dXJuIHRhc2tPYnNlcnZhYmxlOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuU2NoZW1hdGljRW5naW5lID0gU2NoZW1hdGljRW5naW5lOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtYjVlMmZkMjIyZi56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9lbmdpbmUvaW50ZXJmYWNlLmpzCnZhciByZXF1aXJlX2ludGVyZmFjZTQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LWI1ZTJmZDIyMmYuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2ludGVyZmFjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtYjVlMmZkMjIyZi56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9lbmdpbmUvaW5kZXguanMKdmFyIHJlcXVpcmVfZW5naW5lMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtYjVlMmZkMjIyZi56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9lbmdpbmUvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2VuZ2luZSgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9pbnRlcmZhY2U0KCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3NjaGVtYXRpYygpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8wL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi03ZDgxZmQxMDQ3LnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvbm9kZS9jbGktbG9nZ2VyLmpzCnZhciByZXF1aXJlX2NsaV9sb2dnZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9ub2RlL2NsaS1sb2dnZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNyZWF0ZUNvbnNvbGVMb2dnZXIgPSBjcmVhdGVDb25zb2xlTG9nZ2VyOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgc3JjXzEgPSByZXF1aXJlX3NyYygpOwogICAgZnVuY3Rpb24gY3JlYXRlQ29uc29sZUxvZ2dlcih2ZXJib3NlID0gZmFsc2UsIHN0ZG91dCA9IHByb2Nlc3Muc3Rkb3V0LCBzdGRlcnIgPSBwcm9jZXNzLnN0ZGVyciwgY29sb3JzKSB7CiAgICAgIGNvbnN0IGxvZ2dlciA9IG5ldyBzcmNfMS5sb2dnaW5nLkluZGVudExvZ2dlcigiY2xpbmciKTsKICAgICAgbG9nZ2VyLnBpcGUoKDAsIHJ4anNfMS5maWx0ZXIpKChlbnRyeSkgPT4gZW50cnkubGV2ZWwgIT09ICJkZWJ1ZyIgfHwgdmVyYm9zZSkpLnN1YnNjcmliZSgoZW50cnkpID0+IHsKICAgICAgICBjb25zdCBjb2xvciA9IGNvbG9ycyAmJiBjb2xvcnNbZW50cnkubGV2ZWxdOwogICAgICAgIGxldCBvdXRwdXQgPSBzdGRvdXQ7CiAgICAgICAgc3dpdGNoIChlbnRyeS5sZXZlbCkgewogICAgICAgICAgY2FzZSAid2FybiI6CiAgICAgICAgICBjYXNlICJmYXRhbCI6CiAgICAgICAgICBjYXNlICJlcnJvciI6CiAgICAgICAgICAgIG91dHB1dCA9IHN0ZGVycjsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGNodW5rU2l6ZSA9IDJlMzsKICAgICAgICBsZXQgbWVzc2FnZSA9IGVudHJ5Lm1lc3NhZ2U7CiAgICAgICAgd2hpbGUgKG1lc3NhZ2UpIHsKICAgICAgICAgIGNvbnN0IGNodW5rID0gbWVzc2FnZS5zbGljZSgwLCBjaHVua1NpemUpOwogICAgICAgICAgbWVzc2FnZSA9IG1lc3NhZ2Uuc2xpY2UoY2h1bmtTaXplKTsKICAgICAgICAgIG91dHB1dC53cml0ZShjb2xvciA/IGNvbG9yKGNodW5rKSA6IGNodW5rKTsKICAgICAgICB9CiAgICAgICAgb3V0cHV0LndyaXRlKCJcbiIpOwogICAgICB9KTsKICAgICAgcmV0dXJuIGxvZ2dlcjsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9ub2RlL2hvc3QuanMKdmFyIHJlcXVpcmVfaG9zdDMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9ub2RlL2hvc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLk5vZGVKc1N5bmNIb3N0ID0gZXhwb3J0czIuTm9kZUpzQXN5bmNIb3N0ID0gdm9pZCAwOwogICAgdmFyIG5vZGVfZnNfMSA9IHJlcXVpcmUoIm5vZGU6ZnMiKTsKICAgIHZhciBub2RlX3BhdGhfMSA9IHJlcXVpcmUoIm5vZGU6cGF0aCIpOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgc3JjXzEgPSByZXF1aXJlX3NyYygpOwogICAgYXN5bmMgZnVuY3Rpb24gZXhpc3RzKHBhdGgpIHsKICAgICAgdHJ5IHsKICAgICAgICBhd2FpdCBub2RlX2ZzXzEucHJvbWlzZXMuYWNjZXNzKHBhdGgsIG5vZGVfZnNfMS5jb25zdGFudHMuRl9PSyk7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0gY2F0Y2ggewogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgfQogICAgdmFyIEZTV2F0Y2hlcjsKICAgIGZ1bmN0aW9uIGxvYWRGU1dhdGNoZXIoKSB7CiAgICAgIGlmICghRlNXYXRjaGVyKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIEZTV2F0Y2hlciA9IHJlcXVpcmUoImNob2tpZGFyIikuRlNXYXRjaGVyOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIGlmIChlLmNvZGUgIT09ICJNT0RVTEVfTk9UX0ZPVU5EIikgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0FzIG9mIGFuZ3VsYXItZGV2a2l0IHZlcnNpb24gOC4wLCB0aGUgImNob2tpZGFyIiBwYWNrYWdlIG11c3QgYmUgaW5zdGFsbGVkIGluIG9yZGVyIHRvIHVzZSB3YXRjaCgpIGZlYXR1cmVzLicpOwogICAgICAgICAgfQogICAgICAgICAgdGhyb3cgZTsKICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIHZhciBOb2RlSnNBc3luY0hvc3QgPSBjbGFzcyB7CiAgICAgIGdldCBjYXBhYmlsaXRpZXMoKSB7CiAgICAgICAgcmV0dXJuIHsgc3luY2hyb25vdXM6IGZhbHNlIH07CiAgICAgIH0KICAgICAgd3JpdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmZyb20pKG5vZGVfZnNfMS5wcm9taXNlcy5ta2RpcigoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkoKDAsIHNyY18xLmRpcm5hbWUpKHBhdGgpKSwgeyByZWN1cnNpdmU6IHRydWUgfSkpLnBpcGUoKDAsIHJ4anNfMS5tZXJnZU1hcCkoKCkgPT4gbm9kZV9mc18xLnByb21pc2VzLndyaXRlRmlsZSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCksIG5ldyBVaW50OEFycmF5KGNvbnRlbnQpKSkpOwogICAgICB9CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmZyb20pKG5vZGVfZnNfMS5wcm9taXNlcy5yZWFkRmlsZSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpKS5waXBlKCgwLCByeGpzXzEubWFwKSgoYnVmZmVyKSA9PiBuZXcgVWludDhBcnJheShidWZmZXIpLmJ1ZmZlcikpOwogICAgICB9CiAgICAgIGRlbGV0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuZnJvbSkobm9kZV9mc18xLnByb21pc2VzLnJtKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSwgeyBmb3JjZTogdHJ1ZSwgcmVjdXJzaXZlOiB0cnVlLCBtYXhSZXRyaWVzOiAzIH0pKTsKICAgICAgfQogICAgICByZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5mcm9tKShub2RlX2ZzXzEucHJvbWlzZXMucmVuYW1lKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShmcm9tKSwgKDAsIHNyY18xLmdldFN5c3RlbVBhdGgpKHRvKSkpOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmZyb20pKG5vZGVfZnNfMS5wcm9taXNlcy5yZWFkZGlyKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSkpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChuYW1lcykgPT4gbmFtZXMubWFwKChuYW1lKSA9PiAoMCwgc3JjXzEuZnJhZ21lbnQpKG5hbWUpKSkpOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuZnJvbSkoZXhpc3RzKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSkpOwogICAgICB9CiAgICAgIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5zdGF0KHBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChzdGF0KSA9PiBzdGF0LmlzRGlyZWN0b3J5KCkpKTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLnN0YXQocGF0aCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKHN0YXQpID0+IHN0YXQuaXNGaWxlKCkpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5mcm9tKShub2RlX2ZzXzEucHJvbWlzZXMuc3RhdCgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCB3YXRjaGluZy4KICAgICAgd2F0Y2gocGF0aCwgX29wdGlvbnMpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIGxvYWRGU1dhdGNoZXIoKTsKICAgICAgICAgIGNvbnN0IHdhdGNoZXIgPSBuZXcgRlNXYXRjaGVyKHsgcGVyc2lzdGVudDogdHJ1ZSB9KTsKICAgICAgICAgIHdhdGNoZXIuYWRkKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSk7CiAgICAgICAgICB3YXRjaGVyLm9uKCJjaGFuZ2UiLCAocGF0aDIpID0+IHsKICAgICAgICAgICAgb2JzLm5leHQoewogICAgICAgICAgICAgIHBhdGg6ICgwLCBzcmNfMS5ub3JtYWxpemUpKHBhdGgyKSwKICAgICAgICAgICAgICB0aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgICAgICB0eXBlOiBzcmNfMS52aXJ0dWFsRnMuSG9zdFdhdGNoRXZlbnRUeXBlLkNoYW5nZWQKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9KS5vbigiYWRkIiwgKHBhdGgyKSA9PiB7CiAgICAgICAgICAgIG9icy5uZXh0KHsKICAgICAgICAgICAgICBwYXRoOiAoMCwgc3JjXzEubm9ybWFsaXplKShwYXRoMiksCiAgICAgICAgICAgICAgdGltZTogLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCksCiAgICAgICAgICAgICAgdHlwZTogc3JjXzEudmlydHVhbEZzLkhvc3RXYXRjaEV2ZW50VHlwZS5DcmVhdGVkCiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSkub24oInVubGluayIsIChwYXRoMikgPT4gewogICAgICAgICAgICBvYnMubmV4dCh7CiAgICAgICAgICAgICAgcGF0aDogKDAsIHNyY18xLm5vcm1hbGl6ZSkocGF0aDIpLAogICAgICAgICAgICAgIHRpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgICAgIHR5cGU6IHNyY18xLnZpcnR1YWxGcy5Ib3N0V2F0Y2hFdmVudFR5cGUuRGVsZXRlZAogICAgICAgICAgICB9KTsKICAgICAgICAgIH0pOwogICAgICAgICAgcmV0dXJuICgpID0+IHsKICAgICAgICAgICAgdm9pZCB3YXRjaGVyLmNsb3NlKCk7CiAgICAgICAgICB9OwogICAgICAgIH0pLnBpcGUoKDAsIHJ4anNfMS5wdWJsaXNoKSgpLCAoMCwgcnhqc18xLnJlZkNvdW50KSgpKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLk5vZGVKc0FzeW5jSG9zdCA9IE5vZGVKc0FzeW5jSG9zdDsKICAgIHZhciBOb2RlSnNTeW5jSG9zdCA9IGNsYXNzIHsKICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4geyBzeW5jaHJvbm91czogdHJ1ZSB9OwogICAgICB9CiAgICAgIHdyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgICgwLCBub2RlX2ZzXzEubWtkaXJTeW5jKSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkoKDAsIHNyY18xLmRpcm5hbWUpKHBhdGgpKSwgeyByZWN1cnNpdmU6IHRydWUgfSk7CiAgICAgICAgICAoMCwgbm9kZV9mc18xLndyaXRlRmlsZVN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSwgbmV3IFVpbnQ4QXJyYXkoY29udGVudCkpOwogICAgICAgICAgb2JzLm5leHQoKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgY29uc3QgYnVmZmVyID0gKDAsIG5vZGVfZnNfMS5yZWFkRmlsZVN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSk7CiAgICAgICAgICBvYnMubmV4dChuZXcgVWludDhBcnJheShidWZmZXIpLmJ1ZmZlcik7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICBkZWxldGUocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgKDAsIG5vZGVfZnNfMS5ybVN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSwgeyBmb3JjZTogdHJ1ZSwgcmVjdXJzaXZlOiB0cnVlLCBtYXhSZXRyaWVzOiAzIH0pOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBjb25zdCB0b1N5c3RlbVBhdGggPSAoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkodG8pOwogICAgICAgICAgKDAsIG5vZGVfZnNfMS5ta2RpclN5bmMpKCgwLCBub2RlX3BhdGhfMS5kaXJuYW1lKSh0b1N5c3RlbVBhdGgpLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTsKICAgICAgICAgICgwLCBub2RlX2ZzXzEucmVuYW1lU3luYykoKDAsIHNyY18xLmdldFN5c3RlbVBhdGgpKGZyb20pLCB0b1N5c3RlbVBhdGgpOwogICAgICAgICAgb2JzLm5leHQoKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgY29uc3QgbmFtZXMgPSAoMCwgbm9kZV9mc18xLnJlYWRkaXJTeW5jKSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpOwogICAgICAgICAgb2JzLm5leHQobmFtZXMubWFwKChuYW1lKSA9PiAoMCwgc3JjXzEuZnJhZ21lbnQpKG5hbWUpKSk7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICBleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgb2JzLm5leHQoKDAsIG5vZGVfZnNfMS5leGlzdHNTeW5jKSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5zdGF0KHBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChzdGF0KSA9PiBzdGF0LmlzRGlyZWN0b3J5KCkpKTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLnN0YXQocGF0aCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKHN0YXQpID0+IHN0YXQuaXNGaWxlKCkpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIG9icy5uZXh0KCgwLCBub2RlX2ZzXzEuc3RhdFN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSkpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgLy8gU29tZSBob3N0cyBtYXkgbm90IHN1cHBvcnQgd2F0Y2hpbmcuCiAgICAgIHdhdGNoKHBhdGgsIF9vcHRpb25zKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBsb2FkRlNXYXRjaGVyKCk7CiAgICAgICAgICBjb25zdCB3YXRjaGVyID0gbmV3IEZTV2F0Y2hlcih7IHBlcnNpc3RlbnQ6IGZhbHNlIH0pOwogICAgICAgICAgd2F0Y2hlci5hZGQoKDAsIHNyY18xLmdldFN5c3RlbVBhdGgpKHBhdGgpKTsKICAgICAgICAgIHdhdGNoZXIub24oImNoYW5nZSIsIChwYXRoMikgPT4gewogICAgICAgICAgICBvYnMubmV4dCh7CiAgICAgICAgICAgICAgcGF0aDogKDAsIHNyY18xLm5vcm1hbGl6ZSkocGF0aDIpLAogICAgICAgICAgICAgIHRpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgICAgIHR5cGU6IHNyY18xLnZpcnR1YWxGcy5Ib3N0V2F0Y2hFdmVudFR5cGUuQ2hhbmdlZAogICAgICAgICAgICB9KTsKICAgICAgICAgIH0pLm9uKCJhZGQiLCAocGF0aDIpID0+IHsKICAgICAgICAgICAgb2JzLm5leHQoewogICAgICAgICAgICAgIHBhdGg6ICgwLCBzcmNfMS5ub3JtYWxpemUpKHBhdGgyKSwKICAgICAgICAgICAgICB0aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgICAgICB0eXBlOiBzcmNfMS52aXJ0dWFsRnMuSG9zdFdhdGNoRXZlbnRUeXBlLkNyZWF0ZWQKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9KS5vbigidW5saW5rIiwgKHBhdGgyKSA9PiB7CiAgICAgICAgICAgIG9icy5uZXh0KHsKICAgICAgICAgICAgICBwYXRoOiAoMCwgc3JjXzEubm9ybWFsaXplKShwYXRoMiksCiAgICAgICAgICAgICAgdGltZTogLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCksCiAgICAgICAgICAgICAgdHlwZTogc3JjXzEudmlydHVhbEZzLkhvc3RXYXRjaEV2ZW50VHlwZS5EZWxldGVkCiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSk7CiAgICAgICAgICByZXR1cm4gKCkgPT4gewogICAgICAgICAgICB2b2lkIHdhdGNoZXIuY2xvc2UoKTsKICAgICAgICAgIH07CiAgICAgICAgfSkucGlwZSgoMCwgcnhqc18xLnB1Ymxpc2gpKCksICgwLCByeGpzXzEucmVmQ291bnQpKCkpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTm9kZUpzU3luY0hvc3QgPSBOb2RlSnNTeW5jSG9zdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9ub2RlL2luZGV4LmpzCnZhciByZXF1aXJlX25vZGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzAvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTdkODFmZDEwNDcuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9ub2RlL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fY3JlYXRlQmluZGluZyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fY3JlYXRlQmluZGluZyB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihtLCBrKTsKICAgICAgaWYgKCFkZXNjIHx8ICgiZ2V0IiBpbiBkZXNjID8gIW0uX19lc01vZHVsZSA6IGRlc2Mud3JpdGFibGUgfHwgZGVzYy5jb25maWd1cmFibGUpKSB7CiAgICAgICAgZGVzYyA9IHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBtW2tdOwogICAgICAgIH0gfTsKICAgICAgfQogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgazIsIGRlc2MpOwogICAgfSA6IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIG9bazJdID0gbVtrXTsKICAgIH0pOwogICAgdmFyIF9fZXhwb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXhwb3J0U3RhciB8fCBmdW5jdGlvbihtLCBleHBvcnRzMykgewogICAgICBmb3IgKHZhciBwIGluIG0pIGlmIChwICE9PSAiZGVmYXVsdCIgJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChleHBvcnRzMywgcCkpIF9fY3JlYXRlQmluZGluZyhleHBvcnRzMywgbSwgcCk7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9jbGlfbG9nZ2VyKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2hvc3QzKCksIGV4cG9ydHMyKTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LWI1ZTJmZDIyMmYuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9hY3Rpb24uanMKdmFyIHJlcXVpcmVfYWN0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC1iNWUyZmQyMjJmLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvYWN0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5BY3Rpb25MaXN0ID0gZXhwb3J0czIuVW5rbm93bkFjdGlvbkV4Y2VwdGlvbiA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLmlzQ29udGVudEFjdGlvbiA9IGlzQ29udGVudEFjdGlvbjsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgdmFyIFVua25vd25BY3Rpb25FeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IoYWN0aW9uKSB7CiAgICAgICAgc3VwZXIoYFVua25vd24gYWN0aW9uOiAiJHthY3Rpb24ua2luZH0iLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVW5rbm93bkFjdGlvbkV4Y2VwdGlvbiA9IFVua25vd25BY3Rpb25FeGNlcHRpb247CiAgICB2YXIgX2lkID0gMTsKICAgIHZhciBBY3Rpb25MaXN0ID0gY2xhc3MgewogICAgICBfYWN0aW9ucyA9IFtdOwogICAgICBfYWN0aW9uKGFjdGlvbikgewogICAgICAgIHRoaXMuX2FjdGlvbnMucHVzaCh7CiAgICAgICAgICAuLi5hY3Rpb24sCiAgICAgICAgICBpZDogX2lkKyssCiAgICAgICAgICBwYXJlbnQ6IHRoaXMuX2FjdGlvbnNbdGhpcy5fYWN0aW9ucy5sZW5ndGggLSAxXT8uaWQgPz8gMAogICAgICAgIH0pOwogICAgICB9CiAgICAgIGNyZWF0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgdGhpcy5fYWN0aW9uKHsga2luZDogImMiLCBwYXRoLCBjb250ZW50IH0pOwogICAgICB9CiAgICAgIG92ZXJ3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgdGhpcy5fYWN0aW9uKHsga2luZDogIm8iLCBwYXRoLCBjb250ZW50IH0pOwogICAgICB9CiAgICAgIHJlbmFtZShwYXRoLCB0bykgewogICAgICAgIHRoaXMuX2FjdGlvbih7IGtpbmQ6ICJyIiwgcGF0aCwgdG8gfSk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICB0aGlzLl9hY3Rpb24oeyBraW5kOiAiZCIsIHBhdGggfSk7CiAgICAgIH0KICAgICAgb3B0aW1pemUoKSB7CiAgICAgICAgY29uc3QgdG9DcmVhdGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICAgIGNvbnN0IHRvUmVuYW1lID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgICBjb25zdCB0b092ZXJ3cml0ZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgICAgY29uc3QgdG9EZWxldGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICAgIGZvciAoY29uc3QgYWN0aW9uIG9mIHRoaXMuX2FjdGlvbnMpIHsKICAgICAgICAgIHN3aXRjaCAoYWN0aW9uLmtpbmQpIHsKICAgICAgICAgICAgY2FzZSAiYyI6CiAgICAgICAgICAgICAgdG9DcmVhdGUuc2V0KGFjdGlvbi5wYXRoLCBhY3Rpb24uY29udGVudCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgIm8iOgogICAgICAgICAgICAgIGlmICh0b0NyZWF0ZS5oYXMoYWN0aW9uLnBhdGgpKSB7CiAgICAgICAgICAgICAgICB0b0NyZWF0ZS5zZXQoYWN0aW9uLnBhdGgsIGFjdGlvbi5jb250ZW50KTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgdG9PdmVyd3JpdGUuc2V0KGFjdGlvbi5wYXRoLCBhY3Rpb24uY29udGVudCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlICJkIjoKICAgICAgICAgICAgICB0b0RlbGV0ZS5hZGQoYWN0aW9uLnBhdGgpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlICJyIjogewogICAgICAgICAgICAgIGNvbnN0IG1heWJlQ3JlYXRlID0gdG9DcmVhdGUuZ2V0KGFjdGlvbi5wYXRoKTsKICAgICAgICAgICAgICBjb25zdCBtYXliZU92ZXJ3cml0ZSA9IHRvT3ZlcndyaXRlLmdldChhY3Rpb24ucGF0aCk7CiAgICAgICAgICAgICAgaWYgKG1heWJlQ3JlYXRlKSB7CiAgICAgICAgICAgICAgICB0b0NyZWF0ZS5kZWxldGUoYWN0aW9uLnBhdGgpOwogICAgICAgICAgICAgICAgdG9DcmVhdGUuc2V0KGFjdGlvbi50bywgbWF5YmVDcmVhdGUpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAobWF5YmVPdmVyd3JpdGUpIHsKICAgICAgICAgICAgICAgIHRvT3ZlcndyaXRlLmRlbGV0ZShhY3Rpb24ucGF0aCk7CiAgICAgICAgICAgICAgICB0b092ZXJ3cml0ZS5zZXQoYWN0aW9uLnRvLCBtYXliZU92ZXJ3cml0ZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGxldCBtYXliZVJlbmFtZSA9IHZvaWQgMDsKICAgICAgICAgICAgICBmb3IgKGNvbnN0IFtmcm9tLCB0b10gb2YgdG9SZW5hbWUuZW50cmllcygpKSB7CiAgICAgICAgICAgICAgICBpZiAodG8gPT0gYWN0aW9uLnBhdGgpIHsKICAgICAgICAgICAgICAgICAgbWF5YmVSZW5hbWUgPSBmcm9tOwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKG1heWJlUmVuYW1lKSB7CiAgICAgICAgICAgICAgICB0b1JlbmFtZS5zZXQobWF5YmVSZW5hbWUsIGFjdGlvbi50byk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICghbWF5YmVDcmVhdGUgJiYgIW1heWJlT3ZlcndyaXRlICYmICFtYXliZVJlbmFtZSkgewogICAgICAgICAgICAgICAgdG9SZW5hbWUuc2V0KGFjdGlvbi5wYXRoLCBhY3Rpb24udG8pOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICB0aGlzLl9hY3Rpb25zID0gW107CiAgICAgICAgdG9EZWxldGUuZm9yRWFjaCgoeCkgPT4gewogICAgICAgICAgdGhpcy5kZWxldGUoeCk7CiAgICAgICAgfSk7CiAgICAgICAgdG9SZW5hbWUuZm9yRWFjaCgodG8sIGZyb20pID0+IHsKICAgICAgICAgIHRoaXMucmVuYW1lKGZyb20sIHRvKTsKICAgICAgICB9KTsKICAgICAgICB0b0NyZWF0ZS5mb3JFYWNoKChjb250ZW50LCBwYXRoKSA9PiB7CiAgICAgICAgICB0aGlzLmNyZWF0ZShwYXRoLCBjb250ZW50KTsKICAgICAgICB9KTsKICAgICAgICB0b092ZXJ3cml0ZS5mb3JFYWNoKChjb250ZW50LCBwYXRoKSA9PiB7CiAgICAgICAgICB0aGlzLm92ZXJ3cml0ZShwYXRoLCBjb250ZW50KTsKICAgICAgICB9KTsKICAgICAgfQogICAgICBwdXNoKGFjdGlvbikgewogICAgICAgIHRoaXMuX2FjdGlvbnMucHVzaChhY3Rpb24pOwogICAgICB9CiAgICAgIGdldChpKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2FjdGlvbnNbaV07CiAgICAgIH0KICAgICAgaGFzKGFjdGlvbikgewogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5fYWN0aW9ucy5sZW5ndGg7IGkrKykgewogICAgICAgICAgY29uc3QgYSA9IHRoaXMuX2FjdGlvbnNbaV07CiAgICAgICAgICBpZiAoYS5pZCA9PSBhY3Rpb24uaWQpIHsKICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoYS5pZCA+IGFjdGlvbi5pZCkgewogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgICBmaW5kKHByZWRpY2F0ZSkgewogICAgICAgIHJldHVybiB0aGlzLl9hY3Rpb25zLmZpbmQocHJlZGljYXRlKSB8fCBudWxsOwogICAgICB9CiAgICAgIGZvckVhY2goZm4sIHRoaXNBcmcpIHsKICAgICAgICB0aGlzLl9hY3Rpb25zLmZvckVhY2goZm4sIHRoaXNBcmcpOwogICAgICB9CiAgICAgIGdldCBsZW5ndGgoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2FjdGlvbnMubGVuZ3RoOwogICAgICB9CiAgICAgIFtTeW1ib2wuaXRlcmF0b3JdKCkgewogICAgICAgIHJldHVybiB0aGlzLl9hY3Rpb25zW1N5bWJvbC5pdGVyYXRvcl0oKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkFjdGlvbkxpc3QgPSBBY3Rpb25MaXN0OwogICAgZnVuY3Rpb24gaXNDb250ZW50QWN0aW9uKGFjdGlvbikgewogICAgICByZXR1cm4gYWN0aW9uLmtpbmQgPT0gImMiIHx8IGFjdGlvbi5raW5kID09ICJvIjsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LWI1ZTJmZDIyMmYuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvc2luay9zaW5rLmpzCnZhciByZXF1aXJlX3NpbmsgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LWI1ZTJmZDIyMmYuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvc2luay9zaW5rLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TaW1wbGVTaW5rQmFzZSA9IHZvaWQgMDsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24yKCk7CiAgICB2YXIgYWN0aW9uXzEgPSByZXF1aXJlX2FjdGlvbigpOwogICAgdmFyIE5vb3AgPSBmdW5jdGlvbigpIHsKICAgIH07CiAgICB2YXIgU2ltcGxlU2lua0Jhc2UgPSBjbGFzcyB7CiAgICAgIHByZUNvbW1pdEFjdGlvbiA9IE5vb3A7CiAgICAgIHBvc3RDb21taXRBY3Rpb24gPSBOb29wOwogICAgICBwcmVDb21taXQgPSBOb29wOwogICAgICBwb3N0Q29tbWl0ID0gTm9vcDsKICAgICAgX2ZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24ocGF0aCkgewogICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICB9CiAgICAgIF9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpIHsKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgfQogICAgICBfdmFsaWRhdGVPdmVyd3JpdGVBY3Rpb24oYWN0aW9uKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlRmlsZUV4aXN0cyhhY3Rpb24ucGF0aCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKGIpID0+IHsKICAgICAgICAgIGlmICghYikgewogICAgICAgICAgICB0aGlzLl9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKGFjdGlvbi5wYXRoKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH0KICAgICAgX3ZhbGlkYXRlQ3JlYXRlQWN0aW9uKGFjdGlvbikgewogICAgICAgIHJldHVybiB0aGlzLl92YWxpZGF0ZUZpbGVFeGlzdHMoYWN0aW9uLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChiKSA9PiB7CiAgICAgICAgICBpZiAoYikgewogICAgICAgICAgICB0aGlzLl9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKGFjdGlvbi5wYXRoKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH0KICAgICAgX3ZhbGlkYXRlUmVuYW1lQWN0aW9uKGFjdGlvbikgewogICAgICAgIHJldHVybiB0aGlzLl92YWxpZGF0ZUZpbGVFeGlzdHMoYWN0aW9uLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChiKSA9PiB7CiAgICAgICAgICBpZiAoIWIpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihhY3Rpb24ucGF0aCk7CiAgICAgICAgICB9CiAgICAgICAgfSksICgwLCByeGpzXzEubWVyZ2VNYXApKCgpID0+IHRoaXMuX3ZhbGlkYXRlRmlsZUV4aXN0cyhhY3Rpb24udG8pKSwgKDAsIHJ4anNfMS5tYXApKChiKSA9PiB7CiAgICAgICAgICBpZiAoYikgewogICAgICAgICAgICB0aGlzLl9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKGFjdGlvbi50byk7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICB9CiAgICAgIF92YWxpZGF0ZURlbGV0ZUFjdGlvbihhY3Rpb24pIHsKICAgICAgICByZXR1cm4gdGhpcy5fdmFsaWRhdGVGaWxlRXhpc3RzKGFjdGlvbi5wYXRoKS5waXBlKCgwLCByeGpzXzEubWFwKSgoYikgPT4gewogICAgICAgICAgaWYgKCFiKSB7CiAgICAgICAgICAgIHRoaXMuX2ZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24oYWN0aW9uLnBhdGgpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfQogICAgICB2YWxpZGF0ZVNpbmdsZUFjdGlvbihhY3Rpb24pIHsKICAgICAgICBzd2l0Y2ggKGFjdGlvbi5raW5kKSB7CiAgICAgICAgICBjYXNlICJvIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlT3ZlcndyaXRlQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBjYXNlICJjIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlQ3JlYXRlQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBjYXNlICJyIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlUmVuYW1lQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBjYXNlICJkIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlRGVsZXRlQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICB0aHJvdyBuZXcgYWN0aW9uXzEuVW5rbm93bkFjdGlvbkV4Y2VwdGlvbihhY3Rpb24pOwogICAgICAgIH0KICAgICAgfQogICAgICBjb21taXRTaW5nbGVBY3Rpb24oYWN0aW9uKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSh0aGlzLnZhbGlkYXRlU2luZ2xlQWN0aW9uKGFjdGlvbiksIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzZXJ2ZXIpID0+IHsKICAgICAgICAgIGxldCBjb21taXR0ZWQgPSBudWxsOwogICAgICAgICAgc3dpdGNoIChhY3Rpb24ua2luZCkgewogICAgICAgICAgICBjYXNlICJvIjoKICAgICAgICAgICAgICBjb21taXR0ZWQgPSB0aGlzLl9vdmVyd3JpdGVGaWxlKGFjdGlvbi5wYXRoLCBhY3Rpb24uY29udGVudCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgImMiOgogICAgICAgICAgICAgIGNvbW1pdHRlZCA9IHRoaXMuX2NyZWF0ZUZpbGUoYWN0aW9uLnBhdGgsIGFjdGlvbi5jb250ZW50KTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiciI6CiAgICAgICAgICAgICAgY29tbWl0dGVkID0gdGhpcy5fcmVuYW1lRmlsZShhY3Rpb24ucGF0aCwgYWN0aW9uLnRvKTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiZCI6CiAgICAgICAgICAgICAgY29tbWl0dGVkID0gdGhpcy5fZGVsZXRlRmlsZShhY3Rpb24ucGF0aCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoY29tbWl0dGVkKSB7CiAgICAgICAgICAgIGNvbW1pdHRlZC5zdWJzY3JpYmUob2JzZXJ2ZXIpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9KSkucGlwZSgoMCwgcnhqc18xLmlnbm9yZUVsZW1lbnRzKSgpKTsKICAgICAgfQogICAgICBjb21taXQodHJlZSkgewogICAgICAgIGNvbnN0IGFjdGlvbnMgPSAoMCwgcnhqc18xLmZyb20pKHRyZWUuYWN0aW9ucyk7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSh0aGlzLnByZUNvbW1pdCgpIHx8ICgwLCByeGpzXzEub2YpKG51bGwpLCAoMCwgcnhqc18xLmRlZmVyKSgoKSA9PiBhY3Rpb25zKS5waXBlKCgwLCByeGpzXzEuY29uY2F0TWFwKSgoYWN0aW9uKSA9PiB7CiAgICAgICAgICBjb25zdCBtYXliZUFjdGlvbiA9IHRoaXMucHJlQ29tbWl0QWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBpZiAoKDAsIHJ4anNfMS5pc09ic2VydmFibGUpKG1heWJlQWN0aW9uKSB8fCBpc1Byb21pc2VMaWtlKG1heWJlQWN0aW9uKSkgewogICAgICAgICAgICByZXR1cm4gbWF5YmVBY3Rpb247CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikobWF5YmVBY3Rpb24gfHwgYWN0aW9uKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS5jb25jYXRNYXApKChhY3Rpb24pID0+IHsKICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkodGhpcy5jb21taXRTaW5nbGVBY3Rpb24oYWN0aW9uKS5waXBlKCgwLCByeGpzXzEuaWdub3JlRWxlbWVudHMpKCkpLCAoMCwgcnhqc18xLm9mKShhY3Rpb24pKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS5jb25jYXRNYXApKChhY3Rpb24pID0+IHRoaXMucG9zdENvbW1pdEFjdGlvbihhY3Rpb24pIHx8ICgwLCByeGpzXzEub2YpKG51bGwpKSksICgwLCByeGpzXzEuZGVmZXIpKCgpID0+IHRoaXMuX2RvbmUoKSksICgwLCByeGpzXzEuZGVmZXIpKCgpID0+IHRoaXMucG9zdENvbW1pdCgpIHx8ICgwLCByeGpzXzEub2YpKG51bGwpKSkucGlwZSgoMCwgcnhqc18xLmlnbm9yZUVsZW1lbnRzKSgpLCAoMCwgcnhqc18xLmRlZmF1bHRJZkVtcHR5KSh2b2lkIDApKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNpbXBsZVNpbmtCYXNlID0gU2ltcGxlU2lua0Jhc2U7CiAgICBmdW5jdGlvbiBpc1Byb21pc2VMaWtlKHZhbHVlKSB7CiAgICAgIHJldHVybiAhIXZhbHVlICYmIHR5cGVvZiB2YWx1ZS50aGVuID09PSAiZnVuY3Rpb24iOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtYjVlMmZkMjIyZi56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL2hvc3QuanMKdmFyIHJlcXVpcmVfaG9zdDQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LWI1ZTJmZDIyMmYuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvc2luay9ob3N0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Ib3N0U2luayA9IHZvaWQgMDsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIHNpbmtfMSA9IHJlcXVpcmVfc2luaygpOwogICAgdmFyIEhvc3RTaW5rID0gY2xhc3MgZXh0ZW5kcyBzaW5rXzEuU2ltcGxlU2lua0Jhc2UgewogICAgICBfaG9zdDsKICAgICAgX2ZvcmNlOwogICAgICBfZmlsZXNUb0RlbGV0ZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIF9maWxlc1RvUmVuYW1lID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgX2ZpbGVzVG9DcmVhdGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICBfZmlsZXNUb1VwZGF0ZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIGNvbnN0cnVjdG9yKF9ob3N0LCBfZm9yY2UgPSBmYWxzZSkgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5faG9zdCA9IF9ob3N0OwogICAgICAgIHRoaXMuX2ZvcmNlID0gX2ZvcmNlOwogICAgICB9CiAgICAgIF92YWxpZGF0ZUNyZWF0ZUFjdGlvbihhY3Rpb24pIHsKICAgICAgICByZXR1cm4gdGhpcy5fZm9yY2UgPyByeGpzXzEuRU1QVFkgOiBzdXBlci5fdmFsaWRhdGVDcmVhdGVBY3Rpb24oYWN0aW9uKTsKICAgICAgfQogICAgICBfdmFsaWRhdGVGaWxlRXhpc3RzKHApIHsKICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0NyZWF0ZS5oYXMocCkgfHwgdGhpcy5fZmlsZXNUb1VwZGF0ZS5oYXMocCkpIHsKICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKSh0cnVlKTsKICAgICAgICB9CiAgICAgICAgaWYgKHRoaXMuX2ZpbGVzVG9EZWxldGUuaGFzKHApKSB7CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikoZmFsc2UpOwogICAgICAgIH0KICAgICAgICBmb3IgKGNvbnN0IFtmcm9tLCB0b10gb2YgdGhpcy5fZmlsZXNUb1JlbmFtZS52YWx1ZXMoKSkgewogICAgICAgICAgc3dpdGNoIChwKSB7CiAgICAgICAgICAgIGNhc2UgZnJvbToKICAgICAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikoZmFsc2UpOwogICAgICAgICAgICBjYXNlIHRvOgogICAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKSh0cnVlKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX2hvc3QuZXhpc3RzKHApOwogICAgICB9CiAgICAgIF9vdmVyd3JpdGVGaWxlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICB0aGlzLl9maWxlc1RvVXBkYXRlLnNldChwYXRoLCBjb250ZW50KTsKICAgICAgICByZXR1cm4gcnhqc18xLkVNUFRZOwogICAgICB9CiAgICAgIF9jcmVhdGVGaWxlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICB0aGlzLl9maWxlc1RvQ3JlYXRlLnNldChwYXRoLCBjb250ZW50KTsKICAgICAgICByZXR1cm4gcnhqc18xLkVNUFRZOwogICAgICB9CiAgICAgIF9yZW5hbWVGaWxlKGZyb20sIHRvKSB7CiAgICAgICAgdGhpcy5fZmlsZXNUb1JlbmFtZS5hZGQoW2Zyb20sIHRvXSk7CiAgICAgICAgcmV0dXJuIHJ4anNfMS5FTVBUWTsKICAgICAgfQogICAgICBfZGVsZXRlRmlsZShwYXRoKSB7CiAgICAgICAgaWYgKHRoaXMuX2ZpbGVzVG9DcmVhdGUuaGFzKHBhdGgpKSB7CiAgICAgICAgICB0aGlzLl9maWxlc1RvQ3JlYXRlLmRlbGV0ZShwYXRoKTsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9VcGRhdGUuZGVsZXRlKHBhdGgpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLl9maWxlc1RvRGVsZXRlLmFkZChwYXRoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJ4anNfMS5FTVBUWTsKICAgICAgfQogICAgICBfZG9uZSgpIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5jb25jYXQpKCgwLCByeGpzXzEuZnJvbSkoWy4uLnRoaXMuX2ZpbGVzVG9EZWxldGUudmFsdWVzKCldKS5waXBlKCgwLCByeGpzXzEuY29uY2F0TWFwKSgocGF0aCkgPT4gdGhpcy5faG9zdC5kZWxldGUocGF0aCkpKSwgKDAsIHJ4anNfMS5mcm9tKShbLi4udGhpcy5fZmlsZXNUb1JlbmFtZS5lbnRyaWVzKCldKS5waXBlKCgwLCByeGpzXzEuY29uY2F0TWFwKSgoW18sIFtwYXRoLCB0b11dKSA9PiB0aGlzLl9ob3N0LnJlbmFtZShwYXRoLCB0bykpKSwgKDAsIHJ4anNfMS5mcm9tKShbLi4udGhpcy5fZmlsZXNUb0NyZWF0ZS5lbnRyaWVzKCldKS5waXBlKCgwLCByeGpzXzEuY29uY2F0TWFwKSgoW3BhdGgsIGJ1ZmZlcl0pID0+IHRoaXMuX2hvc3Qud3JpdGUocGF0aCwgYnVmZmVyKSkpLCAoMCwgcnhqc18xLmZyb20pKFsuLi50aGlzLl9maWxlc1RvVXBkYXRlLmVudHJpZXMoKV0pLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChbcGF0aCwgYnVmZmVyXSkgPT4gdGhpcy5faG9zdC53cml0ZShwYXRoLCBidWZmZXIpKSkpLnBpcGUoKDAsIHJ4anNfMS5yZWR1Y2UpKCgpID0+IHsKICAgICAgICB9KSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Ib3N0U2luayA9IEhvc3RTaW5rOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtYjVlMmZkMjIyZi56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL2RyeXJ1bi5qcwp2YXIgcmVxdWlyZV9kcnlydW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LWI1ZTJmZDIyMmYuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvc2luay9kcnlydW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkRyeVJ1blNpbmsgPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciBub2RlXzEgPSByZXF1aXJlX25vZGUoKTsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGhvc3RfMSA9IHJlcXVpcmVfaG9zdDQoKTsKICAgIHZhciBEcnlSdW5TaW5rID0gY2xhc3MgZXh0ZW5kcyBob3N0XzEuSG9zdFNpbmsgewogICAgICBfc3ViamVjdCA9IG5ldyByeGpzXzEuU3ViamVjdCgpOwogICAgICBfZmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvblNldCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIF9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uU2V0ID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgcmVwb3J0ZXIgPSB0aGlzLl9zdWJqZWN0LmFzT2JzZXJ2YWJsZSgpOwogICAgICBjb25zdHJ1Y3Rvcihob3N0LCBmb3JjZSA9IGZhbHNlKSB7CiAgICAgICAgc3VwZXIodHlwZW9mIGhvc3QgPT0gInN0cmluZyIgPyBuZXcgY29yZV8xLnZpcnR1YWxGcy5TY29wZWRIb3N0KG5ldyBub2RlXzEuTm9kZUpzU3luY0hvc3QoKSwgKDAsIGNvcmVfMS5ub3JtYWxpemUpKGhvc3QpKSA6IGhvc3QsIGZvcmNlKTsKICAgICAgfQogICAgICBfZmlsZUFscmVhZHlFeGlzdEV4Y2VwdGlvbihwYXRoKSB7CiAgICAgICAgdGhpcy5fZmlsZUFscmVhZHlFeGlzdEV4Y2VwdGlvblNldC5hZGQocGF0aCk7CiAgICAgIH0KICAgICAgX2ZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCkgewogICAgICAgIHRoaXMuX2ZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb25TZXQuYWRkKHBhdGgpOwogICAgICB9CiAgICAgIF9kb25lKCkgewogICAgICAgIHRoaXMuX2ZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb25TZXQuZm9yRWFjaCgocGF0aCkgPT4gewogICAgICAgICAgdGhpcy5fc3ViamVjdC5uZXh0KHsKICAgICAgICAgICAga2luZDogImVycm9yIiwKICAgICAgICAgICAgZGVzY3JpcHRpb246ICJhbHJlYWR5RXhpc3QiLAogICAgICAgICAgICBwYXRoCiAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgICB0aGlzLl9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uU2V0LmZvckVhY2goKHBhdGgpID0+IHsKICAgICAgICAgIHRoaXMuX3N1YmplY3QubmV4dCh7CiAgICAgICAgICAgIGtpbmQ6ICJlcnJvciIsCiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAiZG9lc05vdEV4aXN0IiwKICAgICAgICAgICAgcGF0aAogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgdGhpcy5fZmlsZXNUb0RlbGV0ZS5mb3JFYWNoKChwYXRoKSA9PiB7CiAgICAgICAgICBmb3IgKGNvbnN0IFtmcm9tXSBvZiB0aGlzLl9maWxlc1RvUmVuYW1lKSB7CiAgICAgICAgICAgIGlmIChmcm9tID09IHBhdGgpIHsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHRoaXMuX3N1YmplY3QubmV4dCh7IGtpbmQ6ICJkZWxldGUiLCBwYXRoIH0pOwogICAgICAgIH0pOwogICAgICAgIHRoaXMuX2ZpbGVzVG9SZW5hbWUuZm9yRWFjaCgoW3BhdGgsIHRvXSkgPT4gewogICAgICAgICAgdGhpcy5fc3ViamVjdC5uZXh0KHsga2luZDogInJlbmFtZSIsIHBhdGgsIHRvIH0pOwogICAgICAgIH0pOwogICAgICAgIHRoaXMuX2ZpbGVzVG9DcmVhdGUuZm9yRWFjaCgoY29udGVudCwgcGF0aCkgPT4gewogICAgICAgICAgZm9yIChjb25zdCBbLCB0b10gb2YgdGhpcy5fZmlsZXNUb1JlbmFtZSkgewogICAgICAgICAgICBpZiAodG8gPT0gcGF0aCkgewogICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKHRoaXMuX2ZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb25TZXQuaGFzKHBhdGgpIHx8IHRoaXMuX2ZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb25TZXQuaGFzKHBhdGgpKSB7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIHRoaXMuX3N1YmplY3QubmV4dCh7IGtpbmQ6ICJjcmVhdGUiLCBwYXRoLCBjb250ZW50IH0pOwogICAgICAgIH0pOwogICAgICAgIHRoaXMuX2ZpbGVzVG9VcGRhdGUuZm9yRWFjaCgoY29udGVudCwgcGF0aCkgPT4gewogICAgICAgICAgdGhpcy5fc3ViamVjdC5uZXh0KHsga2luZDogInVwZGF0ZSIsIHBhdGgsIGNvbnRlbnQgfSk7CiAgICAgICAgfSk7CiAgICAgICAgdGhpcy5fc3ViamVjdC5jb21wbGV0ZSgpOwogICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKSh2b2lkIDApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRHJ5UnVuU2luayA9IERyeVJ1blNpbms7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC1iNWUyZmQyMjJmLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3dvcmtmbG93L2Jhc2UuanMKdmFyIHJlcXVpcmVfYmFzZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtYjVlMmZkMjIyZi56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy93b3JrZmxvdy9iYXNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5CYXNlV29ya2Zsb3cgPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGVuZ2luZV8xID0gcmVxdWlyZV9lbmdpbmUyKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBmb3JtYXRzXzEgPSByZXF1aXJlX2Zvcm1hdHMyKCk7CiAgICB2YXIgZHJ5cnVuXzEgPSByZXF1aXJlX2RyeXJ1bigpOwogICAgdmFyIGhvc3RfMSA9IHJlcXVpcmVfaG9zdDQoKTsKICAgIHZhciBob3N0X3RyZWVfMSA9IHJlcXVpcmVfaG9zdF90cmVlKCk7CiAgICB2YXIgQmFzZVdvcmtmbG93ID0gY2xhc3MgewogICAgICBfZW5naW5lOwogICAgICBfZW5naW5lSG9zdDsKICAgICAgX3JlZ2lzdHJ5OwogICAgICBfaG9zdDsKICAgICAgX3JlcG9ydGVyID0gbmV3IHJ4anNfMS5TdWJqZWN0KCk7CiAgICAgIF9saWZlQ3ljbGUgPSBuZXcgcnhqc18xLlN1YmplY3QoKTsKICAgICAgX2NvbnRleHQ7CiAgICAgIF9mb3JjZTsKICAgICAgX2RyeVJ1bjsKICAgICAgY29uc3RydWN0b3Iob3B0aW9ucykgewogICAgICAgIHRoaXMuX2hvc3QgPSBvcHRpb25zLmhvc3Q7CiAgICAgICAgdGhpcy5fZW5naW5lSG9zdCA9IG9wdGlvbnMuZW5naW5lSG9zdDsKICAgICAgICBpZiAob3B0aW9ucy5yZWdpc3RyeSkgewogICAgICAgICAgdGhpcy5fcmVnaXN0cnkgPSBvcHRpb25zLnJlZ2lzdHJ5OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLl9yZWdpc3RyeSA9IG5ldyBjb3JlXzEuc2NoZW1hLkNvcmVTY2hlbWFSZWdpc3RyeShmb3JtYXRzXzEuc3RhbmRhcmRGb3JtYXRzKTsKICAgICAgICAgIHRoaXMuX3JlZ2lzdHJ5LmFkZFBvc3RUcmFuc2Zvcm0oY29yZV8xLnNjaGVtYS50cmFuc2Zvcm1zLmFkZFVuZGVmaW5lZERlZmF1bHRzKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fZW5naW5lID0gbmV3IGVuZ2luZV8xLlNjaGVtYXRpY0VuZ2luZSh0aGlzLl9lbmdpbmVIb3N0LCB0aGlzKTsKICAgICAgICB0aGlzLl9jb250ZXh0ID0gW107CiAgICAgICAgdGhpcy5fZm9yY2UgPSBvcHRpb25zLmZvcmNlIHx8IGZhbHNlOwogICAgICAgIHRoaXMuX2RyeVJ1biA9IG9wdGlvbnMuZHJ5UnVuIHx8IGZhbHNlOwogICAgICB9CiAgICAgIGdldCBjb250ZXh0KCkgewogICAgICAgIGNvbnN0IG1heWJlQ29udGV4dCA9IHRoaXMuX2NvbnRleHRbdGhpcy5fY29udGV4dC5sZW5ndGggLSAxXTsKICAgICAgICBpZiAoIW1heWJlQ29udGV4dCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgZ2V0IGNvbnRleHQgd2hlbiB3b3JrZmxvdyBpcyBub3QgZXhlY3V0aW5nLi4uIik7CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXliZUNvbnRleHQ7CiAgICAgIH0KICAgICAgZ2V0IGVuZ2luZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZW5naW5lOwogICAgICB9CiAgICAgIGdldCBlbmdpbmVIb3N0KCkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmdpbmVIb3N0OwogICAgICB9CiAgICAgIGdldCByZWdpc3RyeSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcmVnaXN0cnk7CiAgICAgIH0KICAgICAgZ2V0IHJlcG9ydGVyKCkgewogICAgICAgIHJldHVybiB0aGlzLl9yZXBvcnRlci5hc09ic2VydmFibGUoKTsKICAgICAgfQogICAgICBnZXQgbGlmZUN5Y2xlKCkgewogICAgICAgIHJldHVybiB0aGlzLl9saWZlQ3ljbGUuYXNPYnNlcnZhYmxlKCk7CiAgICAgIH0KICAgICAgX2NyZWF0ZVNpbmtzKCkgewogICAgICAgIGxldCBlcnJvciA9IGZhbHNlOwogICAgICAgIGNvbnN0IGRyeVJ1blNpbmsgPSBuZXcgZHJ5cnVuXzEuRHJ5UnVuU2luayh0aGlzLl9ob3N0LCB0aGlzLl9mb3JjZSk7CiAgICAgICAgY29uc3QgZHJ5UnVuU3Vic2NyaWJlciA9IGRyeVJ1blNpbmsucmVwb3J0ZXIuc3Vic2NyaWJlKChldmVudCkgPT4gewogICAgICAgICAgdGhpcy5fcmVwb3J0ZXIubmV4dChldmVudCk7CiAgICAgICAgICBlcnJvciA9IGVycm9yIHx8IGV2ZW50LmtpbmQgPT0gImVycm9yIjsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gWwogICAgICAgICAgZHJ5UnVuU2luaywKICAgICAgICAgIC8vIEFkZCBhIGN1c3RvbSBzaW5rIHRoYXQgY2xlYW4gb3Vyc2VsdmVzIGFuZCB0aHJvd3MgYW4gZXJyb3IgaWYgYW4gZXJyb3IgaGFwcGVuZWQuCiAgICAgICAgICB7CiAgICAgICAgICAgIGNvbW1pdCgpIHsKICAgICAgICAgICAgICBkcnlSdW5TdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgaWYgKGVycm9yKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS50aHJvd0Vycm9yKShuZXcgZXhjZXB0aW9uXzEuVW5zdWNjZXNzZnVsV29ya2Zsb3dFeGVjdXRpb24oKSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKSgpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LAogICAgICAgICAgLy8gT25seSBhZGQgYSBIb3N0U2luayBpZiB0aGlzIGlzIG5vdCBhIGRyeVJ1bi4KICAgICAgICAgIC4uLiF0aGlzLl9kcnlSdW4gPyBbbmV3IGhvc3RfMS5Ib3N0U2luayh0aGlzLl9ob3N0LCB0aGlzLl9mb3JjZSldIDogW10KICAgICAgICBdOwogICAgICB9CiAgICAgIGV4ZWN1dGUob3B0aW9ucykgewogICAgICAgIGNvbnN0IHBhcmVudENvbnRleHQgPSB0aGlzLl9jb250ZXh0W3RoaXMuX2NvbnRleHQubGVuZ3RoIC0gMV07CiAgICAgICAgaWYgKCFwYXJlbnRDb250ZXh0KSB7CiAgICAgICAgICB0aGlzLl9saWZlQ3ljbGUubmV4dCh7IGtpbmQ6ICJzdGFydCIgfSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGNvbGxlY3Rpb24gPSB0aGlzLl9lbmdpbmUuY3JlYXRlQ29sbGVjdGlvbihvcHRpb25zLmNvbGxlY3Rpb24pOwogICAgICAgIGNvbnN0IGFsbG93UHJpdmF0ZSA9IG9wdGlvbnMuYWxsb3dQcml2YXRlIHx8IHBhcmVudENvbnRleHQgJiYgcGFyZW50Q29udGV4dC5jb2xsZWN0aW9uID09PSBvcHRpb25zLmNvbGxlY3Rpb247CiAgICAgICAgY29uc3Qgc2NoZW1hdGljID0gY29sbGVjdGlvbi5jcmVhdGVTY2hlbWF0aWMob3B0aW9ucy5zY2hlbWF0aWMsIGFsbG93UHJpdmF0ZSk7CiAgICAgICAgY29uc3Qgc2lua3MgPSB0aGlzLl9jcmVhdGVTaW5rcygpOwogICAgICAgIHRoaXMuX2xpZmVDeWNsZS5uZXh0KHsga2luZDogIndvcmtmbG93LXN0YXJ0IiB9KTsKICAgICAgICBjb25zdCBjb250ZXh0ID0gewogICAgICAgICAgLi4ub3B0aW9ucywKICAgICAgICAgIGRlYnVnOiBvcHRpb25zLmRlYnVnIHx8IGZhbHNlLAogICAgICAgICAgbG9nZ2VyOiBvcHRpb25zLmxvZ2dlciB8fCBwYXJlbnRDb250ZXh0ICYmIHBhcmVudENvbnRleHQubG9nZ2VyIHx8IG5ldyBjb3JlXzEubG9nZ2luZy5OdWxsTG9nZ2VyKCksCiAgICAgICAgICBwYXJlbnRDb250ZXh0CiAgICAgICAgfTsKICAgICAgICB0aGlzLl9jb250ZXh0LnB1c2goY29udGV4dCk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYy5jYWxsKG9wdGlvbnMub3B0aW9ucywgKDAsIHJ4anNfMS5vZikobmV3IGhvc3RfdHJlZV8xLkhvc3RUcmVlKHRoaXMuX2hvc3QpKSwgeyBsb2dnZXI6IGNvbnRleHQubG9nZ2VyIH0pLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKCh0cmVlKSA9PiB7CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5jb25jYXQpKCgwLCByeGpzXzEuZnJvbSkoc2lua3MpLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChzaW5rKSA9PiBzaW5rLmNvbW1pdCh0cmVlKSksICgwLCByeGpzXzEuaWdub3JlRWxlbWVudHMpKCkpLCAoMCwgcnhqc18xLm9mKSh0cmVlKSk7CiAgICAgICAgfSksICgwLCByeGpzXzEuY29uY2F0TWFwKSgoKSA9PiB7CiAgICAgICAgICBpZiAodGhpcy5fZHJ5UnVuKSB7CiAgICAgICAgICAgIHJldHVybiByeGpzXzEuRU1QVFk7CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLl9saWZlQ3ljbGUubmV4dCh7IGtpbmQ6ICJwb3N0LXRhc2tzLXN0YXJ0IiB9KTsKICAgICAgICAgIHJldHVybiB0aGlzLl9lbmdpbmUuZXhlY3V0ZVBvc3RUYXNrcygpLnBpcGUoKDAsIHJ4anNfMS50YXApKHsgY29tcGxldGU6ICgpID0+IHRoaXMuX2xpZmVDeWNsZS5uZXh0KHsga2luZDogInBvc3QtdGFza3MtZW5kIiB9KSB9KSwgKDAsIHJ4anNfMS5kZWZhdWx0SWZFbXB0eSkodm9pZCAwKSwgKDAsIHJ4anNfMS5sYXN0KSgpKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS50YXApKHsKICAgICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7CiAgICAgICAgICAgIHRoaXMuX2xpZmVDeWNsZS5uZXh0KHsga2luZDogIndvcmtmbG93LWVuZCIgfSk7CiAgICAgICAgICAgIHRoaXMuX2NvbnRleHQucG9wKCk7CiAgICAgICAgICAgIGlmICh0aGlzLl9jb250ZXh0Lmxlbmd0aCA9PSAwKSB7CiAgICAgICAgICAgICAgdGhpcy5fbGlmZUN5Y2xlLm5leHQoeyBraW5kOiAiZW5kIiB9KTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkJhc2VXb3JrZmxvdyA9IEJhc2VXb3JrZmxvdzsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LWI1ZTJmZDIyMmYuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvd29ya2Zsb3cvaW50ZXJmYWNlLmpzCnZhciByZXF1aXJlX2ludGVyZmFjZTUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LWI1ZTJmZDIyMmYuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvd29ya2Zsb3cvaW50ZXJmYWNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC1iNWUyZmQyMjJmLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3dvcmtmbG93L2luZGV4LmpzCnZhciByZXF1aXJlX3dvcmtmbG93ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC1iNWUyZmQyMjJmLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3dvcmtmbG93L2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fY3JlYXRlQmluZGluZyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fY3JlYXRlQmluZGluZyB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihtLCBrKTsKICAgICAgaWYgKCFkZXNjIHx8ICgiZ2V0IiBpbiBkZXNjID8gIW0uX19lc01vZHVsZSA6IGRlc2Mud3JpdGFibGUgfHwgZGVzYy5jb25maWd1cmFibGUpKSB7CiAgICAgICAgZGVzYyA9IHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBtW2tdOwogICAgICAgIH0gfTsKICAgICAgfQogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgazIsIGRlc2MpOwogICAgfSA6IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIG9bazJdID0gbVtrXTsKICAgIH0pOwogICAgdmFyIF9fZXhwb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXhwb3J0U3RhciB8fCBmdW5jdGlvbihtLCBleHBvcnRzMykgewogICAgICBmb3IgKHZhciBwIGluIG0pIGlmIChwICE9PSAiZGVmYXVsdCIgJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChleHBvcnRzMywgcCkpIF9fY3JlYXRlQmluZGluZyhleHBvcnRzMywgbSwgcCk7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9iYXNlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2ludGVyZmFjZTUoKSwgZXhwb3J0czIpOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtYjVlMmZkMjIyZi56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9ydWxlcy9iYXNlLmpzCnZhciByZXF1aXJlX2Jhc2UyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC1iNWUyZmQyMjJmLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL2Jhc2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNvdXJjZSA9IHNvdXJjZTsKICAgIGV4cG9ydHMyLmVtcHR5ID0gZW1wdHk7CiAgICBleHBvcnRzMi5jaGFpbiA9IGNoYWluMjsKICAgIGV4cG9ydHMyLmFwcGx5ID0gYXBwbHkzOwogICAgZXhwb3J0czIubWVyZ2VXaXRoID0gbWVyZ2VXaXRoMjsKICAgIGV4cG9ydHMyLm5vb3AgPSBub29wOwogICAgZXhwb3J0czIuZmlsdGVyID0gZmlsdGVyOwogICAgZXhwb3J0czIuYXNTb3VyY2UgPSBhc1NvdXJjZTsKICAgIGV4cG9ydHMyLmJyYW5jaEFuZE1lcmdlID0gYnJhbmNoQW5kTWVyZ2U7CiAgICBleHBvcnRzMi53aGVuID0gd2hlbjsKICAgIGV4cG9ydHMyLnBhcnRpdGlvbkFwcGx5TWVyZ2UgPSBwYXJ0aXRpb25BcHBseU1lcmdlOwogICAgZXhwb3J0czIuZm9yRWFjaCA9IGZvckVhY2g7CiAgICBleHBvcnRzMi5jb21wb3NlRmlsZU9wZXJhdG9ycyA9IGNvbXBvc2VGaWxlT3BlcmF0b3JzOwogICAgZXhwb3J0czIuYXBwbHlUb1N1YnRyZWUgPSBhcHBseVRvU3VidHJlZTsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24yKCk7CiAgICB2YXIgaG9zdF90cmVlXzEgPSByZXF1aXJlX2hvc3RfdHJlZSgpOwogICAgdmFyIGludGVyZmFjZV8xID0gcmVxdWlyZV9pbnRlcmZhY2UzKCk7CiAgICB2YXIgc2NvcGVkXzEgPSByZXF1aXJlX3Njb3BlZDIoKTsKICAgIHZhciBzdGF0aWNfMSA9IHJlcXVpcmVfc3RhdGljKCk7CiAgICB2YXIgY2FsbF8xID0gcmVxdWlyZV9jYWxsKCk7CiAgICBmdW5jdGlvbiBzb3VyY2UodHJlZSkgewogICAgICByZXR1cm4gKCkgPT4gdHJlZTsKICAgIH0KICAgIGZ1bmN0aW9uIGVtcHR5KCkgewogICAgICByZXR1cm4gKCkgPT4gKDAsIHN0YXRpY18xLmVtcHR5KSgpOwogICAgfQogICAgZnVuY3Rpb24gY2hhaW4yKHJ1bGVzKSB7CiAgICAgIHJldHVybiBhc3luYyAoaW5pdGlhbFRyZWUsIGNvbnRleHQpID0+IHsKICAgICAgICBsZXQgaW50ZXJtZWRpYXRlVHJlZTsKICAgICAgICBpZiAoU3ltYm9sLmFzeW5jSXRlcmF0b3IgaW4gcnVsZXMpIHsKICAgICAgICAgIGZvciBhd2FpdCAoY29uc3QgcnVsZSBvZiBydWxlcykgewogICAgICAgICAgICBpbnRlcm1lZGlhdGVUcmVlID0gKDAsIGNhbGxfMS5jYWxsUnVsZSkocnVsZSwgaW50ZXJtZWRpYXRlVHJlZSA/PyBpbml0aWFsVHJlZSwgY29udGV4dCk7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGZvciAoY29uc3QgcnVsZSBvZiBydWxlcykgewogICAgICAgICAgICBpbnRlcm1lZGlhdGVUcmVlID0gKDAsIGNhbGxfMS5jYWxsUnVsZSkocnVsZSwgaW50ZXJtZWRpYXRlVHJlZSA/PyBpbml0aWFsVHJlZSwgY29udGV4dCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiAoKSA9PiBpbnRlcm1lZGlhdGVUcmVlOwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gYXBwbHkzKHNvdXJjZTIsIHJ1bGVzKSB7CiAgICAgIHJldHVybiAoY29udGV4dCkgPT4gKDAsIGNhbGxfMS5jYWxsUnVsZSkoY2hhaW4yKHJ1bGVzKSwgKDAsIGNhbGxfMS5jYWxsU291cmNlKShzb3VyY2UyLCBjb250ZXh0KSwgY29udGV4dCk7CiAgICB9CiAgICBmdW5jdGlvbiBtZXJnZVdpdGgyKHNvdXJjZTIsIHN0cmF0ZWd5ID0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5EZWZhdWx0KSB7CiAgICAgIHJldHVybiAodHJlZSwgY29udGV4dCkgPT4gewogICAgICAgIHJldHVybiAoMCwgY2FsbF8xLmNhbGxTb3VyY2UpKHNvdXJjZTIsIGNvbnRleHQpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChzb3VyY2VUcmVlKSA9PiB0cmVlLm1lcmdlKHNvdXJjZVRyZWUsIHN0cmF0ZWd5IHx8IGNvbnRleHQuc3RyYXRlZ3kpKSwgKDAsIHJ4anNfMS5tYXBUbykodHJlZSkpOwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gbm9vcCgpIHsKICAgICAgcmV0dXJuICgpID0+IHsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGZpbHRlcihwcmVkaWNhdGUpIHsKICAgICAgcmV0dXJuICh0cmVlKSA9PiB7CiAgICAgICAgaWYgKGhvc3RfdHJlZV8xLkhvc3RUcmVlLmlzSG9zdFRyZWUodHJlZSkpIHsKICAgICAgICAgIHJldHVybiBuZXcgaG9zdF90cmVlXzEuRmlsdGVySG9zdFRyZWUodHJlZSwgcHJlZGljYXRlKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlNjaGVtYXRpY3NFeGNlcHRpb24oIlRyZWUgdHlwZSBpcyBub3Qgc3VwcG9ydGVkLiIpOwogICAgICAgIH0KICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGFzU291cmNlKHJ1bGUpIHsKICAgICAgcmV0dXJuIChjb250ZXh0KSA9PiAoMCwgY2FsbF8xLmNhbGxSdWxlKShydWxlLCAoMCwgc3RhdGljXzEuZW1wdHkpKCksIGNvbnRleHQpOwogICAgfQogICAgZnVuY3Rpb24gYnJhbmNoQW5kTWVyZ2UocnVsZSwgc3RyYXRlZ3kgPSBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkRlZmF1bHQpIHsKICAgICAgcmV0dXJuICh0cmVlLCBjb250ZXh0KSA9PiB7CiAgICAgICAgcmV0dXJuICgwLCBjYWxsXzEuY2FsbFJ1bGUpKHJ1bGUsIHRyZWUuYnJhbmNoKCksIGNvbnRleHQpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChicmFuY2gpID0+IHRyZWUubWVyZ2UoYnJhbmNoLCBzdHJhdGVneSB8fCBjb250ZXh0LnN0cmF0ZWd5KSksICgwLCByeGpzXzEubWFwVG8pKHRyZWUpKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHdoZW4ocHJlZGljYXRlLCBvcGVyYXRvcikgewogICAgICByZXR1cm4gKGVudHJ5KSA9PiB7CiAgICAgICAgaWYgKHByZWRpY2F0ZShlbnRyeS5wYXRoLCBlbnRyeSkpIHsKICAgICAgICAgIHJldHVybiBvcGVyYXRvcihlbnRyeSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJldHVybiBlbnRyeTsKICAgICAgICB9CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBwYXJ0aXRpb25BcHBseU1lcmdlKHByZWRpY2F0ZSwgcnVsZVllcywgcnVsZU5vKSB7CiAgICAgIHJldHVybiAodHJlZSwgY29udGV4dCkgPT4gewogICAgICAgIGNvbnN0IFt5ZXMsIG5vXSA9ICgwLCBzdGF0aWNfMS5wYXJ0aXRpb24pKHRyZWUsIHByZWRpY2F0ZSk7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSgoMCwgY2FsbF8xLmNhbGxSdWxlKShydWxlWWVzLCB5ZXMsIGNvbnRleHQpLCAoMCwgY2FsbF8xLmNhbGxSdWxlKShydWxlTm8gfHwgbm9vcCgpLCBubywgY29udGV4dCkpLnBpcGUoKDAsIHJ4anNfMS50b0FycmF5KSgpLCAoMCwgcnhqc18xLm1hcCkoKFt5ZXNUcmVlLCBub1RyZWVdKSA9PiB7CiAgICAgICAgICB5ZXNUcmVlLm1lcmdlKG5vVHJlZSwgY29udGV4dC5zdHJhdGVneSk7CiAgICAgICAgICByZXR1cm4geWVzVHJlZTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBmb3JFYWNoKG9wZXJhdG9yKSB7CiAgICAgIHJldHVybiAodHJlZSkgPT4gewogICAgICAgIHRyZWUudmlzaXQoKHBhdGgsIGVudHJ5KSA9PiB7CiAgICAgICAgICBpZiAoIWVudHJ5KSB7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IG5ld0VudHJ5ID0gb3BlcmF0b3IoZW50cnkpOwogICAgICAgICAgaWYgKG5ld0VudHJ5ID09PSBlbnRyeSkgewogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICB9CiAgICAgICAgICBpZiAobmV3RW50cnkgPT09IG51bGwpIHsKICAgICAgICAgICAgdHJlZS5kZWxldGUocGF0aCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChuZXdFbnRyeS5wYXRoICE9IHBhdGgpIHsKICAgICAgICAgICAgdHJlZS5yZW5hbWUocGF0aCwgbmV3RW50cnkucGF0aCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoIW5ld0VudHJ5LmNvbnRlbnQuZXF1YWxzKGVudHJ5LmNvbnRlbnQpKSB7CiAgICAgICAgICAgIHRyZWUub3ZlcndyaXRlKG5ld0VudHJ5LnBhdGgsIG5ld0VudHJ5LmNvbnRlbnQpOwogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gY29tcG9zZUZpbGVPcGVyYXRvcnMob3BlcmF0b3JzKSB7CiAgICAgIHJldHVybiAoZW50cnkpID0+IHsKICAgICAgICBsZXQgY3VycmVudCA9IGVudHJ5OwogICAgICAgIGZvciAoY29uc3Qgb3Agb2Ygb3BlcmF0b3JzKSB7CiAgICAgICAgICBjdXJyZW50ID0gb3AoY3VycmVudCk7CiAgICAgICAgICBpZiAoY3VycmVudCA9PT0gbnVsbCkgewogICAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIGN1cnJlbnQ7CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBhcHBseVRvU3VidHJlZShwYXRoLCBydWxlcykgewogICAgICByZXR1cm4gKHRyZWUsIGNvbnRleHQpID0+IHsKICAgICAgICBjb25zdCBzY29wZWQgPSBuZXcgc2NvcGVkXzEuU2NvcGVkVHJlZSh0cmVlLCBwYXRoKTsKICAgICAgICByZXR1cm4gKDAsIGNhbGxfMS5jYWxsUnVsZSkoY2hhaW4yKHJ1bGVzKSwgc2NvcGVkLCBjb250ZXh0KS5waXBlKCgwLCByeGpzXzEubWFwKSgocmVzdWx0KSA9PiB7CiAgICAgICAgICBpZiAocmVzdWx0ID09PSBzY29wZWQpIHsKICAgICAgICAgICAgcmV0dXJuIHRyZWU7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuU2NoZW1hdGljc0V4Y2VwdGlvbignT3JpZ2luYWwgdHJlZSBtdXN0IGJlIHJldHVybmVkIGZyb20gYWxsIHJ1bGVzIHdoZW4gdXNpbmcgImFwcGx5VG9TdWJ0cmVlIi4nKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC1iNWUyZmQyMjJmLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL21vdmUuanMKdmFyIHJlcXVpcmVfbW92ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtYjVlMmZkMjIyZi56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9ydWxlcy9tb3ZlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5tb3ZlID0gbW92ZTM7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciBiYXNlXzEgPSByZXF1aXJlX2Jhc2UyKCk7CiAgICBmdW5jdGlvbiBtb3ZlMyhmcm9tLCB0bykgewogICAgICBpZiAodG8gPT09IHZvaWQgMCkgewogICAgICAgIHRvID0gZnJvbTsKICAgICAgICBmcm9tID0gIi8iOwogICAgICB9CiAgICAgIGNvbnN0IGZyb21QYXRoID0gKDAsIGNvcmVfMS5ub3JtYWxpemUpKCIvIiArIGZyb20pOwogICAgICBjb25zdCB0b1BhdGggPSAoMCwgY29yZV8xLm5vcm1hbGl6ZSkoIi8iICsgdG8pOwogICAgICBpZiAoZnJvbVBhdGggPT09IHRvUGF0aCkgewogICAgICAgIHJldHVybiBiYXNlXzEubm9vcDsKICAgICAgfQogICAgICByZXR1cm4gKHRyZWUpID0+IHsKICAgICAgICBpZiAodHJlZS5leGlzdHMoZnJvbVBhdGgpKSB7CiAgICAgICAgICB0cmVlLnJlbmFtZShmcm9tUGF0aCwgdG9QYXRoKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdHJlZS5nZXREaXIoZnJvbVBhdGgpLnZpc2l0KChwYXRoKSA9PiB7CiAgICAgICAgICAgIHRyZWUucmVuYW1lKHBhdGgsICgwLCBjb3JlXzEuam9pbikodG9QYXRoLCBwYXRoLnNsaWNlKGZyb21QYXRoLmxlbmd0aCkpKTsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdHJlZTsKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LWI1ZTJmZDIyMmYuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvcmFuZG9tLmpzCnZhciByZXF1aXJlX3JhbmRvbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtYjVlMmZkMjIyZi56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9ydWxlcy9yYW5kb20uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWZhdWx0XzE7CiAgICB2YXIgaG9zdF90cmVlXzEgPSByZXF1aXJlX2hvc3RfdHJlZSgpOwogICAgZnVuY3Rpb24gZ2VuZXJhdGVTdHJpbmdPZkxlbmd0aChsKSB7CiAgICAgIHJldHVybiBuZXcgQXJyYXkobCkuZmlsbCgwKS5tYXAoKF94KSA9PiB7CiAgICAgICAgcmV0dXJuICJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5eiJbTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogMjYpXTsKICAgICAgfSkuam9pbigiIik7CiAgICB9CiAgICBmdW5jdGlvbiByYW5kb20oZnJvbSwgdG8pIHsKICAgICAgcmV0dXJuIE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqICh0byAtIGZyb20pKSArIGZyb207CiAgICB9CiAgICBmdW5jdGlvbiBkZWZhdWx0XzEob3B0aW9ucykgewogICAgICByZXR1cm4gKCkgPT4gewogICAgICAgIGNvbnN0IHJvb3QgPSAicm9vdCIgaW4gb3B0aW9ucyA/IG9wdGlvbnMucm9vdCA6ICIvIjsKICAgICAgICBjb25zdCBtYXAgPSBuZXcgaG9zdF90cmVlXzEuSG9zdFRyZWUoKTsKICAgICAgICBjb25zdCBuYkZpbGVzID0gIm11bHRpRmlsZXMiIGluIG9wdGlvbnMgPyB0eXBlb2Ygb3B0aW9ucy5tdWx0aUZpbGVzID09ICJudW1iZXIiID8gb3B0aW9ucy5tdWx0aUZpbGVzIDogcmFuZG9tKDIsIDEyKSA6IDE7CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBuYkZpbGVzOyBpKyspIHsKICAgICAgICAgIGNvbnN0IHBhdGggPSAiYS9iL2MvZC9lL2YiLnNsaWNlKE1hdGgucmFuZG9tKCkgKiAxMCk7CiAgICAgICAgICBjb25zdCBmaWxlTmFtZSA9IGdlbmVyYXRlU3RyaW5nT2ZMZW5ndGgoMjApOwogICAgICAgICAgY29uc3QgY29udGVudCA9IGdlbmVyYXRlU3RyaW5nT2ZMZW5ndGgoMTAwKTsKICAgICAgICAgIG1hcC5jcmVhdGUocm9vdCArICIvIiArIHBhdGggKyAiLyIgKyBmaWxlTmFtZSwgY29udGVudCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXA7CiAgICAgIH07CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC1iNWUyZmQyMjJmLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL3NjaGVtYXRpYy5qcwp2YXIgcmVxdWlyZV9zY2hlbWF0aWMyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC1iNWUyZmQyMjJmLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL3NjaGVtYXRpYy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXh0ZXJuYWxTY2hlbWF0aWMgPSBleHRlcm5hbFNjaGVtYXRpYzsKICAgIGV4cG9ydHMyLnNjaGVtYXRpYyA9IHNjaGVtYXRpYzsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGludGVyZmFjZV8xID0gcmVxdWlyZV9pbnRlcmZhY2UzKCk7CiAgICB2YXIgc3RhdGljXzEgPSByZXF1aXJlX3N0YXRpYygpOwogICAgZnVuY3Rpb24gZXh0ZXJuYWxTY2hlbWF0aWMoY29sbGVjdGlvbk5hbWUsIHNjaGVtYXRpY05hbWUsIG9wdGlvbnMsIGV4ZWN1dGlvbk9wdGlvbnMpIHsKICAgICAgcmV0dXJuIChpbnB1dCwgY29udGV4dCkgPT4gewogICAgICAgIGNvbnN0IGNvbGxlY3Rpb24gPSBjb250ZXh0LmVuZ2luZS5jcmVhdGVDb2xsZWN0aW9uKGNvbGxlY3Rpb25OYW1lLCBjb250ZXh0LnNjaGVtYXRpYy5jb2xsZWN0aW9uKTsKICAgICAgICBjb25zdCBzY2hlbWF0aWMyID0gY29sbGVjdGlvbi5jcmVhdGVTY2hlbWF0aWMoc2NoZW1hdGljTmFtZSk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYzIuY2FsbChvcHRpb25zLCAoMCwgcnhqc18xLm9mKSgoMCwgc3RhdGljXzEuYnJhbmNoKShpbnB1dCkpLCBjb250ZXh0LCBleGVjdXRpb25PcHRpb25zKS5waXBlKCgwLCByeGpzXzEubGFzdCkoKSwgKDAsIHJ4anNfMS5tYXApKCh4KSA9PiB7CiAgICAgICAgICBpbnB1dC5tZXJnZSh4LCBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkFsbG93T3ZlcndyaXRlQ29uZmxpY3QpOwogICAgICAgICAgcmV0dXJuIGlucHV0OwogICAgICAgIH0pKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHNjaGVtYXRpYyhzY2hlbWF0aWNOYW1lLCBvcHRpb25zLCBleGVjdXRpb25PcHRpb25zKSB7CiAgICAgIHJldHVybiAoaW5wdXQsIGNvbnRleHQpID0+IHsKICAgICAgICBjb25zdCBjb2xsZWN0aW9uID0gY29udGV4dC5zY2hlbWF0aWMuY29sbGVjdGlvbjsKICAgICAgICBjb25zdCBzY2hlbWF0aWMyID0gY29sbGVjdGlvbi5jcmVhdGVTY2hlbWF0aWMoc2NoZW1hdGljTmFtZSwgdHJ1ZSk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYzIuY2FsbChvcHRpb25zLCAoMCwgcnhqc18xLm9mKSgoMCwgc3RhdGljXzEuYnJhbmNoKShpbnB1dCkpLCBjb250ZXh0LCBleGVjdXRpb25PcHRpb25zKS5waXBlKCgwLCByeGpzXzEubGFzdCkoKSwgKDAsIHJ4anNfMS5tYXApKCh4KSA9PiB7CiAgICAgICAgICBpbnB1dC5tZXJnZSh4LCBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkFsbG93T3ZlcndyaXRlQ29uZmxpY3QpOwogICAgICAgICAgcmV0dXJuIGlucHV0OwogICAgICAgIH0pKTsKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LWI1ZTJmZDIyMmYuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvdGVtcGxhdGUuanMKdmFyIHJlcXVpcmVfdGVtcGxhdGUyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC1iNWUyZmQyMjJmLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL3RlbXBsYXRlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5JbnZhbGlkUGlwZUV4Y2VwdGlvbiA9IGV4cG9ydHMyLlVua25vd25QaXBlRXhjZXB0aW9uID0gZXhwb3J0czIuT3B0aW9uSXNOb3REZWZpbmVkRXhjZXB0aW9uID0gZXhwb3J0czIuVEVNUExBVEVfRklMRU5BTUVfUkUgPSB2b2lkIDA7CiAgICBleHBvcnRzMi5hcHBseUNvbnRlbnRUZW1wbGF0ZSA9IGFwcGx5Q29udGVudFRlbXBsYXRlOwogICAgZXhwb3J0czIuY29udGVudFRlbXBsYXRlID0gY29udGVudFRlbXBsYXRlOwogICAgZXhwb3J0czIuYXBwbHlQYXRoVGVtcGxhdGUgPSBhcHBseVBhdGhUZW1wbGF0ZTsKICAgIGV4cG9ydHMyLnBhdGhUZW1wbGF0ZSA9IHBhdGhUZW1wbGF0ZTsKICAgIGV4cG9ydHMyLnJlbmFtZVRlbXBsYXRlRmlsZXMgPSByZW5hbWVUZW1wbGF0ZUZpbGVzOwogICAgZXhwb3J0czIudGVtcGxhdGUgPSB0ZW1wbGF0ZTM7CiAgICBleHBvcnRzMi5hcHBseVRlbXBsYXRlcyA9IGFwcGx5VGVtcGxhdGVzOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgbm9kZV9vc18xID0gcmVxdWlyZSgibm9kZTpvcyIpOwogICAgdmFyIGJhc2VfMSA9IHJlcXVpcmVfYmFzZTIoKTsKICAgIGV4cG9ydHMyLlRFTVBMQVRFX0ZJTEVOQU1FX1JFID0gL1wudGVtcGxhdGUkLzsKICAgIHZhciBPcHRpb25Jc05vdERlZmluZWRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBPcHRpb24gIiR7bmFtZX0iIGlzIG5vdCBkZWZpbmVkLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuT3B0aW9uSXNOb3REZWZpbmVkRXhjZXB0aW9uID0gT3B0aW9uSXNOb3REZWZpbmVkRXhjZXB0aW9uOwogICAgdmFyIFVua25vd25QaXBlRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKG5hbWUpIHsKICAgICAgICBzdXBlcihgUGlwZSAiJHtuYW1lfSIgaXMgbm90IGRlZmluZWQuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Vbmtub3duUGlwZUV4Y2VwdGlvbiA9IFVua25vd25QaXBlRXhjZXB0aW9uOwogICAgdmFyIEludmFsaWRQaXBlRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKG5hbWUpIHsKICAgICAgICBzdXBlcihgUGlwZSAiJHtuYW1lfSIgaXMgaW52YWxpZC5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkludmFsaWRQaXBlRXhjZXB0aW9uID0gSW52YWxpZFBpcGVFeGNlcHRpb247CiAgICB2YXIgZGVjb2RlciA9IG5ldyBUZXh0RGVjb2RlcigidXRmLTgiLCB7IGZhdGFsOiB0cnVlIH0pOwogICAgZnVuY3Rpb24gYXBwbHlDb250ZW50VGVtcGxhdGUob3B0aW9ucykgewogICAgICByZXR1cm4gKGVudHJ5KSA9PiB7CiAgICAgICAgY29uc3QgeyBwYXRoLCBjb250ZW50IH0gPSBlbnRyeTsKICAgICAgICB0cnkgewogICAgICAgICAgY29uc3QgZGVjb2RlZENvbnRlbnQgPSBkZWNvZGVyLmRlY29kZShjb250ZW50KS5yZXBsYWNlKC9ccj9cbi9nLCBub2RlX29zXzEuRU9MKTsKICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgIHBhdGgsCiAgICAgICAgICAgIGNvbnRlbnQ6IEJ1ZmZlci5mcm9tKCgwLCBjb3JlXzEudGVtcGxhdGUpKGRlY29kZWRDb250ZW50LCB7fSkob3B0aW9ucykpCiAgICAgICAgICB9OwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIGlmIChlIGluc3RhbmNlb2YgVHlwZUVycm9yIHx8IGUuY29kZSA9PT0gIkVSUl9FTkNPRElOR19JTlZBTElEX0VOQ09ERURfREFUQSIpIHsKICAgICAgICAgICAgcmV0dXJuIGVudHJ5OwogICAgICAgICAgfQogICAgICAgICAgdGhyb3cgZTsKICAgICAgICB9CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBjb250ZW50VGVtcGxhdGUob3B0aW9ucykgewogICAgICByZXR1cm4gKDAsIGJhc2VfMS5mb3JFYWNoKShhcHBseUNvbnRlbnRUZW1wbGF0ZShvcHRpb25zKSk7CiAgICB9CiAgICBmdW5jdGlvbiBhcHBseVBhdGhUZW1wbGF0ZShkYXRhLCBvcHRpb25zID0gewogICAgICBpbnRlcnBvbGF0aW9uU3RhcnQ6ICJfXyIsCiAgICAgIGludGVycG9sYXRpb25FbmQ6ICJfXyIsCiAgICAgIHBpcGVTZXBhcmF0b3I6ICJAIgogICAgfSkgewogICAgICBjb25zdCBpcyA9IG9wdGlvbnMuaW50ZXJwb2xhdGlvblN0YXJ0OwogICAgICBjb25zdCBpZSA9IG9wdGlvbnMuaW50ZXJwb2xhdGlvbkVuZDsKICAgICAgY29uc3QgaXNMID0gaXMubGVuZ3RoOwogICAgICBjb25zdCBpZUwgPSBpZS5sZW5ndGg7CiAgICAgIHJldHVybiAoZW50cnkpID0+IHsKICAgICAgICBsZXQgcGF0aCA9IGVudHJ5LnBhdGg7CiAgICAgICAgY29uc3QgY29udGVudCA9IGVudHJ5LmNvbnRlbnQ7CiAgICAgICAgY29uc3Qgb3JpZ2luYWwgPSBwYXRoOwogICAgICAgIGxldCBzdGFydCA9IHBhdGguaW5kZXhPZihpcyk7CiAgICAgICAgbGV0IGVuZCA9IHBhdGguaW5kZXhPZihpZSwgc3RhcnQgKyBpc0wgKyAxKTsKICAgICAgICB3aGlsZSAoc3RhcnQgIT0gLTEgJiYgZW5kICE9IC0xKSB7CiAgICAgICAgICBjb25zdCBtYXRjaCA9IHBhdGguc3Vic3RyaW5nKHN0YXJ0ICsgaXNMLCBlbmQpOwogICAgICAgICAgbGV0IHJlcGxhY2VtZW50ID0gZGF0YVttYXRjaF07CiAgICAgICAgICBpZiAoIW9wdGlvbnMucGlwZVNlcGFyYXRvcikgewogICAgICAgICAgICBpZiAodHlwZW9mIHJlcGxhY2VtZW50ID09ICJmdW5jdGlvbiIpIHsKICAgICAgICAgICAgICByZXBsYWNlbWVudCA9IHJlcGxhY2VtZW50LmNhbGwoZGF0YSwgb3JpZ2luYWwpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChyZXBsYWNlbWVudCA9PT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IE9wdGlvbklzTm90RGVmaW5lZEV4Y2VwdGlvbihtYXRjaCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IFtuYW1lLCAuLi5waXBlc10gPSBtYXRjaC5zcGxpdChvcHRpb25zLnBpcGVTZXBhcmF0b3IpOwogICAgICAgICAgICByZXBsYWNlbWVudCA9IGRhdGFbbmFtZV07CiAgICAgICAgICAgIGlmICh0eXBlb2YgcmVwbGFjZW1lbnQgPT0gImZ1bmN0aW9uIikgewogICAgICAgICAgICAgIHJlcGxhY2VtZW50ID0gcmVwbGFjZW1lbnQuY2FsbChkYXRhLCBvcmlnaW5hbCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHJlcGxhY2VtZW50ID09PSB2b2lkIDApIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgT3B0aW9uSXNOb3REZWZpbmVkRXhjZXB0aW9uKG5hbWUpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJlcGxhY2VtZW50ID0gcGlwZXMucmVkdWNlKChhY2MsIHBpcGUpID0+IHsKICAgICAgICAgICAgICBpZiAoIXBpcGUpIHsKICAgICAgICAgICAgICAgIHJldHVybiBhY2M7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICghKHBpcGUgaW4gZGF0YSkpIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBVbmtub3duUGlwZUV4Y2VwdGlvbihwaXBlKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgY29uc3QgcGlwZUZuID0gZGF0YVtwaXBlXTsKICAgICAgICAgICAgICBpZiAodHlwZW9mIHBpcGVGbiAhPSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFBpcGVFeGNlcHRpb24ocGlwZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHJldHVybiAiIiArIHBpcGVGbihhY2MpOwogICAgICAgICAgICB9LCAiIiArIHJlcGxhY2VtZW50KTsKICAgICAgICAgIH0KICAgICAgICAgIHBhdGggPSBwYXRoLnN1YnN0cmluZygwLCBzdGFydCkgKyByZXBsYWNlbWVudCArIHBhdGguc3Vic3RyaW5nKGVuZCArIGllTCk7CiAgICAgICAgICBzdGFydCA9IHBhdGguaW5kZXhPZihvcHRpb25zLmludGVycG9sYXRpb25TdGFydCk7CiAgICAgICAgICBlbmQgPSBwYXRoLmluZGV4T2Yob3B0aW9ucy5pbnRlcnBvbGF0aW9uRW5kLCBzdGFydCArIGlzTCArIDEpOwogICAgICAgIH0KICAgICAgICByZXR1cm4geyBwYXRoOiAoMCwgY29yZV8xLm5vcm1hbGl6ZSkocGF0aCksIGNvbnRlbnQgfTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHBhdGhUZW1wbGF0ZShvcHRpb25zKSB7CiAgICAgIHJldHVybiAoMCwgYmFzZV8xLmZvckVhY2gpKGFwcGx5UGF0aFRlbXBsYXRlKG9wdGlvbnMpKTsKICAgIH0KICAgIGZ1bmN0aW9uIHJlbmFtZVRlbXBsYXRlRmlsZXMoKSB7CiAgICAgIHJldHVybiAoMCwgYmFzZV8xLmZvckVhY2gpKChlbnRyeSkgPT4gewogICAgICAgIGlmIChlbnRyeS5wYXRoLm1hdGNoKGV4cG9ydHMyLlRFTVBMQVRFX0ZJTEVOQU1FX1JFKSkgewogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgY29udGVudDogZW50cnkuY29udGVudCwKICAgICAgICAgICAgcGF0aDogKDAsIGNvcmVfMS5ub3JtYWxpemUpKGVudHJ5LnBhdGgucmVwbGFjZShleHBvcnRzMi5URU1QTEFURV9GSUxFTkFNRV9SRSwgIiIpKQogICAgICAgICAgfTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIGVudHJ5OwogICAgICAgIH0KICAgICAgfSk7CiAgICB9CiAgICBmdW5jdGlvbiB0ZW1wbGF0ZTMob3B0aW9ucykgewogICAgICByZXR1cm4gKDAsIGJhc2VfMS5jaGFpbikoWwogICAgICAgIGNvbnRlbnRUZW1wbGF0ZShvcHRpb25zKSwKICAgICAgICAvLyBGb3JjZSBjYXN0IHRvIFBhdGhUZW1wbGF0ZURhdGEuIFdlIG5lZWQgdGhlIHR5cGUgZm9yIHRoZSBhY3R1YWwgcGF0aFRlbXBsYXRlKCkgY2FsbCwKICAgICAgICAvLyBidXQgaW4gdGhpcyBjYXNlIHdlIGNhbm5vdCBkbyBhbnl0aGluZyBhcyBjb250ZW50VGVtcGxhdGUgYXJlIG1vcmUgcGVybWlzc2l2ZS4KICAgICAgICAvLyBTaW5jZSB2YWx1ZXMgYXJlIGNvZXJjZWQgdG8gc3RyaW5ncyBpbiBQYXRoVGVtcGxhdGVzIGl0IHdpbGwgYmUgZmluZSBpbiB0aGUgZW5kLgogICAgICAgIHBhdGhUZW1wbGF0ZShvcHRpb25zKQogICAgICBdKTsKICAgIH0KICAgIGZ1bmN0aW9uIGFwcGx5VGVtcGxhdGVzKG9wdGlvbnMpIHsKICAgICAgcmV0dXJuICgwLCBiYXNlXzEuZm9yRWFjaCkoKDAsIGJhc2VfMS53aGVuKSgocGF0aCkgPT4gcGF0aC5lbmRzV2l0aCgiLnRlbXBsYXRlIiksICgwLCBiYXNlXzEuY29tcG9zZUZpbGVPcGVyYXRvcnMpKFsKICAgICAgICBhcHBseUNvbnRlbnRUZW1wbGF0ZShvcHRpb25zKSwKICAgICAgICAvLyBTZWUgYWJvdmUgZm9yIHRoaXMgd2VpcmQgY2FzdC4KICAgICAgICBhcHBseVBhdGhUZW1wbGF0ZShvcHRpb25zKSwKICAgICAgICAoZW50cnkpID0+IHsKICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgIGNvbnRlbnQ6IGVudHJ5LmNvbnRlbnQsCiAgICAgICAgICAgIHBhdGg6IGVudHJ5LnBhdGgucmVwbGFjZShleHBvcnRzMi5URU1QTEFURV9GSUxFTkFNRV9SRSwgIiIpCiAgICAgICAgICB9OwogICAgICAgIH0KICAgICAgXSkpKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LWI1ZTJmZDIyMmYuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvdXJsLmpzCnZhciByZXF1aXJlX3VybCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtYjVlMmZkMjIyZi56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9ydWxlcy91cmwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnVybCA9IHVybDM7CiAgICB2YXIgdXJsXzEgPSByZXF1aXJlKCJ1cmwiKTsKICAgIGZ1bmN0aW9uIHVybDModXJsU3RyaW5nKSB7CiAgICAgIGNvbnN0IHVybDQgPSAoMCwgdXJsXzEucGFyc2UpKHVybFN0cmluZyk7CiAgICAgIHJldHVybiAoY29udGV4dCkgPT4gY29udGV4dC5lbmdpbmUuY3JlYXRlU291cmNlRnJvbVVybCh1cmw0LCBjb250ZXh0KShjb250ZXh0KTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LWI1ZTJmZDIyMmYuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9lbXB0eS5qcwp2YXIgcmVxdWlyZV9lbXB0eTMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LWI1ZTJmZDIyMmYuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9lbXB0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuRW1wdHlUcmVlID0gdm9pZCAwOwogICAgdmFyIGhvc3RfdHJlZV8xID0gcmVxdWlyZV9ob3N0X3RyZWUoKTsKICAgIHZhciBFbXB0eVRyZWUgPSBjbGFzcyBleHRlbmRzIGhvc3RfdHJlZV8xLkhvc3RUcmVlIHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkVtcHR5VHJlZSA9IEVtcHR5VHJlZTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LWI1ZTJmZDIyMmYuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvaW5kZXguanMKdmFyIHJlcXVpcmVfc3JjMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtYjVlMmZkMjIyZi56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX3NldE1vZHVsZURlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NldE1vZHVsZURlZmF1bHQgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCB2KSB7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZGVmYXVsdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHYgfSk7CiAgICB9IDogZnVuY3Rpb24obywgdikgewogICAgICBvWyJkZWZhdWx0Il0gPSB2OwogICAgfSk7CiAgICB2YXIgX19pbXBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19pbXBvcnRTdGFyIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIG93bktleXMgPSBmdW5jdGlvbihvKSB7CiAgICAgICAgb3duS2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uKG8yKSB7CiAgICAgICAgICB2YXIgYXIgPSBbXTsKICAgICAgICAgIGZvciAodmFyIGsgaW4gbzIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobzIsIGspKSBhclthci5sZW5ndGhdID0gazsKICAgICAgICAgIHJldHVybiBhcjsKICAgICAgICB9OwogICAgICAgIHJldHVybiBvd25LZXlzKG8pOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24obW9kKSB7CiAgICAgICAgaWYgKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgcmV0dXJuIG1vZDsKICAgICAgICB2YXIgcmVzdWx0ID0ge307CiAgICAgICAgaWYgKG1vZCAhPSBudWxsKSB7CiAgICAgICAgICBmb3IgKHZhciBrID0gb3duS2V5cyhtb2QpLCBpID0gMDsgaSA8IGsubGVuZ3RoOyBpKyspIGlmIChrW2ldICE9PSAiZGVmYXVsdCIpIF9fY3JlYXRlQmluZGluZyhyZXN1bHQsIG1vZCwga1tpXSk7CiAgICAgICAgfQogICAgICAgIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVHJlZSA9IGV4cG9ydHMyLndvcmtmbG93ID0gZXhwb3J0czIuc3RyaW5ncyA9IGV4cG9ydHMyLmZvcm1hdHMgPSBleHBvcnRzMi5TY2hlbWF0aWNzRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzdHJpbmdzIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29yZV8xLnN0cmluZ3M7CiAgICB9IH0pOwogICAgdmFyIGZvcm1hdHMgPSBfX2ltcG9ydFN0YXIocmVxdWlyZV9mb3JtYXRzMigpKTsKICAgIGV4cG9ydHMyLmZvcm1hdHMgPSBmb3JtYXRzOwogICAgdmFyIGludGVyZmFjZV8xID0gcmVxdWlyZV9pbnRlcmZhY2UzKCk7CiAgICB2YXIgc3RhdGljXzEgPSByZXF1aXJlX3N0YXRpYygpOwogICAgdmFyIHdvcmtmbG93ID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfd29ya2Zsb3coKSk7CiAgICBleHBvcnRzMi53b3JrZmxvdyA9IHdvcmtmbG93OwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJTY2hlbWF0aWNzRXhjZXB0aW9uIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZXhjZXB0aW9uXzEuU2NoZW1hdGljc0V4Y2VwdGlvbjsKICAgIH0gfSk7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9hY3Rpb24oKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfZW5naW5lMigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9leGNlcHRpb24yKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2ludGVyZmFjZTMoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfYmFzZTIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfY2FsbCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9tb3ZlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3JhbmRvbSgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9zY2hlbWF0aWMyKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3RlbXBsYXRlMigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV91cmwoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfZGVsZWdhdGUoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfZW1wdHkzKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2hvc3RfdHJlZSgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9zY2hlbWF0aWMoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfZHJ5cnVuKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2hvc3Q0KCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3NpbmsoKSwgZXhwb3J0czIpOwogICAgZXhwb3J0czIuVHJlZSA9IHsKICAgICAgZW1wdHkoKSB7CiAgICAgICAgcmV0dXJuICgwLCBzdGF0aWNfMS5lbXB0eSkoKTsKICAgICAgfSwKICAgICAgYnJhbmNoKHRyZWUpIHsKICAgICAgICByZXR1cm4gKDAsIHN0YXRpY18xLmJyYW5jaCkodHJlZSk7CiAgICAgIH0sCiAgICAgIG1lcmdlKHRyZWUsIG90aGVyLCBzdHJhdGVneSA9IGludGVyZmFjZV8xLk1lcmdlU3RyYXRlZ3kuRGVmYXVsdCkgewogICAgICAgIHJldHVybiAoMCwgc3RhdGljXzEubWVyZ2UpKHRyZWUsIG90aGVyLCBzdHJhdGVneSk7CiAgICAgIH0sCiAgICAgIHBhcnRpdGlvbih0cmVlLCBwcmVkaWNhdGUpIHsKICAgICAgICByZXR1cm4gKDAsIHN0YXRpY18xLnBhcnRpdGlvbikodHJlZSwgcHJlZGljYXRlKTsKICAgICAgfSwKICAgICAgb3B0aW1pemUodHJlZSkgewogICAgICAgIHJldHVybiB0cmVlOwogICAgICB9CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9jYWNoZS9zdHJpcC1qc29uLWNvbW1lbnRzLW5wbS0zLjEuMS1kY2IyMzI0ODIzLTQ5MmY3M2UyNzIuemlwL25vZGVfbW9kdWxlcy9zdHJpcC1qc29uLWNvbW1lbnRzL2luZGV4LmpzCnZhciByZXF1aXJlX3N0cmlwX2pzb25fY29tbWVudHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vY2FjaGUvc3RyaXAtanNvbi1jb21tZW50cy1ucG0tMy4xLjEtZGNiMjMyNDgyMy00OTJmNzNlMjcyLnppcC9ub2RlX21vZHVsZXMvc3RyaXAtanNvbi1jb21tZW50cy9pbmRleC5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBzaW5nbGVDb21tZW50ID0gU3ltYm9sKCJzaW5nbGVDb21tZW50Iik7CiAgICB2YXIgbXVsdGlDb21tZW50ID0gU3ltYm9sKCJtdWx0aUNvbW1lbnQiKTsKICAgIHZhciBzdHJpcFdpdGhvdXRXaGl0ZXNwYWNlID0gKCkgPT4gIiI7CiAgICB2YXIgc3RyaXBXaXRoV2hpdGVzcGFjZSA9IChzdHJpbmcsIHN0YXJ0LCBlbmQpID0+IHN0cmluZy5zbGljZShzdGFydCwgZW5kKS5yZXBsYWNlKC9cUy9nLCAiICIpOwogICAgdmFyIGlzRXNjYXBlZCA9IChqc29uU3RyaW5nLCBxdW90ZVBvc2l0aW9uKSA9PiB7CiAgICAgIGxldCBpbmRleCA9IHF1b3RlUG9zaXRpb24gLSAxOwogICAgICBsZXQgYmFja3NsYXNoQ291bnQgPSAwOwogICAgICB3aGlsZSAoanNvblN0cmluZ1tpbmRleF0gPT09ICJcXCIpIHsKICAgICAgICBpbmRleCAtPSAxOwogICAgICAgIGJhY2tzbGFzaENvdW50ICs9IDE7CiAgICAgIH0KICAgICAgcmV0dXJuIEJvb2xlYW4oYmFja3NsYXNoQ291bnQgJSAyKTsKICAgIH07CiAgICBtb2R1bGUyLmV4cG9ydHMgPSAoanNvblN0cmluZywgb3B0aW9ucyA9IHt9KSA9PiB7CiAgICAgIGlmICh0eXBlb2YganNvblN0cmluZyAhPT0gInN0cmluZyIpIHsKICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKGBFeHBlY3RlZCBhcmd1bWVudCBcYGpzb25TdHJpbmdcYCB0byBiZSBhIFxgc3RyaW5nXGAsIGdvdCBcYCR7dHlwZW9mIGpzb25TdHJpbmd9XGBgKTsKICAgICAgfQogICAgICBjb25zdCBzdHJpcCA9IG9wdGlvbnMud2hpdGVzcGFjZSA9PT0gZmFsc2UgPyBzdHJpcFdpdGhvdXRXaGl0ZXNwYWNlIDogc3RyaXBXaXRoV2hpdGVzcGFjZTsKICAgICAgbGV0IGluc2lkZVN0cmluZyA9IGZhbHNlOwogICAgICBsZXQgaW5zaWRlQ29tbWVudCA9IGZhbHNlOwogICAgICBsZXQgb2Zmc2V0ID0gMDsKICAgICAgbGV0IHJlc3VsdCA9ICIiOwogICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGpzb25TdHJpbmcubGVuZ3RoOyBpKyspIHsKICAgICAgICBjb25zdCBjdXJyZW50Q2hhcmFjdGVyID0ganNvblN0cmluZ1tpXTsKICAgICAgICBjb25zdCBuZXh0Q2hhcmFjdGVyID0ganNvblN0cmluZ1tpICsgMV07CiAgICAgICAgaWYgKCFpbnNpZGVDb21tZW50ICYmIGN1cnJlbnRDaGFyYWN0ZXIgPT09ICciJykgewogICAgICAgICAgY29uc3QgZXNjYXBlZCA9IGlzRXNjYXBlZChqc29uU3RyaW5nLCBpKTsKICAgICAgICAgIGlmICghZXNjYXBlZCkgewogICAgICAgICAgICBpbnNpZGVTdHJpbmcgPSAhaW5zaWRlU3RyaW5nOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoaW5zaWRlU3RyaW5nKSB7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKCFpbnNpZGVDb21tZW50ICYmIGN1cnJlbnRDaGFyYWN0ZXIgKyBuZXh0Q2hhcmFjdGVyID09PSAiLy8iKSB7CiAgICAgICAgICByZXN1bHQgKz0ganNvblN0cmluZy5zbGljZShvZmZzZXQsIGkpOwogICAgICAgICAgb2Zmc2V0ID0gaTsKICAgICAgICAgIGluc2lkZUNvbW1lbnQgPSBzaW5nbGVDb21tZW50OwogICAgICAgICAgaSsrOwogICAgICAgIH0gZWxzZSBpZiAoaW5zaWRlQ29tbWVudCA9PT0gc2luZ2xlQ29tbWVudCAmJiBjdXJyZW50Q2hhcmFjdGVyICsgbmV4dENoYXJhY3RlciA9PT0gIlxyXG4iKSB7CiAgICAgICAgICBpKys7CiAgICAgICAgICBpbnNpZGVDb21tZW50ID0gZmFsc2U7CiAgICAgICAgICByZXN1bHQgKz0gc3RyaXAoanNvblN0cmluZywgb2Zmc2V0LCBpKTsKICAgICAgICAgIG9mZnNldCA9IGk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9IGVsc2UgaWYgKGluc2lkZUNvbW1lbnQgPT09IHNpbmdsZUNvbW1lbnQgJiYgY3VycmVudENoYXJhY3RlciA9PT0gIlxuIikgewogICAgICAgICAgaW5zaWRlQ29tbWVudCA9IGZhbHNlOwogICAgICAgICAgcmVzdWx0ICs9IHN0cmlwKGpzb25TdHJpbmcsIG9mZnNldCwgaSk7CiAgICAgICAgICBvZmZzZXQgPSBpOwogICAgICAgIH0gZWxzZSBpZiAoIWluc2lkZUNvbW1lbnQgJiYgY3VycmVudENoYXJhY3RlciArIG5leHRDaGFyYWN0ZXIgPT09ICIvKiIpIHsKICAgICAgICAgIHJlc3VsdCArPSBqc29uU3RyaW5nLnNsaWNlKG9mZnNldCwgaSk7CiAgICAgICAgICBvZmZzZXQgPSBpOwogICAgICAgICAgaW5zaWRlQ29tbWVudCA9IG11bHRpQ29tbWVudDsKICAgICAgICAgIGkrKzsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0gZWxzZSBpZiAoaW5zaWRlQ29tbWVudCA9PT0gbXVsdGlDb21tZW50ICYmIGN1cnJlbnRDaGFyYWN0ZXIgKyBuZXh0Q2hhcmFjdGVyID09PSAiKi8iKSB7CiAgICAgICAgICBpKys7CiAgICAgICAgICBpbnNpZGVDb21tZW50ID0gZmFsc2U7CiAgICAgICAgICByZXN1bHQgKz0gc3RyaXAoanNvblN0cmluZywgb2Zmc2V0LCBpICsgMSk7CiAgICAgICAgICBvZmZzZXQgPSBpICsgMTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gcmVzdWx0ICsgKGluc2lkZUNvbW1lbnQgPyBzdHJpcChqc29uU3RyaW5nLnNsaWNlKG9mZnNldCkpIDoganNvblN0cmluZy5zbGljZShvZmZzZXQpKTsKICAgIH07CiAgfQp9KTsKCi8vIHNyYy9zY2hlbWF0aWMvaW5kZXgudHMKdmFyIGluZGV4X2V4cG9ydHMgPSB7fTsKX19leHBvcnQoaW5kZXhfZXhwb3J0cywgewogIG1haW46ICgpID0+IG1haW4KfSk7Cm1vZHVsZS5leHBvcnRzID0gX190b0NvbW1vbkpTKGluZGV4X2V4cG9ydHMpOwoKLy8gc3JjL3NjaGVtYXRpYy9wcm9qZWN0L3Byb2plY3QuZmFjdG9yeS50cwp2YXIgaW1wb3J0X3NjaGVtYXRpY3M5ID0gX190b0VTTShyZXF1aXJlX3NyYzIoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljczEwID0gX190b0VTTShyZXF1aXJlX3NyYzIoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljczExID0gX190b0VTTShyZXF1aXJlX3NyYzIoKSwgMSk7CgovLyBzcmMvc2NoZW1hdGljL3V0aWxzL2pzb24udXRpbHMudHMKdmFyIGltcG9ydF9zdHJpcF9qc29uX2NvbW1lbnRzID0gX190b0VTTShyZXF1aXJlX3N0cmlwX2pzb25fY29tbWVudHMoKSwgMSk7CnZhciBzZXJpYWxpemVKc29uID0gKGpzb24pID0+IGAke0pTT04uc3RyaW5naWZ5KGpzb24sIG51bGwsIDIpfQpgOwp2YXIgcmVhZEpzb25JblRyZWUgPSAoaG9zdCwgcGF0aCkgPT4gewogIGlmICghaG9zdC5leGlzdHMocGF0aCkpIHsKICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IGZpbmQgJHtwYXRofWApOwogIH0KICBjb25zdCBjb250ZW50cyA9ICgwLCBpbXBvcnRfc3RyaXBfanNvbl9jb21tZW50cy5kZWZhdWx0KShob3N0LnJlYWQocGF0aCk/LnRvU3RyaW5nKCJ1dGYtOCIpIHx8ICIiKTsKICB0cnkgewogICAgcmV0dXJuIEpTT04ucGFyc2UoY29udGVudHMpOwogIH0gY2F0Y2ggKGUpIHsKICAgIGNvbnN0IGVycm9yID0gZTsKICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IHBhcnNlICR7cGF0aH06ICR7ZXJyb3IubWVzc2FnZX1gKTsKICB9Cn07CnZhciB1cGRhdGVKc29uSW5UcmVlID0gKHBhdGgsIGNhbGxiYWNrKSA9PiAoaG9zdCwgY29udGV4dCkgPT4gewogIGlmICghaG9zdC5leGlzdHMocGF0aCkpIHsKICAgIGhvc3QuY3JlYXRlKHBhdGgsIHNlcmlhbGl6ZUpzb24oY2FsbGJhY2soe30sIGNvbnRleHQpKSk7CiAgICByZXR1cm4gaG9zdDsKICB9CiAgaG9zdC5vdmVyd3JpdGUoCiAgICBwYXRoLAogICAgc2VyaWFsaXplSnNvbihjYWxsYmFjayhyZWFkSnNvbkluVHJlZShob3N0LCBwYXRoKSwgY29udGV4dCkpCiAgKTsKICByZXR1cm4gaG9zdDsKfTsKCi8vIHNyYy9zY2hlbWF0aWMvdXRpbHMvdHNjb25maWcudXRpbHMudHMKdmFyIHVwZGF0ZVRzQ29uZmlnSW5UcmVlID0gKGNvbXBpbGVyT3B0aW9ucykgPT4gdXBkYXRlSnNvbkluVHJlZSgidHNjb25maWcuanNvbiIsICh0c2NvbmZpZykgPT4gKHsKICAuLi50c2NvbmZpZywKICBjb21waWxlck9wdGlvbnMKfSkpOwoKLy8gc3JjL3NjaGVtYXRpYy9ydWxlcy91cGRhdGUtdHMtY29uZmlnLnJ1bGUudHMKdmFyIHVwZGF0ZVRzQ29uZmlnUnVsZSA9IGFzeW5jICgpID0+IHsKICBjb25zdCB7IHRzQ29uZmlnIH0gPSBhd2FpdCBpbXBvcnQoIkBhdGxzL2NvZGUtcnVudGltZSIpOwogIHJldHVybiB1cGRhdGVUc0NvbmZpZ0luVHJlZSh7CiAgICAuLi50c0NvbmZpZy5jb21waWxlck9wdGlvbnMKICB9KTsKfTsKCi8vIHNyYy9zY2hlbWF0aWMvc291cmNlcy9nZW5lcmF0ZS1jb21tb24uc291cmNlLnRzCnZhciBpbXBvcnRfY29yZSA9IF9fdG9FU00ocmVxdWlyZV9zcmMoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljcyA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3MyID0gX190b0VTTShyZXF1aXJlX3NyYzIoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljczMgPSBfX3RvRVNNKHJlcXVpcmVfc3JjMigpLCAxKTsKdmFyIGltcG9ydF9zY2hlbWF0aWNzNCA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgZ2VuZXJhdGVDb21tb25Tb3VyY2UgPSAob3B0aW9ucykgPT4gKDAsIGltcG9ydF9zY2hlbWF0aWNzLmFwcGx5KSgoMCwgaW1wb3J0X3NjaGVtYXRpY3M0LnVybCkoIi4uL3RlbXBsYXRlcy9jb21tb24iKSwgWwogICgwLCBpbXBvcnRfc2NoZW1hdGljczIudGVtcGxhdGUpKHsKICAgIC4uLmltcG9ydF9jb3JlLnN0cmluZ3MsCiAgICAuLi5vcHRpb25zLAogICAgZG90OiAiLiIKICB9KSwKICAoMCwgaW1wb3J0X3NjaGVtYXRpY3MzLm1vdmUpKCIuLyIpCl0pOwoKLy8gc3JjL3NjaGVtYXRpYy9zb3VyY2VzL2dlbmVyYXRlLXByb2plY3Qtc3BlY2lmaWMuc291cmNlLnRzCnZhciBpbXBvcnRfbm9kZV9mcyA9IHJlcXVpcmUoIm5vZGU6ZnMiKTsKdmFyIGltcG9ydF9ub2RlX3BhdGggPSByZXF1aXJlKCJub2RlOnBhdGgiKTsKdmFyIGltcG9ydF9jb3JlMiA9IF9fdG9FU00ocmVxdWlyZV9zcmMoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljczUgPSBfX3RvRVNNKHJlcXVpcmVfc3JjMigpLCAxKTsKdmFyIGltcG9ydF9zY2hlbWF0aWNzNiA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3M3ID0gX190b0VTTShyZXF1aXJlX3NyYzIoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljczggPSBfX3RvRVNNKHJlcXVpcmVfc3JjMigpLCAxKTsKdmFyIGdlbmVyYXRlUHJvamVjdFNwZWNpZmljU291cmNlID0gKG9wdGlvbnMpID0+IHsKICBjb25zdCB7IG5hbWU6IHByb2plY3ROYW1lIH0gPSBKU09OLnBhcnNlKAogICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG4vbm8tc3luYwogICAgKDAsIGltcG9ydF9ub2RlX2ZzLnJlYWRGaWxlU3luYykoKDAsIGltcG9ydF9ub2RlX3BhdGguam9pbikob3B0aW9ucy5jd2QsICJwYWNrYWdlLmpzb24iKSwgInV0Zi04IikKICApOwogIHJldHVybiAoMCwgaW1wb3J0X3NjaGVtYXRpY3M1LmFwcGx5KSgoMCwgaW1wb3J0X3NjaGVtYXRpY3M2LnVybCkoKDAsIGltcG9ydF9ub2RlX3BhdGguam9pbikoIi4uL3RlbXBsYXRlcyIsIG9wdGlvbnMudHlwZSkpLCBbCiAgICAoMCwgaW1wb3J0X3NjaGVtYXRpY3M3LnRlbXBsYXRlKSh7CiAgICAgIC4uLmltcG9ydF9jb3JlMi5zdHJpbmdzLAogICAgICAuLi5vcHRpb25zLAogICAgICBwcm9qZWN0TmFtZSwKICAgICAgZG90OiAiLiIKICAgIH0pLAogICAgKDAsIGltcG9ydF9zY2hlbWF0aWNzOC5tb3ZlKSgiLi8iKQogIF0pOwp9OwoKLy8gc3JjL3NjaGVtYXRpYy9wcm9qZWN0L3Byb2plY3QuZmFjdG9yeS50cwp2YXIgbWFpbiA9IChvcHRpb25zKSA9PiAoMCwgaW1wb3J0X3NjaGVtYXRpY3MxMC5jaGFpbikoWwogIHVwZGF0ZVRzQ29uZmlnUnVsZSwKICAoMCwgaW1wb3J0X3NjaGVtYXRpY3MxMS5tZXJnZVdpdGgpKGdlbmVyYXRlQ29tbW9uU291cmNlKG9wdGlvbnMpLCBpbXBvcnRfc2NoZW1hdGljczkuTWVyZ2VTdHJhdGVneS5PdmVyd3JpdGUpLAogICgwLCBpbXBvcnRfc2NoZW1hdGljczExLm1lcmdlV2l0aCkoZ2VuZXJhdGVQcm9qZWN0U3BlY2lmaWNTb3VyY2Uob3B0aW9ucyksIGltcG9ydF9zY2hlbWF0aWNzOS5NZXJnZVN0cmF0ZWd5Lk92ZXJ3cml0ZSkKXSk7Ci8vIEFubm90YXRlIHRoZSBDb21tb25KUyBleHBvcnQgbmFtZXMgZm9yIEVTTSBpbXBvcnQgaW4gbm9kZToKMCAmJiAobW9kdWxlLmV4cG9ydHMgPSB7CiAgbWFpbgp9KTsKLyohIEJ1bmRsZWQgbGljZW5zZSBpbmZvcm1hdGlvbjoKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3V0aWxzLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS91dGlsaXR5LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS90cmFuc2Zvcm1zLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9pbnRlcmZhY2UuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3BvaW50ZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2V4Y2VwdGlvbi5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvbGl0ZXJhbHMuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3N0cmluZ3MuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL29iamVjdC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvdGVtcGxhdGUuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3BhcnRpYWxseS1vcmRlcmVkLXNldC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvcHJpb3JpdHktcXVldWUuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2xhbmcuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS92aXNpdG9yLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9yZWdpc3RyeS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvc2NoZW1hLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xvZ2dlci5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2luZGVudC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xldmVsLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvbnVsbC1sb2dnZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci90cmFuc2Zvcm0tbG9nZ2VyLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvaW5kZXguanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9kZWZpbml0aW9ucy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9wYXRoLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvYnVmZmVyLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvaW50ZXJmYWNlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvbWVtb3J5LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3Qvc3luYy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Rlc3QuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9yZXNvbHZlci5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2FsaWFzLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvY3JlYXRlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvZW1wdHkuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9wYXR0ZXJuLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvcmVjb3JkLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3Qvc2FmZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3Njb3BlZC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvaG9zdC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vbWV0YWRhdGEuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3V0aWxpdGllcy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vcmVhZGVyLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvanNvbi93cml0ZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9jb3JlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvaW5kZXguanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9mb3JtYXRzL2h0bWwtc2VsZWN0b3IuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvcGF0aC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZm9ybWF0cy9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9pbnRlcmZhY2UuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2V4Y2VwdGlvbi9leGNlcHRpb24uanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZGVsZWdhdGUuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZW50cnkuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvcmVjb3JkZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvc2NvcGVkLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2hvc3QtdHJlZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9zdGF0aWMuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvbnVsbC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvY2FsbC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL3NjaGVtYXRpYy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2VuZ2luZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2ludGVyZmFjZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL25vZGUvY2xpLWxvZ2dlci5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9ub2RlL2hvc3QuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvbm9kZS9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9hY3Rpb24uanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3Npbmsvc2luay5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvc2luay9ob3N0LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL2RyeXJ1bi5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvd29ya2Zsb3cvYmFzZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvd29ya2Zsb3cvaW50ZXJmYWNlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy93b3JrZmxvdy9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvYmFzZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvbW92ZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvcmFuZG9tLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9ydWxlcy9zY2hlbWF0aWMuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL3RlbXBsYXRlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9ydWxlcy91cmwuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZW1wdHkuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKKi8K",q9i=async e=>{let t=Buffer.from(LCc,"base64").toString("utf-8");await(await import("fs/promises")).writeFile(e,t)};var $9i=async e=>{let{writeFiles:t}=await import("@atls/code-runtime");await t(e);let r=cvr.ppath.join(e,"project");await VCc(r,{recursive:!0}),await q9i(cvr.ppath.join(r,"project.factory.cjs")),console.info("All Schematic files writed to the tmp!")};var $Ie=xt(Ro(),1),rSt=xt(Ro(),1),eVi=async e=>{let t=process.cwd();await rSt.xfs.copyFilePromise($Ie.ppath.join(t,".pnp.cjs"),$Ie.ppath.join(e,".pnp.cjs")),await rSt.xfs.symlinkPromise($Ie.ppath.join(t,"package.json"),$Ie.ppath.join(e,"package.json")),await rSt.xfs.symlinkPromise($Ie.ppath.join(t,"runtime"),$Ie.ppath.join(e,"runtime"))};var nVi=async e=>async r=>{try{let s=await rVi.xfs.mktempPromise(),a=tVi.ppath.join(s,"collection.json");await $9i(s),await eVi(s),await z9i("project",e,a)}catch(s){console.error(s)}};var nSt=class extends iVi.BaseCommand{static paths=[["generate","project"]];type=ed.String("-t,--type","project");async execute(){let t=await sVi.Configuration.find(this.context.cwd,this.context.plugins),r=["libraries","project"];if(!r.includes(this.type))throw new Error(`Allowed only ${r.join(", ")} types`);let s={type:this.type,cwd:process.cwd()},a=zTi(this,t),o=await nVi(s);return(await oVi.StreamReport.start(a,o)).exitCode()}};var aVi={commands:[nSt]};var Gkc=xt(QHi()),Fkc=xt(qHi()),Zkc=xt(n5i()),Lkc=xt(v5i()),Vkc=xt(awt()),Wkc=xt(x5i()),Pkc=xt(W5i()),Okc=xt(q5i()),Mkc=xt(ONe()),Qkc=xt(iXi()),Ykc=xt(gXi()),Hkc=xt(pXi()),Xkc=xt(vXi()),Jkc=xt(z4i()),Ukc=xt(oX()),Kkc=xt(hUi()),jkc=xt(vpe()),zkc=xt(jUi()),qkc=xt(tRe()),$kc=xt(nKi()),iKi=()=>({modules:new Map([["@yarnpkg/cli",wkc],["@yarnpkg/core",Tkc],["@yarnpkg/fslib",Nkc],["@yarnpkg/libzip",Rkc],["@yarnpkg/parsers",Dkc],["@yarnpkg/shell",xkc],["clipanion",dg],["semver",kkc],["typanion",hL],["@atls/yarn-plugin-badges",I8t],["@atls/yarn-plugin-changelog",i7t],["@atls/yarn-plugin-check",s7t],["@atls/yarn-plugin-checks",cir],["@atls/yarn-plugin-cli-publish",uir],["@atls/yarn-plugin-commit",Mcr],["@atls/yarn-plugin-essentials",Qcr],["@atls/yarn-plugin-export",dur],["@atls/yarn-plugin-files",Ynr],["@atls/yarn-plugin-format",Jpr],["@atls/yarn-plugin-image",ifr],["@atls/yarn-plugin-jsr",vfr],["@atls/yarn-plugin-library",Nfr],["@atls/yarn-plugin-lint",Zfr],["@atls/yarn-plugin-release",Kfr],["@atls/yarn-plugin-renderer",FIr],["@atls/yarn-plugin-service",u_r],["@atls/yarn-plugin-test",m_r],["@atls/yarn-plugin-tools",w_r],["@atls/yarn-plugin-typescript",x_r],["@atls/yarn-plugin-workspaces",k_r],["@atls/yarn-plugin-ui",j_r],["@atls/yarn-plugin-schematics",lvr],["@yarnpkg/plugin-interactive-tools",Gkc],["@yarnpkg/plugin-workspace-tools",Fkc],["@yarnpkg/plugin-typescript",Zkc],["@yarnpkg/plugin-version",Lkc],["@yarnpkg/plugin-essentials",Vkc],["@yarnpkg/plugin-compat",Wkc],["@yarnpkg/plugin-dlx",Pkc],["@yarnpkg/plugin-file",Okc],["@yarnpkg/plugin-git",Mkc],["@yarnpkg/plugin-github",Qkc],["@yarnpkg/plugin-http",Ykc],["@yarnpkg/plugin-init",Hkc],["@yarnpkg/plugin-link",Xkc],["@yarnpkg/plugin-nm",Jkc],["@yarnpkg/plugin-npm",Ukc],["@yarnpkg/plugin-npm-cli",Kkc],["@yarnpkg/plugin-pack",jkc],["@yarnpkg/plugin-patch",zkc],["@yarnpkg/plugin-pnp",qkc],["@yarnpkg/plugin-pnpm",$kc]]),plugins:new Set(["@atls/yarn-plugin-badges","@atls/yarn-plugin-changelog","@atls/yarn-plugin-check","@atls/yarn-plugin-checks","@atls/yarn-plugin-cli-publish","@atls/yarn-plugin-commit","@atls/yarn-plugin-essentials","@atls/yarn-plugin-export","@atls/yarn-plugin-files","@atls/yarn-plugin-format","@atls/yarn-plugin-image","@atls/yarn-plugin-jsr","@atls/yarn-plugin-library","@atls/yarn-plugin-lint","@atls/yarn-plugin-release","@atls/yarn-plugin-renderer","@atls/yarn-plugin-service","@atls/yarn-plugin-test","@atls/yarn-plugin-tools","@atls/yarn-plugin-typescript","@atls/yarn-plugin-workspaces","@atls/yarn-plugin-ui","@atls/yarn-plugin-schematics","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-workspace-tools","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-essentials","@yarnpkg/plugin-compat","@yarnpkg/plugin-dlx","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-link","@yarnpkg/plugin-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm"])});var sKi={name:"@atls/yarn-cli",version:"1.1.11-atls",private:!0,license:"BSD-3-Clause",type:"module",exports:{"./package.json":"./package.json",".":"./src/index.ts"},main:"src/index.ts",files:["dist"],scripts:{build:"yarn run build:schemaic && yarn run build:clean && yarn run build:version && yarn run build:bundle && yarn run build:fix && yarn run build:dist && yarn run build:version","build:bundle":"builder build bundle --no-git-hash && mv bundles/yarn.js bundles/yarn.mjs","build:clean":"rm -rf dist","build:dist":"mv bundles dist","build:fix":"yarn node patches/cli.patch.mjs","build:schemaic":"yarn workspace @atls/code-schematics prepack","build:version":"yarn node patches/version-postfix-toggle.mjs",fix:"yarn run build:fix",prepack:"yarn run build",postpack:"rm -rf dist"},dependencies:{"@atls/yarn-cli-tools":"workspace:*","@atls/yarn-plugin-badges":"workspace:*","@atls/yarn-plugin-changelog":"workspace:*","@atls/yarn-plugin-check":"workspace:*","@atls/yarn-plugin-checks":"workspace:*","@atls/yarn-plugin-cli-publish":"workspace:*","@atls/yarn-plugin-commit":"workspace:*","@atls/yarn-plugin-essentials":"workspace:*","@atls/yarn-plugin-export":"workspace:*","@atls/yarn-plugin-files":"workspace:*","@atls/yarn-plugin-format":"workspace:*","@atls/yarn-plugin-image":"workspace:*","@atls/yarn-plugin-jsr":"workspace:*","@atls/yarn-plugin-library":"workspace:*","@atls/yarn-plugin-lint":"workspace:*","@atls/yarn-plugin-release":"workspace:*","@atls/yarn-plugin-renderer":"workspace:*","@atls/yarn-plugin-schematics":"workspace:*","@atls/yarn-plugin-service":"workspace:*","@atls/yarn-plugin-test":"workspace:*","@atls/yarn-plugin-tools":"workspace:*","@atls/yarn-plugin-typescript":"workspace:*","@atls/yarn-plugin-ui":"workspace:*","@atls/yarn-plugin-workspaces":"workspace:*","@yarnpkg/builder":"4.2.0","@yarnpkg/cli":"4.5.1","@yarnpkg/core":"4.1.4","@yarnpkg/fslib":"3.1.0","@yarnpkg/libzip":"3.1.0","@yarnpkg/parsers":"3.0.2","@yarnpkg/plugin-compat":"4.0.9","@yarnpkg/plugin-dlx":"4.0.0","@yarnpkg/plugin-essentials":"4.2.2","@yarnpkg/plugin-file":"3.0.0","@yarnpkg/plugin-git":"3.1.0","@yarnpkg/plugin-github":"3.0.0","@yarnpkg/plugin-http":"3.0.1","@yarnpkg/plugin-init":"4.0.1","@yarnpkg/plugin-interactive-tools":"4.0.1","@yarnpkg/plugin-link":"3.0.0","@yarnpkg/plugin-nm":"4.0.5","@yarnpkg/plugin-npm":"3.0.1","@yarnpkg/plugin-npm-cli":"4.0.4","@yarnpkg/plugin-pack":"4.0.0","@yarnpkg/plugin-patch":"4.0.1","@yarnpkg/plugin-pnp":"4.0.5","@yarnpkg/plugin-pnpm":"2.0.0","@yarnpkg/plugin-typescript":"4.1.1","@yarnpkg/plugin-version":"4.0.4","@yarnpkg/plugin-workspace-tools":"4.1.0","@yarnpkg/shell":"4.1.0",clipanion:"4.0.0-rc.2",semver:"7.6.3",typanion:"3.14.0"},publishConfig:{access:"public",exports:{"./package.json":"./package.json",".":{import:"./dist/index.js",types:"./dist/index.d.ts",default:"./dist/index.js"}},main:"dist/index.js",types:"dist/index.d.ts"},"@yarnpkg/builder":{bundles:{standard:["@atls/yarn-plugin-badges","@atls/yarn-plugin-changelog","@atls/yarn-plugin-check","@atls/yarn-plugin-checks","@atls/yarn-plugin-cli-publish","@atls/yarn-plugin-commit","@atls/yarn-plugin-essentials","@atls/yarn-plugin-export","@atls/yarn-plugin-files","@atls/yarn-plugin-format","@atls/yarn-plugin-image","@atls/yarn-plugin-jsr","@atls/yarn-plugin-library","@atls/yarn-plugin-lint","@atls/yarn-plugin-release","@atls/yarn-plugin-renderer","@atls/yarn-plugin-service","@atls/yarn-plugin-test","@atls/yarn-plugin-tools","@atls/yarn-plugin-typescript","@atls/yarn-plugin-workspaces","@atls/yarn-plugin-ui","@atls/yarn-plugin-schematics","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-workspace-tools","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-essentials","@yarnpkg/plugin-compat","@yarnpkg/plugin-dlx","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-link","@yarnpkg/plugin-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm"]}}};var oKi=GDr.npath.toPortablePath(GDr.npath.resolve(process.argv[1])),xDr=iKi(sKi["@yarnpkg/builder"].bundles.standard);xDr.then?xDr.then(async e=>{(0,kDr.runExit)(process.argv.slice(2),{cwd:FDr.ppath.cwd(),selfPath:oKi,pluginConfiguration:e})}):(0,kDr.runExit)(process.argv.slice(2),{cwd:FDr.ppath.cwd(),selfPath:oKi,pluginConfiguration:xDr}); +`).filter(Boolean)).flat(),{logRecords:a,raw:o}=s.reduce((g,p)=>{try{let f=JSON.parse(p);return{...g,logRecords:[...g.logRecords,f]}}catch{return{...g,raw:[...g.raw,p]}}},{logRecords:[],raw:[]});a.forEach(g=>{console.log(Gy((0,xwe.jsx)(Ayt,{...g})))}),o.length>0&&console.log(Gy((0,xwe.jsx)(QSi,{file:t?$Si(process.cwd(),t):void 0,messages:o})))}flushBufferedStd(){this.std.forEach((t,r)=>{this.renderStdBuffer({file:r,messages:t})})}};var pYe=class extends Aq{static paths=[["test","integration"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(y_r.Filename.pnpCjs)&&t.includes(y_r.Filename.pnpEsmLoader)?this.executeRegular("integration"):process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular("integration"):this.executeProxy("integration")}};var b_r=vt(No(),1);var fYe=class extends Aq{static paths=[["test","unit"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(b_r.Filename.pnpCjs)&&t.includes(b_r.Filename.pnpEsmLoader)?this.executeRegular("unit"):process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular("unit"):this.executeProxy("unit")}};var awi=vt(Bn(),1),cwi=vt(Bn(),1),E_r=vt(No(),1);var pyt=class extends Aq{static paths=[["test"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(E_r.Filename.pnpCjs)&&t.includes(E_r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeRegular(){let t=await awi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await cwi.Project.find(t,this.context.cwd),s=await bU.initialize(this.context.cwd);try{return(await s.general(this.target??r.cwd,{files:this.files,watch:this.watch,testReporter:this.testReporter})).some(o=>o.includes("# fail ")?parseInt(o.split("# fail ")[1],2)>0:!1)?1:0}catch(a){return console.error(a),1}}};var lwi={commands:[pYe,fYe,pyt]};var k_r={};zf(k_r,{default:()=>Bwi});var Iwi=vt(Bn(),1),Cwi=vt(Bn(),1),mwi=vt(Bn(),1),S_r=vt(No(),1),w_r=vt(Bn(),1),hoe=vt(Vh(),1);var uwi=vt(il(),1),gwi=vt(Bn(),1),Awi=vt(Bn(),1),v_r=vt(No(),1),dwi=vt(Bn(),1),pwi=vt(Bn(),1),fwi=vt(No(),1);Zl();var moe=class extends uwi.BaseCommand{static usage=mb.Usage({description:"Update tools",details:"\n Update tools such as `tsconfig`, `typescript` version, `@atls/code-runtime` version\n ",examples:[["Update tsconfig","yarn tools tsconfig"],["Update runtime","yarn tools runtime"],["Update typescript version","yarn tools typescript"],["Update all","yarn tools sync"]]});async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(v_r.Filename.pnpCjs)&&t.includes(v_r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(t=["tools","sync"]){let r=await gwi.Configuration.find(this.context.cwd,this.context.plugins),{project:s}=await Awi.Project.find(r,this.context.cwd),a=await fwi.xfs.mktempPromise(),{code:o}=await pwi.execUtils.pipevp("yarn",t,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:{...await dwi.scriptUtils.makeScriptEnv({binFolder:a,project:s}),COMMAND_PROXY_EXECUTION:"true"}});return o}async executeRegular(){return 0}};var fyt=class extends moe{static paths=[["tools","sync","typescript"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(S_r.Filename.pnpCjs)&&t.includes(S_r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy(["tools","sync","typescript"])}async executeRegular(){let t=await Iwi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await Cwi.Project.find(t,this.context.cwd),s=(await import("@atls/code-runtime/package.json",{with:{type:"json"}})).default;return(await mwi.StreamReport.start({stdout:this.context.stdout,configuration:t},async o=>{await o.startTimerPromise("Tools sync typescript version",async()=>{if(r.topLevelWorkspace.manifest.raw.devDependencies){let g=w_r.structUtils.parseIdent("typescript"),p=Array.from(r.topLevelWorkspace.manifest.devDependencies.values()).find(f=>f.scope===g.scope&&f.name===g.name);p||(p=w_r.structUtils.makeDescriptor(g,s.dependencies.typescript)),hoe.default.valid(hoe.default.coerce(p.range))&&hoe.default.valid(hoe.default.coerce(s.dependencies.typescript))&&(hoe.default.eq(hoe.default.coerce(p.range)||"",hoe.default.coerce(s.dependencies.typescript)||"")||(p.range=s.dependencies.typescript)),r.topLevelWorkspace.manifest.devDependencies.set(p.identHash,p),await r.persist()}})})).exitCode()}};var hwi=vt(Bn(),1),_wi=vt(Bn(),1),ywi=vt(Bn(),1),T_r=vt(No(),1),IYe=vt(No(),1),N_r=vt(No(),1),R_r=vt(bur(),1);import tMa from"node:assert";var rMa=(e,t,r)=>{let s=e.slice();return t.forEach((a,o)=>{typeof s[o]>"u"?s[o]=r?.cloneUnlessOtherwiseSpecified(a,r):r?.isMergeableObject(a)?s[o]=(0,R_r.default)(e[o],a,r):e.includes(a)||s.push(a)}),s},nMa=e=>e.endsWith("/**/*")?e:!e.endsWith("/**/*")&&e.endsWith("/*")?e.replace("/*","/**/*"):e,Iyt=class extends moe{static paths=[["tools","sync","tsconfig"]];async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(T_r.Filename.pnpCjs)&&t.includes(T_r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy(["tools","sync","tsconfig"])}async executeRegular(){let t=await hwi.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await _wi.Project.find(t,this.context.cwd);return(await ywi.StreamReport.start({stdout:this.context.stdout,configuration:t},async a=>{await a.startTimerPromise("Tools sync typescript config",async()=>{let o=N_r.ppath.join(r.topLevelWorkspace.cwd,"tsconfig.json"),g=await IYe.xfs.existsPromise(o)?await IYe.xfs.readJsonPromise(o):{compilerOptions:{}};await IYe.xfs.writeFilePromise(N_r.ppath.join(r.topLevelWorkspace.cwd,"project.types.d.ts"),`/// +`);let p=(0,R_r.default)(g,{compilerOptions:BU.compilerOptions},{arrayMerge:rMa}),f=(r.topLevelWorkspace.manifest.raw.workspaces||[]).map(nMa),m={...p,include:Array.from(new Set(["project.types.d.ts",...p.include,...f]))};try{tMa.deepEqual(g,m)}catch{await IYe.xfs.writeJsonPromise(o,m)}})})).exitCode()}};var iMa=[["tools","sync","typescript"],["tools","sync","tsconfig"],["install"]],Cyt=class extends moe{static paths=[["tools","sync"]];async executeRegular(){for(let t of iMa){let r=await this.cli.run(t);if(r!==0)return r}return 0}};var D_r=vt(Bn(),1),bwi=async(e,t)=>{await D_r.execUtils.pipevp("yarn",["tools","sync"],{cwd:t.cwd,stdin:t.stdin,stdout:t.stdout,stderr:t.stderr,end:D_r.execUtils.EndStrategy.ErrorCode})};var kwe=vt(No(),1),_oe=vt(No(),1);import{spawnSync as sMa}from"node:child_process";var x_r=e=>`${e}`,oMa=e=>sMa("git",e,{encoding:"utf-8"}),Ewi=async e=>{if(process.env.GITHUB_ACTIONS){console.log("AFTER INSTALL HOOK: Execution in GitHub Action");return}if(process.env.IMAGE_PACK)return;let t=kwe.ppath.join(e.cwd,".config/husky"),r=kwe.ppath.join(t,"_");await _oe.xfs.existsPromise(r)&&await _oe.xfs.removePromise(t),await _oe.xfs.existsPromise(t)||await _oe.xfs.mkdirPromise(t,{recursive:!0}),await _oe.xfs.writeFilePromise(kwe.ppath.join(t,"commit-msg"),x_r("yarn commit message lint"),{mode:493}),await _oe.xfs.writeFilePromise(kwe.ppath.join(t,"pre-commit"),x_r("yarn commit staged"),{mode:493}),await _oe.xfs.writeFilePromise(kwe.ppath.join(t,"prepare-commit-msg"),x_r("yarn commit message $@"),{mode:493});let{error:s}=oMa(["config","core.hooksPath",t]);if(s)throw s};var Bwi={hooks:{afterAllInstalled:Ewi,afterYarnVersionSet:bwi},commands:[Cyt,fyt,Iyt]};var V_r={};zf(V_r,{TypeCheckCommand:()=>CYe,default:()=>Nwi});var vwi=vt(il(),1),G_r=vt(Bn(),1),F_r=vt(Bn(),1),Z_r=vt(No(),1),Swi=vt(Bn(),1),wwi=vt(Bn(),1),L_r=vt(No(),1),myt=vt(No(),1);Zl();var Twi=vt(xc(),1);var hyt=vt(Ac(),1),CYe=class extends vwi.BaseCommand{static paths=[["typecheck"]];args=td.Rest({required:0});async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(Z_r.Filename.pnpCjs)&&t.includes(Z_r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await G_r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await F_r.Project.find(t,this.context.cwd),s=await myt.xfs.mktempPromise(),{code:a}=await wwi.execUtils.pipevp("yarn",["typecheck",...this.args],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:{...await Swi.scriptUtils.makeScriptEnv({binFolder:s,project:r}),COMMAND_PROXY_EXECUTION:"true"}});return a}async executeRegular(){let t=await G_r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await F_r.Project.find(t,this.context.cwd),s=await Gie.initialize(r.cwd),{clear:a}=(0,Twi.render)((0,hyt.jsx)(iht,{typescript:s}));try{let o=await s.check(await this.getIncludes(r));return o.forEach(g=>{Gy((0,hyt.jsx)(nht,{...g})).split(` +`).forEach(p=>{console.log(p)})}),o.length===0?0:1}catch(o){return Gy((0,hyt.jsx)(MD,{error:o})).split(` +`).forEach(g=>{console.error(g)}),1}finally{a()}}async getIncludes(t){if(this.args.length>0)return this.args;if(await myt.xfs.existsPromise(L_r.ppath.join(t.cwd,"tsconfig.json"))){let r=await myt.xfs.readJsonPromise(L_r.ppath.join(t.cwd,"tsconfig.json"));if(r.include&&r.include.length>0)return r.include}return t.topLevelWorkspace.manifest.workspaceDefinitions.map(r=>r.pattern)}};var Nwi={commands:[CYe]};var W_r={};zf(W_r,{WorkspacesChangedForeachCommand:()=>mYe,WorkspacesChangedListCommand:()=>hYe,default:()=>Qwi});var Rwi=vt(il(),1),Dwi=vt(il(),1),xwi=vt(Bn(),1),kwi=vt(Bn(),1),Gwi=vt(Bn(),1),Fwi=vt(Bn(),1);Zl();var mYe=class extends Rwi.BaseCommand{static paths=[["workspaces","changed","foreach"]];exclude=td.String("--exclude","");verbose=td.Boolean("-v,--verbose",!1);parallel=td.Boolean("-p,--parallel",!1);workTree=td.Boolean("-W,--worktree",!0);all=td.Boolean("-A,--all",!1);recursive=td.Boolean("-R,--recursive",!1);since=td.String("--since","");interlaced=td.Boolean("-i,--interlaced",!1);publicOnly=td.Boolean("--no-private",!1);topological=td.Boolean("-t,--topological",!1);topologicalDev=td.Boolean("--topological-dev",!1);jobs=td.String("-j,--jobs");commandName=td.String();args=td.Proxy();async execute(){let t=await xwi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await kwi.Project.find(t,this.context.cwd);if(!s)throw new Dwi.WorkspaceRequiredError(r.cwd,this.context.cwd);let a=await pz(r),o=eBe(r,a);if(!o.length)return(await Gwi.StreamReport.start({configuration:t,stdout:this.context.stdout},async f=>{f.reportInfo(null,"No workspaces changed")})).exitCode();let g=["workspaces","foreach"];return o.forEach(p=>{g.push("--include"),g.push(Fwi.structUtils.stringifyIdent(p.anchoredLocator))}),this.all?g.push("--all"):this.since.length>0?(g.push("--since"),g.push(this.since)):this.workTree&&g.push("--worktree"),this.exclude&&(g.push("--exclude"),g.push(this.exclude)),this.verbose&&g.push("--verbose"),this.parallel&&g.push("--parallel"),this.interlaced&&g.push("--interlaced"),this.publicOnly&&g.push("--no-private"),this.topological&&g.push("--topological"),this.topologicalDev&&g.push("--topological-dev"),this.jobs&&g.push("--jobs"),this.cli.run([...g,this.commandName,...this.args],{cwd:r.cwd})}};var Zwi=vt(il(),1),Lwi=vt(il(),1),Vwi=vt(Bn(),1),Wwi=vt(Bn(),1),Pwi=vt(Bn(),1),Owi=vt(Bn(),1);Zl();var hYe=class extends Zwi.BaseCommand{static paths=[["workspaces","changed","list"]];json=td.Boolean("--json",!1);async execute(){let t=await Vwi.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:s}=await Wwi.Project.find(t,this.context.cwd);if(!s)throw new Lwi.WorkspaceRequiredError(r.cwd,this.context.cwd);return(await Pwi.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout},async o=>{let g=await pz(r),p=eBe(r,g);for(let f of p)o.reportInfo(null,f.relativeCwd),o.reportJson({name:f.manifest.name?Owi.structUtils.stringifyIdent(f.manifest.name):null,location:f.relativeCwd})})).exitCode()}};var Qwi={commands:[mYe,hYe]};var r0r={};zf(r0r,{UiIconsGenerateCommand:()=>EYe,default:()=>nNi});var qTi=vt(il(),1),q_r=vt(Bn(),1),$_r=vt(Bn(),1),e0r=vt(No(),1),$Ti=vt(Bn(),1),eNi=vt(Bn(),1),tNi=vt(No(),1);Zl();import{join as zTi}from"node:path";import{relative as RHa}from"node:path";var rNi=vt(xc(),1);var _Ye=vt(xc(),1),jwi=vt($a(),1),zwi=vt($a(),1);var Mwi=vt($a(),1),Hwi=vt($a(),1),Xwi=vt(Ac(),1),Ywi=({icons:e})=>{let[t,r]=(0,Hwi.useState)(0);return(0,Mwi.useEffect)(()=>{let s=()=>{r(33)},a=()=>{r(66)},o=()=>{r(100)};return e.on("read:end",s),e.on("transform:end",a),e.on("save:end",o),()=>{e.off("read:end",s),e.off("transform:end",a),e.off("save:end",o)}},[e,r]),(0,Xwi.jsx)(CQ,{value:t})};var _yt=vt(xc(),1),yyt=vt(xc(),1),Jwi=vt($a(),1),Uwi=vt($a(),1);var dq=vt(Ac(),1),Kwi=({icons:e})=>{let[t,r]=(0,Uwi.useState)("Initilization...");return(0,Jwi.useEffect)(()=>{let s=()=>{r("Reading files...")},a=()=>{r("Transforming files...")},o=()=>{r("Saving files...")};return e.on("read:start",s),e.on("transform:start",a),e.on("save:start",o),()=>{e.off("read:start",s),e.off("transform:start",a),e.off("save:start",o)}},[e,r]),(0,dq.jsxs)(_yt.Box,{flexDirection:"row",width:"100%",children:[(0,dq.jsxs)(_yt.Box,{flexGrow:1,children:[(0,dq.jsx)(Lk,{color:"cyan",children:"Icons:"}),(0,dq.jsx)(yyt.Text,{children:" "}),(0,dq.jsx)(yyt.Text,{color:"white",children:t})]}),(0,dq.jsx)(_yt.Box,{flexDirection:"row",children:(0,dq.jsx)(yyt.Text,{color:"green",children:bI.tick})})]})};var yoe=vt(Ac(),1),qwi=({icons:e})=>{let[t,r]=(0,jwi.useState)(!1);return(0,zwi.useEffect)(()=>{let s=()=>{setTimeout(()=>{r(!0)},1)};return e.on("save:end",s),()=>{e.off("save:end",s)}},[r]),t?null:(0,yoe.jsx)(_Ye.Box,{position:"relative",height:7,children:(0,yoe.jsxs)(_Ye.Box,{flexDirection:"column",borderColor:"gray",padding:1,borderStyle:"round",position:"absolute",height:7,width:"100%",children:[(0,yoe.jsx)(_Ye.Box,{children:(0,yoe.jsx)(Kwi,{icons:e})}),(0,yoe.jsx)(_Ye.Box,{marginTop:1,marginBottom:1,children:(0,yoe.jsx)(Ywi,{icons:e})})]})})};import EHa from"node:events";import{access as BHa}from"node:fs/promises";import{mkdtemp as vHa}from"node:fs/promises";import{readFile as SHa}from"node:fs/promises";import{readdir as wHa}from"node:fs/promises";import{writeFile as UTi}from"node:fs/promises";import{mkdir as THa}from"node:fs/promises";import{tmpdir as NHa}from"node:os";import{join as pq}from"node:path";import{basename as KTi}from"node:path";import{extname as jTi}from"node:path";var aMa=/[\p{Lu}]/u,cMa=/[\p{Ll}]/u,$wi=/^[\p{Lu}](?![\p{Lu}])/gu,rTi=/([\p{Alpha}\p{N}_]|$)/u,P_r=/[_.\- ]+/,lMa=new RegExp("^"+P_r.source),eTi=new RegExp(P_r.source+rTi.source,"gu"),tTi=new RegExp("\\d+"+rTi.source,"gu"),uMa=(e,t,r,s)=>{let a=!1,o=!1,g=!1,p=!1;for(let f=0;f2?e[f-3]==="-":!0,a&&aMa.test(m)?(e=e.slice(0,f)+"-"+e.slice(f),a=!1,g=o,o=!0,f++):o&&g&&cMa.test(m)&&(!p||s)?(e=e.slice(0,f-1)+"-"+e.slice(f-1),g=o,o=!1,a=!0):(a=t(m)===m&&r(m)!==m,g=o,o=r(m)===m&&t(m)!==m)}return e},gMa=(e,t)=>($wi.lastIndex=0,e.replaceAll($wi,r=>t(r))),AMa=(e,t)=>(eTi.lastIndex=0,tTi.lastIndex=0,e.replaceAll(tTi,(r,s,a)=>["_","-"].includes(e.charAt(a+r.length))?r:t(r)).replaceAll(eTi,(r,s)=>t(s)));function O_r(e,t){if(!(typeof e=="string"||Array.isArray(e)))throw new TypeError("Expected the input to be `string | string[]`");if(t={pascalCase:!1,preserveConsecutiveUppercase:!1,...t},Array.isArray(e)?e=e.map(o=>o.trim()).filter(o=>o.length).join("-"):e=e.trim(),e.length===0)return"";let r=t.locale===!1?o=>o.toLowerCase():o=>o.toLocaleLowerCase(t.locale),s=t.locale===!1?o=>o.toUpperCase():o=>o.toLocaleUpperCase(t.locale);return e.length===1?P_r.test(e)?"":t.pascalCase?s(e):r(e):(e!==r(e)&&(e=uMa(e,r,s,t.preserveConsecutiveUppercase)),e=e.replace(lMa,""),e=t.preserveConsecutiveUppercase?gMa(e,r):r(e),t.pascalCase&&(e=s(e.charAt(0))+e.slice(1)),AMa(e,s))}var JTi=vt(XTi(),1);import{writeFile as _Ha}from"node:fs/promises";import{mkdtemp as yHa}from"node:fs/promises";import{tmpdir as bHa}from"node:os";import{join as Gyt}from"node:path";var Fyt=class{constructor(t,r,s){this.loaders=t;this.cwd=r;this.target=s}async build(){let t=new JTi.default;return await this.applyCommon(t),await this.applyModules(t),t.toConfig()}async applyCommon(t){t.mode("development").bail(!1).target("async-node").optimization.minimize(!1),t.entry("replacements").add(Gyt(this.cwd,"replacements")),t.entry("template").add(Gyt(this.cwd,"template")),t.output.path(this.target).filename("[name].mjs"),t.output.library({type:"module"}),t.output.chunkFormat("module"),t.output.module(!0),t.resolve.extensions.add(".tsx").add(".ts").add(".js"),t.resolve.extensionAlias.set(".js",[".js",".ts"]).set(".jsx",[".jsx",".tsx"]).set(".cjs",[".cjs",".cts"]).set(".mjs",[".mjs",".mts"]),t.externalsType("import"),t.externalsPresets({node:!0}),t.experiments({outputModule:!0})}async applyModules(t){let r=Gyt(await yHa(Gyt(bHa(),"tools-icons-")),"tsconfig.json");await _Ha(r,'{"include":["**/*"]}'),t.module.rule("ts").test(/.tsx?$/).use("ts").loader(this.loaders.tsLoader).options({transpileOnly:!0,experimentalWatchApi:!0,onlyCompileBundledFiles:!0,compilerOptions:{...BU.compilerOptions,sourceMap:!0},context:this.cwd,configFile:r})}};var Zyt=class e extends EHa{constructor(r,s,a,o){super();this.svgr=r;this.webpack=s;this.loaders=a;this.cwd=o}static async initialize(r){let{transform:s,jsx:a}=await import("@atls/code-runtime/svgr"),{webpack:o,tsLoaderPath:g}=await import("@atls/code-runtime/webpack");return new e({transform:s,jsx:a},o,{tsLoader:g},r)}async generate(r={}){await this.save(await this.transform(await this.read(pq(this.cwd,"icons")),r))}async compileReplacementsAndTemplate(){let r=await vHa(pq(NHa(),"tools-icons-")),s=this.webpack(await new Fyt(this.loaders,this.cwd,r).build());return await new Promise((a,o)=>{s.run(g=>{g&&o(g),a([])})}),{replacements:(await import(pq(r,"replacements.mjs"))).default,template:(await import(pq(r,"template.mjs"))).default}}async read(r){this.emit("read:start");let s=await wHa(r),a=await Promise.all(s.filter(o=>o.endsWith(".svg")).map(async o=>({source:await SHa(pq(r,o),"utf8"),component:O_r(KTi(o,jTi(o)),{pascalCase:!0}),name:KTi(o,jTi(o)),path:pq(r,o),file:o})));return this.emit("read:end"),a}async transform(r,s){this.emit("transform:start");let{replacements:a,template:o}=await this.compileReplacementsAndTemplate(),g=await Promise.all(r.map(async p=>{let f=await this.svgr.transform(p.source,{...s,icon:!0,template:o,typescript:!0,expandProps:!0,replaceAttrValues:a[`${p.component}Icon`]},{componentName:`${p.component}Icon`,caller:{name:"@atls/code-icons",defaultPlugins:[this.svgr.jsx]}});return{...p,output:f}}));return this.emit("transform:end"),g}async save(r){this.emit("save:start");let s=pq(this.cwd,"src");try{await BHa(s)}catch{await THa(s,{recursive:!0})}await Promise.all(r.map(async a=>UTi(pq(s,`${a.name}.icon.tsx`),a.output))),await UTi(pq(s,"index.ts"),r.map(a=>`export * from './${a.name}.icon.jsx'`).join(` +`)),this.emit("save:end")}};var t0r=vt(Ac(),1),EYe=class extends qTi.BaseCommand{static paths=[["ui","icons","generate"]];native=td.Boolean("-n, --native",!1);async execute(){let t=process.env.NODE_OPTIONS??"";return t.includes(e0r.Filename.pnpCjs)&&t.includes(e0r.Filename.pnpEsmLoader)?this.executeRegular():process.env.COMMAND_PROXY_EXECUTION==="true"?this.executeRegular():this.executeProxy()}async executeProxy(){let t=await q_r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await $_r.Project.find(t,this.context.cwd),s=await tNi.xfs.mktempPromise(),a=[];this.native&&a.push("--native");let{code:o}=await $Ti.execUtils.pipevp("yarn",["ui","icons","generate",...a],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:{...await eNi.scriptUtils.makeScriptEnv({binFolder:s,project:r}),COMMAND_PROXY_EXECUTION:"true"}});return o}async executeRegular(){let t=await q_r.Configuration.find(this.context.cwd,this.context.plugins),{project:r}=await $_r.Project.find(t,this.context.cwd),s=await Zyt.initialize(this.context.cwd),{clear:a}=(0,rNi.render)((0,t0r.jsx)(qwi,{icons:s}));try{await s.generate({native:this.native});let o=(await Pj("*.tsx",{cwd:zTi(this.context.cwd,"src")})).map(g=>zTi(RHa(r.cwd,this.context.cwd),"src",g));return await this.cli.run(["format",...o],{cwd:r.cwd}),await this.cli.run(["lint","--fix",...o],{cwd:r.cwd}),0}catch(o){return o instanceof Error?Gy((0,t0r.jsx)(MD,{error:o})).split(` +`).forEach(g=>{console.error(g)}):console.error(o),1}finally{a()}}};var nNi={commands:[EYe]};var fvr={};zf(fvr,{default:()=>pVi});var gVi=vt(il(),1),AVi=vt(Bn(),1),dVi=vt(Bn(),1);Zl();var iNi=(e,t)=>({stdout:e.context.stdout,configuration:t});var cVi=vt(No(),1),lVi=vt(No(),1);var rVi=vt(ANe(),1),nVi=vt(eVi(),1);var tVi=e=>{let t=e.path;switch(e.kind){case"error":console.error(`ERROR! ${t} ${e.description==="alreadyExist"?"already exists":"does not exist"}.`);break;case"update":console.debug(`UPDATE ${t} (${e.content.length} bytes)`);break;case"create":console.debug(`CREATE ${t} (${e.content.length} bytes)`);break;case"delete":console.debug(`DELETE ${t}`);break;case"rename":console.debug(`RENAME ${t} => ${e.to}`);break}};var iVi=async(e,t,r)=>{let o=!0,g=new nVi.NodeWorkflow(process.cwd(),{force:!1,dryRun:!1,resolvePaths:[process.cwd(),import.meta.dirname],packageManager:"yarn"});g.reporter.subscribe(p=>{o=!1,tVi(p)});try{return await g.execute({collection:r,schematic:e,options:t,allowPrivate:!0,debug:!0}).toPromise(),o&&console.info("Nothing to be done."),0}catch(p){return p instanceof rVi.UnsuccessfulWorkflowExecution?console.debug("The Schematic workflow failed. See above."):p instanceof Error?console.debug(`An error occured: +${p.stack}`):console.debug(`Error: ${p instanceof Error?p.message:p}`),1}};var pvr=vt(No(),1);import{mkdir as emc}from"node:fs/promises";var $Cc="dmFyIF9fY3JlYXRlID0gT2JqZWN0LmNyZWF0ZTsKdmFyIF9fZGVmUHJvcCA9IE9iamVjdC5kZWZpbmVQcm9wZXJ0eTsKdmFyIF9fZ2V0T3duUHJvcERlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yOwp2YXIgX19nZXRPd25Qcm9wTmFtZXMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lczsKdmFyIF9fZ2V0UHJvdG9PZiA9IE9iamVjdC5nZXRQcm90b3R5cGVPZjsKdmFyIF9faGFzT3duUHJvcCA9IE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7CnZhciBfX2NvbW1vbkpTID0gKGNiLCBtb2QpID0+IGZ1bmN0aW9uIF9fcmVxdWlyZSgpIHsKICByZXR1cm4gbW9kIHx8ICgwLCBjYltfX2dldE93blByb3BOYW1lcyhjYilbMF1dKSgobW9kID0geyBleHBvcnRzOiB7fSB9KS5leHBvcnRzLCBtb2QpLCBtb2QuZXhwb3J0czsKfTsKdmFyIF9fZXhwb3J0ID0gKHRhcmdldCwgYWxsKSA9PiB7CiAgZm9yICh2YXIgbmFtZSBpbiBhbGwpCiAgICBfX2RlZlByb3AodGFyZ2V0LCBuYW1lLCB7IGdldDogYWxsW25hbWVdLCBlbnVtZXJhYmxlOiB0cnVlIH0pOwp9Owp2YXIgX19jb3B5UHJvcHMgPSAodG8sIGZyb20sIGV4Y2VwdCwgZGVzYykgPT4gewogIGlmIChmcm9tICYmIHR5cGVvZiBmcm9tID09PSAib2JqZWN0IiB8fCB0eXBlb2YgZnJvbSA9PT0gImZ1bmN0aW9uIikgewogICAgZm9yIChsZXQga2V5IG9mIF9fZ2V0T3duUHJvcE5hbWVzKGZyb20pKQogICAgICBpZiAoIV9faGFzT3duUHJvcC5jYWxsKHRvLCBrZXkpICYmIGtleSAhPT0gZXhjZXB0KQogICAgICAgIF9fZGVmUHJvcCh0bywga2V5LCB7IGdldDogKCkgPT4gZnJvbVtrZXldLCBlbnVtZXJhYmxlOiAhKGRlc2MgPSBfX2dldE93blByb3BEZXNjKGZyb20sIGtleSkpIHx8IGRlc2MuZW51bWVyYWJsZSB9KTsKICB9CiAgcmV0dXJuIHRvOwp9Owp2YXIgX190b0VTTSA9IChtb2QsIGlzTm9kZU1vZGUsIHRhcmdldCkgPT4gKHRhcmdldCA9IG1vZCAhPSBudWxsID8gX19jcmVhdGUoX19nZXRQcm90b09mKG1vZCkpIDoge30sIF9fY29weVByb3BzKAogIC8vIElmIHRoZSBpbXBvcnRlciBpcyBpbiBub2RlIGNvbXBhdGliaWxpdHkgbW9kZSBvciB0aGlzIGlzIG5vdCBhbiBFU00KICAvLyBmaWxlIHRoYXQgaGFzIGJlZW4gY29udmVydGVkIHRvIGEgQ29tbW9uSlMgZmlsZSB1c2luZyBhIEJhYmVsLQogIC8vIGNvbXBhdGlibGUgdHJhbnNmb3JtIChpLmUuICJfX2VzTW9kdWxlIiBoYXMgbm90IGJlZW4gc2V0KSwgdGhlbiBzZXQKICAvLyAiZGVmYXVsdCIgdG8gdGhlIENvbW1vbkpTICJtb2R1bGUuZXhwb3J0cyIgZm9yIG5vZGUgY29tcGF0aWJpbGl0eS4KICBpc05vZGVNb2RlIHx8ICFtb2QgfHwgIW1vZC5fX2VzTW9kdWxlID8gX19kZWZQcm9wKHRhcmdldCwgImRlZmF1bHQiLCB7IHZhbHVlOiBtb2QsIGVudW1lcmFibGU6IHRydWUgfSkgOiB0YXJnZXQsCiAgbW9kCikpOwp2YXIgX190b0NvbW1vbkpTID0gKG1vZCkgPT4gX19jb3B5UHJvcHMoX19kZWZQcm9wKHt9LCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSksIG1vZCk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi91dGlscy5qcwp2YXIgcmVxdWlyZV91dGlscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi91dGlscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXNKc29uT2JqZWN0ID0gaXNKc29uT2JqZWN0OwogICAgZXhwb3J0czIuaXNKc29uQXJyYXkgPSBpc0pzb25BcnJheTsKICAgIGZ1bmN0aW9uIGlzSnNvbk9iamVjdCh2YWx1ZSkgewogICAgICByZXR1cm4gdmFsdWUgIT0gbnVsbCAmJiB0eXBlb2YgdmFsdWUgPT09ICJvYmplY3QiICYmICFBcnJheS5pc0FycmF5KHZhbHVlKTsKICAgIH0KICAgIGZ1bmN0aW9uIGlzSnNvbkFycmF5KHZhbHVlKSB7CiAgICAgIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3V0aWxpdHkuanMKdmFyIHJlcXVpcmVfdXRpbGl0eSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvdXRpbGl0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZ2V0VHlwZXNPZlNjaGVtYSA9IGdldFR5cGVzT2ZTY2hlbWE7CiAgICB2YXIgdXRpbHNfMSA9IHJlcXVpcmVfdXRpbHMoKTsKICAgIHZhciBhbGxUeXBlcyA9IFsic3RyaW5nIiwgImludGVnZXIiLCAibnVtYmVyIiwgIm9iamVjdCIsICJhcnJheSIsICJib29sZWFuIiwgIm51bGwiXTsKICAgIGZ1bmN0aW9uIGdldFR5cGVzT2ZTY2hlbWEoc2NoZW1hKSB7CiAgICAgIGlmICghc2NoZW1hKSB7CiAgICAgICAgcmV0dXJuIC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIH0KICAgICAgaWYgKHNjaGVtYSA9PT0gdHJ1ZSkgewogICAgICAgIHJldHVybiBuZXcgU2V0KGFsbFR5cGVzKTsKICAgICAgfQogICAgICBsZXQgcG90ZW50aWFsczsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEudHlwZSA9PT0gInN0cmluZyIpIHsKICAgICAgICBwb3RlbnRpYWxzID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoW3NjaGVtYS50eXBlXSk7CiAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShzY2hlbWEudHlwZSkpIHsKICAgICAgICBwb3RlbnRpYWxzID0gbmV3IFNldChzY2hlbWEudHlwZSk7CiAgICAgIH0gZWxzZSBpZiAoKDAsIHV0aWxzXzEuaXNKc29uQXJyYXkpKHNjaGVtYS5lbnVtKSkgewogICAgICAgIHBvdGVudGlhbHMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICAgIGZvciAoY29uc3QgdiBvZiBzY2hlbWEuZW51bSkgewogICAgICAgICAgc3dpdGNoICh0eXBlb2YgdikgewogICAgICAgICAgICBjYXNlICJzdHJpbmciOgogICAgICAgICAgICBjYXNlICJudW1iZXIiOgogICAgICAgICAgICBjYXNlICJib29sZWFuIjoKICAgICAgICAgICAgICBwb3RlbnRpYWxzLmFkZCh0eXBlb2Ygdik7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgIm9iamVjdCI6CiAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodikpIHsKICAgICAgICAgICAgICAgIHBvdGVudGlhbHMuYWRkKCJhcnJheSIpOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAodiA9PT0gbnVsbCkgewogICAgICAgICAgICAgICAgcG90ZW50aWFscy5hZGQoIm51bGwiKTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgcG90ZW50aWFscy5hZGQoIm9iamVjdCIpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcG90ZW50aWFscyA9IG5ldyBTZXQoYWxsVHlwZXMpOwogICAgICB9CiAgICAgIGlmICgoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHNjaGVtYS5ub3QpKSB7CiAgICAgICAgY29uc3Qgbm90VHlwZXMgPSBnZXRUeXBlc09mU2NoZW1hKHNjaGVtYS5ub3QpOwogICAgICAgIHBvdGVudGlhbHMgPSBuZXcgU2V0KFsuLi5wb3RlbnRpYWxzXS5maWx0ZXIoKHApID0+ICFub3RUeXBlcy5oYXMocCkpKTsKICAgICAgfQogICAgICBpZiAoQXJyYXkuaXNBcnJheShzY2hlbWEuYWxsT2YpKSB7CiAgICAgICAgZm9yIChjb25zdCBzdWIgb2Ygc2NoZW1hLmFsbE9mKSB7CiAgICAgICAgICBjb25zdCB0eXBlcyA9IGdldFR5cGVzT2ZTY2hlbWEoc3ViKTsKICAgICAgICAgIHBvdGVudGlhbHMgPSBuZXcgU2V0KFsuLi50eXBlc10uZmlsdGVyKCh0KSA9PiBwb3RlbnRpYWxzLmhhcyh0KSkpOwogICAgICAgIH0KICAgICAgfQogICAgICBpZiAoQXJyYXkuaXNBcnJheShzY2hlbWEub25lT2YpKSB7CiAgICAgICAgbGV0IG9wdGlvbnMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICAgIGZvciAoY29uc3Qgc3ViIG9mIHNjaGVtYS5vbmVPZikgewogICAgICAgICAgY29uc3QgdHlwZXMgPSBnZXRUeXBlc09mU2NoZW1hKHN1Yik7CiAgICAgICAgICBvcHRpb25zID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWy4uLm9wdGlvbnMsIC4uLnR5cGVzXSk7CiAgICAgICAgfQogICAgICAgIHBvdGVudGlhbHMgPSBuZXcgU2V0KFsuLi5vcHRpb25zXS5maWx0ZXIoKG8pID0+IHBvdGVudGlhbHMuaGFzKG8pKSk7CiAgICAgIH0KICAgICAgaWYgKEFycmF5LmlzQXJyYXkoc2NoZW1hLmFueU9mKSkgewogICAgICAgIGxldCBvcHRpb25zID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgICBmb3IgKGNvbnN0IHN1YiBvZiBzY2hlbWEuYW55T2YpIHsKICAgICAgICAgIGNvbnN0IHR5cGVzID0gZ2V0VHlwZXNPZlNjaGVtYShzdWIpOwogICAgICAgICAgb3B0aW9ucyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KFsuLi5vcHRpb25zLCAuLi50eXBlc10pOwogICAgICAgIH0KICAgICAgICBwb3RlbnRpYWxzID0gbmV3IFNldChbLi4ub3B0aW9uc10uZmlsdGVyKChvKSA9PiBwb3RlbnRpYWxzLmhhcyhvKSkpOwogICAgICB9CiAgICAgIGlmIChzY2hlbWEucHJvcGVydGllcykgewogICAgICAgIHBvdGVudGlhbHMuYWRkKCJvYmplY3QiKTsKICAgICAgfSBlbHNlIGlmIChzY2hlbWEuaXRlbXMpIHsKICAgICAgICBwb3RlbnRpYWxzLmFkZCgiYXJyYXkiKTsKICAgICAgfQogICAgICByZXR1cm4gcG90ZW50aWFsczsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3RyYW5zZm9ybXMuanMKdmFyIHJlcXVpcmVfdHJhbnNmb3JtcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvdHJhbnNmb3Jtcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYWRkVW5kZWZpbmVkRGVmYXVsdHMgPSBhZGRVbmRlZmluZWREZWZhdWx0czsKICAgIHZhciB1dGlsc18xID0gcmVxdWlyZV91dGlscygpOwogICAgdmFyIHV0aWxpdHlfMSA9IHJlcXVpcmVfdXRpbGl0eSgpOwogICAgZnVuY3Rpb24gYWRkVW5kZWZpbmVkRGVmYXVsdHModmFsdWUsIF9wb2ludGVyLCBzY2hlbWEpIHsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEgPT09ICJib29sZWFuIiB8fCBzY2hlbWEgPT09IHZvaWQgMCkgewogICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgfQogICAgICB2YWx1ZSA/Pz0gc2NoZW1hLmRlZmF1bHQ7CiAgICAgIGNvbnN0IHR5cGVzID0gKDAsIHV0aWxpdHlfMS5nZXRUeXBlc09mU2NoZW1hKShzY2hlbWEpOwogICAgICBpZiAodHlwZXMuc2l6ZSA9PT0gMCkgewogICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgfQogICAgICBsZXQgdHlwZTsKICAgICAgaWYgKHR5cGVzLnNpemUgPT09IDEpIHsKICAgICAgICB0eXBlID0gQXJyYXkuZnJvbSh0eXBlcylbMF07CiAgICAgIH0gZWxzZSBpZiAodHlwZXMuc2l6ZSA9PT0gMiAmJiB0eXBlcy5oYXMoImFycmF5IikgJiYgdHlwZXMuaGFzKCJvYmplY3QiKSkgewogICAgICAgIHR5cGUgPSAiYXJyYXkiOwogICAgICB9IGVsc2UgaWYgKHNjaGVtYS5wcm9wZXJ0aWVzICYmIHR5cGVzLmhhcygib2JqZWN0IikpIHsKICAgICAgICB0eXBlID0gIm9iamVjdCI7CiAgICAgIH0gZWxzZSBpZiAoc2NoZW1hLml0ZW1zICYmIHR5cGVzLmhhcygiYXJyYXkiKSkgewogICAgICAgIHR5cGUgPSAiYXJyYXkiOwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgfQogICAgICBpZiAodHlwZSA9PT0gImFycmF5IikgewogICAgICAgIHJldHVybiB2YWx1ZSA9PSB2b2lkIDAgPyBbXSA6IHZhbHVlOwogICAgICB9CiAgICAgIGlmICh0eXBlID09PSAib2JqZWN0IikgewogICAgICAgIGxldCBuZXdWYWx1ZTsKICAgICAgICBpZiAodmFsdWUgPT0gdm9pZCAwKSB7CiAgICAgICAgICBuZXdWYWx1ZSA9IHt9OwogICAgICAgIH0gZWxzZSBpZiAoKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkpIHsKICAgICAgICAgIG5ld1ZhbHVlID0gdmFsdWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgICB9CiAgICAgICAgaWYgKCEoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHNjaGVtYS5wcm9wZXJ0aWVzKSkgewogICAgICAgICAgcmV0dXJuIG5ld1ZhbHVlOwogICAgICAgIH0KICAgICAgICBmb3IgKGNvbnN0IFtwcm9wTmFtZSwgc2NoZW1hT2JqZWN0XSBvZiBPYmplY3QuZW50cmllcyhzY2hlbWEucHJvcGVydGllcykpIHsKICAgICAgICAgIGlmIChwcm9wTmFtZSA9PT0gIiRzY2hlbWEiIHx8ICEoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHNjaGVtYU9iamVjdCkpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCB2YWx1ZTIgPSBuZXdWYWx1ZVtwcm9wTmFtZV07CiAgICAgICAgICBpZiAodmFsdWUyID09PSB2b2lkIDApIHsKICAgICAgICAgICAgbmV3VmFsdWVbcHJvcE5hbWVdID0gc2NoZW1hT2JqZWN0LmRlZmF1bHQ7CiAgICAgICAgICB9IGVsc2UgaWYgKCgwLCB1dGlsc18xLmlzSnNvbk9iamVjdCkodmFsdWUyKSkgewogICAgICAgICAgICBjb25zdCBwcm9wZXJ0eVNjaGVtYXMgPSBzY2hlbWFPYmplY3Qub25lT2YgfHwgc2NoZW1hT2JqZWN0LmFueU9mOwogICAgICAgICAgICBjb25zdCBhbGxQcm9wZXJ0aWVzID0gT2JqZWN0LmtleXModmFsdWUyKTsKICAgICAgICAgICAgY29uc3QgYWRqdXN0ZWRTY2hlbWEgPSAoMCwgdXRpbHNfMS5pc0pzb25BcnJheSkocHJvcGVydHlTY2hlbWFzKSAmJiBwcm9wZXJ0eVNjaGVtYXMuZmluZCgocykgPT4gewogICAgICAgICAgICAgIGlmICghKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KShzKSkgewogICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBjb25zdCBzY2hlbWFUeXBlID0gKDAsIHV0aWxpdHlfMS5nZXRUeXBlc09mU2NoZW1hKShzKTsKICAgICAgICAgICAgICBpZiAoc2NoZW1hVHlwZS5zaXplID09PSAxICYmIHNjaGVtYVR5cGUuaGFzKCJvYmplY3QiKSAmJiAoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHMucHJvcGVydGllcykpIHsKICAgICAgICAgICAgICAgIGNvbnN0IHByb3BlcnRpZXMgPSBPYmplY3Qua2V5cyhzLnByb3BlcnRpZXMpOwogICAgICAgICAgICAgICAgcmV0dXJuIGFsbFByb3BlcnRpZXMuZXZlcnkoKGtleSkgPT4gcHJvcGVydGllcy5pbmNsdWRlcyhrZXkpKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgICB9KTsKICAgICAgICAgICAgaWYgKGFkanVzdGVkU2NoZW1hICYmICgwLCB1dGlsc18xLmlzSnNvbk9iamVjdCkoYWRqdXN0ZWRTY2hlbWEpKSB7CiAgICAgICAgICAgICAgbmV3VmFsdWVbcHJvcE5hbWVdID0gYWRkVW5kZWZpbmVkRGVmYXVsdHModmFsdWUyLCBfcG9pbnRlciwgYWRqdXN0ZWRTY2hlbWEpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBuZXdWYWx1ZTsKICAgICAgfQogICAgICByZXR1cm4gdmFsdWU7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9pbnRlcmZhY2UuanMKdmFyIHJlcXVpcmVfaW50ZXJmYWNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9pbnRlcmZhY2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3BvaW50ZXIuanMKdmFyIHJlcXVpcmVfcG9pbnRlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvcG9pbnRlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYnVpbGRKc29uUG9pbnRlciA9IGJ1aWxkSnNvblBvaW50ZXI7CiAgICBleHBvcnRzMi5qb2luSnNvblBvaW50ZXIgPSBqb2luSnNvblBvaW50ZXI7CiAgICBleHBvcnRzMi5wYXJzZUpzb25Qb2ludGVyID0gcGFyc2VKc29uUG9pbnRlcjsKICAgIGZ1bmN0aW9uIGJ1aWxkSnNvblBvaW50ZXIoZnJhZ21lbnRzKSB7CiAgICAgIHJldHVybiAiLyIgKyBmcmFnbWVudHMubWFwKChmKSA9PiB7CiAgICAgICAgcmV0dXJuIGYucmVwbGFjZSgvfi9nLCAifjAiKS5yZXBsYWNlKC9cLy9nLCAifjEiKTsKICAgICAgfSkuam9pbigiLyIpOwogICAgfQogICAgZnVuY3Rpb24gam9pbkpzb25Qb2ludGVyKHJvb3QsIC4uLm90aGVycykgewogICAgICBpZiAocm9vdCA9PSAiLyIpIHsKICAgICAgICByZXR1cm4gYnVpbGRKc29uUG9pbnRlcihvdGhlcnMpOwogICAgICB9CiAgICAgIHJldHVybiByb290ICsgYnVpbGRKc29uUG9pbnRlcihvdGhlcnMpOwogICAgfQogICAgZnVuY3Rpb24gcGFyc2VKc29uUG9pbnRlcihwb2ludGVyKSB7CiAgICAgIGlmIChwb2ludGVyID09PSAiIikgewogICAgICAgIHJldHVybiBbXTsKICAgICAgfQogICAgICBpZiAocG9pbnRlci5jaGFyQXQoMCkgIT09ICIvIikgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiUmVsYXRpdmUgcG9pbnRlcjogIiArIHBvaW50ZXIpOwogICAgICB9CiAgICAgIHJldHVybiBwb2ludGVyLnN1YnN0cmluZygxKS5zcGxpdCgvXC8vKS5tYXAoKHN0cikgPT4gc3RyLnJlcGxhY2UoL34xL2csICIvIikucmVwbGFjZSgvfjAvZywgIn4iKSk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL2NvZGVnZW4vY29kZS5qcwp2YXIgcmVxdWlyZV9jb2RlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL2NvZGVnZW4vY29kZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmVnZXhwQ29kZSA9IGV4cG9ydHMyLmdldEVzbUV4cG9ydE5hbWUgPSBleHBvcnRzMi5nZXRQcm9wZXJ0eSA9IGV4cG9ydHMyLnNhZmVTdHJpbmdpZnkgPSBleHBvcnRzMi5zdHJpbmdpZnkgPSBleHBvcnRzMi5zdHJDb25jYXQgPSBleHBvcnRzMi5hZGRDb2RlQXJnID0gZXhwb3J0czIuc3RyID0gZXhwb3J0czIuXyA9IGV4cG9ydHMyLm5pbCA9IGV4cG9ydHMyLl9Db2RlID0gZXhwb3J0czIuTmFtZSA9IGV4cG9ydHMyLklERU5USUZJRVIgPSBleHBvcnRzMi5fQ29kZU9yTmFtZSA9IHZvaWQgMDsKICAgIHZhciBfQ29kZU9yTmFtZSA9IGNsYXNzIHsKICAgIH07CiAgICBleHBvcnRzMi5fQ29kZU9yTmFtZSA9IF9Db2RlT3JOYW1lOwogICAgZXhwb3J0czIuSURFTlRJRklFUiA9IC9eW2EteiRfXVthLXokXzAtOV0qJC9pOwogICAgdmFyIE5hbWUgPSBjbGFzcyBleHRlbmRzIF9Db2RlT3JOYW1lIHsKICAgICAgY29uc3RydWN0b3IocykgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgaWYgKCFleHBvcnRzMi5JREVOVElGSUVSLnRlc3QocykpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNvZGVHZW46IG5hbWUgbXVzdCBiZSBhIHZhbGlkIGlkZW50aWZpZXIiKTsKICAgICAgICB0aGlzLnN0ciA9IHM7CiAgICAgIH0KICAgICAgdG9TdHJpbmcoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuc3RyOwogICAgICB9CiAgICAgIGVtcHR5U3RyKCkgewogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgICBnZXQgbmFtZXMoKSB7CiAgICAgICAgcmV0dXJuIHsgW3RoaXMuc3RyXTogMSB9OwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTmFtZSA9IE5hbWU7CiAgICB2YXIgX0NvZGUgPSBjbGFzcyBleHRlbmRzIF9Db2RlT3JOYW1lIHsKICAgICAgY29uc3RydWN0b3IoY29kZSkgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5faXRlbXMgPSB0eXBlb2YgY29kZSA9PT0gInN0cmluZyIgPyBbY29kZV0gOiBjb2RlOwogICAgICB9CiAgICAgIHRvU3RyaW5nKCkgewogICAgICAgIHJldHVybiB0aGlzLnN0cjsKICAgICAgfQogICAgICBlbXB0eVN0cigpIHsKICAgICAgICBpZiAodGhpcy5faXRlbXMubGVuZ3RoID4gMSkKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICBjb25zdCBpdGVtID0gdGhpcy5faXRlbXNbMF07CiAgICAgICAgcmV0dXJuIGl0ZW0gPT09ICIiIHx8IGl0ZW0gPT09ICciIic7CiAgICAgIH0KICAgICAgZ2V0IHN0cigpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgcmV0dXJuIChfYSA9IHRoaXMuX3N0cikgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogdGhpcy5fc3RyID0gdGhpcy5faXRlbXMucmVkdWNlKChzLCBjKSA9PiBgJHtzfSR7Y31gLCAiIik7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIHZhciBfYTsKICAgICAgICByZXR1cm4gKF9hID0gdGhpcy5fbmFtZXMpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IHRoaXMuX25hbWVzID0gdGhpcy5faXRlbXMucmVkdWNlKChuYW1lcywgYykgPT4gewogICAgICAgICAgaWYgKGMgaW5zdGFuY2VvZiBOYW1lKQogICAgICAgICAgICBuYW1lc1tjLnN0cl0gPSAobmFtZXNbYy5zdHJdIHx8IDApICsgMTsKICAgICAgICAgIHJldHVybiBuYW1lczsKICAgICAgICB9LCB7fSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5fQ29kZSA9IF9Db2RlOwogICAgZXhwb3J0czIubmlsID0gbmV3IF9Db2RlKCIiKTsKICAgIGZ1bmN0aW9uIF8oc3RycywgLi4uYXJncykgewogICAgICBjb25zdCBjb2RlID0gW3N0cnNbMF1dOwogICAgICBsZXQgaSA9IDA7CiAgICAgIHdoaWxlIChpIDwgYXJncy5sZW5ndGgpIHsKICAgICAgICBhZGRDb2RlQXJnKGNvZGUsIGFyZ3NbaV0pOwogICAgICAgIGNvZGUucHVzaChzdHJzWysraV0pOwogICAgICB9CiAgICAgIHJldHVybiBuZXcgX0NvZGUoY29kZSk7CiAgICB9CiAgICBleHBvcnRzMi5fID0gXzsKICAgIHZhciBwbHVzID0gbmV3IF9Db2RlKCIrIik7CiAgICBmdW5jdGlvbiBzdHIoc3RycywgLi4uYXJncykgewogICAgICBjb25zdCBleHByID0gW3NhZmVTdHJpbmdpZnkoc3Ryc1swXSldOwogICAgICBsZXQgaSA9IDA7CiAgICAgIHdoaWxlIChpIDwgYXJncy5sZW5ndGgpIHsKICAgICAgICBleHByLnB1c2gocGx1cyk7CiAgICAgICAgYWRkQ29kZUFyZyhleHByLCBhcmdzW2ldKTsKICAgICAgICBleHByLnB1c2gocGx1cywgc2FmZVN0cmluZ2lmeShzdHJzWysraV0pKTsKICAgICAgfQogICAgICBvcHRpbWl6ZShleHByKTsKICAgICAgcmV0dXJuIG5ldyBfQ29kZShleHByKTsKICAgIH0KICAgIGV4cG9ydHMyLnN0ciA9IHN0cjsKICAgIGZ1bmN0aW9uIGFkZENvZGVBcmcoY29kZSwgYXJnKSB7CiAgICAgIGlmIChhcmcgaW5zdGFuY2VvZiBfQ29kZSkKICAgICAgICBjb2RlLnB1c2goLi4uYXJnLl9pdGVtcyk7CiAgICAgIGVsc2UgaWYgKGFyZyBpbnN0YW5jZW9mIE5hbWUpCiAgICAgICAgY29kZS5wdXNoKGFyZyk7CiAgICAgIGVsc2UKICAgICAgICBjb2RlLnB1c2goaW50ZXJwb2xhdGUoYXJnKSk7CiAgICB9CiAgICBleHBvcnRzMi5hZGRDb2RlQXJnID0gYWRkQ29kZUFyZzsKICAgIGZ1bmN0aW9uIG9wdGltaXplKGV4cHIpIHsKICAgICAgbGV0IGkgPSAxOwogICAgICB3aGlsZSAoaSA8IGV4cHIubGVuZ3RoIC0gMSkgewogICAgICAgIGlmIChleHByW2ldID09PSBwbHVzKSB7CiAgICAgICAgICBjb25zdCByZXMgPSBtZXJnZUV4cHJJdGVtcyhleHByW2kgLSAxXSwgZXhwcltpICsgMV0pOwogICAgICAgICAgaWYgKHJlcyAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgIGV4cHIuc3BsaWNlKGkgLSAxLCAzLCByZXMpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGV4cHJbaSsrXSA9ICIrIjsKICAgICAgICB9CiAgICAgICAgaSsrOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBtZXJnZUV4cHJJdGVtcyhhLCBiKSB7CiAgICAgIGlmIChiID09PSAnIiInKQogICAgICAgIHJldHVybiBhOwogICAgICBpZiAoYSA9PT0gJyIiJykKICAgICAgICByZXR1cm4gYjsKICAgICAgaWYgKHR5cGVvZiBhID09ICJzdHJpbmciKSB7CiAgICAgICAgaWYgKGIgaW5zdGFuY2VvZiBOYW1lIHx8IGFbYS5sZW5ndGggLSAxXSAhPT0gJyInKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGlmICh0eXBlb2YgYiAhPSAic3RyaW5nIikKICAgICAgICAgIHJldHVybiBgJHthLnNsaWNlKDAsIC0xKX0ke2J9ImA7CiAgICAgICAgaWYgKGJbMF0gPT09ICciJykKICAgICAgICAgIHJldHVybiBhLnNsaWNlKDAsIC0xKSArIGIuc2xpY2UoMSk7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgYiA9PSAic3RyaW5nIiAmJiBiWzBdID09PSAnIicgJiYgIShhIGluc3RhbmNlb2YgTmFtZSkpCiAgICAgICAgcmV0dXJuIGAiJHthfSR7Yi5zbGljZSgxKX1gOwogICAgICByZXR1cm47CiAgICB9CiAgICBmdW5jdGlvbiBzdHJDb25jYXQoYzEsIGMyKSB7CiAgICAgIHJldHVybiBjMi5lbXB0eVN0cigpID8gYzEgOiBjMS5lbXB0eVN0cigpID8gYzIgOiBzdHJgJHtjMX0ke2MyfWA7CiAgICB9CiAgICBleHBvcnRzMi5zdHJDb25jYXQgPSBzdHJDb25jYXQ7CiAgICBmdW5jdGlvbiBpbnRlcnBvbGF0ZSh4KSB7CiAgICAgIHJldHVybiB0eXBlb2YgeCA9PSAibnVtYmVyIiB8fCB0eXBlb2YgeCA9PSAiYm9vbGVhbiIgfHwgeCA9PT0gbnVsbCA/IHggOiBzYWZlU3RyaW5naWZ5KEFycmF5LmlzQXJyYXkoeCkgPyB4LmpvaW4oIiwiKSA6IHgpOwogICAgfQogICAgZnVuY3Rpb24gc3RyaW5naWZ5KHgpIHsKICAgICAgcmV0dXJuIG5ldyBfQ29kZShzYWZlU3RyaW5naWZ5KHgpKTsKICAgIH0KICAgIGV4cG9ydHMyLnN0cmluZ2lmeSA9IHN0cmluZ2lmeTsKICAgIGZ1bmN0aW9uIHNhZmVTdHJpbmdpZnkoeCkgewogICAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkoeCkucmVwbGFjZSgvXHUyMDI4L2csICJcXHUyMDI4IikucmVwbGFjZSgvXHUyMDI5L2csICJcXHUyMDI5Iik7CiAgICB9CiAgICBleHBvcnRzMi5zYWZlU3RyaW5naWZ5ID0gc2FmZVN0cmluZ2lmeTsKICAgIGZ1bmN0aW9uIGdldFByb3BlcnR5KGtleSkgewogICAgICByZXR1cm4gdHlwZW9mIGtleSA9PSAic3RyaW5nIiAmJiBleHBvcnRzMi5JREVOVElGSUVSLnRlc3Qoa2V5KSA/IG5ldyBfQ29kZShgLiR7a2V5fWApIDogX2BbJHtrZXl9XWA7CiAgICB9CiAgICBleHBvcnRzMi5nZXRQcm9wZXJ0eSA9IGdldFByb3BlcnR5OwogICAgZnVuY3Rpb24gZ2V0RXNtRXhwb3J0TmFtZShrZXkpIHsKICAgICAgaWYgKHR5cGVvZiBrZXkgPT0gInN0cmluZyIgJiYgZXhwb3J0czIuSURFTlRJRklFUi50ZXN0KGtleSkpIHsKICAgICAgICByZXR1cm4gbmV3IF9Db2RlKGAke2tleX1gKTsKICAgICAgfQogICAgICB0aHJvdyBuZXcgRXJyb3IoYENvZGVHZW46IGludmFsaWQgZXhwb3J0IG5hbWU6ICR7a2V5fSwgdXNlIGV4cGxpY2l0ICRpZCBuYW1lIG1hcHBpbmdgKTsKICAgIH0KICAgIGV4cG9ydHMyLmdldEVzbUV4cG9ydE5hbWUgPSBnZXRFc21FeHBvcnROYW1lOwogICAgZnVuY3Rpb24gcmVnZXhwQ29kZShyeCkgewogICAgICByZXR1cm4gbmV3IF9Db2RlKHJ4LnRvU3RyaW5nKCkpOwogICAgfQogICAgZXhwb3J0czIucmVnZXhwQ29kZSA9IHJlZ2V4cENvZGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL2NvZGVnZW4vc2NvcGUuanMKdmFyIHJlcXVpcmVfc2NvcGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvY29kZWdlbi9zY29wZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVmFsdWVTY29wZSA9IGV4cG9ydHMyLlZhbHVlU2NvcGVOYW1lID0gZXhwb3J0czIuU2NvcGUgPSBleHBvcnRzMi52YXJLaW5kcyA9IGV4cG9ydHMyLlVzZWRWYWx1ZVN0YXRlID0gdm9pZCAwOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZSgpOwogICAgdmFyIFZhbHVlRXJyb3IgPSBjbGFzcyBleHRlbmRzIEVycm9yIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBDb2RlR2VuOiAiY29kZSIgZm9yICR7bmFtZX0gbm90IGRlZmluZWRgKTsKICAgICAgICB0aGlzLnZhbHVlID0gbmFtZS52YWx1ZTsKICAgICAgfQogICAgfTsKICAgIHZhciBVc2VkVmFsdWVTdGF0ZTsKICAgIChmdW5jdGlvbihVc2VkVmFsdWVTdGF0ZTIpIHsKICAgICAgVXNlZFZhbHVlU3RhdGUyW1VzZWRWYWx1ZVN0YXRlMlsiU3RhcnRlZCJdID0gMF0gPSAiU3RhcnRlZCI7CiAgICAgIFVzZWRWYWx1ZVN0YXRlMltVc2VkVmFsdWVTdGF0ZTJbIkNvbXBsZXRlZCJdID0gMV0gPSAiQ29tcGxldGVkIjsKICAgIH0pKFVzZWRWYWx1ZVN0YXRlIHx8IChleHBvcnRzMi5Vc2VkVmFsdWVTdGF0ZSA9IFVzZWRWYWx1ZVN0YXRlID0ge30pKTsKICAgIGV4cG9ydHMyLnZhcktpbmRzID0gewogICAgICBjb25zdDogbmV3IGNvZGVfMS5OYW1lKCJjb25zdCIpLAogICAgICBsZXQ6IG5ldyBjb2RlXzEuTmFtZSgibGV0IiksCiAgICAgIHZhcjogbmV3IGNvZGVfMS5OYW1lKCJ2YXIiKQogICAgfTsKICAgIHZhciBTY29wZSA9IGNsYXNzIHsKICAgICAgY29uc3RydWN0b3IoeyBwcmVmaXhlcywgcGFyZW50IH0gPSB7fSkgewogICAgICAgIHRoaXMuX25hbWVzID0ge307CiAgICAgICAgdGhpcy5fcHJlZml4ZXMgPSBwcmVmaXhlczsKICAgICAgICB0aGlzLl9wYXJlbnQgPSBwYXJlbnQ7CiAgICAgIH0KICAgICAgdG9OYW1lKG5hbWVPclByZWZpeCkgewogICAgICAgIHJldHVybiBuYW1lT3JQcmVmaXggaW5zdGFuY2VvZiBjb2RlXzEuTmFtZSA/IG5hbWVPclByZWZpeCA6IHRoaXMubmFtZShuYW1lT3JQcmVmaXgpOwogICAgICB9CiAgICAgIG5hbWUocHJlZml4KSB7CiAgICAgICAgcmV0dXJuIG5ldyBjb2RlXzEuTmFtZSh0aGlzLl9uZXdOYW1lKHByZWZpeCkpOwogICAgICB9CiAgICAgIF9uZXdOYW1lKHByZWZpeCkgewogICAgICAgIGNvbnN0IG5nID0gdGhpcy5fbmFtZXNbcHJlZml4XSB8fCB0aGlzLl9uYW1lR3JvdXAocHJlZml4KTsKICAgICAgICByZXR1cm4gYCR7cHJlZml4fSR7bmcuaW5kZXgrK31gOwogICAgICB9CiAgICAgIF9uYW1lR3JvdXAocHJlZml4KSB7CiAgICAgICAgdmFyIF9hLCBfYjsKICAgICAgICBpZiAoKChfYiA9IChfYSA9IHRoaXMuX3BhcmVudCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLl9wcmVmaXhlcykgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLmhhcyhwcmVmaXgpKSB8fCB0aGlzLl9wcmVmaXhlcyAmJiAhdGhpcy5fcHJlZml4ZXMuaGFzKHByZWZpeCkpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ29kZUdlbjogcHJlZml4ICIke3ByZWZpeH0iIGlzIG5vdCBhbGxvd2VkIGluIHRoaXMgc2NvcGVgKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX25hbWVzW3ByZWZpeF0gPSB7IHByZWZpeCwgaW5kZXg6IDAgfTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNjb3BlID0gU2NvcGU7CiAgICB2YXIgVmFsdWVTY29wZU5hbWUgPSBjbGFzcyBleHRlbmRzIGNvZGVfMS5OYW1lIHsKICAgICAgY29uc3RydWN0b3IocHJlZml4LCBuYW1lU3RyKSB7CiAgICAgICAgc3VwZXIobmFtZVN0cik7CiAgICAgICAgdGhpcy5wcmVmaXggPSBwcmVmaXg7CiAgICAgIH0KICAgICAgc2V0VmFsdWUodmFsdWUsIHsgcHJvcGVydHksIGl0ZW1JbmRleCB9KSB7CiAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlOwogICAgICAgIHRoaXMuc2NvcGVQYXRoID0gKDAsIGNvZGVfMS5fKWAuJHtuZXcgY29kZV8xLk5hbWUocHJvcGVydHkpfVske2l0ZW1JbmRleH1dYDsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlZhbHVlU2NvcGVOYW1lID0gVmFsdWVTY29wZU5hbWU7CiAgICB2YXIgbGluZSA9ICgwLCBjb2RlXzEuXylgXG5gOwogICAgdmFyIFZhbHVlU2NvcGUgPSBjbGFzcyBleHRlbmRzIFNjb3BlIHsKICAgICAgY29uc3RydWN0b3Iob3B0cykgewogICAgICAgIHN1cGVyKG9wdHMpOwogICAgICAgIHRoaXMuX3ZhbHVlcyA9IHt9OwogICAgICAgIHRoaXMuX3Njb3BlID0gb3B0cy5zY29wZTsKICAgICAgICB0aGlzLm9wdHMgPSB7IC4uLm9wdHMsIF9uOiBvcHRzLmxpbmVzID8gbGluZSA6IGNvZGVfMS5uaWwgfTsKICAgICAgfQogICAgICBnZXQoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3Njb3BlOwogICAgICB9CiAgICAgIG5hbWUocHJlZml4KSB7CiAgICAgICAgcmV0dXJuIG5ldyBWYWx1ZVNjb3BlTmFtZShwcmVmaXgsIHRoaXMuX25ld05hbWUocHJlZml4KSk7CiAgICAgIH0KICAgICAgdmFsdWUobmFtZU9yUHJlZml4LCB2YWx1ZSkgewogICAgICAgIHZhciBfYTsKICAgICAgICBpZiAodmFsdWUucmVmID09PSB2b2lkIDApCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNvZGVHZW46IHJlZiBtdXN0IGJlIHBhc3NlZCBpbiB2YWx1ZSIpOwogICAgICAgIGNvbnN0IG5hbWUgPSB0aGlzLnRvTmFtZShuYW1lT3JQcmVmaXgpOwogICAgICAgIGNvbnN0IHsgcHJlZml4IH0gPSBuYW1lOwogICAgICAgIGNvbnN0IHZhbHVlS2V5ID0gKF9hID0gdmFsdWUua2V5KSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiB2YWx1ZS5yZWY7CiAgICAgICAgbGV0IHZzID0gdGhpcy5fdmFsdWVzW3ByZWZpeF07CiAgICAgICAgaWYgKHZzKSB7CiAgICAgICAgICBjb25zdCBfbmFtZSA9IHZzLmdldCh2YWx1ZUtleSk7CiAgICAgICAgICBpZiAoX25hbWUpCiAgICAgICAgICAgIHJldHVybiBfbmFtZTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdnMgPSB0aGlzLl92YWx1ZXNbcHJlZml4XSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgICAgfQogICAgICAgIHZzLnNldCh2YWx1ZUtleSwgbmFtZSk7CiAgICAgICAgY29uc3QgcyA9IHRoaXMuX3Njb3BlW3ByZWZpeF0gfHwgKHRoaXMuX3Njb3BlW3ByZWZpeF0gPSBbXSk7CiAgICAgICAgY29uc3QgaXRlbUluZGV4ID0gcy5sZW5ndGg7CiAgICAgICAgc1tpdGVtSW5kZXhdID0gdmFsdWUucmVmOwogICAgICAgIG5hbWUuc2V0VmFsdWUodmFsdWUsIHsgcHJvcGVydHk6IHByZWZpeCwgaXRlbUluZGV4IH0pOwogICAgICAgIHJldHVybiBuYW1lOwogICAgICB9CiAgICAgIGdldFZhbHVlKHByZWZpeCwga2V5T3JSZWYpIHsKICAgICAgICBjb25zdCB2cyA9IHRoaXMuX3ZhbHVlc1twcmVmaXhdOwogICAgICAgIGlmICghdnMpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgcmV0dXJuIHZzLmdldChrZXlPclJlZik7CiAgICAgIH0KICAgICAgc2NvcGVSZWZzKHNjb3BlTmFtZSwgdmFsdWVzID0gdGhpcy5fdmFsdWVzKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3JlZHVjZVZhbHVlcyh2YWx1ZXMsIChuYW1lKSA9PiB7CiAgICAgICAgICBpZiAobmFtZS5zY29wZVBhdGggPT09IHZvaWQgMCkKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb2RlR2VuOiBuYW1lICIke25hbWV9IiBoYXMgbm8gdmFsdWVgKTsKICAgICAgICAgIHJldHVybiAoMCwgY29kZV8xLl8pYCR7c2NvcGVOYW1lfSR7bmFtZS5zY29wZVBhdGh9YDsKICAgICAgICB9KTsKICAgICAgfQogICAgICBzY29wZUNvZGUodmFsdWVzID0gdGhpcy5fdmFsdWVzLCB1c2VkVmFsdWVzLCBnZXRDb2RlKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3JlZHVjZVZhbHVlcyh2YWx1ZXMsIChuYW1lKSA9PiB7CiAgICAgICAgICBpZiAobmFtZS52YWx1ZSA9PT0gdm9pZCAwKQogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENvZGVHZW46IG5hbWUgIiR7bmFtZX0iIGhhcyBubyB2YWx1ZWApOwogICAgICAgICAgcmV0dXJuIG5hbWUudmFsdWUuY29kZTsKICAgICAgICB9LCB1c2VkVmFsdWVzLCBnZXRDb2RlKTsKICAgICAgfQogICAgICBfcmVkdWNlVmFsdWVzKHZhbHVlcywgdmFsdWVDb2RlLCB1c2VkVmFsdWVzID0ge30sIGdldENvZGUpIHsKICAgICAgICBsZXQgY29kZSA9IGNvZGVfMS5uaWw7CiAgICAgICAgZm9yIChjb25zdCBwcmVmaXggaW4gdmFsdWVzKSB7CiAgICAgICAgICBjb25zdCB2cyA9IHZhbHVlc1twcmVmaXhdOwogICAgICAgICAgaWYgKCF2cykKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICBjb25zdCBuYW1lU2V0ID0gdXNlZFZhbHVlc1twcmVmaXhdID0gdXNlZFZhbHVlc1twcmVmaXhdIHx8IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgICAgICB2cy5mb3JFYWNoKChuYW1lKSA9PiB7CiAgICAgICAgICAgIGlmIChuYW1lU2V0LmhhcyhuYW1lKSkKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIG5hbWVTZXQuc2V0KG5hbWUsIFVzZWRWYWx1ZVN0YXRlLlN0YXJ0ZWQpOwogICAgICAgICAgICBsZXQgYyA9IHZhbHVlQ29kZShuYW1lKTsKICAgICAgICAgICAgaWYgKGMpIHsKICAgICAgICAgICAgICBjb25zdCBkZWYgPSB0aGlzLm9wdHMuZXM1ID8gZXhwb3J0czIudmFyS2luZHMudmFyIDogZXhwb3J0czIudmFyS2luZHMuY29uc3Q7CiAgICAgICAgICAgICAgY29kZSA9ICgwLCBjb2RlXzEuXylgJHtjb2RlfSR7ZGVmfSAke25hbWV9ID0gJHtjfTske3RoaXMub3B0cy5fbn1gOwogICAgICAgICAgICB9IGVsc2UgaWYgKGMgPSBnZXRDb2RlID09PSBudWxsIHx8IGdldENvZGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGdldENvZGUobmFtZSkpIHsKICAgICAgICAgICAgICBjb2RlID0gKDAsIGNvZGVfMS5fKWAke2NvZGV9JHtjfSR7dGhpcy5vcHRzLl9ufWA7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IFZhbHVlRXJyb3IobmFtZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbmFtZVNldC5zZXQobmFtZSwgVXNlZFZhbHVlU3RhdGUuQ29tcGxldGVkKTsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gY29kZTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlZhbHVlU2NvcGUgPSBWYWx1ZVNjb3BlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9jb2RlZ2VuL2luZGV4LmpzCnZhciByZXF1aXJlX2NvZGVnZW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvY29kZWdlbi9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIub3IgPSBleHBvcnRzMi5hbmQgPSBleHBvcnRzMi5ub3QgPSBleHBvcnRzMi5Db2RlR2VuID0gZXhwb3J0czIub3BlcmF0b3JzID0gZXhwb3J0czIudmFyS2luZHMgPSBleHBvcnRzMi5WYWx1ZVNjb3BlTmFtZSA9IGV4cG9ydHMyLlZhbHVlU2NvcGUgPSBleHBvcnRzMi5TY29wZSA9IGV4cG9ydHMyLk5hbWUgPSBleHBvcnRzMi5yZWdleHBDb2RlID0gZXhwb3J0czIuc3RyaW5naWZ5ID0gZXhwb3J0czIuZ2V0UHJvcGVydHkgPSBleHBvcnRzMi5uaWwgPSBleHBvcnRzMi5zdHJDb25jYXQgPSBleHBvcnRzMi5zdHIgPSBleHBvcnRzMi5fID0gdm9pZCAwOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZSgpOwogICAgdmFyIHNjb3BlXzEgPSByZXF1aXJlX3Njb3BlKCk7CiAgICB2YXIgY29kZV8yID0gcmVxdWlyZV9jb2RlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZV8yLl87CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3RyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZV8yLnN0cjsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzdHJDb25jYXQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlXzIuc3RyQ29uY2F0OwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm5pbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVfMi5uaWw7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZ2V0UHJvcGVydHkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlXzIuZ2V0UHJvcGVydHk7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3RyaW5naWZ5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZV8yLnN0cmluZ2lmeTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJyZWdleHBDb2RlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZV8yLnJlZ2V4cENvZGU7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiTmFtZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVfMi5OYW1lOwogICAgfSB9KTsKICAgIHZhciBzY29wZV8yID0gcmVxdWlyZV9zY29wZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiU2NvcGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzY29wZV8yLlNjb3BlOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlZhbHVlU2NvcGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzY29wZV8yLlZhbHVlU2NvcGU7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiVmFsdWVTY29wZU5hbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzY29wZV8yLlZhbHVlU2NvcGVOYW1lOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInZhcktpbmRzIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2NvcGVfMi52YXJLaW5kczsKICAgIH0gfSk7CiAgICBleHBvcnRzMi5vcGVyYXRvcnMgPSB7CiAgICAgIEdUOiBuZXcgY29kZV8xLl9Db2RlKCI+IiksCiAgICAgIEdURTogbmV3IGNvZGVfMS5fQ29kZSgiPj0iKSwKICAgICAgTFQ6IG5ldyBjb2RlXzEuX0NvZGUoIjwiKSwKICAgICAgTFRFOiBuZXcgY29kZV8xLl9Db2RlKCI8PSIpLAogICAgICBFUTogbmV3IGNvZGVfMS5fQ29kZSgiPT09IiksCiAgICAgIE5FUTogbmV3IGNvZGVfMS5fQ29kZSgiIT09IiksCiAgICAgIE5PVDogbmV3IGNvZGVfMS5fQ29kZSgiISIpLAogICAgICBPUjogbmV3IGNvZGVfMS5fQ29kZSgifHwiKSwKICAgICAgQU5EOiBuZXcgY29kZV8xLl9Db2RlKCImJiIpLAogICAgICBBREQ6IG5ldyBjb2RlXzEuX0NvZGUoIisiKQogICAgfTsKICAgIHZhciBOb2RlID0gY2xhc3MgewogICAgICBvcHRpbWl6ZU5vZGVzKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIG9wdGltaXplTmFtZXMoX25hbWVzLCBfY29uc3RhbnRzKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgIH07CiAgICB2YXIgRGVmID0gY2xhc3MgZXh0ZW5kcyBOb2RlIHsKICAgICAgY29uc3RydWN0b3IodmFyS2luZCwgbmFtZSwgcmhzKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLnZhcktpbmQgPSB2YXJLaW5kOwogICAgICAgIHRoaXMubmFtZSA9IG5hbWU7CiAgICAgICAgdGhpcy5yaHMgPSByaHM7CiAgICAgIH0KICAgICAgcmVuZGVyKHsgZXM1LCBfbiB9KSB7CiAgICAgICAgY29uc3QgdmFyS2luZCA9IGVzNSA/IHNjb3BlXzEudmFyS2luZHMudmFyIDogdGhpcy52YXJLaW5kOwogICAgICAgIGNvbnN0IHJocyA9IHRoaXMucmhzID09PSB2b2lkIDAgPyAiIiA6IGAgPSAke3RoaXMucmhzfWA7CiAgICAgICAgcmV0dXJuIGAke3ZhcktpbmR9ICR7dGhpcy5uYW1lfSR7cmhzfTtgICsgX247CiAgICAgIH0KICAgICAgb3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSB7CiAgICAgICAgaWYgKCFuYW1lc1t0aGlzLm5hbWUuc3RyXSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBpZiAodGhpcy5yaHMpCiAgICAgICAgICB0aGlzLnJocyA9IG9wdGltaXplRXhwcih0aGlzLnJocywgbmFtZXMsIGNvbnN0YW50cyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIHJldHVybiB0aGlzLnJocyBpbnN0YW5jZW9mIGNvZGVfMS5fQ29kZU9yTmFtZSA/IHRoaXMucmhzLm5hbWVzIDoge307CiAgICAgIH0KICAgIH07CiAgICB2YXIgQXNzaWduID0gY2xhc3MgZXh0ZW5kcyBOb2RlIHsKICAgICAgY29uc3RydWN0b3IobGhzLCByaHMsIHNpZGVFZmZlY3RzKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLmxocyA9IGxoczsKICAgICAgICB0aGlzLnJocyA9IHJoczsKICAgICAgICB0aGlzLnNpZGVFZmZlY3RzID0gc2lkZUVmZmVjdHM7CiAgICAgIH0KICAgICAgcmVuZGVyKHsgX24gfSkgewogICAgICAgIHJldHVybiBgJHt0aGlzLmxoc30gPSAke3RoaXMucmhzfTtgICsgX247CiAgICAgIH0KICAgICAgb3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSB7CiAgICAgICAgaWYgKHRoaXMubGhzIGluc3RhbmNlb2YgY29kZV8xLk5hbWUgJiYgIW5hbWVzW3RoaXMubGhzLnN0cl0gJiYgIXRoaXMuc2lkZUVmZmVjdHMpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgdGhpcy5yaHMgPSBvcHRpbWl6ZUV4cHIodGhpcy5yaHMsIG5hbWVzLCBjb25zdGFudHMpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGdldCBuYW1lcygpIHsKICAgICAgICBjb25zdCBuYW1lcyA9IHRoaXMubGhzIGluc3RhbmNlb2YgY29kZV8xLk5hbWUgPyB7fSA6IHsgLi4udGhpcy5saHMubmFtZXMgfTsKICAgICAgICByZXR1cm4gYWRkRXhwck5hbWVzKG5hbWVzLCB0aGlzLnJocyk7CiAgICAgIH0KICAgIH07CiAgICB2YXIgQXNzaWduT3AgPSBjbGFzcyBleHRlbmRzIEFzc2lnbiB7CiAgICAgIGNvbnN0cnVjdG9yKGxocywgb3AsIHJocywgc2lkZUVmZmVjdHMpIHsKICAgICAgICBzdXBlcihsaHMsIHJocywgc2lkZUVmZmVjdHMpOwogICAgICAgIHRoaXMub3AgPSBvcDsKICAgICAgfQogICAgICByZW5kZXIoeyBfbiB9KSB7CiAgICAgICAgcmV0dXJuIGAke3RoaXMubGhzfSAke3RoaXMub3B9PSAke3RoaXMucmhzfTtgICsgX247CiAgICAgIH0KICAgIH07CiAgICB2YXIgTGFiZWwgPSBjbGFzcyBleHRlbmRzIE5vZGUgewogICAgICBjb25zdHJ1Y3RvcihsYWJlbCkgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5sYWJlbCA9IGxhYmVsOwogICAgICAgIHRoaXMubmFtZXMgPSB7fTsKICAgICAgfQogICAgICByZW5kZXIoeyBfbiB9KSB7CiAgICAgICAgcmV0dXJuIGAke3RoaXMubGFiZWx9OmAgKyBfbjsKICAgICAgfQogICAgfTsKICAgIHZhciBCcmVhayA9IGNsYXNzIGV4dGVuZHMgTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKGxhYmVsKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLmxhYmVsID0gbGFiZWw7CiAgICAgICAgdGhpcy5uYW1lcyA9IHt9OwogICAgICB9CiAgICAgIHJlbmRlcih7IF9uIH0pIHsKICAgICAgICBjb25zdCBsYWJlbCA9IHRoaXMubGFiZWwgPyBgICR7dGhpcy5sYWJlbH1gIDogIiI7CiAgICAgICAgcmV0dXJuIGBicmVhayR7bGFiZWx9O2AgKyBfbjsKICAgICAgfQogICAgfTsKICAgIHZhciBUaHJvdyA9IGNsYXNzIGV4dGVuZHMgTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKGVycm9yKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLmVycm9yID0gZXJyb3I7CiAgICAgIH0KICAgICAgcmVuZGVyKHsgX24gfSkgewogICAgICAgIHJldHVybiBgdGhyb3cgJHt0aGlzLmVycm9yfTtgICsgX247CiAgICAgIH0KICAgICAgZ2V0IG5hbWVzKCkgewogICAgICAgIHJldHVybiB0aGlzLmVycm9yLm5hbWVzOwogICAgICB9CiAgICB9OwogICAgdmFyIEFueUNvZGUgPSBjbGFzcyBleHRlbmRzIE5vZGUgewogICAgICBjb25zdHJ1Y3Rvcihjb2RlKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLmNvZGUgPSBjb2RlOwogICAgICB9CiAgICAgIHJlbmRlcih7IF9uIH0pIHsKICAgICAgICByZXR1cm4gYCR7dGhpcy5jb2RlfTtgICsgX247CiAgICAgIH0KICAgICAgb3B0aW1pemVOb2RlcygpIHsKICAgICAgICByZXR1cm4gYCR7dGhpcy5jb2RlfWAgPyB0aGlzIDogdm9pZCAwOwogICAgICB9CiAgICAgIG9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykgewogICAgICAgIHRoaXMuY29kZSA9IG9wdGltaXplRXhwcih0aGlzLmNvZGUsIG5hbWVzLCBjb25zdGFudHMpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGdldCBuYW1lcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5jb2RlIGluc3RhbmNlb2YgY29kZV8xLl9Db2RlT3JOYW1lID8gdGhpcy5jb2RlLm5hbWVzIDoge307CiAgICAgIH0KICAgIH07CiAgICB2YXIgUGFyZW50Tm9kZSA9IGNsYXNzIGV4dGVuZHMgTm9kZSB7CiAgICAgIGNvbnN0cnVjdG9yKG5vZGVzID0gW10pIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMubm9kZXMgPSBub2RlczsKICAgICAgfQogICAgICByZW5kZXIob3B0cykgewogICAgICAgIHJldHVybiB0aGlzLm5vZGVzLnJlZHVjZSgoY29kZSwgbikgPT4gY29kZSArIG4ucmVuZGVyKG9wdHMpLCAiIik7CiAgICAgIH0KICAgICAgb3B0aW1pemVOb2RlcygpIHsKICAgICAgICBjb25zdCB7IG5vZGVzIH0gPSB0aGlzOwogICAgICAgIGxldCBpID0gbm9kZXMubGVuZ3RoOwogICAgICAgIHdoaWxlIChpLS0pIHsKICAgICAgICAgIGNvbnN0IG4gPSBub2Rlc1tpXS5vcHRpbWl6ZU5vZGVzKCk7CiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShuKSkKICAgICAgICAgICAgbm9kZXMuc3BsaWNlKGksIDEsIC4uLm4pOwogICAgICAgICAgZWxzZSBpZiAobikKICAgICAgICAgICAgbm9kZXNbaV0gPSBuOwogICAgICAgICAgZWxzZQogICAgICAgICAgICBub2Rlcy5zcGxpY2UoaSwgMSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBub2Rlcy5sZW5ndGggPiAwID8gdGhpcyA6IHZvaWQgMDsKICAgICAgfQogICAgICBvcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpIHsKICAgICAgICBjb25zdCB7IG5vZGVzIH0gPSB0aGlzOwogICAgICAgIGxldCBpID0gbm9kZXMubGVuZ3RoOwogICAgICAgIHdoaWxlIChpLS0pIHsKICAgICAgICAgIGNvbnN0IG4gPSBub2Rlc1tpXTsKICAgICAgICAgIGlmIChuLm9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykpCiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgc3VidHJhY3ROYW1lcyhuYW1lcywgbi5uYW1lcyk7CiAgICAgICAgICBub2Rlcy5zcGxpY2UoaSwgMSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBub2Rlcy5sZW5ndGggPiAwID8gdGhpcyA6IHZvaWQgMDsKICAgICAgfQogICAgICBnZXQgbmFtZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMubm9kZXMucmVkdWNlKChuYW1lcywgbikgPT4gYWRkTmFtZXMobmFtZXMsIG4ubmFtZXMpLCB7fSk7CiAgICAgIH0KICAgIH07CiAgICB2YXIgQmxvY2tOb2RlID0gY2xhc3MgZXh0ZW5kcyBQYXJlbnROb2RlIHsKICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICByZXR1cm4gInsiICsgb3B0cy5fbiArIHN1cGVyLnJlbmRlcihvcHRzKSArICJ9IiArIG9wdHMuX247CiAgICAgIH0KICAgIH07CiAgICB2YXIgUm9vdCA9IGNsYXNzIGV4dGVuZHMgUGFyZW50Tm9kZSB7CiAgICB9OwogICAgdmFyIEVsc2UgPSBjbGFzcyBleHRlbmRzIEJsb2NrTm9kZSB7CiAgICB9OwogICAgRWxzZS5raW5kID0gImVsc2UiOwogICAgdmFyIElmID0gY2xhc3MgX0lmIGV4dGVuZHMgQmxvY2tOb2RlIHsKICAgICAgY29uc3RydWN0b3IoY29uZGl0aW9uLCBub2RlcykgewogICAgICAgIHN1cGVyKG5vZGVzKTsKICAgICAgICB0aGlzLmNvbmRpdGlvbiA9IGNvbmRpdGlvbjsKICAgICAgfQogICAgICByZW5kZXIob3B0cykgewogICAgICAgIGxldCBjb2RlID0gYGlmKCR7dGhpcy5jb25kaXRpb259KWAgKyBzdXBlci5yZW5kZXIob3B0cyk7CiAgICAgICAgaWYgKHRoaXMuZWxzZSkKICAgICAgICAgIGNvZGUgKz0gImVsc2UgIiArIHRoaXMuZWxzZS5yZW5kZXIob3B0cyk7CiAgICAgICAgcmV0dXJuIGNvZGU7CiAgICAgIH0KICAgICAgb3B0aW1pemVOb2RlcygpIHsKICAgICAgICBzdXBlci5vcHRpbWl6ZU5vZGVzKCk7CiAgICAgICAgY29uc3QgY29uZCA9IHRoaXMuY29uZGl0aW9uOwogICAgICAgIGlmIChjb25kID09PSB0cnVlKQogICAgICAgICAgcmV0dXJuIHRoaXMubm9kZXM7CiAgICAgICAgbGV0IGUgPSB0aGlzLmVsc2U7CiAgICAgICAgaWYgKGUpIHsKICAgICAgICAgIGNvbnN0IG5zID0gZS5vcHRpbWl6ZU5vZGVzKCk7CiAgICAgICAgICBlID0gdGhpcy5lbHNlID0gQXJyYXkuaXNBcnJheShucykgPyBuZXcgRWxzZShucykgOiBuczsKICAgICAgICB9CiAgICAgICAgaWYgKGUpIHsKICAgICAgICAgIGlmIChjb25kID09PSBmYWxzZSkKICAgICAgICAgICAgcmV0dXJuIGUgaW5zdGFuY2VvZiBfSWYgPyBlIDogZS5ub2RlczsKICAgICAgICAgIGlmICh0aGlzLm5vZGVzLmxlbmd0aCkKICAgICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgICAgICByZXR1cm4gbmV3IF9JZihub3QoY29uZCksIGUgaW5zdGFuY2VvZiBfSWYgPyBbZV0gOiBlLm5vZGVzKTsKICAgICAgICB9CiAgICAgICAgaWYgKGNvbmQgPT09IGZhbHNlIHx8ICF0aGlzLm5vZGVzLmxlbmd0aCkKICAgICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgb3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSB7CiAgICAgICAgdmFyIF9hOwogICAgICAgIHRoaXMuZWxzZSA9IChfYSA9IHRoaXMuZWxzZSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLm9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cyk7CiAgICAgICAgaWYgKCEoc3VwZXIub3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSB8fCB0aGlzLmVsc2UpKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIHRoaXMuY29uZGl0aW9uID0gb3B0aW1pemVFeHByKHRoaXMuY29uZGl0aW9uLCBuYW1lcywgY29uc3RhbnRzKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBnZXQgbmFtZXMoKSB7CiAgICAgICAgY29uc3QgbmFtZXMgPSBzdXBlci5uYW1lczsKICAgICAgICBhZGRFeHByTmFtZXMobmFtZXMsIHRoaXMuY29uZGl0aW9uKTsKICAgICAgICBpZiAodGhpcy5lbHNlKQogICAgICAgICAgYWRkTmFtZXMobmFtZXMsIHRoaXMuZWxzZS5uYW1lcyk7CiAgICAgICAgcmV0dXJuIG5hbWVzOwogICAgICB9CiAgICB9OwogICAgSWYua2luZCA9ICJpZiI7CiAgICB2YXIgRm9yID0gY2xhc3MgZXh0ZW5kcyBCbG9ja05vZGUgewogICAgfTsKICAgIEZvci5raW5kID0gImZvciI7CiAgICB2YXIgRm9yTG9vcCA9IGNsYXNzIGV4dGVuZHMgRm9yIHsKICAgICAgY29uc3RydWN0b3IoaXRlcmF0aW9uKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLml0ZXJhdGlvbiA9IGl0ZXJhdGlvbjsKICAgICAgfQogICAgICByZW5kZXIob3B0cykgewogICAgICAgIHJldHVybiBgZm9yKCR7dGhpcy5pdGVyYXRpb259KWAgKyBzdXBlci5yZW5kZXIob3B0cyk7CiAgICAgIH0KICAgICAgb3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKSB7CiAgICAgICAgaWYgKCFzdXBlci5vcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIHRoaXMuaXRlcmF0aW9uID0gb3B0aW1pemVFeHByKHRoaXMuaXRlcmF0aW9uLCBuYW1lcywgY29uc3RhbnRzKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBnZXQgbmFtZXMoKSB7CiAgICAgICAgcmV0dXJuIGFkZE5hbWVzKHN1cGVyLm5hbWVzLCB0aGlzLml0ZXJhdGlvbi5uYW1lcyk7CiAgICAgIH0KICAgIH07CiAgICB2YXIgRm9yUmFuZ2UgPSBjbGFzcyBleHRlbmRzIEZvciB7CiAgICAgIGNvbnN0cnVjdG9yKHZhcktpbmQsIG5hbWUsIGZyb20sIHRvKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLnZhcktpbmQgPSB2YXJLaW5kOwogICAgICAgIHRoaXMubmFtZSA9IG5hbWU7CiAgICAgICAgdGhpcy5mcm9tID0gZnJvbTsKICAgICAgICB0aGlzLnRvID0gdG87CiAgICAgIH0KICAgICAgcmVuZGVyKG9wdHMpIHsKICAgICAgICBjb25zdCB2YXJLaW5kID0gb3B0cy5lczUgPyBzY29wZV8xLnZhcktpbmRzLnZhciA6IHRoaXMudmFyS2luZDsKICAgICAgICBjb25zdCB7IG5hbWUsIGZyb20sIHRvIH0gPSB0aGlzOwogICAgICAgIHJldHVybiBgZm9yKCR7dmFyS2luZH0gJHtuYW1lfT0ke2Zyb219OyAke25hbWV9PCR7dG99OyAke25hbWV9KyspYCArIHN1cGVyLnJlbmRlcihvcHRzKTsKICAgICAgfQogICAgICBnZXQgbmFtZXMoKSB7CiAgICAgICAgY29uc3QgbmFtZXMgPSBhZGRFeHByTmFtZXMoc3VwZXIubmFtZXMsIHRoaXMuZnJvbSk7CiAgICAgICAgcmV0dXJuIGFkZEV4cHJOYW1lcyhuYW1lcywgdGhpcy50byk7CiAgICAgIH0KICAgIH07CiAgICB2YXIgRm9ySXRlciA9IGNsYXNzIGV4dGVuZHMgRm9yIHsKICAgICAgY29uc3RydWN0b3IobG9vcCwgdmFyS2luZCwgbmFtZSwgaXRlcmFibGUpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIHRoaXMubG9vcCA9IGxvb3A7CiAgICAgICAgdGhpcy52YXJLaW5kID0gdmFyS2luZDsKICAgICAgICB0aGlzLm5hbWUgPSBuYW1lOwogICAgICAgIHRoaXMuaXRlcmFibGUgPSBpdGVyYWJsZTsKICAgICAgfQogICAgICByZW5kZXIob3B0cykgewogICAgICAgIHJldHVybiBgZm9yKCR7dGhpcy52YXJLaW5kfSAke3RoaXMubmFtZX0gJHt0aGlzLmxvb3B9ICR7dGhpcy5pdGVyYWJsZX0pYCArIHN1cGVyLnJlbmRlcihvcHRzKTsKICAgICAgfQogICAgICBvcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpIHsKICAgICAgICBpZiAoIXN1cGVyLm9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cykpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgdGhpcy5pdGVyYWJsZSA9IG9wdGltaXplRXhwcih0aGlzLml0ZXJhYmxlLCBuYW1lcywgY29uc3RhbnRzKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBnZXQgbmFtZXMoKSB7CiAgICAgICAgcmV0dXJuIGFkZE5hbWVzKHN1cGVyLm5hbWVzLCB0aGlzLml0ZXJhYmxlLm5hbWVzKTsKICAgICAgfQogICAgfTsKICAgIHZhciBGdW5jID0gY2xhc3MgZXh0ZW5kcyBCbG9ja05vZGUgewogICAgICBjb25zdHJ1Y3RvcihuYW1lLCBhcmdzLCBhc3luYykgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5uYW1lID0gbmFtZTsKICAgICAgICB0aGlzLmFyZ3MgPSBhcmdzOwogICAgICAgIHRoaXMuYXN5bmMgPSBhc3luYzsKICAgICAgfQogICAgICByZW5kZXIob3B0cykgewogICAgICAgIGNvbnN0IF9hc3luYyA9IHRoaXMuYXN5bmMgPyAiYXN5bmMgIiA6ICIiOwogICAgICAgIHJldHVybiBgJHtfYXN5bmN9ZnVuY3Rpb24gJHt0aGlzLm5hbWV9KCR7dGhpcy5hcmdzfSlgICsgc3VwZXIucmVuZGVyKG9wdHMpOwogICAgICB9CiAgICB9OwogICAgRnVuYy5raW5kID0gImZ1bmMiOwogICAgdmFyIFJldHVybiA9IGNsYXNzIGV4dGVuZHMgUGFyZW50Tm9kZSB7CiAgICAgIHJlbmRlcihvcHRzKSB7CiAgICAgICAgcmV0dXJuICJyZXR1cm4gIiArIHN1cGVyLnJlbmRlcihvcHRzKTsKICAgICAgfQogICAgfTsKICAgIFJldHVybi5raW5kID0gInJldHVybiI7CiAgICB2YXIgVHJ5ID0gY2xhc3MgZXh0ZW5kcyBCbG9ja05vZGUgewogICAgICByZW5kZXIob3B0cykgewogICAgICAgIGxldCBjb2RlID0gInRyeSIgKyBzdXBlci5yZW5kZXIob3B0cyk7CiAgICAgICAgaWYgKHRoaXMuY2F0Y2gpCiAgICAgICAgICBjb2RlICs9IHRoaXMuY2F0Y2gucmVuZGVyKG9wdHMpOwogICAgICAgIGlmICh0aGlzLmZpbmFsbHkpCiAgICAgICAgICBjb2RlICs9IHRoaXMuZmluYWxseS5yZW5kZXIob3B0cyk7CiAgICAgICAgcmV0dXJuIGNvZGU7CiAgICAgIH0KICAgICAgb3B0aW1pemVOb2RlcygpIHsKICAgICAgICB2YXIgX2EsIF9iOwogICAgICAgIHN1cGVyLm9wdGltaXplTm9kZXMoKTsKICAgICAgICAoX2EgPSB0aGlzLmNhdGNoKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2Eub3B0aW1pemVOb2RlcygpOwogICAgICAgIChfYiA9IHRoaXMuZmluYWxseSkgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLm9wdGltaXplTm9kZXMoKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBvcHRpbWl6ZU5hbWVzKG5hbWVzLCBjb25zdGFudHMpIHsKICAgICAgICB2YXIgX2EsIF9iOwogICAgICAgIHN1cGVyLm9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cyk7CiAgICAgICAgKF9hID0gdGhpcy5jYXRjaCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLm9wdGltaXplTmFtZXMobmFtZXMsIGNvbnN0YW50cyk7CiAgICAgICAgKF9iID0gdGhpcy5maW5hbGx5KSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2Iub3B0aW1pemVOYW1lcyhuYW1lcywgY29uc3RhbnRzKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBnZXQgbmFtZXMoKSB7CiAgICAgICAgY29uc3QgbmFtZXMgPSBzdXBlci5uYW1lczsKICAgICAgICBpZiAodGhpcy5jYXRjaCkKICAgICAgICAgIGFkZE5hbWVzKG5hbWVzLCB0aGlzLmNhdGNoLm5hbWVzKTsKICAgICAgICBpZiAodGhpcy5maW5hbGx5KQogICAgICAgICAgYWRkTmFtZXMobmFtZXMsIHRoaXMuZmluYWxseS5uYW1lcyk7CiAgICAgICAgcmV0dXJuIG5hbWVzOwogICAgICB9CiAgICB9OwogICAgdmFyIENhdGNoID0gY2xhc3MgZXh0ZW5kcyBCbG9ja05vZGUgewogICAgICBjb25zdHJ1Y3RvcihlcnJvcikgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgdGhpcy5lcnJvciA9IGVycm9yOwogICAgICB9CiAgICAgIHJlbmRlcihvcHRzKSB7CiAgICAgICAgcmV0dXJuIGBjYXRjaCgke3RoaXMuZXJyb3J9KWAgKyBzdXBlci5yZW5kZXIob3B0cyk7CiAgICAgIH0KICAgIH07CiAgICBDYXRjaC5raW5kID0gImNhdGNoIjsKICAgIHZhciBGaW5hbGx5ID0gY2xhc3MgZXh0ZW5kcyBCbG9ja05vZGUgewogICAgICByZW5kZXIob3B0cykgewogICAgICAgIHJldHVybiAiZmluYWxseSIgKyBzdXBlci5yZW5kZXIob3B0cyk7CiAgICAgIH0KICAgIH07CiAgICBGaW5hbGx5LmtpbmQgPSAiZmluYWxseSI7CiAgICB2YXIgQ29kZUdlbiA9IGNsYXNzIHsKICAgICAgY29uc3RydWN0b3IoZXh0U2NvcGUsIG9wdHMgPSB7fSkgewogICAgICAgIHRoaXMuX3ZhbHVlcyA9IHt9OwogICAgICAgIHRoaXMuX2Jsb2NrU3RhcnRzID0gW107CiAgICAgICAgdGhpcy5fY29uc3RhbnRzID0ge307CiAgICAgICAgdGhpcy5vcHRzID0geyAuLi5vcHRzLCBfbjogb3B0cy5saW5lcyA/ICJcbiIgOiAiIiB9OwogICAgICAgIHRoaXMuX2V4dFNjb3BlID0gZXh0U2NvcGU7CiAgICAgICAgdGhpcy5fc2NvcGUgPSBuZXcgc2NvcGVfMS5TY29wZSh7IHBhcmVudDogZXh0U2NvcGUgfSk7CiAgICAgICAgdGhpcy5fbm9kZXMgPSBbbmV3IFJvb3QoKV07CiAgICAgIH0KICAgICAgdG9TdHJpbmcoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3Jvb3QucmVuZGVyKHRoaXMub3B0cyk7CiAgICAgIH0KICAgICAgLy8gcmV0dXJucyB1bmlxdWUgbmFtZSBpbiB0aGUgaW50ZXJuYWwgc2NvcGUKICAgICAgbmFtZShwcmVmaXgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fc2NvcGUubmFtZShwcmVmaXgpOwogICAgICB9CiAgICAgIC8vIHJlc2VydmVzIHVuaXF1ZSBuYW1lIGluIHRoZSBleHRlcm5hbCBzY29wZQogICAgICBzY29wZU5hbWUocHJlZml4KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2V4dFNjb3BlLm5hbWUocHJlZml4KTsKICAgICAgfQogICAgICAvLyByZXNlcnZlcyB1bmlxdWUgbmFtZSBpbiB0aGUgZXh0ZXJuYWwgc2NvcGUgYW5kIGFzc2lnbnMgdmFsdWUgdG8gaXQKICAgICAgc2NvcGVWYWx1ZShwcmVmaXhPck5hbWUsIHZhbHVlKSB7CiAgICAgICAgY29uc3QgbmFtZSA9IHRoaXMuX2V4dFNjb3BlLnZhbHVlKHByZWZpeE9yTmFtZSwgdmFsdWUpOwogICAgICAgIGNvbnN0IHZzID0gdGhpcy5fdmFsdWVzW25hbWUucHJlZml4XSB8fCAodGhpcy5fdmFsdWVzW25hbWUucHJlZml4XSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCkpOwogICAgICAgIHZzLmFkZChuYW1lKTsKICAgICAgICByZXR1cm4gbmFtZTsKICAgICAgfQogICAgICBnZXRTY29wZVZhbHVlKHByZWZpeCwga2V5T3JSZWYpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZXh0U2NvcGUuZ2V0VmFsdWUocHJlZml4LCBrZXlPclJlZik7CiAgICAgIH0KICAgICAgLy8gcmV0dXJuIGNvZGUgdGhhdCBhc3NpZ25zIHZhbHVlcyBpbiB0aGUgZXh0ZXJuYWwgc2NvcGUgdG8gdGhlIG5hbWVzIHRoYXQgYXJlIHVzZWQgaW50ZXJuYWxseQogICAgICAvLyAoc2FtZSBuYW1lcyB0aGF0IHdlcmUgcmV0dXJuZWQgYnkgZ2VuLnNjb3BlTmFtZSBvciBnZW4uc2NvcGVWYWx1ZSkKICAgICAgc2NvcGVSZWZzKHNjb3BlTmFtZSkgewogICAgICAgIHJldHVybiB0aGlzLl9leHRTY29wZS5zY29wZVJlZnMoc2NvcGVOYW1lLCB0aGlzLl92YWx1ZXMpOwogICAgICB9CiAgICAgIHNjb3BlQ29kZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZXh0U2NvcGUuc2NvcGVDb2RlKHRoaXMuX3ZhbHVlcyk7CiAgICAgIH0KICAgICAgX2RlZih2YXJLaW5kLCBuYW1lT3JQcmVmaXgsIHJocywgY29uc3RhbnQpIHsKICAgICAgICBjb25zdCBuYW1lID0gdGhpcy5fc2NvcGUudG9OYW1lKG5hbWVPclByZWZpeCk7CiAgICAgICAgaWYgKHJocyAhPT0gdm9pZCAwICYmIGNvbnN0YW50KQogICAgICAgICAgdGhpcy5fY29uc3RhbnRzW25hbWUuc3RyXSA9IHJoczsKICAgICAgICB0aGlzLl9sZWFmTm9kZShuZXcgRGVmKHZhcktpbmQsIG5hbWUsIHJocykpOwogICAgICAgIHJldHVybiBuYW1lOwogICAgICB9CiAgICAgIC8vIGBjb25zdGAgZGVjbGFyYXRpb24gKGB2YXJgIGluIGVzNSBtb2RlKQogICAgICBjb25zdChuYW1lT3JQcmVmaXgsIHJocywgX2NvbnN0YW50KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlZihzY29wZV8xLnZhcktpbmRzLmNvbnN0LCBuYW1lT3JQcmVmaXgsIHJocywgX2NvbnN0YW50KTsKICAgICAgfQogICAgICAvLyBgbGV0YCBkZWNsYXJhdGlvbiB3aXRoIG9wdGlvbmFsIGFzc2lnbm1lbnQgKGB2YXJgIGluIGVzNSBtb2RlKQogICAgICBsZXQobmFtZU9yUHJlZml4LCByaHMsIF9jb25zdGFudCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWYoc2NvcGVfMS52YXJLaW5kcy5sZXQsIG5hbWVPclByZWZpeCwgcmhzLCBfY29uc3RhbnQpOwogICAgICB9CiAgICAgIC8vIGB2YXJgIGRlY2xhcmF0aW9uIHdpdGggb3B0aW9uYWwgYXNzaWdubWVudAogICAgICB2YXIobmFtZU9yUHJlZml4LCByaHMsIF9jb25zdGFudCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWYoc2NvcGVfMS52YXJLaW5kcy52YXIsIG5hbWVPclByZWZpeCwgcmhzLCBfY29uc3RhbnQpOwogICAgICB9CiAgICAgIC8vIGFzc2lnbm1lbnQgY29kZQogICAgICBhc3NpZ24obGhzLCByaHMsIHNpZGVFZmZlY3RzKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2xlYWZOb2RlKG5ldyBBc3NpZ24obGhzLCByaHMsIHNpZGVFZmZlY3RzKSk7CiAgICAgIH0KICAgICAgLy8gYCs9YCBjb2RlCiAgICAgIGFkZChsaHMsIHJocykgewogICAgICAgIHJldHVybiB0aGlzLl9sZWFmTm9kZShuZXcgQXNzaWduT3AobGhzLCBleHBvcnRzMi5vcGVyYXRvcnMuQURELCByaHMpKTsKICAgICAgfQogICAgICAvLyBhcHBlbmRzIHBhc3NlZCBTYWZlRXhwciB0byBjb2RlIG9yIGV4ZWN1dGVzIEJsb2NrCiAgICAgIGNvZGUoYykgewogICAgICAgIGlmICh0eXBlb2YgYyA9PSAiZnVuY3Rpb24iKQogICAgICAgICAgYygpOwogICAgICAgIGVsc2UgaWYgKGMgIT09IGNvZGVfMS5uaWwpCiAgICAgICAgICB0aGlzLl9sZWFmTm9kZShuZXcgQW55Q29kZShjKSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgLy8gcmV0dXJucyBjb2RlIGZvciBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlIHBhc3NlZCBhcmd1bWVudCBsaXN0IG9mIGtleS12YWx1ZSBwYWlycwogICAgICBvYmplY3QoLi4ua2V5VmFsdWVzKSB7CiAgICAgICAgY29uc3QgY29kZSA9IFsieyJdOwogICAgICAgIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIGtleVZhbHVlcykgewogICAgICAgICAgaWYgKGNvZGUubGVuZ3RoID4gMSkKICAgICAgICAgICAgY29kZS5wdXNoKCIsIik7CiAgICAgICAgICBjb2RlLnB1c2goa2V5KTsKICAgICAgICAgIGlmIChrZXkgIT09IHZhbHVlIHx8IHRoaXMub3B0cy5lczUpIHsKICAgICAgICAgICAgY29kZS5wdXNoKCI6Iik7CiAgICAgICAgICAgICgwLCBjb2RlXzEuYWRkQ29kZUFyZykoY29kZSwgdmFsdWUpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb2RlLnB1c2goIn0iKTsKICAgICAgICByZXR1cm4gbmV3IGNvZGVfMS5fQ29kZShjb2RlKTsKICAgICAgfQogICAgICAvLyBgaWZgIGNsYXVzZSAob3Igc3RhdGVtZW50IGlmIGB0aGVuQm9keWAgYW5kLCBvcHRpb25hbGx5LCBgZWxzZUJvZHlgIGFyZSBwYXNzZWQpCiAgICAgIGlmKGNvbmRpdGlvbiwgdGhlbkJvZHksIGVsc2VCb2R5KSB7CiAgICAgICAgdGhpcy5fYmxvY2tOb2RlKG5ldyBJZihjb25kaXRpb24pKTsKICAgICAgICBpZiAodGhlbkJvZHkgJiYgZWxzZUJvZHkpIHsKICAgICAgICAgIHRoaXMuY29kZSh0aGVuQm9keSkuZWxzZSgpLmNvZGUoZWxzZUJvZHkpLmVuZElmKCk7CiAgICAgICAgfSBlbHNlIGlmICh0aGVuQm9keSkgewogICAgICAgICAgdGhpcy5jb2RlKHRoZW5Cb2R5KS5lbmRJZigpOwogICAgICAgIH0gZWxzZSBpZiAoZWxzZUJvZHkpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQ29kZUdlbjogImVsc2UiIGJvZHkgd2l0aG91dCAidGhlbiIgYm9keScpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyBgZWxzZSBpZmAgY2xhdXNlIC0gaW52YWxpZCB3aXRob3V0IGBpZmAgb3IgYWZ0ZXIgYGVsc2VgIGNsYXVzZXMKICAgICAgZWxzZUlmKGNvbmRpdGlvbikgewogICAgICAgIHJldHVybiB0aGlzLl9lbHNlTm9kZShuZXcgSWYoY29uZGl0aW9uKSk7CiAgICAgIH0KICAgICAgLy8gYGVsc2VgIGNsYXVzZSAtIG9ubHkgdmFsaWQgYWZ0ZXIgYGlmYCBvciBgZWxzZSBpZmAgY2xhdXNlcwogICAgICBlbHNlKCkgewogICAgICAgIHJldHVybiB0aGlzLl9lbHNlTm9kZShuZXcgRWxzZSgpKTsKICAgICAgfQogICAgICAvLyBlbmQgYGlmYCBzdGF0ZW1lbnQgKG5lZWRlZCBpZiBnZW4uaWYgd2FzIHVzZWQgb25seSB3aXRoIGNvbmRpdGlvbikKICAgICAgZW5kSWYoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2VuZEJsb2NrTm9kZShJZiwgRWxzZSk7CiAgICAgIH0KICAgICAgX2Zvcihub2RlLCBmb3JCb2R5KSB7CiAgICAgICAgdGhpcy5fYmxvY2tOb2RlKG5vZGUpOwogICAgICAgIGlmIChmb3JCb2R5KQogICAgICAgICAgdGhpcy5jb2RlKGZvckJvZHkpLmVuZEZvcigpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIC8vIGEgZ2VuZXJpYyBgZm9yYCBjbGF1c2UgKG9yIHN0YXRlbWVudCBpZiBgZm9yQm9keWAgaXMgcGFzc2VkKQogICAgICBmb3IoaXRlcmF0aW9uLCBmb3JCb2R5KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2ZvcihuZXcgRm9yTG9vcChpdGVyYXRpb24pLCBmb3JCb2R5KTsKICAgICAgfQogICAgICAvLyBgZm9yYCBzdGF0ZW1lbnQgZm9yIGEgcmFuZ2Ugb2YgdmFsdWVzCiAgICAgIGZvclJhbmdlKG5hbWVPclByZWZpeCwgZnJvbSwgdG8sIGZvckJvZHksIHZhcktpbmQgPSB0aGlzLm9wdHMuZXM1ID8gc2NvcGVfMS52YXJLaW5kcy52YXIgOiBzY29wZV8xLnZhcktpbmRzLmxldCkgewogICAgICAgIGNvbnN0IG5hbWUgPSB0aGlzLl9zY29wZS50b05hbWUobmFtZU9yUHJlZml4KTsKICAgICAgICByZXR1cm4gdGhpcy5fZm9yKG5ldyBGb3JSYW5nZSh2YXJLaW5kLCBuYW1lLCBmcm9tLCB0byksICgpID0+IGZvckJvZHkobmFtZSkpOwogICAgICB9CiAgICAgIC8vIGBmb3Itb2ZgIHN0YXRlbWVudCAoaW4gZXM1IG1vZGUgcmVwbGFjZSB3aXRoIGEgbm9ybWFsIGZvciBsb29wKQogICAgICBmb3JPZihuYW1lT3JQcmVmaXgsIGl0ZXJhYmxlLCBmb3JCb2R5LCB2YXJLaW5kID0gc2NvcGVfMS52YXJLaW5kcy5jb25zdCkgewogICAgICAgIGNvbnN0IG5hbWUgPSB0aGlzLl9zY29wZS50b05hbWUobmFtZU9yUHJlZml4KTsKICAgICAgICBpZiAodGhpcy5vcHRzLmVzNSkgewogICAgICAgICAgY29uc3QgYXJyID0gaXRlcmFibGUgaW5zdGFuY2VvZiBjb2RlXzEuTmFtZSA/IGl0ZXJhYmxlIDogdGhpcy52YXIoIl9hcnIiLCBpdGVyYWJsZSk7CiAgICAgICAgICByZXR1cm4gdGhpcy5mb3JSYW5nZSgiX2kiLCAwLCAoMCwgY29kZV8xLl8pYCR7YXJyfS5sZW5ndGhgLCAoaSkgPT4gewogICAgICAgICAgICB0aGlzLnZhcihuYW1lLCAoMCwgY29kZV8xLl8pYCR7YXJyfVske2l9XWApOwogICAgICAgICAgICBmb3JCb2R5KG5hbWUpOwogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9mb3IobmV3IEZvckl0ZXIoIm9mIiwgdmFyS2luZCwgbmFtZSwgaXRlcmFibGUpLCAoKSA9PiBmb3JCb2R5KG5hbWUpKTsKICAgICAgfQogICAgICAvLyBgZm9yLWluYCBzdGF0ZW1lbnQuCiAgICAgIC8vIFdpdGggb3B0aW9uIGBvd25Qcm9wZXJ0aWVzYCByZXBsYWNlZCB3aXRoIGEgYGZvci1vZmAgbG9vcCBmb3Igb2JqZWN0IGtleXMKICAgICAgZm9ySW4obmFtZU9yUHJlZml4LCBvYmosIGZvckJvZHksIHZhcktpbmQgPSB0aGlzLm9wdHMuZXM1ID8gc2NvcGVfMS52YXJLaW5kcy52YXIgOiBzY29wZV8xLnZhcktpbmRzLmNvbnN0KSB7CiAgICAgICAgaWYgKHRoaXMub3B0cy5vd25Qcm9wZXJ0aWVzKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5mb3JPZihuYW1lT3JQcmVmaXgsICgwLCBjb2RlXzEuXylgT2JqZWN0LmtleXMoJHtvYmp9KWAsIGZvckJvZHkpOwogICAgICAgIH0KICAgICAgICBjb25zdCBuYW1lID0gdGhpcy5fc2NvcGUudG9OYW1lKG5hbWVPclByZWZpeCk7CiAgICAgICAgcmV0dXJuIHRoaXMuX2ZvcihuZXcgRm9ySXRlcigiaW4iLCB2YXJLaW5kLCBuYW1lLCBvYmopLCAoKSA9PiBmb3JCb2R5KG5hbWUpKTsKICAgICAgfQogICAgICAvLyBlbmQgYGZvcmAgbG9vcAogICAgICBlbmRGb3IoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2VuZEJsb2NrTm9kZShGb3IpOwogICAgICB9CiAgICAgIC8vIGBsYWJlbGAgc3RhdGVtZW50CiAgICAgIGxhYmVsKGxhYmVsKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2xlYWZOb2RlKG5ldyBMYWJlbChsYWJlbCkpOwogICAgICB9CiAgICAgIC8vIGBicmVha2Agc3RhdGVtZW50CiAgICAgIGJyZWFrKGxhYmVsKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2xlYWZOb2RlKG5ldyBCcmVhayhsYWJlbCkpOwogICAgICB9CiAgICAgIC8vIGByZXR1cm5gIHN0YXRlbWVudAogICAgICByZXR1cm4odmFsdWUpIHsKICAgICAgICBjb25zdCBub2RlID0gbmV3IFJldHVybigpOwogICAgICAgIHRoaXMuX2Jsb2NrTm9kZShub2RlKTsKICAgICAgICB0aGlzLmNvZGUodmFsdWUpOwogICAgICAgIGlmIChub2RlLm5vZGVzLmxlbmd0aCAhPT0gMSkKICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQ29kZUdlbjogInJldHVybiIgc2hvdWxkIGhhdmUgb25lIG5vZGUnKTsKICAgICAgICByZXR1cm4gdGhpcy5fZW5kQmxvY2tOb2RlKFJldHVybik7CiAgICAgIH0KICAgICAgLy8gYHRyeWAgc3RhdGVtZW50CiAgICAgIHRyeSh0cnlCb2R5LCBjYXRjaENvZGUsIGZpbmFsbHlDb2RlKSB7CiAgICAgICAgaWYgKCFjYXRjaENvZGUgJiYgIWZpbmFsbHlDb2RlKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdDb2RlR2VuOiAidHJ5IiB3aXRob3V0ICJjYXRjaCIgYW5kICJmaW5hbGx5IicpOwogICAgICAgIGNvbnN0IG5vZGUgPSBuZXcgVHJ5KCk7CiAgICAgICAgdGhpcy5fYmxvY2tOb2RlKG5vZGUpOwogICAgICAgIHRoaXMuY29kZSh0cnlCb2R5KTsKICAgICAgICBpZiAoY2F0Y2hDb2RlKSB7CiAgICAgICAgICBjb25zdCBlcnJvciA9IHRoaXMubmFtZSgiZSIpOwogICAgICAgICAgdGhpcy5fY3Vyck5vZGUgPSBub2RlLmNhdGNoID0gbmV3IENhdGNoKGVycm9yKTsKICAgICAgICAgIGNhdGNoQ29kZShlcnJvcik7CiAgICAgICAgfQogICAgICAgIGlmIChmaW5hbGx5Q29kZSkgewogICAgICAgICAgdGhpcy5fY3Vyck5vZGUgPSBub2RlLmZpbmFsbHkgPSBuZXcgRmluYWxseSgpOwogICAgICAgICAgdGhpcy5jb2RlKGZpbmFsbHlDb2RlKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX2VuZEJsb2NrTm9kZShDYXRjaCwgRmluYWxseSk7CiAgICAgIH0KICAgICAgLy8gYHRocm93YCBzdGF0ZW1lbnQKICAgICAgdGhyb3coZXJyb3IpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbGVhZk5vZGUobmV3IFRocm93KGVycm9yKSk7CiAgICAgIH0KICAgICAgLy8gc3RhcnQgc2VsZi1iYWxhbmNpbmcgYmxvY2sKICAgICAgYmxvY2soYm9keSwgbm9kZUNvdW50KSB7CiAgICAgICAgdGhpcy5fYmxvY2tTdGFydHMucHVzaCh0aGlzLl9ub2Rlcy5sZW5ndGgpOwogICAgICAgIGlmIChib2R5KQogICAgICAgICAgdGhpcy5jb2RlKGJvZHkpLmVuZEJsb2NrKG5vZGVDb3VudCk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgLy8gZW5kIHRoZSBjdXJyZW50IHNlbGYtYmFsYW5jaW5nIGJsb2NrCiAgICAgIGVuZEJsb2NrKG5vZGVDb3VudCkgewogICAgICAgIGNvbnN0IGxlbiA9IHRoaXMuX2Jsb2NrU3RhcnRzLnBvcCgpOwogICAgICAgIGlmIChsZW4gPT09IHZvaWQgMCkKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiQ29kZUdlbjogbm90IGluIHNlbGYtYmFsYW5jaW5nIGJsb2NrIik7CiAgICAgICAgY29uc3QgdG9DbG9zZSA9IHRoaXMuX25vZGVzLmxlbmd0aCAtIGxlbjsKICAgICAgICBpZiAodG9DbG9zZSA8IDAgfHwgbm9kZUNvdW50ICE9PSB2b2lkIDAgJiYgdG9DbG9zZSAhPT0gbm9kZUNvdW50KSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENvZGVHZW46IHdyb25nIG51bWJlciBvZiBub2RlczogJHt0b0Nsb3NlfSB2cyAke25vZGVDb3VudH0gZXhwZWN0ZWRgKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fbm9kZXMubGVuZ3RoID0gbGVuOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIC8vIGBmdW5jdGlvbmAgaGVhZGluZyAob3IgZGVmaW5pdGlvbiBpZiBmdW5jQm9keSBpcyBwYXNzZWQpCiAgICAgIGZ1bmMobmFtZSwgYXJncyA9IGNvZGVfMS5uaWwsIGFzeW5jLCBmdW5jQm9keSkgewogICAgICAgIHRoaXMuX2Jsb2NrTm9kZShuZXcgRnVuYyhuYW1lLCBhcmdzLCBhc3luYykpOwogICAgICAgIGlmIChmdW5jQm9keSkKICAgICAgICAgIHRoaXMuY29kZShmdW5jQm9keSkuZW5kRnVuYygpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIC8vIGVuZCBmdW5jdGlvbiBkZWZpbml0aW9uCiAgICAgIGVuZEZ1bmMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2VuZEJsb2NrTm9kZShGdW5jKTsKICAgICAgfQogICAgICBvcHRpbWl6ZShuID0gMSkgewogICAgICAgIHdoaWxlIChuLS0gPiAwKSB7CiAgICAgICAgICB0aGlzLl9yb290Lm9wdGltaXplTm9kZXMoKTsKICAgICAgICAgIHRoaXMuX3Jvb3Qub3B0aW1pemVOYW1lcyh0aGlzLl9yb290Lm5hbWVzLCB0aGlzLl9jb25zdGFudHMpOwogICAgICAgIH0KICAgICAgfQogICAgICBfbGVhZk5vZGUobm9kZSkgewogICAgICAgIHRoaXMuX2N1cnJOb2RlLm5vZGVzLnB1c2gobm9kZSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgX2Jsb2NrTm9kZShub2RlKSB7CiAgICAgICAgdGhpcy5fY3Vyck5vZGUubm9kZXMucHVzaChub2RlKTsKICAgICAgICB0aGlzLl9ub2Rlcy5wdXNoKG5vZGUpOwogICAgICB9CiAgICAgIF9lbmRCbG9ja05vZGUoTjEsIE4yKSB7CiAgICAgICAgY29uc3QgbiA9IHRoaXMuX2N1cnJOb2RlOwogICAgICAgIGlmIChuIGluc3RhbmNlb2YgTjEgfHwgTjIgJiYgbiBpbnN0YW5jZW9mIE4yKSB7CiAgICAgICAgICB0aGlzLl9ub2Rlcy5wb3AoKTsKICAgICAgICAgIHJldHVybiB0aGlzOwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENvZGVHZW46IG5vdCBpbiBibG9jayAiJHtOMiA/IGAke04xLmtpbmR9LyR7TjIua2luZH1gIDogTjEua2luZH0iYCk7CiAgICAgIH0KICAgICAgX2Vsc2VOb2RlKG5vZGUpIHsKICAgICAgICBjb25zdCBuID0gdGhpcy5fY3Vyck5vZGU7CiAgICAgICAgaWYgKCEobiBpbnN0YW5jZW9mIElmKSkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdDb2RlR2VuOiAiZWxzZSIgd2l0aG91dCAiaWYiJyk7CiAgICAgICAgfQogICAgICAgIHRoaXMuX2N1cnJOb2RlID0gbi5lbHNlID0gbm9kZTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBnZXQgX3Jvb3QoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX25vZGVzWzBdOwogICAgICB9CiAgICAgIGdldCBfY3Vyck5vZGUoKSB7CiAgICAgICAgY29uc3QgbnMgPSB0aGlzLl9ub2RlczsKICAgICAgICByZXR1cm4gbnNbbnMubGVuZ3RoIC0gMV07CiAgICAgIH0KICAgICAgc2V0IF9jdXJyTm9kZShub2RlKSB7CiAgICAgICAgY29uc3QgbnMgPSB0aGlzLl9ub2RlczsKICAgICAgICBuc1tucy5sZW5ndGggLSAxXSA9IG5vZGU7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Db2RlR2VuID0gQ29kZUdlbjsKICAgIGZ1bmN0aW9uIGFkZE5hbWVzKG5hbWVzLCBmcm9tKSB7CiAgICAgIGZvciAoY29uc3QgbiBpbiBmcm9tKQogICAgICAgIG5hbWVzW25dID0gKG5hbWVzW25dIHx8IDApICsgKGZyb21bbl0gfHwgMCk7CiAgICAgIHJldHVybiBuYW1lczsKICAgIH0KICAgIGZ1bmN0aW9uIGFkZEV4cHJOYW1lcyhuYW1lcywgZnJvbSkgewogICAgICByZXR1cm4gZnJvbSBpbnN0YW5jZW9mIGNvZGVfMS5fQ29kZU9yTmFtZSA/IGFkZE5hbWVzKG5hbWVzLCBmcm9tLm5hbWVzKSA6IG5hbWVzOwogICAgfQogICAgZnVuY3Rpb24gb3B0aW1pemVFeHByKGV4cHIsIG5hbWVzLCBjb25zdGFudHMpIHsKICAgICAgaWYgKGV4cHIgaW5zdGFuY2VvZiBjb2RlXzEuTmFtZSkKICAgICAgICByZXR1cm4gcmVwbGFjZU5hbWUoZXhwcik7CiAgICAgIGlmICghY2FuT3B0aW1pemUoZXhwcikpCiAgICAgICAgcmV0dXJuIGV4cHI7CiAgICAgIHJldHVybiBuZXcgY29kZV8xLl9Db2RlKGV4cHIuX2l0ZW1zLnJlZHVjZSgoaXRlbXMsIGMpID0+IHsKICAgICAgICBpZiAoYyBpbnN0YW5jZW9mIGNvZGVfMS5OYW1lKQogICAgICAgICAgYyA9IHJlcGxhY2VOYW1lKGMpOwogICAgICAgIGlmIChjIGluc3RhbmNlb2YgY29kZV8xLl9Db2RlKQogICAgICAgICAgaXRlbXMucHVzaCguLi5jLl9pdGVtcyk7CiAgICAgICAgZWxzZQogICAgICAgICAgaXRlbXMucHVzaChjKTsKICAgICAgICByZXR1cm4gaXRlbXM7CiAgICAgIH0sIFtdKSk7CiAgICAgIGZ1bmN0aW9uIHJlcGxhY2VOYW1lKG4pIHsKICAgICAgICBjb25zdCBjID0gY29uc3RhbnRzW24uc3RyXTsKICAgICAgICBpZiAoYyA9PT0gdm9pZCAwIHx8IG5hbWVzW24uc3RyXSAhPT0gMSkKICAgICAgICAgIHJldHVybiBuOwogICAgICAgIGRlbGV0ZSBuYW1lc1tuLnN0cl07CiAgICAgICAgcmV0dXJuIGM7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gY2FuT3B0aW1pemUoZSkgewogICAgICAgIHJldHVybiBlIGluc3RhbmNlb2YgY29kZV8xLl9Db2RlICYmIGUuX2l0ZW1zLnNvbWUoKGMpID0+IGMgaW5zdGFuY2VvZiBjb2RlXzEuTmFtZSAmJiBuYW1lc1tjLnN0cl0gPT09IDEgJiYgY29uc3RhbnRzW2Muc3RyXSAhPT0gdm9pZCAwKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gc3VidHJhY3ROYW1lcyhuYW1lcywgZnJvbSkgewogICAgICBmb3IgKGNvbnN0IG4gaW4gZnJvbSkKICAgICAgICBuYW1lc1tuXSA9IChuYW1lc1tuXSB8fCAwKSAtIChmcm9tW25dIHx8IDApOwogICAgfQogICAgZnVuY3Rpb24gbm90KHgpIHsKICAgICAgcmV0dXJuIHR5cGVvZiB4ID09ICJib29sZWFuIiB8fCB0eXBlb2YgeCA9PSAibnVtYmVyIiB8fCB4ID09PSBudWxsID8gIXggOiAoMCwgY29kZV8xLl8pYCEke3Bhcih4KX1gOwogICAgfQogICAgZXhwb3J0czIubm90ID0gbm90OwogICAgdmFyIGFuZENvZGUgPSBtYXBwZW5kKGV4cG9ydHMyLm9wZXJhdG9ycy5BTkQpOwogICAgZnVuY3Rpb24gYW5kKC4uLmFyZ3MpIHsKICAgICAgcmV0dXJuIGFyZ3MucmVkdWNlKGFuZENvZGUpOwogICAgfQogICAgZXhwb3J0czIuYW5kID0gYW5kOwogICAgdmFyIG9yQ29kZSA9IG1hcHBlbmQoZXhwb3J0czIub3BlcmF0b3JzLk9SKTsKICAgIGZ1bmN0aW9uIG9yKC4uLmFyZ3MpIHsKICAgICAgcmV0dXJuIGFyZ3MucmVkdWNlKG9yQ29kZSk7CiAgICB9CiAgICBleHBvcnRzMi5vciA9IG9yOwogICAgZnVuY3Rpb24gbWFwcGVuZChvcCkgewogICAgICByZXR1cm4gKHgsIHkpID0+IHggPT09IGNvZGVfMS5uaWwgPyB5IDogeSA9PT0gY29kZV8xLm5pbCA/IHggOiAoMCwgY29kZV8xLl8pYCR7cGFyKHgpfSAke29wfSAke3Bhcih5KX1gOwogICAgfQogICAgZnVuY3Rpb24gcGFyKHgpIHsKICAgICAgcmV0dXJuIHggaW5zdGFuY2VvZiBjb2RlXzEuTmFtZSA/IHggOiAoMCwgY29kZV8xLl8pYCgke3h9KWA7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3V0aWwuanMKdmFyIHJlcXVpcmVfdXRpbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS91dGlsLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jaGVja1N0cmljdE1vZGUgPSBleHBvcnRzMi5nZXRFcnJvclBhdGggPSBleHBvcnRzMi5UeXBlID0gZXhwb3J0czIudXNlRnVuYyA9IGV4cG9ydHMyLnNldEV2YWx1YXRlZCA9IGV4cG9ydHMyLmV2YWx1YXRlZFByb3BzVG9OYW1lID0gZXhwb3J0czIubWVyZ2VFdmFsdWF0ZWQgPSBleHBvcnRzMi5lYWNoSXRlbSA9IGV4cG9ydHMyLnVuZXNjYXBlSnNvblBvaW50ZXIgPSBleHBvcnRzMi5lc2NhcGVKc29uUG9pbnRlciA9IGV4cG9ydHMyLmVzY2FwZUZyYWdtZW50ID0gZXhwb3J0czIudW5lc2NhcGVGcmFnbWVudCA9IGV4cG9ydHMyLnNjaGVtYVJlZk9yVmFsID0gZXhwb3J0czIuc2NoZW1hSGFzUnVsZXNCdXRSZWYgPSBleHBvcnRzMi5zY2hlbWFIYXNSdWxlcyA9IGV4cG9ydHMyLmNoZWNrVW5rbm93blJ1bGVzID0gZXhwb3J0czIuYWx3YXlzVmFsaWRTY2hlbWEgPSBleHBvcnRzMi50b0hhc2ggPSB2b2lkIDA7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlKCk7CiAgICBmdW5jdGlvbiB0b0hhc2goYXJyKSB7CiAgICAgIGNvbnN0IGhhc2ggPSB7fTsKICAgICAgZm9yIChjb25zdCBpdGVtIG9mIGFycikKICAgICAgICBoYXNoW2l0ZW1dID0gdHJ1ZTsKICAgICAgcmV0dXJuIGhhc2g7CiAgICB9CiAgICBleHBvcnRzMi50b0hhc2ggPSB0b0hhc2g7CiAgICBmdW5jdGlvbiBhbHdheXNWYWxpZFNjaGVtYShpdCwgc2NoZW1hKSB7CiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hID09ICJib29sZWFuIikKICAgICAgICByZXR1cm4gc2NoZW1hOwogICAgICBpZiAoT2JqZWN0LmtleXMoc2NoZW1hKS5sZW5ndGggPT09IDApCiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIGNoZWNrVW5rbm93blJ1bGVzKGl0LCBzY2hlbWEpOwogICAgICByZXR1cm4gIXNjaGVtYUhhc1J1bGVzKHNjaGVtYSwgaXQuc2VsZi5SVUxFUy5hbGwpOwogICAgfQogICAgZXhwb3J0czIuYWx3YXlzVmFsaWRTY2hlbWEgPSBhbHdheXNWYWxpZFNjaGVtYTsKICAgIGZ1bmN0aW9uIGNoZWNrVW5rbm93blJ1bGVzKGl0LCBzY2hlbWEgPSBpdC5zY2hlbWEpIHsKICAgICAgY29uc3QgeyBvcHRzLCBzZWxmOiBzZWxmMiB9ID0gaXQ7CiAgICAgIGlmICghb3B0cy5zdHJpY3RTY2hlbWEpCiAgICAgICAgcmV0dXJuOwogICAgICBpZiAodHlwZW9mIHNjaGVtYSA9PT0gImJvb2xlYW4iKQogICAgICAgIHJldHVybjsKICAgICAgY29uc3QgcnVsZXMgPSBzZWxmMi5SVUxFUy5rZXl3b3JkczsKICAgICAgZm9yIChjb25zdCBrZXkgaW4gc2NoZW1hKSB7CiAgICAgICAgaWYgKCFydWxlc1trZXldKQogICAgICAgICAgY2hlY2tTdHJpY3RNb2RlKGl0LCBgdW5rbm93biBrZXl3b3JkOiAiJHtrZXl9ImApOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5jaGVja1Vua25vd25SdWxlcyA9IGNoZWNrVW5rbm93blJ1bGVzOwogICAgZnVuY3Rpb24gc2NoZW1hSGFzUnVsZXMoc2NoZW1hLCBydWxlcykgewogICAgICBpZiAodHlwZW9mIHNjaGVtYSA9PSAiYm9vbGVhbiIpCiAgICAgICAgcmV0dXJuICFzY2hlbWE7CiAgICAgIGZvciAoY29uc3Qga2V5IGluIHNjaGVtYSkKICAgICAgICBpZiAocnVsZXNba2V5XSkKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICByZXR1cm4gZmFsc2U7CiAgICB9CiAgICBleHBvcnRzMi5zY2hlbWFIYXNSdWxlcyA9IHNjaGVtYUhhc1J1bGVzOwogICAgZnVuY3Rpb24gc2NoZW1hSGFzUnVsZXNCdXRSZWYoc2NoZW1hLCBSVUxFUykgewogICAgICBpZiAodHlwZW9mIHNjaGVtYSA9PSAiYm9vbGVhbiIpCiAgICAgICAgcmV0dXJuICFzY2hlbWE7CiAgICAgIGZvciAoY29uc3Qga2V5IGluIHNjaGVtYSkKICAgICAgICBpZiAoa2V5ICE9PSAiJHJlZiIgJiYgUlVMRVMuYWxsW2tleV0pCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQogICAgZXhwb3J0czIuc2NoZW1hSGFzUnVsZXNCdXRSZWYgPSBzY2hlbWFIYXNSdWxlc0J1dFJlZjsKICAgIGZ1bmN0aW9uIHNjaGVtYVJlZk9yVmFsKHsgdG9wU2NoZW1hUmVmLCBzY2hlbWFQYXRoIH0sIHNjaGVtYSwga2V5d29yZCwgJGRhdGEpIHsKICAgICAgaWYgKCEkZGF0YSkgewogICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hID09ICJudW1iZXIiIHx8IHR5cGVvZiBzY2hlbWEgPT0gImJvb2xlYW4iKQogICAgICAgICAgcmV0dXJuIHNjaGVtYTsKICAgICAgICBpZiAodHlwZW9mIHNjaGVtYSA9PSAic3RyaW5nIikKICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hfWA7CiAgICAgIH0KICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylgJHt0b3BTY2hlbWFSZWZ9JHtzY2hlbWFQYXRofSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkoa2V5d29yZCl9YDsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVtYVJlZk9yVmFsID0gc2NoZW1hUmVmT3JWYWw7CiAgICBmdW5jdGlvbiB1bmVzY2FwZUZyYWdtZW50KHN0cikgewogICAgICByZXR1cm4gdW5lc2NhcGVKc29uUG9pbnRlcihkZWNvZGVVUklDb21wb25lbnQoc3RyKSk7CiAgICB9CiAgICBleHBvcnRzMi51bmVzY2FwZUZyYWdtZW50ID0gdW5lc2NhcGVGcmFnbWVudDsKICAgIGZ1bmN0aW9uIGVzY2FwZUZyYWdtZW50KHN0cikgewogICAgICByZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KGVzY2FwZUpzb25Qb2ludGVyKHN0cikpOwogICAgfQogICAgZXhwb3J0czIuZXNjYXBlRnJhZ21lbnQgPSBlc2NhcGVGcmFnbWVudDsKICAgIGZ1bmN0aW9uIGVzY2FwZUpzb25Qb2ludGVyKHN0cikgewogICAgICBpZiAodHlwZW9mIHN0ciA9PSAibnVtYmVyIikKICAgICAgICByZXR1cm4gYCR7c3RyfWA7CiAgICAgIHJldHVybiBzdHIucmVwbGFjZSgvfi9nLCAifjAiKS5yZXBsYWNlKC9cLy9nLCAifjEiKTsKICAgIH0KICAgIGV4cG9ydHMyLmVzY2FwZUpzb25Qb2ludGVyID0gZXNjYXBlSnNvblBvaW50ZXI7CiAgICBmdW5jdGlvbiB1bmVzY2FwZUpzb25Qb2ludGVyKHN0cikgewogICAgICByZXR1cm4gc3RyLnJlcGxhY2UoL34xL2csICIvIikucmVwbGFjZSgvfjAvZywgIn4iKTsKICAgIH0KICAgIGV4cG9ydHMyLnVuZXNjYXBlSnNvblBvaW50ZXIgPSB1bmVzY2FwZUpzb25Qb2ludGVyOwogICAgZnVuY3Rpb24gZWFjaEl0ZW0oeHMsIGYpIHsKICAgICAgaWYgKEFycmF5LmlzQXJyYXkoeHMpKSB7CiAgICAgICAgZm9yIChjb25zdCB4IG9mIHhzKQogICAgICAgICAgZih4KTsKICAgICAgfSBlbHNlIHsKICAgICAgICBmKHhzKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuZWFjaEl0ZW0gPSBlYWNoSXRlbTsKICAgIGZ1bmN0aW9uIG1ha2VNZXJnZUV2YWx1YXRlZCh7IG1lcmdlTmFtZXMsIG1lcmdlVG9OYW1lLCBtZXJnZVZhbHVlcywgcmVzdWx0VG9OYW1lIH0pIHsKICAgICAgcmV0dXJuIChnZW4sIGZyb20sIHRvLCB0b05hbWUpID0+IHsKICAgICAgICBjb25zdCByZXMgPSB0byA9PT0gdm9pZCAwID8gZnJvbSA6IHRvIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUgPyAoZnJvbSBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lID8gbWVyZ2VOYW1lcyhnZW4sIGZyb20sIHRvKSA6IG1lcmdlVG9OYW1lKGdlbiwgZnJvbSwgdG8pLCB0bykgOiBmcm9tIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUgPyAobWVyZ2VUb05hbWUoZ2VuLCB0bywgZnJvbSksIGZyb20pIDogbWVyZ2VWYWx1ZXMoZnJvbSwgdG8pOwogICAgICAgIHJldHVybiB0b05hbWUgPT09IGNvZGVnZW5fMS5OYW1lICYmICEocmVzIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUpID8gcmVzdWx0VG9OYW1lKGdlbiwgcmVzKSA6IHJlczsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLm1lcmdlRXZhbHVhdGVkID0gewogICAgICBwcm9wczogbWFrZU1lcmdlRXZhbHVhdGVkKHsKICAgICAgICBtZXJnZU5hbWVzOiAoZ2VuLCBmcm9tLCB0bykgPT4gZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHt0b30gIT09IHRydWUgJiYgJHtmcm9tfSAhPT0gdW5kZWZpbmVkYCwgKCkgPT4gewogICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtmcm9tfSA9PT0gdHJ1ZWAsICgpID0+IGdlbi5hc3NpZ24odG8sIHRydWUpLCAoKSA9PiBnZW4uYXNzaWduKHRvLCAoMCwgY29kZWdlbl8xLl8pYCR7dG99IHx8IHt9YCkuY29kZSgoMCwgY29kZWdlbl8xLl8pYE9iamVjdC5hc3NpZ24oJHt0b30sICR7ZnJvbX0pYCkpOwogICAgICAgIH0pLAogICAgICAgIG1lcmdlVG9OYW1lOiAoZ2VuLCBmcm9tLCB0bykgPT4gZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHt0b30gIT09IHRydWVgLCAoKSA9PiB7CiAgICAgICAgICBpZiAoZnJvbSA9PT0gdHJ1ZSkgewogICAgICAgICAgICBnZW4uYXNzaWduKHRvLCB0cnVlKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGdlbi5hc3NpZ24odG8sICgwLCBjb2RlZ2VuXzEuXylgJHt0b30gfHwge31gKTsKICAgICAgICAgICAgc2V0RXZhbHVhdGVkKGdlbiwgdG8sIGZyb20pOwogICAgICAgICAgfQogICAgICAgIH0pLAogICAgICAgIG1lcmdlVmFsdWVzOiAoZnJvbSwgdG8pID0+IGZyb20gPT09IHRydWUgPyB0cnVlIDogeyAuLi5mcm9tLCAuLi50byB9LAogICAgICAgIHJlc3VsdFRvTmFtZTogZXZhbHVhdGVkUHJvcHNUb05hbWUKICAgICAgfSksCiAgICAgIGl0ZW1zOiBtYWtlTWVyZ2VFdmFsdWF0ZWQoewogICAgICAgIG1lcmdlTmFtZXM6IChnZW4sIGZyb20sIHRvKSA9PiBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke3RvfSAhPT0gdHJ1ZSAmJiAke2Zyb219ICE9PSB1bmRlZmluZWRgLCAoKSA9PiBnZW4uYXNzaWduKHRvLCAoMCwgY29kZWdlbl8xLl8pYCR7ZnJvbX0gPT09IHRydWUgPyB0cnVlIDogJHt0b30gPiAke2Zyb219ID8gJHt0b30gOiAke2Zyb219YCkpLAogICAgICAgIG1lcmdlVG9OYW1lOiAoZ2VuLCBmcm9tLCB0bykgPT4gZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHt0b30gIT09IHRydWVgLCAoKSA9PiBnZW4uYXNzaWduKHRvLCBmcm9tID09PSB0cnVlID8gdHJ1ZSA6ICgwLCBjb2RlZ2VuXzEuXylgJHt0b30gPiAke2Zyb219ID8gJHt0b30gOiAke2Zyb219YCkpLAogICAgICAgIG1lcmdlVmFsdWVzOiAoZnJvbSwgdG8pID0+IGZyb20gPT09IHRydWUgPyB0cnVlIDogTWF0aC5tYXgoZnJvbSwgdG8pLAogICAgICAgIHJlc3VsdFRvTmFtZTogKGdlbiwgaXRlbXMpID0+IGdlbi52YXIoIml0ZW1zIiwgaXRlbXMpCiAgICAgIH0pCiAgICB9OwogICAgZnVuY3Rpb24gZXZhbHVhdGVkUHJvcHNUb05hbWUoZ2VuLCBwcykgewogICAgICBpZiAocHMgPT09IHRydWUpCiAgICAgICAgcmV0dXJuIGdlbi52YXIoInByb3BzIiwgdHJ1ZSk7CiAgICAgIGNvbnN0IHByb3BzID0gZ2VuLnZhcigicHJvcHMiLCAoMCwgY29kZWdlbl8xLl8pYHt9YCk7CiAgICAgIGlmIChwcyAhPT0gdm9pZCAwKQogICAgICAgIHNldEV2YWx1YXRlZChnZW4sIHByb3BzLCBwcyk7CiAgICAgIHJldHVybiBwcm9wczsKICAgIH0KICAgIGV4cG9ydHMyLmV2YWx1YXRlZFByb3BzVG9OYW1lID0gZXZhbHVhdGVkUHJvcHNUb05hbWU7CiAgICBmdW5jdGlvbiBzZXRFdmFsdWF0ZWQoZ2VuLCBwcm9wcywgcHMpIHsKICAgICAgT2JqZWN0LmtleXMocHMpLmZvckVhY2goKHApID0+IGdlbi5hc3NpZ24oKDAsIGNvZGVnZW5fMS5fKWAke3Byb3BzfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkocCl9YCwgdHJ1ZSkpOwogICAgfQogICAgZXhwb3J0czIuc2V0RXZhbHVhdGVkID0gc2V0RXZhbHVhdGVkOwogICAgdmFyIHNuaXBwZXRzID0ge307CiAgICBmdW5jdGlvbiB1c2VGdW5jKGdlbiwgZikgewogICAgICByZXR1cm4gZ2VuLnNjb3BlVmFsdWUoImZ1bmMiLCB7CiAgICAgICAgcmVmOiBmLAogICAgICAgIGNvZGU6IHNuaXBwZXRzW2YuY29kZV0gfHwgKHNuaXBwZXRzW2YuY29kZV0gPSBuZXcgY29kZV8xLl9Db2RlKGYuY29kZSkpCiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudXNlRnVuYyA9IHVzZUZ1bmM7CiAgICB2YXIgVHlwZTsKICAgIChmdW5jdGlvbihUeXBlMikgewogICAgICBUeXBlMltUeXBlMlsiTnVtIl0gPSAwXSA9ICJOdW0iOwogICAgICBUeXBlMltUeXBlMlsiU3RyIl0gPSAxXSA9ICJTdHIiOwogICAgfSkoVHlwZSB8fCAoZXhwb3J0czIuVHlwZSA9IFR5cGUgPSB7fSkpOwogICAgZnVuY3Rpb24gZ2V0RXJyb3JQYXRoKGRhdGFQcm9wLCBkYXRhUHJvcFR5cGUsIGpzUHJvcGVydHlTeW50YXgpIHsKICAgICAgaWYgKGRhdGFQcm9wIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUpIHsKICAgICAgICBjb25zdCBpc051bWJlciA9IGRhdGFQcm9wVHlwZSA9PT0gVHlwZS5OdW07CiAgICAgICAgcmV0dXJuIGpzUHJvcGVydHlTeW50YXggPyBpc051bWJlciA/ICgwLCBjb2RlZ2VuXzEuXylgIlsiICsgJHtkYXRhUHJvcH0gKyAiXSJgIDogKDAsIGNvZGVnZW5fMS5fKWAiWyciICsgJHtkYXRhUHJvcH0gKyAiJ10iYCA6IGlzTnVtYmVyID8gKDAsIGNvZGVnZW5fMS5fKWAiLyIgKyAke2RhdGFQcm9wfWAgOiAoMCwgY29kZWdlbl8xLl8pYCIvIiArICR7ZGF0YVByb3B9LnJlcGxhY2UoL34vZywgIn4wIikucmVwbGFjZSgvXFwvL2csICJ+MSIpYDsKICAgICAgfQogICAgICByZXR1cm4ganNQcm9wZXJ0eVN5bnRheCA/ICgwLCBjb2RlZ2VuXzEuZ2V0UHJvcGVydHkpKGRhdGFQcm9wKS50b1N0cmluZygpIDogIi8iICsgZXNjYXBlSnNvblBvaW50ZXIoZGF0YVByb3ApOwogICAgfQogICAgZXhwb3J0czIuZ2V0RXJyb3JQYXRoID0gZ2V0RXJyb3JQYXRoOwogICAgZnVuY3Rpb24gY2hlY2tTdHJpY3RNb2RlKGl0LCBtc2csIG1vZGUgPSBpdC5vcHRzLnN0cmljdFNjaGVtYSkgewogICAgICBpZiAoIW1vZGUpCiAgICAgICAgcmV0dXJuOwogICAgICBtc2cgPSBgc3RyaWN0IG1vZGU6ICR7bXNnfWA7CiAgICAgIGlmIChtb2RlID09PSB0cnVlKQogICAgICAgIHRocm93IG5ldyBFcnJvcihtc2cpOwogICAgICBpdC5zZWxmLmxvZ2dlci53YXJuKG1zZyk7CiAgICB9CiAgICBleHBvcnRzMi5jaGVja1N0cmljdE1vZGUgPSBjaGVja1N0cmljdE1vZGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL25hbWVzLmpzCnZhciByZXF1aXJlX25hbWVzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL25hbWVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgbmFtZXMgPSB7CiAgICAgIC8vIHZhbGlkYXRpb24gZnVuY3Rpb24gYXJndW1lbnRzCiAgICAgIGRhdGE6IG5ldyBjb2RlZ2VuXzEuTmFtZSgiZGF0YSIpLAogICAgICAvLyBkYXRhIHBhc3NlZCB0byB2YWxpZGF0aW9uIGZ1bmN0aW9uCiAgICAgIC8vIGFyZ3MgcGFzc2VkIGZyb20gcmVmZXJlbmNpbmcgc2NoZW1hCiAgICAgIHZhbEN4dDogbmV3IGNvZGVnZW5fMS5OYW1lKCJ2YWxDeHQiKSwKICAgICAgLy8gdmFsaWRhdGlvbi9kYXRhIGNvbnRleHQgLSBzaG91bGQgbm90IGJlIHVzZWQgZGlyZWN0bHksIGl0IGlzIGRlc3RydWN0dXJlZCB0byB0aGUgbmFtZXMgYmVsb3cKICAgICAgaW5zdGFuY2VQYXRoOiBuZXcgY29kZWdlbl8xLk5hbWUoImluc3RhbmNlUGF0aCIpLAogICAgICBwYXJlbnREYXRhOiBuZXcgY29kZWdlbl8xLk5hbWUoInBhcmVudERhdGEiKSwKICAgICAgcGFyZW50RGF0YVByb3BlcnR5OiBuZXcgY29kZWdlbl8xLk5hbWUoInBhcmVudERhdGFQcm9wZXJ0eSIpLAogICAgICByb290RGF0YTogbmV3IGNvZGVnZW5fMS5OYW1lKCJyb290RGF0YSIpLAogICAgICAvLyByb290IGRhdGEgLSBzYW1lIGFzIHRoZSBkYXRhIHBhc3NlZCB0byB0aGUgZmlyc3QvdG9wIHZhbGlkYXRpb24gZnVuY3Rpb24KICAgICAgZHluYW1pY0FuY2hvcnM6IG5ldyBjb2RlZ2VuXzEuTmFtZSgiZHluYW1pY0FuY2hvcnMiKSwKICAgICAgLy8gdXNlZCB0byBzdXBwb3J0IHJlY3Vyc2l2ZVJlZiBhbmQgZHluYW1pY1JlZgogICAgICAvLyBmdW5jdGlvbiBzY29wZWQgdmFyaWFibGVzCiAgICAgIHZFcnJvcnM6IG5ldyBjb2RlZ2VuXzEuTmFtZSgidkVycm9ycyIpLAogICAgICAvLyBudWxsIG9yIGFycmF5IG9mIHZhbGlkYXRpb24gZXJyb3JzCiAgICAgIGVycm9yczogbmV3IGNvZGVnZW5fMS5OYW1lKCJlcnJvcnMiKSwKICAgICAgLy8gY291bnRlciBvZiB2YWxpZGF0aW9uIGVycm9ycwogICAgICB0aGlzOiBuZXcgY29kZWdlbl8xLk5hbWUoInRoaXMiKSwKICAgICAgLy8gImdsb2JhbHMiCiAgICAgIHNlbGY6IG5ldyBjb2RlZ2VuXzEuTmFtZSgic2VsZiIpLAogICAgICBzY29wZTogbmV3IGNvZGVnZW5fMS5OYW1lKCJzY29wZSIpLAogICAgICAvLyBKVEQgc2VyaWFsaXplL3BhcnNlIG5hbWUgZm9yIEpTT04gc3RyaW5nIGFuZCBwb3NpdGlvbgogICAgICBqc29uOiBuZXcgY29kZWdlbl8xLk5hbWUoImpzb24iKSwKICAgICAganNvblBvczogbmV3IGNvZGVnZW5fMS5OYW1lKCJqc29uUG9zIiksCiAgICAgIGpzb25MZW46IG5ldyBjb2RlZ2VuXzEuTmFtZSgianNvbkxlbiIpLAogICAgICBqc29uUGFydDogbmV3IGNvZGVnZW5fMS5OYW1lKCJqc29uUGFydCIpCiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IG5hbWVzOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9lcnJvcnMuanMKdmFyIHJlcXVpcmVfZXJyb3JzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL2Vycm9ycy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXh0ZW5kRXJyb3JzID0gZXhwb3J0czIucmVzZXRFcnJvcnNDb3VudCA9IGV4cG9ydHMyLnJlcG9ydEV4dHJhRXJyb3IgPSBleHBvcnRzMi5yZXBvcnRFcnJvciA9IGV4cG9ydHMyLmtleXdvcmQkRGF0YUVycm9yID0gZXhwb3J0czIua2V5d29yZEVycm9yID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIG5hbWVzXzEgPSByZXF1aXJlX25hbWVzKCk7CiAgICBleHBvcnRzMi5rZXl3b3JkRXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IGtleXdvcmQgfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgcGFzcyAiJHtrZXl3b3JkfSIga2V5d29yZCB2YWxpZGF0aW9uYAogICAgfTsKICAgIGV4cG9ydHMyLmtleXdvcmQkRGF0YUVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBrZXl3b3JkLCBzY2hlbWFUeXBlIH0pID0+IHNjaGVtYVR5cGUgPyAoMCwgY29kZWdlbl8xLnN0cilgIiR7a2V5d29yZH0iIGtleXdvcmQgbXVzdCBiZSAke3NjaGVtYVR5cGV9ICgkZGF0YSlgIDogKDAsIGNvZGVnZW5fMS5zdHIpYCIke2tleXdvcmR9IiBrZXl3b3JkIGlzIGludmFsaWQgKCRkYXRhKWAKICAgIH07CiAgICBmdW5jdGlvbiByZXBvcnRFcnJvcihjeHQsIGVycm9yID0gZXhwb3J0czIua2V5d29yZEVycm9yLCBlcnJvclBhdGhzLCBvdmVycmlkZUFsbEVycm9ycykgewogICAgICBjb25zdCB7IGl0IH0gPSBjeHQ7CiAgICAgIGNvbnN0IHsgZ2VuLCBjb21wb3NpdGVSdWxlLCBhbGxFcnJvcnMgfSA9IGl0OwogICAgICBjb25zdCBlcnJPYmogPSBlcnJvck9iamVjdENvZGUoY3h0LCBlcnJvciwgZXJyb3JQYXRocyk7CiAgICAgIGlmIChvdmVycmlkZUFsbEVycm9ycyAhPT0gbnVsbCAmJiBvdmVycmlkZUFsbEVycm9ycyAhPT0gdm9pZCAwID8gb3ZlcnJpZGVBbGxFcnJvcnMgOiBjb21wb3NpdGVSdWxlIHx8IGFsbEVycm9ycykgewogICAgICAgIGFkZEVycm9yKGdlbiwgZXJyT2JqKTsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm5FcnJvcnMoaXQsICgwLCBjb2RlZ2VuXzEuXylgWyR7ZXJyT2JqfV1gKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIucmVwb3J0RXJyb3IgPSByZXBvcnRFcnJvcjsKICAgIGZ1bmN0aW9uIHJlcG9ydEV4dHJhRXJyb3IoY3h0LCBlcnJvciA9IGV4cG9ydHMyLmtleXdvcmRFcnJvciwgZXJyb3JQYXRocykgewogICAgICBjb25zdCB7IGl0IH0gPSBjeHQ7CiAgICAgIGNvbnN0IHsgZ2VuLCBjb21wb3NpdGVSdWxlLCBhbGxFcnJvcnMgfSA9IGl0OwogICAgICBjb25zdCBlcnJPYmogPSBlcnJvck9iamVjdENvZGUoY3h0LCBlcnJvciwgZXJyb3JQYXRocyk7CiAgICAgIGFkZEVycm9yKGdlbiwgZXJyT2JqKTsKICAgICAgaWYgKCEoY29tcG9zaXRlUnVsZSB8fCBhbGxFcnJvcnMpKSB7CiAgICAgICAgcmV0dXJuRXJyb3JzKGl0LCBuYW1lc18xLmRlZmF1bHQudkVycm9ycyk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLnJlcG9ydEV4dHJhRXJyb3IgPSByZXBvcnRFeHRyYUVycm9yOwogICAgZnVuY3Rpb24gcmVzZXRFcnJvcnNDb3VudChnZW4sIGVycnNDb3VudCkgewogICAgICBnZW4uYXNzaWduKG5hbWVzXzEuZGVmYXVsdC5lcnJvcnMsIGVycnNDb3VudCk7CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnZFcnJvcnN9ICE9PSBudWxsYCwgKCkgPT4gZ2VuLmlmKGVycnNDb3VudCwgKCkgPT4gZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnZFcnJvcnN9Lmxlbmd0aGAsIGVycnNDb3VudCksICgpID0+IGdlbi5hc3NpZ24obmFtZXNfMS5kZWZhdWx0LnZFcnJvcnMsIG51bGwpKSk7CiAgICB9CiAgICBleHBvcnRzMi5yZXNldEVycm9yc0NvdW50ID0gcmVzZXRFcnJvcnNDb3VudDsKICAgIGZ1bmN0aW9uIGV4dGVuZEVycm9ycyh7IGdlbiwga2V5d29yZCwgc2NoZW1hVmFsdWUsIGRhdGEsIGVycnNDb3VudCwgaXQgfSkgewogICAgICBpZiAoZXJyc0NvdW50ID09PSB2b2lkIDApCiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJhanYgaW1wbGVtZW50YXRpb24gZXJyb3IiKTsKICAgICAgY29uc3QgZXJyID0gZ2VuLm5hbWUoImVyciIpOwogICAgICBnZW4uZm9yUmFuZ2UoImkiLCBlcnJzQ291bnQsIG5hbWVzXzEuZGVmYXVsdC5lcnJvcnMsIChpKSA9PiB7CiAgICAgICAgZ2VuLmNvbnN0KGVyciwgKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52RXJyb3JzfVske2l9XWApOwogICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7ZXJyfS5pbnN0YW5jZVBhdGggPT09IHVuZGVmaW5lZGAsICgpID0+IGdlbi5hc3NpZ24oKDAsIGNvZGVnZW5fMS5fKWAke2Vycn0uaW5zdGFuY2VQYXRoYCwgKDAsIGNvZGVnZW5fMS5zdHJDb25jYXQpKG5hbWVzXzEuZGVmYXVsdC5pbnN0YW5jZVBhdGgsIGl0LmVycm9yUGF0aCkpKTsKICAgICAgICBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtlcnJ9LnNjaGVtYVBhdGhgLCAoMCwgY29kZWdlbl8xLnN0cilgJHtpdC5lcnJTY2hlbWFQYXRofS8ke2tleXdvcmR9YCk7CiAgICAgICAgaWYgKGl0Lm9wdHMudmVyYm9zZSkgewogICAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7ZXJyfS5zY2hlbWFgLCBzY2hlbWFWYWx1ZSk7CiAgICAgICAgICBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtlcnJ9LmRhdGFgLCBkYXRhKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZXh0ZW5kRXJyb3JzID0gZXh0ZW5kRXJyb3JzOwogICAgZnVuY3Rpb24gYWRkRXJyb3IoZ2VuLCBlcnJPYmopIHsKICAgICAgY29uc3QgZXJyID0gZ2VuLmNvbnN0KCJlcnIiLCBlcnJPYmopOwogICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52RXJyb3JzfSA9PT0gbnVsbGAsICgpID0+IGdlbi5hc3NpZ24obmFtZXNfMS5kZWZhdWx0LnZFcnJvcnMsICgwLCBjb2RlZ2VuXzEuXylgWyR7ZXJyfV1gKSwgKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52RXJyb3JzfS5wdXNoKCR7ZXJyfSlgKTsKICAgICAgZ2VuLmNvZGUoKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC5lcnJvcnN9KytgKTsKICAgIH0KICAgIGZ1bmN0aW9uIHJldHVybkVycm9ycyhpdCwgZXJycykgewogICAgICBjb25zdCB7IGdlbiwgdmFsaWRhdGVOYW1lLCBzY2hlbWFFbnYgfSA9IGl0OwogICAgICBpZiAoc2NoZW1hRW52LiRhc3luYykgewogICAgICAgIGdlbi50aHJvdygoMCwgY29kZWdlbl8xLl8pYG5ldyAke2l0LlZhbGlkYXRpb25FcnJvcn0oJHtlcnJzfSlgKTsKICAgICAgfSBlbHNlIHsKICAgICAgICBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHt2YWxpZGF0ZU5hbWV9LmVycm9yc2AsIGVycnMpOwogICAgICAgIGdlbi5yZXR1cm4oZmFsc2UpOwogICAgICB9CiAgICB9CiAgICB2YXIgRSA9IHsKICAgICAga2V5d29yZDogbmV3IGNvZGVnZW5fMS5OYW1lKCJrZXl3b3JkIiksCiAgICAgIHNjaGVtYVBhdGg6IG5ldyBjb2RlZ2VuXzEuTmFtZSgic2NoZW1hUGF0aCIpLAogICAgICAvLyBhbHNvIHVzZWQgaW4gSlREIGVycm9ycwogICAgICBwYXJhbXM6IG5ldyBjb2RlZ2VuXzEuTmFtZSgicGFyYW1zIiksCiAgICAgIHByb3BlcnR5TmFtZTogbmV3IGNvZGVnZW5fMS5OYW1lKCJwcm9wZXJ0eU5hbWUiKSwKICAgICAgbWVzc2FnZTogbmV3IGNvZGVnZW5fMS5OYW1lKCJtZXNzYWdlIiksCiAgICAgIHNjaGVtYTogbmV3IGNvZGVnZW5fMS5OYW1lKCJzY2hlbWEiKSwKICAgICAgcGFyZW50U2NoZW1hOiBuZXcgY29kZWdlbl8xLk5hbWUoInBhcmVudFNjaGVtYSIpCiAgICB9OwogICAgZnVuY3Rpb24gZXJyb3JPYmplY3RDb2RlKGN4dCwgZXJyb3IsIGVycm9yUGF0aHMpIHsKICAgICAgY29uc3QgeyBjcmVhdGVFcnJvcnMgfSA9IGN4dC5pdDsKICAgICAgaWYgKGNyZWF0ZUVycm9ycyA9PT0gZmFsc2UpCiAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylge31gOwogICAgICByZXR1cm4gZXJyb3JPYmplY3QoY3h0LCBlcnJvciwgZXJyb3JQYXRocyk7CiAgICB9CiAgICBmdW5jdGlvbiBlcnJvck9iamVjdChjeHQsIGVycm9yLCBlcnJvclBhdGhzID0ge30pIHsKICAgICAgY29uc3QgeyBnZW4sIGl0IH0gPSBjeHQ7CiAgICAgIGNvbnN0IGtleVZhbHVlcyA9IFsKICAgICAgICBlcnJvckluc3RhbmNlUGF0aChpdCwgZXJyb3JQYXRocyksCiAgICAgICAgZXJyb3JTY2hlbWFQYXRoKGN4dCwgZXJyb3JQYXRocykKICAgICAgXTsKICAgICAgZXh0cmFFcnJvclByb3BzKGN4dCwgZXJyb3IsIGtleVZhbHVlcyk7CiAgICAgIHJldHVybiBnZW4ub2JqZWN0KC4uLmtleVZhbHVlcyk7CiAgICB9CiAgICBmdW5jdGlvbiBlcnJvckluc3RhbmNlUGF0aCh7IGVycm9yUGF0aCB9LCB7IGluc3RhbmNlUGF0aCB9KSB7CiAgICAgIGNvbnN0IGluc3RQYXRoID0gaW5zdGFuY2VQYXRoID8gKDAsIGNvZGVnZW5fMS5zdHIpYCR7ZXJyb3JQYXRofSR7KDAsIHV0aWxfMS5nZXRFcnJvclBhdGgpKGluc3RhbmNlUGF0aCwgdXRpbF8xLlR5cGUuU3RyKX1gIDogZXJyb3JQYXRoOwogICAgICByZXR1cm4gW25hbWVzXzEuZGVmYXVsdC5pbnN0YW5jZVBhdGgsICgwLCBjb2RlZ2VuXzEuc3RyQ29uY2F0KShuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCBpbnN0UGF0aCldOwogICAgfQogICAgZnVuY3Rpb24gZXJyb3JTY2hlbWFQYXRoKHsga2V5d29yZCwgaXQ6IHsgZXJyU2NoZW1hUGF0aCB9IH0sIHsgc2NoZW1hUGF0aCwgcGFyZW50U2NoZW1hIH0pIHsKICAgICAgbGV0IHNjaFBhdGggPSBwYXJlbnRTY2hlbWEgPyBlcnJTY2hlbWFQYXRoIDogKDAsIGNvZGVnZW5fMS5zdHIpYCR7ZXJyU2NoZW1hUGF0aH0vJHtrZXl3b3JkfWA7CiAgICAgIGlmIChzY2hlbWFQYXRoKSB7CiAgICAgICAgc2NoUGF0aCA9ICgwLCBjb2RlZ2VuXzEuc3RyKWAke3NjaFBhdGh9JHsoMCwgdXRpbF8xLmdldEVycm9yUGF0aCkoc2NoZW1hUGF0aCwgdXRpbF8xLlR5cGUuU3RyKX1gOwogICAgICB9CiAgICAgIHJldHVybiBbRS5zY2hlbWFQYXRoLCBzY2hQYXRoXTsKICAgIH0KICAgIGZ1bmN0aW9uIGV4dHJhRXJyb3JQcm9wcyhjeHQsIHsgcGFyYW1zLCBtZXNzYWdlIH0sIGtleVZhbHVlcykgewogICAgICBjb25zdCB7IGtleXdvcmQsIGRhdGEsIHNjaGVtYVZhbHVlLCBpdCB9ID0gY3h0OwogICAgICBjb25zdCB7IG9wdHMsIHByb3BlcnR5TmFtZSwgdG9wU2NoZW1hUmVmLCBzY2hlbWFQYXRoIH0gPSBpdDsKICAgICAga2V5VmFsdWVzLnB1c2goW0Uua2V5d29yZCwga2V5d29yZF0sIFtFLnBhcmFtcywgdHlwZW9mIHBhcmFtcyA9PSAiZnVuY3Rpb24iID8gcGFyYW1zKGN4dCkgOiBwYXJhbXMgfHwgKDAsIGNvZGVnZW5fMS5fKWB7fWBdKTsKICAgICAgaWYgKG9wdHMubWVzc2FnZXMpIHsKICAgICAgICBrZXlWYWx1ZXMucHVzaChbRS5tZXNzYWdlLCB0eXBlb2YgbWVzc2FnZSA9PSAiZnVuY3Rpb24iID8gbWVzc2FnZShjeHQpIDogbWVzc2FnZV0pOwogICAgICB9CiAgICAgIGlmIChvcHRzLnZlcmJvc2UpIHsKICAgICAgICBrZXlWYWx1ZXMucHVzaChbRS5zY2hlbWEsIHNjaGVtYVZhbHVlXSwgW0UucGFyZW50U2NoZW1hLCAoMCwgY29kZWdlbl8xLl8pYCR7dG9wU2NoZW1hUmVmfSR7c2NoZW1hUGF0aH1gXSwgW25hbWVzXzEuZGVmYXVsdC5kYXRhLCBkYXRhXSk7CiAgICAgIH0KICAgICAgaWYgKHByb3BlcnR5TmFtZSkKICAgICAgICBrZXlWYWx1ZXMucHVzaChbRS5wcm9wZXJ0eU5hbWUsIHByb3BlcnR5TmFtZV0pOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS92YWxpZGF0ZS9ib29sU2NoZW1hLmpzCnZhciByZXF1aXJlX2Jvb2xTY2hlbWEgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvYm9vbFNjaGVtYS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYm9vbE9yRW1wdHlTY2hlbWEgPSBleHBvcnRzMi50b3BCb29sT3JFbXB0eVNjaGVtYSA9IHZvaWQgMDsKICAgIHZhciBlcnJvcnNfMSA9IHJlcXVpcmVfZXJyb3JzKCk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgbmFtZXNfMSA9IHJlcXVpcmVfbmFtZXMoKTsKICAgIHZhciBib29sRXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICJib29sZWFuIHNjaGVtYSBpcyBmYWxzZSIKICAgIH07CiAgICBmdW5jdGlvbiB0b3BCb29sT3JFbXB0eVNjaGVtYShpdCkgewogICAgICBjb25zdCB7IGdlbiwgc2NoZW1hLCB2YWxpZGF0ZU5hbWUgfSA9IGl0OwogICAgICBpZiAoc2NoZW1hID09PSBmYWxzZSkgewogICAgICAgIGZhbHNlU2NoZW1hRXJyb3IoaXQsIGZhbHNlKTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2Ygc2NoZW1hID09ICJvYmplY3QiICYmIHNjaGVtYS4kYXN5bmMgPT09IHRydWUpIHsKICAgICAgICBnZW4ucmV0dXJuKG5hbWVzXzEuZGVmYXVsdC5kYXRhKTsKICAgICAgfSBlbHNlIHsKICAgICAgICBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHt2YWxpZGF0ZU5hbWV9LmVycm9yc2AsIG51bGwpOwogICAgICAgIGdlbi5yZXR1cm4odHJ1ZSk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLnRvcEJvb2xPckVtcHR5U2NoZW1hID0gdG9wQm9vbE9yRW1wdHlTY2hlbWE7CiAgICBmdW5jdGlvbiBib29sT3JFbXB0eVNjaGVtYShpdCwgdmFsaWQpIHsKICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYSB9ID0gaXQ7CiAgICAgIGlmIChzY2hlbWEgPT09IGZhbHNlKSB7CiAgICAgICAgZ2VuLnZhcih2YWxpZCwgZmFsc2UpOwogICAgICAgIGZhbHNlU2NoZW1hRXJyb3IoaXQpOwogICAgICB9IGVsc2UgewogICAgICAgIGdlbi52YXIodmFsaWQsIHRydWUpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5ib29sT3JFbXB0eVNjaGVtYSA9IGJvb2xPckVtcHR5U2NoZW1hOwogICAgZnVuY3Rpb24gZmFsc2VTY2hlbWFFcnJvcihpdCwgb3ZlcnJpZGVBbGxFcnJvcnMpIHsKICAgICAgY29uc3QgeyBnZW4sIGRhdGEgfSA9IGl0OwogICAgICBjb25zdCBjeHQgPSB7CiAgICAgICAgZ2VuLAogICAgICAgIGtleXdvcmQ6ICJmYWxzZSBzY2hlbWEiLAogICAgICAgIGRhdGEsCiAgICAgICAgc2NoZW1hOiBmYWxzZSwKICAgICAgICBzY2hlbWFDb2RlOiBmYWxzZSwKICAgICAgICBzY2hlbWFWYWx1ZTogZmFsc2UsCiAgICAgICAgcGFyYW1zOiB7fSwKICAgICAgICBpdAogICAgICB9OwogICAgICAoMCwgZXJyb3JzXzEucmVwb3J0RXJyb3IpKGN4dCwgYm9vbEVycm9yLCB2b2lkIDAsIG92ZXJyaWRlQWxsRXJyb3JzKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvcnVsZXMuanMKdmFyIHJlcXVpcmVfcnVsZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvcnVsZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmdldFJ1bGVzID0gZXhwb3J0czIuaXNKU09OVHlwZSA9IHZvaWQgMDsKICAgIHZhciBfanNvblR5cGVzID0gWyJzdHJpbmciLCAibnVtYmVyIiwgImludGVnZXIiLCAiYm9vbGVhbiIsICJudWxsIiwgIm9iamVjdCIsICJhcnJheSJdOwogICAgdmFyIGpzb25UeXBlcyA9IG5ldyBTZXQoX2pzb25UeXBlcyk7CiAgICBmdW5jdGlvbiBpc0pTT05UeXBlKHgpIHsKICAgICAgcmV0dXJuIHR5cGVvZiB4ID09ICJzdHJpbmciICYmIGpzb25UeXBlcy5oYXMoeCk7CiAgICB9CiAgICBleHBvcnRzMi5pc0pTT05UeXBlID0gaXNKU09OVHlwZTsKICAgIGZ1bmN0aW9uIGdldFJ1bGVzKCkgewogICAgICBjb25zdCBncm91cHMgPSB7CiAgICAgICAgbnVtYmVyOiB7IHR5cGU6ICJudW1iZXIiLCBydWxlczogW10gfSwKICAgICAgICBzdHJpbmc6IHsgdHlwZTogInN0cmluZyIsIHJ1bGVzOiBbXSB9LAogICAgICAgIGFycmF5OiB7IHR5cGU6ICJhcnJheSIsIHJ1bGVzOiBbXSB9LAogICAgICAgIG9iamVjdDogeyB0eXBlOiAib2JqZWN0IiwgcnVsZXM6IFtdIH0KICAgICAgfTsKICAgICAgcmV0dXJuIHsKICAgICAgICB0eXBlczogeyAuLi5ncm91cHMsIGludGVnZXI6IHRydWUsIGJvb2xlYW46IHRydWUsIG51bGw6IHRydWUgfSwKICAgICAgICBydWxlczogW3sgcnVsZXM6IFtdIH0sIGdyb3Vwcy5udW1iZXIsIGdyb3Vwcy5zdHJpbmcsIGdyb3Vwcy5hcnJheSwgZ3JvdXBzLm9iamVjdF0sCiAgICAgICAgcG9zdDogeyBydWxlczogW10gfSwKICAgICAgICBhbGw6IHt9LAogICAgICAgIGtleXdvcmRzOiB7fQogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuZ2V0UnVsZXMgPSBnZXRSdWxlczsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvYXBwbGljYWJpbGl0eS5qcwp2YXIgcmVxdWlyZV9hcHBsaWNhYmlsaXR5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3ZhbGlkYXRlL2FwcGxpY2FiaWxpdHkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNob3VsZFVzZVJ1bGUgPSBleHBvcnRzMi5zaG91bGRVc2VHcm91cCA9IGV4cG9ydHMyLnNjaGVtYUhhc1J1bGVzRm9yVHlwZSA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIHNjaGVtYUhhc1J1bGVzRm9yVHlwZSh7IHNjaGVtYSwgc2VsZjogc2VsZjIgfSwgdHlwZSkgewogICAgICBjb25zdCBncm91cCA9IHNlbGYyLlJVTEVTLnR5cGVzW3R5cGVdOwogICAgICByZXR1cm4gZ3JvdXAgJiYgZ3JvdXAgIT09IHRydWUgJiYgc2hvdWxkVXNlR3JvdXAoc2NoZW1hLCBncm91cCk7CiAgICB9CiAgICBleHBvcnRzMi5zY2hlbWFIYXNSdWxlc0ZvclR5cGUgPSBzY2hlbWFIYXNSdWxlc0ZvclR5cGU7CiAgICBmdW5jdGlvbiBzaG91bGRVc2VHcm91cChzY2hlbWEsIGdyb3VwKSB7CiAgICAgIHJldHVybiBncm91cC5ydWxlcy5zb21lKChydWxlKSA9PiBzaG91bGRVc2VSdWxlKHNjaGVtYSwgcnVsZSkpOwogICAgfQogICAgZXhwb3J0czIuc2hvdWxkVXNlR3JvdXAgPSBzaG91bGRVc2VHcm91cDsKICAgIGZ1bmN0aW9uIHNob3VsZFVzZVJ1bGUoc2NoZW1hLCBydWxlKSB7CiAgICAgIHZhciBfYTsKICAgICAgcmV0dXJuIHNjaGVtYVtydWxlLmtleXdvcmRdICE9PSB2b2lkIDAgfHwgKChfYSA9IHJ1bGUuZGVmaW5pdGlvbi5pbXBsZW1lbnRzKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2Euc29tZSgoa3dkKSA9PiBzY2hlbWFba3dkXSAhPT0gdm9pZCAwKSk7CiAgICB9CiAgICBleHBvcnRzMi5zaG91bGRVc2VSdWxlID0gc2hvdWxkVXNlUnVsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvZGF0YVR5cGUuanMKdmFyIHJlcXVpcmVfZGF0YVR5cGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvZGF0YVR5cGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJlcG9ydFR5cGVFcnJvciA9IGV4cG9ydHMyLmNoZWNrRGF0YVR5cGVzID0gZXhwb3J0czIuY2hlY2tEYXRhVHlwZSA9IGV4cG9ydHMyLmNvZXJjZUFuZENoZWNrRGF0YVR5cGUgPSBleHBvcnRzMi5nZXRKU09OVHlwZXMgPSBleHBvcnRzMi5nZXRTY2hlbWFUeXBlcyA9IGV4cG9ydHMyLkRhdGFUeXBlID0gdm9pZCAwOwogICAgdmFyIHJ1bGVzXzEgPSByZXF1aXJlX3J1bGVzKCk7CiAgICB2YXIgYXBwbGljYWJpbGl0eV8xID0gcmVxdWlyZV9hcHBsaWNhYmlsaXR5KCk7CiAgICB2YXIgZXJyb3JzXzEgPSByZXF1aXJlX2Vycm9ycygpOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIERhdGFUeXBlOwogICAgKGZ1bmN0aW9uKERhdGFUeXBlMikgewogICAgICBEYXRhVHlwZTJbRGF0YVR5cGUyWyJDb3JyZWN0Il0gPSAwXSA9ICJDb3JyZWN0IjsKICAgICAgRGF0YVR5cGUyW0RhdGFUeXBlMlsiV3JvbmciXSA9IDFdID0gIldyb25nIjsKICAgIH0pKERhdGFUeXBlIHx8IChleHBvcnRzMi5EYXRhVHlwZSA9IERhdGFUeXBlID0ge30pKTsKICAgIGZ1bmN0aW9uIGdldFNjaGVtYVR5cGVzKHNjaGVtYSkgewogICAgICBjb25zdCB0eXBlcyA9IGdldEpTT05UeXBlcyhzY2hlbWEudHlwZSk7CiAgICAgIGNvbnN0IGhhc051bGwgPSB0eXBlcy5pbmNsdWRlcygibnVsbCIpOwogICAgICBpZiAoaGFzTnVsbCkgewogICAgICAgIGlmIChzY2hlbWEubnVsbGFibGUgPT09IGZhbHNlKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJ0eXBlOiBudWxsIGNvbnRyYWRpY3RzIG51bGxhYmxlOiBmYWxzZSIpOwogICAgICB9IGVsc2UgewogICAgICAgIGlmICghdHlwZXMubGVuZ3RoICYmIHNjaGVtYS5udWxsYWJsZSAhPT0gdm9pZCAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJyJudWxsYWJsZSIgY2Fubm90IGJlIHVzZWQgd2l0aG91dCAidHlwZSInKTsKICAgICAgICB9CiAgICAgICAgaWYgKHNjaGVtYS5udWxsYWJsZSA9PT0gdHJ1ZSkKICAgICAgICAgIHR5cGVzLnB1c2goIm51bGwiKTsKICAgICAgfQogICAgICByZXR1cm4gdHlwZXM7CiAgICB9CiAgICBleHBvcnRzMi5nZXRTY2hlbWFUeXBlcyA9IGdldFNjaGVtYVR5cGVzOwogICAgZnVuY3Rpb24gZ2V0SlNPTlR5cGVzKHRzKSB7CiAgICAgIGNvbnN0IHR5cGVzID0gQXJyYXkuaXNBcnJheSh0cykgPyB0cyA6IHRzID8gW3RzXSA6IFtdOwogICAgICBpZiAodHlwZXMuZXZlcnkocnVsZXNfMS5pc0pTT05UeXBlKSkKICAgICAgICByZXR1cm4gdHlwZXM7CiAgICAgIHRocm93IG5ldyBFcnJvcigidHlwZSBtdXN0IGJlIEpTT05UeXBlIG9yIEpTT05UeXBlW106ICIgKyB0eXBlcy5qb2luKCIsIikpOwogICAgfQogICAgZXhwb3J0czIuZ2V0SlNPTlR5cGVzID0gZ2V0SlNPTlR5cGVzOwogICAgZnVuY3Rpb24gY29lcmNlQW5kQ2hlY2tEYXRhVHlwZShpdCwgdHlwZXMpIHsKICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIG9wdHMgfSA9IGl0OwogICAgICBjb25zdCBjb2VyY2VUbyA9IGNvZXJjZVRvVHlwZXModHlwZXMsIG9wdHMuY29lcmNlVHlwZXMpOwogICAgICBjb25zdCBjaGVja1R5cGVzID0gdHlwZXMubGVuZ3RoID4gMCAmJiAhKGNvZXJjZVRvLmxlbmd0aCA9PT0gMCAmJiB0eXBlcy5sZW5ndGggPT09IDEgJiYgKDAsIGFwcGxpY2FiaWxpdHlfMS5zY2hlbWFIYXNSdWxlc0ZvclR5cGUpKGl0LCB0eXBlc1swXSkpOwogICAgICBpZiAoY2hlY2tUeXBlcykgewogICAgICAgIGNvbnN0IHdyb25nVHlwZSA9IGNoZWNrRGF0YVR5cGVzKHR5cGVzLCBkYXRhLCBvcHRzLnN0cmljdE51bWJlcnMsIERhdGFUeXBlLldyb25nKTsKICAgICAgICBnZW4uaWYod3JvbmdUeXBlLCAoKSA9PiB7CiAgICAgICAgICBpZiAoY29lcmNlVG8ubGVuZ3RoKQogICAgICAgICAgICBjb2VyY2VEYXRhKGl0LCB0eXBlcywgY29lcmNlVG8pOwogICAgICAgICAgZWxzZQogICAgICAgICAgICByZXBvcnRUeXBlRXJyb3IoaXQpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIHJldHVybiBjaGVja1R5cGVzOwogICAgfQogICAgZXhwb3J0czIuY29lcmNlQW5kQ2hlY2tEYXRhVHlwZSA9IGNvZXJjZUFuZENoZWNrRGF0YVR5cGU7CiAgICB2YXIgQ09FUkNJQkxFID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWyJzdHJpbmciLCAibnVtYmVyIiwgImludGVnZXIiLCAiYm9vbGVhbiIsICJudWxsIl0pOwogICAgZnVuY3Rpb24gY29lcmNlVG9UeXBlcyh0eXBlcywgY29lcmNlVHlwZXMpIHsKICAgICAgcmV0dXJuIGNvZXJjZVR5cGVzID8gdHlwZXMuZmlsdGVyKCh0KSA9PiBDT0VSQ0lCTEUuaGFzKHQpIHx8IGNvZXJjZVR5cGVzID09PSAiYXJyYXkiICYmIHQgPT09ICJhcnJheSIpIDogW107CiAgICB9CiAgICBmdW5jdGlvbiBjb2VyY2VEYXRhKGl0LCB0eXBlcywgY29lcmNlVG8pIHsKICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIG9wdHMgfSA9IGl0OwogICAgICBjb25zdCBkYXRhVHlwZSA9IGdlbi5sZXQoImRhdGFUeXBlIiwgKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfWApOwogICAgICBjb25zdCBjb2VyY2VkID0gZ2VuLmxldCgiY29lcmNlZCIsICgwLCBjb2RlZ2VuXzEuXylgdW5kZWZpbmVkYCk7CiAgICAgIGlmIChvcHRzLmNvZXJjZVR5cGVzID09PSAiYXJyYXkiKSB7CiAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhVHlwZX0gPT0gJ29iamVjdCcgJiYgQXJyYXkuaXNBcnJheSgke2RhdGF9KSAmJiAke2RhdGF9Lmxlbmd0aCA9PSAxYCwgKCkgPT4gZ2VuLmFzc2lnbihkYXRhLCAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX1bMF1gKS5hc3NpZ24oZGF0YVR5cGUsICgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7ZGF0YX1gKS5pZihjaGVja0RhdGFUeXBlcyh0eXBlcywgZGF0YSwgb3B0cy5zdHJpY3ROdW1iZXJzKSwgKCkgPT4gZ2VuLmFzc2lnbihjb2VyY2VkLCBkYXRhKSkpOwogICAgICB9CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7Y29lcmNlZH0gIT09IHVuZGVmaW5lZGApOwogICAgICBmb3IgKGNvbnN0IHQgb2YgY29lcmNlVG8pIHsKICAgICAgICBpZiAoQ09FUkNJQkxFLmhhcyh0KSB8fCB0ID09PSAiYXJyYXkiICYmIG9wdHMuY29lcmNlVHlwZXMgPT09ICJhcnJheSIpIHsKICAgICAgICAgIGNvZXJjZVNwZWNpZmljVHlwZSh0KTsKICAgICAgICB9CiAgICAgIH0KICAgICAgZ2VuLmVsc2UoKTsKICAgICAgcmVwb3J0VHlwZUVycm9yKGl0KTsKICAgICAgZ2VuLmVuZElmKCk7CiAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7Y29lcmNlZH0gIT09IHVuZGVmaW5lZGAsICgpID0+IHsKICAgICAgICBnZW4uYXNzaWduKGRhdGEsIGNvZXJjZWQpOwogICAgICAgIGFzc2lnblBhcmVudERhdGEoaXQsIGNvZXJjZWQpOwogICAgICB9KTsKICAgICAgZnVuY3Rpb24gY29lcmNlU3BlY2lmaWNUeXBlKHQpIHsKICAgICAgICBzd2l0Y2ggKHQpIHsKICAgICAgICAgIGNhc2UgInN0cmluZyI6CiAgICAgICAgICAgIGdlbi5lbHNlSWYoKDAsIGNvZGVnZW5fMS5fKWAke2RhdGFUeXBlfSA9PSAibnVtYmVyIiB8fCAke2RhdGFUeXBlfSA9PSAiYm9vbGVhbiJgKS5hc3NpZ24oY29lcmNlZCwgKDAsIGNvZGVnZW5fMS5fKWAiIiArICR7ZGF0YX1gKS5lbHNlSWYoKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9ID09PSBudWxsYCkuYXNzaWduKGNvZXJjZWQsICgwLCBjb2RlZ2VuXzEuXylgIiJgKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgY2FzZSAibnVtYmVyIjoKICAgICAgICAgICAgZ2VuLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YVR5cGV9ID09ICJib29sZWFuIiB8fCAke2RhdGF9ID09PSBudWxsCiAgICAgICAgICAgICAgfHwgKCR7ZGF0YVR5cGV9ID09ICJzdHJpbmciICYmICR7ZGF0YX0gJiYgJHtkYXRhfSA9PSArJHtkYXRhfSlgKS5hc3NpZ24oY29lcmNlZCwgKDAsIGNvZGVnZW5fMS5fKWArJHtkYXRhfWApOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICBjYXNlICJpbnRlZ2VyIjoKICAgICAgICAgICAgZ2VuLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YVR5cGV9ID09PSAiYm9vbGVhbiIgfHwgJHtkYXRhfSA9PT0gbnVsbAogICAgICAgICAgICAgIHx8ICgke2RhdGFUeXBlfSA9PT0gInN0cmluZyIgJiYgJHtkYXRhfSAmJiAke2RhdGF9ID09ICske2RhdGF9ICYmICEoJHtkYXRhfSAlIDEpKWApLmFzc2lnbihjb2VyY2VkLCAoMCwgY29kZWdlbl8xLl8pYCske2RhdGF9YCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIGNhc2UgImJvb2xlYW4iOgogICAgICAgICAgICBnZW4uZWxzZUlmKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSA9PT0gImZhbHNlIiB8fCAke2RhdGF9ID09PSAwIHx8ICR7ZGF0YX0gPT09IG51bGxgKS5hc3NpZ24oY29lcmNlZCwgZmFsc2UpLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0gPT09ICJ0cnVlIiB8fCAke2RhdGF9ID09PSAxYCkuYXNzaWduKGNvZXJjZWQsIHRydWUpOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICBjYXNlICJudWxsIjoKICAgICAgICAgICAgZ2VuLmVsc2VJZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0gPT09ICIiIHx8ICR7ZGF0YX0gPT09IDAgfHwgJHtkYXRhfSA9PT0gZmFsc2VgKTsKICAgICAgICAgICAgZ2VuLmFzc2lnbihjb2VyY2VkLCBudWxsKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgY2FzZSAiYXJyYXkiOgogICAgICAgICAgICBnZW4uZWxzZUlmKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhVHlwZX0gPT09ICJzdHJpbmciIHx8ICR7ZGF0YVR5cGV9ID09PSAibnVtYmVyIgogICAgICAgICAgICAgIHx8ICR7ZGF0YVR5cGV9ID09PSAiYm9vbGVhbiIgfHwgJHtkYXRhfSA9PT0gbnVsbGApLmFzc2lnbihjb2VyY2VkLCAoMCwgY29kZWdlbl8xLl8pYFske2RhdGF9XWApOwogICAgICAgIH0KICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gYXNzaWduUGFyZW50RGF0YSh7IGdlbiwgcGFyZW50RGF0YSwgcGFyZW50RGF0YVByb3BlcnR5IH0sIGV4cHIpIHsKICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtwYXJlbnREYXRhfSAhPT0gdW5kZWZpbmVkYCwgKCkgPT4gZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7cGFyZW50RGF0YX1bJHtwYXJlbnREYXRhUHJvcGVydHl9XWAsIGV4cHIpKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrRGF0YVR5cGUoZGF0YVR5cGUsIGRhdGEsIHN0cmljdE51bXMsIGNvcnJlY3QgPSBEYXRhVHlwZS5Db3JyZWN0KSB7CiAgICAgIGNvbnN0IEVRID0gY29ycmVjdCA9PT0gRGF0YVR5cGUuQ29ycmVjdCA/IGNvZGVnZW5fMS5vcGVyYXRvcnMuRVEgOiBjb2RlZ2VuXzEub3BlcmF0b3JzLk5FUTsKICAgICAgbGV0IGNvbmQ7CiAgICAgIHN3aXRjaCAoZGF0YVR5cGUpIHsKICAgICAgICBjYXNlICJudWxsIjoKICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0gJHtFUX0gbnVsbGA7CiAgICAgICAgY2FzZSAiYXJyYXkiOgogICAgICAgICAgY29uZCA9ICgwLCBjb2RlZ2VuXzEuXylgQXJyYXkuaXNBcnJheSgke2RhdGF9KWA7CiAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICJvYmplY3QiOgogICAgICAgICAgY29uZCA9ICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSAmJiB0eXBlb2YgJHtkYXRhfSA9PSAib2JqZWN0IiAmJiAhQXJyYXkuaXNBcnJheSgke2RhdGF9KWA7CiAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICJpbnRlZ2VyIjoKICAgICAgICAgIGNvbmQgPSBudW1Db25kKCgwLCBjb2RlZ2VuXzEuXylgISgke2RhdGF9ICUgMSkgJiYgIWlzTmFOKCR7ZGF0YX0pYCk7CiAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICJudW1iZXIiOgogICAgICAgICAgY29uZCA9IG51bUNvbmQoKTsKICAgICAgICAgIGJyZWFrOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfSAke0VRfSAke2RhdGFUeXBlfWA7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvcnJlY3QgPT09IERhdGFUeXBlLkNvcnJlY3QgPyBjb25kIDogKDAsIGNvZGVnZW5fMS5ub3QpKGNvbmQpOwogICAgICBmdW5jdGlvbiBudW1Db25kKF9jb25kID0gY29kZWdlbl8xLm5pbCkgewogICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLmFuZCkoKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfSA9PSAibnVtYmVyImAsIF9jb25kLCBzdHJpY3ROdW1zID8gKDAsIGNvZGVnZW5fMS5fKWBpc0Zpbml0ZSgke2RhdGF9KWAgOiBjb2RlZ2VuXzEubmlsKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuY2hlY2tEYXRhVHlwZSA9IGNoZWNrRGF0YVR5cGU7CiAgICBmdW5jdGlvbiBjaGVja0RhdGFUeXBlcyhkYXRhVHlwZXMsIGRhdGEsIHN0cmljdE51bXMsIGNvcnJlY3QpIHsKICAgICAgaWYgKGRhdGFUeXBlcy5sZW5ndGggPT09IDEpIHsKICAgICAgICByZXR1cm4gY2hlY2tEYXRhVHlwZShkYXRhVHlwZXNbMF0sIGRhdGEsIHN0cmljdE51bXMsIGNvcnJlY3QpOwogICAgICB9CiAgICAgIGxldCBjb25kOwogICAgICBjb25zdCB0eXBlcyA9ICgwLCB1dGlsXzEudG9IYXNoKShkYXRhVHlwZXMpOwogICAgICBpZiAodHlwZXMuYXJyYXkgJiYgdHlwZXMub2JqZWN0KSB7CiAgICAgICAgY29uc3Qgbm90T2JqID0gKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtkYXRhfSAhPSAib2JqZWN0ImA7CiAgICAgICAgY29uZCA9IHR5cGVzLm51bGwgPyBub3RPYmogOiAoMCwgY29kZWdlbl8xLl8pYCEke2RhdGF9IHx8ICR7bm90T2JqfWA7CiAgICAgICAgZGVsZXRlIHR5cGVzLm51bGw7CiAgICAgICAgZGVsZXRlIHR5cGVzLmFycmF5OwogICAgICAgIGRlbGV0ZSB0eXBlcy5vYmplY3Q7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgY29uZCA9IGNvZGVnZW5fMS5uaWw7CiAgICAgIH0KICAgICAgaWYgKHR5cGVzLm51bWJlcikKICAgICAgICBkZWxldGUgdHlwZXMuaW50ZWdlcjsKICAgICAgZm9yIChjb25zdCB0IGluIHR5cGVzKQogICAgICAgIGNvbmQgPSAoMCwgY29kZWdlbl8xLmFuZCkoY29uZCwgY2hlY2tEYXRhVHlwZSh0LCBkYXRhLCBzdHJpY3ROdW1zLCBjb3JyZWN0KSk7CiAgICAgIHJldHVybiBjb25kOwogICAgfQogICAgZXhwb3J0czIuY2hlY2tEYXRhVHlwZXMgPSBjaGVja0RhdGFUeXBlczsKICAgIHZhciB0eXBlRXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHNjaGVtYSB9KSA9PiBgbXVzdCBiZSAke3NjaGVtYX1gLAogICAgICBwYXJhbXM6ICh7IHNjaGVtYSwgc2NoZW1hVmFsdWUgfSkgPT4gdHlwZW9mIHNjaGVtYSA9PSAic3RyaW5nIiA/ICgwLCBjb2RlZ2VuXzEuXylge3R5cGU6ICR7c2NoZW1hfX1gIDogKDAsIGNvZGVnZW5fMS5fKWB7dHlwZTogJHtzY2hlbWFWYWx1ZX19YAogICAgfTsKICAgIGZ1bmN0aW9uIHJlcG9ydFR5cGVFcnJvcihpdCkgewogICAgICBjb25zdCBjeHQgPSBnZXRUeXBlRXJyb3JDb250ZXh0KGl0KTsKICAgICAgKDAsIGVycm9yc18xLnJlcG9ydEVycm9yKShjeHQsIHR5cGVFcnJvcik7CiAgICB9CiAgICBleHBvcnRzMi5yZXBvcnRUeXBlRXJyb3IgPSByZXBvcnRUeXBlRXJyb3I7CiAgICBmdW5jdGlvbiBnZXRUeXBlRXJyb3JDb250ZXh0KGl0KSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCBzY2hlbWEgfSA9IGl0OwogICAgICBjb25zdCBzY2hlbWFDb2RlID0gKDAsIHV0aWxfMS5zY2hlbWFSZWZPclZhbCkoaXQsIHNjaGVtYSwgInR5cGUiKTsKICAgICAgcmV0dXJuIHsKICAgICAgICBnZW4sCiAgICAgICAga2V5d29yZDogInR5cGUiLAogICAgICAgIGRhdGEsCiAgICAgICAgc2NoZW1hOiBzY2hlbWEudHlwZSwKICAgICAgICBzY2hlbWFDb2RlLAogICAgICAgIHNjaGVtYVZhbHVlOiBzY2hlbWFDb2RlLAogICAgICAgIHBhcmVudFNjaGVtYTogc2NoZW1hLAogICAgICAgIHBhcmFtczoge30sCiAgICAgICAgaXQKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvZGVmYXVsdHMuanMKdmFyIHJlcXVpcmVfZGVmYXVsdHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvZGVmYXVsdHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmFzc2lnbkRlZmF1bHRzID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgZnVuY3Rpb24gYXNzaWduRGVmYXVsdHMoaXQsIHR5KSB7CiAgICAgIGNvbnN0IHsgcHJvcGVydGllcywgaXRlbXMgfSA9IGl0LnNjaGVtYTsKICAgICAgaWYgKHR5ID09PSAib2JqZWN0IiAmJiBwcm9wZXJ0aWVzKSB7CiAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gcHJvcGVydGllcykgewogICAgICAgICAgYXNzaWduRGVmYXVsdChpdCwga2V5LCBwcm9wZXJ0aWVzW2tleV0uZGVmYXVsdCk7CiAgICAgICAgfQogICAgICB9IGVsc2UgaWYgKHR5ID09PSAiYXJyYXkiICYmIEFycmF5LmlzQXJyYXkoaXRlbXMpKSB7CiAgICAgICAgaXRlbXMuZm9yRWFjaCgoc2NoLCBpKSA9PiBhc3NpZ25EZWZhdWx0KGl0LCBpLCBzY2guZGVmYXVsdCkpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5hc3NpZ25EZWZhdWx0cyA9IGFzc2lnbkRlZmF1bHRzOwogICAgZnVuY3Rpb24gYXNzaWduRGVmYXVsdChpdCwgcHJvcCwgZGVmYXVsdFZhbHVlKSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBjb21wb3NpdGVSdWxlLCBkYXRhLCBvcHRzIH0gPSBpdDsKICAgICAgaWYgKGRlZmF1bHRWYWx1ZSA9PT0gdm9pZCAwKQogICAgICAgIHJldHVybjsKICAgICAgY29uc3QgY2hpbGREYXRhID0gKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShwcm9wKX1gOwogICAgICBpZiAoY29tcG9zaXRlUnVsZSkgewogICAgICAgICgwLCB1dGlsXzEuY2hlY2tTdHJpY3RNb2RlKShpdCwgYGRlZmF1bHQgaXMgaWdub3JlZCBmb3I6ICR7Y2hpbGREYXRhfWApOwogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICBsZXQgY29uZGl0aW9uID0gKDAsIGNvZGVnZW5fMS5fKWAke2NoaWxkRGF0YX0gPT09IHVuZGVmaW5lZGA7CiAgICAgIGlmIChvcHRzLnVzZURlZmF1bHRzID09PSAiZW1wdHkiKSB7CiAgICAgICAgY29uZGl0aW9uID0gKDAsIGNvZGVnZW5fMS5fKWAke2NvbmRpdGlvbn0gfHwgJHtjaGlsZERhdGF9ID09PSBudWxsIHx8ICR7Y2hpbGREYXRhfSA9PT0gIiJgOwogICAgICB9CiAgICAgIGdlbi5pZihjb25kaXRpb24sICgwLCBjb2RlZ2VuXzEuXylgJHtjaGlsZERhdGF9ID0gJHsoMCwgY29kZWdlbl8xLnN0cmluZ2lmeSkoZGVmYXVsdFZhbHVlKX1gKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9jb2RlLmpzCnZhciByZXF1aXJlX2NvZGUyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvY29kZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudmFsaWRhdGVVbmlvbiA9IGV4cG9ydHMyLnZhbGlkYXRlQXJyYXkgPSBleHBvcnRzMi51c2VQYXR0ZXJuID0gZXhwb3J0czIuY2FsbFZhbGlkYXRlQ29kZSA9IGV4cG9ydHMyLnNjaGVtYVByb3BlcnRpZXMgPSBleHBvcnRzMi5hbGxTY2hlbWFQcm9wZXJ0aWVzID0gZXhwb3J0czIubm9Qcm9wZXJ0eUluRGF0YSA9IGV4cG9ydHMyLnByb3BlcnR5SW5EYXRhID0gZXhwb3J0czIuaXNPd25Qcm9wZXJ0eSA9IGV4cG9ydHMyLmhhc1Byb3BGdW5jID0gZXhwb3J0czIucmVwb3J0TWlzc2luZ1Byb3AgPSBleHBvcnRzMi5jaGVja01pc3NpbmdQcm9wID0gZXhwb3J0czIuY2hlY2tSZXBvcnRNaXNzaW5nUHJvcCA9IHZvaWQgMDsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBuYW1lc18xID0gcmVxdWlyZV9uYW1lcygpOwogICAgdmFyIHV0aWxfMiA9IHJlcXVpcmVfdXRpbCgpOwogICAgZnVuY3Rpb24gY2hlY2tSZXBvcnRNaXNzaW5nUHJvcChjeHQsIHByb3ApIHsKICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIGl0IH0gPSBjeHQ7CiAgICAgIGdlbi5pZihub1Byb3BlcnR5SW5EYXRhKGdlbiwgZGF0YSwgcHJvcCwgaXQub3B0cy5vd25Qcm9wZXJ0aWVzKSwgKCkgPT4gewogICAgICAgIGN4dC5zZXRQYXJhbXMoeyBtaXNzaW5nUHJvcGVydHk6ICgwLCBjb2RlZ2VuXzEuXylgJHtwcm9wfWAgfSwgdHJ1ZSk7CiAgICAgICAgY3h0LmVycm9yKCk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuY2hlY2tSZXBvcnRNaXNzaW5nUHJvcCA9IGNoZWNrUmVwb3J0TWlzc2luZ1Byb3A7CiAgICBmdW5jdGlvbiBjaGVja01pc3NpbmdQcm9wKHsgZ2VuLCBkYXRhLCBpdDogeyBvcHRzIH0gfSwgcHJvcGVydGllcywgbWlzc2luZykgewogICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5vcikoLi4ucHJvcGVydGllcy5tYXAoKHByb3ApID0+ICgwLCBjb2RlZ2VuXzEuYW5kKShub1Byb3BlcnR5SW5EYXRhKGdlbiwgZGF0YSwgcHJvcCwgb3B0cy5vd25Qcm9wZXJ0aWVzKSwgKDAsIGNvZGVnZW5fMS5fKWAke21pc3Npbmd9ID0gJHtwcm9wfWApKSk7CiAgICB9CiAgICBleHBvcnRzMi5jaGVja01pc3NpbmdQcm9wID0gY2hlY2tNaXNzaW5nUHJvcDsKICAgIGZ1bmN0aW9uIHJlcG9ydE1pc3NpbmdQcm9wKGN4dCwgbWlzc2luZykgewogICAgICBjeHQuc2V0UGFyYW1zKHsgbWlzc2luZ1Byb3BlcnR5OiBtaXNzaW5nIH0sIHRydWUpOwogICAgICBjeHQuZXJyb3IoKTsKICAgIH0KICAgIGV4cG9ydHMyLnJlcG9ydE1pc3NpbmdQcm9wID0gcmVwb3J0TWlzc2luZ1Byb3A7CiAgICBmdW5jdGlvbiBoYXNQcm9wRnVuYyhnZW4pIHsKICAgICAgcmV0dXJuIGdlbi5zY29wZVZhbHVlKCJmdW5jIiwgewogICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvdW5ib3VuZC1tZXRob2QKICAgICAgICByZWY6IE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHksCiAgICAgICAgY29kZTogKDAsIGNvZGVnZW5fMS5fKWBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5YAogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmhhc1Byb3BGdW5jID0gaGFzUHJvcEZ1bmM7CiAgICBmdW5jdGlvbiBpc093blByb3BlcnR5KGdlbiwgZGF0YSwgcHJvcGVydHkpIHsKICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylgJHtoYXNQcm9wRnVuYyhnZW4pfS5jYWxsKCR7ZGF0YX0sICR7cHJvcGVydHl9KWA7CiAgICB9CiAgICBleHBvcnRzMi5pc093blByb3BlcnR5ID0gaXNPd25Qcm9wZXJ0eTsKICAgIGZ1bmN0aW9uIHByb3BlcnR5SW5EYXRhKGdlbiwgZGF0YSwgcHJvcGVydHksIG93blByb3BlcnRpZXMpIHsKICAgICAgY29uc3QgY29uZCA9ICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkocHJvcGVydHkpfSAhPT0gdW5kZWZpbmVkYDsKICAgICAgcmV0dXJuIG93blByb3BlcnRpZXMgPyAoMCwgY29kZWdlbl8xLl8pYCR7Y29uZH0gJiYgJHtpc093blByb3BlcnR5KGdlbiwgZGF0YSwgcHJvcGVydHkpfWAgOiBjb25kOwogICAgfQogICAgZXhwb3J0czIucHJvcGVydHlJbkRhdGEgPSBwcm9wZXJ0eUluRGF0YTsKICAgIGZ1bmN0aW9uIG5vUHJvcGVydHlJbkRhdGEoZ2VuLCBkYXRhLCBwcm9wZXJ0eSwgb3duUHJvcGVydGllcykgewogICAgICBjb25zdCBjb25kID0gKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShwcm9wZXJ0eSl9ID09PSB1bmRlZmluZWRgOwogICAgICByZXR1cm4gb3duUHJvcGVydGllcyA/ICgwLCBjb2RlZ2VuXzEub3IpKGNvbmQsICgwLCBjb2RlZ2VuXzEubm90KShpc093blByb3BlcnR5KGdlbiwgZGF0YSwgcHJvcGVydHkpKSkgOiBjb25kOwogICAgfQogICAgZXhwb3J0czIubm9Qcm9wZXJ0eUluRGF0YSA9IG5vUHJvcGVydHlJbkRhdGE7CiAgICBmdW5jdGlvbiBhbGxTY2hlbWFQcm9wZXJ0aWVzKHNjaGVtYU1hcCkgewogICAgICByZXR1cm4gc2NoZW1hTWFwID8gT2JqZWN0LmtleXMoc2NoZW1hTWFwKS5maWx0ZXIoKHApID0+IHAgIT09ICJfX3Byb3RvX18iKSA6IFtdOwogICAgfQogICAgZXhwb3J0czIuYWxsU2NoZW1hUHJvcGVydGllcyA9IGFsbFNjaGVtYVByb3BlcnRpZXM7CiAgICBmdW5jdGlvbiBzY2hlbWFQcm9wZXJ0aWVzKGl0LCBzY2hlbWFNYXApIHsKICAgICAgcmV0dXJuIGFsbFNjaGVtYVByb3BlcnRpZXMoc2NoZW1hTWFwKS5maWx0ZXIoKHApID0+ICEoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hTWFwW3BdKSk7CiAgICB9CiAgICBleHBvcnRzMi5zY2hlbWFQcm9wZXJ0aWVzID0gc2NoZW1hUHJvcGVydGllczsKICAgIGZ1bmN0aW9uIGNhbGxWYWxpZGF0ZUNvZGUoeyBzY2hlbWFDb2RlLCBkYXRhLCBpdDogeyBnZW4sIHRvcFNjaGVtYVJlZiwgc2NoZW1hUGF0aCwgZXJyb3JQYXRoIH0sIGl0IH0sIGZ1bmMsIGNvbnRleHQsIHBhc3NTY2hlbWEpIHsKICAgICAgY29uc3QgZGF0YUFuZFNjaGVtYSA9IHBhc3NTY2hlbWEgPyAoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hQ29kZX0sICR7ZGF0YX0sICR7dG9wU2NoZW1hUmVmfSR7c2NoZW1hUGF0aH1gIDogZGF0YTsKICAgICAgY29uc3QgdmFsQ3h0ID0gWwogICAgICAgIFtuYW1lc18xLmRlZmF1bHQuaW5zdGFuY2VQYXRoLCAoMCwgY29kZWdlbl8xLnN0ckNvbmNhdCkobmFtZXNfMS5kZWZhdWx0Lmluc3RhbmNlUGF0aCwgZXJyb3JQYXRoKV0sCiAgICAgICAgW25hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhLCBpdC5wYXJlbnREYXRhXSwKICAgICAgICBbbmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGFQcm9wZXJ0eSwgaXQucGFyZW50RGF0YVByb3BlcnR5XSwKICAgICAgICBbbmFtZXNfMS5kZWZhdWx0LnJvb3REYXRhLCBuYW1lc18xLmRlZmF1bHQucm9vdERhdGFdCiAgICAgIF07CiAgICAgIGlmIChpdC5vcHRzLmR5bmFtaWNSZWYpCiAgICAgICAgdmFsQ3h0LnB1c2goW25hbWVzXzEuZGVmYXVsdC5keW5hbWljQW5jaG9ycywgbmFtZXNfMS5kZWZhdWx0LmR5bmFtaWNBbmNob3JzXSk7CiAgICAgIGNvbnN0IGFyZ3MgPSAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YUFuZFNjaGVtYX0sICR7Z2VuLm9iamVjdCguLi52YWxDeHQpfWA7CiAgICAgIHJldHVybiBjb250ZXh0ICE9PSBjb2RlZ2VuXzEubmlsID8gKDAsIGNvZGVnZW5fMS5fKWAke2Z1bmN9LmNhbGwoJHtjb250ZXh0fSwgJHthcmdzfSlgIDogKDAsIGNvZGVnZW5fMS5fKWAke2Z1bmN9KCR7YXJnc30pYDsKICAgIH0KICAgIGV4cG9ydHMyLmNhbGxWYWxpZGF0ZUNvZGUgPSBjYWxsVmFsaWRhdGVDb2RlOwogICAgdmFyIG5ld1JlZ0V4cCA9ICgwLCBjb2RlZ2VuXzEuXylgbmV3IFJlZ0V4cGA7CiAgICBmdW5jdGlvbiB1c2VQYXR0ZXJuKHsgZ2VuLCBpdDogeyBvcHRzIH0gfSwgcGF0dGVybikgewogICAgICBjb25zdCB1ID0gb3B0cy51bmljb2RlUmVnRXhwID8gInUiIDogIiI7CiAgICAgIGNvbnN0IHsgcmVnRXhwIH0gPSBvcHRzLmNvZGU7CiAgICAgIGNvbnN0IHJ4ID0gcmVnRXhwKHBhdHRlcm4sIHUpOwogICAgICByZXR1cm4gZ2VuLnNjb3BlVmFsdWUoInBhdHRlcm4iLCB7CiAgICAgICAga2V5OiByeC50b1N0cmluZygpLAogICAgICAgIHJlZjogcngsCiAgICAgICAgY29kZTogKDAsIGNvZGVnZW5fMS5fKWAke3JlZ0V4cC5jb2RlID09PSAibmV3IFJlZ0V4cCIgPyBuZXdSZWdFeHAgOiAoMCwgdXRpbF8yLnVzZUZ1bmMpKGdlbiwgcmVnRXhwKX0oJHtwYXR0ZXJufSwgJHt1fSlgCiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudXNlUGF0dGVybiA9IHVzZVBhdHRlcm47CiAgICBmdW5jdGlvbiB2YWxpZGF0ZUFycmF5KGN4dCkgewogICAgICBjb25zdCB7IGdlbiwgZGF0YSwga2V5d29yZCwgaXQgfSA9IGN4dDsKICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubmFtZSgidmFsaWQiKTsKICAgICAgaWYgKGl0LmFsbEVycm9ycykgewogICAgICAgIGNvbnN0IHZhbGlkQXJyID0gZ2VuLmxldCgidmFsaWQiLCB0cnVlKTsKICAgICAgICB2YWxpZGF0ZUl0ZW1zKCgpID0+IGdlbi5hc3NpZ24odmFsaWRBcnIsIGZhbHNlKSk7CiAgICAgICAgcmV0dXJuIHZhbGlkQXJyOwogICAgICB9CiAgICAgIGdlbi52YXIodmFsaWQsIHRydWUpOwogICAgICB2YWxpZGF0ZUl0ZW1zKCgpID0+IGdlbi5icmVhaygpKTsKICAgICAgcmV0dXJuIHZhbGlkOwogICAgICBmdW5jdGlvbiB2YWxpZGF0ZUl0ZW1zKG5vdFZhbGlkKSB7CiAgICAgICAgY29uc3QgbGVuID0gZ2VuLmNvbnN0KCJsZW4iLCAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0ubGVuZ3RoYCk7CiAgICAgICAgZ2VuLmZvclJhbmdlKCJpIiwgMCwgbGVuLCAoaSkgPT4gewogICAgICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgIGtleXdvcmQsCiAgICAgICAgICAgIGRhdGFQcm9wOiBpLAogICAgICAgICAgICBkYXRhUHJvcFR5cGU6IHV0aWxfMS5UeXBlLk51bQogICAgICAgICAgfSwgdmFsaWQpOwogICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEubm90KSh2YWxpZCksIG5vdFZhbGlkKTsKICAgICAgICB9KTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIudmFsaWRhdGVBcnJheSA9IHZhbGlkYXRlQXJyYXk7CiAgICBmdW5jdGlvbiB2YWxpZGF0ZVVuaW9uKGN4dCkgewogICAgICBjb25zdCB7IGdlbiwgc2NoZW1hLCBrZXl3b3JkLCBpdCB9ID0gY3h0OwogICAgICBpZiAoIUFycmF5LmlzQXJyYXkoc2NoZW1hKSkKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICBjb25zdCBhbHdheXNWYWxpZCA9IHNjaGVtYS5zb21lKChzY2gpID0+ICgwLCB1dGlsXzEuYWx3YXlzVmFsaWRTY2hlbWEpKGl0LCBzY2gpKTsKICAgICAgaWYgKGFsd2F5c1ZhbGlkICYmICFpdC5vcHRzLnVuZXZhbHVhdGVkKQogICAgICAgIHJldHVybjsKICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIsIGZhbHNlKTsKICAgICAgY29uc3Qgc2NoVmFsaWQgPSBnZW4ubmFtZSgiX3ZhbGlkIik7CiAgICAgIGdlbi5ibG9jaygoKSA9PiBzY2hlbWEuZm9yRWFjaCgoX3NjaCwgaSkgPT4gewogICAgICAgIGNvbnN0IHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoewogICAgICAgICAga2V5d29yZCwKICAgICAgICAgIHNjaGVtYVByb3A6IGksCiAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlCiAgICAgICAgfSwgc2NoVmFsaWQpOwogICAgICAgIGdlbi5hc3NpZ24odmFsaWQsICgwLCBjb2RlZ2VuXzEuXylgJHt2YWxpZH0gfHwgJHtzY2hWYWxpZH1gKTsKICAgICAgICBjb25zdCBtZXJnZWQgPSBjeHQubWVyZ2VWYWxpZEV2YWx1YXRlZChzY2hDeHQsIHNjaFZhbGlkKTsKICAgICAgICBpZiAoIW1lcmdlZCkKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkodmFsaWQpKTsKICAgICAgfSkpOwogICAgICBjeHQucmVzdWx0KHZhbGlkLCAoKSA9PiBjeHQucmVzZXQoKSwgKCkgPT4gY3h0LmVycm9yKHRydWUpKTsKICAgIH0KICAgIGV4cG9ydHMyLnZhbGlkYXRlVW5pb24gPSB2YWxpZGF0ZVVuaW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS92YWxpZGF0ZS9rZXl3b3JkLmpzCnZhciByZXF1aXJlX2tleXdvcmQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUva2V5d29yZC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudmFsaWRhdGVLZXl3b3JkVXNhZ2UgPSBleHBvcnRzMi52YWxpZFNjaGVtYVR5cGUgPSBleHBvcnRzMi5mdW5jS2V5d29yZENvZGUgPSBleHBvcnRzMi5tYWNyb0tleXdvcmRDb2RlID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIG5hbWVzXzEgPSByZXF1aXJlX25hbWVzKCk7CiAgICB2YXIgY29kZV8xID0gcmVxdWlyZV9jb2RlMigpOwogICAgdmFyIGVycm9yc18xID0gcmVxdWlyZV9lcnJvcnMoKTsKICAgIGZ1bmN0aW9uIG1hY3JvS2V5d29yZENvZGUoY3h0LCBkZWYpIHsKICAgICAgY29uc3QgeyBnZW4sIGtleXdvcmQsIHNjaGVtYSwgcGFyZW50U2NoZW1hLCBpdCB9ID0gY3h0OwogICAgICBjb25zdCBtYWNyb1NjaGVtYSA9IGRlZi5tYWNyby5jYWxsKGl0LnNlbGYsIHNjaGVtYSwgcGFyZW50U2NoZW1hLCBpdCk7CiAgICAgIGNvbnN0IHNjaGVtYVJlZiA9IHVzZUtleXdvcmQoZ2VuLCBrZXl3b3JkLCBtYWNyb1NjaGVtYSk7CiAgICAgIGlmIChpdC5vcHRzLnZhbGlkYXRlU2NoZW1hICE9PSBmYWxzZSkKICAgICAgICBpdC5zZWxmLnZhbGlkYXRlU2NoZW1hKG1hY3JvU2NoZW1hLCB0cnVlKTsKICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubmFtZSgidmFsaWQiKTsKICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgc2NoZW1hOiBtYWNyb1NjaGVtYSwKICAgICAgICBzY2hlbWFQYXRoOiBjb2RlZ2VuXzEubmlsLAogICAgICAgIGVyclNjaGVtYVBhdGg6IGAke2l0LmVyclNjaGVtYVBhdGh9LyR7a2V5d29yZH1gLAogICAgICAgIHRvcFNjaGVtYVJlZjogc2NoZW1hUmVmLAogICAgICAgIGNvbXBvc2l0ZVJ1bGU6IHRydWUKICAgICAgfSwgdmFsaWQpOwogICAgICBjeHQucGFzcyh2YWxpZCwgKCkgPT4gY3h0LmVycm9yKHRydWUpKTsKICAgIH0KICAgIGV4cG9ydHMyLm1hY3JvS2V5d29yZENvZGUgPSBtYWNyb0tleXdvcmRDb2RlOwogICAgZnVuY3Rpb24gZnVuY0tleXdvcmRDb2RlKGN4dCwgZGVmKSB7CiAgICAgIHZhciBfYTsKICAgICAgY29uc3QgeyBnZW4sIGtleXdvcmQsIHNjaGVtYSwgcGFyZW50U2NoZW1hLCAkZGF0YSwgaXQgfSA9IGN4dDsKICAgICAgY2hlY2tBc3luY0tleXdvcmQoaXQsIGRlZik7CiAgICAgIGNvbnN0IHZhbGlkYXRlID0gISRkYXRhICYmIGRlZi5jb21waWxlID8gZGVmLmNvbXBpbGUuY2FsbChpdC5zZWxmLCBzY2hlbWEsIHBhcmVudFNjaGVtYSwgaXQpIDogZGVmLnZhbGlkYXRlOwogICAgICBjb25zdCB2YWxpZGF0ZVJlZiA9IHVzZUtleXdvcmQoZ2VuLCBrZXl3b3JkLCB2YWxpZGF0ZSk7CiAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLmxldCgidmFsaWQiKTsKICAgICAgY3h0LmJsb2NrJGRhdGEodmFsaWQsIHZhbGlkYXRlS2V5d29yZCk7CiAgICAgIGN4dC5vaygoX2EgPSBkZWYudmFsaWQpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IHZhbGlkKTsKICAgICAgZnVuY3Rpb24gdmFsaWRhdGVLZXl3b3JkKCkgewogICAgICAgIGlmIChkZWYuZXJyb3JzID09PSBmYWxzZSkgewogICAgICAgICAgYXNzaWduVmFsaWQoKTsKICAgICAgICAgIGlmIChkZWYubW9kaWZ5aW5nKQogICAgICAgICAgICBtb2RpZnlEYXRhKGN4dCk7CiAgICAgICAgICByZXBvcnRFcnJzKCgpID0+IGN4dC5lcnJvcigpKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgY29uc3QgcnVsZUVycnMgPSBkZWYuYXN5bmMgPyB2YWxpZGF0ZUFzeW5jKCkgOiB2YWxpZGF0ZVN5bmMoKTsKICAgICAgICAgIGlmIChkZWYubW9kaWZ5aW5nKQogICAgICAgICAgICBtb2RpZnlEYXRhKGN4dCk7CiAgICAgICAgICByZXBvcnRFcnJzKCgpID0+IGFkZEVycnMoY3h0LCBydWxlRXJycykpOwogICAgICAgIH0KICAgICAgfQogICAgICBmdW5jdGlvbiB2YWxpZGF0ZUFzeW5jKCkgewogICAgICAgIGNvbnN0IHJ1bGVFcnJzID0gZ2VuLmxldCgicnVsZUVycnMiLCBudWxsKTsKICAgICAgICBnZW4udHJ5KCgpID0+IGFzc2lnblZhbGlkKCgwLCBjb2RlZ2VuXzEuXylgYXdhaXQgYCksIChlKSA9PiBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSkuaWYoKDAsIGNvZGVnZW5fMS5fKWAke2V9IGluc3RhbmNlb2YgJHtpdC5WYWxpZGF0aW9uRXJyb3J9YCwgKCkgPT4gZ2VuLmFzc2lnbihydWxlRXJycywgKDAsIGNvZGVnZW5fMS5fKWAke2V9LmVycm9yc2ApLCAoKSA9PiBnZW4udGhyb3coZSkpKTsKICAgICAgICByZXR1cm4gcnVsZUVycnM7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gdmFsaWRhdGVTeW5jKCkgewogICAgICAgIGNvbnN0IHZhbGlkYXRlRXJycyA9ICgwLCBjb2RlZ2VuXzEuXylgJHt2YWxpZGF0ZVJlZn0uZXJyb3JzYDsKICAgICAgICBnZW4uYXNzaWduKHZhbGlkYXRlRXJycywgbnVsbCk7CiAgICAgICAgYXNzaWduVmFsaWQoY29kZWdlbl8xLm5pbCk7CiAgICAgICAgcmV0dXJuIHZhbGlkYXRlRXJyczsKICAgICAgfQogICAgICBmdW5jdGlvbiBhc3NpZ25WYWxpZChfYXdhaXQgPSBkZWYuYXN5bmMgPyAoMCwgY29kZWdlbl8xLl8pYGF3YWl0IGAgOiBjb2RlZ2VuXzEubmlsKSB7CiAgICAgICAgY29uc3QgcGFzc0N4dCA9IGl0Lm9wdHMucGFzc0NvbnRleHQgPyBuYW1lc18xLmRlZmF1bHQudGhpcyA6IG5hbWVzXzEuZGVmYXVsdC5zZWxmOwogICAgICAgIGNvbnN0IHBhc3NTY2hlbWEgPSAhKCJjb21waWxlIiBpbiBkZWYgJiYgISRkYXRhIHx8IGRlZi5zY2hlbWEgPT09IGZhbHNlKTsKICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCAoMCwgY29kZWdlbl8xLl8pYCR7X2F3YWl0fSR7KDAsIGNvZGVfMS5jYWxsVmFsaWRhdGVDb2RlKShjeHQsIHZhbGlkYXRlUmVmLCBwYXNzQ3h0LCBwYXNzU2NoZW1hKX1gLCBkZWYubW9kaWZ5aW5nKTsKICAgICAgfQogICAgICBmdW5jdGlvbiByZXBvcnRFcnJzKGVycm9ycykgewogICAgICAgIHZhciBfYTI7CiAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEubm90KSgoX2EyID0gZGVmLnZhbGlkKSAhPT0gbnVsbCAmJiBfYTIgIT09IHZvaWQgMCA/IF9hMiA6IHZhbGlkKSwgZXJyb3JzKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuZnVuY0tleXdvcmRDb2RlID0gZnVuY0tleXdvcmRDb2RlOwogICAgZnVuY3Rpb24gbW9kaWZ5RGF0YShjeHQpIHsKICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIGl0IH0gPSBjeHQ7CiAgICAgIGdlbi5pZihpdC5wYXJlbnREYXRhLCAoKSA9PiBnZW4uYXNzaWduKGRhdGEsICgwLCBjb2RlZ2VuXzEuXylgJHtpdC5wYXJlbnREYXRhfVske2l0LnBhcmVudERhdGFQcm9wZXJ0eX1dYCkpOwogICAgfQogICAgZnVuY3Rpb24gYWRkRXJycyhjeHQsIGVycnMpIHsKICAgICAgY29uc3QgeyBnZW4gfSA9IGN4dDsKICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgQXJyYXkuaXNBcnJheSgke2VycnN9KWAsICgpID0+IHsKICAgICAgICBnZW4uYXNzaWduKG5hbWVzXzEuZGVmYXVsdC52RXJyb3JzLCAoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnZFcnJvcnN9ID09PSBudWxsID8gJHtlcnJzfSA6ICR7bmFtZXNfMS5kZWZhdWx0LnZFcnJvcnN9LmNvbmNhdCgke2VycnN9KWApLmFzc2lnbihuYW1lc18xLmRlZmF1bHQuZXJyb3JzLCAoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnZFcnJvcnN9Lmxlbmd0aGApOwogICAgICAgICgwLCBlcnJvcnNfMS5leHRlbmRFcnJvcnMpKGN4dCk7CiAgICAgIH0sICgpID0+IGN4dC5lcnJvcigpKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrQXN5bmNLZXl3b3JkKHsgc2NoZW1hRW52IH0sIGRlZikgewogICAgICBpZiAoZGVmLmFzeW5jICYmICFzY2hlbWFFbnYuJGFzeW5jKQogICAgICAgIHRocm93IG5ldyBFcnJvcigiYXN5bmMga2V5d29yZCBpbiBzeW5jIHNjaGVtYSIpOwogICAgfQogICAgZnVuY3Rpb24gdXNlS2V5d29yZChnZW4sIGtleXdvcmQsIHJlc3VsdCkgewogICAgICBpZiAocmVzdWx0ID09PSB2b2lkIDApCiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBrZXl3b3JkICIke2tleXdvcmR9IiBmYWlsZWQgdG8gY29tcGlsZWApOwogICAgICByZXR1cm4gZ2VuLnNjb3BlVmFsdWUoImtleXdvcmQiLCB0eXBlb2YgcmVzdWx0ID09ICJmdW5jdGlvbiIgPyB7IHJlZjogcmVzdWx0IH0gOiB7IHJlZjogcmVzdWx0LCBjb2RlOiAoMCwgY29kZWdlbl8xLnN0cmluZ2lmeSkocmVzdWx0KSB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIHZhbGlkU2NoZW1hVHlwZShzY2hlbWEsIHNjaGVtYVR5cGUsIGFsbG93VW5kZWZpbmVkID0gZmFsc2UpIHsKICAgICAgcmV0dXJuICFzY2hlbWFUeXBlLmxlbmd0aCB8fCBzY2hlbWFUeXBlLnNvbWUoKHN0KSA9PiBzdCA9PT0gImFycmF5IiA/IEFycmF5LmlzQXJyYXkoc2NoZW1hKSA6IHN0ID09PSAib2JqZWN0IiA/IHNjaGVtYSAmJiB0eXBlb2Ygc2NoZW1hID09ICJvYmplY3QiICYmICFBcnJheS5pc0FycmF5KHNjaGVtYSkgOiB0eXBlb2Ygc2NoZW1hID09IHN0IHx8IGFsbG93VW5kZWZpbmVkICYmIHR5cGVvZiBzY2hlbWEgPT0gInVuZGVmaW5lZCIpOwogICAgfQogICAgZXhwb3J0czIudmFsaWRTY2hlbWFUeXBlID0gdmFsaWRTY2hlbWFUeXBlOwogICAgZnVuY3Rpb24gdmFsaWRhdGVLZXl3b3JkVXNhZ2UoeyBzY2hlbWEsIG9wdHMsIHNlbGY6IHNlbGYyLCBlcnJTY2hlbWFQYXRoIH0sIGRlZiwga2V5d29yZCkgewogICAgICBpZiAoQXJyYXkuaXNBcnJheShkZWYua2V5d29yZCkgPyAhZGVmLmtleXdvcmQuaW5jbHVkZXMoa2V5d29yZCkgOiBkZWYua2V5d29yZCAhPT0ga2V5d29yZCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiYWp2IGltcGxlbWVudGF0aW9uIGVycm9yIik7CiAgICAgIH0KICAgICAgY29uc3QgZGVwcyA9IGRlZi5kZXBlbmRlbmNpZXM7CiAgICAgIGlmIChkZXBzID09PSBudWxsIHx8IGRlcHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlcHMuc29tZSgoa3dkKSA9PiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHNjaGVtYSwga3dkKSkpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHBhcmVudCBzY2hlbWEgbXVzdCBoYXZlIGRlcGVuZGVuY2llcyBvZiAke2tleXdvcmR9OiAke2RlcHMuam9pbigiLCIpfWApOwogICAgICB9CiAgICAgIGlmIChkZWYudmFsaWRhdGVTY2hlbWEpIHsKICAgICAgICBjb25zdCB2YWxpZCA9IGRlZi52YWxpZGF0ZVNjaGVtYShzY2hlbWFba2V5d29yZF0pOwogICAgICAgIGlmICghdmFsaWQpIHsKICAgICAgICAgIGNvbnN0IG1zZyA9IGBrZXl3b3JkICIke2tleXdvcmR9IiB2YWx1ZSBpcyBpbnZhbGlkIGF0IHBhdGggIiR7ZXJyU2NoZW1hUGF0aH0iOiBgICsgc2VsZjIuZXJyb3JzVGV4dChkZWYudmFsaWRhdGVTY2hlbWEuZXJyb3JzKTsKICAgICAgICAgIGlmIChvcHRzLnZhbGlkYXRlU2NoZW1hID09PSAibG9nIikKICAgICAgICAgICAgc2VsZjIubG9nZ2VyLmVycm9yKG1zZyk7CiAgICAgICAgICBlbHNlCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihtc2cpOwogICAgICAgIH0KICAgICAgfQogICAgfQogICAgZXhwb3J0czIudmFsaWRhdGVLZXl3b3JkVXNhZ2UgPSB2YWxpZGF0ZUtleXdvcmRVc2FnZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvdmFsaWRhdGUvc3Vic2NoZW1hLmpzCnZhciByZXF1aXJlX3N1YnNjaGVtYSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS92YWxpZGF0ZS9zdWJzY2hlbWEuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmV4dGVuZFN1YnNjaGVtYU1vZGUgPSBleHBvcnRzMi5leHRlbmRTdWJzY2hlbWFEYXRhID0gZXhwb3J0czIuZ2V0U3Vic2NoZW1hID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgZnVuY3Rpb24gZ2V0U3Vic2NoZW1hKGl0LCB7IGtleXdvcmQsIHNjaGVtYVByb3AsIHNjaGVtYSwgc2NoZW1hUGF0aCwgZXJyU2NoZW1hUGF0aCwgdG9wU2NoZW1hUmVmIH0pIHsKICAgICAgaWYgKGtleXdvcmQgIT09IHZvaWQgMCAmJiBzY2hlbWEgIT09IHZvaWQgMCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcignYm90aCAia2V5d29yZCIgYW5kICJzY2hlbWEiIHBhc3NlZCwgb25seSBvbmUgYWxsb3dlZCcpOwogICAgICB9CiAgICAgIGlmIChrZXl3b3JkICE9PSB2b2lkIDApIHsKICAgICAgICBjb25zdCBzY2ggPSBpdC5zY2hlbWFba2V5d29yZF07CiAgICAgICAgcmV0dXJuIHNjaGVtYVByb3AgPT09IHZvaWQgMCA/IHsKICAgICAgICAgIHNjaGVtYTogc2NoLAogICAgICAgICAgc2NoZW1hUGF0aDogKDAsIGNvZGVnZW5fMS5fKWAke2l0LnNjaGVtYVBhdGh9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShrZXl3b3JkKX1gLAogICAgICAgICAgZXJyU2NoZW1hUGF0aDogYCR7aXQuZXJyU2NoZW1hUGF0aH0vJHtrZXl3b3JkfWAKICAgICAgICB9IDogewogICAgICAgICAgc2NoZW1hOiBzY2hbc2NoZW1hUHJvcF0sCiAgICAgICAgICBzY2hlbWFQYXRoOiAoMCwgY29kZWdlbl8xLl8pYCR7aXQuc2NoZW1hUGF0aH0keygwLCBjb2RlZ2VuXzEuZ2V0UHJvcGVydHkpKGtleXdvcmQpfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkoc2NoZW1hUHJvcCl9YCwKICAgICAgICAgIGVyclNjaGVtYVBhdGg6IGAke2l0LmVyclNjaGVtYVBhdGh9LyR7a2V5d29yZH0vJHsoMCwgdXRpbF8xLmVzY2FwZUZyYWdtZW50KShzY2hlbWFQcm9wKX1gCiAgICAgICAgfTsKICAgICAgfQogICAgICBpZiAoc2NoZW1hICE9PSB2b2lkIDApIHsKICAgICAgICBpZiAoc2NoZW1hUGF0aCA9PT0gdm9pZCAwIHx8IGVyclNjaGVtYVBhdGggPT09IHZvaWQgMCB8fCB0b3BTY2hlbWFSZWYgPT09IHZvaWQgMCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCcic2NoZW1hUGF0aCIsICJlcnJTY2hlbWFQYXRoIiBhbmQgInRvcFNjaGVtYVJlZiIgYXJlIHJlcXVpcmVkIHdpdGggInNjaGVtYSInKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIHNjaGVtYSwKICAgICAgICAgIHNjaGVtYVBhdGgsCiAgICAgICAgICB0b3BTY2hlbWFSZWYsCiAgICAgICAgICBlcnJTY2hlbWFQYXRoCiAgICAgICAgfTsKICAgICAgfQogICAgICB0aHJvdyBuZXcgRXJyb3IoJ2VpdGhlciAia2V5d29yZCIgb3IgInNjaGVtYSIgbXVzdCBiZSBwYXNzZWQnKTsKICAgIH0KICAgIGV4cG9ydHMyLmdldFN1YnNjaGVtYSA9IGdldFN1YnNjaGVtYTsKICAgIGZ1bmN0aW9uIGV4dGVuZFN1YnNjaGVtYURhdGEoc3Vic2NoZW1hLCBpdCwgeyBkYXRhUHJvcCwgZGF0YVByb3BUeXBlOiBkcFR5cGUsIGRhdGEsIGRhdGFUeXBlcywgcHJvcGVydHlOYW1lIH0pIHsKICAgICAgaWYgKGRhdGEgIT09IHZvaWQgMCAmJiBkYXRhUHJvcCAhPT0gdm9pZCAwKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdib3RoICJkYXRhIiBhbmQgImRhdGFQcm9wIiBwYXNzZWQsIG9ubHkgb25lIGFsbG93ZWQnKTsKICAgICAgfQogICAgICBjb25zdCB7IGdlbiB9ID0gaXQ7CiAgICAgIGlmIChkYXRhUHJvcCAhPT0gdm9pZCAwKSB7CiAgICAgICAgY29uc3QgeyBlcnJvclBhdGgsIGRhdGFQYXRoQXJyLCBvcHRzIH0gPSBpdDsKICAgICAgICBjb25zdCBuZXh0RGF0YSA9IGdlbi5sZXQoImRhdGEiLCAoMCwgY29kZWdlbl8xLl8pYCR7aXQuZGF0YX0keygwLCBjb2RlZ2VuXzEuZ2V0UHJvcGVydHkpKGRhdGFQcm9wKX1gLCB0cnVlKTsKICAgICAgICBkYXRhQ29udGV4dFByb3BzKG5leHREYXRhKTsKICAgICAgICBzdWJzY2hlbWEuZXJyb3JQYXRoID0gKDAsIGNvZGVnZW5fMS5zdHIpYCR7ZXJyb3JQYXRofSR7KDAsIHV0aWxfMS5nZXRFcnJvclBhdGgpKGRhdGFQcm9wLCBkcFR5cGUsIG9wdHMuanNQcm9wZXJ0eVN5bnRheCl9YDsKICAgICAgICBzdWJzY2hlbWEucGFyZW50RGF0YVByb3BlcnR5ID0gKDAsIGNvZGVnZW5fMS5fKWAke2RhdGFQcm9wfWA7CiAgICAgICAgc3Vic2NoZW1hLmRhdGFQYXRoQXJyID0gWy4uLmRhdGFQYXRoQXJyLCBzdWJzY2hlbWEucGFyZW50RGF0YVByb3BlcnR5XTsKICAgICAgfQogICAgICBpZiAoZGF0YSAhPT0gdm9pZCAwKSB7CiAgICAgICAgY29uc3QgbmV4dERhdGEgPSBkYXRhIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUgPyBkYXRhIDogZ2VuLmxldCgiZGF0YSIsIGRhdGEsIHRydWUpOwogICAgICAgIGRhdGFDb250ZXh0UHJvcHMobmV4dERhdGEpOwogICAgICAgIGlmIChwcm9wZXJ0eU5hbWUgIT09IHZvaWQgMCkKICAgICAgICAgIHN1YnNjaGVtYS5wcm9wZXJ0eU5hbWUgPSBwcm9wZXJ0eU5hbWU7CiAgICAgIH0KICAgICAgaWYgKGRhdGFUeXBlcykKICAgICAgICBzdWJzY2hlbWEuZGF0YVR5cGVzID0gZGF0YVR5cGVzOwogICAgICBmdW5jdGlvbiBkYXRhQ29udGV4dFByb3BzKF9uZXh0RGF0YSkgewogICAgICAgIHN1YnNjaGVtYS5kYXRhID0gX25leHREYXRhOwogICAgICAgIHN1YnNjaGVtYS5kYXRhTGV2ZWwgPSBpdC5kYXRhTGV2ZWwgKyAxOwogICAgICAgIHN1YnNjaGVtYS5kYXRhVHlwZXMgPSBbXTsKICAgICAgICBpdC5kZWZpbmVkUHJvcGVydGllcyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgc3Vic2NoZW1hLnBhcmVudERhdGEgPSBpdC5kYXRhOwogICAgICAgIHN1YnNjaGVtYS5kYXRhTmFtZXMgPSBbLi4uaXQuZGF0YU5hbWVzLCBfbmV4dERhdGFdOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5leHRlbmRTdWJzY2hlbWFEYXRhID0gZXh0ZW5kU3Vic2NoZW1hRGF0YTsKICAgIGZ1bmN0aW9uIGV4dGVuZFN1YnNjaGVtYU1vZGUoc3Vic2NoZW1hLCB7IGp0ZERpc2NyaW1pbmF0b3IsIGp0ZE1ldGFkYXRhLCBjb21wb3NpdGVSdWxlLCBjcmVhdGVFcnJvcnMsIGFsbEVycm9ycyB9KSB7CiAgICAgIGlmIChjb21wb3NpdGVSdWxlICE9PSB2b2lkIDApCiAgICAgICAgc3Vic2NoZW1hLmNvbXBvc2l0ZVJ1bGUgPSBjb21wb3NpdGVSdWxlOwogICAgICBpZiAoY3JlYXRlRXJyb3JzICE9PSB2b2lkIDApCiAgICAgICAgc3Vic2NoZW1hLmNyZWF0ZUVycm9ycyA9IGNyZWF0ZUVycm9yczsKICAgICAgaWYgKGFsbEVycm9ycyAhPT0gdm9pZCAwKQogICAgICAgIHN1YnNjaGVtYS5hbGxFcnJvcnMgPSBhbGxFcnJvcnM7CiAgICAgIHN1YnNjaGVtYS5qdGREaXNjcmltaW5hdG9yID0ganRkRGlzY3JpbWluYXRvcjsKICAgICAgc3Vic2NoZW1hLmp0ZE1ldGFkYXRhID0ganRkTWV0YWRhdGE7CiAgICB9CiAgICBleHBvcnRzMi5leHRlbmRTdWJzY2hlbWFNb2RlID0gZXh0ZW5kU3Vic2NoZW1hTW9kZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvZmFzdC1kZWVwLWVxdWFsLW5wbS0zLjEuMy03OTBlZGNmY2Y1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC1kZWVwLWVxdWFsL2luZGV4LmpzCnZhciByZXF1aXJlX2Zhc3RfZGVlcF9lcXVhbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9mYXN0LWRlZXAtZXF1YWwtbnBtLTMuMS4zLTc5MGVkY2ZjZjUtMTAuemlwL25vZGVfbW9kdWxlcy9mYXN0LWRlZXAtZXF1YWwvaW5kZXguanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBtb2R1bGUyLmV4cG9ydHMgPSBmdW5jdGlvbiBlcXVhbChhLCBiKSB7CiAgICAgIGlmIChhID09PSBiKSByZXR1cm4gdHJ1ZTsKICAgICAgaWYgKGEgJiYgYiAmJiB0eXBlb2YgYSA9PSAib2JqZWN0IiAmJiB0eXBlb2YgYiA9PSAib2JqZWN0IikgewogICAgICAgIGlmIChhLmNvbnN0cnVjdG9yICE9PSBiLmNvbnN0cnVjdG9yKSByZXR1cm4gZmFsc2U7CiAgICAgICAgdmFyIGxlbmd0aCwgaSwga2V5czsKICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShhKSkgewogICAgICAgICAgbGVuZ3RoID0gYS5sZW5ndGg7CiAgICAgICAgICBpZiAobGVuZ3RoICE9IGIubGVuZ3RoKSByZXR1cm4gZmFsc2U7CiAgICAgICAgICBmb3IgKGkgPSBsZW5ndGg7IGktLSAhPT0gMDsgKQogICAgICAgICAgICBpZiAoIWVxdWFsKGFbaV0sIGJbaV0pKSByZXR1cm4gZmFsc2U7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgaWYgKGEuY29uc3RydWN0b3IgPT09IFJlZ0V4cCkgcmV0dXJuIGEuc291cmNlID09PSBiLnNvdXJjZSAmJiBhLmZsYWdzID09PSBiLmZsYWdzOwogICAgICAgIGlmIChhLnZhbHVlT2YgIT09IE9iamVjdC5wcm90b3R5cGUudmFsdWVPZikgcmV0dXJuIGEudmFsdWVPZigpID09PSBiLnZhbHVlT2YoKTsKICAgICAgICBpZiAoYS50b1N0cmluZyAhPT0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZykgcmV0dXJuIGEudG9TdHJpbmcoKSA9PT0gYi50b1N0cmluZygpOwogICAgICAgIGtleXMgPSBPYmplY3Qua2V5cyhhKTsKICAgICAgICBsZW5ndGggPSBrZXlzLmxlbmd0aDsKICAgICAgICBpZiAobGVuZ3RoICE9PSBPYmplY3Qua2V5cyhiKS5sZW5ndGgpIHJldHVybiBmYWxzZTsKICAgICAgICBmb3IgKGkgPSBsZW5ndGg7IGktLSAhPT0gMDsgKQogICAgICAgICAgaWYgKCFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYiwga2V5c1tpXSkpIHJldHVybiBmYWxzZTsKICAgICAgICBmb3IgKGkgPSBsZW5ndGg7IGktLSAhPT0gMDsgKSB7CiAgICAgICAgICB2YXIga2V5ID0ga2V5c1tpXTsKICAgICAgICAgIGlmICghZXF1YWwoYVtrZXldLCBiW2tleV0pKSByZXR1cm4gZmFsc2U7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0cnVlOwogICAgICB9CiAgICAgIHJldHVybiBhICE9PSBhICYmIGIgIT09IGI7CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uLXNjaGVtYS10cmF2ZXJzZS1ucG0tMS4wLjAtZmIzNjg0ZjRmMC0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb24tc2NoZW1hLXRyYXZlcnNlL2luZGV4LmpzCnZhciByZXF1aXJlX2pzb25fc2NoZW1hX3RyYXZlcnNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2pzb24tc2NoZW1hLXRyYXZlcnNlLW5wbS0xLjAuMC1mYjM2ODRmNGYwLTEwLnppcC9ub2RlX21vZHVsZXMvanNvbi1zY2hlbWEtdHJhdmVyc2UvaW5kZXguanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgdHJhdmVyc2UgPSBtb2R1bGUyLmV4cG9ydHMgPSBmdW5jdGlvbihzY2hlbWEsIG9wdHMsIGNiKSB7CiAgICAgIGlmICh0eXBlb2Ygb3B0cyA9PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgY2IgPSBvcHRzOwogICAgICAgIG9wdHMgPSB7fTsKICAgICAgfQogICAgICBjYiA9IG9wdHMuY2IgfHwgY2I7CiAgICAgIHZhciBwcmUgPSB0eXBlb2YgY2IgPT0gImZ1bmN0aW9uIiA/IGNiIDogY2IucHJlIHx8IGZ1bmN0aW9uKCkgewogICAgICB9OwogICAgICB2YXIgcG9zdCA9IGNiLnBvc3QgfHwgZnVuY3Rpb24oKSB7CiAgICAgIH07CiAgICAgIF90cmF2ZXJzZShvcHRzLCBwcmUsIHBvc3QsIHNjaGVtYSwgIiIsIHNjaGVtYSk7CiAgICB9OwogICAgdHJhdmVyc2Uua2V5d29yZHMgPSB7CiAgICAgIGFkZGl0aW9uYWxJdGVtczogdHJ1ZSwKICAgICAgaXRlbXM6IHRydWUsCiAgICAgIGNvbnRhaW5zOiB0cnVlLAogICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogdHJ1ZSwKICAgICAgcHJvcGVydHlOYW1lczogdHJ1ZSwKICAgICAgbm90OiB0cnVlLAogICAgICBpZjogdHJ1ZSwKICAgICAgdGhlbjogdHJ1ZSwKICAgICAgZWxzZTogdHJ1ZQogICAgfTsKICAgIHRyYXZlcnNlLmFycmF5S2V5d29yZHMgPSB7CiAgICAgIGl0ZW1zOiB0cnVlLAogICAgICBhbGxPZjogdHJ1ZSwKICAgICAgYW55T2Y6IHRydWUsCiAgICAgIG9uZU9mOiB0cnVlCiAgICB9OwogICAgdHJhdmVyc2UucHJvcHNLZXl3b3JkcyA9IHsKICAgICAgJGRlZnM6IHRydWUsCiAgICAgIGRlZmluaXRpb25zOiB0cnVlLAogICAgICBwcm9wZXJ0aWVzOiB0cnVlLAogICAgICBwYXR0ZXJuUHJvcGVydGllczogdHJ1ZSwKICAgICAgZGVwZW5kZW5jaWVzOiB0cnVlCiAgICB9OwogICAgdHJhdmVyc2Uuc2tpcEtleXdvcmRzID0gewogICAgICBkZWZhdWx0OiB0cnVlLAogICAgICBlbnVtOiB0cnVlLAogICAgICBjb25zdDogdHJ1ZSwKICAgICAgcmVxdWlyZWQ6IHRydWUsCiAgICAgIG1heGltdW06IHRydWUsCiAgICAgIG1pbmltdW06IHRydWUsCiAgICAgIGV4Y2x1c2l2ZU1heGltdW06IHRydWUsCiAgICAgIGV4Y2x1c2l2ZU1pbmltdW06IHRydWUsCiAgICAgIG11bHRpcGxlT2Y6IHRydWUsCiAgICAgIG1heExlbmd0aDogdHJ1ZSwKICAgICAgbWluTGVuZ3RoOiB0cnVlLAogICAgICBwYXR0ZXJuOiB0cnVlLAogICAgICBmb3JtYXQ6IHRydWUsCiAgICAgIG1heEl0ZW1zOiB0cnVlLAogICAgICBtaW5JdGVtczogdHJ1ZSwKICAgICAgdW5pcXVlSXRlbXM6IHRydWUsCiAgICAgIG1heFByb3BlcnRpZXM6IHRydWUsCiAgICAgIG1pblByb3BlcnRpZXM6IHRydWUKICAgIH07CiAgICBmdW5jdGlvbiBfdHJhdmVyc2Uob3B0cywgcHJlLCBwb3N0LCBzY2hlbWEsIGpzb25QdHIsIHJvb3RTY2hlbWEsIHBhcmVudEpzb25QdHIsIHBhcmVudEtleXdvcmQsIHBhcmVudFNjaGVtYSwga2V5SW5kZXgpIHsKICAgICAgaWYgKHNjaGVtYSAmJiB0eXBlb2Ygc2NoZW1hID09ICJvYmplY3QiICYmICFBcnJheS5pc0FycmF5KHNjaGVtYSkpIHsKICAgICAgICBwcmUoc2NoZW1hLCBqc29uUHRyLCByb290U2NoZW1hLCBwYXJlbnRKc29uUHRyLCBwYXJlbnRLZXl3b3JkLCBwYXJlbnRTY2hlbWEsIGtleUluZGV4KTsKICAgICAgICBmb3IgKHZhciBrZXkgaW4gc2NoZW1hKSB7CiAgICAgICAgICB2YXIgc2NoID0gc2NoZW1hW2tleV07CiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShzY2gpKSB7CiAgICAgICAgICAgIGlmIChrZXkgaW4gdHJhdmVyc2UuYXJyYXlLZXl3b3JkcykgewogICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgc2NoLmxlbmd0aDsgaSsrKQogICAgICAgICAgICAgICAgX3RyYXZlcnNlKG9wdHMsIHByZSwgcG9zdCwgc2NoW2ldLCBqc29uUHRyICsgIi8iICsga2V5ICsgIi8iICsgaSwgcm9vdFNjaGVtYSwganNvblB0ciwga2V5LCBzY2hlbWEsIGkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgaWYgKGtleSBpbiB0cmF2ZXJzZS5wcm9wc0tleXdvcmRzKSB7CiAgICAgICAgICAgIGlmIChzY2ggJiYgdHlwZW9mIHNjaCA9PSAib2JqZWN0IikgewogICAgICAgICAgICAgIGZvciAodmFyIHByb3AgaW4gc2NoKQogICAgICAgICAgICAgICAgX3RyYXZlcnNlKG9wdHMsIHByZSwgcG9zdCwgc2NoW3Byb3BdLCBqc29uUHRyICsgIi8iICsga2V5ICsgIi8iICsgZXNjYXBlSnNvblB0cihwcm9wKSwgcm9vdFNjaGVtYSwganNvblB0ciwga2V5LCBzY2hlbWEsIHByb3ApOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgaWYgKGtleSBpbiB0cmF2ZXJzZS5rZXl3b3JkcyB8fCBvcHRzLmFsbEtleXMgJiYgIShrZXkgaW4gdHJhdmVyc2Uuc2tpcEtleXdvcmRzKSkgewogICAgICAgICAgICBfdHJhdmVyc2Uob3B0cywgcHJlLCBwb3N0LCBzY2gsIGpzb25QdHIgKyAiLyIgKyBrZXksIHJvb3RTY2hlbWEsIGpzb25QdHIsIGtleSwgc2NoZW1hKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcG9zdChzY2hlbWEsIGpzb25QdHIsIHJvb3RTY2hlbWEsIHBhcmVudEpzb25QdHIsIHBhcmVudEtleXdvcmQsIHBhcmVudFNjaGVtYSwga2V5SW5kZXgpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBlc2NhcGVKc29uUHRyKHN0cikgewogICAgICByZXR1cm4gc3RyLnJlcGxhY2UoL34vZywgIn4wIikucmVwbGFjZSgvXC8vZywgIn4xIik7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3Jlc29sdmUuanMKdmFyIHJlcXVpcmVfcmVzb2x2ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9yZXNvbHZlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5nZXRTY2hlbWFSZWZzID0gZXhwb3J0czIucmVzb2x2ZVVybCA9IGV4cG9ydHMyLm5vcm1hbGl6ZUlkID0gZXhwb3J0czIuX2dldEZ1bGxQYXRoID0gZXhwb3J0czIuZ2V0RnVsbFBhdGggPSBleHBvcnRzMi5pbmxpbmVSZWYgPSB2b2lkIDA7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXF1YWwgPSByZXF1aXJlX2Zhc3RfZGVlcF9lcXVhbCgpOwogICAgdmFyIHRyYXZlcnNlID0gcmVxdWlyZV9qc29uX3NjaGVtYV90cmF2ZXJzZSgpOwogICAgdmFyIFNJTVBMRV9JTkxJTkVEID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWwogICAgICAidHlwZSIsCiAgICAgICJmb3JtYXQiLAogICAgICAicGF0dGVybiIsCiAgICAgICJtYXhMZW5ndGgiLAogICAgICAibWluTGVuZ3RoIiwKICAgICAgIm1heFByb3BlcnRpZXMiLAogICAgICAibWluUHJvcGVydGllcyIsCiAgICAgICJtYXhJdGVtcyIsCiAgICAgICJtaW5JdGVtcyIsCiAgICAgICJtYXhpbXVtIiwKICAgICAgIm1pbmltdW0iLAogICAgICAidW5pcXVlSXRlbXMiLAogICAgICAibXVsdGlwbGVPZiIsCiAgICAgICJyZXF1aXJlZCIsCiAgICAgICJlbnVtIiwKICAgICAgImNvbnN0IgogICAgXSk7CiAgICBmdW5jdGlvbiBpbmxpbmVSZWYoc2NoZW1hLCBsaW1pdCA9IHRydWUpIHsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEgPT0gImJvb2xlYW4iKQogICAgICAgIHJldHVybiB0cnVlOwogICAgICBpZiAobGltaXQgPT09IHRydWUpCiAgICAgICAgcmV0dXJuICFoYXNSZWYoc2NoZW1hKTsKICAgICAgaWYgKCFsaW1pdCkKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIHJldHVybiBjb3VudEtleXMoc2NoZW1hKSA8PSBsaW1pdDsKICAgIH0KICAgIGV4cG9ydHMyLmlubGluZVJlZiA9IGlubGluZVJlZjsKICAgIHZhciBSRUZfS0VZV09SRFMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbCiAgICAgICIkcmVmIiwKICAgICAgIiRyZWN1cnNpdmVSZWYiLAogICAgICAiJHJlY3Vyc2l2ZUFuY2hvciIsCiAgICAgICIkZHluYW1pY1JlZiIsCiAgICAgICIkZHluYW1pY0FuY2hvciIKICAgIF0pOwogICAgZnVuY3Rpb24gaGFzUmVmKHNjaGVtYSkgewogICAgICBmb3IgKGNvbnN0IGtleSBpbiBzY2hlbWEpIHsKICAgICAgICBpZiAoUkVGX0tFWVdPUkRTLmhhcyhrZXkpKQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgY29uc3Qgc2NoID0gc2NoZW1hW2tleV07CiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoc2NoKSAmJiBzY2guc29tZShoYXNSZWYpKQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgaWYgKHR5cGVvZiBzY2ggPT0gIm9iamVjdCIgJiYgaGFzUmVmKHNjaCkpCiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICByZXR1cm4gZmFsc2U7CiAgICB9CiAgICBmdW5jdGlvbiBjb3VudEtleXMoc2NoZW1hKSB7CiAgICAgIGxldCBjb3VudCA9IDA7CiAgICAgIGZvciAoY29uc3Qga2V5IGluIHNjaGVtYSkgewogICAgICAgIGlmIChrZXkgPT09ICIkcmVmIikKICAgICAgICAgIHJldHVybiBJbmZpbml0eTsKICAgICAgICBjb3VudCsrOwogICAgICAgIGlmIChTSU1QTEVfSU5MSU5FRC5oYXMoa2V5KSkKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hW2tleV0gPT0gIm9iamVjdCIpIHsKICAgICAgICAgICgwLCB1dGlsXzEuZWFjaEl0ZW0pKHNjaGVtYVtrZXldLCAoc2NoKSA9PiBjb3VudCArPSBjb3VudEtleXMoc2NoKSk7CiAgICAgICAgfQogICAgICAgIGlmIChjb3VudCA9PT0gSW5maW5pdHkpCiAgICAgICAgICByZXR1cm4gSW5maW5pdHk7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvdW50OwogICAgfQogICAgZnVuY3Rpb24gZ2V0RnVsbFBhdGgocmVzb2x2ZXIsIGlkID0gIiIsIG5vcm1hbGl6ZSkgewogICAgICBpZiAobm9ybWFsaXplICE9PSBmYWxzZSkKICAgICAgICBpZCA9IG5vcm1hbGl6ZUlkKGlkKTsKICAgICAgY29uc3QgcCA9IHJlc29sdmVyLnBhcnNlKGlkKTsKICAgICAgcmV0dXJuIF9nZXRGdWxsUGF0aChyZXNvbHZlciwgcCk7CiAgICB9CiAgICBleHBvcnRzMi5nZXRGdWxsUGF0aCA9IGdldEZ1bGxQYXRoOwogICAgZnVuY3Rpb24gX2dldEZ1bGxQYXRoKHJlc29sdmVyLCBwKSB7CiAgICAgIGNvbnN0IHNlcmlhbGl6ZWQgPSByZXNvbHZlci5zZXJpYWxpemUocCk7CiAgICAgIHJldHVybiBzZXJpYWxpemVkLnNwbGl0KCIjIilbMF0gKyAiIyI7CiAgICB9CiAgICBleHBvcnRzMi5fZ2V0RnVsbFBhdGggPSBfZ2V0RnVsbFBhdGg7CiAgICB2YXIgVFJBSUxJTkdfU0xBU0hfSEFTSCA9IC8jXC8/JC87CiAgICBmdW5jdGlvbiBub3JtYWxpemVJZChpZCkgewogICAgICByZXR1cm4gaWQgPyBpZC5yZXBsYWNlKFRSQUlMSU5HX1NMQVNIX0hBU0gsICIiKSA6ICIiOwogICAgfQogICAgZXhwb3J0czIubm9ybWFsaXplSWQgPSBub3JtYWxpemVJZDsKICAgIGZ1bmN0aW9uIHJlc29sdmVVcmwocmVzb2x2ZXIsIGJhc2VJZCwgaWQpIHsKICAgICAgaWQgPSBub3JtYWxpemVJZChpZCk7CiAgICAgIHJldHVybiByZXNvbHZlci5yZXNvbHZlKGJhc2VJZCwgaWQpOwogICAgfQogICAgZXhwb3J0czIucmVzb2x2ZVVybCA9IHJlc29sdmVVcmw7CiAgICB2YXIgQU5DSE9SID0gL15bYS16X11bLWEtejAtOS5fXSokL2k7CiAgICBmdW5jdGlvbiBnZXRTY2hlbWFSZWZzKHNjaGVtYSwgYmFzZUlkKSB7CiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hID09ICJib29sZWFuIikKICAgICAgICByZXR1cm4ge307CiAgICAgIGNvbnN0IHsgc2NoZW1hSWQsIHVyaVJlc29sdmVyIH0gPSB0aGlzLm9wdHM7CiAgICAgIGNvbnN0IHNjaElkID0gbm9ybWFsaXplSWQoc2NoZW1hW3NjaGVtYUlkXSB8fCBiYXNlSWQpOwogICAgICBjb25zdCBiYXNlSWRzID0geyAiIjogc2NoSWQgfTsKICAgICAgY29uc3QgcGF0aFByZWZpeCA9IGdldEZ1bGxQYXRoKHVyaVJlc29sdmVyLCBzY2hJZCwgZmFsc2UpOwogICAgICBjb25zdCBsb2NhbFJlZnMgPSB7fTsKICAgICAgY29uc3Qgc2NoZW1hUmVmcyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIHRyYXZlcnNlKHNjaGVtYSwgeyBhbGxLZXlzOiB0cnVlIH0sIChzY2gsIGpzb25QdHIsIF8sIHBhcmVudEpzb25QdHIpID0+IHsKICAgICAgICBpZiAocGFyZW50SnNvblB0ciA9PT0gdm9pZCAwKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGNvbnN0IGZ1bGxQYXRoID0gcGF0aFByZWZpeCArIGpzb25QdHI7CiAgICAgICAgbGV0IGlubmVyQmFzZUlkID0gYmFzZUlkc1twYXJlbnRKc29uUHRyXTsKICAgICAgICBpZiAodHlwZW9mIHNjaFtzY2hlbWFJZF0gPT0gInN0cmluZyIpCiAgICAgICAgICBpbm5lckJhc2VJZCA9IGFkZFJlZi5jYWxsKHRoaXMsIHNjaFtzY2hlbWFJZF0pOwogICAgICAgIGFkZEFuY2hvci5jYWxsKHRoaXMsIHNjaC4kYW5jaG9yKTsKICAgICAgICBhZGRBbmNob3IuY2FsbCh0aGlzLCBzY2guJGR5bmFtaWNBbmNob3IpOwogICAgICAgIGJhc2VJZHNbanNvblB0cl0gPSBpbm5lckJhc2VJZDsKICAgICAgICBmdW5jdGlvbiBhZGRSZWYocmVmKSB7CiAgICAgICAgICBjb25zdCBfcmVzb2x2ZSA9IHRoaXMub3B0cy51cmlSZXNvbHZlci5yZXNvbHZlOwogICAgICAgICAgcmVmID0gbm9ybWFsaXplSWQoaW5uZXJCYXNlSWQgPyBfcmVzb2x2ZShpbm5lckJhc2VJZCwgcmVmKSA6IHJlZik7CiAgICAgICAgICBpZiAoc2NoZW1hUmVmcy5oYXMocmVmKSkKICAgICAgICAgICAgdGhyb3cgYW1iaWd1b3MocmVmKTsKICAgICAgICAgIHNjaGVtYVJlZnMuYWRkKHJlZik7CiAgICAgICAgICBsZXQgc2NoT3JSZWYgPSB0aGlzLnJlZnNbcmVmXTsKICAgICAgICAgIGlmICh0eXBlb2Ygc2NoT3JSZWYgPT0gInN0cmluZyIpCiAgICAgICAgICAgIHNjaE9yUmVmID0gdGhpcy5yZWZzW3NjaE9yUmVmXTsKICAgICAgICAgIGlmICh0eXBlb2Ygc2NoT3JSZWYgPT0gIm9iamVjdCIpIHsKICAgICAgICAgICAgY2hlY2tBbWJpZ3Vvc1JlZihzY2gsIHNjaE9yUmVmLnNjaGVtYSwgcmVmKTsKICAgICAgICAgIH0gZWxzZSBpZiAocmVmICE9PSBub3JtYWxpemVJZChmdWxsUGF0aCkpIHsKICAgICAgICAgICAgaWYgKHJlZlswXSA9PT0gIiMiKSB7CiAgICAgICAgICAgICAgY2hlY2tBbWJpZ3Vvc1JlZihzY2gsIGxvY2FsUmVmc1tyZWZdLCByZWYpOwogICAgICAgICAgICAgIGxvY2FsUmVmc1tyZWZdID0gc2NoOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHRoaXMucmVmc1tyZWZdID0gZnVsbFBhdGg7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiByZWY7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGFkZEFuY2hvcihhbmNob3IpIHsKICAgICAgICAgIGlmICh0eXBlb2YgYW5jaG9yID09ICJzdHJpbmciKSB7CiAgICAgICAgICAgIGlmICghQU5DSE9SLnRlc3QoYW5jaG9yKSkKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGludmFsaWQgYW5jaG9yICIke2FuY2hvcn0iYCk7CiAgICAgICAgICAgIGFkZFJlZi5jYWxsKHRoaXMsIGAjJHthbmNob3J9YCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9KTsKICAgICAgcmV0dXJuIGxvY2FsUmVmczsKICAgICAgZnVuY3Rpb24gY2hlY2tBbWJpZ3Vvc1JlZihzY2gxLCBzY2gyLCByZWYpIHsKICAgICAgICBpZiAoc2NoMiAhPT0gdm9pZCAwICYmICFlcXVhbChzY2gxLCBzY2gyKSkKICAgICAgICAgIHRocm93IGFtYmlndW9zKHJlZik7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gYW1iaWd1b3MocmVmKSB7CiAgICAgICAgcmV0dXJuIG5ldyBFcnJvcihgcmVmZXJlbmNlICIke3JlZn0iIHJlc29sdmVzIHRvIG1vcmUgdGhhbiBvbmUgc2NoZW1hYCk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmdldFNjaGVtYVJlZnMgPSBnZXRTY2hlbWFSZWZzOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS92YWxpZGF0ZS9pbmRleC5qcwp2YXIgcmVxdWlyZV92YWxpZGF0ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS92YWxpZGF0ZS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZ2V0RGF0YSA9IGV4cG9ydHMyLktleXdvcmRDeHQgPSBleHBvcnRzMi52YWxpZGF0ZUZ1bmN0aW9uQ29kZSA9IHZvaWQgMDsKICAgIHZhciBib29sU2NoZW1hXzEgPSByZXF1aXJlX2Jvb2xTY2hlbWEoKTsKICAgIHZhciBkYXRhVHlwZV8xID0gcmVxdWlyZV9kYXRhVHlwZSgpOwogICAgdmFyIGFwcGxpY2FiaWxpdHlfMSA9IHJlcXVpcmVfYXBwbGljYWJpbGl0eSgpOwogICAgdmFyIGRhdGFUeXBlXzIgPSByZXF1aXJlX2RhdGFUeXBlKCk7CiAgICB2YXIgZGVmYXVsdHNfMSA9IHJlcXVpcmVfZGVmYXVsdHMoKTsKICAgIHZhciBrZXl3b3JkXzEgPSByZXF1aXJlX2tleXdvcmQoKTsKICAgIHZhciBzdWJzY2hlbWFfMSA9IHJlcXVpcmVfc3Vic2NoZW1hKCk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgbmFtZXNfMSA9IHJlcXVpcmVfbmFtZXMoKTsKICAgIHZhciByZXNvbHZlXzEgPSByZXF1aXJlX3Jlc29sdmUoKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcnJvcnNfMSA9IHJlcXVpcmVfZXJyb3JzKCk7CiAgICBmdW5jdGlvbiB2YWxpZGF0ZUZ1bmN0aW9uQ29kZShpdCkgewogICAgICBpZiAoaXNTY2hlbWFPYmooaXQpKSB7CiAgICAgICAgY2hlY2tLZXl3b3JkcyhpdCk7CiAgICAgICAgaWYgKHNjaGVtYUN4dEhhc1J1bGVzKGl0KSkgewogICAgICAgICAgdG9wU2NoZW1hT2JqQ29kZShpdCk7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICB9CiAgICAgIHZhbGlkYXRlRnVuY3Rpb24oaXQsICgpID0+ICgwLCBib29sU2NoZW1hXzEudG9wQm9vbE9yRW1wdHlTY2hlbWEpKGl0KSk7CiAgICB9CiAgICBleHBvcnRzMi52YWxpZGF0ZUZ1bmN0aW9uQ29kZSA9IHZhbGlkYXRlRnVuY3Rpb25Db2RlOwogICAgZnVuY3Rpb24gdmFsaWRhdGVGdW5jdGlvbih7IGdlbiwgdmFsaWRhdGVOYW1lLCBzY2hlbWEsIHNjaGVtYUVudiwgb3B0cyB9LCBib2R5KSB7CiAgICAgIGlmIChvcHRzLmNvZGUuZXM1KSB7CiAgICAgICAgZ2VuLmZ1bmModmFsaWRhdGVOYW1lLCAoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LmRhdGF9LCAke25hbWVzXzEuZGVmYXVsdC52YWxDeHR9YCwgc2NoZW1hRW52LiRhc3luYywgKCkgPT4gewogICAgICAgICAgZ2VuLmNvZGUoKDAsIGNvZGVnZW5fMS5fKWAidXNlIHN0cmljdCI7ICR7ZnVuY1NvdXJjZVVybChzY2hlbWEsIG9wdHMpfWApOwogICAgICAgICAgZGVzdHJ1Y3R1cmVWYWxDeHRFUzUoZ2VuLCBvcHRzKTsKICAgICAgICAgIGdlbi5jb2RlKGJvZHkpOwogICAgICAgIH0pOwogICAgICB9IGVsc2UgewogICAgICAgIGdlbi5mdW5jKHZhbGlkYXRlTmFtZSwgKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC5kYXRhfSwgJHtkZXN0cnVjdHVyZVZhbEN4dChvcHRzKX1gLCBzY2hlbWFFbnYuJGFzeW5jLCAoKSA9PiBnZW4uY29kZShmdW5jU291cmNlVXJsKHNjaGVtYSwgb3B0cykpLmNvZGUoYm9keSkpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBkZXN0cnVjdHVyZVZhbEN4dChvcHRzKSB7CiAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYHske25hbWVzXzEuZGVmYXVsdC5pbnN0YW5jZVBhdGh9PSIiLCAke25hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhfSwgJHtuYW1lc18xLmRlZmF1bHQucGFyZW50RGF0YVByb3BlcnR5fSwgJHtuYW1lc18xLmRlZmF1bHQucm9vdERhdGF9PSR7bmFtZXNfMS5kZWZhdWx0LmRhdGF9JHtvcHRzLmR5bmFtaWNSZWYgPyAoMCwgY29kZWdlbl8xLl8pYCwgJHtuYW1lc18xLmRlZmF1bHQuZHluYW1pY0FuY2hvcnN9PXt9YCA6IGNvZGVnZW5fMS5uaWx9fT17fWA7CiAgICB9CiAgICBmdW5jdGlvbiBkZXN0cnVjdHVyZVZhbEN4dEVTNShnZW4sIG9wdHMpIHsKICAgICAgZ2VuLmlmKG5hbWVzXzEuZGVmYXVsdC52YWxDeHQsICgpID0+IHsKICAgICAgICBnZW4udmFyKG5hbWVzXzEuZGVmYXVsdC5pbnN0YW5jZVBhdGgsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudmFsQ3h0fS4ke25hbWVzXzEuZGVmYXVsdC5pbnN0YW5jZVBhdGh9YCk7CiAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQucGFyZW50RGF0YSwgKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC52YWxDeHR9LiR7bmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGF9YCk7CiAgICAgICAgZ2VuLnZhcihuYW1lc18xLmRlZmF1bHQucGFyZW50RGF0YVByb3BlcnR5LCAoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnZhbEN4dH0uJHtuYW1lc18xLmRlZmF1bHQucGFyZW50RGF0YVByb3BlcnR5fWApOwogICAgICAgIGdlbi52YXIobmFtZXNfMS5kZWZhdWx0LnJvb3REYXRhLCAoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnZhbEN4dH0uJHtuYW1lc18xLmRlZmF1bHQucm9vdERhdGF9YCk7CiAgICAgICAgaWYgKG9wdHMuZHluYW1pY1JlZikKICAgICAgICAgIGdlbi52YXIobmFtZXNfMS5kZWZhdWx0LmR5bmFtaWNBbmNob3JzLCAoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnZhbEN4dH0uJHtuYW1lc18xLmRlZmF1bHQuZHluYW1pY0FuY2hvcnN9YCk7CiAgICAgIH0sICgpID0+IHsKICAgICAgICBnZW4udmFyKG5hbWVzXzEuZGVmYXVsdC5pbnN0YW5jZVBhdGgsICgwLCBjb2RlZ2VuXzEuXylgIiJgKTsKICAgICAgICBnZW4udmFyKG5hbWVzXzEuZGVmYXVsdC5wYXJlbnREYXRhLCAoMCwgY29kZWdlbl8xLl8pYHVuZGVmaW5lZGApOwogICAgICAgIGdlbi52YXIobmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGFQcm9wZXJ0eSwgKDAsIGNvZGVnZW5fMS5fKWB1bmRlZmluZWRgKTsKICAgICAgICBnZW4udmFyKG5hbWVzXzEuZGVmYXVsdC5yb290RGF0YSwgbmFtZXNfMS5kZWZhdWx0LmRhdGEpOwogICAgICAgIGlmIChvcHRzLmR5bmFtaWNSZWYpCiAgICAgICAgICBnZW4udmFyKG5hbWVzXzEuZGVmYXVsdC5keW5hbWljQW5jaG9ycywgKDAsIGNvZGVnZW5fMS5fKWB7fWApOwogICAgICB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIHRvcFNjaGVtYU9iakNvZGUoaXQpIHsKICAgICAgY29uc3QgeyBzY2hlbWEsIG9wdHMsIGdlbiB9ID0gaXQ7CiAgICAgIHZhbGlkYXRlRnVuY3Rpb24oaXQsICgpID0+IHsKICAgICAgICBpZiAob3B0cy4kY29tbWVudCAmJiBzY2hlbWEuJGNvbW1lbnQpCiAgICAgICAgICBjb21tZW50S2V5d29yZChpdCk7CiAgICAgICAgY2hlY2tOb0RlZmF1bHQoaXQpOwogICAgICAgIGdlbi5sZXQobmFtZXNfMS5kZWZhdWx0LnZFcnJvcnMsIG51bGwpOwogICAgICAgIGdlbi5sZXQobmFtZXNfMS5kZWZhdWx0LmVycm9ycywgMCk7CiAgICAgICAgaWYgKG9wdHMudW5ldmFsdWF0ZWQpCiAgICAgICAgICByZXNldEV2YWx1YXRlZChpdCk7CiAgICAgICAgdHlwZUFuZEtleXdvcmRzKGl0KTsKICAgICAgICByZXR1cm5SZXN1bHRzKGl0KTsKICAgICAgfSk7CiAgICAgIHJldHVybjsKICAgIH0KICAgIGZ1bmN0aW9uIHJlc2V0RXZhbHVhdGVkKGl0KSB7CiAgICAgIGNvbnN0IHsgZ2VuLCB2YWxpZGF0ZU5hbWUgfSA9IGl0OwogICAgICBpdC5ldmFsdWF0ZWQgPSBnZW4uY29uc3QoImV2YWx1YXRlZCIsICgwLCBjb2RlZ2VuXzEuXylgJHt2YWxpZGF0ZU5hbWV9LmV2YWx1YXRlZGApOwogICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2l0LmV2YWx1YXRlZH0uZHluYW1pY1Byb3BzYCwgKCkgPT4gZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7aXQuZXZhbHVhdGVkfS5wcm9wc2AsICgwLCBjb2RlZ2VuXzEuXylgdW5kZWZpbmVkYCkpOwogICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2l0LmV2YWx1YXRlZH0uZHluYW1pY0l0ZW1zYCwgKCkgPT4gZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7aXQuZXZhbHVhdGVkfS5pdGVtc2AsICgwLCBjb2RlZ2VuXzEuXylgdW5kZWZpbmVkYCkpOwogICAgfQogICAgZnVuY3Rpb24gZnVuY1NvdXJjZVVybChzY2hlbWEsIG9wdHMpIHsKICAgICAgY29uc3Qgc2NoSWQgPSB0eXBlb2Ygc2NoZW1hID09ICJvYmplY3QiICYmIHNjaGVtYVtvcHRzLnNjaGVtYUlkXTsKICAgICAgcmV0dXJuIHNjaElkICYmIChvcHRzLmNvZGUuc291cmNlIHx8IG9wdHMuY29kZS5wcm9jZXNzKSA/ICgwLCBjb2RlZ2VuXzEuXylgLyojIHNvdXJjZVVSTD0ke3NjaElkfSAqL2AgOiBjb2RlZ2VuXzEubmlsOwogICAgfQogICAgZnVuY3Rpb24gc3Vic2NoZW1hQ29kZShpdCwgdmFsaWQpIHsKICAgICAgaWYgKGlzU2NoZW1hT2JqKGl0KSkgewogICAgICAgIGNoZWNrS2V5d29yZHMoaXQpOwogICAgICAgIGlmIChzY2hlbWFDeHRIYXNSdWxlcyhpdCkpIHsKICAgICAgICAgIHN1YlNjaGVtYU9iakNvZGUoaXQsIHZhbGlkKTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgIH0KICAgICAgKDAsIGJvb2xTY2hlbWFfMS5ib29sT3JFbXB0eVNjaGVtYSkoaXQsIHZhbGlkKTsKICAgIH0KICAgIGZ1bmN0aW9uIHNjaGVtYUN4dEhhc1J1bGVzKHsgc2NoZW1hLCBzZWxmOiBzZWxmMiB9KSB7CiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hID09ICJib29sZWFuIikKICAgICAgICByZXR1cm4gIXNjaGVtYTsKICAgICAgZm9yIChjb25zdCBrZXkgaW4gc2NoZW1hKQogICAgICAgIGlmIChzZWxmMi5SVUxFUy5hbGxba2V5XSkKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICByZXR1cm4gZmFsc2U7CiAgICB9CiAgICBmdW5jdGlvbiBpc1NjaGVtYU9iaihpdCkgewogICAgICByZXR1cm4gdHlwZW9mIGl0LnNjaGVtYSAhPSAiYm9vbGVhbiI7CiAgICB9CiAgICBmdW5jdGlvbiBzdWJTY2hlbWFPYmpDb2RlKGl0LCB2YWxpZCkgewogICAgICBjb25zdCB7IHNjaGVtYSwgZ2VuLCBvcHRzIH0gPSBpdDsKICAgICAgaWYgKG9wdHMuJGNvbW1lbnQgJiYgc2NoZW1hLiRjb21tZW50KQogICAgICAgIGNvbW1lbnRLZXl3b3JkKGl0KTsKICAgICAgdXBkYXRlQ29udGV4dChpdCk7CiAgICAgIGNoZWNrQXN5bmNTY2hlbWEoaXQpOwogICAgICBjb25zdCBlcnJzQ291bnQgPSBnZW4uY29uc3QoIl9lcnJzIiwgbmFtZXNfMS5kZWZhdWx0LmVycm9ycyk7CiAgICAgIHR5cGVBbmRLZXl3b3JkcyhpdCwgZXJyc0NvdW50KTsKICAgICAgZ2VuLnZhcih2YWxpZCwgKDAsIGNvZGVnZW5fMS5fKWAke2VycnNDb3VudH0gPT09ICR7bmFtZXNfMS5kZWZhdWx0LmVycm9yc31gKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrS2V5d29yZHMoaXQpIHsKICAgICAgKDAsIHV0aWxfMS5jaGVja1Vua25vd25SdWxlcykoaXQpOwogICAgICBjaGVja1JlZnNBbmRLZXl3b3JkcyhpdCk7CiAgICB9CiAgICBmdW5jdGlvbiB0eXBlQW5kS2V5d29yZHMoaXQsIGVycnNDb3VudCkgewogICAgICBpZiAoaXQub3B0cy5qdGQpCiAgICAgICAgcmV0dXJuIHNjaGVtYUtleXdvcmRzKGl0LCBbXSwgZmFsc2UsIGVycnNDb3VudCk7CiAgICAgIGNvbnN0IHR5cGVzID0gKDAsIGRhdGFUeXBlXzEuZ2V0U2NoZW1hVHlwZXMpKGl0LnNjaGVtYSk7CiAgICAgIGNvbnN0IGNoZWNrZWRUeXBlcyA9ICgwLCBkYXRhVHlwZV8xLmNvZXJjZUFuZENoZWNrRGF0YVR5cGUpKGl0LCB0eXBlcyk7CiAgICAgIHNjaGVtYUtleXdvcmRzKGl0LCB0eXBlcywgIWNoZWNrZWRUeXBlcywgZXJyc0NvdW50KTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrUmVmc0FuZEtleXdvcmRzKGl0KSB7CiAgICAgIGNvbnN0IHsgc2NoZW1hLCBlcnJTY2hlbWFQYXRoLCBvcHRzLCBzZWxmOiBzZWxmMiB9ID0gaXQ7CiAgICAgIGlmIChzY2hlbWEuJHJlZiAmJiBvcHRzLmlnbm9yZUtleXdvcmRzV2l0aFJlZiAmJiAoMCwgdXRpbF8xLnNjaGVtYUhhc1J1bGVzQnV0UmVmKShzY2hlbWEsIHNlbGYyLlJVTEVTKSkgewogICAgICAgIHNlbGYyLmxvZ2dlci53YXJuKGAkcmVmOiBrZXl3b3JkcyBpZ25vcmVkIGluIHNjaGVtYSBhdCBwYXRoICIke2VyclNjaGVtYVBhdGh9ImApOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBjaGVja05vRGVmYXVsdChpdCkgewogICAgICBjb25zdCB7IHNjaGVtYSwgb3B0cyB9ID0gaXQ7CiAgICAgIGlmIChzY2hlbWEuZGVmYXVsdCAhPT0gdm9pZCAwICYmIG9wdHMudXNlRGVmYXVsdHMgJiYgb3B0cy5zdHJpY3RTY2hlbWEpIHsKICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsICJkZWZhdWx0IGlzIGlnbm9yZWQgaW4gdGhlIHNjaGVtYSByb290Iik7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIHVwZGF0ZUNvbnRleHQoaXQpIHsKICAgICAgY29uc3Qgc2NoSWQgPSBpdC5zY2hlbWFbaXQub3B0cy5zY2hlbWFJZF07CiAgICAgIGlmIChzY2hJZCkKICAgICAgICBpdC5iYXNlSWQgPSAoMCwgcmVzb2x2ZV8xLnJlc29sdmVVcmwpKGl0Lm9wdHMudXJpUmVzb2x2ZXIsIGl0LmJhc2VJZCwgc2NoSWQpOwogICAgfQogICAgZnVuY3Rpb24gY2hlY2tBc3luY1NjaGVtYShpdCkgewogICAgICBpZiAoaXQuc2NoZW1hLiRhc3luYyAmJiAhaXQuc2NoZW1hRW52LiRhc3luYykKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFzeW5jIHNjaGVtYSBpbiBzeW5jIHNjaGVtYSIpOwogICAgfQogICAgZnVuY3Rpb24gY29tbWVudEtleXdvcmQoeyBnZW4sIHNjaGVtYUVudiwgc2NoZW1hLCBlcnJTY2hlbWFQYXRoLCBvcHRzIH0pIHsKICAgICAgY29uc3QgbXNnID0gc2NoZW1hLiRjb21tZW50OwogICAgICBpZiAob3B0cy4kY29tbWVudCA9PT0gdHJ1ZSkgewogICAgICAgIGdlbi5jb2RlKCgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQuc2VsZn0ubG9nZ2VyLmxvZygke21zZ30pYCk7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIG9wdHMuJGNvbW1lbnQgPT0gImZ1bmN0aW9uIikgewogICAgICAgIGNvbnN0IHNjaGVtYVBhdGggPSAoMCwgY29kZWdlbl8xLnN0cilgJHtlcnJTY2hlbWFQYXRofS8kY29tbWVudGA7CiAgICAgICAgY29uc3Qgcm9vdE5hbWUgPSBnZW4uc2NvcGVWYWx1ZSgicm9vdCIsIHsgcmVmOiBzY2hlbWFFbnYucm9vdCB9KTsKICAgICAgICBnZW4uY29kZSgoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnNlbGZ9Lm9wdHMuJGNvbW1lbnQoJHttc2d9LCAke3NjaGVtYVBhdGh9LCAke3Jvb3ROYW1lfS5zY2hlbWEpYCk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIHJldHVyblJlc3VsdHMoaXQpIHsKICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYUVudiwgdmFsaWRhdGVOYW1lLCBWYWxpZGF0aW9uRXJyb3IsIG9wdHMgfSA9IGl0OwogICAgICBpZiAoc2NoZW1hRW52LiRhc3luYykgewogICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LmVycm9yc30gPT09IDBgLCAoKSA9PiBnZW4ucmV0dXJuKG5hbWVzXzEuZGVmYXVsdC5kYXRhKSwgKCkgPT4gZ2VuLnRocm93KCgwLCBjb2RlZ2VuXzEuXylgbmV3ICR7VmFsaWRhdGlvbkVycm9yfSgke25hbWVzXzEuZGVmYXVsdC52RXJyb3JzfSlgKSk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZ2VuLmFzc2lnbigoMCwgY29kZWdlbl8xLl8pYCR7dmFsaWRhdGVOYW1lfS5lcnJvcnNgLCBuYW1lc18xLmRlZmF1bHQudkVycm9ycyk7CiAgICAgICAgaWYgKG9wdHMudW5ldmFsdWF0ZWQpCiAgICAgICAgICBhc3NpZ25FdmFsdWF0ZWQoaXQpOwogICAgICAgIGdlbi5yZXR1cm4oKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC5lcnJvcnN9ID09PSAwYCk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGFzc2lnbkV2YWx1YXRlZCh7IGdlbiwgZXZhbHVhdGVkLCBwcm9wcywgaXRlbXMgfSkgewogICAgICBpZiAocHJvcHMgaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZSkKICAgICAgICBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtldmFsdWF0ZWR9LnByb3BzYCwgcHJvcHMpOwogICAgICBpZiAoaXRlbXMgaW5zdGFuY2VvZiBjb2RlZ2VuXzEuTmFtZSkKICAgICAgICBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtldmFsdWF0ZWR9Lml0ZW1zYCwgaXRlbXMpOwogICAgfQogICAgZnVuY3Rpb24gc2NoZW1hS2V5d29yZHMoaXQsIHR5cGVzLCB0eXBlRXJyb3JzLCBlcnJzQ291bnQpIHsKICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYSwgZGF0YSwgYWxsRXJyb3JzLCBvcHRzLCBzZWxmOiBzZWxmMiB9ID0gaXQ7CiAgICAgIGNvbnN0IHsgUlVMRVMgfSA9IHNlbGYyOwogICAgICBpZiAoc2NoZW1hLiRyZWYgJiYgKG9wdHMuaWdub3JlS2V5d29yZHNXaXRoUmVmIHx8ICEoMCwgdXRpbF8xLnNjaGVtYUhhc1J1bGVzQnV0UmVmKShzY2hlbWEsIFJVTEVTKSkpIHsKICAgICAgICBnZW4uYmxvY2soKCkgPT4ga2V5d29yZENvZGUoaXQsICIkcmVmIiwgUlVMRVMuYWxsLiRyZWYuZGVmaW5pdGlvbikpOwogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICBpZiAoIW9wdHMuanRkKQogICAgICAgIGNoZWNrU3RyaWN0VHlwZXMoaXQsIHR5cGVzKTsKICAgICAgZ2VuLmJsb2NrKCgpID0+IHsKICAgICAgICBmb3IgKGNvbnN0IGdyb3VwIG9mIFJVTEVTLnJ1bGVzKQogICAgICAgICAgZ3JvdXBLZXl3b3Jkcyhncm91cCk7CiAgICAgICAgZ3JvdXBLZXl3b3JkcyhSVUxFUy5wb3N0KTsKICAgICAgfSk7CiAgICAgIGZ1bmN0aW9uIGdyb3VwS2V5d29yZHMoZ3JvdXApIHsKICAgICAgICBpZiAoISgwLCBhcHBsaWNhYmlsaXR5XzEuc2hvdWxkVXNlR3JvdXApKHNjaGVtYSwgZ3JvdXApKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGlmIChncm91cC50eXBlKSB7CiAgICAgICAgICBnZW4uaWYoKDAsIGRhdGFUeXBlXzIuY2hlY2tEYXRhVHlwZSkoZ3JvdXAudHlwZSwgZGF0YSwgb3B0cy5zdHJpY3ROdW1iZXJzKSk7CiAgICAgICAgICBpdGVyYXRlS2V5d29yZHMoaXQsIGdyb3VwKTsKICAgICAgICAgIGlmICh0eXBlcy5sZW5ndGggPT09IDEgJiYgdHlwZXNbMF0gPT09IGdyb3VwLnR5cGUgJiYgdHlwZUVycm9ycykgewogICAgICAgICAgICBnZW4uZWxzZSgpOwogICAgICAgICAgICAoMCwgZGF0YVR5cGVfMi5yZXBvcnRUeXBlRXJyb3IpKGl0KTsKICAgICAgICAgIH0KICAgICAgICAgIGdlbi5lbmRJZigpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBpdGVyYXRlS2V5d29yZHMoaXQsIGdyb3VwKTsKICAgICAgICB9CiAgICAgICAgaWYgKCFhbGxFcnJvcnMpCiAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke25hbWVzXzEuZGVmYXVsdC5lcnJvcnN9ID09PSAke2VycnNDb3VudCB8fCAwfWApOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBpdGVyYXRlS2V5d29yZHMoaXQsIGdyb3VwKSB7CiAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWEsIG9wdHM6IHsgdXNlRGVmYXVsdHMgfSB9ID0gaXQ7CiAgICAgIGlmICh1c2VEZWZhdWx0cykKICAgICAgICAoMCwgZGVmYXVsdHNfMS5hc3NpZ25EZWZhdWx0cykoaXQsIGdyb3VwLnR5cGUpOwogICAgICBnZW4uYmxvY2soKCkgPT4gewogICAgICAgIGZvciAoY29uc3QgcnVsZSBvZiBncm91cC5ydWxlcykgewogICAgICAgICAgaWYgKCgwLCBhcHBsaWNhYmlsaXR5XzEuc2hvdWxkVXNlUnVsZSkoc2NoZW1hLCBydWxlKSkgewogICAgICAgICAgICBrZXl3b3JkQ29kZShpdCwgcnVsZS5rZXl3b3JkLCBydWxlLmRlZmluaXRpb24sIGdyb3VwLnR5cGUpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfSk7CiAgICB9CiAgICBmdW5jdGlvbiBjaGVja1N0cmljdFR5cGVzKGl0LCB0eXBlcykgewogICAgICBpZiAoaXQuc2NoZW1hRW52Lm1ldGEgfHwgIWl0Lm9wdHMuc3RyaWN0VHlwZXMpCiAgICAgICAgcmV0dXJuOwogICAgICBjaGVja0NvbnRleHRUeXBlcyhpdCwgdHlwZXMpOwogICAgICBpZiAoIWl0Lm9wdHMuYWxsb3dVbmlvblR5cGVzKQogICAgICAgIGNoZWNrTXVsdGlwbGVUeXBlcyhpdCwgdHlwZXMpOwogICAgICBjaGVja0tleXdvcmRUeXBlcyhpdCwgaXQuZGF0YVR5cGVzKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrQ29udGV4dFR5cGVzKGl0LCB0eXBlcykgewogICAgICBpZiAoIXR5cGVzLmxlbmd0aCkKICAgICAgICByZXR1cm47CiAgICAgIGlmICghaXQuZGF0YVR5cGVzLmxlbmd0aCkgewogICAgICAgIGl0LmRhdGFUeXBlcyA9IHR5cGVzOwogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICB0eXBlcy5mb3JFYWNoKCh0KSA9PiB7CiAgICAgICAgaWYgKCFpbmNsdWRlc1R5cGUoaXQuZGF0YVR5cGVzLCB0KSkgewogICAgICAgICAgc3RyaWN0VHlwZXNFcnJvcihpdCwgYHR5cGUgIiR7dH0iIG5vdCBhbGxvd2VkIGJ5IGNvbnRleHQgIiR7aXQuZGF0YVR5cGVzLmpvaW4oIiwiKX0iYCk7CiAgICAgICAgfQogICAgICB9KTsKICAgICAgbmFycm93U2NoZW1hVHlwZXMoaXQsIHR5cGVzKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNoZWNrTXVsdGlwbGVUeXBlcyhpdCwgdHMpIHsKICAgICAgaWYgKHRzLmxlbmd0aCA+IDEgJiYgISh0cy5sZW5ndGggPT09IDIgJiYgdHMuaW5jbHVkZXMoIm51bGwiKSkpIHsKICAgICAgICBzdHJpY3RUeXBlc0Vycm9yKGl0LCAidXNlIGFsbG93VW5pb25UeXBlcyB0byBhbGxvdyB1bmlvbiB0eXBlIGtleXdvcmQiKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gY2hlY2tLZXl3b3JkVHlwZXMoaXQsIHRzKSB7CiAgICAgIGNvbnN0IHJ1bGVzID0gaXQuc2VsZi5SVUxFUy5hbGw7CiAgICAgIGZvciAoY29uc3Qga2V5d29yZCBpbiBydWxlcykgewogICAgICAgIGNvbnN0IHJ1bGUgPSBydWxlc1trZXl3b3JkXTsKICAgICAgICBpZiAodHlwZW9mIHJ1bGUgPT0gIm9iamVjdCIgJiYgKDAsIGFwcGxpY2FiaWxpdHlfMS5zaG91bGRVc2VSdWxlKShpdC5zY2hlbWEsIHJ1bGUpKSB7CiAgICAgICAgICBjb25zdCB7IHR5cGUgfSA9IHJ1bGUuZGVmaW5pdGlvbjsKICAgICAgICAgIGlmICh0eXBlLmxlbmd0aCAmJiAhdHlwZS5zb21lKCh0KSA9PiBoYXNBcHBsaWNhYmxlVHlwZSh0cywgdCkpKSB7CiAgICAgICAgICAgIHN0cmljdFR5cGVzRXJyb3IoaXQsIGBtaXNzaW5nIHR5cGUgIiR7dHlwZS5qb2luKCIsIil9IiBmb3Iga2V5d29yZCAiJHtrZXl3b3JkfSJgKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGhhc0FwcGxpY2FibGVUeXBlKHNjaFRzLCBrd2RUKSB7CiAgICAgIHJldHVybiBzY2hUcy5pbmNsdWRlcyhrd2RUKSB8fCBrd2RUID09PSAibnVtYmVyIiAmJiBzY2hUcy5pbmNsdWRlcygiaW50ZWdlciIpOwogICAgfQogICAgZnVuY3Rpb24gaW5jbHVkZXNUeXBlKHRzLCB0KSB7CiAgICAgIHJldHVybiB0cy5pbmNsdWRlcyh0KSB8fCB0ID09PSAiaW50ZWdlciIgJiYgdHMuaW5jbHVkZXMoIm51bWJlciIpOwogICAgfQogICAgZnVuY3Rpb24gbmFycm93U2NoZW1hVHlwZXMoaXQsIHdpdGhUeXBlcykgewogICAgICBjb25zdCB0cyA9IFtdOwogICAgICBmb3IgKGNvbnN0IHQgb2YgaXQuZGF0YVR5cGVzKSB7CiAgICAgICAgaWYgKGluY2x1ZGVzVHlwZSh3aXRoVHlwZXMsIHQpKQogICAgICAgICAgdHMucHVzaCh0KTsKICAgICAgICBlbHNlIGlmICh3aXRoVHlwZXMuaW5jbHVkZXMoImludGVnZXIiKSAmJiB0ID09PSAibnVtYmVyIikKICAgICAgICAgIHRzLnB1c2goImludGVnZXIiKTsKICAgICAgfQogICAgICBpdC5kYXRhVHlwZXMgPSB0czsKICAgIH0KICAgIGZ1bmN0aW9uIHN0cmljdFR5cGVzRXJyb3IoaXQsIG1zZykgewogICAgICBjb25zdCBzY2hlbWFQYXRoID0gaXQuc2NoZW1hRW52LmJhc2VJZCArIGl0LmVyclNjaGVtYVBhdGg7CiAgICAgIG1zZyArPSBgIGF0ICIke3NjaGVtYVBhdGh9IiAoc3RyaWN0VHlwZXMpYDsKICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCBtc2csIGl0Lm9wdHMuc3RyaWN0VHlwZXMpOwogICAgfQogICAgdmFyIEtleXdvcmRDeHQgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKGl0LCBkZWYsIGtleXdvcmQpIHsKICAgICAgICAoMCwga2V5d29yZF8xLnZhbGlkYXRlS2V5d29yZFVzYWdlKShpdCwgZGVmLCBrZXl3b3JkKTsKICAgICAgICB0aGlzLmdlbiA9IGl0LmdlbjsKICAgICAgICB0aGlzLmFsbEVycm9ycyA9IGl0LmFsbEVycm9yczsKICAgICAgICB0aGlzLmtleXdvcmQgPSBrZXl3b3JkOwogICAgICAgIHRoaXMuZGF0YSA9IGl0LmRhdGE7CiAgICAgICAgdGhpcy5zY2hlbWEgPSBpdC5zY2hlbWFba2V5d29yZF07CiAgICAgICAgdGhpcy4kZGF0YSA9IGRlZi4kZGF0YSAmJiBpdC5vcHRzLiRkYXRhICYmIHRoaXMuc2NoZW1hICYmIHRoaXMuc2NoZW1hLiRkYXRhOwogICAgICAgIHRoaXMuc2NoZW1hVmFsdWUgPSAoMCwgdXRpbF8xLnNjaGVtYVJlZk9yVmFsKShpdCwgdGhpcy5zY2hlbWEsIGtleXdvcmQsIHRoaXMuJGRhdGEpOwogICAgICAgIHRoaXMuc2NoZW1hVHlwZSA9IGRlZi5zY2hlbWFUeXBlOwogICAgICAgIHRoaXMucGFyZW50U2NoZW1hID0gaXQuc2NoZW1hOwogICAgICAgIHRoaXMucGFyYW1zID0ge307CiAgICAgICAgdGhpcy5pdCA9IGl0OwogICAgICAgIHRoaXMuZGVmID0gZGVmOwogICAgICAgIGlmICh0aGlzLiRkYXRhKSB7CiAgICAgICAgICB0aGlzLnNjaGVtYUNvZGUgPSBpdC5nZW4uY29uc3QoInZTY2hlbWEiLCBnZXREYXRhKHRoaXMuJGRhdGEsIGl0KSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuc2NoZW1hQ29kZSA9IHRoaXMuc2NoZW1hVmFsdWU7CiAgICAgICAgICBpZiAoISgwLCBrZXl3b3JkXzEudmFsaWRTY2hlbWFUeXBlKSh0aGlzLnNjaGVtYSwgZGVmLnNjaGVtYVR5cGUsIGRlZi5hbGxvd1VuZGVmaW5lZCkpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGAke2tleXdvcmR9IHZhbHVlIG11c3QgYmUgJHtKU09OLnN0cmluZ2lmeShkZWYuc2NoZW1hVHlwZSl9YCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmICgiY29kZSIgaW4gZGVmID8gZGVmLnRyYWNrRXJyb3JzIDogZGVmLmVycm9ycyAhPT0gZmFsc2UpIHsKICAgICAgICAgIHRoaXMuZXJyc0NvdW50ID0gaXQuZ2VuLmNvbnN0KCJfZXJycyIsIG5hbWVzXzEuZGVmYXVsdC5lcnJvcnMpOwogICAgICAgIH0KICAgICAgfQogICAgICByZXN1bHQoY29uZGl0aW9uLCBzdWNjZXNzQWN0aW9uLCBmYWlsQWN0aW9uKSB7CiAgICAgICAgdGhpcy5mYWlsUmVzdWx0KCgwLCBjb2RlZ2VuXzEubm90KShjb25kaXRpb24pLCBzdWNjZXNzQWN0aW9uLCBmYWlsQWN0aW9uKTsKICAgICAgfQogICAgICBmYWlsUmVzdWx0KGNvbmRpdGlvbiwgc3VjY2Vzc0FjdGlvbiwgZmFpbEFjdGlvbikgewogICAgICAgIHRoaXMuZ2VuLmlmKGNvbmRpdGlvbik7CiAgICAgICAgaWYgKGZhaWxBY3Rpb24pCiAgICAgICAgICBmYWlsQWN0aW9uKCk7CiAgICAgICAgZWxzZQogICAgICAgICAgdGhpcy5lcnJvcigpOwogICAgICAgIGlmIChzdWNjZXNzQWN0aW9uKSB7CiAgICAgICAgICB0aGlzLmdlbi5lbHNlKCk7CiAgICAgICAgICBzdWNjZXNzQWN0aW9uKCk7CiAgICAgICAgICBpZiAodGhpcy5hbGxFcnJvcnMpCiAgICAgICAgICAgIHRoaXMuZ2VuLmVuZElmKCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGlmICh0aGlzLmFsbEVycm9ycykKICAgICAgICAgICAgdGhpcy5nZW4uZW5kSWYoKTsKICAgICAgICAgIGVsc2UKICAgICAgICAgICAgdGhpcy5nZW4uZWxzZSgpOwogICAgICAgIH0KICAgICAgfQogICAgICBwYXNzKGNvbmRpdGlvbiwgZmFpbEFjdGlvbikgewogICAgICAgIHRoaXMuZmFpbFJlc3VsdCgoMCwgY29kZWdlbl8xLm5vdCkoY29uZGl0aW9uKSwgdm9pZCAwLCBmYWlsQWN0aW9uKTsKICAgICAgfQogICAgICBmYWlsKGNvbmRpdGlvbikgewogICAgICAgIGlmIChjb25kaXRpb24gPT09IHZvaWQgMCkgewogICAgICAgICAgdGhpcy5lcnJvcigpOwogICAgICAgICAgaWYgKCF0aGlzLmFsbEVycm9ycykKICAgICAgICAgICAgdGhpcy5nZW4uaWYoZmFsc2UpOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB0aGlzLmdlbi5pZihjb25kaXRpb24pOwogICAgICAgIHRoaXMuZXJyb3IoKTsKICAgICAgICBpZiAodGhpcy5hbGxFcnJvcnMpCiAgICAgICAgICB0aGlzLmdlbi5lbmRJZigpOwogICAgICAgIGVsc2UKICAgICAgICAgIHRoaXMuZ2VuLmVsc2UoKTsKICAgICAgfQogICAgICBmYWlsJGRhdGEoY29uZGl0aW9uKSB7CiAgICAgICAgaWYgKCF0aGlzLiRkYXRhKQogICAgICAgICAgcmV0dXJuIHRoaXMuZmFpbChjb25kaXRpb24pOwogICAgICAgIGNvbnN0IHsgc2NoZW1hQ29kZSB9ID0gdGhpczsKICAgICAgICB0aGlzLmZhaWwoKDAsIGNvZGVnZW5fMS5fKWAke3NjaGVtYUNvZGV9ICE9PSB1bmRlZmluZWQgJiYgKCR7KDAsIGNvZGVnZW5fMS5vcikodGhpcy5pbnZhbGlkJGRhdGEoKSwgY29uZGl0aW9uKX0pYCk7CiAgICAgIH0KICAgICAgZXJyb3IoYXBwZW5kLCBlcnJvclBhcmFtcywgZXJyb3JQYXRocykgewogICAgICAgIGlmIChlcnJvclBhcmFtcykgewogICAgICAgICAgdGhpcy5zZXRQYXJhbXMoZXJyb3JQYXJhbXMpOwogICAgICAgICAgdGhpcy5fZXJyb3IoYXBwZW5kLCBlcnJvclBhdGhzKTsKICAgICAgICAgIHRoaXMuc2V0UGFyYW1zKHt9KTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgdGhpcy5fZXJyb3IoYXBwZW5kLCBlcnJvclBhdGhzKTsKICAgICAgfQogICAgICBfZXJyb3IoYXBwZW5kLCBlcnJvclBhdGhzKSB7CiAgICAgICAgOwogICAgICAgIChhcHBlbmQgPyBlcnJvcnNfMS5yZXBvcnRFeHRyYUVycm9yIDogZXJyb3JzXzEucmVwb3J0RXJyb3IpKHRoaXMsIHRoaXMuZGVmLmVycm9yLCBlcnJvclBhdGhzKTsKICAgICAgfQogICAgICAkZGF0YUVycm9yKCkgewogICAgICAgICgwLCBlcnJvcnNfMS5yZXBvcnRFcnJvcikodGhpcywgdGhpcy5kZWYuJGRhdGFFcnJvciB8fCBlcnJvcnNfMS5rZXl3b3JkJERhdGFFcnJvcik7CiAgICAgIH0KICAgICAgcmVzZXQoKSB7CiAgICAgICAgaWYgKHRoaXMuZXJyc0NvdW50ID09PSB2b2lkIDApCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2FkZCAidHJhY2tFcnJvcnMiIHRvIGtleXdvcmQgZGVmaW5pdGlvbicpOwogICAgICAgICgwLCBlcnJvcnNfMS5yZXNldEVycm9yc0NvdW50KSh0aGlzLmdlbiwgdGhpcy5lcnJzQ291bnQpOwogICAgICB9CiAgICAgIG9rKGNvbmQpIHsKICAgICAgICBpZiAoIXRoaXMuYWxsRXJyb3JzKQogICAgICAgICAgdGhpcy5nZW4uaWYoY29uZCk7CiAgICAgIH0KICAgICAgc2V0UGFyYW1zKG9iaiwgYXNzaWduKSB7CiAgICAgICAgaWYgKGFzc2lnbikKICAgICAgICAgIE9iamVjdC5hc3NpZ24odGhpcy5wYXJhbXMsIG9iaik7CiAgICAgICAgZWxzZQogICAgICAgICAgdGhpcy5wYXJhbXMgPSBvYmo7CiAgICAgIH0KICAgICAgYmxvY2skZGF0YSh2YWxpZCwgY29kZUJsb2NrLCAkZGF0YVZhbGlkID0gY29kZWdlbl8xLm5pbCkgewogICAgICAgIHRoaXMuZ2VuLmJsb2NrKCgpID0+IHsKICAgICAgICAgIHRoaXMuY2hlY2skZGF0YSh2YWxpZCwgJGRhdGFWYWxpZCk7CiAgICAgICAgICBjb2RlQmxvY2soKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICBjaGVjayRkYXRhKHZhbGlkID0gY29kZWdlbl8xLm5pbCwgJGRhdGFWYWxpZCA9IGNvZGVnZW5fMS5uaWwpIHsKICAgICAgICBpZiAoIXRoaXMuJGRhdGEpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYUNvZGUsIHNjaGVtYVR5cGUsIGRlZiB9ID0gdGhpczsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5vcikoKDAsIGNvZGVnZW5fMS5fKWAke3NjaGVtYUNvZGV9ID09PSB1bmRlZmluZWRgLCAkZGF0YVZhbGlkKSk7CiAgICAgICAgaWYgKHZhbGlkICE9PSBjb2RlZ2VuXzEubmlsKQogICAgICAgICAgZ2VuLmFzc2lnbih2YWxpZCwgdHJ1ZSk7CiAgICAgICAgaWYgKHNjaGVtYVR5cGUubGVuZ3RoIHx8IGRlZi52YWxpZGF0ZVNjaGVtYSkgewogICAgICAgICAgZ2VuLmVsc2VJZih0aGlzLmludmFsaWQkZGF0YSgpKTsKICAgICAgICAgIHRoaXMuJGRhdGFFcnJvcigpOwogICAgICAgICAgaWYgKHZhbGlkICE9PSBjb2RlZ2VuXzEubmlsKQogICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSk7CiAgICAgICAgfQogICAgICAgIGdlbi5lbHNlKCk7CiAgICAgIH0KICAgICAgaW52YWxpZCRkYXRhKCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWFDb2RlLCBzY2hlbWFUeXBlLCBkZWYsIGl0IH0gPSB0aGlzOwogICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLm9yKSh3cm9uZyREYXRhVHlwZSgpLCBpbnZhbGlkJERhdGFTY2hlbWEoKSk7CiAgICAgICAgZnVuY3Rpb24gd3JvbmckRGF0YVR5cGUoKSB7CiAgICAgICAgICBpZiAoc2NoZW1hVHlwZS5sZW5ndGgpIHsKICAgICAgICAgICAgaWYgKCEoc2NoZW1hQ29kZSBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lKSkKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICAgICAgICBjb25zdCBzdCA9IEFycmF5LmlzQXJyYXkoc2NoZW1hVHlwZSkgPyBzY2hlbWFUeXBlIDogW3NjaGVtYVR5cGVdOwogICAgICAgICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5fKWAkeygwLCBkYXRhVHlwZV8yLmNoZWNrRGF0YVR5cGVzKShzdCwgc2NoZW1hQ29kZSwgaXQub3B0cy5zdHJpY3ROdW1iZXJzLCBkYXRhVHlwZV8yLkRhdGFUeXBlLldyb25nKX1gOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIGNvZGVnZW5fMS5uaWw7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGludmFsaWQkRGF0YVNjaGVtYSgpIHsKICAgICAgICAgIGlmIChkZWYudmFsaWRhdGVTY2hlbWEpIHsKICAgICAgICAgICAgY29uc3QgdmFsaWRhdGVTY2hlbWFSZWYgPSBnZW4uc2NvcGVWYWx1ZSgidmFsaWRhdGUkZGF0YSIsIHsgcmVmOiBkZWYudmFsaWRhdGVTY2hlbWEgfSk7CiAgICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCEke3ZhbGlkYXRlU2NoZW1hUmVmfSgke3NjaGVtYUNvZGV9KWA7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gY29kZWdlbl8xLm5pbDsKICAgICAgICB9CiAgICAgIH0KICAgICAgc3Vic2NoZW1hKGFwcGwsIHZhbGlkKSB7CiAgICAgICAgY29uc3Qgc3Vic2NoZW1hID0gKDAsIHN1YnNjaGVtYV8xLmdldFN1YnNjaGVtYSkodGhpcy5pdCwgYXBwbCk7CiAgICAgICAgKDAsIHN1YnNjaGVtYV8xLmV4dGVuZFN1YnNjaGVtYURhdGEpKHN1YnNjaGVtYSwgdGhpcy5pdCwgYXBwbCk7CiAgICAgICAgKDAsIHN1YnNjaGVtYV8xLmV4dGVuZFN1YnNjaGVtYU1vZGUpKHN1YnNjaGVtYSwgYXBwbCk7CiAgICAgICAgY29uc3QgbmV4dENvbnRleHQgPSB7IC4uLnRoaXMuaXQsIC4uLnN1YnNjaGVtYSwgaXRlbXM6IHZvaWQgMCwgcHJvcHM6IHZvaWQgMCB9OwogICAgICAgIHN1YnNjaGVtYUNvZGUobmV4dENvbnRleHQsIHZhbGlkKTsKICAgICAgICByZXR1cm4gbmV4dENvbnRleHQ7CiAgICAgIH0KICAgICAgbWVyZ2VFdmFsdWF0ZWQoc2NoZW1hQ3h0LCB0b05hbWUpIHsKICAgICAgICBjb25zdCB7IGl0LCBnZW4gfSA9IHRoaXM7CiAgICAgICAgaWYgKCFpdC5vcHRzLnVuZXZhbHVhdGVkKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGlmIChpdC5wcm9wcyAhPT0gdHJ1ZSAmJiBzY2hlbWFDeHQucHJvcHMgIT09IHZvaWQgMCkgewogICAgICAgICAgaXQucHJvcHMgPSB1dGlsXzEubWVyZ2VFdmFsdWF0ZWQucHJvcHMoZ2VuLCBzY2hlbWFDeHQucHJvcHMsIGl0LnByb3BzLCB0b05hbWUpOwogICAgICAgIH0KICAgICAgICBpZiAoaXQuaXRlbXMgIT09IHRydWUgJiYgc2NoZW1hQ3h0Lml0ZW1zICE9PSB2b2lkIDApIHsKICAgICAgICAgIGl0Lml0ZW1zID0gdXRpbF8xLm1lcmdlRXZhbHVhdGVkLml0ZW1zKGdlbiwgc2NoZW1hQ3h0Lml0ZW1zLCBpdC5pdGVtcywgdG9OYW1lKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgbWVyZ2VWYWxpZEV2YWx1YXRlZChzY2hlbWFDeHQsIHZhbGlkKSB7CiAgICAgICAgY29uc3QgeyBpdCwgZ2VuIH0gPSB0aGlzOwogICAgICAgIGlmIChpdC5vcHRzLnVuZXZhbHVhdGVkICYmIChpdC5wcm9wcyAhPT0gdHJ1ZSB8fCBpdC5pdGVtcyAhPT0gdHJ1ZSkpIHsKICAgICAgICAgIGdlbi5pZih2YWxpZCwgKCkgPT4gdGhpcy5tZXJnZUV2YWx1YXRlZChzY2hlbWFDeHQsIGNvZGVnZW5fMS5OYW1lKSk7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5LZXl3b3JkQ3h0ID0gS2V5d29yZEN4dDsKICAgIGZ1bmN0aW9uIGtleXdvcmRDb2RlKGl0LCBrZXl3b3JkLCBkZWYsIHJ1bGVUeXBlKSB7CiAgICAgIGNvbnN0IGN4dCA9IG5ldyBLZXl3b3JkQ3h0KGl0LCBkZWYsIGtleXdvcmQpOwogICAgICBpZiAoImNvZGUiIGluIGRlZikgewogICAgICAgIGRlZi5jb2RlKGN4dCwgcnVsZVR5cGUpOwogICAgICB9IGVsc2UgaWYgKGN4dC4kZGF0YSAmJiBkZWYudmFsaWRhdGUpIHsKICAgICAgICAoMCwga2V5d29yZF8xLmZ1bmNLZXl3b3JkQ29kZSkoY3h0LCBkZWYpOwogICAgICB9IGVsc2UgaWYgKCJtYWNybyIgaW4gZGVmKSB7CiAgICAgICAgKDAsIGtleXdvcmRfMS5tYWNyb0tleXdvcmRDb2RlKShjeHQsIGRlZik7CiAgICAgIH0gZWxzZSBpZiAoZGVmLmNvbXBpbGUgfHwgZGVmLnZhbGlkYXRlKSB7CiAgICAgICAgKDAsIGtleXdvcmRfMS5mdW5jS2V5d29yZENvZGUpKGN4dCwgZGVmKTsKICAgICAgfQogICAgfQogICAgdmFyIEpTT05fUE9JTlRFUiA9IC9eXC8oPzpbXn5dfH4wfH4xKSokLzsKICAgIHZhciBSRUxBVElWRV9KU09OX1BPSU5URVIgPSAvXihbMC05XSspKCN8XC8oPzpbXn5dfH4wfH4xKSopPyQvOwogICAgZnVuY3Rpb24gZ2V0RGF0YSgkZGF0YSwgeyBkYXRhTGV2ZWwsIGRhdGFOYW1lcywgZGF0YVBhdGhBcnIgfSkgewogICAgICBsZXQganNvblBvaW50ZXI7CiAgICAgIGxldCBkYXRhOwogICAgICBpZiAoJGRhdGEgPT09ICIiKQogICAgICAgIHJldHVybiBuYW1lc18xLmRlZmF1bHQucm9vdERhdGE7CiAgICAgIGlmICgkZGF0YVswXSA9PT0gIi8iKSB7CiAgICAgICAgaWYgKCFKU09OX1BPSU5URVIudGVzdCgkZGF0YSkpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgSlNPTi1wb2ludGVyOiAkeyRkYXRhfWApOwogICAgICAgIGpzb25Qb2ludGVyID0gJGRhdGE7CiAgICAgICAgZGF0YSA9IG5hbWVzXzEuZGVmYXVsdC5yb290RGF0YTsKICAgICAgfSBlbHNlIHsKICAgICAgICBjb25zdCBtYXRjaGVzID0gUkVMQVRJVkVfSlNPTl9QT0lOVEVSLmV4ZWMoJGRhdGEpOwogICAgICAgIGlmICghbWF0Y2hlcykKICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBKU09OLXBvaW50ZXI6ICR7JGRhdGF9YCk7CiAgICAgICAgY29uc3QgdXAgPSArbWF0Y2hlc1sxXTsKICAgICAgICBqc29uUG9pbnRlciA9IG1hdGNoZXNbMl07CiAgICAgICAgaWYgKGpzb25Qb2ludGVyID09PSAiIyIpIHsKICAgICAgICAgIGlmICh1cCA+PSBkYXRhTGV2ZWwpCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihlcnJvck1zZygicHJvcGVydHkvaW5kZXgiLCB1cCkpOwogICAgICAgICAgcmV0dXJuIGRhdGFQYXRoQXJyW2RhdGFMZXZlbCAtIHVwXTsKICAgICAgICB9CiAgICAgICAgaWYgKHVwID4gZGF0YUxldmVsKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGVycm9yTXNnKCJkYXRhIiwgdXApKTsKICAgICAgICBkYXRhID0gZGF0YU5hbWVzW2RhdGFMZXZlbCAtIHVwXTsKICAgICAgICBpZiAoIWpzb25Qb2ludGVyKQogICAgICAgICAgcmV0dXJuIGRhdGE7CiAgICAgIH0KICAgICAgbGV0IGV4cHIgPSBkYXRhOwogICAgICBjb25zdCBzZWdtZW50cyA9IGpzb25Qb2ludGVyLnNwbGl0KCIvIik7CiAgICAgIGZvciAoY29uc3Qgc2VnbWVudCBvZiBzZWdtZW50cykgewogICAgICAgIGlmIChzZWdtZW50KSB7CiAgICAgICAgICBkYXRhID0gKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KSgoMCwgdXRpbF8xLnVuZXNjYXBlSnNvblBvaW50ZXIpKHNlZ21lbnQpKX1gOwogICAgICAgICAgZXhwciA9ICgwLCBjb2RlZ2VuXzEuXylgJHtleHByfSAmJiAke2RhdGF9YDsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGV4cHI7CiAgICAgIGZ1bmN0aW9uIGVycm9yTXNnKHBvaW50ZXJUeXBlLCB1cCkgewogICAgICAgIHJldHVybiBgQ2Fubm90IGFjY2VzcyAke3BvaW50ZXJUeXBlfSAke3VwfSBsZXZlbHMgdXAsIGN1cnJlbnQgbGV2ZWwgaXMgJHtkYXRhTGV2ZWx9YDsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuZ2V0RGF0YSA9IGdldERhdGE7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9ydW50aW1lL3ZhbGlkYXRpb25fZXJyb3IuanMKdmFyIHJlcXVpcmVfdmFsaWRhdGlvbl9lcnJvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcnVudGltZS92YWxpZGF0aW9uX2Vycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgVmFsaWRhdGlvbkVycm9yID0gY2xhc3MgZXh0ZW5kcyBFcnJvciB7CiAgICAgIGNvbnN0cnVjdG9yKGVycm9ycykgewogICAgICAgIHN1cGVyKCJ2YWxpZGF0aW9uIGZhaWxlZCIpOwogICAgICAgIHRoaXMuZXJyb3JzID0gZXJyb3JzOwogICAgICAgIHRoaXMuYWp2ID0gdGhpcy52YWxpZGF0aW9uID0gdHJ1ZTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBWYWxpZGF0aW9uRXJyb3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb21waWxlL3JlZl9lcnJvci5qcwp2YXIgcmVxdWlyZV9yZWZfZXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvcmVmX2Vycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgcmVzb2x2ZV8xID0gcmVxdWlyZV9yZXNvbHZlKCk7CiAgICB2YXIgTWlzc2luZ1JlZkVycm9yID0gY2xhc3MgZXh0ZW5kcyBFcnJvciB7CiAgICAgIGNvbnN0cnVjdG9yKHJlc29sdmVyLCBiYXNlSWQsIHJlZiwgbXNnKSB7CiAgICAgICAgc3VwZXIobXNnIHx8IGBjYW4ndCByZXNvbHZlIHJlZmVyZW5jZSAke3JlZn0gZnJvbSBpZCAke2Jhc2VJZH1gKTsKICAgICAgICB0aGlzLm1pc3NpbmdSZWYgPSAoMCwgcmVzb2x2ZV8xLnJlc29sdmVVcmwpKHJlc29sdmVyLCBiYXNlSWQsIHJlZik7CiAgICAgICAgdGhpcy5taXNzaW5nU2NoZW1hID0gKDAsIHJlc29sdmVfMS5ub3JtYWxpemVJZCkoKDAsIHJlc29sdmVfMS5nZXRGdWxsUGF0aCkocmVzb2x2ZXIsIHRoaXMubWlzc2luZ1JlZikpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IE1pc3NpbmdSZWZFcnJvcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvbXBpbGUvaW5kZXguanMKdmFyIHJlcXVpcmVfY29tcGlsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvY29tcGlsZS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmVzb2x2ZVNjaGVtYSA9IGV4cG9ydHMyLmdldENvbXBpbGluZ1NjaGVtYSA9IGV4cG9ydHMyLnJlc29sdmVSZWYgPSBleHBvcnRzMi5jb21waWxlU2NoZW1hID0gZXhwb3J0czIuU2NoZW1hRW52ID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHZhbGlkYXRpb25fZXJyb3JfMSA9IHJlcXVpcmVfdmFsaWRhdGlvbl9lcnJvcigpOwogICAgdmFyIG5hbWVzXzEgPSByZXF1aXJlX25hbWVzKCk7CiAgICB2YXIgcmVzb2x2ZV8xID0gcmVxdWlyZV9yZXNvbHZlKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgdmFsaWRhdGVfMSA9IHJlcXVpcmVfdmFsaWRhdGUoKTsKICAgIHZhciBTY2hlbWFFbnYgPSBjbGFzcyB7CiAgICAgIGNvbnN0cnVjdG9yKGVudikgewogICAgICAgIHZhciBfYTsKICAgICAgICB0aGlzLnJlZnMgPSB7fTsKICAgICAgICB0aGlzLmR5bmFtaWNBbmNob3JzID0ge307CiAgICAgICAgbGV0IHNjaGVtYTsKICAgICAgICBpZiAodHlwZW9mIGVudi5zY2hlbWEgPT0gIm9iamVjdCIpCiAgICAgICAgICBzY2hlbWEgPSBlbnYuc2NoZW1hOwogICAgICAgIHRoaXMuc2NoZW1hID0gZW52LnNjaGVtYTsKICAgICAgICB0aGlzLnNjaGVtYUlkID0gZW52LnNjaGVtYUlkOwogICAgICAgIHRoaXMucm9vdCA9IGVudi5yb290IHx8IHRoaXM7CiAgICAgICAgdGhpcy5iYXNlSWQgPSAoX2EgPSBlbnYuYmFzZUlkKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiAoMCwgcmVzb2x2ZV8xLm5vcm1hbGl6ZUlkKShzY2hlbWEgPT09IG51bGwgfHwgc2NoZW1hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzY2hlbWFbZW52LnNjaGVtYUlkIHx8ICIkaWQiXSk7CiAgICAgICAgdGhpcy5zY2hlbWFQYXRoID0gZW52LnNjaGVtYVBhdGg7CiAgICAgICAgdGhpcy5sb2NhbFJlZnMgPSBlbnYubG9jYWxSZWZzOwogICAgICAgIHRoaXMubWV0YSA9IGVudi5tZXRhOwogICAgICAgIHRoaXMuJGFzeW5jID0gc2NoZW1hID09PSBudWxsIHx8IHNjaGVtYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2NoZW1hLiRhc3luYzsKICAgICAgICB0aGlzLnJlZnMgPSB7fTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNjaGVtYUVudiA9IFNjaGVtYUVudjsKICAgIGZ1bmN0aW9uIGNvbXBpbGVTY2hlbWEoc2NoKSB7CiAgICAgIGNvbnN0IF9zY2ggPSBnZXRDb21waWxpbmdTY2hlbWEuY2FsbCh0aGlzLCBzY2gpOwogICAgICBpZiAoX3NjaCkKICAgICAgICByZXR1cm4gX3NjaDsKICAgICAgY29uc3Qgcm9vdElkID0gKDAsIHJlc29sdmVfMS5nZXRGdWxsUGF0aCkodGhpcy5vcHRzLnVyaVJlc29sdmVyLCBzY2gucm9vdC5iYXNlSWQpOwogICAgICBjb25zdCB7IGVzNSwgbGluZXMgfSA9IHRoaXMub3B0cy5jb2RlOwogICAgICBjb25zdCB7IG93blByb3BlcnRpZXMgfSA9IHRoaXMub3B0czsKICAgICAgY29uc3QgZ2VuID0gbmV3IGNvZGVnZW5fMS5Db2RlR2VuKHRoaXMuc2NvcGUsIHsgZXM1LCBsaW5lcywgb3duUHJvcGVydGllcyB9KTsKICAgICAgbGV0IF9WYWxpZGF0aW9uRXJyb3I7CiAgICAgIGlmIChzY2guJGFzeW5jKSB7CiAgICAgICAgX1ZhbGlkYXRpb25FcnJvciA9IGdlbi5zY29wZVZhbHVlKCJFcnJvciIsIHsKICAgICAgICAgIHJlZjogdmFsaWRhdGlvbl9lcnJvcl8xLmRlZmF1bHQsCiAgICAgICAgICBjb2RlOiAoMCwgY29kZWdlbl8xLl8pYHJlcXVpcmUoImFqdi9kaXN0L3J1bnRpbWUvdmFsaWRhdGlvbl9lcnJvciIpLmRlZmF1bHRgCiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgY29uc3QgdmFsaWRhdGVOYW1lID0gZ2VuLnNjb3BlTmFtZSgidmFsaWRhdGUiKTsKICAgICAgc2NoLnZhbGlkYXRlTmFtZSA9IHZhbGlkYXRlTmFtZTsKICAgICAgY29uc3Qgc2NoZW1hQ3h0ID0gewogICAgICAgIGdlbiwKICAgICAgICBhbGxFcnJvcnM6IHRoaXMub3B0cy5hbGxFcnJvcnMsCiAgICAgICAgZGF0YTogbmFtZXNfMS5kZWZhdWx0LmRhdGEsCiAgICAgICAgcGFyZW50RGF0YTogbmFtZXNfMS5kZWZhdWx0LnBhcmVudERhdGEsCiAgICAgICAgcGFyZW50RGF0YVByb3BlcnR5OiBuYW1lc18xLmRlZmF1bHQucGFyZW50RGF0YVByb3BlcnR5LAogICAgICAgIGRhdGFOYW1lczogW25hbWVzXzEuZGVmYXVsdC5kYXRhXSwKICAgICAgICBkYXRhUGF0aEFycjogW2NvZGVnZW5fMS5uaWxdLAogICAgICAgIC8vIFRPRE8gY2FuIGl0cyBsZW5ndGggYmUgdXNlZCBhcyBkYXRhTGV2ZWwgaWYgbmlsIGlzIHJlbW92ZWQ/CiAgICAgICAgZGF0YUxldmVsOiAwLAogICAgICAgIGRhdGFUeXBlczogW10sCiAgICAgICAgZGVmaW5lZFByb3BlcnRpZXM6IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCksCiAgICAgICAgdG9wU2NoZW1hUmVmOiBnZW4uc2NvcGVWYWx1ZSgic2NoZW1hIiwgdGhpcy5vcHRzLmNvZGUuc291cmNlID09PSB0cnVlID8geyByZWY6IHNjaC5zY2hlbWEsIGNvZGU6ICgwLCBjb2RlZ2VuXzEuc3RyaW5naWZ5KShzY2guc2NoZW1hKSB9IDogeyByZWY6IHNjaC5zY2hlbWEgfSksCiAgICAgICAgdmFsaWRhdGVOYW1lLAogICAgICAgIFZhbGlkYXRpb25FcnJvcjogX1ZhbGlkYXRpb25FcnJvciwKICAgICAgICBzY2hlbWE6IHNjaC5zY2hlbWEsCiAgICAgICAgc2NoZW1hRW52OiBzY2gsCiAgICAgICAgcm9vdElkLAogICAgICAgIGJhc2VJZDogc2NoLmJhc2VJZCB8fCByb290SWQsCiAgICAgICAgc2NoZW1hUGF0aDogY29kZWdlbl8xLm5pbCwKICAgICAgICBlcnJTY2hlbWFQYXRoOiBzY2guc2NoZW1hUGF0aCB8fCAodGhpcy5vcHRzLmp0ZCA/ICIiIDogIiMiKSwKICAgICAgICBlcnJvclBhdGg6ICgwLCBjb2RlZ2VuXzEuXylgIiJgLAogICAgICAgIG9wdHM6IHRoaXMub3B0cywKICAgICAgICBzZWxmOiB0aGlzCiAgICAgIH07CiAgICAgIGxldCBzb3VyY2VDb2RlOwogICAgICB0cnkgewogICAgICAgIHRoaXMuX2NvbXBpbGF0aW9ucy5hZGQoc2NoKTsKICAgICAgICAoMCwgdmFsaWRhdGVfMS52YWxpZGF0ZUZ1bmN0aW9uQ29kZSkoc2NoZW1hQ3h0KTsKICAgICAgICBnZW4ub3B0aW1pemUodGhpcy5vcHRzLmNvZGUub3B0aW1pemUpOwogICAgICAgIGNvbnN0IHZhbGlkYXRlQ29kZSA9IGdlbi50b1N0cmluZygpOwogICAgICAgIHNvdXJjZUNvZGUgPSBgJHtnZW4uc2NvcGVSZWZzKG5hbWVzXzEuZGVmYXVsdC5zY29wZSl9cmV0dXJuICR7dmFsaWRhdGVDb2RlfWA7CiAgICAgICAgaWYgKHRoaXMub3B0cy5jb2RlLnByb2Nlc3MpCiAgICAgICAgICBzb3VyY2VDb2RlID0gdGhpcy5vcHRzLmNvZGUucHJvY2Vzcyhzb3VyY2VDb2RlLCBzY2gpOwogICAgICAgIGNvbnN0IG1ha2VWYWxpZGF0ZSA9IG5ldyBGdW5jdGlvbihgJHtuYW1lc18xLmRlZmF1bHQuc2VsZn1gLCBgJHtuYW1lc18xLmRlZmF1bHQuc2NvcGV9YCwgc291cmNlQ29kZSk7CiAgICAgICAgY29uc3QgdmFsaWRhdGUgPSBtYWtlVmFsaWRhdGUodGhpcywgdGhpcy5zY29wZS5nZXQoKSk7CiAgICAgICAgdGhpcy5zY29wZS52YWx1ZSh2YWxpZGF0ZU5hbWUsIHsgcmVmOiB2YWxpZGF0ZSB9KTsKICAgICAgICB2YWxpZGF0ZS5lcnJvcnMgPSBudWxsOwogICAgICAgIHZhbGlkYXRlLnNjaGVtYSA9IHNjaC5zY2hlbWE7CiAgICAgICAgdmFsaWRhdGUuc2NoZW1hRW52ID0gc2NoOwogICAgICAgIGlmIChzY2guJGFzeW5jKQogICAgICAgICAgdmFsaWRhdGUuJGFzeW5jID0gdHJ1ZTsKICAgICAgICBpZiAodGhpcy5vcHRzLmNvZGUuc291cmNlID09PSB0cnVlKSB7CiAgICAgICAgICB2YWxpZGF0ZS5zb3VyY2UgPSB7IHZhbGlkYXRlTmFtZSwgdmFsaWRhdGVDb2RlLCBzY29wZVZhbHVlczogZ2VuLl92YWx1ZXMgfTsKICAgICAgICB9CiAgICAgICAgaWYgKHRoaXMub3B0cy51bmV2YWx1YXRlZCkgewogICAgICAgICAgY29uc3QgeyBwcm9wcywgaXRlbXMgfSA9IHNjaGVtYUN4dDsKICAgICAgICAgIHZhbGlkYXRlLmV2YWx1YXRlZCA9IHsKICAgICAgICAgICAgcHJvcHM6IHByb3BzIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUgPyB2b2lkIDAgOiBwcm9wcywKICAgICAgICAgICAgaXRlbXM6IGl0ZW1zIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUgPyB2b2lkIDAgOiBpdGVtcywKICAgICAgICAgICAgZHluYW1pY1Byb3BzOiBwcm9wcyBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lLAogICAgICAgICAgICBkeW5hbWljSXRlbXM6IGl0ZW1zIGluc3RhbmNlb2YgY29kZWdlbl8xLk5hbWUKICAgICAgICAgIH07CiAgICAgICAgICBpZiAodmFsaWRhdGUuc291cmNlKQogICAgICAgICAgICB2YWxpZGF0ZS5zb3VyY2UuZXZhbHVhdGVkID0gKDAsIGNvZGVnZW5fMS5zdHJpbmdpZnkpKHZhbGlkYXRlLmV2YWx1YXRlZCk7CiAgICAgICAgfQogICAgICAgIHNjaC52YWxpZGF0ZSA9IHZhbGlkYXRlOwogICAgICAgIHJldHVybiBzY2g7CiAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICBkZWxldGUgc2NoLnZhbGlkYXRlOwogICAgICAgIGRlbGV0ZSBzY2gudmFsaWRhdGVOYW1lOwogICAgICAgIGlmIChzb3VyY2VDb2RlKQogICAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IoIkVycm9yIGNvbXBpbGluZyBzY2hlbWEsIGZ1bmN0aW9uIGNvZGU6Iiwgc291cmNlQ29kZSk7CiAgICAgICAgdGhyb3cgZTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0aGlzLl9jb21waWxhdGlvbnMuZGVsZXRlKHNjaCk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmNvbXBpbGVTY2hlbWEgPSBjb21waWxlU2NoZW1hOwogICAgZnVuY3Rpb24gcmVzb2x2ZVJlZihyb290LCBiYXNlSWQsIHJlZikgewogICAgICB2YXIgX2E7CiAgICAgIHJlZiA9ICgwLCByZXNvbHZlXzEucmVzb2x2ZVVybCkodGhpcy5vcHRzLnVyaVJlc29sdmVyLCBiYXNlSWQsIHJlZik7CiAgICAgIGNvbnN0IHNjaE9yRnVuYyA9IHJvb3QucmVmc1tyZWZdOwogICAgICBpZiAoc2NoT3JGdW5jKQogICAgICAgIHJldHVybiBzY2hPckZ1bmM7CiAgICAgIGxldCBfc2NoID0gcmVzb2x2ZS5jYWxsKHRoaXMsIHJvb3QsIHJlZik7CiAgICAgIGlmIChfc2NoID09PSB2b2lkIDApIHsKICAgICAgICBjb25zdCBzY2hlbWEgPSAoX2EgPSByb290LmxvY2FsUmVmcykgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hW3JlZl07CiAgICAgICAgY29uc3QgeyBzY2hlbWFJZCB9ID0gdGhpcy5vcHRzOwogICAgICAgIGlmIChzY2hlbWEpCiAgICAgICAgICBfc2NoID0gbmV3IFNjaGVtYUVudih7IHNjaGVtYSwgc2NoZW1hSWQsIHJvb3QsIGJhc2VJZCB9KTsKICAgICAgfQogICAgICBpZiAoX3NjaCA9PT0gdm9pZCAwKQogICAgICAgIHJldHVybjsKICAgICAgcmV0dXJuIHJvb3QucmVmc1tyZWZdID0gaW5saW5lT3JDb21waWxlLmNhbGwodGhpcywgX3NjaCk7CiAgICB9CiAgICBleHBvcnRzMi5yZXNvbHZlUmVmID0gcmVzb2x2ZVJlZjsKICAgIGZ1bmN0aW9uIGlubGluZU9yQ29tcGlsZShzY2gpIHsKICAgICAgaWYgKCgwLCByZXNvbHZlXzEuaW5saW5lUmVmKShzY2guc2NoZW1hLCB0aGlzLm9wdHMuaW5saW5lUmVmcykpCiAgICAgICAgcmV0dXJuIHNjaC5zY2hlbWE7CiAgICAgIHJldHVybiBzY2gudmFsaWRhdGUgPyBzY2ggOiBjb21waWxlU2NoZW1hLmNhbGwodGhpcywgc2NoKTsKICAgIH0KICAgIGZ1bmN0aW9uIGdldENvbXBpbGluZ1NjaGVtYShzY2hFbnYpIHsKICAgICAgZm9yIChjb25zdCBzY2ggb2YgdGhpcy5fY29tcGlsYXRpb25zKSB7CiAgICAgICAgaWYgKHNhbWVTY2hlbWFFbnYoc2NoLCBzY2hFbnYpKQogICAgICAgICAgcmV0dXJuIHNjaDsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuZ2V0Q29tcGlsaW5nU2NoZW1hID0gZ2V0Q29tcGlsaW5nU2NoZW1hOwogICAgZnVuY3Rpb24gc2FtZVNjaGVtYUVudihzMSwgczIpIHsKICAgICAgcmV0dXJuIHMxLnNjaGVtYSA9PT0gczIuc2NoZW1hICYmIHMxLnJvb3QgPT09IHMyLnJvb3QgJiYgczEuYmFzZUlkID09PSBzMi5iYXNlSWQ7CiAgICB9CiAgICBmdW5jdGlvbiByZXNvbHZlKHJvb3QsIHJlZikgewogICAgICBsZXQgc2NoOwogICAgICB3aGlsZSAodHlwZW9mIChzY2ggPSB0aGlzLnJlZnNbcmVmXSkgPT0gInN0cmluZyIpCiAgICAgICAgcmVmID0gc2NoOwogICAgICByZXR1cm4gc2NoIHx8IHRoaXMuc2NoZW1hc1tyZWZdIHx8IHJlc29sdmVTY2hlbWEuY2FsbCh0aGlzLCByb290LCByZWYpOwogICAgfQogICAgZnVuY3Rpb24gcmVzb2x2ZVNjaGVtYShyb290LCByZWYpIHsKICAgICAgY29uc3QgcCA9IHRoaXMub3B0cy51cmlSZXNvbHZlci5wYXJzZShyZWYpOwogICAgICBjb25zdCByZWZQYXRoID0gKDAsIHJlc29sdmVfMS5fZ2V0RnVsbFBhdGgpKHRoaXMub3B0cy51cmlSZXNvbHZlciwgcCk7CiAgICAgIGxldCBiYXNlSWQgPSAoMCwgcmVzb2x2ZV8xLmdldEZ1bGxQYXRoKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIHJvb3QuYmFzZUlkLCB2b2lkIDApOwogICAgICBpZiAoT2JqZWN0LmtleXMocm9vdC5zY2hlbWEpLmxlbmd0aCA+IDAgJiYgcmVmUGF0aCA9PT0gYmFzZUlkKSB7CiAgICAgICAgcmV0dXJuIGdldEpzb25Qb2ludGVyLmNhbGwodGhpcywgcCwgcm9vdCk7CiAgICAgIH0KICAgICAgY29uc3QgaWQgPSAoMCwgcmVzb2x2ZV8xLm5vcm1hbGl6ZUlkKShyZWZQYXRoKTsKICAgICAgY29uc3Qgc2NoT3JSZWYgPSB0aGlzLnJlZnNbaWRdIHx8IHRoaXMuc2NoZW1hc1tpZF07CiAgICAgIGlmICh0eXBlb2Ygc2NoT3JSZWYgPT0gInN0cmluZyIpIHsKICAgICAgICBjb25zdCBzY2ggPSByZXNvbHZlU2NoZW1hLmNhbGwodGhpcywgcm9vdCwgc2NoT3JSZWYpOwogICAgICAgIGlmICh0eXBlb2YgKHNjaCA9PT0gbnVsbCB8fCBzY2ggPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNjaC5zY2hlbWEpICE9PSAib2JqZWN0IikKICAgICAgICAgIHJldHVybjsKICAgICAgICByZXR1cm4gZ2V0SnNvblBvaW50ZXIuY2FsbCh0aGlzLCBwLCBzY2gpOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgKHNjaE9yUmVmID09PSBudWxsIHx8IHNjaE9yUmVmID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzY2hPclJlZi5zY2hlbWEpICE9PSAib2JqZWN0IikKICAgICAgICByZXR1cm47CiAgICAgIGlmICghc2NoT3JSZWYudmFsaWRhdGUpCiAgICAgICAgY29tcGlsZVNjaGVtYS5jYWxsKHRoaXMsIHNjaE9yUmVmKTsKICAgICAgaWYgKGlkID09PSAoMCwgcmVzb2x2ZV8xLm5vcm1hbGl6ZUlkKShyZWYpKSB7CiAgICAgICAgY29uc3QgeyBzY2hlbWEgfSA9IHNjaE9yUmVmOwogICAgICAgIGNvbnN0IHsgc2NoZW1hSWQgfSA9IHRoaXMub3B0czsKICAgICAgICBjb25zdCBzY2hJZCA9IHNjaGVtYVtzY2hlbWFJZF07CiAgICAgICAgaWYgKHNjaElkKQogICAgICAgICAgYmFzZUlkID0gKDAsIHJlc29sdmVfMS5yZXNvbHZlVXJsKSh0aGlzLm9wdHMudXJpUmVzb2x2ZXIsIGJhc2VJZCwgc2NoSWQpOwogICAgICAgIHJldHVybiBuZXcgU2NoZW1hRW52KHsgc2NoZW1hLCBzY2hlbWFJZCwgcm9vdCwgYmFzZUlkIH0pOwogICAgICB9CiAgICAgIHJldHVybiBnZXRKc29uUG9pbnRlci5jYWxsKHRoaXMsIHAsIHNjaE9yUmVmKTsKICAgIH0KICAgIGV4cG9ydHMyLnJlc29sdmVTY2hlbWEgPSByZXNvbHZlU2NoZW1hOwogICAgdmFyIFBSRVZFTlRfU0NPUEVfQ0hBTkdFID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoWwogICAgICAicHJvcGVydGllcyIsCiAgICAgICJwYXR0ZXJuUHJvcGVydGllcyIsCiAgICAgICJlbnVtIiwKICAgICAgImRlcGVuZGVuY2llcyIsCiAgICAgICJkZWZpbml0aW9ucyIKICAgIF0pOwogICAgZnVuY3Rpb24gZ2V0SnNvblBvaW50ZXIocGFyc2VkUmVmLCB7IGJhc2VJZCwgc2NoZW1hLCByb290IH0pIHsKICAgICAgdmFyIF9hOwogICAgICBpZiAoKChfYSA9IHBhcnNlZFJlZi5mcmFnbWVudCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hWzBdKSAhPT0gIi8iKQogICAgICAgIHJldHVybjsKICAgICAgZm9yIChjb25zdCBwYXJ0IG9mIHBhcnNlZFJlZi5mcmFnbWVudC5zbGljZSgxKS5zcGxpdCgiLyIpKSB7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEgPT09ICJib29sZWFuIikKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCBwYXJ0U2NoZW1hID0gc2NoZW1hWygwLCB1dGlsXzEudW5lc2NhcGVGcmFnbWVudCkocGFydCldOwogICAgICAgIGlmIChwYXJ0U2NoZW1hID09PSB2b2lkIDApCiAgICAgICAgICByZXR1cm47CiAgICAgICAgc2NoZW1hID0gcGFydFNjaGVtYTsKICAgICAgICBjb25zdCBzY2hJZCA9IHR5cGVvZiBzY2hlbWEgPT09ICJvYmplY3QiICYmIHNjaGVtYVt0aGlzLm9wdHMuc2NoZW1hSWRdOwogICAgICAgIGlmICghUFJFVkVOVF9TQ09QRV9DSEFOR0UuaGFzKHBhcnQpICYmIHNjaElkKSB7CiAgICAgICAgICBiYXNlSWQgPSAoMCwgcmVzb2x2ZV8xLnJlc29sdmVVcmwpKHRoaXMub3B0cy51cmlSZXNvbHZlciwgYmFzZUlkLCBzY2hJZCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGxldCBlbnY7CiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hICE9ICJib29sZWFuIiAmJiBzY2hlbWEuJHJlZiAmJiAhKDAsIHV0aWxfMS5zY2hlbWFIYXNSdWxlc0J1dFJlZikoc2NoZW1hLCB0aGlzLlJVTEVTKSkgewogICAgICAgIGNvbnN0ICRyZWYgPSAoMCwgcmVzb2x2ZV8xLnJlc29sdmVVcmwpKHRoaXMub3B0cy51cmlSZXNvbHZlciwgYmFzZUlkLCBzY2hlbWEuJHJlZik7CiAgICAgICAgZW52ID0gcmVzb2x2ZVNjaGVtYS5jYWxsKHRoaXMsIHJvb3QsICRyZWYpOwogICAgICB9CiAgICAgIGNvbnN0IHsgc2NoZW1hSWQgfSA9IHRoaXMub3B0czsKICAgICAgZW52ID0gZW52IHx8IG5ldyBTY2hlbWFFbnYoeyBzY2hlbWEsIHNjaGVtYUlkLCByb290LCBiYXNlSWQgfSk7CiAgICAgIGlmIChlbnYuc2NoZW1hICE9PSBlbnYucm9vdC5zY2hlbWEpCiAgICAgICAgcmV0dXJuIGVudjsKICAgICAgcmV0dXJuIHZvaWQgMDsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3JlZnMvZGF0YS5qc29uCnZhciByZXF1aXJlX2RhdGEgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3JlZnMvZGF0YS5qc29uIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgbW9kdWxlMi5leHBvcnRzID0gewogICAgICAkaWQ6ICJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vYWp2LXZhbGlkYXRvci9hanYvbWFzdGVyL2xpYi9yZWZzL2RhdGEuanNvbiMiLAogICAgICBkZXNjcmlwdGlvbjogIk1ldGEtc2NoZW1hIGZvciAkZGF0YSByZWZlcmVuY2UgKEpTT04gQW55U2NoZW1hIGV4dGVuc2lvbiBwcm9wb3NhbCkiLAogICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgcmVxdWlyZWQ6IFsiJGRhdGEiXSwKICAgICAgcHJvcGVydGllczogewogICAgICAgICRkYXRhOiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgICAgIGFueU9mOiBbeyBmb3JtYXQ6ICJyZWxhdGl2ZS1qc29uLXBvaW50ZXIiIH0sIHsgZm9ybWF0OiAianNvbi1wb2ludGVyIiB9XQogICAgICAgIH0KICAgICAgfSwKICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IGZhbHNlCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9mYXN0LXVyaS1ucG0tMy4wLjMtMDg3NDA3MjYyNS0xMC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtdXJpL2xpYi9zY29wZWRDaGFycy5qcwp2YXIgcmVxdWlyZV9zY29wZWRDaGFycyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9mYXN0LXVyaS1ucG0tMy4wLjMtMDg3NDA3MjYyNS0xMC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtdXJpL2xpYi9zY29wZWRDaGFycy5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBIRVggPSB7CiAgICAgIDA6IDAsCiAgICAgIDE6IDEsCiAgICAgIDI6IDIsCiAgICAgIDM6IDMsCiAgICAgIDQ6IDQsCiAgICAgIDU6IDUsCiAgICAgIDY6IDYsCiAgICAgIDc6IDcsCiAgICAgIDg6IDgsCiAgICAgIDk6IDksCiAgICAgIGE6IDEwLAogICAgICBBOiAxMCwKICAgICAgYjogMTEsCiAgICAgIEI6IDExLAogICAgICBjOiAxMiwKICAgICAgQzogMTIsCiAgICAgIGQ6IDEzLAogICAgICBEOiAxMywKICAgICAgZTogMTQsCiAgICAgIEU6IDE0LAogICAgICBmOiAxNSwKICAgICAgRjogMTUKICAgIH07CiAgICBtb2R1bGUyLmV4cG9ydHMgPSB7CiAgICAgIEhFWAogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvZmFzdC11cmktbnBtLTMuMC4zLTA4NzQwNzI2MjUtMTAuemlwL25vZGVfbW9kdWxlcy9mYXN0LXVyaS9saWIvdXRpbHMuanMKdmFyIHJlcXVpcmVfdXRpbHMyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtdXJpLW5wbS0zLjAuMy0wODc0MDcyNjI1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC11cmkvbGliL3V0aWxzLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIHsgSEVYIH0gPSByZXF1aXJlX3Njb3BlZENoYXJzKCk7CiAgICBmdW5jdGlvbiBub3JtYWxpemVJUHY0KGhvc3QpIHsKICAgICAgaWYgKGZpbmRUb2tlbihob3N0LCAiLiIpIDwgMykgewogICAgICAgIHJldHVybiB7IGhvc3QsIGlzSVBWNDogZmFsc2UgfTsKICAgICAgfQogICAgICBjb25zdCBtYXRjaGVzID0gaG9zdC5tYXRjaCgvXig/Oig/OjI1WzAtNV18MlswLTRdWzAtOV18MVswLTldWzAtOV18WzEtOV1bMC05XXxbMC05XSlcLil7M30oPzoyNVswLTVdfDJbMC00XVswLTldfDFbMC05XVswLTldfFsxLTldWzAtOV18WzAtOV0pJC91KSB8fCBbXTsKICAgICAgY29uc3QgW2FkZHJlc3NdID0gbWF0Y2hlczsKICAgICAgaWYgKGFkZHJlc3MpIHsKICAgICAgICByZXR1cm4geyBob3N0OiBzdHJpcExlYWRpbmdaZXJvcyhhZGRyZXNzLCAiLiIpLCBpc0lQVjQ6IHRydWUgfTsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4geyBob3N0LCBpc0lQVjQ6IGZhbHNlIH07CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIHN0cmluZ0FycmF5VG9IZXhTdHJpcHBlZChpbnB1dCwga2VlcFplcm8gPSBmYWxzZSkgewogICAgICBsZXQgYWNjID0gIiI7CiAgICAgIGxldCBzdHJpcCA9IHRydWU7CiAgICAgIGZvciAoY29uc3QgYyBvZiBpbnB1dCkgewogICAgICAgIGlmIChIRVhbY10gPT09IHZvaWQgMCkgcmV0dXJuIHZvaWQgMDsKICAgICAgICBpZiAoYyAhPT0gIjAiICYmIHN0cmlwID09PSB0cnVlKSBzdHJpcCA9IGZhbHNlOwogICAgICAgIGlmICghc3RyaXApIGFjYyArPSBjOwogICAgICB9CiAgICAgIGlmIChrZWVwWmVybyAmJiBhY2MubGVuZ3RoID09PSAwKSBhY2MgPSAiMCI7CiAgICAgIHJldHVybiBhY2M7CiAgICB9CiAgICBmdW5jdGlvbiBnZXRJUFY2KGlucHV0KSB7CiAgICAgIGxldCB0b2tlbkNvdW50ID0gMDsKICAgICAgY29uc3Qgb3V0cHV0ID0geyBlcnJvcjogZmFsc2UsIGFkZHJlc3M6ICIiLCB6b25lOiAiIiB9OwogICAgICBjb25zdCBhZGRyZXNzID0gW107CiAgICAgIGNvbnN0IGJ1ZmZlciA9IFtdOwogICAgICBsZXQgaXNab25lID0gZmFsc2U7CiAgICAgIGxldCBlbmRpcHY2RW5jb3VudGVyZWQgPSBmYWxzZTsKICAgICAgbGV0IGVuZElwdjYgPSBmYWxzZTsKICAgICAgZnVuY3Rpb24gY29uc3VtZSgpIHsKICAgICAgICBpZiAoYnVmZmVyLmxlbmd0aCkgewogICAgICAgICAgaWYgKGlzWm9uZSA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgY29uc3QgaGV4ID0gc3RyaW5nQXJyYXlUb0hleFN0cmlwcGVkKGJ1ZmZlcik7CiAgICAgICAgICAgIGlmIChoZXggIT09IHZvaWQgMCkgewogICAgICAgICAgICAgIGFkZHJlc3MucHVzaChoZXgpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIG91dHB1dC5lcnJvciA9IHRydWU7CiAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBidWZmZXIubGVuZ3RoID0gMDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0KICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpbnB1dC5sZW5ndGg7IGkrKykgewogICAgICAgIGNvbnN0IGN1cnNvciA9IGlucHV0W2ldOwogICAgICAgIGlmIChjdXJzb3IgPT09ICJbIiB8fCBjdXJzb3IgPT09ICJdIikgewogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmIChjdXJzb3IgPT09ICI6IikgewogICAgICAgICAgaWYgKGVuZGlwdjZFbmNvdW50ZXJlZCA9PT0gdHJ1ZSkgewogICAgICAgICAgICBlbmRJcHY2ID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICghY29uc3VtZSgpKSB7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgICAgdG9rZW5Db3VudCsrOwogICAgICAgICAgYWRkcmVzcy5wdXNoKCI6Iik7CiAgICAgICAgICBpZiAodG9rZW5Db3VudCA+IDcpIHsKICAgICAgICAgICAgb3V0cHV0LmVycm9yID0gdHJ1ZTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoaSAtIDEgPj0gMCAmJiBpbnB1dFtpIC0gMV0gPT09ICI6IikgewogICAgICAgICAgICBlbmRpcHY2RW5jb3VudGVyZWQgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgY29udGludWU7CiAgICAgICAgfSBlbHNlIGlmIChjdXJzb3IgPT09ICIlIikgewogICAgICAgICAgaWYgKCFjb25zdW1lKCkpIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBpc1pvbmUgPSB0cnVlOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBidWZmZXIucHVzaChjdXJzb3IpOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICB9CiAgICAgIGlmIChidWZmZXIubGVuZ3RoKSB7CiAgICAgICAgaWYgKGlzWm9uZSkgewogICAgICAgICAgb3V0cHV0LnpvbmUgPSBidWZmZXIuam9pbigiIik7CiAgICAgICAgfSBlbHNlIGlmIChlbmRJcHY2KSB7CiAgICAgICAgICBhZGRyZXNzLnB1c2goYnVmZmVyLmpvaW4oIiIpKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgYWRkcmVzcy5wdXNoKHN0cmluZ0FycmF5VG9IZXhTdHJpcHBlZChidWZmZXIpKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgb3V0cHV0LmFkZHJlc3MgPSBhZGRyZXNzLmpvaW4oIiIpOwogICAgICByZXR1cm4gb3V0cHV0OwogICAgfQogICAgZnVuY3Rpb24gbm9ybWFsaXplSVB2Nihob3N0LCBvcHRzID0ge30pIHsKICAgICAgaWYgKGZpbmRUb2tlbihob3N0LCAiOiIpIDwgMikgewogICAgICAgIHJldHVybiB7IGhvc3QsIGlzSVBWNjogZmFsc2UgfTsKICAgICAgfQogICAgICBjb25zdCBpcHY2ID0gZ2V0SVBWNihob3N0KTsKICAgICAgaWYgKCFpcHY2LmVycm9yKSB7CiAgICAgICAgbGV0IG5ld0hvc3QgPSBpcHY2LmFkZHJlc3M7CiAgICAgICAgbGV0IGVzY2FwZWRIb3N0ID0gaXB2Ni5hZGRyZXNzOwogICAgICAgIGlmIChpcHY2LnpvbmUpIHsKICAgICAgICAgIG5ld0hvc3QgKz0gIiUiICsgaXB2Ni56b25lOwogICAgICAgICAgZXNjYXBlZEhvc3QgKz0gIiUyNSIgKyBpcHY2LnpvbmU7CiAgICAgICAgfQogICAgICAgIHJldHVybiB7IGhvc3Q6IG5ld0hvc3QsIGVzY2FwZWRIb3N0LCBpc0lQVjY6IHRydWUgfTsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4geyBob3N0LCBpc0lQVjY6IGZhbHNlIH07CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIHN0cmlwTGVhZGluZ1plcm9zKHN0ciwgdG9rZW4pIHsKICAgICAgbGV0IG91dCA9ICIiOwogICAgICBsZXQgc2tpcCA9IHRydWU7CiAgICAgIGNvbnN0IGwgPSBzdHIubGVuZ3RoOwogICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGw7IGkrKykgewogICAgICAgIGNvbnN0IGMgPSBzdHJbaV07CiAgICAgICAgaWYgKGMgPT09ICIwIiAmJiBza2lwKSB7CiAgICAgICAgICBpZiAoaSArIDEgPD0gbCAmJiBzdHJbaSArIDFdID09PSB0b2tlbiB8fCBpICsgMSA9PT0gbCkgewogICAgICAgICAgICBvdXQgKz0gYzsKICAgICAgICAgICAgc2tpcCA9IGZhbHNlOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBpZiAoYyA9PT0gdG9rZW4pIHsKICAgICAgICAgICAgc2tpcCA9IHRydWU7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBza2lwID0gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICBvdXQgKz0gYzsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIG91dDsKICAgIH0KICAgIGZ1bmN0aW9uIGZpbmRUb2tlbihzdHIsIHRva2VuKSB7CiAgICAgIGxldCBpbmQgPSAwOwogICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHN0ci5sZW5ndGg7IGkrKykgewogICAgICAgIGlmIChzdHJbaV0gPT09IHRva2VuKSBpbmQrKzsKICAgICAgfQogICAgICByZXR1cm4gaW5kOwogICAgfQogICAgdmFyIFJEUzEgPSAvXlwuXC4/XC8vdTsKICAgIHZhciBSRFMyID0gL15cL1wuKD86XC98JCkvdTsKICAgIHZhciBSRFMzID0gL15cL1wuXC4oPzpcL3wkKS91OwogICAgdmFyIFJEUzUgPSAvXlwvPyg/Oi58XG4pKj8oPz1cL3wkKS91OwogICAgZnVuY3Rpb24gcmVtb3ZlRG90U2VnbWVudHMoaW5wdXQpIHsKICAgICAgY29uc3Qgb3V0cHV0ID0gW107CiAgICAgIHdoaWxlIChpbnB1dC5sZW5ndGgpIHsKICAgICAgICBpZiAoaW5wdXQubWF0Y2goUkRTMSkpIHsKICAgICAgICAgIGlucHV0ID0gaW5wdXQucmVwbGFjZShSRFMxLCAiIik7CiAgICAgICAgfSBlbHNlIGlmIChpbnB1dC5tYXRjaChSRFMyKSkgewogICAgICAgICAgaW5wdXQgPSBpbnB1dC5yZXBsYWNlKFJEUzIsICIvIik7CiAgICAgICAgfSBlbHNlIGlmIChpbnB1dC5tYXRjaChSRFMzKSkgewogICAgICAgICAgaW5wdXQgPSBpbnB1dC5yZXBsYWNlKFJEUzMsICIvIik7CiAgICAgICAgICBvdXRwdXQucG9wKCk7CiAgICAgICAgfSBlbHNlIGlmIChpbnB1dCA9PT0gIi4iIHx8IGlucHV0ID09PSAiLi4iKSB7CiAgICAgICAgICBpbnB1dCA9ICIiOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb25zdCBpbSA9IGlucHV0Lm1hdGNoKFJEUzUpOwogICAgICAgICAgaWYgKGltKSB7CiAgICAgICAgICAgIGNvbnN0IHMgPSBpbVswXTsKICAgICAgICAgICAgaW5wdXQgPSBpbnB1dC5zbGljZShzLmxlbmd0aCk7CiAgICAgICAgICAgIG91dHB1dC5wdXNoKHMpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJVbmV4cGVjdGVkIGRvdCBzZWdtZW50IGNvbmRpdGlvbiIpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gb3V0cHV0LmpvaW4oIiIpOwogICAgfQogICAgZnVuY3Rpb24gbm9ybWFsaXplQ29tcG9uZW50RW5jb2RpbmcoY29tcG9uZW50cywgZXNjKSB7CiAgICAgIGNvbnN0IGZ1bmMgPSBlc2MgIT09IHRydWUgPyBlc2NhcGUgOiB1bmVzY2FwZTsKICAgICAgaWYgKGNvbXBvbmVudHMuc2NoZW1lICE9PSB2b2lkIDApIHsKICAgICAgICBjb21wb25lbnRzLnNjaGVtZSA9IGZ1bmMoY29tcG9uZW50cy5zY2hlbWUpOwogICAgICB9CiAgICAgIGlmIChjb21wb25lbnRzLnVzZXJpbmZvICE9PSB2b2lkIDApIHsKICAgICAgICBjb21wb25lbnRzLnVzZXJpbmZvID0gZnVuYyhjb21wb25lbnRzLnVzZXJpbmZvKTsKICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5ob3N0ICE9PSB2b2lkIDApIHsKICAgICAgICBjb21wb25lbnRzLmhvc3QgPSBmdW5jKGNvbXBvbmVudHMuaG9zdCk7CiAgICAgIH0KICAgICAgaWYgKGNvbXBvbmVudHMucGF0aCAhPT0gdm9pZCAwKSB7CiAgICAgICAgY29tcG9uZW50cy5wYXRoID0gZnVuYyhjb21wb25lbnRzLnBhdGgpOwogICAgICB9CiAgICAgIGlmIChjb21wb25lbnRzLnF1ZXJ5ICE9PSB2b2lkIDApIHsKICAgICAgICBjb21wb25lbnRzLnF1ZXJ5ID0gZnVuYyhjb21wb25lbnRzLnF1ZXJ5KTsKICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5mcmFnbWVudCAhPT0gdm9pZCAwKSB7CiAgICAgICAgY29tcG9uZW50cy5mcmFnbWVudCA9IGZ1bmMoY29tcG9uZW50cy5mcmFnbWVudCk7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiByZWNvbXBvc2VBdXRob3JpdHkoY29tcG9uZW50cywgb3B0aW9ucykgewogICAgICBjb25zdCB1cmlUb2tlbnMgPSBbXTsKICAgICAgaWYgKGNvbXBvbmVudHMudXNlcmluZm8gIT09IHZvaWQgMCkgewogICAgICAgIHVyaVRva2Vucy5wdXNoKGNvbXBvbmVudHMudXNlcmluZm8pOwogICAgICAgIHVyaVRva2Vucy5wdXNoKCJAIik7CiAgICAgIH0KICAgICAgaWYgKGNvbXBvbmVudHMuaG9zdCAhPT0gdm9pZCAwKSB7CiAgICAgICAgbGV0IGhvc3QgPSB1bmVzY2FwZShjb21wb25lbnRzLmhvc3QpOwogICAgICAgIGNvbnN0IGlwVjRyZXMgPSBub3JtYWxpemVJUHY0KGhvc3QpOwogICAgICAgIGlmIChpcFY0cmVzLmlzSVBWNCkgewogICAgICAgICAgaG9zdCA9IGlwVjRyZXMuaG9zdDsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgY29uc3QgaXBWNnJlcyA9IG5vcm1hbGl6ZUlQdjYoaXBWNHJlcy5ob3N0LCB7IGlzSVBWNDogZmFsc2UgfSk7CiAgICAgICAgICBpZiAoaXBWNnJlcy5pc0lQVjYgPT09IHRydWUpIHsKICAgICAgICAgICAgaG9zdCA9IGBbJHtpcFY2cmVzLmVzY2FwZWRIb3N0fV1gOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaG9zdCA9IGNvbXBvbmVudHMuaG9zdDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgdXJpVG9rZW5zLnB1c2goaG9zdCk7CiAgICAgIH0KICAgICAgaWYgKHR5cGVvZiBjb21wb25lbnRzLnBvcnQgPT09ICJudW1iZXIiIHx8IHR5cGVvZiBjb21wb25lbnRzLnBvcnQgPT09ICJzdHJpbmciKSB7CiAgICAgICAgdXJpVG9rZW5zLnB1c2goIjoiKTsKICAgICAgICB1cmlUb2tlbnMucHVzaChTdHJpbmcoY29tcG9uZW50cy5wb3J0KSk7CiAgICAgIH0KICAgICAgcmV0dXJuIHVyaVRva2Vucy5sZW5ndGggPyB1cmlUb2tlbnMuam9pbigiIikgOiB2b2lkIDA7CiAgICB9CiAgICBtb2R1bGUyLmV4cG9ydHMgPSB7CiAgICAgIHJlY29tcG9zZUF1dGhvcml0eSwKICAgICAgbm9ybWFsaXplQ29tcG9uZW50RW5jb2RpbmcsCiAgICAgIHJlbW92ZURvdFNlZ21lbnRzLAogICAgICBub3JtYWxpemVJUHY0LAogICAgICBub3JtYWxpemVJUHY2LAogICAgICBzdHJpbmdBcnJheVRvSGV4U3RyaXBwZWQKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtdXJpLW5wbS0zLjAuMy0wODc0MDcyNjI1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC11cmkvbGliL3NjaGVtZXMuanMKdmFyIHJlcXVpcmVfc2NoZW1lcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9mYXN0LXVyaS1ucG0tMy4wLjMtMDg3NDA3MjYyNS0xMC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtdXJpL2xpYi9zY2hlbWVzLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIFVVSURfUkVHID0gL15bXGRhLWZdezh9XGItW1xkYS1mXXs0fVxiLVtcZGEtZl17NH1cYi1bXGRhLWZdezR9XGItW1xkYS1mXXsxMn0kL2l1OwogICAgdmFyIFVSTl9SRUcgPSAvKFtcZGEtel1bXGRcLWEtel17MCwzMX0pOigoPzpbXHchJCcoKSorLFwtLjo7PUBdfCVbXGRhLWZdezJ9KSspL2l1OwogICAgZnVuY3Rpb24gaXNTZWN1cmUod3NDb21wb25lbnRzKSB7CiAgICAgIHJldHVybiB0eXBlb2Ygd3NDb21wb25lbnRzLnNlY3VyZSA9PT0gImJvb2xlYW4iID8gd3NDb21wb25lbnRzLnNlY3VyZSA6IFN0cmluZyh3c0NvbXBvbmVudHMuc2NoZW1lKS50b0xvd2VyQ2FzZSgpID09PSAid3NzIjsKICAgIH0KICAgIGZ1bmN0aW9uIGh0dHBQYXJzZShjb21wb25lbnRzKSB7CiAgICAgIGlmICghY29tcG9uZW50cy5ob3N0KSB7CiAgICAgICAgY29tcG9uZW50cy5lcnJvciA9IGNvbXBvbmVudHMuZXJyb3IgfHwgIkhUVFAgVVJJcyBtdXN0IGhhdmUgYSBob3N0LiI7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiBodHRwU2VyaWFsaXplKGNvbXBvbmVudHMpIHsKICAgICAgY29uc3Qgc2VjdXJlID0gU3RyaW5nKGNvbXBvbmVudHMuc2NoZW1lKS50b0xvd2VyQ2FzZSgpID09PSAiaHR0cHMiOwogICAgICBpZiAoY29tcG9uZW50cy5wb3J0ID09PSAoc2VjdXJlID8gNDQzIDogODApIHx8IGNvbXBvbmVudHMucG9ydCA9PT0gIiIpIHsKICAgICAgICBjb21wb25lbnRzLnBvcnQgPSB2b2lkIDA7CiAgICAgIH0KICAgICAgaWYgKCFjb21wb25lbnRzLnBhdGgpIHsKICAgICAgICBjb21wb25lbnRzLnBhdGggPSAiLyI7CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiB3c1BhcnNlKHdzQ29tcG9uZW50cykgewogICAgICB3c0NvbXBvbmVudHMuc2VjdXJlID0gaXNTZWN1cmUod3NDb21wb25lbnRzKTsKICAgICAgd3NDb21wb25lbnRzLnJlc291cmNlTmFtZSA9ICh3c0NvbXBvbmVudHMucGF0aCB8fCAiLyIpICsgKHdzQ29tcG9uZW50cy5xdWVyeSA/ICI/IiArIHdzQ29tcG9uZW50cy5xdWVyeSA6ICIiKTsKICAgICAgd3NDb21wb25lbnRzLnBhdGggPSB2b2lkIDA7CiAgICAgIHdzQ29tcG9uZW50cy5xdWVyeSA9IHZvaWQgMDsKICAgICAgcmV0dXJuIHdzQ29tcG9uZW50czsKICAgIH0KICAgIGZ1bmN0aW9uIHdzU2VyaWFsaXplKHdzQ29tcG9uZW50cykgewogICAgICBpZiAod3NDb21wb25lbnRzLnBvcnQgPT09IChpc1NlY3VyZSh3c0NvbXBvbmVudHMpID8gNDQzIDogODApIHx8IHdzQ29tcG9uZW50cy5wb3J0ID09PSAiIikgewogICAgICAgIHdzQ29tcG9uZW50cy5wb3J0ID0gdm9pZCAwOwogICAgICB9CiAgICAgIGlmICh0eXBlb2Ygd3NDb21wb25lbnRzLnNlY3VyZSA9PT0gImJvb2xlYW4iKSB7CiAgICAgICAgd3NDb21wb25lbnRzLnNjaGVtZSA9IHdzQ29tcG9uZW50cy5zZWN1cmUgPyAid3NzIiA6ICJ3cyI7CiAgICAgICAgd3NDb21wb25lbnRzLnNlY3VyZSA9IHZvaWQgMDsKICAgICAgfQogICAgICBpZiAod3NDb21wb25lbnRzLnJlc291cmNlTmFtZSkgewogICAgICAgIGNvbnN0IFtwYXRoLCBxdWVyeV0gPSB3c0NvbXBvbmVudHMucmVzb3VyY2VOYW1lLnNwbGl0KCI/Iik7CiAgICAgICAgd3NDb21wb25lbnRzLnBhdGggPSBwYXRoICYmIHBhdGggIT09ICIvIiA/IHBhdGggOiB2b2lkIDA7CiAgICAgICAgd3NDb21wb25lbnRzLnF1ZXJ5ID0gcXVlcnk7CiAgICAgICAgd3NDb21wb25lbnRzLnJlc291cmNlTmFtZSA9IHZvaWQgMDsKICAgICAgfQogICAgICB3c0NvbXBvbmVudHMuZnJhZ21lbnQgPSB2b2lkIDA7CiAgICAgIHJldHVybiB3c0NvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiB1cm5QYXJzZSh1cm5Db21wb25lbnRzLCBvcHRpb25zKSB7CiAgICAgIGlmICghdXJuQ29tcG9uZW50cy5wYXRoKSB7CiAgICAgICAgdXJuQ29tcG9uZW50cy5lcnJvciA9ICJVUk4gY2FuIG5vdCBiZSBwYXJzZWQiOwogICAgICAgIHJldHVybiB1cm5Db21wb25lbnRzOwogICAgICB9CiAgICAgIGNvbnN0IG1hdGNoZXMgPSB1cm5Db21wb25lbnRzLnBhdGgubWF0Y2goVVJOX1JFRyk7CiAgICAgIGlmIChtYXRjaGVzKSB7CiAgICAgICAgY29uc3Qgc2NoZW1lID0gb3B0aW9ucy5zY2hlbWUgfHwgdXJuQ29tcG9uZW50cy5zY2hlbWUgfHwgInVybiI7CiAgICAgICAgdXJuQ29tcG9uZW50cy5uaWQgPSBtYXRjaGVzWzFdLnRvTG93ZXJDYXNlKCk7CiAgICAgICAgdXJuQ29tcG9uZW50cy5uc3MgPSBtYXRjaGVzWzJdOwogICAgICAgIGNvbnN0IHVyblNjaGVtZSA9IGAke3NjaGVtZX06JHtvcHRpb25zLm5pZCB8fCB1cm5Db21wb25lbnRzLm5pZH1gOwogICAgICAgIGNvbnN0IHNjaGVtZUhhbmRsZXIgPSBTQ0hFTUVTW3VyblNjaGVtZV07CiAgICAgICAgdXJuQ29tcG9uZW50cy5wYXRoID0gdm9pZCAwOwogICAgICAgIGlmIChzY2hlbWVIYW5kbGVyKSB7CiAgICAgICAgICB1cm5Db21wb25lbnRzID0gc2NoZW1lSGFuZGxlci5wYXJzZSh1cm5Db21wb25lbnRzLCBvcHRpb25zKTsKICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdXJuQ29tcG9uZW50cy5lcnJvciA9IHVybkNvbXBvbmVudHMuZXJyb3IgfHwgIlVSTiBjYW4gbm90IGJlIHBhcnNlZC4iOwogICAgICB9CiAgICAgIHJldHVybiB1cm5Db21wb25lbnRzOwogICAgfQogICAgZnVuY3Rpb24gdXJuU2VyaWFsaXplKHVybkNvbXBvbmVudHMsIG9wdGlvbnMpIHsKICAgICAgY29uc3Qgc2NoZW1lID0gb3B0aW9ucy5zY2hlbWUgfHwgdXJuQ29tcG9uZW50cy5zY2hlbWUgfHwgInVybiI7CiAgICAgIGNvbnN0IG5pZCA9IHVybkNvbXBvbmVudHMubmlkLnRvTG93ZXJDYXNlKCk7CiAgICAgIGNvbnN0IHVyblNjaGVtZSA9IGAke3NjaGVtZX06JHtvcHRpb25zLm5pZCB8fCBuaWR9YDsKICAgICAgY29uc3Qgc2NoZW1lSGFuZGxlciA9IFNDSEVNRVNbdXJuU2NoZW1lXTsKICAgICAgaWYgKHNjaGVtZUhhbmRsZXIpIHsKICAgICAgICB1cm5Db21wb25lbnRzID0gc2NoZW1lSGFuZGxlci5zZXJpYWxpemUodXJuQ29tcG9uZW50cywgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgY29uc3QgdXJpQ29tcG9uZW50cyA9IHVybkNvbXBvbmVudHM7CiAgICAgIGNvbnN0IG5zcyA9IHVybkNvbXBvbmVudHMubnNzOwogICAgICB1cmlDb21wb25lbnRzLnBhdGggPSBgJHtuaWQgfHwgb3B0aW9ucy5uaWR9OiR7bnNzfWA7CiAgICAgIG9wdGlvbnMuc2tpcEVzY2FwZSA9IHRydWU7CiAgICAgIHJldHVybiB1cmlDb21wb25lbnRzOwogICAgfQogICAgZnVuY3Rpb24gdXJudXVpZFBhcnNlKHVybkNvbXBvbmVudHMsIG9wdGlvbnMpIHsKICAgICAgY29uc3QgdXVpZENvbXBvbmVudHMgPSB1cm5Db21wb25lbnRzOwogICAgICB1dWlkQ29tcG9uZW50cy51dWlkID0gdXVpZENvbXBvbmVudHMubnNzOwogICAgICB1dWlkQ29tcG9uZW50cy5uc3MgPSB2b2lkIDA7CiAgICAgIGlmICghb3B0aW9ucy50b2xlcmFudCAmJiAoIXV1aWRDb21wb25lbnRzLnV1aWQgfHwgIVVVSURfUkVHLnRlc3QodXVpZENvbXBvbmVudHMudXVpZCkpKSB7CiAgICAgICAgdXVpZENvbXBvbmVudHMuZXJyb3IgPSB1dWlkQ29tcG9uZW50cy5lcnJvciB8fCAiVVVJRCBpcyBub3QgdmFsaWQuIjsKICAgICAgfQogICAgICByZXR1cm4gdXVpZENvbXBvbmVudHM7CiAgICB9CiAgICBmdW5jdGlvbiB1cm51dWlkU2VyaWFsaXplKHV1aWRDb21wb25lbnRzKSB7CiAgICAgIGNvbnN0IHVybkNvbXBvbmVudHMgPSB1dWlkQ29tcG9uZW50czsKICAgICAgdXJuQ29tcG9uZW50cy5uc3MgPSAodXVpZENvbXBvbmVudHMudXVpZCB8fCAiIikudG9Mb3dlckNhc2UoKTsKICAgICAgcmV0dXJuIHVybkNvbXBvbmVudHM7CiAgICB9CiAgICB2YXIgaHR0cCA9IHsKICAgICAgc2NoZW1lOiAiaHR0cCIsCiAgICAgIGRvbWFpbkhvc3Q6IHRydWUsCiAgICAgIHBhcnNlOiBodHRwUGFyc2UsCiAgICAgIHNlcmlhbGl6ZTogaHR0cFNlcmlhbGl6ZQogICAgfTsKICAgIHZhciBodHRwcyA9IHsKICAgICAgc2NoZW1lOiAiaHR0cHMiLAogICAgICBkb21haW5Ib3N0OiBodHRwLmRvbWFpbkhvc3QsCiAgICAgIHBhcnNlOiBodHRwUGFyc2UsCiAgICAgIHNlcmlhbGl6ZTogaHR0cFNlcmlhbGl6ZQogICAgfTsKICAgIHZhciB3cyA9IHsKICAgICAgc2NoZW1lOiAid3MiLAogICAgICBkb21haW5Ib3N0OiB0cnVlLAogICAgICBwYXJzZTogd3NQYXJzZSwKICAgICAgc2VyaWFsaXplOiB3c1NlcmlhbGl6ZQogICAgfTsKICAgIHZhciB3c3MgPSB7CiAgICAgIHNjaGVtZTogIndzcyIsCiAgICAgIGRvbWFpbkhvc3Q6IHdzLmRvbWFpbkhvc3QsCiAgICAgIHBhcnNlOiB3cy5wYXJzZSwKICAgICAgc2VyaWFsaXplOiB3cy5zZXJpYWxpemUKICAgIH07CiAgICB2YXIgdXJuID0gewogICAgICBzY2hlbWU6ICJ1cm4iLAogICAgICBwYXJzZTogdXJuUGFyc2UsCiAgICAgIHNlcmlhbGl6ZTogdXJuU2VyaWFsaXplLAogICAgICBza2lwTm9ybWFsaXplOiB0cnVlCiAgICB9OwogICAgdmFyIHVybnV1aWQgPSB7CiAgICAgIHNjaGVtZTogInVybjp1dWlkIiwKICAgICAgcGFyc2U6IHVybnV1aWRQYXJzZSwKICAgICAgc2VyaWFsaXplOiB1cm51dWlkU2VyaWFsaXplLAogICAgICBza2lwTm9ybWFsaXplOiB0cnVlCiAgICB9OwogICAgdmFyIFNDSEVNRVMgPSB7CiAgICAgIGh0dHAsCiAgICAgIGh0dHBzLAogICAgICB3cywKICAgICAgd3NzLAogICAgICB1cm4sCiAgICAgICJ1cm46dXVpZCI6IHVybnV1aWQKICAgIH07CiAgICBtb2R1bGUyLmV4cG9ydHMgPSBTQ0hFTUVTOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9mYXN0LXVyaS1ucG0tMy4wLjMtMDg3NDA3MjYyNS0xMC56aXAvbm9kZV9tb2R1bGVzL2Zhc3QtdXJpL2luZGV4LmpzCnZhciByZXF1aXJlX2Zhc3RfdXJpID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Zhc3QtdXJpLW5wbS0zLjAuMy0wODc0MDcyNjI1LTEwLnppcC9ub2RlX21vZHVsZXMvZmFzdC11cmkvaW5kZXguanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgeyBub3JtYWxpemVJUHY2LCBub3JtYWxpemVJUHY0LCByZW1vdmVEb3RTZWdtZW50cywgcmVjb21wb3NlQXV0aG9yaXR5LCBub3JtYWxpemVDb21wb25lbnRFbmNvZGluZyB9ID0gcmVxdWlyZV91dGlsczIoKTsKICAgIHZhciBTQ0hFTUVTID0gcmVxdWlyZV9zY2hlbWVzKCk7CiAgICBmdW5jdGlvbiBub3JtYWxpemUodXJpLCBvcHRpb25zKSB7CiAgICAgIGlmICh0eXBlb2YgdXJpID09PSAic3RyaW5nIikgewogICAgICAgIHVyaSA9IHNlcmlhbGl6ZShwYXJzZSh1cmksIG9wdGlvbnMpLCBvcHRpb25zKTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgdXJpID09PSAib2JqZWN0IikgewogICAgICAgIHVyaSA9IHBhcnNlKHNlcmlhbGl6ZSh1cmksIG9wdGlvbnMpLCBvcHRpb25zKTsKICAgICAgfQogICAgICByZXR1cm4gdXJpOwogICAgfQogICAgZnVuY3Rpb24gcmVzb2x2ZShiYXNlVVJJLCByZWxhdGl2ZVVSSSwgb3B0aW9ucykgewogICAgICBjb25zdCBzY2hlbWVsZXNzT3B0aW9ucyA9IE9iamVjdC5hc3NpZ24oeyBzY2hlbWU6ICJudWxsIiB9LCBvcHRpb25zKTsKICAgICAgY29uc3QgcmVzb2x2ZWQgPSByZXNvbHZlQ29tcG9uZW50cyhwYXJzZShiYXNlVVJJLCBzY2hlbWVsZXNzT3B0aW9ucyksIHBhcnNlKHJlbGF0aXZlVVJJLCBzY2hlbWVsZXNzT3B0aW9ucyksIHNjaGVtZWxlc3NPcHRpb25zLCB0cnVlKTsKICAgICAgcmV0dXJuIHNlcmlhbGl6ZShyZXNvbHZlZCwgeyAuLi5zY2hlbWVsZXNzT3B0aW9ucywgc2tpcEVzY2FwZTogdHJ1ZSB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIHJlc29sdmVDb21wb25lbnRzKGJhc2UsIHJlbGF0aXZlLCBvcHRpb25zLCBza2lwTm9ybWFsaXphdGlvbikgewogICAgICBjb25zdCB0YXJnZXQgPSB7fTsKICAgICAgaWYgKCFza2lwTm9ybWFsaXphdGlvbikgewogICAgICAgIGJhc2UgPSBwYXJzZShzZXJpYWxpemUoYmFzZSwgb3B0aW9ucyksIG9wdGlvbnMpOwogICAgICAgIHJlbGF0aXZlID0gcGFyc2Uoc2VyaWFsaXplKHJlbGF0aXZlLCBvcHRpb25zKSwgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307CiAgICAgIGlmICghb3B0aW9ucy50b2xlcmFudCAmJiByZWxhdGl2ZS5zY2hlbWUpIHsKICAgICAgICB0YXJnZXQuc2NoZW1lID0gcmVsYXRpdmUuc2NoZW1lOwogICAgICAgIHRhcmdldC51c2VyaW5mbyA9IHJlbGF0aXZlLnVzZXJpbmZvOwogICAgICAgIHRhcmdldC5ob3N0ID0gcmVsYXRpdmUuaG9zdDsKICAgICAgICB0YXJnZXQucG9ydCA9IHJlbGF0aXZlLnBvcnQ7CiAgICAgICAgdGFyZ2V0LnBhdGggPSByZW1vdmVEb3RTZWdtZW50cyhyZWxhdGl2ZS5wYXRoIHx8ICIiKTsKICAgICAgICB0YXJnZXQucXVlcnkgPSByZWxhdGl2ZS5xdWVyeTsKICAgICAgfSBlbHNlIHsKICAgICAgICBpZiAocmVsYXRpdmUudXNlcmluZm8gIT09IHZvaWQgMCB8fCByZWxhdGl2ZS5ob3N0ICE9PSB2b2lkIDAgfHwgcmVsYXRpdmUucG9ydCAhPT0gdm9pZCAwKSB7CiAgICAgICAgICB0YXJnZXQudXNlcmluZm8gPSByZWxhdGl2ZS51c2VyaW5mbzsKICAgICAgICAgIHRhcmdldC5ob3N0ID0gcmVsYXRpdmUuaG9zdDsKICAgICAgICAgIHRhcmdldC5wb3J0ID0gcmVsYXRpdmUucG9ydDsKICAgICAgICAgIHRhcmdldC5wYXRoID0gcmVtb3ZlRG90U2VnbWVudHMocmVsYXRpdmUucGF0aCB8fCAiIik7CiAgICAgICAgICB0YXJnZXQucXVlcnkgPSByZWxhdGl2ZS5xdWVyeTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaWYgKCFyZWxhdGl2ZS5wYXRoKSB7CiAgICAgICAgICAgIHRhcmdldC5wYXRoID0gYmFzZS5wYXRoOwogICAgICAgICAgICBpZiAocmVsYXRpdmUucXVlcnkgIT09IHZvaWQgMCkgewogICAgICAgICAgICAgIHRhcmdldC5xdWVyeSA9IHJlbGF0aXZlLnF1ZXJ5OwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHRhcmdldC5xdWVyeSA9IGJhc2UucXVlcnk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGlmIChyZWxhdGl2ZS5wYXRoLmNoYXJBdCgwKSA9PT0gIi8iKSB7CiAgICAgICAgICAgICAgdGFyZ2V0LnBhdGggPSByZW1vdmVEb3RTZWdtZW50cyhyZWxhdGl2ZS5wYXRoKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBpZiAoKGJhc2UudXNlcmluZm8gIT09IHZvaWQgMCB8fCBiYXNlLmhvc3QgIT09IHZvaWQgMCB8fCBiYXNlLnBvcnQgIT09IHZvaWQgMCkgJiYgIWJhc2UucGF0aCkgewogICAgICAgICAgICAgICAgdGFyZ2V0LnBhdGggPSAiLyIgKyByZWxhdGl2ZS5wYXRoOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAoIWJhc2UucGF0aCkgewogICAgICAgICAgICAgICAgdGFyZ2V0LnBhdGggPSByZWxhdGl2ZS5wYXRoOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICB0YXJnZXQucGF0aCA9IGJhc2UucGF0aC5zbGljZSgwLCBiYXNlLnBhdGgubGFzdEluZGV4T2YoIi8iKSArIDEpICsgcmVsYXRpdmUucGF0aDsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgdGFyZ2V0LnBhdGggPSByZW1vdmVEb3RTZWdtZW50cyh0YXJnZXQucGF0aCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGFyZ2V0LnF1ZXJ5ID0gcmVsYXRpdmUucXVlcnk7CiAgICAgICAgICB9CiAgICAgICAgICB0YXJnZXQudXNlcmluZm8gPSBiYXNlLnVzZXJpbmZvOwogICAgICAgICAgdGFyZ2V0Lmhvc3QgPSBiYXNlLmhvc3Q7CiAgICAgICAgICB0YXJnZXQucG9ydCA9IGJhc2UucG9ydDsKICAgICAgICB9CiAgICAgICAgdGFyZ2V0LnNjaGVtZSA9IGJhc2Uuc2NoZW1lOwogICAgICB9CiAgICAgIHRhcmdldC5mcmFnbWVudCA9IHJlbGF0aXZlLmZyYWdtZW50OwogICAgICByZXR1cm4gdGFyZ2V0OwogICAgfQogICAgZnVuY3Rpb24gZXF1YWwodXJpQSwgdXJpQiwgb3B0aW9ucykgewogICAgICBpZiAodHlwZW9mIHVyaUEgPT09ICJzdHJpbmciKSB7CiAgICAgICAgdXJpQSA9IHVuZXNjYXBlKHVyaUEpOwogICAgICAgIHVyaUEgPSBzZXJpYWxpemUobm9ybWFsaXplQ29tcG9uZW50RW5jb2RpbmcocGFyc2UodXJpQSwgb3B0aW9ucyksIHRydWUpLCB7IC4uLm9wdGlvbnMsIHNraXBFc2NhcGU6IHRydWUgfSk7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHVyaUEgPT09ICJvYmplY3QiKSB7CiAgICAgICAgdXJpQSA9IHNlcmlhbGl6ZShub3JtYWxpemVDb21wb25lbnRFbmNvZGluZyh1cmlBLCB0cnVlKSwgeyAuLi5vcHRpb25zLCBza2lwRXNjYXBlOiB0cnVlIH0pOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgdXJpQiA9PT0gInN0cmluZyIpIHsKICAgICAgICB1cmlCID0gdW5lc2NhcGUodXJpQik7CiAgICAgICAgdXJpQiA9IHNlcmlhbGl6ZShub3JtYWxpemVDb21wb25lbnRFbmNvZGluZyhwYXJzZSh1cmlCLCBvcHRpb25zKSwgdHJ1ZSksIHsgLi4ub3B0aW9ucywgc2tpcEVzY2FwZTogdHJ1ZSB9KTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgdXJpQiA9PT0gIm9iamVjdCIpIHsKICAgICAgICB1cmlCID0gc2VyaWFsaXplKG5vcm1hbGl6ZUNvbXBvbmVudEVuY29kaW5nKHVyaUIsIHRydWUpLCB7IC4uLm9wdGlvbnMsIHNraXBFc2NhcGU6IHRydWUgfSk7CiAgICAgIH0KICAgICAgcmV0dXJuIHVyaUEudG9Mb3dlckNhc2UoKSA9PT0gdXJpQi50b0xvd2VyQ2FzZSgpOwogICAgfQogICAgZnVuY3Rpb24gc2VyaWFsaXplKGNtcHRzLCBvcHRzKSB7CiAgICAgIGNvbnN0IGNvbXBvbmVudHMgPSB7CiAgICAgICAgaG9zdDogY21wdHMuaG9zdCwKICAgICAgICBzY2hlbWU6IGNtcHRzLnNjaGVtZSwKICAgICAgICB1c2VyaW5mbzogY21wdHMudXNlcmluZm8sCiAgICAgICAgcG9ydDogY21wdHMucG9ydCwKICAgICAgICBwYXRoOiBjbXB0cy5wYXRoLAogICAgICAgIHF1ZXJ5OiBjbXB0cy5xdWVyeSwKICAgICAgICBuaWQ6IGNtcHRzLm5pZCwKICAgICAgICBuc3M6IGNtcHRzLm5zcywKICAgICAgICB1dWlkOiBjbXB0cy51dWlkLAogICAgICAgIGZyYWdtZW50OiBjbXB0cy5mcmFnbWVudCwKICAgICAgICByZWZlcmVuY2U6IGNtcHRzLnJlZmVyZW5jZSwKICAgICAgICByZXNvdXJjZU5hbWU6IGNtcHRzLnJlc291cmNlTmFtZSwKICAgICAgICBzZWN1cmU6IGNtcHRzLnNlY3VyZSwKICAgICAgICBlcnJvcjogIiIKICAgICAgfTsKICAgICAgY29uc3Qgb3B0aW9ucyA9IE9iamVjdC5hc3NpZ24oe30sIG9wdHMpOwogICAgICBjb25zdCB1cmlUb2tlbnMgPSBbXTsKICAgICAgY29uc3Qgc2NoZW1lSGFuZGxlciA9IFNDSEVNRVNbKG9wdGlvbnMuc2NoZW1lIHx8IGNvbXBvbmVudHMuc2NoZW1lIHx8ICIiKS50b0xvd2VyQ2FzZSgpXTsKICAgICAgaWYgKHNjaGVtZUhhbmRsZXIgJiYgc2NoZW1lSGFuZGxlci5zZXJpYWxpemUpIHNjaGVtZUhhbmRsZXIuc2VyaWFsaXplKGNvbXBvbmVudHMsIG9wdGlvbnMpOwogICAgICBpZiAoY29tcG9uZW50cy5wYXRoICE9PSB2b2lkIDApIHsKICAgICAgICBpZiAoIW9wdGlvbnMuc2tpcEVzY2FwZSkgewogICAgICAgICAgY29tcG9uZW50cy5wYXRoID0gZXNjYXBlKGNvbXBvbmVudHMucGF0aCk7CiAgICAgICAgICBpZiAoY29tcG9uZW50cy5zY2hlbWUgIT09IHZvaWQgMCkgewogICAgICAgICAgICBjb21wb25lbnRzLnBhdGggPSBjb21wb25lbnRzLnBhdGguc3BsaXQoIiUzQSIpLmpvaW4oIjoiKTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgewogICAgICAgICAgY29tcG9uZW50cy5wYXRoID0gdW5lc2NhcGUoY29tcG9uZW50cy5wYXRoKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKG9wdGlvbnMucmVmZXJlbmNlICE9PSAic3VmZml4IiAmJiBjb21wb25lbnRzLnNjaGVtZSkgewogICAgICAgIHVyaVRva2Vucy5wdXNoKGNvbXBvbmVudHMuc2NoZW1lLCAiOiIpOwogICAgICB9CiAgICAgIGNvbnN0IGF1dGhvcml0eSA9IHJlY29tcG9zZUF1dGhvcml0eShjb21wb25lbnRzLCBvcHRpb25zKTsKICAgICAgaWYgKGF1dGhvcml0eSAhPT0gdm9pZCAwKSB7CiAgICAgICAgaWYgKG9wdGlvbnMucmVmZXJlbmNlICE9PSAic3VmZml4IikgewogICAgICAgICAgdXJpVG9rZW5zLnB1c2goIi8vIik7CiAgICAgICAgfQogICAgICAgIHVyaVRva2Vucy5wdXNoKGF1dGhvcml0eSk7CiAgICAgICAgaWYgKGNvbXBvbmVudHMucGF0aCAmJiBjb21wb25lbnRzLnBhdGguY2hhckF0KDApICE9PSAiLyIpIHsKICAgICAgICAgIHVyaVRva2Vucy5wdXNoKCIvIik7CiAgICAgICAgfQogICAgICB9CiAgICAgIGlmIChjb21wb25lbnRzLnBhdGggIT09IHZvaWQgMCkgewogICAgICAgIGxldCBzID0gY29tcG9uZW50cy5wYXRoOwogICAgICAgIGlmICghb3B0aW9ucy5hYnNvbHV0ZVBhdGggJiYgKCFzY2hlbWVIYW5kbGVyIHx8ICFzY2hlbWVIYW5kbGVyLmFic29sdXRlUGF0aCkpIHsKICAgICAgICAgIHMgPSByZW1vdmVEb3RTZWdtZW50cyhzKTsKICAgICAgICB9CiAgICAgICAgaWYgKGF1dGhvcml0eSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBzID0gcy5yZXBsYWNlKC9eXC9cLy91LCAiLyUyRiIpOwogICAgICAgIH0KICAgICAgICB1cmlUb2tlbnMucHVzaChzKTsKICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5xdWVyeSAhPT0gdm9pZCAwKSB7CiAgICAgICAgdXJpVG9rZW5zLnB1c2goIj8iLCBjb21wb25lbnRzLnF1ZXJ5KTsKICAgICAgfQogICAgICBpZiAoY29tcG9uZW50cy5mcmFnbWVudCAhPT0gdm9pZCAwKSB7CiAgICAgICAgdXJpVG9rZW5zLnB1c2goIiMiLCBjb21wb25lbnRzLmZyYWdtZW50KTsKICAgICAgfQogICAgICByZXR1cm4gdXJpVG9rZW5zLmpvaW4oIiIpOwogICAgfQogICAgdmFyIGhleExvb2tVcCA9IEFycmF5LmZyb20oeyBsZW5ndGg6IDEyNyB9LCAodiwgaykgPT4gL1teISIkJicoKSorLFwtLjs9X2BhLXp7fX5dL3UudGVzdChTdHJpbmcuZnJvbUNoYXJDb2RlKGspKSk7CiAgICBmdW5jdGlvbiBub25TaW1wbGVEb21haW4odmFsdWUpIHsKICAgICAgbGV0IGNvZGUgPSAwOwogICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gdmFsdWUubGVuZ3RoOyBpIDwgbGVuOyArK2kpIHsKICAgICAgICBjb2RlID0gdmFsdWUuY2hhckNvZGVBdChpKTsKICAgICAgICBpZiAoY29kZSA+IDEyNiB8fCBoZXhMb29rVXBbY29kZV0pIHsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gZmFsc2U7CiAgICB9CiAgICB2YXIgVVJJX1BBUlNFID0gL14oPzooW14jLzo/XSspOik/KD86XC9cLygoPzooW14jLz9AXSopQCk/KFxbW14jLz9cXV0rXF18W14jLzo/XSopKD86OihcZCopKT8pKT8oW14jP10qKSg/Olw/KFteI10qKSk/KD86IygoPzoufFtcblxyXSkqKSk/L3U7CiAgICBmdW5jdGlvbiBwYXJzZSh1cmksIG9wdHMpIHsKICAgICAgY29uc3Qgb3B0aW9ucyA9IE9iamVjdC5hc3NpZ24oe30sIG9wdHMpOwogICAgICBjb25zdCBwYXJzZWQgPSB7CiAgICAgICAgc2NoZW1lOiB2b2lkIDAsCiAgICAgICAgdXNlcmluZm86IHZvaWQgMCwKICAgICAgICBob3N0OiAiIiwKICAgICAgICBwb3J0OiB2b2lkIDAsCiAgICAgICAgcGF0aDogIiIsCiAgICAgICAgcXVlcnk6IHZvaWQgMCwKICAgICAgICBmcmFnbWVudDogdm9pZCAwCiAgICAgIH07CiAgICAgIGNvbnN0IGdvdEVuY29kaW5nID0gdXJpLmluZGV4T2YoIiUiKSAhPT0gLTE7CiAgICAgIGxldCBpc0lQID0gZmFsc2U7CiAgICAgIGlmIChvcHRpb25zLnJlZmVyZW5jZSA9PT0gInN1ZmZpeCIpIHVyaSA9IChvcHRpb25zLnNjaGVtZSA/IG9wdGlvbnMuc2NoZW1lICsgIjoiIDogIiIpICsgIi8vIiArIHVyaTsKICAgICAgY29uc3QgbWF0Y2hlcyA9IHVyaS5tYXRjaChVUklfUEFSU0UpOwogICAgICBpZiAobWF0Y2hlcykgewogICAgICAgIHBhcnNlZC5zY2hlbWUgPSBtYXRjaGVzWzFdOwogICAgICAgIHBhcnNlZC51c2VyaW5mbyA9IG1hdGNoZXNbM107CiAgICAgICAgcGFyc2VkLmhvc3QgPSBtYXRjaGVzWzRdOwogICAgICAgIHBhcnNlZC5wb3J0ID0gcGFyc2VJbnQobWF0Y2hlc1s1XSwgMTApOwogICAgICAgIHBhcnNlZC5wYXRoID0gbWF0Y2hlc1s2XSB8fCAiIjsKICAgICAgICBwYXJzZWQucXVlcnkgPSBtYXRjaGVzWzddOwogICAgICAgIHBhcnNlZC5mcmFnbWVudCA9IG1hdGNoZXNbOF07CiAgICAgICAgaWYgKGlzTmFOKHBhcnNlZC5wb3J0KSkgewogICAgICAgICAgcGFyc2VkLnBvcnQgPSBtYXRjaGVzWzVdOwogICAgICAgIH0KICAgICAgICBpZiAocGFyc2VkLmhvc3QpIHsKICAgICAgICAgIGNvbnN0IGlwdjRyZXN1bHQgPSBub3JtYWxpemVJUHY0KHBhcnNlZC5ob3N0KTsKICAgICAgICAgIGlmIChpcHY0cmVzdWx0LmlzSVBWNCA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgY29uc3QgaXB2NnJlc3VsdCA9IG5vcm1hbGl6ZUlQdjYoaXB2NHJlc3VsdC5ob3N0LCB7IGlzSVBWNDogZmFsc2UgfSk7CiAgICAgICAgICAgIHBhcnNlZC5ob3N0ID0gaXB2NnJlc3VsdC5ob3N0LnRvTG93ZXJDYXNlKCk7CiAgICAgICAgICAgIGlzSVAgPSBpcHY2cmVzdWx0LmlzSVBWNjsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHBhcnNlZC5ob3N0ID0gaXB2NHJlc3VsdC5ob3N0OwogICAgICAgICAgICBpc0lQID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKHBhcnNlZC5zY2hlbWUgPT09IHZvaWQgMCAmJiBwYXJzZWQudXNlcmluZm8gPT09IHZvaWQgMCAmJiBwYXJzZWQuaG9zdCA9PT0gdm9pZCAwICYmIHBhcnNlZC5wb3J0ID09PSB2b2lkIDAgJiYgIXBhcnNlZC5wYXRoICYmIHBhcnNlZC5xdWVyeSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBwYXJzZWQucmVmZXJlbmNlID0gInNhbWUtZG9jdW1lbnQiOwogICAgICAgIH0gZWxzZSBpZiAocGFyc2VkLnNjaGVtZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBwYXJzZWQucmVmZXJlbmNlID0gInJlbGF0aXZlIjsKICAgICAgICB9IGVsc2UgaWYgKHBhcnNlZC5mcmFnbWVudCA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBwYXJzZWQucmVmZXJlbmNlID0gImFic29sdXRlIjsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcGFyc2VkLnJlZmVyZW5jZSA9ICJ1cmkiOwogICAgICAgIH0KICAgICAgICBpZiAob3B0aW9ucy5yZWZlcmVuY2UgJiYgb3B0aW9ucy5yZWZlcmVuY2UgIT09ICJzdWZmaXgiICYmIG9wdGlvbnMucmVmZXJlbmNlICE9PSBwYXJzZWQucmVmZXJlbmNlKSB7CiAgICAgICAgICBwYXJzZWQuZXJyb3IgPSBwYXJzZWQuZXJyb3IgfHwgIlVSSSBpcyBub3QgYSAiICsgb3B0aW9ucy5yZWZlcmVuY2UgKyAiIHJlZmVyZW5jZS4iOwogICAgICAgIH0KICAgICAgICBjb25zdCBzY2hlbWVIYW5kbGVyID0gU0NIRU1FU1sob3B0aW9ucy5zY2hlbWUgfHwgcGFyc2VkLnNjaGVtZSB8fCAiIikudG9Mb3dlckNhc2UoKV07CiAgICAgICAgaWYgKCFvcHRpb25zLnVuaWNvZGVTdXBwb3J0ICYmICghc2NoZW1lSGFuZGxlciB8fCAhc2NoZW1lSGFuZGxlci51bmljb2RlU3VwcG9ydCkpIHsKICAgICAgICAgIGlmIChwYXJzZWQuaG9zdCAmJiAob3B0aW9ucy5kb21haW5Ib3N0IHx8IHNjaGVtZUhhbmRsZXIgJiYgc2NoZW1lSGFuZGxlci5kb21haW5Ib3N0KSAmJiBpc0lQID09PSBmYWxzZSAmJiBub25TaW1wbGVEb21haW4ocGFyc2VkLmhvc3QpKSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgcGFyc2VkLmhvc3QgPSBVUkwuZG9tYWluVG9BU0NJSShwYXJzZWQuaG9zdC50b0xvd2VyQ2FzZSgpKTsKICAgICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICAgIHBhcnNlZC5lcnJvciA9IHBhcnNlZC5lcnJvciB8fCAiSG9zdCdzIGRvbWFpbiBuYW1lIGNhbiBub3QgYmUgY29udmVydGVkIHRvIEFTQ0lJOiAiICsgZTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoIXNjaGVtZUhhbmRsZXIgfHwgc2NoZW1lSGFuZGxlciAmJiAhc2NoZW1lSGFuZGxlci5za2lwTm9ybWFsaXplKSB7CiAgICAgICAgICBpZiAoZ290RW5jb2RpbmcgJiYgcGFyc2VkLnNjaGVtZSAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgIHBhcnNlZC5zY2hlbWUgPSB1bmVzY2FwZShwYXJzZWQuc2NoZW1lKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChnb3RFbmNvZGluZyAmJiBwYXJzZWQuaG9zdCAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgIHBhcnNlZC5ob3N0ID0gdW5lc2NhcGUocGFyc2VkLmhvc3QpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHBhcnNlZC5wYXRoICE9PSB2b2lkIDAgJiYgcGFyc2VkLnBhdGgubGVuZ3RoKSB7CiAgICAgICAgICAgIHBhcnNlZC5wYXRoID0gZXNjYXBlKHVuZXNjYXBlKHBhcnNlZC5wYXRoKSk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAocGFyc2VkLmZyYWdtZW50ICE9PSB2b2lkIDAgJiYgcGFyc2VkLmZyYWdtZW50Lmxlbmd0aCkgewogICAgICAgICAgICBwYXJzZWQuZnJhZ21lbnQgPSBlbmNvZGVVUkkoZGVjb2RlVVJJQ29tcG9uZW50KHBhcnNlZC5mcmFnbWVudCkpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoc2NoZW1lSGFuZGxlciAmJiBzY2hlbWVIYW5kbGVyLnBhcnNlKSB7CiAgICAgICAgICBzY2hlbWVIYW5kbGVyLnBhcnNlKHBhcnNlZCwgb3B0aW9ucyk7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIHBhcnNlZC5lcnJvciA9IHBhcnNlZC5lcnJvciB8fCAiVVJJIGNhbiBub3QgYmUgcGFyc2VkLiI7CiAgICAgIH0KICAgICAgcmV0dXJuIHBhcnNlZDsKICAgIH0KICAgIHZhciBmYXN0VXJpID0gewogICAgICBTQ0hFTUVTLAogICAgICBub3JtYWxpemUsCiAgICAgIHJlc29sdmUsCiAgICAgIHJlc29sdmVDb21wb25lbnRzLAogICAgICBlcXVhbCwKICAgICAgc2VyaWFsaXplLAogICAgICBwYXJzZQogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IGZhc3RVcmk7CiAgICBtb2R1bGUyLmV4cG9ydHMuZGVmYXVsdCA9IGZhc3RVcmk7CiAgICBtb2R1bGUyLmV4cG9ydHMuZmFzdFVyaSA9IGZhc3RVcmk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9ydW50aW1lL3VyaS5qcwp2YXIgcmVxdWlyZV91cmkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3J1bnRpbWUvdXJpLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgdXJpID0gcmVxdWlyZV9mYXN0X3VyaSgpOwogICAgdXJpLmNvZGUgPSAncmVxdWlyZSgiYWp2L2Rpc3QvcnVudGltZS91cmkiKS5kZWZhdWx0JzsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSB1cmk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9jb3JlLmpzCnZhciByZXF1aXJlX2NvcmUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L2NvcmUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkNvZGVHZW4gPSBleHBvcnRzMi5OYW1lID0gZXhwb3J0czIubmlsID0gZXhwb3J0czIuc3RyaW5naWZ5ID0gZXhwb3J0czIuc3RyID0gZXhwb3J0czIuXyA9IGV4cG9ydHMyLktleXdvcmRDeHQgPSB2b2lkIDA7CiAgICB2YXIgdmFsaWRhdGVfMSA9IHJlcXVpcmVfdmFsaWRhdGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIktleXdvcmRDeHQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB2YWxpZGF0ZV8xLktleXdvcmRDeHQ7CiAgICB9IH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiXyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5fOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0ciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5zdHI7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3RyaW5naWZ5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLnN0cmluZ2lmeTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJuaWwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEubmlsOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIk5hbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEuTmFtZTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJDb2RlR2VuIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLkNvZGVHZW47CiAgICB9IH0pOwogICAgdmFyIHZhbGlkYXRpb25fZXJyb3JfMSA9IHJlcXVpcmVfdmFsaWRhdGlvbl9lcnJvcigpOwogICAgdmFyIHJlZl9lcnJvcl8xID0gcmVxdWlyZV9yZWZfZXJyb3IoKTsKICAgIHZhciBydWxlc18xID0gcmVxdWlyZV9ydWxlcygpOwogICAgdmFyIGNvbXBpbGVfMSA9IHJlcXVpcmVfY29tcGlsZSgpOwogICAgdmFyIGNvZGVnZW5fMiA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHJlc29sdmVfMSA9IHJlcXVpcmVfcmVzb2x2ZSgpOwogICAgdmFyIGRhdGFUeXBlXzEgPSByZXF1aXJlX2RhdGFUeXBlKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgJGRhdGFSZWZTY2hlbWEgPSByZXF1aXJlX2RhdGEoKTsKICAgIHZhciB1cmlfMSA9IHJlcXVpcmVfdXJpKCk7CiAgICB2YXIgZGVmYXVsdFJlZ0V4cCA9IChzdHIsIGZsYWdzKSA9PiBuZXcgUmVnRXhwKHN0ciwgZmxhZ3MpOwogICAgZGVmYXVsdFJlZ0V4cC5jb2RlID0gIm5ldyBSZWdFeHAiOwogICAgdmFyIE1FVEFfSUdOT1JFX09QVElPTlMgPSBbInJlbW92ZUFkZGl0aW9uYWwiLCAidXNlRGVmYXVsdHMiLCAiY29lcmNlVHlwZXMiXTsKICAgIHZhciBFWFRfU0NPUEVfTkFNRVMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbCiAgICAgICJ2YWxpZGF0ZSIsCiAgICAgICJzZXJpYWxpemUiLAogICAgICAicGFyc2UiLAogICAgICAid3JhcHBlciIsCiAgICAgICJyb290IiwKICAgICAgInNjaGVtYSIsCiAgICAgICJrZXl3b3JkIiwKICAgICAgInBhdHRlcm4iLAogICAgICAiZm9ybWF0cyIsCiAgICAgICJ2YWxpZGF0ZSRkYXRhIiwKICAgICAgImZ1bmMiLAogICAgICAib2JqIiwKICAgICAgIkVycm9yIgogICAgXSk7CiAgICB2YXIgcmVtb3ZlZE9wdGlvbnMgPSB7CiAgICAgIGVycm9yRGF0YVBhdGg6ICIiLAogICAgICBmb3JtYXQ6ICJgdmFsaWRhdGVGb3JtYXRzOiBmYWxzZWAgY2FuIGJlIHVzZWQgaW5zdGVhZC4iLAogICAgICBudWxsYWJsZTogJyJudWxsYWJsZSIga2V5d29yZCBpcyBzdXBwb3J0ZWQgYnkgZGVmYXVsdC4nLAogICAgICBqc29uUG9pbnRlcnM6ICJEZXByZWNhdGVkIGpzUHJvcGVydHlTeW50YXggY2FuIGJlIHVzZWQgaW5zdGVhZC4iLAogICAgICBleHRlbmRSZWZzOiAiRGVwcmVjYXRlZCBpZ25vcmVLZXl3b3Jkc1dpdGhSZWYgY2FuIGJlIHVzZWQgaW5zdGVhZC4iLAogICAgICBtaXNzaW5nUmVmczogIlBhc3MgZW1wdHkgc2NoZW1hIHdpdGggJGlkIHRoYXQgc2hvdWxkIGJlIGlnbm9yZWQgdG8gYWp2LmFkZFNjaGVtYS4iLAogICAgICBwcm9jZXNzQ29kZTogIlVzZSBvcHRpb24gYGNvZGU6IHtwcm9jZXNzOiAoY29kZSwgc2NoZW1hRW52OiBvYmplY3QpID0+IHN0cmluZ31gIiwKICAgICAgc291cmNlQ29kZTogIlVzZSBvcHRpb24gYGNvZGU6IHtzb3VyY2U6IHRydWV9YCIsCiAgICAgIHN0cmljdERlZmF1bHRzOiAiSXQgaXMgZGVmYXVsdCBub3csIHNlZSBvcHRpb24gYHN0cmljdGAuIiwKICAgICAgc3RyaWN0S2V5d29yZHM6ICJJdCBpcyBkZWZhdWx0IG5vdywgc2VlIG9wdGlvbiBgc3RyaWN0YC4iLAogICAgICB1bmlxdWVJdGVtczogJyJ1bmlxdWVJdGVtcyIga2V5d29yZCBpcyBhbHdheXMgdmFsaWRhdGVkLicsCiAgICAgIHVua25vd25Gb3JtYXRzOiAiRGlzYWJsZSBzdHJpY3QgbW9kZSBvciBwYXNzIGB0cnVlYCB0byBgYWp2LmFkZEZvcm1hdGAgKG9yIGBmb3JtYXRzYCBvcHRpb24pLiIsCiAgICAgIGNhY2hlOiAiTWFwIGlzIHVzZWQgYXMgY2FjaGUsIHNjaGVtYSBvYmplY3QgYXMga2V5LiIsCiAgICAgIHNlcmlhbGl6ZTogIk1hcCBpcyB1c2VkIGFzIGNhY2hlLCBzY2hlbWEgb2JqZWN0IGFzIGtleS4iLAogICAgICBhanZFcnJvcnM6ICJJdCBpcyBkZWZhdWx0IG5vdy4iCiAgICB9OwogICAgdmFyIGRlcHJlY2F0ZWRPcHRpb25zID0gewogICAgICBpZ25vcmVLZXl3b3Jkc1dpdGhSZWY6ICIiLAogICAgICBqc1Byb3BlcnR5U3ludGF4OiAiIiwKICAgICAgdW5pY29kZTogJyJtaW5MZW5ndGgiLyJtYXhMZW5ndGgiIGFjY291bnQgZm9yIHVuaWNvZGUgY2hhcmFjdGVycyBieSBkZWZhdWx0LicKICAgIH07CiAgICB2YXIgTUFYX0VYUFJFU1NJT04gPSAyMDA7CiAgICBmdW5jdGlvbiByZXF1aXJlZE9wdGlvbnMobykgewogICAgICB2YXIgX2EsIF9iLCBfYywgX2QsIF9lLCBfZiwgX2csIF9oLCBfaiwgX2ssIF9sLCBfbSwgX28sIF9wLCBfcSwgX3IsIF9zLCBfdCwgX3UsIF92LCBfdywgX3gsIF95LCBfeiwgXzA7CiAgICAgIGNvbnN0IHMgPSBvLnN0cmljdDsKICAgICAgY29uc3QgX29wdHogPSAoX2EgPSBvLmNvZGUpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5vcHRpbWl6ZTsKICAgICAgY29uc3Qgb3B0aW1pemUgPSBfb3B0eiA9PT0gdHJ1ZSB8fCBfb3B0eiA9PT0gdm9pZCAwID8gMSA6IF9vcHR6IHx8IDA7CiAgICAgIGNvbnN0IHJlZ0V4cCA9IChfYyA9IChfYiA9IG8uY29kZSkgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLnJlZ0V4cCkgIT09IG51bGwgJiYgX2MgIT09IHZvaWQgMCA/IF9jIDogZGVmYXVsdFJlZ0V4cDsKICAgICAgY29uc3QgdXJpUmVzb2x2ZXIgPSAoX2QgPSBvLnVyaVJlc29sdmVyKSAhPT0gbnVsbCAmJiBfZCAhPT0gdm9pZCAwID8gX2QgOiB1cmlfMS5kZWZhdWx0OwogICAgICByZXR1cm4gewogICAgICAgIHN0cmljdFNjaGVtYTogKF9mID0gKF9lID0gby5zdHJpY3RTY2hlbWEpICE9PSBudWxsICYmIF9lICE9PSB2b2lkIDAgPyBfZSA6IHMpICE9PSBudWxsICYmIF9mICE9PSB2b2lkIDAgPyBfZiA6IHRydWUsCiAgICAgICAgc3RyaWN0TnVtYmVyczogKF9oID0gKF9nID0gby5zdHJpY3ROdW1iZXJzKSAhPT0gbnVsbCAmJiBfZyAhPT0gdm9pZCAwID8gX2cgOiBzKSAhPT0gbnVsbCAmJiBfaCAhPT0gdm9pZCAwID8gX2ggOiB0cnVlLAogICAgICAgIHN0cmljdFR5cGVzOiAoX2sgPSAoX2ogPSBvLnN0cmljdFR5cGVzKSAhPT0gbnVsbCAmJiBfaiAhPT0gdm9pZCAwID8gX2ogOiBzKSAhPT0gbnVsbCAmJiBfayAhPT0gdm9pZCAwID8gX2sgOiAibG9nIiwKICAgICAgICBzdHJpY3RUdXBsZXM6IChfbSA9IChfbCA9IG8uc3RyaWN0VHVwbGVzKSAhPT0gbnVsbCAmJiBfbCAhPT0gdm9pZCAwID8gX2wgOiBzKSAhPT0gbnVsbCAmJiBfbSAhPT0gdm9pZCAwID8gX20gOiAibG9nIiwKICAgICAgICBzdHJpY3RSZXF1aXJlZDogKF9wID0gKF9vID0gby5zdHJpY3RSZXF1aXJlZCkgIT09IG51bGwgJiYgX28gIT09IHZvaWQgMCA/IF9vIDogcykgIT09IG51bGwgJiYgX3AgIT09IHZvaWQgMCA/IF9wIDogZmFsc2UsCiAgICAgICAgY29kZTogby5jb2RlID8geyAuLi5vLmNvZGUsIG9wdGltaXplLCByZWdFeHAgfSA6IHsgb3B0aW1pemUsIHJlZ0V4cCB9LAogICAgICAgIGxvb3BSZXF1aXJlZDogKF9xID0gby5sb29wUmVxdWlyZWQpICE9PSBudWxsICYmIF9xICE9PSB2b2lkIDAgPyBfcSA6IE1BWF9FWFBSRVNTSU9OLAogICAgICAgIGxvb3BFbnVtOiAoX3IgPSBvLmxvb3BFbnVtKSAhPT0gbnVsbCAmJiBfciAhPT0gdm9pZCAwID8gX3IgOiBNQVhfRVhQUkVTU0lPTiwKICAgICAgICBtZXRhOiAoX3MgPSBvLm1ldGEpICE9PSBudWxsICYmIF9zICE9PSB2b2lkIDAgPyBfcyA6IHRydWUsCiAgICAgICAgbWVzc2FnZXM6IChfdCA9IG8ubWVzc2FnZXMpICE9PSBudWxsICYmIF90ICE9PSB2b2lkIDAgPyBfdCA6IHRydWUsCiAgICAgICAgaW5saW5lUmVmczogKF91ID0gby5pbmxpbmVSZWZzKSAhPT0gbnVsbCAmJiBfdSAhPT0gdm9pZCAwID8gX3UgOiB0cnVlLAogICAgICAgIHNjaGVtYUlkOiAoX3YgPSBvLnNjaGVtYUlkKSAhPT0gbnVsbCAmJiBfdiAhPT0gdm9pZCAwID8gX3YgOiAiJGlkIiwKICAgICAgICBhZGRVc2VkU2NoZW1hOiAoX3cgPSBvLmFkZFVzZWRTY2hlbWEpICE9PSBudWxsICYmIF93ICE9PSB2b2lkIDAgPyBfdyA6IHRydWUsCiAgICAgICAgdmFsaWRhdGVTY2hlbWE6IChfeCA9IG8udmFsaWRhdGVTY2hlbWEpICE9PSBudWxsICYmIF94ICE9PSB2b2lkIDAgPyBfeCA6IHRydWUsCiAgICAgICAgdmFsaWRhdGVGb3JtYXRzOiAoX3kgPSBvLnZhbGlkYXRlRm9ybWF0cykgIT09IG51bGwgJiYgX3kgIT09IHZvaWQgMCA/IF95IDogdHJ1ZSwKICAgICAgICB1bmljb2RlUmVnRXhwOiAoX3ogPSBvLnVuaWNvZGVSZWdFeHApICE9PSBudWxsICYmIF96ICE9PSB2b2lkIDAgPyBfeiA6IHRydWUsCiAgICAgICAgaW50MzJyYW5nZTogKF8wID0gby5pbnQzMnJhbmdlKSAhPT0gbnVsbCAmJiBfMCAhPT0gdm9pZCAwID8gXzAgOiB0cnVlLAogICAgICAgIHVyaVJlc29sdmVyCiAgICAgIH07CiAgICB9CiAgICB2YXIgQWp2ID0gY2xhc3MgewogICAgICBjb25zdHJ1Y3RvcihvcHRzID0ge30pIHsKICAgICAgICB0aGlzLnNjaGVtYXMgPSB7fTsKICAgICAgICB0aGlzLnJlZnMgPSB7fTsKICAgICAgICB0aGlzLmZvcm1hdHMgPSB7fTsKICAgICAgICB0aGlzLl9jb21waWxhdGlvbnMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICAgIHRoaXMuX2xvYWRpbmcgPSB7fTsKICAgICAgICB0aGlzLl9jYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgICAgb3B0cyA9IHRoaXMub3B0cyA9IHsgLi4ub3B0cywgLi4ucmVxdWlyZWRPcHRpb25zKG9wdHMpIH07CiAgICAgICAgY29uc3QgeyBlczUsIGxpbmVzIH0gPSB0aGlzLm9wdHMuY29kZTsKICAgICAgICB0aGlzLnNjb3BlID0gbmV3IGNvZGVnZW5fMi5WYWx1ZVNjb3BlKHsgc2NvcGU6IHt9LCBwcmVmaXhlczogRVhUX1NDT1BFX05BTUVTLCBlczUsIGxpbmVzIH0pOwogICAgICAgIHRoaXMubG9nZ2VyID0gZ2V0TG9nZ2VyKG9wdHMubG9nZ2VyKTsKICAgICAgICBjb25zdCBmb3JtYXRPcHQgPSBvcHRzLnZhbGlkYXRlRm9ybWF0czsKICAgICAgICBvcHRzLnZhbGlkYXRlRm9ybWF0cyA9IGZhbHNlOwogICAgICAgIHRoaXMuUlVMRVMgPSAoMCwgcnVsZXNfMS5nZXRSdWxlcykoKTsKICAgICAgICBjaGVja09wdGlvbnMuY2FsbCh0aGlzLCByZW1vdmVkT3B0aW9ucywgb3B0cywgIk5PVCBTVVBQT1JURUQiKTsKICAgICAgICBjaGVja09wdGlvbnMuY2FsbCh0aGlzLCBkZXByZWNhdGVkT3B0aW9ucywgb3B0cywgIkRFUFJFQ0FURUQiLCAid2FybiIpOwogICAgICAgIHRoaXMuX21ldGFPcHRzID0gZ2V0TWV0YVNjaGVtYU9wdGlvbnMuY2FsbCh0aGlzKTsKICAgICAgICBpZiAob3B0cy5mb3JtYXRzKQogICAgICAgICAgYWRkSW5pdGlhbEZvcm1hdHMuY2FsbCh0aGlzKTsKICAgICAgICB0aGlzLl9hZGRWb2NhYnVsYXJpZXMoKTsKICAgICAgICB0aGlzLl9hZGREZWZhdWx0TWV0YVNjaGVtYSgpOwogICAgICAgIGlmIChvcHRzLmtleXdvcmRzKQogICAgICAgICAgYWRkSW5pdGlhbEtleXdvcmRzLmNhbGwodGhpcywgb3B0cy5rZXl3b3Jkcyk7CiAgICAgICAgaWYgKHR5cGVvZiBvcHRzLm1ldGEgPT0gIm9iamVjdCIpCiAgICAgICAgICB0aGlzLmFkZE1ldGFTY2hlbWEob3B0cy5tZXRhKTsKICAgICAgICBhZGRJbml0aWFsU2NoZW1hcy5jYWxsKHRoaXMpOwogICAgICAgIG9wdHMudmFsaWRhdGVGb3JtYXRzID0gZm9ybWF0T3B0OwogICAgICB9CiAgICAgIF9hZGRWb2NhYnVsYXJpZXMoKSB7CiAgICAgICAgdGhpcy5hZGRLZXl3b3JkKCIkYXN5bmMiKTsKICAgICAgfQogICAgICBfYWRkRGVmYXVsdE1ldGFTY2hlbWEoKSB7CiAgICAgICAgY29uc3QgeyAkZGF0YSwgbWV0YSwgc2NoZW1hSWQgfSA9IHRoaXMub3B0czsKICAgICAgICBsZXQgX2RhdGFSZWZTY2hlbWEgPSAkZGF0YVJlZlNjaGVtYTsKICAgICAgICBpZiAoc2NoZW1hSWQgPT09ICJpZCIpIHsKICAgICAgICAgIF9kYXRhUmVmU2NoZW1hID0geyAuLi4kZGF0YVJlZlNjaGVtYSB9OwogICAgICAgICAgX2RhdGFSZWZTY2hlbWEuaWQgPSBfZGF0YVJlZlNjaGVtYS4kaWQ7CiAgICAgICAgICBkZWxldGUgX2RhdGFSZWZTY2hlbWEuJGlkOwogICAgICAgIH0KICAgICAgICBpZiAobWV0YSAmJiAkZGF0YSkKICAgICAgICAgIHRoaXMuYWRkTWV0YVNjaGVtYShfZGF0YVJlZlNjaGVtYSwgX2RhdGFSZWZTY2hlbWFbc2NoZW1hSWRdLCBmYWxzZSk7CiAgICAgIH0KICAgICAgZGVmYXVsdE1ldGEoKSB7CiAgICAgICAgY29uc3QgeyBtZXRhLCBzY2hlbWFJZCB9ID0gdGhpcy5vcHRzOwogICAgICAgIHJldHVybiB0aGlzLm9wdHMuZGVmYXVsdE1ldGEgPSB0eXBlb2YgbWV0YSA9PSAib2JqZWN0IiA/IG1ldGFbc2NoZW1hSWRdIHx8IG1ldGEgOiB2b2lkIDA7CiAgICAgIH0KICAgICAgdmFsaWRhdGUoc2NoZW1hS2V5UmVmLCBkYXRhKSB7CiAgICAgICAgbGV0IHY7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWFLZXlSZWYgPT0gInN0cmluZyIpIHsKICAgICAgICAgIHYgPSB0aGlzLmdldFNjaGVtYShzY2hlbWFLZXlSZWYpOwogICAgICAgICAgaWYgKCF2KQogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYG5vIHNjaGVtYSB3aXRoIGtleSBvciByZWYgIiR7c2NoZW1hS2V5UmVmfSJgKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdiA9IHRoaXMuY29tcGlsZShzY2hlbWFLZXlSZWYpOwogICAgICAgIH0KICAgICAgICBjb25zdCB2YWxpZCA9IHYoZGF0YSk7CiAgICAgICAgaWYgKCEoIiRhc3luYyIgaW4gdikpCiAgICAgICAgICB0aGlzLmVycm9ycyA9IHYuZXJyb3JzOwogICAgICAgIHJldHVybiB2YWxpZDsKICAgICAgfQogICAgICBjb21waWxlKHNjaGVtYSwgX21ldGEpIHsKICAgICAgICBjb25zdCBzY2ggPSB0aGlzLl9hZGRTY2hlbWEoc2NoZW1hLCBfbWV0YSk7CiAgICAgICAgcmV0dXJuIHNjaC52YWxpZGF0ZSB8fCB0aGlzLl9jb21waWxlU2NoZW1hRW52KHNjaCk7CiAgICAgIH0KICAgICAgY29tcGlsZUFzeW5jKHNjaGVtYSwgbWV0YSkgewogICAgICAgIGlmICh0eXBlb2YgdGhpcy5vcHRzLmxvYWRTY2hlbWEgIT0gImZ1bmN0aW9uIikgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJvcHRpb25zLmxvYWRTY2hlbWEgc2hvdWxkIGJlIGEgZnVuY3Rpb24iKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgeyBsb2FkU2NoZW1hIH0gPSB0aGlzLm9wdHM7CiAgICAgICAgcmV0dXJuIHJ1bkNvbXBpbGVBc3luYy5jYWxsKHRoaXMsIHNjaGVtYSwgbWV0YSk7CiAgICAgICAgYXN5bmMgZnVuY3Rpb24gcnVuQ29tcGlsZUFzeW5jKF9zY2hlbWEsIF9tZXRhKSB7CiAgICAgICAgICBhd2FpdCBsb2FkTWV0YVNjaGVtYS5jYWxsKHRoaXMsIF9zY2hlbWEuJHNjaGVtYSk7CiAgICAgICAgICBjb25zdCBzY2ggPSB0aGlzLl9hZGRTY2hlbWEoX3NjaGVtYSwgX21ldGEpOwogICAgICAgICAgcmV0dXJuIHNjaC52YWxpZGF0ZSB8fCBfY29tcGlsZUFzeW5jLmNhbGwodGhpcywgc2NoKTsKICAgICAgICB9CiAgICAgICAgYXN5bmMgZnVuY3Rpb24gbG9hZE1ldGFTY2hlbWEoJHJlZikgewogICAgICAgICAgaWYgKCRyZWYgJiYgIXRoaXMuZ2V0U2NoZW1hKCRyZWYpKSB7CiAgICAgICAgICAgIGF3YWl0IHJ1bkNvbXBpbGVBc3luYy5jYWxsKHRoaXMsIHsgJHJlZiB9LCB0cnVlKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgYXN5bmMgZnVuY3Rpb24gX2NvbXBpbGVBc3luYyhzY2gpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLl9jb21waWxlU2NoZW1hRW52KHNjaCk7CiAgICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIGlmICghKGUgaW5zdGFuY2VvZiByZWZfZXJyb3JfMS5kZWZhdWx0KSkKICAgICAgICAgICAgICB0aHJvdyBlOwogICAgICAgICAgICBjaGVja0xvYWRlZC5jYWxsKHRoaXMsIGUpOwogICAgICAgICAgICBhd2FpdCBsb2FkTWlzc2luZ1NjaGVtYS5jYWxsKHRoaXMsIGUubWlzc2luZ1NjaGVtYSk7CiAgICAgICAgICAgIHJldHVybiBfY29tcGlsZUFzeW5jLmNhbGwodGhpcywgc2NoKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gY2hlY2tMb2FkZWQoeyBtaXNzaW5nU2NoZW1hOiByZWYsIG1pc3NpbmdSZWYgfSkgewogICAgICAgICAgaWYgKHRoaXMucmVmc1tyZWZdKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQW55U2NoZW1hICR7cmVmfSBpcyBsb2FkZWQgYnV0ICR7bWlzc2luZ1JlZn0gY2Fubm90IGJlIHJlc29sdmVkYCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGFzeW5jIGZ1bmN0aW9uIGxvYWRNaXNzaW5nU2NoZW1hKHJlZikgewogICAgICAgICAgY29uc3QgX3NjaGVtYSA9IGF3YWl0IF9sb2FkU2NoZW1hLmNhbGwodGhpcywgcmVmKTsKICAgICAgICAgIGlmICghdGhpcy5yZWZzW3JlZl0pCiAgICAgICAgICAgIGF3YWl0IGxvYWRNZXRhU2NoZW1hLmNhbGwodGhpcywgX3NjaGVtYS4kc2NoZW1hKTsKICAgICAgICAgIGlmICghdGhpcy5yZWZzW3JlZl0pCiAgICAgICAgICAgIHRoaXMuYWRkU2NoZW1hKF9zY2hlbWEsIHJlZiwgbWV0YSk7CiAgICAgICAgfQogICAgICAgIGFzeW5jIGZ1bmN0aW9uIF9sb2FkU2NoZW1hKHJlZikgewogICAgICAgICAgY29uc3QgcCA9IHRoaXMuX2xvYWRpbmdbcmVmXTsKICAgICAgICAgIGlmIChwKQogICAgICAgICAgICByZXR1cm4gcDsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiBhd2FpdCAodGhpcy5fbG9hZGluZ1tyZWZdID0gbG9hZFNjaGVtYShyZWYpKTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIGRlbGV0ZSB0aGlzLl9sb2FkaW5nW3JlZl07CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIC8vIEFkZHMgc2NoZW1hIHRvIHRoZSBpbnN0YW5jZQogICAgICBhZGRTY2hlbWEoc2NoZW1hLCBrZXksIF9tZXRhLCBfdmFsaWRhdGVTY2hlbWEgPSB0aGlzLm9wdHMudmFsaWRhdGVTY2hlbWEpIHsKICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShzY2hlbWEpKSB7CiAgICAgICAgICBmb3IgKGNvbnN0IHNjaCBvZiBzY2hlbWEpCiAgICAgICAgICAgIHRoaXMuYWRkU2NoZW1hKHNjaCwgdm9pZCAwLCBfbWV0YSwgX3ZhbGlkYXRlU2NoZW1hKTsKICAgICAgICAgIHJldHVybiB0aGlzOwogICAgICAgIH0KICAgICAgICBsZXQgaWQ7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEgPT09ICJvYmplY3QiKSB7CiAgICAgICAgICBjb25zdCB7IHNjaGVtYUlkIH0gPSB0aGlzLm9wdHM7CiAgICAgICAgICBpZCA9IHNjaGVtYVtzY2hlbWFJZF07CiAgICAgICAgICBpZiAoaWQgIT09IHZvaWQgMCAmJiB0eXBlb2YgaWQgIT0gInN0cmluZyIpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBzY2hlbWEgJHtzY2hlbWFJZH0gbXVzdCBiZSBzdHJpbmdgKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAga2V5ID0gKDAsIHJlc29sdmVfMS5ub3JtYWxpemVJZCkoa2V5IHx8IGlkKTsKICAgICAgICB0aGlzLl9jaGVja1VuaXF1ZShrZXkpOwogICAgICAgIHRoaXMuc2NoZW1hc1trZXldID0gdGhpcy5fYWRkU2NoZW1hKHNjaGVtYSwgX21ldGEsIGtleSwgX3ZhbGlkYXRlU2NoZW1hLCB0cnVlKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvLyBBZGQgc2NoZW1hIHRoYXQgd2lsbCBiZSB1c2VkIHRvIHZhbGlkYXRlIG90aGVyIHNjaGVtYXMKICAgICAgLy8gb3B0aW9ucyBpbiBNRVRBX0lHTk9SRV9PUFRJT05TIGFyZSBhbHdheSBzZXQgdG8gZmFsc2UKICAgICAgYWRkTWV0YVNjaGVtYShzY2hlbWEsIGtleSwgX3ZhbGlkYXRlU2NoZW1hID0gdGhpcy5vcHRzLnZhbGlkYXRlU2NoZW1hKSB7CiAgICAgICAgdGhpcy5hZGRTY2hlbWEoc2NoZW1hLCBrZXksIHRydWUsIF92YWxpZGF0ZVNjaGVtYSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgLy8gIFZhbGlkYXRlIHNjaGVtYSBhZ2FpbnN0IGl0cyBtZXRhLXNjaGVtYQogICAgICB2YWxpZGF0ZVNjaGVtYShzY2hlbWEsIHRocm93T3JMb2dFcnJvcikgewogICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hID09ICJib29sZWFuIikKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIGxldCAkc2NoZW1hOwogICAgICAgICRzY2hlbWEgPSBzY2hlbWEuJHNjaGVtYTsKICAgICAgICBpZiAoJHNjaGVtYSAhPT0gdm9pZCAwICYmIHR5cGVvZiAkc2NoZW1hICE9ICJzdHJpbmciKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIiRzY2hlbWEgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIH0KICAgICAgICAkc2NoZW1hID0gJHNjaGVtYSB8fCB0aGlzLm9wdHMuZGVmYXVsdE1ldGEgfHwgdGhpcy5kZWZhdWx0TWV0YSgpOwogICAgICAgIGlmICghJHNjaGVtYSkgewogICAgICAgICAgdGhpcy5sb2dnZXIud2FybigibWV0YS1zY2hlbWEgbm90IGF2YWlsYWJsZSIpOwogICAgICAgICAgdGhpcy5lcnJvcnMgPSBudWxsOwogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHZhbGlkID0gdGhpcy52YWxpZGF0ZSgkc2NoZW1hLCBzY2hlbWEpOwogICAgICAgIGlmICghdmFsaWQgJiYgdGhyb3dPckxvZ0Vycm9yKSB7CiAgICAgICAgICBjb25zdCBtZXNzYWdlID0gInNjaGVtYSBpcyBpbnZhbGlkOiAiICsgdGhpcy5lcnJvcnNUZXh0KCk7CiAgICAgICAgICBpZiAodGhpcy5vcHRzLnZhbGlkYXRlU2NoZW1hID09PSAibG9nIikKICAgICAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IobWVzc2FnZSk7CiAgICAgICAgICBlbHNlCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihtZXNzYWdlKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHZhbGlkOwogICAgICB9CiAgICAgIC8vIEdldCBjb21waWxlZCBzY2hlbWEgYnkgYGtleWAgb3IgYHJlZmAuCiAgICAgIC8vIChga2V5YCB0aGF0IHdhcyBwYXNzZWQgdG8gYGFkZFNjaGVtYWAgb3IgZnVsbCBzY2hlbWEgcmVmZXJlbmNlIC0gYHNjaGVtYS4kaWRgIG9yIHJlc29sdmVkIGlkKQogICAgICBnZXRTY2hlbWEoa2V5UmVmKSB7CiAgICAgICAgbGV0IHNjaDsKICAgICAgICB3aGlsZSAodHlwZW9mIChzY2ggPSBnZXRTY2hFbnYuY2FsbCh0aGlzLCBrZXlSZWYpKSA9PSAic3RyaW5nIikKICAgICAgICAgIGtleVJlZiA9IHNjaDsKICAgICAgICBpZiAoc2NoID09PSB2b2lkIDApIHsKICAgICAgICAgIGNvbnN0IHsgc2NoZW1hSWQgfSA9IHRoaXMub3B0czsKICAgICAgICAgIGNvbnN0IHJvb3QgPSBuZXcgY29tcGlsZV8xLlNjaGVtYUVudih7IHNjaGVtYToge30sIHNjaGVtYUlkIH0pOwogICAgICAgICAgc2NoID0gY29tcGlsZV8xLnJlc29sdmVTY2hlbWEuY2FsbCh0aGlzLCByb290LCBrZXlSZWYpOwogICAgICAgICAgaWYgKCFzY2gpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIHRoaXMucmVmc1trZXlSZWZdID0gc2NoOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2NoLnZhbGlkYXRlIHx8IHRoaXMuX2NvbXBpbGVTY2hlbWFFbnYoc2NoKTsKICAgICAgfQogICAgICAvLyBSZW1vdmUgY2FjaGVkIHNjaGVtYShzKS4KICAgICAgLy8gSWYgbm8gcGFyYW1ldGVyIGlzIHBhc3NlZCBhbGwgc2NoZW1hcyBidXQgbWV0YS1zY2hlbWFzIGFyZSByZW1vdmVkLgogICAgICAvLyBJZiBSZWdFeHAgaXMgcGFzc2VkIGFsbCBzY2hlbWFzIHdpdGgga2V5L2lkIG1hdGNoaW5nIHBhdHRlcm4gYnV0IG1ldGEtc2NoZW1hcyBhcmUgcmVtb3ZlZC4KICAgICAgLy8gRXZlbiBpZiBzY2hlbWEgaXMgcmVmZXJlbmNlZCBieSBvdGhlciBzY2hlbWFzIGl0IHN0aWxsIGNhbiBiZSByZW1vdmVkIGFzIG90aGVyIHNjaGVtYXMgaGF2ZSBsb2NhbCByZWZlcmVuY2VzLgogICAgICByZW1vdmVTY2hlbWEoc2NoZW1hS2V5UmVmKSB7CiAgICAgICAgaWYgKHNjaGVtYUtleVJlZiBpbnN0YW5jZW9mIFJlZ0V4cCkgewogICAgICAgICAgdGhpcy5fcmVtb3ZlQWxsU2NoZW1hcyh0aGlzLnNjaGVtYXMsIHNjaGVtYUtleVJlZik7CiAgICAgICAgICB0aGlzLl9yZW1vdmVBbGxTY2hlbWFzKHRoaXMucmVmcywgc2NoZW1hS2V5UmVmKTsKICAgICAgICAgIHJldHVybiB0aGlzOwogICAgICAgIH0KICAgICAgICBzd2l0Y2ggKHR5cGVvZiBzY2hlbWFLZXlSZWYpIHsKICAgICAgICAgIGNhc2UgInVuZGVmaW5lZCI6CiAgICAgICAgICAgIHRoaXMuX3JlbW92ZUFsbFNjaGVtYXModGhpcy5zY2hlbWFzKTsKICAgICAgICAgICAgdGhpcy5fcmVtb3ZlQWxsU2NoZW1hcyh0aGlzLnJlZnMpOwogICAgICAgICAgICB0aGlzLl9jYWNoZS5jbGVhcigpOwogICAgICAgICAgICByZXR1cm4gdGhpczsKICAgICAgICAgIGNhc2UgInN0cmluZyI6IHsKICAgICAgICAgICAgY29uc3Qgc2NoID0gZ2V0U2NoRW52LmNhbGwodGhpcywgc2NoZW1hS2V5UmVmKTsKICAgICAgICAgICAgaWYgKHR5cGVvZiBzY2ggPT0gIm9iamVjdCIpCiAgICAgICAgICAgICAgdGhpcy5fY2FjaGUuZGVsZXRlKHNjaC5zY2hlbWEpOwogICAgICAgICAgICBkZWxldGUgdGhpcy5zY2hlbWFzW3NjaGVtYUtleVJlZl07CiAgICAgICAgICAgIGRlbGV0ZSB0aGlzLnJlZnNbc2NoZW1hS2V5UmVmXTsKICAgICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgICAgICB9CiAgICAgICAgICBjYXNlICJvYmplY3QiOiB7CiAgICAgICAgICAgIGNvbnN0IGNhY2hlS2V5ID0gc2NoZW1hS2V5UmVmOwogICAgICAgICAgICB0aGlzLl9jYWNoZS5kZWxldGUoY2FjaGVLZXkpOwogICAgICAgICAgICBsZXQgaWQgPSBzY2hlbWFLZXlSZWZbdGhpcy5vcHRzLnNjaGVtYUlkXTsKICAgICAgICAgICAgaWYgKGlkKSB7CiAgICAgICAgICAgICAgaWQgPSAoMCwgcmVzb2x2ZV8xLm5vcm1hbGl6ZUlkKShpZCk7CiAgICAgICAgICAgICAgZGVsZXRlIHRoaXMuc2NoZW1hc1tpZF07CiAgICAgICAgICAgICAgZGVsZXRlIHRoaXMucmVmc1tpZF07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgICAgICB9CiAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdi5yZW1vdmVTY2hlbWE6IGludmFsaWQgcGFyYW1ldGVyIik7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8vIGFkZCAidm9jYWJ1bGFyeSIgLSBhIGNvbGxlY3Rpb24gb2Yga2V5d29yZHMKICAgICAgYWRkVm9jYWJ1bGFyeShkZWZpbml0aW9ucykgewogICAgICAgIGZvciAoY29uc3QgZGVmIG9mIGRlZmluaXRpb25zKQogICAgICAgICAgdGhpcy5hZGRLZXl3b3JkKGRlZik7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgYWRkS2V5d29yZChrd2RPckRlZiwgZGVmKSB7CiAgICAgICAgbGV0IGtleXdvcmQ7CiAgICAgICAgaWYgKHR5cGVvZiBrd2RPckRlZiA9PSAic3RyaW5nIikgewogICAgICAgICAga2V5d29yZCA9IGt3ZE9yRGVmOwogICAgICAgICAgaWYgKHR5cGVvZiBkZWYgPT0gIm9iamVjdCIpIHsKICAgICAgICAgICAgdGhpcy5sb2dnZXIud2FybigidGhlc2UgcGFyYW1ldGVycyBhcmUgZGVwcmVjYXRlZCwgc2VlIGRvY3MgZm9yIGFkZEtleXdvcmQiKTsKICAgICAgICAgICAgZGVmLmtleXdvcmQgPSBrZXl3b3JkOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGt3ZE9yRGVmID09ICJvYmplY3QiICYmIGRlZiA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWYgPSBrd2RPckRlZjsKICAgICAgICAgIGtleXdvcmQgPSBkZWYua2V5d29yZDsKICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGtleXdvcmQpICYmICFrZXl3b3JkLmxlbmd0aCkgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFkZEtleXdvcmRzOiBrZXl3b3JkIG11c3QgYmUgc3RyaW5nIG9yIG5vbi1lbXB0eSBhcnJheSIpOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImludmFsaWQgYWRkS2V5d29yZHMgcGFyYW1ldGVycyIpOwogICAgICAgIH0KICAgICAgICBjaGVja0tleXdvcmQuY2FsbCh0aGlzLCBrZXl3b3JkLCBkZWYpOwogICAgICAgIGlmICghZGVmKSB7CiAgICAgICAgICAoMCwgdXRpbF8xLmVhY2hJdGVtKShrZXl3b3JkLCAoa3dkKSA9PiBhZGRSdWxlLmNhbGwodGhpcywga3dkKSk7CiAgICAgICAgICByZXR1cm4gdGhpczsKICAgICAgICB9CiAgICAgICAga2V5d29yZE1ldGFzY2hlbWEuY2FsbCh0aGlzLCBkZWYpOwogICAgICAgIGNvbnN0IGRlZmluaXRpb24gPSB7CiAgICAgICAgICAuLi5kZWYsCiAgICAgICAgICB0eXBlOiAoMCwgZGF0YVR5cGVfMS5nZXRKU09OVHlwZXMpKGRlZi50eXBlKSwKICAgICAgICAgIHNjaGVtYVR5cGU6ICgwLCBkYXRhVHlwZV8xLmdldEpTT05UeXBlcykoZGVmLnNjaGVtYVR5cGUpCiAgICAgICAgfTsKICAgICAgICAoMCwgdXRpbF8xLmVhY2hJdGVtKShrZXl3b3JkLCBkZWZpbml0aW9uLnR5cGUubGVuZ3RoID09PSAwID8gKGspID0+IGFkZFJ1bGUuY2FsbCh0aGlzLCBrLCBkZWZpbml0aW9uKSA6IChrKSA9PiBkZWZpbml0aW9uLnR5cGUuZm9yRWFjaCgodCkgPT4gYWRkUnVsZS5jYWxsKHRoaXMsIGssIGRlZmluaXRpb24sIHQpKSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgZ2V0S2V5d29yZChrZXl3b3JkKSB7CiAgICAgICAgY29uc3QgcnVsZSA9IHRoaXMuUlVMRVMuYWxsW2tleXdvcmRdOwogICAgICAgIHJldHVybiB0eXBlb2YgcnVsZSA9PSAib2JqZWN0IiA/IHJ1bGUuZGVmaW5pdGlvbiA6ICEhcnVsZTsKICAgICAgfQogICAgICAvLyBSZW1vdmUga2V5d29yZAogICAgICByZW1vdmVLZXl3b3JkKGtleXdvcmQpIHsKICAgICAgICBjb25zdCB7IFJVTEVTIH0gPSB0aGlzOwogICAgICAgIGRlbGV0ZSBSVUxFUy5rZXl3b3Jkc1trZXl3b3JkXTsKICAgICAgICBkZWxldGUgUlVMRVMuYWxsW2tleXdvcmRdOwogICAgICAgIGZvciAoY29uc3QgZ3JvdXAgb2YgUlVMRVMucnVsZXMpIHsKICAgICAgICAgIGNvbnN0IGkgPSBncm91cC5ydWxlcy5maW5kSW5kZXgoKHJ1bGUpID0+IHJ1bGUua2V5d29yZCA9PT0ga2V5d29yZCk7CiAgICAgICAgICBpZiAoaSA+PSAwKQogICAgICAgICAgICBncm91cC5ydWxlcy5zcGxpY2UoaSwgMSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIC8vIEFkZCBmb3JtYXQKICAgICAgYWRkRm9ybWF0KG5hbWUsIGZvcm1hdCkgewogICAgICAgIGlmICh0eXBlb2YgZm9ybWF0ID09ICJzdHJpbmciKQogICAgICAgICAgZm9ybWF0ID0gbmV3IFJlZ0V4cChmb3JtYXQpOwogICAgICAgIHRoaXMuZm9ybWF0c1tuYW1lXSA9IGZvcm1hdDsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBlcnJvcnNUZXh0KGVycm9ycyA9IHRoaXMuZXJyb3JzLCB7IHNlcGFyYXRvciA9ICIsICIsIGRhdGFWYXIgPSAiZGF0YSIgfSA9IHt9KSB7CiAgICAgICAgaWYgKCFlcnJvcnMgfHwgZXJyb3JzLmxlbmd0aCA9PT0gMCkKICAgICAgICAgIHJldHVybiAiTm8gZXJyb3JzIjsKICAgICAgICByZXR1cm4gZXJyb3JzLm1hcCgoZSkgPT4gYCR7ZGF0YVZhcn0ke2UuaW5zdGFuY2VQYXRofSAke2UubWVzc2FnZX1gKS5yZWR1Y2UoKHRleHQsIG1zZykgPT4gdGV4dCArIHNlcGFyYXRvciArIG1zZyk7CiAgICAgIH0KICAgICAgJGRhdGFNZXRhU2NoZW1hKG1ldGFTY2hlbWEsIGtleXdvcmRzSnNvblBvaW50ZXJzKSB7CiAgICAgICAgY29uc3QgcnVsZXMgPSB0aGlzLlJVTEVTLmFsbDsKICAgICAgICBtZXRhU2NoZW1hID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShtZXRhU2NoZW1hKSk7CiAgICAgICAgZm9yIChjb25zdCBqc29uUG9pbnRlciBvZiBrZXl3b3Jkc0pzb25Qb2ludGVycykgewogICAgICAgICAgY29uc3Qgc2VnbWVudHMgPSBqc29uUG9pbnRlci5zcGxpdCgiLyIpLnNsaWNlKDEpOwogICAgICAgICAgbGV0IGtleXdvcmRzID0gbWV0YVNjaGVtYTsKICAgICAgICAgIGZvciAoY29uc3Qgc2VnIG9mIHNlZ21lbnRzKQogICAgICAgICAgICBrZXl3b3JkcyA9IGtleXdvcmRzW3NlZ107CiAgICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiBydWxlcykgewogICAgICAgICAgICBjb25zdCBydWxlID0gcnVsZXNba2V5XTsKICAgICAgICAgICAgaWYgKHR5cGVvZiBydWxlICE9ICJvYmplY3QiKQogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICBjb25zdCB7ICRkYXRhIH0gPSBydWxlLmRlZmluaXRpb247CiAgICAgICAgICAgIGNvbnN0IHNjaGVtYSA9IGtleXdvcmRzW2tleV07CiAgICAgICAgICAgIGlmICgkZGF0YSAmJiBzY2hlbWEpCiAgICAgICAgICAgICAga2V5d29yZHNba2V5XSA9IHNjaGVtYU9yRGF0YShzY2hlbWEpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gbWV0YVNjaGVtYTsKICAgICAgfQogICAgICBfcmVtb3ZlQWxsU2NoZW1hcyhzY2hlbWFzLCByZWdleCkgewogICAgICAgIGZvciAoY29uc3Qga2V5UmVmIGluIHNjaGVtYXMpIHsKICAgICAgICAgIGNvbnN0IHNjaCA9IHNjaGVtYXNba2V5UmVmXTsKICAgICAgICAgIGlmICghcmVnZXggfHwgcmVnZXgudGVzdChrZXlSZWYpKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2Ygc2NoID09ICJzdHJpbmciKSB7CiAgICAgICAgICAgICAgZGVsZXRlIHNjaGVtYXNba2V5UmVmXTsKICAgICAgICAgICAgfSBlbHNlIGlmIChzY2ggJiYgIXNjaC5tZXRhKSB7CiAgICAgICAgICAgICAgdGhpcy5fY2FjaGUuZGVsZXRlKHNjaC5zY2hlbWEpOwogICAgICAgICAgICAgIGRlbGV0ZSBzY2hlbWFzW2tleVJlZl07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgX2FkZFNjaGVtYShzY2hlbWEsIG1ldGEsIGJhc2VJZCwgdmFsaWRhdGVTY2hlbWEgPSB0aGlzLm9wdHMudmFsaWRhdGVTY2hlbWEsIGFkZFNjaGVtYSA9IHRoaXMub3B0cy5hZGRVc2VkU2NoZW1hKSB7CiAgICAgICAgbGV0IGlkOwogICAgICAgIGNvbnN0IHsgc2NoZW1hSWQgfSA9IHRoaXMub3B0czsKICAgICAgICBpZiAodHlwZW9mIHNjaGVtYSA9PSAib2JqZWN0IikgewogICAgICAgICAgaWQgPSBzY2hlbWFbc2NoZW1hSWRdOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBpZiAodGhpcy5vcHRzLmp0ZCkKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJzY2hlbWEgbXVzdCBiZSBvYmplY3QiKTsKICAgICAgICAgIGVsc2UgaWYgKHR5cGVvZiBzY2hlbWEgIT0gImJvb2xlYW4iKQogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoInNjaGVtYSBtdXN0IGJlIG9iamVjdCBvciBib29sZWFuIik7CiAgICAgICAgfQogICAgICAgIGxldCBzY2ggPSB0aGlzLl9jYWNoZS5nZXQoc2NoZW1hKTsKICAgICAgICBpZiAoc2NoICE9PSB2b2lkIDApCiAgICAgICAgICByZXR1cm4gc2NoOwogICAgICAgIGJhc2VJZCA9ICgwLCByZXNvbHZlXzEubm9ybWFsaXplSWQpKGlkIHx8IGJhc2VJZCk7CiAgICAgICAgY29uc3QgbG9jYWxSZWZzID0gcmVzb2x2ZV8xLmdldFNjaGVtYVJlZnMuY2FsbCh0aGlzLCBzY2hlbWEsIGJhc2VJZCk7CiAgICAgICAgc2NoID0gbmV3IGNvbXBpbGVfMS5TY2hlbWFFbnYoeyBzY2hlbWEsIHNjaGVtYUlkLCBtZXRhLCBiYXNlSWQsIGxvY2FsUmVmcyB9KTsKICAgICAgICB0aGlzLl9jYWNoZS5zZXQoc2NoLnNjaGVtYSwgc2NoKTsKICAgICAgICBpZiAoYWRkU2NoZW1hICYmICFiYXNlSWQuc3RhcnRzV2l0aCgiIyIpKSB7CiAgICAgICAgICBpZiAoYmFzZUlkKQogICAgICAgICAgICB0aGlzLl9jaGVja1VuaXF1ZShiYXNlSWQpOwogICAgICAgICAgdGhpcy5yZWZzW2Jhc2VJZF0gPSBzY2g7CiAgICAgICAgfQogICAgICAgIGlmICh2YWxpZGF0ZVNjaGVtYSkKICAgICAgICAgIHRoaXMudmFsaWRhdGVTY2hlbWEoc2NoZW1hLCB0cnVlKTsKICAgICAgICByZXR1cm4gc2NoOwogICAgICB9CiAgICAgIF9jaGVja1VuaXF1ZShpZCkgewogICAgICAgIGlmICh0aGlzLnNjaGVtYXNbaWRdIHx8IHRoaXMucmVmc1tpZF0pIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgc2NoZW1hIHdpdGgga2V5IG9yIGlkICIke2lkfSIgYWxyZWFkeSBleGlzdHNgKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgX2NvbXBpbGVTY2hlbWFFbnYoc2NoKSB7CiAgICAgICAgaWYgKHNjaC5tZXRhKQogICAgICAgICAgdGhpcy5fY29tcGlsZU1ldGFTY2hlbWEoc2NoKTsKICAgICAgICBlbHNlCiAgICAgICAgICBjb21waWxlXzEuY29tcGlsZVNjaGVtYS5jYWxsKHRoaXMsIHNjaCk7CiAgICAgICAgaWYgKCFzY2gudmFsaWRhdGUpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICAgIHJldHVybiBzY2gudmFsaWRhdGU7CiAgICAgIH0KICAgICAgX2NvbXBpbGVNZXRhU2NoZW1hKHNjaCkgewogICAgICAgIGNvbnN0IGN1cnJlbnRPcHRzID0gdGhpcy5vcHRzOwogICAgICAgIHRoaXMub3B0cyA9IHRoaXMuX21ldGFPcHRzOwogICAgICAgIHRyeSB7CiAgICAgICAgICBjb21waWxlXzEuY29tcGlsZVNjaGVtYS5jYWxsKHRoaXMsIHNjaCk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIHRoaXMub3B0cyA9IGN1cnJlbnRPcHRzOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIEFqdi5WYWxpZGF0aW9uRXJyb3IgPSB2YWxpZGF0aW9uX2Vycm9yXzEuZGVmYXVsdDsKICAgIEFqdi5NaXNzaW5nUmVmRXJyb3IgPSByZWZfZXJyb3JfMS5kZWZhdWx0OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IEFqdjsKICAgIGZ1bmN0aW9uIGNoZWNrT3B0aW9ucyhjaGVja09wdHMsIG9wdGlvbnMsIG1zZywgbG9nID0gImVycm9yIikgewogICAgICBmb3IgKGNvbnN0IGtleSBpbiBjaGVja09wdHMpIHsKICAgICAgICBjb25zdCBvcHQgPSBrZXk7CiAgICAgICAgaWYgKG9wdCBpbiBvcHRpb25zKQogICAgICAgICAgdGhpcy5sb2dnZXJbbG9nXShgJHttc2d9OiBvcHRpb24gJHtrZXl9LiAke2NoZWNrT3B0c1tvcHRdfWApOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBnZXRTY2hFbnYoa2V5UmVmKSB7CiAgICAgIGtleVJlZiA9ICgwLCByZXNvbHZlXzEubm9ybWFsaXplSWQpKGtleVJlZik7CiAgICAgIHJldHVybiB0aGlzLnNjaGVtYXNba2V5UmVmXSB8fCB0aGlzLnJlZnNba2V5UmVmXTsKICAgIH0KICAgIGZ1bmN0aW9uIGFkZEluaXRpYWxTY2hlbWFzKCkgewogICAgICBjb25zdCBvcHRzU2NoZW1hcyA9IHRoaXMub3B0cy5zY2hlbWFzOwogICAgICBpZiAoIW9wdHNTY2hlbWFzKQogICAgICAgIHJldHVybjsKICAgICAgaWYgKEFycmF5LmlzQXJyYXkob3B0c1NjaGVtYXMpKQogICAgICAgIHRoaXMuYWRkU2NoZW1hKG9wdHNTY2hlbWFzKTsKICAgICAgZWxzZQogICAgICAgIGZvciAoY29uc3Qga2V5IGluIG9wdHNTY2hlbWFzKQogICAgICAgICAgdGhpcy5hZGRTY2hlbWEob3B0c1NjaGVtYXNba2V5XSwga2V5KTsKICAgIH0KICAgIGZ1bmN0aW9uIGFkZEluaXRpYWxGb3JtYXRzKCkgewogICAgICBmb3IgKGNvbnN0IG5hbWUgaW4gdGhpcy5vcHRzLmZvcm1hdHMpIHsKICAgICAgICBjb25zdCBmb3JtYXQgPSB0aGlzLm9wdHMuZm9ybWF0c1tuYW1lXTsKICAgICAgICBpZiAoZm9ybWF0KQogICAgICAgICAgdGhpcy5hZGRGb3JtYXQobmFtZSwgZm9ybWF0KTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gYWRkSW5pdGlhbEtleXdvcmRzKGRlZnMpIHsKICAgICAgaWYgKEFycmF5LmlzQXJyYXkoZGVmcykpIHsKICAgICAgICB0aGlzLmFkZFZvY2FidWxhcnkoZGVmcyk7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIHRoaXMubG9nZ2VyLndhcm4oImtleXdvcmRzIG9wdGlvbiBhcyBtYXAgaXMgZGVwcmVjYXRlZCwgcGFzcyBhcnJheSIpOwogICAgICBmb3IgKGNvbnN0IGtleXdvcmQgaW4gZGVmcykgewogICAgICAgIGNvbnN0IGRlZiA9IGRlZnNba2V5d29yZF07CiAgICAgICAgaWYgKCFkZWYua2V5d29yZCkKICAgICAgICAgIGRlZi5rZXl3b3JkID0ga2V5d29yZDsKICAgICAgICB0aGlzLmFkZEtleXdvcmQoZGVmKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gZ2V0TWV0YVNjaGVtYU9wdGlvbnMoKSB7CiAgICAgIGNvbnN0IG1ldGFPcHRzID0geyAuLi50aGlzLm9wdHMgfTsKICAgICAgZm9yIChjb25zdCBvcHQgb2YgTUVUQV9JR05PUkVfT1BUSU9OUykKICAgICAgICBkZWxldGUgbWV0YU9wdHNbb3B0XTsKICAgICAgcmV0dXJuIG1ldGFPcHRzOwogICAgfQogICAgdmFyIG5vTG9ncyA9IHsgbG9nKCkgewogICAgfSwgd2FybigpIHsKICAgIH0sIGVycm9yKCkgewogICAgfSB9OwogICAgZnVuY3Rpb24gZ2V0TG9nZ2VyKGxvZ2dlcikgewogICAgICBpZiAobG9nZ2VyID09PSBmYWxzZSkKICAgICAgICByZXR1cm4gbm9Mb2dzOwogICAgICBpZiAobG9nZ2VyID09PSB2b2lkIDApCiAgICAgICAgcmV0dXJuIGNvbnNvbGU7CiAgICAgIGlmIChsb2dnZXIubG9nICYmIGxvZ2dlci53YXJuICYmIGxvZ2dlci5lcnJvcikKICAgICAgICByZXR1cm4gbG9nZ2VyOwogICAgICB0aHJvdyBuZXcgRXJyb3IoImxvZ2dlciBtdXN0IGltcGxlbWVudCBsb2csIHdhcm4gYW5kIGVycm9yIG1ldGhvZHMiKTsKICAgIH0KICAgIHZhciBLRVlXT1JEX05BTUUgPSAvXlthLXpfJF1bYS16MC05XyQ6LV0qJC9pOwogICAgZnVuY3Rpb24gY2hlY2tLZXl3b3JkKGtleXdvcmQsIGRlZikgewogICAgICBjb25zdCB7IFJVTEVTIH0gPSB0aGlzOwogICAgICAoMCwgdXRpbF8xLmVhY2hJdGVtKShrZXl3b3JkLCAoa3dkKSA9PiB7CiAgICAgICAgaWYgKFJVTEVTLmtleXdvcmRzW2t3ZF0pCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEtleXdvcmQgJHtrd2R9IGlzIGFscmVhZHkgZGVmaW5lZGApOwogICAgICAgIGlmICghS0VZV09SRF9OQU1FLnRlc3Qoa3dkKSkKICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgS2V5d29yZCAke2t3ZH0gaGFzIGludmFsaWQgbmFtZWApOwogICAgICB9KTsKICAgICAgaWYgKCFkZWYpCiAgICAgICAgcmV0dXJuOwogICAgICBpZiAoZGVmLiRkYXRhICYmICEoImNvZGUiIGluIGRlZiB8fCAidmFsaWRhdGUiIGluIGRlZikpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJyRkYXRhIGtleXdvcmQgbXVzdCBoYXZlICJjb2RlIiBvciAidmFsaWRhdGUiIGZ1bmN0aW9uJyk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGFkZFJ1bGUoa2V5d29yZCwgZGVmaW5pdGlvbiwgZGF0YVR5cGUpIHsKICAgICAgdmFyIF9hOwogICAgICBjb25zdCBwb3N0ID0gZGVmaW5pdGlvbiA9PT0gbnVsbCB8fCBkZWZpbml0aW9uID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkZWZpbml0aW9uLnBvc3Q7CiAgICAgIGlmIChkYXRhVHlwZSAmJiBwb3N0KQogICAgICAgIHRocm93IG5ldyBFcnJvcigna2V5d29yZCB3aXRoICJwb3N0IiBmbGFnIGNhbm5vdCBoYXZlICJ0eXBlIicpOwogICAgICBjb25zdCB7IFJVTEVTIH0gPSB0aGlzOwogICAgICBsZXQgcnVsZUdyb3VwID0gcG9zdCA/IFJVTEVTLnBvc3QgOiBSVUxFUy5ydWxlcy5maW5kKCh7IHR5cGU6IHQgfSkgPT4gdCA9PT0gZGF0YVR5cGUpOwogICAgICBpZiAoIXJ1bGVHcm91cCkgewogICAgICAgIHJ1bGVHcm91cCA9IHsgdHlwZTogZGF0YVR5cGUsIHJ1bGVzOiBbXSB9OwogICAgICAgIFJVTEVTLnJ1bGVzLnB1c2gocnVsZUdyb3VwKTsKICAgICAgfQogICAgICBSVUxFUy5rZXl3b3Jkc1trZXl3b3JkXSA9IHRydWU7CiAgICAgIGlmICghZGVmaW5pdGlvbikKICAgICAgICByZXR1cm47CiAgICAgIGNvbnN0IHJ1bGUgPSB7CiAgICAgICAga2V5d29yZCwKICAgICAgICBkZWZpbml0aW9uOiB7CiAgICAgICAgICAuLi5kZWZpbml0aW9uLAogICAgICAgICAgdHlwZTogKDAsIGRhdGFUeXBlXzEuZ2V0SlNPTlR5cGVzKShkZWZpbml0aW9uLnR5cGUpLAogICAgICAgICAgc2NoZW1hVHlwZTogKDAsIGRhdGFUeXBlXzEuZ2V0SlNPTlR5cGVzKShkZWZpbml0aW9uLnNjaGVtYVR5cGUpCiAgICAgICAgfQogICAgICB9OwogICAgICBpZiAoZGVmaW5pdGlvbi5iZWZvcmUpCiAgICAgICAgYWRkQmVmb3JlUnVsZS5jYWxsKHRoaXMsIHJ1bGVHcm91cCwgcnVsZSwgZGVmaW5pdGlvbi5iZWZvcmUpOwogICAgICBlbHNlCiAgICAgICAgcnVsZUdyb3VwLnJ1bGVzLnB1c2gocnVsZSk7CiAgICAgIFJVTEVTLmFsbFtrZXl3b3JkXSA9IHJ1bGU7CiAgICAgIChfYSA9IGRlZmluaXRpb24uaW1wbGVtZW50cykgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmZvckVhY2goKGt3ZCkgPT4gdGhpcy5hZGRLZXl3b3JkKGt3ZCkpOwogICAgfQogICAgZnVuY3Rpb24gYWRkQmVmb3JlUnVsZShydWxlR3JvdXAsIHJ1bGUsIGJlZm9yZSkgewogICAgICBjb25zdCBpID0gcnVsZUdyb3VwLnJ1bGVzLmZpbmRJbmRleCgoX3J1bGUpID0+IF9ydWxlLmtleXdvcmQgPT09IGJlZm9yZSk7CiAgICAgIGlmIChpID49IDApIHsKICAgICAgICBydWxlR3JvdXAucnVsZXMuc3BsaWNlKGksIDAsIHJ1bGUpOwogICAgICB9IGVsc2UgewogICAgICAgIHJ1bGVHcm91cC5ydWxlcy5wdXNoKHJ1bGUpOwogICAgICAgIHRoaXMubG9nZ2VyLndhcm4oYHJ1bGUgJHtiZWZvcmV9IGlzIG5vdCBkZWZpbmVkYCk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGtleXdvcmRNZXRhc2NoZW1hKGRlZikgewogICAgICBsZXQgeyBtZXRhU2NoZW1hIH0gPSBkZWY7CiAgICAgIGlmIChtZXRhU2NoZW1hID09PSB2b2lkIDApCiAgICAgICAgcmV0dXJuOwogICAgICBpZiAoZGVmLiRkYXRhICYmIHRoaXMub3B0cy4kZGF0YSkKICAgICAgICBtZXRhU2NoZW1hID0gc2NoZW1hT3JEYXRhKG1ldGFTY2hlbWEpOwogICAgICBkZWYudmFsaWRhdGVTY2hlbWEgPSB0aGlzLmNvbXBpbGUobWV0YVNjaGVtYSwgdHJ1ZSk7CiAgICB9CiAgICB2YXIgJGRhdGFSZWYgPSB7CiAgICAgICRyZWY6ICJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vYWp2LXZhbGlkYXRvci9hanYvbWFzdGVyL2xpYi9yZWZzL2RhdGEuanNvbiMiCiAgICB9OwogICAgZnVuY3Rpb24gc2NoZW1hT3JEYXRhKHNjaGVtYSkgewogICAgICByZXR1cm4geyBhbnlPZjogW3NjaGVtYSwgJGRhdGFSZWZdIH07CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvY29yZS9pZC5qcwp2YXIgcmVxdWlyZV9pZCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2NvcmUvaWQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJpZCIsCiAgICAgIGNvZGUoKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdOT1QgU1VQUE9SVEVEOiBrZXl3b3JkICJpZCIsIHVzZSAiJGlkIiBmb3Igc2NoZW1hIElEJyk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2NvcmUvcmVmLmpzCnZhciByZXF1aXJlX3JlZiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2NvcmUvcmVmLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jYWxsUmVmID0gZXhwb3J0czIuZ2V0VmFsaWRhdGUgPSB2b2lkIDA7CiAgICB2YXIgcmVmX2Vycm9yXzEgPSByZXF1aXJlX3JlZl9lcnJvcigpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBuYW1lc18xID0gcmVxdWlyZV9uYW1lcygpOwogICAgdmFyIGNvbXBpbGVfMSA9IHJlcXVpcmVfY29tcGlsZSgpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogIiRyZWYiLAogICAgICBzY2hlbWFUeXBlOiAic3RyaW5nIiwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgc2NoZW1hOiAkcmVmLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgYmFzZUlkLCBzY2hlbWFFbnY6IGVudiwgdmFsaWRhdGVOYW1lLCBvcHRzLCBzZWxmOiBzZWxmMiB9ID0gaXQ7CiAgICAgICAgY29uc3QgeyByb290IH0gPSBlbnY7CiAgICAgICAgaWYgKCgkcmVmID09PSAiIyIgfHwgJHJlZiA9PT0gIiMvIikgJiYgYmFzZUlkID09PSByb290LmJhc2VJZCkKICAgICAgICAgIHJldHVybiBjYWxsUm9vdFJlZigpOwogICAgICAgIGNvbnN0IHNjaE9yRW52ID0gY29tcGlsZV8xLnJlc29sdmVSZWYuY2FsbChzZWxmMiwgcm9vdCwgYmFzZUlkLCAkcmVmKTsKICAgICAgICBpZiAoc2NoT3JFbnYgPT09IHZvaWQgMCkKICAgICAgICAgIHRocm93IG5ldyByZWZfZXJyb3JfMS5kZWZhdWx0KGl0Lm9wdHMudXJpUmVzb2x2ZXIsIGJhc2VJZCwgJHJlZik7CiAgICAgICAgaWYgKHNjaE9yRW52IGluc3RhbmNlb2YgY29tcGlsZV8xLlNjaGVtYUVudikKICAgICAgICAgIHJldHVybiBjYWxsVmFsaWRhdGUoc2NoT3JFbnYpOwogICAgICAgIHJldHVybiBpbmxpbmVSZWZTY2hlbWEoc2NoT3JFbnYpOwogICAgICAgIGZ1bmN0aW9uIGNhbGxSb290UmVmKCkgewogICAgICAgICAgaWYgKGVudiA9PT0gcm9vdCkKICAgICAgICAgICAgcmV0dXJuIGNhbGxSZWYoY3h0LCB2YWxpZGF0ZU5hbWUsIGVudiwgZW52LiRhc3luYyk7CiAgICAgICAgICBjb25zdCByb290TmFtZSA9IGdlbi5zY29wZVZhbHVlKCJyb290IiwgeyByZWY6IHJvb3QgfSk7CiAgICAgICAgICByZXR1cm4gY2FsbFJlZihjeHQsICgwLCBjb2RlZ2VuXzEuXylgJHtyb290TmFtZX0udmFsaWRhdGVgLCByb290LCByb290LiRhc3luYyk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGNhbGxWYWxpZGF0ZShzY2gpIHsKICAgICAgICAgIGNvbnN0IHYgPSBnZXRWYWxpZGF0ZShjeHQsIHNjaCk7CiAgICAgICAgICBjYWxsUmVmKGN4dCwgdiwgc2NoLCBzY2guJGFzeW5jKTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gaW5saW5lUmVmU2NoZW1hKHNjaCkgewogICAgICAgICAgY29uc3Qgc2NoTmFtZSA9IGdlbi5zY29wZVZhbHVlKCJzY2hlbWEiLCBvcHRzLmNvZGUuc291cmNlID09PSB0cnVlID8geyByZWY6IHNjaCwgY29kZTogKDAsIGNvZGVnZW5fMS5zdHJpbmdpZnkpKHNjaCkgfSA6IHsgcmVmOiBzY2ggfSk7CiAgICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICAgICAgY29uc3Qgc2NoQ3h0ID0gY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgIHNjaGVtYTogc2NoLAogICAgICAgICAgICBkYXRhVHlwZXM6IFtdLAogICAgICAgICAgICBzY2hlbWFQYXRoOiBjb2RlZ2VuXzEubmlsLAogICAgICAgICAgICB0b3BTY2hlbWFSZWY6IHNjaE5hbWUsCiAgICAgICAgICAgIGVyclNjaGVtYVBhdGg6ICRyZWYKICAgICAgICAgIH0sIHZhbGlkKTsKICAgICAgICAgIGN4dC5tZXJnZUV2YWx1YXRlZChzY2hDeHQpOwogICAgICAgICAgY3h0Lm9rKHZhbGlkKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBmdW5jdGlvbiBnZXRWYWxpZGF0ZShjeHQsIHNjaCkgewogICAgICBjb25zdCB7IGdlbiB9ID0gY3h0OwogICAgICByZXR1cm4gc2NoLnZhbGlkYXRlID8gZ2VuLnNjb3BlVmFsdWUoInZhbGlkYXRlIiwgeyByZWY6IHNjaC52YWxpZGF0ZSB9KSA6ICgwLCBjb2RlZ2VuXzEuXylgJHtnZW4uc2NvcGVWYWx1ZSgid3JhcHBlciIsIHsgcmVmOiBzY2ggfSl9LnZhbGlkYXRlYDsKICAgIH0KICAgIGV4cG9ydHMyLmdldFZhbGlkYXRlID0gZ2V0VmFsaWRhdGU7CiAgICBmdW5jdGlvbiBjYWxsUmVmKGN4dCwgdiwgc2NoLCAkYXN5bmMpIHsKICAgICAgY29uc3QgeyBnZW4sIGl0IH0gPSBjeHQ7CiAgICAgIGNvbnN0IHsgYWxsRXJyb3JzLCBzY2hlbWFFbnY6IGVudiwgb3B0cyB9ID0gaXQ7CiAgICAgIGNvbnN0IHBhc3NDeHQgPSBvcHRzLnBhc3NDb250ZXh0ID8gbmFtZXNfMS5kZWZhdWx0LnRoaXMgOiBjb2RlZ2VuXzEubmlsOwogICAgICBpZiAoJGFzeW5jKQogICAgICAgIGNhbGxBc3luY1JlZigpOwogICAgICBlbHNlCiAgICAgICAgY2FsbFN5bmNSZWYoKTsKICAgICAgZnVuY3Rpb24gY2FsbEFzeW5jUmVmKCkgewogICAgICAgIGlmICghZW52LiRhc3luYykKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiYXN5bmMgc2NoZW1hIHJlZmVyZW5jZWQgYnkgc3luYyBzY2hlbWEiKTsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5sZXQoInZhbGlkIik7CiAgICAgICAgZ2VuLnRyeSgoKSA9PiB7CiAgICAgICAgICBnZW4uY29kZSgoMCwgY29kZWdlbl8xLl8pYGF3YWl0ICR7KDAsIGNvZGVfMS5jYWxsVmFsaWRhdGVDb2RlKShjeHQsIHYsIHBhc3NDeHQpfWApOwogICAgICAgICAgYWRkRXZhbHVhdGVkRnJvbSh2KTsKICAgICAgICAgIGlmICghYWxsRXJyb3JzKQogICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCB0cnVlKTsKICAgICAgICB9LCAoZSkgPT4gewogICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgISgke2V9IGluc3RhbmNlb2YgJHtpdC5WYWxpZGF0aW9uRXJyb3J9KWAsICgpID0+IGdlbi50aHJvdyhlKSk7CiAgICAgICAgICBhZGRFcnJvcnNGcm9tKGUpOwogICAgICAgICAgaWYgKCFhbGxFcnJvcnMpCiAgICAgICAgICAgIGdlbi5hc3NpZ24odmFsaWQsIGZhbHNlKTsKICAgICAgICB9KTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGNhbGxTeW5jUmVmKCkgewogICAgICAgIGN4dC5yZXN1bHQoKDAsIGNvZGVfMS5jYWxsVmFsaWRhdGVDb2RlKShjeHQsIHYsIHBhc3NDeHQpLCAoKSA9PiBhZGRFdmFsdWF0ZWRGcm9tKHYpLCAoKSA9PiBhZGRFcnJvcnNGcm9tKHYpKTsKICAgICAgfQogICAgICBmdW5jdGlvbiBhZGRFcnJvcnNGcm9tKHNvdXJjZSkgewogICAgICAgIGNvbnN0IGVycnMgPSAoMCwgY29kZWdlbl8xLl8pYCR7c291cmNlfS5lcnJvcnNgOwogICAgICAgIGdlbi5hc3NpZ24obmFtZXNfMS5kZWZhdWx0LnZFcnJvcnMsICgwLCBjb2RlZ2VuXzEuXylgJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30gPT09IG51bGwgPyAke2VycnN9IDogJHtuYW1lc18xLmRlZmF1bHQudkVycm9yc30uY29uY2F0KCR7ZXJyc30pYCk7CiAgICAgICAgZ2VuLmFzc2lnbihuYW1lc18xLmRlZmF1bHQuZXJyb3JzLCAoMCwgY29kZWdlbl8xLl8pYCR7bmFtZXNfMS5kZWZhdWx0LnZFcnJvcnN9Lmxlbmd0aGApOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGFkZEV2YWx1YXRlZEZyb20oc291cmNlKSB7CiAgICAgICAgdmFyIF9hOwogICAgICAgIGlmICghaXQub3B0cy51bmV2YWx1YXRlZCkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCBzY2hFdmFsdWF0ZWQgPSAoX2EgPSBzY2ggPT09IG51bGwgfHwgc2NoID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzY2gudmFsaWRhdGUpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5ldmFsdWF0ZWQ7CiAgICAgICAgaWYgKGl0LnByb3BzICE9PSB0cnVlKSB7CiAgICAgICAgICBpZiAoc2NoRXZhbHVhdGVkICYmICFzY2hFdmFsdWF0ZWQuZHluYW1pY1Byb3BzKSB7CiAgICAgICAgICAgIGlmIChzY2hFdmFsdWF0ZWQucHJvcHMgIT09IHZvaWQgMCkgewogICAgICAgICAgICAgIGl0LnByb3BzID0gdXRpbF8xLm1lcmdlRXZhbHVhdGVkLnByb3BzKGdlbiwgc2NoRXZhbHVhdGVkLnByb3BzLCBpdC5wcm9wcyk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IHByb3BzID0gZ2VuLnZhcigicHJvcHMiLCAoMCwgY29kZWdlbl8xLl8pYCR7c291cmNlfS5ldmFsdWF0ZWQucHJvcHNgKTsKICAgICAgICAgICAgaXQucHJvcHMgPSB1dGlsXzEubWVyZ2VFdmFsdWF0ZWQucHJvcHMoZ2VuLCBwcm9wcywgaXQucHJvcHMsIGNvZGVnZW5fMS5OYW1lKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKGl0Lml0ZW1zICE9PSB0cnVlKSB7CiAgICAgICAgICBpZiAoc2NoRXZhbHVhdGVkICYmICFzY2hFdmFsdWF0ZWQuZHluYW1pY0l0ZW1zKSB7CiAgICAgICAgICAgIGlmIChzY2hFdmFsdWF0ZWQuaXRlbXMgIT09IHZvaWQgMCkgewogICAgICAgICAgICAgIGl0Lml0ZW1zID0gdXRpbF8xLm1lcmdlRXZhbHVhdGVkLml0ZW1zKGdlbiwgc2NoRXZhbHVhdGVkLml0ZW1zLCBpdC5pdGVtcyk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IGl0ZW1zID0gZ2VuLnZhcigiaXRlbXMiLCAoMCwgY29kZWdlbl8xLl8pYCR7c291cmNlfS5ldmFsdWF0ZWQuaXRlbXNgKTsKICAgICAgICAgICAgaXQuaXRlbXMgPSB1dGlsXzEubWVyZ2VFdmFsdWF0ZWQuaXRlbXMoZ2VuLCBpdGVtcywgaXQuaXRlbXMsIGNvZGVnZW5fMS5OYW1lKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLmNhbGxSZWYgPSBjYWxsUmVmOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9jb3JlL2luZGV4LmpzCnZhciByZXF1aXJlX2NvcmUyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvY29yZS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGlkXzEgPSByZXF1aXJlX2lkKCk7CiAgICB2YXIgcmVmXzEgPSByZXF1aXJlX3JlZigpOwogICAgdmFyIGNvcmUgPSBbCiAgICAgICIkc2NoZW1hIiwKICAgICAgIiRpZCIsCiAgICAgICIkZGVmcyIsCiAgICAgICIkdm9jYWJ1bGFyeSIsCiAgICAgIHsga2V5d29yZDogIiRjb21tZW50IiB9LAogICAgICAiZGVmaW5pdGlvbnMiLAogICAgICBpZF8xLmRlZmF1bHQsCiAgICAgIHJlZl8xLmRlZmF1bHQKICAgIF07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gY29yZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2xpbWl0TnVtYmVyLmpzCnZhciByZXF1aXJlX2xpbWl0TnVtYmVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9saW1pdE51bWJlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIG9wcyA9IGNvZGVnZW5fMS5vcGVyYXRvcnM7CiAgICB2YXIgS1dEcyA9IHsKICAgICAgbWF4aW11bTogeyBva1N0cjogIjw9Iiwgb2s6IG9wcy5MVEUsIGZhaWw6IG9wcy5HVCB9LAogICAgICBtaW5pbXVtOiB7IG9rU3RyOiAiPj0iLCBvazogb3BzLkdURSwgZmFpbDogb3BzLkxUIH0sCiAgICAgIGV4Y2x1c2l2ZU1heGltdW06IHsgb2tTdHI6ICI8Iiwgb2s6IG9wcy5MVCwgZmFpbDogb3BzLkdURSB9LAogICAgICBleGNsdXNpdmVNaW5pbXVtOiB7IG9rU3RyOiAiPiIsIG9rOiBvcHMuR1QsIGZhaWw6IG9wcy5MVEUgfQogICAgfTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsga2V5d29yZCwgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBiZSAke0tXRHNba2V5d29yZF0ub2tTdHJ9ICR7c2NoZW1hQ29kZX1gLAogICAgICBwYXJhbXM6ICh7IGtleXdvcmQsIHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7Y29tcGFyaXNvbjogJHtLV0RzW2tleXdvcmRdLm9rU3RyfSwgbGltaXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6IE9iamVjdC5rZXlzKEtXRHMpLAogICAgICB0eXBlOiAibnVtYmVyIiwKICAgICAgc2NoZW1hVHlwZTogIm51bWJlciIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGtleXdvcmQsIGRhdGEsIHNjaGVtYUNvZGUgfSA9IGN4dDsKICAgICAgICBjeHQuZmFpbCRkYXRhKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSAke0tXRHNba2V5d29yZF0uZmFpbH0gJHtzY2hlbWFDb2RlfSB8fCBpc05hTigke2RhdGF9KWApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL211bHRpcGxlT2YuanMKdmFyIHJlcXVpcmVfbXVsdGlwbGVPZiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vbXVsdGlwbGVPZi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBzY2hlbWFDb2RlIH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IGJlIG11bHRpcGxlIG9mICR7c2NoZW1hQ29kZX1gLAogICAgICBwYXJhbXM6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7bXVsdGlwbGVPZjogJHtzY2hlbWFDb2RlfX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogIm11bHRpcGxlT2YiLAogICAgICB0eXBlOiAibnVtYmVyIiwKICAgICAgc2NoZW1hVHlwZTogIm51bWJlciIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgZGF0YSwgc2NoZW1hQ29kZSwgaXQgfSA9IGN4dDsKICAgICAgICBjb25zdCBwcmVjID0gaXQub3B0cy5tdWx0aXBsZU9mUHJlY2lzaW9uOwogICAgICAgIGNvbnN0IHJlcyA9IGdlbi5sZXQoInJlcyIpOwogICAgICAgIGNvbnN0IGludmFsaWQgPSBwcmVjID8gKDAsIGNvZGVnZW5fMS5fKWBNYXRoLmFicyhNYXRoLnJvdW5kKCR7cmVzfSkgLSAke3Jlc30pID4gMWUtJHtwcmVjfWAgOiAoMCwgY29kZWdlbl8xLl8pYCR7cmVzfSAhPT0gcGFyc2VJbnQoJHtyZXN9KWA7CiAgICAgICAgY3h0LmZhaWwkZGF0YSgoMCwgY29kZWdlbl8xLl8pYCgke3NjaGVtYUNvZGV9ID09PSAwIHx8ICgke3Jlc30gPSAke2RhdGF9LyR7c2NoZW1hQ29kZX0sICR7aW52YWxpZH0pKWApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3J1bnRpbWUvdWNzMmxlbmd0aC5qcwp2YXIgcmVxdWlyZV91Y3MybGVuZ3RoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9ydW50aW1lL3VjczJsZW5ndGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGZ1bmN0aW9uIHVjczJsZW5ndGgoc3RyKSB7CiAgICAgIGNvbnN0IGxlbiA9IHN0ci5sZW5ndGg7CiAgICAgIGxldCBsZW5ndGggPSAwOwogICAgICBsZXQgcG9zID0gMDsKICAgICAgbGV0IHZhbHVlOwogICAgICB3aGlsZSAocG9zIDwgbGVuKSB7CiAgICAgICAgbGVuZ3RoKys7CiAgICAgICAgdmFsdWUgPSBzdHIuY2hhckNvZGVBdChwb3MrKyk7CiAgICAgICAgaWYgKHZhbHVlID49IDU1Mjk2ICYmIHZhbHVlIDw9IDU2MzE5ICYmIHBvcyA8IGxlbikgewogICAgICAgICAgdmFsdWUgPSBzdHIuY2hhckNvZGVBdChwb3MpOwogICAgICAgICAgaWYgKCh2YWx1ZSAmIDY0NTEyKSA9PT0gNTYzMjApCiAgICAgICAgICAgIHBvcysrOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gbGVuZ3RoOwogICAgfQogICAgZXhwb3J0czIuZGVmYXVsdCA9IHVjczJsZW5ndGg7CiAgICB1Y3MybGVuZ3RoLmNvZGUgPSAncmVxdWlyZSgiYWp2L2Rpc3QvcnVudGltZS91Y3MybGVuZ3RoIikuZGVmYXVsdCc7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9saW1pdExlbmd0aC5qcwp2YXIgcmVxdWlyZV9saW1pdExlbmd0aCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vbGltaXRMZW5ndGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciB1Y3MybGVuZ3RoXzEgPSByZXF1aXJlX3VjczJsZW5ndGgoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZSh7IGtleXdvcmQsIHNjaGVtYUNvZGUgfSkgewogICAgICAgIGNvbnN0IGNvbXAgPSBrZXl3b3JkID09PSAibWF4TGVuZ3RoIiA/ICJtb3JlIiA6ICJmZXdlciI7CiAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IE5PVCBoYXZlICR7Y29tcH0gdGhhbiAke3NjaGVtYUNvZGV9IGNoYXJhY3RlcnNgOwogICAgICB9LAogICAgICBwYXJhbXM6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7bGltaXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6IFsibWF4TGVuZ3RoIiwgIm1pbkxlbmd0aCJdLAogICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgc2NoZW1hVHlwZTogIm51bWJlciIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGtleXdvcmQsIGRhdGEsIHNjaGVtYUNvZGUsIGl0IH0gPSBjeHQ7CiAgICAgICAgY29uc3Qgb3AgPSBrZXl3b3JkID09PSAibWF4TGVuZ3RoIiA/IGNvZGVnZW5fMS5vcGVyYXRvcnMuR1QgOiBjb2RlZ2VuXzEub3BlcmF0b3JzLkxUOwogICAgICAgIGNvbnN0IGxlbiA9IGl0Lm9wdHMudW5pY29kZSA9PT0gZmFsc2UgPyAoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0ubGVuZ3RoYCA6ICgwLCBjb2RlZ2VuXzEuXylgJHsoMCwgdXRpbF8xLnVzZUZ1bmMpKGN4dC5nZW4sIHVjczJsZW5ndGhfMS5kZWZhdWx0KX0oJHtkYXRhfSlgOwogICAgICAgIGN4dC5mYWlsJGRhdGEoKDAsIGNvZGVnZW5fMS5fKWAke2xlbn0gJHtvcH0gJHtzY2hlbWFDb2RlfWApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL3BhdHRlcm4uanMKdmFyIHJlcXVpcmVfcGF0dGVybiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vcGF0dGVybi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBtYXRjaCBwYXR0ZXJuICIke3NjaGVtYUNvZGV9ImAsCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtwYXR0ZXJuOiAke3NjaGVtYUNvZGV9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAicGF0dGVybiIsCiAgICAgIHR5cGU6ICJzdHJpbmciLAogICAgICBzY2hlbWFUeXBlOiAic3RyaW5nIiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZGF0YSwgJGRhdGEsIHNjaGVtYSwgc2NoZW1hQ29kZSwgaXQgfSA9IGN4dDsKICAgICAgICBjb25zdCB1ID0gaXQub3B0cy51bmljb2RlUmVnRXhwID8gInUiIDogIiI7CiAgICAgICAgY29uc3QgcmVnRXhwID0gJGRhdGEgPyAoMCwgY29kZWdlbl8xLl8pYChuZXcgUmVnRXhwKCR7c2NoZW1hQ29kZX0sICR7dX0pKWAgOiAoMCwgY29kZV8xLnVzZVBhdHRlcm4pKGN4dCwgc2NoZW1hKTsKICAgICAgICBjeHQuZmFpbCRkYXRhKCgwLCBjb2RlZ2VuXzEuXylgISR7cmVnRXhwfS50ZXN0KCR7ZGF0YX0pYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vbGltaXRQcm9wZXJ0aWVzLmpzCnZhciByZXF1aXJlX2xpbWl0UHJvcGVydGllcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vbGltaXRQcm9wZXJ0aWVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2UoeyBrZXl3b3JkLCBzY2hlbWFDb2RlIH0pIHsKICAgICAgICBjb25zdCBjb21wID0ga2V5d29yZCA9PT0gIm1heFByb3BlcnRpZXMiID8gIm1vcmUiIDogImZld2VyIjsKICAgICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgTk9UIGhhdmUgJHtjb21wfSB0aGFuICR7c2NoZW1hQ29kZX0gcHJvcGVydGllc2A7CiAgICAgIH0sCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtsaW1pdDogJHtzY2hlbWFDb2RlfX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogWyJtYXhQcm9wZXJ0aWVzIiwgIm1pblByb3BlcnRpZXMiXSwKICAgICAgdHlwZTogIm9iamVjdCIsCiAgICAgIHNjaGVtYVR5cGU6ICJudW1iZXIiLAogICAgICAkZGF0YTogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBrZXl3b3JkLCBkYXRhLCBzY2hlbWFDb2RlIH0gPSBjeHQ7CiAgICAgICAgY29uc3Qgb3AgPSBrZXl3b3JkID09PSAibWF4UHJvcGVydGllcyIgPyBjb2RlZ2VuXzEub3BlcmF0b3JzLkdUIDogY29kZWdlbl8xLm9wZXJhdG9ycy5MVDsKICAgICAgICBjeHQuZmFpbCRkYXRhKCgwLCBjb2RlZ2VuXzEuXylgT2JqZWN0LmtleXMoJHtkYXRhfSkubGVuZ3RoICR7b3B9ICR7c2NoZW1hQ29kZX1gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9yZXF1aXJlZC5qcwp2YXIgcmVxdWlyZV9yZXF1aXJlZCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vcmVxdWlyZWQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlXzEgPSByZXF1aXJlX2NvZGUyKCk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHBhcmFtczogeyBtaXNzaW5nUHJvcGVydHkgfSB9KSA9PiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBoYXZlIHJlcXVpcmVkIHByb3BlcnR5ICcke21pc3NpbmdQcm9wZXJ0eX0nYCwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXM6IHsgbWlzc2luZ1Byb3BlcnR5IH0gfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7bWlzc2luZ1Byb3BlcnR5OiAke21pc3NpbmdQcm9wZXJ0eX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJyZXF1aXJlZCIsCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICBzY2hlbWFUeXBlOiAiYXJyYXkiLAogICAgICAkZGF0YTogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYSwgc2NoZW1hQ29kZSwgZGF0YSwgJGRhdGEsIGl0IH0gPSBjeHQ7CiAgICAgICAgY29uc3QgeyBvcHRzIH0gPSBpdDsKICAgICAgICBpZiAoISRkYXRhICYmIHNjaGVtYS5sZW5ndGggPT09IDApCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgdXNlTG9vcCA9IHNjaGVtYS5sZW5ndGggPj0gb3B0cy5sb29wUmVxdWlyZWQ7CiAgICAgICAgaWYgKGl0LmFsbEVycm9ycykKICAgICAgICAgIGFsbEVycm9yc01vZGUoKTsKICAgICAgICBlbHNlCiAgICAgICAgICBleGl0T25FcnJvck1vZGUoKTsKICAgICAgICBpZiAob3B0cy5zdHJpY3RSZXF1aXJlZCkgewogICAgICAgICAgY29uc3QgcHJvcHMgPSBjeHQucGFyZW50U2NoZW1hLnByb3BlcnRpZXM7CiAgICAgICAgICBjb25zdCB7IGRlZmluZWRQcm9wZXJ0aWVzIH0gPSBjeHQuaXQ7CiAgICAgICAgICBmb3IgKGNvbnN0IHJlcXVpcmVkS2V5IG9mIHNjaGVtYSkgewogICAgICAgICAgICBpZiAoKHByb3BzID09PSBudWxsIHx8IHByb3BzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBwcm9wc1tyZXF1aXJlZEtleV0pID09PSB2b2lkIDAgJiYgIWRlZmluZWRQcm9wZXJ0aWVzLmhhcyhyZXF1aXJlZEtleSkpIHsKICAgICAgICAgICAgICBjb25zdCBzY2hlbWFQYXRoID0gaXQuc2NoZW1hRW52LmJhc2VJZCArIGl0LmVyclNjaGVtYVBhdGg7CiAgICAgICAgICAgICAgY29uc3QgbXNnID0gYHJlcXVpcmVkIHByb3BlcnR5ICIke3JlcXVpcmVkS2V5fSIgaXMgbm90IGRlZmluZWQgYXQgIiR7c2NoZW1hUGF0aH0iIChzdHJpY3RSZXF1aXJlZClgOwogICAgICAgICAgICAgICgwLCB1dGlsXzEuY2hlY2tTdHJpY3RNb2RlKShpdCwgbXNnLCBpdC5vcHRzLnN0cmljdFJlcXVpcmVkKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBhbGxFcnJvcnNNb2RlKCkgewogICAgICAgICAgaWYgKHVzZUxvb3AgfHwgJGRhdGEpIHsKICAgICAgICAgICAgY3h0LmJsb2NrJGRhdGEoY29kZWdlbl8xLm5pbCwgbG9vcEFsbFJlcXVpcmVkKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGZvciAoY29uc3QgcHJvcCBvZiBzY2hlbWEpIHsKICAgICAgICAgICAgICAoMCwgY29kZV8xLmNoZWNrUmVwb3J0TWlzc2luZ1Byb3ApKGN4dCwgcHJvcCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gZXhpdE9uRXJyb3JNb2RlKCkgewogICAgICAgICAgY29uc3QgbWlzc2luZyA9IGdlbi5sZXQoIm1pc3NpbmciKTsKICAgICAgICAgIGlmICh1c2VMb29wIHx8ICRkYXRhKSB7CiAgICAgICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLmxldCgidmFsaWQiLCB0cnVlKTsKICAgICAgICAgICAgY3h0LmJsb2NrJGRhdGEodmFsaWQsICgpID0+IGxvb3BVbnRpbE1pc3NpbmcobWlzc2luZywgdmFsaWQpKTsKICAgICAgICAgICAgY3h0Lm9rKHZhbGlkKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZV8xLmNoZWNrTWlzc2luZ1Byb3ApKGN4dCwgc2NoZW1hLCBtaXNzaW5nKSk7CiAgICAgICAgICAgICgwLCBjb2RlXzEucmVwb3J0TWlzc2luZ1Byb3ApKGN4dCwgbWlzc2luZyk7CiAgICAgICAgICAgIGdlbi5lbHNlKCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGxvb3BBbGxSZXF1aXJlZCgpIHsKICAgICAgICAgIGdlbi5mb3JPZigicHJvcCIsIHNjaGVtYUNvZGUsIChwcm9wKSA9PiB7CiAgICAgICAgICAgIGN4dC5zZXRQYXJhbXMoeyBtaXNzaW5nUHJvcGVydHk6IHByb3AgfSk7CiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZV8xLm5vUHJvcGVydHlJbkRhdGEpKGdlbiwgZGF0YSwgcHJvcCwgb3B0cy5vd25Qcm9wZXJ0aWVzKSwgKCkgPT4gY3h0LmVycm9yKCkpOwogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGxvb3BVbnRpbE1pc3NpbmcobWlzc2luZywgdmFsaWQpIHsKICAgICAgICAgIGN4dC5zZXRQYXJhbXMoeyBtaXNzaW5nUHJvcGVydHk6IG1pc3NpbmcgfSk7CiAgICAgICAgICBnZW4uZm9yT2YobWlzc2luZywgc2NoZW1hQ29kZSwgKCkgPT4gewogICAgICAgICAgICBnZW4uYXNzaWduKHZhbGlkLCAoMCwgY29kZV8xLnByb3BlcnR5SW5EYXRhKShnZW4sIGRhdGEsIG1pc3NpbmcsIG9wdHMub3duUHJvcGVydGllcykpOwogICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKHZhbGlkKSwgKCkgPT4gewogICAgICAgICAgICAgIGN4dC5lcnJvcigpOwogICAgICAgICAgICAgIGdlbi5icmVhaygpOwogICAgICAgICAgICB9KTsKICAgICAgICAgIH0sIGNvZGVnZW5fMS5uaWwpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9saW1pdEl0ZW1zLmpzCnZhciByZXF1aXJlX2xpbWl0SXRlbXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2xpbWl0SXRlbXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZSh7IGtleXdvcmQsIHNjaGVtYUNvZGUgfSkgewogICAgICAgIGNvbnN0IGNvbXAgPSBrZXl3b3JkID09PSAibWF4SXRlbXMiID8gIm1vcmUiIDogImZld2VyIjsKICAgICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgTk9UIGhhdmUgJHtjb21wfSB0aGFuICR7c2NoZW1hQ29kZX0gaXRlbXNgOwogICAgICB9LAogICAgICBwYXJhbXM6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7bGltaXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6IFsibWF4SXRlbXMiLCAibWluSXRlbXMiXSwKICAgICAgdHlwZTogImFycmF5IiwKICAgICAgc2NoZW1hVHlwZTogIm51bWJlciIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGtleXdvcmQsIGRhdGEsIHNjaGVtYUNvZGUgfSA9IGN4dDsKICAgICAgICBjb25zdCBvcCA9IGtleXdvcmQgPT09ICJtYXhJdGVtcyIgPyBjb2RlZ2VuXzEub3BlcmF0b3JzLkdUIDogY29kZWdlbl8xLm9wZXJhdG9ycy5MVDsKICAgICAgICBjeHQuZmFpbCRkYXRhKCgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGggJHtvcH0gJHtzY2hlbWFDb2RlfWApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3J1bnRpbWUvZXF1YWwuanMKdmFyIHJlcXVpcmVfZXF1YWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3J1bnRpbWUvZXF1YWwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBlcXVhbCA9IHJlcXVpcmVfZmFzdF9kZWVwX2VxdWFsKCk7CiAgICBlcXVhbC5jb2RlID0gJ3JlcXVpcmUoImFqdi9kaXN0L3J1bnRpbWUvZXF1YWwiKS5kZWZhdWx0JzsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBlcXVhbDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL3VuaXF1ZUl0ZW1zLmpzCnZhciByZXF1aXJlX3VuaXF1ZUl0ZW1zID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi91bmlxdWVJdGVtcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGRhdGFUeXBlXzEgPSByZXF1aXJlX2RhdGFUeXBlKCk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgZXF1YWxfMSA9IHJlcXVpcmVfZXF1YWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgcGFyYW1zOiB7IGksIGogfSB9KSA9PiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBOT1QgaGF2ZSBkdXBsaWNhdGUgaXRlbXMgKGl0ZW1zICMjICR7an0gYW5kICR7aX0gYXJlIGlkZW50aWNhbClgLAogICAgICBwYXJhbXM6ICh7IHBhcmFtczogeyBpLCBqIH0gfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7aTogJHtpfSwgajogJHtqfX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogInVuaXF1ZUl0ZW1zIiwKICAgICAgdHlwZTogImFycmF5IiwKICAgICAgc2NoZW1hVHlwZTogImJvb2xlYW4iLAogICAgICAkZGF0YTogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIGRhdGEsICRkYXRhLCBzY2hlbWEsIHBhcmVudFNjaGVtYSwgc2NoZW1hQ29kZSwgaXQgfSA9IGN4dDsKICAgICAgICBpZiAoISRkYXRhICYmICFzY2hlbWEpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIpOwogICAgICAgIGNvbnN0IGl0ZW1UeXBlcyA9IHBhcmVudFNjaGVtYS5pdGVtcyA/ICgwLCBkYXRhVHlwZV8xLmdldFNjaGVtYVR5cGVzKShwYXJlbnRTY2hlbWEuaXRlbXMpIDogW107CiAgICAgICAgY3h0LmJsb2NrJGRhdGEodmFsaWQsIHZhbGlkYXRlVW5pcXVlSXRlbXMsICgwLCBjb2RlZ2VuXzEuXylgJHtzY2hlbWFDb2RlfSA9PT0gZmFsc2VgKTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlVW5pcXVlSXRlbXMoKSB7CiAgICAgICAgICBjb25zdCBpID0gZ2VuLmxldCgiaSIsICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGhgKTsKICAgICAgICAgIGNvbnN0IGogPSBnZW4ubGV0KCJqIik7CiAgICAgICAgICBjeHQuc2V0UGFyYW1zKHsgaSwgaiB9KTsKICAgICAgICAgIGdlbi5hc3NpZ24odmFsaWQsIHRydWUpOwogICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtpfSA+IDFgLCAoKSA9PiAoY2FuT3B0aW1pemUoKSA/IGxvb3BOIDogbG9vcE4yKShpLCBqKSk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGNhbk9wdGltaXplKCkgewogICAgICAgICAgcmV0dXJuIGl0ZW1UeXBlcy5sZW5ndGggPiAwICYmICFpdGVtVHlwZXMuc29tZSgodCkgPT4gdCA9PT0gIm9iamVjdCIgfHwgdCA9PT0gImFycmF5Iik7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGxvb3BOKGksIGopIHsKICAgICAgICAgIGNvbnN0IGl0ZW0gPSBnZW4ubmFtZSgiaXRlbSIpOwogICAgICAgICAgY29uc3Qgd3JvbmdUeXBlID0gKDAsIGRhdGFUeXBlXzEuY2hlY2tEYXRhVHlwZXMpKGl0ZW1UeXBlcywgaXRlbSwgaXQub3B0cy5zdHJpY3ROdW1iZXJzLCBkYXRhVHlwZV8xLkRhdGFUeXBlLldyb25nKTsKICAgICAgICAgIGNvbnN0IGluZGljZXMgPSBnZW4uY29uc3QoImluZGljZXMiLCAoMCwgY29kZWdlbl8xLl8pYHt9YCk7CiAgICAgICAgICBnZW4uZm9yKCgwLCBjb2RlZ2VuXzEuXylgOyR7aX0tLTtgLCAoKSA9PiB7CiAgICAgICAgICAgIGdlbi5sZXQoaXRlbSwgKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9WyR7aX1dYCk7CiAgICAgICAgICAgIGdlbi5pZih3cm9uZ1R5cGUsICgwLCBjb2RlZ2VuXzEuXylgY29udGludWVgKTsKICAgICAgICAgICAgaWYgKGl0ZW1UeXBlcy5sZW5ndGggPiAxKQogICAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYHR5cGVvZiAke2l0ZW19ID09ICJzdHJpbmciYCwgKDAsIGNvZGVnZW5fMS5fKWAke2l0ZW19ICs9ICJfImApOwogICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtpbmRpY2VzfVske2l0ZW19XSA9PSAibnVtYmVyImAsICgpID0+IHsKICAgICAgICAgICAgICBnZW4uYXNzaWduKGosICgwLCBjb2RlZ2VuXzEuXylgJHtpbmRpY2VzfVske2l0ZW19XWApOwogICAgICAgICAgICAgIGN4dC5lcnJvcigpOwogICAgICAgICAgICAgIGdlbi5hc3NpZ24odmFsaWQsIGZhbHNlKS5icmVhaygpOwogICAgICAgICAgICB9KS5jb2RlKCgwLCBjb2RlZ2VuXzEuXylgJHtpbmRpY2VzfVske2l0ZW19XSA9ICR7aX1gKTsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBsb29wTjIoaSwgaikgewogICAgICAgICAgY29uc3QgZXFsID0gKDAsIHV0aWxfMS51c2VGdW5jKShnZW4sIGVxdWFsXzEuZGVmYXVsdCk7CiAgICAgICAgICBjb25zdCBvdXRlciA9IGdlbi5uYW1lKCJvdXRlciIpOwogICAgICAgICAgZ2VuLmxhYmVsKG91dGVyKS5mb3IoKDAsIGNvZGVnZW5fMS5fKWA7JHtpfS0tO2AsICgpID0+IGdlbi5mb3IoKDAsIGNvZGVnZW5fMS5fKWAke2p9ID0gJHtpfTsgJHtqfS0tO2AsICgpID0+IGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7ZXFsfSgke2RhdGF9WyR7aX1dLCAke2RhdGF9WyR7an1dKWAsICgpID0+IHsKICAgICAgICAgICAgY3h0LmVycm9yKCk7CiAgICAgICAgICAgIGdlbi5hc3NpZ24odmFsaWQsIGZhbHNlKS5icmVhayhvdXRlcik7CiAgICAgICAgICB9KSkpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9jb25zdC5qcwp2YXIgcmVxdWlyZV9jb25zdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL3ZhbGlkYXRpb24vY29uc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcXVhbF8xID0gcmVxdWlyZV9lcXVhbCgpOwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlOiAibXVzdCBiZSBlcXVhbCB0byBjb25zdGFudCIsCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHthbGxvd2VkVmFsdWU6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJjb25zdCIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgZGF0YSwgJGRhdGEsIHNjaGVtYUNvZGUsIHNjaGVtYSB9ID0gY3h0OwogICAgICAgIGlmICgkZGF0YSB8fCBzY2hlbWEgJiYgdHlwZW9mIHNjaGVtYSA9PSAib2JqZWN0IikgewogICAgICAgICAgY3h0LmZhaWwkZGF0YSgoMCwgY29kZWdlbl8xLl8pYCEkeygwLCB1dGlsXzEudXNlRnVuYykoZ2VuLCBlcXVhbF8xLmRlZmF1bHQpfSgke2RhdGF9LCAke3NjaGVtYUNvZGV9KWApOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjeHQuZmFpbCgoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hfSAhPT0gJHtkYXRhfWApOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9lbnVtLmpzCnZhciByZXF1aXJlX2VudW0gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy92YWxpZGF0aW9uL2VudW0uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcXVhbF8xID0gcmVxdWlyZV9lcXVhbCgpOwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlOiAibXVzdCBiZSBlcXVhbCB0byBvbmUgb2YgdGhlIGFsbG93ZWQgdmFsdWVzIiwKICAgICAgcGFyYW1zOiAoeyBzY2hlbWFDb2RlIH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge2FsbG93ZWRWYWx1ZXM6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJlbnVtIiwKICAgICAgc2NoZW1hVHlwZTogImFycmF5IiwKICAgICAgJGRhdGE6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBkYXRhLCAkZGF0YSwgc2NoZW1hLCBzY2hlbWFDb2RlLCBpdCB9ID0gY3h0OwogICAgICAgIGlmICghJGRhdGEgJiYgc2NoZW1hLmxlbmd0aCA9PT0gMCkKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiZW51bSBtdXN0IGhhdmUgbm9uLWVtcHR5IGFycmF5Iik7CiAgICAgICAgY29uc3QgdXNlTG9vcCA9IHNjaGVtYS5sZW5ndGggPj0gaXQub3B0cy5sb29wRW51bTsKICAgICAgICBsZXQgZXFsOwogICAgICAgIGNvbnN0IGdldEVxbCA9ICgpID0+IGVxbCAhPT0gbnVsbCAmJiBlcWwgIT09IHZvaWQgMCA/IGVxbCA6IGVxbCA9ICgwLCB1dGlsXzEudXNlRnVuYykoZ2VuLCBlcXVhbF8xLmRlZmF1bHQpOwogICAgICAgIGxldCB2YWxpZDsKICAgICAgICBpZiAodXNlTG9vcCB8fCAkZGF0YSkgewogICAgICAgICAgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIpOwogICAgICAgICAgY3h0LmJsb2NrJGRhdGEodmFsaWQsIGxvb3BFbnVtKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHNjaGVtYSkpCiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiYWp2IGltcGxlbWVudGF0aW9uIGVycm9yIik7CiAgICAgICAgICBjb25zdCB2U2NoZW1hID0gZ2VuLmNvbnN0KCJ2U2NoZW1hIiwgc2NoZW1hQ29kZSk7CiAgICAgICAgICB2YWxpZCA9ICgwLCBjb2RlZ2VuXzEub3IpKC4uLnNjaGVtYS5tYXAoKF94LCBpKSA9PiBlcXVhbENvZGUodlNjaGVtYSwgaSkpKTsKICAgICAgICB9CiAgICAgICAgY3h0LnBhc3ModmFsaWQpOwogICAgICAgIGZ1bmN0aW9uIGxvb3BFbnVtKCkgewogICAgICAgICAgZ2VuLmFzc2lnbih2YWxpZCwgZmFsc2UpOwogICAgICAgICAgZ2VuLmZvck9mKCJ2Iiwgc2NoZW1hQ29kZSwgKHYpID0+IGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7Z2V0RXFsKCl9KCR7ZGF0YX0sICR7dn0pYCwgKCkgPT4gZ2VuLmFzc2lnbih2YWxpZCwgdHJ1ZSkuYnJlYWsoKSkpOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBlcXVhbENvZGUodlNjaGVtYSwgaSkgewogICAgICAgICAgY29uc3Qgc2NoID0gc2NoZW1hW2ldOwogICAgICAgICAgcmV0dXJuIHR5cGVvZiBzY2ggPT09ICJvYmplY3QiICYmIHNjaCAhPT0gbnVsbCA/ICgwLCBjb2RlZ2VuXzEuXylgJHtnZXRFcWwoKX0oJHtkYXRhfSwgJHt2U2NoZW1hfVske2l9XSlgIDogKDAsIGNvZGVnZW5fMS5fKWAke2RhdGF9ID09PSAke3NjaH1gOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9pbmRleC5qcwp2YXIgcmVxdWlyZV92YWxpZGF0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvdmFsaWRhdGlvbi9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGxpbWl0TnVtYmVyXzEgPSByZXF1aXJlX2xpbWl0TnVtYmVyKCk7CiAgICB2YXIgbXVsdGlwbGVPZl8xID0gcmVxdWlyZV9tdWx0aXBsZU9mKCk7CiAgICB2YXIgbGltaXRMZW5ndGhfMSA9IHJlcXVpcmVfbGltaXRMZW5ndGgoKTsKICAgIHZhciBwYXR0ZXJuXzEgPSByZXF1aXJlX3BhdHRlcm4oKTsKICAgIHZhciBsaW1pdFByb3BlcnRpZXNfMSA9IHJlcXVpcmVfbGltaXRQcm9wZXJ0aWVzKCk7CiAgICB2YXIgcmVxdWlyZWRfMSA9IHJlcXVpcmVfcmVxdWlyZWQoKTsKICAgIHZhciBsaW1pdEl0ZW1zXzEgPSByZXF1aXJlX2xpbWl0SXRlbXMoKTsKICAgIHZhciB1bmlxdWVJdGVtc18xID0gcmVxdWlyZV91bmlxdWVJdGVtcygpOwogICAgdmFyIGNvbnN0XzEgPSByZXF1aXJlX2NvbnN0KCk7CiAgICB2YXIgZW51bV8xID0gcmVxdWlyZV9lbnVtKCk7CiAgICB2YXIgdmFsaWRhdGlvbiA9IFsKICAgICAgLy8gbnVtYmVyCiAgICAgIGxpbWl0TnVtYmVyXzEuZGVmYXVsdCwKICAgICAgbXVsdGlwbGVPZl8xLmRlZmF1bHQsCiAgICAgIC8vIHN0cmluZwogICAgICBsaW1pdExlbmd0aF8xLmRlZmF1bHQsCiAgICAgIHBhdHRlcm5fMS5kZWZhdWx0LAogICAgICAvLyBvYmplY3QKICAgICAgbGltaXRQcm9wZXJ0aWVzXzEuZGVmYXVsdCwKICAgICAgcmVxdWlyZWRfMS5kZWZhdWx0LAogICAgICAvLyBhcnJheQogICAgICBsaW1pdEl0ZW1zXzEuZGVmYXVsdCwKICAgICAgdW5pcXVlSXRlbXNfMS5kZWZhdWx0LAogICAgICAvLyBhbnkKICAgICAgeyBrZXl3b3JkOiAidHlwZSIsIHNjaGVtYVR5cGU6IFsic3RyaW5nIiwgImFycmF5Il0gfSwKICAgICAgeyBrZXl3b3JkOiAibnVsbGFibGUiLCBzY2hlbWFUeXBlOiAiYm9vbGVhbiIgfSwKICAgICAgY29uc3RfMS5kZWZhdWx0LAogICAgICBlbnVtXzEuZGVmYXVsdAogICAgXTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSB2YWxpZGF0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWRkaXRpb25hbEl0ZW1zLmpzCnZhciByZXF1aXJlX2FkZGl0aW9uYWxJdGVtcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWRkaXRpb25hbEl0ZW1zLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi52YWxpZGF0ZUFkZGl0aW9uYWxJdGVtcyA9IHZvaWQgMDsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgcGFyYW1zOiB7IGxlbiB9IH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IE5PVCBoYXZlIG1vcmUgdGhhbiAke2xlbn0gaXRlbXNgLAogICAgICBwYXJhbXM6ICh7IHBhcmFtczogeyBsZW4gfSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtsaW1pdDogJHtsZW59fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiYWRkaXRpb25hbEl0ZW1zIiwKICAgICAgdHlwZTogImFycmF5IiwKICAgICAgc2NoZW1hVHlwZTogWyJib29sZWFuIiwgIm9iamVjdCJdLAogICAgICBiZWZvcmU6ICJ1bmlxdWVJdGVtcyIsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgcGFyZW50U2NoZW1hLCBpdCB9ID0gY3h0OwogICAgICAgIGNvbnN0IHsgaXRlbXMgfSA9IHBhcmVudFNjaGVtYTsKICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoaXRlbXMpKSB7CiAgICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsICciYWRkaXRpb25hbEl0ZW1zIiBpcyBpZ25vcmVkIHdoZW4gIml0ZW1zIiBpcyBub3QgYW4gYXJyYXkgb2Ygc2NoZW1hcycpOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB2YWxpZGF0ZUFkZGl0aW9uYWxJdGVtcyhjeHQsIGl0ZW1zKTsKICAgICAgfQogICAgfTsKICAgIGZ1bmN0aW9uIHZhbGlkYXRlQWRkaXRpb25hbEl0ZW1zKGN4dCwgaXRlbXMpIHsKICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYSwgZGF0YSwga2V5d29yZCwgaXQgfSA9IGN4dDsKICAgICAgaXQuaXRlbXMgPSB0cnVlOwogICAgICBjb25zdCBsZW4gPSBnZW4uY29uc3QoImxlbiIsICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGhgKTsKICAgICAgaWYgKHNjaGVtYSA9PT0gZmFsc2UpIHsKICAgICAgICBjeHQuc2V0UGFyYW1zKHsgbGVuOiBpdGVtcy5sZW5ndGggfSk7CiAgICAgICAgY3h0LnBhc3MoKDAsIGNvZGVnZW5fMS5fKWAke2xlbn0gPD0gJHtpdGVtcy5sZW5ndGh9YCk7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHNjaGVtYSA9PSAib2JqZWN0IiAmJiAhKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYSkpIHsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi52YXIoInZhbGlkIiwgKDAsIGNvZGVnZW5fMS5fKWAke2xlbn0gPD0gJHtpdGVtcy5sZW5ndGh9YCk7CiAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEubm90KSh2YWxpZCksICgpID0+IHZhbGlkYXRlSXRlbXModmFsaWQpKTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlSXRlbXModmFsaWQpIHsKICAgICAgICBnZW4uZm9yUmFuZ2UoImkiLCBpdGVtcy5sZW5ndGgsIGxlbiwgKGkpID0+IHsKICAgICAgICAgIGN4dC5zdWJzY2hlbWEoeyBrZXl3b3JkLCBkYXRhUHJvcDogaSwgZGF0YVByb3BUeXBlOiB1dGlsXzEuVHlwZS5OdW0gfSwgdmFsaWQpOwogICAgICAgICAgaWYgKCFpdC5hbGxFcnJvcnMpCiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkodmFsaWQpLCAoKSA9PiBnZW4uYnJlYWsoKSk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLnZhbGlkYXRlQWRkaXRpb25hbEl0ZW1zID0gdmFsaWRhdGVBZGRpdGlvbmFsSXRlbXM7CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvaXRlbXMuanMKdmFyIHJlcXVpcmVfaXRlbXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2l0ZW1zLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi52YWxpZGF0ZVR1cGxlID0gdm9pZCAwOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJpdGVtcyIsCiAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgIHNjaGVtYVR5cGU6IFsib2JqZWN0IiwgImFycmF5IiwgImJvb2xlYW4iXSwKICAgICAgYmVmb3JlOiAidW5pcXVlSXRlbXMiLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgc2NoZW1hLCBpdCB9ID0gY3h0OwogICAgICAgIGlmIChBcnJheS5pc0FycmF5KHNjaGVtYSkpCiAgICAgICAgICByZXR1cm4gdmFsaWRhdGVUdXBsZShjeHQsICJhZGRpdGlvbmFsSXRlbXMiLCBzY2hlbWEpOwogICAgICAgIGl0Lml0ZW1zID0gdHJ1ZTsKICAgICAgICBpZiAoKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYSkpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY3h0Lm9rKCgwLCBjb2RlXzEudmFsaWRhdGVBcnJheSkoY3h0KSk7CiAgICAgIH0KICAgIH07CiAgICBmdW5jdGlvbiB2YWxpZGF0ZVR1cGxlKGN4dCwgZXh0cmFJdGVtcywgc2NoQXJyID0gY3h0LnNjaGVtYSkgewogICAgICBjb25zdCB7IGdlbiwgcGFyZW50U2NoZW1hLCBkYXRhLCBrZXl3b3JkLCBpdCB9ID0gY3h0OwogICAgICBjaGVja1N0cmljdFR1cGxlKHBhcmVudFNjaGVtYSk7CiAgICAgIGlmIChpdC5vcHRzLnVuZXZhbHVhdGVkICYmIHNjaEFyci5sZW5ndGggJiYgaXQuaXRlbXMgIT09IHRydWUpIHsKICAgICAgICBpdC5pdGVtcyA9IHV0aWxfMS5tZXJnZUV2YWx1YXRlZC5pdGVtcyhnZW4sIHNjaEFyci5sZW5ndGgsIGl0Lml0ZW1zKTsKICAgICAgfQogICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICBjb25zdCBsZW4gPSBnZW4uY29uc3QoImxlbiIsICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGhgKTsKICAgICAgc2NoQXJyLmZvckVhY2goKHNjaCwgaSkgPT4gewogICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2xlbn0gPiAke2l9YCwgKCkgPT4gY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICBrZXl3b3JkLAogICAgICAgICAgc2NoZW1hUHJvcDogaSwKICAgICAgICAgIGRhdGFQcm9wOiBpCiAgICAgICAgfSwgdmFsaWQpKTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICB9KTsKICAgICAgZnVuY3Rpb24gY2hlY2tTdHJpY3RUdXBsZShzY2gpIHsKICAgICAgICBjb25zdCB7IG9wdHMsIGVyclNjaGVtYVBhdGggfSA9IGl0OwogICAgICAgIGNvbnN0IGwgPSBzY2hBcnIubGVuZ3RoOwogICAgICAgIGNvbnN0IGZ1bGxUdXBsZSA9IGwgPT09IHNjaC5taW5JdGVtcyAmJiAobCA9PT0gc2NoLm1heEl0ZW1zIHx8IHNjaFtleHRyYUl0ZW1zXSA9PT0gZmFsc2UpOwogICAgICAgIGlmIChvcHRzLnN0cmljdFR1cGxlcyAmJiAhZnVsbFR1cGxlKSB7CiAgICAgICAgICBjb25zdCBtc2cgPSBgIiR7a2V5d29yZH0iIGlzICR7bH0tdHVwbGUsIGJ1dCBtaW5JdGVtcyBvciBtYXhJdGVtcy8ke2V4dHJhSXRlbXN9IGFyZSBub3Qgc3BlY2lmaWVkIG9yIGRpZmZlcmVudCBhdCBwYXRoICIke2VyclNjaGVtYVBhdGh9ImA7CiAgICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsIG1zZywgb3B0cy5zdHJpY3RUdXBsZXMpOwogICAgICAgIH0KICAgICAgfQogICAgfQogICAgZXhwb3J0czIudmFsaWRhdGVUdXBsZSA9IHZhbGlkYXRlVHVwbGU7CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvcHJlZml4SXRlbXMuanMKdmFyIHJlcXVpcmVfcHJlZml4SXRlbXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3ByZWZpeEl0ZW1zLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgaXRlbXNfMSA9IHJlcXVpcmVfaXRlbXMoKTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJwcmVmaXhJdGVtcyIsCiAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgIHNjaGVtYVR5cGU6IFsiYXJyYXkiXSwKICAgICAgYmVmb3JlOiAidW5pcXVlSXRlbXMiLAogICAgICBjb2RlOiAoY3h0KSA9PiAoMCwgaXRlbXNfMS52YWxpZGF0ZVR1cGxlKShjeHQsICJpdGVtcyIpCiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2l0ZW1zMjAyMC5qcwp2YXIgcmVxdWlyZV9pdGVtczIwMjAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2l0ZW1zMjAyMC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBhZGRpdGlvbmFsSXRlbXNfMSA9IHJlcXVpcmVfYWRkaXRpb25hbEl0ZW1zKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHBhcmFtczogeyBsZW4gfSB9KSA9PiAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBOT1QgaGF2ZSBtb3JlIHRoYW4gJHtsZW59IGl0ZW1zYCwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXM6IHsgbGVuIH0gfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7bGltaXQ6ICR7bGVufX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogIml0ZW1zIiwKICAgICAgdHlwZTogImFycmF5IiwKICAgICAgc2NoZW1hVHlwZTogWyJvYmplY3QiLCAiYm9vbGVhbiJdLAogICAgICBiZWZvcmU6ICJ1bmlxdWVJdGVtcyIsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgc2NoZW1hLCBwYXJlbnRTY2hlbWEsIGl0IH0gPSBjeHQ7CiAgICAgICAgY29uc3QgeyBwcmVmaXhJdGVtcyB9ID0gcGFyZW50U2NoZW1hOwogICAgICAgIGl0Lml0ZW1zID0gdHJ1ZTsKICAgICAgICBpZiAoKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYSkpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgaWYgKHByZWZpeEl0ZW1zKQogICAgICAgICAgKDAsIGFkZGl0aW9uYWxJdGVtc18xLnZhbGlkYXRlQWRkaXRpb25hbEl0ZW1zKShjeHQsIHByZWZpeEl0ZW1zKTsKICAgICAgICBlbHNlCiAgICAgICAgICBjeHQub2soKDAsIGNvZGVfMS52YWxpZGF0ZUFycmF5KShjeHQpKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9jb250YWlucy5qcwp2YXIgcmVxdWlyZV9jb250YWlucyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvY29udGFpbnMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgcGFyYW1zOiB7IG1pbiwgbWF4IH0gfSkgPT4gbWF4ID09PSB2b2lkIDAgPyAoMCwgY29kZWdlbl8xLnN0cilgbXVzdCBjb250YWluIGF0IGxlYXN0ICR7bWlufSB2YWxpZCBpdGVtKHMpYCA6ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IGNvbnRhaW4gYXQgbGVhc3QgJHttaW59IGFuZCBubyBtb3JlIHRoYW4gJHttYXh9IHZhbGlkIGl0ZW0ocylgLAogICAgICBwYXJhbXM6ICh7IHBhcmFtczogeyBtaW4sIG1heCB9IH0pID0+IG1heCA9PT0gdm9pZCAwID8gKDAsIGNvZGVnZW5fMS5fKWB7bWluQ29udGFpbnM6ICR7bWlufX1gIDogKDAsIGNvZGVnZW5fMS5fKWB7bWluQ29udGFpbnM6ICR7bWlufSwgbWF4Q29udGFpbnM6ICR7bWF4fX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogImNvbnRhaW5zIiwKICAgICAgdHlwZTogImFycmF5IiwKICAgICAgc2NoZW1hVHlwZTogWyJvYmplY3QiLCAiYm9vbGVhbiJdLAogICAgICBiZWZvcmU6ICJ1bmlxdWVJdGVtcyIsCiAgICAgIHRyYWNrRXJyb3JzOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgc2NoZW1hLCBwYXJlbnRTY2hlbWEsIGRhdGEsIGl0IH0gPSBjeHQ7CiAgICAgICAgbGV0IG1pbjsKICAgICAgICBsZXQgbWF4OwogICAgICAgIGNvbnN0IHsgbWluQ29udGFpbnMsIG1heENvbnRhaW5zIH0gPSBwYXJlbnRTY2hlbWE7CiAgICAgICAgaWYgKGl0Lm9wdHMubmV4dCkgewogICAgICAgICAgbWluID0gbWluQ29udGFpbnMgPT09IHZvaWQgMCA/IDEgOiBtaW5Db250YWluczsKICAgICAgICAgIG1heCA9IG1heENvbnRhaW5zOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBtaW4gPSAxOwogICAgICAgIH0KICAgICAgICBjb25zdCBsZW4gPSBnZW4uY29uc3QoImxlbiIsICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfS5sZW5ndGhgKTsKICAgICAgICBjeHQuc2V0UGFyYW1zKHsgbWluLCBtYXggfSk7CiAgICAgICAgaWYgKG1heCA9PT0gdm9pZCAwICYmIG1pbiA9PT0gMCkgewogICAgICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCBgIm1pbkNvbnRhaW5zIiA9PSAwIHdpdGhvdXQgIm1heENvbnRhaW5zIjogImNvbnRhaW5zIiBrZXl3b3JkIGlnbm9yZWRgKTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgaWYgKG1heCAhPT0gdm9pZCAwICYmIG1pbiA+IG1heCkgewogICAgICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCBgIm1pbkNvbnRhaW5zIiA+ICJtYXhDb250YWlucyIgaXMgYWx3YXlzIGludmFsaWRgKTsKICAgICAgICAgIGN4dC5mYWlsKCk7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hKSkgewogICAgICAgICAgbGV0IGNvbmQgPSAoMCwgY29kZWdlbl8xLl8pYCR7bGVufSA+PSAke21pbn1gOwogICAgICAgICAgaWYgKG1heCAhPT0gdm9pZCAwKQogICAgICAgICAgICBjb25kID0gKDAsIGNvZGVnZW5fMS5fKWAke2NvbmR9ICYmICR7bGVufSA8PSAke21heH1gOwogICAgICAgICAgY3h0LnBhc3MoY29uZCk7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGl0Lml0ZW1zID0gdHJ1ZTsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICAgIGlmIChtYXggPT09IHZvaWQgMCAmJiBtaW4gPT09IDEpIHsKICAgICAgICAgIHZhbGlkYXRlSXRlbXModmFsaWQsICgpID0+IGdlbi5pZih2YWxpZCwgKCkgPT4gZ2VuLmJyZWFrKCkpKTsKICAgICAgICB9IGVsc2UgaWYgKG1pbiA9PT0gMCkgewogICAgICAgICAgZ2VuLmxldCh2YWxpZCwgdHJ1ZSk7CiAgICAgICAgICBpZiAobWF4ICE9PSB2b2lkIDApCiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7ZGF0YX0ubGVuZ3RoID4gMGAsIHZhbGlkYXRlSXRlbXNXaXRoQ291bnQpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBnZW4ubGV0KHZhbGlkLCBmYWxzZSk7CiAgICAgICAgICB2YWxpZGF0ZUl0ZW1zV2l0aENvdW50KCk7CiAgICAgICAgfQogICAgICAgIGN4dC5yZXN1bHQodmFsaWQsICgpID0+IGN4dC5yZXNldCgpKTsKICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZUl0ZW1zV2l0aENvdW50KCkgewogICAgICAgICAgY29uc3Qgc2NoVmFsaWQgPSBnZW4ubmFtZSgiX3ZhbGlkIik7CiAgICAgICAgICBjb25zdCBjb3VudCA9IGdlbi5sZXQoImNvdW50IiwgMCk7CiAgICAgICAgICB2YWxpZGF0ZUl0ZW1zKHNjaFZhbGlkLCAoKSA9PiBnZW4uaWYoc2NoVmFsaWQsICgpID0+IGNoZWNrTGltaXRzKGNvdW50KSkpOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZUl0ZW1zKF92YWxpZCwgYmxvY2spIHsKICAgICAgICAgIGdlbi5mb3JSYW5nZSgiaSIsIDAsIGxlbiwgKGkpID0+IHsKICAgICAgICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgICAga2V5d29yZDogImNvbnRhaW5zIiwKICAgICAgICAgICAgICBkYXRhUHJvcDogaSwKICAgICAgICAgICAgICBkYXRhUHJvcFR5cGU6IHV0aWxfMS5UeXBlLk51bSwKICAgICAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlCiAgICAgICAgICAgIH0sIF92YWxpZCk7CiAgICAgICAgICAgIGJsb2NrKCk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gY2hlY2tMaW1pdHMoY291bnQpIHsKICAgICAgICAgIGdlbi5jb2RlKCgwLCBjb2RlZ2VuXzEuXylgJHtjb3VudH0rK2ApOwogICAgICAgICAgaWYgKG1heCA9PT0gdm9pZCAwKSB7CiAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLl8pYCR7Y291bnR9ID49ICR7bWlufWAsICgpID0+IGdlbi5hc3NpZ24odmFsaWQsIHRydWUpLmJyZWFrKCkpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtjb3VudH0gPiAke21heH1gLCAoKSA9PiBnZW4uYXNzaWduKHZhbGlkLCBmYWxzZSkuYnJlYWsoKSk7CiAgICAgICAgICAgIGlmIChtaW4gPT09IDEpCiAgICAgICAgICAgICAgZ2VuLmFzc2lnbih2YWxpZCwgdHJ1ZSk7CiAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2NvdW50fSA+PSAke21pbn1gLCAoKSA9PiBnZW4uYXNzaWduKHZhbGlkLCB0cnVlKSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2RlcGVuZGVuY2llcy5qcwp2YXIgcmVxdWlyZV9kZXBlbmRlbmNpZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL2RlcGVuZGVuY2llcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudmFsaWRhdGVTY2hlbWFEZXBzID0gZXhwb3J0czIudmFsaWRhdGVQcm9wZXJ0eURlcHMgPSBleHBvcnRzMi5lcnJvciA9IHZvaWQgMDsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBjb2RlXzEgPSByZXF1aXJlX2NvZGUyKCk7CiAgICBleHBvcnRzMi5lcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgcGFyYW1zOiB7IHByb3BlcnR5LCBkZXBzQ291bnQsIGRlcHMgfSB9KSA9PiB7CiAgICAgICAgY29uc3QgcHJvcGVydHlfaWVzID0gZGVwc0NvdW50ID09PSAxID8gInByb3BlcnR5IiA6ICJwcm9wZXJ0aWVzIjsKICAgICAgICByZXR1cm4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgaGF2ZSAke3Byb3BlcnR5X2llc30gJHtkZXBzfSB3aGVuIHByb3BlcnR5ICR7cHJvcGVydHl9IGlzIHByZXNlbnRgOwogICAgICB9LAogICAgICBwYXJhbXM6ICh7IHBhcmFtczogeyBwcm9wZXJ0eSwgZGVwc0NvdW50LCBkZXBzLCBtaXNzaW5nUHJvcGVydHkgfSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtwcm9wZXJ0eTogJHtwcm9wZXJ0eX0sCiAgICBtaXNzaW5nUHJvcGVydHk6ICR7bWlzc2luZ1Byb3BlcnR5fSwKICAgIGRlcHNDb3VudDogJHtkZXBzQ291bnR9LAogICAgZGVwczogJHtkZXBzfX1gCiAgICAgIC8vIFRPRE8gY2hhbmdlIHRvIHJlZmVyZW5jZQogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJkZXBlbmRlbmNpZXMiLAogICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgc2NoZW1hVHlwZTogIm9iamVjdCIsCiAgICAgIGVycm9yOiBleHBvcnRzMi5lcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCBbcHJvcERlcHMsIHNjaERlcHNdID0gc3BsaXREZXBlbmRlbmNpZXMoY3h0KTsKICAgICAgICB2YWxpZGF0ZVByb3BlcnR5RGVwcyhjeHQsIHByb3BEZXBzKTsKICAgICAgICB2YWxpZGF0ZVNjaGVtYURlcHMoY3h0LCBzY2hEZXBzKTsKICAgICAgfQogICAgfTsKICAgIGZ1bmN0aW9uIHNwbGl0RGVwZW5kZW5jaWVzKHsgc2NoZW1hIH0pIHsKICAgICAgY29uc3QgcHJvcGVydHlEZXBzID0ge307CiAgICAgIGNvbnN0IHNjaGVtYURlcHMgPSB7fTsKICAgICAgZm9yIChjb25zdCBrZXkgaW4gc2NoZW1hKSB7CiAgICAgICAgaWYgKGtleSA9PT0gIl9fcHJvdG9fXyIpCiAgICAgICAgICBjb250aW51ZTsKICAgICAgICBjb25zdCBkZXBzID0gQXJyYXkuaXNBcnJheShzY2hlbWFba2V5XSkgPyBwcm9wZXJ0eURlcHMgOiBzY2hlbWFEZXBzOwogICAgICAgIGRlcHNba2V5XSA9IHNjaGVtYVtrZXldOwogICAgICB9CiAgICAgIHJldHVybiBbcHJvcGVydHlEZXBzLCBzY2hlbWFEZXBzXTsKICAgIH0KICAgIGZ1bmN0aW9uIHZhbGlkYXRlUHJvcGVydHlEZXBzKGN4dCwgcHJvcGVydHlEZXBzID0gY3h0LnNjaGVtYSkgewogICAgICBjb25zdCB7IGdlbiwgZGF0YSwgaXQgfSA9IGN4dDsKICAgICAgaWYgKE9iamVjdC5rZXlzKHByb3BlcnR5RGVwcykubGVuZ3RoID09PSAwKQogICAgICAgIHJldHVybjsKICAgICAgY29uc3QgbWlzc2luZyA9IGdlbi5sZXQoIm1pc3NpbmciKTsKICAgICAgZm9yIChjb25zdCBwcm9wIGluIHByb3BlcnR5RGVwcykgewogICAgICAgIGNvbnN0IGRlcHMgPSBwcm9wZXJ0eURlcHNbcHJvcF07CiAgICAgICAgaWYgKGRlcHMubGVuZ3RoID09PSAwKQogICAgICAgICAgY29udGludWU7CiAgICAgICAgY29uc3QgaGFzUHJvcGVydHkgPSAoMCwgY29kZV8xLnByb3BlcnR5SW5EYXRhKShnZW4sIGRhdGEsIHByb3AsIGl0Lm9wdHMub3duUHJvcGVydGllcyk7CiAgICAgICAgY3h0LnNldFBhcmFtcyh7CiAgICAgICAgICBwcm9wZXJ0eTogcHJvcCwKICAgICAgICAgIGRlcHNDb3VudDogZGVwcy5sZW5ndGgsCiAgICAgICAgICBkZXBzOiBkZXBzLmpvaW4oIiwgIikKICAgICAgICB9KTsKICAgICAgICBpZiAoaXQuYWxsRXJyb3JzKSB7CiAgICAgICAgICBnZW4uaWYoaGFzUHJvcGVydHksICgpID0+IHsKICAgICAgICAgICAgZm9yIChjb25zdCBkZXBQcm9wIG9mIGRlcHMpIHsKICAgICAgICAgICAgICAoMCwgY29kZV8xLmNoZWNrUmVwb3J0TWlzc2luZ1Byb3ApKGN4dCwgZGVwUHJvcCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWAke2hhc1Byb3BlcnR5fSAmJiAoJHsoMCwgY29kZV8xLmNoZWNrTWlzc2luZ1Byb3ApKGN4dCwgZGVwcywgbWlzc2luZyl9KWApOwogICAgICAgICAgKDAsIGNvZGVfMS5yZXBvcnRNaXNzaW5nUHJvcCkoY3h0LCBtaXNzaW5nKTsKICAgICAgICAgIGdlbi5lbHNlKCk7CiAgICAgICAgfQogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi52YWxpZGF0ZVByb3BlcnR5RGVwcyA9IHZhbGlkYXRlUHJvcGVydHlEZXBzOwogICAgZnVuY3Rpb24gdmFsaWRhdGVTY2hlbWFEZXBzKGN4dCwgc2NoZW1hRGVwcyA9IGN4dC5zY2hlbWEpIHsKICAgICAgY29uc3QgeyBnZW4sIGRhdGEsIGtleXdvcmQsIGl0IH0gPSBjeHQ7CiAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgIGZvciAoY29uc3QgcHJvcCBpbiBzY2hlbWFEZXBzKSB7CiAgICAgICAgaWYgKCgwLCB1dGlsXzEuYWx3YXlzVmFsaWRTY2hlbWEpKGl0LCBzY2hlbWFEZXBzW3Byb3BdKSkKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIGdlbi5pZigKICAgICAgICAgICgwLCBjb2RlXzEucHJvcGVydHlJbkRhdGEpKGdlbiwgZGF0YSwgcHJvcCwgaXQub3B0cy5vd25Qcm9wZXJ0aWVzKSwKICAgICAgICAgICgpID0+IHsKICAgICAgICAgICAgY29uc3Qgc2NoQ3h0ID0gY3h0LnN1YnNjaGVtYSh7IGtleXdvcmQsIHNjaGVtYVByb3A6IHByb3AgfSwgdmFsaWQpOwogICAgICAgICAgICBjeHQubWVyZ2VWYWxpZEV2YWx1YXRlZChzY2hDeHQsIHZhbGlkKTsKICAgICAgICAgIH0sCiAgICAgICAgICAoKSA9PiBnZW4udmFyKHZhbGlkLCB0cnVlKQogICAgICAgICAgLy8gVE9ETyB2YXIKICAgICAgICApOwogICAgICAgIGN4dC5vayh2YWxpZCk7CiAgICAgIH0KICAgIH0KICAgIGV4cG9ydHMyLnZhbGlkYXRlU2NoZW1hRGVwcyA9IHZhbGlkYXRlU2NoZW1hRGVwczsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9wcm9wZXJ0eU5hbWVzLmpzCnZhciByZXF1aXJlX3Byb3BlcnR5TmFtZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3Byb3BlcnR5TmFtZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogInByb3BlcnR5IG5hbWUgbXVzdCBiZSB2YWxpZCIsCiAgICAgIHBhcmFtczogKHsgcGFyYW1zIH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge3Byb3BlcnR5TmFtZTogJHtwYXJhbXMucHJvcGVydHlOYW1lfX1gCiAgICB9OwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogInByb3BlcnR5TmFtZXMiLAogICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgc2NoZW1hVHlwZTogWyJvYmplY3QiLCAiYm9vbGVhbiJdLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgc2NoZW1hLCBkYXRhLCBpdCB9ID0gY3h0OwogICAgICAgIGlmICgoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hKSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICAgIGdlbi5mb3JJbigia2V5IiwgZGF0YSwgKGtleSkgPT4gewogICAgICAgICAgY3h0LnNldFBhcmFtcyh7IHByb3BlcnR5TmFtZToga2V5IH0pOwogICAgICAgICAgY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgIGtleXdvcmQ6ICJwcm9wZXJ0eU5hbWVzIiwKICAgICAgICAgICAgZGF0YToga2V5LAogICAgICAgICAgICBkYXRhVHlwZXM6IFsic3RyaW5nIl0sCiAgICAgICAgICAgIHByb3BlcnR5TmFtZToga2V5LAogICAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlCiAgICAgICAgICB9LCB2YWxpZCk7CiAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKHZhbGlkKSwgKCkgPT4gewogICAgICAgICAgICBjeHQuZXJyb3IodHJ1ZSk7CiAgICAgICAgICAgIGlmICghaXQuYWxsRXJyb3JzKQogICAgICAgICAgICAgIGdlbi5icmVhaygpOwogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgY3h0Lm9rKHZhbGlkKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9hZGRpdGlvbmFsUHJvcGVydGllcy5qcwp2YXIgcmVxdWlyZV9hZGRpdGlvbmFsUHJvcGVydGllcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWRkaXRpb25hbFByb3BlcnRpZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlXzEgPSByZXF1aXJlX2NvZGUyKCk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgbmFtZXNfMSA9IHJlcXVpcmVfbmFtZXMoKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogIm11c3QgTk9UIGhhdmUgYWRkaXRpb25hbCBwcm9wZXJ0aWVzIiwKICAgICAgcGFyYW1zOiAoeyBwYXJhbXMgfSkgPT4gKDAsIGNvZGVnZW5fMS5fKWB7YWRkaXRpb25hbFByb3BlcnR5OiAke3BhcmFtcy5hZGRpdGlvbmFsUHJvcGVydHl9fWAKICAgIH07CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiYWRkaXRpb25hbFByb3BlcnRpZXMiLAogICAgICB0eXBlOiBbIm9iamVjdCJdLAogICAgICBzY2hlbWFUeXBlOiBbImJvb2xlYW4iLCAib2JqZWN0Il0sCiAgICAgIGFsbG93VW5kZWZpbmVkOiB0cnVlLAogICAgICB0cmFja0Vycm9yczogdHJ1ZSwKICAgICAgZXJyb3IsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYSwgcGFyZW50U2NoZW1hLCBkYXRhLCBlcnJzQ291bnQsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKCFlcnJzQ291bnQpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICAgIGNvbnN0IHsgYWxsRXJyb3JzLCBvcHRzIH0gPSBpdDsKICAgICAgICBpdC5wcm9wcyA9IHRydWU7CiAgICAgICAgaWYgKG9wdHMucmVtb3ZlQWRkaXRpb25hbCAhPT0gImFsbCIgJiYgKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYSkpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgcHJvcHMgPSAoMCwgY29kZV8xLmFsbFNjaGVtYVByb3BlcnRpZXMpKHBhcmVudFNjaGVtYS5wcm9wZXJ0aWVzKTsKICAgICAgICBjb25zdCBwYXRQcm9wcyA9ICgwLCBjb2RlXzEuYWxsU2NoZW1hUHJvcGVydGllcykocGFyZW50U2NoZW1hLnBhdHRlcm5Qcm9wZXJ0aWVzKTsKICAgICAgICBjaGVja0FkZGl0aW9uYWxQcm9wZXJ0aWVzKCk7CiAgICAgICAgY3h0Lm9rKCgwLCBjb2RlZ2VuXzEuXylgJHtlcnJzQ291bnR9ID09PSAke25hbWVzXzEuZGVmYXVsdC5lcnJvcnN9YCk7CiAgICAgICAgZnVuY3Rpb24gY2hlY2tBZGRpdGlvbmFsUHJvcGVydGllcygpIHsKICAgICAgICAgIGdlbi5mb3JJbigia2V5IiwgZGF0YSwgKGtleSkgPT4gewogICAgICAgICAgICBpZiAoIXByb3BzLmxlbmd0aCAmJiAhcGF0UHJvcHMubGVuZ3RoKQogICAgICAgICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0eUNvZGUoa2V5KTsKICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgIGdlbi5pZihpc0FkZGl0aW9uYWwoa2V5KSwgKCkgPT4gYWRkaXRpb25hbFByb3BlcnR5Q29kZShrZXkpKTsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBpc0FkZGl0aW9uYWwoa2V5KSB7CiAgICAgICAgICBsZXQgZGVmaW5lZFByb3A7CiAgICAgICAgICBpZiAocHJvcHMubGVuZ3RoID4gOCkgewogICAgICAgICAgICBjb25zdCBwcm9wc1NjaGVtYSA9ICgwLCB1dGlsXzEuc2NoZW1hUmVmT3JWYWwpKGl0LCBwYXJlbnRTY2hlbWEucHJvcGVydGllcywgInByb3BlcnRpZXMiKTsKICAgICAgICAgICAgZGVmaW5lZFByb3AgPSAoMCwgY29kZV8xLmlzT3duUHJvcGVydHkpKGdlbiwgcHJvcHNTY2hlbWEsIGtleSk7CiAgICAgICAgICB9IGVsc2UgaWYgKHByb3BzLmxlbmd0aCkgewogICAgICAgICAgICBkZWZpbmVkUHJvcCA9ICgwLCBjb2RlZ2VuXzEub3IpKC4uLnByb3BzLm1hcCgocCkgPT4gKDAsIGNvZGVnZW5fMS5fKWAke2tleX0gPT09ICR7cH1gKSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBkZWZpbmVkUHJvcCA9IGNvZGVnZW5fMS5uaWw7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAocGF0UHJvcHMubGVuZ3RoKSB7CiAgICAgICAgICAgIGRlZmluZWRQcm9wID0gKDAsIGNvZGVnZW5fMS5vcikoZGVmaW5lZFByb3AsIC4uLnBhdFByb3BzLm1hcCgocCkgPT4gKDAsIGNvZGVnZW5fMS5fKWAkeygwLCBjb2RlXzEudXNlUGF0dGVybikoY3h0LCBwKX0udGVzdCgke2tleX0pYCkpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEubm90KShkZWZpbmVkUHJvcCk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGRlbGV0ZUFkZGl0aW9uYWwoa2V5KSB7CiAgICAgICAgICBnZW4uY29kZSgoMCwgY29kZWdlbl8xLl8pYGRlbGV0ZSAke2RhdGF9WyR7a2V5fV1gKTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gYWRkaXRpb25hbFByb3BlcnR5Q29kZShrZXkpIHsKICAgICAgICAgIGlmIChvcHRzLnJlbW92ZUFkZGl0aW9uYWwgPT09ICJhbGwiIHx8IG9wdHMucmVtb3ZlQWRkaXRpb25hbCAmJiBzY2hlbWEgPT09IGZhbHNlKSB7CiAgICAgICAgICAgIGRlbGV0ZUFkZGl0aW9uYWwoa2V5KTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHNjaGVtYSA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgY3h0LnNldFBhcmFtcyh7IGFkZGl0aW9uYWxQcm9wZXJ0eToga2V5IH0pOwogICAgICAgICAgICBjeHQuZXJyb3IoKTsKICAgICAgICAgICAgaWYgKCFhbGxFcnJvcnMpCiAgICAgICAgICAgICAgZ2VuLmJyZWFrKCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hID09ICJvYmplY3QiICYmICEoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hKSkgewogICAgICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICAgICAgICBpZiAob3B0cy5yZW1vdmVBZGRpdGlvbmFsID09PSAiZmFpbGluZyIpIHsKICAgICAgICAgICAgICBhcHBseUFkZGl0aW9uYWxTY2hlbWEoa2V5LCB2YWxpZCwgZmFsc2UpOwogICAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkodmFsaWQpLCAoKSA9PiB7CiAgICAgICAgICAgICAgICBjeHQucmVzZXQoKTsKICAgICAgICAgICAgICAgIGRlbGV0ZUFkZGl0aW9uYWwoa2V5KTsKICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBhcHBseUFkZGl0aW9uYWxTY2hlbWEoa2V5LCB2YWxpZCk7CiAgICAgICAgICAgICAgaWYgKCFhbGxFcnJvcnMpCiAgICAgICAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5ub3QpKHZhbGlkKSwgKCkgPT4gZ2VuLmJyZWFrKCkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGFwcGx5QWRkaXRpb25hbFNjaGVtYShrZXksIHZhbGlkLCBlcnJvcnMpIHsKICAgICAgICAgIGNvbnN0IHN1YnNjaGVtYSA9IHsKICAgICAgICAgICAga2V5d29yZDogImFkZGl0aW9uYWxQcm9wZXJ0aWVzIiwKICAgICAgICAgICAgZGF0YVByb3A6IGtleSwKICAgICAgICAgICAgZGF0YVByb3BUeXBlOiB1dGlsXzEuVHlwZS5TdHIKICAgICAgICAgIH07CiAgICAgICAgICBpZiAoZXJyb3JzID09PSBmYWxzZSkgewogICAgICAgICAgICBPYmplY3QuYXNzaWduKHN1YnNjaGVtYSwgewogICAgICAgICAgICAgIGNvbXBvc2l0ZVJ1bGU6IHRydWUsCiAgICAgICAgICAgICAgY3JlYXRlRXJyb3JzOiBmYWxzZSwKICAgICAgICAgICAgICBhbGxFcnJvcnM6IGZhbHNlCiAgICAgICAgICAgIH0pOwogICAgICAgICAgfQogICAgICAgICAgY3h0LnN1YnNjaGVtYShzdWJzY2hlbWEsIHZhbGlkKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvcHJvcGVydGllcy5qcwp2YXIgcmVxdWlyZV9wcm9wZXJ0aWVzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9wcm9wZXJ0aWVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgdmFsaWRhdGVfMSA9IHJlcXVpcmVfdmFsaWRhdGUoKTsKICAgIHZhciBjb2RlXzEgPSByZXF1aXJlX2NvZGUyKCk7CiAgICB2YXIgdXRpbF8xID0gcmVxdWlyZV91dGlsKCk7CiAgICB2YXIgYWRkaXRpb25hbFByb3BlcnRpZXNfMSA9IHJlcXVpcmVfYWRkaXRpb25hbFByb3BlcnRpZXMoKTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJwcm9wZXJ0aWVzIiwKICAgICAgdHlwZTogIm9iamVjdCIsCiAgICAgIHNjaGVtYVR5cGU6ICJvYmplY3QiLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWEsIHBhcmVudFNjaGVtYSwgZGF0YSwgaXQgfSA9IGN4dDsKICAgICAgICBpZiAoaXQub3B0cy5yZW1vdmVBZGRpdGlvbmFsID09PSAiYWxsIiAmJiBwYXJlbnRTY2hlbWEuYWRkaXRpb25hbFByb3BlcnRpZXMgPT09IHZvaWQgMCkgewogICAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXNfMS5kZWZhdWx0LmNvZGUobmV3IHZhbGlkYXRlXzEuS2V5d29yZEN4dChpdCwgYWRkaXRpb25hbFByb3BlcnRpZXNfMS5kZWZhdWx0LCAiYWRkaXRpb25hbFByb3BlcnRpZXMiKSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGFsbFByb3BzID0gKDAsIGNvZGVfMS5hbGxTY2hlbWFQcm9wZXJ0aWVzKShzY2hlbWEpOwogICAgICAgIGZvciAoY29uc3QgcHJvcCBvZiBhbGxQcm9wcykgewogICAgICAgICAgaXQuZGVmaW5lZFByb3BlcnRpZXMuYWRkKHByb3ApOwogICAgICAgIH0KICAgICAgICBpZiAoaXQub3B0cy51bmV2YWx1YXRlZCAmJiBhbGxQcm9wcy5sZW5ndGggJiYgaXQucHJvcHMgIT09IHRydWUpIHsKICAgICAgICAgIGl0LnByb3BzID0gdXRpbF8xLm1lcmdlRXZhbHVhdGVkLnByb3BzKGdlbiwgKDAsIHV0aWxfMS50b0hhc2gpKGFsbFByb3BzKSwgaXQucHJvcHMpOwogICAgICAgIH0KICAgICAgICBjb25zdCBwcm9wZXJ0aWVzID0gYWxsUHJvcHMuZmlsdGVyKChwKSA9PiAhKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaGVtYVtwXSkpOwogICAgICAgIGlmIChwcm9wZXJ0aWVzLmxlbmd0aCA9PT0gMCkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICAgIGZvciAoY29uc3QgcHJvcCBvZiBwcm9wZXJ0aWVzKSB7CiAgICAgICAgICBpZiAoaGFzRGVmYXVsdChwcm9wKSkgewogICAgICAgICAgICBhcHBseVByb3BlcnR5U2NoZW1hKHByb3ApOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlXzEucHJvcGVydHlJbkRhdGEpKGdlbiwgZGF0YSwgcHJvcCwgaXQub3B0cy5vd25Qcm9wZXJ0aWVzKSk7CiAgICAgICAgICAgIGFwcGx5UHJvcGVydHlTY2hlbWEocHJvcCk7CiAgICAgICAgICAgIGlmICghaXQuYWxsRXJyb3JzKQogICAgICAgICAgICAgIGdlbi5lbHNlKCkudmFyKHZhbGlkLCB0cnVlKTsKICAgICAgICAgICAgZ2VuLmVuZElmKCk7CiAgICAgICAgICB9CiAgICAgICAgICBjeHQuaXQuZGVmaW5lZFByb3BlcnRpZXMuYWRkKHByb3ApOwogICAgICAgICAgY3h0Lm9rKHZhbGlkKTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gaGFzRGVmYXVsdChwcm9wKSB7CiAgICAgICAgICByZXR1cm4gaXQub3B0cy51c2VEZWZhdWx0cyAmJiAhaXQuY29tcG9zaXRlUnVsZSAmJiBzY2hlbWFbcHJvcF0uZGVmYXVsdCAhPT0gdm9pZCAwOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBhcHBseVByb3BlcnR5U2NoZW1hKHByb3ApIHsKICAgICAgICAgIGN4dC5zdWJzY2hlbWEoewogICAgICAgICAgICBrZXl3b3JkOiAicHJvcGVydGllcyIsCiAgICAgICAgICAgIHNjaGVtYVByb3A6IHByb3AsCiAgICAgICAgICAgIGRhdGFQcm9wOiBwcm9wCiAgICAgICAgICB9LCB2YWxpZCk7CiAgICAgICAgfQogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3BhdHRlcm5Qcm9wZXJ0aWVzLmpzCnZhciByZXF1aXJlX3BhdHRlcm5Qcm9wZXJ0aWVzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9wYXR0ZXJuUHJvcGVydGllcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVfMSA9IHJlcXVpcmVfY29kZTIoKTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciB1dGlsXzIgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJwYXR0ZXJuUHJvcGVydGllcyIsCiAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICBzY2hlbWFUeXBlOiAib2JqZWN0IiwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgc2NoZW1hLCBkYXRhLCBwYXJlbnRTY2hlbWEsIGl0IH0gPSBjeHQ7CiAgICAgICAgY29uc3QgeyBvcHRzIH0gPSBpdDsKICAgICAgICBjb25zdCBwYXR0ZXJucyA9ICgwLCBjb2RlXzEuYWxsU2NoZW1hUHJvcGVydGllcykoc2NoZW1hKTsKICAgICAgICBjb25zdCBhbHdheXNWYWxpZFBhdHRlcm5zID0gcGF0dGVybnMuZmlsdGVyKChwKSA9PiAoMCwgdXRpbF8xLmFsd2F5c1ZhbGlkU2NoZW1hKShpdCwgc2NoZW1hW3BdKSk7CiAgICAgICAgaWYgKHBhdHRlcm5zLmxlbmd0aCA9PT0gMCB8fCBhbHdheXNWYWxpZFBhdHRlcm5zLmxlbmd0aCA9PT0gcGF0dGVybnMubGVuZ3RoICYmICghaXQub3B0cy51bmV2YWx1YXRlZCB8fCBpdC5wcm9wcyA9PT0gdHJ1ZSkpIHsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgY29uc3QgY2hlY2tQcm9wZXJ0aWVzID0gb3B0cy5zdHJpY3RTY2hlbWEgJiYgIW9wdHMuYWxsb3dNYXRjaGluZ1Byb3BlcnRpZXMgJiYgcGFyZW50U2NoZW1hLnByb3BlcnRpZXM7CiAgICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubmFtZSgidmFsaWQiKTsKICAgICAgICBpZiAoaXQucHJvcHMgIT09IHRydWUgJiYgIShpdC5wcm9wcyBpbnN0YW5jZW9mIGNvZGVnZW5fMS5OYW1lKSkgewogICAgICAgICAgaXQucHJvcHMgPSAoMCwgdXRpbF8yLmV2YWx1YXRlZFByb3BzVG9OYW1lKShnZW4sIGl0LnByb3BzKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgeyBwcm9wcyB9ID0gaXQ7CiAgICAgICAgdmFsaWRhdGVQYXR0ZXJuUHJvcGVydGllcygpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlUGF0dGVyblByb3BlcnRpZXMoKSB7CiAgICAgICAgICBmb3IgKGNvbnN0IHBhdCBvZiBwYXR0ZXJucykgewogICAgICAgICAgICBpZiAoY2hlY2tQcm9wZXJ0aWVzKQogICAgICAgICAgICAgIGNoZWNrTWF0Y2hpbmdQcm9wZXJ0aWVzKHBhdCk7CiAgICAgICAgICAgIGlmIChpdC5hbGxFcnJvcnMpIHsKICAgICAgICAgICAgICB2YWxpZGF0ZVByb3BlcnRpZXMocGF0KTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBnZW4udmFyKHZhbGlkLCB0cnVlKTsKICAgICAgICAgICAgICB2YWxpZGF0ZVByb3BlcnRpZXMocGF0KTsKICAgICAgICAgICAgICBnZW4uaWYodmFsaWQpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIGNoZWNrTWF0Y2hpbmdQcm9wZXJ0aWVzKHBhdCkgewogICAgICAgICAgZm9yIChjb25zdCBwcm9wIGluIGNoZWNrUHJvcGVydGllcykgewogICAgICAgICAgICBpZiAobmV3IFJlZ0V4cChwYXQpLnRlc3QocHJvcCkpIHsKICAgICAgICAgICAgICAoMCwgdXRpbF8xLmNoZWNrU3RyaWN0TW9kZSkoaXQsIGBwcm9wZXJ0eSAke3Byb3B9IG1hdGNoZXMgcGF0dGVybiAke3BhdH0gKHVzZSBhbGxvd01hdGNoaW5nUHJvcGVydGllcylgKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZVByb3BlcnRpZXMocGF0KSB7CiAgICAgICAgICBnZW4uZm9ySW4oImtleSIsIGRhdGEsIChrZXkpID0+IHsKICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHsoMCwgY29kZV8xLnVzZVBhdHRlcm4pKGN4dCwgcGF0KX0udGVzdCgke2tleX0pYCwgKCkgPT4gewogICAgICAgICAgICAgIGNvbnN0IGFsd2F5c1ZhbGlkID0gYWx3YXlzVmFsaWRQYXR0ZXJucy5pbmNsdWRlcyhwYXQpOwogICAgICAgICAgICAgIGlmICghYWx3YXlzVmFsaWQpIHsKICAgICAgICAgICAgICAgIGN4dC5zdWJzY2hlbWEoewogICAgICAgICAgICAgICAgICBrZXl3b3JkOiAicGF0dGVyblByb3BlcnRpZXMiLAogICAgICAgICAgICAgICAgICBzY2hlbWFQcm9wOiBwYXQsCiAgICAgICAgICAgICAgICAgIGRhdGFQcm9wOiBrZXksCiAgICAgICAgICAgICAgICAgIGRhdGFQcm9wVHlwZTogdXRpbF8yLlR5cGUuU3RyCiAgICAgICAgICAgICAgICB9LCB2YWxpZCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChpdC5vcHRzLnVuZXZhbHVhdGVkICYmIHByb3BzICE9PSB0cnVlKSB7CiAgICAgICAgICAgICAgICBnZW4uYXNzaWduKCgwLCBjb2RlZ2VuXzEuXylgJHtwcm9wc31bJHtrZXl9XWAsIHRydWUpOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAoIWFsd2F5c1ZhbGlkICYmICFpdC5hbGxFcnJvcnMpIHsKICAgICAgICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkodmFsaWQpLCAoKSA9PiBnZW4uYnJlYWsoKSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9ub3QuanMKdmFyIHJlcXVpcmVfbm90ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9ub3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJub3QiLAogICAgICBzY2hlbWFUeXBlOiBbIm9iamVjdCIsICJib29sZWFuIl0sCiAgICAgIHRyYWNrRXJyb3JzOiB0cnVlLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBzY2hlbWEsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKCgwLCB1dGlsXzEuYWx3YXlzVmFsaWRTY2hlbWEpKGl0LCBzY2hlbWEpKSB7CiAgICAgICAgICBjeHQuZmFpbCgpOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5uYW1lKCJ2YWxpZCIpOwogICAgICAgIGN4dC5zdWJzY2hlbWEoewogICAgICAgICAga2V5d29yZDogIm5vdCIsCiAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlLAogICAgICAgICAgY3JlYXRlRXJyb3JzOiBmYWxzZSwKICAgICAgICAgIGFsbEVycm9yczogZmFsc2UKICAgICAgICB9LCB2YWxpZCk7CiAgICAgICAgY3h0LmZhaWxSZXN1bHQodmFsaWQsICgpID0+IGN4dC5yZXNldCgpLCAoKSA9PiBjeHQuZXJyb3IoKSk7CiAgICAgIH0sCiAgICAgIGVycm9yOiB7IG1lc3NhZ2U6ICJtdXN0IE5PVCBiZSB2YWxpZCIgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9hbnlPZi5qcwp2YXIgcmVxdWlyZV9hbnlPZiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYW55T2YuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlXzEgPSByZXF1aXJlX2NvZGUyKCk7CiAgICB2YXIgZGVmID0gewogICAgICBrZXl3b3JkOiAiYW55T2YiLAogICAgICBzY2hlbWFUeXBlOiAiYXJyYXkiLAogICAgICB0cmFja0Vycm9yczogdHJ1ZSwKICAgICAgY29kZTogY29kZV8xLnZhbGlkYXRlVW5pb24sCiAgICAgIGVycm9yOiB7IG1lc3NhZ2U6ICJtdXN0IG1hdGNoIGEgc2NoZW1hIGluIGFueU9mIiB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL29uZU9mLmpzCnZhciByZXF1aXJlX29uZU9mID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9vbmVPZi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGNvZGVnZW5fMSA9IHJlcXVpcmVfY29kZWdlbigpOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlOiAibXVzdCBtYXRjaCBleGFjdGx5IG9uZSBzY2hlbWEgaW4gb25lT2YiLAogICAgICBwYXJhbXM6ICh7IHBhcmFtcyB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtwYXNzaW5nU2NoZW1hczogJHtwYXJhbXMucGFzc2luZ319YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJvbmVPZiIsCiAgICAgIHNjaGVtYVR5cGU6ICJhcnJheSIsCiAgICAgIHRyYWNrRXJyb3JzOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgc2NoZW1hLCBwYXJlbnRTY2hlbWEsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHNjaGVtYSkpCiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImFqdiBpbXBsZW1lbnRhdGlvbiBlcnJvciIpOwogICAgICAgIGlmIChpdC5vcHRzLmRpc2NyaW1pbmF0b3IgJiYgcGFyZW50U2NoZW1hLmRpc2NyaW1pbmF0b3IpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3Qgc2NoQXJyID0gc2NoZW1hOwogICAgICAgIGNvbnN0IHZhbGlkID0gZ2VuLmxldCgidmFsaWQiLCBmYWxzZSk7CiAgICAgICAgY29uc3QgcGFzc2luZyA9IGdlbi5sZXQoInBhc3NpbmciLCBudWxsKTsKICAgICAgICBjb25zdCBzY2hWYWxpZCA9IGdlbi5uYW1lKCJfdmFsaWQiKTsKICAgICAgICBjeHQuc2V0UGFyYW1zKHsgcGFzc2luZyB9KTsKICAgICAgICBnZW4uYmxvY2sodmFsaWRhdGVPbmVPZik7CiAgICAgICAgY3h0LnJlc3VsdCh2YWxpZCwgKCkgPT4gY3h0LnJlc2V0KCksICgpID0+IGN4dC5lcnJvcih0cnVlKSk7CiAgICAgICAgZnVuY3Rpb24gdmFsaWRhdGVPbmVPZigpIHsKICAgICAgICAgIHNjaEFyci5mb3JFYWNoKChzY2gsIGkpID0+IHsKICAgICAgICAgICAgbGV0IHNjaEN4dDsKICAgICAgICAgICAgaWYgKCgwLCB1dGlsXzEuYWx3YXlzVmFsaWRTY2hlbWEpKGl0LCBzY2gpKSB7CiAgICAgICAgICAgICAgZ2VuLnZhcihzY2hWYWxpZCwgdHJ1ZSk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgc2NoQ3h0ID0gY3h0LnN1YnNjaGVtYSh7CiAgICAgICAgICAgICAgICBrZXl3b3JkOiAib25lT2YiLAogICAgICAgICAgICAgICAgc2NoZW1hUHJvcDogaSwKICAgICAgICAgICAgICAgIGNvbXBvc2l0ZVJ1bGU6IHRydWUKICAgICAgICAgICAgICB9LCBzY2hWYWxpZCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGkgPiAwKSB7CiAgICAgICAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgJHtzY2hWYWxpZH0gJiYgJHt2YWxpZH1gKS5hc3NpZ24odmFsaWQsIGZhbHNlKS5hc3NpZ24ocGFzc2luZywgKDAsIGNvZGVnZW5fMS5fKWBbJHtwYXNzaW5nfSwgJHtpfV1gKS5lbHNlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZ2VuLmlmKHNjaFZhbGlkLCAoKSA9PiB7CiAgICAgICAgICAgICAgZ2VuLmFzc2lnbih2YWxpZCwgdHJ1ZSk7CiAgICAgICAgICAgICAgZ2VuLmFzc2lnbihwYXNzaW5nLCBpKTsKICAgICAgICAgICAgICBpZiAoc2NoQ3h0KQogICAgICAgICAgICAgICAgY3h0Lm1lcmdlRXZhbHVhdGVkKHNjaEN4dCwgY29kZWdlbl8xLk5hbWUpOwogICAgICAgICAgICB9KTsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9hbGxPZi5qcwp2YXIgcmVxdWlyZV9hbGxPZiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvYWxsT2YuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJhbGxPZiIsCiAgICAgIHNjaGVtYVR5cGU6ICJhcnJheSIsCiAgICAgIGNvZGUoY3h0KSB7CiAgICAgICAgY29uc3QgeyBnZW4sIHNjaGVtYSwgaXQgfSA9IGN4dDsKICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoc2NoZW1hKSkKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiYWp2IGltcGxlbWVudGF0aW9uIGVycm9yIik7CiAgICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubmFtZSgidmFsaWQiKTsKICAgICAgICBzY2hlbWEuZm9yRWFjaCgoc2NoLCBpKSA9PiB7CiAgICAgICAgICBpZiAoKDAsIHV0aWxfMS5hbHdheXNWYWxpZFNjaGVtYSkoaXQsIHNjaCkpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIGNvbnN0IHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoeyBrZXl3b3JkOiAiYWxsT2YiLCBzY2hlbWFQcm9wOiBpIH0sIHZhbGlkKTsKICAgICAgICAgIGN4dC5vayh2YWxpZCk7CiAgICAgICAgICBjeHQubWVyZ2VFdmFsdWF0ZWQoc2NoQ3h0KTsKICAgICAgICB9KTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBkZWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci9pZi5qcwp2YXIgcmVxdWlyZV9pZiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvaWYuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgcGFyYW1zIH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBtdXN0IG1hdGNoICIke3BhcmFtcy5pZkNsYXVzZX0iIHNjaGVtYWAsCiAgICAgIHBhcmFtczogKHsgcGFyYW1zIH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge2ZhaWxpbmdLZXl3b3JkOiAke3BhcmFtcy5pZkNsYXVzZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJpZiIsCiAgICAgIHNjaGVtYVR5cGU6IFsib2JqZWN0IiwgImJvb2xlYW4iXSwKICAgICAgdHJhY2tFcnJvcnM6IHRydWUsCiAgICAgIGVycm9yLAogICAgICBjb2RlKGN4dCkgewogICAgICAgIGNvbnN0IHsgZ2VuLCBwYXJlbnRTY2hlbWEsIGl0IH0gPSBjeHQ7CiAgICAgICAgaWYgKHBhcmVudFNjaGVtYS50aGVuID09PSB2b2lkIDAgJiYgcGFyZW50U2NoZW1hLmVsc2UgPT09IHZvaWQgMCkgewogICAgICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCAnImlmIiB3aXRob3V0ICJ0aGVuIiBhbmQgImVsc2UiIGlzIGlnbm9yZWQnKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgaGFzVGhlbiA9IGhhc1NjaGVtYShpdCwgInRoZW4iKTsKICAgICAgICBjb25zdCBoYXNFbHNlID0gaGFzU2NoZW1hKGl0LCAiZWxzZSIpOwogICAgICAgIGlmICghaGFzVGhlbiAmJiAhaGFzRWxzZSkKICAgICAgICAgIHJldHVybjsKICAgICAgICBjb25zdCB2YWxpZCA9IGdlbi5sZXQoInZhbGlkIiwgdHJ1ZSk7CiAgICAgICAgY29uc3Qgc2NoVmFsaWQgPSBnZW4ubmFtZSgiX3ZhbGlkIik7CiAgICAgICAgdmFsaWRhdGVJZigpOwogICAgICAgIGN4dC5yZXNldCgpOwogICAgICAgIGlmIChoYXNUaGVuICYmIGhhc0Vsc2UpIHsKICAgICAgICAgIGNvbnN0IGlmQ2xhdXNlID0gZ2VuLmxldCgiaWZDbGF1c2UiKTsKICAgICAgICAgIGN4dC5zZXRQYXJhbXMoeyBpZkNsYXVzZSB9KTsKICAgICAgICAgIGdlbi5pZihzY2hWYWxpZCwgdmFsaWRhdGVDbGF1c2UoInRoZW4iLCBpZkNsYXVzZSksIHZhbGlkYXRlQ2xhdXNlKCJlbHNlIiwgaWZDbGF1c2UpKTsKICAgICAgICB9IGVsc2UgaWYgKGhhc1RoZW4pIHsKICAgICAgICAgIGdlbi5pZihzY2hWYWxpZCwgdmFsaWRhdGVDbGF1c2UoInRoZW4iKSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGdlbi5pZigoMCwgY29kZWdlbl8xLm5vdCkoc2NoVmFsaWQpLCB2YWxpZGF0ZUNsYXVzZSgiZWxzZSIpKTsKICAgICAgICB9CiAgICAgICAgY3h0LnBhc3ModmFsaWQsICgpID0+IGN4dC5lcnJvcih0cnVlKSk7CiAgICAgICAgZnVuY3Rpb24gdmFsaWRhdGVJZigpIHsKICAgICAgICAgIGNvbnN0IHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoewogICAgICAgICAgICBrZXl3b3JkOiAiaWYiLAogICAgICAgICAgICBjb21wb3NpdGVSdWxlOiB0cnVlLAogICAgICAgICAgICBjcmVhdGVFcnJvcnM6IGZhbHNlLAogICAgICAgICAgICBhbGxFcnJvcnM6IGZhbHNlCiAgICAgICAgICB9LCBzY2hWYWxpZCk7CiAgICAgICAgICBjeHQubWVyZ2VFdmFsdWF0ZWQoc2NoQ3h0KTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gdmFsaWRhdGVDbGF1c2Uoa2V5d29yZCwgaWZDbGF1c2UpIHsKICAgICAgICAgIHJldHVybiAoKSA9PiB7CiAgICAgICAgICAgIGNvbnN0IHNjaEN4dCA9IGN4dC5zdWJzY2hlbWEoeyBrZXl3b3JkIH0sIHNjaFZhbGlkKTsKICAgICAgICAgICAgZ2VuLmFzc2lnbih2YWxpZCwgc2NoVmFsaWQpOwogICAgICAgICAgICBjeHQubWVyZ2VWYWxpZEV2YWx1YXRlZChzY2hDeHQsIHZhbGlkKTsKICAgICAgICAgICAgaWYgKGlmQ2xhdXNlKQogICAgICAgICAgICAgIGdlbi5hc3NpZ24oaWZDbGF1c2UsICgwLCBjb2RlZ2VuXzEuXylgJHtrZXl3b3JkfWApOwogICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgY3h0LnNldFBhcmFtcyh7IGlmQ2xhdXNlOiBrZXl3b3JkIH0pOwogICAgICAgICAgfTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBmdW5jdGlvbiBoYXNTY2hlbWEoaXQsIGtleXdvcmQpIHsKICAgICAgY29uc3Qgc2NoZW1hID0gaXQuc2NoZW1hW2tleXdvcmRdOwogICAgICByZXR1cm4gc2NoZW1hICE9PSB2b2lkIDAgJiYgISgwLCB1dGlsXzEuYWx3YXlzVmFsaWRTY2hlbWEpKGl0LCBzY2hlbWEpOwogICAgfQogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9hcHBsaWNhdG9yL3RoZW5FbHNlLmpzCnZhciByZXF1aXJlX3RoZW5FbHNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvYXBwbGljYXRvci90aGVuRWxzZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIHV0aWxfMSA9IHJlcXVpcmVfdXRpbCgpOwogICAgdmFyIGRlZiA9IHsKICAgICAga2V5d29yZDogWyJ0aGVuIiwgImVsc2UiXSwKICAgICAgc2NoZW1hVHlwZTogWyJvYmplY3QiLCAiYm9vbGVhbiJdLAogICAgICBjb2RlKHsga2V5d29yZCwgcGFyZW50U2NoZW1hLCBpdCB9KSB7CiAgICAgICAgaWYgKHBhcmVudFNjaGVtYS5pZiA9PT0gdm9pZCAwKQogICAgICAgICAgKDAsIHV0aWxfMS5jaGVja1N0cmljdE1vZGUpKGl0LCBgIiR7a2V5d29yZH0iIHdpdGhvdXQgImlmIiBpcyBpZ25vcmVkYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvaW5kZXguanMKdmFyIHJlcXVpcmVfYXBwbGljYXRvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2FwcGxpY2F0b3IvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBhZGRpdGlvbmFsSXRlbXNfMSA9IHJlcXVpcmVfYWRkaXRpb25hbEl0ZW1zKCk7CiAgICB2YXIgcHJlZml4SXRlbXNfMSA9IHJlcXVpcmVfcHJlZml4SXRlbXMoKTsKICAgIHZhciBpdGVtc18xID0gcmVxdWlyZV9pdGVtcygpOwogICAgdmFyIGl0ZW1zMjAyMF8xID0gcmVxdWlyZV9pdGVtczIwMjAoKTsKICAgIHZhciBjb250YWluc18xID0gcmVxdWlyZV9jb250YWlucygpOwogICAgdmFyIGRlcGVuZGVuY2llc18xID0gcmVxdWlyZV9kZXBlbmRlbmNpZXMoKTsKICAgIHZhciBwcm9wZXJ0eU5hbWVzXzEgPSByZXF1aXJlX3Byb3BlcnR5TmFtZXMoKTsKICAgIHZhciBhZGRpdGlvbmFsUHJvcGVydGllc18xID0gcmVxdWlyZV9hZGRpdGlvbmFsUHJvcGVydGllcygpOwogICAgdmFyIHByb3BlcnRpZXNfMSA9IHJlcXVpcmVfcHJvcGVydGllcygpOwogICAgdmFyIHBhdHRlcm5Qcm9wZXJ0aWVzXzEgPSByZXF1aXJlX3BhdHRlcm5Qcm9wZXJ0aWVzKCk7CiAgICB2YXIgbm90XzEgPSByZXF1aXJlX25vdCgpOwogICAgdmFyIGFueU9mXzEgPSByZXF1aXJlX2FueU9mKCk7CiAgICB2YXIgb25lT2ZfMSA9IHJlcXVpcmVfb25lT2YoKTsKICAgIHZhciBhbGxPZl8xID0gcmVxdWlyZV9hbGxPZigpOwogICAgdmFyIGlmXzEgPSByZXF1aXJlX2lmKCk7CiAgICB2YXIgdGhlbkVsc2VfMSA9IHJlcXVpcmVfdGhlbkVsc2UoKTsKICAgIGZ1bmN0aW9uIGdldEFwcGxpY2F0b3IoZHJhZnQyMDIwID0gZmFsc2UpIHsKICAgICAgY29uc3QgYXBwbGljYXRvciA9IFsKICAgICAgICAvLyBhbnkKICAgICAgICBub3RfMS5kZWZhdWx0LAogICAgICAgIGFueU9mXzEuZGVmYXVsdCwKICAgICAgICBvbmVPZl8xLmRlZmF1bHQsCiAgICAgICAgYWxsT2ZfMS5kZWZhdWx0LAogICAgICAgIGlmXzEuZGVmYXVsdCwKICAgICAgICB0aGVuRWxzZV8xLmRlZmF1bHQsCiAgICAgICAgLy8gb2JqZWN0CiAgICAgICAgcHJvcGVydHlOYW1lc18xLmRlZmF1bHQsCiAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXNfMS5kZWZhdWx0LAogICAgICAgIGRlcGVuZGVuY2llc18xLmRlZmF1bHQsCiAgICAgICAgcHJvcGVydGllc18xLmRlZmF1bHQsCiAgICAgICAgcGF0dGVyblByb3BlcnRpZXNfMS5kZWZhdWx0CiAgICAgIF07CiAgICAgIGlmIChkcmFmdDIwMjApCiAgICAgICAgYXBwbGljYXRvci5wdXNoKHByZWZpeEl0ZW1zXzEuZGVmYXVsdCwgaXRlbXMyMDIwXzEuZGVmYXVsdCk7CiAgICAgIGVsc2UKICAgICAgICBhcHBsaWNhdG9yLnB1c2goYWRkaXRpb25hbEl0ZW1zXzEuZGVmYXVsdCwgaXRlbXNfMS5kZWZhdWx0KTsKICAgICAgYXBwbGljYXRvci5wdXNoKGNvbnRhaW5zXzEuZGVmYXVsdCk7CiAgICAgIHJldHVybiBhcHBsaWNhdG9yOwogICAgfQogICAgZXhwb3J0czIuZGVmYXVsdCA9IGdldEFwcGxpY2F0b3I7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvZm9ybWF0L2Zvcm1hdC5qcwp2YXIgcmVxdWlyZV9mb3JtYXQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9mb3JtYXQvZm9ybWF0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgZXJyb3IgPSB7CiAgICAgIG1lc3NhZ2U6ICh7IHNjaGVtYUNvZGUgfSkgPT4gKDAsIGNvZGVnZW5fMS5zdHIpYG11c3QgbWF0Y2ggZm9ybWF0ICIke3NjaGVtYUNvZGV9ImAsCiAgICAgIHBhcmFtczogKHsgc2NoZW1hQ29kZSB9KSA9PiAoMCwgY29kZWdlbl8xLl8pYHtmb3JtYXQ6ICR7c2NoZW1hQ29kZX19YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJmb3JtYXQiLAogICAgICB0eXBlOiBbIm51bWJlciIsICJzdHJpbmciXSwKICAgICAgc2NoZW1hVHlwZTogInN0cmluZyIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQsIHJ1bGVUeXBlKSB7CiAgICAgICAgY29uc3QgeyBnZW4sIGRhdGEsICRkYXRhLCBzY2hlbWEsIHNjaGVtYUNvZGUsIGl0IH0gPSBjeHQ7CiAgICAgICAgY29uc3QgeyBvcHRzLCBlcnJTY2hlbWFQYXRoLCBzY2hlbWFFbnYsIHNlbGY6IHNlbGYyIH0gPSBpdDsKICAgICAgICBpZiAoIW9wdHMudmFsaWRhdGVGb3JtYXRzKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGlmICgkZGF0YSkKICAgICAgICAgIHZhbGlkYXRlJERhdGFGb3JtYXQoKTsKICAgICAgICBlbHNlCiAgICAgICAgICB2YWxpZGF0ZUZvcm1hdCgpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlJERhdGFGb3JtYXQoKSB7CiAgICAgICAgICBjb25zdCBmbXRzID0gZ2VuLnNjb3BlVmFsdWUoImZvcm1hdHMiLCB7CiAgICAgICAgICAgIHJlZjogc2VsZjIuZm9ybWF0cywKICAgICAgICAgICAgY29kZTogb3B0cy5jb2RlLmZvcm1hdHMKICAgICAgICAgIH0pOwogICAgICAgICAgY29uc3QgZkRlZiA9IGdlbi5jb25zdCgiZkRlZiIsICgwLCBjb2RlZ2VuXzEuXylgJHtmbXRzfVske3NjaGVtYUNvZGV9XWApOwogICAgICAgICAgY29uc3QgZlR5cGUgPSBnZW4ubGV0KCJmVHlwZSIpOwogICAgICAgICAgY29uc3QgZm9ybWF0ID0gZ2VuLmxldCgiZm9ybWF0Iik7CiAgICAgICAgICBnZW4uaWYoKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtmRGVmfSA9PSAib2JqZWN0IiAmJiAhKCR7ZkRlZn0gaW5zdGFuY2VvZiBSZWdFeHApYCwgKCkgPT4gZ2VuLmFzc2lnbihmVHlwZSwgKDAsIGNvZGVnZW5fMS5fKWAke2ZEZWZ9LnR5cGUgfHwgInN0cmluZyJgKS5hc3NpZ24oZm9ybWF0LCAoMCwgY29kZWdlbl8xLl8pYCR7ZkRlZn0udmFsaWRhdGVgKSwgKCkgPT4gZ2VuLmFzc2lnbihmVHlwZSwgKDAsIGNvZGVnZW5fMS5fKWAic3RyaW5nImApLmFzc2lnbihmb3JtYXQsIGZEZWYpKTsKICAgICAgICAgIGN4dC5mYWlsJGRhdGEoKDAsIGNvZGVnZW5fMS5vcikodW5rbm93bkZtdCgpLCBpbnZhbGlkRm10KCkpKTsKICAgICAgICAgIGZ1bmN0aW9uIHVua25vd25GbXQoKSB7CiAgICAgICAgICAgIGlmIChvcHRzLnN0cmljdFNjaGVtYSA9PT0gZmFsc2UpCiAgICAgICAgICAgICAgcmV0dXJuIGNvZGVnZW5fMS5uaWw7CiAgICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCR7c2NoZW1hQ29kZX0gJiYgISR7Zm9ybWF0fWA7CiAgICAgICAgICB9CiAgICAgICAgICBmdW5jdGlvbiBpbnZhbGlkRm10KCkgewogICAgICAgICAgICBjb25zdCBjYWxsRm9ybWF0ID0gc2NoZW1hRW52LiRhc3luYyA/ICgwLCBjb2RlZ2VuXzEuXylgKCR7ZkRlZn0uYXN5bmMgPyBhd2FpdCAke2Zvcm1hdH0oJHtkYXRhfSkgOiAke2Zvcm1hdH0oJHtkYXRhfSkpYCA6ICgwLCBjb2RlZ2VuXzEuXylgJHtmb3JtYXR9KCR7ZGF0YX0pYDsKICAgICAgICAgICAgY29uc3QgdmFsaWREYXRhID0gKDAsIGNvZGVnZW5fMS5fKWAodHlwZW9mICR7Zm9ybWF0fSA9PSAiZnVuY3Rpb24iID8gJHtjYWxsRm9ybWF0fSA6ICR7Zm9ybWF0fS50ZXN0KCR7ZGF0YX0pKWA7CiAgICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCR7Zm9ybWF0fSAmJiAke2Zvcm1hdH0gIT09IHRydWUgJiYgJHtmVHlwZX0gPT09ICR7cnVsZVR5cGV9ICYmICEke3ZhbGlkRGF0YX1gOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZUZvcm1hdCgpIHsKICAgICAgICAgIGNvbnN0IGZvcm1hdERlZiA9IHNlbGYyLmZvcm1hdHNbc2NoZW1hXTsKICAgICAgICAgIGlmICghZm9ybWF0RGVmKSB7CiAgICAgICAgICAgIHVua25vd25Gb3JtYXQoKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGZvcm1hdERlZiA9PT0gdHJ1ZSkKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgY29uc3QgW2ZtdFR5cGUsIGZvcm1hdCwgZm10UmVmXSA9IGdldEZvcm1hdChmb3JtYXREZWYpOwogICAgICAgICAgaWYgKGZtdFR5cGUgPT09IHJ1bGVUeXBlKQogICAgICAgICAgICBjeHQucGFzcyh2YWxpZENvbmRpdGlvbigpKTsKICAgICAgICAgIGZ1bmN0aW9uIHVua25vd25Gb3JtYXQoKSB7CiAgICAgICAgICAgIGlmIChvcHRzLnN0cmljdFNjaGVtYSA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgICBzZWxmMi5sb2dnZXIud2Fybih1bmtub3duTXNnKCkpOwogICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IodW5rbm93bk1zZygpKTsKICAgICAgICAgICAgZnVuY3Rpb24gdW5rbm93bk1zZygpIHsKICAgICAgICAgICAgICByZXR1cm4gYHVua25vd24gZm9ybWF0ICIke3NjaGVtYX0iIGlnbm9yZWQgaW4gc2NoZW1hIGF0IHBhdGggIiR7ZXJyU2NoZW1hUGF0aH0iYDsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgZnVuY3Rpb24gZ2V0Rm9ybWF0KGZtdERlZikgewogICAgICAgICAgICBjb25zdCBjb2RlID0gZm10RGVmIGluc3RhbmNlb2YgUmVnRXhwID8gKDAsIGNvZGVnZW5fMS5yZWdleHBDb2RlKShmbXREZWYpIDogb3B0cy5jb2RlLmZvcm1hdHMgPyAoMCwgY29kZWdlbl8xLl8pYCR7b3B0cy5jb2RlLmZvcm1hdHN9JHsoMCwgY29kZWdlbl8xLmdldFByb3BlcnR5KShzY2hlbWEpfWAgOiB2b2lkIDA7CiAgICAgICAgICAgIGNvbnN0IGZtdCA9IGdlbi5zY29wZVZhbHVlKCJmb3JtYXRzIiwgeyBrZXk6IHNjaGVtYSwgcmVmOiBmbXREZWYsIGNvZGUgfSk7CiAgICAgICAgICAgIGlmICh0eXBlb2YgZm10RGVmID09ICJvYmplY3QiICYmICEoZm10RGVmIGluc3RhbmNlb2YgUmVnRXhwKSkgewogICAgICAgICAgICAgIHJldHVybiBbZm10RGVmLnR5cGUgfHwgInN0cmluZyIsIGZtdERlZi52YWxpZGF0ZSwgKDAsIGNvZGVnZW5fMS5fKWAke2ZtdH0udmFsaWRhdGVgXTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gWyJzdHJpbmciLCBmbXREZWYsIGZtdF07CiAgICAgICAgICB9CiAgICAgICAgICBmdW5jdGlvbiB2YWxpZENvbmRpdGlvbigpIHsKICAgICAgICAgICAgaWYgKHR5cGVvZiBmb3JtYXREZWYgPT0gIm9iamVjdCIgJiYgIShmb3JtYXREZWYgaW5zdGFuY2VvZiBSZWdFeHApICYmIGZvcm1hdERlZi5hc3luYykgewogICAgICAgICAgICAgIGlmICghc2NoZW1hRW52LiRhc3luYykKICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiYXN5bmMgZm9ybWF0IGluIHN5bmMgc2NoZW1hIik7CiAgICAgICAgICAgICAgcmV0dXJuICgwLCBjb2RlZ2VuXzEuXylgYXdhaXQgJHtmbXRSZWZ9KCR7ZGF0YX0pYDsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gdHlwZW9mIGZvcm1hdCA9PSAiZnVuY3Rpb24iID8gKDAsIGNvZGVnZW5fMS5fKWAke2ZtdFJlZn0oJHtkYXRhfSlgIDogKDAsIGNvZGVnZW5fMS5fKWAke2ZtdFJlZn0udGVzdCgke2RhdGF9KWA7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRlZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9mb3JtYXQvaW5kZXguanMKdmFyIHJlcXVpcmVfZm9ybWF0MiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2Zvcm1hdC9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGZvcm1hdF8xID0gcmVxdWlyZV9mb3JtYXQoKTsKICAgIHZhciBmb3JtYXQgPSBbZm9ybWF0XzEuZGVmYXVsdF07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZm9ybWF0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL21ldGFkYXRhLmpzCnZhciByZXF1aXJlX21ldGFkYXRhID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvbWV0YWRhdGEuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbnRlbnRWb2NhYnVsYXJ5ID0gZXhwb3J0czIubWV0YWRhdGFWb2NhYnVsYXJ5ID0gdm9pZCAwOwogICAgZXhwb3J0czIubWV0YWRhdGFWb2NhYnVsYXJ5ID0gWwogICAgICAidGl0bGUiLAogICAgICAiZGVzY3JpcHRpb24iLAogICAgICAiZGVmYXVsdCIsCiAgICAgICJkZXByZWNhdGVkIiwKICAgICAgInJlYWRPbmx5IiwKICAgICAgIndyaXRlT25seSIsCiAgICAgICJleGFtcGxlcyIKICAgIF07CiAgICBleHBvcnRzMi5jb250ZW50Vm9jYWJ1bGFyeSA9IFsKICAgICAgImNvbnRlbnRNZWRpYVR5cGUiLAogICAgICAiY29udGVudEVuY29kaW5nIiwKICAgICAgImNvbnRlbnRTY2hlbWEiCiAgICBdOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2RyYWZ0Ny5qcwp2YXIgcmVxdWlyZV9kcmFmdDcgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9kcmFmdDcuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX2NvcmUyKCk7CiAgICB2YXIgdmFsaWRhdGlvbl8xID0gcmVxdWlyZV92YWxpZGF0aW9uKCk7CiAgICB2YXIgYXBwbGljYXRvcl8xID0gcmVxdWlyZV9hcHBsaWNhdG9yKCk7CiAgICB2YXIgZm9ybWF0XzEgPSByZXF1aXJlX2Zvcm1hdDIoKTsKICAgIHZhciBtZXRhZGF0YV8xID0gcmVxdWlyZV9tZXRhZGF0YSgpOwogICAgdmFyIGRyYWZ0N1ZvY2FidWxhcmllcyA9IFsKICAgICAgY29yZV8xLmRlZmF1bHQsCiAgICAgIHZhbGlkYXRpb25fMS5kZWZhdWx0LAogICAgICAoMCwgYXBwbGljYXRvcl8xLmRlZmF1bHQpKCksCiAgICAgIGZvcm1hdF8xLmRlZmF1bHQsCiAgICAgIG1ldGFkYXRhXzEubWV0YWRhdGFWb2NhYnVsYXJ5LAogICAgICBtZXRhZGF0YV8xLmNvbnRlbnRWb2NhYnVsYXJ5CiAgICBdOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IGRyYWZ0N1ZvY2FidWxhcmllczsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvYWp2LW5wbS04LjE3LjEtMTJhZGU3ZWRjNi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi9kaXN0L3ZvY2FidWxhcmllcy9kaXNjcmltaW5hdG9yL3R5cGVzLmpzCnZhciByZXF1aXJlX3R5cGVzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC92b2NhYnVsYXJpZXMvZGlzY3JpbWluYXRvci90eXBlcy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuRGlzY3JFcnJvciA9IHZvaWQgMDsKICAgIHZhciBEaXNjckVycm9yOwogICAgKGZ1bmN0aW9uKERpc2NyRXJyb3IyKSB7CiAgICAgIERpc2NyRXJyb3IyWyJUYWciXSA9ICJ0YWciOwogICAgICBEaXNjckVycm9yMlsiTWFwcGluZyJdID0gIm1hcHBpbmciOwogICAgfSkoRGlzY3JFcnJvciB8fCAoZXhwb3J0czIuRGlzY3JFcnJvciA9IERpc2NyRXJyb3IgPSB7fSkpOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2Rpc2NyaW1pbmF0b3IvaW5kZXguanMKdmFyIHJlcXVpcmVfZGlzY3JpbWluYXRvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3Qvdm9jYWJ1bGFyaWVzL2Rpc2NyaW1pbmF0b3IvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIHZhciBjb2RlZ2VuXzEgPSByZXF1aXJlX2NvZGVnZW4oKTsKICAgIHZhciB0eXBlc18xID0gcmVxdWlyZV90eXBlcygpOwogICAgdmFyIGNvbXBpbGVfMSA9IHJlcXVpcmVfY29tcGlsZSgpOwogICAgdmFyIHJlZl9lcnJvcl8xID0gcmVxdWlyZV9yZWZfZXJyb3IoKTsKICAgIHZhciB1dGlsXzEgPSByZXF1aXJlX3V0aWwoKTsKICAgIHZhciBlcnJvciA9IHsKICAgICAgbWVzc2FnZTogKHsgcGFyYW1zOiB7IGRpc2NyRXJyb3IsIHRhZ05hbWUgfSB9KSA9PiBkaXNjckVycm9yID09PSB0eXBlc18xLkRpc2NyRXJyb3IuVGFnID8gYHRhZyAiJHt0YWdOYW1lfSIgbXVzdCBiZSBzdHJpbmdgIDogYHZhbHVlIG9mIHRhZyAiJHt0YWdOYW1lfSIgbXVzdCBiZSBpbiBvbmVPZmAsCiAgICAgIHBhcmFtczogKHsgcGFyYW1zOiB7IGRpc2NyRXJyb3IsIHRhZywgdGFnTmFtZSB9IH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge2Vycm9yOiAke2Rpc2NyRXJyb3J9LCB0YWc6ICR7dGFnTmFtZX0sIHRhZ1ZhbHVlOiAke3RhZ319YAogICAgfTsKICAgIHZhciBkZWYgPSB7CiAgICAgIGtleXdvcmQ6ICJkaXNjcmltaW5hdG9yIiwKICAgICAgdHlwZTogIm9iamVjdCIsCiAgICAgIHNjaGVtYVR5cGU6ICJvYmplY3QiLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgZGF0YSwgc2NoZW1hLCBwYXJlbnRTY2hlbWEsIGl0IH0gPSBjeHQ7CiAgICAgICAgY29uc3QgeyBvbmVPZiB9ID0gcGFyZW50U2NoZW1hOwogICAgICAgIGlmICghaXQub3B0cy5kaXNjcmltaW5hdG9yKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImRpc2NyaW1pbmF0b3I6IHJlcXVpcmVzIGRpc2NyaW1pbmF0b3Igb3B0aW9uIik7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHRhZ05hbWUgPSBzY2hlbWEucHJvcGVydHlOYW1lOwogICAgICAgIGlmICh0eXBlb2YgdGFnTmFtZSAhPSAic3RyaW5nIikKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiZGlzY3JpbWluYXRvcjogcmVxdWlyZXMgcHJvcGVydHlOYW1lIik7CiAgICAgICAgaWYgKHNjaGVtYS5tYXBwaW5nKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJkaXNjcmltaW5hdG9yOiBtYXBwaW5nIGlzIG5vdCBzdXBwb3J0ZWQiKTsKICAgICAgICBpZiAoIW9uZU9mKQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJkaXNjcmltaW5hdG9yOiByZXF1aXJlcyBvbmVPZiBrZXl3b3JkIik7CiAgICAgICAgY29uc3QgdmFsaWQgPSBnZW4ubGV0KCJ2YWxpZCIsIGZhbHNlKTsKICAgICAgICBjb25zdCB0YWcgPSBnZW4uY29uc3QoInRhZyIsICgwLCBjb2RlZ2VuXzEuXylgJHtkYXRhfSR7KDAsIGNvZGVnZW5fMS5nZXRQcm9wZXJ0eSkodGFnTmFtZSl9YCk7CiAgICAgICAgZ2VuLmlmKCgwLCBjb2RlZ2VuXzEuXylgdHlwZW9mICR7dGFnfSA9PSAic3RyaW5nImAsICgpID0+IHZhbGlkYXRlTWFwcGluZygpLCAoKSA9PiBjeHQuZXJyb3IoZmFsc2UsIHsgZGlzY3JFcnJvcjogdHlwZXNfMS5EaXNjckVycm9yLlRhZywgdGFnLCB0YWdOYW1lIH0pKTsKICAgICAgICBjeHQub2sodmFsaWQpOwogICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlTWFwcGluZygpIHsKICAgICAgICAgIGNvbnN0IG1hcHBpbmcgPSBnZXRNYXBwaW5nKCk7CiAgICAgICAgICBnZW4uaWYoZmFsc2UpOwogICAgICAgICAgZm9yIChjb25zdCB0YWdWYWx1ZSBpbiBtYXBwaW5nKSB7CiAgICAgICAgICAgIGdlbi5lbHNlSWYoKDAsIGNvZGVnZW5fMS5fKWAke3RhZ30gPT09ICR7dGFnVmFsdWV9YCk7CiAgICAgICAgICAgIGdlbi5hc3NpZ24odmFsaWQsIGFwcGx5VGFnU2NoZW1hKG1hcHBpbmdbdGFnVmFsdWVdKSk7CiAgICAgICAgICB9CiAgICAgICAgICBnZW4uZWxzZSgpOwogICAgICAgICAgY3h0LmVycm9yKGZhbHNlLCB7IGRpc2NyRXJyb3I6IHR5cGVzXzEuRGlzY3JFcnJvci5NYXBwaW5nLCB0YWcsIHRhZ05hbWUgfSk7CiAgICAgICAgICBnZW4uZW5kSWYoKTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gYXBwbHlUYWdTY2hlbWEoc2NoZW1hUHJvcCkgewogICAgICAgICAgY29uc3QgX3ZhbGlkID0gZ2VuLm5hbWUoInZhbGlkIik7CiAgICAgICAgICBjb25zdCBzY2hDeHQgPSBjeHQuc3Vic2NoZW1hKHsga2V5d29yZDogIm9uZU9mIiwgc2NoZW1hUHJvcCB9LCBfdmFsaWQpOwogICAgICAgICAgY3h0Lm1lcmdlRXZhbHVhdGVkKHNjaEN4dCwgY29kZWdlbl8xLk5hbWUpOwogICAgICAgICAgcmV0dXJuIF92YWxpZDsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gZ2V0TWFwcGluZygpIHsKICAgICAgICAgIHZhciBfYTsKICAgICAgICAgIGNvbnN0IG9uZU9mTWFwcGluZyA9IHt9OwogICAgICAgICAgY29uc3QgdG9wUmVxdWlyZWQgPSBoYXNSZXF1aXJlZChwYXJlbnRTY2hlbWEpOwogICAgICAgICAgbGV0IHRhZ1JlcXVpcmVkID0gdHJ1ZTsKICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgb25lT2YubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgbGV0IHNjaCA9IG9uZU9mW2ldOwogICAgICAgICAgICBpZiAoKHNjaCA9PT0gbnVsbCB8fCBzY2ggPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNjaC4kcmVmKSAmJiAhKDAsIHV0aWxfMS5zY2hlbWFIYXNSdWxlc0J1dFJlZikoc2NoLCBpdC5zZWxmLlJVTEVTKSkgewogICAgICAgICAgICAgIGNvbnN0IHJlZiA9IHNjaC4kcmVmOwogICAgICAgICAgICAgIHNjaCA9IGNvbXBpbGVfMS5yZXNvbHZlUmVmLmNhbGwoaXQuc2VsZiwgaXQuc2NoZW1hRW52LnJvb3QsIGl0LmJhc2VJZCwgcmVmKTsKICAgICAgICAgICAgICBpZiAoc2NoIGluc3RhbmNlb2YgY29tcGlsZV8xLlNjaGVtYUVudikKICAgICAgICAgICAgICAgIHNjaCA9IHNjaC5zY2hlbWE7CiAgICAgICAgICAgICAgaWYgKHNjaCA9PT0gdm9pZCAwKQogICAgICAgICAgICAgICAgdGhyb3cgbmV3IHJlZl9lcnJvcl8xLmRlZmF1bHQoaXQub3B0cy51cmlSZXNvbHZlciwgaXQuYmFzZUlkLCByZWYpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IHByb3BTY2ggPSAoX2EgPSBzY2ggPT09IG51bGwgfHwgc2NoID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzY2gucHJvcGVydGllcykgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hW3RhZ05hbWVdOwogICAgICAgICAgICBpZiAodHlwZW9mIHByb3BTY2ggIT0gIm9iamVjdCIpIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGRpc2NyaW1pbmF0b3I6IG9uZU9mIHN1YnNjaGVtYXMgKG9yIHJlZmVyZW5jZWQgc2NoZW1hcykgbXVzdCBoYXZlICJwcm9wZXJ0aWVzLyR7dGFnTmFtZX0iYCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGFnUmVxdWlyZWQgPSB0YWdSZXF1aXJlZCAmJiAodG9wUmVxdWlyZWQgfHwgaGFzUmVxdWlyZWQoc2NoKSk7CiAgICAgICAgICAgIGFkZE1hcHBpbmdzKHByb3BTY2gsIGkpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCF0YWdSZXF1aXJlZCkKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBkaXNjcmltaW5hdG9yOiAiJHt0YWdOYW1lfSIgbXVzdCBiZSByZXF1aXJlZGApOwogICAgICAgICAgcmV0dXJuIG9uZU9mTWFwcGluZzsKICAgICAgICAgIGZ1bmN0aW9uIGhhc1JlcXVpcmVkKHsgcmVxdWlyZWQgfSkgewogICAgICAgICAgICByZXR1cm4gQXJyYXkuaXNBcnJheShyZXF1aXJlZCkgJiYgcmVxdWlyZWQuaW5jbHVkZXModGFnTmFtZSk7CiAgICAgICAgICB9CiAgICAgICAgICBmdW5jdGlvbiBhZGRNYXBwaW5ncyhzY2gsIGkpIHsKICAgICAgICAgICAgaWYgKHNjaC5jb25zdCkgewogICAgICAgICAgICAgIGFkZE1hcHBpbmcoc2NoLmNvbnN0LCBpKTsKICAgICAgICAgICAgfSBlbHNlIGlmIChzY2guZW51bSkgewogICAgICAgICAgICAgIGZvciAoY29uc3QgdGFnVmFsdWUgb2Ygc2NoLmVudW0pIHsKICAgICAgICAgICAgICAgIGFkZE1hcHBpbmcodGFnVmFsdWUsIGkpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGRpc2NyaW1pbmF0b3I6ICJwcm9wZXJ0aWVzLyR7dGFnTmFtZX0iIG11c3QgaGF2ZSAiY29uc3QiIG9yICJlbnVtImApOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBmdW5jdGlvbiBhZGRNYXBwaW5nKHRhZ1ZhbHVlLCBpKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2YgdGFnVmFsdWUgIT0gInN0cmluZyIgfHwgdGFnVmFsdWUgaW4gb25lT2ZNYXBwaW5nKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBkaXNjcmltaW5hdG9yOiAiJHt0YWdOYW1lfSIgdmFsdWVzIG11c3QgYmUgdW5pcXVlIHN0cmluZ3NgKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBvbmVPZk1hcHBpbmdbdGFnVmFsdWVdID0gaTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvcmVmcy9qc29uLXNjaGVtYS1kcmFmdC0wNy5qc29uCnZhciByZXF1aXJlX2pzb25fc2NoZW1hX2RyYWZ0XzA3ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1ucG0tOC4xNy4xLTEyYWRlN2VkYzYtMTAuemlwL25vZGVfbW9kdWxlcy9hanYvZGlzdC9yZWZzL2pzb24tc2NoZW1hLWRyYWZ0LTA3Lmpzb24iKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICBtb2R1bGUyLmV4cG9ydHMgPSB7CiAgICAgICRzY2hlbWE6ICJodHRwOi8vanNvbi1zY2hlbWEub3JnL2RyYWZ0LTA3L3NjaGVtYSMiLAogICAgICAkaWQ6ICJodHRwOi8vanNvbi1zY2hlbWEub3JnL2RyYWZ0LTA3L3NjaGVtYSMiLAogICAgICB0aXRsZTogIkNvcmUgc2NoZW1hIG1ldGEtc2NoZW1hIiwKICAgICAgZGVmaW5pdGlvbnM6IHsKICAgICAgICBzY2hlbWFBcnJheTogewogICAgICAgICAgdHlwZTogImFycmF5IiwKICAgICAgICAgIG1pbkl0ZW1zOiAxLAogICAgICAgICAgaXRlbXM6IHsgJHJlZjogIiMiIH0KICAgICAgICB9LAogICAgICAgIG5vbk5lZ2F0aXZlSW50ZWdlcjogewogICAgICAgICAgdHlwZTogImludGVnZXIiLAogICAgICAgICAgbWluaW11bTogMAogICAgICAgIH0sCiAgICAgICAgbm9uTmVnYXRpdmVJbnRlZ2VyRGVmYXVsdDA6IHsKICAgICAgICAgIGFsbE9mOiBbeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9ub25OZWdhdGl2ZUludGVnZXIiIH0sIHsgZGVmYXVsdDogMCB9XQogICAgICAgIH0sCiAgICAgICAgc2ltcGxlVHlwZXM6IHsKICAgICAgICAgIGVudW06IFsiYXJyYXkiLCAiYm9vbGVhbiIsICJpbnRlZ2VyIiwgIm51bGwiLCAibnVtYmVyIiwgIm9iamVjdCIsICJzdHJpbmciXQogICAgICAgIH0sCiAgICAgICAgc3RyaW5nQXJyYXk6IHsKICAgICAgICAgIHR5cGU6ICJhcnJheSIsCiAgICAgICAgICBpdGVtczogeyB0eXBlOiAic3RyaW5nIiB9LAogICAgICAgICAgdW5pcXVlSXRlbXM6IHRydWUsCiAgICAgICAgICBkZWZhdWx0OiBbXQogICAgICAgIH0KICAgICAgfSwKICAgICAgdHlwZTogWyJvYmplY3QiLCAiYm9vbGVhbiJdLAogICAgICBwcm9wZXJ0aWVzOiB7CiAgICAgICAgJGlkOiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgICAgIGZvcm1hdDogInVyaS1yZWZlcmVuY2UiCiAgICAgICAgfSwKICAgICAgICAkc2NoZW1hOiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgICAgIGZvcm1hdDogInVyaSIKICAgICAgICB9LAogICAgICAgICRyZWY6IHsKICAgICAgICAgIHR5cGU6ICJzdHJpbmciLAogICAgICAgICAgZm9ybWF0OiAidXJpLXJlZmVyZW5jZSIKICAgICAgICB9LAogICAgICAgICRjb21tZW50OiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIgogICAgICAgIH0sCiAgICAgICAgdGl0bGU6IHsKICAgICAgICAgIHR5cGU6ICJzdHJpbmciCiAgICAgICAgfSwKICAgICAgICBkZXNjcmlwdGlvbjogewogICAgICAgICAgdHlwZTogInN0cmluZyIKICAgICAgICB9LAogICAgICAgIGRlZmF1bHQ6IHRydWUsCiAgICAgICAgcmVhZE9ubHk6IHsKICAgICAgICAgIHR5cGU6ICJib29sZWFuIiwKICAgICAgICAgIGRlZmF1bHQ6IGZhbHNlCiAgICAgICAgfSwKICAgICAgICBleGFtcGxlczogewogICAgICAgICAgdHlwZTogImFycmF5IiwKICAgICAgICAgIGl0ZW1zOiB0cnVlCiAgICAgICAgfSwKICAgICAgICBtdWx0aXBsZU9mOiB7CiAgICAgICAgICB0eXBlOiAibnVtYmVyIiwKICAgICAgICAgIGV4Y2x1c2l2ZU1pbmltdW06IDAKICAgICAgICB9LAogICAgICAgIG1heGltdW06IHsKICAgICAgICAgIHR5cGU6ICJudW1iZXIiCiAgICAgICAgfSwKICAgICAgICBleGNsdXNpdmVNYXhpbXVtOiB7CiAgICAgICAgICB0eXBlOiAibnVtYmVyIgogICAgICAgIH0sCiAgICAgICAgbWluaW11bTogewogICAgICAgICAgdHlwZTogIm51bWJlciIKICAgICAgICB9LAogICAgICAgIGV4Y2x1c2l2ZU1pbmltdW06IHsKICAgICAgICAgIHR5cGU6ICJudW1iZXIiCiAgICAgICAgfSwKICAgICAgICBtYXhMZW5ndGg6IHsgJHJlZjogIiMvZGVmaW5pdGlvbnMvbm9uTmVnYXRpdmVJbnRlZ2VyIiB9LAogICAgICAgIG1pbkxlbmd0aDogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9ub25OZWdhdGl2ZUludGVnZXJEZWZhdWx0MCIgfSwKICAgICAgICBwYXR0ZXJuOiB7CiAgICAgICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgICAgIGZvcm1hdDogInJlZ2V4IgogICAgICAgIH0sCiAgICAgICAgYWRkaXRpb25hbEl0ZW1zOiB7ICRyZWY6ICIjIiB9LAogICAgICAgIGl0ZW1zOiB7CiAgICAgICAgICBhbnlPZjogW3sgJHJlZjogIiMiIH0sIHsgJHJlZjogIiMvZGVmaW5pdGlvbnMvc2NoZW1hQXJyYXkiIH1dLAogICAgICAgICAgZGVmYXVsdDogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgbWF4SXRlbXM6IHsgJHJlZjogIiMvZGVmaW5pdGlvbnMvbm9uTmVnYXRpdmVJbnRlZ2VyIiB9LAogICAgICAgIG1pbkl0ZW1zOiB7ICRyZWY6ICIjL2RlZmluaXRpb25zL25vbk5lZ2F0aXZlSW50ZWdlckRlZmF1bHQwIiB9LAogICAgICAgIHVuaXF1ZUl0ZW1zOiB7CiAgICAgICAgICB0eXBlOiAiYm9vbGVhbiIsCiAgICAgICAgICBkZWZhdWx0OiBmYWxzZQogICAgICAgIH0sCiAgICAgICAgY29udGFpbnM6IHsgJHJlZjogIiMiIH0sCiAgICAgICAgbWF4UHJvcGVydGllczogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9ub25OZWdhdGl2ZUludGVnZXIiIH0sCiAgICAgICAgbWluUHJvcGVydGllczogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9ub25OZWdhdGl2ZUludGVnZXJEZWZhdWx0MCIgfSwKICAgICAgICByZXF1aXJlZDogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9zdHJpbmdBcnJheSIgfSwKICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogeyAkcmVmOiAiIyIgfSwKICAgICAgICBkZWZpbml0aW9uczogewogICAgICAgICAgdHlwZTogIm9iamVjdCIsCiAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogeyAkcmVmOiAiIyIgfSwKICAgICAgICAgIGRlZmF1bHQ6IHt9CiAgICAgICAgfSwKICAgICAgICBwcm9wZXJ0aWVzOiB7CiAgICAgICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiB7ICRyZWY6ICIjIiB9LAogICAgICAgICAgZGVmYXVsdDoge30KICAgICAgICB9LAogICAgICAgIHBhdHRlcm5Qcm9wZXJ0aWVzOiB7CiAgICAgICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiB7ICRyZWY6ICIjIiB9LAogICAgICAgICAgcHJvcGVydHlOYW1lczogeyBmb3JtYXQ6ICJyZWdleCIgfSwKICAgICAgICAgIGRlZmF1bHQ6IHt9CiAgICAgICAgfSwKICAgICAgICBkZXBlbmRlbmNpZXM6IHsKICAgICAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHsKICAgICAgICAgICAgYW55T2Y6IFt7ICRyZWY6ICIjIiB9LCB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3N0cmluZ0FycmF5IiB9XQogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgcHJvcGVydHlOYW1lczogeyAkcmVmOiAiIyIgfSwKICAgICAgICBjb25zdDogdHJ1ZSwKICAgICAgICBlbnVtOiB7CiAgICAgICAgICB0eXBlOiAiYXJyYXkiLAogICAgICAgICAgaXRlbXM6IHRydWUsCiAgICAgICAgICBtaW5JdGVtczogMSwKICAgICAgICAgIHVuaXF1ZUl0ZW1zOiB0cnVlCiAgICAgICAgfSwKICAgICAgICB0eXBlOiB7CiAgICAgICAgICBhbnlPZjogWwogICAgICAgICAgICB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3NpbXBsZVR5cGVzIiB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgdHlwZTogImFycmF5IiwKICAgICAgICAgICAgICBpdGVtczogeyAkcmVmOiAiIy9kZWZpbml0aW9ucy9zaW1wbGVUeXBlcyIgfSwKICAgICAgICAgICAgICBtaW5JdGVtczogMSwKICAgICAgICAgICAgICB1bmlxdWVJdGVtczogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdCiAgICAgICAgfSwKICAgICAgICBmb3JtYXQ6IHsgdHlwZTogInN0cmluZyIgfSwKICAgICAgICBjb250ZW50TWVkaWFUeXBlOiB7IHR5cGU6ICJzdHJpbmciIH0sCiAgICAgICAgY29udGVudEVuY29kaW5nOiB7IHR5cGU6ICJzdHJpbmciIH0sCiAgICAgICAgaWY6IHsgJHJlZjogIiMiIH0sCiAgICAgICAgdGhlbjogeyAkcmVmOiAiIyIgfSwKICAgICAgICBlbHNlOiB7ICRyZWY6ICIjIiB9LAogICAgICAgIGFsbE9mOiB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3NjaGVtYUFycmF5IiB9LAogICAgICAgIGFueU9mOiB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3NjaGVtYUFycmF5IiB9LAogICAgICAgIG9uZU9mOiB7ICRyZWY6ICIjL2RlZmluaXRpb25zL3NjaGVtYUFycmF5IiB9LAogICAgICAgIG5vdDogeyAkcmVmOiAiIyIgfQogICAgICB9LAogICAgICBkZWZhdWx0OiB0cnVlCiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvYWp2LmpzCnZhciByZXF1aXJlX2FqdiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9hanYtbnBtLTguMTcuMS0xMmFkZTdlZGM2LTEwLnppcC9ub2RlX21vZHVsZXMvYWp2L2Rpc3QvYWp2LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5NaXNzaW5nUmVmRXJyb3IgPSBleHBvcnRzMi5WYWxpZGF0aW9uRXJyb3IgPSBleHBvcnRzMi5Db2RlR2VuID0gZXhwb3J0czIuTmFtZSA9IGV4cG9ydHMyLm5pbCA9IGV4cG9ydHMyLnN0cmluZ2lmeSA9IGV4cG9ydHMyLnN0ciA9IGV4cG9ydHMyLl8gPSBleHBvcnRzMi5LZXl3b3JkQ3h0ID0gZXhwb3J0czIuQWp2ID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfY29yZSgpOwogICAgdmFyIGRyYWZ0N18xID0gcmVxdWlyZV9kcmFmdDcoKTsKICAgIHZhciBkaXNjcmltaW5hdG9yXzEgPSByZXF1aXJlX2Rpc2NyaW1pbmF0b3IoKTsKICAgIHZhciBkcmFmdDdNZXRhU2NoZW1hID0gcmVxdWlyZV9qc29uX3NjaGVtYV9kcmFmdF8wNygpOwogICAgdmFyIE1FVEFfU1VQUE9SVF9EQVRBID0gWyIvcHJvcGVydGllcyJdOwogICAgdmFyIE1FVEFfU0NIRU1BX0lEID0gImh0dHA6Ly9qc29uLXNjaGVtYS5vcmcvZHJhZnQtMDcvc2NoZW1hIjsKICAgIHZhciBBanYgPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5kZWZhdWx0IHsKICAgICAgX2FkZFZvY2FidWxhcmllcygpIHsKICAgICAgICBzdXBlci5fYWRkVm9jYWJ1bGFyaWVzKCk7CiAgICAgICAgZHJhZnQ3XzEuZGVmYXVsdC5mb3JFYWNoKCh2KSA9PiB0aGlzLmFkZFZvY2FidWxhcnkodikpOwogICAgICAgIGlmICh0aGlzLm9wdHMuZGlzY3JpbWluYXRvcikKICAgICAgICAgIHRoaXMuYWRkS2V5d29yZChkaXNjcmltaW5hdG9yXzEuZGVmYXVsdCk7CiAgICAgIH0KICAgICAgX2FkZERlZmF1bHRNZXRhU2NoZW1hKCkgewogICAgICAgIHN1cGVyLl9hZGREZWZhdWx0TWV0YVNjaGVtYSgpOwogICAgICAgIGlmICghdGhpcy5vcHRzLm1ldGEpCiAgICAgICAgICByZXR1cm47CiAgICAgICAgY29uc3QgbWV0YVNjaGVtYSA9IHRoaXMub3B0cy4kZGF0YSA/IHRoaXMuJGRhdGFNZXRhU2NoZW1hKGRyYWZ0N01ldGFTY2hlbWEsIE1FVEFfU1VQUE9SVF9EQVRBKSA6IGRyYWZ0N01ldGFTY2hlbWE7CiAgICAgICAgdGhpcy5hZGRNZXRhU2NoZW1hKG1ldGFTY2hlbWEsIE1FVEFfU0NIRU1BX0lELCBmYWxzZSk7CiAgICAgICAgdGhpcy5yZWZzWyJodHRwOi8vanNvbi1zY2hlbWEub3JnL3NjaGVtYSJdID0gTUVUQV9TQ0hFTUFfSUQ7CiAgICAgIH0KICAgICAgZGVmYXVsdE1ldGEoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMub3B0cy5kZWZhdWx0TWV0YSA9IHN1cGVyLmRlZmF1bHRNZXRhKCkgfHwgKHRoaXMuZ2V0U2NoZW1hKE1FVEFfU0NIRU1BX0lEKSA/IE1FVEFfU0NIRU1BX0lEIDogdm9pZCAwKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkFqdiA9IEFqdjsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IGV4cG9ydHMyID0gQWp2OwogICAgbW9kdWxlMi5leHBvcnRzLkFqdiA9IEFqdjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGVmYXVsdCA9IEFqdjsKICAgIHZhciB2YWxpZGF0ZV8xID0gcmVxdWlyZV92YWxpZGF0ZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiS2V5d29yZEN4dCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHZhbGlkYXRlXzEuS2V5d29yZEN4dDsKICAgIH0gfSk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLl87CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3RyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29kZWdlbl8xLnN0cjsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzdHJpbmdpZnkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEuc3RyaW5naWZ5OwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm5pbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5uaWw7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiTmFtZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvZGVnZW5fMS5OYW1lOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIkNvZGVHZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb2RlZ2VuXzEuQ29kZUdlbjsKICAgIH0gfSk7CiAgICB2YXIgdmFsaWRhdGlvbl9lcnJvcl8xID0gcmVxdWlyZV92YWxpZGF0aW9uX2Vycm9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJWYWxpZGF0aW9uRXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB2YWxpZGF0aW9uX2Vycm9yXzEuZGVmYXVsdDsKICAgIH0gfSk7CiAgICB2YXIgcmVmX2Vycm9yXzEgPSByZXF1aXJlX3JlZl9lcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiTWlzc2luZ1JlZkVycm9yIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcmVmX2Vycm9yXzEuZGVmYXVsdDsKICAgIH0gfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL2Fqdi1mb3JtYXRzLXZpcnR1YWwtMGRmYjIxYWI0ZS8yLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1mb3JtYXRzLW5wbS0zLjAuMS0yNjYyY2Y1YjEyLTEwLnppcC9ub2RlX21vZHVsZXMvYWp2LWZvcm1hdHMvZGlzdC9mb3JtYXRzLmpzCnZhciByZXF1aXJlX2Zvcm1hdHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vYWp2LWZvcm1hdHMtdmlydHVhbC0wZGZiMjFhYjRlLzIvLnlhcm4vYmVycnkvY2FjaGUvYWp2LWZvcm1hdHMtbnBtLTMuMC4xLTI2NjJjZjViMTItMTAuemlwL25vZGVfbW9kdWxlcy9hanYtZm9ybWF0cy9kaXN0L2Zvcm1hdHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZvcm1hdE5hbWVzID0gZXhwb3J0czIuZmFzdEZvcm1hdHMgPSBleHBvcnRzMi5mdWxsRm9ybWF0cyA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGZtdERlZih2YWxpZGF0ZSwgY29tcGFyZSkgewogICAgICByZXR1cm4geyB2YWxpZGF0ZSwgY29tcGFyZSB9OwogICAgfQogICAgZXhwb3J0czIuZnVsbEZvcm1hdHMgPSB7CiAgICAgIC8vIGRhdGU6IGh0dHA6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzMzMzkjc2VjdGlvbi01LjYKICAgICAgZGF0ZTogZm10RGVmKGRhdGUsIGNvbXBhcmVEYXRlKSwKICAgICAgLy8gZGF0ZS10aW1lOiBodHRwOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmMzMzM5I3NlY3Rpb24tNS42CiAgICAgIHRpbWU6IGZtdERlZihnZXRUaW1lKHRydWUpLCBjb21wYXJlVGltZSksCiAgICAgICJkYXRlLXRpbWUiOiBmbXREZWYoZ2V0RGF0ZVRpbWUodHJ1ZSksIGNvbXBhcmVEYXRlVGltZSksCiAgICAgICJpc28tdGltZSI6IGZtdERlZihnZXRUaW1lKCksIGNvbXBhcmVJc29UaW1lKSwKICAgICAgImlzby1kYXRlLXRpbWUiOiBmbXREZWYoZ2V0RGF0ZVRpbWUoKSwgY29tcGFyZUlzb0RhdGVUaW1lKSwKICAgICAgLy8gZHVyYXRpb246IGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmMzMzM5I2FwcGVuZGl4LUEKICAgICAgZHVyYXRpb246IC9eUCg/ISQpKChcZCtZKT8oXGQrTSk/KFxkK0QpPyhUKD89XGQpKFxkK0gpPyhcZCtNKT8oXGQrUyk/KT98KFxkK1cpPykkLywKICAgICAgdXJpLAogICAgICAidXJpLXJlZmVyZW5jZSI6IC9eKD86W2Etel1bYS16MC05K1wtLl0qOik/KD86XC8/XC8oPzooPzpbYS16MC05XC0uX34hJCYnKCkqKyw7PTpdfCVbMC05YS1mXXsyfSkqQCk/KD86XFsoPzooPzooPzooPzpbMC05YS1mXXsxLDR9Oil7Nn18OjooPzpbMC05YS1mXXsxLDR9Oil7NX18KD86WzAtOWEtZl17MSw0fSk/OjooPzpbMC05YS1mXXsxLDR9Oil7NH18KD86KD86WzAtOWEtZl17MSw0fTopezAsMX1bMC05YS1mXXsxLDR9KT86Oig/OlswLTlhLWZdezEsNH06KXszfXwoPzooPzpbMC05YS1mXXsxLDR9Oil7MCwyfVswLTlhLWZdezEsNH0pPzo6KD86WzAtOWEtZl17MSw0fTopezJ9fCg/Oig/OlswLTlhLWZdezEsNH06KXswLDN9WzAtOWEtZl17MSw0fSk/OjpbMC05YS1mXXsxLDR9OnwoPzooPzpbMC05YS1mXXsxLDR9Oil7MCw0fVswLTlhLWZdezEsNH0pPzo6KSg/OlswLTlhLWZdezEsNH06WzAtOWEtZl17MSw0fXwoPzooPzoyNVswLTVdfDJbMC00XVxkfFswMV0/XGRcZD8pXC4pezN9KD86MjVbMC01XXwyWzAtNF1cZHxbMDFdP1xkXGQ/KSl8KD86KD86WzAtOWEtZl17MSw0fTopezAsNX1bMC05YS1mXXsxLDR9KT86OlswLTlhLWZdezEsNH18KD86KD86WzAtOWEtZl17MSw0fTopezAsNn1bMC05YS1mXXsxLDR9KT86Oil8W1Z2XVswLTlhLWZdK1wuW2EtejAtOVwtLl9+ISQmJygpKissOz06XSspXF18KD86KD86MjVbMC01XXwyWzAtNF1cZHxbMDFdP1xkXGQ/KVwuKXszfSg/OjI1WzAtNV18MlswLTRdXGR8WzAxXT9cZFxkPyl8KD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9XXwlWzAtOWEtZl17Mn0pKikoPzo6XGQqKT8oPzpcLyg/OlthLXowLTlcLS5ffiEkJiciKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKikqfFwvKD86KD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkrKD86XC8oPzpbYS16MC05XC0uX34hJCYnIigpKissOz06QF18JVswLTlhLWZdezJ9KSopKik/fCg/OlthLXowLTlcLS5ffiEkJiciKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKyg/OlwvKD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkqKSopPyg/Olw/KD86W2EtejAtOVwtLl9+ISQmJyIoKSorLDs9OkAvP118JVswLTlhLWZdezJ9KSopPyg/OiMoPzpbYS16MC05XC0uX34hJCYnIigpKissOz06QC8/XXwlWzAtOWEtZl17Mn0pKik/JC9pLAogICAgICAvLyB1cmktdGVtcGxhdGU6IGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM2NTcwCiAgICAgICJ1cmktdGVtcGxhdGUiOiAvXig/Oig/OlteXHgwMC1ceDIwIic8PiVcXF5ge3x9XXwlWzAtOWEtZl17Mn0pfFx7WysjLi87PyY9LCFAfF0/KD86W2EtejAtOV9dfCVbMC05YS1mXXsyfSkrKD86OlsxLTldWzAtOV17MCwzfXxcKik/KD86LCg/OlthLXowLTlfXXwlWzAtOWEtZl17Mn0pKyg/OjpbMS05XVswLTldezAsM318XCopPykqXH0pKiQvaSwKICAgICAgLy8gRm9yIHRoZSBzb3VyY2U6IGh0dHBzOi8vZ2lzdC5naXRodWIuY29tL2RwZXJpbmkvNzI5Mjk0CiAgICAgIC8vIEZvciB0ZXN0IGNhc2VzOiBodHRwczovL21hdGhpYXNieW5lbnMuYmUvZGVtby91cmwtcmVnZXgKICAgICAgdXJsOiAvXig/Omh0dHBzP3xmdHApOlwvXC8oPzpcUysoPzo6XFMqKT9AKT8oPzooPyEoPzoxMHwxMjcpKD86XC5cZHsxLDN9KXszfSkoPyEoPzoxNjlcLjI1NHwxOTJcLjE2OCkoPzpcLlxkezEsM30pezJ9KSg/ITE3MlwuKD86MVs2LTldfDJcZHwzWzAtMV0pKD86XC5cZHsxLDN9KXsyfSkoPzpbMS05XVxkP3wxXGRcZHwyWzAxXVxkfDIyWzAtM10pKD86XC4oPzoxP1xkezEsMn18MlswLTRdXGR8MjVbMC01XSkpezJ9KD86XC4oPzpbMS05XVxkP3wxXGRcZHwyWzAtNF1cZHwyNVswLTRdKSl8KD86KD86W2EtejAtOVx1ezAwYTF9LVx1e2ZmZmZ9XSstKSpbYS16MC05XHV7MDBhMX0tXHV7ZmZmZn1dKykoPzpcLig/OlthLXowLTlcdXswMGExfS1cdXtmZmZmfV0rLSkqW2EtejAtOVx1ezAwYTF9LVx1e2ZmZmZ9XSspKig/OlwuKD86W2Etelx1ezAwYTF9LVx1e2ZmZmZ9XXsyLH0pKSkoPzo6XGR7Miw1fSk/KD86XC9bXlxzXSopPyQvaXUsCiAgICAgIGVtYWlsOiAvXlthLXowLTkhIyQlJicqKy89P15fYHt8fX4tXSsoPzpcLlthLXowLTkhIyQlJicqKy89P15fYHt8fX4tXSspKkAoPzpbYS16MC05XSg/OlthLXowLTktXSpbYS16MC05XSk/XC4pK1thLXowLTldKD86W2EtejAtOS1dKlthLXowLTldKT8kL2ksCiAgICAgIGhvc3RuYW1lOiAvXig/PS57MSwyNTN9XC4/JClbYS16MC05XSg/OlthLXowLTktXXswLDYxfVthLXowLTldKT8oPzpcLlthLXowLTldKD86Wy0wLTlhLXpdezAsNjF9WzAtOWEtel0pPykqXC4/JC9pLAogICAgICAvLyBvcHRpbWl6ZWQgaHR0cHM6Ly93d3cuc2FmYXJpYm9va3NvbmxpbmUuY29tL2xpYnJhcnkvdmlldy9yZWd1bGFyLWV4cHJlc3Npb25zLWNvb2tib29rLzk3ODA1OTY4MDI4MzcvY2gwN3MxNi5odG1sCiAgICAgIGlwdjQ6IC9eKD86KD86MjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZClcLil7M30oPzoyNVswLTVdfDJbMC00XVxkfDFcZFxkfFsxLTldP1xkKSQvLAogICAgICBpcHY2OiAvXigoKFswLTlhLWZdezEsNH06KXs3fShbMC05YS1mXXsxLDR9fDopKXwoKFswLTlhLWZdezEsNH06KXs2fSg6WzAtOWEtZl17MSw0fXwoKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSl8OikpfCgoWzAtOWEtZl17MSw0fTopezV9KCgoOlswLTlhLWZdezEsNH0pezEsMn0pfDooKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSl8OikpfCgoWzAtOWEtZl17MSw0fTopezR9KCgoOlswLTlhLWZdezEsNH0pezEsM30pfCgoOlswLTlhLWZdezEsNH0pPzooKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSkpfDopKXwoKFswLTlhLWZdezEsNH06KXszfSgoKDpbMC05YS1mXXsxLDR9KXsxLDR9KXwoKDpbMC05YS1mXXsxLDR9KXswLDJ9OigoMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkoXC4oMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkpezN9KSl8OikpfCgoWzAtOWEtZl17MSw0fTopezJ9KCgoOlswLTlhLWZdezEsNH0pezEsNX0pfCgoOlswLTlhLWZdezEsNH0pezAsM306KCgyNVswLTVdfDJbMC00XVxkfDFcZFxkfFsxLTldP1xkKShcLigyNVswLTVdfDJbMC00XVxkfDFcZFxkfFsxLTldP1xkKSl7M30pKXw6KSl8KChbMC05YS1mXXsxLDR9Oil7MX0oKCg6WzAtOWEtZl17MSw0fSl7MSw2fSl8KCg6WzAtOWEtZl17MSw0fSl7MCw0fTooKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKFwuKDI1WzAtNV18MlswLTRdXGR8MVxkXGR8WzEtOV0/XGQpKXszfSkpfDopKXwoOigoKDpbMC05YS1mXXsxLDR9KXsxLDd9KXwoKDpbMC05YS1mXXsxLDR9KXswLDV9OigoMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkoXC4oMjVbMC01XXwyWzAtNF1cZHwxXGRcZHxbMS05XT9cZCkpezN9KSl8OikpKSQvaSwKICAgICAgcmVnZXgsCiAgICAgIC8vIHV1aWQ6IGh0dHA6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzQxMjIKICAgICAgdXVpZDogL14oPzp1cm46dXVpZDopP1swLTlhLWZdezh9LSg/OlswLTlhLWZdezR9LSl7M31bMC05YS1mXXsxMn0kL2ksCiAgICAgIC8vIEpTT04tcG9pbnRlcjogaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzY5MDEKICAgICAgLy8gdXJpIGZyYWdtZW50OiBodHRwczovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjMzk4NiNhcHBlbmRpeC1BCiAgICAgICJqc29uLXBvaW50ZXIiOiAvXig/OlwvKD86W15+L118fjB8fjEpKikqJC8sCiAgICAgICJqc29uLXBvaW50ZXItdXJpLWZyYWdtZW50IjogL14jKD86XC8oPzpbYS16MC05X1wtLiEkJicoKSorLDs6PUBdfCVbMC05YS1mXXsyfXx+MHx+MSkqKSokL2ksCiAgICAgIC8vIHJlbGF0aXZlIEpTT04tcG9pbnRlcjogaHR0cDovL3Rvb2xzLmlldGYub3JnL2h0bWwvZHJhZnQtbHVmZi1yZWxhdGl2ZS1qc29uLXBvaW50ZXItMDAKICAgICAgInJlbGF0aXZlLWpzb24tcG9pbnRlciI6IC9eKD86MHxbMS05XVswLTldKikoPzojfCg/OlwvKD86W15+L118fjB8fjEpKikqKSQvLAogICAgICAvLyB0aGUgZm9sbG93aW5nIGZvcm1hdHMgYXJlIHVzZWQgYnkgdGhlIG9wZW5hcGkgc3BlY2lmaWNhdGlvbjogaHR0cHM6Ly9zcGVjLm9wZW5hcGlzLm9yZy9vYXMvdjMuMC4wI2RhdGEtdHlwZXMKICAgICAgLy8gYnl0ZTogaHR0cHM6Ly9naXRodWIuY29tL21pZ3VlbG1vdGEvaXMtYmFzZTY0CiAgICAgIGJ5dGUsCiAgICAgIC8vIHNpZ25lZCAzMiBiaXQgaW50ZWdlcgogICAgICBpbnQzMjogeyB0eXBlOiAibnVtYmVyIiwgdmFsaWRhdGU6IHZhbGlkYXRlSW50MzIgfSwKICAgICAgLy8gc2lnbmVkIDY0IGJpdCBpbnRlZ2VyCiAgICAgIGludDY0OiB7IHR5cGU6ICJudW1iZXIiLCB2YWxpZGF0ZTogdmFsaWRhdGVJbnQ2NCB9LAogICAgICAvLyBDLXR5cGUgZmxvYXQKICAgICAgZmxvYXQ6IHsgdHlwZTogIm51bWJlciIsIHZhbGlkYXRlOiB2YWxpZGF0ZU51bWJlciB9LAogICAgICAvLyBDLXR5cGUgZG91YmxlCiAgICAgIGRvdWJsZTogeyB0eXBlOiAibnVtYmVyIiwgdmFsaWRhdGU6IHZhbGlkYXRlTnVtYmVyIH0sCiAgICAgIC8vIGhpbnQgdG8gdGhlIFVJIHRvIGhpZGUgaW5wdXQgc3RyaW5ncwogICAgICBwYXNzd29yZDogdHJ1ZSwKICAgICAgLy8gdW5jaGVja2VkIHN0cmluZyBwYXlsb2FkCiAgICAgIGJpbmFyeTogdHJ1ZQogICAgfTsKICAgIGV4cG9ydHMyLmZhc3RGb3JtYXRzID0gewogICAgICAuLi5leHBvcnRzMi5mdWxsRm9ybWF0cywKICAgICAgZGF0ZTogZm10RGVmKC9eXGRcZFxkXGQtWzAtMV1cZC1bMC0zXVxkJC8sIGNvbXBhcmVEYXRlKSwKICAgICAgdGltZTogZm10RGVmKC9eKD86WzAtMl1cZDpbMC01XVxkOlswLTVdXGR8MjM6NTk6NjApKD86XC5cZCspPyg/Onp8WystXVxkXGQoPzo6P1xkXGQpPykkL2ksIGNvbXBhcmVUaW1lKSwKICAgICAgImRhdGUtdGltZSI6IGZtdERlZigvXlxkXGRcZFxkLVswLTFdXGQtWzAtM11cZHQoPzpbMC0yXVxkOlswLTVdXGQ6WzAtNV1cZHwyMzo1OTo2MCkoPzpcLlxkKyk/KD86enxbKy1dXGRcZCg/Ojo/XGRcZCk/KSQvaSwgY29tcGFyZURhdGVUaW1lKSwKICAgICAgImlzby10aW1lIjogZm10RGVmKC9eKD86WzAtMl1cZDpbMC01XVxkOlswLTVdXGR8MjM6NTk6NjApKD86XC5cZCspPyg/Onp8WystXVxkXGQoPzo6P1xkXGQpPyk/JC9pLCBjb21wYXJlSXNvVGltZSksCiAgICAgICJpc28tZGF0ZS10aW1lIjogZm10RGVmKC9eXGRcZFxkXGQtWzAtMV1cZC1bMC0zXVxkW3Rcc10oPzpbMC0yXVxkOlswLTVdXGQ6WzAtNV1cZHwyMzo1OTo2MCkoPzpcLlxkKyk/KD86enxbKy1dXGRcZCg/Ojo/XGRcZCk/KT8kL2ksIGNvbXBhcmVJc29EYXRlVGltZSksCiAgICAgIC8vIHVyaTogaHR0cHM6Ly9naXRodWIuY29tL21hZmludG9zaC9pcy1teS1qc29uLXZhbGlkL2Jsb2IvbWFzdGVyL2Zvcm1hdHMuanMKICAgICAgdXJpOiAvXig/OlthLXpdW2EtejAtOStcLS5dKjopKD86XC8/XC8pP1teXHNdKiQvaSwKICAgICAgInVyaS1yZWZlcmVuY2UiOiAvXig/Oig/OlthLXpdW2EtejAtOStcLS5dKjopP1wvP1wvKT8oPzpbXlxcXHMjXVteXHMjXSopPyg/OiNbXlxcXHNdKik/JC9pLAogICAgICAvLyBlbWFpbCAoc291cmNlcyBmcm9tIGpzZW4gdmFsaWRhdG9yKToKICAgICAgLy8gaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8yMDEzMjMvdXNpbmctYS1yZWd1bGFyLWV4cHJlc3Npb24tdG8tdmFsaWRhdGUtYW4tZW1haWwtYWRkcmVzcyNhbnN3ZXItODgyOTM2MwogICAgICAvLyBodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNS9mb3Jtcy5odG1sI3ZhbGlkLWUtbWFpbC1hZGRyZXNzIChzZWFyY2ggZm9yICd3aWxmdWwgdmlvbGF0aW9uJykKICAgICAgZW1haWw6IC9eW2EtejAtOS4hIyQlJicqKy89P15fYHt8fX4tXStAW2EtejAtOV0oPzpbYS16MC05LV17MCw2MX1bYS16MC05XSk/KD86XC5bYS16MC05XSg/OlthLXowLTktXXswLDYxfVthLXowLTldKT8pKiQvaQogICAgfTsKICAgIGV4cG9ydHMyLmZvcm1hdE5hbWVzID0gT2JqZWN0LmtleXMoZXhwb3J0czIuZnVsbEZvcm1hdHMpOwogICAgZnVuY3Rpb24gaXNMZWFwWWVhcih5ZWFyKSB7CiAgICAgIHJldHVybiB5ZWFyICUgNCA9PT0gMCAmJiAoeWVhciAlIDEwMCAhPT0gMCB8fCB5ZWFyICUgNDAwID09PSAwKTsKICAgIH0KICAgIHZhciBEQVRFID0gL14oXGRcZFxkXGQpLShcZFxkKS0oXGRcZCkkLzsKICAgIHZhciBEQVlTID0gWzAsIDMxLCAyOCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMSwgMzAsIDMxLCAzMCwgMzFdOwogICAgZnVuY3Rpb24gZGF0ZShzdHIpIHsKICAgICAgY29uc3QgbWF0Y2hlcyA9IERBVEUuZXhlYyhzdHIpOwogICAgICBpZiAoIW1hdGNoZXMpCiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICBjb25zdCB5ZWFyID0gK21hdGNoZXNbMV07CiAgICAgIGNvbnN0IG1vbnRoID0gK21hdGNoZXNbMl07CiAgICAgIGNvbnN0IGRheSA9ICttYXRjaGVzWzNdOwogICAgICByZXR1cm4gbW9udGggPj0gMSAmJiBtb250aCA8PSAxMiAmJiBkYXkgPj0gMSAmJiBkYXkgPD0gKG1vbnRoID09PSAyICYmIGlzTGVhcFllYXIoeWVhcikgPyAyOSA6IERBWVNbbW9udGhdKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbXBhcmVEYXRlKGQxLCBkMikgewogICAgICBpZiAoIShkMSAmJiBkMikpCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgaWYgKGQxID4gZDIpCiAgICAgICAgcmV0dXJuIDE7CiAgICAgIGlmIChkMSA8IGQyKQogICAgICAgIHJldHVybiAtMTsKICAgICAgcmV0dXJuIDA7CiAgICB9CiAgICB2YXIgVElNRSA9IC9eKFxkXGQpOihcZFxkKTooXGRcZCg/OlwuXGQrKT8pKHp8KFsrLV0pKFxkXGQpKD86Oj8oXGRcZCkpPyk/JC9pOwogICAgZnVuY3Rpb24gZ2V0VGltZShzdHJpY3RUaW1lWm9uZSkgewogICAgICByZXR1cm4gZnVuY3Rpb24gdGltZShzdHIpIHsKICAgICAgICBjb25zdCBtYXRjaGVzID0gVElNRS5leGVjKHN0cik7CiAgICAgICAgaWYgKCFtYXRjaGVzKQogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIGNvbnN0IGhyID0gK21hdGNoZXNbMV07CiAgICAgICAgY29uc3QgbWluID0gK21hdGNoZXNbMl07CiAgICAgICAgY29uc3Qgc2VjID0gK21hdGNoZXNbM107CiAgICAgICAgY29uc3QgdHogPSBtYXRjaGVzWzRdOwogICAgICAgIGNvbnN0IHR6U2lnbiA9IG1hdGNoZXNbNV0gPT09ICItIiA/IC0xIDogMTsKICAgICAgICBjb25zdCB0ekggPSArKG1hdGNoZXNbNl0gfHwgMCk7CiAgICAgICAgY29uc3QgdHpNID0gKyhtYXRjaGVzWzddIHx8IDApOwogICAgICAgIGlmICh0ekggPiAyMyB8fCB0ek0gPiA1OSB8fCBzdHJpY3RUaW1lWm9uZSAmJiAhdHopCiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgaWYgKGhyIDw9IDIzICYmIG1pbiA8PSA1OSAmJiBzZWMgPCA2MCkKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIGNvbnN0IHV0Y01pbiA9IG1pbiAtIHR6TSAqIHR6U2lnbjsKICAgICAgICBjb25zdCB1dGNIciA9IGhyIC0gdHpIICogdHpTaWduIC0gKHV0Y01pbiA8IDAgPyAxIDogMCk7CiAgICAgICAgcmV0dXJuICh1dGNIciA9PT0gMjMgfHwgdXRjSHIgPT09IC0xKSAmJiAodXRjTWluID09PSA1OSB8fCB1dGNNaW4gPT09IC0xKSAmJiBzZWMgPCA2MTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbXBhcmVUaW1lKHMxLCBzMikgewogICAgICBpZiAoIShzMSAmJiBzMikpCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgY29uc3QgdDEgPSAoLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCIyMDIwLTAxLTAxVCIgKyBzMSkpLnZhbHVlT2YoKTsKICAgICAgY29uc3QgdDIgPSAoLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCIyMDIwLTAxLTAxVCIgKyBzMikpLnZhbHVlT2YoKTsKICAgICAgaWYgKCEodDEgJiYgdDIpKQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIHJldHVybiB0MSAtIHQyOwogICAgfQogICAgZnVuY3Rpb24gY29tcGFyZUlzb1RpbWUodDEsIHQyKSB7CiAgICAgIGlmICghKHQxICYmIHQyKSkKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICBjb25zdCBhMSA9IFRJTUUuZXhlYyh0MSk7CiAgICAgIGNvbnN0IGEyID0gVElNRS5leGVjKHQyKTsKICAgICAgaWYgKCEoYTEgJiYgYTIpKQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIHQxID0gYTFbMV0gKyBhMVsyXSArIGExWzNdOwogICAgICB0MiA9IGEyWzFdICsgYTJbMl0gKyBhMlszXTsKICAgICAgaWYgKHQxID4gdDIpCiAgICAgICAgcmV0dXJuIDE7CiAgICAgIGlmICh0MSA8IHQyKQogICAgICAgIHJldHVybiAtMTsKICAgICAgcmV0dXJuIDA7CiAgICB9CiAgICB2YXIgREFURV9USU1FX1NFUEFSQVRPUiA9IC90fFxzL2k7CiAgICBmdW5jdGlvbiBnZXREYXRlVGltZShzdHJpY3RUaW1lWm9uZSkgewogICAgICBjb25zdCB0aW1lID0gZ2V0VGltZShzdHJpY3RUaW1lWm9uZSk7CiAgICAgIHJldHVybiBmdW5jdGlvbiBkYXRlX3RpbWUoc3RyKSB7CiAgICAgICAgY29uc3QgZGF0ZVRpbWUgPSBzdHIuc3BsaXQoREFURV9USU1FX1NFUEFSQVRPUik7CiAgICAgICAgcmV0dXJuIGRhdGVUaW1lLmxlbmd0aCA9PT0gMiAmJiBkYXRlKGRhdGVUaW1lWzBdKSAmJiB0aW1lKGRhdGVUaW1lWzFdKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbXBhcmVEYXRlVGltZShkdDEsIGR0MikgewogICAgICBpZiAoIShkdDEgJiYgZHQyKSkKICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICBjb25zdCBkMSA9IG5ldyBEYXRlKGR0MSkudmFsdWVPZigpOwogICAgICBjb25zdCBkMiA9IG5ldyBEYXRlKGR0MikudmFsdWVPZigpOwogICAgICBpZiAoIShkMSAmJiBkMikpCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgcmV0dXJuIGQxIC0gZDI7CiAgICB9CiAgICBmdW5jdGlvbiBjb21wYXJlSXNvRGF0ZVRpbWUoZHQxLCBkdDIpIHsKICAgICAgaWYgKCEoZHQxICYmIGR0MikpCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgY29uc3QgW2QxLCB0MV0gPSBkdDEuc3BsaXQoREFURV9USU1FX1NFUEFSQVRPUik7CiAgICAgIGNvbnN0IFtkMiwgdDJdID0gZHQyLnNwbGl0KERBVEVfVElNRV9TRVBBUkFUT1IpOwogICAgICBjb25zdCByZXMgPSBjb21wYXJlRGF0ZShkMSwgZDIpOwogICAgICBpZiAocmVzID09PSB2b2lkIDApCiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgcmV0dXJuIHJlcyB8fCBjb21wYXJlVGltZSh0MSwgdDIpOwogICAgfQogICAgdmFyIE5PVF9VUklfRlJBR01FTlQgPSAvXC98Oi87CiAgICB2YXIgVVJJID0gL14oPzpbYS16XVthLXowLTkrXC0uXSo6KSg/OlwvP1wvKD86KD86W2EtejAtOVwtLl9+ISQmJygpKissOz06XXwlWzAtOWEtZl17Mn0pKkApPyg/OlxbKD86KD86KD86KD86WzAtOWEtZl17MSw0fTopezZ9fDo6KD86WzAtOWEtZl17MSw0fTopezV9fCg/OlswLTlhLWZdezEsNH0pPzo6KD86WzAtOWEtZl17MSw0fTopezR9fCg/Oig/OlswLTlhLWZdezEsNH06KXswLDF9WzAtOWEtZl17MSw0fSk/OjooPzpbMC05YS1mXXsxLDR9Oil7M318KD86KD86WzAtOWEtZl17MSw0fTopezAsMn1bMC05YS1mXXsxLDR9KT86Oig/OlswLTlhLWZdezEsNH06KXsyfXwoPzooPzpbMC05YS1mXXsxLDR9Oil7MCwzfVswLTlhLWZdezEsNH0pPzo6WzAtOWEtZl17MSw0fTp8KD86KD86WzAtOWEtZl17MSw0fTopezAsNH1bMC05YS1mXXsxLDR9KT86OikoPzpbMC05YS1mXXsxLDR9OlswLTlhLWZdezEsNH18KD86KD86MjVbMC01XXwyWzAtNF1cZHxbMDFdP1xkXGQ/KVwuKXszfSg/OjI1WzAtNV18MlswLTRdXGR8WzAxXT9cZFxkPykpfCg/Oig/OlswLTlhLWZdezEsNH06KXswLDV9WzAtOWEtZl17MSw0fSk/OjpbMC05YS1mXXsxLDR9fCg/Oig/OlswLTlhLWZdezEsNH06KXswLDZ9WzAtOWEtZl17MSw0fSk/OjopfFtWdl1bMC05YS1mXStcLlthLXowLTlcLS5ffiEkJicoKSorLDs9Ol0rKVxdfCg/Oig/OjI1WzAtNV18MlswLTRdXGR8WzAxXT9cZFxkPylcLil7M30oPzoyNVswLTVdfDJbMC00XVxkfFswMV0/XGRcZD8pfCg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9XXwlWzAtOWEtZl17Mn0pKikoPzo6XGQqKT8oPzpcLyg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkqKSp8XC8oPzooPzpbYS16MC05XC0uX34hJCYnKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKyg/OlwvKD86W2EtejAtOVwtLl9+ISQmJygpKissOz06QF18JVswLTlhLWZdezJ9KSopKik/fCg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9OkBdfCVbMC05YS1mXXsyfSkrKD86XC8oPzpbYS16MC05XC0uX34hJCYnKCkqKyw7PTpAXXwlWzAtOWEtZl17Mn0pKikqKSg/Olw/KD86W2EtejAtOVwtLl9+ISQmJygpKissOz06QC8/XXwlWzAtOWEtZl17Mn0pKik/KD86Iyg/OlthLXowLTlcLS5ffiEkJicoKSorLDs9OkAvP118JVswLTlhLWZdezJ9KSopPyQvaTsKICAgIGZ1bmN0aW9uIHVyaShzdHIpIHsKICAgICAgcmV0dXJuIE5PVF9VUklfRlJBR01FTlQudGVzdChzdHIpICYmIFVSSS50ZXN0KHN0cik7CiAgICB9CiAgICB2YXIgQllURSA9IC9eKD86W0EtWmEtejAtOSsvXXs0fSkqKD86W0EtWmEtejAtOSsvXXsyfT09fFtBLVphLXowLTkrL117M309KT8kL2dtOwogICAgZnVuY3Rpb24gYnl0ZShzdHIpIHsKICAgICAgQllURS5sYXN0SW5kZXggPSAwOwogICAgICByZXR1cm4gQllURS50ZXN0KHN0cik7CiAgICB9CiAgICB2YXIgTUlOX0lOVDMyID0gLSgyICoqIDMxKTsKICAgIHZhciBNQVhfSU5UMzIgPSAyICoqIDMxIC0gMTsKICAgIGZ1bmN0aW9uIHZhbGlkYXRlSW50MzIodmFsdWUpIHsKICAgICAgcmV0dXJuIE51bWJlci5pc0ludGVnZXIodmFsdWUpICYmIHZhbHVlIDw9IE1BWF9JTlQzMiAmJiB2YWx1ZSA+PSBNSU5fSU5UMzI7CiAgICB9CiAgICBmdW5jdGlvbiB2YWxpZGF0ZUludDY0KHZhbHVlKSB7CiAgICAgIHJldHVybiBOdW1iZXIuaXNJbnRlZ2VyKHZhbHVlKTsKICAgIH0KICAgIGZ1bmN0aW9uIHZhbGlkYXRlTnVtYmVyKCkgewogICAgICByZXR1cm4gdHJ1ZTsKICAgIH0KICAgIHZhciBaX0FOQ0hPUiA9IC9bXlxcXVxcWi87CiAgICBmdW5jdGlvbiByZWdleChzdHIpIHsKICAgICAgaWYgKFpfQU5DSE9SLnRlc3Qoc3RyKSkKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIHRyeSB7CiAgICAgICAgbmV3IFJlZ0V4cChzdHIpOwogICAgICAgIHJldHVybiB0cnVlOwogICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL2Fqdi1mb3JtYXRzLXZpcnR1YWwtMGRmYjIxYWI0ZS8yLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1mb3JtYXRzLW5wbS0zLjAuMS0yNjYyY2Y1YjEyLTEwLnppcC9ub2RlX21vZHVsZXMvYWp2LWZvcm1hdHMvZGlzdC9saW1pdC5qcwp2YXIgcmVxdWlyZV9saW1pdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9hanYtZm9ybWF0cy12aXJ0dWFsLTBkZmIyMWFiNGUvMi8ueWFybi9iZXJyeS9jYWNoZS9hanYtZm9ybWF0cy1ucG0tMy4wLjEtMjY2MmNmNWIxMi0xMC56aXAvbm9kZV9tb2R1bGVzL2Fqdi1mb3JtYXRzL2Rpc3QvbGltaXQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZvcm1hdExpbWl0RGVmaW5pdGlvbiA9IHZvaWQgMDsKICAgIHZhciBhanZfMSA9IHJlcXVpcmVfYWp2KCk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgb3BzID0gY29kZWdlbl8xLm9wZXJhdG9yczsKICAgIHZhciBLV0RzID0gewogICAgICBmb3JtYXRNYXhpbXVtOiB7IG9rU3RyOiAiPD0iLCBvazogb3BzLkxURSwgZmFpbDogb3BzLkdUIH0sCiAgICAgIGZvcm1hdE1pbmltdW06IHsgb2tTdHI6ICI+PSIsIG9rOiBvcHMuR1RFLCBmYWlsOiBvcHMuTFQgfSwKICAgICAgZm9ybWF0RXhjbHVzaXZlTWF4aW11bTogeyBva1N0cjogIjwiLCBvazogb3BzLkxULCBmYWlsOiBvcHMuR1RFIH0sCiAgICAgIGZvcm1hdEV4Y2x1c2l2ZU1pbmltdW06IHsgb2tTdHI6ICI+Iiwgb2s6IG9wcy5HVCwgZmFpbDogb3BzLkxURSB9CiAgICB9OwogICAgdmFyIGVycm9yID0gewogICAgICBtZXNzYWdlOiAoeyBrZXl3b3JkLCBzY2hlbWFDb2RlIH0pID0+ICgwLCBjb2RlZ2VuXzEuc3RyKWBzaG91bGQgYmUgJHtLV0RzW2tleXdvcmRdLm9rU3RyfSAke3NjaGVtYUNvZGV9YCwKICAgICAgcGFyYW1zOiAoeyBrZXl3b3JkLCBzY2hlbWFDb2RlIH0pID0+ICgwLCBjb2RlZ2VuXzEuXylge2NvbXBhcmlzb246ICR7S1dEc1trZXl3b3JkXS5va1N0cn0sIGxpbWl0OiAke3NjaGVtYUNvZGV9fWAKICAgIH07CiAgICBleHBvcnRzMi5mb3JtYXRMaW1pdERlZmluaXRpb24gPSB7CiAgICAgIGtleXdvcmQ6IE9iamVjdC5rZXlzKEtXRHMpLAogICAgICB0eXBlOiAic3RyaW5nIiwKICAgICAgc2NoZW1hVHlwZTogInN0cmluZyIsCiAgICAgICRkYXRhOiB0cnVlLAogICAgICBlcnJvciwKICAgICAgY29kZShjeHQpIHsKICAgICAgICBjb25zdCB7IGdlbiwgZGF0YSwgc2NoZW1hQ29kZSwga2V5d29yZCwgaXQgfSA9IGN4dDsKICAgICAgICBjb25zdCB7IG9wdHMsIHNlbGY6IHNlbGYyIH0gPSBpdDsKICAgICAgICBpZiAoIW9wdHMudmFsaWRhdGVGb3JtYXRzKQogICAgICAgICAgcmV0dXJuOwogICAgICAgIGNvbnN0IGZDeHQgPSBuZXcgYWp2XzEuS2V5d29yZEN4dChpdCwgc2VsZjIuUlVMRVMuYWxsLmZvcm1hdC5kZWZpbml0aW9uLCAiZm9ybWF0Iik7CiAgICAgICAgaWYgKGZDeHQuJGRhdGEpCiAgICAgICAgICB2YWxpZGF0ZSREYXRhRm9ybWF0KCk7CiAgICAgICAgZWxzZQogICAgICAgICAgdmFsaWRhdGVGb3JtYXQoKTsKICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZSREYXRhRm9ybWF0KCkgewogICAgICAgICAgY29uc3QgZm10cyA9IGdlbi5zY29wZVZhbHVlKCJmb3JtYXRzIiwgewogICAgICAgICAgICByZWY6IHNlbGYyLmZvcm1hdHMsCiAgICAgICAgICAgIGNvZGU6IG9wdHMuY29kZS5mb3JtYXRzCiAgICAgICAgICB9KTsKICAgICAgICAgIGNvbnN0IGZtdCA9IGdlbi5jb25zdCgiZm10IiwgKDAsIGNvZGVnZW5fMS5fKWAke2ZtdHN9WyR7ZkN4dC5zY2hlbWFDb2RlfV1gKTsKICAgICAgICAgIGN4dC5mYWlsJGRhdGEoKDAsIGNvZGVnZW5fMS5vcikoKDAsIGNvZGVnZW5fMS5fKWB0eXBlb2YgJHtmbXR9ICE9ICJvYmplY3QiYCwgKDAsIGNvZGVnZW5fMS5fKWAke2ZtdH0gaW5zdGFuY2VvZiBSZWdFeHBgLCAoMCwgY29kZWdlbl8xLl8pYHR5cGVvZiAke2ZtdH0uY29tcGFyZSAhPSAiZnVuY3Rpb24iYCwgY29tcGFyZUNvZGUoZm10KSkpOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZUZvcm1hdCgpIHsKICAgICAgICAgIGNvbnN0IGZvcm1hdCA9IGZDeHQuc2NoZW1hOwogICAgICAgICAgY29uc3QgZm10RGVmID0gc2VsZjIuZm9ybWF0c1tmb3JtYXRdOwogICAgICAgICAgaWYgKCFmbXREZWYgfHwgZm10RGVmID09PSB0cnVlKQogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICBpZiAodHlwZW9mIGZtdERlZiAhPSAib2JqZWN0IiB8fCBmbXREZWYgaW5zdGFuY2VvZiBSZWdFeHAgfHwgdHlwZW9mIGZtdERlZi5jb21wYXJlICE9ICJmdW5jdGlvbiIpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGAiJHtrZXl3b3JkfSI6IGZvcm1hdCAiJHtmb3JtYXR9IiBkb2VzIG5vdCBkZWZpbmUgImNvbXBhcmUiIGZ1bmN0aW9uYCk7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBmbXQgPSBnZW4uc2NvcGVWYWx1ZSgiZm9ybWF0cyIsIHsKICAgICAgICAgICAga2V5OiBmb3JtYXQsCiAgICAgICAgICAgIHJlZjogZm10RGVmLAogICAgICAgICAgICBjb2RlOiBvcHRzLmNvZGUuZm9ybWF0cyA/ICgwLCBjb2RlZ2VuXzEuXylgJHtvcHRzLmNvZGUuZm9ybWF0c30keygwLCBjb2RlZ2VuXzEuZ2V0UHJvcGVydHkpKGZvcm1hdCl9YCA6IHZvaWQgMAogICAgICAgICAgfSk7CiAgICAgICAgICBjeHQuZmFpbCRkYXRhKGNvbXBhcmVDb2RlKGZtdCkpOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBjb21wYXJlQ29kZShmbXQpIHsKICAgICAgICAgIHJldHVybiAoMCwgY29kZWdlbl8xLl8pYCR7Zm10fS5jb21wYXJlKCR7ZGF0YX0sICR7c2NoZW1hQ29kZX0pICR7S1dEc1trZXl3b3JkXS5mYWlsfSAwYDsKICAgICAgICB9CiAgICAgIH0sCiAgICAgIGRlcGVuZGVuY2llczogWyJmb3JtYXQiXQogICAgfTsKICAgIHZhciBmb3JtYXRMaW1pdFBsdWdpbiA9IChhanYpID0+IHsKICAgICAgYWp2LmFkZEtleXdvcmQoZXhwb3J0czIuZm9ybWF0TGltaXREZWZpbml0aW9uKTsKICAgICAgcmV0dXJuIGFqdjsKICAgIH07CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZm9ybWF0TGltaXRQbHVnaW47CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL2Fqdi1mb3JtYXRzLXZpcnR1YWwtMGRmYjIxYWI0ZS8yLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1mb3JtYXRzLW5wbS0zLjAuMS0yNjYyY2Y1YjEyLTEwLnppcC9ub2RlX21vZHVsZXMvYWp2LWZvcm1hdHMvZGlzdC9pbmRleC5qcwp2YXIgcmVxdWlyZV9kaXN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL2Fqdi1mb3JtYXRzLXZpcnR1YWwtMGRmYjIxYWI0ZS8yLy55YXJuL2JlcnJ5L2NhY2hlL2Fqdi1mb3JtYXRzLW5wbS0zLjAuMS0yNjYyY2Y1YjEyLTEwLnppcC9ub2RlX21vZHVsZXMvYWp2LWZvcm1hdHMvZGlzdC9pbmRleC5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgdmFyIGZvcm1hdHNfMSA9IHJlcXVpcmVfZm9ybWF0cygpOwogICAgdmFyIGxpbWl0XzEgPSByZXF1aXJlX2xpbWl0KCk7CiAgICB2YXIgY29kZWdlbl8xID0gcmVxdWlyZV9jb2RlZ2VuKCk7CiAgICB2YXIgZnVsbE5hbWUgPSBuZXcgY29kZWdlbl8xLk5hbWUoImZ1bGxGb3JtYXRzIik7CiAgICB2YXIgZmFzdE5hbWUgPSBuZXcgY29kZWdlbl8xLk5hbWUoImZhc3RGb3JtYXRzIik7CiAgICB2YXIgZm9ybWF0c1BsdWdpbiA9IChhanYsIG9wdHMgPSB7IGtleXdvcmRzOiB0cnVlIH0pID0+IHsKICAgICAgaWYgKEFycmF5LmlzQXJyYXkob3B0cykpIHsKICAgICAgICBhZGRGb3JtYXRzKGFqdiwgb3B0cywgZm9ybWF0c18xLmZ1bGxGb3JtYXRzLCBmdWxsTmFtZSk7CiAgICAgICAgcmV0dXJuIGFqdjsKICAgICAgfQogICAgICBjb25zdCBbZm9ybWF0cywgZXhwb3J0TmFtZV0gPSBvcHRzLm1vZGUgPT09ICJmYXN0IiA/IFtmb3JtYXRzXzEuZmFzdEZvcm1hdHMsIGZhc3ROYW1lXSA6IFtmb3JtYXRzXzEuZnVsbEZvcm1hdHMsIGZ1bGxOYW1lXTsKICAgICAgY29uc3QgbGlzdCA9IG9wdHMuZm9ybWF0cyB8fCBmb3JtYXRzXzEuZm9ybWF0TmFtZXM7CiAgICAgIGFkZEZvcm1hdHMoYWp2LCBsaXN0LCBmb3JtYXRzLCBleHBvcnROYW1lKTsKICAgICAgaWYgKG9wdHMua2V5d29yZHMpCiAgICAgICAgKDAsIGxpbWl0XzEuZGVmYXVsdCkoYWp2KTsKICAgICAgcmV0dXJuIGFqdjsKICAgIH07CiAgICBmb3JtYXRzUGx1Z2luLmdldCA9IChuYW1lLCBtb2RlID0gImZ1bGwiKSA9PiB7CiAgICAgIGNvbnN0IGZvcm1hdHMgPSBtb2RlID09PSAiZmFzdCIgPyBmb3JtYXRzXzEuZmFzdEZvcm1hdHMgOiBmb3JtYXRzXzEuZnVsbEZvcm1hdHM7CiAgICAgIGNvbnN0IGYgPSBmb3JtYXRzW25hbWVdOwogICAgICBpZiAoIWYpCiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIGZvcm1hdCAiJHtuYW1lfSJgKTsKICAgICAgcmV0dXJuIGY7CiAgICB9OwogICAgZnVuY3Rpb24gYWRkRm9ybWF0cyhhanYsIGxpc3QsIGZzLCBleHBvcnROYW1lKSB7CiAgICAgIHZhciBfYTsKICAgICAgdmFyIF9iOwogICAgICAoX2EgPSAoX2IgPSBhanYub3B0cy5jb2RlKS5mb3JtYXRzKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiBfYi5mb3JtYXRzID0gKDAsIGNvZGVnZW5fMS5fKWByZXF1aXJlKCJhanYtZm9ybWF0cy9kaXN0L2Zvcm1hdHMiKS4ke2V4cG9ydE5hbWV9YDsKICAgICAgZm9yIChjb25zdCBmIG9mIGxpc3QpCiAgICAgICAgYWp2LmFkZEZvcm1hdChmLCBmc1tmXSk7CiAgICB9CiAgICBtb2R1bGUyLmV4cG9ydHMgPSBleHBvcnRzMiA9IGZvcm1hdHNQbHVnaW47CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlZmF1bHQgPSBmb3JtYXRzUGx1Z2luOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzRnVuY3Rpb24uanMKdmFyIHJlcXVpcmVfaXNGdW5jdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzRnVuY3Rpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmlzRnVuY3Rpb24gPSB2b2lkIDA7CiAgICBmdW5jdGlvbiBpc0Z1bmN0aW9uKHZhbHVlKSB7CiAgICAgIHJldHVybiB0eXBlb2YgdmFsdWUgPT09ICJmdW5jdGlvbiI7CiAgICB9CiAgICBleHBvcnRzMi5pc0Z1bmN0aW9uID0gaXNGdW5jdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9jcmVhdGVFcnJvckNsYXNzLmpzCnZhciByZXF1aXJlX2NyZWF0ZUVycm9yQ2xhc3MgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9jcmVhdGVFcnJvckNsYXNzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jcmVhdGVFcnJvckNsYXNzID0gdm9pZCAwOwogICAgZnVuY3Rpb24gY3JlYXRlRXJyb3JDbGFzcyhjcmVhdGVJbXBsKSB7CiAgICAgIHZhciBfc3VwZXIgPSBmdW5jdGlvbihpbnN0YW5jZSkgewogICAgICAgIEVycm9yLmNhbGwoaW5zdGFuY2UpOwogICAgICAgIGluc3RhbmNlLnN0YWNrID0gbmV3IEVycm9yKCkuc3RhY2s7CiAgICAgIH07CiAgICAgIHZhciBjdG9yRnVuYyA9IGNyZWF0ZUltcGwoX3N1cGVyKTsKICAgICAgY3RvckZ1bmMucHJvdG90eXBlID0gT2JqZWN0LmNyZWF0ZShFcnJvci5wcm90b3R5cGUpOwogICAgICBjdG9yRnVuYy5wcm90b3R5cGUuY29uc3RydWN0b3IgPSBjdG9yRnVuYzsKICAgICAgcmV0dXJuIGN0b3JGdW5jOwogICAgfQogICAgZXhwb3J0czIuY3JlYXRlRXJyb3JDbGFzcyA9IGNyZWF0ZUVycm9yQ2xhc3M7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvVW5zdWJzY3JpcHRpb25FcnJvci5qcwp2YXIgcmVxdWlyZV9VbnN1YnNjcmlwdGlvbkVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvVW5zdWJzY3JpcHRpb25FcnJvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVW5zdWJzY3JpcHRpb25FcnJvciA9IHZvaWQgMDsKICAgIHZhciBjcmVhdGVFcnJvckNsYXNzXzEgPSByZXF1aXJlX2NyZWF0ZUVycm9yQ2xhc3MoKTsKICAgIGV4cG9ydHMyLlVuc3Vic2NyaXB0aW9uRXJyb3IgPSBjcmVhdGVFcnJvckNsYXNzXzEuY3JlYXRlRXJyb3JDbGFzcyhmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uIFVuc3Vic2NyaXB0aW9uRXJyb3JJbXBsKGVycm9ycykgewogICAgICAgIF9zdXBlcih0aGlzKTsKICAgICAgICB0aGlzLm1lc3NhZ2UgPSBlcnJvcnMgPyBlcnJvcnMubGVuZ3RoICsgIiBlcnJvcnMgb2NjdXJyZWQgZHVyaW5nIHVuc3Vic2NyaXB0aW9uOlxuIiArIGVycm9ycy5tYXAoZnVuY3Rpb24oZXJyLCBpKSB7CiAgICAgICAgICByZXR1cm4gaSArIDEgKyAiKSAiICsgZXJyLnRvU3RyaW5nKCk7CiAgICAgICAgfSkuam9pbigiXG4gICIpIDogIiI7CiAgICAgICAgdGhpcy5uYW1lID0gIlVuc3Vic2NyaXB0aW9uRXJyb3IiOwogICAgICAgIHRoaXMuZXJyb3JzID0gZXJyb3JzOwogICAgICB9OwogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvYXJyUmVtb3ZlLmpzCnZhciByZXF1aXJlX2FyclJlbW92ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2FyclJlbW92ZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYXJyUmVtb3ZlID0gdm9pZCAwOwogICAgZnVuY3Rpb24gYXJyUmVtb3ZlKGFyciwgaXRlbSkgewogICAgICBpZiAoYXJyKSB7CiAgICAgICAgdmFyIGluZGV4ID0gYXJyLmluZGV4T2YoaXRlbSk7CiAgICAgICAgMCA8PSBpbmRleCAmJiBhcnIuc3BsaWNlKGluZGV4LCAxKTsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuYXJyUmVtb3ZlID0gYXJyUmVtb3ZlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9TdWJzY3JpcHRpb24uanMKdmFyIHJlcXVpcmVfU3Vic2NyaXB0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1N1YnNjcmlwdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXNTdWJzY3JpcHRpb24gPSBleHBvcnRzMi5FTVBUWV9TVUJTQ1JJUFRJT04gPSBleHBvcnRzMi5TdWJzY3JpcHRpb24gPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICB2YXIgVW5zdWJzY3JpcHRpb25FcnJvcl8xID0gcmVxdWlyZV9VbnN1YnNjcmlwdGlvbkVycm9yKCk7CiAgICB2YXIgYXJyUmVtb3ZlXzEgPSByZXF1aXJlX2FyclJlbW92ZSgpOwogICAgdmFyIFN1YnNjcmlwdGlvbiA9IGZ1bmN0aW9uKCkgewogICAgICBmdW5jdGlvbiBTdWJzY3JpcHRpb24yKGluaXRpYWxUZWFyZG93bikgewogICAgICAgIHRoaXMuaW5pdGlhbFRlYXJkb3duID0gaW5pdGlhbFRlYXJkb3duOwogICAgICAgIHRoaXMuY2xvc2VkID0gZmFsc2U7CiAgICAgICAgdGhpcy5fcGFyZW50YWdlID0gbnVsbDsKICAgICAgICB0aGlzLl9maW5hbGl6ZXJzID0gbnVsbDsKICAgICAgfQogICAgICBTdWJzY3JpcHRpb24yLnByb3RvdHlwZS51bnN1YnNjcmliZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBlXzEsIF9hLCBlXzIsIF9iOwogICAgICAgIHZhciBlcnJvcnM7CiAgICAgICAgaWYgKCF0aGlzLmNsb3NlZCkgewogICAgICAgICAgdGhpcy5jbG9zZWQgPSB0cnVlOwogICAgICAgICAgdmFyIF9wYXJlbnRhZ2UgPSB0aGlzLl9wYXJlbnRhZ2U7CiAgICAgICAgICBpZiAoX3BhcmVudGFnZSkgewogICAgICAgICAgICB0aGlzLl9wYXJlbnRhZ2UgPSBudWxsOwogICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShfcGFyZW50YWdlKSkgewogICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICBmb3IgKHZhciBfcGFyZW50YWdlXzEgPSBfX3ZhbHVlcyhfcGFyZW50YWdlKSwgX3BhcmVudGFnZV8xXzEgPSBfcGFyZW50YWdlXzEubmV4dCgpOyAhX3BhcmVudGFnZV8xXzEuZG9uZTsgX3BhcmVudGFnZV8xXzEgPSBfcGFyZW50YWdlXzEubmV4dCgpKSB7CiAgICAgICAgICAgICAgICAgIHZhciBwYXJlbnRfMSA9IF9wYXJlbnRhZ2VfMV8xLnZhbHVlOwogICAgICAgICAgICAgICAgICBwYXJlbnRfMS5yZW1vdmUodGhpcyk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgICAgICAgIGVfMSA9IHsgZXJyb3I6IGVfMV8xIH07CiAgICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgIGlmIChfcGFyZW50YWdlXzFfMSAmJiAhX3BhcmVudGFnZV8xXzEuZG9uZSAmJiAoX2EgPSBfcGFyZW50YWdlXzEucmV0dXJuKSkgX2EuY2FsbChfcGFyZW50YWdlXzEpOwogICAgICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICAgICAgaWYgKGVfMSkgdGhyb3cgZV8xLmVycm9yOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBfcGFyZW50YWdlLnJlbW92ZSh0aGlzKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgdmFyIGluaXRpYWxGaW5hbGl6ZXIgPSB0aGlzLmluaXRpYWxUZWFyZG93bjsKICAgICAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihpbml0aWFsRmluYWxpemVyKSkgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgIGluaXRpYWxGaW5hbGl6ZXIoKTsKICAgICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICAgIGVycm9ycyA9IGUgaW5zdGFuY2VvZiBVbnN1YnNjcmlwdGlvbkVycm9yXzEuVW5zdWJzY3JpcHRpb25FcnJvciA/IGUuZXJyb3JzIDogW2VdOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICB2YXIgX2ZpbmFsaXplcnMgPSB0aGlzLl9maW5hbGl6ZXJzOwogICAgICAgICAgaWYgKF9maW5hbGl6ZXJzKSB7CiAgICAgICAgICAgIHRoaXMuX2ZpbmFsaXplcnMgPSBudWxsOwogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgIGZvciAodmFyIF9maW5hbGl6ZXJzXzEgPSBfX3ZhbHVlcyhfZmluYWxpemVycyksIF9maW5hbGl6ZXJzXzFfMSA9IF9maW5hbGl6ZXJzXzEubmV4dCgpOyAhX2ZpbmFsaXplcnNfMV8xLmRvbmU7IF9maW5hbGl6ZXJzXzFfMSA9IF9maW5hbGl6ZXJzXzEubmV4dCgpKSB7CiAgICAgICAgICAgICAgICB2YXIgZmluYWxpemVyID0gX2ZpbmFsaXplcnNfMV8xLnZhbHVlOwogICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgZXhlY0ZpbmFsaXplcihmaW5hbGl6ZXIpOwogICAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgICAgIGVycm9ycyA9IGVycm9ycyAhPT0gbnVsbCAmJiBlcnJvcnMgIT09IHZvaWQgMCA/IGVycm9ycyA6IFtdOwogICAgICAgICAgICAgICAgICBpZiAoZXJyIGluc3RhbmNlb2YgVW5zdWJzY3JpcHRpb25FcnJvcl8xLlVuc3Vic2NyaXB0aW9uRXJyb3IpIHsKICAgICAgICAgICAgICAgICAgICBlcnJvcnMgPSBfX3NwcmVhZEFycmF5KF9fc3ByZWFkQXJyYXkoW10sIF9fcmVhZChlcnJvcnMpKSwgX19yZWFkKGVyci5lcnJvcnMpKTsKICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICBlcnJvcnMucHVzaChlcnIpOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGNhdGNoIChlXzJfMSkgewogICAgICAgICAgICAgIGVfMiA9IHsgZXJyb3I6IGVfMl8xIH07CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgIGlmIChfZmluYWxpemVyc18xXzEgJiYgIV9maW5hbGl6ZXJzXzFfMS5kb25lICYmIChfYiA9IF9maW5hbGl6ZXJzXzEucmV0dXJuKSkgX2IuY2FsbChfZmluYWxpemVyc18xKTsKICAgICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgICAgaWYgKGVfMikgdGhyb3cgZV8yLmVycm9yOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKGVycm9ycykgewogICAgICAgICAgICB0aHJvdyBuZXcgVW5zdWJzY3JpcHRpb25FcnJvcl8xLlVuc3Vic2NyaXB0aW9uRXJyb3IoZXJyb3JzKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH07CiAgICAgIFN1YnNjcmlwdGlvbjIucHJvdG90eXBlLmFkZCA9IGZ1bmN0aW9uKHRlYXJkb3duKSB7CiAgICAgICAgdmFyIF9hOwogICAgICAgIGlmICh0ZWFyZG93biAmJiB0ZWFyZG93biAhPT0gdGhpcykgewogICAgICAgICAgaWYgKHRoaXMuY2xvc2VkKSB7CiAgICAgICAgICAgIGV4ZWNGaW5hbGl6ZXIodGVhcmRvd24pOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaWYgKHRlYXJkb3duIGluc3RhbmNlb2YgU3Vic2NyaXB0aW9uMikgewogICAgICAgICAgICAgIGlmICh0ZWFyZG93bi5jbG9zZWQgfHwgdGVhcmRvd24uX2hhc1BhcmVudCh0aGlzKSkgewogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB0ZWFyZG93bi5fYWRkUGFyZW50KHRoaXMpOwogICAgICAgICAgICB9CiAgICAgICAgICAgICh0aGlzLl9maW5hbGl6ZXJzID0gKF9hID0gdGhpcy5fZmluYWxpemVycykgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogW10pLnB1c2godGVhcmRvd24pOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfTsKICAgICAgU3Vic2NyaXB0aW9uMi5wcm90b3R5cGUuX2hhc1BhcmVudCA9IGZ1bmN0aW9uKHBhcmVudCkgewogICAgICAgIHZhciBfcGFyZW50YWdlID0gdGhpcy5fcGFyZW50YWdlOwogICAgICAgIHJldHVybiBfcGFyZW50YWdlID09PSBwYXJlbnQgfHwgQXJyYXkuaXNBcnJheShfcGFyZW50YWdlKSAmJiBfcGFyZW50YWdlLmluY2x1ZGVzKHBhcmVudCk7CiAgICAgIH07CiAgICAgIFN1YnNjcmlwdGlvbjIucHJvdG90eXBlLl9hZGRQYXJlbnQgPSBmdW5jdGlvbihwYXJlbnQpIHsKICAgICAgICB2YXIgX3BhcmVudGFnZSA9IHRoaXMuX3BhcmVudGFnZTsKICAgICAgICB0aGlzLl9wYXJlbnRhZ2UgPSBBcnJheS5pc0FycmF5KF9wYXJlbnRhZ2UpID8gKF9wYXJlbnRhZ2UucHVzaChwYXJlbnQpLCBfcGFyZW50YWdlKSA6IF9wYXJlbnRhZ2UgPyBbX3BhcmVudGFnZSwgcGFyZW50XSA6IHBhcmVudDsKICAgICAgfTsKICAgICAgU3Vic2NyaXB0aW9uMi5wcm90b3R5cGUuX3JlbW92ZVBhcmVudCA9IGZ1bmN0aW9uKHBhcmVudCkgewogICAgICAgIHZhciBfcGFyZW50YWdlID0gdGhpcy5fcGFyZW50YWdlOwogICAgICAgIGlmIChfcGFyZW50YWdlID09PSBwYXJlbnQpIHsKICAgICAgICAgIHRoaXMuX3BhcmVudGFnZSA9IG51bGw7CiAgICAgICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KF9wYXJlbnRhZ2UpKSB7CiAgICAgICAgICBhcnJSZW1vdmVfMS5hcnJSZW1vdmUoX3BhcmVudGFnZSwgcGFyZW50KTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIFN1YnNjcmlwdGlvbjIucHJvdG90eXBlLnJlbW92ZSA9IGZ1bmN0aW9uKHRlYXJkb3duKSB7CiAgICAgICAgdmFyIF9maW5hbGl6ZXJzID0gdGhpcy5fZmluYWxpemVyczsKICAgICAgICBfZmluYWxpemVycyAmJiBhcnJSZW1vdmVfMS5hcnJSZW1vdmUoX2ZpbmFsaXplcnMsIHRlYXJkb3duKTsKICAgICAgICBpZiAodGVhcmRvd24gaW5zdGFuY2VvZiBTdWJzY3JpcHRpb24yKSB7CiAgICAgICAgICB0ZWFyZG93bi5fcmVtb3ZlUGFyZW50KHRoaXMpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgU3Vic2NyaXB0aW9uMi5FTVBUWSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBlbXB0eSA9IG5ldyBTdWJzY3JpcHRpb24yKCk7CiAgICAgICAgZW1wdHkuY2xvc2VkID0gdHJ1ZTsKICAgICAgICByZXR1cm4gZW1wdHk7CiAgICAgIH0oKTsKICAgICAgcmV0dXJuIFN1YnNjcmlwdGlvbjI7CiAgICB9KCk7CiAgICBleHBvcnRzMi5TdWJzY3JpcHRpb24gPSBTdWJzY3JpcHRpb247CiAgICBleHBvcnRzMi5FTVBUWV9TVUJTQ1JJUFRJT04gPSBTdWJzY3JpcHRpb24uRU1QVFk7CiAgICBmdW5jdGlvbiBpc1N1YnNjcmlwdGlvbih2YWx1ZSkgewogICAgICByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBTdWJzY3JpcHRpb24gfHwgdmFsdWUgJiYgImNsb3NlZCIgaW4gdmFsdWUgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odmFsdWUucmVtb3ZlKSAmJiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbih2YWx1ZS5hZGQpICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHZhbHVlLnVuc3Vic2NyaWJlKTsKICAgIH0KICAgIGV4cG9ydHMyLmlzU3Vic2NyaXB0aW9uID0gaXNTdWJzY3JpcHRpb247CiAgICBmdW5jdGlvbiBleGVjRmluYWxpemVyKGZpbmFsaXplcikgewogICAgICBpZiAoaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oZmluYWxpemVyKSkgewogICAgICAgIGZpbmFsaXplcigpOwogICAgICB9IGVsc2UgewogICAgICAgIGZpbmFsaXplci51bnN1YnNjcmliZSgpOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL2NvbmZpZy5qcwp2YXIgcmVxdWlyZV9jb25maWcgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvY29uZmlnLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb25maWcgPSB2b2lkIDA7CiAgICBleHBvcnRzMi5jb25maWcgPSB7CiAgICAgIG9uVW5oYW5kbGVkRXJyb3I6IG51bGwsCiAgICAgIG9uU3RvcHBlZE5vdGlmaWNhdGlvbjogbnVsbCwKICAgICAgUHJvbWlzZTogdm9pZCAwLAogICAgICB1c2VEZXByZWNhdGVkU3luY2hyb25vdXNFcnJvckhhbmRsaW5nOiBmYWxzZSwKICAgICAgdXNlRGVwcmVjYXRlZE5leHRDb250ZXh0OiBmYWxzZQogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL3RpbWVvdXRQcm92aWRlci5qcwp2YXIgcmVxdWlyZV90aW1lb3V0UHJvdmlkZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL3RpbWVvdXRQcm92aWRlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGltZW91dFByb3ZpZGVyID0gdm9pZCAwOwogICAgZXhwb3J0czIudGltZW91dFByb3ZpZGVyID0gewogICAgICBzZXRUaW1lb3V0OiBmdW5jdGlvbihoYW5kbGVyLCB0aW1lb3V0KSB7CiAgICAgICAgdmFyIGFyZ3MgPSBbXTsKICAgICAgICBmb3IgKHZhciBfaSA9IDI7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgYXJnc1tfaSAtIDJdID0gYXJndW1lbnRzW19pXTsKICAgICAgICB9CiAgICAgICAgdmFyIGRlbGVnYXRlID0gZXhwb3J0czIudGltZW91dFByb3ZpZGVyLmRlbGVnYXRlOwogICAgICAgIGlmIChkZWxlZ2F0ZSA9PT0gbnVsbCB8fCBkZWxlZ2F0ZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGVsZWdhdGUuc2V0VGltZW91dCkgewogICAgICAgICAgcmV0dXJuIGRlbGVnYXRlLnNldFRpbWVvdXQuYXBwbHkoZGVsZWdhdGUsIF9fc3ByZWFkQXJyYXkoW2hhbmRsZXIsIHRpbWVvdXRdLCBfX3JlYWQoYXJncykpKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHNldFRpbWVvdXQuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtoYW5kbGVyLCB0aW1lb3V0XSwgX19yZWFkKGFyZ3MpKSk7CiAgICAgIH0sCiAgICAgIGNsZWFyVGltZW91dDogZnVuY3Rpb24oaGFuZGxlKSB7CiAgICAgICAgdmFyIGRlbGVnYXRlID0gZXhwb3J0czIudGltZW91dFByb3ZpZGVyLmRlbGVnYXRlOwogICAgICAgIHJldHVybiAoKGRlbGVnYXRlID09PSBudWxsIHx8IGRlbGVnYXRlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkZWxlZ2F0ZS5jbGVhclRpbWVvdXQpIHx8IGNsZWFyVGltZW91dCkoaGFuZGxlKTsKICAgICAgfSwKICAgICAgZGVsZWdhdGU6IHZvaWQgMAogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9yZXBvcnRVbmhhbmRsZWRFcnJvci5qcwp2YXIgcmVxdWlyZV9yZXBvcnRVbmhhbmRsZWRFcnJvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL3JlcG9ydFVuaGFuZGxlZEVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yZXBvcnRVbmhhbmRsZWRFcnJvciA9IHZvaWQgMDsKICAgIHZhciBjb25maWdfMSA9IHJlcXVpcmVfY29uZmlnKCk7CiAgICB2YXIgdGltZW91dFByb3ZpZGVyXzEgPSByZXF1aXJlX3RpbWVvdXRQcm92aWRlcigpOwogICAgZnVuY3Rpb24gcmVwb3J0VW5oYW5kbGVkRXJyb3IoZXJyKSB7CiAgICAgIHRpbWVvdXRQcm92aWRlcl8xLnRpbWVvdXRQcm92aWRlci5zZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBvblVuaGFuZGxlZEVycm9yID0gY29uZmlnXzEuY29uZmlnLm9uVW5oYW5kbGVkRXJyb3I7CiAgICAgICAgaWYgKG9uVW5oYW5kbGVkRXJyb3IpIHsKICAgICAgICAgIG9uVW5oYW5kbGVkRXJyb3IoZXJyKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhyb3cgZXJyOwogICAgICAgIH0KICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5yZXBvcnRVbmhhbmRsZWRFcnJvciA9IHJlcG9ydFVuaGFuZGxlZEVycm9yOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL25vb3AuanMKdmFyIHJlcXVpcmVfbm9vcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL25vb3AuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm5vb3AgPSB2b2lkIDA7CiAgICBmdW5jdGlvbiBub29wKCkgewogICAgfQogICAgZXhwb3J0czIubm9vcCA9IG5vb3A7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL05vdGlmaWNhdGlvbkZhY3Rvcmllcy5qcwp2YXIgcmVxdWlyZV9Ob3RpZmljYXRpb25GYWN0b3JpZXMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvTm90aWZpY2F0aW9uRmFjdG9yaWVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jcmVhdGVOb3RpZmljYXRpb24gPSBleHBvcnRzMi5uZXh0Tm90aWZpY2F0aW9uID0gZXhwb3J0czIuZXJyb3JOb3RpZmljYXRpb24gPSBleHBvcnRzMi5DT01QTEVURV9OT1RJRklDQVRJT04gPSB2b2lkIDA7CiAgICBleHBvcnRzMi5DT01QTEVURV9OT1RJRklDQVRJT04gPSBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNyZWF0ZU5vdGlmaWNhdGlvbigiQyIsIHZvaWQgMCwgdm9pZCAwKTsKICAgIH0oKTsKICAgIGZ1bmN0aW9uIGVycm9yTm90aWZpY2F0aW9uKGVycm9yKSB7CiAgICAgIHJldHVybiBjcmVhdGVOb3RpZmljYXRpb24oIkUiLCB2b2lkIDAsIGVycm9yKTsKICAgIH0KICAgIGV4cG9ydHMyLmVycm9yTm90aWZpY2F0aW9uID0gZXJyb3JOb3RpZmljYXRpb247CiAgICBmdW5jdGlvbiBuZXh0Tm90aWZpY2F0aW9uKHZhbHVlKSB7CiAgICAgIHJldHVybiBjcmVhdGVOb3RpZmljYXRpb24oIk4iLCB2YWx1ZSwgdm9pZCAwKTsKICAgIH0KICAgIGV4cG9ydHMyLm5leHROb3RpZmljYXRpb24gPSBuZXh0Tm90aWZpY2F0aW9uOwogICAgZnVuY3Rpb24gY3JlYXRlTm90aWZpY2F0aW9uKGtpbmQsIHZhbHVlLCBlcnJvcikgewogICAgICByZXR1cm4gewogICAgICAgIGtpbmQsCiAgICAgICAgdmFsdWUsCiAgICAgICAgZXJyb3IKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLmNyZWF0ZU5vdGlmaWNhdGlvbiA9IGNyZWF0ZU5vdGlmaWNhdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9lcnJvckNvbnRleHQuanMKdmFyIHJlcXVpcmVfZXJyb3JDb250ZXh0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvZXJyb3JDb250ZXh0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jYXB0dXJlRXJyb3IgPSBleHBvcnRzMi5lcnJvckNvbnRleHQgPSB2b2lkIDA7CiAgICB2YXIgY29uZmlnXzEgPSByZXF1aXJlX2NvbmZpZygpOwogICAgdmFyIGNvbnRleHQgPSBudWxsOwogICAgZnVuY3Rpb24gZXJyb3JDb250ZXh0KGNiKSB7CiAgICAgIGlmIChjb25maWdfMS5jb25maWcudXNlRGVwcmVjYXRlZFN5bmNocm9ub3VzRXJyb3JIYW5kbGluZykgewogICAgICAgIHZhciBpc1Jvb3QgPSAhY29udGV4dDsKICAgICAgICBpZiAoaXNSb290KSB7CiAgICAgICAgICBjb250ZXh0ID0geyBlcnJvclRocm93bjogZmFsc2UsIGVycm9yOiBudWxsIH07CiAgICAgICAgfQogICAgICAgIGNiKCk7CiAgICAgICAgaWYgKGlzUm9vdCkgewogICAgICAgICAgdmFyIF9hID0gY29udGV4dCwgZXJyb3JUaHJvd24gPSBfYS5lcnJvclRocm93biwgZXJyb3IgPSBfYS5lcnJvcjsKICAgICAgICAgIGNvbnRleHQgPSBudWxsOwogICAgICAgICAgaWYgKGVycm9yVGhyb3duKSB7CiAgICAgICAgICAgIHRocm93IGVycm9yOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfSBlbHNlIHsKICAgICAgICBjYigpOwogICAgICB9CiAgICB9CiAgICBleHBvcnRzMi5lcnJvckNvbnRleHQgPSBlcnJvckNvbnRleHQ7CiAgICBmdW5jdGlvbiBjYXB0dXJlRXJyb3IoZXJyKSB7CiAgICAgIGlmIChjb25maWdfMS5jb25maWcudXNlRGVwcmVjYXRlZFN5bmNocm9ub3VzRXJyb3JIYW5kbGluZyAmJiBjb250ZXh0KSB7CiAgICAgICAgY29udGV4dC5lcnJvclRocm93biA9IHRydWU7CiAgICAgICAgY29udGV4dC5lcnJvciA9IGVycjsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuY2FwdHVyZUVycm9yID0gY2FwdHVyZUVycm9yOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9TdWJzY3JpYmVyLmpzCnZhciByZXF1aXJlX1N1YnNjcmliZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvU3Vic2NyaWJlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5FTVBUWV9PQlNFUlZFUiA9IGV4cG9ydHMyLlNhZmVTdWJzY3JpYmVyID0gZXhwb3J0czIuU3Vic2NyaWJlciA9IHZvaWQgMDsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgY29uZmlnXzEgPSByZXF1aXJlX2NvbmZpZygpOwogICAgdmFyIHJlcG9ydFVuaGFuZGxlZEVycm9yXzEgPSByZXF1aXJlX3JlcG9ydFVuaGFuZGxlZEVycm9yKCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICB2YXIgTm90aWZpY2F0aW9uRmFjdG9yaWVzXzEgPSByZXF1aXJlX05vdGlmaWNhdGlvbkZhY3RvcmllcygpOwogICAgdmFyIHRpbWVvdXRQcm92aWRlcl8xID0gcmVxdWlyZV90aW1lb3V0UHJvdmlkZXIoKTsKICAgIHZhciBlcnJvckNvbnRleHRfMSA9IHJlcXVpcmVfZXJyb3JDb250ZXh0KCk7CiAgICB2YXIgU3Vic2NyaWJlciA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoU3Vic2NyaWJlcjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIFN1YnNjcmliZXIyKGRlc3RpbmF0aW9uKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICBfdGhpcy5pc1N0b3BwZWQgPSBmYWxzZTsKICAgICAgICBpZiAoZGVzdGluYXRpb24pIHsKICAgICAgICAgIF90aGlzLmRlc3RpbmF0aW9uID0gZGVzdGluYXRpb247CiAgICAgICAgICBpZiAoU3Vic2NyaXB0aW9uXzEuaXNTdWJzY3JpcHRpb24oZGVzdGluYXRpb24pKSB7CiAgICAgICAgICAgIGRlc3RpbmF0aW9uLmFkZChfdGhpcyk7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIF90aGlzLmRlc3RpbmF0aW9uID0gZXhwb3J0czIuRU1QVFlfT0JTRVJWRVI7CiAgICAgICAgfQogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBTdWJzY3JpYmVyMi5jcmVhdGUgPSBmdW5jdGlvbihuZXh0LCBlcnJvciwgY29tcGxldGUpIHsKICAgICAgICByZXR1cm4gbmV3IFNhZmVTdWJzY3JpYmVyKG5leHQsIGVycm9yLCBjb21wbGV0ZSk7CiAgICAgIH07CiAgICAgIFN1YnNjcmliZXIyLnByb3RvdHlwZS5uZXh0ID0gZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICBpZiAodGhpcy5pc1N0b3BwZWQpIHsKICAgICAgICAgIGhhbmRsZVN0b3BwZWROb3RpZmljYXRpb24oTm90aWZpY2F0aW9uRmFjdG9yaWVzXzEubmV4dE5vdGlmaWNhdGlvbih2YWx1ZSksIHRoaXMpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLl9uZXh0KHZhbHVlKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIFN1YnNjcmliZXIyLnByb3RvdHlwZS5lcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgIGlmICh0aGlzLmlzU3RvcHBlZCkgewogICAgICAgICAgaGFuZGxlU3RvcHBlZE5vdGlmaWNhdGlvbihOb3RpZmljYXRpb25GYWN0b3JpZXNfMS5lcnJvck5vdGlmaWNhdGlvbihlcnIpLCB0aGlzKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5pc1N0b3BwZWQgPSB0cnVlOwogICAgICAgICAgdGhpcy5fZXJyb3IoZXJyKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIFN1YnNjcmliZXIyLnByb3RvdHlwZS5jb21wbGV0ZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIGlmICh0aGlzLmlzU3RvcHBlZCkgewogICAgICAgICAgaGFuZGxlU3RvcHBlZE5vdGlmaWNhdGlvbihOb3RpZmljYXRpb25GYWN0b3JpZXNfMS5DT01QTEVURV9OT1RJRklDQVRJT04sIHRoaXMpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLmlzU3RvcHBlZCA9IHRydWU7CiAgICAgICAgICB0aGlzLl9jb21wbGV0ZSgpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgU3Vic2NyaWJlcjIucHJvdG90eXBlLnVuc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgaWYgKCF0aGlzLmNsb3NlZCkgewogICAgICAgICAgdGhpcy5pc1N0b3BwZWQgPSB0cnVlOwogICAgICAgICAgX3N1cGVyLnByb3RvdHlwZS51bnN1YnNjcmliZS5jYWxsKHRoaXMpOwogICAgICAgICAgdGhpcy5kZXN0aW5hdGlvbiA9IG51bGw7CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJzY3JpYmVyMi5wcm90b3R5cGUuX25leHQgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIHRoaXMuZGVzdGluYXRpb24ubmV4dCh2YWx1ZSk7CiAgICAgIH07CiAgICAgIFN1YnNjcmliZXIyLnByb3RvdHlwZS5fZXJyb3IgPSBmdW5jdGlvbihlcnIpIHsKICAgICAgICB0cnkgewogICAgICAgICAgdGhpcy5kZXN0aW5hdGlvbi5lcnJvcihlcnIpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICB0aGlzLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJzY3JpYmVyMi5wcm90b3R5cGUuX2NvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIHRoaXMuZGVzdGluYXRpb24uY29tcGxldGUoKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgdGhpcy51bnN1YnNjcmliZSgpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgcmV0dXJuIFN1YnNjcmliZXIyOwogICAgfShTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24pOwogICAgZXhwb3J0czIuU3Vic2NyaWJlciA9IFN1YnNjcmliZXI7CiAgICB2YXIgX2JpbmQgPSBGdW5jdGlvbi5wcm90b3R5cGUuYmluZDsKICAgIGZ1bmN0aW9uIGJpbmQoZm4sIHRoaXNBcmcpIHsKICAgICAgcmV0dXJuIF9iaW5kLmNhbGwoZm4sIHRoaXNBcmcpOwogICAgfQogICAgdmFyIENvbnN1bWVyT2JzZXJ2ZXIgPSBmdW5jdGlvbigpIHsKICAgICAgZnVuY3Rpb24gQ29uc3VtZXJPYnNlcnZlcjIocGFydGlhbE9ic2VydmVyKSB7CiAgICAgICAgdGhpcy5wYXJ0aWFsT2JzZXJ2ZXIgPSBwYXJ0aWFsT2JzZXJ2ZXI7CiAgICAgIH0KICAgICAgQ29uc3VtZXJPYnNlcnZlcjIucHJvdG90eXBlLm5leHQgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIHZhciBwYXJ0aWFsT2JzZXJ2ZXIgPSB0aGlzLnBhcnRpYWxPYnNlcnZlcjsKICAgICAgICBpZiAocGFydGlhbE9ic2VydmVyLm5leHQpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHBhcnRpYWxPYnNlcnZlci5uZXh0KHZhbHVlKTsKICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgICAgIGhhbmRsZVVuaGFuZGxlZEVycm9yKGVycm9yKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH07CiAgICAgIENvbnN1bWVyT2JzZXJ2ZXIyLnByb3RvdHlwZS5lcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgIHZhciBwYXJ0aWFsT2JzZXJ2ZXIgPSB0aGlzLnBhcnRpYWxPYnNlcnZlcjsKICAgICAgICBpZiAocGFydGlhbE9ic2VydmVyLmVycm9yKSB7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBwYXJ0aWFsT2JzZXJ2ZXIuZXJyb3IoZXJyKTsKICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgICAgIGhhbmRsZVVuaGFuZGxlZEVycm9yKGVycm9yKTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgewogICAgICAgICAgaGFuZGxlVW5oYW5kbGVkRXJyb3IoZXJyKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIENvbnN1bWVyT2JzZXJ2ZXIyLnByb3RvdHlwZS5jb21wbGV0ZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBwYXJ0aWFsT2JzZXJ2ZXIgPSB0aGlzLnBhcnRpYWxPYnNlcnZlcjsKICAgICAgICBpZiAocGFydGlhbE9ic2VydmVyLmNvbXBsZXRlKSB7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBwYXJ0aWFsT2JzZXJ2ZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgICAgIGhhbmRsZVVuaGFuZGxlZEVycm9yKGVycm9yKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBDb25zdW1lck9ic2VydmVyMjsKICAgIH0oKTsKICAgIHZhciBTYWZlU3Vic2NyaWJlciA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoU2FmZVN1YnNjcmliZXIyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBTYWZlU3Vic2NyaWJlcjIob2JzZXJ2ZXJPck5leHQsIGVycm9yLCBjb21wbGV0ZSkgewogICAgICAgIHZhciBfdGhpcyA9IF9zdXBlci5jYWxsKHRoaXMpIHx8IHRoaXM7CiAgICAgICAgdmFyIHBhcnRpYWxPYnNlcnZlcjsKICAgICAgICBpZiAoaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ob2JzZXJ2ZXJPck5leHQpIHx8ICFvYnNlcnZlck9yTmV4dCkgewogICAgICAgICAgcGFydGlhbE9ic2VydmVyID0gewogICAgICAgICAgICBuZXh0OiBvYnNlcnZlck9yTmV4dCAhPT0gbnVsbCAmJiBvYnNlcnZlck9yTmV4dCAhPT0gdm9pZCAwID8gb2JzZXJ2ZXJPck5leHQgOiB2b2lkIDAsCiAgICAgICAgICAgIGVycm9yOiBlcnJvciAhPT0gbnVsbCAmJiBlcnJvciAhPT0gdm9pZCAwID8gZXJyb3IgOiB2b2lkIDAsCiAgICAgICAgICAgIGNvbXBsZXRlOiBjb21wbGV0ZSAhPT0gbnVsbCAmJiBjb21wbGV0ZSAhPT0gdm9pZCAwID8gY29tcGxldGUgOiB2b2lkIDAKICAgICAgICAgIH07CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHZhciBjb250ZXh0XzE7CiAgICAgICAgICBpZiAoX3RoaXMgJiYgY29uZmlnXzEuY29uZmlnLnVzZURlcHJlY2F0ZWROZXh0Q29udGV4dCkgewogICAgICAgICAgICBjb250ZXh0XzEgPSBPYmplY3QuY3JlYXRlKG9ic2VydmVyT3JOZXh0KTsKICAgICAgICAgICAgY29udGV4dF8xLnVuc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgcmV0dXJuIF90aGlzLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgIH07CiAgICAgICAgICAgIHBhcnRpYWxPYnNlcnZlciA9IHsKICAgICAgICAgICAgICBuZXh0OiBvYnNlcnZlck9yTmV4dC5uZXh0ICYmIGJpbmQob2JzZXJ2ZXJPck5leHQubmV4dCwgY29udGV4dF8xKSwKICAgICAgICAgICAgICBlcnJvcjogb2JzZXJ2ZXJPck5leHQuZXJyb3IgJiYgYmluZChvYnNlcnZlck9yTmV4dC5lcnJvciwgY29udGV4dF8xKSwKICAgICAgICAgICAgICBjb21wbGV0ZTogb2JzZXJ2ZXJPck5leHQuY29tcGxldGUgJiYgYmluZChvYnNlcnZlck9yTmV4dC5jb21wbGV0ZSwgY29udGV4dF8xKQogICAgICAgICAgICB9OwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgcGFydGlhbE9ic2VydmVyID0gb2JzZXJ2ZXJPck5leHQ7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIF90aGlzLmRlc3RpbmF0aW9uID0gbmV3IENvbnN1bWVyT2JzZXJ2ZXIocGFydGlhbE9ic2VydmVyKTsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgcmV0dXJuIFNhZmVTdWJzY3JpYmVyMjsKICAgIH0oU3Vic2NyaWJlcik7CiAgICBleHBvcnRzMi5TYWZlU3Vic2NyaWJlciA9IFNhZmVTdWJzY3JpYmVyOwogICAgZnVuY3Rpb24gaGFuZGxlVW5oYW5kbGVkRXJyb3IoZXJyb3IpIHsKICAgICAgaWYgKGNvbmZpZ18xLmNvbmZpZy51c2VEZXByZWNhdGVkU3luY2hyb25vdXNFcnJvckhhbmRsaW5nKSB7CiAgICAgICAgZXJyb3JDb250ZXh0XzEuY2FwdHVyZUVycm9yKGVycm9yKTsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXBvcnRVbmhhbmRsZWRFcnJvcl8xLnJlcG9ydFVuaGFuZGxlZEVycm9yKGVycm9yKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gZGVmYXVsdEVycm9ySGFuZGxlcihlcnIpIHsKICAgICAgdGhyb3cgZXJyOwogICAgfQogICAgZnVuY3Rpb24gaGFuZGxlU3RvcHBlZE5vdGlmaWNhdGlvbihub3RpZmljYXRpb24sIHN1YnNjcmliZXIpIHsKICAgICAgdmFyIG9uU3RvcHBlZE5vdGlmaWNhdGlvbiA9IGNvbmZpZ18xLmNvbmZpZy5vblN0b3BwZWROb3RpZmljYXRpb247CiAgICAgIG9uU3RvcHBlZE5vdGlmaWNhdGlvbiAmJiB0aW1lb3V0UHJvdmlkZXJfMS50aW1lb3V0UHJvdmlkZXIuc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gb25TdG9wcGVkTm90aWZpY2F0aW9uKG5vdGlmaWNhdGlvbiwgc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuRU1QVFlfT0JTRVJWRVIgPSB7CiAgICAgIGNsb3NlZDogdHJ1ZSwKICAgICAgbmV4dDogbm9vcF8xLm5vb3AsCiAgICAgIGVycm9yOiBkZWZhdWx0RXJyb3JIYW5kbGVyLAogICAgICBjb21wbGV0ZTogbm9vcF8xLm5vb3AKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3N5bWJvbC9vYnNlcnZhYmxlLmpzCnZhciByZXF1aXJlX29ic2VydmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc3ltYm9sL29ic2VydmFibGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9ic2VydmFibGUgPSB2b2lkIDA7CiAgICBleHBvcnRzMi5vYnNlcnZhYmxlID0gZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5vYnNlcnZhYmxlIHx8ICJAQG9ic2VydmFibGUiOwogICAgfSgpOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lkZW50aXR5LmpzCnZhciByZXF1aXJlX2lkZW50aXR5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaWRlbnRpdHkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmlkZW50aXR5ID0gdm9pZCAwOwogICAgZnVuY3Rpb24gaWRlbnRpdHkoeCkgewogICAgICByZXR1cm4geDsKICAgIH0KICAgIGV4cG9ydHMyLmlkZW50aXR5ID0gaWRlbnRpdHk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvcGlwZS5qcwp2YXIgcmVxdWlyZV9waXBlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvcGlwZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucGlwZUZyb21BcnJheSA9IGV4cG9ydHMyLnBpcGUgPSB2b2lkIDA7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIGZ1bmN0aW9uIHBpcGUoKSB7CiAgICAgIHZhciBmbnMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBmbnNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICByZXR1cm4gcGlwZUZyb21BcnJheShmbnMpOwogICAgfQogICAgZXhwb3J0czIucGlwZSA9IHBpcGU7CiAgICBmdW5jdGlvbiBwaXBlRnJvbUFycmF5KGZucykgewogICAgICBpZiAoZm5zLmxlbmd0aCA9PT0gMCkgewogICAgICAgIHJldHVybiBpZGVudGl0eV8xLmlkZW50aXR5OwogICAgICB9CiAgICAgIGlmIChmbnMubGVuZ3RoID09PSAxKSB7CiAgICAgICAgcmV0dXJuIGZuc1swXTsKICAgICAgfQogICAgICByZXR1cm4gZnVuY3Rpb24gcGlwZWQoaW5wdXQpIHsKICAgICAgICByZXR1cm4gZm5zLnJlZHVjZShmdW5jdGlvbihwcmV2LCBmbikgewogICAgICAgICAgcmV0dXJuIGZuKHByZXYpOwogICAgICAgIH0sIGlucHV0KTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnBpcGVGcm9tQXJyYXkgPSBwaXBlRnJvbUFycmF5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9PYnNlcnZhYmxlLmpzCnZhciByZXF1aXJlX09ic2VydmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvT2JzZXJ2YWJsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuT2JzZXJ2YWJsZSA9IHZvaWQgMDsKICAgIHZhciBTdWJzY3JpYmVyXzEgPSByZXF1aXJlX1N1YnNjcmliZXIoKTsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgb2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9vYnNlcnZhYmxlKCk7CiAgICB2YXIgcGlwZV8xID0gcmVxdWlyZV9waXBlKCk7CiAgICB2YXIgY29uZmlnXzEgPSByZXF1aXJlX2NvbmZpZygpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgdmFyIGVycm9yQ29udGV4dF8xID0gcmVxdWlyZV9lcnJvckNvbnRleHQoKTsKICAgIHZhciBPYnNlcnZhYmxlID0gZnVuY3Rpb24oKSB7CiAgICAgIGZ1bmN0aW9uIE9ic2VydmFibGUyKHN1YnNjcmliZSkgewogICAgICAgIGlmIChzdWJzY3JpYmUpIHsKICAgICAgICAgIHRoaXMuX3N1YnNjcmliZSA9IHN1YnNjcmliZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgT2JzZXJ2YWJsZTIucHJvdG90eXBlLmxpZnQgPSBmdW5jdGlvbihvcGVyYXRvcikgewogICAgICAgIHZhciBvYnNlcnZhYmxlID0gbmV3IE9ic2VydmFibGUyKCk7CiAgICAgICAgb2JzZXJ2YWJsZS5zb3VyY2UgPSB0aGlzOwogICAgICAgIG9ic2VydmFibGUub3BlcmF0b3IgPSBvcGVyYXRvcjsKICAgICAgICByZXR1cm4gb2JzZXJ2YWJsZTsKICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIucHJvdG90eXBlLnN1YnNjcmliZSA9IGZ1bmN0aW9uKG9ic2VydmVyT3JOZXh0LCBlcnJvciwgY29tcGxldGUpIHsKICAgICAgICB2YXIgX3RoaXMgPSB0aGlzOwogICAgICAgIHZhciBzdWJzY3JpYmVyID0gaXNTdWJzY3JpYmVyKG9ic2VydmVyT3JOZXh0KSA/IG9ic2VydmVyT3JOZXh0IDogbmV3IFN1YnNjcmliZXJfMS5TYWZlU3Vic2NyaWJlcihvYnNlcnZlck9yTmV4dCwgZXJyb3IsIGNvbXBsZXRlKTsKICAgICAgICBlcnJvckNvbnRleHRfMS5lcnJvckNvbnRleHQoZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgX2EgPSBfdGhpcywgb3BlcmF0b3IgPSBfYS5vcGVyYXRvciwgc291cmNlID0gX2Euc291cmNlOwogICAgICAgICAgc3Vic2NyaWJlci5hZGQob3BlcmF0b3IgPyBvcGVyYXRvci5jYWxsKHN1YnNjcmliZXIsIHNvdXJjZSkgOiBzb3VyY2UgPyBfdGhpcy5fc3Vic2NyaWJlKHN1YnNjcmliZXIpIDogX3RoaXMuX3RyeVN1YnNjcmliZShzdWJzY3JpYmVyKSk7CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIHN1YnNjcmliZXI7CiAgICAgIH07CiAgICAgIE9ic2VydmFibGUyLnByb3RvdHlwZS5fdHJ5U3Vic2NyaWJlID0gZnVuY3Rpb24oc2luaykgewogICAgICAgIHRyeSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fc3Vic2NyaWJlKHNpbmspOwogICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgc2luay5lcnJvcihlcnIpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIucHJvdG90eXBlLmZvckVhY2ggPSBmdW5jdGlvbihuZXh0LCBwcm9taXNlQ3RvcikgewogICAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgICAgcHJvbWlzZUN0b3IgPSBnZXRQcm9taXNlQ3Rvcihwcm9taXNlQ3Rvcik7CiAgICAgICAgcmV0dXJuIG5ldyBwcm9taXNlQ3RvcihmdW5jdGlvbihyZXNvbHZlLCByZWplY3QpIHsKICAgICAgICAgIHZhciBzdWJzY3JpYmVyID0gbmV3IFN1YnNjcmliZXJfMS5TYWZlU3Vic2NyaWJlcih7CiAgICAgICAgICAgIG5leHQ6IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgIG5leHQodmFsdWUpOwogICAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgICAgICAgcmVqZWN0KGVycik7CiAgICAgICAgICAgICAgICBzdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LAogICAgICAgICAgICBlcnJvcjogcmVqZWN0LAogICAgICAgICAgICBjb21wbGV0ZTogcmVzb2x2ZQogICAgICAgICAgfSk7CiAgICAgICAgICBfdGhpcy5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgfSk7CiAgICAgIH07CiAgICAgIE9ic2VydmFibGUyLnByb3RvdHlwZS5fc3Vic2NyaWJlID0gZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBfYTsKICAgICAgICByZXR1cm4gKF9hID0gdGhpcy5zb3VyY2UpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH07CiAgICAgIE9ic2VydmFibGUyLnByb3RvdHlwZVtvYnNlcnZhYmxlXzEub2JzZXJ2YWJsZV0gPSBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIucHJvdG90eXBlLnBpcGUgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgb3BlcmF0aW9ucyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBvcGVyYXRpb25zW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgfQogICAgICAgIHJldHVybiBwaXBlXzEucGlwZUZyb21BcnJheShvcGVyYXRpb25zKSh0aGlzKTsKICAgICAgfTsKICAgICAgT2JzZXJ2YWJsZTIucHJvdG90eXBlLnRvUHJvbWlzZSA9IGZ1bmN0aW9uKHByb21pc2VDdG9yKSB7CiAgICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgICBwcm9taXNlQ3RvciA9IGdldFByb21pc2VDdG9yKHByb21pc2VDdG9yKTsKICAgICAgICByZXR1cm4gbmV3IHByb21pc2VDdG9yKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkgewogICAgICAgICAgdmFyIHZhbHVlOwogICAgICAgICAgX3RoaXMuc3Vic2NyaWJlKGZ1bmN0aW9uKHgpIHsKICAgICAgICAgICAgcmV0dXJuIHZhbHVlID0geDsKICAgICAgICAgIH0sIGZ1bmN0aW9uKGVycikgewogICAgICAgICAgICByZXR1cm4gcmVqZWN0KGVycik7CiAgICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIHJlc29sdmUodmFsdWUpOwogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgIH07CiAgICAgIE9ic2VydmFibGUyLmNyZWF0ZSA9IGZ1bmN0aW9uKHN1YnNjcmliZSkgewogICAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZTIoc3Vic2NyaWJlKTsKICAgICAgfTsKICAgICAgcmV0dXJuIE9ic2VydmFibGUyOwogICAgfSgpOwogICAgZXhwb3J0czIuT2JzZXJ2YWJsZSA9IE9ic2VydmFibGU7CiAgICBmdW5jdGlvbiBnZXRQcm9taXNlQ3Rvcihwcm9taXNlQ3RvcikgewogICAgICB2YXIgX2E7CiAgICAgIHJldHVybiAoX2EgPSBwcm9taXNlQ3RvciAhPT0gbnVsbCAmJiBwcm9taXNlQ3RvciAhPT0gdm9pZCAwID8gcHJvbWlzZUN0b3IgOiBjb25maWdfMS5jb25maWcuUHJvbWlzZSkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogUHJvbWlzZTsKICAgIH0KICAgIGZ1bmN0aW9uIGlzT2JzZXJ2ZXIodmFsdWUpIHsKICAgICAgcmV0dXJuIHZhbHVlICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHZhbHVlLm5leHQpICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHZhbHVlLmVycm9yKSAmJiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbih2YWx1ZS5jb21wbGV0ZSk7CiAgICB9CiAgICBmdW5jdGlvbiBpc1N1YnNjcmliZXIodmFsdWUpIHsKICAgICAgcmV0dXJuIHZhbHVlICYmIHZhbHVlIGluc3RhbmNlb2YgU3Vic2NyaWJlcl8xLlN1YnNjcmliZXIgfHwgaXNPYnNlcnZlcih2YWx1ZSkgJiYgU3Vic2NyaXB0aW9uXzEuaXNTdWJzY3JpcHRpb24odmFsdWUpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2xpZnQuanMKdmFyIHJlcXVpcmVfbGlmdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2xpZnQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm9wZXJhdGUgPSBleHBvcnRzMi5oYXNMaWZ0ID0gdm9pZCAwOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gaGFzTGlmdChzb3VyY2UpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHNvdXJjZSA9PT0gbnVsbCB8fCBzb3VyY2UgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNvdXJjZS5saWZ0KTsKICAgIH0KICAgIGV4cG9ydHMyLmhhc0xpZnQgPSBoYXNMaWZ0OwogICAgZnVuY3Rpb24gb3BlcmF0ZShpbml0KSB7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICBpZiAoaGFzTGlmdChzb3VyY2UpKSB7CiAgICAgICAgICByZXR1cm4gc291cmNlLmxpZnQoZnVuY3Rpb24obGlmdGVkU291cmNlKSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgcmV0dXJuIGluaXQobGlmdGVkU291cmNlLCB0aGlzKTsKICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgdGhpcy5lcnJvcihlcnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiVW5hYmxlIHRvIGxpZnQgdW5rbm93biBPYnNlcnZhYmxlIHR5cGUiKTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLm9wZXJhdGUgPSBvcGVyYXRlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvT3BlcmF0b3JTdWJzY3JpYmVyLmpzCnZhciByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvT3BlcmF0b3JTdWJzY3JpYmVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLk9wZXJhdG9yU3Vic2NyaWJlciA9IGV4cG9ydHMyLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlciA9IHZvaWQgMDsKICAgIHZhciBTdWJzY3JpYmVyXzEgPSByZXF1aXJlX1N1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihkZXN0aW5hdGlvbiwgb25OZXh0LCBvbkNvbXBsZXRlLCBvbkVycm9yLCBvbkZpbmFsaXplKSB7CiAgICAgIHJldHVybiBuZXcgT3BlcmF0b3JTdWJzY3JpYmVyKGRlc3RpbmF0aW9uLCBvbk5leHQsIG9uQ29tcGxldGUsIG9uRXJyb3IsIG9uRmluYWxpemUpOwogICAgfQogICAgZXhwb3J0czIuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyID0gY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlciA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoT3BlcmF0b3JTdWJzY3JpYmVyMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gT3BlcmF0b3JTdWJzY3JpYmVyMihkZXN0aW5hdGlvbiwgb25OZXh0LCBvbkNvbXBsZXRlLCBvbkVycm9yLCBvbkZpbmFsaXplLCBzaG91bGRVbnN1YnNjcmliZSkgewogICAgICAgIHZhciBfdGhpcyA9IF9zdXBlci5jYWxsKHRoaXMsIGRlc3RpbmF0aW9uKSB8fCB0aGlzOwogICAgICAgIF90aGlzLm9uRmluYWxpemUgPSBvbkZpbmFsaXplOwogICAgICAgIF90aGlzLnNob3VsZFVuc3Vic2NyaWJlID0gc2hvdWxkVW5zdWJzY3JpYmU7CiAgICAgICAgX3RoaXMuX25leHQgPSBvbk5leHQgPyBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgb25OZXh0KHZhbHVlKTsKICAgICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgICBkZXN0aW5hdGlvbi5lcnJvcihlcnIpOwogICAgICAgICAgfQogICAgICAgIH0gOiBfc3VwZXIucHJvdG90eXBlLl9uZXh0OwogICAgICAgIF90aGlzLl9lcnJvciA9IG9uRXJyb3IgPyBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIG9uRXJyb3IoZXJyKTsKICAgICAgICAgIH0gY2F0Y2ggKGVycjIpIHsKICAgICAgICAgICAgZGVzdGluYXRpb24uZXJyb3IoZXJyMik7CiAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICB0aGlzLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgfSA6IF9zdXBlci5wcm90b3R5cGUuX2Vycm9yOwogICAgICAgIF90aGlzLl9jb21wbGV0ZSA9IG9uQ29tcGxldGUgPyBmdW5jdGlvbigpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIG9uQ29tcGxldGUoKTsKICAgICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgICBkZXN0aW5hdGlvbi5lcnJvcihlcnIpOwogICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgdGhpcy51bnN1YnNjcmliZSgpOwogICAgICAgICAgfQogICAgICAgIH0gOiBfc3VwZXIucHJvdG90eXBlLl9jb21wbGV0ZTsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgT3BlcmF0b3JTdWJzY3JpYmVyMi5wcm90b3R5cGUudW5zdWJzY3JpYmUgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgaWYgKCF0aGlzLnNob3VsZFVuc3Vic2NyaWJlIHx8IHRoaXMuc2hvdWxkVW5zdWJzY3JpYmUoKSkgewogICAgICAgICAgdmFyIGNsb3NlZF8xID0gdGhpcy5jbG9zZWQ7CiAgICAgICAgICBfc3VwZXIucHJvdG90eXBlLnVuc3Vic2NyaWJlLmNhbGwodGhpcyk7CiAgICAgICAgICAhY2xvc2VkXzEgJiYgKChfYSA9IHRoaXMub25GaW5hbGl6ZSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmNhbGwodGhpcykpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgcmV0dXJuIE9wZXJhdG9yU3Vic2NyaWJlcjI7CiAgICB9KFN1YnNjcmliZXJfMS5TdWJzY3JpYmVyKTsKICAgIGV4cG9ydHMyLk9wZXJhdG9yU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlZkNvdW50LmpzCnZhciByZXF1aXJlX3JlZkNvdW50ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9yZWZDb3VudC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucmVmQ291bnQgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gcmVmQ291bnQoKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgY29ubmVjdGlvbiA9IG51bGw7CiAgICAgICAgc291cmNlLl9yZWZDb3VudCsrOwogICAgICAgIHZhciByZWZDb3VudGVyID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIHZvaWQgMCwgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKCFzb3VyY2UgfHwgc291cmNlLl9yZWZDb3VudCA8PSAwIHx8IDAgPCAtLXNvdXJjZS5fcmVmQ291bnQpIHsKICAgICAgICAgICAgY29ubmVjdGlvbiA9IG51bGw7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIHZhciBzaGFyZWRDb25uZWN0aW9uID0gc291cmNlLl9jb25uZWN0aW9uOwogICAgICAgICAgdmFyIGNvbm4gPSBjb25uZWN0aW9uOwogICAgICAgICAgY29ubmVjdGlvbiA9IG51bGw7CiAgICAgICAgICBpZiAoc2hhcmVkQ29ubmVjdGlvbiAmJiAoIWNvbm4gfHwgc2hhcmVkQ29ubmVjdGlvbiA9PT0gY29ubikpIHsKICAgICAgICAgICAgc2hhcmVkQ29ubmVjdGlvbi51bnN1YnNjcmliZSgpOwogICAgICAgICAgfQogICAgICAgICAgc3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgIH0pOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUocmVmQ291bnRlcik7CiAgICAgICAgaWYgKCFyZWZDb3VudGVyLmNsb3NlZCkgewogICAgICAgICAgY29ubmVjdGlvbiA9IHNvdXJjZS5jb25uZWN0KCk7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJlZkNvdW50ID0gcmVmQ291bnQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvQ29ubmVjdGFibGVPYnNlcnZhYmxlLmpzCnZhciByZXF1aXJlX0Nvbm5lY3RhYmxlT2JzZXJ2YWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL0Nvbm5lY3RhYmxlT2JzZXJ2YWJsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Db25uZWN0YWJsZU9ic2VydmFibGUgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgU3Vic2NyaXB0aW9uXzEgPSByZXF1aXJlX1N1YnNjcmlwdGlvbigpOwogICAgdmFyIHJlZkNvdW50XzEgPSByZXF1aXJlX3JlZkNvdW50KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIENvbm5lY3RhYmxlT2JzZXJ2YWJsZSA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoQ29ubmVjdGFibGVPYnNlcnZhYmxlMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gQ29ubmVjdGFibGVPYnNlcnZhYmxlMihzb3VyY2UsIHN1YmplY3RGYWN0b3J5KSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICBfdGhpcy5zb3VyY2UgPSBzb3VyY2U7CiAgICAgICAgX3RoaXMuc3ViamVjdEZhY3RvcnkgPSBzdWJqZWN0RmFjdG9yeTsKICAgICAgICBfdGhpcy5fc3ViamVjdCA9IG51bGw7CiAgICAgICAgX3RoaXMuX3JlZkNvdW50ID0gMDsKICAgICAgICBfdGhpcy5fY29ubmVjdGlvbiA9IG51bGw7CiAgICAgICAgaWYgKGxpZnRfMS5oYXNMaWZ0KHNvdXJjZSkpIHsKICAgICAgICAgIF90aGlzLmxpZnQgPSBzb3VyY2UubGlmdDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIF90aGlzOwogICAgICB9CiAgICAgIENvbm5lY3RhYmxlT2JzZXJ2YWJsZTIucHJvdG90eXBlLl9zdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0U3ViamVjdCgpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfTsKICAgICAgQ29ubmVjdGFibGVPYnNlcnZhYmxlMi5wcm90b3R5cGUuZ2V0U3ViamVjdCA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBzdWJqZWN0ID0gdGhpcy5fc3ViamVjdDsKICAgICAgICBpZiAoIXN1YmplY3QgfHwgc3ViamVjdC5pc1N0b3BwZWQpIHsKICAgICAgICAgIHRoaXMuX3N1YmplY3QgPSB0aGlzLnN1YmplY3RGYWN0b3J5KCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9zdWJqZWN0OwogICAgICB9OwogICAgICBDb25uZWN0YWJsZU9ic2VydmFibGUyLnByb3RvdHlwZS5fdGVhcmRvd24gPSBmdW5jdGlvbigpIHsKICAgICAgICB0aGlzLl9yZWZDb3VudCA9IDA7CiAgICAgICAgdmFyIF9jb25uZWN0aW9uID0gdGhpcy5fY29ubmVjdGlvbjsKICAgICAgICB0aGlzLl9zdWJqZWN0ID0gdGhpcy5fY29ubmVjdGlvbiA9IG51bGw7CiAgICAgICAgX2Nvbm5lY3Rpb24gPT09IG51bGwgfHwgX2Nvbm5lY3Rpb24gPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9jb25uZWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgIH07CiAgICAgIENvbm5lY3RhYmxlT2JzZXJ2YWJsZTIucHJvdG90eXBlLmNvbm5lY3QgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgX3RoaXMgPSB0aGlzOwogICAgICAgIHZhciBjb25uZWN0aW9uID0gdGhpcy5fY29ubmVjdGlvbjsKICAgICAgICBpZiAoIWNvbm5lY3Rpb24pIHsKICAgICAgICAgIGNvbm5lY3Rpb24gPSB0aGlzLl9jb25uZWN0aW9uID0gbmV3IFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbigpOwogICAgICAgICAgdmFyIHN1YmplY3RfMSA9IHRoaXMuZ2V0U3ViamVjdCgpOwogICAgICAgICAgY29ubmVjdGlvbi5hZGQodGhpcy5zb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJqZWN0XzEsIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIF90aGlzLl90ZWFyZG93bigpOwogICAgICAgICAgICBzdWJqZWN0XzEuY29tcGxldGUoKTsKICAgICAgICAgIH0sIGZ1bmN0aW9uKGVycikgewogICAgICAgICAgICBfdGhpcy5fdGVhcmRvd24oKTsKICAgICAgICAgICAgc3ViamVjdF8xLmVycm9yKGVycik7CiAgICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIF90aGlzLl90ZWFyZG93bigpOwogICAgICAgICAgfSkpKTsKICAgICAgICAgIGlmIChjb25uZWN0aW9uLmNsb3NlZCkgewogICAgICAgICAgICB0aGlzLl9jb25uZWN0aW9uID0gbnVsbDsKICAgICAgICAgICAgY29ubmVjdGlvbiA9IFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbi5FTVBUWTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIGNvbm5lY3Rpb247CiAgICAgIH07CiAgICAgIENvbm5lY3RhYmxlT2JzZXJ2YWJsZTIucHJvdG90eXBlLnJlZkNvdW50ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHJlZkNvdW50XzEucmVmQ291bnQoKSh0aGlzKTsKICAgICAgfTsKICAgICAgcmV0dXJuIENvbm5lY3RhYmxlT2JzZXJ2YWJsZTI7CiAgICB9KE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKTsKICAgIGV4cG9ydHMyLkNvbm5lY3RhYmxlT2JzZXJ2YWJsZSA9IENvbm5lY3RhYmxlT2JzZXJ2YWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL3BlcmZvcm1hbmNlVGltZXN0YW1wUHJvdmlkZXIuanMKdmFyIHJlcXVpcmVfcGVyZm9ybWFuY2VUaW1lc3RhbXBQcm92aWRlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvcGVyZm9ybWFuY2VUaW1lc3RhbXBQcm92aWRlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucGVyZm9ybWFuY2VUaW1lc3RhbXBQcm92aWRlciA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLnBlcmZvcm1hbmNlVGltZXN0YW1wUHJvdmlkZXIgPSB7CiAgICAgIG5vdzogZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIChleHBvcnRzMi5wZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyLmRlbGVnYXRlIHx8IHBlcmZvcm1hbmNlKS5ub3coKTsKICAgICAgfSwKICAgICAgZGVsZWdhdGU6IHZvaWQgMAogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2FuaW1hdGlvbkZyYW1lUHJvdmlkZXIuanMKdmFyIHJlcXVpcmVfYW5pbWF0aW9uRnJhbWVQcm92aWRlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvYW5pbWF0aW9uRnJhbWVQcm92aWRlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYW5pbWF0aW9uRnJhbWVQcm92aWRlciA9IHZvaWQgMDsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICBleHBvcnRzMi5hbmltYXRpb25GcmFtZVByb3ZpZGVyID0gewogICAgICBzY2hlZHVsZTogZnVuY3Rpb24oY2FsbGJhY2spIHsKICAgICAgICB2YXIgcmVxdWVzdCA9IHJlcXVlc3RBbmltYXRpb25GcmFtZTsKICAgICAgICB2YXIgY2FuY2VsID0gY2FuY2VsQW5pbWF0aW9uRnJhbWU7CiAgICAgICAgdmFyIGRlbGVnYXRlID0gZXhwb3J0czIuYW5pbWF0aW9uRnJhbWVQcm92aWRlci5kZWxlZ2F0ZTsKICAgICAgICBpZiAoZGVsZWdhdGUpIHsKICAgICAgICAgIHJlcXVlc3QgPSBkZWxlZ2F0ZS5yZXF1ZXN0QW5pbWF0aW9uRnJhbWU7CiAgICAgICAgICBjYW5jZWwgPSBkZWxlZ2F0ZS5jYW5jZWxBbmltYXRpb25GcmFtZTsKICAgICAgICB9CiAgICAgICAgdmFyIGhhbmRsZSA9IHJlcXVlc3QoZnVuY3Rpb24odGltZXN0YW1wKSB7CiAgICAgICAgICBjYW5jZWwgPSB2b2lkIDA7CiAgICAgICAgICBjYWxsYmFjayh0aW1lc3RhbXApOwogICAgICAgIH0pOwogICAgICAgIHJldHVybiBuZXcgU3Vic2NyaXB0aW9uXzEuU3Vic2NyaXB0aW9uKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIGNhbmNlbCA9PT0gbnVsbCB8fCBjYW5jZWwgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGNhbmNlbChoYW5kbGUpOwogICAgICAgIH0pOwogICAgICB9LAogICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWU6IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBhcmdzID0gW107CiAgICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgICB9CiAgICAgICAgdmFyIGRlbGVnYXRlID0gZXhwb3J0czIuYW5pbWF0aW9uRnJhbWVQcm92aWRlci5kZWxlZ2F0ZTsKICAgICAgICByZXR1cm4gKChkZWxlZ2F0ZSA9PT0gbnVsbCB8fCBkZWxlZ2F0ZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGVsZWdhdGUucmVxdWVzdEFuaW1hdGlvbkZyYW1lKSB8fCByZXF1ZXN0QW5pbWF0aW9uRnJhbWUpLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKGFyZ3MpKSk7CiAgICAgIH0sCiAgICAgIGNhbmNlbEFuaW1hdGlvbkZyYW1lOiBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgfQogICAgICAgIHZhciBkZWxlZ2F0ZSA9IGV4cG9ydHMyLmFuaW1hdGlvbkZyYW1lUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLmNhbmNlbEFuaW1hdGlvbkZyYW1lKSB8fCBjYW5jZWxBbmltYXRpb25GcmFtZSkuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQoYXJncykpKTsKICAgICAgfSwKICAgICAgZGVsZWdhdGU6IHZvaWQgMAogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9kb20vYW5pbWF0aW9uRnJhbWVzLmpzCnZhciByZXF1aXJlX2FuaW1hdGlvbkZyYW1lcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2RvbS9hbmltYXRpb25GcmFtZXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmFuaW1hdGlvbkZyYW1lcyA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBwZXJmb3JtYW5jZVRpbWVzdGFtcFByb3ZpZGVyXzEgPSByZXF1aXJlX3BlcmZvcm1hbmNlVGltZXN0YW1wUHJvdmlkZXIoKTsKICAgIHZhciBhbmltYXRpb25GcmFtZVByb3ZpZGVyXzEgPSByZXF1aXJlX2FuaW1hdGlvbkZyYW1lUHJvdmlkZXIoKTsKICAgIGZ1bmN0aW9uIGFuaW1hdGlvbkZyYW1lcyh0aW1lc3RhbXBQcm92aWRlcikgewogICAgICByZXR1cm4gdGltZXN0YW1wUHJvdmlkZXIgPyBhbmltYXRpb25GcmFtZXNGYWN0b3J5KHRpbWVzdGFtcFByb3ZpZGVyKSA6IERFRkFVTFRfQU5JTUFUSU9OX0ZSQU1FUzsKICAgIH0KICAgIGV4cG9ydHMyLmFuaW1hdGlvbkZyYW1lcyA9IGFuaW1hdGlvbkZyYW1lczsKICAgIGZ1bmN0aW9uIGFuaW1hdGlvbkZyYW1lc0ZhY3RvcnkodGltZXN0YW1wUHJvdmlkZXIpIHsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHByb3ZpZGVyID0gdGltZXN0YW1wUHJvdmlkZXIgfHwgcGVyZm9ybWFuY2VUaW1lc3RhbXBQcm92aWRlcl8xLnBlcmZvcm1hbmNlVGltZXN0YW1wUHJvdmlkZXI7CiAgICAgICAgdmFyIHN0YXJ0ID0gcHJvdmlkZXIubm93KCk7CiAgICAgICAgdmFyIGlkID0gMDsKICAgICAgICB2YXIgcnVuID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoIXN1YnNjcmliZXIuY2xvc2VkKSB7CiAgICAgICAgICAgIGlkID0gYW5pbWF0aW9uRnJhbWVQcm92aWRlcl8xLmFuaW1hdGlvbkZyYW1lUHJvdmlkZXIucmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKHRpbWVzdGFtcCkgewogICAgICAgICAgICAgIGlkID0gMDsKICAgICAgICAgICAgICB2YXIgbm93ID0gcHJvdmlkZXIubm93KCk7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHsKICAgICAgICAgICAgICAgIHRpbWVzdGFtcDogdGltZXN0YW1wUHJvdmlkZXIgPyBub3cgOiB0aW1lc3RhbXAsCiAgICAgICAgICAgICAgICBlbGFwc2VkOiBub3cgLSBzdGFydAogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgIHJ1bigpOwogICAgICAgICAgICB9KTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIHJ1bigpOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChpZCkgewogICAgICAgICAgICBhbmltYXRpb25GcmFtZVByb3ZpZGVyXzEuYW5pbWF0aW9uRnJhbWVQcm92aWRlci5jYW5jZWxBbmltYXRpb25GcmFtZShpZCk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICB2YXIgREVGQVVMVF9BTklNQVRJT05fRlJBTUVTID0gYW5pbWF0aW9uRnJhbWVzRmFjdG9yeSgpOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL09iamVjdFVuc3Vic2NyaWJlZEVycm9yLmpzCnZhciByZXF1aXJlX09iamVjdFVuc3Vic2NyaWJlZEVycm9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvT2JqZWN0VW5zdWJzY3JpYmVkRXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLk9iamVjdFVuc3Vic2NyaWJlZEVycm9yID0gdm9pZCAwOwogICAgdmFyIGNyZWF0ZUVycm9yQ2xhc3NfMSA9IHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcygpOwogICAgZXhwb3J0czIuT2JqZWN0VW5zdWJzY3JpYmVkRXJyb3IgPSBjcmVhdGVFcnJvckNsYXNzXzEuY3JlYXRlRXJyb3JDbGFzcyhmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uIE9iamVjdFVuc3Vic2NyaWJlZEVycm9ySW1wbCgpIHsKICAgICAgICBfc3VwZXIodGhpcyk7CiAgICAgICAgdGhpcy5uYW1lID0gIk9iamVjdFVuc3Vic2NyaWJlZEVycm9yIjsKICAgICAgICB0aGlzLm1lc3NhZ2UgPSAib2JqZWN0IHVuc3Vic2NyaWJlZCI7CiAgICAgIH07CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvU3ViamVjdC5qcwp2YXIgcmVxdWlyZV9TdWJqZWN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1N1YmplY3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQW5vbnltb3VzU3ViamVjdCA9IGV4cG9ydHMyLlN1YmplY3QgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgU3Vic2NyaXB0aW9uXzEgPSByZXF1aXJlX1N1YnNjcmlwdGlvbigpOwogICAgdmFyIE9iamVjdFVuc3Vic2NyaWJlZEVycm9yXzEgPSByZXF1aXJlX09iamVjdFVuc3Vic2NyaWJlZEVycm9yKCk7CiAgICB2YXIgYXJyUmVtb3ZlXzEgPSByZXF1aXJlX2FyclJlbW92ZSgpOwogICAgdmFyIGVycm9yQ29udGV4dF8xID0gcmVxdWlyZV9lcnJvckNvbnRleHQoKTsKICAgIHZhciBTdWJqZWN0ID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhTdWJqZWN0MiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gU3ViamVjdDIoKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICBfdGhpcy5jbG9zZWQgPSBmYWxzZTsKICAgICAgICBfdGhpcy5jdXJyZW50T2JzZXJ2ZXJzID0gbnVsbDsKICAgICAgICBfdGhpcy5vYnNlcnZlcnMgPSBbXTsKICAgICAgICBfdGhpcy5pc1N0b3BwZWQgPSBmYWxzZTsKICAgICAgICBfdGhpcy5oYXNFcnJvciA9IGZhbHNlOwogICAgICAgIF90aGlzLnRocm93bkVycm9yID0gbnVsbDsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgU3ViamVjdDIucHJvdG90eXBlLmxpZnQgPSBmdW5jdGlvbihvcGVyYXRvcikgewogICAgICAgIHZhciBzdWJqZWN0ID0gbmV3IEFub255bW91c1N1YmplY3QodGhpcywgdGhpcyk7CiAgICAgICAgc3ViamVjdC5vcGVyYXRvciA9IG9wZXJhdG9yOwogICAgICAgIHJldHVybiBzdWJqZWN0OwogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUuX3Rocm93SWZDbG9zZWQgPSBmdW5jdGlvbigpIHsKICAgICAgICBpZiAodGhpcy5jbG9zZWQpIHsKICAgICAgICAgIHRocm93IG5ldyBPYmplY3RVbnN1YnNjcmliZWRFcnJvcl8xLk9iamVjdFVuc3Vic2NyaWJlZEVycm9yKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgICBlcnJvckNvbnRleHRfMS5lcnJvckNvbnRleHQoZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgZV8xLCBfYTsKICAgICAgICAgIF90aGlzLl90aHJvd0lmQ2xvc2VkKCk7CiAgICAgICAgICBpZiAoIV90aGlzLmlzU3RvcHBlZCkgewogICAgICAgICAgICBpZiAoIV90aGlzLmN1cnJlbnRPYnNlcnZlcnMpIHsKICAgICAgICAgICAgICBfdGhpcy5jdXJyZW50T2JzZXJ2ZXJzID0gQXJyYXkuZnJvbShfdGhpcy5vYnNlcnZlcnMpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgZm9yICh2YXIgX2IgPSBfX3ZhbHVlcyhfdGhpcy5jdXJyZW50T2JzZXJ2ZXJzKSwgX2MgPSBfYi5uZXh0KCk7ICFfYy5kb25lOyBfYyA9IF9iLm5leHQoKSkgewogICAgICAgICAgICAgICAgdmFyIG9ic2VydmVyID0gX2MudmFsdWU7CiAgICAgICAgICAgICAgICBvYnNlcnZlci5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gY2F0Y2ggKGVfMV8xKSB7CiAgICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgaWYgKF9jICYmICFfYy5kb25lICYmIChfYSA9IF9iLnJldHVybikpIF9hLmNhbGwoX2IpOwogICAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgICBpZiAoZV8xKSB0aHJvdyBlXzEuZXJyb3I7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH07CiAgICAgIFN1YmplY3QyLnByb3RvdHlwZS5lcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgICAgZXJyb3JDb250ZXh0XzEuZXJyb3JDb250ZXh0KGZ1bmN0aW9uKCkgewogICAgICAgICAgX3RoaXMuX3Rocm93SWZDbG9zZWQoKTsKICAgICAgICAgIGlmICghX3RoaXMuaXNTdG9wcGVkKSB7CiAgICAgICAgICAgIF90aGlzLmhhc0Vycm9yID0gX3RoaXMuaXNTdG9wcGVkID0gdHJ1ZTsKICAgICAgICAgICAgX3RoaXMudGhyb3duRXJyb3IgPSBlcnI7CiAgICAgICAgICAgIHZhciBvYnNlcnZlcnMgPSBfdGhpcy5vYnNlcnZlcnM7CiAgICAgICAgICAgIHdoaWxlIChvYnNlcnZlcnMubGVuZ3RoKSB7CiAgICAgICAgICAgICAgb2JzZXJ2ZXJzLnNoaWZ0KCkuZXJyb3IoZXJyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUuY29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgX3RoaXMgPSB0aGlzOwogICAgICAgIGVycm9yQ29udGV4dF8xLmVycm9yQ29udGV4dChmdW5jdGlvbigpIHsKICAgICAgICAgIF90aGlzLl90aHJvd0lmQ2xvc2VkKCk7CiAgICAgICAgICBpZiAoIV90aGlzLmlzU3RvcHBlZCkgewogICAgICAgICAgICBfdGhpcy5pc1N0b3BwZWQgPSB0cnVlOwogICAgICAgICAgICB2YXIgb2JzZXJ2ZXJzID0gX3RoaXMub2JzZXJ2ZXJzOwogICAgICAgICAgICB3aGlsZSAob2JzZXJ2ZXJzLmxlbmd0aCkgewogICAgICAgICAgICAgIG9ic2VydmVycy5zaGlmdCgpLmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLnVuc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdGhpcy5pc1N0b3BwZWQgPSB0aGlzLmNsb3NlZCA9IHRydWU7CiAgICAgICAgdGhpcy5vYnNlcnZlcnMgPSB0aGlzLmN1cnJlbnRPYnNlcnZlcnMgPSBudWxsOwogICAgICB9OwogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoU3ViamVjdDIucHJvdG90eXBlLCAib2JzZXJ2ZWQiLCB7CiAgICAgICAgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBfYTsKICAgICAgICAgIHJldHVybiAoKF9hID0gdGhpcy5vYnNlcnZlcnMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5sZW5ndGgpID4gMDsKICAgICAgICB9LAogICAgICAgIGVudW1lcmFibGU6IGZhbHNlLAogICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZQogICAgICB9KTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLl90cnlTdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdGhpcy5fdGhyb3dJZkNsb3NlZCgpOwogICAgICAgIHJldHVybiBfc3VwZXIucHJvdG90eXBlLl90cnlTdWJzY3JpYmUuY2FsbCh0aGlzLCBzdWJzY3JpYmVyKTsKICAgICAgfTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLl9zdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdGhpcy5fdGhyb3dJZkNsb3NlZCgpOwogICAgICAgIHRoaXMuX2NoZWNrRmluYWxpemVkU3RhdHVzZXMoc3Vic2NyaWJlcik7CiAgICAgICAgcmV0dXJuIHRoaXMuX2lubmVyU3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICB9OwogICAgICBTdWJqZWN0Mi5wcm90b3R5cGUuX2lubmVyU3Vic2NyaWJlID0gZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgICAgdmFyIF9hID0gdGhpcywgaGFzRXJyb3IgPSBfYS5oYXNFcnJvciwgaXNTdG9wcGVkID0gX2EuaXNTdG9wcGVkLCBvYnNlcnZlcnMgPSBfYS5vYnNlcnZlcnM7CiAgICAgICAgaWYgKGhhc0Vycm9yIHx8IGlzU3RvcHBlZCkgewogICAgICAgICAgcmV0dXJuIFN1YnNjcmlwdGlvbl8xLkVNUFRZX1NVQlNDUklQVElPTjsKICAgICAgICB9CiAgICAgICAgdGhpcy5jdXJyZW50T2JzZXJ2ZXJzID0gbnVsbDsKICAgICAgICBvYnNlcnZlcnMucHVzaChzdWJzY3JpYmVyKTsKICAgICAgICByZXR1cm4gbmV3IFN1YnNjcmlwdGlvbl8xLlN1YnNjcmlwdGlvbihmdW5jdGlvbigpIHsKICAgICAgICAgIF90aGlzLmN1cnJlbnRPYnNlcnZlcnMgPSBudWxsOwogICAgICAgICAgYXJyUmVtb3ZlXzEuYXJyUmVtb3ZlKG9ic2VydmVycywgc3Vic2NyaWJlcik7CiAgICAgICAgfSk7CiAgICAgIH07CiAgICAgIFN1YmplY3QyLnByb3RvdHlwZS5fY2hlY2tGaW5hbGl6ZWRTdGF0dXNlcyA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgX2EgPSB0aGlzLCBoYXNFcnJvciA9IF9hLmhhc0Vycm9yLCB0aHJvd25FcnJvciA9IF9hLnRocm93bkVycm9yLCBpc1N0b3BwZWQgPSBfYS5pc1N0b3BwZWQ7CiAgICAgICAgaWYgKGhhc0Vycm9yKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKHRocm93bkVycm9yKTsKICAgICAgICB9IGVsc2UgaWYgKGlzU3RvcHBlZCkgewogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgU3ViamVjdDIucHJvdG90eXBlLmFzT2JzZXJ2YWJsZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBvYnNlcnZhYmxlID0gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKCk7CiAgICAgICAgb2JzZXJ2YWJsZS5zb3VyY2UgPSB0aGlzOwogICAgICAgIHJldHVybiBvYnNlcnZhYmxlOwogICAgICB9OwogICAgICBTdWJqZWN0Mi5jcmVhdGUgPSBmdW5jdGlvbihkZXN0aW5hdGlvbiwgc291cmNlKSB7CiAgICAgICAgcmV0dXJuIG5ldyBBbm9ueW1vdXNTdWJqZWN0KGRlc3RpbmF0aW9uLCBzb3VyY2UpOwogICAgICB9OwogICAgICByZXR1cm4gU3ViamVjdDI7CiAgICB9KE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKTsKICAgIGV4cG9ydHMyLlN1YmplY3QgPSBTdWJqZWN0OwogICAgdmFyIEFub255bW91c1N1YmplY3QgPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKEFub255bW91c1N1YmplY3QyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBBbm9ueW1vdXNTdWJqZWN0MihkZXN0aW5hdGlvbiwgc291cmNlKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICBfdGhpcy5kZXN0aW5hdGlvbiA9IGRlc3RpbmF0aW9uOwogICAgICAgIF90aGlzLnNvdXJjZSA9IHNvdXJjZTsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQW5vbnltb3VzU3ViamVjdDIucHJvdG90eXBlLm5leHQgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIHZhciBfYSwgX2I7CiAgICAgICAgKF9iID0gKF9hID0gdGhpcy5kZXN0aW5hdGlvbikgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLm5leHQpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5jYWxsKF9hLCB2YWx1ZSk7CiAgICAgIH07CiAgICAgIEFub255bW91c1N1YmplY3QyLnByb3RvdHlwZS5lcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgIHZhciBfYSwgX2I7CiAgICAgICAgKF9iID0gKF9hID0gdGhpcy5kZXN0aW5hdGlvbikgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmVycm9yKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IuY2FsbChfYSwgZXJyKTsKICAgICAgfTsKICAgICAgQW5vbnltb3VzU3ViamVjdDIucHJvdG90eXBlLmNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF9hLCBfYjsKICAgICAgICAoX2IgPSAoX2EgPSB0aGlzLmRlc3RpbmF0aW9uKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY29tcGxldGUpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5jYWxsKF9hKTsKICAgICAgfTsKICAgICAgQW5vbnltb3VzU3ViamVjdDIucHJvdG90eXBlLl9zdWJzY3JpYmUgPSBmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIF9hLCBfYjsKICAgICAgICByZXR1cm4gKF9iID0gKF9hID0gdGhpcy5zb3VyY2UpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5zdWJzY3JpYmUoc3Vic2NyaWJlcikpICE9PSBudWxsICYmIF9iICE9PSB2b2lkIDAgPyBfYiA6IFN1YnNjcmlwdGlvbl8xLkVNUFRZX1NVQlNDUklQVElPTjsKICAgICAgfTsKICAgICAgcmV0dXJuIEFub255bW91c1N1YmplY3QyOwogICAgfShTdWJqZWN0KTsKICAgIGV4cG9ydHMyLkFub255bW91c1N1YmplY3QgPSBBbm9ueW1vdXNTdWJqZWN0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9CZWhhdmlvclN1YmplY3QuanMKdmFyIHJlcXVpcmVfQmVoYXZpb3JTdWJqZWN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL0JlaGF2aW9yU3ViamVjdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5CZWhhdmlvclN1YmplY3QgPSB2b2lkIDA7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgQmVoYXZpb3JTdWJqZWN0ID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhCZWhhdmlvclN1YmplY3QyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBCZWhhdmlvclN1YmplY3QyKF92YWx1ZSkgewogICAgICAgIHZhciBfdGhpcyA9IF9zdXBlci5jYWxsKHRoaXMpIHx8IHRoaXM7CiAgICAgICAgX3RoaXMuX3ZhbHVlID0gX3ZhbHVlOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoQmVoYXZpb3JTdWJqZWN0Mi5wcm90b3R5cGUsICJ2YWx1ZSIsIHsKICAgICAgICBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0VmFsdWUoKTsKICAgICAgICB9LAogICAgICAgIGVudW1lcmFibGU6IGZhbHNlLAogICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZQogICAgICB9KTsKICAgICAgQmVoYXZpb3JTdWJqZWN0Mi5wcm90b3R5cGUuX3N1YnNjcmliZSA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgc3Vic2NyaXB0aW9uID0gX3N1cGVyLnByb3RvdHlwZS5fc3Vic2NyaWJlLmNhbGwodGhpcywgc3Vic2NyaWJlcik7CiAgICAgICAgIXN1YnNjcmlwdGlvbi5jbG9zZWQgJiYgc3Vic2NyaWJlci5uZXh0KHRoaXMuX3ZhbHVlKTsKICAgICAgICByZXR1cm4gc3Vic2NyaXB0aW9uOwogICAgICB9OwogICAgICBCZWhhdmlvclN1YmplY3QyLnByb3RvdHlwZS5nZXRWYWx1ZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBfYSA9IHRoaXMsIGhhc0Vycm9yID0gX2EuaGFzRXJyb3IsIHRocm93bkVycm9yID0gX2EudGhyb3duRXJyb3IsIF92YWx1ZSA9IF9hLl92YWx1ZTsKICAgICAgICBpZiAoaGFzRXJyb3IpIHsKICAgICAgICAgIHRocm93IHRocm93bkVycm9yOwogICAgICAgIH0KICAgICAgICB0aGlzLl90aHJvd0lmQ2xvc2VkKCk7CiAgICAgICAgcmV0dXJuIF92YWx1ZTsKICAgICAgfTsKICAgICAgQmVoYXZpb3JTdWJqZWN0Mi5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgX3N1cGVyLnByb3RvdHlwZS5uZXh0LmNhbGwodGhpcywgdGhpcy5fdmFsdWUgPSB2YWx1ZSk7CiAgICAgIH07CiAgICAgIHJldHVybiBCZWhhdmlvclN1YmplY3QyOwogICAgfShTdWJqZWN0XzEuU3ViamVjdCk7CiAgICBleHBvcnRzMi5CZWhhdmlvclN1YmplY3QgPSBCZWhhdmlvclN1YmplY3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9kYXRlVGltZXN0YW1wUHJvdmlkZXIuanMKdmFyIHJlcXVpcmVfZGF0ZVRpbWVzdGFtcFByb3ZpZGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9kYXRlVGltZXN0YW1wUHJvdmlkZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRhdGVUaW1lc3RhbXBQcm92aWRlciA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLmRhdGVUaW1lc3RhbXBQcm92aWRlciA9IHsKICAgICAgbm93OiBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gKGV4cG9ydHMyLmRhdGVUaW1lc3RhbXBQcm92aWRlci5kZWxlZ2F0ZSB8fCBEYXRlKS5ub3coKTsKICAgICAgfSwKICAgICAgZGVsZWdhdGU6IHZvaWQgMAogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvUmVwbGF5U3ViamVjdC5qcwp2YXIgcmVxdWlyZV9SZXBsYXlTdWJqZWN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL1JlcGxheVN1YmplY3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuUmVwbGF5U3ViamVjdCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBkYXRlVGltZXN0YW1wUHJvdmlkZXJfMSA9IHJlcXVpcmVfZGF0ZVRpbWVzdGFtcFByb3ZpZGVyKCk7CiAgICB2YXIgUmVwbGF5U3ViamVjdCA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoUmVwbGF5U3ViamVjdDIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIFJlcGxheVN1YmplY3QyKF9idWZmZXJTaXplLCBfd2luZG93VGltZSwgX3RpbWVzdGFtcFByb3ZpZGVyKSB7CiAgICAgICAgaWYgKF9idWZmZXJTaXplID09PSB2b2lkIDApIHsKICAgICAgICAgIF9idWZmZXJTaXplID0gSW5maW5pdHk7CiAgICAgICAgfQogICAgICAgIGlmIChfd2luZG93VGltZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBfd2luZG93VGltZSA9IEluZmluaXR5OwogICAgICAgIH0KICAgICAgICBpZiAoX3RpbWVzdGFtcFByb3ZpZGVyID09PSB2b2lkIDApIHsKICAgICAgICAgIF90aW1lc3RhbXBQcm92aWRlciA9IGRhdGVUaW1lc3RhbXBQcm92aWRlcl8xLmRhdGVUaW1lc3RhbXBQcm92aWRlcjsKICAgICAgICB9CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcykgfHwgdGhpczsKICAgICAgICBfdGhpcy5fYnVmZmVyU2l6ZSA9IF9idWZmZXJTaXplOwogICAgICAgIF90aGlzLl93aW5kb3dUaW1lID0gX3dpbmRvd1RpbWU7CiAgICAgICAgX3RoaXMuX3RpbWVzdGFtcFByb3ZpZGVyID0gX3RpbWVzdGFtcFByb3ZpZGVyOwogICAgICAgIF90aGlzLl9idWZmZXIgPSBbXTsKICAgICAgICBfdGhpcy5faW5maW5pdGVUaW1lV2luZG93ID0gdHJ1ZTsKICAgICAgICBfdGhpcy5faW5maW5pdGVUaW1lV2luZG93ID0gX3dpbmRvd1RpbWUgPT09IEluZmluaXR5OwogICAgICAgIF90aGlzLl9idWZmZXJTaXplID0gTWF0aC5tYXgoMSwgX2J1ZmZlclNpemUpOwogICAgICAgIF90aGlzLl93aW5kb3dUaW1lID0gTWF0aC5tYXgoMSwgX3dpbmRvd1RpbWUpOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBSZXBsYXlTdWJqZWN0Mi5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgdmFyIF9hID0gdGhpcywgaXNTdG9wcGVkID0gX2EuaXNTdG9wcGVkLCBfYnVmZmVyID0gX2EuX2J1ZmZlciwgX2luZmluaXRlVGltZVdpbmRvdyA9IF9hLl9pbmZpbml0ZVRpbWVXaW5kb3csIF90aW1lc3RhbXBQcm92aWRlciA9IF9hLl90aW1lc3RhbXBQcm92aWRlciwgX3dpbmRvd1RpbWUgPSBfYS5fd2luZG93VGltZTsKICAgICAgICBpZiAoIWlzU3RvcHBlZCkgewogICAgICAgICAgX2J1ZmZlci5wdXNoKHZhbHVlKTsKICAgICAgICAgICFfaW5maW5pdGVUaW1lV2luZG93ICYmIF9idWZmZXIucHVzaChfdGltZXN0YW1wUHJvdmlkZXIubm93KCkgKyBfd2luZG93VGltZSk7CiAgICAgICAgfQogICAgICAgIHRoaXMuX3RyaW1CdWZmZXIoKTsKICAgICAgICBfc3VwZXIucHJvdG90eXBlLm5leHQuY2FsbCh0aGlzLCB2YWx1ZSk7CiAgICAgIH07CiAgICAgIFJlcGxheVN1YmplY3QyLnByb3RvdHlwZS5fc3Vic2NyaWJlID0gZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHRoaXMuX3Rocm93SWZDbG9zZWQoKTsKICAgICAgICB0aGlzLl90cmltQnVmZmVyKCk7CiAgICAgICAgdmFyIHN1YnNjcmlwdGlvbiA9IHRoaXMuX2lubmVyU3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICAgIHZhciBfYSA9IHRoaXMsIF9pbmZpbml0ZVRpbWVXaW5kb3cgPSBfYS5faW5maW5pdGVUaW1lV2luZG93LCBfYnVmZmVyID0gX2EuX2J1ZmZlcjsKICAgICAgICB2YXIgY29weSA9IF9idWZmZXIuc2xpY2UoKTsKICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGNvcHkubGVuZ3RoICYmICFzdWJzY3JpYmVyLmNsb3NlZDsgaSArPSBfaW5maW5pdGVUaW1lV2luZG93ID8gMSA6IDIpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChjb3B5W2ldKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fY2hlY2tGaW5hbGl6ZWRTdGF0dXNlcyhzdWJzY3JpYmVyKTsKICAgICAgICByZXR1cm4gc3Vic2NyaXB0aW9uOwogICAgICB9OwogICAgICBSZXBsYXlTdWJqZWN0Mi5wcm90b3R5cGUuX3RyaW1CdWZmZXIgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgX2EgPSB0aGlzLCBfYnVmZmVyU2l6ZSA9IF9hLl9idWZmZXJTaXplLCBfdGltZXN0YW1wUHJvdmlkZXIgPSBfYS5fdGltZXN0YW1wUHJvdmlkZXIsIF9idWZmZXIgPSBfYS5fYnVmZmVyLCBfaW5maW5pdGVUaW1lV2luZG93ID0gX2EuX2luZmluaXRlVGltZVdpbmRvdzsKICAgICAgICB2YXIgYWRqdXN0ZWRCdWZmZXJTaXplID0gKF9pbmZpbml0ZVRpbWVXaW5kb3cgPyAxIDogMikgKiBfYnVmZmVyU2l6ZTsKICAgICAgICBfYnVmZmVyU2l6ZSA8IEluZmluaXR5ICYmIGFkanVzdGVkQnVmZmVyU2l6ZSA8IF9idWZmZXIubGVuZ3RoICYmIF9idWZmZXIuc3BsaWNlKDAsIF9idWZmZXIubGVuZ3RoIC0gYWRqdXN0ZWRCdWZmZXJTaXplKTsKICAgICAgICBpZiAoIV9pbmZpbml0ZVRpbWVXaW5kb3cpIHsKICAgICAgICAgIHZhciBub3cgPSBfdGltZXN0YW1wUHJvdmlkZXIubm93KCk7CiAgICAgICAgICB2YXIgbGFzdCA9IDA7CiAgICAgICAgICBmb3IgKHZhciBpID0gMTsgaSA8IF9idWZmZXIubGVuZ3RoICYmIF9idWZmZXJbaV0gPD0gbm93OyBpICs9IDIpIHsKICAgICAgICAgICAgbGFzdCA9IGk7CiAgICAgICAgICB9CiAgICAgICAgICBsYXN0ICYmIF9idWZmZXIuc3BsaWNlKDAsIGxhc3QgKyAxKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBSZXBsYXlTdWJqZWN0MjsKICAgIH0oU3ViamVjdF8xLlN1YmplY3QpOwogICAgZXhwb3J0czIuUmVwbGF5U3ViamVjdCA9IFJlcGxheVN1YmplY3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL0FzeW5jU3ViamVjdC5qcwp2YXIgcmVxdWlyZV9Bc3luY1N1YmplY3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvQXN5bmNTdWJqZWN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkFzeW5jU3ViamVjdCA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBBc3luY1N1YmplY3QgPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKEFzeW5jU3ViamVjdDIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIEFzeW5jU3ViamVjdDIoKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyICE9PSBudWxsICYmIF9zdXBlci5hcHBseSh0aGlzLCBhcmd1bWVudHMpIHx8IHRoaXM7CiAgICAgICAgX3RoaXMuX3ZhbHVlID0gbnVsbDsKICAgICAgICBfdGhpcy5faGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICBfdGhpcy5faXNDb21wbGV0ZSA9IGZhbHNlOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBBc3luY1N1YmplY3QyLnByb3RvdHlwZS5fY2hlY2tGaW5hbGl6ZWRTdGF0dXNlcyA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgX2EgPSB0aGlzLCBoYXNFcnJvciA9IF9hLmhhc0Vycm9yLCBfaGFzVmFsdWUgPSBfYS5faGFzVmFsdWUsIF92YWx1ZSA9IF9hLl92YWx1ZSwgdGhyb3duRXJyb3IgPSBfYS50aHJvd25FcnJvciwgaXNTdG9wcGVkID0gX2EuaXNTdG9wcGVkLCBfaXNDb21wbGV0ZSA9IF9hLl9pc0NvbXBsZXRlOwogICAgICAgIGlmIChoYXNFcnJvcikgewogICAgICAgICAgc3Vic2NyaWJlci5lcnJvcih0aHJvd25FcnJvcik7CiAgICAgICAgfSBlbHNlIGlmIChpc1N0b3BwZWQgfHwgX2lzQ29tcGxldGUpIHsKICAgICAgICAgIF9oYXNWYWx1ZSAmJiBzdWJzY3JpYmVyLm5leHQoX3ZhbHVlKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIEFzeW5jU3ViamVjdDIucHJvdG90eXBlLm5leHQgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIGlmICghdGhpcy5pc1N0b3BwZWQpIHsKICAgICAgICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7CiAgICAgICAgICB0aGlzLl9oYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgfQogICAgICB9OwogICAgICBBc3luY1N1YmplY3QyLnByb3RvdHlwZS5jb21wbGV0ZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBfYSA9IHRoaXMsIF9oYXNWYWx1ZSA9IF9hLl9oYXNWYWx1ZSwgX3ZhbHVlID0gX2EuX3ZhbHVlLCBfaXNDb21wbGV0ZSA9IF9hLl9pc0NvbXBsZXRlOwogICAgICAgIGlmICghX2lzQ29tcGxldGUpIHsKICAgICAgICAgIHRoaXMuX2lzQ29tcGxldGUgPSB0cnVlOwogICAgICAgICAgX2hhc1ZhbHVlICYmIF9zdXBlci5wcm90b3R5cGUubmV4dC5jYWxsKHRoaXMsIF92YWx1ZSk7CiAgICAgICAgICBfc3VwZXIucHJvdG90eXBlLmNvbXBsZXRlLmNhbGwodGhpcyk7CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gQXN5bmNTdWJqZWN0MjsKICAgIH0oU3ViamVjdF8xLlN1YmplY3QpOwogICAgZXhwb3J0czIuQXN5bmNTdWJqZWN0ID0gQXN5bmNTdWJqZWN0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQWN0aW9uLmpzCnZhciByZXF1aXJlX0FjdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQWN0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkFjdGlvbiA9IHZvaWQgMDsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgQWN0aW9uID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBY3Rpb24yLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBBY3Rpb24yKHNjaGVkdWxlciwgd29yaykgewogICAgICAgIHJldHVybiBfc3VwZXIuY2FsbCh0aGlzKSB8fCB0aGlzOwogICAgICB9CiAgICAgIEFjdGlvbjIucHJvdG90eXBlLnNjaGVkdWxlID0gZnVuY3Rpb24oc3RhdGUsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH07CiAgICAgIHJldHVybiBBY3Rpb24yOwogICAgfShTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24pOwogICAgZXhwb3J0czIuQWN0aW9uID0gQWN0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvaW50ZXJ2YWxQcm92aWRlci5qcwp2YXIgcmVxdWlyZV9pbnRlcnZhbFByb3ZpZGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9pbnRlcnZhbFByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pbnRlcnZhbFByb3ZpZGVyID0gdm9pZCAwOwogICAgZXhwb3J0czIuaW50ZXJ2YWxQcm92aWRlciA9IHsKICAgICAgc2V0SW50ZXJ2YWw6IGZ1bmN0aW9uKGhhbmRsZXIsIHRpbWVvdXQpIHsKICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMjsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBhcmdzW19pIC0gMl0gPSBhcmd1bWVudHNbX2ldOwogICAgICAgIH0KICAgICAgICB2YXIgZGVsZWdhdGUgPSBleHBvcnRzMi5pbnRlcnZhbFByb3ZpZGVyLmRlbGVnYXRlOwogICAgICAgIGlmIChkZWxlZ2F0ZSA9PT0gbnVsbCB8fCBkZWxlZ2F0ZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGVsZWdhdGUuc2V0SW50ZXJ2YWwpIHsKICAgICAgICAgIHJldHVybiBkZWxlZ2F0ZS5zZXRJbnRlcnZhbC5hcHBseShkZWxlZ2F0ZSwgX19zcHJlYWRBcnJheShbaGFuZGxlciwgdGltZW91dF0sIF9fcmVhZChhcmdzKSkpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2V0SW50ZXJ2YWwuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtoYW5kbGVyLCB0aW1lb3V0XSwgX19yZWFkKGFyZ3MpKSk7CiAgICAgIH0sCiAgICAgIGNsZWFySW50ZXJ2YWw6IGZ1bmN0aW9uKGhhbmRsZSkgewogICAgICAgIHZhciBkZWxlZ2F0ZSA9IGV4cG9ydHMyLmludGVydmFsUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLmNsZWFySW50ZXJ2YWwpIHx8IGNsZWFySW50ZXJ2YWwpKGhhbmRsZSk7CiAgICAgIH0sCiAgICAgIGRlbGVnYXRlOiB2b2lkIDAKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9Bc3luY0FjdGlvbi5qcwp2YXIgcmVxdWlyZV9Bc3luY0FjdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXN5bmNBY3Rpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQXN5bmNBY3Rpb24gPSB2b2lkIDA7CiAgICB2YXIgQWN0aW9uXzEgPSByZXF1aXJlX0FjdGlvbigpOwogICAgdmFyIGludGVydmFsUHJvdmlkZXJfMSA9IHJlcXVpcmVfaW50ZXJ2YWxQcm92aWRlcigpOwogICAgdmFyIGFyclJlbW92ZV8xID0gcmVxdWlyZV9hcnJSZW1vdmUoKTsKICAgIHZhciBBc3luY0FjdGlvbiA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoQXN5bmNBY3Rpb24yLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBBc3luY0FjdGlvbjIoc2NoZWR1bGVyLCB3b3JrKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgc2NoZWR1bGVyLCB3b3JrKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNjaGVkdWxlciA9IHNjaGVkdWxlcjsKICAgICAgICBfdGhpcy53b3JrID0gd29yazsKICAgICAgICBfdGhpcy5wZW5kaW5nID0gZmFsc2U7CiAgICAgICAgcmV0dXJuIF90aGlzOwogICAgICB9CiAgICAgIEFzeW5jQWN0aW9uMi5wcm90b3R5cGUuc2NoZWR1bGUgPSBmdW5jdGlvbihzdGF0ZSwgZGVsYXkpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKHRoaXMuY2xvc2VkKSB7CiAgICAgICAgICByZXR1cm4gdGhpczsKICAgICAgICB9CiAgICAgICAgdGhpcy5zdGF0ZSA9IHN0YXRlOwogICAgICAgIHZhciBpZCA9IHRoaXMuaWQ7CiAgICAgICAgdmFyIHNjaGVkdWxlciA9IHRoaXMuc2NoZWR1bGVyOwogICAgICAgIGlmIChpZCAhPSBudWxsKSB7CiAgICAgICAgICB0aGlzLmlkID0gdGhpcy5yZWN5Y2xlQXN5bmNJZChzY2hlZHVsZXIsIGlkLCBkZWxheSk7CiAgICAgICAgfQogICAgICAgIHRoaXMucGVuZGluZyA9IHRydWU7CiAgICAgICAgdGhpcy5kZWxheSA9IGRlbGF5OwogICAgICAgIHRoaXMuaWQgPSAoX2EgPSB0aGlzLmlkKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiB0aGlzLnJlcXVlc3RBc3luY0lkKHNjaGVkdWxlciwgdGhpcy5pZCwgZGVsYXkpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9OwogICAgICBBc3luY0FjdGlvbjIucHJvdG90eXBlLnJlcXVlc3RBc3luY0lkID0gZnVuY3Rpb24oc2NoZWR1bGVyLCBfaWQsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGludGVydmFsUHJvdmlkZXJfMS5pbnRlcnZhbFByb3ZpZGVyLnNldEludGVydmFsKHNjaGVkdWxlci5mbHVzaC5iaW5kKHNjaGVkdWxlciwgdGhpcyksIGRlbGF5KTsKICAgICAgfTsKICAgICAgQXN5bmNBY3Rpb24yLnByb3RvdHlwZS5yZWN5Y2xlQXN5bmNJZCA9IGZ1bmN0aW9uKF9zY2hlZHVsZXIsIGlkLCBkZWxheSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIGlmIChkZWxheSAhPSBudWxsICYmIHRoaXMuZGVsYXkgPT09IGRlbGF5ICYmIHRoaXMucGVuZGluZyA9PT0gZmFsc2UpIHsKICAgICAgICAgIHJldHVybiBpZDsKICAgICAgICB9CiAgICAgICAgaWYgKGlkICE9IG51bGwpIHsKICAgICAgICAgIGludGVydmFsUHJvdmlkZXJfMS5pbnRlcnZhbFByb3ZpZGVyLmNsZWFySW50ZXJ2YWwoaWQpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICB9OwogICAgICBBc3luY0FjdGlvbjIucHJvdG90eXBlLmV4ZWN1dGUgPSBmdW5jdGlvbihzdGF0ZSwgZGVsYXkpIHsKICAgICAgICBpZiAodGhpcy5jbG9zZWQpIHsKICAgICAgICAgIHJldHVybiBuZXcgRXJyb3IoImV4ZWN1dGluZyBhIGNhbmNlbGxlZCBhY3Rpb24iKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5wZW5kaW5nID0gZmFsc2U7CiAgICAgICAgdmFyIGVycm9yID0gdGhpcy5fZXhlY3V0ZShzdGF0ZSwgZGVsYXkpOwogICAgICAgIGlmIChlcnJvcikgewogICAgICAgICAgcmV0dXJuIGVycm9yOwogICAgICAgIH0gZWxzZSBpZiAodGhpcy5wZW5kaW5nID09PSBmYWxzZSAmJiB0aGlzLmlkICE9IG51bGwpIHsKICAgICAgICAgIHRoaXMuaWQgPSB0aGlzLnJlY3ljbGVBc3luY0lkKHRoaXMuc2NoZWR1bGVyLCB0aGlzLmlkLCBudWxsKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIEFzeW5jQWN0aW9uMi5wcm90b3R5cGUuX2V4ZWN1dGUgPSBmdW5jdGlvbihzdGF0ZSwgX2RlbGF5KSB7CiAgICAgICAgdmFyIGVycm9yZWQgPSBmYWxzZTsKICAgICAgICB2YXIgZXJyb3JWYWx1ZTsKICAgICAgICB0cnkgewogICAgICAgICAgdGhpcy53b3JrKHN0YXRlKTsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICBlcnJvcmVkID0gdHJ1ZTsKICAgICAgICAgIGVycm9yVmFsdWUgPSBlID8gZSA6IG5ldyBFcnJvcigiU2NoZWR1bGVkIGFjdGlvbiB0aHJldyBmYWxzeSBlcnJvciIpOwogICAgICAgIH0KICAgICAgICBpZiAoZXJyb3JlZCkgewogICAgICAgICAgdGhpcy51bnN1YnNjcmliZSgpOwogICAgICAgICAgcmV0dXJuIGVycm9yVmFsdWU7CiAgICAgICAgfQogICAgICB9OwogICAgICBBc3luY0FjdGlvbjIucHJvdG90eXBlLnVuc3Vic2NyaWJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgaWYgKCF0aGlzLmNsb3NlZCkgewogICAgICAgICAgdmFyIF9hID0gdGhpcywgaWQgPSBfYS5pZCwgc2NoZWR1bGVyID0gX2Euc2NoZWR1bGVyOwogICAgICAgICAgdmFyIGFjdGlvbnMgPSBzY2hlZHVsZXIuYWN0aW9uczsKICAgICAgICAgIHRoaXMud29yayA9IHRoaXMuc3RhdGUgPSB0aGlzLnNjaGVkdWxlciA9IG51bGw7CiAgICAgICAgICB0aGlzLnBlbmRpbmcgPSBmYWxzZTsKICAgICAgICAgIGFyclJlbW92ZV8xLmFyclJlbW92ZShhY3Rpb25zLCB0aGlzKTsKICAgICAgICAgIGlmIChpZCAhPSBudWxsKSB7CiAgICAgICAgICAgIHRoaXMuaWQgPSB0aGlzLnJlY3ljbGVBc3luY0lkKHNjaGVkdWxlciwgaWQsIG51bGwpOwogICAgICAgICAgfQogICAgICAgICAgdGhpcy5kZWxheSA9IG51bGw7CiAgICAgICAgICBfc3VwZXIucHJvdG90eXBlLnVuc3Vic2NyaWJlLmNhbGwodGhpcyk7CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gQXN5bmNBY3Rpb24yOwogICAgfShBY3Rpb25fMS5BY3Rpb24pOwogICAgZXhwb3J0czIuQXN5bmNBY3Rpb24gPSBBc3luY0FjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9JbW1lZGlhdGUuanMKdmFyIHJlcXVpcmVfSW1tZWRpYXRlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvSW1tZWRpYXRlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5UZXN0VG9vbHMgPSBleHBvcnRzMi5JbW1lZGlhdGUgPSB2b2lkIDA7CiAgICB2YXIgbmV4dEhhbmRsZSA9IDE7CiAgICB2YXIgcmVzb2x2ZWQ7CiAgICB2YXIgYWN0aXZlSGFuZGxlcyA9IHt9OwogICAgZnVuY3Rpb24gZmluZEFuZENsZWFySGFuZGxlKGhhbmRsZSkgewogICAgICBpZiAoaGFuZGxlIGluIGFjdGl2ZUhhbmRsZXMpIHsKICAgICAgICBkZWxldGUgYWN0aXZlSGFuZGxlc1toYW5kbGVdOwogICAgICAgIHJldHVybiB0cnVlOwogICAgICB9CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICAgIGV4cG9ydHMyLkltbWVkaWF0ZSA9IHsKICAgICAgc2V0SW1tZWRpYXRlOiBmdW5jdGlvbihjYikgewogICAgICAgIHZhciBoYW5kbGUgPSBuZXh0SGFuZGxlKys7CiAgICAgICAgYWN0aXZlSGFuZGxlc1toYW5kbGVdID0gdHJ1ZTsKICAgICAgICBpZiAoIXJlc29sdmVkKSB7CiAgICAgICAgICByZXNvbHZlZCA9IFByb21pc2UucmVzb2x2ZSgpOwogICAgICAgIH0KICAgICAgICByZXNvbHZlZC50aGVuKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIGZpbmRBbmRDbGVhckhhbmRsZShoYW5kbGUpICYmIGNiKCk7CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIGhhbmRsZTsKICAgICAgfSwKICAgICAgY2xlYXJJbW1lZGlhdGU6IGZ1bmN0aW9uKGhhbmRsZSkgewogICAgICAgIGZpbmRBbmRDbGVhckhhbmRsZShoYW5kbGUpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVGVzdFRvb2xzID0gewogICAgICBwZW5kaW5nOiBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMoYWN0aXZlSGFuZGxlcykubGVuZ3RoOwogICAgICB9CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvaW1tZWRpYXRlUHJvdmlkZXIuanMKdmFyIHJlcXVpcmVfaW1tZWRpYXRlUHJvdmlkZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2ltbWVkaWF0ZVByb3ZpZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pbW1lZGlhdGVQcm92aWRlciA9IHZvaWQgMDsKICAgIHZhciBJbW1lZGlhdGVfMSA9IHJlcXVpcmVfSW1tZWRpYXRlKCk7CiAgICB2YXIgc2V0SW1tZWRpYXRlID0gSW1tZWRpYXRlXzEuSW1tZWRpYXRlLnNldEltbWVkaWF0ZTsKICAgIHZhciBjbGVhckltbWVkaWF0ZSA9IEltbWVkaWF0ZV8xLkltbWVkaWF0ZS5jbGVhckltbWVkaWF0ZTsKICAgIGV4cG9ydHMyLmltbWVkaWF0ZVByb3ZpZGVyID0gewogICAgICBzZXRJbW1lZGlhdGU6IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBhcmdzID0gW107CiAgICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgICB9CiAgICAgICAgdmFyIGRlbGVnYXRlID0gZXhwb3J0czIuaW1tZWRpYXRlUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLnNldEltbWVkaWF0ZSkgfHwgc2V0SW1tZWRpYXRlKS5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW10sIF9fcmVhZChhcmdzKSkpOwogICAgICB9LAogICAgICBjbGVhckltbWVkaWF0ZTogZnVuY3Rpb24oaGFuZGxlKSB7CiAgICAgICAgdmFyIGRlbGVnYXRlID0gZXhwb3J0czIuaW1tZWRpYXRlUHJvdmlkZXIuZGVsZWdhdGU7CiAgICAgICAgcmV0dXJuICgoZGVsZWdhdGUgPT09IG51bGwgfHwgZGVsZWdhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlbGVnYXRlLmNsZWFySW1tZWRpYXRlKSB8fCBjbGVhckltbWVkaWF0ZSkoaGFuZGxlKTsKICAgICAgfSwKICAgICAgZGVsZWdhdGU6IHZvaWQgMAogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL0FzYXBBY3Rpb24uanMKdmFyIHJlcXVpcmVfQXNhcEFjdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXNhcEFjdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Bc2FwQWN0aW9uID0gdm9pZCAwOwogICAgdmFyIEFzeW5jQWN0aW9uXzEgPSByZXF1aXJlX0FzeW5jQWN0aW9uKCk7CiAgICB2YXIgaW1tZWRpYXRlUHJvdmlkZXJfMSA9IHJlcXVpcmVfaW1tZWRpYXRlUHJvdmlkZXIoKTsKICAgIHZhciBBc2FwQWN0aW9uID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBc2FwQWN0aW9uMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gQXNhcEFjdGlvbjIoc2NoZWR1bGVyLCB3b3JrKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgc2NoZWR1bGVyLCB3b3JrKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNjaGVkdWxlciA9IHNjaGVkdWxlcjsKICAgICAgICBfdGhpcy53b3JrID0gd29yazsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQXNhcEFjdGlvbjIucHJvdG90eXBlLnJlcXVlc3RBc3luY0lkID0gZnVuY3Rpb24oc2NoZWR1bGVyLCBpZCwgZGVsYXkpIHsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAoZGVsYXkgIT09IG51bGwgJiYgZGVsYXkgPiAwKSB7CiAgICAgICAgICByZXR1cm4gX3N1cGVyLnByb3RvdHlwZS5yZXF1ZXN0QXN5bmNJZC5jYWxsKHRoaXMsIHNjaGVkdWxlciwgaWQsIGRlbGF5KTsKICAgICAgICB9CiAgICAgICAgc2NoZWR1bGVyLmFjdGlvbnMucHVzaCh0aGlzKTsKICAgICAgICByZXR1cm4gc2NoZWR1bGVyLl9zY2hlZHVsZWQgfHwgKHNjaGVkdWxlci5fc2NoZWR1bGVkID0gaW1tZWRpYXRlUHJvdmlkZXJfMS5pbW1lZGlhdGVQcm92aWRlci5zZXRJbW1lZGlhdGUoc2NoZWR1bGVyLmZsdXNoLmJpbmQoc2NoZWR1bGVyLCB2b2lkIDApKSk7CiAgICAgIH07CiAgICAgIEFzYXBBY3Rpb24yLnByb3RvdHlwZS5yZWN5Y2xlQXN5bmNJZCA9IGZ1bmN0aW9uKHNjaGVkdWxlciwgaWQsIGRlbGF5KSB7CiAgICAgICAgdmFyIF9hOwogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIGlmIChkZWxheSAhPSBudWxsID8gZGVsYXkgPiAwIDogdGhpcy5kZWxheSA+IDApIHsKICAgICAgICAgIHJldHVybiBfc3VwZXIucHJvdG90eXBlLnJlY3ljbGVBc3luY0lkLmNhbGwodGhpcywgc2NoZWR1bGVyLCBpZCwgZGVsYXkpOwogICAgICAgIH0KICAgICAgICB2YXIgYWN0aW9ucyA9IHNjaGVkdWxlci5hY3Rpb25zOwogICAgICAgIGlmIChpZCAhPSBudWxsICYmICgoX2EgPSBhY3Rpb25zW2FjdGlvbnMubGVuZ3RoIC0gMV0pID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5pZCkgIT09IGlkKSB7CiAgICAgICAgICBpbW1lZGlhdGVQcm92aWRlcl8xLmltbWVkaWF0ZVByb3ZpZGVyLmNsZWFySW1tZWRpYXRlKGlkKTsKICAgICAgICAgIGlmIChzY2hlZHVsZXIuX3NjaGVkdWxlZCA9PT0gaWQpIHsKICAgICAgICAgICAgc2NoZWR1bGVyLl9zY2hlZHVsZWQgPSB2b2lkIDA7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH07CiAgICAgIHJldHVybiBBc2FwQWN0aW9uMjsKICAgIH0oQXN5bmNBY3Rpb25fMS5Bc3luY0FjdGlvbik7CiAgICBleHBvcnRzMi5Bc2FwQWN0aW9uID0gQXNhcEFjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvU2NoZWR1bGVyLmpzCnZhciByZXF1aXJlX1NjaGVkdWxlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9TY2hlZHVsZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlNjaGVkdWxlciA9IHZvaWQgMDsKICAgIHZhciBkYXRlVGltZXN0YW1wUHJvdmlkZXJfMSA9IHJlcXVpcmVfZGF0ZVRpbWVzdGFtcFByb3ZpZGVyKCk7CiAgICB2YXIgU2NoZWR1bGVyID0gZnVuY3Rpb24oKSB7CiAgICAgIGZ1bmN0aW9uIFNjaGVkdWxlcjIoc2NoZWR1bGVyQWN0aW9uQ3Rvciwgbm93KSB7CiAgICAgICAgaWYgKG5vdyA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBub3cgPSBTY2hlZHVsZXIyLm5vdzsKICAgICAgICB9CiAgICAgICAgdGhpcy5zY2hlZHVsZXJBY3Rpb25DdG9yID0gc2NoZWR1bGVyQWN0aW9uQ3RvcjsKICAgICAgICB0aGlzLm5vdyA9IG5vdzsKICAgICAgfQogICAgICBTY2hlZHVsZXIyLnByb3RvdHlwZS5zY2hlZHVsZSA9IGZ1bmN0aW9uKHdvcmssIGRlbGF5LCBzdGF0ZSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIHJldHVybiBuZXcgdGhpcy5zY2hlZHVsZXJBY3Rpb25DdG9yKHRoaXMsIHdvcmspLnNjaGVkdWxlKHN0YXRlLCBkZWxheSk7CiAgICAgIH07CiAgICAgIFNjaGVkdWxlcjIubm93ID0gZGF0ZVRpbWVzdGFtcFByb3ZpZGVyXzEuZGF0ZVRpbWVzdGFtcFByb3ZpZGVyLm5vdzsKICAgICAgcmV0dXJuIFNjaGVkdWxlcjI7CiAgICB9KCk7CiAgICBleHBvcnRzMi5TY2hlZHVsZXIgPSBTY2hlZHVsZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9Bc3luY1NjaGVkdWxlci5qcwp2YXIgcmVxdWlyZV9Bc3luY1NjaGVkdWxlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXN5bmNTY2hlZHVsZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQXN5bmNTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgU2NoZWR1bGVyXzEgPSByZXF1aXJlX1NjaGVkdWxlcigpOwogICAgdmFyIEFzeW5jU2NoZWR1bGVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBc3luY1NjaGVkdWxlcjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIEFzeW5jU2NoZWR1bGVyMihTY2hlZHVsZXJBY3Rpb24sIG5vdykgewogICAgICAgIGlmIChub3cgPT09IHZvaWQgMCkgewogICAgICAgICAgbm93ID0gU2NoZWR1bGVyXzEuU2NoZWR1bGVyLm5vdzsKICAgICAgICB9CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgU2NoZWR1bGVyQWN0aW9uLCBub3cpIHx8IHRoaXM7CiAgICAgICAgX3RoaXMuYWN0aW9ucyA9IFtdOwogICAgICAgIF90aGlzLl9hY3RpdmUgPSBmYWxzZTsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQXN5bmNTY2hlZHVsZXIyLnByb3RvdHlwZS5mbHVzaCA9IGZ1bmN0aW9uKGFjdGlvbikgewogICAgICAgIHZhciBhY3Rpb25zID0gdGhpcy5hY3Rpb25zOwogICAgICAgIGlmICh0aGlzLl9hY3RpdmUpIHsKICAgICAgICAgIGFjdGlvbnMucHVzaChhY3Rpb24pOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB2YXIgZXJyb3I7CiAgICAgICAgdGhpcy5fYWN0aXZlID0gdHJ1ZTsKICAgICAgICBkbyB7CiAgICAgICAgICBpZiAoZXJyb3IgPSBhY3Rpb24uZXhlY3V0ZShhY3Rpb24uc3RhdGUsIGFjdGlvbi5kZWxheSkpIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfSB3aGlsZSAoYWN0aW9uID0gYWN0aW9ucy5zaGlmdCgpKTsKICAgICAgICB0aGlzLl9hY3RpdmUgPSBmYWxzZTsKICAgICAgICBpZiAoZXJyb3IpIHsKICAgICAgICAgIHdoaWxlIChhY3Rpb24gPSBhY3Rpb25zLnNoaWZ0KCkpIHsKICAgICAgICAgICAgYWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlcnJvcjsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBBc3luY1NjaGVkdWxlcjI7CiAgICB9KFNjaGVkdWxlcl8xLlNjaGVkdWxlcik7CiAgICBleHBvcnRzMi5Bc3luY1NjaGVkdWxlciA9IEFzeW5jU2NoZWR1bGVyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQXNhcFNjaGVkdWxlci5qcwp2YXIgcmVxdWlyZV9Bc2FwU2NoZWR1bGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9Bc2FwU2NoZWR1bGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkFzYXBTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgQXN5bmNTY2hlZHVsZXJfMSA9IHJlcXVpcmVfQXN5bmNTY2hlZHVsZXIoKTsKICAgIHZhciBBc2FwU2NoZWR1bGVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBc2FwU2NoZWR1bGVyMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gQXNhcFNjaGVkdWxlcjIoKSB7CiAgICAgICAgcmV0dXJuIF9zdXBlciAhPT0gbnVsbCAmJiBfc3VwZXIuYXBwbHkodGhpcywgYXJndW1lbnRzKSB8fCB0aGlzOwogICAgICB9CiAgICAgIEFzYXBTY2hlZHVsZXIyLnByb3RvdHlwZS5mbHVzaCA9IGZ1bmN0aW9uKGFjdGlvbikgewogICAgICAgIHRoaXMuX2FjdGl2ZSA9IHRydWU7CiAgICAgICAgdmFyIGZsdXNoSWQgPSB0aGlzLl9zY2hlZHVsZWQ7CiAgICAgICAgdGhpcy5fc2NoZWR1bGVkID0gdm9pZCAwOwogICAgICAgIHZhciBhY3Rpb25zID0gdGhpcy5hY3Rpb25zOwogICAgICAgIHZhciBlcnJvcjsKICAgICAgICBhY3Rpb24gPSBhY3Rpb24gfHwgYWN0aW9ucy5zaGlmdCgpOwogICAgICAgIGRvIHsKICAgICAgICAgIGlmIChlcnJvciA9IGFjdGlvbi5leGVjdXRlKGFjdGlvbi5zdGF0ZSwgYWN0aW9uLmRlbGF5KSkgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9IHdoaWxlICgoYWN0aW9uID0gYWN0aW9uc1swXSkgJiYgYWN0aW9uLmlkID09PSBmbHVzaElkICYmIGFjdGlvbnMuc2hpZnQoKSk7CiAgICAgICAgdGhpcy5fYWN0aXZlID0gZmFsc2U7CiAgICAgICAgaWYgKGVycm9yKSB7CiAgICAgICAgICB3aGlsZSAoKGFjdGlvbiA9IGFjdGlvbnNbMF0pICYmIGFjdGlvbi5pZCA9PT0gZmx1c2hJZCAmJiBhY3Rpb25zLnNoaWZ0KCkpIHsKICAgICAgICAgICAgYWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlcnJvcjsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBBc2FwU2NoZWR1bGVyMjsKICAgIH0oQXN5bmNTY2hlZHVsZXJfMS5Bc3luY1NjaGVkdWxlcik7CiAgICBleHBvcnRzMi5Bc2FwU2NoZWR1bGVyID0gQXNhcFNjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2FzYXAuanMKdmFyIHJlcXVpcmVfYXNhcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvYXNhcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYXNhcCA9IGV4cG9ydHMyLmFzYXBTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgQXNhcEFjdGlvbl8xID0gcmVxdWlyZV9Bc2FwQWN0aW9uKCk7CiAgICB2YXIgQXNhcFNjaGVkdWxlcl8xID0gcmVxdWlyZV9Bc2FwU2NoZWR1bGVyKCk7CiAgICBleHBvcnRzMi5hc2FwU2NoZWR1bGVyID0gbmV3IEFzYXBTY2hlZHVsZXJfMS5Bc2FwU2NoZWR1bGVyKEFzYXBBY3Rpb25fMS5Bc2FwQWN0aW9uKTsKICAgIGV4cG9ydHMyLmFzYXAgPSBleHBvcnRzMi5hc2FwU2NoZWR1bGVyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvYXN5bmMuanMKdmFyIHJlcXVpcmVfYXN5bmMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2FzeW5jLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hc3luYyA9IGV4cG9ydHMyLmFzeW5jU2NoZWR1bGVyID0gdm9pZCAwOwogICAgdmFyIEFzeW5jQWN0aW9uXzEgPSByZXF1aXJlX0FzeW5jQWN0aW9uKCk7CiAgICB2YXIgQXN5bmNTY2hlZHVsZXJfMSA9IHJlcXVpcmVfQXN5bmNTY2hlZHVsZXIoKTsKICAgIGV4cG9ydHMyLmFzeW5jU2NoZWR1bGVyID0gbmV3IEFzeW5jU2NoZWR1bGVyXzEuQXN5bmNTY2hlZHVsZXIoQXN5bmNBY3Rpb25fMS5Bc3luY0FjdGlvbik7CiAgICBleHBvcnRzMi5hc3luYyA9IGV4cG9ydHMyLmFzeW5jU2NoZWR1bGVyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvUXVldWVBY3Rpb24uanMKdmFyIHJlcXVpcmVfUXVldWVBY3Rpb24gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL1F1ZXVlQWN0aW9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlF1ZXVlQWN0aW9uID0gdm9pZCAwOwogICAgdmFyIEFzeW5jQWN0aW9uXzEgPSByZXF1aXJlX0FzeW5jQWN0aW9uKCk7CiAgICB2YXIgUXVldWVBY3Rpb24gPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKFF1ZXVlQWN0aW9uMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gUXVldWVBY3Rpb24yKHNjaGVkdWxlciwgd29yaykgewogICAgICAgIHZhciBfdGhpcyA9IF9zdXBlci5jYWxsKHRoaXMsIHNjaGVkdWxlciwgd29yaykgfHwgdGhpczsKICAgICAgICBfdGhpcy5zY2hlZHVsZXIgPSBzY2hlZHVsZXI7CiAgICAgICAgX3RoaXMud29yayA9IHdvcms7CiAgICAgICAgcmV0dXJuIF90aGlzOwogICAgICB9CiAgICAgIFF1ZXVlQWN0aW9uMi5wcm90b3R5cGUuc2NoZWR1bGUgPSBmdW5jdGlvbihzdGF0ZSwgZGVsYXkpIHsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAoZGVsYXkgPiAwKSB7CiAgICAgICAgICByZXR1cm4gX3N1cGVyLnByb3RvdHlwZS5zY2hlZHVsZS5jYWxsKHRoaXMsIHN0YXRlLCBkZWxheSk7CiAgICAgICAgfQogICAgICAgIHRoaXMuZGVsYXkgPSBkZWxheTsKICAgICAgICB0aGlzLnN0YXRlID0gc3RhdGU7CiAgICAgICAgdGhpcy5zY2hlZHVsZXIuZmx1c2godGhpcyk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH07CiAgICAgIFF1ZXVlQWN0aW9uMi5wcm90b3R5cGUuZXhlY3V0ZSA9IGZ1bmN0aW9uKHN0YXRlLCBkZWxheSkgewogICAgICAgIHJldHVybiBkZWxheSA+IDAgfHwgdGhpcy5jbG9zZWQgPyBfc3VwZXIucHJvdG90eXBlLmV4ZWN1dGUuY2FsbCh0aGlzLCBzdGF0ZSwgZGVsYXkpIDogdGhpcy5fZXhlY3V0ZShzdGF0ZSwgZGVsYXkpOwogICAgICB9OwogICAgICBRdWV1ZUFjdGlvbjIucHJvdG90eXBlLnJlcXVlc3RBc3luY0lkID0gZnVuY3Rpb24oc2NoZWR1bGVyLCBpZCwgZGVsYXkpIHsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAoZGVsYXkgIT0gbnVsbCAmJiBkZWxheSA+IDAgfHwgZGVsYXkgPT0gbnVsbCAmJiB0aGlzLmRlbGF5ID4gMCkgewogICAgICAgICAgcmV0dXJuIF9zdXBlci5wcm90b3R5cGUucmVxdWVzdEFzeW5jSWQuY2FsbCh0aGlzLCBzY2hlZHVsZXIsIGlkLCBkZWxheSk7CiAgICAgICAgfQogICAgICAgIHNjaGVkdWxlci5mbHVzaCh0aGlzKTsKICAgICAgICByZXR1cm4gMDsKICAgICAgfTsKICAgICAgcmV0dXJuIFF1ZXVlQWN0aW9uMjsKICAgIH0oQXN5bmNBY3Rpb25fMS5Bc3luY0FjdGlvbik7CiAgICBleHBvcnRzMi5RdWV1ZUFjdGlvbiA9IFF1ZXVlQWN0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvUXVldWVTY2hlZHVsZXIuanMKdmFyIHJlcXVpcmVfUXVldWVTY2hlZHVsZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL1F1ZXVlU2NoZWR1bGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZXh0ZW5kcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXh0ZW5kcyB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBleHRlbmRTdGF0aWNzID0gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGQyLl9fcHJvdG9fXyA9IGIyOwogICAgICAgIH0gfHwgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBmb3IgKHZhciBwIGluIGIyKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIyLCBwKSkgZDJbcF0gPSBiMltwXTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24oZCwgYikgewogICAgICAgIGlmICh0eXBlb2YgYiAhPT0gImZ1bmN0aW9uIiAmJiBiICE9PSBudWxsKQogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSAiICsgU3RyaW5nKGIpICsgIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7CiAgICAgICAgZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgICBmdW5jdGlvbiBfXygpIHsKICAgICAgICAgIHRoaXMuY29uc3RydWN0b3IgPSBkOwogICAgICAgIH0KICAgICAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7CiAgICAgIH07CiAgICB9KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlF1ZXVlU2NoZWR1bGVyID0gdm9pZCAwOwogICAgdmFyIEFzeW5jU2NoZWR1bGVyXzEgPSByZXF1aXJlX0FzeW5jU2NoZWR1bGVyKCk7CiAgICB2YXIgUXVldWVTY2hlZHVsZXIgPSBmdW5jdGlvbihfc3VwZXIpIHsKICAgICAgX19leHRlbmRzKFF1ZXVlU2NoZWR1bGVyMiwgX3N1cGVyKTsKICAgICAgZnVuY3Rpb24gUXVldWVTY2hlZHVsZXIyKCkgewogICAgICAgIHJldHVybiBfc3VwZXIgIT09IG51bGwgJiYgX3N1cGVyLmFwcGx5KHRoaXMsIGFyZ3VtZW50cykgfHwgdGhpczsKICAgICAgfQogICAgICByZXR1cm4gUXVldWVTY2hlZHVsZXIyOwogICAgfShBc3luY1NjaGVkdWxlcl8xLkFzeW5jU2NoZWR1bGVyKTsKICAgIGV4cG9ydHMyLlF1ZXVlU2NoZWR1bGVyID0gUXVldWVTY2hlZHVsZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9xdWV1ZS5qcwp2YXIgcmVxdWlyZV9xdWV1ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvcXVldWUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnF1ZXVlID0gZXhwb3J0czIucXVldWVTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgUXVldWVBY3Rpb25fMSA9IHJlcXVpcmVfUXVldWVBY3Rpb24oKTsKICAgIHZhciBRdWV1ZVNjaGVkdWxlcl8xID0gcmVxdWlyZV9RdWV1ZVNjaGVkdWxlcigpOwogICAgZXhwb3J0czIucXVldWVTY2hlZHVsZXIgPSBuZXcgUXVldWVTY2hlZHVsZXJfMS5RdWV1ZVNjaGVkdWxlcihRdWV1ZUFjdGlvbl8xLlF1ZXVlQWN0aW9uKTsKICAgIGV4cG9ydHMyLnF1ZXVlID0gZXhwb3J0czIucXVldWVTY2hlZHVsZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9BbmltYXRpb25GcmFtZUFjdGlvbi5qcwp2YXIgcmVxdWlyZV9BbmltYXRpb25GcmFtZUFjdGlvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZXIvQW5pbWF0aW9uRnJhbWVBY3Rpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19leHRlbmRzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHRlbmRzIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCB7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZDIuX19wcm90b19fID0gYjI7CiAgICAgICAgfSB8fCBmdW5jdGlvbihkMiwgYjIpIHsKICAgICAgICAgIGZvciAodmFyIHAgaW4gYjIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYjIsIHApKSBkMltwXSA9IGIyW3BdOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihkLCBiKSB7CiAgICAgICAgaWYgKHR5cGVvZiBiICE9PSAiZnVuY3Rpb24iICYmIGIgIT09IG51bGwpCiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIgKyBTdHJpbmcoYikgKyAiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGwiKTsKICAgICAgICBleHRlbmRTdGF0aWNzKGQsIGIpOwogICAgICAgIGZ1bmN0aW9uIF9fKCkgewogICAgICAgICAgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7CiAgICAgICAgfQogICAgICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTsKICAgICAgfTsKICAgIH0oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQW5pbWF0aW9uRnJhbWVBY3Rpb24gPSB2b2lkIDA7CiAgICB2YXIgQXN5bmNBY3Rpb25fMSA9IHJlcXVpcmVfQXN5bmNBY3Rpb24oKTsKICAgIHZhciBhbmltYXRpb25GcmFtZVByb3ZpZGVyXzEgPSByZXF1aXJlX2FuaW1hdGlvbkZyYW1lUHJvdmlkZXIoKTsKICAgIHZhciBBbmltYXRpb25GcmFtZUFjdGlvbiA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoQW5pbWF0aW9uRnJhbWVBY3Rpb24yLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBBbmltYXRpb25GcmFtZUFjdGlvbjIoc2NoZWR1bGVyLCB3b3JrKSB7CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgc2NoZWR1bGVyLCB3b3JrKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNjaGVkdWxlciA9IHNjaGVkdWxlcjsKICAgICAgICBfdGhpcy53b3JrID0gd29yazsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgQW5pbWF0aW9uRnJhbWVBY3Rpb24yLnByb3RvdHlwZS5yZXF1ZXN0QXN5bmNJZCA9IGZ1bmN0aW9uKHNjaGVkdWxlciwgaWQsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKGRlbGF5ICE9PSBudWxsICYmIGRlbGF5ID4gMCkgewogICAgICAgICAgcmV0dXJuIF9zdXBlci5wcm90b3R5cGUucmVxdWVzdEFzeW5jSWQuY2FsbCh0aGlzLCBzY2hlZHVsZXIsIGlkLCBkZWxheSk7CiAgICAgICAgfQogICAgICAgIHNjaGVkdWxlci5hY3Rpb25zLnB1c2godGhpcyk7CiAgICAgICAgcmV0dXJuIHNjaGVkdWxlci5fc2NoZWR1bGVkIHx8IChzY2hlZHVsZXIuX3NjaGVkdWxlZCA9IGFuaW1hdGlvbkZyYW1lUHJvdmlkZXJfMS5hbmltYXRpb25GcmFtZVByb3ZpZGVyLnJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBzY2hlZHVsZXIuZmx1c2godm9pZCAwKTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICAgIEFuaW1hdGlvbkZyYW1lQWN0aW9uMi5wcm90b3R5cGUucmVjeWNsZUFzeW5jSWQgPSBmdW5jdGlvbihzY2hlZHVsZXIsIGlkLCBkZWxheSkgewogICAgICAgIHZhciBfYTsKICAgICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgICAgZGVsYXkgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAoZGVsYXkgIT0gbnVsbCA/IGRlbGF5ID4gMCA6IHRoaXMuZGVsYXkgPiAwKSB7CiAgICAgICAgICByZXR1cm4gX3N1cGVyLnByb3RvdHlwZS5yZWN5Y2xlQXN5bmNJZC5jYWxsKHRoaXMsIHNjaGVkdWxlciwgaWQsIGRlbGF5KTsKICAgICAgICB9CiAgICAgICAgdmFyIGFjdGlvbnMgPSBzY2hlZHVsZXIuYWN0aW9uczsKICAgICAgICBpZiAoaWQgIT0gbnVsbCAmJiAoKF9hID0gYWN0aW9uc1thY3Rpb25zLmxlbmd0aCAtIDFdKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuaWQpICE9PSBpZCkgewogICAgICAgICAgYW5pbWF0aW9uRnJhbWVQcm92aWRlcl8xLmFuaW1hdGlvbkZyYW1lUHJvdmlkZXIuY2FuY2VsQW5pbWF0aW9uRnJhbWUoaWQpOwogICAgICAgICAgc2NoZWR1bGVyLl9zY2hlZHVsZWQgPSB2b2lkIDA7CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH07CiAgICAgIHJldHVybiBBbmltYXRpb25GcmFtZUFjdGlvbjI7CiAgICB9KEFzeW5jQWN0aW9uXzEuQXN5bmNBY3Rpb24pOwogICAgZXhwb3J0czIuQW5pbWF0aW9uRnJhbWVBY3Rpb24gPSBBbmltYXRpb25GcmFtZUFjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL0FuaW1hdGlvbkZyYW1lU2NoZWR1bGVyLmpzCnZhciByZXF1aXJlX0FuaW1hdGlvbkZyYW1lU2NoZWR1bGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9BbmltYXRpb25GcmFtZVNjaGVkdWxlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5BbmltYXRpb25GcmFtZVNjaGVkdWxlciA9IHZvaWQgMDsKICAgIHZhciBBc3luY1NjaGVkdWxlcl8xID0gcmVxdWlyZV9Bc3luY1NjaGVkdWxlcigpOwogICAgdmFyIEFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyID0gZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIF9fZXh0ZW5kcyhBbmltYXRpb25GcmFtZVNjaGVkdWxlcjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIEFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyMigpIHsKICAgICAgICByZXR1cm4gX3N1cGVyICE9PSBudWxsICYmIF9zdXBlci5hcHBseSh0aGlzLCBhcmd1bWVudHMpIHx8IHRoaXM7CiAgICAgIH0KICAgICAgQW5pbWF0aW9uRnJhbWVTY2hlZHVsZXIyLnByb3RvdHlwZS5mbHVzaCA9IGZ1bmN0aW9uKGFjdGlvbikgewogICAgICAgIHRoaXMuX2FjdGl2ZSA9IHRydWU7CiAgICAgICAgdmFyIGZsdXNoSWQgPSB0aGlzLl9zY2hlZHVsZWQ7CiAgICAgICAgdGhpcy5fc2NoZWR1bGVkID0gdm9pZCAwOwogICAgICAgIHZhciBhY3Rpb25zID0gdGhpcy5hY3Rpb25zOwogICAgICAgIHZhciBlcnJvcjsKICAgICAgICBhY3Rpb24gPSBhY3Rpb24gfHwgYWN0aW9ucy5zaGlmdCgpOwogICAgICAgIGRvIHsKICAgICAgICAgIGlmIChlcnJvciA9IGFjdGlvbi5leGVjdXRlKGFjdGlvbi5zdGF0ZSwgYWN0aW9uLmRlbGF5KSkgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9IHdoaWxlICgoYWN0aW9uID0gYWN0aW9uc1swXSkgJiYgYWN0aW9uLmlkID09PSBmbHVzaElkICYmIGFjdGlvbnMuc2hpZnQoKSk7CiAgICAgICAgdGhpcy5fYWN0aXZlID0gZmFsc2U7CiAgICAgICAgaWYgKGVycm9yKSB7CiAgICAgICAgICB3aGlsZSAoKGFjdGlvbiA9IGFjdGlvbnNbMF0pICYmIGFjdGlvbi5pZCA9PT0gZmx1c2hJZCAmJiBhY3Rpb25zLnNoaWZ0KCkpIHsKICAgICAgICAgICAgYWN0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlcnJvcjsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHJldHVybiBBbmltYXRpb25GcmFtZVNjaGVkdWxlcjI7CiAgICB9KEFzeW5jU2NoZWR1bGVyXzEuQXN5bmNTY2hlZHVsZXIpOwogICAgZXhwb3J0czIuQW5pbWF0aW9uRnJhbWVTY2hlZHVsZXIgPSBBbmltYXRpb25GcmFtZVNjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL2FuaW1hdGlvbkZyYW1lLmpzCnZhciByZXF1aXJlX2FuaW1hdGlvbkZyYW1lID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9hbmltYXRpb25GcmFtZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYW5pbWF0aW9uRnJhbWUgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVNjaGVkdWxlciA9IHZvaWQgMDsKICAgIHZhciBBbmltYXRpb25GcmFtZUFjdGlvbl8xID0gcmVxdWlyZV9BbmltYXRpb25GcmFtZUFjdGlvbigpOwogICAgdmFyIEFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyXzEgPSByZXF1aXJlX0FuaW1hdGlvbkZyYW1lU2NoZWR1bGVyKCk7CiAgICBleHBvcnRzMi5hbmltYXRpb25GcmFtZVNjaGVkdWxlciA9IG5ldyBBbmltYXRpb25GcmFtZVNjaGVkdWxlcl8xLkFuaW1hdGlvbkZyYW1lU2NoZWR1bGVyKEFuaW1hdGlvbkZyYW1lQWN0aW9uXzEuQW5pbWF0aW9uRnJhbWVBY3Rpb24pOwogICAgZXhwb3J0czIuYW5pbWF0aW9uRnJhbWUgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZVNjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVyL1ZpcnR1YWxUaW1lU2NoZWR1bGVyLmpzCnZhciByZXF1aXJlX1ZpcnR1YWxUaW1lU2NoZWR1bGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlci9WaXJ0dWFsVGltZVNjaGVkdWxlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2V4dGVuZHMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4dGVuZHMgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24oZDIsIGIyKSB7CiAgICAgICAgICBkMi5fX3Byb3RvX18gPSBiMjsKICAgICAgICB9IHx8IGZ1bmN0aW9uKGQyLCBiMikgewogICAgICAgICAgZm9yICh2YXIgcCBpbiBiMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiMiwgcCkpIGQyW3BdID0gYjJbcF07CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKGQsIGIpIHsKICAgICAgICBpZiAodHlwZW9mIGIgIT09ICJmdW5jdGlvbiIgJiYgYiAhPT0gbnVsbCkKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIiArIFN0cmluZyhiKSArICIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpOwogICAgICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7CiAgICAgICAgZnVuY3Rpb24gX18oKSB7CiAgICAgICAgICB0aGlzLmNvbnN0cnVjdG9yID0gZDsKICAgICAgICB9CiAgICAgICAgZC5wcm90b3R5cGUgPSBiID09PSBudWxsID8gT2JqZWN0LmNyZWF0ZShiKSA6IChfXy5wcm90b3R5cGUgPSBiLnByb3RvdHlwZSwgbmV3IF9fKCkpOwogICAgICB9OwogICAgfSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5WaXJ0dWFsQWN0aW9uID0gZXhwb3J0czIuVmlydHVhbFRpbWVTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgQXN5bmNBY3Rpb25fMSA9IHJlcXVpcmVfQXN5bmNBY3Rpb24oKTsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgQXN5bmNTY2hlZHVsZXJfMSA9IHJlcXVpcmVfQXN5bmNTY2hlZHVsZXIoKTsKICAgIHZhciBWaXJ0dWFsVGltZVNjaGVkdWxlciA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoVmlydHVhbFRpbWVTY2hlZHVsZXIyLCBfc3VwZXIpOwogICAgICBmdW5jdGlvbiBWaXJ0dWFsVGltZVNjaGVkdWxlcjIoc2NoZWR1bGVyQWN0aW9uQ3RvciwgbWF4RnJhbWVzKSB7CiAgICAgICAgaWYgKHNjaGVkdWxlckFjdGlvbkN0b3IgPT09IHZvaWQgMCkgewogICAgICAgICAgc2NoZWR1bGVyQWN0aW9uQ3RvciA9IFZpcnR1YWxBY3Rpb247CiAgICAgICAgfQogICAgICAgIGlmIChtYXhGcmFtZXMgPT09IHZvaWQgMCkgewogICAgICAgICAgbWF4RnJhbWVzID0gSW5maW5pdHk7CiAgICAgICAgfQogICAgICAgIHZhciBfdGhpcyA9IF9zdXBlci5jYWxsKHRoaXMsIHNjaGVkdWxlckFjdGlvbkN0b3IsIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIF90aGlzLmZyYW1lOwogICAgICAgIH0pIHx8IHRoaXM7CiAgICAgICAgX3RoaXMubWF4RnJhbWVzID0gbWF4RnJhbWVzOwogICAgICAgIF90aGlzLmZyYW1lID0gMDsKICAgICAgICBfdGhpcy5pbmRleCA9IC0xOwogICAgICAgIHJldHVybiBfdGhpczsKICAgICAgfQogICAgICBWaXJ0dWFsVGltZVNjaGVkdWxlcjIucHJvdG90eXBlLmZsdXNoID0gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF9hID0gdGhpcywgYWN0aW9ucyA9IF9hLmFjdGlvbnMsIG1heEZyYW1lcyA9IF9hLm1heEZyYW1lczsKICAgICAgICB2YXIgZXJyb3I7CiAgICAgICAgdmFyIGFjdGlvbjsKICAgICAgICB3aGlsZSAoKGFjdGlvbiA9IGFjdGlvbnNbMF0pICYmIGFjdGlvbi5kZWxheSA8PSBtYXhGcmFtZXMpIHsKICAgICAgICAgIGFjdGlvbnMuc2hpZnQoKTsKICAgICAgICAgIHRoaXMuZnJhbWUgPSBhY3Rpb24uZGVsYXk7CiAgICAgICAgICBpZiAoZXJyb3IgPSBhY3Rpb24uZXhlY3V0ZShhY3Rpb24uc3RhdGUsIGFjdGlvbi5kZWxheSkpIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChlcnJvcikgewogICAgICAgICAgd2hpbGUgKGFjdGlvbiA9IGFjdGlvbnMuc2hpZnQoKSkgewogICAgICAgICAgICBhY3Rpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH0KICAgICAgICAgIHRocm93IGVycm9yOwogICAgICAgIH0KICAgICAgfTsKICAgICAgVmlydHVhbFRpbWVTY2hlZHVsZXIyLmZyYW1lVGltZUZhY3RvciA9IDEwOwogICAgICByZXR1cm4gVmlydHVhbFRpbWVTY2hlZHVsZXIyOwogICAgfShBc3luY1NjaGVkdWxlcl8xLkFzeW5jU2NoZWR1bGVyKTsKICAgIGV4cG9ydHMyLlZpcnR1YWxUaW1lU2NoZWR1bGVyID0gVmlydHVhbFRpbWVTY2hlZHVsZXI7CiAgICB2YXIgVmlydHVhbEFjdGlvbiA9IGZ1bmN0aW9uKF9zdXBlcikgewogICAgICBfX2V4dGVuZHMoVmlydHVhbEFjdGlvbjIsIF9zdXBlcik7CiAgICAgIGZ1bmN0aW9uIFZpcnR1YWxBY3Rpb24yKHNjaGVkdWxlciwgd29yaywgaW5kZXgpIHsKICAgICAgICBpZiAoaW5kZXggPT09IHZvaWQgMCkgewogICAgICAgICAgaW5kZXggPSBzY2hlZHVsZXIuaW5kZXggKz0gMTsKICAgICAgICB9CiAgICAgICAgdmFyIF90aGlzID0gX3N1cGVyLmNhbGwodGhpcywgc2NoZWR1bGVyLCB3b3JrKSB8fCB0aGlzOwogICAgICAgIF90aGlzLnNjaGVkdWxlciA9IHNjaGVkdWxlcjsKICAgICAgICBfdGhpcy53b3JrID0gd29yazsKICAgICAgICBfdGhpcy5pbmRleCA9IGluZGV4OwogICAgICAgIF90aGlzLmFjdGl2ZSA9IHRydWU7CiAgICAgICAgX3RoaXMuaW5kZXggPSBzY2hlZHVsZXIuaW5kZXggPSBpbmRleDsKICAgICAgICByZXR1cm4gX3RoaXM7CiAgICAgIH0KICAgICAgVmlydHVhbEFjdGlvbjIucHJvdG90eXBlLnNjaGVkdWxlID0gZnVuY3Rpb24oc3RhdGUsIGRlbGF5KSB7CiAgICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICAgIGRlbGF5ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKE51bWJlci5pc0Zpbml0ZShkZWxheSkpIHsKICAgICAgICAgIGlmICghdGhpcy5pZCkgewogICAgICAgICAgICByZXR1cm4gX3N1cGVyLnByb3RvdHlwZS5zY2hlZHVsZS5jYWxsKHRoaXMsIHN0YXRlLCBkZWxheSk7CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLmFjdGl2ZSA9IGZhbHNlOwogICAgICAgICAgdmFyIGFjdGlvbiA9IG5ldyBWaXJ0dWFsQWN0aW9uMih0aGlzLnNjaGVkdWxlciwgdGhpcy53b3JrKTsKICAgICAgICAgIHRoaXMuYWRkKGFjdGlvbik7CiAgICAgICAgICByZXR1cm4gYWN0aW9uLnNjaGVkdWxlKHN0YXRlLCBkZWxheSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJldHVybiBTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24uRU1QVFk7CiAgICAgICAgfQogICAgICB9OwogICAgICBWaXJ0dWFsQWN0aW9uMi5wcm90b3R5cGUucmVxdWVzdEFzeW5jSWQgPSBmdW5jdGlvbihzY2hlZHVsZXIsIGlkLCBkZWxheSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIHRoaXMuZGVsYXkgPSBzY2hlZHVsZXIuZnJhbWUgKyBkZWxheTsKICAgICAgICB2YXIgYWN0aW9ucyA9IHNjaGVkdWxlci5hY3Rpb25zOwogICAgICAgIGFjdGlvbnMucHVzaCh0aGlzKTsKICAgICAgICBhY3Rpb25zLnNvcnQoVmlydHVhbEFjdGlvbjIuc29ydEFjdGlvbnMpOwogICAgICAgIHJldHVybiAxOwogICAgICB9OwogICAgICBWaXJ0dWFsQWN0aW9uMi5wcm90b3R5cGUucmVjeWNsZUFzeW5jSWQgPSBmdW5jdGlvbihzY2hlZHVsZXIsIGlkLCBkZWxheSkgewogICAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBkZWxheSA9IDA7CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH07CiAgICAgIFZpcnR1YWxBY3Rpb24yLnByb3RvdHlwZS5fZXhlY3V0ZSA9IGZ1bmN0aW9uKHN0YXRlLCBkZWxheSkgewogICAgICAgIGlmICh0aGlzLmFjdGl2ZSA9PT0gdHJ1ZSkgewogICAgICAgICAgcmV0dXJuIF9zdXBlci5wcm90b3R5cGUuX2V4ZWN1dGUuY2FsbCh0aGlzLCBzdGF0ZSwgZGVsYXkpOwogICAgICAgIH0KICAgICAgfTsKICAgICAgVmlydHVhbEFjdGlvbjIuc29ydEFjdGlvbnMgPSBmdW5jdGlvbihhLCBiKSB7CiAgICAgICAgaWYgKGEuZGVsYXkgPT09IGIuZGVsYXkpIHsKICAgICAgICAgIGlmIChhLmluZGV4ID09PSBiLmluZGV4KSB7CiAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICAgfSBlbHNlIGlmIChhLmluZGV4ID4gYi5pbmRleCkgewogICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgaWYgKGEuZGVsYXkgPiBiLmRlbGF5KSB7CiAgICAgICAgICByZXR1cm4gMTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgIH0KICAgICAgfTsKICAgICAgcmV0dXJuIFZpcnR1YWxBY3Rpb24yOwogICAgfShBc3luY0FjdGlvbl8xLkFzeW5jQWN0aW9uKTsKICAgIGV4cG9ydHMyLlZpcnR1YWxBY3Rpb24gPSBWaXJ0dWFsQWN0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2VtcHR5LmpzCnZhciByZXF1aXJlX2VtcHR5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZW1wdHkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmVtcHR5ID0gZXhwb3J0czIuRU1QVFkgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICBleHBvcnRzMi5FTVBUWSA9IG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgIHJldHVybiBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICB9KTsKICAgIGZ1bmN0aW9uIGVtcHR5KHNjaGVkdWxlcikgewogICAgICByZXR1cm4gc2NoZWR1bGVyID8gZW1wdHlTY2hlZHVsZWQoc2NoZWR1bGVyKSA6IGV4cG9ydHMyLkVNUFRZOwogICAgfQogICAgZXhwb3J0czIuZW1wdHkgPSBlbXB0eTsKICAgIGZ1bmN0aW9uIGVtcHR5U2NoZWR1bGVkKHNjaGVkdWxlcikgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gc2NoZWR1bGVyLnNjaGVkdWxlKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfSk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNTY2hlZHVsZXIuanMKdmFyIHJlcXVpcmVfaXNTY2hlZHVsZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc1NjaGVkdWxlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXNTY2hlZHVsZXIgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBpc1NjaGVkdWxlcih2YWx1ZSkgewogICAgICByZXR1cm4gdmFsdWUgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odmFsdWUuc2NoZWR1bGUpOwogICAgfQogICAgZXhwb3J0czIuaXNTY2hlZHVsZXIgPSBpc1NjaGVkdWxlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcmdzLmpzCnZhciByZXF1aXJlX2FyZ3MgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcmdzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5wb3BOdW1iZXIgPSBleHBvcnRzMi5wb3BTY2hlZHVsZXIgPSBleHBvcnRzMi5wb3BSZXN1bHRTZWxlY3RvciA9IHZvaWQgMDsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBpc1NjaGVkdWxlcl8xID0gcmVxdWlyZV9pc1NjaGVkdWxlcigpOwogICAgZnVuY3Rpb24gbGFzdChhcnIpIHsKICAgICAgcmV0dXJuIGFyclthcnIubGVuZ3RoIC0gMV07CiAgICB9CiAgICBmdW5jdGlvbiBwb3BSZXN1bHRTZWxlY3RvcihhcmdzKSB7CiAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihsYXN0KGFyZ3MpKSA/IGFyZ3MucG9wKCkgOiB2b2lkIDA7CiAgICB9CiAgICBleHBvcnRzMi5wb3BSZXN1bHRTZWxlY3RvciA9IHBvcFJlc3VsdFNlbGVjdG9yOwogICAgZnVuY3Rpb24gcG9wU2NoZWR1bGVyKGFyZ3MpIHsKICAgICAgcmV0dXJuIGlzU2NoZWR1bGVyXzEuaXNTY2hlZHVsZXIobGFzdChhcmdzKSkgPyBhcmdzLnBvcCgpIDogdm9pZCAwOwogICAgfQogICAgZXhwb3J0czIucG9wU2NoZWR1bGVyID0gcG9wU2NoZWR1bGVyOwogICAgZnVuY3Rpb24gcG9wTnVtYmVyKGFyZ3MsIGRlZmF1bHRWYWx1ZSkgewogICAgICByZXR1cm4gdHlwZW9mIGxhc3QoYXJncykgPT09ICJudW1iZXIiID8gYXJncy5wb3AoKSA6IGRlZmF1bHRWYWx1ZTsKICAgIH0KICAgIGV4cG9ydHMyLnBvcE51bWJlciA9IHBvcE51bWJlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0FycmF5TGlrZS5qcwp2YXIgcmVxdWlyZV9pc0FycmF5TGlrZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzQXJyYXlMaWtlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0FycmF5TGlrZSA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLmlzQXJyYXlMaWtlID0gZnVuY3Rpb24oeCkgewogICAgICByZXR1cm4geCAmJiB0eXBlb2YgeC5sZW5ndGggPT09ICJudW1iZXIiICYmIHR5cGVvZiB4ICE9PSAiZnVuY3Rpb24iOwogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc1Byb21pc2UuanMKdmFyIHJlcXVpcmVfaXNQcm9taXNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNQcm9taXNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc1Byb21pc2UgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBpc1Byb21pc2UodmFsdWUpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB2b2lkIDAgPyB2b2lkIDAgOiB2YWx1ZS50aGVuKTsKICAgIH0KICAgIGV4cG9ydHMyLmlzUHJvbWlzZSA9IGlzUHJvbWlzZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0ludGVyb3BPYnNlcnZhYmxlLmpzCnZhciByZXF1aXJlX2lzSW50ZXJvcE9ic2VydmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0ludGVyb3BPYnNlcnZhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0ludGVyb3BPYnNlcnZhYmxlID0gdm9pZCAwOwogICAgdmFyIG9ic2VydmFibGVfMSA9IHJlcXVpcmVfb2JzZXJ2YWJsZSgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gaXNJbnRlcm9wT2JzZXJ2YWJsZShpbnB1dCkgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oaW5wdXRbb2JzZXJ2YWJsZV8xLm9ic2VydmFibGVdKTsKICAgIH0KICAgIGV4cG9ydHMyLmlzSW50ZXJvcE9ic2VydmFibGUgPSBpc0ludGVyb3BPYnNlcnZhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzQXN5bmNJdGVyYWJsZS5qcwp2YXIgcmVxdWlyZV9pc0FzeW5jSXRlcmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0FzeW5jSXRlcmFibGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmlzQXN5bmNJdGVyYWJsZSA9IHZvaWQgMDsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIGZ1bmN0aW9uIGlzQXN5bmNJdGVyYWJsZShvYmopIHsKICAgICAgcmV0dXJuIFN5bWJvbC5hc3luY0l0ZXJhdG9yICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKG9iaiA9PT0gbnVsbCB8fCBvYmogPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9ialtTeW1ib2wuYXN5bmNJdGVyYXRvcl0pOwogICAgfQogICAgZXhwb3J0czIuaXNBc3luY0l0ZXJhYmxlID0gaXNBc3luY0l0ZXJhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL3Rocm93VW5vYnNlcnZhYmxlRXJyb3IuanMKdmFyIHJlcXVpcmVfdGhyb3dVbm9ic2VydmFibGVFcnJvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL3Rocm93VW5vYnNlcnZhYmxlRXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNyZWF0ZUludmFsaWRPYnNlcnZhYmxlVHlwZUVycm9yID0gdm9pZCAwOwogICAgZnVuY3Rpb24gY3JlYXRlSW52YWxpZE9ic2VydmFibGVUeXBlRXJyb3IoaW5wdXQpIHsKICAgICAgcmV0dXJuIG5ldyBUeXBlRXJyb3IoIllvdSBwcm92aWRlZCAiICsgKGlucHV0ICE9PSBudWxsICYmIHR5cGVvZiBpbnB1dCA9PT0gIm9iamVjdCIgPyAiYW4gaW52YWxpZCBvYmplY3QiIDogIiciICsgaW5wdXQgKyAiJyIpICsgIiB3aGVyZSBhIHN0cmVhbSB3YXMgZXhwZWN0ZWQuIFlvdSBjYW4gcHJvdmlkZSBhbiBPYnNlcnZhYmxlLCBQcm9taXNlLCBSZWFkYWJsZVN0cmVhbSwgQXJyYXksIEFzeW5jSXRlcmFibGUsIG9yIEl0ZXJhYmxlLiIpOwogICAgfQogICAgZXhwb3J0czIuY3JlYXRlSW52YWxpZE9ic2VydmFibGVUeXBlRXJyb3IgPSBjcmVhdGVJbnZhbGlkT2JzZXJ2YWJsZVR5cGVFcnJvcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc3ltYm9sL2l0ZXJhdG9yLmpzCnZhciByZXF1aXJlX2l0ZXJhdG9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3N5bWJvbC9pdGVyYXRvci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXRlcmF0b3IgPSBleHBvcnRzMi5nZXRTeW1ib2xJdGVyYXRvciA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGdldFN5bWJvbEl0ZXJhdG9yKCkgewogICAgICBpZiAodHlwZW9mIFN5bWJvbCAhPT0gImZ1bmN0aW9uIiB8fCAhU3ltYm9sLml0ZXJhdG9yKSB7CiAgICAgICAgcmV0dXJuICJAQGl0ZXJhdG9yIjsKICAgICAgfQogICAgICByZXR1cm4gU3ltYm9sLml0ZXJhdG9yOwogICAgfQogICAgZXhwb3J0czIuZ2V0U3ltYm9sSXRlcmF0b3IgPSBnZXRTeW1ib2xJdGVyYXRvcjsKICAgIGV4cG9ydHMyLml0ZXJhdG9yID0gZ2V0U3ltYm9sSXRlcmF0b3IoKTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0l0ZXJhYmxlLmpzCnZhciByZXF1aXJlX2lzSXRlcmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc0l0ZXJhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc0l0ZXJhYmxlID0gdm9pZCAwOwogICAgdmFyIGl0ZXJhdG9yXzEgPSByZXF1aXJlX2l0ZXJhdG9yKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBpc0l0ZXJhYmxlKGlucHV0KSB7CiAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihpbnB1dCA9PT0gbnVsbCB8fCBpbnB1dCA9PT0gdm9pZCAwID8gdm9pZCAwIDogaW5wdXRbaXRlcmF0b3JfMS5pdGVyYXRvcl0pOwogICAgfQogICAgZXhwb3J0czIuaXNJdGVyYWJsZSA9IGlzSXRlcmFibGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNSZWFkYWJsZVN0cmVhbUxpa2UuanMKdmFyIHJlcXVpcmVfaXNSZWFkYWJsZVN0cmVhbUxpa2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc1JlYWRhYmxlU3RyZWFtTGlrZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2dlbmVyYXRvciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZ2VuZXJhdG9yIHx8IGZ1bmN0aW9uKHRoaXNBcmcsIGJvZHkpIHsKICAgICAgdmFyIF8gPSB7IGxhYmVsOiAwLCBzZW50OiBmdW5jdGlvbigpIHsKICAgICAgICBpZiAodFswXSAmIDEpIHRocm93IHRbMV07CiAgICAgICAgcmV0dXJuIHRbMV07CiAgICAgIH0sIHRyeXM6IFtdLCBvcHM6IFtdIH0sIGYsIHksIHQsIGc7CiAgICAgIHJldHVybiBnID0geyBuZXh0OiB2ZXJiKDApLCAidGhyb3ciOiB2ZXJiKDEpLCAicmV0dXJuIjogdmVyYigyKSB9LCB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIChnW1N5bWJvbC5pdGVyYXRvcl0gPSBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfSksIGc7CiAgICAgIGZ1bmN0aW9uIHZlcmIobikgewogICAgICAgIHJldHVybiBmdW5jdGlvbih2KSB7CiAgICAgICAgICByZXR1cm4gc3RlcChbbiwgdl0pOwogICAgICAgIH07CiAgICAgIH0KICAgICAgZnVuY3Rpb24gc3RlcChvcCkgewogICAgICAgIGlmIChmKSB0aHJvdyBuZXcgVHlwZUVycm9yKCJHZW5lcmF0b3IgaXMgYWxyZWFkeSBleGVjdXRpbmcuIik7CiAgICAgICAgd2hpbGUgKF8pIHRyeSB7CiAgICAgICAgICBpZiAoZiA9IDEsIHkgJiYgKHQgPSBvcFswXSAmIDIgPyB5WyJyZXR1cm4iXSA6IG9wWzBdID8geVsidGhyb3ciXSB8fCAoKHQgPSB5WyJyZXR1cm4iXSkgJiYgdC5jYWxsKHkpLCAwKSA6IHkubmV4dCkgJiYgISh0ID0gdC5jYWxsKHksIG9wWzFdKSkuZG9uZSkgcmV0dXJuIHQ7CiAgICAgICAgICBpZiAoeSA9IDAsIHQpIG9wID0gW29wWzBdICYgMiwgdC52YWx1ZV07CiAgICAgICAgICBzd2l0Y2ggKG9wWzBdKSB7CiAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIHQgPSBvcDsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSA0OgogICAgICAgICAgICAgIF8ubGFiZWwrKzsKICAgICAgICAgICAgICByZXR1cm4geyB2YWx1ZTogb3BbMV0sIGRvbmU6IGZhbHNlIH07CiAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICBfLmxhYmVsKys7CiAgICAgICAgICAgICAgeSA9IG9wWzFdOwogICAgICAgICAgICAgIG9wID0gWzBdOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICBjYXNlIDc6CiAgICAgICAgICAgICAgb3AgPSBfLm9wcy5wb3AoKTsKICAgICAgICAgICAgICBfLnRyeXMucG9wKCk7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgaWYgKCEodCA9IF8udHJ5cywgdCA9IHQubGVuZ3RoID4gMCAmJiB0W3QubGVuZ3RoIC0gMV0pICYmIChvcFswXSA9PT0gNiB8fCBvcFswXSA9PT0gMikpIHsKICAgICAgICAgICAgICAgIF8gPSAwOwogICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChvcFswXSA9PT0gMyAmJiAoIXQgfHwgb3BbMV0gPiB0WzBdICYmIG9wWzFdIDwgdFszXSkpIHsKICAgICAgICAgICAgICAgIF8ubGFiZWwgPSBvcFsxXTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAob3BbMF0gPT09IDYgJiYgXy5sYWJlbCA8IHRbMV0pIHsKICAgICAgICAgICAgICAgIF8ubGFiZWwgPSB0WzFdOwogICAgICAgICAgICAgICAgdCA9IG9wOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0ICYmIF8ubGFiZWwgPCB0WzJdKSB7CiAgICAgICAgICAgICAgICBfLmxhYmVsID0gdFsyXTsKICAgICAgICAgICAgICAgIF8ub3BzLnB1c2gob3ApOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0WzJdKSBfLm9wcy5wb3AoKTsKICAgICAgICAgICAgICBfLnRyeXMucG9wKCk7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBvcCA9IGJvZHkuY2FsbCh0aGlzQXJnLCBfKTsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICBvcCA9IFs2LCBlXTsKICAgICAgICAgIHkgPSAwOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBmID0gdCA9IDA7CiAgICAgICAgfQogICAgICAgIGlmIChvcFswXSAmIDUpIHRocm93IG9wWzFdOwogICAgICAgIHJldHVybiB7IHZhbHVlOiBvcFswXSA/IG9wWzFdIDogdm9pZCAwLCBkb25lOiB0cnVlIH07CiAgICAgIH0KICAgIH07CiAgICB2YXIgX19hd2FpdCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fYXdhaXQgfHwgZnVuY3Rpb24odikgewogICAgICByZXR1cm4gdGhpcyBpbnN0YW5jZW9mIF9fYXdhaXQgPyAodGhpcy52ID0gdiwgdGhpcykgOiBuZXcgX19hd2FpdCh2KTsKICAgIH07CiAgICB2YXIgX19hc3luY0dlbmVyYXRvciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fYXN5bmNHZW5lcmF0b3IgfHwgZnVuY3Rpb24odGhpc0FyZywgX2FyZ3VtZW50cywgZ2VuZXJhdG9yKSB7CiAgICAgIGlmICghU3ltYm9sLmFzeW5jSXRlcmF0b3IpIHRocm93IG5ldyBUeXBlRXJyb3IoIlN5bWJvbC5hc3luY0l0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgICB2YXIgZyA9IGdlbmVyYXRvci5hcHBseSh0aGlzQXJnLCBfYXJndW1lbnRzIHx8IFtdKSwgaSwgcSA9IFtdOwogICAgICByZXR1cm4gaSA9IHt9LCB2ZXJiKCJuZXh0IiksIHZlcmIoInRocm93IiksIHZlcmIoInJldHVybiIpLCBpW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9LCBpOwogICAgICBmdW5jdGlvbiB2ZXJiKG4pIHsKICAgICAgICBpZiAoZ1tuXSkgaVtuXSA9IGZ1bmN0aW9uKHYpIHsKICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihhLCBiKSB7CiAgICAgICAgICAgIHEucHVzaChbbiwgdiwgYSwgYl0pID4gMSB8fCByZXN1bWUobiwgdik7CiAgICAgICAgICB9KTsKICAgICAgICB9OwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHJlc3VtZShuLCB2KSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIHN0ZXAoZ1tuXSh2KSk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgc2V0dGxlKHFbMF1bM10sIGUpOwogICAgICAgIH0KICAgICAgfQogICAgICBmdW5jdGlvbiBzdGVwKHIpIHsKICAgICAgICByLnZhbHVlIGluc3RhbmNlb2YgX19hd2FpdCA/IFByb21pc2UucmVzb2x2ZShyLnZhbHVlLnYpLnRoZW4oZnVsZmlsbCwgcmVqZWN0KSA6IHNldHRsZShxWzBdWzJdLCByKTsKICAgICAgfQogICAgICBmdW5jdGlvbiBmdWxmaWxsKHZhbHVlKSB7CiAgICAgICAgcmVzdW1lKCJuZXh0IiwgdmFsdWUpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHJlamVjdCh2YWx1ZSkgewogICAgICAgIHJlc3VtZSgidGhyb3ciLCB2YWx1ZSk7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gc2V0dGxlKGYsIHYpIHsKICAgICAgICBpZiAoZih2KSwgcS5zaGlmdCgpLCBxLmxlbmd0aCkgcmVzdW1lKHFbMF1bMF0sIHFbMF1bMV0pOwogICAgICB9CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc1JlYWRhYmxlU3RyZWFtTGlrZSA9IGV4cG9ydHMyLnJlYWRhYmxlU3RyZWFtTGlrZVRvQXN5bmNHZW5lcmF0b3IgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiByZWFkYWJsZVN0cmVhbUxpa2VUb0FzeW5jR2VuZXJhdG9yKHJlYWRhYmxlU3RyZWFtKSB7CiAgICAgIHJldHVybiBfX2FzeW5jR2VuZXJhdG9yKHRoaXMsIGFyZ3VtZW50cywgZnVuY3Rpb24gcmVhZGFibGVTdHJlYW1MaWtlVG9Bc3luY0dlbmVyYXRvcl8xKCkgewogICAgICAgIHZhciByZWFkZXIsIF9hLCB2YWx1ZSwgZG9uZTsKICAgICAgICByZXR1cm4gX19nZW5lcmF0b3IodGhpcywgZnVuY3Rpb24oX2IpIHsKICAgICAgICAgIHN3aXRjaCAoX2IubGFiZWwpIHsKICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgIHJlYWRlciA9IHJlYWRhYmxlU3RyZWFtLmdldFJlYWRlcigpOwogICAgICAgICAgICAgIF9iLmxhYmVsID0gMTsKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIF9iLnRyeXMucHVzaChbMSwgLCA5LCAxMF0pOwogICAgICAgICAgICAgIF9iLmxhYmVsID0gMjsKICAgICAgICAgICAgY2FzZSAyOgogICAgICAgICAgICAgIGlmIChmYWxzZSkgcmV0dXJuIFszLCA4XTsKICAgICAgICAgICAgICByZXR1cm4gWzQsIF9fYXdhaXQocmVhZGVyLnJlYWQoKSldOwogICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgX2EgPSBfYi5zZW50KCksIHZhbHVlID0gX2EudmFsdWUsIGRvbmUgPSBfYS5kb25lOwogICAgICAgICAgICAgIGlmICghZG9uZSkgcmV0dXJuIFszLCA1XTsKICAgICAgICAgICAgICByZXR1cm4gWzQsIF9fYXdhaXQodm9pZCAwKV07CiAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICByZXR1cm4gWzIsIF9iLnNlbnQoKV07CiAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICByZXR1cm4gWzQsIF9fYXdhaXQodmFsdWUpXTsKICAgICAgICAgICAgY2FzZSA2OgogICAgICAgICAgICAgIHJldHVybiBbNCwgX2Iuc2VudCgpXTsKICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIF9iLnNlbnQoKTsKICAgICAgICAgICAgICByZXR1cm4gWzMsIDJdOwogICAgICAgICAgICBjYXNlIDg6CiAgICAgICAgICAgICAgcmV0dXJuIFszLCAxMF07CiAgICAgICAgICAgIGNhc2UgOToKICAgICAgICAgICAgICByZWFkZXIucmVsZWFzZUxvY2soKTsKICAgICAgICAgICAgICByZXR1cm4gWzddOwogICAgICAgICAgICBjYXNlIDEwOgogICAgICAgICAgICAgIHJldHVybiBbMl07CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucmVhZGFibGVTdHJlYW1MaWtlVG9Bc3luY0dlbmVyYXRvciA9IHJlYWRhYmxlU3RyZWFtTGlrZVRvQXN5bmNHZW5lcmF0b3I7CiAgICBmdW5jdGlvbiBpc1JlYWRhYmxlU3RyZWFtTGlrZShvYmopIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKG9iaiA9PT0gbnVsbCB8fCBvYmogPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9iai5nZXRSZWFkZXIpOwogICAgfQogICAgZXhwb3J0czIuaXNSZWFkYWJsZVN0cmVhbUxpa2UgPSBpc1JlYWRhYmxlU3RyZWFtTGlrZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9pbm5lckZyb20uanMKdmFyIHJlcXVpcmVfaW5uZXJGcm9tID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvaW5uZXJGcm9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fYXdhaXRlciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fYXdhaXRlciB8fCBmdW5jdGlvbih0aGlzQXJnLCBfYXJndW1lbnRzLCBQLCBnZW5lcmF0b3IpIHsKICAgICAgZnVuY3Rpb24gYWRvcHQodmFsdWUpIHsKICAgICAgICByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBQID8gdmFsdWUgOiBuZXcgUChmdW5jdGlvbihyZXNvbHZlKSB7CiAgICAgICAgICByZXNvbHZlKHZhbHVlKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICByZXR1cm4gbmV3IChQIHx8IChQID0gUHJvbWlzZSkpKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkgewogICAgICAgIGZ1bmN0aW9uIGZ1bGZpbGxlZCh2YWx1ZSkgewogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgc3RlcChnZW5lcmF0b3IubmV4dCh2YWx1ZSkpOwogICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZWplY3QoZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHJlamVjdGVkKHZhbHVlKSB7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBzdGVwKGdlbmVyYXRvclsidGhyb3ciXSh2YWx1ZSkpOwogICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZWplY3QoZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHN0ZXAocmVzdWx0KSB7CiAgICAgICAgICByZXN1bHQuZG9uZSA/IHJlc29sdmUocmVzdWx0LnZhbHVlKSA6IGFkb3B0KHJlc3VsdC52YWx1ZSkudGhlbihmdWxmaWxsZWQsIHJlamVjdGVkKTsKICAgICAgICB9CiAgICAgICAgc3RlcCgoZ2VuZXJhdG9yID0gZ2VuZXJhdG9yLmFwcGx5KHRoaXNBcmcsIF9hcmd1bWVudHMgfHwgW10pKS5uZXh0KCkpOwogICAgICB9KTsKICAgIH07CiAgICB2YXIgX19nZW5lcmF0b3IgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2dlbmVyYXRvciB8fCBmdW5jdGlvbih0aGlzQXJnLCBib2R5KSB7CiAgICAgIHZhciBfID0geyBsYWJlbDogMCwgc2VudDogZnVuY3Rpb24oKSB7CiAgICAgICAgaWYgKHRbMF0gJiAxKSB0aHJvdyB0WzFdOwogICAgICAgIHJldHVybiB0WzFdOwogICAgICB9LCB0cnlzOiBbXSwgb3BzOiBbXSB9LCBmLCB5LCB0LCBnOwogICAgICByZXR1cm4gZyA9IHsgbmV4dDogdmVyYigwKSwgInRocm93IjogdmVyYigxKSwgInJldHVybiI6IHZlcmIoMikgfSwgdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiAoZ1tTeW1ib2wuaXRlcmF0b3JdID0gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0pLCBnOwogICAgICBmdW5jdGlvbiB2ZXJiKG4pIHsKICAgICAgICByZXR1cm4gZnVuY3Rpb24odikgewogICAgICAgICAgcmV0dXJuIHN0ZXAoW24sIHZdKTsKICAgICAgICB9OwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHN0ZXAob3ApIHsKICAgICAgICBpZiAoZikgdGhyb3cgbmV3IFR5cGVFcnJvcigiR2VuZXJhdG9yIGlzIGFscmVhZHkgZXhlY3V0aW5nLiIpOwogICAgICAgIHdoaWxlIChfKSB0cnkgewogICAgICAgICAgaWYgKGYgPSAxLCB5ICYmICh0ID0gb3BbMF0gJiAyID8geVsicmV0dXJuIl0gOiBvcFswXSA/IHlbInRocm93Il0gfHwgKCh0ID0geVsicmV0dXJuIl0pICYmIHQuY2FsbCh5KSwgMCkgOiB5Lm5leHQpICYmICEodCA9IHQuY2FsbCh5LCBvcFsxXSkpLmRvbmUpIHJldHVybiB0OwogICAgICAgICAgaWYgKHkgPSAwLCB0KSBvcCA9IFtvcFswXSAmIDIsIHQudmFsdWVdOwogICAgICAgICAgc3dpdGNoIChvcFswXSkgewogICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICB0ID0gb3A7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICBfLmxhYmVsKys7CiAgICAgICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG9wWzFdLCBkb25lOiBmYWxzZSB9OwogICAgICAgICAgICBjYXNlIDU6CiAgICAgICAgICAgICAgXy5sYWJlbCsrOwogICAgICAgICAgICAgIHkgPSBvcFsxXTsKICAgICAgICAgICAgICBvcCA9IFswXTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIG9wID0gXy5vcHMucG9wKCk7CiAgICAgICAgICAgICAgXy50cnlzLnBvcCgpOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgIGlmICghKHQgPSBfLnRyeXMsIHQgPSB0Lmxlbmd0aCA+IDAgJiYgdFt0Lmxlbmd0aCAtIDFdKSAmJiAob3BbMF0gPT09IDYgfHwgb3BbMF0gPT09IDIpKSB7CiAgICAgICAgICAgICAgICBfID0gMDsKICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAob3BbMF0gPT09IDMgJiYgKCF0IHx8IG9wWzFdID4gdFswXSAmJiBvcFsxXSA8IHRbM10pKSB7CiAgICAgICAgICAgICAgICBfLmxhYmVsID0gb3BbMV07CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKG9wWzBdID09PSA2ICYmIF8ubGFiZWwgPCB0WzFdKSB7CiAgICAgICAgICAgICAgICBfLmxhYmVsID0gdFsxXTsKICAgICAgICAgICAgICAgIHQgPSBvcDsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAodCAmJiBfLmxhYmVsIDwgdFsyXSkgewogICAgICAgICAgICAgICAgXy5sYWJlbCA9IHRbMl07CiAgICAgICAgICAgICAgICBfLm9wcy5wdXNoKG9wKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAodFsyXSkgXy5vcHMucG9wKCk7CiAgICAgICAgICAgICAgXy50cnlzLnBvcCgpOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgb3AgPSBib2R5LmNhbGwodGhpc0FyZywgXyk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgb3AgPSBbNiwgZV07CiAgICAgICAgICB5ID0gMDsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgZiA9IHQgPSAwOwogICAgICAgIH0KICAgICAgICBpZiAob3BbMF0gJiA1KSB0aHJvdyBvcFsxXTsKICAgICAgICByZXR1cm4geyB2YWx1ZTogb3BbMF0gPyBvcFsxXSA6IHZvaWQgMCwgZG9uZTogdHJ1ZSB9OwogICAgICB9CiAgICB9OwogICAgdmFyIF9fYXN5bmNWYWx1ZXMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2FzeW5jVmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgaWYgKCFTeW1ib2wuYXN5bmNJdGVyYXRvcikgdGhyb3cgbmV3IFR5cGVFcnJvcigiU3ltYm9sLmFzeW5jSXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICAgIHZhciBtID0gb1tTeW1ib2wuYXN5bmNJdGVyYXRvcl0sIGk7CiAgICAgIHJldHVybiBtID8gbS5jYWxsKG8pIDogKG8gPSB0eXBlb2YgX192YWx1ZXMgPT09ICJmdW5jdGlvbiIgPyBfX3ZhbHVlcyhvKSA6IG9bU3ltYm9sLml0ZXJhdG9yXSgpLCBpID0ge30sIHZlcmIoIm5leHQiKSwgdmVyYigidGhyb3ciKSwgdmVyYigicmV0dXJuIiksIGlbU3ltYm9sLmFzeW5jSXRlcmF0b3JdID0gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0sIGkpOwogICAgICBmdW5jdGlvbiB2ZXJiKG4pIHsKICAgICAgICBpW25dID0gb1tuXSAmJiBmdW5jdGlvbih2KSB7CiAgICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24ocmVzb2x2ZSwgcmVqZWN0KSB7CiAgICAgICAgICAgIHYgPSBvW25dKHYpLCBzZXR0bGUocmVzb2x2ZSwgcmVqZWN0LCB2LmRvbmUsIHYudmFsdWUpOwogICAgICAgICAgfSk7CiAgICAgICAgfTsKICAgICAgfQogICAgICBmdW5jdGlvbiBzZXR0bGUocmVzb2x2ZSwgcmVqZWN0LCBkLCB2KSB7CiAgICAgICAgUHJvbWlzZS5yZXNvbHZlKHYpLnRoZW4oZnVuY3Rpb24odjIpIHsKICAgICAgICAgIHJlc29sdmUoeyB2YWx1ZTogdjIsIGRvbmU6IGQgfSk7CiAgICAgICAgfSwgcmVqZWN0KTsKICAgICAgfQogICAgfTsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZnJvbVJlYWRhYmxlU3RyZWFtTGlrZSA9IGV4cG9ydHMyLmZyb21Bc3luY0l0ZXJhYmxlID0gZXhwb3J0czIuZnJvbUl0ZXJhYmxlID0gZXhwb3J0czIuZnJvbVByb21pc2UgPSBleHBvcnRzMi5mcm9tQXJyYXlMaWtlID0gZXhwb3J0czIuZnJvbUludGVyb3BPYnNlcnZhYmxlID0gZXhwb3J0czIuaW5uZXJGcm9tID0gdm9pZCAwOwogICAgdmFyIGlzQXJyYXlMaWtlXzEgPSByZXF1aXJlX2lzQXJyYXlMaWtlKCk7CiAgICB2YXIgaXNQcm9taXNlXzEgPSByZXF1aXJlX2lzUHJvbWlzZSgpOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlzSW50ZXJvcE9ic2VydmFibGVfMSA9IHJlcXVpcmVfaXNJbnRlcm9wT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlzQXN5bmNJdGVyYWJsZV8xID0gcmVxdWlyZV9pc0FzeW5jSXRlcmFibGUoKTsKICAgIHZhciB0aHJvd1Vub2JzZXJ2YWJsZUVycm9yXzEgPSByZXF1aXJlX3Rocm93VW5vYnNlcnZhYmxlRXJyb3IoKTsKICAgIHZhciBpc0l0ZXJhYmxlXzEgPSByZXF1aXJlX2lzSXRlcmFibGUoKTsKICAgIHZhciBpc1JlYWRhYmxlU3RyZWFtTGlrZV8xID0gcmVxdWlyZV9pc1JlYWRhYmxlU3RyZWFtTGlrZSgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgdmFyIHJlcG9ydFVuaGFuZGxlZEVycm9yXzEgPSByZXF1aXJlX3JlcG9ydFVuaGFuZGxlZEVycm9yKCk7CiAgICB2YXIgb2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9vYnNlcnZhYmxlKCk7CiAgICBmdW5jdGlvbiBpbm5lckZyb20oaW5wdXQpIHsKICAgICAgaWYgKGlucHV0IGluc3RhbmNlb2YgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUpIHsKICAgICAgICByZXR1cm4gaW5wdXQ7CiAgICAgIH0KICAgICAgaWYgKGlucHV0ICE9IG51bGwpIHsKICAgICAgICBpZiAoaXNJbnRlcm9wT2JzZXJ2YWJsZV8xLmlzSW50ZXJvcE9ic2VydmFibGUoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gZnJvbUludGVyb3BPYnNlcnZhYmxlKGlucHV0KTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzQXJyYXlMaWtlXzEuaXNBcnJheUxpa2UoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gZnJvbUFycmF5TGlrZShpbnB1dCk7CiAgICAgICAgfQogICAgICAgIGlmIChpc1Byb21pc2VfMS5pc1Byb21pc2UoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gZnJvbVByb21pc2UoaW5wdXQpOwogICAgICAgIH0KICAgICAgICBpZiAoaXNBc3luY0l0ZXJhYmxlXzEuaXNBc3luY0l0ZXJhYmxlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIGZyb21Bc3luY0l0ZXJhYmxlKGlucHV0KTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzSXRlcmFibGVfMS5pc0l0ZXJhYmxlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIGZyb21JdGVyYWJsZShpbnB1dCk7CiAgICAgICAgfQogICAgICAgIGlmIChpc1JlYWRhYmxlU3RyZWFtTGlrZV8xLmlzUmVhZGFibGVTdHJlYW1MaWtlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIGZyb21SZWFkYWJsZVN0cmVhbUxpa2UoaW5wdXQpOwogICAgICAgIH0KICAgICAgfQogICAgICB0aHJvdyB0aHJvd1Vub2JzZXJ2YWJsZUVycm9yXzEuY3JlYXRlSW52YWxpZE9ic2VydmFibGVUeXBlRXJyb3IoaW5wdXQpOwogICAgfQogICAgZXhwb3J0czIuaW5uZXJGcm9tID0gaW5uZXJGcm9tOwogICAgZnVuY3Rpb24gZnJvbUludGVyb3BPYnNlcnZhYmxlKG9iaikgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgb2JzID0gb2JqW29ic2VydmFibGVfMS5vYnNlcnZhYmxlXSgpOwogICAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihvYnMuc3Vic2NyaWJlKSkgewogICAgICAgICAgcmV0dXJuIG9icy5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgfQogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIlByb3ZpZGVkIG9iamVjdCBkb2VzIG5vdCBjb3JyZWN0bHkgaW1wbGVtZW50IFN5bWJvbC5vYnNlcnZhYmxlIik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZnJvbUludGVyb3BPYnNlcnZhYmxlID0gZnJvbUludGVyb3BPYnNlcnZhYmxlOwogICAgZnVuY3Rpb24gZnJvbUFycmF5TGlrZShhcnJheSkgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGFycmF5Lmxlbmd0aCAmJiAhc3Vic2NyaWJlci5jbG9zZWQ7IGkrKykgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGFycmF5W2ldKTsKICAgICAgICB9CiAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21BcnJheUxpa2UgPSBmcm9tQXJyYXlMaWtlOwogICAgZnVuY3Rpb24gZnJvbVByb21pc2UocHJvbWlzZSkgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICBwcm9taXNlLnRoZW4oZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGlmICghc3Vic2NyaWJlci5jbG9zZWQpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKGVycikgewogICAgICAgICAgcmV0dXJuIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICB9KS50aGVuKG51bGwsIHJlcG9ydFVuaGFuZGxlZEVycm9yXzEucmVwb3J0VW5oYW5kbGVkRXJyb3IpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21Qcm9taXNlID0gZnJvbVByb21pc2U7CiAgICBmdW5jdGlvbiBmcm9tSXRlcmFibGUoaXRlcmFibGUpIHsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGVfMSwgX2E7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGZvciAodmFyIGl0ZXJhYmxlXzEgPSBfX3ZhbHVlcyhpdGVyYWJsZSksIGl0ZXJhYmxlXzFfMSA9IGl0ZXJhYmxlXzEubmV4dCgpOyAhaXRlcmFibGVfMV8xLmRvbmU7IGl0ZXJhYmxlXzFfMSA9IGl0ZXJhYmxlXzEubmV4dCgpKSB7CiAgICAgICAgICAgIHZhciB2YWx1ZSA9IGl0ZXJhYmxlXzFfMS52YWx1ZTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgaWYgKHN1YnNjcmliZXIuY2xvc2VkKSB7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgIGVfMSA9IHsgZXJyb3I6IGVfMV8xIH07CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIGlmIChpdGVyYWJsZV8xXzEgJiYgIWl0ZXJhYmxlXzFfMS5kb25lICYmIChfYSA9IGl0ZXJhYmxlXzEucmV0dXJuKSkgX2EuY2FsbChpdGVyYWJsZV8xKTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIGlmIChlXzEpIHRocm93IGVfMS5lcnJvcjsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21JdGVyYWJsZSA9IGZyb21JdGVyYWJsZTsKICAgIGZ1bmN0aW9uIGZyb21Bc3luY0l0ZXJhYmxlKGFzeW5jSXRlcmFibGUpIHsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgcHJvY2VzczIoYXN5bmNJdGVyYWJsZSwgc3Vic2NyaWJlcikuY2F0Y2goZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5lcnJvcihlcnIpOwogICAgICAgIH0pOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21Bc3luY0l0ZXJhYmxlID0gZnJvbUFzeW5jSXRlcmFibGU7CiAgICBmdW5jdGlvbiBmcm9tUmVhZGFibGVTdHJlYW1MaWtlKHJlYWRhYmxlU3RyZWFtKSB7CiAgICAgIHJldHVybiBmcm9tQXN5bmNJdGVyYWJsZShpc1JlYWRhYmxlU3RyZWFtTGlrZV8xLnJlYWRhYmxlU3RyZWFtTGlrZVRvQXN5bmNHZW5lcmF0b3IocmVhZGFibGVTdHJlYW0pKTsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21SZWFkYWJsZVN0cmVhbUxpa2UgPSBmcm9tUmVhZGFibGVTdHJlYW1MaWtlOwogICAgZnVuY3Rpb24gcHJvY2VzczIoYXN5bmNJdGVyYWJsZSwgc3Vic2NyaWJlcikgewogICAgICB2YXIgYXN5bmNJdGVyYWJsZV8xLCBhc3luY0l0ZXJhYmxlXzFfMTsKICAgICAgdmFyIGVfMiwgX2E7CiAgICAgIHJldHVybiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgIHZhciB2YWx1ZSwgZV8yXzE7CiAgICAgICAgcmV0dXJuIF9fZ2VuZXJhdG9yKHRoaXMsIGZ1bmN0aW9uKF9iKSB7CiAgICAgICAgICBzd2l0Y2ggKF9iLmxhYmVsKSB7CiAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgICBfYi50cnlzLnB1c2goWzAsIDUsIDYsIDExXSk7CiAgICAgICAgICAgICAgYXN5bmNJdGVyYWJsZV8xID0gX19hc3luY1ZhbHVlcyhhc3luY0l0ZXJhYmxlKTsKICAgICAgICAgICAgICBfYi5sYWJlbCA9IDE7CiAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICByZXR1cm4gWzQsIGFzeW5jSXRlcmFibGVfMS5uZXh0KCldOwogICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICAgaWYgKCEoYXN5bmNJdGVyYWJsZV8xXzEgPSBfYi5zZW50KCksICFhc3luY0l0ZXJhYmxlXzFfMS5kb25lKSkgcmV0dXJuIFszLCA0XTsKICAgICAgICAgICAgICB2YWx1ZSA9IGFzeW5jSXRlcmFibGVfMV8xLnZhbHVlOwogICAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAgICAgaWYgKHN1YnNjcmliZXIuY2xvc2VkKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gWzJdOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBfYi5sYWJlbCA9IDM7CiAgICAgICAgICAgIGNhc2UgMzoKICAgICAgICAgICAgICByZXR1cm4gWzMsIDFdOwogICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgcmV0dXJuIFszLCAxMV07CiAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICBlXzJfMSA9IF9iLnNlbnQoKTsKICAgICAgICAgICAgICBlXzIgPSB7IGVycm9yOiBlXzJfMSB9OwogICAgICAgICAgICAgIHJldHVybiBbMywgMTFdOwogICAgICAgICAgICBjYXNlIDY6CiAgICAgICAgICAgICAgX2IudHJ5cy5wdXNoKFs2LCAsIDksIDEwXSk7CiAgICAgICAgICAgICAgaWYgKCEoYXN5bmNJdGVyYWJsZV8xXzEgJiYgIWFzeW5jSXRlcmFibGVfMV8xLmRvbmUgJiYgKF9hID0gYXN5bmNJdGVyYWJsZV8xLnJldHVybikpKSByZXR1cm4gWzMsIDhdOwogICAgICAgICAgICAgIHJldHVybiBbNCwgX2EuY2FsbChhc3luY0l0ZXJhYmxlXzEpXTsKICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIF9iLnNlbnQoKTsKICAgICAgICAgICAgICBfYi5sYWJlbCA9IDg7CiAgICAgICAgICAgIGNhc2UgODoKICAgICAgICAgICAgICByZXR1cm4gWzMsIDEwXTsKICAgICAgICAgICAgY2FzZSA5OgogICAgICAgICAgICAgIGlmIChlXzIpIHRocm93IGVfMi5lcnJvcjsKICAgICAgICAgICAgICByZXR1cm4gWzddOwogICAgICAgICAgICBjYXNlIDEwOgogICAgICAgICAgICAgIHJldHVybiBbN107CiAgICAgICAgICAgIGNhc2UgMTE6CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICAgIHJldHVybiBbMl07CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2V4ZWN1dGVTY2hlZHVsZS5qcwp2YXIgcmVxdWlyZV9leGVjdXRlU2NoZWR1bGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9leGVjdXRlU2NoZWR1bGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmV4ZWN1dGVTY2hlZHVsZSA9IHZvaWQgMDsKICAgIGZ1bmN0aW9uIGV4ZWN1dGVTY2hlZHVsZShwYXJlbnRTdWJzY3JpcHRpb24sIHNjaGVkdWxlciwgd29yaywgZGVsYXksIHJlcGVhdCkgewogICAgICBpZiAoZGVsYXkgPT09IHZvaWQgMCkgewogICAgICAgIGRlbGF5ID0gMDsKICAgICAgfQogICAgICBpZiAocmVwZWF0ID09PSB2b2lkIDApIHsKICAgICAgICByZXBlYXQgPSBmYWxzZTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVTdWJzY3JpcHRpb24gPSBzY2hlZHVsZXIuc2NoZWR1bGUoZnVuY3Rpb24oKSB7CiAgICAgICAgd29yaygpOwogICAgICAgIGlmIChyZXBlYXQpIHsKICAgICAgICAgIHBhcmVudFN1YnNjcmlwdGlvbi5hZGQodGhpcy5zY2hlZHVsZShudWxsLCBkZWxheSkpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgfQogICAgICB9LCBkZWxheSk7CiAgICAgIHBhcmVudFN1YnNjcmlwdGlvbi5hZGQoc2NoZWR1bGVTdWJzY3JpcHRpb24pOwogICAgICBpZiAoIXJlcGVhdCkgewogICAgICAgIHJldHVybiBzY2hlZHVsZVN1YnNjcmlwdGlvbjsKICAgICAgfQogICAgfQogICAgZXhwb3J0czIuZXhlY3V0ZVNjaGVkdWxlID0gZXhlY3V0ZVNjaGVkdWxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvb2JzZXJ2ZU9uLmpzCnZhciByZXF1aXJlX29ic2VydmVPbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvb2JzZXJ2ZU9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5vYnNlcnZlT24gPSB2b2lkIDA7CiAgICB2YXIgZXhlY3V0ZVNjaGVkdWxlXzEgPSByZXF1aXJlX2V4ZWN1dGVTY2hlZHVsZSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIG9ic2VydmVPbihzY2hlZHVsZXIsIGRlbGF5KSB7CiAgICAgIGlmIChkZWxheSA9PT0gdm9pZCAwKSB7CiAgICAgICAgZGVsYXkgPSAwOwogICAgICB9CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgIH0sIGRlbGF5KTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgc2NoZWR1bGVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0sIGRlbGF5KTsKICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHJldHVybiBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgc2NoZWR1bGVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICAgIH0sIGRlbGF5KTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIub2JzZXJ2ZU9uID0gb2JzZXJ2ZU9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3Vic2NyaWJlT24uanMKdmFyIHJlcXVpcmVfc3Vic2NyaWJlT24gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3N1YnNjcmliZU9uLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zdWJzY3JpYmVPbiA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIGZ1bmN0aW9uIHN1YnNjcmliZU9uKHNjaGVkdWxlciwgZGVsYXkpIHsKICAgICAgaWYgKGRlbGF5ID09PSB2b2lkIDApIHsKICAgICAgICBkZWxheSA9IDA7CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHN1YnNjcmliZXIuYWRkKHNjaGVkdWxlci5zY2hlZHVsZShmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBzb3VyY2Uuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICAgIH0sIGRlbGF5KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc3Vic2NyaWJlT24gPSBzdWJzY3JpYmVPbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlT2JzZXJ2YWJsZS5qcwp2YXIgcmVxdWlyZV9zY2hlZHVsZU9ic2VydmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlT2JzZXJ2YWJsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2NoZWR1bGVPYnNlcnZhYmxlID0gdm9pZCAwOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBvYnNlcnZlT25fMSA9IHJlcXVpcmVfb2JzZXJ2ZU9uKCk7CiAgICB2YXIgc3Vic2NyaWJlT25fMSA9IHJlcXVpcmVfc3Vic2NyaWJlT24oKTsKICAgIGZ1bmN0aW9uIHNjaGVkdWxlT2JzZXJ2YWJsZShpbnB1dCwgc2NoZWR1bGVyKSB7CiAgICAgIHJldHVybiBpbm5lckZyb21fMS5pbm5lckZyb20oaW5wdXQpLnBpcGUoc3Vic2NyaWJlT25fMS5zdWJzY3JpYmVPbihzY2hlZHVsZXIpLCBvYnNlcnZlT25fMS5vYnNlcnZlT24oc2NoZWR1bGVyKSk7CiAgICB9CiAgICBleHBvcnRzMi5zY2hlZHVsZU9ic2VydmFibGUgPSBzY2hlZHVsZU9ic2VydmFibGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlZC9zY2hlZHVsZVByb21pc2UuanMKdmFyIHJlcXVpcmVfc2NoZWR1bGVQcm9taXNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlZC9zY2hlZHVsZVByb21pc2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNjaGVkdWxlUHJvbWlzZSA9IHZvaWQgMDsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgb2JzZXJ2ZU9uXzEgPSByZXF1aXJlX29ic2VydmVPbigpOwogICAgdmFyIHN1YnNjcmliZU9uXzEgPSByZXF1aXJlX3N1YnNjcmliZU9uKCk7CiAgICBmdW5jdGlvbiBzY2hlZHVsZVByb21pc2UoaW5wdXQsIHNjaGVkdWxlcikgewogICAgICByZXR1cm4gaW5uZXJGcm9tXzEuaW5uZXJGcm9tKGlucHV0KS5waXBlKHN1YnNjcmliZU9uXzEuc3Vic2NyaWJlT24oc2NoZWR1bGVyKSwgb2JzZXJ2ZU9uXzEub2JzZXJ2ZU9uKHNjaGVkdWxlcikpOwogICAgfQogICAgZXhwb3J0czIuc2NoZWR1bGVQcm9taXNlID0gc2NoZWR1bGVQcm9taXNlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVBcnJheS5qcwp2YXIgcmVxdWlyZV9zY2hlZHVsZUFycmF5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlZC9zY2hlZHVsZUFycmF5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zY2hlZHVsZUFycmF5ID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgZnVuY3Rpb24gc2NoZWR1bGVBcnJheShpbnB1dCwgc2NoZWR1bGVyKSB7CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpID0gMDsKICAgICAgICByZXR1cm4gc2NoZWR1bGVyLnNjaGVkdWxlKGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKGkgPT09IGlucHV0Lmxlbmd0aCkgewogICAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoaW5wdXRbaSsrXSk7CiAgICAgICAgICAgIGlmICghc3Vic2NyaWJlci5jbG9zZWQpIHsKICAgICAgICAgICAgICB0aGlzLnNjaGVkdWxlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zY2hlZHVsZUFycmF5ID0gc2NoZWR1bGVBcnJheTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlSXRlcmFibGUuanMKdmFyIHJlcXVpcmVfc2NoZWR1bGVJdGVyYWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9zY2hlZHVsZWQvc2NoZWR1bGVJdGVyYWJsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2NoZWR1bGVJdGVyYWJsZSA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBpdGVyYXRvcl8xID0gcmVxdWlyZV9pdGVyYXRvcigpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgdmFyIGV4ZWN1dGVTY2hlZHVsZV8xID0gcmVxdWlyZV9leGVjdXRlU2NoZWR1bGUoKTsKICAgIGZ1bmN0aW9uIHNjaGVkdWxlSXRlcmFibGUoaW5wdXQsIHNjaGVkdWxlcikgewogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaXRlcmF0b3I7CiAgICAgICAgZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnNjcmliZXIsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpdGVyYXRvciA9IGlucHV0W2l0ZXJhdG9yXzEuaXRlcmF0b3JdKCk7CiAgICAgICAgICBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgc2NoZWR1bGVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgdmFyIF9hOwogICAgICAgICAgICB2YXIgdmFsdWU7CiAgICAgICAgICAgIHZhciBkb25lOwogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgIF9hID0gaXRlcmF0b3IubmV4dCgpLCB2YWx1ZSA9IF9hLnZhbHVlLCBkb25lID0gX2EuZG9uZTsKICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5lcnJvcihlcnIpOwogICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoZG9uZSkgewogICAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LCAwLCB0cnVlKTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oaXRlcmF0b3IgPT09IG51bGwgfHwgaXRlcmF0b3IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGl0ZXJhdG9yLnJldHVybikgJiYgaXRlcmF0b3IucmV0dXJuKCk7CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zY2hlZHVsZUl0ZXJhYmxlID0gc2NoZWR1bGVJdGVyYWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlQXN5bmNJdGVyYWJsZS5qcwp2YXIgcmVxdWlyZV9zY2hlZHVsZUFzeW5jSXRlcmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlQXN5bmNJdGVyYWJsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2NoZWR1bGVBc3luY0l0ZXJhYmxlID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGV4ZWN1dGVTY2hlZHVsZV8xID0gcmVxdWlyZV9leGVjdXRlU2NoZWR1bGUoKTsKICAgIGZ1bmN0aW9uIHNjaGVkdWxlQXN5bmNJdGVyYWJsZShpbnB1dCwgc2NoZWR1bGVyKSB7CiAgICAgIGlmICghaW5wdXQpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkl0ZXJhYmxlIGNhbm5vdCBiZSBudWxsIik7CiAgICAgIH0KICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnNjcmliZXIsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgaXRlcmF0b3IgPSBpbnB1dFtTeW1ib2wuYXN5bmNJdGVyYXRvcl0oKTsKICAgICAgICAgIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpYmVyLCBzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICBpdGVyYXRvci5uZXh0KCkudGhlbihmdW5jdGlvbihyZXN1bHQpIHsKICAgICAgICAgICAgICBpZiAocmVzdWx0LmRvbmUpIHsKICAgICAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHJlc3VsdC52YWx1ZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKICAgICAgICAgIH0sIDAsIHRydWUpOwogICAgICAgIH0pOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVkdWxlQXN5bmNJdGVyYWJsZSA9IHNjaGVkdWxlQXN5bmNJdGVyYWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvc2NoZWR1bGVkL3NjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlLmpzCnZhciByZXF1aXJlX3NjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlZC9zY2hlZHVsZVJlYWRhYmxlU3RyZWFtTGlrZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2UgPSB2b2lkIDA7CiAgICB2YXIgc2NoZWR1bGVBc3luY0l0ZXJhYmxlXzEgPSByZXF1aXJlX3NjaGVkdWxlQXN5bmNJdGVyYWJsZSgpOwogICAgdmFyIGlzUmVhZGFibGVTdHJlYW1MaWtlXzEgPSByZXF1aXJlX2lzUmVhZGFibGVTdHJlYW1MaWtlKCk7CiAgICBmdW5jdGlvbiBzY2hlZHVsZVJlYWRhYmxlU3RyZWFtTGlrZShpbnB1dCwgc2NoZWR1bGVyKSB7CiAgICAgIHJldHVybiBzY2hlZHVsZUFzeW5jSXRlcmFibGVfMS5zY2hlZHVsZUFzeW5jSXRlcmFibGUoaXNSZWFkYWJsZVN0cmVhbUxpa2VfMS5yZWFkYWJsZVN0cmVhbUxpa2VUb0FzeW5jR2VuZXJhdG9yKGlucHV0KSwgc2NoZWR1bGVyKTsKICAgIH0KICAgIGV4cG9ydHMyLnNjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlID0gc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2U7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlZC9zY2hlZHVsZWQuanMKdmFyIHJlcXVpcmVfc2NoZWR1bGVkID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3NjaGVkdWxlZC9zY2hlZHVsZWQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNjaGVkdWxlZCA9IHZvaWQgMDsKICAgIHZhciBzY2hlZHVsZU9ic2VydmFibGVfMSA9IHJlcXVpcmVfc2NoZWR1bGVPYnNlcnZhYmxlKCk7CiAgICB2YXIgc2NoZWR1bGVQcm9taXNlXzEgPSByZXF1aXJlX3NjaGVkdWxlUHJvbWlzZSgpOwogICAgdmFyIHNjaGVkdWxlQXJyYXlfMSA9IHJlcXVpcmVfc2NoZWR1bGVBcnJheSgpOwogICAgdmFyIHNjaGVkdWxlSXRlcmFibGVfMSA9IHJlcXVpcmVfc2NoZWR1bGVJdGVyYWJsZSgpOwogICAgdmFyIHNjaGVkdWxlQXN5bmNJdGVyYWJsZV8xID0gcmVxdWlyZV9zY2hlZHVsZUFzeW5jSXRlcmFibGUoKTsKICAgIHZhciBpc0ludGVyb3BPYnNlcnZhYmxlXzEgPSByZXF1aXJlX2lzSW50ZXJvcE9ic2VydmFibGUoKTsKICAgIHZhciBpc1Byb21pc2VfMSA9IHJlcXVpcmVfaXNQcm9taXNlKCk7CiAgICB2YXIgaXNBcnJheUxpa2VfMSA9IHJlcXVpcmVfaXNBcnJheUxpa2UoKTsKICAgIHZhciBpc0l0ZXJhYmxlXzEgPSByZXF1aXJlX2lzSXRlcmFibGUoKTsKICAgIHZhciBpc0FzeW5jSXRlcmFibGVfMSA9IHJlcXVpcmVfaXNBc3luY0l0ZXJhYmxlKCk7CiAgICB2YXIgdGhyb3dVbm9ic2VydmFibGVFcnJvcl8xID0gcmVxdWlyZV90aHJvd1Vub2JzZXJ2YWJsZUVycm9yKCk7CiAgICB2YXIgaXNSZWFkYWJsZVN0cmVhbUxpa2VfMSA9IHJlcXVpcmVfaXNSZWFkYWJsZVN0cmVhbUxpa2UoKTsKICAgIHZhciBzY2hlZHVsZVJlYWRhYmxlU3RyZWFtTGlrZV8xID0gcmVxdWlyZV9zY2hlZHVsZVJlYWRhYmxlU3RyZWFtTGlrZSgpOwogICAgZnVuY3Rpb24gc2NoZWR1bGVkKGlucHV0LCBzY2hlZHVsZXIpIHsKICAgICAgaWYgKGlucHV0ICE9IG51bGwpIHsKICAgICAgICBpZiAoaXNJbnRlcm9wT2JzZXJ2YWJsZV8xLmlzSW50ZXJvcE9ic2VydmFibGUoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gc2NoZWR1bGVPYnNlcnZhYmxlXzEuc2NoZWR1bGVPYnNlcnZhYmxlKGlucHV0LCBzY2hlZHVsZXIpOwogICAgICAgIH0KICAgICAgICBpZiAoaXNBcnJheUxpa2VfMS5pc0FycmF5TGlrZShpbnB1dCkpIHsKICAgICAgICAgIHJldHVybiBzY2hlZHVsZUFycmF5XzEuc2NoZWR1bGVBcnJheShpbnB1dCwgc2NoZWR1bGVyKTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzUHJvbWlzZV8xLmlzUHJvbWlzZShpbnB1dCkpIHsKICAgICAgICAgIHJldHVybiBzY2hlZHVsZVByb21pc2VfMS5zY2hlZHVsZVByb21pc2UoaW5wdXQsIHNjaGVkdWxlcik7CiAgICAgICAgfQogICAgICAgIGlmIChpc0FzeW5jSXRlcmFibGVfMS5pc0FzeW5jSXRlcmFibGUoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gc2NoZWR1bGVBc3luY0l0ZXJhYmxlXzEuc2NoZWR1bGVBc3luY0l0ZXJhYmxlKGlucHV0LCBzY2hlZHVsZXIpOwogICAgICAgIH0KICAgICAgICBpZiAoaXNJdGVyYWJsZV8xLmlzSXRlcmFibGUoaW5wdXQpKSB7CiAgICAgICAgICByZXR1cm4gc2NoZWR1bGVJdGVyYWJsZV8xLnNjaGVkdWxlSXRlcmFibGUoaW5wdXQsIHNjaGVkdWxlcik7CiAgICAgICAgfQogICAgICAgIGlmIChpc1JlYWRhYmxlU3RyZWFtTGlrZV8xLmlzUmVhZGFibGVTdHJlYW1MaWtlKGlucHV0KSkgewogICAgICAgICAgcmV0dXJuIHNjaGVkdWxlUmVhZGFibGVTdHJlYW1MaWtlXzEuc2NoZWR1bGVSZWFkYWJsZVN0cmVhbUxpa2UoaW5wdXQsIHNjaGVkdWxlcik7CiAgICAgICAgfQogICAgICB9CiAgICAgIHRocm93IHRocm93VW5vYnNlcnZhYmxlRXJyb3JfMS5jcmVhdGVJbnZhbGlkT2JzZXJ2YWJsZVR5cGVFcnJvcihpbnB1dCk7CiAgICB9CiAgICBleHBvcnRzMi5zY2hlZHVsZWQgPSBzY2hlZHVsZWQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZnJvbS5qcwp2YXIgcmVxdWlyZV9mcm9tID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZnJvbS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZnJvbSA9IHZvaWQgMDsKICAgIHZhciBzY2hlZHVsZWRfMSA9IHJlcXVpcmVfc2NoZWR1bGVkKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gZnJvbShpbnB1dCwgc2NoZWR1bGVyKSB7CiAgICAgIHJldHVybiBzY2hlZHVsZXIgPyBzY2hlZHVsZWRfMS5zY2hlZHVsZWQoaW5wdXQsIHNjaGVkdWxlcikgOiBpbm5lckZyb21fMS5pbm5lckZyb20oaW5wdXQpOwogICAgfQogICAgZXhwb3J0czIuZnJvbSA9IGZyb207CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvb2YuanMKdmFyIHJlcXVpcmVfb2YgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9vZi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIub2YgPSB2b2lkIDA7CiAgICB2YXIgYXJnc18xID0gcmVxdWlyZV9hcmdzKCk7CiAgICB2YXIgZnJvbV8xID0gcmVxdWlyZV9mcm9tKCk7CiAgICBmdW5jdGlvbiBvZigpIHsKICAgICAgdmFyIGFyZ3MgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHNjaGVkdWxlciA9IGFyZ3NfMS5wb3BTY2hlZHVsZXIoYXJncyk7CiAgICAgIHJldHVybiBmcm9tXzEuZnJvbShhcmdzLCBzY2hlZHVsZXIpOwogICAgfQogICAgZXhwb3J0czIub2YgPSBvZjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS90aHJvd0Vycm9yLmpzCnZhciByZXF1aXJlX3Rocm93RXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS90aHJvd0Vycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50aHJvd0Vycm9yID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gdGhyb3dFcnJvcihlcnJvck9yRXJyb3JGYWN0b3J5LCBzY2hlZHVsZXIpIHsKICAgICAgdmFyIGVycm9yRmFjdG9yeSA9IGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKGVycm9yT3JFcnJvckZhY3RvcnkpID8gZXJyb3JPckVycm9yRmFjdG9yeSA6IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBlcnJvck9yRXJyb3JGYWN0b3J5OwogICAgICB9OwogICAgICB2YXIgaW5pdCA9IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5lcnJvcihlcnJvckZhY3RvcnkoKSk7CiAgICAgIH07CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoc2NoZWR1bGVyID8gZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHJldHVybiBzY2hlZHVsZXIuc2NoZWR1bGUoaW5pdCwgMCwgc3Vic2NyaWJlcik7CiAgICAgIH0gOiBpbml0KTsKICAgIH0KICAgIGV4cG9ydHMyLnRocm93RXJyb3IgPSB0aHJvd0Vycm9yOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9Ob3RpZmljYXRpb24uanMKdmFyIHJlcXVpcmVfTm90aWZpY2F0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL05vdGlmaWNhdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIub2JzZXJ2ZU5vdGlmaWNhdGlvbiA9IGV4cG9ydHMyLk5vdGlmaWNhdGlvbiA9IGV4cG9ydHMyLk5vdGlmaWNhdGlvbktpbmQgPSB2b2lkIDA7CiAgICB2YXIgZW1wdHlfMSA9IHJlcXVpcmVfZW1wdHkoKTsKICAgIHZhciBvZl8xID0gcmVxdWlyZV9vZigpOwogICAgdmFyIHRocm93RXJyb3JfMSA9IHJlcXVpcmVfdGhyb3dFcnJvcigpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgdmFyIE5vdGlmaWNhdGlvbktpbmQ7CiAgICAoZnVuY3Rpb24oTm90aWZpY2F0aW9uS2luZDIpIHsKICAgICAgTm90aWZpY2F0aW9uS2luZDJbIk5FWFQiXSA9ICJOIjsKICAgICAgTm90aWZpY2F0aW9uS2luZDJbIkVSUk9SIl0gPSAiRSI7CiAgICAgIE5vdGlmaWNhdGlvbktpbmQyWyJDT01QTEVURSJdID0gIkMiOwogICAgfSkoTm90aWZpY2F0aW9uS2luZCA9IGV4cG9ydHMyLk5vdGlmaWNhdGlvbktpbmQgfHwgKGV4cG9ydHMyLk5vdGlmaWNhdGlvbktpbmQgPSB7fSkpOwogICAgdmFyIE5vdGlmaWNhdGlvbiA9IGZ1bmN0aW9uKCkgewogICAgICBmdW5jdGlvbiBOb3RpZmljYXRpb24yKGtpbmQsIHZhbHVlLCBlcnJvcikgewogICAgICAgIHRoaXMua2luZCA9IGtpbmQ7CiAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlOwogICAgICAgIHRoaXMuZXJyb3IgPSBlcnJvcjsKICAgICAgICB0aGlzLmhhc1ZhbHVlID0ga2luZCA9PT0gIk4iOwogICAgICB9CiAgICAgIE5vdGlmaWNhdGlvbjIucHJvdG90eXBlLm9ic2VydmUgPSBmdW5jdGlvbihvYnNlcnZlcikgewogICAgICAgIHJldHVybiBvYnNlcnZlTm90aWZpY2F0aW9uKHRoaXMsIG9ic2VydmVyKTsKICAgICAgfTsKICAgICAgTm90aWZpY2F0aW9uMi5wcm90b3R5cGUuZG8gPSBmdW5jdGlvbihuZXh0SGFuZGxlciwgZXJyb3JIYW5kbGVyLCBjb21wbGV0ZUhhbmRsZXIpIHsKICAgICAgICB2YXIgX2EgPSB0aGlzLCBraW5kID0gX2Eua2luZCwgdmFsdWUgPSBfYS52YWx1ZSwgZXJyb3IgPSBfYS5lcnJvcjsKICAgICAgICByZXR1cm4ga2luZCA9PT0gIk4iID8gbmV4dEhhbmRsZXIgPT09IG51bGwgfHwgbmV4dEhhbmRsZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG5leHRIYW5kbGVyKHZhbHVlKSA6IGtpbmQgPT09ICJFIiA/IGVycm9ySGFuZGxlciA9PT0gbnVsbCB8fCBlcnJvckhhbmRsZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGVycm9ySGFuZGxlcihlcnJvcikgOiBjb21wbGV0ZUhhbmRsZXIgPT09IG51bGwgfHwgY29tcGxldGVIYW5kbGVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBjb21wbGV0ZUhhbmRsZXIoKTsKICAgICAgfTsKICAgICAgTm90aWZpY2F0aW9uMi5wcm90b3R5cGUuYWNjZXB0ID0gZnVuY3Rpb24obmV4dE9yT2JzZXJ2ZXIsIGVycm9yLCBjb21wbGV0ZSkgewogICAgICAgIHZhciBfYTsKICAgICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oKF9hID0gbmV4dE9yT2JzZXJ2ZXIpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5uZXh0KSA/IHRoaXMub2JzZXJ2ZShuZXh0T3JPYnNlcnZlcikgOiB0aGlzLmRvKG5leHRPck9ic2VydmVyLCBlcnJvciwgY29tcGxldGUpOwogICAgICB9OwogICAgICBOb3RpZmljYXRpb24yLnByb3RvdHlwZS50b09ic2VydmFibGUgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgX2EgPSB0aGlzLCBraW5kID0gX2Eua2luZCwgdmFsdWUgPSBfYS52YWx1ZSwgZXJyb3IgPSBfYS5lcnJvcjsKICAgICAgICB2YXIgcmVzdWx0ID0ga2luZCA9PT0gIk4iID8gb2ZfMS5vZih2YWx1ZSkgOiBraW5kID09PSAiRSIgPyB0aHJvd0Vycm9yXzEudGhyb3dFcnJvcihmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBlcnJvcjsKICAgICAgICB9KSA6IGtpbmQgPT09ICJDIiA/IGVtcHR5XzEuRU1QVFkgOiAwOwogICAgICAgIGlmICghcmVzdWx0KSB7CiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJVbmV4cGVjdGVkIG5vdGlmaWNhdGlvbiBraW5kICIgKyBraW5kKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgICAgTm90aWZpY2F0aW9uMi5jcmVhdGVOZXh0ID0gZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICByZXR1cm4gbmV3IE5vdGlmaWNhdGlvbjIoIk4iLCB2YWx1ZSk7CiAgICAgIH07CiAgICAgIE5vdGlmaWNhdGlvbjIuY3JlYXRlRXJyb3IgPSBmdW5jdGlvbihlcnIpIHsKICAgICAgICByZXR1cm4gbmV3IE5vdGlmaWNhdGlvbjIoIkUiLCB2b2lkIDAsIGVycik7CiAgICAgIH07CiAgICAgIE5vdGlmaWNhdGlvbjIuY3JlYXRlQ29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gTm90aWZpY2F0aW9uMi5jb21wbGV0ZU5vdGlmaWNhdGlvbjsKICAgICAgfTsKICAgICAgTm90aWZpY2F0aW9uMi5jb21wbGV0ZU5vdGlmaWNhdGlvbiA9IG5ldyBOb3RpZmljYXRpb24yKCJDIik7CiAgICAgIHJldHVybiBOb3RpZmljYXRpb24yOwogICAgfSgpOwogICAgZXhwb3J0czIuTm90aWZpY2F0aW9uID0gTm90aWZpY2F0aW9uOwogICAgZnVuY3Rpb24gb2JzZXJ2ZU5vdGlmaWNhdGlvbihub3RpZmljYXRpb24sIG9ic2VydmVyKSB7CiAgICAgIHZhciBfYSwgX2IsIF9jOwogICAgICB2YXIgX2QgPSBub3RpZmljYXRpb24sIGtpbmQgPSBfZC5raW5kLCB2YWx1ZSA9IF9kLnZhbHVlLCBlcnJvciA9IF9kLmVycm9yOwogICAgICBpZiAodHlwZW9mIGtpbmQgIT09ICJzdHJpbmciKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBub3RpZmljYXRpb24sIG1pc3NpbmcgImtpbmQiJyk7CiAgICAgIH0KICAgICAga2luZCA9PT0gIk4iID8gKF9hID0gb2JzZXJ2ZXIubmV4dCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmNhbGwob2JzZXJ2ZXIsIHZhbHVlKSA6IGtpbmQgPT09ICJFIiA/IChfYiA9IG9ic2VydmVyLmVycm9yKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IuY2FsbChvYnNlcnZlciwgZXJyb3IpIDogKF9jID0gb2JzZXJ2ZXIuY29tcGxldGUpID09PSBudWxsIHx8IF9jID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYy5jYWxsKG9ic2VydmVyKTsKICAgIH0KICAgIGV4cG9ydHMyLm9ic2VydmVOb3RpZmljYXRpb24gPSBvYnNlcnZlTm90aWZpY2F0aW9uOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzT2JzZXJ2YWJsZS5qcwp2YXIgcmVxdWlyZV9pc09ic2VydmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9pc09ic2VydmFibGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmlzT2JzZXJ2YWJsZSA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIGZ1bmN0aW9uIGlzT2JzZXJ2YWJsZShvYmopIHsKICAgICAgcmV0dXJuICEhb2JqICYmIChvYmogaW5zdGFuY2VvZiBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZSB8fCBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihvYmoubGlmdCkgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ob2JqLnN1YnNjcmliZSkpOwogICAgfQogICAgZXhwb3J0czIuaXNPYnNlcnZhYmxlID0gaXNPYnNlcnZhYmxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL0VtcHR5RXJyb3IuanMKdmFyIHJlcXVpcmVfRW1wdHlFcnJvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL0VtcHR5RXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkVtcHR5RXJyb3IgPSB2b2lkIDA7CiAgICB2YXIgY3JlYXRlRXJyb3JDbGFzc18xID0gcmVxdWlyZV9jcmVhdGVFcnJvckNsYXNzKCk7CiAgICBleHBvcnRzMi5FbXB0eUVycm9yID0gY3JlYXRlRXJyb3JDbGFzc18xLmNyZWF0ZUVycm9yQ2xhc3MoZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbiBFbXB0eUVycm9ySW1wbCgpIHsKICAgICAgICBfc3VwZXIodGhpcyk7CiAgICAgICAgdGhpcy5uYW1lID0gIkVtcHR5RXJyb3IiOwogICAgICAgIHRoaXMubWVzc2FnZSA9ICJubyBlbGVtZW50cyBpbiBzZXF1ZW5jZSI7CiAgICAgIH07CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvbGFzdFZhbHVlRnJvbS5qcwp2YXIgcmVxdWlyZV9sYXN0VmFsdWVGcm9tID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL2xhc3RWYWx1ZUZyb20uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmxhc3RWYWx1ZUZyb20gPSB2b2lkIDA7CiAgICB2YXIgRW1wdHlFcnJvcl8xID0gcmVxdWlyZV9FbXB0eUVycm9yKCk7CiAgICBmdW5jdGlvbiBsYXN0VmFsdWVGcm9tKHNvdXJjZSwgY29uZmlnKSB7CiAgICAgIHZhciBoYXNDb25maWcgPSB0eXBlb2YgY29uZmlnID09PSAib2JqZWN0IjsKICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkgewogICAgICAgIHZhciBfaGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICB2YXIgX3ZhbHVlOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoewogICAgICAgICAgbmV4dDogZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgICAgX3ZhbHVlID0gdmFsdWU7CiAgICAgICAgICAgIF9oYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICB9LAogICAgICAgICAgZXJyb3I6IHJlamVjdCwKICAgICAgICAgIGNvbXBsZXRlOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgaWYgKF9oYXNWYWx1ZSkgewogICAgICAgICAgICAgIHJlc29sdmUoX3ZhbHVlKTsKICAgICAgICAgICAgfSBlbHNlIGlmIChoYXNDb25maWcpIHsKICAgICAgICAgICAgICByZXNvbHZlKGNvbmZpZy5kZWZhdWx0VmFsdWUpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHJlamVjdChuZXcgRW1wdHlFcnJvcl8xLkVtcHR5RXJyb3IoKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5sYXN0VmFsdWVGcm9tID0gbGFzdFZhbHVlRnJvbTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvZmlyc3RWYWx1ZUZyb20uanMKdmFyIHJlcXVpcmVfZmlyc3RWYWx1ZUZyb20gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvZmlyc3RWYWx1ZUZyb20uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZpcnN0VmFsdWVGcm9tID0gdm9pZCAwOwogICAgdmFyIEVtcHR5RXJyb3JfMSA9IHJlcXVpcmVfRW1wdHlFcnJvcigpOwogICAgdmFyIFN1YnNjcmliZXJfMSA9IHJlcXVpcmVfU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gZmlyc3RWYWx1ZUZyb20oc291cmNlLCBjb25maWcpIHsKICAgICAgdmFyIGhhc0NvbmZpZyA9IHR5cGVvZiBjb25maWcgPT09ICJvYmplY3QiOwogICAgICByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24ocmVzb2x2ZSwgcmVqZWN0KSB7CiAgICAgICAgdmFyIHN1YnNjcmliZXIgPSBuZXcgU3Vic2NyaWJlcl8xLlNhZmVTdWJzY3JpYmVyKHsKICAgICAgICAgIG5leHQ6IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIHJlc29sdmUodmFsdWUpOwogICAgICAgICAgICBzdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9LAogICAgICAgICAgZXJyb3I6IHJlamVjdCwKICAgICAgICAgIGNvbXBsZXRlOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgaWYgKGhhc0NvbmZpZykgewogICAgICAgICAgICAgIHJlc29sdmUoY29uZmlnLmRlZmF1bHRWYWx1ZSk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmVqZWN0KG5ldyBFbXB0eUVycm9yXzEuRW1wdHlFcnJvcigpKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZmlyc3RWYWx1ZUZyb20gPSBmaXJzdFZhbHVlRnJvbTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9Bcmd1bWVudE91dE9mUmFuZ2VFcnJvci5qcwp2YXIgcmVxdWlyZV9Bcmd1bWVudE91dE9mUmFuZ2VFcnJvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL0FyZ3VtZW50T3V0T2ZSYW5nZUVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Bcmd1bWVudE91dE9mUmFuZ2VFcnJvciA9IHZvaWQgMDsKICAgIHZhciBjcmVhdGVFcnJvckNsYXNzXzEgPSByZXF1aXJlX2NyZWF0ZUVycm9yQ2xhc3MoKTsKICAgIGV4cG9ydHMyLkFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yID0gY3JlYXRlRXJyb3JDbGFzc18xLmNyZWF0ZUVycm9yQ2xhc3MoZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbiBBcmd1bWVudE91dE9mUmFuZ2VFcnJvckltcGwoKSB7CiAgICAgICAgX3N1cGVyKHRoaXMpOwogICAgICAgIHRoaXMubmFtZSA9ICJBcmd1bWVudE91dE9mUmFuZ2VFcnJvciI7CiAgICAgICAgdGhpcy5tZXNzYWdlID0gImFyZ3VtZW50IG91dCBvZiByYW5nZSI7CiAgICAgIH07CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9Ob3RGb3VuZEVycm9yLmpzCnZhciByZXF1aXJlX05vdEZvdW5kRXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9Ob3RGb3VuZEVycm9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Ob3RGb3VuZEVycm9yID0gdm9pZCAwOwogICAgdmFyIGNyZWF0ZUVycm9yQ2xhc3NfMSA9IHJlcXVpcmVfY3JlYXRlRXJyb3JDbGFzcygpOwogICAgZXhwb3J0czIuTm90Rm91bmRFcnJvciA9IGNyZWF0ZUVycm9yQ2xhc3NfMS5jcmVhdGVFcnJvckNsYXNzKGZ1bmN0aW9uKF9zdXBlcikgewogICAgICByZXR1cm4gZnVuY3Rpb24gTm90Rm91bmRFcnJvckltcGwobWVzc2FnZSkgewogICAgICAgIF9zdXBlcih0aGlzKTsKICAgICAgICB0aGlzLm5hbWUgPSAiTm90Rm91bmRFcnJvciI7CiAgICAgICAgdGhpcy5tZXNzYWdlID0gbWVzc2FnZTsKICAgICAgfTsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL1NlcXVlbmNlRXJyb3IuanMKdmFyIHJlcXVpcmVfU2VxdWVuY2VFcnJvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL1NlcXVlbmNlRXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlNlcXVlbmNlRXJyb3IgPSB2b2lkIDA7CiAgICB2YXIgY3JlYXRlRXJyb3JDbGFzc18xID0gcmVxdWlyZV9jcmVhdGVFcnJvckNsYXNzKCk7CiAgICBleHBvcnRzMi5TZXF1ZW5jZUVycm9yID0gY3JlYXRlRXJyb3JDbGFzc18xLmNyZWF0ZUVycm9yQ2xhc3MoZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbiBTZXF1ZW5jZUVycm9ySW1wbChtZXNzYWdlKSB7CiAgICAgICAgX3N1cGVyKHRoaXMpOwogICAgICAgIHRoaXMubmFtZSA9ICJTZXF1ZW5jZUVycm9yIjsKICAgICAgICB0aGlzLm1lc3NhZ2UgPSBtZXNzYWdlOwogICAgICB9OwogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvaXNEYXRlLmpzCnZhciByZXF1aXJlX2lzRGF0ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2lzRGF0ZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXNWYWxpZERhdGUgPSB2b2lkIDA7CiAgICBmdW5jdGlvbiBpc1ZhbGlkRGF0ZSh2YWx1ZSkgewogICAgICByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBEYXRlICYmICFpc05hTih2YWx1ZSk7CiAgICB9CiAgICBleHBvcnRzMi5pc1ZhbGlkRGF0ZSA9IGlzVmFsaWREYXRlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGltZW91dC5qcwp2YXIgcmVxdWlyZV90aW1lb3V0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aW1lb3V0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50aW1lb3V0ID0gZXhwb3J0czIuVGltZW91dEVycm9yID0gdm9pZCAwOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgaXNEYXRlXzEgPSByZXF1aXJlX2lzRGF0ZSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBjcmVhdGVFcnJvckNsYXNzXzEgPSByZXF1aXJlX2NyZWF0ZUVycm9yQ2xhc3MoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgZXhlY3V0ZVNjaGVkdWxlXzEgPSByZXF1aXJlX2V4ZWN1dGVTY2hlZHVsZSgpOwogICAgZXhwb3J0czIuVGltZW91dEVycm9yID0gY3JlYXRlRXJyb3JDbGFzc18xLmNyZWF0ZUVycm9yQ2xhc3MoZnVuY3Rpb24oX3N1cGVyKSB7CiAgICAgIHJldHVybiBmdW5jdGlvbiBUaW1lb3V0RXJyb3JJbXBsKGluZm8pIHsKICAgICAgICBpZiAoaW5mbyA9PT0gdm9pZCAwKSB7CiAgICAgICAgICBpbmZvID0gbnVsbDsKICAgICAgICB9CiAgICAgICAgX3N1cGVyKHRoaXMpOwogICAgICAgIHRoaXMubWVzc2FnZSA9ICJUaW1lb3V0IGhhcyBvY2N1cnJlZCI7CiAgICAgICAgdGhpcy5uYW1lID0gIlRpbWVvdXRFcnJvciI7CiAgICAgICAgdGhpcy5pbmZvID0gaW5mbzsKICAgICAgfTsKICAgIH0pOwogICAgZnVuY3Rpb24gdGltZW91dChjb25maWcsIHNjaGVkdWxlckFyZykgewogICAgICB2YXIgX2EgPSBpc0RhdGVfMS5pc1ZhbGlkRGF0ZShjb25maWcpID8geyBmaXJzdDogY29uZmlnIH0gOiB0eXBlb2YgY29uZmlnID09PSAibnVtYmVyIiA/IHsgZWFjaDogY29uZmlnIH0gOiBjb25maWcsIGZpcnN0ID0gX2EuZmlyc3QsIGVhY2ggPSBfYS5lYWNoLCBfYiA9IF9hLndpdGgsIF93aXRoID0gX2IgPT09IHZvaWQgMCA/IHRpbWVvdXRFcnJvckZhY3RvcnkgOiBfYiwgX2MgPSBfYS5zY2hlZHVsZXIsIHNjaGVkdWxlciA9IF9jID09PSB2b2lkIDAgPyBzY2hlZHVsZXJBcmcgIT09IG51bGwgJiYgc2NoZWR1bGVyQXJnICE9PSB2b2lkIDAgPyBzY2hlZHVsZXJBcmcgOiBhc3luY18xLmFzeW5jU2NoZWR1bGVyIDogX2MsIF9kID0gX2EubWV0YSwgbWV0YSA9IF9kID09PSB2b2lkIDAgPyBudWxsIDogX2Q7CiAgICAgIGlmIChmaXJzdCA9PSBudWxsICYmIGVhY2ggPT0gbnVsbCkgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIk5vIHRpbWVvdXQgcHJvdmlkZWQuIik7CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBvcmlnaW5hbFNvdXJjZVN1YnNjcmlwdGlvbjsKICAgICAgICB2YXIgdGltZXJTdWJzY3JpcHRpb247CiAgICAgICAgdmFyIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgdmFyIHNlZW4gPSAwOwogICAgICAgIHZhciBzdGFydFRpbWVyID0gZnVuY3Rpb24oZGVsYXkpIHsKICAgICAgICAgIHRpbWVyU3Vic2NyaXB0aW9uID0gZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnNjcmliZXIsIHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgb3JpZ2luYWxTb3VyY2VTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oX3dpdGgoewogICAgICAgICAgICAgICAgbWV0YSwKICAgICAgICAgICAgICAgIGxhc3RWYWx1ZSwKICAgICAgICAgICAgICAgIHNlZW4KICAgICAgICAgICAgICB9KSkuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0sIGRlbGF5KTsKICAgICAgICB9OwogICAgICAgIG9yaWdpbmFsU291cmNlU3Vic2NyaXB0aW9uID0gc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHRpbWVyU3Vic2NyaXB0aW9uID09PSBudWxsIHx8IHRpbWVyU3Vic2NyaXB0aW9uID09PSB2b2lkIDAgPyB2b2lkIDAgOiB0aW1lclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpOwogICAgICAgICAgc2VlbisrOwogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGxhc3RWYWx1ZSA9IHZhbHVlKTsKICAgICAgICAgIGVhY2ggPiAwICYmIHN0YXJ0VGltZXIoZWFjaCk7CiAgICAgICAgfSwgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKCEodGltZXJTdWJzY3JpcHRpb24gPT09IG51bGwgfHwgdGltZXJTdWJzY3JpcHRpb24gPT09IHZvaWQgMCA/IHZvaWQgMCA6IHRpbWVyU3Vic2NyaXB0aW9uLmNsb3NlZCkpIHsKICAgICAgICAgICAgdGltZXJTdWJzY3JpcHRpb24gPT09IG51bGwgfHwgdGltZXJTdWJzY3JpcHRpb24gPT09IHZvaWQgMCA/IHZvaWQgMCA6IHRpbWVyU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICB9CiAgICAgICAgICBsYXN0VmFsdWUgPSBudWxsOwogICAgICAgIH0pKTsKICAgICAgICAhc2VlbiAmJiBzdGFydFRpbWVyKGZpcnN0ICE9IG51bGwgPyB0eXBlb2YgZmlyc3QgPT09ICJudW1iZXIiID8gZmlyc3QgOiArZmlyc3QgLSBzY2hlZHVsZXIubm93KCkgOiBlYWNoKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50aW1lb3V0ID0gdGltZW91dDsKICAgIGZ1bmN0aW9uIHRpbWVvdXRFcnJvckZhY3RvcnkoaW5mbykgewogICAgICB0aHJvdyBuZXcgZXhwb3J0czIuVGltZW91dEVycm9yKGluZm8pOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWFwLmpzCnZhciByZXF1aXJlX21hcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWFwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5tYXAgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gbWFwKHByb2plY3QsIHRoaXNBcmcpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpbmRleCA9IDA7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChwcm9qZWN0LmNhbGwodGhpc0FyZywgdmFsdWUsIGluZGV4KyspKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIubWFwID0gbWFwOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL21hcE9uZU9yTWFueUFyZ3MuanMKdmFyIHJlcXVpcmVfbWFwT25lT3JNYW55QXJncyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL21hcE9uZU9yTWFueUFyZ3MuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1hcE9uZU9yTWFueUFyZ3MgPSB2b2lkIDA7CiAgICB2YXIgbWFwXzEgPSByZXF1aXJlX21hcCgpOwogICAgdmFyIGlzQXJyYXkgPSBBcnJheS5pc0FycmF5OwogICAgZnVuY3Rpb24gY2FsbE9yQXBwbHkoZm4sIGFyZ3MpIHsKICAgICAgcmV0dXJuIGlzQXJyYXkoYXJncykgPyBmbi5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW10sIF9fcmVhZChhcmdzKSkpIDogZm4oYXJncyk7CiAgICB9CiAgICBmdW5jdGlvbiBtYXBPbmVPck1hbnlBcmdzKGZuKSB7CiAgICAgIHJldHVybiBtYXBfMS5tYXAoZnVuY3Rpb24oYXJncykgewogICAgICAgIHJldHVybiBjYWxsT3JBcHBseShmbiwgYXJncyk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIubWFwT25lT3JNYW55QXJncyA9IG1hcE9uZU9yTWFueUFyZ3M7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvYmluZENhbGxiYWNrSW50ZXJuYWxzLmpzCnZhciByZXF1aXJlX2JpbmRDYWxsYmFja0ludGVybmFscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2JpbmRDYWxsYmFja0ludGVybmFscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYmluZENhbGxiYWNrSW50ZXJuYWxzID0gdm9pZCAwOwogICAgdmFyIGlzU2NoZWR1bGVyXzEgPSByZXF1aXJlX2lzU2NoZWR1bGVyKCk7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgc3Vic2NyaWJlT25fMSA9IHJlcXVpcmVfc3Vic2NyaWJlT24oKTsKICAgIHZhciBtYXBPbmVPck1hbnlBcmdzXzEgPSByZXF1aXJlX21hcE9uZU9yTWFueUFyZ3MoKTsKICAgIHZhciBvYnNlcnZlT25fMSA9IHJlcXVpcmVfb2JzZXJ2ZU9uKCk7CiAgICB2YXIgQXN5bmNTdWJqZWN0XzEgPSByZXF1aXJlX0FzeW5jU3ViamVjdCgpOwogICAgZnVuY3Rpb24gYmluZENhbGxiYWNrSW50ZXJuYWxzKGlzTm9kZVN0eWxlLCBjYWxsYmFja0Z1bmMsIHJlc3VsdFNlbGVjdG9yLCBzY2hlZHVsZXIpIHsKICAgICAgaWYgKHJlc3VsdFNlbGVjdG9yKSB7CiAgICAgICAgaWYgKGlzU2NoZWR1bGVyXzEuaXNTY2hlZHVsZXIocmVzdWx0U2VsZWN0b3IpKSB7CiAgICAgICAgICBzY2hlZHVsZXIgPSByZXN1bHRTZWxlY3RvcjsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gYmluZENhbGxiYWNrSW50ZXJuYWxzKGlzTm9kZVN0eWxlLCBjYWxsYmFja0Z1bmMsIHNjaGVkdWxlcikuYXBwbHkodGhpcywgYXJncykucGlwZShtYXBPbmVPck1hbnlBcmdzXzEubWFwT25lT3JNYW55QXJncyhyZXN1bHRTZWxlY3RvcikpOwogICAgICAgICAgfTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKHNjaGVkdWxlcikgewogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBhcmdzID0gW107CiAgICAgICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gYmluZENhbGxiYWNrSW50ZXJuYWxzKGlzTm9kZVN0eWxlLCBjYWxsYmFja0Z1bmMpLmFwcGx5KHRoaXMsIGFyZ3MpLnBpcGUoc3Vic2NyaWJlT25fMS5zdWJzY3JpYmVPbihzY2hlZHVsZXIpLCBvYnNlcnZlT25fMS5vYnNlcnZlT24oc2NoZWR1bGVyKSk7CiAgICAgICAgfTsKICAgICAgfQogICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgICB2YXIgYXJncyA9IFtdOwogICAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgfQogICAgICAgIHZhciBzdWJqZWN0ID0gbmV3IEFzeW5jU3ViamVjdF8xLkFzeW5jU3ViamVjdCgpOwogICAgICAgIHZhciB1bmluaXRpYWxpemVkID0gdHJ1ZTsKICAgICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICAgIHZhciBzdWJzID0gc3ViamVjdC5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgICBpZiAodW5pbml0aWFsaXplZCkgewogICAgICAgICAgICB1bmluaXRpYWxpemVkID0gZmFsc2U7CiAgICAgICAgICAgIHZhciBpc0FzeW5jXzEgPSBmYWxzZTsKICAgICAgICAgICAgdmFyIGlzQ29tcGxldGVfMSA9IGZhbHNlOwogICAgICAgICAgICBjYWxsYmFja0Z1bmMuYXBwbHkoX3RoaXMsIF9fc3ByZWFkQXJyYXkoX19zcHJlYWRBcnJheShbXSwgX19yZWFkKGFyZ3MpKSwgWwogICAgICAgICAgICAgIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIHJlc3VsdHMgPSBbXTsKICAgICAgICAgICAgICAgIGZvciAodmFyIF9pMiA9IDA7IF9pMiA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pMisrKSB7CiAgICAgICAgICAgICAgICAgIHJlc3VsdHNbX2kyXSA9IGFyZ3VtZW50c1tfaTJdOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKGlzTm9kZVN0eWxlKSB7CiAgICAgICAgICAgICAgICAgIHZhciBlcnIgPSByZXN1bHRzLnNoaWZ0KCk7CiAgICAgICAgICAgICAgICAgIGlmIChlcnIgIT0gbnVsbCkgewogICAgICAgICAgICAgICAgICAgIHN1YmplY3QuZXJyb3IoZXJyKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHN1YmplY3QubmV4dCgxIDwgcmVzdWx0cy5sZW5ndGggPyByZXN1bHRzIDogcmVzdWx0c1swXSk7CiAgICAgICAgICAgICAgICBpc0NvbXBsZXRlXzEgPSB0cnVlOwogICAgICAgICAgICAgICAgaWYgKGlzQXN5bmNfMSkgewogICAgICAgICAgICAgICAgICBzdWJqZWN0LmNvbXBsZXRlKCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICBdKSk7CiAgICAgICAgICAgIGlmIChpc0NvbXBsZXRlXzEpIHsKICAgICAgICAgICAgICBzdWJqZWN0LmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaXNBc3luY18xID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBzdWJzOwogICAgICAgIH0pOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuYmluZENhbGxiYWNrSW50ZXJuYWxzID0gYmluZENhbGxiYWNrSW50ZXJuYWxzOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2JpbmRDYWxsYmFjay5qcwp2YXIgcmVxdWlyZV9iaW5kQ2FsbGJhY2sgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9iaW5kQ2FsbGJhY2suanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmJpbmRDYWxsYmFjayA9IHZvaWQgMDsKICAgIHZhciBiaW5kQ2FsbGJhY2tJbnRlcm5hbHNfMSA9IHJlcXVpcmVfYmluZENhbGxiYWNrSW50ZXJuYWxzKCk7CiAgICBmdW5jdGlvbiBiaW5kQ2FsbGJhY2soY2FsbGJhY2tGdW5jLCByZXN1bHRTZWxlY3Rvciwgc2NoZWR1bGVyKSB7CiAgICAgIHJldHVybiBiaW5kQ2FsbGJhY2tJbnRlcm5hbHNfMS5iaW5kQ2FsbGJhY2tJbnRlcm5hbHMoZmFsc2UsIGNhbGxiYWNrRnVuYywgcmVzdWx0U2VsZWN0b3IsIHNjaGVkdWxlcik7CiAgICB9CiAgICBleHBvcnRzMi5iaW5kQ2FsbGJhY2sgPSBiaW5kQ2FsbGJhY2s7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvYmluZE5vZGVDYWxsYmFjay5qcwp2YXIgcmVxdWlyZV9iaW5kTm9kZUNhbGxiYWNrID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvYmluZE5vZGVDYWxsYmFjay5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYmluZE5vZGVDYWxsYmFjayA9IHZvaWQgMDsKICAgIHZhciBiaW5kQ2FsbGJhY2tJbnRlcm5hbHNfMSA9IHJlcXVpcmVfYmluZENhbGxiYWNrSW50ZXJuYWxzKCk7CiAgICBmdW5jdGlvbiBiaW5kTm9kZUNhbGxiYWNrKGNhbGxiYWNrRnVuYywgcmVzdWx0U2VsZWN0b3IsIHNjaGVkdWxlcikgewogICAgICByZXR1cm4gYmluZENhbGxiYWNrSW50ZXJuYWxzXzEuYmluZENhbGxiYWNrSW50ZXJuYWxzKHRydWUsIGNhbGxiYWNrRnVuYywgcmVzdWx0U2VsZWN0b3IsIHNjaGVkdWxlcik7CiAgICB9CiAgICBleHBvcnRzMi5iaW5kTm9kZUNhbGxiYWNrID0gYmluZE5vZGVDYWxsYmFjazsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdXRpbC9hcmdzQXJnQXJyYXlPck9iamVjdC5qcwp2YXIgcmVxdWlyZV9hcmdzQXJnQXJyYXlPck9iamVjdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2FyZ3NBcmdBcnJheU9yT2JqZWN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5hcmdzQXJnQXJyYXlPck9iamVjdCA9IHZvaWQgMDsKICAgIHZhciBpc0FycmF5ID0gQXJyYXkuaXNBcnJheTsKICAgIHZhciBnZXRQcm90b3R5cGVPZiA9IE9iamVjdC5nZXRQcm90b3R5cGVPZjsKICAgIHZhciBvYmplY3RQcm90byA9IE9iamVjdC5wcm90b3R5cGU7CiAgICB2YXIgZ2V0S2V5cyA9IE9iamVjdC5rZXlzOwogICAgZnVuY3Rpb24gYXJnc0FyZ0FycmF5T3JPYmplY3QoYXJncykgewogICAgICBpZiAoYXJncy5sZW5ndGggPT09IDEpIHsKICAgICAgICB2YXIgZmlyc3RfMSA9IGFyZ3NbMF07CiAgICAgICAgaWYgKGlzQXJyYXkoZmlyc3RfMSkpIHsKICAgICAgICAgIHJldHVybiB7IGFyZ3M6IGZpcnN0XzEsIGtleXM6IG51bGwgfTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzUE9KTyhmaXJzdF8xKSkgewogICAgICAgICAgdmFyIGtleXMgPSBnZXRLZXlzKGZpcnN0XzEpOwogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgYXJnczoga2V5cy5tYXAoZnVuY3Rpb24oa2V5KSB7CiAgICAgICAgICAgICAgcmV0dXJuIGZpcnN0XzFba2V5XTsKICAgICAgICAgICAgfSksCiAgICAgICAgICAgIGtleXMKICAgICAgICAgIH07CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiB7IGFyZ3MsIGtleXM6IG51bGwgfTsKICAgIH0KICAgIGV4cG9ydHMyLmFyZ3NBcmdBcnJheU9yT2JqZWN0ID0gYXJnc0FyZ0FycmF5T3JPYmplY3Q7CiAgICBmdW5jdGlvbiBpc1BPSk8ob2JqKSB7CiAgICAgIHJldHVybiBvYmogJiYgdHlwZW9mIG9iaiA9PT0gIm9iamVjdCIgJiYgZ2V0UHJvdG90eXBlT2Yob2JqKSA9PT0gb2JqZWN0UHJvdG87CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvY3JlYXRlT2JqZWN0LmpzCnZhciByZXF1aXJlX2NyZWF0ZU9iamVjdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2NyZWF0ZU9iamVjdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY3JlYXRlT2JqZWN0ID0gdm9pZCAwOwogICAgZnVuY3Rpb24gY3JlYXRlT2JqZWN0KGtleXMsIHZhbHVlcykgewogICAgICByZXR1cm4ga2V5cy5yZWR1Y2UoZnVuY3Rpb24ocmVzdWx0LCBrZXksIGkpIHsKICAgICAgICByZXR1cm4gcmVzdWx0W2tleV0gPSB2YWx1ZXNbaV0sIHJlc3VsdDsKICAgICAgfSwge30pOwogICAgfQogICAgZXhwb3J0czIuY3JlYXRlT2JqZWN0ID0gY3JlYXRlT2JqZWN0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2NvbWJpbmVMYXRlc3QuanMKdmFyIHJlcXVpcmVfY29tYmluZUxhdGVzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2NvbWJpbmVMYXRlc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbWJpbmVMYXRlc3RJbml0ID0gZXhwb3J0czIuY29tYmluZUxhdGVzdCA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBhcmdzQXJnQXJyYXlPck9iamVjdF8xID0gcmVxdWlyZV9hcmdzQXJnQXJyYXlPck9iamVjdCgpOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICB2YXIgbWFwT25lT3JNYW55QXJnc18xID0gcmVxdWlyZV9tYXBPbmVPck1hbnlBcmdzKCk7CiAgICB2YXIgYXJnc18xID0gcmVxdWlyZV9hcmdzKCk7CiAgICB2YXIgY3JlYXRlT2JqZWN0XzEgPSByZXF1aXJlX2NyZWF0ZU9iamVjdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBleGVjdXRlU2NoZWR1bGVfMSA9IHJlcXVpcmVfZXhlY3V0ZVNjaGVkdWxlKCk7CiAgICBmdW5jdGlvbiBjb21iaW5lTGF0ZXN0KCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVyID0gYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKTsKICAgICAgdmFyIHJlc3VsdFNlbGVjdG9yID0gYXJnc18xLnBvcFJlc3VsdFNlbGVjdG9yKGFyZ3MpOwogICAgICB2YXIgX2EgPSBhcmdzQXJnQXJyYXlPck9iamVjdF8xLmFyZ3NBcmdBcnJheU9yT2JqZWN0KGFyZ3MpLCBvYnNlcnZhYmxlcyA9IF9hLmFyZ3MsIGtleXMgPSBfYS5rZXlzOwogICAgICBpZiAob2JzZXJ2YWJsZXMubGVuZ3RoID09PSAwKSB7CiAgICAgICAgcmV0dXJuIGZyb21fMS5mcm9tKFtdLCBzY2hlZHVsZXIpOwogICAgICB9CiAgICAgIHZhciByZXN1bHQgPSBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoY29tYmluZUxhdGVzdEluaXQob2JzZXJ2YWJsZXMsIHNjaGVkdWxlciwga2V5cyA/IGZ1bmN0aW9uKHZhbHVlcykgewogICAgICAgIHJldHVybiBjcmVhdGVPYmplY3RfMS5jcmVhdGVPYmplY3Qoa2V5cywgdmFsdWVzKTsKICAgICAgfSA6IGlkZW50aXR5XzEuaWRlbnRpdHkpKTsKICAgICAgcmV0dXJuIHJlc3VsdFNlbGVjdG9yID8gcmVzdWx0LnBpcGUobWFwT25lT3JNYW55QXJnc18xLm1hcE9uZU9yTWFueUFyZ3MocmVzdWx0U2VsZWN0b3IpKSA6IHJlc3VsdDsKICAgIH0KICAgIGV4cG9ydHMyLmNvbWJpbmVMYXRlc3QgPSBjb21iaW5lTGF0ZXN0OwogICAgZnVuY3Rpb24gY29tYmluZUxhdGVzdEluaXQob2JzZXJ2YWJsZXMsIHNjaGVkdWxlciwgdmFsdWVUcmFuc2Zvcm0pIHsKICAgICAgaWYgKHZhbHVlVHJhbnNmb3JtID09PSB2b2lkIDApIHsKICAgICAgICB2YWx1ZVRyYW5zZm9ybSA9IGlkZW50aXR5XzEuaWRlbnRpdHk7CiAgICAgIH0KICAgICAgcmV0dXJuIGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICBtYXliZVNjaGVkdWxlKHNjaGVkdWxlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgbGVuZ3RoID0gb2JzZXJ2YWJsZXMubGVuZ3RoOwogICAgICAgICAgdmFyIHZhbHVlcyA9IG5ldyBBcnJheShsZW5ndGgpOwogICAgICAgICAgdmFyIGFjdGl2ZSA9IGxlbmd0aDsKICAgICAgICAgIHZhciByZW1haW5pbmdGaXJzdFZhbHVlcyA9IGxlbmd0aDsKICAgICAgICAgIHZhciBfbG9vcF8xID0gZnVuY3Rpb24oaTIpIHsKICAgICAgICAgICAgbWF5YmVTY2hlZHVsZShzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIHZhciBzb3VyY2UgPSBmcm9tXzEuZnJvbShvYnNlcnZhYmxlc1tpMl0sIHNjaGVkdWxlcik7CiAgICAgICAgICAgICAgdmFyIGhhc0ZpcnN0VmFsdWUgPSBmYWxzZTsKICAgICAgICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgICAgICAgdmFsdWVzW2kyXSA9IHZhbHVlOwogICAgICAgICAgICAgICAgaWYgKCFoYXNGaXJzdFZhbHVlKSB7CiAgICAgICAgICAgICAgICAgIGhhc0ZpcnN0VmFsdWUgPSB0cnVlOwogICAgICAgICAgICAgICAgICByZW1haW5pbmdGaXJzdFZhbHVlcy0tOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKCFyZW1haW5pbmdGaXJzdFZhbHVlcykgewogICAgICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWVUcmFuc2Zvcm0odmFsdWVzLnNsaWNlKCkpKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIGlmICghLS1hY3RpdmUpIHsKICAgICAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0pKTsKICAgICAgICAgICAgfSwgc3Vic2NyaWJlcik7CiAgICAgICAgICB9OwogICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykgewogICAgICAgICAgICBfbG9vcF8xKGkpOwogICAgICAgICAgfQogICAgICAgIH0sIHN1YnNjcmliZXIpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdEluaXQgPSBjb21iaW5lTGF0ZXN0SW5pdDsKICAgIGZ1bmN0aW9uIG1heWJlU2NoZWR1bGUoc2NoZWR1bGVyLCBleGVjdXRlLCBzdWJzY3JpcHRpb24pIHsKICAgICAgaWYgKHNjaGVkdWxlcikgewogICAgICAgIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzY3JpcHRpb24sIHNjaGVkdWxlciwgZXhlY3V0ZSk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZXhlY3V0ZSgpOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZUludGVybmFscy5qcwp2YXIgcmVxdWlyZV9tZXJnZUludGVybmFscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2VJbnRlcm5hbHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1lcmdlSW50ZXJuYWxzID0gdm9pZCAwOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBleGVjdXRlU2NoZWR1bGVfMSA9IHJlcXVpcmVfZXhlY3V0ZVNjaGVkdWxlKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gbWVyZ2VJbnRlcm5hbHMoc291cmNlLCBzdWJzY3JpYmVyLCBwcm9qZWN0LCBjb25jdXJyZW50LCBvbkJlZm9yZU5leHQsIGV4cGFuZCwgaW5uZXJTdWJTY2hlZHVsZXIsIGFkZGl0aW9uYWxGaW5hbGl6ZXIpIHsKICAgICAgdmFyIGJ1ZmZlciA9IFtdOwogICAgICB2YXIgYWN0aXZlID0gMDsKICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgdmFyIGlzQ29tcGxldGUgPSBmYWxzZTsKICAgICAgdmFyIGNoZWNrQ29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICBpZiAoaXNDb21wbGV0ZSAmJiAhYnVmZmVyLmxlbmd0aCAmJiAhYWN0aXZlKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfQogICAgICB9OwogICAgICB2YXIgb3V0ZXJOZXh0ID0gZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICByZXR1cm4gYWN0aXZlIDwgY29uY3VycmVudCA/IGRvSW5uZXJTdWIodmFsdWUpIDogYnVmZmVyLnB1c2godmFsdWUpOwogICAgICB9OwogICAgICB2YXIgZG9Jbm5lclN1YiA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgZXhwYW5kICYmIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgYWN0aXZlKys7CiAgICAgICAgdmFyIGlubmVyQ29tcGxldGUgPSBmYWxzZTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20ocHJvamVjdCh2YWx1ZSwgaW5kZXgrKykpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oaW5uZXJWYWx1ZSkgewogICAgICAgICAgb25CZWZvcmVOZXh0ID09PSBudWxsIHx8IG9uQmVmb3JlTmV4dCA9PT0gdm9pZCAwID8gdm9pZCAwIDogb25CZWZvcmVOZXh0KGlubmVyVmFsdWUpOwogICAgICAgICAgaWYgKGV4cGFuZCkgewogICAgICAgICAgICBvdXRlck5leHQoaW5uZXJWYWx1ZSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoaW5uZXJWYWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpbm5lckNvbXBsZXRlID0gdHJ1ZTsKICAgICAgICB9LCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKGlubmVyQ29tcGxldGUpIHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICBhY3RpdmUtLTsKICAgICAgICAgICAgICB2YXIgX2xvb3BfMSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIGJ1ZmZlcmVkVmFsdWUgPSBidWZmZXIuc2hpZnQoKTsKICAgICAgICAgICAgICAgIGlmIChpbm5lclN1YlNjaGVkdWxlcikgewogICAgICAgICAgICAgICAgICBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vic2NyaWJlciwgaW5uZXJTdWJTY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBkb0lubmVyU3ViKGJ1ZmZlcmVkVmFsdWUpOwogICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIGRvSW5uZXJTdWIoYnVmZmVyZWRWYWx1ZSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICB3aGlsZSAoYnVmZmVyLmxlbmd0aCAmJiBhY3RpdmUgPCBjb25jdXJyZW50KSB7CiAgICAgICAgICAgICAgICBfbG9vcF8xKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGNoZWNrQ29tcGxldGUoKTsKICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5lcnJvcihlcnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICB9OwogICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBvdXRlck5leHQsIGZ1bmN0aW9uKCkgewogICAgICAgIGlzQ29tcGxldGUgPSB0cnVlOwogICAgICAgIGNoZWNrQ29tcGxldGUoKTsKICAgICAgfSkpOwogICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgYWRkaXRpb25hbEZpbmFsaXplciA9PT0gbnVsbCB8fCBhZGRpdGlvbmFsRmluYWxpemVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBhZGRpdGlvbmFsRmluYWxpemVyKCk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5tZXJnZUludGVybmFscyA9IG1lcmdlSW50ZXJuYWxzOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2VNYXAuanMKdmFyIHJlcXVpcmVfbWVyZ2VNYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21lcmdlTWFwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5tZXJnZU1hcCA9IHZvaWQgMDsKICAgIHZhciBtYXBfMSA9IHJlcXVpcmVfbWFwKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIG1lcmdlSW50ZXJuYWxzXzEgPSByZXF1aXJlX21lcmdlSW50ZXJuYWxzKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBtZXJnZU1hcChwcm9qZWN0LCByZXN1bHRTZWxlY3RvciwgY29uY3VycmVudCkgewogICAgICBpZiAoY29uY3VycmVudCA9PT0gdm9pZCAwKSB7CiAgICAgICAgY29uY3VycmVudCA9IEluZmluaXR5OwogICAgICB9CiAgICAgIGlmIChpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihyZXN1bHRTZWxlY3RvcikpIHsKICAgICAgICByZXR1cm4gbWVyZ2VNYXAoZnVuY3Rpb24oYSwgaSkgewogICAgICAgICAgcmV0dXJuIG1hcF8xLm1hcChmdW5jdGlvbihiLCBpaSkgewogICAgICAgICAgICByZXR1cm4gcmVzdWx0U2VsZWN0b3IoYSwgYiwgaSwgaWkpOwogICAgICAgICAgfSkoaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHByb2plY3QoYSwgaSkpKTsKICAgICAgICB9LCBjb25jdXJyZW50KTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgcmVzdWx0U2VsZWN0b3IgPT09ICJudW1iZXIiKSB7CiAgICAgICAgY29uY3VycmVudCA9IHJlc3VsdFNlbGVjdG9yOwogICAgICB9CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gbWVyZ2VJbnRlcm5hbHNfMS5tZXJnZUludGVybmFscyhzb3VyY2UsIHN1YnNjcmliZXIsIHByb2plY3QsIGNvbmN1cnJlbnQpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1lcmdlTWFwID0gbWVyZ2VNYXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZUFsbC5qcwp2YXIgcmVxdWlyZV9tZXJnZUFsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2VBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1lcmdlQWxsID0gdm9pZCAwOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIGZ1bmN0aW9uIG1lcmdlQWxsKGNvbmN1cnJlbnQpIHsKICAgICAgaWYgKGNvbmN1cnJlbnQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbmN1cnJlbnQgPSBJbmZpbml0eTsKICAgICAgfQogICAgICByZXR1cm4gbWVyZ2VNYXBfMS5tZXJnZU1hcChpZGVudGl0eV8xLmlkZW50aXR5LCBjb25jdXJyZW50KTsKICAgIH0KICAgIGV4cG9ydHMyLm1lcmdlQWxsID0gbWVyZ2VBbGw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRBbGwuanMKdmFyIHJlcXVpcmVfY29uY2F0QWxsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbmNhdEFsbCA9IHZvaWQgMDsKICAgIHZhciBtZXJnZUFsbF8xID0gcmVxdWlyZV9tZXJnZUFsbCgpOwogICAgZnVuY3Rpb24gY29uY2F0QWxsKCkgewogICAgICByZXR1cm4gbWVyZ2VBbGxfMS5tZXJnZUFsbCgxKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbmNhdEFsbCA9IGNvbmNhdEFsbDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9jb25jYXQuanMKdmFyIHJlcXVpcmVfY29uY2F0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvY29uY2F0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb25jYXQgPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0QWxsXzEgPSByZXF1aXJlX2NvbmNhdEFsbCgpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgZnVuY3Rpb24gY29uY2F0KCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICByZXR1cm4gY29uY2F0QWxsXzEuY29uY2F0QWxsKCkoZnJvbV8xLmZyb20oYXJncywgYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKSkpOwogICAgfQogICAgZXhwb3J0czIuY29uY2F0ID0gY29uY2F0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2RlZmVyLmpzCnZhciByZXF1aXJlX2RlZmVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZGVmZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlZmVyID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIGRlZmVyKG9ic2VydmFibGVGYWN0b3J5KSB7CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShvYnNlcnZhYmxlRmFjdG9yeSgpKS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZGVmZXIgPSBkZWZlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9jb25uZWN0YWJsZS5qcwp2YXIgcmVxdWlyZV9jb25uZWN0YWJsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2Nvbm5lY3RhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb25uZWN0YWJsZSA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBkZWZlcl8xID0gcmVxdWlyZV9kZWZlcigpOwogICAgdmFyIERFRkFVTFRfQ09ORklHID0gewogICAgICBjb25uZWN0b3I6IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBuZXcgU3ViamVjdF8xLlN1YmplY3QoKTsKICAgICAgfSwKICAgICAgcmVzZXRPbkRpc2Nvbm5lY3Q6IHRydWUKICAgIH07CiAgICBmdW5jdGlvbiBjb25uZWN0YWJsZShzb3VyY2UsIGNvbmZpZykgewogICAgICBpZiAoY29uZmlnID09PSB2b2lkIDApIHsKICAgICAgICBjb25maWcgPSBERUZBVUxUX0NPTkZJRzsKICAgICAgfQogICAgICB2YXIgY29ubmVjdGlvbiA9IG51bGw7CiAgICAgIHZhciBjb25uZWN0b3IgPSBjb25maWcuY29ubmVjdG9yLCBfYSA9IGNvbmZpZy5yZXNldE9uRGlzY29ubmVjdCwgcmVzZXRPbkRpc2Nvbm5lY3QgPSBfYSA9PT0gdm9pZCAwID8gdHJ1ZSA6IF9hOwogICAgICB2YXIgc3ViamVjdCA9IGNvbm5lY3RvcigpOwogICAgICB2YXIgcmVzdWx0ID0gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICByZXR1cm4gc3ViamVjdC5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgICByZXN1bHQuY29ubmVjdCA9IGZ1bmN0aW9uKCkgewogICAgICAgIGlmICghY29ubmVjdGlvbiB8fCBjb25uZWN0aW9uLmNsb3NlZCkgewogICAgICAgICAgY29ubmVjdGlvbiA9IGRlZmVyXzEuZGVmZXIoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiBzb3VyY2U7CiAgICAgICAgICB9KS5zdWJzY3JpYmUoc3ViamVjdCk7CiAgICAgICAgICBpZiAocmVzZXRPbkRpc2Nvbm5lY3QpIHsKICAgICAgICAgICAgY29ubmVjdGlvbi5hZGQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHN1YmplY3QgPSBjb25uZWN0b3IoKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBjb25uZWN0aW9uOwogICAgICB9OwogICAgICByZXR1cm4gcmVzdWx0OwogICAgfQogICAgZXhwb3J0czIuY29ubmVjdGFibGUgPSBjb25uZWN0YWJsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9mb3JrSm9pbi5qcwp2YXIgcmVxdWlyZV9mb3JrSm9pbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2ZvcmtKb2luLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5mb3JrSm9pbiA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBhcmdzQXJnQXJyYXlPck9iamVjdF8xID0gcmVxdWlyZV9hcmdzQXJnQXJyYXlPck9iamVjdCgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgbWFwT25lT3JNYW55QXJnc18xID0gcmVxdWlyZV9tYXBPbmVPck1hbnlBcmdzKCk7CiAgICB2YXIgY3JlYXRlT2JqZWN0XzEgPSByZXF1aXJlX2NyZWF0ZU9iamVjdCgpOwogICAgZnVuY3Rpb24gZm9ya0pvaW4oKSB7CiAgICAgIHZhciBhcmdzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgYXJnc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHZhciByZXN1bHRTZWxlY3RvciA9IGFyZ3NfMS5wb3BSZXN1bHRTZWxlY3RvcihhcmdzKTsKICAgICAgdmFyIF9hID0gYXJnc0FyZ0FycmF5T3JPYmplY3RfMS5hcmdzQXJnQXJyYXlPck9iamVjdChhcmdzKSwgc291cmNlcyA9IF9hLmFyZ3MsIGtleXMgPSBfYS5rZXlzOwogICAgICB2YXIgcmVzdWx0ID0gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgbGVuZ3RoID0gc291cmNlcy5sZW5ndGg7CiAgICAgICAgaWYgKCFsZW5ndGgpIHsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgdmFyIHZhbHVlcyA9IG5ldyBBcnJheShsZW5ndGgpOwogICAgICAgIHZhciByZW1haW5pbmdDb21wbGV0aW9ucyA9IGxlbmd0aDsKICAgICAgICB2YXIgcmVtYWluaW5nRW1pc3Npb25zID0gbGVuZ3RoOwogICAgICAgIHZhciBfbG9vcF8xID0gZnVuY3Rpb24oc291cmNlSW5kZXgyKSB7CiAgICAgICAgICB2YXIgaGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShzb3VyY2VzW3NvdXJjZUluZGV4Ml0pLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgICAgaWYgKCFoYXNWYWx1ZSkgewogICAgICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgICAgICByZW1haW5pbmdFbWlzc2lvbnMtLTsKICAgICAgICAgICAgfQogICAgICAgICAgICB2YWx1ZXNbc291cmNlSW5kZXgyXSA9IHZhbHVlOwogICAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiByZW1haW5pbmdDb21wbGV0aW9ucy0tOwogICAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgaWYgKCFyZW1haW5pbmdDb21wbGV0aW9ucyB8fCAhaGFzVmFsdWUpIHsKICAgICAgICAgICAgICBpZiAoIXJlbWFpbmluZ0VtaXNzaW9ucykgewogICAgICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGtleXMgPyBjcmVhdGVPYmplY3RfMS5jcmVhdGVPYmplY3Qoa2V5cywgdmFsdWVzKSA6IHZhbHVlcyk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSkpOwogICAgICAgIH07CiAgICAgICAgZm9yICh2YXIgc291cmNlSW5kZXggPSAwOyBzb3VyY2VJbmRleCA8IGxlbmd0aDsgc291cmNlSW5kZXgrKykgewogICAgICAgICAgX2xvb3BfMShzb3VyY2VJbmRleCk7CiAgICAgICAgfQogICAgICB9KTsKICAgICAgcmV0dXJuIHJlc3VsdFNlbGVjdG9yID8gcmVzdWx0LnBpcGUobWFwT25lT3JNYW55QXJnc18xLm1hcE9uZU9yTWFueUFyZ3MocmVzdWx0U2VsZWN0b3IpKSA6IHJlc3VsdDsKICAgIH0KICAgIGV4cG9ydHMyLmZvcmtKb2luID0gZm9ya0pvaW47CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZnJvbUV2ZW50LmpzCnZhciByZXF1aXJlX2Zyb21FdmVudCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2Zyb21FdmVudC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5mcm9tRXZlbnQgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgaXNBcnJheUxpa2VfMSA9IHJlcXVpcmVfaXNBcnJheUxpa2UoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBtYXBPbmVPck1hbnlBcmdzXzEgPSByZXF1aXJlX21hcE9uZU9yTWFueUFyZ3MoKTsKICAgIHZhciBub2RlRXZlbnRFbWl0dGVyTWV0aG9kcyA9IFsiYWRkTGlzdGVuZXIiLCAicmVtb3ZlTGlzdGVuZXIiXTsKICAgIHZhciBldmVudFRhcmdldE1ldGhvZHMgPSBbImFkZEV2ZW50TGlzdGVuZXIiLCAicmVtb3ZlRXZlbnRMaXN0ZW5lciJdOwogICAgdmFyIGpxdWVyeU1ldGhvZHMgPSBbIm9uIiwgIm9mZiJdOwogICAgZnVuY3Rpb24gZnJvbUV2ZW50KHRhcmdldCwgZXZlbnROYW1lLCBvcHRpb25zLCByZXN1bHRTZWxlY3RvcikgewogICAgICBpZiAoaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ob3B0aW9ucykpIHsKICAgICAgICByZXN1bHRTZWxlY3RvciA9IG9wdGlvbnM7CiAgICAgICAgb3B0aW9ucyA9IHZvaWQgMDsKICAgICAgfQogICAgICBpZiAocmVzdWx0U2VsZWN0b3IpIHsKICAgICAgICByZXR1cm4gZnJvbUV2ZW50KHRhcmdldCwgZXZlbnROYW1lLCBvcHRpb25zKS5waXBlKG1hcE9uZU9yTWFueUFyZ3NfMS5tYXBPbmVPck1hbnlBcmdzKHJlc3VsdFNlbGVjdG9yKSk7CiAgICAgIH0KICAgICAgdmFyIF9hID0gX19yZWFkKGlzRXZlbnRUYXJnZXQodGFyZ2V0KSA/IGV2ZW50VGFyZ2V0TWV0aG9kcy5tYXAoZnVuY3Rpb24obWV0aG9kTmFtZSkgewogICAgICAgIHJldHVybiBmdW5jdGlvbihoYW5kbGVyKSB7CiAgICAgICAgICByZXR1cm4gdGFyZ2V0W21ldGhvZE5hbWVdKGV2ZW50TmFtZSwgaGFuZGxlciwgb3B0aW9ucyk7CiAgICAgICAgfTsKICAgICAgfSkgOiBpc05vZGVTdHlsZUV2ZW50RW1pdHRlcih0YXJnZXQpID8gbm9kZUV2ZW50RW1pdHRlck1ldGhvZHMubWFwKHRvQ29tbW9uSGFuZGxlclJlZ2lzdHJ5KHRhcmdldCwgZXZlbnROYW1lKSkgOiBpc0pRdWVyeVN0eWxlRXZlbnRFbWl0dGVyKHRhcmdldCkgPyBqcXVlcnlNZXRob2RzLm1hcCh0b0NvbW1vbkhhbmRsZXJSZWdpc3RyeSh0YXJnZXQsIGV2ZW50TmFtZSkpIDogW10sIDIpLCBhZGQgPSBfYVswXSwgcmVtb3ZlID0gX2FbMV07CiAgICAgIGlmICghYWRkKSB7CiAgICAgICAgaWYgKGlzQXJyYXlMaWtlXzEuaXNBcnJheUxpa2UodGFyZ2V0KSkgewogICAgICAgICAgcmV0dXJuIG1lcmdlTWFwXzEubWVyZ2VNYXAoZnVuY3Rpb24oc3ViVGFyZ2V0KSB7CiAgICAgICAgICAgIHJldHVybiBmcm9tRXZlbnQoc3ViVGFyZ2V0LCBldmVudE5hbWUsIG9wdGlvbnMpOwogICAgICAgICAgfSkoaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHRhcmdldCkpOwogICAgICAgIH0KICAgICAgfQogICAgICBpZiAoIWFkZCkgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgZXZlbnQgdGFyZ2V0Iik7CiAgICAgIH0KICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhbmRsZXIgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBhcmdzID0gW107CiAgICAgICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gc3Vic2NyaWJlci5uZXh0KDEgPCBhcmdzLmxlbmd0aCA/IGFyZ3MgOiBhcmdzWzBdKTsKICAgICAgICB9OwogICAgICAgIGFkZChoYW5kbGVyKTsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gcmVtb3ZlKGhhbmRsZXIpOwogICAgICAgIH07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZnJvbUV2ZW50ID0gZnJvbUV2ZW50OwogICAgZnVuY3Rpb24gdG9Db21tb25IYW5kbGVyUmVnaXN0cnkodGFyZ2V0LCBldmVudE5hbWUpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKG1ldGhvZE5hbWUpIHsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oaGFuZGxlcikgewogICAgICAgICAgcmV0dXJuIHRhcmdldFttZXRob2ROYW1lXShldmVudE5hbWUsIGhhbmRsZXIpOwogICAgICAgIH07CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBpc05vZGVTdHlsZUV2ZW50RW1pdHRlcih0YXJnZXQpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHRhcmdldC5hZGRMaXN0ZW5lcikgJiYgaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24odGFyZ2V0LnJlbW92ZUxpc3RlbmVyKTsKICAgIH0KICAgIGZ1bmN0aW9uIGlzSlF1ZXJ5U3R5bGVFdmVudEVtaXR0ZXIodGFyZ2V0KSB7CiAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbih0YXJnZXQub24pICYmIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHRhcmdldC5vZmYpOwogICAgfQogICAgZnVuY3Rpb24gaXNFdmVudFRhcmdldCh0YXJnZXQpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHRhcmdldC5hZGRFdmVudExpc3RlbmVyKSAmJiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbih0YXJnZXQucmVtb3ZlRXZlbnRMaXN0ZW5lcik7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZnJvbUV2ZW50UGF0dGVybi5qcwp2YXIgcmVxdWlyZV9mcm9tRXZlbnRQYXR0ZXJuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvZnJvbUV2ZW50UGF0dGVybi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZnJvbUV2ZW50UGF0dGVybiA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIHZhciBtYXBPbmVPck1hbnlBcmdzXzEgPSByZXF1aXJlX21hcE9uZU9yTWFueUFyZ3MoKTsKICAgIGZ1bmN0aW9uIGZyb21FdmVudFBhdHRlcm4oYWRkSGFuZGxlciwgcmVtb3ZlSGFuZGxlciwgcmVzdWx0U2VsZWN0b3IpIHsKICAgICAgaWYgKHJlc3VsdFNlbGVjdG9yKSB7CiAgICAgICAgcmV0dXJuIGZyb21FdmVudFBhdHRlcm4oYWRkSGFuZGxlciwgcmVtb3ZlSGFuZGxlcikucGlwZShtYXBPbmVPck1hbnlBcmdzXzEubWFwT25lT3JNYW55QXJncyhyZXN1bHRTZWxlY3RvcikpOwogICAgICB9CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBoYW5kbGVyID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgZSA9IFtdOwogICAgICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICAgICAgZVtfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHN1YnNjcmliZXIubmV4dChlLmxlbmd0aCA9PT0gMSA/IGVbMF0gOiBlKTsKICAgICAgICB9OwogICAgICAgIHZhciByZXRWYWx1ZSA9IGFkZEhhbmRsZXIoaGFuZGxlcik7CiAgICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHJlbW92ZUhhbmRsZXIpID8gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gcmVtb3ZlSGFuZGxlcihoYW5kbGVyLCByZXRWYWx1ZSk7CiAgICAgICAgfSA6IHZvaWQgMDsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5mcm9tRXZlbnRQYXR0ZXJuID0gZnJvbUV2ZW50UGF0dGVybjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9nZW5lcmF0ZS5qcwp2YXIgcmVxdWlyZV9nZW5lcmF0ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL2dlbmVyYXRlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fZ2VuZXJhdG9yID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19nZW5lcmF0b3IgfHwgZnVuY3Rpb24odGhpc0FyZywgYm9keSkgewogICAgICB2YXIgXyA9IHsgbGFiZWw6IDAsIHNlbnQ6IGZ1bmN0aW9uKCkgewogICAgICAgIGlmICh0WzBdICYgMSkgdGhyb3cgdFsxXTsKICAgICAgICByZXR1cm4gdFsxXTsKICAgICAgfSwgdHJ5czogW10sIG9wczogW10gfSwgZiwgeSwgdCwgZzsKICAgICAgcmV0dXJuIGcgPSB7IG5leHQ6IHZlcmIoMCksICJ0aHJvdyI6IHZlcmIoMSksICJyZXR1cm4iOiB2ZXJiKDIpIH0sIHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgKGdbU3ltYm9sLml0ZXJhdG9yXSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9KSwgZzsKICAgICAgZnVuY3Rpb24gdmVyYihuKSB7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKHYpIHsKICAgICAgICAgIHJldHVybiBzdGVwKFtuLCB2XSk7CiAgICAgICAgfTsKICAgICAgfQogICAgICBmdW5jdGlvbiBzdGVwKG9wKSB7CiAgICAgICAgaWYgKGYpIHRocm93IG5ldyBUeXBlRXJyb3IoIkdlbmVyYXRvciBpcyBhbHJlYWR5IGV4ZWN1dGluZy4iKTsKICAgICAgICB3aGlsZSAoXykgdHJ5IHsKICAgICAgICAgIGlmIChmID0gMSwgeSAmJiAodCA9IG9wWzBdICYgMiA/IHlbInJldHVybiJdIDogb3BbMF0gPyB5WyJ0aHJvdyJdIHx8ICgodCA9IHlbInJldHVybiJdKSAmJiB0LmNhbGwoeSksIDApIDogeS5uZXh0KSAmJiAhKHQgPSB0LmNhbGwoeSwgb3BbMV0pKS5kb25lKSByZXR1cm4gdDsKICAgICAgICAgIGlmICh5ID0gMCwgdCkgb3AgPSBbb3BbMF0gJiAyLCB0LnZhbHVlXTsKICAgICAgICAgIHN3aXRjaCAob3BbMF0pIHsKICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICBjYXNlIDE6CiAgICAgICAgICAgICAgdCA9IG9wOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgXy5sYWJlbCsrOwogICAgICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvcFsxXSwgZG9uZTogZmFsc2UgfTsKICAgICAgICAgICAgY2FzZSA1OgogICAgICAgICAgICAgIF8ubGFiZWwrKzsKICAgICAgICAgICAgICB5ID0gb3BbMV07CiAgICAgICAgICAgICAgb3AgPSBbMF07CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIGNhc2UgNzoKICAgICAgICAgICAgICBvcCA9IF8ub3BzLnBvcCgpOwogICAgICAgICAgICAgIF8udHJ5cy5wb3AoKTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICBpZiAoISh0ID0gXy50cnlzLCB0ID0gdC5sZW5ndGggPiAwICYmIHRbdC5sZW5ndGggLSAxXSkgJiYgKG9wWzBdID09PSA2IHx8IG9wWzBdID09PSAyKSkgewogICAgICAgICAgICAgICAgXyA9IDA7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKG9wWzBdID09PSAzICYmICghdCB8fCBvcFsxXSA+IHRbMF0gJiYgb3BbMV0gPCB0WzNdKSkgewogICAgICAgICAgICAgICAgXy5sYWJlbCA9IG9wWzFdOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChvcFswXSA9PT0gNiAmJiBfLmxhYmVsIDwgdFsxXSkgewogICAgICAgICAgICAgICAgXy5sYWJlbCA9IHRbMV07CiAgICAgICAgICAgICAgICB0ID0gb3A7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHQgJiYgXy5sYWJlbCA8IHRbMl0pIHsKICAgICAgICAgICAgICAgIF8ubGFiZWwgPSB0WzJdOwogICAgICAgICAgICAgICAgXy5vcHMucHVzaChvcCk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHRbMl0pIF8ub3BzLnBvcCgpOwogICAgICAgICAgICAgIF8udHJ5cy5wb3AoKTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIG9wID0gYm9keS5jYWxsKHRoaXNBcmcsIF8pOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIG9wID0gWzYsIGVdOwogICAgICAgICAgeSA9IDA7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGYgPSB0ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYgKG9wWzBdICYgNSkgdGhyb3cgb3BbMV07CiAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG9wWzBdID8gb3BbMV0gOiB2b2lkIDAsIGRvbmU6IHRydWUgfTsKICAgICAgfQogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZ2VuZXJhdGUgPSB2b2lkIDA7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIHZhciBpc1NjaGVkdWxlcl8xID0gcmVxdWlyZV9pc1NjaGVkdWxlcigpOwogICAgdmFyIGRlZmVyXzEgPSByZXF1aXJlX2RlZmVyKCk7CiAgICB2YXIgc2NoZWR1bGVJdGVyYWJsZV8xID0gcmVxdWlyZV9zY2hlZHVsZUl0ZXJhYmxlKCk7CiAgICBmdW5jdGlvbiBnZW5lcmF0ZShpbml0aWFsU3RhdGVPck9wdGlvbnMsIGNvbmRpdGlvbiwgaXRlcmF0ZSwgcmVzdWx0U2VsZWN0b3JPclNjaGVkdWxlciwgc2NoZWR1bGVyKSB7CiAgICAgIHZhciBfYSwgX2I7CiAgICAgIHZhciByZXN1bHRTZWxlY3RvcjsKICAgICAgdmFyIGluaXRpYWxTdGF0ZTsKICAgICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDEpIHsKICAgICAgICBfYSA9IGluaXRpYWxTdGF0ZU9yT3B0aW9ucywgaW5pdGlhbFN0YXRlID0gX2EuaW5pdGlhbFN0YXRlLCBjb25kaXRpb24gPSBfYS5jb25kaXRpb24sIGl0ZXJhdGUgPSBfYS5pdGVyYXRlLCBfYiA9IF9hLnJlc3VsdFNlbGVjdG9yLCByZXN1bHRTZWxlY3RvciA9IF9iID09PSB2b2lkIDAgPyBpZGVudGl0eV8xLmlkZW50aXR5IDogX2IsIHNjaGVkdWxlciA9IF9hLnNjaGVkdWxlcjsKICAgICAgfSBlbHNlIHsKICAgICAgICBpbml0aWFsU3RhdGUgPSBpbml0aWFsU3RhdGVPck9wdGlvbnM7CiAgICAgICAgaWYgKCFyZXN1bHRTZWxlY3Rvck9yU2NoZWR1bGVyIHx8IGlzU2NoZWR1bGVyXzEuaXNTY2hlZHVsZXIocmVzdWx0U2VsZWN0b3JPclNjaGVkdWxlcikpIHsKICAgICAgICAgIHJlc3VsdFNlbGVjdG9yID0gaWRlbnRpdHlfMS5pZGVudGl0eTsKICAgICAgICAgIHNjaGVkdWxlciA9IHJlc3VsdFNlbGVjdG9yT3JTY2hlZHVsZXI7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJlc3VsdFNlbGVjdG9yID0gcmVzdWx0U2VsZWN0b3JPclNjaGVkdWxlcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgZnVuY3Rpb24gZ2VuKCkgewogICAgICAgIHZhciBzdGF0ZTsKICAgICAgICByZXR1cm4gX19nZW5lcmF0b3IodGhpcywgZnVuY3Rpb24oX2EyKSB7CiAgICAgICAgICBzd2l0Y2ggKF9hMi5sYWJlbCkgewogICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgc3RhdGUgPSBpbml0aWFsU3RhdGU7CiAgICAgICAgICAgICAgX2EyLmxhYmVsID0gMTsKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIGlmICghKCFjb25kaXRpb24gfHwgY29uZGl0aW9uKHN0YXRlKSkpIHJldHVybiBbMywgNF07CiAgICAgICAgICAgICAgcmV0dXJuIFs0LCByZXN1bHRTZWxlY3RvcihzdGF0ZSldOwogICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICAgX2EyLnNlbnQoKTsKICAgICAgICAgICAgICBfYTIubGFiZWwgPSAzOwogICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgc3RhdGUgPSBpdGVyYXRlKHN0YXRlKTsKICAgICAgICAgICAgICByZXR1cm4gWzMsIDFdOwogICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgcmV0dXJuIFsyXTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfQogICAgICByZXR1cm4gZGVmZXJfMS5kZWZlcihzY2hlZHVsZXIgPyBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gc2NoZWR1bGVJdGVyYWJsZV8xLnNjaGVkdWxlSXRlcmFibGUoZ2VuKCksIHNjaGVkdWxlcik7CiAgICAgIH0gOiBnZW4pOwogICAgfQogICAgZXhwb3J0czIuZ2VuZXJhdGUgPSBnZW5lcmF0ZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9paWYuanMKdmFyIHJlcXVpcmVfaWlmID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvaWlmLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5paWYgPSB2b2lkIDA7CiAgICB2YXIgZGVmZXJfMSA9IHJlcXVpcmVfZGVmZXIoKTsKICAgIGZ1bmN0aW9uIGlpZihjb25kaXRpb24sIHRydWVSZXN1bHQsIGZhbHNlUmVzdWx0KSB7CiAgICAgIHJldHVybiBkZWZlcl8xLmRlZmVyKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBjb25kaXRpb24oKSA/IHRydWVSZXN1bHQgOiBmYWxzZVJlc3VsdDsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5paWYgPSBpaWY7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvdGltZXIuanMKdmFyIHJlcXVpcmVfdGltZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS90aW1lci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGltZXIgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciBpc1NjaGVkdWxlcl8xID0gcmVxdWlyZV9pc1NjaGVkdWxlcigpOwogICAgdmFyIGlzRGF0ZV8xID0gcmVxdWlyZV9pc0RhdGUoKTsKICAgIGZ1bmN0aW9uIHRpbWVyKGR1ZVRpbWUsIGludGVydmFsT3JTY2hlZHVsZXIsIHNjaGVkdWxlcikgewogICAgICBpZiAoZHVlVGltZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgZHVlVGltZSA9IDA7CiAgICAgIH0KICAgICAgaWYgKHNjaGVkdWxlciA9PT0gdm9pZCAwKSB7CiAgICAgICAgc2NoZWR1bGVyID0gYXN5bmNfMS5hc3luYzsKICAgICAgfQogICAgICB2YXIgaW50ZXJ2YWxEdXJhdGlvbiA9IC0xOwogICAgICBpZiAoaW50ZXJ2YWxPclNjaGVkdWxlciAhPSBudWxsKSB7CiAgICAgICAgaWYgKGlzU2NoZWR1bGVyXzEuaXNTY2hlZHVsZXIoaW50ZXJ2YWxPclNjaGVkdWxlcikpIHsKICAgICAgICAgIHNjaGVkdWxlciA9IGludGVydmFsT3JTY2hlZHVsZXI7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGludGVydmFsRHVyYXRpb24gPSBpbnRlcnZhbE9yU2NoZWR1bGVyOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgZHVlID0gaXNEYXRlXzEuaXNWYWxpZERhdGUoZHVlVGltZSkgPyArZHVlVGltZSAtIHNjaGVkdWxlci5ub3coKSA6IGR1ZVRpbWU7CiAgICAgICAgaWYgKGR1ZSA8IDApIHsKICAgICAgICAgIGR1ZSA9IDA7CiAgICAgICAgfQogICAgICAgIHZhciBuID0gMDsKICAgICAgICByZXR1cm4gc2NoZWR1bGVyLnNjaGVkdWxlKGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKCFzdWJzY3JpYmVyLmNsb3NlZCkgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQobisrKTsKICAgICAgICAgICAgaWYgKDAgPD0gaW50ZXJ2YWxEdXJhdGlvbikgewogICAgICAgICAgICAgIHRoaXMuc2NoZWR1bGUodm9pZCAwLCBpbnRlcnZhbER1cmF0aW9uKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9LCBkdWUpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnRpbWVyID0gdGltZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvaW50ZXJ2YWwuanMKdmFyIHJlcXVpcmVfaW50ZXJ2YWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9pbnRlcnZhbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaW50ZXJ2YWwgPSB2b2lkIDA7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciB0aW1lcl8xID0gcmVxdWlyZV90aW1lcigpOwogICAgZnVuY3Rpb24gaW50ZXJ2YWwocGVyaW9kLCBzY2hlZHVsZXIpIHsKICAgICAgaWYgKHBlcmlvZCA9PT0gdm9pZCAwKSB7CiAgICAgICAgcGVyaW9kID0gMDsKICAgICAgfQogICAgICBpZiAoc2NoZWR1bGVyID09PSB2b2lkIDApIHsKICAgICAgICBzY2hlZHVsZXIgPSBhc3luY18xLmFzeW5jU2NoZWR1bGVyOwogICAgICB9CiAgICAgIGlmIChwZXJpb2QgPCAwKSB7CiAgICAgICAgcGVyaW9kID0gMDsKICAgICAgfQogICAgICByZXR1cm4gdGltZXJfMS50aW1lcihwZXJpb2QsIHBlcmlvZCwgc2NoZWR1bGVyKTsKICAgIH0KICAgIGV4cG9ydHMyLmludGVydmFsID0gaW50ZXJ2YWw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvbWVyZ2UuanMKdmFyIHJlcXVpcmVfbWVyZ2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9tZXJnZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWVyZ2UgPSB2b2lkIDA7CiAgICB2YXIgbWVyZ2VBbGxfMSA9IHJlcXVpcmVfbWVyZ2VBbGwoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgZW1wdHlfMSA9IHJlcXVpcmVfZW1wdHkoKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBmcm9tXzEgPSByZXF1aXJlX2Zyb20oKTsKICAgIGZ1bmN0aW9uIG1lcmdlKCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVyID0gYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKTsKICAgICAgdmFyIGNvbmN1cnJlbnQgPSBhcmdzXzEucG9wTnVtYmVyKGFyZ3MsIEluZmluaXR5KTsKICAgICAgdmFyIHNvdXJjZXMgPSBhcmdzOwogICAgICByZXR1cm4gIXNvdXJjZXMubGVuZ3RoID8gZW1wdHlfMS5FTVBUWSA6IHNvdXJjZXMubGVuZ3RoID09PSAxID8gaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHNvdXJjZXNbMF0pIDogbWVyZ2VBbGxfMS5tZXJnZUFsbChjb25jdXJyZW50KShmcm9tXzEuZnJvbShzb3VyY2VzLCBzY2hlZHVsZXIpKTsKICAgIH0KICAgIGV4cG9ydHMyLm1lcmdlID0gbWVyZ2U7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvbmV2ZXIuanMKdmFyIHJlcXVpcmVfbmV2ZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9uZXZlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubmV2ZXIgPSBleHBvcnRzMi5ORVZFUiA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIGV4cG9ydHMyLk5FVkVSID0gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKG5vb3BfMS5ub29wKTsKICAgIGZ1bmN0aW9uIG5ldmVyKCkgewogICAgICByZXR1cm4gZXhwb3J0czIuTkVWRVI7CiAgICB9CiAgICBleHBvcnRzMi5uZXZlciA9IG5ldmVyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL2FyZ3NPckFyZ0FycmF5LmpzCnZhciByZXF1aXJlX2FyZ3NPckFyZ0FycmF5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvYXJnc09yQXJnQXJyYXkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmFyZ3NPckFyZ0FycmF5ID0gdm9pZCAwOwogICAgdmFyIGlzQXJyYXkgPSBBcnJheS5pc0FycmF5OwogICAgZnVuY3Rpb24gYXJnc09yQXJnQXJyYXkoYXJncykgewogICAgICByZXR1cm4gYXJncy5sZW5ndGggPT09IDEgJiYgaXNBcnJheShhcmdzWzBdKSA/IGFyZ3NbMF0gOiBhcmdzOwogICAgfQogICAgZXhwb3J0czIuYXJnc09yQXJnQXJyYXkgPSBhcmdzT3JBcmdBcnJheTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9vbkVycm9yUmVzdW1lTmV4dC5qcwp2YXIgcmVxdWlyZV9vbkVycm9yUmVzdW1lTmV4dCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL29uRXJyb3JSZXN1bWVOZXh0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5vbkVycm9yUmVzdW1lTmV4dCA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBhcmdzT3JBcmdBcnJheV8xID0gcmVxdWlyZV9hcmdzT3JBcmdBcnJheSgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICBmdW5jdGlvbiBvbkVycm9yUmVzdW1lTmV4dCgpIHsKICAgICAgdmFyIHNvdXJjZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBzb3VyY2VzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIG5leHRTb3VyY2VzID0gYXJnc09yQXJnQXJyYXlfMS5hcmdzT3JBcmdBcnJheShzb3VyY2VzKTsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHNvdXJjZUluZGV4ID0gMDsKICAgICAgICB2YXIgc3Vic2NyaWJlTmV4dCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKHNvdXJjZUluZGV4IDwgbmV4dFNvdXJjZXMubGVuZ3RoKSB7CiAgICAgICAgICAgIHZhciBuZXh0U291cmNlID0gdm9pZCAwOwogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgIG5leHRTb3VyY2UgPSBpbm5lckZyb21fMS5pbm5lckZyb20obmV4dFNvdXJjZXNbc291cmNlSW5kZXgrK10pOwogICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgICBzdWJzY3JpYmVOZXh0KCk7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHZhciBpbm5lclN1YnNjcmliZXIgPSBuZXcgT3BlcmF0b3JTdWJzY3JpYmVyXzEuT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIHZvaWQgMCwgbm9vcF8xLm5vb3AsIG5vb3BfMS5ub29wKTsKICAgICAgICAgICAgbmV4dFNvdXJjZS5zdWJzY3JpYmUoaW5uZXJTdWJzY3JpYmVyKTsKICAgICAgICAgICAgaW5uZXJTdWJzY3JpYmVyLmFkZChzdWJzY3JpYmVOZXh0KTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIHN1YnNjcmliZU5leHQoKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5vbkVycm9yUmVzdW1lTmV4dCA9IG9uRXJyb3JSZXN1bWVOZXh0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3BhaXJzLmpzCnZhciByZXF1aXJlX3BhaXJzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvcGFpcnMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnBhaXJzID0gdm9pZCAwOwogICAgdmFyIGZyb21fMSA9IHJlcXVpcmVfZnJvbSgpOwogICAgZnVuY3Rpb24gcGFpcnMob2JqLCBzY2hlZHVsZXIpIHsKICAgICAgcmV0dXJuIGZyb21fMS5mcm9tKE9iamVjdC5lbnRyaWVzKG9iaiksIHNjaGVkdWxlcik7CiAgICB9CiAgICBleHBvcnRzMi5wYWlycyA9IHBhaXJzOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC91dGlsL25vdC5qcwp2YXIgcmVxdWlyZV9ub3QyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3V0aWwvbm90LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5ub3QgPSB2b2lkIDA7CiAgICBmdW5jdGlvbiBub3QocHJlZCwgdGhpc0FyZykgewogICAgICByZXR1cm4gZnVuY3Rpb24odmFsdWUsIGluZGV4KSB7CiAgICAgICAgcmV0dXJuICFwcmVkLmNhbGwodGhpc0FyZywgdmFsdWUsIGluZGV4KTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLm5vdCA9IG5vdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2ZpbHRlci5qcwp2YXIgcmVxdWlyZV9maWx0ZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2ZpbHRlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZmlsdGVyID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGZpbHRlcihwcmVkaWNhdGUsIHRoaXNBcmcpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpbmRleCA9IDA7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHJldHVybiBwcmVkaWNhdGUuY2FsbCh0aGlzQXJnLCB2YWx1ZSwgaW5kZXgrKykgJiYgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZmlsdGVyID0gZmlsdGVyOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3BhcnRpdGlvbi5qcwp2YXIgcmVxdWlyZV9wYXJ0aXRpb24gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9wYXJ0aXRpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnBhcnRpdGlvbiA9IHZvaWQgMDsKICAgIHZhciBub3RfMSA9IHJlcXVpcmVfbm90MigpOwogICAgdmFyIGZpbHRlcl8xID0gcmVxdWlyZV9maWx0ZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICBmdW5jdGlvbiBwYXJ0aXRpb24oc291cmNlLCBwcmVkaWNhdGUsIHRoaXNBcmcpIHsKICAgICAgcmV0dXJuIFtmaWx0ZXJfMS5maWx0ZXIocHJlZGljYXRlLCB0aGlzQXJnKShpbm5lckZyb21fMS5pbm5lckZyb20oc291cmNlKSksIGZpbHRlcl8xLmZpbHRlcihub3RfMS5ub3QocHJlZGljYXRlLCB0aGlzQXJnKSkoaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHNvdXJjZSkpXTsKICAgIH0KICAgIGV4cG9ydHMyLnBhcnRpdGlvbiA9IHBhcnRpdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9yYWNlLmpzCnZhciByZXF1aXJlX3JhY2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9yYWNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yYWNlSW5pdCA9IGV4cG9ydHMyLnJhY2UgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGFyZ3NPckFyZ0FycmF5XzEgPSByZXF1aXJlX2FyZ3NPckFyZ0FycmF5KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gcmFjZSgpIHsKICAgICAgdmFyIHNvdXJjZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBzb3VyY2VzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgc291cmNlcyA9IGFyZ3NPckFyZ0FycmF5XzEuYXJnc09yQXJnQXJyYXkoc291cmNlcyk7CiAgICAgIHJldHVybiBzb3VyY2VzLmxlbmd0aCA9PT0gMSA/IGlubmVyRnJvbV8xLmlubmVyRnJvbShzb3VyY2VzWzBdKSA6IG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShyYWNlSW5pdChzb3VyY2VzKSk7CiAgICB9CiAgICBleHBvcnRzMi5yYWNlID0gcmFjZTsKICAgIGZ1bmN0aW9uIHJhY2VJbml0KHNvdXJjZXMpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgc3Vic2NyaXB0aW9ucyA9IFtdOwogICAgICAgIHZhciBfbG9vcF8xID0gZnVuY3Rpb24oaTIpIHsKICAgICAgICAgIHN1YnNjcmlwdGlvbnMucHVzaChpbm5lckZyb21fMS5pbm5lckZyb20oc291cmNlc1tpMl0pLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgICAgaWYgKHN1YnNjcmlwdGlvbnMpIHsKICAgICAgICAgICAgICBmb3IgKHZhciBzID0gMDsgcyA8IHN1YnNjcmlwdGlvbnMubGVuZ3RoOyBzKyspIHsKICAgICAgICAgICAgICAgIHMgIT09IGkyICYmIHN1YnNjcmlwdGlvbnNbc10udW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgc3Vic2NyaXB0aW9ucyA9IG51bGw7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgIH0pKSk7CiAgICAgICAgfTsKICAgICAgICBmb3IgKHZhciBpID0gMDsgc3Vic2NyaXB0aW9ucyAmJiAhc3Vic2NyaWJlci5jbG9zZWQgJiYgaSA8IHNvdXJjZXMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgIF9sb29wXzEoaSk7CiAgICAgICAgfQogICAgICB9OwogICAgfQogICAgZXhwb3J0czIucmFjZUluaXQgPSByYWNlSW5pdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9yYW5nZS5qcwp2YXIgcmVxdWlyZV9yYW5nZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vYnNlcnZhYmxlL3JhbmdlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yYW5nZSA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIHZhciBlbXB0eV8xID0gcmVxdWlyZV9lbXB0eSgpOwogICAgZnVuY3Rpb24gcmFuZ2Uoc3RhcnQsIGNvdW50LCBzY2hlZHVsZXIpIHsKICAgICAgaWYgKGNvdW50ID09IG51bGwpIHsKICAgICAgICBjb3VudCA9IHN0YXJ0OwogICAgICAgIHN0YXJ0ID0gMDsKICAgICAgfQogICAgICBpZiAoY291bnQgPD0gMCkgewogICAgICAgIHJldHVybiBlbXB0eV8xLkVNUFRZOwogICAgICB9CiAgICAgIHZhciBlbmQgPSBjb3VudCArIHN0YXJ0OwogICAgICByZXR1cm4gbmV3IE9ic2VydmFibGVfMS5PYnNlcnZhYmxlKHNjaGVkdWxlciA/IGZ1bmN0aW9uKHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgbiA9IHN0YXJ0OwogICAgICAgIHJldHVybiBzY2hlZHVsZXIuc2NoZWR1bGUoZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAobiA8IGVuZCkgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQobisrKTsKICAgICAgICAgICAgdGhpcy5zY2hlZHVsZSgpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9IDogZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBuID0gc3RhcnQ7CiAgICAgICAgd2hpbGUgKG4gPCBlbmQgJiYgIXN1YnNjcmliZXIuY2xvc2VkKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQobisrKTsKICAgICAgICB9CiAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJhbmdlID0gcmFuZ2U7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvdXNpbmcuanMKdmFyIHJlcXVpcmVfdXNpbmcgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS91c2luZy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudXNpbmcgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGVtcHR5XzEgPSByZXF1aXJlX2VtcHR5KCk7CiAgICBmdW5jdGlvbiB1c2luZyhyZXNvdXJjZUZhY3RvcnksIG9ic2VydmFibGVGYWN0b3J5KSB7CiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciByZXNvdXJjZSA9IHJlc291cmNlRmFjdG9yeSgpOwogICAgICAgIHZhciByZXN1bHQgPSBvYnNlcnZhYmxlRmFjdG9yeShyZXNvdXJjZSk7CiAgICAgICAgdmFyIHNvdXJjZSA9IHJlc3VsdCA/IGlubmVyRnJvbV8xLmlubmVyRnJvbShyZXN1bHQpIDogZW1wdHlfMS5FTVBUWTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChyZXNvdXJjZSkgewogICAgICAgICAgICByZXNvdXJjZS51bnN1YnNjcmliZSgpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudXNpbmcgPSB1c2luZzsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS96aXAuanMKdmFyIHJlcXVpcmVfemlwID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29ic2VydmFibGUvemlwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi56aXAgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGFyZ3NPckFyZ0FycmF5XzEgPSByZXF1aXJlX2FyZ3NPckFyZ0FycmF5KCk7CiAgICB2YXIgZW1wdHlfMSA9IHJlcXVpcmVfZW1wdHkoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgYXJnc18xID0gcmVxdWlyZV9hcmdzKCk7CiAgICBmdW5jdGlvbiB6aXAoKSB7CiAgICAgIHZhciBhcmdzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgYXJnc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHZhciByZXN1bHRTZWxlY3RvciA9IGFyZ3NfMS5wb3BSZXN1bHRTZWxlY3RvcihhcmdzKTsKICAgICAgdmFyIHNvdXJjZXMgPSBhcmdzT3JBcmdBcnJheV8xLmFyZ3NPckFyZ0FycmF5KGFyZ3MpOwogICAgICByZXR1cm4gc291cmNlcy5sZW5ndGggPyBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oc3Vic2NyaWJlcikgewogICAgICAgIHZhciBidWZmZXJzID0gc291cmNlcy5tYXAoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gW107CiAgICAgICAgfSk7CiAgICAgICAgdmFyIGNvbXBsZXRlZCA9IHNvdXJjZXMubWFwKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0pOwogICAgICAgIHN1YnNjcmliZXIuYWRkKGZ1bmN0aW9uKCkgewogICAgICAgICAgYnVmZmVycyA9IGNvbXBsZXRlZCA9IG51bGw7CiAgICAgICAgfSk7CiAgICAgICAgdmFyIF9sb29wXzEgPSBmdW5jdGlvbihzb3VyY2VJbmRleDIpIHsKICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShzb3VyY2VzW3NvdXJjZUluZGV4Ml0pLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgICAgYnVmZmVyc1tzb3VyY2VJbmRleDJdLnB1c2godmFsdWUpOwogICAgICAgICAgICBpZiAoYnVmZmVycy5ldmVyeShmdW5jdGlvbihidWZmZXIpIHsKICAgICAgICAgICAgICByZXR1cm4gYnVmZmVyLmxlbmd0aDsKICAgICAgICAgICAgfSkpIHsKICAgICAgICAgICAgICB2YXIgcmVzdWx0ID0gYnVmZmVycy5tYXAoZnVuY3Rpb24oYnVmZmVyKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gYnVmZmVyLnNoaWZ0KCk7CiAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHJlc3VsdFNlbGVjdG9yID8gcmVzdWx0U2VsZWN0b3IuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQocmVzdWx0KSkpIDogcmVzdWx0KTsKICAgICAgICAgICAgICBpZiAoYnVmZmVycy5zb21lKGZ1bmN0aW9uKGJ1ZmZlciwgaSkgewogICAgICAgICAgICAgICAgcmV0dXJuICFidWZmZXIubGVuZ3RoICYmIGNvbXBsZXRlZFtpXTsKICAgICAgICAgICAgICB9KSkgewogICAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGNvbXBsZXRlZFtzb3VyY2VJbmRleDJdID0gdHJ1ZTsKICAgICAgICAgICAgIWJ1ZmZlcnNbc291cmNlSW5kZXgyXS5sZW5ndGggJiYgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfSkpOwogICAgICAgIH07CiAgICAgICAgZm9yICh2YXIgc291cmNlSW5kZXggPSAwOyAhc3Vic2NyaWJlci5jbG9zZWQgJiYgc291cmNlSW5kZXggPCBzb3VyY2VzLmxlbmd0aDsgc291cmNlSW5kZXgrKykgewogICAgICAgICAgX2xvb3BfMShzb3VyY2VJbmRleCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIGJ1ZmZlcnMgPSBjb21wbGV0ZWQgPSBudWxsOwogICAgICAgIH07CiAgICAgIH0pIDogZW1wdHlfMS5FTVBUWTsKICAgIH0KICAgIGV4cG9ydHMyLnppcCA9IHppcDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvdHlwZXMuanMKdmFyIHJlcXVpcmVfdHlwZXMyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL3R5cGVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9hdWRpdC5qcwp2YXIgcmVxdWlyZV9hdWRpdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYXVkaXQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmF1ZGl0ID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBhdWRpdChkdXJhdGlvblNlbGVjdG9yKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICB2YXIgbGFzdFZhbHVlID0gbnVsbDsKICAgICAgICB2YXIgZHVyYXRpb25TdWJzY3JpYmVyID0gbnVsbDsKICAgICAgICB2YXIgaXNDb21wbGV0ZSA9IGZhbHNlOwogICAgICAgIHZhciBlbmREdXJhdGlvbiA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgZHVyYXRpb25TdWJzY3JpYmVyID09PSBudWxsIHx8IGR1cmF0aW9uU3Vic2NyaWJlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogZHVyYXRpb25TdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICBkdXJhdGlvblN1YnNjcmliZXIgPSBudWxsOwogICAgICAgICAgaWYgKGhhc1ZhbHVlKSB7CiAgICAgICAgICAgIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgICAgIHZhciB2YWx1ZSA9IGxhc3RWYWx1ZTsKICAgICAgICAgICAgbGFzdFZhbHVlID0gbnVsbDsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICAgIGlzQ29tcGxldGUgJiYgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH07CiAgICAgICAgdmFyIGNsZWFudXBEdXJhdGlvbiA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgZHVyYXRpb25TdWJzY3JpYmVyID0gbnVsbDsKICAgICAgICAgIGlzQ29tcGxldGUgJiYgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH07CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgIGxhc3RWYWx1ZSA9IHZhbHVlOwogICAgICAgICAgaWYgKCFkdXJhdGlvblN1YnNjcmliZXIpIHsKICAgICAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKGR1cmF0aW9uU2VsZWN0b3IodmFsdWUpKS5zdWJzY3JpYmUoZHVyYXRpb25TdWJzY3JpYmVyID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGVuZER1cmF0aW9uLCBjbGVhbnVwRHVyYXRpb24pKTsKICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIGlzQ29tcGxldGUgPSB0cnVlOwogICAgICAgICAgKCFoYXNWYWx1ZSB8fCAhZHVyYXRpb25TdWJzY3JpYmVyIHx8IGR1cmF0aW9uU3Vic2NyaWJlci5jbG9zZWQpICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuYXVkaXQgPSBhdWRpdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2F1ZGl0VGltZS5qcwp2YXIgcmVxdWlyZV9hdWRpdFRpbWUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2F1ZGl0VGltZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYXVkaXRUaW1lID0gdm9pZCAwOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgYXVkaXRfMSA9IHJlcXVpcmVfYXVkaXQoKTsKICAgIHZhciB0aW1lcl8xID0gcmVxdWlyZV90aW1lcigpOwogICAgZnVuY3Rpb24gYXVkaXRUaW1lKGR1cmF0aW9uLCBzY2hlZHVsZXIpIHsKICAgICAgaWYgKHNjaGVkdWxlciA9PT0gdm9pZCAwKSB7CiAgICAgICAgc2NoZWR1bGVyID0gYXN5bmNfMS5hc3luY1NjaGVkdWxlcjsKICAgICAgfQogICAgICByZXR1cm4gYXVkaXRfMS5hdWRpdChmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gdGltZXJfMS50aW1lcihkdXJhdGlvbiwgc2NoZWR1bGVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5hdWRpdFRpbWUgPSBhdWRpdFRpbWU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9idWZmZXIuanMKdmFyIHJlcXVpcmVfYnVmZmVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9idWZmZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmJ1ZmZlciA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gYnVmZmVyKGNsb3NpbmdOb3RpZmllcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGN1cnJlbnRCdWZmZXIgPSBbXTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuIGN1cnJlbnRCdWZmZXIucHVzaCh2YWx1ZSk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoY3VycmVudEJ1ZmZlcik7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShjbG9zaW5nTm90aWZpZXIpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgYiA9IGN1cnJlbnRCdWZmZXI7CiAgICAgICAgICBjdXJyZW50QnVmZmVyID0gW107CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoYik7CiAgICAgICAgfSwgbm9vcF8xLm5vb3ApKTsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICBjdXJyZW50QnVmZmVyID0gbnVsbDsKICAgICAgICB9OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmJ1ZmZlciA9IGJ1ZmZlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2J1ZmZlckNvdW50LmpzCnZhciByZXF1aXJlX2J1ZmZlckNvdW50ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9idWZmZXJDb3VudC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYnVmZmVyQ291bnQgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGFyclJlbW92ZV8xID0gcmVxdWlyZV9hcnJSZW1vdmUoKTsKICAgIGZ1bmN0aW9uIGJ1ZmZlckNvdW50KGJ1ZmZlclNpemUsIHN0YXJ0QnVmZmVyRXZlcnkpIHsKICAgICAgaWYgKHN0YXJ0QnVmZmVyRXZlcnkgPT09IHZvaWQgMCkgewogICAgICAgIHN0YXJ0QnVmZmVyRXZlcnkgPSBudWxsOwogICAgICB9CiAgICAgIHN0YXJ0QnVmZmVyRXZlcnkgPSBzdGFydEJ1ZmZlckV2ZXJ5ICE9PSBudWxsICYmIHN0YXJ0QnVmZmVyRXZlcnkgIT09IHZvaWQgMCA/IHN0YXJ0QnVmZmVyRXZlcnkgOiBidWZmZXJTaXplOwogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGJ1ZmZlcnMgPSBbXTsKICAgICAgICB2YXIgY291bnQgPSAwOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgZV8xLCBfYSwgZV8yLCBfYjsKICAgICAgICAgIHZhciB0b0VtaXQgPSBudWxsOwogICAgICAgICAgaWYgKGNvdW50KysgJSBzdGFydEJ1ZmZlckV2ZXJ5ID09PSAwKSB7CiAgICAgICAgICAgIGJ1ZmZlcnMucHVzaChbXSk7CiAgICAgICAgICB9CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBmb3IgKHZhciBidWZmZXJzXzEgPSBfX3ZhbHVlcyhidWZmZXJzKSwgYnVmZmVyc18xXzEgPSBidWZmZXJzXzEubmV4dCgpOyAhYnVmZmVyc18xXzEuZG9uZTsgYnVmZmVyc18xXzEgPSBidWZmZXJzXzEubmV4dCgpKSB7CiAgICAgICAgICAgICAgdmFyIGJ1ZmZlciA9IGJ1ZmZlcnNfMV8xLnZhbHVlOwogICAgICAgICAgICAgIGJ1ZmZlci5wdXNoKHZhbHVlKTsKICAgICAgICAgICAgICBpZiAoYnVmZmVyU2l6ZSA8PSBidWZmZXIubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICB0b0VtaXQgPSB0b0VtaXQgIT09IG51bGwgJiYgdG9FbWl0ICE9PSB2b2lkIDAgPyB0b0VtaXQgOiBbXTsKICAgICAgICAgICAgICAgIHRvRW1pdC5wdXNoKGJ1ZmZlcik7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9IGNhdGNoIChlXzFfMSkgewogICAgICAgICAgICBlXzEgPSB7IGVycm9yOiBlXzFfMSB9OwogICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICBpZiAoYnVmZmVyc18xXzEgJiYgIWJ1ZmZlcnNfMV8xLmRvbmUgJiYgKF9hID0gYnVmZmVyc18xLnJldHVybikpIF9hLmNhbGwoYnVmZmVyc18xKTsKICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICBpZiAoZV8xKSB0aHJvdyBlXzEuZXJyb3I7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmICh0b0VtaXQpIHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICBmb3IgKHZhciB0b0VtaXRfMSA9IF9fdmFsdWVzKHRvRW1pdCksIHRvRW1pdF8xXzEgPSB0b0VtaXRfMS5uZXh0KCk7ICF0b0VtaXRfMV8xLmRvbmU7IHRvRW1pdF8xXzEgPSB0b0VtaXRfMS5uZXh0KCkpIHsKICAgICAgICAgICAgICAgIHZhciBidWZmZXIgPSB0b0VtaXRfMV8xLnZhbHVlOwogICAgICAgICAgICAgICAgYXJyUmVtb3ZlXzEuYXJyUmVtb3ZlKGJ1ZmZlcnMsIGJ1ZmZlcik7CiAgICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoYnVmZmVyKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gY2F0Y2ggKGVfMl8xKSB7CiAgICAgICAgICAgICAgZV8yID0geyBlcnJvcjogZV8yXzEgfTsKICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgaWYgKHRvRW1pdF8xXzEgJiYgIXRvRW1pdF8xXzEuZG9uZSAmJiAoX2IgPSB0b0VtaXRfMS5yZXR1cm4pKSBfYi5jYWxsKHRvRW1pdF8xKTsKICAgICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgICAgaWYgKGVfMikgdGhyb3cgZV8yLmVycm9yOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgdmFyIGVfMywgX2E7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBmb3IgKHZhciBidWZmZXJzXzIgPSBfX3ZhbHVlcyhidWZmZXJzKSwgYnVmZmVyc18yXzEgPSBidWZmZXJzXzIubmV4dCgpOyAhYnVmZmVyc18yXzEuZG9uZTsgYnVmZmVyc18yXzEgPSBidWZmZXJzXzIubmV4dCgpKSB7CiAgICAgICAgICAgICAgdmFyIGJ1ZmZlciA9IGJ1ZmZlcnNfMl8xLnZhbHVlOwogICAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChidWZmZXIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGNhdGNoIChlXzNfMSkgewogICAgICAgICAgICBlXzMgPSB7IGVycm9yOiBlXzNfMSB9OwogICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICBpZiAoYnVmZmVyc18yXzEgJiYgIWJ1ZmZlcnNfMl8xLmRvbmUgJiYgKF9hID0gYnVmZmVyc18yLnJldHVybikpIF9hLmNhbGwoYnVmZmVyc18yKTsKICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICBpZiAoZV8zKSB0aHJvdyBlXzMuZXJyb3I7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgYnVmZmVycyA9IG51bGw7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmJ1ZmZlckNvdW50ID0gYnVmZmVyQ291bnQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9idWZmZXJUaW1lLmpzCnZhciByZXF1aXJlX2J1ZmZlclRpbWUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2J1ZmZlclRpbWUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX192YWx1ZXMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3ZhbHVlcyB8fCBmdW5jdGlvbihvKSB7CiAgICAgIHZhciBzID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBTeW1ib2wuaXRlcmF0b3IsIG0gPSBzICYmIG9bc10sIGkgPSAwOwogICAgICBpZiAobSkgcmV0dXJuIG0uY2FsbChvKTsKICAgICAgaWYgKG8gJiYgdHlwZW9mIG8ubGVuZ3RoID09PSAibnVtYmVyIikgcmV0dXJuIHsKICAgICAgICBuZXh0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChvICYmIGkgPj0gby5sZW5ndGgpIG8gPSB2b2lkIDA7CiAgICAgICAgICByZXR1cm4geyB2YWx1ZTogbyAmJiBvW2krK10sIGRvbmU6ICFvIH07CiAgICAgICAgfQogICAgICB9OwogICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKHMgPyAiT2JqZWN0IGlzIG5vdCBpdGVyYWJsZS4iIDogIlN5bWJvbC5pdGVyYXRvciBpcyBub3QgZGVmaW5lZC4iKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmJ1ZmZlclRpbWUgPSB2b2lkIDA7CiAgICB2YXIgU3Vic2NyaXB0aW9uXzEgPSByZXF1aXJlX1N1YnNjcmlwdGlvbigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBhcnJSZW1vdmVfMSA9IHJlcXVpcmVfYXJyUmVtb3ZlKCk7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBleGVjdXRlU2NoZWR1bGVfMSA9IHJlcXVpcmVfZXhlY3V0ZVNjaGVkdWxlKCk7CiAgICBmdW5jdGlvbiBidWZmZXJUaW1lKGJ1ZmZlclRpbWVTcGFuKSB7CiAgICAgIHZhciBfYSwgX2I7CiAgICAgIHZhciBvdGhlckFyZ3MgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAxOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBvdGhlckFyZ3NbX2kgLSAxXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHNjaGVkdWxlciA9IChfYSA9IGFyZ3NfMS5wb3BTY2hlZHVsZXIob3RoZXJBcmdzKSkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogYXN5bmNfMS5hc3luY1NjaGVkdWxlcjsKICAgICAgdmFyIGJ1ZmZlckNyZWF0aW9uSW50ZXJ2YWwgPSAoX2IgPSBvdGhlckFyZ3NbMF0pICE9PSBudWxsICYmIF9iICE9PSB2b2lkIDAgPyBfYiA6IG51bGw7CiAgICAgIHZhciBtYXhCdWZmZXJTaXplID0gb3RoZXJBcmdzWzFdIHx8IEluZmluaXR5OwogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGJ1ZmZlclJlY29yZHMgPSBbXTsKICAgICAgICB2YXIgcmVzdGFydE9uRW1pdCA9IGZhbHNlOwogICAgICAgIHZhciBlbWl0ID0gZnVuY3Rpb24ocmVjb3JkKSB7CiAgICAgICAgICB2YXIgYnVmZmVyID0gcmVjb3JkLmJ1ZmZlciwgc3VicyA9IHJlY29yZC5zdWJzOwogICAgICAgICAgc3Vicy51bnN1YnNjcmliZSgpOwogICAgICAgICAgYXJyUmVtb3ZlXzEuYXJyUmVtb3ZlKGJ1ZmZlclJlY29yZHMsIHJlY29yZCk7CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoYnVmZmVyKTsKICAgICAgICAgIHJlc3RhcnRPbkVtaXQgJiYgc3RhcnRCdWZmZXIoKTsKICAgICAgICB9OwogICAgICAgIHZhciBzdGFydEJ1ZmZlciA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKGJ1ZmZlclJlY29yZHMpIHsKICAgICAgICAgICAgdmFyIHN1YnMgPSBuZXcgU3Vic2NyaXB0aW9uXzEuU3Vic2NyaXB0aW9uKCk7CiAgICAgICAgICAgIHN1YnNjcmliZXIuYWRkKHN1YnMpOwogICAgICAgICAgICB2YXIgYnVmZmVyID0gW107CiAgICAgICAgICAgIHZhciByZWNvcmRfMSA9IHsKICAgICAgICAgICAgICBidWZmZXIsCiAgICAgICAgICAgICAgc3VicwogICAgICAgICAgICB9OwogICAgICAgICAgICBidWZmZXJSZWNvcmRzLnB1c2gocmVjb3JkXzEpOwogICAgICAgICAgICBleGVjdXRlU2NoZWR1bGVfMS5leGVjdXRlU2NoZWR1bGUoc3Vicywgc2NoZWR1bGVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICByZXR1cm4gZW1pdChyZWNvcmRfMSk7CiAgICAgICAgICAgIH0sIGJ1ZmZlclRpbWVTcGFuKTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIGlmIChidWZmZXJDcmVhdGlvbkludGVydmFsICE9PSBudWxsICYmIGJ1ZmZlckNyZWF0aW9uSW50ZXJ2YWwgPj0gMCkgewogICAgICAgICAgZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnNjcmliZXIsIHNjaGVkdWxlciwgc3RhcnRCdWZmZXIsIGJ1ZmZlckNyZWF0aW9uSW50ZXJ2YWwsIHRydWUpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXN0YXJ0T25FbWl0ID0gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgc3RhcnRCdWZmZXIoKTsKICAgICAgICB2YXIgYnVmZmVyVGltZVN1YnNjcmliZXIgPSBPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciBlXzEsIF9hMjsKICAgICAgICAgIHZhciByZWNvcmRzQ29weSA9IGJ1ZmZlclJlY29yZHMuc2xpY2UoKTsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIGZvciAodmFyIHJlY29yZHNDb3B5XzEgPSBfX3ZhbHVlcyhyZWNvcmRzQ29weSksIHJlY29yZHNDb3B5XzFfMSA9IHJlY29yZHNDb3B5XzEubmV4dCgpOyAhcmVjb3Jkc0NvcHlfMV8xLmRvbmU7IHJlY29yZHNDb3B5XzFfMSA9IHJlY29yZHNDb3B5XzEubmV4dCgpKSB7CiAgICAgICAgICAgICAgdmFyIHJlY29yZCA9IHJlY29yZHNDb3B5XzFfMS52YWx1ZTsKICAgICAgICAgICAgICB2YXIgYnVmZmVyID0gcmVjb3JkLmJ1ZmZlcjsKICAgICAgICAgICAgICBidWZmZXIucHVzaCh2YWx1ZSk7CiAgICAgICAgICAgICAgbWF4QnVmZmVyU2l6ZSA8PSBidWZmZXIubGVuZ3RoICYmIGVtaXQocmVjb3JkKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKHJlY29yZHNDb3B5XzFfMSAmJiAhcmVjb3Jkc0NvcHlfMV8xLmRvbmUgJiYgKF9hMiA9IHJlY29yZHNDb3B5XzEucmV0dXJuKSkgX2EyLmNhbGwocmVjb3Jkc0NvcHlfMSk7CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgaWYgKGVfMSkgdGhyb3cgZV8xLmVycm9yOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB3aGlsZSAoYnVmZmVyUmVjb3JkcyA9PT0gbnVsbCB8fCBidWZmZXJSZWNvcmRzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBidWZmZXJSZWNvcmRzLmxlbmd0aCkgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoYnVmZmVyUmVjb3Jkcy5zaGlmdCgpLmJ1ZmZlcik7CiAgICAgICAgICB9CiAgICAgICAgICBidWZmZXJUaW1lU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBidWZmZXJUaW1lU3Vic2NyaWJlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogYnVmZmVyVGltZVN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIHN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICB9LCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIGJ1ZmZlclJlY29yZHMgPSBudWxsOwogICAgICAgIH0pOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoYnVmZmVyVGltZVN1YnNjcmliZXIpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmJ1ZmZlclRpbWUgPSBidWZmZXJUaW1lOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYnVmZmVyVG9nZ2xlLmpzCnZhciByZXF1aXJlX2J1ZmZlclRvZ2dsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYnVmZmVyVG9nZ2xlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fdmFsdWVzID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX192YWx1ZXMgfHwgZnVuY3Rpb24obykgewogICAgICB2YXIgcyA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLml0ZXJhdG9yLCBtID0gcyAmJiBvW3NdLCBpID0gMDsKICAgICAgaWYgKG0pIHJldHVybiBtLmNhbGwobyk7CiAgICAgIGlmIChvICYmIHR5cGVvZiBvLmxlbmd0aCA9PT0gIm51bWJlciIpIHJldHVybiB7CiAgICAgICAgbmV4dDogZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAobyAmJiBpID49IG8ubGVuZ3RoKSBvID0gdm9pZCAwOwogICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG8gJiYgb1tpKytdLCBkb25lOiAhbyB9OwogICAgICAgIH0KICAgICAgfTsKICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihzID8gIk9iamVjdCBpcyBub3QgaXRlcmFibGUuIiA6ICJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5idWZmZXJUb2dnbGUgPSB2b2lkIDA7CiAgICB2YXIgU3Vic2NyaXB0aW9uXzEgPSByZXF1aXJlX1N1YnNjcmlwdGlvbigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICB2YXIgYXJyUmVtb3ZlXzEgPSByZXF1aXJlX2FyclJlbW92ZSgpOwogICAgZnVuY3Rpb24gYnVmZmVyVG9nZ2xlKG9wZW5pbmdzLCBjbG9zaW5nU2VsZWN0b3IpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBidWZmZXJzID0gW107CiAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKG9wZW5pbmdzKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKG9wZW5WYWx1ZSkgewogICAgICAgICAgdmFyIGJ1ZmZlciA9IFtdOwogICAgICAgICAgYnVmZmVycy5wdXNoKGJ1ZmZlcik7CiAgICAgICAgICB2YXIgY2xvc2luZ1N1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb24oKTsKICAgICAgICAgIHZhciBlbWl0QnVmZmVyID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGFyclJlbW92ZV8xLmFyclJlbW92ZShidWZmZXJzLCBidWZmZXIpOwogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoYnVmZmVyKTsKICAgICAgICAgICAgY2xvc2luZ1N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpOwogICAgICAgICAgfTsKICAgICAgICAgIGNsb3NpbmdTdWJzY3JpcHRpb24uYWRkKGlubmVyRnJvbV8xLmlubmVyRnJvbShjbG9zaW5nU2VsZWN0b3Iob3BlblZhbHVlKSkuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBlbWl0QnVmZmVyLCBub29wXzEubm9vcCkpKTsKICAgICAgICB9LCBub29wXzEubm9vcCkpOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgZV8xLCBfYTsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIGZvciAodmFyIGJ1ZmZlcnNfMSA9IF9fdmFsdWVzKGJ1ZmZlcnMpLCBidWZmZXJzXzFfMSA9IGJ1ZmZlcnNfMS5uZXh0KCk7ICFidWZmZXJzXzFfMS5kb25lOyBidWZmZXJzXzFfMSA9IGJ1ZmZlcnNfMS5uZXh0KCkpIHsKICAgICAgICAgICAgICB2YXIgYnVmZmVyID0gYnVmZmVyc18xXzEudmFsdWU7CiAgICAgICAgICAgICAgYnVmZmVyLnB1c2godmFsdWUpOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGNhdGNoIChlXzFfMSkgewogICAgICAgICAgICBlXzEgPSB7IGVycm9yOiBlXzFfMSB9OwogICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICBpZiAoYnVmZmVyc18xXzEgJiYgIWJ1ZmZlcnNfMV8xLmRvbmUgJiYgKF9hID0gYnVmZmVyc18xLnJldHVybikpIF9hLmNhbGwoYnVmZmVyc18xKTsKICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICBpZiAoZV8xKSB0aHJvdyBlXzEuZXJyb3I7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHdoaWxlIChidWZmZXJzLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGJ1ZmZlcnMuc2hpZnQoKSk7CiAgICAgICAgICB9CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmJ1ZmZlclRvZ2dsZSA9IGJ1ZmZlclRvZ2dsZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2J1ZmZlcldoZW4uanMKdmFyIHJlcXVpcmVfYnVmZmVyV2hlbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvYnVmZmVyV2hlbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuYnVmZmVyV2hlbiA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gYnVmZmVyV2hlbihjbG9zaW5nU2VsZWN0b3IpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBidWZmZXIgPSBudWxsOwogICAgICAgIHZhciBjbG9zaW5nU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgdmFyIG9wZW5CdWZmZXIgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGNsb3NpbmdTdWJzY3JpYmVyID09PSBudWxsIHx8IGNsb3NpbmdTdWJzY3JpYmVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBjbG9zaW5nU3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgdmFyIGIgPSBidWZmZXI7CiAgICAgICAgICBidWZmZXIgPSBbXTsKICAgICAgICAgIGIgJiYgc3Vic2NyaWJlci5uZXh0KGIpOwogICAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKGNsb3NpbmdTZWxlY3RvcigpKS5zdWJzY3JpYmUoY2xvc2luZ1N1YnNjcmliZXIgPSBPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgb3BlbkJ1ZmZlciwgbm9vcF8xLm5vb3ApKTsKICAgICAgICB9OwogICAgICAgIG9wZW5CdWZmZXIoKTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuIGJ1ZmZlciA9PT0gbnVsbCB8fCBidWZmZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGJ1ZmZlci5wdXNoKHZhbHVlKTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIGJ1ZmZlciAmJiBzdWJzY3JpYmVyLm5leHQoYnVmZmVyKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIGJ1ZmZlciA9IGNsb3NpbmdTdWJzY3JpYmVyID0gbnVsbDsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuYnVmZmVyV2hlbiA9IGJ1ZmZlcldoZW47CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jYXRjaEVycm9yLmpzCnZhciByZXF1aXJlX2NhdGNoRXJyb3IgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NhdGNoRXJyb3IuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNhdGNoRXJyb3IgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIGZ1bmN0aW9uIGNhdGNoRXJyb3Ioc2VsZWN0b3IpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpbm5lclN1YiA9IG51bGw7CiAgICAgICAgdmFyIHN5bmNVbnN1YiA9IGZhbHNlOwogICAgICAgIHZhciBoYW5kbGVkUmVzdWx0OwogICAgICAgIGlubmVyU3ViID0gc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKGVycikgewogICAgICAgICAgaGFuZGxlZFJlc3VsdCA9IGlubmVyRnJvbV8xLmlubmVyRnJvbShzZWxlY3RvcihlcnIsIGNhdGNoRXJyb3Ioc2VsZWN0b3IpKHNvdXJjZSkpKTsKICAgICAgICAgIGlmIChpbm5lclN1YikgewogICAgICAgICAgICBpbm5lclN1Yi51bnN1YnNjcmliZSgpOwogICAgICAgICAgICBpbm5lclN1YiA9IG51bGw7CiAgICAgICAgICAgIGhhbmRsZWRSZXN1bHQuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc3luY1Vuc3ViID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgICAgaWYgKHN5bmNVbnN1YikgewogICAgICAgICAgaW5uZXJTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIGlubmVyU3ViID0gbnVsbDsKICAgICAgICAgIGhhbmRsZWRSZXN1bHQuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICAgIH0KICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5jYXRjaEVycm9yID0gY2F0Y2hFcnJvcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NjYW5JbnRlcm5hbHMuanMKdmFyIHJlcXVpcmVfc2NhbkludGVybmFscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2NhbkludGVybmFscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2NhbkludGVybmFscyA9IHZvaWQgMDsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBzY2FuSW50ZXJuYWxzKGFjY3VtdWxhdG9yLCBzZWVkLCBoYXNTZWVkLCBlbWl0T25OZXh0LCBlbWl0QmVmb3JlQ29tcGxldGUpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBoYXNTdGF0ZSA9IGhhc1NlZWQ7CiAgICAgICAgdmFyIHN0YXRlID0gc2VlZDsKICAgICAgICB2YXIgaW5kZXggPSAwOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgaSA9IGluZGV4Kys7CiAgICAgICAgICBzdGF0ZSA9IGhhc1N0YXRlID8gYWNjdW11bGF0b3Ioc3RhdGUsIHZhbHVlLCBpKSA6IChoYXNTdGF0ZSA9IHRydWUsIHZhbHVlKTsKICAgICAgICAgIGVtaXRPbk5leHQgJiYgc3Vic2NyaWJlci5uZXh0KHN0YXRlKTsKICAgICAgICB9LCBlbWl0QmVmb3JlQ29tcGxldGUgJiYgZnVuY3Rpb24oKSB7CiAgICAgICAgICBoYXNTdGF0ZSAmJiBzdWJzY3JpYmVyLm5leHQoc3RhdGUpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnNjYW5JbnRlcm5hbHMgPSBzY2FuSW50ZXJuYWxzOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcmVkdWNlLmpzCnZhciByZXF1aXJlX3JlZHVjZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcmVkdWNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yZWR1Y2UgPSB2b2lkIDA7CiAgICB2YXIgc2NhbkludGVybmFsc18xID0gcmVxdWlyZV9zY2FuSW50ZXJuYWxzKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICBmdW5jdGlvbiByZWR1Y2UoYWNjdW11bGF0b3IsIHNlZWQpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKHNjYW5JbnRlcm5hbHNfMS5zY2FuSW50ZXJuYWxzKGFjY3VtdWxhdG9yLCBzZWVkLCBhcmd1bWVudHMubGVuZ3RoID49IDIsIGZhbHNlLCB0cnVlKSk7CiAgICB9CiAgICBleHBvcnRzMi5yZWR1Y2UgPSByZWR1Y2U7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90b0FycmF5LmpzCnZhciByZXF1aXJlX3RvQXJyYXkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3RvQXJyYXkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRvQXJyYXkgPSB2b2lkIDA7CiAgICB2YXIgcmVkdWNlXzEgPSByZXF1aXJlX3JlZHVjZSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIGFyclJlZHVjZXIgPSBmdW5jdGlvbihhcnIsIHZhbHVlKSB7CiAgICAgIHJldHVybiBhcnIucHVzaCh2YWx1ZSksIGFycjsKICAgIH07CiAgICBmdW5jdGlvbiB0b0FycmF5KCkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgcmVkdWNlXzEucmVkdWNlKGFyclJlZHVjZXIsIFtdKShzb3VyY2UpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50b0FycmF5ID0gdG9BcnJheTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2pvaW5BbGxJbnRlcm5hbHMuanMKdmFyIHJlcXVpcmVfam9pbkFsbEludGVybmFscyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvam9pbkFsbEludGVybmFscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuam9pbkFsbEludGVybmFscyA9IHZvaWQgMDsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgdmFyIG1hcE9uZU9yTWFueUFyZ3NfMSA9IHJlcXVpcmVfbWFwT25lT3JNYW55QXJncygpOwogICAgdmFyIHBpcGVfMSA9IHJlcXVpcmVfcGlwZSgpOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgdG9BcnJheV8xID0gcmVxdWlyZV90b0FycmF5KCk7CiAgICBmdW5jdGlvbiBqb2luQWxsSW50ZXJuYWxzKGpvaW5GbiwgcHJvamVjdCkgewogICAgICByZXR1cm4gcGlwZV8xLnBpcGUodG9BcnJheV8xLnRvQXJyYXkoKSwgbWVyZ2VNYXBfMS5tZXJnZU1hcChmdW5jdGlvbihzb3VyY2VzKSB7CiAgICAgICAgcmV0dXJuIGpvaW5Gbihzb3VyY2VzKTsKICAgICAgfSksIHByb2plY3QgPyBtYXBPbmVPck1hbnlBcmdzXzEubWFwT25lT3JNYW55QXJncyhwcm9qZWN0KSA6IGlkZW50aXR5XzEuaWRlbnRpdHkpOwogICAgfQogICAgZXhwb3J0czIuam9pbkFsbEludGVybmFscyA9IGpvaW5BbGxJbnRlcm5hbHM7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb21iaW5lTGF0ZXN0QWxsLmpzCnZhciByZXF1aXJlX2NvbWJpbmVMYXRlc3RBbGwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbWJpbmVMYXRlc3RBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbWJpbmVMYXRlc3RBbGwgPSB2b2lkIDA7CiAgICB2YXIgY29tYmluZUxhdGVzdF8xID0gcmVxdWlyZV9jb21iaW5lTGF0ZXN0KCk7CiAgICB2YXIgam9pbkFsbEludGVybmFsc18xID0gcmVxdWlyZV9qb2luQWxsSW50ZXJuYWxzKCk7CiAgICBmdW5jdGlvbiBjb21iaW5lTGF0ZXN0QWxsKHByb2plY3QpIHsKICAgICAgcmV0dXJuIGpvaW5BbGxJbnRlcm5hbHNfMS5qb2luQWxsSW50ZXJuYWxzKGNvbWJpbmVMYXRlc3RfMS5jb21iaW5lTGF0ZXN0LCBwcm9qZWN0KTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbWJpbmVMYXRlc3RBbGwgPSBjb21iaW5lTGF0ZXN0QWxsOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29tYmluZUFsbC5qcwp2YXIgcmVxdWlyZV9jb21iaW5lQWxsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb21iaW5lQWxsLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb21iaW5lQWxsID0gdm9pZCAwOwogICAgdmFyIGNvbWJpbmVMYXRlc3RBbGxfMSA9IHJlcXVpcmVfY29tYmluZUxhdGVzdEFsbCgpOwogICAgZXhwb3J0czIuY29tYmluZUFsbCA9IGNvbWJpbmVMYXRlc3RBbGxfMS5jb21iaW5lTGF0ZXN0QWxsOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29tYmluZUxhdGVzdC5qcwp2YXIgcmVxdWlyZV9jb21iaW5lTGF0ZXN0MiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29tYmluZUxhdGVzdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdCA9IHZvaWQgMDsKICAgIHZhciBjb21iaW5lTGF0ZXN0XzEgPSByZXF1aXJlX2NvbWJpbmVMYXRlc3QoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBhcmdzT3JBcmdBcnJheV8xID0gcmVxdWlyZV9hcmdzT3JBcmdBcnJheSgpOwogICAgdmFyIG1hcE9uZU9yTWFueUFyZ3NfMSA9IHJlcXVpcmVfbWFwT25lT3JNYW55QXJncygpOwogICAgdmFyIHBpcGVfMSA9IHJlcXVpcmVfcGlwZSgpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgZnVuY3Rpb24gY29tYmluZUxhdGVzdCgpIHsKICAgICAgdmFyIGFyZ3MgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHJlc3VsdFNlbGVjdG9yID0gYXJnc18xLnBvcFJlc3VsdFNlbGVjdG9yKGFyZ3MpOwogICAgICByZXR1cm4gcmVzdWx0U2VsZWN0b3IgPyBwaXBlXzEucGlwZShjb21iaW5lTGF0ZXN0LmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKGFyZ3MpKSksIG1hcE9uZU9yTWFueUFyZ3NfMS5tYXBPbmVPck1hbnlBcmdzKHJlc3VsdFNlbGVjdG9yKSkgOiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBjb21iaW5lTGF0ZXN0XzEuY29tYmluZUxhdGVzdEluaXQoX19zcHJlYWRBcnJheShbc291cmNlXSwgX19yZWFkKGFyZ3NPckFyZ0FycmF5XzEuYXJnc09yQXJnQXJyYXkoYXJncykpKSkoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuY29tYmluZUxhdGVzdCA9IGNvbWJpbmVMYXRlc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb21iaW5lTGF0ZXN0V2l0aC5qcwp2YXIgcmVxdWlyZV9jb21iaW5lTGF0ZXN0V2l0aCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29tYmluZUxhdGVzdFdpdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbWJpbmVMYXRlc3RXaXRoID0gdm9pZCAwOwogICAgdmFyIGNvbWJpbmVMYXRlc3RfMSA9IHJlcXVpcmVfY29tYmluZUxhdGVzdDIoKTsKICAgIGZ1bmN0aW9uIGNvbWJpbmVMYXRlc3RXaXRoKCkgewogICAgICB2YXIgb3RoZXJTb3VyY2VzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgb3RoZXJTb3VyY2VzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbWJpbmVMYXRlc3RfMS5jb21iaW5lTGF0ZXN0LmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKG90aGVyU291cmNlcykpKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbWJpbmVMYXRlc3RXaXRoID0gY29tYmluZUxhdGVzdFdpdGg7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRNYXAuanMKdmFyIHJlcXVpcmVfY29uY2F0TWFwID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRNYXAuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbmNhdE1hcCA9IHZvaWQgMDsKICAgIHZhciBtZXJnZU1hcF8xID0gcmVxdWlyZV9tZXJnZU1hcCgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gY29uY2F0TWFwKHByb2plY3QsIHJlc3VsdFNlbGVjdG9yKSB7CiAgICAgIHJldHVybiBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihyZXN1bHRTZWxlY3RvcikgPyBtZXJnZU1hcF8xLm1lcmdlTWFwKHByb2plY3QsIHJlc3VsdFNlbGVjdG9yLCAxKSA6IG1lcmdlTWFwXzEubWVyZ2VNYXAocHJvamVjdCwgMSk7CiAgICB9CiAgICBleHBvcnRzMi5jb25jYXRNYXAgPSBjb25jYXRNYXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRNYXBUby5qcwp2YXIgcmVxdWlyZV9jb25jYXRNYXBUbyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29uY2F0TWFwVG8uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbmNhdE1hcFRvID0gdm9pZCAwOwogICAgdmFyIGNvbmNhdE1hcF8xID0gcmVxdWlyZV9jb25jYXRNYXAoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIGZ1bmN0aW9uIGNvbmNhdE1hcFRvKGlubmVyT2JzZXJ2YWJsZSwgcmVzdWx0U2VsZWN0b3IpIHsKICAgICAgcmV0dXJuIGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHJlc3VsdFNlbGVjdG9yKSA/IGNvbmNhdE1hcF8xLmNvbmNhdE1hcChmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gaW5uZXJPYnNlcnZhYmxlOwogICAgICB9LCByZXN1bHRTZWxlY3RvcikgOiBjb25jYXRNYXBfMS5jb25jYXRNYXAoZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIGlubmVyT2JzZXJ2YWJsZTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5jb25jYXRNYXBUbyA9IGNvbmNhdE1hcFRvOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29uY2F0LmpzCnZhciByZXF1aXJlX2NvbmNhdDIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvbmNhdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY29uY2F0ID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIGNvbmNhdEFsbF8xID0gcmVxdWlyZV9jb25jYXRBbGwoKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBmcm9tXzEgPSByZXF1aXJlX2Zyb20oKTsKICAgIGZ1bmN0aW9uIGNvbmNhdCgpIHsKICAgICAgdmFyIGFyZ3MgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHNjaGVkdWxlciA9IGFyZ3NfMS5wb3BTY2hlZHVsZXIoYXJncyk7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBjb25jYXRBbGxfMS5jb25jYXRBbGwoKShmcm9tXzEuZnJvbShfX3NwcmVhZEFycmF5KFtzb3VyY2VdLCBfX3JlYWQoYXJncykpLCBzY2hlZHVsZXIpKS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuY29uY2F0ID0gY29uY2F0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY29uY2F0V2l0aC5qcwp2YXIgcmVxdWlyZV9jb25jYXRXaXRoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25jYXRXaXRoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb25jYXRXaXRoID0gdm9pZCAwOwogICAgdmFyIGNvbmNhdF8xID0gcmVxdWlyZV9jb25jYXQyKCk7CiAgICBmdW5jdGlvbiBjb25jYXRXaXRoKCkgewogICAgICB2YXIgb3RoZXJTb3VyY2VzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgb3RoZXJTb3VyY2VzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgcmV0dXJuIGNvbmNhdF8xLmNvbmNhdC5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW10sIF9fcmVhZChvdGhlclNvdXJjZXMpKSk7CiAgICB9CiAgICBleHBvcnRzMi5jb25jYXRXaXRoID0gY29uY2F0V2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9mcm9tU3Vic2NyaWJhYmxlLmpzCnZhciByZXF1aXJlX2Zyb21TdWJzY3JpYmFibGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9mcm9tU3Vic2NyaWJhYmxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5mcm9tU3Vic2NyaWJhYmxlID0gdm9pZCAwOwogICAgdmFyIE9ic2VydmFibGVfMSA9IHJlcXVpcmVfT2JzZXJ2YWJsZSgpOwogICAgZnVuY3Rpb24gZnJvbVN1YnNjcmliYWJsZShzdWJzY3JpYmFibGUpIHsKICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZShmdW5jdGlvbihzdWJzY3JpYmVyKSB7CiAgICAgICAgcmV0dXJuIHN1YnNjcmliYWJsZS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZnJvbVN1YnNjcmliYWJsZSA9IGZyb21TdWJzY3JpYmFibGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9jb25uZWN0LmpzCnZhciByZXF1aXJlX2Nvbm5lY3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2Nvbm5lY3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNvbm5lY3QgPSB2b2lkIDA7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIGZyb21TdWJzY3JpYmFibGVfMSA9IHJlcXVpcmVfZnJvbVN1YnNjcmliYWJsZSgpOwogICAgdmFyIERFRkFVTFRfQ09ORklHID0gewogICAgICBjb25uZWN0b3I6IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBuZXcgU3ViamVjdF8xLlN1YmplY3QoKTsKICAgICAgfQogICAgfTsKICAgIGZ1bmN0aW9uIGNvbm5lY3Qoc2VsZWN0b3IsIGNvbmZpZykgewogICAgICBpZiAoY29uZmlnID09PSB2b2lkIDApIHsKICAgICAgICBjb25maWcgPSBERUZBVUxUX0NPTkZJRzsKICAgICAgfQogICAgICB2YXIgY29ubmVjdG9yID0gY29uZmlnLmNvbm5lY3RvcjsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBzdWJqZWN0ID0gY29ubmVjdG9yKCk7CiAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHNlbGVjdG9yKGZyb21TdWJzY3JpYmFibGVfMS5mcm9tU3Vic2NyaWJhYmxlKHN1YmplY3QpKSkuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICAgIHN1YnNjcmliZXIuYWRkKHNvdXJjZS5zdWJzY3JpYmUoc3ViamVjdCkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbm5lY3QgPSBjb25uZWN0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvY291bnQuanMKdmFyIHJlcXVpcmVfY291bnQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2NvdW50LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jb3VudCA9IHZvaWQgMDsKICAgIHZhciByZWR1Y2VfMSA9IHJlcXVpcmVfcmVkdWNlKCk7CiAgICBmdW5jdGlvbiBjb3VudChwcmVkaWNhdGUpIHsKICAgICAgcmV0dXJuIHJlZHVjZV8xLnJlZHVjZShmdW5jdGlvbih0b3RhbCwgdmFsdWUsIGkpIHsKICAgICAgICByZXR1cm4gIXByZWRpY2F0ZSB8fCBwcmVkaWNhdGUodmFsdWUsIGkpID8gdG90YWwgKyAxIDogdG90YWw7CiAgICAgIH0sIDApOwogICAgfQogICAgZXhwb3J0czIuY291bnQgPSBjb3VudDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlYm91bmNlLmpzCnZhciByZXF1aXJlX2RlYm91bmNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZWJvdW5jZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGVib3VuY2UgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIGRlYm91bmNlKGR1cmF0aW9uU2VsZWN0b3IpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgIHZhciBsYXN0VmFsdWUgPSBudWxsOwogICAgICAgIHZhciBkdXJhdGlvblN1YnNjcmliZXIgPSBudWxsOwogICAgICAgIHZhciBlbWl0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICBkdXJhdGlvblN1YnNjcmliZXIgPT09IG51bGwgfHwgZHVyYXRpb25TdWJzY3JpYmVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkdXJhdGlvblN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgICBpZiAoaGFzVmFsdWUpIHsKICAgICAgICAgICAgaGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICAgICAgdmFyIHZhbHVlID0gbGFzdFZhbHVlOwogICAgICAgICAgICBsYXN0VmFsdWUgPSBudWxsOwogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGR1cmF0aW9uU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBkdXJhdGlvblN1YnNjcmliZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGR1cmF0aW9uU3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgaGFzVmFsdWUgPSB0cnVlOwogICAgICAgICAgbGFzdFZhbHVlID0gdmFsdWU7CiAgICAgICAgICBkdXJhdGlvblN1YnNjcmliZXIgPSBPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZW1pdCwgbm9vcF8xLm5vb3ApOwogICAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKGR1cmF0aW9uU2VsZWN0b3IodmFsdWUpKS5zdWJzY3JpYmUoZHVyYXRpb25TdWJzY3JpYmVyKTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIGVtaXQoKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgbGFzdFZhbHVlID0gZHVyYXRpb25TdWJzY3JpYmVyID0gbnVsbDsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZGVib3VuY2UgPSBkZWJvdW5jZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlYm91bmNlVGltZS5qcwp2YXIgcmVxdWlyZV9kZWJvdW5jZVRpbWUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlYm91bmNlVGltZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGVib3VuY2VUaW1lID0gdm9pZCAwOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gZGVib3VuY2VUaW1lKGR1ZVRpbWUsIHNjaGVkdWxlcikgewogICAgICBpZiAoc2NoZWR1bGVyID09PSB2b2lkIDApIHsKICAgICAgICBzY2hlZHVsZXIgPSBhc3luY18xLmFzeW5jU2NoZWR1bGVyOwogICAgICB9CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgYWN0aXZlVGFzayA9IG51bGw7CiAgICAgICAgdmFyIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgdmFyIGxhc3RUaW1lID0gbnVsbDsKICAgICAgICB2YXIgZW1pdCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKGFjdGl2ZVRhc2spIHsKICAgICAgICAgICAgYWN0aXZlVGFzay51bnN1YnNjcmliZSgpOwogICAgICAgICAgICBhY3RpdmVUYXNrID0gbnVsbDsKICAgICAgICAgICAgdmFyIHZhbHVlID0gbGFzdFZhbHVlOwogICAgICAgICAgICBsYXN0VmFsdWUgPSBudWxsOwogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgZnVuY3Rpb24gZW1pdFdoZW5JZGxlKCkgewogICAgICAgICAgdmFyIHRhcmdldFRpbWUgPSBsYXN0VGltZSArIGR1ZVRpbWU7CiAgICAgICAgICB2YXIgbm93ID0gc2NoZWR1bGVyLm5vdygpOwogICAgICAgICAgaWYgKG5vdyA8IHRhcmdldFRpbWUpIHsKICAgICAgICAgICAgYWN0aXZlVGFzayA9IHRoaXMuc2NoZWR1bGUodm9pZCAwLCB0YXJnZXRUaW1lIC0gbm93KTsKICAgICAgICAgICAgc3Vic2NyaWJlci5hZGQoYWN0aXZlVGFzayk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGVtaXQoKTsKICAgICAgICB9CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGxhc3RWYWx1ZSA9IHZhbHVlOwogICAgICAgICAgbGFzdFRpbWUgPSBzY2hlZHVsZXIubm93KCk7CiAgICAgICAgICBpZiAoIWFjdGl2ZVRhc2spIHsKICAgICAgICAgICAgYWN0aXZlVGFzayA9IHNjaGVkdWxlci5zY2hlZHVsZShlbWl0V2hlbklkbGUsIGR1ZVRpbWUpOwogICAgICAgICAgICBzdWJzY3JpYmVyLmFkZChhY3RpdmVUYXNrKTsKICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIGVtaXQoKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgbGFzdFZhbHVlID0gYWN0aXZlVGFzayA9IG51bGw7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRlYm91bmNlVGltZSA9IGRlYm91bmNlVGltZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2RlZmF1bHRJZkVtcHR5LmpzCnZhciByZXF1aXJlX2RlZmF1bHRJZkVtcHR5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZWZhdWx0SWZFbXB0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGVmYXVsdElmRW1wdHkgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gZGVmYXVsdElmRW1wdHkoZGVmYXVsdFZhbHVlKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgaGFzVmFsdWUgPSB0cnVlOwogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmICghaGFzVmFsdWUpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGRlZmF1bHRWYWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRlZmF1bHRJZkVtcHR5ID0gZGVmYXVsdElmRW1wdHk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90YWtlLmpzCnZhciByZXF1aXJlX3Rha2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rha2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRha2UgPSB2b2lkIDA7CiAgICB2YXIgZW1wdHlfMSA9IHJlcXVpcmVfZW1wdHkoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiB0YWtlKGNvdW50KSB7CiAgICAgIHJldHVybiBjb3VudCA8PSAwID8gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIGVtcHR5XzEuRU1QVFk7CiAgICAgIH0gOiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgc2VlbiA9IDA7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGlmICgrK3NlZW4gPD0gY291bnQpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgaWYgKGNvdW50IDw9IHNlZW4pIHsKICAgICAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGFrZSA9IHRha2U7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9pZ25vcmVFbGVtZW50cy5qcwp2YXIgcmVxdWlyZV9pZ25vcmVFbGVtZW50cyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvaWdub3JlRWxlbWVudHMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmlnbm9yZUVsZW1lbnRzID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIGZ1bmN0aW9uIGlnbm9yZUVsZW1lbnRzKCkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgbm9vcF8xLm5vb3ApKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5pZ25vcmVFbGVtZW50cyA9IGlnbm9yZUVsZW1lbnRzOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWFwVG8uanMKdmFyIHJlcXVpcmVfbWFwVG8gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21hcFRvLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5tYXBUbyA9IHZvaWQgMDsKICAgIHZhciBtYXBfMSA9IHJlcXVpcmVfbWFwKCk7CiAgICBmdW5jdGlvbiBtYXBUbyh2YWx1ZSkgewogICAgICByZXR1cm4gbWFwXzEubWFwKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5tYXBUbyA9IG1hcFRvOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVsYXlXaGVuLmpzCnZhciByZXF1aXJlX2RlbGF5V2hlbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVsYXlXaGVuLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWxheVdoZW4gPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0XzEgPSByZXF1aXJlX2NvbmNhdCgpOwogICAgdmFyIHRha2VfMSA9IHJlcXVpcmVfdGFrZSgpOwogICAgdmFyIGlnbm9yZUVsZW1lbnRzXzEgPSByZXF1aXJlX2lnbm9yZUVsZW1lbnRzKCk7CiAgICB2YXIgbWFwVG9fMSA9IHJlcXVpcmVfbWFwVG8oKTsKICAgIHZhciBtZXJnZU1hcF8xID0gcmVxdWlyZV9tZXJnZU1hcCgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIGRlbGF5V2hlbihkZWxheUR1cmF0aW9uU2VsZWN0b3IsIHN1YnNjcmlwdGlvbkRlbGF5KSB7CiAgICAgIGlmIChzdWJzY3JpcHRpb25EZWxheSkgewogICAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICAgIHJldHVybiBjb25jYXRfMS5jb25jYXQoc3Vic2NyaXB0aW9uRGVsYXkucGlwZSh0YWtlXzEudGFrZSgxKSwgaWdub3JlRWxlbWVudHNfMS5pZ25vcmVFbGVtZW50cygpKSwgc291cmNlLnBpcGUoZGVsYXlXaGVuKGRlbGF5RHVyYXRpb25TZWxlY3RvcikpKTsKICAgICAgICB9OwogICAgICB9CiAgICAgIHJldHVybiBtZXJnZU1hcF8xLm1lcmdlTWFwKGZ1bmN0aW9uKHZhbHVlLCBpbmRleCkgewogICAgICAgIHJldHVybiBpbm5lckZyb21fMS5pbm5lckZyb20oZGVsYXlEdXJhdGlvblNlbGVjdG9yKHZhbHVlLCBpbmRleCkpLnBpcGUodGFrZV8xLnRha2UoMSksIG1hcFRvXzEubWFwVG8odmFsdWUpKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5kZWxheVdoZW4gPSBkZWxheVdoZW47CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZWxheS5qcwp2YXIgcmVxdWlyZV9kZWxheSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVsYXkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmRlbGF5ID0gdm9pZCAwOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgZGVsYXlXaGVuXzEgPSByZXF1aXJlX2RlbGF5V2hlbigpOwogICAgdmFyIHRpbWVyXzEgPSByZXF1aXJlX3RpbWVyKCk7CiAgICBmdW5jdGlvbiBkZWxheShkdWUsIHNjaGVkdWxlcikgewogICAgICBpZiAoc2NoZWR1bGVyID09PSB2b2lkIDApIHsKICAgICAgICBzY2hlZHVsZXIgPSBhc3luY18xLmFzeW5jU2NoZWR1bGVyOwogICAgICB9CiAgICAgIHZhciBkdXJhdGlvbiA9IHRpbWVyXzEudGltZXIoZHVlLCBzY2hlZHVsZXIpOwogICAgICByZXR1cm4gZGVsYXlXaGVuXzEuZGVsYXlXaGVuKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBkdXJhdGlvbjsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5kZWxheSA9IGRlbGF5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGVtYXRlcmlhbGl6ZS5qcwp2YXIgcmVxdWlyZV9kZW1hdGVyaWFsaXplID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kZW1hdGVyaWFsaXplLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZW1hdGVyaWFsaXplID0gdm9pZCAwOwogICAgdmFyIE5vdGlmaWNhdGlvbl8xID0gcmVxdWlyZV9Ob3RpZmljYXRpb24oKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBkZW1hdGVyaWFsaXplKCkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24obm90aWZpY2F0aW9uKSB7CiAgICAgICAgICByZXR1cm4gTm90aWZpY2F0aW9uXzEub2JzZXJ2ZU5vdGlmaWNhdGlvbihub3RpZmljYXRpb24sIHN1YnNjcmliZXIpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5kZW1hdGVyaWFsaXplID0gZGVtYXRlcmlhbGl6ZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2Rpc3RpbmN0LmpzCnZhciByZXF1aXJlX2Rpc3RpbmN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kaXN0aW5jdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGlzdGluY3QgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIGRpc3RpbmN0KGtleVNlbGVjdG9yLCBmbHVzaGVzKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgZGlzdGluY3RLZXlzID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIGtleSA9IGtleVNlbGVjdG9yID8ga2V5U2VsZWN0b3IodmFsdWUpIDogdmFsdWU7CiAgICAgICAgICBpZiAoIWRpc3RpbmN0S2V5cy5oYXMoa2V5KSkgewogICAgICAgICAgICBkaXN0aW5jdEtleXMuYWRkKGtleSk7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICAgIGZsdXNoZXMgJiYgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKGZsdXNoZXMpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gZGlzdGluY3RLZXlzLmNsZWFyKCk7CiAgICAgICAgfSwgbm9vcF8xLm5vb3ApKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5kaXN0aW5jdCA9IGRpc3RpbmN0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZGlzdGluY3RVbnRpbENoYW5nZWQuanMKdmFyIHJlcXVpcmVfZGlzdGluY3RVbnRpbENoYW5nZWQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2Rpc3RpbmN0VW50aWxDaGFuZ2VkLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kaXN0aW5jdFVudGlsQ2hhbmdlZCA9IHZvaWQgMDsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGRpc3RpbmN0VW50aWxDaGFuZ2VkKGNvbXBhcmF0b3IsIGtleVNlbGVjdG9yKSB7CiAgICAgIGlmIChrZXlTZWxlY3RvciA9PT0gdm9pZCAwKSB7CiAgICAgICAga2V5U2VsZWN0b3IgPSBpZGVudGl0eV8xLmlkZW50aXR5OwogICAgICB9CiAgICAgIGNvbXBhcmF0b3IgPSBjb21wYXJhdG9yICE9PSBudWxsICYmIGNvbXBhcmF0b3IgIT09IHZvaWQgMCA/IGNvbXBhcmF0b3IgOiBkZWZhdWx0Q29tcGFyZTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBwcmV2aW91c0tleTsKICAgICAgICB2YXIgZmlyc3QgPSB0cnVlOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgY3VycmVudEtleSA9IGtleVNlbGVjdG9yKHZhbHVlKTsKICAgICAgICAgIGlmIChmaXJzdCB8fCAhY29tcGFyYXRvcihwcmV2aW91c0tleSwgY3VycmVudEtleSkpIHsKICAgICAgICAgICAgZmlyc3QgPSBmYWxzZTsKICAgICAgICAgICAgcHJldmlvdXNLZXkgPSBjdXJyZW50S2V5OwogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5kaXN0aW5jdFVudGlsQ2hhbmdlZCA9IGRpc3RpbmN0VW50aWxDaGFuZ2VkOwogICAgZnVuY3Rpb24gZGVmYXVsdENvbXBhcmUoYSwgYikgewogICAgICByZXR1cm4gYSA9PT0gYjsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2Rpc3RpbmN0VW50aWxLZXlDaGFuZ2VkLmpzCnZhciByZXF1aXJlX2Rpc3RpbmN0VW50aWxLZXlDaGFuZ2VkID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9kaXN0aW5jdFVudGlsS2V5Q2hhbmdlZC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGlzdGluY3RVbnRpbEtleUNoYW5nZWQgPSB2b2lkIDA7CiAgICB2YXIgZGlzdGluY3RVbnRpbENoYW5nZWRfMSA9IHJlcXVpcmVfZGlzdGluY3RVbnRpbENoYW5nZWQoKTsKICAgIGZ1bmN0aW9uIGRpc3RpbmN0VW50aWxLZXlDaGFuZ2VkKGtleSwgY29tcGFyZSkgewogICAgICByZXR1cm4gZGlzdGluY3RVbnRpbENoYW5nZWRfMS5kaXN0aW5jdFVudGlsQ2hhbmdlZChmdW5jdGlvbih4LCB5KSB7CiAgICAgICAgcmV0dXJuIGNvbXBhcmUgPyBjb21wYXJlKHhba2V5XSwgeVtrZXldKSA6IHhba2V5XSA9PT0geVtrZXldOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmRpc3RpbmN0VW50aWxLZXlDaGFuZ2VkID0gZGlzdGluY3RVbnRpbEtleUNoYW5nZWQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aHJvd0lmRW1wdHkuanMKdmFyIHJlcXVpcmVfdGhyb3dJZkVtcHR5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aHJvd0lmRW1wdHkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRocm93SWZFbXB0eSA9IHZvaWQgMDsKICAgIHZhciBFbXB0eUVycm9yXzEgPSByZXF1aXJlX0VtcHR5RXJyb3IoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiB0aHJvd0lmRW1wdHkoZXJyb3JGYWN0b3J5KSB7CiAgICAgIGlmIChlcnJvckZhY3RvcnkgPT09IHZvaWQgMCkgewogICAgICAgIGVycm9yRmFjdG9yeSA9IGRlZmF1bHRFcnJvckZhY3Rvcnk7CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBoYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIGhhc1ZhbHVlID8gc3Vic2NyaWJlci5jb21wbGV0ZSgpIDogc3Vic2NyaWJlci5lcnJvcihlcnJvckZhY3RvcnkoKSk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnRocm93SWZFbXB0eSA9IHRocm93SWZFbXB0eTsKICAgIGZ1bmN0aW9uIGRlZmF1bHRFcnJvckZhY3RvcnkoKSB7CiAgICAgIHJldHVybiBuZXcgRW1wdHlFcnJvcl8xLkVtcHR5RXJyb3IoKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2VsZW1lbnRBdC5qcwp2YXIgcmVxdWlyZV9lbGVtZW50QXQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2VsZW1lbnRBdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZWxlbWVudEF0ID0gdm9pZCAwOwogICAgdmFyIEFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yXzEgPSByZXF1aXJlX0FyZ3VtZW50T3V0T2ZSYW5nZUVycm9yKCk7CiAgICB2YXIgZmlsdGVyXzEgPSByZXF1aXJlX2ZpbHRlcigpOwogICAgdmFyIHRocm93SWZFbXB0eV8xID0gcmVxdWlyZV90aHJvd0lmRW1wdHkoKTsKICAgIHZhciBkZWZhdWx0SWZFbXB0eV8xID0gcmVxdWlyZV9kZWZhdWx0SWZFbXB0eSgpOwogICAgdmFyIHRha2VfMSA9IHJlcXVpcmVfdGFrZSgpOwogICAgZnVuY3Rpb24gZWxlbWVudEF0KGluZGV4LCBkZWZhdWx0VmFsdWUpIHsKICAgICAgaWYgKGluZGV4IDwgMCkgewogICAgICAgIHRocm93IG5ldyBBcmd1bWVudE91dE9mUmFuZ2VFcnJvcl8xLkFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yKCk7CiAgICAgIH0KICAgICAgdmFyIGhhc0RlZmF1bHRWYWx1ZSA9IGFyZ3VtZW50cy5sZW5ndGggPj0gMjsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHJldHVybiBzb3VyY2UucGlwZShmaWx0ZXJfMS5maWx0ZXIoZnVuY3Rpb24odiwgaSkgewogICAgICAgICAgcmV0dXJuIGkgPT09IGluZGV4OwogICAgICAgIH0pLCB0YWtlXzEudGFrZSgxKSwgaGFzRGVmYXVsdFZhbHVlID8gZGVmYXVsdElmRW1wdHlfMS5kZWZhdWx0SWZFbXB0eShkZWZhdWx0VmFsdWUpIDogdGhyb3dJZkVtcHR5XzEudGhyb3dJZkVtcHR5KGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG5ldyBBcmd1bWVudE91dE9mUmFuZ2VFcnJvcl8xLkFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yKCk7CiAgICAgICAgfSkpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuZWxlbWVudEF0ID0gZWxlbWVudEF0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZW5kV2l0aC5qcwp2YXIgcmVxdWlyZV9lbmRXaXRoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9lbmRXaXRoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5lbmRXaXRoID0gdm9pZCAwOwogICAgdmFyIGNvbmNhdF8xID0gcmVxdWlyZV9jb25jYXQoKTsKICAgIHZhciBvZl8xID0gcmVxdWlyZV9vZigpOwogICAgZnVuY3Rpb24gZW5kV2l0aCgpIHsKICAgICAgdmFyIHZhbHVlcyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIHZhbHVlc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICByZXR1cm4gY29uY2F0XzEuY29uY2F0KHNvdXJjZSwgb2ZfMS5vZi5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW10sIF9fcmVhZCh2YWx1ZXMpKSkpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIuZW5kV2l0aCA9IGVuZFdpdGg7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9ldmVyeS5qcwp2YXIgcmVxdWlyZV9ldmVyeSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZXZlcnkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmV2ZXJ5ID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGV2ZXJ5KHByZWRpY2F0ZSwgdGhpc0FyZykgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgaWYgKCFwcmVkaWNhdGUuY2FsbCh0aGlzQXJnLCB2YWx1ZSwgaW5kZXgrKywgc291cmNlKSkgewogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoZmFsc2UpOwogICAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodHJ1ZSk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmV2ZXJ5ID0gZXZlcnk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9leGhhdXN0TWFwLmpzCnZhciByZXF1aXJlX2V4aGF1c3RNYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2V4aGF1c3RNYXAuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmV4aGF1c3RNYXAgPSB2b2lkIDA7CiAgICB2YXIgbWFwXzEgPSByZXF1aXJlX21hcCgpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBleGhhdXN0TWFwKHByb2plY3QsIHJlc3VsdFNlbGVjdG9yKSB7CiAgICAgIGlmIChyZXN1bHRTZWxlY3RvcikgewogICAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICAgIHJldHVybiBzb3VyY2UucGlwZShleGhhdXN0TWFwKGZ1bmN0aW9uKGEsIGkpIHsKICAgICAgICAgICAgcmV0dXJuIGlubmVyRnJvbV8xLmlubmVyRnJvbShwcm9qZWN0KGEsIGkpKS5waXBlKG1hcF8xLm1hcChmdW5jdGlvbihiLCBpaSkgewogICAgICAgICAgICAgIHJldHVybiByZXN1bHRTZWxlY3RvcihhLCBiLCBpLCBpaSk7CiAgICAgICAgICAgIH0pKTsKICAgICAgICAgIH0pKTsKICAgICAgICB9OwogICAgICB9CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5kZXggPSAwOwogICAgICAgIHZhciBpbm5lclN1YiA9IG51bGw7CiAgICAgICAgdmFyIGlzQ29tcGxldGUgPSBmYWxzZTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihvdXRlclZhbHVlKSB7CiAgICAgICAgICBpZiAoIWlubmVyU3ViKSB7CiAgICAgICAgICAgIGlubmVyU3ViID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgaW5uZXJTdWIgPSBudWxsOwogICAgICAgICAgICAgIGlzQ29tcGxldGUgJiYgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICB9KTsKICAgICAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKHByb2plY3Qob3V0ZXJWYWx1ZSwgaW5kZXgrKykpLnN1YnNjcmliZShpbm5lclN1Yik7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpc0NvbXBsZXRlID0gdHJ1ZTsKICAgICAgICAgICFpbm5lclN1YiAmJiBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmV4aGF1c3RNYXAgPSBleGhhdXN0TWFwOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZXhoYXVzdEFsbC5qcwp2YXIgcmVxdWlyZV9leGhhdXN0QWxsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9leGhhdXN0QWxsLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5leGhhdXN0QWxsID0gdm9pZCAwOwogICAgdmFyIGV4aGF1c3RNYXBfMSA9IHJlcXVpcmVfZXhoYXVzdE1hcCgpOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICBmdW5jdGlvbiBleGhhdXN0QWxsKCkgewogICAgICByZXR1cm4gZXhoYXVzdE1hcF8xLmV4aGF1c3RNYXAoaWRlbnRpdHlfMS5pZGVudGl0eSk7CiAgICB9CiAgICBleHBvcnRzMi5leGhhdXN0QWxsID0gZXhoYXVzdEFsbDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2V4aGF1c3QuanMKdmFyIHJlcXVpcmVfZXhoYXVzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZXhoYXVzdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXhoYXVzdCA9IHZvaWQgMDsKICAgIHZhciBleGhhdXN0QWxsXzEgPSByZXF1aXJlX2V4aGF1c3RBbGwoKTsKICAgIGV4cG9ydHMyLmV4aGF1c3QgPSBleGhhdXN0QWxsXzEuZXhoYXVzdEFsbDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2V4cGFuZC5qcwp2YXIgcmVxdWlyZV9leHBhbmQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2V4cGFuZC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXhwYW5kID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIG1lcmdlSW50ZXJuYWxzXzEgPSByZXF1aXJlX21lcmdlSW50ZXJuYWxzKCk7CiAgICBmdW5jdGlvbiBleHBhbmQocHJvamVjdCwgY29uY3VycmVudCwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChjb25jdXJyZW50ID09PSB2b2lkIDApIHsKICAgICAgICBjb25jdXJyZW50ID0gSW5maW5pdHk7CiAgICAgIH0KICAgICAgY29uY3VycmVudCA9IChjb25jdXJyZW50IHx8IDApIDwgMSA/IEluZmluaXR5IDogY29uY3VycmVudDsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHJldHVybiBtZXJnZUludGVybmFsc18xLm1lcmdlSW50ZXJuYWxzKHNvdXJjZSwgc3Vic2NyaWJlciwgcHJvamVjdCwgY29uY3VycmVudCwgdm9pZCAwLCB0cnVlLCBzY2hlZHVsZXIpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLmV4cGFuZCA9IGV4cGFuZDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2ZpbmFsaXplLmpzCnZhciByZXF1aXJlX2ZpbmFsaXplID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maW5hbGl6ZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZmluYWxpemUgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICBmdW5jdGlvbiBmaW5hbGl6ZShjYWxsYmFjaykgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIHN1YnNjcmliZXIuYWRkKGNhbGxiYWNrKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuZmluYWxpemUgPSBmaW5hbGl6ZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2ZpbmQuanMKdmFyIHJlcXVpcmVfZmluZCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmluZC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuY3JlYXRlRmluZCA9IGV4cG9ydHMyLmZpbmQgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gZmluZChwcmVkaWNhdGUsIHRoaXNBcmcpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGNyZWF0ZUZpbmQocHJlZGljYXRlLCB0aGlzQXJnLCAidmFsdWUiKSk7CiAgICB9CiAgICBleHBvcnRzMi5maW5kID0gZmluZDsKICAgIGZ1bmN0aW9uIGNyZWF0ZUZpbmQocHJlZGljYXRlLCB0aGlzQXJnLCBlbWl0KSB7CiAgICAgIHZhciBmaW5kSW5kZXggPSBlbWl0ID09PSAiaW5kZXgiOwogICAgICByZXR1cm4gZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIGkgPSBpbmRleCsrOwogICAgICAgICAgaWYgKHByZWRpY2F0ZS5jYWxsKHRoaXNBcmcsIHZhbHVlLCBpLCBzb3VyY2UpKSB7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChmaW5kSW5kZXggPyBpIDogdmFsdWUpOwogICAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoZmluZEluZGV4ID8gLTEgOiB2b2lkIDApOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLmNyZWF0ZUZpbmQgPSBjcmVhdGVGaW5kOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmluZEluZGV4LmpzCnZhciByZXF1aXJlX2ZpbmRJbmRleCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvZmluZEluZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5maW5kSW5kZXggPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgZmluZF8xID0gcmVxdWlyZV9maW5kKCk7CiAgICBmdW5jdGlvbiBmaW5kSW5kZXgocHJlZGljYXRlLCB0aGlzQXJnKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmaW5kXzEuY3JlYXRlRmluZChwcmVkaWNhdGUsIHRoaXNBcmcsICJpbmRleCIpKTsKICAgIH0KICAgIGV4cG9ydHMyLmZpbmRJbmRleCA9IGZpbmRJbmRleDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2ZpcnN0LmpzCnZhciByZXF1aXJlX2ZpcnN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9maXJzdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZmlyc3QgPSB2b2lkIDA7CiAgICB2YXIgRW1wdHlFcnJvcl8xID0gcmVxdWlyZV9FbXB0eUVycm9yKCk7CiAgICB2YXIgZmlsdGVyXzEgPSByZXF1aXJlX2ZpbHRlcigpOwogICAgdmFyIHRha2VfMSA9IHJlcXVpcmVfdGFrZSgpOwogICAgdmFyIGRlZmF1bHRJZkVtcHR5XzEgPSByZXF1aXJlX2RlZmF1bHRJZkVtcHR5KCk7CiAgICB2YXIgdGhyb3dJZkVtcHR5XzEgPSByZXF1aXJlX3Rocm93SWZFbXB0eSgpOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICBmdW5jdGlvbiBmaXJzdChwcmVkaWNhdGUsIGRlZmF1bHRWYWx1ZSkgewogICAgICB2YXIgaGFzRGVmYXVsdFZhbHVlID0gYXJndW1lbnRzLmxlbmd0aCA+PSAyOwogICAgICByZXR1cm4gZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgcmV0dXJuIHNvdXJjZS5waXBlKHByZWRpY2F0ZSA/IGZpbHRlcl8xLmZpbHRlcihmdW5jdGlvbih2LCBpKSB7CiAgICAgICAgICByZXR1cm4gcHJlZGljYXRlKHYsIGksIHNvdXJjZSk7CiAgICAgICAgfSkgOiBpZGVudGl0eV8xLmlkZW50aXR5LCB0YWtlXzEudGFrZSgxKSwgaGFzRGVmYXVsdFZhbHVlID8gZGVmYXVsdElmRW1wdHlfMS5kZWZhdWx0SWZFbXB0eShkZWZhdWx0VmFsdWUpIDogdGhyb3dJZkVtcHR5XzEudGhyb3dJZkVtcHR5KGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG5ldyBFbXB0eUVycm9yXzEuRW1wdHlFcnJvcigpOwogICAgICAgIH0pKTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLmZpcnN0ID0gZmlyc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9ncm91cEJ5LmpzCnZhciByZXF1aXJlX2dyb3VwQnkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2dyb3VwQnkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmdyb3VwQnkgPSB2b2lkIDA7CiAgICB2YXIgT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9PYnNlcnZhYmxlKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIGdyb3VwQnkoa2V5U2VsZWN0b3IsIGVsZW1lbnRPck9wdGlvbnMsIGR1cmF0aW9uLCBjb25uZWN0b3IpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBlbGVtZW50OwogICAgICAgIGlmICghZWxlbWVudE9yT3B0aW9ucyB8fCB0eXBlb2YgZWxlbWVudE9yT3B0aW9ucyA9PT0gImZ1bmN0aW9uIikgewogICAgICAgICAgZWxlbWVudCA9IGVsZW1lbnRPck9wdGlvbnM7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGR1cmF0aW9uID0gZWxlbWVudE9yT3B0aW9ucy5kdXJhdGlvbiwgZWxlbWVudCA9IGVsZW1lbnRPck9wdGlvbnMuZWxlbWVudCwgY29ubmVjdG9yID0gZWxlbWVudE9yT3B0aW9ucy5jb25uZWN0b3I7CiAgICAgICAgfQogICAgICAgIHZhciBncm91cHMgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICAgIHZhciBub3RpZnkgPSBmdW5jdGlvbihjYikgewogICAgICAgICAgZ3JvdXBzLmZvckVhY2goY2IpOwogICAgICAgICAgY2Ioc3Vic2NyaWJlcik7CiAgICAgICAgfTsKICAgICAgICB2YXIgaGFuZGxlRXJyb3IgPSBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHJldHVybiBub3RpZnkoZnVuY3Rpb24oY29uc3VtZXIpIHsKICAgICAgICAgICAgcmV0dXJuIGNvbnN1bWVyLmVycm9yKGVycik7CiAgICAgICAgICB9KTsKICAgICAgICB9OwogICAgICAgIHZhciBhY3RpdmVHcm91cHMgPSAwOwogICAgICAgIHZhciB0ZWFyZG93bkF0dGVtcHRlZCA9IGZhbHNlOwogICAgICAgIHZhciBncm91cEJ5U291cmNlU3Vic2NyaWJlciA9IG5ldyBPcGVyYXRvclN1YnNjcmliZXJfMS5PcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIHZhciBrZXlfMSA9IGtleVNlbGVjdG9yKHZhbHVlKTsKICAgICAgICAgICAgdmFyIGdyb3VwXzEgPSBncm91cHMuZ2V0KGtleV8xKTsKICAgICAgICAgICAgaWYgKCFncm91cF8xKSB7CiAgICAgICAgICAgICAgZ3JvdXBzLnNldChrZXlfMSwgZ3JvdXBfMSA9IGNvbm5lY3RvciA/IGNvbm5lY3RvcigpIDogbmV3IFN1YmplY3RfMS5TdWJqZWN0KCkpOwogICAgICAgICAgICAgIHZhciBncm91cGVkID0gY3JlYXRlR3JvdXBlZE9ic2VydmFibGUoa2V5XzEsIGdyb3VwXzEpOwogICAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChncm91cGVkKTsKICAgICAgICAgICAgICBpZiAoZHVyYXRpb24pIHsKICAgICAgICAgICAgICAgIHZhciBkdXJhdGlvblN1YnNjcmliZXJfMSA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihncm91cF8xLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgZ3JvdXBfMS5jb21wbGV0ZSgpOwogICAgICAgICAgICAgICAgICBkdXJhdGlvblN1YnNjcmliZXJfMSA9PT0gbnVsbCB8fCBkdXJhdGlvblN1YnNjcmliZXJfMSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZHVyYXRpb25TdWJzY3JpYmVyXzEudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgICAgIH0sIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgcmV0dXJuIGdyb3Vwcy5kZWxldGUoa2V5XzEpOwogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICBncm91cEJ5U291cmNlU3Vic2NyaWJlci5hZGQoaW5uZXJGcm9tXzEuaW5uZXJGcm9tKGR1cmF0aW9uKGdyb3VwZWQpKS5zdWJzY3JpYmUoZHVyYXRpb25TdWJzY3JpYmVyXzEpKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZ3JvdXBfMS5uZXh0KGVsZW1lbnQgPyBlbGVtZW50KHZhbHVlKSA6IHZhbHVlKTsKICAgICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgICBoYW5kbGVFcnJvcihlcnIpOwogICAgICAgICAgfQogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG5vdGlmeShmdW5jdGlvbihjb25zdW1lcikgewogICAgICAgICAgICByZXR1cm4gY29uc3VtZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0pOwogICAgICAgIH0sIGhhbmRsZUVycm9yLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBncm91cHMuY2xlYXIoKTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHRlYXJkb3duQXR0ZW1wdGVkID0gdHJ1ZTsKICAgICAgICAgIHJldHVybiBhY3RpdmVHcm91cHMgPT09IDA7CiAgICAgICAgfSk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShncm91cEJ5U291cmNlU3Vic2NyaWJlcik7CiAgICAgICAgZnVuY3Rpb24gY3JlYXRlR3JvdXBlZE9ic2VydmFibGUoa2V5LCBncm91cFN1YmplY3QpIHsKICAgICAgICAgIHZhciByZXN1bHQgPSBuZXcgT2JzZXJ2YWJsZV8xLk9ic2VydmFibGUoZnVuY3Rpb24oZ3JvdXBTdWJzY3JpYmVyKSB7CiAgICAgICAgICAgIGFjdGl2ZUdyb3VwcysrOwogICAgICAgICAgICB2YXIgaW5uZXJTdWIgPSBncm91cFN1YmplY3Quc3Vic2NyaWJlKGdyb3VwU3Vic2NyaWJlcik7CiAgICAgICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICBpbm5lclN1Yi51bnN1YnNjcmliZSgpOwogICAgICAgICAgICAgIC0tYWN0aXZlR3JvdXBzID09PSAwICYmIHRlYXJkb3duQXR0ZW1wdGVkICYmIGdyb3VwQnlTb3VyY2VTdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgIH07CiAgICAgICAgICB9KTsKICAgICAgICAgIHJlc3VsdC5rZXkgPSBrZXk7CiAgICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICAgIH0KICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5ncm91cEJ5ID0gZ3JvdXBCeTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2lzRW1wdHkuanMKdmFyIHJlcXVpcmVfaXNFbXB0eSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvaXNFbXB0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaXNFbXB0eSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBpc0VtcHR5KCkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoZmFsc2UpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHRydWUpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5pc0VtcHR5ID0gaXNFbXB0eTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rha2VMYXN0LmpzCnZhciByZXF1aXJlX3Rha2VMYXN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90YWtlTGFzdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGFrZUxhc3QgPSB2b2lkIDA7CiAgICB2YXIgZW1wdHlfMSA9IHJlcXVpcmVfZW1wdHkoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiB0YWtlTGFzdChjb3VudCkgewogICAgICByZXR1cm4gY291bnQgPD0gMCA/IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBlbXB0eV8xLkVNUFRZOwogICAgICB9IDogbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGJ1ZmZlciA9IFtdOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBidWZmZXIucHVzaCh2YWx1ZSk7CiAgICAgICAgICBjb3VudCA8IGJ1ZmZlci5sZW5ndGggJiYgYnVmZmVyLnNoaWZ0KCk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgZV8xLCBfYTsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIGZvciAodmFyIGJ1ZmZlcl8xID0gX192YWx1ZXMoYnVmZmVyKSwgYnVmZmVyXzFfMSA9IGJ1ZmZlcl8xLm5leHQoKTsgIWJ1ZmZlcl8xXzEuZG9uZTsgYnVmZmVyXzFfMSA9IGJ1ZmZlcl8xLm5leHQoKSkgewogICAgICAgICAgICAgIHZhciB2YWx1ZSA9IGJ1ZmZlcl8xXzEudmFsdWU7CiAgICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZV8xXzEpIHsKICAgICAgICAgICAgZV8xID0geyBlcnJvcjogZV8xXzEgfTsKICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgaWYgKGJ1ZmZlcl8xXzEgJiYgIWJ1ZmZlcl8xXzEuZG9uZSAmJiAoX2EgPSBidWZmZXJfMS5yZXR1cm4pKSBfYS5jYWxsKGJ1ZmZlcl8xKTsKICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICBpZiAoZV8xKSB0aHJvdyBlXzEuZXJyb3I7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCB2b2lkIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgYnVmZmVyID0gbnVsbDsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGFrZUxhc3QgPSB0YWtlTGFzdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2xhc3QuanMKdmFyIHJlcXVpcmVfbGFzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbGFzdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubGFzdCA9IHZvaWQgMDsKICAgIHZhciBFbXB0eUVycm9yXzEgPSByZXF1aXJlX0VtcHR5RXJyb3IoKTsKICAgIHZhciBmaWx0ZXJfMSA9IHJlcXVpcmVfZmlsdGVyKCk7CiAgICB2YXIgdGFrZUxhc3RfMSA9IHJlcXVpcmVfdGFrZUxhc3QoKTsKICAgIHZhciB0aHJvd0lmRW1wdHlfMSA9IHJlcXVpcmVfdGhyb3dJZkVtcHR5KCk7CiAgICB2YXIgZGVmYXVsdElmRW1wdHlfMSA9IHJlcXVpcmVfZGVmYXVsdElmRW1wdHkoKTsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgZnVuY3Rpb24gbGFzdChwcmVkaWNhdGUsIGRlZmF1bHRWYWx1ZSkgewogICAgICB2YXIgaGFzRGVmYXVsdFZhbHVlID0gYXJndW1lbnRzLmxlbmd0aCA+PSAyOwogICAgICByZXR1cm4gZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgcmV0dXJuIHNvdXJjZS5waXBlKHByZWRpY2F0ZSA/IGZpbHRlcl8xLmZpbHRlcihmdW5jdGlvbih2LCBpKSB7CiAgICAgICAgICByZXR1cm4gcHJlZGljYXRlKHYsIGksIHNvdXJjZSk7CiAgICAgICAgfSkgOiBpZGVudGl0eV8xLmlkZW50aXR5LCB0YWtlTGFzdF8xLnRha2VMYXN0KDEpLCBoYXNEZWZhdWx0VmFsdWUgPyBkZWZhdWx0SWZFbXB0eV8xLmRlZmF1bHRJZkVtcHR5KGRlZmF1bHRWYWx1ZSkgOiB0aHJvd0lmRW1wdHlfMS50aHJvd0lmRW1wdHkoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbmV3IEVtcHR5RXJyb3JfMS5FbXB0eUVycm9yKCk7CiAgICAgICAgfSkpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIubGFzdCA9IGxhc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tYXRlcmlhbGl6ZS5qcwp2YXIgcmVxdWlyZV9tYXRlcmlhbGl6ZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWF0ZXJpYWxpemUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1hdGVyaWFsaXplID0gdm9pZCAwOwogICAgdmFyIE5vdGlmaWNhdGlvbl8xID0gcmVxdWlyZV9Ob3RpZmljYXRpb24oKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBtYXRlcmlhbGl6ZSgpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoTm90aWZpY2F0aW9uXzEuTm90aWZpY2F0aW9uLmNyZWF0ZU5leHQodmFsdWUpKTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChOb3RpZmljYXRpb25fMS5Ob3RpZmljYXRpb24uY3JlYXRlQ29tcGxldGUoKSk7CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoTm90aWZpY2F0aW9uXzEuTm90aWZpY2F0aW9uLmNyZWF0ZUVycm9yKGVycikpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5tYXRlcmlhbGl6ZSA9IG1hdGVyaWFsaXplOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWF4LmpzCnZhciByZXF1aXJlX21heCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWF4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5tYXggPSB2b2lkIDA7CiAgICB2YXIgcmVkdWNlXzEgPSByZXF1aXJlX3JlZHVjZSgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gbWF4KGNvbXBhcmVyKSB7CiAgICAgIHJldHVybiByZWR1Y2VfMS5yZWR1Y2UoaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24oY29tcGFyZXIpID8gZnVuY3Rpb24oeCwgeSkgewogICAgICAgIHJldHVybiBjb21wYXJlcih4LCB5KSA+IDAgPyB4IDogeTsKICAgICAgfSA6IGZ1bmN0aW9uKHgsIHkpIHsKICAgICAgICByZXR1cm4geCA+IHkgPyB4IDogeTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5tYXggPSBtYXg7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9mbGF0TWFwLmpzCnZhciByZXF1aXJlX2ZsYXRNYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL2ZsYXRNYXAuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmZsYXRNYXAgPSB2b2lkIDA7CiAgICB2YXIgbWVyZ2VNYXBfMSA9IHJlcXVpcmVfbWVyZ2VNYXAoKTsKICAgIGV4cG9ydHMyLmZsYXRNYXAgPSBtZXJnZU1hcF8xLm1lcmdlTWFwOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2VNYXBUby5qcwp2YXIgcmVxdWlyZV9tZXJnZU1hcFRvID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9tZXJnZU1hcFRvLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5tZXJnZU1hcFRvID0gdm9pZCAwOwogICAgdmFyIG1lcmdlTWFwXzEgPSByZXF1aXJlX21lcmdlTWFwKCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBtZXJnZU1hcFRvKGlubmVyT2JzZXJ2YWJsZSwgcmVzdWx0U2VsZWN0b3IsIGNvbmN1cnJlbnQpIHsKICAgICAgaWYgKGNvbmN1cnJlbnQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbmN1cnJlbnQgPSBJbmZpbml0eTsKICAgICAgfQogICAgICBpZiAoaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ocmVzdWx0U2VsZWN0b3IpKSB7CiAgICAgICAgcmV0dXJuIG1lcmdlTWFwXzEubWVyZ2VNYXAoZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gaW5uZXJPYnNlcnZhYmxlOwogICAgICAgIH0sIHJlc3VsdFNlbGVjdG9yLCBjb25jdXJyZW50KTsKICAgICAgfQogICAgICBpZiAodHlwZW9mIHJlc3VsdFNlbGVjdG9yID09PSAibnVtYmVyIikgewogICAgICAgIGNvbmN1cnJlbnQgPSByZXN1bHRTZWxlY3RvcjsKICAgICAgfQogICAgICByZXR1cm4gbWVyZ2VNYXBfMS5tZXJnZU1hcChmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gaW5uZXJPYnNlcnZhYmxlOwogICAgICB9LCBjb25jdXJyZW50KTsKICAgIH0KICAgIGV4cG9ydHMyLm1lcmdlTWFwVG8gPSBtZXJnZU1hcFRvOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2VTY2FuLmpzCnZhciByZXF1aXJlX21lcmdlU2NhbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2VTY2FuLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5tZXJnZVNjYW4gPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgbWVyZ2VJbnRlcm5hbHNfMSA9IHJlcXVpcmVfbWVyZ2VJbnRlcm5hbHMoKTsKICAgIGZ1bmN0aW9uIG1lcmdlU2NhbihhY2N1bXVsYXRvciwgc2VlZCwgY29uY3VycmVudCkgewogICAgICBpZiAoY29uY3VycmVudCA9PT0gdm9pZCAwKSB7CiAgICAgICAgY29uY3VycmVudCA9IEluZmluaXR5OwogICAgICB9CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgc3RhdGUgPSBzZWVkOwogICAgICAgIHJldHVybiBtZXJnZUludGVybmFsc18xLm1lcmdlSW50ZXJuYWxzKHNvdXJjZSwgc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUsIGluZGV4KSB7CiAgICAgICAgICByZXR1cm4gYWNjdW11bGF0b3Ioc3RhdGUsIHZhbHVlLCBpbmRleCk7CiAgICAgICAgfSwgY29uY3VycmVudCwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHN0YXRlID0gdmFsdWU7CiAgICAgICAgfSwgZmFsc2UsIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gc3RhdGUgPSBudWxsOwogICAgICAgIH0pOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLm1lcmdlU2NhbiA9IG1lcmdlU2NhbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21lcmdlLmpzCnZhciByZXF1aXJlX21lcmdlMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1lcmdlID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIGFyZ3NPckFyZ0FycmF5XzEgPSByZXF1aXJlX2FyZ3NPckFyZ0FycmF5KCk7CiAgICB2YXIgbWVyZ2VBbGxfMSA9IHJlcXVpcmVfbWVyZ2VBbGwoKTsKICAgIHZhciBhcmdzXzEgPSByZXF1aXJlX2FyZ3MoKTsKICAgIHZhciBmcm9tXzEgPSByZXF1aXJlX2Zyb20oKTsKICAgIGZ1bmN0aW9uIG1lcmdlKCkgewogICAgICB2YXIgYXJncyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgc2NoZWR1bGVyID0gYXJnc18xLnBvcFNjaGVkdWxlcihhcmdzKTsKICAgICAgdmFyIGNvbmN1cnJlbnQgPSBhcmdzXzEucG9wTnVtYmVyKGFyZ3MsIEluZmluaXR5KTsKICAgICAgYXJncyA9IGFyZ3NPckFyZ0FycmF5XzEuYXJnc09yQXJnQXJyYXkoYXJncyk7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICBtZXJnZUFsbF8xLm1lcmdlQWxsKGNvbmN1cnJlbnQpKGZyb21fMS5mcm9tKF9fc3ByZWFkQXJyYXkoW3NvdXJjZV0sIF9fcmVhZChhcmdzKSksIHNjaGVkdWxlcikpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5tZXJnZSA9IG1lcmdlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2VXaXRoLmpzCnZhciByZXF1aXJlX21lcmdlV2l0aCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbWVyZ2VXaXRoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5tZXJnZVdpdGggPSB2b2lkIDA7CiAgICB2YXIgbWVyZ2VfMSA9IHJlcXVpcmVfbWVyZ2UyKCk7CiAgICBmdW5jdGlvbiBtZXJnZVdpdGgyKCkgewogICAgICB2YXIgb3RoZXJTb3VyY2VzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgb3RoZXJTb3VyY2VzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgcmV0dXJuIG1lcmdlXzEubWVyZ2UuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQob3RoZXJTb3VyY2VzKSkpOwogICAgfQogICAgZXhwb3J0czIubWVyZ2VXaXRoID0gbWVyZ2VXaXRoMjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21pbi5qcwp2YXIgcmVxdWlyZV9taW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL21pbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIubWluID0gdm9pZCAwOwogICAgdmFyIHJlZHVjZV8xID0gcmVxdWlyZV9yZWR1Y2UoKTsKICAgIHZhciBpc0Z1bmN0aW9uXzEgPSByZXF1aXJlX2lzRnVuY3Rpb24oKTsKICAgIGZ1bmN0aW9uIG1pbihjb21wYXJlcikgewogICAgICByZXR1cm4gcmVkdWNlXzEucmVkdWNlKGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKGNvbXBhcmVyKSA/IGZ1bmN0aW9uKHgsIHkpIHsKICAgICAgICByZXR1cm4gY29tcGFyZXIoeCwgeSkgPCAwID8geCA6IHk7CiAgICAgIH0gOiBmdW5jdGlvbih4LCB5KSB7CiAgICAgICAgcmV0dXJuIHggPCB5ID8geCA6IHk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIubWluID0gbWluOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbXVsdGljYXN0LmpzCnZhciByZXF1aXJlX211bHRpY2FzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvbXVsdGljYXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5tdWx0aWNhc3QgPSB2b2lkIDA7CiAgICB2YXIgQ29ubmVjdGFibGVPYnNlcnZhYmxlXzEgPSByZXF1aXJlX0Nvbm5lY3RhYmxlT2JzZXJ2YWJsZSgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgdmFyIGNvbm5lY3RfMSA9IHJlcXVpcmVfY29ubmVjdCgpOwogICAgZnVuY3Rpb24gbXVsdGljYXN0KHN1YmplY3RPclN1YmplY3RGYWN0b3J5LCBzZWxlY3RvcikgewogICAgICB2YXIgc3ViamVjdEZhY3RvcnkgPSBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihzdWJqZWN0T3JTdWJqZWN0RmFjdG9yeSkgPyBzdWJqZWN0T3JTdWJqZWN0RmFjdG9yeSA6IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBzdWJqZWN0T3JTdWJqZWN0RmFjdG9yeTsKICAgICAgfTsKICAgICAgaWYgKGlzRnVuY3Rpb25fMS5pc0Z1bmN0aW9uKHNlbGVjdG9yKSkgewogICAgICAgIHJldHVybiBjb25uZWN0XzEuY29ubmVjdChzZWxlY3RvciwgewogICAgICAgICAgY29ubmVjdG9yOiBzdWJqZWN0RmFjdG9yeQogICAgICAgIH0pOwogICAgICB9CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICByZXR1cm4gbmV3IENvbm5lY3RhYmxlT2JzZXJ2YWJsZV8xLkNvbm5lY3RhYmxlT2JzZXJ2YWJsZShzb3VyY2UsIHN1YmplY3RGYWN0b3J5KTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLm11bHRpY2FzdCA9IG11bHRpY2FzdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL29uRXJyb3JSZXN1bWVOZXh0V2l0aC5qcwp2YXIgcmVxdWlyZV9vbkVycm9yUmVzdW1lTmV4dFdpdGggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL29uRXJyb3JSZXN1bWVOZXh0V2l0aC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIub25FcnJvclJlc3VtZU5leHQgPSBleHBvcnRzMi5vbkVycm9yUmVzdW1lTmV4dFdpdGggPSB2b2lkIDA7CiAgICB2YXIgYXJnc09yQXJnQXJyYXlfMSA9IHJlcXVpcmVfYXJnc09yQXJnQXJyYXkoKTsKICAgIHZhciBvbkVycm9yUmVzdW1lTmV4dF8xID0gcmVxdWlyZV9vbkVycm9yUmVzdW1lTmV4dCgpOwogICAgZnVuY3Rpb24gb25FcnJvclJlc3VtZU5leHRXaXRoKCkgewogICAgICB2YXIgc291cmNlcyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIHNvdXJjZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICB2YXIgbmV4dFNvdXJjZXMgPSBhcmdzT3JBcmdBcnJheV8xLmFyZ3NPckFyZ0FycmF5KHNvdXJjZXMpOwogICAgICByZXR1cm4gZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgcmV0dXJuIG9uRXJyb3JSZXN1bWVOZXh0XzEub25FcnJvclJlc3VtZU5leHQuYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtzb3VyY2VdLCBfX3JlYWQobmV4dFNvdXJjZXMpKSk7CiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi5vbkVycm9yUmVzdW1lTmV4dFdpdGggPSBvbkVycm9yUmVzdW1lTmV4dFdpdGg7CiAgICBleHBvcnRzMi5vbkVycm9yUmVzdW1lTmV4dCA9IG9uRXJyb3JSZXN1bWVOZXh0V2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3BhaXJ3aXNlLmpzCnZhciByZXF1aXJlX3BhaXJ3aXNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9wYWlyd2lzZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucGFpcndpc2UgPSB2b2lkIDA7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gcGFpcndpc2UoKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgcHJldjsKICAgICAgICB2YXIgaGFzUHJldiA9IGZhbHNlOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgcCA9IHByZXY7CiAgICAgICAgICBwcmV2ID0gdmFsdWU7CiAgICAgICAgICBoYXNQcmV2ICYmIHN1YnNjcmliZXIubmV4dChbcCwgdmFsdWVdKTsKICAgICAgICAgIGhhc1ByZXYgPSB0cnVlOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5wYWlyd2lzZSA9IHBhaXJ3aXNlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcGx1Y2suanMKdmFyIHJlcXVpcmVfcGx1Y2sgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3BsdWNrLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5wbHVjayA9IHZvaWQgMDsKICAgIHZhciBtYXBfMSA9IHJlcXVpcmVfbWFwKCk7CiAgICBmdW5jdGlvbiBwbHVjaygpIHsKICAgICAgdmFyIHByb3BlcnRpZXMgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBwcm9wZXJ0aWVzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIGxlbmd0aCA9IHByb3BlcnRpZXMubGVuZ3RoOwogICAgICBpZiAobGVuZ3RoID09PSAwKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJsaXN0IG9mIHByb3BlcnRpZXMgY2Fubm90IGJlIGVtcHR5LiIpOwogICAgICB9CiAgICAgIHJldHVybiBtYXBfMS5tYXAoZnVuY3Rpb24oeCkgewogICAgICAgIHZhciBjdXJyZW50UHJvcCA9IHg7CiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykgewogICAgICAgICAgdmFyIHAgPSBjdXJyZW50UHJvcCA9PT0gbnVsbCB8fCBjdXJyZW50UHJvcCA9PT0gdm9pZCAwID8gdm9pZCAwIDogY3VycmVudFByb3BbcHJvcGVydGllc1tpXV07CiAgICAgICAgICBpZiAodHlwZW9mIHAgIT09ICJ1bmRlZmluZWQiKSB7CiAgICAgICAgICAgIGN1cnJlbnRQcm9wID0gcDsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBjdXJyZW50UHJvcDsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5wbHVjayA9IHBsdWNrOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcHVibGlzaC5qcwp2YXIgcmVxdWlyZV9wdWJsaXNoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9wdWJsaXNoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5wdWJsaXNoID0gdm9pZCAwOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIG11bHRpY2FzdF8xID0gcmVxdWlyZV9tdWx0aWNhc3QoKTsKICAgIHZhciBjb25uZWN0XzEgPSByZXF1aXJlX2Nvbm5lY3QoKTsKICAgIGZ1bmN0aW9uIHB1Ymxpc2goc2VsZWN0b3IpIHsKICAgICAgcmV0dXJuIHNlbGVjdG9yID8gZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgcmV0dXJuIGNvbm5lY3RfMS5jb25uZWN0KHNlbGVjdG9yKShzb3VyY2UpOwogICAgICB9IDogZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgcmV0dXJuIG11bHRpY2FzdF8xLm11bHRpY2FzdChuZXcgU3ViamVjdF8xLlN1YmplY3QoKSkoc291cmNlKTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnB1Ymxpc2ggPSBwdWJsaXNoOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcHVibGlzaEJlaGF2aW9yLmpzCnZhciByZXF1aXJlX3B1Ymxpc2hCZWhhdmlvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcHVibGlzaEJlaGF2aW9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5wdWJsaXNoQmVoYXZpb3IgPSB2b2lkIDA7CiAgICB2YXIgQmVoYXZpb3JTdWJqZWN0XzEgPSByZXF1aXJlX0JlaGF2aW9yU3ViamVjdCgpOwogICAgdmFyIENvbm5lY3RhYmxlT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9Db25uZWN0YWJsZU9ic2VydmFibGUoKTsKICAgIGZ1bmN0aW9uIHB1Ymxpc2hCZWhhdmlvcihpbml0aWFsVmFsdWUpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgIHZhciBzdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdF8xLkJlaGF2aW9yU3ViamVjdChpbml0aWFsVmFsdWUpOwogICAgICAgIHJldHVybiBuZXcgQ29ubmVjdGFibGVPYnNlcnZhYmxlXzEuQ29ubmVjdGFibGVPYnNlcnZhYmxlKHNvdXJjZSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gc3ViamVjdDsKICAgICAgICB9KTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnB1Ymxpc2hCZWhhdmlvciA9IHB1Ymxpc2hCZWhhdmlvcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3B1Ymxpc2hMYXN0LmpzCnZhciByZXF1aXJlX3B1Ymxpc2hMYXN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9wdWJsaXNoTGFzdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucHVibGlzaExhc3QgPSB2b2lkIDA7CiAgICB2YXIgQXN5bmNTdWJqZWN0XzEgPSByZXF1aXJlX0FzeW5jU3ViamVjdCgpOwogICAgdmFyIENvbm5lY3RhYmxlT2JzZXJ2YWJsZV8xID0gcmVxdWlyZV9Db25uZWN0YWJsZU9ic2VydmFibGUoKTsKICAgIGZ1bmN0aW9uIHB1Ymxpc2hMYXN0KCkgewogICAgICByZXR1cm4gZnVuY3Rpb24oc291cmNlKSB7CiAgICAgICAgdmFyIHN1YmplY3QgPSBuZXcgQXN5bmNTdWJqZWN0XzEuQXN5bmNTdWJqZWN0KCk7CiAgICAgICAgcmV0dXJuIG5ldyBDb25uZWN0YWJsZU9ic2VydmFibGVfMS5Db25uZWN0YWJsZU9ic2VydmFibGUoc291cmNlLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBzdWJqZWN0OwogICAgICAgIH0pOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIucHVibGlzaExhc3QgPSBwdWJsaXNoTGFzdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3B1Ymxpc2hSZXBsYXkuanMKdmFyIHJlcXVpcmVfcHVibGlzaFJlcGxheSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcHVibGlzaFJlcGxheS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucHVibGlzaFJlcGxheSA9IHZvaWQgMDsKICAgIHZhciBSZXBsYXlTdWJqZWN0XzEgPSByZXF1aXJlX1JlcGxheVN1YmplY3QoKTsKICAgIHZhciBtdWx0aWNhc3RfMSA9IHJlcXVpcmVfbXVsdGljYXN0KCk7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICBmdW5jdGlvbiBwdWJsaXNoUmVwbGF5KGJ1ZmZlclNpemUsIHdpbmRvd1RpbWUsIHNlbGVjdG9yT3JTY2hlZHVsZXIsIHRpbWVzdGFtcFByb3ZpZGVyKSB7CiAgICAgIGlmIChzZWxlY3Rvck9yU2NoZWR1bGVyICYmICFpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihzZWxlY3Rvck9yU2NoZWR1bGVyKSkgewogICAgICAgIHRpbWVzdGFtcFByb3ZpZGVyID0gc2VsZWN0b3JPclNjaGVkdWxlcjsKICAgICAgfQogICAgICB2YXIgc2VsZWN0b3IgPSBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihzZWxlY3Rvck9yU2NoZWR1bGVyKSA/IHNlbGVjdG9yT3JTY2hlZHVsZXIgOiB2b2lkIDA7CiAgICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICByZXR1cm4gbXVsdGljYXN0XzEubXVsdGljYXN0KG5ldyBSZXBsYXlTdWJqZWN0XzEuUmVwbGF5U3ViamVjdChidWZmZXJTaXplLCB3aW5kb3dUaW1lLCB0aW1lc3RhbXBQcm92aWRlciksIHNlbGVjdG9yKShzb3VyY2UpOwogICAgICB9OwogICAgfQogICAgZXhwb3J0czIucHVibGlzaFJlcGxheSA9IHB1Ymxpc2hSZXBsYXk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9yYWNlV2l0aC5qcwp2YXIgcmVxdWlyZV9yYWNlV2l0aCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcmFjZVdpdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19yZWFkID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19yZWFkIHx8IGZ1bmN0aW9uKG8sIG4pIHsKICAgICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIG9bU3ltYm9sLml0ZXJhdG9yXTsKICAgICAgaWYgKCFtKSByZXR1cm4gbzsKICAgICAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7CiAgICAgIHRyeSB7CiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgZSA9IHsgZXJyb3IgfTsKICAgICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbInJldHVybiJdKSkgbS5jYWxsKGkpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICBpZiAoZSkgdGhyb3cgZS5lcnJvcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGFyOwogICAgfTsKICAgIHZhciBfX3NwcmVhZEFycmF5ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zcHJlYWRBcnJheSB8fCBmdW5jdGlvbih0bywgZnJvbSkgewogICAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBmcm9tLmxlbmd0aCwgaiA9IHRvLmxlbmd0aDsgaSA8IGlsOyBpKyssIGorKykKICAgICAgICB0b1tqXSA9IGZyb21baV07CiAgICAgIHJldHVybiB0bzsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJhY2VXaXRoID0gdm9pZCAwOwogICAgdmFyIHJhY2VfMSA9IHJlcXVpcmVfcmFjZSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICBmdW5jdGlvbiByYWNlV2l0aCgpIHsKICAgICAgdmFyIG90aGVyU291cmNlcyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIG90aGVyU291cmNlc1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHJldHVybiAhb3RoZXJTb3VyY2VzLmxlbmd0aCA/IGlkZW50aXR5XzEuaWRlbnRpdHkgOiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICByYWNlXzEucmFjZUluaXQoX19zcHJlYWRBcnJheShbc291cmNlXSwgX19yZWFkKG90aGVyU291cmNlcykpKShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5yYWNlV2l0aCA9IHJhY2VXaXRoOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcmVwZWF0LmpzCnZhciByZXF1aXJlX3JlcGVhdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcmVwZWF0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yZXBlYXQgPSB2b2lkIDA7CiAgICB2YXIgZW1wdHlfMSA9IHJlcXVpcmVfZW1wdHkoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIHRpbWVyXzEgPSByZXF1aXJlX3RpbWVyKCk7CiAgICBmdW5jdGlvbiByZXBlYXQoY291bnRPckNvbmZpZykgewogICAgICB2YXIgX2E7CiAgICAgIHZhciBjb3VudCA9IEluZmluaXR5OwogICAgICB2YXIgZGVsYXk7CiAgICAgIGlmIChjb3VudE9yQ29uZmlnICE9IG51bGwpIHsKICAgICAgICBpZiAodHlwZW9mIGNvdW50T3JDb25maWcgPT09ICJvYmplY3QiKSB7CiAgICAgICAgICBfYSA9IGNvdW50T3JDb25maWcuY291bnQsIGNvdW50ID0gX2EgPT09IHZvaWQgMCA/IEluZmluaXR5IDogX2EsIGRlbGF5ID0gY291bnRPckNvbmZpZy5kZWxheTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgY291bnQgPSBjb3VudE9yQ29uZmlnOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gY291bnQgPD0gMCA/IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBlbXB0eV8xLkVNUFRZOwogICAgICB9IDogbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHNvRmFyID0gMDsKICAgICAgICB2YXIgc291cmNlU3ViOwogICAgICAgIHZhciByZXN1YnNjcmliZSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgc291cmNlU3ViID09PSBudWxsIHx8IHNvdXJjZVN1YiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc291cmNlU3ViLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICBzb3VyY2VTdWIgPSBudWxsOwogICAgICAgICAgaWYgKGRlbGF5ICE9IG51bGwpIHsKICAgICAgICAgICAgdmFyIG5vdGlmaWVyID0gdHlwZW9mIGRlbGF5ID09PSAibnVtYmVyIiA/IHRpbWVyXzEudGltZXIoZGVsYXkpIDogaW5uZXJGcm9tXzEuaW5uZXJGcm9tKGRlbGF5KHNvRmFyKSk7CiAgICAgICAgICAgIHZhciBub3RpZmllclN1YnNjcmliZXJfMSA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICBub3RpZmllclN1YnNjcmliZXJfMS51bnN1YnNjcmliZSgpOwogICAgICAgICAgICAgIHN1YnNjcmliZVRvU291cmNlKCk7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBub3RpZmllci5zdWJzY3JpYmUobm90aWZpZXJTdWJzY3JpYmVyXzEpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc3Vic2NyaWJlVG9Tb3VyY2UoKTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIHZhciBzdWJzY3JpYmVUb1NvdXJjZSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgdmFyIHN5bmNVbnN1YiA9IGZhbHNlOwogICAgICAgICAgc291cmNlU3ViID0gc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgdm9pZCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgaWYgKCsrc29GYXIgPCBjb3VudCkgewogICAgICAgICAgICAgIGlmIChzb3VyY2VTdWIpIHsKICAgICAgICAgICAgICAgIHJlc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHN5bmNVbnN1YiA9IHRydWU7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSkpOwogICAgICAgICAgaWYgKHN5bmNVbnN1YikgewogICAgICAgICAgICByZXN1YnNjcmliZSgpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc3Vic2NyaWJlVG9Tb3VyY2UoKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5yZXBlYXQgPSByZXBlYXQ7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9yZXBlYXRXaGVuLmpzCnZhciByZXF1aXJlX3JlcGVhdFdoZW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JlcGVhdFdoZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJlcGVhdFdoZW4gPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHJlcGVhdFdoZW4obm90aWZpZXIpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpbm5lclN1YjsKICAgICAgICB2YXIgc3luY1Jlc3ViID0gZmFsc2U7CiAgICAgICAgdmFyIGNvbXBsZXRpb25zJDsKICAgICAgICB2YXIgaXNOb3RpZmllckNvbXBsZXRlID0gZmFsc2U7CiAgICAgICAgdmFyIGlzTWFpbkNvbXBsZXRlID0gZmFsc2U7CiAgICAgICAgdmFyIGNoZWNrQ29tcGxldGUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBpc01haW5Db21wbGV0ZSAmJiBpc05vdGlmaWVyQ29tcGxldGUgJiYgKHN1YnNjcmliZXIuY29tcGxldGUoKSwgdHJ1ZSk7CiAgICAgICAgfTsKICAgICAgICB2YXIgZ2V0Q29tcGxldGlvblN1YmplY3QgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmICghY29tcGxldGlvbnMkKSB7CiAgICAgICAgICAgIGNvbXBsZXRpb25zJCA9IG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20obm90aWZpZXIoY29tcGxldGlvbnMkKSkuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICBpZiAoaW5uZXJTdWIpIHsKICAgICAgICAgICAgICAgIHN1YnNjcmliZUZvclJlcGVhdFdoZW4oKTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgc3luY1Jlc3ViID0gdHJ1ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIGlzTm90aWZpZXJDb21wbGV0ZSA9IHRydWU7CiAgICAgICAgICAgICAgY2hlY2tDb21wbGV0ZSgpOwogICAgICAgICAgICB9KSk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gY29tcGxldGlvbnMkOwogICAgICAgIH07CiAgICAgICAgdmFyIHN1YnNjcmliZUZvclJlcGVhdFdoZW4gPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlzTWFpbkNvbXBsZXRlID0gZmFsc2U7CiAgICAgICAgICBpbm5lclN1YiA9IHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIHZvaWQgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlzTWFpbkNvbXBsZXRlID0gdHJ1ZTsKICAgICAgICAgICAgIWNoZWNrQ29tcGxldGUoKSAmJiBnZXRDb21wbGV0aW9uU3ViamVjdCgpLm5leHQoKTsKICAgICAgICAgIH0pKTsKICAgICAgICAgIGlmIChzeW5jUmVzdWIpIHsKICAgICAgICAgICAgaW5uZXJTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgaW5uZXJTdWIgPSBudWxsOwogICAgICAgICAgICBzeW5jUmVzdWIgPSBmYWxzZTsKICAgICAgICAgICAgc3Vic2NyaWJlRm9yUmVwZWF0V2hlbigpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc3Vic2NyaWJlRm9yUmVwZWF0V2hlbigpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJlcGVhdFdoZW4gPSByZXBlYXRXaGVuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvcmV0cnkuanMKdmFyIHJlcXVpcmVfcmV0cnkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3JldHJ5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yZXRyeSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIHZhciB0aW1lcl8xID0gcmVxdWlyZV90aW1lcigpOwogICAgdmFyIGlubmVyRnJvbV8xID0gcmVxdWlyZV9pbm5lckZyb20oKTsKICAgIGZ1bmN0aW9uIHJldHJ5KGNvbmZpZ09yQ291bnQpIHsKICAgICAgaWYgKGNvbmZpZ09yQ291bnQgPT09IHZvaWQgMCkgewogICAgICAgIGNvbmZpZ09yQ291bnQgPSBJbmZpbml0eTsKICAgICAgfQogICAgICB2YXIgY29uZmlnOwogICAgICBpZiAoY29uZmlnT3JDb3VudCAmJiB0eXBlb2YgY29uZmlnT3JDb3VudCA9PT0gIm9iamVjdCIpIHsKICAgICAgICBjb25maWcgPSBjb25maWdPckNvdW50OwogICAgICB9IGVsc2UgewogICAgICAgIGNvbmZpZyA9IHsKICAgICAgICAgIGNvdW50OiBjb25maWdPckNvdW50CiAgICAgICAgfTsKICAgICAgfQogICAgICB2YXIgX2EgPSBjb25maWcuY291bnQsIGNvdW50ID0gX2EgPT09IHZvaWQgMCA/IEluZmluaXR5IDogX2EsIGRlbGF5ID0gY29uZmlnLmRlbGF5LCBfYiA9IGNvbmZpZy5yZXNldE9uU3VjY2VzcywgcmVzZXRPblN1Y2Nlc3MgPSBfYiA9PT0gdm9pZCAwID8gZmFsc2UgOiBfYjsKICAgICAgcmV0dXJuIGNvdW50IDw9IDAgPyBpZGVudGl0eV8xLmlkZW50aXR5IDogbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHNvRmFyID0gMDsKICAgICAgICB2YXIgaW5uZXJTdWI7CiAgICAgICAgdmFyIHN1YnNjcmliZUZvclJldHJ5ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgc3luY1Vuc3ViID0gZmFsc2U7CiAgICAgICAgICBpbm5lclN1YiA9IHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIGlmIChyZXNldE9uU3VjY2VzcykgewogICAgICAgICAgICAgIHNvRmFyID0gMDsKICAgICAgICAgICAgfQogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfSwgdm9pZCAwLCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgICAgaWYgKHNvRmFyKysgPCBjb3VudCkgewogICAgICAgICAgICAgIHZhciByZXN1Yl8xID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBpZiAoaW5uZXJTdWIpIHsKICAgICAgICAgICAgICAgICAgaW5uZXJTdWIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgICAgICAgICAgaW5uZXJTdWIgPSBudWxsOwogICAgICAgICAgICAgICAgICBzdWJzY3JpYmVGb3JSZXRyeSgpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgc3luY1Vuc3ViID0gdHJ1ZTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgIGlmIChkZWxheSAhPSBudWxsKSB7CiAgICAgICAgICAgICAgICB2YXIgbm90aWZpZXIgPSB0eXBlb2YgZGVsYXkgPT09ICJudW1iZXIiID8gdGltZXJfMS50aW1lcihkZWxheSkgOiBpbm5lckZyb21fMS5pbm5lckZyb20oZGVsYXkoZXJyLCBzb0ZhcikpOwogICAgICAgICAgICAgICAgdmFyIG5vdGlmaWVyU3Vic2NyaWJlcl8xID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICBub3RpZmllclN1YnNjcmliZXJfMS51bnN1YnNjcmliZSgpOwogICAgICAgICAgICAgICAgICByZXN1Yl8xKCk7CiAgICAgICAgICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICBub3RpZmllci5zdWJzY3JpYmUobm90aWZpZXJTdWJzY3JpYmVyXzEpOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICByZXN1Yl8xKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHN1YnNjcmliZXIuZXJyb3IoZXJyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSkpOwogICAgICAgICAgaWYgKHN5bmNVbnN1YikgewogICAgICAgICAgICBpbm5lclN1Yi51bnN1YnNjcmliZSgpOwogICAgICAgICAgICBpbm5lclN1YiA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZUZvclJldHJ5KCk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBzdWJzY3JpYmVGb3JSZXRyeSgpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnJldHJ5ID0gcmV0cnk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9yZXRyeVdoZW4uanMKdmFyIHJlcXVpcmVfcmV0cnlXaGVuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9yZXRyeVdoZW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnJldHJ5V2hlbiA9IHZvaWQgMDsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gcmV0cnlXaGVuKG5vdGlmaWVyKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgaW5uZXJTdWI7CiAgICAgICAgdmFyIHN5bmNSZXN1YiA9IGZhbHNlOwogICAgICAgIHZhciBlcnJvcnMkOwogICAgICAgIHZhciBzdWJzY3JpYmVGb3JSZXRyeVdoZW4gPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlubmVyU3ViID0gc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKGVycikgewogICAgICAgICAgICBpZiAoIWVycm9ycyQpIHsKICAgICAgICAgICAgICBlcnJvcnMkID0gbmV3IFN1YmplY3RfMS5TdWJqZWN0KCk7CiAgICAgICAgICAgICAgaW5uZXJGcm9tXzEuaW5uZXJGcm9tKG5vdGlmaWVyKGVycm9ycyQpKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgcmV0dXJuIGlubmVyU3ViID8gc3Vic2NyaWJlRm9yUmV0cnlXaGVuKCkgOiBzeW5jUmVzdWIgPSB0cnVlOwogICAgICAgICAgICAgIH0pKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoZXJyb3JzJCkgewogICAgICAgICAgICAgIGVycm9ycyQubmV4dChlcnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KSk7CiAgICAgICAgICBpZiAoc3luY1Jlc3ViKSB7CiAgICAgICAgICAgIGlubmVyU3ViLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgIGlubmVyU3ViID0gbnVsbDsKICAgICAgICAgICAgc3luY1Jlc3ViID0gZmFsc2U7CiAgICAgICAgICAgIHN1YnNjcmliZUZvclJldHJ5V2hlbigpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc3Vic2NyaWJlRm9yUmV0cnlXaGVuKCk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIucmV0cnlXaGVuID0gcmV0cnlXaGVuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2FtcGxlLmpzCnZhciByZXF1aXJlX3NhbXBsZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2FtcGxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zYW1wbGUgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIG5vb3BfMSA9IHJlcXVpcmVfbm9vcCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHNhbXBsZShub3RpZmllcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIGxhc3RWYWx1ZSA9IG51bGw7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgIGxhc3RWYWx1ZSA9IHZhbHVlOwogICAgICAgIH0pKTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20obm90aWZpZXIpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoaGFzVmFsdWUpIHsKICAgICAgICAgICAgaGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICAgICAgdmFyIHZhbHVlID0gbGFzdFZhbHVlOwogICAgICAgICAgICBsYXN0VmFsdWUgPSBudWxsOwogICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgICAgfQogICAgICAgIH0sIG5vb3BfMS5ub29wKSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2FtcGxlID0gc2FtcGxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2FtcGxlVGltZS5qcwp2YXIgcmVxdWlyZV9zYW1wbGVUaW1lID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zYW1wbGVUaW1lLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zYW1wbGVUaW1lID0gdm9pZCAwOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgc2FtcGxlXzEgPSByZXF1aXJlX3NhbXBsZSgpOwogICAgdmFyIGludGVydmFsXzEgPSByZXF1aXJlX2ludGVydmFsKCk7CiAgICBmdW5jdGlvbiBzYW1wbGVUaW1lKHBlcmlvZCwgc2NoZWR1bGVyKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgcmV0dXJuIHNhbXBsZV8xLnNhbXBsZShpbnRlcnZhbF8xLmludGVydmFsKHBlcmlvZCwgc2NoZWR1bGVyKSk7CiAgICB9CiAgICBleHBvcnRzMi5zYW1wbGVUaW1lID0gc2FtcGxlVGltZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NjYW4uanMKdmFyIHJlcXVpcmVfc2NhbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2Nhbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2NhbiA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBzY2FuSW50ZXJuYWxzXzEgPSByZXF1aXJlX3NjYW5JbnRlcm5hbHMoKTsKICAgIGZ1bmN0aW9uIHNjYW4oYWNjdW11bGF0b3IsIHNlZWQpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKHNjYW5JbnRlcm5hbHNfMS5zY2FuSW50ZXJuYWxzKGFjY3VtdWxhdG9yLCBzZWVkLCBhcmd1bWVudHMubGVuZ3RoID49IDIsIHRydWUpKTsKICAgIH0KICAgIGV4cG9ydHMyLnNjYW4gPSBzY2FuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2VxdWVuY2VFcXVhbC5qcwp2YXIgcmVxdWlyZV9zZXF1ZW5jZUVxdWFsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zZXF1ZW5jZUVxdWFsLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zZXF1ZW5jZUVxdWFsID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICBmdW5jdGlvbiBzZXF1ZW5jZUVxdWFsKGNvbXBhcmVUbywgY29tcGFyYXRvcikgewogICAgICBpZiAoY29tcGFyYXRvciA9PT0gdm9pZCAwKSB7CiAgICAgICAgY29tcGFyYXRvciA9IGZ1bmN0aW9uKGEsIGIpIHsKICAgICAgICAgIHJldHVybiBhID09PSBiOwogICAgICAgIH07CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBhU3RhdGUgPSBjcmVhdGVTdGF0ZSgpOwogICAgICAgIHZhciBiU3RhdGUgPSBjcmVhdGVTdGF0ZSgpOwogICAgICAgIHZhciBlbWl0ID0gZnVuY3Rpb24oaXNFcXVhbCkgewogICAgICAgICAgc3Vic2NyaWJlci5uZXh0KGlzRXF1YWwpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH07CiAgICAgICAgdmFyIGNyZWF0ZVN1YnNjcmliZXIgPSBmdW5jdGlvbihzZWxmU3RhdGUsIG90aGVyU3RhdGUpIHsKICAgICAgICAgIHZhciBzZXF1ZW5jZUVxdWFsU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihhKSB7CiAgICAgICAgICAgIHZhciBidWZmZXIgPSBvdGhlclN0YXRlLmJ1ZmZlciwgY29tcGxldGUgPSBvdGhlclN0YXRlLmNvbXBsZXRlOwogICAgICAgICAgICBpZiAoYnVmZmVyLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgICAgIGNvbXBsZXRlID8gZW1pdChmYWxzZSkgOiBzZWxmU3RhdGUuYnVmZmVyLnB1c2goYSk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgIWNvbXBhcmF0b3IoYSwgYnVmZmVyLnNoaWZ0KCkpICYmIGVtaXQoZmFsc2UpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgc2VsZlN0YXRlLmNvbXBsZXRlID0gdHJ1ZTsKICAgICAgICAgICAgdmFyIGNvbXBsZXRlID0gb3RoZXJTdGF0ZS5jb21wbGV0ZSwgYnVmZmVyID0gb3RoZXJTdGF0ZS5idWZmZXI7CiAgICAgICAgICAgIGNvbXBsZXRlICYmIGVtaXQoYnVmZmVyLmxlbmd0aCA9PT0gMCk7CiAgICAgICAgICAgIHNlcXVlbmNlRXF1YWxTdWJzY3JpYmVyID09PSBudWxsIHx8IHNlcXVlbmNlRXF1YWxTdWJzY3JpYmVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzZXF1ZW5jZUVxdWFsU3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgfSk7CiAgICAgICAgICByZXR1cm4gc2VxdWVuY2VFcXVhbFN1YnNjcmliZXI7CiAgICAgICAgfTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKGNyZWF0ZVN1YnNjcmliZXIoYVN0YXRlLCBiU3RhdGUpKTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20oY29tcGFyZVRvKS5zdWJzY3JpYmUoY3JlYXRlU3Vic2NyaWJlcihiU3RhdGUsIGFTdGF0ZSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNlcXVlbmNlRXF1YWwgPSBzZXF1ZW5jZUVxdWFsOwogICAgZnVuY3Rpb24gY3JlYXRlU3RhdGUoKSB7CiAgICAgIHJldHVybiB7CiAgICAgICAgYnVmZmVyOiBbXSwKICAgICAgICBjb21wbGV0ZTogZmFsc2UKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NoYXJlLmpzCnZhciByZXF1aXJlX3NoYXJlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zaGFyZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2hhcmUgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIFN1YnNjcmliZXJfMSA9IHJlcXVpcmVfU3Vic2NyaWJlcigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gc2hhcmUob3B0aW9ucykgewogICAgICBpZiAob3B0aW9ucyA9PT0gdm9pZCAwKSB7CiAgICAgICAgb3B0aW9ucyA9IHt9OwogICAgICB9CiAgICAgIHZhciBfYSA9IG9wdGlvbnMuY29ubmVjdG9yLCBjb25uZWN0b3IgPSBfYSA9PT0gdm9pZCAwID8gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICB9IDogX2EsIF9iID0gb3B0aW9ucy5yZXNldE9uRXJyb3IsIHJlc2V0T25FcnJvciA9IF9iID09PSB2b2lkIDAgPyB0cnVlIDogX2IsIF9jID0gb3B0aW9ucy5yZXNldE9uQ29tcGxldGUsIHJlc2V0T25Db21wbGV0ZSA9IF9jID09PSB2b2lkIDAgPyB0cnVlIDogX2MsIF9kID0gb3B0aW9ucy5yZXNldE9uUmVmQ291bnRaZXJvLCByZXNldE9uUmVmQ291bnRaZXJvID0gX2QgPT09IHZvaWQgMCA/IHRydWUgOiBfZDsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHdyYXBwZXJTb3VyY2UpIHsKICAgICAgICB2YXIgY29ubmVjdGlvbjsKICAgICAgICB2YXIgcmVzZXRDb25uZWN0aW9uOwogICAgICAgIHZhciBzdWJqZWN0OwogICAgICAgIHZhciByZWZDb3VudCA9IDA7CiAgICAgICAgdmFyIGhhc0NvbXBsZXRlZCA9IGZhbHNlOwogICAgICAgIHZhciBoYXNFcnJvcmVkID0gZmFsc2U7CiAgICAgICAgdmFyIGNhbmNlbFJlc2V0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXNldENvbm5lY3Rpb24gPT09IG51bGwgfHwgcmVzZXRDb25uZWN0aW9uID09PSB2b2lkIDAgPyB2b2lkIDAgOiByZXNldENvbm5lY3Rpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHJlc2V0Q29ubmVjdGlvbiA9IHZvaWQgMDsKICAgICAgICB9OwogICAgICAgIHZhciByZXNldCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgY2FuY2VsUmVzZXQoKTsKICAgICAgICAgIGNvbm5lY3Rpb24gPSBzdWJqZWN0ID0gdm9pZCAwOwogICAgICAgICAgaGFzQ29tcGxldGVkID0gaGFzRXJyb3JlZCA9IGZhbHNlOwogICAgICAgIH07CiAgICAgICAgdmFyIHJlc2V0QW5kVW5zdWJzY3JpYmUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBjb25uID0gY29ubmVjdGlvbjsKICAgICAgICAgIHJlc2V0KCk7CiAgICAgICAgICBjb25uID09PSBudWxsIHx8IGNvbm4gPT09IHZvaWQgMCA/IHZvaWQgMCA6IGNvbm4udW5zdWJzY3JpYmUoKTsKICAgICAgICB9OwogICAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICAgIHJlZkNvdW50Kys7CiAgICAgICAgICBpZiAoIWhhc0Vycm9yZWQgJiYgIWhhc0NvbXBsZXRlZCkgewogICAgICAgICAgICBjYW5jZWxSZXNldCgpOwogICAgICAgICAgfQogICAgICAgICAgdmFyIGRlc3QgPSBzdWJqZWN0ID0gc3ViamVjdCAhPT0gbnVsbCAmJiBzdWJqZWN0ICE9PSB2b2lkIDAgPyBzdWJqZWN0IDogY29ubmVjdG9yKCk7CiAgICAgICAgICBzdWJzY3JpYmVyLmFkZChmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmVmQ291bnQtLTsKICAgICAgICAgICAgaWYgKHJlZkNvdW50ID09PSAwICYmICFoYXNFcnJvcmVkICYmICFoYXNDb21wbGV0ZWQpIHsKICAgICAgICAgICAgICByZXNldENvbm5lY3Rpb24gPSBoYW5kbGVSZXNldChyZXNldEFuZFVuc3Vic2NyaWJlLCByZXNldE9uUmVmQ291bnRaZXJvKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgICBkZXN0LnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICAgIGlmICghY29ubmVjdGlvbiAmJiByZWZDb3VudCA+IDApIHsKICAgICAgICAgICAgY29ubmVjdGlvbiA9IG5ldyBTdWJzY3JpYmVyXzEuU2FmZVN1YnNjcmliZXIoewogICAgICAgICAgICAgIG5leHQ6IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gZGVzdC5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgIGVycm9yOiBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgICAgICAgIGhhc0Vycm9yZWQgPSB0cnVlOwogICAgICAgICAgICAgICAgY2FuY2VsUmVzZXQoKTsKICAgICAgICAgICAgICAgIHJlc2V0Q29ubmVjdGlvbiA9IGhhbmRsZVJlc2V0KHJlc2V0LCByZXNldE9uRXJyb3IsIGVycik7CiAgICAgICAgICAgICAgICBkZXN0LmVycm9yKGVycik7CiAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICBjb21wbGV0ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBoYXNDb21wbGV0ZWQgPSB0cnVlOwogICAgICAgICAgICAgICAgY2FuY2VsUmVzZXQoKTsKICAgICAgICAgICAgICAgIHJlc2V0Q29ubmVjdGlvbiA9IGhhbmRsZVJlc2V0KHJlc2V0LCByZXNldE9uQ29tcGxldGUpOwogICAgICAgICAgICAgICAgZGVzdC5jb21wbGV0ZSgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShzb3VyY2UpLnN1YnNjcmliZShjb25uZWN0aW9uKTsKICAgICAgICAgIH0KICAgICAgICB9KSh3cmFwcGVyU291cmNlKTsKICAgICAgfTsKICAgIH0KICAgIGV4cG9ydHMyLnNoYXJlID0gc2hhcmU7CiAgICBmdW5jdGlvbiBoYW5kbGVSZXNldChyZXNldCwgb24pIHsKICAgICAgdmFyIGFyZ3MgPSBbXTsKICAgICAgZm9yICh2YXIgX2kgPSAyOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHsKICAgICAgICBhcmdzW19pIC0gMl0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIGlmIChvbiA9PT0gdHJ1ZSkgewogICAgICAgIHJlc2V0KCk7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIGlmIChvbiA9PT0gZmFsc2UpIHsKICAgICAgICByZXR1cm47CiAgICAgIH0KICAgICAgdmFyIG9uU3Vic2NyaWJlciA9IG5ldyBTdWJzY3JpYmVyXzEuU2FmZVN1YnNjcmliZXIoewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgb25TdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICByZXNldCgpOwogICAgICAgIH0KICAgICAgfSk7CiAgICAgIHJldHVybiBpbm5lckZyb21fMS5pbm5lckZyb20ob24uYXBwbHkodm9pZCAwLCBfX3NwcmVhZEFycmF5KFtdLCBfX3JlYWQoYXJncykpKSkuc3Vic2NyaWJlKG9uU3Vic2NyaWJlcik7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zaGFyZVJlcGxheS5qcwp2YXIgcmVxdWlyZV9zaGFyZVJlcGxheSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2hhcmVSZXBsYXkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNoYXJlUmVwbGF5ID0gdm9pZCAwOwogICAgdmFyIFJlcGxheVN1YmplY3RfMSA9IHJlcXVpcmVfUmVwbGF5U3ViamVjdCgpOwogICAgdmFyIHNoYXJlXzEgPSByZXF1aXJlX3NoYXJlKCk7CiAgICBmdW5jdGlvbiBzaGFyZVJlcGxheShjb25maWdPckJ1ZmZlclNpemUsIHdpbmRvd1RpbWUsIHNjaGVkdWxlcikgewogICAgICB2YXIgX2EsIF9iLCBfYzsKICAgICAgdmFyIGJ1ZmZlclNpemU7CiAgICAgIHZhciByZWZDb3VudCA9IGZhbHNlOwogICAgICBpZiAoY29uZmlnT3JCdWZmZXJTaXplICYmIHR5cGVvZiBjb25maWdPckJ1ZmZlclNpemUgPT09ICJvYmplY3QiKSB7CiAgICAgICAgX2EgPSBjb25maWdPckJ1ZmZlclNpemUuYnVmZmVyU2l6ZSwgYnVmZmVyU2l6ZSA9IF9hID09PSB2b2lkIDAgPyBJbmZpbml0eSA6IF9hLCBfYiA9IGNvbmZpZ09yQnVmZmVyU2l6ZS53aW5kb3dUaW1lLCB3aW5kb3dUaW1lID0gX2IgPT09IHZvaWQgMCA/IEluZmluaXR5IDogX2IsIF9jID0gY29uZmlnT3JCdWZmZXJTaXplLnJlZkNvdW50LCByZWZDb3VudCA9IF9jID09PSB2b2lkIDAgPyBmYWxzZSA6IF9jLCBzY2hlZHVsZXIgPSBjb25maWdPckJ1ZmZlclNpemUuc2NoZWR1bGVyOwogICAgICB9IGVsc2UgewogICAgICAgIGJ1ZmZlclNpemUgPSBjb25maWdPckJ1ZmZlclNpemUgIT09IG51bGwgJiYgY29uZmlnT3JCdWZmZXJTaXplICE9PSB2b2lkIDAgPyBjb25maWdPckJ1ZmZlclNpemUgOiBJbmZpbml0eTsKICAgICAgfQogICAgICByZXR1cm4gc2hhcmVfMS5zaGFyZSh7CiAgICAgICAgY29ubmVjdG9yOiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBuZXcgUmVwbGF5U3ViamVjdF8xLlJlcGxheVN1YmplY3QoYnVmZmVyU2l6ZSwgd2luZG93VGltZSwgc2NoZWR1bGVyKTsKICAgICAgICB9LAogICAgICAgIHJlc2V0T25FcnJvcjogdHJ1ZSwKICAgICAgICByZXNldE9uQ29tcGxldGU6IGZhbHNlLAogICAgICAgIHJlc2V0T25SZWZDb3VudFplcm86IHJlZkNvdW50CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2hhcmVSZXBsYXkgPSBzaGFyZVJlcGxheTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NpbmdsZS5qcwp2YXIgcmVxdWlyZV9zaW5nbGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NpbmdsZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2luZ2xlID0gdm9pZCAwOwogICAgdmFyIEVtcHR5RXJyb3JfMSA9IHJlcXVpcmVfRW1wdHlFcnJvcigpOwogICAgdmFyIFNlcXVlbmNlRXJyb3JfMSA9IHJlcXVpcmVfU2VxdWVuY2VFcnJvcigpOwogICAgdmFyIE5vdEZvdW5kRXJyb3JfMSA9IHJlcXVpcmVfTm90Rm91bmRFcnJvcigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHNpbmdsZShwcmVkaWNhdGUpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgIHZhciBzaW5nbGVWYWx1ZTsKICAgICAgICB2YXIgc2VlblZhbHVlID0gZmFsc2U7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgc2VlblZhbHVlID0gdHJ1ZTsKICAgICAgICAgIGlmICghcHJlZGljYXRlIHx8IHByZWRpY2F0ZSh2YWx1ZSwgaW5kZXgrKywgc291cmNlKSkgewogICAgICAgICAgICBoYXNWYWx1ZSAmJiBzdWJzY3JpYmVyLmVycm9yKG5ldyBTZXF1ZW5jZUVycm9yXzEuU2VxdWVuY2VFcnJvcigiVG9vIG1hbnkgbWF0Y2hpbmcgdmFsdWVzIikpOwogICAgICAgICAgICBoYXNWYWx1ZSA9IHRydWU7CiAgICAgICAgICAgIHNpbmdsZVZhbHVlID0gdmFsdWU7CiAgICAgICAgICB9CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoaGFzVmFsdWUpIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHNpbmdsZVZhbHVlKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc3Vic2NyaWJlci5lcnJvcihzZWVuVmFsdWUgPyBuZXcgTm90Rm91bmRFcnJvcl8xLk5vdEZvdW5kRXJyb3IoIk5vIG1hdGNoaW5nIHZhbHVlcyIpIDogbmV3IEVtcHR5RXJyb3JfMS5FbXB0eUVycm9yKCkpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zaW5nbGUgPSBzaW5nbGU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9za2lwLmpzCnZhciByZXF1aXJlX3NraXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXAuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNraXAgPSB2b2lkIDA7CiAgICB2YXIgZmlsdGVyXzEgPSByZXF1aXJlX2ZpbHRlcigpOwogICAgZnVuY3Rpb24gc2tpcChjb3VudCkgewogICAgICByZXR1cm4gZmlsdGVyXzEuZmlsdGVyKGZ1bmN0aW9uKF8sIGluZGV4KSB7CiAgICAgICAgcmV0dXJuIGNvdW50IDw9IGluZGV4OwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnNraXAgPSBza2lwOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2tpcExhc3QuanMKdmFyIHJlcXVpcmVfc2tpcExhc3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXBMYXN0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5za2lwTGFzdCA9IHZvaWQgMDsKICAgIHZhciBpZGVudGl0eV8xID0gcmVxdWlyZV9pZGVudGl0eSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHNraXBMYXN0KHNraXBDb3VudCkgewogICAgICByZXR1cm4gc2tpcENvdW50IDw9IDAgPyBpZGVudGl0eV8xLmlkZW50aXR5IDogbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHJpbmcgPSBuZXcgQXJyYXkoc2tpcENvdW50KTsKICAgICAgICB2YXIgc2VlbiA9IDA7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciB2YWx1ZUluZGV4ID0gc2VlbisrOwogICAgICAgICAgaWYgKHZhbHVlSW5kZXggPCBza2lwQ291bnQpIHsKICAgICAgICAgICAgcmluZ1t2YWx1ZUluZGV4XSA9IHZhbHVlOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgdmFyIGluZGV4ID0gdmFsdWVJbmRleCAlIHNraXBDb3VudDsKICAgICAgICAgICAgdmFyIG9sZFZhbHVlID0gcmluZ1tpbmRleF07CiAgICAgICAgICAgIHJpbmdbaW5kZXhdID0gdmFsdWU7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChvbGRWYWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJpbmcgPSBudWxsOwogICAgICAgIH07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2tpcExhc3QgPSBza2lwTGFzdDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXBVbnRpbC5qcwp2YXIgcmVxdWlyZV9za2lwVW50aWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3NraXBVbnRpbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2tpcFVudGlsID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICBmdW5jdGlvbiBza2lwVW50aWwobm90aWZpZXIpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciB0YWtpbmcgPSBmYWxzZTsKICAgICAgICB2YXIgc2tpcFN1YnNjcmliZXIgPSBPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBza2lwU3Vic2NyaWJlciA9PT0gbnVsbCB8fCBza2lwU3Vic2NyaWJlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2tpcFN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHRha2luZyA9IHRydWU7CiAgICAgICAgfSwgbm9vcF8xLm5vb3ApOwogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShub3RpZmllcikuc3Vic2NyaWJlKHNraXBTdWJzY3JpYmVyKTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuIHRha2luZyAmJiBzdWJzY3JpYmVyLm5leHQodmFsdWUpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5za2lwVW50aWwgPSBza2lwVW50aWw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9za2lwV2hpbGUuanMKdmFyIHJlcXVpcmVfc2tpcFdoaWxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9za2lwV2hpbGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNraXBXaGlsZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiBza2lwV2hpbGUocHJlZGljYXRlKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgdGFraW5nID0gZmFsc2U7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuICh0YWtpbmcgfHwgKHRha2luZyA9ICFwcmVkaWNhdGUodmFsdWUsIGluZGV4KyspKSkgJiYgc3Vic2NyaWJlci5uZXh0KHZhbHVlKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc2tpcFdoaWxlID0gc2tpcFdoaWxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3RhcnRXaXRoLmpzCnZhciByZXF1aXJlX3N0YXJ0V2l0aCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3RhcnRXaXRoLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zdGFydFdpdGggPSB2b2lkIDA7CiAgICB2YXIgY29uY2F0XzEgPSByZXF1aXJlX2NvbmNhdCgpOwogICAgdmFyIGFyZ3NfMSA9IHJlcXVpcmVfYXJncygpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gc3RhcnRXaXRoKCkgewogICAgICB2YXIgdmFsdWVzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgdmFsdWVzW19pXSA9IGFyZ3VtZW50c1tfaV07CiAgICAgIH0KICAgICAgdmFyIHNjaGVkdWxlciA9IGFyZ3NfMS5wb3BTY2hlZHVsZXIodmFsdWVzKTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIChzY2hlZHVsZXIgPyBjb25jYXRfMS5jb25jYXQodmFsdWVzLCBzb3VyY2UsIHNjaGVkdWxlcikgOiBjb25jYXRfMS5jb25jYXQodmFsdWVzLCBzb3VyY2UpKS5zdWJzY3JpYmUoc3Vic2NyaWJlcik7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIuc3RhcnRXaXRoID0gc3RhcnRXaXRoOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3dpdGNoTWFwLmpzCnZhciByZXF1aXJlX3N3aXRjaE1hcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc3dpdGNoTWFwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zd2l0Y2hNYXAgPSB2b2lkIDA7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHN3aXRjaE1hcChwcm9qZWN0LCByZXN1bHRTZWxlY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGlubmVyU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgdmFyIGluZGV4ID0gMDsKICAgICAgICB2YXIgaXNDb21wbGV0ZSA9IGZhbHNlOwogICAgICAgIHZhciBjaGVja0NvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gaXNDb21wbGV0ZSAmJiAhaW5uZXJTdWJzY3JpYmVyICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9OwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBpbm5lclN1YnNjcmliZXIgPT09IG51bGwgfHwgaW5uZXJTdWJzY3JpYmVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBpbm5lclN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHZhciBpbm5lckluZGV4ID0gMDsKICAgICAgICAgIHZhciBvdXRlckluZGV4ID0gaW5kZXgrKzsKICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShwcm9qZWN0KHZhbHVlLCBvdXRlckluZGV4KSkuc3Vic2NyaWJlKGlubmVyU3Vic2NyaWJlciA9IE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbihpbm5lclZhbHVlKSB7CiAgICAgICAgICAgIHJldHVybiBzdWJzY3JpYmVyLm5leHQocmVzdWx0U2VsZWN0b3IgPyByZXN1bHRTZWxlY3Rvcih2YWx1ZSwgaW5uZXJWYWx1ZSwgb3V0ZXJJbmRleCwgaW5uZXJJbmRleCsrKSA6IGlubmVyVmFsdWUpOwogICAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlubmVyU3Vic2NyaWJlciA9IG51bGw7CiAgICAgICAgICAgIGNoZWNrQ29tcGxldGUoKTsKICAgICAgICAgIH0pKTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIGlzQ29tcGxldGUgPSB0cnVlOwogICAgICAgICAgY2hlY2tDb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zd2l0Y2hNYXAgPSBzd2l0Y2hNYXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zd2l0Y2hBbGwuanMKdmFyIHJlcXVpcmVfc3dpdGNoQWxsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zd2l0Y2hBbGwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN3aXRjaEFsbCA9IHZvaWQgMDsKICAgIHZhciBzd2l0Y2hNYXBfMSA9IHJlcXVpcmVfc3dpdGNoTWFwKCk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIGZ1bmN0aW9uIHN3aXRjaEFsbCgpIHsKICAgICAgcmV0dXJuIHN3aXRjaE1hcF8xLnN3aXRjaE1hcChpZGVudGl0eV8xLmlkZW50aXR5KTsKICAgIH0KICAgIGV4cG9ydHMyLnN3aXRjaEFsbCA9IHN3aXRjaEFsbDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3N3aXRjaE1hcFRvLmpzCnZhciByZXF1aXJlX3N3aXRjaE1hcFRvID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zd2l0Y2hNYXBUby5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc3dpdGNoTWFwVG8gPSB2b2lkIDA7CiAgICB2YXIgc3dpdGNoTWFwXzEgPSByZXF1aXJlX3N3aXRjaE1hcCgpOwogICAgdmFyIGlzRnVuY3Rpb25fMSA9IHJlcXVpcmVfaXNGdW5jdGlvbigpOwogICAgZnVuY3Rpb24gc3dpdGNoTWFwVG8oaW5uZXJPYnNlcnZhYmxlLCByZXN1bHRTZWxlY3RvcikgewogICAgICByZXR1cm4gaXNGdW5jdGlvbl8xLmlzRnVuY3Rpb24ocmVzdWx0U2VsZWN0b3IpID8gc3dpdGNoTWFwXzEuc3dpdGNoTWFwKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBpbm5lck9ic2VydmFibGU7CiAgICAgIH0sIHJlc3VsdFNlbGVjdG9yKSA6IHN3aXRjaE1hcF8xLnN3aXRjaE1hcChmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gaW5uZXJPYnNlcnZhYmxlOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnN3aXRjaE1hcFRvID0gc3dpdGNoTWFwVG87CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy9zd2l0Y2hTY2FuLmpzCnZhciByZXF1aXJlX3N3aXRjaFNjYW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3N3aXRjaFNjYW4uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN3aXRjaFNjYW4gPSB2b2lkIDA7CiAgICB2YXIgc3dpdGNoTWFwXzEgPSByZXF1aXJlX3N3aXRjaE1hcCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gc3dpdGNoU2NhbihhY2N1bXVsYXRvciwgc2VlZCkgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHN0YXRlID0gc2VlZDsKICAgICAgICBzd2l0Y2hNYXBfMS5zd2l0Y2hNYXAoZnVuY3Rpb24odmFsdWUsIGluZGV4KSB7CiAgICAgICAgICByZXR1cm4gYWNjdW11bGF0b3Ioc3RhdGUsIHZhbHVlLCBpbmRleCk7CiAgICAgICAgfSwgZnVuY3Rpb24oXywgaW5uZXJWYWx1ZSkgewogICAgICAgICAgcmV0dXJuIHN0YXRlID0gaW5uZXJWYWx1ZSwgaW5uZXJWYWx1ZTsKICAgICAgICB9KShzb3VyY2UpLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICBzdGF0ZSA9IG51bGw7CiAgICAgICAgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi5zd2l0Y2hTY2FuID0gc3dpdGNoU2NhbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rha2VVbnRpbC5qcwp2YXIgcmVxdWlyZV90YWtlVW50aWwgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rha2VVbnRpbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGFrZVVudGlsID0gdm9pZCAwOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICBmdW5jdGlvbiB0YWtlVW50aWwobm90aWZpZXIpIHsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShub3RpZmllcikuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgbm9vcF8xLm5vb3ApKTsKICAgICAgICAhc3Vic2NyaWJlci5jbG9zZWQgJiYgc291cmNlLnN1YnNjcmliZShzdWJzY3JpYmVyKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50YWtlVW50aWwgPSB0YWtlVW50aWw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90YWtlV2hpbGUuanMKdmFyIHJlcXVpcmVfdGFrZVdoaWxlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90YWtlV2hpbGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRha2VXaGlsZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICBmdW5jdGlvbiB0YWtlV2hpbGUocHJlZGljYXRlLCBpbmNsdXNpdmUpIHsKICAgICAgaWYgKGluY2x1c2l2ZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgaW5jbHVzaXZlID0gZmFsc2U7CiAgICAgIH0KICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciBpbmRleCA9IDA7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciByZXN1bHQgPSBwcmVkaWNhdGUodmFsdWUsIGluZGV4KyspOwogICAgICAgICAgKHJlc3VsdCB8fCBpbmNsdXNpdmUpICYmIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAhcmVzdWx0ICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGFrZVdoaWxlID0gdGFrZVdoaWxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFwLmpzCnZhciByZXF1aXJlX3RhcCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGFwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50YXAgPSB2b2lkIDA7CiAgICB2YXIgaXNGdW5jdGlvbl8xID0gcmVxdWlyZV9pc0Z1bmN0aW9uKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICBmdW5jdGlvbiB0YXAob2JzZXJ2ZXJPck5leHQsIGVycm9yLCBjb21wbGV0ZSkgewogICAgICB2YXIgdGFwT2JzZXJ2ZXIgPSBpc0Z1bmN0aW9uXzEuaXNGdW5jdGlvbihvYnNlcnZlck9yTmV4dCkgfHwgZXJyb3IgfHwgY29tcGxldGUgPyB7IG5leHQ6IG9ic2VydmVyT3JOZXh0LCBlcnJvciwgY29tcGxldGUgfSA6IG9ic2VydmVyT3JOZXh0OwogICAgICByZXR1cm4gdGFwT2JzZXJ2ZXIgPyBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgX2E7CiAgICAgICAgKF9hID0gdGFwT2JzZXJ2ZXIuc3Vic2NyaWJlKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY2FsbCh0YXBPYnNlcnZlcik7CiAgICAgICAgdmFyIGlzVW5zdWIgPSB0cnVlOwogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICB2YXIgX2EyOwogICAgICAgICAgKF9hMiA9IHRhcE9ic2VydmVyLm5leHQpID09PSBudWxsIHx8IF9hMiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EyLmNhbGwodGFwT2JzZXJ2ZXIsIHZhbHVlKTsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgX2EyOwogICAgICAgICAgaXNVbnN1YiA9IGZhbHNlOwogICAgICAgICAgKF9hMiA9IHRhcE9ic2VydmVyLmNvbXBsZXRlKSA9PT0gbnVsbCB8fCBfYTIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hMi5jYWxsKHRhcE9ic2VydmVyKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHZhciBfYTI7CiAgICAgICAgICBpc1Vuc3ViID0gZmFsc2U7CiAgICAgICAgICAoX2EyID0gdGFwT2JzZXJ2ZXIuZXJyb3IpID09PSBudWxsIHx8IF9hMiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EyLmNhbGwodGFwT2JzZXJ2ZXIsIGVycik7CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICB2YXIgX2EyLCBfYjsKICAgICAgICAgIGlmIChpc1Vuc3ViKSB7CiAgICAgICAgICAgIChfYTIgPSB0YXBPYnNlcnZlci51bnN1YnNjcmliZSkgPT09IG51bGwgfHwgX2EyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYTIuY2FsbCh0YXBPYnNlcnZlcik7CiAgICAgICAgICB9CiAgICAgICAgICAoX2IgPSB0YXBPYnNlcnZlci5maW5hbGl6ZSkgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLmNhbGwodGFwT2JzZXJ2ZXIpOwogICAgICAgIH0pKTsKICAgICAgfSkgOiBpZGVudGl0eV8xLmlkZW50aXR5OwogICAgfQogICAgZXhwb3J0czIudGFwID0gdGFwOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGhyb3R0bGUuanMKdmFyIHJlcXVpcmVfdGhyb3R0bGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3Rocm90dGxlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50aHJvdHRsZSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gdGhyb3R0bGUoZHVyYXRpb25TZWxlY3RvciwgY29uZmlnKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgX2EgPSBjb25maWcgIT09IG51bGwgJiYgY29uZmlnICE9PSB2b2lkIDAgPyBjb25maWcgOiB7fSwgX2IgPSBfYS5sZWFkaW5nLCBsZWFkaW5nID0gX2IgPT09IHZvaWQgMCA/IHRydWUgOiBfYiwgX2MgPSBfYS50cmFpbGluZywgdHJhaWxpbmcgPSBfYyA9PT0gdm9pZCAwID8gZmFsc2UgOiBfYzsKICAgICAgICB2YXIgaGFzVmFsdWUgPSBmYWxzZTsKICAgICAgICB2YXIgc2VuZFZhbHVlID0gbnVsbDsKICAgICAgICB2YXIgdGhyb3R0bGVkID0gbnVsbDsKICAgICAgICB2YXIgaXNDb21wbGV0ZSA9IGZhbHNlOwogICAgICAgIHZhciBlbmRUaHJvdHRsaW5nID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICB0aHJvdHRsZWQgPT09IG51bGwgfHwgdGhyb3R0bGVkID09PSB2b2lkIDAgPyB2b2lkIDAgOiB0aHJvdHRsZWQudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHRocm90dGxlZCA9IG51bGw7CiAgICAgICAgICBpZiAodHJhaWxpbmcpIHsKICAgICAgICAgICAgc2VuZCgpOwogICAgICAgICAgICBpc0NvbXBsZXRlICYmIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIHZhciBjbGVhbnVwVGhyb3R0bGluZyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgdGhyb3R0bGVkID0gbnVsbDsKICAgICAgICAgIGlzQ29tcGxldGUgJiYgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH07CiAgICAgICAgdmFyIHN0YXJ0VGhyb3R0bGUgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuIHRocm90dGxlZCA9IGlubmVyRnJvbV8xLmlubmVyRnJvbShkdXJhdGlvblNlbGVjdG9yKHZhbHVlKSkuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBlbmRUaHJvdHRsaW5nLCBjbGVhbnVwVGhyb3R0bGluZykpOwogICAgICAgIH07CiAgICAgICAgdmFyIHNlbmQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChoYXNWYWx1ZSkgewogICAgICAgICAgICBoYXNWYWx1ZSA9IGZhbHNlOwogICAgICAgICAgICB2YXIgdmFsdWUgPSBzZW5kVmFsdWU7CiAgICAgICAgICAgIHNlbmRWYWx1ZSA9IG51bGw7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh2YWx1ZSk7CiAgICAgICAgICAgICFpc0NvbXBsZXRlICYmIHN0YXJ0VGhyb3R0bGUodmFsdWUpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICAgICAgIHNlbmRWYWx1ZSA9IHZhbHVlOwogICAgICAgICAgISh0aHJvdHRsZWQgJiYgIXRocm90dGxlZC5jbG9zZWQpICYmIChsZWFkaW5nID8gc2VuZCgpIDogc3RhcnRUaHJvdHRsZSh2YWx1ZSkpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgaXNDb21wbGV0ZSA9IHRydWU7CiAgICAgICAgICAhKHRyYWlsaW5nICYmIGhhc1ZhbHVlICYmIHRocm90dGxlZCAmJiAhdGhyb3R0bGVkLmNsb3NlZCkgJiYgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50aHJvdHRsZSA9IHRocm90dGxlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGhyb3R0bGVUaW1lLmpzCnZhciByZXF1aXJlX3Rocm90dGxlVGltZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGhyb3R0bGVUaW1lLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50aHJvdHRsZVRpbWUgPSB2b2lkIDA7CiAgICB2YXIgYXN5bmNfMSA9IHJlcXVpcmVfYXN5bmMoKTsKICAgIHZhciB0aHJvdHRsZV8xID0gcmVxdWlyZV90aHJvdHRsZSgpOwogICAgdmFyIHRpbWVyXzEgPSByZXF1aXJlX3RpbWVyKCk7CiAgICBmdW5jdGlvbiB0aHJvdHRsZVRpbWUoZHVyYXRpb24sIHNjaGVkdWxlciwgY29uZmlnKSB7CiAgICAgIGlmIChzY2hlZHVsZXIgPT09IHZvaWQgMCkgewogICAgICAgIHNjaGVkdWxlciA9IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIH0KICAgICAgdmFyIGR1cmF0aW9uJCA9IHRpbWVyXzEudGltZXIoZHVyYXRpb24sIHNjaGVkdWxlcik7CiAgICAgIHJldHVybiB0aHJvdHRsZV8xLnRocm90dGxlKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBkdXJhdGlvbiQ7CiAgICAgIH0sIGNvbmZpZyk7CiAgICB9CiAgICBleHBvcnRzMi50aHJvdHRsZVRpbWUgPSB0aHJvdHRsZVRpbWU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aW1lSW50ZXJ2YWwuanMKdmFyIHJlcXVpcmVfdGltZUludGVydmFsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aW1lSW50ZXJ2YWwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlRpbWVJbnRlcnZhbCA9IGV4cG9ydHMyLnRpbWVJbnRlcnZhbCA9IHZvaWQgMDsKICAgIHZhciBhc3luY18xID0gcmVxdWlyZV9hc3luYygpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIGZ1bmN0aW9uIHRpbWVJbnRlcnZhbChzY2hlZHVsZXIpIHsKICAgICAgaWYgKHNjaGVkdWxlciA9PT0gdm9pZCAwKSB7CiAgICAgICAgc2NoZWR1bGVyID0gYXN5bmNfMS5hc3luY1NjaGVkdWxlcjsKICAgICAgfQogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIGxhc3QgPSBzY2hlZHVsZXIubm93KCk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciBub3cgPSBzY2hlZHVsZXIubm93KCk7CiAgICAgICAgICB2YXIgaW50ZXJ2YWwgPSBub3cgLSBsYXN0OwogICAgICAgICAgbGFzdCA9IG5vdzsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dChuZXcgVGltZUludGVydmFsKHZhbHVlLCBpbnRlcnZhbCkpOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50aW1lSW50ZXJ2YWwgPSB0aW1lSW50ZXJ2YWw7CiAgICB2YXIgVGltZUludGVydmFsID0gLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICBmdW5jdGlvbiBUaW1lSW50ZXJ2YWwyKHZhbHVlLCBpbnRlcnZhbCkgewogICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTsKICAgICAgICB0aGlzLmludGVydmFsID0gaW50ZXJ2YWw7CiAgICAgIH0KICAgICAgcmV0dXJuIFRpbWVJbnRlcnZhbDI7CiAgICB9KCk7CiAgICBleHBvcnRzMi5UaW1lSW50ZXJ2YWwgPSBUaW1lSW50ZXJ2YWw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy90aW1lb3V0V2l0aC5qcwp2YXIgcmVxdWlyZV90aW1lb3V0V2l0aCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvdGltZW91dFdpdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRpbWVvdXRXaXRoID0gdm9pZCAwOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgaXNEYXRlXzEgPSByZXF1aXJlX2lzRGF0ZSgpOwogICAgdmFyIHRpbWVvdXRfMSA9IHJlcXVpcmVfdGltZW91dCgpOwogICAgZnVuY3Rpb24gdGltZW91dFdpdGgoZHVlLCB3aXRoT2JzZXJ2YWJsZSwgc2NoZWR1bGVyKSB7CiAgICAgIHZhciBmaXJzdDsKICAgICAgdmFyIGVhY2g7CiAgICAgIHZhciBfd2l0aDsKICAgICAgc2NoZWR1bGVyID0gc2NoZWR1bGVyICE9PSBudWxsICYmIHNjaGVkdWxlciAhPT0gdm9pZCAwID8gc2NoZWR1bGVyIDogYXN5bmNfMS5hc3luYzsKICAgICAgaWYgKGlzRGF0ZV8xLmlzVmFsaWREYXRlKGR1ZSkpIHsKICAgICAgICBmaXJzdCA9IGR1ZTsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZHVlID09PSAibnVtYmVyIikgewogICAgICAgIGVhY2ggPSBkdWU7CiAgICAgIH0KICAgICAgaWYgKHdpdGhPYnNlcnZhYmxlKSB7CiAgICAgICAgX3dpdGggPSBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiB3aXRoT2JzZXJ2YWJsZTsKICAgICAgICB9OwogICAgICB9IGVsc2UgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIk5vIG9ic2VydmFibGUgcHJvdmlkZWQgdG8gc3dpdGNoIHRvIik7CiAgICAgIH0KICAgICAgaWYgKGZpcnN0ID09IG51bGwgJiYgZWFjaCA9PSBudWxsKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiTm8gdGltZW91dCBwcm92aWRlZC4iKTsKICAgICAgfQogICAgICByZXR1cm4gdGltZW91dF8xLnRpbWVvdXQoewogICAgICAgIGZpcnN0LAogICAgICAgIGVhY2gsCiAgICAgICAgc2NoZWR1bGVyLAogICAgICAgIHdpdGg6IF93aXRoCiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIudGltZW91dFdpdGggPSB0aW1lb3V0V2l0aDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3RpbWVzdGFtcC5qcwp2YXIgcmVxdWlyZV90aW1lc3RhbXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3RpbWVzdGFtcC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIudGltZXN0YW1wID0gdm9pZCAwOwogICAgdmFyIGRhdGVUaW1lc3RhbXBQcm92aWRlcl8xID0gcmVxdWlyZV9kYXRlVGltZXN0YW1wUHJvdmlkZXIoKTsKICAgIHZhciBtYXBfMSA9IHJlcXVpcmVfbWFwKCk7CiAgICBmdW5jdGlvbiB0aW1lc3RhbXAodGltZXN0YW1wUHJvdmlkZXIpIHsKICAgICAgaWYgKHRpbWVzdGFtcFByb3ZpZGVyID09PSB2b2lkIDApIHsKICAgICAgICB0aW1lc3RhbXBQcm92aWRlciA9IGRhdGVUaW1lc3RhbXBQcm92aWRlcl8xLmRhdGVUaW1lc3RhbXBQcm92aWRlcjsKICAgICAgfQogICAgICByZXR1cm4gbWFwXzEubWFwKGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgcmV0dXJuIHsgdmFsdWUsIHRpbWVzdGFtcDogdGltZXN0YW1wUHJvdmlkZXIubm93KCkgfTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi50aW1lc3RhbXAgPSB0aW1lc3RhbXA7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy93aW5kb3cuanMKdmFyIHJlcXVpcmVfd2luZG93ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy93aW5kb3cuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndpbmRvdyA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgZnVuY3Rpb24gd2luZG93Mih3aW5kb3dCb3VuZGFyaWVzKSB7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgd2luZG93U3ViamVjdCA9IG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICAgIHN1YnNjcmliZXIubmV4dCh3aW5kb3dTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpKTsKICAgICAgICB2YXIgZXJyb3JIYW5kbGVyID0gZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICB3aW5kb3dTdWJqZWN0LmVycm9yKGVycik7CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgfTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgcmV0dXJuIHdpbmRvd1N1YmplY3QgPT09IG51bGwgfHwgd2luZG93U3ViamVjdCA9PT0gdm9pZCAwID8gdm9pZCAwIDogd2luZG93U3ViamVjdC5uZXh0KHZhbHVlKTsKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHdpbmRvd1N1YmplY3QuY29tcGxldGUoKTsKICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTsKICAgICAgICB9LCBlcnJvckhhbmRsZXIpKTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20od2luZG93Qm91bmRhcmllcykuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbigpIHsKICAgICAgICAgIHdpbmRvd1N1YmplY3QuY29tcGxldGUoKTsKICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh3aW5kb3dTdWJqZWN0ID0gbmV3IFN1YmplY3RfMS5TdWJqZWN0KCkpOwogICAgICAgIH0sIG5vb3BfMS5ub29wLCBlcnJvckhhbmRsZXIpKTsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICB3aW5kb3dTdWJqZWN0ID09PSBudWxsIHx8IHdpbmRvd1N1YmplY3QgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHdpbmRvd1N1YmplY3QudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIHdpbmRvd1N1YmplY3QgPSBudWxsOwogICAgICAgIH07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIud2luZG93ID0gd2luZG93MjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpbmRvd0NvdW50LmpzCnZhciByZXF1aXJlX3dpbmRvd0NvdW50ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy93aW5kb3dDb3VudC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3ZhbHVlcyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fdmFsdWVzIHx8IGZ1bmN0aW9uKG8pIHsKICAgICAgdmFyIHMgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7CiAgICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IocyA/ICJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLiIgOiAiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIud2luZG93Q291bnQgPSB2b2lkIDA7CiAgICB2YXIgU3ViamVjdF8xID0gcmVxdWlyZV9TdWJqZWN0KCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgT3BlcmF0b3JTdWJzY3JpYmVyXzEgPSByZXF1aXJlX09wZXJhdG9yU3Vic2NyaWJlcigpOwogICAgZnVuY3Rpb24gd2luZG93Q291bnQod2luZG93U2l6ZSwgc3RhcnRXaW5kb3dFdmVyeSkgewogICAgICBpZiAoc3RhcnRXaW5kb3dFdmVyeSA9PT0gdm9pZCAwKSB7CiAgICAgICAgc3RhcnRXaW5kb3dFdmVyeSA9IDA7CiAgICAgIH0KICAgICAgdmFyIHN0YXJ0RXZlcnkgPSBzdGFydFdpbmRvd0V2ZXJ5ID4gMCA/IHN0YXJ0V2luZG93RXZlcnkgOiB3aW5kb3dTaXplOwogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHdpbmRvd3MgPSBbbmV3IFN1YmplY3RfMS5TdWJqZWN0KCldOwogICAgICAgIHZhciBzdGFydHMgPSBbXTsKICAgICAgICB2YXIgY291bnQgPSAwOwogICAgICAgIHN1YnNjcmliZXIubmV4dCh3aW5kb3dzWzBdLmFzT2JzZXJ2YWJsZSgpKTsKICAgICAgICBzb3VyY2Uuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgdmFyIGVfMSwgX2E7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICBmb3IgKHZhciB3aW5kb3dzXzEgPSBfX3ZhbHVlcyh3aW5kb3dzKSwgd2luZG93c18xXzEgPSB3aW5kb3dzXzEubmV4dCgpOyAhd2luZG93c18xXzEuZG9uZTsgd2luZG93c18xXzEgPSB3aW5kb3dzXzEubmV4dCgpKSB7CiAgICAgICAgICAgICAgdmFyIHdpbmRvd18xID0gd2luZG93c18xXzEudmFsdWU7CiAgICAgICAgICAgICAgd2luZG93XzEubmV4dCh2YWx1ZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gY2F0Y2ggKGVfMV8xKSB7CiAgICAgICAgICAgIGVfMSA9IHsgZXJyb3I6IGVfMV8xIH07CiAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgIGlmICh3aW5kb3dzXzFfMSAmJiAhd2luZG93c18xXzEuZG9uZSAmJiAoX2EgPSB3aW5kb3dzXzEucmV0dXJuKSkgX2EuY2FsbCh3aW5kb3dzXzEpOwogICAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICAgIGlmIChlXzEpIHRocm93IGVfMS5lcnJvcjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgdmFyIGMgPSBjb3VudCAtIHdpbmRvd1NpemUgKyAxOwogICAgICAgICAgaWYgKGMgPj0gMCAmJiBjICUgc3RhcnRFdmVyeSA9PT0gMCkgewogICAgICAgICAgICB3aW5kb3dzLnNoaWZ0KCkuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICgrK2NvdW50ICUgc3RhcnRFdmVyeSA9PT0gMCkgewogICAgICAgICAgICB2YXIgd2luZG93XzIgPSBuZXcgU3ViamVjdF8xLlN1YmplY3QoKTsKICAgICAgICAgICAgd2luZG93cy5wdXNoKHdpbmRvd18yKTsKICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHdpbmRvd18yLmFzT2JzZXJ2YWJsZSgpKTsKICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHdoaWxlICh3aW5kb3dzLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgd2luZG93cy5zaGlmdCgpLmNvbXBsZXRlKCk7CiAgICAgICAgICB9CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICB3aGlsZSAod2luZG93cy5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgIHdpbmRvd3Muc2hpZnQoKS5lcnJvcihlcnIpOwogICAgICAgICAgfQogICAgICAgICAgc3Vic2NyaWJlci5lcnJvcihlcnIpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgc3RhcnRzID0gbnVsbDsKICAgICAgICAgIHdpbmRvd3MgPSBudWxsOwogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi53aW5kb3dDb3VudCA9IHdpbmRvd0NvdW50OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvd2luZG93VGltZS5qcwp2YXIgcmVxdWlyZV93aW5kb3dUaW1lID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy93aW5kb3dUaW1lLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi53aW5kb3dUaW1lID0gdm9pZCAwOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICB2YXIgU3Vic2NyaXB0aW9uXzEgPSByZXF1aXJlX1N1YnNjcmlwdGlvbigpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBhcnJSZW1vdmVfMSA9IHJlcXVpcmVfYXJyUmVtb3ZlKCk7CiAgICB2YXIgYXJnc18xID0gcmVxdWlyZV9hcmdzKCk7CiAgICB2YXIgZXhlY3V0ZVNjaGVkdWxlXzEgPSByZXF1aXJlX2V4ZWN1dGVTY2hlZHVsZSgpOwogICAgZnVuY3Rpb24gd2luZG93VGltZSh3aW5kb3dUaW1lU3BhbikgewogICAgICB2YXIgX2EsIF9iOwogICAgICB2YXIgb3RoZXJBcmdzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMTsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgb3RoZXJBcmdzW19pIC0gMV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHZhciBzY2hlZHVsZXIgPSAoX2EgPSBhcmdzXzEucG9wU2NoZWR1bGVyKG90aGVyQXJncykpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IGFzeW5jXzEuYXN5bmNTY2hlZHVsZXI7CiAgICAgIHZhciB3aW5kb3dDcmVhdGlvbkludGVydmFsID0gKF9iID0gb3RoZXJBcmdzWzBdKSAhPT0gbnVsbCAmJiBfYiAhPT0gdm9pZCAwID8gX2IgOiBudWxsOwogICAgICB2YXIgbWF4V2luZG93U2l6ZSA9IG90aGVyQXJnc1sxXSB8fCBJbmZpbml0eTsKICAgICAgcmV0dXJuIGxpZnRfMS5vcGVyYXRlKGZ1bmN0aW9uKHNvdXJjZSwgc3Vic2NyaWJlcikgewogICAgICAgIHZhciB3aW5kb3dSZWNvcmRzID0gW107CiAgICAgICAgdmFyIHJlc3RhcnRPbkNsb3NlID0gZmFsc2U7CiAgICAgICAgdmFyIGNsb3NlV2luZG93ID0gZnVuY3Rpb24ocmVjb3JkKSB7CiAgICAgICAgICB2YXIgd2luZG93MiA9IHJlY29yZC53aW5kb3csIHN1YnMgPSByZWNvcmQuc3ViczsKICAgICAgICAgIHdpbmRvdzIuY29tcGxldGUoKTsKICAgICAgICAgIHN1YnMudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIGFyclJlbW92ZV8xLmFyclJlbW92ZSh3aW5kb3dSZWNvcmRzLCByZWNvcmQpOwogICAgICAgICAgcmVzdGFydE9uQ2xvc2UgJiYgc3RhcnRXaW5kb3coKTsKICAgICAgICB9OwogICAgICAgIHZhciBzdGFydFdpbmRvdyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgaWYgKHdpbmRvd1JlY29yZHMpIHsKICAgICAgICAgICAgdmFyIHN1YnMgPSBuZXcgU3Vic2NyaXB0aW9uXzEuU3Vic2NyaXB0aW9uKCk7CiAgICAgICAgICAgIHN1YnNjcmliZXIuYWRkKHN1YnMpOwogICAgICAgICAgICB2YXIgd2luZG93XzEgPSBuZXcgU3ViamVjdF8xLlN1YmplY3QoKTsKICAgICAgICAgICAgdmFyIHJlY29yZF8xID0gewogICAgICAgICAgICAgIHdpbmRvdzogd2luZG93XzEsCiAgICAgICAgICAgICAgc3VicywKICAgICAgICAgICAgICBzZWVuOiAwCiAgICAgICAgICAgIH07CiAgICAgICAgICAgIHdpbmRvd1JlY29yZHMucHVzaChyZWNvcmRfMSk7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh3aW5kb3dfMS5hc09ic2VydmFibGUoKSk7CiAgICAgICAgICAgIGV4ZWN1dGVTY2hlZHVsZV8xLmV4ZWN1dGVTY2hlZHVsZShzdWJzLCBzY2hlZHVsZXIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIHJldHVybiBjbG9zZVdpbmRvdyhyZWNvcmRfMSk7CiAgICAgICAgICAgIH0sIHdpbmRvd1RpbWVTcGFuKTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIGlmICh3aW5kb3dDcmVhdGlvbkludGVydmFsICE9PSBudWxsICYmIHdpbmRvd0NyZWF0aW9uSW50ZXJ2YWwgPj0gMCkgewogICAgICAgICAgZXhlY3V0ZVNjaGVkdWxlXzEuZXhlY3V0ZVNjaGVkdWxlKHN1YnNjcmliZXIsIHNjaGVkdWxlciwgc3RhcnRXaW5kb3csIHdpbmRvd0NyZWF0aW9uSW50ZXJ2YWwsIHRydWUpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXN0YXJ0T25DbG9zZSA9IHRydWU7CiAgICAgICAgfQogICAgICAgIHN0YXJ0V2luZG93KCk7CiAgICAgICAgdmFyIGxvb3AgPSBmdW5jdGlvbihjYikgewogICAgICAgICAgcmV0dXJuIHdpbmRvd1JlY29yZHMuc2xpY2UoKS5mb3JFYWNoKGNiKTsKICAgICAgICB9OwogICAgICAgIHZhciB0ZXJtaW5hdGUgPSBmdW5jdGlvbihjYikgewogICAgICAgICAgbG9vcChmdW5jdGlvbihfYTIpIHsKICAgICAgICAgICAgdmFyIHdpbmRvdzIgPSBfYTIud2luZG93OwogICAgICAgICAgICByZXR1cm4gY2Iod2luZG93Mik7CiAgICAgICAgICB9KTsKICAgICAgICAgIGNiKHN1YnNjcmliZXIpOwogICAgICAgICAgc3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgIH07CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIGxvb3AoZnVuY3Rpb24ocmVjb3JkKSB7CiAgICAgICAgICAgIHJlY29yZC53aW5kb3cubmV4dCh2YWx1ZSk7CiAgICAgICAgICAgIG1heFdpbmRvd1NpemUgPD0gKytyZWNvcmQuc2VlbiAmJiBjbG9zZVdpbmRvdyhyZWNvcmQpOwogICAgICAgICAgfSk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gdGVybWluYXRlKGZ1bmN0aW9uKGNvbnN1bWVyKSB7CiAgICAgICAgICAgIHJldHVybiBjb25zdW1lci5jb21wbGV0ZSgpOwogICAgICAgICAgfSk7CiAgICAgICAgfSwgZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICByZXR1cm4gdGVybWluYXRlKGZ1bmN0aW9uKGNvbnN1bWVyKSB7CiAgICAgICAgICAgIHJldHVybiBjb25zdW1lci5lcnJvcihlcnIpOwogICAgICAgICAgfSk7CiAgICAgICAgfSkpOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgIHdpbmRvd1JlY29yZHMgPSBudWxsOwogICAgICAgIH07CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIud2luZG93VGltZSA9IHdpbmRvd1RpbWU7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy93aW5kb3dUb2dnbGUuanMKdmFyIHJlcXVpcmVfd2luZG93VG9nZ2xlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy93aW5kb3dUb2dnbGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX192YWx1ZXMgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3ZhbHVlcyB8fCBmdW5jdGlvbihvKSB7CiAgICAgIHZhciBzID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBTeW1ib2wuaXRlcmF0b3IsIG0gPSBzICYmIG9bc10sIGkgPSAwOwogICAgICBpZiAobSkgcmV0dXJuIG0uY2FsbChvKTsKICAgICAgaWYgKG8gJiYgdHlwZW9mIG8ubGVuZ3RoID09PSAibnVtYmVyIikgcmV0dXJuIHsKICAgICAgICBuZXh0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIGlmIChvICYmIGkgPj0gby5sZW5ndGgpIG8gPSB2b2lkIDA7CiAgICAgICAgICByZXR1cm4geyB2YWx1ZTogbyAmJiBvW2krK10sIGRvbmU6ICFvIH07CiAgICAgICAgfQogICAgICB9OwogICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKHMgPyAiT2JqZWN0IGlzIG5vdCBpdGVyYWJsZS4iIDogIlN5bWJvbC5pdGVyYXRvciBpcyBub3QgZGVmaW5lZC4iKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLndpbmRvd1RvZ2dsZSA9IHZvaWQgMDsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICB2YXIgbGlmdF8xID0gcmVxdWlyZV9saWZ0KCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIHZhciBhcnJSZW1vdmVfMSA9IHJlcXVpcmVfYXJyUmVtb3ZlKCk7CiAgICBmdW5jdGlvbiB3aW5kb3dUb2dnbGUob3BlbmluZ3MsIGNsb3NpbmdTZWxlY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHdpbmRvd3MgPSBbXTsKICAgICAgICB2YXIgaGFuZGxlRXJyb3IgPSBmdW5jdGlvbihlcnIpIHsKICAgICAgICAgIHdoaWxlICgwIDwgd2luZG93cy5sZW5ndGgpIHsKICAgICAgICAgICAgd2luZG93cy5zaGlmdCgpLmVycm9yKGVycik7CiAgICAgICAgICB9CiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycik7CiAgICAgICAgfTsKICAgICAgICBpbm5lckZyb21fMS5pbm5lckZyb20ob3BlbmluZ3MpLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24ob3BlblZhbHVlKSB7CiAgICAgICAgICB2YXIgd2luZG93MiA9IG5ldyBTdWJqZWN0XzEuU3ViamVjdCgpOwogICAgICAgICAgd2luZG93cy5wdXNoKHdpbmRvdzIpOwogICAgICAgICAgdmFyIGNsb3NpbmdTdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uXzEuU3Vic2NyaXB0aW9uKCk7CiAgICAgICAgICB2YXIgY2xvc2VXaW5kb3cgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgYXJyUmVtb3ZlXzEuYXJyUmVtb3ZlKHdpbmRvd3MsIHdpbmRvdzIpOwogICAgICAgICAgICB3aW5kb3cyLmNvbXBsZXRlKCk7CiAgICAgICAgICAgIGNsb3NpbmdTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH07CiAgICAgICAgICB2YXIgY2xvc2luZ05vdGlmaWVyOwogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgY2xvc2luZ05vdGlmaWVyID0gaW5uZXJGcm9tXzEuaW5uZXJGcm9tKGNsb3NpbmdTZWxlY3RvcihvcGVuVmFsdWUpKTsKICAgICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgICBoYW5kbGVFcnJvcihlcnIpOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICB9CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQod2luZG93Mi5hc09ic2VydmFibGUoKSk7CiAgICAgICAgICBjbG9zaW5nU3Vic2NyaXB0aW9uLmFkZChjbG9zaW5nTm90aWZpZXIuc3Vic2NyaWJlKE9wZXJhdG9yU3Vic2NyaWJlcl8xLmNyZWF0ZU9wZXJhdG9yU3Vic2NyaWJlcihzdWJzY3JpYmVyLCBjbG9zZVdpbmRvdywgbm9vcF8xLm5vb3AsIGhhbmRsZUVycm9yKSkpOwogICAgICAgIH0sIG5vb3BfMS5ub29wKSk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHZhciBlXzEsIF9hOwogICAgICAgICAgdmFyIHdpbmRvd3NDb3B5ID0gd2luZG93cy5zbGljZSgpOwogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgZm9yICh2YXIgd2luZG93c0NvcHlfMSA9IF9fdmFsdWVzKHdpbmRvd3NDb3B5KSwgd2luZG93c0NvcHlfMV8xID0gd2luZG93c0NvcHlfMS5uZXh0KCk7ICF3aW5kb3dzQ29weV8xXzEuZG9uZTsgd2luZG93c0NvcHlfMV8xID0gd2luZG93c0NvcHlfMS5uZXh0KCkpIHsKICAgICAgICAgICAgICB2YXIgd2luZG93XzEgPSB3aW5kb3dzQ29weV8xXzEudmFsdWU7CiAgICAgICAgICAgICAgd2luZG93XzEubmV4dCh2YWx1ZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gY2F0Y2ggKGVfMV8xKSB7CiAgICAgICAgICAgIGVfMSA9IHsgZXJyb3I6IGVfMV8xIH07CiAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgIGlmICh3aW5kb3dzQ29weV8xXzEgJiYgIXdpbmRvd3NDb3B5XzFfMS5kb25lICYmIChfYSA9IHdpbmRvd3NDb3B5XzEucmV0dXJuKSkgX2EuY2FsbCh3aW5kb3dzQ29weV8xKTsKICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICBpZiAoZV8xKSB0aHJvdyBlXzEuZXJyb3I7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgIHdoaWxlICgwIDwgd2luZG93cy5sZW5ndGgpIHsKICAgICAgICAgICAgd2luZG93cy5zaGlmdCgpLmNvbXBsZXRlKCk7CiAgICAgICAgICB9CiAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgICAgfSwgaGFuZGxlRXJyb3IsIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2hpbGUgKDAgPCB3aW5kb3dzLmxlbmd0aCkgewogICAgICAgICAgICB3aW5kb3dzLnNoaWZ0KCkudW5zdWJzY3JpYmUoKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH0pOwogICAgfQogICAgZXhwb3J0czIud2luZG93VG9nZ2xlID0gd2luZG93VG9nZ2xlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvd2luZG93V2hlbi5qcwp2YXIgcmVxdWlyZV93aW5kb3dXaGVuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy93aW5kb3dXaGVuLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi53aW5kb3dXaGVuID0gdm9pZCAwOwogICAgdmFyIFN1YmplY3RfMSA9IHJlcXVpcmVfU3ViamVjdCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgdmFyIE9wZXJhdG9yU3Vic2NyaWJlcl8xID0gcmVxdWlyZV9PcGVyYXRvclN1YnNjcmliZXIoKTsKICAgIHZhciBpbm5lckZyb21fMSA9IHJlcXVpcmVfaW5uZXJGcm9tKCk7CiAgICBmdW5jdGlvbiB3aW5kb3dXaGVuKGNsb3NpbmdTZWxlY3RvcikgewogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgdmFyIHdpbmRvdzI7CiAgICAgICAgdmFyIGNsb3NpbmdTdWJzY3JpYmVyOwogICAgICAgIHZhciBoYW5kbGVFcnJvciA9IGZ1bmN0aW9uKGVycikgewogICAgICAgICAgd2luZG93Mi5lcnJvcihlcnIpOwogICAgICAgICAgc3Vic2NyaWJlci5lcnJvcihlcnIpOwogICAgICAgIH07CiAgICAgICAgdmFyIG9wZW5XaW5kb3cgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGNsb3NpbmdTdWJzY3JpYmVyID09PSBudWxsIHx8IGNsb3NpbmdTdWJzY3JpYmVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBjbG9zaW5nU3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgd2luZG93MiA9PT0gbnVsbCB8fCB3aW5kb3cyID09PSB2b2lkIDAgPyB2b2lkIDAgOiB3aW5kb3cyLmNvbXBsZXRlKCk7CiAgICAgICAgICB3aW5kb3cyID0gbmV3IFN1YmplY3RfMS5TdWJqZWN0KCk7CiAgICAgICAgICBzdWJzY3JpYmVyLm5leHQod2luZG93Mi5hc09ic2VydmFibGUoKSk7CiAgICAgICAgICB2YXIgY2xvc2luZ05vdGlmaWVyOwogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgY2xvc2luZ05vdGlmaWVyID0gaW5uZXJGcm9tXzEuaW5uZXJGcm9tKGNsb3NpbmdTZWxlY3RvcigpKTsKICAgICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgICBoYW5kbGVFcnJvcihlcnIpOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICB9CiAgICAgICAgICBjbG9zaW5nTm90aWZpZXIuc3Vic2NyaWJlKGNsb3NpbmdTdWJzY3JpYmVyID0gT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIG9wZW5XaW5kb3csIG9wZW5XaW5kb3csIGhhbmRsZUVycm9yKSk7CiAgICAgICAgfTsKICAgICAgICBvcGVuV2luZG93KCk7CiAgICAgICAgc291cmNlLnN1YnNjcmliZShPcGVyYXRvclN1YnNjcmliZXJfMS5jcmVhdGVPcGVyYXRvclN1YnNjcmliZXIoc3Vic2NyaWJlciwgZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgIHJldHVybiB3aW5kb3cyLm5leHQodmFsdWUpOwogICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgd2luZG93Mi5jb21wbGV0ZSgpOwogICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpOwogICAgICAgIH0sIGhhbmRsZUVycm9yLCBmdW5jdGlvbigpIHsKICAgICAgICAgIGNsb3NpbmdTdWJzY3JpYmVyID09PSBudWxsIHx8IGNsb3NpbmdTdWJzY3JpYmVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBjbG9zaW5nU3Vic2NyaWJlci51bnN1YnNjcmliZSgpOwogICAgICAgICAgd2luZG93MiA9IG51bGw7CiAgICAgICAgfSkpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLndpbmRvd1doZW4gPSB3aW5kb3dXaGVuOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvd2l0aExhdGVzdEZyb20uanMKdmFyIHJlcXVpcmVfd2l0aExhdGVzdEZyb20gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3dpdGhMYXRlc3RGcm9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi53aXRoTGF0ZXN0RnJvbSA9IHZvaWQgMDsKICAgIHZhciBsaWZ0XzEgPSByZXF1aXJlX2xpZnQoKTsKICAgIHZhciBPcGVyYXRvclN1YnNjcmliZXJfMSA9IHJlcXVpcmVfT3BlcmF0b3JTdWJzY3JpYmVyKCk7CiAgICB2YXIgaW5uZXJGcm9tXzEgPSByZXF1aXJlX2lubmVyRnJvbSgpOwogICAgdmFyIGlkZW50aXR5XzEgPSByZXF1aXJlX2lkZW50aXR5KCk7CiAgICB2YXIgbm9vcF8xID0gcmVxdWlyZV9ub29wKCk7CiAgICB2YXIgYXJnc18xID0gcmVxdWlyZV9hcmdzKCk7CiAgICBmdW5jdGlvbiB3aXRoTGF0ZXN0RnJvbSgpIHsKICAgICAgdmFyIGlucHV0cyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIGlucHV0c1tfaV0gPSBhcmd1bWVudHNbX2ldOwogICAgICB9CiAgICAgIHZhciBwcm9qZWN0ID0gYXJnc18xLnBvcFJlc3VsdFNlbGVjdG9yKGlucHV0cyk7CiAgICAgIHJldHVybiBsaWZ0XzEub3BlcmF0ZShmdW5jdGlvbihzb3VyY2UsIHN1YnNjcmliZXIpIHsKICAgICAgICB2YXIgbGVuID0gaW5wdXRzLmxlbmd0aDsKICAgICAgICB2YXIgb3RoZXJWYWx1ZXMgPSBuZXcgQXJyYXkobGVuKTsKICAgICAgICB2YXIgaGFzVmFsdWUgPSBpbnB1dHMubWFwKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0pOwogICAgICAgIHZhciByZWFkeSA9IGZhbHNlOwogICAgICAgIHZhciBfbG9vcF8xID0gZnVuY3Rpb24oaTIpIHsKICAgICAgICAgIGlubmVyRnJvbV8xLmlubmVyRnJvbShpbnB1dHNbaTJdKS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIG90aGVyVmFsdWVzW2kyXSA9IHZhbHVlOwogICAgICAgICAgICBpZiAoIXJlYWR5ICYmICFoYXNWYWx1ZVtpMl0pIHsKICAgICAgICAgICAgICBoYXNWYWx1ZVtpMl0gPSB0cnVlOwogICAgICAgICAgICAgIChyZWFkeSA9IGhhc1ZhbHVlLmV2ZXJ5KGlkZW50aXR5XzEuaWRlbnRpdHkpKSAmJiAoaGFzVmFsdWUgPSBudWxsKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSwgbm9vcF8xLm5vb3ApKTsKICAgICAgICB9OwogICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbGVuOyBpKyspIHsKICAgICAgICAgIF9sb29wXzEoaSk7CiAgICAgICAgfQogICAgICAgIHNvdXJjZS5zdWJzY3JpYmUoT3BlcmF0b3JTdWJzY3JpYmVyXzEuY3JlYXRlT3BlcmF0b3JTdWJzY3JpYmVyKHN1YnNjcmliZXIsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICBpZiAocmVhZHkpIHsKICAgICAgICAgICAgdmFyIHZhbHVlcyA9IF9fc3ByZWFkQXJyYXkoW3ZhbHVlXSwgX19yZWFkKG90aGVyVmFsdWVzKSk7CiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChwcm9qZWN0ID8gcHJvamVjdC5hcHBseSh2b2lkIDAsIF9fc3ByZWFkQXJyYXkoW10sIF9fcmVhZCh2YWx1ZXMpKSkgOiB2YWx1ZXMpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfSk7CiAgICB9CiAgICBleHBvcnRzMi53aXRoTGF0ZXN0RnJvbSA9IHdpdGhMYXRlc3RGcm9tOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvemlwQWxsLmpzCnZhciByZXF1aXJlX3ppcEFsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvemlwQWxsLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi56aXBBbGwgPSB2b2lkIDA7CiAgICB2YXIgemlwXzEgPSByZXF1aXJlX3ppcCgpOwogICAgdmFyIGpvaW5BbGxJbnRlcm5hbHNfMSA9IHJlcXVpcmVfam9pbkFsbEludGVybmFscygpOwogICAgZnVuY3Rpb24gemlwQWxsKHByb2plY3QpIHsKICAgICAgcmV0dXJuIGpvaW5BbGxJbnRlcm5hbHNfMS5qb2luQWxsSW50ZXJuYWxzKHppcF8xLnppcCwgcHJvamVjdCk7CiAgICB9CiAgICBleHBvcnRzMi56aXBBbGwgPSB6aXBBbGw7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2ludGVybmFsL29wZXJhdG9ycy96aXAuanMKdmFyIHJlcXVpcmVfemlwMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvemlwLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fcmVhZCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fcmVhZCB8fCBmdW5jdGlvbihvLCBuKSB7CiAgICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07CiAgICAgIGlmICghbSkgcmV0dXJuIG87CiAgICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlOwogICAgICB0cnkgewogICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGUgPSB7IGVycm9yIH07CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpWyJyZXR1cm4iXSkpIG0uY2FsbChpKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgaWYgKGUpIHRocm93IGUuZXJyb3I7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBhcjsKICAgIH07CiAgICB2YXIgX19zcHJlYWRBcnJheSA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc3ByZWFkQXJyYXkgfHwgZnVuY3Rpb24odG8sIGZyb20pIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIGlsID0gZnJvbS5sZW5ndGgsIGogPSB0by5sZW5ndGg7IGkgPCBpbDsgaSsrLCBqKyspCiAgICAgICAgdG9bal0gPSBmcm9tW2ldOwogICAgICByZXR1cm4gdG87CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi56aXAgPSB2b2lkIDA7CiAgICB2YXIgemlwXzEgPSByZXF1aXJlX3ppcCgpOwogICAgdmFyIGxpZnRfMSA9IHJlcXVpcmVfbGlmdCgpOwogICAgZnVuY3Rpb24gemlwKCkgewogICAgICB2YXIgc291cmNlcyA9IFtdOwogICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykgewogICAgICAgIHNvdXJjZXNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICByZXR1cm4gbGlmdF8xLm9wZXJhdGUoZnVuY3Rpb24oc291cmNlLCBzdWJzY3JpYmVyKSB7CiAgICAgICAgemlwXzEuemlwLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbc291cmNlXSwgX19yZWFkKHNvdXJjZXMpKSkuc3Vic2NyaWJlKHN1YnNjcmliZXIpOwogICAgICB9KTsKICAgIH0KICAgIGV4cG9ydHMyLnppcCA9IHppcDsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcnhqcy1ucG0tNy44LjEtNDFjNDQzYTc1Yi0xMC56aXAvbm9kZV9tb2R1bGVzL3J4anMvZGlzdC9janMvaW50ZXJuYWwvb3BlcmF0b3JzL3ppcFdpdGguanMKdmFyIHJlcXVpcmVfemlwV2l0aCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbnRlcm5hbC9vcGVyYXRvcnMvemlwV2l0aC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX3JlYWQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3JlYWQgfHwgZnVuY3Rpb24obywgbikgewogICAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdOwogICAgICBpZiAoIW0pIHJldHVybiBvOwogICAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTsKICAgICAgdHJ5IHsKICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBlID0geyBlcnJvciB9OwogICAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVsicmV0dXJuIl0pKSBtLmNhbGwoaSk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGlmIChlKSB0aHJvdyBlLmVycm9yOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gYXI7CiAgICB9OwogICAgdmFyIF9fc3ByZWFkQXJyYXkgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NwcmVhZEFycmF5IHx8IGZ1bmN0aW9uKHRvLCBmcm9tKSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IGZyb20ubGVuZ3RoLCBqID0gdG8ubGVuZ3RoOyBpIDwgaWw7IGkrKywgaisrKQogICAgICAgIHRvW2pdID0gZnJvbVtpXTsKICAgICAgcmV0dXJuIHRvOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuemlwV2l0aCA9IHZvaWQgMDsKICAgIHZhciB6aXBfMSA9IHJlcXVpcmVfemlwMigpOwogICAgZnVuY3Rpb24gemlwV2l0aCgpIHsKICAgICAgdmFyIG90aGVySW5wdXRzID0gW107CiAgICAgIGZvciAodmFyIF9pID0gMDsgX2kgPCBhcmd1bWVudHMubGVuZ3RoOyBfaSsrKSB7CiAgICAgICAgb3RoZXJJbnB1dHNbX2ldID0gYXJndW1lbnRzW19pXTsKICAgICAgfQogICAgICByZXR1cm4gemlwXzEuemlwLmFwcGx5KHZvaWQgMCwgX19zcHJlYWRBcnJheShbXSwgX19yZWFkKG90aGVySW5wdXRzKSkpOwogICAgfQogICAgZXhwb3J0czIuemlwV2l0aCA9IHppcFdpdGg7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3J4anMtbnBtLTcuOC4xLTQxYzQ0M2E3NWItMTAuemlwL25vZGVfbW9kdWxlcy9yeGpzL2Rpc3QvY2pzL2luZGV4LmpzCnZhciByZXF1aXJlX2NqcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9yeGpzLW5wbS03LjguMS00MWM0NDNhNzViLTEwLnppcC9ub2RlX21vZHVsZXMvcnhqcy9kaXN0L2Nqcy9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgazIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgfSB9KTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuaW50ZXJ2YWwgPSBleHBvcnRzMi5paWYgPSBleHBvcnRzMi5nZW5lcmF0ZSA9IGV4cG9ydHMyLmZyb21FdmVudFBhdHRlcm4gPSBleHBvcnRzMi5mcm9tRXZlbnQgPSBleHBvcnRzMi5mcm9tID0gZXhwb3J0czIuZm9ya0pvaW4gPSBleHBvcnRzMi5lbXB0eSA9IGV4cG9ydHMyLmRlZmVyID0gZXhwb3J0czIuY29ubmVjdGFibGUgPSBleHBvcnRzMi5jb25jYXQgPSBleHBvcnRzMi5jb21iaW5lTGF0ZXN0ID0gZXhwb3J0czIuYmluZE5vZGVDYWxsYmFjayA9IGV4cG9ydHMyLmJpbmRDYWxsYmFjayA9IGV4cG9ydHMyLlVuc3Vic2NyaXB0aW9uRXJyb3IgPSBleHBvcnRzMi5UaW1lb3V0RXJyb3IgPSBleHBvcnRzMi5TZXF1ZW5jZUVycm9yID0gZXhwb3J0czIuT2JqZWN0VW5zdWJzY3JpYmVkRXJyb3IgPSBleHBvcnRzMi5Ob3RGb3VuZEVycm9yID0gZXhwb3J0czIuRW1wdHlFcnJvciA9IGV4cG9ydHMyLkFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yID0gZXhwb3J0czIuZmlyc3RWYWx1ZUZyb20gPSBleHBvcnRzMi5sYXN0VmFsdWVGcm9tID0gZXhwb3J0czIuaXNPYnNlcnZhYmxlID0gZXhwb3J0czIuaWRlbnRpdHkgPSBleHBvcnRzMi5ub29wID0gZXhwb3J0czIucGlwZSA9IGV4cG9ydHMyLk5vdGlmaWNhdGlvbktpbmQgPSBleHBvcnRzMi5Ob3RpZmljYXRpb24gPSBleHBvcnRzMi5TdWJzY3JpYmVyID0gZXhwb3J0czIuU3Vic2NyaXB0aW9uID0gZXhwb3J0czIuU2NoZWR1bGVyID0gZXhwb3J0czIuVmlydHVhbEFjdGlvbiA9IGV4cG9ydHMyLlZpcnR1YWxUaW1lU2NoZWR1bGVyID0gZXhwb3J0czIuYW5pbWF0aW9uRnJhbWVTY2hlZHVsZXIgPSBleHBvcnRzMi5hbmltYXRpb25GcmFtZSA9IGV4cG9ydHMyLnF1ZXVlU2NoZWR1bGVyID0gZXhwb3J0czIucXVldWUgPSBleHBvcnRzMi5hc3luY1NjaGVkdWxlciA9IGV4cG9ydHMyLmFzeW5jID0gZXhwb3J0czIuYXNhcFNjaGVkdWxlciA9IGV4cG9ydHMyLmFzYXAgPSBleHBvcnRzMi5Bc3luY1N1YmplY3QgPSBleHBvcnRzMi5SZXBsYXlTdWJqZWN0ID0gZXhwb3J0czIuQmVoYXZpb3JTdWJqZWN0ID0gZXhwb3J0czIuU3ViamVjdCA9IGV4cG9ydHMyLmFuaW1hdGlvbkZyYW1lcyA9IGV4cG9ydHMyLm9ic2VydmFibGUgPSBleHBvcnRzMi5Db25uZWN0YWJsZU9ic2VydmFibGUgPSBleHBvcnRzMi5PYnNlcnZhYmxlID0gdm9pZCAwOwogICAgZXhwb3J0czIuZmlsdGVyID0gZXhwb3J0czIuZXhwYW5kID0gZXhwb3J0czIuZXhoYXVzdE1hcCA9IGV4cG9ydHMyLmV4aGF1c3RBbGwgPSBleHBvcnRzMi5leGhhdXN0ID0gZXhwb3J0czIuZXZlcnkgPSBleHBvcnRzMi5lbmRXaXRoID0gZXhwb3J0czIuZWxlbWVudEF0ID0gZXhwb3J0czIuZGlzdGluY3RVbnRpbEtleUNoYW5nZWQgPSBleHBvcnRzMi5kaXN0aW5jdFVudGlsQ2hhbmdlZCA9IGV4cG9ydHMyLmRpc3RpbmN0ID0gZXhwb3J0czIuZGVtYXRlcmlhbGl6ZSA9IGV4cG9ydHMyLmRlbGF5V2hlbiA9IGV4cG9ydHMyLmRlbGF5ID0gZXhwb3J0czIuZGVmYXVsdElmRW1wdHkgPSBleHBvcnRzMi5kZWJvdW5jZVRpbWUgPSBleHBvcnRzMi5kZWJvdW5jZSA9IGV4cG9ydHMyLmNvdW50ID0gZXhwb3J0czIuY29ubmVjdCA9IGV4cG9ydHMyLmNvbmNhdFdpdGggPSBleHBvcnRzMi5jb25jYXRNYXBUbyA9IGV4cG9ydHMyLmNvbmNhdE1hcCA9IGV4cG9ydHMyLmNvbmNhdEFsbCA9IGV4cG9ydHMyLmNvbWJpbmVMYXRlc3RXaXRoID0gZXhwb3J0czIuY29tYmluZUxhdGVzdEFsbCA9IGV4cG9ydHMyLmNvbWJpbmVBbGwgPSBleHBvcnRzMi5jYXRjaEVycm9yID0gZXhwb3J0czIuYnVmZmVyV2hlbiA9IGV4cG9ydHMyLmJ1ZmZlclRvZ2dsZSA9IGV4cG9ydHMyLmJ1ZmZlclRpbWUgPSBleHBvcnRzMi5idWZmZXJDb3VudCA9IGV4cG9ydHMyLmJ1ZmZlciA9IGV4cG9ydHMyLmF1ZGl0VGltZSA9IGV4cG9ydHMyLmF1ZGl0ID0gZXhwb3J0czIuY29uZmlnID0gZXhwb3J0czIuTkVWRVIgPSBleHBvcnRzMi5FTVBUWSA9IGV4cG9ydHMyLnNjaGVkdWxlZCA9IGV4cG9ydHMyLnppcCA9IGV4cG9ydHMyLnVzaW5nID0gZXhwb3J0czIudGltZXIgPSBleHBvcnRzMi50aHJvd0Vycm9yID0gZXhwb3J0czIucmFuZ2UgPSBleHBvcnRzMi5yYWNlID0gZXhwb3J0czIucGFydGl0aW9uID0gZXhwb3J0czIucGFpcnMgPSBleHBvcnRzMi5vbkVycm9yUmVzdW1lTmV4dCA9IGV4cG9ydHMyLm9mID0gZXhwb3J0czIubmV2ZXIgPSBleHBvcnRzMi5tZXJnZSA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLnN3aXRjaE1hcCA9IGV4cG9ydHMyLnN3aXRjaEFsbCA9IGV4cG9ydHMyLnN1YnNjcmliZU9uID0gZXhwb3J0czIuc3RhcnRXaXRoID0gZXhwb3J0czIuc2tpcFdoaWxlID0gZXhwb3J0czIuc2tpcFVudGlsID0gZXhwb3J0czIuc2tpcExhc3QgPSBleHBvcnRzMi5za2lwID0gZXhwb3J0czIuc2luZ2xlID0gZXhwb3J0czIuc2hhcmVSZXBsYXkgPSBleHBvcnRzMi5zaGFyZSA9IGV4cG9ydHMyLnNlcXVlbmNlRXF1YWwgPSBleHBvcnRzMi5zY2FuID0gZXhwb3J0czIuc2FtcGxlVGltZSA9IGV4cG9ydHMyLnNhbXBsZSA9IGV4cG9ydHMyLnJlZkNvdW50ID0gZXhwb3J0czIucmV0cnlXaGVuID0gZXhwb3J0czIucmV0cnkgPSBleHBvcnRzMi5yZXBlYXRXaGVuID0gZXhwb3J0czIucmVwZWF0ID0gZXhwb3J0czIucmVkdWNlID0gZXhwb3J0czIucmFjZVdpdGggPSBleHBvcnRzMi5wdWJsaXNoUmVwbGF5ID0gZXhwb3J0czIucHVibGlzaExhc3QgPSBleHBvcnRzMi5wdWJsaXNoQmVoYXZpb3IgPSBleHBvcnRzMi5wdWJsaXNoID0gZXhwb3J0czIucGx1Y2sgPSBleHBvcnRzMi5wYWlyd2lzZSA9IGV4cG9ydHMyLm9uRXJyb3JSZXN1bWVOZXh0V2l0aCA9IGV4cG9ydHMyLm9ic2VydmVPbiA9IGV4cG9ydHMyLm11bHRpY2FzdCA9IGV4cG9ydHMyLm1pbiA9IGV4cG9ydHMyLm1lcmdlV2l0aCA9IGV4cG9ydHMyLm1lcmdlU2NhbiA9IGV4cG9ydHMyLm1lcmdlTWFwVG8gPSBleHBvcnRzMi5tZXJnZU1hcCA9IGV4cG9ydHMyLmZsYXRNYXAgPSBleHBvcnRzMi5tZXJnZUFsbCA9IGV4cG9ydHMyLm1heCA9IGV4cG9ydHMyLm1hdGVyaWFsaXplID0gZXhwb3J0czIubWFwVG8gPSBleHBvcnRzMi5tYXAgPSBleHBvcnRzMi5sYXN0ID0gZXhwb3J0czIuaXNFbXB0eSA9IGV4cG9ydHMyLmlnbm9yZUVsZW1lbnRzID0gZXhwb3J0czIuZ3JvdXBCeSA9IGV4cG9ydHMyLmZpcnN0ID0gZXhwb3J0czIuZmluZEluZGV4ID0gZXhwb3J0czIuZmluZCA9IGV4cG9ydHMyLmZpbmFsaXplID0gdm9pZCAwOwogICAgZXhwb3J0czIuemlwV2l0aCA9IGV4cG9ydHMyLnppcEFsbCA9IGV4cG9ydHMyLndpdGhMYXRlc3RGcm9tID0gZXhwb3J0czIud2luZG93V2hlbiA9IGV4cG9ydHMyLndpbmRvd1RvZ2dsZSA9IGV4cG9ydHMyLndpbmRvd1RpbWUgPSBleHBvcnRzMi53aW5kb3dDb3VudCA9IGV4cG9ydHMyLndpbmRvdyA9IGV4cG9ydHMyLnRvQXJyYXkgPSBleHBvcnRzMi50aW1lc3RhbXAgPSBleHBvcnRzMi50aW1lb3V0V2l0aCA9IGV4cG9ydHMyLnRpbWVvdXQgPSBleHBvcnRzMi50aW1lSW50ZXJ2YWwgPSBleHBvcnRzMi50aHJvd0lmRW1wdHkgPSBleHBvcnRzMi50aHJvdHRsZVRpbWUgPSBleHBvcnRzMi50aHJvdHRsZSA9IGV4cG9ydHMyLnRhcCA9IGV4cG9ydHMyLnRha2VXaGlsZSA9IGV4cG9ydHMyLnRha2VVbnRpbCA9IGV4cG9ydHMyLnRha2VMYXN0ID0gZXhwb3J0czIudGFrZSA9IGV4cG9ydHMyLnN3aXRjaFNjYW4gPSBleHBvcnRzMi5zd2l0Y2hNYXBUbyA9IHZvaWQgMDsKICAgIHZhciBPYnNlcnZhYmxlXzEgPSByZXF1aXJlX09ic2VydmFibGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIk9ic2VydmFibGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBPYnNlcnZhYmxlXzEuT2JzZXJ2YWJsZTsKICAgIH0gfSk7CiAgICB2YXIgQ29ubmVjdGFibGVPYnNlcnZhYmxlXzEgPSByZXF1aXJlX0Nvbm5lY3RhYmxlT2JzZXJ2YWJsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiQ29ubmVjdGFibGVPYnNlcnZhYmxlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gQ29ubmVjdGFibGVPYnNlcnZhYmxlXzEuQ29ubmVjdGFibGVPYnNlcnZhYmxlOwogICAgfSB9KTsKICAgIHZhciBvYnNlcnZhYmxlXzEgPSByZXF1aXJlX29ic2VydmFibGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm9ic2VydmFibGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBvYnNlcnZhYmxlXzEub2JzZXJ2YWJsZTsKICAgIH0gfSk7CiAgICB2YXIgYW5pbWF0aW9uRnJhbWVzXzEgPSByZXF1aXJlX2FuaW1hdGlvbkZyYW1lcygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYW5pbWF0aW9uRnJhbWVzIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYW5pbWF0aW9uRnJhbWVzXzEuYW5pbWF0aW9uRnJhbWVzOwogICAgfSB9KTsKICAgIHZhciBTdWJqZWN0XzEgPSByZXF1aXJlX1N1YmplY3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlN1YmplY3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBTdWJqZWN0XzEuU3ViamVjdDsKICAgIH0gfSk7CiAgICB2YXIgQmVoYXZpb3JTdWJqZWN0XzEgPSByZXF1aXJlX0JlaGF2aW9yU3ViamVjdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiQmVoYXZpb3JTdWJqZWN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gQmVoYXZpb3JTdWJqZWN0XzEuQmVoYXZpb3JTdWJqZWN0OwogICAgfSB9KTsKICAgIHZhciBSZXBsYXlTdWJqZWN0XzEgPSByZXF1aXJlX1JlcGxheVN1YmplY3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlJlcGxheVN1YmplY3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBSZXBsYXlTdWJqZWN0XzEuUmVwbGF5U3ViamVjdDsKICAgIH0gfSk7CiAgICB2YXIgQXN5bmNTdWJqZWN0XzEgPSByZXF1aXJlX0FzeW5jU3ViamVjdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiQXN5bmNTdWJqZWN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gQXN5bmNTdWJqZWN0XzEuQXN5bmNTdWJqZWN0OwogICAgfSB9KTsKICAgIHZhciBhc2FwXzEgPSByZXF1aXJlX2FzYXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImFzYXAiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBhc2FwXzEuYXNhcDsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJhc2FwU2NoZWR1bGVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYXNhcF8xLmFzYXBTY2hlZHVsZXI7CiAgICB9IH0pOwogICAgdmFyIGFzeW5jXzEgPSByZXF1aXJlX2FzeW5jKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJhc3luYyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGFzeW5jXzEuYXN5bmM7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYXN5bmNTY2hlZHVsZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBhc3luY18xLmFzeW5jU2NoZWR1bGVyOwogICAgfSB9KTsKICAgIHZhciBxdWV1ZV8xID0gcmVxdWlyZV9xdWV1ZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicXVldWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBxdWV1ZV8xLnF1ZXVlOwogICAgfSB9KTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInF1ZXVlU2NoZWR1bGVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcXVldWVfMS5xdWV1ZVNjaGVkdWxlcjsKICAgIH0gfSk7CiAgICB2YXIgYW5pbWF0aW9uRnJhbWVfMSA9IHJlcXVpcmVfYW5pbWF0aW9uRnJhbWUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImFuaW1hdGlvbkZyYW1lIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYW5pbWF0aW9uRnJhbWVfMS5hbmltYXRpb25GcmFtZTsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJhbmltYXRpb25GcmFtZVNjaGVkdWxlciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGFuaW1hdGlvbkZyYW1lXzEuYW5pbWF0aW9uRnJhbWVTY2hlZHVsZXI7CiAgICB9IH0pOwogICAgdmFyIFZpcnR1YWxUaW1lU2NoZWR1bGVyXzEgPSByZXF1aXJlX1ZpcnR1YWxUaW1lU2NoZWR1bGVyKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJWaXJ0dWFsVGltZVNjaGVkdWxlciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFZpcnR1YWxUaW1lU2NoZWR1bGVyXzEuVmlydHVhbFRpbWVTY2hlZHVsZXI7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiVmlydHVhbEFjdGlvbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFZpcnR1YWxUaW1lU2NoZWR1bGVyXzEuVmlydHVhbEFjdGlvbjsKICAgIH0gfSk7CiAgICB2YXIgU2NoZWR1bGVyXzEgPSByZXF1aXJlX1NjaGVkdWxlcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiU2NoZWR1bGVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gU2NoZWR1bGVyXzEuU2NoZWR1bGVyOwogICAgfSB9KTsKICAgIHZhciBTdWJzY3JpcHRpb25fMSA9IHJlcXVpcmVfU3Vic2NyaXB0aW9uKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJTdWJzY3JpcHRpb24iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBTdWJzY3JpcHRpb25fMS5TdWJzY3JpcHRpb247CiAgICB9IH0pOwogICAgdmFyIFN1YnNjcmliZXJfMSA9IHJlcXVpcmVfU3Vic2NyaWJlcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiU3Vic2NyaWJlciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIFN1YnNjcmliZXJfMS5TdWJzY3JpYmVyOwogICAgfSB9KTsKICAgIHZhciBOb3RpZmljYXRpb25fMSA9IHJlcXVpcmVfTm90aWZpY2F0aW9uKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJOb3RpZmljYXRpb24iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBOb3RpZmljYXRpb25fMS5Ob3RpZmljYXRpb247CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiTm90aWZpY2F0aW9uS2luZCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIE5vdGlmaWNhdGlvbl8xLk5vdGlmaWNhdGlvbktpbmQ7CiAgICB9IH0pOwogICAgdmFyIHBpcGVfMSA9IHJlcXVpcmVfcGlwZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicGlwZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHBpcGVfMS5waXBlOwogICAgfSB9KTsKICAgIHZhciBub29wXzEgPSByZXF1aXJlX25vb3AoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm5vb3AiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBub29wXzEubm9vcDsKICAgIH0gfSk7CiAgICB2YXIgaWRlbnRpdHlfMSA9IHJlcXVpcmVfaWRlbnRpdHkoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImlkZW50aXR5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gaWRlbnRpdHlfMS5pZGVudGl0eTsKICAgIH0gfSk7CiAgICB2YXIgaXNPYnNlcnZhYmxlXzEgPSByZXF1aXJlX2lzT2JzZXJ2YWJsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaXNPYnNlcnZhYmxlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gaXNPYnNlcnZhYmxlXzEuaXNPYnNlcnZhYmxlOwogICAgfSB9KTsKICAgIHZhciBsYXN0VmFsdWVGcm9tXzEgPSByZXF1aXJlX2xhc3RWYWx1ZUZyb20oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImxhc3RWYWx1ZUZyb20iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBsYXN0VmFsdWVGcm9tXzEubGFzdFZhbHVlRnJvbTsKICAgIH0gfSk7CiAgICB2YXIgZmlyc3RWYWx1ZUZyb21fMSA9IHJlcXVpcmVfZmlyc3RWYWx1ZUZyb20oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZpcnN0VmFsdWVGcm9tIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZmlyc3RWYWx1ZUZyb21fMS5maXJzdFZhbHVlRnJvbTsKICAgIH0gfSk7CiAgICB2YXIgQXJndW1lbnRPdXRPZlJhbmdlRXJyb3JfMSA9IHJlcXVpcmVfQXJndW1lbnRPdXRPZlJhbmdlRXJyb3IoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIkFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gQXJndW1lbnRPdXRPZlJhbmdlRXJyb3JfMS5Bcmd1bWVudE91dE9mUmFuZ2VFcnJvcjsKICAgIH0gfSk7CiAgICB2YXIgRW1wdHlFcnJvcl8xID0gcmVxdWlyZV9FbXB0eUVycm9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJFbXB0eUVycm9yIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gRW1wdHlFcnJvcl8xLkVtcHR5RXJyb3I7CiAgICB9IH0pOwogICAgdmFyIE5vdEZvdW5kRXJyb3JfMSA9IHJlcXVpcmVfTm90Rm91bmRFcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiTm90Rm91bmRFcnJvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIE5vdEZvdW5kRXJyb3JfMS5Ob3RGb3VuZEVycm9yOwogICAgfSB9KTsKICAgIHZhciBPYmplY3RVbnN1YnNjcmliZWRFcnJvcl8xID0gcmVxdWlyZV9PYmplY3RVbnN1YnNjcmliZWRFcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiT2JqZWN0VW5zdWJzY3JpYmVkRXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBPYmplY3RVbnN1YnNjcmliZWRFcnJvcl8xLk9iamVjdFVuc3Vic2NyaWJlZEVycm9yOwogICAgfSB9KTsKICAgIHZhciBTZXF1ZW5jZUVycm9yXzEgPSByZXF1aXJlX1NlcXVlbmNlRXJyb3IoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlNlcXVlbmNlRXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBTZXF1ZW5jZUVycm9yXzEuU2VxdWVuY2VFcnJvcjsKICAgIH0gfSk7CiAgICB2YXIgdGltZW91dF8xID0gcmVxdWlyZV90aW1lb3V0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJUaW1lb3V0RXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0aW1lb3V0XzEuVGltZW91dEVycm9yOwogICAgfSB9KTsKICAgIHZhciBVbnN1YnNjcmlwdGlvbkVycm9yXzEgPSByZXF1aXJlX1Vuc3Vic2NyaXB0aW9uRXJyb3IoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlVuc3Vic2NyaXB0aW9uRXJyb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBVbnN1YnNjcmlwdGlvbkVycm9yXzEuVW5zdWJzY3JpcHRpb25FcnJvcjsKICAgIH0gfSk7CiAgICB2YXIgYmluZENhbGxiYWNrXzEgPSByZXF1aXJlX2JpbmRDYWxsYmFjaygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYmluZENhbGxiYWNrIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYmluZENhbGxiYWNrXzEuYmluZENhbGxiYWNrOwogICAgfSB9KTsKICAgIHZhciBiaW5kTm9kZUNhbGxiYWNrXzEgPSByZXF1aXJlX2JpbmROb2RlQ2FsbGJhY2soKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImJpbmROb2RlQ2FsbGJhY2siLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBiaW5kTm9kZUNhbGxiYWNrXzEuYmluZE5vZGVDYWxsYmFjazsKICAgIH0gfSk7CiAgICB2YXIgY29tYmluZUxhdGVzdF8xID0gcmVxdWlyZV9jb21iaW5lTGF0ZXN0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjb21iaW5lTGF0ZXN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29tYmluZUxhdGVzdF8xLmNvbWJpbmVMYXRlc3Q7CiAgICB9IH0pOwogICAgdmFyIGNvbmNhdF8xID0gcmVxdWlyZV9jb25jYXQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbmNhdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvbmNhdF8xLmNvbmNhdDsKICAgIH0gfSk7CiAgICB2YXIgY29ubmVjdGFibGVfMSA9IHJlcXVpcmVfY29ubmVjdGFibGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbm5lY3RhYmxlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29ubmVjdGFibGVfMS5jb25uZWN0YWJsZTsKICAgIH0gfSk7CiAgICB2YXIgZGVmZXJfMSA9IHJlcXVpcmVfZGVmZXIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImRlZmVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZGVmZXJfMS5kZWZlcjsKICAgIH0gfSk7CiAgICB2YXIgZW1wdHlfMSA9IHJlcXVpcmVfZW1wdHkoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImVtcHR5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZW1wdHlfMS5lbXB0eTsKICAgIH0gfSk7CiAgICB2YXIgZm9ya0pvaW5fMSA9IHJlcXVpcmVfZm9ya0pvaW4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZvcmtKb2luIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZm9ya0pvaW5fMS5mb3JrSm9pbjsKICAgIH0gfSk7CiAgICB2YXIgZnJvbV8xID0gcmVxdWlyZV9mcm9tKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJmcm9tIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZnJvbV8xLmZyb207CiAgICB9IH0pOwogICAgdmFyIGZyb21FdmVudF8xID0gcmVxdWlyZV9mcm9tRXZlbnQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZyb21FdmVudCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGZyb21FdmVudF8xLmZyb21FdmVudDsKICAgIH0gfSk7CiAgICB2YXIgZnJvbUV2ZW50UGF0dGVybl8xID0gcmVxdWlyZV9mcm9tRXZlbnRQYXR0ZXJuKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJmcm9tRXZlbnRQYXR0ZXJuIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZnJvbUV2ZW50UGF0dGVybl8xLmZyb21FdmVudFBhdHRlcm47CiAgICB9IH0pOwogICAgdmFyIGdlbmVyYXRlXzEgPSByZXF1aXJlX2dlbmVyYXRlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJnZW5lcmF0ZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGdlbmVyYXRlXzEuZ2VuZXJhdGU7CiAgICB9IH0pOwogICAgdmFyIGlpZl8xID0gcmVxdWlyZV9paWYoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImlpZiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGlpZl8xLmlpZjsKICAgIH0gfSk7CiAgICB2YXIgaW50ZXJ2YWxfMSA9IHJlcXVpcmVfaW50ZXJ2YWwoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImludGVydmFsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gaW50ZXJ2YWxfMS5pbnRlcnZhbDsKICAgIH0gfSk7CiAgICB2YXIgbWVyZ2VfMSA9IHJlcXVpcmVfbWVyZ2UoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm1lcmdlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbWVyZ2VfMS5tZXJnZTsKICAgIH0gfSk7CiAgICB2YXIgbmV2ZXJfMSA9IHJlcXVpcmVfbmV2ZXIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm5ldmVyIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbmV2ZXJfMS5uZXZlcjsKICAgIH0gfSk7CiAgICB2YXIgb2ZfMSA9IHJlcXVpcmVfb2YoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm9mIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gb2ZfMS5vZjsKICAgIH0gfSk7CiAgICB2YXIgb25FcnJvclJlc3VtZU5leHRfMSA9IHJlcXVpcmVfb25FcnJvclJlc3VtZU5leHQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm9uRXJyb3JSZXN1bWVOZXh0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gb25FcnJvclJlc3VtZU5leHRfMS5vbkVycm9yUmVzdW1lTmV4dDsKICAgIH0gfSk7CiAgICB2YXIgcGFpcnNfMSA9IHJlcXVpcmVfcGFpcnMoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInBhaXJzIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcGFpcnNfMS5wYWlyczsKICAgIH0gfSk7CiAgICB2YXIgcGFydGl0aW9uXzEgPSByZXF1aXJlX3BhcnRpdGlvbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicGFydGl0aW9uIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcGFydGl0aW9uXzEucGFydGl0aW9uOwogICAgfSB9KTsKICAgIHZhciByYWNlXzEgPSByZXF1aXJlX3JhY2UoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInJhY2UiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiByYWNlXzEucmFjZTsKICAgIH0gfSk7CiAgICB2YXIgcmFuZ2VfMSA9IHJlcXVpcmVfcmFuZ2UoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInJhbmdlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcmFuZ2VfMS5yYW5nZTsKICAgIH0gfSk7CiAgICB2YXIgdGhyb3dFcnJvcl8xID0gcmVxdWlyZV90aHJvd0Vycm9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0aHJvd0Vycm9yIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGhyb3dFcnJvcl8xLnRocm93RXJyb3I7CiAgICB9IH0pOwogICAgdmFyIHRpbWVyXzEgPSByZXF1aXJlX3RpbWVyKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0aW1lciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRpbWVyXzEudGltZXI7CiAgICB9IH0pOwogICAgdmFyIHVzaW5nXzEgPSByZXF1aXJlX3VzaW5nKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ1c2luZyIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHVzaW5nXzEudXNpbmc7CiAgICB9IH0pOwogICAgdmFyIHppcF8xID0gcmVxdWlyZV96aXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInppcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHppcF8xLnppcDsKICAgIH0gfSk7CiAgICB2YXIgc2NoZWR1bGVkXzEgPSByZXF1aXJlX3NjaGVkdWxlZCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2NoZWR1bGVkIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2NoZWR1bGVkXzEuc2NoZWR1bGVkOwogICAgfSB9KTsKICAgIHZhciBlbXB0eV8yID0gcmVxdWlyZV9lbXB0eSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiRU1QVFkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBlbXB0eV8yLkVNUFRZOwogICAgfSB9KTsKICAgIHZhciBuZXZlcl8yID0gcmVxdWlyZV9uZXZlcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiTkVWRVIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBuZXZlcl8yLk5FVkVSOwogICAgfSB9KTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3R5cGVzMigpLCBleHBvcnRzMik7CiAgICB2YXIgY29uZmlnXzEgPSByZXF1aXJlX2NvbmZpZygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29uZmlnIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29uZmlnXzEuY29uZmlnOwogICAgfSB9KTsKICAgIHZhciBhdWRpdF8xID0gcmVxdWlyZV9hdWRpdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiYXVkaXQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBhdWRpdF8xLmF1ZGl0OwogICAgfSB9KTsKICAgIHZhciBhdWRpdFRpbWVfMSA9IHJlcXVpcmVfYXVkaXRUaW1lKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJhdWRpdFRpbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBhdWRpdFRpbWVfMS5hdWRpdFRpbWU7CiAgICB9IH0pOwogICAgdmFyIGJ1ZmZlcl8xID0gcmVxdWlyZV9idWZmZXIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImJ1ZmZlciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGJ1ZmZlcl8xLmJ1ZmZlcjsKICAgIH0gfSk7CiAgICB2YXIgYnVmZmVyQ291bnRfMSA9IHJlcXVpcmVfYnVmZmVyQ291bnQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImJ1ZmZlckNvdW50IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYnVmZmVyQ291bnRfMS5idWZmZXJDb3VudDsKICAgIH0gfSk7CiAgICB2YXIgYnVmZmVyVGltZV8xID0gcmVxdWlyZV9idWZmZXJUaW1lKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJidWZmZXJUaW1lIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYnVmZmVyVGltZV8xLmJ1ZmZlclRpbWU7CiAgICB9IH0pOwogICAgdmFyIGJ1ZmZlclRvZ2dsZV8xID0gcmVxdWlyZV9idWZmZXJUb2dnbGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImJ1ZmZlclRvZ2dsZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGJ1ZmZlclRvZ2dsZV8xLmJ1ZmZlclRvZ2dsZTsKICAgIH0gfSk7CiAgICB2YXIgYnVmZmVyV2hlbl8xID0gcmVxdWlyZV9idWZmZXJXaGVuKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJidWZmZXJXaGVuIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gYnVmZmVyV2hlbl8xLmJ1ZmZlcldoZW47CiAgICB9IH0pOwogICAgdmFyIGNhdGNoRXJyb3JfMSA9IHJlcXVpcmVfY2F0Y2hFcnJvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY2F0Y2hFcnJvciIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNhdGNoRXJyb3JfMS5jYXRjaEVycm9yOwogICAgfSB9KTsKICAgIHZhciBjb21iaW5lQWxsXzEgPSByZXF1aXJlX2NvbWJpbmVBbGwoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbWJpbmVBbGwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb21iaW5lQWxsXzEuY29tYmluZUFsbDsKICAgIH0gfSk7CiAgICB2YXIgY29tYmluZUxhdGVzdEFsbF8xID0gcmVxdWlyZV9jb21iaW5lTGF0ZXN0QWxsKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjb21iaW5lTGF0ZXN0QWxsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29tYmluZUxhdGVzdEFsbF8xLmNvbWJpbmVMYXRlc3RBbGw7CiAgICB9IH0pOwogICAgdmFyIGNvbWJpbmVMYXRlc3RXaXRoXzEgPSByZXF1aXJlX2NvbWJpbmVMYXRlc3RXaXRoKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjb21iaW5lTGF0ZXN0V2l0aCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvbWJpbmVMYXRlc3RXaXRoXzEuY29tYmluZUxhdGVzdFdpdGg7CiAgICB9IH0pOwogICAgdmFyIGNvbmNhdEFsbF8xID0gcmVxdWlyZV9jb25jYXRBbGwoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbmNhdEFsbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvbmNhdEFsbF8xLmNvbmNhdEFsbDsKICAgIH0gfSk7CiAgICB2YXIgY29uY2F0TWFwXzEgPSByZXF1aXJlX2NvbmNhdE1hcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29uY2F0TWFwIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29uY2F0TWFwXzEuY29uY2F0TWFwOwogICAgfSB9KTsKICAgIHZhciBjb25jYXRNYXBUb18xID0gcmVxdWlyZV9jb25jYXRNYXBUbygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiY29uY2F0TWFwVG8iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb25jYXRNYXBUb18xLmNvbmNhdE1hcFRvOwogICAgfSB9KTsKICAgIHZhciBjb25jYXRXaXRoXzEgPSByZXF1aXJlX2NvbmNhdFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNvbmNhdFdpdGgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb25jYXRXaXRoXzEuY29uY2F0V2l0aDsKICAgIH0gfSk7CiAgICB2YXIgY29ubmVjdF8xID0gcmVxdWlyZV9jb25uZWN0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjb25uZWN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29ubmVjdF8xLmNvbm5lY3Q7CiAgICB9IH0pOwogICAgdmFyIGNvdW50XzEgPSByZXF1aXJlX2NvdW50KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJjb3VudCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGNvdW50XzEuY291bnQ7CiAgICB9IH0pOwogICAgdmFyIGRlYm91bmNlXzEgPSByZXF1aXJlX2RlYm91bmNlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJkZWJvdW5jZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGRlYm91bmNlXzEuZGVib3VuY2U7CiAgICB9IH0pOwogICAgdmFyIGRlYm91bmNlVGltZV8xID0gcmVxdWlyZV9kZWJvdW5jZVRpbWUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImRlYm91bmNlVGltZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGRlYm91bmNlVGltZV8xLmRlYm91bmNlVGltZTsKICAgIH0gfSk7CiAgICB2YXIgZGVmYXVsdElmRW1wdHlfMSA9IHJlcXVpcmVfZGVmYXVsdElmRW1wdHkoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImRlZmF1bHRJZkVtcHR5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZGVmYXVsdElmRW1wdHlfMS5kZWZhdWx0SWZFbXB0eTsKICAgIH0gfSk7CiAgICB2YXIgZGVsYXlfMSA9IHJlcXVpcmVfZGVsYXkoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImRlbGF5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZGVsYXlfMS5kZWxheTsKICAgIH0gfSk7CiAgICB2YXIgZGVsYXlXaGVuXzEgPSByZXF1aXJlX2RlbGF5V2hlbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZGVsYXlXaGVuIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZGVsYXlXaGVuXzEuZGVsYXlXaGVuOwogICAgfSB9KTsKICAgIHZhciBkZW1hdGVyaWFsaXplXzEgPSByZXF1aXJlX2RlbWF0ZXJpYWxpemUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImRlbWF0ZXJpYWxpemUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBkZW1hdGVyaWFsaXplXzEuZGVtYXRlcmlhbGl6ZTsKICAgIH0gfSk7CiAgICB2YXIgZGlzdGluY3RfMSA9IHJlcXVpcmVfZGlzdGluY3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImRpc3RpbmN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZGlzdGluY3RfMS5kaXN0aW5jdDsKICAgIH0gfSk7CiAgICB2YXIgZGlzdGluY3RVbnRpbENoYW5nZWRfMSA9IHJlcXVpcmVfZGlzdGluY3RVbnRpbENoYW5nZWQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImRpc3RpbmN0VW50aWxDaGFuZ2VkIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZGlzdGluY3RVbnRpbENoYW5nZWRfMS5kaXN0aW5jdFVudGlsQ2hhbmdlZDsKICAgIH0gfSk7CiAgICB2YXIgZGlzdGluY3RVbnRpbEtleUNoYW5nZWRfMSA9IHJlcXVpcmVfZGlzdGluY3RVbnRpbEtleUNoYW5nZWQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImRpc3RpbmN0VW50aWxLZXlDaGFuZ2VkIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZGlzdGluY3RVbnRpbEtleUNoYW5nZWRfMS5kaXN0aW5jdFVudGlsS2V5Q2hhbmdlZDsKICAgIH0gfSk7CiAgICB2YXIgZWxlbWVudEF0XzEgPSByZXF1aXJlX2VsZW1lbnRBdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZWxlbWVudEF0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZWxlbWVudEF0XzEuZWxlbWVudEF0OwogICAgfSB9KTsKICAgIHZhciBlbmRXaXRoXzEgPSByZXF1aXJlX2VuZFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImVuZFdpdGgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBlbmRXaXRoXzEuZW5kV2l0aDsKICAgIH0gfSk7CiAgICB2YXIgZXZlcnlfMSA9IHJlcXVpcmVfZXZlcnkoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImV2ZXJ5IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZXZlcnlfMS5ldmVyeTsKICAgIH0gfSk7CiAgICB2YXIgZXhoYXVzdF8xID0gcmVxdWlyZV9leGhhdXN0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJleGhhdXN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZXhoYXVzdF8xLmV4aGF1c3Q7CiAgICB9IH0pOwogICAgdmFyIGV4aGF1c3RBbGxfMSA9IHJlcXVpcmVfZXhoYXVzdEFsbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZXhoYXVzdEFsbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGV4aGF1c3RBbGxfMS5leGhhdXN0QWxsOwogICAgfSB9KTsKICAgIHZhciBleGhhdXN0TWFwXzEgPSByZXF1aXJlX2V4aGF1c3RNYXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImV4aGF1c3RNYXAiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBleGhhdXN0TWFwXzEuZXhoYXVzdE1hcDsKICAgIH0gfSk7CiAgICB2YXIgZXhwYW5kXzEgPSByZXF1aXJlX2V4cGFuZCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZXhwYW5kIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZXhwYW5kXzEuZXhwYW5kOwogICAgfSB9KTsKICAgIHZhciBmaWx0ZXJfMSA9IHJlcXVpcmVfZmlsdGVyKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJmaWx0ZXIiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmaWx0ZXJfMS5maWx0ZXI7CiAgICB9IH0pOwogICAgdmFyIGZpbmFsaXplXzEgPSByZXF1aXJlX2ZpbmFsaXplKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJmaW5hbGl6ZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGZpbmFsaXplXzEuZmluYWxpemU7CiAgICB9IH0pOwogICAgdmFyIGZpbmRfMSA9IHJlcXVpcmVfZmluZCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZmluZCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGZpbmRfMS5maW5kOwogICAgfSB9KTsKICAgIHZhciBmaW5kSW5kZXhfMSA9IHJlcXVpcmVfZmluZEluZGV4KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJmaW5kSW5kZXgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmaW5kSW5kZXhfMS5maW5kSW5kZXg7CiAgICB9IH0pOwogICAgdmFyIGZpcnN0XzEgPSByZXF1aXJlX2ZpcnN0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJmaXJzdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGZpcnN0XzEuZmlyc3Q7CiAgICB9IH0pOwogICAgdmFyIGdyb3VwQnlfMSA9IHJlcXVpcmVfZ3JvdXBCeSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiZ3JvdXBCeSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGdyb3VwQnlfMS5ncm91cEJ5OwogICAgfSB9KTsKICAgIHZhciBpZ25vcmVFbGVtZW50c18xID0gcmVxdWlyZV9pZ25vcmVFbGVtZW50cygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaWdub3JlRWxlbWVudHMiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBpZ25vcmVFbGVtZW50c18xLmlnbm9yZUVsZW1lbnRzOwogICAgfSB9KTsKICAgIHZhciBpc0VtcHR5XzEgPSByZXF1aXJlX2lzRW1wdHkoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImlzRW1wdHkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBpc0VtcHR5XzEuaXNFbXB0eTsKICAgIH0gfSk7CiAgICB2YXIgbGFzdF8xID0gcmVxdWlyZV9sYXN0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJsYXN0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbGFzdF8xLmxhc3Q7CiAgICB9IH0pOwogICAgdmFyIG1hcF8xID0gcmVxdWlyZV9tYXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm1hcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG1hcF8xLm1hcDsKICAgIH0gfSk7CiAgICB2YXIgbWFwVG9fMSA9IHJlcXVpcmVfbWFwVG8oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm1hcFRvIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbWFwVG9fMS5tYXBUbzsKICAgIH0gfSk7CiAgICB2YXIgbWF0ZXJpYWxpemVfMSA9IHJlcXVpcmVfbWF0ZXJpYWxpemUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm1hdGVyaWFsaXplIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbWF0ZXJpYWxpemVfMS5tYXRlcmlhbGl6ZTsKICAgIH0gfSk7CiAgICB2YXIgbWF4XzEgPSByZXF1aXJlX21heCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWF4IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbWF4XzEubWF4OwogICAgfSB9KTsKICAgIHZhciBtZXJnZUFsbF8xID0gcmVxdWlyZV9tZXJnZUFsbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWVyZ2VBbGwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtZXJnZUFsbF8xLm1lcmdlQWxsOwogICAgfSB9KTsKICAgIHZhciBmbGF0TWFwXzEgPSByZXF1aXJlX2ZsYXRNYXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImZsYXRNYXAiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmbGF0TWFwXzEuZmxhdE1hcDsKICAgIH0gfSk7CiAgICB2YXIgbWVyZ2VNYXBfMSA9IHJlcXVpcmVfbWVyZ2VNYXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm1lcmdlTWFwIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbWVyZ2VNYXBfMS5tZXJnZU1hcDsKICAgIH0gfSk7CiAgICB2YXIgbWVyZ2VNYXBUb18xID0gcmVxdWlyZV9tZXJnZU1hcFRvKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJtZXJnZU1hcFRvIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbWVyZ2VNYXBUb18xLm1lcmdlTWFwVG87CiAgICB9IH0pOwogICAgdmFyIG1lcmdlU2Nhbl8xID0gcmVxdWlyZV9tZXJnZVNjYW4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm1lcmdlU2NhbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG1lcmdlU2Nhbl8xLm1lcmdlU2NhbjsKICAgIH0gfSk7CiAgICB2YXIgbWVyZ2VXaXRoXzEgPSByZXF1aXJlX21lcmdlV2l0aCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAibWVyZ2VXaXRoIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gbWVyZ2VXaXRoXzEubWVyZ2VXaXRoOwogICAgfSB9KTsKICAgIHZhciBtaW5fMSA9IHJlcXVpcmVfbWluKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJtaW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBtaW5fMS5taW47CiAgICB9IH0pOwogICAgdmFyIG11bHRpY2FzdF8xID0gcmVxdWlyZV9tdWx0aWNhc3QoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIm11bHRpY2FzdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIG11bHRpY2FzdF8xLm11bHRpY2FzdDsKICAgIH0gfSk7CiAgICB2YXIgb2JzZXJ2ZU9uXzEgPSByZXF1aXJlX29ic2VydmVPbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAib2JzZXJ2ZU9uIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gb2JzZXJ2ZU9uXzEub2JzZXJ2ZU9uOwogICAgfSB9KTsKICAgIHZhciBvbkVycm9yUmVzdW1lTmV4dFdpdGhfMSA9IHJlcXVpcmVfb25FcnJvclJlc3VtZU5leHRXaXRoKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJvbkVycm9yUmVzdW1lTmV4dFdpdGgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBvbkVycm9yUmVzdW1lTmV4dFdpdGhfMS5vbkVycm9yUmVzdW1lTmV4dFdpdGg7CiAgICB9IH0pOwogICAgdmFyIHBhaXJ3aXNlXzEgPSByZXF1aXJlX3BhaXJ3aXNlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwYWlyd2lzZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHBhaXJ3aXNlXzEucGFpcndpc2U7CiAgICB9IH0pOwogICAgdmFyIHBsdWNrXzEgPSByZXF1aXJlX3BsdWNrKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwbHVjayIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHBsdWNrXzEucGx1Y2s7CiAgICB9IH0pOwogICAgdmFyIHB1Ymxpc2hfMSA9IHJlcXVpcmVfcHVibGlzaCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicHVibGlzaCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHB1Ymxpc2hfMS5wdWJsaXNoOwogICAgfSB9KTsKICAgIHZhciBwdWJsaXNoQmVoYXZpb3JfMSA9IHJlcXVpcmVfcHVibGlzaEJlaGF2aW9yKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwdWJsaXNoQmVoYXZpb3IiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBwdWJsaXNoQmVoYXZpb3JfMS5wdWJsaXNoQmVoYXZpb3I7CiAgICB9IH0pOwogICAgdmFyIHB1Ymxpc2hMYXN0XzEgPSByZXF1aXJlX3B1Ymxpc2hMYXN0KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJwdWJsaXNoTGFzdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHB1Ymxpc2hMYXN0XzEucHVibGlzaExhc3Q7CiAgICB9IH0pOwogICAgdmFyIHB1Ymxpc2hSZXBsYXlfMSA9IHJlcXVpcmVfcHVibGlzaFJlcGxheSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicHVibGlzaFJlcGxheSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHB1Ymxpc2hSZXBsYXlfMS5wdWJsaXNoUmVwbGF5OwogICAgfSB9KTsKICAgIHZhciByYWNlV2l0aF8xID0gcmVxdWlyZV9yYWNlV2l0aCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicmFjZVdpdGgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiByYWNlV2l0aF8xLnJhY2VXaXRoOwogICAgfSB9KTsKICAgIHZhciByZWR1Y2VfMSA9IHJlcXVpcmVfcmVkdWNlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJyZWR1Y2UiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiByZWR1Y2VfMS5yZWR1Y2U7CiAgICB9IH0pOwogICAgdmFyIHJlcGVhdF8xID0gcmVxdWlyZV9yZXBlYXQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInJlcGVhdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJlcGVhdF8xLnJlcGVhdDsKICAgIH0gfSk7CiAgICB2YXIgcmVwZWF0V2hlbl8xID0gcmVxdWlyZV9yZXBlYXRXaGVuKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJyZXBlYXRXaGVuIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcmVwZWF0V2hlbl8xLnJlcGVhdFdoZW47CiAgICB9IH0pOwogICAgdmFyIHJldHJ5XzEgPSByZXF1aXJlX3JldHJ5KCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJyZXRyeSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJldHJ5XzEucmV0cnk7CiAgICB9IH0pOwogICAgdmFyIHJldHJ5V2hlbl8xID0gcmVxdWlyZV9yZXRyeVdoZW4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInJldHJ5V2hlbiIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHJldHJ5V2hlbl8xLnJldHJ5V2hlbjsKICAgIH0gfSk7CiAgICB2YXIgcmVmQ291bnRfMSA9IHJlcXVpcmVfcmVmQ291bnQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInJlZkNvdW50IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gcmVmQ291bnRfMS5yZWZDb3VudDsKICAgIH0gfSk7CiAgICB2YXIgc2FtcGxlXzEgPSByZXF1aXJlX3NhbXBsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2FtcGxlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2FtcGxlXzEuc2FtcGxlOwogICAgfSB9KTsKICAgIHZhciBzYW1wbGVUaW1lXzEgPSByZXF1aXJlX3NhbXBsZVRpbWUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNhbXBsZVRpbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzYW1wbGVUaW1lXzEuc2FtcGxlVGltZTsKICAgIH0gfSk7CiAgICB2YXIgc2Nhbl8xID0gcmVxdWlyZV9zY2FuKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzY2FuIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc2Nhbl8xLnNjYW47CiAgICB9IH0pOwogICAgdmFyIHNlcXVlbmNlRXF1YWxfMSA9IHJlcXVpcmVfc2VxdWVuY2VFcXVhbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2VxdWVuY2VFcXVhbCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHNlcXVlbmNlRXF1YWxfMS5zZXF1ZW5jZUVxdWFsOwogICAgfSB9KTsKICAgIHZhciBzaGFyZV8xID0gcmVxdWlyZV9zaGFyZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2hhcmUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzaGFyZV8xLnNoYXJlOwogICAgfSB9KTsKICAgIHZhciBzaGFyZVJlcGxheV8xID0gcmVxdWlyZV9zaGFyZVJlcGxheSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2hhcmVSZXBsYXkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzaGFyZVJlcGxheV8xLnNoYXJlUmVwbGF5OwogICAgfSB9KTsKICAgIHZhciBzaW5nbGVfMSA9IHJlcXVpcmVfc2luZ2xlKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzaW5nbGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzaW5nbGVfMS5zaW5nbGU7CiAgICB9IH0pOwogICAgdmFyIHNraXBfMSA9IHJlcXVpcmVfc2tpcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2tpcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHNraXBfMS5za2lwOwogICAgfSB9KTsKICAgIHZhciBza2lwTGFzdF8xID0gcmVxdWlyZV9za2lwTGFzdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic2tpcExhc3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBza2lwTGFzdF8xLnNraXBMYXN0OwogICAgfSB9KTsKICAgIHZhciBza2lwVW50aWxfMSA9IHJlcXVpcmVfc2tpcFVudGlsKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJza2lwVW50aWwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBza2lwVW50aWxfMS5za2lwVW50aWw7CiAgICB9IH0pOwogICAgdmFyIHNraXBXaGlsZV8xID0gcmVxdWlyZV9za2lwV2hpbGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInNraXBXaGlsZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHNraXBXaGlsZV8xLnNraXBXaGlsZTsKICAgIH0gfSk7CiAgICB2YXIgc3RhcnRXaXRoXzEgPSByZXF1aXJlX3N0YXJ0V2l0aCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3RhcnRXaXRoIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc3RhcnRXaXRoXzEuc3RhcnRXaXRoOwogICAgfSB9KTsKICAgIHZhciBzdWJzY3JpYmVPbl8xID0gcmVxdWlyZV9zdWJzY3JpYmVPbigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAic3Vic2NyaWJlT24iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzdWJzY3JpYmVPbl8xLnN1YnNjcmliZU9uOwogICAgfSB9KTsKICAgIHZhciBzd2l0Y2hBbGxfMSA9IHJlcXVpcmVfc3dpdGNoQWxsKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzd2l0Y2hBbGwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBzd2l0Y2hBbGxfMS5zd2l0Y2hBbGw7CiAgICB9IH0pOwogICAgdmFyIHN3aXRjaE1hcF8xID0gcmVxdWlyZV9zd2l0Y2hNYXAoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN3aXRjaE1hcCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHN3aXRjaE1hcF8xLnN3aXRjaE1hcDsKICAgIH0gfSk7CiAgICB2YXIgc3dpdGNoTWFwVG9fMSA9IHJlcXVpcmVfc3dpdGNoTWFwVG8oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN3aXRjaE1hcFRvIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc3dpdGNoTWFwVG9fMS5zd2l0Y2hNYXBUbzsKICAgIH0gfSk7CiAgICB2YXIgc3dpdGNoU2Nhbl8xID0gcmVxdWlyZV9zd2l0Y2hTY2FuKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJzd2l0Y2hTY2FuIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gc3dpdGNoU2Nhbl8xLnN3aXRjaFNjYW47CiAgICB9IH0pOwogICAgdmFyIHRha2VfMSA9IHJlcXVpcmVfdGFrZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidGFrZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRha2VfMS50YWtlOwogICAgfSB9KTsKICAgIHZhciB0YWtlTGFzdF8xID0gcmVxdWlyZV90YWtlTGFzdCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidGFrZUxhc3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0YWtlTGFzdF8xLnRha2VMYXN0OwogICAgfSB9KTsKICAgIHZhciB0YWtlVW50aWxfMSA9IHJlcXVpcmVfdGFrZVVudGlsKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0YWtlVW50aWwiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0YWtlVW50aWxfMS50YWtlVW50aWw7CiAgICB9IH0pOwogICAgdmFyIHRha2VXaGlsZV8xID0gcmVxdWlyZV90YWtlV2hpbGUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRha2VXaGlsZSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRha2VXaGlsZV8xLnRha2VXaGlsZTsKICAgIH0gfSk7CiAgICB2YXIgdGFwXzEgPSByZXF1aXJlX3RhcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidGFwIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGFwXzEudGFwOwogICAgfSB9KTsKICAgIHZhciB0aHJvdHRsZV8xID0gcmVxdWlyZV90aHJvdHRsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidGhyb3R0bGUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0aHJvdHRsZV8xLnRocm90dGxlOwogICAgfSB9KTsKICAgIHZhciB0aHJvdHRsZVRpbWVfMSA9IHJlcXVpcmVfdGhyb3R0bGVUaW1lKCk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJ0aHJvdHRsZVRpbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0aHJvdHRsZVRpbWVfMS50aHJvdHRsZVRpbWU7CiAgICB9IH0pOwogICAgdmFyIHRocm93SWZFbXB0eV8xID0gcmVxdWlyZV90aHJvd0lmRW1wdHkoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRocm93SWZFbXB0eSIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRocm93SWZFbXB0eV8xLnRocm93SWZFbXB0eTsKICAgIH0gfSk7CiAgICB2YXIgdGltZUludGVydmFsXzEgPSByZXF1aXJlX3RpbWVJbnRlcnZhbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidGltZUludGVydmFsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGltZUludGVydmFsXzEudGltZUludGVydmFsOwogICAgfSB9KTsKICAgIHZhciB0aW1lb3V0XzIgPSByZXF1aXJlX3RpbWVvdXQoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRpbWVvdXQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0aW1lb3V0XzIudGltZW91dDsKICAgIH0gfSk7CiAgICB2YXIgdGltZW91dFdpdGhfMSA9IHJlcXVpcmVfdGltZW91dFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRpbWVvdXRXaXRoIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGltZW91dFdpdGhfMS50aW1lb3V0V2l0aDsKICAgIH0gfSk7CiAgICB2YXIgdGltZXN0YW1wXzEgPSByZXF1aXJlX3RpbWVzdGFtcCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAidGltZXN0YW1wIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gdGltZXN0YW1wXzEudGltZXN0YW1wOwogICAgfSB9KTsKICAgIHZhciB0b0FycmF5XzEgPSByZXF1aXJlX3RvQXJyYXkoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInRvQXJyYXkiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0b0FycmF5XzEudG9BcnJheTsKICAgIH0gfSk7CiAgICB2YXIgd2luZG93XzEgPSByZXF1aXJlX3dpbmRvdygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAid2luZG93IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gd2luZG93XzEud2luZG93OwogICAgfSB9KTsKICAgIHZhciB3aW5kb3dDb3VudF8xID0gcmVxdWlyZV93aW5kb3dDb3VudCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAid2luZG93Q291bnQiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB3aW5kb3dDb3VudF8xLndpbmRvd0NvdW50OwogICAgfSB9KTsKICAgIHZhciB3aW5kb3dUaW1lXzEgPSByZXF1aXJlX3dpbmRvd1RpbWUoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIndpbmRvd1RpbWUiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB3aW5kb3dUaW1lXzEud2luZG93VGltZTsKICAgIH0gfSk7CiAgICB2YXIgd2luZG93VG9nZ2xlXzEgPSByZXF1aXJlX3dpbmRvd1RvZ2dsZSgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAid2luZG93VG9nZ2xlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gd2luZG93VG9nZ2xlXzEud2luZG93VG9nZ2xlOwogICAgfSB9KTsKICAgIHZhciB3aW5kb3dXaGVuXzEgPSByZXF1aXJlX3dpbmRvd1doZW4oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIndpbmRvd1doZW4iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB3aW5kb3dXaGVuXzEud2luZG93V2hlbjsKICAgIH0gfSk7CiAgICB2YXIgd2l0aExhdGVzdEZyb21fMSA9IHJlcXVpcmVfd2l0aExhdGVzdEZyb20oKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIndpdGhMYXRlc3RGcm9tIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gd2l0aExhdGVzdEZyb21fMS53aXRoTGF0ZXN0RnJvbTsKICAgIH0gfSk7CiAgICB2YXIgemlwQWxsXzEgPSByZXF1aXJlX3ppcEFsbCgpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiemlwQWxsIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gemlwQWxsXzEuemlwQWxsOwogICAgfSB9KTsKICAgIHZhciB6aXBXaXRoXzEgPSByZXF1aXJlX3ppcFdpdGgoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInppcFdpdGgiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB6aXBXaXRoXzEuemlwV2l0aDsKICAgIH0gfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9leGNlcHRpb24uanMKdmFyIHJlcXVpcmVfZXhjZXB0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9leGNlcHRpb24uanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlBhdGhJc0ZpbGVFeGNlcHRpb24gPSBleHBvcnRzMi5QYXRoSXNEaXJlY3RvcnlFeGNlcHRpb24gPSBleHBvcnRzMi5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uID0gZXhwb3J0czIuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbiA9IGV4cG9ydHMyLlVua25vd25FeGNlcHRpb24gPSBleHBvcnRzMi5CYXNlRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIEJhc2VFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIEVycm9yIHsKICAgICAgY29uc3RydWN0b3IobWVzc2FnZSA9ICIiKSB7CiAgICAgICAgc3VwZXIobWVzc2FnZSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5CYXNlRXhjZXB0aW9uID0gQmFzZUV4Y2VwdGlvbjsKICAgIHZhciBVbmtub3duRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBCYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobWVzc2FnZSkgewogICAgICAgIHN1cGVyKG1lc3NhZ2UpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVW5rbm93bkV4Y2VwdGlvbiA9IFVua25vd25FeGNlcHRpb247CiAgICB2YXIgRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgUGF0aCAiJHtwYXRofSIgZG9lcyBub3QgZXhpc3QuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uID0gRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbjsKICAgIHZhciBGaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBCYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IocGF0aCkgewogICAgICAgIHN1cGVyKGBQYXRoICIke3BhdGh9IiBhbHJlYWR5IGV4aXN0LmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRmlsZUFscmVhZHlFeGlzdEV4Y2VwdGlvbiA9IEZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb247CiAgICB2YXIgUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBCYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IocGF0aCkgewogICAgICAgIHN1cGVyKGBQYXRoICIke3BhdGh9IiBpcyBhIGRpcmVjdG9yeS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlBhdGhJc0RpcmVjdG9yeUV4Y2VwdGlvbiA9IFBhdGhJc0RpcmVjdG9yeUV4Y2VwdGlvbjsKICAgIHZhciBQYXRoSXNGaWxlRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBCYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IocGF0aCkgewogICAgICAgIHN1cGVyKGBQYXRoICIke3BhdGh9IiBpcyBhIGZpbGUuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5QYXRoSXNGaWxlRXhjZXB0aW9uID0gUGF0aElzRmlsZUV4Y2VwdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2xpdGVyYWxzLmpzCnZhciByZXF1aXJlX2xpdGVyYWxzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9saXRlcmFscy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIub25lTGluZSA9IG9uZUxpbmU7CiAgICBleHBvcnRzMi5pbmRlbnRCeSA9IGluZGVudEJ5OwogICAgZXhwb3J0czIuc3RyaXBJbmRlbnQgPSBzdHJpcEluZGVudDsKICAgIGV4cG9ydHMyLnN0cmlwSW5kZW50cyA9IHN0cmlwSW5kZW50czsKICAgIGV4cG9ydHMyLnRyaW1OZXdsaW5lcyA9IHRyaW1OZXdsaW5lczsKICAgIGZ1bmN0aW9uIG9uZUxpbmUoc3RyaW5nczMsIC4uLnZhbHVlcykgewogICAgICBjb25zdCBlbmRSZXN1bHQgPSBTdHJpbmcucmF3KHN0cmluZ3MzLCAuLi52YWx1ZXMpOwogICAgICByZXR1cm4gZW5kUmVzdWx0LnJlcGxhY2UoLyg/OlxyP1xuKD86XHMqKSkrL2dtLCAiICIpLnRyaW0oKTsKICAgIH0KICAgIGZ1bmN0aW9uIGluZGVudEJ5KGluZGVudGF0aW9ucykgewogICAgICBsZXQgaSA9ICIiOwogICAgICB3aGlsZSAoaW5kZW50YXRpb25zLS0pIHsKICAgICAgICBpICs9ICIgIjsKICAgICAgfQogICAgICByZXR1cm4gKHN0cmluZ3MzLCAuLi52YWx1ZXMpID0+IHsKICAgICAgICByZXR1cm4gaSArIHN0cmlwSW5kZW50KHN0cmluZ3MzLCAuLi52YWx1ZXMpLnJlcGxhY2UoL1xuL2csICJcbiIgKyBpKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHN0cmlwSW5kZW50KHN0cmluZ3MzLCAuLi52YWx1ZXMpIHsKICAgICAgY29uc3QgZW5kUmVzdWx0ID0gU3RyaW5nLnJhdyhzdHJpbmdzMywgLi4udmFsdWVzKTsKICAgICAgY29uc3QgbWF0Y2ggPSBlbmRSZXN1bHQubWF0Y2goL15bIFx0XSooPz1cUykvZ20pOwogICAgICBpZiAobWF0Y2ggPT09IG51bGwpIHsKICAgICAgICByZXR1cm4gZW5kUmVzdWx0OwogICAgICB9CiAgICAgIGNvbnN0IGluZGVudCA9IE1hdGgubWluKC4uLm1hdGNoLm1hcCgoZWwpID0+IGVsLmxlbmd0aCkpOwogICAgICBjb25zdCByZWdleHAgPSBuZXcgUmVnRXhwKCJeWyBcXHRdeyIgKyBpbmRlbnQgKyAifSIsICJnbSIpOwogICAgICByZXR1cm4gKGluZGVudCA+IDAgPyBlbmRSZXN1bHQucmVwbGFjZShyZWdleHAsICIiKSA6IGVuZFJlc3VsdCkudHJpbSgpOwogICAgfQogICAgZnVuY3Rpb24gc3RyaXBJbmRlbnRzKHN0cmluZ3MzLCAuLi52YWx1ZXMpIHsKICAgICAgcmV0dXJuIFN0cmluZy5yYXcoc3RyaW5nczMsIC4uLnZhbHVlcykuc3BsaXQoIlxuIikubWFwKChsaW5lKSA9PiBsaW5lLnRyaW0oKSkuam9pbigiXG4iKS50cmltKCk7CiAgICB9CiAgICBmdW5jdGlvbiB0cmltTmV3bGluZXMoc3RyaW5nczMsIC4uLnZhbHVlcykgewogICAgICBjb25zdCBlbmRSZXN1bHQgPSBTdHJpbmcucmF3KHN0cmluZ3MzLCAuLi52YWx1ZXMpOwogICAgICByZXR1cm4gZW5kUmVzdWx0LnJlcGxhY2UoL14oPzpccj9cbikrLywgIiIpLnJlcGxhY2UoLyg/OlxyP1xuKD86XHMqKSkkLywgIiIpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvc3RyaW5ncy5qcwp2YXIgcmVxdWlyZV9zdHJpbmdzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9zdHJpbmdzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWNhbWVsaXplID0gZGVjYW1lbGl6ZTsKICAgIGV4cG9ydHMyLmRhc2hlcml6ZSA9IGRhc2hlcml6ZTsKICAgIGV4cG9ydHMyLmNhbWVsaXplID0gY2FtZWxpemU7CiAgICBleHBvcnRzMi5jbGFzc2lmeSA9IGNsYXNzaWZ5OwogICAgZXhwb3J0czIudW5kZXJzY29yZSA9IHVuZGVyc2NvcmU7CiAgICBleHBvcnRzMi5jYXBpdGFsaXplID0gY2FwaXRhbGl6ZTsKICAgIGV4cG9ydHMyLmxldmVuc2h0ZWluID0gbGV2ZW5zaHRlaW47CiAgICB2YXIgU1RSSU5HX0RBU0hFUklaRV9SRUdFWFAgPSAvWyBfXS9nOwogICAgdmFyIFNUUklOR19ERUNBTUVMSVpFX1JFR0VYUCA9IC8oW2EtelxkXSkoW0EtWl0pL2c7CiAgICB2YXIgU1RSSU5HX0NBTUVMSVpFX1JFR0VYUCA9IC8oLXxffFwufFxzKSsoLik/L2c7CiAgICB2YXIgU1RSSU5HX1VOREVSU0NPUkVfUkVHRVhQXzEgPSAvKFthLXpcZF0pKFtBLVpdKykvZzsKICAgIHZhciBTVFJJTkdfVU5ERVJTQ09SRV9SRUdFWFBfMiA9IC8tfFxzKy9nOwogICAgZnVuY3Rpb24gZGVjYW1lbGl6ZShzdHIpIHsKICAgICAgcmV0dXJuIHN0ci5yZXBsYWNlKFNUUklOR19ERUNBTUVMSVpFX1JFR0VYUCwgIiQxXyQyIikudG9Mb3dlckNhc2UoKTsKICAgIH0KICAgIGZ1bmN0aW9uIGRhc2hlcml6ZShzdHIpIHsKICAgICAgcmV0dXJuIGRlY2FtZWxpemUoc3RyKS5yZXBsYWNlKFNUUklOR19EQVNIRVJJWkVfUkVHRVhQLCAiLSIpOwogICAgfQogICAgZnVuY3Rpb24gY2FtZWxpemUoc3RyKSB7CiAgICAgIHJldHVybiBzdHIucmVwbGFjZShTVFJJTkdfQ0FNRUxJWkVfUkVHRVhQLCAoX21hdGNoLCBfc2VwYXJhdG9yLCBjaHIpID0+IHsKICAgICAgICByZXR1cm4gY2hyID8gY2hyLnRvVXBwZXJDYXNlKCkgOiAiIjsKICAgICAgfSkucmVwbGFjZSgvXihbQS1aXSkvLCAobWF0Y2gpID0+IG1hdGNoLnRvTG93ZXJDYXNlKCkpOwogICAgfQogICAgZnVuY3Rpb24gY2xhc3NpZnkoc3RyKSB7CiAgICAgIHJldHVybiBzdHIuc3BsaXQoIi4iKS5tYXAoKHBhcnQpID0+IGNhcGl0YWxpemUoY2FtZWxpemUocGFydCkpKS5qb2luKCIiKTsKICAgIH0KICAgIGZ1bmN0aW9uIHVuZGVyc2NvcmUoc3RyKSB7CiAgICAgIHJldHVybiBzdHIucmVwbGFjZShTVFJJTkdfVU5ERVJTQ09SRV9SRUdFWFBfMSwgIiQxXyQyIikucmVwbGFjZShTVFJJTkdfVU5ERVJTQ09SRV9SRUdFWFBfMiwgIl8iKS50b0xvd2VyQ2FzZSgpOwogICAgfQogICAgZnVuY3Rpb24gY2FwaXRhbGl6ZShzdHIpIHsKICAgICAgcmV0dXJuIHN0ci5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHN0ci5zbGljZSgxKTsKICAgIH0KICAgIGZ1bmN0aW9uIGxldmVuc2h0ZWluKGEsIGIpIHsKICAgICAgaWYgKGEubGVuZ3RoID09IDApIHsKICAgICAgICByZXR1cm4gYi5sZW5ndGg7CiAgICAgIH0KICAgICAgaWYgKGIubGVuZ3RoID09IDApIHsKICAgICAgICByZXR1cm4gYS5sZW5ndGg7CiAgICAgIH0KICAgICAgY29uc3QgbWF0cml4ID0gW107CiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDw9IGIubGVuZ3RoOyBpKyspIHsKICAgICAgICBtYXRyaXhbaV0gPSBbaV07CiAgICAgIH0KICAgICAgZm9yIChsZXQgaiA9IDA7IGogPD0gYS5sZW5ndGg7IGorKykgewogICAgICAgIG1hdHJpeFswXVtqXSA9IGo7CiAgICAgIH0KICAgICAgZm9yIChsZXQgaSA9IDE7IGkgPD0gYi5sZW5ndGg7IGkrKykgewogICAgICAgIGZvciAobGV0IGogPSAxOyBqIDw9IGEubGVuZ3RoOyBqKyspIHsKICAgICAgICAgIGlmIChiLmNoYXJBdChpIC0gMSkgPT0gYS5jaGFyQXQoaiAtIDEpKSB7CiAgICAgICAgICAgIG1hdHJpeFtpXVtqXSA9IG1hdHJpeFtpIC0gMV1baiAtIDFdOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgbWF0cml4W2ldW2pdID0gTWF0aC5taW4oCiAgICAgICAgICAgICAgbWF0cml4W2kgLSAxXVtqIC0gMV0gKyAxLAogICAgICAgICAgICAgIC8vIHN1YnN0aXR1dGlvbgogICAgICAgICAgICAgIG1hdHJpeFtpXVtqIC0gMV0gKyAxLAogICAgICAgICAgICAgIC8vIGluc2VydGlvbgogICAgICAgICAgICAgIG1hdHJpeFtpIC0gMV1bal0gKyAxCiAgICAgICAgICAgICk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBtYXRyaXhbYi5sZW5ndGhdW2EubGVuZ3RoXTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL29iamVjdC5qcwp2YXIgcmVxdWlyZV9vYmplY3QgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL29iamVjdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZGVlcENvcHkgPSBkZWVwQ29weTsKICAgIHZhciBjb3B5U3ltYm9sID0gU3ltYm9sKCk7CiAgICBmdW5jdGlvbiBkZWVwQ29weSh2YWx1ZSkgewogICAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHsKICAgICAgICByZXR1cm4gdmFsdWUubWFwKChvKSA9PiBkZWVwQ29weShvKSk7CiAgICAgIH0gZWxzZSBpZiAodmFsdWUgJiYgdHlwZW9mIHZhbHVlID09PSAib2JqZWN0IikgewogICAgICAgIGNvbnN0IHZhbHVlQ2FzdGVkID0gdmFsdWU7CiAgICAgICAgaWYgKHZhbHVlQ2FzdGVkW2NvcHlTeW1ib2xdKSB7CiAgICAgICAgICByZXR1cm4gdmFsdWVDYXN0ZWRbY29weVN5bWJvbF07CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZUNhc3RlZFsidG9KU09OIl0pIHsKICAgICAgICAgIHJldHVybiBKU09OLnBhcnNlKHZhbHVlQ2FzdGVkWyJ0b0pTT04iXSgpKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgY29weSA9IE9iamVjdC5jcmVhdGUoT2JqZWN0LmdldFByb3RvdHlwZU9mKHZhbHVlQ2FzdGVkKSk7CiAgICAgICAgdmFsdWVDYXN0ZWRbY29weVN5bWJvbF0gPSBjb3B5OwogICAgICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHZhbHVlQ2FzdGVkKSkgewogICAgICAgICAgY29weVtrZXldID0gZGVlcENvcHkodmFsdWVDYXN0ZWRba2V5XSk7CiAgICAgICAgfQogICAgICAgIGRlbGV0ZSB2YWx1ZUNhc3RlZFtjb3B5U3ltYm9sXTsKICAgICAgICByZXR1cm4gY29weTsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgIH0KICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL2Jhc2U2NC5qcwp2YXIgcmVxdWlyZV9iYXNlNjQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL2Jhc2U2NC5qcyIoZXhwb3J0czIpIHsKICAgIHZhciBpbnRUb0NoYXJNYXAgPSAiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLyIuc3BsaXQoIiIpOwogICAgZXhwb3J0czIuZW5jb2RlID0gZnVuY3Rpb24obnVtYmVyKSB7CiAgICAgIGlmICgwIDw9IG51bWJlciAmJiBudW1iZXIgPCBpbnRUb0NoYXJNYXAubGVuZ3RoKSB7CiAgICAgICAgcmV0dXJuIGludFRvQ2hhck1hcFtudW1iZXJdOwogICAgICB9CiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIk11c3QgYmUgYmV0d2VlbiAwIGFuZCA2MzogIiArIG51bWJlcik7CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvYmFzZTY0LXZscS5qcwp2YXIgcmVxdWlyZV9iYXNlNjRfdmxxID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9iYXNlNjQtdmxxLmpzIihleHBvcnRzMikgewogICAgdmFyIGJhc2U2NCA9IHJlcXVpcmVfYmFzZTY0KCk7CiAgICB2YXIgVkxRX0JBU0VfU0hJRlQgPSA1OwogICAgdmFyIFZMUV9CQVNFID0gMSA8PCBWTFFfQkFTRV9TSElGVDsKICAgIHZhciBWTFFfQkFTRV9NQVNLID0gVkxRX0JBU0UgLSAxOwogICAgdmFyIFZMUV9DT05USU5VQVRJT05fQklUID0gVkxRX0JBU0U7CiAgICBmdW5jdGlvbiB0b1ZMUVNpZ25lZChhVmFsdWUpIHsKICAgICAgcmV0dXJuIGFWYWx1ZSA8IDAgPyAoLWFWYWx1ZSA8PCAxKSArIDEgOiAoYVZhbHVlIDw8IDEpICsgMDsKICAgIH0KICAgIGV4cG9ydHMyLmVuY29kZSA9IGZ1bmN0aW9uIGJhc2U2NFZMUV9lbmNvZGUoYVZhbHVlKSB7CiAgICAgIGxldCBlbmNvZGVkID0gIiI7CiAgICAgIGxldCBkaWdpdDsKICAgICAgbGV0IHZscSA9IHRvVkxRU2lnbmVkKGFWYWx1ZSk7CiAgICAgIGRvIHsKICAgICAgICBkaWdpdCA9IHZscSAmIFZMUV9CQVNFX01BU0s7CiAgICAgICAgdmxxID4+Pj0gVkxRX0JBU0VfU0hJRlQ7CiAgICAgICAgaWYgKHZscSA+IDApIHsKICAgICAgICAgIGRpZ2l0IHw9IFZMUV9DT05USU5VQVRJT05fQklUOwogICAgICAgIH0KICAgICAgICBlbmNvZGVkICs9IGJhc2U2NC5lbmNvZGUoZGlnaXQpOwogICAgICB9IHdoaWxlICh2bHEgPiAwKTsKICAgICAgcmV0dXJuIGVuY29kZWQ7CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvdXRpbC5qcwp2YXIgcmVxdWlyZV91dGlsMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvdXRpbC5qcyIoZXhwb3J0czIpIHsKICAgIGZ1bmN0aW9uIGdldEFyZyhhQXJncywgYU5hbWUsIGFEZWZhdWx0VmFsdWUpIHsKICAgICAgaWYgKGFOYW1lIGluIGFBcmdzKSB7CiAgICAgICAgcmV0dXJuIGFBcmdzW2FOYW1lXTsKICAgICAgfSBlbHNlIGlmIChhcmd1bWVudHMubGVuZ3RoID09PSAzKSB7CiAgICAgICAgcmV0dXJuIGFEZWZhdWx0VmFsdWU7CiAgICAgIH0KICAgICAgdGhyb3cgbmV3IEVycm9yKCciJyArIGFOYW1lICsgJyIgaXMgYSByZXF1aXJlZCBhcmd1bWVudC4nKTsKICAgIH0KICAgIGV4cG9ydHMyLmdldEFyZyA9IGdldEFyZzsKICAgIHZhciB1cmxSZWdleHAgPSAvXig/OihbXHcrXC0uXSspOik/XC9cLyg/Oihcdys6XHcrKUApPyhbXHcuLV0qKSg/OjooXGQrKSk/KC4qKSQvOwogICAgdmFyIGRhdGFVcmxSZWdleHAgPSAvXmRhdGE6LitcLC4rJC87CiAgICBmdW5jdGlvbiB1cmxQYXJzZShhVXJsKSB7CiAgICAgIGNvbnN0IG1hdGNoID0gYVVybC5tYXRjaCh1cmxSZWdleHApOwogICAgICBpZiAoIW1hdGNoKSB7CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgIH0KICAgICAgcmV0dXJuIHsKICAgICAgICBzY2hlbWU6IG1hdGNoWzFdLAogICAgICAgIGF1dGg6IG1hdGNoWzJdLAogICAgICAgIGhvc3Q6IG1hdGNoWzNdLAogICAgICAgIHBvcnQ6IG1hdGNoWzRdLAogICAgICAgIHBhdGg6IG1hdGNoWzVdCiAgICAgIH07CiAgICB9CiAgICBleHBvcnRzMi51cmxQYXJzZSA9IHVybFBhcnNlOwogICAgZnVuY3Rpb24gdXJsR2VuZXJhdGUoYVBhcnNlZFVybCkgewogICAgICBsZXQgdXJsMyA9ICIiOwogICAgICBpZiAoYVBhcnNlZFVybC5zY2hlbWUpIHsKICAgICAgICB1cmwzICs9IGFQYXJzZWRVcmwuc2NoZW1lICsgIjoiOwogICAgICB9CiAgICAgIHVybDMgKz0gIi8vIjsKICAgICAgaWYgKGFQYXJzZWRVcmwuYXV0aCkgewogICAgICAgIHVybDMgKz0gYVBhcnNlZFVybC5hdXRoICsgIkAiOwogICAgICB9CiAgICAgIGlmIChhUGFyc2VkVXJsLmhvc3QpIHsKICAgICAgICB1cmwzICs9IGFQYXJzZWRVcmwuaG9zdDsKICAgICAgfQogICAgICBpZiAoYVBhcnNlZFVybC5wb3J0KSB7CiAgICAgICAgdXJsMyArPSAiOiIgKyBhUGFyc2VkVXJsLnBvcnQ7CiAgICAgIH0KICAgICAgaWYgKGFQYXJzZWRVcmwucGF0aCkgewogICAgICAgIHVybDMgKz0gYVBhcnNlZFVybC5wYXRoOwogICAgICB9CiAgICAgIHJldHVybiB1cmwzOwogICAgfQogICAgZXhwb3J0czIudXJsR2VuZXJhdGUgPSB1cmxHZW5lcmF0ZTsKICAgIHZhciBNQVhfQ0FDSEVEX0lOUFVUUyA9IDMyOwogICAgZnVuY3Rpb24gbHJ1TWVtb2l6ZShmKSB7CiAgICAgIGNvbnN0IGNhY2hlID0gW107CiAgICAgIHJldHVybiBmdW5jdGlvbihpbnB1dCkgewogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY2FjaGUubGVuZ3RoOyBpKyspIHsKICAgICAgICAgIGlmIChjYWNoZVtpXS5pbnB1dCA9PT0gaW5wdXQpIHsKICAgICAgICAgICAgY29uc3QgdGVtcCA9IGNhY2hlWzBdOwogICAgICAgICAgICBjYWNoZVswXSA9IGNhY2hlW2ldOwogICAgICAgICAgICBjYWNoZVtpXSA9IHRlbXA7CiAgICAgICAgICAgIHJldHVybiBjYWNoZVswXS5yZXN1bHQ7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IHJlc3VsdCA9IGYoaW5wdXQpOwogICAgICAgIGNhY2hlLnVuc2hpZnQoewogICAgICAgICAgaW5wdXQsCiAgICAgICAgICByZXN1bHQKICAgICAgICB9KTsKICAgICAgICBpZiAoY2FjaGUubGVuZ3RoID4gTUFYX0NBQ0hFRF9JTlBVVFMpIHsKICAgICAgICAgIGNhY2hlLnBvcCgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9OwogICAgfQogICAgdmFyIG5vcm1hbGl6ZSA9IGxydU1lbW9pemUoZnVuY3Rpb24gbm9ybWFsaXplMihhUGF0aCkgewogICAgICBsZXQgcGF0aCA9IGFQYXRoOwogICAgICBjb25zdCB1cmwzID0gdXJsUGFyc2UoYVBhdGgpOwogICAgICBpZiAodXJsMykgewogICAgICAgIGlmICghdXJsMy5wYXRoKSB7CiAgICAgICAgICByZXR1cm4gYVBhdGg7CiAgICAgICAgfQogICAgICAgIHBhdGggPSB1cmwzLnBhdGg7CiAgICAgIH0KICAgICAgY29uc3QgaXNBYnNvbHV0ZSA9IGV4cG9ydHMyLmlzQWJzb2x1dGUocGF0aCk7CiAgICAgIGNvbnN0IHBhcnRzID0gW107CiAgICAgIGxldCBzdGFydCA9IDA7CiAgICAgIGxldCBpID0gMDsKICAgICAgd2hpbGUgKHRydWUpIHsKICAgICAgICBzdGFydCA9IGk7CiAgICAgICAgaSA9IHBhdGguaW5kZXhPZigiLyIsIHN0YXJ0KTsKICAgICAgICBpZiAoaSA9PT0gLTEpIHsKICAgICAgICAgIHBhcnRzLnB1c2gocGF0aC5zbGljZShzdGFydCkpOwogICAgICAgICAgYnJlYWs7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHBhcnRzLnB1c2gocGF0aC5zbGljZShzdGFydCwgaSkpOwogICAgICAgICAgd2hpbGUgKGkgPCBwYXRoLmxlbmd0aCAmJiBwYXRoW2ldID09PSAiLyIpIHsKICAgICAgICAgICAgaSsrOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgICBsZXQgdXAgPSAwOwogICAgICBmb3IgKGkgPSBwYXJ0cy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkgewogICAgICAgIGNvbnN0IHBhcnQgPSBwYXJ0c1tpXTsKICAgICAgICBpZiAocGFydCA9PT0gIi4iKSB7CiAgICAgICAgICBwYXJ0cy5zcGxpY2UoaSwgMSk7CiAgICAgICAgfSBlbHNlIGlmIChwYXJ0ID09PSAiLi4iKSB7CiAgICAgICAgICB1cCsrOwogICAgICAgIH0gZWxzZSBpZiAodXAgPiAwKSB7CiAgICAgICAgICBpZiAocGFydCA9PT0gIiIpIHsKICAgICAgICAgICAgcGFydHMuc3BsaWNlKGkgKyAxLCB1cCk7CiAgICAgICAgICAgIHVwID0gMDsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHBhcnRzLnNwbGljZShpLCAyKTsKICAgICAgICAgICAgdXAtLTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgcGF0aCA9IHBhcnRzLmpvaW4oIi8iKTsKICAgICAgaWYgKHBhdGggPT09ICIiKSB7CiAgICAgICAgcGF0aCA9IGlzQWJzb2x1dGUgPyAiLyIgOiAiLiI7CiAgICAgIH0KICAgICAgaWYgKHVybDMpIHsKICAgICAgICB1cmwzLnBhdGggPSBwYXRoOwogICAgICAgIHJldHVybiB1cmxHZW5lcmF0ZSh1cmwzKTsKICAgICAgfQogICAgICByZXR1cm4gcGF0aDsKICAgIH0pOwogICAgZXhwb3J0czIubm9ybWFsaXplID0gbm9ybWFsaXplOwogICAgZnVuY3Rpb24gam9pbjIoYVJvb3QsIGFQYXRoKSB7CiAgICAgIGlmIChhUm9vdCA9PT0gIiIpIHsKICAgICAgICBhUm9vdCA9ICIuIjsKICAgICAgfQogICAgICBpZiAoYVBhdGggPT09ICIiKSB7CiAgICAgICAgYVBhdGggPSAiLiI7CiAgICAgIH0KICAgICAgY29uc3QgYVBhdGhVcmwgPSB1cmxQYXJzZShhUGF0aCk7CiAgICAgIGNvbnN0IGFSb290VXJsID0gdXJsUGFyc2UoYVJvb3QpOwogICAgICBpZiAoYVJvb3RVcmwpIHsKICAgICAgICBhUm9vdCA9IGFSb290VXJsLnBhdGggfHwgIi8iOwogICAgICB9CiAgICAgIGlmIChhUGF0aFVybCAmJiAhYVBhdGhVcmwuc2NoZW1lKSB7CiAgICAgICAgaWYgKGFSb290VXJsKSB7CiAgICAgICAgICBhUGF0aFVybC5zY2hlbWUgPSBhUm9vdFVybC5zY2hlbWU7CiAgICAgICAgfQogICAgICAgIHJldHVybiB1cmxHZW5lcmF0ZShhUGF0aFVybCk7CiAgICAgIH0KICAgICAgaWYgKGFQYXRoVXJsIHx8IGFQYXRoLm1hdGNoKGRhdGFVcmxSZWdleHApKSB7CiAgICAgICAgcmV0dXJuIGFQYXRoOwogICAgICB9CiAgICAgIGlmIChhUm9vdFVybCAmJiAhYVJvb3RVcmwuaG9zdCAmJiAhYVJvb3RVcmwucGF0aCkgewogICAgICAgIGFSb290VXJsLmhvc3QgPSBhUGF0aDsKICAgICAgICByZXR1cm4gdXJsR2VuZXJhdGUoYVJvb3RVcmwpOwogICAgICB9CiAgICAgIGNvbnN0IGpvaW5lZCA9IGFQYXRoLmNoYXJBdCgwKSA9PT0gIi8iID8gYVBhdGggOiBub3JtYWxpemUoYVJvb3QucmVwbGFjZSgvXC8rJC8sICIiKSArICIvIiArIGFQYXRoKTsKICAgICAgaWYgKGFSb290VXJsKSB7CiAgICAgICAgYVJvb3RVcmwucGF0aCA9IGpvaW5lZDsKICAgICAgICByZXR1cm4gdXJsR2VuZXJhdGUoYVJvb3RVcmwpOwogICAgICB9CiAgICAgIHJldHVybiBqb2luZWQ7CiAgICB9CiAgICBleHBvcnRzMi5qb2luID0gam9pbjI7CiAgICBleHBvcnRzMi5pc0Fic29sdXRlID0gZnVuY3Rpb24oYVBhdGgpIHsKICAgICAgcmV0dXJuIGFQYXRoLmNoYXJBdCgwKSA9PT0gIi8iIHx8IHVybFJlZ2V4cC50ZXN0KGFQYXRoKTsKICAgIH07CiAgICBmdW5jdGlvbiByZWxhdGl2ZShhUm9vdCwgYVBhdGgpIHsKICAgICAgaWYgKGFSb290ID09PSAiIikgewogICAgICAgIGFSb290ID0gIi4iOwogICAgICB9CiAgICAgIGFSb290ID0gYVJvb3QucmVwbGFjZSgvXC8kLywgIiIpOwogICAgICBsZXQgbGV2ZWwgPSAwOwogICAgICB3aGlsZSAoYVBhdGguaW5kZXhPZihhUm9vdCArICIvIikgIT09IDApIHsKICAgICAgICBjb25zdCBpbmRleCA9IGFSb290Lmxhc3RJbmRleE9mKCIvIik7CiAgICAgICAgaWYgKGluZGV4IDwgMCkgewogICAgICAgICAgcmV0dXJuIGFQYXRoOwogICAgICAgIH0KICAgICAgICBhUm9vdCA9IGFSb290LnNsaWNlKDAsIGluZGV4KTsKICAgICAgICBpZiAoYVJvb3QubWF0Y2goL14oW15cL10rOlwvKT9cLyokLykpIHsKICAgICAgICAgIHJldHVybiBhUGF0aDsKICAgICAgICB9CiAgICAgICAgKytsZXZlbDsKICAgICAgfQogICAgICByZXR1cm4gQXJyYXkobGV2ZWwgKyAxKS5qb2luKCIuLi8iKSArIGFQYXRoLnN1YnN0cihhUm9vdC5sZW5ndGggKyAxKTsKICAgIH0KICAgIGV4cG9ydHMyLnJlbGF0aXZlID0gcmVsYXRpdmU7CiAgICB2YXIgc3VwcG9ydHNOdWxsUHJvdG8gPSBmdW5jdGlvbigpIHsKICAgICAgY29uc3Qgb2JqID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgIHJldHVybiAhKCJfX3Byb3RvX18iIGluIG9iaik7CiAgICB9KCk7CiAgICBmdW5jdGlvbiBpZGVudGl0eShzKSB7CiAgICAgIHJldHVybiBzOwogICAgfQogICAgZnVuY3Rpb24gdG9TZXRTdHJpbmcoYVN0cikgewogICAgICBpZiAoaXNQcm90b1N0cmluZyhhU3RyKSkgewogICAgICAgIHJldHVybiAiJCIgKyBhU3RyOwogICAgICB9CiAgICAgIHJldHVybiBhU3RyOwogICAgfQogICAgZXhwb3J0czIudG9TZXRTdHJpbmcgPSBzdXBwb3J0c051bGxQcm90byA/IGlkZW50aXR5IDogdG9TZXRTdHJpbmc7CiAgICBmdW5jdGlvbiBmcm9tU2V0U3RyaW5nKGFTdHIpIHsKICAgICAgaWYgKGlzUHJvdG9TdHJpbmcoYVN0cikpIHsKICAgICAgICByZXR1cm4gYVN0ci5zbGljZSgxKTsKICAgICAgfQogICAgICByZXR1cm4gYVN0cjsKICAgIH0KICAgIGV4cG9ydHMyLmZyb21TZXRTdHJpbmcgPSBzdXBwb3J0c051bGxQcm90byA/IGlkZW50aXR5IDogZnJvbVNldFN0cmluZzsKICAgIGZ1bmN0aW9uIGlzUHJvdG9TdHJpbmcocykgewogICAgICBpZiAoIXMpIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgICAgY29uc3QgbGVuZ3RoID0gcy5sZW5ndGg7CiAgICAgIGlmIChsZW5ndGggPCA5KSB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICAgIGlmIChzLmNoYXJDb2RlQXQobGVuZ3RoIC0gMSkgIT09IDk1IHx8IHMuY2hhckNvZGVBdChsZW5ndGggLSAyKSAhPT0gOTUgfHwgcy5jaGFyQ29kZUF0KGxlbmd0aCAtIDMpICE9PSAxMTEgfHwgcy5jaGFyQ29kZUF0KGxlbmd0aCAtIDQpICE9PSAxMTYgfHwgcy5jaGFyQ29kZUF0KGxlbmd0aCAtIDUpICE9PSAxMTEgfHwgcy5jaGFyQ29kZUF0KGxlbmd0aCAtIDYpICE9PSAxMTQgfHwgcy5jaGFyQ29kZUF0KGxlbmd0aCAtIDcpICE9PSAxMTIgfHwgcy5jaGFyQ29kZUF0KGxlbmd0aCAtIDgpICE9PSA5NSB8fCBzLmNoYXJDb2RlQXQobGVuZ3RoIC0gOSkgIT09IDk1KSB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICAgIGZvciAobGV0IGkgPSBsZW5ndGggLSAxMDsgaSA+PSAwOyBpLS0pIHsKICAgICAgICBpZiAocy5jaGFyQ29kZUF0KGkpICE9PSAzNikgewogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gdHJ1ZTsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbXBhcmVCeU9yaWdpbmFsUG9zaXRpb25zKG1hcHBpbmdBLCBtYXBwaW5nQiwgb25seUNvbXBhcmVPcmlnaW5hbCkgewogICAgICBsZXQgY21wID0gc3RyY21wKG1hcHBpbmdBLnNvdXJjZSwgbWFwcGluZ0Iuc291cmNlKTsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgY21wID0gbWFwcGluZ0Eub3JpZ2luYWxMaW5lIC0gbWFwcGluZ0Iub3JpZ2luYWxMaW5lOwogICAgICBpZiAoY21wICE9PSAwKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICBjbXAgPSBtYXBwaW5nQS5vcmlnaW5hbENvbHVtbiAtIG1hcHBpbmdCLm9yaWdpbmFsQ29sdW1uOwogICAgICBpZiAoY21wICE9PSAwIHx8IG9ubHlDb21wYXJlT3JpZ2luYWwpIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLmdlbmVyYXRlZENvbHVtbiAtIG1hcHBpbmdCLmdlbmVyYXRlZENvbHVtbjsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgY21wID0gbWFwcGluZ0EuZ2VuZXJhdGVkTGluZSAtIG1hcHBpbmdCLmdlbmVyYXRlZExpbmU7CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIHJldHVybiBzdHJjbXAobWFwcGluZ0EubmFtZSwgbWFwcGluZ0IubmFtZSk7CiAgICB9CiAgICBleHBvcnRzMi5jb21wYXJlQnlPcmlnaW5hbFBvc2l0aW9ucyA9IGNvbXBhcmVCeU9yaWdpbmFsUG9zaXRpb25zOwogICAgZnVuY3Rpb24gY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zRGVmbGF0ZWQobWFwcGluZ0EsIG1hcHBpbmdCLCBvbmx5Q29tcGFyZUdlbmVyYXRlZCkgewogICAgICBsZXQgY21wID0gbWFwcGluZ0EuZ2VuZXJhdGVkTGluZSAtIG1hcHBpbmdCLmdlbmVyYXRlZExpbmU7CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLmdlbmVyYXRlZENvbHVtbiAtIG1hcHBpbmdCLmdlbmVyYXRlZENvbHVtbjsKICAgICAgaWYgKGNtcCAhPT0gMCB8fCBvbmx5Q29tcGFyZUdlbmVyYXRlZCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgY21wID0gc3RyY21wKG1hcHBpbmdBLnNvdXJjZSwgbWFwcGluZ0Iuc291cmNlKTsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgY21wID0gbWFwcGluZ0Eub3JpZ2luYWxMaW5lIC0gbWFwcGluZ0Iub3JpZ2luYWxMaW5lOwogICAgICBpZiAoY21wICE9PSAwKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICBjbXAgPSBtYXBwaW5nQS5vcmlnaW5hbENvbHVtbiAtIG1hcHBpbmdCLm9yaWdpbmFsQ29sdW1uOwogICAgICBpZiAoY21wICE9PSAwKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICByZXR1cm4gc3RyY21wKG1hcHBpbmdBLm5hbWUsIG1hcHBpbmdCLm5hbWUpOwogICAgfQogICAgZXhwb3J0czIuY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zRGVmbGF0ZWQgPSBjb21wYXJlQnlHZW5lcmF0ZWRQb3NpdGlvbnNEZWZsYXRlZDsKICAgIGZ1bmN0aW9uIHN0cmNtcChhU3RyMSwgYVN0cjIpIHsKICAgICAgaWYgKGFTdHIxID09PSBhU3RyMikgewogICAgICAgIHJldHVybiAwOwogICAgICB9CiAgICAgIGlmIChhU3RyMSA9PT0gbnVsbCkgewogICAgICAgIHJldHVybiAxOwogICAgICB9CiAgICAgIGlmIChhU3RyMiA9PT0gbnVsbCkgewogICAgICAgIHJldHVybiAtMTsKICAgICAgfQogICAgICBpZiAoYVN0cjEgPiBhU3RyMikgewogICAgICAgIHJldHVybiAxOwogICAgICB9CiAgICAgIHJldHVybiAtMTsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0luZmxhdGVkKG1hcHBpbmdBLCBtYXBwaW5nQikgewogICAgICBsZXQgY21wID0gbWFwcGluZ0EuZ2VuZXJhdGVkTGluZSAtIG1hcHBpbmdCLmdlbmVyYXRlZExpbmU7CiAgICAgIGlmIChjbXAgIT09IDApIHsKICAgICAgICByZXR1cm4gY21wOwogICAgICB9CiAgICAgIGNtcCA9IG1hcHBpbmdBLmdlbmVyYXRlZENvbHVtbiAtIG1hcHBpbmdCLmdlbmVyYXRlZENvbHVtbjsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgY21wID0gc3RyY21wKG1hcHBpbmdBLnNvdXJjZSwgbWFwcGluZ0Iuc291cmNlKTsKICAgICAgaWYgKGNtcCAhPT0gMCkgewogICAgICAgIHJldHVybiBjbXA7CiAgICAgIH0KICAgICAgY21wID0gbWFwcGluZ0Eub3JpZ2luYWxMaW5lIC0gbWFwcGluZ0Iub3JpZ2luYWxMaW5lOwogICAgICBpZiAoY21wICE9PSAwKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICBjbXAgPSBtYXBwaW5nQS5vcmlnaW5hbENvbHVtbiAtIG1hcHBpbmdCLm9yaWdpbmFsQ29sdW1uOwogICAgICBpZiAoY21wICE9PSAwKSB7CiAgICAgICAgcmV0dXJuIGNtcDsKICAgICAgfQogICAgICByZXR1cm4gc3RyY21wKG1hcHBpbmdBLm5hbWUsIG1hcHBpbmdCLm5hbWUpOwogICAgfQogICAgZXhwb3J0czIuY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zSW5mbGF0ZWQgPSBjb21wYXJlQnlHZW5lcmF0ZWRQb3NpdGlvbnNJbmZsYXRlZDsKICAgIGZ1bmN0aW9uIHBhcnNlU291cmNlTWFwSW5wdXQoc3RyKSB7CiAgICAgIHJldHVybiBKU09OLnBhcnNlKHN0ci5yZXBsYWNlKC9eXCldfSdbXlxuXSpcbi8sICIiKSk7CiAgICB9CiAgICBleHBvcnRzMi5wYXJzZVNvdXJjZU1hcElucHV0ID0gcGFyc2VTb3VyY2VNYXBJbnB1dDsKICAgIGZ1bmN0aW9uIGNvbXB1dGVTb3VyY2VVUkwoc291cmNlUm9vdCwgc291cmNlVVJMLCBzb3VyY2VNYXBVUkwpIHsKICAgICAgc291cmNlVVJMID0gc291cmNlVVJMIHx8ICIiOwogICAgICBpZiAoc291cmNlUm9vdCkgewogICAgICAgIGlmIChzb3VyY2VSb290W3NvdXJjZVJvb3QubGVuZ3RoIC0gMV0gIT09ICIvIiAmJiBzb3VyY2VVUkxbMF0gIT09ICIvIikgewogICAgICAgICAgc291cmNlUm9vdCArPSAiLyI7CiAgICAgICAgfQogICAgICAgIHNvdXJjZVVSTCA9IHNvdXJjZVJvb3QgKyBzb3VyY2VVUkw7CiAgICAgIH0KICAgICAgaWYgKHNvdXJjZU1hcFVSTCkgewogICAgICAgIGNvbnN0IHBhcnNlZCA9IHVybFBhcnNlKHNvdXJjZU1hcFVSTCk7CiAgICAgICAgaWYgKCFwYXJzZWQpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigic291cmNlTWFwVVJMIGNvdWxkIG5vdCBiZSBwYXJzZWQiKTsKICAgICAgICB9CiAgICAgICAgaWYgKHBhcnNlZC5wYXRoKSB7CiAgICAgICAgICBjb25zdCBpbmRleCA9IHBhcnNlZC5wYXRoLmxhc3RJbmRleE9mKCIvIik7CiAgICAgICAgICBpZiAoaW5kZXggPj0gMCkgewogICAgICAgICAgICBwYXJzZWQucGF0aCA9IHBhcnNlZC5wYXRoLnN1YnN0cmluZygwLCBpbmRleCArIDEpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBzb3VyY2VVUkwgPSBqb2luMih1cmxHZW5lcmF0ZShwYXJzZWQpLCBzb3VyY2VVUkwpOwogICAgICB9CiAgICAgIHJldHVybiBub3JtYWxpemUoc291cmNlVVJMKTsKICAgIH0KICAgIGV4cG9ydHMyLmNvbXB1dGVTb3VyY2VVUkwgPSBjb21wdXRlU291cmNlVVJMOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvYXJyYXktc2V0LmpzCnZhciByZXF1aXJlX2FycmF5X3NldCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvYXJyYXktc2V0LmpzIihleHBvcnRzMikgewogICAgdmFyIEFycmF5U2V0ID0gY2xhc3MgX0FycmF5U2V0IHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgdGhpcy5fYXJyYXkgPSBbXTsKICAgICAgICB0aGlzLl9zZXQgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBTdGF0aWMgbWV0aG9kIGZvciBjcmVhdGluZyBBcnJheVNldCBpbnN0YW5jZXMgZnJvbSBhbiBleGlzdGluZyBhcnJheS4KICAgICAgICovCiAgICAgIHN0YXRpYyBmcm9tQXJyYXkoYUFycmF5LCBhQWxsb3dEdXBsaWNhdGVzKSB7CiAgICAgICAgY29uc3Qgc2V0ID0gbmV3IF9BcnJheVNldCgpOwogICAgICAgIGZvciAobGV0IGkgPSAwLCBsZW4gPSBhQXJyYXkubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHsKICAgICAgICAgIHNldC5hZGQoYUFycmF5W2ldLCBhQWxsb3dEdXBsaWNhdGVzKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHNldDsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJuIGhvdyBtYW55IHVuaXF1ZSBpdGVtcyBhcmUgaW4gdGhpcyBBcnJheVNldC4gSWYgZHVwbGljYXRlcyBoYXZlIGJlZW4KICAgICAgICogYWRkZWQsIHRoYW4gdGhvc2UgZG8gbm90IGNvdW50IHRvd2FyZHMgdGhlIHNpemUuCiAgICAgICAqCiAgICAgICAqIEByZXR1cm5zIE51bWJlcgogICAgICAgKi8KICAgICAgc2l6ZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fc2V0LnNpemU7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCB0aGUgZ2l2ZW4gc3RyaW5nIHRvIHRoaXMgc2V0LgogICAgICAgKgogICAgICAgKiBAcGFyYW0gU3RyaW5nIGFTdHIKICAgICAgICovCiAgICAgIGFkZChhU3RyLCBhQWxsb3dEdXBsaWNhdGVzKSB7CiAgICAgICAgY29uc3QgaXNEdXBsaWNhdGUgPSB0aGlzLmhhcyhhU3RyKTsKICAgICAgICBjb25zdCBpZHggPSB0aGlzLl9hcnJheS5sZW5ndGg7CiAgICAgICAgaWYgKCFpc0R1cGxpY2F0ZSB8fCBhQWxsb3dEdXBsaWNhdGVzKSB7CiAgICAgICAgICB0aGlzLl9hcnJheS5wdXNoKGFTdHIpOwogICAgICAgIH0KICAgICAgICBpZiAoIWlzRHVwbGljYXRlKSB7CiAgICAgICAgICB0aGlzLl9zZXQuc2V0KGFTdHIsIGlkeCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBJcyB0aGUgZ2l2ZW4gc3RyaW5nIGEgbWVtYmVyIG9mIHRoaXMgc2V0PwogICAgICAgKgogICAgICAgKiBAcGFyYW0gU3RyaW5nIGFTdHIKICAgICAgICovCiAgICAgIGhhcyhhU3RyKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3NldC5oYXMoYVN0cik7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFdoYXQgaXMgdGhlIGluZGV4IG9mIHRoZSBnaXZlbiBzdHJpbmcgaW4gdGhlIGFycmF5PwogICAgICAgKgogICAgICAgKiBAcGFyYW0gU3RyaW5nIGFTdHIKICAgICAgICovCiAgICAgIGluZGV4T2YoYVN0cikgewogICAgICAgIGNvbnN0IGlkeCA9IHRoaXMuX3NldC5nZXQoYVN0cik7CiAgICAgICAgaWYgKGlkeCA+PSAwKSB7CiAgICAgICAgICByZXR1cm4gaWR4OwogICAgICAgIH0KICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJyInICsgYVN0ciArICciIGlzIG5vdCBpbiB0aGUgc2V0LicpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBXaGF0IGlzIHRoZSBlbGVtZW50IGF0IHRoZSBnaXZlbiBpbmRleD8KICAgICAgICoKICAgICAgICogQHBhcmFtIE51bWJlciBhSWR4CiAgICAgICAqLwogICAgICBhdChhSWR4KSB7CiAgICAgICAgaWYgKGFJZHggPj0gMCAmJiBhSWR4IDwgdGhpcy5fYXJyYXkubGVuZ3RoKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fYXJyYXlbYUlkeF07CiAgICAgICAgfQogICAgICAgIHRocm93IG5ldyBFcnJvcigiTm8gZWxlbWVudCBpbmRleGVkIGJ5ICIgKyBhSWR4KTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyB0aGUgYXJyYXkgcmVwcmVzZW50YXRpb24gb2YgdGhpcyBzZXQgKHdoaWNoIGhhcyB0aGUgcHJvcGVyIGluZGljZXMKICAgICAgICogaW5kaWNhdGVkIGJ5IGluZGV4T2YpLiBOb3RlIHRoYXQgdGhpcyBpcyBhIGNvcHkgb2YgdGhlIGludGVybmFsIGFycmF5IHVzZWQKICAgICAgICogZm9yIHN0b3JpbmcgdGhlIG1lbWJlcnMgc28gdGhhdCBubyBvbmUgY2FuIG1lc3Mgd2l0aCBpbnRlcm5hbCBzdGF0ZS4KICAgICAgICovCiAgICAgIHRvQXJyYXkoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2FycmF5LnNsaWNlKCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5BcnJheVNldCA9IEFycmF5U2V0OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvbWFwcGluZy1saXN0LmpzCnZhciByZXF1aXJlX21hcHBpbmdfbGlzdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvbWFwcGluZy1saXN0LmpzIihleHBvcnRzMikgewogICAgdmFyIHV0aWwgPSByZXF1aXJlX3V0aWwyKCk7CiAgICBmdW5jdGlvbiBnZW5lcmF0ZWRQb3NpdGlvbkFmdGVyKG1hcHBpbmdBLCBtYXBwaW5nQikgewogICAgICBjb25zdCBsaW5lQSA9IG1hcHBpbmdBLmdlbmVyYXRlZExpbmU7CiAgICAgIGNvbnN0IGxpbmVCID0gbWFwcGluZ0IuZ2VuZXJhdGVkTGluZTsKICAgICAgY29uc3QgY29sdW1uQSA9IG1hcHBpbmdBLmdlbmVyYXRlZENvbHVtbjsKICAgICAgY29uc3QgY29sdW1uQiA9IG1hcHBpbmdCLmdlbmVyYXRlZENvbHVtbjsKICAgICAgcmV0dXJuIGxpbmVCID4gbGluZUEgfHwgbGluZUIgPT0gbGluZUEgJiYgY29sdW1uQiA+PSBjb2x1bW5BIHx8IHV0aWwuY29tcGFyZUJ5R2VuZXJhdGVkUG9zaXRpb25zSW5mbGF0ZWQobWFwcGluZ0EsIG1hcHBpbmdCKSA8PSAwOwogICAgfQogICAgdmFyIE1hcHBpbmdMaXN0ID0gY2xhc3MgewogICAgICBjb25zdHJ1Y3RvcigpIHsKICAgICAgICB0aGlzLl9hcnJheSA9IFtdOwogICAgICAgIHRoaXMuX3NvcnRlZCA9IHRydWU7CiAgICAgICAgdGhpcy5fbGFzdCA9IHsgZ2VuZXJhdGVkTGluZTogLTEsIGdlbmVyYXRlZENvbHVtbjogMCB9OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBJdGVyYXRlIHRocm91Z2ggaW50ZXJuYWwgaXRlbXMuIFRoaXMgbWV0aG9kIHRha2VzIHRoZSBzYW1lIGFyZ3VtZW50cyB0aGF0CiAgICAgICAqIGBBcnJheS5wcm90b3R5cGUuZm9yRWFjaGAgdGFrZXMuCiAgICAgICAqCiAgICAgICAqIE5PVEU6IFRoZSBvcmRlciBvZiB0aGUgbWFwcGluZ3MgaXMgTk9UIGd1YXJhbnRlZWQuCiAgICAgICAqLwogICAgICB1bnNvcnRlZEZvckVhY2goYUNhbGxiYWNrLCBhVGhpc0FyZykgewogICAgICAgIHRoaXMuX2FycmF5LmZvckVhY2goYUNhbGxiYWNrLCBhVGhpc0FyZyk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCB0aGUgZ2l2ZW4gc291cmNlIG1hcHBpbmcuCiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBPYmplY3QgYU1hcHBpbmcKICAgICAgICovCiAgICAgIGFkZChhTWFwcGluZykgewogICAgICAgIGlmIChnZW5lcmF0ZWRQb3NpdGlvbkFmdGVyKHRoaXMuX2xhc3QsIGFNYXBwaW5nKSkgewogICAgICAgICAgdGhpcy5fbGFzdCA9IGFNYXBwaW5nOwogICAgICAgICAgdGhpcy5fYXJyYXkucHVzaChhTWFwcGluZyk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX3NvcnRlZCA9IGZhbHNlOwogICAgICAgICAgdGhpcy5fYXJyYXkucHVzaChhTWFwcGluZyk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIHRoZSBmbGF0LCBzb3J0ZWQgYXJyYXkgb2YgbWFwcGluZ3MuIFRoZSBtYXBwaW5ncyBhcmUgc29ydGVkIGJ5CiAgICAgICAqIGdlbmVyYXRlZCBwb3NpdGlvbi4KICAgICAgICoKICAgICAgICogV0FSTklORzogVGhpcyBtZXRob2QgcmV0dXJucyBpbnRlcm5hbCBkYXRhIHdpdGhvdXQgY29weWluZywgZm9yCiAgICAgICAqIHBlcmZvcm1hbmNlLiBUaGUgcmV0dXJuIHZhbHVlIG11c3QgTk9UIGJlIG11dGF0ZWQsIGFuZCBzaG91bGQgYmUgdHJlYXRlZCBhcwogICAgICAgKiBhbiBpbW11dGFibGUgYm9ycm93LiBJZiB5b3Ugd2FudCB0byB0YWtlIG93bmVyc2hpcCwgeW91IG11c3QgbWFrZSB5b3VyIG93bgogICAgICAgKiBjb3B5LgogICAgICAgKi8KICAgICAgdG9BcnJheSgpIHsKICAgICAgICBpZiAoIXRoaXMuX3NvcnRlZCkgewogICAgICAgICAgdGhpcy5fYXJyYXkuc29ydCh1dGlsLmNvbXBhcmVCeUdlbmVyYXRlZFBvc2l0aW9uc0luZmxhdGVkKTsKICAgICAgICAgIHRoaXMuX3NvcnRlZCA9IHRydWU7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9hcnJheTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLk1hcHBpbmdMaXN0ID0gTWFwcGluZ0xpc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9zb3VyY2UtbWFwLWdlbmVyYXRvci5qcwp2YXIgcmVxdWlyZV9zb3VyY2VfbWFwX2dlbmVyYXRvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvc291cmNlLW1hcC1nZW5lcmF0b3IuanMiKGV4cG9ydHMyKSB7CiAgICB2YXIgYmFzZTY0VkxRID0gcmVxdWlyZV9iYXNlNjRfdmxxKCk7CiAgICB2YXIgdXRpbCA9IHJlcXVpcmVfdXRpbDIoKTsKICAgIHZhciBBcnJheVNldCA9IHJlcXVpcmVfYXJyYXlfc2V0KCkuQXJyYXlTZXQ7CiAgICB2YXIgTWFwcGluZ0xpc3QgPSByZXF1aXJlX21hcHBpbmdfbGlzdCgpLk1hcHBpbmdMaXN0OwogICAgdmFyIFNvdXJjZU1hcEdlbmVyYXRvciA9IGNsYXNzIF9Tb3VyY2VNYXBHZW5lcmF0b3IgewogICAgICBjb25zdHJ1Y3RvcihhQXJncykgewogICAgICAgIGlmICghYUFyZ3MpIHsKICAgICAgICAgIGFBcmdzID0ge307CiAgICAgICAgfQogICAgICAgIHRoaXMuX2ZpbGUgPSB1dGlsLmdldEFyZyhhQXJncywgImZpbGUiLCBudWxsKTsKICAgICAgICB0aGlzLl9zb3VyY2VSb290ID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJzb3VyY2VSb290IiwgbnVsbCk7CiAgICAgICAgdGhpcy5fc2tpcFZhbGlkYXRpb24gPSB1dGlsLmdldEFyZyhhQXJncywgInNraXBWYWxpZGF0aW9uIiwgZmFsc2UpOwogICAgICAgIHRoaXMuX3NvdXJjZXMgPSBuZXcgQXJyYXlTZXQoKTsKICAgICAgICB0aGlzLl9uYW1lcyA9IG5ldyBBcnJheVNldCgpOwogICAgICAgIHRoaXMuX21hcHBpbmdzID0gbmV3IE1hcHBpbmdMaXN0KCk7CiAgICAgICAgdGhpcy5fc291cmNlc0NvbnRlbnRzID0gbnVsbDsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ3JlYXRlcyBhIG5ldyBTb3VyY2VNYXBHZW5lcmF0b3IgYmFzZWQgb24gYSBTb3VyY2VNYXBDb25zdW1lcgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYVNvdXJjZU1hcENvbnN1bWVyIFRoZSBTb3VyY2VNYXAuCiAgICAgICAqLwogICAgICBzdGF0aWMgZnJvbVNvdXJjZU1hcChhU291cmNlTWFwQ29uc3VtZXIpIHsKICAgICAgICBjb25zdCBzb3VyY2VSb290ID0gYVNvdXJjZU1hcENvbnN1bWVyLnNvdXJjZVJvb3Q7CiAgICAgICAgY29uc3QgZ2VuZXJhdG9yID0gbmV3IF9Tb3VyY2VNYXBHZW5lcmF0b3IoewogICAgICAgICAgZmlsZTogYVNvdXJjZU1hcENvbnN1bWVyLmZpbGUsCiAgICAgICAgICBzb3VyY2VSb290CiAgICAgICAgfSk7CiAgICAgICAgYVNvdXJjZU1hcENvbnN1bWVyLmVhY2hNYXBwaW5nKGZ1bmN0aW9uKG1hcHBpbmcpIHsKICAgICAgICAgIGNvbnN0IG5ld01hcHBpbmcgPSB7CiAgICAgICAgICAgIGdlbmVyYXRlZDogewogICAgICAgICAgICAgIGxpbmU6IG1hcHBpbmcuZ2VuZXJhdGVkTGluZSwKICAgICAgICAgICAgICBjb2x1bW46IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uCiAgICAgICAgICAgIH0KICAgICAgICAgIH07CiAgICAgICAgICBpZiAobWFwcGluZy5zb3VyY2UgIT0gbnVsbCkgewogICAgICAgICAgICBuZXdNYXBwaW5nLnNvdXJjZSA9IG1hcHBpbmcuc291cmNlOwogICAgICAgICAgICBpZiAoc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICAgICAgbmV3TWFwcGluZy5zb3VyY2UgPSB1dGlsLnJlbGF0aXZlKHNvdXJjZVJvb3QsIG5ld01hcHBpbmcuc291cmNlKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBuZXdNYXBwaW5nLm9yaWdpbmFsID0gewogICAgICAgICAgICAgIGxpbmU6IG1hcHBpbmcub3JpZ2luYWxMaW5lLAogICAgICAgICAgICAgIGNvbHVtbjogbWFwcGluZy5vcmlnaW5hbENvbHVtbgogICAgICAgICAgICB9OwogICAgICAgICAgICBpZiAobWFwcGluZy5uYW1lICE9IG51bGwpIHsKICAgICAgICAgICAgICBuZXdNYXBwaW5nLm5hbWUgPSBtYXBwaW5nLm5hbWU7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGdlbmVyYXRvci5hZGRNYXBwaW5nKG5ld01hcHBpbmcpOwogICAgICAgIH0pOwogICAgICAgIGFTb3VyY2VNYXBDb25zdW1lci5zb3VyY2VzLmZvckVhY2goZnVuY3Rpb24oc291cmNlRmlsZSkgewogICAgICAgICAgbGV0IHNvdXJjZVJlbGF0aXZlID0gc291cmNlRmlsZTsKICAgICAgICAgIGlmIChzb3VyY2VSb290ICE9PSBudWxsKSB7CiAgICAgICAgICAgIHNvdXJjZVJlbGF0aXZlID0gdXRpbC5yZWxhdGl2ZShzb3VyY2VSb290LCBzb3VyY2VGaWxlKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICghZ2VuZXJhdG9yLl9zb3VyY2VzLmhhcyhzb3VyY2VSZWxhdGl2ZSkpIHsKICAgICAgICAgICAgZ2VuZXJhdG9yLl9zb3VyY2VzLmFkZChzb3VyY2VSZWxhdGl2ZSk7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBjb250ZW50ID0gYVNvdXJjZU1hcENvbnN1bWVyLnNvdXJjZUNvbnRlbnRGb3Ioc291cmNlRmlsZSk7CiAgICAgICAgICBpZiAoY29udGVudCAhPSBudWxsKSB7CiAgICAgICAgICAgIGdlbmVyYXRvci5zZXRTb3VyY2VDb250ZW50KHNvdXJjZUZpbGUsIGNvbnRlbnQpOwogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICAgIHJldHVybiBnZW5lcmF0b3I7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCBhIHNpbmdsZSBtYXBwaW5nIGZyb20gb3JpZ2luYWwgc291cmNlIGxpbmUgYW5kIGNvbHVtbiB0byB0aGUgZ2VuZXJhdGVkCiAgICAgICAqIHNvdXJjZSdzIGxpbmUgYW5kIGNvbHVtbiBmb3IgdGhpcyBzb3VyY2UgbWFwIGJlaW5nIGNyZWF0ZWQuIFRoZSBtYXBwaW5nCiAgICAgICAqIG9iamVjdCBzaG91bGQgaGF2ZSB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBnZW5lcmF0ZWQ6IEFuIG9iamVjdCB3aXRoIHRoZSBnZW5lcmF0ZWQgbGluZSBhbmQgY29sdW1uIHBvc2l0aW9ucy4KICAgICAgICogICAtIG9yaWdpbmFsOiBBbiBvYmplY3Qgd2l0aCB0aGUgb3JpZ2luYWwgbGluZSBhbmQgY29sdW1uIHBvc2l0aW9ucy4KICAgICAgICogICAtIHNvdXJjZTogVGhlIG9yaWdpbmFsIHNvdXJjZSBmaWxlIChyZWxhdGl2ZSB0byB0aGUgc291cmNlUm9vdCkuCiAgICAgICAqICAgLSBuYW1lOiBBbiBvcHRpb25hbCBvcmlnaW5hbCB0b2tlbiBuYW1lIGZvciB0aGlzIG1hcHBpbmcuCiAgICAgICAqLwogICAgICBhZGRNYXBwaW5nKGFBcmdzKSB7CiAgICAgICAgY29uc3QgZ2VuZXJhdGVkID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJnZW5lcmF0ZWQiKTsKICAgICAgICBjb25zdCBvcmlnaW5hbCA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAib3JpZ2luYWwiLCBudWxsKTsKICAgICAgICBsZXQgc291cmNlID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJzb3VyY2UiLCBudWxsKTsKICAgICAgICBsZXQgbmFtZSA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAibmFtZSIsIG51bGwpOwogICAgICAgIGlmICghdGhpcy5fc2tpcFZhbGlkYXRpb24pIHsKICAgICAgICAgIHRoaXMuX3ZhbGlkYXRlTWFwcGluZyhnZW5lcmF0ZWQsIG9yaWdpbmFsLCBzb3VyY2UsIG5hbWUpOwogICAgICAgIH0KICAgICAgICBpZiAoc291cmNlICE9IG51bGwpIHsKICAgICAgICAgIHNvdXJjZSA9IFN0cmluZyhzb3VyY2UpOwogICAgICAgICAgaWYgKCF0aGlzLl9zb3VyY2VzLmhhcyhzb3VyY2UpKSB7CiAgICAgICAgICAgIHRoaXMuX3NvdXJjZXMuYWRkKHNvdXJjZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChuYW1lICE9IG51bGwpIHsKICAgICAgICAgIG5hbWUgPSBTdHJpbmcobmFtZSk7CiAgICAgICAgICBpZiAoIXRoaXMuX25hbWVzLmhhcyhuYW1lKSkgewogICAgICAgICAgICB0aGlzLl9uYW1lcy5hZGQobmFtZSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHRoaXMuX21hcHBpbmdzLmFkZCh7CiAgICAgICAgICBnZW5lcmF0ZWRMaW5lOiBnZW5lcmF0ZWQubGluZSwKICAgICAgICAgIGdlbmVyYXRlZENvbHVtbjogZ2VuZXJhdGVkLmNvbHVtbiwKICAgICAgICAgIG9yaWdpbmFsTGluZTogb3JpZ2luYWwgIT0gbnVsbCAmJiBvcmlnaW5hbC5saW5lLAogICAgICAgICAgb3JpZ2luYWxDb2x1bW46IG9yaWdpbmFsICE9IG51bGwgJiYgb3JpZ2luYWwuY29sdW1uLAogICAgICAgICAgc291cmNlLAogICAgICAgICAgbmFtZQogICAgICAgIH0pOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBTZXQgdGhlIHNvdXJjZSBjb250ZW50IGZvciBhIHNvdXJjZSBmaWxlLgogICAgICAgKi8KICAgICAgc2V0U291cmNlQ29udGVudChhU291cmNlRmlsZSwgYVNvdXJjZUNvbnRlbnQpIHsKICAgICAgICBsZXQgc291cmNlID0gYVNvdXJjZUZpbGU7CiAgICAgICAgaWYgKHRoaXMuX3NvdXJjZVJvb3QgIT0gbnVsbCkgewogICAgICAgICAgc291cmNlID0gdXRpbC5yZWxhdGl2ZSh0aGlzLl9zb3VyY2VSb290LCBzb3VyY2UpOwogICAgICAgIH0KICAgICAgICBpZiAoYVNvdXJjZUNvbnRlbnQgIT0gbnVsbCkgewogICAgICAgICAgaWYgKCF0aGlzLl9zb3VyY2VzQ29udGVudHMpIHsKICAgICAgICAgICAgdGhpcy5fc291cmNlc0NvbnRlbnRzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLl9zb3VyY2VzQ29udGVudHNbdXRpbC50b1NldFN0cmluZyhzb3VyY2UpXSA9IGFTb3VyY2VDb250ZW50OwogICAgICAgIH0gZWxzZSBpZiAodGhpcy5fc291cmNlc0NvbnRlbnRzKSB7CiAgICAgICAgICBkZWxldGUgdGhpcy5fc291cmNlc0NvbnRlbnRzW3V0aWwudG9TZXRTdHJpbmcoc291cmNlKV07CiAgICAgICAgICBpZiAoT2JqZWN0LmtleXModGhpcy5fc291cmNlc0NvbnRlbnRzKS5sZW5ndGggPT09IDApIHsKICAgICAgICAgICAgdGhpcy5fc291cmNlc0NvbnRlbnRzID0gbnVsbDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFwcGxpZXMgdGhlIG1hcHBpbmdzIG9mIGEgc3ViLXNvdXJjZS1tYXAgZm9yIGEgc3BlY2lmaWMgc291cmNlIGZpbGUgdG8gdGhlCiAgICAgICAqIHNvdXJjZSBtYXAgYmVpbmcgZ2VuZXJhdGVkLiBFYWNoIG1hcHBpbmcgdG8gdGhlIHN1cHBsaWVkIHNvdXJjZSBmaWxlIGlzCiAgICAgICAqIHJld3JpdHRlbiB1c2luZyB0aGUgc3VwcGxpZWQgc291cmNlIG1hcC4gTm90ZTogVGhlIHJlc29sdXRpb24gZm9yIHRoZQogICAgICAgKiByZXN1bHRpbmcgbWFwcGluZ3MgaXMgdGhlIG1pbmltaXVtIG9mIHRoaXMgbWFwIGFuZCB0aGUgc3VwcGxpZWQgbWFwLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYVNvdXJjZU1hcENvbnN1bWVyIFRoZSBzb3VyY2UgbWFwIHRvIGJlIGFwcGxpZWQuCiAgICAgICAqIEBwYXJhbSBhU291cmNlRmlsZSBPcHRpb25hbC4gVGhlIGZpbGVuYW1lIG9mIHRoZSBzb3VyY2UgZmlsZS4KICAgICAgICogICAgICAgIElmIG9taXR0ZWQsIFNvdXJjZU1hcENvbnN1bWVyJ3MgZmlsZSBwcm9wZXJ0eSB3aWxsIGJlIHVzZWQuCiAgICAgICAqIEBwYXJhbSBhU291cmNlTWFwUGF0aCBPcHRpb25hbC4gVGhlIGRpcm5hbWUgb2YgdGhlIHBhdGggdG8gdGhlIHNvdXJjZSBtYXAKICAgICAgICogICAgICAgIHRvIGJlIGFwcGxpZWQuIElmIHJlbGF0aXZlLCBpdCBpcyByZWxhdGl2ZSB0byB0aGUgU291cmNlTWFwQ29uc3VtZXIuCiAgICAgICAqICAgICAgICBUaGlzIHBhcmFtZXRlciBpcyBuZWVkZWQgd2hlbiB0aGUgdHdvIHNvdXJjZSBtYXBzIGFyZW4ndCBpbiB0aGUgc2FtZQogICAgICAgKiAgICAgICAgZGlyZWN0b3J5LCBhbmQgdGhlIHNvdXJjZSBtYXAgdG8gYmUgYXBwbGllZCBjb250YWlucyByZWxhdGl2ZSBzb3VyY2UKICAgICAgICogICAgICAgIHBhdGhzLiBJZiBzbywgdGhvc2UgcmVsYXRpdmUgc291cmNlIHBhdGhzIG5lZWQgdG8gYmUgcmV3cml0dGVuCiAgICAgICAqICAgICAgICByZWxhdGl2ZSB0byB0aGUgU291cmNlTWFwR2VuZXJhdG9yLgogICAgICAgKi8KICAgICAgYXBwbHlTb3VyY2VNYXAoYVNvdXJjZU1hcENvbnN1bWVyLCBhU291cmNlRmlsZSwgYVNvdXJjZU1hcFBhdGgpIHsKICAgICAgICBsZXQgc291cmNlRmlsZSA9IGFTb3VyY2VGaWxlOwogICAgICAgIGlmIChhU291cmNlRmlsZSA9PSBudWxsKSB7CiAgICAgICAgICBpZiAoYVNvdXJjZU1hcENvbnN1bWVyLmZpbGUgPT0gbnVsbCkgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgICAgICAgYFNvdXJjZU1hcEdlbmVyYXRvci5wcm90b3R5cGUuYXBwbHlTb3VyY2VNYXAgcmVxdWlyZXMgZWl0aGVyIGFuIGV4cGxpY2l0IHNvdXJjZSBmaWxlLCBvciB0aGUgc291cmNlIG1hcCdzICJmaWxlIiBwcm9wZXJ0eS4gQm90aCB3ZXJlIG9taXR0ZWQuYAogICAgICAgICAgICApOwogICAgICAgICAgfQogICAgICAgICAgc291cmNlRmlsZSA9IGFTb3VyY2VNYXBDb25zdW1lci5maWxlOwogICAgICAgIH0KICAgICAgICBjb25zdCBzb3VyY2VSb290ID0gdGhpcy5fc291cmNlUm9vdDsKICAgICAgICBpZiAoc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICBzb3VyY2VGaWxlID0gdXRpbC5yZWxhdGl2ZShzb3VyY2VSb290LCBzb3VyY2VGaWxlKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbmV3U291cmNlcyA9IHRoaXMuX21hcHBpbmdzLnRvQXJyYXkoKS5sZW5ndGggPiAwID8gbmV3IEFycmF5U2V0KCkgOiB0aGlzLl9zb3VyY2VzOwogICAgICAgIGNvbnN0IG5ld05hbWVzID0gbmV3IEFycmF5U2V0KCk7CiAgICAgICAgdGhpcy5fbWFwcGluZ3MudW5zb3J0ZWRGb3JFYWNoKGZ1bmN0aW9uKG1hcHBpbmcpIHsKICAgICAgICAgIGlmIChtYXBwaW5nLnNvdXJjZSA9PT0gc291cmNlRmlsZSAmJiBtYXBwaW5nLm9yaWdpbmFsTGluZSAhPSBudWxsKSB7CiAgICAgICAgICAgIGNvbnN0IG9yaWdpbmFsID0gYVNvdXJjZU1hcENvbnN1bWVyLm9yaWdpbmFsUG9zaXRpb25Gb3IoewogICAgICAgICAgICAgIGxpbmU6IG1hcHBpbmcub3JpZ2luYWxMaW5lLAogICAgICAgICAgICAgIGNvbHVtbjogbWFwcGluZy5vcmlnaW5hbENvbHVtbgogICAgICAgICAgICB9KTsKICAgICAgICAgICAgaWYgKG9yaWdpbmFsLnNvdXJjZSAhPSBudWxsKSB7CiAgICAgICAgICAgICAgbWFwcGluZy5zb3VyY2UgPSBvcmlnaW5hbC5zb3VyY2U7CiAgICAgICAgICAgICAgaWYgKGFTb3VyY2VNYXBQYXRoICE9IG51bGwpIHsKICAgICAgICAgICAgICAgIG1hcHBpbmcuc291cmNlID0gdXRpbC5qb2luKGFTb3VyY2VNYXBQYXRoLCBtYXBwaW5nLnNvdXJjZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChzb3VyY2VSb290ICE9IG51bGwpIHsKICAgICAgICAgICAgICAgIG1hcHBpbmcuc291cmNlID0gdXRpbC5yZWxhdGl2ZShzb3VyY2VSb290LCBtYXBwaW5nLnNvdXJjZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIG1hcHBpbmcub3JpZ2luYWxMaW5lID0gb3JpZ2luYWwubGluZTsKICAgICAgICAgICAgICBtYXBwaW5nLm9yaWdpbmFsQ29sdW1uID0gb3JpZ2luYWwuY29sdW1uOwogICAgICAgICAgICAgIGlmIChvcmlnaW5hbC5uYW1lICE9IG51bGwpIHsKICAgICAgICAgICAgICAgIG1hcHBpbmcubmFtZSA9IG9yaWdpbmFsLm5hbWU7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBzb3VyY2UgPSBtYXBwaW5nLnNvdXJjZTsKICAgICAgICAgIGlmIChzb3VyY2UgIT0gbnVsbCAmJiAhbmV3U291cmNlcy5oYXMoc291cmNlKSkgewogICAgICAgICAgICBuZXdTb3VyY2VzLmFkZChzb3VyY2UpOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgbmFtZSA9IG1hcHBpbmcubmFtZTsKICAgICAgICAgIGlmIChuYW1lICE9IG51bGwgJiYgIW5ld05hbWVzLmhhcyhuYW1lKSkgewogICAgICAgICAgICBuZXdOYW1lcy5hZGQobmFtZSk7CiAgICAgICAgICB9CiAgICAgICAgfSwgdGhpcyk7CiAgICAgICAgdGhpcy5fc291cmNlcyA9IG5ld1NvdXJjZXM7CiAgICAgICAgdGhpcy5fbmFtZXMgPSBuZXdOYW1lczsKICAgICAgICBhU291cmNlTWFwQ29uc3VtZXIuc291cmNlcy5mb3JFYWNoKGZ1bmN0aW9uKHNyY0ZpbGUpIHsKICAgICAgICAgIGNvbnN0IGNvbnRlbnQgPSBhU291cmNlTWFwQ29uc3VtZXIuc291cmNlQ29udGVudEZvcihzcmNGaWxlKTsKICAgICAgICAgIGlmIChjb250ZW50ICE9IG51bGwpIHsKICAgICAgICAgICAgaWYgKGFTb3VyY2VNYXBQYXRoICE9IG51bGwpIHsKICAgICAgICAgICAgICBzcmNGaWxlID0gdXRpbC5qb2luKGFTb3VyY2VNYXBQYXRoLCBzcmNGaWxlKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoc291cmNlUm9vdCAhPSBudWxsKSB7CiAgICAgICAgICAgICAgc3JjRmlsZSA9IHV0aWwucmVsYXRpdmUoc291cmNlUm9vdCwgc3JjRmlsZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5zZXRTb3VyY2VDb250ZW50KHNyY0ZpbGUsIGNvbnRlbnQpOwogICAgICAgICAgfQogICAgICAgIH0sIHRoaXMpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBBIG1hcHBpbmcgY2FuIGhhdmUgb25lIG9mIHRoZSB0aHJlZSBsZXZlbHMgb2YgZGF0YToKICAgICAgICoKICAgICAgICogICAxLiBKdXN0IHRoZSBnZW5lcmF0ZWQgcG9zaXRpb24uCiAgICAgICAqICAgMi4gVGhlIEdlbmVyYXRlZCBwb3NpdGlvbiwgb3JpZ2luYWwgcG9zaXRpb24sIGFuZCBvcmlnaW5hbCBzb3VyY2UuCiAgICAgICAqICAgMy4gR2VuZXJhdGVkIGFuZCBvcmlnaW5hbCBwb3NpdGlvbiwgb3JpZ2luYWwgc291cmNlLCBhcyB3ZWxsIGFzIGEgbmFtZQogICAgICAgKiAgICAgIHRva2VuLgogICAgICAgKgogICAgICAgKiBUbyBtYWludGFpbiBjb25zaXN0ZW5jeSwgd2UgdmFsaWRhdGUgdGhhdCBhbnkgbmV3IG1hcHBpbmcgYmVpbmcgYWRkZWQgZmFsbHMKICAgICAgICogaW4gdG8gb25lIG9mIHRoZXNlIGNhdGVnb3JpZXMuCiAgICAgICAqLwogICAgICBfdmFsaWRhdGVNYXBwaW5nKGFHZW5lcmF0ZWQsIGFPcmlnaW5hbCwgYVNvdXJjZSwgYU5hbWUpIHsKICAgICAgICBpZiAoYU9yaWdpbmFsICYmIHR5cGVvZiBhT3JpZ2luYWwubGluZSAhPT0gIm51bWJlciIgJiYgdHlwZW9mIGFPcmlnaW5hbC5jb2x1bW4gIT09ICJudW1iZXIiKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgICAgICJvcmlnaW5hbC5saW5lIGFuZCBvcmlnaW5hbC5jb2x1bW4gYXJlIG5vdCBudW1iZXJzIC0tIHlvdSBwcm9iYWJseSBtZWFudCB0byBvbWl0IHRoZSBvcmlnaW5hbCBtYXBwaW5nIGVudGlyZWx5IGFuZCBvbmx5IG1hcCB0aGUgZ2VuZXJhdGVkIHBvc2l0aW9uLiBJZiBzbywgcGFzcyBudWxsIGZvciB0aGUgb3JpZ2luYWwgbWFwcGluZyBpbnN0ZWFkIG9mIGFuIG9iamVjdCB3aXRoIGVtcHR5IG9yIG51bGwgdmFsdWVzLiIKICAgICAgICAgICk7CiAgICAgICAgfQogICAgICAgIGlmIChhR2VuZXJhdGVkICYmICJsaW5lIiBpbiBhR2VuZXJhdGVkICYmICJjb2x1bW4iIGluIGFHZW5lcmF0ZWQgJiYgYUdlbmVyYXRlZC5saW5lID4gMCAmJiBhR2VuZXJhdGVkLmNvbHVtbiA+PSAwICYmICFhT3JpZ2luYWwgJiYgIWFTb3VyY2UgJiYgIWFOYW1lKSB7CiAgICAgICAgfSBlbHNlIGlmIChhR2VuZXJhdGVkICYmICJsaW5lIiBpbiBhR2VuZXJhdGVkICYmICJjb2x1bW4iIGluIGFHZW5lcmF0ZWQgJiYgYU9yaWdpbmFsICYmICJsaW5lIiBpbiBhT3JpZ2luYWwgJiYgImNvbHVtbiIgaW4gYU9yaWdpbmFsICYmIGFHZW5lcmF0ZWQubGluZSA+IDAgJiYgYUdlbmVyYXRlZC5jb2x1bW4gPj0gMCAmJiBhT3JpZ2luYWwubGluZSA+IDAgJiYgYU9yaWdpbmFsLmNvbHVtbiA+PSAwICYmIGFTb3VyY2UpIHsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJJbnZhbGlkIG1hcHBpbmc6ICIgKyBKU09OLnN0cmluZ2lmeSh7CiAgICAgICAgICAgIGdlbmVyYXRlZDogYUdlbmVyYXRlZCwKICAgICAgICAgICAgc291cmNlOiBhU291cmNlLAogICAgICAgICAgICBvcmlnaW5hbDogYU9yaWdpbmFsLAogICAgICAgICAgICBuYW1lOiBhTmFtZQogICAgICAgICAgfSkpOwogICAgICAgIH0KICAgICAgfQogICAgICAvKioKICAgICAgICogU2VyaWFsaXplIHRoZSBhY2N1bXVsYXRlZCBtYXBwaW5ncyBpbiB0byB0aGUgc3RyZWFtIG9mIGJhc2UgNjQgVkxRcwogICAgICAgKiBzcGVjaWZpZWQgYnkgdGhlIHNvdXJjZSBtYXAgZm9ybWF0LgogICAgICAgKi8KICAgICAgX3NlcmlhbGl6ZU1hcHBpbmdzKCkgewogICAgICAgIGxldCBwcmV2aW91c0dlbmVyYXRlZENvbHVtbiA9IDA7CiAgICAgICAgbGV0IHByZXZpb3VzR2VuZXJhdGVkTGluZSA9IDE7CiAgICAgICAgbGV0IHByZXZpb3VzT3JpZ2luYWxDb2x1bW4gPSAwOwogICAgICAgIGxldCBwcmV2aW91c09yaWdpbmFsTGluZSA9IDA7CiAgICAgICAgbGV0IHByZXZpb3VzTmFtZSA9IDA7CiAgICAgICAgbGV0IHByZXZpb3VzU291cmNlID0gMDsKICAgICAgICBsZXQgcmVzdWx0ID0gIiI7CiAgICAgICAgbGV0IG5leHQ7CiAgICAgICAgbGV0IG1hcHBpbmc7CiAgICAgICAgbGV0IG5hbWVJZHg7CiAgICAgICAgbGV0IHNvdXJjZUlkeDsKICAgICAgICBjb25zdCBtYXBwaW5ncyA9IHRoaXMuX21hcHBpbmdzLnRvQXJyYXkoKTsKICAgICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gbWFwcGluZ3MubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHsKICAgICAgICAgIG1hcHBpbmcgPSBtYXBwaW5nc1tpXTsKICAgICAgICAgIG5leHQgPSAiIjsKICAgICAgICAgIGlmIChtYXBwaW5nLmdlbmVyYXRlZExpbmUgIT09IHByZXZpb3VzR2VuZXJhdGVkTGluZSkgewogICAgICAgICAgICBwcmV2aW91c0dlbmVyYXRlZENvbHVtbiA9IDA7CiAgICAgICAgICAgIHdoaWxlIChtYXBwaW5nLmdlbmVyYXRlZExpbmUgIT09IHByZXZpb3VzR2VuZXJhdGVkTGluZSkgewogICAgICAgICAgICAgIG5leHQgKz0gIjsiOwogICAgICAgICAgICAgIHByZXZpb3VzR2VuZXJhdGVkTGluZSsrOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgaWYgKGkgPiAwKSB7CiAgICAgICAgICAgIGlmICghdXRpbC5jb21wYXJlQnlHZW5lcmF0ZWRQb3NpdGlvbnNJbmZsYXRlZChtYXBwaW5nLCBtYXBwaW5nc1tpIC0gMV0pKSB7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbmV4dCArPSAiLCI7CiAgICAgICAgICB9CiAgICAgICAgICBuZXh0ICs9IGJhc2U2NFZMUS5lbmNvZGUobWFwcGluZy5nZW5lcmF0ZWRDb2x1bW4gLSBwcmV2aW91c0dlbmVyYXRlZENvbHVtbik7CiAgICAgICAgICBwcmV2aW91c0dlbmVyYXRlZENvbHVtbiA9IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgaWYgKG1hcHBpbmcuc291cmNlICE9IG51bGwpIHsKICAgICAgICAgICAgc291cmNlSWR4ID0gdGhpcy5fc291cmNlcy5pbmRleE9mKG1hcHBpbmcuc291cmNlKTsKICAgICAgICAgICAgbmV4dCArPSBiYXNlNjRWTFEuZW5jb2RlKHNvdXJjZUlkeCAtIHByZXZpb3VzU291cmNlKTsKICAgICAgICAgICAgcHJldmlvdXNTb3VyY2UgPSBzb3VyY2VJZHg7CiAgICAgICAgICAgIG5leHQgKz0gYmFzZTY0VkxRLmVuY29kZShtYXBwaW5nLm9yaWdpbmFsTGluZSAtIDEgLSBwcmV2aW91c09yaWdpbmFsTGluZSk7CiAgICAgICAgICAgIHByZXZpb3VzT3JpZ2luYWxMaW5lID0gbWFwcGluZy5vcmlnaW5hbExpbmUgLSAxOwogICAgICAgICAgICBuZXh0ICs9IGJhc2U2NFZMUS5lbmNvZGUobWFwcGluZy5vcmlnaW5hbENvbHVtbiAtIHByZXZpb3VzT3JpZ2luYWxDb2x1bW4pOwogICAgICAgICAgICBwcmV2aW91c09yaWdpbmFsQ29sdW1uID0gbWFwcGluZy5vcmlnaW5hbENvbHVtbjsKICAgICAgICAgICAgaWYgKG1hcHBpbmcubmFtZSAhPSBudWxsKSB7CiAgICAgICAgICAgICAgbmFtZUlkeCA9IHRoaXMuX25hbWVzLmluZGV4T2YobWFwcGluZy5uYW1lKTsKICAgICAgICAgICAgICBuZXh0ICs9IGJhc2U2NFZMUS5lbmNvZGUobmFtZUlkeCAtIHByZXZpb3VzTmFtZSk7CiAgICAgICAgICAgICAgcHJldmlvdXNOYW1lID0gbmFtZUlkeDsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgcmVzdWx0ICs9IG5leHQ7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH0KICAgICAgX2dlbmVyYXRlU291cmNlc0NvbnRlbnQoYVNvdXJjZXMsIGFTb3VyY2VSb290KSB7CiAgICAgICAgcmV0dXJuIGFTb3VyY2VzLm1hcChmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICAgIGlmICghdGhpcy5fc291cmNlc0NvbnRlbnRzKSB7CiAgICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGFTb3VyY2VSb290ICE9IG51bGwpIHsKICAgICAgICAgICAgc291cmNlID0gdXRpbC5yZWxhdGl2ZShhU291cmNlUm9vdCwgc291cmNlKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGtleSA9IHV0aWwudG9TZXRTdHJpbmcoc291cmNlKTsKICAgICAgICAgIHJldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodGhpcy5fc291cmNlc0NvbnRlbnRzLCBrZXkpID8gdGhpcy5fc291cmNlc0NvbnRlbnRzW2tleV0gOiBudWxsOwogICAgICAgIH0sIHRoaXMpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBFeHRlcm5hbGl6ZSB0aGUgc291cmNlIG1hcC4KICAgICAgICovCiAgICAgIHRvSlNPTigpIHsKICAgICAgICBjb25zdCBtYXAgPSB7CiAgICAgICAgICB2ZXJzaW9uOiB0aGlzLl92ZXJzaW9uLAogICAgICAgICAgc291cmNlczogdGhpcy5fc291cmNlcy50b0FycmF5KCksCiAgICAgICAgICBuYW1lczogdGhpcy5fbmFtZXMudG9BcnJheSgpLAogICAgICAgICAgbWFwcGluZ3M6IHRoaXMuX3NlcmlhbGl6ZU1hcHBpbmdzKCkKICAgICAgICB9OwogICAgICAgIGlmICh0aGlzLl9maWxlICE9IG51bGwpIHsKICAgICAgICAgIG1hcC5maWxlID0gdGhpcy5fZmlsZTsKICAgICAgICB9CiAgICAgICAgaWYgKHRoaXMuX3NvdXJjZVJvb3QgIT0gbnVsbCkgewogICAgICAgICAgbWFwLnNvdXJjZVJvb3QgPSB0aGlzLl9zb3VyY2VSb290OwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5fc291cmNlc0NvbnRlbnRzKSB7CiAgICAgICAgICBtYXAuc291cmNlc0NvbnRlbnQgPSB0aGlzLl9nZW5lcmF0ZVNvdXJjZXNDb250ZW50KG1hcC5zb3VyY2VzLCBtYXAuc291cmNlUm9vdCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXA7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJlbmRlciB0aGUgc291cmNlIG1hcCBiZWluZyBnZW5lcmF0ZWQgdG8gYSBzdHJpbmcuCiAgICAgICAqLwogICAgICB0b1N0cmluZygpIHsKICAgICAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodGhpcy50b0pTT04oKSk7CiAgICAgIH0KICAgIH07CiAgICBTb3VyY2VNYXBHZW5lcmF0b3IucHJvdG90eXBlLl92ZXJzaW9uID0gMzsKICAgIGV4cG9ydHMyLlNvdXJjZU1hcEdlbmVyYXRvciA9IFNvdXJjZU1hcEdlbmVyYXRvcjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvbGliL2JpbmFyeS1zZWFyY2guanMKdmFyIHJlcXVpcmVfYmluYXJ5X3NlYXJjaCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvYmluYXJ5LXNlYXJjaC5qcyIoZXhwb3J0czIpIHsKICAgIGV4cG9ydHMyLkdSRUFURVNUX0xPV0VSX0JPVU5EID0gMTsKICAgIGV4cG9ydHMyLkxFQVNUX1VQUEVSX0JPVU5EID0gMjsKICAgIGZ1bmN0aW9uIHJlY3Vyc2l2ZVNlYXJjaChhTG93LCBhSGlnaCwgYU5lZWRsZSwgYUhheXN0YWNrLCBhQ29tcGFyZSwgYUJpYXMpIHsKICAgICAgY29uc3QgbWlkID0gTWF0aC5mbG9vcigoYUhpZ2ggLSBhTG93KSAvIDIpICsgYUxvdzsKICAgICAgY29uc3QgY21wID0gYUNvbXBhcmUoYU5lZWRsZSwgYUhheXN0YWNrW21pZF0sIHRydWUpOwogICAgICBpZiAoY21wID09PSAwKSB7CiAgICAgICAgcmV0dXJuIG1pZDsKICAgICAgfSBlbHNlIGlmIChjbXAgPiAwKSB7CiAgICAgICAgaWYgKGFIaWdoIC0gbWlkID4gMSkgewogICAgICAgICAgcmV0dXJuIHJlY3Vyc2l2ZVNlYXJjaChtaWQsIGFIaWdoLCBhTmVlZGxlLCBhSGF5c3RhY2ssIGFDb21wYXJlLCBhQmlhcyk7CiAgICAgICAgfQogICAgICAgIGlmIChhQmlhcyA9PSBleHBvcnRzMi5MRUFTVF9VUFBFUl9CT1VORCkgewogICAgICAgICAgcmV0dXJuIGFIaWdoIDwgYUhheXN0YWNrLmxlbmd0aCA/IGFIaWdoIDogLTE7CiAgICAgICAgfQogICAgICAgIHJldHVybiBtaWQ7CiAgICAgIH0KICAgICAgaWYgKG1pZCAtIGFMb3cgPiAxKSB7CiAgICAgICAgcmV0dXJuIHJlY3Vyc2l2ZVNlYXJjaChhTG93LCBtaWQsIGFOZWVkbGUsIGFIYXlzdGFjaywgYUNvbXBhcmUsIGFCaWFzKTsKICAgICAgfQogICAgICBpZiAoYUJpYXMgPT0gZXhwb3J0czIuTEVBU1RfVVBQRVJfQk9VTkQpIHsKICAgICAgICByZXR1cm4gbWlkOwogICAgICB9CiAgICAgIHJldHVybiBhTG93IDwgMCA/IC0xIDogYUxvdzsKICAgIH0KICAgIGV4cG9ydHMyLnNlYXJjaCA9IGZ1bmN0aW9uIHNlYXJjaChhTmVlZGxlLCBhSGF5c3RhY2ssIGFDb21wYXJlLCBhQmlhcykgewogICAgICBpZiAoYUhheXN0YWNrLmxlbmd0aCA9PT0gMCkgewogICAgICAgIHJldHVybiAtMTsKICAgICAgfQogICAgICBsZXQgaW5kZXggPSByZWN1cnNpdmVTZWFyY2goCiAgICAgICAgLTEsCiAgICAgICAgYUhheXN0YWNrLmxlbmd0aCwKICAgICAgICBhTmVlZGxlLAogICAgICAgIGFIYXlzdGFjaywKICAgICAgICBhQ29tcGFyZSwKICAgICAgICBhQmlhcyB8fCBleHBvcnRzMi5HUkVBVEVTVF9MT1dFUl9CT1VORAogICAgICApOwogICAgICBpZiAoaW5kZXggPCAwKSB7CiAgICAgICAgcmV0dXJuIC0xOwogICAgICB9CiAgICAgIHdoaWxlIChpbmRleCAtIDEgPj0gMCkgewogICAgICAgIGlmIChhQ29tcGFyZShhSGF5c3RhY2tbaW5kZXhdLCBhSGF5c3RhY2tbaW5kZXggLSAxXSwgdHJ1ZSkgIT09IDApIHsKICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgICAtLWluZGV4OwogICAgICB9CiAgICAgIHJldHVybiBpbmRleDsKICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9yZWFkLXdhc20uanMKdmFyIHJlcXVpcmVfcmVhZF93YXNtID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9yZWFkLXdhc20uanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICB2YXIgaXNCcm93c2VyRW52aXJvbm1lbnQgPSBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHR5cGVvZiB3aW5kb3cgIT09ICJ1bmRlZmluZWQiICYmIHRoaXMgPT09IHdpbmRvdzsKICAgIH0uY2FsbCgpOwogICAgaWYgKGlzQnJvd3NlckVudmlyb25tZW50KSB7CiAgICAgIGxldCBtYXBwaW5nc1dhc20gPSBudWxsOwogICAgICBtb2R1bGUyLmV4cG9ydHMgPSBmdW5jdGlvbiByZWFkV2FzbSgpIHsKICAgICAgICBpZiAodHlwZW9mIG1hcHBpbmdzV2FzbSA9PT0gInN0cmluZyIpIHsKICAgICAgICAgIHJldHVybiBmZXRjaChtYXBwaW5nc1dhc20pLnRoZW4oKHJlc3BvbnNlKSA9PiByZXNwb25zZS5hcnJheUJ1ZmZlcigpKTsKICAgICAgICB9CiAgICAgICAgaWYgKG1hcHBpbmdzV2FzbSBpbnN0YW5jZW9mIEFycmF5QnVmZmVyKSB7CiAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG1hcHBpbmdzV2FzbSk7CiAgICAgICAgfQogICAgICAgIHRocm93IG5ldyBFcnJvcigiWW91IG11c3QgcHJvdmlkZSB0aGUgc3RyaW5nIFVSTCBvciBBcnJheUJ1ZmZlciBjb250ZW50cyBvZiBsaWIvbWFwcGluZ3Mud2FzbSBieSBjYWxsaW5nIFNvdXJjZU1hcENvbnN1bWVyLmluaXRpYWxpemUoeyAnbGliL21hcHBpbmdzLndhc20nOiAuLi4gfSkgYmVmb3JlIHVzaW5nIFNvdXJjZU1hcENvbnN1bWVyIik7CiAgICAgIH07CiAgICAgIG1vZHVsZTIuZXhwb3J0cy5pbml0aWFsaXplID0gKGlucHV0KSA9PiBtYXBwaW5nc1dhc20gPSBpbnB1dDsKICAgIH0gZWxzZSB7CiAgICAgIGNvbnN0IGZzID0gcmVxdWlyZSgiZnMiKTsKICAgICAgY29uc3QgcGF0aCA9IHJlcXVpcmUoInBhdGgiKTsKICAgICAgbW9kdWxlMi5leHBvcnRzID0gZnVuY3Rpb24gcmVhZFdhc20oKSB7CiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHsKICAgICAgICAgIGNvbnN0IHdhc21QYXRoID0gcGF0aC5qb2luKF9fZGlybmFtZSwgIm1hcHBpbmdzLndhc20iKTsKICAgICAgICAgIGZzLnJlYWRGaWxlKHdhc21QYXRoLCBudWxsLCAoZXJyb3IsIGRhdGEpID0+IHsKICAgICAgICAgICAgaWYgKGVycm9yKSB7CiAgICAgICAgICAgICAgcmVqZWN0KGVycm9yKTsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmVzb2x2ZShkYXRhLmJ1ZmZlcik7CiAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgfTsKICAgICAgbW9kdWxlMi5leHBvcnRzLmluaXRpYWxpemUgPSAoXykgPT4gewogICAgICAgIGNvbnNvbGUuZGVidWcoIlNvdXJjZU1hcENvbnN1bWVyLmluaXRpYWxpemUgaXMgYSBuby1vcCB3aGVuIHJ1bm5pbmcgaW4gbm9kZS5qcyIpOwogICAgICB9OwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvd2FzbS5qcwp2YXIgcmVxdWlyZV93YXNtID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi93YXNtLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgdmFyIHJlYWRXYXNtID0gcmVxdWlyZV9yZWFkX3dhc20oKTsKICAgIGZ1bmN0aW9uIE1hcHBpbmcoKSB7CiAgICAgIHRoaXMuZ2VuZXJhdGVkTGluZSA9IDA7CiAgICAgIHRoaXMuZ2VuZXJhdGVkQ29sdW1uID0gMDsKICAgICAgdGhpcy5sYXN0R2VuZXJhdGVkQ29sdW1uID0gbnVsbDsKICAgICAgdGhpcy5zb3VyY2UgPSBudWxsOwogICAgICB0aGlzLm9yaWdpbmFsTGluZSA9IG51bGw7CiAgICAgIHRoaXMub3JpZ2luYWxDb2x1bW4gPSBudWxsOwogICAgICB0aGlzLm5hbWUgPSBudWxsOwogICAgfQogICAgdmFyIGNhY2hlZFdhc20gPSBudWxsOwogICAgbW9kdWxlMi5leHBvcnRzID0gZnVuY3Rpb24gd2FzbSgpIHsKICAgICAgaWYgKGNhY2hlZFdhc20pIHsKICAgICAgICByZXR1cm4gY2FjaGVkV2FzbTsKICAgICAgfQogICAgICBjb25zdCBjYWxsYmFja1N0YWNrID0gW107CiAgICAgIGNhY2hlZFdhc20gPSByZWFkV2FzbSgpLnRoZW4oKGJ1ZmZlcikgPT4gewogICAgICAgIHJldHVybiBXZWJBc3NlbWJseS5pbnN0YW50aWF0ZShidWZmZXIsIHsKICAgICAgICAgIGVudjogewogICAgICAgICAgICBtYXBwaW5nX2NhbGxiYWNrKGdlbmVyYXRlZExpbmUsIGdlbmVyYXRlZENvbHVtbiwgaGFzTGFzdEdlbmVyYXRlZENvbHVtbiwgbGFzdEdlbmVyYXRlZENvbHVtbiwgaGFzT3JpZ2luYWwsIHNvdXJjZSwgb3JpZ2luYWxMaW5lLCBvcmlnaW5hbENvbHVtbiwgaGFzTmFtZSwgbmFtZSkgewogICAgICAgICAgICAgIGNvbnN0IG1hcHBpbmcgPSBuZXcgTWFwcGluZygpOwogICAgICAgICAgICAgIG1hcHBpbmcuZ2VuZXJhdGVkTGluZSA9IGdlbmVyYXRlZExpbmUgKyAxOwogICAgICAgICAgICAgIG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uID0gZ2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgICAgIGlmIChoYXNMYXN0R2VuZXJhdGVkQ29sdW1uKSB7CiAgICAgICAgICAgICAgICBtYXBwaW5nLmxhc3RHZW5lcmF0ZWRDb2x1bW4gPSBsYXN0R2VuZXJhdGVkQ29sdW1uIC0gMTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKGhhc09yaWdpbmFsKSB7CiAgICAgICAgICAgICAgICBtYXBwaW5nLnNvdXJjZSA9IHNvdXJjZTsKICAgICAgICAgICAgICAgIG1hcHBpbmcub3JpZ2luYWxMaW5lID0gb3JpZ2luYWxMaW5lICsgMTsKICAgICAgICAgICAgICAgIG1hcHBpbmcub3JpZ2luYWxDb2x1bW4gPSBvcmlnaW5hbENvbHVtbjsKICAgICAgICAgICAgICAgIGlmIChoYXNOYW1lKSB7CiAgICAgICAgICAgICAgICAgIG1hcHBpbmcubmFtZSA9IG5hbWU7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGNhbGxiYWNrU3RhY2tbY2FsbGJhY2tTdGFjay5sZW5ndGggLSAxXShtYXBwaW5nKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgc3RhcnRfYWxsX2dlbmVyYXRlZF9sb2NhdGlvbnNfZm9yKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZSgiYWxsX2dlbmVyYXRlZF9sb2NhdGlvbnNfZm9yIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIGVuZF9hbGxfZ2VuZXJhdGVkX2xvY2F0aW9uc19mb3IoKSB7CiAgICAgICAgICAgICAgY29uc29sZS50aW1lRW5kKCJhbGxfZ2VuZXJhdGVkX2xvY2F0aW9uc19mb3IiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgc3RhcnRfY29tcHV0ZV9jb2x1bW5fc3BhbnMoKSB7CiAgICAgICAgICAgICAgY29uc29sZS50aW1lKCJjb21wdXRlX2NvbHVtbl9zcGFucyIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfY29tcHV0ZV9jb2x1bW5fc3BhbnMoKSB7CiAgICAgICAgICAgICAgY29uc29sZS50aW1lRW5kKCJjb21wdXRlX2NvbHVtbl9zcGFucyIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBzdGFydF9nZW5lcmF0ZWRfbG9jYXRpb25fZm9yKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZSgiZ2VuZXJhdGVkX2xvY2F0aW9uX2ZvciIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfZ2VuZXJhdGVkX2xvY2F0aW9uX2ZvcigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWVFbmQoImdlbmVyYXRlZF9sb2NhdGlvbl9mb3IiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgc3RhcnRfb3JpZ2luYWxfbG9jYXRpb25fZm9yKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZSgib3JpZ2luYWxfbG9jYXRpb25fZm9yIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIGVuZF9vcmlnaW5hbF9sb2NhdGlvbl9mb3IoKSB7CiAgICAgICAgICAgICAgY29uc29sZS50aW1lRW5kKCJvcmlnaW5hbF9sb2NhdGlvbl9mb3IiKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgc3RhcnRfcGFyc2VfbWFwcGluZ3MoKSB7CiAgICAgICAgICAgICAgY29uc29sZS50aW1lKCJwYXJzZV9tYXBwaW5ncyIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBlbmRfcGFyc2VfbWFwcGluZ3MoKSB7CiAgICAgICAgICAgICAgY29uc29sZS50aW1lRW5kKCJwYXJzZV9tYXBwaW5ncyIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBzdGFydF9zb3J0X2J5X2dlbmVyYXRlZF9sb2NhdGlvbigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWUoInNvcnRfYnlfZ2VuZXJhdGVkX2xvY2F0aW9uIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIGVuZF9zb3J0X2J5X2dlbmVyYXRlZF9sb2NhdGlvbigpIHsKICAgICAgICAgICAgICBjb25zb2xlLnRpbWVFbmQoInNvcnRfYnlfZ2VuZXJhdGVkX2xvY2F0aW9uIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHN0YXJ0X3NvcnRfYnlfb3JpZ2luYWxfbG9jYXRpb24oKSB7CiAgICAgICAgICAgICAgY29uc29sZS50aW1lKCJzb3J0X2J5X29yaWdpbmFsX2xvY2F0aW9uIik7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIGVuZF9zb3J0X2J5X29yaWdpbmFsX2xvY2F0aW9uKCkgewogICAgICAgICAgICAgIGNvbnNvbGUudGltZUVuZCgic29ydF9ieV9vcmlnaW5hbF9sb2NhdGlvbiIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH0pLnRoZW4oKFdhc20pID0+IHsKICAgICAgICByZXR1cm4gewogICAgICAgICAgZXhwb3J0czogV2FzbS5pbnN0YW5jZS5leHBvcnRzLAogICAgICAgICAgd2l0aE1hcHBpbmdDYWxsYmFjazogKG1hcHBpbmdDYWxsYmFjaywgZikgPT4gewogICAgICAgICAgICBjYWxsYmFja1N0YWNrLnB1c2gobWFwcGluZ0NhbGxiYWNrKTsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICBmKCk7CiAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgY2FsbGJhY2tTdGFjay5wb3AoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH07CiAgICAgIH0pLnRoZW4obnVsbCwgKGUpID0+IHsKICAgICAgICBjYWNoZWRXYXNtID0gbnVsbDsKICAgICAgICB0aHJvdyBlOwogICAgICB9KTsKICAgICAgcmV0dXJuIGNhY2hlZFdhc207CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvc291cmNlLW1hcC1jb25zdW1lci5qcwp2YXIgcmVxdWlyZV9zb3VyY2VfbWFwX2NvbnN1bWVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9zb3VyY2UtbWFwLWNvbnN1bWVyLmpzIihleHBvcnRzMikgewogICAgdmFyIHV0aWwgPSByZXF1aXJlX3V0aWwyKCk7CiAgICB2YXIgYmluYXJ5U2VhcmNoID0gcmVxdWlyZV9iaW5hcnlfc2VhcmNoKCk7CiAgICB2YXIgQXJyYXlTZXQgPSByZXF1aXJlX2FycmF5X3NldCgpLkFycmF5U2V0OwogICAgdmFyIGJhc2U2NFZMUSA9IHJlcXVpcmVfYmFzZTY0X3ZscSgpOwogICAgdmFyIHJlYWRXYXNtID0gcmVxdWlyZV9yZWFkX3dhc20oKTsKICAgIHZhciB3YXNtID0gcmVxdWlyZV93YXNtKCk7CiAgICB2YXIgSU5URVJOQUwgPSBTeW1ib2woInNtY0ludGVybmFsIik7CiAgICB2YXIgU291cmNlTWFwQ29uc3VtZXIgPSBjbGFzcyBfU291cmNlTWFwQ29uc3VtZXIgewogICAgICBjb25zdHJ1Y3RvcihhU291cmNlTWFwLCBhU291cmNlTWFwVVJMKSB7CiAgICAgICAgaWYgKGFTb3VyY2VNYXAgPT0gSU5URVJOQUwpIHsKICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodGhpcyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBfZmFjdG9yeShhU291cmNlTWFwLCBhU291cmNlTWFwVVJMKTsKICAgICAgfQogICAgICBzdGF0aWMgaW5pdGlhbGl6ZShvcHRzKSB7CiAgICAgICAgcmVhZFdhc20uaW5pdGlhbGl6ZShvcHRzWyJsaWIvbWFwcGluZ3Mud2FzbSJdKTsKICAgICAgfQogICAgICBzdGF0aWMgZnJvbVNvdXJjZU1hcChhU291cmNlTWFwLCBhU291cmNlTWFwVVJMKSB7CiAgICAgICAgcmV0dXJuIF9mYWN0b3J5QlNNKGFTb3VyY2VNYXAsIGFTb3VyY2VNYXBVUkwpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBDb25zdHJ1Y3QgYSBuZXcgYFNvdXJjZU1hcENvbnN1bWVyYCBmcm9tIGByYXdTb3VyY2VNYXBgIGFuZCBgc291cmNlTWFwVXJsYAogICAgICAgKiAoc2VlIHRoZSBgU291cmNlTWFwQ29uc3VtZXJgIGNvbnN0cnVjdG9yIGZvciBkZXRhaWxzLiBUaGVuLCBpbnZva2UgdGhlIGBhc3luYwogICAgICAgKiBmdW5jdGlvbiBmKFNvdXJjZU1hcENvbnN1bWVyKSAtPiBUYCB3aXRoIHRoZSBuZXdseSBjb25zdHJ1Y3RlZCBjb25zdW1lciwgd2FpdAogICAgICAgKiBmb3IgYGZgIHRvIGNvbXBsZXRlLCBjYWxsIGBkZXN0cm95YCBvbiB0aGUgY29uc3VtZXIsIGFuZCByZXR1cm4gYGZgJ3MgcmV0dXJuCiAgICAgICAqIHZhbHVlLgogICAgICAgKgogICAgICAgKiBZb3UgbXVzdCBub3QgdXNlIHRoZSBjb25zdW1lciBhZnRlciBgZmAgY29tcGxldGVzIQogICAgICAgKgogICAgICAgKiBCeSB1c2luZyBgd2l0aGAsIHlvdSBkbyBub3QgaGF2ZSB0byByZW1lbWJlciB0byBtYW51YWxseSBjYWxsIGBkZXN0cm95YCBvbgogICAgICAgKiB0aGUgY29uc3VtZXIsIHNpbmNlIGl0IHdpbGwgYmUgY2FsbGVkIGF1dG9tYXRpY2FsbHkgb25jZSBgZmAgY29tcGxldGVzLgogICAgICAgKgogICAgICAgKiBgYGBqcwogICAgICAgKiBjb25zdCB4U3F1YXJlZCA9IGF3YWl0IFNvdXJjZU1hcENvbnN1bWVyLndpdGgoCiAgICAgICAqICAgbXlSYXdTb3VyY2VNYXAsCiAgICAgICAqICAgbnVsbCwKICAgICAgICogICBhc3luYyBmdW5jdGlvbiAoY29uc3VtZXIpIHsKICAgICAgICogICAgIC8vIFVzZSBgY29uc3VtZXJgIGluc2lkZSBoZXJlIGFuZCBkb24ndCB3b3JyeSBhYm91dCByZW1lbWJlcmluZwogICAgICAgKiAgICAgLy8gdG8gY2FsbCBgZGVzdHJveWAuCiAgICAgICAqCiAgICAgICAqICAgICBjb25zdCB4ID0gYXdhaXQgd2hhdGV2ZXIoY29uc3VtZXIpOwogICAgICAgKiAgICAgcmV0dXJuIHggKiB4OwogICAgICAgKiAgIH0KICAgICAgICogKTsKICAgICAgICoKICAgICAgICogLy8gWW91IG1heSBub3QgdXNlIHRoYXQgYGNvbnN1bWVyYCBhbnltb3JlIG91dCBoZXJlOyBpdCBoYXMKICAgICAgICogLy8gYmVlbiBkZXN0cm95ZWQuIEJ1dCB5b3UgY2FuIHVzZSBgeFNxdWFyZWRgLgogICAgICAgKiBjb25zb2xlLmxvZyh4U3F1YXJlZCk7CiAgICAgICAqIGBgYAogICAgICAgKi8KICAgICAgc3RhdGljIGFzeW5jIHdpdGgocmF3U291cmNlTWFwLCBzb3VyY2VNYXBVcmwsIGYpIHsKICAgICAgICBjb25zdCBjb25zdW1lciA9IGF3YWl0IG5ldyBfU291cmNlTWFwQ29uc3VtZXIocmF3U291cmNlTWFwLCBzb3VyY2VNYXBVcmwpOwogICAgICAgIHRyeSB7CiAgICAgICAgICByZXR1cm4gYXdhaXQgZihjb25zdW1lcik7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgIGNvbnN1bWVyLmRlc3Ryb3koKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFBhcnNlIHRoZSBtYXBwaW5ncyBpbiBhIHN0cmluZyBpbiB0byBhIGRhdGEgc3RydWN0dXJlIHdoaWNoIHdlIGNhbiBlYXNpbHkKICAgICAgICogcXVlcnkgKHRoZSBvcmRlcmVkIGFycmF5cyBpbiB0aGUgYHRoaXMuX19nZW5lcmF0ZWRNYXBwaW5nc2AgYW5kCiAgICAgICAqIGB0aGlzLl9fb3JpZ2luYWxNYXBwaW5nc2AgcHJvcGVydGllcykuCiAgICAgICAqLwogICAgICBfcGFyc2VNYXBwaW5ncyhhU3RyLCBhU291cmNlUm9vdCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiU3ViY2xhc3NlcyBtdXN0IGltcGxlbWVudCBfcGFyc2VNYXBwaW5ncyIpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBJdGVyYXRlIG92ZXIgZWFjaCBtYXBwaW5nIGJldHdlZW4gYW4gb3JpZ2luYWwgc291cmNlL2xpbmUvY29sdW1uIGFuZCBhCiAgICAgICAqIGdlbmVyYXRlZCBsaW5lL2NvbHVtbiBpbiB0aGlzIHNvdXJjZSBtYXAuCiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBGdW5jdGlvbiBhQ2FsbGJhY2sKICAgICAgICogICAgICAgIFRoZSBmdW5jdGlvbiB0aGF0IGlzIGNhbGxlZCB3aXRoIGVhY2ggbWFwcGluZy4KICAgICAgICogQHBhcmFtIE9iamVjdCBhQ29udGV4dAogICAgICAgKiAgICAgICAgT3B0aW9uYWwuIElmIHNwZWNpZmllZCwgdGhpcyBvYmplY3Qgd2lsbCBiZSB0aGUgdmFsdWUgb2YgYHRoaXNgIGV2ZXJ5CiAgICAgICAqICAgICAgICB0aW1lIHRoYXQgYGFDYWxsYmFja2AgaXMgY2FsbGVkLgogICAgICAgKiBAcGFyYW0gYU9yZGVyCiAgICAgICAqICAgICAgICBFaXRoZXIgYFNvdXJjZU1hcENvbnN1bWVyLkdFTkVSQVRFRF9PUkRFUmAgb3IKICAgICAgICogICAgICAgIGBTb3VyY2VNYXBDb25zdW1lci5PUklHSU5BTF9PUkRFUmAuIFNwZWNpZmllcyB3aGV0aGVyIHlvdSB3YW50IHRvCiAgICAgICAqICAgICAgICBpdGVyYXRlIG92ZXIgdGhlIG1hcHBpbmdzIHNvcnRlZCBieSB0aGUgZ2VuZXJhdGVkIGZpbGUncyBsaW5lL2NvbHVtbgogICAgICAgKiAgICAgICAgb3JkZXIgb3IgdGhlIG9yaWdpbmFsJ3Mgc291cmNlL2xpbmUvY29sdW1uIG9yZGVyLCByZXNwZWN0aXZlbHkuIERlZmF1bHRzIHRvCiAgICAgICAqICAgICAgICBgU291cmNlTWFwQ29uc3VtZXIuR0VORVJBVEVEX09SREVSYC4KICAgICAgICovCiAgICAgIGVhY2hNYXBwaW5nKGFDYWxsYmFjaywgYUNvbnRleHQsIGFPcmRlcikgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiU3ViY2xhc3NlcyBtdXN0IGltcGxlbWVudCBlYWNoTWFwcGluZyIpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIGFsbCBnZW5lcmF0ZWQgbGluZSBhbmQgY29sdW1uIGluZm9ybWF0aW9uIGZvciB0aGUgb3JpZ2luYWwgc291cmNlLAogICAgICAgKiBsaW5lLCBhbmQgY29sdW1uIHByb3ZpZGVkLiBJZiBubyBjb2x1bW4gaXMgcHJvdmlkZWQsIHJldHVybnMgYWxsIG1hcHBpbmdzCiAgICAgICAqIGNvcnJlc3BvbmRpbmcgdG8gYSBlaXRoZXIgdGhlIGxpbmUgd2UgYXJlIHNlYXJjaGluZyBmb3Igb3IgdGhlIG5leHQKICAgICAgICogY2xvc2VzdCBsaW5lIHRoYXQgaGFzIGFueSBtYXBwaW5ncy4gT3RoZXJ3aXNlLCByZXR1cm5zIGFsbCBtYXBwaW5ncwogICAgICAgKiBjb3JyZXNwb25kaW5nIHRvIHRoZSBnaXZlbiBsaW5lIGFuZCBlaXRoZXIgdGhlIGNvbHVtbiB3ZSBhcmUgc2VhcmNoaW5nIGZvcgogICAgICAgKiBvciB0aGUgbmV4dCBjbG9zZXN0IGNvbHVtbiB0aGF0IGhhcyBhbnkgb2Zmc2V0cy4KICAgICAgICoKICAgICAgICogVGhlIG9ubHkgYXJndW1lbnQgaXMgYW4gb2JqZWN0IHdpdGggdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzOgogICAgICAgKgogICAgICAgKiAgIC0gc291cmNlOiBUaGUgZmlsZW5hbWUgb2YgdGhlIG9yaWdpbmFsIHNvdXJjZS4KICAgICAgICogICAtIGxpbmU6IFRoZSBsaW5lIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlLiAgVGhlIGxpbmUgbnVtYmVyIGlzIDEtYmFzZWQuCiAgICAgICAqICAgLSBjb2x1bW46IE9wdGlvbmFsLiB0aGUgY29sdW1uIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlLgogICAgICAgKiAgICBUaGUgY29sdW1uIG51bWJlciBpcyAwLWJhc2VkLgogICAgICAgKgogICAgICAgKiBhbmQgYW4gYXJyYXkgb2Ygb2JqZWN0cyBpcyByZXR1cm5lZCwgZWFjaCB3aXRoIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgICoKICAgICAgICogICAtIGxpbmU6IFRoZSBsaW5lIG51bWJlciBpbiB0aGUgZ2VuZXJhdGVkIHNvdXJjZSwgb3IgbnVsbC4gIFRoZQogICAgICAgKiAgICBsaW5lIG51bWJlciBpcyAxLWJhc2VkLgogICAgICAgKiAgIC0gY29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgZ2VuZXJhdGVkIHNvdXJjZSwgb3IgbnVsbC4KICAgICAgICogICAgVGhlIGNvbHVtbiBudW1iZXIgaXMgMC1iYXNlZC4KICAgICAgICovCiAgICAgIGFsbEdlbmVyYXRlZFBvc2l0aW9uc0ZvcihhQXJncykgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiU3ViY2xhc3NlcyBtdXN0IGltcGxlbWVudCBhbGxHZW5lcmF0ZWRQb3NpdGlvbnNGb3IiKTsKICAgICAgfQogICAgICBkZXN0cm95KCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiU3ViY2xhc3NlcyBtdXN0IGltcGxlbWVudCBkZXN0cm95Iik7CiAgICAgIH0KICAgIH07CiAgICBTb3VyY2VNYXBDb25zdW1lci5wcm90b3R5cGUuX3ZlcnNpb24gPSAzOwogICAgU291cmNlTWFwQ29uc3VtZXIuR0VORVJBVEVEX09SREVSID0gMTsKICAgIFNvdXJjZU1hcENvbnN1bWVyLk9SSUdJTkFMX09SREVSID0gMjsKICAgIFNvdXJjZU1hcENvbnN1bWVyLkdSRUFURVNUX0xPV0VSX0JPVU5EID0gMTsKICAgIFNvdXJjZU1hcENvbnN1bWVyLkxFQVNUX1VQUEVSX0JPVU5EID0gMjsKICAgIGV4cG9ydHMyLlNvdXJjZU1hcENvbnN1bWVyID0gU291cmNlTWFwQ29uc3VtZXI7CiAgICB2YXIgQmFzaWNTb3VyY2VNYXBDb25zdW1lciA9IGNsYXNzIF9CYXNpY1NvdXJjZU1hcENvbnN1bWVyIGV4dGVuZHMgU291cmNlTWFwQ29uc3VtZXIgewogICAgICBjb25zdHJ1Y3RvcihhU291cmNlTWFwLCBhU291cmNlTWFwVVJMKSB7CiAgICAgICAgcmV0dXJuIHN1cGVyKElOVEVSTkFMKS50aGVuKCh0aGF0KSA9PiB7CiAgICAgICAgICBsZXQgc291cmNlTWFwID0gYVNvdXJjZU1hcDsKICAgICAgICAgIGlmICh0eXBlb2YgYVNvdXJjZU1hcCA9PT0gInN0cmluZyIpIHsKICAgICAgICAgICAgc291cmNlTWFwID0gdXRpbC5wYXJzZVNvdXJjZU1hcElucHV0KGFTb3VyY2VNYXApOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgdmVyc2lvbiA9IHV0aWwuZ2V0QXJnKHNvdXJjZU1hcCwgInZlcnNpb24iKTsKICAgICAgICAgIGxldCBzb3VyY2VzID0gdXRpbC5nZXRBcmcoc291cmNlTWFwLCAic291cmNlcyIpOwogICAgICAgICAgY29uc3QgbmFtZXMgPSB1dGlsLmdldEFyZyhzb3VyY2VNYXAsICJuYW1lcyIsIFtdKTsKICAgICAgICAgIGxldCBzb3VyY2VSb290ID0gdXRpbC5nZXRBcmcoc291cmNlTWFwLCAic291cmNlUm9vdCIsIG51bGwpOwogICAgICAgICAgY29uc3Qgc291cmNlc0NvbnRlbnQgPSB1dGlsLmdldEFyZyhzb3VyY2VNYXAsICJzb3VyY2VzQ29udGVudCIsIG51bGwpOwogICAgICAgICAgY29uc3QgbWFwcGluZ3MgPSB1dGlsLmdldEFyZyhzb3VyY2VNYXAsICJtYXBwaW5ncyIpOwogICAgICAgICAgY29uc3QgZmlsZSA9IHV0aWwuZ2V0QXJnKHNvdXJjZU1hcCwgImZpbGUiLCBudWxsKTsKICAgICAgICAgIGlmICh2ZXJzaW9uICE9IHRoYXQuX3ZlcnNpb24pIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJVbnN1cHBvcnRlZCB2ZXJzaW9uOiAiICsgdmVyc2lvbik7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoc291cmNlUm9vdCkgewogICAgICAgICAgICBzb3VyY2VSb290ID0gdXRpbC5ub3JtYWxpemUoc291cmNlUm9vdCk7CiAgICAgICAgICB9CiAgICAgICAgICBzb3VyY2VzID0gc291cmNlcy5tYXAoU3RyaW5nKS5tYXAodXRpbC5ub3JtYWxpemUpLm1hcChmdW5jdGlvbihzb3VyY2UpIHsKICAgICAgICAgICAgcmV0dXJuIHNvdXJjZVJvb3QgJiYgdXRpbC5pc0Fic29sdXRlKHNvdXJjZVJvb3QpICYmIHV0aWwuaXNBYnNvbHV0ZShzb3VyY2UpID8gdXRpbC5yZWxhdGl2ZShzb3VyY2VSb290LCBzb3VyY2UpIDogc291cmNlOwogICAgICAgICAgfSk7CiAgICAgICAgICB0aGF0Ll9uYW1lcyA9IEFycmF5U2V0LmZyb21BcnJheShuYW1lcy5tYXAoU3RyaW5nKSwgdHJ1ZSk7CiAgICAgICAgICB0aGF0Ll9zb3VyY2VzID0gQXJyYXlTZXQuZnJvbUFycmF5KHNvdXJjZXMsIHRydWUpOwogICAgICAgICAgdGhhdC5fYWJzb2x1dGVTb3VyY2VzID0gdGhhdC5fc291cmNlcy50b0FycmF5KCkubWFwKGZ1bmN0aW9uKHMpIHsKICAgICAgICAgICAgcmV0dXJuIHV0aWwuY29tcHV0ZVNvdXJjZVVSTChzb3VyY2VSb290LCBzLCBhU291cmNlTWFwVVJMKTsKICAgICAgICAgIH0pOwogICAgICAgICAgdGhhdC5zb3VyY2VSb290ID0gc291cmNlUm9vdDsKICAgICAgICAgIHRoYXQuc291cmNlc0NvbnRlbnQgPSBzb3VyY2VzQ29udGVudDsKICAgICAgICAgIHRoYXQuX21hcHBpbmdzID0gbWFwcGluZ3M7CiAgICAgICAgICB0aGF0Ll9zb3VyY2VNYXBVUkwgPSBhU291cmNlTWFwVVJMOwogICAgICAgICAgdGhhdC5maWxlID0gZmlsZTsKICAgICAgICAgIHRoYXQuX2NvbXB1dGVkQ29sdW1uU3BhbnMgPSBmYWxzZTsKICAgICAgICAgIHRoYXQuX21hcHBpbmdzUHRyID0gMDsKICAgICAgICAgIHRoYXQuX3dhc20gPSBudWxsOwogICAgICAgICAgcmV0dXJuIHdhc20oKS50aGVuKCh3KSA9PiB7CiAgICAgICAgICAgIHRoYXQuX3dhc20gPSB3OwogICAgICAgICAgICByZXR1cm4gdGhhdDsKICAgICAgICAgIH0pOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBVdGlsaXR5IGZ1bmN0aW9uIHRvIGZpbmQgdGhlIGluZGV4IG9mIGEgc291cmNlLiAgUmV0dXJucyAtMSBpZiBub3QKICAgICAgICogZm91bmQuCiAgICAgICAqLwogICAgICBfZmluZFNvdXJjZUluZGV4KGFTb3VyY2UpIHsKICAgICAgICBsZXQgcmVsYXRpdmVTb3VyY2UgPSBhU291cmNlOwogICAgICAgIGlmICh0aGlzLnNvdXJjZVJvb3QgIT0gbnVsbCkgewogICAgICAgICAgcmVsYXRpdmVTb3VyY2UgPSB1dGlsLnJlbGF0aXZlKHRoaXMuc291cmNlUm9vdCwgcmVsYXRpdmVTb3VyY2UpOwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5fc291cmNlcy5oYXMocmVsYXRpdmVTb3VyY2UpKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fc291cmNlcy5pbmRleE9mKHJlbGF0aXZlU291cmNlKTsKICAgICAgICB9CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLl9hYnNvbHV0ZVNvdXJjZXMubGVuZ3RoOyArK2kpIHsKICAgICAgICAgIGlmICh0aGlzLl9hYnNvbHV0ZVNvdXJjZXNbaV0gPT0gYVNvdXJjZSkgewogICAgICAgICAgICByZXR1cm4gaTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIC0xOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBDcmVhdGUgYSBCYXNpY1NvdXJjZU1hcENvbnN1bWVyIGZyb20gYSBTb3VyY2VNYXBHZW5lcmF0b3IuCiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBTb3VyY2VNYXBHZW5lcmF0b3IgYVNvdXJjZU1hcAogICAgICAgKiAgICAgICAgVGhlIHNvdXJjZSBtYXAgdGhhdCB3aWxsIGJlIGNvbnN1bWVkLgogICAgICAgKiBAcGFyYW0gU3RyaW5nIGFTb3VyY2VNYXBVUkwKICAgICAgICogICAgICAgIFRoZSBVUkwgYXQgd2hpY2ggdGhlIHNvdXJjZSBtYXAgY2FuIGJlIGZvdW5kIChvcHRpb25hbCkKICAgICAgICogQHJldHVybnMgQmFzaWNTb3VyY2VNYXBDb25zdW1lcgogICAgICAgKi8KICAgICAgc3RhdGljIGZyb21Tb3VyY2VNYXAoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICAgIHJldHVybiBuZXcgX0Jhc2ljU291cmNlTWFwQ29uc3VtZXIoYVNvdXJjZU1hcC50b1N0cmluZygpKTsKICAgICAgfQogICAgICBnZXQgc291cmNlcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYWJzb2x1dGVTb3VyY2VzLnNsaWNlKCk7CiAgICAgIH0KICAgICAgX2dldE1hcHBpbmdzUHRyKCkgewogICAgICAgIGlmICh0aGlzLl9tYXBwaW5nc1B0ciA9PT0gMCkgewogICAgICAgICAgdGhpcy5fcGFyc2VNYXBwaW5ncyh0aGlzLl9tYXBwaW5ncywgdGhpcy5zb3VyY2VSb290KTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX21hcHBpbmdzUHRyOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBQYXJzZSB0aGUgbWFwcGluZ3MgaW4gYSBzdHJpbmcgaW4gdG8gYSBkYXRhIHN0cnVjdHVyZSB3aGljaCB3ZSBjYW4gZWFzaWx5CiAgICAgICAqIHF1ZXJ5ICh0aGUgb3JkZXJlZCBhcnJheXMgaW4gdGhlIGB0aGlzLl9fZ2VuZXJhdGVkTWFwcGluZ3NgIGFuZAogICAgICAgKiBgdGhpcy5fX29yaWdpbmFsTWFwcGluZ3NgIHByb3BlcnRpZXMpLgogICAgICAgKi8KICAgICAgX3BhcnNlTWFwcGluZ3MoYVN0ciwgYVNvdXJjZVJvb3QpIHsKICAgICAgICBjb25zdCBzaXplID0gYVN0ci5sZW5ndGg7CiAgICAgICAgY29uc3QgbWFwcGluZ3NCdWZQdHIgPSB0aGlzLl93YXNtLmV4cG9ydHMuYWxsb2NhdGVfbWFwcGluZ3Moc2l6ZSk7CiAgICAgICAgY29uc3QgbWFwcGluZ3NCdWYgPSBuZXcgVWludDhBcnJheSh0aGlzLl93YXNtLmV4cG9ydHMubWVtb3J5LmJ1ZmZlciwgbWFwcGluZ3NCdWZQdHIsIHNpemUpOwogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc2l6ZTsgaSsrKSB7CiAgICAgICAgICBtYXBwaW5nc0J1ZltpXSA9IGFTdHIuY2hhckNvZGVBdChpKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgbWFwcGluZ3NQdHIgPSB0aGlzLl93YXNtLmV4cG9ydHMucGFyc2VfbWFwcGluZ3MobWFwcGluZ3NCdWZQdHIpOwogICAgICAgIGlmICghbWFwcGluZ3NQdHIpIHsKICAgICAgICAgIGNvbnN0IGVycm9yID0gdGhpcy5fd2FzbS5leHBvcnRzLmdldF9sYXN0X2Vycm9yKCk7CiAgICAgICAgICBsZXQgbXNnID0gYEVycm9yIHBhcnNpbmcgbWFwcGluZ3MgKGNvZGUgJHtlcnJvcn0pOiBgOwogICAgICAgICAgc3dpdGNoIChlcnJvcikgewogICAgICAgICAgICBjYXNlIDE6CiAgICAgICAgICAgICAgbXNnICs9ICJ0aGUgbWFwcGluZ3MgY29udGFpbmVkIGEgbmVnYXRpdmUgbGluZSwgY29sdW1uLCBzb3VyY2UgaW5kZXgsIG9yIG5hbWUgaW5kZXgiOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICAgbXNnICs9ICJ0aGUgbWFwcGluZ3MgY29udGFpbmVkIGEgbnVtYmVyIGxhcmdlciB0aGFuIDIqKjMyIjsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAzOgogICAgICAgICAgICAgIG1zZyArPSAicmVhY2hlZCBFT0Ygd2hpbGUgaW4gdGhlIG1pZGRsZSBvZiBwYXJzaW5nIGEgVkxRIjsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSA0OgogICAgICAgICAgICAgIG1zZyArPSAiaW52YWxpZCBiYXNlIDY0IGNoYXJhY3RlciB3aGlsZSBwYXJzaW5nIGEgVkxRIjsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICBtc2cgKz0gInVua25vd24gZXJyb3IgY29kZSI7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IobXNnKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fbWFwcGluZ3NQdHIgPSBtYXBwaW5nc1B0cjsKICAgICAgfQogICAgICBlYWNoTWFwcGluZyhhQ2FsbGJhY2ssIGFDb250ZXh0LCBhT3JkZXIpIHsKICAgICAgICBjb25zdCBjb250ZXh0ID0gYUNvbnRleHQgfHwgbnVsbDsKICAgICAgICBjb25zdCBvcmRlciA9IGFPcmRlciB8fCBTb3VyY2VNYXBDb25zdW1lci5HRU5FUkFURURfT1JERVI7CiAgICAgICAgY29uc3Qgc291cmNlUm9vdCA9IHRoaXMuc291cmNlUm9vdDsKICAgICAgICB0aGlzLl93YXNtLndpdGhNYXBwaW5nQ2FsbGJhY2soCiAgICAgICAgICAobWFwcGluZykgPT4gewogICAgICAgICAgICBpZiAobWFwcGluZy5zb3VyY2UgIT09IG51bGwpIHsKICAgICAgICAgICAgICBtYXBwaW5nLnNvdXJjZSA9IHRoaXMuX3NvdXJjZXMuYXQobWFwcGluZy5zb3VyY2UpOwogICAgICAgICAgICAgIG1hcHBpbmcuc291cmNlID0gdXRpbC5jb21wdXRlU291cmNlVVJMKHNvdXJjZVJvb3QsIG1hcHBpbmcuc291cmNlLCB0aGlzLl9zb3VyY2VNYXBVUkwpOwogICAgICAgICAgICAgIGlmIChtYXBwaW5nLm5hbWUgIT09IG51bGwpIHsKICAgICAgICAgICAgICAgIG1hcHBpbmcubmFtZSA9IHRoaXMuX25hbWVzLmF0KG1hcHBpbmcubmFtZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGFDYWxsYmFjay5jYWxsKGNvbnRleHQsIG1hcHBpbmcpOwogICAgICAgICAgfSwKICAgICAgICAgICgpID0+IHsKICAgICAgICAgICAgc3dpdGNoIChvcmRlcikgewogICAgICAgICAgICAgIGNhc2UgU291cmNlTWFwQ29uc3VtZXIuR0VORVJBVEVEX09SREVSOgogICAgICAgICAgICAgICAgdGhpcy5fd2FzbS5leHBvcnRzLmJ5X2dlbmVyYXRlZF9sb2NhdGlvbih0aGlzLl9nZXRNYXBwaW5nc1B0cigpKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgU291cmNlTWFwQ29uc3VtZXIuT1JJR0lOQUxfT1JERVI6CiAgICAgICAgICAgICAgICB0aGlzLl93YXNtLmV4cG9ydHMuYnlfb3JpZ2luYWxfbG9jYXRpb24odGhpcy5fZ2V0TWFwcGluZ3NQdHIoKSk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJVbmtub3duIG9yZGVyIG9mIGl0ZXJhdGlvbi4iKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICk7CiAgICAgIH0KICAgICAgYWxsR2VuZXJhdGVkUG9zaXRpb25zRm9yKGFBcmdzKSB7CiAgICAgICAgbGV0IHNvdXJjZSA9IHV0aWwuZ2V0QXJnKGFBcmdzLCAic291cmNlIik7CiAgICAgICAgY29uc3Qgb3JpZ2luYWxMaW5lID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJsaW5lIik7CiAgICAgICAgY29uc3Qgb3JpZ2luYWxDb2x1bW4gPSBhQXJncy5jb2x1bW4gfHwgMDsKICAgICAgICBzb3VyY2UgPSB0aGlzLl9maW5kU291cmNlSW5kZXgoc291cmNlKTsKICAgICAgICBpZiAoc291cmNlIDwgMCkgewogICAgICAgICAgcmV0dXJuIFtdOwogICAgICAgIH0KICAgICAgICBpZiAob3JpZ2luYWxMaW5lIDwgMSkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJMaW5lIG51bWJlcnMgbXVzdCBiZSA+PSAxIik7CiAgICAgICAgfQogICAgICAgIGlmIChvcmlnaW5hbENvbHVtbiA8IDApIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiQ29sdW1uIG51bWJlcnMgbXVzdCBiZSA+PSAwIik7CiAgICAgICAgfQogICAgICAgIGNvbnN0IG1hcHBpbmdzID0gW107CiAgICAgICAgdGhpcy5fd2FzbS53aXRoTWFwcGluZ0NhbGxiYWNrKAogICAgICAgICAgKG0pID0+IHsKICAgICAgICAgICAgbGV0IGxhc3RDb2x1bW4gPSBtLmxhc3RHZW5lcmF0ZWRDb2x1bW47CiAgICAgICAgICAgIGlmICh0aGlzLl9jb21wdXRlZENvbHVtblNwYW5zICYmIGxhc3RDb2x1bW4gPT09IG51bGwpIHsKICAgICAgICAgICAgICBsYXN0Q29sdW1uID0gSW5maW5pdHk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbWFwcGluZ3MucHVzaCh7CiAgICAgICAgICAgICAgbGluZTogbS5nZW5lcmF0ZWRMaW5lLAogICAgICAgICAgICAgIGNvbHVtbjogbS5nZW5lcmF0ZWRDb2x1bW4sCiAgICAgICAgICAgICAgbGFzdENvbHVtbgogICAgICAgICAgICB9KTsKICAgICAgICAgIH0sCiAgICAgICAgICAoKSA9PiB7CiAgICAgICAgICAgIHRoaXMuX3dhc20uZXhwb3J0cy5hbGxfZ2VuZXJhdGVkX2xvY2F0aW9uc19mb3IoCiAgICAgICAgICAgICAgdGhpcy5fZ2V0TWFwcGluZ3NQdHIoKSwKICAgICAgICAgICAgICBzb3VyY2UsCiAgICAgICAgICAgICAgb3JpZ2luYWxMaW5lIC0gMSwKICAgICAgICAgICAgICAiY29sdW1uIiBpbiBhQXJncywKICAgICAgICAgICAgICBvcmlnaW5hbENvbHVtbgogICAgICAgICAgICApOwogICAgICAgICAgfQogICAgICAgICk7CiAgICAgICAgcmV0dXJuIG1hcHBpbmdzOwogICAgICB9CiAgICAgIGRlc3Ryb3koKSB7CiAgICAgICAgaWYgKHRoaXMuX21hcHBpbmdzUHRyICE9PSAwKSB7CiAgICAgICAgICB0aGlzLl93YXNtLmV4cG9ydHMuZnJlZV9tYXBwaW5ncyh0aGlzLl9tYXBwaW5nc1B0cik7CiAgICAgICAgICB0aGlzLl9tYXBwaW5nc1B0ciA9IDA7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBDb21wdXRlIHRoZSBsYXN0IGNvbHVtbiBmb3IgZWFjaCBnZW5lcmF0ZWQgbWFwcGluZy4gVGhlIGxhc3QgY29sdW1uIGlzCiAgICAgICAqIGluY2x1c2l2ZS4KICAgICAgICovCiAgICAgIGNvbXB1dGVDb2x1bW5TcGFucygpIHsKICAgICAgICBpZiAodGhpcy5fY29tcHV0ZWRDb2x1bW5TcGFucykgewogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB0aGlzLl93YXNtLmV4cG9ydHMuY29tcHV0ZV9jb2x1bW5fc3BhbnModGhpcy5fZ2V0TWFwcGluZ3NQdHIoKSk7CiAgICAgICAgdGhpcy5fY29tcHV0ZWRDb2x1bW5TcGFucyA9IHRydWU7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybnMgdGhlIG9yaWdpbmFsIHNvdXJjZSwgbGluZSwgYW5kIGNvbHVtbiBpbmZvcm1hdGlvbiBmb3IgdGhlIGdlbmVyYXRlZAogICAgICAgKiBzb3VyY2UncyBsaW5lIGFuZCBjb2x1bW4gcG9zaXRpb25zIHByb3ZpZGVkLiBUaGUgb25seSBhcmd1bWVudCBpcyBhbiBvYmplY3QKICAgICAgICogd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UuICBUaGUgbGluZSBudW1iZXIKICAgICAgICogICAgIGlzIDEtYmFzZWQuCiAgICAgICAqICAgLSBjb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgc291cmNlLiAgVGhlIGNvbHVtbgogICAgICAgKiAgICAgbnVtYmVyIGlzIDAtYmFzZWQuCiAgICAgICAqICAgLSBiaWFzOiBFaXRoZXIgJ1NvdXJjZU1hcENvbnN1bWVyLkdSRUFURVNUX0xPV0VSX0JPVU5EJyBvcgogICAgICAgKiAgICAgJ1NvdXJjZU1hcENvbnN1bWVyLkxFQVNUX1VQUEVSX0JPVU5EJy4gU3BlY2lmaWVzIHdoZXRoZXIgdG8gcmV0dXJuIHRoZQogICAgICAgKiAgICAgY2xvc2VzdCBlbGVtZW50IHRoYXQgaXMgc21hbGxlciB0aGFuIG9yIGdyZWF0ZXIgdGhhbiB0aGUgb25lIHdlIGFyZQogICAgICAgKiAgICAgc2VhcmNoaW5nIGZvciwgcmVzcGVjdGl2ZWx5LCBpZiB0aGUgZXhhY3QgZWxlbWVudCBjYW5ub3QgYmUgZm91bmQuCiAgICAgICAqICAgICBEZWZhdWx0cyB0byAnU291cmNlTWFwQ29uc3VtZXIuR1JFQVRFU1RfTE9XRVJfQk9VTkQnLgogICAgICAgKgogICAgICAgKiBhbmQgYW4gb2JqZWN0IGlzIHJldHVybmVkIHdpdGggdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzOgogICAgICAgKgogICAgICAgKiAgIC0gc291cmNlOiBUaGUgb3JpZ2luYWwgc291cmNlIGZpbGUsIG9yIG51bGwuCiAgICAgICAqICAgLSBsaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZSwgb3IgbnVsbC4gIFRoZQogICAgICAgKiAgICAgbGluZSBudW1iZXIgaXMgMS1iYXNlZC4KICAgICAgICogICAtIGNvbHVtbjogVGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZSwgb3IgbnVsbC4gIFRoZQogICAgICAgKiAgICAgY29sdW1uIG51bWJlciBpcyAwLWJhc2VkLgogICAgICAgKiAgIC0gbmFtZTogVGhlIG9yaWdpbmFsIGlkZW50aWZpZXIsIG9yIG51bGwuCiAgICAgICAqLwogICAgICBvcmlnaW5hbFBvc2l0aW9uRm9yKGFBcmdzKSB7CiAgICAgICAgY29uc3QgbmVlZGxlID0gewogICAgICAgICAgZ2VuZXJhdGVkTGluZTogdXRpbC5nZXRBcmcoYUFyZ3MsICJsaW5lIiksCiAgICAgICAgICBnZW5lcmF0ZWRDb2x1bW46IHV0aWwuZ2V0QXJnKGFBcmdzLCAiY29sdW1uIikKICAgICAgICB9OwogICAgICAgIGlmIChuZWVkbGUuZ2VuZXJhdGVkTGluZSA8IDEpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiTGluZSBudW1iZXJzIG11c3QgYmUgPj0gMSIpOwogICAgICAgIH0KICAgICAgICBpZiAobmVlZGxlLmdlbmVyYXRlZENvbHVtbiA8IDApIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiQ29sdW1uIG51bWJlcnMgbXVzdCBiZSA+PSAwIik7CiAgICAgICAgfQogICAgICAgIGxldCBiaWFzID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJiaWFzIiwgU291cmNlTWFwQ29uc3VtZXIuR1JFQVRFU1RfTE9XRVJfQk9VTkQpOwogICAgICAgIGlmIChiaWFzID09IG51bGwpIHsKICAgICAgICAgIGJpYXMgPSBTb3VyY2VNYXBDb25zdW1lci5HUkVBVEVTVF9MT1dFUl9CT1VORDsKICAgICAgICB9CiAgICAgICAgbGV0IG1hcHBpbmc7CiAgICAgICAgdGhpcy5fd2FzbS53aXRoTWFwcGluZ0NhbGxiYWNrKChtKSA9PiBtYXBwaW5nID0gbSwgKCkgPT4gewogICAgICAgICAgdGhpcy5fd2FzbS5leHBvcnRzLm9yaWdpbmFsX2xvY2F0aW9uX2ZvcigKICAgICAgICAgICAgdGhpcy5fZ2V0TWFwcGluZ3NQdHIoKSwKICAgICAgICAgICAgbmVlZGxlLmdlbmVyYXRlZExpbmUgLSAxLAogICAgICAgICAgICBuZWVkbGUuZ2VuZXJhdGVkQ29sdW1uLAogICAgICAgICAgICBiaWFzCiAgICAgICAgICApOwogICAgICAgIH0pOwogICAgICAgIGlmIChtYXBwaW5nKSB7CiAgICAgICAgICBpZiAobWFwcGluZy5nZW5lcmF0ZWRMaW5lID09PSBuZWVkbGUuZ2VuZXJhdGVkTGluZSkgewogICAgICAgICAgICBsZXQgc291cmNlID0gdXRpbC5nZXRBcmcobWFwcGluZywgInNvdXJjZSIsIG51bGwpOwogICAgICAgICAgICBpZiAoc291cmNlICE9PSBudWxsKSB7CiAgICAgICAgICAgICAgc291cmNlID0gdGhpcy5fc291cmNlcy5hdChzb3VyY2UpOwogICAgICAgICAgICAgIHNvdXJjZSA9IHV0aWwuY29tcHV0ZVNvdXJjZVVSTCh0aGlzLnNvdXJjZVJvb3QsIHNvdXJjZSwgdGhpcy5fc291cmNlTWFwVVJMKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBsZXQgbmFtZSA9IHV0aWwuZ2V0QXJnKG1hcHBpbmcsICJuYW1lIiwgbnVsbCk7CiAgICAgICAgICAgIGlmIChuYW1lICE9PSBudWxsKSB7CiAgICAgICAgICAgICAgbmFtZSA9IHRoaXMuX25hbWVzLmF0KG5hbWUpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgICAgc291cmNlLAogICAgICAgICAgICAgIGxpbmU6IHV0aWwuZ2V0QXJnKG1hcHBpbmcsICJvcmlnaW5hbExpbmUiLCBudWxsKSwKICAgICAgICAgICAgICBjb2x1bW46IHV0aWwuZ2V0QXJnKG1hcHBpbmcsICJvcmlnaW5hbENvbHVtbiIsIG51bGwpLAogICAgICAgICAgICAgIG5hbWUKICAgICAgICAgICAgfTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIHNvdXJjZTogbnVsbCwKICAgICAgICAgIGxpbmU6IG51bGwsCiAgICAgICAgICBjb2x1bW46IG51bGwsCiAgICAgICAgICBuYW1lOiBudWxsCiAgICAgICAgfTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJuIHRydWUgaWYgd2UgaGF2ZSB0aGUgc291cmNlIGNvbnRlbnQgZm9yIGV2ZXJ5IHNvdXJjZSBpbiB0aGUgc291cmNlCiAgICAgICAqIG1hcCwgZmFsc2Ugb3RoZXJ3aXNlLgogICAgICAgKi8KICAgICAgaGFzQ29udGVudHNPZkFsbFNvdXJjZXMoKSB7CiAgICAgICAgaWYgKCF0aGlzLnNvdXJjZXNDb250ZW50KSB7CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLnNvdXJjZXNDb250ZW50Lmxlbmd0aCA+PSB0aGlzLl9zb3VyY2VzLnNpemUoKSAmJiAhdGhpcy5zb3VyY2VzQ29udGVudC5zb21lKGZ1bmN0aW9uKHNjKSB7CiAgICAgICAgICByZXR1cm4gc2MgPT0gbnVsbDsKICAgICAgICB9KTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyB0aGUgb3JpZ2luYWwgc291cmNlIGNvbnRlbnQuIFRoZSBvbmx5IGFyZ3VtZW50IGlzIHRoZSB1cmwgb2YgdGhlCiAgICAgICAqIG9yaWdpbmFsIHNvdXJjZSBmaWxlLiBSZXR1cm5zIG51bGwgaWYgbm8gb3JpZ2luYWwgc291cmNlIGNvbnRlbnQgaXMKICAgICAgICogYXZhaWxhYmxlLgogICAgICAgKi8KICAgICAgc291cmNlQ29udGVudEZvcihhU291cmNlLCBudWxsT25NaXNzaW5nKSB7CiAgICAgICAgaWYgKCF0aGlzLnNvdXJjZXNDb250ZW50KSB7CiAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICB9CiAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLl9maW5kU291cmNlSW5kZXgoYVNvdXJjZSk7CiAgICAgICAgaWYgKGluZGV4ID49IDApIHsKICAgICAgICAgIHJldHVybiB0aGlzLnNvdXJjZXNDb250ZW50W2luZGV4XTsKICAgICAgICB9CiAgICAgICAgbGV0IHJlbGF0aXZlU291cmNlID0gYVNvdXJjZTsKICAgICAgICBpZiAodGhpcy5zb3VyY2VSb290ICE9IG51bGwpIHsKICAgICAgICAgIHJlbGF0aXZlU291cmNlID0gdXRpbC5yZWxhdGl2ZSh0aGlzLnNvdXJjZVJvb3QsIHJlbGF0aXZlU291cmNlKTsKICAgICAgICB9CiAgICAgICAgbGV0IHVybDM7CiAgICAgICAgaWYgKHRoaXMuc291cmNlUm9vdCAhPSBudWxsICYmICh1cmwzID0gdXRpbC51cmxQYXJzZSh0aGlzLnNvdXJjZVJvb3QpKSkgewogICAgICAgICAgY29uc3QgZmlsZVVyaUFic1BhdGggPSByZWxhdGl2ZVNvdXJjZS5yZXBsYWNlKC9eZmlsZTpcL1wvLywgIiIpOwogICAgICAgICAgaWYgKHVybDMuc2NoZW1lID09ICJmaWxlIiAmJiB0aGlzLl9zb3VyY2VzLmhhcyhmaWxlVXJpQWJzUGF0aCkpIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXMuc291cmNlc0NvbnRlbnRbdGhpcy5fc291cmNlcy5pbmRleE9mKGZpbGVVcmlBYnNQYXRoKV07CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoKCF1cmwzLnBhdGggfHwgdXJsMy5wYXRoID09ICIvIikgJiYgdGhpcy5fc291cmNlcy5oYXMoIi8iICsgcmVsYXRpdmVTb3VyY2UpKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLnNvdXJjZXNDb250ZW50W3RoaXMuX3NvdXJjZXMuaW5kZXhPZigiLyIgKyByZWxhdGl2ZVNvdXJjZSldOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAobnVsbE9uTWlzc2luZykgewogICAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgICAgfQogICAgICAgIHRocm93IG5ldyBFcnJvcignIicgKyByZWxhdGl2ZVNvdXJjZSArICciIGlzIG5vdCBpbiB0aGUgU291cmNlTWFwLicpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIHRoZSBnZW5lcmF0ZWQgbGluZSBhbmQgY29sdW1uIGluZm9ybWF0aW9uIGZvciB0aGUgb3JpZ2luYWwgc291cmNlLAogICAgICAgKiBsaW5lLCBhbmQgY29sdW1uIHBvc2l0aW9ucyBwcm92aWRlZC4gVGhlIG9ubHkgYXJndW1lbnQgaXMgYW4gb2JqZWN0IHdpdGgKICAgICAgICogdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzOgogICAgICAgKgogICAgICAgKiAgIC0gc291cmNlOiBUaGUgZmlsZW5hbWUgb2YgdGhlIG9yaWdpbmFsIHNvdXJjZS4KICAgICAgICogICAtIGxpbmU6IFRoZSBsaW5lIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlLiAgVGhlIGxpbmUgbnVtYmVyCiAgICAgICAqICAgICBpcyAxLWJhc2VkLgogICAgICAgKiAgIC0gY29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgb3JpZ2luYWwgc291cmNlLiAgVGhlIGNvbHVtbgogICAgICAgKiAgICAgbnVtYmVyIGlzIDAtYmFzZWQuCiAgICAgICAqICAgLSBiaWFzOiBFaXRoZXIgJ1NvdXJjZU1hcENvbnN1bWVyLkdSRUFURVNUX0xPV0VSX0JPVU5EJyBvcgogICAgICAgKiAgICAgJ1NvdXJjZU1hcENvbnN1bWVyLkxFQVNUX1VQUEVSX0JPVU5EJy4gU3BlY2lmaWVzIHdoZXRoZXIgdG8gcmV0dXJuIHRoZQogICAgICAgKiAgICAgY2xvc2VzdCBlbGVtZW50IHRoYXQgaXMgc21hbGxlciB0aGFuIG9yIGdyZWF0ZXIgdGhhbiB0aGUgb25lIHdlIGFyZQogICAgICAgKiAgICAgc2VhcmNoaW5nIGZvciwgcmVzcGVjdGl2ZWx5LCBpZiB0aGUgZXhhY3QgZWxlbWVudCBjYW5ub3QgYmUgZm91bmQuCiAgICAgICAqICAgICBEZWZhdWx0cyB0byAnU291cmNlTWFwQ29uc3VtZXIuR1JFQVRFU1RfTE9XRVJfQk9VTkQnLgogICAgICAgKgogICAgICAgKiBhbmQgYW4gb2JqZWN0IGlzIHJldHVybmVkIHdpdGggdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzOgogICAgICAgKgogICAgICAgKiAgIC0gbGluZTogVGhlIGxpbmUgbnVtYmVyIGluIHRoZSBnZW5lcmF0ZWQgc291cmNlLCBvciBudWxsLiAgVGhlCiAgICAgICAqICAgICBsaW5lIG51bWJlciBpcyAxLWJhc2VkLgogICAgICAgKiAgIC0gY29sdW1uOiBUaGUgY29sdW1uIG51bWJlciBpbiB0aGUgZ2VuZXJhdGVkIHNvdXJjZSwgb3IgbnVsbC4KICAgICAgICogICAgIFRoZSBjb2x1bW4gbnVtYmVyIGlzIDAtYmFzZWQuCiAgICAgICAqLwogICAgICBnZW5lcmF0ZWRQb3NpdGlvbkZvcihhQXJncykgewogICAgICAgIGxldCBzb3VyY2UgPSB1dGlsLmdldEFyZyhhQXJncywgInNvdXJjZSIpOwogICAgICAgIHNvdXJjZSA9IHRoaXMuX2ZpbmRTb3VyY2VJbmRleChzb3VyY2UpOwogICAgICAgIGlmIChzb3VyY2UgPCAwKSB7CiAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICBsaW5lOiBudWxsLAogICAgICAgICAgICBjb2x1bW46IG51bGwsCiAgICAgICAgICAgIGxhc3RDb2x1bW46IG51bGwKICAgICAgICAgIH07CiAgICAgICAgfQogICAgICAgIGNvbnN0IG5lZWRsZSA9IHsKICAgICAgICAgIHNvdXJjZSwKICAgICAgICAgIG9yaWdpbmFsTGluZTogdXRpbC5nZXRBcmcoYUFyZ3MsICJsaW5lIiksCiAgICAgICAgICBvcmlnaW5hbENvbHVtbjogdXRpbC5nZXRBcmcoYUFyZ3MsICJjb2x1bW4iKQogICAgICAgIH07CiAgICAgICAgaWYgKG5lZWRsZS5vcmlnaW5hbExpbmUgPCAxKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkxpbmUgbnVtYmVycyBtdXN0IGJlID49IDEiKTsKICAgICAgICB9CiAgICAgICAgaWYgKG5lZWRsZS5vcmlnaW5hbENvbHVtbiA8IDApIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiQ29sdW1uIG51bWJlcnMgbXVzdCBiZSA+PSAwIik7CiAgICAgICAgfQogICAgICAgIGxldCBiaWFzID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJiaWFzIiwgU291cmNlTWFwQ29uc3VtZXIuR1JFQVRFU1RfTE9XRVJfQk9VTkQpOwogICAgICAgIGlmIChiaWFzID09IG51bGwpIHsKICAgICAgICAgIGJpYXMgPSBTb3VyY2VNYXBDb25zdW1lci5HUkVBVEVTVF9MT1dFUl9CT1VORDsKICAgICAgICB9CiAgICAgICAgbGV0IG1hcHBpbmc7CiAgICAgICAgdGhpcy5fd2FzbS53aXRoTWFwcGluZ0NhbGxiYWNrKChtKSA9PiBtYXBwaW5nID0gbSwgKCkgPT4gewogICAgICAgICAgdGhpcy5fd2FzbS5leHBvcnRzLmdlbmVyYXRlZF9sb2NhdGlvbl9mb3IoCiAgICAgICAgICAgIHRoaXMuX2dldE1hcHBpbmdzUHRyKCksCiAgICAgICAgICAgIG5lZWRsZS5zb3VyY2UsCiAgICAgICAgICAgIG5lZWRsZS5vcmlnaW5hbExpbmUgLSAxLAogICAgICAgICAgICBuZWVkbGUub3JpZ2luYWxDb2x1bW4sCiAgICAgICAgICAgIGJpYXMKICAgICAgICAgICk7CiAgICAgICAgfSk7CiAgICAgICAgaWYgKG1hcHBpbmcpIHsKICAgICAgICAgIGlmIChtYXBwaW5nLnNvdXJjZSA9PT0gbmVlZGxlLnNvdXJjZSkgewogICAgICAgICAgICBsZXQgbGFzdENvbHVtbiA9IG1hcHBpbmcubGFzdEdlbmVyYXRlZENvbHVtbjsKICAgICAgICAgICAgaWYgKHRoaXMuX2NvbXB1dGVkQ29sdW1uU3BhbnMgJiYgbGFzdENvbHVtbiA9PT0gbnVsbCkgewogICAgICAgICAgICAgIGxhc3RDb2x1bW4gPSBJbmZpbml0eTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICAgIGxpbmU6IHV0aWwuZ2V0QXJnKG1hcHBpbmcsICJnZW5lcmF0ZWRMaW5lIiwgbnVsbCksCiAgICAgICAgICAgICAgY29sdW1uOiB1dGlsLmdldEFyZyhtYXBwaW5nLCAiZ2VuZXJhdGVkQ29sdW1uIiwgbnVsbCksCiAgICAgICAgICAgICAgbGFzdENvbHVtbgogICAgICAgICAgICB9OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gewogICAgICAgICAgbGluZTogbnVsbCwKICAgICAgICAgIGNvbHVtbjogbnVsbCwKICAgICAgICAgIGxhc3RDb2x1bW46IG51bGwKICAgICAgICB9OwogICAgICB9CiAgICB9OwogICAgQmFzaWNTb3VyY2VNYXBDb25zdW1lci5wcm90b3R5cGUuY29uc3VtZXIgPSBTb3VyY2VNYXBDb25zdW1lcjsKICAgIGV4cG9ydHMyLkJhc2ljU291cmNlTWFwQ29uc3VtZXIgPSBCYXNpY1NvdXJjZU1hcENvbnN1bWVyOwogICAgdmFyIEluZGV4ZWRTb3VyY2VNYXBDb25zdW1lciA9IGNsYXNzIGV4dGVuZHMgU291cmNlTWFwQ29uc3VtZXIgewogICAgICBjb25zdHJ1Y3RvcihhU291cmNlTWFwLCBhU291cmNlTWFwVVJMKSB7CiAgICAgICAgcmV0dXJuIHN1cGVyKElOVEVSTkFMKS50aGVuKCh0aGF0KSA9PiB7CiAgICAgICAgICBsZXQgc291cmNlTWFwID0gYVNvdXJjZU1hcDsKICAgICAgICAgIGlmICh0eXBlb2YgYVNvdXJjZU1hcCA9PT0gInN0cmluZyIpIHsKICAgICAgICAgICAgc291cmNlTWFwID0gdXRpbC5wYXJzZVNvdXJjZU1hcElucHV0KGFTb3VyY2VNYXApOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgdmVyc2lvbiA9IHV0aWwuZ2V0QXJnKHNvdXJjZU1hcCwgInZlcnNpb24iKTsKICAgICAgICAgIGNvbnN0IHNlY3Rpb25zID0gdXRpbC5nZXRBcmcoc291cmNlTWFwLCAic2VjdGlvbnMiKTsKICAgICAgICAgIGlmICh2ZXJzaW9uICE9IHRoYXQuX3ZlcnNpb24pIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJVbnN1cHBvcnRlZCB2ZXJzaW9uOiAiICsgdmVyc2lvbik7CiAgICAgICAgICB9CiAgICAgICAgICB0aGF0Ll9zb3VyY2VzID0gbmV3IEFycmF5U2V0KCk7CiAgICAgICAgICB0aGF0Ll9uYW1lcyA9IG5ldyBBcnJheVNldCgpOwogICAgICAgICAgdGhhdC5fX2dlbmVyYXRlZE1hcHBpbmdzID0gbnVsbDsKICAgICAgICAgIHRoYXQuX19vcmlnaW5hbE1hcHBpbmdzID0gbnVsbDsKICAgICAgICAgIHRoYXQuX19nZW5lcmF0ZWRNYXBwaW5nc1Vuc29ydGVkID0gbnVsbDsKICAgICAgICAgIHRoYXQuX19vcmlnaW5hbE1hcHBpbmdzVW5zb3J0ZWQgPSBudWxsOwogICAgICAgICAgbGV0IGxhc3RPZmZzZXQgPSB7CiAgICAgICAgICAgIGxpbmU6IC0xLAogICAgICAgICAgICBjb2x1bW46IDAKICAgICAgICAgIH07CiAgICAgICAgICByZXR1cm4gUHJvbWlzZS5hbGwoc2VjdGlvbnMubWFwKChzKSA9PiB7CiAgICAgICAgICAgIGlmIChzLnVybCkgewogICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiU3VwcG9ydCBmb3IgdXJsIGZpZWxkIGluIHNlY3Rpb25zIG5vdCBpbXBsZW1lbnRlZC4iKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBjb25zdCBvZmZzZXQgPSB1dGlsLmdldEFyZyhzLCAib2Zmc2V0Iik7CiAgICAgICAgICAgIGNvbnN0IG9mZnNldExpbmUgPSB1dGlsLmdldEFyZyhvZmZzZXQsICJsaW5lIik7CiAgICAgICAgICAgIGNvbnN0IG9mZnNldENvbHVtbiA9IHV0aWwuZ2V0QXJnKG9mZnNldCwgImNvbHVtbiIpOwogICAgICAgICAgICBpZiAob2Zmc2V0TGluZSA8IGxhc3RPZmZzZXQubGluZSB8fCBvZmZzZXRMaW5lID09PSBsYXN0T2Zmc2V0LmxpbmUgJiYgb2Zmc2V0Q29sdW1uIDwgbGFzdE9mZnNldC5jb2x1bW4pIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlNlY3Rpb24gb2Zmc2V0cyBtdXN0IGJlIG9yZGVyZWQgYW5kIG5vbi1vdmVybGFwcGluZy4iKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBsYXN0T2Zmc2V0ID0gb2Zmc2V0OwogICAgICAgICAgICBjb25zdCBjb25zID0gbmV3IFNvdXJjZU1hcENvbnN1bWVyKHV0aWwuZ2V0QXJnKHMsICJtYXAiKSwgYVNvdXJjZU1hcFVSTCk7CiAgICAgICAgICAgIHJldHVybiBjb25zLnRoZW4oKGNvbnN1bWVyKSA9PiB7CiAgICAgICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgICAgIGdlbmVyYXRlZE9mZnNldDogewogICAgICAgICAgICAgICAgICAvLyBUaGUgb2Zmc2V0IGZpZWxkcyBhcmUgMC1iYXNlZCwgYnV0IHdlIHVzZSAxLWJhc2VkIGluZGljZXMgd2hlbgogICAgICAgICAgICAgICAgICAvLyBlbmNvZGluZy9kZWNvZGluZyBmcm9tIFZMUS4KICAgICAgICAgICAgICAgICAgZ2VuZXJhdGVkTGluZTogb2Zmc2V0TGluZSArIDEsCiAgICAgICAgICAgICAgICAgIGdlbmVyYXRlZENvbHVtbjogb2Zmc2V0Q29sdW1uICsgMQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGNvbnN1bWVyCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9KSkudGhlbigocykgPT4gewogICAgICAgICAgICB0aGF0Ll9zZWN0aW9ucyA9IHM7CiAgICAgICAgICAgIHJldHVybiB0aGF0OwogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgLy8gYF9fZ2VuZXJhdGVkTWFwcGluZ3NgIGFuZCBgX19vcmlnaW5hbE1hcHBpbmdzYCBhcmUgYXJyYXlzIHRoYXQgaG9sZCB0aGUKICAgICAgLy8gcGFyc2VkIG1hcHBpbmcgY29vcmRpbmF0ZXMgZnJvbSB0aGUgc291cmNlIG1hcCdzICJtYXBwaW5ncyIgYXR0cmlidXRlLiBUaGV5CiAgICAgIC8vIGFyZSBsYXppbHkgaW5zdGFudGlhdGVkLCBhY2Nlc3NlZCB2aWEgdGhlIGBfZ2VuZXJhdGVkTWFwcGluZ3NgIGFuZAogICAgICAvLyBgX29yaWdpbmFsTWFwcGluZ3NgIGdldHRlcnMgcmVzcGVjdGl2ZWx5LCBhbmQgd2Ugb25seSBwYXJzZSB0aGUgbWFwcGluZ3MKICAgICAgLy8gYW5kIGNyZWF0ZSB0aGVzZSBhcnJheXMgb25jZSBxdWVyaWVkIGZvciBhIHNvdXJjZSBsb2NhdGlvbi4gV2UganVtcCB0aHJvdWdoCiAgICAgIC8vIHRoZXNlIGhvb3BzIGJlY2F1c2UgdGhlcmUgY2FuIGJlIG1hbnkgdGhvdXNhbmRzIG9mIG1hcHBpbmdzLCBhbmQgcGFyc2luZwogICAgICAvLyB0aGVtIGlzIGV4cGVuc2l2ZSwgc28gd2Ugb25seSB3YW50IHRvIGRvIGl0IGlmIHdlIG11c3QuCiAgICAgIC8vCiAgICAgIC8vIEVhY2ggb2JqZWN0IGluIHRoZSBhcnJheXMgaXMgb2YgdGhlIGZvcm06CiAgICAgIC8vCiAgICAgIC8vICAgICB7CiAgICAgIC8vICAgICAgIGdlbmVyYXRlZExpbmU6IFRoZSBsaW5lIG51bWJlciBpbiB0aGUgZ2VuZXJhdGVkIGNvZGUsCiAgICAgIC8vICAgICAgIGdlbmVyYXRlZENvbHVtbjogVGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBjb2RlLAogICAgICAvLyAgICAgICBzb3VyY2U6IFRoZSBwYXRoIHRvIHRoZSBvcmlnaW5hbCBzb3VyY2UgZmlsZSB0aGF0IGdlbmVyYXRlZCB0aGlzCiAgICAgIC8vICAgICAgICAgICAgICAgY2h1bmsgb2YgY29kZSwKICAgICAgLy8gICAgICAgb3JpZ2luYWxMaW5lOiBUaGUgbGluZSBudW1iZXIgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZSB0aGF0CiAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgY29ycmVzcG9uZHMgdG8gdGhpcyBjaHVuayBvZiBnZW5lcmF0ZWQgY29kZSwKICAgICAgLy8gICAgICAgb3JpZ2luYWxDb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UgdGhhdAogICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgY29ycmVzcG9uZHMgdG8gdGhpcyBjaHVuayBvZiBnZW5lcmF0ZWQgY29kZSwKICAgICAgLy8gICAgICAgbmFtZTogVGhlIG5hbWUgb2YgdGhlIG9yaWdpbmFsIHN5bWJvbCB3aGljaCBnZW5lcmF0ZWQgdGhpcyBjaHVuayBvZgogICAgICAvLyAgICAgICAgICAgICBjb2RlLgogICAgICAvLyAgICAgfQogICAgICAvLwogICAgICAvLyBBbGwgcHJvcGVydGllcyBleGNlcHQgZm9yIGBnZW5lcmF0ZWRMaW5lYCBhbmQgYGdlbmVyYXRlZENvbHVtbmAgY2FuIGJlCiAgICAgIC8vIGBudWxsYC4KICAgICAgLy8KICAgICAgLy8gYF9nZW5lcmF0ZWRNYXBwaW5nc2AgaXMgb3JkZXJlZCBieSB0aGUgZ2VuZXJhdGVkIHBvc2l0aW9ucy4KICAgICAgLy8KICAgICAgLy8gYF9vcmlnaW5hbE1hcHBpbmdzYCBpcyBvcmRlcmVkIGJ5IHRoZSBvcmlnaW5hbCBwb3NpdGlvbnMuCiAgICAgIGdldCBfZ2VuZXJhdGVkTWFwcGluZ3MoKSB7CiAgICAgICAgaWYgKCF0aGlzLl9fZ2VuZXJhdGVkTWFwcGluZ3MpIHsKICAgICAgICAgIHRoaXMuX3NvcnRHZW5lcmF0ZWRNYXBwaW5ncygpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fX2dlbmVyYXRlZE1hcHBpbmdzOwogICAgICB9CiAgICAgIGdldCBfb3JpZ2luYWxNYXBwaW5ncygpIHsKICAgICAgICBpZiAoIXRoaXMuX19vcmlnaW5hbE1hcHBpbmdzKSB7CiAgICAgICAgICB0aGlzLl9zb3J0T3JpZ2luYWxNYXBwaW5ncygpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fX29yaWdpbmFsTWFwcGluZ3M7CiAgICAgIH0KICAgICAgZ2V0IF9nZW5lcmF0ZWRNYXBwaW5nc1Vuc29ydGVkKCkgewogICAgICAgIGlmICghdGhpcy5fX2dlbmVyYXRlZE1hcHBpbmdzVW5zb3J0ZWQpIHsKICAgICAgICAgIHRoaXMuX3BhcnNlTWFwcGluZ3ModGhpcy5fbWFwcGluZ3MsIHRoaXMuc291cmNlUm9vdCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9fZ2VuZXJhdGVkTWFwcGluZ3NVbnNvcnRlZDsKICAgICAgfQogICAgICBnZXQgX29yaWdpbmFsTWFwcGluZ3NVbnNvcnRlZCgpIHsKICAgICAgICBpZiAoIXRoaXMuX19vcmlnaW5hbE1hcHBpbmdzVW5zb3J0ZWQpIHsKICAgICAgICAgIHRoaXMuX3BhcnNlTWFwcGluZ3ModGhpcy5fbWFwcGluZ3MsIHRoaXMuc291cmNlUm9vdCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9fb3JpZ2luYWxNYXBwaW5nc1Vuc29ydGVkOwogICAgICB9CiAgICAgIF9zb3J0R2VuZXJhdGVkTWFwcGluZ3MoKSB7CiAgICAgICAgY29uc3QgbWFwcGluZ3MgPSB0aGlzLl9nZW5lcmF0ZWRNYXBwaW5nc1Vuc29ydGVkOwogICAgICAgIG1hcHBpbmdzLnNvcnQodXRpbC5jb21wYXJlQnlHZW5lcmF0ZWRQb3NpdGlvbnNEZWZsYXRlZCk7CiAgICAgICAgdGhpcy5fX2dlbmVyYXRlZE1hcHBpbmdzID0gbWFwcGluZ3M7CiAgICAgIH0KICAgICAgX3NvcnRPcmlnaW5hbE1hcHBpbmdzKCkgewogICAgICAgIGNvbnN0IG1hcHBpbmdzID0gdGhpcy5fb3JpZ2luYWxNYXBwaW5nc1Vuc29ydGVkOwogICAgICAgIG1hcHBpbmdzLnNvcnQodXRpbC5jb21wYXJlQnlPcmlnaW5hbFBvc2l0aW9ucyk7CiAgICAgICAgdGhpcy5fX29yaWdpbmFsTWFwcGluZ3MgPSBtYXBwaW5nczsKICAgICAgfQogICAgICAvKioKICAgICAgICogVGhlIGxpc3Qgb2Ygb3JpZ2luYWwgc291cmNlcy4KICAgICAgICovCiAgICAgIGdldCBzb3VyY2VzKCkgewogICAgICAgIGNvbnN0IHNvdXJjZXMgPSBbXTsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuX3NlY3Rpb25zLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IHRoaXMuX3NlY3Rpb25zW2ldLmNvbnN1bWVyLnNvdXJjZXMubGVuZ3RoOyBqKyspIHsKICAgICAgICAgICAgc291cmNlcy5wdXNoKHRoaXMuX3NlY3Rpb25zW2ldLmNvbnN1bWVyLnNvdXJjZXNbal0pOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gc291cmNlczsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyB0aGUgb3JpZ2luYWwgc291cmNlLCBsaW5lLCBhbmQgY29sdW1uIGluZm9ybWF0aW9uIGZvciB0aGUgZ2VuZXJhdGVkCiAgICAgICAqIHNvdXJjZSdzIGxpbmUgYW5kIGNvbHVtbiBwb3NpdGlvbnMgcHJvdmlkZWQuIFRoZSBvbmx5IGFyZ3VtZW50IGlzIGFuIG9iamVjdAogICAgICAgKiB3aXRoIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgICoKICAgICAgICogICAtIGxpbmU6IFRoZSBsaW5lIG51bWJlciBpbiB0aGUgZ2VuZXJhdGVkIHNvdXJjZS4gIFRoZSBsaW5lIG51bWJlcgogICAgICAgKiAgICAgaXMgMS1iYXNlZC4KICAgICAgICogICAtIGNvbHVtbjogVGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UuICBUaGUgY29sdW1uCiAgICAgICAqICAgICBudW1iZXIgaXMgMC1iYXNlZC4KICAgICAgICoKICAgICAgICogYW5kIGFuIG9iamVjdCBpcyByZXR1cm5lZCB3aXRoIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgICoKICAgICAgICogICAtIHNvdXJjZTogVGhlIG9yaWdpbmFsIHNvdXJjZSBmaWxlLCBvciBudWxsLgogICAgICAgKiAgIC0gbGluZTogVGhlIGxpbmUgbnVtYmVyIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UsIG9yIG51bGwuICBUaGUKICAgICAgICogICAgIGxpbmUgbnVtYmVyIGlzIDEtYmFzZWQuCiAgICAgICAqICAgLSBjb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UsIG9yIG51bGwuICBUaGUKICAgICAgICogICAgIGNvbHVtbiBudW1iZXIgaXMgMC1iYXNlZC4KICAgICAgICogICAtIG5hbWU6IFRoZSBvcmlnaW5hbCBpZGVudGlmaWVyLCBvciBudWxsLgogICAgICAgKi8KICAgICAgb3JpZ2luYWxQb3NpdGlvbkZvcihhQXJncykgewogICAgICAgIGNvbnN0IG5lZWRsZSA9IHsKICAgICAgICAgIGdlbmVyYXRlZExpbmU6IHV0aWwuZ2V0QXJnKGFBcmdzLCAibGluZSIpLAogICAgICAgICAgZ2VuZXJhdGVkQ29sdW1uOiB1dGlsLmdldEFyZyhhQXJncywgImNvbHVtbiIpCiAgICAgICAgfTsKICAgICAgICBjb25zdCBzZWN0aW9uSW5kZXggPSBiaW5hcnlTZWFyY2guc2VhcmNoKAogICAgICAgICAgbmVlZGxlLAogICAgICAgICAgdGhpcy5fc2VjdGlvbnMsCiAgICAgICAgICBmdW5jdGlvbihhTmVlZGxlLCBzZWN0aW9uMikgewogICAgICAgICAgICBjb25zdCBjbXAgPSBhTmVlZGxlLmdlbmVyYXRlZExpbmUgLSBzZWN0aW9uMi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkTGluZTsKICAgICAgICAgICAgaWYgKGNtcCkgewogICAgICAgICAgICAgIHJldHVybiBjbXA7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIGFOZWVkbGUuZ2VuZXJhdGVkQ29sdW1uIC0gc2VjdGlvbjIuZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZENvbHVtbjsKICAgICAgICAgIH0KICAgICAgICApOwogICAgICAgIGNvbnN0IHNlY3Rpb24gPSB0aGlzLl9zZWN0aW9uc1tzZWN0aW9uSW5kZXhdOwogICAgICAgIGlmICghc2VjdGlvbikgewogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgc291cmNlOiBudWxsLAogICAgICAgICAgICBsaW5lOiBudWxsLAogICAgICAgICAgICBjb2x1bW46IG51bGwsCiAgICAgICAgICAgIG5hbWU6IG51bGwKICAgICAgICAgIH07CiAgICAgICAgfQogICAgICAgIHJldHVybiBzZWN0aW9uLmNvbnN1bWVyLm9yaWdpbmFsUG9zaXRpb25Gb3IoewogICAgICAgICAgbGluZTogbmVlZGxlLmdlbmVyYXRlZExpbmUgLSAoc2VjdGlvbi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkTGluZSAtIDEpLAogICAgICAgICAgY29sdW1uOiBuZWVkbGUuZ2VuZXJhdGVkQ29sdW1uIC0gKHNlY3Rpb24uZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZExpbmUgPT09IG5lZWRsZS5nZW5lcmF0ZWRMaW5lID8gc2VjdGlvbi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkQ29sdW1uIC0gMSA6IDApLAogICAgICAgICAgYmlhczogYUFyZ3MuYmlhcwogICAgICAgIH0pOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm4gdHJ1ZSBpZiB3ZSBoYXZlIHRoZSBzb3VyY2UgY29udGVudCBmb3IgZXZlcnkgc291cmNlIGluIHRoZSBzb3VyY2UKICAgICAgICogbWFwLCBmYWxzZSBvdGhlcndpc2UuCiAgICAgICAqLwogICAgICBoYXNDb250ZW50c09mQWxsU291cmNlcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fc2VjdGlvbnMuZXZlcnkoZnVuY3Rpb24ocykgewogICAgICAgICAgcmV0dXJuIHMuY29uc3VtZXIuaGFzQ29udGVudHNPZkFsbFNvdXJjZXMoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyB0aGUgb3JpZ2luYWwgc291cmNlIGNvbnRlbnQuIFRoZSBvbmx5IGFyZ3VtZW50IGlzIHRoZSB1cmwgb2YgdGhlCiAgICAgICAqIG9yaWdpbmFsIHNvdXJjZSBmaWxlLiBSZXR1cm5zIG51bGwgaWYgbm8gb3JpZ2luYWwgc291cmNlIGNvbnRlbnQgaXMKICAgICAgICogYXZhaWxhYmxlLgogICAgICAgKi8KICAgICAgc291cmNlQ29udGVudEZvcihhU291cmNlLCBudWxsT25NaXNzaW5nKSB7CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLl9zZWN0aW9ucy5sZW5ndGg7IGkrKykgewogICAgICAgICAgY29uc3Qgc2VjdGlvbiA9IHRoaXMuX3NlY3Rpb25zW2ldOwogICAgICAgICAgY29uc3QgY29udGVudCA9IHNlY3Rpb24uY29uc3VtZXIuc291cmNlQ29udGVudEZvcihhU291cmNlLCB0cnVlKTsKICAgICAgICAgIGlmIChjb250ZW50KSB7CiAgICAgICAgICAgIHJldHVybiBjb250ZW50OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAobnVsbE9uTWlzc2luZykgewogICAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgICAgfQogICAgICAgIHRocm93IG5ldyBFcnJvcignIicgKyBhU291cmNlICsgJyIgaXMgbm90IGluIHRoZSBTb3VyY2VNYXAuJyk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybnMgdGhlIGdlbmVyYXRlZCBsaW5lIGFuZCBjb2x1bW4gaW5mb3JtYXRpb24gZm9yIHRoZSBvcmlnaW5hbCBzb3VyY2UsCiAgICAgICAqIGxpbmUsIGFuZCBjb2x1bW4gcG9zaXRpb25zIHByb3ZpZGVkLiBUaGUgb25seSBhcmd1bWVudCBpcyBhbiBvYmplY3Qgd2l0aAogICAgICAgKiB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgICAgICAqCiAgICAgICAqICAgLSBzb3VyY2U6IFRoZSBmaWxlbmFtZSBvZiB0aGUgb3JpZ2luYWwgc291cmNlLgogICAgICAgKiAgIC0gbGluZTogVGhlIGxpbmUgbnVtYmVyIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UuICBUaGUgbGluZSBudW1iZXIKICAgICAgICogICAgIGlzIDEtYmFzZWQuCiAgICAgICAqICAgLSBjb2x1bW46IFRoZSBjb2x1bW4gbnVtYmVyIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UuICBUaGUgY29sdW1uCiAgICAgICAqICAgICBudW1iZXIgaXMgMC1iYXNlZC4KICAgICAgICoKICAgICAgICogYW5kIGFuIG9iamVjdCBpcyByZXR1cm5lZCB3aXRoIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgICoKICAgICAgICogICAtIGxpbmU6IFRoZSBsaW5lIG51bWJlciBpbiB0aGUgZ2VuZXJhdGVkIHNvdXJjZSwgb3IgbnVsbC4gIFRoZQogICAgICAgKiAgICAgbGluZSBudW1iZXIgaXMgMS1iYXNlZC4KICAgICAgICogICAtIGNvbHVtbjogVGhlIGNvbHVtbiBudW1iZXIgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UsIG9yIG51bGwuCiAgICAgICAqICAgICBUaGUgY29sdW1uIG51bWJlciBpcyAwLWJhc2VkLgogICAgICAgKi8KICAgICAgZ2VuZXJhdGVkUG9zaXRpb25Gb3IoYUFyZ3MpIHsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuX3NlY3Rpb25zLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICBjb25zdCBzZWN0aW9uID0gdGhpcy5fc2VjdGlvbnNbaV07CiAgICAgICAgICBpZiAoc2VjdGlvbi5jb25zdW1lci5fZmluZFNvdXJjZUluZGV4KHV0aWwuZ2V0QXJnKGFBcmdzLCAic291cmNlIikpID09PSAtMSkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGdlbmVyYXRlZFBvc2l0aW9uID0gc2VjdGlvbi5jb25zdW1lci5nZW5lcmF0ZWRQb3NpdGlvbkZvcihhQXJncyk7CiAgICAgICAgICBpZiAoZ2VuZXJhdGVkUG9zaXRpb24pIHsKICAgICAgICAgICAgY29uc3QgcmV0ID0gewogICAgICAgICAgICAgIGxpbmU6IGdlbmVyYXRlZFBvc2l0aW9uLmxpbmUgKyAoc2VjdGlvbi5nZW5lcmF0ZWRPZmZzZXQuZ2VuZXJhdGVkTGluZSAtIDEpLAogICAgICAgICAgICAgIGNvbHVtbjogZ2VuZXJhdGVkUG9zaXRpb24uY29sdW1uICsgKHNlY3Rpb24uZ2VuZXJhdGVkT2Zmc2V0LmdlbmVyYXRlZExpbmUgPT09IGdlbmVyYXRlZFBvc2l0aW9uLmxpbmUgPyBzZWN0aW9uLmdlbmVyYXRlZE9mZnNldC5nZW5lcmF0ZWRDb2x1bW4gLSAxIDogMCkKICAgICAgICAgICAgfTsKICAgICAgICAgICAgcmV0dXJuIHJldDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGxpbmU6IG51bGwsCiAgICAgICAgICBjb2x1bW46IG51bGwKICAgICAgICB9OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBQYXJzZSB0aGUgbWFwcGluZ3MgaW4gYSBzdHJpbmcgaW4gdG8gYSBkYXRhIHN0cnVjdHVyZSB3aGljaCB3ZSBjYW4gZWFzaWx5CiAgICAgICAqIHF1ZXJ5ICh0aGUgb3JkZXJlZCBhcnJheXMgaW4gdGhlIGB0aGlzLl9fZ2VuZXJhdGVkTWFwcGluZ3NgIGFuZAogICAgICAgKiBgdGhpcy5fX29yaWdpbmFsTWFwcGluZ3NgIHByb3BlcnRpZXMpLgogICAgICAgKi8KICAgICAgX3BhcnNlTWFwcGluZ3MoYVN0ciwgYVNvdXJjZVJvb3QpIHsKICAgICAgICBjb25zdCBnZW5lcmF0ZWRNYXBwaW5ncyA9IHRoaXMuX19nZW5lcmF0ZWRNYXBwaW5nc1Vuc29ydGVkID0gW107CiAgICAgICAgY29uc3Qgb3JpZ2luYWxNYXBwaW5ncyA9IHRoaXMuX19vcmlnaW5hbE1hcHBpbmdzVW5zb3J0ZWQgPSBbXTsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuX3NlY3Rpb25zLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICBjb25zdCBzZWN0aW9uID0gdGhpcy5fc2VjdGlvbnNbaV07CiAgICAgICAgICBjb25zdCBzZWN0aW9uTWFwcGluZ3MgPSBbXTsKICAgICAgICAgIHNlY3Rpb24uY29uc3VtZXIuZWFjaE1hcHBpbmcoKG0pID0+IHNlY3Rpb25NYXBwaW5ncy5wdXNoKG0pKTsKICAgICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgc2VjdGlvbk1hcHBpbmdzLmxlbmd0aDsgaisrKSB7CiAgICAgICAgICAgIGNvbnN0IG1hcHBpbmcgPSBzZWN0aW9uTWFwcGluZ3Nbal07CiAgICAgICAgICAgIGxldCBzb3VyY2UgPSB1dGlsLmNvbXB1dGVTb3VyY2VVUkwoc2VjdGlvbi5jb25zdW1lci5zb3VyY2VSb290LCBudWxsLCB0aGlzLl9zb3VyY2VNYXBVUkwpOwogICAgICAgICAgICB0aGlzLl9zb3VyY2VzLmFkZChzb3VyY2UpOwogICAgICAgICAgICBzb3VyY2UgPSB0aGlzLl9zb3VyY2VzLmluZGV4T2Yoc291cmNlKTsKICAgICAgICAgICAgbGV0IG5hbWUgPSBudWxsOwogICAgICAgICAgICBpZiAobWFwcGluZy5uYW1lKSB7CiAgICAgICAgICAgICAgdGhpcy5fbmFtZXMuYWRkKG1hcHBpbmcubmFtZSk7CiAgICAgICAgICAgICAgbmFtZSA9IHRoaXMuX25hbWVzLmluZGV4T2YobWFwcGluZy5uYW1lKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBjb25zdCBhZGp1c3RlZE1hcHBpbmcgPSB7CiAgICAgICAgICAgICAgc291cmNlLAogICAgICAgICAgICAgIGdlbmVyYXRlZExpbmU6IG1hcHBpbmcuZ2VuZXJhdGVkTGluZSArIChzZWN0aW9uLmdlbmVyYXRlZE9mZnNldC5nZW5lcmF0ZWRMaW5lIC0gMSksCiAgICAgICAgICAgICAgZ2VuZXJhdGVkQ29sdW1uOiBtYXBwaW5nLmdlbmVyYXRlZENvbHVtbiArIChzZWN0aW9uLmdlbmVyYXRlZE9mZnNldC5nZW5lcmF0ZWRMaW5lID09PSBtYXBwaW5nLmdlbmVyYXRlZExpbmUgPyBzZWN0aW9uLmdlbmVyYXRlZE9mZnNldC5nZW5lcmF0ZWRDb2x1bW4gLSAxIDogMCksCiAgICAgICAgICAgICAgb3JpZ2luYWxMaW5lOiBtYXBwaW5nLm9yaWdpbmFsTGluZSwKICAgICAgICAgICAgICBvcmlnaW5hbENvbHVtbjogbWFwcGluZy5vcmlnaW5hbENvbHVtbiwKICAgICAgICAgICAgICBuYW1lCiAgICAgICAgICAgIH07CiAgICAgICAgICAgIGdlbmVyYXRlZE1hcHBpbmdzLnB1c2goYWRqdXN0ZWRNYXBwaW5nKTsKICAgICAgICAgICAgaWYgKHR5cGVvZiBhZGp1c3RlZE1hcHBpbmcub3JpZ2luYWxMaW5lID09PSAibnVtYmVyIikgewogICAgICAgICAgICAgIG9yaWdpbmFsTWFwcGluZ3MucHVzaChhZGp1c3RlZE1hcHBpbmcpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIGVhY2hNYXBwaW5nKGFDYWxsYmFjaywgYUNvbnRleHQsIGFPcmRlcikgewogICAgICAgIGNvbnN0IGNvbnRleHQgPSBhQ29udGV4dCB8fCBudWxsOwogICAgICAgIGNvbnN0IG9yZGVyID0gYU9yZGVyIHx8IFNvdXJjZU1hcENvbnN1bWVyLkdFTkVSQVRFRF9PUkRFUjsKICAgICAgICBsZXQgbWFwcGluZ3M7CiAgICAgICAgc3dpdGNoIChvcmRlcikgewogICAgICAgICAgY2FzZSBTb3VyY2VNYXBDb25zdW1lci5HRU5FUkFURURfT1JERVI6CiAgICAgICAgICAgIG1hcHBpbmdzID0gdGhpcy5fZ2VuZXJhdGVkTWFwcGluZ3M7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgY2FzZSBTb3VyY2VNYXBDb25zdW1lci5PUklHSU5BTF9PUkRFUjoKICAgICAgICAgICAgbWFwcGluZ3MgPSB0aGlzLl9vcmlnaW5hbE1hcHBpbmdzOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5rbm93biBvcmRlciBvZiBpdGVyYXRpb24uIik7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHNvdXJjZVJvb3QgPSB0aGlzLnNvdXJjZVJvb3Q7CiAgICAgICAgbWFwcGluZ3MubWFwKGZ1bmN0aW9uKG1hcHBpbmcpIHsKICAgICAgICAgIGxldCBzb3VyY2UgPSBudWxsOwogICAgICAgICAgaWYgKG1hcHBpbmcuc291cmNlICE9PSBudWxsKSB7CiAgICAgICAgICAgIHNvdXJjZSA9IHRoaXMuX3NvdXJjZXMuYXQobWFwcGluZy5zb3VyY2UpOwogICAgICAgICAgICBzb3VyY2UgPSB1dGlsLmNvbXB1dGVTb3VyY2VVUkwoc291cmNlUm9vdCwgc291cmNlLCB0aGlzLl9zb3VyY2VNYXBVUkwpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgc291cmNlLAogICAgICAgICAgICBnZW5lcmF0ZWRMaW5lOiBtYXBwaW5nLmdlbmVyYXRlZExpbmUsCiAgICAgICAgICAgIGdlbmVyYXRlZENvbHVtbjogbWFwcGluZy5nZW5lcmF0ZWRDb2x1bW4sCiAgICAgICAgICAgIG9yaWdpbmFsTGluZTogbWFwcGluZy5vcmlnaW5hbExpbmUsCiAgICAgICAgICAgIG9yaWdpbmFsQ29sdW1uOiBtYXBwaW5nLm9yaWdpbmFsQ29sdW1uLAogICAgICAgICAgICBuYW1lOiBtYXBwaW5nLm5hbWUgPT09IG51bGwgPyBudWxsIDogdGhpcy5fbmFtZXMuYXQobWFwcGluZy5uYW1lKQogICAgICAgICAgfTsKICAgICAgICB9LCB0aGlzKS5mb3JFYWNoKGFDYWxsYmFjaywgY29udGV4dCk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEZpbmQgdGhlIG1hcHBpbmcgdGhhdCBiZXN0IG1hdGNoZXMgdGhlIGh5cG90aGV0aWNhbCAibmVlZGxlIiBtYXBwaW5nIHRoYXQKICAgICAgICogd2UgYXJlIHNlYXJjaGluZyBmb3IgaW4gdGhlIGdpdmVuICJoYXlzdGFjayIgb2YgbWFwcGluZ3MuCiAgICAgICAqLwogICAgICBfZmluZE1hcHBpbmcoYU5lZWRsZSwgYU1hcHBpbmdzLCBhTGluZU5hbWUsIGFDb2x1bW5OYW1lLCBhQ29tcGFyYXRvciwgYUJpYXMpIHsKICAgICAgICBpZiAoYU5lZWRsZVthTGluZU5hbWVdIDw9IDApIHsKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkxpbmUgbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gMSwgZ290ICIgKyBhTmVlZGxlW2FMaW5lTmFtZV0pOwogICAgICAgIH0KICAgICAgICBpZiAoYU5lZWRsZVthQ29sdW1uTmFtZV0gPCAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDb2x1bW4gbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gMCwgZ290ICIgKyBhTmVlZGxlW2FDb2x1bW5OYW1lXSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBiaW5hcnlTZWFyY2guc2VhcmNoKGFOZWVkbGUsIGFNYXBwaW5ncywgYUNvbXBhcmF0b3IsIGFCaWFzKTsKICAgICAgfQogICAgICBhbGxHZW5lcmF0ZWRQb3NpdGlvbnNGb3IoYUFyZ3MpIHsKICAgICAgICBjb25zdCBsaW5lID0gdXRpbC5nZXRBcmcoYUFyZ3MsICJsaW5lIik7CiAgICAgICAgY29uc3QgbmVlZGxlID0gewogICAgICAgICAgc291cmNlOiB1dGlsLmdldEFyZyhhQXJncywgInNvdXJjZSIpLAogICAgICAgICAgb3JpZ2luYWxMaW5lOiBsaW5lLAogICAgICAgICAgb3JpZ2luYWxDb2x1bW46IHV0aWwuZ2V0QXJnKGFBcmdzLCAiY29sdW1uIiwgMCkKICAgICAgICB9OwogICAgICAgIG5lZWRsZS5zb3VyY2UgPSB0aGlzLl9maW5kU291cmNlSW5kZXgobmVlZGxlLnNvdXJjZSk7CiAgICAgICAgaWYgKG5lZWRsZS5zb3VyY2UgPCAwKSB7CiAgICAgICAgICByZXR1cm4gW107CiAgICAgICAgfQogICAgICAgIGlmIChuZWVkbGUub3JpZ2luYWxMaW5lIDwgMSkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJMaW5lIG51bWJlcnMgbXVzdCBiZSA+PSAxIik7CiAgICAgICAgfQogICAgICAgIGlmIChuZWVkbGUub3JpZ2luYWxDb2x1bW4gPCAwKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNvbHVtbiBudW1iZXJzIG11c3QgYmUgPj0gMCIpOwogICAgICAgIH0KICAgICAgICBjb25zdCBtYXBwaW5ncyA9IFtdOwogICAgICAgIGxldCBpbmRleCA9IHRoaXMuX2ZpbmRNYXBwaW5nKAogICAgICAgICAgbmVlZGxlLAogICAgICAgICAgdGhpcy5fb3JpZ2luYWxNYXBwaW5ncywKICAgICAgICAgICJvcmlnaW5hbExpbmUiLAogICAgICAgICAgIm9yaWdpbmFsQ29sdW1uIiwKICAgICAgICAgIHV0aWwuY29tcGFyZUJ5T3JpZ2luYWxQb3NpdGlvbnMsCiAgICAgICAgICBiaW5hcnlTZWFyY2guTEVBU1RfVVBQRVJfQk9VTkQKICAgICAgICApOwogICAgICAgIGlmIChpbmRleCA+PSAwKSB7CiAgICAgICAgICBsZXQgbWFwcGluZyA9IHRoaXMuX29yaWdpbmFsTWFwcGluZ3NbaW5kZXhdOwogICAgICAgICAgaWYgKGFBcmdzLmNvbHVtbiA9PT0gdm9pZCAwKSB7CiAgICAgICAgICAgIGNvbnN0IG9yaWdpbmFsTGluZSA9IG1hcHBpbmcub3JpZ2luYWxMaW5lOwogICAgICAgICAgICB3aGlsZSAobWFwcGluZyAmJiBtYXBwaW5nLm9yaWdpbmFsTGluZSA9PT0gb3JpZ2luYWxMaW5lKSB7CiAgICAgICAgICAgICAgbGV0IGxhc3RDb2x1bW4gPSBtYXBwaW5nLmxhc3RHZW5lcmF0ZWRDb2x1bW47CiAgICAgICAgICAgICAgaWYgKHRoaXMuX2NvbXB1dGVkQ29sdW1uU3BhbnMgJiYgbGFzdENvbHVtbiA9PT0gbnVsbCkgewogICAgICAgICAgICAgICAgbGFzdENvbHVtbiA9IEluZmluaXR5OwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBtYXBwaW5ncy5wdXNoKHsKICAgICAgICAgICAgICAgIGxpbmU6IHV0aWwuZ2V0QXJnKG1hcHBpbmcsICJnZW5lcmF0ZWRMaW5lIiwgbnVsbCksCiAgICAgICAgICAgICAgICBjb2x1bW46IHV0aWwuZ2V0QXJnKG1hcHBpbmcsICJnZW5lcmF0ZWRDb2x1bW4iLCBudWxsKSwKICAgICAgICAgICAgICAgIGxhc3RDb2x1bW4KICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICBtYXBwaW5nID0gdGhpcy5fb3JpZ2luYWxNYXBwaW5nc1srK2luZGV4XTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgY29uc3Qgb3JpZ2luYWxDb2x1bW4gPSBtYXBwaW5nLm9yaWdpbmFsQ29sdW1uOwogICAgICAgICAgICB3aGlsZSAobWFwcGluZyAmJiBtYXBwaW5nLm9yaWdpbmFsTGluZSA9PT0gbGluZSAmJiBtYXBwaW5nLm9yaWdpbmFsQ29sdW1uID09IG9yaWdpbmFsQ29sdW1uKSB7CiAgICAgICAgICAgICAgbGV0IGxhc3RDb2x1bW4gPSBtYXBwaW5nLmxhc3RHZW5lcmF0ZWRDb2x1bW47CiAgICAgICAgICAgICAgaWYgKHRoaXMuX2NvbXB1dGVkQ29sdW1uU3BhbnMgJiYgbGFzdENvbHVtbiA9PT0gbnVsbCkgewogICAgICAgICAgICAgICAgbGFzdENvbHVtbiA9IEluZmluaXR5OwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBtYXBwaW5ncy5wdXNoKHsKICAgICAgICAgICAgICAgIGxpbmU6IHV0aWwuZ2V0QXJnKG1hcHBpbmcsICJnZW5lcmF0ZWRMaW5lIiwgbnVsbCksCiAgICAgICAgICAgICAgICBjb2x1bW46IHV0aWwuZ2V0QXJnKG1hcHBpbmcsICJnZW5lcmF0ZWRDb2x1bW4iLCBudWxsKSwKICAgICAgICAgICAgICAgIGxhc3RDb2x1bW4KICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICBtYXBwaW5nID0gdGhpcy5fb3JpZ2luYWxNYXBwaW5nc1srK2luZGV4XTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gbWFwcGluZ3M7CiAgICAgIH0KICAgICAgZGVzdHJveSgpIHsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuX3NlY3Rpb25zLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICB0aGlzLl9zZWN0aW9uc1tpXS5jb25zdW1lci5kZXN0cm95KCk7CiAgICAgICAgfQogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW5kZXhlZFNvdXJjZU1hcENvbnN1bWVyID0gSW5kZXhlZFNvdXJjZU1hcENvbnN1bWVyOwogICAgZnVuY3Rpb24gX2ZhY3RvcnkoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCkgewogICAgICBsZXQgc291cmNlTWFwID0gYVNvdXJjZU1hcDsKICAgICAgaWYgKHR5cGVvZiBhU291cmNlTWFwID09PSAic3RyaW5nIikgewogICAgICAgIHNvdXJjZU1hcCA9IHV0aWwucGFyc2VTb3VyY2VNYXBJbnB1dChhU291cmNlTWFwKTsKICAgICAgfQogICAgICBjb25zdCBjb25zdW1lciA9IHNvdXJjZU1hcC5zZWN0aW9ucyAhPSBudWxsID8gbmV3IEluZGV4ZWRTb3VyY2VNYXBDb25zdW1lcihzb3VyY2VNYXAsIGFTb3VyY2VNYXBVUkwpIDogbmV3IEJhc2ljU291cmNlTWFwQ29uc3VtZXIoc291cmNlTWFwLCBhU291cmNlTWFwVVJMKTsKICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShjb25zdW1lcik7CiAgICB9CiAgICBmdW5jdGlvbiBfZmFjdG9yeUJTTShhU291cmNlTWFwLCBhU291cmNlTWFwVVJMKSB7CiAgICAgIHJldHVybiBCYXNpY1NvdXJjZU1hcENvbnN1bWVyLmZyb21Tb3VyY2VNYXAoYVNvdXJjZU1hcCwgYVNvdXJjZU1hcFVSTCk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3NvdXJjZS1tYXAtbnBtLTAuNy40LWJjOGQwMThhYjYtMTAuemlwL25vZGVfbW9kdWxlcy9zb3VyY2UtbWFwL2xpYi9zb3VyY2Utbm9kZS5qcwp2YXIgcmVxdWlyZV9zb3VyY2Vfbm9kZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9saWIvc291cmNlLW5vZGUuanMiKGV4cG9ydHMyKSB7CiAgICB2YXIgU291cmNlTWFwR2VuZXJhdG9yID0gcmVxdWlyZV9zb3VyY2VfbWFwX2dlbmVyYXRvcigpLlNvdXJjZU1hcEdlbmVyYXRvcjsKICAgIHZhciB1dGlsID0gcmVxdWlyZV91dGlsMigpOwogICAgdmFyIFJFR0VYX05FV0xJTkUgPSAvKFxyP1xuKS87CiAgICB2YXIgTkVXTElORV9DT0RFID0gMTA7CiAgICB2YXIgaXNTb3VyY2VOb2RlID0gIiQkJGlzU291cmNlTm9kZSQkJCI7CiAgICB2YXIgU291cmNlTm9kZSA9IGNsYXNzIF9Tb3VyY2VOb2RlIHsKICAgICAgY29uc3RydWN0b3IoYUxpbmUsIGFDb2x1bW4sIGFTb3VyY2UsIGFDaHVua3MsIGFOYW1lKSB7CiAgICAgICAgdGhpcy5jaGlsZHJlbiA9IFtdOwogICAgICAgIHRoaXMuc291cmNlQ29udGVudHMgPSB7fTsKICAgICAgICB0aGlzLmxpbmUgPSBhTGluZSA9PSBudWxsID8gbnVsbCA6IGFMaW5lOwogICAgICAgIHRoaXMuY29sdW1uID0gYUNvbHVtbiA9PSBudWxsID8gbnVsbCA6IGFDb2x1bW47CiAgICAgICAgdGhpcy5zb3VyY2UgPSBhU291cmNlID09IG51bGwgPyBudWxsIDogYVNvdXJjZTsKICAgICAgICB0aGlzLm5hbWUgPSBhTmFtZSA9PSBudWxsID8gbnVsbCA6IGFOYW1lOwogICAgICAgIHRoaXNbaXNTb3VyY2VOb2RlXSA9IHRydWU7CiAgICAgICAgaWYgKGFDaHVua3MgIT0gbnVsbCkgdGhpcy5hZGQoYUNodW5rcyk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIENyZWF0ZXMgYSBTb3VyY2VOb2RlIGZyb20gZ2VuZXJhdGVkIGNvZGUgYW5kIGEgU291cmNlTWFwQ29uc3VtZXIuCiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBhR2VuZXJhdGVkQ29kZSBUaGUgZ2VuZXJhdGVkIGNvZGUKICAgICAgICogQHBhcmFtIGFTb3VyY2VNYXBDb25zdW1lciBUaGUgU291cmNlTWFwIGZvciB0aGUgZ2VuZXJhdGVkIGNvZGUKICAgICAgICogQHBhcmFtIGFSZWxhdGl2ZVBhdGggT3B0aW9uYWwuIFRoZSBwYXRoIHRoYXQgcmVsYXRpdmUgc291cmNlcyBpbiB0aGUKICAgICAgICogICAgICAgIFNvdXJjZU1hcENvbnN1bWVyIHNob3VsZCBiZSByZWxhdGl2ZSB0by4KICAgICAgICovCiAgICAgIHN0YXRpYyBmcm9tU3RyaW5nV2l0aFNvdXJjZU1hcChhR2VuZXJhdGVkQ29kZSwgYVNvdXJjZU1hcENvbnN1bWVyLCBhUmVsYXRpdmVQYXRoKSB7CiAgICAgICAgY29uc3Qgbm9kZSA9IG5ldyBfU291cmNlTm9kZSgpOwogICAgICAgIGNvbnN0IHJlbWFpbmluZ0xpbmVzID0gYUdlbmVyYXRlZENvZGUuc3BsaXQoUkVHRVhfTkVXTElORSk7CiAgICAgICAgbGV0IHJlbWFpbmluZ0xpbmVzSW5kZXggPSAwOwogICAgICAgIGNvbnN0IHNoaWZ0TmV4dExpbmUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgIGNvbnN0IGxpbmVDb250ZW50cyA9IGdldE5leHRMaW5lKCk7CiAgICAgICAgICBjb25zdCBuZXdMaW5lID0gZ2V0TmV4dExpbmUoKSB8fCAiIjsKICAgICAgICAgIHJldHVybiBsaW5lQ29udGVudHMgKyBuZXdMaW5lOwogICAgICAgICAgZnVuY3Rpb24gZ2V0TmV4dExpbmUoKSB7CiAgICAgICAgICAgIHJldHVybiByZW1haW5pbmdMaW5lc0luZGV4IDwgcmVtYWluaW5nTGluZXMubGVuZ3RoID8gcmVtYWluaW5nTGluZXNbcmVtYWluaW5nTGluZXNJbmRleCsrXSA6IHZvaWQgMDsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIGxldCBsYXN0R2VuZXJhdGVkTGluZSA9IDEsIGxhc3RHZW5lcmF0ZWRDb2x1bW4gPSAwOwogICAgICAgIGxldCBsYXN0TWFwcGluZyA9IG51bGw7CiAgICAgICAgbGV0IG5leHRMaW5lOwogICAgICAgIGFTb3VyY2VNYXBDb25zdW1lci5lYWNoTWFwcGluZyhmdW5jdGlvbihtYXBwaW5nKSB7CiAgICAgICAgICBpZiAobGFzdE1hcHBpbmcgIT09IG51bGwpIHsKICAgICAgICAgICAgaWYgKGxhc3RHZW5lcmF0ZWRMaW5lIDwgbWFwcGluZy5nZW5lcmF0ZWRMaW5lKSB7CiAgICAgICAgICAgICAgYWRkTWFwcGluZ1dpdGhDb2RlKGxhc3RNYXBwaW5nLCBzaGlmdE5leHRMaW5lKCkpOwogICAgICAgICAgICAgIGxhc3RHZW5lcmF0ZWRMaW5lKys7CiAgICAgICAgICAgICAgbGFzdEdlbmVyYXRlZENvbHVtbiA9IDA7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgbmV4dExpbmUgPSByZW1haW5pbmdMaW5lc1tyZW1haW5pbmdMaW5lc0luZGV4XSB8fCAiIjsKICAgICAgICAgICAgICBjb25zdCBjb2RlID0gbmV4dExpbmUuc3Vic3RyKDAsIG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uIC0gbGFzdEdlbmVyYXRlZENvbHVtbik7CiAgICAgICAgICAgICAgcmVtYWluaW5nTGluZXNbcmVtYWluaW5nTGluZXNJbmRleF0gPSBuZXh0TGluZS5zdWJzdHIobWFwcGluZy5nZW5lcmF0ZWRDb2x1bW4gLSBsYXN0R2VuZXJhdGVkQ29sdW1uKTsKICAgICAgICAgICAgICBsYXN0R2VuZXJhdGVkQ29sdW1uID0gbWFwcGluZy5nZW5lcmF0ZWRDb2x1bW47CiAgICAgICAgICAgICAgYWRkTWFwcGluZ1dpdGhDb2RlKGxhc3RNYXBwaW5nLCBjb2RlKTsKICAgICAgICAgICAgICBsYXN0TWFwcGluZyA9IG1hcHBpbmc7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICB3aGlsZSAobGFzdEdlbmVyYXRlZExpbmUgPCBtYXBwaW5nLmdlbmVyYXRlZExpbmUpIHsKICAgICAgICAgICAgbm9kZS5hZGQoc2hpZnROZXh0TGluZSgpKTsKICAgICAgICAgICAgbGFzdEdlbmVyYXRlZExpbmUrKzsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChsYXN0R2VuZXJhdGVkQ29sdW1uIDwgbWFwcGluZy5nZW5lcmF0ZWRDb2x1bW4pIHsKICAgICAgICAgICAgbmV4dExpbmUgPSByZW1haW5pbmdMaW5lc1tyZW1haW5pbmdMaW5lc0luZGV4XSB8fCAiIjsKICAgICAgICAgICAgbm9kZS5hZGQobmV4dExpbmUuc3Vic3RyKDAsIG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uKSk7CiAgICAgICAgICAgIHJlbWFpbmluZ0xpbmVzW3JlbWFpbmluZ0xpbmVzSW5kZXhdID0gbmV4dExpbmUuc3Vic3RyKG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uKTsKICAgICAgICAgICAgbGFzdEdlbmVyYXRlZENvbHVtbiA9IG1hcHBpbmcuZ2VuZXJhdGVkQ29sdW1uOwogICAgICAgICAgfQogICAgICAgICAgbGFzdE1hcHBpbmcgPSBtYXBwaW5nOwogICAgICAgIH0sIHRoaXMpOwogICAgICAgIGlmIChyZW1haW5pbmdMaW5lc0luZGV4IDwgcmVtYWluaW5nTGluZXMubGVuZ3RoKSB7CiAgICAgICAgICBpZiAobGFzdE1hcHBpbmcpIHsKICAgICAgICAgICAgYWRkTWFwcGluZ1dpdGhDb2RlKGxhc3RNYXBwaW5nLCBzaGlmdE5leHRMaW5lKCkpOwogICAgICAgICAgfQogICAgICAgICAgbm9kZS5hZGQocmVtYWluaW5nTGluZXMuc3BsaWNlKHJlbWFpbmluZ0xpbmVzSW5kZXgpLmpvaW4oIiIpKTsKICAgICAgICB9CiAgICAgICAgYVNvdXJjZU1hcENvbnN1bWVyLnNvdXJjZXMuZm9yRWFjaChmdW5jdGlvbihzb3VyY2VGaWxlKSB7CiAgICAgICAgICBjb25zdCBjb250ZW50ID0gYVNvdXJjZU1hcENvbnN1bWVyLnNvdXJjZUNvbnRlbnRGb3Ioc291cmNlRmlsZSk7CiAgICAgICAgICBpZiAoY29udGVudCAhPSBudWxsKSB7CiAgICAgICAgICAgIGlmIChhUmVsYXRpdmVQYXRoICE9IG51bGwpIHsKICAgICAgICAgICAgICBzb3VyY2VGaWxlID0gdXRpbC5qb2luKGFSZWxhdGl2ZVBhdGgsIHNvdXJjZUZpbGUpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIG5vZGUuc2V0U291cmNlQ29udGVudChzb3VyY2VGaWxlLCBjb250ZW50KTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgICByZXR1cm4gbm9kZTsKICAgICAgICBmdW5jdGlvbiBhZGRNYXBwaW5nV2l0aENvZGUobWFwcGluZywgY29kZSkgewogICAgICAgICAgaWYgKG1hcHBpbmcgPT09IG51bGwgfHwgbWFwcGluZy5zb3VyY2UgPT09IHZvaWQgMCkgewogICAgICAgICAgICBub2RlLmFkZChjb2RlKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IHNvdXJjZSA9IGFSZWxhdGl2ZVBhdGggPyB1dGlsLmpvaW4oYVJlbGF0aXZlUGF0aCwgbWFwcGluZy5zb3VyY2UpIDogbWFwcGluZy5zb3VyY2U7CiAgICAgICAgICAgIG5vZGUuYWRkKG5ldyBfU291cmNlTm9kZSgKICAgICAgICAgICAgICBtYXBwaW5nLm9yaWdpbmFsTGluZSwKICAgICAgICAgICAgICBtYXBwaW5nLm9yaWdpbmFsQ29sdW1uLAogICAgICAgICAgICAgIHNvdXJjZSwKICAgICAgICAgICAgICBjb2RlLAogICAgICAgICAgICAgIG1hcHBpbmcubmFtZQogICAgICAgICAgICApKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIEFkZCBhIGNodW5rIG9mIGdlbmVyYXRlZCBKUyB0byB0aGlzIHNvdXJjZSBub2RlLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYUNodW5rIEEgc3RyaW5nIHNuaXBwZXQgb2YgZ2VuZXJhdGVkIEpTIGNvZGUsIGFub3RoZXIgaW5zdGFuY2Ugb2YKICAgICAgICogICAgICAgIFNvdXJjZU5vZGUsIG9yIGFuIGFycmF5IHdoZXJlIGVhY2ggbWVtYmVyIGlzIG9uZSBvZiB0aG9zZSB0aGluZ3MuCiAgICAgICAqLwogICAgICBhZGQoYUNodW5rKSB7CiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoYUNodW5rKSkgewogICAgICAgICAgYUNodW5rLmZvckVhY2goZnVuY3Rpb24oY2h1bmspIHsKICAgICAgICAgICAgdGhpcy5hZGQoY2h1bmspOwogICAgICAgICAgfSwgdGhpcyk7CiAgICAgICAgfSBlbHNlIGlmIChhQ2h1bmtbaXNTb3VyY2VOb2RlXSB8fCB0eXBlb2YgYUNodW5rID09PSAic3RyaW5nIikgewogICAgICAgICAgaWYgKGFDaHVuaykgewogICAgICAgICAgICB0aGlzLmNoaWxkcmVuLnB1c2goYUNodW5rKTsKICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigKICAgICAgICAgICAgIkV4cGVjdGVkIGEgU291cmNlTm9kZSwgc3RyaW5nLCBvciBhbiBhcnJheSBvZiBTb3VyY2VOb2RlcyBhbmQgc3RyaW5ncy4gR290ICIgKyBhQ2h1bmsKICAgICAgICAgICk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBBZGQgYSBjaHVuayBvZiBnZW5lcmF0ZWQgSlMgdG8gdGhlIGJlZ2lubmluZyBvZiB0aGlzIHNvdXJjZSBub2RlLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYUNodW5rIEEgc3RyaW5nIHNuaXBwZXQgb2YgZ2VuZXJhdGVkIEpTIGNvZGUsIGFub3RoZXIgaW5zdGFuY2Ugb2YKICAgICAgICogICAgICAgIFNvdXJjZU5vZGUsIG9yIGFuIGFycmF5IHdoZXJlIGVhY2ggbWVtYmVyIGlzIG9uZSBvZiB0aG9zZSB0aGluZ3MuCiAgICAgICAqLwogICAgICBwcmVwZW5kKGFDaHVuaykgewogICAgICAgIGlmIChBcnJheS5pc0FycmF5KGFDaHVuaykpIHsKICAgICAgICAgIGZvciAobGV0IGkgPSBhQ2h1bmsubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHsKICAgICAgICAgICAgdGhpcy5wcmVwZW5kKGFDaHVua1tpXSk7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIGlmIChhQ2h1bmtbaXNTb3VyY2VOb2RlXSB8fCB0eXBlb2YgYUNodW5rID09PSAic3RyaW5nIikgewogICAgICAgICAgdGhpcy5jaGlsZHJlbi51bnNoaWZ0KGFDaHVuayk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoCiAgICAgICAgICAgICJFeHBlY3RlZCBhIFNvdXJjZU5vZGUsIHN0cmluZywgb3IgYW4gYXJyYXkgb2YgU291cmNlTm9kZXMgYW5kIHN0cmluZ3MuIEdvdCAiICsgYUNodW5rCiAgICAgICAgICApOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvKioKICAgICAgICogV2FsayBvdmVyIHRoZSB0cmVlIG9mIEpTIHNuaXBwZXRzIGluIHRoaXMgbm9kZSBhbmQgaXRzIGNoaWxkcmVuLiBUaGUKICAgICAgICogd2Fsa2luZyBmdW5jdGlvbiBpcyBjYWxsZWQgb25jZSBmb3IgZWFjaCBzbmlwcGV0IG9mIEpTIGFuZCBpcyBwYXNzZWQgdGhhdAogICAgICAgKiBzbmlwcGV0IGFuZCB0aGUgaXRzIG9yaWdpbmFsIGFzc29jaWF0ZWQgc291cmNlJ3MgbGluZS9jb2x1bW4gbG9jYXRpb24uCiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBhRm4gVGhlIHRyYXZlcnNhbCBmdW5jdGlvbi4KICAgICAgICovCiAgICAgIHdhbGsoYUZuKSB7CiAgICAgICAgbGV0IGNodW5rOwogICAgICAgIGZvciAobGV0IGkgPSAwLCBsZW4gPSB0aGlzLmNoaWxkcmVuLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7CiAgICAgICAgICBjaHVuayA9IHRoaXMuY2hpbGRyZW5baV07CiAgICAgICAgICBpZiAoY2h1bmtbaXNTb3VyY2VOb2RlXSkgewogICAgICAgICAgICBjaHVuay53YWxrKGFGbik7CiAgICAgICAgICB9IGVsc2UgaWYgKGNodW5rICE9PSAiIikgewogICAgICAgICAgICBhRm4oY2h1bmssIHsKICAgICAgICAgICAgICBzb3VyY2U6IHRoaXMuc291cmNlLAogICAgICAgICAgICAgIGxpbmU6IHRoaXMubGluZSwKICAgICAgICAgICAgICBjb2x1bW46IHRoaXMuY29sdW1uLAogICAgICAgICAgICAgIG5hbWU6IHRoaXMubmFtZQogICAgICAgICAgICB9KTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIExpa2UgYFN0cmluZy5wcm90b3R5cGUuam9pbmAgZXhjZXB0IGZvciBTb3VyY2VOb2Rlcy4gSW5zZXJ0cyBgYVN0cmAgYmV0d2VlbgogICAgICAgKiBlYWNoIG9mIGB0aGlzLmNoaWxkcmVuYC4KICAgICAgICoKICAgICAgICogQHBhcmFtIGFTZXAgVGhlIHNlcGFyYXRvci4KICAgICAgICovCiAgICAgIGpvaW4oYVNlcCkgewogICAgICAgIGxldCBuZXdDaGlsZHJlbjsKICAgICAgICBsZXQgaTsKICAgICAgICBjb25zdCBsZW4gPSB0aGlzLmNoaWxkcmVuLmxlbmd0aDsKICAgICAgICBpZiAobGVuID4gMCkgewogICAgICAgICAgbmV3Q2hpbGRyZW4gPSBbXTsKICAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBsZW4gLSAxOyBpKyspIHsKICAgICAgICAgICAgbmV3Q2hpbGRyZW4ucHVzaCh0aGlzLmNoaWxkcmVuW2ldKTsKICAgICAgICAgICAgbmV3Q2hpbGRyZW4ucHVzaChhU2VwKTsKICAgICAgICAgIH0KICAgICAgICAgIG5ld0NoaWxkcmVuLnB1c2godGhpcy5jaGlsZHJlbltpXSk7CiAgICAgICAgICB0aGlzLmNoaWxkcmVuID0gbmV3Q2hpbGRyZW47CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBDYWxsIFN0cmluZy5wcm90b3R5cGUucmVwbGFjZSBvbiB0aGUgdmVyeSByaWdodC1tb3N0IHNvdXJjZSBzbmlwcGV0LiBVc2VmdWwKICAgICAgICogZm9yIHRyaW1taW5nIHdoaXRlc3BhY2UgZnJvbSB0aGUgZW5kIG9mIGEgc291cmNlIG5vZGUsIGV0Yy4KICAgICAgICoKICAgICAgICogQHBhcmFtIGFQYXR0ZXJuIFRoZSBwYXR0ZXJuIHRvIHJlcGxhY2UuCiAgICAgICAqIEBwYXJhbSBhUmVwbGFjZW1lbnQgVGhlIHRoaW5nIHRvIHJlcGxhY2UgdGhlIHBhdHRlcm4gd2l0aC4KICAgICAgICovCiAgICAgIHJlcGxhY2VSaWdodChhUGF0dGVybiwgYVJlcGxhY2VtZW50KSB7CiAgICAgICAgY29uc3QgbGFzdENoaWxkID0gdGhpcy5jaGlsZHJlblt0aGlzLmNoaWxkcmVuLmxlbmd0aCAtIDFdOwogICAgICAgIGlmIChsYXN0Q2hpbGRbaXNTb3VyY2VOb2RlXSkgewogICAgICAgICAgbGFzdENoaWxkLnJlcGxhY2VSaWdodChhUGF0dGVybiwgYVJlcGxhY2VtZW50KTsKICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiBsYXN0Q2hpbGQgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICB0aGlzLmNoaWxkcmVuW3RoaXMuY2hpbGRyZW4ubGVuZ3RoIC0gMV0gPSBsYXN0Q2hpbGQucmVwbGFjZShhUGF0dGVybiwgYVJlcGxhY2VtZW50KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5jaGlsZHJlbi5wdXNoKCIiLnJlcGxhY2UoYVBhdHRlcm4sIGFSZXBsYWNlbWVudCkpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICAvKioKICAgICAgICogU2V0IHRoZSBzb3VyY2UgY29udGVudCBmb3IgYSBzb3VyY2UgZmlsZS4gVGhpcyB3aWxsIGJlIGFkZGVkIHRvIHRoZSBTb3VyY2VNYXBHZW5lcmF0b3IKICAgICAgICogaW4gdGhlIHNvdXJjZXNDb250ZW50IGZpZWxkLgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYVNvdXJjZUZpbGUgVGhlIGZpbGVuYW1lIG9mIHRoZSBzb3VyY2UgZmlsZQogICAgICAgKiBAcGFyYW0gYVNvdXJjZUNvbnRlbnQgVGhlIGNvbnRlbnQgb2YgdGhlIHNvdXJjZSBmaWxlCiAgICAgICAqLwogICAgICBzZXRTb3VyY2VDb250ZW50KGFTb3VyY2VGaWxlLCBhU291cmNlQ29udGVudCkgewogICAgICAgIHRoaXMuc291cmNlQ29udGVudHNbdXRpbC50b1NldFN0cmluZyhhU291cmNlRmlsZSldID0gYVNvdXJjZUNvbnRlbnQ7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFdhbGsgb3ZlciB0aGUgdHJlZSBvZiBTb3VyY2VOb2Rlcy4gVGhlIHdhbGtpbmcgZnVuY3Rpb24gaXMgY2FsbGVkIGZvciBlYWNoCiAgICAgICAqIHNvdXJjZSBmaWxlIGNvbnRlbnQgYW5kIGlzIHBhc3NlZCB0aGUgZmlsZW5hbWUgYW5kIHNvdXJjZSBjb250ZW50LgogICAgICAgKgogICAgICAgKiBAcGFyYW0gYUZuIFRoZSB0cmF2ZXJzYWwgZnVuY3Rpb24uCiAgICAgICAqLwogICAgICB3YWxrU291cmNlQ29udGVudHMoYUZuKSB7CiAgICAgICAgZm9yIChsZXQgaSA9IDAsIGxlbiA9IHRoaXMuY2hpbGRyZW4ubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHsKICAgICAgICAgIGlmICh0aGlzLmNoaWxkcmVuW2ldW2lzU291cmNlTm9kZV0pIHsKICAgICAgICAgICAgdGhpcy5jaGlsZHJlbltpXS53YWxrU291cmNlQ29udGVudHMoYUZuKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY29uc3Qgc291cmNlcyA9IE9iamVjdC5rZXlzKHRoaXMuc291cmNlQ29udGVudHMpOwogICAgICAgIGZvciAobGV0IGkgPSAwLCBsZW4gPSBzb3VyY2VzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7CiAgICAgICAgICBhRm4odXRpbC5mcm9tU2V0U3RyaW5nKHNvdXJjZXNbaV0pLCB0aGlzLnNvdXJjZUNvbnRlbnRzW3NvdXJjZXNbaV1dKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFJldHVybiB0aGUgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoaXMgc291cmNlIG5vZGUuIFdhbGtzIG92ZXIgdGhlIHRyZWUKICAgICAgICogYW5kIGNvbmNhdGVuYXRlcyBhbGwgdGhlIHZhcmlvdXMgc25pcHBldHMgdG9nZXRoZXIgdG8gb25lIHN0cmluZy4KICAgICAgICovCiAgICAgIHRvU3RyaW5nKCkgewogICAgICAgIGxldCBzdHIgPSAiIjsKICAgICAgICB0aGlzLndhbGsoZnVuY3Rpb24oY2h1bmspIHsKICAgICAgICAgIHN0ciArPSBjaHVuazsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gc3RyOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIHRoZSBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhpcyBzb3VyY2Ugbm9kZSBhbG9uZyB3aXRoIGEgc291cmNlCiAgICAgICAqIG1hcC4KICAgICAgICovCiAgICAgIHRvU3RyaW5nV2l0aFNvdXJjZU1hcChhQXJncykgewogICAgICAgIGNvbnN0IGdlbmVyYXRlZCA9IHsKICAgICAgICAgIGNvZGU6ICIiLAogICAgICAgICAgbGluZTogMSwKICAgICAgICAgIGNvbHVtbjogMAogICAgICAgIH07CiAgICAgICAgY29uc3QgbWFwID0gbmV3IFNvdXJjZU1hcEdlbmVyYXRvcihhQXJncyk7CiAgICAgICAgbGV0IHNvdXJjZU1hcHBpbmdBY3RpdmUgPSBmYWxzZTsKICAgICAgICBsZXQgbGFzdE9yaWdpbmFsU291cmNlID0gbnVsbDsKICAgICAgICBsZXQgbGFzdE9yaWdpbmFsTGluZSA9IG51bGw7CiAgICAgICAgbGV0IGxhc3RPcmlnaW5hbENvbHVtbiA9IG51bGw7CiAgICAgICAgbGV0IGxhc3RPcmlnaW5hbE5hbWUgPSBudWxsOwogICAgICAgIHRoaXMud2FsayhmdW5jdGlvbihjaHVuaywgb3JpZ2luYWwpIHsKICAgICAgICAgIGdlbmVyYXRlZC5jb2RlICs9IGNodW5rOwogICAgICAgICAgaWYgKG9yaWdpbmFsLnNvdXJjZSAhPT0gbnVsbCAmJiBvcmlnaW5hbC5saW5lICE9PSBudWxsICYmIG9yaWdpbmFsLmNvbHVtbiAhPT0gbnVsbCkgewogICAgICAgICAgICBpZiAobGFzdE9yaWdpbmFsU291cmNlICE9PSBvcmlnaW5hbC5zb3VyY2UgfHwgbGFzdE9yaWdpbmFsTGluZSAhPT0gb3JpZ2luYWwubGluZSB8fCBsYXN0T3JpZ2luYWxDb2x1bW4gIT09IG9yaWdpbmFsLmNvbHVtbiB8fCBsYXN0T3JpZ2luYWxOYW1lICE9PSBvcmlnaW5hbC5uYW1lKSB7CiAgICAgICAgICAgICAgbWFwLmFkZE1hcHBpbmcoewogICAgICAgICAgICAgICAgc291cmNlOiBvcmlnaW5hbC5zb3VyY2UsCiAgICAgICAgICAgICAgICBvcmlnaW5hbDogewogICAgICAgICAgICAgICAgICBsaW5lOiBvcmlnaW5hbC5saW5lLAogICAgICAgICAgICAgICAgICBjb2x1bW46IG9yaWdpbmFsLmNvbHVtbgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGdlbmVyYXRlZDogewogICAgICAgICAgICAgICAgICBsaW5lOiBnZW5lcmF0ZWQubGluZSwKICAgICAgICAgICAgICAgICAgY29sdW1uOiBnZW5lcmF0ZWQuY29sdW1uCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgbmFtZTogb3JpZ2luYWwubmFtZQogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxhc3RPcmlnaW5hbFNvdXJjZSA9IG9yaWdpbmFsLnNvdXJjZTsKICAgICAgICAgICAgbGFzdE9yaWdpbmFsTGluZSA9IG9yaWdpbmFsLmxpbmU7CiAgICAgICAgICAgIGxhc3RPcmlnaW5hbENvbHVtbiA9IG9yaWdpbmFsLmNvbHVtbjsKICAgICAgICAgICAgbGFzdE9yaWdpbmFsTmFtZSA9IG9yaWdpbmFsLm5hbWU7CiAgICAgICAgICAgIHNvdXJjZU1hcHBpbmdBY3RpdmUgPSB0cnVlOwogICAgICAgICAgfSBlbHNlIGlmIChzb3VyY2VNYXBwaW5nQWN0aXZlKSB7CiAgICAgICAgICAgIG1hcC5hZGRNYXBwaW5nKHsKICAgICAgICAgICAgICBnZW5lcmF0ZWQ6IHsKICAgICAgICAgICAgICAgIGxpbmU6IGdlbmVyYXRlZC5saW5lLAogICAgICAgICAgICAgICAgY29sdW1uOiBnZW5lcmF0ZWQuY29sdW1uCiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKICAgICAgICAgICAgbGFzdE9yaWdpbmFsU291cmNlID0gbnVsbDsKICAgICAgICAgICAgc291cmNlTWFwcGluZ0FjdGl2ZSA9IGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgZm9yIChsZXQgaWR4ID0gMCwgbGVuZ3RoID0gY2h1bmsubGVuZ3RoOyBpZHggPCBsZW5ndGg7IGlkeCsrKSB7CiAgICAgICAgICAgIGlmIChjaHVuay5jaGFyQ29kZUF0KGlkeCkgPT09IE5FV0xJTkVfQ09ERSkgewogICAgICAgICAgICAgIGdlbmVyYXRlZC5saW5lKys7CiAgICAgICAgICAgICAgZ2VuZXJhdGVkLmNvbHVtbiA9IDA7CiAgICAgICAgICAgICAgaWYgKGlkeCArIDEgPT09IGxlbmd0aCkgewogICAgICAgICAgICAgICAgbGFzdE9yaWdpbmFsU291cmNlID0gbnVsbDsKICAgICAgICAgICAgICAgIHNvdXJjZU1hcHBpbmdBY3RpdmUgPSBmYWxzZTsKICAgICAgICAgICAgICB9IGVsc2UgaWYgKHNvdXJjZU1hcHBpbmdBY3RpdmUpIHsKICAgICAgICAgICAgICAgIG1hcC5hZGRNYXBwaW5nKHsKICAgICAgICAgICAgICAgICAgc291cmNlOiBvcmlnaW5hbC5zb3VyY2UsCiAgICAgICAgICAgICAgICAgIG9yaWdpbmFsOiB7CiAgICAgICAgICAgICAgICAgICAgbGluZTogb3JpZ2luYWwubGluZSwKICAgICAgICAgICAgICAgICAgICBjb2x1bW46IG9yaWdpbmFsLmNvbHVtbgogICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICBnZW5lcmF0ZWQ6IHsKICAgICAgICAgICAgICAgICAgICBsaW5lOiBnZW5lcmF0ZWQubGluZSwKICAgICAgICAgICAgICAgICAgICBjb2x1bW46IGdlbmVyYXRlZC5jb2x1bW4KICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgbmFtZTogb3JpZ2luYWwubmFtZQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIGdlbmVyYXRlZC5jb2x1bW4rKzsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICAgIHRoaXMud2Fsa1NvdXJjZUNvbnRlbnRzKGZ1bmN0aW9uKHNvdXJjZUZpbGUsIHNvdXJjZUNvbnRlbnQpIHsKICAgICAgICAgIG1hcC5zZXRTb3VyY2VDb250ZW50KHNvdXJjZUZpbGUsIHNvdXJjZUNvbnRlbnQpOwogICAgICAgIH0pOwogICAgICAgIHJldHVybiB7IGNvZGU6IGdlbmVyYXRlZC5jb2RlLCBtYXAgfTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNvdXJjZU5vZGUgPSBTb3VyY2VOb2RlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9zb3VyY2UtbWFwLW5wbS0wLjcuNC1iYzhkMDE4YWI2LTEwLnppcC9ub2RlX21vZHVsZXMvc291cmNlLW1hcC9zb3VyY2UtbWFwLmpzCnZhciByZXF1aXJlX3NvdXJjZV9tYXAgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc291cmNlLW1hcC1ucG0tMC43LjQtYmM4ZDAxOGFiNi0xMC56aXAvbm9kZV9tb2R1bGVzL3NvdXJjZS1tYXAvc291cmNlLW1hcC5qcyIoZXhwb3J0czIpIHsKICAgIGV4cG9ydHMyLlNvdXJjZU1hcEdlbmVyYXRvciA9IHJlcXVpcmVfc291cmNlX21hcF9nZW5lcmF0b3IoKS5Tb3VyY2VNYXBHZW5lcmF0b3I7CiAgICBleHBvcnRzMi5Tb3VyY2VNYXBDb25zdW1lciA9IHJlcXVpcmVfc291cmNlX21hcF9jb25zdW1lcigpLlNvdXJjZU1hcENvbnN1bWVyOwogICAgZXhwb3J0czIuU291cmNlTm9kZSA9IHJlcXVpcmVfc291cmNlX25vZGUoKS5Tb3VyY2VOb2RlOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvdGVtcGxhdGUuanMKdmFyIHJlcXVpcmVfdGVtcGxhdGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3RlbXBsYXRlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50ZW1wbGF0ZVBhcnNlciA9IHRlbXBsYXRlUGFyc2VyOwogICAgZXhwb3J0czIudGVtcGxhdGUgPSB0ZW1wbGF0ZTM7CiAgICB2YXIgc291cmNlX21hcF8xID0gcmVxdWlyZV9zb3VyY2VfbWFwKCk7CiAgICB2YXIga0ludGVycG9sYXRlUmUgPSAvPCU9KFtcc1xTXSs/KSU+L2c7CiAgICB2YXIga0NvbW1lbnRSZSA9IC88JSMoW1xzXFNdKz8pJT4vZzsKICAgIHZhciBrRXNjYXBlUmUgPSAvPCUtKFtcc1xTXSs/KSU+L2c7CiAgICB2YXIga0V2YWx1YXRlUmUgPSAvPCUoW1xzXFNdKz8pJT4vZzsKICAgIHZhciBrSHRtbEVzY2FwZXMgPSB7CiAgICAgICImIjogIiZhbXA7IiwKICAgICAgIjwiOiAiJmx0OyIsCiAgICAgICI+IjogIiZndDsiLAogICAgICAnIic6ICImcXVvdDsiLAogICAgICAiJyI6ICImIzM5OyIsCiAgICAgICJgIjogIiYjOTY7IgogICAgfTsKICAgIHZhciByZVVuZXNjYXBlZEh0bWwgPSBuZXcgUmVnRXhwKGBbJHtPYmplY3Qua2V5cyhrSHRtbEVzY2FwZXMpLmpvaW4oIiIpfV1gLCAiZyIpOwogICAgZnVuY3Rpb24gX3Bvc2l0aW9uRm9yKGNvbnRlbnQsIG9mZnNldCkgewogICAgICBsZXQgbGluZSA9IDE7CiAgICAgIGxldCBjb2x1bW4gPSAwOwogICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG9mZnNldCAtIDE7IGkrKykgewogICAgICAgIGlmIChjb250ZW50W2ldID09ICJcbiIpIHsKICAgICAgICAgIGxpbmUrKzsKICAgICAgICAgIGNvbHVtbiA9IDA7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGNvbHVtbisrOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gewogICAgICAgIGxpbmUsCiAgICAgICAgY29sdW1uCiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiB0ZW1wbGF0ZVBhcnNlcihzb3VyY2VUZXh0LCBmaWxlTmFtZSkgewogICAgICBjb25zdCBjaGlsZHJlbiA9IFtdOwogICAgICBjb25zdCByZUV4cHJlc3Npb25zID0gW2tFc2NhcGVSZSwga0NvbW1lbnRSZSwga0ludGVycG9sYXRlUmUsIGtFdmFsdWF0ZVJlXTsKICAgICAgY29uc3QgcmVEZWxpbWl0ZXJzID0gUmVnRXhwKHJlRXhwcmVzc2lvbnMubWFwKCh4KSA9PiB4LnNvdXJjZSkuam9pbigifCIpICsgInwkIiwgImciKTsKICAgICAgY29uc3QgcGFyc2VkID0gc291cmNlVGV4dC5zcGxpdChyZURlbGltaXRlcnMpOwogICAgICBsZXQgb2Zmc2V0ID0gMDsKICAgICAgbGV0IHN0YXJ0ID0gX3Bvc2l0aW9uRm9yKHNvdXJjZVRleHQsIG9mZnNldCk7CiAgICAgIGxldCBlbmQ7CiAgICAgIGNvbnN0IGluY3JlbWVudCA9IHJlRXhwcmVzc2lvbnMubGVuZ3RoICsgMTsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwYXJzZWQubGVuZ3RoOyBpICs9IGluY3JlbWVudCkgewogICAgICAgIGNvbnN0IFtjb250ZW50LCBlc2NhcGUyLCBjb21tZW50LCBpbnRlcnBvbGF0ZSwgZXZhbHVhdGVdID0gcGFyc2VkLnNsaWNlKGksIGkgKyBpbmNyZW1lbnQpOwogICAgICAgIGlmIChjb250ZW50KSB7CiAgICAgICAgICBlbmQgPSBfcG9zaXRpb25Gb3Ioc291cmNlVGV4dCwgb2Zmc2V0ICsgY29udGVudC5sZW5ndGgpOwogICAgICAgICAgb2Zmc2V0ICs9IGNvbnRlbnQubGVuZ3RoOwogICAgICAgICAgY2hpbGRyZW4ucHVzaCh7IGtpbmQ6ICJjb250ZW50IiwgY29udGVudCwgc3RhcnQsIGVuZCB9KTsKICAgICAgICAgIHN0YXJ0ID0gZW5kOwogICAgICAgIH0KICAgICAgICBpZiAoZXNjYXBlMikgewogICAgICAgICAgZW5kID0gX3Bvc2l0aW9uRm9yKHNvdXJjZVRleHQsIG9mZnNldCArIGVzY2FwZTIubGVuZ3RoICsgNSk7CiAgICAgICAgICBvZmZzZXQgKz0gZXNjYXBlMi5sZW5ndGggKyA1OwogICAgICAgICAgY2hpbGRyZW4ucHVzaCh7IGtpbmQ6ICJlc2NhcGUiLCBleHByZXNzaW9uOiBlc2NhcGUyLCBzdGFydCwgZW5kIH0pOwogICAgICAgICAgc3RhcnQgPSBlbmQ7CiAgICAgICAgfQogICAgICAgIGlmIChjb21tZW50KSB7CiAgICAgICAgICBlbmQgPSBfcG9zaXRpb25Gb3Ioc291cmNlVGV4dCwgb2Zmc2V0ICsgY29tbWVudC5sZW5ndGggKyA1KTsKICAgICAgICAgIG9mZnNldCArPSBjb21tZW50Lmxlbmd0aCArIDU7CiAgICAgICAgICBjaGlsZHJlbi5wdXNoKHsga2luZDogImNvbW1lbnQiLCB0ZXh0OiBjb21tZW50LCBzdGFydCwgZW5kIH0pOwogICAgICAgICAgc3RhcnQgPSBlbmQ7CiAgICAgICAgfQogICAgICAgIGlmIChpbnRlcnBvbGF0ZSkgewogICAgICAgICAgZW5kID0gX3Bvc2l0aW9uRm9yKHNvdXJjZVRleHQsIG9mZnNldCArIGludGVycG9sYXRlLmxlbmd0aCArIDUpOwogICAgICAgICAgb2Zmc2V0ICs9IGludGVycG9sYXRlLmxlbmd0aCArIDU7CiAgICAgICAgICBjaGlsZHJlbi5wdXNoKHsKICAgICAgICAgICAga2luZDogImludGVycG9sYXRlIiwKICAgICAgICAgICAgZXhwcmVzc2lvbjogaW50ZXJwb2xhdGUsCiAgICAgICAgICAgIHN0YXJ0LAogICAgICAgICAgICBlbmQKICAgICAgICAgIH0pOwogICAgICAgICAgc3RhcnQgPSBlbmQ7CiAgICAgICAgfQogICAgICAgIGlmIChldmFsdWF0ZSkgewogICAgICAgICAgZW5kID0gX3Bvc2l0aW9uRm9yKHNvdXJjZVRleHQsIG9mZnNldCArIGV2YWx1YXRlLmxlbmd0aCArIDUpOwogICAgICAgICAgb2Zmc2V0ICs9IGV2YWx1YXRlLmxlbmd0aCArIDU7CiAgICAgICAgICBjaGlsZHJlbi5wdXNoKHsga2luZDogImV2YWx1YXRlIiwgZXhwcmVzc2lvbjogZXZhbHVhdGUsIHN0YXJ0LCBlbmQgfSk7CiAgICAgICAgICBzdGFydCA9IGVuZDsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIHsKICAgICAgICBmaWxlTmFtZSwKICAgICAgICBjb250ZW50OiBzb3VyY2VUZXh0LAogICAgICAgIGNoaWxkcmVuCiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiB0ZW1wbGF0ZUZhc3QoYXN0LCBvcHRpb25zKSB7CiAgICAgIGNvbnN0IG1vZHVsZTMgPSBvcHRpb25zICYmIG9wdGlvbnMubW9kdWxlID8gIm1vZHVsZS5leHBvcnRzLmRlZmF1bHQgPSIgOiAiIjsKICAgICAgY29uc3QgcmVIdG1sRXNjYXBlID0gcmVVbmVzY2FwZWRIdG1sLnNvdXJjZS5yZXBsYWNlKC9bJ10vZywgIlxcXFxcXCciKTsKICAgICAgcmV0dXJuIGAKICAgIHJldHVybiAke21vZHVsZTN9IGZ1bmN0aW9uKG9iaikgewogICAgICBvYmogfHwgKG9iaiA9IHt9KTsKICAgICAgbGV0IF9fdDsKICAgICAgbGV0IF9fcCA9ICcnOwogICAgICBjb25zdCBfX2VzY2FwZXMgPSAke0pTT04uc3RyaW5naWZ5KGtIdG1sRXNjYXBlcyl9OwogICAgICBjb25zdCBfX2VzY2FwZXNyZSA9IG5ldyBSZWdFeHAoJyR7cmVIdG1sRXNjYXBlfScsICdnJyk7CgogICAgICBjb25zdCBfX2UgPSBmdW5jdGlvbihzKSB7CiAgICAgICAgcmV0dXJuIHMgPyBzLnJlcGxhY2UoX19lc2NhcGVzcmUsIGZ1bmN0aW9uKGtleSkgeyByZXR1cm4gX19lc2NhcGVzW2tleV07IH0pIDogJyc7CiAgICAgIH07CiAgICAgIHdpdGggKG9iaikgewogICAgICAgICR7YXN0LmNoaWxkcmVuLm1hcCgobm9kZSkgPT4gewogICAgICAgIHN3aXRjaCAobm9kZS5raW5kKSB7CiAgICAgICAgICBjYXNlICJjb250ZW50IjoKICAgICAgICAgICAgcmV0dXJuIGBfX3AgKz0gJHtKU09OLnN0cmluZ2lmeShub2RlLmNvbnRlbnQpfTtgOwogICAgICAgICAgY2FzZSAiaW50ZXJwb2xhdGUiOgogICAgICAgICAgICByZXR1cm4gYF9fcCArPSAoKF9fdCA9ICgke25vZGUuZXhwcmVzc2lvbn0pKSA9PSBudWxsKSA/ICcnIDogX190O2A7CiAgICAgICAgICBjYXNlICJlc2NhcGUiOgogICAgICAgICAgICByZXR1cm4gYF9fcCArPSBfX2UoJHtub2RlLmV4cHJlc3Npb259KTtgOwogICAgICAgICAgY2FzZSAiZXZhbHVhdGUiOgogICAgICAgICAgICByZXR1cm4gbm9kZS5leHByZXNzaW9uOwogICAgICAgIH0KICAgICAgfSkuam9pbigiXG4iKX0KICAgICAgfQoKICAgICAgcmV0dXJuIF9fcDsKICAgIH07CiAgYDsKICAgIH0KICAgIGZ1bmN0aW9uIHRlbXBsYXRlV2l0aFNvdXJjZU1hcChhc3QsIG9wdGlvbnMpIHsKICAgICAgY29uc3Qgc291cmNlVXJsID0gYXN0LmZpbGVOYW1lOwogICAgICBjb25zdCBtb2R1bGUzID0gb3B0aW9ucyAmJiBvcHRpb25zLm1vZHVsZSA/ICJtb2R1bGUuZXhwb3J0cy5kZWZhdWx0ID0iIDogIiI7CiAgICAgIGNvbnN0IHJlSHRtbEVzY2FwZSA9IHJlVW5lc2NhcGVkSHRtbC5zb3VyY2UucmVwbGFjZSgvWyddL2csICJcXFxcXFwnIik7CiAgICAgIGNvbnN0IHByZWFtYmxlID0gbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKDEsIDAsIHNvdXJjZVVybCwgIiIpLmFkZChuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUoMSwgMCwgc291cmNlVXJsLCBbCiAgICAgICAgYHJldHVybiAke21vZHVsZTN9IGZ1bmN0aW9uKG9iaikgewpgLAogICAgICAgICIgIG9iaiB8fCAob2JqID0ge30pO1xuIiwKICAgICAgICAiICBsZXQgX190O1xuIiwKICAgICAgICAnICBsZXQgX19wID0gIiI7XG4nLAogICAgICAgIGAgIGNvbnN0IF9fZXNjYXBlcyA9ICR7SlNPTi5zdHJpbmdpZnkoa0h0bWxFc2NhcGVzKX07CmAsCiAgICAgICAgYCAgY29uc3QgX19lc2NhcGVzcmUgPSBuZXcgUmVnRXhwKCcke3JlSHRtbEVzY2FwZX0nLCAnZycpOwpgLAogICAgICAgIGAKYCwKICAgICAgICBgICBjb25zdCBfX2UgPSBmdW5jdGlvbihzKSB7IGAsCiAgICAgICAgYCAgICByZXR1cm4gcyA/IHMucmVwbGFjZShfX2VzY2FwZXNyZSwgZnVuY3Rpb24oa2V5KSB7IHJldHVybiBfX2VzY2FwZXNba2V5XTsgfSkgOiAnJztgLAogICAgICAgIGAgIH07CmAsCiAgICAgICAgYCAgd2l0aCAob2JqKSB7CmAKICAgICAgXSkpOwogICAgICBjb25zdCBlbmQgPSBhc3QuY2hpbGRyZW4ubGVuZ3RoID8gYXN0LmNoaWxkcmVuW2FzdC5jaGlsZHJlbi5sZW5ndGggLSAxXS5lbmQgOiB7IGxpbmU6IDAsIGNvbHVtbjogMCB9OwogICAgICBjb25zdCBub2RlcyA9IGFzdC5jaGlsZHJlbi5yZWR1Y2UoKGNodW5rLCBub2RlKSA9PiB7CiAgICAgICAgbGV0IGNvZGUyID0gIiI7CiAgICAgICAgc3dpdGNoIChub2RlLmtpbmQpIHsKICAgICAgICAgIGNhc2UgImNvbnRlbnQiOgogICAgICAgICAgICBjb2RlMiA9IFsKICAgICAgICAgICAgICBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5zdGFydC5saW5lLCBub2RlLnN0YXJ0LmNvbHVtbiwgc291cmNlVXJsLCAiX19wID0gX19wIiksCiAgICAgICAgICAgICAgLi4ubm9kZS5jb250ZW50LnNwbGl0KCJcbiIpLm1hcCgobGluZSwgaSwgYXJyKSA9PiB7CiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuc3RhcnQubGluZSArIGksIGkgPT0gMCA/IG5vZGUuc3RhcnQuY29sdW1uIDogMCwgc291cmNlVXJsLCAiXG4gICAgKyAiICsgSlNPTi5zdHJpbmdpZnkobGluZSArIChpID09IGFyci5sZW5ndGggLSAxID8gIiIgOiAiXG4iKSkpOwogICAgICAgICAgICAgIH0pLAogICAgICAgICAgICAgIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLmVuZC5saW5lLCBub2RlLmVuZC5jb2x1bW4sIHNvdXJjZVVybCwgIjtcbiIpCiAgICAgICAgICAgIF07CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgY2FzZSAiaW50ZXJwb2xhdGUiOgogICAgICAgICAgICBjb2RlMiA9IFsKICAgICAgICAgICAgICBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5zdGFydC5saW5lLCBub2RlLnN0YXJ0LmNvbHVtbiwgc291cmNlVXJsLCAiX19wICs9ICgoX190ID0gIiksCiAgICAgICAgICAgICAgLi4ubm9kZS5leHByZXNzaW9uLnNwbGl0KCJcbiIpLm1hcCgobGluZSwgaSwgYXJyKSA9PiB7CiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuc3RhcnQubGluZSArIGksIGkgPT0gMCA/IG5vZGUuc3RhcnQuY29sdW1uIDogMCwgc291cmNlVXJsLCBsaW5lICsgKGkgPT0gYXJyLmxlbmd0aCAtIDEgPyAiIiA6ICJcbiIpKTsKICAgICAgICAgICAgICB9KSwKICAgICAgICAgICAgICBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5lbmQubGluZSwgbm9kZS5lbmQuY29sdW1uLCBzb3VyY2VVcmwsICcpID09IG51bGwgPyAiIiA6IF9fdCk7XG4nKQogICAgICAgICAgICBdOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIGNhc2UgImVzY2FwZSI6CiAgICAgICAgICAgIGNvZGUyID0gWwogICAgICAgICAgICAgIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLnN0YXJ0LmxpbmUsIG5vZGUuc3RhcnQuY29sdW1uLCBzb3VyY2VVcmwsICJfX3AgKz0gX19lKCIpLAogICAgICAgICAgICAgIC4uLm5vZGUuZXhwcmVzc2lvbi5zcGxpdCgiXG4iKS5tYXAoKGxpbmUsIGksIGFycikgPT4gewogICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLnN0YXJ0LmxpbmUgKyBpLCBpID09IDAgPyBub2RlLnN0YXJ0LmNvbHVtbiA6IDAsIHNvdXJjZVVybCwgbGluZSArIChpID09IGFyci5sZW5ndGggLSAxID8gIiIgOiAiXG4iKSk7CiAgICAgICAgICAgICAgfSksCiAgICAgICAgICAgICAgbmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuZW5kLmxpbmUsIG5vZGUuZW5kLmNvbHVtbiwgc291cmNlVXJsLCAiKTtcbiIpCiAgICAgICAgICAgIF07CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgY2FzZSAiZXZhbHVhdGUiOgogICAgICAgICAgICBjb2RlMiA9IFsKICAgICAgICAgICAgICAuLi5ub2RlLmV4cHJlc3Npb24uc3BsaXQoIlxuIikubWFwKChsaW5lLCBpLCBhcnIpID0+IHsKICAgICAgICAgICAgICAgIHJldHVybiBuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUobm9kZS5zdGFydC5saW5lICsgaSwgaSA9PSAwID8gbm9kZS5zdGFydC5jb2x1bW4gOiAwLCBzb3VyY2VVcmwsIGxpbmUgKyAoaSA9PSBhcnIubGVuZ3RoIC0gMSA/ICIiIDogIlxuIikpOwogICAgICAgICAgICAgIH0pLAogICAgICAgICAgICAgIG5ldyBzb3VyY2VfbWFwXzEuU291cmNlTm9kZShub2RlLmVuZC5saW5lLCBub2RlLmVuZC5jb2x1bW4sIHNvdXJjZVVybCwgIlxuIikKICAgICAgICAgICAgXTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIHJldHVybiBjaHVuay5hZGQobmV3IHNvdXJjZV9tYXBfMS5Tb3VyY2VOb2RlKG5vZGUuc3RhcnQubGluZSwgbm9kZS5zdGFydC5jb2x1bW4sIHNvdXJjZVVybCwgY29kZTIpKTsKICAgICAgfSwgcHJlYW1ibGUpLmFkZChuZXcgc291cmNlX21hcF8xLlNvdXJjZU5vZGUoZW5kLmxpbmUsIGVuZC5jb2x1bW4sIHNvdXJjZVVybCwgWyIgIH07XG4iLCAiXG4iLCAiICByZXR1cm4gX19wO1xuIiwgIn1cbiJdKSk7CiAgICAgIGNvbnN0IGNvZGUgPSBub2Rlcy50b1N0cmluZ1dpdGhTb3VyY2VNYXAoewogICAgICAgIGZpbGU6IHNvdXJjZVVybCwKICAgICAgICBzb3VyY2VSb290OiBvcHRpb25zICYmIG9wdGlvbnMuc291cmNlUm9vdCB8fCAiLiIKICAgICAgfSk7CiAgICAgIGNvZGUubWFwLnNldFNvdXJjZUNvbnRlbnQoc291cmNlVXJsLCBhc3QuY29udGVudCk7CiAgICAgIHJldHVybiBjb2RlLmNvZGUgKyAiXG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LCIgKyBCdWZmZXIuZnJvbShjb2RlLm1hcC50b1N0cmluZygpKS50b1N0cmluZygiYmFzZTY0Iik7CiAgICB9CiAgICBmdW5jdGlvbiB0ZW1wbGF0ZTMoY29udGVudCwgb3B0aW9ucykgewogICAgICBjb25zdCBzb3VyY2VVcmwgPSBvcHRpb25zICYmIG9wdGlvbnMuc291cmNlVVJMIHx8ICJlanMiOwogICAgICBjb25zdCBhc3QgPSB0ZW1wbGF0ZVBhcnNlcihjb250ZW50LCBzb3VyY2VVcmwpOwogICAgICBsZXQgc291cmNlOwogICAgICBpZiAob3B0aW9ucyAmJiBvcHRpb25zLnNvdXJjZU1hcCkgewogICAgICAgIHNvdXJjZSA9IHRlbXBsYXRlV2l0aFNvdXJjZU1hcChhc3QsIG9wdGlvbnMpOwogICAgICB9IGVsc2UgewogICAgICAgIHNvdXJjZSA9IHRlbXBsYXRlRmFzdChhc3QsIG9wdGlvbnMpOwogICAgICB9CiAgICAgIGNvbnN0IGZuID0gRnVuY3Rpb24oIm1vZHVsZSIsIHNvdXJjZSk7CiAgICAgIGNvbnN0IG1vZHVsZTMgPSBvcHRpb25zICYmIG9wdGlvbnMubW9kdWxlID8gb3B0aW9ucy5tb2R1bGUgPT09IHRydWUgPyB7IGV4cG9ydHM6IHt9IH0gOiBvcHRpb25zLm1vZHVsZSA6IG51bGw7CiAgICAgIGNvbnN0IHJlc3VsdCA9IGZuKG1vZHVsZTMpOwogICAgICByZXN1bHQuc291cmNlID0gc291cmNlOwogICAgICByZXR1cm4gcmVzdWx0OwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvcGFydGlhbGx5LW9yZGVyZWQtc2V0LmpzCnZhciByZXF1aXJlX3BhcnRpYWxseV9vcmRlcmVkX3NldCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvcGFydGlhbGx5LW9yZGVyZWQtc2V0LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5QYXJ0aWFsbHlPcmRlcmVkU2V0ID0gZXhwb3J0czIuQ2lyY3VsYXJEZXBlbmRlbmN5Rm91bmRFeGNlcHRpb24gPSBleHBvcnRzMi5EZXBlbmRlbmN5Tm90Rm91bmRFeGNlcHRpb24gPSB2b2lkIDA7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbigpOwogICAgdmFyIERlcGVuZGVuY3lOb3RGb3VuZEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgZXhjZXB0aW9uXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHN1cGVyKCJPbmUgb2YgdGhlIGRlcGVuZGVuY2llcyBpcyBub3QgcGFydCBvZiB0aGUgc2V0LiIpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRGVwZW5kZW5jeU5vdEZvdW5kRXhjZXB0aW9uID0gRGVwZW5kZW5jeU5vdEZvdW5kRXhjZXB0aW9uOwogICAgdmFyIENpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBleGNlcHRpb25fMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgc3VwZXIoIkNpcmN1bGFyIGRlcGVuZGVuY2llcyBmb3VuZC4iKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkNpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uID0gQ2lyY3VsYXJEZXBlbmRlbmN5Rm91bmRFeGNlcHRpb247CiAgICB2YXIgUGFydGlhbGx5T3JkZXJlZFNldCA9IGNsYXNzIHsKICAgICAgX2l0ZW1zID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgX2NoZWNrQ2lyY3VsYXJEZXBlbmRlbmNpZXMoaXRlbSwgZGVwcykgewogICAgICAgIGlmIChkZXBzLmhhcyhpdGVtKSkgewogICAgICAgICAgdGhyb3cgbmV3IENpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uKCk7CiAgICAgICAgfQogICAgICAgIGRlcHMuZm9yRWFjaCgoZGVwKSA9PiB0aGlzLl9jaGVja0NpcmN1bGFyRGVwZW5kZW5jaWVzKGl0ZW0sIHRoaXMuX2l0ZW1zLmdldChkZXApIHx8IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCkpKTsKICAgICAgfQogICAgICBjbGVhcigpIHsKICAgICAgICB0aGlzLl9pdGVtcy5jbGVhcigpOwogICAgICB9CiAgICAgIGhhcyhpdGVtKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2l0ZW1zLmhhcyhpdGVtKTsKICAgICAgfQogICAgICBnZXQgc2l6ZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5faXRlbXMuc2l6ZTsKICAgICAgfQogICAgICBmb3JFYWNoKGNhbGxiYWNrZm4sIHRoaXNBcmcpIHsKICAgICAgICBmb3IgKGNvbnN0IHggb2YgdGhpcykgewogICAgICAgICAgY2FsbGJhY2tmbi5jYWxsKHRoaXNBcmcsIHgsIHgsIHRoaXMpOwogICAgICAgIH0KICAgICAgfQogICAgICAvKioKICAgICAgICogUmV0dXJucyBhbiBpdGVyYWJsZSBvZiBbdix2XSBwYWlycyBmb3IgZXZlcnkgdmFsdWUgYHZgIGluIHRoZSBzZXQuCiAgICAgICAqLwogICAgICAqZW50cmllcygpIHsKICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgdGhpcykgewogICAgICAgICAgeWllbGQgW2l0ZW0sIGl0ZW1dOwogICAgICAgIH0KICAgICAgfQogICAgICAvKioKICAgICAgICogRGVzcGl0ZSBpdHMgbmFtZSwgcmV0dXJucyBhbiBpdGVyYWJsZSBvZiB0aGUgdmFsdWVzIGluIHRoZSBzZXQsCiAgICAgICAqLwogICAgICBrZXlzKCkgewogICAgICAgIHJldHVybiB0aGlzLnZhbHVlcygpOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBSZXR1cm5zIGFuIGl0ZXJhYmxlIG9mIHZhbHVlcyBpbiB0aGUgc2V0LgogICAgICAgKi8KICAgICAgdmFsdWVzKCkgewogICAgICAgIHJldHVybiB0aGlzW1N5bWJvbC5pdGVyYXRvcl0oKTsKICAgICAgfQogICAgICBhZGQoaXRlbSwgZGVwcyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCkpIHsKICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShkZXBzKSkgewogICAgICAgICAgZGVwcyA9IG5ldyBTZXQoZGVwcyk7CiAgICAgICAgfQogICAgICAgIGlmICh0aGlzLl9pdGVtcy5oYXMoaXRlbSkpIHsKICAgICAgICAgIGNvbnN0IGl0ZW1EZXBzID0gdGhpcy5faXRlbXMuZ2V0KGl0ZW0pIHx8IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgICAgICBsZXQgZXF1YWwgPSB0cnVlOwogICAgICAgICAgZm9yIChjb25zdCBkZXAgb2YgZGVwcykgewogICAgICAgICAgICBpZiAoIWl0ZW1EZXBzLmhhcyhkZXApKSB7CiAgICAgICAgICAgICAgZXF1YWwgPSBmYWxzZTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKGVxdWFsKSB7CiAgICAgICAgICAgIGZvciAoY29uc3QgZGVwIG9mIGl0ZW1EZXBzKSB7CiAgICAgICAgICAgICAgaWYgKCFkZXBzLmhhcyhkZXApKSB7CiAgICAgICAgICAgICAgICBlcXVhbCA9IGZhbHNlOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZXF1YWwpIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aGlzLl9pdGVtcy5kZWxldGUoaXRlbSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZvciAoY29uc3QgZGVwIG9mIGRlcHMpIHsKICAgICAgICAgIGlmICghdGhpcy5faXRlbXMuaGFzKGRlcCkpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IERlcGVuZGVuY3lOb3RGb3VuZEV4Y2VwdGlvbigpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICB0aGlzLl9jaGVja0NpcmN1bGFyRGVwZW5kZW5jaWVzKGl0ZW0sIGRlcHMpOwogICAgICAgIHRoaXMuX2l0ZW1zLnNldChpdGVtLCBuZXcgU2V0KGRlcHMpKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBkZWxldGUoaXRlbSkgewogICAgICAgIGlmICghdGhpcy5faXRlbXMuaGFzKGl0ZW0pKSB7CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfQogICAgICAgIHRoaXMuX2l0ZW1zLmZvckVhY2goKHZhbHVlKSA9PiB2YWx1ZS5kZWxldGUoaXRlbSkpOwogICAgICAgIHJldHVybiB0aGlzLl9pdGVtcy5kZWxldGUoaXRlbSk7CiAgICAgIH0KICAgICAgKltTeW1ib2wuaXRlcmF0b3JdKCkgewogICAgICAgIGNvbnN0IGNvcHkgPSBuZXcgTWFwKHRoaXMuX2l0ZW1zKTsKICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBjb3B5LmVudHJpZXMoKSkgewogICAgICAgICAgY29weS5zZXQoa2V5LCBuZXcgU2V0KHZhbHVlKSk7CiAgICAgICAgfQogICAgICAgIHdoaWxlIChjb3B5LnNpemUgPiAwKSB7CiAgICAgICAgICBjb25zdCBydW4gPSBbXTsKICAgICAgICAgIGZvciAoY29uc3QgW2l0ZW0sIGRlcHNdIG9mIGNvcHkuZW50cmllcygpKSB7CiAgICAgICAgICAgIGlmIChkZXBzLnNpemUgPT0gMCkgewogICAgICAgICAgICAgIHJ1bi5wdXNoKGl0ZW0pOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgcnVuKSB7CiAgICAgICAgICAgIGNvcHkuZm9yRWFjaCgocykgPT4gcy5kZWxldGUoaXRlbSkpOwogICAgICAgICAgICBjb3B5LmRlbGV0ZShpdGVtKTsKICAgICAgICAgICAgeWllbGQgaXRlbTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChydW4ubGVuZ3RoID09IDApIHsKICAgICAgICAgICAgdGhyb3cgbmV3IENpcmN1bGFyRGVwZW5kZW5jeUZvdW5kRXhjZXB0aW9uKCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH0KICAgICAgZ2V0IFtTeW1ib2wudG9TdHJpbmdUYWddKCkgewogICAgICAgIHJldHVybiAiU2V0IjsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlBhcnRpYWxseU9yZGVyZWRTZXQgPSBQYXJ0aWFsbHlPcmRlcmVkU2V0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvcHJpb3JpdHktcXVldWUuanMKdmFyIHJlcXVpcmVfcHJpb3JpdHlfcXVldWUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3ByaW9yaXR5LXF1ZXVlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Qcmlvcml0eVF1ZXVlID0gdm9pZCAwOwogICAgdmFyIFByaW9yaXR5UXVldWUgPSBjbGFzcyB7CiAgICAgIF9jb21wYXJhdG9yOwogICAgICBfaXRlbXMgPSBuZXcgQXJyYXkoKTsKICAgICAgY29uc3RydWN0b3IoX2NvbXBhcmF0b3IpIHsKICAgICAgICB0aGlzLl9jb21wYXJhdG9yID0gX2NvbXBhcmF0b3I7CiAgICAgIH0KICAgICAgY2xlYXIoKSB7CiAgICAgICAgdGhpcy5faXRlbXMgPSBuZXcgQXJyYXkoKTsKICAgICAgfQogICAgICBwdXNoKGl0ZW0pIHsKICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMuX2l0ZW1zLmZpbmRJbmRleCgoZXhpc3RpbmcpID0+IHRoaXMuX2NvbXBhcmF0b3IoaXRlbSwgZXhpc3RpbmcpIDw9IDApOwogICAgICAgIGlmIChpbmRleCA9PT0gLTEpIHsKICAgICAgICAgIHRoaXMuX2l0ZW1zLnB1c2goaXRlbSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX2l0ZW1zLnNwbGljZShpbmRleCwgMCwgaXRlbSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHBvcCgpIHsKICAgICAgICBpZiAodGhpcy5faXRlbXMubGVuZ3RoID09PSAwKSB7CiAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5faXRlbXMuc3BsaWNlKDAsIDEpWzBdOwogICAgICB9CiAgICAgIHBlZWsoKSB7CiAgICAgICAgaWYgKHRoaXMuX2l0ZW1zLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX2l0ZW1zWzBdOwogICAgICB9CiAgICAgIGdldCBzaXplKCkgewogICAgICAgIHJldHVybiB0aGlzLl9pdGVtcy5sZW5ndGg7CiAgICAgIH0KICAgICAgdG9BcnJheSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5faXRlbXMuc2xpY2UoKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlByaW9yaXR5UXVldWUgPSBQcmlvcml0eVF1ZXVlOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdXRpbHMvbGFuZy5qcwp2YXIgcmVxdWlyZV9sYW5nID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9sYW5nLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5pc1Byb21pc2UgPSBpc1Byb21pc2U7CiAgICBmdW5jdGlvbiBpc1Byb21pc2Uob2JqKSB7CiAgICAgIHJldHVybiAhIW9iaiAmJiB0eXBlb2Ygb2JqLnRoZW4gPT09ICJmdW5jdGlvbiI7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9pbmRleC5qcwp2YXIgcmVxdWlyZV91dGlsczMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fY3JlYXRlQmluZGluZyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fY3JlYXRlQmluZGluZyB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihtLCBrKTsKICAgICAgaWYgKCFkZXNjIHx8ICgiZ2V0IiBpbiBkZXNjID8gIW0uX19lc01vZHVsZSA6IGRlc2Mud3JpdGFibGUgfHwgZGVzYy5jb25maWd1cmFibGUpKSB7CiAgICAgICAgZGVzYyA9IHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBtW2tdOwogICAgICAgIH0gfTsKICAgICAgfQogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgazIsIGRlc2MpOwogICAgfSA6IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIG9bazJdID0gbVtrXTsKICAgIH0pOwogICAgdmFyIF9fc2V0TW9kdWxlRGVmYXVsdCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc2V0TW9kdWxlRGVmYXVsdCB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJkZWZhdWx0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCB2YWx1ZTogdiB9KTsKICAgIH0gOiBmdW5jdGlvbihvLCB2KSB7CiAgICAgIG9bImRlZmF1bHQiXSA9IHY7CiAgICB9KTsKICAgIHZhciBfX2ltcG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydFN0YXIgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgb3duS2V5cyA9IGZ1bmN0aW9uKG8pIHsKICAgICAgICBvd25LZXlzID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMgfHwgZnVuY3Rpb24obzIpIHsKICAgICAgICAgIHZhciBhciA9IFtdOwogICAgICAgICAgZm9yICh2YXIgayBpbiBvMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvMiwgaykpIGFyW2FyLmxlbmd0aF0gPSBrOwogICAgICAgICAgcmV0dXJuIGFyOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIG93bktleXMobyk7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihtb2QpIHsKICAgICAgICBpZiAobW9kICYmIG1vZC5fX2VzTW9kdWxlKSByZXR1cm4gbW9kOwogICAgICAgIHZhciByZXN1bHQgPSB7fTsKICAgICAgICBpZiAobW9kICE9IG51bGwpIHsKICAgICAgICAgIGZvciAodmFyIGsgPSBvd25LZXlzKG1vZCksIGkgPSAwOyBpIDwgay5sZW5ndGg7IGkrKykgaWYgKGtbaV0gIT09ICJkZWZhdWx0IikgX19jcmVhdGVCaW5kaW5nKHJlc3VsdCwgbW9kLCBrW2ldKTsKICAgICAgICB9CiAgICAgICAgX19zZXRNb2R1bGVEZWZhdWx0KHJlc3VsdCwgbW9kKTsKICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9OwogICAgfSgpOwogICAgdmFyIF9fZXhwb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXhwb3J0U3RhciB8fCBmdW5jdGlvbihtLCBleHBvcnRzMykgewogICAgICBmb3IgKHZhciBwIGluIG0pIGlmIChwICE9PSAiZGVmYXVsdCIgJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChleHBvcnRzMywgcCkpIF9fY3JlYXRlQmluZGluZyhleHBvcnRzMywgbSwgcCk7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5zdHJpbmdzID0gZXhwb3J0czIudGFncyA9IHZvaWQgMDsKICAgIHZhciB0YWdzID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfbGl0ZXJhbHMoKSk7CiAgICBleHBvcnRzMi50YWdzID0gdGFnczsKICAgIHZhciBzdHJpbmdzMyA9IF9faW1wb3J0U3RhcihyZXF1aXJlX3N0cmluZ3MoKSk7CiAgICBleHBvcnRzMi5zdHJpbmdzID0gc3RyaW5nczM7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9vYmplY3QoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdGVtcGxhdGUoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfcGFydGlhbGx5X29yZGVyZWRfc2V0KCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3ByaW9yaXR5X3F1ZXVlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2xhbmcoKSwgZXhwb3J0czIpOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvdmlzaXRvci5qcwp2YXIgcmVxdWlyZV92aXNpdG9yID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS92aXNpdG9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi52aXNpdEpzb24gPSB2aXNpdEpzb247CiAgICBleHBvcnRzMi52aXNpdEpzb25TY2hlbWEgPSB2aXNpdEpzb25TY2hlbWE7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBwb2ludGVyXzEgPSByZXF1aXJlX3BvaW50ZXIoKTsKICAgIGZ1bmN0aW9uIF9nZXRPYmplY3RTdWJTY2hlbWEoc2NoZW1hLCBrZXkpIHsKICAgICAgaWYgKHR5cGVvZiBzY2hlbWEgIT09ICJvYmplY3QiIHx8IHNjaGVtYSA9PT0gbnVsbCkgewogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH0KICAgICAgaWYgKHR5cGVvZiBzY2hlbWEucHJvcGVydGllcyA9PSAib2JqZWN0IiB8fCBzY2hlbWEudHlwZSA9PSAib2JqZWN0IikgewogICAgICAgIGlmICh0eXBlb2Ygc2NoZW1hLnByb3BlcnRpZXMgPT0gIm9iamVjdCIgJiYgdHlwZW9mIHNjaGVtYS5wcm9wZXJ0aWVzW2tleV0gPT0gIm9iamVjdCIpIHsKICAgICAgICAgIHJldHVybiBzY2hlbWEucHJvcGVydGllc1trZXldOwogICAgICAgIH0KICAgICAgICBpZiAodHlwZW9mIHNjaGVtYS5hZGRpdGlvbmFsUHJvcGVydGllcyA9PSAib2JqZWN0IikgewogICAgICAgICAgcmV0dXJuIHNjaGVtYS5hZGRpdGlvbmFsUHJvcGVydGllczsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgfQogICAgICBpZiAodHlwZW9mIHNjaGVtYS5pdGVtcyA9PSAib2JqZWN0IiB8fCBzY2hlbWEudHlwZSA9PSAiYXJyYXkiKSB7CiAgICAgICAgcmV0dXJuIHR5cGVvZiBzY2hlbWEuaXRlbXMgPT0gIm9iamVjdCIgPyBzY2hlbWEuaXRlbXMgOiB2b2lkIDA7CiAgICAgIH0KICAgICAgcmV0dXJuIHZvaWQgMDsKICAgIH0KICAgIGZ1bmN0aW9uIF92aXNpdEpzb25SZWN1cnNpdmUoanNvbiwgdmlzaXRvciwgcHRyLCBzY2hlbWEsIHJlZlJlc29sdmVyLCBjb250ZXh0LCByb290KSB7CiAgICAgIGlmIChzY2hlbWEgPT09IHRydWUgfHwgc2NoZW1hID09PSBmYWxzZSkgewogICAgICAgIHNjaGVtYSA9IHZvaWQgMDsKICAgICAgfQogICAgICBpZiAoc2NoZW1hICYmIHNjaGVtYS5oYXNPd25Qcm9wZXJ0eSgiJHJlZiIpICYmIHR5cGVvZiBzY2hlbWFbIiRyZWYiXSA9PSAic3RyaW5nIikgewogICAgICAgIGlmIChyZWZSZXNvbHZlcikgewogICAgICAgICAgY29uc3QgcmVzb2x2ZWQgPSByZWZSZXNvbHZlcihzY2hlbWFbIiRyZWYiXSwgY29udGV4dCk7CiAgICAgICAgICBzY2hlbWEgPSByZXNvbHZlZC5zY2hlbWE7CiAgICAgICAgICBjb250ZXh0ID0gcmVzb2x2ZWQuY29udGV4dDsKICAgICAgICB9CiAgICAgIH0KICAgICAgY29uc3QgdmFsdWUgPSB2aXNpdG9yKGpzb24sIHB0ciwgc2NoZW1hLCByb290KTsKICAgICAgcmV0dXJuICgoMCwgcnhqc18xLmlzT2JzZXJ2YWJsZSkodmFsdWUpID8gdmFsdWUgOiAoMCwgcnhqc18xLm9mKSh2YWx1ZSkpLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKCh2YWx1ZTIpID0+IHsKICAgICAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZTIpKSB7CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5jb25jYXQpKCgwLCByeGpzXzEuZnJvbSkodmFsdWUyKS5waXBlKCgwLCByeGpzXzEubWVyZ2VNYXApKChpdGVtLCBpKSA9PiB7CiAgICAgICAgICAgIHJldHVybiBfdmlzaXRKc29uUmVjdXJzaXZlKGl0ZW0sIHZpc2l0b3IsICgwLCBwb2ludGVyXzEuam9pbkpzb25Qb2ludGVyKShwdHIsICIiICsgaSksIF9nZXRPYmplY3RTdWJTY2hlbWEoc2NoZW1hLCAiIiArIGkpLCByZWZSZXNvbHZlciwgY29udGV4dCwgcm9vdCB8fCB2YWx1ZTIpLnBpcGUoKDAsIHJ4anNfMS50YXApKCh4KSA9PiB2YWx1ZTJbaV0gPSB4KSk7CiAgICAgICAgICB9KSwgKDAsIHJ4anNfMS5pZ25vcmVFbGVtZW50cykoKSksICgwLCByeGpzXzEub2YpKHZhbHVlMikpOwogICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbHVlMiA9PSAib2JqZWN0IiAmJiB2YWx1ZTIgIT09IG51bGwpIHsKICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkoKDAsIHJ4anNfMS5mcm9tKShPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh2YWx1ZTIpKS5waXBlKCgwLCByeGpzXzEubWVyZ2VNYXApKChrZXkpID0+IHsKICAgICAgICAgICAgcmV0dXJuIF92aXNpdEpzb25SZWN1cnNpdmUodmFsdWUyW2tleV0sIHZpc2l0b3IsICgwLCBwb2ludGVyXzEuam9pbkpzb25Qb2ludGVyKShwdHIsIGtleSksIF9nZXRPYmplY3RTdWJTY2hlbWEoc2NoZW1hLCBrZXkpLCByZWZSZXNvbHZlciwgY29udGV4dCwgcm9vdCB8fCB2YWx1ZTIpLnBpcGUoKDAsIHJ4anNfMS50YXApKCh4KSA9PiB7CiAgICAgICAgICAgICAgY29uc3QgZGVzY3JpcHRvciA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodmFsdWUyLCBrZXkpOwogICAgICAgICAgICAgIGlmIChkZXNjcmlwdG9yICYmIGRlc2NyaXB0b3Iud3JpdGFibGUgJiYgdmFsdWUyW2tleV0gIT09IHgpIHsKICAgICAgICAgICAgICAgIHZhbHVlMltrZXldID0geDsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pKTsKICAgICAgICAgIH0pLCAoMCwgcnhqc18xLmlnbm9yZUVsZW1lbnRzKSgpKSwgKDAsIHJ4anNfMS5vZikodmFsdWUyKSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKSh2YWx1ZTIpOwogICAgICAgIH0KICAgICAgfSkpOwogICAgfQogICAgZnVuY3Rpb24gdmlzaXRKc29uKGpzb24sIHZpc2l0b3IsIHNjaGVtYSwgcmVmUmVzb2x2ZXIsIGNvbnRleHQpIHsKICAgICAgcmV0dXJuIF92aXNpdEpzb25SZWN1cnNpdmUoanNvbiwgdmlzaXRvciwgKDAsIHBvaW50ZXJfMS5idWlsZEpzb25Qb2ludGVyKShbXSksIHNjaGVtYSwgcmVmUmVzb2x2ZXIsIGNvbnRleHQpOwogICAgfQogICAgZnVuY3Rpb24gdmlzaXRKc29uU2NoZW1hKHNjaGVtYSwgdmlzaXRvcikgewogICAgICBpZiAoc2NoZW1hID09PSBmYWxzZSB8fCBzY2hlbWEgPT09IHRydWUpIHsKICAgICAgICByZXR1cm47CiAgICAgIH0KICAgICAgY29uc3Qga2V5d29yZHMgPSB7CiAgICAgICAgYWRkaXRpb25hbEl0ZW1zOiB0cnVlLAogICAgICAgIGl0ZW1zOiB0cnVlLAogICAgICAgIGNvbnRhaW5zOiB0cnVlLAogICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiB0cnVlLAogICAgICAgIHByb3BlcnR5TmFtZXM6IHRydWUsCiAgICAgICAgbm90OiB0cnVlCiAgICAgIH07CiAgICAgIGNvbnN0IGFycmF5S2V5d29yZHMgPSB7CiAgICAgICAgaXRlbXM6IHRydWUsCiAgICAgICAgYWxsT2Y6IHRydWUsCiAgICAgICAgYW55T2Y6IHRydWUsCiAgICAgICAgb25lT2Y6IHRydWUKICAgICAgfTsKICAgICAgY29uc3QgcHJvcHNLZXl3b3JkcyA9IHsKICAgICAgICBkZWZpbml0aW9uczogdHJ1ZSwKICAgICAgICBwcm9wZXJ0aWVzOiB0cnVlLAogICAgICAgIHBhdHRlcm5Qcm9wZXJ0aWVzOiB0cnVlLAogICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiB0cnVlLAogICAgICAgIGRlcGVuZGVuY2llczogdHJ1ZSwKICAgICAgICBpdGVtczogdHJ1ZQogICAgICB9OwogICAgICBmdW5jdGlvbiBfdHJhdmVyc2Uoc2NoZW1hMiwganNvblB0ciwgcm9vdFNjaGVtYSwgcGFyZW50U2NoZW1hLCBrZXlJbmRleCkgewogICAgICAgIGlmIChzY2hlbWEyICYmIHR5cGVvZiBzY2hlbWEyID09ICJvYmplY3QiICYmICFBcnJheS5pc0FycmF5KHNjaGVtYTIpKSB7CiAgICAgICAgICB2aXNpdG9yKHNjaGVtYTIsIGpzb25QdHIsIHBhcmVudFNjaGVtYSwga2V5SW5kZXgpOwogICAgICAgICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMoc2NoZW1hMikpIHsKICAgICAgICAgICAgY29uc3Qgc2NoID0gc2NoZW1hMltrZXldOwogICAgICAgICAgICBpZiAoa2V5IGluIHByb3BzS2V5d29yZHMpIHsKICAgICAgICAgICAgICBpZiAoc2NoICYmIHR5cGVvZiBzY2ggPT0gIm9iamVjdCIpIHsKICAgICAgICAgICAgICAgIGZvciAoY29uc3QgcHJvcCBvZiBPYmplY3Qua2V5cyhzY2gpKSB7CiAgICAgICAgICAgICAgICAgIF90cmF2ZXJzZShzY2hbcHJvcF0sICgwLCBwb2ludGVyXzEuam9pbkpzb25Qb2ludGVyKShqc29uUHRyLCBrZXksIHByb3ApLCByb290U2NoZW1hLCBzY2hlbWEyLCBwcm9wKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSBpZiAoa2V5IGluIGtleXdvcmRzKSB7CiAgICAgICAgICAgICAgX3RyYXZlcnNlKHNjaCwgKDAsIHBvaW50ZXJfMS5qb2luSnNvblBvaW50ZXIpKGpzb25QdHIsIGtleSksIHJvb3RTY2hlbWEsIHNjaGVtYTIsIGtleSk7CiAgICAgICAgICAgIH0gZWxzZSBpZiAoa2V5IGluIGFycmF5S2V5d29yZHMpIHsKICAgICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShzY2gpKSB7CiAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNjaC5sZW5ndGg7IGkrKykgewogICAgICAgICAgICAgICAgICBfdHJhdmVyc2Uoc2NoW2ldLCAoMCwgcG9pbnRlcl8xLmpvaW5Kc29uUG9pbnRlcikoanNvblB0ciwga2V5LCAiIiArIGkpLCByb290U2NoZW1hLCBzY2gsICIiICsgaSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkoc2NoKSkgewogICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc2NoLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgICAgICBfdHJhdmVyc2Uoc2NoW2ldLCAoMCwgcG9pbnRlcl8xLmpvaW5Kc29uUG9pbnRlcikoanNvblB0ciwga2V5LCAiIiArIGkpLCByb290U2NoZW1hLCBzY2gsICIiICsgaSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIF90cmF2ZXJzZShzY2hlbWEsICgwLCBwb2ludGVyXzEuYnVpbGRKc29uUG9pbnRlcikoW10pLCBzY2hlbWEpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvcmVnaXN0cnkuanMKdmFyIHJlcXVpcmVfcmVnaXN0cnkgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3JlZ2lzdHJ5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fY3JlYXRlQmluZGluZyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fY3JlYXRlQmluZGluZyB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihtLCBrKTsKICAgICAgaWYgKCFkZXNjIHx8ICgiZ2V0IiBpbiBkZXNjID8gIW0uX19lc01vZHVsZSA6IGRlc2Mud3JpdGFibGUgfHwgZGVzYy5jb25maWd1cmFibGUpKSB7CiAgICAgICAgZGVzYyA9IHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBtW2tdOwogICAgICAgIH0gfTsKICAgICAgfQogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgazIsIGRlc2MpOwogICAgfSA6IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIG9bazJdID0gbVtrXTsKICAgIH0pOwogICAgdmFyIF9fc2V0TW9kdWxlRGVmYXVsdCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc2V0TW9kdWxlRGVmYXVsdCB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJkZWZhdWx0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCB2YWx1ZTogdiB9KTsKICAgIH0gOiBmdW5jdGlvbihvLCB2KSB7CiAgICAgIG9bImRlZmF1bHQiXSA9IHY7CiAgICB9KTsKICAgIHZhciBfX2ltcG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydFN0YXIgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgb3duS2V5cyA9IGZ1bmN0aW9uKG8pIHsKICAgICAgICBvd25LZXlzID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMgfHwgZnVuY3Rpb24obzIpIHsKICAgICAgICAgIHZhciBhciA9IFtdOwogICAgICAgICAgZm9yICh2YXIgayBpbiBvMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvMiwgaykpIGFyW2FyLmxlbmd0aF0gPSBrOwogICAgICAgICAgcmV0dXJuIGFyOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIG93bktleXMobyk7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihtb2QpIHsKICAgICAgICBpZiAobW9kICYmIG1vZC5fX2VzTW9kdWxlKSByZXR1cm4gbW9kOwogICAgICAgIHZhciByZXN1bHQgPSB7fTsKICAgICAgICBpZiAobW9kICE9IG51bGwpIHsKICAgICAgICAgIGZvciAodmFyIGsgPSBvd25LZXlzKG1vZCksIGkgPSAwOyBpIDwgay5sZW5ndGg7IGkrKykgaWYgKGtbaV0gIT09ICJkZWZhdWx0IikgX19jcmVhdGVCaW5kaW5nKHJlc3VsdCwgbW9kLCBrW2ldKTsKICAgICAgICB9CiAgICAgICAgX19zZXRNb2R1bGVEZWZhdWx0KHJlc3VsdCwgbW9kKTsKICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9OwogICAgfSgpOwogICAgdmFyIF9faW1wb3J0RGVmYXVsdCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9faW1wb3J0RGVmYXVsdCB8fCBmdW5jdGlvbihtb2QpIHsKICAgICAgcmV0dXJuIG1vZCAmJiBtb2QuX19lc01vZHVsZSA/IG1vZCA6IHsgImRlZmF1bHQiOiBtb2QgfTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkNvcmVTY2hlbWFSZWdpc3RyeSA9IGV4cG9ydHMyLlNjaGVtYVZhbGlkYXRpb25FeGNlcHRpb24gPSB2b2lkIDA7CiAgICB2YXIgYWp2XzEgPSBfX2ltcG9ydERlZmF1bHQocmVxdWlyZV9hanYoKSk7CiAgICB2YXIgYWp2X2Zvcm1hdHNfMSA9IF9faW1wb3J0RGVmYXVsdChyZXF1aXJlX2Rpc3QoKSk7CiAgICB2YXIgaHR0cCA9IF9faW1wb3J0U3RhcihyZXF1aXJlKCJodHRwIikpOwogICAgdmFyIGh0dHBzID0gX19pbXBvcnRTdGFyKHJlcXVpcmUoImh0dHBzIikpOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgVXJsID0gX19pbXBvcnRTdGFyKHJlcXVpcmUoInVybCIpKTsKICAgIHZhciBleGNlcHRpb25fMSA9IHJlcXVpcmVfZXhjZXB0aW9uKCk7CiAgICB2YXIgdXRpbHNfMSA9IHJlcXVpcmVfdXRpbHMzKCk7CiAgICB2YXIgdXRpbHNfMiA9IHJlcXVpcmVfdXRpbHMoKTsKICAgIHZhciB1dGlsaXR5XzEgPSByZXF1aXJlX3V0aWxpdHkoKTsKICAgIHZhciB2aXNpdG9yXzEgPSByZXF1aXJlX3Zpc2l0b3IoKTsKICAgIHZhciBTY2hlbWFWYWxpZGF0aW9uRXhjZXB0aW9uID0gY2xhc3MgX1NjaGVtYVZhbGlkYXRpb25FeGNlcHRpb24gZXh0ZW5kcyBleGNlcHRpb25fMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgZXJyb3JzOwogICAgICBjb25zdHJ1Y3RvcihlcnJvcnMsIGJhc2VNZXNzYWdlID0gIlNjaGVtYSB2YWxpZGF0aW9uIGZhaWxlZCB3aXRoIHRoZSBmb2xsb3dpbmcgZXJyb3JzOiIpIHsKICAgICAgICBpZiAoIWVycm9ycyB8fCBlcnJvcnMubGVuZ3RoID09PSAwKSB7CiAgICAgICAgICBzdXBlcigiU2NoZW1hIHZhbGlkYXRpb24gZmFpbGVkLiIpOwogICAgICAgICAgdGhpcy5lcnJvcnMgPSBbXTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgY29uc3QgbWVzc2FnZXMgPSBfU2NoZW1hVmFsaWRhdGlvbkV4Y2VwdGlvbi5jcmVhdGVNZXNzYWdlcyhlcnJvcnMpOwogICAgICAgIHN1cGVyKGAke2Jhc2VNZXNzYWdlfQogICR7bWVzc2FnZXMuam9pbigiXG4gICIpfWApOwogICAgICAgIHRoaXMuZXJyb3JzID0gZXJyb3JzOwogICAgICB9CiAgICAgIHN0YXRpYyBjcmVhdGVNZXNzYWdlcyhlcnJvcnMpIHsKICAgICAgICBpZiAoIWVycm9ycyB8fCBlcnJvcnMubGVuZ3RoID09PSAwKSB7CiAgICAgICAgICByZXR1cm4gW107CiAgICAgICAgfQogICAgICAgIGNvbnN0IG1lc3NhZ2VzID0gZXJyb3JzLm1hcCgoZXJyKSA9PiB7CiAgICAgICAgICBsZXQgbWVzc2FnZSA9IGBEYXRhIHBhdGggJHtKU09OLnN0cmluZ2lmeShlcnIuaW5zdGFuY2VQYXRoKX0gJHtlcnIubWVzc2FnZX1gOwogICAgICAgICAgaWYgKGVyci5wYXJhbXMpIHsKICAgICAgICAgICAgc3dpdGNoIChlcnIua2V5d29yZCkgewogICAgICAgICAgICAgIGNhc2UgImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjoKICAgICAgICAgICAgICAgIG1lc3NhZ2UgKz0gYCgke2Vyci5wYXJhbXMuYWRkaXRpb25hbFByb3BlcnR5fSlgOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAiZW51bSI6CiAgICAgICAgICAgICAgICBtZXNzYWdlICs9IGAuIEFsbG93ZWQgdmFsdWVzIGFyZTogJHtlcnIucGFyYW1zLmFsbG93ZWRWYWx1ZXM/Lm1hcCgodikgPT4gYCIke3Z9ImApLmpvaW4oIiwgIil9YDsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gbWVzc2FnZSArICIuIjsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gbWVzc2FnZXM7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TY2hlbWFWYWxpZGF0aW9uRXhjZXB0aW9uID0gU2NoZW1hVmFsaWRhdGlvbkV4Y2VwdGlvbjsKICAgIHZhciBDb3JlU2NoZW1hUmVnaXN0cnkgPSBjbGFzcyBfQ29yZVNjaGVtYVJlZ2lzdHJ5IHsKICAgICAgX2FqdjsKICAgICAgX3VyaUNhY2hlID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgX3VyaUhhbmRsZXJzID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgX3ByZSA9IG5ldyB1dGlsc18xLlBhcnRpYWxseU9yZGVyZWRTZXQoKTsKICAgICAgX3Bvc3QgPSBuZXcgdXRpbHNfMS5QYXJ0aWFsbHlPcmRlcmVkU2V0KCk7CiAgICAgIF9jdXJyZW50Q29tcGlsYXRpb25TY2hlbWFJbmZvOwogICAgICBfc21hcnREZWZhdWx0S2V5d29yZCA9IGZhbHNlOwogICAgICBfcHJvbXB0UHJvdmlkZXI7CiAgICAgIF9zb3VyY2VNYXAgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICBjb25zdHJ1Y3Rvcihmb3JtYXRzID0gW10pIHsKICAgICAgICB0aGlzLl9hanYgPSBuZXcgYWp2XzEuZGVmYXVsdCh7CiAgICAgICAgICBzdHJpY3Q6IGZhbHNlLAogICAgICAgICAgbG9hZFNjaGVtYTogKHVyaSkgPT4gdGhpcy5fZmV0Y2godXJpKSwKICAgICAgICAgIHBhc3NDb250ZXh0OiB0cnVlCiAgICAgICAgfSk7CiAgICAgICAgKDAsIGFqdl9mb3JtYXRzXzEuZGVmYXVsdCkodGhpcy5fYWp2KTsKICAgICAgICBmb3IgKGNvbnN0IGZvcm1hdCBvZiBmb3JtYXRzKSB7CiAgICAgICAgICB0aGlzLmFkZEZvcm1hdChmb3JtYXQpOwogICAgICAgIH0KICAgICAgfQogICAgICBhc3luYyBfZmV0Y2godXJpKSB7CiAgICAgICAgY29uc3QgbWF5YmVTY2hlbWEgPSB0aGlzLl91cmlDYWNoZS5nZXQodXJpKTsKICAgICAgICBpZiAobWF5YmVTY2hlbWEpIHsKICAgICAgICAgIHJldHVybiBtYXliZVNjaGVtYTsKICAgICAgICB9CiAgICAgICAgZm9yIChjb25zdCBoYW5kbGVyIG9mIHRoaXMuX3VyaUhhbmRsZXJzKSB7CiAgICAgICAgICBsZXQgaGFuZGxlclJlc3VsdCA9IGhhbmRsZXIodXJpKTsKICAgICAgICAgIGlmIChoYW5kbGVyUmVzdWx0ID09PSBudWxsIHx8IGhhbmRsZXJSZXN1bHQgPT09IHZvaWQgMCkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICgoMCwgcnhqc18xLmlzT2JzZXJ2YWJsZSkoaGFuZGxlclJlc3VsdCkpIHsKICAgICAgICAgICAgaGFuZGxlclJlc3VsdCA9ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkoaGFuZGxlclJlc3VsdCk7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCB2YWx1ZSA9IGF3YWl0IGhhbmRsZXJSZXN1bHQ7CiAgICAgICAgICB0aGlzLl91cmlDYWNoZS5zZXQodXJpLCB2YWx1ZSk7CiAgICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgICAgfQogICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7CiAgICAgICAgICBjb25zdCB1cmwzID0gbmV3IFVybC5VUkwodXJpKTsKICAgICAgICAgIGNvbnN0IGNsaWVudCA9IHVybDMucHJvdG9jb2wgPT09ICJodHRwczoiID8gaHR0cHMgOiBodHRwOwogICAgICAgICAgY2xpZW50LmdldCh1cmwzLCAocmVzKSA9PiB7CiAgICAgICAgICAgIGlmICghcmVzLnN0YXR1c0NvZGUgfHwgcmVzLnN0YXR1c0NvZGUgPj0gMzAwKSB7CiAgICAgICAgICAgICAgcmVzLnJlc3VtZSgpOwogICAgICAgICAgICAgIHJlamVjdChuZXcgRXJyb3IoYFJlcXVlc3QgZmFpbGVkLiBTdGF0dXMgQ29kZTogJHtyZXMuc3RhdHVzQ29kZX1gKSk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmVzLnNldEVuY29kaW5nKCJ1dGY4Iik7CiAgICAgICAgICAgICAgbGV0IGRhdGEgPSAiIjsKICAgICAgICAgICAgICByZXMub24oImRhdGEiLCAoY2h1bmspID0+IHsKICAgICAgICAgICAgICAgIGRhdGEgKz0gY2h1bms7CiAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgcmVzLm9uKCJlbmQiLCAoKSA9PiB7CiAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICBjb25zdCBqc29uID0gSlNPTi5wYXJzZShkYXRhKTsKICAgICAgICAgICAgICAgICAgdGhpcy5fdXJpQ2FjaGUuc2V0KHVyaSwganNvbik7CiAgICAgICAgICAgICAgICAgIHJlc29sdmUoanNvbik7CiAgICAgICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgICAgICAgcmVqZWN0KGVycik7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBBZGQgYSB0cmFuc2Zvcm1hdGlvbiBzdGVwIGJlZm9yZSB0aGUgdmFsaWRhdGlvbiBvZiBhbnkgSnNvbi4KICAgICAgICogQHBhcmFtIHtKc29uVmlzaXRvcn0gdmlzaXRvciBUaGUgdmlzaXRvciB0byB0cmFuc2Zvcm0gZXZlcnkgdmFsdWUuCiAgICAgICAqIEBwYXJhbSB7SnNvblZpc2l0b3JbXX0gZGVwcyBBIGxpc3Qgb2Ygb3RoZXIgdmlzaXRvcnMgdG8gcnVuIGJlZm9yZS4KICAgICAgICovCiAgICAgIGFkZFByZVRyYW5zZm9ybSh2aXNpdG9yLCBkZXBzKSB7CiAgICAgICAgdGhpcy5fcHJlLmFkZCh2aXNpdG9yLCBkZXBzKTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQWRkIGEgdHJhbnNmb3JtYXRpb24gc3RlcCBhZnRlciB0aGUgdmFsaWRhdGlvbiBvZiBhbnkgSnNvbi4gVGhlIEpTT04gd2lsbCBub3QgYmUgdmFsaWRhdGVkCiAgICAgICAqIGFmdGVyIHRoZSBQT1NULCBzbyBpZiB0cmFuc2Zvcm1hdGlvbnMgYXJlIG5vdCBjb21wYXRpYmxlIHdpdGggdGhlIFNjaGVtYSBpdCB3aWxsIG5vdCByZXN1bHQKICAgICAgICogaW4gYW4gZXJyb3IuCiAgICAgICAqIEBwYXJhbSB7SnNvblZpc2l0b3J9IHZpc2l0b3IgVGhlIHZpc2l0b3IgdG8gdHJhbnNmb3JtIGV2ZXJ5IHZhbHVlLgogICAgICAgKiBAcGFyYW0ge0pzb25WaXNpdG9yW119IGRlcHMgQSBsaXN0IG9mIG90aGVyIHZpc2l0b3JzIHRvIHJ1biBiZWZvcmUuCiAgICAgICAqLwogICAgICBhZGRQb3N0VHJhbnNmb3JtKHZpc2l0b3IsIGRlcHMpIHsKICAgICAgICB0aGlzLl9wb3N0LmFkZCh2aXNpdG9yLCBkZXBzKTsKICAgICAgfQogICAgICBfcmVzb2x2ZXIocmVmLCB2YWxpZGF0ZSkgewogICAgICAgIGlmICghdmFsaWRhdGUgfHwgIXJlZikgewogICAgICAgICAgcmV0dXJuIHt9OwogICAgICAgIH0KICAgICAgICBjb25zdCBzY2hlbWEgPSB2YWxpZGF0ZS5zY2hlbWFFbnYucm9vdC5zY2hlbWE7CiAgICAgICAgY29uc3QgaWQgPSB0eXBlb2Ygc2NoZW1hID09PSAib2JqZWN0IiA/IHNjaGVtYS4kaWQgOiBudWxsOwogICAgICAgIGxldCBmdWxsUmVmZXJlbmNlID0gcmVmOwogICAgICAgIGlmICh0eXBlb2YgaWQgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICBmdWxsUmVmZXJlbmNlID0gVXJsLnJlc29sdmUoaWQsIHJlZik7CiAgICAgICAgICBpZiAocmVmLnN0YXJ0c1dpdGgoIiMiKSkgewogICAgICAgICAgICBmdWxsUmVmZXJlbmNlID0gaWQgKyBmdWxsUmVmZXJlbmNlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb25zdCByZXNvbHZlZFNjaGVtYSA9IHRoaXMuX2Fqdi5nZXRTY2hlbWEoZnVsbFJlZmVyZW5jZSk7CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGNvbnRleHQ6IHJlc29sdmVkU2NoZW1hPy5zY2hlbWFFbnYudmFsaWRhdGUsCiAgICAgICAgICBzY2hlbWE6IHJlc29sdmVkU2NoZW1hPy5zY2hlbWEKICAgICAgICB9OwogICAgICB9CiAgICAgIC8qKgogICAgICAgKiBGbGF0dGVuIHRoZSBTY2hlbWEsIHJlc29sdmluZyBhbmQgcmVwbGFjaW5nIGFsbCB0aGUgcmVmcy4gTWFrZXMgaXQgaW50byBhIHN5bmNocm9ub3VzIHNjaGVtYQogICAgICAgKiB0aGF0IGlzIGFsc28gZWFzaWVyIHRvIHRyYXZlcnNlLiBEb2VzIG5vdCBjYWNoZSB0aGUgcmVzdWx0LgogICAgICAgKgogICAgICAgKiBQcm9kdWNpbmcgYSBmbGF0dGVuIHNjaGVtYSBkb2N1bWVudCBkb2VzIG5vdCBpbiBhbGwgY2FzZXMgcHJvZHVjZSBhIHNjaGVtYSB3aXRoIGlkZW50aWNhbCBiZWhhdmlvciB0byB0aGUgb3JpZ2luYWwuCiAgICAgICAqIFNlZTogaHR0cHM6Ly9qc29uLXNjaGVtYS5vcmcvZHJhZnQvMjAxOS0wOS9qc29uLXNjaGVtYS1jb3JlLmh0bWwjcmZjLmFwcGVuZGl4LkIuMgogICAgICAgKgogICAgICAgKiBAcGFyYW0gc2NoZW1hIFRoZSBzY2hlbWEgb3IgVVJJIHRvIGZsYXR0ZW4uCiAgICAgICAqIEByZXR1cm5zIEFuIE9ic2VydmFibGUgb2YgdGhlIGZsYXR0ZW5lZCBzY2hlbWEgb2JqZWN0LgogICAgICAgKiBAcHJpdmF0ZSBzaW5jZSAxMS4yIHdpdGhvdXQgcmVwbGFjZW1lbnQuCiAgICAgICAqLwogICAgICBhc3luYyBcdTAyNzVmbGF0dGVuKHNjaGVtYSkgewogICAgICAgIHRoaXMuX2Fqdi5yZW1vdmVTY2hlbWEoc2NoZW1hKTsKICAgICAgICB0aGlzLl9jdXJyZW50Q29tcGlsYXRpb25TY2hlbWFJbmZvID0gdm9pZCAwOwogICAgICAgIGNvbnN0IHZhbGlkYXRlID0gYXdhaXQgdGhpcy5fYWp2LmNvbXBpbGVBc3luYyhzY2hlbWEpOwogICAgICAgIGNvbnN0IHNlbGYyID0gdGhpczsKICAgICAgICBmdW5jdGlvbiB2aXNpdG9yKGN1cnJlbnQsIHBvaW50ZXIsIHBhcmVudFNjaGVtYSwgaW5kZXgpIHsKICAgICAgICAgIGlmIChjdXJyZW50ICYmIHBhcmVudFNjaGVtYSAmJiBpbmRleCAmJiAoMCwgdXRpbHNfMi5pc0pzb25PYmplY3QpKGN1cnJlbnQpICYmIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChjdXJyZW50LCAiJHJlZiIpICYmIHR5cGVvZiBjdXJyZW50WyIkcmVmIl0gPT0gInN0cmluZyIpIHsKICAgICAgICAgICAgY29uc3QgcmVzb2x2ZWQgPSBzZWxmMi5fcmVzb2x2ZXIoY3VycmVudFsiJHJlZiJdLCB2YWxpZGF0ZSk7CiAgICAgICAgICAgIGlmIChyZXNvbHZlZC5zY2hlbWEpIHsKICAgICAgICAgICAgICBwYXJlbnRTY2hlbWFbaW5kZXhdID0gcmVzb2x2ZWQuc2NoZW1hOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IHNjaGVtYUNvcHkgPSAoMCwgdXRpbHNfMS5kZWVwQ29weSkodmFsaWRhdGUuc2NoZW1hKTsKICAgICAgICAoMCwgdmlzaXRvcl8xLnZpc2l0SnNvblNjaGVtYSkoc2NoZW1hQ29weSwgdmlzaXRvcik7CiAgICAgICAgcmV0dXJuIHNjaGVtYUNvcHk7CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIENvbXBpbGUgYW5kIHJldHVybiBhIHZhbGlkYXRpb24gZnVuY3Rpb24gZm9yIHRoZSBTY2hlbWEuCiAgICAgICAqCiAgICAgICAqIEBwYXJhbSBzY2hlbWEgVGhlIHNjaGVtYSB0byB2YWxpZGF0ZS4gSWYgYSBzdHJpbmcsIHdpbGwgZmV0Y2ggdGhlIHNjaGVtYSBiZWZvcmUgY29tcGlsaW5nIGl0CiAgICAgICAqICh1c2luZyBzY2hlbWEgYXMgYSBVUkkpLgogICAgICAgKi8KICAgICAgYXN5bmMgY29tcGlsZShzY2hlbWEpIHsKICAgICAgICBjb25zdCB2YWxpZGF0ZSA9IGF3YWl0IHRoaXMuX2NvbXBpbGUoc2NoZW1hKTsKICAgICAgICByZXR1cm4gKHZhbHVlLCBvcHRpb25zKSA9PiB2YWxpZGF0ZSh2YWx1ZSwgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgYXN5bmMgX2NvbXBpbGUoc2NoZW1hKSB7CiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEgPT09ICJib29sZWFuIikgewogICAgICAgICAgcmV0dXJuIGFzeW5jIChkYXRhKSA9PiAoeyBzdWNjZXNzOiBzY2hlbWEsIGRhdGEgfSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IHNjaGVtYUluZm8gPSB7CiAgICAgICAgICBzbWFydERlZmF1bHRSZWNvcmQ6IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCksCiAgICAgICAgICBwcm9tcHREZWZpbml0aW9uczogW10KICAgICAgICB9OwogICAgICAgIHRoaXMuX2Fqdi5yZW1vdmVTY2hlbWEoc2NoZW1hKTsKICAgICAgICBsZXQgdmFsaWRhdG9yOwogICAgICAgIHRyeSB7CiAgICAgICAgICB0aGlzLl9jdXJyZW50Q29tcGlsYXRpb25TY2hlbWFJbmZvID0gc2NoZW1hSW5mbzsKICAgICAgICAgIHZhbGlkYXRvciA9IHRoaXMuX2Fqdi5jb21waWxlKHNjaGVtYSk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKCEoZSBpbnN0YW5jZW9mIGFqdl8xLmRlZmF1bHQuTWlzc2luZ1JlZkVycm9yKSkgewogICAgICAgICAgICB0aHJvdyBlOwogICAgICAgICAgfQogICAgICAgICAgdmFsaWRhdG9yID0gYXdhaXQgdGhpcy5fYWp2LmNvbXBpbGVBc3luYyhzY2hlbWEpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICB0aGlzLl9jdXJyZW50Q29tcGlsYXRpb25TY2hlbWFJbmZvID0gdm9pZCAwOwogICAgICAgIH0KICAgICAgICByZXR1cm4gYXN5bmMgKGRhdGEsIG9wdGlvbnMpID0+IHsKICAgICAgICAgIGNvbnN0IHZhbGlkYXRpb25PcHRpb25zID0gewogICAgICAgICAgICB3aXRoUHJvbXB0czogdHJ1ZSwKICAgICAgICAgICAgYXBwbHlQb3N0VHJhbnNmb3JtczogdHJ1ZSwKICAgICAgICAgICAgYXBwbHlQcmVUcmFuc2Zvcm1zOiB0cnVlLAogICAgICAgICAgICAuLi5vcHRpb25zCiAgICAgICAgICB9OwogICAgICAgICAgY29uc3QgdmFsaWRhdGlvbkNvbnRleHQgPSB7CiAgICAgICAgICAgIHByb21wdEZpZWxkc1dpdGhWYWx1ZTogLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKQogICAgICAgICAgfTsKICAgICAgICAgIGlmICh2YWxpZGF0aW9uT3B0aW9ucy5hcHBseVByZVRyYW5zZm9ybXMpIHsKICAgICAgICAgICAgZm9yIChjb25zdCB2aXNpdG9yIG9mIHRoaXMuX3ByZS52YWx1ZXMoKSkgewogICAgICAgICAgICAgIGRhdGEgPSBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKCgwLCB2aXNpdG9yXzEudmlzaXRKc29uKShkYXRhLCB2aXNpdG9yLCBzY2hlbWEsIHRoaXMuX3Jlc29sdmVyLmJpbmQodGhpcyksIHZhbGlkYXRvcikpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBhd2FpdCB0aGlzLl9hcHBseVNtYXJ0RGVmYXVsdHMoZGF0YSwgc2NoZW1hSW5mby5zbWFydERlZmF1bHRSZWNvcmQpOwogICAgICAgICAgaWYgKHZhbGlkYXRpb25PcHRpb25zLndpdGhQcm9tcHRzKSB7CiAgICAgICAgICAgIGNvbnN0IHZpc2l0b3IgPSAodmFsdWUsIHBvaW50ZXIpID0+IHsKICAgICAgICAgICAgICBpZiAodmFsdWUgIT09IHZvaWQgMCkgewogICAgICAgICAgICAgICAgdmFsaWRhdGlvbkNvbnRleHQucHJvbXB0RmllbGRzV2l0aFZhbHVlLmFkZChwb2ludGVyKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgcmV0dXJuIHZhbHVlOwogICAgICAgICAgICB9OwogICAgICAgICAgICBpZiAodHlwZW9mIHNjaGVtYSA9PT0gIm9iamVjdCIpIHsKICAgICAgICAgICAgICBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKCgwLCB2aXNpdG9yXzEudmlzaXRKc29uKShkYXRhLCB2aXNpdG9yLCBzY2hlbWEsIHRoaXMuX3Jlc29sdmVyLmJpbmQodGhpcyksIHZhbGlkYXRvcikpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IGRlZmluaXRpb25zID0gc2NoZW1hSW5mby5wcm9tcHREZWZpbml0aW9ucy5maWx0ZXIoKGRlZikgPT4gIXZhbGlkYXRpb25Db250ZXh0LnByb21wdEZpZWxkc1dpdGhWYWx1ZS5oYXMoZGVmLmlkKSk7CiAgICAgICAgICAgIGlmIChkZWZpbml0aW9ucy5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgICAgYXdhaXQgdGhpcy5fYXBwbHlQcm9tcHRzKGRhdGEsIGRlZmluaXRpb25zKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgY29uc3Qgc3VjY2VzcyA9IGF3YWl0IHZhbGlkYXRvci5jYWxsKHZhbGlkYXRpb25Db250ZXh0LCBkYXRhKTsKICAgICAgICAgICAgaWYgKCFzdWNjZXNzKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHsgZGF0YSwgc3VjY2VzcywgZXJyb3JzOiB2YWxpZGF0b3IuZXJyb3JzID8/IFtdIH07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIGFqdl8xLmRlZmF1bHQuVmFsaWRhdGlvbkVycm9yKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHsgZGF0YSwgc3VjY2VzczogZmFsc2UsIGVycm9yczogZXJyb3IuZXJyb3JzIH07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhyb3cgZXJyb3I7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAodmFsaWRhdGlvbk9wdGlvbnMuYXBwbHlQb3N0VHJhbnNmb3JtcykgewogICAgICAgICAgICBmb3IgKGNvbnN0IHZpc2l0b3Igb2YgdGhpcy5fcG9zdC52YWx1ZXMoKSkgewogICAgICAgICAgICAgIGRhdGEgPSBhd2FpdCAoMCwgcnhqc18xLmxhc3RWYWx1ZUZyb20pKCgwLCB2aXNpdG9yXzEudmlzaXRKc29uKShkYXRhLCB2aXNpdG9yLCBzY2hlbWEsIHRoaXMuX3Jlc29sdmVyLmJpbmQodGhpcyksIHZhbGlkYXRvcikpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4geyBkYXRhLCBzdWNjZXNzOiB0cnVlIH07CiAgICAgICAgfTsKICAgICAgfQogICAgICBhZGRGb3JtYXQoZm9ybWF0KSB7CiAgICAgICAgdGhpcy5fYWp2LmFkZEZvcm1hdChmb3JtYXQubmFtZSwgZm9ybWF0LmZvcm1hdHRlcik7CiAgICAgIH0KICAgICAgYWRkU21hcnREZWZhdWx0UHJvdmlkZXIoc291cmNlLCBwcm92aWRlcikgewogICAgICAgIGlmICh0aGlzLl9zb3VyY2VNYXAuaGFzKHNvdXJjZSkpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcihzb3VyY2UpOwogICAgICAgIH0KICAgICAgICB0aGlzLl9zb3VyY2VNYXAuc2V0KHNvdXJjZSwgcHJvdmlkZXIpOwogICAgICAgIGlmICghdGhpcy5fc21hcnREZWZhdWx0S2V5d29yZCkgewogICAgICAgICAgdGhpcy5fc21hcnREZWZhdWx0S2V5d29yZCA9IHRydWU7CiAgICAgICAgICB0aGlzLl9hanYuYWRkS2V5d29yZCh7CiAgICAgICAgICAgIGtleXdvcmQ6ICIkZGVmYXVsdCIsCiAgICAgICAgICAgIGVycm9yczogZmFsc2UsCiAgICAgICAgICAgIHZhbGlkOiB0cnVlLAogICAgICAgICAgICBjb21waWxlOiAoc2NoZW1hLCBfcGFyZW50U2NoZW1hLCBpdCkgPT4gewogICAgICAgICAgICAgIGNvbnN0IGNvbXBpbGF0aW9uU2NoZW1JbmZvID0gdGhpcy5fY3VycmVudENvbXBpbGF0aW9uU2NoZW1hSW5mbzsKICAgICAgICAgICAgICBpZiAoY29tcGlsYXRpb25TY2hlbUluZm8gPT09IHZvaWQgMCkgewogICAgICAgICAgICAgICAgcmV0dXJuICgpID0+IHRydWU7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGNvbnN0IHBhdGhBcnJheSA9IHRoaXMubm9ybWFsaXplRGF0YVBhdGhBcnIoaXQpOwogICAgICAgICAgICAgIGNvbXBpbGF0aW9uU2NoZW1JbmZvLnNtYXJ0RGVmYXVsdFJlY29yZC5zZXQoSlNPTi5zdHJpbmdpZnkocGF0aEFycmF5KSwgc2NoZW1hKTsKICAgICAgICAgICAgICByZXR1cm4gKCkgPT4gdHJ1ZTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgbWV0YVNjaGVtYTogewogICAgICAgICAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICAgICAgICAgIHByb3BlcnRpZXM6IHsKICAgICAgICAgICAgICAgICIkc291cmNlIjogeyB0eXBlOiAic3RyaW5nIiB9CiAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogdHJ1ZSwKICAgICAgICAgICAgICByZXF1aXJlZDogWyIkc291cmNlIl0KICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJlZ2lzdGVyVXJpSGFuZGxlcihoYW5kbGVyKSB7CiAgICAgICAgdGhpcy5fdXJpSGFuZGxlcnMuYWRkKGhhbmRsZXIpOwogICAgICB9CiAgICAgIHVzZVByb21wdFByb3ZpZGVyKHByb3ZpZGVyKSB7CiAgICAgICAgY29uc3QgaXNTZXR1cCA9ICEhdGhpcy5fcHJvbXB0UHJvdmlkZXI7CiAgICAgICAgdGhpcy5fcHJvbXB0UHJvdmlkZXIgPSBwcm92aWRlcjsKICAgICAgICBpZiAoaXNTZXR1cCkgewogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB0aGlzLl9hanYuYWRkS2V5d29yZCh7CiAgICAgICAgICBrZXl3b3JkOiAieC1wcm9tcHQiLAogICAgICAgICAgZXJyb3JzOiBmYWxzZSwKICAgICAgICAgIHZhbGlkOiB0cnVlLAogICAgICAgICAgY29tcGlsZTogKHNjaGVtYSwgcGFyZW50U2NoZW1hLCBpdCkgPT4gewogICAgICAgICAgICBjb25zdCBjb21waWxhdGlvblNjaGVtSW5mbyA9IHRoaXMuX2N1cnJlbnRDb21waWxhdGlvblNjaGVtYUluZm87CiAgICAgICAgICAgIGlmICghY29tcGlsYXRpb25TY2hlbUluZm8pIHsKICAgICAgICAgICAgICByZXR1cm4gKCkgPT4gdHJ1ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBjb25zdCBwYXRoID0gIi8iICsgdGhpcy5ub3JtYWxpemVEYXRhUGF0aEFycihpdCkuam9pbigiLyIpOwogICAgICAgICAgICBsZXQgdHlwZTsKICAgICAgICAgICAgbGV0IGl0ZW1zOwogICAgICAgICAgICBsZXQgbWVzc2FnZTsKICAgICAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEgPT0gInN0cmluZyIpIHsKICAgICAgICAgICAgICBtZXNzYWdlID0gc2NoZW1hOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIG1lc3NhZ2UgPSBzY2hlbWEubWVzc2FnZTsKICAgICAgICAgICAgICB0eXBlID0gc2NoZW1hLnR5cGU7CiAgICAgICAgICAgICAgaXRlbXMgPSBzY2hlbWEuaXRlbXM7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3QgcHJvcGVydHlUeXBlcyA9ICgwLCB1dGlsaXR5XzEuZ2V0VHlwZXNPZlNjaGVtYSkocGFyZW50U2NoZW1hKTsKICAgICAgICAgICAgaWYgKCF0eXBlKSB7CiAgICAgICAgICAgICAgaWYgKHByb3BlcnR5VHlwZXMuc2l6ZSA9PT0gMSAmJiBwcm9wZXJ0eVR5cGVzLmhhcygiYm9vbGVhbiIpKSB7CiAgICAgICAgICAgICAgICB0eXBlID0gImNvbmZpcm1hdGlvbiI7CiAgICAgICAgICAgICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KHBhcmVudFNjaGVtYS5lbnVtKSkgewogICAgICAgICAgICAgICAgdHlwZSA9ICJsaXN0IjsKICAgICAgICAgICAgICB9IGVsc2UgaWYgKHByb3BlcnR5VHlwZXMuc2l6ZSA9PT0gMSAmJiBwcm9wZXJ0eVR5cGVzLmhhcygiYXJyYXkiKSAmJiBwYXJlbnRTY2hlbWEuaXRlbXMgJiYgQXJyYXkuaXNBcnJheShwYXJlbnRTY2hlbWEuaXRlbXMuZW51bSkpIHsKICAgICAgICAgICAgICAgIHR5cGUgPSAibGlzdCI7CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHR5cGUgPSAiaW5wdXQiOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBsZXQgbXVsdGlzZWxlY3Q7CiAgICAgICAgICAgIGlmICh0eXBlID09PSAibGlzdCIpIHsKICAgICAgICAgICAgICBtdWx0aXNlbGVjdCA9IHNjaGVtYS5tdWx0aXNlbGVjdCA9PT0gdm9pZCAwID8gcHJvcGVydHlUeXBlcy5zaXplID09PSAxICYmIHByb3BlcnR5VHlwZXMuaGFzKCJhcnJheSIpIDogc2NoZW1hLm11bHRpc2VsZWN0OwogICAgICAgICAgICAgIGNvbnN0IGVudW1WYWx1ZXMgPSBtdWx0aXNlbGVjdCA/IHBhcmVudFNjaGVtYS5pdGVtcyAmJiBwYXJlbnRTY2hlbWEuaXRlbXMuZW51bSA6IHBhcmVudFNjaGVtYS5lbnVtOwogICAgICAgICAgICAgIGlmICghaXRlbXMgJiYgQXJyYXkuaXNBcnJheShlbnVtVmFsdWVzKSkgewogICAgICAgICAgICAgICAgaXRlbXMgPSBbXTsKICAgICAgICAgICAgICAgIGZvciAoY29uc3QgdmFsdWUgb2YgZW51bVZhbHVlcykgewogICAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09ICJzdHJpbmciKSB7CiAgICAgICAgICAgICAgICAgICAgaXRlbXMucHVzaCh2YWx1ZSk7CiAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbHVlID09ICJvYmplY3QiKSB7CiAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgaXRlbXMucHVzaCh7IGxhYmVsOiB2YWx1ZS50b1N0cmluZygpLCB2YWx1ZSB9KTsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBjb25zdCBkZWZpbml0aW9uID0gewogICAgICAgICAgICAgIGlkOiBwYXRoLAogICAgICAgICAgICAgIHR5cGUsCiAgICAgICAgICAgICAgbWVzc2FnZSwKICAgICAgICAgICAgICByYXc6IHNjaGVtYSwKICAgICAgICAgICAgICBpdGVtcywKICAgICAgICAgICAgICBtdWx0aXNlbGVjdCwKICAgICAgICAgICAgICBwcm9wZXJ0eVR5cGVzLAogICAgICAgICAgICAgIGRlZmF1bHQ6IHR5cGVvZiBwYXJlbnRTY2hlbWEuZGVmYXVsdCA9PSAib2JqZWN0IiAmJiBwYXJlbnRTY2hlbWEuZGVmYXVsdCAhPT0gbnVsbCAmJiAhQXJyYXkuaXNBcnJheShwYXJlbnRTY2hlbWEuZGVmYXVsdCkgPyB2b2lkIDAgOiBwYXJlbnRTY2hlbWEuZGVmYXVsdCwKICAgICAgICAgICAgICBhc3luYyB2YWxpZGF0b3IoZGF0YSkgewogICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgaXQuc2VsZi52YWxpZGF0ZShwYXJlbnRTY2hlbWEsIGRhdGEpOwogICAgICAgICAgICAgICAgICBpZiAocmVzdWx0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChpdC5zZWxmLmVycm9ycz8ubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGl0LnNlbGYuZXJyb3JzWzBdLm1lc3NhZ2U7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgICAgICAgY29uc3QgdmFsaWRhdGlvbkVycm9yID0gZTsKICAgICAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodmFsaWRhdGlvbkVycm9yLmVycm9ycykgJiYgdmFsaWRhdGlvbkVycm9yLmVycm9ycy5sZW5ndGgpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdmFsaWRhdGlvbkVycm9yLmVycm9yc1swXS5tZXNzYWdlOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9OwogICAgICAgICAgICBjb21waWxhdGlvblNjaGVtSW5mby5wcm9tcHREZWZpbml0aW9ucy5wdXNoKGRlZmluaXRpb24pOwogICAgICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgaWYgKHRoaXMgJiYgdGhpcy5wcm9tcHRGaWVsZHNXaXRoVmFsdWUpIHsKICAgICAgICAgICAgICAgIHRoaXMucHJvbXB0RmllbGRzV2l0aFZhbHVlLmFkZChwYXRoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICAgIH07CiAgICAgICAgICB9LAogICAgICAgICAgbWV0YVNjaGVtYTogewogICAgICAgICAgICBvbmVPZjogWwogICAgICAgICAgICAgIHsgdHlwZTogInN0cmluZyIgfSwKICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICB0eXBlOiAib2JqZWN0IiwKICAgICAgICAgICAgICAgIHByb3BlcnRpZXM6IHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiB7IHR5cGU6ICJzdHJpbmciIH0sCiAgICAgICAgICAgICAgICAgICJtZXNzYWdlIjogeyB0eXBlOiAic3RyaW5nIiB9CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHRydWUsCiAgICAgICAgICAgICAgICByZXF1aXJlZDogWyJtZXNzYWdlIl0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIF0KICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfQogICAgICBhc3luYyBfYXBwbHlQcm9tcHRzKGRhdGEsIHByb21wdHMpIHsKICAgICAgICBjb25zdCBwcm92aWRlciA9IHRoaXMuX3Byb21wdFByb3ZpZGVyOwogICAgICAgIGlmICghcHJvdmlkZXIpIHsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgY29uc3QgYW5zd2VycyA9IGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkoKDAsIHJ4anNfMS5mcm9tKShwcm92aWRlcihwcm9tcHRzKSkpOwogICAgICAgIGZvciAoY29uc3QgcGF0aCBpbiBhbnN3ZXJzKSB7CiAgICAgICAgICBjb25zdCBwYXRoRnJhZ21lbnRzID0gcGF0aC5zcGxpdCgiLyIpLnNsaWNlKDEpOwogICAgICAgICAgX0NvcmVTY2hlbWFSZWdpc3RyeS5fc2V0KGRhdGEsIHBhdGhGcmFnbWVudHMsIGFuc3dlcnNbcGF0aF0sIG51bGwsIHZvaWQgMCwgdHJ1ZSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHN0YXRpYyBfc2V0KGRhdGEsIGZyYWdtZW50cywgdmFsdWUsIHBhcmVudCA9IG51bGwsIHBhcmVudFByb3BlcnR5LCBmb3JjZSkgewogICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBmcmFnbWVudHMubGVuZ3RoOyBpbmRleCsrKSB7CiAgICAgICAgICBjb25zdCBmcmFnbWVudCA9IGZyYWdtZW50c1tpbmRleF07CiAgICAgICAgICBpZiAoL15pXGQrJC8udGVzdChmcmFnbWVudCkpIHsKICAgICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KGRhdGEpKSB7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGZvciAobGV0IGRhdGFJbmRleCA9IDA7IGRhdGFJbmRleCA8IGRhdGEubGVuZ3RoOyBkYXRhSW5kZXgrKykgewogICAgICAgICAgICAgIF9Db3JlU2NoZW1hUmVnaXN0cnkuX3NldChkYXRhW2RhdGFJbmRleF0sIGZyYWdtZW50cy5zbGljZShpbmRleCArIDEpLCB2YWx1ZSwgZGF0YSwgYCR7ZGF0YUluZGV4fWApOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGlmICghZGF0YSAmJiBwYXJlbnQgIT09IG51bGwgJiYgcGFyZW50UHJvcGVydHkpIHsKICAgICAgICAgICAgZGF0YSA9IHBhcmVudFtwYXJlbnRQcm9wZXJ0eV0gPSB7fTsKICAgICAgICAgIH0KICAgICAgICAgIHBhcmVudCA9IGRhdGE7CiAgICAgICAgICBwYXJlbnRQcm9wZXJ0eSA9IGZyYWdtZW50OwogICAgICAgICAgZGF0YSA9IGRhdGFbZnJhZ21lbnRdOwogICAgICAgIH0KICAgICAgICBpZiAocGFyZW50ICYmIHBhcmVudFByb3BlcnR5ICYmIChmb3JjZSB8fCBwYXJlbnRbcGFyZW50UHJvcGVydHldID09PSB2b2lkIDApKSB7CiAgICAgICAgICBwYXJlbnRbcGFyZW50UHJvcGVydHldID0gdmFsdWU7CiAgICAgICAgfQogICAgICB9CiAgICAgIGFzeW5jIF9hcHBseVNtYXJ0RGVmYXVsdHMoZGF0YSwgc21hcnREZWZhdWx0cykgewogICAgICAgIGZvciAoY29uc3QgW3BvaW50ZXIsIHNjaGVtYV0gb2Ygc21hcnREZWZhdWx0cy5lbnRyaWVzKCkpIHsKICAgICAgICAgIGNvbnN0IGZyYWdtZW50cyA9IEpTT04ucGFyc2UocG9pbnRlcik7CiAgICAgICAgICBjb25zdCBzb3VyY2UgPSB0aGlzLl9zb3VyY2VNYXAuZ2V0KHNjaGVtYS4kc291cmNlKTsKICAgICAgICAgIGlmICghc291cmNlKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgbGV0IHZhbHVlID0gc291cmNlKHNjaGVtYSk7CiAgICAgICAgICBpZiAoKDAsIHJ4anNfMS5pc09ic2VydmFibGUpKHZhbHVlKSkgewogICAgICAgICAgICB2YWx1ZSA9IGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkodmFsdWUpOwogICAgICAgICAgfQogICAgICAgICAgX0NvcmVTY2hlbWFSZWdpc3RyeS5fc2V0KGRhdGEsIGZyYWdtZW50cywgdmFsdWUpOwogICAgICAgIH0KICAgICAgfQogICAgICB1c2VYRGVwcmVjYXRlZFByb3ZpZGVyKG9uVXNhZ2UpIHsKICAgICAgICB0aGlzLl9hanYuYWRkS2V5d29yZCh7CiAgICAgICAgICBrZXl3b3JkOiAieC1kZXByZWNhdGVkIiwKICAgICAgICAgIHZhbGlkYXRlOiAoc2NoZW1hLCBfZGF0YSwgX3BhcmVudFNjaGVtYSwgZGF0YUN4dCkgPT4gewogICAgICAgICAgICBpZiAoc2NoZW1hKSB7CiAgICAgICAgICAgICAgb25Vc2FnZShgT3B0aW9uICIke2RhdGFDeHQ/LnBhcmVudERhdGFQcm9wZXJ0eX0iIGlzIGRlcHJlY2F0ZWQke3R5cGVvZiBzY2hlbWEgPT0gInN0cmluZyIgPyAiOiAiICsgc2NoZW1hIDogIi4ifWApOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICAgfSwKICAgICAgICAgIGVycm9yczogZmFsc2UKICAgICAgICB9KTsKICAgICAgfQogICAgICBub3JtYWxpemVEYXRhUGF0aEFycihpdCkgewogICAgICAgIHJldHVybiBpdC5kYXRhUGF0aEFyci5zbGljZSgxLCBpdC5kYXRhTGV2ZWwgKyAxKS5tYXAoKHApID0+IHR5cGVvZiBwID09PSAibnVtYmVyIiA/IHAgOiBwLnN0ci5yZXBsYWNlKC8iL2csICIiKSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Db3JlU2NoZW1hUmVnaXN0cnkgPSBDb3JlU2NoZW1hUmVnaXN0cnk7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9zY2hlbWEuanMKdmFyIHJlcXVpcmVfc2NoZW1hID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9zY2hlbWEuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmlzSnNvblNjaGVtYSA9IGlzSnNvblNjaGVtYTsKICAgIGV4cG9ydHMyLm1lcmdlU2NoZW1hcyA9IG1lcmdlU2NoZW1hczsKICAgIHZhciB1dGlsc18xID0gcmVxdWlyZV91dGlscygpOwogICAgZnVuY3Rpb24gaXNKc29uU2NoZW1hKHZhbHVlKSB7CiAgICAgIHJldHVybiAoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHZhbHVlKSB8fCB2YWx1ZSA9PT0gZmFsc2UgfHwgdmFsdWUgPT09IHRydWU7CiAgICB9CiAgICBmdW5jdGlvbiBtZXJnZVNjaGVtYXMoLi4uc2NoZW1hcykgewogICAgICByZXR1cm4gc2NoZW1hcy5yZWR1Y2UoKHByZXYsIGN1cnIpID0+IHsKICAgICAgICBpZiAoY3VyciA9PT0gdm9pZCAwKSB7CiAgICAgICAgICByZXR1cm4gcHJldjsKICAgICAgICB9CiAgICAgICAgaWYgKHByZXYgPT09IGZhbHNlIHx8IGN1cnIgPT09IGZhbHNlKSB7CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfSBlbHNlIGlmIChwcmV2ID09PSB0cnVlKSB7CiAgICAgICAgICByZXR1cm4gY3VycjsKICAgICAgICB9IGVsc2UgaWYgKGN1cnIgPT09IHRydWUpIHsKICAgICAgICAgIHJldHVybiBwcmV2OwogICAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShwcmV2LmFsbE9mKSkgewogICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoY3Vyci5hbGxPZikpIHsKICAgICAgICAgICAgcmV0dXJuIHsgLi4ucHJldiwgYWxsT2Y6IFsuLi5wcmV2LmFsbE9mLCAuLi5jdXJyLmFsbE9mXSB9OwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgcmV0dXJuIHsgLi4ucHJldiwgYWxsT2Y6IFsuLi5wcmV2LmFsbE9mLCBjdXJyXSB9OwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShjdXJyLmFsbE9mKSkgewogICAgICAgICAgcmV0dXJuIHsgLi4ucHJldiwgYWxsT2Y6IFtwcmV2LCAuLi5jdXJyLmFsbE9mXSB9OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4geyAuLi5wcmV2LCBhbGxPZjogW3ByZXYsIGN1cnJdIH07CiAgICAgICAgfQogICAgICB9LCB0cnVlKTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL2luZGV4LmpzCnZhciByZXF1aXJlX3NjaGVtYTIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fY3JlYXRlQmluZGluZyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fY3JlYXRlQmluZGluZyB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihtLCBrKTsKICAgICAgaWYgKCFkZXNjIHx8ICgiZ2V0IiBpbiBkZXNjID8gIW0uX19lc01vZHVsZSA6IGRlc2Mud3JpdGFibGUgfHwgZGVzYy5jb25maWd1cmFibGUpKSB7CiAgICAgICAgZGVzYyA9IHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBtW2tdOwogICAgICAgIH0gfTsKICAgICAgfQogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgazIsIGRlc2MpOwogICAgfSA6IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIG9bazJdID0gbVtrXTsKICAgIH0pOwogICAgdmFyIF9fc2V0TW9kdWxlRGVmYXVsdCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc2V0TW9kdWxlRGVmYXVsdCB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJkZWZhdWx0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCB2YWx1ZTogdiB9KTsKICAgIH0gOiBmdW5jdGlvbihvLCB2KSB7CiAgICAgIG9bImRlZmF1bHQiXSA9IHY7CiAgICB9KTsKICAgIHZhciBfX2ltcG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydFN0YXIgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgb3duS2V5cyA9IGZ1bmN0aW9uKG8pIHsKICAgICAgICBvd25LZXlzID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMgfHwgZnVuY3Rpb24obzIpIHsKICAgICAgICAgIHZhciBhciA9IFtdOwogICAgICAgICAgZm9yICh2YXIgayBpbiBvMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvMiwgaykpIGFyW2FyLmxlbmd0aF0gPSBrOwogICAgICAgICAgcmV0dXJuIGFyOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIG93bktleXMobyk7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihtb2QpIHsKICAgICAgICBpZiAobW9kICYmIG1vZC5fX2VzTW9kdWxlKSByZXR1cm4gbW9kOwogICAgICAgIHZhciByZXN1bHQgPSB7fTsKICAgICAgICBpZiAobW9kICE9IG51bGwpIHsKICAgICAgICAgIGZvciAodmFyIGsgPSBvd25LZXlzKG1vZCksIGkgPSAwOyBpIDwgay5sZW5ndGg7IGkrKykgaWYgKGtbaV0gIT09ICJkZWZhdWx0IikgX19jcmVhdGVCaW5kaW5nKHJlc3VsdCwgbW9kLCBrW2ldKTsKICAgICAgICB9CiAgICAgICAgX19zZXRNb2R1bGVEZWZhdWx0KHJlc3VsdCwgbW9kKTsKICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9OwogICAgfSgpOwogICAgdmFyIF9fZXhwb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXhwb3J0U3RhciB8fCBmdW5jdGlvbihtLCBleHBvcnRzMykgewogICAgICBmb3IgKHZhciBwIGluIG0pIGlmIChwICE9PSAiZGVmYXVsdCIgJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChleHBvcnRzMywgcCkpIF9fY3JlYXRlQmluZGluZyhleHBvcnRzMywgbSwgcCk7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi50cmFuc2Zvcm1zID0gdm9pZCAwOwogICAgdmFyIHRyYW5zZm9ybXMgPSBfX2ltcG9ydFN0YXIocmVxdWlyZV90cmFuc2Zvcm1zKCkpOwogICAgZXhwb3J0czIudHJhbnNmb3JtcyA9IHRyYW5zZm9ybXM7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9pbnRlcmZhY2UoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfcG9pbnRlcigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9yZWdpc3RyeSgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9zY2hlbWEoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdmlzaXRvcigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV91dGlsaXR5KCksIGV4cG9ydHMyKTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vaW5kZXguanMKdmFyIHJlcXVpcmVfanNvbiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX3NldE1vZHVsZURlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NldE1vZHVsZURlZmF1bHQgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCB2KSB7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZGVmYXVsdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHYgfSk7CiAgICB9IDogZnVuY3Rpb24obywgdikgewogICAgICBvWyJkZWZhdWx0Il0gPSB2OwogICAgfSk7CiAgICB2YXIgX19pbXBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19pbXBvcnRTdGFyIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIG93bktleXMgPSBmdW5jdGlvbihvKSB7CiAgICAgICAgb3duS2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uKG8yKSB7CiAgICAgICAgICB2YXIgYXIgPSBbXTsKICAgICAgICAgIGZvciAodmFyIGsgaW4gbzIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobzIsIGspKSBhclthci5sZW5ndGhdID0gazsKICAgICAgICAgIHJldHVybiBhcjsKICAgICAgICB9OwogICAgICAgIHJldHVybiBvd25LZXlzKG8pOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24obW9kKSB7CiAgICAgICAgaWYgKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgcmV0dXJuIG1vZDsKICAgICAgICB2YXIgcmVzdWx0ID0ge307CiAgICAgICAgaWYgKG1vZCAhPSBudWxsKSB7CiAgICAgICAgICBmb3IgKHZhciBrID0gb3duS2V5cyhtb2QpLCBpID0gMDsgaSA8IGsubGVuZ3RoOyBpKyspIGlmIChrW2ldICE9PSAiZGVmYXVsdCIpIF9fY3JlYXRlQmluZGluZyhyZXN1bHQsIG1vZCwga1tpXSk7CiAgICAgICAgfQogICAgICAgIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuc2NoZW1hID0gdm9pZCAwOwogICAgdmFyIHNjaGVtYSA9IF9faW1wb3J0U3RhcihyZXF1aXJlX3NjaGVtYTIoKSk7CiAgICBleHBvcnRzMi5zY2hlbWEgPSBzY2hlbWE7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV91dGlscygpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvbG9nZ2VyLmpzCnZhciByZXF1aXJlX2xvZ2dlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xvZ2dlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuTG9nZ2VyID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgTG9nZ2VyID0gY2xhc3MgZXh0ZW5kcyByeGpzXzEuT2JzZXJ2YWJsZSB7CiAgICAgIG5hbWU7CiAgICAgIHBhcmVudDsKICAgICAgX3N1YmplY3QgPSBuZXcgcnhqc18xLlN1YmplY3QoKTsKICAgICAgX21ldGFkYXRhOwogICAgICBfb2JzID0gcnhqc18xLkVNUFRZOwogICAgICBfc3Vic2NyaXB0aW9uID0gbnVsbDsKICAgICAgZ2V0IF9vYnNlcnZhYmxlKCkgewogICAgICAgIHJldHVybiB0aGlzLl9vYnM7CiAgICAgIH0KICAgICAgc2V0IF9vYnNlcnZhYmxlKHYpIHsKICAgICAgICBpZiAodGhpcy5fc3Vic2NyaXB0aW9uKSB7CiAgICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fb2JzID0gdjsKICAgICAgICBpZiAodGhpcy5wYXJlbnQpIHsKICAgICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbiA9IHRoaXMuc3Vic2NyaWJlKCh2YWx1ZSkgPT4gewogICAgICAgICAgICBpZiAodGhpcy5wYXJlbnQpIHsKICAgICAgICAgICAgICB0aGlzLnBhcmVudC5fc3ViamVjdC5uZXh0KHZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSwgKGVycm9yKSA9PiB7CiAgICAgICAgICAgIGlmICh0aGlzLnBhcmVudCkgewogICAgICAgICAgICAgIHRoaXMucGFyZW50Ll9zdWJqZWN0LmVycm9yKGVycm9yKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSwgKCkgPT4gewogICAgICAgICAgICBpZiAodGhpcy5fc3Vic2NyaXB0aW9uKSB7CiAgICAgICAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uID0gbnVsbDsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgfQogICAgICBjb25zdHJ1Y3RvcihuYW1lLCBwYXJlbnQgPSBudWxsKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLm5hbWUgPSBuYW1lOwogICAgICAgIHRoaXMucGFyZW50ID0gcGFyZW50OwogICAgICAgIGNvbnN0IHBhdGggPSBbXTsKICAgICAgICBsZXQgcCA9IHBhcmVudDsKICAgICAgICB3aGlsZSAocCkgewogICAgICAgICAgcGF0aC5wdXNoKHAubmFtZSk7CiAgICAgICAgICBwID0gcC5wYXJlbnQ7CiAgICAgICAgfQogICAgICAgIHRoaXMuX21ldGFkYXRhID0geyBuYW1lLCBwYXRoIH07CiAgICAgICAgdGhpcy5fb2JzZXJ2YWJsZSA9IHRoaXMuX3N1YmplY3QuYXNPYnNlcnZhYmxlKCk7CiAgICAgICAgaWYgKHRoaXMucGFyZW50ICYmIHRoaXMucGFyZW50Ll9zdWJqZWN0KSB7CiAgICAgICAgICB0aGlzLnBhcmVudC5fc3ViamVjdC5zdWJzY3JpYmUodm9pZCAwLCB2b2lkIDAsICgpID0+IHRoaXMuY29tcGxldGUoKSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGFzQXBpKCkgewogICAgICAgIHJldHVybiB7CiAgICAgICAgICBjcmVhdGVDaGlsZDogKG5hbWUpID0+IHRoaXMuY3JlYXRlQ2hpbGQobmFtZSksCiAgICAgICAgICBsb2c6IChsZXZlbCwgbWVzc2FnZSwgbWV0YWRhdGEpID0+IHsKICAgICAgICAgICAgcmV0dXJuIHRoaXMubG9nKGxldmVsLCBtZXNzYWdlLCBtZXRhZGF0YSk7CiAgICAgICAgICB9LAogICAgICAgICAgZGVidWc6IChtZXNzYWdlLCBtZXRhZGF0YSkgPT4gdGhpcy5kZWJ1ZyhtZXNzYWdlLCBtZXRhZGF0YSksCiAgICAgICAgICBpbmZvOiAobWVzc2FnZSwgbWV0YWRhdGEpID0+IHRoaXMuaW5mbyhtZXNzYWdlLCBtZXRhZGF0YSksCiAgICAgICAgICB3YXJuOiAobWVzc2FnZSwgbWV0YWRhdGEpID0+IHRoaXMud2FybihtZXNzYWdlLCBtZXRhZGF0YSksCiAgICAgICAgICBlcnJvcjogKG1lc3NhZ2UsIG1ldGFkYXRhKSA9PiB0aGlzLmVycm9yKG1lc3NhZ2UsIG1ldGFkYXRhKSwKICAgICAgICAgIGZhdGFsOiAobWVzc2FnZSwgbWV0YWRhdGEpID0+IHRoaXMuZmF0YWwobWVzc2FnZSwgbWV0YWRhdGEpCiAgICAgICAgfTsKICAgICAgfQogICAgICBjcmVhdGVDaGlsZChuYW1lKSB7CiAgICAgICAgcmV0dXJuIG5ldyB0aGlzLmNvbnN0cnVjdG9yKG5hbWUsIHRoaXMpOwogICAgICB9CiAgICAgIGNvbXBsZXRlKCkgewogICAgICAgIHRoaXMuX3N1YmplY3QuY29tcGxldGUoKTsKICAgICAgfQogICAgICBsb2cobGV2ZWwsIG1lc3NhZ2UsIG1ldGFkYXRhID0ge30pIHsKICAgICAgICBjb25zdCBlbnRyeSA9IE9iamVjdC5hc3NpZ24oe30sIG1ldGFkYXRhLCB0aGlzLl9tZXRhZGF0YSwgewogICAgICAgICAgbGV2ZWwsCiAgICAgICAgICBtZXNzYWdlLAogICAgICAgICAgdGltZXN0YW1wOiArRGF0ZS5ub3coKQogICAgICAgIH0pOwogICAgICAgIHRoaXMuX3N1YmplY3QubmV4dChlbnRyeSk7CiAgICAgIH0KICAgICAgbmV4dChlbnRyeSkgewogICAgICAgIHRoaXMuX3N1YmplY3QubmV4dChlbnRyeSk7CiAgICAgIH0KICAgICAgZGVidWcobWVzc2FnZSwgbWV0YWRhdGEgPSB7fSkgewogICAgICAgIHJldHVybiB0aGlzLmxvZygiZGVidWciLCBtZXNzYWdlLCBtZXRhZGF0YSk7CiAgICAgIH0KICAgICAgaW5mbyhtZXNzYWdlLCBtZXRhZGF0YSA9IHt9KSB7CiAgICAgICAgcmV0dXJuIHRoaXMubG9nKCJpbmZvIiwgbWVzc2FnZSwgbWV0YWRhdGEpOwogICAgICB9CiAgICAgIHdhcm4obWVzc2FnZSwgbWV0YWRhdGEgPSB7fSkgewogICAgICAgIHJldHVybiB0aGlzLmxvZygid2FybiIsIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICBlcnJvcihtZXNzYWdlLCBtZXRhZGF0YSA9IHt9KSB7CiAgICAgICAgcmV0dXJuIHRoaXMubG9nKCJlcnJvciIsIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICBmYXRhbChtZXNzYWdlLCBtZXRhZGF0YSA9IHt9KSB7CiAgICAgICAgcmV0dXJuIHRoaXMubG9nKCJmYXRhbCIsIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICB0b1N0cmluZygpIHsKICAgICAgICByZXR1cm4gYDxMb2dnZXIoJHt0aGlzLm5hbWV9KT5gOwogICAgICB9CiAgICAgIGxpZnQob3BlcmF0b3IpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb2JzZXJ2YWJsZS5saWZ0KG9wZXJhdG9yKTsKICAgICAgfQogICAgICBzdWJzY3JpYmUoX29ic2VydmVyT3JOZXh0LCBfZXJyb3IsIF9jb21wbGV0ZSkgewogICAgICAgIHJldHVybiB0aGlzLl9vYnNlcnZhYmxlLnN1YnNjcmliZS5hcHBseSgKICAgICAgICAgIHRoaXMuX29ic2VydmFibGUsCiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLXJlc3QtcGFyYW1zCiAgICAgICAgICBhcmd1bWVudHMKICAgICAgICApOwogICAgICB9CiAgICAgIGZvckVhY2gobmV4dCwgcHJvbWlzZUN0b3IgPSBQcm9taXNlKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX29ic2VydmFibGUuZm9yRWFjaChuZXh0LCBwcm9taXNlQ3Rvcik7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Mb2dnZXIgPSBMb2dnZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvaW5kZW50LmpzCnZhciByZXF1aXJlX2luZGVudCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2luZGVudC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuSW5kZW50TG9nZ2VyID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgbG9nZ2VyXzEgPSByZXF1aXJlX2xvZ2dlcigpOwogICAgdmFyIGluZGVudGF0aW9uTWFwID0ge307CiAgICB2YXIgSW5kZW50TG9nZ2VyID0gY2xhc3MgZXh0ZW5kcyBsb2dnZXJfMS5Mb2dnZXIgewogICAgICBjb25zdHJ1Y3RvcihuYW1lLCBwYXJlbnQgPSBudWxsLCBpbmRlbnRhdGlvbiA9ICIgICIpIHsKICAgICAgICBzdXBlcihuYW1lLCBwYXJlbnQpOwogICAgICAgIGluZGVudGF0aW9uTWFwW2luZGVudGF0aW9uXSA9IGluZGVudGF0aW9uTWFwW2luZGVudGF0aW9uXSB8fCBbIiJdOwogICAgICAgIGNvbnN0IGluZGVudE1hcCA9IGluZGVudGF0aW9uTWFwW2luZGVudGF0aW9uXTsKICAgICAgICB0aGlzLl9vYnNlcnZhYmxlID0gdGhpcy5fb2JzZXJ2YWJsZS5waXBlKCgwLCByeGpzXzEubWFwKSgoZW50cnkpID0+IHsKICAgICAgICAgIGNvbnN0IGwgPSBlbnRyeS5wYXRoLmZpbHRlcigoeCkgPT4gISF4KS5sZW5ndGg7CiAgICAgICAgICBpZiAobCA+PSBpbmRlbnRNYXAubGVuZ3RoKSB7CiAgICAgICAgICAgIGxldCBjdXJyZW50ID0gaW5kZW50TWFwW2luZGVudE1hcC5sZW5ndGggLSAxXTsKICAgICAgICAgICAgd2hpbGUgKGwgPj0gaW5kZW50TWFwLmxlbmd0aCkgewogICAgICAgICAgICAgIGN1cnJlbnQgKz0gaW5kZW50YXRpb247CiAgICAgICAgICAgICAgaW5kZW50TWFwLnB1c2goY3VycmVudCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGVudHJ5Lm1lc3NhZ2UgPSBpbmRlbnRNYXBbbF0gKyBlbnRyeS5tZXNzYWdlLnNwbGl0KC9cbi8pLmpvaW4oIlxuIiArIGluZGVudE1hcFtsXSk7CiAgICAgICAgICByZXR1cm4gZW50cnk7CiAgICAgICAgfSkpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW5kZW50TG9nZ2VyID0gSW5kZW50TG9nZ2VyOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2xldmVsLmpzCnZhciByZXF1aXJlX2xldmVsID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvbGV2ZWwuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkxldmVsQ2FwTG9nZ2VyID0gZXhwb3J0czIuTGV2ZWxUcmFuc2Zvcm1Mb2dnZXIgPSB2b2lkIDA7CiAgICB2YXIgbG9nZ2VyXzEgPSByZXF1aXJlX2xvZ2dlcigpOwogICAgdmFyIExldmVsVHJhbnNmb3JtTG9nZ2VyID0gY2xhc3MgX0xldmVsVHJhbnNmb3JtTG9nZ2VyIGV4dGVuZHMgbG9nZ2VyXzEuTG9nZ2VyIHsKICAgICAgbmFtZTsKICAgICAgcGFyZW50OwogICAgICBsZXZlbFRyYW5zZm9ybTsKICAgICAgY29uc3RydWN0b3IobmFtZSwgcGFyZW50ID0gbnVsbCwgbGV2ZWxUcmFuc2Zvcm0pIHsKICAgICAgICBzdXBlcihuYW1lLCBwYXJlbnQpOwogICAgICAgIHRoaXMubmFtZSA9IG5hbWU7CiAgICAgICAgdGhpcy5wYXJlbnQgPSBwYXJlbnQ7CiAgICAgICAgdGhpcy5sZXZlbFRyYW5zZm9ybSA9IGxldmVsVHJhbnNmb3JtOwogICAgICB9CiAgICAgIGxvZyhsZXZlbCwgbWVzc2FnZSwgbWV0YWRhdGEgPSB7fSkgewogICAgICAgIHJldHVybiBzdXBlci5sb2codGhpcy5sZXZlbFRyYW5zZm9ybShsZXZlbCksIG1lc3NhZ2UsIG1ldGFkYXRhKTsKICAgICAgfQogICAgICBjcmVhdGVDaGlsZChuYW1lKSB7CiAgICAgICAgcmV0dXJuIG5ldyBfTGV2ZWxUcmFuc2Zvcm1Mb2dnZXIobmFtZSwgdGhpcywgdGhpcy5sZXZlbFRyYW5zZm9ybSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5MZXZlbFRyYW5zZm9ybUxvZ2dlciA9IExldmVsVHJhbnNmb3JtTG9nZ2VyOwogICAgdmFyIExldmVsQ2FwTG9nZ2VyID0gY2xhc3MgX0xldmVsQ2FwTG9nZ2VyIGV4dGVuZHMgTGV2ZWxUcmFuc2Zvcm1Mb2dnZXIgewogICAgICBuYW1lOwogICAgICBwYXJlbnQ7CiAgICAgIGxldmVsQ2FwOwogICAgICBzdGF0aWMgbGV2ZWxNYXAgPSB7CiAgICAgICAgZGVidWc6IHsgZGVidWc6ICJkZWJ1ZyIsIGluZm86ICJkZWJ1ZyIsIHdhcm46ICJkZWJ1ZyIsIGVycm9yOiAiZGVidWciLCBmYXRhbDogImRlYnVnIiB9LAogICAgICAgIGluZm86IHsgZGVidWc6ICJkZWJ1ZyIsIGluZm86ICJpbmZvIiwgd2FybjogImluZm8iLCBlcnJvcjogImluZm8iLCBmYXRhbDogImluZm8iIH0sCiAgICAgICAgd2FybjogeyBkZWJ1ZzogImRlYnVnIiwgaW5mbzogImluZm8iLCB3YXJuOiAid2FybiIsIGVycm9yOiAid2FybiIsIGZhdGFsOiAid2FybiIgfSwKICAgICAgICBlcnJvcjogeyBkZWJ1ZzogImRlYnVnIiwgaW5mbzogImluZm8iLCB3YXJuOiAid2FybiIsIGVycm9yOiAiZXJyb3IiLCBmYXRhbDogImVycm9yIiB9LAogICAgICAgIGZhdGFsOiB7IGRlYnVnOiAiZGVidWciLCBpbmZvOiAiaW5mbyIsIHdhcm46ICJ3YXJuIiwgZXJyb3I6ICJlcnJvciIsIGZhdGFsOiAiZmF0YWwiIH0KICAgICAgfTsKICAgICAgY29uc3RydWN0b3IobmFtZSwgcGFyZW50ID0gbnVsbCwgbGV2ZWxDYXApIHsKICAgICAgICBzdXBlcihuYW1lLCBwYXJlbnQsIChsZXZlbCkgPT4gewogICAgICAgICAgcmV0dXJuIF9MZXZlbENhcExvZ2dlci5sZXZlbE1hcFtsZXZlbENhcF1bbGV2ZWxdIHx8IGxldmVsOwogICAgICAgIH0pOwogICAgICAgIHRoaXMubmFtZSA9IG5hbWU7CiAgICAgICAgdGhpcy5wYXJlbnQgPSBwYXJlbnQ7CiAgICAgICAgdGhpcy5sZXZlbENhcCA9IGxldmVsQ2FwOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTGV2ZWxDYXBMb2dnZXIgPSBMZXZlbENhcExvZ2dlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci9udWxsLWxvZ2dlci5qcwp2YXIgcmVxdWlyZV9udWxsX2xvZ2dlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL251bGwtbG9nZ2VyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5OdWxsTG9nZ2VyID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgbG9nZ2VyXzEgPSByZXF1aXJlX2xvZ2dlcigpOwogICAgdmFyIE51bGxMb2dnZXIgPSBjbGFzcyBfTnVsbExvZ2dlciBleHRlbmRzIGxvZ2dlcl8xLkxvZ2dlciB7CiAgICAgIGNvbnN0cnVjdG9yKHBhcmVudCA9IG51bGwpIHsKICAgICAgICBzdXBlcigiIiwgcGFyZW50KTsKICAgICAgICB0aGlzLl9vYnNlcnZhYmxlID0gcnhqc18xLkVNUFRZOwogICAgICB9CiAgICAgIGFzQXBpKCkgewogICAgICAgIHJldHVybiB7CiAgICAgICAgICBjcmVhdGVDaGlsZDogKCkgPT4gbmV3IF9OdWxsTG9nZ2VyKHRoaXMpLAogICAgICAgICAgbG9nKCkgewogICAgICAgICAgfSwKICAgICAgICAgIGRlYnVnKCkgewogICAgICAgICAgfSwKICAgICAgICAgIGluZm8oKSB7CiAgICAgICAgICB9LAogICAgICAgICAgd2FybigpIHsKICAgICAgICAgIH0sCiAgICAgICAgICBlcnJvcigpIHsKICAgICAgICAgIH0sCiAgICAgICAgICBmYXRhbCgpIHsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTnVsbExvZ2dlciA9IE51bGxMb2dnZXI7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvdHJhbnNmb3JtLWxvZ2dlci5qcwp2YXIgcmVxdWlyZV90cmFuc2Zvcm1fbG9nZ2VyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvdHJhbnNmb3JtLWxvZ2dlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVHJhbnNmb3JtTG9nZ2VyID0gdm9pZCAwOwogICAgdmFyIGxvZ2dlcl8xID0gcmVxdWlyZV9sb2dnZXIoKTsKICAgIHZhciBUcmFuc2Zvcm1Mb2dnZXIgPSBjbGFzcyBleHRlbmRzIGxvZ2dlcl8xLkxvZ2dlciB7CiAgICAgIGNvbnN0cnVjdG9yKG5hbWUsIHRyYW5zZm9ybSwgcGFyZW50ID0gbnVsbCkgewogICAgICAgIHN1cGVyKG5hbWUsIHBhcmVudCk7CiAgICAgICAgdGhpcy5fb2JzZXJ2YWJsZSA9IHRyYW5zZm9ybSh0aGlzLl9vYnNlcnZhYmxlKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlRyYW5zZm9ybUxvZ2dlciA9IFRyYW5zZm9ybUxvZ2dlcjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci9pbmRleC5qcwp2YXIgcmVxdWlyZV9sb2dnZXIyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2luZGVudCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9sZXZlbCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9sb2dnZXIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfbnVsbF9sb2dnZXIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdHJhbnNmb3JtX2xvZ2dlcigpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvZGVmaW5pdGlvbnMuanMKdmFyIHJlcXVpcmVfZGVmaW5pdGlvbnMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9kZWZpbml0aW9ucy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVGFyZ2V0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBleHBvcnRzMi5Qcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSB2b2lkIDA7CiAgICB2YXIgRGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBjbGFzcyB7CiAgICAgIF9saXN0ZW5lcjsKICAgICAgX21hcDsKICAgICAgY29uc3RydWN0b3IoaW5pdGlhbCwgX2xpc3RlbmVyKSB7CiAgICAgICAgdGhpcy5fbGlzdGVuZXIgPSBfbGlzdGVuZXI7CiAgICAgICAgdGhpcy5fbWFwID0gbmV3IE1hcChpbml0aWFsICYmIE9iamVjdC5lbnRyaWVzKGluaXRpYWwpKTsKICAgICAgfQogICAgICBkZWxldGUoa2V5KSB7CiAgICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5fbWFwLmRlbGV0ZShrZXkpOwogICAgICAgIGlmIChyZXN1bHQpIHsKICAgICAgICAgIHRoaXMuX2xpc3RlbmVyPy4oa2V5LCB2b2lkIDAsIHRoaXMpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9CiAgICAgIHNldChrZXksIHZhbHVlKSB7CiAgICAgICAgY29uc3QgdXBkYXRlZFZhbHVlID0gdmFsdWUgIT09IHRoaXMuZ2V0KGtleSk7CiAgICAgICAgaWYgKHVwZGF0ZWRWYWx1ZSkgewogICAgICAgICAgdGhpcy5fbWFwLnNldChrZXksIHZhbHVlKTsKICAgICAgICAgIHRoaXMuX2xpc3RlbmVyPy4oa2V5LCB2YWx1ZSwgdGhpcyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGZvckVhY2goY2FsbGJhY2tmbiwgdGhpc0FyZykgewogICAgICAgIHRoaXMuX21hcC5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiBjYWxsYmFja2ZuKHZhbHVlLCBrZXksIHRoaXMpLCB0aGlzQXJnKTsKICAgICAgfQogICAgICBnZXQoa2V5KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX21hcC5nZXQoa2V5KTsKICAgICAgfQogICAgICBoYXMoa2V5KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX21hcC5oYXMoa2V5KTsKICAgICAgfQogICAgICBnZXQgc2l6ZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbWFwLnNpemU7CiAgICAgIH0KICAgICAgW1N5bWJvbC5pdGVyYXRvcl0oKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX21hcFtTeW1ib2wuaXRlcmF0b3JdKCk7CiAgICAgIH0KICAgICAgZW50cmllcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbWFwLmVudHJpZXMoKTsKICAgICAgfQogICAgICBrZXlzKCkgewogICAgICAgIHJldHVybiB0aGlzLl9tYXAua2V5cygpOwogICAgICB9CiAgICAgIHZhbHVlcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fbWFwLnZhbHVlcygpOwogICAgICB9CiAgICB9OwogICAgZnVuY3Rpb24gaXNKc29uVmFsdWUodmFsdWUpIHsKICAgICAgY29uc3QgdmlzaXRlZCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIHN3aXRjaCAodHlwZW9mIHZhbHVlKSB7CiAgICAgICAgY2FzZSAiYm9vbGVhbiI6CiAgICAgICAgY2FzZSAibnVtYmVyIjoKICAgICAgICBjYXNlICJzdHJpbmciOgogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgY2FzZSAib2JqZWN0IjoKICAgICAgICAgIGlmICh2YWx1ZSA9PT0gbnVsbCkgewogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIHZpc2l0ZWQuYWRkKHZhbHVlKTsKICAgICAgICAgIGZvciAoY29uc3QgcHJvcGVydHkgb2YgT2JqZWN0LnZhbHVlcyh2YWx1ZSkpIHsKICAgICAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gIm9iamVjdCIgJiYgdmlzaXRlZC5oYXMocHJvcGVydHkpKSB7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKCFpc0pzb25WYWx1ZShwcm9wZXJ0eSkpIHsKICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgIH0KICAgIHZhciBQcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBjbGFzcyBleHRlbmRzIERlZmluaXRpb25Db2xsZWN0aW9uIHsKICAgICAgY29uc3RydWN0b3IoaW5pdGlhbCwgbGlzdGVuZXIpIHsKICAgICAgICBzdXBlcihpbml0aWFsLCBsaXN0ZW5lcik7CiAgICAgIH0KICAgICAgYWRkKGRlZmluaXRpb24pIHsKICAgICAgICBpZiAodGhpcy5oYXMoZGVmaW5pdGlvbi5uYW1lKSkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJQcm9qZWN0IG5hbWUgYWxyZWFkeSBleGlzdHMuIik7CiAgICAgICAgfQogICAgICAgIHRoaXMuX3ZhbGlkYXRlTmFtZShkZWZpbml0aW9uLm5hbWUpOwogICAgICAgIGNvbnN0IHByb2plY3QgPSB7CiAgICAgICAgICByb290OiBkZWZpbml0aW9uLnJvb3QsCiAgICAgICAgICBwcmVmaXg6IGRlZmluaXRpb24ucHJlZml4LAogICAgICAgICAgc291cmNlUm9vdDogZGVmaW5pdGlvbi5zb3VyY2VSb290LAogICAgICAgICAgdGFyZ2V0czogbmV3IFRhcmdldERlZmluaXRpb25Db2xsZWN0aW9uKCksCiAgICAgICAgICBleHRlbnNpb25zOiB7fQogICAgICAgIH07CiAgICAgICAgaWYgKGRlZmluaXRpb24udGFyZ2V0cykgewogICAgICAgICAgZm9yIChjb25zdCBbbmFtZSwgdGFyZ2V0XSBvZiBPYmplY3QuZW50cmllcyhkZWZpbml0aW9uLnRhcmdldHMpKSB7CiAgICAgICAgICAgIGlmICh0YXJnZXQpIHsKICAgICAgICAgICAgICBwcm9qZWN0LnRhcmdldHMuc2V0KG5hbWUsIHRhcmdldCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZm9yIChjb25zdCBbbmFtZSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKGRlZmluaXRpb24pKSB7CiAgICAgICAgICBzd2l0Y2ggKG5hbWUpIHsKICAgICAgICAgICAgY2FzZSAibmFtZSI6CiAgICAgICAgICAgIGNhc2UgInJvb3QiOgogICAgICAgICAgICBjYXNlICJzb3VyY2VSb290IjoKICAgICAgICAgICAgY2FzZSAicHJlZml4IjoKICAgICAgICAgICAgY2FzZSAidGFyZ2V0cyI6CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgaWYgKGlzSnNvblZhbHVlKHZhbHVlKSkgewogICAgICAgICAgICAgICAgcHJvamVjdC5leHRlbnNpb25zW25hbWVdID0gdmFsdWU7CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoYCIke25hbWV9IiBtdXN0IGJlIGEgSlNPTiB2YWx1ZS5gKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHN1cGVyLnNldChkZWZpbml0aW9uLm5hbWUsIHByb2plY3QpOwogICAgICAgIHJldHVybiBwcm9qZWN0OwogICAgICB9CiAgICAgIHNldChuYW1lLCB2YWx1ZSkgewogICAgICAgIHRoaXMuX3ZhbGlkYXRlTmFtZShuYW1lKTsKICAgICAgICBzdXBlci5zZXQobmFtZSwgdmFsdWUpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIF92YWxpZGF0ZU5hbWUobmFtZSkgewogICAgICAgIGlmICh0eXBlb2YgbmFtZSAhPT0gInN0cmluZyIgfHwgIS9eKD86QFx3W1x3Li1dKlwvKT9cd1tcdy4tXSokLy50ZXN0KG5hbWUpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlByb2plY3QgbmFtZSBtdXN0IGJlIGEgdmFsaWQgbnBtIHBhY2thZ2UgbmFtZS4iKTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Qcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBQcm9qZWN0RGVmaW5pdGlvbkNvbGxlY3Rpb247CiAgICB2YXIgVGFyZ2V0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBjbGFzcyBleHRlbmRzIERlZmluaXRpb25Db2xsZWN0aW9uIHsKICAgICAgY29uc3RydWN0b3IoaW5pdGlhbCwgbGlzdGVuZXIpIHsKICAgICAgICBzdXBlcihpbml0aWFsLCBsaXN0ZW5lcik7CiAgICAgIH0KICAgICAgYWRkKGRlZmluaXRpb24pIHsKICAgICAgICBpZiAodGhpcy5oYXMoZGVmaW5pdGlvbi5uYW1lKSkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJUYXJnZXQgbmFtZSBhbHJlYWR5IGV4aXN0cy4iKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fdmFsaWRhdGVOYW1lKGRlZmluaXRpb24ubmFtZSk7CiAgICAgICAgY29uc3QgdGFyZ2V0ID0gewogICAgICAgICAgYnVpbGRlcjogZGVmaW5pdGlvbi5idWlsZGVyLAogICAgICAgICAgb3B0aW9uczogZGVmaW5pdGlvbi5vcHRpb25zLAogICAgICAgICAgY29uZmlndXJhdGlvbnM6IGRlZmluaXRpb24uY29uZmlndXJhdGlvbnMsCiAgICAgICAgICBkZWZhdWx0Q29uZmlndXJhdGlvbjogZGVmaW5pdGlvbi5kZWZhdWx0Q29uZmlndXJhdGlvbgogICAgICAgIH07CiAgICAgICAgc3VwZXIuc2V0KGRlZmluaXRpb24ubmFtZSwgdGFyZ2V0KTsKICAgICAgICByZXR1cm4gdGFyZ2V0OwogICAgICB9CiAgICAgIHNldChuYW1lLCB2YWx1ZSkgewogICAgICAgIHRoaXMuX3ZhbGlkYXRlTmFtZShuYW1lKTsKICAgICAgICBzdXBlci5zZXQobmFtZSwgdmFsdWUpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIF92YWxpZGF0ZU5hbWUobmFtZSkgewogICAgICAgIGlmICh0eXBlb2YgbmFtZSAhPT0gInN0cmluZyIpIHsKICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIlRhcmdldCBuYW1lIG11c3QgYmUgYSBzdHJpbmcuIik7CiAgICAgICAgfQogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVGFyZ2V0RGVmaW5pdGlvbkNvbGxlY3Rpb24gPSBUYXJnZXREZWZpbml0aW9uQ29sbGVjdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvcGF0aC5qcwp2YXIgcmVxdWlyZV9wYXRoID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL3BhdGguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnBhdGggPSBleHBvcnRzMi5Ob3JtYWxpemVkUm9vdCA9IGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXAgPSBleHBvcnRzMi5QYXRoQ2Fubm90QmVGcmFnbWVudEV4Y2VwdGlvbiA9IGV4cG9ydHMyLlBhdGhNdXN0QmVBYnNvbHV0ZUV4Y2VwdGlvbiA9IGV4cG9ydHMyLkludmFsaWRQYXRoRXhjZXB0aW9uID0gdm9pZCAwOwogICAgZXhwb3J0czIuc3BsaXQgPSBzcGxpdDsKICAgIGV4cG9ydHMyLmV4dG5hbWUgPSBleHRuYW1lOwogICAgZXhwb3J0czIuYmFzZW5hbWUgPSBiYXNlbmFtZTsKICAgIGV4cG9ydHMyLmRpcm5hbWUgPSBkaXJuYW1lOwogICAgZXhwb3J0czIuam9pbiA9IGpvaW4yOwogICAgZXhwb3J0czIuaXNBYnNvbHV0ZSA9IGlzQWJzb2x1dGU7CiAgICBleHBvcnRzMi5yZWxhdGl2ZSA9IHJlbGF0aXZlOwogICAgZXhwb3J0czIucmVzb2x2ZSA9IHJlc29sdmU7CiAgICBleHBvcnRzMi5mcmFnbWVudCA9IGZyYWdtZW50OwogICAgZXhwb3J0czIucmVzZXROb3JtYWxpemVDYWNoZSA9IHJlc2V0Tm9ybWFsaXplQ2FjaGU7CiAgICBleHBvcnRzMi5ub3JtYWxpemUgPSBub3JtYWxpemU7CiAgICBleHBvcnRzMi5ub0NhY2hlTm9ybWFsaXplID0gbm9DYWNoZU5vcm1hbGl6ZTsKICAgIGV4cG9ydHMyLmFzV2luZG93c1BhdGggPSBhc1dpbmRvd3NQYXRoOwogICAgZXhwb3J0czIuYXNQb3NpeFBhdGggPSBhc1Bvc2l4UGF0aDsKICAgIGV4cG9ydHMyLmdldFN5c3RlbVBhdGggPSBnZXRTeXN0ZW1QYXRoOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24oKTsKICAgIHZhciBJbnZhbGlkUGF0aEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgZXhjZXB0aW9uXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgyKSB7CiAgICAgICAgc3VwZXIoYFBhdGggJHtKU09OLnN0cmluZ2lmeShwYXRoMil9IGlzIGludmFsaWQuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5JbnZhbGlkUGF0aEV4Y2VwdGlvbiA9IEludmFsaWRQYXRoRXhjZXB0aW9uOwogICAgdmFyIFBhdGhNdXN0QmVBYnNvbHV0ZUV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgZXhjZXB0aW9uXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgyKSB7CiAgICAgICAgc3VwZXIoYFBhdGggJHtKU09OLnN0cmluZ2lmeShwYXRoMil9IG11c3QgYmUgYWJzb2x1dGUuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5QYXRoTXVzdEJlQWJzb2x1dGVFeGNlcHRpb24gPSBQYXRoTXVzdEJlQWJzb2x1dGVFeGNlcHRpb247CiAgICB2YXIgUGF0aENhbm5vdEJlRnJhZ21lbnRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGV4Y2VwdGlvbl8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihwYXRoMikgewogICAgICAgIHN1cGVyKGBQYXRoICR7SlNPTi5zdHJpbmdpZnkocGF0aDIpfSBjYW5ub3QgYmUgbWFkZSBhIGZyYWdtZW50LmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuUGF0aENhbm5vdEJlRnJhZ21lbnRFeGNlcHRpb24gPSBQYXRoQ2Fubm90QmVGcmFnbWVudEV4Y2VwdGlvbjsKICAgIGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXAgPSAiLyI7CiAgICBleHBvcnRzMi5Ob3JtYWxpemVkUm9vdCA9IGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXA7CiAgICBmdW5jdGlvbiBzcGxpdChwYXRoMikgewogICAgICBjb25zdCBmcmFnbWVudHMgPSBwYXRoMi5zcGxpdChleHBvcnRzMi5Ob3JtYWxpemVkU2VwKS5tYXAoKHgpID0+IGZyYWdtZW50KHgpKTsKICAgICAgaWYgKGZyYWdtZW50c1tmcmFnbWVudHMubGVuZ3RoIC0gMV0ubGVuZ3RoID09PSAwKSB7CiAgICAgICAgZnJhZ21lbnRzLnBvcCgpOwogICAgICB9CiAgICAgIHJldHVybiBmcmFnbWVudHM7CiAgICB9CiAgICBmdW5jdGlvbiBleHRuYW1lKHBhdGgyKSB7CiAgICAgIGNvbnN0IGJhc2UgPSBiYXNlbmFtZShwYXRoMik7CiAgICAgIGNvbnN0IGkgPSBiYXNlLmxhc3RJbmRleE9mKCIuIik7CiAgICAgIGlmIChpIDwgMSkgewogICAgICAgIHJldHVybiAiIjsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gYmFzZS5zbGljZShpKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gYmFzZW5hbWUocGF0aDIpIHsKICAgICAgY29uc3QgaSA9IHBhdGgyLmxhc3RJbmRleE9mKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApOwogICAgICBpZiAoaSA9PSAtMSkgewogICAgICAgIHJldHVybiBmcmFnbWVudChwYXRoMik7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuIGZyYWdtZW50KHBhdGgyLnNsaWNlKHBhdGgyLmxhc3RJbmRleE9mKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApICsgMSkpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBkaXJuYW1lKHBhdGgyKSB7CiAgICAgIGNvbnN0IGluZGV4ID0gcGF0aDIubGFzdEluZGV4T2YoZXhwb3J0czIuTm9ybWFsaXplZFNlcCk7CiAgICAgIGlmIChpbmRleCA9PT0gLTEpIHsKICAgICAgICByZXR1cm4gIiI7CiAgICAgIH0KICAgICAgY29uc3QgZW5kSW5kZXggPSBpbmRleCA9PT0gMCA/IDEgOiBpbmRleDsKICAgICAgcmV0dXJuIG5vcm1hbGl6ZShwYXRoMi5zbGljZSgwLCBlbmRJbmRleCkpOwogICAgfQogICAgZnVuY3Rpb24gam9pbjIocDEsIC4uLm90aGVycykgewogICAgICBpZiAob3RoZXJzLmxlbmd0aCA+IDApIHsKICAgICAgICByZXR1cm4gbm9ybWFsaXplKChwMSA/IHAxICsgZXhwb3J0czIuTm9ybWFsaXplZFNlcCA6ICIiKSArIG90aGVycy5qb2luKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApKTsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gcDE7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGlzQWJzb2x1dGUocCkgewogICAgICByZXR1cm4gcC5zdGFydHNXaXRoKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApOwogICAgfQogICAgZnVuY3Rpb24gcmVsYXRpdmUoZnJvbSwgdG8pIHsKICAgICAgaWYgKCFpc0Fic29sdXRlKGZyb20pKSB7CiAgICAgICAgdGhyb3cgbmV3IFBhdGhNdXN0QmVBYnNvbHV0ZUV4Y2VwdGlvbihmcm9tKTsKICAgICAgfQogICAgICBpZiAoIWlzQWJzb2x1dGUodG8pKSB7CiAgICAgICAgdGhyb3cgbmV3IFBhdGhNdXN0QmVBYnNvbHV0ZUV4Y2VwdGlvbih0byk7CiAgICAgIH0KICAgICAgbGV0IHA7CiAgICAgIGlmIChmcm9tID09IHRvKSB7CiAgICAgICAgcCA9ICIiOwogICAgICB9IGVsc2UgewogICAgICAgIGNvbnN0IHNwbGl0RnJvbSA9IHNwbGl0KGZyb20pOwogICAgICAgIGNvbnN0IHNwbGl0VG8gPSBzcGxpdCh0byk7CiAgICAgICAgd2hpbGUgKHNwbGl0RnJvbS5sZW5ndGggPiAwICYmIHNwbGl0VG8ubGVuZ3RoID4gMCAmJiBzcGxpdEZyb21bMF0gPT0gc3BsaXRUb1swXSkgewogICAgICAgICAgc3BsaXRGcm9tLnNoaWZ0KCk7CiAgICAgICAgICBzcGxpdFRvLnNoaWZ0KCk7CiAgICAgICAgfQogICAgICAgIGlmIChzcGxpdEZyb20ubGVuZ3RoID09IDApIHsKICAgICAgICAgIHAgPSBzcGxpdFRvLmpvaW4oZXhwb3J0czIuTm9ybWFsaXplZFNlcCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHAgPSBzcGxpdEZyb20ubWFwKCgpID0+ICIuLiIpLmNvbmNhdChzcGxpdFRvKS5qb2luKGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXApOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gbm9ybWFsaXplKHApOwogICAgfQogICAgZnVuY3Rpb24gcmVzb2x2ZShwMSwgcDIpIHsKICAgICAgaWYgKGlzQWJzb2x1dGUocDIpKSB7CiAgICAgICAgcmV0dXJuIHAyOwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiBqb2luMihwMSwgcDIpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBmcmFnbWVudChwYXRoMikgewogICAgICBpZiAocGF0aDIuaW5kZXhPZihleHBvcnRzMi5Ob3JtYWxpemVkU2VwKSAhPSAtMSkgewogICAgICAgIHRocm93IG5ldyBQYXRoQ2Fubm90QmVGcmFnbWVudEV4Y2VwdGlvbihwYXRoMik7CiAgICAgIH0KICAgICAgcmV0dXJuIHBhdGgyOwogICAgfQogICAgdmFyIG5vcm1hbGl6ZWRDYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICBmdW5jdGlvbiByZXNldE5vcm1hbGl6ZUNhY2hlKCkgewogICAgICBub3JtYWxpemVkQ2FjaGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgfQogICAgZnVuY3Rpb24gbm9ybWFsaXplKHBhdGgyKSB7CiAgICAgIGxldCBtYXliZVBhdGggPSBub3JtYWxpemVkQ2FjaGUuZ2V0KHBhdGgyKTsKICAgICAgaWYgKCFtYXliZVBhdGgpIHsKICAgICAgICBtYXliZVBhdGggPSBub0NhY2hlTm9ybWFsaXplKHBhdGgyKTsKICAgICAgICBub3JtYWxpemVkQ2FjaGUuc2V0KHBhdGgyLCBtYXliZVBhdGgpOwogICAgICB9CiAgICAgIHJldHVybiBtYXliZVBhdGg7CiAgICB9CiAgICBmdW5jdGlvbiBub0NhY2hlTm9ybWFsaXplKHBhdGgyKSB7CiAgICAgIGlmIChwYXRoMiA9PSAiIiB8fCBwYXRoMiA9PSAiLiIpIHsKICAgICAgICByZXR1cm4gIiI7CiAgICAgIH0gZWxzZSBpZiAocGF0aDIgPT0gZXhwb3J0czIuTm9ybWFsaXplZFJvb3QpIHsKICAgICAgICByZXR1cm4gZXhwb3J0czIuTm9ybWFsaXplZFJvb3Q7CiAgICAgIH0KICAgICAgY29uc3Qgb3JpZ2luYWwgPSBwYXRoMjsKICAgICAgaWYgKHBhdGgyLm1hdGNoKC9eW0EtWl06Wy9cXF0vaSkpIHsKICAgICAgICBwYXRoMiA9ICJcXCIgKyBwYXRoMlswXS50b1VwcGVyQ2FzZSgpICsgIlxcIiArIHBhdGgyLnNsaWNlKDMpOwogICAgICB9CiAgICAgIGNvbnN0IHAgPSBwYXRoMi5zcGxpdCgvWy9cXF0vZyk7CiAgICAgIGxldCByZWxhdGl2ZTIgPSBmYWxzZTsKICAgICAgbGV0IGkgPSAxOwogICAgICBpZiAocFswXSAhPSAiIikgewogICAgICAgIHAudW5zaGlmdCgiLiIpOwogICAgICAgIHJlbGF0aXZlMiA9IHRydWU7CiAgICAgIH0KICAgICAgd2hpbGUgKGkgPCBwLmxlbmd0aCkgewogICAgICAgIGlmIChwW2ldID09ICIuIikgewogICAgICAgICAgcC5zcGxpY2UoaSwgMSk7CiAgICAgICAgfSBlbHNlIGlmIChwW2ldID09ICIuLiIpIHsKICAgICAgICAgIGlmIChpIDwgMiAmJiAhcmVsYXRpdmUyKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkUGF0aEV4Y2VwdGlvbihvcmlnaW5hbCk7CiAgICAgICAgICB9IGVsc2UgaWYgKGkgPj0gMiAmJiBwW2kgLSAxXSAhPSAiLi4iKSB7CiAgICAgICAgICAgIHAuc3BsaWNlKGkgLSAxLCAyKTsKICAgICAgICAgICAgaS0tOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaSsrOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSBpZiAocFtpXSA9PSAiIikgewogICAgICAgICAgcC5zcGxpY2UoaSwgMSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGkrKzsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKHAubGVuZ3RoID09IDEpIHsKICAgICAgICByZXR1cm4gcFswXSA9PSAiIiA/IGV4cG9ydHMyLk5vcm1hbGl6ZWRTZXAgOiAiIjsKICAgICAgfSBlbHNlIHsKICAgICAgICBpZiAocFswXSA9PSAiLiIpIHsKICAgICAgICAgIHAuc2hpZnQoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHAuam9pbihleHBvcnRzMi5Ob3JtYWxpemVkU2VwKTsKICAgICAgfQogICAgfQogICAgdmFyIHBhdGggPSAoc3RyaW5nczMsIC4uLnZhbHVlcykgPT4gewogICAgICByZXR1cm4gbm9ybWFsaXplKFN0cmluZy5yYXcoc3RyaW5nczMsIC4uLnZhbHVlcykpOwogICAgfTsKICAgIGV4cG9ydHMyLnBhdGggPSBwYXRoOwogICAgZnVuY3Rpb24gYXNXaW5kb3dzUGF0aChwYXRoMikgewogICAgICBjb25zdCBkcml2ZSA9IHBhdGgyLm1hdGNoKC9eXC8oXHcpKD86XC8oLiopKT8kLyk7CiAgICAgIGlmIChkcml2ZSkgewogICAgICAgIGNvbnN0IHN1YlBhdGggPSBkcml2ZVsyXSA/IGRyaXZlWzJdLnJlcGxhY2UoL1wvL2csICJcXCIpIDogIiI7CiAgICAgICAgcmV0dXJuIGAke2RyaXZlWzFdfTpcXCR7c3ViUGF0aH1gOwogICAgICB9CiAgICAgIHJldHVybiBwYXRoMi5yZXBsYWNlKC9cLy9nLCAiXFwiKTsKICAgIH0KICAgIGZ1bmN0aW9uIGFzUG9zaXhQYXRoKHBhdGgyKSB7CiAgICAgIHJldHVybiBwYXRoMjsKICAgIH0KICAgIGZ1bmN0aW9uIGdldFN5c3RlbVBhdGgocGF0aDIpIHsKICAgICAgaWYgKHByb2Nlc3MucGxhdGZvcm0uc3RhcnRzV2l0aCgid2luMzIiKSkgewogICAgICAgIHJldHVybiBhc1dpbmRvd3NQYXRoKHBhdGgyKTsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gYXNQb3NpeFBhdGgocGF0aDIpOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvYnVmZmVyLmpzCnZhciByZXF1aXJlX2J1ZmZlcjIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9idWZmZXIuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN0cmluZ1RvRmlsZUJ1ZmZlciA9IHN0cmluZ1RvRmlsZUJ1ZmZlcjsKICAgIGV4cG9ydHMyLmZpbGVCdWZmZXJUb1N0cmluZyA9IGZpbGVCdWZmZXJUb1N0cmluZzsKICAgIHZhciBub2RlX3V0aWxfMSA9IHJlcXVpcmUoIm5vZGU6dXRpbCIpOwogICAgZnVuY3Rpb24gc3RyaW5nVG9GaWxlQnVmZmVyKHN0cikgewogICAgICByZXR1cm4gbmV3IG5vZGVfdXRpbF8xLlRleHRFbmNvZGVyKCkuZW5jb2RlKHN0cikuYnVmZmVyOwogICAgfQogICAgZnVuY3Rpb24gZmlsZUJ1ZmZlclRvU3RyaW5nKGZpbGVCdWZmZXIpIHsKICAgICAgaWYgKGZpbGVCdWZmZXIudG9TdHJpbmcubGVuZ3RoID09PSAxKSB7CiAgICAgICAgcmV0dXJuIGZpbGVCdWZmZXIudG9TdHJpbmcoInV0Zi04Iik7CiAgICAgIH0KICAgICAgcmV0dXJuIG5ldyBub2RlX3V0aWxfMS5UZXh0RGVjb2RlcigidXRmLTgiKS5kZWNvZGUobmV3IFVpbnQ4QXJyYXkoZmlsZUJ1ZmZlcikpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2ludGVyZmFjZS5qcwp2YXIgcmVxdWlyZV9pbnRlcmZhY2UyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvaW50ZXJmYWNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Ib3N0V2F0Y2hFdmVudFR5cGUgPSB2b2lkIDA7CiAgICB2YXIgSG9zdFdhdGNoRXZlbnRUeXBlOwogICAgKGZ1bmN0aW9uKEhvc3RXYXRjaEV2ZW50VHlwZTIpIHsKICAgICAgSG9zdFdhdGNoRXZlbnRUeXBlMltIb3N0V2F0Y2hFdmVudFR5cGUyWyJDaGFuZ2VkIl0gPSAwXSA9ICJDaGFuZ2VkIjsKICAgICAgSG9zdFdhdGNoRXZlbnRUeXBlMltIb3N0V2F0Y2hFdmVudFR5cGUyWyJDcmVhdGVkIl0gPSAxXSA9ICJDcmVhdGVkIjsKICAgICAgSG9zdFdhdGNoRXZlbnRUeXBlMltIb3N0V2F0Y2hFdmVudFR5cGUyWyJEZWxldGVkIl0gPSAyXSA9ICJEZWxldGVkIjsKICAgICAgSG9zdFdhdGNoRXZlbnRUeXBlMltIb3N0V2F0Y2hFdmVudFR5cGUyWyJSZW5hbWVkIl0gPSAzXSA9ICJSZW5hbWVkIjsKICAgIH0pKEhvc3RXYXRjaEV2ZW50VHlwZSB8fCAoZXhwb3J0czIuSG9zdFdhdGNoRXZlbnRUeXBlID0gSG9zdFdhdGNoRXZlbnRUeXBlID0ge30pKTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9tZW1vcnkuanMKdmFyIHJlcXVpcmVfbWVtb3J5ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvbWVtb3J5LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TaW1wbGVNZW1vcnlIb3N0ID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbigpOwogICAgdmFyIHBhdGhfMSA9IHJlcXVpcmVfcGF0aCgpOwogICAgdmFyIGludGVyZmFjZV8xID0gcmVxdWlyZV9pbnRlcmZhY2UyKCk7CiAgICB2YXIgU2ltcGxlTWVtb3J5SG9zdCA9IGNsYXNzIHsKICAgICAgX2NhY2hlID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgX3dhdGNoZXJzID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgX25ld0RpclN0YXRzKCkgewogICAgICAgIHJldHVybiB7CiAgICAgICAgICBpbnNwZWN0KCkgewogICAgICAgICAgICByZXR1cm4gIjxEaXJlY3Rvcnk+IjsKICAgICAgICAgIH0sCiAgICAgICAgICBpc0ZpbGUoKSB7CiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgIH0sCiAgICAgICAgICBpc0RpcmVjdG9yeSgpIHsKICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICB9LAogICAgICAgICAgc2l6ZTogMCwKICAgICAgICAgIGF0aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIGN0aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIG10aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgIGJpcnRodGltZTogLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCksCiAgICAgICAgICBjb250ZW50OiBudWxsCiAgICAgICAgfTsKICAgICAgfQogICAgICBfbmV3RmlsZVN0YXRzKGNvbnRlbnQsIG9sZFN0YXRzKSB7CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGluc3BlY3QoKSB7CiAgICAgICAgICAgIHJldHVybiBgPEZpbGUgc2l6ZSgke2NvbnRlbnQuYnl0ZUxlbmd0aH0pPmA7CiAgICAgICAgICB9LAogICAgICAgICAgaXNGaWxlKCkgewogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgIH0sCiAgICAgICAgICBpc0RpcmVjdG9yeSgpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfSwKICAgICAgICAgIHNpemU6IGNvbnRlbnQuYnl0ZUxlbmd0aCwKICAgICAgICAgIGF0aW1lOiBvbGRTdGF0cyA/IG9sZFN0YXRzLmF0aW1lIDogLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCksCiAgICAgICAgICBjdGltZTogLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCksCiAgICAgICAgICBtdGltZTogLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCksCiAgICAgICAgICBiaXJ0aHRpbWU6IG9sZFN0YXRzID8gb2xkU3RhdHMuYmlydGh0aW1lIDogLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCksCiAgICAgICAgICBjb250ZW50CiAgICAgICAgfTsKICAgICAgfQogICAgICBjb25zdHJ1Y3RvcigpIHsKICAgICAgICB0aGlzLl9jYWNoZS5zZXQoKDAsIHBhdGhfMS5ub3JtYWxpemUpKCIvIiksIHRoaXMuX25ld0RpclN0YXRzKCkpOwogICAgICB9CiAgICAgIF90b0Fic29sdXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHBhdGhfMS5pc0Fic29sdXRlKShwYXRoKSA/IHBhdGggOiAoMCwgcGF0aF8xLm5vcm1hbGl6ZSkoIi8iICsgcGF0aCk7CiAgICAgIH0KICAgICAgX3VwZGF0ZVdhdGNoZXJzKHBhdGgsIHR5cGUpIHsKICAgICAgICBjb25zdCB0aW1lID0gLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCk7CiAgICAgICAgbGV0IGN1cnJlbnRQYXRoID0gcGF0aDsKICAgICAgICBsZXQgcGFyZW50ID0gbnVsbDsKICAgICAgICBpZiAodGhpcy5fd2F0Y2hlcnMuc2l6ZSA9PSAwKSB7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGNvbnN0IG1heWJlV2F0Y2hlciA9IHRoaXMuX3dhdGNoZXJzLmdldChjdXJyZW50UGF0aCk7CiAgICAgICAgaWYgKG1heWJlV2F0Y2hlcikgewogICAgICAgICAgbWF5YmVXYXRjaGVyLmZvckVhY2goKHdhdGNoZXIpID0+IHsKICAgICAgICAgICAgY29uc3QgW29wdGlvbnMsIHN1YmplY3RdID0gd2F0Y2hlcjsKICAgICAgICAgICAgc3ViamVjdC5uZXh0KHsgcGF0aCwgdGltZSwgdHlwZSB9KTsKICAgICAgICAgICAgaWYgKCFvcHRpb25zLnBlcnNpc3RlbnQgJiYgdHlwZSA9PSBpbnRlcmZhY2VfMS5Ib3N0V2F0Y2hFdmVudFR5cGUuRGVsZXRlZCkgewogICAgICAgICAgICAgIHN1YmplY3QuY29tcGxldGUoKTsKICAgICAgICAgICAgICB0aGlzLl93YXRjaGVycy5kZWxldGUoY3VycmVudFBhdGgpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgZG8gewogICAgICAgICAgY3VycmVudFBhdGggPSBwYXJlbnQgIT09IG51bGwgPyBwYXJlbnQgOiBjdXJyZW50UGF0aDsKICAgICAgICAgIHBhcmVudCA9ICgwLCBwYXRoXzEuZGlybmFtZSkoY3VycmVudFBhdGgpOwogICAgICAgICAgY29uc3QgbWF5YmVXYXRjaGVyMiA9IHRoaXMuX3dhdGNoZXJzLmdldChjdXJyZW50UGF0aCk7CiAgICAgICAgICBpZiAobWF5YmVXYXRjaGVyMikgewogICAgICAgICAgICBtYXliZVdhdGNoZXIyLmZvckVhY2goKHdhdGNoZXIpID0+IHsKICAgICAgICAgICAgICBjb25zdCBbb3B0aW9ucywgc3ViamVjdF0gPSB3YXRjaGVyOwogICAgICAgICAgICAgIGlmICghb3B0aW9ucy5yZWN1cnNpdmUpIHsKICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgc3ViamVjdC5uZXh0KHsgcGF0aCwgdGltZSwgdHlwZSB9KTsKICAgICAgICAgICAgICBpZiAoIW9wdGlvbnMucGVyc2lzdGVudCAmJiB0eXBlID09IGludGVyZmFjZV8xLkhvc3RXYXRjaEV2ZW50VHlwZS5EZWxldGVkKSB7CiAgICAgICAgICAgICAgICBzdWJqZWN0LmNvbXBsZXRlKCk7CiAgICAgICAgICAgICAgICB0aGlzLl93YXRjaGVycy5kZWxldGUoY3VycmVudFBhdGgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgfSB3aGlsZSAocGFyZW50ICE9IGN1cnJlbnRQYXRoKTsKICAgICAgfQogICAgICBnZXQgY2FwYWJpbGl0aWVzKCkgewogICAgICAgIHJldHVybiB7IHN5bmNocm9ub3VzOiB0cnVlIH07CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIExpc3Qgb2YgcHJvdGVjdGVkIG1ldGhvZHMgdGhhdCBnaXZlIGRpcmVjdCBhY2Nlc3Mgb3V0c2lkZSB0aGUgb2JzZXJ2YWJsZXMgdG8gdGhlIGNhY2hlCiAgICAgICAqIGFuZCBpbnRlcm5hbCBzdGF0ZXMuCiAgICAgICAqLwogICAgICBfd3JpdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHBhdGggPSB0aGlzLl90b0Fic29sdXRlKHBhdGgpOwogICAgICAgIGNvbnN0IG9sZCA9IHRoaXMuX2NhY2hlLmdldChwYXRoKTsKICAgICAgICBpZiAob2xkICYmIG9sZC5pc0RpcmVjdG9yeSgpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uKHBhdGgpOwogICAgICAgIH0KICAgICAgICBjb25zdCBmcmFnbWVudHMgPSAoMCwgcGF0aF8xLnNwbGl0KShwYXRoKTsKICAgICAgICBsZXQgY3VyciA9ICgwLCBwYXRoXzEubm9ybWFsaXplKSgiLyIpOwogICAgICAgIGZvciAoY29uc3QgZnIgb2YgZnJhZ21lbnRzKSB7CiAgICAgICAgICBjdXJyID0gKDAsIHBhdGhfMS5qb2luKShjdXJyLCBmcik7CiAgICAgICAgICBjb25zdCBtYXliZVN0YXRzID0gdGhpcy5fY2FjaGUuZ2V0KGZyKTsKICAgICAgICAgIGlmIChtYXliZVN0YXRzKSB7CiAgICAgICAgICAgIGlmIChtYXliZVN0YXRzLmlzRmlsZSgpKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlBhdGhJc0ZpbGVFeGNlcHRpb24oY3Vycik7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHRoaXMuX2NhY2hlLnNldChjdXJyLCB0aGlzLl9uZXdEaXJTdGF0cygpKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY29uc3Qgc3RhdHMgPSB0aGlzLl9uZXdGaWxlU3RhdHMoY29udGVudCwgb2xkKTsKICAgICAgICB0aGlzLl9jYWNoZS5zZXQocGF0aCwgc3RhdHMpOwogICAgICAgIHRoaXMuX3VwZGF0ZVdhdGNoZXJzKHBhdGgsIG9sZCA/IGludGVyZmFjZV8xLkhvc3RXYXRjaEV2ZW50VHlwZS5DaGFuZ2VkIDogaW50ZXJmYWNlXzEuSG9zdFdhdGNoRXZlbnRUeXBlLkNyZWF0ZWQpOwogICAgICB9CiAgICAgIF9yZWFkKHBhdGgpIHsKICAgICAgICBwYXRoID0gdGhpcy5fdG9BYnNvbHV0ZShwYXRoKTsKICAgICAgICBjb25zdCBtYXliZVN0YXRzID0gdGhpcy5fY2FjaGUuZ2V0KHBhdGgpOwogICAgICAgIGlmICghbWF5YmVTdGF0cykgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgfSBlbHNlIGlmIChtYXliZVN0YXRzLmlzRGlyZWN0b3J5KCkpIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5QYXRoSXNEaXJlY3RvcnlFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgfSBlbHNlIGlmICghbWF5YmVTdGF0cy5jb250ZW50KSB7CiAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uKHBhdGgpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gbWF5YmVTdGF0cy5jb250ZW50OwogICAgICAgIH0KICAgICAgfQogICAgICBfZGVsZXRlKHBhdGgpIHsKICAgICAgICBwYXRoID0gdGhpcy5fdG9BYnNvbHV0ZShwYXRoKTsKICAgICAgICBpZiAodGhpcy5faXNEaXJlY3RvcnkocGF0aCkpIHsKICAgICAgICAgIGZvciAoY29uc3QgW2NhY2hlUGF0aF0gb2YgdGhpcy5fY2FjaGUuZW50cmllcygpKSB7CiAgICAgICAgICAgIGlmIChjYWNoZVBhdGguc3RhcnRzV2l0aChwYXRoICsgcGF0aF8xLk5vcm1hbGl6ZWRTZXApIHx8IGNhY2hlUGF0aCA9PT0gcGF0aCkgewogICAgICAgICAgICAgIHRoaXMuX2NhY2hlLmRlbGV0ZShjYWNoZVBhdGgpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX2NhY2hlLmRlbGV0ZShwYXRoKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fdXBkYXRlV2F0Y2hlcnMocGF0aCwgaW50ZXJmYWNlXzEuSG9zdFdhdGNoRXZlbnRUeXBlLkRlbGV0ZWQpOwogICAgICB9CiAgICAgIF9yZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICBmcm9tID0gdGhpcy5fdG9BYnNvbHV0ZShmcm9tKTsKICAgICAgICB0byA9IHRoaXMuX3RvQWJzb2x1dGUodG8pOwogICAgICAgIGlmICghdGhpcy5fY2FjaGUuaGFzKGZyb20pKSB7CiAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihmcm9tKTsKICAgICAgICB9IGVsc2UgaWYgKHRoaXMuX2NhY2hlLmhhcyh0bykpIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHRvKTsKICAgICAgICB9CiAgICAgICAgaWYgKHRoaXMuX2lzRGlyZWN0b3J5KGZyb20pKSB7CiAgICAgICAgICBmb3IgKGNvbnN0IHBhdGggb2YgdGhpcy5fY2FjaGUua2V5cygpKSB7CiAgICAgICAgICAgIGlmIChwYXRoLnN0YXJ0c1dpdGgoZnJvbSArIHBhdGhfMS5Ob3JtYWxpemVkU2VwKSkgewogICAgICAgICAgICAgIGNvbnN0IGNvbnRlbnQgPSB0aGlzLl9jYWNoZS5nZXQocGF0aCk7CiAgICAgICAgICAgICAgaWYgKGNvbnRlbnQpIHsKICAgICAgICAgICAgICAgIHRoaXMuX2NhY2hlLnNldCgoMCwgcGF0aF8xLmpvaW4pKHRvLCBwYXRoXzEuTm9ybWFsaXplZFNlcCwgcGF0aC5zbGljZShmcm9tLmxlbmd0aCkpLCBjb250ZW50KTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgewogICAgICAgICAgY29uc3QgY29udGVudCA9IHRoaXMuX2NhY2hlLmdldChmcm9tKTsKICAgICAgICAgIGlmIChjb250ZW50KSB7CiAgICAgICAgICAgIGNvbnN0IGZyYWdtZW50cyA9ICgwLCBwYXRoXzEuc3BsaXQpKHRvKTsKICAgICAgICAgICAgY29uc3QgbmV3RGlyZWN0b3JpZXMgPSBbXTsKICAgICAgICAgICAgbGV0IGN1cnIgPSAoMCwgcGF0aF8xLm5vcm1hbGl6ZSkoIi8iKTsKICAgICAgICAgICAgZm9yIChjb25zdCBmciBvZiBmcmFnbWVudHMpIHsKICAgICAgICAgICAgICBjdXJyID0gKDAsIHBhdGhfMS5qb2luKShjdXJyLCBmcik7CiAgICAgICAgICAgICAgY29uc3QgbWF5YmVTdGF0cyA9IHRoaXMuX2NhY2hlLmdldChmcik7CiAgICAgICAgICAgICAgaWYgKG1heWJlU3RhdHMpIHsKICAgICAgICAgICAgICAgIGlmIChtYXliZVN0YXRzLmlzRmlsZSgpKSB7CiAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5QYXRoSXNGaWxlRXhjZXB0aW9uKGN1cnIpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBuZXdEaXJlY3Rvcmllcy5wdXNoKGN1cnIpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBmb3IgKGNvbnN0IG5ld0RpcmVjdG9yeSBvZiBuZXdEaXJlY3RvcmllcykgewogICAgICAgICAgICAgIHRoaXMuX2NhY2hlLnNldChuZXdEaXJlY3RvcnksIHRoaXMuX25ld0RpclN0YXRzKCkpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHRoaXMuX2NhY2hlLmRlbGV0ZShmcm9tKTsKICAgICAgICAgICAgdGhpcy5fY2FjaGUuc2V0KHRvLCBjb250ZW50KTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgdGhpcy5fdXBkYXRlV2F0Y2hlcnMoZnJvbSwgaW50ZXJmYWNlXzEuSG9zdFdhdGNoRXZlbnRUeXBlLlJlbmFtZWQpOwogICAgICB9CiAgICAgIF9saXN0KHBhdGgpIHsKICAgICAgICBwYXRoID0gdGhpcy5fdG9BYnNvbHV0ZShwYXRoKTsKICAgICAgICBpZiAodGhpcy5faXNGaWxlKHBhdGgpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuUGF0aElzRmlsZUV4Y2VwdGlvbihwYXRoKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgZnJhZ21lbnRzID0gKDAsIHBhdGhfMS5zcGxpdCkocGF0aCk7CiAgICAgICAgY29uc3QgcmVzdWx0ID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgICBpZiAocGF0aCAhPT0gcGF0aF8xLk5vcm1hbGl6ZWRSb290KSB7CiAgICAgICAgICBmb3IgKGNvbnN0IHAgb2YgdGhpcy5fY2FjaGUua2V5cygpKSB7CiAgICAgICAgICAgIGlmIChwLnN0YXJ0c1dpdGgocGF0aCArIHBhdGhfMS5Ob3JtYWxpemVkU2VwKSkgewogICAgICAgICAgICAgIHJlc3VsdC5hZGQoKDAsIHBhdGhfMS5zcGxpdCkocClbZnJhZ21lbnRzLmxlbmd0aF0pOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGZvciAoY29uc3QgcCBvZiB0aGlzLl9jYWNoZS5rZXlzKCkpIHsKICAgICAgICAgICAgaWYgKHAuc3RhcnRzV2l0aChwYXRoXzEuTm9ybWFsaXplZFNlcCkgJiYgcCAhPT0gcGF0aF8xLk5vcm1hbGl6ZWRSb290KSB7CiAgICAgICAgICAgICAgcmVzdWx0LmFkZCgoMCwgcGF0aF8xLnNwbGl0KShwKVsxXSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIFsuLi5yZXN1bHRdOwogICAgICB9CiAgICAgIF9leGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiAhIXRoaXMuX2NhY2hlLmdldCh0aGlzLl90b0Fic29sdXRlKHBhdGgpKTsKICAgICAgfQogICAgICBfaXNEaXJlY3RvcnkocGF0aCkgewogICAgICAgIGNvbnN0IG1heWJlU3RhdHMgPSB0aGlzLl9jYWNoZS5nZXQodGhpcy5fdG9BYnNvbHV0ZShwYXRoKSk7CiAgICAgICAgcmV0dXJuIG1heWJlU3RhdHMgPyBtYXliZVN0YXRzLmlzRGlyZWN0b3J5KCkgOiBmYWxzZTsKICAgICAgfQogICAgICBfaXNGaWxlKHBhdGgpIHsKICAgICAgICBjb25zdCBtYXliZVN0YXRzID0gdGhpcy5fY2FjaGUuZ2V0KHRoaXMuX3RvQWJzb2x1dGUocGF0aCkpOwogICAgICAgIHJldHVybiBtYXliZVN0YXRzID8gbWF5YmVTdGF0cy5pc0ZpbGUoKSA6IGZhbHNlOwogICAgICB9CiAgICAgIF9zdGF0KHBhdGgpIHsKICAgICAgICBjb25zdCBtYXliZVN0YXRzID0gdGhpcy5fY2FjaGUuZ2V0KHRoaXMuX3RvQWJzb2x1dGUocGF0aCkpOwogICAgICAgIGlmICghbWF5YmVTdGF0cykgewogICAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJldHVybiBtYXliZVN0YXRzOwogICAgICAgIH0KICAgICAgfQogICAgICBfd2F0Y2gocGF0aCwgb3B0aW9ucykgewogICAgICAgIHBhdGggPSB0aGlzLl90b0Fic29sdXRlKHBhdGgpOwogICAgICAgIGNvbnN0IHN1YmplY3QgPSBuZXcgcnhqc18xLlN1YmplY3QoKTsKICAgICAgICBsZXQgbWF5YmVXYXRjaGVyQXJyYXkgPSB0aGlzLl93YXRjaGVycy5nZXQocGF0aCk7CiAgICAgICAgaWYgKCFtYXliZVdhdGNoZXJBcnJheSkgewogICAgICAgICAgbWF5YmVXYXRjaGVyQXJyYXkgPSBbXTsKICAgICAgICAgIHRoaXMuX3dhdGNoZXJzLnNldChwYXRoLCBtYXliZVdhdGNoZXJBcnJheSk7CiAgICAgICAgfQogICAgICAgIG1heWJlV2F0Y2hlckFycmF5LnB1c2goW29wdGlvbnMgfHwge30sIHN1YmplY3RdKTsKICAgICAgICByZXR1cm4gc3ViamVjdC5hc09ic2VydmFibGUoKTsKICAgICAgfQogICAgICB3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICB0aGlzLl93cml0ZShwYXRoLCBjb250ZW50KTsKICAgICAgICAgIG9icy5uZXh0KCk7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICByZWFkKHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIGNvbnN0IGNvbnRlbnQgPSB0aGlzLl9yZWFkKHBhdGgpOwogICAgICAgICAgb2JzLm5leHQoY29udGVudCk7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICBkZWxldGUocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgdGhpcy5fZGVsZXRlKHBhdGgpOwogICAgICAgICAgb2JzLm5leHQoKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgdGhpcy5fcmVuYW1lKGZyb20sIHRvKTsKICAgICAgICAgIG9icy5uZXh0KCk7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICBsaXN0KHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIG9icy5uZXh0KHRoaXMuX2xpc3QocGF0aCkpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIG9icy5uZXh0KHRoaXMuX2V4aXN0cyhwYXRoKSk7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICBpc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBvYnMubmV4dCh0aGlzLl9pc0RpcmVjdG9yeShwYXRoKSk7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgb2JzLm5leHQodGhpcy5faXNGaWxlKHBhdGgpKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIC8vIFNvbWUgaG9zdHMgbWF5IG5vdCBzdXBwb3J0IHN0YXQuCiAgICAgIHN0YXQocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgb2JzLm5leHQodGhpcy5fc3RhdChwYXRoKSk7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICB3YXRjaChwYXRoLCBvcHRpb25zKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3dhdGNoKHBhdGgsIG9wdGlvbnMpOwogICAgICB9CiAgICAgIHJlc2V0KCkgewogICAgICAgIHRoaXMuX2NhY2hlLmNsZWFyKCk7CiAgICAgICAgdGhpcy5fd2F0Y2hlcnMuY2xlYXIoKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNpbXBsZU1lbW9yeUhvc3QgPSBTaW1wbGVNZW1vcnlIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3N5bmMuanMKdmFyIHJlcXVpcmVfc3luYyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3N5bmMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlN5bmNEZWxlZ2F0ZUhvc3QgPSBleHBvcnRzMi5TeW5jaHJvbm91c0RlbGVnYXRlRXhwZWN0ZWRFeGNlcHRpb24gPSB2b2lkIDA7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbigpOwogICAgdmFyIFN5bmNocm9ub3VzRGVsZWdhdGVFeHBlY3RlZEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgZXhjZXB0aW9uXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHN1cGVyKGBFeHBlY3RlZCBhIHN5bmNocm9ub3VzIGRlbGVnYXRlIGJ1dCBnb3QgYW4gYXN5bmNocm9ub3VzIG9uZS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlN5bmNocm9ub3VzRGVsZWdhdGVFeHBlY3RlZEV4Y2VwdGlvbiA9IFN5bmNocm9ub3VzRGVsZWdhdGVFeHBlY3RlZEV4Y2VwdGlvbjsKICAgIHZhciBTeW5jRGVsZWdhdGVIb3N0ID0gY2xhc3MgewogICAgICBfZGVsZWdhdGU7CiAgICAgIGNvbnN0cnVjdG9yKF9kZWxlZ2F0ZSkgewogICAgICAgIHRoaXMuX2RlbGVnYXRlID0gX2RlbGVnYXRlOwogICAgICAgIGlmICghX2RlbGVnYXRlLmNhcGFiaWxpdGllcy5zeW5jaHJvbm91cykgewogICAgICAgICAgdGhyb3cgbmV3IFN5bmNocm9ub3VzRGVsZWdhdGVFeHBlY3RlZEV4Y2VwdGlvbigpOwogICAgICAgIH0KICAgICAgfQogICAgICBfZG9TeW5jQ2FsbChvYnNlcnZhYmxlKSB7CiAgICAgICAgbGV0IGNvbXBsZXRlZCA9IGZhbHNlOwogICAgICAgIGxldCByZXN1bHQgPSB2b2lkIDA7CiAgICAgICAgbGV0IGVycm9yUmVzdWx0ID0gdm9pZCAwOwogICAgICAgIG9ic2VydmFibGUuc3Vic2NyaWJlKCh4KSA9PiByZXN1bHQgPSB4LCAoZXJyKSA9PiBlcnJvclJlc3VsdCA9IGVyciwgKCkgPT4gY29tcGxldGVkID0gdHJ1ZSk7CiAgICAgICAgaWYgKGVycm9yUmVzdWx0ICE9PSB2b2lkIDApIHsKICAgICAgICAgIHRocm93IGVycm9yUmVzdWx0OwogICAgICAgIH0KICAgICAgICBpZiAoIWNvbXBsZXRlZCkgewogICAgICAgICAgdGhyb3cgbmV3IFN5bmNocm9ub3VzRGVsZWdhdGVFeHBlY3RlZEV4Y2VwdGlvbigpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9CiAgICAgIGdldCBjYXBhYmlsaXRpZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLmNhcGFiaWxpdGllczsKICAgICAgfQogICAgICBnZXQgZGVsZWdhdGUoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlOwogICAgICB9CiAgICAgIHdyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZG9TeW5jQ2FsbCh0aGlzLl9kZWxlZ2F0ZS53cml0ZShwYXRoLCBjb250ZW50KSk7CiAgICAgIH0KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RvU3luY0NhbGwodGhpcy5fZGVsZWdhdGUucmVhZChwYXRoKSk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZG9TeW5jQ2FsbCh0aGlzLl9kZWxlZ2F0ZS5kZWxldGUocGF0aCkpOwogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHJldHVybiB0aGlzLl9kb1N5bmNDYWxsKHRoaXMuX2RlbGVnYXRlLnJlbmFtZShmcm9tLCB0bykpOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kb1N5bmNDYWxsKHRoaXMuX2RlbGVnYXRlLmxpc3QocGF0aCkpOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RvU3luY0NhbGwodGhpcy5fZGVsZWdhdGUuZXhpc3RzKHBhdGgpKTsKICAgICAgfQogICAgICBpc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RvU3luY0NhbGwodGhpcy5fZGVsZWdhdGUuaXNEaXJlY3RvcnkocGF0aCkpOwogICAgICB9CiAgICAgIGlzRmlsZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RvU3luY0NhbGwodGhpcy5fZGVsZWdhdGUuaXNGaWxlKHBhdGgpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICBjb25zdCByZXN1bHQgPSB0aGlzLl9kZWxlZ2F0ZS5zdGF0KHBhdGgpOwogICAgICAgIGlmIChyZXN1bHQpIHsKICAgICAgICAgIHJldHVybiB0aGlzLl9kb1N5bmNDYWxsKHJlc3VsdCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0KICAgICAgfQogICAgICB3YXRjaChwYXRoLCBvcHRpb25zKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLndhdGNoKHBhdGgsIG9wdGlvbnMpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuU3luY0RlbGVnYXRlSG9zdCA9IFN5bmNEZWxlZ2F0ZUhvc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvdGVzdC5qcwp2YXIgcmVxdWlyZV90ZXN0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvdGVzdC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVGVzdEhvc3QgPSB2b2lkIDA7CiAgICB2YXIgcGF0aF8xID0gcmVxdWlyZV9wYXRoKCk7CiAgICB2YXIgYnVmZmVyXzEgPSByZXF1aXJlX2J1ZmZlcjIoKTsKICAgIHZhciBtZW1vcnlfMSA9IHJlcXVpcmVfbWVtb3J5KCk7CiAgICB2YXIgc3luY18xID0gcmVxdWlyZV9zeW5jKCk7CiAgICB2YXIgVGVzdEhvc3QgPSBjbGFzcyBfVGVzdEhvc3QgZXh0ZW5kcyBtZW1vcnlfMS5TaW1wbGVNZW1vcnlIb3N0IHsKICAgICAgX3JlY29yZHMgPSBbXTsKICAgICAgX3N5bmMgPSBudWxsOwogICAgICBjb25zdHJ1Y3RvcihtYXAgPSB7fSkgewogICAgICAgIHN1cGVyKCk7CiAgICAgICAgZm9yIChjb25zdCBmaWxlUGF0aCBvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhtYXApKSB7CiAgICAgICAgICB0aGlzLl93cml0ZSgoMCwgcGF0aF8xLm5vcm1hbGl6ZSkoZmlsZVBhdGgpLCAoMCwgYnVmZmVyXzEuc3RyaW5nVG9GaWxlQnVmZmVyKShtYXBbZmlsZVBhdGhdKSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGdldCByZWNvcmRzKCkgewogICAgICAgIHJldHVybiBbLi4udGhpcy5fcmVjb3Jkc107CiAgICAgIH0KICAgICAgY2xlYXJSZWNvcmRzKCkgewogICAgICAgIHRoaXMuX3JlY29yZHMgPSBbXTsKICAgICAgfQogICAgICBnZXQgZmlsZXMoKSB7CiAgICAgICAgY29uc3Qgc3luYyA9IHRoaXMuc3luYzsKICAgICAgICBmdW5jdGlvbiBfdmlzaXQocCkgewogICAgICAgICAgcmV0dXJuIHN5bmMubGlzdChwKS5tYXAoKGZyYWdtZW50KSA9PiAoMCwgcGF0aF8xLmpvaW4pKHAsIGZyYWdtZW50KSkucmVkdWNlKChmaWxlcywgcGF0aCkgPT4gewogICAgICAgICAgICBpZiAoc3luYy5pc0RpcmVjdG9yeShwYXRoKSkgewogICAgICAgICAgICAgIHJldHVybiBmaWxlcy5jb25jYXQoX3Zpc2l0KHBhdGgpKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICByZXR1cm4gZmlsZXMuY29uY2F0KHBhdGgpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LCBbXSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBfdmlzaXQoKDAsIHBhdGhfMS5ub3JtYWxpemUpKCIvIikpOwogICAgICB9CiAgICAgIGdldCBzeW5jKCkgewogICAgICAgIGlmICghdGhpcy5fc3luYykgewogICAgICAgICAgdGhpcy5fc3luYyA9IG5ldyBzeW5jXzEuU3luY0RlbGVnYXRlSG9zdCh0aGlzKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuX3N5bmM7CiAgICAgIH0KICAgICAgY2xvbmUoKSB7CiAgICAgICAgY29uc3QgbmV3SG9zdCA9IG5ldyBfVGVzdEhvc3QoKTsKICAgICAgICBuZXdIb3N0Ll9jYWNoZSA9IG5ldyBNYXAodGhpcy5fY2FjaGUpOwogICAgICAgIHJldHVybiBuZXdIb3N0OwogICAgICB9CiAgICAgIC8vIE92ZXJyaWRlIHBhcmVudHMgZnVuY3Rpb25zIHRvIGtlZXAgYSByZWNvcmQgb2YgYWxsIG9wZXJhdG9ycyB0aGF0IHdlcmUgZG9uZS4KICAgICAgX3dyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICB0aGlzLl9yZWNvcmRzLnB1c2goeyBraW5kOiAid3JpdGUiLCBwYXRoIH0pOwogICAgICAgIHJldHVybiBzdXBlci5fd3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgIH0KICAgICAgX3JlYWQocGF0aCkgewogICAgICAgIHRoaXMuX3JlY29yZHMucHVzaCh7IGtpbmQ6ICJyZWFkIiwgcGF0aCB9KTsKICAgICAgICByZXR1cm4gc3VwZXIuX3JlYWQocGF0aCk7CiAgICAgIH0KICAgICAgX2RlbGV0ZShwYXRoKSB7CiAgICAgICAgdGhpcy5fcmVjb3Jkcy5wdXNoKHsga2luZDogImRlbGV0ZSIsIHBhdGggfSk7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9kZWxldGUocGF0aCk7CiAgICAgIH0KICAgICAgX3JlbmFtZShmcm9tLCB0bykgewogICAgICAgIHRoaXMuX3JlY29yZHMucHVzaCh7IGtpbmQ6ICJyZW5hbWUiLCBmcm9tLCB0byB9KTsKICAgICAgICByZXR1cm4gc3VwZXIuX3JlbmFtZShmcm9tLCB0byk7CiAgICAgIH0KICAgICAgX2xpc3QocGF0aCkgewogICAgICAgIHRoaXMuX3JlY29yZHMucHVzaCh7IGtpbmQ6ICJsaXN0IiwgcGF0aCB9KTsKICAgICAgICByZXR1cm4gc3VwZXIuX2xpc3QocGF0aCk7CiAgICAgIH0KICAgICAgX2V4aXN0cyhwYXRoKSB7CiAgICAgICAgdGhpcy5fcmVjb3Jkcy5wdXNoKHsga2luZDogImV4aXN0cyIsIHBhdGggfSk7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9leGlzdHMocGF0aCk7CiAgICAgIH0KICAgICAgX2lzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICB0aGlzLl9yZWNvcmRzLnB1c2goeyBraW5kOiAiaXNEaXJlY3RvcnkiLCBwYXRoIH0pOwogICAgICAgIHJldHVybiBzdXBlci5faXNEaXJlY3RvcnkocGF0aCk7CiAgICAgIH0KICAgICAgX2lzRmlsZShwYXRoKSB7CiAgICAgICAgdGhpcy5fcmVjb3Jkcy5wdXNoKHsga2luZDogImlzRmlsZSIsIHBhdGggfSk7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9pc0ZpbGUocGF0aCk7CiAgICAgIH0KICAgICAgX3N0YXQocGF0aCkgewogICAgICAgIHRoaXMuX3JlY29yZHMucHVzaCh7IGtpbmQ6ICJzdGF0IiwgcGF0aCB9KTsKICAgICAgICByZXR1cm4gc3VwZXIuX3N0YXQocGF0aCk7CiAgICAgIH0KICAgICAgX3dhdGNoKHBhdGgsIG9wdGlvbnMpIHsKICAgICAgICB0aGlzLl9yZWNvcmRzLnB1c2goeyBraW5kOiAid2F0Y2giLCBwYXRoIH0pOwogICAgICAgIHJldHVybiBzdXBlci5fd2F0Y2gocGF0aCwgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgJHdyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gc3VwZXIuX3dyaXRlKCgwLCBwYXRoXzEubm9ybWFsaXplKShwYXRoKSwgKDAsIGJ1ZmZlcl8xLnN0cmluZ1RvRmlsZUJ1ZmZlcikoY29udGVudCkpOwogICAgICB9CiAgICAgICRyZWFkKHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIGJ1ZmZlcl8xLmZpbGVCdWZmZXJUb1N0cmluZykoc3VwZXIuX3JlYWQoKDAsIHBhdGhfMS5ub3JtYWxpemUpKHBhdGgpKSk7CiAgICAgIH0KICAgICAgJGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiBzdXBlci5fbGlzdCgoMCwgcGF0aF8xLm5vcm1hbGl6ZSkocGF0aCkpOwogICAgICB9CiAgICAgICRleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiBzdXBlci5fZXhpc3RzKCgwLCBwYXRoXzEubm9ybWFsaXplKShwYXRoKSk7CiAgICAgIH0KICAgICAgJGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICByZXR1cm4gc3VwZXIuX2lzRGlyZWN0b3J5KCgwLCBwYXRoXzEubm9ybWFsaXplKShwYXRoKSk7CiAgICAgIH0KICAgICAgJGlzRmlsZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHN1cGVyLl9pc0ZpbGUoKDAsIHBhdGhfMS5ub3JtYWxpemUpKHBhdGgpKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlRlc3RIb3N0ID0gVGVzdEhvc3Q7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvcmVzb2x2ZXIuanMKdmFyIHJlcXVpcmVfcmVzb2x2ZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9yZXNvbHZlci5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuUmVzb2x2ZXJIb3N0ID0gdm9pZCAwOwogICAgdmFyIFJlc29sdmVySG9zdCA9IGNsYXNzIHsKICAgICAgX2RlbGVnYXRlOwogICAgICBjb25zdHJ1Y3RvcihfZGVsZWdhdGUpIHsKICAgICAgICB0aGlzLl9kZWxlZ2F0ZSA9IF9kZWxlZ2F0ZTsKICAgICAgfQogICAgICBnZXQgY2FwYWJpbGl0aWVzKCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5jYXBhYmlsaXRpZXM7CiAgICAgIH0KICAgICAgd3JpdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS53cml0ZSh0aGlzLl9yZXNvbHZlKHBhdGgpLCBjb250ZW50KTsKICAgICAgfQogICAgICByZWFkKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUucmVhZCh0aGlzLl9yZXNvbHZlKHBhdGgpKTsKICAgICAgfQogICAgICBkZWxldGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5kZWxldGUodGhpcy5fcmVzb2x2ZShwYXRoKSk7CiAgICAgIH0KICAgICAgcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLnJlbmFtZSh0aGlzLl9yZXNvbHZlKGZyb20pLCB0aGlzLl9yZXNvbHZlKHRvKSk7CiAgICAgIH0KICAgICAgbGlzdChwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLmxpc3QodGhpcy5fcmVzb2x2ZShwYXRoKSk7CiAgICAgIH0KICAgICAgZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuZXhpc3RzKHRoaXMuX3Jlc29sdmUocGF0aCkpOwogICAgICB9CiAgICAgIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuaXNEaXJlY3RvcnkodGhpcy5fcmVzb2x2ZShwYXRoKSk7CiAgICAgIH0KICAgICAgaXNGaWxlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuaXNGaWxlKHRoaXMuX3Jlc29sdmUocGF0aCkpOwogICAgICB9CiAgICAgIC8vIFNvbWUgaG9zdHMgbWF5IG5vdCBzdXBwb3J0IHN0YXQuCiAgICAgIHN0YXQocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5zdGF0KHRoaXMuX3Jlc29sdmUocGF0aCkpOwogICAgICB9CiAgICAgIC8vIFNvbWUgaG9zdHMgbWF5IG5vdCBzdXBwb3J0IHdhdGNoaW5nLgogICAgICB3YXRjaChwYXRoLCBvcHRpb25zKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLndhdGNoKHRoaXMuX3Jlc29sdmUocGF0aCksIG9wdGlvbnMpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuUmVzb2x2ZXJIb3N0ID0gUmVzb2x2ZXJIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2FsaWFzLmpzCnZhciByZXF1aXJlX2FsaWFzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvYWxpYXMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkFsaWFzSG9zdCA9IHZvaWQgMDsKICAgIHZhciBwYXRoXzEgPSByZXF1aXJlX3BhdGgoKTsKICAgIHZhciByZXNvbHZlcl8xID0gcmVxdWlyZV9yZXNvbHZlcigpOwogICAgdmFyIEFsaWFzSG9zdCA9IGNsYXNzIGV4dGVuZHMgcmVzb2x2ZXJfMS5SZXNvbHZlckhvc3QgewogICAgICBfYWxpYXNlcyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF9yZXNvbHZlKHBhdGgpIHsKICAgICAgICBsZXQgbWF5YmVBbGlhcyA9IHRoaXMuX2FsaWFzZXMuZ2V0KHBhdGgpOwogICAgICAgIGNvbnN0IHNwID0gKDAsIHBhdGhfMS5zcGxpdCkocGF0aCk7CiAgICAgICAgY29uc3QgcmVtYWluaW5nID0gW107CiAgICAgICAgd2hpbGUgKCFtYXliZUFsaWFzICYmIHNwLmxlbmd0aCA+IDApIHsKICAgICAgICAgIGNvbnN0IHAgPSAoMCwgcGF0aF8xLmpvaW4pKHBhdGhfMS5Ob3JtYWxpemVkUm9vdCwgLi4uc3ApOwogICAgICAgICAgbWF5YmVBbGlhcyA9IHRoaXMuX2FsaWFzZXMuZ2V0KHApOwogICAgICAgICAgaWYgKG1heWJlQWxpYXMpIHsKICAgICAgICAgICAgbWF5YmVBbGlhcyA9ICgwLCBwYXRoXzEuam9pbikobWF5YmVBbGlhcywgLi4ucmVtYWluaW5nKTsKICAgICAgICAgIH0KICAgICAgICAgIHJlbWFpbmluZy51bnNoaWZ0KHNwLnBvcCgpKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG1heWJlQWxpYXMgfHwgcGF0aDsKICAgICAgfQogICAgICBnZXQgYWxpYXNlcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYWxpYXNlczsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkFsaWFzSG9zdCA9IEFsaWFzSG9zdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9jcmVhdGUuanMKdmFyIHJlcXVpcmVfY3JlYXRlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvY3JlYXRlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jcmVhdGVTeW5jSG9zdCA9IGNyZWF0ZVN5bmNIb3N0OwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICBmdW5jdGlvbiB3cmFwQWN0aW9uKGFjdGlvbikgewogICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChzdWJzY3JpYmVyKSA9PiB7CiAgICAgICAgc3Vic2NyaWJlci5uZXh0KGFjdGlvbigpKTsKICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7CiAgICAgIH0pOwogICAgfQogICAgZnVuY3Rpb24gY3JlYXRlU3luY0hvc3QoaGFuZGxlcikgewogICAgICByZXR1cm4gbmV3IGNsYXNzIHsKICAgICAgICBnZXQgY2FwYWJpbGl0aWVzKCkgewogICAgICAgICAgcmV0dXJuIHsgc3luY2hyb25vdXM6IHRydWUgfTsKICAgICAgICB9CiAgICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLnJlYWQocGF0aCkpOwogICAgICAgIH0KICAgICAgICBsaXN0KHBhdGgpIHsKICAgICAgICAgIHJldHVybiB3cmFwQWN0aW9uKCgpID0+IGhhbmRsZXIubGlzdChwYXRoKSk7CiAgICAgICAgfQogICAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgICByZXR1cm4gd3JhcEFjdGlvbigoKSA9PiBoYW5kbGVyLmV4aXN0cyhwYXRoKSk7CiAgICAgICAgfQogICAgICAgIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICAgIHJldHVybiB3cmFwQWN0aW9uKCgpID0+IGhhbmRsZXIuaXNEaXJlY3RvcnkocGF0aCkpOwogICAgICAgIH0KICAgICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgICAgcmV0dXJuIHdyYXBBY3Rpb24oKCkgPT4gaGFuZGxlci5pc0ZpbGUocGF0aCkpOwogICAgICAgIH0KICAgICAgICBzdGF0KHBhdGgpIHsKICAgICAgICAgIHJldHVybiB3cmFwQWN0aW9uKCgpID0+IGhhbmRsZXIuc3RhdChwYXRoKSk7CiAgICAgICAgfQogICAgICAgIHdyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICAgIHJldHVybiB3cmFwQWN0aW9uKCgpID0+IGhhbmRsZXIud3JpdGUocGF0aCwgY29udGVudCkpOwogICAgICAgIH0KICAgICAgICBkZWxldGUocGF0aCkgewogICAgICAgICAgcmV0dXJuIHdyYXBBY3Rpb24oKCkgPT4gaGFuZGxlci5kZWxldGUocGF0aCkpOwogICAgICAgIH0KICAgICAgICByZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICAgIHJldHVybiB3cmFwQWN0aW9uKCgpID0+IGhhbmRsZXIucmVuYW1lKGZyb20sIHRvKSk7CiAgICAgICAgfQogICAgICAgIHdhdGNoKCkgewogICAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgICAgfQogICAgICB9KCk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvZW1wdHkuanMKdmFyIHJlcXVpcmVfZW1wdHkyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvZW1wdHkuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkVtcHR5ID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbigpOwogICAgdmFyIEVtcHR5ID0gY2xhc3MgewogICAgICBjYXBhYmlsaXRpZXMgPSB7CiAgICAgICAgc3luY2hyb25vdXM6IHRydWUKICAgICAgfTsKICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEudGhyb3dFcnJvcikobmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCkpOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKShbXSk7CiAgICAgIH0KICAgICAgZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikoZmFsc2UpOwogICAgICB9CiAgICAgIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikoZmFsc2UpOwogICAgICB9CiAgICAgIGlzRmlsZShwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKGZhbHNlKTsKICAgICAgfQogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikobnVsbCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5FbXB0eSA9IEVtcHR5OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9waWNvbWF0Y2gtbnBtLTQuMC4yLWU5MzUxNmRkZjItMTAuemlwL25vZGVfbW9kdWxlcy9waWNvbWF0Y2gvbGliL2NvbnN0YW50cy5qcwp2YXIgcmVxdWlyZV9jb25zdGFudHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi9jb25zdGFudHMuanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgV0lOX1NMQVNIID0gIlxcXFwvIjsKICAgIHZhciBXSU5fTk9fU0xBU0ggPSBgW14ke1dJTl9TTEFTSH1dYDsKICAgIHZhciBET1RfTElURVJBTCA9ICJcXC4iOwogICAgdmFyIFBMVVNfTElURVJBTCA9ICJcXCsiOwogICAgdmFyIFFNQVJLX0xJVEVSQUwgPSAiXFw/IjsKICAgIHZhciBTTEFTSF9MSVRFUkFMID0gIlxcLyI7CiAgICB2YXIgT05FX0NIQVIgPSAiKD89LikiOwogICAgdmFyIFFNQVJLID0gIlteL10iOwogICAgdmFyIEVORF9BTkNIT1IgPSBgKD86JHtTTEFTSF9MSVRFUkFMfXwkKWA7CiAgICB2YXIgU1RBUlRfQU5DSE9SID0gYCg/Ol58JHtTTEFTSF9MSVRFUkFMfSlgOwogICAgdmFyIERPVFNfU0xBU0ggPSBgJHtET1RfTElURVJBTH17MSwyfSR7RU5EX0FOQ0hPUn1gOwogICAgdmFyIE5PX0RPVCA9IGAoPyEke0RPVF9MSVRFUkFMfSlgOwogICAgdmFyIE5PX0RPVFMgPSBgKD8hJHtTVEFSVF9BTkNIT1J9JHtET1RTX1NMQVNIfSlgOwogICAgdmFyIE5PX0RPVF9TTEFTSCA9IGAoPyEke0RPVF9MSVRFUkFMfXswLDF9JHtFTkRfQU5DSE9SfSlgOwogICAgdmFyIE5PX0RPVFNfU0xBU0ggPSBgKD8hJHtET1RTX1NMQVNIfSlgOwogICAgdmFyIFFNQVJLX05PX0RPVCA9IGBbXi4ke1NMQVNIX0xJVEVSQUx9XWA7CiAgICB2YXIgU1RBUiA9IGAke1FNQVJLfSo/YDsKICAgIHZhciBTRVAgPSAiLyI7CiAgICB2YXIgUE9TSVhfQ0hBUlMgPSB7CiAgICAgIERPVF9MSVRFUkFMLAogICAgICBQTFVTX0xJVEVSQUwsCiAgICAgIFFNQVJLX0xJVEVSQUwsCiAgICAgIFNMQVNIX0xJVEVSQUwsCiAgICAgIE9ORV9DSEFSLAogICAgICBRTUFSSywKICAgICAgRU5EX0FOQ0hPUiwKICAgICAgRE9UU19TTEFTSCwKICAgICAgTk9fRE9ULAogICAgICBOT19ET1RTLAogICAgICBOT19ET1RfU0xBU0gsCiAgICAgIE5PX0RPVFNfU0xBU0gsCiAgICAgIFFNQVJLX05PX0RPVCwKICAgICAgU1RBUiwKICAgICAgU1RBUlRfQU5DSE9SLAogICAgICBTRVAKICAgIH07CiAgICB2YXIgV0lORE9XU19DSEFSUyA9IHsKICAgICAgLi4uUE9TSVhfQ0hBUlMsCiAgICAgIFNMQVNIX0xJVEVSQUw6IGBbJHtXSU5fU0xBU0h9XWAsCiAgICAgIFFNQVJLOiBXSU5fTk9fU0xBU0gsCiAgICAgIFNUQVI6IGAke1dJTl9OT19TTEFTSH0qP2AsCiAgICAgIERPVFNfU0xBU0g6IGAke0RPVF9MSVRFUkFMfXsxLDJ9KD86WyR7V0lOX1NMQVNIfV18JClgLAogICAgICBOT19ET1Q6IGAoPyEke0RPVF9MSVRFUkFMfSlgLAogICAgICBOT19ET1RTOiBgKD8hKD86XnxbJHtXSU5fU0xBU0h9XSkke0RPVF9MSVRFUkFMfXsxLDJ9KD86WyR7V0lOX1NMQVNIfV18JCkpYCwKICAgICAgTk9fRE9UX1NMQVNIOiBgKD8hJHtET1RfTElURVJBTH17MCwxfSg/Olske1dJTl9TTEFTSH1dfCQpKWAsCiAgICAgIE5PX0RPVFNfU0xBU0g6IGAoPyEke0RPVF9MSVRFUkFMfXsxLDJ9KD86WyR7V0lOX1NMQVNIfV18JCkpYCwKICAgICAgUU1BUktfTk9fRE9UOiBgW14uJHtXSU5fU0xBU0h9XWAsCiAgICAgIFNUQVJUX0FOQ0hPUjogYCg/Ol58WyR7V0lOX1NMQVNIfV0pYCwKICAgICAgRU5EX0FOQ0hPUjogYCg/Olske1dJTl9TTEFTSH1dfCQpYCwKICAgICAgU0VQOiAiXFwiCiAgICB9OwogICAgdmFyIFBPU0lYX1JFR0VYX1NPVVJDRSA9IHsKICAgICAgYWxudW06ICJhLXpBLVowLTkiLAogICAgICBhbHBoYTogImEtekEtWiIsCiAgICAgIGFzY2lpOiAiXFx4MDAtXFx4N0YiLAogICAgICBibGFuazogIiBcXHQiLAogICAgICBjbnRybDogIlxceDAwLVxceDFGXFx4N0YiLAogICAgICBkaWdpdDogIjAtOSIsCiAgICAgIGdyYXBoOiAiXFx4MjEtXFx4N0UiLAogICAgICBsb3dlcjogImEteiIsCiAgICAgIHByaW50OiAiXFx4MjAtXFx4N0UgIiwKICAgICAgcHVuY3Q6ICJcXC0hXCIjJCUmJygpXFwqKywuLzo7PD0+P0BbXFxdXl9ge3x9fiIsCiAgICAgIHNwYWNlOiAiIFxcdFxcclxcblxcdlxcZiIsCiAgICAgIHVwcGVyOiAiQS1aIiwKICAgICAgd29yZDogIkEtWmEtejAtOV8iLAogICAgICB4ZGlnaXQ6ICJBLUZhLWYwLTkiCiAgICB9OwogICAgbW9kdWxlMi5leHBvcnRzID0gewogICAgICBNQVhfTEVOR1RIOiAxMDI0ICogNjQsCiAgICAgIFBPU0lYX1JFR0VYX1NPVVJDRSwKICAgICAgLy8gcmVndWxhciBleHByZXNzaW9ucwogICAgICBSRUdFWF9CQUNLU0xBU0g6IC9cXCg/IVsqKz9eJHt9KHwpW1xdXSkvZywKICAgICAgUkVHRVhfTk9OX1NQRUNJQUxfQ0hBUlM6IC9eW15AIVtcXS4sJCorP157fSgpfFxcL10rLywKICAgICAgUkVHRVhfU1BFQ0lBTF9DSEFSUzogL1stKis/Ll4ke30ofClbXF1dLywKICAgICAgUkVHRVhfU1BFQ0lBTF9DSEFSU19CQUNLUkVGOiAvKFxcPykoKFxXKShcMyopKS9nLAogICAgICBSRUdFWF9TUEVDSUFMX0NIQVJTX0dMT0JBTDogLyhbLSorPy5eJHt9KHwpW1xdXSkvZywKICAgICAgUkVHRVhfUkVNT1ZFX0JBQ0tTTEFTSDogLyg/OlxbLio/W15cXF1cXXxcXCg/PS4pKS9nLAogICAgICAvLyBSZXBsYWNlIGdsb2JzIHdpdGggZXF1aXZhbGVudCBwYXR0ZXJucyB0byByZWR1Y2UgcGFyc2luZyB0aW1lLgogICAgICBSRVBMQUNFTUVOVFM6IHsKICAgICAgICAiKioqIjogIioiLAogICAgICAgICIqKi8qKiI6ICIqKiIsCiAgICAgICAgIioqLyoqLyoqIjogIioqIgogICAgICB9LAogICAgICAvLyBEaWdpdHMKICAgICAgQ0hBUl8wOiA0OCwKICAgICAgLyogMCAqLwogICAgICBDSEFSXzk6IDU3LAogICAgICAvKiA5ICovCiAgICAgIC8vIEFscGhhYmV0IGNoYXJzLgogICAgICBDSEFSX1VQUEVSQ0FTRV9BOiA2NSwKICAgICAgLyogQSAqLwogICAgICBDSEFSX0xPV0VSQ0FTRV9BOiA5NywKICAgICAgLyogYSAqLwogICAgICBDSEFSX1VQUEVSQ0FTRV9aOiA5MCwKICAgICAgLyogWiAqLwogICAgICBDSEFSX0xPV0VSQ0FTRV9aOiAxMjIsCiAgICAgIC8qIHogKi8KICAgICAgQ0hBUl9MRUZUX1BBUkVOVEhFU0VTOiA0MCwKICAgICAgLyogKCAqLwogICAgICBDSEFSX1JJR0hUX1BBUkVOVEhFU0VTOiA0MSwKICAgICAgLyogKSAqLwogICAgICBDSEFSX0FTVEVSSVNLOiA0MiwKICAgICAgLyogKiAqLwogICAgICAvLyBOb24tYWxwaGFiZXRpYyBjaGFycy4KICAgICAgQ0hBUl9BTVBFUlNBTkQ6IDM4LAogICAgICAvKiAmICovCiAgICAgIENIQVJfQVQ6IDY0LAogICAgICAvKiBAICovCiAgICAgIENIQVJfQkFDS1dBUkRfU0xBU0g6IDkyLAogICAgICAvKiBcICovCiAgICAgIENIQVJfQ0FSUklBR0VfUkVUVVJOOiAxMywKICAgICAgLyogXHIgKi8KICAgICAgQ0hBUl9DSVJDVU1GTEVYX0FDQ0VOVDogOTQsCiAgICAgIC8qIF4gKi8KICAgICAgQ0hBUl9DT0xPTjogNTgsCiAgICAgIC8qIDogKi8KICAgICAgQ0hBUl9DT01NQTogNDQsCiAgICAgIC8qICwgKi8KICAgICAgQ0hBUl9ET1Q6IDQ2LAogICAgICAvKiAuICovCiAgICAgIENIQVJfRE9VQkxFX1FVT1RFOiAzNCwKICAgICAgLyogIiAqLwogICAgICBDSEFSX0VRVUFMOiA2MSwKICAgICAgLyogPSAqLwogICAgICBDSEFSX0VYQ0xBTUFUSU9OX01BUks6IDMzLAogICAgICAvKiAhICovCiAgICAgIENIQVJfRk9STV9GRUVEOiAxMiwKICAgICAgLyogXGYgKi8KICAgICAgQ0hBUl9GT1JXQVJEX1NMQVNIOiA0NywKICAgICAgLyogLyAqLwogICAgICBDSEFSX0dSQVZFX0FDQ0VOVDogOTYsCiAgICAgIC8qIGAgKi8KICAgICAgQ0hBUl9IQVNIOiAzNSwKICAgICAgLyogIyAqLwogICAgICBDSEFSX0hZUEhFTl9NSU5VUzogNDUsCiAgICAgIC8qIC0gKi8KICAgICAgQ0hBUl9MRUZUX0FOR0xFX0JSQUNLRVQ6IDYwLAogICAgICAvKiA8ICovCiAgICAgIENIQVJfTEVGVF9DVVJMWV9CUkFDRTogMTIzLAogICAgICAvKiB7ICovCiAgICAgIENIQVJfTEVGVF9TUVVBUkVfQlJBQ0tFVDogOTEsCiAgICAgIC8qIFsgKi8KICAgICAgQ0hBUl9MSU5FX0ZFRUQ6IDEwLAogICAgICAvKiBcbiAqLwogICAgICBDSEFSX05PX0JSRUFLX1NQQUNFOiAxNjAsCiAgICAgIC8qIFx1MDBBMCAqLwogICAgICBDSEFSX1BFUkNFTlQ6IDM3LAogICAgICAvKiAlICovCiAgICAgIENIQVJfUExVUzogNDMsCiAgICAgIC8qICsgKi8KICAgICAgQ0hBUl9RVUVTVElPTl9NQVJLOiA2MywKICAgICAgLyogPyAqLwogICAgICBDSEFSX1JJR0hUX0FOR0xFX0JSQUNLRVQ6IDYyLAogICAgICAvKiA+ICovCiAgICAgIENIQVJfUklHSFRfQ1VSTFlfQlJBQ0U6IDEyNSwKICAgICAgLyogfSAqLwogICAgICBDSEFSX1JJR0hUX1NRVUFSRV9CUkFDS0VUOiA5MywKICAgICAgLyogXSAqLwogICAgICBDSEFSX1NFTUlDT0xPTjogNTksCiAgICAgIC8qIDsgKi8KICAgICAgQ0hBUl9TSU5HTEVfUVVPVEU6IDM5LAogICAgICAvKiAnICovCiAgICAgIENIQVJfU1BBQ0U6IDMyLAogICAgICAvKiAgICovCiAgICAgIENIQVJfVEFCOiA5LAogICAgICAvKiBcdCAqLwogICAgICBDSEFSX1VOREVSU0NPUkU6IDk1LAogICAgICAvKiBfICovCiAgICAgIENIQVJfVkVSVElDQUxfTElORTogMTI0LAogICAgICAvKiB8ICovCiAgICAgIENIQVJfWkVST19XSURUSF9OT0JSRUFLX1NQQUNFOiA2NTI3OSwKICAgICAgLyogXHVGRUZGICovCiAgICAgIC8qKgogICAgICAgKiBDcmVhdGUgRVhUR0xPQl9DSEFSUwogICAgICAgKi8KICAgICAgZXh0Z2xvYkNoYXJzKGNoYXJzKSB7CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICIhIjogeyB0eXBlOiAibmVnYXRlIiwgb3BlbjogIig/Oig/ISg/OiIsIGNsb3NlOiBgKSkke2NoYXJzLlNUQVJ9KWAgfSwKICAgICAgICAgICI/IjogeyB0eXBlOiAicW1hcmsiLCBvcGVuOiAiKD86IiwgY2xvc2U6ICIpPyIgfSwKICAgICAgICAgICIrIjogeyB0eXBlOiAicGx1cyIsIG9wZW46ICIoPzoiLCBjbG9zZTogIikrIiB9LAogICAgICAgICAgIioiOiB7IHR5cGU6ICJzdGFyIiwgb3BlbjogIig/OiIsIGNsb3NlOiAiKSoiIH0sCiAgICAgICAgICAiQCI6IHsgdHlwZTogImF0Iiwgb3BlbjogIig/OiIsIGNsb3NlOiAiKSIgfQogICAgICAgIH07CiAgICAgIH0sCiAgICAgIC8qKgogICAgICAgKiBDcmVhdGUgR0xPQl9DSEFSUwogICAgICAgKi8KICAgICAgZ2xvYkNoYXJzKHdpbjMyKSB7CiAgICAgICAgcmV0dXJuIHdpbjMyID09PSB0cnVlID8gV0lORE9XU19DSEFSUyA6IFBPU0lYX0NIQVJTOwogICAgICB9CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9waWNvbWF0Y2gtbnBtLTQuMC4yLWU5MzUxNmRkZjItMTAuemlwL25vZGVfbW9kdWxlcy9waWNvbWF0Y2gvbGliL3V0aWxzLmpzCnZhciByZXF1aXJlX3V0aWxzNCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9waWNvbWF0Y2gtbnBtLTQuMC4yLWU5MzUxNmRkZjItMTAuemlwL25vZGVfbW9kdWxlcy9waWNvbWF0Y2gvbGliL3V0aWxzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIHsKICAgICAgUkVHRVhfQkFDS1NMQVNILAogICAgICBSRUdFWF9SRU1PVkVfQkFDS1NMQVNILAogICAgICBSRUdFWF9TUEVDSUFMX0NIQVJTLAogICAgICBSRUdFWF9TUEVDSUFMX0NIQVJTX0dMT0JBTAogICAgfSA9IHJlcXVpcmVfY29uc3RhbnRzKCk7CiAgICBleHBvcnRzMi5pc09iamVjdCA9ICh2YWwpID0+IHZhbCAhPT0gbnVsbCAmJiB0eXBlb2YgdmFsID09PSAib2JqZWN0IiAmJiAhQXJyYXkuaXNBcnJheSh2YWwpOwogICAgZXhwb3J0czIuaGFzUmVnZXhDaGFycyA9IChzdHIpID0+IFJFR0VYX1NQRUNJQUxfQ0hBUlMudGVzdChzdHIpOwogICAgZXhwb3J0czIuaXNSZWdleENoYXIgPSAoc3RyKSA9PiBzdHIubGVuZ3RoID09PSAxICYmIGV4cG9ydHMyLmhhc1JlZ2V4Q2hhcnMoc3RyKTsKICAgIGV4cG9ydHMyLmVzY2FwZVJlZ2V4ID0gKHN0cikgPT4gc3RyLnJlcGxhY2UoUkVHRVhfU1BFQ0lBTF9DSEFSU19HTE9CQUwsICJcXCQxIik7CiAgICBleHBvcnRzMi50b1Bvc2l4U2xhc2hlcyA9IChzdHIpID0+IHN0ci5yZXBsYWNlKFJFR0VYX0JBQ0tTTEFTSCwgIi8iKTsKICAgIGV4cG9ydHMyLmlzV2luZG93cyA9ICgpID0+IHsKICAgICAgaWYgKHR5cGVvZiBuYXZpZ2F0b3IgIT09ICJ1bmRlZmluZWQiICYmIG5hdmlnYXRvci5wbGF0Zm9ybSkgewogICAgICAgIGNvbnN0IHBsYXRmb3JtID0gbmF2aWdhdG9yLnBsYXRmb3JtLnRvTG93ZXJDYXNlKCk7CiAgICAgICAgcmV0dXJuIHBsYXRmb3JtID09PSAid2luMzIiIHx8IHBsYXRmb3JtID09PSAid2luZG93cyI7CiAgICAgIH0KICAgICAgaWYgKHR5cGVvZiBwcm9jZXNzICE9PSAidW5kZWZpbmVkIiAmJiBwcm9jZXNzLnBsYXRmb3JtKSB7CiAgICAgICAgcmV0dXJuIHByb2Nlc3MucGxhdGZvcm0gPT09ICJ3aW4zMiI7CiAgICAgIH0KICAgICAgcmV0dXJuIGZhbHNlOwogICAgfTsKICAgIGV4cG9ydHMyLnJlbW92ZUJhY2tzbGFzaGVzID0gKHN0cikgPT4gewogICAgICByZXR1cm4gc3RyLnJlcGxhY2UoUkVHRVhfUkVNT1ZFX0JBQ0tTTEFTSCwgKG1hdGNoKSA9PiB7CiAgICAgICAgcmV0dXJuIG1hdGNoID09PSAiXFwiID8gIiIgOiBtYXRjaDsKICAgICAgfSk7CiAgICB9OwogICAgZXhwb3J0czIuZXNjYXBlTGFzdCA9IChpbnB1dCwgY2hhciwgbGFzdElkeCkgPT4gewogICAgICBjb25zdCBpZHggPSBpbnB1dC5sYXN0SW5kZXhPZihjaGFyLCBsYXN0SWR4KTsKICAgICAgaWYgKGlkeCA9PT0gLTEpIHJldHVybiBpbnB1dDsKICAgICAgaWYgKGlucHV0W2lkeCAtIDFdID09PSAiXFwiKSByZXR1cm4gZXhwb3J0czIuZXNjYXBlTGFzdChpbnB1dCwgY2hhciwgaWR4IC0gMSk7CiAgICAgIHJldHVybiBgJHtpbnB1dC5zbGljZSgwLCBpZHgpfVxcJHtpbnB1dC5zbGljZShpZHgpfWA7CiAgICB9OwogICAgZXhwb3J0czIucmVtb3ZlUHJlZml4ID0gKGlucHV0LCBzdGF0ZSA9IHt9KSA9PiB7CiAgICAgIGxldCBvdXRwdXQgPSBpbnB1dDsKICAgICAgaWYgKG91dHB1dC5zdGFydHNXaXRoKCIuLyIpKSB7CiAgICAgICAgb3V0cHV0ID0gb3V0cHV0LnNsaWNlKDIpOwogICAgICAgIHN0YXRlLnByZWZpeCA9ICIuLyI7CiAgICAgIH0KICAgICAgcmV0dXJuIG91dHB1dDsKICAgIH07CiAgICBleHBvcnRzMi53cmFwT3V0cHV0ID0gKGlucHV0LCBzdGF0ZSA9IHt9LCBvcHRpb25zID0ge30pID0+IHsKICAgICAgY29uc3QgcHJlcGVuZCA9IG9wdGlvbnMuY29udGFpbnMgPyAiIiA6ICJeIjsKICAgICAgY29uc3QgYXBwZW5kID0gb3B0aW9ucy5jb250YWlucyA/ICIiIDogIiQiOwogICAgICBsZXQgb3V0cHV0ID0gYCR7cHJlcGVuZH0oPzoke2lucHV0fSkke2FwcGVuZH1gOwogICAgICBpZiAoc3RhdGUubmVnYXRlZCA9PT0gdHJ1ZSkgewogICAgICAgIG91dHB1dCA9IGAoPzpeKD8hJHtvdXRwdXR9KS4qJClgOwogICAgICB9CiAgICAgIHJldHVybiBvdXRwdXQ7CiAgICB9OwogICAgZXhwb3J0czIuYmFzZW5hbWUgPSAocGF0aCwgeyB3aW5kb3dzIH0gPSB7fSkgPT4gewogICAgICBjb25zdCBzZWdzID0gcGF0aC5zcGxpdCh3aW5kb3dzID8gL1tcXC9dLyA6ICIvIik7CiAgICAgIGNvbnN0IGxhc3QgPSBzZWdzW3NlZ3MubGVuZ3RoIC0gMV07CiAgICAgIGlmIChsYXN0ID09PSAiIikgewogICAgICAgIHJldHVybiBzZWdzW3NlZ3MubGVuZ3RoIC0gMl07CiAgICAgIH0KICAgICAgcmV0dXJuIGxhc3Q7CiAgICB9OwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9waWNvbWF0Y2gtbnBtLTQuMC4yLWU5MzUxNmRkZjItMTAuemlwL25vZGVfbW9kdWxlcy9waWNvbWF0Y2gvbGliL3NjYW4uanMKdmFyIHJlcXVpcmVfc2NhbjIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi9zY2FuLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIHV0aWxzID0gcmVxdWlyZV91dGlsczQoKTsKICAgIHZhciB7CiAgICAgIENIQVJfQVNURVJJU0ssCiAgICAgIC8qICogKi8KICAgICAgQ0hBUl9BVCwKICAgICAgLyogQCAqLwogICAgICBDSEFSX0JBQ0tXQVJEX1NMQVNILAogICAgICAvKiBcICovCiAgICAgIENIQVJfQ09NTUEsCiAgICAgIC8qICwgKi8KICAgICAgQ0hBUl9ET1QsCiAgICAgIC8qIC4gKi8KICAgICAgQ0hBUl9FWENMQU1BVElPTl9NQVJLLAogICAgICAvKiAhICovCiAgICAgIENIQVJfRk9SV0FSRF9TTEFTSCwKICAgICAgLyogLyAqLwogICAgICBDSEFSX0xFRlRfQ1VSTFlfQlJBQ0UsCiAgICAgIC8qIHsgKi8KICAgICAgQ0hBUl9MRUZUX1BBUkVOVEhFU0VTLAogICAgICAvKiAoICovCiAgICAgIENIQVJfTEVGVF9TUVVBUkVfQlJBQ0tFVCwKICAgICAgLyogWyAqLwogICAgICBDSEFSX1BMVVMsCiAgICAgIC8qICsgKi8KICAgICAgQ0hBUl9RVUVTVElPTl9NQVJLLAogICAgICAvKiA/ICovCiAgICAgIENIQVJfUklHSFRfQ1VSTFlfQlJBQ0UsCiAgICAgIC8qIH0gKi8KICAgICAgQ0hBUl9SSUdIVF9QQVJFTlRIRVNFUywKICAgICAgLyogKSAqLwogICAgICBDSEFSX1JJR0hUX1NRVUFSRV9CUkFDS0VUCiAgICAgIC8qIF0gKi8KICAgIH0gPSByZXF1aXJlX2NvbnN0YW50cygpOwogICAgdmFyIGlzUGF0aFNlcGFyYXRvciA9IChjb2RlKSA9PiB7CiAgICAgIHJldHVybiBjb2RlID09PSBDSEFSX0ZPUldBUkRfU0xBU0ggfHwgY29kZSA9PT0gQ0hBUl9CQUNLV0FSRF9TTEFTSDsKICAgIH07CiAgICB2YXIgZGVwdGggPSAodG9rZW4pID0+IHsKICAgICAgaWYgKHRva2VuLmlzUHJlZml4ICE9PSB0cnVlKSB7CiAgICAgICAgdG9rZW4uZGVwdGggPSB0b2tlbi5pc0dsb2JzdGFyID8gSW5maW5pdHkgOiAxOwogICAgICB9CiAgICB9OwogICAgdmFyIHNjYW4gPSAoaW5wdXQsIG9wdGlvbnMpID0+IHsKICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgIGNvbnN0IGxlbmd0aCA9IGlucHV0Lmxlbmd0aCAtIDE7CiAgICAgIGNvbnN0IHNjYW5Ub0VuZCA9IG9wdHMucGFydHMgPT09IHRydWUgfHwgb3B0cy5zY2FuVG9FbmQgPT09IHRydWU7CiAgICAgIGNvbnN0IHNsYXNoZXMgPSBbXTsKICAgICAgY29uc3QgdG9rZW5zID0gW107CiAgICAgIGNvbnN0IHBhcnRzID0gW107CiAgICAgIGxldCBzdHIgPSBpbnB1dDsKICAgICAgbGV0IGluZGV4ID0gLTE7CiAgICAgIGxldCBzdGFydCA9IDA7CiAgICAgIGxldCBsYXN0SW5kZXggPSAwOwogICAgICBsZXQgaXNCcmFjZSA9IGZhbHNlOwogICAgICBsZXQgaXNCcmFja2V0ID0gZmFsc2U7CiAgICAgIGxldCBpc0dsb2IgPSBmYWxzZTsKICAgICAgbGV0IGlzRXh0Z2xvYiA9IGZhbHNlOwogICAgICBsZXQgaXNHbG9ic3RhciA9IGZhbHNlOwogICAgICBsZXQgYnJhY2VFc2NhcGVkID0gZmFsc2U7CiAgICAgIGxldCBiYWNrc2xhc2hlcyA9IGZhbHNlOwogICAgICBsZXQgbmVnYXRlZCA9IGZhbHNlOwogICAgICBsZXQgbmVnYXRlZEV4dGdsb2IgPSBmYWxzZTsKICAgICAgbGV0IGZpbmlzaGVkID0gZmFsc2U7CiAgICAgIGxldCBicmFjZXMgPSAwOwogICAgICBsZXQgcHJldjsKICAgICAgbGV0IGNvZGU7CiAgICAgIGxldCB0b2tlbiA9IHsgdmFsdWU6ICIiLCBkZXB0aDogMCwgaXNHbG9iOiBmYWxzZSB9OwogICAgICBjb25zdCBlb3MgPSAoKSA9PiBpbmRleCA+PSBsZW5ndGg7CiAgICAgIGNvbnN0IHBlZWsgPSAoKSA9PiBzdHIuY2hhckNvZGVBdChpbmRleCArIDEpOwogICAgICBjb25zdCBhZHZhbmNlID0gKCkgPT4gewogICAgICAgIHByZXYgPSBjb2RlOwogICAgICAgIHJldHVybiBzdHIuY2hhckNvZGVBdCgrK2luZGV4KTsKICAgICAgfTsKICAgICAgd2hpbGUgKGluZGV4IDwgbGVuZ3RoKSB7CiAgICAgICAgY29kZSA9IGFkdmFuY2UoKTsKICAgICAgICBsZXQgbmV4dDsKICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9CQUNLV0FSRF9TTEFTSCkgewogICAgICAgICAgYmFja3NsYXNoZXMgPSB0b2tlbi5iYWNrc2xhc2hlcyA9IHRydWU7CiAgICAgICAgICBjb2RlID0gYWR2YW5jZSgpOwogICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfTEVGVF9DVVJMWV9CUkFDRSkgewogICAgICAgICAgICBicmFjZUVzY2FwZWQgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmIChicmFjZUVzY2FwZWQgPT09IHRydWUgfHwgY29kZSA9PT0gQ0hBUl9MRUZUX0NVUkxZX0JSQUNFKSB7CiAgICAgICAgICBicmFjZXMrKzsKICAgICAgICAgIHdoaWxlIChlb3MoKSAhPT0gdHJ1ZSAmJiAoY29kZSA9IGFkdmFuY2UoKSkpIHsKICAgICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfQkFDS1dBUkRfU0xBU0gpIHsKICAgICAgICAgICAgICBiYWNrc2xhc2hlcyA9IHRva2VuLmJhY2tzbGFzaGVzID0gdHJ1ZTsKICAgICAgICAgICAgICBhZHZhbmNlKCk7CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfTEVGVF9DVVJMWV9CUkFDRSkgewogICAgICAgICAgICAgIGJyYWNlcysrOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChicmFjZUVzY2FwZWQgIT09IHRydWUgJiYgY29kZSA9PT0gQ0hBUl9ET1QgJiYgKGNvZGUgPSBhZHZhbmNlKCkpID09PSBDSEFSX0RPVCkgewogICAgICAgICAgICAgIGlzQnJhY2UgPSB0b2tlbi5pc0JyYWNlID0gdHJ1ZTsKICAgICAgICAgICAgICBpc0dsb2IgPSB0b2tlbi5pc0dsb2IgPSB0cnVlOwogICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGJyYWNlRXNjYXBlZCAhPT0gdHJ1ZSAmJiBjb2RlID09PSBDSEFSX0NPTU1BKSB7CiAgICAgICAgICAgICAgaXNCcmFjZSA9IHRva2VuLmlzQnJhY2UgPSB0cnVlOwogICAgICAgICAgICAgIGlzR2xvYiA9IHRva2VuLmlzR2xvYiA9IHRydWU7CiAgICAgICAgICAgICAgZmluaXNoZWQgPSB0cnVlOwogICAgICAgICAgICAgIGlmIChzY2FuVG9FbmQgPT09IHRydWUpIHsKICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9SSUdIVF9DVVJMWV9CUkFDRSkgewogICAgICAgICAgICAgIGJyYWNlcy0tOwogICAgICAgICAgICAgIGlmIChicmFjZXMgPT09IDApIHsKICAgICAgICAgICAgICAgIGJyYWNlRXNjYXBlZCA9IGZhbHNlOwogICAgICAgICAgICAgICAgaXNCcmFjZSA9IHRva2VuLmlzQnJhY2UgPSB0cnVlOwogICAgICAgICAgICAgICAgZmluaXNoZWQgPSB0cnVlOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIGlmIChjb2RlID09PSBDSEFSX0ZPUldBUkRfU0xBU0gpIHsKICAgICAgICAgIHNsYXNoZXMucHVzaChpbmRleCk7CiAgICAgICAgICB0b2tlbnMucHVzaCh0b2tlbik7CiAgICAgICAgICB0b2tlbiA9IHsgdmFsdWU6ICIiLCBkZXB0aDogMCwgaXNHbG9iOiBmYWxzZSB9OwogICAgICAgICAgaWYgKGZpbmlzaGVkID09PSB0cnVlKSBjb250aW51ZTsKICAgICAgICAgIGlmIChwcmV2ID09PSBDSEFSX0RPVCAmJiBpbmRleCA9PT0gc3RhcnQgKyAxKSB7CiAgICAgICAgICAgIHN0YXJ0ICs9IDI7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgbGFzdEluZGV4ID0gaW5kZXggKyAxOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmIChvcHRzLm5vZXh0ICE9PSB0cnVlKSB7CiAgICAgICAgICBjb25zdCBpc0V4dGdsb2JDaGFyID0gY29kZSA9PT0gQ0hBUl9QTFVTIHx8IGNvZGUgPT09IENIQVJfQVQgfHwgY29kZSA9PT0gQ0hBUl9BU1RFUklTSyB8fCBjb2RlID09PSBDSEFSX1FVRVNUSU9OX01BUksgfHwgY29kZSA9PT0gQ0hBUl9FWENMQU1BVElPTl9NQVJLOwogICAgICAgICAgaWYgKGlzRXh0Z2xvYkNoYXIgPT09IHRydWUgJiYgcGVlaygpID09PSBDSEFSX0xFRlRfUEFSRU5USEVTRVMpIHsKICAgICAgICAgICAgaXNHbG9iID0gdG9rZW4uaXNHbG9iID0gdHJ1ZTsKICAgICAgICAgICAgaXNFeHRnbG9iID0gdG9rZW4uaXNFeHRnbG9iID0gdHJ1ZTsKICAgICAgICAgICAgZmluaXNoZWQgPSB0cnVlOwogICAgICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9FWENMQU1BVElPTl9NQVJLICYmIGluZGV4ID09PSBzdGFydCkgewogICAgICAgICAgICAgIG5lZ2F0ZWRFeHRnbG9iID0gdHJ1ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoc2NhblRvRW5kID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgd2hpbGUgKGVvcygpICE9PSB0cnVlICYmIChjb2RlID0gYWR2YW5jZSgpKSkgewogICAgICAgICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfQkFDS1dBUkRfU0xBU0gpIHsKICAgICAgICAgICAgICAgICAgYmFja3NsYXNoZXMgPSB0b2tlbi5iYWNrc2xhc2hlcyA9IHRydWU7CiAgICAgICAgICAgICAgICAgIGNvZGUgPSBhZHZhbmNlKCk7CiAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfUklHSFRfUEFSRU5USEVTRVMpIHsKICAgICAgICAgICAgICAgICAgaXNHbG9iID0gdG9rZW4uaXNHbG9iID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgZmluaXNoZWQgPSB0cnVlOwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChjb2RlID09PSBDSEFSX0FTVEVSSVNLKSB7CiAgICAgICAgICBpZiAocHJldiA9PT0gQ0hBUl9BU1RFUklTSykgaXNHbG9ic3RhciA9IHRva2VuLmlzR2xvYnN0YXIgPSB0cnVlOwogICAgICAgICAgaXNHbG9iID0gdG9rZW4uaXNHbG9iID0gdHJ1ZTsKICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgIGlmIChzY2FuVG9FbmQgPT09IHRydWUpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfUVVFU1RJT05fTUFSSykgewogICAgICAgICAgaXNHbG9iID0gdG9rZW4uaXNHbG9iID0gdHJ1ZTsKICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgIGlmIChzY2FuVG9FbmQgPT09IHRydWUpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgICAgaWYgKGNvZGUgPT09IENIQVJfTEVGVF9TUVVBUkVfQlJBQ0tFVCkgewogICAgICAgICAgd2hpbGUgKGVvcygpICE9PSB0cnVlICYmIChuZXh0ID0gYWR2YW5jZSgpKSkgewogICAgICAgICAgICBpZiAobmV4dCA9PT0gQ0hBUl9CQUNLV0FSRF9TTEFTSCkgewogICAgICAgICAgICAgIGJhY2tzbGFzaGVzID0gdG9rZW4uYmFja3NsYXNoZXMgPSB0cnVlOwogICAgICAgICAgICAgIGFkdmFuY2UoKTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAobmV4dCA9PT0gQ0hBUl9SSUdIVF9TUVVBUkVfQlJBQ0tFVCkgewogICAgICAgICAgICAgIGlzQnJhY2tldCA9IHRva2VuLmlzQnJhY2tldCA9IHRydWU7CiAgICAgICAgICAgICAgaXNHbG9iID0gdG9rZW4uaXNHbG9iID0gdHJ1ZTsKICAgICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmIChzY2FuVG9FbmQgPT09IHRydWUpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgICAgaWYgKG9wdHMubm9uZWdhdGUgIT09IHRydWUgJiYgY29kZSA9PT0gQ0hBUl9FWENMQU1BVElPTl9NQVJLICYmIGluZGV4ID09PSBzdGFydCkgewogICAgICAgICAgbmVnYXRlZCA9IHRva2VuLm5lZ2F0ZWQgPSB0cnVlOwogICAgICAgICAgc3RhcnQrKzsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAob3B0cy5ub3BhcmVuICE9PSB0cnVlICYmIGNvZGUgPT09IENIQVJfTEVGVF9QQVJFTlRIRVNFUykgewogICAgICAgICAgaXNHbG9iID0gdG9rZW4uaXNHbG9iID0gdHJ1ZTsKICAgICAgICAgIGlmIChzY2FuVG9FbmQgPT09IHRydWUpIHsKICAgICAgICAgICAgd2hpbGUgKGVvcygpICE9PSB0cnVlICYmIChjb2RlID0gYWR2YW5jZSgpKSkgewogICAgICAgICAgICAgIGlmIChjb2RlID09PSBDSEFSX0xFRlRfUEFSRU5USEVTRVMpIHsKICAgICAgICAgICAgICAgIGJhY2tzbGFzaGVzID0gdG9rZW4uYmFja3NsYXNoZXMgPSB0cnVlOwogICAgICAgICAgICAgICAgY29kZSA9IGFkdmFuY2UoKTsKICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAoY29kZSA9PT0gQ0hBUl9SSUdIVF9QQVJFTlRIRVNFUykgewogICAgICAgICAgICAgICAgZmluaXNoZWQgPSB0cnVlOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIGlmIChpc0dsb2IgPT09IHRydWUpIHsKICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgIGlmIChzY2FuVG9FbmQgPT09IHRydWUpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKG9wdHMubm9leHQgPT09IHRydWUpIHsKICAgICAgICBpc0V4dGdsb2IgPSBmYWxzZTsKICAgICAgICBpc0dsb2IgPSBmYWxzZTsKICAgICAgfQogICAgICBsZXQgYmFzZSA9IHN0cjsKICAgICAgbGV0IHByZWZpeCA9ICIiOwogICAgICBsZXQgZ2xvYiA9ICIiOwogICAgICBpZiAoc3RhcnQgPiAwKSB7CiAgICAgICAgcHJlZml4ID0gc3RyLnNsaWNlKDAsIHN0YXJ0KTsKICAgICAgICBzdHIgPSBzdHIuc2xpY2Uoc3RhcnQpOwogICAgICAgIGxhc3RJbmRleCAtPSBzdGFydDsKICAgICAgfQogICAgICBpZiAoYmFzZSAmJiBpc0dsb2IgPT09IHRydWUgJiYgbGFzdEluZGV4ID4gMCkgewogICAgICAgIGJhc2UgPSBzdHIuc2xpY2UoMCwgbGFzdEluZGV4KTsKICAgICAgICBnbG9iID0gc3RyLnNsaWNlKGxhc3RJbmRleCk7CiAgICAgIH0gZWxzZSBpZiAoaXNHbG9iID09PSB0cnVlKSB7CiAgICAgICAgYmFzZSA9ICIiOwogICAgICAgIGdsb2IgPSBzdHI7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgYmFzZSA9IHN0cjsKICAgICAgfQogICAgICBpZiAoYmFzZSAmJiBiYXNlICE9PSAiIiAmJiBiYXNlICE9PSAiLyIgJiYgYmFzZSAhPT0gc3RyKSB7CiAgICAgICAgaWYgKGlzUGF0aFNlcGFyYXRvcihiYXNlLmNoYXJDb2RlQXQoYmFzZS5sZW5ndGggLSAxKSkpIHsKICAgICAgICAgIGJhc2UgPSBiYXNlLnNsaWNlKDAsIC0xKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgKG9wdHMudW5lc2NhcGUgPT09IHRydWUpIHsKICAgICAgICBpZiAoZ2xvYikgZ2xvYiA9IHV0aWxzLnJlbW92ZUJhY2tzbGFzaGVzKGdsb2IpOwogICAgICAgIGlmIChiYXNlICYmIGJhY2tzbGFzaGVzID09PSB0cnVlKSB7CiAgICAgICAgICBiYXNlID0gdXRpbHMucmVtb3ZlQmFja3NsYXNoZXMoYmFzZSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIGNvbnN0IHN0YXRlID0gewogICAgICAgIHByZWZpeCwKICAgICAgICBpbnB1dCwKICAgICAgICBzdGFydCwKICAgICAgICBiYXNlLAogICAgICAgIGdsb2IsCiAgICAgICAgaXNCcmFjZSwKICAgICAgICBpc0JyYWNrZXQsCiAgICAgICAgaXNHbG9iLAogICAgICAgIGlzRXh0Z2xvYiwKICAgICAgICBpc0dsb2JzdGFyLAogICAgICAgIG5lZ2F0ZWQsCiAgICAgICAgbmVnYXRlZEV4dGdsb2IKICAgICAgfTsKICAgICAgaWYgKG9wdHMudG9rZW5zID09PSB0cnVlKSB7CiAgICAgICAgc3RhdGUubWF4RGVwdGggPSAwOwogICAgICAgIGlmICghaXNQYXRoU2VwYXJhdG9yKGNvZGUpKSB7CiAgICAgICAgICB0b2tlbnMucHVzaCh0b2tlbik7CiAgICAgICAgfQogICAgICAgIHN0YXRlLnRva2VucyA9IHRva2VuczsKICAgICAgfQogICAgICBpZiAob3B0cy5wYXJ0cyA9PT0gdHJ1ZSB8fCBvcHRzLnRva2VucyA9PT0gdHJ1ZSkgewogICAgICAgIGxldCBwcmV2SW5kZXg7CiAgICAgICAgZm9yIChsZXQgaWR4ID0gMDsgaWR4IDwgc2xhc2hlcy5sZW5ndGg7IGlkeCsrKSB7CiAgICAgICAgICBjb25zdCBuID0gcHJldkluZGV4ID8gcHJldkluZGV4ICsgMSA6IHN0YXJ0OwogICAgICAgICAgY29uc3QgaSA9IHNsYXNoZXNbaWR4XTsKICAgICAgICAgIGNvbnN0IHZhbHVlID0gaW5wdXQuc2xpY2UobiwgaSk7CiAgICAgICAgICBpZiAob3B0cy50b2tlbnMpIHsKICAgICAgICAgICAgaWYgKGlkeCA9PT0gMCAmJiBzdGFydCAhPT0gMCkgewogICAgICAgICAgICAgIHRva2Vuc1tpZHhdLmlzUHJlZml4ID0gdHJ1ZTsKICAgICAgICAgICAgICB0b2tlbnNbaWR4XS52YWx1ZSA9IHByZWZpeDsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICB0b2tlbnNbaWR4XS52YWx1ZSA9IHZhbHVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGRlcHRoKHRva2Vuc1tpZHhdKTsKICAgICAgICAgICAgc3RhdGUubWF4RGVwdGggKz0gdG9rZW5zW2lkeF0uZGVwdGg7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoaWR4ICE9PSAwIHx8IHZhbHVlICE9PSAiIikgewogICAgICAgICAgICBwYXJ0cy5wdXNoKHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICAgIHByZXZJbmRleCA9IGk7CiAgICAgICAgfQogICAgICAgIGlmIChwcmV2SW5kZXggJiYgcHJldkluZGV4ICsgMSA8IGlucHV0Lmxlbmd0aCkgewogICAgICAgICAgY29uc3QgdmFsdWUgPSBpbnB1dC5zbGljZShwcmV2SW5kZXggKyAxKTsKICAgICAgICAgIHBhcnRzLnB1c2godmFsdWUpOwogICAgICAgICAgaWYgKG9wdHMudG9rZW5zKSB7CiAgICAgICAgICAgIHRva2Vuc1t0b2tlbnMubGVuZ3RoIC0gMV0udmFsdWUgPSB2YWx1ZTsKICAgICAgICAgICAgZGVwdGgodG9rZW5zW3Rva2Vucy5sZW5ndGggLSAxXSk7CiAgICAgICAgICAgIHN0YXRlLm1heERlcHRoICs9IHRva2Vuc1t0b2tlbnMubGVuZ3RoIC0gMV0uZGVwdGg7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHN0YXRlLnNsYXNoZXMgPSBzbGFzaGVzOwogICAgICAgIHN0YXRlLnBhcnRzID0gcGFydHM7CiAgICAgIH0KICAgICAgcmV0dXJuIHN0YXRlOwogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IHNjYW47CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi0xMC56aXAvbm9kZV9tb2R1bGVzL3BpY29tYXRjaC9saWIvcGFyc2UuanMKdmFyIHJlcXVpcmVfcGFyc2UgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi9wYXJzZS5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBjb25zdGFudHMgPSByZXF1aXJlX2NvbnN0YW50cygpOwogICAgdmFyIHV0aWxzID0gcmVxdWlyZV91dGlsczQoKTsKICAgIHZhciB7CiAgICAgIE1BWF9MRU5HVEgsCiAgICAgIFBPU0lYX1JFR0VYX1NPVVJDRSwKICAgICAgUkVHRVhfTk9OX1NQRUNJQUxfQ0hBUlMsCiAgICAgIFJFR0VYX1NQRUNJQUxfQ0hBUlNfQkFDS1JFRiwKICAgICAgUkVQTEFDRU1FTlRTCiAgICB9ID0gY29uc3RhbnRzOwogICAgdmFyIGV4cGFuZFJhbmdlID0gKGFyZ3MsIG9wdGlvbnMpID0+IHsKICAgICAgaWYgKHR5cGVvZiBvcHRpb25zLmV4cGFuZFJhbmdlID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgcmV0dXJuIG9wdGlvbnMuZXhwYW5kUmFuZ2UoLi4uYXJncywgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgYXJncy5zb3J0KCk7CiAgICAgIGNvbnN0IHZhbHVlID0gYFske2FyZ3Muam9pbigiLSIpfV1gOwogICAgICB0cnkgewogICAgICAgIG5ldyBSZWdFeHAodmFsdWUpOwogICAgICB9IGNhdGNoIChleCkgewogICAgICAgIHJldHVybiBhcmdzLm1hcCgodikgPT4gdXRpbHMuZXNjYXBlUmVnZXgodikpLmpvaW4oIi4uIik7CiAgICAgIH0KICAgICAgcmV0dXJuIHZhbHVlOwogICAgfTsKICAgIHZhciBzeW50YXhFcnJvciA9ICh0eXBlLCBjaGFyKSA9PiB7CiAgICAgIHJldHVybiBgTWlzc2luZyAke3R5cGV9OiAiJHtjaGFyfSIgLSB1c2UgIlxcXFwke2NoYXJ9IiB0byBtYXRjaCBsaXRlcmFsIGNoYXJhY3RlcnNgOwogICAgfTsKICAgIHZhciBwYXJzZSA9IChpbnB1dCwgb3B0aW9ucykgPT4gewogICAgICBpZiAodHlwZW9mIGlucHV0ICE9PSAic3RyaW5nIikgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIGEgc3RyaW5nIik7CiAgICAgIH0KICAgICAgaW5wdXQgPSBSRVBMQUNFTUVOVFNbaW5wdXRdIHx8IGlucHV0OwogICAgICBjb25zdCBvcHRzID0geyAuLi5vcHRpb25zIH07CiAgICAgIGNvbnN0IG1heCA9IHR5cGVvZiBvcHRzLm1heExlbmd0aCA9PT0gIm51bWJlciIgPyBNYXRoLm1pbihNQVhfTEVOR1RILCBvcHRzLm1heExlbmd0aCkgOiBNQVhfTEVOR1RIOwogICAgICBsZXQgbGVuID0gaW5wdXQubGVuZ3RoOwogICAgICBpZiAobGVuID4gbWF4KSB7CiAgICAgICAgdGhyb3cgbmV3IFN5bnRheEVycm9yKGBJbnB1dCBsZW5ndGg6ICR7bGVufSwgZXhjZWVkcyBtYXhpbXVtIGFsbG93ZWQgbGVuZ3RoOiAke21heH1gKTsKICAgICAgfQogICAgICBjb25zdCBib3MgPSB7IHR5cGU6ICJib3MiLCB2YWx1ZTogIiIsIG91dHB1dDogb3B0cy5wcmVwZW5kIHx8ICIiIH07CiAgICAgIGNvbnN0IHRva2VucyA9IFtib3NdOwogICAgICBjb25zdCBjYXB0dXJlID0gb3B0cy5jYXB0dXJlID8gIiIgOiAiPzoiOwogICAgICBjb25zdCBQTEFURk9STV9DSEFSUyA9IGNvbnN0YW50cy5nbG9iQ2hhcnMob3B0cy53aW5kb3dzKTsKICAgICAgY29uc3QgRVhUR0xPQl9DSEFSUyA9IGNvbnN0YW50cy5leHRnbG9iQ2hhcnMoUExBVEZPUk1fQ0hBUlMpOwogICAgICBjb25zdCB7CiAgICAgICAgRE9UX0xJVEVSQUwsCiAgICAgICAgUExVU19MSVRFUkFMLAogICAgICAgIFNMQVNIX0xJVEVSQUwsCiAgICAgICAgT05FX0NIQVIsCiAgICAgICAgRE9UU19TTEFTSCwKICAgICAgICBOT19ET1QsCiAgICAgICAgTk9fRE9UX1NMQVNILAogICAgICAgIE5PX0RPVFNfU0xBU0gsCiAgICAgICAgUU1BUkssCiAgICAgICAgUU1BUktfTk9fRE9ULAogICAgICAgIFNUQVIsCiAgICAgICAgU1RBUlRfQU5DSE9SCiAgICAgIH0gPSBQTEFURk9STV9DSEFSUzsKICAgICAgY29uc3QgZ2xvYnN0YXIgPSAob3B0czIpID0+IHsKICAgICAgICByZXR1cm4gYCgke2NhcHR1cmV9KD86KD8hJHtTVEFSVF9BTkNIT1J9JHtvcHRzMi5kb3QgPyBET1RTX1NMQVNIIDogRE9UX0xJVEVSQUx9KS4pKj8pYDsKICAgICAgfTsKICAgICAgY29uc3Qgbm9kb3QgPSBvcHRzLmRvdCA/ICIiIDogTk9fRE9UOwogICAgICBjb25zdCBxbWFya05vRG90ID0gb3B0cy5kb3QgPyBRTUFSSyA6IFFNQVJLX05PX0RPVDsKICAgICAgbGV0IHN0YXIgPSBvcHRzLmJhc2ggPT09IHRydWUgPyBnbG9ic3RhcihvcHRzKSA6IFNUQVI7CiAgICAgIGlmIChvcHRzLmNhcHR1cmUpIHsKICAgICAgICBzdGFyID0gYCgke3N0YXJ9KWA7CiAgICAgIH0KICAgICAgaWYgKHR5cGVvZiBvcHRzLm5vZXh0ID09PSAiYm9vbGVhbiIpIHsKICAgICAgICBvcHRzLm5vZXh0Z2xvYiA9IG9wdHMubm9leHQ7CiAgICAgIH0KICAgICAgY29uc3Qgc3RhdGUgPSB7CiAgICAgICAgaW5wdXQsCiAgICAgICAgaW5kZXg6IC0xLAogICAgICAgIHN0YXJ0OiAwLAogICAgICAgIGRvdDogb3B0cy5kb3QgPT09IHRydWUsCiAgICAgICAgY29uc3VtZWQ6ICIiLAogICAgICAgIG91dHB1dDogIiIsCiAgICAgICAgcHJlZml4OiAiIiwKICAgICAgICBiYWNrdHJhY2s6IGZhbHNlLAogICAgICAgIG5lZ2F0ZWQ6IGZhbHNlLAogICAgICAgIGJyYWNrZXRzOiAwLAogICAgICAgIGJyYWNlczogMCwKICAgICAgICBwYXJlbnM6IDAsCiAgICAgICAgcXVvdGVzOiAwLAogICAgICAgIGdsb2JzdGFyOiBmYWxzZSwKICAgICAgICB0b2tlbnMKICAgICAgfTsKICAgICAgaW5wdXQgPSB1dGlscy5yZW1vdmVQcmVmaXgoaW5wdXQsIHN0YXRlKTsKICAgICAgbGVuID0gaW5wdXQubGVuZ3RoOwogICAgICBjb25zdCBleHRnbG9icyA9IFtdOwogICAgICBjb25zdCBicmFjZXMgPSBbXTsKICAgICAgY29uc3Qgc3RhY2sgPSBbXTsKICAgICAgbGV0IHByZXYgPSBib3M7CiAgICAgIGxldCB2YWx1ZTsKICAgICAgY29uc3QgZW9zID0gKCkgPT4gc3RhdGUuaW5kZXggPT09IGxlbiAtIDE7CiAgICAgIGNvbnN0IHBlZWsgPSBzdGF0ZS5wZWVrID0gKG4gPSAxKSA9PiBpbnB1dFtzdGF0ZS5pbmRleCArIG5dOwogICAgICBjb25zdCBhZHZhbmNlID0gc3RhdGUuYWR2YW5jZSA9ICgpID0+IGlucHV0Wysrc3RhdGUuaW5kZXhdIHx8ICIiOwogICAgICBjb25zdCByZW1haW5pbmcgPSAoKSA9PiBpbnB1dC5zbGljZShzdGF0ZS5pbmRleCArIDEpOwogICAgICBjb25zdCBjb25zdW1lID0gKHZhbHVlMiA9ICIiLCBudW0gPSAwKSA9PiB7CiAgICAgICAgc3RhdGUuY29uc3VtZWQgKz0gdmFsdWUyOwogICAgICAgIHN0YXRlLmluZGV4ICs9IG51bTsKICAgICAgfTsKICAgICAgY29uc3QgYXBwZW5kID0gKHRva2VuKSA9PiB7CiAgICAgICAgc3RhdGUub3V0cHV0ICs9IHRva2VuLm91dHB1dCAhPSBudWxsID8gdG9rZW4ub3V0cHV0IDogdG9rZW4udmFsdWU7CiAgICAgICAgY29uc3VtZSh0b2tlbi52YWx1ZSk7CiAgICAgIH07CiAgICAgIGNvbnN0IG5lZ2F0ZSA9ICgpID0+IHsKICAgICAgICBsZXQgY291bnQgPSAxOwogICAgICAgIHdoaWxlIChwZWVrKCkgPT09ICIhIiAmJiAocGVlaygyKSAhPT0gIigiIHx8IHBlZWsoMykgPT09ICI/IikpIHsKICAgICAgICAgIGFkdmFuY2UoKTsKICAgICAgICAgIHN0YXRlLnN0YXJ0Kys7CiAgICAgICAgICBjb3VudCsrOwogICAgICAgIH0KICAgICAgICBpZiAoY291bnQgJSAyID09PSAwKSB7CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfQogICAgICAgIHN0YXRlLm5lZ2F0ZWQgPSB0cnVlOwogICAgICAgIHN0YXRlLnN0YXJ0Kys7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH07CiAgICAgIGNvbnN0IGluY3JlbWVudCA9ICh0eXBlKSA9PiB7CiAgICAgICAgc3RhdGVbdHlwZV0rKzsKICAgICAgICBzdGFjay5wdXNoKHR5cGUpOwogICAgICB9OwogICAgICBjb25zdCBkZWNyZW1lbnQgPSAodHlwZSkgPT4gewogICAgICAgIHN0YXRlW3R5cGVdLS07CiAgICAgICAgc3RhY2sucG9wKCk7CiAgICAgIH07CiAgICAgIGNvbnN0IHB1c2ggPSAodG9rKSA9PiB7CiAgICAgICAgaWYgKHByZXYudHlwZSA9PT0gImdsb2JzdGFyIikgewogICAgICAgICAgY29uc3QgaXNCcmFjZSA9IHN0YXRlLmJyYWNlcyA+IDAgJiYgKHRvay50eXBlID09PSAiY29tbWEiIHx8IHRvay50eXBlID09PSAiYnJhY2UiKTsKICAgICAgICAgIGNvbnN0IGlzRXh0Z2xvYiA9IHRvay5leHRnbG9iID09PSB0cnVlIHx8IGV4dGdsb2JzLmxlbmd0aCAmJiAodG9rLnR5cGUgPT09ICJwaXBlIiB8fCB0b2sudHlwZSA9PT0gInBhcmVuIik7CiAgICAgICAgICBpZiAodG9rLnR5cGUgIT09ICJzbGFzaCIgJiYgdG9rLnR5cGUgIT09ICJwYXJlbiIgJiYgIWlzQnJhY2UgJiYgIWlzRXh0Z2xvYikgewogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBzdGF0ZS5vdXRwdXQuc2xpY2UoMCwgLXByZXYub3V0cHV0Lmxlbmd0aCk7CiAgICAgICAgICAgIHByZXYudHlwZSA9ICJzdGFyIjsKICAgICAgICAgICAgcHJldi52YWx1ZSA9ICIqIjsKICAgICAgICAgICAgcHJldi5vdXRwdXQgPSBzdGFyOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gcHJldi5vdXRwdXQ7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChleHRnbG9icy5sZW5ndGggJiYgdG9rLnR5cGUgIT09ICJwYXJlbiIpIHsKICAgICAgICAgIGV4dGdsb2JzW2V4dGdsb2JzLmxlbmd0aCAtIDFdLmlubmVyICs9IHRvay52YWx1ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHRvay52YWx1ZSB8fCB0b2sub3V0cHV0KSBhcHBlbmQodG9rKTsKICAgICAgICBpZiAocHJldiAmJiBwcmV2LnR5cGUgPT09ICJ0ZXh0IiAmJiB0b2sudHlwZSA9PT0gInRleHQiKSB7CiAgICAgICAgICBwcmV2Lm91dHB1dCA9IChwcmV2Lm91dHB1dCB8fCBwcmV2LnZhbHVlKSArIHRvay52YWx1ZTsKICAgICAgICAgIHByZXYudmFsdWUgKz0gdG9rLnZhbHVlOwogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICB0b2sucHJldiA9IHByZXY7CiAgICAgICAgdG9rZW5zLnB1c2godG9rKTsKICAgICAgICBwcmV2ID0gdG9rOwogICAgICB9OwogICAgICBjb25zdCBleHRnbG9iT3BlbiA9ICh0eXBlLCB2YWx1ZTIpID0+IHsKICAgICAgICBjb25zdCB0b2tlbiA9IHsgLi4uRVhUR0xPQl9DSEFSU1t2YWx1ZTJdLCBjb25kaXRpb25zOiAxLCBpbm5lcjogIiIgfTsKICAgICAgICB0b2tlbi5wcmV2ID0gcHJldjsKICAgICAgICB0b2tlbi5wYXJlbnMgPSBzdGF0ZS5wYXJlbnM7CiAgICAgICAgdG9rZW4ub3V0cHV0ID0gc3RhdGUub3V0cHV0OwogICAgICAgIGNvbnN0IG91dHB1dCA9IChvcHRzLmNhcHR1cmUgPyAiKCIgOiAiIikgKyB0b2tlbi5vcGVuOwogICAgICAgIGluY3JlbWVudCgicGFyZW5zIik7CiAgICAgICAgcHVzaCh7IHR5cGUsIHZhbHVlOiB2YWx1ZTIsIG91dHB1dDogc3RhdGUub3V0cHV0ID8gIiIgOiBPTkVfQ0hBUiB9KTsKICAgICAgICBwdXNoKHsgdHlwZTogInBhcmVuIiwgZXh0Z2xvYjogdHJ1ZSwgdmFsdWU6IGFkdmFuY2UoKSwgb3V0cHV0IH0pOwogICAgICAgIGV4dGdsb2JzLnB1c2godG9rZW4pOwogICAgICB9OwogICAgICBjb25zdCBleHRnbG9iQ2xvc2UgPSAodG9rZW4pID0+IHsKICAgICAgICBsZXQgb3V0cHV0ID0gdG9rZW4uY2xvc2UgKyAob3B0cy5jYXB0dXJlID8gIikiIDogIiIpOwogICAgICAgIGxldCByZXN0OwogICAgICAgIGlmICh0b2tlbi50eXBlID09PSAibmVnYXRlIikgewogICAgICAgICAgbGV0IGV4dGdsb2JTdGFyID0gc3RhcjsKICAgICAgICAgIGlmICh0b2tlbi5pbm5lciAmJiB0b2tlbi5pbm5lci5sZW5ndGggPiAxICYmIHRva2VuLmlubmVyLmluY2x1ZGVzKCIvIikpIHsKICAgICAgICAgICAgZXh0Z2xvYlN0YXIgPSBnbG9ic3RhcihvcHRzKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChleHRnbG9iU3RhciAhPT0gc3RhciB8fCBlb3MoKSB8fCAvXlwpKyQvLnRlc3QocmVtYWluaW5nKCkpKSB7CiAgICAgICAgICAgIG91dHB1dCA9IHRva2VuLmNsb3NlID0gYCkkKSkke2V4dGdsb2JTdGFyfWA7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAodG9rZW4uaW5uZXIuaW5jbHVkZXMoIioiKSAmJiAocmVzdCA9IHJlbWFpbmluZygpKSAmJiAvXlwuW15cXC8uXSskLy50ZXN0KHJlc3QpKSB7CiAgICAgICAgICAgIGNvbnN0IGV4cHJlc3Npb24gPSBwYXJzZShyZXN0LCB7IC4uLm9wdGlvbnMsIGZhc3RwYXRoczogZmFsc2UgfSkub3V0cHV0OwogICAgICAgICAgICBvdXRwdXQgPSB0b2tlbi5jbG9zZSA9IGApJHtleHByZXNzaW9ufSkke2V4dGdsb2JTdGFyfSlgOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHRva2VuLnByZXYudHlwZSA9PT0gImJvcyIpIHsKICAgICAgICAgICAgc3RhdGUubmVnYXRlZEV4dGdsb2IgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBwdXNoKHsgdHlwZTogInBhcmVuIiwgZXh0Z2xvYjogdHJ1ZSwgdmFsdWUsIG91dHB1dCB9KTsKICAgICAgICBkZWNyZW1lbnQoInBhcmVucyIpOwogICAgICB9OwogICAgICBpZiAob3B0cy5mYXN0cGF0aHMgIT09IGZhbHNlICYmICEvKF5bKiFdfFsvKClbXF17fSJdKS8udGVzdChpbnB1dCkpIHsKICAgICAgICBsZXQgYmFja3NsYXNoZXMgPSBmYWxzZTsKICAgICAgICBsZXQgb3V0cHV0ID0gaW5wdXQucmVwbGFjZShSRUdFWF9TUEVDSUFMX0NIQVJTX0JBQ0tSRUYsIChtLCBlc2MsIGNoYXJzLCBmaXJzdCwgcmVzdCwgaW5kZXgpID0+IHsKICAgICAgICAgIGlmIChmaXJzdCA9PT0gIlxcIikgewogICAgICAgICAgICBiYWNrc2xhc2hlcyA9IHRydWU7CiAgICAgICAgICAgIHJldHVybiBtOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGZpcnN0ID09PSAiPyIpIHsKICAgICAgICAgICAgaWYgKGVzYykgewogICAgICAgICAgICAgIHJldHVybiBlc2MgKyBmaXJzdCArIChyZXN0ID8gUU1BUksucmVwZWF0KHJlc3QubGVuZ3RoKSA6ICIiKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoaW5kZXggPT09IDApIHsKICAgICAgICAgICAgICByZXR1cm4gcW1hcmtOb0RvdCArIChyZXN0ID8gUU1BUksucmVwZWF0KHJlc3QubGVuZ3RoKSA6ICIiKTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gUU1BUksucmVwZWF0KGNoYXJzLmxlbmd0aCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZmlyc3QgPT09ICIuIikgewogICAgICAgICAgICByZXR1cm4gRE9UX0xJVEVSQUwucmVwZWF0KGNoYXJzLmxlbmd0aCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZmlyc3QgPT09ICIqIikgewogICAgICAgICAgICBpZiAoZXNjKSB7CiAgICAgICAgICAgICAgcmV0dXJuIGVzYyArIGZpcnN0ICsgKHJlc3QgPyBzdGFyIDogIiIpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBzdGFyOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIGVzYyA/IG0gOiBgXFwke219YDsKICAgICAgICB9KTsKICAgICAgICBpZiAoYmFja3NsYXNoZXMgPT09IHRydWUpIHsKICAgICAgICAgIGlmIChvcHRzLnVuZXNjYXBlID09PSB0cnVlKSB7CiAgICAgICAgICAgIG91dHB1dCA9IG91dHB1dC5yZXBsYWNlKC9cXC9nLCAiIik7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBvdXRwdXQgPSBvdXRwdXQucmVwbGFjZSgvXFwrL2csIChtKSA9PiB7CiAgICAgICAgICAgICAgcmV0dXJuIG0ubGVuZ3RoICUgMiA9PT0gMCA/ICJcXFxcIiA6IG0gPyAiXFwiIDogIiI7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAob3V0cHV0ID09PSBpbnB1dCAmJiBvcHRzLmNvbnRhaW5zID09PSB0cnVlKSB7CiAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBpbnB1dDsKICAgICAgICAgIHJldHVybiBzdGF0ZTsKICAgICAgICB9CiAgICAgICAgc3RhdGUub3V0cHV0ID0gdXRpbHMud3JhcE91dHB1dChvdXRwdXQsIHN0YXRlLCBvcHRpb25zKTsKICAgICAgICByZXR1cm4gc3RhdGU7CiAgICAgIH0KICAgICAgd2hpbGUgKCFlb3MoKSkgewogICAgICAgIHZhbHVlID0gYWR2YW5jZSgpOwogICAgICAgIGlmICh2YWx1ZSA9PT0gIlwwIikgewogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSA9PT0gIlxcIikgewogICAgICAgICAgY29uc3QgbmV4dCA9IHBlZWsoKTsKICAgICAgICAgIGlmIChuZXh0ID09PSAiLyIgJiYgb3B0cy5iYXNoICE9PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKG5leHQgPT09ICIuIiB8fCBuZXh0ID09PSAiOyIpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoIW5leHQpIHsKICAgICAgICAgICAgdmFsdWUgKz0gIlxcIjsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgbWF0Y2ggPSAvXlxcKy8uZXhlYyhyZW1haW5pbmcoKSk7CiAgICAgICAgICBsZXQgc2xhc2hlcyA9IDA7CiAgICAgICAgICBpZiAobWF0Y2ggJiYgbWF0Y2hbMF0ubGVuZ3RoID4gMikgewogICAgICAgICAgICBzbGFzaGVzID0gbWF0Y2hbMF0ubGVuZ3RoOwogICAgICAgICAgICBzdGF0ZS5pbmRleCArPSBzbGFzaGVzOwogICAgICAgICAgICBpZiAoc2xhc2hlcyAlIDIgIT09IDApIHsKICAgICAgICAgICAgICB2YWx1ZSArPSAiXFwiOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAob3B0cy51bmVzY2FwZSA9PT0gdHJ1ZSkgewogICAgICAgICAgICB2YWx1ZSA9IGFkdmFuY2UoKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHZhbHVlICs9IGFkdmFuY2UoKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChzdGF0ZS5icmFja2V0cyA9PT0gMCkgewogICAgICAgICAgICBwdXNoKHsgdHlwZTogInRleHQiLCB2YWx1ZSB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChzdGF0ZS5icmFja2V0cyA+IDAgJiYgKHZhbHVlICE9PSAiXSIgfHwgcHJldi52YWx1ZSA9PT0gIlsiIHx8IHByZXYudmFsdWUgPT09ICJbXiIpKSB7CiAgICAgICAgICBpZiAob3B0cy5wb3NpeCAhPT0gZmFsc2UgJiYgdmFsdWUgPT09ICI6IikgewogICAgICAgICAgICBjb25zdCBpbm5lciA9IHByZXYudmFsdWUuc2xpY2UoMSk7CiAgICAgICAgICAgIGlmIChpbm5lci5pbmNsdWRlcygiWyIpKSB7CiAgICAgICAgICAgICAgcHJldi5wb3NpeCA9IHRydWU7CiAgICAgICAgICAgICAgaWYgKGlubmVyLmluY2x1ZGVzKCI6IikpIHsKICAgICAgICAgICAgICAgIGNvbnN0IGlkeCA9IHByZXYudmFsdWUubGFzdEluZGV4T2YoIlsiKTsKICAgICAgICAgICAgICAgIGNvbnN0IHByZSA9IHByZXYudmFsdWUuc2xpY2UoMCwgaWR4KTsKICAgICAgICAgICAgICAgIGNvbnN0IHJlc3QyID0gcHJldi52YWx1ZS5zbGljZShpZHggKyAyKTsKICAgICAgICAgICAgICAgIGNvbnN0IHBvc2l4ID0gUE9TSVhfUkVHRVhfU09VUkNFW3Jlc3QyXTsKICAgICAgICAgICAgICAgIGlmIChwb3NpeCkgewogICAgICAgICAgICAgICAgICBwcmV2LnZhbHVlID0gcHJlICsgcG9zaXg7CiAgICAgICAgICAgICAgICAgIHN0YXRlLmJhY2t0cmFjayA9IHRydWU7CiAgICAgICAgICAgICAgICAgIGFkdmFuY2UoKTsKICAgICAgICAgICAgICAgICAgaWYgKCFib3Mub3V0cHV0ICYmIHRva2Vucy5pbmRleE9mKHByZXYpID09PSAxKSB7CiAgICAgICAgICAgICAgICAgICAgYm9zLm91dHB1dCA9IE9ORV9DSEFSOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKHZhbHVlID09PSAiWyIgJiYgcGVlaygpICE9PSAiOiIgfHwgdmFsdWUgPT09ICItIiAmJiBwZWVrKCkgPT09ICJdIikgewogICAgICAgICAgICB2YWx1ZSA9IGBcXCR7dmFsdWV9YDsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh2YWx1ZSA9PT0gIl0iICYmIChwcmV2LnZhbHVlID09PSAiWyIgfHwgcHJldi52YWx1ZSA9PT0gIlteIikpIHsKICAgICAgICAgICAgdmFsdWUgPSBgXFwke3ZhbHVlfWA7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAob3B0cy5wb3NpeCA9PT0gdHJ1ZSAmJiB2YWx1ZSA9PT0gIiEiICYmIHByZXYudmFsdWUgPT09ICJbIikgewogICAgICAgICAgICB2YWx1ZSA9ICJeIjsKICAgICAgICAgIH0KICAgICAgICAgIHByZXYudmFsdWUgKz0gdmFsdWU7CiAgICAgICAgICBhcHBlbmQoeyB2YWx1ZSB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAoc3RhdGUucXVvdGVzID09PSAxICYmIHZhbHVlICE9PSAnIicpIHsKICAgICAgICAgIHZhbHVlID0gdXRpbHMuZXNjYXBlUmVnZXgodmFsdWUpOwogICAgICAgICAgcHJldi52YWx1ZSArPSB2YWx1ZTsKICAgICAgICAgIGFwcGVuZCh7IHZhbHVlIH0pOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSA9PT0gJyInKSB7CiAgICAgICAgICBzdGF0ZS5xdW90ZXMgPSBzdGF0ZS5xdW90ZXMgPT09IDEgPyAwIDogMTsKICAgICAgICAgIGlmIChvcHRzLmtlZXBRdW90ZXMgPT09IHRydWUpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUgfSk7CiAgICAgICAgICB9CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiKCIpIHsKICAgICAgICAgIGluY3JlbWVudCgicGFyZW5zIik7CiAgICAgICAgICBwdXNoKHsgdHlwZTogInBhcmVuIiwgdmFsdWUgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiKSIpIHsKICAgICAgICAgIGlmIChzdGF0ZS5wYXJlbnMgPT09IDAgJiYgb3B0cy5zdHJpY3RCcmFja2V0cyA9PT0gdHJ1ZSkgewogICAgICAgICAgICB0aHJvdyBuZXcgU3ludGF4RXJyb3Ioc3ludGF4RXJyb3IoIm9wZW5pbmciLCAiKCIpKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGV4dGdsb2IgPSBleHRnbG9ic1tleHRnbG9icy5sZW5ndGggLSAxXTsKICAgICAgICAgIGlmIChleHRnbG9iICYmIHN0YXRlLnBhcmVucyA9PT0gZXh0Z2xvYi5wYXJlbnMgKyAxKSB7CiAgICAgICAgICAgIGV4dGdsb2JDbG9zZShleHRnbG9icy5wb3AoKSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJwYXJlbiIsIHZhbHVlLCBvdXRwdXQ6IHN0YXRlLnBhcmVucyA/ICIpIiA6ICJcXCkiIH0pOwogICAgICAgICAgZGVjcmVtZW50KCJwYXJlbnMiKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJbIikgewogICAgICAgICAgaWYgKG9wdHMubm9icmFja2V0ID09PSB0cnVlIHx8ICFyZW1haW5pbmcoKS5pbmNsdWRlcygiXSIpKSB7CiAgICAgICAgICAgIGlmIChvcHRzLm5vYnJhY2tldCAhPT0gdHJ1ZSAmJiBvcHRzLnN0cmljdEJyYWNrZXRzID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgdGhyb3cgbmV3IFN5bnRheEVycm9yKHN5bnRheEVycm9yKCJjbG9zaW5nIiwgIl0iKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdmFsdWUgPSBgXFwke3ZhbHVlfWA7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBpbmNyZW1lbnQoImJyYWNrZXRzIik7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogImJyYWNrZXQiLCB2YWx1ZSB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJdIikgewogICAgICAgICAgaWYgKG9wdHMubm9icmFja2V0ID09PSB0cnVlIHx8IHByZXYgJiYgcHJldi50eXBlID09PSAiYnJhY2tldCIgJiYgcHJldi52YWx1ZS5sZW5ndGggPT09IDEpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUsIG91dHB1dDogYFxcJHt2YWx1ZX1gIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChzdGF0ZS5icmFja2V0cyA9PT0gMCkgewogICAgICAgICAgICBpZiAob3B0cy5zdHJpY3RCcmFja2V0cyA9PT0gdHJ1ZSkgewogICAgICAgICAgICAgIHRocm93IG5ldyBTeW50YXhFcnJvcihzeW50YXhFcnJvcigib3BlbmluZyIsICJbIikpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAidGV4dCIsIHZhbHVlLCBvdXRwdXQ6IGBcXCR7dmFsdWV9YCB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBkZWNyZW1lbnQoImJyYWNrZXRzIik7CiAgICAgICAgICBjb25zdCBwcmV2VmFsdWUgPSBwcmV2LnZhbHVlLnNsaWNlKDEpOwogICAgICAgICAgaWYgKHByZXYucG9zaXggIT09IHRydWUgJiYgcHJldlZhbHVlWzBdID09PSAiXiIgJiYgIXByZXZWYWx1ZS5pbmNsdWRlcygiLyIpKSB7CiAgICAgICAgICAgIHZhbHVlID0gYC8ke3ZhbHVlfWA7CiAgICAgICAgICB9CiAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgYXBwZW5kKHsgdmFsdWUgfSk7CiAgICAgICAgICBpZiAob3B0cy5saXRlcmFsQnJhY2tldHMgPT09IGZhbHNlIHx8IHV0aWxzLmhhc1JlZ2V4Q2hhcnMocHJldlZhbHVlKSkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGVzY2FwZWQgPSB1dGlscy5lc2NhcGVSZWdleChwcmV2LnZhbHVlKTsKICAgICAgICAgIHN0YXRlLm91dHB1dCA9IHN0YXRlLm91dHB1dC5zbGljZSgwLCAtcHJldi52YWx1ZS5sZW5ndGgpOwogICAgICAgICAgaWYgKG9wdHMubGl0ZXJhbEJyYWNrZXRzID09PSB0cnVlKSB7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCArPSBlc2NhcGVkOwogICAgICAgICAgICBwcmV2LnZhbHVlID0gZXNjYXBlZDsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBwcmV2LnZhbHVlID0gYCgke2NhcHR1cmV9JHtlc2NhcGVkfXwke3ByZXYudmFsdWV9KWA7CiAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gcHJldi52YWx1ZTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJ7IiAmJiBvcHRzLm5vYnJhY2UgIT09IHRydWUpIHsKICAgICAgICAgIGluY3JlbWVudCgiYnJhY2VzIik7CiAgICAgICAgICBjb25zdCBvcGVuID0gewogICAgICAgICAgICB0eXBlOiAiYnJhY2UiLAogICAgICAgICAgICB2YWx1ZSwKICAgICAgICAgICAgb3V0cHV0OiAiKCIsCiAgICAgICAgICAgIG91dHB1dEluZGV4OiBzdGF0ZS5vdXRwdXQubGVuZ3RoLAogICAgICAgICAgICB0b2tlbnNJbmRleDogc3RhdGUudG9rZW5zLmxlbmd0aAogICAgICAgICAgfTsKICAgICAgICAgIGJyYWNlcy5wdXNoKG9wZW4pOwogICAgICAgICAgcHVzaChvcGVuKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJ9IikgewogICAgICAgICAgY29uc3QgYnJhY2UgPSBicmFjZXNbYnJhY2VzLmxlbmd0aCAtIDFdOwogICAgICAgICAgaWYgKG9wdHMubm9icmFjZSA9PT0gdHJ1ZSB8fCAhYnJhY2UpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUsIG91dHB1dDogdmFsdWUgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgbGV0IG91dHB1dCA9ICIpIjsKICAgICAgICAgIGlmIChicmFjZS5kb3RzID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnN0IGFyciA9IHRva2Vucy5zbGljZSgpOwogICAgICAgICAgICBjb25zdCByYW5nZSA9IFtdOwogICAgICAgICAgICBmb3IgKGxldCBpID0gYXJyLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgICAgICAgdG9rZW5zLnBvcCgpOwogICAgICAgICAgICAgIGlmIChhcnJbaV0udHlwZSA9PT0gImJyYWNlIikgewogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChhcnJbaV0udHlwZSAhPT0gImRvdHMiKSB7CiAgICAgICAgICAgICAgICByYW5nZS51bnNoaWZ0KGFycltpXS52YWx1ZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIG91dHB1dCA9IGV4cGFuZFJhbmdlKHJhbmdlLCBvcHRzKTsKICAgICAgICAgICAgc3RhdGUuYmFja3RyYWNrID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChicmFjZS5jb21tYSAhPT0gdHJ1ZSAmJiBicmFjZS5kb3RzICE9PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnN0IG91dCA9IHN0YXRlLm91dHB1dC5zbGljZSgwLCBicmFjZS5vdXRwdXRJbmRleCk7CiAgICAgICAgICAgIGNvbnN0IHRva3MgPSBzdGF0ZS50b2tlbnMuc2xpY2UoYnJhY2UudG9rZW5zSW5kZXgpOwogICAgICAgICAgICBicmFjZS52YWx1ZSA9IGJyYWNlLm91dHB1dCA9ICJcXHsiOwogICAgICAgICAgICB2YWx1ZSA9IG91dHB1dCA9ICJcXH0iOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBvdXQ7CiAgICAgICAgICAgIGZvciAoY29uc3QgdCBvZiB0b2tzKSB7CiAgICAgICAgICAgICAgc3RhdGUub3V0cHV0ICs9IHQub3V0cHV0IHx8IHQudmFsdWU7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIHB1c2goeyB0eXBlOiAiYnJhY2UiLCB2YWx1ZSwgb3V0cHV0IH0pOwogICAgICAgICAgZGVjcmVtZW50KCJicmFjZXMiKTsKICAgICAgICAgIGJyYWNlcy5wb3AoKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICJ8IikgewogICAgICAgICAgaWYgKGV4dGdsb2JzLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgZXh0Z2xvYnNbZXh0Z2xvYnMubGVuZ3RoIC0gMV0uY29uZGl0aW9ucysrOwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiLCIpIHsKICAgICAgICAgIGxldCBvdXRwdXQgPSB2YWx1ZTsKICAgICAgICAgIGNvbnN0IGJyYWNlID0gYnJhY2VzW2JyYWNlcy5sZW5ndGggLSAxXTsKICAgICAgICAgIGlmIChicmFjZSAmJiBzdGFja1tzdGFjay5sZW5ndGggLSAxXSA9PT0gImJyYWNlcyIpIHsKICAgICAgICAgICAgYnJhY2UuY29tbWEgPSB0cnVlOwogICAgICAgICAgICBvdXRwdXQgPSAifCI7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogImNvbW1hIiwgdmFsdWUsIG91dHB1dCB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICIvIikgewogICAgICAgICAgaWYgKHByZXYudHlwZSA9PT0gImRvdCIgJiYgc3RhdGUuaW5kZXggPT09IHN0YXRlLnN0YXJ0ICsgMSkgewogICAgICAgICAgICBzdGF0ZS5zdGFydCA9IHN0YXRlLmluZGV4ICsgMTsKICAgICAgICAgICAgc3RhdGUuY29uc3VtZWQgPSAiIjsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ID0gIiI7CiAgICAgICAgICAgIHRva2Vucy5wb3AoKTsKICAgICAgICAgICAgcHJldiA9IGJvczsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogInNsYXNoIiwgdmFsdWUsIG91dHB1dDogU0xBU0hfTElURVJBTCB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICIuIikgewogICAgICAgICAgaWYgKHN0YXRlLmJyYWNlcyA+IDAgJiYgcHJldi50eXBlID09PSAiZG90IikgewogICAgICAgICAgICBpZiAocHJldi52YWx1ZSA9PT0gIi4iKSBwcmV2Lm91dHB1dCA9IERPVF9MSVRFUkFMOwogICAgICAgICAgICBjb25zdCBicmFjZSA9IGJyYWNlc1ticmFjZXMubGVuZ3RoIC0gMV07CiAgICAgICAgICAgIHByZXYudHlwZSA9ICJkb3RzIjsKICAgICAgICAgICAgcHJldi5vdXRwdXQgKz0gdmFsdWU7CiAgICAgICAgICAgIHByZXYudmFsdWUgKz0gdmFsdWU7CiAgICAgICAgICAgIGJyYWNlLmRvdHMgPSB0cnVlOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChzdGF0ZS5icmFjZXMgKyBzdGF0ZS5wYXJlbnMgPT09IDAgJiYgcHJldi50eXBlICE9PSAiYm9zIiAmJiBwcmV2LnR5cGUgIT09ICJzbGFzaCIpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUsIG91dHB1dDogRE9UX0xJVEVSQUwgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJkb3QiLCB2YWx1ZSwgb3V0cHV0OiBET1RfTElURVJBTCB9KTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICI/IikgewogICAgICAgICAgY29uc3QgaXNHcm91cCA9IHByZXYgJiYgcHJldi52YWx1ZSA9PT0gIigiOwogICAgICAgICAgaWYgKCFpc0dyb3VwICYmIG9wdHMubm9leHRnbG9iICE9PSB0cnVlICYmIHBlZWsoKSA9PT0gIigiICYmIHBlZWsoMikgIT09ICI/IikgewogICAgICAgICAgICBleHRnbG9iT3BlbigicW1hcmsiLCB2YWx1ZSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHByZXYgJiYgcHJldi50eXBlID09PSAicGFyZW4iKSB7CiAgICAgICAgICAgIGNvbnN0IG5leHQgPSBwZWVrKCk7CiAgICAgICAgICAgIGxldCBvdXRwdXQgPSB2YWx1ZTsKICAgICAgICAgICAgaWYgKHByZXYudmFsdWUgPT09ICIoIiAmJiAhL1shPTw6XS8udGVzdChuZXh0KSB8fCBuZXh0ID09PSAiPCIgJiYgIS88KFshPV18XHcrPikvLnRlc3QocmVtYWluaW5nKCkpKSB7CiAgICAgICAgICAgICAgb3V0cHV0ID0gYFxcJHt2YWx1ZX1gOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAidGV4dCIsIHZhbHVlLCBvdXRwdXQgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKG9wdHMuZG90ICE9PSB0cnVlICYmIChwcmV2LnR5cGUgPT09ICJzbGFzaCIgfHwgcHJldi50eXBlID09PSAiYm9zIikpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJxbWFyayIsIHZhbHVlLCBvdXRwdXQ6IFFNQVJLX05PX0RPVCB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBwdXNoKHsgdHlwZTogInFtYXJrIiwgdmFsdWUsIG91dHB1dDogUU1BUksgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiISIpIHsKICAgICAgICAgIGlmIChvcHRzLm5vZXh0Z2xvYiAhPT0gdHJ1ZSAmJiBwZWVrKCkgPT09ICIoIikgewogICAgICAgICAgICBpZiAocGVlaygyKSAhPT0gIj8iIHx8ICEvWyE9PDpdLy50ZXN0KHBlZWsoMykpKSB7CiAgICAgICAgICAgICAgZXh0Z2xvYk9wZW4oIm5lZ2F0ZSIsIHZhbHVlKTsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYgKG9wdHMubm9uZWdhdGUgIT09IHRydWUgJiYgc3RhdGUuaW5kZXggPT09IDApIHsKICAgICAgICAgICAgbmVnYXRlKCk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAodmFsdWUgPT09ICIrIikgewogICAgICAgICAgaWYgKG9wdHMubm9leHRnbG9iICE9PSB0cnVlICYmIHBlZWsoKSA9PT0gIigiICYmIHBlZWsoMikgIT09ICI/IikgewogICAgICAgICAgICBleHRnbG9iT3BlbigicGx1cyIsIHZhbHVlKTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAocHJldiAmJiBwcmV2LnZhbHVlID09PSAiKCIgfHwgb3B0cy5yZWdleCA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJwbHVzIiwgdmFsdWUsIG91dHB1dDogUExVU19MSVRFUkFMIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwcmV2ICYmIChwcmV2LnR5cGUgPT09ICJicmFja2V0IiB8fCBwcmV2LnR5cGUgPT09ICJwYXJlbiIgfHwgcHJldi50eXBlID09PSAiYnJhY2UiKSB8fCBzdGF0ZS5wYXJlbnMgPiAwKSB7CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAicGx1cyIsIHZhbHVlIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIHB1c2goeyB0eXBlOiAicGx1cyIsIHZhbHVlOiBQTFVTX0xJVEVSQUwgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID09PSAiQCIpIHsKICAgICAgICAgIGlmIChvcHRzLm5vZXh0Z2xvYiAhPT0gdHJ1ZSAmJiBwZWVrKCkgPT09ICIoIiAmJiBwZWVrKDIpICE9PSAiPyIpIHsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJhdCIsIGV4dGdsb2I6IHRydWUsIHZhbHVlLCBvdXRwdXQ6ICIiIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIHB1c2goeyB0eXBlOiAidGV4dCIsIHZhbHVlIH0pOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSAhPT0gIioiKSB7CiAgICAgICAgICBpZiAodmFsdWUgPT09ICIkIiB8fCB2YWx1ZSA9PT0gIl4iKSB7CiAgICAgICAgICAgIHZhbHVlID0gYFxcJHt2YWx1ZX1gOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgbWF0Y2ggPSBSRUdFWF9OT05fU1BFQ0lBTF9DSEFSUy5leGVjKHJlbWFpbmluZygpKTsKICAgICAgICAgIGlmIChtYXRjaCkgewogICAgICAgICAgICB2YWx1ZSArPSBtYXRjaFswXTsKICAgICAgICAgICAgc3RhdGUuaW5kZXggKz0gbWF0Y2hbMF0ubGVuZ3RoOwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh7IHR5cGU6ICJ0ZXh0IiwgdmFsdWUgfSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHByZXYgJiYgKHByZXYudHlwZSA9PT0gImdsb2JzdGFyIiB8fCBwcmV2LnN0YXIgPT09IHRydWUpKSB7CiAgICAgICAgICBwcmV2LnR5cGUgPSAic3RhciI7CiAgICAgICAgICBwcmV2LnN0YXIgPSB0cnVlOwogICAgICAgICAgcHJldi52YWx1ZSArPSB2YWx1ZTsKICAgICAgICAgIHByZXYub3V0cHV0ID0gc3RhcjsKICAgICAgICAgIHN0YXRlLmJhY2t0cmFjayA9IHRydWU7CiAgICAgICAgICBzdGF0ZS5nbG9ic3RhciA9IHRydWU7CiAgICAgICAgICBjb25zdW1lKHZhbHVlKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBsZXQgcmVzdCA9IHJlbWFpbmluZygpOwogICAgICAgIGlmIChvcHRzLm5vZXh0Z2xvYiAhPT0gdHJ1ZSAmJiAvXlwoW14/XS8udGVzdChyZXN0KSkgewogICAgICAgICAgZXh0Z2xvYk9wZW4oInN0YXIiLCB2YWx1ZSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHByZXYudHlwZSA9PT0gInN0YXIiKSB7CiAgICAgICAgICBpZiAob3B0cy5ub2dsb2JzdGFyID09PSB0cnVlKSB7CiAgICAgICAgICAgIGNvbnN1bWUodmFsdWUpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHByaW9yID0gcHJldi5wcmV2OwogICAgICAgICAgY29uc3QgYmVmb3JlID0gcHJpb3IucHJldjsKICAgICAgICAgIGNvbnN0IGlzU3RhcnQgPSBwcmlvci50eXBlID09PSAic2xhc2giIHx8IHByaW9yLnR5cGUgPT09ICJib3MiOwogICAgICAgICAgY29uc3QgYWZ0ZXJTdGFyID0gYmVmb3JlICYmIChiZWZvcmUudHlwZSA9PT0gInN0YXIiIHx8IGJlZm9yZS50eXBlID09PSAiZ2xvYnN0YXIiKTsKICAgICAgICAgIGlmIChvcHRzLmJhc2ggPT09IHRydWUgJiYgKCFpc1N0YXJ0IHx8IHJlc3RbMF0gJiYgcmVzdFswXSAhPT0gIi8iKSkgewogICAgICAgICAgICBwdXNoKHsgdHlwZTogInN0YXIiLCB2YWx1ZSwgb3V0cHV0OiAiIiB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBpc0JyYWNlID0gc3RhdGUuYnJhY2VzID4gMCAmJiAocHJpb3IudHlwZSA9PT0gImNvbW1hIiB8fCBwcmlvci50eXBlID09PSAiYnJhY2UiKTsKICAgICAgICAgIGNvbnN0IGlzRXh0Z2xvYiA9IGV4dGdsb2JzLmxlbmd0aCAmJiAocHJpb3IudHlwZSA9PT0gInBpcGUiIHx8IHByaW9yLnR5cGUgPT09ICJwYXJlbiIpOwogICAgICAgICAgaWYgKCFpc1N0YXJ0ICYmIHByaW9yLnR5cGUgIT09ICJwYXJlbiIgJiYgIWlzQnJhY2UgJiYgIWlzRXh0Z2xvYikgewogICAgICAgICAgICBwdXNoKHsgdHlwZTogInN0YXIiLCB2YWx1ZSwgb3V0cHV0OiAiIiB9KTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICB3aGlsZSAocmVzdC5zbGljZSgwLCAzKSA9PT0gIi8qKiIpIHsKICAgICAgICAgICAgY29uc3QgYWZ0ZXIgPSBpbnB1dFtzdGF0ZS5pbmRleCArIDRdOwogICAgICAgICAgICBpZiAoYWZ0ZXIgJiYgYWZ0ZXIgIT09ICIvIikgewogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJlc3QgPSByZXN0LnNsaWNlKDMpOwogICAgICAgICAgICBjb25zdW1lKCIvKioiLCAzKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwcmlvci50eXBlID09PSAiYm9zIiAmJiBlb3MoKSkgewogICAgICAgICAgICBwcmV2LnR5cGUgPSAiZ2xvYnN0YXIiOwogICAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgICBwcmV2Lm91dHB1dCA9IGdsb2JzdGFyKG9wdHMpOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBwcmV2Lm91dHB1dDsKICAgICAgICAgICAgc3RhdGUuZ2xvYnN0YXIgPSB0cnVlOwogICAgICAgICAgICBjb25zdW1lKHZhbHVlKTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAocHJpb3IudHlwZSA9PT0gInNsYXNoIiAmJiBwcmlvci5wcmV2LnR5cGUgIT09ICJib3MiICYmICFhZnRlclN0YXIgJiYgZW9zKCkpIHsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ID0gc3RhdGUub3V0cHV0LnNsaWNlKDAsIC0ocHJpb3Iub3V0cHV0ICsgcHJldi5vdXRwdXQpLmxlbmd0aCk7CiAgICAgICAgICAgIHByaW9yLm91dHB1dCA9IGAoPzoke3ByaW9yLm91dHB1dH1gOwogICAgICAgICAgICBwcmV2LnR5cGUgPSAiZ2xvYnN0YXIiOwogICAgICAgICAgICBwcmV2Lm91dHB1dCA9IGdsb2JzdGFyKG9wdHMpICsgKG9wdHMuc3RyaWN0U2xhc2hlcyA/ICIpIiA6ICJ8JCkiKTsKICAgICAgICAgICAgcHJldi52YWx1ZSArPSB2YWx1ZTsKICAgICAgICAgICAgc3RhdGUuZ2xvYnN0YXIgPSB0cnVlOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gcHJpb3Iub3V0cHV0ICsgcHJldi5vdXRwdXQ7CiAgICAgICAgICAgIGNvbnN1bWUodmFsdWUpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwcmlvci50eXBlID09PSAic2xhc2giICYmIHByaW9yLnByZXYudHlwZSAhPT0gImJvcyIgJiYgcmVzdFswXSA9PT0gIi8iKSB7CiAgICAgICAgICAgIGNvbnN0IGVuZCA9IHJlc3RbMV0gIT09IHZvaWQgMCA/ICJ8JCIgOiAiIjsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ID0gc3RhdGUub3V0cHV0LnNsaWNlKDAsIC0ocHJpb3Iub3V0cHV0ICsgcHJldi5vdXRwdXQpLmxlbmd0aCk7CiAgICAgICAgICAgIHByaW9yLm91dHB1dCA9IGAoPzoke3ByaW9yLm91dHB1dH1gOwogICAgICAgICAgICBwcmV2LnR5cGUgPSAiZ2xvYnN0YXIiOwogICAgICAgICAgICBwcmV2Lm91dHB1dCA9IGAke2dsb2JzdGFyKG9wdHMpfSR7U0xBU0hfTElURVJBTH18JHtTTEFTSF9MSVRFUkFMfSR7ZW5kfSlgOwogICAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gcHJpb3Iub3V0cHV0ICsgcHJldi5vdXRwdXQ7CiAgICAgICAgICAgIHN0YXRlLmdsb2JzdGFyID0gdHJ1ZTsKICAgICAgICAgICAgY29uc3VtZSh2YWx1ZSArIGFkdmFuY2UoKSk7CiAgICAgICAgICAgIHB1c2goeyB0eXBlOiAic2xhc2giLCB2YWx1ZTogIi8iLCBvdXRwdXQ6ICIiIH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwcmlvci50eXBlID09PSAiYm9zIiAmJiByZXN0WzBdID09PSAiLyIpIHsKICAgICAgICAgICAgcHJldi50eXBlID0gImdsb2JzdGFyIjsKICAgICAgICAgICAgcHJldi52YWx1ZSArPSB2YWx1ZTsKICAgICAgICAgICAgcHJldi5vdXRwdXQgPSBgKD86Xnwke1NMQVNIX0xJVEVSQUx9fCR7Z2xvYnN0YXIob3B0cyl9JHtTTEFTSF9MSVRFUkFMfSlgOwogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgPSBwcmV2Lm91dHB1dDsKICAgICAgICAgICAgc3RhdGUuZ2xvYnN0YXIgPSB0cnVlOwogICAgICAgICAgICBjb25zdW1lKHZhbHVlICsgYWR2YW5jZSgpKTsKICAgICAgICAgICAgcHVzaCh7IHR5cGU6ICJzbGFzaCIsIHZhbHVlOiAiLyIsIG91dHB1dDogIiIgfSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgc3RhdGUub3V0cHV0ID0gc3RhdGUub3V0cHV0LnNsaWNlKDAsIC1wcmV2Lm91dHB1dC5sZW5ndGgpOwogICAgICAgICAgcHJldi50eXBlID0gImdsb2JzdGFyIjsKICAgICAgICAgIHByZXYub3V0cHV0ID0gZ2xvYnN0YXIob3B0cyk7CiAgICAgICAgICBwcmV2LnZhbHVlICs9IHZhbHVlOwogICAgICAgICAgc3RhdGUub3V0cHV0ICs9IHByZXYub3V0cHV0OwogICAgICAgICAgc3RhdGUuZ2xvYnN0YXIgPSB0cnVlOwogICAgICAgICAgY29uc3VtZSh2YWx1ZSk7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgY29uc3QgdG9rZW4gPSB7IHR5cGU6ICJzdGFyIiwgdmFsdWUsIG91dHB1dDogc3RhciB9OwogICAgICAgIGlmIChvcHRzLmJhc2ggPT09IHRydWUpIHsKICAgICAgICAgIHRva2VuLm91dHB1dCA9ICIuKj8iOwogICAgICAgICAgaWYgKHByZXYudHlwZSA9PT0gImJvcyIgfHwgcHJldi50eXBlID09PSAic2xhc2giKSB7CiAgICAgICAgICAgIHRva2VuLm91dHB1dCA9IG5vZG90ICsgdG9rZW4ub3V0cHV0OwogICAgICAgICAgfQogICAgICAgICAgcHVzaCh0b2tlbik7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHByZXYgJiYgKHByZXYudHlwZSA9PT0gImJyYWNrZXQiIHx8IHByZXYudHlwZSA9PT0gInBhcmVuIikgJiYgb3B0cy5yZWdleCA9PT0gdHJ1ZSkgewogICAgICAgICAgdG9rZW4ub3V0cHV0ID0gdmFsdWU7CiAgICAgICAgICBwdXNoKHRva2VuKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAoc3RhdGUuaW5kZXggPT09IHN0YXRlLnN0YXJ0IHx8IHByZXYudHlwZSA9PT0gInNsYXNoIiB8fCBwcmV2LnR5cGUgPT09ICJkb3QiKSB7CiAgICAgICAgICBpZiAocHJldi50eXBlID09PSAiZG90IikgewogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gTk9fRE9UX1NMQVNIOwogICAgICAgICAgICBwcmV2Lm91dHB1dCArPSBOT19ET1RfU0xBU0g7CiAgICAgICAgICB9IGVsc2UgaWYgKG9wdHMuZG90ID09PSB0cnVlKSB7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCArPSBOT19ET1RTX1NMQVNIOwogICAgICAgICAgICBwcmV2Lm91dHB1dCArPSBOT19ET1RTX1NMQVNIOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc3RhdGUub3V0cHV0ICs9IG5vZG90OwogICAgICAgICAgICBwcmV2Lm91dHB1dCArPSBub2RvdDsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChwZWVrKCkgIT09ICIqIikgewogICAgICAgICAgICBzdGF0ZS5vdXRwdXQgKz0gT05FX0NIQVI7CiAgICAgICAgICAgIHByZXYub3V0cHV0ICs9IE9ORV9DSEFSOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBwdXNoKHRva2VuKTsKICAgICAgfQogICAgICB3aGlsZSAoc3RhdGUuYnJhY2tldHMgPiAwKSB7CiAgICAgICAgaWYgKG9wdHMuc3RyaWN0QnJhY2tldHMgPT09IHRydWUpIHRocm93IG5ldyBTeW50YXhFcnJvcihzeW50YXhFcnJvcigiY2xvc2luZyIsICJdIikpOwogICAgICAgIHN0YXRlLm91dHB1dCA9IHV0aWxzLmVzY2FwZUxhc3Qoc3RhdGUub3V0cHV0LCAiWyIpOwogICAgICAgIGRlY3JlbWVudCgiYnJhY2tldHMiKTsKICAgICAgfQogICAgICB3aGlsZSAoc3RhdGUucGFyZW5zID4gMCkgewogICAgICAgIGlmIChvcHRzLnN0cmljdEJyYWNrZXRzID09PSB0cnVlKSB0aHJvdyBuZXcgU3ludGF4RXJyb3Ioc3ludGF4RXJyb3IoImNsb3NpbmciLCAiKSIpKTsKICAgICAgICBzdGF0ZS5vdXRwdXQgPSB1dGlscy5lc2NhcGVMYXN0KHN0YXRlLm91dHB1dCwgIigiKTsKICAgICAgICBkZWNyZW1lbnQoInBhcmVucyIpOwogICAgICB9CiAgICAgIHdoaWxlIChzdGF0ZS5icmFjZXMgPiAwKSB7CiAgICAgICAgaWYgKG9wdHMuc3RyaWN0QnJhY2tldHMgPT09IHRydWUpIHRocm93IG5ldyBTeW50YXhFcnJvcihzeW50YXhFcnJvcigiY2xvc2luZyIsICJ9IikpOwogICAgICAgIHN0YXRlLm91dHB1dCA9IHV0aWxzLmVzY2FwZUxhc3Qoc3RhdGUub3V0cHV0LCAieyIpOwogICAgICAgIGRlY3JlbWVudCgiYnJhY2VzIik7CiAgICAgIH0KICAgICAgaWYgKG9wdHMuc3RyaWN0U2xhc2hlcyAhPT0gdHJ1ZSAmJiAocHJldi50eXBlID09PSAic3RhciIgfHwgcHJldi50eXBlID09PSAiYnJhY2tldCIpKSB7CiAgICAgICAgcHVzaCh7IHR5cGU6ICJtYXliZV9zbGFzaCIsIHZhbHVlOiAiIiwgb3V0cHV0OiBgJHtTTEFTSF9MSVRFUkFMfT9gIH0pOwogICAgICB9CiAgICAgIGlmIChzdGF0ZS5iYWNrdHJhY2sgPT09IHRydWUpIHsKICAgICAgICBzdGF0ZS5vdXRwdXQgPSAiIjsKICAgICAgICBmb3IgKGNvbnN0IHRva2VuIG9mIHN0YXRlLnRva2VucykgewogICAgICAgICAgc3RhdGUub3V0cHV0ICs9IHRva2VuLm91dHB1dCAhPSBudWxsID8gdG9rZW4ub3V0cHV0IDogdG9rZW4udmFsdWU7CiAgICAgICAgICBpZiAodG9rZW4uc3VmZml4KSB7CiAgICAgICAgICAgIHN0YXRlLm91dHB1dCArPSB0b2tlbi5zdWZmaXg7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBzdGF0ZTsKICAgIH07CiAgICBwYXJzZS5mYXN0cGF0aHMgPSAoaW5wdXQsIG9wdGlvbnMpID0+IHsKICAgICAgY29uc3Qgb3B0cyA9IHsgLi4ub3B0aW9ucyB9OwogICAgICBjb25zdCBtYXggPSB0eXBlb2Ygb3B0cy5tYXhMZW5ndGggPT09ICJudW1iZXIiID8gTWF0aC5taW4oTUFYX0xFTkdUSCwgb3B0cy5tYXhMZW5ndGgpIDogTUFYX0xFTkdUSDsKICAgICAgY29uc3QgbGVuID0gaW5wdXQubGVuZ3RoOwogICAgICBpZiAobGVuID4gbWF4KSB7CiAgICAgICAgdGhyb3cgbmV3IFN5bnRheEVycm9yKGBJbnB1dCBsZW5ndGg6ICR7bGVufSwgZXhjZWVkcyBtYXhpbXVtIGFsbG93ZWQgbGVuZ3RoOiAke21heH1gKTsKICAgICAgfQogICAgICBpbnB1dCA9IFJFUExBQ0VNRU5UU1tpbnB1dF0gfHwgaW5wdXQ7CiAgICAgIGNvbnN0IHsKICAgICAgICBET1RfTElURVJBTCwKICAgICAgICBTTEFTSF9MSVRFUkFMLAogICAgICAgIE9ORV9DSEFSLAogICAgICAgIERPVFNfU0xBU0gsCiAgICAgICAgTk9fRE9ULAogICAgICAgIE5PX0RPVFMsCiAgICAgICAgTk9fRE9UU19TTEFTSCwKICAgICAgICBTVEFSLAogICAgICAgIFNUQVJUX0FOQ0hPUgogICAgICB9ID0gY29uc3RhbnRzLmdsb2JDaGFycyhvcHRzLndpbmRvd3MpOwogICAgICBjb25zdCBub2RvdCA9IG9wdHMuZG90ID8gTk9fRE9UUyA6IE5PX0RPVDsKICAgICAgY29uc3Qgc2xhc2hEb3QgPSBvcHRzLmRvdCA/IE5PX0RPVFNfU0xBU0ggOiBOT19ET1Q7CiAgICAgIGNvbnN0IGNhcHR1cmUgPSBvcHRzLmNhcHR1cmUgPyAiIiA6ICI/OiI7CiAgICAgIGNvbnN0IHN0YXRlID0geyBuZWdhdGVkOiBmYWxzZSwgcHJlZml4OiAiIiB9OwogICAgICBsZXQgc3RhciA9IG9wdHMuYmFzaCA9PT0gdHJ1ZSA/ICIuKj8iIDogU1RBUjsKICAgICAgaWYgKG9wdHMuY2FwdHVyZSkgewogICAgICAgIHN0YXIgPSBgKCR7c3Rhcn0pYDsKICAgICAgfQogICAgICBjb25zdCBnbG9ic3RhciA9IChvcHRzMikgPT4gewogICAgICAgIGlmIChvcHRzMi5ub2dsb2JzdGFyID09PSB0cnVlKSByZXR1cm4gc3RhcjsKICAgICAgICByZXR1cm4gYCgke2NhcHR1cmV9KD86KD8hJHtTVEFSVF9BTkNIT1J9JHtvcHRzMi5kb3QgPyBET1RTX1NMQVNIIDogRE9UX0xJVEVSQUx9KS4pKj8pYDsKICAgICAgfTsKICAgICAgY29uc3QgY3JlYXRlID0gKHN0cikgPT4gewogICAgICAgIHN3aXRjaCAoc3RyKSB7CiAgICAgICAgICBjYXNlICIqIjoKICAgICAgICAgICAgcmV0dXJuIGAke25vZG90fSR7T05FX0NIQVJ9JHtzdGFyfWA7CiAgICAgICAgICBjYXNlICIuKiI6CiAgICAgICAgICAgIHJldHVybiBgJHtET1RfTElURVJBTH0ke09ORV9DSEFSfSR7c3Rhcn1gOwogICAgICAgICAgY2FzZSAiKi4qIjoKICAgICAgICAgICAgcmV0dXJuIGAke25vZG90fSR7c3Rhcn0ke0RPVF9MSVRFUkFMfSR7T05FX0NIQVJ9JHtzdGFyfWA7CiAgICAgICAgICBjYXNlICIqLyoiOgogICAgICAgICAgICByZXR1cm4gYCR7bm9kb3R9JHtzdGFyfSR7U0xBU0hfTElURVJBTH0ke09ORV9DSEFSfSR7c2xhc2hEb3R9JHtzdGFyfWA7CiAgICAgICAgICBjYXNlICIqKiI6CiAgICAgICAgICAgIHJldHVybiBub2RvdCArIGdsb2JzdGFyKG9wdHMpOwogICAgICAgICAgY2FzZSAiKiovKiI6CiAgICAgICAgICAgIHJldHVybiBgKD86JHtub2RvdH0ke2dsb2JzdGFyKG9wdHMpfSR7U0xBU0hfTElURVJBTH0pPyR7c2xhc2hEb3R9JHtPTkVfQ0hBUn0ke3N0YXJ9YDsKICAgICAgICAgIGNhc2UgIioqLyouKiI6CiAgICAgICAgICAgIHJldHVybiBgKD86JHtub2RvdH0ke2dsb2JzdGFyKG9wdHMpfSR7U0xBU0hfTElURVJBTH0pPyR7c2xhc2hEb3R9JHtzdGFyfSR7RE9UX0xJVEVSQUx9JHtPTkVfQ0hBUn0ke3N0YXJ9YDsKICAgICAgICAgIGNhc2UgIioqLy4qIjoKICAgICAgICAgICAgcmV0dXJuIGAoPzoke25vZG90fSR7Z2xvYnN0YXIob3B0cyl9JHtTTEFTSF9MSVRFUkFMfSk/JHtET1RfTElURVJBTH0ke09ORV9DSEFSfSR7c3Rhcn1gOwogICAgICAgICAgZGVmYXVsdDogewogICAgICAgICAgICBjb25zdCBtYXRjaCA9IC9eKC4qPylcLihcdyspJC8uZXhlYyhzdHIpOwogICAgICAgICAgICBpZiAoIW1hdGNoKSByZXR1cm47CiAgICAgICAgICAgIGNvbnN0IHNvdXJjZTIgPSBjcmVhdGUobWF0Y2hbMV0pOwogICAgICAgICAgICBpZiAoIXNvdXJjZTIpIHJldHVybjsKICAgICAgICAgICAgcmV0dXJuIHNvdXJjZTIgKyBET1RfTElURVJBTCArIG1hdGNoWzJdOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfTsKICAgICAgY29uc3Qgb3V0cHV0ID0gdXRpbHMucmVtb3ZlUHJlZml4KGlucHV0LCBzdGF0ZSk7CiAgICAgIGxldCBzb3VyY2UgPSBjcmVhdGUob3V0cHV0KTsKICAgICAgaWYgKHNvdXJjZSAmJiBvcHRzLnN0cmljdFNsYXNoZXMgIT09IHRydWUpIHsKICAgICAgICBzb3VyY2UgKz0gYCR7U0xBU0hfTElURVJBTH0/YDsKICAgICAgfQogICAgICByZXR1cm4gc291cmNlOwogICAgfTsKICAgIG1vZHVsZTIuZXhwb3J0cyA9IHBhcnNlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9waWNvbWF0Y2gtbnBtLTQuMC4yLWU5MzUxNmRkZjItMTAuemlwL25vZGVfbW9kdWxlcy9waWNvbWF0Y2gvbGliL3BpY29tYXRjaC5qcwp2YXIgcmVxdWlyZV9waWNvbWF0Y2ggPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvcGljb21hdGNoLW5wbS00LjAuMi1lOTM1MTZkZGYyLTEwLnppcC9ub2RlX21vZHVsZXMvcGljb21hdGNoL2xpYi9waWNvbWF0Y2guanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgc2NhbiA9IHJlcXVpcmVfc2NhbjIoKTsKICAgIHZhciBwYXJzZSA9IHJlcXVpcmVfcGFyc2UoKTsKICAgIHZhciB1dGlscyA9IHJlcXVpcmVfdXRpbHM0KCk7CiAgICB2YXIgY29uc3RhbnRzID0gcmVxdWlyZV9jb25zdGFudHMoKTsKICAgIHZhciBpc09iamVjdCA9ICh2YWwpID0+IHZhbCAmJiB0eXBlb2YgdmFsID09PSAib2JqZWN0IiAmJiAhQXJyYXkuaXNBcnJheSh2YWwpOwogICAgdmFyIHBpY29tYXRjaCA9IChnbG9iLCBvcHRpb25zLCByZXR1cm5TdGF0ZSA9IGZhbHNlKSA9PiB7CiAgICAgIGlmIChBcnJheS5pc0FycmF5KGdsb2IpKSB7CiAgICAgICAgY29uc3QgZm5zID0gZ2xvYi5tYXAoKGlucHV0KSA9PiBwaWNvbWF0Y2goaW5wdXQsIG9wdGlvbnMsIHJldHVyblN0YXRlKSk7CiAgICAgICAgY29uc3QgYXJyYXlNYXRjaGVyID0gKHN0cikgPT4gewogICAgICAgICAgZm9yIChjb25zdCBpc01hdGNoIG9mIGZucykgewogICAgICAgICAgICBjb25zdCBzdGF0ZTIgPSBpc01hdGNoKHN0cik7CiAgICAgICAgICAgIGlmIChzdGF0ZTIpIHJldHVybiBzdGF0ZTI7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gYXJyYXlNYXRjaGVyOwogICAgICB9CiAgICAgIGNvbnN0IGlzU3RhdGUgPSBpc09iamVjdChnbG9iKSAmJiBnbG9iLnRva2VucyAmJiBnbG9iLmlucHV0OwogICAgICBpZiAoZ2xvYiA9PT0gIiIgfHwgdHlwZW9mIGdsb2IgIT09ICJzdHJpbmciICYmICFpc1N0YXRlKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgcGF0dGVybiB0byBiZSBhIG5vbi1lbXB0eSBzdHJpbmciKTsKICAgICAgfQogICAgICBjb25zdCBvcHRzID0gb3B0aW9ucyB8fCB7fTsKICAgICAgY29uc3QgcG9zaXggPSBvcHRzLndpbmRvd3M7CiAgICAgIGNvbnN0IHJlZ2V4ID0gaXNTdGF0ZSA/IHBpY29tYXRjaC5jb21waWxlUmUoZ2xvYiwgb3B0aW9ucykgOiBwaWNvbWF0Y2gubWFrZVJlKGdsb2IsIG9wdGlvbnMsIGZhbHNlLCB0cnVlKTsKICAgICAgY29uc3Qgc3RhdGUgPSByZWdleC5zdGF0ZTsKICAgICAgZGVsZXRlIHJlZ2V4LnN0YXRlOwogICAgICBsZXQgaXNJZ25vcmVkID0gKCkgPT4gZmFsc2U7CiAgICAgIGlmIChvcHRzLmlnbm9yZSkgewogICAgICAgIGNvbnN0IGlnbm9yZU9wdHMgPSB7IC4uLm9wdGlvbnMsIGlnbm9yZTogbnVsbCwgb25NYXRjaDogbnVsbCwgb25SZXN1bHQ6IG51bGwgfTsKICAgICAgICBpc0lnbm9yZWQgPSBwaWNvbWF0Y2gob3B0cy5pZ25vcmUsIGlnbm9yZU9wdHMsIHJldHVyblN0YXRlKTsKICAgICAgfQogICAgICBjb25zdCBtYXRjaGVyID0gKGlucHV0LCByZXR1cm5PYmplY3QgPSBmYWxzZSkgPT4gewogICAgICAgIGNvbnN0IHsgaXNNYXRjaCwgbWF0Y2gsIG91dHB1dCB9ID0gcGljb21hdGNoLnRlc3QoaW5wdXQsIHJlZ2V4LCBvcHRpb25zLCB7IGdsb2IsIHBvc2l4IH0pOwogICAgICAgIGNvbnN0IHJlc3VsdCA9IHsgZ2xvYiwgc3RhdGUsIHJlZ2V4LCBwb3NpeCwgaW5wdXQsIG91dHB1dCwgbWF0Y2gsIGlzTWF0Y2ggfTsKICAgICAgICBpZiAodHlwZW9mIG9wdHMub25SZXN1bHQgPT09ICJmdW5jdGlvbiIpIHsKICAgICAgICAgIG9wdHMub25SZXN1bHQocmVzdWx0KTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzTWF0Y2ggPT09IGZhbHNlKSB7CiAgICAgICAgICByZXN1bHQuaXNNYXRjaCA9IGZhbHNlOwogICAgICAgICAgcmV0dXJuIHJldHVybk9iamVjdCA/IHJlc3VsdCA6IGZhbHNlOwogICAgICAgIH0KICAgICAgICBpZiAoaXNJZ25vcmVkKGlucHV0KSkgewogICAgICAgICAgaWYgKHR5cGVvZiBvcHRzLm9uSWdub3JlID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICAgIG9wdHMub25JZ25vcmUocmVzdWx0KTsKICAgICAgICAgIH0KICAgICAgICAgIHJlc3VsdC5pc01hdGNoID0gZmFsc2U7CiAgICAgICAgICByZXR1cm4gcmV0dXJuT2JqZWN0ID8gcmVzdWx0IDogZmFsc2U7CiAgICAgICAgfQogICAgICAgIGlmICh0eXBlb2Ygb3B0cy5vbk1hdGNoID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICBvcHRzLm9uTWF0Y2gocmVzdWx0KTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJldHVybk9iamVjdCA/IHJlc3VsdCA6IHRydWU7CiAgICAgIH07CiAgICAgIGlmIChyZXR1cm5TdGF0ZSkgewogICAgICAgIG1hdGNoZXIuc3RhdGUgPSBzdGF0ZTsKICAgICAgfQogICAgICByZXR1cm4gbWF0Y2hlcjsKICAgIH07CiAgICBwaWNvbWF0Y2gudGVzdCA9IChpbnB1dCwgcmVnZXgsIG9wdGlvbnMsIHsgZ2xvYiwgcG9zaXggfSA9IHt9KSA9PiB7CiAgICAgIGlmICh0eXBlb2YgaW5wdXQgIT09ICJzdHJpbmciKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgaW5wdXQgdG8gYmUgYSBzdHJpbmciKTsKICAgICAgfQogICAgICBpZiAoaW5wdXQgPT09ICIiKSB7CiAgICAgICAgcmV0dXJuIHsgaXNNYXRjaDogZmFsc2UsIG91dHB1dDogIiIgfTsKICAgICAgfQogICAgICBjb25zdCBvcHRzID0gb3B0aW9ucyB8fCB7fTsKICAgICAgY29uc3QgZm9ybWF0ID0gb3B0cy5mb3JtYXQgfHwgKHBvc2l4ID8gdXRpbHMudG9Qb3NpeFNsYXNoZXMgOiBudWxsKTsKICAgICAgbGV0IG1hdGNoID0gaW5wdXQgPT09IGdsb2I7CiAgICAgIGxldCBvdXRwdXQgPSBtYXRjaCAmJiBmb3JtYXQgPyBmb3JtYXQoaW5wdXQpIDogaW5wdXQ7CiAgICAgIGlmIChtYXRjaCA9PT0gZmFsc2UpIHsKICAgICAgICBvdXRwdXQgPSBmb3JtYXQgPyBmb3JtYXQoaW5wdXQpIDogaW5wdXQ7CiAgICAgICAgbWF0Y2ggPSBvdXRwdXQgPT09IGdsb2I7CiAgICAgIH0KICAgICAgaWYgKG1hdGNoID09PSBmYWxzZSB8fCBvcHRzLmNhcHR1cmUgPT09IHRydWUpIHsKICAgICAgICBpZiAob3B0cy5tYXRjaEJhc2UgPT09IHRydWUgfHwgb3B0cy5iYXNlbmFtZSA9PT0gdHJ1ZSkgewogICAgICAgICAgbWF0Y2ggPSBwaWNvbWF0Y2gubWF0Y2hCYXNlKGlucHV0LCByZWdleCwgb3B0aW9ucywgcG9zaXgpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBtYXRjaCA9IHJlZ2V4LmV4ZWMob3V0cHV0KTsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIHsgaXNNYXRjaDogQm9vbGVhbihtYXRjaCksIG1hdGNoLCBvdXRwdXQgfTsKICAgIH07CiAgICBwaWNvbWF0Y2gubWF0Y2hCYXNlID0gKGlucHV0LCBnbG9iLCBvcHRpb25zKSA9PiB7CiAgICAgIGNvbnN0IHJlZ2V4ID0gZ2xvYiBpbnN0YW5jZW9mIFJlZ0V4cCA/IGdsb2IgOiBwaWNvbWF0Y2gubWFrZVJlKGdsb2IsIG9wdGlvbnMpOwogICAgICByZXR1cm4gcmVnZXgudGVzdCh1dGlscy5iYXNlbmFtZShpbnB1dCkpOwogICAgfTsKICAgIHBpY29tYXRjaC5pc01hdGNoID0gKHN0ciwgcGF0dGVybnMsIG9wdGlvbnMpID0+IHBpY29tYXRjaChwYXR0ZXJucywgb3B0aW9ucykoc3RyKTsKICAgIHBpY29tYXRjaC5wYXJzZSA9IChwYXR0ZXJuLCBvcHRpb25zKSA9PiB7CiAgICAgIGlmIChBcnJheS5pc0FycmF5KHBhdHRlcm4pKSByZXR1cm4gcGF0dGVybi5tYXAoKHApID0+IHBpY29tYXRjaC5wYXJzZShwLCBvcHRpb25zKSk7CiAgICAgIHJldHVybiBwYXJzZShwYXR0ZXJuLCB7IC4uLm9wdGlvbnMsIGZhc3RwYXRoczogZmFsc2UgfSk7CiAgICB9OwogICAgcGljb21hdGNoLnNjYW4gPSAoaW5wdXQsIG9wdGlvbnMpID0+IHNjYW4oaW5wdXQsIG9wdGlvbnMpOwogICAgcGljb21hdGNoLmNvbXBpbGVSZSA9IChzdGF0ZSwgb3B0aW9ucywgcmV0dXJuT3V0cHV0ID0gZmFsc2UsIHJldHVyblN0YXRlID0gZmFsc2UpID0+IHsKICAgICAgaWYgKHJldHVybk91dHB1dCA9PT0gdHJ1ZSkgewogICAgICAgIHJldHVybiBzdGF0ZS5vdXRwdXQ7CiAgICAgIH0KICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgIGNvbnN0IHByZXBlbmQgPSBvcHRzLmNvbnRhaW5zID8gIiIgOiAiXiI7CiAgICAgIGNvbnN0IGFwcGVuZCA9IG9wdHMuY29udGFpbnMgPyAiIiA6ICIkIjsKICAgICAgbGV0IHNvdXJjZSA9IGAke3ByZXBlbmR9KD86JHtzdGF0ZS5vdXRwdXR9KSR7YXBwZW5kfWA7CiAgICAgIGlmIChzdGF0ZSAmJiBzdGF0ZS5uZWdhdGVkID09PSB0cnVlKSB7CiAgICAgICAgc291cmNlID0gYF4oPyEke3NvdXJjZX0pLiokYDsKICAgICAgfQogICAgICBjb25zdCByZWdleCA9IHBpY29tYXRjaC50b1JlZ2V4KHNvdXJjZSwgb3B0aW9ucyk7CiAgICAgIGlmIChyZXR1cm5TdGF0ZSA9PT0gdHJ1ZSkgewogICAgICAgIHJlZ2V4LnN0YXRlID0gc3RhdGU7CiAgICAgIH0KICAgICAgcmV0dXJuIHJlZ2V4OwogICAgfTsKICAgIHBpY29tYXRjaC5tYWtlUmUgPSAoaW5wdXQsIG9wdGlvbnMgPSB7fSwgcmV0dXJuT3V0cHV0ID0gZmFsc2UsIHJldHVyblN0YXRlID0gZmFsc2UpID0+IHsKICAgICAgaWYgKCFpbnB1dCB8fCB0eXBlb2YgaW5wdXQgIT09ICJzdHJpbmciKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBub24tZW1wdHkgc3RyaW5nIik7CiAgICAgIH0KICAgICAgbGV0IHBhcnNlZCA9IHsgbmVnYXRlZDogZmFsc2UsIGZhc3RwYXRoczogdHJ1ZSB9OwogICAgICBpZiAob3B0aW9ucy5mYXN0cGF0aHMgIT09IGZhbHNlICYmIChpbnB1dFswXSA9PT0gIi4iIHx8IGlucHV0WzBdID09PSAiKiIpKSB7CiAgICAgICAgcGFyc2VkLm91dHB1dCA9IHBhcnNlLmZhc3RwYXRocyhpbnB1dCwgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgaWYgKCFwYXJzZWQub3V0cHV0KSB7CiAgICAgICAgcGFyc2VkID0gcGFyc2UoaW5wdXQsIG9wdGlvbnMpOwogICAgICB9CiAgICAgIHJldHVybiBwaWNvbWF0Y2guY29tcGlsZVJlKHBhcnNlZCwgb3B0aW9ucywgcmV0dXJuT3V0cHV0LCByZXR1cm5TdGF0ZSk7CiAgICB9OwogICAgcGljb21hdGNoLnRvUmVnZXggPSAoc291cmNlLCBvcHRpb25zKSA9PiB7CiAgICAgIHRyeSB7CiAgICAgICAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge307CiAgICAgICAgcmV0dXJuIG5ldyBSZWdFeHAoc291cmNlLCBvcHRzLmZsYWdzIHx8IChvcHRzLm5vY2FzZSA/ICJpIiA6ICIiKSk7CiAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMuZGVidWcgPT09IHRydWUpIHRocm93IGVycjsKICAgICAgICByZXR1cm4gLyReLzsKICAgICAgfQogICAgfTsKICAgIHBpY29tYXRjaC5jb25zdGFudHMgPSBjb25zdGFudHM7CiAgICBtb2R1bGUyLmV4cG9ydHMgPSBwaWNvbWF0Y2g7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi0xMC56aXAvbm9kZV9tb2R1bGVzL3BpY29tYXRjaC9pbmRleC5qcwp2YXIgcmVxdWlyZV9waWNvbWF0Y2gyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3BpY29tYXRjaC1ucG0tNC4wLjItZTkzNTE2ZGRmMi0xMC56aXAvbm9kZV9tb2R1bGVzL3BpY29tYXRjaC9pbmRleC5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBwaWNvID0gcmVxdWlyZV9waWNvbWF0Y2goKTsKICAgIHZhciB1dGlscyA9IHJlcXVpcmVfdXRpbHM0KCk7CiAgICBmdW5jdGlvbiBwaWNvbWF0Y2goZ2xvYiwgb3B0aW9ucywgcmV0dXJuU3RhdGUgPSBmYWxzZSkgewogICAgICBpZiAob3B0aW9ucyAmJiAob3B0aW9ucy53aW5kb3dzID09PSBudWxsIHx8IG9wdGlvbnMud2luZG93cyA9PT0gdm9pZCAwKSkgewogICAgICAgIG9wdGlvbnMgPSB7IC4uLm9wdGlvbnMsIHdpbmRvd3M6IHV0aWxzLmlzV2luZG93cygpIH07CiAgICAgIH0KICAgICAgcmV0dXJuIHBpY28oZ2xvYiwgb3B0aW9ucywgcmV0dXJuU3RhdGUpOwogICAgfQogICAgT2JqZWN0LmFzc2lnbihwaWNvbWF0Y2gsIHBpY28pOwogICAgbW9kdWxlMi5leHBvcnRzID0gcGljb21hdGNoOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3BhdHRlcm4uanMKdmFyIHJlcXVpcmVfcGF0dGVybjIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9wYXR0ZXJuLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5QYXR0ZXJuTWF0Y2hpbmdIb3N0ID0gdm9pZCAwOwogICAgdmFyIHBpY29tYXRjaF8xID0gcmVxdWlyZV9waWNvbWF0Y2gyKCk7CiAgICB2YXIgcmVzb2x2ZXJfMSA9IHJlcXVpcmVfcmVzb2x2ZXIoKTsKICAgIHZhciBQYXR0ZXJuTWF0Y2hpbmdIb3N0ID0gY2xhc3MgZXh0ZW5kcyByZXNvbHZlcl8xLlJlc29sdmVySG9zdCB7CiAgICAgIF9wYXR0ZXJucyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIGFkZFBhdHRlcm4ocGF0dGVybiwgcmVwbGFjZW1lbnRGbikgewogICAgICAgIGNvbnN0IHBhdHRlcm5zID0gQXJyYXkuaXNBcnJheShwYXR0ZXJuKSA/IHBhdHRlcm4gOiBbcGF0dGVybl07CiAgICAgICAgZm9yIChjb25zdCBnbG9iIG9mIHBhdHRlcm5zKSB7CiAgICAgICAgICBjb25zdCB7IG91dHB1dCB9ID0gKDAsIHBpY29tYXRjaF8xLnBhcnNlKShnbG9iKTsKICAgICAgICAgIHRoaXMuX3BhdHRlcm5zLnNldChuZXcgUmVnRXhwKGBeJHtvdXRwdXR9JGApLCByZXBsYWNlbWVudEZuKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgX3Jlc29sdmUocGF0aCkgewogICAgICAgIGxldCBuZXdQYXRoID0gcGF0aDsKICAgICAgICB0aGlzLl9wYXR0ZXJucy5mb3JFYWNoKChmbiwgcmUpID0+IHsKICAgICAgICAgIGlmIChyZS50ZXN0KHBhdGgpKSB7CiAgICAgICAgICAgIG5ld1BhdGggPSBmbihuZXdQYXRoKTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgICByZXR1cm4gbmV3UGF0aDsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlBhdHRlcm5NYXRjaGluZ0hvc3QgPSBQYXR0ZXJuTWF0Y2hpbmdIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3JlY29yZC5qcwp2YXIgcmVxdWlyZV9yZWNvcmQgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9yZWNvcmQuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkNvcmRIb3N0ID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbigpOwogICAgdmFyIG1lbW9yeV8xID0gcmVxdWlyZV9tZW1vcnkoKTsKICAgIHZhciBDb3JkSG9zdCA9IGNsYXNzIF9Db3JkSG9zdCBleHRlbmRzIG1lbW9yeV8xLlNpbXBsZU1lbW9yeUhvc3QgewogICAgICBfYmFjazsKICAgICAgX2ZpbGVzVG9DcmVhdGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZmlsZXNUb1JlbmFtZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF9maWxlc1RvUmVuYW1lUmV2ZXJ0ID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgX2ZpbGVzVG9EZWxldGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZmlsZXNUb092ZXJ3cml0ZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIGNvbnN0cnVjdG9yKF9iYWNrKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLl9iYWNrID0gX2JhY2s7CiAgICAgIH0KICAgICAgZ2V0IGJhY2tlbmQoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2JhY2s7CiAgICAgIH0KICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4gewogICAgICAgICAgc3luY2hyb25vdXM6IHRoaXMuX2JhY2suY2FwYWJpbGl0aWVzLnN5bmNocm9ub3VzCiAgICAgICAgfTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ3JlYXRlIGEgY29weSBvZiB0aGlzIGhvc3QsIGluY2x1ZGluZyBhbGwgYWN0aW9ucyBtYWRlLgogICAgICAgKiBAcmV0dXJucyB7Q29yZEhvc3R9IFRoZSBjYXJib24gY29weS4KICAgICAgICovCiAgICAgIGNsb25lKCkgewogICAgICAgIGNvbnN0IGRvbGx5ID0gbmV3IF9Db3JkSG9zdCh0aGlzLl9iYWNrKTsKICAgICAgICBkb2xseS5fY2FjaGUgPSBuZXcgTWFwKHRoaXMuX2NhY2hlKTsKICAgICAgICBkb2xseS5fZmlsZXNUb0NyZWF0ZSA9IG5ldyBTZXQodGhpcy5fZmlsZXNUb0NyZWF0ZSk7CiAgICAgICAgZG9sbHkuX2ZpbGVzVG9SZW5hbWUgPSBuZXcgTWFwKHRoaXMuX2ZpbGVzVG9SZW5hbWUpOwogICAgICAgIGRvbGx5Ll9maWxlc1RvUmVuYW1lUmV2ZXJ0ID0gbmV3IE1hcCh0aGlzLl9maWxlc1RvUmVuYW1lUmV2ZXJ0KTsKICAgICAgICBkb2xseS5fZmlsZXNUb0RlbGV0ZSA9IG5ldyBTZXQodGhpcy5fZmlsZXNUb0RlbGV0ZSk7CiAgICAgICAgZG9sbHkuX2ZpbGVzVG9PdmVyd3JpdGUgPSBuZXcgU2V0KHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUpOwogICAgICAgIHJldHVybiBkb2xseTsKICAgICAgfQogICAgICAvKioKICAgICAgICogQ29tbWl0IHRoZSBjaGFuZ2VzIHJlY29yZGVkIHRvIGEgSG9zdC4gSXQgaXMgYXNzdW1lZCB0aGF0IHRoZSBob3N0IGRvZXMgaGF2ZSB0aGUgc2FtZSBzdHJ1Y3R1cmUKICAgICAgICogYXMgdGhlIGhvc3QgdGhhdCB3YXMgdXNlZCBmb3IgYmFja2VuZCAoY291bGQgYmUgdGhlIHNhbWUgaG9zdCkuCiAgICAgICAqIEBwYXJhbSBob3N0IFRoZSBob3N0IHRvIGNyZWF0ZS9kZWxldGUvcmVuYW1lL292ZXJ3cml0ZSBmaWxlcyB0by4KICAgICAgICogQHBhcmFtIGZvcmNlIFdoZXRoZXIgdG8gc2tpcCBleGlzdGVuY2UgY2hlY2tzIHdoZW4gY3JlYXRpbmcvb3ZlcndyaXRpbmcuIFRoaXMgaXMKICAgICAgICogICBmYXN0ZXIgYnV0IG1pZ2h0IGxlYWQgdG8gaW5jb3JyZWN0IHN0YXRlcy4gQmVjYXVzZSBIb3N0cyBuYXRpdmVseSBkb24ndCBzdXBwb3J0IGNyZWF0aW9uCiAgICAgICAqICAgdmVyc3VzIG92ZXJ3cml0aW5nIChpdCdzIG9ubHkgd3JpdGluZyksIHdlIGNoZWNrIGZvciBleGlzdGVuY2UgYmVmb3JlIGNvbXBsZXRpbmcgYSByZXF1ZXN0LgogICAgICAgKiBAcmV0dXJucyBBbiBvYnNlcnZhYmxlIHRoYXQgY29tcGxldGVzIHdoZW4gZG9uZSwgb3IgZXJyb3IgaWYgYW4gZXJyb3Igb2NjdXJlZC4KICAgICAgICovCiAgICAgIGNvbW1pdChob3N0LCBmb3JjZSA9IGZhbHNlKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuZnJvbSkodGhpcy5yZWNvcmRzKCkpLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChyZWNvcmQpID0+IHsKICAgICAgICAgIHN3aXRjaCAocmVjb3JkLmtpbmQpIHsKICAgICAgICAgICAgY2FzZSAiZGVsZXRlIjoKICAgICAgICAgICAgICByZXR1cm4gaG9zdC5kZWxldGUocmVjb3JkLnBhdGgpOwogICAgICAgICAgICBjYXNlICJyZW5hbWUiOgogICAgICAgICAgICAgIHJldHVybiBob3N0LnJlbmFtZShyZWNvcmQuZnJvbSwgcmVjb3JkLnRvKTsKICAgICAgICAgICAgY2FzZSAiY3JlYXRlIjoKICAgICAgICAgICAgICByZXR1cm4gaG9zdC5leGlzdHMocmVjb3JkLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5zd2l0Y2hNYXApKChleGlzdHMpID0+IHsKICAgICAgICAgICAgICAgIGlmIChleGlzdHMgJiYgIWZvcmNlKSB7CiAgICAgICAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHJlY29yZC5wYXRoKSk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICByZXR1cm4gaG9zdC53cml0ZShyZWNvcmQucGF0aCwgcmVjb3JkLmNvbnRlbnQpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0pKTsKICAgICAgICAgICAgY2FzZSAib3ZlcndyaXRlIjoKICAgICAgICAgICAgICByZXR1cm4gaG9zdC5leGlzdHMocmVjb3JkLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5zd2l0Y2hNYXApKChleGlzdHMpID0+IHsKICAgICAgICAgICAgICAgIGlmICghZXhpc3RzICYmICFmb3JjZSkgewogICAgICAgICAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS50aHJvd0Vycm9yKShuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihyZWNvcmQucGF0aCkpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgcmV0dXJuIGhvc3Qud3JpdGUocmVjb3JkLnBhdGgsIHJlY29yZC5jb250ZW50KTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9KSk7CiAgICAgICAgICB9CiAgICAgICAgfSksICgwLCByeGpzXzEucmVkdWNlKSgoKSA9PiB7CiAgICAgICAgfSkpOwogICAgICB9CiAgICAgIHJlY29yZHMoKSB7CiAgICAgICAgcmV0dXJuIFsKICAgICAgICAgIC4uLlsuLi50aGlzLl9maWxlc1RvRGVsZXRlLnZhbHVlcygpXS5tYXAoKHBhdGgpID0+ICh7CiAgICAgICAgICAgIGtpbmQ6ICJkZWxldGUiLAogICAgICAgICAgICBwYXRoCiAgICAgICAgICB9KSksCiAgICAgICAgICAuLi5bLi4udGhpcy5fZmlsZXNUb1JlbmFtZS5lbnRyaWVzKCldLm1hcCgoW2Zyb20sIHRvXSkgPT4gKHsKICAgICAgICAgICAga2luZDogInJlbmFtZSIsCiAgICAgICAgICAgIGZyb20sCiAgICAgICAgICAgIHRvCiAgICAgICAgICB9KSksCiAgICAgICAgICAuLi5bLi4udGhpcy5fZmlsZXNUb0NyZWF0ZS52YWx1ZXMoKV0ubWFwKChwYXRoKSA9PiAoewogICAgICAgICAgICBraW5kOiAiY3JlYXRlIiwKICAgICAgICAgICAgcGF0aCwKICAgICAgICAgICAgY29udGVudDogdGhpcy5fcmVhZChwYXRoKQogICAgICAgICAgfSkpLAogICAgICAgICAgLi4uWy4uLnRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUudmFsdWVzKCldLm1hcCgocGF0aCkgPT4gKHsKICAgICAgICAgICAga2luZDogIm92ZXJ3cml0ZSIsCiAgICAgICAgICAgIHBhdGgsCiAgICAgICAgICAgIGNvbnRlbnQ6IHRoaXMuX3JlYWQocGF0aCkKICAgICAgICAgIH0pKQogICAgICAgIF07CiAgICAgIH0KICAgICAgLyoqCiAgICAgICAqIFNwZWNpYWxpemVkIHZlcnNpb24gb2Yge0BsaW5rIENvcmRIb3N0I3dyaXRlfSB3aGljaCBmb3JjZXMgdGhlIGNyZWF0aW9uIG9mIGEgZmlsZSB3aGV0aGVyIGl0CiAgICAgICAqIGV4aXN0cyBvciBub3QuCiAgICAgICAqIEBwYXJhbSB7fSBwYXRoCiAgICAgICAqIEBwYXJhbSB7RmlsZUJ1ZmZlcn0gY29udGVudAogICAgICAgKiBAcmV0dXJucyB7T2JzZXJ2YWJsZTx2b2lkPn0KICAgICAgICovCiAgICAgIGNyZWF0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgaWYgKHN1cGVyLl9leGlzdHMocGF0aCkpIHsKICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0RlbGV0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9EZWxldGUuZGVsZXRlKHBhdGgpOwogICAgICAgICAgdGhpcy5fZmlsZXNUb092ZXJ3cml0ZS5hZGQocGF0aCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9DcmVhdGUuYWRkKHBhdGgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc3VwZXIud3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgIH0KICAgICAgb3ZlcndyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5pc0RpcmVjdG9yeShwYXRoKS5waXBlKCgwLCByeGpzXzEuc3dpdGNoTWFwKSgoaXNEaXIpID0+IHsKICAgICAgICAgIGlmIChpc0RpcikgewogICAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS50aHJvd0Vycm9yKShuZXcgZXhjZXB0aW9uXzEuUGF0aElzRGlyZWN0b3J5RXhjZXB0aW9uKHBhdGgpKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0aGlzLmV4aXN0cyhwYXRoKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS5zd2l0Y2hNYXApKChleGlzdHMpID0+IHsKICAgICAgICAgIGlmICghZXhpc3RzKSB7CiAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICghdGhpcy5fZmlsZXNUb0NyZWF0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb092ZXJ3cml0ZS5hZGQocGF0aCk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gc3VwZXIud3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgfSkpOwogICAgICB9CiAgICAgIHdyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5leGlzdHMocGF0aCkucGlwZSgoMCwgcnhqc18xLnN3aXRjaE1hcCkoKGV4aXN0cykgPT4gewogICAgICAgICAgaWYgKGV4aXN0cykgewogICAgICAgICAgICBpZiAodGhpcy53aWxsUmVuYW1lKHBhdGgpIHx8IHRoaXMud2lsbERlbGV0ZShwYXRoKSkgewogICAgICAgICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZShwYXRoLCBjb250ZW50KTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICByZXR1cm4gdGhpcy5vdmVyd3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZShwYXRoLCBjb250ZW50KTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH0KICAgICAgcmVhZChwYXRoKSB7CiAgICAgICAgaWYgKHRoaXMuX2V4aXN0cyhwYXRoKSkgewogICAgICAgICAgcmV0dXJuIHN1cGVyLnJlYWQocGF0aCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9iYWNrLnJlYWQocGF0aCk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICBpZiAodGhpcy5fZXhpc3RzKHBhdGgpKSB7CiAgICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0NyZWF0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0NyZWF0ZS5kZWxldGUocGF0aCk7CiAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUuaGFzKHBhdGgpKSB7CiAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUuZGVsZXRlKHBhdGgpOwogICAgICAgICAgICB0aGlzLl9maWxlc1RvRGVsZXRlLmFkZChwYXRoKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IG1heWJlT3JpZ2luID0gdGhpcy5fZmlsZXNUb1JlbmFtZVJldmVydC5nZXQocGF0aCk7CiAgICAgICAgICAgIGlmIChtYXliZU9yaWdpbikgewogICAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9SZW5hbWVSZXZlcnQuZGVsZXRlKHBhdGgpOwogICAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9SZW5hbWUuZGVsZXRlKG1heWJlT3JpZ2luKTsKICAgICAgICAgICAgICB0aGlzLl9maWxlc1RvRGVsZXRlLmFkZChtYXliZU9yaWdpbik7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEudGhyb3dFcnJvcikobmV3IGV4Y2VwdGlvbl8xLlVua25vd25FeGNlcHRpb24oYFRoaXMgc2hvdWxkIG5ldmVyIGhhcHBlbi4gUGF0aDogJHtKU09OLnN0cmluZ2lmeShwYXRoKX0uYCkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gc3VwZXIuZGVsZXRlKHBhdGgpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fYmFjay5leGlzdHMocGF0aCkucGlwZSgoMCwgcnhqc18xLnN3aXRjaE1hcCkoKGV4aXN0cykgPT4gewogICAgICAgICAgICBpZiAoZXhpc3RzKSB7CiAgICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0RlbGV0ZS5hZGQocGF0aCk7CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKCk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEudGhyb3dFcnJvcikobmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCkpOwogICAgICAgICAgICB9CiAgICAgICAgICB9KSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkodGhpcy5leGlzdHModG8pLCB0aGlzLmV4aXN0cyhmcm9tKSkucGlwZSgoMCwgcnhqc18xLnRvQXJyYXkpKCksICgwLCByeGpzXzEuc3dpdGNoTWFwKSgoW2V4aXN0VG8sIGV4aXN0RnJvbV0pID0+IHsKICAgICAgICAgIGlmICghZXhpc3RGcm9tKSB7CiAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLnRocm93RXJyb3IpKG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKGZyb20pKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChmcm9tID09PSB0bykgewogICAgICAgICAgICByZXR1cm4gcnhqc18xLkVNUFRZOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGV4aXN0VG8pIHsKICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEudGhyb3dFcnJvcikobmV3IGV4Y2VwdGlvbl8xLkZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24odG8pKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlc1RvQ3JlYXRlLmhhcyhmcm9tKSkgewogICAgICAgICAgICB0aGlzLl9maWxlc1RvQ3JlYXRlLmRlbGV0ZShmcm9tKTsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0NyZWF0ZS5hZGQodG8pOwogICAgICAgICAgICByZXR1cm4gc3VwZXIucmVuYW1lKGZyb20sIHRvKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlc1RvT3ZlcndyaXRlLmhhcyhmcm9tKSkgewogICAgICAgICAgICB0aGlzLl9maWxlc1RvT3ZlcndyaXRlLmRlbGV0ZShmcm9tKTsKICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSh0aGlzLnJlbmFtZShmcm9tLCB0byksIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgoeCkgPT4gewogICAgICAgICAgICAgIHRoaXMuX2ZpbGVzVG9PdmVyd3JpdGUuYWRkKHRvKTsKICAgICAgICAgICAgICB4LmNvbXBsZXRlKCk7CiAgICAgICAgICAgIH0pKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlc1RvRGVsZXRlLmhhcyh0bykpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb0RlbGV0ZS5kZWxldGUodG8pOwogICAgICAgICAgICB0aGlzLl9maWxlc1RvRGVsZXRlLmFkZChmcm9tKTsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb092ZXJ3cml0ZS5hZGQodG8pOwogICAgICAgICAgICByZXR1cm4gdGhpcy5yZWFkKGZyb20pLnBpcGUoKDAsIHJ4anNfMS5tYXApKChjb250ZW50KSA9PiB0aGlzLl93cml0ZSh0bywgY29udGVudCkpKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IG1heWJlVG8xID0gdGhpcy5fZmlsZXNUb1JlbmFtZVJldmVydC5nZXQoZnJvbSk7CiAgICAgICAgICBpZiAobWF5YmVUbzEpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZXNUb1JlbmFtZS5kZWxldGUobWF5YmVUbzEpOwogICAgICAgICAgICB0aGlzLl9maWxlc1RvUmVuYW1lUmV2ZXJ0LmRlbGV0ZShmcm9tKTsKICAgICAgICAgICAgZnJvbSA9IG1heWJlVG8xOwogICAgICAgICAgfQogICAgICAgICAgdGhpcy5fZmlsZXNUb1JlbmFtZS5zZXQoZnJvbSwgdG8pOwogICAgICAgICAgdGhpcy5fZmlsZXNUb1JlbmFtZVJldmVydC5zZXQodG8sIGZyb20pOwogICAgICAgICAgaWYgKHRoaXMuX2V4aXN0cyhmcm9tKSkgewogICAgICAgICAgICByZXR1cm4gc3VwZXIucmVuYW1lKGZyb20sIHRvKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLl9iYWNrLnJlYWQoZnJvbSkucGlwZSgoMCwgcnhqc18xLnN3aXRjaE1hcCkoKGNvbnRlbnQpID0+IHN1cGVyLndyaXRlKHRvLCBjb250ZW50KSkpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfQogICAgICBsaXN0KHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5jb25jYXQpKHN1cGVyLmxpc3QocGF0aCksIHRoaXMuX2JhY2subGlzdChwYXRoKSkucGlwZSgoMCwgcnhqc18xLnJlZHVjZSkoKGxpc3QsIGN1cnIpID0+IHsKICAgICAgICAgIGN1cnIuZm9yRWFjaCgoZWxlbSkgPT4gbGlzdC5hZGQoZWxlbSkpOwogICAgICAgICAgcmV0dXJuIGxpc3Q7CiAgICAgICAgfSwgLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKSksICgwLCByeGpzXzEubWFwKSgoc2V0KSA9PiBbLi4uc2V0XSkpOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2V4aXN0cyhwYXRoKSA/ICgwLCByeGpzXzEub2YpKHRydWUpIDogdGhpcy53aWxsRGVsZXRlKHBhdGgpIHx8IHRoaXMud2lsbFJlbmFtZShwYXRoKSA/ICgwLCByeGpzXzEub2YpKGZhbHNlKSA6IHRoaXMuX2JhY2suZXhpc3RzKHBhdGgpOwogICAgICB9CiAgICAgIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZXhpc3RzKHBhdGgpID8gc3VwZXIuaXNEaXJlY3RvcnkocGF0aCkgOiB0aGlzLl9iYWNrLmlzRGlyZWN0b3J5KHBhdGgpOwogICAgICB9CiAgICAgIGlzRmlsZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2V4aXN0cyhwYXRoKSA/IHN1cGVyLmlzRmlsZShwYXRoKSA6IHRoaXMud2lsbERlbGV0ZShwYXRoKSB8fCB0aGlzLndpbGxSZW5hbWUocGF0aCkgPyAoMCwgcnhqc18xLm9mKShmYWxzZSkgOiB0aGlzLl9iYWNrLmlzRmlsZShwYXRoKTsKICAgICAgfQogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZXhpc3RzKHBhdGgpID8gc3VwZXIuc3RhdChwYXRoKSA6IHRoaXMud2lsbERlbGV0ZShwYXRoKSB8fCB0aGlzLndpbGxSZW5hbWUocGF0aCkgPyAoMCwgcnhqc18xLm9mKShudWxsKSA6IHRoaXMuX2JhY2suc3RhdChwYXRoKTsKICAgICAgfQogICAgICB3YXRjaChwYXRoLCBvcHRpb25zKSB7CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgIH0KICAgICAgd2lsbENyZWF0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbGVzVG9DcmVhdGUuaGFzKHBhdGgpOwogICAgICB9CiAgICAgIHdpbGxPdmVyd3JpdGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9maWxlc1RvT3ZlcndyaXRlLmhhcyhwYXRoKTsKICAgICAgfQogICAgICB3aWxsRGVsZXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZmlsZXNUb0RlbGV0ZS5oYXMocGF0aCk7CiAgICAgIH0KICAgICAgd2lsbFJlbmFtZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbGVzVG9SZW5hbWUuaGFzKHBhdGgpOwogICAgICB9CiAgICAgIHdpbGxSZW5hbWVUbyhwYXRoLCB0bykgewogICAgICAgIHJldHVybiB0aGlzLl9maWxlc1RvUmVuYW1lLmdldChwYXRoKSA9PT0gdG87CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Db3JkSG9zdCA9IENvcmRIb3N0OwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3NhZmUuanMKdmFyIHJlcXVpcmVfc2FmZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3NhZmUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlNhZmVSZWFkb25seUhvc3QgPSB2b2lkIDA7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBTYWZlUmVhZG9ubHlIb3N0ID0gY2xhc3MgewogICAgICBfZGVsZWdhdGU7CiAgICAgIGNvbnN0cnVjdG9yKF9kZWxlZ2F0ZSkgewogICAgICAgIHRoaXMuX2RlbGVnYXRlID0gX2RlbGVnYXRlOwogICAgICB9CiAgICAgIGdldCBjYXBhYmlsaXRpZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLmNhcGFiaWxpdGllczsKICAgICAgfQogICAgICByZWFkKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUucmVhZChwYXRoKTsKICAgICAgfQogICAgICBsaXN0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUubGlzdChwYXRoKS5waXBlKCgwLCByeGpzXzEuY2F0Y2hFcnJvcikoKCkgPT4gKDAsIHJ4anNfMS5vZikoW10pKSk7CiAgICAgIH0KICAgICAgZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuZXhpc3RzKHBhdGgpOwogICAgICB9CiAgICAgIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZGVsZWdhdGUuaXNEaXJlY3RvcnkocGF0aCkucGlwZSgoMCwgcnhqc18xLmNhdGNoRXJyb3IpKCgpID0+ICgwLCByeGpzXzEub2YpKGZhbHNlKSkpOwogICAgICB9CiAgICAgIGlzRmlsZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2RlbGVnYXRlLmlzRmlsZShwYXRoKS5waXBlKCgwLCByeGpzXzEuY2F0Y2hFcnJvcikoKCkgPT4gKDAsIHJ4anNfMS5vZikoZmFsc2UpKSk7CiAgICAgIH0KICAgICAgLy8gU29tZSBob3N0cyBtYXkgbm90IHN1cHBvcnQgc3RhdHMuCiAgICAgIHN0YXQocGF0aCkgewogICAgICAgIGNvbnN0IG1heWJlU3RhdCA9IHRoaXMuX2RlbGVnYXRlLnN0YXQocGF0aCk7CiAgICAgICAgcmV0dXJuIG1heWJlU3RhdCAmJiBtYXliZVN0YXQucGlwZSgoMCwgcnhqc18xLmNhdGNoRXJyb3IpKCgpID0+ICgwLCByeGpzXzEub2YpKG51bGwpKSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TYWZlUmVhZG9ubHlIb3N0ID0gU2FmZVJlYWRvbmx5SG9zdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9zY29wZWQuanMKdmFyIHJlcXVpcmVfc2NvcGVkID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3Qvc2NvcGVkLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TY29wZWRIb3N0ID0gdm9pZCAwOwogICAgdmFyIHBhdGhfMSA9IHJlcXVpcmVfcGF0aCgpOwogICAgdmFyIHJlc29sdmVyXzEgPSByZXF1aXJlX3Jlc29sdmVyKCk7CiAgICB2YXIgU2NvcGVkSG9zdCA9IGNsYXNzIGV4dGVuZHMgcmVzb2x2ZXJfMS5SZXNvbHZlckhvc3QgewogICAgICBfcm9vdDsKICAgICAgY29uc3RydWN0b3IoZGVsZWdhdGUsIF9yb290ID0gcGF0aF8xLk5vcm1hbGl6ZWRSb290KSB7CiAgICAgICAgc3VwZXIoZGVsZWdhdGUpOwogICAgICAgIHRoaXMuX3Jvb3QgPSBfcm9vdDsKICAgICAgfQogICAgICBfcmVzb2x2ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCBwYXRoXzEuam9pbikodGhpcy5fcm9vdCwgcGF0aCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TY29wZWRIb3N0ID0gU2NvcGVkSG9zdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9pbmRleC5qcwp2YXIgcmVxdWlyZV9ob3N0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19zZXRNb2R1bGVEZWZhdWx0ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zZXRNb2R1bGVEZWZhdWx0IHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgdikgewogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgImRlZmF1bHQiLCB7IGVudW1lcmFibGU6IHRydWUsIHZhbHVlOiB2IH0pOwogICAgfSA6IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgb1siZGVmYXVsdCJdID0gdjsKICAgIH0pOwogICAgdmFyIF9faW1wb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9faW1wb3J0U3RhciB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBvd25LZXlzID0gZnVuY3Rpb24obykgewogICAgICAgIG93bktleXMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyB8fCBmdW5jdGlvbihvMikgewogICAgICAgICAgdmFyIGFyID0gW107CiAgICAgICAgICBmb3IgKHZhciBrIGluIG8yKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG8yLCBrKSkgYXJbYXIubGVuZ3RoXSA9IGs7CiAgICAgICAgICByZXR1cm4gYXI7CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gb3duS2V5cyhvKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKG1vZCkgewogICAgICAgIGlmIChtb2QgJiYgbW9kLl9fZXNNb2R1bGUpIHJldHVybiBtb2Q7CiAgICAgICAgdmFyIHJlc3VsdCA9IHt9OwogICAgICAgIGlmIChtb2QgIT0gbnVsbCkgewogICAgICAgICAgZm9yICh2YXIgayA9IG93bktleXMobW9kKSwgaSA9IDA7IGkgPCBrLmxlbmd0aDsgaSsrKSBpZiAoa1tpXSAhPT0gImRlZmF1bHQiKSBfX2NyZWF0ZUJpbmRpbmcocmVzdWx0LCBtb2QsIGtbaV0pOwogICAgICAgIH0KICAgICAgICBfX3NldE1vZHVsZURlZmF1bHQocmVzdWx0LCBtb2QpOwogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH07CiAgICB9KCk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnRlc3QgPSB2b2lkIDA7CiAgICB2YXIgdGVzdCA9IF9faW1wb3J0U3RhcihyZXF1aXJlX3Rlc3QoKSk7CiAgICBleHBvcnRzMi50ZXN0ID0gdGVzdDsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2FsaWFzKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2J1ZmZlcjIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfY3JlYXRlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2VtcHR5MigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9pbnRlcmZhY2UyKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX21lbW9yeSgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9wYXR0ZXJuMigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9yZWNvcmQoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfc2FmZSgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9zY29wZWQoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfc3luYygpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9yZXNvbHZlcigpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2luZGV4LmpzCnZhciByZXF1aXJlX3ZpcnR1YWxfZnMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19zZXRNb2R1bGVEZWZhdWx0ID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19zZXRNb2R1bGVEZWZhdWx0IHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgdikgewogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgImRlZmF1bHQiLCB7IGVudW1lcmFibGU6IHRydWUsIHZhbHVlOiB2IH0pOwogICAgfSA6IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgb1siZGVmYXVsdCJdID0gdjsKICAgIH0pOwogICAgdmFyIF9faW1wb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9faW1wb3J0U3RhciB8fCAvKiBAX19QVVJFX18gKi8gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBvd25LZXlzID0gZnVuY3Rpb24obykgewogICAgICAgIG93bktleXMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyB8fCBmdW5jdGlvbihvMikgewogICAgICAgICAgdmFyIGFyID0gW107CiAgICAgICAgICBmb3IgKHZhciBrIGluIG8yKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG8yLCBrKSkgYXJbYXIubGVuZ3RoXSA9IGs7CiAgICAgICAgICByZXR1cm4gYXI7CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gb3duS2V5cyhvKTsKICAgICAgfTsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKG1vZCkgewogICAgICAgIGlmIChtb2QgJiYgbW9kLl9fZXNNb2R1bGUpIHJldHVybiBtb2Q7CiAgICAgICAgdmFyIHJlc3VsdCA9IHt9OwogICAgICAgIGlmIChtb2QgIT0gbnVsbCkgewogICAgICAgICAgZm9yICh2YXIgayA9IG93bktleXMobW9kKSwgaSA9IDA7IGkgPCBrLmxlbmd0aDsgaSsrKSBpZiAoa1tpXSAhPT0gImRlZmF1bHQiKSBfX2NyZWF0ZUJpbmRpbmcocmVzdWx0LCBtb2QsIGtbaV0pOwogICAgICAgIH0KICAgICAgICBfX3NldE1vZHVsZURlZmF1bHQocmVzdWx0LCBtb2QpOwogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH07CiAgICB9KCk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnZpcnR1YWxGcyA9IHZvaWQgMDsKICAgIHZhciB2aXJ0dWFsRnMgPSBfX2ltcG9ydFN0YXIocmVxdWlyZV9ob3N0KCkpOwogICAgZXhwb3J0czIudmlydHVhbEZzID0gdmlydHVhbEZzOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfcGF0aCgpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvaG9zdC5qcwp2YXIgcmVxdWlyZV9ob3N0MiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2hvc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmNyZWF0ZVdvcmtzcGFjZUhvc3QgPSBjcmVhdGVXb3Jrc3BhY2VIb3N0OwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgdmlydHVhbF9mc18xID0gcmVxdWlyZV92aXJ0dWFsX2ZzKCk7CiAgICBmdW5jdGlvbiBjcmVhdGVXb3Jrc3BhY2VIb3N0KGhvc3QpIHsKICAgICAgY29uc3Qgd29ya3NwYWNlSG9zdCA9IHsKICAgICAgICBhc3luYyByZWFkRmlsZShwYXRoKSB7CiAgICAgICAgICBjb25zdCBkYXRhID0gYXdhaXQgKDAsIHJ4anNfMS5sYXN0VmFsdWVGcm9tKShob3N0LnJlYWQoKDAsIHZpcnR1YWxfZnNfMS5ub3JtYWxpemUpKHBhdGgpKSk7CiAgICAgICAgICByZXR1cm4gdmlydHVhbF9mc18xLnZpcnR1YWxGcy5maWxlQnVmZmVyVG9TdHJpbmcoZGF0YSk7CiAgICAgICAgfSwKICAgICAgICBhc3luYyB3cml0ZUZpbGUocGF0aCwgZGF0YSkgewogICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkoaG9zdC53cml0ZSgoMCwgdmlydHVhbF9mc18xLm5vcm1hbGl6ZSkocGF0aCksIHZpcnR1YWxfZnNfMS52aXJ0dWFsRnMuc3RyaW5nVG9GaWxlQnVmZmVyKGRhdGEpKSk7CiAgICAgICAgfSwKICAgICAgICBhc3luYyBpc0RpcmVjdG9yeShwYXRoKSB7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICByZXR1cm4gYXdhaXQgKDAsIHJ4anNfMS5sYXN0VmFsdWVGcm9tKShob3N0LmlzRGlyZWN0b3J5KCgwLCB2aXJ0dWFsX2ZzXzEubm9ybWFsaXplKShwYXRoKSkpOwogICAgICAgICAgfSBjYXRjaCB7CiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIGFzeW5jIGlzRmlsZShwYXRoKSB7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICByZXR1cm4gYXdhaXQgKDAsIHJ4anNfMS5sYXN0VmFsdWVGcm9tKShob3N0LmlzRmlsZSgoMCwgdmlydHVhbF9mc18xLm5vcm1hbGl6ZSkocGF0aCkpKTsKICAgICAgICAgIH0gY2F0Y2ggewogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gd29ya3NwYWNlSG9zdDsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvanNvbmMtcGFyc2VyLXBhdGNoLWQyMGY2NzE4MzYtMTAuemlwL25vZGVfbW9kdWxlcy9qc29uYy1wYXJzZXIvbGliL3VtZC9pbXBsL3NjYW5uZXIuanMKdmFyIHJlcXVpcmVfc2Nhbm5lciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvc2Nhbm5lci5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgIChmdW5jdGlvbihmYWN0b3J5KSB7CiAgICAgIGlmICh0eXBlb2YgbW9kdWxlMiA9PT0gIm9iamVjdCIgJiYgdHlwZW9mIG1vZHVsZTIuZXhwb3J0cyA9PT0gIm9iamVjdCIpIHsKICAgICAgICB2YXIgdiA9IGZhY3RvcnkocmVxdWlyZSwgZXhwb3J0czIpOwogICAgICAgIGlmICh2ICE9PSB2b2lkIDApIG1vZHVsZTIuZXhwb3J0cyA9IHY7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGRlZmluZSA9PT0gImZ1bmN0aW9uIiAmJiBkZWZpbmUuYW1kKSB7CiAgICAgICAgZGVmaW5lKFsicmVxdWlyZSIsICJleHBvcnRzIl0sIGZhY3RvcnkpOwogICAgICB9CiAgICB9KShmdW5jdGlvbihyZXF1aXJlMiwgZXhwb3J0czMpIHsKICAgICAgInVzZSBzdHJpY3QiOwogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czMsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgICAgZXhwb3J0czMuY3JlYXRlU2Nhbm5lciA9IHZvaWQgMDsKICAgICAgZnVuY3Rpb24gY3JlYXRlU2Nhbm5lcih0ZXh0LCBpZ25vcmVUcml2aWEgPSBmYWxzZSkgewogICAgICAgIGNvbnN0IGxlbiA9IHRleHQubGVuZ3RoOwogICAgICAgIGxldCBwb3MgPSAwLCB2YWx1ZSA9ICIiLCB0b2tlbk9mZnNldCA9IDAsIHRva2VuID0gMTYsIGxpbmVOdW1iZXIgPSAwLCBsaW5lU3RhcnRPZmZzZXQgPSAwLCB0b2tlbkxpbmVTdGFydE9mZnNldCA9IDAsIHByZXZUb2tlbkxpbmVTdGFydE9mZnNldCA9IDAsIHNjYW5FcnJvciA9IDA7CiAgICAgICAgZnVuY3Rpb24gc2NhbkhleERpZ2l0cyhjb3VudCwgZXhhY3QpIHsKICAgICAgICAgIGxldCBkaWdpdHMgPSAwOwogICAgICAgICAgbGV0IHZhbHVlMiA9IDA7CiAgICAgICAgICB3aGlsZSAoZGlnaXRzIDwgY291bnQgfHwgIWV4YWN0KSB7CiAgICAgICAgICAgIGxldCBjaCA9IHRleHQuY2hhckNvZGVBdChwb3MpOwogICAgICAgICAgICBpZiAoY2ggPj0gNDggJiYgY2ggPD0gNTcpIHsKICAgICAgICAgICAgICB2YWx1ZTIgPSB2YWx1ZTIgKiAxNiArIGNoIC0gNDg7CiAgICAgICAgICAgIH0gZWxzZSBpZiAoY2ggPj0gNjUgJiYgY2ggPD0gNzApIHsKICAgICAgICAgICAgICB2YWx1ZTIgPSB2YWx1ZTIgKiAxNiArIGNoIC0gNjUgKyAxMDsKICAgICAgICAgICAgfSBlbHNlIGlmIChjaCA+PSA5NyAmJiBjaCA8PSAxMDIpIHsKICAgICAgICAgICAgICB2YWx1ZTIgPSB2YWx1ZTIgKiAxNiArIGNoIC0gOTcgKyAxMDsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgZGlnaXRzKys7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoZGlnaXRzIDwgY291bnQpIHsKICAgICAgICAgICAgdmFsdWUyID0gLTE7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gdmFsdWUyOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBzZXRQb3NpdGlvbihuZXdQb3NpdGlvbikgewogICAgICAgICAgcG9zID0gbmV3UG9zaXRpb247CiAgICAgICAgICB2YWx1ZSA9ICIiOwogICAgICAgICAgdG9rZW5PZmZzZXQgPSAwOwogICAgICAgICAgdG9rZW4gPSAxNjsKICAgICAgICAgIHNjYW5FcnJvciA9IDA7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHNjYW5OdW1iZXIoKSB7CiAgICAgICAgICBsZXQgc3RhcnQgPSBwb3M7CiAgICAgICAgICBpZiAodGV4dC5jaGFyQ29kZUF0KHBvcykgPT09IDQ4KSB7CiAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgIHdoaWxlIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiBpc0RpZ2l0KHRleHQuY2hhckNvZGVBdChwb3MpKSkgewogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAocG9zIDwgdGV4dC5sZW5ndGggJiYgdGV4dC5jaGFyQ29kZUF0KHBvcykgPT09IDQ2KSB7CiAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICBpZiAocG9zIDwgdGV4dC5sZW5ndGggJiYgaXNEaWdpdCh0ZXh0LmNoYXJDb2RlQXQocG9zKSkpIHsKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICB3aGlsZSAocG9zIDwgdGV4dC5sZW5ndGggJiYgaXNEaWdpdCh0ZXh0LmNoYXJDb2RlQXQocG9zKSkpIHsKICAgICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBzY2FuRXJyb3IgPSAzOwogICAgICAgICAgICAgIHJldHVybiB0ZXh0LnN1YnN0cmluZyhzdGFydCwgcG9zKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgbGV0IGVuZCA9IHBvczsKICAgICAgICAgIGlmIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiAodGV4dC5jaGFyQ29kZUF0KHBvcykgPT09IDY5IHx8IHRleHQuY2hhckNvZGVBdChwb3MpID09PSAxMDEpKSB7CiAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICBpZiAocG9zIDwgdGV4dC5sZW5ndGggJiYgdGV4dC5jaGFyQ29kZUF0KHBvcykgPT09IDQzIHx8IHRleHQuY2hhckNvZGVBdChwb3MpID09PSA0NSkgewogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiBpc0RpZ2l0KHRleHQuY2hhckNvZGVBdChwb3MpKSkgewogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHdoaWxlIChwb3MgPCB0ZXh0Lmxlbmd0aCAmJiBpc0RpZ2l0KHRleHQuY2hhckNvZGVBdChwb3MpKSkgewogICAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGVuZCA9IHBvczsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBzY2FuRXJyb3IgPSAzOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gdGV4dC5zdWJzdHJpbmcoc3RhcnQsIGVuZCk7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHNjYW5TdHJpbmcoKSB7CiAgICAgICAgICBsZXQgcmVzdWx0ID0gIiIsIHN0YXJ0ID0gcG9zOwogICAgICAgICAgd2hpbGUgKHRydWUpIHsKICAgICAgICAgICAgaWYgKHBvcyA+PSBsZW4pIHsKICAgICAgICAgICAgICByZXN1bHQgKz0gdGV4dC5zdWJzdHJpbmcoc3RhcnQsIHBvcyk7CiAgICAgICAgICAgICAgc2NhbkVycm9yID0gMjsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgICBjb25zdCBjaCA9IHRleHQuY2hhckNvZGVBdChwb3MpOwogICAgICAgICAgICBpZiAoY2ggPT09IDM0KSB7CiAgICAgICAgICAgICAgcmVzdWx0ICs9IHRleHQuc3Vic3RyaW5nKHN0YXJ0LCBwb3MpOwogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChjaCA9PT0gOTIpIHsKICAgICAgICAgICAgICByZXN1bHQgKz0gdGV4dC5zdWJzdHJpbmcoc3RhcnQsIHBvcyk7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgaWYgKHBvcyA+PSBsZW4pIHsKICAgICAgICAgICAgICAgIHNjYW5FcnJvciA9IDI7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgY29uc3QgY2gyID0gdGV4dC5jaGFyQ29kZUF0KHBvcysrKTsKICAgICAgICAgICAgICBzd2l0Y2ggKGNoMikgewogICAgICAgICAgICAgICAgY2FzZSAzNDoKICAgICAgICAgICAgICAgICAgcmVzdWx0ICs9ICciJzsKICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlIDkyOgogICAgICAgICAgICAgICAgICByZXN1bHQgKz0gIlxcIjsKICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlIDQ3OgogICAgICAgICAgICAgICAgICByZXN1bHQgKz0gIi8iOwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgOTg6CiAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSAiXGIiOwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgMTAyOgogICAgICAgICAgICAgICAgICByZXN1bHQgKz0gIlxmIjsKICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlIDExMDoKICAgICAgICAgICAgICAgICAgcmVzdWx0ICs9ICJcbiI7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAxMTQ6CiAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSAiXHIiOwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgMTE2OgogICAgICAgICAgICAgICAgICByZXN1bHQgKz0gIgkiOwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgMTE3OgogICAgICAgICAgICAgICAgICBjb25zdCBjaDMgPSBzY2FuSGV4RGlnaXRzKDQsIHRydWUpOwogICAgICAgICAgICAgICAgICBpZiAoY2gzID49IDApIHsKICAgICAgICAgICAgICAgICAgICByZXN1bHQgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShjaDMpOwogICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIHNjYW5FcnJvciA9IDQ7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgICAgICBzY2FuRXJyb3IgPSA1OwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBzdGFydCA9IHBvczsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoY2ggPj0gMCAmJiBjaCA8PSAzMSkgewogICAgICAgICAgICAgIGlmIChpc0xpbmVCcmVhayhjaCkpIHsKICAgICAgICAgICAgICAgIHJlc3VsdCArPSB0ZXh0LnN1YnN0cmluZyhzdGFydCwgcG9zKTsKICAgICAgICAgICAgICAgIHNjYW5FcnJvciA9IDI7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgc2NhbkVycm9yID0gNjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBzY2FuTmV4dCgpIHsKICAgICAgICAgIHZhbHVlID0gIiI7CiAgICAgICAgICBzY2FuRXJyb3IgPSAwOwogICAgICAgICAgdG9rZW5PZmZzZXQgPSBwb3M7CiAgICAgICAgICBsaW5lU3RhcnRPZmZzZXQgPSBsaW5lTnVtYmVyOwogICAgICAgICAgcHJldlRva2VuTGluZVN0YXJ0T2Zmc2V0ID0gdG9rZW5MaW5lU3RhcnRPZmZzZXQ7CiAgICAgICAgICBpZiAocG9zID49IGxlbikgewogICAgICAgICAgICB0b2tlbk9mZnNldCA9IGxlbjsKICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gMTc7CiAgICAgICAgICB9CiAgICAgICAgICBsZXQgY29kZSA9IHRleHQuY2hhckNvZGVBdChwb3MpOwogICAgICAgICAgaWYgKGlzV2hpdGVTcGFjZShjb2RlKSkgewogICAgICAgICAgICBkbyB7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgdmFsdWUgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShjb2RlKTsKICAgICAgICAgICAgICBjb2RlID0gdGV4dC5jaGFyQ29kZUF0KHBvcyk7CiAgICAgICAgICAgIH0gd2hpbGUgKGlzV2hpdGVTcGFjZShjb2RlKSk7CiAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDE1OwogICAgICAgICAgfQogICAgICAgICAgaWYgKGlzTGluZUJyZWFrKGNvZGUpKSB7CiAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICB2YWx1ZSArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGNvZGUpOwogICAgICAgICAgICBpZiAoY29kZSA9PT0gMTMgJiYgdGV4dC5jaGFyQ29kZUF0KHBvcykgPT09IDEwKSB7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgdmFsdWUgKz0gIlxuIjsKICAgICAgICAgICAgfQogICAgICAgICAgICBsaW5lTnVtYmVyKys7CiAgICAgICAgICAgIHRva2VuTGluZVN0YXJ0T2Zmc2V0ID0gcG9zOwogICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxNDsKICAgICAgICAgIH0KICAgICAgICAgIHN3aXRjaCAoY29kZSkgewogICAgICAgICAgICAvLyB0b2tlbnM6IFtde306LAogICAgICAgICAgICBjYXNlIDEyMzoKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxOwogICAgICAgICAgICBjYXNlIDEyNToKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAyOwogICAgICAgICAgICBjYXNlIDkxOgogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDM7CiAgICAgICAgICAgIGNhc2UgOTM6CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gNDsKICAgICAgICAgICAgY2FzZSA1ODoKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSA2OwogICAgICAgICAgICBjYXNlIDQ0OgogICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDU7CiAgICAgICAgICAgIC8vIHN0cmluZ3MKICAgICAgICAgICAgY2FzZSAzNDoKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICB2YWx1ZSA9IHNjYW5TdHJpbmcoKTsKICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxMDsKICAgICAgICAgICAgLy8gY29tbWVudHMKICAgICAgICAgICAgY2FzZSA0NzoKICAgICAgICAgICAgICBjb25zdCBzdGFydCA9IHBvcyAtIDE7CiAgICAgICAgICAgICAgaWYgKHRleHQuY2hhckNvZGVBdChwb3MgKyAxKSA9PT0gNDcpIHsKICAgICAgICAgICAgICAgIHBvcyArPSAyOwogICAgICAgICAgICAgICAgd2hpbGUgKHBvcyA8IGxlbikgewogICAgICAgICAgICAgICAgICBpZiAoaXNMaW5lQnJlYWsodGV4dC5jaGFyQ29kZUF0KHBvcykpKSB7CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB2YWx1ZSA9IHRleHQuc3Vic3RyaW5nKHN0YXJ0LCBwb3MpOwogICAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gMTI7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICh0ZXh0LmNoYXJDb2RlQXQocG9zICsgMSkgPT09IDQyKSB7CiAgICAgICAgICAgICAgICBwb3MgKz0gMjsKICAgICAgICAgICAgICAgIGNvbnN0IHNhZmVMZW5ndGggPSBsZW4gLSAxOwogICAgICAgICAgICAgICAgbGV0IGNvbW1lbnRDbG9zZWQgPSBmYWxzZTsKICAgICAgICAgICAgICAgIHdoaWxlIChwb3MgPCBzYWZlTGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgIGNvbnN0IGNoID0gdGV4dC5jaGFyQ29kZUF0KHBvcyk7CiAgICAgICAgICAgICAgICAgIGlmIChjaCA9PT0gNDIgJiYgdGV4dC5jaGFyQ29kZUF0KHBvcyArIDEpID09PSA0NykgewogICAgICAgICAgICAgICAgICAgIHBvcyArPSAyOwogICAgICAgICAgICAgICAgICAgIGNvbW1lbnRDbG9zZWQgPSB0cnVlOwogICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgICAgICBpZiAoaXNMaW5lQnJlYWsoY2gpKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKGNoID09PSAxMyAmJiB0ZXh0LmNoYXJDb2RlQXQocG9zKSA9PT0gMTApIHsKICAgICAgICAgICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBsaW5lTnVtYmVyKys7CiAgICAgICAgICAgICAgICAgICAgdG9rZW5MaW5lU3RhcnRPZmZzZXQgPSBwb3M7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmICghY29tbWVudENsb3NlZCkgewogICAgICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICAgICAgc2NhbkVycm9yID0gMTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHZhbHVlID0gdGV4dC5zdWJzdHJpbmcoc3RhcnQsIHBvcyk7CiAgICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxMzsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgdmFsdWUgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShjb2RlKTsKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxNjsKICAgICAgICAgICAgLy8gbnVtYmVycwogICAgICAgICAgICBjYXNlIDQ1OgogICAgICAgICAgICAgIHZhbHVlICs9IFN0cmluZy5mcm9tQ2hhckNvZGUoY29kZSk7CiAgICAgICAgICAgICAgcG9zKys7CiAgICAgICAgICAgICAgaWYgKHBvcyA9PT0gbGVuIHx8ICFpc0RpZ2l0KHRleHQuY2hhckNvZGVBdChwb3MpKSkgewogICAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gMTY7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAvLyBmb3VuZCBhIG1pbnVzLCBmb2xsb3dlZCBieSBhIG51bWJlciBzbwogICAgICAgICAgICAvLyB3ZSBmYWxsIHRocm91Z2ggdG8gcHJvY2VlZCB3aXRoIHNjYW5uaW5nCiAgICAgICAgICAgIC8vIG51bWJlcnMKICAgICAgICAgICAgY2FzZSA0ODoKICAgICAgICAgICAgY2FzZSA0OToKICAgICAgICAgICAgY2FzZSA1MDoKICAgICAgICAgICAgY2FzZSA1MToKICAgICAgICAgICAgY2FzZSA1MjoKICAgICAgICAgICAgY2FzZSA1MzoKICAgICAgICAgICAgY2FzZSA1NDoKICAgICAgICAgICAgY2FzZSA1NToKICAgICAgICAgICAgY2FzZSA1NjoKICAgICAgICAgICAgY2FzZSA1NzoKICAgICAgICAgICAgICB2YWx1ZSArPSBzY2FuTnVtYmVyKCk7CiAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gMTE7CiAgICAgICAgICAgIC8vIGxpdGVyYWxzIGFuZCB1bmtub3duIHN5bWJvbHMKICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICB3aGlsZSAocG9zIDwgbGVuICYmIGlzVW5rbm93bkNvbnRlbnRDaGFyYWN0ZXIoY29kZSkpIHsKICAgICAgICAgICAgICAgIHBvcysrOwogICAgICAgICAgICAgICAgY29kZSA9IHRleHQuY2hhckNvZGVBdChwb3MpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAodG9rZW5PZmZzZXQgIT09IHBvcykgewogICAgICAgICAgICAgICAgdmFsdWUgPSB0ZXh0LnN1YnN0cmluZyh0b2tlbk9mZnNldCwgcG9zKTsKICAgICAgICAgICAgICAgIHN3aXRjaCAodmFsdWUpIHsKICAgICAgICAgICAgICAgICAgY2FzZSAidHJ1ZSI6CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRva2VuID0gODsKICAgICAgICAgICAgICAgICAgY2FzZSAiZmFsc2UiOgogICAgICAgICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDk7CiAgICAgICAgICAgICAgICAgIGNhc2UgIm51bGwiOgogICAgICAgICAgICAgICAgICAgIHJldHVybiB0b2tlbiA9IDc7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxNjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgdmFsdWUgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShjb2RlKTsKICAgICAgICAgICAgICBwb3MrKzsKICAgICAgICAgICAgICByZXR1cm4gdG9rZW4gPSAxNjsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gaXNVbmtub3duQ29udGVudENoYXJhY3Rlcihjb2RlKSB7CiAgICAgICAgICBpZiAoaXNXaGl0ZVNwYWNlKGNvZGUpIHx8IGlzTGluZUJyZWFrKGNvZGUpKSB7CiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICAgIHN3aXRjaCAoY29kZSkgewogICAgICAgICAgICBjYXNlIDEyNToKICAgICAgICAgICAgY2FzZSA5MzoKICAgICAgICAgICAgY2FzZSAxMjM6CiAgICAgICAgICAgIGNhc2UgOTE6CiAgICAgICAgICAgIGNhc2UgMzQ6CiAgICAgICAgICAgIGNhc2UgNTg6CiAgICAgICAgICAgIGNhc2UgNDQ6CiAgICAgICAgICAgIGNhc2UgNDc6CiAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHNjYW5OZXh0Tm9uVHJpdmlhKCkgewogICAgICAgICAgbGV0IHJlc3VsdDsKICAgICAgICAgIGRvIHsKICAgICAgICAgICAgcmVzdWx0ID0gc2Nhbk5leHQoKTsKICAgICAgICAgIH0gd2hpbGUgKHJlc3VsdCA+PSAxMiAmJiByZXN1bHQgPD0gMTUpOwogICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIHNldFBvc2l0aW9uLAogICAgICAgICAgZ2V0UG9zaXRpb246ICgpID0+IHBvcywKICAgICAgICAgIHNjYW46IGlnbm9yZVRyaXZpYSA/IHNjYW5OZXh0Tm9uVHJpdmlhIDogc2Nhbk5leHQsCiAgICAgICAgICBnZXRUb2tlbjogKCkgPT4gdG9rZW4sCiAgICAgICAgICBnZXRUb2tlblZhbHVlOiAoKSA9PiB2YWx1ZSwKICAgICAgICAgIGdldFRva2VuT2Zmc2V0OiAoKSA9PiB0b2tlbk9mZnNldCwKICAgICAgICAgIGdldFRva2VuTGVuZ3RoOiAoKSA9PiBwb3MgLSB0b2tlbk9mZnNldCwKICAgICAgICAgIGdldFRva2VuU3RhcnRMaW5lOiAoKSA9PiBsaW5lU3RhcnRPZmZzZXQsCiAgICAgICAgICBnZXRUb2tlblN0YXJ0Q2hhcmFjdGVyOiAoKSA9PiB0b2tlbk9mZnNldCAtIHByZXZUb2tlbkxpbmVTdGFydE9mZnNldCwKICAgICAgICAgIGdldFRva2VuRXJyb3I6ICgpID0+IHNjYW5FcnJvcgogICAgICAgIH07CiAgICAgIH0KICAgICAgZXhwb3J0czMuY3JlYXRlU2Nhbm5lciA9IGNyZWF0ZVNjYW5uZXI7CiAgICAgIGZ1bmN0aW9uIGlzV2hpdGVTcGFjZShjaCkgewogICAgICAgIHJldHVybiBjaCA9PT0gMzIgfHwgY2ggPT09IDk7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gaXNMaW5lQnJlYWsoY2gpIHsKICAgICAgICByZXR1cm4gY2ggPT09IDEwIHx8IGNoID09PSAxMzsKICAgICAgfQogICAgICBmdW5jdGlvbiBpc0RpZ2l0KGNoKSB7CiAgICAgICAgcmV0dXJuIGNoID49IDQ4ICYmIGNoIDw9IDU3OwogICAgICB9CiAgICAgIHZhciBDaGFyYWN0ZXJDb2RlczsKICAgICAgKGZ1bmN0aW9uKENoYXJhY3RlckNvZGVzMikgewogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImxpbmVGZWVkIl0gPSAxMF0gPSAibGluZUZlZWQiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImNhcnJpYWdlUmV0dXJuIl0gPSAxM10gPSAiY2FycmlhZ2VSZXR1cm4iOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbInNwYWNlIl0gPSAzMl0gPSAic3BhY2UiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIl8wIl0gPSA0OF0gPSAiXzAiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIl8xIl0gPSA0OV0gPSAiXzEiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIl8yIl0gPSA1MF0gPSAiXzIiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIl8zIl0gPSA1MV0gPSAiXzMiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIl80Il0gPSA1Ml0gPSAiXzQiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIl81Il0gPSA1M10gPSAiXzUiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIl82Il0gPSA1NF0gPSAiXzYiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIl83Il0gPSA1NV0gPSAiXzciOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIl84Il0gPSA1Nl0gPSAiXzgiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIl85Il0gPSA1N10gPSAiXzkiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImEiXSA9IDk3XSA9ICJhIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJiIl0gPSA5OF0gPSAiYiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiYyJdID0gOTldID0gImMiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImQiXSA9IDEwMF0gPSAiZCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiZSJdID0gMTAxXSA9ICJlIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJmIl0gPSAxMDJdID0gImYiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImciXSA9IDEwM10gPSAiZyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiaCJdID0gMTA0XSA9ICJoIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJpIl0gPSAxMDVdID0gImkiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImoiXSA9IDEwNl0gPSAiaiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiayJdID0gMTA3XSA9ICJrIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJsIl0gPSAxMDhdID0gImwiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIm0iXSA9IDEwOV0gPSAibSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsibiJdID0gMTEwXSA9ICJuIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJvIl0gPSAxMTFdID0gIm8iOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbInAiXSA9IDExMl0gPSAicCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsicSJdID0gMTEzXSA9ICJxIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJyIl0gPSAxMTRdID0gInIiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbInMiXSA9IDExNV0gPSAicyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsidCJdID0gMTE2XSA9ICJ0IjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJ1Il0gPSAxMTddID0gInUiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbInYiXSA9IDExOF0gPSAidiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsidyJdID0gMTE5XSA9ICJ3IjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJ4Il0gPSAxMjBdID0gIngiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbInkiXSA9IDEyMV0gPSAieSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsieiJdID0gMTIyXSA9ICJ6IjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJBIl0gPSA2NV0gPSAiQSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiQiJdID0gNjZdID0gIkIiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkMiXSA9IDY3XSA9ICJDIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJEIl0gPSA2OF0gPSAiRCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiRSJdID0gNjldID0gIkUiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkYiXSA9IDcwXSA9ICJGIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJHIl0gPSA3MV0gPSAiRyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiSCJdID0gNzJdID0gIkgiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkkiXSA9IDczXSA9ICJJIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJKIl0gPSA3NF0gPSAiSiI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiSyJdID0gNzVdID0gIksiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIkwiXSA9IDc2XSA9ICJMIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJNIl0gPSA3N10gPSAiTSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiTiJdID0gNzhdID0gIk4iOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIk8iXSA9IDc5XSA9ICJPIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJQIl0gPSA4MF0gPSAiUCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiUSJdID0gODFdID0gIlEiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIlIiXSA9IDgyXSA9ICJSIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJTIl0gPSA4M10gPSAiUyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiVCJdID0gODRdID0gIlQiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIlUiXSA9IDg1XSA9ICJVIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJWIl0gPSA4Nl0gPSAiViI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiVyJdID0gODddID0gIlciOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbIlgiXSA9IDg4XSA9ICJYIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJZIl0gPSA4OV0gPSAiWSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiWiJdID0gOTBdID0gIloiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImFzdGVyaXNrIl0gPSA0Ml0gPSAiYXN0ZXJpc2siOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImJhY2tzbGFzaCJdID0gOTJdID0gImJhY2tzbGFzaCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiY2xvc2VCcmFjZSJdID0gMTI1XSA9ICJjbG9zZUJyYWNlIjsKICAgICAgICBDaGFyYWN0ZXJDb2RlczJbQ2hhcmFjdGVyQ29kZXMyWyJjbG9zZUJyYWNrZXQiXSA9IDkzXSA9ICJjbG9zZUJyYWNrZXQiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImNvbG9uIl0gPSA1OF0gPSAiY29sb24iOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImNvbW1hIl0gPSA0NF0gPSAiY29tbWEiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImRvdCJdID0gNDZdID0gImRvdCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsiZG91YmxlUXVvdGUiXSA9IDM0XSA9ICJkb3VibGVRdW90ZSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsibWludXMiXSA9IDQ1XSA9ICJtaW51cyI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsib3BlbkJyYWNlIl0gPSAxMjNdID0gIm9wZW5CcmFjZSI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsib3BlbkJyYWNrZXQiXSA9IDkxXSA9ICJvcGVuQnJhY2tldCI7CiAgICAgICAgQ2hhcmFjdGVyQ29kZXMyW0NoYXJhY3RlckNvZGVzMlsicGx1cyJdID0gNDNdID0gInBsdXMiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbInNsYXNoIl0gPSA0N10gPSAic2xhc2giOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbImZvcm1GZWVkIl0gPSAxMl0gPSAiZm9ybUZlZWQiOwogICAgICAgIENoYXJhY3RlckNvZGVzMltDaGFyYWN0ZXJDb2RlczJbInRhYiJdID0gOV0gPSAidGFiIjsKICAgICAgfSkoQ2hhcmFjdGVyQ29kZXMgfHwgKENoYXJhY3RlckNvZGVzID0ge30pKTsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvc3RyaW5nLWludGVybi5qcwp2YXIgcmVxdWlyZV9zdHJpbmdfaW50ZXJuID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2pzb25jLXBhcnNlci1wYXRjaC1kMjBmNjcxODM2LTEwLnppcC9ub2RlX21vZHVsZXMvanNvbmMtcGFyc2VyL2xpYi91bWQvaW1wbC9zdHJpbmctaW50ZXJuLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgKGZ1bmN0aW9uKGZhY3RvcnkpIHsKICAgICAgaWYgKHR5cGVvZiBtb2R1bGUyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMi5leHBvcnRzID09PSAib2JqZWN0IikgewogICAgICAgIHZhciB2ID0gZmFjdG9yeShyZXF1aXJlLCBleHBvcnRzMik7CiAgICAgICAgaWYgKHYgIT09IHZvaWQgMCkgbW9kdWxlMi5leHBvcnRzID0gdjsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAiZnVuY3Rpb24iICYmIGRlZmluZS5hbWQpIHsKICAgICAgICBkZWZpbmUoWyJyZXF1aXJlIiwgImV4cG9ydHMiXSwgZmFjdG9yeSk7CiAgICAgIH0KICAgIH0pKGZ1bmN0aW9uKHJlcXVpcmUyLCBleHBvcnRzMykgewogICAgICAidXNlIHN0cmljdCI7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMywgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgICBleHBvcnRzMy5zdXBwb3J0ZWRFb2xzID0gZXhwb3J0czMuY2FjaGVkQnJlYWtMaW5lc1dpdGhTcGFjZXMgPSBleHBvcnRzMy5jYWNoZWRTcGFjZXMgPSB2b2lkIDA7CiAgICAgIGV4cG9ydHMzLmNhY2hlZFNwYWNlcyA9IG5ldyBBcnJheSgyMCkuZmlsbCgwKS5tYXAoKF8sIGluZGV4KSA9PiB7CiAgICAgICAgcmV0dXJuICIgIi5yZXBlYXQoaW5kZXgpOwogICAgICB9KTsKICAgICAgY29uc3QgbWF4Q2FjaGVkVmFsdWVzID0gMjAwOwogICAgICBleHBvcnRzMy5jYWNoZWRCcmVha0xpbmVzV2l0aFNwYWNlcyA9IHsKICAgICAgICAiICI6IHsKICAgICAgICAgICJcbiI6IG5ldyBBcnJheShtYXhDYWNoZWRWYWx1ZXMpLmZpbGwoMCkubWFwKChfLCBpbmRleCkgPT4gewogICAgICAgICAgICByZXR1cm4gIlxuIiArICIgIi5yZXBlYXQoaW5kZXgpOwogICAgICAgICAgfSksCiAgICAgICAgICAiXHIiOiBuZXcgQXJyYXkobWF4Q2FjaGVkVmFsdWVzKS5maWxsKDApLm1hcCgoXywgaW5kZXgpID0+IHsKICAgICAgICAgICAgcmV0dXJuICJcciIgKyAiICIucmVwZWF0KGluZGV4KTsKICAgICAgICAgIH0pLAogICAgICAgICAgIlxyXG4iOiBuZXcgQXJyYXkobWF4Q2FjaGVkVmFsdWVzKS5maWxsKDApLm1hcCgoXywgaW5kZXgpID0+IHsKICAgICAgICAgICAgcmV0dXJuICJcclxuIiArICIgIi5yZXBlYXQoaW5kZXgpOwogICAgICAgICAgfSkKICAgICAgICB9LAogICAgICAgICIJIjogewogICAgICAgICAgIlxuIjogbmV3IEFycmF5KG1heENhY2hlZFZhbHVlcykuZmlsbCgwKS5tYXAoKF8sIGluZGV4KSA9PiB7CiAgICAgICAgICAgIHJldHVybiAiXG4iICsgIgkiLnJlcGVhdChpbmRleCk7CiAgICAgICAgICB9KSwKICAgICAgICAgICJcciI6IG5ldyBBcnJheShtYXhDYWNoZWRWYWx1ZXMpLmZpbGwoMCkubWFwKChfLCBpbmRleCkgPT4gewogICAgICAgICAgICByZXR1cm4gIlxyIiArICIJIi5yZXBlYXQoaW5kZXgpOwogICAgICAgICAgfSksCiAgICAgICAgICAiXHJcbiI6IG5ldyBBcnJheShtYXhDYWNoZWRWYWx1ZXMpLmZpbGwoMCkubWFwKChfLCBpbmRleCkgPT4gewogICAgICAgICAgICByZXR1cm4gIlxyXG4iICsgIgkiLnJlcGVhdChpbmRleCk7CiAgICAgICAgICB9KQogICAgICAgIH0KICAgICAgfTsKICAgICAgZXhwb3J0czMuc3VwcG9ydGVkRW9scyA9IFsiXG4iLCAiXHIiLCAiXHJcbiJdOwogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL2pzb25jLXBhcnNlci1wYXRjaC1kMjBmNjcxODM2LTEwLnppcC9ub2RlX21vZHVsZXMvanNvbmMtcGFyc2VyL2xpYi91bWQvaW1wbC9mb3JtYXQuanMKdmFyIHJlcXVpcmVfZm9ybWF0MyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvZm9ybWF0LmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgdmFyIHNjYW5uZXJfMSA9IHJlcXVpcmVfc2Nhbm5lcigpOwogICAgdmFyIHN0cmluZ19pbnRlcm5fMSA9IHJlcXVpcmVfc3RyaW5nX2ludGVybigpOwogICAgKGZ1bmN0aW9uKGZhY3RvcnkpIHsKICAgICAgaWYgKHR5cGVvZiBtb2R1bGUyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMi5leHBvcnRzID09PSAib2JqZWN0IikgewogICAgICAgIHZhciB2ID0gZmFjdG9yeShyZXF1aXJlLCBleHBvcnRzMik7CiAgICAgICAgaWYgKHYgIT09IHZvaWQgMCkgbW9kdWxlMi5leHBvcnRzID0gdjsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAiZnVuY3Rpb24iICYmIGRlZmluZS5hbWQpIHsKICAgICAgICBkZWZpbmUoWyJyZXF1aXJlIiwgImV4cG9ydHMiLCAiLi9zY2FubmVyIiwgIi4vc3RyaW5nLWludGVybiJdLCBmYWN0b3J5KTsKICAgICAgfQogICAgfSkoZnVuY3Rpb24ocmVxdWlyZTIsIGV4cG9ydHMzKSB7CiAgICAgICJ1c2Ugc3RyaWN0IjsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMzLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICAgIGV4cG9ydHMzLmlzRU9MID0gZXhwb3J0czMuZm9ybWF0ID0gdm9pZCAwOwogICAgICBmdW5jdGlvbiBmb3JtYXQoZG9jdW1lbnRUZXh0LCByYW5nZSwgb3B0aW9ucykgewogICAgICAgIGxldCBpbml0aWFsSW5kZW50TGV2ZWw7CiAgICAgICAgbGV0IGZvcm1hdFRleHQ7CiAgICAgICAgbGV0IGZvcm1hdFRleHRTdGFydDsKICAgICAgICBsZXQgcmFuZ2VTdGFydDsKICAgICAgICBsZXQgcmFuZ2VFbmQ7CiAgICAgICAgaWYgKHJhbmdlKSB7CiAgICAgICAgICByYW5nZVN0YXJ0ID0gcmFuZ2Uub2Zmc2V0OwogICAgICAgICAgcmFuZ2VFbmQgPSByYW5nZVN0YXJ0ICsgcmFuZ2UubGVuZ3RoOwogICAgICAgICAgZm9ybWF0VGV4dFN0YXJ0ID0gcmFuZ2VTdGFydDsKICAgICAgICAgIHdoaWxlIChmb3JtYXRUZXh0U3RhcnQgPiAwICYmICFpc0VPTChkb2N1bWVudFRleHQsIGZvcm1hdFRleHRTdGFydCAtIDEpKSB7CiAgICAgICAgICAgIGZvcm1hdFRleHRTdGFydC0tOwogICAgICAgICAgfQogICAgICAgICAgbGV0IGVuZE9mZnNldCA9IHJhbmdlRW5kOwogICAgICAgICAgd2hpbGUgKGVuZE9mZnNldCA8IGRvY3VtZW50VGV4dC5sZW5ndGggJiYgIWlzRU9MKGRvY3VtZW50VGV4dCwgZW5kT2Zmc2V0KSkgewogICAgICAgICAgICBlbmRPZmZzZXQrKzsKICAgICAgICAgIH0KICAgICAgICAgIGZvcm1hdFRleHQgPSBkb2N1bWVudFRleHQuc3Vic3RyaW5nKGZvcm1hdFRleHRTdGFydCwgZW5kT2Zmc2V0KTsKICAgICAgICAgIGluaXRpYWxJbmRlbnRMZXZlbCA9IGNvbXB1dGVJbmRlbnRMZXZlbChmb3JtYXRUZXh0LCBvcHRpb25zKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgZm9ybWF0VGV4dCA9IGRvY3VtZW50VGV4dDsKICAgICAgICAgIGluaXRpYWxJbmRlbnRMZXZlbCA9IDA7CiAgICAgICAgICBmb3JtYXRUZXh0U3RhcnQgPSAwOwogICAgICAgICAgcmFuZ2VTdGFydCA9IDA7CiAgICAgICAgICByYW5nZUVuZCA9IGRvY3VtZW50VGV4dC5sZW5ndGg7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGVvbCA9IGdldEVPTChvcHRpb25zLCBkb2N1bWVudFRleHQpOwogICAgICAgIGNvbnN0IGVvbEZhc3RQYXRoU3VwcG9ydGVkID0gc3RyaW5nX2ludGVybl8xLnN1cHBvcnRlZEVvbHMuaW5jbHVkZXMoZW9sKTsKICAgICAgICBsZXQgbnVtYmVyTGluZUJyZWFrcyA9IDA7CiAgICAgICAgbGV0IGluZGVudExldmVsID0gMDsKICAgICAgICBsZXQgaW5kZW50VmFsdWU7CiAgICAgICAgaWYgKG9wdGlvbnMuaW5zZXJ0U3BhY2VzKSB7CiAgICAgICAgICBpbmRlbnRWYWx1ZSA9IHN0cmluZ19pbnRlcm5fMS5jYWNoZWRTcGFjZXNbb3B0aW9ucy50YWJTaXplIHx8IDRdID8/IHJlcGVhdChzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdLCBvcHRpb25zLnRhYlNpemUgfHwgNCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGluZGVudFZhbHVlID0gIgkiOwogICAgICAgIH0KICAgICAgICBjb25zdCBpbmRlbnRUeXBlID0gaW5kZW50VmFsdWUgPT09ICIJIiA/ICIJIiA6ICIgIjsKICAgICAgICBsZXQgc2Nhbm5lciA9ICgwLCBzY2FubmVyXzEuY3JlYXRlU2Nhbm5lcikoZm9ybWF0VGV4dCwgZmFsc2UpOwogICAgICAgIGxldCBoYXNFcnJvciA9IGZhbHNlOwogICAgICAgIGZ1bmN0aW9uIG5ld0xpbmVzQW5kSW5kZW50KCkgewogICAgICAgICAgaWYgKG51bWJlckxpbmVCcmVha3MgPiAxKSB7CiAgICAgICAgICAgIHJldHVybiByZXBlYXQoZW9sLCBudW1iZXJMaW5lQnJlYWtzKSArIHJlcGVhdChpbmRlbnRWYWx1ZSwgaW5pdGlhbEluZGVudExldmVsICsgaW5kZW50TGV2ZWwpOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgYW1vdW50T2ZTcGFjZXMgPSBpbmRlbnRWYWx1ZS5sZW5ndGggKiAoaW5pdGlhbEluZGVudExldmVsICsgaW5kZW50TGV2ZWwpOwogICAgICAgICAgaWYgKCFlb2xGYXN0UGF0aFN1cHBvcnRlZCB8fCBhbW91bnRPZlNwYWNlcyA+IHN0cmluZ19pbnRlcm5fMS5jYWNoZWRCcmVha0xpbmVzV2l0aFNwYWNlc1tpbmRlbnRUeXBlXVtlb2xdLmxlbmd0aCkgewogICAgICAgICAgICByZXR1cm4gZW9sICsgcmVwZWF0KGluZGVudFZhbHVlLCBpbml0aWFsSW5kZW50TGV2ZWwgKyBpbmRlbnRMZXZlbCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoYW1vdW50T2ZTcGFjZXMgPD0gMCkgewogICAgICAgICAgICByZXR1cm4gZW9sOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHN0cmluZ19pbnRlcm5fMS5jYWNoZWRCcmVha0xpbmVzV2l0aFNwYWNlc1tpbmRlbnRUeXBlXVtlb2xdW2Ftb3VudE9mU3BhY2VzXTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gc2Nhbk5leHQoKSB7CiAgICAgICAgICBsZXQgdG9rZW4gPSBzY2FubmVyLnNjYW4oKTsKICAgICAgICAgIG51bWJlckxpbmVCcmVha3MgPSAwOwogICAgICAgICAgd2hpbGUgKHRva2VuID09PSAxNSB8fCB0b2tlbiA9PT0gMTQpIHsKICAgICAgICAgICAgaWYgKHRva2VuID09PSAxNCAmJiBvcHRpb25zLmtlZXBMaW5lcykgewogICAgICAgICAgICAgIG51bWJlckxpbmVCcmVha3MgKz0gMTsKICAgICAgICAgICAgfSBlbHNlIGlmICh0b2tlbiA9PT0gMTQpIHsKICAgICAgICAgICAgICBudW1iZXJMaW5lQnJlYWtzID0gMTsKICAgICAgICAgICAgfQogICAgICAgICAgICB0b2tlbiA9IHNjYW5uZXIuc2NhbigpOwogICAgICAgICAgfQogICAgICAgICAgaGFzRXJyb3IgPSB0b2tlbiA9PT0gMTYgfHwgc2Nhbm5lci5nZXRUb2tlbkVycm9yKCkgIT09IDA7CiAgICAgICAgICByZXR1cm4gdG9rZW47CiAgICAgICAgfQogICAgICAgIGNvbnN0IGVkaXRPcGVyYXRpb25zID0gW107CiAgICAgICAgZnVuY3Rpb24gYWRkRWRpdCh0ZXh0LCBzdGFydE9mZnNldCwgZW5kT2Zmc2V0KSB7CiAgICAgICAgICBpZiAoIWhhc0Vycm9yICYmICghcmFuZ2UgfHwgc3RhcnRPZmZzZXQgPCByYW5nZUVuZCAmJiBlbmRPZmZzZXQgPiByYW5nZVN0YXJ0KSAmJiBkb2N1bWVudFRleHQuc3Vic3RyaW5nKHN0YXJ0T2Zmc2V0LCBlbmRPZmZzZXQpICE9PSB0ZXh0KSB7CiAgICAgICAgICAgIGVkaXRPcGVyYXRpb25zLnB1c2goewogICAgICAgICAgICAgIG9mZnNldDogc3RhcnRPZmZzZXQsCiAgICAgICAgICAgICAgbGVuZ3RoOiBlbmRPZmZzZXQgLSBzdGFydE9mZnNldCwKICAgICAgICAgICAgICBjb250ZW50OiB0ZXh0CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBsZXQgZmlyc3RUb2tlbiA9IHNjYW5OZXh0KCk7CiAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwKSB7CiAgICAgICAgICBhZGRFZGl0KHJlcGVhdChlb2wsIG51bWJlckxpbmVCcmVha3MpLCAwLCAwKTsKICAgICAgICB9CiAgICAgICAgaWYgKGZpcnN0VG9rZW4gIT09IDE3KSB7CiAgICAgICAgICBsZXQgZmlyc3RUb2tlblN0YXJ0ID0gc2Nhbm5lci5nZXRUb2tlbk9mZnNldCgpICsgZm9ybWF0VGV4dFN0YXJ0OwogICAgICAgICAgbGV0IGluaXRpYWxJbmRlbnQgPSBpbmRlbnRWYWx1ZS5sZW5ndGggKiBpbml0aWFsSW5kZW50TGV2ZWwgPCAyMCAmJiBvcHRpb25zLmluc2VydFNwYWNlcyA/IHN0cmluZ19pbnRlcm5fMS5jYWNoZWRTcGFjZXNbaW5kZW50VmFsdWUubGVuZ3RoICogaW5pdGlhbEluZGVudExldmVsXSA6IHJlcGVhdChpbmRlbnRWYWx1ZSwgaW5pdGlhbEluZGVudExldmVsKTsKICAgICAgICAgIGFkZEVkaXQoaW5pdGlhbEluZGVudCwgZm9ybWF0VGV4dFN0YXJ0LCBmaXJzdFRva2VuU3RhcnQpOwogICAgICAgIH0KICAgICAgICB3aGlsZSAoZmlyc3RUb2tlbiAhPT0gMTcpIHsKICAgICAgICAgIGxldCBmaXJzdFRva2VuRW5kID0gc2Nhbm5lci5nZXRUb2tlbk9mZnNldCgpICsgc2Nhbm5lci5nZXRUb2tlbkxlbmd0aCgpICsgZm9ybWF0VGV4dFN0YXJ0OwogICAgICAgICAgbGV0IHNlY29uZFRva2VuID0gc2Nhbk5leHQoKTsKICAgICAgICAgIGxldCByZXBsYWNlQ29udGVudCA9ICIiOwogICAgICAgICAgbGV0IG5lZWRzTGluZUJyZWFrID0gZmFsc2U7CiAgICAgICAgICB3aGlsZSAobnVtYmVyTGluZUJyZWFrcyA9PT0gMCAmJiAoc2Vjb25kVG9rZW4gPT09IDEyIHx8IHNlY29uZFRva2VuID09PSAxMykpIHsKICAgICAgICAgICAgbGV0IGNvbW1lbnRUb2tlblN0YXJ0ID0gc2Nhbm5lci5nZXRUb2tlbk9mZnNldCgpICsgZm9ybWF0VGV4dFN0YXJ0OwogICAgICAgICAgICBhZGRFZGl0KAogICAgICAgICAgICAgIHN0cmluZ19pbnRlcm5fMS5jYWNoZWRTcGFjZXNbMV0sCiAgICAgICAgICAgICAgZmlyc3RUb2tlbkVuZCwKICAgICAgICAgICAgICBjb21tZW50VG9rZW5TdGFydAogICAgICAgICAgICApOwogICAgICAgICAgICBmaXJzdFRva2VuRW5kID0gc2Nhbm5lci5nZXRUb2tlbk9mZnNldCgpICsgc2Nhbm5lci5nZXRUb2tlbkxlbmd0aCgpICsgZm9ybWF0VGV4dFN0YXJ0OwogICAgICAgICAgICBuZWVkc0xpbmVCcmVhayA9IHNlY29uZFRva2VuID09PSAxMjsKICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZWVkc0xpbmVCcmVhayA/IG5ld0xpbmVzQW5kSW5kZW50KCkgOiAiIjsKICAgICAgICAgICAgc2Vjb25kVG9rZW4gPSBzY2FuTmV4dCgpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHNlY29uZFRva2VuID09PSAyKSB7CiAgICAgICAgICAgIGlmIChmaXJzdFRva2VuICE9PSAxKSB7CiAgICAgICAgICAgICAgaW5kZW50TGV2ZWwtLTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAob3B0aW9ucy5rZWVwTGluZXMgJiYgbnVtYmVyTGluZUJyZWFrcyA+IDAgfHwgIW9wdGlvbnMua2VlcExpbmVzICYmIGZpcnN0VG9rZW4gIT09IDEpIHsKICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5ld0xpbmVzQW5kSW5kZW50KCk7CiAgICAgICAgICAgIH0gZWxzZSBpZiAob3B0aW9ucy5rZWVwTGluZXMpIHsKICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IHN0cmluZ19pbnRlcm5fMS5jYWNoZWRTcGFjZXNbMV07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSBpZiAoc2Vjb25kVG9rZW4gPT09IDQpIHsKICAgICAgICAgICAgaWYgKGZpcnN0VG9rZW4gIT09IDMpIHsKICAgICAgICAgICAgICBpbmRlbnRMZXZlbC0tOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChvcHRpb25zLmtlZXBMaW5lcyAmJiBudW1iZXJMaW5lQnJlYWtzID4gMCB8fCAhb3B0aW9ucy5rZWVwTGluZXMgJiYgZmlyc3RUb2tlbiAhPT0gMykgewogICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gbmV3TGluZXNBbmRJbmRlbnQoKTsKICAgICAgICAgICAgfSBlbHNlIGlmIChvcHRpb25zLmtlZXBMaW5lcykgewogICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gc3RyaW5nX2ludGVybl8xLmNhY2hlZFNwYWNlc1sxXTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc3dpdGNoIChmaXJzdFRva2VuKSB7CiAgICAgICAgICAgICAgY2FzZSAzOgogICAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICAgIGluZGVudExldmVsKys7CiAgICAgICAgICAgICAgICBpZiAob3B0aW9ucy5rZWVwTGluZXMgJiYgbnVtYmVyTGluZUJyZWFrcyA+IDAgfHwgIW9wdGlvbnMua2VlcExpbmVzKSB7CiAgICAgICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gbmV3TGluZXNBbmRJbmRlbnQoKTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gc3RyaW5nX2ludGVybl8xLmNhY2hlZFNwYWNlc1sxXTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLmtlZXBMaW5lcyAmJiBudW1iZXJMaW5lQnJlYWtzID4gMCB8fCAhb3B0aW9ucy5rZWVwTGluZXMpIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxMjoKICAgICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gbmV3TGluZXNBbmRJbmRlbnQoKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgMTM6CiAgICAgICAgICAgICAgICBpZiAobnVtYmVyTGluZUJyZWFrcyA+IDApIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICAgICAgfSBlbHNlIGlmICghbmVlZHNMaW5lQnJlYWspIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSA2OgogICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMua2VlcExpbmVzICYmIG51bWJlckxpbmVCcmVha3MgPiAwKSB7CiAgICAgICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gbmV3TGluZXNBbmRJbmRlbnQoKTsKICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoIW5lZWRzTGluZUJyZWFrKSB7CiAgICAgICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gc3RyaW5nX2ludGVybl8xLmNhY2hlZFNwYWNlc1sxXTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgMTA6CiAgICAgICAgICAgICAgICBpZiAob3B0aW9ucy5rZWVwTGluZXMgJiYgbnVtYmVyTGluZUJyZWFrcyA+IDApIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICAgICAgfSBlbHNlIGlmIChzZWNvbmRUb2tlbiA9PT0gNiAmJiAhbmVlZHNMaW5lQnJlYWspIHsKICAgICAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSAiIjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgNzoKICAgICAgICAgICAgICBjYXNlIDg6CiAgICAgICAgICAgICAgY2FzZSA5OgogICAgICAgICAgICAgIGNhc2UgMTE6CiAgICAgICAgICAgICAgY2FzZSAyOgogICAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLmtlZXBMaW5lcyAmJiBudW1iZXJMaW5lQnJlYWtzID4gMCkgewogICAgICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG5ld0xpbmVzQW5kSW5kZW50KCk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICBpZiAoKHNlY29uZFRva2VuID09PSAxMiB8fCBzZWNvbmRUb2tlbiA9PT0gMTMpICYmICFuZWVkc0xpbmVCcmVhaykgewogICAgICAgICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gc3RyaW5nX2ludGVybl8xLmNhY2hlZFNwYWNlc1sxXTsKICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChzZWNvbmRUb2tlbiAhPT0gNSAmJiBzZWNvbmRUb2tlbiAhPT0gMTcpIHsKICAgICAgICAgICAgICAgICAgICBoYXNFcnJvciA9IHRydWU7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgMTY6CiAgICAgICAgICAgICAgICBoYXNFcnJvciA9IHRydWU7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAobnVtYmVyTGluZUJyZWFrcyA+IDAgJiYgKHNlY29uZFRva2VuID09PSAxMiB8fCBzZWNvbmRUb2tlbiA9PT0gMTMpKSB7CiAgICAgICAgICAgICAgcmVwbGFjZUNvbnRlbnQgPSBuZXdMaW5lc0FuZEluZGVudCgpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoc2Vjb25kVG9rZW4gPT09IDE3KSB7CiAgICAgICAgICAgIGlmIChvcHRpb25zLmtlZXBMaW5lcyAmJiBudW1iZXJMaW5lQnJlYWtzID4gMCkgewogICAgICAgICAgICAgIHJlcGxhY2VDb250ZW50ID0gbmV3TGluZXNBbmRJbmRlbnQoKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICByZXBsYWNlQ29udGVudCA9IG9wdGlvbnMuaW5zZXJ0RmluYWxOZXdsaW5lID8gZW9sIDogIiI7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHNlY29uZFRva2VuU3RhcnQgPSBzY2FubmVyLmdldFRva2VuT2Zmc2V0KCkgKyBmb3JtYXRUZXh0U3RhcnQ7CiAgICAgICAgICBhZGRFZGl0KHJlcGxhY2VDb250ZW50LCBmaXJzdFRva2VuRW5kLCBzZWNvbmRUb2tlblN0YXJ0KTsKICAgICAgICAgIGZpcnN0VG9rZW4gPSBzZWNvbmRUb2tlbjsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGVkaXRPcGVyYXRpb25zOwogICAgICB9CiAgICAgIGV4cG9ydHMzLmZvcm1hdCA9IGZvcm1hdDsKICAgICAgZnVuY3Rpb24gcmVwZWF0KHMsIGNvdW50KSB7CiAgICAgICAgbGV0IHJlc3VsdCA9ICIiOwogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY291bnQ7IGkrKykgewogICAgICAgICAgcmVzdWx0ICs9IHM7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gY29tcHV0ZUluZGVudExldmVsKGNvbnRlbnQsIG9wdGlvbnMpIHsKICAgICAgICBsZXQgaSA9IDA7CiAgICAgICAgbGV0IG5DaGFycyA9IDA7CiAgICAgICAgY29uc3QgdGFiU2l6ZSA9IG9wdGlvbnMudGFiU2l6ZSB8fCA0OwogICAgICAgIHdoaWxlIChpIDwgY29udGVudC5sZW5ndGgpIHsKICAgICAgICAgIGxldCBjaCA9IGNvbnRlbnQuY2hhckF0KGkpOwogICAgICAgICAgaWYgKGNoID09PSBzdHJpbmdfaW50ZXJuXzEuY2FjaGVkU3BhY2VzWzFdKSB7CiAgICAgICAgICAgIG5DaGFycysrOwogICAgICAgICAgfSBlbHNlIGlmIChjaCA9PT0gIgkiKSB7CiAgICAgICAgICAgIG5DaGFycyArPSB0YWJTaXplOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBpKys7CiAgICAgICAgfQogICAgICAgIHJldHVybiBNYXRoLmZsb29yKG5DaGFycyAvIHRhYlNpemUpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGdldEVPTChvcHRpb25zLCB0ZXh0KSB7CiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0ZXh0Lmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICBjb25zdCBjaCA9IHRleHQuY2hhckF0KGkpOwogICAgICAgICAgaWYgKGNoID09PSAiXHIiKSB7CiAgICAgICAgICAgIGlmIChpICsgMSA8IHRleHQubGVuZ3RoICYmIHRleHQuY2hhckF0KGkgKyAxKSA9PT0gIlxuIikgewogICAgICAgICAgICAgIHJldHVybiAiXHJcbiI7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuICJcciI7CiAgICAgICAgICB9IGVsc2UgaWYgKGNoID09PSAiXG4iKSB7CiAgICAgICAgICAgIHJldHVybiAiXG4iOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gb3B0aW9ucyAmJiBvcHRpb25zLmVvbCB8fCAiXG4iOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGlzRU9MKHRleHQsIG9mZnNldCkgewogICAgICAgIHJldHVybiAiXHJcbiIuaW5kZXhPZih0ZXh0LmNoYXJBdChvZmZzZXQpKSAhPT0gLTE7CiAgICAgIH0KICAgICAgZXhwb3J0czMuaXNFT0wgPSBpc0VPTDsKICAgIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvcGFyc2VyLmpzCnZhciByZXF1aXJlX3BhcnNlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvcGFyc2VyLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgdmFyIHNjYW5uZXJfMSA9IHJlcXVpcmVfc2Nhbm5lcigpOwogICAgKGZ1bmN0aW9uKGZhY3RvcnkpIHsKICAgICAgaWYgKHR5cGVvZiBtb2R1bGUyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMi5leHBvcnRzID09PSAib2JqZWN0IikgewogICAgICAgIHZhciB2ID0gZmFjdG9yeShyZXF1aXJlLCBleHBvcnRzMik7CiAgICAgICAgaWYgKHYgIT09IHZvaWQgMCkgbW9kdWxlMi5leHBvcnRzID0gdjsKICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAiZnVuY3Rpb24iICYmIGRlZmluZS5hbWQpIHsKICAgICAgICBkZWZpbmUoWyJyZXF1aXJlIiwgImV4cG9ydHMiLCAiLi9zY2FubmVyIl0sIGZhY3RvcnkpOwogICAgICB9CiAgICB9KShmdW5jdGlvbihyZXF1aXJlMiwgZXhwb3J0czMpIHsKICAgICAgInVzZSBzdHJpY3QiOwogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czMsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgICAgZXhwb3J0czMuZ2V0Tm9kZVR5cGUgPSBleHBvcnRzMy5zdHJpcENvbW1lbnRzID0gZXhwb3J0czMudmlzaXQgPSBleHBvcnRzMy5maW5kTm9kZUF0T2Zmc2V0ID0gZXhwb3J0czMuY29udGFpbnMgPSBleHBvcnRzMy5nZXROb2RlVmFsdWUgPSBleHBvcnRzMy5nZXROb2RlUGF0aCA9IGV4cG9ydHMzLmZpbmROb2RlQXRMb2NhdGlvbiA9IGV4cG9ydHMzLnBhcnNlVHJlZSA9IGV4cG9ydHMzLnBhcnNlID0gZXhwb3J0czMuZ2V0TG9jYXRpb24gPSB2b2lkIDA7CiAgICAgIHZhciBQYXJzZU9wdGlvbnM7CiAgICAgIChmdW5jdGlvbihQYXJzZU9wdGlvbnMyKSB7CiAgICAgICAgUGFyc2VPcHRpb25zMi5ERUZBVUxUID0gewogICAgICAgICAgYWxsb3dUcmFpbGluZ0NvbW1hOiBmYWxzZQogICAgICAgIH07CiAgICAgIH0pKFBhcnNlT3B0aW9ucyB8fCAoUGFyc2VPcHRpb25zID0ge30pKTsKICAgICAgZnVuY3Rpb24gZ2V0TG9jYXRpb24odGV4dCwgcG9zaXRpb24pIHsKICAgICAgICBjb25zdCBzZWdtZW50cyA9IFtdOwogICAgICAgIGNvbnN0IGVhcmx5UmV0dXJuRXhjZXB0aW9uID0gbmV3IE9iamVjdCgpOwogICAgICAgIGxldCBwcmV2aW91c05vZGUgPSB2b2lkIDA7CiAgICAgICAgY29uc3QgcHJldmlvdXNOb2RlSW5zdCA9IHsKICAgICAgICAgIHZhbHVlOiB7fSwKICAgICAgICAgIG9mZnNldDogMCwKICAgICAgICAgIGxlbmd0aDogMCwKICAgICAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICAgICAgcGFyZW50OiB2b2lkIDAKICAgICAgICB9OwogICAgICAgIGxldCBpc0F0UHJvcGVydHlLZXkgPSBmYWxzZTsKICAgICAgICBmdW5jdGlvbiBzZXRQcmV2aW91c05vZGUodmFsdWUsIG9mZnNldCwgbGVuZ3RoLCB0eXBlKSB7CiAgICAgICAgICBwcmV2aW91c05vZGVJbnN0LnZhbHVlID0gdmFsdWU7CiAgICAgICAgICBwcmV2aW91c05vZGVJbnN0Lm9mZnNldCA9IG9mZnNldDsKICAgICAgICAgIHByZXZpb3VzTm9kZUluc3QubGVuZ3RoID0gbGVuZ3RoOwogICAgICAgICAgcHJldmlvdXNOb2RlSW5zdC50eXBlID0gdHlwZTsKICAgICAgICAgIHByZXZpb3VzTm9kZUluc3QuY29sb25PZmZzZXQgPSB2b2lkIDA7CiAgICAgICAgICBwcmV2aW91c05vZGUgPSBwcmV2aW91c05vZGVJbnN0OwogICAgICAgIH0KICAgICAgICB0cnkgewogICAgICAgICAgdmlzaXQodGV4dCwgewogICAgICAgICAgICBvbk9iamVjdEJlZ2luOiAob2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgICBpZiAocG9zaXRpb24gPD0gb2Zmc2V0KSB7CiAgICAgICAgICAgICAgICB0aHJvdyBlYXJseVJldHVybkV4Y2VwdGlvbjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgcHJldmlvdXNOb2RlID0gdm9pZCAwOwogICAgICAgICAgICAgIGlzQXRQcm9wZXJ0eUtleSA9IHBvc2l0aW9uID4gb2Zmc2V0OwogICAgICAgICAgICAgIHNlZ21lbnRzLnB1c2goIiIpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBvbk9iamVjdFByb3BlcnR5OiAobmFtZSwgb2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgICBpZiAocG9zaXRpb24gPCBvZmZzZXQpIHsKICAgICAgICAgICAgICAgIHRocm93IGVhcmx5UmV0dXJuRXhjZXB0aW9uOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBzZXRQcmV2aW91c05vZGUobmFtZSwgb2Zmc2V0LCBsZW5ndGgsICJwcm9wZXJ0eSIpOwogICAgICAgICAgICAgIHNlZ21lbnRzW3NlZ21lbnRzLmxlbmd0aCAtIDFdID0gbmFtZTsKICAgICAgICAgICAgICBpZiAocG9zaXRpb24gPD0gb2Zmc2V0ICsgbGVuZ3RoKSB7CiAgICAgICAgICAgICAgICB0aHJvdyBlYXJseVJldHVybkV4Y2VwdGlvbjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIG9uT2JqZWN0RW5kOiAob2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgICBpZiAocG9zaXRpb24gPD0gb2Zmc2V0KSB7CiAgICAgICAgICAgICAgICB0aHJvdyBlYXJseVJldHVybkV4Y2VwdGlvbjsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgcHJldmlvdXNOb2RlID0gdm9pZCAwOwogICAgICAgICAgICAgIHNlZ21lbnRzLnBvcCgpOwogICAgICAgICAgICB9LAogICAgICAgICAgICBvbkFycmF5QmVnaW46IChvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8PSBvZmZzZXQpIHsKICAgICAgICAgICAgICAgIHRocm93IGVhcmx5UmV0dXJuRXhjZXB0aW9uOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBwcmV2aW91c05vZGUgPSB2b2lkIDA7CiAgICAgICAgICAgICAgc2VnbWVudHMucHVzaCgwKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgb25BcnJheUVuZDogKG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgICAgaWYgKHBvc2l0aW9uIDw9IG9mZnNldCkgewogICAgICAgICAgICAgICAgdGhyb3cgZWFybHlSZXR1cm5FeGNlcHRpb247CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHByZXZpb3VzTm9kZSA9IHZvaWQgMDsKICAgICAgICAgICAgICBzZWdtZW50cy5wb3AoKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgb25MaXRlcmFsVmFsdWU6ICh2YWx1ZSwgb2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgICBpZiAocG9zaXRpb24gPCBvZmZzZXQpIHsKICAgICAgICAgICAgICAgIHRocm93IGVhcmx5UmV0dXJuRXhjZXB0aW9uOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBzZXRQcmV2aW91c05vZGUodmFsdWUsIG9mZnNldCwgbGVuZ3RoLCBnZXROb2RlVHlwZSh2YWx1ZSkpOwogICAgICAgICAgICAgIGlmIChwb3NpdGlvbiA8PSBvZmZzZXQgKyBsZW5ndGgpIHsKICAgICAgICAgICAgICAgIHRocm93IGVhcmx5UmV0dXJuRXhjZXB0aW9uOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgb25TZXBhcmF0b3I6IChzZXAsIG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgICAgaWYgKHBvc2l0aW9uIDw9IG9mZnNldCkgewogICAgICAgICAgICAgICAgdGhyb3cgZWFybHlSZXR1cm5FeGNlcHRpb247CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChzZXAgPT09ICI6IiAmJiBwcmV2aW91c05vZGUgJiYgcHJldmlvdXNOb2RlLnR5cGUgPT09ICJwcm9wZXJ0eSIpIHsKICAgICAgICAgICAgICAgIHByZXZpb3VzTm9kZS5jb2xvbk9mZnNldCA9IG9mZnNldDsKICAgICAgICAgICAgICAgIGlzQXRQcm9wZXJ0eUtleSA9IGZhbHNlOwogICAgICAgICAgICAgICAgcHJldmlvdXNOb2RlID0gdm9pZCAwOwogICAgICAgICAgICAgIH0gZWxzZSBpZiAoc2VwID09PSAiLCIpIHsKICAgICAgICAgICAgICAgIGNvbnN0IGxhc3QgPSBzZWdtZW50c1tzZWdtZW50cy5sZW5ndGggLSAxXTsKICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgbGFzdCA9PT0gIm51bWJlciIpIHsKICAgICAgICAgICAgICAgICAgc2VnbWVudHNbc2VnbWVudHMubGVuZ3RoIC0gMV0gPSBsYXN0ICsgMTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIGlzQXRQcm9wZXJ0eUtleSA9IHRydWU7CiAgICAgICAgICAgICAgICAgIHNlZ21lbnRzW3NlZ21lbnRzLmxlbmd0aCAtIDFdID0gIiI7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBwcmV2aW91c05vZGUgPSB2b2lkIDA7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9KTsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICBpZiAoZSAhPT0gZWFybHlSZXR1cm5FeGNlcHRpb24pIHsKICAgICAgICAgICAgdGhyb3cgZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIHBhdGg6IHNlZ21lbnRzLAogICAgICAgICAgcHJldmlvdXNOb2RlLAogICAgICAgICAgaXNBdFByb3BlcnR5S2V5LAogICAgICAgICAgbWF0Y2hlczogKHBhdHRlcm4pID0+IHsKICAgICAgICAgICAgbGV0IGsgPSAwOwogICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgayA8IHBhdHRlcm4ubGVuZ3RoICYmIGkgPCBzZWdtZW50cy5sZW5ndGg7IGkrKykgewogICAgICAgICAgICAgIGlmIChwYXR0ZXJuW2tdID09PSBzZWdtZW50c1tpXSB8fCBwYXR0ZXJuW2tdID09PSAiKiIpIHsKICAgICAgICAgICAgICAgIGsrKzsKICAgICAgICAgICAgICB9IGVsc2UgaWYgKHBhdHRlcm5ba10gIT09ICIqKiIpIHsKICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIGsgPT09IHBhdHRlcm4ubGVuZ3RoOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgIH0KICAgICAgZXhwb3J0czMuZ2V0TG9jYXRpb24gPSBnZXRMb2NhdGlvbjsKICAgICAgZnVuY3Rpb24gcGFyc2UodGV4dCwgZXJyb3JzID0gW10sIG9wdGlvbnMgPSBQYXJzZU9wdGlvbnMuREVGQVVMVCkgewogICAgICAgIGxldCBjdXJyZW50UHJvcGVydHkgPSBudWxsOwogICAgICAgIGxldCBjdXJyZW50UGFyZW50ID0gW107CiAgICAgICAgY29uc3QgcHJldmlvdXNQYXJlbnRzID0gW107CiAgICAgICAgZnVuY3Rpb24gb25WYWx1ZSh2YWx1ZSkgewogICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoY3VycmVudFBhcmVudCkpIHsKICAgICAgICAgICAgY3VycmVudFBhcmVudC5wdXNoKHZhbHVlKTsKICAgICAgICAgIH0gZWxzZSBpZiAoY3VycmVudFByb3BlcnR5ICE9PSBudWxsKSB7CiAgICAgICAgICAgIGN1cnJlbnRQYXJlbnRbY3VycmVudFByb3BlcnR5XSA9IHZhbHVlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb25zdCB2aXNpdG9yID0gewogICAgICAgICAgb25PYmplY3RCZWdpbjogKCkgPT4gewogICAgICAgICAgICBjb25zdCBvYmplY3QgPSB7fTsKICAgICAgICAgICAgb25WYWx1ZShvYmplY3QpOwogICAgICAgICAgICBwcmV2aW91c1BhcmVudHMucHVzaChjdXJyZW50UGFyZW50KTsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IG9iamVjdDsKICAgICAgICAgICAgY3VycmVudFByb3BlcnR5ID0gbnVsbDsKICAgICAgICAgIH0sCiAgICAgICAgICBvbk9iamVjdFByb3BlcnR5OiAobmFtZSkgPT4gewogICAgICAgICAgICBjdXJyZW50UHJvcGVydHkgPSBuYW1lOwogICAgICAgICAgfSwKICAgICAgICAgIG9uT2JqZWN0RW5kOiAoKSA9PiB7CiAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQgPSBwcmV2aW91c1BhcmVudHMucG9wKCk7CiAgICAgICAgICB9LAogICAgICAgICAgb25BcnJheUJlZ2luOiAoKSA9PiB7CiAgICAgICAgICAgIGNvbnN0IGFycmF5ID0gW107CiAgICAgICAgICAgIG9uVmFsdWUoYXJyYXkpOwogICAgICAgICAgICBwcmV2aW91c1BhcmVudHMucHVzaChjdXJyZW50UGFyZW50KTsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IGFycmF5OwogICAgICAgICAgICBjdXJyZW50UHJvcGVydHkgPSBudWxsOwogICAgICAgICAgfSwKICAgICAgICAgIG9uQXJyYXlFbmQ6ICgpID0+IHsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IHByZXZpb3VzUGFyZW50cy5wb3AoKTsKICAgICAgICAgIH0sCiAgICAgICAgICBvbkxpdGVyYWxWYWx1ZTogb25WYWx1ZSwKICAgICAgICAgIG9uRXJyb3I6IChlcnJvciwgb2Zmc2V0LCBsZW5ndGgpID0+IHsKICAgICAgICAgICAgZXJyb3JzLnB1c2goeyBlcnJvciwgb2Zmc2V0LCBsZW5ndGggfSk7CiAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICB2aXNpdCh0ZXh0LCB2aXNpdG9yLCBvcHRpb25zKTsKICAgICAgICByZXR1cm4gY3VycmVudFBhcmVudFswXTsKICAgICAgfQogICAgICBleHBvcnRzMy5wYXJzZSA9IHBhcnNlOwogICAgICBmdW5jdGlvbiBwYXJzZVRyZWUodGV4dCwgZXJyb3JzID0gW10sIG9wdGlvbnMgPSBQYXJzZU9wdGlvbnMuREVGQVVMVCkgewogICAgICAgIGxldCBjdXJyZW50UGFyZW50ID0gewogICAgICAgICAgdHlwZTogImFycmF5IiwKICAgICAgICAgIG9mZnNldDogLTEsCiAgICAgICAgICBsZW5ndGg6IC0xLAogICAgICAgICAgY2hpbGRyZW46IFtdLAogICAgICAgICAgcGFyZW50OiB2b2lkIDAKICAgICAgICB9OwogICAgICAgIGZ1bmN0aW9uIGVuc3VyZVByb3BlcnR5Q29tcGxldGUoZW5kT2Zmc2V0KSB7CiAgICAgICAgICBpZiAoY3VycmVudFBhcmVudC50eXBlID09PSAicHJvcGVydHkiKSB7CiAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQubGVuZ3RoID0gZW5kT2Zmc2V0IC0gY3VycmVudFBhcmVudC5vZmZzZXQ7CiAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQgPSBjdXJyZW50UGFyZW50LnBhcmVudDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gb25WYWx1ZSh2YWx1ZU5vZGUpIHsKICAgICAgICAgIGN1cnJlbnRQYXJlbnQuY2hpbGRyZW4ucHVzaCh2YWx1ZU5vZGUpOwogICAgICAgICAgcmV0dXJuIHZhbHVlTm9kZTsKICAgICAgICB9CiAgICAgICAgY29uc3QgdmlzaXRvciA9IHsKICAgICAgICAgIG9uT2JqZWN0QmVnaW46IChvZmZzZXQpID0+IHsKICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IG9uVmFsdWUoewogICAgICAgICAgICAgIHR5cGU6ICJvYmplY3QiLAogICAgICAgICAgICAgIG9mZnNldCwKICAgICAgICAgICAgICBsZW5ndGg6IC0xLAogICAgICAgICAgICAgIHBhcmVudDogY3VycmVudFBhcmVudCwKICAgICAgICAgICAgICBjaGlsZHJlbjogW10KICAgICAgICAgICAgfSk7CiAgICAgICAgICB9LAogICAgICAgICAgb25PYmplY3RQcm9wZXJ0eTogKG5hbWUsIG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQgPSBvblZhbHVlKHsKICAgICAgICAgICAgICB0eXBlOiAicHJvcGVydHkiLAogICAgICAgICAgICAgIG9mZnNldCwKICAgICAgICAgICAgICBsZW5ndGg6IC0xLAogICAgICAgICAgICAgIHBhcmVudDogY3VycmVudFBhcmVudCwKICAgICAgICAgICAgICBjaGlsZHJlbjogW10KICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQuY2hpbGRyZW4ucHVzaCh7CiAgICAgICAgICAgICAgdHlwZTogInN0cmluZyIsCiAgICAgICAgICAgICAgdmFsdWU6IG5hbWUsCiAgICAgICAgICAgICAgb2Zmc2V0LAogICAgICAgICAgICAgIGxlbmd0aCwKICAgICAgICAgICAgICBwYXJlbnQ6IGN1cnJlbnRQYXJlbnQKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9LAogICAgICAgICAgb25PYmplY3RFbmQ6IChvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICBlbnN1cmVQcm9wZXJ0eUNvbXBsZXRlKG9mZnNldCArIGxlbmd0aCk7CiAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQubGVuZ3RoID0gb2Zmc2V0ICsgbGVuZ3RoIC0gY3VycmVudFBhcmVudC5vZmZzZXQ7CiAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQgPSBjdXJyZW50UGFyZW50LnBhcmVudDsKICAgICAgICAgICAgZW5zdXJlUHJvcGVydHlDb21wbGV0ZShvZmZzZXQgKyBsZW5ndGgpOwogICAgICAgICAgfSwKICAgICAgICAgIG9uQXJyYXlCZWdpbjogKG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQgPSBvblZhbHVlKHsKICAgICAgICAgICAgICB0eXBlOiAiYXJyYXkiLAogICAgICAgICAgICAgIG9mZnNldCwKICAgICAgICAgICAgICBsZW5ndGg6IC0xLAogICAgICAgICAgICAgIHBhcmVudDogY3VycmVudFBhcmVudCwKICAgICAgICAgICAgICBjaGlsZHJlbjogW10KICAgICAgICAgICAgfSk7CiAgICAgICAgICB9LAogICAgICAgICAgb25BcnJheUVuZDogKG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQubGVuZ3RoID0gb2Zmc2V0ICsgbGVuZ3RoIC0gY3VycmVudFBhcmVudC5vZmZzZXQ7CiAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQgPSBjdXJyZW50UGFyZW50LnBhcmVudDsKICAgICAgICAgICAgZW5zdXJlUHJvcGVydHlDb21wbGV0ZShvZmZzZXQgKyBsZW5ndGgpOwogICAgICAgICAgfSwKICAgICAgICAgIG9uTGl0ZXJhbFZhbHVlOiAodmFsdWUsIG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgIG9uVmFsdWUoewogICAgICAgICAgICAgIHR5cGU6IGdldE5vZGVUeXBlKHZhbHVlKSwKICAgICAgICAgICAgICBvZmZzZXQsCiAgICAgICAgICAgICAgbGVuZ3RoLAogICAgICAgICAgICAgIHBhcmVudDogY3VycmVudFBhcmVudCwKICAgICAgICAgICAgICB2YWx1ZQogICAgICAgICAgICB9KTsKICAgICAgICAgICAgZW5zdXJlUHJvcGVydHlDb21wbGV0ZShvZmZzZXQgKyBsZW5ndGgpOwogICAgICAgICAgfSwKICAgICAgICAgIG9uU2VwYXJhdG9yOiAoc2VwLCBvZmZzZXQsIGxlbmd0aCkgPT4gewogICAgICAgICAgICBpZiAoY3VycmVudFBhcmVudC50eXBlID09PSAicHJvcGVydHkiKSB7CiAgICAgICAgICAgICAgaWYgKHNlcCA9PT0gIjoiKSB7CiAgICAgICAgICAgICAgICBjdXJyZW50UGFyZW50LmNvbG9uT2Zmc2V0ID0gb2Zmc2V0OwogICAgICAgICAgICAgIH0gZWxzZSBpZiAoc2VwID09PSAiLCIpIHsKICAgICAgICAgICAgICAgIGVuc3VyZVByb3BlcnR5Q29tcGxldGUob2Zmc2V0KTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0sCiAgICAgICAgICBvbkVycm9yOiAoZXJyb3IsIG9mZnNldCwgbGVuZ3RoKSA9PiB7CiAgICAgICAgICAgIGVycm9ycy5wdXNoKHsgZXJyb3IsIG9mZnNldCwgbGVuZ3RoIH0pOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgICAgdmlzaXQodGV4dCwgdmlzaXRvciwgb3B0aW9ucyk7CiAgICAgICAgY29uc3QgcmVzdWx0ID0gY3VycmVudFBhcmVudC5jaGlsZHJlblswXTsKICAgICAgICBpZiAocmVzdWx0KSB7CiAgICAgICAgICBkZWxldGUgcmVzdWx0LnBhcmVudDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfQogICAgICBleHBvcnRzMy5wYXJzZVRyZWUgPSBwYXJzZVRyZWU7CiAgICAgIGZ1bmN0aW9uIGZpbmROb2RlQXRMb2NhdGlvbihyb290LCBwYXRoKSB7CiAgICAgICAgaWYgKCFyb290KSB7CiAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgIH0KICAgICAgICBsZXQgbm9kZSA9IHJvb3Q7CiAgICAgICAgZm9yIChsZXQgc2VnbWVudCBvZiBwYXRoKSB7CiAgICAgICAgICBpZiAodHlwZW9mIHNlZ21lbnQgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICAgIGlmIChub2RlLnR5cGUgIT09ICJvYmplY3QiIHx8ICFBcnJheS5pc0FycmF5KG5vZGUuY2hpbGRyZW4pKSB7CiAgICAgICAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgICAgICAgfQogICAgICAgICAgICBsZXQgZm91bmQgPSBmYWxzZTsKICAgICAgICAgICAgZm9yIChjb25zdCBwcm9wZXJ0eU5vZGUgb2Ygbm9kZS5jaGlsZHJlbikgewogICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHByb3BlcnR5Tm9kZS5jaGlsZHJlbikgJiYgcHJvcGVydHlOb2RlLmNoaWxkcmVuWzBdLnZhbHVlID09PSBzZWdtZW50ICYmIHByb3BlcnR5Tm9kZS5jaGlsZHJlbi5sZW5ndGggPT09IDIpIHsKICAgICAgICAgICAgICAgIG5vZGUgPSBwcm9wZXJ0eU5vZGUuY2hpbGRyZW5bMV07CiAgICAgICAgICAgICAgICBmb3VuZCA9IHRydWU7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKCFmb3VuZCkgewogICAgICAgICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IGluZGV4ID0gc2VnbWVudDsKICAgICAgICAgICAgaWYgKG5vZGUudHlwZSAhPT0gImFycmF5IiB8fCBpbmRleCA8IDAgfHwgIUFycmF5LmlzQXJyYXkobm9kZS5jaGlsZHJlbikgfHwgaW5kZXggPj0gbm9kZS5jaGlsZHJlbi5sZW5ndGgpIHsKICAgICAgICAgICAgICByZXR1cm4gdm9pZCAwOwogICAgICAgICAgICB9CiAgICAgICAgICAgIG5vZGUgPSBub2RlLmNoaWxkcmVuW2luZGV4XTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5vZGU7CiAgICAgIH0KICAgICAgZXhwb3J0czMuZmluZE5vZGVBdExvY2F0aW9uID0gZmluZE5vZGVBdExvY2F0aW9uOwogICAgICBmdW5jdGlvbiBnZXROb2RlUGF0aChub2RlKSB7CiAgICAgICAgaWYgKCFub2RlLnBhcmVudCB8fCAhbm9kZS5wYXJlbnQuY2hpbGRyZW4pIHsKICAgICAgICAgIHJldHVybiBbXTsKICAgICAgICB9CiAgICAgICAgY29uc3QgcGF0aCA9IGdldE5vZGVQYXRoKG5vZGUucGFyZW50KTsKICAgICAgICBpZiAobm9kZS5wYXJlbnQudHlwZSA9PT0gInByb3BlcnR5IikgewogICAgICAgICAgY29uc3Qga2V5ID0gbm9kZS5wYXJlbnQuY2hpbGRyZW5bMF0udmFsdWU7CiAgICAgICAgICBwYXRoLnB1c2goa2V5KTsKICAgICAgICB9IGVsc2UgaWYgKG5vZGUucGFyZW50LnR5cGUgPT09ICJhcnJheSIpIHsKICAgICAgICAgIGNvbnN0IGluZGV4ID0gbm9kZS5wYXJlbnQuY2hpbGRyZW4uaW5kZXhPZihub2RlKTsKICAgICAgICAgIGlmIChpbmRleCAhPT0gLTEpIHsKICAgICAgICAgICAgcGF0aC5wdXNoKGluZGV4KTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIHBhdGg7CiAgICAgIH0KICAgICAgZXhwb3J0czMuZ2V0Tm9kZVBhdGggPSBnZXROb2RlUGF0aDsKICAgICAgZnVuY3Rpb24gZ2V0Tm9kZVZhbHVlKG5vZGUpIHsKICAgICAgICBzd2l0Y2ggKG5vZGUudHlwZSkgewogICAgICAgICAgY2FzZSAiYXJyYXkiOgogICAgICAgICAgICByZXR1cm4gbm9kZS5jaGlsZHJlbi5tYXAoZ2V0Tm9kZVZhbHVlKTsKICAgICAgICAgIGNhc2UgIm9iamVjdCI6CiAgICAgICAgICAgIGNvbnN0IG9iaiA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICAgICAgICBmb3IgKGxldCBwcm9wIG9mIG5vZGUuY2hpbGRyZW4pIHsKICAgICAgICAgICAgICBjb25zdCB2YWx1ZU5vZGUgPSBwcm9wLmNoaWxkcmVuWzFdOwogICAgICAgICAgICAgIGlmICh2YWx1ZU5vZGUpIHsKICAgICAgICAgICAgICAgIG9ialtwcm9wLmNoaWxkcmVuWzBdLnZhbHVlXSA9IGdldE5vZGVWYWx1ZSh2YWx1ZU5vZGUpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gb2JqOwogICAgICAgICAgY2FzZSAibnVsbCI6CiAgICAgICAgICBjYXNlICJzdHJpbmciOgogICAgICAgICAgY2FzZSAibnVtYmVyIjoKICAgICAgICAgIGNhc2UgImJvb2xlYW4iOgogICAgICAgICAgICByZXR1cm4gbm9kZS52YWx1ZTsKICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgICAgfQogICAgICB9CiAgICAgIGV4cG9ydHMzLmdldE5vZGVWYWx1ZSA9IGdldE5vZGVWYWx1ZTsKICAgICAgZnVuY3Rpb24gY29udGFpbnMobm9kZSwgb2Zmc2V0LCBpbmNsdWRlUmlnaHRCb3VuZCA9IGZhbHNlKSB7CiAgICAgICAgcmV0dXJuIG9mZnNldCA+PSBub2RlLm9mZnNldCAmJiBvZmZzZXQgPCBub2RlLm9mZnNldCArIG5vZGUubGVuZ3RoIHx8IGluY2x1ZGVSaWdodEJvdW5kICYmIG9mZnNldCA9PT0gbm9kZS5vZmZzZXQgKyBub2RlLmxlbmd0aDsKICAgICAgfQogICAgICBleHBvcnRzMy5jb250YWlucyA9IGNvbnRhaW5zOwogICAgICBmdW5jdGlvbiBmaW5kTm9kZUF0T2Zmc2V0KG5vZGUsIG9mZnNldCwgaW5jbHVkZVJpZ2h0Qm91bmQgPSBmYWxzZSkgewogICAgICAgIGlmIChjb250YWlucyhub2RlLCBvZmZzZXQsIGluY2x1ZGVSaWdodEJvdW5kKSkgewogICAgICAgICAgY29uc3QgY2hpbGRyZW4gPSBub2RlLmNoaWxkcmVuOwogICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoY2hpbGRyZW4pKSB7CiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY2hpbGRyZW4ubGVuZ3RoICYmIGNoaWxkcmVuW2ldLm9mZnNldCA8PSBvZmZzZXQ7IGkrKykgewogICAgICAgICAgICAgIGNvbnN0IGl0ZW0gPSBmaW5kTm9kZUF0T2Zmc2V0KGNoaWxkcmVuW2ldLCBvZmZzZXQsIGluY2x1ZGVSaWdodEJvdW5kKTsKICAgICAgICAgICAgICBpZiAoaXRlbSkgewogICAgICAgICAgICAgICAgcmV0dXJuIGl0ZW07CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gbm9kZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHZvaWQgMDsKICAgICAgfQogICAgICBleHBvcnRzMy5maW5kTm9kZUF0T2Zmc2V0ID0gZmluZE5vZGVBdE9mZnNldDsKICAgICAgZnVuY3Rpb24gdmlzaXQodGV4dCwgdmlzaXRvciwgb3B0aW9ucyA9IFBhcnNlT3B0aW9ucy5ERUZBVUxUKSB7CiAgICAgICAgY29uc3QgX3NjYW5uZXIgPSAoMCwgc2Nhbm5lcl8xLmNyZWF0ZVNjYW5uZXIpKHRleHQsIGZhbHNlKTsKICAgICAgICBjb25zdCBfanNvblBhdGggPSBbXTsKICAgICAgICBsZXQgc3VwcHJlc3NlZENhbGxiYWNrcyA9IDA7CiAgICAgICAgZnVuY3Rpb24gdG9Ob0FyZ1Zpc2l0KHZpc2l0RnVuY3Rpb24pIHsKICAgICAgICAgIHJldHVybiB2aXNpdEZ1bmN0aW9uID8gKCkgPT4gc3VwcHJlc3NlZENhbGxiYWNrcyA9PT0gMCAmJiB2aXNpdEZ1bmN0aW9uKAogICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlbk9mZnNldCgpLAogICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlbkxlbmd0aCgpLAogICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlblN0YXJ0TGluZSgpLAogICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlblN0YXJ0Q2hhcmFjdGVyKCkKICAgICAgICAgICkgOiAoKSA9PiB0cnVlOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiB0b09uZUFyZ1Zpc2l0KHZpc2l0RnVuY3Rpb24pIHsKICAgICAgICAgIHJldHVybiB2aXNpdEZ1bmN0aW9uID8gKGFyZykgPT4gc3VwcHJlc3NlZENhbGxiYWNrcyA9PT0gMCAmJiB2aXNpdEZ1bmN0aW9uKAogICAgICAgICAgICBhcmcsCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuT2Zmc2V0KCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuTGVuZ3RoKCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRMaW5lKCksCiAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRDaGFyYWN0ZXIoKQogICAgICAgICAgKSA6ICgpID0+IHRydWU7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHRvT25lQXJnVmlzaXRXaXRoUGF0aCh2aXNpdEZ1bmN0aW9uKSB7CiAgICAgICAgICByZXR1cm4gdmlzaXRGdW5jdGlvbiA/IChhcmcpID0+IHN1cHByZXNzZWRDYWxsYmFja3MgPT09IDAgJiYgdmlzaXRGdW5jdGlvbigKICAgICAgICAgICAgYXJnLAogICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlbk9mZnNldCgpLAogICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlbkxlbmd0aCgpLAogICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlblN0YXJ0TGluZSgpLAogICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlblN0YXJ0Q2hhcmFjdGVyKCksCiAgICAgICAgICAgICgpID0+IF9qc29uUGF0aC5zbGljZSgpCiAgICAgICAgICApIDogKCkgPT4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gdG9CZWdpblZpc2l0KHZpc2l0RnVuY3Rpb24pIHsKICAgICAgICAgIHJldHVybiB2aXNpdEZ1bmN0aW9uID8gKCkgPT4gewogICAgICAgICAgICBpZiAoc3VwcHJlc3NlZENhbGxiYWNrcyA+IDApIHsKICAgICAgICAgICAgICBzdXBwcmVzc2VkQ2FsbGJhY2tzKys7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgbGV0IGNiUmV0dXJuID0gdmlzaXRGdW5jdGlvbigKICAgICAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuT2Zmc2V0KCksCiAgICAgICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlbkxlbmd0aCgpLAogICAgICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5TdGFydExpbmUoKSwKICAgICAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuU3RhcnRDaGFyYWN0ZXIoKSwKICAgICAgICAgICAgICAgICgpID0+IF9qc29uUGF0aC5zbGljZSgpCiAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICBpZiAoY2JSZXR1cm4gPT09IGZhbHNlKSB7CiAgICAgICAgICAgICAgICBzdXBwcmVzc2VkQ2FsbGJhY2tzID0gMTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gOiAoKSA9PiB0cnVlOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiB0b0VuZFZpc2l0KHZpc2l0RnVuY3Rpb24pIHsKICAgICAgICAgIHJldHVybiB2aXNpdEZ1bmN0aW9uID8gKCkgPT4gewogICAgICAgICAgICBpZiAoc3VwcHJlc3NlZENhbGxiYWNrcyA+IDApIHsKICAgICAgICAgICAgICBzdXBwcmVzc2VkQ2FsbGJhY2tzLS07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHN1cHByZXNzZWRDYWxsYmFja3MgPT09IDApIHsKICAgICAgICAgICAgICB2aXNpdEZ1bmN0aW9uKAogICAgICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5PZmZzZXQoKSwKICAgICAgICAgICAgICAgIF9zY2FubmVyLmdldFRva2VuTGVuZ3RoKCksCiAgICAgICAgICAgICAgICBfc2Nhbm5lci5nZXRUb2tlblN0YXJ0TGluZSgpLAogICAgICAgICAgICAgICAgX3NjYW5uZXIuZ2V0VG9rZW5TdGFydENoYXJhY3RlcigpCiAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSA6ICgpID0+IHRydWU7CiAgICAgICAgfQogICAgICAgIGNvbnN0IG9uT2JqZWN0QmVnaW4gPSB0b0JlZ2luVmlzaXQodmlzaXRvci5vbk9iamVjdEJlZ2luKSwgb25PYmplY3RQcm9wZXJ0eSA9IHRvT25lQXJnVmlzaXRXaXRoUGF0aCh2aXNpdG9yLm9uT2JqZWN0UHJvcGVydHkpLCBvbk9iamVjdEVuZCA9IHRvRW5kVmlzaXQodmlzaXRvci5vbk9iamVjdEVuZCksIG9uQXJyYXlCZWdpbiA9IHRvQmVnaW5WaXNpdCh2aXNpdG9yLm9uQXJyYXlCZWdpbiksIG9uQXJyYXlFbmQgPSB0b0VuZFZpc2l0KHZpc2l0b3Iub25BcnJheUVuZCksIG9uTGl0ZXJhbFZhbHVlID0gdG9PbmVBcmdWaXNpdFdpdGhQYXRoKHZpc2l0b3Iub25MaXRlcmFsVmFsdWUpLCBvblNlcGFyYXRvciA9IHRvT25lQXJnVmlzaXQodmlzaXRvci5vblNlcGFyYXRvciksIG9uQ29tbWVudCA9IHRvTm9BcmdWaXNpdCh2aXNpdG9yLm9uQ29tbWVudCksIG9uRXJyb3IgPSB0b09uZUFyZ1Zpc2l0KHZpc2l0b3Iub25FcnJvcik7CiAgICAgICAgY29uc3QgZGlzYWxsb3dDb21tZW50cyA9IG9wdGlvbnMgJiYgb3B0aW9ucy5kaXNhbGxvd0NvbW1lbnRzOwogICAgICAgIGNvbnN0IGFsbG93VHJhaWxpbmdDb21tYSA9IG9wdGlvbnMgJiYgb3B0aW9ucy5hbGxvd1RyYWlsaW5nQ29tbWE7CiAgICAgICAgZnVuY3Rpb24gc2Nhbk5leHQoKSB7CiAgICAgICAgICB3aGlsZSAodHJ1ZSkgewogICAgICAgICAgICBjb25zdCB0b2tlbiA9IF9zY2FubmVyLnNjYW4oKTsKICAgICAgICAgICAgc3dpdGNoIChfc2Nhbm5lci5nZXRUb2tlbkVycm9yKCkpIHsKICAgICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgMTQKICAgICAgICAgICAgICAgICAgLyogUGFyc2VFcnJvckNvZGUuSW52YWxpZFVuaWNvZGUgKi8KICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDU6CiAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgMTUKICAgICAgICAgICAgICAgICAgLyogUGFyc2VFcnJvckNvZGUuSW52YWxpZEVzY2FwZUNoYXJhY3RlciAqLwogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgMzoKICAgICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgICAxMwogICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5VbmV4cGVjdGVkRW5kT2ZOdW1iZXIgKi8KICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDE6CiAgICAgICAgICAgICAgICBpZiAoIWRpc2FsbG93Q29tbWVudHMpIHsKICAgICAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICAgICAgMTEKICAgICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5VbmV4cGVjdGVkRW5kT2ZDb21tZW50ICovCiAgICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgMTIKICAgICAgICAgICAgICAgICAgLyogUGFyc2VFcnJvckNvZGUuVW5leHBlY3RlZEVuZE9mU3RyaW5nICovCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSA2OgogICAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICAgIDE2CiAgICAgICAgICAgICAgICAgIC8qIFBhcnNlRXJyb3JDb2RlLkludmFsaWRDaGFyYWN0ZXIgKi8KICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgICBzd2l0Y2ggKHRva2VuKSB7CiAgICAgICAgICAgICAgY2FzZSAxMjoKICAgICAgICAgICAgICBjYXNlIDEzOgogICAgICAgICAgICAgICAgaWYgKGRpc2FsbG93Q29tbWVudHMpIHsKICAgICAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICAgICAgMTAKICAgICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5JbnZhbGlkQ29tbWVudFRva2VuICovCiAgICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICBvbkNvbW1lbnQoKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgMTY6CiAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcigKICAgICAgICAgICAgICAgICAgMQogICAgICAgICAgICAgICAgICAvKiBQYXJzZUVycm9yQ29kZS5JbnZhbGlkU3ltYm9sICovCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxNToKICAgICAgICAgICAgICBjYXNlIDE0OgogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICAgIHJldHVybiB0b2tlbjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBoYW5kbGVFcnJvcihlcnJvciwgc2tpcFVudGlsQWZ0ZXIgPSBbXSwgc2tpcFVudGlsID0gW10pIHsKICAgICAgICAgIG9uRXJyb3IoZXJyb3IpOwogICAgICAgICAgaWYgKHNraXBVbnRpbEFmdGVyLmxlbmd0aCArIHNraXBVbnRpbC5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgIGxldCB0b2tlbiA9IF9zY2FubmVyLmdldFRva2VuKCk7CiAgICAgICAgICAgIHdoaWxlICh0b2tlbiAhPT0gMTcpIHsKICAgICAgICAgICAgICBpZiAoc2tpcFVudGlsQWZ0ZXIuaW5kZXhPZih0b2tlbikgIT09IC0xKSB7CiAgICAgICAgICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfSBlbHNlIGlmIChza2lwVW50aWwuaW5kZXhPZih0b2tlbikgIT09IC0xKSB7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgdG9rZW4gPSBzY2FuTmV4dCgpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHBhcnNlU3RyaW5nKGlzVmFsdWUpIHsKICAgICAgICAgIGNvbnN0IHZhbHVlID0gX3NjYW5uZXIuZ2V0VG9rZW5WYWx1ZSgpOwogICAgICAgICAgaWYgKGlzVmFsdWUpIHsKICAgICAgICAgICAgb25MaXRlcmFsVmFsdWUodmFsdWUpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgb25PYmplY3RQcm9wZXJ0eSh2YWx1ZSk7CiAgICAgICAgICAgIF9qc29uUGF0aC5wdXNoKHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICAgIHNjYW5OZXh0KCk7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gcGFyc2VMaXRlcmFsKCkgewogICAgICAgICAgc3dpdGNoIChfc2Nhbm5lci5nZXRUb2tlbigpKSB7CiAgICAgICAgICAgIGNhc2UgMTE6CiAgICAgICAgICAgICAgY29uc3QgdG9rZW5WYWx1ZSA9IF9zY2FubmVyLmdldFRva2VuVmFsdWUoKTsKICAgICAgICAgICAgICBsZXQgdmFsdWUgPSBOdW1iZXIodG9rZW5WYWx1ZSk7CiAgICAgICAgICAgICAgaWYgKGlzTmFOKHZhbHVlKSkgewogICAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgICAgIDIKICAgICAgICAgICAgICAgICAgLyogUGFyc2VFcnJvckNvZGUuSW52YWxpZE51bWJlckZvcm1hdCAqLwogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIHZhbHVlID0gMDsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgb25MaXRlcmFsVmFsdWUodmFsdWUpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIDc6CiAgICAgICAgICAgICAgb25MaXRlcmFsVmFsdWUobnVsbCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgODoKICAgICAgICAgICAgICBvbkxpdGVyYWxWYWx1ZSh0cnVlKTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSA5OgogICAgICAgICAgICAgIG9uTGl0ZXJhbFZhbHVlKGZhbHNlKTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHBhcnNlUHJvcGVydHkoKSB7CiAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSAhPT0gMTApIHsKICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgMywKICAgICAgICAgICAgICBbXSwKICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAyLAogICAgICAgICAgICAgICAgNQogICAgICAgICAgICAgICAgLyogU3ludGF4S2luZC5Db21tYVRva2VuICovCiAgICAgICAgICAgICAgXQogICAgICAgICAgICApOwogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICBwYXJzZVN0cmluZyhmYWxzZSk7CiAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSA9PT0gNikgewogICAgICAgICAgICBvblNlcGFyYXRvcigiOiIpOwogICAgICAgICAgICBzY2FuTmV4dCgpOwogICAgICAgICAgICBpZiAoIXBhcnNlVmFsdWUoKSkgewogICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgNCwKICAgICAgICAgICAgICAgIFtdLAogICAgICAgICAgICAgICAgWwogICAgICAgICAgICAgICAgICAyLAogICAgICAgICAgICAgICAgICA1CiAgICAgICAgICAgICAgICAgIC8qIFN5bnRheEtpbmQuQ29tbWFUb2tlbiAqLwogICAgICAgICAgICAgICAgXQogICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgIDUsCiAgICAgICAgICAgICAgW10sCiAgICAgICAgICAgICAgWwogICAgICAgICAgICAgICAgMiwKICAgICAgICAgICAgICAgIDUKICAgICAgICAgICAgICAgIC8qIFN5bnRheEtpbmQuQ29tbWFUb2tlbiAqLwogICAgICAgICAgICAgIF0KICAgICAgICAgICAgKTsKICAgICAgICAgIH0KICAgICAgICAgIF9qc29uUGF0aC5wb3AoKTsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBwYXJzZU9iamVjdCgpIHsKICAgICAgICAgIG9uT2JqZWN0QmVnaW4oKTsKICAgICAgICAgIHNjYW5OZXh0KCk7CiAgICAgICAgICBsZXQgbmVlZHNDb21tYSA9IGZhbHNlOwogICAgICAgICAgd2hpbGUgKF9zY2FubmVyLmdldFRva2VuKCkgIT09IDIgJiYgX3NjYW5uZXIuZ2V0VG9rZW4oKSAhPT0gMTcpIHsKICAgICAgICAgICAgaWYgKF9zY2FubmVyLmdldFRva2VuKCkgPT09IDUpIHsKICAgICAgICAgICAgICBpZiAoIW5lZWRzQ29tbWEpIHsKICAgICAgICAgICAgICAgIGhhbmRsZUVycm9yKDQsIFtdLCBbXSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIG9uU2VwYXJhdG9yKCIsIik7CiAgICAgICAgICAgICAgc2Nhbk5leHQoKTsKICAgICAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSA9PT0gMiAmJiBhbGxvd1RyYWlsaW5nQ29tbWEpIHsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIGlmIChuZWVkc0NvbW1hKSB7CiAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoNiwgW10sIFtdKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoIXBhcnNlUHJvcGVydHkoKSkgewogICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgNCwKICAgICAgICAgICAgICAgIFtdLAogICAgICAgICAgICAgICAgWwogICAgICAgICAgICAgICAgICAyLAogICAgICAgICAgICAgICAgICA1CiAgICAgICAgICAgICAgICAgIC8qIFN5bnRheEtpbmQuQ29tbWFUb2tlbiAqLwogICAgICAgICAgICAgICAgXQogICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbmVlZHNDb21tYSA9IHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICBvbk9iamVjdEVuZCgpOwogICAgICAgICAgaWYgKF9zY2FubmVyLmdldFRva2VuKCkgIT09IDIpIHsKICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgNywKICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAyCiAgICAgICAgICAgICAgICAvKiBTeW50YXhLaW5kLkNsb3NlQnJhY2VUb2tlbiAqLwogICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgW10KICAgICAgICAgICAgKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHNjYW5OZXh0KCk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gcGFyc2VBcnJheSgpIHsKICAgICAgICAgIG9uQXJyYXlCZWdpbigpOwogICAgICAgICAgc2Nhbk5leHQoKTsKICAgICAgICAgIGxldCBpc0ZpcnN0RWxlbWVudCA9IHRydWU7CiAgICAgICAgICBsZXQgbmVlZHNDb21tYSA9IGZhbHNlOwogICAgICAgICAgd2hpbGUgKF9zY2FubmVyLmdldFRva2VuKCkgIT09IDQgJiYgX3NjYW5uZXIuZ2V0VG9rZW4oKSAhPT0gMTcpIHsKICAgICAgICAgICAgaWYgKF9zY2FubmVyLmdldFRva2VuKCkgPT09IDUpIHsKICAgICAgICAgICAgICBpZiAoIW5lZWRzQ29tbWEpIHsKICAgICAgICAgICAgICAgIGhhbmRsZUVycm9yKDQsIFtdLCBbXSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIG9uU2VwYXJhdG9yKCIsIik7CiAgICAgICAgICAgICAgc2Nhbk5leHQoKTsKICAgICAgICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSA9PT0gNCAmJiBhbGxvd1RyYWlsaW5nQ29tbWEpIHsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIGlmIChuZWVkc0NvbW1hKSB7CiAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoNiwgW10sIFtdKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoaXNGaXJzdEVsZW1lbnQpIHsKICAgICAgICAgICAgICBfanNvblBhdGgucHVzaCgwKTsKICAgICAgICAgICAgICBpc0ZpcnN0RWxlbWVudCA9IGZhbHNlOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIF9qc29uUGF0aFtfanNvblBhdGgubGVuZ3RoIC0gMV0rKzsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoIXBhcnNlVmFsdWUoKSkgewogICAgICAgICAgICAgIGhhbmRsZUVycm9yKAogICAgICAgICAgICAgICAgNCwKICAgICAgICAgICAgICAgIFtdLAogICAgICAgICAgICAgICAgWwogICAgICAgICAgICAgICAgICA0LAogICAgICAgICAgICAgICAgICA1CiAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBuZWVkc0NvbW1hID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIG9uQXJyYXlFbmQoKTsKICAgICAgICAgIGlmICghaXNGaXJzdEVsZW1lbnQpIHsKICAgICAgICAgICAgX2pzb25QYXRoLnBvcCgpOwogICAgICAgICAgfQogICAgICAgICAgaWYgKF9zY2FubmVyLmdldFRva2VuKCkgIT09IDQpIHsKICAgICAgICAgICAgaGFuZGxlRXJyb3IoCiAgICAgICAgICAgICAgOCwKICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICA0CiAgICAgICAgICAgICAgICAvKiBTeW50YXhLaW5kLkNsb3NlQnJhY2tldFRva2VuICovCiAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICBbXQogICAgICAgICAgICApOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgc2Nhbk5leHQoKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBwYXJzZVZhbHVlKCkgewogICAgICAgICAgc3dpdGNoIChfc2Nhbm5lci5nZXRUb2tlbigpKSB7CiAgICAgICAgICAgIGNhc2UgMzoKICAgICAgICAgICAgICByZXR1cm4gcGFyc2VBcnJheSgpOwogICAgICAgICAgICBjYXNlIDE6CiAgICAgICAgICAgICAgcmV0dXJuIHBhcnNlT2JqZWN0KCk7CiAgICAgICAgICAgIGNhc2UgMTA6CiAgICAgICAgICAgICAgcmV0dXJuIHBhcnNlU3RyaW5nKHRydWUpOwogICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgIHJldHVybiBwYXJzZUxpdGVyYWwoKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgc2Nhbk5leHQoKTsKICAgICAgICBpZiAoX3NjYW5uZXIuZ2V0VG9rZW4oKSA9PT0gMTcpIHsKICAgICAgICAgIGlmIChvcHRpb25zLmFsbG93RW1wdHlDb250ZW50KSB7CiAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgaGFuZGxlRXJyb3IoNCwgW10sIFtdKTsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CiAgICAgICAgaWYgKCFwYXJzZVZhbHVlKCkpIHsKICAgICAgICAgIGhhbmRsZUVycm9yKDQsIFtdLCBbXSk7CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfQogICAgICAgIGlmIChfc2Nhbm5lci5nZXRUb2tlbigpICE9PSAxNykgewogICAgICAgICAgaGFuZGxlRXJyb3IoOSwgW10sIFtdKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0KICAgICAgZXhwb3J0czMudmlzaXQgPSB2aXNpdDsKICAgICAgZnVuY3Rpb24gc3RyaXBDb21tZW50cyh0ZXh0LCByZXBsYWNlQ2gpIHsKICAgICAgICBsZXQgX3NjYW5uZXIgPSAoMCwgc2Nhbm5lcl8xLmNyZWF0ZVNjYW5uZXIpKHRleHQpLCBwYXJ0cyA9IFtdLCBraW5kLCBvZmZzZXQgPSAwLCBwb3M7CiAgICAgICAgZG8gewogICAgICAgICAgcG9zID0gX3NjYW5uZXIuZ2V0UG9zaXRpb24oKTsKICAgICAgICAgIGtpbmQgPSBfc2Nhbm5lci5zY2FuKCk7CiAgICAgICAgICBzd2l0Y2ggKGtpbmQpIHsKICAgICAgICAgICAgY2FzZSAxMjoKICAgICAgICAgICAgY2FzZSAxMzoKICAgICAgICAgICAgY2FzZSAxNzoKICAgICAgICAgICAgICBpZiAob2Zmc2V0ICE9PSBwb3MpIHsKICAgICAgICAgICAgICAgIHBhcnRzLnB1c2godGV4dC5zdWJzdHJpbmcob2Zmc2V0LCBwb3MpKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHJlcGxhY2VDaCAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgICBwYXJ0cy5wdXNoKF9zY2FubmVyLmdldFRva2VuVmFsdWUoKS5yZXBsYWNlKC9bXlxyXG5dL2csIHJlcGxhY2VDaCkpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBvZmZzZXQgPSBfc2Nhbm5lci5nZXRQb3NpdGlvbigpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgIH0gd2hpbGUgKGtpbmQgIT09IDE3KTsKICAgICAgICByZXR1cm4gcGFydHMuam9pbigiIik7CiAgICAgIH0KICAgICAgZXhwb3J0czMuc3RyaXBDb21tZW50cyA9IHN0cmlwQ29tbWVudHM7CiAgICAgIGZ1bmN0aW9uIGdldE5vZGVUeXBlKHZhbHVlKSB7CiAgICAgICAgc3dpdGNoICh0eXBlb2YgdmFsdWUpIHsKICAgICAgICAgIGNhc2UgImJvb2xlYW4iOgogICAgICAgICAgICByZXR1cm4gImJvb2xlYW4iOwogICAgICAgICAgY2FzZSAibnVtYmVyIjoKICAgICAgICAgICAgcmV0dXJuICJudW1iZXIiOwogICAgICAgICAgY2FzZSAic3RyaW5nIjoKICAgICAgICAgICAgcmV0dXJuICJzdHJpbmciOwogICAgICAgICAgY2FzZSAib2JqZWN0IjogewogICAgICAgICAgICBpZiAoIXZhbHVlKSB7CiAgICAgICAgICAgICAgcmV0dXJuICJudWxsIjsKICAgICAgICAgICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkgewogICAgICAgICAgICAgIHJldHVybiAiYXJyYXkiOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiAib2JqZWN0IjsKICAgICAgICAgIH0KICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgIHJldHVybiAibnVsbCI7CiAgICAgICAgfQogICAgICB9CiAgICAgIGV4cG9ydHMzLmdldE5vZGVUeXBlID0gZ2V0Tm9kZVR5cGU7CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvanNvbmMtcGFyc2VyLXBhdGNoLWQyMGY2NzE4MzYtMTAuemlwL25vZGVfbW9kdWxlcy9qc29uYy1wYXJzZXIvbGliL3VtZC9pbXBsL2VkaXQuanMKdmFyIHJlcXVpcmVfZWRpdCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9qc29uYy1wYXJzZXItcGF0Y2gtZDIwZjY3MTgzNi0xMC56aXAvbm9kZV9tb2R1bGVzL2pzb25jLXBhcnNlci9saWIvdW1kL2ltcGwvZWRpdC5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgIHZhciBmb3JtYXRfMSA9IHJlcXVpcmVfZm9ybWF0MygpOwogICAgdmFyIHBhcnNlcl8xID0gcmVxdWlyZV9wYXJzZXIoKTsKICAgIChmdW5jdGlvbihmYWN0b3J5KSB7CiAgICAgIGlmICh0eXBlb2YgbW9kdWxlMiA9PT0gIm9iamVjdCIgJiYgdHlwZW9mIG1vZHVsZTIuZXhwb3J0cyA9PT0gIm9iamVjdCIpIHsKICAgICAgICB2YXIgdiA9IGZhY3RvcnkocmVxdWlyZSwgZXhwb3J0czIpOwogICAgICAgIGlmICh2ICE9PSB2b2lkIDApIG1vZHVsZTIuZXhwb3J0cyA9IHY7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGRlZmluZSA9PT0gImZ1bmN0aW9uIiAmJiBkZWZpbmUuYW1kKSB7CiAgICAgICAgZGVmaW5lKFsicmVxdWlyZSIsICJleHBvcnRzIiwgIi4vZm9ybWF0IiwgIi4vcGFyc2VyIl0sIGZhY3RvcnkpOwogICAgICB9CiAgICB9KShmdW5jdGlvbihyZXF1aXJlMiwgZXhwb3J0czMpIHsKICAgICAgInVzZSBzdHJpY3QiOwogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czMsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgICAgZXhwb3J0czMuaXNXUyA9IGV4cG9ydHMzLmFwcGx5RWRpdCA9IGV4cG9ydHMzLnNldFByb3BlcnR5ID0gZXhwb3J0czMucmVtb3ZlUHJvcGVydHkgPSB2b2lkIDA7CiAgICAgIGZ1bmN0aW9uIHJlbW92ZVByb3BlcnR5KHRleHQsIHBhdGgsIG9wdGlvbnMpIHsKICAgICAgICByZXR1cm4gc2V0UHJvcGVydHkodGV4dCwgcGF0aCwgdm9pZCAwLCBvcHRpb25zKTsKICAgICAgfQogICAgICBleHBvcnRzMy5yZW1vdmVQcm9wZXJ0eSA9IHJlbW92ZVByb3BlcnR5OwogICAgICBmdW5jdGlvbiBzZXRQcm9wZXJ0eSh0ZXh0LCBvcmlnaW5hbFBhdGgsIHZhbHVlLCBvcHRpb25zKSB7CiAgICAgICAgY29uc3QgcGF0aCA9IG9yaWdpbmFsUGF0aC5zbGljZSgpOwogICAgICAgIGNvbnN0IGVycm9ycyA9IFtdOwogICAgICAgIGNvbnN0IHJvb3QgPSAoMCwgcGFyc2VyXzEucGFyc2VUcmVlKSh0ZXh0LCBlcnJvcnMpOwogICAgICAgIGxldCBwYXJlbnQgPSB2b2lkIDA7CiAgICAgICAgbGV0IGxhc3RTZWdtZW50ID0gdm9pZCAwOwogICAgICAgIHdoaWxlIChwYXRoLmxlbmd0aCA+IDApIHsKICAgICAgICAgIGxhc3RTZWdtZW50ID0gcGF0aC5wb3AoKTsKICAgICAgICAgIHBhcmVudCA9ICgwLCBwYXJzZXJfMS5maW5kTm9kZUF0TG9jYXRpb24pKHJvb3QsIHBhdGgpOwogICAgICAgICAgaWYgKHBhcmVudCA9PT0gdm9pZCAwICYmIHZhbHVlICE9PSB2b2lkIDApIHsKICAgICAgICAgICAgaWYgKHR5cGVvZiBsYXN0U2VnbWVudCA9PT0gInN0cmluZyIpIHsKICAgICAgICAgICAgICB2YWx1ZSA9IHsgW2xhc3RTZWdtZW50XTogdmFsdWUgfTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICB2YWx1ZSA9IFt2YWx1ZV07CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoIXBhcmVudCkgewogICAgICAgICAgaWYgKHZhbHVlID09PSB2b2lkIDApIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDYW4gbm90IGRlbGV0ZSBpbiBlbXB0eSBkb2N1bWVudCIpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHdpdGhGb3JtYXR0aW5nKAogICAgICAgICAgICB0ZXh0LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgb2Zmc2V0OiByb290ID8gcm9vdC5vZmZzZXQgOiAwLAogICAgICAgICAgICAgIGxlbmd0aDogcm9vdCA/IHJvb3QubGVuZ3RoIDogMCwKICAgICAgICAgICAgICBjb250ZW50OiBKU09OLnN0cmluZ2lmeSh2YWx1ZSkKICAgICAgICAgICAgfSwKICAgICAgICAgICAgb3B0aW9ucwogICAgICAgICAgKTsKICAgICAgICB9IGVsc2UgaWYgKHBhcmVudC50eXBlID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbGFzdFNlZ21lbnQgPT09ICJzdHJpbmciICYmIEFycmF5LmlzQXJyYXkocGFyZW50LmNoaWxkcmVuKSkgewogICAgICAgICAgY29uc3QgZXhpc3RpbmcgPSAoMCwgcGFyc2VyXzEuZmluZE5vZGVBdExvY2F0aW9uKShwYXJlbnQsIFtsYXN0U2VnbWVudF0pOwogICAgICAgICAgaWYgKGV4aXN0aW5nICE9PSB2b2lkIDApIHsKICAgICAgICAgICAgaWYgKHZhbHVlID09PSB2b2lkIDApIHsKICAgICAgICAgICAgICBpZiAoIWV4aXN0aW5nLnBhcmVudCkgewogICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJNYWxmb3JtZWQgQVNUIik7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGNvbnN0IHByb3BlcnR5SW5kZXggPSBwYXJlbnQuY2hpbGRyZW4uaW5kZXhPZihleGlzdGluZy5wYXJlbnQpOwogICAgICAgICAgICAgIGxldCByZW1vdmVCZWdpbjsKICAgICAgICAgICAgICBsZXQgcmVtb3ZlRW5kID0gZXhpc3RpbmcucGFyZW50Lm9mZnNldCArIGV4aXN0aW5nLnBhcmVudC5sZW5ndGg7CiAgICAgICAgICAgICAgaWYgKHByb3BlcnR5SW5kZXggPiAwKSB7CiAgICAgICAgICAgICAgICBsZXQgcHJldmlvdXMgPSBwYXJlbnQuY2hpbGRyZW5bcHJvcGVydHlJbmRleCAtIDFdOwogICAgICAgICAgICAgICAgcmVtb3ZlQmVnaW4gPSBwcmV2aW91cy5vZmZzZXQgKyBwcmV2aW91cy5sZW5ndGg7CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHJlbW92ZUJlZ2luID0gcGFyZW50Lm9mZnNldCArIDE7CiAgICAgICAgICAgICAgICBpZiAocGFyZW50LmNoaWxkcmVuLmxlbmd0aCA+IDEpIHsKICAgICAgICAgICAgICAgICAgbGV0IG5leHQgPSBwYXJlbnQuY2hpbGRyZW5bMV07CiAgICAgICAgICAgICAgICAgIHJlbW92ZUVuZCA9IG5leHQub2Zmc2V0OwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICByZXR1cm4gd2l0aEZvcm1hdHRpbmcoCiAgICAgICAgICAgICAgICB0ZXh0LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICBvZmZzZXQ6IHJlbW92ZUJlZ2luLAogICAgICAgICAgICAgICAgICBsZW5ndGg6IHJlbW92ZUVuZCAtIHJlbW92ZUJlZ2luLAogICAgICAgICAgICAgICAgICBjb250ZW50OiAiIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIG9wdGlvbnMKICAgICAgICAgICAgICApOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIHJldHVybiB3aXRoRm9ybWF0dGluZygKICAgICAgICAgICAgICAgIHRleHQsCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgIG9mZnNldDogZXhpc3Rpbmcub2Zmc2V0LAogICAgICAgICAgICAgICAgICBsZW5ndGg6IGV4aXN0aW5nLmxlbmd0aCwKICAgICAgICAgICAgICAgICAgY29udGVudDogSlNPTi5zdHJpbmdpZnkodmFsdWUpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgb3B0aW9ucwogICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGlmICh2YWx1ZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgcmV0dXJuIFtdOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IG5ld1Byb3BlcnR5ID0gYCR7SlNPTi5zdHJpbmdpZnkobGFzdFNlZ21lbnQpfTogJHtKU09OLnN0cmluZ2lmeSgKICAgICAgICAgICAgICB2YWx1ZQogICAgICAgICAgICApfWA7CiAgICAgICAgICAgIGNvbnN0IGluZGV4ID0gb3B0aW9ucy5nZXRJbnNlcnRpb25JbmRleCA/IG9wdGlvbnMuZ2V0SW5zZXJ0aW9uSW5kZXgoCiAgICAgICAgICAgICAgcGFyZW50LmNoaWxkcmVuLm1hcCgocCkgPT4gcC5jaGlsZHJlblswXS52YWx1ZSkKICAgICAgICAgICAgKSA6IHBhcmVudC5jaGlsZHJlbi5sZW5ndGg7CiAgICAgICAgICAgIGxldCBlZGl0OwogICAgICAgICAgICBpZiAoaW5kZXggPiAwKSB7CiAgICAgICAgICAgICAgbGV0IHByZXZpb3VzID0gcGFyZW50LmNoaWxkcmVuW2luZGV4IC0gMV07CiAgICAgICAgICAgICAgZWRpdCA9IHsKICAgICAgICAgICAgICAgIG9mZnNldDogcHJldmlvdXMub2Zmc2V0ICsgcHJldmlvdXMubGVuZ3RoLAogICAgICAgICAgICAgICAgbGVuZ3RoOiAwLAogICAgICAgICAgICAgICAgY29udGVudDogIiwiICsgbmV3UHJvcGVydHkKICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9IGVsc2UgaWYgKHBhcmVudC5jaGlsZHJlbi5sZW5ndGggPT09IDApIHsKICAgICAgICAgICAgICBlZGl0ID0geyBvZmZzZXQ6IHBhcmVudC5vZmZzZXQgKyAxLCBsZW5ndGg6IDAsIGNvbnRlbnQ6IG5ld1Byb3BlcnR5IH07CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgZWRpdCA9IHsKICAgICAgICAgICAgICAgIG9mZnNldDogcGFyZW50Lm9mZnNldCArIDEsCiAgICAgICAgICAgICAgICBsZW5ndGg6IDAsCiAgICAgICAgICAgICAgICBjb250ZW50OiBuZXdQcm9wZXJ0eSArICIsIgogICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHdpdGhGb3JtYXR0aW5nKHRleHQsIGVkaXQsIG9wdGlvbnMpOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSBpZiAocGFyZW50LnR5cGUgPT09ICJhcnJheSIgJiYgdHlwZW9mIGxhc3RTZWdtZW50ID09PSAibnVtYmVyIiAmJiBBcnJheS5pc0FycmF5KHBhcmVudC5jaGlsZHJlbikpIHsKICAgICAgICAgIGNvbnN0IGluc2VydEluZGV4ID0gbGFzdFNlZ21lbnQ7CiAgICAgICAgICBpZiAoaW5zZXJ0SW5kZXggPT09IC0xKSB7CiAgICAgICAgICAgIGNvbnN0IG5ld1Byb3BlcnR5ID0gYCR7SlNPTi5zdHJpbmdpZnkodmFsdWUpfWA7CiAgICAgICAgICAgIGxldCBlZGl0OwogICAgICAgICAgICBpZiAocGFyZW50LmNoaWxkcmVuLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgICAgIGVkaXQgPSB7IG9mZnNldDogcGFyZW50Lm9mZnNldCArIDEsIGxlbmd0aDogMCwgY29udGVudDogbmV3UHJvcGVydHkgfTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBjb25zdCBwcmV2aW91cyA9IHBhcmVudC5jaGlsZHJlbltwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoIC0gMV07CiAgICAgICAgICAgICAgZWRpdCA9IHsKICAgICAgICAgICAgICAgIG9mZnNldDogcHJldmlvdXMub2Zmc2V0ICsgcHJldmlvdXMubGVuZ3RoLAogICAgICAgICAgICAgICAgbGVuZ3RoOiAwLAogICAgICAgICAgICAgICAgY29udGVudDogIiwiICsgbmV3UHJvcGVydHkKICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiB3aXRoRm9ybWF0dGluZyh0ZXh0LCBlZGl0LCBvcHRpb25zKTsKICAgICAgICAgIH0gZWxzZSBpZiAodmFsdWUgPT09IHZvaWQgMCAmJiBwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoID49IDApIHsKICAgICAgICAgICAgY29uc3QgcmVtb3ZhbEluZGV4ID0gbGFzdFNlZ21lbnQ7CiAgICAgICAgICAgIGNvbnN0IHRvUmVtb3ZlID0gcGFyZW50LmNoaWxkcmVuW3JlbW92YWxJbmRleF07CiAgICAgICAgICAgIGxldCBlZGl0OwogICAgICAgICAgICBpZiAocGFyZW50LmNoaWxkcmVuLmxlbmd0aCA9PT0gMSkgewogICAgICAgICAgICAgIGVkaXQgPSB7CiAgICAgICAgICAgICAgICBvZmZzZXQ6IHBhcmVudC5vZmZzZXQgKyAxLAogICAgICAgICAgICAgICAgbGVuZ3RoOiBwYXJlbnQubGVuZ3RoIC0gMiwKICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICIiCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfSBlbHNlIGlmIChwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoIC0gMSA9PT0gcmVtb3ZhbEluZGV4KSB7CiAgICAgICAgICAgICAgbGV0IHByZXZpb3VzID0gcGFyZW50LmNoaWxkcmVuW3JlbW92YWxJbmRleCAtIDFdOwogICAgICAgICAgICAgIGxldCBvZmZzZXQgPSBwcmV2aW91cy5vZmZzZXQgKyBwcmV2aW91cy5sZW5ndGg7CiAgICAgICAgICAgICAgbGV0IHBhcmVudEVuZE9mZnNldCA9IHBhcmVudC5vZmZzZXQgKyBwYXJlbnQubGVuZ3RoOwogICAgICAgICAgICAgIGVkaXQgPSB7IG9mZnNldCwgbGVuZ3RoOiBwYXJlbnRFbmRPZmZzZXQgLSAyIC0gb2Zmc2V0LCBjb250ZW50OiAiIiB9OwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIGVkaXQgPSB7CiAgICAgICAgICAgICAgICBvZmZzZXQ6IHRvUmVtb3ZlLm9mZnNldCwKICAgICAgICAgICAgICAgIGxlbmd0aDogcGFyZW50LmNoaWxkcmVuW3JlbW92YWxJbmRleCArIDFdLm9mZnNldCAtIHRvUmVtb3ZlLm9mZnNldCwKICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICIiCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gd2l0aEZvcm1hdHRpbmcodGV4dCwgZWRpdCwgb3B0aW9ucyk7CiAgICAgICAgICB9IGVsc2UgaWYgKHZhbHVlICE9PSB2b2lkIDApIHsKICAgICAgICAgICAgbGV0IGVkaXQ7CiAgICAgICAgICAgIGNvbnN0IG5ld1Byb3BlcnR5ID0gYCR7SlNPTi5zdHJpbmdpZnkodmFsdWUpfWA7CiAgICAgICAgICAgIGlmICghb3B0aW9ucy5pc0FycmF5SW5zZXJ0aW9uICYmIHBhcmVudC5jaGlsZHJlbi5sZW5ndGggPiBsYXN0U2VnbWVudCkgewogICAgICAgICAgICAgIGNvbnN0IHRvTW9kaWZ5ID0gcGFyZW50LmNoaWxkcmVuW2xhc3RTZWdtZW50XTsKICAgICAgICAgICAgICBlZGl0ID0gewogICAgICAgICAgICAgICAgb2Zmc2V0OiB0b01vZGlmeS5vZmZzZXQsCiAgICAgICAgICAgICAgICBsZW5ndGg6IHRvTW9kaWZ5Lmxlbmd0aCwKICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5ld1Byb3BlcnR5CiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfSBlbHNlIGlmIChwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoID09PSAwIHx8IGxhc3RTZWdtZW50ID09PSAwKSB7CiAgICAgICAgICAgICAgZWRpdCA9IHsKICAgICAgICAgICAgICAgIG9mZnNldDogcGFyZW50Lm9mZnNldCArIDEsCiAgICAgICAgICAgICAgICBsZW5ndGg6IDAsCiAgICAgICAgICAgICAgICBjb250ZW50OiBwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoID09PSAwID8gbmV3UHJvcGVydHkgOiBuZXdQcm9wZXJ0eSArICIsIgogICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgY29uc3QgaW5kZXggPSBsYXN0U2VnbWVudCA+IHBhcmVudC5jaGlsZHJlbi5sZW5ndGggPyBwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoIDogbGFzdFNlZ21lbnQ7CiAgICAgICAgICAgICAgY29uc3QgcHJldmlvdXMgPSBwYXJlbnQuY2hpbGRyZW5baW5kZXggLSAxXTsKICAgICAgICAgICAgICBlZGl0ID0gewogICAgICAgICAgICAgICAgb2Zmc2V0OiBwcmV2aW91cy5vZmZzZXQgKyBwcmV2aW91cy5sZW5ndGgsCiAgICAgICAgICAgICAgICBsZW5ndGg6IDAsCiAgICAgICAgICAgICAgICBjb250ZW50OiAiLCIgKyBuZXdQcm9wZXJ0eQogICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHdpdGhGb3JtYXR0aW5nKHRleHQsIGVkaXQsIG9wdGlvbnMpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKAogICAgICAgICAgICAgIGBDYW4gbm90ICR7dmFsdWUgPT09IHZvaWQgMCA/ICJyZW1vdmUiIDogb3B0aW9ucy5pc0FycmF5SW5zZXJ0aW9uID8gImluc2VydCIgOiAibW9kaWZ5In0gQXJyYXkgaW5kZXggJHtpbnNlcnRJbmRleH0gYXMgbGVuZ3RoIGlzIG5vdCBzdWZmaWNpZW50YAogICAgICAgICAgICApOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgICAgIGBDYW4gbm90IGFkZCAke3R5cGVvZiBsYXN0U2VnbWVudCAhPT0gIm51bWJlciIgPyAiaW5kZXgiIDogInByb3BlcnR5In0gdG8gcGFyZW50IG9mIHR5cGUgJHtwYXJlbnQudHlwZX1gCiAgICAgICAgICApOwogICAgICAgIH0KICAgICAgfQogICAgICBleHBvcnRzMy5zZXRQcm9wZXJ0eSA9IHNldFByb3BlcnR5OwogICAgICBmdW5jdGlvbiB3aXRoRm9ybWF0dGluZyh0ZXh0LCBlZGl0LCBvcHRpb25zKSB7CiAgICAgICAgaWYgKCFvcHRpb25zLmZvcm1hdHRpbmdPcHRpb25zKSB7CiAgICAgICAgICByZXR1cm4gW2VkaXRdOwogICAgICAgIH0KICAgICAgICBsZXQgbmV3VGV4dCA9IGFwcGx5RWRpdCh0ZXh0LCBlZGl0KTsKICAgICAgICBsZXQgYmVnaW4gPSBlZGl0Lm9mZnNldDsKICAgICAgICBsZXQgZW5kID0gZWRpdC5vZmZzZXQgKyBlZGl0LmNvbnRlbnQubGVuZ3RoOwogICAgICAgIGlmIChlZGl0Lmxlbmd0aCA9PT0gMCB8fCBlZGl0LmNvbnRlbnQubGVuZ3RoID09PSAwKSB7CiAgICAgICAgICB3aGlsZSAoYmVnaW4gPiAwICYmICEoMCwgZm9ybWF0XzEuaXNFT0wpKG5ld1RleHQsIGJlZ2luIC0gMSkpIHsKICAgICAgICAgICAgYmVnaW4tLTsKICAgICAgICAgIH0KICAgICAgICAgIHdoaWxlIChlbmQgPCBuZXdUZXh0Lmxlbmd0aCAmJiAhKDAsIGZvcm1hdF8xLmlzRU9MKShuZXdUZXh0LCBlbmQpKSB7CiAgICAgICAgICAgIGVuZCsrOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb25zdCBlZGl0cyA9ICgwLCBmb3JtYXRfMS5mb3JtYXQpKAogICAgICAgICAgbmV3VGV4dCwKICAgICAgICAgIHsgb2Zmc2V0OiBiZWdpbiwgbGVuZ3RoOiBlbmQgLSBiZWdpbiB9LAogICAgICAgICAgeyAuLi5vcHRpb25zLmZvcm1hdHRpbmdPcHRpb25zLCBrZWVwTGluZXM6IGZhbHNlIH0KICAgICAgICApOwogICAgICAgIGZvciAobGV0IGkgPSBlZGl0cy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkgewogICAgICAgICAgY29uc3QgZWRpdDIgPSBlZGl0c1tpXTsKICAgICAgICAgIG5ld1RleHQgPSBhcHBseUVkaXQobmV3VGV4dCwgZWRpdDIpOwogICAgICAgICAgYmVnaW4gPSBNYXRoLm1pbihiZWdpbiwgZWRpdDIub2Zmc2V0KTsKICAgICAgICAgIGVuZCA9IE1hdGgubWF4KGVuZCwgZWRpdDIub2Zmc2V0ICsgZWRpdDIubGVuZ3RoKTsKICAgICAgICAgIGVuZCArPSBlZGl0Mi5jb250ZW50Lmxlbmd0aCAtIGVkaXQyLmxlbmd0aDsKICAgICAgICB9CiAgICAgICAgY29uc3QgZWRpdExlbmd0aCA9IHRleHQubGVuZ3RoIC0gKG5ld1RleHQubGVuZ3RoIC0gZW5kKSAtIGJlZ2luOwogICAgICAgIHJldHVybiBbCiAgICAgICAgICB7CiAgICAgICAgICAgIG9mZnNldDogYmVnaW4sCiAgICAgICAgICAgIGxlbmd0aDogZWRpdExlbmd0aCwKICAgICAgICAgICAgY29udGVudDogbmV3VGV4dC5zdWJzdHJpbmcoYmVnaW4sIGVuZCkKICAgICAgICAgIH0KICAgICAgICBdOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGFwcGx5RWRpdCh0ZXh0LCBlZGl0KSB7CiAgICAgICAgcmV0dXJuIHRleHQuc3Vic3RyaW5nKDAsIGVkaXQub2Zmc2V0KSArIGVkaXQuY29udGVudCArIHRleHQuc3Vic3RyaW5nKGVkaXQub2Zmc2V0ICsgZWRpdC5sZW5ndGgpOwogICAgICB9CiAgICAgIGV4cG9ydHMzLmFwcGx5RWRpdCA9IGFwcGx5RWRpdDsKICAgICAgZnVuY3Rpb24gaXNXUyh0ZXh0LCBvZmZzZXQpIHsKICAgICAgICByZXR1cm4gIlxyXG4gCSIuaW5kZXhPZih0ZXh0LmNoYXJBdChvZmZzZXQpKSAhPT0gLTE7CiAgICAgIH0KICAgICAgZXhwb3J0czMuaXNXUyA9IGlzV1M7CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvanNvbmMtcGFyc2VyLXBhdGNoLWQyMGY2NzE4MzYtMTAuemlwL25vZGVfbW9kdWxlcy9qc29uYy1wYXJzZXIvbGliL3VtZC9tYWluLmpzCnZhciByZXF1aXJlX21haW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvanNvbmMtcGFyc2VyLXBhdGNoLWQyMGY2NzE4MzYtMTAuemlwL25vZGVfbW9kdWxlcy9qc29uYy1wYXJzZXIvbGliL3VtZC9tYWluLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgdmFyIGZvcm1hdHRlciA9IHJlcXVpcmVfZm9ybWF0MygpOwogICAgdmFyIGVkaXQgPSByZXF1aXJlX2VkaXQoKTsKICAgIHZhciBzY2FubmVyID0gcmVxdWlyZV9zY2FubmVyKCk7CiAgICB2YXIgcGFyc2VyID0gcmVxdWlyZV9wYXJzZXIoKTsKICAgIChmdW5jdGlvbihmYWN0b3J5KSB7CiAgICAgIGlmICh0eXBlb2YgbW9kdWxlMiA9PT0gIm9iamVjdCIgJiYgdHlwZW9mIG1vZHVsZTIuZXhwb3J0cyA9PT0gIm9iamVjdCIpIHsKICAgICAgICB2YXIgdiA9IGZhY3RvcnkocmVxdWlyZSwgZXhwb3J0czIpOwogICAgICAgIGlmICh2ICE9PSB2b2lkIDApIG1vZHVsZTIuZXhwb3J0cyA9IHY7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGRlZmluZSA9PT0gImZ1bmN0aW9uIiAmJiBkZWZpbmUuYW1kKSB7CiAgICAgICAgZGVmaW5lKFsKICAgICAgICAgICJyZXF1aXJlIiwKICAgICAgICAgICJleHBvcnRzIiwKICAgICAgICAgICIuL2ltcGwvZm9ybWF0IiwKICAgICAgICAgICIuL2ltcGwvZWRpdCIsCiAgICAgICAgICAiLi9pbXBsL3NjYW5uZXIiLAogICAgICAgICAgIi4vaW1wbC9wYXJzZXIiCiAgICAgICAgXSwgZmFjdG9yeSk7CiAgICAgIH0KICAgIH0pKGZ1bmN0aW9uKHJlcXVpcmUyLCBleHBvcnRzMykgewogICAgICAidXNlIHN0cmljdCI7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMywgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgICBleHBvcnRzMy5hcHBseUVkaXRzID0gZXhwb3J0czMubW9kaWZ5ID0gZXhwb3J0czMuZm9ybWF0ID0gZXhwb3J0czMucHJpbnRQYXJzZUVycm9yQ29kZSA9IGV4cG9ydHMzLlBhcnNlRXJyb3JDb2RlID0gZXhwb3J0czMuc3RyaXBDb21tZW50cyA9IGV4cG9ydHMzLnZpc2l0ID0gZXhwb3J0czMuZ2V0Tm9kZVZhbHVlID0gZXhwb3J0czMuZ2V0Tm9kZVBhdGggPSBleHBvcnRzMy5maW5kTm9kZUF0T2Zmc2V0ID0gZXhwb3J0czMuZmluZE5vZGVBdExvY2F0aW9uID0gZXhwb3J0czMucGFyc2VUcmVlID0gZXhwb3J0czMucGFyc2UgPSBleHBvcnRzMy5nZXRMb2NhdGlvbiA9IGV4cG9ydHMzLlN5bnRheEtpbmQgPSBleHBvcnRzMy5TY2FuRXJyb3IgPSBleHBvcnRzMy5jcmVhdGVTY2FubmVyID0gdm9pZCAwOwogICAgICBleHBvcnRzMy5jcmVhdGVTY2FubmVyID0gc2Nhbm5lci5jcmVhdGVTY2FubmVyOwogICAgICB2YXIgU2NhbkVycm9yOwogICAgICAoZnVuY3Rpb24oU2NhbkVycm9yMikgewogICAgICAgIFNjYW5FcnJvcjJbU2NhbkVycm9yMlsiTm9uZSJdID0gMF0gPSAiTm9uZSI7CiAgICAgICAgU2NhbkVycm9yMltTY2FuRXJyb3IyWyJVbmV4cGVjdGVkRW5kT2ZDb21tZW50Il0gPSAxXSA9ICJVbmV4cGVjdGVkRW5kT2ZDb21tZW50IjsKICAgICAgICBTY2FuRXJyb3IyW1NjYW5FcnJvcjJbIlVuZXhwZWN0ZWRFbmRPZlN0cmluZyJdID0gMl0gPSAiVW5leHBlY3RlZEVuZE9mU3RyaW5nIjsKICAgICAgICBTY2FuRXJyb3IyW1NjYW5FcnJvcjJbIlVuZXhwZWN0ZWRFbmRPZk51bWJlciJdID0gM10gPSAiVW5leHBlY3RlZEVuZE9mTnVtYmVyIjsKICAgICAgICBTY2FuRXJyb3IyW1NjYW5FcnJvcjJbIkludmFsaWRVbmljb2RlIl0gPSA0XSA9ICJJbnZhbGlkVW5pY29kZSI7CiAgICAgICAgU2NhbkVycm9yMltTY2FuRXJyb3IyWyJJbnZhbGlkRXNjYXBlQ2hhcmFjdGVyIl0gPSA1XSA9ICJJbnZhbGlkRXNjYXBlQ2hhcmFjdGVyIjsKICAgICAgICBTY2FuRXJyb3IyW1NjYW5FcnJvcjJbIkludmFsaWRDaGFyYWN0ZXIiXSA9IDZdID0gIkludmFsaWRDaGFyYWN0ZXIiOwogICAgICB9KShTY2FuRXJyb3IgfHwgKGV4cG9ydHMzLlNjYW5FcnJvciA9IFNjYW5FcnJvciA9IHt9KSk7CiAgICAgIHZhciBTeW50YXhLaW5kOwogICAgICAoZnVuY3Rpb24oU3ludGF4S2luZDIpIHsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiT3BlbkJyYWNlVG9rZW4iXSA9IDFdID0gIk9wZW5CcmFjZVRva2VuIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiQ2xvc2VCcmFjZVRva2VuIl0gPSAyXSA9ICJDbG9zZUJyYWNlVG9rZW4iOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJPcGVuQnJhY2tldFRva2VuIl0gPSAzXSA9ICJPcGVuQnJhY2tldFRva2VuIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiQ2xvc2VCcmFja2V0VG9rZW4iXSA9IDRdID0gIkNsb3NlQnJhY2tldFRva2VuIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiQ29tbWFUb2tlbiJdID0gNV0gPSAiQ29tbWFUb2tlbiI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIkNvbG9uVG9rZW4iXSA9IDZdID0gIkNvbG9uVG9rZW4iOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJOdWxsS2V5d29yZCJdID0gN10gPSAiTnVsbEtleXdvcmQiOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJUcnVlS2V5d29yZCJdID0gOF0gPSAiVHJ1ZUtleXdvcmQiOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJGYWxzZUtleXdvcmQiXSA9IDldID0gIkZhbHNlS2V5d29yZCI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIlN0cmluZ0xpdGVyYWwiXSA9IDEwXSA9ICJTdHJpbmdMaXRlcmFsIjsKICAgICAgICBTeW50YXhLaW5kMltTeW50YXhLaW5kMlsiTnVtZXJpY0xpdGVyYWwiXSA9IDExXSA9ICJOdW1lcmljTGl0ZXJhbCI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIkxpbmVDb21tZW50VHJpdmlhIl0gPSAxMl0gPSAiTGluZUNvbW1lbnRUcml2aWEiOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJCbG9ja0NvbW1lbnRUcml2aWEiXSA9IDEzXSA9ICJCbG9ja0NvbW1lbnRUcml2aWEiOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJMaW5lQnJlYWtUcml2aWEiXSA9IDE0XSA9ICJMaW5lQnJlYWtUcml2aWEiOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJUcml2aWEiXSA9IDE1XSA9ICJUcml2aWEiOwogICAgICAgIFN5bnRheEtpbmQyW1N5bnRheEtpbmQyWyJVbmtub3duIl0gPSAxNl0gPSAiVW5rbm93biI7CiAgICAgICAgU3ludGF4S2luZDJbU3ludGF4S2luZDJbIkVPRiJdID0gMTddID0gIkVPRiI7CiAgICAgIH0pKFN5bnRheEtpbmQgfHwgKGV4cG9ydHMzLlN5bnRheEtpbmQgPSBTeW50YXhLaW5kID0ge30pKTsKICAgICAgZXhwb3J0czMuZ2V0TG9jYXRpb24gPSBwYXJzZXIuZ2V0TG9jYXRpb247CiAgICAgIGV4cG9ydHMzLnBhcnNlID0gcGFyc2VyLnBhcnNlOwogICAgICBleHBvcnRzMy5wYXJzZVRyZWUgPSBwYXJzZXIucGFyc2VUcmVlOwogICAgICBleHBvcnRzMy5maW5kTm9kZUF0TG9jYXRpb24gPSBwYXJzZXIuZmluZE5vZGVBdExvY2F0aW9uOwogICAgICBleHBvcnRzMy5maW5kTm9kZUF0T2Zmc2V0ID0gcGFyc2VyLmZpbmROb2RlQXRPZmZzZXQ7CiAgICAgIGV4cG9ydHMzLmdldE5vZGVQYXRoID0gcGFyc2VyLmdldE5vZGVQYXRoOwogICAgICBleHBvcnRzMy5nZXROb2RlVmFsdWUgPSBwYXJzZXIuZ2V0Tm9kZVZhbHVlOwogICAgICBleHBvcnRzMy52aXNpdCA9IHBhcnNlci52aXNpdDsKICAgICAgZXhwb3J0czMuc3RyaXBDb21tZW50cyA9IHBhcnNlci5zdHJpcENvbW1lbnRzOwogICAgICB2YXIgUGFyc2VFcnJvckNvZGU7CiAgICAgIChmdW5jdGlvbihQYXJzZUVycm9yQ29kZTIpIHsKICAgICAgICBQYXJzZUVycm9yQ29kZTJbUGFyc2VFcnJvckNvZGUyWyJJbnZhbGlkU3ltYm9sIl0gPSAxXSA9ICJJbnZhbGlkU3ltYm9sIjsKICAgICAgICBQYXJzZUVycm9yQ29kZTJbUGFyc2VFcnJvckNvZGUyWyJJbnZhbGlkTnVtYmVyRm9ybWF0Il0gPSAyXSA9ICJJbnZhbGlkTnVtYmVyRm9ybWF0IjsKICAgICAgICBQYXJzZUVycm9yQ29kZTJbUGFyc2VFcnJvckNvZGUyWyJQcm9wZXJ0eU5hbWVFeHBlY3RlZCJdID0gM10gPSAiUHJvcGVydHlOYW1lRXhwZWN0ZWQiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIlZhbHVlRXhwZWN0ZWQiXSA9IDRdID0gIlZhbHVlRXhwZWN0ZWQiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIkNvbG9uRXhwZWN0ZWQiXSA9IDVdID0gIkNvbG9uRXhwZWN0ZWQiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIkNvbW1hRXhwZWN0ZWQiXSA9IDZdID0gIkNvbW1hRXhwZWN0ZWQiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIkNsb3NlQnJhY2VFeHBlY3RlZCJdID0gN10gPSAiQ2xvc2VCcmFjZUV4cGVjdGVkIjsKICAgICAgICBQYXJzZUVycm9yQ29kZTJbUGFyc2VFcnJvckNvZGUyWyJDbG9zZUJyYWNrZXRFeHBlY3RlZCJdID0gOF0gPSAiQ2xvc2VCcmFja2V0RXhwZWN0ZWQiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIkVuZE9mRmlsZUV4cGVjdGVkIl0gPSA5XSA9ICJFbmRPZkZpbGVFeHBlY3RlZCI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiSW52YWxpZENvbW1lbnRUb2tlbiJdID0gMTBdID0gIkludmFsaWRDb21tZW50VG9rZW4iOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIlVuZXhwZWN0ZWRFbmRPZkNvbW1lbnQiXSA9IDExXSA9ICJVbmV4cGVjdGVkRW5kT2ZDb21tZW50IjsKICAgICAgICBQYXJzZUVycm9yQ29kZTJbUGFyc2VFcnJvckNvZGUyWyJVbmV4cGVjdGVkRW5kT2ZTdHJpbmciXSA9IDEyXSA9ICJVbmV4cGVjdGVkRW5kT2ZTdHJpbmciOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIlVuZXhwZWN0ZWRFbmRPZk51bWJlciJdID0gMTNdID0gIlVuZXhwZWN0ZWRFbmRPZk51bWJlciI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiSW52YWxpZFVuaWNvZGUiXSA9IDE0XSA9ICJJbnZhbGlkVW5pY29kZSI7CiAgICAgICAgUGFyc2VFcnJvckNvZGUyW1BhcnNlRXJyb3JDb2RlMlsiSW52YWxpZEVzY2FwZUNoYXJhY3RlciJdID0gMTVdID0gIkludmFsaWRFc2NhcGVDaGFyYWN0ZXIiOwogICAgICAgIFBhcnNlRXJyb3JDb2RlMltQYXJzZUVycm9yQ29kZTJbIkludmFsaWRDaGFyYWN0ZXIiXSA9IDE2XSA9ICJJbnZhbGlkQ2hhcmFjdGVyIjsKICAgICAgfSkoUGFyc2VFcnJvckNvZGUgfHwgKGV4cG9ydHMzLlBhcnNlRXJyb3JDb2RlID0gUGFyc2VFcnJvckNvZGUgPSB7fSkpOwogICAgICBmdW5jdGlvbiBwcmludFBhcnNlRXJyb3JDb2RlKGNvZGUpIHsKICAgICAgICBzd2l0Y2ggKGNvZGUpIHsKICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgcmV0dXJuICJJbnZhbGlkU3ltYm9sIjsKICAgICAgICAgIGNhc2UgMjoKICAgICAgICAgICAgcmV0dXJuICJJbnZhbGlkTnVtYmVyRm9ybWF0IjsKICAgICAgICAgIGNhc2UgMzoKICAgICAgICAgICAgcmV0dXJuICJQcm9wZXJ0eU5hbWVFeHBlY3RlZCI7CiAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgIHJldHVybiAiVmFsdWVFeHBlY3RlZCI7CiAgICAgICAgICBjYXNlIDU6CiAgICAgICAgICAgIHJldHVybiAiQ29sb25FeHBlY3RlZCI7CiAgICAgICAgICBjYXNlIDY6CiAgICAgICAgICAgIHJldHVybiAiQ29tbWFFeHBlY3RlZCI7CiAgICAgICAgICBjYXNlIDc6CiAgICAgICAgICAgIHJldHVybiAiQ2xvc2VCcmFjZUV4cGVjdGVkIjsKICAgICAgICAgIGNhc2UgODoKICAgICAgICAgICAgcmV0dXJuICJDbG9zZUJyYWNrZXRFeHBlY3RlZCI7CiAgICAgICAgICBjYXNlIDk6CiAgICAgICAgICAgIHJldHVybiAiRW5kT2ZGaWxlRXhwZWN0ZWQiOwogICAgICAgICAgY2FzZSAxMDoKICAgICAgICAgICAgcmV0dXJuICJJbnZhbGlkQ29tbWVudFRva2VuIjsKICAgICAgICAgIGNhc2UgMTE6CiAgICAgICAgICAgIHJldHVybiAiVW5leHBlY3RlZEVuZE9mQ29tbWVudCI7CiAgICAgICAgICBjYXNlIDEyOgogICAgICAgICAgICByZXR1cm4gIlVuZXhwZWN0ZWRFbmRPZlN0cmluZyI7CiAgICAgICAgICBjYXNlIDEzOgogICAgICAgICAgICByZXR1cm4gIlVuZXhwZWN0ZWRFbmRPZk51bWJlciI7CiAgICAgICAgICBjYXNlIDE0OgogICAgICAgICAgICByZXR1cm4gIkludmFsaWRVbmljb2RlIjsKICAgICAgICAgIGNhc2UgMTU6CiAgICAgICAgICAgIHJldHVybiAiSW52YWxpZEVzY2FwZUNoYXJhY3RlciI7CiAgICAgICAgICBjYXNlIDE2OgogICAgICAgICAgICByZXR1cm4gIkludmFsaWRDaGFyYWN0ZXIiOwogICAgICAgIH0KICAgICAgICByZXR1cm4gIjx1bmtub3duIFBhcnNlRXJyb3JDb2RlPiI7CiAgICAgIH0KICAgICAgZXhwb3J0czMucHJpbnRQYXJzZUVycm9yQ29kZSA9IHByaW50UGFyc2VFcnJvckNvZGU7CiAgICAgIGZ1bmN0aW9uIGZvcm1hdChkb2N1bWVudFRleHQsIHJhbmdlLCBvcHRpb25zKSB7CiAgICAgICAgcmV0dXJuIGZvcm1hdHRlci5mb3JtYXQoZG9jdW1lbnRUZXh0LCByYW5nZSwgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgZXhwb3J0czMuZm9ybWF0ID0gZm9ybWF0OwogICAgICBmdW5jdGlvbiBtb2RpZnkodGV4dCwgcGF0aCwgdmFsdWUsIG9wdGlvbnMpIHsKICAgICAgICByZXR1cm4gZWRpdC5zZXRQcm9wZXJ0eSh0ZXh0LCBwYXRoLCB2YWx1ZSwgb3B0aW9ucyk7CiAgICAgIH0KICAgICAgZXhwb3J0czMubW9kaWZ5ID0gbW9kaWZ5OwogICAgICBmdW5jdGlvbiBhcHBseUVkaXRzKHRleHQsIGVkaXRzKSB7CiAgICAgICAgbGV0IHNvcnRlZEVkaXRzID0gZWRpdHMuc2xpY2UoMCkuc29ydCgoYSwgYikgPT4gewogICAgICAgICAgY29uc3QgZGlmZiA9IGEub2Zmc2V0IC0gYi5vZmZzZXQ7CiAgICAgICAgICBpZiAoZGlmZiA9PT0gMCkgewogICAgICAgICAgICByZXR1cm4gYS5sZW5ndGggLSBiLmxlbmd0aDsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBkaWZmOwogICAgICAgIH0pOwogICAgICAgIGxldCBsYXN0TW9kaWZpZWRPZmZzZXQgPSB0ZXh0Lmxlbmd0aDsKICAgICAgICBmb3IgKGxldCBpID0gc29ydGVkRWRpdHMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHsKICAgICAgICAgIGxldCBlID0gc29ydGVkRWRpdHNbaV07CiAgICAgICAgICBpZiAoZS5vZmZzZXQgKyBlLmxlbmd0aCA8PSBsYXN0TW9kaWZpZWRPZmZzZXQpIHsKICAgICAgICAgICAgdGV4dCA9IGVkaXQuYXBwbHlFZGl0KHRleHQsIGUpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJPdmVybGFwcGluZyBlZGl0Iik7CiAgICAgICAgICB9CiAgICAgICAgICBsYXN0TW9kaWZpZWRPZmZzZXQgPSBlLm9mZnNldDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRleHQ7CiAgICAgIH0KICAgICAgZXhwb3J0czMuYXBwbHlFZGl0cyA9IGFwcGx5RWRpdHM7CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL21ldGFkYXRhLmpzCnZhciByZXF1aXJlX21ldGFkYXRhMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vbWV0YWRhdGEuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkpzb25Xb3Jrc3BhY2VNZXRhZGF0YSA9IGV4cG9ydHMyLkpzb25Xb3Jrc3BhY2VTeW1ib2wgPSB2b2lkIDA7CiAgICB2YXIganNvbmNfcGFyc2VyXzEgPSByZXF1aXJlX21haW4oKTsKICAgIGV4cG9ydHMyLkpzb25Xb3Jrc3BhY2VTeW1ib2wgPSBTeW1ib2wuZm9yKCJAYW5ndWxhci9jb3JlOndvcmtzcGFjZS1qc29uIik7CiAgICBmdW5jdGlvbiBlc2NhcGVLZXkoa2V5KSB7CiAgICAgIHJldHVybiBrZXkucmVwbGFjZSgifiIsICJ+MCIpLnJlcGxhY2UoIi8iLCAifjEiKTsKICAgIH0KICAgIHZhciBKc29uV29ya3NwYWNlTWV0YWRhdGEgPSBjbGFzcyB7CiAgICAgIGZpbGVQYXRoOwogICAgICBhc3Q7CiAgICAgIHJhdzsKICAgICAgY2hhbmdlcyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIGhhc0xlZ2FjeVRhcmdldHNOYW1lID0gdHJ1ZTsKICAgICAgY29uc3RydWN0b3IoZmlsZVBhdGgsIGFzdCwgcmF3KSB7CiAgICAgICAgdGhpcy5maWxlUGF0aCA9IGZpbGVQYXRoOwogICAgICAgIHRoaXMuYXN0ID0gYXN0OwogICAgICAgIHRoaXMucmF3ID0gcmF3OwogICAgICB9CiAgICAgIGdldCBoYXNDaGFuZ2VzKCkgewogICAgICAgIHJldHVybiB0aGlzLmNoYW5nZXMuc2l6ZSA+IDA7CiAgICAgIH0KICAgICAgZ2V0IGNoYW5nZUNvdW50KCkgewogICAgICAgIHJldHVybiB0aGlzLmNoYW5nZXMuc2l6ZTsKICAgICAgfQogICAgICBnZXROb2RlVmFsdWVGcm9tQXN0KHBhdGgpIHsKICAgICAgICBjb25zdCBub2RlID0gKDAsIGpzb25jX3BhcnNlcl8xLmZpbmROb2RlQXRMb2NhdGlvbikodGhpcy5hc3QsIHBhdGgpOwogICAgICAgIHJldHVybiBub2RlICYmICgwLCBqc29uY19wYXJzZXJfMS5nZXROb2RlVmFsdWUpKG5vZGUpOwogICAgICB9CiAgICAgIGZpbmRDaGFuZ2VzRm9yUGF0aChwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuY2hhbmdlcy5nZXQocGF0aCk7CiAgICAgIH0KICAgICAgYWRkQ2hhbmdlKGpzb25QYXRoLCB2YWx1ZSwgdHlwZSkgewogICAgICAgIGxldCBjdXJyZW50UGF0aCA9ICIiOwogICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBqc29uUGF0aC5sZW5ndGggLSAxOyBpbmRleCsrKSB7CiAgICAgICAgICBjdXJyZW50UGF0aCA9IGN1cnJlbnRQYXRoICsgIi8iICsgZXNjYXBlS2V5KGpzb25QYXRoW2luZGV4XSk7CiAgICAgICAgICBpZiAodGhpcy5jaGFuZ2VzLmhhcyhjdXJyZW50UGF0aCkpIHsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb25zdCBwYXRoS2V5ID0gIi8iICsganNvblBhdGgubWFwKChrKSA9PiBlc2NhcGVLZXkoaykpLmpvaW4oIi8iKTsKICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiB0aGlzLmNoYW5nZXMua2V5cygpKSB7CiAgICAgICAgICBpZiAoa2V5LnN0YXJ0c1dpdGgocGF0aEtleSArICIvIikpIHsKICAgICAgICAgICAgdGhpcy5jaGFuZ2VzLmRlbGV0ZShrZXkpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICB0aGlzLmNoYW5nZXMuc2V0KHBhdGhLZXksIHsganNvblBhdGgsIHR5cGUsIHZhbHVlIH0pOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSnNvbldvcmtzcGFjZU1ldGFkYXRhID0gSnNvbldvcmtzcGFjZU1ldGFkYXRhOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vdXRpbGl0aWVzLmpzCnZhciByZXF1aXJlX3V0aWxpdGllcyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vdXRpbGl0aWVzLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jcmVhdGVWaXJ0dWFsQXN0T2JqZWN0ID0gY3JlYXRlVmlydHVhbEFzdE9iamVjdDsKICAgIHZhciBqc29uXzEgPSByZXF1aXJlX2pzb24oKTsKICAgIGZ1bmN0aW9uIGNyZWF0ZVZpcnR1YWxBc3RPYmplY3Qocm9vdCwgb3B0aW9ucyA9IHt9KSB7CiAgICAgIGNvbnN0IHJlcG9ydGVyID0gKHBhdGgsIHRhcmdldCwgb2xkVmFsdWUsIG5ld1ZhbHVlKSA9PiB7CiAgICAgICAgaWYgKCFvcHRpb25zLmxpc3RlbmVyKSB7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGlmIChvbGRWYWx1ZSA9PT0gbmV3VmFsdWUgfHwgSlNPTi5zdHJpbmdpZnkob2xkVmFsdWUpID09PSBKU09OLnN0cmluZ2lmeShuZXdWYWx1ZSkpIHsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodGFyZ2V0KSkgewogICAgICAgICAgb3B0aW9ucy5saXN0ZW5lcihwYXRoLnNsaWNlKDAsIC0xKSwgdGFyZ2V0KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgb3B0aW9ucy5saXN0ZW5lcihwYXRoLCBuZXdWYWx1ZSk7CiAgICAgICAgfQogICAgICB9OwogICAgICByZXR1cm4gY3JlYXRlKEFycmF5LmlzQXJyYXkocm9vdCkgPyBbLi4ucm9vdF0gOiB7IC4uLnJvb3QgfSwgW10sIHJlcG9ydGVyLCBuZXcgU2V0KG9wdGlvbnMuZXhjbHVkZSksIG9wdGlvbnMuaW5jbHVkZT8ubGVuZ3RoID8gbmV3IFNldChvcHRpb25zLmluY2x1ZGUpIDogdm9pZCAwKTsKICAgIH0KICAgIGZ1bmN0aW9uIGNyZWF0ZShvYmosIHBhdGgsIHJlcG9ydGVyLCBleGNsdWRlZCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCksIGluY2x1ZGVkKSB7CiAgICAgIHJldHVybiBuZXcgUHJveHkob2JqLCB7CiAgICAgICAgZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHRhcmdldCwgcCkgewogICAgICAgICAgaWYgKGV4Y2x1ZGVkLmhhcyhwKSB8fCBpbmNsdWRlZCAmJiAhaW5jbHVkZWQuaGFzKHApKSB7CiAgICAgICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gUmVmbGVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodGFyZ2V0LCBwKTsKICAgICAgICB9LAogICAgICAgIGhhcyh0YXJnZXQsIHApIHsKICAgICAgICAgIGlmICh0eXBlb2YgcCA9PT0gInN5bWJvbCIgfHwgZXhjbHVkZWQuaGFzKHApKSB7CiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBSZWZsZWN0Lmhhcyh0YXJnZXQsIHApOwogICAgICAgIH0sCiAgICAgICAgZ2V0KHRhcmdldCwgcCkgewogICAgICAgICAgaWYgKGV4Y2x1ZGVkLmhhcyhwKSB8fCBpbmNsdWRlZCAmJiAhaW5jbHVkZWQuaGFzKHApKSB7CiAgICAgICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCB2YWx1ZSA9IFJlZmxlY3QuZ2V0KHRhcmdldCwgcCk7CiAgICAgICAgICBpZiAodHlwZW9mIHAgPT09ICJzeW1ib2wiKSB7CiAgICAgICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICgoMCwganNvbl8xLmlzSnNvbk9iamVjdCkodmFsdWUpICYmICEodmFsdWUgaW5zdGFuY2VvZiBNYXApIHx8IEFycmF5LmlzQXJyYXkodmFsdWUpKSB7CiAgICAgICAgICAgIHJldHVybiBjcmVhdGUodmFsdWUsIFsuLi5wYXRoLCBwXSwgcmVwb3J0ZXIpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgcmV0dXJuIHZhbHVlOwogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgc2V0KHRhcmdldCwgcCwgdmFsdWUpIHsKICAgICAgICAgIGlmIChleGNsdWRlZC5oYXMocCkgfHwgaW5jbHVkZWQgJiYgIWluY2x1ZGVkLmhhcyhwKSkgewogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAodmFsdWUgPT09IHZvaWQgMCkgewogICAgICAgICAgICByZXR1cm4gdGhpcy5kZWxldGVQcm9wZXJ0eT8uKHRhcmdldCwgcCkgPz8gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAodHlwZW9mIHAgPT09ICJzeW1ib2wiKSB7CiAgICAgICAgICAgIHJldHVybiBSZWZsZWN0LnNldCh0YXJnZXQsIHAsIHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGV4aXN0aW5nVmFsdWUgPSBnZXRDdXJyZW50VmFsdWUodGFyZ2V0LCBwKTsKICAgICAgICAgIGlmIChSZWZsZWN0LnNldCh0YXJnZXQsIHAsIHZhbHVlKSkgewogICAgICAgICAgICByZXBvcnRlcihbLi4ucGF0aCwgcF0sIHRhcmdldCwgZXhpc3RpbmdWYWx1ZSwgdmFsdWUpOwogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9LAogICAgICAgIGRlbGV0ZVByb3BlcnR5KHRhcmdldCwgcCkgewogICAgICAgICAgaWYgKGV4Y2x1ZGVkLmhhcyhwKSkgewogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAodHlwZW9mIHAgPT09ICJzeW1ib2wiKSB7CiAgICAgICAgICAgIHJldHVybiBSZWZsZWN0LmRlbGV0ZVByb3BlcnR5KHRhcmdldCwgcCk7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBleGlzdGluZ1ZhbHVlID0gZ2V0Q3VycmVudFZhbHVlKHRhcmdldCwgcCk7CiAgICAgICAgICBpZiAoUmVmbGVjdC5kZWxldGVQcm9wZXJ0eSh0YXJnZXQsIHApKSB7CiAgICAgICAgICAgIHJlcG9ydGVyKFsuLi5wYXRoLCBwXSwgdGFyZ2V0LCBleGlzdGluZ1ZhbHVlLCB2b2lkIDApOwogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0sCiAgICAgICAgZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBwLCBhdHRyaWJ1dGVzKSB7CiAgICAgICAgICBpZiAodHlwZW9mIHAgPT09ICJzeW1ib2wiKSB7CiAgICAgICAgICAgIHJldHVybiBSZWZsZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwgcCwgYXR0cmlidXRlcyk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfSwKICAgICAgICBvd25LZXlzKHRhcmdldCkgewogICAgICAgICAgcmV0dXJuIFJlZmxlY3Qub3duS2V5cyh0YXJnZXQpLmZpbHRlcigocCkgPT4gIWV4Y2x1ZGVkLmhhcyhwKSAmJiAoIWluY2x1ZGVkIHx8IGluY2x1ZGVkLmhhcyhwKSkpOwogICAgICAgIH0KICAgICAgfSk7CiAgICB9CiAgICBmdW5jdGlvbiBnZXRDdXJyZW50VmFsdWUodGFyZ2V0LCBwcm9wZXJ0eSkgewogICAgICBpZiAoQXJyYXkuaXNBcnJheSh0YXJnZXQpICYmIGlzRmluaXRlKCtwcm9wZXJ0eSkpIHsKICAgICAgICByZXR1cm4gdGFyZ2V0Wytwcm9wZXJ0eV07CiAgICAgIH0KICAgICAgaWYgKHRhcmdldCAmJiBwcm9wZXJ0eSBpbiB0YXJnZXQpIHsKICAgICAgICByZXR1cm4gdGFyZ2V0W3Byb3BlcnR5XTsKICAgICAgfQogICAgICByZXR1cm4gdm9pZCAwOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vcmVhZGVyLmpzCnZhciByZXF1aXJlX3JlYWRlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vcmVhZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5yZWFkSnNvbldvcmtzcGFjZSA9IHJlYWRKc29uV29ya3NwYWNlOwogICAgdmFyIGpzb25jX3BhcnNlcl8xID0gcmVxdWlyZV9tYWluKCk7CiAgICB2YXIgdXRpbHNfMSA9IHJlcXVpcmVfdXRpbHMoKTsKICAgIHZhciBkZWZpbml0aW9uc18xID0gcmVxdWlyZV9kZWZpbml0aW9ucygpOwogICAgdmFyIG1ldGFkYXRhXzEgPSByZXF1aXJlX21ldGFkYXRhMigpOwogICAgdmFyIHV0aWxpdGllc18xID0gcmVxdWlyZV91dGlsaXRpZXMoKTsKICAgIHZhciBBTkdVTEFSX1dPUktTUEFDRV9FWFRFTlNJT05TID0gT2JqZWN0LmZyZWV6ZShbImNsaSIsICJuZXdQcm9qZWN0Um9vdCIsICJzY2hlbWF0aWNzIl0pOwogICAgdmFyIEFOR1VMQVJfUFJPSkVDVF9FWFRFTlNJT05TID0gT2JqZWN0LmZyZWV6ZShbImNsaSIsICJzY2hlbWF0aWNzIiwgInByb2plY3RUeXBlIiwgImkxOG4iXSk7CiAgICBhc3luYyBmdW5jdGlvbiByZWFkSnNvbldvcmtzcGFjZShwYXRoLCBob3N0LCBvcHRpb25zID0ge30pIHsKICAgICAgY29uc3QgcmF3ID0gYXdhaXQgaG9zdC5yZWFkRmlsZShwYXRoKTsKICAgICAgaWYgKHJhdyA9PT0gdm9pZCAwKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJVbmFibGUgdG8gcmVhZCB3b3Jrc3BhY2UgZmlsZS4iKTsKICAgICAgfQogICAgICBjb25zdCBhc3QgPSAoMCwganNvbmNfcGFyc2VyXzEucGFyc2VUcmVlKShyYXcsIHZvaWQgMCwgeyBhbGxvd1RyYWlsaW5nQ29tbWE6IHRydWUsIGRpc2FsbG93Q29tbWVudHM6IGZhbHNlIH0pOwogICAgICBpZiAoYXN0Py50eXBlICE9PSAib2JqZWN0IiB8fCAhYXN0LmNoaWxkcmVuKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJJbnZhbGlkIHdvcmtzcGFjZSBmaWxlIC0gZXhwZWN0ZWQgSlNPTiBvYmplY3QuIik7CiAgICAgIH0KICAgICAgY29uc3QgdmVyc2lvbk5vZGUgPSAoMCwganNvbmNfcGFyc2VyXzEuZmluZE5vZGVBdExvY2F0aW9uKShhc3QsIFsidmVyc2lvbiJdKTsKICAgICAgaWYgKCF2ZXJzaW9uTm9kZSkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5rbm93biBmb3JtYXQgLSB2ZXJzaW9uIHNwZWNpZmllciBub3QgZm91bmQuIik7CiAgICAgIH0KICAgICAgY29uc3QgdmVyc2lvbiA9IHZlcnNpb25Ob2RlLnZhbHVlOwogICAgICBpZiAodmVyc2lvbiAhPT0gMSkgewogICAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBmb3JtYXQgdmVyc2lvbiBkZXRlY3RlZCAtIEV4cGVjdGVkOlsgMSBdIEZvdW5kOiBbICR7dmVyc2lvbn0gXWApOwogICAgICB9CiAgICAgIGNvbnN0IGNvbnRleHQgPSB7CiAgICAgICAgaG9zdCwKICAgICAgICBtZXRhZGF0YTogbmV3IG1ldGFkYXRhXzEuSnNvbldvcmtzcGFjZU1ldGFkYXRhKHBhdGgsIGFzdCwgcmF3KSwKICAgICAgICB0cmFja0NoYW5nZXM6IHRydWUsCiAgICAgICAgdW5wcmVmaXhlZFdvcmtzcGFjZUV4dGVuc2lvbnM6IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KFsKICAgICAgICAgIC4uLkFOR1VMQVJfV09SS1NQQUNFX0VYVEVOU0lPTlMsCiAgICAgICAgICAuLi5vcHRpb25zLmFsbG93ZWRXb3Jrc3BhY2VFeHRlbnNpb25zID8/IFtdCiAgICAgICAgXSksCiAgICAgICAgdW5wcmVmaXhlZFByb2plY3RFeHRlbnNpb25zOiAvKiBAX19QVVJFX18gKi8gbmV3IFNldChbCiAgICAgICAgICAuLi5BTkdVTEFSX1BST0pFQ1RfRVhURU5TSU9OUywKICAgICAgICAgIC4uLm9wdGlvbnMuYWxsb3dlZFByb2plY3RFeHRlbnNpb25zID8/IFtdCiAgICAgICAgXSksCiAgICAgICAgZXJyb3IobWVzc2FnZSwgX25vZGUpIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcihtZXNzYWdlKTsKICAgICAgICB9LAogICAgICAgIHdhcm4obWVzc2FnZSwgX25vZGUpIHsKICAgICAgICAgIGNvbnNvbGUud2FybihtZXNzYWdlKTsKICAgICAgICB9CiAgICAgIH07CiAgICAgIGNvbnN0IHdvcmtzcGFjZSA9IHBhcnNlV29ya3NwYWNlKGFzdCwgY29udGV4dCk7CiAgICAgIHJldHVybiB3b3Jrc3BhY2U7CiAgICB9CiAgICBmdW5jdGlvbiBwYXJzZVdvcmtzcGFjZSh3b3Jrc3BhY2VOb2RlLCBjb250ZXh0KSB7CiAgICAgIGNvbnN0IGpzb25NZXRhZGF0YSA9IGNvbnRleHQubWV0YWRhdGE7CiAgICAgIGxldCBwcm9qZWN0czsKICAgICAgbGV0IGV4dGVuc2lvbnM7CiAgICAgIGlmICghY29udGV4dC50cmFja0NoYW5nZXMpIHsKICAgICAgICBleHRlbnNpb25zID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgIH0KICAgICAgY29uc3Qgd29ya3NwYWNlTm9kZVZhbHVlID0gKDAsIGpzb25jX3BhcnNlcl8xLmdldE5vZGVWYWx1ZSkod29ya3NwYWNlTm9kZSk7CiAgICAgIGZvciAoY29uc3QgW25hbWUsIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyh3b3Jrc3BhY2VOb2RlVmFsdWUpKSB7CiAgICAgICAgaWYgKG5hbWUgPT09ICIkc2NoZW1hIiB8fCBuYW1lID09PSAidmVyc2lvbiIpIHsKICAgICAgICB9IGVsc2UgaWYgKG5hbWUgPT09ICJwcm9qZWN0cyIpIHsKICAgICAgICAgIGNvbnN0IG5vZGVzID0gKDAsIGpzb25jX3BhcnNlcl8xLmZpbmROb2RlQXRMb2NhdGlvbikod29ya3NwYWNlTm9kZSwgWyJwcm9qZWN0cyJdKTsKICAgICAgICAgIGlmICghKDAsIHV0aWxzXzEuaXNKc29uT2JqZWN0KSh2YWx1ZSkgfHwgIW5vZGVzKSB7CiAgICAgICAgICAgIGNvbnRleHQuZXJyb3IoJ0ludmFsaWQgInByb2plY3RzIiBmaWVsZCBmb3VuZDsgZXhwZWN0ZWQgYW4gb2JqZWN0LicsIHZhbHVlKTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBwcm9qZWN0cyA9IHBhcnNlUHJvamVjdHNPYmplY3Qobm9kZXMsIGNvbnRleHQpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBpZiAoIWNvbnRleHQudW5wcmVmaXhlZFdvcmtzcGFjZUV4dGVuc2lvbnMuaGFzKG5hbWUpICYmICEvXlthLXpdezEsM30tLiovLnRlc3QobmFtZSkpIHsKICAgICAgICAgICAgY29udGV4dC53YXJuKGBXb3Jrc3BhY2UgZXh0ZW5zaW9uIHdpdGggaW52YWxpZCBuYW1lICgke25hbWV9KSBmb3VuZC5gLCBuYW1lKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChleHRlbnNpb25zKSB7CiAgICAgICAgICAgIGV4dGVuc2lvbnNbbmFtZV0gPSB2YWx1ZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgbGV0IGNvbGxlY3Rpb25MaXN0ZW5lcjsKICAgICAgaWYgKGNvbnRleHQudHJhY2tDaGFuZ2VzKSB7CiAgICAgICAgY29sbGVjdGlvbkxpc3RlbmVyID0gKG5hbWUsIG5ld1ZhbHVlKSA9PiB7CiAgICAgICAgICBqc29uTWV0YWRhdGEuYWRkQ2hhbmdlKFsicHJvamVjdHMiLCBuYW1lXSwgbmV3VmFsdWUsICJwcm9qZWN0Iik7CiAgICAgICAgfTsKICAgICAgfQogICAgICBjb25zdCBwcm9qZWN0Q29sbGVjdGlvbiA9IG5ldyBkZWZpbml0aW9uc18xLlByb2plY3REZWZpbml0aW9uQ29sbGVjdGlvbihwcm9qZWN0cywgY29sbGVjdGlvbkxpc3RlbmVyKTsKICAgICAgcmV0dXJuIHsKICAgICAgICBbbWV0YWRhdGFfMS5Kc29uV29ya3NwYWNlU3ltYm9sXToganNvbk1ldGFkYXRhLAogICAgICAgIHByb2plY3RzOiBwcm9qZWN0Q29sbGVjdGlvbiwKICAgICAgICAvLyBJZiBub3QgdHJhY2tpbmcgY2hhbmdlcyB0aGUgYGV4dGVuc2lvbnNgIHZhcmlhYmxlIHdpbGwgY29udGFpbiB0aGUgcGFyc2VkCiAgICAgICAgLy8gdmFsdWVzLiAgT3RoZXJ3aXNlIHRoZSBleHRlbnNpb25zIGFyZSB0cmFja2VkIHZpYSBhIHZpcnR1YWwgQVNUIG9iamVjdC4KICAgICAgICBleHRlbnNpb25zOiBleHRlbnNpb25zID8/ICgwLCB1dGlsaXRpZXNfMS5jcmVhdGVWaXJ0dWFsQXN0T2JqZWN0KSh3b3Jrc3BhY2VOb2RlVmFsdWUsIHsKICAgICAgICAgIGV4Y2x1ZGU6IFsiJHNjaGVtYSIsICJ2ZXJzaW9uIiwgInByb2plY3RzIl0sCiAgICAgICAgICBsaXN0ZW5lcihwYXRoLCB2YWx1ZSkgewogICAgICAgICAgICBqc29uTWV0YWRhdGEuYWRkQ2hhbmdlKHBhdGgsIHZhbHVlKTsKICAgICAgICAgIH0KICAgICAgICB9KQogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gcGFyc2VQcm9qZWN0c09iamVjdChwcm9qZWN0c05vZGUsIGNvbnRleHQpIHsKICAgICAgY29uc3QgcHJvamVjdHMgPSAvKiBAX19QVVJFX18gKi8gT2JqZWN0LmNyZWF0ZShudWxsKTsKICAgICAgZm9yIChjb25zdCBbbmFtZSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKCgwLCBqc29uY19wYXJzZXJfMS5nZXROb2RlVmFsdWUpKHByb2plY3RzTm9kZSkpKSB7CiAgICAgICAgY29uc3Qgbm9kZXMgPSAoMCwganNvbmNfcGFyc2VyXzEuZmluZE5vZGVBdExvY2F0aW9uKShwcm9qZWN0c05vZGUsIFtuYW1lXSk7CiAgICAgICAgaWYgKCEoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHZhbHVlKSB8fCAhbm9kZXMpIHsKICAgICAgICAgIGNvbnRleHQud2FybigiU2tpcHBpbmcgaW52YWxpZCBwcm9qZWN0IHZhbHVlOyBleHBlY3RlZCBhbiBvYmplY3QuIiwgdmFsdWUpOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIHByb2plY3RzW25hbWVdID0gcGFyc2VQcm9qZWN0KG5hbWUsIG5vZGVzLCBjb250ZXh0KTsKICAgICAgfQogICAgICByZXR1cm4gcHJvamVjdHM7CiAgICB9CiAgICBmdW5jdGlvbiBwYXJzZVByb2plY3QocHJvamVjdE5hbWUsIHByb2plY3ROb2RlLCBjb250ZXh0KSB7CiAgICAgIGNvbnN0IGpzb25NZXRhZGF0YSA9IGNvbnRleHQubWV0YWRhdGE7CiAgICAgIGxldCB0YXJnZXRzOwogICAgICBsZXQgaGFzVGFyZ2V0cyA9IGZhbHNlOwogICAgICBsZXQgZXh0ZW5zaW9uczsKICAgICAgbGV0IHByb3BlcnRpZXM7CiAgICAgIGlmICghY29udGV4dC50cmFja0NoYW5nZXMpIHsKICAgICAgICBleHRlbnNpb25zID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgICAgcHJvcGVydGllcyA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICB9CiAgICAgIGNvbnN0IHByb2plY3ROb2RlVmFsdWUgPSAoMCwganNvbmNfcGFyc2VyXzEuZ2V0Tm9kZVZhbHVlKShwcm9qZWN0Tm9kZSk7CiAgICAgIGlmICghKCJyb290IiBpbiBwcm9qZWN0Tm9kZVZhbHVlKSkgewogICAgICAgIHRocm93IG5ldyBFcnJvcihgUHJvamVjdCAiJHtwcm9qZWN0TmFtZX0iIGlzIG1pc3NpbmcgYSByZXF1aXJlZCBwcm9wZXJ0eSAicm9vdCIuYCk7CiAgICAgIH0KICAgICAgZm9yIChjb25zdCBbbmFtZSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKHByb2plY3ROb2RlVmFsdWUpKSB7CiAgICAgICAgc3dpdGNoIChuYW1lKSB7CiAgICAgICAgICBjYXNlICJ0YXJnZXRzIjoKICAgICAgICAgIGNhc2UgImFyY2hpdGVjdCI6IHsKICAgICAgICAgICAgY29uc3Qgbm9kZXMgPSAoMCwganNvbmNfcGFyc2VyXzEuZmluZE5vZGVBdExvY2F0aW9uKShwcm9qZWN0Tm9kZSwgW25hbWVdKTsKICAgICAgICAgICAgaWYgKCEoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHZhbHVlKSB8fCAhbm9kZXMpIHsKICAgICAgICAgICAgICBjb250ZXh0LmVycm9yKGBJbnZhbGlkICIke25hbWV9IiBmaWVsZCBmb3VuZDsgZXhwZWN0ZWQgYW4gb2JqZWN0LmAsIHZhbHVlKTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgICBoYXNUYXJnZXRzID0gdHJ1ZTsKICAgICAgICAgICAgdGFyZ2V0cyA9IHBhcnNlVGFyZ2V0c09iamVjdChwcm9qZWN0TmFtZSwgbm9kZXMsIGNvbnRleHQpOwogICAgICAgICAgICBqc29uTWV0YWRhdGEuaGFzTGVnYWN5VGFyZ2V0c05hbWUgPSBuYW1lID09PSAiYXJjaGl0ZWN0IjsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBjYXNlICJwcmVmaXgiOgogICAgICAgICAgY2FzZSAicm9vdCI6CiAgICAgICAgICBjYXNlICJzb3VyY2VSb290IjoKICAgICAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSAhPT0gInN0cmluZyIpIHsKICAgICAgICAgICAgICBjb250ZXh0Lndhcm4oYFByb2plY3QgcHJvcGVydHkgIiR7bmFtZX0iIHNob3VsZCBiZSBhIHN0cmluZy5gLCB2YWx1ZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHByb3BlcnRpZXMpIHsKICAgICAgICAgICAgICBwcm9wZXJ0aWVzW25hbWVdID0gdmFsdWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICBpZiAoIWNvbnRleHQudW5wcmVmaXhlZFByb2plY3RFeHRlbnNpb25zLmhhcyhuYW1lKSAmJiAhL15bYS16XXsxLDN9LS4qLy50ZXN0KG5hbWUpKSB7CiAgICAgICAgICAgICAgY29udGV4dC53YXJuKGBQcm9qZWN0ICcke3Byb2plY3ROYW1lfScgY29udGFpbnMgZXh0ZW5zaW9uIHdpdGggaW52YWxpZCBuYW1lICgke25hbWV9KS5gLCBuYW1lKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoZXh0ZW5zaW9ucykgewogICAgICAgICAgICAgIGV4dGVuc2lvbnNbbmFtZV0gPSB2YWx1ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgIH0KICAgICAgbGV0IGNvbGxlY3Rpb25MaXN0ZW5lcjsKICAgICAgaWYgKGNvbnRleHQudHJhY2tDaGFuZ2VzKSB7CiAgICAgICAgY29sbGVjdGlvbkxpc3RlbmVyID0gKG5hbWUsIG5ld1ZhbHVlLCBjb2xsZWN0aW9uKSA9PiB7CiAgICAgICAgICBpZiAoaGFzVGFyZ2V0cykgewogICAgICAgICAgICBqc29uTWV0YWRhdGEuYWRkQ2hhbmdlKFsicHJvamVjdHMiLCBwcm9qZWN0TmFtZSwgInRhcmdldHMiLCBuYW1lXSwgbmV3VmFsdWUsICJ0YXJnZXQiKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGpzb25NZXRhZGF0YS5hZGRDaGFuZ2UoWyJwcm9qZWN0cyIsIHByb2plY3ROYW1lLCAidGFyZ2V0cyJdLCBjb2xsZWN0aW9uLCAidGFyZ2V0Y29sbGVjdGlvbiIpOwogICAgICAgICAgfQogICAgICAgIH07CiAgICAgIH0KICAgICAgY29uc3QgYmFzZSA9IHsKICAgICAgICB0YXJnZXRzOiBuZXcgZGVmaW5pdGlvbnNfMS5UYXJnZXREZWZpbml0aW9uQ29sbGVjdGlvbih0YXJnZXRzLCBjb2xsZWN0aW9uTGlzdGVuZXIpLAogICAgICAgIC8vIElmIG5vdCB0cmFja2luZyBjaGFuZ2VzIHRoZSBgZXh0ZW5zaW9uc2AgdmFyaWFibGUgd2lsbCBjb250YWluIHRoZSBwYXJzZWQKICAgICAgICAvLyB2YWx1ZXMuICBPdGhlcndpc2UgdGhlIGV4dGVuc2lvbnMgYXJlIHRyYWNrZWQgdmlhIGEgdmlydHVhbCBBU1Qgb2JqZWN0LgogICAgICAgIGV4dGVuc2lvbnM6IGV4dGVuc2lvbnMgPz8gKDAsIHV0aWxpdGllc18xLmNyZWF0ZVZpcnR1YWxBc3RPYmplY3QpKHByb2plY3ROb2RlVmFsdWUsIHsKICAgICAgICAgIGV4Y2x1ZGU6IFsiYXJjaGl0ZWN0IiwgInByZWZpeCIsICJyb290IiwgInNvdXJjZVJvb3QiLCAidGFyZ2V0cyJdLAogICAgICAgICAgbGlzdGVuZXIocGF0aCwgdmFsdWUpIHsKICAgICAgICAgICAganNvbk1ldGFkYXRhLmFkZENoYW5nZShbInByb2plY3RzIiwgcHJvamVjdE5hbWUsIC4uLnBhdGhdLCB2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgfSkKICAgICAgfTsKICAgICAgY29uc3QgYmFzZUtleXMgPSBuZXcgU2V0KE9iamVjdC5rZXlzKGJhc2UpKTsKICAgICAgY29uc3QgcHJvamVjdCA9IHByb3BlcnRpZXMgPz8gKDAsIHV0aWxpdGllc18xLmNyZWF0ZVZpcnR1YWxBc3RPYmplY3QpKHByb2plY3ROb2RlVmFsdWUsIHsKICAgICAgICBpbmNsdWRlOiBbInByZWZpeCIsICJyb290IiwgInNvdXJjZVJvb3QiLCAuLi5iYXNlS2V5c10sCiAgICAgICAgbGlzdGVuZXIocGF0aCwgdmFsdWUpIHsKICAgICAgICAgIGlmICghYmFzZUtleXMuaGFzKHBhdGhbMF0pKSB7CiAgICAgICAgICAgIGpzb25NZXRhZGF0YS5hZGRDaGFuZ2UoWyJwcm9qZWN0cyIsIHByb2plY3ROYW1lLCAuLi5wYXRoXSwgdmFsdWUpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfSk7CiAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKHByb2plY3QsIGJhc2UpOwogICAgfQogICAgZnVuY3Rpb24gcGFyc2VUYXJnZXRzT2JqZWN0KHByb2plY3ROYW1lLCB0YXJnZXRzTm9kZSwgY29udGV4dCkgewogICAgICBjb25zdCBqc29uTWV0YWRhdGEgPSBjb250ZXh0Lm1ldGFkYXRhOwogICAgICBjb25zdCB0YXJnZXRzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgIGZvciAoY29uc3QgW25hbWUsIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcygoMCwganNvbmNfcGFyc2VyXzEuZ2V0Tm9kZVZhbHVlKSh0YXJnZXRzTm9kZSkpKSB7CiAgICAgICAgaWYgKCEoMCwgdXRpbHNfMS5pc0pzb25PYmplY3QpKHZhbHVlKSkgewogICAgICAgICAgY29udGV4dC53YXJuKCJTa2lwcGluZyBpbnZhbGlkIHRhcmdldCB2YWx1ZTsgZXhwZWN0ZWQgYW4gb2JqZWN0LiIsIHZhbHVlKTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBpZiAoY29udGV4dC50cmFja0NoYW5nZXMpIHsKICAgICAgICAgIHRhcmdldHNbbmFtZV0gPSAoMCwgdXRpbGl0aWVzXzEuY3JlYXRlVmlydHVhbEFzdE9iamVjdCkodmFsdWUsIHsKICAgICAgICAgICAgaW5jbHVkZTogWyJidWlsZGVyIiwgIm9wdGlvbnMiLCAiY29uZmlndXJhdGlvbnMiLCAiZGVmYXVsdENvbmZpZ3VyYXRpb24iXSwKICAgICAgICAgICAgbGlzdGVuZXIocGF0aCwgdmFsdWUyKSB7CiAgICAgICAgICAgICAganNvbk1ldGFkYXRhLmFkZENoYW5nZShbInByb2plY3RzIiwgcHJvamVjdE5hbWUsICJ0YXJnZXRzIiwgbmFtZSwgLi4ucGF0aF0sIHZhbHVlMik7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0YXJnZXRzW25hbWVdID0gdmFsdWU7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiB0YXJnZXRzOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vd3JpdGVyLmpzCnZhciByZXF1aXJlX3dyaXRlciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vd3JpdGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi53cml0ZUpzb25Xb3Jrc3BhY2UgPSB3cml0ZUpzb25Xb3Jrc3BhY2U7CiAgICB2YXIganNvbmNfcGFyc2VyXzEgPSByZXF1aXJlX21haW4oKTsKICAgIHZhciBub2RlX29zXzEgPSByZXF1aXJlKCJub2RlOm9zIik7CiAgICB2YXIgbWV0YWRhdGFfMSA9IHJlcXVpcmVfbWV0YWRhdGEyKCk7CiAgICBhc3luYyBmdW5jdGlvbiB3cml0ZUpzb25Xb3Jrc3BhY2Uod29ya3NwYWNlLCBob3N0LCBwYXRoLCBvcHRpb25zID0ge30pIHsKICAgICAgY29uc3QgbWV0YWRhdGEgPSB3b3Jrc3BhY2VbbWV0YWRhdGFfMS5Kc29uV29ya3NwYWNlU3ltYm9sXTsKICAgICAgaWYgKG1ldGFkYXRhKSB7CiAgICAgICAgaWYgKCFtZXRhZGF0YS5oYXNDaGFuZ2VzKSB7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGNvbnN0IGRhdGEgPSB1cGRhdGVKc29uV29ya3NwYWNlKG1ldGFkYXRhKTsKICAgICAgICByZXR1cm4gaG9zdC53cml0ZUZpbGUocGF0aCA/PyBtZXRhZGF0YS5maWxlUGF0aCwgZGF0YSk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgaWYgKCFwYXRoKSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoInBhdGggb3B0aW9uIGlzIHJlcXVpcmVkIik7CiAgICAgICAgfQogICAgICAgIGNvbnN0IG9iaiA9IGNvbnZlcnRKc29uV29ya3NwYWNlKHdvcmtzcGFjZSwgb3B0aW9ucy5zY2hlbWEpOwogICAgICAgIGNvbnN0IGRhdGEgPSBKU09OLnN0cmluZ2lmeShvYmosIG51bGwsIDIpOwogICAgICAgIHJldHVybiBob3N0LndyaXRlRmlsZShwYXRoLCBkYXRhKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gY29udmVydEpzb25Xb3Jrc3BhY2Uod29ya3NwYWNlLCBzY2hlbWEpIHsKICAgICAgY29uc3Qgb2JqID0gewogICAgICAgICRzY2hlbWE6IHNjaGVtYSB8fCAiLi9ub2RlX21vZHVsZXMvQGFuZ3VsYXIvY2xpL2xpYi9jb25maWcvc2NoZW1hLmpzb24iLAogICAgICAgIHZlcnNpb246IDEsCiAgICAgICAgLi4ud29ya3NwYWNlLmV4dGVuc2lvbnMsCiAgICAgICAgLi4uaXNFbXB0eSh3b3Jrc3BhY2UucHJvamVjdHMpID8ge30gOiB7IHByb2plY3RzOiBjb252ZXJ0SnNvblByb2plY3RDb2xsZWN0aW9uKHdvcmtzcGFjZS5wcm9qZWN0cykgfQogICAgICB9OwogICAgICByZXR1cm4gb2JqOwogICAgfQogICAgZnVuY3Rpb24gY29udmVydEpzb25Qcm9qZWN0Q29sbGVjdGlvbihjb2xsZWN0aW9uKSB7CiAgICAgIGNvbnN0IHByb2plY3RzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgIGZvciAoY29uc3QgW3Byb2plY3ROYW1lLCBwcm9qZWN0XSBvZiBjb2xsZWN0aW9uKSB7CiAgICAgICAgcHJvamVjdHNbcHJvamVjdE5hbWVdID0gY29udmVydEpzb25Qcm9qZWN0KHByb2plY3QpOwogICAgICB9CiAgICAgIHJldHVybiBwcm9qZWN0czsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbnZlcnRKc29uUHJvamVjdChwcm9qZWN0KSB7CiAgICAgIGxldCB0YXJnZXRzOwogICAgICBpZiAocHJvamVjdC50YXJnZXRzLnNpemUgPiAwKSB7CiAgICAgICAgdGFyZ2V0cyA9IC8qIEBfX1BVUkVfXyAqLyBPYmplY3QuY3JlYXRlKG51bGwpOwogICAgICAgIGZvciAoY29uc3QgW3RhcmdldE5hbWUsIHRhcmdldF0gb2YgcHJvamVjdC50YXJnZXRzKSB7CiAgICAgICAgICB0YXJnZXRzW3RhcmdldE5hbWVdID0gY29udmVydEpzb25UYXJnZXQodGFyZ2V0KTsKICAgICAgICB9CiAgICAgIH0KICAgICAgY29uc3Qgb2JqID0gewogICAgICAgIC4uLnByb2plY3QuZXh0ZW5zaW9ucywKICAgICAgICByb290OiBwcm9qZWN0LnJvb3QsCiAgICAgICAgLi4ucHJvamVjdC5zb3VyY2VSb290ID09PSB2b2lkIDAgPyB7fSA6IHsgc291cmNlUm9vdDogcHJvamVjdC5zb3VyY2VSb290IH0sCiAgICAgICAgLi4ucHJvamVjdC5wcmVmaXggPT09IHZvaWQgMCA/IHt9IDogeyBwcmVmaXg6IHByb2plY3QucHJlZml4IH0sCiAgICAgICAgLi4udGFyZ2V0cyA9PT0gdm9pZCAwID8ge30gOiB7IGFyY2hpdGVjdDogdGFyZ2V0cyB9CiAgICAgIH07CiAgICAgIHJldHVybiBvYmo7CiAgICB9CiAgICBmdW5jdGlvbiBpc0VtcHR5KG9iaikgewogICAgICByZXR1cm4gb2JqID09PSB2b2lkIDAgfHwgT2JqZWN0LmtleXMob2JqKS5sZW5ndGggPT09IDA7CiAgICB9CiAgICBmdW5jdGlvbiBjb252ZXJ0SnNvblRhcmdldCh0YXJnZXQpIHsKICAgICAgcmV0dXJuIHsKICAgICAgICBidWlsZGVyOiB0YXJnZXQuYnVpbGRlciwKICAgICAgICAuLi5pc0VtcHR5KHRhcmdldC5vcHRpb25zKSA/IHt9IDogeyBvcHRpb25zOiB0YXJnZXQub3B0aW9ucyB9LAogICAgICAgIC4uLmlzRW1wdHkodGFyZ2V0LmNvbmZpZ3VyYXRpb25zKSA/IHt9IDogeyBjb25maWd1cmF0aW9uczogdGFyZ2V0LmNvbmZpZ3VyYXRpb25zIH0sCiAgICAgICAgLi4udGFyZ2V0LmRlZmF1bHRDb25maWd1cmF0aW9uID09PSB2b2lkIDAgPyB7fSA6IHsgZGVmYXVsdENvbmZpZ3VyYXRpb246IHRhcmdldC5kZWZhdWx0Q29uZmlndXJhdGlvbiB9CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBjb252ZXJ0SnNvblRhcmdldENvbGxlY3Rpb24oY29sbGVjdGlvbikgewogICAgICBjb25zdCB0YXJnZXRzID0gLyogQF9fUFVSRV9fICovIE9iamVjdC5jcmVhdGUobnVsbCk7CiAgICAgIGZvciAoY29uc3QgW3Byb2plY3ROYW1lLCB0YXJnZXRdIG9mIGNvbGxlY3Rpb24pIHsKICAgICAgICB0YXJnZXRzW3Byb2plY3ROYW1lXSA9IGNvbnZlcnRKc29uVGFyZ2V0KHRhcmdldCk7CiAgICAgIH0KICAgICAgcmV0dXJuIHRhcmdldHM7CiAgICB9CiAgICBmdW5jdGlvbiBub3JtYWxpemVWYWx1ZSh2YWx1ZSwgdHlwZSkgewogICAgICBpZiAodmFsdWUgPT09IHZvaWQgMCkgewogICAgICAgIHJldHVybiB2b2lkIDA7CiAgICAgIH0KICAgICAgc3dpdGNoICh0eXBlKSB7CiAgICAgICAgY2FzZSAicHJvamVjdCI6CiAgICAgICAgICByZXR1cm4gY29udmVydEpzb25Qcm9qZWN0KHZhbHVlKTsKICAgICAgICBjYXNlICJwcm9qZWN0Y29sbGVjdGlvbiI6IHsKICAgICAgICAgIGNvbnN0IHByb2plY3RzID0gY29udmVydEpzb25Qcm9qZWN0Q29sbGVjdGlvbih2YWx1ZSk7CiAgICAgICAgICByZXR1cm4gaXNFbXB0eShwcm9qZWN0cykgPyB2b2lkIDAgOiBwcm9qZWN0czsKICAgICAgICB9CiAgICAgICAgY2FzZSAidGFyZ2V0IjoKICAgICAgICAgIHJldHVybiBjb252ZXJ0SnNvblRhcmdldCh2YWx1ZSk7CiAgICAgICAgY2FzZSAidGFyZ2V0Y29sbGVjdGlvbiI6IHsKICAgICAgICAgIGNvbnN0IHRhcmdldHMgPSBjb252ZXJ0SnNvblRhcmdldENvbGxlY3Rpb24odmFsdWUpOwogICAgICAgICAgcmV0dXJuIGlzRW1wdHkodGFyZ2V0cykgPyB2b2lkIDAgOiB0YXJnZXRzOwogICAgICAgIH0KICAgICAgICBkZWZhdWx0OgogICAgICAgICAgcmV0dXJuIHZhbHVlOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiB1cGRhdGVKc29uV29ya3NwYWNlKG1ldGFkYXRhKSB7CiAgICAgIGxldCB7IHJhdzogY29udGVudCB9ID0gbWV0YWRhdGE7CiAgICAgIGNvbnN0IHsgY2hhbmdlcywgaGFzTGVnYWN5VGFyZ2V0c05hbWUgfSA9IG1ldGFkYXRhOwogICAgICBmb3IgKGNvbnN0IHsganNvblBhdGgsIHZhbHVlLCB0eXBlIH0gb2YgY2hhbmdlcy52YWx1ZXMoKSkgewogICAgICAgIGlmIChoYXNMZWdhY3lUYXJnZXRzTmFtZSAmJiBqc29uUGF0aFsyXSA9PT0gInRhcmdldHMiKSB7CiAgICAgICAgICBqc29uUGF0aFsyXSA9ICJhcmNoaXRlY3QiOwogICAgICAgIH0KICAgICAgICBjb25zdCBlZGl0cyA9ICgwLCBqc29uY19wYXJzZXJfMS5tb2RpZnkpKGNvbnRlbnQsIGpzb25QYXRoLCBub3JtYWxpemVWYWx1ZSh2YWx1ZSwgdHlwZSksIHsKICAgICAgICAgIGZvcm1hdHRpbmdPcHRpb25zOiB7CiAgICAgICAgICAgIGluc2VydFNwYWNlczogdHJ1ZSwKICAgICAgICAgICAgdGFiU2l6ZTogMiwKICAgICAgICAgICAgZW9sOiBnZXRFT0woY29udGVudCkKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgICBjb250ZW50ID0gKDAsIGpzb25jX3BhcnNlcl8xLmFwcGx5RWRpdHMpKGNvbnRlbnQsIGVkaXRzKTsKICAgICAgfQogICAgICByZXR1cm4gY29udGVudDsKICAgIH0KICAgIGZ1bmN0aW9uIGdldEVPTChjb250ZW50KSB7CiAgICAgIGNvbnN0IENSTEYgPSAiXHJcbiI7CiAgICAgIGNvbnN0IExGID0gIlxuIjsKICAgICAgY29uc3QgbmV3bGluZXMgPSBjb250ZW50Lm1hdGNoKC8oPzpccj9cbikvZyk7CiAgICAgIGlmIChuZXdsaW5lcz8ubGVuZ3RoKSB7CiAgICAgICAgY29uc3QgY3JsZiA9IG5ld2xpbmVzLmZpbHRlcigobCkgPT4gbCA9PT0gQ1JMRikubGVuZ3RoOwogICAgICAgIGNvbnN0IGxmID0gbmV3bGluZXMubGVuZ3RoIC0gY3JsZjsKICAgICAgICByZXR1cm4gY3JsZiA+IGxmID8gQ1JMRiA6IExGOwogICAgICB9CiAgICAgIHJldHVybiBub2RlX29zXzEuRU9MOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2NvcmUuanMKdmFyIHJlcXVpcmVfY29yZTMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9jb3JlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5Xb3Jrc3BhY2VGb3JtYXQgPSB2b2lkIDA7CiAgICBleHBvcnRzMi5fdGVzdF9hZGRXb3Jrc3BhY2VGaWxlID0gX3Rlc3RfYWRkV29ya3NwYWNlRmlsZTsKICAgIGV4cG9ydHMyLl90ZXN0X3JlbW92ZVdvcmtzcGFjZUZpbGUgPSBfdGVzdF9yZW1vdmVXb3Jrc3BhY2VGaWxlOwogICAgZXhwb3J0czIucmVhZFdvcmtzcGFjZSA9IHJlYWRXb3Jrc3BhY2U7CiAgICBleHBvcnRzMi53cml0ZVdvcmtzcGFjZSA9IHdyaXRlV29ya3NwYWNlOwogICAgdmFyIHZpcnR1YWxfZnNfMSA9IHJlcXVpcmVfdmlydHVhbF9mcygpOwogICAgdmFyIHJlYWRlcl8xID0gcmVxdWlyZV9yZWFkZXIoKTsKICAgIHZhciB3cml0ZXJfMSA9IHJlcXVpcmVfd3JpdGVyKCk7CiAgICB2YXIgZm9ybWF0TG9va3VwID0gLyogQF9fUFVSRV9fICovIG5ldyBXZWFrTWFwKCk7CiAgICB2YXIgV29ya3NwYWNlRm9ybWF0OwogICAgKGZ1bmN0aW9uKFdvcmtzcGFjZUZvcm1hdDIpIHsKICAgICAgV29ya3NwYWNlRm9ybWF0MltXb3Jrc3BhY2VGb3JtYXQyWyJKU09OIl0gPSAwXSA9ICJKU09OIjsKICAgIH0pKFdvcmtzcGFjZUZvcm1hdCB8fCAoZXhwb3J0czIuV29ya3NwYWNlRm9ybWF0ID0gV29ya3NwYWNlRm9ybWF0ID0ge30pKTsKICAgIGZ1bmN0aW9uIF90ZXN0X2FkZFdvcmtzcGFjZUZpbGUobmFtZSwgZm9ybWF0KSB7CiAgICAgIHdvcmtzcGFjZUZpbGVzW25hbWVdID0gZm9ybWF0OwogICAgfQogICAgZnVuY3Rpb24gX3Rlc3RfcmVtb3ZlV29ya3NwYWNlRmlsZShuYW1lKSB7CiAgICAgIGRlbGV0ZSB3b3Jrc3BhY2VGaWxlc1tuYW1lXTsKICAgIH0KICAgIHZhciB3b3Jrc3BhY2VGaWxlcyA9IHsKICAgICAgImFuZ3VsYXIuanNvbiI6IFdvcmtzcGFjZUZvcm1hdC5KU09OLAogICAgICAiLmFuZ3VsYXIuanNvbiI6IFdvcmtzcGFjZUZvcm1hdC5KU09OCiAgICB9OwogICAgYXN5bmMgZnVuY3Rpb24gcmVhZFdvcmtzcGFjZShwYXRoLCBob3N0LCBmb3JtYXQpIHsKICAgICAgaWYgKGF3YWl0IGhvc3QuaXNEaXJlY3RvcnkocGF0aCkpIHsKICAgICAgICBjb25zdCBkaXJlY3RvcnkgPSAoMCwgdmlydHVhbF9mc18xLm5vcm1hbGl6ZSkocGF0aCk7CiAgICAgICAgbGV0IGZvdW5kID0gZmFsc2U7CiAgICAgICAgZm9yIChjb25zdCBbbmFtZSwgbmFtZUZvcm1hdF0gb2YgT2JqZWN0LmVudHJpZXMod29ya3NwYWNlRmlsZXMpKSB7CiAgICAgICAgICBpZiAoZm9ybWF0ICE9PSB2b2lkIDAgJiYgZm9ybWF0ICE9PSBuYW1lRm9ybWF0KSB7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgY29uc3QgcG90ZW50aWFsID0gKDAsIHZpcnR1YWxfZnNfMS5nZXRTeXN0ZW1QYXRoKSgoMCwgdmlydHVhbF9mc18xLmpvaW4pKGRpcmVjdG9yeSwgbmFtZSkpOwogICAgICAgICAgaWYgKGF3YWl0IGhvc3QuaXNGaWxlKHBvdGVudGlhbCkpIHsKICAgICAgICAgICAgcGF0aCA9IHBvdGVudGlhbDsKICAgICAgICAgICAgZm9ybWF0ID0gbmFtZUZvcm1hdDsKICAgICAgICAgICAgZm91bmQgPSB0cnVlOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKCFmb3VuZCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJVbmFibGUgdG8gbG9jYXRlIGEgd29ya3NwYWNlIGZpbGUgZm9yIHdvcmtzcGFjZSBwYXRoLiBBcmUgeW91IG1pc3NpbmcgYW4gYGFuZ3VsYXIuanNvbmAgb3IgYC5hbmd1bGFyLmpzb25gIGZpbGU/Iik7CiAgICAgICAgfQogICAgICB9IGVsc2UgaWYgKGZvcm1hdCA9PT0gdm9pZCAwKSB7CiAgICAgICAgY29uc3QgZmlsZW5hbWUgPSAoMCwgdmlydHVhbF9mc18xLmJhc2VuYW1lKSgoMCwgdmlydHVhbF9mc18xLm5vcm1hbGl6ZSkocGF0aCkpOwogICAgICAgIGlmIChmaWxlbmFtZSBpbiB3b3Jrc3BhY2VGaWxlcykgewogICAgICAgICAgZm9ybWF0ID0gd29ya3NwYWNlRmlsZXNbZmlsZW5hbWVdOwogICAgICAgIH0KICAgICAgfQogICAgICBpZiAoZm9ybWF0ID09PSB2b2lkIDApIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlVuYWJsZSB0byBkZXRlcm1pbmUgZm9ybWF0IGZvciB3b3Jrc3BhY2UgcGF0aC4iKTsKICAgICAgfQogICAgICBsZXQgd29ya3NwYWNlOwogICAgICBzd2l0Y2ggKGZvcm1hdCkgewogICAgICAgIGNhc2UgV29ya3NwYWNlRm9ybWF0LkpTT046CiAgICAgICAgICB3b3Jrc3BhY2UgPSBhd2FpdCAoMCwgcmVhZGVyXzEucmVhZEpzb25Xb3Jrc3BhY2UpKHBhdGgsIGhvc3QpOwogICAgICAgICAgYnJlYWs7CiAgICAgICAgZGVmYXVsdDoKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5zdXBwb3J0ZWQgd29ya3NwYWNlIGZvcm1hdC4iKTsKICAgICAgfQogICAgICBmb3JtYXRMb29rdXAuc2V0KHdvcmtzcGFjZSwgV29ya3NwYWNlRm9ybWF0LkpTT04pOwogICAgICByZXR1cm4geyB3b3Jrc3BhY2UgfTsKICAgIH0KICAgIGFzeW5jIGZ1bmN0aW9uIHdyaXRlV29ya3NwYWNlKHdvcmtzcGFjZSwgaG9zdCwgcGF0aCwgZm9ybWF0KSB7CiAgICAgIGlmIChmb3JtYXQgPT09IHZvaWQgMCkgewogICAgICAgIGZvcm1hdCA9IGZvcm1hdExvb2t1cC5nZXQod29ya3NwYWNlKTsKICAgICAgICBpZiAoZm9ybWF0ID09PSB2b2lkIDApIHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiQSBmb3JtYXQgaXMgcmVxdWlyZWQgZm9yIGN1c3RvbSB3b3Jrc3BhY2Ugb2JqZWN0cy4iKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgc3dpdGNoIChmb3JtYXQpIHsKICAgICAgICBjYXNlIFdvcmtzcGFjZUZvcm1hdC5KU09OOgogICAgICAgICAgcmV0dXJuICgwLCB3cml0ZXJfMS53cml0ZUpzb25Xb3Jrc3BhY2UpKHdvcmtzcGFjZSwgaG9zdCwgcGF0aCk7CiAgICAgICAgZGVmYXVsdDoKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5zdXBwb3J0ZWQgd29ya3NwYWNlIGZvcm1hdC4iKTsKICAgICAgfQogICAgfQogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2luZGV4LmpzCnZhciByZXF1aXJlX3dvcmtzcGFjZSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fY3JlYXRlQmluZGluZyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fY3JlYXRlQmluZGluZyB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihtLCBrKTsKICAgICAgaWYgKCFkZXNjIHx8ICgiZ2V0IiBpbiBkZXNjID8gIW0uX19lc01vZHVsZSA6IGRlc2Mud3JpdGFibGUgfHwgZGVzYy5jb25maWd1cmFibGUpKSB7CiAgICAgICAgZGVzYyA9IHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBtW2tdOwogICAgICAgIH0gfTsKICAgICAgfQogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgazIsIGRlc2MpOwogICAgfSA6IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIG9bazJdID0gbVtrXTsKICAgIH0pOwogICAgdmFyIF9fZXhwb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXhwb3J0U3RhciB8fCBmdW5jdGlvbihtLCBleHBvcnRzMykgewogICAgICBmb3IgKHZhciBwIGluIG0pIGlmIChwICE9PSAiZGVmYXVsdCIgJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChleHBvcnRzMywgcCkpIF9fY3JlYXRlQmluZGluZyhleHBvcnRzMywgbSwgcCk7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi53cml0ZVdvcmtzcGFjZSA9IGV4cG9ydHMyLnJlYWRXb3Jrc3BhY2UgPSBleHBvcnRzMi5Xb3Jrc3BhY2VGb3JtYXQgPSBleHBvcnRzMi5jcmVhdGVXb3Jrc3BhY2VIb3N0ID0gdm9pZCAwOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfZGVmaW5pdGlvbnMoKSwgZXhwb3J0czIpOwogICAgdmFyIGhvc3RfMSA9IHJlcXVpcmVfaG9zdDIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgImNyZWF0ZVdvcmtzcGFjZUhvc3QiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBob3N0XzEuY3JlYXRlV29ya3NwYWNlSG9zdDsKICAgIH0gfSk7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9jb3JlMygpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiV29ya3NwYWNlRm9ybWF0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29yZV8xLldvcmtzcGFjZUZvcm1hdDsKICAgIH0gfSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJyZWFkV29ya3NwYWNlIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gY29yZV8xLnJlYWRXb3Jrc3BhY2U7CiAgICB9IH0pOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAid3JpdGVXb3Jrc3BhY2UiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb3JlXzEud3JpdGVXb3Jrc3BhY2U7CiAgICB9IH0pOwogIH0KfSk7CgovLyAuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9zcmMvaW5kZXguanMKdmFyIHJlcXVpcmVfc3JjID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX3NldE1vZHVsZURlZmF1bHQgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX3NldE1vZHVsZURlZmF1bHQgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCB2KSB7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZGVmYXVsdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHYgfSk7CiAgICB9IDogZnVuY3Rpb24obywgdikgewogICAgICBvWyJkZWZhdWx0Il0gPSB2OwogICAgfSk7CiAgICB2YXIgX19pbXBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19pbXBvcnRTdGFyIHx8IC8qIEBfX1BVUkVfXyAqLyBmdW5jdGlvbigpIHsKICAgICAgdmFyIG93bktleXMgPSBmdW5jdGlvbihvKSB7CiAgICAgICAgb3duS2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uKG8yKSB7CiAgICAgICAgICB2YXIgYXIgPSBbXTsKICAgICAgICAgIGZvciAodmFyIGsgaW4gbzIpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobzIsIGspKSBhclthci5sZW5ndGhdID0gazsKICAgICAgICAgIHJldHVybiBhcjsKICAgICAgICB9OwogICAgICAgIHJldHVybiBvd25LZXlzKG8pOwogICAgICB9OwogICAgICByZXR1cm4gZnVuY3Rpb24obW9kKSB7CiAgICAgICAgaWYgKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgcmV0dXJuIG1vZDsKICAgICAgICB2YXIgcmVzdWx0ID0ge307CiAgICAgICAgaWYgKG1vZCAhPSBudWxsKSB7CiAgICAgICAgICBmb3IgKHZhciBrID0gb3duS2V5cyhtb2QpLCBpID0gMDsgaSA8IGsubGVuZ3RoOyBpKyspIGlmIChrW2ldICE9PSAiZGVmYXVsdCIpIF9fY3JlYXRlQmluZGluZyhyZXN1bHQsIG1vZCwga1tpXSk7CiAgICAgICAgfQogICAgICAgIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfTsKICAgIH0oKTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIud29ya3NwYWNlcyA9IGV4cG9ydHMyLmxvZ2dpbmcgPSBleHBvcnRzMi5qc29uID0gdm9pZCAwOwogICAgdmFyIGpzb24gPSBfX2ltcG9ydFN0YXIocmVxdWlyZV9qc29uKCkpOwogICAgZXhwb3J0czIuanNvbiA9IGpzb247CiAgICB2YXIgbG9nZ2luZyA9IF9faW1wb3J0U3RhcihyZXF1aXJlX2xvZ2dlcjIoKSk7CiAgICBleHBvcnRzMi5sb2dnaW5nID0gbG9nZ2luZzsKICAgIHZhciB3b3Jrc3BhY2VzID0gX19pbXBvcnRTdGFyKHJlcXVpcmVfd29ya3NwYWNlKCkpOwogICAgZXhwb3J0czIud29ya3NwYWNlcyA9IHdvcmtzcGFjZXM7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9leGNlcHRpb24oKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfanNvbigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV91dGlsczMoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdmlydHVhbF9mcygpLCBleHBvcnRzMik7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9mb3JtYXRzL2h0bWwtc2VsZWN0b3IuanMKdmFyIHJlcXVpcmVfaHRtbF9zZWxlY3RvciA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZm9ybWF0cy9odG1sLXNlbGVjdG9yLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5odG1sU2VsZWN0b3JGb3JtYXQgPSB2b2lkIDA7CiAgICB2YXIgdW5pY29kZVJhbmdlcyA9IFsKICAgICAgWzE5MiwgMjE0XSwKICAgICAgWzIxNiwgMjQ2XSwKICAgICAgWzI0OCwgODkzXSwKICAgICAgWzg5NSwgODE5MV0sCiAgICAgIFs4MjA0LCA4MjA1XSwKICAgICAgWzgyNTUsIDgyNTZdLAogICAgICBbODMwNCwgODU5MV0sCiAgICAgIFsxMTI2NCwgMTIyNzFdLAogICAgICBbMTIyODksIDU1Mjk1XSwKICAgICAgWzYzNzQ0LCA2NDk3NV0sCiAgICAgIFs2NTAwOCwgNjU1MzNdLAogICAgICBbNjU1MzYsIDk4MzAzOV0KICAgIF07CiAgICBmdW5jdGlvbiBpc1ZhbGlkRWxlbWVudE5hbWUobmFtZSkgewogICAgICBsZXQgcmVnZXggPSAiXlthLXpBLVpdWyI7CiAgICAgIHJlZ2V4ICs9ICItLjAtOV9hLXpBLVpcXHV7Qjd9IjsKICAgICAgZm9yIChjb25zdCByYW5nZSBvZiB1bmljb2RlUmFuZ2VzKSB7CiAgICAgICAgcmVnZXggKz0gYFxcdXske3JhbmdlWzBdLnRvU3RyaW5nKDE2KX19LVxcdXske3JhbmdlWzFdLnRvU3RyaW5nKDE2KX19YDsKICAgICAgfQogICAgICByZWdleCArPSAiXSokIjsKICAgICAgcmV0dXJuIG5ldyBSZWdFeHAocmVnZXgsICJ1IikudGVzdChuYW1lKTsKICAgIH0KICAgIGV4cG9ydHMyLmh0bWxTZWxlY3RvckZvcm1hdCA9IHsKICAgICAgbmFtZTogImh0bWwtc2VsZWN0b3IiLAogICAgICBmb3JtYXR0ZXI6IHsKICAgICAgICBhc3luYzogZmFsc2UsCiAgICAgICAgdmFsaWRhdGU6IChuYW1lKSA9PiB0eXBlb2YgbmFtZSA9PT0gInN0cmluZyIgJiYgaXNWYWxpZEVsZW1lbnROYW1lKG5hbWUpCiAgICAgIH0KICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9mb3JtYXRzL3BhdGguanMKdmFyIHJlcXVpcmVfcGF0aDIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvcGF0aC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIucGF0aEZvcm1hdCA9IHZvaWQgMDsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgZXhwb3J0czIucGF0aEZvcm1hdCA9IHsKICAgICAgbmFtZTogInBhdGgiLAogICAgICBmb3JtYXR0ZXI6IHsKICAgICAgICBhc3luYzogZmFsc2UsCiAgICAgICAgdmFsaWRhdGU6IChwYXRoKSA9PiB7CiAgICAgICAgICByZXR1cm4gcGF0aCA9PT0gKDAsIGNvcmVfMS5ub3JtYWxpemUpKHBhdGgpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvaW5kZXguanMKdmFyIHJlcXVpcmVfZm9ybWF0czIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnN0YW5kYXJkRm9ybWF0cyA9IGV4cG9ydHMyLnBhdGhGb3JtYXQgPSBleHBvcnRzMi5odG1sU2VsZWN0b3JGb3JtYXQgPSB2b2lkIDA7CiAgICB2YXIgaHRtbF9zZWxlY3Rvcl8xID0gcmVxdWlyZV9odG1sX3NlbGVjdG9yKCk7CiAgICB2YXIgcGF0aF8xID0gcmVxdWlyZV9wYXRoMigpOwogICAgdmFyIGh0bWxfc2VsZWN0b3JfMiA9IHJlcXVpcmVfaHRtbF9zZWxlY3RvcigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiaHRtbFNlbGVjdG9yRm9ybWF0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gaHRtbF9zZWxlY3Rvcl8yLmh0bWxTZWxlY3RvckZvcm1hdDsKICAgIH0gfSk7CiAgICB2YXIgcGF0aF8yID0gcmVxdWlyZV9wYXRoMigpOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAicGF0aEZvcm1hdCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHBhdGhfMi5wYXRoRm9ybWF0OwogICAgfSB9KTsKICAgIGV4cG9ydHMyLnN0YW5kYXJkRm9ybWF0cyA9IFtodG1sX3NlbGVjdG9yXzEuaHRtbFNlbGVjdG9yRm9ybWF0LCBwYXRoXzEucGF0aEZvcm1hdF07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2ludGVyZmFjZS5qcwp2YXIgcmVxdWlyZV9pbnRlcmZhY2UzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2ludGVyZmFjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVHJlZSA9IGV4cG9ydHMyLlRyZWVTeW1ib2wgPSBleHBvcnRzMi5GaWxlVmlzaXRvckNhbmNlbFRva2VuID0gZXhwb3J0czIuTWVyZ2VTdHJhdGVneSA9IHZvaWQgMDsKICAgIHZhciBNZXJnZVN0cmF0ZWd5MjsKICAgIChmdW5jdGlvbihNZXJnZVN0cmF0ZWd5MykgewogICAgICBNZXJnZVN0cmF0ZWd5M1tNZXJnZVN0cmF0ZWd5M1siQWxsb3dPdmVyd3JpdGVDb25mbGljdCJdID0gMl0gPSAiQWxsb3dPdmVyd3JpdGVDb25mbGljdCI7CiAgICAgIE1lcmdlU3RyYXRlZ3kzW01lcmdlU3RyYXRlZ3kzWyJBbGxvd0NyZWF0aW9uQ29uZmxpY3QiXSA9IDRdID0gIkFsbG93Q3JlYXRpb25Db25mbGljdCI7CiAgICAgIE1lcmdlU3RyYXRlZ3kzW01lcmdlU3RyYXRlZ3kzWyJBbGxvd0RlbGV0ZUNvbmZsaWN0Il0gPSA4XSA9ICJBbGxvd0RlbGV0ZUNvbmZsaWN0IjsKICAgICAgTWVyZ2VTdHJhdGVneTNbTWVyZ2VTdHJhdGVneTNbIkRlZmF1bHQiXSA9IDBdID0gIkRlZmF1bHQiOwogICAgICBNZXJnZVN0cmF0ZWd5M1tNZXJnZVN0cmF0ZWd5M1siRXJyb3IiXSA9IDFdID0gIkVycm9yIjsKICAgICAgTWVyZ2VTdHJhdGVneTNbTWVyZ2VTdHJhdGVneTNbIkNvbnRlbnRPbmx5Il0gPSAyXSA9ICJDb250ZW50T25seSI7CiAgICAgIE1lcmdlU3RyYXRlZ3kzW01lcmdlU3RyYXRlZ3kzWyJPdmVyd3JpdGUiXSA9IDE0XSA9ICJPdmVyd3JpdGUiOwogICAgfSkoTWVyZ2VTdHJhdGVneTIgfHwgKGV4cG9ydHMyLk1lcmdlU3RyYXRlZ3kgPSBNZXJnZVN0cmF0ZWd5MiA9IHt9KSk7CiAgICBleHBvcnRzMi5GaWxlVmlzaXRvckNhbmNlbFRva2VuID0gU3ltYm9sKCk7CiAgICBleHBvcnRzMi5UcmVlU3ltYm9sID0gZnVuY3Rpb24oKSB7CiAgICAgIGNvbnN0IGdsb2JhbFN5bWJvbCA9IHR5cGVvZiB3aW5kb3cgPT0gIm9iamVjdCIgJiYgd2luZG93LndpbmRvdyA9PT0gd2luZG93ICYmIHdpbmRvdy5TeW1ib2wgfHwgdHlwZW9mIHNlbGYgPT0gIm9iamVjdCIgJiYgc2VsZi5zZWxmID09PSBzZWxmICYmIHNlbGYuU3ltYm9sIHx8IHR5cGVvZiBnbG9iYWwgPT0gIm9iamVjdCIgJiYgZ2xvYmFsLmdsb2JhbCA9PT0gZ2xvYmFsICYmIGdsb2JhbC5TeW1ib2w7CiAgICAgIGlmICghZ2xvYmFsU3ltYm9sKSB7CiAgICAgICAgcmV0dXJuIFN5bWJvbCgic2NoZW1hdGljLXRyZWUiKTsKICAgICAgfQogICAgICBpZiAoIWdsb2JhbFN5bWJvbC5zY2hlbWF0aWNUcmVlKSB7CiAgICAgICAgZ2xvYmFsU3ltYm9sLnNjaGVtYXRpY1RyZWUgPSBTeW1ib2woInNjaGVtYXRpYy10cmVlIik7CiAgICAgIH0KICAgICAgcmV0dXJuIGdsb2JhbFN5bWJvbC5zY2hlbWF0aWNUcmVlOwogICAgfSgpOwogICAgZXhwb3J0czIuVHJlZSA9IE9iamVjdC5mcmVlemUoewogICAgICBpc1RyZWUobWF5YmVUcmVlKSB7CiAgICAgICAgcmV0dXJuIGV4cG9ydHMyLlRyZWVTeW1ib2wgaW4gbWF5YmVUcmVlOwogICAgICB9CiAgICB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2V4Y2VwdGlvbi9leGNlcHRpb24uanMKdmFyIHJlcXVpcmVfZXhjZXB0aW9uMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZXhjZXB0aW9uL2V4Y2VwdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuVW5pbXBsZW1lbnRlZEV4Y2VwdGlvbiA9IGV4cG9ydHMyLlVuc3VjY2Vzc2Z1bFdvcmtmbG93RXhlY3V0aW9uID0gZXhwb3J0czIuTWVyZ2VDb25mbGljdEV4Y2VwdGlvbiA9IGV4cG9ydHMyLkludmFsaWRVcGRhdGVSZWNvcmRFeGNlcHRpb24gPSBleHBvcnRzMi5Db250ZW50SGFzTXV0YXRlZEV4Y2VwdGlvbiA9IGV4cG9ydHMyLkZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24gPSBleHBvcnRzMi5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uID0gZXhwb3J0czIuU2NoZW1hdGljc0V4Y2VwdGlvbiA9IHZvaWQgMDsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgdmFyIFNjaGVtYXRpY3NFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgIH07CiAgICBleHBvcnRzMi5TY2hlbWF0aWNzRXhjZXB0aW9uID0gU2NoZW1hdGljc0V4Y2VwdGlvbjsKICAgIHZhciBGaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgUGF0aCAiJHtwYXRofSIgZG9lcyBub3QgZXhpc3QuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uID0gRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbjsKICAgIHZhciBGaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgUGF0aCAiJHtwYXRofSIgYWxyZWFkeSBleGlzdC5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24gPSBGaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uOwogICAgdmFyIENvbnRlbnRIYXNNdXRhdGVkRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICBzdXBlcihgQ29udGVudCBhdCBwYXRoICIke3BhdGh9IiBoYXMgY2hhbmdlZCBiZXR3ZWVuIHRoZSBzdGFydCBhbmQgdGhlIGVuZCBvZiBhbiB1cGRhdGUuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Db250ZW50SGFzTXV0YXRlZEV4Y2VwdGlvbiA9IENvbnRlbnRIYXNNdXRhdGVkRXhjZXB0aW9uOwogICAgdmFyIEludmFsaWRVcGRhdGVSZWNvcmRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgc3VwZXIoYEludmFsaWQgcmVjb3JkIGluc3RhbmNlLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW52YWxpZFVwZGF0ZVJlY29yZEV4Y2VwdGlvbiA9IEludmFsaWRVcGRhdGVSZWNvcmRFeGNlcHRpb247CiAgICB2YXIgTWVyZ2VDb25mbGljdEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihwYXRoKSB7CiAgICAgICAgc3VwZXIoYEEgbWVyZ2UgY29uZmxpY3RlZCBvbiBwYXRoICIke3BhdGh9Ii5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLk1lcmdlQ29uZmxpY3RFeGNlcHRpb24gPSBNZXJnZUNvbmZsaWN0RXhjZXB0aW9uOwogICAgdmFyIFVuc3VjY2Vzc2Z1bFdvcmtmbG93RXhlY3V0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHN1cGVyKCJXb3JrZmxvdyBkaWQgbm90IGV4ZWN1dGUgc3VjY2Vzc2Z1bGx5LiIpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVW5zdWNjZXNzZnVsV29ya2Zsb3dFeGVjdXRpb24gPSBVbnN1Y2Nlc3NmdWxXb3JrZmxvd0V4ZWN1dGlvbjsKICAgIHZhciBVbmltcGxlbWVudGVkRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHN1cGVyKCJUaGlzIGZ1bmN0aW9uIGlzIHVuaW1wbGVtZW50ZWQuIik7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5VbmltcGxlbWVudGVkRXhjZXB0aW9uID0gVW5pbXBsZW1lbnRlZEV4Y2VwdGlvbjsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZGVsZWdhdGUuanMKdmFyIHJlcXVpcmVfZGVsZWdhdGUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvZGVsZWdhdGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkRlbGVnYXRlVHJlZSA9IHZvaWQgMDsKICAgIHZhciBpbnRlcmZhY2VfMSA9IHJlcXVpcmVfaW50ZXJmYWNlMygpOwogICAgdmFyIERlbGVnYXRlVHJlZSA9IGNsYXNzIHsKICAgICAgX290aGVyOwogICAgICBjb25zdHJ1Y3Rvcihfb3RoZXIpIHsKICAgICAgICB0aGlzLl9vdGhlciA9IF9vdGhlcjsKICAgICAgfQogICAgICBicmFuY2goKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmJyYW5jaCgpOwogICAgICB9CiAgICAgIG1lcmdlKG90aGVyLCBzdHJhdGVneSkgewogICAgICAgIHRoaXMuX290aGVyLm1lcmdlKG90aGVyLCBzdHJhdGVneSk7CiAgICAgIH0KICAgICAgZ2V0IHJvb3QoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLnJvb3Q7CiAgICAgIH0KICAgICAgLy8gUmVhZG9ubHkuCiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5yZWFkKHBhdGgpOwogICAgICB9CiAgICAgIHJlYWRUZXh0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIucmVhZFRleHQocGF0aCk7CiAgICAgIH0KICAgICAgcmVhZEpzb24ocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5yZWFkSnNvbihwYXRoKTsKICAgICAgfQogICAgICBleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5leGlzdHMocGF0aCk7CiAgICAgIH0KICAgICAgZ2V0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuZ2V0KHBhdGgpOwogICAgICB9CiAgICAgIGdldERpcihwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmdldERpcihwYXRoKTsKICAgICAgfQogICAgICB2aXNpdCh2aXNpdG9yKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLnZpc2l0KHZpc2l0b3IpOwogICAgICB9CiAgICAgIC8vIENoYW5nZSBjb250ZW50IG9mIGhvc3QgZmlsZXMuCiAgICAgIG92ZXJ3cml0ZShwYXRoLCBjb250ZW50KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLm92ZXJ3cml0ZShwYXRoLCBjb250ZW50KTsKICAgICAgfQogICAgICBiZWdpblVwZGF0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmJlZ2luVXBkYXRlKHBhdGgpOwogICAgICB9CiAgICAgIGNvbW1pdFVwZGF0ZShyZWNvcmQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuY29tbWl0VXBkYXRlKHJlY29yZCk7CiAgICAgIH0KICAgICAgLy8gU3RydWN0dXJhbCBtZXRob2RzLgogICAgICBjcmVhdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5jcmVhdGUocGF0aCwgY29udGVudCk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuZGVsZXRlKHBhdGgpOwogICAgICB9CiAgICAgIHJlbmFtZShmcm9tLCB0bykgewogICAgICAgIHJldHVybiB0aGlzLl9vdGhlci5yZW5hbWUoZnJvbSwgdG8pOwogICAgICB9CiAgICAgIGFwcGx5KGFjdGlvbiwgc3RyYXRlZ3kpIHsKICAgICAgICByZXR1cm4gdGhpcy5fb3RoZXIuYXBwbHkoYWN0aW9uLCBzdHJhdGVneSk7CiAgICAgIH0KICAgICAgZ2V0IGFjdGlvbnMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX290aGVyLmFjdGlvbnM7CiAgICAgIH0KICAgICAgW2ludGVyZmFjZV8xLlRyZWVTeW1ib2xdKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRGVsZWdhdGVUcmVlID0gRGVsZWdhdGVUcmVlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9lbnRyeS5qcwp2YXIgcmVxdWlyZV9lbnRyeSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9lbnRyeS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuTGF6eUZpbGVFbnRyeSA9IGV4cG9ydHMyLlNpbXBsZUZpbGVFbnRyeSA9IHZvaWQgMDsKICAgIHZhciBTaW1wbGVGaWxlRW50cnkgPSBjbGFzcyB7CiAgICAgIF9wYXRoOwogICAgICBfY29udGVudDsKICAgICAgY29uc3RydWN0b3IoX3BhdGgsIF9jb250ZW50KSB7CiAgICAgICAgdGhpcy5fcGF0aCA9IF9wYXRoOwogICAgICAgIHRoaXMuX2NvbnRlbnQgPSBfY29udGVudDsKICAgICAgfQogICAgICBnZXQgcGF0aCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcGF0aDsKICAgICAgfQogICAgICBnZXQgY29udGVudCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fY29udGVudDsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNpbXBsZUZpbGVFbnRyeSA9IFNpbXBsZUZpbGVFbnRyeTsKICAgIHZhciBMYXp5RmlsZUVudHJ5ID0gY2xhc3MgewogICAgICBfcGF0aDsKICAgICAgX2xvYWQ7CiAgICAgIF9jb250ZW50ID0gbnVsbDsKICAgICAgY29uc3RydWN0b3IoX3BhdGgsIF9sb2FkKSB7CiAgICAgICAgdGhpcy5fcGF0aCA9IF9wYXRoOwogICAgICAgIHRoaXMuX2xvYWQgPSBfbG9hZDsKICAgICAgfQogICAgICBnZXQgcGF0aCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcGF0aDsKICAgICAgfQogICAgICBnZXQgY29udGVudCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fY29udGVudCB8fCAodGhpcy5fY29udGVudCA9IHRoaXMuX2xvYWQodGhpcy5fcGF0aCkpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTGF6eUZpbGVFbnRyeSA9IExhenlGaWxlRW50cnk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0BqcmlkZ2V3ZWxsLXNvdXJjZW1hcC1jb2RlYy1ucG0tMS41LjAtZGZkOTEyNmQ3MS0xMC56aXAvbm9kZV9tb2R1bGVzL0BqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYy9kaXN0L3NvdXJjZW1hcC1jb2RlYy51bWQuanMKdmFyIHJlcXVpcmVfc291cmNlbWFwX2NvZGVjX3VtZCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AanJpZGdld2VsbC1zb3VyY2VtYXAtY29kZWMtbnBtLTEuNS4wLWRmZDkxMjZkNzEtMTAuemlwL25vZGVfbW9kdWxlcy9AanJpZGdld2VsbC9zb3VyY2VtYXAtY29kZWMvZGlzdC9zb3VyY2VtYXAtY29kZWMudW1kLmpzIihleHBvcnRzMiwgbW9kdWxlMikgewogICAgKGZ1bmN0aW9uKGdsb2JhbDIsIGZhY3RvcnkpIHsKICAgICAgdHlwZW9mIGV4cG9ydHMyID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlMiAhPT0gInVuZGVmaW5lZCIgPyBmYWN0b3J5KGV4cG9ydHMyKSA6IHR5cGVvZiBkZWZpbmUgPT09ICJmdW5jdGlvbiIgJiYgZGVmaW5lLmFtZCA/IGRlZmluZShbImV4cG9ydHMiXSwgZmFjdG9yeSkgOiAoZ2xvYmFsMiA9IHR5cGVvZiBnbG9iYWxUaGlzICE9PSAidW5kZWZpbmVkIiA/IGdsb2JhbFRoaXMgOiBnbG9iYWwyIHx8IHNlbGYsIGZhY3RvcnkoZ2xvYmFsMi5zb3VyY2VtYXBDb2RlYyA9IHt9KSk7CiAgICB9KShleHBvcnRzMiwgZnVuY3Rpb24oZXhwb3J0czMpIHsKICAgICAgInVzZSBzdHJpY3QiOwogICAgICBjb25zdCBjb21tYSA9ICIsIi5jaGFyQ29kZUF0KDApOwogICAgICBjb25zdCBzZW1pY29sb24gPSAiOyIuY2hhckNvZGVBdCgwKTsKICAgICAgY29uc3QgY2hhcnMgPSAiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLyI7CiAgICAgIGNvbnN0IGludFRvQ2hhciA9IG5ldyBVaW50OEFycmF5KDY0KTsKICAgICAgY29uc3QgY2hhclRvSW50ID0gbmV3IFVpbnQ4QXJyYXkoMTI4KTsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjaGFycy5sZW5ndGg7IGkrKykgewogICAgICAgIGNvbnN0IGMgPSBjaGFycy5jaGFyQ29kZUF0KGkpOwogICAgICAgIGludFRvQ2hhcltpXSA9IGM7CiAgICAgICAgY2hhclRvSW50W2NdID0gaTsKICAgICAgfQogICAgICBmdW5jdGlvbiBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgcmVsYXRpdmUpIHsKICAgICAgICBsZXQgdmFsdWUgPSAwOwogICAgICAgIGxldCBzaGlmdCA9IDA7CiAgICAgICAgbGV0IGludGVnZXIgPSAwOwogICAgICAgIGRvIHsKICAgICAgICAgIGNvbnN0IGMgPSByZWFkZXIubmV4dCgpOwogICAgICAgICAgaW50ZWdlciA9IGNoYXJUb0ludFtjXTsKICAgICAgICAgIHZhbHVlIHw9IChpbnRlZ2VyICYgMzEpIDw8IHNoaWZ0OwogICAgICAgICAgc2hpZnQgKz0gNTsKICAgICAgICB9IHdoaWxlIChpbnRlZ2VyICYgMzIpOwogICAgICAgIGNvbnN0IHNob3VsZE5lZ2F0ZSA9IHZhbHVlICYgMTsKICAgICAgICB2YWx1ZSA+Pj49IDE7CiAgICAgICAgaWYgKHNob3VsZE5lZ2F0ZSkgewogICAgICAgICAgdmFsdWUgPSAtMjE0NzQ4MzY0OCB8IC12YWx1ZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHJlbGF0aXZlICsgdmFsdWU7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gZW5jb2RlSW50ZWdlcihidWlsZGVyLCBudW0sIHJlbGF0aXZlKSB7CiAgICAgICAgbGV0IGRlbHRhID0gbnVtIC0gcmVsYXRpdmU7CiAgICAgICAgZGVsdGEgPSBkZWx0YSA8IDAgPyAtZGVsdGEgPDwgMSB8IDEgOiBkZWx0YSA8PCAxOwogICAgICAgIGRvIHsKICAgICAgICAgIGxldCBjbGFtcGVkID0gZGVsdGEgJiAzMTsKICAgICAgICAgIGRlbHRhID4+Pj0gNTsKICAgICAgICAgIGlmIChkZWx0YSA+IDApCiAgICAgICAgICAgIGNsYW1wZWQgfD0gMzI7CiAgICAgICAgICBidWlsZGVyLndyaXRlKGludFRvQ2hhcltjbGFtcGVkXSk7CiAgICAgICAgfSB3aGlsZSAoZGVsdGEgPiAwKTsKICAgICAgICByZXR1cm4gbnVtOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGhhc01vcmVWbHEocmVhZGVyLCBtYXgpIHsKICAgICAgICBpZiAocmVhZGVyLnBvcyA+PSBtYXgpCiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgcmV0dXJuIHJlYWRlci5wZWVrKCkgIT09IGNvbW1hOwogICAgICB9CiAgICAgIGNvbnN0IGJ1Zkxlbmd0aCA9IDEwMjQgKiAxNjsKICAgICAgY29uc3QgdGQgPSB0eXBlb2YgVGV4dERlY29kZXIgIT09ICJ1bmRlZmluZWQiID8gLyogQF9fUFVSRV9fICovIG5ldyBUZXh0RGVjb2RlcigpIDogdHlwZW9mIEJ1ZmZlciAhPT0gInVuZGVmaW5lZCIgPyB7CiAgICAgICAgZGVjb2RlKGJ1ZikgewogICAgICAgICAgY29uc3Qgb3V0ID0gQnVmZmVyLmZyb20oYnVmLmJ1ZmZlciwgYnVmLmJ5dGVPZmZzZXQsIGJ1Zi5ieXRlTGVuZ3RoKTsKICAgICAgICAgIHJldHVybiBvdXQudG9TdHJpbmcoKTsKICAgICAgICB9CiAgICAgIH0gOiB7CiAgICAgICAgZGVjb2RlKGJ1ZikgewogICAgICAgICAgbGV0IG91dCA9ICIiOwogICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBidWYubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgb3V0ICs9IFN0cmluZy5mcm9tQ2hhckNvZGUoYnVmW2ldKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBvdXQ7CiAgICAgICAgfQogICAgICB9OwogICAgICBjbGFzcyBTdHJpbmdXcml0ZXIgewogICAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgICAgdGhpcy5wb3MgPSAwOwogICAgICAgICAgdGhpcy5vdXQgPSAiIjsKICAgICAgICAgIHRoaXMuYnVmZmVyID0gbmV3IFVpbnQ4QXJyYXkoYnVmTGVuZ3RoKTsKICAgICAgICB9CiAgICAgICAgd3JpdGUodikgewogICAgICAgICAgY29uc3QgeyBidWZmZXIgfSA9IHRoaXM7CiAgICAgICAgICBidWZmZXJbdGhpcy5wb3MrK10gPSB2OwogICAgICAgICAgaWYgKHRoaXMucG9zID09PSBidWZMZW5ndGgpIHsKICAgICAgICAgICAgdGhpcy5vdXQgKz0gdGQuZGVjb2RlKGJ1ZmZlcik7CiAgICAgICAgICAgIHRoaXMucG9zID0gMDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZmx1c2goKSB7CiAgICAgICAgICBjb25zdCB7IGJ1ZmZlciwgb3V0LCBwb3MgfSA9IHRoaXM7CiAgICAgICAgICByZXR1cm4gcG9zID4gMCA/IG91dCArIHRkLmRlY29kZShidWZmZXIuc3ViYXJyYXkoMCwgcG9zKSkgOiBvdXQ7CiAgICAgICAgfQogICAgICB9CiAgICAgIGNsYXNzIFN0cmluZ1JlYWRlciB7CiAgICAgICAgY29uc3RydWN0b3IoYnVmZmVyKSB7CiAgICAgICAgICB0aGlzLnBvcyA9IDA7CiAgICAgICAgICB0aGlzLmJ1ZmZlciA9IGJ1ZmZlcjsKICAgICAgICB9CiAgICAgICAgbmV4dCgpIHsKICAgICAgICAgIHJldHVybiB0aGlzLmJ1ZmZlci5jaGFyQ29kZUF0KHRoaXMucG9zKyspOwogICAgICAgIH0KICAgICAgICBwZWVrKCkgewogICAgICAgICAgcmV0dXJuIHRoaXMuYnVmZmVyLmNoYXJDb2RlQXQodGhpcy5wb3MpOwogICAgICAgIH0KICAgICAgICBpbmRleE9mKGNoYXIpIHsKICAgICAgICAgIGNvbnN0IHsgYnVmZmVyLCBwb3MgfSA9IHRoaXM7CiAgICAgICAgICBjb25zdCBpZHggPSBidWZmZXIuaW5kZXhPZihjaGFyLCBwb3MpOwogICAgICAgICAgcmV0dXJuIGlkeCA9PT0gLTEgPyBidWZmZXIubGVuZ3RoIDogaWR4OwogICAgICAgIH0KICAgICAgfQogICAgICBjb25zdCBFTVBUWSA9IFtdOwogICAgICBmdW5jdGlvbiBkZWNvZGVPcmlnaW5hbFNjb3BlcyhpbnB1dCkgewogICAgICAgIGNvbnN0IHsgbGVuZ3RoIH0gPSBpbnB1dDsKICAgICAgICBjb25zdCByZWFkZXIgPSBuZXcgU3RyaW5nUmVhZGVyKGlucHV0KTsKICAgICAgICBjb25zdCBzY29wZXMgPSBbXTsKICAgICAgICBjb25zdCBzdGFjayA9IFtdOwogICAgICAgIGxldCBsaW5lID0gMDsKICAgICAgICBmb3IgKDsgcmVhZGVyLnBvcyA8IGxlbmd0aDsgcmVhZGVyLnBvcysrKSB7CiAgICAgICAgICBsaW5lID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIGxpbmUpOwogICAgICAgICAgY29uc3QgY29sdW1uID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIDApOwogICAgICAgICAgaWYgKCFoYXNNb3JlVmxxKHJlYWRlciwgbGVuZ3RoKSkgewogICAgICAgICAgICBjb25zdCBsYXN0ID0gc3RhY2sucG9wKCk7CiAgICAgICAgICAgIGxhc3RbMl0gPSBsaW5lOwogICAgICAgICAgICBsYXN0WzNdID0gY29sdW1uOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IGtpbmQgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCk7CiAgICAgICAgICBjb25zdCBmaWVsZHMgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCk7CiAgICAgICAgICBjb25zdCBoYXNOYW1lID0gZmllbGRzICYgMTsKICAgICAgICAgIGNvbnN0IHNjb3BlID0gaGFzTmFtZSA/IFtsaW5lLCBjb2x1bW4sIDAsIDAsIGtpbmQsIGRlY29kZUludGVnZXIocmVhZGVyLCAwKV0gOiBbbGluZSwgY29sdW1uLCAwLCAwLCBraW5kXTsKICAgICAgICAgIGxldCB2YXJzID0gRU1QVFk7CiAgICAgICAgICBpZiAoaGFzTW9yZVZscShyZWFkZXIsIGxlbmd0aCkpIHsKICAgICAgICAgICAgdmFycyA9IFtdOwogICAgICAgICAgICBkbyB7CiAgICAgICAgICAgICAgY29uc3QgdmFyc0luZGV4ID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIDApOwogICAgICAgICAgICAgIHZhcnMucHVzaCh2YXJzSW5kZXgpOwogICAgICAgICAgICB9IHdoaWxlIChoYXNNb3JlVmxxKHJlYWRlciwgbGVuZ3RoKSk7CiAgICAgICAgICB9CiAgICAgICAgICBzY29wZS52YXJzID0gdmFyczsKICAgICAgICAgIHNjb3Blcy5wdXNoKHNjb3BlKTsKICAgICAgICAgIHN0YWNrLnB1c2goc2NvcGUpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc2NvcGVzOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGVuY29kZU9yaWdpbmFsU2NvcGVzKHNjb3BlcykgewogICAgICAgIGNvbnN0IHdyaXRlciA9IG5ldyBTdHJpbmdXcml0ZXIoKTsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNjb3Blcy5sZW5ndGg7ICkgewogICAgICAgICAgaSA9IF9lbmNvZGVPcmlnaW5hbFNjb3BlcyhzY29wZXMsIGksIHdyaXRlciwgWzBdKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHdyaXRlci5mbHVzaCgpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIF9lbmNvZGVPcmlnaW5hbFNjb3BlcyhzY29wZXMsIGluZGV4LCB3cml0ZXIsIHN0YXRlKSB7CiAgICAgICAgY29uc3Qgc2NvcGUgPSBzY29wZXNbaW5kZXhdOwogICAgICAgIGNvbnN0IHsgMDogc3RhcnRMaW5lLCAxOiBzdGFydENvbHVtbiwgMjogZW5kTGluZSwgMzogZW5kQ29sdW1uLCA0OiBraW5kLCB2YXJzIH0gPSBzY29wZTsKICAgICAgICBpZiAoaW5kZXggPiAwKQogICAgICAgICAgd3JpdGVyLndyaXRlKGNvbW1hKTsKICAgICAgICBzdGF0ZVswXSA9IGVuY29kZUludGVnZXIod3JpdGVyLCBzdGFydExpbmUsIHN0YXRlWzBdKTsKICAgICAgICBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc3RhcnRDb2x1bW4sIDApOwogICAgICAgIGVuY29kZUludGVnZXIod3JpdGVyLCBraW5kLCAwKTsKICAgICAgICBjb25zdCBmaWVsZHMgPSBzY29wZS5sZW5ndGggPT09IDYgPyAxIDogMDsKICAgICAgICBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZmllbGRzLCAwKTsKICAgICAgICBpZiAoc2NvcGUubGVuZ3RoID09PSA2KQogICAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIHNjb3BlWzVdLCAwKTsKICAgICAgICBmb3IgKGNvbnN0IHYgb2YgdmFycykgewogICAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIHYsIDApOwogICAgICAgIH0KICAgICAgICBmb3IgKGluZGV4Kys7IGluZGV4IDwgc2NvcGVzLmxlbmd0aDsgKSB7CiAgICAgICAgICBjb25zdCBuZXh0ID0gc2NvcGVzW2luZGV4XTsKICAgICAgICAgIGNvbnN0IHsgMDogbCwgMTogYyB9ID0gbmV4dDsKICAgICAgICAgIGlmIChsID4gZW5kTGluZSB8fCBsID09PSBlbmRMaW5lICYmIGMgPj0gZW5kQ29sdW1uKSB7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgICAgaW5kZXggPSBfZW5jb2RlT3JpZ2luYWxTY29wZXMoc2NvcGVzLCBpbmRleCwgd3JpdGVyLCBzdGF0ZSk7CiAgICAgICAgfQogICAgICAgIHdyaXRlci53cml0ZShjb21tYSk7CiAgICAgICAgc3RhdGVbMF0gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZW5kTGluZSwgc3RhdGVbMF0pOwogICAgICAgIGVuY29kZUludGVnZXIod3JpdGVyLCBlbmRDb2x1bW4sIDApOwogICAgICAgIHJldHVybiBpbmRleDsKICAgICAgfQogICAgICBmdW5jdGlvbiBkZWNvZGVHZW5lcmF0ZWRSYW5nZXMoaW5wdXQpIHsKICAgICAgICBjb25zdCB7IGxlbmd0aCB9ID0gaW5wdXQ7CiAgICAgICAgY29uc3QgcmVhZGVyID0gbmV3IFN0cmluZ1JlYWRlcihpbnB1dCk7CiAgICAgICAgY29uc3QgcmFuZ2VzID0gW107CiAgICAgICAgY29uc3Qgc3RhY2sgPSBbXTsKICAgICAgICBsZXQgZ2VuTGluZSA9IDA7CiAgICAgICAgbGV0IGRlZmluaXRpb25Tb3VyY2VzSW5kZXggPSAwOwogICAgICAgIGxldCBkZWZpbml0aW9uU2NvcGVJbmRleCA9IDA7CiAgICAgICAgbGV0IGNhbGxzaXRlU291cmNlc0luZGV4ID0gMDsKICAgICAgICBsZXQgY2FsbHNpdGVMaW5lID0gMDsKICAgICAgICBsZXQgY2FsbHNpdGVDb2x1bW4gPSAwOwogICAgICAgIGxldCBiaW5kaW5nTGluZSA9IDA7CiAgICAgICAgbGV0IGJpbmRpbmdDb2x1bW4gPSAwOwogICAgICAgIGRvIHsKICAgICAgICAgIGNvbnN0IHNlbWkgPSByZWFkZXIuaW5kZXhPZigiOyIpOwogICAgICAgICAgbGV0IGdlbkNvbHVtbiA9IDA7CiAgICAgICAgICBmb3IgKDsgcmVhZGVyLnBvcyA8IHNlbWk7IHJlYWRlci5wb3MrKykgewogICAgICAgICAgICBnZW5Db2x1bW4gPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgZ2VuQ29sdW1uKTsKICAgICAgICAgICAgaWYgKCFoYXNNb3JlVmxxKHJlYWRlciwgc2VtaSkpIHsKICAgICAgICAgICAgICBjb25zdCBsYXN0ID0gc3RhY2sucG9wKCk7CiAgICAgICAgICAgICAgbGFzdFsyXSA9IGdlbkxpbmU7CiAgICAgICAgICAgICAgbGFzdFszXSA9IGdlbkNvbHVtbjsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBjb25zdCBmaWVsZHMgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCk7CiAgICAgICAgICAgIGNvbnN0IGhhc0RlZmluaXRpb24gPSBmaWVsZHMgJiAxOwogICAgICAgICAgICBjb25zdCBoYXNDYWxsc2l0ZSA9IGZpZWxkcyAmIDI7CiAgICAgICAgICAgIGNvbnN0IGhhc1Njb3BlID0gZmllbGRzICYgNDsKICAgICAgICAgICAgbGV0IGNhbGxzaXRlID0gbnVsbDsKICAgICAgICAgICAgbGV0IGJpbmRpbmdzID0gRU1QVFk7CiAgICAgICAgICAgIGxldCByYW5nZTsKICAgICAgICAgICAgaWYgKGhhc0RlZmluaXRpb24pIHsKICAgICAgICAgICAgICBjb25zdCBkZWZTb3VyY2VzSW5kZXggPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgZGVmaW5pdGlvblNvdXJjZXNJbmRleCk7CiAgICAgICAgICAgICAgZGVmaW5pdGlvblNjb3BlSW5kZXggPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgZGVmaW5pdGlvblNvdXJjZXNJbmRleCA9PT0gZGVmU291cmNlc0luZGV4ID8gZGVmaW5pdGlvblNjb3BlSW5kZXggOiAwKTsKICAgICAgICAgICAgICBkZWZpbml0aW9uU291cmNlc0luZGV4ID0gZGVmU291cmNlc0luZGV4OwogICAgICAgICAgICAgIHJhbmdlID0gW2dlbkxpbmUsIGdlbkNvbHVtbiwgMCwgMCwgZGVmU291cmNlc0luZGV4LCBkZWZpbml0aW9uU2NvcGVJbmRleF07CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmFuZ2UgPSBbZ2VuTGluZSwgZ2VuQ29sdW1uLCAwLCAwXTsKICAgICAgICAgICAgfQogICAgICAgICAgICByYW5nZS5pc1Njb3BlID0gISFoYXNTY29wZTsKICAgICAgICAgICAgaWYgKGhhc0NhbGxzaXRlKSB7CiAgICAgICAgICAgICAgY29uc3QgcHJldkNzaSA9IGNhbGxzaXRlU291cmNlc0luZGV4OwogICAgICAgICAgICAgIGNvbnN0IHByZXZMaW5lID0gY2FsbHNpdGVMaW5lOwogICAgICAgICAgICAgIGNhbGxzaXRlU291cmNlc0luZGV4ID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIGNhbGxzaXRlU291cmNlc0luZGV4KTsKICAgICAgICAgICAgICBjb25zdCBzYW1lU291cmNlID0gcHJldkNzaSA9PT0gY2FsbHNpdGVTb3VyY2VzSW5kZXg7CiAgICAgICAgICAgICAgY2FsbHNpdGVMaW5lID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIHNhbWVTb3VyY2UgPyBjYWxsc2l0ZUxpbmUgOiAwKTsKICAgICAgICAgICAgICBjYWxsc2l0ZUNvbHVtbiA9IGRlY29kZUludGVnZXIocmVhZGVyLCBzYW1lU291cmNlICYmIHByZXZMaW5lID09PSBjYWxsc2l0ZUxpbmUgPyBjYWxsc2l0ZUNvbHVtbiA6IDApOwogICAgICAgICAgICAgIGNhbGxzaXRlID0gW2NhbGxzaXRlU291cmNlc0luZGV4LCBjYWxsc2l0ZUxpbmUsIGNhbGxzaXRlQ29sdW1uXTsKICAgICAgICAgICAgfQogICAgICAgICAgICByYW5nZS5jYWxsc2l0ZSA9IGNhbGxzaXRlOwogICAgICAgICAgICBpZiAoaGFzTW9yZVZscShyZWFkZXIsIHNlbWkpKSB7CiAgICAgICAgICAgICAgYmluZGluZ3MgPSBbXTsKICAgICAgICAgICAgICBkbyB7CiAgICAgICAgICAgICAgICBiaW5kaW5nTGluZSA9IGdlbkxpbmU7CiAgICAgICAgICAgICAgICBiaW5kaW5nQ29sdW1uID0gZ2VuQ29sdW1uOwogICAgICAgICAgICAgICAgY29uc3QgZXhwcmVzc2lvbnNDb3VudCA9IGRlY29kZUludGVnZXIocmVhZGVyLCAwKTsKICAgICAgICAgICAgICAgIGxldCBleHByZXNzaW9uUmFuZ2VzOwogICAgICAgICAgICAgICAgaWYgKGV4cHJlc3Npb25zQ291bnQgPCAtMSkgewogICAgICAgICAgICAgICAgICBleHByZXNzaW9uUmFuZ2VzID0gW1tkZWNvZGVJbnRlZ2VyKHJlYWRlciwgMCldXTsKICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IC0xOyBpID4gZXhwcmVzc2lvbnNDb3VudDsgaS0tKSB7CiAgICAgICAgICAgICAgICAgICAgY29uc3QgcHJldkJsID0gYmluZGluZ0xpbmU7CiAgICAgICAgICAgICAgICAgICAgYmluZGluZ0xpbmUgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgYmluZGluZ0xpbmUpOwogICAgICAgICAgICAgICAgICAgIGJpbmRpbmdDb2x1bW4gPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgYmluZGluZ0xpbmUgPT09IHByZXZCbCA/IGJpbmRpbmdDb2x1bW4gOiAwKTsKICAgICAgICAgICAgICAgICAgICBjb25zdCBleHByZXNzaW9uID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIDApOwogICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb25SYW5nZXMucHVzaChbZXhwcmVzc2lvbiwgYmluZGluZ0xpbmUsIGJpbmRpbmdDb2x1bW5dKTsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvblJhbmdlcyA9IFtbZXhwcmVzc2lvbnNDb3VudF1dOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYmluZGluZ3MucHVzaChleHByZXNzaW9uUmFuZ2VzKTsKICAgICAgICAgICAgICB9IHdoaWxlIChoYXNNb3JlVmxxKHJlYWRlciwgc2VtaSkpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJhbmdlLmJpbmRpbmdzID0gYmluZGluZ3M7CiAgICAgICAgICAgIHJhbmdlcy5wdXNoKHJhbmdlKTsKICAgICAgICAgICAgc3RhY2sucHVzaChyYW5nZSk7CiAgICAgICAgICB9CiAgICAgICAgICBnZW5MaW5lKys7CiAgICAgICAgICByZWFkZXIucG9zID0gc2VtaSArIDE7CiAgICAgICAgfSB3aGlsZSAocmVhZGVyLnBvcyA8IGxlbmd0aCk7CiAgICAgICAgcmV0dXJuIHJhbmdlczsKICAgICAgfQogICAgICBmdW5jdGlvbiBlbmNvZGVHZW5lcmF0ZWRSYW5nZXMocmFuZ2VzKSB7CiAgICAgICAgaWYgKHJhbmdlcy5sZW5ndGggPT09IDApCiAgICAgICAgICByZXR1cm4gIiI7CiAgICAgICAgY29uc3Qgd3JpdGVyID0gbmV3IFN0cmluZ1dyaXRlcigpOwogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcmFuZ2VzLmxlbmd0aDsgKSB7CiAgICAgICAgICBpID0gX2VuY29kZUdlbmVyYXRlZFJhbmdlcyhyYW5nZXMsIGksIHdyaXRlciwgWzAsIDAsIDAsIDAsIDAsIDAsIDBdKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHdyaXRlci5mbHVzaCgpOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIF9lbmNvZGVHZW5lcmF0ZWRSYW5nZXMocmFuZ2VzLCBpbmRleCwgd3JpdGVyLCBzdGF0ZSkgewogICAgICAgIGNvbnN0IHJhbmdlID0gcmFuZ2VzW2luZGV4XTsKICAgICAgICBjb25zdCB7IDA6IHN0YXJ0TGluZSwgMTogc3RhcnRDb2x1bW4sIDI6IGVuZExpbmUsIDM6IGVuZENvbHVtbiwgaXNTY29wZSwgY2FsbHNpdGUsIGJpbmRpbmdzIH0gPSByYW5nZTsKICAgICAgICBpZiAoc3RhdGVbMF0gPCBzdGFydExpbmUpIHsKICAgICAgICAgIGNhdGNodXBMaW5lKHdyaXRlciwgc3RhdGVbMF0sIHN0YXJ0TGluZSk7CiAgICAgICAgICBzdGF0ZVswXSA9IHN0YXJ0TGluZTsKICAgICAgICAgIHN0YXRlWzFdID0gMDsKICAgICAgICB9IGVsc2UgaWYgKGluZGV4ID4gMCkgewogICAgICAgICAgd3JpdGVyLndyaXRlKGNvbW1hKTsKICAgICAgICB9CiAgICAgICAgc3RhdGVbMV0gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgcmFuZ2VbMV0sIHN0YXRlWzFdKTsKICAgICAgICBjb25zdCBmaWVsZHMgPSAocmFuZ2UubGVuZ3RoID09PSA2ID8gMSA6IDApIHwgKGNhbGxzaXRlID8gMiA6IDApIHwgKGlzU2NvcGUgPyA0IDogMCk7CiAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIGZpZWxkcywgMCk7CiAgICAgICAgaWYgKHJhbmdlLmxlbmd0aCA9PT0gNikgewogICAgICAgICAgY29uc3QgeyA0OiBzb3VyY2VzSW5kZXgsIDU6IHNjb3Blc0luZGV4IH0gPSByYW5nZTsKICAgICAgICAgIGlmIChzb3VyY2VzSW5kZXggIT09IHN0YXRlWzJdKSB7CiAgICAgICAgICAgIHN0YXRlWzNdID0gMDsKICAgICAgICAgIH0KICAgICAgICAgIHN0YXRlWzJdID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIHNvdXJjZXNJbmRleCwgc3RhdGVbMl0pOwogICAgICAgICAgc3RhdGVbM10gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc2NvcGVzSW5kZXgsIHN0YXRlWzNdKTsKICAgICAgICB9CiAgICAgICAgaWYgKGNhbGxzaXRlKSB7CiAgICAgICAgICBjb25zdCB7IDA6IHNvdXJjZXNJbmRleCwgMTogY2FsbExpbmUsIDI6IGNhbGxDb2x1bW4gfSA9IHJhbmdlLmNhbGxzaXRlOwogICAgICAgICAgaWYgKHNvdXJjZXNJbmRleCAhPT0gc3RhdGVbNF0pIHsKICAgICAgICAgICAgc3RhdGVbNV0gPSAwOwogICAgICAgICAgICBzdGF0ZVs2XSA9IDA7CiAgICAgICAgICB9IGVsc2UgaWYgKGNhbGxMaW5lICE9PSBzdGF0ZVs1XSkgewogICAgICAgICAgICBzdGF0ZVs2XSA9IDA7CiAgICAgICAgICB9CiAgICAgICAgICBzdGF0ZVs0XSA9IGVuY29kZUludGVnZXIod3JpdGVyLCBzb3VyY2VzSW5kZXgsIHN0YXRlWzRdKTsKICAgICAgICAgIHN0YXRlWzVdID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIGNhbGxMaW5lLCBzdGF0ZVs1XSk7CiAgICAgICAgICBzdGF0ZVs2XSA9IGVuY29kZUludGVnZXIod3JpdGVyLCBjYWxsQ29sdW1uLCBzdGF0ZVs2XSk7CiAgICAgICAgfQogICAgICAgIGlmIChiaW5kaW5ncykgewogICAgICAgICAgZm9yIChjb25zdCBiaW5kaW5nIG9mIGJpbmRpbmdzKSB7CiAgICAgICAgICAgIGlmIChiaW5kaW5nLmxlbmd0aCA+IDEpCiAgICAgICAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIC1iaW5kaW5nLmxlbmd0aCwgMCk7CiAgICAgICAgICAgIGNvbnN0IGV4cHJlc3Npb24gPSBiaW5kaW5nWzBdWzBdOwogICAgICAgICAgICBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZXhwcmVzc2lvbiwgMCk7CiAgICAgICAgICAgIGxldCBiaW5kaW5nU3RhcnRMaW5lID0gc3RhcnRMaW5lOwogICAgICAgICAgICBsZXQgYmluZGluZ1N0YXJ0Q29sdW1uID0gc3RhcnRDb2x1bW47CiAgICAgICAgICAgIGZvciAobGV0IGkgPSAxOyBpIDwgYmluZGluZy5sZW5ndGg7IGkrKykgewogICAgICAgICAgICAgIGNvbnN0IGV4cFJhbmdlID0gYmluZGluZ1tpXTsKICAgICAgICAgICAgICBiaW5kaW5nU3RhcnRMaW5lID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIGV4cFJhbmdlWzFdLCBiaW5kaW5nU3RhcnRMaW5lKTsKICAgICAgICAgICAgICBiaW5kaW5nU3RhcnRDb2x1bW4gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZXhwUmFuZ2VbMl0sIGJpbmRpbmdTdGFydENvbHVtbik7CiAgICAgICAgICAgICAgZW5jb2RlSW50ZWdlcih3cml0ZXIsIGV4cFJhbmdlWzBdLCAwKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmb3IgKGluZGV4Kys7IGluZGV4IDwgcmFuZ2VzLmxlbmd0aDsgKSB7CiAgICAgICAgICBjb25zdCBuZXh0ID0gcmFuZ2VzW2luZGV4XTsKICAgICAgICAgIGNvbnN0IHsgMDogbCwgMTogYyB9ID0gbmV4dDsKICAgICAgICAgIGlmIChsID4gZW5kTGluZSB8fCBsID09PSBlbmRMaW5lICYmIGMgPj0gZW5kQ29sdW1uKSB7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgICAgaW5kZXggPSBfZW5jb2RlR2VuZXJhdGVkUmFuZ2VzKHJhbmdlcywgaW5kZXgsIHdyaXRlciwgc3RhdGUpOwogICAgICAgIH0KICAgICAgICBpZiAoc3RhdGVbMF0gPCBlbmRMaW5lKSB7CiAgICAgICAgICBjYXRjaHVwTGluZSh3cml0ZXIsIHN0YXRlWzBdLCBlbmRMaW5lKTsKICAgICAgICAgIHN0YXRlWzBdID0gZW5kTGluZTsKICAgICAgICAgIHN0YXRlWzFdID0gMDsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgd3JpdGVyLndyaXRlKGNvbW1hKTsKICAgICAgICB9CiAgICAgICAgc3RhdGVbMV0gPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgZW5kQ29sdW1uLCBzdGF0ZVsxXSk7CiAgICAgICAgcmV0dXJuIGluZGV4OwogICAgICB9CiAgICAgIGZ1bmN0aW9uIGNhdGNodXBMaW5lKHdyaXRlciwgbGFzdExpbmUsIGxpbmUpIHsKICAgICAgICBkbyB7CiAgICAgICAgICB3cml0ZXIud3JpdGUoc2VtaWNvbG9uKTsKICAgICAgICB9IHdoaWxlICgrK2xhc3RMaW5lIDwgbGluZSk7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gZGVjb2RlKG1hcHBpbmdzKSB7CiAgICAgICAgY29uc3QgeyBsZW5ndGggfSA9IG1hcHBpbmdzOwogICAgICAgIGNvbnN0IHJlYWRlciA9IG5ldyBTdHJpbmdSZWFkZXIobWFwcGluZ3MpOwogICAgICAgIGNvbnN0IGRlY29kZWQgPSBbXTsKICAgICAgICBsZXQgZ2VuQ29sdW1uID0gMDsKICAgICAgICBsZXQgc291cmNlc0luZGV4ID0gMDsKICAgICAgICBsZXQgc291cmNlTGluZSA9IDA7CiAgICAgICAgbGV0IHNvdXJjZUNvbHVtbiA9IDA7CiAgICAgICAgbGV0IG5hbWVzSW5kZXggPSAwOwogICAgICAgIGRvIHsKICAgICAgICAgIGNvbnN0IHNlbWkgPSByZWFkZXIuaW5kZXhPZigiOyIpOwogICAgICAgICAgY29uc3QgbGluZSA9IFtdOwogICAgICAgICAgbGV0IHNvcnRlZCA9IHRydWU7CiAgICAgICAgICBsZXQgbGFzdENvbCA9IDA7CiAgICAgICAgICBnZW5Db2x1bW4gPSAwOwogICAgICAgICAgd2hpbGUgKHJlYWRlci5wb3MgPCBzZW1pKSB7CiAgICAgICAgICAgIGxldCBzZWc7CiAgICAgICAgICAgIGdlbkNvbHVtbiA9IGRlY29kZUludGVnZXIocmVhZGVyLCBnZW5Db2x1bW4pOwogICAgICAgICAgICBpZiAoZ2VuQ29sdW1uIDwgbGFzdENvbCkKICAgICAgICAgICAgICBzb3J0ZWQgPSBmYWxzZTsKICAgICAgICAgICAgbGFzdENvbCA9IGdlbkNvbHVtbjsKICAgICAgICAgICAgaWYgKGhhc01vcmVWbHEocmVhZGVyLCBzZW1pKSkgewogICAgICAgICAgICAgIHNvdXJjZXNJbmRleCA9IGRlY29kZUludGVnZXIocmVhZGVyLCBzb3VyY2VzSW5kZXgpOwogICAgICAgICAgICAgIHNvdXJjZUxpbmUgPSBkZWNvZGVJbnRlZ2VyKHJlYWRlciwgc291cmNlTGluZSk7CiAgICAgICAgICAgICAgc291cmNlQ29sdW1uID0gZGVjb2RlSW50ZWdlcihyZWFkZXIsIHNvdXJjZUNvbHVtbik7CiAgICAgICAgICAgICAgaWYgKGhhc01vcmVWbHEocmVhZGVyLCBzZW1pKSkgewogICAgICAgICAgICAgICAgbmFtZXNJbmRleCA9IGRlY29kZUludGVnZXIocmVhZGVyLCBuYW1lc0luZGV4KTsKICAgICAgICAgICAgICAgIHNlZyA9IFtnZW5Db2x1bW4sIHNvdXJjZXNJbmRleCwgc291cmNlTGluZSwgc291cmNlQ29sdW1uLCBuYW1lc0luZGV4XTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgc2VnID0gW2dlbkNvbHVtbiwgc291cmNlc0luZGV4LCBzb3VyY2VMaW5lLCBzb3VyY2VDb2x1bW5dOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBzZWcgPSBbZ2VuQ29sdW1uXTsKICAgICAgICAgICAgfQogICAgICAgICAgICBsaW5lLnB1c2goc2VnKTsKICAgICAgICAgICAgcmVhZGVyLnBvcysrOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCFzb3J0ZWQpCiAgICAgICAgICAgIHNvcnQobGluZSk7CiAgICAgICAgICBkZWNvZGVkLnB1c2gobGluZSk7CiAgICAgICAgICByZWFkZXIucG9zID0gc2VtaSArIDE7CiAgICAgICAgfSB3aGlsZSAocmVhZGVyLnBvcyA8PSBsZW5ndGgpOwogICAgICAgIHJldHVybiBkZWNvZGVkOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHNvcnQobGluZSkgewogICAgICAgIGxpbmUuc29ydChzb3J0Q29tcGFyYXRvcik7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gc29ydENvbXBhcmF0b3IoYSwgYikgewogICAgICAgIHJldHVybiBhWzBdIC0gYlswXTsKICAgICAgfQogICAgICBmdW5jdGlvbiBlbmNvZGUoZGVjb2RlZCkgewogICAgICAgIGNvbnN0IHdyaXRlciA9IG5ldyBTdHJpbmdXcml0ZXIoKTsKICAgICAgICBsZXQgc291cmNlc0luZGV4ID0gMDsKICAgICAgICBsZXQgc291cmNlTGluZSA9IDA7CiAgICAgICAgbGV0IHNvdXJjZUNvbHVtbiA9IDA7CiAgICAgICAgbGV0IG5hbWVzSW5kZXggPSAwOwogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGVjb2RlZC5sZW5ndGg7IGkrKykgewogICAgICAgICAgY29uc3QgbGluZSA9IGRlY29kZWRbaV07CiAgICAgICAgICBpZiAoaSA+IDApCiAgICAgICAgICAgIHdyaXRlci53cml0ZShzZW1pY29sb24pOwogICAgICAgICAgaWYgKGxpbmUubGVuZ3RoID09PSAwKQogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIGxldCBnZW5Db2x1bW4gPSAwOwogICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBsaW5lLmxlbmd0aDsgaisrKSB7CiAgICAgICAgICAgIGNvbnN0IHNlZ21lbnQgPSBsaW5lW2pdOwogICAgICAgICAgICBpZiAoaiA+IDApCiAgICAgICAgICAgICAgd3JpdGVyLndyaXRlKGNvbW1hKTsKICAgICAgICAgICAgZ2VuQ29sdW1uID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIHNlZ21lbnRbMF0sIGdlbkNvbHVtbik7CiAgICAgICAgICAgIGlmIChzZWdtZW50Lmxlbmd0aCA9PT0gMSkKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgc291cmNlc0luZGV4ID0gZW5jb2RlSW50ZWdlcih3cml0ZXIsIHNlZ21lbnRbMV0sIHNvdXJjZXNJbmRleCk7CiAgICAgICAgICAgIHNvdXJjZUxpbmUgPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc2VnbWVudFsyXSwgc291cmNlTGluZSk7CiAgICAgICAgICAgIHNvdXJjZUNvbHVtbiA9IGVuY29kZUludGVnZXIod3JpdGVyLCBzZWdtZW50WzNdLCBzb3VyY2VDb2x1bW4pOwogICAgICAgICAgICBpZiAoc2VnbWVudC5sZW5ndGggPT09IDQpCiAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIG5hbWVzSW5kZXggPSBlbmNvZGVJbnRlZ2VyKHdyaXRlciwgc2VnbWVudFs0XSwgbmFtZXNJbmRleCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB3cml0ZXIuZmx1c2goKTsKICAgICAgfQogICAgICBleHBvcnRzMy5kZWNvZGUgPSBkZWNvZGU7CiAgICAgIGV4cG9ydHMzLmRlY29kZUdlbmVyYXRlZFJhbmdlcyA9IGRlY29kZUdlbmVyYXRlZFJhbmdlczsKICAgICAgZXhwb3J0czMuZGVjb2RlT3JpZ2luYWxTY29wZXMgPSBkZWNvZGVPcmlnaW5hbFNjb3BlczsKICAgICAgZXhwb3J0czMuZW5jb2RlID0gZW5jb2RlOwogICAgICBleHBvcnRzMy5lbmNvZGVHZW5lcmF0ZWRSYW5nZXMgPSBlbmNvZGVHZW5lcmF0ZWRSYW5nZXM7CiAgICAgIGV4cG9ydHMzLmVuY29kZU9yaWdpbmFsU2NvcGVzID0gZW5jb2RlT3JpZ2luYWxTY29wZXM7CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMywgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgfSk7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL21hZ2ljLXN0cmluZy1ucG0tMC4zMC4xNy1kYTFiNzU5M2IxLTEwLnppcC9ub2RlX21vZHVsZXMvbWFnaWMtc3RyaW5nL2Rpc3QvbWFnaWMtc3RyaW5nLmNqcy5qcwp2YXIgcmVxdWlyZV9tYWdpY19zdHJpbmdfY2pzID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL21hZ2ljLXN0cmluZy1ucG0tMC4zMC4xNy1kYTFiNzU5M2IxLTEwLnppcC9ub2RlX21vZHVsZXMvbWFnaWMtc3RyaW5nL2Rpc3QvbWFnaWMtc3RyaW5nLmNqcy5qcyIoZXhwb3J0czIsIG1vZHVsZTIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBzb3VyY2VtYXBDb2RlYyA9IHJlcXVpcmVfc291cmNlbWFwX2NvZGVjX3VtZCgpOwogICAgdmFyIEJpdFNldCA9IGNsYXNzIF9CaXRTZXQgewogICAgICBjb25zdHJ1Y3RvcihhcmcpIHsKICAgICAgICB0aGlzLmJpdHMgPSBhcmcgaW5zdGFuY2VvZiBfQml0U2V0ID8gYXJnLmJpdHMuc2xpY2UoKSA6IFtdOwogICAgICB9CiAgICAgIGFkZChuMikgewogICAgICAgIHRoaXMuYml0c1tuMiA+PiA1XSB8PSAxIDw8IChuMiAmIDMxKTsKICAgICAgfQogICAgICBoYXMobjIpIHsKICAgICAgICByZXR1cm4gISEodGhpcy5iaXRzW24yID4+IDVdICYgMSA8PCAobjIgJiAzMSkpOwogICAgICB9CiAgICB9OwogICAgdmFyIENodW5rID0gY2xhc3MgX0NodW5rIHsKICAgICAgY29uc3RydWN0b3Ioc3RhcnQsIGVuZCwgY29udGVudCkgewogICAgICAgIHRoaXMuc3RhcnQgPSBzdGFydDsKICAgICAgICB0aGlzLmVuZCA9IGVuZDsKICAgICAgICB0aGlzLm9yaWdpbmFsID0gY29udGVudDsKICAgICAgICB0aGlzLmludHJvID0gIiI7CiAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIHRoaXMuY29udGVudCA9IGNvbnRlbnQ7CiAgICAgICAgdGhpcy5zdG9yZU5hbWUgPSBmYWxzZTsKICAgICAgICB0aGlzLmVkaXRlZCA9IGZhbHNlOwogICAgICAgIHsKICAgICAgICAgIHRoaXMucHJldmlvdXMgPSBudWxsOwogICAgICAgICAgdGhpcy5uZXh0ID0gbnVsbDsKICAgICAgICB9CiAgICAgIH0KICAgICAgYXBwZW5kTGVmdChjb250ZW50KSB7CiAgICAgICAgdGhpcy5vdXRybyArPSBjb250ZW50OwogICAgICB9CiAgICAgIGFwcGVuZFJpZ2h0KGNvbnRlbnQpIHsKICAgICAgICB0aGlzLmludHJvID0gdGhpcy5pbnRybyArIGNvbnRlbnQ7CiAgICAgIH0KICAgICAgY2xvbmUoKSB7CiAgICAgICAgY29uc3QgY2h1bmsgPSBuZXcgX0NodW5rKHRoaXMuc3RhcnQsIHRoaXMuZW5kLCB0aGlzLm9yaWdpbmFsKTsKICAgICAgICBjaHVuay5pbnRybyA9IHRoaXMuaW50cm87CiAgICAgICAgY2h1bmsub3V0cm8gPSB0aGlzLm91dHJvOwogICAgICAgIGNodW5rLmNvbnRlbnQgPSB0aGlzLmNvbnRlbnQ7CiAgICAgICAgY2h1bmsuc3RvcmVOYW1lID0gdGhpcy5zdG9yZU5hbWU7CiAgICAgICAgY2h1bmsuZWRpdGVkID0gdGhpcy5lZGl0ZWQ7CiAgICAgICAgcmV0dXJuIGNodW5rOwogICAgICB9CiAgICAgIGNvbnRhaW5zKGluZGV4KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuc3RhcnQgPCBpbmRleCAmJiBpbmRleCA8IHRoaXMuZW5kOwogICAgICB9CiAgICAgIGVhY2hOZXh0KGZuKSB7CiAgICAgICAgbGV0IGNodW5rID0gdGhpczsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIGZuKGNodW5rKTsKICAgICAgICAgIGNodW5rID0gY2h1bmsubmV4dDsKICAgICAgICB9CiAgICAgIH0KICAgICAgZWFjaFByZXZpb3VzKGZuKSB7CiAgICAgICAgbGV0IGNodW5rID0gdGhpczsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIGZuKGNodW5rKTsKICAgICAgICAgIGNodW5rID0gY2h1bmsucHJldmlvdXM7CiAgICAgICAgfQogICAgICB9CiAgICAgIGVkaXQoY29udGVudCwgc3RvcmVOYW1lLCBjb250ZW50T25seSkgewogICAgICAgIHRoaXMuY29udGVudCA9IGNvbnRlbnQ7CiAgICAgICAgaWYgKCFjb250ZW50T25seSkgewogICAgICAgICAgdGhpcy5pbnRybyA9ICIiOwogICAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIH0KICAgICAgICB0aGlzLnN0b3JlTmFtZSA9IHN0b3JlTmFtZTsKICAgICAgICB0aGlzLmVkaXRlZCA9IHRydWU7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgcHJlcGVuZExlZnQoY29udGVudCkgewogICAgICAgIHRoaXMub3V0cm8gPSBjb250ZW50ICsgdGhpcy5vdXRybzsKICAgICAgfQogICAgICBwcmVwZW5kUmlnaHQoY29udGVudCkgewogICAgICAgIHRoaXMuaW50cm8gPSBjb250ZW50ICsgdGhpcy5pbnRybzsKICAgICAgfQogICAgICByZXNldCgpIHsKICAgICAgICB0aGlzLmludHJvID0gIiI7CiAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIGlmICh0aGlzLmVkaXRlZCkgewogICAgICAgICAgdGhpcy5jb250ZW50ID0gdGhpcy5vcmlnaW5hbDsKICAgICAgICAgIHRoaXMuc3RvcmVOYW1lID0gZmFsc2U7CiAgICAgICAgICB0aGlzLmVkaXRlZCA9IGZhbHNlOwogICAgICAgIH0KICAgICAgfQogICAgICBzcGxpdChpbmRleCkgewogICAgICAgIGNvbnN0IHNsaWNlSW5kZXggPSBpbmRleCAtIHRoaXMuc3RhcnQ7CiAgICAgICAgY29uc3Qgb3JpZ2luYWxCZWZvcmUgPSB0aGlzLm9yaWdpbmFsLnNsaWNlKDAsIHNsaWNlSW5kZXgpOwogICAgICAgIGNvbnN0IG9yaWdpbmFsQWZ0ZXIgPSB0aGlzLm9yaWdpbmFsLnNsaWNlKHNsaWNlSW5kZXgpOwogICAgICAgIHRoaXMub3JpZ2luYWwgPSBvcmlnaW5hbEJlZm9yZTsKICAgICAgICBjb25zdCBuZXdDaHVuayA9IG5ldyBfQ2h1bmsoaW5kZXgsIHRoaXMuZW5kLCBvcmlnaW5hbEFmdGVyKTsKICAgICAgICBuZXdDaHVuay5vdXRybyA9IHRoaXMub3V0cm87CiAgICAgICAgdGhpcy5vdXRybyA9ICIiOwogICAgICAgIHRoaXMuZW5kID0gaW5kZXg7CiAgICAgICAgaWYgKHRoaXMuZWRpdGVkKSB7CiAgICAgICAgICBuZXdDaHVuay5lZGl0KCIiLCBmYWxzZSk7CiAgICAgICAgICB0aGlzLmNvbnRlbnQgPSAiIjsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5jb250ZW50ID0gb3JpZ2luYWxCZWZvcmU7CiAgICAgICAgfQogICAgICAgIG5ld0NodW5rLm5leHQgPSB0aGlzLm5leHQ7CiAgICAgICAgaWYgKG5ld0NodW5rLm5leHQpIG5ld0NodW5rLm5leHQucHJldmlvdXMgPSBuZXdDaHVuazsKICAgICAgICBuZXdDaHVuay5wcmV2aW91cyA9IHRoaXM7CiAgICAgICAgdGhpcy5uZXh0ID0gbmV3Q2h1bms7CiAgICAgICAgcmV0dXJuIG5ld0NodW5rOwogICAgICB9CiAgICAgIHRvU3RyaW5nKCkgewogICAgICAgIHJldHVybiB0aGlzLmludHJvICsgdGhpcy5jb250ZW50ICsgdGhpcy5vdXRybzsKICAgICAgfQogICAgICB0cmltRW5kKHJ4KSB7CiAgICAgICAgdGhpcy5vdXRybyA9IHRoaXMub3V0cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgIGlmICh0aGlzLm91dHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgY29uc3QgdHJpbW1lZCA9IHRoaXMuY29udGVudC5yZXBsYWNlKHJ4LCAiIik7CiAgICAgICAgaWYgKHRyaW1tZWQubGVuZ3RoKSB7CiAgICAgICAgICBpZiAodHJpbW1lZCAhPT0gdGhpcy5jb250ZW50KSB7CiAgICAgICAgICAgIHRoaXMuc3BsaXQodGhpcy5zdGFydCArIHRyaW1tZWQubGVuZ3RoKS5lZGl0KCIiLCB2b2lkIDAsIHRydWUpOwogICAgICAgICAgICBpZiAodGhpcy5lZGl0ZWQpIHsKICAgICAgICAgICAgICB0aGlzLmVkaXQodHJpbW1lZCwgdGhpcy5zdG9yZU5hbWUsIHRydWUpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5lZGl0KCIiLCB2b2lkIDAsIHRydWUpOwogICAgICAgICAgdGhpcy5pbnRybyA9IHRoaXMuaW50cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgICAgaWYgKHRoaXMuaW50cm8ubGVuZ3RoKSByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgdHJpbVN0YXJ0KHJ4KSB7CiAgICAgICAgdGhpcy5pbnRybyA9IHRoaXMuaW50cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgIGlmICh0aGlzLmludHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgY29uc3QgdHJpbW1lZCA9IHRoaXMuY29udGVudC5yZXBsYWNlKHJ4LCAiIik7CiAgICAgICAgaWYgKHRyaW1tZWQubGVuZ3RoKSB7CiAgICAgICAgICBpZiAodHJpbW1lZCAhPT0gdGhpcy5jb250ZW50KSB7CiAgICAgICAgICAgIGNvbnN0IG5ld0NodW5rID0gdGhpcy5zcGxpdCh0aGlzLmVuZCAtIHRyaW1tZWQubGVuZ3RoKTsKICAgICAgICAgICAgaWYgKHRoaXMuZWRpdGVkKSB7CiAgICAgICAgICAgICAgbmV3Q2h1bmsuZWRpdCh0cmltbWVkLCB0aGlzLnN0b3JlTmFtZSwgdHJ1ZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5lZGl0KCIiLCB2b2lkIDAsIHRydWUpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuZWRpdCgiIiwgdm9pZCAwLCB0cnVlKTsKICAgICAgICAgIHRoaXMub3V0cm8gPSB0aGlzLm91dHJvLnJlcGxhY2UocngsICIiKTsKICAgICAgICAgIGlmICh0aGlzLm91dHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICB9CiAgICB9OwogICAgZnVuY3Rpb24gZ2V0QnRvYSgpIHsKICAgICAgaWYgKHR5cGVvZiBnbG9iYWxUaGlzICE9PSAidW5kZWZpbmVkIiAmJiB0eXBlb2YgZ2xvYmFsVGhpcy5idG9hID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgcmV0dXJuIChzdHIpID0+IGdsb2JhbFRoaXMuYnRvYSh1bmVzY2FwZShlbmNvZGVVUklDb21wb25lbnQoc3RyKSkpOwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiBCdWZmZXIgPT09ICJmdW5jdGlvbiIpIHsKICAgICAgICByZXR1cm4gKHN0cikgPT4gQnVmZmVyLmZyb20oc3RyLCAidXRmLTgiKS50b1N0cmluZygiYmFzZTY0Iik7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuICgpID0+IHsKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiVW5zdXBwb3J0ZWQgZW52aXJvbm1lbnQ6IGB3aW5kb3cuYnRvYWAgb3IgYEJ1ZmZlcmAgc2hvdWxkIGJlIHN1cHBvcnRlZC4iKTsKICAgICAgICB9OwogICAgICB9CiAgICB9CiAgICB2YXIgYnRvYSA9IC8qIEBfX1BVUkVfXyAqLyBnZXRCdG9hKCk7CiAgICB2YXIgU291cmNlTWFwID0gY2xhc3MgewogICAgICBjb25zdHJ1Y3Rvcihwcm9wZXJ0aWVzKSB7CiAgICAgICAgdGhpcy52ZXJzaW9uID0gMzsKICAgICAgICB0aGlzLmZpbGUgPSBwcm9wZXJ0aWVzLmZpbGU7CiAgICAgICAgdGhpcy5zb3VyY2VzID0gcHJvcGVydGllcy5zb3VyY2VzOwogICAgICAgIHRoaXMuc291cmNlc0NvbnRlbnQgPSBwcm9wZXJ0aWVzLnNvdXJjZXNDb250ZW50OwogICAgICAgIHRoaXMubmFtZXMgPSBwcm9wZXJ0aWVzLm5hbWVzOwogICAgICAgIHRoaXMubWFwcGluZ3MgPSBzb3VyY2VtYXBDb2RlYy5lbmNvZGUocHJvcGVydGllcy5tYXBwaW5ncyk7CiAgICAgICAgaWYgKHR5cGVvZiBwcm9wZXJ0aWVzLnhfZ29vZ2xlX2lnbm9yZUxpc3QgIT09ICJ1bmRlZmluZWQiKSB7CiAgICAgICAgICB0aGlzLnhfZ29vZ2xlX2lnbm9yZUxpc3QgPSBwcm9wZXJ0aWVzLnhfZ29vZ2xlX2lnbm9yZUxpc3Q7CiAgICAgICAgfQogICAgICAgIGlmICh0eXBlb2YgcHJvcGVydGllcy5kZWJ1Z0lkICE9PSAidW5kZWZpbmVkIikgewogICAgICAgICAgdGhpcy5kZWJ1Z0lkID0gcHJvcGVydGllcy5kZWJ1Z0lkOwogICAgICAgIH0KICAgICAgfQogICAgICB0b1N0cmluZygpIHsKICAgICAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodGhpcyk7CiAgICAgIH0KICAgICAgdG9VcmwoKSB7CiAgICAgICAgcmV0dXJuICJkYXRhOmFwcGxpY2F0aW9uL2pzb247Y2hhcnNldD11dGYtODtiYXNlNjQsIiArIGJ0b2EodGhpcy50b1N0cmluZygpKTsKICAgICAgfQogICAgfTsKICAgIGZ1bmN0aW9uIGd1ZXNzSW5kZW50KGNvZGUpIHsKICAgICAgY29uc3QgbGluZXMgPSBjb2RlLnNwbGl0KCJcbiIpOwogICAgICBjb25zdCB0YWJiZWQgPSBsaW5lcy5maWx0ZXIoKGxpbmUpID0+IC9eXHQrLy50ZXN0KGxpbmUpKTsKICAgICAgY29uc3Qgc3BhY2VkID0gbGluZXMuZmlsdGVyKChsaW5lKSA9PiAvXiB7Mix9Ly50ZXN0KGxpbmUpKTsKICAgICAgaWYgKHRhYmJlZC5sZW5ndGggPT09IDAgJiYgc3BhY2VkLmxlbmd0aCA9PT0gMCkgewogICAgICAgIHJldHVybiBudWxsOwogICAgICB9CiAgICAgIGlmICh0YWJiZWQubGVuZ3RoID49IHNwYWNlZC5sZW5ndGgpIHsKICAgICAgICByZXR1cm4gIgkiOwogICAgICB9CiAgICAgIGNvbnN0IG1pbiA9IHNwYWNlZC5yZWR1Y2UoKHByZXZpb3VzLCBjdXJyZW50KSA9PiB7CiAgICAgICAgY29uc3QgbnVtU3BhY2VzID0gL14gKy8uZXhlYyhjdXJyZW50KVswXS5sZW5ndGg7CiAgICAgICAgcmV0dXJuIE1hdGgubWluKG51bVNwYWNlcywgcHJldmlvdXMpOwogICAgICB9LCBJbmZpbml0eSk7CiAgICAgIHJldHVybiBuZXcgQXJyYXkobWluICsgMSkuam9pbigiICIpOwogICAgfQogICAgZnVuY3Rpb24gZ2V0UmVsYXRpdmVQYXRoKGZyb20sIHRvKSB7CiAgICAgIGNvbnN0IGZyb21QYXJ0cyA9IGZyb20uc3BsaXQoL1svXFxdLyk7CiAgICAgIGNvbnN0IHRvUGFydHMgPSB0by5zcGxpdCgvWy9cXF0vKTsKICAgICAgZnJvbVBhcnRzLnBvcCgpOwogICAgICB3aGlsZSAoZnJvbVBhcnRzWzBdID09PSB0b1BhcnRzWzBdKSB7CiAgICAgICAgZnJvbVBhcnRzLnNoaWZ0KCk7CiAgICAgICAgdG9QYXJ0cy5zaGlmdCgpOwogICAgICB9CiAgICAgIGlmIChmcm9tUGFydHMubGVuZ3RoKSB7CiAgICAgICAgbGV0IGkgPSBmcm9tUGFydHMubGVuZ3RoOwogICAgICAgIHdoaWxlIChpLS0pIGZyb21QYXJ0c1tpXSA9ICIuLiI7CiAgICAgIH0KICAgICAgcmV0dXJuIGZyb21QYXJ0cy5jb25jYXQodG9QYXJ0cykuam9pbigiLyIpOwogICAgfQogICAgdmFyIHRvU3RyaW5nID0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZzsKICAgIGZ1bmN0aW9uIGlzT2JqZWN0KHRoaW5nKSB7CiAgICAgIHJldHVybiB0b1N0cmluZy5jYWxsKHRoaW5nKSA9PT0gIltvYmplY3QgT2JqZWN0XSI7CiAgICB9CiAgICBmdW5jdGlvbiBnZXRMb2NhdG9yKHNvdXJjZSkgewogICAgICBjb25zdCBvcmlnaW5hbExpbmVzID0gc291cmNlLnNwbGl0KCJcbiIpOwogICAgICBjb25zdCBsaW5lT2Zmc2V0cyA9IFtdOwogICAgICBmb3IgKGxldCBpID0gMCwgcG9zID0gMDsgaSA8IG9yaWdpbmFsTGluZXMubGVuZ3RoOyBpKyspIHsKICAgICAgICBsaW5lT2Zmc2V0cy5wdXNoKHBvcyk7CiAgICAgICAgcG9zICs9IG9yaWdpbmFsTGluZXNbaV0ubGVuZ3RoICsgMTsKICAgICAgfQogICAgICByZXR1cm4gZnVuY3Rpb24gbG9jYXRlKGluZGV4KSB7CiAgICAgICAgbGV0IGkgPSAwOwogICAgICAgIGxldCBqID0gbGluZU9mZnNldHMubGVuZ3RoOwogICAgICAgIHdoaWxlIChpIDwgaikgewogICAgICAgICAgY29uc3QgbSA9IGkgKyBqID4+IDE7CiAgICAgICAgICBpZiAoaW5kZXggPCBsaW5lT2Zmc2V0c1ttXSkgewogICAgICAgICAgICBqID0gbTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGkgPSBtICsgMTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY29uc3QgbGluZSA9IGkgLSAxOwogICAgICAgIGNvbnN0IGNvbHVtbiA9IGluZGV4IC0gbGluZU9mZnNldHNbbGluZV07CiAgICAgICAgcmV0dXJuIHsgbGluZSwgY29sdW1uIH07CiAgICAgIH07CiAgICB9CiAgICB2YXIgd29yZFJlZ2V4ID0gL1x3LzsKICAgIHZhciBNYXBwaW5ncyA9IGNsYXNzIHsKICAgICAgY29uc3RydWN0b3IoaGlyZXMpIHsKICAgICAgICB0aGlzLmhpcmVzID0gaGlyZXM7CiAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlTGluZSA9IDA7CiAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uID0gMDsKICAgICAgICB0aGlzLnJhdyA9IFtdOwogICAgICAgIHRoaXMucmF3U2VnbWVudHMgPSB0aGlzLnJhd1t0aGlzLmdlbmVyYXRlZENvZGVMaW5lXSA9IFtdOwogICAgICAgIHRoaXMucGVuZGluZyA9IG51bGw7CiAgICAgIH0KICAgICAgYWRkRWRpdChzb3VyY2VJbmRleCwgY29udGVudCwgbG9jLCBuYW1lSW5kZXgpIHsKICAgICAgICBpZiAoY29udGVudC5sZW5ndGgpIHsKICAgICAgICAgIGNvbnN0IGNvbnRlbnRMZW5ndGhNaW51c09uZSA9IGNvbnRlbnQubGVuZ3RoIC0gMTsKICAgICAgICAgIGxldCBjb250ZW50TGluZUVuZCA9IGNvbnRlbnQuaW5kZXhPZigiXG4iLCAwKTsKICAgICAgICAgIGxldCBwcmV2aW91c0NvbnRlbnRMaW5lRW5kID0gLTE7CiAgICAgICAgICB3aGlsZSAoY29udGVudExpbmVFbmQgPj0gMCAmJiBjb250ZW50TGVuZ3RoTWludXNPbmUgPiBjb250ZW50TGluZUVuZCkgewogICAgICAgICAgICBjb25zdCBzZWdtZW50MiA9IFt0aGlzLmdlbmVyYXRlZENvZGVDb2x1bW4sIHNvdXJjZUluZGV4LCBsb2MubGluZSwgbG9jLmNvbHVtbl07CiAgICAgICAgICAgIGlmIChuYW1lSW5kZXggPj0gMCkgewogICAgICAgICAgICAgIHNlZ21lbnQyLnB1c2gobmFtZUluZGV4KTsKICAgICAgICAgICAgfQogICAgICAgICAgICB0aGlzLnJhd1NlZ21lbnRzLnB1c2goc2VnbWVudDIpOwogICAgICAgICAgICB0aGlzLmdlbmVyYXRlZENvZGVMaW5lICs9IDE7CiAgICAgICAgICAgIHRoaXMucmF3W3RoaXMuZ2VuZXJhdGVkQ29kZUxpbmVdID0gdGhpcy5yYXdTZWdtZW50cyA9IFtdOwogICAgICAgICAgICB0aGlzLmdlbmVyYXRlZENvZGVDb2x1bW4gPSAwOwogICAgICAgICAgICBwcmV2aW91c0NvbnRlbnRMaW5lRW5kID0gY29udGVudExpbmVFbmQ7CiAgICAgICAgICAgIGNvbnRlbnRMaW5lRW5kID0gY29udGVudC5pbmRleE9mKCJcbiIsIGNvbnRlbnRMaW5lRW5kICsgMSk7CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBzZWdtZW50ID0gW3RoaXMuZ2VuZXJhdGVkQ29kZUNvbHVtbiwgc291cmNlSW5kZXgsIGxvYy5saW5lLCBsb2MuY29sdW1uXTsKICAgICAgICAgIGlmIChuYW1lSW5kZXggPj0gMCkgewogICAgICAgICAgICBzZWdtZW50LnB1c2gobmFtZUluZGV4KTsKICAgICAgICAgIH0KICAgICAgICAgIHRoaXMucmF3U2VnbWVudHMucHVzaChzZWdtZW50KTsKICAgICAgICAgIHRoaXMuYWR2YW5jZShjb250ZW50LnNsaWNlKHByZXZpb3VzQ29udGVudExpbmVFbmQgKyAxKSk7CiAgICAgICAgfSBlbHNlIGlmICh0aGlzLnBlbmRpbmcpIHsKICAgICAgICAgIHRoaXMucmF3U2VnbWVudHMucHVzaCh0aGlzLnBlbmRpbmcpOwogICAgICAgICAgdGhpcy5hZHZhbmNlKGNvbnRlbnQpOwogICAgICAgIH0KICAgICAgICB0aGlzLnBlbmRpbmcgPSBudWxsOwogICAgICB9CiAgICAgIGFkZFVuZWRpdGVkQ2h1bmsoc291cmNlSW5kZXgsIGNodW5rLCBvcmlnaW5hbCwgbG9jLCBzb3VyY2VtYXBMb2NhdGlvbnMpIHsKICAgICAgICBsZXQgb3JpZ2luYWxDaGFySW5kZXggPSBjaHVuay5zdGFydDsKICAgICAgICBsZXQgZmlyc3QgPSB0cnVlOwogICAgICAgIGxldCBjaGFySW5IaXJlc0JvdW5kYXJ5ID0gZmFsc2U7CiAgICAgICAgd2hpbGUgKG9yaWdpbmFsQ2hhckluZGV4IDwgY2h1bmsuZW5kKSB7CiAgICAgICAgICBpZiAob3JpZ2luYWxbb3JpZ2luYWxDaGFySW5kZXhdID09PSAiXG4iKSB7CiAgICAgICAgICAgIGxvYy5saW5lICs9IDE7CiAgICAgICAgICAgIGxvYy5jb2x1bW4gPSAwOwogICAgICAgICAgICB0aGlzLmdlbmVyYXRlZENvZGVMaW5lICs9IDE7CiAgICAgICAgICAgIHRoaXMucmF3W3RoaXMuZ2VuZXJhdGVkQ29kZUxpbmVdID0gdGhpcy5yYXdTZWdtZW50cyA9IFtdOwogICAgICAgICAgICB0aGlzLmdlbmVyYXRlZENvZGVDb2x1bW4gPSAwOwogICAgICAgICAgICBmaXJzdCA9IHRydWU7CiAgICAgICAgICAgIGNoYXJJbkhpcmVzQm91bmRhcnkgPSBmYWxzZTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGlmICh0aGlzLmhpcmVzIHx8IGZpcnN0IHx8IHNvdXJjZW1hcExvY2F0aW9ucy5oYXMob3JpZ2luYWxDaGFySW5kZXgpKSB7CiAgICAgICAgICAgICAgY29uc3Qgc2VnbWVudCA9IFt0aGlzLmdlbmVyYXRlZENvZGVDb2x1bW4sIHNvdXJjZUluZGV4LCBsb2MubGluZSwgbG9jLmNvbHVtbl07CiAgICAgICAgICAgICAgaWYgKHRoaXMuaGlyZXMgPT09ICJib3VuZGFyeSIpIHsKICAgICAgICAgICAgICAgIGlmICh3b3JkUmVnZXgudGVzdChvcmlnaW5hbFtvcmlnaW5hbENoYXJJbmRleF0pKSB7CiAgICAgICAgICAgICAgICAgIGlmICghY2hhckluSGlyZXNCb3VuZGFyeSkgewogICAgICAgICAgICAgICAgICAgIHRoaXMucmF3U2VnbWVudHMucHVzaChzZWdtZW50KTsKICAgICAgICAgICAgICAgICAgICBjaGFySW5IaXJlc0JvdW5kYXJ5ID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgdGhpcy5yYXdTZWdtZW50cy5wdXNoKHNlZ21lbnQpOwogICAgICAgICAgICAgICAgICBjaGFySW5IaXJlc0JvdW5kYXJ5ID0gZmFsc2U7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHRoaXMucmF3U2VnbWVudHMucHVzaChzZWdtZW50KTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbG9jLmNvbHVtbiArPSAxOwogICAgICAgICAgICB0aGlzLmdlbmVyYXRlZENvZGVDb2x1bW4gKz0gMTsKICAgICAgICAgICAgZmlyc3QgPSBmYWxzZTsKICAgICAgICAgIH0KICAgICAgICAgIG9yaWdpbmFsQ2hhckluZGV4ICs9IDE7CiAgICAgICAgfQogICAgICAgIHRoaXMucGVuZGluZyA9IG51bGw7CiAgICAgIH0KICAgICAgYWR2YW5jZShzdHIpIHsKICAgICAgICBpZiAoIXN0cikgcmV0dXJuOwogICAgICAgIGNvbnN0IGxpbmVzID0gc3RyLnNwbGl0KCJcbiIpOwogICAgICAgIGlmIChsaW5lcy5sZW5ndGggPiAxKSB7CiAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxpbmVzLmxlbmd0aCAtIDE7IGkrKykgewogICAgICAgICAgICB0aGlzLmdlbmVyYXRlZENvZGVMaW5lKys7CiAgICAgICAgICAgIHRoaXMucmF3W3RoaXMuZ2VuZXJhdGVkQ29kZUxpbmVdID0gdGhpcy5yYXdTZWdtZW50cyA9IFtdOwogICAgICAgICAgfQogICAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uID0gMDsKICAgICAgICB9CiAgICAgICAgdGhpcy5nZW5lcmF0ZWRDb2RlQ29sdW1uICs9IGxpbmVzW2xpbmVzLmxlbmd0aCAtIDFdLmxlbmd0aDsKICAgICAgfQogICAgfTsKICAgIHZhciBuID0gIlxuIjsKICAgIHZhciB3YXJuZWQgPSB7CiAgICAgIGluc2VydExlZnQ6IGZhbHNlLAogICAgICBpbnNlcnRSaWdodDogZmFsc2UsCiAgICAgIHN0b3JlTmFtZTogZmFsc2UKICAgIH07CiAgICB2YXIgTWFnaWNTdHJpbmcgPSBjbGFzcyBfTWFnaWNTdHJpbmcgewogICAgICBjb25zdHJ1Y3RvcihzdHJpbmcsIG9wdGlvbnMgPSB7fSkgewogICAgICAgIGNvbnN0IGNodW5rID0gbmV3IENodW5rKDAsIHN0cmluZy5sZW5ndGgsIHN0cmluZyk7CiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnRpZXModGhpcywgewogICAgICAgICAgb3JpZ2luYWw6IHsgd3JpdGFibGU6IHRydWUsIHZhbHVlOiBzdHJpbmcgfSwKICAgICAgICAgIG91dHJvOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogIiIgfSwKICAgICAgICAgIGludHJvOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogIiIgfSwKICAgICAgICAgIGZpcnN0Q2h1bms6IHsgd3JpdGFibGU6IHRydWUsIHZhbHVlOiBjaHVuayB9LAogICAgICAgICAgbGFzdENodW5rOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogY2h1bmsgfSwKICAgICAgICAgIGxhc3RTZWFyY2hlZENodW5rOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogY2h1bmsgfSwKICAgICAgICAgIGJ5U3RhcnQ6IHsgd3JpdGFibGU6IHRydWUsIHZhbHVlOiB7fSB9LAogICAgICAgICAgYnlFbmQ6IHsgd3JpdGFibGU6IHRydWUsIHZhbHVlOiB7fSB9LAogICAgICAgICAgZmlsZW5hbWU6IHsgd3JpdGFibGU6IHRydWUsIHZhbHVlOiBvcHRpb25zLmZpbGVuYW1lIH0sCiAgICAgICAgICBpbmRlbnRFeGNsdXNpb25SYW5nZXM6IHsgd3JpdGFibGU6IHRydWUsIHZhbHVlOiBvcHRpb25zLmluZGVudEV4Y2x1c2lvblJhbmdlcyB9LAogICAgICAgICAgc291cmNlbWFwTG9jYXRpb25zOiB7IHdyaXRhYmxlOiB0cnVlLCB2YWx1ZTogbmV3IEJpdFNldCgpIH0sCiAgICAgICAgICBzdG9yZWROYW1lczogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6IHt9IH0sCiAgICAgICAgICBpbmRlbnRTdHI6IHsgd3JpdGFibGU6IHRydWUsIHZhbHVlOiB2b2lkIDAgfSwKICAgICAgICAgIGlnbm9yZUxpc3Q6IHsgd3JpdGFibGU6IHRydWUsIHZhbHVlOiBvcHRpb25zLmlnbm9yZUxpc3QgfSwKICAgICAgICAgIG9mZnNldDogeyB3cml0YWJsZTogdHJ1ZSwgdmFsdWU6IG9wdGlvbnMub2Zmc2V0IHx8IDAgfQogICAgICAgIH0pOwogICAgICAgIHRoaXMuYnlTdGFydFswXSA9IGNodW5rOwogICAgICAgIHRoaXMuYnlFbmRbc3RyaW5nLmxlbmd0aF0gPSBjaHVuazsKICAgICAgfQogICAgICBhZGRTb3VyY2VtYXBMb2NhdGlvbihjaGFyKSB7CiAgICAgICAgdGhpcy5zb3VyY2VtYXBMb2NhdGlvbnMuYWRkKGNoYXIpOwogICAgICB9CiAgICAgIGFwcGVuZChjb250ZW50KSB7CiAgICAgICAgaWYgKHR5cGVvZiBjb250ZW50ICE9PSAic3RyaW5nIikgdGhyb3cgbmV3IFR5cGVFcnJvcigib3V0cm8gY29udGVudCBtdXN0IGJlIGEgc3RyaW5nIik7CiAgICAgICAgdGhpcy5vdXRybyArPSBjb250ZW50OwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGFwcGVuZExlZnQoaW5kZXgsIGNvbnRlbnQpIHsKICAgICAgICBpbmRleCA9IGluZGV4ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaWYgKHR5cGVvZiBjb250ZW50ICE9PSAic3RyaW5nIikgdGhyb3cgbmV3IFR5cGVFcnJvcigiaW5zZXJ0ZWQgY29udGVudCBtdXN0IGJlIGEgc3RyaW5nIik7CiAgICAgICAgdGhpcy5fc3BsaXQoaW5kZXgpOwogICAgICAgIGNvbnN0IGNodW5rID0gdGhpcy5ieUVuZFtpbmRleF07CiAgICAgICAgaWYgKGNodW5rKSB7CiAgICAgICAgICBjaHVuay5hcHBlbmRMZWZ0KGNvbnRlbnQpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLmludHJvICs9IGNvbnRlbnQ7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGFwcGVuZFJpZ2h0KGluZGV4LCBjb250ZW50KSB7CiAgICAgICAgaW5kZXggPSBpbmRleCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmICh0eXBlb2YgY29udGVudCAhPT0gInN0cmluZyIpIHRocm93IG5ldyBUeXBlRXJyb3IoImluc2VydGVkIGNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIHRoaXMuX3NwbGl0KGluZGV4KTsKICAgICAgICBjb25zdCBjaHVuayA9IHRoaXMuYnlTdGFydFtpbmRleF07CiAgICAgICAgaWYgKGNodW5rKSB7CiAgICAgICAgICBjaHVuay5hcHBlbmRSaWdodChjb250ZW50KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5vdXRybyArPSBjb250ZW50OwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBjbG9uZSgpIHsKICAgICAgICBjb25zdCBjbG9uZWQgPSBuZXcgX01hZ2ljU3RyaW5nKHRoaXMub3JpZ2luYWwsIHsgZmlsZW5hbWU6IHRoaXMuZmlsZW5hbWUsIG9mZnNldDogdGhpcy5vZmZzZXQgfSk7CiAgICAgICAgbGV0IG9yaWdpbmFsQ2h1bmsgPSB0aGlzLmZpcnN0Q2h1bms7CiAgICAgICAgbGV0IGNsb25lZENodW5rID0gY2xvbmVkLmZpcnN0Q2h1bmsgPSBjbG9uZWQubGFzdFNlYXJjaGVkQ2h1bmsgPSBvcmlnaW5hbENodW5rLmNsb25lKCk7CiAgICAgICAgd2hpbGUgKG9yaWdpbmFsQ2h1bmspIHsKICAgICAgICAgIGNsb25lZC5ieVN0YXJ0W2Nsb25lZENodW5rLnN0YXJ0XSA9IGNsb25lZENodW5rOwogICAgICAgICAgY2xvbmVkLmJ5RW5kW2Nsb25lZENodW5rLmVuZF0gPSBjbG9uZWRDaHVuazsKICAgICAgICAgIGNvbnN0IG5leHRPcmlnaW5hbENodW5rID0gb3JpZ2luYWxDaHVuay5uZXh0OwogICAgICAgICAgY29uc3QgbmV4dENsb25lZENodW5rID0gbmV4dE9yaWdpbmFsQ2h1bmsgJiYgbmV4dE9yaWdpbmFsQ2h1bmsuY2xvbmUoKTsKICAgICAgICAgIGlmIChuZXh0Q2xvbmVkQ2h1bmspIHsKICAgICAgICAgICAgY2xvbmVkQ2h1bmsubmV4dCA9IG5leHRDbG9uZWRDaHVuazsKICAgICAgICAgICAgbmV4dENsb25lZENodW5rLnByZXZpb3VzID0gY2xvbmVkQ2h1bms7CiAgICAgICAgICAgIGNsb25lZENodW5rID0gbmV4dENsb25lZENodW5rOwogICAgICAgICAgfQogICAgICAgICAgb3JpZ2luYWxDaHVuayA9IG5leHRPcmlnaW5hbENodW5rOwogICAgICAgIH0KICAgICAgICBjbG9uZWQubGFzdENodW5rID0gY2xvbmVkQ2h1bms7CiAgICAgICAgaWYgKHRoaXMuaW5kZW50RXhjbHVzaW9uUmFuZ2VzKSB7CiAgICAgICAgICBjbG9uZWQuaW5kZW50RXhjbHVzaW9uUmFuZ2VzID0gdGhpcy5pbmRlbnRFeGNsdXNpb25SYW5nZXMuc2xpY2UoKTsKICAgICAgICB9CiAgICAgICAgY2xvbmVkLnNvdXJjZW1hcExvY2F0aW9ucyA9IG5ldyBCaXRTZXQodGhpcy5zb3VyY2VtYXBMb2NhdGlvbnMpOwogICAgICAgIGNsb25lZC5pbnRybyA9IHRoaXMuaW50cm87CiAgICAgICAgY2xvbmVkLm91dHJvID0gdGhpcy5vdXRybzsKICAgICAgICByZXR1cm4gY2xvbmVkOwogICAgICB9CiAgICAgIGdlbmVyYXRlRGVjb2RlZE1hcChvcHRpb25zKSB7CiAgICAgICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307CiAgICAgICAgY29uc3Qgc291cmNlSW5kZXggPSAwOwogICAgICAgIGNvbnN0IG5hbWVzID0gT2JqZWN0LmtleXModGhpcy5zdG9yZWROYW1lcyk7CiAgICAgICAgY29uc3QgbWFwcGluZ3MgPSBuZXcgTWFwcGluZ3Mob3B0aW9ucy5oaXJlcyk7CiAgICAgICAgY29uc3QgbG9jYXRlID0gZ2V0TG9jYXRvcih0aGlzLm9yaWdpbmFsKTsKICAgICAgICBpZiAodGhpcy5pbnRybykgewogICAgICAgICAgbWFwcGluZ3MuYWR2YW5jZSh0aGlzLmludHJvKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5maXJzdENodW5rLmVhY2hOZXh0KChjaHVuaykgPT4gewogICAgICAgICAgY29uc3QgbG9jID0gbG9jYXRlKGNodW5rLnN0YXJ0KTsKICAgICAgICAgIGlmIChjaHVuay5pbnRyby5sZW5ndGgpIG1hcHBpbmdzLmFkdmFuY2UoY2h1bmsuaW50cm8pOwogICAgICAgICAgaWYgKGNodW5rLmVkaXRlZCkgewogICAgICAgICAgICBtYXBwaW5ncy5hZGRFZGl0KAogICAgICAgICAgICAgIHNvdXJjZUluZGV4LAogICAgICAgICAgICAgIGNodW5rLmNvbnRlbnQsCiAgICAgICAgICAgICAgbG9jLAogICAgICAgICAgICAgIGNodW5rLnN0b3JlTmFtZSA/IG5hbWVzLmluZGV4T2YoY2h1bmsub3JpZ2luYWwpIDogLTEKICAgICAgICAgICAgKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIG1hcHBpbmdzLmFkZFVuZWRpdGVkQ2h1bmsoc291cmNlSW5kZXgsIGNodW5rLCB0aGlzLm9yaWdpbmFsLCBsb2MsIHRoaXMuc291cmNlbWFwTG9jYXRpb25zKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChjaHVuay5vdXRyby5sZW5ndGgpIG1hcHBpbmdzLmFkdmFuY2UoY2h1bmsub3V0cm8pOwogICAgICAgIH0pOwogICAgICAgIHJldHVybiB7CiAgICAgICAgICBmaWxlOiBvcHRpb25zLmZpbGUgPyBvcHRpb25zLmZpbGUuc3BsaXQoL1svXFxdLykucG9wKCkgOiB2b2lkIDAsCiAgICAgICAgICBzb3VyY2VzOiBbCiAgICAgICAgICAgIG9wdGlvbnMuc291cmNlID8gZ2V0UmVsYXRpdmVQYXRoKG9wdGlvbnMuZmlsZSB8fCAiIiwgb3B0aW9ucy5zb3VyY2UpIDogb3B0aW9ucy5maWxlIHx8ICIiCiAgICAgICAgICBdLAogICAgICAgICAgc291cmNlc0NvbnRlbnQ6IG9wdGlvbnMuaW5jbHVkZUNvbnRlbnQgPyBbdGhpcy5vcmlnaW5hbF0gOiB2b2lkIDAsCiAgICAgICAgICBuYW1lcywKICAgICAgICAgIG1hcHBpbmdzOiBtYXBwaW5ncy5yYXcsCiAgICAgICAgICB4X2dvb2dsZV9pZ25vcmVMaXN0OiB0aGlzLmlnbm9yZUxpc3QgPyBbc291cmNlSW5kZXhdIDogdm9pZCAwCiAgICAgICAgfTsKICAgICAgfQogICAgICBnZW5lcmF0ZU1hcChvcHRpb25zKSB7CiAgICAgICAgcmV0dXJuIG5ldyBTb3VyY2VNYXAodGhpcy5nZW5lcmF0ZURlY29kZWRNYXAob3B0aW9ucykpOwogICAgICB9CiAgICAgIF9lbnN1cmVpbmRlbnRTdHIoKSB7CiAgICAgICAgaWYgKHRoaXMuaW5kZW50U3RyID09PSB2b2lkIDApIHsKICAgICAgICAgIHRoaXMuaW5kZW50U3RyID0gZ3Vlc3NJbmRlbnQodGhpcy5vcmlnaW5hbCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIF9nZXRSYXdJbmRlbnRTdHJpbmcoKSB7CiAgICAgICAgdGhpcy5fZW5zdXJlaW5kZW50U3RyKCk7CiAgICAgICAgcmV0dXJuIHRoaXMuaW5kZW50U3RyOwogICAgICB9CiAgICAgIGdldEluZGVudFN0cmluZygpIHsKICAgICAgICB0aGlzLl9lbnN1cmVpbmRlbnRTdHIoKTsKICAgICAgICByZXR1cm4gdGhpcy5pbmRlbnRTdHIgPT09IG51bGwgPyAiCSIgOiB0aGlzLmluZGVudFN0cjsKICAgICAgfQogICAgICBpbmRlbnQoaW5kZW50U3RyLCBvcHRpb25zKSB7CiAgICAgICAgY29uc3QgcGF0dGVybiA9IC9eW15cclxuXS9nbTsKICAgICAgICBpZiAoaXNPYmplY3QoaW5kZW50U3RyKSkgewogICAgICAgICAgb3B0aW9ucyA9IGluZGVudFN0cjsKICAgICAgICAgIGluZGVudFN0ciA9IHZvaWQgMDsKICAgICAgICB9CiAgICAgICAgaWYgKGluZGVudFN0ciA9PT0gdm9pZCAwKSB7CiAgICAgICAgICB0aGlzLl9lbnN1cmVpbmRlbnRTdHIoKTsKICAgICAgICAgIGluZGVudFN0ciA9IHRoaXMuaW5kZW50U3RyIHx8ICIJIjsKICAgICAgICB9CiAgICAgICAgaWYgKGluZGVudFN0ciA9PT0gIiIpIHJldHVybiB0aGlzOwogICAgICAgIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9OwogICAgICAgIGNvbnN0IGlzRXhjbHVkZWQgPSB7fTsKICAgICAgICBpZiAob3B0aW9ucy5leGNsdWRlKSB7CiAgICAgICAgICBjb25zdCBleGNsdXNpb25zID0gdHlwZW9mIG9wdGlvbnMuZXhjbHVkZVswXSA9PT0gIm51bWJlciIgPyBbb3B0aW9ucy5leGNsdWRlXSA6IG9wdGlvbnMuZXhjbHVkZTsKICAgICAgICAgIGV4Y2x1c2lvbnMuZm9yRWFjaCgoZXhjbHVzaW9uKSA9PiB7CiAgICAgICAgICAgIGZvciAobGV0IGkgPSBleGNsdXNpb25bMF07IGkgPCBleGNsdXNpb25bMV07IGkgKz0gMSkgewogICAgICAgICAgICAgIGlzRXhjbHVkZWRbaV0gPSB0cnVlOwogICAgICAgICAgICB9CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgbGV0IHNob3VsZEluZGVudE5leHRDaGFyYWN0ZXIgPSBvcHRpb25zLmluZGVudFN0YXJ0ICE9PSBmYWxzZTsKICAgICAgICBjb25zdCByZXBsYWNlciA9IChtYXRjaCkgPT4gewogICAgICAgICAgaWYgKHNob3VsZEluZGVudE5leHRDaGFyYWN0ZXIpIHJldHVybiBgJHtpbmRlbnRTdHJ9JHttYXRjaH1gOwogICAgICAgICAgc2hvdWxkSW5kZW50TmV4dENoYXJhY3RlciA9IHRydWU7CiAgICAgICAgICByZXR1cm4gbWF0Y2g7CiAgICAgICAgfTsKICAgICAgICB0aGlzLmludHJvID0gdGhpcy5pbnRyby5yZXBsYWNlKHBhdHRlcm4sIHJlcGxhY2VyKTsKICAgICAgICBsZXQgY2hhckluZGV4ID0gMDsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmZpcnN0Q2h1bms7CiAgICAgICAgd2hpbGUgKGNodW5rKSB7CiAgICAgICAgICBjb25zdCBlbmQgPSBjaHVuay5lbmQ7CiAgICAgICAgICBpZiAoY2h1bmsuZWRpdGVkKSB7CiAgICAgICAgICAgIGlmICghaXNFeGNsdWRlZFtjaGFySW5kZXhdKSB7CiAgICAgICAgICAgICAgY2h1bmsuY29udGVudCA9IGNodW5rLmNvbnRlbnQucmVwbGFjZShwYXR0ZXJuLCByZXBsYWNlcik7CiAgICAgICAgICAgICAgaWYgKGNodW5rLmNvbnRlbnQubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICBzaG91bGRJbmRlbnROZXh0Q2hhcmFjdGVyID0gY2h1bmsuY29udGVudFtjaHVuay5jb250ZW50Lmxlbmd0aCAtIDFdID09PSAiXG4iOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgY2hhckluZGV4ID0gY2h1bmsuc3RhcnQ7CiAgICAgICAgICAgIHdoaWxlIChjaGFySW5kZXggPCBlbmQpIHsKICAgICAgICAgICAgICBpZiAoIWlzRXhjbHVkZWRbY2hhckluZGV4XSkgewogICAgICAgICAgICAgICAgY29uc3QgY2hhciA9IHRoaXMub3JpZ2luYWxbY2hhckluZGV4XTsKICAgICAgICAgICAgICAgIGlmIChjaGFyID09PSAiXG4iKSB7CiAgICAgICAgICAgICAgICAgIHNob3VsZEluZGVudE5leHRDaGFyYWN0ZXIgPSB0cnVlOwogICAgICAgICAgICAgICAgfSBlbHNlIGlmIChjaGFyICE9PSAiXHIiICYmIHNob3VsZEluZGVudE5leHRDaGFyYWN0ZXIpIHsKICAgICAgICAgICAgICAgICAgc2hvdWxkSW5kZW50TmV4dENoYXJhY3RlciA9IGZhbHNlOwogICAgICAgICAgICAgICAgICBpZiAoY2hhckluZGV4ID09PSBjaHVuay5zdGFydCkgewogICAgICAgICAgICAgICAgICAgIGNodW5rLnByZXBlbmRSaWdodChpbmRlbnRTdHIpOwogICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIHRoaXMuX3NwbGl0Q2h1bmsoY2h1bmssIGNoYXJJbmRleCk7CiAgICAgICAgICAgICAgICAgICAgY2h1bmsgPSBjaHVuay5uZXh0OwogICAgICAgICAgICAgICAgICAgIGNodW5rLnByZXBlbmRSaWdodChpbmRlbnRTdHIpOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGNoYXJJbmRleCArPSAxOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBjaGFySW5kZXggPSBjaHVuay5lbmQ7CiAgICAgICAgICBjaHVuayA9IGNodW5rLm5leHQ7CiAgICAgICAgfQogICAgICAgIHRoaXMub3V0cm8gPSB0aGlzLm91dHJvLnJlcGxhY2UocGF0dGVybiwgcmVwbGFjZXIpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIGluc2VydCgpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgICAibWFnaWNTdHJpbmcuaW5zZXJ0KC4uLikgaXMgZGVwcmVjYXRlZC4gVXNlIHByZXBlbmRSaWdodCguLi4pIG9yIGFwcGVuZExlZnQoLi4uKSIKICAgICAgICApOwogICAgICB9CiAgICAgIGluc2VydExlZnQoaW5kZXgsIGNvbnRlbnQpIHsKICAgICAgICBpZiAoIXdhcm5lZC5pbnNlcnRMZWZ0KSB7CiAgICAgICAgICBjb25zb2xlLndhcm4oCiAgICAgICAgICAgICJtYWdpY1N0cmluZy5pbnNlcnRMZWZ0KC4uLikgaXMgZGVwcmVjYXRlZC4gVXNlIG1hZ2ljU3RyaW5nLmFwcGVuZExlZnQoLi4uKSBpbnN0ZWFkIgogICAgICAgICAgKTsKICAgICAgICAgIHdhcm5lZC5pbnNlcnRMZWZ0ID0gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRoaXMuYXBwZW5kTGVmdChpbmRleCwgY29udGVudCk7CiAgICAgIH0KICAgICAgaW5zZXJ0UmlnaHQoaW5kZXgsIGNvbnRlbnQpIHsKICAgICAgICBpZiAoIXdhcm5lZC5pbnNlcnRSaWdodCkgewogICAgICAgICAgY29uc29sZS53YXJuKAogICAgICAgICAgICAibWFnaWNTdHJpbmcuaW5zZXJ0UmlnaHQoLi4uKSBpcyBkZXByZWNhdGVkLiBVc2UgbWFnaWNTdHJpbmcucHJlcGVuZFJpZ2h0KC4uLikgaW5zdGVhZCIKICAgICAgICAgICk7CiAgICAgICAgICB3YXJuZWQuaW5zZXJ0UmlnaHQgPSB0cnVlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5wcmVwZW5kUmlnaHQoaW5kZXgsIGNvbnRlbnQpOwogICAgICB9CiAgICAgIG1vdmUoc3RhcnQsIGVuZCwgaW5kZXgpIHsKICAgICAgICBzdGFydCA9IHN0YXJ0ICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgZW5kID0gZW5kICsgdGhpcy5vZmZzZXQ7CiAgICAgICAgaW5kZXggPSBpbmRleCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmIChpbmRleCA+PSBzdGFydCAmJiBpbmRleCA8PSBlbmQpIHRocm93IG5ldyBFcnJvcigiQ2Fubm90IG1vdmUgYSBzZWxlY3Rpb24gaW5zaWRlIGl0c2VsZiIpOwogICAgICAgIHRoaXMuX3NwbGl0KHN0YXJ0KTsKICAgICAgICB0aGlzLl9zcGxpdChlbmQpOwogICAgICAgIHRoaXMuX3NwbGl0KGluZGV4KTsKICAgICAgICBjb25zdCBmaXJzdCA9IHRoaXMuYnlTdGFydFtzdGFydF07CiAgICAgICAgY29uc3QgbGFzdCA9IHRoaXMuYnlFbmRbZW5kXTsKICAgICAgICBjb25zdCBvbGRMZWZ0ID0gZmlyc3QucHJldmlvdXM7CiAgICAgICAgY29uc3Qgb2xkUmlnaHQgPSBsYXN0Lm5leHQ7CiAgICAgICAgY29uc3QgbmV3UmlnaHQgPSB0aGlzLmJ5U3RhcnRbaW5kZXhdOwogICAgICAgIGlmICghbmV3UmlnaHQgJiYgbGFzdCA9PT0gdGhpcy5sYXN0Q2h1bmspIHJldHVybiB0aGlzOwogICAgICAgIGNvbnN0IG5ld0xlZnQgPSBuZXdSaWdodCA/IG5ld1JpZ2h0LnByZXZpb3VzIDogdGhpcy5sYXN0Q2h1bms7CiAgICAgICAgaWYgKG9sZExlZnQpIG9sZExlZnQubmV4dCA9IG9sZFJpZ2h0OwogICAgICAgIGlmIChvbGRSaWdodCkgb2xkUmlnaHQucHJldmlvdXMgPSBvbGRMZWZ0OwogICAgICAgIGlmIChuZXdMZWZ0KSBuZXdMZWZ0Lm5leHQgPSBmaXJzdDsKICAgICAgICBpZiAobmV3UmlnaHQpIG5ld1JpZ2h0LnByZXZpb3VzID0gbGFzdDsKICAgICAgICBpZiAoIWZpcnN0LnByZXZpb3VzKSB0aGlzLmZpcnN0Q2h1bmsgPSBsYXN0Lm5leHQ7CiAgICAgICAgaWYgKCFsYXN0Lm5leHQpIHsKICAgICAgICAgIHRoaXMubGFzdENodW5rID0gZmlyc3QucHJldmlvdXM7CiAgICAgICAgICB0aGlzLmxhc3RDaHVuay5uZXh0ID0gbnVsbDsKICAgICAgICB9CiAgICAgICAgZmlyc3QucHJldmlvdXMgPSBuZXdMZWZ0OwogICAgICAgIGxhc3QubmV4dCA9IG5ld1JpZ2h0IHx8IG51bGw7CiAgICAgICAgaWYgKCFuZXdMZWZ0KSB0aGlzLmZpcnN0Q2h1bmsgPSBmaXJzdDsKICAgICAgICBpZiAoIW5ld1JpZ2h0KSB0aGlzLmxhc3RDaHVuayA9IGxhc3Q7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgb3ZlcndyaXRlKHN0YXJ0LCBlbmQsIGNvbnRlbnQsIG9wdGlvbnMpIHsKICAgICAgICBvcHRpb25zID0gb3B0aW9ucyB8fCB7fTsKICAgICAgICByZXR1cm4gdGhpcy51cGRhdGUoc3RhcnQsIGVuZCwgY29udGVudCwgeyAuLi5vcHRpb25zLCBvdmVyd3JpdGU6ICFvcHRpb25zLmNvbnRlbnRPbmx5IH0pOwogICAgICB9CiAgICAgIHVwZGF0ZShzdGFydCwgZW5kLCBjb250ZW50LCBvcHRpb25zKSB7CiAgICAgICAgc3RhcnQgPSBzdGFydCArIHRoaXMub2Zmc2V0OwogICAgICAgIGVuZCA9IGVuZCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmICh0eXBlb2YgY29udGVudCAhPT0gInN0cmluZyIpIHRocm93IG5ldyBUeXBlRXJyb3IoInJlcGxhY2VtZW50IGNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIGlmICh0aGlzLm9yaWdpbmFsLmxlbmd0aCAhPT0gMCkgewogICAgICAgICAgd2hpbGUgKHN0YXJ0IDwgMCkgc3RhcnQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgICB3aGlsZSAoZW5kIDwgMCkgZW5kICs9IHRoaXMub3JpZ2luYWwubGVuZ3RoOwogICAgICAgIH0KICAgICAgICBpZiAoZW5kID4gdGhpcy5vcmlnaW5hbC5sZW5ndGgpIHRocm93IG5ldyBFcnJvcigiZW5kIGlzIG91dCBvZiBib3VuZHMiKTsKICAgICAgICBpZiAoc3RhcnQgPT09IGVuZCkKICAgICAgICAgIHRocm93IG5ldyBFcnJvcigKICAgICAgICAgICAgIkNhbm5vdCBvdmVyd3JpdGUgYSB6ZXJvLWxlbmd0aCByYW5nZSBcdTIwMTMgdXNlIGFwcGVuZExlZnQgb3IgcHJlcGVuZFJpZ2h0IGluc3RlYWQiCiAgICAgICAgICApOwogICAgICAgIHRoaXMuX3NwbGl0KHN0YXJ0KTsKICAgICAgICB0aGlzLl9zcGxpdChlbmQpOwogICAgICAgIGlmIChvcHRpb25zID09PSB0cnVlKSB7CiAgICAgICAgICBpZiAoIXdhcm5lZC5zdG9yZU5hbWUpIHsKICAgICAgICAgICAgY29uc29sZS53YXJuKAogICAgICAgICAgICAgICJUaGUgZmluYWwgYXJndW1lbnQgdG8gbWFnaWNTdHJpbmcub3ZlcndyaXRlKC4uLikgc2hvdWxkIGJlIGFuIG9wdGlvbnMgb2JqZWN0LiBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3JpY2gtaGFycmlzL21hZ2ljLXN0cmluZyIKICAgICAgICAgICAgKTsKICAgICAgICAgICAgd2FybmVkLnN0b3JlTmFtZSA9IHRydWU7CiAgICAgICAgICB9CiAgICAgICAgICBvcHRpb25zID0geyBzdG9yZU5hbWU6IHRydWUgfTsKICAgICAgICB9CiAgICAgICAgY29uc3Qgc3RvcmVOYW1lID0gb3B0aW9ucyAhPT0gdm9pZCAwID8gb3B0aW9ucy5zdG9yZU5hbWUgOiBmYWxzZTsKICAgICAgICBjb25zdCBvdmVyd3JpdGUgPSBvcHRpb25zICE9PSB2b2lkIDAgPyBvcHRpb25zLm92ZXJ3cml0ZSA6IGZhbHNlOwogICAgICAgIGlmIChzdG9yZU5hbWUpIHsKICAgICAgICAgIGNvbnN0IG9yaWdpbmFsID0gdGhpcy5vcmlnaW5hbC5zbGljZShzdGFydCwgZW5kKTsKICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLnN0b3JlZE5hbWVzLCBvcmlnaW5hbCwgewogICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSwKICAgICAgICAgICAgdmFsdWU6IHRydWUsCiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBjb25zdCBmaXJzdCA9IHRoaXMuYnlTdGFydFtzdGFydF07CiAgICAgICAgY29uc3QgbGFzdCA9IHRoaXMuYnlFbmRbZW5kXTsKICAgICAgICBpZiAoZmlyc3QpIHsKICAgICAgICAgIGxldCBjaHVuayA9IGZpcnN0OwogICAgICAgICAgd2hpbGUgKGNodW5rICE9PSBsYXN0KSB7CiAgICAgICAgICAgIGlmIChjaHVuay5uZXh0ICE9PSB0aGlzLmJ5U3RhcnRbY2h1bmsuZW5kXSkgewogICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiQ2Fubm90IG92ZXJ3cml0ZSBhY3Jvc3MgYSBzcGxpdCBwb2ludCIpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNodW5rID0gY2h1bmsubmV4dDsKICAgICAgICAgICAgY2h1bmsuZWRpdCgiIiwgZmFsc2UpOwogICAgICAgICAgfQogICAgICAgICAgZmlyc3QuZWRpdChjb250ZW50LCBzdG9yZU5hbWUsICFvdmVyd3JpdGUpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb25zdCBuZXdDaHVuayA9IG5ldyBDaHVuayhzdGFydCwgZW5kLCAiIikuZWRpdChjb250ZW50LCBzdG9yZU5hbWUpOwogICAgICAgICAgbGFzdC5uZXh0ID0gbmV3Q2h1bms7CiAgICAgICAgICBuZXdDaHVuay5wcmV2aW91cyA9IGxhc3Q7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHByZXBlbmQoY29udGVudCkgewogICAgICAgIGlmICh0eXBlb2YgY29udGVudCAhPT0gInN0cmluZyIpIHRocm93IG5ldyBUeXBlRXJyb3IoIm91dHJvIGNvbnRlbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgIHRoaXMuaW50cm8gPSBjb250ZW50ICsgdGhpcy5pbnRybzsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBwcmVwZW5kTGVmdChpbmRleCwgY29udGVudCkgewogICAgICAgIGluZGV4ID0gaW5kZXggKyB0aGlzLm9mZnNldDsKICAgICAgICBpZiAodHlwZW9mIGNvbnRlbnQgIT09ICJzdHJpbmciKSB0aHJvdyBuZXcgVHlwZUVycm9yKCJpbnNlcnRlZCBjb250ZW50IG11c3QgYmUgYSBzdHJpbmciKTsKICAgICAgICB0aGlzLl9zcGxpdChpbmRleCk7CiAgICAgICAgY29uc3QgY2h1bmsgPSB0aGlzLmJ5RW5kW2luZGV4XTsKICAgICAgICBpZiAoY2h1bmspIHsKICAgICAgICAgIGNodW5rLnByZXBlbmRMZWZ0KGNvbnRlbnQpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLmludHJvID0gY29udGVudCArIHRoaXMuaW50cm87CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHByZXBlbmRSaWdodChpbmRleCwgY29udGVudCkgewogICAgICAgIGluZGV4ID0gaW5kZXggKyB0aGlzLm9mZnNldDsKICAgICAgICBpZiAodHlwZW9mIGNvbnRlbnQgIT09ICJzdHJpbmciKSB0aHJvdyBuZXcgVHlwZUVycm9yKCJpbnNlcnRlZCBjb250ZW50IG11c3QgYmUgYSBzdHJpbmciKTsKICAgICAgICB0aGlzLl9zcGxpdChpbmRleCk7CiAgICAgICAgY29uc3QgY2h1bmsgPSB0aGlzLmJ5U3RhcnRbaW5kZXhdOwogICAgICAgIGlmIChjaHVuaykgewogICAgICAgICAgY2h1bmsucHJlcGVuZFJpZ2h0KGNvbnRlbnQpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLm91dHJvID0gY29udGVudCArIHRoaXMub3V0cm87CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHJlbW92ZShzdGFydCwgZW5kKSB7CiAgICAgICAgc3RhcnQgPSBzdGFydCArIHRoaXMub2Zmc2V0OwogICAgICAgIGVuZCA9IGVuZCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmICh0aGlzLm9yaWdpbmFsLmxlbmd0aCAhPT0gMCkgewogICAgICAgICAgd2hpbGUgKHN0YXJ0IDwgMCkgc3RhcnQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgICB3aGlsZSAoZW5kIDwgMCkgZW5kICs9IHRoaXMub3JpZ2luYWwubGVuZ3RoOwogICAgICAgIH0KICAgICAgICBpZiAoc3RhcnQgPT09IGVuZCkgcmV0dXJuIHRoaXM7CiAgICAgICAgaWYgKHN0YXJ0IDwgMCB8fCBlbmQgPiB0aGlzLm9yaWdpbmFsLmxlbmd0aCkgdGhyb3cgbmV3IEVycm9yKCJDaGFyYWN0ZXIgaXMgb3V0IG9mIGJvdW5kcyIpOwogICAgICAgIGlmIChzdGFydCA+IGVuZCkgdGhyb3cgbmV3IEVycm9yKCJlbmQgbXVzdCBiZSBncmVhdGVyIHRoYW4gc3RhcnQiKTsKICAgICAgICB0aGlzLl9zcGxpdChzdGFydCk7CiAgICAgICAgdGhpcy5fc3BsaXQoZW5kKTsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmJ5U3RhcnRbc3RhcnRdOwogICAgICAgIHdoaWxlIChjaHVuaykgewogICAgICAgICAgY2h1bmsuaW50cm8gPSAiIjsKICAgICAgICAgIGNodW5rLm91dHJvID0gIiI7CiAgICAgICAgICBjaHVuay5lZGl0KCIiKTsKICAgICAgICAgIGNodW5rID0gZW5kID4gY2h1bmsuZW5kID8gdGhpcy5ieVN0YXJ0W2NodW5rLmVuZF0gOiBudWxsOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICByZXNldChzdGFydCwgZW5kKSB7CiAgICAgICAgc3RhcnQgPSBzdGFydCArIHRoaXMub2Zmc2V0OwogICAgICAgIGVuZCA9IGVuZCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmICh0aGlzLm9yaWdpbmFsLmxlbmd0aCAhPT0gMCkgewogICAgICAgICAgd2hpbGUgKHN0YXJ0IDwgMCkgc3RhcnQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgICB3aGlsZSAoZW5kIDwgMCkgZW5kICs9IHRoaXMub3JpZ2luYWwubGVuZ3RoOwogICAgICAgIH0KICAgICAgICBpZiAoc3RhcnQgPT09IGVuZCkgcmV0dXJuIHRoaXM7CiAgICAgICAgaWYgKHN0YXJ0IDwgMCB8fCBlbmQgPiB0aGlzLm9yaWdpbmFsLmxlbmd0aCkgdGhyb3cgbmV3IEVycm9yKCJDaGFyYWN0ZXIgaXMgb3V0IG9mIGJvdW5kcyIpOwogICAgICAgIGlmIChzdGFydCA+IGVuZCkgdGhyb3cgbmV3IEVycm9yKCJlbmQgbXVzdCBiZSBncmVhdGVyIHRoYW4gc3RhcnQiKTsKICAgICAgICB0aGlzLl9zcGxpdChzdGFydCk7CiAgICAgICAgdGhpcy5fc3BsaXQoZW5kKTsKICAgICAgICBsZXQgY2h1bmsgPSB0aGlzLmJ5U3RhcnRbc3RhcnRdOwogICAgICAgIHdoaWxlIChjaHVuaykgewogICAgICAgICAgY2h1bmsucmVzZXQoKTsKICAgICAgICAgIGNodW5rID0gZW5kID4gY2h1bmsuZW5kID8gdGhpcy5ieVN0YXJ0W2NodW5rLmVuZF0gOiBudWxsOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBsYXN0Q2hhcigpIHsKICAgICAgICBpZiAodGhpcy5vdXRyby5sZW5ndGgpIHJldHVybiB0aGlzLm91dHJvW3RoaXMub3V0cm8ubGVuZ3RoIC0gMV07CiAgICAgICAgbGV0IGNodW5rID0gdGhpcy5sYXN0Q2h1bms7CiAgICAgICAgZG8gewogICAgICAgICAgaWYgKGNodW5rLm91dHJvLmxlbmd0aCkgcmV0dXJuIGNodW5rLm91dHJvW2NodW5rLm91dHJvLmxlbmd0aCAtIDFdOwogICAgICAgICAgaWYgKGNodW5rLmNvbnRlbnQubGVuZ3RoKSByZXR1cm4gY2h1bmsuY29udGVudFtjaHVuay5jb250ZW50Lmxlbmd0aCAtIDFdOwogICAgICAgICAgaWYgKGNodW5rLmludHJvLmxlbmd0aCkgcmV0dXJuIGNodW5rLmludHJvW2NodW5rLmludHJvLmxlbmd0aCAtIDFdOwogICAgICAgIH0gd2hpbGUgKGNodW5rID0gY2h1bmsucHJldmlvdXMpOwogICAgICAgIGlmICh0aGlzLmludHJvLmxlbmd0aCkgcmV0dXJuIHRoaXMuaW50cm9bdGhpcy5pbnRyby5sZW5ndGggLSAxXTsKICAgICAgICByZXR1cm4gIiI7CiAgICAgIH0KICAgICAgbGFzdExpbmUoKSB7CiAgICAgICAgbGV0IGxpbmVJbmRleCA9IHRoaXMub3V0cm8ubGFzdEluZGV4T2Yobik7CiAgICAgICAgaWYgKGxpbmVJbmRleCAhPT0gLTEpIHJldHVybiB0aGlzLm91dHJvLnN1YnN0cihsaW5lSW5kZXggKyAxKTsKICAgICAgICBsZXQgbGluZVN0ciA9IHRoaXMub3V0cm87CiAgICAgICAgbGV0IGNodW5rID0gdGhpcy5sYXN0Q2h1bms7CiAgICAgICAgZG8gewogICAgICAgICAgaWYgKGNodW5rLm91dHJvLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgbGluZUluZGV4ID0gY2h1bmsub3V0cm8ubGFzdEluZGV4T2Yobik7CiAgICAgICAgICAgIGlmIChsaW5lSW5kZXggIT09IC0xKSByZXR1cm4gY2h1bmsub3V0cm8uc3Vic3RyKGxpbmVJbmRleCArIDEpICsgbGluZVN0cjsKICAgICAgICAgICAgbGluZVN0ciA9IGNodW5rLm91dHJvICsgbGluZVN0cjsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChjaHVuay5jb250ZW50Lmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgbGluZUluZGV4ID0gY2h1bmsuY29udGVudC5sYXN0SW5kZXhPZihuKTsKICAgICAgICAgICAgaWYgKGxpbmVJbmRleCAhPT0gLTEpIHJldHVybiBjaHVuay5jb250ZW50LnN1YnN0cihsaW5lSW5kZXggKyAxKSArIGxpbmVTdHI7CiAgICAgICAgICAgIGxpbmVTdHIgPSBjaHVuay5jb250ZW50ICsgbGluZVN0cjsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChjaHVuay5pbnRyby5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgIGxpbmVJbmRleCA9IGNodW5rLmludHJvLmxhc3RJbmRleE9mKG4pOwogICAgICAgICAgICBpZiAobGluZUluZGV4ICE9PSAtMSkgcmV0dXJuIGNodW5rLmludHJvLnN1YnN0cihsaW5lSW5kZXggKyAxKSArIGxpbmVTdHI7CiAgICAgICAgICAgIGxpbmVTdHIgPSBjaHVuay5pbnRybyArIGxpbmVTdHI7CiAgICAgICAgICB9CiAgICAgICAgfSB3aGlsZSAoY2h1bmsgPSBjaHVuay5wcmV2aW91cyk7CiAgICAgICAgbGluZUluZGV4ID0gdGhpcy5pbnRyby5sYXN0SW5kZXhPZihuKTsKICAgICAgICBpZiAobGluZUluZGV4ICE9PSAtMSkgcmV0dXJuIHRoaXMuaW50cm8uc3Vic3RyKGxpbmVJbmRleCArIDEpICsgbGluZVN0cjsKICAgICAgICByZXR1cm4gdGhpcy5pbnRybyArIGxpbmVTdHI7CiAgICAgIH0KICAgICAgc2xpY2Uoc3RhcnQgPSAwLCBlbmQgPSB0aGlzLm9yaWdpbmFsLmxlbmd0aCAtIHRoaXMub2Zmc2V0KSB7CiAgICAgICAgc3RhcnQgPSBzdGFydCArIHRoaXMub2Zmc2V0OwogICAgICAgIGVuZCA9IGVuZCArIHRoaXMub2Zmc2V0OwogICAgICAgIGlmICh0aGlzLm9yaWdpbmFsLmxlbmd0aCAhPT0gMCkgewogICAgICAgICAgd2hpbGUgKHN0YXJ0IDwgMCkgc3RhcnQgKz0gdGhpcy5vcmlnaW5hbC5sZW5ndGg7CiAgICAgICAgICB3aGlsZSAoZW5kIDwgMCkgZW5kICs9IHRoaXMub3JpZ2luYWwubGVuZ3RoOwogICAgICAgIH0KICAgICAgICBsZXQgcmVzdWx0ID0gIiI7CiAgICAgICAgbGV0IGNodW5rID0gdGhpcy5maXJzdENodW5rOwogICAgICAgIHdoaWxlIChjaHVuayAmJiAoY2h1bmsuc3RhcnQgPiBzdGFydCB8fCBjaHVuay5lbmQgPD0gc3RhcnQpKSB7CiAgICAgICAgICBpZiAoY2h1bmsuc3RhcnQgPCBlbmQgJiYgY2h1bmsuZW5kID49IGVuZCkgewogICAgICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICAgICAgfQogICAgICAgICAgY2h1bmsgPSBjaHVuay5uZXh0OwogICAgICAgIH0KICAgICAgICBpZiAoY2h1bmsgJiYgY2h1bmsuZWRpdGVkICYmIGNodW5rLnN0YXJ0ICE9PSBzdGFydCkKICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IHVzZSByZXBsYWNlZCBjaGFyYWN0ZXIgJHtzdGFydH0gYXMgc2xpY2Ugc3RhcnQgYW5jaG9yLmApOwogICAgICAgIGNvbnN0IHN0YXJ0Q2h1bmsgPSBjaHVuazsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIGlmIChjaHVuay5pbnRybyAmJiAoc3RhcnRDaHVuayAhPT0gY2h1bmsgfHwgY2h1bmsuc3RhcnQgPT09IHN0YXJ0KSkgewogICAgICAgICAgICByZXN1bHQgKz0gY2h1bmsuaW50cm87CiAgICAgICAgICB9CiAgICAgICAgICBjb25zdCBjb250YWluc0VuZCA9IGNodW5rLnN0YXJ0IDwgZW5kICYmIGNodW5rLmVuZCA+PSBlbmQ7CiAgICAgICAgICBpZiAoY29udGFpbnNFbmQgJiYgY2h1bmsuZWRpdGVkICYmIGNodW5rLmVuZCAhPT0gZW5kKQogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENhbm5vdCB1c2UgcmVwbGFjZWQgY2hhcmFjdGVyICR7ZW5kfSBhcyBzbGljZSBlbmQgYW5jaG9yLmApOwogICAgICAgICAgY29uc3Qgc2xpY2VTdGFydCA9IHN0YXJ0Q2h1bmsgPT09IGNodW5rID8gc3RhcnQgLSBjaHVuay5zdGFydCA6IDA7CiAgICAgICAgICBjb25zdCBzbGljZUVuZCA9IGNvbnRhaW5zRW5kID8gY2h1bmsuY29udGVudC5sZW5ndGggKyBlbmQgLSBjaHVuay5lbmQgOiBjaHVuay5jb250ZW50Lmxlbmd0aDsKICAgICAgICAgIHJlc3VsdCArPSBjaHVuay5jb250ZW50LnNsaWNlKHNsaWNlU3RhcnQsIHNsaWNlRW5kKTsKICAgICAgICAgIGlmIChjaHVuay5vdXRybyAmJiAoIWNvbnRhaW5zRW5kIHx8IGNodW5rLmVuZCA9PT0gZW5kKSkgewogICAgICAgICAgICByZXN1bHQgKz0gY2h1bmsub3V0cm87CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoY29udGFpbnNFbmQpIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBjaHVuayA9IGNodW5rLm5leHQ7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH0KICAgICAgLy8gVE9ETyBkZXByZWNhdGUgdGhpcz8gbm90IHJlYWxseSB2ZXJ5IHVzZWZ1bAogICAgICBzbmlwKHN0YXJ0LCBlbmQpIHsKICAgICAgICBjb25zdCBjbG9uZSA9IHRoaXMuY2xvbmUoKTsKICAgICAgICBjbG9uZS5yZW1vdmUoMCwgc3RhcnQpOwogICAgICAgIGNsb25lLnJlbW92ZShlbmQsIGNsb25lLm9yaWdpbmFsLmxlbmd0aCk7CiAgICAgICAgcmV0dXJuIGNsb25lOwogICAgICB9CiAgICAgIF9zcGxpdChpbmRleCkgewogICAgICAgIGlmICh0aGlzLmJ5U3RhcnRbaW5kZXhdIHx8IHRoaXMuYnlFbmRbaW5kZXhdKSByZXR1cm47CiAgICAgICAgbGV0IGNodW5rID0gdGhpcy5sYXN0U2VhcmNoZWRDaHVuazsKICAgICAgICBjb25zdCBzZWFyY2hGb3J3YXJkID0gaW5kZXggPiBjaHVuay5lbmQ7CiAgICAgICAgd2hpbGUgKGNodW5rKSB7CiAgICAgICAgICBpZiAoY2h1bmsuY29udGFpbnMoaW5kZXgpKSByZXR1cm4gdGhpcy5fc3BsaXRDaHVuayhjaHVuaywgaW5kZXgpOwogICAgICAgICAgY2h1bmsgPSBzZWFyY2hGb3J3YXJkID8gdGhpcy5ieVN0YXJ0W2NodW5rLmVuZF0gOiB0aGlzLmJ5RW5kW2NodW5rLnN0YXJ0XTsKICAgICAgICB9CiAgICAgIH0KICAgICAgX3NwbGl0Q2h1bmsoY2h1bmssIGluZGV4KSB7CiAgICAgICAgaWYgKGNodW5rLmVkaXRlZCAmJiBjaHVuay5jb250ZW50Lmxlbmd0aCkgewogICAgICAgICAgY29uc3QgbG9jID0gZ2V0TG9jYXRvcih0aGlzLm9yaWdpbmFsKShpbmRleCk7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgICAgIGBDYW5ub3Qgc3BsaXQgYSBjaHVuayB0aGF0IGhhcyBhbHJlYWR5IGJlZW4gZWRpdGVkICgke2xvYy5saW5lfToke2xvYy5jb2x1bW59IFx1MjAxMyAiJHtjaHVuay5vcmlnaW5hbH0iKWAKICAgICAgICAgICk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IG5ld0NodW5rID0gY2h1bmsuc3BsaXQoaW5kZXgpOwogICAgICAgIHRoaXMuYnlFbmRbaW5kZXhdID0gY2h1bms7CiAgICAgICAgdGhpcy5ieVN0YXJ0W2luZGV4XSA9IG5ld0NodW5rOwogICAgICAgIHRoaXMuYnlFbmRbbmV3Q2h1bmsuZW5kXSA9IG5ld0NodW5rOwogICAgICAgIGlmIChjaHVuayA9PT0gdGhpcy5sYXN0Q2h1bmspIHRoaXMubGFzdENodW5rID0gbmV3Q2h1bms7CiAgICAgICAgdGhpcy5sYXN0U2VhcmNoZWRDaHVuayA9IGNodW5rOwogICAgICAgIHJldHVybiB0cnVlOwogICAgICB9CiAgICAgIHRvU3RyaW5nKCkgewogICAgICAgIGxldCBzdHIgPSB0aGlzLmludHJvOwogICAgICAgIGxldCBjaHVuayA9IHRoaXMuZmlyc3RDaHVuazsKICAgICAgICB3aGlsZSAoY2h1bmspIHsKICAgICAgICAgIHN0ciArPSBjaHVuay50b1N0cmluZygpOwogICAgICAgICAgY2h1bmsgPSBjaHVuay5uZXh0OwogICAgICAgIH0KICAgICAgICByZXR1cm4gc3RyICsgdGhpcy5vdXRybzsKICAgICAgfQogICAgICBpc0VtcHR5KCkgewogICAgICAgIGxldCBjaHVuayA9IHRoaXMuZmlyc3RDaHVuazsKICAgICAgICBkbyB7CiAgICAgICAgICBpZiAoY2h1bmsuaW50cm8ubGVuZ3RoICYmIGNodW5rLmludHJvLnRyaW0oKSB8fCBjaHVuay5jb250ZW50Lmxlbmd0aCAmJiBjaHVuay5jb250ZW50LnRyaW0oKSB8fCBjaHVuay5vdXRyby5sZW5ndGggJiYgY2h1bmsub3V0cm8udHJpbSgpKQogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfSB3aGlsZSAoY2h1bmsgPSBjaHVuay5uZXh0KTsKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgICBsZW5ndGgoKSB7CiAgICAgICAgbGV0IGNodW5rID0gdGhpcy5maXJzdENodW5rOwogICAgICAgIGxldCBsZW5ndGggPSAwOwogICAgICAgIGRvIHsKICAgICAgICAgIGxlbmd0aCArPSBjaHVuay5pbnRyby5sZW5ndGggKyBjaHVuay5jb250ZW50Lmxlbmd0aCArIGNodW5rLm91dHJvLmxlbmd0aDsKICAgICAgICB9IHdoaWxlIChjaHVuayA9IGNodW5rLm5leHQpOwogICAgICAgIHJldHVybiBsZW5ndGg7CiAgICAgIH0KICAgICAgdHJpbUxpbmVzKCkgewogICAgICAgIHJldHVybiB0aGlzLnRyaW0oIltcXHJcXG5dIik7CiAgICAgIH0KICAgICAgdHJpbShjaGFyVHlwZSkgewogICAgICAgIHJldHVybiB0aGlzLnRyaW1TdGFydChjaGFyVHlwZSkudHJpbUVuZChjaGFyVHlwZSk7CiAgICAgIH0KICAgICAgdHJpbUVuZEFib3J0ZWQoY2hhclR5cGUpIHsKICAgICAgICBjb25zdCByeCA9IG5ldyBSZWdFeHAoKGNoYXJUeXBlIHx8ICJcXHMiKSArICIrJCIpOwogICAgICAgIHRoaXMub3V0cm8gPSB0aGlzLm91dHJvLnJlcGxhY2UocngsICIiKTsKICAgICAgICBpZiAodGhpcy5vdXRyby5sZW5ndGgpIHJldHVybiB0cnVlOwogICAgICAgIGxldCBjaHVuayA9IHRoaXMubGFzdENodW5rOwogICAgICAgIGRvIHsKICAgICAgICAgIGNvbnN0IGVuZCA9IGNodW5rLmVuZDsKICAgICAgICAgIGNvbnN0IGFib3J0ZWQgPSBjaHVuay50cmltRW5kKHJ4KTsKICAgICAgICAgIGlmIChjaHVuay5lbmQgIT09IGVuZCkgewogICAgICAgICAgICBpZiAodGhpcy5sYXN0Q2h1bmsgPT09IGNodW5rKSB7CiAgICAgICAgICAgICAgdGhpcy5sYXN0Q2h1bmsgPSBjaHVuay5uZXh0OwogICAgICAgICAgICB9CiAgICAgICAgICAgIHRoaXMuYnlFbmRbY2h1bmsuZW5kXSA9IGNodW5rOwogICAgICAgICAgICB0aGlzLmJ5U3RhcnRbY2h1bmsubmV4dC5zdGFydF0gPSBjaHVuay5uZXh0OwogICAgICAgICAgICB0aGlzLmJ5RW5kW2NodW5rLm5leHQuZW5kXSA9IGNodW5rLm5leHQ7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoYWJvcnRlZCkgcmV0dXJuIHRydWU7CiAgICAgICAgICBjaHVuayA9IGNodW5rLnByZXZpb3VzOwogICAgICAgIH0gd2hpbGUgKGNodW5rKTsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgICAgdHJpbUVuZChjaGFyVHlwZSkgewogICAgICAgIHRoaXMudHJpbUVuZEFib3J0ZWQoY2hhclR5cGUpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHRyaW1TdGFydEFib3J0ZWQoY2hhclR5cGUpIHsKICAgICAgICBjb25zdCByeCA9IG5ldyBSZWdFeHAoIl4iICsgKGNoYXJUeXBlIHx8ICJcXHMiKSArICIrIik7CiAgICAgICAgdGhpcy5pbnRybyA9IHRoaXMuaW50cm8ucmVwbGFjZShyeCwgIiIpOwogICAgICAgIGlmICh0aGlzLmludHJvLmxlbmd0aCkgcmV0dXJuIHRydWU7CiAgICAgICAgbGV0IGNodW5rID0gdGhpcy5maXJzdENodW5rOwogICAgICAgIGRvIHsKICAgICAgICAgIGNvbnN0IGVuZCA9IGNodW5rLmVuZDsKICAgICAgICAgIGNvbnN0IGFib3J0ZWQgPSBjaHVuay50cmltU3RhcnQocngpOwogICAgICAgICAgaWYgKGNodW5rLmVuZCAhPT0gZW5kKSB7CiAgICAgICAgICAgIGlmIChjaHVuayA9PT0gdGhpcy5sYXN0Q2h1bmspIHRoaXMubGFzdENodW5rID0gY2h1bmsubmV4dDsKICAgICAgICAgICAgdGhpcy5ieUVuZFtjaHVuay5lbmRdID0gY2h1bms7CiAgICAgICAgICAgIHRoaXMuYnlTdGFydFtjaHVuay5uZXh0LnN0YXJ0XSA9IGNodW5rLm5leHQ7CiAgICAgICAgICAgIHRoaXMuYnlFbmRbY2h1bmsubmV4dC5lbmRdID0gY2h1bmsubmV4dDsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChhYm9ydGVkKSByZXR1cm4gdHJ1ZTsKICAgICAgICAgIGNodW5rID0gY2h1bmsubmV4dDsKICAgICAgICB9IHdoaWxlIChjaHVuayk7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICAgIHRyaW1TdGFydChjaGFyVHlwZSkgewogICAgICAgIHRoaXMudHJpbVN0YXJ0QWJvcnRlZChjaGFyVHlwZSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgaGFzQ2hhbmdlZCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5vcmlnaW5hbCAhPT0gdGhpcy50b1N0cmluZygpOwogICAgICB9CiAgICAgIF9yZXBsYWNlUmVnZXhwKHNlYXJjaFZhbHVlLCByZXBsYWNlbWVudCkgewogICAgICAgIGZ1bmN0aW9uIGdldFJlcGxhY2VtZW50KG1hdGNoLCBzdHIpIHsKICAgICAgICAgIGlmICh0eXBlb2YgcmVwbGFjZW1lbnQgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICAgIHJldHVybiByZXBsYWNlbWVudC5yZXBsYWNlKC9cJChcJHwmfFxkKykvZywgKF8sIGkpID0+IHsKICAgICAgICAgICAgICBpZiAoaSA9PT0gIiQiKSByZXR1cm4gIiQiOwogICAgICAgICAgICAgIGlmIChpID09PSAiJiIpIHJldHVybiBtYXRjaFswXTsKICAgICAgICAgICAgICBjb25zdCBudW0gPSAraTsKICAgICAgICAgICAgICBpZiAobnVtIDwgbWF0Y2gubGVuZ3RoKSByZXR1cm4gbWF0Y2hbK2ldOwogICAgICAgICAgICAgIHJldHVybiBgJCR7aX1gOwogICAgICAgICAgICB9KTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiByZXBsYWNlbWVudCguLi5tYXRjaCwgbWF0Y2guaW5kZXgsIHN0ciwgbWF0Y2guZ3JvdXBzKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gbWF0Y2hBbGwocmUsIHN0cikgewogICAgICAgICAgbGV0IG1hdGNoOwogICAgICAgICAgY29uc3QgbWF0Y2hlcyA9IFtdOwogICAgICAgICAgd2hpbGUgKG1hdGNoID0gcmUuZXhlYyhzdHIpKSB7CiAgICAgICAgICAgIG1hdGNoZXMucHVzaChtYXRjaCk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gbWF0Y2hlczsKICAgICAgICB9CiAgICAgICAgaWYgKHNlYXJjaFZhbHVlLmdsb2JhbCkgewogICAgICAgICAgY29uc3QgbWF0Y2hlcyA9IG1hdGNoQWxsKHNlYXJjaFZhbHVlLCB0aGlzLm9yaWdpbmFsKTsKICAgICAgICAgIG1hdGNoZXMuZm9yRWFjaCgobWF0Y2gpID0+IHsKICAgICAgICAgICAgaWYgKG1hdGNoLmluZGV4ICE9IG51bGwpIHsKICAgICAgICAgICAgICBjb25zdCByZXBsYWNlbWVudDIgPSBnZXRSZXBsYWNlbWVudChtYXRjaCwgdGhpcy5vcmlnaW5hbCk7CiAgICAgICAgICAgICAgaWYgKHJlcGxhY2VtZW50MiAhPT0gbWF0Y2hbMF0pIHsKICAgICAgICAgICAgICAgIHRoaXMub3ZlcndyaXRlKG1hdGNoLmluZGV4LCBtYXRjaC5pbmRleCArIG1hdGNoWzBdLmxlbmd0aCwgcmVwbGFjZW1lbnQyKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb25zdCBtYXRjaCA9IHRoaXMub3JpZ2luYWwubWF0Y2goc2VhcmNoVmFsdWUpOwogICAgICAgICAgaWYgKG1hdGNoICYmIG1hdGNoLmluZGV4ICE9IG51bGwpIHsKICAgICAgICAgICAgY29uc3QgcmVwbGFjZW1lbnQyID0gZ2V0UmVwbGFjZW1lbnQobWF0Y2gsIHRoaXMub3JpZ2luYWwpOwogICAgICAgICAgICBpZiAocmVwbGFjZW1lbnQyICE9PSBtYXRjaFswXSkgewogICAgICAgICAgICAgIHRoaXMub3ZlcndyaXRlKG1hdGNoLmluZGV4LCBtYXRjaC5pbmRleCArIG1hdGNoWzBdLmxlbmd0aCwgcmVwbGFjZW1lbnQyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBfcmVwbGFjZVN0cmluZyhzdHJpbmcsIHJlcGxhY2VtZW50KSB7CiAgICAgICAgY29uc3QgeyBvcmlnaW5hbCB9ID0gdGhpczsKICAgICAgICBjb25zdCBpbmRleCA9IG9yaWdpbmFsLmluZGV4T2Yoc3RyaW5nKTsKICAgICAgICBpZiAoaW5kZXggIT09IC0xKSB7CiAgICAgICAgICB0aGlzLm92ZXJ3cml0ZShpbmRleCwgaW5kZXggKyBzdHJpbmcubGVuZ3RoLCByZXBsYWNlbWVudCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHJlcGxhY2Uoc2VhcmNoVmFsdWUsIHJlcGxhY2VtZW50KSB7CiAgICAgICAgaWYgKHR5cGVvZiBzZWFyY2hWYWx1ZSA9PT0gInN0cmluZyIpIHsKICAgICAgICAgIHJldHVybiB0aGlzLl9yZXBsYWNlU3RyaW5nKHNlYXJjaFZhbHVlLCByZXBsYWNlbWVudCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0aGlzLl9yZXBsYWNlUmVnZXhwKHNlYXJjaFZhbHVlLCByZXBsYWNlbWVudCk7CiAgICAgIH0KICAgICAgX3JlcGxhY2VBbGxTdHJpbmcoc3RyaW5nLCByZXBsYWNlbWVudCkgewogICAgICAgIGNvbnN0IHsgb3JpZ2luYWwgfSA9IHRoaXM7CiAgICAgICAgY29uc3Qgc3RyaW5nTGVuZ3RoID0gc3RyaW5nLmxlbmd0aDsKICAgICAgICBmb3IgKGxldCBpbmRleCA9IG9yaWdpbmFsLmluZGV4T2Yoc3RyaW5nKTsgaW5kZXggIT09IC0xOyBpbmRleCA9IG9yaWdpbmFsLmluZGV4T2Yoc3RyaW5nLCBpbmRleCArIHN0cmluZ0xlbmd0aCkpIHsKICAgICAgICAgIGNvbnN0IHByZXZpb3VzID0gb3JpZ2luYWwuc2xpY2UoaW5kZXgsIGluZGV4ICsgc3RyaW5nTGVuZ3RoKTsKICAgICAgICAgIGlmIChwcmV2aW91cyAhPT0gcmVwbGFjZW1lbnQpIHRoaXMub3ZlcndyaXRlKGluZGV4LCBpbmRleCArIHN0cmluZ0xlbmd0aCwgcmVwbGFjZW1lbnQpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICByZXBsYWNlQWxsKHNlYXJjaFZhbHVlLCByZXBsYWNlbWVudCkgewogICAgICAgIGlmICh0eXBlb2Ygc2VhcmNoVmFsdWUgPT09ICJzdHJpbmciKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5fcmVwbGFjZUFsbFN0cmluZyhzZWFyY2hWYWx1ZSwgcmVwbGFjZW1lbnQpOwogICAgICAgIH0KICAgICAgICBpZiAoIXNlYXJjaFZhbHVlLmdsb2JhbCkgewogICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigKICAgICAgICAgICAgIk1hZ2ljU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlQWxsIGNhbGxlZCB3aXRoIGEgbm9uLWdsb2JhbCBSZWdFeHAgYXJndW1lbnQiCiAgICAgICAgICApOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5fcmVwbGFjZVJlZ2V4cChzZWFyY2hWYWx1ZSwgcmVwbGFjZW1lbnQpOwogICAgICB9CiAgICB9OwogICAgdmFyIGhhc093blByb3AgPSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5OwogICAgdmFyIEJ1bmRsZSA9IGNsYXNzIF9CdW5kbGUgewogICAgICBjb25zdHJ1Y3RvcihvcHRpb25zID0ge30pIHsKICAgICAgICB0aGlzLmludHJvID0gb3B0aW9ucy5pbnRybyB8fCAiIjsKICAgICAgICB0aGlzLnNlcGFyYXRvciA9IG9wdGlvbnMuc2VwYXJhdG9yICE9PSB2b2lkIDAgPyBvcHRpb25zLnNlcGFyYXRvciA6ICJcbiI7CiAgICAgICAgdGhpcy5zb3VyY2VzID0gW107CiAgICAgICAgdGhpcy51bmlxdWVTb3VyY2VzID0gW107CiAgICAgICAgdGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWUgPSB7fTsKICAgICAgfQogICAgICBhZGRTb3VyY2Uoc291cmNlKSB7CiAgICAgICAgaWYgKHNvdXJjZSBpbnN0YW5jZW9mIE1hZ2ljU3RyaW5nKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5hZGRTb3VyY2UoewogICAgICAgICAgICBjb250ZW50OiBzb3VyY2UsCiAgICAgICAgICAgIGZpbGVuYW1lOiBzb3VyY2UuZmlsZW5hbWUsCiAgICAgICAgICAgIHNlcGFyYXRvcjogdGhpcy5zZXBhcmF0b3IKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBpZiAoIWlzT2JqZWN0KHNvdXJjZSkgfHwgIXNvdXJjZS5jb250ZW50KSB7CiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgICAgICJidW5kbGUuYWRkU291cmNlKCkgdGFrZXMgYW4gb2JqZWN0IHdpdGggYSBgY29udGVudGAgcHJvcGVydHksIHdoaWNoIHNob3VsZCBiZSBhbiBpbnN0YW5jZSBvZiBNYWdpY1N0cmluZywgYW5kIGFuIG9wdGlvbmFsIGBmaWxlbmFtZWAiCiAgICAgICAgICApOwogICAgICAgIH0KICAgICAgICBbImZpbGVuYW1lIiwgImlnbm9yZUxpc3QiLCAiaW5kZW50RXhjbHVzaW9uUmFuZ2VzIiwgInNlcGFyYXRvciJdLmZvckVhY2goKG9wdGlvbikgPT4gewogICAgICAgICAgaWYgKCFoYXNPd25Qcm9wLmNhbGwoc291cmNlLCBvcHRpb24pKSBzb3VyY2Vbb3B0aW9uXSA9IHNvdXJjZS5jb250ZW50W29wdGlvbl07CiAgICAgICAgfSk7CiAgICAgICAgaWYgKHNvdXJjZS5zZXBhcmF0b3IgPT09IHZvaWQgMCkgewogICAgICAgICAgc291cmNlLnNlcGFyYXRvciA9IHRoaXMuc2VwYXJhdG9yOwogICAgICAgIH0KICAgICAgICBpZiAoc291cmNlLmZpbGVuYW1lKSB7CiAgICAgICAgICBpZiAoIWhhc093blByb3AuY2FsbCh0aGlzLnVuaXF1ZVNvdXJjZUluZGV4QnlGaWxlbmFtZSwgc291cmNlLmZpbGVuYW1lKSkgewogICAgICAgICAgICB0aGlzLnVuaXF1ZVNvdXJjZUluZGV4QnlGaWxlbmFtZVtzb3VyY2UuZmlsZW5hbWVdID0gdGhpcy51bmlxdWVTb3VyY2VzLmxlbmd0aDsKICAgICAgICAgICAgdGhpcy51bmlxdWVTb3VyY2VzLnB1c2goeyBmaWxlbmFtZTogc291cmNlLmZpbGVuYW1lLCBjb250ZW50OiBzb3VyY2UuY29udGVudC5vcmlnaW5hbCB9KTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvbnN0IHVuaXF1ZVNvdXJjZSA9IHRoaXMudW5pcXVlU291cmNlc1t0aGlzLnVuaXF1ZVNvdXJjZUluZGV4QnlGaWxlbmFtZVtzb3VyY2UuZmlsZW5hbWVdXTsKICAgICAgICAgICAgaWYgKHNvdXJjZS5jb250ZW50Lm9yaWdpbmFsICE9PSB1bmlxdWVTb3VyY2UuY29udGVudCkgewogICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgSWxsZWdhbCBzb3VyY2U6IHNhbWUgZmlsZW5hbWUgKCR7c291cmNlLmZpbGVuYW1lfSksIGRpZmZlcmVudCBjb250ZW50c2ApOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHRoaXMuc291cmNlcy5wdXNoKHNvdXJjZSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgYXBwZW5kKHN0ciwgb3B0aW9ucykgewogICAgICAgIHRoaXMuYWRkU291cmNlKHsKICAgICAgICAgIGNvbnRlbnQ6IG5ldyBNYWdpY1N0cmluZyhzdHIpLAogICAgICAgICAgc2VwYXJhdG9yOiBvcHRpb25zICYmIG9wdGlvbnMuc2VwYXJhdG9yIHx8ICIiCiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgY2xvbmUoKSB7CiAgICAgICAgY29uc3QgYnVuZGxlID0gbmV3IF9CdW5kbGUoewogICAgICAgICAgaW50cm86IHRoaXMuaW50cm8sCiAgICAgICAgICBzZXBhcmF0b3I6IHRoaXMuc2VwYXJhdG9yCiAgICAgICAgfSk7CiAgICAgICAgdGhpcy5zb3VyY2VzLmZvckVhY2goKHNvdXJjZSkgPT4gewogICAgICAgICAgYnVuZGxlLmFkZFNvdXJjZSh7CiAgICAgICAgICAgIGZpbGVuYW1lOiBzb3VyY2UuZmlsZW5hbWUsCiAgICAgICAgICAgIGNvbnRlbnQ6IHNvdXJjZS5jb250ZW50LmNsb25lKCksCiAgICAgICAgICAgIHNlcGFyYXRvcjogc291cmNlLnNlcGFyYXRvcgogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIGJ1bmRsZTsKICAgICAgfQogICAgICBnZW5lcmF0ZURlY29kZWRNYXAob3B0aW9ucyA9IHt9KSB7CiAgICAgICAgY29uc3QgbmFtZXMgPSBbXTsKICAgICAgICBsZXQgeF9nb29nbGVfaWdub3JlTGlzdCA9IHZvaWQgMDsKICAgICAgICB0aGlzLnNvdXJjZXMuZm9yRWFjaCgoc291cmNlKSA9PiB7CiAgICAgICAgICBPYmplY3Qua2V5cyhzb3VyY2UuY29udGVudC5zdG9yZWROYW1lcykuZm9yRWFjaCgobmFtZSkgPT4gewogICAgICAgICAgICBpZiAoIX5uYW1lcy5pbmRleE9mKG5hbWUpKSBuYW1lcy5wdXNoKG5hbWUpOwogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgY29uc3QgbWFwcGluZ3MgPSBuZXcgTWFwcGluZ3Mob3B0aW9ucy5oaXJlcyk7CiAgICAgICAgaWYgKHRoaXMuaW50cm8pIHsKICAgICAgICAgIG1hcHBpbmdzLmFkdmFuY2UodGhpcy5pbnRybyk7CiAgICAgICAgfQogICAgICAgIHRoaXMuc291cmNlcy5mb3JFYWNoKChzb3VyY2UsIGkpID0+IHsKICAgICAgICAgIGlmIChpID4gMCkgewogICAgICAgICAgICBtYXBwaW5ncy5hZHZhbmNlKHRoaXMuc2VwYXJhdG9yKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHNvdXJjZUluZGV4ID0gc291cmNlLmZpbGVuYW1lID8gdGhpcy51bmlxdWVTb3VyY2VJbmRleEJ5RmlsZW5hbWVbc291cmNlLmZpbGVuYW1lXSA6IC0xOwogICAgICAgICAgY29uc3QgbWFnaWNTdHJpbmcgPSBzb3VyY2UuY29udGVudDsKICAgICAgICAgIGNvbnN0IGxvY2F0ZSA9IGdldExvY2F0b3IobWFnaWNTdHJpbmcub3JpZ2luYWwpOwogICAgICAgICAgaWYgKG1hZ2ljU3RyaW5nLmludHJvKSB7CiAgICAgICAgICAgIG1hcHBpbmdzLmFkdmFuY2UobWFnaWNTdHJpbmcuaW50cm8pOwogICAgICAgICAgfQogICAgICAgICAgbWFnaWNTdHJpbmcuZmlyc3RDaHVuay5lYWNoTmV4dCgoY2h1bmspID0+IHsKICAgICAgICAgICAgY29uc3QgbG9jID0gbG9jYXRlKGNodW5rLnN0YXJ0KTsKICAgICAgICAgICAgaWYgKGNodW5rLmludHJvLmxlbmd0aCkgbWFwcGluZ3MuYWR2YW5jZShjaHVuay5pbnRybyk7CiAgICAgICAgICAgIGlmIChzb3VyY2UuZmlsZW5hbWUpIHsKICAgICAgICAgICAgICBpZiAoY2h1bmsuZWRpdGVkKSB7CiAgICAgICAgICAgICAgICBtYXBwaW5ncy5hZGRFZGl0KAogICAgICAgICAgICAgICAgICBzb3VyY2VJbmRleCwKICAgICAgICAgICAgICAgICAgY2h1bmsuY29udGVudCwKICAgICAgICAgICAgICAgICAgbG9jLAogICAgICAgICAgICAgICAgICBjaHVuay5zdG9yZU5hbWUgPyBuYW1lcy5pbmRleE9mKGNodW5rLm9yaWdpbmFsKSA6IC0xCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBtYXBwaW5ncy5hZGRVbmVkaXRlZENodW5rKAogICAgICAgICAgICAgICAgICBzb3VyY2VJbmRleCwKICAgICAgICAgICAgICAgICAgY2h1bmssCiAgICAgICAgICAgICAgICAgIG1hZ2ljU3RyaW5nLm9yaWdpbmFsLAogICAgICAgICAgICAgICAgICBsb2MsCiAgICAgICAgICAgICAgICAgIG1hZ2ljU3RyaW5nLnNvdXJjZW1hcExvY2F0aW9ucwogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgbWFwcGluZ3MuYWR2YW5jZShjaHVuay5jb250ZW50KTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoY2h1bmsub3V0cm8ubGVuZ3RoKSBtYXBwaW5ncy5hZHZhbmNlKGNodW5rLm91dHJvKTsKICAgICAgICAgIH0pOwogICAgICAgICAgaWYgKG1hZ2ljU3RyaW5nLm91dHJvKSB7CiAgICAgICAgICAgIG1hcHBpbmdzLmFkdmFuY2UobWFnaWNTdHJpbmcub3V0cm8pOwogICAgICAgICAgfQogICAgICAgICAgaWYgKHNvdXJjZS5pZ25vcmVMaXN0ICYmIHNvdXJjZUluZGV4ICE9PSAtMSkgewogICAgICAgICAgICBpZiAoeF9nb29nbGVfaWdub3JlTGlzdCA9PT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgeF9nb29nbGVfaWdub3JlTGlzdCA9IFtdOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHhfZ29vZ2xlX2lnbm9yZUxpc3QucHVzaChzb3VyY2VJbmRleCk7CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGZpbGU6IG9wdGlvbnMuZmlsZSA/IG9wdGlvbnMuZmlsZS5zcGxpdCgvWy9cXF0vKS5wb3AoKSA6IHZvaWQgMCwKICAgICAgICAgIHNvdXJjZXM6IHRoaXMudW5pcXVlU291cmNlcy5tYXAoKHNvdXJjZSkgPT4gewogICAgICAgICAgICByZXR1cm4gb3B0aW9ucy5maWxlID8gZ2V0UmVsYXRpdmVQYXRoKG9wdGlvbnMuZmlsZSwgc291cmNlLmZpbGVuYW1lKSA6IHNvdXJjZS5maWxlbmFtZTsKICAgICAgICAgIH0pLAogICAgICAgICAgc291cmNlc0NvbnRlbnQ6IHRoaXMudW5pcXVlU291cmNlcy5tYXAoKHNvdXJjZSkgPT4gewogICAgICAgICAgICByZXR1cm4gb3B0aW9ucy5pbmNsdWRlQ29udGVudCA/IHNvdXJjZS5jb250ZW50IDogbnVsbDsKICAgICAgICAgIH0pLAogICAgICAgICAgbmFtZXMsCiAgICAgICAgICBtYXBwaW5nczogbWFwcGluZ3MucmF3LAogICAgICAgICAgeF9nb29nbGVfaWdub3JlTGlzdAogICAgICAgIH07CiAgICAgIH0KICAgICAgZ2VuZXJhdGVNYXAob3B0aW9ucykgewogICAgICAgIHJldHVybiBuZXcgU291cmNlTWFwKHRoaXMuZ2VuZXJhdGVEZWNvZGVkTWFwKG9wdGlvbnMpKTsKICAgICAgfQogICAgICBnZXRJbmRlbnRTdHJpbmcoKSB7CiAgICAgICAgY29uc3QgaW5kZW50U3RyaW5nQ291bnRzID0ge307CiAgICAgICAgdGhpcy5zb3VyY2VzLmZvckVhY2goKHNvdXJjZSkgPT4gewogICAgICAgICAgY29uc3QgaW5kZW50U3RyID0gc291cmNlLmNvbnRlbnQuX2dldFJhd0luZGVudFN0cmluZygpOwogICAgICAgICAgaWYgKGluZGVudFN0ciA9PT0gbnVsbCkgcmV0dXJuOwogICAgICAgICAgaWYgKCFpbmRlbnRTdHJpbmdDb3VudHNbaW5kZW50U3RyXSkgaW5kZW50U3RyaW5nQ291bnRzW2luZGVudFN0cl0gPSAwOwogICAgICAgICAgaW5kZW50U3RyaW5nQ291bnRzW2luZGVudFN0cl0gKz0gMTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMoaW5kZW50U3RyaW5nQ291bnRzKS5zb3J0KChhLCBiKSA9PiB7CiAgICAgICAgICByZXR1cm4gaW5kZW50U3RyaW5nQ291bnRzW2FdIC0gaW5kZW50U3RyaW5nQ291bnRzW2JdOwogICAgICAgIH0pWzBdIHx8ICIJIjsKICAgICAgfQogICAgICBpbmRlbnQoaW5kZW50U3RyKSB7CiAgICAgICAgaWYgKCFhcmd1bWVudHMubGVuZ3RoKSB7CiAgICAgICAgICBpbmRlbnRTdHIgPSB0aGlzLmdldEluZGVudFN0cmluZygpOwogICAgICAgIH0KICAgICAgICBpZiAoaW5kZW50U3RyID09PSAiIikgcmV0dXJuIHRoaXM7CiAgICAgICAgbGV0IHRyYWlsaW5nTmV3bGluZSA9ICF0aGlzLmludHJvIHx8IHRoaXMuaW50cm8uc2xpY2UoLTEpID09PSAiXG4iOwogICAgICAgIHRoaXMuc291cmNlcy5mb3JFYWNoKChzb3VyY2UsIGkpID0+IHsKICAgICAgICAgIGNvbnN0IHNlcGFyYXRvciA9IHNvdXJjZS5zZXBhcmF0b3IgIT09IHZvaWQgMCA/IHNvdXJjZS5zZXBhcmF0b3IgOiB0aGlzLnNlcGFyYXRvcjsKICAgICAgICAgIGNvbnN0IGluZGVudFN0YXJ0ID0gdHJhaWxpbmdOZXdsaW5lIHx8IGkgPiAwICYmIC9ccj9cbiQvLnRlc3Qoc2VwYXJhdG9yKTsKICAgICAgICAgIHNvdXJjZS5jb250ZW50LmluZGVudChpbmRlbnRTdHIsIHsKICAgICAgICAgICAgZXhjbHVkZTogc291cmNlLmluZGVudEV4Y2x1c2lvblJhbmdlcywKICAgICAgICAgICAgaW5kZW50U3RhcnQKICAgICAgICAgICAgLy86IHRyYWlsaW5nTmV3bGluZSB8fCAvXHI/XG4kLy50ZXN0KCBzZXBhcmF0b3IgKSAgLy90cnVlLy8vXHI/XG4vLnRlc3QoIHNlcGFyYXRvciApCiAgICAgICAgICB9KTsKICAgICAgICAgIHRyYWlsaW5nTmV3bGluZSA9IHNvdXJjZS5jb250ZW50Lmxhc3RDaGFyKCkgPT09ICJcbiI7CiAgICAgICAgfSk7CiAgICAgICAgaWYgKHRoaXMuaW50cm8pIHsKICAgICAgICAgIHRoaXMuaW50cm8gPSBpbmRlbnRTdHIgKyB0aGlzLmludHJvLnJlcGxhY2UoL15bXlxuXS9nbSwgKG1hdGNoLCBpbmRleCkgPT4gewogICAgICAgICAgICByZXR1cm4gaW5kZXggPiAwID8gaW5kZW50U3RyICsgbWF0Y2ggOiBtYXRjaDsKICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBwcmVwZW5kKHN0cikgewogICAgICAgIHRoaXMuaW50cm8gPSBzdHIgKyB0aGlzLmludHJvOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHRvU3RyaW5nKCkgewogICAgICAgIGNvbnN0IGJvZHkgPSB0aGlzLnNvdXJjZXMubWFwKChzb3VyY2UsIGkpID0+IHsKICAgICAgICAgIGNvbnN0IHNlcGFyYXRvciA9IHNvdXJjZS5zZXBhcmF0b3IgIT09IHZvaWQgMCA/IHNvdXJjZS5zZXBhcmF0b3IgOiB0aGlzLnNlcGFyYXRvcjsKICAgICAgICAgIGNvbnN0IHN0ciA9IChpID4gMCA/IHNlcGFyYXRvciA6ICIiKSArIHNvdXJjZS5jb250ZW50LnRvU3RyaW5nKCk7CiAgICAgICAgICByZXR1cm4gc3RyOwogICAgICAgIH0pLmpvaW4oIiIpOwogICAgICAgIHJldHVybiB0aGlzLmludHJvICsgYm9keTsKICAgICAgfQogICAgICBpc0VtcHR5KCkgewogICAgICAgIGlmICh0aGlzLmludHJvLmxlbmd0aCAmJiB0aGlzLmludHJvLnRyaW0oKSkgcmV0dXJuIGZhbHNlOwogICAgICAgIGlmICh0aGlzLnNvdXJjZXMuc29tZSgoc291cmNlKSA9PiAhc291cmNlLmNvbnRlbnQuaXNFbXB0eSgpKSkgcmV0dXJuIGZhbHNlOwogICAgICAgIHJldHVybiB0cnVlOwogICAgICB9CiAgICAgIGxlbmd0aCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5zb3VyY2VzLnJlZHVjZSgKICAgICAgICAgIChsZW5ndGgsIHNvdXJjZSkgPT4gbGVuZ3RoICsgc291cmNlLmNvbnRlbnQubGVuZ3RoKCksCiAgICAgICAgICB0aGlzLmludHJvLmxlbmd0aAogICAgICAgICk7CiAgICAgIH0KICAgICAgdHJpbUxpbmVzKCkgewogICAgICAgIHJldHVybiB0aGlzLnRyaW0oIltcXHJcXG5dIik7CiAgICAgIH0KICAgICAgdHJpbShjaGFyVHlwZSkgewogICAgICAgIHJldHVybiB0aGlzLnRyaW1TdGFydChjaGFyVHlwZSkudHJpbUVuZChjaGFyVHlwZSk7CiAgICAgIH0KICAgICAgdHJpbVN0YXJ0KGNoYXJUeXBlKSB7CiAgICAgICAgY29uc3QgcnggPSBuZXcgUmVnRXhwKCJeIiArIChjaGFyVHlwZSB8fCAiXFxzIikgKyAiKyIpOwogICAgICAgIHRoaXMuaW50cm8gPSB0aGlzLmludHJvLnJlcGxhY2UocngsICIiKTsKICAgICAgICBpZiAoIXRoaXMuaW50cm8pIHsKICAgICAgICAgIGxldCBzb3VyY2U7CiAgICAgICAgICBsZXQgaSA9IDA7CiAgICAgICAgICBkbyB7CiAgICAgICAgICAgIHNvdXJjZSA9IHRoaXMuc291cmNlc1tpKytdOwogICAgICAgICAgICBpZiAoIXNvdXJjZSkgewogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICB9IHdoaWxlICghc291cmNlLmNvbnRlbnQudHJpbVN0YXJ0QWJvcnRlZChjaGFyVHlwZSkpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICB0cmltRW5kKGNoYXJUeXBlKSB7CiAgICAgICAgY29uc3QgcnggPSBuZXcgUmVnRXhwKChjaGFyVHlwZSB8fCAiXFxzIikgKyAiKyQiKTsKICAgICAgICBsZXQgc291cmNlOwogICAgICAgIGxldCBpID0gdGhpcy5zb3VyY2VzLmxlbmd0aCAtIDE7CiAgICAgICAgZG8gewogICAgICAgICAgc291cmNlID0gdGhpcy5zb3VyY2VzW2ktLV07CiAgICAgICAgICBpZiAoIXNvdXJjZSkgewogICAgICAgICAgICB0aGlzLmludHJvID0gdGhpcy5pbnRyby5yZXBsYWNlKHJ4LCAiIik7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgIH0gd2hpbGUgKCFzb3VyY2UuY29udGVudC50cmltRW5kQWJvcnRlZChjaGFyVHlwZSkpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICB9OwogICAgTWFnaWNTdHJpbmcuQnVuZGxlID0gQnVuZGxlOwogICAgTWFnaWNTdHJpbmcuU291cmNlTWFwID0gU291cmNlTWFwOwogICAgTWFnaWNTdHJpbmcuZGVmYXVsdCA9IE1hZ2ljU3RyaW5nOwogICAgbW9kdWxlMi5leHBvcnRzID0gTWFnaWNTdHJpbmc7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL3JlY29yZGVyLmpzCnZhciByZXF1aXJlX3JlY29yZGVyID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL3JlY29yZGVyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9faW1wb3J0RGVmYXVsdCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9faW1wb3J0RGVmYXVsdCB8fCBmdW5jdGlvbihtb2QpIHsKICAgICAgcmV0dXJuIG1vZCAmJiBtb2QuX19lc01vZHVsZSA/IG1vZCA6IHsgImRlZmF1bHQiOiBtb2QgfTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlVwZGF0ZVJlY29yZGVyQmFzZSA9IGV4cG9ydHMyLkluZGV4T3V0T2ZCb3VuZEV4Y2VwdGlvbiA9IHZvaWQgMDsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgdmFyIG1hZ2ljX3N0cmluZ18xID0gX19pbXBvcnREZWZhdWx0KHJlcXVpcmVfbWFnaWNfc3RyaW5nX2NqcygpKTsKICAgIHZhciBleGNlcHRpb25fMSA9IHJlcXVpcmVfZXhjZXB0aW9uMigpOwogICAgdmFyIEluZGV4T3V0T2ZCb3VuZEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihpbmRleCwgbWluLCBtYXggPSBJbmZpbml0eSkgewogICAgICAgIHN1cGVyKGBJbmRleCAke2luZGV4fSBvdXRzaWRlIG9mIHJhbmdlIFske21pbn0sICR7bWF4fV0uYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5JbmRleE91dE9mQm91bmRFeGNlcHRpb24gPSBJbmRleE91dE9mQm91bmRFeGNlcHRpb247CiAgICB2YXIgVXBkYXRlUmVjb3JkZXJCYXNlID0gY2xhc3MgX1VwZGF0ZVJlY29yZGVyQmFzZSB7CiAgICAgIGRhdGE7CiAgICAgIGJvbTsKICAgICAgX3BhdGg7CiAgICAgIGNvbnRlbnQ7CiAgICAgIGNvbnN0cnVjdG9yKGRhdGEsIHBhdGgsIGVuY29kaW5nID0gInV0Zi04IiwgYm9tID0gZmFsc2UpIHsKICAgICAgICB0aGlzLmRhdGEgPSBkYXRhOwogICAgICAgIHRoaXMuYm9tID0gYm9tOwogICAgICAgIGxldCB0ZXh0OwogICAgICAgIHRyeSB7CiAgICAgICAgICB0ZXh0ID0gbmV3IFRleHREZWNvZGVyKGVuY29kaW5nLCB7IGZhdGFsOiB0cnVlLCBpZ25vcmVCT006IGZhbHNlIH0pLmRlY29kZShkYXRhKTsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICBpZiAoZSBpbnN0YW5jZW9mIFR5cGVFcnJvcikgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEZhaWxlZCB0byBkZWNvZGUgIiR7cGF0aH0iIGFzICR7ZW5jb2Rpbmd9IHRleHQuYCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlOwogICAgICAgIH0KICAgICAgICB0aGlzLl9wYXRoID0gcGF0aDsKICAgICAgICB0aGlzLmNvbnRlbnQgPSBuZXcgbWFnaWNfc3RyaW5nXzEuZGVmYXVsdCh0ZXh0KTsKICAgICAgfQogICAgICBzdGF0aWMgY3JlYXRlRnJvbUZpbGVFbnRyeShlbnRyeSkgewogICAgICAgIGNvbnN0IGMwID0gZW50cnkuY29udGVudC5ieXRlTGVuZ3RoID4gMCAmJiBlbnRyeS5jb250ZW50LnJlYWRVSW50OCgwKTsKICAgICAgICBjb25zdCBjMSA9IGVudHJ5LmNvbnRlbnQuYnl0ZUxlbmd0aCA+IDEgJiYgZW50cnkuY29udGVudC5yZWFkVUludDgoMSk7CiAgICAgICAgY29uc3QgYzIgPSBlbnRyeS5jb250ZW50LmJ5dGVMZW5ndGggPiAyICYmIGVudHJ5LmNvbnRlbnQucmVhZFVJbnQ4KDIpOwogICAgICAgIGlmIChjMCA9PSAyMzkgJiYgYzEgPT0gMTg3ICYmIGMyID09IDE5MSkgewogICAgICAgICAgcmV0dXJuIG5ldyBfVXBkYXRlUmVjb3JkZXJCYXNlKGVudHJ5LmNvbnRlbnQsIGVudHJ5LnBhdGgsICJ1dGYtOCIsIHRydWUpOwogICAgICAgIH0gZWxzZSBpZiAoYzAgPT09IDI1NSAmJiBjMSA9PSAyNTQpIHsKICAgICAgICAgIHJldHVybiBuZXcgX1VwZGF0ZVJlY29yZGVyQmFzZShlbnRyeS5jb250ZW50LCBlbnRyeS5wYXRoLCAidXRmLTE2bGUiLCB0cnVlKTsKICAgICAgICB9IGVsc2UgaWYgKGMwID09PSAyNTQgJiYgYzEgPT0gMjU1KSB7CiAgICAgICAgICByZXR1cm4gbmV3IF9VcGRhdGVSZWNvcmRlckJhc2UoZW50cnkuY29udGVudCwgZW50cnkucGF0aCwgInV0Zi0xNmJlIiwgdHJ1ZSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBuZXcgX1VwZGF0ZVJlY29yZGVyQmFzZShlbnRyeS5jb250ZW50LCBlbnRyeS5wYXRoKTsKICAgICAgfQogICAgICBnZXQgcGF0aCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcGF0aDsKICAgICAgfQogICAgICBfYXNzZXJ0SW5kZXgoaW5kZXgpIHsKICAgICAgICBpZiAoaW5kZXggPCAwIHx8IGluZGV4ID4gdGhpcy5jb250ZW50Lm9yaWdpbmFsLmxlbmd0aCkgewogICAgICAgICAgdGhyb3cgbmV3IEluZGV4T3V0T2ZCb3VuZEV4Y2VwdGlvbihpbmRleCwgMCwgdGhpcy5jb250ZW50Lm9yaWdpbmFsLmxlbmd0aCk7CiAgICAgICAgfQogICAgICB9CiAgICAgIC8vIFRoZXNlIGp1c3QgcmVjb3JkIGNoYW5nZXMuCiAgICAgIGluc2VydExlZnQoaW5kZXgsIGNvbnRlbnQpIHsKICAgICAgICB0aGlzLl9hc3NlcnRJbmRleChpbmRleCk7CiAgICAgICAgdGhpcy5jb250ZW50LmFwcGVuZExlZnQoaW5kZXgsIGNvbnRlbnQudG9TdHJpbmcoKSk7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgaW5zZXJ0UmlnaHQoaW5kZXgsIGNvbnRlbnQpIHsKICAgICAgICB0aGlzLl9hc3NlcnRJbmRleChpbmRleCk7CiAgICAgICAgdGhpcy5jb250ZW50LmFwcGVuZFJpZ2h0KGluZGV4LCBjb250ZW50LnRvU3RyaW5nKCkpOwogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIHJlbW92ZShpbmRleCwgbGVuZ3RoKSB7CiAgICAgICAgdGhpcy5fYXNzZXJ0SW5kZXgoaW5kZXgpOwogICAgICAgIHRoaXMuY29udGVudC5yZW1vdmUoaW5kZXgsIGluZGV4ICsgbGVuZ3RoKTsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBhcHBseShjb250ZW50KSB7CiAgICAgICAgaWYgKCFjb250ZW50LmVxdWFscyh0aGlzLmRhdGEpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuQ29udGVudEhhc011dGF0ZWRFeGNlcHRpb24odGhpcy5wYXRoKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgcmVzdWx0ID0gQnVmZmVyLmZyb20oKHRoaXMuYm9tID8gIlx1RkVGRiIgOiAiIikgKyB0aGlzLmNvbnRlbnQudG9TdHJpbmcoKSwgInV0Zi04Iik7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVwZGF0ZVJlY29yZGVyQmFzZSA9IFVwZGF0ZVJlY29yZGVyQmFzZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvc2NvcGVkLmpzCnZhciByZXF1aXJlX3Njb3BlZDIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvc2NvcGVkLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TY29wZWRUcmVlID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgZGVsZWdhdGVfMSA9IHJlcXVpcmVfZGVsZWdhdGUoKTsKICAgIHZhciBpbnRlcmZhY2VfMSA9IHJlcXVpcmVfaW50ZXJmYWNlMygpOwogICAgdmFyIFNjb3BlZEZpbGVFbnRyeSA9IGNsYXNzIHsKICAgICAgX2Jhc2U7CiAgICAgIHNjb3BlOwogICAgICBjb25zdHJ1Y3RvcihfYmFzZSwgc2NvcGUpIHsKICAgICAgICB0aGlzLl9iYXNlID0gX2Jhc2U7CiAgICAgICAgdGhpcy5zY29wZSA9IHNjb3BlOwogICAgICB9CiAgICAgIGdldCBwYXRoKCkgewogICAgICAgIHJldHVybiAoMCwgY29yZV8xLmpvaW4pKGNvcmVfMS5Ob3JtYWxpemVkUm9vdCwgKDAsIGNvcmVfMS5yZWxhdGl2ZSkodGhpcy5zY29wZSwgdGhpcy5fYmFzZS5wYXRoKSk7CiAgICAgIH0KICAgICAgZ2V0IGNvbnRlbnQoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UuY29udGVudDsKICAgICAgfQogICAgfTsKICAgIHZhciBTY29wZWREaXJFbnRyeSA9IGNsYXNzIF9TY29wZWREaXJFbnRyeSB7CiAgICAgIF9iYXNlOwogICAgICBzY29wZTsKICAgICAgY29uc3RydWN0b3IoX2Jhc2UsIHNjb3BlKSB7CiAgICAgICAgdGhpcy5fYmFzZSA9IF9iYXNlOwogICAgICAgIHRoaXMuc2NvcGUgPSBzY29wZTsKICAgICAgfQogICAgICBnZXQgcGFyZW50KCkgewogICAgICAgIGlmICghdGhpcy5fYmFzZS5wYXJlbnQgfHwgdGhpcy5fYmFzZS5wYXRoID09IHRoaXMuc2NvcGUpIHsKICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbmV3IF9TY29wZWREaXJFbnRyeSh0aGlzLl9iYXNlLnBhcmVudCwgdGhpcy5zY29wZSk7CiAgICAgIH0KICAgICAgZ2V0IHBhdGgoKSB7CiAgICAgICAgcmV0dXJuICgwLCBjb3JlXzEuam9pbikoY29yZV8xLk5vcm1hbGl6ZWRSb290LCAoMCwgY29yZV8xLnJlbGF0aXZlKSh0aGlzLnNjb3BlLCB0aGlzLl9iYXNlLnBhdGgpKTsKICAgICAgfQogICAgICBnZXQgc3ViZGlycygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5zdWJkaXJzOwogICAgICB9CiAgICAgIGdldCBzdWJmaWxlcygpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5zdWJmaWxlczsKICAgICAgfQogICAgICBkaXIobmFtZSkgewogICAgICAgIGNvbnN0IGVudHJ5ID0gdGhpcy5fYmFzZS5kaXIobmFtZSk7CiAgICAgICAgcmV0dXJuIGVudHJ5ICYmIG5ldyBfU2NvcGVkRGlyRW50cnkoZW50cnksIHRoaXMuc2NvcGUpOwogICAgICB9CiAgICAgIGZpbGUobmFtZSkgewogICAgICAgIGNvbnN0IGVudHJ5ID0gdGhpcy5fYmFzZS5maWxlKG5hbWUpOwogICAgICAgIHJldHVybiBlbnRyeSAmJiBuZXcgU2NvcGVkRmlsZUVudHJ5KGVudHJ5LCB0aGlzLnNjb3BlKTsKICAgICAgfQogICAgICB2aXNpdCh2aXNpdG9yKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UudmlzaXQoKHBhdGgsIGVudHJ5KSA9PiB7CiAgICAgICAgICB2aXNpdG9yKCgwLCBjb3JlXzEuam9pbikoY29yZV8xLk5vcm1hbGl6ZWRSb290LCAoMCwgY29yZV8xLnJlbGF0aXZlKSh0aGlzLnNjb3BlLCBwYXRoKSksIGVudHJ5ICYmIG5ldyBTY29wZWRGaWxlRW50cnkoZW50cnksIHRoaXMuc2NvcGUpKTsKICAgICAgICB9KTsKICAgICAgfQogICAgfTsKICAgIHZhciBTY29wZWRUcmVlID0gY2xhc3MgX1Njb3BlZFRyZWUgewogICAgICBfYmFzZTsKICAgICAgX3Jvb3Q7CiAgICAgIGNvbnN0cnVjdG9yKF9iYXNlLCBzY29wZSkgewogICAgICAgIHRoaXMuX2Jhc2UgPSBfYmFzZTsKICAgICAgICBjb25zdCBub3JtYWxpemVkU2NvcGUgPSAoMCwgY29yZV8xLm5vcm1hbGl6ZSkoIi8iICsgc2NvcGUpOwogICAgICAgIHRoaXMuX3Jvb3QgPSBuZXcgU2NvcGVkRGlyRW50cnkodGhpcy5fYmFzZS5nZXREaXIobm9ybWFsaXplZFNjb3BlKSwgbm9ybWFsaXplZFNjb3BlKTsKICAgICAgfQogICAgICBnZXQgcm9vdCgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcm9vdDsKICAgICAgfQogICAgICBicmFuY2goKSB7CiAgICAgICAgcmV0dXJuIG5ldyBfU2NvcGVkVHJlZSh0aGlzLl9iYXNlLmJyYW5jaCgpLCB0aGlzLl9yb290LnNjb3BlKTsKICAgICAgfQogICAgICBtZXJnZShvdGhlciwgc3RyYXRlZ3kpIHsKICAgICAgICBjb25zdCBzZWxmMiA9IHRoaXM7CiAgICAgICAgY29uc3QgZGVsZWdhdGUgPSBuZXcgY2xhc3MgZXh0ZW5kcyBkZWxlZ2F0ZV8xLkRlbGVnYXRlVHJlZSB7CiAgICAgICAgICBnZXQgYWN0aW9ucygpIHsKICAgICAgICAgICAgcmV0dXJuIG90aGVyLmFjdGlvbnMubWFwKChhY3Rpb24pID0+IHNlbGYyLl9mdWxsUGF0aEFjdGlvbihhY3Rpb24pKTsKICAgICAgICAgIH0KICAgICAgICB9KG90aGVyKTsKICAgICAgICB0aGlzLl9iYXNlLm1lcmdlKGRlbGVnYXRlLCBzdHJhdGVneSk7CiAgICAgIH0KICAgICAgLy8gUmVhZG9ubHkuCiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLnJlYWQodGhpcy5fZnVsbFBhdGgocGF0aCkpOwogICAgICB9CiAgICAgIHJlYWRUZXh0KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5yZWFkVGV4dCh0aGlzLl9mdWxsUGF0aChwYXRoKSk7CiAgICAgIH0KICAgICAgcmVhZEpzb24ocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLnJlYWRKc29uKHRoaXMuX2Z1bGxQYXRoKHBhdGgpKTsKICAgICAgfQogICAgICBleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLmV4aXN0cyh0aGlzLl9mdWxsUGF0aChwYXRoKSk7CiAgICAgIH0KICAgICAgZ2V0KHBhdGgpIHsKICAgICAgICBjb25zdCBlbnRyeSA9IHRoaXMuX2Jhc2UuZ2V0KHRoaXMuX2Z1bGxQYXRoKHBhdGgpKTsKICAgICAgICByZXR1cm4gZW50cnkgJiYgbmV3IFNjb3BlZEZpbGVFbnRyeShlbnRyeSwgdGhpcy5fcm9vdC5zY29wZSk7CiAgICAgIH0KICAgICAgZ2V0RGlyKHBhdGgpIHsKICAgICAgICBjb25zdCBlbnRyeSA9IHRoaXMuX2Jhc2UuZ2V0RGlyKHRoaXMuX2Z1bGxQYXRoKHBhdGgpKTsKICAgICAgICByZXR1cm4gZW50cnkgJiYgbmV3IFNjb3BlZERpckVudHJ5KGVudHJ5LCB0aGlzLl9yb290LnNjb3BlKTsKICAgICAgfQogICAgICB2aXNpdCh2aXNpdG9yKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3Jvb3QudmlzaXQodmlzaXRvcik7CiAgICAgIH0KICAgICAgLy8gQ2hhbmdlIGNvbnRlbnQgb2YgaG9zdCBmaWxlcy4KICAgICAgb3ZlcndyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5vdmVyd3JpdGUodGhpcy5fZnVsbFBhdGgocGF0aCksIGNvbnRlbnQpOwogICAgICB9CiAgICAgIGJlZ2luVXBkYXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5iZWdpblVwZGF0ZSh0aGlzLl9mdWxsUGF0aChwYXRoKSk7CiAgICAgIH0KICAgICAgY29tbWl0VXBkYXRlKHJlY29yZCkgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLmNvbW1pdFVwZGF0ZShyZWNvcmQpOwogICAgICB9CiAgICAgIC8vIFN0cnVjdHVyYWwgbWV0aG9kcy4KICAgICAgY3JlYXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5jcmVhdGUodGhpcy5fZnVsbFBhdGgocGF0aCksIGNvbnRlbnQpOwogICAgICB9CiAgICAgIGRlbGV0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Jhc2UuZGVsZXRlKHRoaXMuX2Z1bGxQYXRoKHBhdGgpKTsKICAgICAgfQogICAgICByZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICByZXR1cm4gdGhpcy5fYmFzZS5yZW5hbWUodGhpcy5fZnVsbFBhdGgoZnJvbSksIHRoaXMuX2Z1bGxQYXRoKHRvKSk7CiAgICAgIH0KICAgICAgYXBwbHkoYWN0aW9uLCBzdHJhdGVneSkgewogICAgICAgIHJldHVybiB0aGlzLl9iYXNlLmFwcGx5KHRoaXMuX2Z1bGxQYXRoQWN0aW9uKGFjdGlvbiksIHN0cmF0ZWd5KTsKICAgICAgfQogICAgICBnZXQgYWN0aW9ucygpIHsKICAgICAgICBjb25zdCBzY29wZWRBY3Rpb25zID0gW107CiAgICAgICAgZm9yIChjb25zdCBhY3Rpb24gb2YgdGhpcy5fYmFzZS5hY3Rpb25zKSB7CiAgICAgICAgICBpZiAoIWFjdGlvbi5wYXRoLnN0YXJ0c1dpdGgodGhpcy5fcm9vdC5zY29wZSArICIvIikpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoYWN0aW9uLmtpbmQgIT09ICJyIikgewogICAgICAgICAgICBzY29wZWRBY3Rpb25zLnB1c2goewogICAgICAgICAgICAgIC4uLmFjdGlvbiwKICAgICAgICAgICAgICBwYXRoOiAoMCwgY29yZV8xLmpvaW4pKGNvcmVfMS5Ob3JtYWxpemVkUm9vdCwgKDAsIGNvcmVfMS5yZWxhdGl2ZSkodGhpcy5fcm9vdC5zY29wZSwgYWN0aW9uLnBhdGgpKQogICAgICAgICAgICB9KTsKICAgICAgICAgIH0gZWxzZSBpZiAoYWN0aW9uLnRvLnN0YXJ0c1dpdGgodGhpcy5fcm9vdC5zY29wZSArICIvIikpIHsKICAgICAgICAgICAgc2NvcGVkQWN0aW9ucy5wdXNoKHsKICAgICAgICAgICAgICAuLi5hY3Rpb24sCiAgICAgICAgICAgICAgcGF0aDogKDAsIGNvcmVfMS5qb2luKShjb3JlXzEuTm9ybWFsaXplZFJvb3QsICgwLCBjb3JlXzEucmVsYXRpdmUpKHRoaXMuX3Jvb3Quc2NvcGUsIGFjdGlvbi5wYXRoKSksCiAgICAgICAgICAgICAgdG86ICgwLCBjb3JlXzEuam9pbikoY29yZV8xLk5vcm1hbGl6ZWRSb290LCAoMCwgY29yZV8xLnJlbGF0aXZlKSh0aGlzLl9yb290LnNjb3BlLCBhY3Rpb24udG8pKQogICAgICAgICAgICB9KTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIHNjb3BlZEFjdGlvbnM7CiAgICAgIH0KICAgICAgW2ludGVyZmFjZV8xLlRyZWVTeW1ib2xdKCkgewogICAgICAgIHJldHVybiB0aGlzOwogICAgICB9CiAgICAgIF9mdWxsUGF0aChwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCBjb3JlXzEuam9pbikodGhpcy5fcm9vdC5zY29wZSwgKDAsIGNvcmVfMS5ub3JtYWxpemUpKCIvIiArIHBhdGgpKTsKICAgICAgfQogICAgICBfZnVsbFBhdGhBY3Rpb24oYWN0aW9uKSB7CiAgICAgICAgbGV0IGZ1bGxQYXRoQWN0aW9uOwogICAgICAgIGlmIChhY3Rpb24ua2luZCA9PT0gInIiKSB7CiAgICAgICAgICBmdWxsUGF0aEFjdGlvbiA9IHsKICAgICAgICAgICAgLi4uYWN0aW9uLAogICAgICAgICAgICBwYXRoOiB0aGlzLl9mdWxsUGF0aChhY3Rpb24ucGF0aCksCiAgICAgICAgICAgIHRvOiB0aGlzLl9mdWxsUGF0aChhY3Rpb24udG8pCiAgICAgICAgICB9OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBmdWxsUGF0aEFjdGlvbiA9IHsKICAgICAgICAgICAgLi4uYWN0aW9uLAogICAgICAgICAgICBwYXRoOiB0aGlzLl9mdWxsUGF0aChhY3Rpb24ucGF0aCkKICAgICAgICAgIH07CiAgICAgICAgfQogICAgICAgIHJldHVybiBmdWxsUGF0aEFjdGlvbjsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNjb3BlZFRyZWUgPSBTY29wZWRUcmVlOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9ob3N0LXRyZWUuanMKdmFyIHJlcXVpcmVfaG9zdF90cmVlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2hvc3QtdHJlZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuRmlsdGVySG9zdFRyZWUgPSBleHBvcnRzMi5Ib3N0Q3JlYXRlVHJlZSA9IGV4cG9ydHMyLkhvc3RUcmVlID0gZXhwb3J0czIuSG9zdERpckVudHJ5ID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIganNvbmNfcGFyc2VyXzEgPSByZXF1aXJlX21haW4oKTsKICAgIHZhciBleGNlcHRpb25fMSA9IHJlcXVpcmVfZXhjZXB0aW9uMigpOwogICAgdmFyIGRlbGVnYXRlXzEgPSByZXF1aXJlX2RlbGVnYXRlKCk7CiAgICB2YXIgZW50cnlfMSA9IHJlcXVpcmVfZW50cnkoKTsKICAgIHZhciBpbnRlcmZhY2VfMSA9IHJlcXVpcmVfaW50ZXJmYWNlMygpOwogICAgdmFyIHJlY29yZGVyXzEgPSByZXF1aXJlX3JlY29yZGVyKCk7CiAgICB2YXIgc2NvcGVkXzEgPSByZXF1aXJlX3Njb3BlZDIoKTsKICAgIHZhciBfdW5pcXVlSWQgPSAwOwogICAgdmFyIEhvc3REaXJFbnRyeSA9IGNsYXNzIHsKICAgICAgcGFyZW50OwogICAgICBwYXRoOwogICAgICBfaG9zdDsKICAgICAgX3RyZWU7CiAgICAgIGNvbnN0cnVjdG9yKHBhcmVudCwgcGF0aCwgX2hvc3QsIF90cmVlKSB7CiAgICAgICAgdGhpcy5wYXJlbnQgPSBwYXJlbnQ7CiAgICAgICAgdGhpcy5wYXRoID0gcGF0aDsKICAgICAgICB0aGlzLl9ob3N0ID0gX2hvc3Q7CiAgICAgICAgdGhpcy5fdHJlZSA9IF90cmVlOwogICAgICB9CiAgICAgIGdldCBzdWJkaXJzKCkgewogICAgICAgIHJldHVybiB0aGlzLl9ob3N0Lmxpc3QodGhpcy5wYXRoKS5maWx0ZXIoKGZyYWdtZW50KSA9PiB0aGlzLl9ob3N0LmlzRGlyZWN0b3J5KCgwLCBjb3JlXzEuam9pbikodGhpcy5wYXRoLCBmcmFnbWVudCkpKTsKICAgICAgfQogICAgICBnZXQgc3ViZmlsZXMoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2hvc3QubGlzdCh0aGlzLnBhdGgpLmZpbHRlcigoZnJhZ21lbnQpID0+IHRoaXMuX2hvc3QuaXNGaWxlKCgwLCBjb3JlXzEuam9pbikodGhpcy5wYXRoLCBmcmFnbWVudCkpKTsKICAgICAgfQogICAgICBkaXIobmFtZSkgewogICAgICAgIHJldHVybiB0aGlzLl90cmVlLmdldERpcigoMCwgY29yZV8xLmpvaW4pKHRoaXMucGF0aCwgbmFtZSkpOwogICAgICB9CiAgICAgIGZpbGUobmFtZSkgewogICAgICAgIHJldHVybiB0aGlzLl90cmVlLmdldCgoMCwgY29yZV8xLmpvaW4pKHRoaXMucGF0aCwgbmFtZSkpOwogICAgICB9CiAgICAgIHZpc2l0KHZpc2l0b3IpIHsKICAgICAgICB0cnkgewogICAgICAgICAgdGhpcy5nZXRTdWJmaWxlc1JlY3Vyc2l2ZWx5KCkuZm9yRWFjaCgoZmlsZSkgPT4gdmlzaXRvcihmaWxlLnBhdGgsIGZpbGUpKTsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICBpZiAoZSAhPT0gaW50ZXJmYWNlXzEuRmlsZVZpc2l0b3JDYW5jZWxUb2tlbikgewogICAgICAgICAgICB0aHJvdyBlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgICBnZXRTdWJmaWxlc1JlY3Vyc2l2ZWx5KCkgewogICAgICAgIGZ1bmN0aW9uIF9yZWN1cnNlKGVudHJ5KSB7CiAgICAgICAgICByZXR1cm4gZW50cnkuc3ViZGlycy5yZWR1Y2UoKGZpbGVzLCBzdWJkaXIpID0+IFsuLi5maWxlcywgLi4uX3JlY3Vyc2UoZW50cnkuZGlyKHN1YmRpcikpXSwgZW50cnkuc3ViZmlsZXMubWFwKChzdWJmaWxlKSA9PiBlbnRyeS5maWxlKHN1YmZpbGUpKSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBfcmVjdXJzZSh0aGlzKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkhvc3REaXJFbnRyeSA9IEhvc3REaXJFbnRyeTsKICAgIHZhciBIb3N0VHJlZSA9IGNsYXNzIF9Ib3N0VHJlZSB7CiAgICAgIF9iYWNrZW5kOwogICAgICBfaWQgPSAtLV91bmlxdWVJZDsKICAgICAgX3JlY29yZDsKICAgICAgX3JlY29yZFN5bmM7CiAgICAgIF9hbmNlc3RyeSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIF9kaXJDYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIFtpbnRlcmZhY2VfMS5UcmVlU3ltYm9sXSgpIHsKICAgICAgICByZXR1cm4gdGhpczsKICAgICAgfQogICAgICBzdGF0aWMgaXNIb3N0VHJlZSh0cmVlKSB7CiAgICAgICAgaWYgKHRyZWUgaW5zdGFuY2VvZiBfSG9zdFRyZWUpIHsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgICBpZiAodHlwZW9mIHRyZWUgPT09ICJvYmplY3QiICYmIHR5cGVvZiB0cmVlLl9hbmNlc3RyeSA9PT0gIm9iamVjdCIpIHsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgICAgY29uc3RydWN0b3IoX2JhY2tlbmQgPSBuZXcgY29yZV8xLnZpcnR1YWxGcy5FbXB0eSgpKSB7CiAgICAgICAgdGhpcy5fYmFja2VuZCA9IF9iYWNrZW5kOwogICAgICAgIHRoaXMuX3JlY29yZCA9IG5ldyBjb3JlXzEudmlydHVhbEZzLkNvcmRIb3N0KG5ldyBjb3JlXzEudmlydHVhbEZzLlNhZmVSZWFkb25seUhvc3QoX2JhY2tlbmQpKTsKICAgICAgICB0aGlzLl9yZWNvcmRTeW5jID0gbmV3IGNvcmVfMS52aXJ0dWFsRnMuU3luY0RlbGVnYXRlSG9zdCh0aGlzLl9yZWNvcmQpOwogICAgICB9CiAgICAgIF9ub3JtYWxpemVQYXRoKHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIGNvcmVfMS5ub3JtYWxpemUpKCIvIiArIHBhdGgpOwogICAgICB9CiAgICAgIF93aWxsQ3JlYXRlKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcmVjb3JkLndpbGxDcmVhdGUocGF0aCk7CiAgICAgIH0KICAgICAgX3dpbGxPdmVyd3JpdGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLl9yZWNvcmQud2lsbE92ZXJ3cml0ZShwYXRoKTsKICAgICAgfQogICAgICBfd2lsbERlbGV0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3JlY29yZC53aWxsRGVsZXRlKHBhdGgpOwogICAgICB9CiAgICAgIF93aWxsUmVuYW1lKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcmVjb3JkLndpbGxSZW5hbWUocGF0aCk7CiAgICAgIH0KICAgICAgYnJhbmNoKCkgewogICAgICAgIGNvbnN0IGJyYW5jaGVkVHJlZSA9IG5ldyBfSG9zdFRyZWUodGhpcy5fYmFja2VuZCk7CiAgICAgICAgYnJhbmNoZWRUcmVlLl9yZWNvcmQgPSB0aGlzLl9yZWNvcmQuY2xvbmUoKTsKICAgICAgICBicmFuY2hlZFRyZWUuX3JlY29yZFN5bmMgPSBuZXcgY29yZV8xLnZpcnR1YWxGcy5TeW5jRGVsZWdhdGVIb3N0KGJyYW5jaGVkVHJlZS5fcmVjb3JkKTsKICAgICAgICBicmFuY2hlZFRyZWUuX2FuY2VzdHJ5ID0gbmV3IFNldCh0aGlzLl9hbmNlc3RyeSkuYWRkKHRoaXMuX2lkKTsKICAgICAgICByZXR1cm4gYnJhbmNoZWRUcmVlOwogICAgICB9CiAgICAgIGlzQW5jZXN0b3JPZih0cmVlKSB7CiAgICAgICAgaWYgKHRyZWUgaW5zdGFuY2VvZiBfSG9zdFRyZWUpIHsKICAgICAgICAgIHJldHVybiB0cmVlLl9hbmNlc3RyeS5oYXModGhpcy5faWQpOwogICAgICAgIH0KICAgICAgICBpZiAodHJlZSBpbnN0YW5jZW9mIGRlbGVnYXRlXzEuRGVsZWdhdGVUcmVlKSB7CiAgICAgICAgICByZXR1cm4gdGhpcy5pc0FuY2VzdG9yT2YodHJlZS5fb3RoZXIpOwogICAgICAgIH0KICAgICAgICBpZiAodHJlZSBpbnN0YW5jZW9mIHNjb3BlZF8xLlNjb3BlZFRyZWUpIHsKICAgICAgICAgIHJldHVybiB0aGlzLmlzQW5jZXN0b3JPZih0cmVlLl9iYXNlKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICAgIG1lcmdlKG90aGVyLCBzdHJhdGVneSA9IGludGVyZmFjZV8xLk1lcmdlU3RyYXRlZ3kuRGVmYXVsdCkgewogICAgICAgIGlmIChvdGhlciA9PT0gdGhpcykgewogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5pc0FuY2VzdG9yT2Yob3RoZXIpKSB7CiAgICAgICAgICBzdHJhdGVneSB8PSBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5Lk92ZXJ3cml0ZTsKICAgICAgICB9CiAgICAgICAgY29uc3QgY3JlYXRpb25Db25mbGljdEFsbG93ZWQgPSAoc3RyYXRlZ3kgJiBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkFsbG93Q3JlYXRpb25Db25mbGljdCkgPT0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5BbGxvd0NyZWF0aW9uQ29uZmxpY3Q7CiAgICAgICAgY29uc3Qgb3ZlcndyaXRlQ29uZmxpY3RBbGxvd2VkID0gKHN0cmF0ZWd5ICYgaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5BbGxvd092ZXJ3cml0ZUNvbmZsaWN0KSA9PSBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkFsbG93T3ZlcndyaXRlQ29uZmxpY3Q7CiAgICAgICAgY29uc3QgZGVsZXRlQ29uZmxpY3RBbGxvd2VkID0gKHN0cmF0ZWd5ICYgaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5BbGxvd0RlbGV0ZUNvbmZsaWN0KSA9PSBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkFsbG93RGVsZXRlQ29uZmxpY3Q7CiAgICAgICAgb3RoZXIuYWN0aW9ucy5mb3JFYWNoKChhY3Rpb24pID0+IHsKICAgICAgICAgIHN3aXRjaCAoYWN0aW9uLmtpbmQpIHsKICAgICAgICAgICAgY2FzZSAiYyI6IHsKICAgICAgICAgICAgICBjb25zdCB7IHBhdGgsIGNvbnRlbnQgfSA9IGFjdGlvbjsKICAgICAgICAgICAgICBpZiAodGhpcy5fd2lsbENyZWF0ZShwYXRoKSB8fCB0aGlzLl93aWxsT3ZlcndyaXRlKHBhdGgpIHx8IHRoaXMuZXhpc3RzKHBhdGgpKSB7CiAgICAgICAgICAgICAgICBjb25zdCBleGlzdGluZ0NvbnRlbnQgPSB0aGlzLnJlYWQocGF0aCk7CiAgICAgICAgICAgICAgICBpZiAoZXhpc3RpbmdDb250ZW50ICYmIGNvbnRlbnQuZXF1YWxzKGV4aXN0aW5nQ29udGVudCkpIHsKICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKCFjcmVhdGlvbkNvbmZsaWN0QWxsb3dlZCkgewogICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuTWVyZ2VDb25mbGljdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHRoaXMuX3JlY29yZC5vdmVyd3JpdGUocGF0aCwgY29udGVudCkuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHRoaXMuX3JlY29yZC5jcmVhdGUocGF0aCwgY29udGVudCkuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgICAgICBjYXNlICJvIjogewogICAgICAgICAgICAgIGNvbnN0IHsgcGF0aCwgY29udGVudCB9ID0gYWN0aW9uOwogICAgICAgICAgICAgIGlmICh0aGlzLl93aWxsRGVsZXRlKHBhdGgpICYmICFvdmVyd3JpdGVDb25mbGljdEFsbG93ZWQpIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5NZXJnZUNvbmZsaWN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAodGhpcy5fd2lsbE92ZXJ3cml0ZShwYXRoKSkgewogICAgICAgICAgICAgICAgY29uc3QgZXhpc3RpbmdDb250ZW50ID0gdGhpcy5yZWFkKHBhdGgpOwogICAgICAgICAgICAgICAgaWYgKGV4aXN0aW5nQ29udGVudCAmJiBjb250ZW50LmVxdWFscyhleGlzdGluZ0NvbnRlbnQpKSB7CiAgICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmICghb3ZlcndyaXRlQ29uZmxpY3RBbGxvd2VkKSB7CiAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5NZXJnZUNvbmZsaWN0RXhjZXB0aW9uKHBhdGgpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB0aGlzLl9yZWNvcmQud3JpdGUocGF0aCwgY29udGVudCkuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNhc2UgInIiOiB7CiAgICAgICAgICAgICAgY29uc3QgeyBwYXRoLCB0byB9ID0gYWN0aW9uOwogICAgICAgICAgICAgIGlmICh0aGlzLl93aWxsRGVsZXRlKHBhdGgpKSB7CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuTWVyZ2VDb25mbGljdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHRoaXMuX3dpbGxSZW5hbWUocGF0aCkpIHsKICAgICAgICAgICAgICAgIGlmICh0aGlzLl9yZWNvcmQud2lsbFJlbmFtZVRvKHBhdGgsIHRvKSkgewogICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuTWVyZ2VDb25mbGljdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgdGhpcy5yZW5hbWUocGF0aCwgdG8pOwogICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgICAgICBjYXNlICJkIjogewogICAgICAgICAgICAgIGNvbnN0IHsgcGF0aCB9ID0gYWN0aW9uOwogICAgICAgICAgICAgIGlmICh0aGlzLl93aWxsRGVsZXRlKHBhdGgpKSB7CiAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICghdGhpcy5leGlzdHMocGF0aCkgJiYgIWRlbGV0ZUNvbmZsaWN0QWxsb3dlZCkgewogICAgICAgICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLk1lcmdlQ29uZmxpY3RFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHRoaXMuX3JlY29yZFN5bmMuZGVsZXRlKHBhdGgpOwogICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9CiAgICAgIGdldCByb290KCkgewogICAgICAgIHJldHVybiB0aGlzLmdldERpcigiLyIpOwogICAgICB9CiAgICAgIC8vIFJlYWRvbmx5LgogICAgICByZWFkKHBhdGgpIHsKICAgICAgICBjb25zdCBlbnRyeSA9IHRoaXMuZ2V0KHBhdGgpOwogICAgICAgIHJldHVybiBlbnRyeSA/IGVudHJ5LmNvbnRlbnQgOiBudWxsOwogICAgICB9CiAgICAgIHJlYWRUZXh0KHBhdGgpIHsKICAgICAgICBjb25zdCBkYXRhID0gdGhpcy5yZWFkKHBhdGgpOwogICAgICAgIGlmIChkYXRhID09PSBudWxsKSB7CiAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgZGVjb2RlciA9IG5ldyBUZXh0RGVjb2RlcigidXRmLTgiLCB7IGZhdGFsOiB0cnVlIH0pOwogICAgICAgIHRyeSB7CiAgICAgICAgICByZXR1cm4gZGVjb2Rlci5kZWNvZGUoZGF0YSk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IgfHwgZS5jb2RlID09PSAiRVJSX0VOQ09ESU5HX0lOVkFMSURfRU5DT0RFRF9EQVRBIikgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEZhaWxlZCB0byBkZWNvZGUgIiR7cGF0aH0iIGFzIFVURi04IHRleHQuYCk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlOwogICAgICAgIH0KICAgICAgfQogICAgICByZWFkSnNvbihwYXRoKSB7CiAgICAgICAgY29uc3QgY29udGVudCA9IHRoaXMucmVhZFRleHQocGF0aCk7CiAgICAgICAgY29uc3QgZXJyb3JzID0gW107CiAgICAgICAgY29uc3QgcmVzdWx0ID0gKDAsIGpzb25jX3BhcnNlcl8xLnBhcnNlKShjb250ZW50LCBlcnJvcnMsIHsgYWxsb3dUcmFpbGluZ0NvbW1hOiB0cnVlIH0pOwogICAgICAgIGlmIChlcnJvcnNbMF0pIHsKICAgICAgICAgIGNvbnN0IHsgZXJyb3IsIG9mZnNldCB9ID0gZXJyb3JzWzBdOwogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBGYWlsZWQgdG8gcGFyc2UgIiR7cGF0aH0iIGFzIEpTT04uICR7KDAsIGpzb25jX3BhcnNlcl8xLnByaW50UGFyc2VFcnJvckNvZGUpKGVycm9yKX0gYXQgb2Zmc2V0OiAke29mZnNldH0uYCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgIH0KICAgICAgZXhpc3RzKHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcmVjb3JkU3luYy5pc0ZpbGUodGhpcy5fbm9ybWFsaXplUGF0aChwYXRoKSk7CiAgICAgIH0KICAgICAgZ2V0KHBhdGgpIHsKICAgICAgICBjb25zdCBwID0gdGhpcy5fbm9ybWFsaXplUGF0aChwYXRoKTsKICAgICAgICBpZiAodGhpcy5fcmVjb3JkU3luYy5pc0RpcmVjdG9yeShwKSkgewogICAgICAgICAgdGhyb3cgbmV3IGNvcmVfMS5QYXRoSXNEaXJlY3RvcnlFeGNlcHRpb24ocCk7CiAgICAgICAgfQogICAgICAgIGlmICghdGhpcy5fcmVjb3JkU3luYy5leGlzdHMocCkpIHsKICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbmV3IGVudHJ5XzEuTGF6eUZpbGVFbnRyeShwLCAoKSA9PiBCdWZmZXIuZnJvbSh0aGlzLl9yZWNvcmRTeW5jLnJlYWQocCkpKTsKICAgICAgfQogICAgICBnZXREaXIocGF0aCkgewogICAgICAgIGNvbnN0IHAgPSB0aGlzLl9ub3JtYWxpemVQYXRoKHBhdGgpOwogICAgICAgIGlmICh0aGlzLl9yZWNvcmRTeW5jLmlzRmlsZShwKSkgewogICAgICAgICAgdGhyb3cgbmV3IGNvcmVfMS5QYXRoSXNGaWxlRXhjZXB0aW9uKHApOwogICAgICAgIH0KICAgICAgICBsZXQgbWF5YmVDYWNoZSA9IHRoaXMuX2RpckNhY2hlLmdldChwKTsKICAgICAgICBpZiAoIW1heWJlQ2FjaGUpIHsKICAgICAgICAgIGxldCBwYXJlbnQgPSAoMCwgY29yZV8xLmRpcm5hbWUpKHApOwogICAgICAgICAgaWYgKHAgPT09IHBhcmVudCkgewogICAgICAgICAgICBwYXJlbnQgPSBudWxsOwogICAgICAgICAgfQogICAgICAgICAgbWF5YmVDYWNoZSA9IG5ldyBIb3N0RGlyRW50cnkocGFyZW50ICYmIHRoaXMuZ2V0RGlyKHBhcmVudCksIHAsIHRoaXMuX3JlY29yZFN5bmMsIHRoaXMpOwogICAgICAgICAgdGhpcy5fZGlyQ2FjaGUuc2V0KHAsIG1heWJlQ2FjaGUpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbWF5YmVDYWNoZTsKICAgICAgfQogICAgICB2aXNpdCh2aXNpdG9yKSB7CiAgICAgICAgdGhpcy5yb290LnZpc2l0KChwYXRoLCBlbnRyeSkgPT4gewogICAgICAgICAgdmlzaXRvcihwYXRoLCBlbnRyeSk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgLy8gQ2hhbmdlIGNvbnRlbnQgb2YgaG9zdCBmaWxlcy4KICAgICAgb3ZlcndyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICBjb25zdCBwID0gdGhpcy5fbm9ybWFsaXplUGF0aChwYXRoKTsKICAgICAgICBpZiAoIXRoaXMuX3JlY29yZFN5bmMuZXhpc3RzKHApKSB7CiAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihwKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgYyA9IHR5cGVvZiBjb250ZW50ID09ICJzdHJpbmciID8gQnVmZmVyLmZyb20oY29udGVudCkgOiBjb250ZW50OwogICAgICAgIHRoaXMuX3JlY29yZC5vdmVyd3JpdGUocCwgYykuc3Vic2NyaWJlKCk7CiAgICAgIH0KICAgICAgYmVnaW5VcGRhdGUocGF0aCkgewogICAgICAgIGNvbnN0IGVudHJ5ID0gdGhpcy5nZXQocGF0aCk7CiAgICAgICAgaWYgKCFlbnRyeSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZWNvcmRlcl8xLlVwZGF0ZVJlY29yZGVyQmFzZS5jcmVhdGVGcm9tRmlsZUVudHJ5KGVudHJ5KTsKICAgICAgfQogICAgICBjb21taXRVcGRhdGUocmVjb3JkKSB7CiAgICAgICAgaWYgKHJlY29yZCBpbnN0YW5jZW9mIHJlY29yZGVyXzEuVXBkYXRlUmVjb3JkZXJCYXNlKSB7CiAgICAgICAgICBjb25zdCBwYXRoID0gcmVjb3JkLnBhdGg7CiAgICAgICAgICBjb25zdCBlbnRyeSA9IHRoaXMuZ2V0KHBhdGgpOwogICAgICAgICAgaWYgKCFlbnRyeSkgewogICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuQ29udGVudEhhc011dGF0ZWRFeGNlcHRpb24ocGF0aCk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBjb25zdCBuZXdDb250ZW50ID0gcmVjb3JkLmFwcGx5KGVudHJ5LmNvbnRlbnQpOwogICAgICAgICAgICBpZiAoIW5ld0NvbnRlbnQuZXF1YWxzKGVudHJ5LmNvbnRlbnQpKSB7CiAgICAgICAgICAgICAgdGhpcy5vdmVyd3JpdGUocGF0aCwgbmV3Q29udGVudCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkludmFsaWRVcGRhdGVSZWNvcmRFeGNlcHRpb24oKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgLy8gU3RydWN0dXJhbCBtZXRob2RzLgogICAgICBjcmVhdGUocGF0aCwgY29udGVudCkgewogICAgICAgIGNvbnN0IHAgPSB0aGlzLl9ub3JtYWxpemVQYXRoKHBhdGgpOwogICAgICAgIGlmICh0aGlzLl9yZWNvcmRTeW5jLmV4aXN0cyhwKSkgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24ocCk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGMgPSB0eXBlb2YgY29udGVudCA9PSAic3RyaW5nIiA/IEJ1ZmZlci5mcm9tKGNvbnRlbnQpIDogY29udGVudDsKICAgICAgICB0aGlzLl9yZWNvcmQuY3JlYXRlKHAsIGMpLnN1YnNjcmliZSgpOwogICAgICB9CiAgICAgIGRlbGV0ZShwYXRoKSB7CiAgICAgICAgdGhpcy5fcmVjb3JkU3luYy5kZWxldGUodGhpcy5fbm9ybWFsaXplUGF0aChwYXRoKSk7CiAgICAgIH0KICAgICAgcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgdGhpcy5fcmVjb3JkU3luYy5yZW5hbWUodGhpcy5fbm9ybWFsaXplUGF0aChmcm9tKSwgdGhpcy5fbm9ybWFsaXplUGF0aCh0bykpOwogICAgICB9CiAgICAgIGFwcGx5KGFjdGlvbiwgc3RyYXRlZ3kpIHsKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuU2NoZW1hdGljc0V4Y2VwdGlvbigiQXBwbHkgbm90IGltcGxlbWVudGVkIG9uIGhvc3QgdHJlZXMuIik7CiAgICAgIH0KICAgICAgKmdlbmVyYXRlQWN0aW9ucygpIHsKICAgICAgICBmb3IgKGNvbnN0IHJlY29yZCBvZiB0aGlzLl9yZWNvcmQucmVjb3JkcygpKSB7CiAgICAgICAgICBzd2l0Y2ggKHJlY29yZC5raW5kKSB7CiAgICAgICAgICAgIGNhc2UgImNyZWF0ZSI6CiAgICAgICAgICAgICAgeWllbGQgewogICAgICAgICAgICAgICAgaWQ6IHRoaXMuX2lkLAogICAgICAgICAgICAgICAgcGFyZW50OiAwLAogICAgICAgICAgICAgICAga2luZDogImMiLAogICAgICAgICAgICAgICAgcGF0aDogcmVjb3JkLnBhdGgsCiAgICAgICAgICAgICAgICBjb250ZW50OiBCdWZmZXIuZnJvbShyZWNvcmQuY29udGVudCkKICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlICJvdmVyd3JpdGUiOgogICAgICAgICAgICAgIHlpZWxkIHsKICAgICAgICAgICAgICAgIGlkOiB0aGlzLl9pZCwKICAgICAgICAgICAgICAgIHBhcmVudDogMCwKICAgICAgICAgICAgICAgIGtpbmQ6ICJvIiwKICAgICAgICAgICAgICAgIHBhdGg6IHJlY29yZC5wYXRoLAogICAgICAgICAgICAgICAgY29udGVudDogQnVmZmVyLmZyb20ocmVjb3JkLmNvbnRlbnQpCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAicmVuYW1lIjoKICAgICAgICAgICAgICB5aWVsZCB7CiAgICAgICAgICAgICAgICBpZDogdGhpcy5faWQsCiAgICAgICAgICAgICAgICBwYXJlbnQ6IDAsCiAgICAgICAgICAgICAgICBraW5kOiAiciIsCiAgICAgICAgICAgICAgICBwYXRoOiByZWNvcmQuZnJvbSwKICAgICAgICAgICAgICAgIHRvOiByZWNvcmQudG8KICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlICJkZWxldGUiOgogICAgICAgICAgICAgIHlpZWxkIHsKICAgICAgICAgICAgICAgIGlkOiB0aGlzLl9pZCwKICAgICAgICAgICAgICAgIHBhcmVudDogMCwKICAgICAgICAgICAgICAgIGtpbmQ6ICJkIiwKICAgICAgICAgICAgICAgIHBhdGg6IHJlY29yZC5wYXRoCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgZ2V0IGFjdGlvbnMoKSB7CiAgICAgICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5nZW5lcmF0ZUFjdGlvbnMoKSk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Ib3N0VHJlZSA9IEhvc3RUcmVlOwogICAgdmFyIEhvc3RDcmVhdGVUcmVlID0gY2xhc3MgZXh0ZW5kcyBIb3N0VHJlZSB7CiAgICAgIGNvbnN0cnVjdG9yKGhvc3QpIHsKICAgICAgICBzdXBlcigpOwogICAgICAgIGNvbnN0IHRlbXBIb3N0ID0gbmV3IEhvc3RUcmVlKGhvc3QpOwogICAgICAgIHRlbXBIb3N0LnZpc2l0KChwYXRoKSA9PiB7CiAgICAgICAgICBjb25zdCBjb250ZW50ID0gdGVtcEhvc3QucmVhZChwYXRoKTsKICAgICAgICAgIGlmIChjb250ZW50KSB7CiAgICAgICAgICAgIHRoaXMuY3JlYXRlKHBhdGgsIGNvbnRlbnQpOwogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSG9zdENyZWF0ZVRyZWUgPSBIb3N0Q3JlYXRlVHJlZTsKICAgIHZhciBGaWx0ZXJIb3N0VHJlZSA9IGNsYXNzIGV4dGVuZHMgSG9zdFRyZWUgewogICAgICBjb25zdHJ1Y3Rvcih0cmVlLCBmaWx0ZXIgPSAoKSA9PiB0cnVlKSB7CiAgICAgICAgY29uc3QgbmV3QmFja2VuZCA9IG5ldyBjb3JlXzEudmlydHVhbEZzLlNpbXBsZU1lbW9yeUhvc3QoKTsKICAgICAgICBjb25zdCBvcmlnaW5hbEJhY2tlbmQgPSB0cmVlLl9iYWNrZW5kOwogICAgICAgIGNvbnN0IHBlbmRpbmdQYXRocyA9IFsiLyJdOwogICAgICAgIHdoaWxlIChwZW5kaW5nUGF0aHMubGVuZ3RoID4gMCkgewogICAgICAgICAgY29uc3QgY3VycmVudFBhdGggPSBwZW5kaW5nUGF0aHMucG9wKCk7CiAgICAgICAgICBpZiAoY3VycmVudFBhdGggPT09IHZvaWQgMCkgewogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICAgIGxldCBpc0RpcmVjdG9yeSA9IGZhbHNlOwogICAgICAgICAgb3JpZ2luYWxCYWNrZW5kLmlzRGlyZWN0b3J5KGN1cnJlbnRQYXRoKS5zdWJzY3JpYmUoKHZhbCkgPT4gaXNEaXJlY3RvcnkgPSB2YWwpOwogICAgICAgICAgaWYgKGlzRGlyZWN0b3J5KSB7CiAgICAgICAgICAgIG9yaWdpbmFsQmFja2VuZC5saXN0KGN1cnJlbnRQYXRoKS5zdWJzY3JpYmUoKHZhbCkgPT4gcGVuZGluZ1BhdGhzLnB1c2goLi4udmFsLm1hcCgocCkgPT4gKDAsIGNvcmVfMS5qb2luKShjdXJyZW50UGF0aCwgcCkpKSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgfQogICAgICAgICAgbGV0IGlzRmlsZSA9IGZhbHNlOwogICAgICAgICAgb3JpZ2luYWxCYWNrZW5kLmlzRmlsZShjdXJyZW50UGF0aCkuc3Vic2NyaWJlKCh2YWwpID0+IGlzRmlsZSA9IHZhbCk7CiAgICAgICAgICBpZiAoIWlzRmlsZSB8fCAhZmlsdGVyKGN1cnJlbnRQYXRoKSkgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIGxldCBjb250ZW50ID0gbnVsbDsKICAgICAgICAgIG9yaWdpbmFsQmFja2VuZC5yZWFkKGN1cnJlbnRQYXRoKS5zdWJzY3JpYmUoKHZhbCkgPT4gY29udGVudCA9IHZhbCk7CiAgICAgICAgICBpZiAoY29udGVudCAhPT0gbnVsbCkgewogICAgICAgICAgICBuZXdCYWNrZW5kLndyaXRlKGN1cnJlbnRQYXRoLCBjb250ZW50KS5zdWJzY3JpYmUoKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgc3VwZXIobmV3QmFja2VuZCk7CiAgICAgICAgZm9yIChjb25zdCBhY3Rpb24gb2YgdHJlZS5hY3Rpb25zKSB7CiAgICAgICAgICBpZiAoIWZpbHRlcihhY3Rpb24ucGF0aCkpIHsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBzd2l0Y2ggKGFjdGlvbi5raW5kKSB7CiAgICAgICAgICAgIGNhc2UgImMiOgogICAgICAgICAgICAgIHRoaXMuY3JlYXRlKGFjdGlvbi5wYXRoLCBhY3Rpb24uY29udGVudCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgImQiOgogICAgICAgICAgICAgIHRoaXMuZGVsZXRlKGFjdGlvbi5wYXRoKTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAibyI6CiAgICAgICAgICAgICAgdGhpcy5vdmVyd3JpdGUoYWN0aW9uLnBhdGgsIGFjdGlvbi5jb250ZW50KTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiciI6CiAgICAgICAgICAgICAgdGhpcy5yZW5hbWUoYWN0aW9uLnBhdGgsIGFjdGlvbi50byk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuRmlsdGVySG9zdFRyZWUgPSBGaWx0ZXJIb3N0VHJlZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvc3RhdGljLmpzCnZhciByZXF1aXJlX3N0YXRpYyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9zdGF0aWMuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLmVtcHR5ID0gZW1wdHk7CiAgICBleHBvcnRzMi5icmFuY2ggPSBicmFuY2g7CiAgICBleHBvcnRzMi5tZXJnZSA9IG1lcmdlOwogICAgZXhwb3J0czIucGFydGl0aW9uID0gcGFydGl0aW9uOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24yKCk7CiAgICB2YXIgaG9zdF90cmVlXzEgPSByZXF1aXJlX2hvc3RfdHJlZSgpOwogICAgdmFyIGludGVyZmFjZV8xID0gcmVxdWlyZV9pbnRlcmZhY2UzKCk7CiAgICBmdW5jdGlvbiBlbXB0eSgpIHsKICAgICAgcmV0dXJuIG5ldyBob3N0X3RyZWVfMS5Ib3N0VHJlZSgpOwogICAgfQogICAgZnVuY3Rpb24gYnJhbmNoKHRyZWUpIHsKICAgICAgcmV0dXJuIHRyZWUuYnJhbmNoKCk7CiAgICB9CiAgICBmdW5jdGlvbiBtZXJnZSh0cmVlLCBvdGhlciwgc3RyYXRlZ3kgPSBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkRlZmF1bHQpIHsKICAgICAgdHJlZS5tZXJnZShvdGhlciwgc3RyYXRlZ3kpOwogICAgICByZXR1cm4gdHJlZTsKICAgIH0KICAgIGZ1bmN0aW9uIHBhcnRpdGlvbih0cmVlLCBwcmVkaWNhdGUpIHsKICAgICAgaWYgKHRyZWUgaW5zdGFuY2VvZiBob3N0X3RyZWVfMS5Ib3N0VHJlZSkgewogICAgICAgIHJldHVybiBbCiAgICAgICAgICBuZXcgaG9zdF90cmVlXzEuRmlsdGVySG9zdFRyZWUodHJlZSwgcHJlZGljYXRlKSwKICAgICAgICAgIG5ldyBob3N0X3RyZWVfMS5GaWx0ZXJIb3N0VHJlZSh0cmVlLCAocGF0aCwgZW50cnkpID0+ICFwcmVkaWNhdGUocGF0aCwgZW50cnkpKQogICAgICAgIF07CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlNjaGVtYXRpY3NFeGNlcHRpb24oIlRyZWUgdHlwZSBpcyBub3Qgc3VwcG9ydGVkLiIpOwogICAgICB9CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL251bGwuanMKdmFyIHJlcXVpcmVfbnVsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9udWxsLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5OdWxsVHJlZSA9IGV4cG9ydHMyLk51bGxUcmVlRGlyRW50cnkgPSBleHBvcnRzMi5DYW5ub3RDcmVhdGVGaWxlRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBpbnRlcmZhY2VfMSA9IHJlcXVpcmVfaW50ZXJmYWNlMygpOwogICAgdmFyIHJlY29yZGVyXzEgPSByZXF1aXJlX3JlY29yZGVyKCk7CiAgICB2YXIgQ2Fubm90Q3JlYXRlRmlsZUV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihwYXRoKSB7CiAgICAgICAgc3VwZXIoYENhbm5vdCBjcmVhdGUgZmlsZSAiJHtwYXRofSIuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5DYW5ub3RDcmVhdGVGaWxlRXhjZXB0aW9uID0gQ2Fubm90Q3JlYXRlRmlsZUV4Y2VwdGlvbjsKICAgIHZhciBOdWxsVHJlZURpckVudHJ5ID0gY2xhc3MgX051bGxUcmVlRGlyRW50cnkgewogICAgICBwYXRoOwogICAgICBnZXQgcGFyZW50KCkgewogICAgICAgIHJldHVybiB0aGlzLnBhdGggPT0gIi8iID8gbnVsbCA6IG5ldyBfTnVsbFRyZWVEaXJFbnRyeSgoMCwgY29yZV8xLmRpcm5hbWUpKHRoaXMucGF0aCkpOwogICAgICB9CiAgICAgIGNvbnN0cnVjdG9yKHBhdGgpIHsKICAgICAgICB0aGlzLnBhdGggPSBwYXRoOwogICAgICB9CiAgICAgIHN1YmRpcnMgPSBbXTsKICAgICAgc3ViZmlsZXMgPSBbXTsKICAgICAgZGlyKG5hbWUpIHsKICAgICAgICByZXR1cm4gbmV3IF9OdWxsVHJlZURpckVudHJ5KCgwLCBjb3JlXzEuam9pbikodGhpcy5wYXRoLCBuYW1lKSk7CiAgICAgIH0KICAgICAgZmlsZShfbmFtZSkgewogICAgICAgIHJldHVybiBudWxsOwogICAgICB9CiAgICAgIHZpc2l0KCkgewogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTnVsbFRyZWVEaXJFbnRyeSA9IE51bGxUcmVlRGlyRW50cnk7CiAgICB2YXIgTnVsbFRyZWUgPSBjbGFzcyBfTnVsbFRyZWUgewogICAgICBbaW50ZXJmYWNlXzEuVHJlZVN5bWJvbF0oKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgIH0KICAgICAgYnJhbmNoKCkgewogICAgICAgIHJldHVybiBuZXcgX051bGxUcmVlKCk7CiAgICAgIH0KICAgICAgbWVyZ2UoX290aGVyLCBfc3RyYXRlZ3kpIHsKICAgICAgfQogICAgICByb290ID0gbmV3IE51bGxUcmVlRGlyRW50cnkoKDAsIGNvcmVfMS5ub3JtYWxpemUpKCIvIikpOwogICAgICAvLyBTaW1wbGUgcmVhZG9ubHkgZmlsZSBzeXN0ZW0gb3BlcmF0aW9ucy4KICAgICAgZXhpc3RzKF9wYXRoKSB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICAgIHJlYWQoX3BhdGgpIHsKICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgfQogICAgICByZWFkVGV4dChwYXRoKSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgIH0KICAgICAgcmVhZEpzb24ocGF0aCkgewogICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICB9CiAgICAgIGdldChfcGF0aCkgewogICAgICAgIHJldHVybiBudWxsOwogICAgICB9CiAgICAgIGdldERpcihwYXRoKSB7CiAgICAgICAgcmV0dXJuIG5ldyBOdWxsVHJlZURpckVudHJ5KCgwLCBjb3JlXzEubm9ybWFsaXplKSgiLyIgKyBwYXRoKSk7CiAgICAgIH0KICAgICAgdmlzaXQoKSB7CiAgICAgIH0KICAgICAgLy8gQ2hhbmdlIGNvbnRlbnQgb2YgaG9zdCBmaWxlcy4KICAgICAgYmVnaW5VcGRhdGUocGF0aCkgewogICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICB9CiAgICAgIGNvbW1pdFVwZGF0ZShyZWNvcmQpIHsKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihyZWNvcmQgaW5zdGFuY2VvZiByZWNvcmRlcl8xLlVwZGF0ZVJlY29yZGVyQmFzZSA/IHJlY29yZC5wYXRoIDogIjx1bmtub3duPiIpOwogICAgICB9CiAgICAgIC8vIENoYW5nZSBzdHJ1Y3R1cmUgb2YgdGhlIGhvc3QuCiAgICAgIGNvcHkocGF0aCwgX3RvKSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgIH0KICAgICAgZGVsZXRlKHBhdGgpIHsKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgfQogICAgICBjcmVhdGUocGF0aCwgX2NvbnRlbnQpIHsKICAgICAgICB0aHJvdyBuZXcgQ2Fubm90Q3JlYXRlRmlsZUV4Y2VwdGlvbihwYXRoKTsKICAgICAgfQogICAgICByZW5hbWUocGF0aCwgX3RvKSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgIH0KICAgICAgb3ZlcndyaXRlKHBhdGgsIF9jb250ZW50KSB7CiAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLkZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24ocGF0aCk7CiAgICAgIH0KICAgICAgYXBwbHkoX2FjdGlvbiwgX3N0cmF0ZWd5KSB7CiAgICAgIH0KICAgICAgZ2V0IGFjdGlvbnMoKSB7CiAgICAgICAgcmV0dXJuIFtdOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTnVsbFRyZWUgPSBOdWxsVHJlZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL2NhbGwuanMKdmFyIHJlcXVpcmVfY2FsbCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvY2FsbC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuSW52YWxpZFNvdXJjZVJlc3VsdEV4Y2VwdGlvbiA9IGV4cG9ydHMyLkludmFsaWRSdWxlUmVzdWx0RXhjZXB0aW9uID0gdm9pZCAwOwogICAgZXhwb3J0czIuY2FsbFNvdXJjZSA9IGNhbGxTb3VyY2U7CiAgICBleHBvcnRzMi5jYWxsUnVsZSA9IGNhbGxSdWxlOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBpbnRlcmZhY2VfMSA9IHJlcXVpcmVfaW50ZXJmYWNlMygpOwogICAgZnVuY3Rpb24gX2dldFR5cGVPZlJlc3VsdCh2YWx1ZSkgewogICAgICBpZiAodmFsdWUgPT09IHZvaWQgMCkgewogICAgICAgIHJldHVybiAidW5kZWZpbmVkIjsKICAgICAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gbnVsbCkgewogICAgICAgIHJldHVybiAibnVsbCI7CiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbHVlID09ICJmdW5jdGlvbiIpIHsKICAgICAgICByZXR1cm4gYEZ1bmN0aW9uKClgOwogICAgICB9IGVsc2UgaWYgKHR5cGVvZiB2YWx1ZSAhPSAib2JqZWN0IikgewogICAgICAgIHJldHVybiBgJHt0eXBlb2YgdmFsdWV9KCR7SlNPTi5zdHJpbmdpZnkodmFsdWUpfSlgOwogICAgICB9IGVsc2UgewogICAgICAgIGlmIChPYmplY3QuZ2V0UHJvdG90eXBlT2YodmFsdWUpID09IE9iamVjdCkgewogICAgICAgICAgcmV0dXJuIGBPYmplY3QoJHtKU09OLnN0cmluZ2lmeSh2YWx1ZSl9KWA7CiAgICAgICAgfSBlbHNlIGlmICh2YWx1ZS5jb25zdHJ1Y3RvcikgewogICAgICAgICAgcmV0dXJuIGBJbnN0YW5jZSBvZiBjbGFzcyAke3ZhbHVlLmNvbnN0cnVjdG9yLm5hbWV9YDsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuICJVbmtub3duIE9iamVjdCI7CiAgICAgICAgfQogICAgICB9CiAgICB9CiAgICB2YXIgSW52YWxpZFJ1bGVSZXN1bHRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IodmFsdWUpIHsKICAgICAgICBzdXBlcihgSW52YWxpZCBydWxlIHJlc3VsdDogJHtfZ2V0VHlwZU9mUmVzdWx0KHZhbHVlKX0uYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5JbnZhbGlkUnVsZVJlc3VsdEV4Y2VwdGlvbiA9IEludmFsaWRSdWxlUmVzdWx0RXhjZXB0aW9uOwogICAgdmFyIEludmFsaWRTb3VyY2VSZXN1bHRFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IodmFsdWUpIHsKICAgICAgICBzdXBlcihgSW52YWxpZCBzb3VyY2UgcmVzdWx0OiAke19nZXRUeXBlT2ZSZXN1bHQodmFsdWUpfS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkludmFsaWRTb3VyY2VSZXN1bHRFeGNlcHRpb24gPSBJbnZhbGlkU291cmNlUmVzdWx0RXhjZXB0aW9uOwogICAgZnVuY3Rpb24gY2FsbFNvdXJjZShzb3VyY2UsIGNvbnRleHQpIHsKICAgICAgcmV0dXJuICgwLCByeGpzXzEuZGVmZXIpKGFzeW5jICgpID0+IHsKICAgICAgICBsZXQgcmVzdWx0ID0gc291cmNlKGNvbnRleHQpOwogICAgICAgIGlmICgoMCwgcnhqc18xLmlzT2JzZXJ2YWJsZSkocmVzdWx0KSkgewogICAgICAgICAgcmVzdWx0ID0gYXdhaXQgKDAsIHJ4anNfMS5sYXN0VmFsdWVGcm9tKShyZXN1bHQucGlwZSgoMCwgcnhqc18xLmRlZmF1bHRJZkVtcHR5KSh2b2lkIDApKSk7CiAgICAgICAgfQogICAgICAgIGlmIChyZXN1bHQgJiYgaW50ZXJmYWNlXzEuVHJlZVN5bWJvbCBpbiByZXN1bHQpIHsKICAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgICAgfQogICAgICAgIHRocm93IG5ldyBJbnZhbGlkU291cmNlUmVzdWx0RXhjZXB0aW9uKHJlc3VsdCk7CiAgICAgIH0pOwogICAgfQogICAgZnVuY3Rpb24gY2FsbFJ1bGUocnVsZSwgaW5wdXQsIGNvbnRleHQpIHsKICAgICAgaWYgKCgwLCByeGpzXzEuaXNPYnNlcnZhYmxlKShpbnB1dCkpIHsKICAgICAgICByZXR1cm4gaW5wdXQucGlwZSgoMCwgcnhqc18xLm1lcmdlTWFwKSgoaW5wdXRUcmVlKSA9PiBjYWxsUnVsZUFzeW5jKHJ1bGUsIGlucHV0VHJlZSwgY29udGV4dCkpKTsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5kZWZlcikoKCkgPT4gY2FsbFJ1bGVBc3luYyhydWxlLCBpbnB1dCwgY29udGV4dCkpOwogICAgICB9CiAgICB9CiAgICBhc3luYyBmdW5jdGlvbiBjYWxsUnVsZUFzeW5jKHJ1bGUsIHRyZWUsIGNvbnRleHQpIHsKICAgICAgbGV0IHJlc3VsdCA9IGF3YWl0IHJ1bGUodHJlZSwgY29udGV4dCk7CiAgICAgIHdoaWxlICh0eXBlb2YgcmVzdWx0ID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgcmVzdWx0ID0gYXdhaXQgcmVzdWx0KHRyZWUsIGNvbnRleHQpOwogICAgICB9CiAgICAgIGlmICh0eXBlb2YgcmVzdWx0ID09PSAidW5kZWZpbmVkIikgewogICAgICAgIHJldHVybiB0cmVlOwogICAgICB9CiAgICAgIGlmICgoMCwgcnhqc18xLmlzT2JzZXJ2YWJsZSkocmVzdWx0KSkgewogICAgICAgIHJlc3VsdCA9IGF3YWl0ICgwLCByeGpzXzEubGFzdFZhbHVlRnJvbSkocmVzdWx0LnBpcGUoKDAsIHJ4anNfMS5kZWZhdWx0SWZFbXB0eSkodHJlZSkpKTsKICAgICAgfQogICAgICBpZiAocmVzdWx0ICYmIGludGVyZmFjZV8xLlRyZWVTeW1ib2wgaW4gcmVzdWx0KSB7CiAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgfQogICAgICB0aHJvdyBuZXcgSW52YWxpZFJ1bGVSZXN1bHRFeGNlcHRpb24ocmVzdWx0KTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9zY2hlbWF0aWMuanMKdmFyIHJlcXVpcmVfc2NoZW1hdGljID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9lbmdpbmUvc2NoZW1hdGljLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TY2hlbWF0aWNJbXBsID0gZXhwb3J0czIuSW52YWxpZFNjaGVtYXRpY3NOYW1lRXhjZXB0aW9uID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBjYWxsXzEgPSByZXF1aXJlX2NhbGwoKTsKICAgIHZhciBzY29wZWRfMSA9IHJlcXVpcmVfc2NvcGVkMigpOwogICAgdmFyIEludmFsaWRTY2hlbWF0aWNzTmFtZUV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihuYW1lKSB7CiAgICAgICAgc3VwZXIoYFNjaGVtYXRpY3MgaGFzIGludmFsaWQgbmFtZTogIiR7bmFtZX0iLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW52YWxpZFNjaGVtYXRpY3NOYW1lRXhjZXB0aW9uID0gSW52YWxpZFNjaGVtYXRpY3NOYW1lRXhjZXB0aW9uOwogICAgdmFyIFNjaGVtYXRpY0ltcGwgPSBjbGFzcyB7CiAgICAgIF9kZXNjcmlwdGlvbjsKICAgICAgX2ZhY3Rvcnk7CiAgICAgIF9jb2xsZWN0aW9uOwogICAgICBfZW5naW5lOwogICAgICBjb25zdHJ1Y3RvcihfZGVzY3JpcHRpb24sIF9mYWN0b3J5LCBfY29sbGVjdGlvbiwgX2VuZ2luZSkgewogICAgICAgIHRoaXMuX2Rlc2NyaXB0aW9uID0gX2Rlc2NyaXB0aW9uOwogICAgICAgIHRoaXMuX2ZhY3RvcnkgPSBfZmFjdG9yeTsKICAgICAgICB0aGlzLl9jb2xsZWN0aW9uID0gX2NvbGxlY3Rpb247CiAgICAgICAgdGhpcy5fZW5naW5lID0gX2VuZ2luZTsKICAgICAgICBpZiAoIV9kZXNjcmlwdGlvbi5uYW1lLm1hdGNoKC9eWy1AL18uYS16QS1aMC05XSskLykpIHsKICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkU2NoZW1hdGljc05hbWVFeGNlcHRpb24oX2Rlc2NyaXB0aW9uLm5hbWUpOwogICAgICAgIH0KICAgICAgfQogICAgICBnZXQgZGVzY3JpcHRpb24oKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2Rlc2NyaXB0aW9uOwogICAgICB9CiAgICAgIGdldCBjb2xsZWN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzLl9jb2xsZWN0aW9uOwogICAgICB9CiAgICAgIGNhbGwob3B0aW9ucywgaG9zdCwgcGFyZW50Q29udGV4dCwgZXhlY3V0aW9uT3B0aW9ucykgewogICAgICAgIGNvbnN0IGNvbnRleHQgPSB0aGlzLl9lbmdpbmUuY3JlYXRlQ29udGV4dCh0aGlzLCBwYXJlbnRDb250ZXh0LCBleGVjdXRpb25PcHRpb25zKTsKICAgICAgICByZXR1cm4gaG9zdC5waXBlKCgwLCByeGpzXzEuZmlyc3QpKCksICgwLCByeGpzXzEuY29uY2F0TWFwKSgodHJlZSkgPT4gdGhpcy5fZW5naW5lLnRyYW5zZm9ybU9wdGlvbnModGhpcywgb3B0aW9ucywgY29udGV4dCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKG8pID0+IFt0cmVlLCBvXSkpKSwgKDAsIHJ4anNfMS5jb25jYXRNYXApKChbdHJlZSwgdHJhbnNmb3JtZWRPcHRpb25zXSkgPT4gewogICAgICAgICAgbGV0IGlucHV0OwogICAgICAgICAgbGV0IHNjb3BlZCA9IGZhbHNlOwogICAgICAgICAgaWYgKGV4ZWN1dGlvbk9wdGlvbnMgJiYgZXhlY3V0aW9uT3B0aW9ucy5zY29wZSkgewogICAgICAgICAgICBzY29wZWQgPSB0cnVlOwogICAgICAgICAgICBpbnB1dCA9IG5ldyBzY29wZWRfMS5TY29wZWRUcmVlKHRyZWUsIGV4ZWN1dGlvbk9wdGlvbnMuc2NvcGUpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaW5wdXQgPSB0cmVlOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuICgwLCBjYWxsXzEuY2FsbFJ1bGUpKHRoaXMuX2ZhY3RvcnkodHJhbnNmb3JtZWRPcHRpb25zKSwgaW5wdXQsIGNvbnRleHQpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChvdXRwdXQpID0+IHsKICAgICAgICAgICAgaWYgKG91dHB1dCA9PT0gaW5wdXQpIHsKICAgICAgICAgICAgICByZXR1cm4gdHJlZTsKICAgICAgICAgICAgfSBlbHNlIGlmIChzY29wZWQpIHsKICAgICAgICAgICAgICB0cmVlLm1lcmdlKG91dHB1dCk7CiAgICAgICAgICAgICAgcmV0dXJuIHRyZWU7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgcmV0dXJuIG91dHB1dDsKICAgICAgICAgICAgfQogICAgICAgICAgfSkpOwogICAgICAgIH0pKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNjaGVtYXRpY0ltcGwgPSBTY2hlbWF0aWNJbXBsOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2VuZ2luZS5qcwp2YXIgcmVxdWlyZV9lbmdpbmUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9lbmdpbmUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLlNjaGVtYXRpY0VuZ2luZSA9IGV4cG9ydHMyLlRhc2tTY2hlZHVsZXIgPSBleHBvcnRzMi5Db2xsZWN0aW9uSW1wbCA9IGV4cG9ydHMyLlVua25vd25UYXNrRGVwZW5kZW5jeUV4Y2VwdGlvbiA9IGV4cG9ydHMyLlVucmVnaXN0ZXJlZFRhc2tFeGNlcHRpb24gPSBleHBvcnRzMi5TY2hlbWF0aWNFbmdpbmVDb25mbGljdGluZ0V4Y2VwdGlvbiA9IGV4cG9ydHMyLlByaXZhdGVTY2hlbWF0aWNFeGNlcHRpb24gPSBleHBvcnRzMi5Vbmtub3duU2NoZW1hdGljRXhjZXB0aW9uID0gZXhwb3J0czIuQ2lyY3VsYXJDb2xsZWN0aW9uRXhjZXB0aW9uID0gZXhwb3J0czIuVW5rbm93bkNvbGxlY3Rpb25FeGNlcHRpb24gPSBleHBvcnRzMi5Vbmtub3duVXJsU291cmNlUHJvdG9jb2wgPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGludGVyZmFjZV8xID0gcmVxdWlyZV9pbnRlcmZhY2UzKCk7CiAgICB2YXIgbnVsbF8xID0gcmVxdWlyZV9udWxsKCk7CiAgICB2YXIgc3RhdGljXzEgPSByZXF1aXJlX3N0YXRpYygpOwogICAgdmFyIHNjaGVtYXRpY18xID0gcmVxdWlyZV9zY2hlbWF0aWMoKTsKICAgIHZhciBVbmtub3duVXJsU291cmNlUHJvdG9jb2wgPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IodXJsMykgewogICAgICAgIHN1cGVyKGBVbmtub3duIFByb3RvY29sIG9uIHVybCAiJHt1cmwzfSIuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Vbmtub3duVXJsU291cmNlUHJvdG9jb2wgPSBVbmtub3duVXJsU291cmNlUHJvdG9jb2w7CiAgICB2YXIgVW5rbm93bkNvbGxlY3Rpb25FeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBVbmtub3duIGNvbGxlY3Rpb24gIiR7bmFtZX0iLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuVW5rbm93bkNvbGxlY3Rpb25FeGNlcHRpb24gPSBVbmtub3duQ29sbGVjdGlvbkV4Y2VwdGlvbjsKICAgIHZhciBDaXJjdWxhckNvbGxlY3Rpb25FeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBDaXJjdWxhciBjb2xsZWN0aW9uIHJlZmVyZW5jZSAiJHtuYW1lfSIuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5DaXJjdWxhckNvbGxlY3Rpb25FeGNlcHRpb24gPSBDaXJjdWxhckNvbGxlY3Rpb25FeGNlcHRpb247CiAgICB2YXIgVW5rbm93blNjaGVtYXRpY0V4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihuYW1lLCBjb2xsZWN0aW9uKSB7CiAgICAgICAgc3VwZXIoYFNjaGVtYXRpYyAiJHtuYW1lfSIgbm90IGZvdW5kIGluIGNvbGxlY3Rpb24gIiR7Y29sbGVjdGlvbi5uYW1lfSIuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5Vbmtub3duU2NoZW1hdGljRXhjZXB0aW9uID0gVW5rbm93blNjaGVtYXRpY0V4Y2VwdGlvbjsKICAgIHZhciBQcml2YXRlU2NoZW1hdGljRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKG5hbWUsIGNvbGxlY3Rpb24pIHsKICAgICAgICBzdXBlcihgU2NoZW1hdGljICIke25hbWV9IiBub3QgZm91bmQgaW4gY29sbGVjdGlvbiAiJHtjb2xsZWN0aW9uLm5hbWV9Ii5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlByaXZhdGVTY2hlbWF0aWNFeGNlcHRpb24gPSBQcml2YXRlU2NoZW1hdGljRXhjZXB0aW9uOwogICAgdmFyIFNjaGVtYXRpY0VuZ2luZUNvbmZsaWN0aW5nRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgIHN1cGVyKGBBIHNjaGVtYXRpYyB3YXMgY2FsbGVkIGZyb20gYSBkaWZmZXJlbnQgZW5naW5lIGFzIGl0cyBwYXJlbnQuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5TY2hlbWF0aWNFbmdpbmVDb25mbGljdGluZ0V4Y2VwdGlvbiA9IFNjaGVtYXRpY0VuZ2luZUNvbmZsaWN0aW5nRXhjZXB0aW9uOwogICAgdmFyIFVucmVnaXN0ZXJlZFRhc2tFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSwgc2NoZW1hdGljKSB7CiAgICAgICAgY29uc3QgYWRkZW5kdW0gPSBzY2hlbWF0aWMgPyBgIGluIHNjaGVtYXRpYyAiJHtzY2hlbWF0aWMubmFtZX0iYCA6ICIiOwogICAgICAgIHN1cGVyKGBVbnJlZ2lzdGVyZWQgdGFzayAiJHtuYW1lfSIke2FkZGVuZHVtfS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVucmVnaXN0ZXJlZFRhc2tFeGNlcHRpb24gPSBVbnJlZ2lzdGVyZWRUYXNrRXhjZXB0aW9uOwogICAgdmFyIFVua25vd25UYXNrRGVwZW5kZW5jeUV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihpZCkgewogICAgICAgIHN1cGVyKGBVbmtub3duIHRhc2sgZGVwZW5kZW5jeSBbSUQ6ICR7aWQuaWR9XS5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVua25vd25UYXNrRGVwZW5kZW5jeUV4Y2VwdGlvbiA9IFVua25vd25UYXNrRGVwZW5kZW5jeUV4Y2VwdGlvbjsKICAgIHZhciBDb2xsZWN0aW9uSW1wbCA9IGNsYXNzIHsKICAgICAgX2Rlc2NyaXB0aW9uOwogICAgICBfZW5naW5lOwogICAgICBiYXNlRGVzY3JpcHRpb25zOwogICAgICBjb25zdHJ1Y3RvcihfZGVzY3JpcHRpb24sIF9lbmdpbmUsIGJhc2VEZXNjcmlwdGlvbnMpIHsKICAgICAgICB0aGlzLl9kZXNjcmlwdGlvbiA9IF9kZXNjcmlwdGlvbjsKICAgICAgICB0aGlzLl9lbmdpbmUgPSBfZW5naW5lOwogICAgICAgIHRoaXMuYmFzZURlc2NyaXB0aW9ucyA9IGJhc2VEZXNjcmlwdGlvbnM7CiAgICAgIH0KICAgICAgZ2V0IGRlc2NyaXB0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzLl9kZXNjcmlwdGlvbjsKICAgICAgfQogICAgICBnZXQgbmFtZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5kZXNjcmlwdGlvbi5uYW1lIHx8ICI8dW5rbm93bj4iOwogICAgICB9CiAgICAgIGNyZWF0ZVNjaGVtYXRpYyhuYW1lLCBhbGxvd1ByaXZhdGUgPSBmYWxzZSkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmdpbmUuY3JlYXRlU2NoZW1hdGljKG5hbWUsIHRoaXMsIGFsbG93UHJpdmF0ZSk7CiAgICAgIH0KICAgICAgbGlzdFNjaGVtYXRpY05hbWVzKGluY2x1ZGVIaWRkZW4pIHsKICAgICAgICByZXR1cm4gdGhpcy5fZW5naW5lLmxpc3RTY2hlbWF0aWNOYW1lcyh0aGlzLCBpbmNsdWRlSGlkZGVuKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkNvbGxlY3Rpb25JbXBsID0gQ29sbGVjdGlvbkltcGw7CiAgICB2YXIgVGFza1NjaGVkdWxlciA9IGNsYXNzIF9UYXNrU2NoZWR1bGVyIHsKICAgICAgX2NvbnRleHQ7CiAgICAgIF9xdWV1ZSA9IG5ldyBjb3JlXzEuUHJpb3JpdHlRdWV1ZSgoeCwgeSkgPT4geC5wcmlvcml0eSAtIHkucHJpb3JpdHkpOwogICAgICBfdGFza0lkcyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIHN0YXRpYyBfdGFza0lkQ291bnRlciA9IDE7CiAgICAgIGNvbnN0cnVjdG9yKF9jb250ZXh0KSB7CiAgICAgICAgdGhpcy5fY29udGV4dCA9IF9jb250ZXh0OwogICAgICB9CiAgICAgIF9jYWxjdWxhdGVQcmlvcml0eShkZXBlbmRlbmNpZXMpIHsKICAgICAgICBpZiAoZGVwZW5kZW5jaWVzLnNpemUgPT09IDApIHsKICAgICAgICAgIHJldHVybiAwOwogICAgICAgIH0KICAgICAgICBjb25zdCBwcmlvID0gWy4uLmRlcGVuZGVuY2llc10ucmVkdWNlKChwcmlvMiwgdGFzaykgPT4gcHJpbzIgKyB0YXNrLnByaW9yaXR5LCAxKTsKICAgICAgICByZXR1cm4gcHJpbzsKICAgICAgfQogICAgICBfbWFwRGVwZW5kZW5jaWVzKGRlcGVuZGVuY2llcykgewogICAgICAgIGlmICghZGVwZW5kZW5jaWVzKSB7CiAgICAgICAgICByZXR1cm4gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgdGFza3MgPSBkZXBlbmRlbmNpZXMubWFwKChkZXApID0+IHsKICAgICAgICAgIGNvbnN0IHRhc2sgPSB0aGlzLl90YXNrSWRzLmdldChkZXApOwogICAgICAgICAgaWYgKCF0YXNrKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBVbmtub3duVGFza0RlcGVuZGVuY3lFeGNlcHRpb24oZGVwKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0YXNrOwogICAgICAgIH0pOwogICAgICAgIHJldHVybiBuZXcgU2V0KHRhc2tzKTsKICAgICAgfQogICAgICBzY2hlZHVsZSh0YXNrQ29uZmlndXJhdGlvbikgewogICAgICAgIGNvbnN0IGRlcGVuZGVuY2llcyA9IHRoaXMuX21hcERlcGVuZGVuY2llcyh0YXNrQ29uZmlndXJhdGlvbi5kZXBlbmRlbmNpZXMpOwogICAgICAgIGNvbnN0IHByaW9yaXR5ID0gdGhpcy5fY2FsY3VsYXRlUHJpb3JpdHkoZGVwZW5kZW5jaWVzKTsKICAgICAgICBjb25zdCB0YXNrID0gewogICAgICAgICAgaWQ6IF9UYXNrU2NoZWR1bGVyLl90YXNrSWRDb3VudGVyKyssCiAgICAgICAgICBwcmlvcml0eSwKICAgICAgICAgIGNvbmZpZ3VyYXRpb246IHRhc2tDb25maWd1cmF0aW9uLAogICAgICAgICAgY29udGV4dDogdGhpcy5fY29udGV4dAogICAgICAgIH07CiAgICAgICAgdGhpcy5fcXVldWUucHVzaCh0YXNrKTsKICAgICAgICBjb25zdCBpZCA9IHsgaWQ6IHRhc2suaWQgfTsKICAgICAgICB0aGlzLl90YXNrSWRzLnNldChpZCwgdGFzayk7CiAgICAgICAgcmV0dXJuIGlkOwogICAgICB9CiAgICAgIGZpbmFsaXplKCkgewogICAgICAgIGNvbnN0IHRhc2tzID0gdGhpcy5fcXVldWUudG9BcnJheSgpOwogICAgICAgIHRoaXMuX3F1ZXVlLmNsZWFyKCk7CiAgICAgICAgdGhpcy5fdGFza0lkcy5jbGVhcigpOwogICAgICAgIHJldHVybiB0YXNrczsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlRhc2tTY2hlZHVsZXIgPSBUYXNrU2NoZWR1bGVyOwogICAgdmFyIFNjaGVtYXRpY0VuZ2luZSA9IGNsYXNzIHsKICAgICAgX2hvc3Q7CiAgICAgIF93b3JrZmxvdzsKICAgICAgX2NvbGxlY3Rpb25DYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF9zY2hlbWF0aWNDYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgV2Vha01hcCgpOwogICAgICBfdGFza1NjaGVkdWxlcnMgPSBuZXcgQXJyYXkoKTsKICAgICAgY29uc3RydWN0b3IoX2hvc3QsIF93b3JrZmxvdykgewogICAgICAgIHRoaXMuX2hvc3QgPSBfaG9zdDsKICAgICAgICB0aGlzLl93b3JrZmxvdyA9IF93b3JrZmxvdzsKICAgICAgfQogICAgICBnZXQgd29ya2Zsb3coKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3dvcmtmbG93IHx8IG51bGw7CiAgICAgIH0KICAgICAgZ2V0IGRlZmF1bHRNZXJnZVN0cmF0ZWd5KCkgewogICAgICAgIHJldHVybiB0aGlzLl9ob3N0LmRlZmF1bHRNZXJnZVN0cmF0ZWd5IHx8IGludGVyZmFjZV8xLk1lcmdlU3RyYXRlZ3kuRGVmYXVsdDsKICAgICAgfQogICAgICBjcmVhdGVDb2xsZWN0aW9uKG5hbWUsIHJlcXVlc3RlcikgewogICAgICAgIGxldCBjb2xsZWN0aW9uID0gdGhpcy5fY29sbGVjdGlvbkNhY2hlLmdldChuYW1lKTsKICAgICAgICBpZiAoY29sbGVjdGlvbikgewogICAgICAgICAgcmV0dXJuIGNvbGxlY3Rpb247CiAgICAgICAgfQogICAgICAgIGNvbnN0IFtkZXNjcmlwdGlvbiwgYmFzZXNdID0gdGhpcy5fY3JlYXRlQ29sbGVjdGlvbkRlc2NyaXB0aW9uKG5hbWUsIHJlcXVlc3Rlcj8uZGVzY3JpcHRpb24pOwogICAgICAgIGNvbGxlY3Rpb24gPSBuZXcgQ29sbGVjdGlvbkltcGwoZGVzY3JpcHRpb24sIHRoaXMsIGJhc2VzKTsKICAgICAgICB0aGlzLl9jb2xsZWN0aW9uQ2FjaGUuc2V0KG5hbWUsIGNvbGxlY3Rpb24pOwogICAgICAgIHRoaXMuX3NjaGVtYXRpY0NhY2hlLnNldChjb2xsZWN0aW9uLCAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpKTsKICAgICAgICByZXR1cm4gY29sbGVjdGlvbjsKICAgICAgfQogICAgICBfY3JlYXRlQ29sbGVjdGlvbkRlc2NyaXB0aW9uKG5hbWUsIHJlcXVlc3RlciwgcGFyZW50TmFtZXMpIHsKICAgICAgICBjb25zdCBkZXNjcmlwdGlvbiA9IHRoaXMuX2hvc3QuY3JlYXRlQ29sbGVjdGlvbkRlc2NyaXB0aW9uKG5hbWUsIHJlcXVlc3Rlcik7CiAgICAgICAgaWYgKCFkZXNjcmlwdGlvbikgewogICAgICAgICAgdGhyb3cgbmV3IFVua25vd25Db2xsZWN0aW9uRXhjZXB0aW9uKG5hbWUpOwogICAgICAgIH0KICAgICAgICBpZiAocGFyZW50TmFtZXMgJiYgcGFyZW50TmFtZXMuaGFzKGRlc2NyaXB0aW9uLm5hbWUpKSB7CiAgICAgICAgICB0aHJvdyBuZXcgQ2lyY3VsYXJDb2xsZWN0aW9uRXhjZXB0aW9uKG5hbWUpOwogICAgICAgIH0KICAgICAgICBjb25zdCBiYXNlcyA9IG5ldyBBcnJheSgpOwogICAgICAgIGlmIChkZXNjcmlwdGlvbi5leHRlbmRzKSB7CiAgICAgICAgICBwYXJlbnROYW1lcyA9IChwYXJlbnROYW1lcyB8fCAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpKS5hZGQoZGVzY3JpcHRpb24ubmFtZSk7CiAgICAgICAgICBmb3IgKGNvbnN0IGJhc2VOYW1lIG9mIGRlc2NyaXB0aW9uLmV4dGVuZHMpIHsKICAgICAgICAgICAgY29uc3QgW2Jhc2UsIGJhc2VCYXNlc10gPSB0aGlzLl9jcmVhdGVDb2xsZWN0aW9uRGVzY3JpcHRpb24oYmFzZU5hbWUsIGRlc2NyaXB0aW9uLCBuZXcgU2V0KHBhcmVudE5hbWVzKSk7CiAgICAgICAgICAgIGJhc2VzLnVuc2hpZnQoYmFzZSwgLi4uYmFzZUJhc2VzKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIFtkZXNjcmlwdGlvbiwgYmFzZXNdOwogICAgICB9CiAgICAgIGNyZWF0ZUNvbnRleHQoc2NoZW1hdGljLCBwYXJlbnQsIGV4ZWN1dGlvbk9wdGlvbnMpIHsKICAgICAgICBpZiAocGFyZW50ICYmIHBhcmVudC5lbmdpbmUgJiYgcGFyZW50LmVuZ2luZSAhPT0gdGhpcykgewogICAgICAgICAgdGhyb3cgbmV3IFNjaGVtYXRpY0VuZ2luZUNvbmZsaWN0aW5nRXhjZXB0aW9uKCk7CiAgICAgICAgfQogICAgICAgIGxldCBpbnRlcmFjdGl2ZSA9IHRydWU7CiAgICAgICAgaWYgKGV4ZWN1dGlvbk9wdGlvbnMgJiYgZXhlY3V0aW9uT3B0aW9ucy5pbnRlcmFjdGl2ZSAhPSB2b2lkIDApIHsKICAgICAgICAgIGludGVyYWN0aXZlID0gZXhlY3V0aW9uT3B0aW9ucy5pbnRlcmFjdGl2ZTsKICAgICAgICB9IGVsc2UgaWYgKHBhcmVudCAmJiBwYXJlbnQuaW50ZXJhY3RpdmUgIT0gdm9pZCAwKSB7CiAgICAgICAgICBpbnRlcmFjdGl2ZSA9IHBhcmVudC5pbnRlcmFjdGl2ZTsKICAgICAgICB9CiAgICAgICAgbGV0IGNvbnRleHQgPSB7CiAgICAgICAgICBkZWJ1ZzogcGFyZW50ICYmIHBhcmVudC5kZWJ1ZyB8fCBmYWxzZSwKICAgICAgICAgIGVuZ2luZTogdGhpcywKICAgICAgICAgIGxvZ2dlcjogcGFyZW50ICYmIHBhcmVudC5sb2dnZXIgJiYgcGFyZW50LmxvZ2dlci5jcmVhdGVDaGlsZChzY2hlbWF0aWMuZGVzY3JpcHRpb24ubmFtZSkgfHwgbmV3IGNvcmVfMS5sb2dnaW5nLk51bGxMb2dnZXIoKSwKICAgICAgICAgIHNjaGVtYXRpYywKICAgICAgICAgIHN0cmF0ZWd5OiBwYXJlbnQgJiYgcGFyZW50LnN0cmF0ZWd5ICE9PSB2b2lkIDAgPyBwYXJlbnQuc3RyYXRlZ3kgOiB0aGlzLmRlZmF1bHRNZXJnZVN0cmF0ZWd5LAogICAgICAgICAgaW50ZXJhY3RpdmUsCiAgICAgICAgICBhZGRUYXNrCiAgICAgICAgfTsKICAgICAgICBjb25zdCBtYXliZU5ld0NvbnRleHQgPSB0aGlzLl9ob3N0LnRyYW5zZm9ybUNvbnRleHQoY29udGV4dCk7CiAgICAgICAgaWYgKG1heWJlTmV3Q29udGV4dCkgewogICAgICAgICAgY29udGV4dCA9IG1heWJlTmV3Q29udGV4dDsKICAgICAgICB9CiAgICAgICAgY29uc3QgdGFza1NjaGVkdWxlciA9IG5ldyBUYXNrU2NoZWR1bGVyKGNvbnRleHQpOwogICAgICAgIGNvbnN0IGhvc3QgPSB0aGlzLl9ob3N0OwogICAgICAgIHRoaXMuX3Rhc2tTY2hlZHVsZXJzLnB1c2godGFza1NjaGVkdWxlcik7CiAgICAgICAgZnVuY3Rpb24gYWRkVGFzayh0YXNrLCBkZXBlbmRlbmNpZXMpIHsKICAgICAgICAgIGNvbnN0IGNvbmZpZyA9IHRhc2sudG9Db25maWd1cmF0aW9uKCk7CiAgICAgICAgICBpZiAoIWhvc3QuaGFzVGFza0V4ZWN1dG9yKGNvbmZpZy5uYW1lKSkgewogICAgICAgICAgICB0aHJvdyBuZXcgVW5yZWdpc3RlcmVkVGFza0V4Y2VwdGlvbihjb25maWcubmFtZSwgc2NoZW1hdGljLmRlc2NyaXB0aW9uKTsKICAgICAgICAgIH0KICAgICAgICAgIGNvbmZpZy5kZXBlbmRlbmNpZXMgPSBjb25maWcuZGVwZW5kZW5jaWVzIHx8IFtdOwogICAgICAgICAgaWYgKGRlcGVuZGVuY2llcykgewogICAgICAgICAgICBjb25maWcuZGVwZW5kZW5jaWVzLnVuc2hpZnQoLi4uZGVwZW5kZW5jaWVzKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiB0YXNrU2NoZWR1bGVyLnNjaGVkdWxlKGNvbmZpZyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBjb250ZXh0OwogICAgICB9CiAgICAgIGNyZWF0ZVNjaGVtYXRpYyhuYW1lLCBjb2xsZWN0aW9uLCBhbGxvd1ByaXZhdGUgPSBmYWxzZSkgewogICAgICAgIGNvbnN0IHNjaGVtYXRpY01hcCA9IHRoaXMuX3NjaGVtYXRpY0NhY2hlLmdldChjb2xsZWN0aW9uKTsKICAgICAgICBsZXQgc2NoZW1hdGljID0gc2NoZW1hdGljTWFwPy5nZXQobmFtZSk7CiAgICAgICAgaWYgKHNjaGVtYXRpYykgewogICAgICAgICAgcmV0dXJuIHNjaGVtYXRpYzsKICAgICAgICB9CiAgICAgICAgbGV0IGNvbGxlY3Rpb25EZXNjcmlwdGlvbiA9IGNvbGxlY3Rpb24uZGVzY3JpcHRpb247CiAgICAgICAgbGV0IGRlc2NyaXB0aW9uID0gdGhpcy5faG9zdC5jcmVhdGVTY2hlbWF0aWNEZXNjcmlwdGlvbihuYW1lLCBjb2xsZWN0aW9uLmRlc2NyaXB0aW9uKTsKICAgICAgICBpZiAoIWRlc2NyaXB0aW9uKSB7CiAgICAgICAgICBpZiAoY29sbGVjdGlvbi5iYXNlRGVzY3JpcHRpb25zKSB7CiAgICAgICAgICAgIGZvciAoY29uc3QgYmFzZSBvZiBjb2xsZWN0aW9uLmJhc2VEZXNjcmlwdGlvbnMpIHsKICAgICAgICAgICAgICBkZXNjcmlwdGlvbiA9IHRoaXMuX2hvc3QuY3JlYXRlU2NoZW1hdGljRGVzY3JpcHRpb24obmFtZSwgYmFzZSk7CiAgICAgICAgICAgICAgaWYgKGRlc2NyaXB0aW9uKSB7CiAgICAgICAgICAgICAgICBjb2xsZWN0aW9uRGVzY3JpcHRpb24gPSBiYXNlOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoIWRlc2NyaXB0aW9uKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBVbmtub3duU2NoZW1hdGljRXhjZXB0aW9uKG5hbWUsIGNvbGxlY3Rpb24uZGVzY3JpcHRpb24pOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoZGVzY3JpcHRpb24ucHJpdmF0ZSAmJiAhYWxsb3dQcml2YXRlKSB7CiAgICAgICAgICB0aHJvdyBuZXcgUHJpdmF0ZVNjaGVtYXRpY0V4Y2VwdGlvbihuYW1lLCBjb2xsZWN0aW9uLmRlc2NyaXB0aW9uKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgZmFjdG9yeSA9IHRoaXMuX2hvc3QuZ2V0U2NoZW1hdGljUnVsZUZhY3RvcnkoZGVzY3JpcHRpb24sIGNvbGxlY3Rpb25EZXNjcmlwdGlvbik7CiAgICAgICAgc2NoZW1hdGljID0gbmV3IHNjaGVtYXRpY18xLlNjaGVtYXRpY0ltcGwoZGVzY3JpcHRpb24sIGZhY3RvcnksIGNvbGxlY3Rpb24sIHRoaXMpOwogICAgICAgIHNjaGVtYXRpY01hcD8uc2V0KG5hbWUsIHNjaGVtYXRpYyk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYzsKICAgICAgfQogICAgICBsaXN0U2NoZW1hdGljTmFtZXMoY29sbGVjdGlvbiwgaW5jbHVkZUhpZGRlbikgewogICAgICAgIGNvbnN0IG5hbWVzID0gdGhpcy5faG9zdC5saXN0U2NoZW1hdGljTmFtZXMoY29sbGVjdGlvbi5kZXNjcmlwdGlvbiwgaW5jbHVkZUhpZGRlbik7CiAgICAgICAgaWYgKGNvbGxlY3Rpb24uYmFzZURlc2NyaXB0aW9ucykgewogICAgICAgICAgZm9yIChjb25zdCBiYXNlIG9mIGNvbGxlY3Rpb24uYmFzZURlc2NyaXB0aW9ucykgewogICAgICAgICAgICBuYW1lcy5wdXNoKC4uLnRoaXMuX2hvc3QubGlzdFNjaGVtYXRpY05hbWVzKGJhc2UsIGluY2x1ZGVIaWRkZW4pKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIFsuLi5uZXcgU2V0KG5hbWVzKV0uc29ydCgpOwogICAgICB9CiAgICAgIHRyYW5zZm9ybU9wdGlvbnMoc2NoZW1hdGljLCBvcHRpb25zLCBjb250ZXh0KSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX2hvc3QudHJhbnNmb3JtT3B0aW9ucyhzY2hlbWF0aWMuZGVzY3JpcHRpb24sIG9wdGlvbnMsIGNvbnRleHQpOwogICAgICB9CiAgICAgIGNyZWF0ZVNvdXJjZUZyb21VcmwodXJsMywgY29udGV4dCkgewogICAgICAgIHN3aXRjaCAodXJsMy5wcm90b2NvbCkgewogICAgICAgICAgY2FzZSAibnVsbDoiOgogICAgICAgICAgICByZXR1cm4gKCkgPT4gbmV3IG51bGxfMS5OdWxsVHJlZSgpOwogICAgICAgICAgY2FzZSAiZW1wdHk6IjoKICAgICAgICAgICAgcmV0dXJuICgpID0+ICgwLCBzdGF0aWNfMS5lbXB0eSkoKTsKICAgICAgICB9CiAgICAgICAgY29uc3QgaG9zdFNvdXJjZSA9IHRoaXMuX2hvc3QuY3JlYXRlU291cmNlRnJvbVVybCh1cmwzLCBjb250ZXh0KTsKICAgICAgICBpZiAoIWhvc3RTb3VyY2UpIHsKICAgICAgICAgIHRocm93IG5ldyBVbmtub3duVXJsU291cmNlUHJvdG9jb2wodXJsMy50b1N0cmluZygpKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGhvc3RTb3VyY2U7CiAgICAgIH0KICAgICAgZXhlY3V0ZVBvc3RUYXNrcygpIHsKICAgICAgICBjb25zdCBleGVjdXRvcnMgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICAgIGNvbnN0IHRhc2tPYnNlcnZhYmxlID0gKDAsIHJ4anNfMS5mcm9tKSh0aGlzLl90YXNrU2NoZWR1bGVycykucGlwZSgoMCwgcnhqc18xLmNvbmNhdE1hcCkoKHNjaGVkdWxlcikgPT4gc2NoZWR1bGVyLmZpbmFsaXplKCkpLCAoMCwgcnhqc18xLmNvbmNhdE1hcCkoKHRhc2spID0+IHsKICAgICAgICAgIGNvbnN0IHsgbmFtZSwgb3B0aW9ucyB9ID0gdGFzay5jb25maWd1cmF0aW9uOwogICAgICAgICAgY29uc3QgZXhlY3V0b3IgPSBleGVjdXRvcnMuZ2V0KG5hbWUpOwogICAgICAgICAgaWYgKGV4ZWN1dG9yKSB7CiAgICAgICAgICAgIHJldHVybiBleGVjdXRvcihvcHRpb25zLCB0YXNrLmNvbnRleHQpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHRoaXMuX2hvc3QuY3JlYXRlVGFza0V4ZWN1dG9yKG5hbWUpLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChleGVjdXRvcjIpID0+IHsKICAgICAgICAgICAgZXhlY3V0b3JzLnNldChuYW1lLCBleGVjdXRvcjIpOwogICAgICAgICAgICByZXR1cm4gZXhlY3V0b3IyKG9wdGlvbnMsIHRhc2suY29udGV4dCk7CiAgICAgICAgICB9KSk7CiAgICAgICAgfSkpOwogICAgICAgIHJldHVybiB0YXNrT2JzZXJ2YWJsZTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNjaGVtYXRpY0VuZ2luZSA9IFNjaGVtYXRpY0VuZ2luZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9pbnRlcmZhY2UuanMKdmFyIHJlcXVpcmVfaW50ZXJmYWNlNCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2ludGVyZmFjZS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZW5naW5lL2luZGV4LmpzCnZhciByZXF1aXJlX2VuZ2luZTIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfZW5naW5lKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2ludGVyZmFjZTQoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfc2NoZW1hdGljKCksIGV4cG9ydHMyKTsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvbm9kZS9jbGktbG9nZ2VyLmpzCnZhciByZXF1aXJlX2NsaV9sb2dnZXIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvbm9kZS9jbGktbG9nZ2VyLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5jcmVhdGVDb25zb2xlTG9nZ2VyID0gY3JlYXRlQ29uc29sZUxvZ2dlcjsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIHNyY18xID0gcmVxdWlyZV9zcmMoKTsKICAgIGZ1bmN0aW9uIGNyZWF0ZUNvbnNvbGVMb2dnZXIodmVyYm9zZSA9IGZhbHNlLCBzdGRvdXQgPSBwcm9jZXNzLnN0ZG91dCwgc3RkZXJyID0gcHJvY2Vzcy5zdGRlcnIsIGNvbG9ycykgewogICAgICBjb25zdCBsb2dnZXIgPSBuZXcgc3JjXzEubG9nZ2luZy5JbmRlbnRMb2dnZXIoImNsaW5nIik7CiAgICAgIGxvZ2dlci5waXBlKCgwLCByeGpzXzEuZmlsdGVyKSgoZW50cnkpID0+IGVudHJ5LmxldmVsICE9PSAiZGVidWciIHx8IHZlcmJvc2UpKS5zdWJzY3JpYmUoKGVudHJ5KSA9PiB7CiAgICAgICAgY29uc3QgY29sb3IgPSBjb2xvcnMgJiYgY29sb3JzW2VudHJ5LmxldmVsXTsKICAgICAgICBsZXQgb3V0cHV0ID0gc3Rkb3V0OwogICAgICAgIHN3aXRjaCAoZW50cnkubGV2ZWwpIHsKICAgICAgICAgIGNhc2UgIndhcm4iOgogICAgICAgICAgY2FzZSAiZmF0YWwiOgogICAgICAgICAgY2FzZSAiZXJyb3IiOgogICAgICAgICAgICBvdXRwdXQgPSBzdGRlcnI7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgICBjb25zdCBjaHVua1NpemUgPSAyZTM7CiAgICAgICAgbGV0IG1lc3NhZ2UgPSBlbnRyeS5tZXNzYWdlOwogICAgICAgIHdoaWxlIChtZXNzYWdlKSB7CiAgICAgICAgICBjb25zdCBjaHVuayA9IG1lc3NhZ2Uuc2xpY2UoMCwgY2h1bmtTaXplKTsKICAgICAgICAgIG1lc3NhZ2UgPSBtZXNzYWdlLnNsaWNlKGNodW5rU2l6ZSk7CiAgICAgICAgICBvdXRwdXQud3JpdGUoY29sb3IgPyBjb2xvcihjaHVuaykgOiBjaHVuayk7CiAgICAgICAgfQogICAgICAgIG91dHB1dC53cml0ZSgiXG4iKTsKICAgICAgfSk7CiAgICAgIHJldHVybiBsb2dnZXI7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL25vZGUvaG9zdC5qcwp2YXIgcmVxdWlyZV9ob3N0MyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8ueWFybi9fX3ZpcnR1YWxfXy9AYW5ndWxhci1kZXZraXQtY29yZS12aXJ0dWFsLWM5NmM2ZTkwMDkvMi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtY29yZS1ucG0tMTkuMS41LThjYWRiMzg3NWYtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvY29yZS9ub2RlL2hvc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLk5vZGVKc1N5bmNIb3N0ID0gZXhwb3J0czIuTm9kZUpzQXN5bmNIb3N0ID0gdm9pZCAwOwogICAgdmFyIG5vZGVfZnNfMSA9IHJlcXVpcmUoIm5vZGU6ZnMiKTsKICAgIHZhciBub2RlX3BhdGhfMSA9IHJlcXVpcmUoIm5vZGU6cGF0aCIpOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgc3JjXzEgPSByZXF1aXJlX3NyYygpOwogICAgYXN5bmMgZnVuY3Rpb24gZXhpc3RzKHBhdGgpIHsKICAgICAgdHJ5IHsKICAgICAgICBhd2FpdCBub2RlX2ZzXzEucHJvbWlzZXMuYWNjZXNzKHBhdGgsIG5vZGVfZnNfMS5jb25zdGFudHMuRl9PSyk7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0gY2F0Y2ggewogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgfQogICAgdmFyIEZTV2F0Y2hlcjsKICAgIGZ1bmN0aW9uIGxvYWRGU1dhdGNoZXIoKSB7CiAgICAgIGlmICghRlNXYXRjaGVyKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIEZTV2F0Y2hlciA9IHJlcXVpcmUoImNob2tpZGFyIikuRlNXYXRjaGVyOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIGlmIChlLmNvZGUgIT09ICJNT0RVTEVfTk9UX0ZPVU5EIikgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0FzIG9mIGFuZ3VsYXItZGV2a2l0IHZlcnNpb24gOC4wLCB0aGUgImNob2tpZGFyIiBwYWNrYWdlIG11c3QgYmUgaW5zdGFsbGVkIGluIG9yZGVyIHRvIHVzZSB3YXRjaCgpIGZlYXR1cmVzLicpOwogICAgICAgICAgfQogICAgICAgICAgdGhyb3cgZTsKICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIHZhciBOb2RlSnNBc3luY0hvc3QgPSBjbGFzcyB7CiAgICAgIGdldCBjYXBhYmlsaXRpZXMoKSB7CiAgICAgICAgcmV0dXJuIHsgc3luY2hyb25vdXM6IGZhbHNlIH07CiAgICAgIH0KICAgICAgd3JpdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmZyb20pKG5vZGVfZnNfMS5wcm9taXNlcy5ta2RpcigoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkoKDAsIHNyY18xLmRpcm5hbWUpKHBhdGgpKSwgeyByZWN1cnNpdmU6IHRydWUgfSkpLnBpcGUoKDAsIHJ4anNfMS5tZXJnZU1hcCkoKCkgPT4gbm9kZV9mc18xLnByb21pc2VzLndyaXRlRmlsZSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCksIG5ldyBVaW50OEFycmF5KGNvbnRlbnQpKSkpOwogICAgICB9CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmZyb20pKG5vZGVfZnNfMS5wcm9taXNlcy5yZWFkRmlsZSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpKS5waXBlKCgwLCByeGpzXzEubWFwKSgoYnVmZmVyKSA9PiBuZXcgVWludDhBcnJheShidWZmZXIpLmJ1ZmZlcikpOwogICAgICB9CiAgICAgIGRlbGV0ZShwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuZnJvbSkobm9kZV9mc18xLnByb21pc2VzLnJtKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSwgeyBmb3JjZTogdHJ1ZSwgcmVjdXJzaXZlOiB0cnVlLCBtYXhSZXRyaWVzOiAzIH0pKTsKICAgICAgfQogICAgICByZW5hbWUoZnJvbSwgdG8pIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5mcm9tKShub2RlX2ZzXzEucHJvbWlzZXMucmVuYW1lKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShmcm9tKSwgKDAsIHNyY18xLmdldFN5c3RlbVBhdGgpKHRvKSkpOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmZyb20pKG5vZGVfZnNfMS5wcm9taXNlcy5yZWFkZGlyKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSkpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChuYW1lcykgPT4gbmFtZXMubWFwKChuYW1lKSA9PiAoMCwgc3JjXzEuZnJhZ21lbnQpKG5hbWUpKSkpOwogICAgICB9CiAgICAgIGV4aXN0cyhwYXRoKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuZnJvbSkoZXhpc3RzKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSkpOwogICAgICB9CiAgICAgIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5zdGF0KHBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChzdGF0KSA9PiBzdGF0LmlzRGlyZWN0b3J5KCkpKTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLnN0YXQocGF0aCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKHN0YXQpID0+IHN0YXQuaXNGaWxlKCkpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5mcm9tKShub2RlX2ZzXzEucHJvbWlzZXMuc3RhdCgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCB3YXRjaGluZy4KICAgICAgd2F0Y2gocGF0aCwgX29wdGlvbnMpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIGxvYWRGU1dhdGNoZXIoKTsKICAgICAgICAgIGNvbnN0IHdhdGNoZXIgPSBuZXcgRlNXYXRjaGVyKHsgcGVyc2lzdGVudDogdHJ1ZSB9KTsKICAgICAgICAgIHdhdGNoZXIuYWRkKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSk7CiAgICAgICAgICB3YXRjaGVyLm9uKCJjaGFuZ2UiLCAocGF0aDIpID0+IHsKICAgICAgICAgICAgb2JzLm5leHQoewogICAgICAgICAgICAgIHBhdGg6ICgwLCBzcmNfMS5ub3JtYWxpemUpKHBhdGgyKSwKICAgICAgICAgICAgICB0aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgICAgICB0eXBlOiBzcmNfMS52aXJ0dWFsRnMuSG9zdFdhdGNoRXZlbnRUeXBlLkNoYW5nZWQKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9KS5vbigiYWRkIiwgKHBhdGgyKSA9PiB7CiAgICAgICAgICAgIG9icy5uZXh0KHsKICAgICAgICAgICAgICBwYXRoOiAoMCwgc3JjXzEubm9ybWFsaXplKShwYXRoMiksCiAgICAgICAgICAgICAgdGltZTogLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCksCiAgICAgICAgICAgICAgdHlwZTogc3JjXzEudmlydHVhbEZzLkhvc3RXYXRjaEV2ZW50VHlwZS5DcmVhdGVkCiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSkub24oInVubGluayIsIChwYXRoMikgPT4gewogICAgICAgICAgICBvYnMubmV4dCh7CiAgICAgICAgICAgICAgcGF0aDogKDAsIHNyY18xLm5vcm1hbGl6ZSkocGF0aDIpLAogICAgICAgICAgICAgIHRpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgICAgIHR5cGU6IHNyY18xLnZpcnR1YWxGcy5Ib3N0V2F0Y2hFdmVudFR5cGUuRGVsZXRlZAogICAgICAgICAgICB9KTsKICAgICAgICAgIH0pOwogICAgICAgICAgcmV0dXJuICgpID0+IHsKICAgICAgICAgICAgdm9pZCB3YXRjaGVyLmNsb3NlKCk7CiAgICAgICAgICB9OwogICAgICAgIH0pLnBpcGUoKDAsIHJ4anNfMS5wdWJsaXNoKSgpLCAoMCwgcnhqc18xLnJlZkNvdW50KSgpKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLk5vZGVKc0FzeW5jSG9zdCA9IE5vZGVKc0FzeW5jSG9zdDsKICAgIHZhciBOb2RlSnNTeW5jSG9zdCA9IGNsYXNzIHsKICAgICAgZ2V0IGNhcGFiaWxpdGllcygpIHsKICAgICAgICByZXR1cm4geyBzeW5jaHJvbm91czogdHJ1ZSB9OwogICAgICB9CiAgICAgIHdyaXRlKHBhdGgsIGNvbnRlbnQpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgICgwLCBub2RlX2ZzXzEubWtkaXJTeW5jKSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkoKDAsIHNyY18xLmRpcm5hbWUpKHBhdGgpKSwgeyByZWN1cnNpdmU6IHRydWUgfSk7CiAgICAgICAgICAoMCwgbm9kZV9mc18xLndyaXRlRmlsZVN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSwgbmV3IFVpbnQ4QXJyYXkoY29udGVudCkpOwogICAgICAgICAgb2JzLm5leHQoKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIHJlYWQocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgY29uc3QgYnVmZmVyID0gKDAsIG5vZGVfZnNfMS5yZWFkRmlsZVN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSk7CiAgICAgICAgICBvYnMubmV4dChuZXcgVWludDhBcnJheShidWZmZXIpLmJ1ZmZlcik7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICBkZWxldGUocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgKDAsIG5vZGVfZnNfMS5ybVN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSwgeyBmb3JjZTogdHJ1ZSwgcmVjdXJzaXZlOiB0cnVlLCBtYXhSZXRyaWVzOiAzIH0pOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgcmVuYW1lKGZyb20sIHRvKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBjb25zdCB0b1N5c3RlbVBhdGggPSAoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkodG8pOwogICAgICAgICAgKDAsIG5vZGVfZnNfMS5ta2RpclN5bmMpKCgwLCBub2RlX3BhdGhfMS5kaXJuYW1lKSh0b1N5c3RlbVBhdGgpLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTsKICAgICAgICAgICgwLCBub2RlX2ZzXzEucmVuYW1lU3luYykoKDAsIHNyY18xLmdldFN5c3RlbVBhdGgpKGZyb20pLCB0b1N5c3RlbVBhdGgpOwogICAgICAgICAgb2JzLm5leHQoKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIGxpc3QocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgY29uc3QgbmFtZXMgPSAoMCwgbm9kZV9mc18xLnJlYWRkaXJTeW5jKSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpOwogICAgICAgICAgb2JzLm5leHQobmFtZXMubWFwKChuYW1lKSA9PiAoMCwgc3JjXzEuZnJhZ21lbnQpKG5hbWUpKSk7CiAgICAgICAgICBvYnMuY29tcGxldGUoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICBleGlzdHMocGF0aCkgewogICAgICAgIHJldHVybiBuZXcgcnhqc18xLk9ic2VydmFibGUoKG9icykgPT4gewogICAgICAgICAgb2JzLm5leHQoKDAsIG5vZGVfZnNfMS5leGlzdHNTeW5jKSgoMCwgc3JjXzEuZ2V0U3lzdGVtUGF0aCkocGF0aCkpKTsKICAgICAgICAgIG9icy5jb21wbGV0ZSgpOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIGlzRGlyZWN0b3J5KHBhdGgpIHsKICAgICAgICByZXR1cm4gdGhpcy5zdGF0KHBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChzdGF0KSA9PiBzdGF0LmlzRGlyZWN0b3J5KCkpKTsKICAgICAgfQogICAgICBpc0ZpbGUocGF0aCkgewogICAgICAgIHJldHVybiB0aGlzLnN0YXQocGF0aCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKHN0YXQpID0+IHN0YXQuaXNGaWxlKCkpKTsKICAgICAgfQogICAgICAvLyBTb21lIGhvc3RzIG1heSBub3Qgc3VwcG9ydCBzdGF0LgogICAgICBzdGF0KHBhdGgpIHsKICAgICAgICByZXR1cm4gbmV3IHJ4anNfMS5PYnNlcnZhYmxlKChvYnMpID0+IHsKICAgICAgICAgIG9icy5uZXh0KCgwLCBub2RlX2ZzXzEuc3RhdFN5bmMpKCgwLCBzcmNfMS5nZXRTeXN0ZW1QYXRoKShwYXRoKSkpOwogICAgICAgICAgb2JzLmNvbXBsZXRlKCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgLy8gU29tZSBob3N0cyBtYXkgbm90IHN1cHBvcnQgd2F0Y2hpbmcuCiAgICAgIHdhdGNoKHBhdGgsIF9vcHRpb25zKSB7CiAgICAgICAgcmV0dXJuIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzKSA9PiB7CiAgICAgICAgICBsb2FkRlNXYXRjaGVyKCk7CiAgICAgICAgICBjb25zdCB3YXRjaGVyID0gbmV3IEZTV2F0Y2hlcih7IHBlcnNpc3RlbnQ6IGZhbHNlIH0pOwogICAgICAgICAgd2F0Y2hlci5hZGQoKDAsIHNyY18xLmdldFN5c3RlbVBhdGgpKHBhdGgpKTsKICAgICAgICAgIHdhdGNoZXIub24oImNoYW5nZSIsIChwYXRoMikgPT4gewogICAgICAgICAgICBvYnMubmV4dCh7CiAgICAgICAgICAgICAgcGF0aDogKDAsIHNyY18xLm5vcm1hbGl6ZSkocGF0aDIpLAogICAgICAgICAgICAgIHRpbWU6IC8qIEBfX1BVUkVfXyAqLyBuZXcgRGF0ZSgpLAogICAgICAgICAgICAgIHR5cGU6IHNyY18xLnZpcnR1YWxGcy5Ib3N0V2F0Y2hFdmVudFR5cGUuQ2hhbmdlZAogICAgICAgICAgICB9KTsKICAgICAgICAgIH0pLm9uKCJhZGQiLCAocGF0aDIpID0+IHsKICAgICAgICAgICAgb2JzLm5leHQoewogICAgICAgICAgICAgIHBhdGg6ICgwLCBzcmNfMS5ub3JtYWxpemUpKHBhdGgyKSwKICAgICAgICAgICAgICB0aW1lOiAvKiBAX19QVVJFX18gKi8gbmV3IERhdGUoKSwKICAgICAgICAgICAgICB0eXBlOiBzcmNfMS52aXJ0dWFsRnMuSG9zdFdhdGNoRXZlbnRUeXBlLkNyZWF0ZWQKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9KS5vbigidW5saW5rIiwgKHBhdGgyKSA9PiB7CiAgICAgICAgICAgIG9icy5uZXh0KHsKICAgICAgICAgICAgICBwYXRoOiAoMCwgc3JjXzEubm9ybWFsaXplKShwYXRoMiksCiAgICAgICAgICAgICAgdGltZTogLyogQF9fUFVSRV9fICovIG5ldyBEYXRlKCksCiAgICAgICAgICAgICAgdHlwZTogc3JjXzEudmlydHVhbEZzLkhvc3RXYXRjaEV2ZW50VHlwZS5EZWxldGVkCiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSk7CiAgICAgICAgICByZXR1cm4gKCkgPT4gewogICAgICAgICAgICB2b2lkIHdhdGNoZXIuY2xvc2UoKTsKICAgICAgICAgIH07CiAgICAgICAgfSkucGlwZSgoMCwgcnhqc18xLnB1Ymxpc2gpKCksICgwLCByeGpzXzEucmVmQ291bnQpKCkpOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuTm9kZUpzU3luY0hvc3QgPSBOb2RlSnNTeW5jSG9zdDsKICB9Cn0pOwoKLy8gLi4vLi4vLnlhcm4vX192aXJ0dWFsX18vQGFuZ3VsYXItZGV2a2l0LWNvcmUtdmlydHVhbC1jOTZjNmU5MDA5LzIvLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LWNvcmUtbnBtLTE5LjEuNS04Y2FkYjM4NzVmLTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L2NvcmUvbm9kZS9pbmRleC5qcwp2YXIgcmVxdWlyZV9ub2RlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy55YXJuL19fdmlydHVhbF9fL0Bhbmd1bGFyLWRldmtpdC1jb3JlLXZpcnR1YWwtYzk2YzZlOTAwOS8yLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1jb3JlLW5wbS0xOS4xLjUtOGNhZGIzODc1Zi0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9jb3JlL25vZGUvaW5kZXguanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgX19jcmVhdGVCaW5kaW5nID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19jcmVhdGVCaW5kaW5nIHx8IChPYmplY3QuY3JlYXRlID8gZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspOwogICAgICBpZiAoIWRlc2MgfHwgKCJnZXQiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHsKICAgICAgICBkZXNjID0geyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIG1ba107CiAgICAgICAgfSB9OwogICAgICB9CiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgZGVzYyk7CiAgICB9IDogZnVuY3Rpb24obywgbSwgaywgazIpIHsKICAgICAgaWYgKGsyID09PSB2b2lkIDApIGsyID0gazsKICAgICAgb1trMl0gPSBtW2tdOwogICAgfSk7CiAgICB2YXIgX19leHBvcnRTdGFyID0gZXhwb3J0czIgJiYgZXhwb3J0czIuX19leHBvcnRTdGFyIHx8IGZ1bmN0aW9uKG0sIGV4cG9ydHMzKSB7CiAgICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09ICJkZWZhdWx0IiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGV4cG9ydHMzLCBwKSkgX19jcmVhdGVCaW5kaW5nKGV4cG9ydHMzLCBtLCBwKTsKICAgIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2NsaV9sb2dnZXIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaG9zdDMoKSwgZXhwb3J0czIpOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9hY3Rpb24uanMKdmFyIHJlcXVpcmVfYWN0aW9uID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2FjdGlvbi5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuQWN0aW9uTGlzdCA9IGV4cG9ydHMyLlVua25vd25BY3Rpb25FeGNlcHRpb24gPSB2b2lkIDA7CiAgICBleHBvcnRzMi5pc0NvbnRlbnRBY3Rpb24gPSBpc0NvbnRlbnRBY3Rpb247CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciBVbmtub3duQWN0aW9uRXhjZXB0aW9uID0gY2xhc3MgZXh0ZW5kcyBjb3JlXzEuQmFzZUV4Y2VwdGlvbiB7CiAgICAgIGNvbnN0cnVjdG9yKGFjdGlvbikgewogICAgICAgIHN1cGVyKGBVbmtub3duIGFjdGlvbjogIiR7YWN0aW9uLmtpbmR9Ii5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVua25vd25BY3Rpb25FeGNlcHRpb24gPSBVbmtub3duQWN0aW9uRXhjZXB0aW9uOwogICAgdmFyIF9pZCA9IDE7CiAgICB2YXIgQWN0aW9uTGlzdCA9IGNsYXNzIHsKICAgICAgX2FjdGlvbnMgPSBbXTsKICAgICAgX2FjdGlvbihhY3Rpb24pIHsKICAgICAgICB0aGlzLl9hY3Rpb25zLnB1c2goewogICAgICAgICAgLi4uYWN0aW9uLAogICAgICAgICAgaWQ6IF9pZCsrLAogICAgICAgICAgcGFyZW50OiB0aGlzLl9hY3Rpb25zW3RoaXMuX2FjdGlvbnMubGVuZ3RoIC0gMV0/LmlkID8/IDAKICAgICAgICB9KTsKICAgICAgfQogICAgICBjcmVhdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHRoaXMuX2FjdGlvbih7IGtpbmQ6ICJjIiwgcGF0aCwgY29udGVudCB9KTsKICAgICAgfQogICAgICBvdmVyd3JpdGUocGF0aCwgY29udGVudCkgewogICAgICAgIHRoaXMuX2FjdGlvbih7IGtpbmQ6ICJvIiwgcGF0aCwgY29udGVudCB9KTsKICAgICAgfQogICAgICByZW5hbWUocGF0aCwgdG8pIHsKICAgICAgICB0aGlzLl9hY3Rpb24oeyBraW5kOiAiciIsIHBhdGgsIHRvIH0pOwogICAgICB9CiAgICAgIGRlbGV0ZShwYXRoKSB7CiAgICAgICAgdGhpcy5fYWN0aW9uKHsga2luZDogImQiLCBwYXRoIH0pOwogICAgICB9CiAgICAgIG9wdGltaXplKCkgewogICAgICAgIGNvbnN0IHRvQ3JlYXRlID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgICBjb25zdCB0b1JlbmFtZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgICAgY29uc3QgdG9PdmVyd3JpdGUgPSAvKiBAX19QVVJFX18gKi8gbmV3IE1hcCgpOwogICAgICAgIGNvbnN0IHRvRGVsZXRlID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgICBmb3IgKGNvbnN0IGFjdGlvbiBvZiB0aGlzLl9hY3Rpb25zKSB7CiAgICAgICAgICBzd2l0Y2ggKGFjdGlvbi5raW5kKSB7CiAgICAgICAgICAgIGNhc2UgImMiOgogICAgICAgICAgICAgIHRvQ3JlYXRlLnNldChhY3Rpb24ucGF0aCwgYWN0aW9uLmNvbnRlbnQpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlICJvIjoKICAgICAgICAgICAgICBpZiAodG9DcmVhdGUuaGFzKGFjdGlvbi5wYXRoKSkgewogICAgICAgICAgICAgICAgdG9DcmVhdGUuc2V0KGFjdGlvbi5wYXRoLCBhY3Rpb24uY29udGVudCk7CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHRvT3ZlcndyaXRlLnNldChhY3Rpb24ucGF0aCwgYWN0aW9uLmNvbnRlbnQpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiZCI6CiAgICAgICAgICAgICAgdG9EZWxldGUuYWRkKGFjdGlvbi5wYXRoKTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiciI6IHsKICAgICAgICAgICAgICBjb25zdCBtYXliZUNyZWF0ZSA9IHRvQ3JlYXRlLmdldChhY3Rpb24ucGF0aCk7CiAgICAgICAgICAgICAgY29uc3QgbWF5YmVPdmVyd3JpdGUgPSB0b092ZXJ3cml0ZS5nZXQoYWN0aW9uLnBhdGgpOwogICAgICAgICAgICAgIGlmIChtYXliZUNyZWF0ZSkgewogICAgICAgICAgICAgICAgdG9DcmVhdGUuZGVsZXRlKGFjdGlvbi5wYXRoKTsKICAgICAgICAgICAgICAgIHRvQ3JlYXRlLnNldChhY3Rpb24udG8sIG1heWJlQ3JlYXRlKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKG1heWJlT3ZlcndyaXRlKSB7CiAgICAgICAgICAgICAgICB0b092ZXJ3cml0ZS5kZWxldGUoYWN0aW9uLnBhdGgpOwogICAgICAgICAgICAgICAgdG9PdmVyd3JpdGUuc2V0KGFjdGlvbi50bywgbWF5YmVPdmVyd3JpdGUpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBsZXQgbWF5YmVSZW5hbWUgPSB2b2lkIDA7CiAgICAgICAgICAgICAgZm9yIChjb25zdCBbZnJvbSwgdG9dIG9mIHRvUmVuYW1lLmVudHJpZXMoKSkgewogICAgICAgICAgICAgICAgaWYgKHRvID09IGFjdGlvbi5wYXRoKSB7CiAgICAgICAgICAgICAgICAgIG1heWJlUmVuYW1lID0gZnJvbTsKICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmIChtYXliZVJlbmFtZSkgewogICAgICAgICAgICAgICAgdG9SZW5hbWUuc2V0KG1heWJlUmVuYW1lLCBhY3Rpb24udG8pOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAoIW1heWJlQ3JlYXRlICYmICFtYXliZU92ZXJ3cml0ZSAmJiAhbWF5YmVSZW5hbWUpIHsKICAgICAgICAgICAgICAgIHRvUmVuYW1lLnNldChhY3Rpb24ucGF0aCwgYWN0aW9uLnRvKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgdGhpcy5fYWN0aW9ucyA9IFtdOwogICAgICAgIHRvRGVsZXRlLmZvckVhY2goKHgpID0+IHsKICAgICAgICAgIHRoaXMuZGVsZXRlKHgpOwogICAgICAgIH0pOwogICAgICAgIHRvUmVuYW1lLmZvckVhY2goKHRvLCBmcm9tKSA9PiB7CiAgICAgICAgICB0aGlzLnJlbmFtZShmcm9tLCB0byk7CiAgICAgICAgfSk7CiAgICAgICAgdG9DcmVhdGUuZm9yRWFjaCgoY29udGVudCwgcGF0aCkgPT4gewogICAgICAgICAgdGhpcy5jcmVhdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgfSk7CiAgICAgICAgdG9PdmVyd3JpdGUuZm9yRWFjaCgoY29udGVudCwgcGF0aCkgPT4gewogICAgICAgICAgdGhpcy5vdmVyd3JpdGUocGF0aCwgY29udGVudCk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgcHVzaChhY3Rpb24pIHsKICAgICAgICB0aGlzLl9hY3Rpb25zLnB1c2goYWN0aW9uKTsKICAgICAgfQogICAgICBnZXQoaSkgewogICAgICAgIHJldHVybiB0aGlzLl9hY3Rpb25zW2ldOwogICAgICB9CiAgICAgIGhhcyhhY3Rpb24pIHsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuX2FjdGlvbnMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgIGNvbnN0IGEgPSB0aGlzLl9hY3Rpb25zW2ldOwogICAgICAgICAgaWYgKGEuaWQgPT0gYWN0aW9uLmlkKSB7CiAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKGEuaWQgPiBhY3Rpb24uaWQpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgICAgZmluZChwcmVkaWNhdGUpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYWN0aW9ucy5maW5kKHByZWRpY2F0ZSkgfHwgbnVsbDsKICAgICAgfQogICAgICBmb3JFYWNoKGZuLCB0aGlzQXJnKSB7CiAgICAgICAgdGhpcy5fYWN0aW9ucy5mb3JFYWNoKGZuLCB0aGlzQXJnKTsKICAgICAgfQogICAgICBnZXQgbGVuZ3RoKCkgewogICAgICAgIHJldHVybiB0aGlzLl9hY3Rpb25zLmxlbmd0aDsKICAgICAgfQogICAgICBbU3ltYm9sLml0ZXJhdG9yXSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fYWN0aW9uc1tTeW1ib2wuaXRlcmF0b3JdKCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5BY3Rpb25MaXN0ID0gQWN0aW9uTGlzdDsKICAgIGZ1bmN0aW9uIGlzQ29udGVudEFjdGlvbihhY3Rpb24pIHsKICAgICAgcmV0dXJuIGFjdGlvbi5raW5kID09ICJjIiB8fCBhY3Rpb24ua2luZCA9PSAibyI7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL3NpbmsuanMKdmFyIHJlcXVpcmVfc2luayA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvc2luay9zaW5rLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5TaW1wbGVTaW5rQmFzZSA9IHZvaWQgMDsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24yKCk7CiAgICB2YXIgYWN0aW9uXzEgPSByZXF1aXJlX2FjdGlvbigpOwogICAgdmFyIE5vb3AgPSBmdW5jdGlvbigpIHsKICAgIH07CiAgICB2YXIgU2ltcGxlU2lua0Jhc2UgPSBjbGFzcyB7CiAgICAgIHByZUNvbW1pdEFjdGlvbiA9IE5vb3A7CiAgICAgIHBvc3RDb21taXRBY3Rpb24gPSBOb29wOwogICAgICBwcmVDb21taXQgPSBOb29wOwogICAgICBwb3N0Q29tbWl0ID0gTm9vcDsKICAgICAgX2ZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24ocGF0aCkgewogICAgICAgIHRocm93IG5ldyBleGNlcHRpb25fMS5GaWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKHBhdGgpOwogICAgICB9CiAgICAgIF9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpIHsKICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuRmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihwYXRoKTsKICAgICAgfQogICAgICBfdmFsaWRhdGVPdmVyd3JpdGVBY3Rpb24oYWN0aW9uKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlRmlsZUV4aXN0cyhhY3Rpb24ucGF0aCkucGlwZSgoMCwgcnhqc18xLm1hcCkoKGIpID0+IHsKICAgICAgICAgIGlmICghYikgewogICAgICAgICAgICB0aGlzLl9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKGFjdGlvbi5wYXRoKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH0KICAgICAgX3ZhbGlkYXRlQ3JlYXRlQWN0aW9uKGFjdGlvbikgewogICAgICAgIHJldHVybiB0aGlzLl92YWxpZGF0ZUZpbGVFeGlzdHMoYWN0aW9uLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChiKSA9PiB7CiAgICAgICAgICBpZiAoYikgewogICAgICAgICAgICB0aGlzLl9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKGFjdGlvbi5wYXRoKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH0KICAgICAgX3ZhbGlkYXRlUmVuYW1lQWN0aW9uKGFjdGlvbikgewogICAgICAgIHJldHVybiB0aGlzLl92YWxpZGF0ZUZpbGVFeGlzdHMoYWN0aW9uLnBhdGgpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChiKSA9PiB7CiAgICAgICAgICBpZiAoIWIpIHsKICAgICAgICAgICAgdGhpcy5fZmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvbihhY3Rpb24ucGF0aCk7CiAgICAgICAgICB9CiAgICAgICAgfSksICgwLCByeGpzXzEubWVyZ2VNYXApKCgpID0+IHRoaXMuX3ZhbGlkYXRlRmlsZUV4aXN0cyhhY3Rpb24udG8pKSwgKDAsIHJ4anNfMS5tYXApKChiKSA9PiB7CiAgICAgICAgICBpZiAoYikgewogICAgICAgICAgICB0aGlzLl9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uKGFjdGlvbi50byk7CiAgICAgICAgICB9CiAgICAgICAgfSkpOwogICAgICB9CiAgICAgIF92YWxpZGF0ZURlbGV0ZUFjdGlvbihhY3Rpb24pIHsKICAgICAgICByZXR1cm4gdGhpcy5fdmFsaWRhdGVGaWxlRXhpc3RzKGFjdGlvbi5wYXRoKS5waXBlKCgwLCByeGpzXzEubWFwKSgoYikgPT4gewogICAgICAgICAgaWYgKCFiKSB7CiAgICAgICAgICAgIHRoaXMuX2ZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb24oYWN0aW9uLnBhdGgpOwogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfQogICAgICB2YWxpZGF0ZVNpbmdsZUFjdGlvbihhY3Rpb24pIHsKICAgICAgICBzd2l0Y2ggKGFjdGlvbi5raW5kKSB7CiAgICAgICAgICBjYXNlICJvIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlT3ZlcndyaXRlQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBjYXNlICJjIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlQ3JlYXRlQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBjYXNlICJyIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlUmVuYW1lQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBjYXNlICJkIjoKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlRGVsZXRlQWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICB0aHJvdyBuZXcgYWN0aW9uXzEuVW5rbm93bkFjdGlvbkV4Y2VwdGlvbihhY3Rpb24pOwogICAgICAgIH0KICAgICAgfQogICAgICBjb21taXRTaW5nbGVBY3Rpb24oYWN0aW9uKSB7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSh0aGlzLnZhbGlkYXRlU2luZ2xlQWN0aW9uKGFjdGlvbiksIG5ldyByeGpzXzEuT2JzZXJ2YWJsZSgob2JzZXJ2ZXIpID0+IHsKICAgICAgICAgIGxldCBjb21taXR0ZWQgPSBudWxsOwogICAgICAgICAgc3dpdGNoIChhY3Rpb24ua2luZCkgewogICAgICAgICAgICBjYXNlICJvIjoKICAgICAgICAgICAgICBjb21taXR0ZWQgPSB0aGlzLl9vdmVyd3JpdGVGaWxlKGFjdGlvbi5wYXRoLCBhY3Rpb24uY29udGVudCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgImMiOgogICAgICAgICAgICAgIGNvbW1pdHRlZCA9IHRoaXMuX2NyZWF0ZUZpbGUoYWN0aW9uLnBhdGgsIGFjdGlvbi5jb250ZW50KTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiciI6CiAgICAgICAgICAgICAgY29tbWl0dGVkID0gdGhpcy5fcmVuYW1lRmlsZShhY3Rpb24ucGF0aCwgYWN0aW9uLnRvKTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiZCI6CiAgICAgICAgICAgICAgY29tbWl0dGVkID0gdGhpcy5fZGVsZXRlRmlsZShhY3Rpb24ucGF0aCk7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoY29tbWl0dGVkKSB7CiAgICAgICAgICAgIGNvbW1pdHRlZC5zdWJzY3JpYmUob2JzZXJ2ZXIpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTsKICAgICAgICAgIH0KICAgICAgICB9KSkucGlwZSgoMCwgcnhqc18xLmlnbm9yZUVsZW1lbnRzKSgpKTsKICAgICAgfQogICAgICBjb21taXQodHJlZSkgewogICAgICAgIGNvbnN0IGFjdGlvbnMgPSAoMCwgcnhqc18xLmZyb20pKHRyZWUuYWN0aW9ucyk7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSh0aGlzLnByZUNvbW1pdCgpIHx8ICgwLCByeGpzXzEub2YpKG51bGwpLCAoMCwgcnhqc18xLmRlZmVyKSgoKSA9PiBhY3Rpb25zKS5waXBlKCgwLCByeGpzXzEuY29uY2F0TWFwKSgoYWN0aW9uKSA9PiB7CiAgICAgICAgICBjb25zdCBtYXliZUFjdGlvbiA9IHRoaXMucHJlQ29tbWl0QWN0aW9uKGFjdGlvbik7CiAgICAgICAgICBpZiAoKDAsIHJ4anNfMS5pc09ic2VydmFibGUpKG1heWJlQWN0aW9uKSB8fCBpc1Byb21pc2VMaWtlKG1heWJlQWN0aW9uKSkgewogICAgICAgICAgICByZXR1cm4gbWF5YmVBY3Rpb247CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikobWF5YmVBY3Rpb24gfHwgYWN0aW9uKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS5jb25jYXRNYXApKChhY3Rpb24pID0+IHsKICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkodGhpcy5jb21taXRTaW5nbGVBY3Rpb24oYWN0aW9uKS5waXBlKCgwLCByeGpzXzEuaWdub3JlRWxlbWVudHMpKCkpLCAoMCwgcnhqc18xLm9mKShhY3Rpb24pKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS5jb25jYXRNYXApKChhY3Rpb24pID0+IHRoaXMucG9zdENvbW1pdEFjdGlvbihhY3Rpb24pIHx8ICgwLCByeGpzXzEub2YpKG51bGwpKSksICgwLCByeGpzXzEuZGVmZXIpKCgpID0+IHRoaXMuX2RvbmUoKSksICgwLCByeGpzXzEuZGVmZXIpKCgpID0+IHRoaXMucG9zdENvbW1pdCgpIHx8ICgwLCByeGpzXzEub2YpKG51bGwpKSkucGlwZSgoMCwgcnhqc18xLmlnbm9yZUVsZW1lbnRzKSgpLCAoMCwgcnhqc18xLmRlZmF1bHRJZkVtcHR5KSh2b2lkIDApKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlNpbXBsZVNpbmtCYXNlID0gU2ltcGxlU2lua0Jhc2U7CiAgICBmdW5jdGlvbiBpc1Byb21pc2VMaWtlKHZhbHVlKSB7CiAgICAgIHJldHVybiAhIXZhbHVlICYmIHR5cGVvZiB2YWx1ZS50aGVuID09PSAiZnVuY3Rpb24iOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvc2luay9ob3N0LmpzCnZhciByZXF1aXJlX2hvc3Q0ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL2hvc3QuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkhvc3RTaW5rID0gdm9pZCAwOwogICAgdmFyIHJ4anNfMSA9IHJlcXVpcmVfY2pzKCk7CiAgICB2YXIgc2lua18xID0gcmVxdWlyZV9zaW5rKCk7CiAgICB2YXIgSG9zdFNpbmsgPSBjbGFzcyBleHRlbmRzIHNpbmtfMS5TaW1wbGVTaW5rQmFzZSB7CiAgICAgIF9ob3N0OwogICAgICBfZm9yY2U7CiAgICAgIF9maWxlc1RvRGVsZXRlID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKICAgICAgX2ZpbGVzVG9SZW5hbWUgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZmlsZXNUb0NyZWF0ZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgICAgIF9maWxlc1RvVXBkYXRlID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICAgICAgY29uc3RydWN0b3IoX2hvc3QsIF9mb3JjZSA9IGZhbHNlKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgICB0aGlzLl9ob3N0ID0gX2hvc3Q7CiAgICAgICAgdGhpcy5fZm9yY2UgPSBfZm9yY2U7CiAgICAgIH0KICAgICAgX3ZhbGlkYXRlQ3JlYXRlQWN0aW9uKGFjdGlvbikgewogICAgICAgIHJldHVybiB0aGlzLl9mb3JjZSA/IHJ4anNfMS5FTVBUWSA6IHN1cGVyLl92YWxpZGF0ZUNyZWF0ZUFjdGlvbihhY3Rpb24pOwogICAgICB9CiAgICAgIF92YWxpZGF0ZUZpbGVFeGlzdHMocCkgewogICAgICAgIGlmICh0aGlzLl9maWxlc1RvQ3JlYXRlLmhhcyhwKSB8fCB0aGlzLl9maWxlc1RvVXBkYXRlLmhhcyhwKSkgewogICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKHRydWUpOwogICAgICAgIH0KICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0RlbGV0ZS5oYXMocCkpIHsKICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKShmYWxzZSk7CiAgICAgICAgfQogICAgICAgIGZvciAoY29uc3QgW2Zyb20sIHRvXSBvZiB0aGlzLl9maWxlc1RvUmVuYW1lLnZhbHVlcygpKSB7CiAgICAgICAgICBzd2l0Y2ggKHApIHsKICAgICAgICAgICAgY2FzZSBmcm9tOgogICAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKShmYWxzZSk7CiAgICAgICAgICAgIGNhc2UgdG86CiAgICAgICAgICAgICAgcmV0dXJuICgwLCByeGpzXzEub2YpKHRydWUpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5faG9zdC5leGlzdHMocCk7CiAgICAgIH0KICAgICAgX292ZXJ3cml0ZUZpbGUocGF0aCwgY29udGVudCkgewogICAgICAgIHRoaXMuX2ZpbGVzVG9VcGRhdGUuc2V0KHBhdGgsIGNvbnRlbnQpOwogICAgICAgIHJldHVybiByeGpzXzEuRU1QVFk7CiAgICAgIH0KICAgICAgX2NyZWF0ZUZpbGUocGF0aCwgY29udGVudCkgewogICAgICAgIHRoaXMuX2ZpbGVzVG9DcmVhdGUuc2V0KHBhdGgsIGNvbnRlbnQpOwogICAgICAgIHJldHVybiByeGpzXzEuRU1QVFk7CiAgICAgIH0KICAgICAgX3JlbmFtZUZpbGUoZnJvbSwgdG8pIHsKICAgICAgICB0aGlzLl9maWxlc1RvUmVuYW1lLmFkZChbZnJvbSwgdG9dKTsKICAgICAgICByZXR1cm4gcnhqc18xLkVNUFRZOwogICAgICB9CiAgICAgIF9kZWxldGVGaWxlKHBhdGgpIHsKICAgICAgICBpZiAodGhpcy5fZmlsZXNUb0NyZWF0ZS5oYXMocGF0aCkpIHsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9DcmVhdGUuZGVsZXRlKHBhdGgpOwogICAgICAgICAgdGhpcy5fZmlsZXNUb1VwZGF0ZS5kZWxldGUocGF0aCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuX2ZpbGVzVG9EZWxldGUuYWRkKHBhdGgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcnhqc18xLkVNUFRZOwogICAgICB9CiAgICAgIF9kb25lKCkgewogICAgICAgIHJldHVybiAoMCwgcnhqc18xLmNvbmNhdCkoKDAsIHJ4anNfMS5mcm9tKShbLi4udGhpcy5fZmlsZXNUb0RlbGV0ZS52YWx1ZXMoKV0pLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChwYXRoKSA9PiB0aGlzLl9ob3N0LmRlbGV0ZShwYXRoKSkpLCAoMCwgcnhqc18xLmZyb20pKFsuLi50aGlzLl9maWxlc1RvUmVuYW1lLmVudHJpZXMoKV0pLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChbXywgW3BhdGgsIHRvXV0pID0+IHRoaXMuX2hvc3QucmVuYW1lKHBhdGgsIHRvKSkpLCAoMCwgcnhqc18xLmZyb20pKFsuLi50aGlzLl9maWxlc1RvQ3JlYXRlLmVudHJpZXMoKV0pLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChbcGF0aCwgYnVmZmVyXSkgPT4gdGhpcy5faG9zdC53cml0ZShwYXRoLCBidWZmZXIpKSksICgwLCByeGpzXzEuZnJvbSkoWy4uLnRoaXMuX2ZpbGVzVG9VcGRhdGUuZW50cmllcygpXSkucGlwZSgoMCwgcnhqc18xLmNvbmNhdE1hcCkoKFtwYXRoLCBidWZmZXJdKSA9PiB0aGlzLl9ob3N0LndyaXRlKHBhdGgsIGJ1ZmZlcikpKSkucGlwZSgoMCwgcnhqc18xLnJlZHVjZSkoKCkgPT4gewogICAgICAgIH0pKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkhvc3RTaW5rID0gSG9zdFNpbms7CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL2RyeXJ1bi5qcwp2YXIgcmVxdWlyZV9kcnlydW4gPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3NpbmsvZHJ5cnVuLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5EcnlSdW5TaW5rID0gdm9pZCAwOwogICAgdmFyIGNvcmVfMSA9IHJlcXVpcmVfc3JjKCk7CiAgICB2YXIgbm9kZV8xID0gcmVxdWlyZV9ub2RlKCk7CiAgICB2YXIgcnhqc18xID0gcmVxdWlyZV9janMoKTsKICAgIHZhciBob3N0XzEgPSByZXF1aXJlX2hvc3Q0KCk7CiAgICB2YXIgRHJ5UnVuU2luayA9IGNsYXNzIGV4dGVuZHMgaG9zdF8xLkhvc3RTaW5rIHsKICAgICAgX3N1YmplY3QgPSBuZXcgcnhqc18xLlN1YmplY3QoKTsKICAgICAgX2ZpbGVEb2VzTm90RXhpc3RFeGNlcHRpb25TZXQgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpOwogICAgICBfZmlsZUFscmVhZHlFeGlzdEV4Y2VwdGlvblNldCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7CiAgICAgIHJlcG9ydGVyID0gdGhpcy5fc3ViamVjdC5hc09ic2VydmFibGUoKTsKICAgICAgY29uc3RydWN0b3IoaG9zdCwgZm9yY2UgPSBmYWxzZSkgewogICAgICAgIHN1cGVyKHR5cGVvZiBob3N0ID09ICJzdHJpbmciID8gbmV3IGNvcmVfMS52aXJ0dWFsRnMuU2NvcGVkSG9zdChuZXcgbm9kZV8xLk5vZGVKc1N5bmNIb3N0KCksICgwLCBjb3JlXzEubm9ybWFsaXplKShob3N0KSkgOiBob3N0LCBmb3JjZSk7CiAgICAgIH0KICAgICAgX2ZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb24ocGF0aCkgewogICAgICAgIHRoaXMuX2ZpbGVBbHJlYWR5RXhpc3RFeGNlcHRpb25TZXQuYWRkKHBhdGgpOwogICAgICB9CiAgICAgIF9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uKHBhdGgpIHsKICAgICAgICB0aGlzLl9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uU2V0LmFkZChwYXRoKTsKICAgICAgfQogICAgICBfZG9uZSgpIHsKICAgICAgICB0aGlzLl9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uU2V0LmZvckVhY2goKHBhdGgpID0+IHsKICAgICAgICAgIHRoaXMuX3N1YmplY3QubmV4dCh7CiAgICAgICAgICAgIGtpbmQ6ICJlcnJvciIsCiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAiYWxyZWFkeUV4aXN0IiwKICAgICAgICAgICAgcGF0aAogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgdGhpcy5fZmlsZURvZXNOb3RFeGlzdEV4Y2VwdGlvblNldC5mb3JFYWNoKChwYXRoKSA9PiB7CiAgICAgICAgICB0aGlzLl9zdWJqZWN0Lm5leHQoewogICAgICAgICAgICBraW5kOiAiZXJyb3IiLAogICAgICAgICAgICBkZXNjcmlwdGlvbjogImRvZXNOb3RFeGlzdCIsCiAgICAgICAgICAgIHBhdGgKICAgICAgICAgIH0pOwogICAgICAgIH0pOwogICAgICAgIHRoaXMuX2ZpbGVzVG9EZWxldGUuZm9yRWFjaCgocGF0aCkgPT4gewogICAgICAgICAgZm9yIChjb25zdCBbZnJvbV0gb2YgdGhpcy5fZmlsZXNUb1JlbmFtZSkgewogICAgICAgICAgICBpZiAoZnJvbSA9PSBwYXRoKSB7CiAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLl9zdWJqZWN0Lm5leHQoeyBraW5kOiAiZGVsZXRlIiwgcGF0aCB9KTsKICAgICAgICB9KTsKICAgICAgICB0aGlzLl9maWxlc1RvUmVuYW1lLmZvckVhY2goKFtwYXRoLCB0b10pID0+IHsKICAgICAgICAgIHRoaXMuX3N1YmplY3QubmV4dCh7IGtpbmQ6ICJyZW5hbWUiLCBwYXRoLCB0byB9KTsKICAgICAgICB9KTsKICAgICAgICB0aGlzLl9maWxlc1RvQ3JlYXRlLmZvckVhY2goKGNvbnRlbnQsIHBhdGgpID0+IHsKICAgICAgICAgIGZvciAoY29uc3QgWywgdG9dIG9mIHRoaXMuX2ZpbGVzVG9SZW5hbWUpIHsKICAgICAgICAgICAgaWYgKHRvID09IHBhdGgpIHsKICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICAgIGlmICh0aGlzLl9maWxlQWxyZWFkeUV4aXN0RXhjZXB0aW9uU2V0LmhhcyhwYXRoKSB8fCB0aGlzLl9maWxlRG9lc05vdEV4aXN0RXhjZXB0aW9uU2V0LmhhcyhwYXRoKSkgewogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLl9zdWJqZWN0Lm5leHQoeyBraW5kOiAiY3JlYXRlIiwgcGF0aCwgY29udGVudCB9KTsKICAgICAgICB9KTsKICAgICAgICB0aGlzLl9maWxlc1RvVXBkYXRlLmZvckVhY2goKGNvbnRlbnQsIHBhdGgpID0+IHsKICAgICAgICAgIHRoaXMuX3N1YmplY3QubmV4dCh7IGtpbmQ6ICJ1cGRhdGUiLCBwYXRoLCBjb250ZW50IH0pOwogICAgICAgIH0pOwogICAgICAgIHRoaXMuX3N1YmplY3QuY29tcGxldGUoKTsKICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5vZikodm9pZCAwKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkRyeVJ1blNpbmsgPSBEcnlSdW5TaW5rOwogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvd29ya2Zsb3cvYmFzZS5qcwp2YXIgcmVxdWlyZV9iYXNlID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy93b3JrZmxvdy9iYXNlLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5CYXNlV29ya2Zsb3cgPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGVuZ2luZV8xID0gcmVxdWlyZV9lbmdpbmUyKCk7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIHZhciBmb3JtYXRzXzEgPSByZXF1aXJlX2Zvcm1hdHMyKCk7CiAgICB2YXIgZHJ5cnVuXzEgPSByZXF1aXJlX2RyeXJ1bigpOwogICAgdmFyIGhvc3RfMSA9IHJlcXVpcmVfaG9zdDQoKTsKICAgIHZhciBob3N0X3RyZWVfMSA9IHJlcXVpcmVfaG9zdF90cmVlKCk7CiAgICB2YXIgQmFzZVdvcmtmbG93ID0gY2xhc3MgewogICAgICBfZW5naW5lOwogICAgICBfZW5naW5lSG9zdDsKICAgICAgX3JlZ2lzdHJ5OwogICAgICBfaG9zdDsKICAgICAgX3JlcG9ydGVyID0gbmV3IHJ4anNfMS5TdWJqZWN0KCk7CiAgICAgIF9saWZlQ3ljbGUgPSBuZXcgcnhqc18xLlN1YmplY3QoKTsKICAgICAgX2NvbnRleHQ7CiAgICAgIF9mb3JjZTsKICAgICAgX2RyeVJ1bjsKICAgICAgY29uc3RydWN0b3Iob3B0aW9ucykgewogICAgICAgIHRoaXMuX2hvc3QgPSBvcHRpb25zLmhvc3Q7CiAgICAgICAgdGhpcy5fZW5naW5lSG9zdCA9IG9wdGlvbnMuZW5naW5lSG9zdDsKICAgICAgICBpZiAob3B0aW9ucy5yZWdpc3RyeSkgewogICAgICAgICAgdGhpcy5fcmVnaXN0cnkgPSBvcHRpb25zLnJlZ2lzdHJ5OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0aGlzLl9yZWdpc3RyeSA9IG5ldyBjb3JlXzEuc2NoZW1hLkNvcmVTY2hlbWFSZWdpc3RyeShmb3JtYXRzXzEuc3RhbmRhcmRGb3JtYXRzKTsKICAgICAgICAgIHRoaXMuX3JlZ2lzdHJ5LmFkZFBvc3RUcmFuc2Zvcm0oY29yZV8xLnNjaGVtYS50cmFuc2Zvcm1zLmFkZFVuZGVmaW5lZERlZmF1bHRzKTsKICAgICAgICB9CiAgICAgICAgdGhpcy5fZW5naW5lID0gbmV3IGVuZ2luZV8xLlNjaGVtYXRpY0VuZ2luZSh0aGlzLl9lbmdpbmVIb3N0LCB0aGlzKTsKICAgICAgICB0aGlzLl9jb250ZXh0ID0gW107CiAgICAgICAgdGhpcy5fZm9yY2UgPSBvcHRpb25zLmZvcmNlIHx8IGZhbHNlOwogICAgICAgIHRoaXMuX2RyeVJ1biA9IG9wdGlvbnMuZHJ5UnVuIHx8IGZhbHNlOwogICAgICB9CiAgICAgIGdldCBjb250ZXh0KCkgewogICAgICAgIGNvbnN0IG1heWJlQ29udGV4dCA9IHRoaXMuX2NvbnRleHRbdGhpcy5fY29udGV4dC5sZW5ndGggLSAxXTsKICAgICAgICBpZiAoIW1heWJlQ29udGV4dCkgewogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgZ2V0IGNvbnRleHQgd2hlbiB3b3JrZmxvdyBpcyBub3QgZXhlY3V0aW5nLi4uIik7CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXliZUNvbnRleHQ7CiAgICAgIH0KICAgICAgZ2V0IGVuZ2luZSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fZW5naW5lOwogICAgICB9CiAgICAgIGdldCBlbmdpbmVIb3N0KCkgewogICAgICAgIHJldHVybiB0aGlzLl9lbmdpbmVIb3N0OwogICAgICB9CiAgICAgIGdldCByZWdpc3RyeSgpIHsKICAgICAgICByZXR1cm4gdGhpcy5fcmVnaXN0cnk7CiAgICAgIH0KICAgICAgZ2V0IHJlcG9ydGVyKCkgewogICAgICAgIHJldHVybiB0aGlzLl9yZXBvcnRlci5hc09ic2VydmFibGUoKTsKICAgICAgfQogICAgICBnZXQgbGlmZUN5Y2xlKCkgewogICAgICAgIHJldHVybiB0aGlzLl9saWZlQ3ljbGUuYXNPYnNlcnZhYmxlKCk7CiAgICAgIH0KICAgICAgX2NyZWF0ZVNpbmtzKCkgewogICAgICAgIGxldCBlcnJvciA9IGZhbHNlOwogICAgICAgIGNvbnN0IGRyeVJ1blNpbmsgPSBuZXcgZHJ5cnVuXzEuRHJ5UnVuU2luayh0aGlzLl9ob3N0LCB0aGlzLl9mb3JjZSk7CiAgICAgICAgY29uc3QgZHJ5UnVuU3Vic2NyaWJlciA9IGRyeVJ1blNpbmsucmVwb3J0ZXIuc3Vic2NyaWJlKChldmVudCkgPT4gewogICAgICAgICAgdGhpcy5fcmVwb3J0ZXIubmV4dChldmVudCk7CiAgICAgICAgICBlcnJvciA9IGVycm9yIHx8IGV2ZW50LmtpbmQgPT0gImVycm9yIjsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gWwogICAgICAgICAgZHJ5UnVuU2luaywKICAgICAgICAgIC8vIEFkZCBhIGN1c3RvbSBzaW5rIHRoYXQgY2xlYW4gb3Vyc2VsdmVzIGFuZCB0aHJvd3MgYW4gZXJyb3IgaWYgYW4gZXJyb3IgaGFwcGVuZWQuCiAgICAgICAgICB7CiAgICAgICAgICAgIGNvbW1pdCgpIHsKICAgICAgICAgICAgICBkcnlSdW5TdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7CiAgICAgICAgICAgICAgaWYgKGVycm9yKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS50aHJvd0Vycm9yKShuZXcgZXhjZXB0aW9uXzEuVW5zdWNjZXNzZnVsV29ya2Zsb3dFeGVjdXRpb24oKSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHJldHVybiAoMCwgcnhqc18xLm9mKSgpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LAogICAgICAgICAgLy8gT25seSBhZGQgYSBIb3N0U2luayBpZiB0aGlzIGlzIG5vdCBhIGRyeVJ1bi4KICAgICAgICAgIC4uLiF0aGlzLl9kcnlSdW4gPyBbbmV3IGhvc3RfMS5Ib3N0U2luayh0aGlzLl9ob3N0LCB0aGlzLl9mb3JjZSldIDogW10KICAgICAgICBdOwogICAgICB9CiAgICAgIGV4ZWN1dGUob3B0aW9ucykgewogICAgICAgIGNvbnN0IHBhcmVudENvbnRleHQgPSB0aGlzLl9jb250ZXh0W3RoaXMuX2NvbnRleHQubGVuZ3RoIC0gMV07CiAgICAgICAgaWYgKCFwYXJlbnRDb250ZXh0KSB7CiAgICAgICAgICB0aGlzLl9saWZlQ3ljbGUubmV4dCh7IGtpbmQ6ICJzdGFydCIgfSk7CiAgICAgICAgfQogICAgICAgIGNvbnN0IGNvbGxlY3Rpb24gPSB0aGlzLl9lbmdpbmUuY3JlYXRlQ29sbGVjdGlvbihvcHRpb25zLmNvbGxlY3Rpb24pOwogICAgICAgIGNvbnN0IGFsbG93UHJpdmF0ZSA9IG9wdGlvbnMuYWxsb3dQcml2YXRlIHx8IHBhcmVudENvbnRleHQgJiYgcGFyZW50Q29udGV4dC5jb2xsZWN0aW9uID09PSBvcHRpb25zLmNvbGxlY3Rpb247CiAgICAgICAgY29uc3Qgc2NoZW1hdGljID0gY29sbGVjdGlvbi5jcmVhdGVTY2hlbWF0aWMob3B0aW9ucy5zY2hlbWF0aWMsIGFsbG93UHJpdmF0ZSk7CiAgICAgICAgY29uc3Qgc2lua3MgPSB0aGlzLl9jcmVhdGVTaW5rcygpOwogICAgICAgIHRoaXMuX2xpZmVDeWNsZS5uZXh0KHsga2luZDogIndvcmtmbG93LXN0YXJ0IiB9KTsKICAgICAgICBjb25zdCBjb250ZXh0ID0gewogICAgICAgICAgLi4ub3B0aW9ucywKICAgICAgICAgIGRlYnVnOiBvcHRpb25zLmRlYnVnIHx8IGZhbHNlLAogICAgICAgICAgbG9nZ2VyOiBvcHRpb25zLmxvZ2dlciB8fCBwYXJlbnRDb250ZXh0ICYmIHBhcmVudENvbnRleHQubG9nZ2VyIHx8IG5ldyBjb3JlXzEubG9nZ2luZy5OdWxsTG9nZ2VyKCksCiAgICAgICAgICBwYXJlbnRDb250ZXh0CiAgICAgICAgfTsKICAgICAgICB0aGlzLl9jb250ZXh0LnB1c2goY29udGV4dCk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYy5jYWxsKG9wdGlvbnMub3B0aW9ucywgKDAsIHJ4anNfMS5vZikobmV3IGhvc3RfdHJlZV8xLkhvc3RUcmVlKHRoaXMuX2hvc3QpKSwgeyBsb2dnZXI6IGNvbnRleHQubG9nZ2VyIH0pLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKCh0cmVlKSA9PiB7CiAgICAgICAgICByZXR1cm4gKDAsIHJ4anNfMS5jb25jYXQpKCgwLCByeGpzXzEuZnJvbSkoc2lua3MpLnBpcGUoKDAsIHJ4anNfMS5jb25jYXRNYXApKChzaW5rKSA9PiBzaW5rLmNvbW1pdCh0cmVlKSksICgwLCByeGpzXzEuaWdub3JlRWxlbWVudHMpKCkpLCAoMCwgcnhqc18xLm9mKSh0cmVlKSk7CiAgICAgICAgfSksICgwLCByeGpzXzEuY29uY2F0TWFwKSgoKSA9PiB7CiAgICAgICAgICBpZiAodGhpcy5fZHJ5UnVuKSB7CiAgICAgICAgICAgIHJldHVybiByeGpzXzEuRU1QVFk7CiAgICAgICAgICB9CiAgICAgICAgICB0aGlzLl9saWZlQ3ljbGUubmV4dCh7IGtpbmQ6ICJwb3N0LXRhc2tzLXN0YXJ0IiB9KTsKICAgICAgICAgIHJldHVybiB0aGlzLl9lbmdpbmUuZXhlY3V0ZVBvc3RUYXNrcygpLnBpcGUoKDAsIHJ4anNfMS50YXApKHsgY29tcGxldGU6ICgpID0+IHRoaXMuX2xpZmVDeWNsZS5uZXh0KHsga2luZDogInBvc3QtdGFza3MtZW5kIiB9KSB9KSwgKDAsIHJ4anNfMS5kZWZhdWx0SWZFbXB0eSkodm9pZCAwKSwgKDAsIHJ4anNfMS5sYXN0KSgpKTsKICAgICAgICB9KSwgKDAsIHJ4anNfMS50YXApKHsKICAgICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7CiAgICAgICAgICAgIHRoaXMuX2xpZmVDeWNsZS5uZXh0KHsga2luZDogIndvcmtmbG93LWVuZCIgfSk7CiAgICAgICAgICAgIHRoaXMuX2NvbnRleHQucG9wKCk7CiAgICAgICAgICAgIGlmICh0aGlzLl9jb250ZXh0Lmxlbmd0aCA9PSAwKSB7CiAgICAgICAgICAgICAgdGhpcy5fbGlmZUN5Y2xlLm5leHQoeyBraW5kOiAiZW5kIiB9KTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkJhc2VXb3JrZmxvdyA9IEJhc2VXb3JrZmxvdzsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3dvcmtmbG93L2ludGVyZmFjZS5qcwp2YXIgcmVxdWlyZV9pbnRlcmZhY2U1ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy93b3JrZmxvdy9pbnRlcmZhY2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3dvcmtmbG93L2luZGV4LmpzCnZhciByZXF1aXJlX3dvcmtmbG93ID0gX19jb21tb25KUyh7CiAgIi4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy93b3JrZmxvdy9pbmRleC5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2NyZWF0ZUJpbmRpbmcgfHwgKE9iamVjdC5jcmVhdGUgPyBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7CiAgICAgIGlmICghZGVzYyB8fCAoImdldCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkgewogICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gbVtrXTsKICAgICAgICB9IH07CiAgICAgIH0KICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTsKICAgIH0gOiBmdW5jdGlvbihvLCBtLCBrLCBrMikgewogICAgICBpZiAoazIgPT09IHZvaWQgMCkgazIgPSBrOwogICAgICBvW2syXSA9IG1ba107CiAgICB9KTsKICAgIHZhciBfX2V4cG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2V4cG9ydFN0YXIgfHwgZnVuY3Rpb24obSwgZXhwb3J0czMpIHsKICAgICAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZXhwb3J0czMsIHApKSBfX2NyZWF0ZUJpbmRpbmcoZXhwb3J0czMsIG0sIHApOwogICAgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfYmFzZSgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9pbnRlcmZhY2U1KCksIGV4cG9ydHMyKTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL2Jhc2UuanMKdmFyIHJlcXVpcmVfYmFzZTIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL2Jhc2UuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLnNvdXJjZSA9IHNvdXJjZTsKICAgIGV4cG9ydHMyLmVtcHR5ID0gZW1wdHk7CiAgICBleHBvcnRzMi5jaGFpbiA9IGNoYWluMjsKICAgIGV4cG9ydHMyLmFwcGx5ID0gYXBwbHkzOwogICAgZXhwb3J0czIubWVyZ2VXaXRoID0gbWVyZ2VXaXRoMjsKICAgIGV4cG9ydHMyLm5vb3AgPSBub29wOwogICAgZXhwb3J0czIuZmlsdGVyID0gZmlsdGVyOwogICAgZXhwb3J0czIuYXNTb3VyY2UgPSBhc1NvdXJjZTsKICAgIGV4cG9ydHMyLmJyYW5jaEFuZE1lcmdlID0gYnJhbmNoQW5kTWVyZ2U7CiAgICBleHBvcnRzMi53aGVuID0gd2hlbjsKICAgIGV4cG9ydHMyLnBhcnRpdGlvbkFwcGx5TWVyZ2UgPSBwYXJ0aXRpb25BcHBseU1lcmdlOwogICAgZXhwb3J0czIuZm9yRWFjaCA9IGZvckVhY2g7CiAgICBleHBvcnRzMi5jb21wb3NlRmlsZU9wZXJhdG9ycyA9IGNvbXBvc2VGaWxlT3BlcmF0b3JzOwogICAgZXhwb3J0czIuYXBwbHlUb1N1YnRyZWUgPSBhcHBseVRvU3VidHJlZTsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGV4Y2VwdGlvbl8xID0gcmVxdWlyZV9leGNlcHRpb24yKCk7CiAgICB2YXIgaG9zdF90cmVlXzEgPSByZXF1aXJlX2hvc3RfdHJlZSgpOwogICAgdmFyIGludGVyZmFjZV8xID0gcmVxdWlyZV9pbnRlcmZhY2UzKCk7CiAgICB2YXIgc2NvcGVkXzEgPSByZXF1aXJlX3Njb3BlZDIoKTsKICAgIHZhciBzdGF0aWNfMSA9IHJlcXVpcmVfc3RhdGljKCk7CiAgICB2YXIgY2FsbF8xID0gcmVxdWlyZV9jYWxsKCk7CiAgICBmdW5jdGlvbiBzb3VyY2UodHJlZSkgewogICAgICByZXR1cm4gKCkgPT4gdHJlZTsKICAgIH0KICAgIGZ1bmN0aW9uIGVtcHR5KCkgewogICAgICByZXR1cm4gKCkgPT4gKDAsIHN0YXRpY18xLmVtcHR5KSgpOwogICAgfQogICAgZnVuY3Rpb24gY2hhaW4yKHJ1bGVzKSB7CiAgICAgIHJldHVybiBhc3luYyAoaW5pdGlhbFRyZWUsIGNvbnRleHQpID0+IHsKICAgICAgICBsZXQgaW50ZXJtZWRpYXRlVHJlZTsKICAgICAgICBpZiAoU3ltYm9sLmFzeW5jSXRlcmF0b3IgaW4gcnVsZXMpIHsKICAgICAgICAgIGZvciBhd2FpdCAoY29uc3QgcnVsZSBvZiBydWxlcykgewogICAgICAgICAgICBpbnRlcm1lZGlhdGVUcmVlID0gKDAsIGNhbGxfMS5jYWxsUnVsZSkocnVsZSwgaW50ZXJtZWRpYXRlVHJlZSA/PyBpbml0aWFsVHJlZSwgY29udGV4dCk7CiAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGZvciAoY29uc3QgcnVsZSBvZiBydWxlcykgewogICAgICAgICAgICBpbnRlcm1lZGlhdGVUcmVlID0gKDAsIGNhbGxfMS5jYWxsUnVsZSkocnVsZSwgaW50ZXJtZWRpYXRlVHJlZSA/PyBpbml0aWFsVHJlZSwgY29udGV4dCk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiAoKSA9PiBpbnRlcm1lZGlhdGVUcmVlOwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gYXBwbHkzKHNvdXJjZTIsIHJ1bGVzKSB7CiAgICAgIHJldHVybiAoY29udGV4dCkgPT4gKDAsIGNhbGxfMS5jYWxsUnVsZSkoY2hhaW4yKHJ1bGVzKSwgKDAsIGNhbGxfMS5jYWxsU291cmNlKShzb3VyY2UyLCBjb250ZXh0KSwgY29udGV4dCk7CiAgICB9CiAgICBmdW5jdGlvbiBtZXJnZVdpdGgyKHNvdXJjZTIsIHN0cmF0ZWd5ID0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5EZWZhdWx0KSB7CiAgICAgIHJldHVybiAodHJlZSwgY29udGV4dCkgPT4gewogICAgICAgIHJldHVybiAoMCwgY2FsbF8xLmNhbGxTb3VyY2UpKHNvdXJjZTIsIGNvbnRleHQpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChzb3VyY2VUcmVlKSA9PiB0cmVlLm1lcmdlKHNvdXJjZVRyZWUsIHN0cmF0ZWd5IHx8IGNvbnRleHQuc3RyYXRlZ3kpKSwgKDAsIHJ4anNfMS5tYXBUbykodHJlZSkpOwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gbm9vcCgpIHsKICAgICAgcmV0dXJuICgpID0+IHsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGZpbHRlcihwcmVkaWNhdGUpIHsKICAgICAgcmV0dXJuICh0cmVlKSA9PiB7CiAgICAgICAgaWYgKGhvc3RfdHJlZV8xLkhvc3RUcmVlLmlzSG9zdFRyZWUodHJlZSkpIHsKICAgICAgICAgIHJldHVybiBuZXcgaG9zdF90cmVlXzEuRmlsdGVySG9zdFRyZWUodHJlZSwgcHJlZGljYXRlKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhyb3cgbmV3IGV4Y2VwdGlvbl8xLlNjaGVtYXRpY3NFeGNlcHRpb24oIlRyZWUgdHlwZSBpcyBub3Qgc3VwcG9ydGVkLiIpOwogICAgICAgIH0KICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGFzU291cmNlKHJ1bGUpIHsKICAgICAgcmV0dXJuIChjb250ZXh0KSA9PiAoMCwgY2FsbF8xLmNhbGxSdWxlKShydWxlLCAoMCwgc3RhdGljXzEuZW1wdHkpKCksIGNvbnRleHQpOwogICAgfQogICAgZnVuY3Rpb24gYnJhbmNoQW5kTWVyZ2UocnVsZSwgc3RyYXRlZ3kgPSBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkRlZmF1bHQpIHsKICAgICAgcmV0dXJuICh0cmVlLCBjb250ZXh0KSA9PiB7CiAgICAgICAgcmV0dXJuICgwLCBjYWxsXzEuY2FsbFJ1bGUpKHJ1bGUsIHRyZWUuYnJhbmNoKCksIGNvbnRleHQpLnBpcGUoKDAsIHJ4anNfMS5tYXApKChicmFuY2gpID0+IHRyZWUubWVyZ2UoYnJhbmNoLCBzdHJhdGVneSB8fCBjb250ZXh0LnN0cmF0ZWd5KSksICgwLCByeGpzXzEubWFwVG8pKHRyZWUpKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHdoZW4ocHJlZGljYXRlLCBvcGVyYXRvcikgewogICAgICByZXR1cm4gKGVudHJ5KSA9PiB7CiAgICAgICAgaWYgKHByZWRpY2F0ZShlbnRyeS5wYXRoLCBlbnRyeSkpIHsKICAgICAgICAgIHJldHVybiBvcGVyYXRvcihlbnRyeSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJldHVybiBlbnRyeTsKICAgICAgICB9CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBwYXJ0aXRpb25BcHBseU1lcmdlKHByZWRpY2F0ZSwgcnVsZVllcywgcnVsZU5vKSB7CiAgICAgIHJldHVybiAodHJlZSwgY29udGV4dCkgPT4gewogICAgICAgIGNvbnN0IFt5ZXMsIG5vXSA9ICgwLCBzdGF0aWNfMS5wYXJ0aXRpb24pKHRyZWUsIHByZWRpY2F0ZSk7CiAgICAgICAgcmV0dXJuICgwLCByeGpzXzEuY29uY2F0KSgoMCwgY2FsbF8xLmNhbGxSdWxlKShydWxlWWVzLCB5ZXMsIGNvbnRleHQpLCAoMCwgY2FsbF8xLmNhbGxSdWxlKShydWxlTm8gfHwgbm9vcCgpLCBubywgY29udGV4dCkpLnBpcGUoKDAsIHJ4anNfMS50b0FycmF5KSgpLCAoMCwgcnhqc18xLm1hcCkoKFt5ZXNUcmVlLCBub1RyZWVdKSA9PiB7CiAgICAgICAgICB5ZXNUcmVlLm1lcmdlKG5vVHJlZSwgY29udGV4dC5zdHJhdGVneSk7CiAgICAgICAgICByZXR1cm4geWVzVHJlZTsKICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBmb3JFYWNoKG9wZXJhdG9yKSB7CiAgICAgIHJldHVybiAodHJlZSkgPT4gewogICAgICAgIHRyZWUudmlzaXQoKHBhdGgsIGVudHJ5KSA9PiB7CiAgICAgICAgICBpZiAoIWVudHJ5KSB7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IG5ld0VudHJ5ID0gb3BlcmF0b3IoZW50cnkpOwogICAgICAgICAgaWYgKG5ld0VudHJ5ID09PSBlbnRyeSkgewogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICB9CiAgICAgICAgICBpZiAobmV3RW50cnkgPT09IG51bGwpIHsKICAgICAgICAgICAgdHJlZS5kZWxldGUocGF0aCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChuZXdFbnRyeS5wYXRoICE9IHBhdGgpIHsKICAgICAgICAgICAgdHJlZS5yZW5hbWUocGF0aCwgbmV3RW50cnkucGF0aCk7CiAgICAgICAgICB9CiAgICAgICAgICBpZiAoIW5ld0VudHJ5LmNvbnRlbnQuZXF1YWxzKGVudHJ5LmNvbnRlbnQpKSB7CiAgICAgICAgICAgIHRyZWUub3ZlcndyaXRlKG5ld0VudHJ5LnBhdGgsIG5ld0VudHJ5LmNvbnRlbnQpOwogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gY29tcG9zZUZpbGVPcGVyYXRvcnMob3BlcmF0b3JzKSB7CiAgICAgIHJldHVybiAoZW50cnkpID0+IHsKICAgICAgICBsZXQgY3VycmVudCA9IGVudHJ5OwogICAgICAgIGZvciAoY29uc3Qgb3Agb2Ygb3BlcmF0b3JzKSB7CiAgICAgICAgICBjdXJyZW50ID0gb3AoY3VycmVudCk7CiAgICAgICAgICBpZiAoY3VycmVudCA9PT0gbnVsbCkgewogICAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIGN1cnJlbnQ7CiAgICAgIH07CiAgICB9CiAgICBmdW5jdGlvbiBhcHBseVRvU3VidHJlZShwYXRoLCBydWxlcykgewogICAgICByZXR1cm4gKHRyZWUsIGNvbnRleHQpID0+IHsKICAgICAgICBjb25zdCBzY29wZWQgPSBuZXcgc2NvcGVkXzEuU2NvcGVkVHJlZSh0cmVlLCBwYXRoKTsKICAgICAgICByZXR1cm4gKDAsIGNhbGxfMS5jYWxsUnVsZSkoY2hhaW4yKHJ1bGVzKSwgc2NvcGVkLCBjb250ZXh0KS5waXBlKCgwLCByeGpzXzEubWFwKSgocmVzdWx0KSA9PiB7CiAgICAgICAgICBpZiAocmVzdWx0ID09PSBzY29wZWQpIHsKICAgICAgICAgICAgcmV0dXJuIHRyZWU7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aHJvdyBuZXcgZXhjZXB0aW9uXzEuU2NoZW1hdGljc0V4Y2VwdGlvbignT3JpZ2luYWwgdHJlZSBtdXN0IGJlIHJldHVybmVkIGZyb20gYWxsIHJ1bGVzIHdoZW4gdXNpbmcgImFwcGx5VG9TdWJ0cmVlIi4nKTsKICAgICAgICAgIH0KICAgICAgICB9KSk7CiAgICAgIH07CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9ydWxlcy9tb3ZlLmpzCnZhciByZXF1aXJlX21vdmUgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL21vdmUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLm1vdmUgPSBtb3ZlMzsKICAgIHZhciBjb3JlXzEgPSByZXF1aXJlX3NyYygpOwogICAgdmFyIGJhc2VfMSA9IHJlcXVpcmVfYmFzZTIoKTsKICAgIGZ1bmN0aW9uIG1vdmUzKGZyb20sIHRvKSB7CiAgICAgIGlmICh0byA9PT0gdm9pZCAwKSB7CiAgICAgICAgdG8gPSBmcm9tOwogICAgICAgIGZyb20gPSAiLyI7CiAgICAgIH0KICAgICAgY29uc3QgZnJvbVBhdGggPSAoMCwgY29yZV8xLm5vcm1hbGl6ZSkoIi8iICsgZnJvbSk7CiAgICAgIGNvbnN0IHRvUGF0aCA9ICgwLCBjb3JlXzEubm9ybWFsaXplKSgiLyIgKyB0byk7CiAgICAgIGlmIChmcm9tUGF0aCA9PT0gdG9QYXRoKSB7CiAgICAgICAgcmV0dXJuIGJhc2VfMS5ub29wOwogICAgICB9CiAgICAgIHJldHVybiAodHJlZSkgPT4gewogICAgICAgIGlmICh0cmVlLmV4aXN0cyhmcm9tUGF0aCkpIHsKICAgICAgICAgIHRyZWUucmVuYW1lKGZyb21QYXRoLCB0b1BhdGgpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0cmVlLmdldERpcihmcm9tUGF0aCkudmlzaXQoKHBhdGgpID0+IHsKICAgICAgICAgICAgdHJlZS5yZW5hbWUocGF0aCwgKDAsIGNvcmVfMS5qb2luKSh0b1BhdGgsIHBhdGguc2xpY2UoZnJvbVBhdGgubGVuZ3RoKSkpOwogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0cmVlOwogICAgICB9OwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvcmFuZG9tLmpzCnZhciByZXF1aXJlX3JhbmRvbSA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvcmFuZG9tLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5kZWZhdWx0ID0gZGVmYXVsdF8xOwogICAgdmFyIGhvc3RfdHJlZV8xID0gcmVxdWlyZV9ob3N0X3RyZWUoKTsKICAgIGZ1bmN0aW9uIGdlbmVyYXRlU3RyaW5nT2ZMZW5ndGgobCkgewogICAgICByZXR1cm4gbmV3IEFycmF5KGwpLmZpbGwoMCkubWFwKChfeCkgPT4gewogICAgICAgIHJldHVybiAiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXoiW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIDI2KV07CiAgICAgIH0pLmpvaW4oIiIpOwogICAgfQogICAgZnVuY3Rpb24gcmFuZG9tKGZyb20sIHRvKSB7CiAgICAgIHJldHVybiBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAodG8gLSBmcm9tKSkgKyBmcm9tOwogICAgfQogICAgZnVuY3Rpb24gZGVmYXVsdF8xKG9wdGlvbnMpIHsKICAgICAgcmV0dXJuICgpID0+IHsKICAgICAgICBjb25zdCByb290ID0gInJvb3QiIGluIG9wdGlvbnMgPyBvcHRpb25zLnJvb3QgOiAiLyI7CiAgICAgICAgY29uc3QgbWFwID0gbmV3IGhvc3RfdHJlZV8xLkhvc3RUcmVlKCk7CiAgICAgICAgY29uc3QgbmJGaWxlcyA9ICJtdWx0aUZpbGVzIiBpbiBvcHRpb25zID8gdHlwZW9mIG9wdGlvbnMubXVsdGlGaWxlcyA9PSAibnVtYmVyIiA/IG9wdGlvbnMubXVsdGlGaWxlcyA6IHJhbmRvbSgyLCAxMikgOiAxOwogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbmJGaWxlczsgaSsrKSB7CiAgICAgICAgICBjb25zdCBwYXRoID0gImEvYi9jL2QvZS9mIi5zbGljZShNYXRoLnJhbmRvbSgpICogMTApOwogICAgICAgICAgY29uc3QgZmlsZU5hbWUgPSBnZW5lcmF0ZVN0cmluZ09mTGVuZ3RoKDIwKTsKICAgICAgICAgIGNvbnN0IGNvbnRlbnQgPSBnZW5lcmF0ZVN0cmluZ09mTGVuZ3RoKDEwMCk7CiAgICAgICAgICBtYXAuY3JlYXRlKHJvb3QgKyAiLyIgKyBwYXRoICsgIi8iICsgZmlsZU5hbWUsIGNvbnRlbnQpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbWFwOwogICAgICB9OwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvc2NoZW1hdGljLmpzCnZhciByZXF1aXJlX3NjaGVtYXRpYzIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL3NjaGVtYXRpYy5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuZXh0ZXJuYWxTY2hlbWF0aWMgPSBleHRlcm5hbFNjaGVtYXRpYzsKICAgIGV4cG9ydHMyLnNjaGVtYXRpYyA9IHNjaGVtYXRpYzsKICAgIHZhciByeGpzXzEgPSByZXF1aXJlX2NqcygpOwogICAgdmFyIGludGVyZmFjZV8xID0gcmVxdWlyZV9pbnRlcmZhY2UzKCk7CiAgICB2YXIgc3RhdGljXzEgPSByZXF1aXJlX3N0YXRpYygpOwogICAgZnVuY3Rpb24gZXh0ZXJuYWxTY2hlbWF0aWMoY29sbGVjdGlvbk5hbWUsIHNjaGVtYXRpY05hbWUsIG9wdGlvbnMsIGV4ZWN1dGlvbk9wdGlvbnMpIHsKICAgICAgcmV0dXJuIChpbnB1dCwgY29udGV4dCkgPT4gewogICAgICAgIGNvbnN0IGNvbGxlY3Rpb24gPSBjb250ZXh0LmVuZ2luZS5jcmVhdGVDb2xsZWN0aW9uKGNvbGxlY3Rpb25OYW1lLCBjb250ZXh0LnNjaGVtYXRpYy5jb2xsZWN0aW9uKTsKICAgICAgICBjb25zdCBzY2hlbWF0aWMyID0gY29sbGVjdGlvbi5jcmVhdGVTY2hlbWF0aWMoc2NoZW1hdGljTmFtZSk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYzIuY2FsbChvcHRpb25zLCAoMCwgcnhqc18xLm9mKSgoMCwgc3RhdGljXzEuYnJhbmNoKShpbnB1dCkpLCBjb250ZXh0LCBleGVjdXRpb25PcHRpb25zKS5waXBlKCgwLCByeGpzXzEubGFzdCkoKSwgKDAsIHJ4anNfMS5tYXApKCh4KSA9PiB7CiAgICAgICAgICBpbnB1dC5tZXJnZSh4LCBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkFsbG93T3ZlcndyaXRlQ29uZmxpY3QpOwogICAgICAgICAgcmV0dXJuIGlucHV0OwogICAgICAgIH0pKTsKICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIHNjaGVtYXRpYyhzY2hlbWF0aWNOYW1lLCBvcHRpb25zLCBleGVjdXRpb25PcHRpb25zKSB7CiAgICAgIHJldHVybiAoaW5wdXQsIGNvbnRleHQpID0+IHsKICAgICAgICBjb25zdCBjb2xsZWN0aW9uID0gY29udGV4dC5zY2hlbWF0aWMuY29sbGVjdGlvbjsKICAgICAgICBjb25zdCBzY2hlbWF0aWMyID0gY29sbGVjdGlvbi5jcmVhdGVTY2hlbWF0aWMoc2NoZW1hdGljTmFtZSwgdHJ1ZSk7CiAgICAgICAgcmV0dXJuIHNjaGVtYXRpYzIuY2FsbChvcHRpb25zLCAoMCwgcnhqc18xLm9mKSgoMCwgc3RhdGljXzEuYnJhbmNoKShpbnB1dCkpLCBjb250ZXh0LCBleGVjdXRpb25PcHRpb25zKS5waXBlKCgwLCByeGpzXzEubGFzdCkoKSwgKDAsIHJ4anNfMS5tYXApKCh4KSA9PiB7CiAgICAgICAgICBpbnB1dC5tZXJnZSh4LCBpbnRlcmZhY2VfMS5NZXJnZVN0cmF0ZWd5LkFsbG93T3ZlcndyaXRlQ29uZmxpY3QpOwogICAgICAgICAgcmV0dXJuIGlucHV0OwogICAgICAgIH0pKTsKICAgICAgfTsKICAgIH0KICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL3RlbXBsYXRlLmpzCnZhciByZXF1aXJlX3RlbXBsYXRlMiA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvdGVtcGxhdGUuanMiKGV4cG9ydHMyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0czIsICJfX2VzTW9kdWxlIiwgeyB2YWx1ZTogdHJ1ZSB9KTsKICAgIGV4cG9ydHMyLkludmFsaWRQaXBlRXhjZXB0aW9uID0gZXhwb3J0czIuVW5rbm93blBpcGVFeGNlcHRpb24gPSBleHBvcnRzMi5PcHRpb25Jc05vdERlZmluZWRFeGNlcHRpb24gPSBleHBvcnRzMi5URU1QTEFURV9GSUxFTkFNRV9SRSA9IHZvaWQgMDsKICAgIGV4cG9ydHMyLmFwcGx5Q29udGVudFRlbXBsYXRlID0gYXBwbHlDb250ZW50VGVtcGxhdGU7CiAgICBleHBvcnRzMi5jb250ZW50VGVtcGxhdGUgPSBjb250ZW50VGVtcGxhdGU7CiAgICBleHBvcnRzMi5hcHBseVBhdGhUZW1wbGF0ZSA9IGFwcGx5UGF0aFRlbXBsYXRlOwogICAgZXhwb3J0czIucGF0aFRlbXBsYXRlID0gcGF0aFRlbXBsYXRlOwogICAgZXhwb3J0czIucmVuYW1lVGVtcGxhdGVGaWxlcyA9IHJlbmFtZVRlbXBsYXRlRmlsZXM7CiAgICBleHBvcnRzMi50ZW1wbGF0ZSA9IHRlbXBsYXRlMzsKICAgIGV4cG9ydHMyLmFwcGx5VGVtcGxhdGVzID0gYXBwbHlUZW1wbGF0ZXM7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIHZhciBub2RlX29zXzEgPSByZXF1aXJlKCJub2RlOm9zIik7CiAgICB2YXIgYmFzZV8xID0gcmVxdWlyZV9iYXNlMigpOwogICAgZXhwb3J0czIuVEVNUExBVEVfRklMRU5BTUVfUkUgPSAvXC50ZW1wbGF0ZSQvOwogICAgdmFyIE9wdGlvbklzTm90RGVmaW5lZEV4Y2VwdGlvbiA9IGNsYXNzIGV4dGVuZHMgY29yZV8xLkJhc2VFeGNlcHRpb24gewogICAgICBjb25zdHJ1Y3RvcihuYW1lKSB7CiAgICAgICAgc3VwZXIoYE9wdGlvbiAiJHtuYW1lfSIgaXMgbm90IGRlZmluZWQuYCk7CiAgICAgIH0KICAgIH07CiAgICBleHBvcnRzMi5PcHRpb25Jc05vdERlZmluZWRFeGNlcHRpb24gPSBPcHRpb25Jc05vdERlZmluZWRFeGNlcHRpb247CiAgICB2YXIgVW5rbm93blBpcGVFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBQaXBlICIke25hbWV9IiBpcyBub3QgZGVmaW5lZC5gKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLlVua25vd25QaXBlRXhjZXB0aW9uID0gVW5rbm93blBpcGVFeGNlcHRpb247CiAgICB2YXIgSW52YWxpZFBpcGVFeGNlcHRpb24gPSBjbGFzcyBleHRlbmRzIGNvcmVfMS5CYXNlRXhjZXB0aW9uIHsKICAgICAgY29uc3RydWN0b3IobmFtZSkgewogICAgICAgIHN1cGVyKGBQaXBlICIke25hbWV9IiBpcyBpbnZhbGlkLmApOwogICAgICB9CiAgICB9OwogICAgZXhwb3J0czIuSW52YWxpZFBpcGVFeGNlcHRpb24gPSBJbnZhbGlkUGlwZUV4Y2VwdGlvbjsKICAgIHZhciBkZWNvZGVyID0gbmV3IFRleHREZWNvZGVyKCJ1dGYtOCIsIHsgZmF0YWw6IHRydWUgfSk7CiAgICBmdW5jdGlvbiBhcHBseUNvbnRlbnRUZW1wbGF0ZShvcHRpb25zKSB7CiAgICAgIHJldHVybiAoZW50cnkpID0+IHsKICAgICAgICBjb25zdCB7IHBhdGgsIGNvbnRlbnQgfSA9IGVudHJ5OwogICAgICAgIHRyeSB7CiAgICAgICAgICBjb25zdCBkZWNvZGVkQ29udGVudCA9IGRlY29kZXIuZGVjb2RlKGNvbnRlbnQpLnJlcGxhY2UoL1xyP1xuL2csIG5vZGVfb3NfMS5FT0wpOwogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgcGF0aCwKICAgICAgICAgICAgY29udGVudDogQnVmZmVyLmZyb20oKDAsIGNvcmVfMS50ZW1wbGF0ZSkoZGVjb2RlZENvbnRlbnQsIHt9KShvcHRpb25zKSkKICAgICAgICAgIH07CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IgfHwgZS5jb2RlID09PSAiRVJSX0VOQ09ESU5HX0lOVkFMSURfRU5DT0RFRF9EQVRBIikgewogICAgICAgICAgICByZXR1cm4gZW50cnk7CiAgICAgICAgICB9CiAgICAgICAgICB0aHJvdyBlOwogICAgICAgIH0KICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbnRlbnRUZW1wbGF0ZShvcHRpb25zKSB7CiAgICAgIHJldHVybiAoMCwgYmFzZV8xLmZvckVhY2gpKGFwcGx5Q29udGVudFRlbXBsYXRlKG9wdGlvbnMpKTsKICAgIH0KICAgIGZ1bmN0aW9uIGFwcGx5UGF0aFRlbXBsYXRlKGRhdGEsIG9wdGlvbnMgPSB7CiAgICAgIGludGVycG9sYXRpb25TdGFydDogIl9fIiwKICAgICAgaW50ZXJwb2xhdGlvbkVuZDogIl9fIiwKICAgICAgcGlwZVNlcGFyYXRvcjogIkAiCiAgICB9KSB7CiAgICAgIGNvbnN0IGlzID0gb3B0aW9ucy5pbnRlcnBvbGF0aW9uU3RhcnQ7CiAgICAgIGNvbnN0IGllID0gb3B0aW9ucy5pbnRlcnBvbGF0aW9uRW5kOwogICAgICBjb25zdCBpc0wgPSBpcy5sZW5ndGg7CiAgICAgIGNvbnN0IGllTCA9IGllLmxlbmd0aDsKICAgICAgcmV0dXJuIChlbnRyeSkgPT4gewogICAgICAgIGxldCBwYXRoID0gZW50cnkucGF0aDsKICAgICAgICBjb25zdCBjb250ZW50ID0gZW50cnkuY29udGVudDsKICAgICAgICBjb25zdCBvcmlnaW5hbCA9IHBhdGg7CiAgICAgICAgbGV0IHN0YXJ0ID0gcGF0aC5pbmRleE9mKGlzKTsKICAgICAgICBsZXQgZW5kID0gcGF0aC5pbmRleE9mKGllLCBzdGFydCArIGlzTCArIDEpOwogICAgICAgIHdoaWxlIChzdGFydCAhPSAtMSAmJiBlbmQgIT0gLTEpIHsKICAgICAgICAgIGNvbnN0IG1hdGNoID0gcGF0aC5zdWJzdHJpbmcoc3RhcnQgKyBpc0wsIGVuZCk7CiAgICAgICAgICBsZXQgcmVwbGFjZW1lbnQgPSBkYXRhW21hdGNoXTsKICAgICAgICAgIGlmICghb3B0aW9ucy5waXBlU2VwYXJhdG9yKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2YgcmVwbGFjZW1lbnQgPT0gImZ1bmN0aW9uIikgewogICAgICAgICAgICAgIHJlcGxhY2VtZW50ID0gcmVwbGFjZW1lbnQuY2FsbChkYXRhLCBvcmlnaW5hbCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHJlcGxhY2VtZW50ID09PSB2b2lkIDApIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgT3B0aW9uSXNOb3REZWZpbmVkRXhjZXB0aW9uKG1hdGNoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgY29uc3QgW25hbWUsIC4uLnBpcGVzXSA9IG1hdGNoLnNwbGl0KG9wdGlvbnMucGlwZVNlcGFyYXRvcik7CiAgICAgICAgICAgIHJlcGxhY2VtZW50ID0gZGF0YVtuYW1lXTsKICAgICAgICAgICAgaWYgKHR5cGVvZiByZXBsYWNlbWVudCA9PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICAgICAgcmVwbGFjZW1lbnQgPSByZXBsYWNlbWVudC5jYWxsKGRhdGEsIG9yaWdpbmFsKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAocmVwbGFjZW1lbnQgPT09IHZvaWQgMCkgewogICAgICAgICAgICAgIHRocm93IG5ldyBPcHRpb25Jc05vdERlZmluZWRFeGNlcHRpb24obmFtZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmVwbGFjZW1lbnQgPSBwaXBlcy5yZWR1Y2UoKGFjYywgcGlwZSkgPT4gewogICAgICAgICAgICAgIGlmICghcGlwZSkgewogICAgICAgICAgICAgICAgcmV0dXJuIGFjYzsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKCEocGlwZSBpbiBkYXRhKSkgewogICAgICAgICAgICAgICAgdGhyb3cgbmV3IFVua25vd25QaXBlRXhjZXB0aW9uKHBpcGUpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBjb25zdCBwaXBlRm4gPSBkYXRhW3BpcGVdOwogICAgICAgICAgICAgIGlmICh0eXBlb2YgcGlwZUZuICE9ICJmdW5jdGlvbiIpIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkUGlwZUV4Y2VwdGlvbihwaXBlKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgcmV0dXJuICIiICsgcGlwZUZuKGFjYyk7CiAgICAgICAgICAgIH0sICIiICsgcmVwbGFjZW1lbnQpOwogICAgICAgICAgfQogICAgICAgICAgcGF0aCA9IHBhdGguc3Vic3RyaW5nKDAsIHN0YXJ0KSArIHJlcGxhY2VtZW50ICsgcGF0aC5zdWJzdHJpbmcoZW5kICsgaWVMKTsKICAgICAgICAgIHN0YXJ0ID0gcGF0aC5pbmRleE9mKG9wdGlvbnMuaW50ZXJwb2xhdGlvblN0YXJ0KTsKICAgICAgICAgIGVuZCA9IHBhdGguaW5kZXhPZihvcHRpb25zLmludGVycG9sYXRpb25FbmQsIHN0YXJ0ICsgaXNMICsgMSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB7IHBhdGg6ICgwLCBjb3JlXzEubm9ybWFsaXplKShwYXRoKSwgY29udGVudCB9OwogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gcGF0aFRlbXBsYXRlKG9wdGlvbnMpIHsKICAgICAgcmV0dXJuICgwLCBiYXNlXzEuZm9yRWFjaCkoYXBwbHlQYXRoVGVtcGxhdGUob3B0aW9ucykpOwogICAgfQogICAgZnVuY3Rpb24gcmVuYW1lVGVtcGxhdGVGaWxlcygpIHsKICAgICAgcmV0dXJuICgwLCBiYXNlXzEuZm9yRWFjaCkoKGVudHJ5KSA9PiB7CiAgICAgICAgaWYgKGVudHJ5LnBhdGgubWF0Y2goZXhwb3J0czIuVEVNUExBVEVfRklMRU5BTUVfUkUpKSB7CiAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICBjb250ZW50OiBlbnRyeS5jb250ZW50LAogICAgICAgICAgICBwYXRoOiAoMCwgY29yZV8xLm5vcm1hbGl6ZSkoZW50cnkucGF0aC5yZXBsYWNlKGV4cG9ydHMyLlRFTVBMQVRFX0ZJTEVOQU1FX1JFLCAiIikpCiAgICAgICAgICB9OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gZW50cnk7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIHRlbXBsYXRlMyhvcHRpb25zKSB7CiAgICAgIHJldHVybiAoMCwgYmFzZV8xLmNoYWluKShbCiAgICAgICAgY29udGVudFRlbXBsYXRlKG9wdGlvbnMpLAogICAgICAgIC8vIEZvcmNlIGNhc3QgdG8gUGF0aFRlbXBsYXRlRGF0YS4gV2UgbmVlZCB0aGUgdHlwZSBmb3IgdGhlIGFjdHVhbCBwYXRoVGVtcGxhdGUoKSBjYWxsLAogICAgICAgIC8vIGJ1dCBpbiB0aGlzIGNhc2Ugd2UgY2Fubm90IGRvIGFueXRoaW5nIGFzIGNvbnRlbnRUZW1wbGF0ZSBhcmUgbW9yZSBwZXJtaXNzaXZlLgogICAgICAgIC8vIFNpbmNlIHZhbHVlcyBhcmUgY29lcmNlZCB0byBzdHJpbmdzIGluIFBhdGhUZW1wbGF0ZXMgaXQgd2lsbCBiZSBmaW5lIGluIHRoZSBlbmQuCiAgICAgICAgcGF0aFRlbXBsYXRlKG9wdGlvbnMpCiAgICAgIF0pOwogICAgfQogICAgZnVuY3Rpb24gYXBwbHlUZW1wbGF0ZXMob3B0aW9ucykgewogICAgICByZXR1cm4gKDAsIGJhc2VfMS5mb3JFYWNoKSgoMCwgYmFzZV8xLndoZW4pKChwYXRoKSA9PiBwYXRoLmVuZHNXaXRoKCIudGVtcGxhdGUiKSwgKDAsIGJhc2VfMS5jb21wb3NlRmlsZU9wZXJhdG9ycykoWwogICAgICAgIGFwcGx5Q29udGVudFRlbXBsYXRlKG9wdGlvbnMpLAogICAgICAgIC8vIFNlZSBhYm92ZSBmb3IgdGhpcyB3ZWlyZCBjYXN0LgogICAgICAgIGFwcGx5UGF0aFRlbXBsYXRlKG9wdGlvbnMpLAogICAgICAgIChlbnRyeSkgPT4gewogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgY29udGVudDogZW50cnkuY29udGVudCwKICAgICAgICAgICAgcGF0aDogZW50cnkucGF0aC5yZXBsYWNlKGV4cG9ydHMyLlRFTVBMQVRFX0ZJTEVOQU1FX1JFLCAiIikKICAgICAgICAgIH07CiAgICAgICAgfQogICAgICBdKSkpOwogICAgfQogIH0KfSk7CgovLyAuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvdXJsLmpzCnZhciByZXF1aXJlX3VybCA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvdXJsLmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi51cmwgPSB1cmwzOwogICAgdmFyIHVybF8xID0gcmVxdWlyZSgidXJsIik7CiAgICBmdW5jdGlvbiB1cmwzKHVybFN0cmluZykgewogICAgICBjb25zdCB1cmw0ID0gKDAsIHVybF8xLnBhcnNlKSh1cmxTdHJpbmcpOwogICAgICByZXR1cm4gKGNvbnRleHQpID0+IGNvbnRleHQuZW5naW5lLmNyZWF0ZVNvdXJjZUZyb21VcmwodXJsNCwgY29udGV4dCkoY29udGV4dCk7CiAgICB9CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL0Bhbmd1bGFyLWRldmtpdC1zY2hlbWF0aWNzLW5wbS0xOS4xLjUtZDgyOGI2MzU1NC0xMC56aXAvbm9kZV9tb2R1bGVzL0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2VtcHR5LmpzCnZhciByZXF1aXJlX2VtcHR5MyA9IF9fY29tbW9uSlMoewogICIuLi8uLi8uLi8ueWFybi9iZXJyeS9jYWNoZS9AYW5ndWxhci1kZXZraXQtc2NoZW1hdGljcy1ucG0tMTkuMS41LWQ4MjhiNjM1NTQtMTAuemlwL25vZGVfbW9kdWxlcy9AYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9lbXB0eS5qcyIoZXhwb3J0czIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIl9fZXNNb2R1bGUiLCB7IHZhbHVlOiB0cnVlIH0pOwogICAgZXhwb3J0czIuRW1wdHlUcmVlID0gdm9pZCAwOwogICAgdmFyIGhvc3RfdHJlZV8xID0gcmVxdWlyZV9ob3N0X3RyZWUoKTsKICAgIHZhciBFbXB0eVRyZWUgPSBjbGFzcyBleHRlbmRzIGhvc3RfdHJlZV8xLkhvc3RUcmVlIHsKICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgc3VwZXIoKTsKICAgICAgfQogICAgfTsKICAgIGV4cG9ydHMyLkVtcHR5VHJlZSA9IEVtcHR5VHJlZTsKICB9Cn0pOwoKLy8gLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2luZGV4LmpzCnZhciByZXF1aXJlX3NyYzIgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvQGFuZ3VsYXItZGV2a2l0LXNjaGVtYXRpY3MtbnBtLTE5LjEuNS1kODI4YjYzNTU0LTEwLnppcC9ub2RlX21vZHVsZXMvQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2luZGV4LmpzIihleHBvcnRzMikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIF9fY3JlYXRlQmluZGluZyA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fY3JlYXRlQmluZGluZyB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihtLCBrKTsKICAgICAgaWYgKCFkZXNjIHx8ICgiZ2V0IiBpbiBkZXNjID8gIW0uX19lc01vZHVsZSA6IGRlc2Mud3JpdGFibGUgfHwgZGVzYy5jb25maWd1cmFibGUpKSB7CiAgICAgICAgZGVzYyA9IHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgIHJldHVybiBtW2tdOwogICAgICAgIH0gfTsKICAgICAgfQogICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgazIsIGRlc2MpOwogICAgfSA6IGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7CiAgICAgIGlmIChrMiA9PT0gdm9pZCAwKSBrMiA9IGs7CiAgICAgIG9bazJdID0gbVtrXTsKICAgIH0pOwogICAgdmFyIF9fc2V0TW9kdWxlRGVmYXVsdCA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fc2V0TW9kdWxlRGVmYXVsdCB8fCAoT2JqZWN0LmNyZWF0ZSA/IGZ1bmN0aW9uKG8sIHYpIHsKICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJkZWZhdWx0IiwgeyBlbnVtZXJhYmxlOiB0cnVlLCB2YWx1ZTogdiB9KTsKICAgIH0gOiBmdW5jdGlvbihvLCB2KSB7CiAgICAgIG9bImRlZmF1bHQiXSA9IHY7CiAgICB9KTsKICAgIHZhciBfX2ltcG9ydFN0YXIgPSBleHBvcnRzMiAmJiBleHBvcnRzMi5fX2ltcG9ydFN0YXIgfHwgLyogQF9fUFVSRV9fICovIGZ1bmN0aW9uKCkgewogICAgICB2YXIgb3duS2V5cyA9IGZ1bmN0aW9uKG8pIHsKICAgICAgICBvd25LZXlzID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMgfHwgZnVuY3Rpb24obzIpIHsKICAgICAgICAgIHZhciBhciA9IFtdOwogICAgICAgICAgZm9yICh2YXIgayBpbiBvMikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvMiwgaykpIGFyW2FyLmxlbmd0aF0gPSBrOwogICAgICAgICAgcmV0dXJuIGFyOwogICAgICAgIH07CiAgICAgICAgcmV0dXJuIG93bktleXMobyk7CiAgICAgIH07CiAgICAgIHJldHVybiBmdW5jdGlvbihtb2QpIHsKICAgICAgICBpZiAobW9kICYmIG1vZC5fX2VzTW9kdWxlKSByZXR1cm4gbW9kOwogICAgICAgIHZhciByZXN1bHQgPSB7fTsKICAgICAgICBpZiAobW9kICE9IG51bGwpIHsKICAgICAgICAgIGZvciAodmFyIGsgPSBvd25LZXlzKG1vZCksIGkgPSAwOyBpIDwgay5sZW5ndGg7IGkrKykgaWYgKGtbaV0gIT09ICJkZWZhdWx0IikgX19jcmVhdGVCaW5kaW5nKHJlc3VsdCwgbW9kLCBrW2ldKTsKICAgICAgICB9CiAgICAgICAgX19zZXRNb2R1bGVEZWZhdWx0KHJlc3VsdCwgbW9kKTsKICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICB9OwogICAgfSgpOwogICAgdmFyIF9fZXhwb3J0U3RhciA9IGV4cG9ydHMyICYmIGV4cG9ydHMyLl9fZXhwb3J0U3RhciB8fCBmdW5jdGlvbihtLCBleHBvcnRzMykgewogICAgICBmb3IgKHZhciBwIGluIG0pIGlmIChwICE9PSAiZGVmYXVsdCIgJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChleHBvcnRzMywgcCkpIF9fY3JlYXRlQmluZGluZyhleHBvcnRzMywgbSwgcCk7CiAgICB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMyLCAiX19lc01vZHVsZSIsIHsgdmFsdWU6IHRydWUgfSk7CiAgICBleHBvcnRzMi5UcmVlID0gZXhwb3J0czIud29ya2Zsb3cgPSBleHBvcnRzMi5zdHJpbmdzID0gZXhwb3J0czIuZm9ybWF0cyA9IGV4cG9ydHMyLlNjaGVtYXRpY3NFeGNlcHRpb24gPSB2b2lkIDA7CiAgICB2YXIgY29yZV8xID0gcmVxdWlyZV9zcmMoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgInN0cmluZ3MiLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBjb3JlXzEuc3RyaW5nczsKICAgIH0gfSk7CiAgICB2YXIgZm9ybWF0cyA9IF9faW1wb3J0U3RhcihyZXF1aXJlX2Zvcm1hdHMyKCkpOwogICAgZXhwb3J0czIuZm9ybWF0cyA9IGZvcm1hdHM7CiAgICB2YXIgaW50ZXJmYWNlXzEgPSByZXF1aXJlX2ludGVyZmFjZTMoKTsKICAgIHZhciBzdGF0aWNfMSA9IHJlcXVpcmVfc3RhdGljKCk7CiAgICB2YXIgd29ya2Zsb3cgPSBfX2ltcG9ydFN0YXIocmVxdWlyZV93b3JrZmxvdygpKTsKICAgIGV4cG9ydHMyLndvcmtmbG93ID0gd29ya2Zsb3c7CiAgICB2YXIgZXhjZXB0aW9uXzEgPSByZXF1aXJlX2V4Y2VwdGlvbjIoKTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzMiwgIlNjaGVtYXRpY3NFeGNlcHRpb24iLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBleGNlcHRpb25fMS5TY2hlbWF0aWNzRXhjZXB0aW9uOwogICAgfSB9KTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2FjdGlvbigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9lbmdpbmUyKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX2V4Y2VwdGlvbjIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaW50ZXJmYWNlMygpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9iYXNlMigpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9jYWxsKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX21vdmUoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfcmFuZG9tKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3NjaGVtYXRpYzIoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfdGVtcGxhdGUyKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3VybCgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9kZWxlZ2F0ZSgpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9lbXB0eTMoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaG9zdF90cmVlKCksIGV4cG9ydHMyKTsKICAgIF9fZXhwb3J0U3RhcihyZXF1aXJlX3NjaGVtYXRpYygpLCBleHBvcnRzMik7CiAgICBfX2V4cG9ydFN0YXIocmVxdWlyZV9kcnlydW4oKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfaG9zdDQoKSwgZXhwb3J0czIpOwogICAgX19leHBvcnRTdGFyKHJlcXVpcmVfc2luaygpLCBleHBvcnRzMik7CiAgICBleHBvcnRzMi5UcmVlID0gewogICAgICBlbXB0eSgpIHsKICAgICAgICByZXR1cm4gKDAsIHN0YXRpY18xLmVtcHR5KSgpOwogICAgICB9LAogICAgICBicmFuY2godHJlZSkgewogICAgICAgIHJldHVybiAoMCwgc3RhdGljXzEuYnJhbmNoKSh0cmVlKTsKICAgICAgfSwKICAgICAgbWVyZ2UodHJlZSwgb3RoZXIsIHN0cmF0ZWd5ID0gaW50ZXJmYWNlXzEuTWVyZ2VTdHJhdGVneS5EZWZhdWx0KSB7CiAgICAgICAgcmV0dXJuICgwLCBzdGF0aWNfMS5tZXJnZSkodHJlZSwgb3RoZXIsIHN0cmF0ZWd5KTsKICAgICAgfSwKICAgICAgcGFydGl0aW9uKHRyZWUsIHByZWRpY2F0ZSkgewogICAgICAgIHJldHVybiAoMCwgc3RhdGljXzEucGFydGl0aW9uKSh0cmVlLCBwcmVkaWNhdGUpOwogICAgICB9LAogICAgICBvcHRpbWl6ZSh0cmVlKSB7CiAgICAgICAgcmV0dXJuIHRyZWU7CiAgICAgIH0KICAgIH07CiAgfQp9KTsKCi8vIC4uLy4uLy4uLy55YXJuL2JlcnJ5L2NhY2hlL3N0cmlwLWpzb24tY29tbWVudHMtbnBtLTMuMS4xLWRjYjIzMjQ4MjMtMTAuemlwL25vZGVfbW9kdWxlcy9zdHJpcC1qc29uLWNvbW1lbnRzL2luZGV4LmpzCnZhciByZXF1aXJlX3N0cmlwX2pzb25fY29tbWVudHMgPSBfX2NvbW1vbkpTKHsKICAiLi4vLi4vLi4vLnlhcm4vYmVycnkvY2FjaGUvc3RyaXAtanNvbi1jb21tZW50cy1ucG0tMy4xLjEtZGNiMjMyNDgyMy0xMC56aXAvbm9kZV9tb2R1bGVzL3N0cmlwLWpzb24tY29tbWVudHMvaW5kZXguanMiKGV4cG9ydHMyLCBtb2R1bGUyKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgc2luZ2xlQ29tbWVudCA9IFN5bWJvbCgic2luZ2xlQ29tbWVudCIpOwogICAgdmFyIG11bHRpQ29tbWVudCA9IFN5bWJvbCgibXVsdGlDb21tZW50Iik7CiAgICB2YXIgc3RyaXBXaXRob3V0V2hpdGVzcGFjZSA9ICgpID0+ICIiOwogICAgdmFyIHN0cmlwV2l0aFdoaXRlc3BhY2UgPSAoc3RyaW5nLCBzdGFydCwgZW5kKSA9PiBzdHJpbmcuc2xpY2Uoc3RhcnQsIGVuZCkucmVwbGFjZSgvXFMvZywgIiAiKTsKICAgIHZhciBpc0VzY2FwZWQgPSAoanNvblN0cmluZywgcXVvdGVQb3NpdGlvbikgPT4gewogICAgICBsZXQgaW5kZXggPSBxdW90ZVBvc2l0aW9uIC0gMTsKICAgICAgbGV0IGJhY2tzbGFzaENvdW50ID0gMDsKICAgICAgd2hpbGUgKGpzb25TdHJpbmdbaW5kZXhdID09PSAiXFwiKSB7CiAgICAgICAgaW5kZXggLT0gMTsKICAgICAgICBiYWNrc2xhc2hDb3VudCArPSAxOwogICAgICB9CiAgICAgIHJldHVybiBCb29sZWFuKGJhY2tzbGFzaENvdW50ICUgMik7CiAgICB9OwogICAgbW9kdWxlMi5leHBvcnRzID0gKGpzb25TdHJpbmcsIG9wdGlvbnMgPSB7fSkgPT4gewogICAgICBpZiAodHlwZW9mIGpzb25TdHJpbmcgIT09ICJzdHJpbmciKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihgRXhwZWN0ZWQgYXJndW1lbnQgXGBqc29uU3RyaW5nXGAgdG8gYmUgYSBcYHN0cmluZ1xgLCBnb3QgXGAke3R5cGVvZiBqc29uU3RyaW5nfVxgYCk7CiAgICAgIH0KICAgICAgY29uc3Qgc3RyaXAgPSBvcHRpb25zLndoaXRlc3BhY2UgPT09IGZhbHNlID8gc3RyaXBXaXRob3V0V2hpdGVzcGFjZSA6IHN0cmlwV2l0aFdoaXRlc3BhY2U7CiAgICAgIGxldCBpbnNpZGVTdHJpbmcgPSBmYWxzZTsKICAgICAgbGV0IGluc2lkZUNvbW1lbnQgPSBmYWxzZTsKICAgICAgbGV0IG9mZnNldCA9IDA7CiAgICAgIGxldCByZXN1bHQgPSAiIjsKICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBqc29uU3RyaW5nLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgY29uc3QgY3VycmVudENoYXJhY3RlciA9IGpzb25TdHJpbmdbaV07CiAgICAgICAgY29uc3QgbmV4dENoYXJhY3RlciA9IGpzb25TdHJpbmdbaSArIDFdOwogICAgICAgIGlmICghaW5zaWRlQ29tbWVudCAmJiBjdXJyZW50Q2hhcmFjdGVyID09PSAnIicpIHsKICAgICAgICAgIGNvbnN0IGVzY2FwZWQgPSBpc0VzY2FwZWQoanNvblN0cmluZywgaSk7CiAgICAgICAgICBpZiAoIWVzY2FwZWQpIHsKICAgICAgICAgICAgaW5zaWRlU3RyaW5nID0gIWluc2lkZVN0cmluZzsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKGluc2lkZVN0cmluZykgewogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmICghaW5zaWRlQ29tbWVudCAmJiBjdXJyZW50Q2hhcmFjdGVyICsgbmV4dENoYXJhY3RlciA9PT0gIi8vIikgewogICAgICAgICAgcmVzdWx0ICs9IGpzb25TdHJpbmcuc2xpY2Uob2Zmc2V0LCBpKTsKICAgICAgICAgIG9mZnNldCA9IGk7CiAgICAgICAgICBpbnNpZGVDb21tZW50ID0gc2luZ2xlQ29tbWVudDsKICAgICAgICAgIGkrKzsKICAgICAgICB9IGVsc2UgaWYgKGluc2lkZUNvbW1lbnQgPT09IHNpbmdsZUNvbW1lbnQgJiYgY3VycmVudENoYXJhY3RlciArIG5leHRDaGFyYWN0ZXIgPT09ICJcclxuIikgewogICAgICAgICAgaSsrOwogICAgICAgICAgaW5zaWRlQ29tbWVudCA9IGZhbHNlOwogICAgICAgICAgcmVzdWx0ICs9IHN0cmlwKGpzb25TdHJpbmcsIG9mZnNldCwgaSk7CiAgICAgICAgICBvZmZzZXQgPSBpOwogICAgICAgICAgY29udGludWU7CiAgICAgICAgfSBlbHNlIGlmIChpbnNpZGVDb21tZW50ID09PSBzaW5nbGVDb21tZW50ICYmIGN1cnJlbnRDaGFyYWN0ZXIgPT09ICJcbiIpIHsKICAgICAgICAgIGluc2lkZUNvbW1lbnQgPSBmYWxzZTsKICAgICAgICAgIHJlc3VsdCArPSBzdHJpcChqc29uU3RyaW5nLCBvZmZzZXQsIGkpOwogICAgICAgICAgb2Zmc2V0ID0gaTsKICAgICAgICB9IGVsc2UgaWYgKCFpbnNpZGVDb21tZW50ICYmIGN1cnJlbnRDaGFyYWN0ZXIgKyBuZXh0Q2hhcmFjdGVyID09PSAiLyoiKSB7CiAgICAgICAgICByZXN1bHQgKz0ganNvblN0cmluZy5zbGljZShvZmZzZXQsIGkpOwogICAgICAgICAgb2Zmc2V0ID0gaTsKICAgICAgICAgIGluc2lkZUNvbW1lbnQgPSBtdWx0aUNvbW1lbnQ7CiAgICAgICAgICBpKys7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9IGVsc2UgaWYgKGluc2lkZUNvbW1lbnQgPT09IG11bHRpQ29tbWVudCAmJiBjdXJyZW50Q2hhcmFjdGVyICsgbmV4dENoYXJhY3RlciA9PT0gIiovIikgewogICAgICAgICAgaSsrOwogICAgICAgICAgaW5zaWRlQ29tbWVudCA9IGZhbHNlOwogICAgICAgICAgcmVzdWx0ICs9IHN0cmlwKGpzb25TdHJpbmcsIG9mZnNldCwgaSArIDEpOwogICAgICAgICAgb2Zmc2V0ID0gaSArIDE7CiAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIHJlc3VsdCArIChpbnNpZGVDb21tZW50ID8gc3RyaXAoanNvblN0cmluZy5zbGljZShvZmZzZXQpKSA6IGpzb25TdHJpbmcuc2xpY2Uob2Zmc2V0KSk7CiAgICB9OwogIH0KfSk7CgovLyBzcmMvc2NoZW1hdGljL2luZGV4LnRzCnZhciBpbmRleF9leHBvcnRzID0ge307Cl9fZXhwb3J0KGluZGV4X2V4cG9ydHMsIHsKICBtYWluOiAoKSA9PiBtYWluCn0pOwptb2R1bGUuZXhwb3J0cyA9IF9fdG9Db21tb25KUyhpbmRleF9leHBvcnRzKTsKCi8vIHNyYy9zY2hlbWF0aWMvcHJvamVjdC9wcm9qZWN0LmZhY3RvcnkudHMKdmFyIGltcG9ydF9zY2hlbWF0aWNzOSA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3MxMCA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3MxMSA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwoKLy8gc3JjL3NjaGVtYXRpYy91dGlscy9qc29uLnV0aWxzLnRzCnZhciBpbXBvcnRfc3RyaXBfanNvbl9jb21tZW50cyA9IF9fdG9FU00ocmVxdWlyZV9zdHJpcF9qc29uX2NvbW1lbnRzKCksIDEpOwp2YXIgc2VyaWFsaXplSnNvbiA9IChqc29uKSA9PiBgJHtKU09OLnN0cmluZ2lmeShqc29uLCBudWxsLCAyKX0KYDsKdmFyIHJlYWRKc29uSW5UcmVlID0gKGhvc3QsIHBhdGgpID0+IHsKICBpZiAoIWhvc3QuZXhpc3RzKHBhdGgpKSB7CiAgICB0aHJvdyBuZXcgRXJyb3IoYENhbm5vdCBmaW5kICR7cGF0aH1gKTsKICB9CiAgY29uc3QgY29udGVudHMgPSAoMCwgaW1wb3J0X3N0cmlwX2pzb25fY29tbWVudHMuZGVmYXVsdCkoaG9zdC5yZWFkKHBhdGgpPy50b1N0cmluZygidXRmLTgiKSB8fCAiIik7CiAgdHJ5IHsKICAgIHJldHVybiBKU09OLnBhcnNlKGNvbnRlbnRzKTsKICB9IGNhdGNoIChlKSB7CiAgICBjb25zdCBlcnJvciA9IGU7CiAgICB0aHJvdyBuZXcgRXJyb3IoYENhbm5vdCBwYXJzZSAke3BhdGh9OiAke2Vycm9yLm1lc3NhZ2V9YCk7CiAgfQp9Owp2YXIgdXBkYXRlSnNvbkluVHJlZSA9IChwYXRoLCBjYWxsYmFjaykgPT4gKGhvc3QsIGNvbnRleHQpID0+IHsKICBpZiAoIWhvc3QuZXhpc3RzKHBhdGgpKSB7CiAgICBob3N0LmNyZWF0ZShwYXRoLCBzZXJpYWxpemVKc29uKGNhbGxiYWNrKHt9LCBjb250ZXh0KSkpOwogICAgcmV0dXJuIGhvc3Q7CiAgfQogIGhvc3Qub3ZlcndyaXRlKAogICAgcGF0aCwKICAgIHNlcmlhbGl6ZUpzb24oY2FsbGJhY2socmVhZEpzb25JblRyZWUoaG9zdCwgcGF0aCksIGNvbnRleHQpKQogICk7CiAgcmV0dXJuIGhvc3Q7Cn07CgovLyBzcmMvc2NoZW1hdGljL3V0aWxzL3RzY29uZmlnLnV0aWxzLnRzCnZhciB1cGRhdGVUc0NvbmZpZ0luVHJlZSA9IChjb21waWxlck9wdGlvbnMpID0+IHVwZGF0ZUpzb25JblRyZWUoInRzY29uZmlnLmpzb24iLCAodHNjb25maWcpID0+ICh7CiAgLi4udHNjb25maWcsCiAgY29tcGlsZXJPcHRpb25zCn0pKTsKCi8vIHNyYy9zY2hlbWF0aWMvcnVsZXMvdXBkYXRlLXRzLWNvbmZpZy5ydWxlLnRzCnZhciB1cGRhdGVUc0NvbmZpZ1J1bGUgPSBhc3luYyAoKSA9PiB7CiAgY29uc3QgeyB0c0NvbmZpZyB9ID0gYXdhaXQgaW1wb3J0KCJAYXRscy9jb2RlLXJ1bnRpbWUiKTsKICByZXR1cm4gdXBkYXRlVHNDb25maWdJblRyZWUoewogICAgLi4udHNDb25maWcuY29tcGlsZXJPcHRpb25zCiAgfSk7Cn07CgovLyBzcmMvc2NoZW1hdGljL3NvdXJjZXMvZ2VuZXJhdGUtY29tbW9uLnNvdXJjZS50cwp2YXIgaW1wb3J0X2NvcmUgPSBfX3RvRVNNKHJlcXVpcmVfc3JjKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3MgPSBfX3RvRVNNKHJlcXVpcmVfc3JjMigpLCAxKTsKdmFyIGltcG9ydF9zY2hlbWF0aWNzMiA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3MzID0gX190b0VTTShyZXF1aXJlX3NyYzIoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljczQgPSBfX3RvRVNNKHJlcXVpcmVfc3JjMigpLCAxKTsKdmFyIGdlbmVyYXRlQ29tbW9uU291cmNlID0gKG9wdGlvbnMpID0+ICgwLCBpbXBvcnRfc2NoZW1hdGljcy5hcHBseSkoKDAsIGltcG9ydF9zY2hlbWF0aWNzNC51cmwpKCIuLi90ZW1wbGF0ZXMvY29tbW9uIiksIFsKICAoMCwgaW1wb3J0X3NjaGVtYXRpY3MyLnRlbXBsYXRlKSh7CiAgICAuLi5pbXBvcnRfY29yZS5zdHJpbmdzLAogICAgLi4ub3B0aW9ucywKICAgIGRvdDogIi4iCiAgfSksCiAgKDAsIGltcG9ydF9zY2hlbWF0aWNzMy5tb3ZlKSgiLi8iKQpdKTsKCi8vIHNyYy9zY2hlbWF0aWMvc291cmNlcy9nZW5lcmF0ZS1wcm9qZWN0LXNwZWNpZmljLnNvdXJjZS50cwp2YXIgaW1wb3J0X25vZGVfZnMgPSByZXF1aXJlKCJub2RlOmZzIik7CnZhciBpbXBvcnRfbm9kZV9wYXRoID0gcmVxdWlyZSgibm9kZTpwYXRoIik7CnZhciBpbXBvcnRfY29yZTIgPSBfX3RvRVNNKHJlcXVpcmVfc3JjKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3M1ID0gX190b0VTTShyZXF1aXJlX3NyYzIoKSwgMSk7CnZhciBpbXBvcnRfc2NoZW1hdGljczYgPSBfX3RvRVNNKHJlcXVpcmVfc3JjMigpLCAxKTsKdmFyIGltcG9ydF9zY2hlbWF0aWNzNyA9IF9fdG9FU00ocmVxdWlyZV9zcmMyKCksIDEpOwp2YXIgaW1wb3J0X3NjaGVtYXRpY3M4ID0gX190b0VTTShyZXF1aXJlX3NyYzIoKSwgMSk7CnZhciBnZW5lcmF0ZVByb2plY3RTcGVjaWZpY1NvdXJjZSA9IChvcHRpb25zKSA9PiB7CiAgY29uc3QgeyBuYW1lOiBwcm9qZWN0TmFtZSB9ID0gSlNPTi5wYXJzZSgKICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuL25vLXN5bmMKICAgICgwLCBpbXBvcnRfbm9kZV9mcy5yZWFkRmlsZVN5bmMpKCgwLCBpbXBvcnRfbm9kZV9wYXRoLmpvaW4pKG9wdGlvbnMuY3dkLCAicGFja2FnZS5qc29uIiksICJ1dGYtOCIpCiAgKTsKICByZXR1cm4gKDAsIGltcG9ydF9zY2hlbWF0aWNzNS5hcHBseSkoKDAsIGltcG9ydF9zY2hlbWF0aWNzNi51cmwpKCgwLCBpbXBvcnRfbm9kZV9wYXRoLmpvaW4pKCIuLi90ZW1wbGF0ZXMiLCBvcHRpb25zLnR5cGUpKSwgWwogICAgKDAsIGltcG9ydF9zY2hlbWF0aWNzNy50ZW1wbGF0ZSkoewogICAgICAuLi5pbXBvcnRfY29yZTIuc3RyaW5ncywKICAgICAgLi4ub3B0aW9ucywKICAgICAgcHJvamVjdE5hbWUsCiAgICAgIGRvdDogIi4iCiAgICB9KSwKICAgICgwLCBpbXBvcnRfc2NoZW1hdGljczgubW92ZSkoIi4vIikKICBdKTsKfTsKCi8vIHNyYy9zY2hlbWF0aWMvcHJvamVjdC9wcm9qZWN0LmZhY3RvcnkudHMKdmFyIG1haW4gPSAob3B0aW9ucykgPT4gKDAsIGltcG9ydF9zY2hlbWF0aWNzMTAuY2hhaW4pKFsKICB1cGRhdGVUc0NvbmZpZ1J1bGUsCiAgKDAsIGltcG9ydF9zY2hlbWF0aWNzMTEubWVyZ2VXaXRoKShnZW5lcmF0ZUNvbW1vblNvdXJjZShvcHRpb25zKSwgaW1wb3J0X3NjaGVtYXRpY3M5Lk1lcmdlU3RyYXRlZ3kuT3ZlcndyaXRlKSwKICAoMCwgaW1wb3J0X3NjaGVtYXRpY3MxMS5tZXJnZVdpdGgpKGdlbmVyYXRlUHJvamVjdFNwZWNpZmljU291cmNlKG9wdGlvbnMpLCBpbXBvcnRfc2NoZW1hdGljczkuTWVyZ2VTdHJhdGVneS5PdmVyd3JpdGUpCl0pOwovLyBBbm5vdGF0ZSB0aGUgQ29tbW9uSlMgZXhwb3J0IG5hbWVzIGZvciBFU00gaW1wb3J0IGluIG5vZGU6CjAgJiYgKG1vZHVsZS5leHBvcnRzID0gewogIG1haW4KfSk7Ci8qISBCdW5kbGVkIGxpY2Vuc2UgaW5mb3JtYXRpb246CgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi91dGlscy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvdXRpbGl0eS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvdHJhbnNmb3Jtcy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvaW50ZXJmYWNlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9qc29uL3NjaGVtYS9wb2ludGVyLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9leGNlcHRpb24uanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL2xpdGVyYWxzLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9zdHJpbmdzLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9vYmplY3QuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3RlbXBsYXRlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9wYXJ0aWFsbHktb3JkZXJlZC1zZXQuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3V0aWxzL3ByaW9yaXR5LXF1ZXVlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9sYW5nLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy91dGlscy9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvdmlzaXRvci5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvcmVnaXN0cnkuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vc2NoZW1hL3NjaGVtYS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvanNvbi9zY2hlbWEvaW5kZXguanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2pzb24vaW5kZXguanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci9sb2dnZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci9pbmRlbnQuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL2xvZ2dlci9sZXZlbC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL251bGwtbG9nZ2VyLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9sb2dnZXIvdHJhbnNmb3JtLWxvZ2dlci5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvbG9nZ2VyL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvZGVmaW5pdGlvbnMuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvcGF0aC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2J1ZmZlci5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2ludGVyZmFjZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L21lbW9yeS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3N5bmMuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC90ZXN0LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvcmVzb2x2ZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9hbGlhcy5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2NyZWF0ZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L2VtcHR5LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy92aXJ0dWFsLWZzL2hvc3QvcGF0dGVybi5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3JlY29yZC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9ob3N0L3NhZmUuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9zY29wZWQuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3ZpcnR1YWwtZnMvaG9zdC9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvdmlydHVhbC1mcy9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2hvc3QuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL21ldGFkYXRhLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvanNvbi91dGlsaXRpZXMuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvc3JjL3dvcmtzcGFjZS9qc29uL3JlYWRlci5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2pzb24vd3JpdGVyLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy93b3Jrc3BhY2UvY29yZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9zcmMvd29ya3NwYWNlL2luZGV4LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL3NyYy9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvZm9ybWF0cy9odG1sLXNlbGVjdG9yLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9mb3JtYXRzL3BhdGguanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2Zvcm1hdHMvaW5kZXguanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvaW50ZXJmYWNlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9leGNlcHRpb24vZXhjZXB0aW9uLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2RlbGVnYXRlLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2VudHJ5LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL3JlY29yZGVyLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL3Njb3BlZC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvdHJlZS9ob3N0LXRyZWUuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvc3RhdGljLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL251bGwuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL2NhbGwuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9zY2hlbWF0aWMuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9lbmdpbmUuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9pbnRlcmZhY2UuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL2VuZ2luZS9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvY29yZS9ub2RlL2NsaS1sb2dnZXIuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L2NvcmUvbm9kZS9ob3N0LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9jb3JlL25vZGUvaW5kZXguanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3RyZWUvYWN0aW9uLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9zaW5rL3NpbmsuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3NpbmsvaG9zdC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvc2luay9kcnlydW4uanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3dvcmtmbG93L2Jhc2UuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3dvcmtmbG93L2ludGVyZmFjZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvd29ya2Zsb3cvaW5kZXguanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL2Jhc2UuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL21vdmUuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgogICAqCiAgICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKICAgKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQogICAqKQoKQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3Mvc3JjL3J1bGVzL3JhbmRvbS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvc2NoZW1hdGljLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9ydWxlcy90ZW1wbGF0ZS5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCgpAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy9zcmMvcnVsZXMvdXJsLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy90cmVlL2VtcHR5LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAgKgogICAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiAgICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2UKICAgKikKCkBhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3NyYy9pbmRleC5qczoKICAoKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICoKICAgKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQogICAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlCiAgICopCiovCg==",sVi=async e=>{let t=Buffer.from($Cc,"base64").toString("utf-8");await(await import("fs/promises")).writeFile(e,t)};var oVi=async e=>{let{writeFiles:t}=await import("@atls/code-runtime");await t(e);let r=pvr.ppath.join(e,"project");await emc(r,{recursive:!0}),await sVi(pvr.ppath.join(r,"project.factory.cjs")),console.info("All Schematic files writed to the tmp!")};var tCe=vt(No(),1),sSt=vt(No(),1),aVi=async e=>{let t=process.cwd();await sSt.xfs.copyFilePromise(tCe.ppath.join(t,".pnp.cjs"),tCe.ppath.join(e,".pnp.cjs")),await sSt.xfs.symlinkPromise(tCe.ppath.join(t,"package.json"),tCe.ppath.join(e,"package.json")),await sSt.xfs.symlinkPromise(tCe.ppath.join(t,"runtime"),tCe.ppath.join(e,"runtime"))};var uVi=async e=>async r=>{try{let s=await lVi.xfs.mktempPromise(),a=cVi.ppath.join(s,"collection.json");await oVi(s),await aVi(s),await iVi("project",e,a)}catch(s){console.error(s)}};var oSt=class extends gVi.BaseCommand{static paths=[["generate","project"]];type=td.String("-t,--type","project");async execute(){let t=await AVi.Configuration.find(this.context.cwd,this.context.plugins),r=["libraries","project"];if(!r.includes(this.type))throw new Error(`Allowed only ${r.join(", ")} types`);let s={type:this.type,cwd:process.cwd()},a=iNi(this,t),o=await uVi(s);return(await dVi.StreamReport.start(a,o)).exitCode()}};var pVi={commands:[oSt]};var jkc=vt(jHi()),zkc=vt(sYi()),qkc=vt(uYi()),$kc=vt(xYi()),eGc=vt(uwt()),tGc=vt(WYi()),rGc=vt(XYi()),nGc=vt(sXi()),iGc=vt(MNe()),sGc=vt(gXi()),oGc=vt(mXi()),aGc=vt(yXi()),cGc=vt(xXi()),lGc=vt(iJi()),uGc=vt(lX()),gGc=vt(SUi()),AGc=vt(kpe()),dGc=vt(nKi()),pGc=vt(nRe()),fGc=vt(uKi()),gKi=()=>({modules:new Map([["@yarnpkg/cli",Mkc],["@yarnpkg/core",Hkc],["@yarnpkg/fslib",Ykc],["@yarnpkg/libzip",Xkc],["@yarnpkg/parsers",Jkc],["@yarnpkg/shell",Ukc],["clipanion",pg],["semver",Kkc],["typanion",_L],["@atls/yarn-plugin-badges",h8t],["@atls/yarn-plugin-changelog",a7t],["@atls/yarn-plugin-check",c7t],["@atls/yarn-plugin-checks",pir],["@atls/yarn-plugin-cli-publish",Iir],["@atls/yarn-plugin-commit",Ucr],["@atls/yarn-plugin-essentials",Kcr],["@atls/yarn-plugin-export",hur],["@atls/yarn-plugin-files",Jnr],["@atls/yarn-plugin-format",qpr],["@atls/yarn-plugin-image",lfr],["@atls/yarn-plugin-jsr",Rfr],["@atls/yarn-plugin-library",Gfr],["@atls/yarn-plugin-lint",Ofr],["@atls/yarn-plugin-release",eIr],["@atls/yarn-plugin-renderer",PIr],["@atls/yarn-plugin-service",f_r],["@atls/yarn-plugin-test",B_r],["@atls/yarn-plugin-tools",k_r],["@atls/yarn-plugin-typescript",V_r],["@atls/yarn-plugin-workspaces",W_r],["@atls/yarn-plugin-ui",r0r],["@atls/yarn-plugin-schematics",fvr],["@yarnpkg/plugin-interactive-tools",jkc],["@yarnpkg/plugin-workspace-tools",zkc],["@yarnpkg/plugin-typescript",qkc],["@yarnpkg/plugin-version",$kc],["@yarnpkg/plugin-essentials",eGc],["@yarnpkg/plugin-compat",tGc],["@yarnpkg/plugin-dlx",rGc],["@yarnpkg/plugin-file",nGc],["@yarnpkg/plugin-git",iGc],["@yarnpkg/plugin-github",sGc],["@yarnpkg/plugin-http",oGc],["@yarnpkg/plugin-init",aGc],["@yarnpkg/plugin-link",cGc],["@yarnpkg/plugin-nm",lGc],["@yarnpkg/plugin-npm",uGc],["@yarnpkg/plugin-npm-cli",gGc],["@yarnpkg/plugin-pack",AGc],["@yarnpkg/plugin-patch",dGc],["@yarnpkg/plugin-pnp",pGc],["@yarnpkg/plugin-pnpm",fGc]]),plugins:new Set(["@atls/yarn-plugin-badges","@atls/yarn-plugin-changelog","@atls/yarn-plugin-check","@atls/yarn-plugin-checks","@atls/yarn-plugin-cli-publish","@atls/yarn-plugin-commit","@atls/yarn-plugin-essentials","@atls/yarn-plugin-export","@atls/yarn-plugin-files","@atls/yarn-plugin-format","@atls/yarn-plugin-image","@atls/yarn-plugin-jsr","@atls/yarn-plugin-library","@atls/yarn-plugin-lint","@atls/yarn-plugin-release","@atls/yarn-plugin-renderer","@atls/yarn-plugin-service","@atls/yarn-plugin-test","@atls/yarn-plugin-tools","@atls/yarn-plugin-typescript","@atls/yarn-plugin-workspaces","@atls/yarn-plugin-ui","@atls/yarn-plugin-schematics","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-workspace-tools","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-essentials","@yarnpkg/plugin-compat","@yarnpkg/plugin-dlx","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-link","@yarnpkg/plugin-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm"])});var AKi={name:"@atls/yarn-cli",version:"1.1.39-atls",private:!0,license:"BSD-3-Clause",type:"module",exports:{"./package.json":"./package.json",".":"./src/index.ts"},main:"src/index.ts",files:["dist"],scripts:{build:"yarn run build:schemaic && yarn run build:clean && yarn run build:version && yarn run build:bundle && yarn run build:fix && yarn run build:dist && yarn run build:version","build:bundle":"builder build bundle --no-git-hash && mv bundles/yarn.js bundles/yarn.mjs","build:clean":"rm -rf dist","build:dist":"mv bundles dist","build:fix":"yarn node patches/cli.patch.mjs","build:schemaic":"yarn workspace @atls/code-schematics prepack","build:version":"yarn node patches/version-postfix-toggle.mjs",fix:"yarn run build:fix",prepack:"yarn run build",postpack:"rm -rf dist"},dependencies:{"@atls/yarn-cli-tools":"workspace:*","@atls/yarn-plugin-badges":"workspace:*","@atls/yarn-plugin-changelog":"workspace:*","@atls/yarn-plugin-check":"workspace:*","@atls/yarn-plugin-checks":"workspace:*","@atls/yarn-plugin-cli-publish":"workspace:*","@atls/yarn-plugin-commit":"workspace:*","@atls/yarn-plugin-essentials":"workspace:*","@atls/yarn-plugin-export":"workspace:*","@atls/yarn-plugin-files":"workspace:*","@atls/yarn-plugin-format":"workspace:*","@atls/yarn-plugin-image":"workspace:*","@atls/yarn-plugin-jsr":"workspace:*","@atls/yarn-plugin-library":"workspace:*","@atls/yarn-plugin-lint":"workspace:*","@atls/yarn-plugin-release":"workspace:*","@atls/yarn-plugin-renderer":"workspace:*","@atls/yarn-plugin-schematics":"workspace:*","@atls/yarn-plugin-service":"workspace:*","@atls/yarn-plugin-test":"workspace:*","@atls/yarn-plugin-tools":"workspace:*","@atls/yarn-plugin-typescript":"workspace:*","@atls/yarn-plugin-ui":"workspace:*","@atls/yarn-plugin-workspaces":"workspace:*","@yarnpkg/builder":"4.2.0","@yarnpkg/cli":"4.5.1","@yarnpkg/core":"4.1.4","@yarnpkg/fslib":"3.1.0","@yarnpkg/libzip":"3.1.0","@yarnpkg/parsers":"3.0.2","@yarnpkg/plugin-compat":"4.0.9","@yarnpkg/plugin-dlx":"4.0.0","@yarnpkg/plugin-essentials":"4.2.2","@yarnpkg/plugin-file":"3.0.0","@yarnpkg/plugin-git":"3.1.0","@yarnpkg/plugin-github":"3.0.0","@yarnpkg/plugin-http":"3.0.1","@yarnpkg/plugin-init":"4.0.1","@yarnpkg/plugin-interactive-tools":"4.0.1","@yarnpkg/plugin-link":"3.0.0","@yarnpkg/plugin-nm":"4.0.5","@yarnpkg/plugin-npm":"3.0.1","@yarnpkg/plugin-npm-cli":"4.0.4","@yarnpkg/plugin-pack":"4.0.0","@yarnpkg/plugin-patch":"4.0.1","@yarnpkg/plugin-pnp":"4.0.5","@yarnpkg/plugin-pnpm":"2.0.0","@yarnpkg/plugin-typescript":"4.1.1","@yarnpkg/plugin-version":"4.0.4","@yarnpkg/plugin-workspace-tools":"4.1.0","@yarnpkg/shell":"4.1.0",clipanion:"4.0.0-rc.2",semver:"7.6.3",typanion:"3.14.0"},publishConfig:{access:"public",exports:{"./package.json":"./package.json",".":{import:"./dist/index.js",types:"./dist/index.d.ts",default:"./dist/index.js"}},main:"dist/index.js",types:"dist/index.d.ts"},"@yarnpkg/builder":{bundles:{standard:["@atls/yarn-plugin-badges","@atls/yarn-plugin-changelog","@atls/yarn-plugin-check","@atls/yarn-plugin-checks","@atls/yarn-plugin-cli-publish","@atls/yarn-plugin-commit","@atls/yarn-plugin-essentials","@atls/yarn-plugin-export","@atls/yarn-plugin-files","@atls/yarn-plugin-format","@atls/yarn-plugin-image","@atls/yarn-plugin-jsr","@atls/yarn-plugin-library","@atls/yarn-plugin-lint","@atls/yarn-plugin-release","@atls/yarn-plugin-renderer","@atls/yarn-plugin-service","@atls/yarn-plugin-test","@atls/yarn-plugin-tools","@atls/yarn-plugin-typescript","@atls/yarn-plugin-workspaces","@atls/yarn-plugin-ui","@atls/yarn-plugin-schematics","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-workspace-tools","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-essentials","@yarnpkg/plugin-compat","@yarnpkg/plugin-dlx","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-link","@yarnpkg/plugin-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm"]}}};var dKi=PDr.npath.toPortablePath(PDr.npath.resolve(process.argv[1])),VDr=gKi(AKi["@yarnpkg/builder"].bundles.standard);VDr.then?VDr.then(async e=>{(0,WDr.runExit)(process.argv.slice(2),{cwd:ODr.ppath.cwd(),selfPath:dKi,pluginConfiguration:e})}):(0,WDr.runExit)(process.argv.slice(2),{cwd:ODr.ppath.cwd(),selfPath:dKi,pluginConfiguration:VDr}); /*! Bundled license information: is-number/index.js: @@ -2429,6 +2429,17 @@ react-reconciler/cjs/react-reconciler.production.min.js: * LICENSE file in the root directory of this source tree. *) +react/cjs/react-jsx-runtime.production.min.js: + (** + * @license React + * react-jsx-runtime.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + *) + undici/lib/fetch/body.js: (*! formdata-polyfill. MIT License. Jimmy Wärting *) diff --git a/.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/.ready b/.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/.ready deleted file mode 100644 index e69de29b..00000000 diff --git a/.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/LICENSE b/.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/LICENSE deleted file mode 100644 index 645353f5..00000000 --- a/.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/LICENSE +++ /dev/null @@ -1,4380 +0,0 @@ -# Prettier license - -Prettier is released under the MIT license: - -Copyright © James Long and contributors - -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -## Licenses of bundled dependencies - -The published Prettier artifact additionally contains code with the following licenses: -MIT, ISC, BSD-2-Clause, BSD-3-Clause, Apache-2.0 - -## Bundled dependencies - -### @angular/compiler@v19.0.1 - -> Angular - the compiler library - -License: MIT -Repository: -Author: angular - -> The MIT License -> -> Copyright (c) 2010-2024 Google LLC. https://angular.dev/license -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -> THE SOFTWARE. - ----------------------------------------- - -### @babel/code-frame@v7.26.2 - -> Generate errors that contain a code frame that point to source locations. - -License: MIT -Homepage: -Repository: -Author: The Babel Team (https://babel.dev/team) - -> MIT License -> -> Copyright (c) 2014-present Sebastian McKenzie and other contributors -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> "Software"), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -> NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -> LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -> OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -> WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### @babel/helper-validator-identifier@v7.25.9 - -> Validate identifier/keywords name - -License: MIT -Repository: -Author: The Babel Team (https://babel.dev/team) - -> MIT License -> -> Copyright (c) 2014-present Sebastian McKenzie and other contributors -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> "Software"), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -> NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -> LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -> OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -> WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### @babel/parser@v7.26.2 - -> A JavaScript parser - -License: MIT -Homepage: -Repository: -Author: The Babel Team (https://babel.dev/team) - -> Copyright (C) 2012-2014 by various contributors (see AUTHORS) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -> THE SOFTWARE. - ----------------------------------------- - -### @glimmer/env@v0.1.7 - -> Glimmer application environment variables stub - -License: MIT - -> Copyright (c) 2017 Martin Muñoz and contributors. -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of -> this software and associated documentation files (the "Software"), to deal in -> the Software without restriction, including without limitation the rights to -> use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies -> of the Software, and to permit persons to whom the Software is furnished to do -> so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### @glimmer/syntax@v0.93.1 - -License: MIT - -> Copyright (c) 2015 Tilde, Inc. -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of -> this software and associated documentation files (the "Software"), to deal in -> the Software without restriction, including without limitation the rights to -> use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies -> of the Software, and to permit persons to whom the Software is furnished to do -> so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### @glimmer/util@v0.93.1 - -> Common utilities used in Glimmer - -License: MIT - -> Copyright (c) 2015 Tilde, Inc. -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of -> this software and associated documentation files (the "Software"), to deal in -> the Software without restriction, including without limitation the rights to -> use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies -> of the Software, and to permit persons to whom the Software is furnished to do -> so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### @glimmer/wire-format@v0.93.1 - -License: MIT - -> Copyright (c) 2015 Tilde, Inc. -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of -> this software and associated documentation files (the "Software"), to deal in -> the Software without restriction, including without limitation the rights to -> use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies -> of the Software, and to permit persons to whom the Software is furnished to do -> so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### @handlebars/parser@v2.0.0 - -> The parser for the Handlebars language - -License: ISC -Homepage: -Repository: - ----------------------------------------- - -### @nodelib/fs.scandir@v2.1.5 - -> List files and directories inside the specified directory - -License: MIT - -> The MIT License (MIT) -> -> Copyright (c) Denis Malinochkin -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### @nodelib/fs.stat@v2.0.5 - -> Get the status of a file with some features - -License: MIT - -> The MIT License (MIT) -> -> Copyright (c) Denis Malinochkin -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### @nodelib/fs.walk@v1.2.8 - -> A library for efficiently walking a directory recursively - -License: MIT - -> The MIT License (MIT) -> -> Copyright (c) Denis Malinochkin -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### @prettier/is-es5-identifier-name@v0.2.0 - -> Check if provided string is an `IdentifierName` as specified in ECMA262 edition 5.1 section 7.6. - -License: MIT -Author: fisker Cheung - -> MIT License -> -> Copyright (c) fisker Cheung (https://www.fiskercheung.com/) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### @prettier/parse-srcset@v3.1.0 - -> A spec-conformant JavaScript parser for the HTML5 srcset attribute - -License: MIT -Homepage: -Author: Alex Bell - -> The MIT License (MIT) -> -> Copyright (c) 2014 Alex Bell -> Copyright (c) fisker Cheung -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### @typescript-eslint/types@v8.16.0 - -> Types for the TypeScript-ESTree AST spec - -License: MIT -Homepage: -Repository: - -> MIT License -> -> Copyright (c) 2019 typescript-eslint and other contributors -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### @typescript-eslint/typescript-estree@v8.16.0 - -> A parser that converts TypeScript source code into an ESTree compatible form - -License: BSD-2-Clause -Homepage: -Repository: - -> BSD 2-Clause License -> -> TypeScript ESTree -> -> Originally extracted from: -> -> TypeScript ESLint Parser -> Copyright JS Foundation and other contributors, https://js.foundation -> -> Redistribution and use in source and binary forms, with or without -> modification, are permitted provided that the following conditions are met: -> -> - Redistributions of source code must retain the above copyright -> notice, this list of conditions and the following disclaimer. -> - Redistributions in binary form must reproduce the above copyright -> notice, this list of conditions and the following disclaimer in the -> documentation and/or other materials provided with the distribution. -> -> THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -> AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -> IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -> ARE DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY -> DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -> (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -> LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -> ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -> (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF -> THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - ----------------------------------------- - -### acorn@v8.14.0 - -> ECMAScript parser - -License: MIT -Homepage: -Repository: - -> MIT License -> -> Copyright (C) 2012-2022 by various contributors (see AUTHORS) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -> THE SOFTWARE. - ----------------------------------------- - -### acorn-jsx@v5.3.2 - -> Modern, fast React.js JSX parser - -License: MIT -Homepage: -Repository: - -> Copyright (C) 2012-2017 by Ingvar Stepanyan -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -> THE SOFTWARE. - ----------------------------------------- - -### angular-estree-parser@v10.2.0 - -> A parser that converts Angular source code into an ESTree-compatible form - -License: MIT -Homepage: -Author: Ika (https://github.com/ikatyang) - -> MIT License -> -> Copyright (c) Ika (https://github.com/ikatyang) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### angular-html-parser@v8.0.1 - -> A HTML parser extracted from Angular with some modifications - -License: MIT -Homepage: -Author: Ika (https://github.com/ikatyang) - -> MIT License -> -> Copyright (c) Ika (https://github.com/ikatyang) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### ansi-regex@v6.1.0 - -> Regular expression for matching ANSI escape codes - -License: MIT -Author: Sindre Sorhus (https://sindresorhus.com) - -> MIT License -> -> Copyright (c) Sindre Sorhus (https://sindresorhus.com) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### bail@v1.0.5 - -> Throw a given error - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - -> (The MIT License) -> -> Copyright (c) 2015 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> 'Software'), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### braces@v3.0.3 - -> Bash-like brace expansion, implemented in JavaScript. Safer than other brace expansion libs, with complete support for the Bash 4.3 braces specification, without sacrificing speed. - -License: MIT -Homepage: -Author: Jon Schlinkert (https://github.com/jonschlinkert) -Contributors: - - Brian Woodward (https://twitter.com/doowb) - - Elan Shanker (https://github.com/es128) - - Eugene Sharygin (https://github.com/eush77) - - hemanth.hm (http://h3manth.com) - - Jon Schlinkert (http://twitter.com/jonschlinkert) - -> The MIT License (MIT) -> -> Copyright (c) 2014-present, Jon Schlinkert. -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -> THE SOFTWARE. - ----------------------------------------- - -### camelcase@v8.0.0 - -> Convert a dash/dot/underscore/space separated string to camelCase or PascalCase: `foo-bar` → `fooBar` - -License: MIT -Author: Sindre Sorhus (https://sindresorhus.com) - -> MIT License -> -> Copyright (c) Sindre Sorhus (https://sindresorhus.com) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### ccount@v1.1.0 - -> Count characters - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - -> (The MIT License) -> -> Copyright (c) 2015 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> 'Software'), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### chalk@v5.3.0 - -> Terminal string styling done right - -License: MIT - -> MIT License -> -> Copyright (c) Sindre Sorhus (https://sindresorhus.com) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### character-entities@v1.2.4 - -> HTML character entity information - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - -> (The MIT License) -> -> Copyright (c) 2015 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> 'Software'), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### character-entities-legacy@v1.1.4 - -> HTML legacy character entity information - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - -> (The MIT License) -> -> Copyright (c) 2015 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> 'Software'), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### character-reference-invalid@v1.1.4 - -> HTML invalid numeric character reference information - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - -> (The MIT License) -> -> Copyright (c) 2015 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> 'Software'), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### ci-info@v4.1.0 - -> Get details about the current Continuous Integration environment - -License: MIT -Homepage: -Author: Thomas Watson Steen (https://twitter.com/wa7son) -Contributors: - - Sibiraj (https://github.com/sibiraj-s) - -> The MIT License (MIT) -> -> Copyright (c) 2016 Thomas Watson Steen -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### collapse-white-space@v1.0.6 - -> Replace multiple white-space characters with a single space - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - -> (The MIT License) -> -> Copyright (c) 2015 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> 'Software'), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### common-path-prefix@v3.0.0 - -> Computes the longest prefix string that is common to each path, excluding the base component - -License: ISC -Homepage: -Repository: -Author: Mark Wubben (https://novemberborn.net/) - -> ISC License (ISC) -> Copyright (c) 2016, Mark Wubben -> -> Permission to use, copy, modify, and/or distribute this software for any purpose -> with or without fee is hereby granted, provided that the above copyright notice -> and this permission notice appear in all copies. -> -> 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. - ----------------------------------------- - -### dashify@v2.0.0 - -> Convert a camelcase or space-separated string to a dash-separated string. ~12 sloc, fast, supports diacritics. - -License: MIT -Homepage: -Author: Jon Schlinkert (https://github.com/jonschlinkert) -Contributors: - - Jeffrey Priebe (https://github.com/jeffreypriebe) - - Jon Schlinkert (http://twitter.com/jonschlinkert) - - Ondrej Brinkel (https://www.anzui.de) - -> The MIT License (MIT) -> -> Copyright (c) 2015-present, Jon Schlinkert. -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -> THE SOFTWARE. - ----------------------------------------- - -### diff@v7.0.0 - -> A JavaScript text diff implementation. - -License: BSD-3-Clause -Repository: - -> BSD 3-Clause License -> -> Copyright (c) 2009-2015, Kevin Decker -> All rights reserved. -> -> Redistribution and use in source and binary forms, with or without -> modification, are permitted provided that the following conditions are met: -> -> 1. Redistributions of source code must retain the above copyright notice, this -> list of conditions and the following disclaimer. -> -> 2. Redistributions in binary form must reproduce the above copyright notice, -> this list of conditions and the following disclaimer in the documentation -> and/or other materials provided with the distribution. -> -> 3. Neither the name of the copyright holder nor the names of its -> contributors may be used to endorse or promote products derived from -> this software without specific prior written permission. -> -> THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -> AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -> IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -> DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE -> FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -> DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -> SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -> CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, -> OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -> OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - ----------------------------------------- - -### editorconfig@v0.15.3 - -> EditorConfig File Locator and Interpreter for Node.js - -License: MIT -Repository: -Author: EditorConfig Team -Contributors: - - Hong Xu (topbug.net) - - Jed Mao (https://github.com/jedmao/) - - Trey Hunner (http://treyhunner.com) - -> Copyright © 2012 EditorConfig Team -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the “Software”), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -> THE SOFTWARE. - ----------------------------------------- - -### emoji-regex@v10.4.0 - -> A regular expression to match all Emoji-only symbols as per the Unicode Standard. - -License: MIT -Homepage: -Repository: -Author: Mathias Bynens (https://mathiasbynens.be/) - -> Copyright Mathias Bynens -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> "Software"), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -> NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -> LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -> OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -> WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### escape-string-regexp@v5.0.0 - -> Escape RegExp special characters - -License: MIT -Author: Sindre Sorhus (https://sindresorhus.com) - -> MIT License -> -> Copyright (c) Sindre Sorhus (https://sindresorhus.com) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### espree@v10.3.0 - -> An Esprima-compatible JavaScript parser built on Acorn - -License: BSD-2-Clause -Homepage: -Author: Nicholas C. Zakas - -> BSD 2-Clause License -> -> Copyright (c) Open JS Foundation -> All rights reserved. -> -> Redistribution and use in source and binary forms, with or without -> modification, are permitted provided that the following conditions are met: -> -> 1. Redistributions of source code must retain the above copyright notice, this -> list of conditions and the following disclaimer. -> -> 2. Redistributions in binary form must reproduce the above copyright notice, -> this list of conditions and the following disclaimer in the documentation -> and/or other materials provided with the distribution. -> -> THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -> AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -> IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -> DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE -> FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -> DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -> SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -> CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, -> OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -> OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - ----------------------------------------- - -### extend@v3.0.2 - -> Port of jQuery.extend for node.js and the browser - -License: MIT -Repository: -Author: Stefan Thomas (http://www.justmoon.net) -Contributors: - - Jordan Harband (https://github.com/ljharb) - -> The MIT License (MIT) -> -> Copyright (c) 2014 Stefan Thomas -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> "Software"), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -> NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -> LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -> OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -> WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### fast-glob@v3.3.2 - -> It's a very fast and efficient glob library for Node.js - -License: MIT -Author: Denis Malinochkin (https://mrmlnc.com) - -> The MIT License (MIT) -> -> Copyright (c) Denis Malinochkin -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### fast-json-stable-stringify@v2.1.0 - -> deterministic `JSON.stringify()` - a faster version of substack's json-stable-strigify without jsonify - -License: MIT -Homepage: -Repository: -Author: James Halliday (http://substack.net) - -> This software is released under the MIT license: -> -> Copyright (c) 2017 Evgeny Poberezkin -> Copyright (c) 2013 James Halliday -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of -> this software and associated documentation files (the "Software"), to deal in -> the Software without restriction, including without limitation the rights to -> use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -> the Software, and to permit persons to whom the Software is furnished to do so, -> subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -> FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -> COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -> IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -> CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### fastq@v1.17.1 - -> Fast, in memory work queue - -License: ISC -Homepage: -Repository: -Author: Matteo Collina - -> Copyright (c) 2015-2020, Matteo Collina -> -> Permission to use, copy, modify, and/or distribute this software for any -> purpose with or without fee is hereby granted, provided that the above -> copyright notice and this permission notice appear in all copies. -> -> 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. - ----------------------------------------- - -### file-entry-cache@v9.1.0 - -> Super simple cache for file metadata, useful for process that work o a given series of files and that only need to repeat the job on the changed ones since the previous run of the process - -License: MIT -Author: Jared Wray (https://jaredwray.com) - -> The MIT License (MIT) -> -> Copyright (c) Roy Riojas & Jared Wray -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### fill-range@v7.1.1 - -> Fill in a range of numbers or letters, optionally passing an increment or `step` to use, or create a regex-compatible range with `options.toRegex` - -License: MIT -Homepage: -Author: Jon Schlinkert (https://github.com/jonschlinkert) -Contributors: - - Edo Rivai (edo.rivai.nl) - - Jon Schlinkert (http://twitter.com/jonschlinkert) - - Paul Miller (paulmillr.com) - - Rouven Weßling (www.rouvenwessling.de) - - null (https://github.com/wtgtybhertgeghgtwtg) - -> The MIT License (MIT) -> -> Copyright (c) 2014-present, Jon Schlinkert. -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -> THE SOFTWARE. - ----------------------------------------- - -### find-cache-dir@v5.0.0 - -> Finds the common standard cache directory - -License: MIT -Author: Sindre Sorhus (https://sindresorhus.com) - -> MIT License -> -> Copyright (c) Sindre Sorhus (https://sindresorhus.com) -> Copyright (c) James Talmage (https://github.com/jamestalmage) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### find-up@v6.3.0 - -> Find a file or directory by walking up parent directories - -License: MIT -Author: Sindre Sorhus (https://sindresorhus.com) - -> MIT License -> -> Copyright (c) Sindre Sorhus (https://sindresorhus.com) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### flat-cache@v5.0.0 - -> A stupidly simple key/value storage using files to persist some data - -License: MIT -Author: Jared Wray (https://jaredwray.com) - -> The MIT License (MIT) -> -> Copyright (c) Roy Riojas and Jared Wray -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### flatted@v3.3.2 - -> A super light and fast circular JSON parser. - -License: ISC -Homepage: -Repository: -Author: Andrea Giammarchi - -> ISC License -> -> Copyright (c) 2018-2020, Andrea Giammarchi, @WebReflection -> -> Permission to use, copy, modify, and/or distribute this software for any -> purpose with or without fee is hereby granted, provided that the above -> copyright notice and this permission notice appear in all copies. -> -> 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. - ----------------------------------------- - -### flatten@v1.0.3 - -> Flatten arbitrarily nested arrays into a non-nested list of non-array items. Maintained for legacy compatibility. - -License: MIT -Homepage: -Repository: -Author: Joshua Holbrook (http://jesusabdullah.net) -Contributors: - - M.K. (https://github.com/mk-pmb) - -> The MIT License (MIT) -> -> Copyright (c) 2016 Joshua Holbrook -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -> THE SOFTWARE. - ----------------------------------------- - -### flow-parser@v0.255.0 - -> JavaScript parser written in OCaml. Produces ESTree AST - -License: MIT -Homepage: -Repository: -Author: Flow Team - ----------------------------------------- - -### get-east-asian-width@v1.3.0 - -> Determine the East Asian Width of a Unicode character - -License: MIT -Author: Sindre Sorhus (https://sindresorhus.com) - -> MIT License -> -> Copyright (c) Sindre Sorhus (https://sindresorhus.com) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### get-stdin@v9.0.0 - -> Get stdin as a string or buffer - -License: MIT -Author: Sindre Sorhus (https://sindresorhus.com) - -> MIT License -> -> Copyright (c) Sindre Sorhus (https://sindresorhus.com) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### glob-parent@v5.1.2 - -> Extract the non-magic parent path from a glob string. - -License: ISC -Author: Gulp Team (https://gulpjs.com/) -Contributors: - - Elan Shanker (https://github.com/es128) - - Blaine Bublitz - -> The ISC License -> -> Copyright (c) 2015, 2019 Elan Shanker -> -> Permission to use, copy, modify, and/or distribute this software for any -> purpose with or without fee is hereby granted, provided that the above -> copyright notice and this permission notice appear in all copies. -> -> 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. - ----------------------------------------- - -### graphql@v16.9.0 - -> A Query Language and Runtime which can target any service. - -License: MIT -Homepage: -Repository: - -> MIT License -> -> Copyright (c) GraphQL Contributors -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### ignore@v6.0.2 - -> Ignore is a manager and filter for .gitignore rules, the one used by eslint, gitbook and many others. - -License: MIT -Repository: -Author: kael - -> Copyright (c) 2013 Kael Zhang , contributors -> http://kael.me/ -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> "Software"), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -> NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -> LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -> OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -> WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### import-meta-resolve@v4.1.0 - -> Resolve things like Node.js — ponyfill for `import.meta.resolve` - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - -> (The MIT License) -> -> Copyright (c) 2021 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> 'Software'), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -> -> --- -> -> This is a derivative work based on: -> . -> Which is licensed: -> -> """ -> Copyright Node.js contributors. All rights reserved. -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to -> deal in the Software without restriction, including without limitation the -> rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -> sell copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -> FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS -> IN THE SOFTWARE. -> """ -> -> This license applies to parts of Node.js originating from the -> https://github.com/joyent/node repository: -> -> """ -> Copyright Joyent, Inc. and other Node contributors. All rights reserved. -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to -> deal in the Software without restriction, including without limitation the -> rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -> sell copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -> FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS -> IN THE SOFTWARE. -> """ - ----------------------------------------- - -### index-to-position@v0.1.2 - -> Convert a string index to its line and column position - -License: MIT -Author: Sindre Sorhus (https://sindresorhus.com) - -> MIT License -> -> Copyright (c) Sindre Sorhus (https://sindresorhus.com) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### indexes-of@v1.0.1 - -> line String/Array#indexOf but return all the indexes in an array - -License: MIT -Homepage: -Repository: -Author: Dominic Tarr (dominictarr.com) - -> Copyright (c) 2013 Dominic Tarr -> -> Permission is hereby granted, free of charge, -> to any person obtaining a copy of this software and -> associated documentation files (the "Software"), to -> deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, -> merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom -> the Software is furnished to do so, -> subject to the following conditions: -> -> The above copyright notice and this permission notice -> shall be included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -> OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR -> ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### inherits@v2.0.4 - -> Browser-friendly inheritance fully compatible with standard node.js inherits() - -License: ISC - -> The ISC License -> -> Copyright (c) Isaac Z. Schlueter -> -> Permission to use, copy, modify, and/or distribute this software for any -> purpose with or without fee is hereby granted, provided that the above -> copyright notice and this permission notice appear in all copies. -> -> 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. - ----------------------------------------- - -### is-alphabetical@v1.0.4 - -> Check if a character is alphabetical - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - -> (The MIT License) -> -> Copyright (c) 2016 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> 'Software'), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### is-alphanumerical@v1.0.4 - -> Check if a character is alphanumerical - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - -> (The MIT License) -> -> Copyright (c) 2016 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> 'Software'), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### is-buffer@v2.0.5 - -> Determine if an object is a Buffer - -License: MIT -Repository: -Author: Feross Aboukhadijeh (https://feross.org) - -> The MIT License (MIT) -> -> Copyright (c) Feross Aboukhadijeh -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -> THE SOFTWARE. - ----------------------------------------- - -### is-decimal@v1.0.4 - -> Check if a character is decimal - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - -> (The MIT License) -> -> Copyright (c) 2016 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> 'Software'), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### is-extglob@v2.1.1 - -> Returns true if a string has an extglob. - -License: MIT -Homepage: -Author: Jon Schlinkert (https://github.com/jonschlinkert) - -> The MIT License (MIT) -> -> Copyright (c) 2014-2016, Jon Schlinkert -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -> THE SOFTWARE. - ----------------------------------------- - -### is-glob@v4.0.3 - -> Returns `true` if the given string looks like a glob pattern or an extglob pattern. This makes it easy to create code that only uses external modules like node-glob when necessary, resulting in much faster code execution and initialization time, and a better user experience. - -License: MIT -Homepage: -Author: Jon Schlinkert (https://github.com/jonschlinkert) -Contributors: - - Brian Woodward (https://twitter.com/doowb) - - Daniel Perez (https://tuvistavie.com) - - Jon Schlinkert (http://twitter.com/jonschlinkert) - -> The MIT License (MIT) -> -> Copyright (c) 2014-2017, Jon Schlinkert. -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -> THE SOFTWARE. - ----------------------------------------- - -### is-hexadecimal@v1.0.4 - -> Check if a character is hexadecimal - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - -> (The MIT License) -> -> Copyright (c) 2016 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> 'Software'), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### is-number@v7.0.0 - -> Returns true if a number or string value is a finite number. Useful for regex matches, parsing, user input, etc. - -License: MIT -Homepage: -Author: Jon Schlinkert (https://github.com/jonschlinkert) -Contributors: - - Jon Schlinkert (http://twitter.com/jonschlinkert) - - Olsten Larck (https://i.am.charlike.online) - - Rouven Weßling (www.rouvenwessling.de) - -> The MIT License (MIT) -> -> Copyright (c) 2014-present, Jon Schlinkert. -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -> THE SOFTWARE. - ----------------------------------------- - -### is-plain-obj@v2.1.0 - -> Check if a value is a plain object - -License: MIT -Author: Sindre Sorhus (sindresorhus.com) - -> MIT License -> -> Copyright (c) Sindre Sorhus (sindresorhus.com) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### is-whitespace-character@v1.0.4 - -> Check if a character is a whitespace character - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - -> (The MIT License) -> -> Copyright (c) 2016 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> 'Software'), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### is-word-character@v1.0.4 - -> Check if a character is a word character - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - -> (The MIT License) -> -> Copyright (c) 2016 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> 'Software'), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### iterate-directory-up@v1.1.1 - -> Iterate directory up. - -License: MIT -Homepage: -Author: fisker Cheung (https://www.fiskercheung.com/) - -> MIT License -> -> Copyright (c) fisker Cheung (https://www.fiskercheung.com/) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### jest-docblock@v30.0.0-alpha.6 - -License: MIT -Repository: - -> MIT License -> -> Copyright (c) Meta Platforms, Inc. and affiliates. -> Copyright Contributors to the Jest project. -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### js-tokens@v4.0.0 - -> A regex that tokenizes JavaScript. - -License: MIT -Author: Simon Lydell - -> The MIT License (MIT) -> -> Copyright (c) 2014, 2015, 2016, 2017, 2018 Simon Lydell -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -> THE SOFTWARE. - ----------------------------------------- - -### js-yaml@v4.1.0 - -> YAML 1.2 parser and serializer - -License: MIT -Author: Vladimir Zapparov -Contributors: - - Aleksey V Zapparov (http://www.ixti.net/) - - Vitaly Puzrin (https://github.com/puzrin) - - Martin Grenfell (http://got-ravings.blogspot.com) - -> (The MIT License) -> -> Copyright (C) 2011-2015 by Vitaly Puzrin -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -> THE SOFTWARE. - ----------------------------------------- - -### json-buffer@v3.0.1 - -> JSON parse & stringify that supports binary via bops & base64 - -License: MIT -Homepage: -Repository: -Author: Dominic Tarr (http://dominictarr.com) - -> Copyright (c) 2013 Dominic Tarr -> -> Permission is hereby granted, free of charge, -> to any person obtaining a copy of this software and -> associated documentation files (the "Software"), to -> deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, -> merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom -> the Software is furnished to do so, -> subject to the following conditions: -> -> The above copyright notice and this permission notice -> shall be included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -> OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR -> ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### json5@v2.2.3 - -> JSON for Humans - -License: MIT -Homepage: -Repository: -Author: Aseem Kishore -Contributors: - - Max Nanasy - - Andrew Eisenberg - - Jordan Tucker - -> MIT License -> -> Copyright (c) 2012-2018 Aseem Kishore, and [others]. -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. -> -> [others]: https://github.com/json5/json5/contributors - ----------------------------------------- - -### keyv@v4.5.4 - -> Simple key-value storage with support for multiple backends - -License: MIT -Homepage: -Repository: -Author: Jared Wray (http://jaredwray.com) - ----------------------------------------- - -### leven@v4.0.0 - -> Measure the difference between two strings using the Levenshtein distance algorithm - -License: MIT -Author: Sindre Sorhus (https://sindresorhus.com) - -> MIT License -> -> Copyright (c) Sindre Sorhus (https://sindresorhus.com) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### lines-and-columns@v2.0.4 - -> Maps lines and columns to character offsets and back. - -License: MIT -Homepage: -Repository: -Author: Brian Donovan - -> The MIT License (MIT) -> -> Copyright (c) 2015 Brian Donovan -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -> THE SOFTWARE. - ----------------------------------------- - -### locate-path@v7.2.0 - -> Get the first path that exists on disk of multiple paths - -License: MIT -Author: Sindre Sorhus (https://sindresorhus.com) - -> MIT License -> -> Copyright (c) Sindre Sorhus (https://sindresorhus.com) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### lru-cache@v4.1.5 - -> A cache object that deletes the least-recently-used items. - -License: ISC -Author: Isaac Z. Schlueter - -> The ISC License -> -> Copyright (c) Isaac Z. Schlueter and Contributors -> -> Permission to use, copy, modify, and/or distribute this software for any -> purpose with or without fee is hereby granted, provided that the above -> copyright notice and this permission notice appear in all copies. -> -> 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. - ----------------------------------------- - -### markdown-escapes@v1.0.4 - -> List of escapable characters in markdown - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - -> (The MIT License) -> -> Copyright (c) 2016 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> 'Software'), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### merge2@v1.4.1 - -> Merge multiple streams into one stream in sequence or parallel. - -License: MIT -Homepage: -Repository: - -> The MIT License (MIT) -> -> Copyright (c) 2014-2020 Teambition -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### meriyah@v6.0.3 - -> A 100% compliant, self-hosted javascript parser with high focus on both performance and stability - -License: ISC -Homepage: -Repository: -Author: Kenny F. (https://github.com/KFlash) -Contributors: - - Chunpeng Huo (https://github.com/3cp) - -> ISC License -> -> Copyright (c) 2019 and later, KFlash and others. -> -> Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -> -> 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. - ----------------------------------------- - -### micromatch@v4.0.8 - -> Glob matching for javascript/node.js. A replacement and faster alternative to minimatch and multimatch. - -License: MIT -Homepage: -Author: Jon Schlinkert (https://github.com/jonschlinkert) -Contributors: - - null (https://github.com/DianeLooney) - - Amila Welihinda (amilajack.com) - - Bogdan Chadkin (https://github.com/TrySound) - - Brian Woodward (https://twitter.com/doowb) - - Devon Govett (http://badassjs.com) - - Elan Shanker (https://github.com/es128) - - Fabrício Matté (https://ultcombo.js.org) - - Jon Schlinkert (http://twitter.com/jonschlinkert) - - Martin Kolárik (https://kolarik.sk) - - Olsten Larck (https://i.am.charlike.online) - - Paul Miller (paulmillr.com) - - Tom Byrer (https://github.com/tomByrer) - - Tyler Akins (http://rumkin.com) - - Peter Bright (https://github.com/drpizza) - - Kuba Juszczyk (https://github.com/ku8ar) - -> The MIT License (MIT) -> -> Copyright (c) 2014-present, Jon Schlinkert. -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -> THE SOFTWARE. - ----------------------------------------- - -### minimist@v1.2.8 - -> parse argument options - -License: MIT -Homepage: -Repository: -Author: James Halliday (http://substack.net) - -> This software is released under the MIT license: -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of -> this software and associated documentation files (the "Software"), to deal in -> the Software without restriction, including without limitation the rights to -> use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -> the Software, and to permit persons to whom the Software is furnished to do so, -> subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -> FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -> COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -> IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -> CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### n-readlines@v1.0.1 - -> Read file line by line without buffering the whole file in memory. - -License: MIT -Repository: -Author: Yoan Arnaudov - -> The MIT License (MIT) -> -> Copyright (c) 2013 Liucw -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of -> this software and associated documentation files (the "Software"), to deal in -> the Software without restriction, including without limitation the rights to -> use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -> the Software, and to permit persons to whom the Software is furnished to do so, -> subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -> FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -> COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -> IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -> CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### nanoid@v3.3.7 - -> A tiny (116 bytes), secure URL-friendly unique string ID generator - -License: MIT -Author: Andrey Sitnik - -> The MIT License (MIT) -> -> Copyright 2017 Andrey Sitnik -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of -> this software and associated documentation files (the "Software"), to deal in -> the Software without restriction, including without limitation the rights to -> use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -> the Software, and to permit persons to whom the Software is furnished to do so, -> subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -> FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -> COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -> IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -> CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### p-limit@v4.0.0 - -> Run multiple promise-returning & async functions with limited concurrency - -License: MIT -Author: Sindre Sorhus (https://sindresorhus.com) - -> MIT License -> -> Copyright (c) Sindre Sorhus (https://sindresorhus.com) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### p-locate@v6.0.0 - -> Get the first fulfilled promise that satisfies the provided testing function - -License: MIT -Author: Sindre Sorhus (https://sindresorhus.com) - -> MIT License -> -> Copyright (c) Sindre Sorhus (https://sindresorhus.com) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### parse-entities@v2.0.0 - -> Parse HTML character references: fast, spec-compliant, positional information - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - -> (The MIT License) -> -> Copyright (c) 2015 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> 'Software'), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### parse-json@v8.1.0 - -> Parse JSON with more helpful errors - -License: MIT -Author: Sindre Sorhus (https://sindresorhus.com) - -> MIT License -> -> Copyright (c) Sindre Sorhus (https://sindresorhus.com) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### path-exists@v5.0.0 - -> Check if a path exists - -License: MIT -Author: Sindre Sorhus (https://sindresorhus.com) - -> MIT License -> -> Copyright (c) Sindre Sorhus (https://sindresorhus.com) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### picocolors@v1.1.1 - -> The tiniest and the fastest library for terminal output formatting with ANSI colors - -License: ISC -Author: Alexey Raspopov - -> ISC License -> -> Copyright (c) 2021-2024 Oleksii Raspopov, Kostiantyn Denysov, Anton Verinov -> -> Permission to use, copy, modify, and/or distribute this software for any -> purpose with or without fee is hereby granted, provided that the above -> copyright notice and this permission notice appear in all copies. -> -> 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. - ----------------------------------------- - -### picomatch@v2.3.1 - -> Blazing fast and accurate glob matcher written in JavaScript, with no dependencies and full support for standard and extended Bash glob features, including braces, extglobs, POSIX brackets, and regular expressions. - -License: MIT -Homepage: -Author: Jon Schlinkert (https://github.com/jonschlinkert) - -> The MIT License (MIT) -> -> Copyright (c) 2017-present, Jon Schlinkert. -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -> THE SOFTWARE. - ----------------------------------------- - -### pkg-dir@v7.0.0 - -> Find the root directory of a Node.js project or npm package - -License: MIT -Author: Sindre Sorhus (https://sindresorhus.com) - -> MIT License -> -> Copyright (c) Sindre Sorhus (https://sindresorhus.com) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### please-upgrade-node@v3.2.0 - -> Displays a beginner-friendly message telling your user to upgrade their version of Node - -License: MIT -Homepage: -Repository: -Author: typicode - -> MIT License -> -> Copyright (c) 2017 -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### postcss@v8.4.49 - -> Tool for transforming styles with JS plugins - -License: MIT -Homepage: -Author: Andrey Sitnik - -> The MIT License (MIT) -> -> Copyright 2013 Andrey Sitnik -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of -> this software and associated documentation files (the "Software"), to deal in -> the Software without restriction, including without limitation the rights to -> use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -> the Software, and to permit persons to whom the Software is furnished to do so, -> subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -> FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -> COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -> IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -> CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### postcss-less@v6.0.0 - -> LESS parser for PostCSS - -License: MIT -Homepage: -Author: Denys Kniazevych - -> The MIT License (MIT) -> -> Copyright (c) 2013 Andrey Sitnik -> Copyright (c) 2016 Denys Kniazevych -> Copyright (c) 2016 Pat Sissons -> Copyright (c) 2017 Andrew Powell -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### postcss-media-query-parser@v0.2.3 - -> A tool for parsing media query lists. - -License: MIT -Homepage: -Repository: -Author: dryoma - ----------------------------------------- - -### postcss-scss@v4.0.9 - -> SCSS parser for PostCSS - -License: MIT -Author: Andrey Sitnik - -> The MIT License (MIT) -> -> Copyright 2013 Andrey Sitnik -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of -> this software and associated documentation files (the "Software"), to deal in -> the Software without restriction, including without limitation the rights to -> use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -> the Software, and to permit persons to whom the Software is furnished to do so, -> subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -> FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -> COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -> IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -> CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### postcss-selector-parser@v2.2.3 - -License: MIT -Homepage: -Author: Ben Briggs (http://beneb.info) - -> Copyright (c) Ben Briggs (http://beneb.info) -> -> Permission is hereby granted, free of charge, to any person -> obtaining a copy of this software and associated documentation -> files (the "Software"), to deal in the Software without -> restriction, including without limitation the rights to use, -> copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the -> Software is furnished to do so, subject to the following -> conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -> OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -> NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -> HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -> WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -> FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -> OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### postcss-values-parser@v2.0.1 - -> A CSS property value parser for use with PostCSS - -License: MIT -Author: Andrew Powell (shellscape) (http://shellscape.org) - -> Copyright (c) Andrew Powell -> -> Permission is hereby granted, free of charge, to any person -> obtaining a copy of this software and associated documentation -> files (the "Software"), to deal in the Software without -> restriction, including without limitation the rights to use, -> copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the -> Software is furnished to do so, subject to the following -> conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -> OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -> NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -> HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -> WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -> FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -> OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### pseudomap@v1.0.2 - -> A thing that is a lot like ES6 `Map`, but without iterators, for use in environments where `for..of` syntax and `Map` are not available. - -License: ISC -Homepage: -Repository: -Author: Isaac Z. Schlueter (http://blog.izs.me/) - -> The ISC License -> -> Copyright (c) Isaac Z. Schlueter and Contributors -> -> Permission to use, copy, modify, and/or distribute this software for any -> purpose with or without fee is hereby granted, provided that the above -> copyright notice and this permission notice appear in all copies. -> -> 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. - ----------------------------------------- - -### queue-microtask@v1.2.3 - -> fast, tiny `queueMicrotask` shim for modern engines - -License: MIT -Homepage: -Repository: -Author: Feross Aboukhadijeh (https://feross.org) - -> The MIT License (MIT) -> -> Copyright (c) Feross Aboukhadijeh -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of -> this software and associated documentation files (the "Software"), to deal in -> the Software without restriction, including without limitation the rights to -> use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -> the Software, and to permit persons to whom the Software is furnished to do so, -> subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -> FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -> COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -> IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -> CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### remark-footnotes@v2.0.0 - -> remark plugin to add support for pandoc footnotes - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - -> (The MIT License) -> -> Copyright (c) 2020 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> 'Software'), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### remark-math@v3.0.1 - -> remark plugin to parse and stringify math - -License: MIT -Author: Junyoung Choi (https://rokt33r.github.io) -Contributors: - - Junyoung Choi (https://rokt33r.github.io) - - Titus Wormer (https://wooorm.com) - ----------------------------------------- - -### remark-parse@v8.0.3 - -> remark plugin to parse Markdown - -License: MIT -Homepage: -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - - Eugene Sharygin - - Junyoung Choi - - Elijah Hamovitz - - Ika - ----------------------------------------- - -### repeat-string@v1.6.1 - -> Repeat the given string n times. Fastest implementation for repeating a string. - -License: MIT -Homepage: -Author: Jon Schlinkert (http://github.com/jonschlinkert) -Contributors: - - Brian Woodward (https://github.com/doowb) - - Jon Schlinkert (http://twitter.com/jonschlinkert) - - Linus Unnebäck (http://linus.unnebäck.se) - - Thijs Busser (http://tbusser.net) - - Titus (wooorm.com) - -> The MIT License (MIT) -> -> Copyright (c) 2014-2016, Jon Schlinkert. -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -> THE SOFTWARE. - ----------------------------------------- - -### reusify@v1.0.4 - -> Reuse objects and functions with style - -License: MIT -Homepage: -Repository: -Author: Matteo Collina - -> The MIT License (MIT) -> -> Copyright (c) 2015 Matteo Collina -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### run-parallel@v1.2.0 - -> Run an array of functions in parallel - -License: MIT -Homepage: -Repository: -Author: Feross Aboukhadijeh (https://feross.org) - -> The MIT License (MIT) -> -> Copyright (c) Feross Aboukhadijeh -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of -> this software and associated documentation files (the "Software"), to deal in -> the Software without restriction, including without limitation the rights to -> use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -> the Software, and to permit persons to whom the Software is furnished to do so, -> subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -> FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -> COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -> IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -> CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### sdbm@v2.0.0 - -> SDBM non-cryptographic hash function - -License: MIT -Author: Sindre Sorhus (https://sindresorhus.com) - -> MIT License -> -> Copyright (c) Sindre Sorhus (https://sindresorhus.com) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### semver@v7.6.3 - -> The semantic version parser used by npm. - -License: ISC -Repository: -Author: GitHub Inc. - -> The ISC License -> -> Copyright (c) Isaac Z. Schlueter and Contributors -> -> Permission to use, copy, modify, and/or distribute this software for any -> purpose with or without fee is hereby granted, provided that the above -> copyright notice and this permission notice appear in all copies. -> -> 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. - ----------------------------------------- - -### semver-compare@v1.0.0 - -> compare two semver version strings, returning -1, 0, or 1 - -License: MIT -Homepage: -Repository: -Author: James Halliday (http://substack.net) - -> This software is released under the MIT license: -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of -> this software and associated documentation files (the "Software"), to deal in -> the Software without restriction, including without limitation the rights to -> use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -> the Software, and to permit persons to whom the Software is furnished to do so, -> subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -> FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -> COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -> IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -> CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### sigmund@v1.0.1 - -> Quick and dirty signatures for Objects. - -License: ISC -Repository: -Author: Isaac Z. Schlueter (http://blog.izs.me/) - -> The ISC License -> -> Copyright (c) Isaac Z. Schlueter and Contributors -> -> Permission to use, copy, modify, and/or distribute this software for any -> purpose with or without fee is hereby granted, provided that the above -> copyright notice and this permission notice appear in all copies. -> -> 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. - ----------------------------------------- - -### simple-html-tokenizer@v0.5.11 - -> Simple HTML Tokenizer is a lightweight JavaScript library that can be used to tokenize the kind of HTML normally found in templates. - -License: MIT -Repository: - -> Copyright (c) 2014 Yehuda Katz and contributors -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of -> this software and associated documentation files (the "Software"), to deal in -> the Software without restriction, including without limitation the rights to -> use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies -> of the Software, and to permit persons to whom the Software is furnished to do -> so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### smol-toml@v1.3.1 - -> A small, fast, and correct TOML parser/serializer - -License: BSD-3-Clause -Author: Cynthia - -> Copyright (c) Squirrel Chat et al., All rights reserved. -> -> Redistribution and use in source and binary forms, with or without -> modification, are permitted provided that the following conditions are met: -> -> 1. Redistributions of source code must retain the above copyright notice, this -> list of conditions and the following disclaimer. -> 2. Redistributions in binary form must reproduce the above copyright notice, -> this list of conditions and the following disclaimer in the -> documentation and/or other materials provided with the distribution. -> 3. Neither the name of the copyright holder nor the names of its contributors -> may be used to endorse or promote products derived from this software without -> specific prior written permission. -> -> THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -> ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -> WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -> DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE -> FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -> DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -> SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -> CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, -> OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -> OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - ----------------------------------------- - -### state-toggle@v1.0.3 - -> Enter/exit a state - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - -> (The MIT License) -> -> Copyright (c) 2016 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> 'Software'), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### strip-ansi@v7.1.0 - -> Strip ANSI escape codes from a string - -License: MIT -Author: Sindre Sorhus (https://sindresorhus.com) - -> MIT License -> -> Copyright (c) Sindre Sorhus (https://sindresorhus.com) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### to-fast-properties@v4.0.0 - -> Force V8 to use fast properties for an object - -License: MIT -Author: Sindre Sorhus (https:/sindresorhus.com) - -> MIT License -> -> Copyright (c) Petka Antonov -> Benjamin Gruenbaum -> John-David Dalton -> Sindre Sorhus -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### to-regex-range@v5.0.1 - -> Pass two numbers, get a regex-compatible source string for matching ranges. Validated against more than 2.78 million test assertions. - -License: MIT -Homepage: -Author: Jon Schlinkert (https://github.com/jonschlinkert) -Contributors: - - Jon Schlinkert (http://twitter.com/jonschlinkert) - - Rouven Weßling (www.rouvenwessling.de) - -> The MIT License (MIT) -> -> Copyright (c) 2015-present, Jon Schlinkert. -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -> THE SOFTWARE. - ----------------------------------------- - -### trim@v1.0.1 - -> Trim string whitespace - -License: MIT -Repository: -Author: TJ Holowaychuk - ----------------------------------------- - -### trim-trailing-lines@v1.1.4 - -> Remove final line feeds from a string - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - -> (The MIT License) -> -> Copyright (c) 2015 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> 'Software'), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### trough@v1.0.5 - -> Middleware: a channel used to convey a liquid - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - -> (The MIT License) -> -> Copyright (c) 2016 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -> THE SOFTWARE. - ----------------------------------------- - -### ts-api-utils@v1.4.2 - -> Utility functions for working with TypeScript's API. Successor to the wonderful tsutils. 🛠️️ - -License: MIT -Repository: -Author: JoshuaKGoldberg - -> # MIT License -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> 'Software'), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### typescript@v5.7.2 - -> TypeScript is a language for application scale JavaScript development - -License: Apache-2.0 -Homepage: -Repository: -Author: Microsoft Corp. - -> Apache License -> -> Version 2.0, January 2004 -> -> http://www.apache.org/licenses/ -> -> TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION -> -> 1. Definitions. -> -> "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. -> -> "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. -> -> "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. -> -> "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. -> -> "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. -> -> "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. -> -> "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). -> -> "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. -> -> "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." -> -> "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. -> -> 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. -> -> 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. -> -> 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: -> -> You must give any other recipients of the Work or Derivative Works a copy of this License; and -> -> You must cause any modified files to carry prominent notices stating that You changed the files; and -> -> You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and -> -> If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. -> -> 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. -> -> 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. -> -> 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. -> -> 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. -> -> 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. -> -> END OF TERMS AND CONDITIONS - ----------------------------------------- - -### unherit@v1.1.3 - -> Clone a constructor without affecting the super-class - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - -> (The MIT License) -> -> Copyright (c) 2015 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -> THE SOFTWARE. - ----------------------------------------- - -### unified@v9.2.2 - -> Interface for parsing, inspecting, transforming, and serializing content through syntax trees - -License: MIT -Homepage: -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - - Junyoung Choi - - Hernan Rajchert - - Christian Murphy - - Vse Mozhet Byt - - Richard Littauer - -> (The MIT License) -> -> Copyright (c) 2015 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -> THE SOFTWARE. - ----------------------------------------- - -### uniq@v1.0.1 - -> Removes duplicates from a sorted array in place - -License: MIT -Repository: -Author: Mikola Lysenko - -> The MIT License (MIT) -> -> Copyright (c) 2013 Mikola Lysenko -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -> THE SOFTWARE. - ----------------------------------------- - -### unist-util-is@v4.1.0 - -> unist utility to check if a node passes a test - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - - Christian Murphy - - Lucas Brandstaetter (https://github.com/Roang-zero1) - -> (The MIT license) -> -> Copyright (c) 2015 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> 'Software'), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### unist-util-remove-position@v2.0.1 - -> unist utility to remove positions from a tree - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - -> (The MIT License) -> -> Copyright (c) 2016 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> 'Software'), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### unist-util-stringify-position@v2.0.3 - -> unist utility to serialize a node, position, or point as a human readable location - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - -> (The MIT License) -> -> Copyright (c) 2016 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> 'Software'), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### unist-util-visit@v2.0.3 - -> unist utility to visit nodes - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - - Eugene Sharygin - - Richard Gibson - -> (The MIT License) -> -> Copyright (c) 2015 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> 'Software'), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### unist-util-visit-parents@v3.1.1 - -> unist utility to recursively walk over nodes, with ancestral information - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - -> (The MIT License) -> -> Copyright (c) 2016 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> 'Software'), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### url-or-path@v2.3.2 - -> Convert between file URL and path. - -License: MIT -Homepage: -Author: fisker Cheung (https://www.fiskercheung.com/) - -> MIT License -> -> Copyright (c) fisker Cheung (https://www.fiskercheung.com/) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### vfile@v4.2.1 - -> Virtual file format for text processing - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - - Brendan Abbott - - Denys Dovhan - - Kyle Mathews - - Shinnosuke Watanabe - - Sindre Sorhus - -> (The MIT License) -> -> Copyright (c) 2015 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -> THE SOFTWARE. - ----------------------------------------- - -### vfile-location@v3.2.0 - -> vfile utility to convert between positional (line and column-based) and offset (range-based) locations - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - - Christian Murphy - -> (The MIT License) -> -> Copyright (c) 2016 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> 'Software'), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### vfile-message@v2.0.4 - -> vfile utility to create a virtual message - -License: MIT -Author: Titus Wormer (https://wooorm.com) -Contributors: - - Titus Wormer (https://wooorm.com) - -> (The MIT License) -> -> Copyright (c) 2017 Titus Wormer -> -> Permission is hereby granted, free of charge, to any person obtaining -> a copy of this software and associated documentation files (the -> 'Software'), to deal in the Software without restriction, including -> without limitation the rights to use, copy, modify, merge, publish, -> distribute, sublicense, and/or sell copies of the Software, and to -> permit persons to whom the Software is furnished to do so, subject to -> the following conditions: -> -> The above copyright notice and this permission notice shall be -> included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -> CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -> TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ----------------------------------------- - -### vnopts@v2.0.0 - -> validate and normalize options - -License: MIT -Homepage: -Author: Ika (https://github.com/ikatyang) - -> MIT License -> -> Copyright (c) Ika (https://github.com/ikatyang) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### wcwidth.js@v2.0.0 - -> a javascript porting of C's wcwidth() - -License: MIT -Homepage: -Repository: -Author: Woong Jun (http://code.woong.org/) -Contributors: - - Tim Oxley (http://campjs.com/) - -> wcwidth.js: a javascript portng of C's wcwidth() -> ================================================ -> -> Copyright (C) 2012-2014 by Woong Jun and Tim Oxley. -> -> This package is a javascript porting of `wcwidth()` implementation -> [by Markus Kuhn](http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c). -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of -> this software and associated documentation files (the "Software"), to deal in -> the Software without restriction, including without limitation the rights to -> use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies -> of the Software, and to permit persons to whom the Software is furnished to do -> so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> -> THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, -> INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND -> FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR -> OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -> EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT -> OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -> INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -> CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING -> IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY -> OF SUCH DAMAGE. - ----------------------------------------- - -### xtend@v4.0.2 - -> extend like a boss - -License: MIT -Homepage: -Author: Raynos -Contributors: - - Jake Verbaten - - Matt Esch - -> The MIT License (MIT) -> Copyright (c) 2012-2014 Raynos. -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in -> all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -> THE SOFTWARE. - ----------------------------------------- - -### yallist@v2.1.2 - -> Yet Another Linked List - -License: ISC -Repository: -Author: Isaac Z. Schlueter (http://blog.izs.me/) - -> The ISC License -> -> Copyright (c) Isaac Z. Schlueter and Contributors -> -> Permission to use, copy, modify, and/or distribute this software for any -> purpose with or without fee is hereby granted, provided that the above -> copyright notice and this permission notice appear in all copies. -> -> 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. - ----------------------------------------- - -### yaml@v1.10.2 - -> JavaScript parser and stringifier for YAML - -License: ISC -Homepage: -Author: Eemeli Aro - -> Copyright 2018 Eemeli Aro -> -> Permission to use, copy, modify, and/or distribute this software for any purpose -> with or without fee is hereby granted, provided that the above copyright notice -> and this permission notice appear in all copies. -> -> 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. - ----------------------------------------- - -### yaml-unist-parser@v2.0.1 - -> A YAML parser that produces output compatible with unist - -License: MIT -Homepage: -Author: Ika (https://github.com/ikatyang) - -> MIT License -> -> Copyright (c) Ika (https://github.com/ikatyang) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy -> of this software and associated documentation files (the "Software"), to deal -> in the Software without restriction, including without limitation the rights -> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -> copies of the Software, and to permit persons to whom the Software is -> furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all -> copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -> SOFTWARE. - ----------------------------------------- - -### yocto-queue@v1.1.1 - -> Tiny queue data structure - -License: MIT -Author: Sindre Sorhus (https://sindresorhus.com) - -> MIT License -> -> Copyright (c) Sindre Sorhus (https://sindresorhus.com) -> -> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -> -> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -> -> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/README.md b/.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/README.md deleted file mode 100644 index d852667f..00000000 --- a/.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/README.md +++ /dev/null @@ -1,109 +0,0 @@ -[![Prettier Banner](https://unpkg.com/prettier-logo@1.0.3/images/prettier-banner-light.svg)](https://prettier.io) - -

Opinionated Code Formatter

- -

- - JavaScript - · TypeScript - · Flow - · JSX - · JSON - -
- - CSS - · SCSS - · Less - -
- - HTML - · Vue - · Angular - -
- - GraphQL - · Markdown - · YAML - -
- -
- Your favorite language? - - -

- -

- - Github Actions Build Status - - Github Actions Build Status - - Github Actions Build Status - - Codecov Coverage Status - - Blazing Fast -
- - npm version - - weekly downloads from npm - - code style: prettier - - Follow Prettier on Twitter -

- -## Intro - -Prettier is an opinionated code formatter. It enforces a consistent style by parsing your code and re-printing it with its own rules that take the maximum line length into account, wrapping code when necessary. - -### Input - - -```js -foo(reallyLongArg(), omgSoManyParameters(), IShouldRefactorThis(), isThereSeriouslyAnotherOne()); -``` - -### Output - -```js -foo( - reallyLongArg(), - omgSoManyParameters(), - IShouldRefactorThis(), - isThereSeriouslyAnotherOne(), -); -``` - -Prettier can be run [in your editor](https://prettier.io/docs/en/editors.html) on-save, in a [pre-commit hook](https://prettier.io/docs/en/precommit.html), or in [CI environments](https://prettier.io/docs/en/cli.html#list-different) to ensure your codebase has a consistent style without devs ever having to post a nit-picky comment on a code review ever again! - ---- - -**[Documentation](https://prettier.io/docs/en/)** - - -[Install](https://prettier.io/docs/en/install.html) · -[Options](https://prettier.io/docs/en/options.html) · -[CLI](https://prettier.io/docs/en/cli.html) · -[API](https://prettier.io/docs/en/api.html) - -**[Playground](https://prettier.io/playground/)** - ---- - -## Badge - -Show the world you're using _Prettier_ → [![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettier) - -```md -[![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettier) -``` - -## Contributing - -See [CONTRIBUTING.md](CONTRIBUTING.md). diff --git a/.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/bin/prettier.cjs b/.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/bin/prettier.cjs deleted file mode 100644 index 08f8e3b9..00000000 --- a/.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/bin/prettier.cjs +++ /dev/null @@ -1,68 +0,0 @@ -#!/usr/bin/env node -"use strict"; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __commonJS = function(cb, mod) { - return function __require() { - return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; - }; -}; - -// node_modules/semver-compare/index.js -var require_semver_compare = __commonJS({ - "node_modules/semver-compare/index.js": function(exports2, module2) { - module2.exports = function cmp(a, b) { - var pa = a.split("."); - var pb = b.split("."); - for (var i = 0; i < 3; i++) { - var na = Number(pa[i]); - var nb = Number(pb[i]); - if (na > nb) return 1; - if (nb > na) return -1; - if (!isNaN(na) && isNaN(nb)) return 1; - if (isNaN(na) && !isNaN(nb)) return -1; - } - return 0; - }; - } -}); - -// node_modules/please-upgrade-node/index.js -var require_please_upgrade_node = __commonJS({ - "node_modules/please-upgrade-node/index.js": function(exports2, module2) { - var semverCompare = require_semver_compare(); - module2.exports = function pleaseUpgradeNode2(pkg, opts) { - var opts = opts || {}; - var requiredVersion = pkg.engines.node.replace(">=", ""); - var currentVersion = process.version.replace("v", ""); - if (semverCompare(currentVersion, requiredVersion) === -1) { - if (opts.message) { - console.error(opts.message(requiredVersion)); - } else { - console.error( - pkg.name + " requires at least version " + requiredVersion + " of Node, please upgrade" - ); - } - if (opts.hasOwnProperty("exitCode")) { - process.exit(opts.exitCode); - } else { - process.exit(1); - } - } - }; - } -}); - -// bin/prettier.cjs -var nodeModule = require("module"); -if (typeof nodeModule.enableCompileCache === "function") { - nodeModule.enableCompileCache(); -} -var pleaseUpgradeNode = require_please_upgrade_node(); -var packageJson = require("../package.json"); -pleaseUpgradeNode(packageJson); -function runCli(cli) { - return cli.run(); -} -var dynamicImport = new Function("module", "return import(module)"); -var promise = dynamicImport("../internal/cli.mjs").then(runCli); -module.exports.__promise = promise; diff --git a/.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/doc.d.ts b/.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/doc.d.ts deleted file mode 100644 index 50117757..00000000 --- a/.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/doc.d.ts +++ /dev/null @@ -1,254 +0,0 @@ -// https://github.com/prettier/prettier/blob/next/src/document/public.js -export namespace builders { - type DocCommand = - | Align - | BreakParent - | Cursor - | Fill - | Group - | IfBreak - | Indent - | IndentIfBreak - | Label - | Line - | LineSuffix - | LineSuffixBoundary - | Trim; - type Doc = string | Doc[] | DocCommand; - - interface Align { - type: "align"; - contents: Doc; - n: number | string | { type: "root" }; - } - - interface BreakParent { - type: "break-parent"; - } - - interface Cursor { - type: "cursor"; - placeholder: symbol; - } - - interface Fill { - type: "fill"; - parts: Doc[]; - } - - interface Group { - type: "group"; - id?: symbol; - contents: Doc; - break: boolean; - expandedStates: Doc[]; - } - - interface HardlineWithoutBreakParent extends Line { - hard: true; - } - - interface IfBreak { - type: "if-break"; - breakContents: Doc; - flatContents: Doc; - } - - interface Indent { - type: "indent"; - contents: Doc; - } - - interface IndentIfBreak { - type: "indent-if-break"; - } - - interface Label { - type: "label"; - label: any; - contents: Doc; - } - - interface Line { - type: "line"; - soft?: boolean | undefined; - hard?: boolean | undefined; - literal?: boolean | undefined; - } - - interface LineSuffix { - type: "line-suffix"; - contents: Doc; - } - - interface LineSuffixBoundary { - type: "line-suffix-boundary"; - } - - interface LiterallineWithoutBreakParent extends Line { - hard: true; - literal: true; - } - - type LiteralLine = [LiterallineWithoutBreakParent, BreakParent]; - - interface Softline extends Line { - soft: true; - } - - type Hardline = [HardlineWithoutBreakParent, BreakParent]; - - interface Trim { - type: "trim"; - } - - interface GroupOptions { - shouldBreak?: boolean | undefined; - id?: symbol | undefined; - } - - function addAlignmentToDoc(doc: Doc, size: number, tabWidth: number): Doc; - - /** @see [align](https://github.com/prettier/prettier/blob/main/commands.md#align) */ - function align(widthOrString: Align["n"], doc: Doc): Align; - - /** @see [breakParent](https://github.com/prettier/prettier/blob/main/commands.md#breakparent) */ - const breakParent: BreakParent; - - /** @see [conditionalGroup](https://github.com/prettier/prettier/blob/main/commands.md#conditionalgroup) */ - function conditionalGroup(alternatives: Doc[], options?: GroupOptions): Group; - - /** @see [dedent](https://github.com/prettier/prettier/blob/main/commands.md#dedent) */ - function dedent(doc: Doc): Align; - - /** @see [dedentToRoot](https://github.com/prettier/prettier/blob/main/commands.md#dedenttoroot) */ - function dedentToRoot(doc: Doc): Align; - - /** @see [fill](https://github.com/prettier/prettier/blob/main/commands.md#fill) */ - function fill(docs: Doc[]): Fill; - - /** @see [group](https://github.com/prettier/prettier/blob/main/commands.md#group) */ - function group(doc: Doc, opts?: GroupOptions): Group; - - /** @see [hardline](https://github.com/prettier/prettier/blob/main/commands.md#hardline) */ - const hardline: Hardline; - - /** @see [hardlineWithoutBreakParent](https://github.com/prettier/prettier/blob/main/commands.md#hardlinewithoutbreakparent-and-literallinewithoutbreakparent) */ - const hardlineWithoutBreakParent: HardlineWithoutBreakParent; - - /** @see [ifBreak](https://github.com/prettier/prettier/blob/main/commands.md#ifbreak) */ - function ifBreak( - ifBreak: Doc, - noBreak?: Doc, - options?: { groupId?: symbol | undefined }, - ): IfBreak; - - /** @see [indent](https://github.com/prettier/prettier/blob/main/commands.md#indent) */ - function indent(doc: Doc): Indent; - - /** @see [indentIfBreak](https://github.com/prettier/prettier/blob/main/commands.md#indentifbreak) */ - function indentIfBreak( - doc: Doc, - opts: { groupId: symbol; negate?: boolean | undefined }, - ): IndentIfBreak; - - /** @see [join](https://github.com/prettier/prettier/blob/main/commands.md#join) */ - function join(sep: Doc, docs: Doc[]): Doc[]; - - /** @see [label](https://github.com/prettier/prettier/blob/main/commands.md#label) */ - function label(label: any | undefined, contents: Doc): Doc; - - /** @see [line](https://github.com/prettier/prettier/blob/main/commands.md#line) */ - const line: Line; - - /** @see [lineSuffix](https://github.com/prettier/prettier/blob/main/commands.md#linesuffix) */ - function lineSuffix(suffix: Doc): LineSuffix; - - /** @see [lineSuffixBoundary](https://github.com/prettier/prettier/blob/main/commands.md#linesuffixboundary) */ - const lineSuffixBoundary: LineSuffixBoundary; - - /** @see [literalline](https://github.com/prettier/prettier/blob/main/commands.md#literalline) */ - const literalline: LiteralLine; - - /** @see [literallineWithoutBreakParent](https://github.com/prettier/prettier/blob/main/commands.md#hardlinewithoutbreakparent-and-literallinewithoutbreakparent) */ - const literallineWithoutBreakParent: LiterallineWithoutBreakParent; - - /** @see [markAsRoot](https://github.com/prettier/prettier/blob/main/commands.md#markasroot) */ - function markAsRoot(doc: Doc): Align; - - /** @see [softline](https://github.com/prettier/prettier/blob/main/commands.md#softline) */ - const softline: Softline; - - /** @see [trim](https://github.com/prettier/prettier/blob/main/commands.md#trim) */ - const trim: Trim; - - /** @see [cursor](https://github.com/prettier/prettier/blob/main/commands.md#cursor) */ - const cursor: Cursor; -} - -export namespace printer { - function printDocToString( - doc: builders.Doc, - options: Options, - ): { - formatted: string; - /** - * This property is a misnomer, and has been since the changes in - * https://github.com/prettier/prettier/pull/15709. - * The region of the document indicated by `cursorNodeStart` and `cursorNodeText` will - * sometimes actually be what lies BETWEEN a pair of leaf nodes in the AST, rather than a node. - */ - cursorNodeStart?: number | undefined; - - /** - * Note that, like cursorNodeStart, this is a misnomer and may actually be the text between two - * leaf nodes in the AST instead of the text of a node. - */ - cursorNodeText?: string | undefined; - }; - interface Options { - /** - * Specify the line length that the printer will wrap on. - * @default 80 - */ - printWidth: number; - /** - * Specify the number of spaces per indentation-level. - * @default 2 - */ - tabWidth: number; - /** - * Indent lines with tabs instead of spaces - * @default false - */ - useTabs?: boolean; - parentParser?: string | undefined; - __embeddedInHtml?: boolean | undefined; - } -} - -export namespace utils { - function willBreak(doc: builders.Doc): boolean; - function traverseDoc( - doc: builders.Doc, - onEnter?: (doc: builders.Doc) => void | boolean, - onExit?: (doc: builders.Doc) => void, - shouldTraverseConditionalGroups?: boolean, - ): void; - function findInDoc( - doc: builders.Doc, - callback: (doc: builders.Doc) => T, - defaultValue: T, - ): T; - function mapDoc( - doc: builders.Doc, - callback: (doc: builders.Doc) => T, - ): T; - function removeLines(doc: builders.Doc): builders.Doc; - function stripTrailingHardline(doc: builders.Doc): builders.Doc; - function replaceEndOfLine( - doc: builders.Doc, - replacement?: builders.Doc, - ): builders.Doc; - function canBreak(doc: builders.Doc): boolean; -} diff --git a/.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/doc.js b/.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/doc.js deleted file mode 100644 index 758ff868..00000000 --- a/.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/doc.js +++ /dev/null @@ -1,1237 +0,0 @@ -(function (factory) { - function interopModuleDefault() { - var module = factory(); - return module.default || module; - } - - if (typeof exports === "object" && typeof module === "object") { - module.exports = interopModuleDefault(); - } else if (typeof define === "function" && define.amd) { - define(interopModuleDefault); - } else { - var root = - typeof globalThis !== "undefined" - ? globalThis - : typeof global !== "undefined" - ? global - : typeof self !== "undefined" - ? self - : this || {}; - root.doc = interopModuleDefault(); - } -})(function () { - "use strict"; - var __defProp = Object.defineProperty; - var __getOwnPropDesc = Object.getOwnPropertyDescriptor; - var __getOwnPropNames = Object.getOwnPropertyNames; - var __hasOwnProp = Object.prototype.hasOwnProperty; - var __export = (target, all) => { - for (var name in all) - __defProp(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames(from)) - if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); - - // src/document/public.js - var public_exports = {}; - __export(public_exports, { - builders: () => builders, - printer: () => printer, - utils: () => utils - }); - - // src/document/constants.js - var DOC_TYPE_STRING = "string"; - var DOC_TYPE_ARRAY = "array"; - var DOC_TYPE_CURSOR = "cursor"; - var DOC_TYPE_INDENT = "indent"; - var DOC_TYPE_ALIGN = "align"; - var DOC_TYPE_TRIM = "trim"; - var DOC_TYPE_GROUP = "group"; - var DOC_TYPE_FILL = "fill"; - var DOC_TYPE_IF_BREAK = "if-break"; - var DOC_TYPE_INDENT_IF_BREAK = "indent-if-break"; - var DOC_TYPE_LINE_SUFFIX = "line-suffix"; - var DOC_TYPE_LINE_SUFFIX_BOUNDARY = "line-suffix-boundary"; - var DOC_TYPE_LINE = "line"; - var DOC_TYPE_LABEL = "label"; - var DOC_TYPE_BREAK_PARENT = "break-parent"; - var VALID_OBJECT_DOC_TYPES = /* @__PURE__ */ new Set([ - DOC_TYPE_CURSOR, - DOC_TYPE_INDENT, - DOC_TYPE_ALIGN, - DOC_TYPE_TRIM, - DOC_TYPE_GROUP, - DOC_TYPE_FILL, - DOC_TYPE_IF_BREAK, - DOC_TYPE_INDENT_IF_BREAK, - DOC_TYPE_LINE_SUFFIX, - DOC_TYPE_LINE_SUFFIX_BOUNDARY, - DOC_TYPE_LINE, - DOC_TYPE_LABEL, - DOC_TYPE_BREAK_PARENT - ]); - - // src/document/utils/get-doc-type.js - function getDocType(doc) { - if (typeof doc === "string") { - return DOC_TYPE_STRING; - } - if (Array.isArray(doc)) { - return DOC_TYPE_ARRAY; - } - if (!doc) { - return; - } - const { type } = doc; - if (VALID_OBJECT_DOC_TYPES.has(type)) { - return type; - } - } - var get_doc_type_default = getDocType; - - // src/document/invalid-doc-error.js - var disjunctionListFormat = (list) => new Intl.ListFormat("en-US", { type: "disjunction" }).format(list); - function getDocErrorMessage(doc) { - const type = doc === null ? "null" : typeof doc; - if (type !== "string" && type !== "object") { - return `Unexpected doc '${type}', -Expected it to be 'string' or 'object'.`; - } - if (get_doc_type_default(doc)) { - throw new Error("doc is valid."); - } - const objectType = Object.prototype.toString.call(doc); - if (objectType !== "[object Object]") { - return `Unexpected doc '${objectType}'.`; - } - const EXPECTED_TYPE_VALUES = disjunctionListFormat( - [...VALID_OBJECT_DOC_TYPES].map((type2) => `'${type2}'`) - ); - return `Unexpected doc.type '${doc.type}'. -Expected it to be ${EXPECTED_TYPE_VALUES}.`; - } - var InvalidDocError = class extends Error { - name = "InvalidDocError"; - constructor(doc) { - super(getDocErrorMessage(doc)); - this.doc = doc; - } - }; - var invalid_doc_error_default = InvalidDocError; - - // src/document/utils/traverse-doc.js - var traverseDocOnExitStackMarker = {}; - function traverseDoc(doc, onEnter, onExit, shouldTraverseConditionalGroups) { - const docsStack = [doc]; - while (docsStack.length > 0) { - const doc2 = docsStack.pop(); - if (doc2 === traverseDocOnExitStackMarker) { - onExit(docsStack.pop()); - continue; - } - if (onExit) { - docsStack.push(doc2, traverseDocOnExitStackMarker); - } - const docType = get_doc_type_default(doc2); - if (!docType) { - throw new invalid_doc_error_default(doc2); - } - if ((onEnter == null ? void 0 : onEnter(doc2)) === false) { - continue; - } - switch (docType) { - case DOC_TYPE_ARRAY: - case DOC_TYPE_FILL: { - const parts = docType === DOC_TYPE_ARRAY ? doc2 : doc2.parts; - for (let ic = parts.length, i = ic - 1; i >= 0; --i) { - docsStack.push(parts[i]); - } - break; - } - case DOC_TYPE_IF_BREAK: - docsStack.push(doc2.flatContents, doc2.breakContents); - break; - case DOC_TYPE_GROUP: - if (shouldTraverseConditionalGroups && doc2.expandedStates) { - for (let ic = doc2.expandedStates.length, i = ic - 1; i >= 0; --i) { - docsStack.push(doc2.expandedStates[i]); - } - } else { - docsStack.push(doc2.contents); - } - break; - case DOC_TYPE_ALIGN: - case DOC_TYPE_INDENT: - case DOC_TYPE_INDENT_IF_BREAK: - case DOC_TYPE_LABEL: - case DOC_TYPE_LINE_SUFFIX: - docsStack.push(doc2.contents); - break; - case DOC_TYPE_STRING: - case DOC_TYPE_CURSOR: - case DOC_TYPE_TRIM: - case DOC_TYPE_LINE_SUFFIX_BOUNDARY: - case DOC_TYPE_LINE: - case DOC_TYPE_BREAK_PARENT: - break; - default: - throw new invalid_doc_error_default(doc2); - } - } - } - var traverse_doc_default = traverseDoc; - - // src/document/utils/assert-doc.js - var noop = () => { - }; - var assertDoc = true ? noop : function(doc) { - traverse_doc_default(doc, (doc2) => { - if (checked.has(doc2)) { - return false; - } - if (typeof doc2 !== "string") { - checked.add(doc2); - } - }); - }; - var assertDocArray = true ? noop : function(docs, optional = false) { - if (optional && !docs) { - return; - } - if (!Array.isArray(docs)) { - throw new TypeError("Unexpected doc array."); - } - for (const doc of docs) { - assertDoc(doc); - } - }; - - // src/document/builders.js - function indent(contents) { - assertDoc(contents); - return { type: DOC_TYPE_INDENT, contents }; - } - function align(widthOrString, contents) { - assertDoc(contents); - return { type: DOC_TYPE_ALIGN, contents, n: widthOrString }; - } - function group(contents, opts = {}) { - assertDoc(contents); - assertDocArray( - opts.expandedStates, - /* optional */ - true - ); - return { - type: DOC_TYPE_GROUP, - id: opts.id, - contents, - break: Boolean(opts.shouldBreak), - expandedStates: opts.expandedStates - }; - } - function dedentToRoot(contents) { - return align(Number.NEGATIVE_INFINITY, contents); - } - function markAsRoot(contents) { - return align({ type: "root" }, contents); - } - function dedent(contents) { - return align(-1, contents); - } - function conditionalGroup(states, opts) { - return group(states[0], { ...opts, expandedStates: states }); - } - function fill(parts) { - assertDocArray(parts); - return { type: DOC_TYPE_FILL, parts }; - } - function ifBreak(breakContents, flatContents = "", opts = {}) { - assertDoc(breakContents); - if (flatContents !== "") { - assertDoc(flatContents); - } - return { - type: DOC_TYPE_IF_BREAK, - breakContents, - flatContents, - groupId: opts.groupId - }; - } - function indentIfBreak(contents, opts) { - assertDoc(contents); - return { - type: DOC_TYPE_INDENT_IF_BREAK, - contents, - groupId: opts.groupId, - negate: opts.negate - }; - } - function lineSuffix(contents) { - assertDoc(contents); - return { type: DOC_TYPE_LINE_SUFFIX, contents }; - } - var lineSuffixBoundary = { type: DOC_TYPE_LINE_SUFFIX_BOUNDARY }; - var breakParent = { type: DOC_TYPE_BREAK_PARENT }; - var trim = { type: DOC_TYPE_TRIM }; - var hardlineWithoutBreakParent = { type: DOC_TYPE_LINE, hard: true }; - var literallineWithoutBreakParent = { - type: DOC_TYPE_LINE, - hard: true, - literal: true - }; - var line = { type: DOC_TYPE_LINE }; - var softline = { type: DOC_TYPE_LINE, soft: true }; - var hardline = [hardlineWithoutBreakParent, breakParent]; - var literalline = [literallineWithoutBreakParent, breakParent]; - var cursor = { type: DOC_TYPE_CURSOR }; - function join(separator, docs) { - assertDoc(separator); - assertDocArray(docs); - const parts = []; - for (let i = 0; i < docs.length; i++) { - if (i !== 0) { - parts.push(separator); - } - parts.push(docs[i]); - } - return parts; - } - function addAlignmentToDoc(doc, size, tabWidth) { - assertDoc(doc); - let aligned = doc; - if (size > 0) { - for (let i = 0; i < Math.floor(size / tabWidth); ++i) { - aligned = indent(aligned); - } - aligned = align(size % tabWidth, aligned); - aligned = align(Number.NEGATIVE_INFINITY, aligned); - } - return aligned; - } - function label(label2, contents) { - assertDoc(contents); - return label2 ? { type: DOC_TYPE_LABEL, label: label2, contents } : contents; - } - - // scripts/build/shims/at.js - var at = (isOptionalObject, object, index) => { - if (isOptionalObject && (object === void 0 || object === null)) { - return; - } - if (Array.isArray(object) || typeof object === "string") { - return object[index < 0 ? object.length + index : index]; - } - return object.at(index); - }; - var at_default = at; - - // scripts/build/shims/string-replace-all.js - var stringReplaceAll = (isOptionalObject, original, pattern, replacement) => { - if (isOptionalObject && (original === void 0 || original === null)) { - return; - } - if (original.replaceAll) { - return original.replaceAll(pattern, replacement); - } - if (pattern.global) { - return original.replace(pattern, replacement); - } - return original.split(pattern).join(replacement); - }; - var string_replace_all_default = stringReplaceAll; - - // src/common/end-of-line.js - function convertEndOfLineToChars(value) { - switch (value) { - case "cr": - return "\r"; - case "crlf": - return "\r\n"; - default: - return "\n"; - } - } - - // node_modules/emoji-regex/index.mjs - var emoji_regex_default = () => { - return /[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g; - }; - - // node_modules/get-east-asian-width/lookup.js - function isFullWidth(x) { - return x === 12288 || x >= 65281 && x <= 65376 || x >= 65504 && x <= 65510; - } - function isWide(x) { - return x >= 4352 && x <= 4447 || x === 8986 || x === 8987 || x === 9001 || x === 9002 || x >= 9193 && x <= 9196 || x === 9200 || x === 9203 || x === 9725 || x === 9726 || x === 9748 || x === 9749 || x >= 9776 && x <= 9783 || x >= 9800 && x <= 9811 || x === 9855 || x >= 9866 && x <= 9871 || x === 9875 || x === 9889 || x === 9898 || x === 9899 || x === 9917 || x === 9918 || x === 9924 || x === 9925 || x === 9934 || x === 9940 || x === 9962 || x === 9970 || x === 9971 || x === 9973 || x === 9978 || x === 9981 || x === 9989 || x === 9994 || x === 9995 || x === 10024 || x === 10060 || x === 10062 || x >= 10067 && x <= 10069 || x === 10071 || x >= 10133 && x <= 10135 || x === 10160 || x === 10175 || x === 11035 || x === 11036 || x === 11088 || x === 11093 || x >= 11904 && x <= 11929 || x >= 11931 && x <= 12019 || x >= 12032 && x <= 12245 || x >= 12272 && x <= 12287 || x >= 12289 && x <= 12350 || x >= 12353 && x <= 12438 || x >= 12441 && x <= 12543 || x >= 12549 && x <= 12591 || x >= 12593 && x <= 12686 || x >= 12688 && x <= 12773 || x >= 12783 && x <= 12830 || x >= 12832 && x <= 12871 || x >= 12880 && x <= 42124 || x >= 42128 && x <= 42182 || x >= 43360 && x <= 43388 || x >= 44032 && x <= 55203 || x >= 63744 && x <= 64255 || x >= 65040 && x <= 65049 || x >= 65072 && x <= 65106 || x >= 65108 && x <= 65126 || x >= 65128 && x <= 65131 || x >= 94176 && x <= 94180 || x === 94192 || x === 94193 || x >= 94208 && x <= 100343 || x >= 100352 && x <= 101589 || x >= 101631 && x <= 101640 || x >= 110576 && x <= 110579 || x >= 110581 && x <= 110587 || x === 110589 || x === 110590 || x >= 110592 && x <= 110882 || x === 110898 || x >= 110928 && x <= 110930 || x === 110933 || x >= 110948 && x <= 110951 || x >= 110960 && x <= 111355 || x >= 119552 && x <= 119638 || x >= 119648 && x <= 119670 || x === 126980 || x === 127183 || x === 127374 || x >= 127377 && x <= 127386 || x >= 127488 && x <= 127490 || x >= 127504 && x <= 127547 || x >= 127552 && x <= 127560 || x === 127568 || x === 127569 || x >= 127584 && x <= 127589 || x >= 127744 && x <= 127776 || x >= 127789 && x <= 127797 || x >= 127799 && x <= 127868 || x >= 127870 && x <= 127891 || x >= 127904 && x <= 127946 || x >= 127951 && x <= 127955 || x >= 127968 && x <= 127984 || x === 127988 || x >= 127992 && x <= 128062 || x === 128064 || x >= 128066 && x <= 128252 || x >= 128255 && x <= 128317 || x >= 128331 && x <= 128334 || x >= 128336 && x <= 128359 || x === 128378 || x === 128405 || x === 128406 || x === 128420 || x >= 128507 && x <= 128591 || x >= 128640 && x <= 128709 || x === 128716 || x >= 128720 && x <= 128722 || x >= 128725 && x <= 128727 || x >= 128732 && x <= 128735 || x === 128747 || x === 128748 || x >= 128756 && x <= 128764 || x >= 128992 && x <= 129003 || x === 129008 || x >= 129292 && x <= 129338 || x >= 129340 && x <= 129349 || x >= 129351 && x <= 129535 || x >= 129648 && x <= 129660 || x >= 129664 && x <= 129673 || x >= 129679 && x <= 129734 || x >= 129742 && x <= 129756 || x >= 129759 && x <= 129769 || x >= 129776 && x <= 129784 || x >= 131072 && x <= 196605 || x >= 196608 && x <= 262141; - } - - // node_modules/get-east-asian-width/index.js - var _isNarrowWidth = (codePoint) => !(isFullWidth(codePoint) || isWide(codePoint)); - - // src/utils/get-string-width.js - var notAsciiRegex = /[^\x20-\x7F]/u; - function getStringWidth(text) { - if (!text) { - return 0; - } - if (!notAsciiRegex.test(text)) { - return text.length; - } - text = text.replace(emoji_regex_default(), " "); - let width = 0; - for (const character of text) { - const codePoint = character.codePointAt(0); - if (codePoint <= 31 || codePoint >= 127 && codePoint <= 159) { - continue; - } - if (codePoint >= 768 && codePoint <= 879) { - continue; - } - width += _isNarrowWidth(codePoint) ? 1 : 2; - } - return width; - } - var get_string_width_default = getStringWidth; - - // src/document/utils.js - function mapDoc(doc, cb) { - if (typeof doc === "string") { - return cb(doc); - } - const mapped = /* @__PURE__ */ new Map(); - return rec(doc); - function rec(doc2) { - if (mapped.has(doc2)) { - return mapped.get(doc2); - } - const result = process2(doc2); - mapped.set(doc2, result); - return result; - } - function process2(doc2) { - switch (get_doc_type_default(doc2)) { - case DOC_TYPE_ARRAY: - return cb(doc2.map(rec)); - case DOC_TYPE_FILL: - return cb({ ...doc2, parts: doc2.parts.map(rec) }); - case DOC_TYPE_IF_BREAK: - return cb({ - ...doc2, - breakContents: rec(doc2.breakContents), - flatContents: rec(doc2.flatContents) - }); - case DOC_TYPE_GROUP: { - let { expandedStates, contents } = doc2; - if (expandedStates) { - expandedStates = expandedStates.map(rec); - contents = expandedStates[0]; - } else { - contents = rec(contents); - } - return cb({ ...doc2, contents, expandedStates }); - } - case DOC_TYPE_ALIGN: - case DOC_TYPE_INDENT: - case DOC_TYPE_INDENT_IF_BREAK: - case DOC_TYPE_LABEL: - case DOC_TYPE_LINE_SUFFIX: - return cb({ ...doc2, contents: rec(doc2.contents) }); - case DOC_TYPE_STRING: - case DOC_TYPE_CURSOR: - case DOC_TYPE_TRIM: - case DOC_TYPE_LINE_SUFFIX_BOUNDARY: - case DOC_TYPE_LINE: - case DOC_TYPE_BREAK_PARENT: - return cb(doc2); - default: - throw new invalid_doc_error_default(doc2); - } - } - } - function findInDoc(doc, fn, defaultValue) { - let result = defaultValue; - let shouldSkipFurtherProcessing = false; - function findInDocOnEnterFn(doc2) { - if (shouldSkipFurtherProcessing) { - return false; - } - const maybeResult = fn(doc2); - if (maybeResult !== void 0) { - shouldSkipFurtherProcessing = true; - result = maybeResult; - } - } - traverse_doc_default(doc, findInDocOnEnterFn); - return result; - } - function willBreakFn(doc) { - if (doc.type === DOC_TYPE_GROUP && doc.break) { - return true; - } - if (doc.type === DOC_TYPE_LINE && doc.hard) { - return true; - } - if (doc.type === DOC_TYPE_BREAK_PARENT) { - return true; - } - } - function willBreak(doc) { - return findInDoc(doc, willBreakFn, false); - } - function breakParentGroup(groupStack) { - if (groupStack.length > 0) { - const parentGroup = at_default( - /* isOptionalObject */ - false, - groupStack, - -1 - ); - if (!parentGroup.expandedStates && !parentGroup.break) { - parentGroup.break = "propagated"; - } - } - return null; - } - function propagateBreaks(doc) { - const alreadyVisitedSet = /* @__PURE__ */ new Set(); - const groupStack = []; - function propagateBreaksOnEnterFn(doc2) { - if (doc2.type === DOC_TYPE_BREAK_PARENT) { - breakParentGroup(groupStack); - } - if (doc2.type === DOC_TYPE_GROUP) { - groupStack.push(doc2); - if (alreadyVisitedSet.has(doc2)) { - return false; - } - alreadyVisitedSet.add(doc2); - } - } - function propagateBreaksOnExitFn(doc2) { - if (doc2.type === DOC_TYPE_GROUP) { - const group2 = groupStack.pop(); - if (group2.break) { - breakParentGroup(groupStack); - } - } - } - traverse_doc_default( - doc, - propagateBreaksOnEnterFn, - propagateBreaksOnExitFn, - /* shouldTraverseConditionalGroups */ - true - ); - } - function removeLinesFn(doc) { - if (doc.type === DOC_TYPE_LINE && !doc.hard) { - return doc.soft ? "" : " "; - } - if (doc.type === DOC_TYPE_IF_BREAK) { - return doc.flatContents; - } - return doc; - } - function removeLines(doc) { - return mapDoc(doc, removeLinesFn); - } - function stripTrailingHardlineFromParts(parts) { - parts = [...parts]; - while (parts.length >= 2 && at_default( - /* isOptionalObject */ - false, - parts, - -2 - ).type === DOC_TYPE_LINE && at_default( - /* isOptionalObject */ - false, - parts, - -1 - ).type === DOC_TYPE_BREAK_PARENT) { - parts.length -= 2; - } - if (parts.length > 0) { - const lastPart = stripTrailingHardlineFromDoc(at_default( - /* isOptionalObject */ - false, - parts, - -1 - )); - parts[parts.length - 1] = lastPart; - } - return parts; - } - function stripTrailingHardlineFromDoc(doc) { - switch (get_doc_type_default(doc)) { - case DOC_TYPE_INDENT: - case DOC_TYPE_INDENT_IF_BREAK: - case DOC_TYPE_GROUP: - case DOC_TYPE_LINE_SUFFIX: - case DOC_TYPE_LABEL: { - const contents = stripTrailingHardlineFromDoc(doc.contents); - return { ...doc, contents }; - } - case DOC_TYPE_IF_BREAK: - return { - ...doc, - breakContents: stripTrailingHardlineFromDoc(doc.breakContents), - flatContents: stripTrailingHardlineFromDoc(doc.flatContents) - }; - case DOC_TYPE_FILL: - return { ...doc, parts: stripTrailingHardlineFromParts(doc.parts) }; - case DOC_TYPE_ARRAY: - return stripTrailingHardlineFromParts(doc); - case DOC_TYPE_STRING: - return doc.replace(/[\n\r]*$/u, ""); - case DOC_TYPE_ALIGN: - case DOC_TYPE_CURSOR: - case DOC_TYPE_TRIM: - case DOC_TYPE_LINE_SUFFIX_BOUNDARY: - case DOC_TYPE_LINE: - case DOC_TYPE_BREAK_PARENT: - break; - default: - throw new invalid_doc_error_default(doc); - } - return doc; - } - function stripTrailingHardline(doc) { - return stripTrailingHardlineFromDoc(cleanDoc(doc)); - } - function cleanDocFn(doc) { - switch (get_doc_type_default(doc)) { - case DOC_TYPE_FILL: - if (doc.parts.every((part) => part === "")) { - return ""; - } - break; - case DOC_TYPE_GROUP: - if (!doc.contents && !doc.id && !doc.break && !doc.expandedStates) { - return ""; - } - if (doc.contents.type === DOC_TYPE_GROUP && doc.contents.id === doc.id && doc.contents.break === doc.break && doc.contents.expandedStates === doc.expandedStates) { - return doc.contents; - } - break; - case DOC_TYPE_ALIGN: - case DOC_TYPE_INDENT: - case DOC_TYPE_INDENT_IF_BREAK: - case DOC_TYPE_LINE_SUFFIX: - if (!doc.contents) { - return ""; - } - break; - case DOC_TYPE_IF_BREAK: - if (!doc.flatContents && !doc.breakContents) { - return ""; - } - break; - case DOC_TYPE_ARRAY: { - const parts = []; - for (const part of doc) { - if (!part) { - continue; - } - const [currentPart, ...restParts] = Array.isArray(part) ? part : [part]; - if (typeof currentPart === "string" && typeof at_default( - /* isOptionalObject */ - false, - parts, - -1 - ) === "string") { - parts[parts.length - 1] += currentPart; - } else { - parts.push(currentPart); - } - parts.push(...restParts); - } - if (parts.length === 0) { - return ""; - } - if (parts.length === 1) { - return parts[0]; - } - return parts; - } - case DOC_TYPE_STRING: - case DOC_TYPE_CURSOR: - case DOC_TYPE_TRIM: - case DOC_TYPE_LINE_SUFFIX_BOUNDARY: - case DOC_TYPE_LINE: - case DOC_TYPE_LABEL: - case DOC_TYPE_BREAK_PARENT: - break; - default: - throw new invalid_doc_error_default(doc); - } - return doc; - } - function cleanDoc(doc) { - return mapDoc(doc, (currentDoc) => cleanDocFn(currentDoc)); - } - function replaceEndOfLine(doc, replacement = literalline) { - return mapDoc( - doc, - (currentDoc) => typeof currentDoc === "string" ? join(replacement, currentDoc.split("\n")) : currentDoc - ); - } - function canBreakFn(doc) { - if (doc.type === DOC_TYPE_LINE) { - return true; - } - } - function canBreak(doc) { - return findInDoc(doc, canBreakFn, false); - } - - // src/document/printer.js - var MODE_BREAK = Symbol("MODE_BREAK"); - var MODE_FLAT = Symbol("MODE_FLAT"); - var CURSOR_PLACEHOLDER = Symbol("cursor"); - var DOC_FILL_PRINTED_LENGTH = Symbol("DOC_FILL_PRINTED_LENGTH"); - function rootIndent() { - return { value: "", length: 0, queue: [] }; - } - function makeIndent(ind, options) { - return generateInd(ind, { type: "indent" }, options); - } - function makeAlign(indent2, widthOrDoc, options) { - if (widthOrDoc === Number.NEGATIVE_INFINITY) { - return indent2.root || rootIndent(); - } - if (widthOrDoc < 0) { - return generateInd(indent2, { type: "dedent" }, options); - } - if (!widthOrDoc) { - return indent2; - } - if (widthOrDoc.type === "root") { - return { ...indent2, root: indent2 }; - } - const alignType = typeof widthOrDoc === "string" ? "stringAlign" : "numberAlign"; - return generateInd(indent2, { type: alignType, n: widthOrDoc }, options); - } - function generateInd(ind, newPart, options) { - const queue = newPart.type === "dedent" ? ind.queue.slice(0, -1) : [...ind.queue, newPart]; - let value = ""; - let length = 0; - let lastTabs = 0; - let lastSpaces = 0; - for (const part of queue) { - switch (part.type) { - case "indent": - flush(); - if (options.useTabs) { - addTabs(1); - } else { - addSpaces(options.tabWidth); - } - break; - case "stringAlign": - flush(); - value += part.n; - length += part.n.length; - break; - case "numberAlign": - lastTabs += 1; - lastSpaces += part.n; - break; - default: - throw new Error(`Unexpected type '${part.type}'`); - } - } - flushSpaces(); - return { ...ind, value, length, queue }; - function addTabs(count) { - value += " ".repeat(count); - length += options.tabWidth * count; - } - function addSpaces(count) { - value += " ".repeat(count); - length += count; - } - function flush() { - if (options.useTabs) { - flushTabs(); - } else { - flushSpaces(); - } - } - function flushTabs() { - if (lastTabs > 0) { - addTabs(lastTabs); - } - resetLast(); - } - function flushSpaces() { - if (lastSpaces > 0) { - addSpaces(lastSpaces); - } - resetLast(); - } - function resetLast() { - lastTabs = 0; - lastSpaces = 0; - } - } - function trim2(out) { - let trimCount = 0; - let cursorCount = 0; - let outIndex = out.length; - outer: while (outIndex--) { - const last = out[outIndex]; - if (last === CURSOR_PLACEHOLDER) { - cursorCount++; - continue; - } - if (false) { - throw new Error(`Unexpected value in trim: '${typeof last}'`); - } - for (let charIndex = last.length - 1; charIndex >= 0; charIndex--) { - const char = last[charIndex]; - if (char === " " || char === " ") { - trimCount++; - } else { - out[outIndex] = last.slice(0, charIndex + 1); - break outer; - } - } - } - if (trimCount > 0 || cursorCount > 0) { - out.length = outIndex + 1; - while (cursorCount-- > 0) { - out.push(CURSOR_PLACEHOLDER); - } - } - return trimCount; - } - function fits(next, restCommands, width, hasLineSuffix, groupModeMap, mustBeFlat) { - if (width === Number.POSITIVE_INFINITY) { - return true; - } - let restIdx = restCommands.length; - const cmds = [next]; - const out = []; - while (width >= 0) { - if (cmds.length === 0) { - if (restIdx === 0) { - return true; - } - cmds.push(restCommands[--restIdx]); - continue; - } - const { mode, doc } = cmds.pop(); - const docType = get_doc_type_default(doc); - switch (docType) { - case DOC_TYPE_STRING: - out.push(doc); - width -= get_string_width_default(doc); - break; - case DOC_TYPE_ARRAY: - case DOC_TYPE_FILL: { - const parts = docType === DOC_TYPE_ARRAY ? doc : doc.parts; - const end = doc[DOC_FILL_PRINTED_LENGTH] ?? 0; - for (let i = parts.length - 1; i >= end; i--) { - cmds.push({ mode, doc: parts[i] }); - } - break; - } - case DOC_TYPE_INDENT: - case DOC_TYPE_ALIGN: - case DOC_TYPE_INDENT_IF_BREAK: - case DOC_TYPE_LABEL: - cmds.push({ mode, doc: doc.contents }); - break; - case DOC_TYPE_TRIM: - width += trim2(out); - break; - case DOC_TYPE_GROUP: { - if (mustBeFlat && doc.break) { - return false; - } - const groupMode = doc.break ? MODE_BREAK : mode; - const contents = doc.expandedStates && groupMode === MODE_BREAK ? at_default( - /* isOptionalObject */ - false, - doc.expandedStates, - -1 - ) : doc.contents; - cmds.push({ mode: groupMode, doc: contents }); - break; - } - case DOC_TYPE_IF_BREAK: { - const groupMode = doc.groupId ? groupModeMap[doc.groupId] || MODE_FLAT : mode; - const contents = groupMode === MODE_BREAK ? doc.breakContents : doc.flatContents; - if (contents) { - cmds.push({ mode, doc: contents }); - } - break; - } - case DOC_TYPE_LINE: - if (mode === MODE_BREAK || doc.hard) { - return true; - } - if (!doc.soft) { - out.push(" "); - width--; - } - break; - case DOC_TYPE_LINE_SUFFIX: - hasLineSuffix = true; - break; - case DOC_TYPE_LINE_SUFFIX_BOUNDARY: - if (hasLineSuffix) { - return false; - } - break; - } - } - return false; - } - function printDocToString(doc, options) { - const groupModeMap = {}; - const width = options.printWidth; - const newLine = convertEndOfLineToChars(options.endOfLine); - let pos = 0; - const cmds = [{ ind: rootIndent(), mode: MODE_BREAK, doc }]; - const out = []; - let shouldRemeasure = false; - const lineSuffix2 = []; - let printedCursorCount = 0; - propagateBreaks(doc); - while (cmds.length > 0) { - const { ind, mode, doc: doc2 } = cmds.pop(); - switch (get_doc_type_default(doc2)) { - case DOC_TYPE_STRING: { - const formatted = newLine !== "\n" ? string_replace_all_default( - /* isOptionalObject */ - false, - doc2, - "\n", - newLine - ) : doc2; - out.push(formatted); - if (cmds.length > 0) { - pos += get_string_width_default(formatted); - } - break; - } - case DOC_TYPE_ARRAY: - for (let i = doc2.length - 1; i >= 0; i--) { - cmds.push({ ind, mode, doc: doc2[i] }); - } - break; - case DOC_TYPE_CURSOR: - if (printedCursorCount >= 2) { - throw new Error("There are too many 'cursor' in doc."); - } - out.push(CURSOR_PLACEHOLDER); - printedCursorCount++; - break; - case DOC_TYPE_INDENT: - cmds.push({ ind: makeIndent(ind, options), mode, doc: doc2.contents }); - break; - case DOC_TYPE_ALIGN: - cmds.push({ - ind: makeAlign(ind, doc2.n, options), - mode, - doc: doc2.contents - }); - break; - case DOC_TYPE_TRIM: - pos -= trim2(out); - break; - case DOC_TYPE_GROUP: - switch (mode) { - case MODE_FLAT: - if (!shouldRemeasure) { - cmds.push({ - ind, - mode: doc2.break ? MODE_BREAK : MODE_FLAT, - doc: doc2.contents - }); - break; - } - // fallthrough - case MODE_BREAK: { - shouldRemeasure = false; - const next = { ind, mode: MODE_FLAT, doc: doc2.contents }; - const rem = width - pos; - const hasLineSuffix = lineSuffix2.length > 0; - if (!doc2.break && fits(next, cmds, rem, hasLineSuffix, groupModeMap)) { - cmds.push(next); - } else { - if (doc2.expandedStates) { - const mostExpanded = at_default( - /* isOptionalObject */ - false, - doc2.expandedStates, - -1 - ); - if (doc2.break) { - cmds.push({ ind, mode: MODE_BREAK, doc: mostExpanded }); - break; - } else { - for (let i = 1; i < doc2.expandedStates.length + 1; i++) { - if (i >= doc2.expandedStates.length) { - cmds.push({ ind, mode: MODE_BREAK, doc: mostExpanded }); - break; - } else { - const state = doc2.expandedStates[i]; - const cmd = { ind, mode: MODE_FLAT, doc: state }; - if (fits(cmd, cmds, rem, hasLineSuffix, groupModeMap)) { - cmds.push(cmd); - break; - } - } - } - } - } else { - cmds.push({ ind, mode: MODE_BREAK, doc: doc2.contents }); - } - } - break; - } - } - if (doc2.id) { - groupModeMap[doc2.id] = at_default( - /* isOptionalObject */ - false, - cmds, - -1 - ).mode; - } - break; - // Fills each line with as much code as possible before moving to a new - // line with the same indentation. - // - // Expects doc.parts to be an array of alternating content and - // whitespace. The whitespace contains the linebreaks. - // - // For example: - // ["I", line, "love", line, "monkeys"] - // or - // [{ type: group, ... }, softline, { type: group, ... }] - // - // It uses this parts structure to handle three main layout cases: - // * The first two content items fit on the same line without - // breaking - // -> output the first content item and the whitespace "flat". - // * Only the first content item fits on the line without breaking - // -> output the first content item "flat" and the whitespace with - // "break". - // * Neither content item fits on the line without breaking - // -> output the first content item and the whitespace with "break". - case DOC_TYPE_FILL: { - const rem = width - pos; - const offset = doc2[DOC_FILL_PRINTED_LENGTH] ?? 0; - const { parts } = doc2; - const length = parts.length - offset; - if (length === 0) { - break; - } - const content = parts[offset + 0]; - const whitespace = parts[offset + 1]; - const contentFlatCmd = { ind, mode: MODE_FLAT, doc: content }; - const contentBreakCmd = { ind, mode: MODE_BREAK, doc: content }; - const contentFits = fits( - contentFlatCmd, - [], - rem, - lineSuffix2.length > 0, - groupModeMap, - true - ); - if (length === 1) { - if (contentFits) { - cmds.push(contentFlatCmd); - } else { - cmds.push(contentBreakCmd); - } - break; - } - const whitespaceFlatCmd = { ind, mode: MODE_FLAT, doc: whitespace }; - const whitespaceBreakCmd = { ind, mode: MODE_BREAK, doc: whitespace }; - if (length === 2) { - if (contentFits) { - cmds.push(whitespaceFlatCmd, contentFlatCmd); - } else { - cmds.push(whitespaceBreakCmd, contentBreakCmd); - } - break; - } - const secondContent = parts[offset + 2]; - const remainingCmd = { - ind, - mode, - doc: { ...doc2, [DOC_FILL_PRINTED_LENGTH]: offset + 2 } - }; - const firstAndSecondContentFlatCmd = { - ind, - mode: MODE_FLAT, - doc: [content, whitespace, secondContent] - }; - const firstAndSecondContentFits = fits( - firstAndSecondContentFlatCmd, - [], - rem, - lineSuffix2.length > 0, - groupModeMap, - true - ); - if (firstAndSecondContentFits) { - cmds.push(remainingCmd, whitespaceFlatCmd, contentFlatCmd); - } else if (contentFits) { - cmds.push(remainingCmd, whitespaceBreakCmd, contentFlatCmd); - } else { - cmds.push(remainingCmd, whitespaceBreakCmd, contentBreakCmd); - } - break; - } - case DOC_TYPE_IF_BREAK: - case DOC_TYPE_INDENT_IF_BREAK: { - const groupMode = doc2.groupId ? groupModeMap[doc2.groupId] : mode; - if (groupMode === MODE_BREAK) { - const breakContents = doc2.type === DOC_TYPE_IF_BREAK ? doc2.breakContents : doc2.negate ? doc2.contents : indent(doc2.contents); - if (breakContents) { - cmds.push({ ind, mode, doc: breakContents }); - } - } - if (groupMode === MODE_FLAT) { - const flatContents = doc2.type === DOC_TYPE_IF_BREAK ? doc2.flatContents : doc2.negate ? indent(doc2.contents) : doc2.contents; - if (flatContents) { - cmds.push({ ind, mode, doc: flatContents }); - } - } - break; - } - case DOC_TYPE_LINE_SUFFIX: - lineSuffix2.push({ ind, mode, doc: doc2.contents }); - break; - case DOC_TYPE_LINE_SUFFIX_BOUNDARY: - if (lineSuffix2.length > 0) { - cmds.push({ ind, mode, doc: hardlineWithoutBreakParent }); - } - break; - case DOC_TYPE_LINE: - switch (mode) { - case MODE_FLAT: - if (!doc2.hard) { - if (!doc2.soft) { - out.push(" "); - pos += 1; - } - break; - } else { - shouldRemeasure = true; - } - // fallthrough - case MODE_BREAK: - if (lineSuffix2.length > 0) { - cmds.push({ ind, mode, doc: doc2 }, ...lineSuffix2.reverse()); - lineSuffix2.length = 0; - break; - } - if (doc2.literal) { - if (ind.root) { - out.push(newLine, ind.root.value); - pos = ind.root.length; - } else { - out.push(newLine); - pos = 0; - } - } else { - pos -= trim2(out); - out.push(newLine + ind.value); - pos = ind.length; - } - break; - } - break; - case DOC_TYPE_LABEL: - cmds.push({ ind, mode, doc: doc2.contents }); - break; - case DOC_TYPE_BREAK_PARENT: - break; - default: - throw new invalid_doc_error_default(doc2); - } - if (cmds.length === 0 && lineSuffix2.length > 0) { - cmds.push(...lineSuffix2.reverse()); - lineSuffix2.length = 0; - } - } - const cursorPlaceholderIndex = out.indexOf(CURSOR_PLACEHOLDER); - if (cursorPlaceholderIndex !== -1) { - const otherCursorPlaceholderIndex = out.indexOf( - CURSOR_PLACEHOLDER, - cursorPlaceholderIndex + 1 - ); - if (otherCursorPlaceholderIndex === -1) { - return { - formatted: out.filter((char) => char !== CURSOR_PLACEHOLDER).join("") - }; - } - const beforeCursor = out.slice(0, cursorPlaceholderIndex).join(""); - const aroundCursor = out.slice(cursorPlaceholderIndex + 1, otherCursorPlaceholderIndex).join(""); - const afterCursor = out.slice(otherCursorPlaceholderIndex + 1).join(""); - return { - formatted: beforeCursor + aroundCursor + afterCursor, - cursorNodeStart: beforeCursor.length, - cursorNodeText: aroundCursor - }; - } - return { formatted: out.join("") }; - } - - // src/document/public.js - var builders = { - join, - line, - softline, - hardline, - literalline, - group, - conditionalGroup, - fill, - lineSuffix, - lineSuffixBoundary, - cursor, - breakParent, - ifBreak, - trim, - indent, - indentIfBreak, - align, - addAlignmentToDoc, - markAsRoot, - dedentToRoot, - dedent, - hardlineWithoutBreakParent, - literallineWithoutBreakParent, - label, - // TODO: Remove this in v4 - concat: (parts) => parts - }; - var printer = { printDocToString }; - var utils = { - willBreak, - traverseDoc: traverse_doc_default, - findInDoc, - mapDoc, - removeLines, - stripTrailingHardline, - replaceEndOfLine, - canBreak - }; - return __toCommonJS(public_exports); -}); \ No newline at end of file diff --git a/.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/doc.mjs b/.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/doc.mjs deleted file mode 100644 index 65808694..00000000 --- a/.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/doc.mjs +++ /dev/null @@ -1,1209 +0,0 @@ -var __defProp = Object.defineProperty; -var __export = (target, all) => { - for (var name in all) - __defProp(target, name, { get: all[name], enumerable: true }); -}; - -// src/document/public.js -var public_exports = {}; -__export(public_exports, { - builders: () => builders, - printer: () => printer, - utils: () => utils -}); - -// src/document/constants.js -var DOC_TYPE_STRING = "string"; -var DOC_TYPE_ARRAY = "array"; -var DOC_TYPE_CURSOR = "cursor"; -var DOC_TYPE_INDENT = "indent"; -var DOC_TYPE_ALIGN = "align"; -var DOC_TYPE_TRIM = "trim"; -var DOC_TYPE_GROUP = "group"; -var DOC_TYPE_FILL = "fill"; -var DOC_TYPE_IF_BREAK = "if-break"; -var DOC_TYPE_INDENT_IF_BREAK = "indent-if-break"; -var DOC_TYPE_LINE_SUFFIX = "line-suffix"; -var DOC_TYPE_LINE_SUFFIX_BOUNDARY = "line-suffix-boundary"; -var DOC_TYPE_LINE = "line"; -var DOC_TYPE_LABEL = "label"; -var DOC_TYPE_BREAK_PARENT = "break-parent"; -var VALID_OBJECT_DOC_TYPES = /* @__PURE__ */ new Set([ - DOC_TYPE_CURSOR, - DOC_TYPE_INDENT, - DOC_TYPE_ALIGN, - DOC_TYPE_TRIM, - DOC_TYPE_GROUP, - DOC_TYPE_FILL, - DOC_TYPE_IF_BREAK, - DOC_TYPE_INDENT_IF_BREAK, - DOC_TYPE_LINE_SUFFIX, - DOC_TYPE_LINE_SUFFIX_BOUNDARY, - DOC_TYPE_LINE, - DOC_TYPE_LABEL, - DOC_TYPE_BREAK_PARENT -]); - -// src/document/utils/get-doc-type.js -function getDocType(doc) { - if (typeof doc === "string") { - return DOC_TYPE_STRING; - } - if (Array.isArray(doc)) { - return DOC_TYPE_ARRAY; - } - if (!doc) { - return; - } - const { type } = doc; - if (VALID_OBJECT_DOC_TYPES.has(type)) { - return type; - } -} -var get_doc_type_default = getDocType; - -// src/document/invalid-doc-error.js -var disjunctionListFormat = (list) => new Intl.ListFormat("en-US", { type: "disjunction" }).format(list); -function getDocErrorMessage(doc) { - const type = doc === null ? "null" : typeof doc; - if (type !== "string" && type !== "object") { - return `Unexpected doc '${type}', -Expected it to be 'string' or 'object'.`; - } - if (get_doc_type_default(doc)) { - throw new Error("doc is valid."); - } - const objectType = Object.prototype.toString.call(doc); - if (objectType !== "[object Object]") { - return `Unexpected doc '${objectType}'.`; - } - const EXPECTED_TYPE_VALUES = disjunctionListFormat( - [...VALID_OBJECT_DOC_TYPES].map((type2) => `'${type2}'`) - ); - return `Unexpected doc.type '${doc.type}'. -Expected it to be ${EXPECTED_TYPE_VALUES}.`; -} -var InvalidDocError = class extends Error { - name = "InvalidDocError"; - constructor(doc) { - super(getDocErrorMessage(doc)); - this.doc = doc; - } -}; -var invalid_doc_error_default = InvalidDocError; - -// src/document/utils/traverse-doc.js -var traverseDocOnExitStackMarker = {}; -function traverseDoc(doc, onEnter, onExit, shouldTraverseConditionalGroups) { - const docsStack = [doc]; - while (docsStack.length > 0) { - const doc2 = docsStack.pop(); - if (doc2 === traverseDocOnExitStackMarker) { - onExit(docsStack.pop()); - continue; - } - if (onExit) { - docsStack.push(doc2, traverseDocOnExitStackMarker); - } - const docType = get_doc_type_default(doc2); - if (!docType) { - throw new invalid_doc_error_default(doc2); - } - if ((onEnter == null ? void 0 : onEnter(doc2)) === false) { - continue; - } - switch (docType) { - case DOC_TYPE_ARRAY: - case DOC_TYPE_FILL: { - const parts = docType === DOC_TYPE_ARRAY ? doc2 : doc2.parts; - for (let ic = parts.length, i = ic - 1; i >= 0; --i) { - docsStack.push(parts[i]); - } - break; - } - case DOC_TYPE_IF_BREAK: - docsStack.push(doc2.flatContents, doc2.breakContents); - break; - case DOC_TYPE_GROUP: - if (shouldTraverseConditionalGroups && doc2.expandedStates) { - for (let ic = doc2.expandedStates.length, i = ic - 1; i >= 0; --i) { - docsStack.push(doc2.expandedStates[i]); - } - } else { - docsStack.push(doc2.contents); - } - break; - case DOC_TYPE_ALIGN: - case DOC_TYPE_INDENT: - case DOC_TYPE_INDENT_IF_BREAK: - case DOC_TYPE_LABEL: - case DOC_TYPE_LINE_SUFFIX: - docsStack.push(doc2.contents); - break; - case DOC_TYPE_STRING: - case DOC_TYPE_CURSOR: - case DOC_TYPE_TRIM: - case DOC_TYPE_LINE_SUFFIX_BOUNDARY: - case DOC_TYPE_LINE: - case DOC_TYPE_BREAK_PARENT: - break; - default: - throw new invalid_doc_error_default(doc2); - } - } -} -var traverse_doc_default = traverseDoc; - -// src/document/utils/assert-doc.js -var noop = () => { -}; -var assertDoc = true ? noop : function(doc) { - traverse_doc_default(doc, (doc2) => { - if (checked.has(doc2)) { - return false; - } - if (typeof doc2 !== "string") { - checked.add(doc2); - } - }); -}; -var assertDocArray = true ? noop : function(docs, optional = false) { - if (optional && !docs) { - return; - } - if (!Array.isArray(docs)) { - throw new TypeError("Unexpected doc array."); - } - for (const doc of docs) { - assertDoc(doc); - } -}; - -// src/document/builders.js -function indent(contents) { - assertDoc(contents); - return { type: DOC_TYPE_INDENT, contents }; -} -function align(widthOrString, contents) { - assertDoc(contents); - return { type: DOC_TYPE_ALIGN, contents, n: widthOrString }; -} -function group(contents, opts = {}) { - assertDoc(contents); - assertDocArray( - opts.expandedStates, - /* optional */ - true - ); - return { - type: DOC_TYPE_GROUP, - id: opts.id, - contents, - break: Boolean(opts.shouldBreak), - expandedStates: opts.expandedStates - }; -} -function dedentToRoot(contents) { - return align(Number.NEGATIVE_INFINITY, contents); -} -function markAsRoot(contents) { - return align({ type: "root" }, contents); -} -function dedent(contents) { - return align(-1, contents); -} -function conditionalGroup(states, opts) { - return group(states[0], { ...opts, expandedStates: states }); -} -function fill(parts) { - assertDocArray(parts); - return { type: DOC_TYPE_FILL, parts }; -} -function ifBreak(breakContents, flatContents = "", opts = {}) { - assertDoc(breakContents); - if (flatContents !== "") { - assertDoc(flatContents); - } - return { - type: DOC_TYPE_IF_BREAK, - breakContents, - flatContents, - groupId: opts.groupId - }; -} -function indentIfBreak(contents, opts) { - assertDoc(contents); - return { - type: DOC_TYPE_INDENT_IF_BREAK, - contents, - groupId: opts.groupId, - negate: opts.negate - }; -} -function lineSuffix(contents) { - assertDoc(contents); - return { type: DOC_TYPE_LINE_SUFFIX, contents }; -} -var lineSuffixBoundary = { type: DOC_TYPE_LINE_SUFFIX_BOUNDARY }; -var breakParent = { type: DOC_TYPE_BREAK_PARENT }; -var trim = { type: DOC_TYPE_TRIM }; -var hardlineWithoutBreakParent = { type: DOC_TYPE_LINE, hard: true }; -var literallineWithoutBreakParent = { - type: DOC_TYPE_LINE, - hard: true, - literal: true -}; -var line = { type: DOC_TYPE_LINE }; -var softline = { type: DOC_TYPE_LINE, soft: true }; -var hardline = [hardlineWithoutBreakParent, breakParent]; -var literalline = [literallineWithoutBreakParent, breakParent]; -var cursor = { type: DOC_TYPE_CURSOR }; -function join(separator, docs) { - assertDoc(separator); - assertDocArray(docs); - const parts = []; - for (let i = 0; i < docs.length; i++) { - if (i !== 0) { - parts.push(separator); - } - parts.push(docs[i]); - } - return parts; -} -function addAlignmentToDoc(doc, size, tabWidth) { - assertDoc(doc); - let aligned = doc; - if (size > 0) { - for (let i = 0; i < Math.floor(size / tabWidth); ++i) { - aligned = indent(aligned); - } - aligned = align(size % tabWidth, aligned); - aligned = align(Number.NEGATIVE_INFINITY, aligned); - } - return aligned; -} -function label(label2, contents) { - assertDoc(contents); - return label2 ? { type: DOC_TYPE_LABEL, label: label2, contents } : contents; -} - -// scripts/build/shims/at.js -var at = (isOptionalObject, object, index) => { - if (isOptionalObject && (object === void 0 || object === null)) { - return; - } - if (Array.isArray(object) || typeof object === "string") { - return object[index < 0 ? object.length + index : index]; - } - return object.at(index); -}; -var at_default = at; - -// scripts/build/shims/string-replace-all.js -var stringReplaceAll = (isOptionalObject, original, pattern, replacement) => { - if (isOptionalObject && (original === void 0 || original === null)) { - return; - } - if (original.replaceAll) { - return original.replaceAll(pattern, replacement); - } - if (pattern.global) { - return original.replace(pattern, replacement); - } - return original.split(pattern).join(replacement); -}; -var string_replace_all_default = stringReplaceAll; - -// src/common/end-of-line.js -function convertEndOfLineToChars(value) { - switch (value) { - case "cr": - return "\r"; - case "crlf": - return "\r\n"; - default: - return "\n"; - } -} - -// node_modules/emoji-regex/index.mjs -var emoji_regex_default = () => { - return /[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g; -}; - -// node_modules/get-east-asian-width/lookup.js -function isFullWidth(x) { - return x === 12288 || x >= 65281 && x <= 65376 || x >= 65504 && x <= 65510; -} -function isWide(x) { - return x >= 4352 && x <= 4447 || x === 8986 || x === 8987 || x === 9001 || x === 9002 || x >= 9193 && x <= 9196 || x === 9200 || x === 9203 || x === 9725 || x === 9726 || x === 9748 || x === 9749 || x >= 9776 && x <= 9783 || x >= 9800 && x <= 9811 || x === 9855 || x >= 9866 && x <= 9871 || x === 9875 || x === 9889 || x === 9898 || x === 9899 || x === 9917 || x === 9918 || x === 9924 || x === 9925 || x === 9934 || x === 9940 || x === 9962 || x === 9970 || x === 9971 || x === 9973 || x === 9978 || x === 9981 || x === 9989 || x === 9994 || x === 9995 || x === 10024 || x === 10060 || x === 10062 || x >= 10067 && x <= 10069 || x === 10071 || x >= 10133 && x <= 10135 || x === 10160 || x === 10175 || x === 11035 || x === 11036 || x === 11088 || x === 11093 || x >= 11904 && x <= 11929 || x >= 11931 && x <= 12019 || x >= 12032 && x <= 12245 || x >= 12272 && x <= 12287 || x >= 12289 && x <= 12350 || x >= 12353 && x <= 12438 || x >= 12441 && x <= 12543 || x >= 12549 && x <= 12591 || x >= 12593 && x <= 12686 || x >= 12688 && x <= 12773 || x >= 12783 && x <= 12830 || x >= 12832 && x <= 12871 || x >= 12880 && x <= 42124 || x >= 42128 && x <= 42182 || x >= 43360 && x <= 43388 || x >= 44032 && x <= 55203 || x >= 63744 && x <= 64255 || x >= 65040 && x <= 65049 || x >= 65072 && x <= 65106 || x >= 65108 && x <= 65126 || x >= 65128 && x <= 65131 || x >= 94176 && x <= 94180 || x === 94192 || x === 94193 || x >= 94208 && x <= 100343 || x >= 100352 && x <= 101589 || x >= 101631 && x <= 101640 || x >= 110576 && x <= 110579 || x >= 110581 && x <= 110587 || x === 110589 || x === 110590 || x >= 110592 && x <= 110882 || x === 110898 || x >= 110928 && x <= 110930 || x === 110933 || x >= 110948 && x <= 110951 || x >= 110960 && x <= 111355 || x >= 119552 && x <= 119638 || x >= 119648 && x <= 119670 || x === 126980 || x === 127183 || x === 127374 || x >= 127377 && x <= 127386 || x >= 127488 && x <= 127490 || x >= 127504 && x <= 127547 || x >= 127552 && x <= 127560 || x === 127568 || x === 127569 || x >= 127584 && x <= 127589 || x >= 127744 && x <= 127776 || x >= 127789 && x <= 127797 || x >= 127799 && x <= 127868 || x >= 127870 && x <= 127891 || x >= 127904 && x <= 127946 || x >= 127951 && x <= 127955 || x >= 127968 && x <= 127984 || x === 127988 || x >= 127992 && x <= 128062 || x === 128064 || x >= 128066 && x <= 128252 || x >= 128255 && x <= 128317 || x >= 128331 && x <= 128334 || x >= 128336 && x <= 128359 || x === 128378 || x === 128405 || x === 128406 || x === 128420 || x >= 128507 && x <= 128591 || x >= 128640 && x <= 128709 || x === 128716 || x >= 128720 && x <= 128722 || x >= 128725 && x <= 128727 || x >= 128732 && x <= 128735 || x === 128747 || x === 128748 || x >= 128756 && x <= 128764 || x >= 128992 && x <= 129003 || x === 129008 || x >= 129292 && x <= 129338 || x >= 129340 && x <= 129349 || x >= 129351 && x <= 129535 || x >= 129648 && x <= 129660 || x >= 129664 && x <= 129673 || x >= 129679 && x <= 129734 || x >= 129742 && x <= 129756 || x >= 129759 && x <= 129769 || x >= 129776 && x <= 129784 || x >= 131072 && x <= 196605 || x >= 196608 && x <= 262141; -} - -// node_modules/get-east-asian-width/index.js -var _isNarrowWidth = (codePoint) => !(isFullWidth(codePoint) || isWide(codePoint)); - -// src/utils/get-string-width.js -var notAsciiRegex = /[^\x20-\x7F]/u; -function getStringWidth(text) { - if (!text) { - return 0; - } - if (!notAsciiRegex.test(text)) { - return text.length; - } - text = text.replace(emoji_regex_default(), " "); - let width = 0; - for (const character of text) { - const codePoint = character.codePointAt(0); - if (codePoint <= 31 || codePoint >= 127 && codePoint <= 159) { - continue; - } - if (codePoint >= 768 && codePoint <= 879) { - continue; - } - width += _isNarrowWidth(codePoint) ? 1 : 2; - } - return width; -} -var get_string_width_default = getStringWidth; - -// src/document/utils.js -function mapDoc(doc, cb) { - if (typeof doc === "string") { - return cb(doc); - } - const mapped = /* @__PURE__ */ new Map(); - return rec(doc); - function rec(doc2) { - if (mapped.has(doc2)) { - return mapped.get(doc2); - } - const result = process2(doc2); - mapped.set(doc2, result); - return result; - } - function process2(doc2) { - switch (get_doc_type_default(doc2)) { - case DOC_TYPE_ARRAY: - return cb(doc2.map(rec)); - case DOC_TYPE_FILL: - return cb({ ...doc2, parts: doc2.parts.map(rec) }); - case DOC_TYPE_IF_BREAK: - return cb({ - ...doc2, - breakContents: rec(doc2.breakContents), - flatContents: rec(doc2.flatContents) - }); - case DOC_TYPE_GROUP: { - let { expandedStates, contents } = doc2; - if (expandedStates) { - expandedStates = expandedStates.map(rec); - contents = expandedStates[0]; - } else { - contents = rec(contents); - } - return cb({ ...doc2, contents, expandedStates }); - } - case DOC_TYPE_ALIGN: - case DOC_TYPE_INDENT: - case DOC_TYPE_INDENT_IF_BREAK: - case DOC_TYPE_LABEL: - case DOC_TYPE_LINE_SUFFIX: - return cb({ ...doc2, contents: rec(doc2.contents) }); - case DOC_TYPE_STRING: - case DOC_TYPE_CURSOR: - case DOC_TYPE_TRIM: - case DOC_TYPE_LINE_SUFFIX_BOUNDARY: - case DOC_TYPE_LINE: - case DOC_TYPE_BREAK_PARENT: - return cb(doc2); - default: - throw new invalid_doc_error_default(doc2); - } - } -} -function findInDoc(doc, fn, defaultValue) { - let result = defaultValue; - let shouldSkipFurtherProcessing = false; - function findInDocOnEnterFn(doc2) { - if (shouldSkipFurtherProcessing) { - return false; - } - const maybeResult = fn(doc2); - if (maybeResult !== void 0) { - shouldSkipFurtherProcessing = true; - result = maybeResult; - } - } - traverse_doc_default(doc, findInDocOnEnterFn); - return result; -} -function willBreakFn(doc) { - if (doc.type === DOC_TYPE_GROUP && doc.break) { - return true; - } - if (doc.type === DOC_TYPE_LINE && doc.hard) { - return true; - } - if (doc.type === DOC_TYPE_BREAK_PARENT) { - return true; - } -} -function willBreak(doc) { - return findInDoc(doc, willBreakFn, false); -} -function breakParentGroup(groupStack) { - if (groupStack.length > 0) { - const parentGroup = at_default( - /* isOptionalObject */ - false, - groupStack, - -1 - ); - if (!parentGroup.expandedStates && !parentGroup.break) { - parentGroup.break = "propagated"; - } - } - return null; -} -function propagateBreaks(doc) { - const alreadyVisitedSet = /* @__PURE__ */ new Set(); - const groupStack = []; - function propagateBreaksOnEnterFn(doc2) { - if (doc2.type === DOC_TYPE_BREAK_PARENT) { - breakParentGroup(groupStack); - } - if (doc2.type === DOC_TYPE_GROUP) { - groupStack.push(doc2); - if (alreadyVisitedSet.has(doc2)) { - return false; - } - alreadyVisitedSet.add(doc2); - } - } - function propagateBreaksOnExitFn(doc2) { - if (doc2.type === DOC_TYPE_GROUP) { - const group2 = groupStack.pop(); - if (group2.break) { - breakParentGroup(groupStack); - } - } - } - traverse_doc_default( - doc, - propagateBreaksOnEnterFn, - propagateBreaksOnExitFn, - /* shouldTraverseConditionalGroups */ - true - ); -} -function removeLinesFn(doc) { - if (doc.type === DOC_TYPE_LINE && !doc.hard) { - return doc.soft ? "" : " "; - } - if (doc.type === DOC_TYPE_IF_BREAK) { - return doc.flatContents; - } - return doc; -} -function removeLines(doc) { - return mapDoc(doc, removeLinesFn); -} -function stripTrailingHardlineFromParts(parts) { - parts = [...parts]; - while (parts.length >= 2 && at_default( - /* isOptionalObject */ - false, - parts, - -2 - ).type === DOC_TYPE_LINE && at_default( - /* isOptionalObject */ - false, - parts, - -1 - ).type === DOC_TYPE_BREAK_PARENT) { - parts.length -= 2; - } - if (parts.length > 0) { - const lastPart = stripTrailingHardlineFromDoc(at_default( - /* isOptionalObject */ - false, - parts, - -1 - )); - parts[parts.length - 1] = lastPart; - } - return parts; -} -function stripTrailingHardlineFromDoc(doc) { - switch (get_doc_type_default(doc)) { - case DOC_TYPE_INDENT: - case DOC_TYPE_INDENT_IF_BREAK: - case DOC_TYPE_GROUP: - case DOC_TYPE_LINE_SUFFIX: - case DOC_TYPE_LABEL: { - const contents = stripTrailingHardlineFromDoc(doc.contents); - return { ...doc, contents }; - } - case DOC_TYPE_IF_BREAK: - return { - ...doc, - breakContents: stripTrailingHardlineFromDoc(doc.breakContents), - flatContents: stripTrailingHardlineFromDoc(doc.flatContents) - }; - case DOC_TYPE_FILL: - return { ...doc, parts: stripTrailingHardlineFromParts(doc.parts) }; - case DOC_TYPE_ARRAY: - return stripTrailingHardlineFromParts(doc); - case DOC_TYPE_STRING: - return doc.replace(/[\n\r]*$/u, ""); - case DOC_TYPE_ALIGN: - case DOC_TYPE_CURSOR: - case DOC_TYPE_TRIM: - case DOC_TYPE_LINE_SUFFIX_BOUNDARY: - case DOC_TYPE_LINE: - case DOC_TYPE_BREAK_PARENT: - break; - default: - throw new invalid_doc_error_default(doc); - } - return doc; -} -function stripTrailingHardline(doc) { - return stripTrailingHardlineFromDoc(cleanDoc(doc)); -} -function cleanDocFn(doc) { - switch (get_doc_type_default(doc)) { - case DOC_TYPE_FILL: - if (doc.parts.every((part) => part === "")) { - return ""; - } - break; - case DOC_TYPE_GROUP: - if (!doc.contents && !doc.id && !doc.break && !doc.expandedStates) { - return ""; - } - if (doc.contents.type === DOC_TYPE_GROUP && doc.contents.id === doc.id && doc.contents.break === doc.break && doc.contents.expandedStates === doc.expandedStates) { - return doc.contents; - } - break; - case DOC_TYPE_ALIGN: - case DOC_TYPE_INDENT: - case DOC_TYPE_INDENT_IF_BREAK: - case DOC_TYPE_LINE_SUFFIX: - if (!doc.contents) { - return ""; - } - break; - case DOC_TYPE_IF_BREAK: - if (!doc.flatContents && !doc.breakContents) { - return ""; - } - break; - case DOC_TYPE_ARRAY: { - const parts = []; - for (const part of doc) { - if (!part) { - continue; - } - const [currentPart, ...restParts] = Array.isArray(part) ? part : [part]; - if (typeof currentPart === "string" && typeof at_default( - /* isOptionalObject */ - false, - parts, - -1 - ) === "string") { - parts[parts.length - 1] += currentPart; - } else { - parts.push(currentPart); - } - parts.push(...restParts); - } - if (parts.length === 0) { - return ""; - } - if (parts.length === 1) { - return parts[0]; - } - return parts; - } - case DOC_TYPE_STRING: - case DOC_TYPE_CURSOR: - case DOC_TYPE_TRIM: - case DOC_TYPE_LINE_SUFFIX_BOUNDARY: - case DOC_TYPE_LINE: - case DOC_TYPE_LABEL: - case DOC_TYPE_BREAK_PARENT: - break; - default: - throw new invalid_doc_error_default(doc); - } - return doc; -} -function cleanDoc(doc) { - return mapDoc(doc, (currentDoc) => cleanDocFn(currentDoc)); -} -function replaceEndOfLine(doc, replacement = literalline) { - return mapDoc( - doc, - (currentDoc) => typeof currentDoc === "string" ? join(replacement, currentDoc.split("\n")) : currentDoc - ); -} -function canBreakFn(doc) { - if (doc.type === DOC_TYPE_LINE) { - return true; - } -} -function canBreak(doc) { - return findInDoc(doc, canBreakFn, false); -} - -// src/document/printer.js -var MODE_BREAK = Symbol("MODE_BREAK"); -var MODE_FLAT = Symbol("MODE_FLAT"); -var CURSOR_PLACEHOLDER = Symbol("cursor"); -var DOC_FILL_PRINTED_LENGTH = Symbol("DOC_FILL_PRINTED_LENGTH"); -function rootIndent() { - return { value: "", length: 0, queue: [] }; -} -function makeIndent(ind, options) { - return generateInd(ind, { type: "indent" }, options); -} -function makeAlign(indent2, widthOrDoc, options) { - if (widthOrDoc === Number.NEGATIVE_INFINITY) { - return indent2.root || rootIndent(); - } - if (widthOrDoc < 0) { - return generateInd(indent2, { type: "dedent" }, options); - } - if (!widthOrDoc) { - return indent2; - } - if (widthOrDoc.type === "root") { - return { ...indent2, root: indent2 }; - } - const alignType = typeof widthOrDoc === "string" ? "stringAlign" : "numberAlign"; - return generateInd(indent2, { type: alignType, n: widthOrDoc }, options); -} -function generateInd(ind, newPart, options) { - const queue = newPart.type === "dedent" ? ind.queue.slice(0, -1) : [...ind.queue, newPart]; - let value = ""; - let length = 0; - let lastTabs = 0; - let lastSpaces = 0; - for (const part of queue) { - switch (part.type) { - case "indent": - flush(); - if (options.useTabs) { - addTabs(1); - } else { - addSpaces(options.tabWidth); - } - break; - case "stringAlign": - flush(); - value += part.n; - length += part.n.length; - break; - case "numberAlign": - lastTabs += 1; - lastSpaces += part.n; - break; - default: - throw new Error(`Unexpected type '${part.type}'`); - } - } - flushSpaces(); - return { ...ind, value, length, queue }; - function addTabs(count) { - value += " ".repeat(count); - length += options.tabWidth * count; - } - function addSpaces(count) { - value += " ".repeat(count); - length += count; - } - function flush() { - if (options.useTabs) { - flushTabs(); - } else { - flushSpaces(); - } - } - function flushTabs() { - if (lastTabs > 0) { - addTabs(lastTabs); - } - resetLast(); - } - function flushSpaces() { - if (lastSpaces > 0) { - addSpaces(lastSpaces); - } - resetLast(); - } - function resetLast() { - lastTabs = 0; - lastSpaces = 0; - } -} -function trim2(out) { - let trimCount = 0; - let cursorCount = 0; - let outIndex = out.length; - outer: while (outIndex--) { - const last = out[outIndex]; - if (last === CURSOR_PLACEHOLDER) { - cursorCount++; - continue; - } - if (false) { - throw new Error(`Unexpected value in trim: '${typeof last}'`); - } - for (let charIndex = last.length - 1; charIndex >= 0; charIndex--) { - const char = last[charIndex]; - if (char === " " || char === " ") { - trimCount++; - } else { - out[outIndex] = last.slice(0, charIndex + 1); - break outer; - } - } - } - if (trimCount > 0 || cursorCount > 0) { - out.length = outIndex + 1; - while (cursorCount-- > 0) { - out.push(CURSOR_PLACEHOLDER); - } - } - return trimCount; -} -function fits(next, restCommands, width, hasLineSuffix, groupModeMap, mustBeFlat) { - if (width === Number.POSITIVE_INFINITY) { - return true; - } - let restIdx = restCommands.length; - const cmds = [next]; - const out = []; - while (width >= 0) { - if (cmds.length === 0) { - if (restIdx === 0) { - return true; - } - cmds.push(restCommands[--restIdx]); - continue; - } - const { mode, doc } = cmds.pop(); - const docType = get_doc_type_default(doc); - switch (docType) { - case DOC_TYPE_STRING: - out.push(doc); - width -= get_string_width_default(doc); - break; - case DOC_TYPE_ARRAY: - case DOC_TYPE_FILL: { - const parts = docType === DOC_TYPE_ARRAY ? doc : doc.parts; - const end = doc[DOC_FILL_PRINTED_LENGTH] ?? 0; - for (let i = parts.length - 1; i >= end; i--) { - cmds.push({ mode, doc: parts[i] }); - } - break; - } - case DOC_TYPE_INDENT: - case DOC_TYPE_ALIGN: - case DOC_TYPE_INDENT_IF_BREAK: - case DOC_TYPE_LABEL: - cmds.push({ mode, doc: doc.contents }); - break; - case DOC_TYPE_TRIM: - width += trim2(out); - break; - case DOC_TYPE_GROUP: { - if (mustBeFlat && doc.break) { - return false; - } - const groupMode = doc.break ? MODE_BREAK : mode; - const contents = doc.expandedStates && groupMode === MODE_BREAK ? at_default( - /* isOptionalObject */ - false, - doc.expandedStates, - -1 - ) : doc.contents; - cmds.push({ mode: groupMode, doc: contents }); - break; - } - case DOC_TYPE_IF_BREAK: { - const groupMode = doc.groupId ? groupModeMap[doc.groupId] || MODE_FLAT : mode; - const contents = groupMode === MODE_BREAK ? doc.breakContents : doc.flatContents; - if (contents) { - cmds.push({ mode, doc: contents }); - } - break; - } - case DOC_TYPE_LINE: - if (mode === MODE_BREAK || doc.hard) { - return true; - } - if (!doc.soft) { - out.push(" "); - width--; - } - break; - case DOC_TYPE_LINE_SUFFIX: - hasLineSuffix = true; - break; - case DOC_TYPE_LINE_SUFFIX_BOUNDARY: - if (hasLineSuffix) { - return false; - } - break; - } - } - return false; -} -function printDocToString(doc, options) { - const groupModeMap = {}; - const width = options.printWidth; - const newLine = convertEndOfLineToChars(options.endOfLine); - let pos = 0; - const cmds = [{ ind: rootIndent(), mode: MODE_BREAK, doc }]; - const out = []; - let shouldRemeasure = false; - const lineSuffix2 = []; - let printedCursorCount = 0; - propagateBreaks(doc); - while (cmds.length > 0) { - const { ind, mode, doc: doc2 } = cmds.pop(); - switch (get_doc_type_default(doc2)) { - case DOC_TYPE_STRING: { - const formatted = newLine !== "\n" ? string_replace_all_default( - /* isOptionalObject */ - false, - doc2, - "\n", - newLine - ) : doc2; - out.push(formatted); - if (cmds.length > 0) { - pos += get_string_width_default(formatted); - } - break; - } - case DOC_TYPE_ARRAY: - for (let i = doc2.length - 1; i >= 0; i--) { - cmds.push({ ind, mode, doc: doc2[i] }); - } - break; - case DOC_TYPE_CURSOR: - if (printedCursorCount >= 2) { - throw new Error("There are too many 'cursor' in doc."); - } - out.push(CURSOR_PLACEHOLDER); - printedCursorCount++; - break; - case DOC_TYPE_INDENT: - cmds.push({ ind: makeIndent(ind, options), mode, doc: doc2.contents }); - break; - case DOC_TYPE_ALIGN: - cmds.push({ - ind: makeAlign(ind, doc2.n, options), - mode, - doc: doc2.contents - }); - break; - case DOC_TYPE_TRIM: - pos -= trim2(out); - break; - case DOC_TYPE_GROUP: - switch (mode) { - case MODE_FLAT: - if (!shouldRemeasure) { - cmds.push({ - ind, - mode: doc2.break ? MODE_BREAK : MODE_FLAT, - doc: doc2.contents - }); - break; - } - // fallthrough - case MODE_BREAK: { - shouldRemeasure = false; - const next = { ind, mode: MODE_FLAT, doc: doc2.contents }; - const rem = width - pos; - const hasLineSuffix = lineSuffix2.length > 0; - if (!doc2.break && fits(next, cmds, rem, hasLineSuffix, groupModeMap)) { - cmds.push(next); - } else { - if (doc2.expandedStates) { - const mostExpanded = at_default( - /* isOptionalObject */ - false, - doc2.expandedStates, - -1 - ); - if (doc2.break) { - cmds.push({ ind, mode: MODE_BREAK, doc: mostExpanded }); - break; - } else { - for (let i = 1; i < doc2.expandedStates.length + 1; i++) { - if (i >= doc2.expandedStates.length) { - cmds.push({ ind, mode: MODE_BREAK, doc: mostExpanded }); - break; - } else { - const state = doc2.expandedStates[i]; - const cmd = { ind, mode: MODE_FLAT, doc: state }; - if (fits(cmd, cmds, rem, hasLineSuffix, groupModeMap)) { - cmds.push(cmd); - break; - } - } - } - } - } else { - cmds.push({ ind, mode: MODE_BREAK, doc: doc2.contents }); - } - } - break; - } - } - if (doc2.id) { - groupModeMap[doc2.id] = at_default( - /* isOptionalObject */ - false, - cmds, - -1 - ).mode; - } - break; - // Fills each line with as much code as possible before moving to a new - // line with the same indentation. - // - // Expects doc.parts to be an array of alternating content and - // whitespace. The whitespace contains the linebreaks. - // - // For example: - // ["I", line, "love", line, "monkeys"] - // or - // [{ type: group, ... }, softline, { type: group, ... }] - // - // It uses this parts structure to handle three main layout cases: - // * The first two content items fit on the same line without - // breaking - // -> output the first content item and the whitespace "flat". - // * Only the first content item fits on the line without breaking - // -> output the first content item "flat" and the whitespace with - // "break". - // * Neither content item fits on the line without breaking - // -> output the first content item and the whitespace with "break". - case DOC_TYPE_FILL: { - const rem = width - pos; - const offset = doc2[DOC_FILL_PRINTED_LENGTH] ?? 0; - const { parts } = doc2; - const length = parts.length - offset; - if (length === 0) { - break; - } - const content = parts[offset + 0]; - const whitespace = parts[offset + 1]; - const contentFlatCmd = { ind, mode: MODE_FLAT, doc: content }; - const contentBreakCmd = { ind, mode: MODE_BREAK, doc: content }; - const contentFits = fits( - contentFlatCmd, - [], - rem, - lineSuffix2.length > 0, - groupModeMap, - true - ); - if (length === 1) { - if (contentFits) { - cmds.push(contentFlatCmd); - } else { - cmds.push(contentBreakCmd); - } - break; - } - const whitespaceFlatCmd = { ind, mode: MODE_FLAT, doc: whitespace }; - const whitespaceBreakCmd = { ind, mode: MODE_BREAK, doc: whitespace }; - if (length === 2) { - if (contentFits) { - cmds.push(whitespaceFlatCmd, contentFlatCmd); - } else { - cmds.push(whitespaceBreakCmd, contentBreakCmd); - } - break; - } - const secondContent = parts[offset + 2]; - const remainingCmd = { - ind, - mode, - doc: { ...doc2, [DOC_FILL_PRINTED_LENGTH]: offset + 2 } - }; - const firstAndSecondContentFlatCmd = { - ind, - mode: MODE_FLAT, - doc: [content, whitespace, secondContent] - }; - const firstAndSecondContentFits = fits( - firstAndSecondContentFlatCmd, - [], - rem, - lineSuffix2.length > 0, - groupModeMap, - true - ); - if (firstAndSecondContentFits) { - cmds.push(remainingCmd, whitespaceFlatCmd, contentFlatCmd); - } else if (contentFits) { - cmds.push(remainingCmd, whitespaceBreakCmd, contentFlatCmd); - } else { - cmds.push(remainingCmd, whitespaceBreakCmd, contentBreakCmd); - } - break; - } - case DOC_TYPE_IF_BREAK: - case DOC_TYPE_INDENT_IF_BREAK: { - const groupMode = doc2.groupId ? groupModeMap[doc2.groupId] : mode; - if (groupMode === MODE_BREAK) { - const breakContents = doc2.type === DOC_TYPE_IF_BREAK ? doc2.breakContents : doc2.negate ? doc2.contents : indent(doc2.contents); - if (breakContents) { - cmds.push({ ind, mode, doc: breakContents }); - } - } - if (groupMode === MODE_FLAT) { - const flatContents = doc2.type === DOC_TYPE_IF_BREAK ? doc2.flatContents : doc2.negate ? indent(doc2.contents) : doc2.contents; - if (flatContents) { - cmds.push({ ind, mode, doc: flatContents }); - } - } - break; - } - case DOC_TYPE_LINE_SUFFIX: - lineSuffix2.push({ ind, mode, doc: doc2.contents }); - break; - case DOC_TYPE_LINE_SUFFIX_BOUNDARY: - if (lineSuffix2.length > 0) { - cmds.push({ ind, mode, doc: hardlineWithoutBreakParent }); - } - break; - case DOC_TYPE_LINE: - switch (mode) { - case MODE_FLAT: - if (!doc2.hard) { - if (!doc2.soft) { - out.push(" "); - pos += 1; - } - break; - } else { - shouldRemeasure = true; - } - // fallthrough - case MODE_BREAK: - if (lineSuffix2.length > 0) { - cmds.push({ ind, mode, doc: doc2 }, ...lineSuffix2.reverse()); - lineSuffix2.length = 0; - break; - } - if (doc2.literal) { - if (ind.root) { - out.push(newLine, ind.root.value); - pos = ind.root.length; - } else { - out.push(newLine); - pos = 0; - } - } else { - pos -= trim2(out); - out.push(newLine + ind.value); - pos = ind.length; - } - break; - } - break; - case DOC_TYPE_LABEL: - cmds.push({ ind, mode, doc: doc2.contents }); - break; - case DOC_TYPE_BREAK_PARENT: - break; - default: - throw new invalid_doc_error_default(doc2); - } - if (cmds.length === 0 && lineSuffix2.length > 0) { - cmds.push(...lineSuffix2.reverse()); - lineSuffix2.length = 0; - } - } - const cursorPlaceholderIndex = out.indexOf(CURSOR_PLACEHOLDER); - if (cursorPlaceholderIndex !== -1) { - const otherCursorPlaceholderIndex = out.indexOf( - CURSOR_PLACEHOLDER, - cursorPlaceholderIndex + 1 - ); - if (otherCursorPlaceholderIndex === -1) { - return { - formatted: out.filter((char) => char !== CURSOR_PLACEHOLDER).join("") - }; - } - const beforeCursor = out.slice(0, cursorPlaceholderIndex).join(""); - const aroundCursor = out.slice(cursorPlaceholderIndex + 1, otherCursorPlaceholderIndex).join(""); - const afterCursor = out.slice(otherCursorPlaceholderIndex + 1).join(""); - return { - formatted: beforeCursor + aroundCursor + afterCursor, - cursorNodeStart: beforeCursor.length, - cursorNodeText: aroundCursor - }; - } - return { formatted: out.join("") }; -} - -// src/document/public.js -var builders = { - join, - line, - softline, - hardline, - literalline, - group, - conditionalGroup, - fill, - lineSuffix, - lineSuffixBoundary, - cursor, - breakParent, - ifBreak, - trim, - indent, - indentIfBreak, - align, - addAlignmentToDoc, - markAsRoot, - dedentToRoot, - dedent, - hardlineWithoutBreakParent, - literallineWithoutBreakParent, - label, - // TODO: Remove this in v4 - concat: (parts) => parts -}; -var printer = { printDocToString }; -var utils = { - willBreak, - traverseDoc: traverse_doc_default, - findInDoc, - mapDoc, - removeLines, - stripTrailingHardline, - replaceEndOfLine, - canBreak -}; - -// with-default-export:src/document/public.js -var public_default = public_exports; -export { - builders, - public_default as default, - printer, - utils -}; diff --git a/.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/index.cjs b/.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/index.cjs deleted file mode 100644 index 04e3aced..00000000 --- a/.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/index.cjs +++ /dev/null @@ -1,674 +0,0 @@ -"use strict"; -var __create = Object.create; -var __defProp = Object.defineProperty; -var __getOwnPropDesc = Object.getOwnPropertyDescriptor; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __getProtoOf = Object.getPrototypeOf; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __esm = (fn, res) => function __init() { - return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res; -}; -var __commonJS = (cb, mod) => function __require() { - return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; -}; -var __export = (target, all) => { - for (var name in all) - __defProp(target, name, { get: all[name], enumerable: true }); -}; -var __copyProps = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames(from)) - if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); - } - return to; -}; -var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( - // If the importer is in node compatibility mode or this is not an ESM - // file that has been converted to a CommonJS file using a Babel- - // compatible transform (i.e. "__esModule" has not been set), then set - // "default" to the CommonJS "module.exports" for node compatibility. - isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, - mod -)); -var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); - -// src/utils/skip.js -function skip(characters) { - return (text, startIndex, options) => { - const backwards = Boolean(options == null ? void 0 : options.backwards); - if (startIndex === false) { - return false; - } - const { length } = text; - let cursor = startIndex; - while (cursor >= 0 && cursor < length) { - const character = text.charAt(cursor); - if (characters instanceof RegExp) { - if (!characters.test(character)) { - return cursor; - } - } else if (!characters.includes(character)) { - return cursor; - } - backwards ? cursor-- : cursor++; - } - if (cursor === -1 || cursor === length) { - return cursor; - } - return false; - }; -} -var skipWhitespace, skipSpaces, skipToLineEnd, skipEverythingButNewLine; -var init_skip = __esm({ - "src/utils/skip.js"() { - skipWhitespace = skip(/\s/u); - skipSpaces = skip(" "); - skipToLineEnd = skip(",; "); - skipEverythingButNewLine = skip(/[^\n\r]/u); - } -}); - -// src/utils/skip-inline-comment.js -function skipInlineComment(text, startIndex) { - if (startIndex === false) { - return false; - } - if (text.charAt(startIndex) === "/" && text.charAt(startIndex + 1) === "*") { - for (let i = startIndex + 2; i < text.length; ++i) { - if (text.charAt(i) === "*" && text.charAt(i + 1) === "/") { - return i + 2; - } - } - } - return startIndex; -} -var skip_inline_comment_default; -var init_skip_inline_comment = __esm({ - "src/utils/skip-inline-comment.js"() { - skip_inline_comment_default = skipInlineComment; - } -}); - -// src/utils/skip-newline.js -function skipNewline(text, startIndex, options) { - const backwards = Boolean(options == null ? void 0 : options.backwards); - if (startIndex === false) { - return false; - } - const character = text.charAt(startIndex); - if (backwards) { - if (text.charAt(startIndex - 1) === "\r" && character === "\n") { - return startIndex - 2; - } - if (character === "\n" || character === "\r" || character === "\u2028" || character === "\u2029") { - return startIndex - 1; - } - } else { - if (character === "\r" && text.charAt(startIndex + 1) === "\n") { - return startIndex + 2; - } - if (character === "\n" || character === "\r" || character === "\u2028" || character === "\u2029") { - return startIndex + 1; - } - } - return startIndex; -} -var skip_newline_default; -var init_skip_newline = __esm({ - "src/utils/skip-newline.js"() { - skip_newline_default = skipNewline; - } -}); - -// src/utils/skip-trailing-comment.js -function skipTrailingComment(text, startIndex) { - if (startIndex === false) { - return false; - } - if (text.charAt(startIndex) === "/" && text.charAt(startIndex + 1) === "/") { - return skipEverythingButNewLine(text, startIndex); - } - return startIndex; -} -var skip_trailing_comment_default; -var init_skip_trailing_comment = __esm({ - "src/utils/skip-trailing-comment.js"() { - init_skip(); - skip_trailing_comment_default = skipTrailingComment; - } -}); - -// src/utils/get-next-non-space-non-comment-character-index.js -function getNextNonSpaceNonCommentCharacterIndex(text, startIndex) { - let oldIdx = null; - let nextIdx = startIndex; - while (nextIdx !== oldIdx) { - oldIdx = nextIdx; - nextIdx = skipSpaces(text, nextIdx); - nextIdx = skip_inline_comment_default(text, nextIdx); - nextIdx = skip_trailing_comment_default(text, nextIdx); - nextIdx = skip_newline_default(text, nextIdx); - } - return nextIdx; -} -var get_next_non_space_non_comment_character_index_default; -var init_get_next_non_space_non_comment_character_index = __esm({ - "src/utils/get-next-non-space-non-comment-character-index.js"() { - init_skip(); - init_skip_inline_comment(); - init_skip_newline(); - init_skip_trailing_comment(); - get_next_non_space_non_comment_character_index_default = getNextNonSpaceNonCommentCharacterIndex; - } -}); - -// src/utils/has-newline.js -function hasNewline(text, startIndex, options = {}) { - const idx = skipSpaces( - text, - options.backwards ? startIndex - 1 : startIndex, - options - ); - const idx2 = skip_newline_default(text, idx, options); - return idx !== idx2; -} -var has_newline_default; -var init_has_newline = __esm({ - "src/utils/has-newline.js"() { - init_skip(); - init_skip_newline(); - has_newline_default = hasNewline; - } -}); - -// src/utils/is-next-line-empty.js -function isNextLineEmpty(text, startIndex) { - let oldIdx = null; - let idx = startIndex; - while (idx !== oldIdx) { - oldIdx = idx; - idx = skipToLineEnd(text, idx); - idx = skip_inline_comment_default(text, idx); - idx = skipSpaces(text, idx); - } - idx = skip_trailing_comment_default(text, idx); - idx = skip_newline_default(text, idx); - return idx !== false && has_newline_default(text, idx); -} -var is_next_line_empty_default; -var init_is_next_line_empty = __esm({ - "src/utils/is-next-line-empty.js"() { - init_has_newline(); - init_skip(); - init_skip_inline_comment(); - init_skip_newline(); - init_skip_trailing_comment(); - is_next_line_empty_default = isNextLineEmpty; - } -}); - -// src/utils/is-previous-line-empty.js -function isPreviousLineEmpty(text, startIndex) { - let idx = startIndex - 1; - idx = skipSpaces(text, idx, { backwards: true }); - idx = skip_newline_default(text, idx, { backwards: true }); - idx = skipSpaces(text, idx, { backwards: true }); - const idx2 = skip_newline_default(text, idx, { backwards: true }); - return idx !== idx2; -} -var is_previous_line_empty_default; -var init_is_previous_line_empty = __esm({ - "src/utils/is-previous-line-empty.js"() { - init_skip(); - init_skip_newline(); - is_previous_line_empty_default = isPreviousLineEmpty; - } -}); - -// src/main/comments/utils.js -function describeNodeForDebugging(node) { - const nodeType = node.type || node.kind || "(unknown type)"; - let nodeName = String( - node.name || node.id && (typeof node.id === "object" ? node.id.name : node.id) || node.key && (typeof node.key === "object" ? node.key.name : node.key) || node.value && (typeof node.value === "object" ? "" : String(node.value)) || node.operator || "" - ); - if (nodeName.length > 20) { - nodeName = nodeName.slice(0, 19) + "\u2026"; - } - return nodeType + (nodeName ? " " + nodeName : ""); -} -function addCommentHelper(node, comment) { - const comments = node.comments ?? (node.comments = []); - comments.push(comment); - comment.printed = false; - comment.nodeDescription = describeNodeForDebugging(node); -} -function addLeadingComment(node, comment) { - comment.leading = true; - comment.trailing = false; - addCommentHelper(node, comment); -} -function addDanglingComment(node, comment, marker) { - comment.leading = false; - comment.trailing = false; - if (marker) { - comment.marker = marker; - } - addCommentHelper(node, comment); -} -function addTrailingComment(node, comment) { - comment.leading = false; - comment.trailing = true; - addCommentHelper(node, comment); -} -var init_utils = __esm({ - "src/main/comments/utils.js"() { - } -}); - -// src/utils/get-alignment-size.js -function getAlignmentSize(text, tabWidth, startIndex = 0) { - let size = 0; - for (let i = startIndex; i < text.length; ++i) { - if (text[i] === " ") { - size = size + tabWidth - size % tabWidth; - } else { - size++; - } - } - return size; -} -var get_alignment_size_default; -var init_get_alignment_size = __esm({ - "src/utils/get-alignment-size.js"() { - get_alignment_size_default = getAlignmentSize; - } -}); - -// src/utils/get-indent-size.js -function getIndentSize(value, tabWidth) { - const lastNewlineIndex = value.lastIndexOf("\n"); - if (lastNewlineIndex === -1) { - return 0; - } - return get_alignment_size_default( - // All the leading whitespaces - value.slice(lastNewlineIndex + 1).match(/^[\t ]*/u)[0], - tabWidth - ); -} -var get_indent_size_default; -var init_get_indent_size = __esm({ - "src/utils/get-indent-size.js"() { - init_get_alignment_size(); - get_indent_size_default = getIndentSize; - } -}); - -// node_modules/escape-string-regexp/index.js -function escapeStringRegexp(string) { - if (typeof string !== "string") { - throw new TypeError("Expected a string"); - } - return string.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&").replace(/-/g, "\\x2d"); -} -var init_escape_string_regexp = __esm({ - "node_modules/escape-string-regexp/index.js"() { - } -}); - -// src/utils/get-max-continuous-count.js -function getMaxContinuousCount(text, searchString) { - const results = text.match( - new RegExp(`(${escapeStringRegexp(searchString)})+`, "gu") - ); - if (results === null) { - return 0; - } - return results.reduce( - (maxCount, result) => Math.max(maxCount, result.length / searchString.length), - 0 - ); -} -var get_max_continuous_count_default; -var init_get_max_continuous_count = __esm({ - "src/utils/get-max-continuous-count.js"() { - init_escape_string_regexp(); - get_max_continuous_count_default = getMaxContinuousCount; - } -}); - -// src/utils/get-next-non-space-non-comment-character.js -function getNextNonSpaceNonCommentCharacter(text, startIndex) { - const index = get_next_non_space_non_comment_character_index_default(text, startIndex); - return index === false ? "" : text.charAt(index); -} -var get_next_non_space_non_comment_character_default; -var init_get_next_non_space_non_comment_character = __esm({ - "src/utils/get-next-non-space-non-comment-character.js"() { - init_get_next_non_space_non_comment_character_index(); - get_next_non_space_non_comment_character_default = getNextNonSpaceNonCommentCharacter; - } -}); - -// src/utils/get-preferred-quote.js -function getPreferredQuote(text, preferredQuoteOrPreferSingleQuote) { - const preferred = preferredQuoteOrPreferSingleQuote === true || preferredQuoteOrPreferSingleQuote === SINGLE_QUOTE ? SINGLE_QUOTE : DOUBLE_QUOTE; - const alternate = preferred === SINGLE_QUOTE ? DOUBLE_QUOTE : SINGLE_QUOTE; - let preferredQuoteCount = 0; - let alternateQuoteCount = 0; - for (const character of text) { - if (character === preferred) { - preferredQuoteCount++; - } else if (character === alternate) { - alternateQuoteCount++; - } - } - return preferredQuoteCount > alternateQuoteCount ? alternate : preferred; -} -var SINGLE_QUOTE, DOUBLE_QUOTE, get_preferred_quote_default; -var init_get_preferred_quote = __esm({ - "src/utils/get-preferred-quote.js"() { - SINGLE_QUOTE = "'"; - DOUBLE_QUOTE = '"'; - get_preferred_quote_default = getPreferredQuote; - } -}); - -// node_modules/emoji-regex/index.mjs -var emoji_regex_default; -var init_emoji_regex = __esm({ - "node_modules/emoji-regex/index.mjs"() { - emoji_regex_default = () => { - return /[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g; - }; - } -}); - -// node_modules/get-east-asian-width/lookup.js -function isFullWidth(x) { - return x === 12288 || x >= 65281 && x <= 65376 || x >= 65504 && x <= 65510; -} -function isWide(x) { - return x >= 4352 && x <= 4447 || x === 8986 || x === 8987 || x === 9001 || x === 9002 || x >= 9193 && x <= 9196 || x === 9200 || x === 9203 || x === 9725 || x === 9726 || x === 9748 || x === 9749 || x >= 9776 && x <= 9783 || x >= 9800 && x <= 9811 || x === 9855 || x >= 9866 && x <= 9871 || x === 9875 || x === 9889 || x === 9898 || x === 9899 || x === 9917 || x === 9918 || x === 9924 || x === 9925 || x === 9934 || x === 9940 || x === 9962 || x === 9970 || x === 9971 || x === 9973 || x === 9978 || x === 9981 || x === 9989 || x === 9994 || x === 9995 || x === 10024 || x === 10060 || x === 10062 || x >= 10067 && x <= 10069 || x === 10071 || x >= 10133 && x <= 10135 || x === 10160 || x === 10175 || x === 11035 || x === 11036 || x === 11088 || x === 11093 || x >= 11904 && x <= 11929 || x >= 11931 && x <= 12019 || x >= 12032 && x <= 12245 || x >= 12272 && x <= 12287 || x >= 12289 && x <= 12350 || x >= 12353 && x <= 12438 || x >= 12441 && x <= 12543 || x >= 12549 && x <= 12591 || x >= 12593 && x <= 12686 || x >= 12688 && x <= 12773 || x >= 12783 && x <= 12830 || x >= 12832 && x <= 12871 || x >= 12880 && x <= 42124 || x >= 42128 && x <= 42182 || x >= 43360 && x <= 43388 || x >= 44032 && x <= 55203 || x >= 63744 && x <= 64255 || x >= 65040 && x <= 65049 || x >= 65072 && x <= 65106 || x >= 65108 && x <= 65126 || x >= 65128 && x <= 65131 || x >= 94176 && x <= 94180 || x === 94192 || x === 94193 || x >= 94208 && x <= 100343 || x >= 100352 && x <= 101589 || x >= 101631 && x <= 101640 || x >= 110576 && x <= 110579 || x >= 110581 && x <= 110587 || x === 110589 || x === 110590 || x >= 110592 && x <= 110882 || x === 110898 || x >= 110928 && x <= 110930 || x === 110933 || x >= 110948 && x <= 110951 || x >= 110960 && x <= 111355 || x >= 119552 && x <= 119638 || x >= 119648 && x <= 119670 || x === 126980 || x === 127183 || x === 127374 || x >= 127377 && x <= 127386 || x >= 127488 && x <= 127490 || x >= 127504 && x <= 127547 || x >= 127552 && x <= 127560 || x === 127568 || x === 127569 || x >= 127584 && x <= 127589 || x >= 127744 && x <= 127776 || x >= 127789 && x <= 127797 || x >= 127799 && x <= 127868 || x >= 127870 && x <= 127891 || x >= 127904 && x <= 127946 || x >= 127951 && x <= 127955 || x >= 127968 && x <= 127984 || x === 127988 || x >= 127992 && x <= 128062 || x === 128064 || x >= 128066 && x <= 128252 || x >= 128255 && x <= 128317 || x >= 128331 && x <= 128334 || x >= 128336 && x <= 128359 || x === 128378 || x === 128405 || x === 128406 || x === 128420 || x >= 128507 && x <= 128591 || x >= 128640 && x <= 128709 || x === 128716 || x >= 128720 && x <= 128722 || x >= 128725 && x <= 128727 || x >= 128732 && x <= 128735 || x === 128747 || x === 128748 || x >= 128756 && x <= 128764 || x >= 128992 && x <= 129003 || x === 129008 || x >= 129292 && x <= 129338 || x >= 129340 && x <= 129349 || x >= 129351 && x <= 129535 || x >= 129648 && x <= 129660 || x >= 129664 && x <= 129673 || x >= 129679 && x <= 129734 || x >= 129742 && x <= 129756 || x >= 129759 && x <= 129769 || x >= 129776 && x <= 129784 || x >= 131072 && x <= 196605 || x >= 196608 && x <= 262141; -} -var init_lookup = __esm({ - "node_modules/get-east-asian-width/lookup.js"() { - } -}); - -// node_modules/get-east-asian-width/index.js -var _isNarrowWidth; -var init_get_east_asian_width = __esm({ - "node_modules/get-east-asian-width/index.js"() { - init_lookup(); - _isNarrowWidth = (codePoint) => !(isFullWidth(codePoint) || isWide(codePoint)); - } -}); - -// src/utils/get-string-width.js -function getStringWidth(text) { - if (!text) { - return 0; - } - if (!notAsciiRegex.test(text)) { - return text.length; - } - text = text.replace(emoji_regex_default(), " "); - let width = 0; - for (const character of text) { - const codePoint = character.codePointAt(0); - if (codePoint <= 31 || codePoint >= 127 && codePoint <= 159) { - continue; - } - if (codePoint >= 768 && codePoint <= 879) { - continue; - } - width += _isNarrowWidth(codePoint) ? 1 : 2; - } - return width; -} -var notAsciiRegex, get_string_width_default; -var init_get_string_width = __esm({ - "src/utils/get-string-width.js"() { - init_emoji_regex(); - init_get_east_asian_width(); - notAsciiRegex = /[^\x20-\x7F]/u; - get_string_width_default = getStringWidth; - } -}); - -// src/utils/has-newline-in-range.js -function hasNewlineInRange(text, startIndex, endIndex) { - for (let i = startIndex; i < endIndex; ++i) { - if (text.charAt(i) === "\n") { - return true; - } - } - return false; -} -var has_newline_in_range_default; -var init_has_newline_in_range = __esm({ - "src/utils/has-newline-in-range.js"() { - has_newline_in_range_default = hasNewlineInRange; - } -}); - -// src/utils/has-spaces.js -function hasSpaces(text, startIndex, options = {}) { - const idx = skipSpaces( - text, - options.backwards ? startIndex - 1 : startIndex, - options - ); - return idx !== startIndex; -} -var has_spaces_default; -var init_has_spaces = __esm({ - "src/utils/has-spaces.js"() { - init_skip(); - has_spaces_default = hasSpaces; - } -}); - -// scripts/build/shims/string-replace-all.js -var stringReplaceAll, string_replace_all_default; -var init_string_replace_all = __esm({ - "scripts/build/shims/string-replace-all.js"() { - stringReplaceAll = (isOptionalObject, original, pattern, replacement) => { - if (isOptionalObject && (original === void 0 || original === null)) { - return; - } - if (original.replaceAll) { - return original.replaceAll(pattern, replacement); - } - if (pattern.global) { - return original.replace(pattern, replacement); - } - return original.split(pattern).join(replacement); - }; - string_replace_all_default = stringReplaceAll; - } -}); - -// src/utils/make-string.js -function makeString(rawText, enclosingQuote, unescapeUnnecessaryEscapes) { - const otherQuote = enclosingQuote === '"' ? "'" : '"'; - const regex = /\\(.)|(["'])/gsu; - const raw = string_replace_all_default( - /* isOptionalObject */ - false, - rawText, - regex, - (match, escaped, quote) => { - if (escaped === otherQuote) { - return escaped; - } - if (quote === enclosingQuote) { - return "\\" + quote; - } - if (quote) { - return quote; - } - return unescapeUnnecessaryEscapes && /^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/u.test(escaped) ? escaped : "\\" + escaped; - } - ); - return enclosingQuote + raw + enclosingQuote; -} -var make_string_default; -var init_make_string = __esm({ - "src/utils/make-string.js"() { - init_string_replace_all(); - make_string_default = makeString; - } -}); - -// src/utils/public.js -var public_exports = {}; -__export(public_exports, { - addDanglingComment: () => addDanglingComment, - addLeadingComment: () => addLeadingComment, - addTrailingComment: () => addTrailingComment, - getAlignmentSize: () => get_alignment_size_default, - getIndentSize: () => get_indent_size_default, - getMaxContinuousCount: () => get_max_continuous_count_default, - getNextNonSpaceNonCommentCharacter: () => get_next_non_space_non_comment_character_default, - getNextNonSpaceNonCommentCharacterIndex: () => getNextNonSpaceNonCommentCharacterIndex2, - getPreferredQuote: () => get_preferred_quote_default, - getStringWidth: () => get_string_width_default, - hasNewline: () => has_newline_default, - hasNewlineInRange: () => has_newline_in_range_default, - hasSpaces: () => has_spaces_default, - isNextLineEmpty: () => isNextLineEmpty2, - isNextLineEmptyAfterIndex: () => is_next_line_empty_default, - isPreviousLineEmpty: () => isPreviousLineEmpty2, - makeString: () => make_string_default, - skip: () => skip, - skipEverythingButNewLine: () => skipEverythingButNewLine, - skipInlineComment: () => skip_inline_comment_default, - skipNewline: () => skip_newline_default, - skipSpaces: () => skipSpaces, - skipToLineEnd: () => skipToLineEnd, - skipTrailingComment: () => skip_trailing_comment_default, - skipWhitespace: () => skipWhitespace -}); -function legacyGetNextNonSpaceNonCommentCharacterIndex(text, node, locEnd) { - return get_next_non_space_non_comment_character_index_default( - text, - locEnd(node) - ); -} -function getNextNonSpaceNonCommentCharacterIndex2(text, startIndex) { - return arguments.length === 2 || typeof startIndex === "number" ? get_next_non_space_non_comment_character_index_default(text, startIndex) : ( - // @ts-expect-error -- expected - // eslint-disable-next-line prefer-rest-params - legacyGetNextNonSpaceNonCommentCharacterIndex(...arguments) - ); -} -function legacyIsPreviousLineEmpty(text, node, locStart) { - return is_previous_line_empty_default(text, locStart(node)); -} -function isPreviousLineEmpty2(text, startIndex) { - return arguments.length === 2 || typeof startIndex === "number" ? is_previous_line_empty_default(text, startIndex) : ( - // @ts-expect-error -- expected - // eslint-disable-next-line prefer-rest-params - legacyIsPreviousLineEmpty(...arguments) - ); -} -function legacyIsNextLineEmpty(text, node, locEnd) { - return is_next_line_empty_default(text, locEnd(node)); -} -function isNextLineEmpty2(text, startIndex) { - return arguments.length === 2 || typeof startIndex === "number" ? is_next_line_empty_default(text, startIndex) : ( - // @ts-expect-error -- expected - // eslint-disable-next-line prefer-rest-params - legacyIsNextLineEmpty(...arguments) - ); -} -var init_public = __esm({ - "src/utils/public.js"() { - init_get_next_non_space_non_comment_character_index(); - init_is_next_line_empty(); - init_is_previous_line_empty(); - init_utils(); - init_get_alignment_size(); - init_get_indent_size(); - init_get_max_continuous_count(); - init_get_next_non_space_non_comment_character(); - init_get_preferred_quote(); - init_get_string_width(); - init_has_newline(); - init_has_newline_in_range(); - init_has_spaces(); - init_make_string(); - init_skip(); - init_skip_inline_comment(); - init_skip_newline(); - init_skip_trailing_comment(); - } -}); - -// src/main/version.evaluate.cjs -var require_version_evaluate = __commonJS({ - "src/main/version.evaluate.cjs"(exports2, module2) { - module2.exports = "3.4.2"; - } -}); - -// src/index.cjs -var prettierPromise = import("./index.mjs"); -var functionNames = [ - "formatWithCursor", - "format", - "check", - "resolveConfig", - "resolveConfigFile", - "clearConfigCache", - "getFileInfo", - "getSupportInfo" -]; -var prettier = /* @__PURE__ */ Object.create(null); -for (const name of functionNames) { - prettier[name] = async (...args) => { - const prettier2 = await prettierPromise; - return prettier2[name](...args); - }; -} -var debugApiFunctionNames = [ - "parse", - "formatAST", - "formatDoc", - "printToDoc", - "printDocToString" -]; -var debugApis = /* @__PURE__ */ Object.create(null); -for (const name of debugApiFunctionNames) { - debugApis[name] = async (...args) => { - const prettier2 = await prettierPromise; - return prettier2.__debug[name](...args); - }; -} -prettier.__debug = debugApis; -if (true) { - prettier.util = (init_public(), __toCommonJS(public_exports)); - prettier.doc = require("./doc.js"); -} else { - Object.defineProperties(prettier, { - util: { - get() { - throw new Error( - "prettier.util is not available in development CommonJS version" - ); - } - }, - doc: { - get() { - throw new Error( - "prettier.doc is not available in development CommonJS version" - ); - } - } - }); -} -prettier.version = require_version_evaluate(); -module.exports = prettier; diff --git a/.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/index.d.ts b/.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/index.d.ts deleted file mode 100644 index badac401..00000000 --- a/.yarn/unplugged/prettier-npm-3.4.2-fae349e44a/node_modules/prettier/index.d.ts +++ /dev/null @@ -1,946 +0,0 @@ -// Copied from `@types/prettier` -// https://github.com/DefinitelyTyped/DefinitelyTyped/blob/5bb07fc4b087cb7ee91084afa6fe750551a7bbb1/types/prettier/index.d.ts - -// Minimum TypeScript Version: 4.2 - -// Add `export {}` here to shut off automatic exporting from index.d.ts. There -// are quite a few utility types here that don't need to be shipped with the -// exported module. -export {}; - -import { builders, printer, utils } from "./doc.js"; - -export namespace doc { - export { builders, printer, utils }; -} - -// This utility is here to handle the case where you have an explicit union -// between string literals and the generic string type. It would normally -// resolve out to just the string type, but this generic LiteralUnion maintains -// the intellisense of the original union. -// -// It comes from this issue: microsoft/TypeScript#29729: -// https://github.com/microsoft/TypeScript/issues/29729#issuecomment-700527227 -export type LiteralUnion = - | T - | (Pick & { _?: never | undefined }); - -export type AST = any; -export type Doc = doc.builders.Doc; - -// The type of elements that make up the given array T. -type ArrayElement = T extends Array ? E : never; - -// A union of the properties of the given object that are arrays. -type ArrayProperties = { - [K in keyof T]: NonNullable extends readonly any[] ? K : never; -}[keyof T]; - -// A union of the properties of the given array T that can be used to index it. -// If the array is a tuple, then that's going to be the explicit indices of the -// array, otherwise it's going to just be number. -type IndexProperties = - IsTuple extends true ? Exclude["length"], T["length"]> : number; - -// Effectively performing T[P], except that it's telling TypeScript that it's -// safe to do this for tuples, arrays, or objects. -type IndexValue = T extends any[] - ? P extends number - ? T[P] - : never - : P extends keyof T - ? T[P] - : never; - -// Determines if an object T is an array like string[] (in which case this -// evaluates to false) or a tuple like [string] (in which case this evaluates to -// true). -// eslint-disable-next-line @typescript-eslint/no-unused-vars -type IsTuple = T extends [] - ? true - : T extends [infer First, ...infer Remain] - ? IsTuple - : false; - -type CallProperties = T extends any[] ? IndexProperties : keyof T; -type IterProperties = T extends any[] - ? IndexProperties - : ArrayProperties; - -type CallCallback = (path: AstPath, index: number, value: any) => U; -type EachCallback = ( - path: AstPath>, - index: number, - value: any, -) => void; -type MapCallback = ( - path: AstPath>, - index: number, - value: any, -) => U; - -// https://github.com/prettier/prettier/blob/next/src/common/ast-path.js -export class AstPath { - constructor(value: T); - - get key(): string | null; - get index(): number | null; - get node(): T; - get parent(): T | null; - get grandparent(): T | null; - get isInArray(): boolean; - get siblings(): T[] | null; - get next(): T | null; - get previous(): T | null; - get isFirst(): boolean; - get isLast(): boolean; - get isRoot(): boolean; - get root(): T; - get ancestors(): T[]; - - stack: T[]; - - callParent(callback: (path: this) => U, count?: number): U; - - /** - * @deprecated Please use `AstPath#key` or `AstPath#index` - */ - getName(): PropertyKey | null; - - /** - * @deprecated Please use `AstPath#node` or `AstPath#siblings` - */ - getValue(): T; - - getNode(count?: number): T | null; - - getParentNode(count?: number): T | null; - - match( - ...predicates: Array< - (node: any, name: string | null, number: number | null) => boolean - > - ): boolean; - - // For each of the tree walk functions (call, each, and map) this provides 5 - // strict type signatures, along with a fallback at the end if you end up - // calling more than 5 properties deep. This helps a lot with typing because - // for the majority of cases you're calling fewer than 5 properties, so the - // tree walk functions have a clearer understanding of what you're doing. - // - // Note that resolving these types is somewhat complicated, and it wasn't - // even supported until TypeScript 4.2 (before it would just say that the - // type instantiation was excessively deep and possibly infinite). - - call(callback: CallCallback): U; - call>( - callback: CallCallback, U>, - prop1: P1, - ): U; - call>( - callback: CallCallback, P2>, U>, - prop1: P1, - prop2: P2, - ): U; - call< - U, - P1 extends keyof T, - P2 extends CallProperties, - P3 extends CallProperties>, - >( - callback: CallCallback< - IndexValue, P2>, P3>, - U - >, - prop1: P1, - prop2: P2, - prop3: P3, - ): U; - call< - U, - P1 extends keyof T, - P2 extends CallProperties, - P3 extends CallProperties>, - P4 extends CallProperties, P3>>, - >( - callback: CallCallback< - IndexValue, P2>, P3>, P4>, - U - >, - prop1: P1, - prop2: P2, - prop3: P3, - prop4: P4, - ): U; - call( - callback: CallCallback, - prop1: P, - prop2: P, - prop3: P, - prop4: P, - ...props: P[] - ): U; - - each(callback: EachCallback): void; - each>( - callback: EachCallback>, - prop1: P1, - ): void; - each>( - callback: EachCallback, P2>>, - prop1: P1, - prop2: P2, - ): void; - each< - P1 extends keyof T, - P2 extends IterProperties, - P3 extends IterProperties>, - >( - callback: EachCallback, P2>, P3>>, - prop1: P1, - prop2: P2, - prop3: P3, - ): void; - each< - P1 extends keyof T, - P2 extends IterProperties, - P3 extends IterProperties>, - P4 extends IterProperties, P3>>, - >( - callback: EachCallback< - IndexValue, P2>, P3>, P4> - >, - prop1: P1, - prop2: P2, - prop3: P3, - prop4: P4, - ): void; - each( - callback: EachCallback, - prop1: PropertyKey, - prop2: PropertyKey, - prop3: PropertyKey, - prop4: PropertyKey, - ...props: PropertyKey[] - ): void; - - map(callback: MapCallback): U[]; - map>( - callback: MapCallback, U>, - prop1: P1, - ): U[]; - map>( - callback: MapCallback, P2>, U>, - prop1: P1, - prop2: P2, - ): U[]; - map< - U, - P1 extends keyof T, - P2 extends IterProperties, - P3 extends IterProperties>, - >( - callback: MapCallback, P2>, P3>, U>, - prop1: P1, - prop2: P2, - prop3: P3, - ): U[]; - map< - U, - P1 extends keyof T, - P2 extends IterProperties, - P3 extends IterProperties>, - P4 extends IterProperties, P3>>, - >( - callback: MapCallback< - IndexValue, P2>, P3>, P4>, - U - >, - prop1: P1, - prop2: P2, - prop3: P3, - prop4: P4, - ): U[]; - map( - callback: MapCallback, - prop1: PropertyKey, - prop2: PropertyKey, - prop3: PropertyKey, - prop4: PropertyKey, - ...props: PropertyKey[] - ): U[]; -} - -/** @deprecated `FastPath` was renamed to `AstPath` */ -export type FastPath = AstPath; - -export type BuiltInParser = (text: string, options?: any) => AST; -export type BuiltInParserName = - | "acorn" - | "angular" - | "babel-flow" - | "babel-ts" - | "babel" - | "css" - | "espree" - | "flow" - | "glimmer" - | "graphql" - | "html" - | "json-stringify" - | "json" - | "json5" - | "jsonc" - | "less" - | "lwc" - | "markdown" - | "mdx" - | "meriyah" - | "scss" - | "typescript" - | "vue" - | "yaml"; -export type BuiltInParsers = Record; - -/** - * For use in `.prettierrc.js`, `.prettierrc.cjs`, `prettierrc.mjs`, `prettier.config.js`, `prettier.config.cjs`, `prettier.config.mjs` - */ -export interface Config extends Options { - overrides?: Array<{ - files: string | string[]; - excludeFiles?: string | string[]; - options?: Options; - }>; -} - -export interface Options extends Partial {} - -export interface RequiredOptions extends doc.printer.Options { - /** - * Print semicolons at the ends of statements. - * @default true - */ - semi: boolean; - /** - * Use single quotes instead of double quotes. - * @default false - */ - singleQuote: boolean; - /** - * Use single quotes in JSX. - * @default false - */ - jsxSingleQuote: boolean; - /** - * Print trailing commas wherever possible. - * @default "all" - */ - trailingComma: "none" | "es5" | "all"; - /** - * Print spaces between brackets in object literals. - * @default true - */ - bracketSpacing: boolean; - /** - * Put the `>` of a multi-line HTML (HTML, JSX, Vue, Angular) element at the end of the last line instead of being - * alone on the next line (does not apply to self closing elements). - * @default false - */ - bracketSameLine: boolean; - /** - * Format only a segment of a file. - * @default 0 - */ - rangeStart: number; - /** - * Format only a segment of a file. - * @default Number.POSITIVE_INFINITY - */ - rangeEnd: number; - /** - * Specify which parser to use. - */ - parser: LiteralUnion; - /** - * Specify the input filepath. This will be used to do parser inference. - */ - filepath: string; - /** - * Prettier can restrict itself to only format files that contain a special comment, called a pragma, at the top of the file. - * This is very useful when gradually transitioning large, unformatted codebases to prettier. - * @default false - */ - requirePragma: boolean; - /** - * Prettier can insert a special @format marker at the top of files specifying that - * the file has been formatted with prettier. This works well when used in tandem with - * the --require-pragma option. If there is already a docblock at the top of - * the file then this option will add a newline to it with the @format marker. - * @default false - */ - insertPragma: boolean; - /** - * By default, Prettier will wrap markdown text as-is since some services use a linebreak-sensitive renderer. - * In some cases you may want to rely on editor/viewer soft wrapping instead, so this option allows you to opt out. - * @default "preserve" - */ - proseWrap: "always" | "never" | "preserve"; - /** - * Include parentheses around a sole arrow function parameter. - * @default "always" - */ - arrowParens: "avoid" | "always"; - /** - * Provide ability to support new languages to prettier. - */ - plugins: Array; - /** - * How to handle whitespaces in HTML. - * @default "css" - */ - htmlWhitespaceSensitivity: "css" | "strict" | "ignore"; - /** - * Which end of line characters to apply. - * @default "lf" - */ - endOfLine: "auto" | "lf" | "crlf" | "cr"; - /** - * Change when properties in objects are quoted. - * @default "as-needed" - */ - quoteProps: "as-needed" | "consistent" | "preserve"; - /** - * Whether or not to indent the code inside